Manual do PHP

por:
Mehdi Achour
Friedhelm Betz
Antony Dovgal
Nuno Lopes
Hannes Magnusson
Georg Richter
Damien Seguy
Jakub Vrana
E muitos outros
2011-04-08
Editado por: Philip Olson
por:
Fernando Correa da Conceição
Marcelo Pereira Fonseca da Silva
Raphael Melo de Oliveira Bastos Sales
Renato Arruda
Ricardo Miranda Santos
André Luis Ferreira da Silva Bacci
Anderson Fortaleza
João Prado Maia
Claudio Pereira
Lucas Rocha
Alessander Pery Lopes Thomaz
Taniel Franklin
Thomas Gonzalez Miranda
Ernani Joppert Pontes Martins
Rafael Jaques
Felipe Nascimento Silva Pena
Diogo Galvão
Thiago Henrique Pojda
Amanda Vale
© 1997-2011 PHP Documentation Group
  • Copyright
  • Manual do PHP
    • Prefácio
  • Começando
    • Introdução
    • Um simples tutorial
  • Instalação e Configuração
    • Considerações Gerais sobre Instalação
    • Instalação em sistemas Unix
    • Instalação no Mac OS X
    • Instalação em sistemas Windows
    • FastCGI Process Manager (FPM)
    • Instalação das extensões PECL
    • Problemas?
    • Configuração em tempo de execução
  • Referência da Linguagem
    • Sintaxe Básica
    • Tipos
    • Variáveis
    • Constantes
    • Expressões
    • Operadores
    • Estruturas de Controle
    • Funções
    • Classes e Objetos
    • Namespaces
    • Exceções
    • Referências
    • Variáveis pré-definidas
    • Exceções pré-definidas
    • Predefined Interfaces
    • Context options and parameters
    • Supported Protocols and Wrappers
  • Segurança
    • Introdução
    • Considerações Gerais
    • Instalando como binário CGI
    • Instalado como módulo do Apache
    • Segurança do Sistema de Arquivos
    • Segurança de Bancos de Dados
    • Relatando Erros
    • Usando a diretiva Register Globals
    • Dados Enviados pelo Usuário
    • Magic Quotes
    • Escondendo o PHP
    • Mantendo-se Atualizado
  • Características
    • Autenticação HTTP com PHP
    • Cookies
    • Sessões
    • Lidando com XForms
    • Gerenciar o upload de arquivos
    • Usando arquivos remotos
    • Tratamento de Conexões
    • Conexão Permanente com o Banco de Dados
    • Modo Seguro (Safe Mode)
    • Utilizando o PHP na linha de comando
    • Garbage Collection
  • Referência das Funções
    • Afetando o comportamento do PHP
    • Manipulação de Formatos de Audio
    • Serviços de Autenticação
    • Extensões Relacionadas a Calendário e Evento
    • Extensões Específica para Linha de Comando
    • Extensões de Compressão e Arquivo
    • Processamento de Cartão de Crédito
    • Extensões para Criptografia
    • Extensões de Banco de Dados
    • Extensões Relacionadas a Sistema de Arquivo
    • Linguagem Humana e Suporte a Codificação de Caracteres
    • Processamento de Imagem e Geração
    • Extensões Relacionadas a Mail
    • Extensões Matemáticas
    • Saída de MIME Não-Texto
    • Extensões para Controle de Processo
    • Outras Básicas Extensões
    • Outros Serviços
    • Extensões de Search Engine
    • Extensões Específicas para Servidor
    • Extensões de Sessão
    • Processamento de Texto
    • Variável e Extensões Relacionadas aos Tipos
    • Web Services
    • Extensões Somente para Windows
    • Manipulação de XML
  • PHP at the Core: A Hacker's Guide to the Zend Engine
    • Preface
    • The "counter" Extension - A Continuing Example
    • The PHP 5 build system
    • Extension structure
    • Memory management
    • Working with variables
    • Writing functions
    • Working with classes and objects
    • Working with resources
    • Working with INI settings
    • Working with streams
    • PDO Driver How-To
    • Extension FAQs
    • Zend Engine 2 API reference
    • Zend Engine 2 opcode list
    • Zend Engine 1
  • FAQ — FAQ: Perguntas Mais Freqüentes
    • Informações Gerais
    • Listas de Discussão
    • Obtendo o PHP
    • Database issues
    • Instalação
    • Desenvolvendo Problemas
    • Using PHP
    • PHP e HTML — PHP and HTML
    • PHP e COM
    • PHP e outras linguagens
    • Migrando do PHP 4 para o PHP 5
    • Questões Diversas
  • Apêndices
    • A História do PHP e projetos relacionados
    • Migrating from PHP 5.2.x to PHP 5.3.x
    • Migrating from PHP 5.1.x to PHP 5.2.x
    • Migrating from PHP 5.0.x to PHP 5.1.x
    • Migrating from PHP 4 to PHP 5.0.x
    • Classes and Objects (PHP 4)
    • Debugando em PHP
    • Opções do script Configure
    • Diretivas do arquivo php.ini
    • Categorização/Lista das Extensões
    • Lista de funções sinônimas (aliases)
    • Palavras reservadas do PHP
    • List of Resource Types
    • Lista de Filtros Disponíveis
    • Lista de Transportes via Socket Suportados
    • Tabelas de comparação de tipo do PHP
    • List of Parser Tokens
    • Guia de nomenclatura em espaço de usuário
    • Sobre o manual
    • Creative Commons Attribution 3.0
    • Índice de funções
  • HTML Help Edition
    • About This Edition
    • Using PHP Manual CHM Edition
    • The Full Text Search
    • Specialities of this Edition
    • Integrating the PHP Manual
    • Skin development
    • CHM Edition Credits
PHP Manual


Copyright

Copyright © 1997-2011 para o PHP Documentation Group. Este material pode ser distribuído apenas sob os termos e condições determinadas pela Creative Commons Attribution 3.0 ou posteriores. Uma cópia da Creative Commons Attribution 3.0 license é distribuída com esse manual. A úlima versão está atualmente disponível em » http://creativecommons.org/licenses/by/3.0/.

Se você está interessado na redistribuição ou republicação deste documento no todo ou em parte, tanto modificao ou não, ou se você tem qualquer questão, basta contatar os responsáveis pelo copyright em » doc-license@lists.php.net. Note que esse endereço tem suas mensagens preservadas em um arquivo público.

Manual do PHP
Manual do PHP
Manual do PHP


Manual do PHP
PHP Manual

Manual do PHP

  • Prefácio
Copyright
Prefácio
Manual do PHP
PHP Manual


Prefácio

PHP, que significa "PHP: Hypertext Preprocessor", é uma linguagem de programação de ampla utilização, interpretada, que é especialmente interessante para desenvolvimento para a Web e pode ser mesclada dentro do código HTML. A sintaxe da linguagem lembra C, Java e Perl, e é fácil de aprender. O objetivo principal da linguagem é permitir a desenvolvedores escreverem páginas que serão geradas dinamicamente rapidamente, mas você pode fazer muito mais do que isso com PHP.

Esse manual consiste primeiramente de uma referência de funções, mas ele também contém uma referência da linguagem, explicações sobre as mais importantes características do PHP, e outras informações suplementares.

Você pode fazer o download deste manual em vários formatos em » http://www.php.net/download-docs.php. Mais informações sobre como esse manual é desenvolvido podem ser encontradas no apêndice 'Sobre o manual'. Se você está interessado na história do PHP, veja o apêndice relevante.

Autores e colaboradores

Nós enfatizamos as pessoas mais ativas na capa do manual, mas há muitos mais colaboradores que atualmente nos ajudam no trabalho ou proveram uma enorme quantidade de ajuda no passado. Há uma enormidade de pessoas não citadas que ajudam com suas notas nas páginas do manual, que são continuamente inclúidas no corpo do manual, trabalho esse que nós somos muito gratos. A lista a seguir está em ordem alfabética.

Autores e Editores

Os seguintes colaboradores devem ser reconhecidos pelo impacto que tiveram e/ou continuam a ter pelo acréscimo de material ao manual: Bill Abt, Jouni Ahto, Alexander Aulbach, Daniel Beckham, Stig Bakken, Nilgün Belma Bugüner, Jesus M. Castagnetto, Ron Chmara, Sean Coates, John Coggeshall, Simone Cortesi, Peter Cowburn, Daniel Egeberg, Markus Fischer, Wez Furlong, Sara Golemon, Rui Hirokawa, Brad House, Pierre-Alain Joye, Etienne Kneuss, Moriyoshi Koizumi, Rasmus Lerdorf, Andrew Lindeman, Stanislav Malyshev, Rafael Martinez, Rick McGuire, Kalle Sommer Nielsen, Yasuo Ohgaki, Richard Quadling, Derick Rethans, Rob Richards, Sander Roobol, Egon Schmid, Thomas Schoefbeck, Sascha Schumann, Dan Scott, Masahiro Takagi, Yannick Torres, Michael Wallner, Lars Torben Wilson, Jim Winstead, Jeroen van Wolffelaar e Andrei Zmievski.

Os seguintes colaboradores já fizeram um significativo trabalho editando esse manual: Stig Bakken, Gabor Hojtsy, Hartmut Holzgraefe e Egon Schmid.

Mantenedores das notas de usuários

Mantenedores mais ativos: Daniel Brown, Nuno Lopes, Felipe Pena, Thiago Pojda e Maciek Sokolewicz.

Estas pessoas já fizeram um grande esforço cuidando das notas de usuários Mehdi Achour, Daniel Beckham, Friedhelm Betz, Victor Boivie, Jesus M. Castagnetto, Nicolas Chaillan, Ron Chmara, Sean Coates, James Cox, Vincent Gevers, Sara Golemon, Zak Greant, Szabolcs Heilig, Oliver Hinckel, Hartmut Holzgraefe, Etienne Kneuss, Rasmus Lerdorf, Matthew Li, Andrew Lindeman, Aidan Lister, Hannes Magnusson, Maxim Maletsky, Bobby Matthis, James Moore, Philip Olson, Sebastian Picklum, Derick Rethans, Sander Roobol, Damien Seguy, Jason Sheets, Tom Sommer, Jani Taskinen, Yasuo Ohgaki, Jakub Vrana, Lars Torben Wilson, Jim Winstead, Jared Wyles e Jeroen van Wolffelaar.

Manual do PHP
Começando
Manual do PHP


Começando

  • Introdução
    • O que é PHP?
    • O que o PHP pode fazer?
  • Um simples tutorial
    • O que eu preciso?
    • Sua primeira página PHP
    • Algo Útil
    • Tratando Formulários
    • Usando códigos antigos com a nova versão do PHP
    • O que mais?
Prefácio
Introdução
Manual do PHP


Introdução

Índice

  • O que é PHP?
  • O que o PHP pode fazer?
Começando
O que é PHP?
Começando


O que é PHP?

PHP (um acrônimo recursivo para PHP: Hypertext Preprocessor) é uma linguagem de script open source de uso geral, muito utilizada e especialmente guarnecida para o desenvolvimento de aplicações Web embútivel dentro do HTML.

Ótimo, mas o que isso significa?

Exemplo #1 Um exemplo introdutório

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>Exemplo</title>
    </head>
    <body>

        <?php
        echo "Olá, Eu sou um script PHP!";
        ?>

    </body>
</html>

Ao invés de muitos comandos para mostrar HTML (como visto em C ou Perl), páginas PHP contém HTML juntamente com códigos que fazem "alguma coisa" (neste caso, mostra "Olá, Eu sou um script PHP!") O código PHP é delimitado por tags iniciais e finais <?php e ?> que lhe permitem pular pra dentro e pra fora do "modo PHP".

O que distingui o PHP de algo como Javascript no lado do cliente é que o código é executado no servidor, gerando HTML que é então enviado para o cliente. O cliente receberia os resultados da execução desse script, mas não saberia como é o código fonte. Você pode inclusive configurar seu servidor para processar todos os seus arquivos HTML como PHP, e então não haverá nenhum modo dos usuários descobrirem que se você usa essa linguagem ou não.

A melhor coisa em usar PHP está no fato de ele ser extremamente simples para um iniciante, mas oferece muitos recursos para o programador profissional. Não se preocupe em ler as longas listas de funções do PHP. Você pode pular essa parte (por enquanto) e começar a escrever scripts em poucas horas.

Apesar do desenvolvimento do PHP ser focado nos scripts do lado do servidor, você pode fazer muito mais com ele. Veja isso e leia mais na seção O que o PHP pode fazer?, ou diretamente no tutorial introdutório se você estiver interessado em programação web.

Introdução
O que o PHP pode fazer?
Introdução


O que o PHP pode fazer?

Qualquer coisa. O PHP é focado para ser uma linguagem de script do lado do servidor, portanto, você pode fazer qualquer coisa que outro programa CGI pode fazer, como: coletar dados de formulários, gerar páginas com conteúdo dinâmico ou enviar e receber cookies. Mas o PHP pode fazer muito mais.

Esses são os maiores campos onde os scripts PHP podem ser utilizados:

  • Script no lado do servidor (server-side). Este é o mais tradicional e principal campo de atuação do PHP. Você precisa de três coisas para seu trabalho. O interpretador do PHP (como CGI ou módulo), um servidor web e um browser. Basta rodar o servidor web conectado a um PHP instalado. Você pode acessar os resultados de seu programa PHP com um browser, visualizando a página PHP através do servidor web. Todos eles podem rodar na sua máquina, em casa, para você experimentar programação com o PHP. Veja a seção das instruções de instalação para mais informações.
  • Script de linha de comando. Você pode fazer um script PHP funcionar sem um servidor web ou browser. A única coisa necessária é o interpretador. Esse tipo de uso é ideal para script executados usando o cron ou o Agendador de Tarefas (no Windows). Esses scripts podem ser usados também para rotinas de processamento de texto. Veja a seção Utilizando o PHP em linha de comando para maiores informações.
  • Escrevendo aplicações desktop. O PHP provavelmente não é a melhor linguagem para criação de aplicações desktop com interfaces gráficas, mas se você conhece bem o PHP, e gostaria de usar alguns dos seus recursos avançados nas suas aplicações do lado do cliente, você pode usar o PHP-GTK para escrever programas assim. Isso ainda lhe habilita a escrever aplicações multi-plataformas. O PHP-GTK é uma extensão do PHP, não disponibilizada na distribuição oficial. Caso esteja interessado no PHP-GTK, visite » o site do projeto.

O PHP pode ser utilizado na maioria dos sistemas operacionais, incluindo Linux, várias variantes Unix (incluindo HP-UX, Solaris e OpenBSD), Microsoft Windows, Mac OS X, RISC OS, e provavelmente outros. O PHP também é suportado pela maioria dos servidores web atuais, incluindo Apache, Microsoft Internet Information Server, Personal Web Server, Netscape and iPlanet Servers, Oreilly Website Pro Server, Caudium, Xitami, OmniHTTPd, e muitos outros. O PHP pode ser configurado como módulo para a maioria dos servidores, e para os outros como um CGI comum.

Com o PHP, portanto, você tem a liberdade para escolher o sistema operacional e o servidor web. Do mesmo modo, você pode escolher entre utilizar programação estrutural ou programação orientada a objeto, ou ainda uma mistura deles. Mesmo sem todos os recursos da POO (Programação Orientada a Objetos) implementados no PHP 4, muitas bibliotecas de código e grandes aplicações (incluindo a biblioteca PEAR) são escritas somente em código POO. O PHP 5 corrige as fraquezas da POO do PHP 4, e introduz um modelo de objetos completo.

Com PHP você não está limitado a gerar somente HTML. As habilidades do PHP incluem geração de imagens, arquivos PDF e animações Flash (utilizando libswf ou Ming) criados dinamicamente, on the fly. Você pode facilmente criar qualquer padrão texto, como XHTML e outros arquivos XML. O PHP pode gerar esses padrões e os salvar no sistema de arquivos, em vez de imprimi-los, formando um cache dinâmico de suas informações no lado do servidor.

Talvez a mais forte e mais significativa característica do PHP é seu suporte a uma ampla variedade de banco de dados. Escrever uma página que consulte um banco de dados é incrivelmente simples. Os seguintes bancos de dados são atualmente suportados:

  • Adabas D
  • dBase
  • Empress
  • FilePro (read-only)
  • Hyperwave
  • IBM DB2
  • Informix
  • Ingres
  • InterBase
  • FrontBase
  • mSQL
  • Direct MS-SQL
  • MySQL
  • ODBC
  • Oracle (OCI7 and OCI8)
  • Ovrimos
  • PostgreSQL
  • SQLite
  • Solid
  • Sybase
  • Velocis
  • Unix dbm
Também foi providenciado uma abstração de banco de dados (chamada PDO) permitindo a você utilizar qualquer banco de dados transparentemente com sua extensão. Adicionalmente, o PHP suporta ODBC (Open Database Connection, ou Padrão Aberto de Conexão com Bancos de Dados), permitindo que você utilize qualquer outro banco de dados que suporte esse padrão mundial.

O PHP também tem suporte para comunicação com outros serviços utilizando protocolos como LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (em Windows) e incontáveis outros. Você pode abrir sockets de rede e interagir diretamente com qualquer protocolo. O PHP também suporta o intercâmbio de dados complexos WDDX, utilizado em virtualmente todas as linguagens de programação para web. Falando de comunicação, o PHP implementa a instanciação de objetos Java e os utiliza transparentemente como objetos PHP. Você ainda pode usar sua extensão CORBA para acessar objetos remotos.

O PHP é extremamente útil em recursos de processamento de texto, do POSIX Estendido ou expressões regulares Perl até como interpretador para documentos XML. No processamento de XML, o PHP 4 suporta os padrões SAX e DOM, além de você também poder utilizar a extensão XSL para transformar documentos XML. O PHP 5 padroniza toda a extensão XML a partir da base sólida da libxml2, além de estender os recursos com o acréscimo ao SimpleXML e XMLReader.

Por último mas longe de terminar, temos também outras extensões interessantes: funções para o search engine mnoGoSearch, funções para Gateway IRC, vários utilitários de compressão (gzip, bz2, zip), calendário e conversões de datas, tradução...

Como você pode ver, esta página não é suficiente para descrever todos os recursos e benefícios que o PHP pode oferecer. Leia nas seções sobre a Instalação do PHP, e veja a referência das funções para detalhes das extensões mencionadas aqui.

O que é PHP?
Um simples tutorial
Introdução


Um simples tutorial

Índice

  • O que eu preciso?
  • Sua primeira página PHP
  • Algo Útil
  • Tratando Formulários
  • Usando códigos antigos com a nova versão do PHP
  • O que mais?

Aqui nós iremos mostrar o básico do básico do PHP em um curto tutorial. Este texto fala somente sobre a criação de páginas dinâmicas com o PHP, visto que o PHP pode criar mais do que somente webpages. Veja a seção entitulada O que o PHP pode fazer para mais informações.

Fazer páginas com PHP é o mesmo que criar páginas HTML e você pode criá-las e editá-las da mesma maneira que faz com suas páginas HTML normal.

O que o PHP pode fazer?
O que eu preciso?
Começando


O que eu preciso?

Neste tutorial nós presumimos que seu servidor tem suporte ao PHP ativado e que todos os arquivos terminam com a extensão .php são tratados pelo PHP. Na maioria dos servidores esta é a extensão padrão para os arquivos PHP, mas pergunte ao seu administrador só para ter certeza. Se o seu servidor suporta PHP então você não precisa fazer mais nada. Apenas crie seus arquivos .php e coloque-os no seu diretório web e o servidor irá com um passe de mágica mostrar suas páginas PHP. Não há nenhuma necessidade de compilação para qualquer ferramenta extra. Pense nesses arquivos PHP como se eles fossem páginas HTML com algumas tags à mais que deixaram você fazer coisas mais interessantes do que somente páginas HTML estáticas.

Digamos que você quer salvar sua preciosa conexão e desenvolver tudo localmente. Neste caso, você precisará instalar um servidor web, como o » Apache, e claro o » PHP. Você também irá querer instalar uma base de dados, como por exemplo o » MySQL. Você pode instalá-los separadamente ou pelo jeito mais simples que é » usar os pacotes pré-configurados. que irão instalar automaticamente todas as coisas com apenas alguns cliques. É super fácil configurar um servidor web com suporte ao PHP em qualquer sistema operacional, incluindo Linux e Windows. No Linux, você deve procurar o » rpmfind que é muito útil na localização de pacotes RPM.

Um simples tutorial
Sua primeira página PHP
Um simples tutorial


Sua primeira página PHP

Crie um novo arquivo chamado ola.php e coloque-o em seu diretório root do seu servidor web (DOCUMENT_ROOT) com o seguinte conteúdo:

Exemplo #1 Nosso primeiro script PHP: ola.php

<html>
 <head>
  <title>PHP Teste</title>
 </head>
 <body>
 <?php echo "<p>Olá Mundo</p>"; ?>
 </body>
</html>

Use o seu navegador para acessar o arquivo pelo endereço de seu servidor web, ao final do endereço coloque o arquivo "/ola.php" como referência. Quando o desenvolvimento é local você usará uma url como esta http://localhost/ola.php ou http://127.0.0.1/ola.php mas dependendo da configuração do seu servidor web. Entretanto isto está fora do escopo deste tutorial, veja também as diretivas DocumentRoot e ServerName dos arquivos de configuração do seu servidor web. (no Apache o nome do arquivo é httpd.conf). Se tudo foi configurado corretamente, o arquivo irá ser interpretado pelo PHP e irá mostrar a seguinte mensagem de saída no seu navegador:

<html>
 <head>
  <title>PHP Teste</title>
 </head>
 <body>
 <p>Olá Mundo</p>
 </body>
</html>

Note que isto não é como em um script CGI. O arquivo não precisa ser executável ou especial em nenhum aspecto. Pense nesse arquivo como um arquivo HTML normal mas com a diferença que ele pode conter algumas tags especiais a mais que permitem a você fazer coisas mais interessantes do que somente páginas HTML estáticas.

Este exemplo é extremamente simples e você realmente não precisa usar o PHP para criar uma página como esta. Tudo o que ele faz é mostrar uma mensagem Olá Mundo usando a declaração echo() do PHP.

Se você tentar rodar este exemplo e ele não mostrar nenhuma mensagem de saída, ou aparecer uma caixa de diálogo pedindo para você salvar o arquivo, ou você ver o arquivo em formato de texto, há uma grande chance do seu servidor não ter o PHP habilitado. Peça ao seu administrar para habilitar o PHP para você, usando o capítulo de Instalação do manual. Se você está desenvolvendo localmente, também leia o capítulo indicado acima para ter certeza de que configurou tudo corretamente. Se os problemas continuarem a persistir, não hesite em usar uma das várias formas de » ajuda que o PHP pode lhe oferecer.

O objetivo do exemplo é mostrar o formato especial das tags do PHP. Neste exemplo nós usamos <?php para indicar que à partir daquele ponto começa um código PHP. Então nós colocamos uma declaração de fechamento para indicar que o script PHP acabou, usando a tag ?>. Você pode usar o PHP em qualquer parte do seu código HTML, e também pode usar várias tags de abertura e fechamento no mesmo arquivo. Para mais detalhes, leia a seção do manual que fala da sintaxe básica do PHP.

Nota: Uma Nota sobre os Editores de Texto

Há muitos editores de textos e Integrated Development Enviroments (IDEs) que você pode usar para criar, editar e gerenciar arquivos PHP. Uma lista parcial destas ferramentas pode ser vista na » Lista de Editores para PHP. Se você gostaria de recomendar algum editor, por favor visite o endereço acima e pergunte ao administrador do site para adicionar o seu editor à lista. Ter um editor que colora as sintaxes das tags pode ser muito útil.

Nota: Uma Nota sobre os Processadores Word

Processadores Word como o StarOffice Write, Microsoft Word e Abiword não são boas escolhas para editar arquivos PHP. Se você deseja usar um desses para testar seus scripts, você precisa verificar se você está salvando os arquivos como TEXTO PLANO ou o PHP não irá ser capaz de ler e executar o seu script.

Nota: Uma Nota sobre o Bloco de Notas do Windows

Se você está escrevendo seus scripts PHP usando o Bloco de Notas do Windows, você precisará verificar que os arquivos estão sendo salvos com a extensão .php. (O Bloco de Notas do Windows adiciona automaticamente a extensão .txt aos arquivos a não ser que você siga um dos passos a seguir para previnir isto). Quando a caixa de diálogo Salvar estiver aberta e você for digitar o nome do seu arquivo, coloque o nome do arquivo entre aspas (i.e. "ola.php"). Uma alternativa, é você clicar na lista drop-down 'Documentos de Texto' na caixa de diálogo salvar e alterar para "Todos os tipos de arquivos". Você agora pode digitar o nome do seu arquivo sem usar as aspas.

Agora que você criou com sucesso um script simples em PHP, é hora de criar o mais famoso dos scripts PHP! Uma chamada à função phpinfo() e você verá todas as informações sobre seu sistema e configurações disponíveis como a de Variáveis Pré-definidas, módulos carregados pelo PHP, e as opções de configuração. Tire algum tempo para ver e rever estas importantes informações.

O que eu preciso?
Algo Útil
Um simples tutorial


Algo Útil

Vamos fazer alguma coisa um pouco mais útil agora. Nós iremos checar qual é o tipo de navegador que o visitante está utilizando para ver a nossa página. De fato, para fazer isto nós teremos que checar qual é o valor da string agente que o navegador envia como parte de sua requisição HTTP. Esta informação é armazenada em uma variável. Variáveis sempre começam com um símbolo de cifrão no PHP. A variável que nos interessa no momento é a $_SERVER["HTTP_USER_AGENT"].

Nota: Nota sobre as Auto-Globais do PHP

$_SERVER é uma variável especial reservada do PHP que contém todas as informações sobre o servidor web. Ela é conhecida como uma Auto-Global (ou Superglobal). Veja a página do manual relacionada as Auto-globais para mais informações. Estas variáveis especiais foram introduzidas no PHP » 4.1.0. Antes desta versão, nós usávamos os velhos arrays $HTTP_*_VARS, como o $HTTP_SERVER_VARS. Entretanto, este estilo antigo foi removido, porém ainda existem. (Veja a nota sobre códigos antigos.)

Para chamar esta variável, nós podemos fazer isto:

Exemplo #1 Imprimindo a variável (Elemento Array)

<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>

Um exemplo de saída deste script poderia ser:

Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)

Há muitos tipos de variáveis disponíveis no PHP. No exemplo acima nós escrevemos um elemento Array. Arrays podem ser muito úteis.

$_SERVER é somente uma variável que é automaticamente disponibilizada para você pelo PHP. Uma lista de Variáveis Reservadas pode ser vista na seção Variáveis Reservadas do manual ou você pode pegar uma lista completa delas criando um arquivo como este:

Exemplo #2 Exibindo todas as variáveis pré-definidas usando a função phpinfo()

<?php phpinfo(); ?>

Se você carregar este arquivo no seu navegador você irá ver uma página com todas as informações sobre o PHP junto com uma lista de todos os tipos de variáveis disponíveis para você.

Você pode colocar múltiplas declarações PHP dentro da tag PHP e criar pequenos blocos de códigos que fazem muito mais do que um simples echo. Por exemplo, se você quer checar se o navegador é o Internet Explorer faça algo como isso:

Exemplo #3 Exemplo usando controles de declarações e funções

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
    echo "Você está usando o Internet Explorer<br />";
}
?>

Um exemplo de Saída seria:

Você está usando o Internet Explorer<br />

Aqui nós mostraremos alguns novos conceitos. Nós temos a declaração if. Se você é familiar com a sintaxe básica usada pela linguagem C isto parecerá ser lógico para você. Se você não conhece a linguagem C ou alguma outra linguagem onde a sintaxe usada acima é usada, você provavelmente precisará de um livro introdutório sobre o PHP, dê uma lida nos primeiros capítulos do livro, ou leia a parte sobre a Referência da Linguagem no manual. Você pode encontrar uma lista de livros sobre PHP em at » http://www.php.net/books.php.

O segundo conceito que iremos abordar é a chamada à função strstr(). A função strstr() é trazida junto com o PHP, ela faz uma busca em uma palavra por uma outra palavra. Neste caso nós procuramos pela palavra "MSIE" dentro de $_SERVER["HTTP_USER_AGENT"]. Se a palavra for encontrada, a função retorna TRUE e se ela não for encontrada a função retorna FALSE. Se o retorno for TRUE, a declaração if ocorre e o código dentro dela é executado. Caso contrário, o código não é executado. Sinta-se à vontade para criar exemplos similares com o if, else, e outras funções como a strtoupper() e strlen(). Cada uma delas está no manual com seus respectivos exemplos.

Nós podemos avançar agora e mostrar a você como alternar entre os modos PHP mesmo que você esteja executando blocos de códigos:

Exemplo #4 Mesclando entre os modos PHP e HTML

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
<h3>strstr retorna verdadeiro</h3>
<center><b>Você está usando o Internet Explorer</b></center>
<?php
} else {
?>
<h3>strstr retorna falso</h3>
<center><b>Você não está usando o Internet Explorer</b></center>
<?php
}
?>

Um exemplo de saída deste script poderia ser:

<h3>strstr retorna verdadeiro</h3>
<center><b>Você está usando o Internet Explorer</b></center>

Ao invés de usar a declaração echo do PHP para imprimir a saída dos dados, nós saímos do modo do PHP e usamos o HTML normal. O importante à notar aqui é que a lógica do script continua intacta. Somente alguns blocos HTML será enviados de acordo com o que a declaração strstr() retornar, ou seja TRUE ou FALSE. Em outras palavras, se a palavra MSIE for encontrada ou não.

Sua primeira página PHP
Tratando Formulários
Um simples tutorial


Tratando Formulários

Uma das características mais fortes do PHP é o jeito como ele trata formulários HTML. O conceito básico que é importante entender é que qualquer elemento de formulário em um formulário irá automaticamente ficar disponível para você usá-los em seus scripts PHP. Por favor leia a seção Variáveis externas do PHP para mais informações e exemplos de como usar formulários com PHP. Aqui vai um exemplo:

Exemplo #1 Um simples formulário HTML

<form action="acao.php" method="POST">
 Seu nome <input type="text" name="nome" />
 Sua idade: <input type="text" name="idade" />
 <input type="submit">
</form>

Não há nada de especial neste formulário. É um formulário HTML comum sem nenhuma tag especial de qualquer tipo. Quando o usuário preencher este formulário e clicar no botão enviar, a página action.php é chamada. Neste arquivo nós teremos algo como este:

Exemplo #2 Imprimindo dados de nosso formulário

Oi <?php echo $_POST["nome"]; ?>.
Você tem <?php echo $_POST["idade"]; ?> anos.

Um exemplo de saída deste script seria:

Oi Thomas.
Você tem 18 anos.

É óbvio o que este script faz. Não há nada de mais nele. As variáveis $_POST["nome"] e $_POST["idade"] são automaticamente criadas para você pelo PHP. Antigamente nós usávamos a auto-global $_SERVER, agora nós simplesmente usamos a auto-global $_POST que contém todos os dados vindos do POST. Se você usar o método GET então nossas informações residirão na auto-global $_GET. Você também pode usar a auto-global $_REQUEST se você não se importa com o tipo de dados que vêm do seu formulário. Esta auto-global contém uma mescla de GET, POST, COOKIE e FILE. Veja também a função import_request_variables().

Algo Útil
Usando códigos antigos com a nova versão do PHP
Um simples tutorial


Usando códigos antigos com a nova versão do PHP

Agora que o PHP cresceu e é uma linguagem de script popular, há recursos públicos que contém código que você pode reusar em seus próprios scripts. Os desenvolvedores do PHP tentaram largamente manter a compatibilidade, para que um script escrito em uma versão mais antiga do PHP (deva) rodar sem nenhuma alteração em uma versão mais nova do PHP. Na prática algumas alterações serão geralmente necessárias.

Duas das coisas mais importantes recentemente alteradas que afetam um código antigo é:

  • O velho método que não está mais em uso, que é o de usar arrays $HTTP_*_VARS (que precisam ser indicados como sendo globais quando usados dentro de uma função ou método). A seguir nós abordaremos os arrays auto-globais no PHP » 4.1.0. Eles são: $_GET, $_POST, $_COOKIE, $_SERVER, $_ENV, $_REQUEST, e $_SESSION. Os antigos arrays $HTTP_*_VARS, como os $HTTP_POST_VARS, ainda existem até a versão do PHP 3.
  • Variáveis externas não são mais registradas no escopo global por padrão. Em outras palavras, com o PHP » 4.2.0 a diretiva register_globals está desligada por padrão no arquivo php.ini. O método utilizado atualmente é o de acessar estes valores via arrays auto-globais como mencionado acima. Scripts antigos, livros, e tutoriais podem estar utilizando a diretiva ligada. Se ela estiver ligada, por exemplo, você poderá utilizar a variável $id da URL http://www.exemplo.com/pagina.php?id=42. Se a diretiva estiver desligada, você usará $_GET['id'].
Para mais detalhes destas alterações, veja a seção variáveis pré-definidas.

Tratando Formulários
O que mais?
Um simples tutorial


O que mais?

Com o que você sabe agora você deverá estar apto à entender a maioria do manual e também os vários exemplos de scripts disponíveis no arquivo de exemplos. Você também pode encontrar outros exemplos nos sites do php.net e nos links da seção: » http://www.php.net/links.php.

Usando códigos antigos com a nova versão do PHP
Instalação e Configuração
Um simples tutorial


Instalação e Configuração

  • Considerações Gerais sobre Instalação
  • Instalação em sistemas Unix
    • Apache 1.3.x em sistemas Unix
    • Apache 2.0 em sistemas Unix
    • Lighttpd 1.4 on Unix systems
    • Caudium
    • Notas relacionadas à fhttpd
    • Sun, iPlanet e servidores Netscape no Solaris da Sun
    • CGI e instalações de linha de comando
    • Notas expecificas da instalação em HP-UX
    • Notas de instalação para o OpenBSD
    • Dicas de instalação específicas para o Solaris
    • Notas de Instalação para o Debian GNU/Linux
  • Instalação no Mac OS X
    • Usando Pacotes
    • Usando o pacote do PHP para Mac
    • Compilando para o Mac OS X - Versão Servidor
    • Compilando para o MacOS X - Versão Cliente
  • Instalação em sistemas Windows
    • Instalador do PHP para o Windows (PHP 5.1.0 e anterior)
    • Instalador para Windows (PHP 5.2 ou posterior)
    • Passos da Instalação Manual
    • ActiveScript
    • Microsoft IIS / PWS
    • Microsoft IIS 5.1 and IIS 6.0
    • Microsoft IIS 7.0 and later
    • Apache 1.3.x no Microsoft Windows
    • Apache 2.0.x no Microsoft Windows
    • Servidores Sun, iPlanet e Netscape no Microsoft Windows
    • Servidor OmniHTTPd
    • Servidor Sambar no Microsoft Windows
    • Xitami no Microsoft Windows
    • Compilando a partir dos fontes
    • Instalação de extensões no Windows
    • Command Line PHP on Microsoft Windows
  • FastCGI Process Manager (FPM)
    • Installation
    • Configuration
  • Instalação das extensões PECL
    • Introdução para instalações PECL
    • Baixando extensões PECL
    • PECL para usuários Windows
    • Compilando extensões compartilhadas PECL com o comando pecl
    • Compilando extensões compartilhadas PECL com phpize
    • Compilando extensões PECL estaticamente no PHP
  • Problemas?
    • Leia o FAQ
    • Outros problemas
    • Relatos de Bug
  • Configuração em tempo de execução
    • O arquivo de configuração
    • Aonde uma configuração deve ser definida
    • Como mudar as configurações
O que mais?
Considerações Gerais sobre Instalação
Manual do PHP


Considerações Gerais sobre Instalação

Antes de começar a instalar o PHP, primeiro você deve saber o que você deseja fazer com ele. Existem três principais formas de se usar o PHP, como descrito na seção O que o PHP pode fazer? do manual:

  • Websites e aplicações web (script do lado do servidor)
  • Scripts para linha de comando
  • Aplicações de Desktop (GUI)

Para a primeira forma, e mais comum, você precisa de três coisas: o prório PHP, um servidor web e um cliente (browser) web. Você provavelmente já tem um browser, e dependendo da configuração do seu sistema operacional, vocêo pode tambem ter um servidor web (Ex.: Apache no Linux e MacOS X; IIS no Windows). Você também pode alugar um host em uma companhia qualquer. Dessa maneira, você não precisa configurar nada por conta própria, apenas escrever os seus scripts PHP, enviar (upload) para o servidor que você alugou, e ver os resultados no seu browser.

No caso de você instalar o servidor e o PHP por contra própria, você tem duas escolhas para o método de conexão do PHP com o servidor. Para muitos servidores o PHP tem uma interface direta de módulo (também chamada de SAPI). Entre esses servidores estão Apache, Microsoft Internet Information Server, Netscape e iPlanet. Muitos outros servidores têm suporte para ISAPI, a interface de módulo da Microsoft (OmniHTTPd por exemplo). Se o PHP não tiver suporte de módulo para o seu servidor web, você também pode usá-lo como processador CGI ou FastCGI. Isso significar configurar seu servidor para usar executáveis CGI do PHP para processar todas as requisições à arquivos PHP no servidor.

Se você também estiver interessado em usar o PHP para criar scripts em linha de comandos (Ex.: criar scripts que geram imagens enquanto estão offline, ou processar arquivos de texto dependendo de alguns argumentos que você passar ao script), você pode precisar do executável de linha de comando. Para mais informações, leia a seção sobre criando aplicações de linha de comando com o PHP. Nesse caso, vocêo não precisa de servidor nem de um browser.

Com o PHP, você também pode criar aplicações para desktop com interface gráfica (GUI) usando a extenção PHP-GTK. Isso é uma abordagem completamente diferente da criação de páginas web, já que a saída não é em HTML, mas o manuseio de janelas e objetos dentro delas. Para mais informações sobre PHP-GTK, por favor » visite o site dedicado à essa extensão. PHP-GTK não é inclusa na distribuição oficial do PHP.

Por enquanto, essa seção trata da instalação do PHP em servidores web no Unix e Windows como módulos dos servidores e executáveis CGI. Você também pode encontrar inforamação sobre executáveis de linha de comando nas seções seguintes.

O código fonte do PHP e distribuições binárias para Windows podem ser encontradas em » http://www.php.net/downloads.php. Nós recomentandos que você escolha um » mirror mais próximo de vocêo para baixar as distribuições.

Instalação e Configuração
Instalação em sistemas Unix
Instalação e Configuração


Instalação em sistemas Unix

Índice

  • Apache 1.3.x em sistemas Unix
  • Apache 2.0 em sistemas Unix
  • Lighttpd 1.4 on Unix systems
  • Caudium
  • Notas relacionadas à fhttpd
  • Sun, iPlanet e servidores Netscape no Solaris da Sun
  • CGI e instalações de linha de comando
  • Notas expecificas da instalação em HP-UX
  • Notas de instalação para o OpenBSD
  • Dicas de instalação específicas para o Solaris
  • Notas de Instalação para o Debian GNU/Linux

Essa seção é um guia geral para configuração e instalação do PHP em sistemas Unix. Verifique se existe uma seção específica para usa plataforma ou servidor web antes de começar o processo.

Como nosso manual destaca na seção Considerações Gerais sobre Instalação, nós estamos lidando principalmente com configurações web do PHP nessa seção, embora cobriremos instalação do PHP para uso em linha de comando também.

Existem várias maneiras de instalar o PHP para a plataforma Unix, ou com um processo de compilar e configurar, ou atráves de vários métodos pré-empacotados. Essa documentação é focada principalmente no processo de compilação e configuração do PHP. Muitos sistemas baseados no Unix tem alguma forma de sistema de instalação de pacotes. Isso pode ajudar na instalação de uma configuração padrão, mas se você precisar ter uma série de características diferentes (como um servidor seguro, ou um driver de banco de dados diferente), você pode precisar montar o PHP e/ou servidor web. Se você não estiver familiarizado com o processo de montar e compilar seu próprio software, vale a pena checar se alguém já montou um pacote do PHP com as características que você precisa.

Pré-requisitos de software e de conhecimento para compilar:

  • Conhecimento básico de Unix (ser capaz de operar o "make" e um compilador C)
  • Um compilador ANSI C
  • flex: Versão 2.5.4
  • bison: Versão 1.28 (preferida), 1.35, ou 1.75
  • Um servidor web
  • Qualquer componentes específicos para os módulos (como gd, bibliotecas pdf, etc.)

O processo inicial de configuração de instalação do PHP é controlado pelo uso de opções de linha de comando do script configure. Você pode pegar a lista de todas as opções disponíveis junto com uma pequena explicação executando o comando ./configure --help. Nosso manual documenta as diferentes opções separadamente. Você encontrará as opções principais no apêndice, enquanto as opções específicas das diferentes extensões são descritas nas páginas de referência.

Quando o PHP é configurado, você está pronto para montá-lo como módulo e/ou executável. O comando make deve tomar conta disso. Se ele falhar e você não conseguir descobrir a razão, veja a Seção de Problemas.

Considerações Gerais sobre Instalação
Apache 1.3.x em sistemas Unix
Instalação e Configuração


Apache 1.3.x em sistemas Unix

Essa seção contem notas e dicas específicas para a instação do Apache e do PHP em plataformas Unix. Também temos instruções e notas para o Apache 2 em uma página separada.

Você pode selecionar argumentos para adicionar ao configure na linha 10 abaixo através da Lista completa de opções do configure e das opções específicas das extensões em seus respectivos lugares no manual. Os números de versões foram omitidos aqui, para assegurar que as instruções não estejam incorretas. Você deverá trocar o 'xxx' aqui com os valores corretos dos seus arquivos.

Exemplo #1 Instruções de Instalação (Apache Versão de Módulo Compartilhado) para PHP

1.  gunzip apache_xxx.tar.gz
2.  tar -xvf apache_xxx.tar
3.  gunzip php-xxx.tar.gz
4.  tar -xvf php-xxx.tar
5.  cd apache_xxx
6.  ./configure --prefix=/www --enable-module=so
7.  make
8.  make install
9.  cd ../php-xxx

10. Agora, configure o seu PHP. É aqui que você personaliza seu PHP
    com várias opções, como quais extensões serão habilitadas. Execute o
    comando ./configure --help para uma lista das opções disponíveis. No nosso exemplo
    nós faremos uma simples configuração com Apache 1 e suporte ao MySQL. Seu caminho
    para o arquivo apxs pode ser diferente do exemplo.

      ./configure --with-mysql --with-apxs=/www/bin/apxs

11. make
12. make install

    Se você decidir mudar as opções de seu configure depois da instalação
    você precisará somente repetir os últimos 3 passos. Você somente precisará
    reiniciar o Apache para o novo módulo funcionar. Não será necessário recompilar
    o Apache.

    Note que, por padrão, 'make install' também instalará PEAR, além
    de várias ferramentas do PHP como phpize, instalar o CLI do PHP e mais.

13. Configurando seu arquivo php.ini:

      cp php.ini-dist /usr/local/lib/php.ini

    Você pode editar o seu arquivo .ini para configurar as opções do PHP.  Se
    você preferir que este arquivo fique em outro lugar, use a opção
    --with-config-file-path=/caminho no passo 10.

    Se ao invés de escolher o arquivo php.ini-dist, você escolher o arquivo php.ini-recommended,
    leia a lista de mudanças dentro do mesmo, uma vez que elas afetam a maneira como o PHP se comporta.

14. Edite o seu arquivo httpd.conf para carregar o módulo do PHP. O caminho no lado direito
    do comando LoadModule deve apontar para para o caminho do módulo PHP no seu sistema.
    O comando make install acima já deve ter adicionado estas linhas, mas tenha certeza
    de que as linhas abaixo foram adicionadas ao arquivo.

    Para o PHP 4:

      LoadModule php4_module libexec/libphp4.so

    Para o PHP 5:

      LoadModule php5_module libexec/libphp5.so

15. Em seguida, na seção AddModule do arquivo httpd.conf, em algum lugar
    abaixo de ClearModuleList, adicione isto:

    Para o PHP 4:

      AddModule mod_php4.c

    Para o PHP 5:

      AddModule mod_php5.c

16. Diga ao Apache para avaliar certas extensões como PHP. Por exemplo,
    vamos fazer o Apache interpretar a extensão .php como um script PHP. Você poderia
    ter qualquer extensão(ões) avaliadas como PHP simplesmente adicionando-as, com
    cada uma separada por um espaço. Vamos adicionar .phtml para demonstrar.

      AddType application/x-httpd-php .php .phtml

    Também é comum configurar a extensão .phps para mostrar o código-fonte
    do script PHP com highlight, isso pode ser feito com:

      AddType application/x-httpd-php-source .phps

17. Use seu procedimento normal para iniciar o servidor Apache. (Você deve
    parar e reiniciar o servidor, não somente fazer um reinício enviando
    um sinal HUP ou USR1.)

Outra maneira é instalar o PHP como um objeto estático:

Exemplo #2 Instruções de Instalação (Instalação como módulo estático do Apache) para o PHP

1.  gunzip -c apache_1.3.x.tar.gz | tar xf -
2.  cd apache_1.3.x
3.  ./configure
4.  cd ..

5.  gunzip -c php-5.x.y.tar.gz | tar xf -
6.  cd php-5.x.y
7.  ./configure --with-mysql --with-apache=../apache_1.3.x
8.  make
9.  make install

10. cd ../apache_1.3.x

11. ./configure --prefix=/www --activate-module=src/modules/php5/libphp5.a
    (A linha acima está correta! Sim, sabemos que libphp4.a não existe nesse
    estágio. E nem deveria. Ele será criado.)

12. make
    (você deve agora ter um binário httpd que você pode copiar para o diretório bin do Apache. Se
    for sua primeira instalação então você precisa executar "make install" também)

13. cd ../php-5.x.y
14. cp php.ini-dist /usr/local/lib/php.ini

15. Você pode editar o arquivo /usr/local/lib/php.ini para editar as opçso do PHP.
    Edite o seu arquivo httpd.conf ou srm.conf e adicione:
    AddType application/x-httpd-php .php

Nota:

Substitua php-5 por php-4 e php5 por php4 no PHP 4.

Dependendo da sua instalação do Apache e das variações Unix, existem inúmeras maneiras possíveis de parar e reiniciar o servidor. Abaixo estão algumas linhas típicas usadas para reiniciar e o servidor, para instalações de versões de apache/unix. Você deve trocar /caminho/para/ pelo caminho destas aplicações nos seus sistemas.

Exemplo #3 Exemplo de comandos para reinicialização do Servidor Apache

1. Várias distribuições Linux e variantes do SysV:
/etc/rc.d/init.d/httpd restart

2. Usando os scripts apachectl:
/path/to/apachectl stop
/path/to/apachectl start

3. httpdctl and httpsdctl (Usando OpenSSL), igual ao apachectl:
/path/to/httpsdctl stop
/path/to/httpsdctl start

4. Usando mod_ssl, ou outro servidor SSL, você pode querer iniciar
ou reiniciar manualmente:
/path/to/apachectl stop
/path/to/apachectl startssl

As localizações dos binários apachectl e http(s)dctl geralmente variam. Se o seu sistema tem os comandos locate ou whereis ou which, estem podem lhe ajudar a encontrar os programas de controle do servidor.

Exemplos diferentes de compilação do PHP para apache estão a seguir:

./configure --with-apxs --with-pgsql

Isso criará uma biblioteca compartilhada libphp5.so (ou libphp4.so no PHP 4) que é carregada pelo Apache ao adicionar uma linha LoadModule no arquivo httpd.conf do Apache. O suporte ao PostgreSQL é embutido nessa biblioteca.

./configure --with-apxs --with-pgsql=shared

Isto irá criar uma biblioteca compartilhada libphp4.so para o Apache, mas isto também criará uma biblioteca compartilhada pgsql.so que é carregada com o PHP tanto ao usar a diretiva de extensão no arquivo php.ini ou então carregando ela explícitamente no script usando a função dl().

./configure --with-apache=/path/to/apache_source --with-pgsql

Isto irá criar uma biblioteca libmodphp5.a, o arquivo mod_php5.c e vários arquivos dependentes e copiará eles para o diretório src/modules/php5 na árvore de diretório do código fonte do Apache. Então você compilará o Apache usando a opção --activate-module=src/modules/php5/libphp5.a e o sistema de compilação do Apache irá criar o arquivo libphp5.a e fará um link estático dentro do binário httpd (substitua php5 por php4 no PHP 4). O suporte ao PostgreSQL estará incluído diretamente neste binário httpd, então o resultado final aqui será um único arquivo binário httpd que incluirá tudo do Apache e tudo do PHP.

./configure --with-apache=/path/to/apache_source --with-pgsql=shared

Mesmo que o anterior, exceto em vez de incluir o suporte ao PostgreSQL diretamente no binário httpd você terá uma biblioteca compartilhada pgsql.so que você poderá carregar com o PHP tanto do arquivo php.ini ou diretamente usando a função dl().

Quanto estiver decidindo compilar o PHP com maneiras diferentes, você deverá considerar as vantages e disvantagens de cada método. Complilando como uma biblioteca compartilhada significará que você poderá compilar o apache separadamente, e não terá que recompilar tudo quando quiser adicionar ou mudar o seu PHP. compilando o PHP dentro do apache (método estático) significará que o PHP irá carregar e rodar rapidamente. Para maiores informações, veja a página web do Apache que fala sobre » Suporte a Objetos Dinâmicos Compartilhados.

Nota:

O arquivo httpd.conf padrão do Apache atualmente já contém uma seção que se parece com isso:

User nobody
Group "#-1"
A menos que você mude isto para "Group nogroup" ou algo assim ("Group daemon" é também muito comum) o PHP não estará apto a abrir arquivos.

Nota:

Tenha certeza de especificar a versão instalada do apxs quando usar a opção --with-apxs=/caminho/para/apxs . Você NÂO deverá usar a versão do apxs que está nos fontes do apache e sim a que está atualmente instalada no seu sistema.

Instalação em sistemas Unix
Apache 2.0 em sistemas Unix
Instalação em sistemas Unix


Apache 2.0 em sistemas Unix

Essa seção contém notas e dicas específicas para a instalação do Apache 2.0 com o PHP em sistemas Unix.

Aviso

Nós não recomendamos a utilização de um threaded MPM em produção com o Apache2. Use ao invés prefork MPM, ou use Apache1. para informações sobre o motivo, leia este faq sobre usando Apache2 com um threaded MPM

Recomendamos a » Documentação do Apache para obter um entendimento básico do servidor Apache 2.0.

Nota: Notas de compatibilidade do PHP e Apache 2.0.x

As seguintes versões do PHP são compatíveis com a versão mais recente do Apache 2.0.x:

  • PHP 4.3.0 ou superior, disponível em » http://www.php.net/downloads.php.
  • A última versão estável de desenvolvimento. Pegue o código fonte » http://snaps.php.net/php5-latest.tar.gz ou baixe os binários para o Windows » http://snaps.php.net/win32/php5-win32-latest.zip.
  • Uma versão pre-release disponível para download em » http://qa.php.net/.
  • Você sempre tem a opção de obter o PHP através da conta » anônima do CVS.
Essas versões do PHP são compatíveis com Apache 2.0.40 ou superior.

Suporte a SAPI do Apache 2.0 começou no PHP 4.2.0. PHP 4.2.3 funciona com Apache 2.0.39, não use qualquer outra versão de Apache com PHP 4.2.3. No entando, a configuração recomendada é usar o 4.3.0 ou superior com a versão mais recente do Apache2.

Todas as versões mencionadas do PHP ainda funcionarão com Apache 1.3.x.

Baixe a versão mais recente do » Apache 2.0 e uma versão adequada do PHP dos lugares mencionados acima. Esse guia rápido cobre apenas o básico para para começar a usar o Apache 2.0 e o PHP. Para mais informação, leia a » Documentação do Apache Os número de versão foram omitidos para assegurar que as instruções não estejam incorretas. Você precisará substituir o 'NN' com os valores corretos dos seus arquivos.

Exemplo #1 Instruções de Instalação (Versão de Módulo Compartilhado do Apache 2)

1.  gzip -d httpd-2_0_NN.tar.gz
2.  tar xvf httpd-2_0_NN.tar
3.  gunzip php-NN.tar.gz
4.  tar -xvf php-NN.tar
5.  cd httpd-2_0_NN
6.  ./configure --enable-so
7.  make
8.  make install

    Agora você tem o Apache 2.0.NN disponível no diretório /usr/local/apache2,
    configurado com suporte a módulo compartilhado e o prefork MPM padrão.
    Para testar a instalação use o procedimento normal para iniciar
    o servidor Apache, ex.:
    /usr/local/apache2/bin/apachectl start
    e pare o servidor para ir para a configuração do PHP:
    /usr/local/apache2/bin/apachectl stop.

9.  cd ../php-NN

10. Agora, configure o seu PHP. É aqui que você personaliza seu PHP
    com várias opções, como quais extensões serão habilitadas. Execute o
    comando ./configure --help para uma lista das opções disponíveis. No nosso exemplo
    nós faremos uma simples configuração com Apache 2 e suporte ao MySQL. Seu caminho
    para o arquivo apxs pode ser diferente do exemplo. De fato, o binário pode até ser
    chamado de apxs2 no seu sistema.

      ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql

11. make
12. make install

    Se você decidir mudar as opções de seu configure depois da instalação
    você precisará somente repetir os últimos 3 passos. Você somente precisará
    reiniciar o Apache para o novo módulo funcionar. Não será necessário recompilar
    o Apache.

    Note que, por padrão, 'make install' também instalará PEAR, além
    de várias ferramentas do PHP como phpize, instalar o CLI do PHP e mais.

13. Configurando seu arquivo php.ini:

    cp php.ini-dist /usr/local/lib/php.ini

    Você pode editar o seu arquivo .ini para configurar as opções do PHP.  Se
    você preferir que este arquivo fique em outro lugar, use a opção
    --with-config-file-path=/caminho no passo 10.

    Se ao invés de escolher o arquivo php.ini-dist, você escolher o arquivo php.ini-recommended,
    leia a lista de mudanças dentro do mesmo, uma vez que elas afetam a maneira como o PHP se comporta.

14. Edite o seu arquivo httpd.conf para carregar o módulo do PHP. O caminho no lado direito
    do comando LoadModule deve apontar para para o caminho do módulo PHP no seu sistema.
    O comando make install acima já deve ter adicionado estas linhas, mas tenha certeza
    de que as linhas abaixo foram adicionadas ao arquivo.

    Para o PHP 4:

      LoadModule php4_module libexec/libphp4.so

    Para o PHP 5:

      LoadModule php5_module libexec/libphp5.so

15. Diga ao Apache para avaliar certas extensões como PHP. Por exemplo,
    vamos fazer o Apache interpretar a extensão .php como um script PHP. Você poderia
    ter qualquer extensão(ões) avaliadas como PHP simplesmente adicionando-as, com
    cada uma separada por um espaço. Vamos adicionar .phtml para demonstrar.

      AddType application/x-httpd-php .php .phtml

    Também é comum configurar a extensão .phps para mostrar o código-fonte
    do script PHP com highlight, isso pode ser feito com:

      AddType application/x-httpd-php-source .phps

16. Use seu procedimento normal para iniciar o servidor Apache ex.:

      /usr/local/apache2/bin/apachectl start

Seguindo os passos acima você terá rodando o Apache 2.0 com suporte para o PHP como um módulo SAPI. Claro que existem muitas outras opções de configuração disponível para ambos, Apache e o PHP. Para mais informações use o comando ./configure --help na árvore de arquivos fontes correspondente. Caso você desejar compilar uma versão multithreaded do Apache 2.0, você deve sobrescrever o Módulo-MPM padrão prefork ou com o módulo worker ou com o perchild. Para fazer isso, acrescente ao comando configure no passo 6 acima a opção --with-mpm=worker ou --with-mpm=perchild . Tome cuidado com as consequências e entenda o que está fazendo. Para mais informações, leia a documentação do Apache sobre os » Módulos-MPM.

Nota:

Se você quiser usar negociação de conteúdo, leia o FAQ relacionado à MultiViews.

Nota:

Para compilar uma versão multithreaded do Apache, seu sistema deve suportar threads. Isso também implica compilar o PHP com o Zend Thread Safety (ZTS) experimental. Portanto, nem todas as extensões podem estar disponíveis. A configuração recomendada para compilar o Apache é com o Módulo-MPM prefork padrão.

Apache 1.3.x em sistemas Unix
Lighttpd 1.4 on Unix systems
Instalação em sistemas Unix


Lighttpd 1.4 on Unix systems

This section contains notes and hints specific to Lighttpd 1.4 installs of PHP on Unix systems.

Please use the » Lighttpd trac to learn how to install Lighttpd properly before continuing.

Fastcgi is the preferred SAPI to connect PHP and Lighttpd. Fastcgi is automagically enabled in php-cgi in PHP 5.3, but for older versions configure PHP with --enable-fastcgi. To confirm that PHP has fastcgi enabled, php -v should contain PHP 5.2.5 (cgi-fcgi) Before PHP 5.2.3, fastcgi was enabled on the php binary (there was no php-cgi).

Letting Lighttpd spawn php processes

To configure Lighttpd to connect to php and spawn fastcgi processes, edit lighttpd.conf. Sockets are preferred to connect to fastcgi processes on the local system.

Exemplo #1 Partial lighttpd.conf

server.modules += ( "mod_fastcgi" )

fastcgi.server = ( ".php" =>
  ((
    "socket" => "/tmp/php.socket",
    "bin-path" => "/usr/local/bin/php-cgi",
    "bin-environment" => (
      "PHP_FCGI_CHILDREN" => "16",
      "PHP_FCGI_MAX_REQUESTS" => "10000"
    ),
    "min-procs" => 1,
    "max-procs" => 1,
    "idle-timeout" => 20
  ))
)

The bin-path directive allows lighttpd to spawn fastcgi processes dynamically. PHP will spawn children according to the PHP_FCGI_CHILDREN environment variable. The "bin-environment" directive sets the environment for the spawned processes. PHP will kill a child process after the number of requests specified by PHP_FCGI_MAX_REQUESTS is reached. The directives "min-procs" and "max-procs" should generally be avoided with PHP. PHP manages its own children and opcode caches like APC will only share among children managed by PHP. If "min-procs" is set to something greater than 1, the total number of php responders will be multiplied PHP_FCGI_CHILDREN (2 min-procs * 16 children gives 32 responders).

Spawning with spawn-fcgi

Lighttpd provides a program called spawn-fcgi to ease the process of spawning fastcgi processes easier.

Spawning php-cgi

It is possible to spawn processes without spawn-fcgi, though a bit of heavy-lifting is required. Setting the PHP_FCGI_CHILDREN environment var controls how many children PHP will spawn to handle incoming requests. Setting PHP_FCGI_MAX_REQUESTS will determine how long (in requests) each child will live. Here's a simple bash script to help spawn php responders.

Exemplo #2 Spawning FastCGI Responders

#!/bin/sh

# Location of the php-cgi binary
PHP=/usr/local/bin/php-cgi

# PID File location
PHP_PID=/tmp/php.pid

# Binding to an address
#FCGI_BIND_ADDRESS=10.0.1.1:10000
# Binding to a domain socket
FCGI_BIND_ADDRESS=/tmp/php.sock

PHP_FCGI_CHILDREN=16
PHP_FCGI_MAX_REQUESTS=10000

env -i PHP_FCGI_CHILDREN=$PHP_FCGI_CHILDREN \
       PHP_FCGI_MAX_REQUESTS=$PHP_FCGI_MAX_REQUESTS \
       $PHP -b $FCGI_BIND_ADDRESS &

echo $! > "$PHP_PID"

Connecting to remote FCGI instances

Fastcgi instances can be spawned on multiple remote machines in order to scale applications.

Exemplo #3 Connecting to remote php-fastcgi instances

fastcgi.server = ( ".php" =>
   (( "host" => "10.0.0.2", "port" => 1030 ),
    ( "host" => "10.0.0.3", "port" => 1030 ))
)
Apache 2.0 em sistemas Unix
Caudium
Instalação em sistemas Unix


Caudium

O PHP pode ser compilado como um módulo do Pike para o » servidor web Caudium. Siga as instruções abaixo para instalar o PHP 4 para o Caudium.

Exemplo #1 Instruções de Instalação para o Caudium

1.  Verifique que você tem o Caudium instalado antes de tentar
    instalar o PHP 4. Para que o PHP funcione corretamente, você precisará do Pike
    7.0.268 ou superior. Nesse exemplo, presumiremos que
    o Caudium foi instalado no diretório /opt/caudium/server/.
2.  Mude para o diretório php-x.y.z (onde x.y.z é o número da versão).
3.  ./configure --with-caudium=/opt/caudium/server
4.  make
5.  make install
6.  Reinicie o Caudium se ele estiver sendo executado.
7.  Entre na interface gráfica de configuração e vá no
    servidor virtual (virtual server) onde você adicionará suporte ao PHP 4.
8.  Clique em Adicionar Módulo (Add Module) e localize e depois adicione o módulo PHP 4 Script Support.
9.  Se a documentação disser que o 'O interpretador do PHP não está
    disponível', verifique que você reiniciou o servidor. Se você
    verificou, procure em /opt/caudium/logs/debug/default.1 por algum erro relacionado à
    <filename>PHP4.so</filename>. Também certifique-se que o arquivo
    <filename>caudium/server/lib/[pike-version]/PHP4.so</filename>
    está presente.
10. Configure o módulo do PHP se necessário.

Você pode, é claro, compilar o módulo do Caudium com suporte para as várias extensões disponíveis no PHP 4. Veja as páginas de referência por opções específicas para a extensão que você deseja.

Nota:

Quando compilar o PHP 4 com suporte ao MySQL, você deve verificar que o código normal de cliente MySQL é usado. Caso contrário, pode haver conflitos se seu Pike já tiver suporte ao MySQL. Você faz isso especificando um diretório de instalação do MySQL com a opção --with-mysql .

Lighttpd 1.4 on Unix systems
Notas relacionadas à fhttpd
Instalação em sistemas Unix


Notas relacionadas à fhttpd

Para compilar o PHP como módulo fhttpd, responda "yes" para "Build as an fhttpd module?" (a opção do script configure --with-fhttpd=DIR deve ser usada) e especifique o diretório base dos fontes do fhttpd. O diretório padrão é /usr/local/src/fhttpd. Se você estiver rodando fhttpd, compilar o PHP como um módulo lhe dará melhor performance, mais controle e capacidade de execução remota.

Nota: Suporte para fhttpd não está mais disponível a partir do PHP 4.3.0.

Caudium
Sun, iPlanet e servidores Netscape no Solaris da Sun
Instalação em sistemas Unix


Sun, iPlanet e servidores Netscape no Solaris da Sun

Essa seção contem notas e dicas específicas para instação do PHP nos servidores un Java System Web Server, Sun ONE Web Server, iPlanet e Netscape no Solaris.

A partir do PHP 4.3.3, você pode usar scripts PHP com o módulo NSAPI para gerar listagem de diretórios e páginas de erro personalizadas. Funções adicionais para compatibilidade com o Apache também estão disponíveis. Para suporte nos webservers atuais, leia a nota sobre sub-requisições.

Você pode achar mais informações sobre como instalar o PHP para o Servidor Netscape Enterprise (NES) aqui: » http://benoit.noss.free.fr/php/install-php4.html

Para compilar o PHP com servidores web Sun JSWS/Sun ONE WS/iPlanet/Netscape, entre o diretório apropriado de instalação para a opção --with-nsapi=[DIR] O diretório padrão é, normalmente /opt/netscape/suitespot/. Por favor, leia também /php-xxx-version/sapi/nsapi/nsapi-readme.txt.

  1. Instale os seguintes pacotes de » http://www.sunfreeware.com/ ou outro site de download:

    • autoconf-2.13
    • automake-1.4
    • bison-1_25-sol26-sparc-local
    • flex-2_5_4a-sol26-sparc-local
    • gcc-2_95_2-sol26-sparc-local
    • gzip-1.2.4-sol26-sparc-local
    • m4-1_4-sol26-sparc-local
    • make-3_76_1-sol26-sparc-local
    • mysql-3.23.24-beta (se você quiser suporte ao MySQL)
    • perl-5_005_03-sol26-sparc-local
    • tar-1.13 (GNU tar)

  2. Assegure-se que seu PATH inclue os diretórios apropriados PATH=.:/usr/local/bin:/usr/sbin:/usr/bin:/usr/ccs/bin E está disponível para o seu sistema export PATH.
  3. gunzip php-x.x.x.tar.gz (se você tiver uma distribuição .gz, caso contrário vá para o passo 4).
  4. tar xvf php-x.x.x.tar
  5. Mude para o diretório recém-criado: cd ../php-x.x.x

  6. Para o passo seguinte, assegure-se de que /opt/netscape/suitespot/ é onde o seu servidor Netscape está instalado. Caso contrário, mude o comando abaixo para o caminho correto e execute:

    ./configure --with-mysql=/usr/local/mysql \
--with-nsapi=/opt/netscape/suitespot/ \
--enable-libgcc

  7. Execute make seguido de make install.

Depois de fazer a instalação básica e ler o arquivo readme apropriado, você pode precisar executar alguns passos extras de configuração.

Instruções de Configuração para o Sun/iPlanet/Netscape

Primeiramente, você pode preciasr adicionar alguns caminhos para a váriavel de ambiente LD_LIBRARY_PATH para que o servidor ache as bibliotecas compartilhadas. A melhor maneira de fazer isso é no script de inicialização do ser servidor web. Esse script normalmente está localizado em: /caminho/para/servidor/https-nome_do_servidor/start. Você pode precisar também de editar os arquivos de configuração que estão localizados em: /caminho/para/servidor/https-nome_do_servidor/config/.

  1. Adicione a seguinte linha no arquivo mime.types (você pode fazer isso pelo servidor de administração):

    type=magnus-internal/x-httpd-php exts=php

  2. Edite o arquivo magnus.conf (para servidores >= 6) ou o arquivo obj.conf (para servidores < 6) e adicione a seguinte biblioteca compartilhada que pode variar dependendo do seu sistema, ela se parecererá com /opt/netscape/suitespot/bin/libphp4.so. Você deve colocar as seguintes linhas após mime types init.

    Init fn="load-modules" funcs="php4_init,php4_execute,php4_auth_trans" shlib="/opt/netscape/suitespot/bin/libphp4.so"
Init fn="php4_init" LateInit="yes" errorString="Failed to initialize PHP!" [php_ini="/path/to/php.ini"]
    (PHP >= 4.3.3) O parâmetro php_ini é opcional mas com ele você pode colocar seu arquivo php.ini no diretório config do seu servidor web.

  3. Configure o objeto padrão no arquivo obj.conf (para classes de servidor virtuais [versão 6.0+] no arquivo vserver.obj.conf):

    <Object name="default">
.
.
.
.#NOTA Essa linha deve acontecer após todos as linhas 'ObjectType' e antes de todas as linas 'AddLog'
Service fn="php4_execute" type="magnus-internal/x-httpd-php" [inikey=value inikey=value ...]
.
.
</Object>
    (PHP >= 4.3.3) Como parâmetros adicionais, você pode acrescentar valores especiais do php.ini, por exemplo, você pode editar um docroot="/path/to/docroot" específico para o contexto php4_execute chamado. Para valores booleanos, use 0/1 como valor, não "On","Off",... (isso não funcionará corretamente) ,ex.: zlib.output_compression=1 ao invés de zlib.output_compression="On"

  4. Isso só é necessários se você quiser configurar um diretório que apenas consiste de scripts PHP (assim como um diretório cgi-bin):

    <Object name="x-httpd-php">
ObjectType fn="force-type" type="magnus-internal/x-httpd-php"
Service fn=php4_execute [inikey=value inikey=value ...]
</Object>
    Depois que você pode configurar um diretório no servidor de Administração e atribuir a ele o estilo x-httpd-php. Todos os arquivo no diretório serão executados como PHP. Isso é bom para esconder uso do PHP renomeando os arquivos para .html.

  5. Configuração de autenticação: autenticação do PHP não pode ser usada com qualquer outra autenticação. TODA AUTENTICAÇÃO E PASSADA PARA O SEU SCRIPT PHP. Para configurar autenticação via PHP para o servidor todo, adicione a seguinte linha para o seu objeto padrão:

    <Object name="default">
AuthTrans fn=php4_auth_trans
.
.
.
</Object>

  6. Para usar autenticação via PHP em apenas um diretório, adicione o seguinte:

    <Object ppath="d:\path\to\authenticated\dir\*">
AuthTrans fn=php4_auth_trans
</Object>

Nota:

O tamanho da pilha que o PHP usa depende da configuração do servidor web. Se você tiver problemas com scripts PHP muito grandes, é recomendado aumentar o tamanho da pilha com o Admin Server (na seção "MAGNUS EDITOR").

Ambiente CGI e modificações recomendadas ao arquivo php.ini

É importante ter em mente quando escrever scripts PHP que os servidores web Sun JSWS/Sun ONE WS/iPlanet/Netscape são multithreaded. Por isso, todas as requisições estão rodando no mesmo espaço de processo (o espaço do servidor web em si) e esse espaço só tem um ambiente. Se você quiser usar variáveis CGI como PATH_INFO, HTTP_HOST etc, não é correto tentar fazer da maneira como PHP antigo faz, com a função getenv() ou de maneira similar (registrando globais ao ambiente, $_ENV). Você só pegaria o ambiente do servidor web sem qualquer variáveis CGI válidas.

Nota:

Por que existem variáveis CGI inválidas no ambiente?

Resposta: Isso é porque você iniciou o processo do servidor do admin server que roda o script de iniciação do mesmo, você queria iniciar como um script CGI (um script CGI dentro do admin server!). Isso é porque o ambiente do servidor web iniciado tem algumas variáveis CGI de ambiente nele. Você pode testar isso iniciando o servidor web sem ser do admin server. Use a linha de comando como usuário root e inicie-o manualmente - você verá que não exite nenhuma variável CGI de ambiente.

Simplesmente mudando seus scripts para pegar variáveis CGI é a maneira correta para o PHP 4.x usando o superglobal $_SERVER. Se você tiver scripts velhos que usam $HTTP_HOST, etc., você deve ligar register_globals no arquivo php.ini e mudar a ordem das variáveis também (importante: remova "E" de lá, porque voe não precisa do ambiente aqui):

variables_order = "GPCS"
register_globals = On

Uso especial para páginas de erro e listagem de diretório auto-geradas (PHP >= 4.3.3)

Você pode usar o PHP para gerar as páginas de erro para "404 Not Found" ou similares. Adicione a seguinte linha no objeto do arquivo obj.conf para cada página de erro que você quiser sobrescrever:

Error fn="php4_execute" code=XXX script="/path/to/script.php" [inikey=value inikey=value...]
Onde XXX é o código do erro HTTP. Por favor remova qualquer outra diretiva Error que possa interferir com as suas. Se você quiser colocar uma página para todos os erros que podem existir, tire o parâmetro code. Seu script pode pegar o código do erro com $_SERVER['ERROR_TYPE'].

Outra possibilidade é criar uma listagem do diretório auto-gerada. Apenas crie um script PHP que mostra uma listagem do diretório e substitua o padrão correspondente Service line for type="magnus-internal/directory" no arquivo obj.conf pelo seguinte:

Service fn="php4_execute" type="magnus-internal/directory" script="/path/to/script.php" [inikey=value inikey=value...]
Tanto para os erros e as páginas de listagem do diretório a URI original e a URL traduzida estão nas variáveis $_SERVER['PATH_INFO'] e $_SERVER['PATH_TRANSLATED'].

Nota sobre nsapi_virtual() e sub-requisições(PHP >= 4.3.3)

O módulo NSAPI agora suporta a função nsapi_virtual() (sinônima (alias): virtual()) para fazer sub-requisições no servidor web e inserir o resultado na página web. Essa função usa algumas funcionalidades não documentadas da biblioteca NSAPI. No Unix, o módulo procura automaticamente para as funções necessárias e as usa se estiverem disponíveis. Se não, nsapi_virtual() é desabilitada.

Nota:

Mas esteja avisado: Suporte para nsapi_virtual() é EXPERIMENTAL!!!

Notas relacionadas à fhttpd
CGI e instalações de linha de comando
Instalação em sistemas Unix


CGI e instalações de linha de comando

O padrão é compilar o PHP como um programa CGI. Isso cria um interpretador de linha de comando, que pode ser usado para processamento de CGI, ou para criação de scripts não relacionados com a web. Se você estiver executando um servidor web que suporta o PHP como módulo, você deve geralmente usar essa opção por razões de performance. No entanto, a versão CGI permite que usuários executem diferentes páginas com PHP usando diferentes ids de usuário.

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

A partir do PHP 4.3.0, alguns acréscimos importentes aconteceram ao PHP. Um novo SAPI chamado CLI também existe e ele tem o mesmo nome que o binário CGI. O que é instalado no diretório {PREFIX}/bin/php depende das opções usadas com o comando configure e é descrito com mais detalhes na seção do manual chamada Usando o PHP da linha de comando. Para mais detalhes, por favor, leia essa seção do manual.

Testando

Se você compilou o PHP como um programa CGI, você pode testá-lo usando o comando make test. É sempre uma boa idéia testar os software que você compila. Dessa maneira, você pode achar um problema com o PHP na sua plataforma cedo, ao invés de ter de lidar com isso mais tarde.

Usando Variáveis

Algumas variáveis de ambientes fornecidas pelo servidor não são definidas na atual » especificação CGI/1.1. Apenas as seguintes variáveis são definidas lá: AUTH_TYPE, CONTENT_LENGTH, CONTENT_TYPE, GATEWAY_INTERFACE, PATH_INFO, PATH_TRANSLATED, QUERY_STRING, REMOTE_ADDR, REMOTE_HOST, REMOTE_IDENT, REMOTE_USER, REQUEST_METHOD, SCRIPT_NAME, SERVER_NAME, SERVER_PORT, SERVER_PROTOCOL, e SERVER_SOFTWARE. Todo o resto deve ser tratado como 'vendor extensions'.

Sun, iPlanet e servidores Netscape no Solaris da Sun
Notas expecificas da instalação em HP-UX
Instalação em sistemas Unix


Notas expecificas da instalação em HP-UX

Esta sessão contém notas e avisos especificos sobre a instalação do PHP em sistemas HP-UX.

Existem duas opções principais para instalar o PHP em sistemas HP-UX systems. Ou compila-lo, ou instalar um binário pré-compilado.

Pacotes oficiais pré-compilados podem ser encontrados aqui: » http://software.hp.com/

Até que esta sessão do manual seja rescrita, a documentação sobre compilar o PHP (e as extensões relacionadas) em sistemas HP-UX foi removida. Por enquanto, considere ler o seguinte recurso externo: » Construindo o Apache e o PHP em HP-UX 11.11

CGI e instalações de linha de comando
Notas de instalação para o OpenBSD
Instalação em sistemas Unix


Notas de instalação para o OpenBSD

Essa seção contêm notas e dicas específicas para a instalação do PHP no » OpenBSD 3.6.

Usando Pacotes Binários

Usando pacotes binários para instalar o PHP no OpenBSD é o método recomendado e o mais simples. O pacote núcleo foi separado dos vários módulos, e cada um pode ser instalado e removido independentemente dos outros. Os arquivos necessários podem ser encontrados no CD do OpenBSD ou no FTP do site.

O pacote principal que você precisa instalar é o php4-core-4.3.8.tgz, que contem o engine básico (mais gettext e iconv). Depois, olhe os pacotes com módulos, como o php4-mysql-4.3.8.tgz ou php4-imap-4.3.8.tgz. Você precisa usar o comando phpxs para ativar e desativar esses módulos no seu arquivo php.ini.

Exemplo #1 Exemplo de instalação de pacote no OpenBSD

# pkg_add php4-core-4.3.8.tgz
# /usr/local/sbin/phpxs -s
# cp /usr/local/share/doc/php4/php.ini-recommended /var/www/conf/php.ini
  (adiciona o módulo mysql)
# pkg_add php4-mysql-4.3.8.tgz
# /usr/local/sbin/phpxs -a mysql
  (adiciona o módulo imap)
# pkg_add php4-imap-4.3.8.tgz
# /usr/local/sbin/phpxs -a imap
  (remove o módulo mysql para teste)
# pkg_delete php4-mysql-4.3.8
# /usr/local/sbin/phpxs -r mysql
  (instala as bibliotecas do PEAR)
# pkg_add php4-pear-4.3.8.tgz

Leia o manual de » packages(7) para mais informações sobre pacotes binários no OpenBSD.

Usando Ports

Você também pode compilar o PHP dos fontes usando a » árvore ports. No entanto, isso só é recomendado para usuários familiarizado com OpenBSD. O port do PHP 4 é dividido em dois sub-diretórios: núcleo e extensões. O diretório de extensões gera sub-pacotes para todos os módulos suportados pelo PHP. Se você achar que não quer criar alguns dos módulos, use o comando no_* FLAVOR. Por exemplo, se você quiser que o módulo imap seja ignorado, atribua à FLAVOR o valor no_imap.

Problemas Comuns

  • A instalação padrão do Apache roda dentro de uma » prisão de chroot(2), que restrigirá os scripts PHP a acessar arquivos abaixo de /var/www. Você irá, portanto, precisar criar um diretório /var/www/tmp para que os arquivos de sessão do PHP sejam guardados, ou usar um backend alternativo para sessões. Além disso, sockets de bancos de dados devem ser colocados dentro da prisão ou escutar na interface localhost. Se você usar funções de rede, alguns arquivos do diretório /etc como /etc/resolv.conf e /etc/services precisarão ser movidos para /var/www/etc. O pacote PEAR do OpenBSD instala automaticamente nos diretórios corretos da prisão, então nenhuma modificação especial é necessária lá. Mais informação sobre o Apache do OpenBSD está disponível no » FAQ do OpenBSD.
  • O pacote do OpenBSD 3.6 para a extensão » gd precisa do XFree86 instalado. Se você não deseja usar algumas das funcionalidaes de fontes que requerem o X11, instale o pacote php4-gd-4.3.8-no_x11.tgz.

Releases Antigas

Releases mais antigas do OpenBSD usam o sistema de FLAVORS para compilar um PHP estaticamente linkado. Já que é difícil gerar pacotes binários usando esse método, ele é depreciado agora. Você pode ainda usar as árvores de port velhas e estáveis se assim desejar, mas eles não tem suporte pelo time do OpenBSD. Se você tiver algum comentário sobre isso, o atual responsável pela manutenção do port é Anil Madhavapeddy (avsm at openbsd dot org).

Notas expecificas da instalação em HP-UX
Dicas de instalação específicas para o Solaris
Instalação em sistemas Unix


Dicas de instalação específicas para o Solaris

Essa seção contêm notas e dicas específicas para a instalação do PHP em sistemas Solaris.

Software Necessário

Instalações do Solaris frequentemente não possuem compiladores C e suas ferramentas relacionadas. Leia esse FAQ para informação sobre porque usar versões GNU para algumas dessas ferramentas é necessário. Os softwares necessários são os seguintes:

  • gcc (recomendado, outros compiladores C podem funcionar)
  • make
  • flex
  • bison
  • m4
  • autoconf
  • automake
  • perl
  • gzip
  • tar
  • GNU sed
Além disso, você pode precisar instalar (e possivelmente compilar) qualquer software adicional específico para sua configuração, como o Oracle ou MySQL.

Usando Pacotes

Você pode simplificar o processo de instalação no Solaris usando pkgadd para instalar a maioria dos componentes necessários.

Notas de instalação para o OpenBSD
Notas de Instalação para o Debian GNU/Linux
Instalação em sistemas Unix


Notas de Instalação para o Debian GNU/Linux

Essa seção contem notas e dicas específicas para a instalação do PHP no » Debian GNU/Linux.

Usando APT

Embora você possa apenas baixar o fonte do PHP e compilar por conta própria, usar o sistema de pacotes do Debian e o método mais simples e mais limpo de instalar o PHP. Se você não está familiarizado com compilar software no Linux, essa é maneira de se instalar.

A primeira decisão que você precisa fazer é se você quer instalar o Apache 1.3.x ou o Apache 2.x. Os pacotes correspondentes do PHP são, respectivamente, libapache-mod-php* e libapache2-mod-php*. Os passos abaixo usarão o Apache 1.3.x. Por favor, perceba que, até o fechamento desse documento, não há nenhum pacote oficial do Debian para o PHP 5. Então, o procedimento instalará o PHP4.

O PHP está disponível no Debian como CGI ou CLI também, pelos pacotes php4-cgi e php4-cli. Se você precisar deles, só terá que reproduzia os passos a seguir com o pacote desejado. Outro pacote especial que você pode querer instalar é o php4-pear. Ele contem um instalação PEAR mínima e a ferramenta de linha de comando pear.

Se você precisa de pacotes do PHP mais recentes que os do Debian stable ou se alguns módulos do PHP não se encontram no repositório oficial do Debian, talvez você deva procurar em » http://www.apt-get.org/. Um dos resultados encontrados deve ser » Dotdeb. Esse repositório não-oficial é mantido por » Guillaume Plessis e contem pacotes Debian das versões mais recentes do PHP 4 e 5. Para usá-lo, apenas adiciona as seguintes linhas ao seu arquivo /etc/apt/sources.lists e execute apt-get update :

Exemplo #1 Adicionando o repositório Dotdeb

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

A última coisa a ser considade é se sua lista de pacotes está atualizada. Se você não atualizou recentemente, você precisa executar apt-get update antes de qualquer coisa. Dessa forma, você estará usando a versão estável mais recente dos pacotes do Apache e do PHP.

Agora que está tudo no lugar, você pode usar o seguinte exemplo para instalar o Apache e o PHP:

Exemplo #2 Exemplo de Instalação no Debian com o Apache 1.3

# apt-get install libapache-mod-php4

O APT instalará o módulo do PHP 4 para o Apache 1.3 automaticamente, e todas as suas dependências e então ativá-lo. Se o programa não pedir para reiniciar o Apache durante a instalação, você terá que fazê-lo manualmente:

Exemplo #3 Parando e iniciando o Apache depois que o PHP estiver instalado

# /etc/init.d/apache stop
# /etc/init.d/apache start

Maior controle sobre a configuração

Na seção anterior, o PHP foi instalado apenas com os módulos principais. Isso pode não ser o que você quer e você discobrirá em breve que você precisa de mais módulos ativados, como MySQL, cURL, GD, etc.

Quando você compila o PHP do fonte, você precisa ativar os módulos através do comando configure. Com o APT, você só precisa instalar os pacotes adicionais. Todos eles tem o nome 'php4-*' (ou 'php5-*' se você instalou o PHP 5 de um repositório não-oficial).

Exemplo #4 Pegando a lista de pacotes adicionais do PHP

# dpkg -l 'php4-*'

Como você pode ver na saída do comando, existem vários módulos do PHP que você pode instalar (tirando os pacotes especiais php4-cgi, php4-cli ou php4-pear). Olhe com bastante atenção e escolha os que você precisar. Se você escolher um módulo e você não tiver as bibliotecas necessárias, o APT instalará todas as dependências automaticamente para você.

Se você escolher adicionar os módulos do MySQL, cURL e GD, o comando parecerá com esse:

Exemplo #5 Instalar o PHP com MySQL, cURL e GD

# apt-get install php4-mysql php4-curl php4-gd

O APT editará o seu arquivo php.ini (/etc/php4/apache/php.ini, /etc/php4/cgi/php.ini, etc) para dar suporte aos módulos novos.

Exemplo #6 Essas linhas ativam o MySQL, cURL e GD no PHP

extension=mysql.so
extension=curl.so
extension=gd.so

Você só terá que parar/iniciar o Apache como antes para ativar os módulos.

Problemas Comuns

  • Se você ver o código fonte do seus script ao invés do resultado que eles deveriam produzir, o APT provavelmente não incluiu /etc/apache/conf.d/php4 na configuração do Apache. Verifique se a linha está presente no arquivo /etc/apache/httpd.conf e então reinicie o Apache:

    Exemplo #7 Essa linha ativa o PHP 4 no Apache

    # Include /etc/apache/conf.d/
  • Se você instalou um módulo adicional e se as funções desse módulo não estiverem disponíveis nos scripts, verifique que a linha apropriada está presente no seu arquivo php.ini, como visto antes. O APT pode falhar durante a instalação de módulos adicionais, devido a uma configuração confusa do debconf.
Dicas de instalação específicas para o Solaris
Instalação no Mac OS X
Instalação em sistemas Unix


Instalação no Mac OS X

Índice

  • Usando Pacotes
  • Usando o pacote do PHP para Mac
  • Compilando para o Mac OS X - Versão Servidor
  • Compilando para o MacOS X - Versão Cliente

Essa seção contem notas e dicas específicas para instalação do PHP no Mac OS X. Existem duas versões do Mac OS X um pouquinho diferentes entre si, Cliente e Servidor, nosso manual trata da instalação do PHP em ambos os sistemas. Note que o PHP não está disponível para MacOS 9 e versões anteriores.

Notas de Instalação para o Debian GNU/Linux
Usando Pacotes
Instalação e Configuração


Usando Pacotes

Existem algumas versões do PHP empacotadas e pré-compiladas para o Mac OS X. Isso pode ajudar na instalação de uma configuração padrão, mas se você precisar ter algumas características diferentes (como um servidor seguro, ou um driver de banco de dados diferente), você pode precisar compilar o PHP e/ou seu servidor web por conta própria. Se você não estiver familiarizado com o procedimento de compilar seu próprio software, vale a pena checar se alguém já fez um pacote do PHP com as características que você precisa.

Os seguintes recursos oferecem pacotes de fácil instalação e binários pré-compilados para usar o PHP no Mac OS:

  • MacPorts: » http://www.macports.org/
  • Entropy: » http://www.entropy.ch/software/macosx/php/
  • Fink: » http://www.finkproject.org/

Instalação no Mac OS X
Usando o pacote do PHP para Mac
Instalação no Mac OS X


Usando o pacote do PHP para Mac

PHP vem junto com Mac OS X desde a versão 10.0.0. Habilitar o PHP no servidor web padrão requer apenas descomentar algumas linhas no arquivo de configuração do Apache (httpd.conf) enquanto que a versão CGI e/ou CLI estão disponíveis automaticamente (facilmente acessíveis pelo programa Terminal).

Habilitar o PHP usando as instruções abaixo tem como objetivo configurar rapidamente um ambiente de desenvolvimento local. É altamente recomendado sempre atualizar o PHP para a versão mais nova. Como qualquer software ativo, novas versões são criadas para consertar bugs e adicionar funcionalidades e o PHP não é diferente. As seguintes instruções são direcionadas para iniciantes, os detalhes fornecidos permitem que uma configuração padrão funcionar. Todos os usuários são encorajados à compilar ou instalar uma versão nova do pacote.

O tipo de instalação padrão é usando mod_php, e habilitar o pacote mod_php no Mac OS X para o servidor Apache (o servidor web padrão, que é acessível via Preferências de Sistema) envolte os seguintes passos:

  1. Localize e abra o arquivo de configuração do Apache. Normalmente, ele está em: /etc/httpd/httpd.conf Usar Finder ou Spotlight para encontrar esse arquivo pode ser complicado, já que ele normalmente é privado e o dono é o administrador (root).

    Nota: Uma maneira de modificar o arquivo é usando um editor de texto baseado em Unix no Terminal, por exemplo nano, e, como o dono do arquivo é o root, nós usaremos o comando sudo para abrí-lo. Digite o seguinte comando na aplicação de Terminal (você precisará digitar a sua senha): sudo nano /etc/httpd/httpd.conf Comandos importantes do nano: ^w (busca), ^o (salvar), e ^x (sair) onde ^ representa a tecla Ctrl.

  2. Com um editor de texto, descomente as linhas (removendo os #) que parecem com as linhas abaixo (essas duas linhas normalmente não estão juntas, localize ambas no arquivo):

    # LoadModule php4_module libexec/httpd/libphp4.so

# AddModule mod_php4.c
    Perceba a localização/caminho. Quando compilar o PHP no futuro, os arquivos acima devem ser substituidos ou comentados.

  3. Certifique-se que as extensões desejadas serão avalidadas como códigos PHP (exemplos: .php .html e .inc)

    Como a seguinte instrução já existe no httpd.conf (a partir do Mac Panther), uma vez que o PHP for habilitado, os arquivos .php serão automaticamente avaliados como códigos PHP.

    <IfModule mod_php4.c>
    # If php is turned on, we respect .php and .phps files.
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    # Since most users will want index.php to work we
    # also automatically enable index.php
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>

  4. Assegure-se de que a diretiva DirectoryIndex carrega o arquivo index desejado Isso também é configurável no arquivo httpd.conf. Tipicamente index.php e index.html são usados. Por padrão, index.php é habilitado porque também está na checagem mostrada abaixo. Modifique como desejar.
  5. Configure a localização do arquivo php.ini ou use a padrão Uma localização típica no Mac OS X é /usr/local/php/php.ini e uma chamada à phpinfo() revelerá essa informação. Se não for usado um arquivo php.ini, o PHP usará todos os valores padrão. Veja também o FAQ relacionado em encontrando php.ini.
  6. Localize ou configure DocumentRoot Esse é o diretório raiz para todos os arquivos do servidor. Arquivo nesse diretório serão servidos, então os arquivos PHP serão avaliados como PHP antes de terem seu resultado enviado para o servidor. Um caminho padrão para isso é /Library/WebServer/Documents mas isso pode ser modificado para qualquer um no arquivo httpd.conf. Além disso, o DocumentRoot para usuários individuais é /Users/yourusername/Sites
  7. Crie um arquivo phpinfo()

    A função phpinfo() mostrará informação sobre o PHP. Considere criar um arquivo no DocumentRoot com o seguinte código PHP:

    <?php phpinfo(); ?>

  8. Reinicie o Apache e carregue o arquivo PHP criado acima Para reiniciar, ou execute sudo apachectl graceful no shell ou stop/start na opção "Personal Web Server" em OS X System Preferences. Geralmente, carregar arquivos locais no browser pode ser feito usando uma URL assim: http://localhost/info.php ou se estiver usando o diretório DocumentRoot dentro de um diretório de usuário, seria assim: http://localhost/~yourusername/info.php

A versão CLI (ou CGI em versões mais antigas) tem nome php e provavelmente está em /usr/bin/php. Abra um terminal, leia a seção sobre linha de comando do manual desse binário. Uma chamada para phpinfo() também mostrará do PHP, e execute php -v para verificar a versão do PHP essa informação.

Usando Pacotes
Compilando para o Mac OS X - Versão Servidor
Instalação no Mac OS X


Compilando para o Mac OS X - Versão Servidor

Instalação para o Servidor Mac OS X

  1. Pegue a última distribuição do Apache e PHP.

  2. Expanda o arquivo tar, e execute o programa configure do Apache dessa maneira (modifique para conformar com suas necessidades).

    ./configure --exec-prefix=/usr \
--localstatedir=/var \
--mandir=/usr/share/man \
--libexecdir=/System/Library/Apache/Modules \
--iconsdir=/System/Library/Apache/Icons \
--includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \
--enable-shared=max \
--enable-module=most \
--target=apache

  3. Se você quiser que o compilador faça alguma otimização, você pode também querer adicionar essa linha:

    setenv OPTIM=-O2

  4. Depois, vá para o diretório onde os fontes do PHP 4 estão e configure ele.

    ./configure --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --mandir=/usr/share/man \
    --with-xml \
    --with-apache=/src/apache_1.3.12
    Se você quiser qualquer outra extensão (MySQL, GD, etc.), adicione a opção a esse comando. Para a opção --with-apache , coloque o caminho do diretório dos fontes do Apache, por exemplo /src/apache_1.3.12.

  5. Digite make e make install. Isso irá adicionar um diretório para nos fontes do Apache em src/modules/php4.

  6. Agora, reconfigure o Apache para montar junto com o PHP 4.

    ./configure --exec-prefix=/usr \
--localstatedir=/var \
--mandir=/usr/share/man \
--libexecdir=/System/Library/Apache/Modules \
--iconsdir=/System/Library/Apache/Icons \
--includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \
--enable-shared=max \
--enable-module=most \
--target=apache \
--activate-module=src/modules/php4/libphp4.a
    Você pode receber uma mensagem dizendo que libmodphp4.a está desatualizado. Se isso acontecer, vá para do diretório src/modules/php4 dentro do diretório dos fontes do Apache e execute o comando: ranlib libmodphp4.a. Depois volte para o diretório raiz dos fontes do Apache e execute o comando configure acima novamente. Isso fará a tabela de links ser atualizada. Execute make e make install novamente.

  7. Copie e renomei o arquivo php.ini-development que está no diretório dos fontes do PHP para o seu diretório bin: cp php.ini-development /usr/local/bin/php.ini ou (se você não tiver um diretório local) cp php.ini-development /usr/bin/php.ini.

Usando o pacote do PHP para Mac
Compilando para o MacOS X - Versão Cliente
Instalação no Mac OS X


Compilando para o MacOS X - Versão Cliente

As instruções seguintes ajudarão você a instalar o módulo PHP para o servidor web Apache incluso no MacOS X. Essa versão inclui suporte para os bancos de dados MySQL e PostgreSQL. Essas instruções foram providas por » Marc Liyanage.

Aviso

Tenha cuidado quando for fazer isso, vocêo pode estragar seu servidor Apache!

Faça isso para instalar:

  1. Abra uma janela de terminal.
  2. Digite wget http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz, e espere o download terminar.
  3. Digite gunzip libphp4.so.gz.
  4. Digite sudo apxs -i -a -n php4 libphp4.so

  5. Agora digite sudo open -a TextEdit /etc/httpd/httpd.conf. TextEdit abrirá o arquivo de configuração do servidor web. Localize Locate essas duas linhas perto do final do arquivo: (Use o comando Localizar (Find))

    #AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps
    Remove os caracteres de comentários (#), e depois salve o arquivo e saia do TextEdit.

  6. Finalmente, digite sudo apachectl graceful e reinicie o servidor web.

PHP deve estar funcionando. Você pode testar colocando um arquivo no seu diretório Sites chamado test.php. No arquivo, escreva essa linha: <?php phpinfo() ?>.

Agora abra 127.0.0.1/~your_username/test.php no seu navegador. Você deve ver uma tabela de status com informação sobre o módulo PHP.

Compilando para o Mac OS X - Versão Servidor
Instalação em sistemas Windows
Instalação no Mac OS X


Instalação em sistemas Windows

Índice

  • Instalador do PHP para o Windows (PHP 5.1.0 e anterior)
  • Instalador para Windows (PHP 5.2 ou posterior)
  • Passos da Instalação Manual
  • ActiveScript
  • Microsoft IIS / PWS
  • Microsoft IIS 5.1 and IIS 6.0
  • Microsoft IIS 7.0 and later
  • Apache 1.3.x no Microsoft Windows
  • Apache 2.0.x no Microsoft Windows
  • Servidores Sun, iPlanet e Netscape no Microsoft Windows
  • Servidor OmniHTTPd
  • Servidor Sambar no Microsoft Windows
  • Xitami no Microsoft Windows
  • Compilando a partir dos fontes
  • Instalação de extensões no Windows
  • Command Line PHP on Microsoft Windows

Essa seção aplica-se ao Windows 98/Me e Windows NT/2000/XP/2003. O PHP não funcionará em plataformas 16 bit como o Windows 3.1 e algumas vezes nos referimos às plataformas Windows suportadas como Win32. Windows 95 não é mais suportado a partir do PHP 4.3.0.

Nota:

Os Windows 98/ME/NT4 não são mais suportados a partir do PHP 5.3.0.

Nota:

O Windows 95 não é mais suportado a partir do PHP 4.3.0.

Existem duas maneiras principais de instalar o PHP para o Windows: ou manualmente ou usando o instalador.

Se você tiver o Microsoft Visual Studio, você pode também compilar o PHP a partir do código-fonte original.

Uma vez que você tiver o PHP instalado no seu sistema Windows, você pode também querer carregar várias extensões para adicionar funcionalidades.

Aviso

Existem vários instaladores completos na Internet, mas nenhum deles é apoioado pelo PHP.net, nós acreditamos que usando um dos pacotes oficial para Windows de » http://www.php.net/downloads.php seja a melhor maneira de ter seu sistema seguro e otimizado.

Compilando para o MacOS X - Versão Cliente
Instalador do PHP para o Windows (PHP 5.1.0 e anterior)
Instalação e Configuração


Instalador do PHP para o Windows (PHP 5.1.0 e anterior)

O Instalador do PHP para o Windows está disponível na página de downloads em » http://www.php.net/downloads.php. Ele instala a versão CGI do PHP e para IIS, PWS e Xitami, ele configura o servidor web também. O instalador não inclui qualquer extensão extra ao PHP (php_*.dll) uma vez que você só encontrará essas no pacote Zip para o Windows e nos downloads de PECL.

Nota:

Embora o instalador para o Windows seja uma maneira fácil de fazer o PHP funcionar, ele é restrito em muitos aspectos já que, por exemplo, a instalação automática de extensões não é suportada. Uso do instalador não é o método preferido para instalar o PHP.

Primeiro, instale o servidor HTTP (web) de sua preferência no seu sistema e teste se o mesmo funciona.

Execute o instalador e siga as instruções mostradas pelas telas de instalação. Dois tipos de instalação são suportadas - padrão, que provê padrões sensíveis para todas as configurações possíveis, e avançado, que pergunta tudo enquanto instala.

O auxiliar de instalação junta informação suficiente para configura o arquivo php.ini, e configura certos web server para usar o PHP. Um dos servidores web que o instalador não configura é o Apache, então você precisará configurá-lo manualmente.

Uma vez que a instalação tiver completado, o instalador informará a você se você precisa reiniciar seu sistema, reiniciar o servidor ou simplesmente começar a usar o PHP.

Aviso

Cuidado, que essa configuração do PHP não é segura. Se você quiser ter uma configuração do PHP segura, é melhor usar a instalação manual, e editar cada opção com cuidado. Essa configuração automática te dé uma instalaço do PHP que funciona instantaneamente, mas ela não deve ser usada em servidores online.

Instalação em sistemas Windows
Instalador para Windows (PHP 5.2 ou posterior)
Instalação em sistemas Windows


Instalador para Windows (PHP 5.2 ou posterior)

O Instalador do PHP para Windows para versões recentes do PHP é feito usando a tecnologia MSI através do Wix Toolkit (» http://wix.sourceforge.net/). Ele instala e configura o PHP e todas as extensões PECL integradas, assim como configura muitos dos web servers mais populares, como IIS, Apache, e Xitami.

Primeiro, instale seu servidor HTTP (web) predileto no seu sistema e verifique que ele funciona. Então prossiga com um dos seguintes tipos de instação.

Instalação Normal

Execute o instalador MSI e siga as instruções fornecidas pelo programa. Ele primeiro perguntará qual Web Server você deseja configurar, assim como qualquer detalhe de configuração necessário.

Depois você deve selecionar quais funcionalidades e extensões você deseja instalar e habilitar. Para cada item disponível, você pode selecionar "Será instalado no disco local" no menu para determinar quais funcionalidades serão instaladas. Selcionado "Funcionalidade inteira será instalada no disco local", você poderá instalar todas as sub-funcionalidades vinculadas à funcionalidade (por exemplo, selecionar essa opção na extensão "PDO" você instalará todos os drivers PDO).

Aviso

Não é recomendado instalar todas as extensões, já que muitas dependem de extensões externas ao PHP para funcionarem corretamente. Ao invés, use o Installation Repair Mode (Modo de Reparo) que pode ser acionado através da opção Add/Remove Programs (Adicionar/Remover Programas) do painel de controle para habilitar ou desabilitar extensões após a instalação.

O instalador então instala o PHP para ser usado no Windows e o arquivo php.ini, e configura certos servidores web para usá-lo. O instalador configura, atualmente, o IIS, Apache, Xitami e Sambar; se você estiver usando um servidor web diferente, você precisa configurá-lo manualmente.

Instalação silenciosa

O instalador também suporta um modo silencioso, que é útil para administradores de sistema implantarem o PHP facilmente. Para usar o modo silencioso:

msiexec.exe /i php-VERSION-win32-install.msi /q

Você pode controlar o diretório de instalação passando ele como parâmetro de linha de comando. Por exemplo, para instalar em e:\php:

msiexec.exe /i php-VERSION-win32-install.msi /q INSTALLDIR=e:\php
Você também pode usar a mesma sintaxe para especificar o diretório de configuração do Apache (APACHEDIR), do Sambar (SAMBARDIR), e do Xitami (XITAMIDIR).

Você pode especificar quais funcionalidades instalar. Por exemplo, para instalar a extensão mysqli e o executável CGI:

msiexec.exe /i php-VERSION-win32-install.msi /q ADDLOCAL=cgi,ext_php_mysqli

A lista atual de funcionalidades para instalação é a seguinte:

MainExecutable - php.exe executable
ScriptExecutable - php-win.exe executable
ext_php_* - the various extensions ( for example: ext_php_mysql for MySQL )
apache13 - Apache 1.3 module
apache20 - Apache 2.0 module
apache22 - Apache 2,2 module
apacheCGI - Apache CGI executable
iis4ISAPI - IIS ISAPI module
iis4CGI - IIS CGI executable
NSAPI - Sun/iPlanet/Netscape server module
Xitami - Xitami CGI executable
Sambar - Sambar Server ISAPI module
CGI - php-cgi.exe executable
PEAR - PEAR installer
Manual - PHP Manual in CHM Format

Para mais informações sobre instalando usando instaladores MSI a partir da linha de comando, visite » http://msdn.microsoft.com/en-us/library/aa367988.aspx

Atualizado o PHP com o instalador

Para fazer atualização, execute o instalador ou graficamente, ou a partir da linha de comando normalmente. O instalador lerá as opções atuais instalação, remover a instalação velha e reinstalará o PHP com as mesmas opções de antes. É recomendado que você use esse método para manter o PHP atualizado ao invés substituir manualmente os arquivos no diretório de instalação.

Instalador do PHP para o Windows (PHP 5.1.0 e anterior)
Passos da Instalação Manual
Instalação em sistemas Windows


Passos da Instalação Manual

Esse guia de instalação ajudará você a instalar manualmente e configurar o PHP com um servidor web no Microsoft Windows. Para começar, você precisará baixar o zip com a distribuição binária da página de downloads em » http://www.php.net/downloads.php.

Embora existam muitos kits de instalação "completos", e nós também distribuímos um instalador do PHP para o Microsoft Windows, nós recomendamos que você se dê ao trabalho de instalar o PHP manualmente uma vez que isso lhe permitirá um melhor entendimento do sistema, e permite que você instale extensões do PHP facilmente quando precisar.

Nota: Atualizar uma versão instalado do PHP

Edições anteriores do manual sugeriam mover vários arquivo ini e DLL para o seu diretório SYSTEM (ex.: C:\WINDOWS) e, embora isso simplifique o processo de instalação, torna a atualização difícil. Nós aconselhamos que você remova esses arquivos (como php.ini e DLLs relacionadas ao PHP da pasta SYSTEM do Windows) antes de continuar com uma instalação nova do PHP. Assegure-se de fazer um backup desses arquivos já que você pode corromper o sistema inteiro. O arquivo php.ini da versão anterior a que você quer instalar pode ser útil na versão nova. E, como você aprenderá a seguir, o método preferido para instalar o PHP é manter todos os arquivos relacionados ao PHP em um diretório e disponibilizar esse diretório no PATH do seu sistema.

Nota: Requerimentos MDAC

Se você usa o Microsoft Windows 98/NT4, baixe a última versão do Microsoft Data Access Components (MDAC) para sua plataforma. MDAC está disponível em » http://msdn.microsoft.com/data/. Esse requerimento existe porque ODBC é compilado nos binários distribuídos para o Windows.

Os passos a seguite devem ser completados em todas as instalações antes de qualquer instruções específicas ao servidor sejam feitas:

Extraia o arquivo da distribuição no diretório de sua escolha. Se você estiver instalando o PHP 4, extraia em C:\, uma vez que o arquivo zip expande para uma pasta de nome parecido com php-4.3.7-Win32. Se você estiver instalando o PHP 5, extraia em C:\php já que o arquivo zip não expande como no PHP 4. Você pode escolher uma localização diferente, desde que não tenha espaços no caminho (como C:\Program Files\PHP) já que alguns servidores web irão travar se tiver.

A estrutura de diretório extraida do zip é diferente para as versões 4 e 5 e se parecem com as seguintes:

Exemplo #1 Estrutura de diretório para o PHP 4

c:\php
   |
   +--cli
   |  |
   |  |-php.exe           -- executável CLI - Só para uso na linha de comando.
   |
   +--dlls                -- DLLs de suporte, necessárias para algumas extensões
   |  |
   |  |-expat.dll
   |  |
   |  |-fdftk.dll
   |  |
   |  |-...
   |
   +--extensions          -- DLLs de extensões para o PHP
   |  |
   |  |-php_bz2.dll
   |  |
   |  |-php_cpdf.dll
   |  |
   |  |-..
   |
   +--mibs                -- arquivos de suporte para SNMP
   |
   +--openssl             -- arquivos de suporte para Openssl
   |
   +--pdf-related         -- arquivos de suporte para PDF
   |
   +--sapi                -- DLLs de SAPI (suporte a módulo de servidor)
   |  |
   |  |-php4apache.dll
   |  |
   |  |-php4apache2.dll
   |  |
   |  |-..
   |
   +--PEAR                -- cópia inicial do PEAR
   |
   |
   |-go-pear.bat          -- script de configuração do PEAR
   |
   |-..
   |
   |-php.exe              -- executável CGI
   |
   |-..
   |
   |-php.ini-dist         -- configurações padrão do php.ini
   |
   |-php.ini-recommended  -- configurações recomendadas do php.ini
   |
   |-php4ts.dll           -- DLL núcleo do PHP
   |
   |-...

Ou:

Exemplo #2 Estrutura de diretório para o PHP 5

c:\php
   |
   +--dev
   |  |
   |  |-php5ts.lib
   |
   +--ext                 -- DLLs de extensões para o PHP
   |  |
   |  |-php_bz2.dll
   |  |
   |  |-php_cpdf.dll
   |  |
   |  |-..
   |
   +--extras
   |  |
   |  +--mibs             -- arquivos de suporte para SNMP
   |  |
   |  +--openssl          -- arquivos de suporte para Openssl
   |  |
   |  +--pdf-related      -- arquivos de suporte para PDF
   |  |
   |  |-mime.magic
   |
   +--pear                -- cópia inicial do PEAR
   |
   |
   |-go-pear.bat          -- script de configuração do PEAR
   |
   |-fdftk.dll
   |
   |-..
   |
   |-php-cgi.exe          -- executável CGI
   |
   |-php-win.exe          -- executa scripts sem um prompt de comando aberto
   |
   |-php.exe              -- CLI executável - Só para uso em linha de comando
   |
   |-..
   |
   |-php.ini-dist         -- configurações padrão do php.ini
   |
   |-php.ini-recommended  -- configurações recomendadas do php.ini
   |
   |-php5activescript.dll
   |
   |-php5apache.dll
   |
   |-php5apache2.dll
   |
   |-..
   |
   |-php5ts.dll           -- DLL núcleo do PHP
   |
   |-...

Note as diferenças e similaridades. Tanto o PHP 4 quanto o 5 tem um executável CGI, um executável CLI, e módulos do servidor, mas eles estão localizados em pastas diferentes e/ou tem nomes diferentes. Enquanto no PHP 4 os módulos do servidor estão na pasta sapi, no PHP 5 não há tal diretório e, ao invés disso, eles estão na pasta principal do PHP. As DLLs de suporte para as extensões do PHP 5 também não estão em um diretório separado.

Nota:

No PHP 4, você deve mover todos os arquivos localizados nas pastas dll e sapi para a pasta principal (ex.: C:\php).

Aqui está uma lista dos módulos de servidor liberados com o PHP 4 e PHP 5:

  • sapi/php4activescript.dll (php5activescript.dll) - ActiveScript engine, permitindo imbutir PHP em aplicações Windows.

  • sapi/php4apache.dll (php5apache.dll) - Módulo do Apache 1.3.x.

  • sapi/php4apache2.dll (php5apache2.dll) - Módulo do Apache 2.0.x.

  • sapi/php5apache2_2.dll - Módulo do Apache 2.2.x.

  • sapi/php4isapi.dll (php5isapi.dll) - Módulo do ISAPI para servidores que suportam ISAPI como IIS 4.0/PWS 4.0 ou superior.

  • sapi/php4nsapi.dll (php5nsapi.dll) - Módulo dos servidores Sun/iPlanet/Netscape.

  • sapi/php4pi3web.dll (não tem equivalente no PHP 5) - Módulo do servidor Pi3Web.

Módulos de servidor tem performance significativamente melhor e funcionalidades adiconais comparados com o binário CGI. A versão CLI é desenhada para permitir usar o PHP para scripts de linha de comando. Mais informação sobre CLI disponível no capítulo sobre usando PHP da linha de comando.

Aviso

Os módulos SAPI foram melhorados significativamente a partir do release 4.1, no entanto, em sistemas mais antigos, você pode encontrar erros de servidor e outros módulos do servidor podem falhar, como ASP.

Os binários CGI e CLI, e os módulos de servidor web todos necessitam do arquivo php4ts.dll (php5ts.dll) para funcionar corretamente. Você tem que assegurar que esse arquivo pode se encontrado pela sua instalação do PHP. A ordem de busca para essa DLL é como segue:

  • O mesmo diretório onde o arquivo php.exe é chamado, ou no caso de usar um módulo SAPI, o diretório do servidor web (ex.: C:\Program Files\Apache Group\Apache2\bin).

  • Qualquer diretório no na sua variável de ambiente PATH do Windows.

Para disponibilizar php4ts.dll / php5ts.dll você tem três opções: copiar o arquivo para o diretório system do Windows, copiar o arquivo para o diretório do servidor web, ou adicionar o diretório do PHP, C:\php no PATH. Para melhor manutenção, nós aconselhamos que você siga a última opção, adicione C:\php ao PATH, porque é mais simples atualizar o PHP no futuro. Leia mais sobre como adicionar o diretório ao PATH no FAQ correspondente (e então, não esqueça de reiniciar o computador - fazer o logoff não é suficiente).

O próximo passo é montar um arquivo de configuração para o PHP, php.ini. Existem dois arquivos ini distribuídos no arquivo zip, php.ini-dist e php.ini-recommended. Nós aconselhamos que você use php.ini-recommended, porque nós otimizamos as configurações padrões nesse arquivo para performance e segurança. Leia esse arquivo bem documentador cuidadosamente porque ele tem diferenças em relação a php.ini-dist que afetarão drasticamente sua configuração. Alguns exemplos são display_errors está off e magic_quotes_gpc está off. Além de ler isso, estude as configurações ini e configure cada elemento manualmente. Se você quiser alcança o máximo de segurança, então essa é a maneira que você deve fazer, embora o PHP funcione bem com os arquivos padrões. Copie o seu arquivo ini preferido para um diretódio que o PHP possa encontrar e renomei para php.ini. PHP procura pelo arquivo php.ini nas localidades descritas nessa O arquivo de configuração seção.

Se você estiver executando o Apache 2, a opção mais simples é usar a diretiva PHPIniDir (leia a página instalação no Apache 2). Caso contrário, sua melhor opção é criar a variável de ambiente PHPRC. Esse processo é explicado no seguinte FAQ.

Nota: Se você estiver usando NTFS no Windows NT, 2000, XP ou 2003, assegure-se que o usuário executando o servidor web tem permissões de leitura ao seu arquivo php.ini (ex.: faça com que seja lido por Everyone (Todos) ).

Os passos a seguir são opcionais:

  • Edite seu no arquivo php.ini. Se você planeja usar OmniHTTPd, não faça o passo a seguir. Edite o doc_root para apontar para o document_root do servidor web. Por exemplo:

    doc_root = c:\inetpub\wwwroot // para IIS/PWS

doc_root = c:\apache\htdocs // para Apache

  • Selecione as extensões que você quer que sejam carregadas quando o PHP iniciar. Veja a seção sobre extensões no Windows, sobre como configurar uma, e quais já estão integradas. Note que em uma instalação nova, é aconselhável primeiro fazer o PHP funcionar e testá-lo sem extensões e depois habilitá-las no arquivo php.ini.
  • No PWS e IIS, você pode editar a configuração browscap para que ela aponte para: c:\windows\system\inetsrv\browscap.ini no Windows 9x/Me, c:\winnt\system32\inetsrv\browscap.ini no NT/2000, e c:\windows\system32\inetsrv\browscap.ini no XP. Para um arquivo browscap.ini atualizado, leia o seguinte FAQ.

O PHP agora está configurado no seu sistema. O próximo passo é escolher um servidor web, e habilitá-lo para executar o PHP. Escolha um servidor web da tabela de conteúdos.

Instalador para Windows (PHP 5.2 ou posterior)
ActiveScript
Instalação em sistemas Windows


ActiveScript

Essa seção contem notas específicas para a instalação do ActiveScript.

ActiveScript é um SAPI exclusivo do Windows que permite usar scripts PHP em qualquer host compatível com ActiveScript, como Windows Script Host, ASP/ASP.NET, Windows Script Components ou Microsoft Scriptlet Control.

A partir do PHP 5.0.1, ActiveScript foi transferido para o repositório do » PECL. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota:

Você deve ler os passos da instalação manual antes!

Depois de instalar o PHP, você deve baixar o DLL do ActiveScript (php5activescript.dll) e colocá-lo na pasta principal do PHP (ex.: C:\php).

Depois de ter todos os arquivos necessários, você deve registrar a DLL no seu sistema. Para isso, abra um Prompt de Comando (localizado no seu Menu Iniciar). Então vá ao diretório do PHP digitando algo como cd C:\php. Para registrar a DLL apenas digite regsvr32 php5activescript.dll.

Para testar se o ActiveScript está funcionando, crie um arquivo novo, chamado test.wsf (a extensão é muito importante) e digite:

<job xml:id="test">

 <script language="PHPScript">
  $WScript->Echo("Alô Mundo!");
 </script>

</job>
Salve e clique duas vezes no arquivo. Se você receber uma pequena janela dizendo "Alô Mundo!", então está tudo certo.

Nota:

No PHP 4, o engine foi chamado de 'ActivePHP', então se você estiver usando PHP 4, você deve substituir 'PHPScript' por 'ActivePHP' no exemplo acima.

Nota:

ActiveScript não usa o arquivo php.ini padrão. Ao invés disso, ele procurará apenas no mesmo diretório do .exe que o carregou. Você deve criar um arquivo php-activescript.ini e colocá-lo nessa pasta, se você quiser acrescentar extensões, etc.

Passos da Instalação Manual
Microsoft IIS / PWS
Instalação em sistemas Windows


Microsoft IIS / PWS

Essa seção contêm notas e dicas específicas para o IIS (Microsoft Internet Information Server).

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

Considerações Gerais para qualquer instalação do PHP com IIS ou PWS

  • Primeiro, leia as Instruções de Instalação Manual. Não pule esse passo, já que ele provê informações cruciais para instalar o PHP no Windows.
  • Usuários CGI devem configurar a diretiva cgi.force_redirect para o valor 0 no arquivo php.ini.Leia o FAQ sobre cgi.force_redirect para obter detalhes importantes. Também é aconselhável configurar a diretiva cgi.redirect_status_env. Quando usar diretiva, assegure-se que as mesmas não estejam comentadas no arquivo php.ini.
  • O CGI do PHP 4 tem o nome php.exe e o do PHP 5 php-cgi.exe. No PHP 5, php.exe é o CLI, e não o CGI.
  • Modifique a variável de ambiente PATH do Windows para conter o diretório do PHP. Dessa maneira, os arquivos DLL, executáveis do PHP podem ficar no diretório do PHP sem ocupar ainda mais o diretório system do Windows. Para mais detalhes, veja o FAQ sobre Configurando o PATH.
  • O usuáiro IIS (normalmente IUSR_MACHINENAME) precisa de permissão para ler vários diretórios e arquivos, como o php.ini, docroot, e o diretório temporário de sessão.
  • Tenha certeza que as diretivas extension_dir e doc_root estão configuradas corretamente no arquivo php.ini. Essas diretivas dependem do sistema onde o PHP foi instalado. No PHP 4, extension_dir é extensions e no PHP 5 é ext. Então, um exemplo de valor extensions_dir value no PHP 5 é "c:\php\ext" e um exemplo de valor doc_root para o IIS é "c:\Inetpub\wwwroot".
  • Arquivos de DLL com extensões do PHP, tais como php_mysql.dll e php_curl.dll, são encontrados no arquivo zip do pacote do PHP (mas não no instalador do PHP). No PHP 5, muitas extensões são parte da PECL e podem ser baixadas no pacote "Coleção de módulos PECL". Arquivos como php_zip.dll e php_ssh2.dll. » Baixe arquivos do PHP aqui.
  • Quando definir o executável, a caixa 'check that file exists' também pode ser selecionada. Pou um pequeno custo de performance, o IIS (ou PWS) checará se o arquivo do script existe e decide a autenticação antes de inicializar o PHP. Isso significa que o servidor web retornará uma página 404 ao invés de erros de CGI reclamando que o PHP não teve saída de dados.
  • O executável do PHP é distribuido como um aplicação 32bit. Se você está usando uma versão 64bit do Windows, você irá também precisar recriar o binário você mesmo, ou tenha certeza que o IIS está configurado para também executar extensões 32bit. Você pode normalmente torna isto usando o IIS Administration script como segue: Cscript.exe adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

Windows NT/200x/XP e IIS 4 ou superior

O PHP pode ser instalado como binário CGI, ou como módulo ISAPI. Em ambos os casos, você precisa iniciar o Microsoft Management Console (pode aparecer como 'Internet Services Manager', ou no seu Windows NT 4.0 Option Pack ou no Control Panel=>Administrative Tools no Windows 2000/XP). Então clique no botão direito no seu ícone Web server (Provavelmente aparecerá como 'Default Web Server'), e selecione 'Properties'.

Se você quiser usar o binário CGI, faça o seguinte:

  • Em 'Home Directory', 'Virtual Directory', ou 'Directory', faça o seguinte:
  • Mude as Permissões de Execução para 'Scripts only'
  • Clique no botão 'Configuration', e escolha a aba Application Mappings. Clique em Add e configure o caminho de execução do arquivo CGI apropriado. Um valor exemplo no PHP 5: C:\php\php-cgi.exe Marque .php como a extensão. Deixe 'Method exclusions' em branco, e marque a opção 'Script engine'. Agora clique OK algumas vezes.
  • Configure a segurança apropriada. (Isso é feito no Internet Service Manager), e se seu Servidor NT usa o sistema de arquivos NTFS, adicione direito de execução para I_USR_ no diretório que contem php.exe / php-cgi.exe.

Para usuar o módulo ISAPI, faça o seguinte:

  • Se você não quiser fazer Autenticação HTTP usando o PHP, você pode (e deve) pular esse passo. Em ISAPI Filters, adicione um novo filtro ISAPI. Use PHP como nome do filtro e dê o caminho para php4isapi.dll / php5isapi.dll.
  • Em 'Home Directory', 'Virtual Directory', ou 'Directory', faça o seguinte:
  • Mude as Permissões de Execução para 'Scripts only'
  • Clique no botão 'Configuration', e escolha a aba Application Mappings. Clique em Add e configure o caminho de execução da DLL ISAPI apropriada. Um valor exemplo no PHP 5: C:\php\php5isapi.dll Marque .php como a extensão. Deixe 'Method exclusions' em branco, e marque a opção 'Script engine'. Agora clique OK algumas vezes.
  • Pare o IIS completamente (NET STOP iisadmin)
  • Inicialize o IIS novamente (NET START w3svc)

Com o IIS 6 (2003 Server), abra o IIS Manager, vá até Web Service Extensions, selecione "Add a new Web service extension", digite um nome como PHP, clique no botão Add e coloque no campo valor coloque ou o arquivo ISAPI (php4isapi.dll ou php5isapi.dll) ou do CGI (php.exe ou php-cgi.exe) e selecione a opção "Set extension status to Allowed" e clique OK.

Para usar index.php como página padrão de conteúdo, faça o seguinte: Na aba Documents, escolha Add. Digite index.php e clique OK. Ajuste a ordem clicando em Move Up ou Move Down. Isso é similar a configurar DirectoryIndex no Apache.

Os passos acima devem ser repetidos para cada extensão que será associada com scripts PHP. .php é a mais comum embora .php3 pode ser necessária para código legado.

Se ocorrer 100% de uso de CPU depois de um tempo, desligue a configuração do IIS Cache ISAPI Application.

Windows e PWS 4

PWS 4 não tem suporte a ISAPI, somente o CGI deve ser usado.

  • Edite o arquivo pws-php4cgi.reg / pws-php5cgi.reg (procure no diretório SAPI no PHP 4, ou no diretório principal do PHP 5) para refletir a localização do seu php.exe / php-cgi.exe. Barras-invertidas devem ser escapadas, por exemplo: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters\Script Map] ".php"="C:\\php\\php.exe" (mude para C:\\php\\php-cgi.exe se você estiver usando PHP 5) Agora adicione o arquivo ao registro do seu sistema; você pode fazer isso clicando duas vezes nele.
  • No PWS Manager, clique com o botão direito em um diretório que você queira adicionar suporte ao PHP, e selecione Properties. Marque a opção 'Execute' e confirme.

Windows e PWS/IIS 3

O método recomendado para configurar o PHP nesses servidores é usar o arquivo REG incluso na distribuição (pws-php4cgi.reg na pasta SAPI para o PHP 4, ou pws-php5cgi.reg na pasta principal para o PHP 5). Você pode querer editar o arquivo e assegurar-se que o diretório das extensões e do PHP estão corretos. Ou você pode seguir os passos abaixo para fazer manualmente.

Aviso

Esses passos involvem trabalhar diretamente com o registro do Windows. Um erro aqui pode deixar seu sistema em um estado instável. Nós recomendamos que você faça um backup do seu registro primeiro. O time de desenvolvimento do PHP não será responsável se você danificar seu registro.

  • Execute Regedit.
  • Vá até: HKEY_LOCAL_MACHINE /System /CurrentControlSet /Services /W3Svc /Parameters /ScriptMap.
  • No menu editar (edit) selecione: New->String Value.
  • Digite a extensão que você quer para seus scripts PHP. Por exemplo .php
  • Clique duas vezes no novo valor string e entre o caminho para php.exe no campo de valor. ex: C:\php\php.exe para o PHP 4, ou C:\php\php-cgi.exe para o PHP 5.
  • Repita esses passos para cada extensão que você quiser associar com scripts PHP.

Os passos a seguir não afetam a instalação do servidor web e só se aplicam se você quiser que seus scripts sejam executados quando eles forem chamados da linha de comando (ex. run C:\myscripts\test.php) ou clicando duas vezes neles na janela de visualização de diretório. Você pode pular esses passos já que você pode preferir que os arquivos PHP sejam carregados em um editor de texto quando você clicar duas vezes neles.

  • Vá até: HKEY_CLASSES_ROOT
  • No menu de editar (edit) selecione: New->Key.
  • Nomeie a chave com a extensão que você configurou na seção anterior. ex: .php
  • Selecione a chave nova e no painel do lado direto, clique duas vezes no "default value" e digite phpfile.
  • Repita o passo anterior para cada extensão que você configurou na seção anterior.
  • Agora crie um outra chave (New->Key) em HKEY_CLASSES_ROOT e chame ela de phpfile.
  • Selecione a chave nova phpfile e no painel do lado direito, clique duas vezes em "default value" e digite PHP Script.
  • Clique com o botão direito na chave phpfile e selecione New->Key, e a chame de Shell.
  • Clique com o botão direito na chave Shell e selecione New->Key, e a chame de open.
  • Clique com o botão direito na chave open e selecione New->Key, e a chame de command.
  • Selecione a chave nova command e no painel do lado direito, clique duas vezes em "default value" e entre o caminho para php.exe. ex: c:\php\php.exe -q %1. (não esqueça o %1).
  • Saia do Regedit.
  • Se estiver usando PWS no Windows, reinicie para recarrega o registro.

Usuários do PWS e do IIS 3 agora tem um sistema totalmente operacional. Usuários do IIS 3 pode usar uma » ferramenta legal de Steven Genusa para configurar os mapas dos seus scripts.

ActiveScript
Microsoft IIS 5.1 and IIS 6.0
Instalação em sistemas Windows


Microsoft IIS 5.1 and IIS 6.0

This section contains instructions for manually setting up Internet Information Services (IIS) 5.1 and IIS 6.0 to work with PHP on Microsoft Windows XP and Windows Server 2003. For instructions on setting up IIS 7.0 and later versions on Windows Vista, Windows Server 2008, Windows 7 and Windows Server 2008 R2 refer to Microsoft IIS 7.0 and later.

Configuring IIS to process PHP requests

Download and install PHP in accordance to the instructions described in manual installation steps

Nota:

Non-thread-safe build of PHP is recommended when using IIS. The non-thread-safe builds are available at » PHP for Windows: Binaries and Sources Releases.

Configure the CGI- and FastCGI-specific settings in php.ini file as shown below:

Exemplo #1 CGI and FastCGI settings in php.ini

fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0

Download and install the » Microsoft FastCGI Extension for IIS 5.1 and 6.0. The extension is available for 32-bit and 64-bit platforms - select the right download package for your platform.

Configure the FastCGI extension to handle PHP-specific requests by running the command shown below. Replace the value of the "-path" parameter with the absolute file path to the php-cgi.exe file.

Exemplo #2 Configuring FastCGI extension to handle PHP requests

cscript %windir%\system32\inetsrv\fcgiconfig.js -add -section:"PHP" ^
-extension:php -path:"C:\PHP\php-cgi.exe"

This command will create an IIS script mapping for *.php file extension, which will result in all URLs that end with .php being handled by FastCGI extension. Also, it will configure FastCGI extension to use the executable php-cgi.exe to process the PHP requests.

Nota:

At this point the required installation and configuration steps are completed. The remaining instructions below are optional but highly recommended for achieving optimal functionality and performance of PHP on IIS.

Impersonation and file system access

It is recommended to enable FastCGI impersonation in PHP when using IIS. This is controlled by the fastcgi.impersonate directive in php.ini file. When impersonation is enabled, PHP will perform all the file system operations on behalf of the user account that has been determined by IIS authentication. This ensures that even if the same PHP process is shared across different IIS web sites, the PHP scripts in those web sites will not be able to access each others' files as long as different user accounts are used for IIS authentication on each web site.

For example IIS 5.1 and IIS 6.0, in its default configuration, has anonymous authentication enabled with built-in user account IUSR_<MACHINE_NAME> used as a default identity. This means that in order for IIS to execute PHP scripts, it is necessary to grant IUSR_<MACHINE_NAME> account read permission on those scripts. If PHP applications need to perform write operations on certain files or write files into some folders then IUSR_<MACHINE_NAME> account should have write permission to those.

To determine which user account is used by IIS anonymous authentication, follow these steps:

  1. In the Windows Start Menu choose "Run:", type "inetmgr" and click "Ok";

  2. Expand the list of web sites under the "Web Sites" node in the tree view, right-click on a web site that is being used and select "Properties";

  3. Click the "Directory Security" tab;

  4. Take note of a "User name:" field in the "Authentication Methods" dialog

Anonymous authenication for IIS 5.1 and IIS 6.0

To modify the permissions settings on files and folders, use the Windows Explorer user interface or icacls command.

Exemplo #3 Configuring file access permissions

icacls C:\inetpub\wwwroot\upload /grant IUSR:(OI)(CI)(M)

Set index.php as a default document in IIS

The IIS default documents are used for HTTP requests that do not specify a document name. With PHP applications, index.php usually acts as a default document. To add index.php to the list of IIS default documents, follow these steps:

  1. In the Windows Start Menu choose "Run:", type "inetmgr" and click "Ok";

  2. Right-click on the "Web Sites" node in the tree view and select "Properties";

  3. Click the "Documents" tab;

  4. Click the "Add..." button and enter "index.php" for the "Default content page:".

Setting index.php as default document for IIS

FastCGI and PHP Recycling configuration

Configure IIS FastCGI extension settings for recycling of PHP processes by using the commands shown below. The FastCGI setting instanceMaxRequests controls how many requests will be processed by a single php-cgi.exe process before FastCGI extension shuts it down. The PHP environment variable PHP_FCGI_MAX_REQUESTS controls how many requests a single php-cgi.exe process will handle before it recycles itself. Make sure that the value specified for FastCGI InstanceMaxRequests setting is less than or equal to the value specified for PHP_FCGI_MAX_REQUESTS.

Exemplo #4 Configuring FastCGI and PHP recycling

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-InstanceMaxRequests:10000

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

Configuring FastCGI timeout settings

Increase the timeout settings for FastCGI extension if there are applications that have long running PHP scripts. The two settings that control timeouts are ActivityTimeout and RequestTimeout. Refer to » Configuring FastCGI Extension for IIS 6.0 for more information about those settings.

Exemplo #5 Configuring FastCGI timeout settings

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-ActivityTimeout:90

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-RequestTimeout:90

Changing the Location of php.ini file

PHP searches for php.ini file in several locations and it is possible to change the default locations of php.ini file by using PHPRC environment variable. To instruct PHP to load the configuration file from a custom location run the command shown below. The absolute path to the directory with php.ini file should be specified as a value of PHPRC environment variable.

Exemplo #6 Changing the location of php.ini file

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-EnvironmentVars:PHPRC:"C:\Some\Directory\"

Microsoft IIS / PWS
Microsoft IIS 7.0 and later
Instalação em sistemas Windows


Microsoft IIS 7.0 and later

This section contains instructions for manually setting up Internet Information Services (IIS) 7.0 and later to work with PHP on Microsoft Windows Vista SP1, Windows 7, Windows Server 2008 and Windows Server 2008 R2. For instructions on setting up IIS 5.1 and IIS 6.0 on Windows XP and Windows Server 2003 refer to Microsoft IIS 5.1 and IIS 6.0.

Enabling FastCGI support in IIS

FastCGI module is disabled in default installation of IIS. The steps to enable it differ based on the version of Windows being used.

To enable FastCGI support on Windows Vista SP1 and Windows 7:

  1. In the Windows Start Menu choose "Run:", type "optionalfeatures.exe" and click "Ok";

  2. In the "Windows Features" dialog expand "Internet Information Services", "World Wide Web Services", "Application Development Features" and then enable the "CGI" checkbox;

  3. Click OK and wait until the installation is complete.

Enabling FastCGI support for IIS7 on Windows Vista SP1 and Windows 7

To enable FastCGI support on Windows Server 2008 and Windows Server 2008 R2:

  1. In the Windows Start Menu choose "Run:", type "CompMgmtLauncher" and click "Ok";

  2. If the "Web Server (IIS)" role is not present under the "Roles" node, then add it by clicking "Add Roles";

  3. If the "Web Server (IIS)" role is present, then click "Add Role Services" and then enable the "CGI" checkbox under "Application Development" group;

  4. Click "Next" and then "Install" and wait for the installation to complete.

Enabling FastCGI support on Windows Server 2008 and Windows Server 2008 R2

Configuring IIS to process PHP requests

Download and install PHP in accordance to the instructions described in manual installation steps

Nota:

Non-thread-safe build of PHP is recommended when using IIS. The non-thread-safe builds are available at » PHP for Windows: Binaries and Sources Releases.

Configure the CGI- and FastCGI-specific settings in php.ini file as shown below:

Exemplo #1 CGI and FastCGI settings in php.ini

fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0

Configure IIS handler mapping for PHP by using either IIS Manager user interface or a command line tool.

Using IIS Manager user interface to create a handler mapping for PHP

Follow these steps to create an IIS handler mapping for PHP in IIS Manager user interface:

  1. In the Windows Start Menu choose "Run:", type "inetmgr" and click "Ok";

  2. In the IIS Manager user interface select the server node in the "Connections" tree view;

  3. In the "Features View" page open the "Handler Mappings" feature;

    Create IIS handler mapping for PHP : Locate Handler Mappings

  4. In the "Actions" pane click "Add Module Mapping...";

  5. In the "Add Module Mapping" dialog enter the following:

    • Request path: *.php
    • Module: FastCgiModule
    • Executable: C:\[Path to PHP installation]\php-cgi.exe
    • Name: PHP_via_FastCGI

  6. Click "Request Restrictions" button and then configure the mapping to invoke handler only if request is mapped to a file or a folder;

  7. Click OK on all the dialogs to save the configuration.

Create IIS handler mapping for PHP : Add Handler Mapping

Using command line tool to create a handler mapping for PHP

Use the command shown below to create an IIS FastCGI process pool which will use php-cgi.exe executable for processing PHP requests. Replace the value of the fullPath parameter with the absolute file path to the php-cgi.exe file.

Exemplo #2 Creating IIS FastCGI process pool

%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI ^
/+[fullPath='c:\PHP\php-cgi.exe']

Configure IIS to handle PHP specific requests by running the command shown below. Replace the value of the scriptProcessor parameter with the absolute file path to the php-cgi.exe file.

Exemplo #3 Creating handler mapping for PHP requests

%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers ^
/+[name='PHP_via_FastCGI', path='*.php',verb='*',modules='FastCgiModule',^
scriptProcessor='c:\PHP\php-cgi.exe',resourceType='Either']

This command creates an IIS handler mapping for *.php file extension, which will result in all URLs that end with .php being handled by FastCGI module.

Nota:

At this point the required installation and configuration steps are completed. The remaining instructions below are optional but highly recommended for achieving optimal functionality and performance of PHP on IIS.

Impersonation and file system access

It is recommended to enable FastCGI impersonation in PHP when using IIS. This is controlled by the fastcgi.impersonate directive in php.ini file. When impersonation is enabled, PHP will perform all the file system operations on behalf of the user account that has been determined by IIS authentication. This ensures that even if the same PHP process is shared across different IIS web sites, the PHP scripts in those web sites will not be able to access each other's files as long as different user accounts are used for IIS authentication on each web site.

For example IIS 7, in its default configuration, has anonymous authentication enabled with built-in user account IUSR used as a default identity. This means that in order for IIS to execute PHP scripts, it is necessary to grant IUSR account read permission on those scripts. If PHP applications need to perform write operations on certain files or write files into some folders then IUSR account should have write permission to those.

To determine what user account is used as an anonymous identity in IIS 7 use the following command. Replace the "Default Web Site" with the name of IIS web site that you use. In the output XML configuration element look for the userName attribute.

Exemplo #4 Determining the account used as IIS anonymous identity

%windir%\system32\inetsrv\appcmd.exe list config "Default Web Site" ^
/section:anonymousAuthentication

<system.webServer>
  <security>
    <authentication>
      <anonymousAuthentication enabled="true" userName="IUSR" />
    </authentication>
   </security>
</system.webServer>

Nota:

If userName attribute is not present in the anonymousAuthentication element, or is set to an empty string, then it means that the application pool identity is used as an anonymous identity for that web site.

To modify the permissions settings on files and folders, use the Windows Explorer user interface or icacls command.

Exemplo #5 Configuring file access permissions

icacls C:\inetpub\wwwroot\upload /grant IUSR:(OI)(CI)(M)

Set index.php as a default document in IIS

The IIS default documents are used for HTTP requests that do not specify a document name. With PHP applications, index.php usually acts as a default document. To add index.php to the list of IIS default documents, use this command:

Exemplo #6 Set index.php as a default document in IIS

%windir%\system32\inetsrv\appcmd.exe set config ^
-section:system.webServer/defaultDocument /+"files.[value='index.php']" ^
/commit:apphost

FastCGI and PHP Recycling configuration

Configure IIS FastCGI settings for recycling of PHP processes by using the commands shown below. The FastCGI setting instanceMaxRequests controls how many requests will be processed by a single php-cgi.exe process before IIS shuts it down. The PHP environment variable PHP_FCGI_MAX_REQUESTS controls how many requests a single php-cgi.exe process will handle before it recycles itself. Make sure that the value specified for FastCGI InstanceMaxRequests setting is less than or equal to the value specified for PHP_FCGI_MAX_REQUESTS.

Exemplo #7 Configuring FastCGI and PHP recycling

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi ^
/[fullPath='c:\php\php-cgi.exe'].instanceMaxRequests:10000

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi ^
/+"[fullPath='C:\{php_folder}\php-cgi.exe'].environmentVariables.^
[name='PHP_FCGI_MAX_REQUESTS',value='10000']"

FastCGI timeout settings

Increase the timeout settings for FastCGI if it is expected to have long running PHP scripts. The two settings that control timeouts are activityTimeout and requestTimeout. Use the commands below to change the timeout settings. Make sure to replace the value in the fullPath parameter to contain the absolute path to the php-cgi.exe file.

Exemplo #8 Configuring FastCGI timeout settings

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi ^
/[fullPath='C:\php\php-cgi.exe',arguments=''].activityTimeout:"90"  /commit:apphost

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi ^
/[fullPath='C:\php\php-cgi.exe',arguments=''].requestTimeout:"90"  /commit:apphost

Changing the Location of php.ini file

PHP searches for php.ini file in several locations and it is possible to change the default locations of php.ini file by using PHPRC environment variable. To instruct PHP to load the configuration file from a custom location run the command shown below. The absolute path to the directory with php.ini file should be specified as a value of PHPRC environment variable.

Exemplo #9 Changing the location of php.ini file

appcmd.exe set config  -section:system.webServer/fastCgi ^
/+"[fullPath='C:\php\php.exe',arguments=''].environmentVariables.^
[name='PHPRC',value='C:\Some\Directory\']" /commit:apphost

Microsoft IIS 5.1 and IIS 6.0
Apache 1.3.x no Microsoft Windows
Instalação em sistemas Windows


Apache 1.3.x no Microsoft Windows

Essa seção contem notas e dicas específicas para instalação do Apache 1.3.x com o PHP nos sistemas Microsoft Windows. Também há instruções e notas para o Apache 2 em uma página separada.

Nota:

Por favor, leia os passos da instalação manual primeiro!

Existem duas maneiras de configurar o PHP para funcionar com o Apache 1.3.x no Windows. Uma é usar o binário CGI (php.exe para o PHP 4 e php-cgi.exe para o PHP 5), e a outra é usar o DLL do módulo do Apache. Em ambos os casos você precisa editar o arquivo httpd.conf para configurar o Apache para funcionar com o PHP e, então, reiniciar o servidor.

Vale a pena notar que agora o módulo SAPI tornou-se mais estável no Windows, nós recomendamos o seu uso ao invés do binário CGI, uma vez que é mais transparente e seguro.

Embora existam algumas pequenas variações de configuração do PHP com o Apache, elas são simples o suficiente para ser usado por iniciantes. Por favor, consulte a Documentação do Apache para mais diretivas de configuração.

Depois de mudar o arquivo de configuração, lembre-se de reiniciar o servidor, por exemplo, executando NET STOP APACHE seguido de NET START APACHE, se você rodar o Apache como um Windows Service, ou user os atalhos normais.

Nota: Lembre-se que quando acrescentando valores de caminhos nos arquivos de configuração do Apache para Windows, todas as contrabarras como em c:\directory\file.ext precisam ser convertidas para barras, como em c:/directory/file.ext. Uma barra ao final também é necessária para diretórios.

Instalando como um módulo do Apache

Você deve adicionar as seguintes linhas para o seu arquivo httpd.conf:

Exemplo #1 PHP como um módulo do Apache 1.3.x

Presume-se que o PHP esteja instalado em c:\php. Ajuste o caminho se não for o seu caso.

Para o PHP 4:

# Adicione ao fim da seção LoadModule
# Não se esqueça de copiar esse arquivo do diretório sapi
LoadModule php4_module "c:/php/php4apache.dll"

# Adicione ao fim da seção AddModule
AddModule mod_php4.c

Para o PHP 5:

# Adicione ao fim da seção LoadModule
LoadModule php5_module "c:/php/php5apache.dll"

# Adicione ao fim da seção AddModule
AddModule mod_php5.c

Para ambos:

# Adicione essa linha dentro das tags condicionais <IfModule mod_mime.c>
AddType application/x-httpd-php .php

# Para arquivos .phps com highlight de sintaxe adicione também
AddType application/x-httpd-php-source .phps

Instalando como um binário CGI

Se você dezipou o pacote PHP para o diretório C:\php\ como descrito na seção Passos da Instalação Manual, você precisa inserir as seguintes linhas ao arquivo de configuração do Apache para configurar o uso do binário CGI:

Exemplo #2 PHP e Apache 1.3.x como CGI

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php

# Para o PHP 4
Action application/x-httpd-php "/php/php.exe"

# Para o PHP 5
Action application/x-httpd-php "/php/php-cgi.exe"

# especifica o diretório onde o php.ini está
SetEnv PHPRC C:/php
Note que a segunda linha na lista acima pode ser encontrada na versão padrão do httpd.conf, mas está comentada. Lembre-se de substituir também o c:/php/ pelo caminho do PHP no seu sistema.

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

Se você gostaria de apresentar os códigos-fonte dos PHP com highlight de sintaxe, não exites uma opção conveniente como na versão de módulo. Se você escolheu configura o Apache para usar o PHP como um binário CGI, você precisará usar a função highlight_file(). Para fazer isso, simplesmente crie um script PHP e adicione esse código: <?php highlight_file('some_php_script.php'); ?>.

Microsoft IIS 7.0 and later
Apache 2.0.x no Microsoft Windows
Instalação em sistemas Windows


Apache 2.0.x no Microsoft Windows

Essa seção contem notas e dicas específicas para instalação do Apache 2.0.x com o PHP nos sistemas Microsoft Windows.Também há instruções e notas para o Apache 1.3.x em uma página separada.

Nota:

Por favor, leia os passos da instalação manual primeiro!

Nota: Suporte a Apache 2.2.x

Usuários do Apache 2.2.x devem usar a documentação abaixo exceto que o nome do arquivo da dll apropriada é php5apache2_2.dll e lea só existe a partir do 5.2.0. Veja também » http://snaps.php.net/

Aviso

Nós não recomendamos a utilização de um threaded MPM em produção com o Apache2. Use ao invés prefork MPM, ou use Apache1. para informações sobre o motivo, leia este faq sobre usando Apache2 com um threaded MPM

Encorajamos que você olhe a » Documentação do Apache para entender o básico do Servidor Apache 2.0.x. Também considere ler as » notas específicas para o Windows para o Apache 2.0.x antes de continuar.

Nota: Notas de compatibilidade do PHP e Apache 2.0.x

As seguintes versões do PHP são compatíveis com a versão mais recente do Apache 2.0.x:

  • PHP 4.3.0 ou superior, disponível em » http://www.php.net/downloads.php.
  • A última versão estável de desenvolvimento. Pegue o código fonte » http://snaps.php.net/php5-latest.tar.gz ou baixe os binários para o Windows » http://snaps.php.net/win32/php5-win32-latest.zip.
  • Uma versão pre-release disponível para download em » http://qa.php.net/.
  • Você sempre tem a opção de obter o PHP através da conta » anônima do CVS.
Essas versões do PHP são compatíveis com Apache 2.0.40 ou superior.

Suporte a SAPI do Apache 2.0 começou no PHP 4.2.0. PHP 4.2.3 funciona com Apache 2.0.39, não use qualquer outra versão de Apache com PHP 4.2.3. No entando, a configuração recomendada é usar o 4.3.0 ou superior com a versão mais recente do Apache2.

Todas as versões mencionadas do PHP ainda funcionarão com Apache 1.3.x.

Aviso

Apache 2.0.x foi desenhado para rodar no Windows NT 4.0, Windows 2000 ou Windows XP. Até o momento, suporte para Windows 9x está incompleto. Apache 2.0.x não tem planos para funcionar nessas plataformas.

Baixe a versão mais recente do » Apache 2.0.x e uma versão apropriada do PHP. Siga os Passos da Instalação Manual e volte para continuar com a integração do PHP e Apache.

Existem duas maneiras de configurar o PHP para funcionar com Apache 2.0.x no Windows. Uma é usar o binário CGI e a outra é usar o DLL do módulo do Apache. Em ambos os casos você precisa editar o arquivo httpd.conf para configurar o Apache para funcionar com o PHP e, então, reiniciar o servidor.

Nota: Lembre-se que quando acrescentando valores de caminhos nos arquivos de configuração do Apache para Windows, todas as contrabarras como em c:\directory\file.ext precisam ser convertidas para barras, como em c:/directory/file.ext. Uma barra ao final também é necessária para diretórios.

Instalando como um binário CGI

Você precisa inserir essas três linhas para o arquivo httpd.conf de configuração do Apache para configura o binário CGI:

Exemplo #1 PHP e Apache 2.0 como CGI

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php

# Para o PHP 4
Action application/x-httpd-php "/php/php.exe"

# Para o PHP 5
Action application/x-httpd-php "/php/php-cgi.exe"

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

Instalando como um módulo do Apache

Você precisa inserir essas duas linhas ao arquivo de configuração de Apache httpd.conf para configurar o módulo PHP para o Apache 2.0:

Exemplo #2 PHP e Apache 2.0 como Módulo

# Para o PHP 4 faça algo assim:
LoadModule php4_module "c:/php/php4apache2.dll"
# Não esqueça de copiar o arquivo php4apache2.dll do diretório sapi para o principal do PHP!
AddType application/x-httpd-php .php

# Para o PHP 5 faça algo assim:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php

# configure o caminho para o arquivo php.ini
PHPIniDir "C:/php"

Nota: Lembre-se de substituir o caminho c:/php/ para o caminho onde você instalou o PHP na sua máquina. Tome o cuidade de usar ou php4apache2.dll ou php5apache2.dll na sua diretiva LoadModule e não php4apache.dll ou php5apache.dll já que essas últimas são feitas para rodar com o Apache 1.3.x.

Nota:

Se você quiser negociação de conteúdo, leia o FAQ relacionado.

Aviso

Não misture sua instalação com arquivos DLL de versões diferentes do PHP. Você só pode escolher usar as DLL's e extensões inclusas na versão do PHP que você baixou.

Apache 1.3.x no Microsoft Windows
Servidores Sun, iPlanet e Netscape no Microsoft Windows
Instalação em sistemas Windows


Servidores Sun, iPlanet e Netscape no Microsoft Windows

Essa seção contem notas e dicas específicas para instalação do PHP em servidores Sun Java System Web Server, Sun ONE Web Server, iPlanet e Netscape no Windows.

A partir do PHP 4.3.3 você pode usar seus scripts PHP com o módulo NSAPI para gerar listagens personalizadas de diretórios e páginas de erro. Funções adicionais para compatibilidade com o Apache também estão disponíveis. Para suporte nos servidores web atuais leia a nota sobre subrequests.

Configurando como CGI em servidores Sun, iPlanet e Netscape

Para instalar o PHP como um tratador de CGI, faça o seguinte:

  • Copie o arquivo php4ts.dll para a pasta raiz do seu sistema (o diretório onde você instalou o Windows)

  • Faça uma associação de arquivo a partir da linha de comando. Digite as duas linhas a seguir:

    assoc .php=PHPScript
ftype PHPScript=c:\php\php.exe %1 %*

  • No Netscape Enterprise Administration Server crie um diretório dummy para o shellcgi e remova-o em seguida (esse passo cria 5 linhas importantes no obj.conf e permite que o servidor web trate scripts shellcgi).
  • No Netscape Enterprise Administration Server crie um novo tipo mime (Category: type, Content-Type: magnus-internal/shellcgi, File Suffix:php).
  • Faça isso para cada instância do servidor web que você quiser que rode o PHP

Mais detalhes sobre configuração do PHP como um executável CGI pode ser encontrado aqui: » http://benoit.noss.free.fr/php/install-php.html

Configurando como NSAPI em servidores Sun, iPlanet e Netscape

Para instalar o PHP com NSAPI, faça o seguinte:

  • Copie php4ts.dll para a pasta raiz do seu sistema (o diretório onde você instalou o Windows)

  • Faça uma associação de arquivo a partir da linha de comando. Digite as duas linhas a seguir:

    assoc .php=PHPScript
ftype PHPScript=c:\php\php.exe %1 %*

  • No Netscape Enterprise Administration Server crie um novo tipo mime (Category: type, Content-Type: magnus-internal/x-httpd-php, File Suffix: php).

  • Edite o arquivo magnus.conf (para servidores >= 6) ou obj.conf (para servidores < 6) e adicione o seguinte: Você deve colocar as linhas depois de mime types init.

    Init fn="load-modules" funcs="php4_init,php4_execute,php4_auth_trans" shlib="c:/php/sapi/php4nsapi.dll"
Init fn="php4_init" LateInit="yes" errorString="Failed to initialise PHP!" [php_ini="c:/path/to/php.ini"]
    (PHP >= 4.3.3) O parâmetro php_ini é opcional, mas com ele você pode colocar seu arquivo php.ini no diretório de configuração do seu servidor web.

  • Configure o objeto padrão no arquivo obj.conf (para classes de servidor virtual [Sun Web Server 6.0+] no arquivo vserver.obj.conf): Na seção <Object name="default">, coloque essa linha necessariamente após todas as linhas do tipo 'ObjectType' e antes das do tipo 'AddLog':

    Service fn="php4_execute" type="magnus-internal/x-httpd-php" [inikey=value inikey=value ...]
    (PHP >= 4.3.3) Como parâmetros adicionais,você pode adicionar alguns valores especiais do arquivo php.ini, por exemplo, você pode atribuir um docroot="/path/to/docroot" específico ao contexto no qual php4_execute é chamado. Para valores booleanos do php.ini, use 0/1 como valor, e não "On","Off",... (Isso não funcionará), ex.: zlib.output_compression=1 ao invés de zlib.output_compression="On"

  • Isso só é necessário se você quiser configurar um diretório que só consiste de scripts PHP (como em um diretório cgi-bin):

    <Object name="x-httpd-php">
ObjectType fn="force-type" type="magnus-internal/x-httpd-php"
Service fn=php4_execute [inikey=value inikey=value ...]
</Object>
    Depois disso você pode configurar um diretório na ferramenta de Administração do servidor e atribuir a ele um estilo x-httpd-php. Todos os arquivos neles serão executados como PHP. Isso é bom para esconder o uso do PHP renomeando os arquivos como .html.

  • Reinicie seu servidor web e aplique as mudanças
  • Faça isso para cada instância do servidor web que você quiser que execute o PHP

Nota:

Mais detalhes sobre configurar o PHP como um filtro NSAPI pode ser achado aqui: » http://benoit.noss.free.fr/php/install-php4.html

Nota:

O tamanho de pilha que o PHP usa depende da configuração do servidor web. Se você tiver problemas com scripts muito grandes, é recomendado aumentar esse tamanho com o Administrador do Servidor (na seção "MAGNUS EDITOR").

Ambiente CGI e modificações recomendadas ao arquivo php.ini

É importante quando escrevendo scripts PHP levar em conta o fato que Sun JSWS/Sun ONE WS/iPlanet/Netscape são servidores multithreaded. Por isso, todas as requisições estão sendo executadas no mesmo espaço de processo (o espaço do servidor web) e esse espaço só tem um ambiente. Se você quiser usar variáveis CGI como PATH_INFO, HTTP_HOST etc, não é correto tentar pegá-las da maneira do PHP antigo, usando a função getenv() ou uma maneira similar (registrar globais para o ambiente, $_ENV). Você só iria pegar o ambiente do servidor web sem quaisquer variáveis CGI válidas!

Nota:

Porque existem variáveis CGI (inválidas) no ambiente?

Resposta: Isso é porque você inicializou o processo do servidor a partir do administrador do servidor que executa o script de inicialização do servidor web, você queria iniciar, como um script CGI (um script CGI dentro do administrador do servidor!). Isso é porque o ambiente do servidor tem algumas variáveis CGI do ambiente nele. Você pode testar isso inicializando o servidor web de outra forma que não pelo administrador do servidor. Use a linha de comando como usuário root e inicialize-o manualmente - você verá que não há variáveis ambientes do tipo CGI.

Simplesmente mude seus scripts para pegar variáveis CGI da maneira correta para o PHP 4.x, usando o array superglobal $_SERVER. Se você tiver scripts mais antigos que usem $HTTP_HOST, etc., você deve ligar a diretiva register_globals no arquivo php.ini e mudar a ordem das variáveis também (importante: remova "E" da diretiva, porque você não precisa das variávies de ambiente aqui):

variables_order = "GPCS"
register_globals = On

Uso especial para páginas de erro ou listagens de conteúdo de diretório auto-geradas (PHP >= 4.3.3)

Você pode usar o PHP para gerar as páginas de erro para "404 Not Found" ou similar. Adicione a seguinte linha ao objeto no arquivo obj.conf para cada página de erro que você queira sobrescrever:

Error fn="php4_execute" code=XXX script="/path/to/script.php" [inikey=value inikey=value...]
onde XXX é o código de erro HTTP. Por favor apague qualquer outra diretiva Error que podem interferir com as suas. Se você quiser colocar uma página para todos os erros que podem existir, não informe o parâmetro code. Seu script pode determinar qual o erro pela variável $_SERVER['ERROR_TYPE'].

Outra possibilidade é gerar listagens de conteúdo de diretório. Apenas crie um script PHP que mostre uma listagem do diretório e substitua o valor padrão da linha Service type="magnus-internal/directory" no arquivo obj.conf com a seguinte:

Service fn="php4_execute" type="magnus-internal/directory" script="/path/to/script.php" [inikey=value inikey=value...]
Tanto para páginas de erro e de listagem de diretório a URI original e a URI traduzida estão nas variáveis $_SERVER['PATH_INFO'] e $_SERVER['PATH_TRANSLATED'].

Nota sobre nsapi_virtual() e subrequisições (subrequests) (PHP >= 4.3.3)

O módulo NSAPI agora suporta a função nsapi_virtual() (sinônimo (alias): virtual()) para fazer subrequisições no servidor web e inserir o resultado em uma página web. O problema é que essa função usa algumas características não documentadas da biblioteca NSAPI.

No Unix, isso não é um problema, porque o módulo procura automaticamente pelas funções necessárias e usa elas se disponíveis. Se não, nsapi_virtual() é desabilitada.

Limitações de tratamento de DLLs no Windows precisam da detecção automática do arquivo ns-httpdXX.dll mais recente. Isso é testado pelos servidores até a versão 6.1. Se uma versão mais nova do servidor Sun é usado, a detecção falha e nsapi_virtual() é desabilitada.

Se esse for o caso, tente o seguinte: Adicione o seguinte parâmetro para php4_init em magnus.conf/obj.conf:

Init fn=php4_init ... server_lib="ns-httpdXX.dll"
onde XX é o número de versão correto da DLL. Para obter esse valor, procure na pasta raiz do servidor para o nome correto da DLL. A DLL com o maior tamanho é a certa.

Você pode verificar o status usando a função phpinfo().

Nota:

Mas esteja avisado: O suporte para nsapi_virtual() é EXPERIMENTAL!!!

Apache 2.0.x no Microsoft Windows
Servidor OmniHTTPd
Instalação em sistemas Windows


Servidor OmniHTTPd

Essa seção contem notas e dicas específicas para o » OmniHTTPd no Windows.

Nota:

Você deve ler os passos de instalação do manual antes!

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

Você precisa completar os passos a seguir para fazer o PHP funcionar com OmniHTTPd. A instalação descrita a seguir é para o executável CGI. OmniHTTPd tem suporte à SAPI, mas alguns testes mostraram que não é estável usar o PHP como módulo ISAPI.

Nota: Importante para usuários CGI

Leia o faq sobre cgi.force_redirect para detalhes importantes. Essa diretiva precisa ter o valor 0.

  1. Instale o servidor OmniHTTPd.

  2. Clique com o botão direito no ícone azul do OmniHTTPd na barra do sistema e selecione Propriedades (Properties)

  3. Clique em Configurações Globais do Servidor Web (Web Server Global Settings)

  4. Na tab 'External', entre: virtual = .php | actual = c:\php\php.exe (use php-cgi.exe se você estiver instalando o PHP 5), e use o botão Adicionar (Add).

  5. Na tab Mime, entre: virtual = wwwserver/stdcgi | actual = .php, e use o botão Adicionar (Add).

  6. Clique em OK

Repita os passos 2 - 6 para cada extensão que você quiser associar com o PHP.

Nota:

Alguns pacotes OmniHTTPd vem com suporte embutido ao PHP. Você pode escolher durante a instalação fazer uma configuração personalizada, e selecionar o componente PHP. Nós recomendamos que você use a versão mais nova dos binários do PHP. Alguns servidores OmniHTTPd vem com o PHP 4 beta, então você deve escolher não instalar o suporte embutido, mas instalar por conta própria. Se o servidor já estiver na sua máquina, use o botão Substituir (Replace) nos passos 4 e 5 para configurar a informação nova e correta.

Servidores Sun, iPlanet e Netscape no Microsoft Windows
Servidor Sambar no Microsoft Windows
Instalação em sistemas Windows


Servidor Sambar no Microsoft Windows

Essa seção contem notas e dicas específicas para o » Sambar Server para Windows.

Nota:

Você deve ler os passos de instalação do manual antes!

Essa lista descreve como instalar o módulo ISAPI para que funcione com o servidor Sambar no Windows.

  • Ache o arquivo chamado mappings.ini (no diretório de configuração) no diretório de instalação dp Sambar.

  • Abra o arquivo mappings.ini e adicione a seguinte linha sob [ISAPI]:

    Exemplo #1 Configuração ISAPI do Sambar

    #para o PHP 4
*.php = c:\php\php4isapi.dll

#para o PHP 5
*.php = c:\php\php5isapi.dll
    (Essa linha presume que o PHP foi instalado em c:\php.)

  • Agora reinicie o servidor Sambar para que as mudanças tenha efeito.

Nota:

Se você deseja usar o PHP para se comunicar com recursos que estão guardados em um computador diferente em sua rede, então você precisará alterar a conta de usuário usada pelo Sambar Server Service. A conta padrão usada pelo Sambar Server Service é LocalSystem, que não tem acesso a recursos remotos. A conta pode ser modifica usando a opção Serviços (Services) dentro do das Ferramentas Administrativas (Administation Tools) do Painel de Controle (Control Panel) do Windows.

Servidor OmniHTTPd
Xitami no Microsoft Windows
Instalação em sistemas Windows


Xitami no Microsoft Windows

Essa seção contem notas e dicas específicas para o » Xitami no Windows.

Nota:

Você deve ler os passos de instalação manual primeiro!

Essa lista descreve como configura o binário CGI do PHP para funcionar com Xitami no Windows.

Nota: Importante para usuários que instalaram o CGI

Leia o faq sobre cgi.force_redirect para detalhes importantes. Essa diretiva precisa ser editada para 0. Se você quiser usar $_SERVER['PHP_SELF'] você tem que habilitar a diretiva cgi.fix_pathinfo.

Aviso

Um servidor dispoto em modo CGI está aberto para várias vulnerabilidades possíveis. Por favor, leia nossa seção de segurança CGI para aprender em como se defender de tais ataques.

  • Assegure-se que o servidor web está rodando e aponte o seu browser para o console de administração do Xitami (normalmente http://127.0.0.1/admin), e clique em Configuração (Configuration).

  • Navegue para os Filtros (Filters), e ponha a extensão que o PHP deve avaliar (ex.: .php) no campo extensões de Arquivo (.xxx).

  • No comando ou script Filtro (Filter) ponha o caminho e o nome do seu executável CGI, ex.: C:\php\php.exe para o PHP 4, ou C:\php\php-cgi.exe para o PHP 5.

  • Pressione o ícone Salvar (Save).

  • Reinicie o servidor para as mudanças terem efeito.

Servidor Sambar no Microsoft Windows
Compilando a partir dos fontes
Instalação em sistemas Windows


Compilando a partir dos fontes

Esse capítulo ensina como compilar PHP a partir dos fontes no Windows, usando as ferramentas da Microsoft. Para compilar o PHP com cygwin, veja o Instalação em sistemas Unix.

Quick Guide to Building On Windows

Este rápido guia passo-a-passo foi escrito em Março de 2008, executado no Windows XP Service Pack 2 com todos as últimas atualizações e compilando o PHP versões 5.2.5 e 5.3. Sua experiência pode ser diferente se utilizar outras ferramentas

  1. Baixar e instalar:

    • » Microsoft Visual C++ 2008 Express Edition
    • » Windows SDK for Windows Server 2008 and .NET Framework 3.5
  2. Copie C:\Arquivos de Programas\Microsoft SDKs\Windows\v6.1\Include\WinResrc.h para C:\Arquivos de Programas\Microsoft SDKs\Windows\v6.1\Include\winres.h.
  3. Crie o diretório C:\work.
  4. Baixe » as ferramentas de compilação do Windows e descompacte o conteúdo em C:\work.
  5. Crie o diretório C:\usr\local\lib. Copie C:\work\win32build\bin\bison.simple para o novo diretório.
  6. Baixe » a biblioteca de resolução de DNS do Windows e descompacte o conteúdo em C:\work.
  7. Abra o arquivo C:\work\bindlib_w32\bindlib.dsw. Se e quando perguntao se deseja atualizar o projeto, escolha Sim (Yes). Escolha a configuração Release ou Debug na barra superior, então escolha Compilar (Build) => Compilar Solução (Build Solution).
  8. Obtenha uma cópia dos fontes do PHP e extraia para o diretório C:\work. A essa altura, o diretório deverá estar parecido com isso:
    +-C:\work
| +-bindlib_w32
| | +-Debug
| | | +-resolv.lib
| | | +-...
| | +-...
| +-win32build
| | +-bin
| | +-include
| | +-lib
| +-php-5.2.5
| | +-build
| | +-win32
| | +-...
  9. Abra um shell utilizando o atalho no menu iniciar para o Visual Studio 2008 Command Prompt.
  10. Execute o comando:
    C:\Arquivos de Programas\Microsoft Visual Studio 9.0\VC> set "PATH=C:\work\win32build\bin;%PATH%"
C:\Arquivos de Programas\Microsoft Visual Studio 9.0\VC>
  11. Entre no diretório C:\work\php-5.2.5.
  12. Execute cscript /nologo win32\build\buildconf.js.
  13. Execute cscript /nologo configure.js --disable-all --enable-cli --enable-cgi --enable-object-out-dir=.. --disable-ipv6. Para habilitar depuração (debug), adicione --enable-debug no final do comando.
  14. Execute nmake.
  15. Se tudo ocorreu bem, deverá existir um executável CLI do PHP em C:\work\Debug_TS\php.exe, ou C:\work\Release_TS\php.exe.

Ambiente de compilação

Para compilar e montar o PHP, você precisa de um Microsoft Development Environment. Os seguintes ambientes são suportados:

  • Microsoft Visual C++ 6.0 (official)
  • Microsoft Visual C++ .NET
  • Microsoft Visual C++ 2005, Windows Platform SDK e .NET Framework SDK (atual)

Embora VC6 (Microsoft Visual C++ 6.0) seja usado para executar oficiais compilações do Windows, ele não pode ser obtido do site da Microsoft. Novos usuários procurando compilar o PHP precisa usar Microsoft Visual C++ 2005 Express Edition e seus componentes auxiliares.

Configurando o Microsoft Visual C++ 2005 Express

Nota: Combinado, estes componentes são muito extenso e requisitará um gigabyte de espaço de disco.

Configurando o Microsoft Visual C++ 2005 Express é melhor contido, e requer a instalação de três pacotes separados e várias mudanças de compatibilidades. Mantenha uma lista de caminhos no qual estes programas estão sendo instalados. Faça download e instale os seguintes programas:

  • » Microsoft Visual C++ 2005 Express
  • » Microsoft Windows Server 2005 Platform SDK
  • » .NET Framework 2.0 Software Development Kit

Há vários passos pós-instalação:

  • » MSVC 2005 Express precisa ser configurado para usar Windows Platform SDK. Ele não é necessário para executar o segundo passo, como PHP não usa interface gráfica de usuário.
  • Windows Platform SDK contém um arquivo chamado WinResrc.h normalmente na pasta Include dentro do diretório de instalação do SDK. Este necessita ser copiado e renomeado para winres.h, o nome que o PHP usa para o arquivo.

Finalmente, quando usando MSVC 2005 Express na linha de comando, várias variáveis de ambiente precisam ser definidas. vsvars32.bat normalmente encontradas em C:\Program Files\Microsoft Visual Studio 8\Common7\Tools (pesquise pelo arquivo caso contrário) contém estas declarações. As variáveis de ambiente PATH, INCLUDE e LIB precisam corresponder aos diretórios bin, include e lib dos dois recentes instalados SDK adicionado para eles.

Nota: O caminho do .NET SDK pode já estar presente no arquivo vsvars32.bat, como esta instalação do próprio SDK no mesmo diretório que o Microsoft Visual C++ 2005 Express.

Bibliotecas

Para extrair os arquivos baixados, você precisará de uma ferramenta que descompacte arquivos ZIP. O Windows XP e os mais novos já incluem essa funcionalidade embutida.

Antes de você começar, você tem que baixar:

  • win32 buildtools do site do PHP em » http://www.php.net/extra/win32build.zip.
  • o código-fonte para o DNS name resolver usado pelo PHP em » http://www.php.net/extra/bindlib_w32.zip. Esse é um substituto para a biblioteca resolv.lib inclusa no arquivo win32build.zip.
  • Se você planeja compilar o PHP como um módulo do Apache você também precisará dos » fontes do Apache.

Finalmente, você precisará dos fontes do PHP. Você pode pegar a verão mais recente de desenvolvimento usando » login anônimo ao CVS, um » snapshot ou o release mais novo dos » fontes.

Juntanto tudo

Depois de baixar os pacotes necessários, você tem que extrair eles em um lugar apropriado.

  • Crie um diretório de trabalho onde todos os arquivos serão extraídos, ex.: C:\work.
  • Crie o diretório win32build nesse diretório de trabalho (C:\work) e descompate o arquivo win32build.zip nele.
  • Crie o diretório bindlib_w32 nesse diretório de trabalho (C:\work) e descompate o arquivo bindlib_w32.zip nele.
  • Extraia o código fonte do PHP no diretório de trabalho (C:\work).
  • Compile as biblioteca que você precisará (ou baixe os binários se estiverem disponíveis) e coloque os cabeçalhos e bibliotecas no diretório C:\work\win32build\include e C:\work\win32build\lib, respectivamente.
  • Se você não tem o cygwin instalado com o bison e flex, você precisará também fazer o diretório C:\work\win32build\bin disponível no PATH, assim estas ferramentas podem ser encontradas pelo script configure.
Seguindo esses passos a sua estrutura de diretório parecerá com isso:
+--C:\work
|  |
|  +--bindlib_w32
|  |  |
|  |  +--arpa
|  |  |
|  |  +--conf
|  |  |
|  |  +--...
|  |
|  +--php-5.x.x
|  |  |
|  |  +--build
|  |  |
|  |  +--...
|  |  |
|  |  +--win32
|  |  |
|  |  +--...
|  |
|  +--win32build
|  |  |
|  |  +--bin
|  |  |
|  |  +--include
|  |  |
|  |  +--lib

Se você não estiver usando o » Cygwin, você também deve criar os diretórios C:\usr\local\lib e então copie o arquivo bison.simple de C:\work\win32build\bin para C:\usr\local\lib.

Nota: Se você quiser usar o PEAR e o conviniente instalador em linha de comando, o CLI-SAPI é necessário. Para mais informação sobre PEAR e o instalador leia a documentação no web site do » PEAR.

Compilando resolv.lib

Você deve compilar a biblioteca resolv.lib. Decida se você quer ter símbolos de depuração disponíveis (bindlib - Win32 Debug) ou não (bindlib - Win32 Release), mas por favor, lembre-se da escolha que você fará, por que a biblioteca com os símbolos só montará com o PHP se o mesmo for montado em modo de depuração. Monte a configuração apropriada:

  • Para usuários de GUI, execute VC++, clicando duas-vezes em C:\work\bindlib_w32\bindlib.dsw. Então selecione Build=>Rebuild All.
  • Para usuários de linha de comando, assegure-se que as variáveis de ambiente do C++ estão registradas, ou execute vcvars.bat, e então execute um dos seguintes comandos:
    • msdev bindlib.dsp /MAKE "bindlib - Win32 Debug"
    • msdev bindlib.dsp /MAKE "bindlib - Win32 Release"
Nesse ponto, você deve ter uma resolv.lib utilizável ou nos sub-diretórios C:\work\bindlib_w32\Debug ou Release. Copie esse arquivo para o diretório C:\work\win32build\lib, sobrescrevendo o arquivo de mesmo nome nesse diretório.

Montando o PHP usando no novo sistema de montagem [Apenas PHP >=5]

Esse capítulo explica como compilar o PHP >=5 usando o novo sistema de montagem, que é baseado em CLI e muito similar com o sistema de montagem principal do PHP no Unix.

Nota:

Esse sistema de montagem não está disponível no PHP 4. Favor, ler Building PHP using DSW files [PHP 4] se for o seu caso.

Antes de começar, assegure-se de let Juntanto tudo e que você compilou todas as bibliotecas necessárias, como » Libxml ou » ICU (necessária para o PHP >= 6).

Primeiro, você deve abrir um Prompt de Comando do Visual Strudio, que pode estar disponível no Menu Iniciar (Start Menu). Um Prompt de Comando comum não deve funcionar, uma vez que provavelmente as variáveis de ambiente necessárias não estão configuradas. Então digite algo como cd C:\work\php-5.x.x para entrar no diretório dos fontes do PHP. Agora se prepare para começar a configurar o PHP.

O segundo passo é executar o arquivo de lote buildconf para criar o script configure, procurando o diretório por arquivos config.w32. Via de regra, esse comando também procurará nos seguintes diretórios: pecl; ..\pecl; pecl\rpc; ..\pecl\rpc. A partir do PHP 5.1.0, vodê pode alterar esse comportamento usando o argumento --add-modules-dir (ex.: cscript /nologo win32/build/buildconf.js --add-modules-dir=../php-gtk2 --add-modules-dir=../pecl).

O terceiro passo é configurar. Para ver a lista de opções de configuração disponíveis, digite cscript /nologo configure.js --help. Depois de escolher as opções que você irá habilitar/desabilitar, digite algo como cscript /nologo configure.js --disable-foo --enable-fun-ext. Usar --enable-foo=shared tentará construir a extensão 'foo' como um módulo compartilhado, carregado dinâmicamente.

O último passo é compilar. Para isso, basta executar o comandocommand nmake. Os arquivos gerados (e.g. .exe e .dll) serão colocado ou nos diretórios Release_TS our Debug_TS (se compilado com Thread safety), ou no diretórios Release ou Debug caso contrário.

É opcional, mas você também pode executar os aplicativos de teste do PHP, executando nmake test. Se você quiser rodar apenas um teste específico, você pode user a variável 'TESTS' (ex.: nmake /D TESTS=ext/sqlite/tests test - só executará testes no sqlite). Para apagar esses arquivos que foram criados durante a compilação, você pode usar o comando nmake clean.

Uma opção de configuração muito útil para montar snapshots é --enable-snapshot-build, que adiciona un novo modo de compilação (nmake build-snap). Isso tenta montar cada extensão disponível (como compartilhada, por padrão), mas ignorará erros de montagem em extensões individuais ou SAPI.

Building PHP using DSW files [PHP 4]

Compilar o PHP usando os arquivos DSW não é suportado a partir do PHP5, já que um sistema mais flexível está disponível. De qualquer forma, você ainda pode usá-los, mas tenha em mente que ele não são testados freqüentemente, então você pode ter problemas de compilação. Para compilar o PHP 4 para Windows, no entanto, essa é a única opção disponível.

Configure MVC ++

O próximo passo é configurar o MVC ++ para prepará-lo para compilar. Rode o Microsoft Visual C++, e do menu selecione Tools => Options. No diálogo que aparecerá, selecione o tab de diretórios. Depois, mude o dropdown para arquivos Executables, Includes, e Library. Suas configurações devem parecer com isso:

  • Arquivos executáveis: C:\work\win32build\bin, Usuários do Cygwin: C:\cygwin\bin
  • Arquivos inclusos: C:\work\win32build\include
  • Arquivos de Bibliotecas: C:\work\win32build\lib

Compilando

A melhor maneira de começar é compilando a versão CGI:

  • Para usuários de GUI, execute VC++, e selecione File => Open Workspace e selecione c:\work\php-4.x.x\win32\php4ts.dsw. Depois vá em Build=>Set Active Configuration e selecione a configuração desejada, ou php4ts - Win32 Debug_TS ou php4ts - Win32 Release_TS. Finalmente, selecione Build=>Rebuild All.
  • Para usuários de linha de comenado, assegure-se que você ou registrou as variáveis de ambiente do C++, ou executou vcvars.bat, e então execute um dos seguintes comando no diretório c:\work\php-4.x.x\win32:
    • msdev php4ts.dsp /MAKE "php4ts - Win32 Debug_TS"
    • msdev php4ts.dsp /MAKE "php4ts - Win32 Release_TS"
    • Nesse ponto, você deve ter um arquivo php.exe usável ou no subdiretório c:\work\php-4.x.x.\Debug_TS ou em Release_TS.

É possível fazer algumas personalizações mínimas para o processo de compilação editando o arquivo main/config.win32.h. Por exemplo, você pode muda a localização padrão do arquivo php.ini, as extensões integradas, e a localização padrão para suas extensões.

Depois, você pode querer montar a versão CLI que é feita para usar o PHP da linha de comando. Os passos são o mesmos para compilar a versão CGI, exceto que você tem que selecionar o arquivo de projeto php4ts_cli - Win32 Debug_TS ou php4ts_cli - Win32 Release_TS. Depois de uma compilação sucedida você encontrará o arquivo php.exe ou no diretório Release_TS\cli\ ou Debug_TS\cli\.

Para montar o módulo SAPI (php4isapi.dll) para integrar o PHP com o Microsoft IIS, modifique o seu arquivo de configuração para php4isapi-whatever-config e construa a dll desejada.

Xitami no Microsoft Windows
Instalação de extensões no Windows
Instalação em sistemas Windows


Instalação de extensões no Windows

Depois de instalar o PHP e um servidor web no Windows, você provavelmente desejará instalar algumas extensões para ter funcionalidades extras. Você pode escolher quais extensões você quer que o PHP carregue quando é iniciado modificando o arquivo php.ini. Você também pode carregar um módulo dinamicamente no seu script usando dl().

Os DLLs para extensões do PHP são prefixadas com php_.

Many extensions are built into the Windows version of PHP. This means additional DLL files, and the extension directive, are not used to load these extensions. The Windows PHP Extensions table lists extensions that require, or used to require, additional PHP DLL files. Here's a list of built in extensions:

No PHP 4 (atualizado PHP 4.3.11): BCMath, Caledar, COM, Ctype, FTP, MySQL, ODBC, Overload, PCRE, Session, Tokenizer, WDDX, XML e Zlib

No PHP 5 (atualizado PHP 5.0.4), as seguintes mudanças existem. Embutido: DOM, LibXML, Iconv, SimpleXML, SPL e SQLite. E os seguintes não são mais embutidos: MySQL e Overload.

A localização padrão que o PHP procura por extensões é C:\php4\extensions no PHP 4 e C:\php5 no PHP 5. Para mudar esta configuração para refletir sua instalação do PHP, edite o arquivo php.ini:

  • Você precisará mudar a configuração extension_dirpara apontar o diretório onde suas extensões estão guardadas, ou onde você colocou os arquivos php_*.dll. Por exemplo:

    extension_dir = C:\php\extensions

  • Habilite as extensão(ões) no arquivo php.ini que você quiser descomentando as linhas extension=php_*.dll. Isso é feito removendo o ; na antes da linha com a extensão que você quer carregar.

    Exemplo #1 Habilitar a extensão Bzip2 para o PHP-Windows

    // Mude a seguinte linha de ...
;extension=php_bz2.dll

// ... para
extension=php_bz2.dll

  • Algumas das extensões precisam de DLLs extras para funcionarem. Algumas delas podem ser encontradas no pacote da distribuição, na pasta C:\php\dlls\ no PHP 4 ou na pasta principal no PHP 5, mas algumas, por exemplo o Oracle (php_oci8.dll) requerem DLLs que não estão agregadas ao pacote da distribuição. Se você estiver instalando o PHP 4, copie as DLLs agregadas da pasta C:\php\dlls para a pasta principal C:\php. Não se esqueça de incluir C:\php na variável de ambiente PATH (esse processo é explicado em outra página, nesse FAQ).

  • Algumas destas dlls não sao embutidas com a distribuição do PHP. Veja a documentação de cada extensão para maiores detalhes. Também leia o manual na sessão entitulada Instalação de extensões PECL para detalhes sobre PECL. Um crestente número de extensões para o PHP são encontradas no PECL, e estas extensões precisam de um download separado.

Nota: Se você estiver executando a versão de módulo do servidor do PHP lembre de reiniciar o servidor web para que as mudanças no arquivo php.ini sejam efetivadas.

A tabela a seguir descreve algumas das extensões disponíveis e requer dlls adicionais.

Extensões do PHP
Extensão | Descrição | Notas
php_bz2.dll | Funções de Compressão de bzip2 | Nenhuma
php_calendar.dll | Funções de Conversão de Calendar | Integrado desde o PHP 4.0.3
php_crack.dll | Funções de Crack | Nenhuma
php_ctype.dll | Família de Funções ctype | Integrado desde o PHP 4.3.0
php_curl.dll | Biblioteca de Funções de Cliente URL - CURL | Requer: libeay32.dll, ssleay32.dll (agregado)
php_dba.dll | Camada de Funções de Abstração de Banco de Dados DBA | Nenhuma
php_dbase.dll | Funções de dBase | Nenhuma
php_dbx.dll | Funções dbx |
php_domxml.dll | Funções DOM XML | PHP <= 4.2.0 requer: libxml2.dll (agregado) PHP >= 4.3.0 requer: iconv.dll (agregado)
php_dotnet.dll | Funções .NET | PHP <= 4.1.1
php_exif.dll | Funções EXIF | php_mbstring.dll. e, php_exif.dll devem ser carregados depois de php_mbstring.dll no arquivo php.ini.
php_fbsql.dll | Funções FrontBase | PHP <= 4.2.0
php_fdf.dll | Funções de Formato de Dados de Formulários (Forms Data Format) FDF. | Requer: fdftk.dll (agregado)
php_filepro.dll | Funções de filePro | Acesso apenas de Leitura
php_ftp.dll | Funções de FTP | Integrado desde o PHP 4.0.3
php_gd.dll | Funções da biblioteca de imagens GD | Removido no PHP 4.3.2. Note também que funções truecolor functions não estão disponíveis no GD1, ao invés, use php_gd2.dll.
php_gd2.dll | Funções da biblioteca de imagens GD | GD2
php_gettext.dll | Funções de Gettext | PHP <= 4.2.0 requer gnu_gettext.dll (agregado), PHP >= 4.2.3 requer libintl-1.dll, iconv.dll (agregado).
php_hyperwave.dll | Funções de HyperWave | Nenhuma
php_iconv.dll | Conversão de tabela de caracteres ICONV | Requer: iconv-1.3.dll (agregado), PHP >=4.2.1 iconv.dll
php_ifx.dll | Funções de Informix | Requer: Informix libraries
php_iisfunc.dll | Funções de manuseio de IIS | Nenhuma
php_imap.dll | Funções de IMAP POP3 e NNTP | Nenhuma
php_ingres.dll | Funções de Ingres II | Requer: Ingres II libraries
php_interbase.dll | Funções de InterBase | Requer: gds32.dll (agregado)
php_java.dll | Funções de Java | PHP <= 4.0.6 requer: jvm.dll (agregado)
php_ldap.dll | Funções de LDAP | PHP <= 4.2.0 requer libsasl.dll (agregado), PHP >= 4.3.0 requer libeay32.dll, ssleay32.dll (agregado)
php_mbstring.dll | Funções de Multi-Byte String | Nenhuma
php_mcrypt.dll | Funções de Mcrypt Encryption | Requer: libmcrypt.dll
php_mhash.dll | Funções de Mhash | PHP >= 4.3.0 requer: libmhash.dll (agregado)
php_mime_magic.dll | Funções de Mimetype | Requer: magic.mime (agregado)
php_ming.dll | Funções de Ming para Flash | Nenhuma
php_msql.dll | Funções de mSQL | Requer: msql.dll (agregado)
php_mssql.dll | Funções de MSSQL | Requer: ntwdblib.dll (agregado)
php_mysql.dll | Funções de MySQL | PHP >= 5.0.0, requer libmysql.dll (agregado)
php_mysqli.dll | Funções de MySQLi | PHP >= 5.0.0, requer libmysql.dll (libmysqli.dll in PHP <= 5.0.2) (agregado)
php_oci8.dll | Funções de Oracle 8 | Requer: Oracle 8.1+ client libraries
php_openssl.dll | Funções de OpenSSL | Requer: libeay32.dll (agregado)
php_overload.dll | Funções de sobrecarga de objetos | Integrado desde o PHP 4.3.0
php_pdf.dll | Funções de PDF | Nenhuma
php_pgsql.dll | Funções de PostgreSQL | Nenhuma
php_printer.dll | Funções de Impressora | Nenhuma
php_shmop.dll | Funções de Memória Compartilhada | Nenhuma
php_snmp.dll | Funções de get and walk de SNMP | Apenas no NT!
php_soap.dll | Funções de SOAP | PHP >= 5.0.0
php_sockets.dll | Funções de Socket | Nenhuma
php_sybase_ct.dll | Funções de Sybase | Requer: bibliotecas de cliente do Sybase
php_tidy.dll | Funções de Tidy | PHP >= 5.0.0
php_tokenizer.dll | Funções de Tokenizer | Integrado desde o PHP 4.3.0
php_w32api.dll | Funções de W32api | Nenhuma
php_xmlrpc.dll | Funções de XML-RPC | PHP >= 4.2.1 requer: iconv.dll (agregado)
php_xslt.dll | Funções de XSLT | PHP <= 4.2.0 requer sablot.dll, expat.dll (agregado). PHP >= 4.2.1 requer sablot.dll, expat.dll, iconv.dll (agregado).
php_yaz.dll | Funções do YAZ | Requer: yaz.dll (agregado)
php_zip.dll | Funções para Arquivos Zip | Acesso apenas de leitura
php_zlib.dll | Funções de compressão de ZLib | Integrado desde o PHP 4.3.0

Compilando a partir dos fontes
Command Line PHP on Microsoft Windows
Instalação em sistemas Windows


Command Line PHP on Microsoft Windows

This section contains notes and hints specific to getting PHP running from the command line for Windows.

Nota:

You should read the manual installation steps first!

Getting PHP to run from the command line can be performed without making any changes to Windows.

C:\PHP5\php.exe -f "C:\PHP Scripts\script.php" -- -arg1 -arg2 -arg3

But there are some easy steps that can be followed to make this simpler. Some of these steps should already have been taken, but are repeated here to be able to provide a complete step-by-step sequence.

  • Add the location of the PHP executable (php.exe, php-win.exe or php-cli.exe depending upon your PHP version and display preferences) to the PATH environment variable. Read more about how to add your PHP directory to PATH in the corresponding FAQ entry.

  • Add the .PHP extension to the PATHEXT environment variable. This can be done at the same time as amending the PATH environment variable. Follow the same steps as described in the FAQ but amend the PATHEXT environment variable rather than the PATH environment variable.

    Nota:

    The position in which you place the .PHP will determine which script or program is executed when there are matching filenames. For example, placing .PHP before .BAT will cause your script to run, rather than the batch file, if there is a batch file with the same name.

  • Associate the .PHP extension with a file type. This is done by running the following command:

    assoc .php=phpfile

  • Associate the phpfile file type with the appropriate PHP executable. This is done by running the following command:

    ftype phpfile="C:\PHP5\php.exe" -f "%1" -- %~2

Following these steps will allow PHP scripts to be run from any directory without the need to type the PHP executable or the .PHP extension and all parameters will be supplied to the script for processing.

The example below details some of the registry changes that can be made manually.

Exemplo #1 Registry changes

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.php]
@="phpfile"
"Content Type"="application/php"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile]
@="PHP Script"
"EditFlags"=dword:00000000
"BrowserFlags"=dword:00000008
"AlwaysShowExt"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\DefaultIcon]
@="C:\\PHP5\\php-win.exe0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell]
@="Open"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell\Open]
@="&Open"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell\Open\command]
@="\"C:\\PHP5\\php.exe\" -f \"%1\" -- %~2"

With these changes the same command can be written as:

"C:\PHP Scripts\script" -arg1 -arg2 -arg3
or, if your "C:\PHP Scripts" path is in the PATH environment variable:
script -arg1 -arg2 -arg3

Nota:

There is a small problem if you intend to use this technique and use your PHP scripts as a command line filter, like the example below:

dir | "C:\PHP Scripts\script" -arg1 -arg2 -arg3
or
dir | script -arg1 -arg2 -arg3
You may find that the script simply hangs and nothing is output. To get this operational, you need to make another registry change.
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
"InheritConsoleHandles"=dword:00000001
Further information regarding this issue can be found in this » Microsoft Knowledgebase Article : 321788.

Instalação de extensões no Windows
FastCGI Process Manager (FPM)
Instalação em sistemas Windows


FastCGI Process Manager (FPM)

Índice

  • Installation
  • Configuration

FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation with some additional features (mostly) useful for heavy-loaded sites.

These features include:

  • advanced process management with graceful stop/start;

  • ability to start workers with different uid/gid/chroot/environment, listening on different ports and using different php.ini (replaces safe_mode);

  • stdout and stderr logging;

  • emergency restart in case of accidental opcode cache destruction;

  • accelerated upload support;

  • "slowlog" - logging scripts (not just their names, but their PHP backtraces too, using ptrace and similar things to read remote process' execute_data) that are executed unusually slow;

  • fastcgi_finish_request() - special function to finish request and flush all data while continuing to do something time-consuming (video converting, stats processing etc.);

  • dynamic/static child spawning;

  • basic SAPI status info (similar to Apache mod_status);

  • php.ini-based config file.

Command Line PHP on Microsoft Windows
Installation
Instalação e Configuração


Installation

Prerequisites

FPM uses libevent to manage connections and signals. Minimum required version is libevent-1.4.11.

Compiling from sources

In order to enable FPM in your PHP build you need to add --enable-fpm to your configure line.

There are several other FPM-specific configure options (all of them optional):

  • --with-fpm-user - set FPM user (default - nobody).

  • --with-fpm-group - set FPM group (default - nobody).

FastCGI Process Manager (FPM)
Configuration
FastCGI Process Manager (FPM)


Configuration

FPM uses php.ini syntax for its configuration file - php-fpm.conf.

List of global php-fpm.conf directives

pid string

Path to PID file. Default value: none.

error_log string

Path to error log file. Default value: #INSTALL_PREFIX#/log/php-fpm.log.

log_level string

Error log level. Possible values: alert, error, warning, notice, debug. Default value: notice.

emergency_restart_threshold int

If this number of child processes exit with SIGSEGV or SIGBUS within the time interval set by emergency_restart_interval then FPM will restart. A value of 0 means 'Off'. Default value: 0 (Off).

emergency_restart_interval mixed

Interval of time used by emergency_restart_interval to determine when a graceful restart will be initiated. This can be useful to work around accidental corruptions in an accelerator's shared memory. Available Units: s(econds), m(inutes), h(ours), or d(ays). Default Unit: seconds. Default value: 0 (Off).

process_control_timeout mixed

Time limit for child processes to wait for a reaction on signals from master. Available units: s(econds), m(inutes), h(ours), or d(ays) Default Unit: seconds. Default value: 0.

daemonize boolean

Send FPM to background. Set to 'no' to keep FPM in foreground for debugging. Default value: yes.

List of pool directives

With FPM you can run several pools of processes with different setting. These are settings that can be tweaked per pool.

listen string

The address on which to accept FastCGI requests. Valid syntaxes are: 'ip.add.re.ss:port', 'port', '/path/to/unix/socket'. This option is mandatory for each pool.

listen.backlog int

Set listen(2) backlog. A value of '-1' means unlimited. Default value: -1.

listen.allowed_clients string

List of ipv4 addresses of FastCGI clients which are allowed to connect. Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original PHP FastCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address must be separated by a comma. If this value is left blank, connections will be accepted from any ip address. Default value: any.

listen.owner string

Set permissions for unix socket, if one is used. In Linux, read/write permissions must be set in order to allow connections from a web server. Many BSD-derived systems allow connections regardless of permissions. Default values: user and group are set as the running user, mode is set to 0666.

listen.group string

See listen.owner.

listen.mode string

See listen.owner.

user string

Unix user of FPM processes. This option is mandatory.

group string

Unix group of FPM processes. If not set, the default user's group is used.

pm string

Choose how the process manager will control the number of child processes. Possible values: static, dynamic. This option is mandatory.

static - the number of child processes is fixed (pm.max_children).

dynamic - the number of child processes is set dynamically based on the following directives: pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.

pm.max_children int

The number of child processes to be created when pm is set to static and the maximum number of child processes to be created when pm is set to dynamic. This option is mandatory.

This option sets the limit on the number of simultaneous requests that will be served. Equivalent to the ApacheMaxClients directive with mpm_prefork and to the PHP_FCGI_CHILDREN environment variable in the original PHP FastCGI.

pm.start_servers in

The number of child processes created on startup. Used only when pm is set to dynamic. Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.

pm.min_spare_servers int

The desired minimum number of idle server processes. Used only when pm is set to dynamic. Also mandatory in this case.

pm.max_spare_servers int

The desired maximum number of idle server processes. Used only when pm is set to dynamic. Also mandatory in this case.

pm.max_requests int

The number of requests each child process should execute before respawning. This can be useful to work around memory leaks in 3rd party libraries. For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. Default value: 0.

pm.status_path string

The URI to view the FPM status page. If this value is not set, no URI will be recognized as a status page. Default value: none.

ping.path string

The ping URI to call the monitoring page of FPM. If this value is not set, no URI will be recognized as a ping page. This could be used to test from outside that FPM is alive and responding. Please note that the value must start with a leading slash (/).

ping.response string

This directive may be used to customize the response to a ping request. The response is formatted as text/plain with a 200 response code. Default value: pong.

request_terminate_timeout mixed

The timeout for serving a single request after which the worker process will be killed. This option should be used when the 'max_execution_time' ini option does not stop script execution for some reason. A value of '0' means 'Off'. Available units: s(econds)(default), m(inutes), h(ours), or d(ays). Default value: 0.

request_slowlog_timeout mixed

The timeout for serving a single request after which a PHP backtrace will be dumped to the 'slowlog' file. A value of '0' means 'Off'. Available units: s(econds)(default), m(inutes), h(ours), or d(ays). Default value: 0.

slowlog string

The log file for slow requests. Default value: #INSTALL_PREFIX#/log/php-fpm.log.slow.

rlimit_files int

Set open file descriptor rlimit. Default value: system defined value.

rlimit_core int

Set max core size rlimit. Possible Values: 'unlimited' or an integer greater or equal to 0. Default value: system defined value.

chroot string

Chroot to this directory at the start. This value must be defined as an absolute path. When this value is not set, chroot is not used.

chdir string

Chdir to this directory at the start. This value must be an absolute path. Default value: current directory or / when chroot.

catch_workers_output boolean

Redirect worker stdout and stderr into main error log. If not set, stdout and stderr will be redirected to /dev/null according to FastCGI specs. Default value: no.

It's possible to pass additional environment variables and update PHP settings of a ceratian pool. To do this, you need to add the following options to php-fpm.conf

Exemplo #1 Passing environment variables and PHP settings to a pool

env[HOSTNAME] = $HOSTNAME
       env[PATH] = /usr/local/bin:/usr/bin:/bin
       env[TMP] = /tmp
       env[TMPDIR] = /tmp
       env[TEMP] = /tmp

       php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
       php_flag[display_errors] = off
       php_admin_value[error_log] = /var/log/fpm-php.www.log
       php_admin_flag[log_errors] = on
       php_admin_value[memory_limit] = 32M
PHP settings passed with php_value or php_flag will overwrite their previous value. Please note that defining disable_functions or disable_classes will not overwrite previously defined php.ini values, but will append the new value instead.

Settings defined with php_admin_value and php_admin_flag cannot be overriden with ini_set().

Installation
Instalação das extensões PECL
FastCGI Process Manager (FPM)


Instalação das extensões PECL

Índice

  • Introdução para instalações PECL
  • Baixando extensões PECL
  • PECL para usuários Windows
  • Compilando extensões compartilhadas PECL com o comando pecl
  • Compilando extensões compartilhadas PECL com phpize
  • Compilando extensões PECL estaticamente no PHP
Configuration
Introdução para instalações PECL
Instalação e Configuração


Introdução para instalações PECL

» PECL é um repositório de extensões PHP que estão disponíveis à você pelo sistema de pacote » PEAR. Essa seção do manual é destinada para demonstrar como obter e instalar extensões PECL.

Essas instruções presumem que /your/phpsrcdir/ seja o caminho para o código-fonte do PHP, e extname é o nome da extensão PECL. Ajuste de acordo com suas necessidades. Essas instruções também presumem uma familiaridade com o » comando pear. A informação no manual do PEAR para o comando pear também se aplica ao comando pecl.

Para ser útil, uma extensão deve ser compilada, instalada e carregada. Os métodos descritos abaixo descrevem várias instruções de como compilar e instalar as extensões, mas elas não são carregadas automaticamente. Extensões pode ser carregadas adicionando uma diretiva extension no arquivo php.ini ou pelo uso da função dl().

Quando montar módulos do PHP, é importante ter as versões apropriadas das ferramentas requiridas (autoconf, automake, libtool, etc). Veja as » Instruções para leitura anônima do CVS para detalhes sobre as ferramentas e versões necessárias.

Instalação das extensões PECL
Baixando extensões PECL
Instalação das extensões PECL


Baixando extensões PECL

Existem várias opções para baixar extensões PECL, tais como:

  • » http://pecl.php.net/ O web site do PECL contém informação sobre as várias extensões que são disponibilizadas pelo Time de Desenvolvimento do PHP. As informações disponíveis aqui são: ChangeLog, informação de release, requerimentos e outros detalhes similares.
  • pecl download extname Extensões PECL que têm releases listadas no web-site do PECL estão disponíveis para download e instalação usando o » comando pecl. Revisões específicas também podem ser especificadas.
  • CVS A maioria das extensões PECL também residem no CVS. Um visualizado web pode ser acessado em » http://cvs.php.net/pecl/. Para baixar direto do CVS, a seguinte seqüência de comando pode ser usada. Perceba que phpfi é a senha para o usuário cvsread:

    $ cvs -d:pserver:cvsread@cvs.php.net:/repository login
    $ cvs -d:pserver:cvsread@cvs.php.net:/repository co pecl/extname

  • Downloads do Windows Usuários do Windows podem encontrar binários compilados das extensões PECL baixando a Coleção de módulos PECL da página de » Downloads do PHP, e baixando um » Snapshot do PECL ou uma extensão DLL em » PECL4WIN. Para compilar o PHP no Windows, leia o capítulo apropriado.
Introdução para instalações PECL
PECL para usuários Windows
Instalação das extensões PECL


PECL para usuários Windows

Como qualquer outra extensão DLL do PHP, mova as DLLs das extensões no diretório extension_dir e inclua elas no arquivo php.ini. Por exemplo:

extension=php_extname.dll

Depois disso, reinicie o servidor web.

Baixando extensões PECL
Compilando extensões compartilhadas PECL com o comando pecl
Instalação das extensões PECL


Compilando extensões compartilhadas PECL com o comando pecl

PECL torna fácil criar extensões compartilhadas do PHP. Usando o » comando pecl, faça o seguinte:

$ pecl install extname

Isso baixará o código-fonte de extname, compilará e instalará extname.so no seu extension_dir. extname.so pode, então, ser carregado no arquivo php.ini

Por padrão, o comando pecl não instalará pacotes que estão marcados como alpha ou beta. Se nenhum pacote estável estiver disponível, você pode instalar um pacote beta usando o seguinte comando:

$ pecl install extname-beta

Você também pode instalar uma versão específica, usando essa forma:

$ pecl install extname-0.1

Nota:

Depois de habilitada a extensão no php.ini, reiniciar o servidor web é requerido para as modificações funcionarem.

PECL para usuários Windows
Compilando extensões compartilhadas PECL com phpize
Instalação das extensões PECL


Compilando extensões compartilhadas PECL com phpize

Algumas vezes, usar o instalador pecl não é uma opção. Isso pode acontecer se você estiver atrás de um firewall, ou porque a extensão que você quer instalar não está disponível como um pacote compatível com PECL, por exemplo, extensões ainda sem release no CVS. Se você precisar compilar tal extensão, você pode usar as ferramentas de compilação de baixo nível para realizar a compilação manualmente.

O comando phpize é usado para preparar o ambiente de compilação para uma extensão do PHP. No exemplo seguinte, os fontes para uma extensão estão em um diretório com nome extname:

$ cd extname
$ phpize
$ ./configure
$ make
# make install

Uma instalação bem sucedida criará um arquivo extname.so e o colocará no diretório de extensões do PHP. Você precisará ajustar o arquivo php.ini e acidionar uma linha extension=extname.so antes de usar a extensão.

Se o sistema não tiver o comando phpize, e pacotes pré-compilados são usados (como RPM's), certifique-se de instalar a versão devel apropriada do pacote do PHP, uma vez que eles freqüentemente contém o comando phpize assim como os arquivos de cabeçalho para compilar o PHP e suas extensões.

Execute phpize --help para mostra informações de uso adicionais.

Compilando extensões compartilhadas PECL com o comando pecl
Compilando extensões PECL estaticamente no PHP
Instalação das extensões PECL


Compilando extensões PECL estaticamente no PHP

Você pode decidir que precisa montar uma extensão PECL estaticamente no seu binário do PHP. Para isso, você precisará colocar os fontes da extensão no diretório php-src/ext/ e dizer para o sistema de montagem do PHP para regenerar o script configure.

$ cd /your/phpsrcdir/ext
$ pecl download extname
$ gzip -d < extname.tgz | tar -xvf -
$ mv extname-x.x.x extname

Isso resultará no seguinte diretório:

/your/phpsrcdir/ext/extname

Daqui, faça o PHP reconstruir o script configure e monte o PHP normalmente:

$ cd /your/phpsrcdir
$ rm configure
$ ./buildconf --force
$ ./configure --help
$ ./configure --with-extname --enable-someotherext --with-foobar
$ make
$ make install

Nota: Para executar o script 'buildconf' você precisa de autoconf 2.13 e automake 1.4+ (versões mais novas do autoconf podem funcionar, mas não são suportadas).

Se --enable-extname ou --with-extname são usadas depende da extensão. Tipicamente, uma extensão que não requer bibliotecas externa usa --enable. Para ter certeza, rode o seguinte comando após buildconf:

$ ./configure --help | grep extname

Compilando extensões compartilhadas PECL com phpize
Problemas?
Instalação das extensões PECL


Problemas?

Índice

  • Leia o FAQ
  • Outros problemas
  • Relatos de Bug
Compilando extensões PECL estaticamente no PHP
Leia o FAQ
Instalação e Configuração


Leia o FAQ

Alguns problemas são mais comuns que outros. Os mais comuns estão listados no FAQ do PHP, parte desse manual.

Problemas?
Outros problemas
Problemas?


Outros problemas

Se você ainda estiver sem solução, alguém na lista de e-mail de instalação do PHP pode te ajudar. Você deve checar o histórico de mensagens antes, no caso de alguém já ter respondido outra pessoa que tenha tido o mesmo problema que você. Os históricos estão disponíveis na página de suporta em » http://www.php.net/support.php. Para se inscrever na lista de e-mail de instalação do PHP, envie um e-mail vazio para » php-install-subscribe@lists.php.net. O endereço da lista de e-mail é » php-install@lists.php.net.

Se você quiser pedir ajuda na lista de e-mail, por favor, tente ser preciso e dar os detalhes necessários sobre seu ambiente (qual sistema operacional, que versão do PHP, qual servidor web, se você está executando PHP com CGI ou módulo de servidor, safe mode, etc...), e, de preferência, código suficiente para permitir que outros reproduzam e testem seu problema.

Leia o FAQ
Relatos de Bug
Problemas?


Relatos de Bug

Se você acha que encontrou um bug (falha) no PHP, por favor, relate. Os desenvolvedores do PHP provavelmente não sabem sobre ele, e, a não ser que você o relate, provavelmente ele não será reparado. Você pode relatar bugs usando o sistema de caça-bugs em » http://bugs.php.net/. Por favor, não mande relatos de bug nas listas de e-mail ou e-mails pessoais. O sistema de bugs também é adequado para o envio de requisição de características (features).

Leia o documento » Como relatar um bug antes de enviar qualquer relato de bug!

Outros problemas
Configuração em tempo de execução
Problemas?


Configuração em tempo de execução

Índice

  • O arquivo de configuração
  • Aonde uma configuração deve ser definida
  • Como mudar as configurações
Relatos de Bug
O arquivo de configuração
Instalação e Configuração


O arquivo de configuração

O arquivo de configuração (php.ini) é lido quando o PHP inicia. Para as versões de módulo de servidor, isso acontece apenas quando o servidor web for inicializado. Para as versões CGI e CLI, isso acontece à cada invocação.

php.ini é procurado nesses lugares (na ordem):

  • Local específico do módulo SAPI (diretiva PHPIniDir no Apache 2, -c opção de linha de comando quando CGI e CLI, parâmetro php_ini no NSAPI, variável de ambiente PHP_INI_PATH no THTTPD)

  • A variável de ambiênte PHPRC. Antes do PHP 5.2.0 isto era conferido depois da chave de registro mencionada abaixo.

  • A partir do PHP 5.2.0, a localização do arquivo php.ini pode ser definida para versões diferentes do PHP. As seguintes chaves do registro são examinadas na ordem: [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z], [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y] e [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x], aonde x, y e z significam a versão maior, menor e release do PHP. Se houver um valor para IniFilePath nestas chaves, então o primeiro encontrado será utilizado para a localização do php.ini (apenas Windows).

  • HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath (Local no registro do Windows)

  • Diretório de trabalho atual (exceto CLI)

  • O diretório do servidor web (para módulo SAPI), ou diretório do PHP (caso contrário, no Windows)

  • Diretório do Windows (C:\windows ou C:\winnt) (para o Windows), ou ou a opção de tempo de compilação --with-config-file-path

Se php-SAPI.ini existe (onde SAPI é o SAPI usado, então o nome de arquivo é, por exemplo, php-cli.ini ou php-apache.ini), é usado ao invés do arquivo php.ini. nome SAPI pode ser determinado pela função php_sapi_name().

Nota:

O servidor web Apache muda o diretório para raiz durante a inicialização, causando com que o PHP tente ler o arquivo php.ini da raiz do arquivo de sistema, se ele existir.

As diretivas do arquivo php.ini tratadas por extensões são documentadas respectivamente nas páginas das próprias extensões. A lista de diretivas principais está disponível no apêdice. No entanto, provavelmente nem todas as diretivas do PHP estão documentadas no manual. Para uma lista completa das diretivas disponíveis na sua versão do PHP, por favor leia seu arquivo php.ini. Também há alternativa de baixar a » última versão do arquivo php.ini dos repositórios do CVS, que pode ser de ajuda também.

Exemplo #1 php.ini example

; any text on a line after an unquoted semicolon (;) is ignored
                        [php] ; section markers (text within square brackets) are also ignored
                        ; Boolean values can be set to either:
                        ;    true, on, yes
                        ; or false, off, no, none
                        register_globals = off
                        track_errors = yes

                        ; you can enclose strings in double-quotes
                        include_path = ".:/usr/local/lib/php"

                        ; backslashes are treated the same as any other character
                        include_path = ".;c:\php\lib"

A partir do PHP 5.1.0, é possível acessar as variáveis .ini dentro dos arquivos .ini. Exemplo:open_basedir = ${open_basedir} ":/new/dir".

Configuração em tempo de execução
Aonde uma configuração deve ser definida
Configuração em tempo de execução


Aonde uma configuração deve ser definida

Estes modos determinam quando e aonde uma diretiva do PHP pode ou não pode ser definida, e cada diretiva no manual faz referencia a um destes modos. Por exemplo, algumas definições podem ser feitas em um script PHP usando ini_set(), aonde outros podem requerer php.ini ou httpd.conf.

Por exemplo, a configuração output_buffering é PHP_INI_PERDIR portanto não pode ser definida usando ini_set(). Entretanto a diretiva display_errors é PHP_INI_ALL portanto pode ser definida em qualquer lugar incluindo com ini_set().

Definição dos modos PHP_INI_*
Modo | Significado
PHP_INI_USER | A entrada pode ser definida nos scripts do usuário (como com ini_set()) ou no registro do Windows
PHP_INI_PERDIR | A entrada pode ser definida no php.ini, .htaccess ou httpd.conf
PHP_INI_SYSTEM | A entrada pode ser definida no php.ini ou httpd.conf
PHP_INI_ALL | Entrada pode ser definida em qualquer lugar

O arquivo de configuração
Como mudar as configurações
Configuração em tempo de execução


Como mudar as configurações

Executando PHP como módulo do Apache

Quando usar o PHP como módulo do Apache, você pode mudar as configurações usando diretivas nos arquivos de configuração do Apache (ex.: httpd.conf e .htaccess). Você precisa de privilégios "AllowOverride Options" ou "AllowOverride All" para isso.

Há vários diretivas do Apache que você pode mudar a configuração do PHP de dentro dos arquivos dos arquivos de configuração do Apache. Para uma lista de quais diretivas são PHP_INI_ALL, PHP_INI_PERDIR, or PHP_INI_SYSTEM, olhe no apêndice Lista de diretivas do arquivo php.ini.

php_value nome valor

Configura o valor da diretiva especificada. Pode ser usado apenas com diretivas do tipo PHP_INI_ALL e PHP_INI_PERDIR. Para limpar um valor configurado anteriormente, use o valor none.

Nota: Não use php_value para configurar valores booleanos. php_flag (veja abaixo) deve ser usada, ao invés.

php_flag nome on|off

Usado para configurar diretivas de configuração booleanas. Pode ser usada apenas com diretivas do tipo PHP_INI_ALL e PHP_INI_PERDIR.

php_admin_value nome valor

Configura o valor da diretiva especificada. Isso não pode ser usado em arquivos .htaccess. Qualquer tipo diretiva configurada com php_admin_value não pode ser sobrescrita por diretivas .htaccess ou ini_set().. Para limpar um valor configurado anteriormente, use o valor none.

php_admin_flag nome on|off

Usado para configura diretiva de configuração booleana. Isso não pode ser usado em arquivos .htaccess. Qualquer tipo diretiva configurada com php_admin_flag não pode ser sobrescrita por diretivas .htaccess. Para limpar um valor configurado anteriormente, use o valor none.

Exemplo #1 Exemplo de configuração do Apache

<IfModule mod_php5.c>
                                    php_value include_path ".:/usr/local/lib/php"
                                    php_admin_flag safe_mode on
                                </IfModule>
                                <IfModule mod_php4.c>
                                    php_value include_path ".:/usr/local/lib/php"
                                    php_admin_flag safe_mode on
                                </IfModule>

Cuidado

Constantes PHP não existem fora do PHP. Por exemplo, no arquivo httpd.conf você não pode usar constantes do PHP como E_ALL ou E_NOTICE para configurar a diretiva error_reporting, já que elas não terão significado algum e serão avaliadas como 0. Ao invés, use os valores de bitmask associados. Essas constantes podem ser usados no arquivo php.ini

Mudando configuração do PHP através do registro do Windows

Quando executar o PHP no Windows, os valores de configuração pode ser modificados para cada diretório, usando o registro do Windows. Os valores de configuração são guardados na chave de registro HKLM\SOFTWARE\PHP\Per Directory Values, nas sub-chaves correspondentes aos caminhos dos diretórios. Por exemplo, valores para o diretório c:\inetpub\wwwroot estariam guardadas na chave HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot. As configurações para o diretório estariam ativos para qualquer script rodando desse diretório ou qualquer subdiretório dele. Os valores na chave devem ter o nome da diretiva de configuração do PHP e um valor string. Constantes do PHP nos valores não são avaliados. Entretanto, apenas valores de configurações modificáveis no PHP_INI_USER podem ser definidos desta maneira, valores PHP_INI_PERDIR não podem.

Outras interfaces para PHP

Independente de como você execute PHP, você pode mudar certos valore durante a execução de seus scripts através ini_set(). Veja a documentação na página ini_set() para mais informações.

Se você estiver interessado na lista completa de configurações no seu sistema com o valores atuais, você pode executar a função phpinfo() , e revisar a página resultante. Você pode também acessar os valores de configurações de diretivas individuais em tempo de execução usando ini_get() ou get_cfg_var().

Aonde uma configuração deve ser definida
Referência da Linguagem
Configuração em tempo de execução


Referência da Linguagem

  • Sintaxe Básica
    • Escapando o HTML
    • Separação de instruções
    • Comentários
  • Tipos
    • Introdução
    • Booleanos
    • Inteiros
    • Números de ponto flutuante
    • Strings
    • Arrays
    • Objects
    • Resource
    • NULL
    • Pseudo-tipos e variáveis utilizados nesta documentação
    • Manipulação de tipos
  • Variáveis
    • Introdução
    • Variáveis Pré-definidas
    • Escopo de variáveis
    • Variáveis variáveis
    • Variáveis de fontes externas
  • Constantes
    • Sintaxe
    • Constantes Mágicas
  • Expressões
  • Operadores
    • Precedência de Operadores
    • Operadores Aritméticos
    • Operadores de Atribuição
    • Operador Bit-a-bit
    • Operadores de Comparação
    • Operadores de controle de erro
    • Operadores de Execução
    • Operadores de Incremento/Decremento
    • Operadores Lógicos
    • Operadores de String
    • Operadores de Arrays
    • Operadores de tipo
  • Estruturas de Controle
    • Introdução
    • if
    • else
    • elseif/else if
    • Alternative syntax for control structures
    • while
    • do-while
    • for
    • foreach
    • break
    • continue
    • switch
    • declare
    • return
    • require
    • include
    • require_once
    • include_once
    • goto
  • Funções
    • Funções definidas pelo usuário
    • Argumentos de funções
    • Retornando valores
    • Funções variáveis
    • Funções internas (built-in)
    • Funções anonimas
  • Classes e Objetos
    • Introdução
    • O Básico
    • Properties
    • Constantes do Objeto
    • Autoloading Objects
    • Construtores e Destrutores
    • Visibilidade
    • Object Inheritance
    • Operador de Resolução de Escopo (::)
    • Palavra-Chave 'static'
    • Abstração de Objetos
    • Interfaces de Objetos
    • Sobrecarga
    • Iteração de Objetos
    • Patterns
    • Métodos Mágicos
    • Palavra-Chave 'final'
    • Clonando objetos
    • Comparando objetos
    • Indução de Tipo
    • Late Static Bindings
    • Objetos e Referências
    • Object Serialization
  • Namespaces
    • Namespaces - Visão geral
    • Definição de Namespace
    • Usando namespaces
    • Espaço global
    • __NAMESPACE__
    • Regras de resolução de nomes
  • Exceções
    • Herdando Exceções
  • Referências
    • O que são referências
    • O que as referências fazem
    • O que as referências não são
    • Passagem por referência
    • Retornando referências
    • Destruindo referências
    • Demonstrando referências
  • Variáveis pré-definidas
    • Superglobais — Superglobais são variáveis nativas que estão sempre disponíveis em todos escopos
    • $GLOBALS — Referencia todas variáveis disponíveis no escopo global
    • $_SERVER — Informação do servidor e ambiente de execução
    • $_GET — HTTP GET variáveis
    • $_POST — HTTP POST variables
    • $_FILES — HTTP File Upload variáveis
    • $_REQUEST — Variáveis de requisição HTTP
    • $_SESSION — Variáveis de sessão
    • $_ENV — Environment variables
    • $_COOKIE — HTTP Cookies
    • $php_errormsg — A mensagem de erro anterior
    • $HTTP_RAW_POST_DATA — Informação não-tratada do POST
    • $http_response_header — Cabeçalhos de resposta HTTP
    • $argc — O número de argumentos passados para o script
    • $argv — Array de argumentos passados para o script
  • Exceções pré-definidas
    • Exception
    • ErrorException
  • Predefined Interfaces
    • Traversable — The Traversable interface
    • Iterator — The Iterator interface
    • IteratorAggregate — The IteratorAggregate interface
    • ArrayAccess — The ArrayAccess interface
    • Serializable — The Serializable interface
  • Context options and parameters
    • Socket context options — Socket context option listing
    • HTTP context options — HTTP context option listing
    • FTP context options — FTP context option listing
    • SSL context options — SSL context option listing
    • CURL context options — CURL context option listing
    • Phar context options — Phar context option listing
    • Context parameters — Context parameter listing
  • Supported Protocols and Wrappers
    • Filesystem — Accessing local filesystem
    • HTTP and HTTPS — Accessing HTTP(s) URLs
    • FTP and FTPS — Accessing FTP(s) URLs
    • PHP input/output — Accessing various I/O streams
    • zlib, bzip2 and zip — Compression Streams
    • data:// — Data (RFC 2397)
    • Glob — Find pathnames matching pattern
    • phar:// — PHP Archive
    • ssh2:// — Secure Shell 2
    • rar:// — RAR
    • ogg:// — Audio streams
    • expect:// — Process Interaction Streams
Como mudar as configurações
Sintaxe Básica
Manual do PHP


Sintaxe Básica

Índice

  • Escapando o HTML
  • Separação de instruções
  • Comentários
Referência da Linguagem
Escapando o HTML
Referência da Linguagem


Escapando o HTML

Quando o PHP interpreta um arquivo, ele procura pelas tags de abertura e fechamento, as quais indicam para o PHP começar e parar de interpretar o código entre elas. Interpretar desta maneira permite ao PHP ser embutido em todos os tipos de documentos, já que tudo, fora o par de tags de abertura e fechamento é ignorado pelo interpretador do PHP. Na maioria das vezes você verá o PHP embutido em documentos HTML como neste exemplo.

<p>Isto vai ser ignorado.</p>
<?php echo 'Enquanto isto vai ser interpretado.'; ?>
<p>Isto também vai ser ignorado.</p>

Você também pode usar estruturas mais avançadas:

Exemplo #1 Escapando de modo avançado

<?php
if ($expression) {
    ?>
    <strong>Isto é verdadeiro.</strong>
    <?php
} else {
    ?>
    <strong>Isto é falso.</strong>
    <?php
}
?>
Isto funciona como o esperado, porque o quando PHP atinge o ?> fechando as tags, ele simplesmente começa a enviar para a saída qualquer coisa (exceto newlines em seguida - veja separação de instruções) que encontre até que atinja outra tag de abertura. O exemplo dado aqui é resumido, claro, mas para escrever grandes blocos de texto, sair do modo de interpretação do PHP é geralmente mais eficiente do que enviar todo o texto atráves de echo() ou print().

Existem quatro diferentes pares de tags de abertura e fechamento que podem ser usados com o PHP. Duas dessas, <?php ?> e <script language="php"> </script>, estão sempre disponíveis. As outras duas são tags curtas e tags no estilo ASP, e podem ser ativadas e desativadas a partir do arquivo de configuração php.ini. Assim, ao passo que algumas pessoas acham as tags curtas e tags no estilo ASP conveniente, elas são menos portáveis, e geralmente não recomendadas.

Nota:

Também note que se você está embutindo o PHP no XML ou XHTML você irá precisar usar as tags <?php ?> para continuar cumprindo com os padrões.

Exemplo #2 Abrindo e Fechando as Tags do PHP

1.  <?php echo 'se você quer servir documentos XHTML ou XML, faça assim'; ?>

2.  <script language="php">
        echo 'alguns editores (como o FrontPage) não
              gostam de instruções de processamento';
    </script>

3.  <? echo 'esta é a mais simples, uma instrução de processamento SGML'; ?>
    <?= expressão ?> Isto é um atalho para "<? echo expressão ?>"

4.  <% echo 'Você pode opcionalmente usar tags no estilo ASP'; %>
    <%= $variavel; # Isto é um atalho para "<% echo . . ." %>

Enquanto as tags vistas nos exemplos um e dois estão ambas sempre disponíveis, o exemplo um é mais comumente usado, e recomendado, das duas.

Tags curtas (exemplo três) estão disponíveis apenas quando são ativadas pela configuração short_open_tag no arquivo php.ini ou se o PHP foi configurado com a opção --enable-short-tags .

Tags no estilo ASP (exemplo quatro estão disponíveis apenas quando elas estão ativadas atráves da diretiva de configuração asp_tags no arquivo php.ini.

Nota:

O uso de tags curtas deve ser evitado ao desenvolver aplicações ou bibliotecas que serão redistribuídas, ou serão usadas em servidores PHP que não estão sobre o seu controle, porque as tags curtas podem não ser suportadas no servidor em questão. Para código portável, redistribuível, tenha certeza de não usar tags curtas.

Sintaxe Básica
Separação de instruções
Sintaxe Básica


Separação de instruções

Como no C ou Perl, o PHP requer que as instruções sejam terminadas com um ponto-e-vírgula ao final de cada comando. A tag de fechamento de um bloco de código PHP automaticamente implica em um ponto-e-vírgula; você não precisa ter um ponto-e-vírgula terminando a última linha de um bloco PHP. A tag de fechamento irá incluir uma nova linha logo após, se estiver presente.

<?php
    echo 'Isto é um teste';
?>

<?php echo 'Isto é um teste' ?>

<?php echo 'Nós omitimos a última tag de fechamento';

Nota:

A tag de fechamento de um bloco PHP ao final de um arquivo é opcional, e em alguns casos omiti-la é útil ao usar include() ou require(), assim espaço em branco indesejado não irá aparecer ao final dos arquivos, e você ainda será capaz de adicionar cabeçalhos a resposta após. Também é útil se você usar output buffering, e você não quer ter adicionado um espaço em branco ao final das partes geradas por arquivos incluídos.

Escapando o HTML
Comentários
Sintaxe Básica


Comentários

O PHP suporta comentários no estilo 'C', 'C++' e shell do Unix shell (estilo Perl). Por exemplo:

<?php
    echo 'Isto é um teste'; // Estilo de comentário de uma linha em  c++
    /* Este é um comentário de múltiplas linhas
       ainda outra linha de comentário */
    echo 'Isto é ainda outro teste';
    echo 'Um teste final'; # Este é um comentário de uma linha no estilo shell
?>

Os comentários de estilo "uma linha" apenas comentam até o final da linha ou do bloco PHP de código corrente, o que chegar primeiro. Isto significa que o código HTML após // ... ?> ou # ... ?> SERÁ exibido: ?> Interrompe o modo PHP e retorna para o modo HTML, e // ou # não podem influenciar isto. Se a diretiva de configuração asp_tags estiver ativa, ela funciona da mesma maneira que // %> e # %>. Entretando, a tag </script> não interrompe o modo PHP em um comentário de uma linha.

<h1>Isto é um <?php # echo 'simples';?> exemplo.</h1>
<p>O cabeçalho acima irá dizer 'Isto é um exemplo'.</p>

Comentários no estilo 'C' termina ao primeiro */ encontrado. Tenha certeza de não aninhar comentários no estilo 'C'. É fácil fazer este engano se você esta tentando comentar grandes blocos de código.

<?php
 /*
    echo 'Isto é um teste'; /* Este comentário irá causar um problema */
 */
?>

Separação de instruções
Tipos
Sintaxe Básica


Tipos

Índice

  • Introdução
  • Booleanos
  • Inteiros
  • Números de ponto flutuante
  • Strings
  • Arrays
  • Objects
  • Resource
  • NULL
  • Pseudo-tipos e variáveis utilizados nesta documentação
  • Manipulação de tipos
Comentários
Introdução
Referência da Linguagem


Introdução

O PHP suporta oito tipos primitivos.

São quatro tipos básicos:

  • boolean
  • integer
  • float (número de ponto flutuante, ou também double)
  • string

Dois tipos compostos:

  • array
  • object

E finalmente dois tipos especiais:

  • resource
  • NULL

Este manual também introduz alguns pseudo-tipos por razões de legibilidade:

  • mixed
  • number
  • callback

E a pseudo-variável $....

Algumas referências para o tipo "double" podem aparecer no manual. Considere o tipo double como sendo o float; os dois nomes existem por razões históricas.

O tipo de uma variável geralmente não é definido pelo programador: isto é decidido em tempo de execução pelo PHP, dependendo do contexto na qual a variável é usada.

Nota: Para checar o tipo e valor de uma expressão, utilize a função var_dump().

Para ter uma representação legível de um tipo para debugar, use a função gettype(). Para verificar por um certo tipo, não use gettype(), mas sim as funções is_tipo. Vejamos alguns exemplos:

<?php
$a_bool = TRUE;   // um booleano
$a_str  = "foo";  // uma string
$a_str2 = 'foo';  // uma string
$an_int = 12;     // um inteiro

echo gettype($a_bool); // mostra:  boolean
echo gettype($a_str);  // mostra:  string

// Se ele é um inteiro, incrementa-o com quatro
if (is_int($an_int)) {
    $an_int += 4;
}

// Se $bool é uma string, mostre-a
// (não imprime nada)
if (is_string($a_bool)) {
    echo "String: $a_bool";
}
?>

Para forçar a conversão de uma variável para um certo tipo, você pode converter (cast) a variável ou usar a função settype() nela.

Note que uma variável pode ser avaliada com valores diferentes em certas situações, dependendo de qual tipo ela é no momento. Para mais informações, veja a seção Manipulação de tipos. A tabela de conversão de tipos também pode ser útil, como mostra exemplos de comparações de vários tipos.

Tipos
Booleanos
Tipos


Booleanos

Este é o tipo mais simples. Um booleano expressa um valor verdade. Ele pode ser TRUE ou FALSE.

Nota: O tipo booleano foi introduzido no PHP 4.

Sintaxe

Para especificar um literal booleano, use as palavras-chave TRUE ou FALSE. Ambas são case-insensitive.

<?php
$foo = True; // atribui o valor True para $foo
?>

Tipicamente você pode utilizar algum tipo de operador que retorne um valor booleano, e passá-lo para uma estrutura de controle.

<?php
// == É um operador que testa
// igualdade e retorna um booleano.
if ($action == "mostrar_versao") {
    echo "A versão é 1.23";
}

// isto não é necessário ...
if ($exibir_separadores == TRUE) {
    echo "<hr>\n";
}

// ... porque você pode simplesmente escrever isso:
if ($exibir_separadores) {
    echo "<hr>\n";
}
?>

Convertendo para booleano

Para converter explicitamente um valor para booleano, utilize-se dos modificadores (bool) ou (boolean). Entretanto, na maioria dos casos, você não precisa utilizar o modificador, desde que qualquer valor será convertido automaticamente se um operador, função ou estrutura de controle requerer um argumento booleano.

Veja também Manipulação de tipos.

Ao converter para booleano, os seguintes valores são considerados FALSE:

  • o próprio booleano FALSE
  • o inteiro 0 (zero)
  • o ponto flutuante 0.0 (zero)
  • uma string vazia e a string "0"
  • um array sem elementos
  • um objeto sem elementos membros (somente PHP 4)
  • o tipo especial NULL (incluindo variáveis não definidas)
  • o objeto SimpleXML criado de tags vazias
Qualquer outro valor é considerado TRUE (incluindo qualquer recurso).
Aviso

-1 é considerado TRUE, como qualquer valor não zero (negativos ou positivos)!

<?php
var_dump((bool) "");        // bool(false)
var_dump((bool) 1);         // bool(true)
var_dump((bool) -2);        // bool(true)
var_dump((bool) "foo");     // bool(true)
var_dump((bool) 2.3e5);     // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array());   // bool(false)
var_dump((bool) "false");   // bool(true)
?>

Introdução
Inteiros
Tipos


Inteiros

Um inteiro é um número do conjunto Z = {..., -2, -1, 0, 1, 2, ...}.

Veja também: Inteiros de tamanho arbitrário / GMP, Números de ponto flutuante e Precisão arbitrária / BCMath.

Sintaxe

Inteiros podem ser especificados em notação decimal (base 10), hexadecimal (base 16) ou octal (base 8), opcionalmente precedido de sinal (- ou +).

Para usar a notação octal, você precisa preceder o número com um 0 (zero). Para utilizar a notação hexadecimal, preceda número com 0x.

Exemplo #1 Literais inteiras

<?php
$a = 1234; // número decimal
$a = -123; // um número negativo
$a = 0123; // número octal (equivalente a 83 em decimal)
$a = 0x1A; // número hexadecimal (equivalente a 26 em decimal)
?>
Formalmente, as possíveis representação de inteiros são:
decimal     : [1-9][0-9]*
            | 0

hexadecimal : 0[xX][0-9a-fA-F]+

octal       : 0[0-7]+

integer     : [+-]?decimal
            | [+-]?hexadecimal
            | [+-]?octal
O tamanho de um inteiro é dependente de plataforma, sendo um número aproximado a 2 bilhões o valor mais comum (número de 32 bits com sinal). O PHP não suporta inteiros sem sinal. O tamanho do inteiro pode ser determinado pela constante PHP_INT_SIZE, e seu o valor máximo com a constante PHP_INT_MAX desde o PHP 4.4.0 e PHP 5.0.5.

Aviso

Se um dígito inválido é passado para inteiro octal (i.e. 8 ou 9), o resto do número é ignorado.

Exemplo #2 Octal weirdness

<?php
var_dump(01090); // 010 octal = 8 decimal
?>

Overflow de inteiros

Se você especifica um número além dos limites do tipo inteiro, ele será interpretado como um ponto flutuante. Assim, uma operação que resulte em um número além dos limites do tipo inteiro, um ponto flutuante será retornado.

<?php
$ numero_grande =  2147483647;
var_dump($numero_grande);
// saida: int(2147483647)

$numero_grande =  2147483648;
var_dump($numero_grande);
// saida: float(2147483648)

// é válido também para inteiros hexadecimais entre 2^31 e 2^32-1:
var_dump( 0xffffffff );
// output: float(4294967295)

// porém não é válido para hexadecimais com valores acima de 2^32-1:
var_dump( 0x100000000 );
// output: int(2147483647)

$milhao = 1000000;
$numero_grande =  50000 * $milhao;
var_dump($numero_grande);
// saida: float(50000000000)
?>
Aviso

Infelizmente, há um bug no PHP que faz que ele nem sempre trabalhe corretamente quando há números negativos envolvidos. Por exemplo, quando você faz -50000 * $milhao, o resultado será -429496728. Entretanto, quando ambos os operadores são positivos, isso não ocorre.

Isto foi resolvido no PHP 4.1.0.

Não há operador de divisão inteira no PHP. 1/2 retorna o ponto flutuante 0.5. Você pode moldar (cast) o valor para inteiro para sempre truncar o número, ou você pode usar a função round().

<?php
var_dump(25/7);         // float(3.5714285714286)
var_dump((int) (25/7)); // int(3)
var_dump(round(25/7));  // float(4)
?>

Convertendo para inteiro

Para converter explicitamente um valor para inteiro, utilize-se dos modificadores (int) ou (integer). Entretanto, na maioria dos casos, você não precisa utilizar o modificador, desde que qualquer valor será automaticamente convertido se um operador, função ou estrutura de controle requerer um argumento inteiro. Você também pode converter o valor de um inteiro com a função intval().

Veja também Manipulação de tipos.

de booleanos

FALSE será retornado como 0 (zero), e TRUE como 1 (um).

De números de ponto flutuante

Quando convertendo de números de ponto flutuante para inteiros, o número será truncado.

Se o número convertido estiver além dos limites de um inteiro (usualmente +/- 2.15e+9 = 2^31), o resultado é indefinido, mesmo porque o ponto flutuante não tem a mesma precisão para fornecer um resultado inteiro exato. Não se preocupe, pois nenhum aviso será emitido neste caso!

Aviso

Nunca modifique uma fração desconhecida para inteiro, porque isto pode fornecer resultados inesperados as vezes.

<?php
echo (int) ( (0.1+0.7) * 10 ); // imprime 7!
?>
Para maiores informações, veja o alerta sobre a precisão de número flutuante..

De strings

Veja Conversão de strings para números

De outros tipos

Cuidado

O comportamento da conversão de um inteiro é indefinido de outros tipos. Atualmente, o comportamento é o mesmo como se primeiro o valor fosse convertido para booleano. Entretanto, não confie neste comportamento, pois ele pode mudar sem aviso.

Booleanos
Números de ponto flutuante
Tipos


Números de ponto flutuante

Números de ponto flutuante (também conhecidos como "floats", "doubles" ou "números reais") podem ser especificados utilizando qualquer uma das seguintes sintaxes:

<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>
Formalmente:
LNUM          [0-9]+
DNUM          ([0-9]*[\.]{LNUM}) | ({LNUM}[\.][0-9]*)
EXPONENT_DNUM ( ({LNUM} | {DNUM}) [eE][+-]? {LNUM})
O tamanho de um número de ponto flutuante é dependente de plataforma, sendo o máximo de ~1.8e308 com uma precisão de 14 dígitos decimais um valor comum (número de 64 bits no formato IEEE).

Aviso

Precisão de números de ponto flutuante

É típico que frações simples como 0.1 ou 0.7 não podem ser convertidos em sua representação binária interna sem uma pequena perda de precisão. Isto pode causar erros confusos: por exemplo, floor((0.1+0.7)*10) irá retornar 7 em vez do esperado 8, como resultado da representação interna realmente ser algo como 7.9999999999....

Isto está relacionado ao fato de que é impossível expressar, exatamente, algumas frações em notação decimal com um número finito de dígitos. Por exemplo, 1/3 na forma decimal se torna 0.3333333. . ..

Então, nunca confie em resultados com números de ponto flutuante até a última casa e nunca compare números de ponto flutuante em igualdades. Se você realmente precisar de alta precisão, você pode utilizar as funções matemáticas de precisão arbitrária ou as funções relacionadas ao gmp.

Convertendo para float

Para informações sobre a conversão de strings para floats, veja a seção entitulada Conversão de Strings para números. Para valores de outros tipos, o valor é primeiro convertido para inteiro e então para float. Veja a seção Convertendo para inteiros para mais informações. No PHP 5, um aviso é emitido se você tentar converter um objeto para float.

Inteiros
Strings
Tipos


Strings

Uma string é uma série de caracteres. Antes do PHP 6, um caracter é o mesmo que um byte. Ou seja, há exatamente 256 caracteres diferentes possíveis. Isto implica que o PHP não tem suporte nativo ao Unicode. Veja utf8_encode() e utf8_decode() para algumas funcionalidades básicas de Unicode.

Nota: Não é problema para uma string ser bastante longa. PHP não impõe limite de tamanho de uma string; o único limite é o de memória disponível do computador no qual o PHP está sendo executado.

Sintaxe

Uma string literal pode ser especificada de quatro formas diferentes.

  • apóstrofo
  • aspas
  • sintaxe heredoc
  • sintaxe nowdoc (desde o PHP 5.3.0)

Apóstrofos

A maneira mais simples para especificar uma string é delimitá-la entre apóstrofos (o caracter ').

Para especificar um apóstrofo. você precisará "escapá-la" com uma contra barra (\), como em muitas outras linguagens. Se uma contra barra precisa ocorrer antes de um apóstrofo ou no final da string, você precisa duplicá-la. Note que se você tentar escapar qualquer outro caracter, a contra barra também será impressa! Então geralmente não é necessário escapar a própria contra barra. Para especificar um apóstrofo, use escape (\). Para especificar uma barra invertida antes de uma apóstrofo, ou no final da string, use-o duas vezes (\\). Note que tentando usar escape qualquer outro caractere imprimirá a barra invertida também.

Nota: Diferentemente das duas outras sintaxes, variables e seqüências de escape para caracteres especiais não serão substituídas quando elas ocorrerem dentro de strings delimitadas por apóstrofes.

<?php
echo 'isto é uma string comum';

echo 'Você pode incluir novas linhas em strings,
dessa maneira que estará
tudo bem';

// Imprime: Arnold disse uma vez: "I'll be back"
echo 'Arnold disse uma vez: "I\'ll be back"';

// Imprime: Você tem certeza em apagar C:\*.*?
echo 'Você tem certeza em apagar C:\\*.*?';

// Imprime: Você tem certeza em apagar C:\*.*?
echo 'Você tem certeza em apagar C:\*.*?';

// Imprime: Isto não será substituido: \n uma nova linha
echo 'Isto não será substituido: \n uma nova linha';

// Imprime: Variaveis $também não $expandem
echo 'Variaveis $também não $expandem';
?>

Aspas

Se a string é delimitada entre aspas ("), o PHP irá interpretar mais seqüências de escape para caracteres especiais:

Seqüências de escape
Seqüência | Significado
\n | fim de linha (linefeed ou LF ou 0x0A (10) em ASCII)
\r | retorno de carro (carriage return ou CR ou 0x0D (13) em ASCII)
\t | TAB horizontal (HT ou 0x09 (9) em ASCII)
\v | TAB vertical (VT ou 0x0B (11) em ASCII) (desde o PHP 5.2.5)
\f | form feed (FF ou 0x0C (12) em ASCII) (desde o PHP 5.2.5)
\\ | contra barra ou barra invertida
\$ | sinal de cifrão
\" | aspas
\[0-7]{1,3} | a seqüência de caracteres batendo a expressão regular dos caracteres em notação octal
\x[0-9A-Fa-f]{1,2} | a seqüência de caracteres batendo a expressão regular de um caracter em notação hexadecimal

Como em uma string entre apóstrofos, usar escape em qualquer outro caractere resultará em uma barra invertida sendo mostrada também. Antes do PHP 5.1.1, a barra invertida em \{$var} não era mostrada.

O mais importante recurso de strings delimitadas por aspas está no fato de que nome de variáveis serão substituídos. Veja interpretação de strings para detalhes.

Heredoc

Uma terceira maneira para delimitar strings é a sintaxe heredoc: <<<. Após este operador, um identificador é fornecido, e após, um newline. Então vem a própria string, e então o mesmo identificador para fechar a string.

O identificador de fechamento precisa começar na primeira coluna da linha. Além, o identificador precisa seguir as mesmas regras de nomeação que qualquer outro rótulo no PHP: só pode conter caracteres alfanuméricos e sublinhados, e precisa começar com um caracter não numérico ou sublinhado.

Aviso

É muito importante verificar que a linha do identificador de fechamento não contenha nenhum outro caracter, exceto, possivelmente um ponto e vírgula (;). O que significa que o identificador não pode ser indentado, e que não pode haver nenhum espaço ou tabulações antes ou depois do ponto e vírgula. É também importante perceber que o primeiro caracter antes do identificador de fechamento precisa ser um caracter de nova linha como esperada por seu sistema operacional. Por exemplo, \n em sistemas UNIX, incluindo Mac OS X. O delimitador de fechamento (possivelmente seguido por um ponto e vírgula) precisa também ser seguido por newline.

Se essa regra for quebrada e o identificador de fechamento não estiver perfeito, então ele não será considerado como identificador de fechamento e o PHP irá continuar procurando por um. Se, neste caso, um identificador de fechamento apropriado não for encontrado antes do final do arquivo atual, um erro de interpretação (parse) será lançado na linha final do script.

Heredocs não podem ser usados para inicializar membros de classes. Use ao invés, nowdocs.

Exemplo #1 Exemplo inválido

<?php
class foo {
    public $bar = <<<EOT
bar
EOT;
}
?>

Textos heredoc se comportam como string delimitadas por aspas, com apenas uma diferença. Você não precisa escapar apóstrofos e aspas em seus heredocs, mas você ainda pode continuar utilizando os códigos de escape listados acima. Variáveis são substituídas, mas o mesmo cuidado precisa ser tomado quando expressando variáveis complexas dentro de heredocs assim como nas strings.

Exemplo #2 Exemplo de delimitação de strings heredoc

<?php
$str = <<<EOD
Exemplo de uma string
distribuída em várias linhas
utilizando a sintaxe heredoc.
EOD;

/* Exemplo mais complexo, com variáveis */
class foo
{
    var $foo;
    var $bar;

    function foo()
    {
        $this->foo = 'Foo';
        $this->bar = array('Bar1', 'Bar2', 'Bar3');
    }
}

$foo = new foo();
$name = 'Meu nome';

echo <<<EOT
Meu nome é "$name". Eu estou imprimindo $foo->foo.
Agora, eu estou imprimindo {$foo->bar[1]}.
Isto deve imprimir um 'A' maiúsculo: \x41
EOT;
?>

O exemplo acima irá imprimir:

My name is "MyName". I am printing some Foo.
Now, I am printing some Bar2.
This should print a capital 'A': A

É também possível usar sintaxe Heredoc para passar dados para argumento de funções:

Exemplo #3 Exemplo de Heredoc em argumentos

<?php
var_dump(array(<<<EOD
foobar!
EOD
));
?>

Nota:

O suporte a heredoc foi acrescentado no PHP 4.

Nowdoc

Nowdocs são para apóstrofos o que heredocs são para aspas dupla em strings. Um nowdoc é especificado similarmente a um heredoc, mas nenhuma análise é feito dentro de um nowdoc. A construção é ideal para colocar códigos PHP ou outros blocos grandes de texto sem a necessidade de usar escapes. Ele compartilha algumas características em comum com a construção SGML <![CDATA[ ]]>, assim é declarado um bloco de texto onde nada será analisado.

Um nowdoc é identificado com a mesma seqüência <<< usada para heredocs, mas o identificador precisa ficar entre aspas simples, e.g. <<<'EOT'. Todas as regras para identificadores heredoc se aplicam para identificadores nowdoc, especialmente aqueles considerando o identificador de fechamento.

Exemplo #4 Exemplo de string em Nowdoc

<?php
$str = <<<'EOD'
Example of string
spanning multiple lines
using nowdoc syntax.
EOD;

/* Exemplo mais complexo, com variáveis. */
class foo
{
    public $foo;
    public $bar;

    function foo()
    {
        $this->foo = 'Foo';
        $this->bar = array('Bar1', 'Bar2', 'Bar3');
    }
}

$foo = new foo();
$name = 'MyName';

echo <<<'EOT'
My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should not print a capital 'A': \x41
EOT;
?>

O exemplo acima irá imprimir:

My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should not print a capital 'A': \x41

Nota:

Diferente de heredocs, nowdocs pode ser usado no contexto de dado estático. O exemplo típico é inicializando membros de classes ou constantes:

Exemplo #5 Exemplo com dado estático

<?php
class foo {
    public $bar = <<<'EOT'
bar
EOT;
}
?>

Nota:

Suporte a Nowdoc foi adicionado no PHP 5.3.0.

Interpretação de variáveis

Quando uma string é especificada dentro de aspas ou heredoc, variáveis são interpretadas dentro delas.

Há dois tipos de sintaxe: um simples e um complexo . A sintaxe simples é a mais comum e conveniente, provendo uma maneira de interpretar uma variável, um valor de array ou uma propriedade de object em uma string com o menor esforço.

A sintaxe completa foi introduzida no PHP 4, e pode ser reconhecida por chaves ({}) envolvendo a expressão.

Sintaxe simples

Se um sinal de cifrão ($) é encontrado, o interpretador tentará obter tantos identificadores quanto possíveis para formar um nome de variável válido. Envolva o nome da variável com chaves se você deseja explicitamente especificar o fim do nome.

<?php
$cerveja = 'Heineken';
echo "O sabor das '$cerveja's é otimo"; // funciona, "'" é um caracter inválido para nome de variáveis
echo "Ele bebeu algumas $cervejas";     // não funciona, 's' é um caracter válido para nome de variáveis
echo "Ele bebeu algumas ${cerveja}s";   // funciona
echo "Ele bebeu algumas {$cerveja}s";   // funciona
?>

Similarmente, um índice de array ou uma propriedade de object pode ser analisado. Com índices de array, o fechamento de colchete (]) marca o final do índice. A mesma regra aplica-se para propriedade de objetos como para simples variáveis.

<?php
// Esses exemplos são específicos para utilização de arrays dentro de strings
// Quando fora de strings, sempre delimite suas chaves de array strings
// e não use {colchetes}.

// Mostra todos os erros
error_reporting(E_ALL);

$fruits = array('morango' => 'vermelho', 'banana' => 'amarelo');

// Funciona, mas note que funciona de maneira diferente fora dos delimitadores de strings
echo "A banana é $fruits[banana].";

// Funciona
echo "A banana é {$fruits['banana']}.";

// Funciona, mas o PHP procura por uma constante chamada 'banana' antes,
// como descrito a abaixo.
echo "A banana é {$fruits[banana]}.";

// Nao funciona, use colchetes. Isto lanca um parse error.
echo "A banana é $fruits['banana'].";

// Funciona
echo "A banana é " . $fruits['banana'] . ".";

// Funciona
echo "Este quadrado tem $square->width metros de lado.";

// Nao funciona. Para uma solução, veja a sintaxe complexa.
echo "Este quadrado tem $square->width00 centímetros de lado.";
?>

Para qualquer coisa mais complexa, você precisa utilizar a sintaxe complexa.

Sintaxe complexa (chaves)

Isto não é chamado sintaxe complexa porque a sintaxe em si é complexa, mas porque você pode incluir expressões complexas.

De fato, qualquer valor no namespace pode ser incluido em uma string com esta sintaxe. Simplesmente escreva a expressão da mesma forma como apareceria fora da string, e então coloque-o em { e }. Desde que { não pode escapado, esta sintaxe somente mostrará ser reconhecida quando o $ imediatamente seguir o {. Use {\$ para ter um literal {$. Alguns exemplos para fazê-lo claro:

<?php
// Mostra todos os erros
error_reporting(E_ALL);

$bom = 'fantastico';

// Não funciona, imprimindo: Isto é { fantastico}
echo "Isto é { $bom}";

// Funciona, imprimindo: Isto é fantástico
echo "Isto é {$bom}";
echo "Isto é ${bom}";

// Funciona
echo "Este quadrado tem {$square->width}00 centímetros de lado.";

// Funciona
echo "Isto funciona: {$arr[4][3]}";

// Isto está errado pela mesma razão que $foo[bar] é errado fora de uma string.
// Em outras palavras, isto ainda funciona MAS porque o PHP primeiro procura pro uma
// constante nomeada foo; um erro do tipo E_NOTICE (undefined constant) será
// disparado.
echo "Isto é errado: {$arr[foo][3]}";

// Funciona. Quanto mexendo com arrays multi dimensionais, sempre use colchetes em volta dos arrays
// quando detro de strings
echo "Isto funciona: {$arr['foo'][3]}";

// Funciona
echo "Isto funciona: " . $arr['foo'][3];

echo "Isto funciona também {$obj->values[3]->name}";

echo "Este é o valor da variável chamada $name: {${$name}}";

echo "Este é o valor da variável usando o valor retornado da getName(): {${getName()}}";

echo "Este é o valor da variável usando o valor retornado da \$object->getName(): {${$object->getName()}}";
?>

Nota:

Chamada de funções e métodos dentro de {$} funcionam desde o PHP 5.

Acesso e modificação de caracteres da string

Caracteres nas strings podem ser acessados e modificados apenas especificando o deslocamento baseado em zero do caracter desejado depois da string dentro de colchetes, como um array, $str[42] então pense na string como um array de caracteres.

Nota: Strings podem também ser acessada usando colchetes, como $str{42} para o mesmo propósito. Contudo, esta sintaxe está obsoleto a partir do PHP 6. Use colchetes ao invés.

Aviso

Escrevendo em um offset fora do intervalo, preenche a string com espaços. Tipos diferentes de inteiro são convertidos para inteiro. Tipo ilegal de offset emite E_NOTICE. Offset negativo emite E_NOTICE na escrita mas na leitura uma string vazia. Somente o primeiro caractere de uma string atribuída é usada. Atribuindo uma string vazia designa NUL byte.

Exemplo #6 Alguns exemplos com strings

<?php
// Pega o primeiro caracter da string
$str = 'Isto é um teste.';
$first = $str[0];

// Pega o terceiro caracter da string
$third = $str[2];

// Pega o último caracter da string
$str = 'Isto ainda é um teste.';
$last = $str[strlen($str)-1];

// Modifica o ultimo caracter da string
$str = 'Olhe o mal';
$str[strlen($str)-1] = 'r';

?>

Nota:

Acessando variáveis de outros tipos usando [] ou {} silenciosamente retorna NULL.

Funções e operadores úteis

Strings podem ser concatenados utilizando o operador '.' (ponto). Note que o operador '+' (adição) não funciona para isso. Veja operadores de string para mais informações.

Há bastante funções úteis para modificação de strings.

Veja a seção de funções de string para funções gerais e funções de expressões regulares ou a funções para expressão regular compatível com Perl para busca avançada & funcionalidade para substituições.

Há também funções para strings URL e funções para criptografia e descriptografia de strings (mcrypt e mhash).

Finalmente, veja também as funções de tipos de caracteres.

Convertendo para strings

Você pode converter um valor para string utilizando o molde (string), ou a função strval(). Conversão para string é automaticamente realizada no escopo de uma expressão para você onde uma string é necessária. Isto acontece quando você usa as funções echo() ou print(), ou quando você compara o valor de uma variável com uma string. Lendo as seções do manual sobre Tipos e Conversão de Tipos tornará o que se segue um pouco mais claro. Veja também a função settype().

O valor boolean TRUE é convertido para a string "1", o valor FALSE é representado como "" (uma string vazia). Desta forma, você pode converter livremente entre os tipos booleano e string.

Um integer ou um float é convertido para a representação string do número em dígitos arábicos (incluindo a parte expoente para um float). Números de ponto flutuante podem ser convertidos usando a notação exponencial (4.1E+6).

Nota:

O caractere de ponto decimal é definido no locale do script (categoria LC_NUMERIC). Veja setlocale().

Arrays são sempre convertidos para uma string "Array"; por causa disso echo() e print() não podem por eles mesmo mostrar o conteúdo de um array. Para ver um elemento, use a construção como echo $arr['foo']. Veja abaixo dicas de como exportar/ver todo seu conteúdo.

Objects no PHP 4 são sempre convertidos para a string "Object". Se você quiser imprimir os valores das variáveis membro de um object por razão de debug, leia os parágrafos abaixo. Se você quiser encontrar o nome da classe do qual o objeto é uma instância, use get_class(). No PHP 5, o método __toString é usado se aplicável.

Resources são sempre convertidos para strings na estrutura "Resource id #1" onde 1 é o número único do resource assimilado pelo PHP na execução. Se você quiser obter o tipo do recurso, utilize get_resource_type().

NULL é sempre convertido para uma string vazia.

Como você viu acima, imprimir arrays, objetos ou recursos não fornece qualquer informação útil sobre os seus próprios valores. Veja as funções print_r() e var_dump() para melhores maneiras de imprimir valores para debug.

Você também pode converter valores PHP para strings para armazená-los permanentemente. Este método é chamado serialização, e pode ser feito com a função serialize(). Você também pode serializar valores PHP para estruturas XML , se você ativou o suporte a WDDX na configuração do seu PHP.

Conversão de strings para números

Quando uma string é avaliada como um valor numérico, o valor resultante e o tipo é determinado como segue.

A string será avaliada como um ponto flutuante se conter qualquer um dos caracteres '.', 'e', ou 'E'. Em outros casos, ela será avaliada como um inteiro.

O valor é obtido da porção inicial da string. Se a string começa com dados numéricos válidos, esse será o valor utilizado. Em outro caso, o valor será 0 (zero). Dados numéricos válidos são: um sinal opcional, seguido por um ou mais dígitos (opcionalmente contendo um ponto decimal), seguido de um expoente, também opcional. O expoente é um 'e' ou 'E' seguido de um ou mais dígitos.

<?php
$foo = 1 + "10.5";                // $foo é float (11.5)
$foo = 1 + "-1.3e3";              // $foo é float (-1299)
$foo = 1 + "bob-1.3e3";           // $foo é integer (1)
$foo = 1 + "bob3";                // $foo é integer (1)
$foo = 1 + "10 Small Pigs";       // $foo é integer (11)
$foo = 4 + "10.2 Little Piggies"; // $foo é float (14.2)
$foo = "10.0 pigs " + 1;          // $foo é float (11)
$foo = "10.0 pigs " + 1.0;        // $foo é float (11)
?>

Para mais informações sobre esta conversão, veja página do manual UNIX de strtod(3).

Para testar qualquer exemplo nesta seção, copie e cole os exemplos e insira a seguinte linha para ver como funciona:

<?php
echo "\$foo==$foo; tipo " . gettype ($foo) . "<br />\n";
?>

Não espere obter o código de um caracter por convertê-lo para inteiro, como é feito em C. Use as funções ord() e chr() para converter entre código de caracteres e os próprios caracteres.

Números de ponto flutuante
Arrays
Tipos


Arrays

Um array no PHP é atualmente um mapa ordenado. Um mapa é um tipo que relaciona valores para chaves. Este tipo é otimizado de várias maneiras, então você pode usá-lo como um array real, ou uma lista (vetor), hashtable (que é uma implementação de mapa), dicionário, coleção, pilha, fila e provavelmente mais. Como você pode ter outro array PHP como um valor, você pode facilmente simular árvores.

A explicação dessas estruturas estão além do escopo desse manual, mas você pode encontrar exemplos para cada uma dessas estruturas a seguir. Para mais informações sobre estruturas, refira-se a literatura externa sobre esses tópicos.

Sintaxe

Especificando com array()

Um array pode ser criado com o construtor de linguagem array(). Ele pega um certo número de pares separados por vírgula chave => valor .

array(  chave =>  valor
     , ...
     )
// chave pode ser tanto string ou um integer
// valor pode ser qualquer coisa

<?php
$arr = array("foo" => "bar", 12 => true);

echo $arr["foo"]; // bar
echo $arr[12];    // 1
?>

A chave pode ser tanto um integer ou uma string. Se a chave é uma representação padrão de um integer, ele será interpretado assim (por exemplo, "8" será interpretado como 8, enquanto "08" será interpretado como "08"). Flotas em key são truncados para integer. Não há diferença entre arrais indexados e associativos em PHP, apenas um tipo de array, que pode ter índices inteiros ou string.

O valor pode ser qualquer tipo PHP:

<?php
$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));

echo $arr["somearray"][6];    // 5
echo $arr["somearray"][13];   // 9
echo $arr["somearray"]["a"];  // 42
?>

Se omitir a chave quando fornece um novo item, o maior índice inteiro é obtido, e a nova chave será esse máximo + 1. Se você especificar uma chave que já possui um valor assimilada a ela, então o valor é sobrescrito.

<?php
// Esse array é como ...
array(5 => 43, 32, 56, "b" => 12);

// ... este array
array(5 => 43, 6 => 32, 7 => 56, "b" => 12);
?>

Aviso

A partir do PHP 4.3.0, o comportamento da geração de índice descrito acima foi modificado. Agora, se você aumentar um array em que o maior índice atual for negativo, então a próxima chave criada será zero (0). Antes, o novo índice seria o maior índice existente mais 1, do mesmo jeito que os índices positivos.

Utilizar TRUE como chave será interpretado como o integer 1 na chave. Utilizando FALSE como chave será avaliado como o integer 0. Usar NULL como chave é interpretado como uma string vazia. Usar uma string vazia como chave irá criar (ou sobrescerver) uma chave com uma string vazia e seu valor, e isto não é o mesmo que usar colchetes vazios.

Você não pode usar arrays ou objetos como chaves. Fazendo isso resultará em um alerta: Illegal offset type.

Criando/modificando com a sintaxe de colchetes

Você pode também modificar um array existente explicitamente assimilando valores nele.

Isto é feito apenas assimilando valores para o array enquanto especificando a chave em colchetes. Você pode omitir a chave, colocando um par vazio de colchetes ("[]").

$arr[chave] = valor;
$arr[] = valor;
// chave tanto um integer ou string
// valor pode ser qualquer coisa
Se $arr não existir ainda, ele será criado. Então isto é um meio alternativo para especificar um array. Para mudar um certo valor, apenas assimile um novo valor para um elemento especificado por sua chave. Se você quiser remover um par chave/valor, você precisa aplicar unset() nele.
<?php
$arr = array(5 => 1, 12 => 2);

$arr[] = 56;    // Isto é o mesmo que $arr[13] = 56;
                // nesse ponto do script

$arr["x"] = 42; // Isto acrescenta um novo elemento
                // para o array com a chave "x"

unset($arr[5]); // Isto remove um elemento do array

unset($arr);    // E isto apaga todo o array
?>

Nota:

Como mencionado acima, não informar a chave dentro dos colchetes, então o maior índice inteiro é obtido, e a nova chave será esse máximo + 1. Se nenhum índice inteiro existir ainda, a chave será 0 (zero). Se você especificar uma chave que já possui um valor assimilada a ela, então o valor é sobrescrito.

Aviso

A partir do PHP 4.3.0, o comportamento da geração de índice descrito acima foi modificado. Agora, se você aumentar um array em que o maior índice atual for negativo, então a próxima chave criada será zero (0). Antes, o novo índice seria o maior índice existente mais 1, do mesmo jeito que os índices positivos.

Note que a chave inteira maior utilizada para isso não precisa necessariamente existir no array. Ele pode ter existido no array desde a última vez que o array foi indexado. Veja o seguinte exemplo:

<?php
// Criando um array normal
$array = array(1, 2, 3, 4, 5);
print_r($array);

// Agora apagando todos os itens, mas deixando o array intacto:
foreach ($array as $i => $value) {
    unset($array[$i]);
}
print_r($array);

// Acrescentando um item (note que a chabe é 5, em vez de zero
// como voce pode ter esperado).
$array[] = 6;
print_r($array);

// Reindexando:
$array = array_values($array);
$array[] = 7;
print_r($array);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
Array
(
)
Array
(
    [5] => 6
)
Array
(
    [0] => 6
    [1] => 7
)

Funções úteis

Há uma série de funções muito úteis para trabalhar com arrays. Veja a seção sobre arrays.

Nota:

A função unset() permite apagar chaves de um array. Esteja avisado que o array NÃO vai ser reindexado. Se você somente usa "índices inteiros comuns" (começando do zero, aumentando um a um), você pode conseguir reindexar o aaray utilizando array_values().

<?php
$a = array( 1 => 'um', 2 => 'dois', 3 => 'três' );
unset( $a[2] );
/* irá produzir um array que pode ser definido como
   $a = array( 1=>'um', 3=>'três');
   e NÃO
   $a = array( 1 => 'um', 2 => 'três');
*/

$b = array_values($a);
// Agora $b é o  array(1 => 'um', 2 =>'três')
?>

foreach existe especificamente para lidar com arrays. Ele provém uma maneira fácil de percorrer qualquer array.

Array: faça e não faça

Porque $foo[bar] está errado?

Você sempre deve usar delimitadores em volta um índice de um array associativo. Por exemplo, utilizar $foo['bar'] e não $foo[bar]. Mas porque $foo[bar] está errado? Afinal de contas, você vê essa sintaxe nos scripts antigos:

<?php
$foo[bar] = 'inimigo';
echo $foo[bar];
// etc
?>
Isto está errado, mas funciona. Então, porque está errado? A razão está neste código, que tem uma constante indefinida (bar) em vez de uma string ('bar' - repare nos delimitadores), e o PHP pode no futuro definir constantes que, infelizmente em seu código, podem ter o mesmo nome. Isto funciona, porque o PHP automaricamente converte uma string base (uma string não delimitada que não corresponde a nenhum símbolo conhecido) em uma string que contém a string base. Por exemplo, se não existir uma constante definida com o nome bar, então o PHP irá substituí-la pela string 'bar' e usá-la.

Nota: Isto não significa que você sempre deve delimitar as chaves nos arrays. Você não deve delimitar chaves que sejam constantes ou variáveis, porque isso vai impedir o PHP de interpretá-las.

<?php
error_reporting(E_ALL);
ini_set('display_errors', true);
ini_set('html_errors', false);
// Arrays simples:
$array = array(1, 2);
$count = count($array);
for ($i = 0; $i < $count; $i++) {
    echo "\nVerificando $i: \n";
    echo "Ruim: " . $array['$i'] . "\n";
    echo "Bom: " . $array[$i] . "\n";
    echo "Ruim: {$array['$i']}\n";
    echo "Bom: {$array[$i]}\n";
}
?>

O exemplo acima irá imprimir:

Verificando 0:
Notice: Undefined index:  $i in /path/to/script.html on line 9
Ruim:
Bom: 1
Notice: Undefined index:  $i in /path/to/script.html on line 11
Ruim:
Bom: 1

Verificando 1:
Notice: Undefined index:  $i in /path/to/script.html on line 9
Ruim:
Bom: 2
Notice: Undefined index:  $i in /path/to/script.html on line 11
Ruim:
Bom: 2

Mais exemplos para demonstrar esse fato:

<?php
// Vamos ver todos os erros
error_reporting(E_ALL);

$arr = array('fruta' => 'maçã', 'legume' => 'cenoura');

// Correto
print $arr['fruta'];  // maçã
print $arr['legume']; // cenoura

// Errado. Isto funciona mas lança um erro PHP do
// nível E_NOTICE porque é utilizada uma constante indefinida (fruta)
//
// Repare: Quando utiliza-se a constrante indefinida fruta, o PHP assume 'fruta'
print $arr[fruta];    // maçã

// Agora vamos definir uma constante para demonstrar o que pode acontecer. Nós
// vamos assimilar o valor 'legume' para a constante de nome fruta
define('fruta', 'legume');

// Observe a diferenca agora
print $arr['fruit'];  // maçã
print $arr[fruit];    // cenoura

// O exemplo seguinte é normal dentro de uma string. Constantes não são
// observadas dentro de strings e por isso nenhum E-NOTICE não é lançado aqui
print "Olá $arr[fruta]";      // Olá maçã

// Com uma exceção: chaves envolvendo arrays dentro de strings
// ativam a checagem de constantes, como em
print "Olá {$arr[fruta]}";    // Hello cenoura
print "Olá {$arr['fruta']}";  // Hello maçã

// E isso não funciona, resultando em um erro de interpretação do tipo:
// Parse error: parse error, expecting T_STRING' or T_VARIABLE' or T_NUM_STRING'
// Isso se aplica ao uso de superglobais em strings
print "Olá $arr['fruta']";
print "Olá $_GET['foo']";

// Nesse caso, use concatenacao
print "Olá " . $arr['fruta']; // Olá maçã
?>

Quando você ativa error_reporting() para mostrar erros de nível E_NOTICE (como configurando-a para E_ALL) você vê esses erros. Por padrão, error_reporting esté configurada para não mostrar esse nível de erro.

Como explicado na seção sintaxe, a chave precisa estar entre colchetes ('[' e ']'). Isto significa que você pode escrever coisas como isso:

<?php
echo $arr[algumafuncao($bar)];
?>
Isto é um exemplo de utilização de um valor de retorno de função como um índice de array. O PHP conhece constantes, como você deve ter visto algumas E_* antes.
<?php
$error_descriptions[E_ERROR] = "Um erro fatal ocorreu";
$error_descriptions[E_WARNING] = "O PHP emitiu um alarme";
$error_descriptions[E_NOTICE] = "Apenas um aviso informal";
?>
Note que E_ERROR é um identificador válido, assim como bar no primeiro exemplo. Mas no último exemplo seria a mesma coisa que escrevendo:
<?php
$error_descriptions[1] = "Um erro fatal ocorreu";
$error_descriptions[2] = "O PHP emitiu um alarme";
$error_descriptions[8] = "Apenas um aviso informal";
?>
porque E_ERROR é igual a 1, e assim por diante.

Como nós mostramos nos exemplos anteriores, $foo[bar] funciona mas está errado. Funciona porque bar, na sintaxe onde é utilizada é esperada como uma expressão constante. Entretanto, nesse caso não existe constante com o nome bar. O PHP, hoje, assume que você quer bar literalmente, como a string "bar", mas que você esqueceu de escrever os delimitadores.

Então, porque isso é tão mal?

Se em algum ponto do futuro, o time do PHP quiser acrescentar outra constante ou palavra chave, ou você mesmo introduzir outra constante na sua aplicação, você terá problemas. Por exemplo, se você já não pode utilizar as palavras empty e default dessa maneira, desde que elas são palavras reservadas especiais.

Nota: Só para fixar, dentro de uma string delimitada por aspas, é válido não englobar índices de arrays com apóstrofos, de forma que "$foo[bar]" é válido. Veja os exemplos anteriores para detalhes bem como na seção sobre interpretação de variáveis em strings.

Convertendo para array

Para qualquer dos tipos: integer, float, string, boolean e resource, se você converte um valor para um array, você obtêm um array com um elemento (de índice 0) contendo o valor escalar informado.

Se você converte um tipo object para um array, você obtêm as propriedades (variáveis membro) do objeto com elementos do array. As chaves serão o nome das variáveis membro com pequenas notáveis exceções: variáveis privada tem o nome da classe prefixado no nome da variável; variáveis protegidas tem um '*' prefixando o nome da variável. Estes prefixos tem null bytes em ambos os lados. Isto pode resultado em algum comportamente inesperado.

<?php

class A {
    private $A; // This will become '\0A\0A'
}

class B extends A {
    private $A; // This will become '\0B\0A'
    public $AA; // This will become 'AA'
}

var_dump((array) new B());
?>
Acima aparece duas chaves chamadas 'AA', embora uma delas é atualmente chamada '\0A\0A'.

Se você converter um valor NULL para um array, você terá um array vazio.

Comparando

É possível comparar arrays através de array_diff() e operadorores de array.

Exemplos

O tipo array do PHP é muito versátil, por isso temos aqui alguns exemplos para mostrar todo o poder dos arrays.

<?php
// isto
$a = array( 'cor'   => 'vermelha',
            'sabor' => 'doce',
            'forma' => 'redonda',
            'nome'  => 'maçã',
                       4        // a chave será 0
          );

// isto é equivalente a acima
$a['cor']   = 'vermelha';
$a['sabor'] = 'doce';
$a['forma'] = 'redonda';
$a['nome']  = 'maçã';
$a[]        = 4;        // a chave será 0

$b[] = 'a';
$b[] = 'b';
$b[] = 'c';
// o mesmo de array( 0 => 'a' , 1 => 'b' , 2 => 'c' ),
// ou simplesmente array('a', 'b', 'c')
?>

Exemplo #1 Utilizando array()

<?php
// Array como (propriedade-)mapa
$map = array( 'versao'     => 4,
              'OS'         => 'Linux',
              'lang'       => 'inglês',
              'short_tags' => true
            );

// apenas chaves numéricas
$array = array( 7,
                8,
                0,
                156,
                -10
              );
// que é o mesmo que array( 0 => 7, 1 => 8, ...)

$switching = array(         10, // chave = 0
                    5    =>  6,
                    3    =>  7,
                    'a'  =>  4,
                            11, // chave = 6 (o índice máximo era 5)
                    '8'  =>  2, // chave = 8 (inteiro!)
                    '02' => 77, // chave = '02'
                    0    => 12  // o valor 10 será sobrescrito por 12
                  );

// array vazio
$empty = array();
?>

Exemplo #2 Coleção

<?php
$cores = array('vermelho', 'azul', 'verde', 'amarelo');

foreach ($cores as $cor) {
    echo "Você gosta de $cor?\n";
}

?>

O exemplo acima irá imprimir:

Você gosta de vermelho?
Você gosta de azul?
Você gosta de verde?
Você gosta de amarelo?

Mudando diretamente valores de array é possível desde o PHP 5, passando-os como referência. Em versões anteriores precisava de um workaround:

Exemplo #3 Coleção

<?php
// PHP 5
foreach ($colors as &$color) {
    $color = strtoupper($color);
}
unset($color); /* ensure that following writes to
$color will not modify the last array element */

// Workaround for older versions
foreach ($colors as $key => $color) {
    $colors[$key] = strtoupper($color);
}

print_r($colors);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => RED
    [1] => BLUE
    [2] => GREEN
    [3] => YELLOW
)

Este exemplo cria um array na base 1.

Exemplo #4 Array baseado em 1

<?php
$primeiroquarto  = array(1 => 'Janeiro', 'Fevereiro', 'Março');
print_r($primeiroquarto);

?>

O exemplo acima irá imprimir:

Array
(
    [1] => 'Janeiro'
    [2] => 'Fevereiro'
    [3] => 'Março'
)

Exemplo #5 Preenchendo um array real

<?php
// preenchendo um array com todos os itens de um diretório
$handle = opendir('.');
while (false !== ($file = readdir($handle))) {
    $files[] = $file;
}
closedir($handle);
?>

Arrays são ordenados. Você pode mudar sua ordem utilizando vários funções de ordenação. Veja as funções de arrays para mais informações. Você pode contar o número de itens de um array com a função count().

Exemplo #6 Ordenando arrays

<?php
sort($files);
print_r($files);
?>

Porque o valor de um array pode ser qualquer coisa, isto pode ser outro array. Isto pode criar arrays recursivos e multidimensionais.

Exemplo #7 Arrays recursivos e multidimensionais

<?php
$fruits = array ( "frutas"  => array ( "a" => "laranja",
                                       "b" => "banana",
                                       "c" => "maçã",
                                     ),
                  "numeros" => array ( 1,
                                       2,
                                       3,
                                       4,
                                       5,
                                       6
                                     ),
                  "buracos" => array (      "primeiro",
                                       5 => "segundo",
                                            "terceiro",
                                     ),
                );

// Alguns exemplo de enderecos dos valores do array acima
echo $fruits["buracos"][5];   // prints "segundo"
echo $fruits["frutas"]["a"];  // prints "laranja"
unset($fruits["buracos"][0]); // remove "primeiro"

// Criando um novo array multidimensional
$sucos["maca"]["verde"] = "bom";
?>

Você precisa estar ciente que a atribuição sempre envolve cópia de valor. Também significa que o ponteiro interno do array usado por current() e funções similares são resetados. Você precisa utilizar o operador de referência para copiar um array por referência.

<?php
$arr1 = array(2, 3);
$arr2 = $arr1;
$arr2[] = 4; // $arr2 é modificado,
             // $arr1 continua sendo apenas array(2, 3)

$arr3 = &$arr1;
$arr3[] = 4; // agora $arr1 e $arr3 sao os mesmos
?>

Strings
Objects
Tipos


Objects

Object Initialization

To create a new object, use the new statement to instantiate a class:

<?php
class foo
{
    function do_foo()
    {
        echo "Doing foo.";
    }
}

$bar = new foo;
$bar->do_foo();
?>

For a full discussion, see the Classes and Objects chapter.

Converting to object

If an object is converted to an object, it is not modified. If a value of any other type is converted to an object, a new instance of the stdClass built-in class is created. If the value was NULL, the new instance will be empty. Arrays convert to an object with properties named by keys, and corresponding values. For any other value, a member variable named scalar will contain the value.

<?php
$obj = (object) 'ciao';
echo $obj->scalar;  // outputs 'ciao'
?>
Arrays
Resource
Tipos


Resource

Um recurso é uma variável especial, que mantém uma referência a um recurso externo. Recursos são criados e usados por funções especiais. Veja o apêndice para uma lista de todas essas funções e seus tipos correspondentes.

Nota: O tipo resource foi incluído no PHP 4.

Veja também get_resource_type().

Convertendo para recurso

Como as variáveis resource mantém manipuladores especiais para arquivos abertos, conexões de bancos de dados, canvas de imagens e coisas do tipo, converter para resource não faz sentido algum.

Liberando recursos

Através ao sistema de contagem de referência introduzido com o engine da Zend no PHP 4, quando um recurso não é mais referenciado, ele é automaticamente detectado (assim como no Java). Quando isto acontece, todos os recursos em uso por esse resource são liberados pelo coletor de lixo. Por essa razão, é raramente necessário liberar memória manualmente utilizando alguma função free_result.

Nota: Conexões persistentes de bancos são especiais. Eles não são destruídos pelo coletor de lixo. Veja também conexões permanentes.

Objects
NULL
Tipos


NULL

O valor especial NULL representa que a variável não tem valor. NULL é o único valor possível do tipo NULL.

Nota: O tipo NULL foi incluído no PHP 4.

A variável é considerada null se:

  • ela foi assimilada com a constante NULL.

  • ela ainda não recebeu nenhum valor ainda.

  • ela foi apagada com unset().

Sintaxe

Há apenas um único valor do tipo null, e é a palavra-chave case-insensitive NULL.

<?php
$var = NULL;
?>

Veja também as funções is_null() e unset().

Convertendo para NULL

Convertendo uma variável para null removerá a variável e apagar seu valor.

Resource
Pseudo-tipos e variáveis utilizados nesta documentação
Tipos


Pseudo-tipos e variáveis utilizados nesta documentação

mixed

mixed indica que um parâmetro pode aceitar vários (mas não necessariamente todos) os tipos

gettype(), por exemplo, aceita todos os tipos do PHP, enquanto str_replace() somente aceita strings e arrays.

number

number indica que um parâmetro pode ser tanto um integer ou float.

callback

Algumas funções como call_user_func() ou usort() aceitam callback de funções definidas por usuário como parâmetro. Funções de callback não podem ser somente simples funções, mas também métodos de objetos incluindo métodos estáticos de classes.

Uma função PHP é simplesmente passado pelo seu nome como uma string. Você pode
passar qualquer função nativa ou definida por usuário. Note que construtores da
linguagem como
array(),
echo(),
empty(),
eval(),
exit(),
isset(),
list(),
print() ou
unset() não podem ser chamados usando um callback.

A method of an instantiated object is passed as an array containing an object as the element with index 0 and a method name as the element with index 1.

Static class methods can also be passed without instantiating an object of that class by passing the class name instead of an object as the element with index 0.

Apart from common user-defined function, create_function() can be used to create an anonymous callback function.

Exemplo #1 Exemplo de funções callback

<?php

// Exemplo simples de callback
function my_callback_function() {
    echo 'Olá Mundo!';
}
call_user_func('my_callback_function');

// Exemplo de método callback
class MyClass {
    static function myCallbackMethod() {
        echo 'Olá Mundo!';
    }
}

// Type 1: Simple callback
call_user_func('my_callback_function');

// Type 2: Static class method call
call_user_func(array('MyClass', 'myCallbackMethod'));

// Type 3: Chamada de método de objeto
$obj = new MyClass();
call_user_func(array(&$obj, 'myCallbackMethod'));

// Type 4: Static class method call (As of PHP 5.2.3)
call_user_func('MyClass::myCallbackMethod');

// Type 5: Relative static class method call (As of PHP 5.3.0)
class A {
    public static function who() {
        echo "A\n";
    }
}

class B extends A {
    public static function who() {
        echo "B\n";
    }
}

call_user_func(array('B', 'parent::who')); // A

?>

Nota: No PHP 4, vocÊ irá ter que usar a referência para criar um callback que aponta para o objeto atual, e não uma cópia dele. Para mais detalhes, veja Referências explicadas.

void

void no tipo de retorno indica que não há valor a ser retornado. void na lista de parâmetros indica que a função não aceita parâmetros.

...

$... no protótipo de uma função significa e assim por diante. O nome desta variável é usado quando a função suporta infinito número de argumentos.

NULL
Manipulação de tipos
Tipos


Manipulação de tipos

O PHP não requer (ou suporta) a definição de tipo explícita na declaração de variáveis: o tipo de uma variável é determinado pelo contexto em que a variável é utilizada. Isto significa que, se você atribuir um valor string para a variável $var, $var se torna uma string. Se você então atribuir um valor inteiro para $var, ela se torna um inteiro.

Um exemplo da conversão automática do PHP é o operador de adição '+'. Se qualquer um dos operadores for float, então todos os operadores são avaliados como floats, e o resultado será um float. De outra forma, se os operadores forem interpretados como integers então o resultado será um integer. Note que isso não muda os tipos dos operadores: apenas muda em como esses operadores são avaliados.

<?php
$foo = "0";  // $foo é string (ASCII 48)
$foo += 2;   // $foo é agora um interio (2)
$foo = $foo + 1.3;  // $foo é agora um float (3.3)
$foo = 5 + "10 pequenos porcos";   // $foo é inteiro (15)
$foo = 5 + "10 minúsculos porcos"; // $foo é inteiro (15)
?>

Se os últimos dois exemplos lhe parecerem estranhos, veja Conversão de strings para números.

Para forçar uma variável para ser avaliada como um certo tipo, veja a seção Moldando o tipo (casting). Se você deseja mudar o tipo de uma variável, veja settype().

Para testar qualquer um dos exemplo desta seção, você pode usar a função var_dump().

Nota:

O comportamento de uma conversão automática para array é atualmente indefinida.

Também, pelo PHP suporta indexação em strings via índice usando a mesma sintaxe de array, o seguinte exemplo é válido para todas versões do PHP:

<?php
$a    = 'car'; // $a é uma string
$a[0] = 'b';   // $a é ainda uma string
echo $a;       // bar
?>

Veja a seção entitulada Acessando caracteres da string para mais informações.

Conversão de Tipos - Type Casting

A conversão de tipos no PHP funciona como no C: o nome de um tipo desejado é escrito entre parênteses antes da variável em que se deseja a moldagem.

<?php
$foo = 10;             // $foo é um inteiro
$bar = (boolean) $foo; // $bar é um booleano
?>

As moldagens permitidas são:

  • (int), (integer) - molde para inteiro
  • (bool), (boolean) - converte para booleano
  • (float), (double), (real) - converte para número de ponto flutuante
  • (string) - converte para string
  • (binary) - converte para string binária (PHP 6)
  • (array) - converte para array
  • (object) - converte para objeto
  • (unset) - converte para NULL (PHP 5)

(binary) e o prefixo b é foram adicionados no PHP 5.2.1

Note que tabulações e espaços são permitidos dentro dos parênteses, então o seguinte são funcionalmente equivalentes:

<?php
$foo = (int) $bar;
$foo = ( int ) $bar;
?>

Convertendo uma string literal e variáveis para strings binárias:

<?php
$binary = (binary)$string;
$binary = b"binary string";
?>

Nota:

Em vez de converter uma variável para string, você também pode englobar a variável entre aspas duplas.

<?php
$foo = 10;            // $foo é um interio
$str = "$foo";        // $str é uma string
$fst = (string) $foo; // $fst tambem é uma string

// Isto imprimirah "eles são o mesmo"
if ($fst === $str) {
    echo "eles são o mesmo";
}
?>

Pode não ser tão óbvio o que exatamente ocorre quando se converte entre certos tipos. Para mais informações, veja essas seções:

  • Convertendo para booleano
  • Convertendo para integer
  • Convertendo para float
  • Convertendo para string
  • Convertendo para array
  • Convertendo para objeto
  • Convertendo para resource
  • Convertendo para NULL
  • Tabela de comparação entre tipos
Pseudo-tipos e variáveis utilizados nesta documentação
Variáveis
Tipos


Variáveis

Índice

  • Introdução
  • Variáveis Pré-definidas
  • Escopo de variáveis
  • Variáveis variáveis
  • Variáveis de fontes externas
Manipulação de tipos
Introdução
Referência da Linguagem


Introdução

As variáveis no PHP são representadas por um cifrão ($) seguido pelo nome da variável. Os nomes de variável no PHP fazem distinção entre maiúsculas e minúsculas.

Os nomes de variável seguem as mesmas regras como outros rótulos no PHP. Um nome de variável válido se inicia com uma letra ou sublinhado, seguido de qualquer número de letras, algarismos ou sublinhados. Em uma expressão regular isto poderia ser representado desta forma: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

Nota: Para nosso propósito, as letras a-z, A-Z e os bytes de 127 a 255 (0x7f-0xff).

Nota: $this é uma variável especial que não pode ser atribuída.

Dica

Veja também o Guia de nomenclatura em espaço de usuário.

Para informação sobre funções relacionadas a variáveis, veja a Referência de funções para variáveis.

<?php
$var = 'Bob';
$Var = 'Joe';
echo "$var, $Var";      // exibe "Bob, Joe"

$4site = 'not yet';     // inválido; começa com um número
$_4site = 'not yet';    // válido; começa com um sublinhado
$täyte = 'mansikka';    // válido; 'ä' é um caracter ASCII (extendido) 228
?>

Por padrão, as variáveis são sempre atribuídas por valor. Isto significa que quando você atribui uma expressão a uma variável, o valor da expressão original é copiado integralmente para a variável de destino. Isto significa também que, após atribuir o valor de uma variável a outra, a alteração de uma destas variáveis não afetará a outra. Para maiores informações sobre este tipo de atribuição, veja o capítulo em Expressões.

O PHP oferece um outro meio de atribuir valores a variáveis: atribuição por referência. Isto significa que a nova variável simplesmente referencia (em outras palavras, "torna-se um apelido para" ou "aponta para") a variável original. Alterações na nova variável afetam a original e vice versa.

Para atribuir por referência, simplesmente adicione um e-comercial (&) na frente do nome da variável que estiver sendo atribuída (variável de origem) Por exemplo, o trecho de código abaixo imprime 'My name is Bob' duas vezes:

<?php
$foo = 'Bob';              // Atribui o valor 'Bob' a variável $foo
$bar = &$foo;              // Referecia $foo através de $bar.
$bar = "My name is $bar";  // Altera $bar...
echo $bar;
echo $foo;                 // $foo é alterada também.
?>

Uma observação importante a se fazer: somente variáveis nomeadas podem ser atribuídas por referência.

<?php
$foo = 25;
$bar = &$foo;      // Esta atribuição é válida.
$bar = &(24 * 7);  // Inválido; referencia uma expressão sem nome.

function test()
{
   return 25;
}

$bar = &test();    // Inválido.
?>

Não é necessário variáveis inicializadas no PHP, contudo é uma ótima prática. Variáveis não inicializadas tem um valor padrão do tipo dela dependendo do contexto no qual eles são usados - padrão de booleanos é FALSE, de inteiros e ponto-flutuantes é zero, strings (e.g. usado em echo()) são definidos como uma string vazia e arrays tornam-se um array vazio.

Exemplo #1 Valores padrões de variáveis não inicializadas

<?php
// Limpa e remove referência (sem uso de contexto) a variável; imprime NULL
var_dump($unset_var);

// Uso de booleano; imprime 'false' (Veja sobre operadores ternário para saber mais sobre a sintaxe)
echo ($unset_bool ? "true" : "false"); // false

// Uso de string; imprime 'string(3) "abc"'
$unset_str .= 'abc';
var_dump($unset_str);

// Uso de inteiro; imprime 'int(25)'
$unset_int += 25; // 0 + 25 => 25
var_dump($unset_int);

// Uso de float/double; imprime 'float(1.25)'
$unset_float += 1.25;
var_dump($unset_float);

// Uso de array; imprime array(1) {  [3]=>  string(3) "def" }
$unset_arr[3] = "def"; // array() + array(3 => "def") => array(3 => "def")
var_dump($unset_arr);

// Uso de objeto; cria novo objeto stdClass (veja http://www.php.net/manual/en/reserved.classes.php)
// Imprime: object(stdClass)#1 (1) {  ["foo"]=>  string(3) "bar" }
$unset_obj->foo = 'bar';
var_dump($unset_obj);
?>

Confiar no valor padrão de uma variável não inicializada é problemático no caso de incluir um arquivo em outro que usa variável com mesmo nome. E também um principal risco de segurança com register_globals estando on. Erros E_NOTICE são emitidos no caso de ter variáveis não inicializadas, contudo não no caso de adicionar elementos para um array não inicializado. O construtor da linguagem isset() pode ser usado para detectar se uma variável não foi inicializada.

Variáveis
Variáveis Pré-definidas
Variáveis


Variáveis Pré-definidas

O PHP oferece um grande número de variáveis pré-definidas para qualquer script que ele execute. Muitas destas variáveis, entretanto, não podem ser completamente documentadas uma vez dependem de diversos fatores, como o servidor no qual scripts são executados, a versão e configuração deste servidor e outros. Algumas destas variáveis não estarão disponíveis quando o PHP for executado na linha de comando. Para uma lista destas variáveis, veja a seção Variáveis reservadas.

Aviso

No PHP 4.2.0 e posteriores, o valor default da diretiva register_globals é off. Esta é a maior modificação no PHP. Tendo register_globals off afeta o conjunto de variáveis pré-definidas disponíveis no escopo global. POr exemplo, para ler DOCUMENT_ROOT você usará $_SERVER['DOCUMENT_ROOT'] em vez de $DOCUMENT_ROOT, ou $_GET['id'] da URL http://www.example.com/test.php?id=3 em vez de $id, or $_ENV['HOME'] em vez de $HOME.

Para informações relacionadas desta modificação, veja detalhes da diretiva register_globals, no capítulo de segurança em Usando register_globals , assim como o detalhamento de lançamento das versões do PHP » 4.1.0 e » 4.2.0.

Utilizar as Variáveis Pré-definidas do PHP, como os arrays superglobais, é muito mais preferível.

Desde a versão 4.1.0, o PHP fornece um conjunto adicional de arrays predefinidos contendo as variáveis do servidor web (se aplicável), as variáveis ambiente e as entradas do usuário. Esses novos arrays são especiais pelo motivo que são automaticamente globais (significa que são automaticamente disponíveis em qualquer escopo. Por causa disso, são também conhecidas como 'superglobais' (Não há um mecanismo no PHP para superglobais definidas pelo usuário) As superglobais são listadas abaixo. Entretanto, para uma explicação de seu conteúdo e detalhes sobre as variáveis pré-definidas do PHP e sua natureza, veja a seção Variáveis Pré-definidas. Veja também que todas as outras variáveis pré-definidas antigas ($HTTP_*_VARS) ainda existem. A partir do PHP 5.0.0, os grandes arrays de variáveis pré-definidas podem ser desativadas através da diretiva register_long_arrays .

Nota: Variáveis variáveis

Superglobais não podem ser utilizadas como variáveis variáveis dentro de funções ou métodos de classe.

Nota:

Mesmo que superglobal e HTTP_*_VARS existam; elas não são idênticas, então modificando uma não irá alterar a outra.

Se todos os indicadores não estiverem configurados no variables_order, seus arrays superglobais predefinidos respectivos estarão vazios.

Introdução
Escopo de variáveis
Variáveis


Escopo de variáveis

O escopo de uma variável é o contexto onde ela foi definida. A maior parte das variáveis do PHP tem somente escopo local. Este escopo local inclui os arquivos incluídos. Por exemplo:

<?php
$a = 1;
include 'b.inc';
?>

Aqui a variável $a estará disponível no script incluído b.inc. Entretanto, com as funções definidas pelo usuário, um escopo local é introduzido. Quaisquer variáveis utilizadas dento da função é por default limitada dentro do escopo local da função. Por exemplo:

<?php
$a = 1; /* escopo global */

function Teste()
{
    echo $a; /* referencia uma variável do escopo local (não definida) */
}

Teste();
?>

Este script não produz nenhuma saída porque a instrução echo() refere-se a uma versão local da variável $a, e ela não tem nenhum valor assimilado nesse escopo. Essa é uma pequena diferença da linguagem C quando variáveis globais são automaticamente disponíveis para funções sem sobreescrever uma eventual definição local. Isto causa problemas quando as pessoas mudam inadivertidamente uma variável global. No PHP, as variáveis globais precisam ser declaradas globais dentro de uma função se ela vai ser utilizada naquela função.

A palavra chave global

Primeiro, um exemplo de global:

Exemplo #1 Usando global

<?php
$a = 1;
$b = 2;

function Soma()
{
    global $a, $b;

    $b = $a + $b;
}

Soma();
echo $b;
?>

O script acima imprimirá "3". Declarando $a e $b globais na função, todas as referências a essas variáveis referem-se a versão global. Não há um limite para o número de variáveis globais que podem ser manipuladas por uma função.

Uma segunda maneira de acessar variáveis do escopo global é utilizando o array especial $GLOBALS definido pelo PHP. O exemplo anterior poderia ser rescrito como:

Exemplo #2 Usando $GLOBALS no lugar de global

<?php
$a = 1;
$b = 2;

function Soma()
{
    $GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}

Soma();
echo $b;
?>

O array $GLOBALS é um array associativo onde o nome da variável global é a chave do array e o seu conteúdo da variável como o valor do elemento do array. Veja que $GLOBALS existe em qualquer escopo, isto porque $GLOBALS é uma superglobal. Segue um exemplo demonstrando o poder das superglobais:

Exemplo #3 Exemplo demonstrando superglobals e escopos

<?php
function test_global()
{
    // A maioria das variaveis pré-definidas nao sao 'super' e requerem
    // 'global' para serem disponiveis para funcoes em qualquer escopo.
    global $HTTP_POST_VARS;

    echo $HTTP_POST_VARS['name'];

    // Superglobais são disponiveis em qualquer escopo e
    // nao precisam de 'global'. Superglobais existem
    // desde o PHP 4.1.0, e HTTP_POST_VARS é agora
    // tida como obsoleta.
    echo $_POST['name'];
}
?>

Utilizando variáveis estáticas

Outro recurso importante do escopo de variáveis é a variável estática. Uma variável estática existe somente no escopo local da função, mas ela não perde seu valor quando o nível de execução do programa deixa o escopo. Considere o seguinte exemplo:

Exemplo #4 Exemplo demonstrando a necessidade de variáveis estáticas

<?php
function Teste ()
{
    $a = 0;
    echo $a;
    $a++;
}
?>

Essa função é inútil partindo de que cada vez que ela é chamada, ela coloca em $a o valor 0 e imprime "0". A instrução $a++ , que aumenta o valor da variável não tem sentido desde que a função sai e a variável $a desaparece. Para faze-la mais útil como contadora sem deixar de perder o sua conta atual, a variável $a é declarada como estática:

Exemplo #5 Exemplo de uso de variáveis estáticas

<?php
function Teste()
{
    static $a = 0;
    echo $a;
    $a++;
}
?>

Agora, cada vez que a função Teste() for chamada ele imprimirá o valor de $a e o incrementará.

Variáveis estáticas fornecem uma solução ideal para funções recursivas. Uma função recursiva é aquela se chama a si mesma. Cuidados especiais precisam ser tomados quando escrevendo funções recursivas porque é possível que ela continue na recursão indefinidamente. Você tem de ter certeza que há uma maneira segura de terminar a recursão. A seguinte função recursiva conta até 10, utilizando a variável estática $count para saber quando parar:

Exemplo #6 Variáveis estáticas em funções recursivas

<?php
function Teste()
{
    static $count = 0;

    $count++;
    echo $count;
    if ($count < 10) {
        Test ();
    }
    $count--;
}
?>

Nota:

Variáveis estáticas podem ser declaradas como nos exemplos acima. A tentativa de assimilar valores para essas variáveis com resultados de expressões causarão um erro de interpretação (parse).

Exemplo #7 Declarando variáveis static

<?php
function foo(){
    static $int = 0;          // correro
    static $int = 1+2;        // errado (é uma expressão)
    static $int = sqrt(121);  // wrong  (é uma expressão também)

    $int++;
    echo $int;
}
?>

Referencias em variáveis globais e estáticas

A Zend Engine 1, base do PHP 4, implementa os modificadores static e global para variáveis na questão de referências. Por exemplo, uma veriável global importada dentro do escopo de uma função com a instrução global atualmente cria uma referência para a variável global. Isto pode causar comportamentos impresíveis para os seguintes casos:

<?php
function test_global_ref() {
    global $obj;
    $obj = &new stdclass;
}

function test_global_noref() {
    global $obj;
    $obj = new stdclass;
}

test_global_ref();
var_dump($obj);
test_global_noref();
var_dump($obj);
?>

Executando esse exemplo você terá as seguites saídas:

NULL
object(stdClass)(0) {
}

Uma situação similar se aplica ao modificador static. Referências não são armazenadas estaticamente:

<?php
function &get_instance_ref() {
    static $obj;

    echo 'Objeto estatico: ';
    var_dump($obj);
    if (!isset($obj)) {
        // Assimila uma referencia a variavel estatica
        $obj = &new stdclass;
    }
    $obj->property++;
    return $obj;
}

function &get_instance_noref() {
    static $obj;

    echo "Objeto estatico: ";
    var_dump($obj);
    if (!isset($obj)) {
        // Assimila o objeto para a veriavel estatica
        $obj = new stdclass;
    }
    $obj->property++;
    return $obj;
}

$obj1 = get_instance_ref();
$still_obj1 = get_instance_ref();
echo "\n";
$obj2 = get_instance_noref();
$still_obj2 = get_instance_noref();
?>

Executando esse exemplo você terá as seguites saídas:

Objeto estatico: NULL
Objeto estatico: NULL

Objeto estatico: NULL
Objeto estatico: object(stdClass)(1) {
["property"]=>
int(1)
}

Este exemplo demonstra que quando assimilando uma referência para uma variável estática, ela não se lembra quando você chama a função &get_instance_ref() uma segunda vez.

Variáveis Pré-definidas
Variáveis variáveis
Variáveis


Variáveis variáveis

As vezes é conveniente poder trabalhar com variáveis variáveis. Isto é, nomes de variáveis que pode ser criadas e utilizadas dinamicamente. Uma variável normal é criada numa instrução como:

<?php
$a = 'hello';
?>

Uma variável variável pega o valor de uma variável e a trata como o nome de uma variável. No exemplo acima, hello pode ser utilizada como o nome de uma variável utilizando dois sinais de cifrão:

<?php
$$a = "world";
?>

Neste ponto, duas variáveis foram definidas e preservadas na árvore de símbolos do PHP: $a contendo "hello" e $hello contendo "world". Da mesma forma, esta instrução:

<?php
echo "$a ${$a}";
?>

produz a mesma saida que:

<?php
echo "$a $hello";
?>

no caso: hello world.

Para poder utilizar variáveis variáveis com arrays, você precisa resolver um problema de ambigüidade. Assim, se você escrever $$a[1] então o interpretador pode entender que você quer usar $a[1] como uma variável ou que você quer usar $$a como uma variável e [1] como o índice dessa variável. A sintaxe para resolver essa ambigüidade é ${$a[1]} para o primeiro caso e ${$a}[1] para o segundo.

Aviso

Note que variáveis variáveis não podem ser utilizadas com os novos arrays superglobais dentro de funções ou métodos de classes. A variável $this é também uma variável especial e não pode ser referenciada dinamicamente.

Escopo de variáveis
Variáveis de fontes externas
Variáveis


Variáveis de fontes externas

Formulários HTML (GET and POST)

Quando um formulário é submetido para um script PHP, qualquer variável do formulário será automaticamente disponível para o script. Há várias maneiras de acessar estas informações, por exemplo:

Exemplo #1 Um formulário HTML simples

<form action="foo.php" method="post">
    Nome:  <input type="text" name="username" /><br />
    Email: <input type="text" name="email" /><br />
    <input type="submit" name="submit" value="Me aperte!" />
</form>

Dependendo da configuração local e suas preferencias pessoais, essas são as vias pela qual você pode acessar os dados de seus formulários:

Exemplo #2 Acessando dados de um formulário HTML via POST

<?php
// Disponível desde o PHP 4.1.0

   echo $_POST['username'];
   echo $_REQUEST['username'];

   import_request_variables('p', 'p_');
   echo $p_username;

// Indisponivel desde o PHP 6. A partir do PHP 5.0.0, essas longas
// variaveis pré-definidas podem ser desabilitadas pela diretiva register_long_arrays.

   echo $HTTP_POST_VARS['username'];

// Disponível se a diretiva register_globals = on.
// Desde o PHP 4.2.0 o valor default de register_globals é off
// Usar/manter esse método é preferível.

   echo $username;
?>

Utilizar um formulário GET é similar, exceto que você use a variável GET pré-definida. O metodo GET obtem os dados da QUERY_STRING (a informação depois do '?' numa URL). Então, por exemplo, http://www.example.com/test.php?id=3 contém os dados GET que serão acessíveis com $_GET['id']. Veja também $_REQUEST e import_request_variables().

Nota:

Arrays superglobais, como $_POST e $_GET, estão disponíveis desde o PHP 4.1.0.

Como explicado, antes do PHP 4.2.0 o valor default de register_globals era on. E no PHP ele era sempre on. A comunidade PHP está encorajando todos a não alterarem essa diretiva, assumindo-a sempre como off e codificando em conformidade com isso.

Nota:

A diretiva de configuração magic_quotes_gpc afeta os valores de GET, POST e Cookies. Se estiver ativada, o valor (It's "PHP!") se tornará automaticamente (It\'s \"PHP!\"). Escaping é necessário para inserção em bancos de dados. Veja também addslashes(), stripslashes() e magic_quotes_sybase.

O PHP entende arrays no contexto de variáveis de formulários (veja o FAQ relacionado). Você pode, por exemplo, agrupar variáveis relacionadas juntas, ou usar esse recurso para receber valores de um campo de seleção múltipla. Por exemplo, podemos ter um formulario que manda informações para si mesmo até um comando submetido para mostrar todos os dados.

Exemplo #3 Variáveis de formulários mais complexos

<?php
if ($_POST) {
    echo '<pre>';
    echo htmlspecialchars(print_r($_POST, true));
    echo '</pre>';
} else {
?>
<form action="" method="post">
    Nome:  <input type="text" name="personal[name]" /><br />
    Email: <input type="text" name="personal[email]" /><br />
    Cerveja: <br />
    <select multiple name="beer[]">
        <option value="antartica">Antartica</option>
        <option value="brahma">Brahma</option>
        <option value="skol">Skol</option>
    </select><br />
    <input type="submit" value="Enviar dados!" />
</form>

Nomes de variáveis SUBMIT IMAGE

Quando submetendo um formulário, é possível de se utilizar imagens ao invés do botão de submit padrão com uma tag do tipo:

<input type="image" src="image.gif" name="sub" />

Quando o usuário clica em algum lugar da imagem, o formulário que o acompanha é transmitido para o servidor com duas variáveis adicionais, sub_x e sub_y. Eles contém a coordenadas do clique do usuário na imagem. Os mais experientes percebem que os atuais nomes dessas variáveis enviados pelo browser contém um ponto ao invés de um sublinhado, mas o PHP converte o ponto para um sublinhado automaticamente.

Cookies HTTP

O PHP suporta transparentemente cookies HTTP como os definidos pela » especificação da Netscape. Cookies são um mecanismo de armazenamento de dados no browser cliente e permite o rastreamento ou identificação do retorno de usuários. Você pode criar cookies com a função setcookie(). Cookies são parte do header HTTP, então, a função setcookie() precisa ser chamada antes de qualquer saída ser enviada ao browser. Esta é a mesma restrição da função header(). Dados de cookies são disponíveis nos arrays de dados de cookies apropriados, como $_COOKIE, $HTTP_COOKIE_VARS como também em $_REQUEST. Veja o manual de setcookie() para mais detalhes e exemplos.

Se você deseja assimilar vários valores para uma única variável cookie, você pode fazer dele um array:

<?php
  setcookie("MeuCookie[foo]", 'Testando 1', time()+3600);
  setcookie("MeuCookie[bar]", 'Testando 2', time()+3600);
?>

Isso irá criar dois cookies separados enquanto MeuCookie será um único array em seu script. Se você quiser colocar em apenas um cookie vários valores, considere utilizar serialize() ou explode() nos valores primeiro.

Note que um cookie substituirá um anterior com o mesmo nome em seu browser mesmo se o nome ou o caminho for diferente. Então, para uma aplicação de carrinho de compras em que você quer ter um contador e repassá-lo:

Exemplo #4 Exemplo setcookie()

<?php
if (isset($_COOKIE['count'])) {
    $count = $_COOKIE['count'] + 1;
} else {
    $count = 1;
}
setcookie('count', $count, time()+3600);
setcookie("Cart[$count]", $item, time()+3600);
?>

Pontos em nomes de variáveis postadas

Normalmente o PHP não altera o nome de variáveis quando elas são passadas para o script. Entretanto, é necessário notar que o ponto (ponto final) não é um caracter válido no nomes de variáveis do PHP. Para ilustrar, veja o seguinte exemplo:

<?php
$varname.ext;  /* nome de variável inválido */
?>
Dessa forma, o interpretador entende isso como uma variável nomeada $varname, seguida do operador de concatenação de strings, seguida de um identificador (uma string não delimitada que não bate com nenhuma palavra chave ou reservada) 'ext'. Obviamente, isso não tem os resultados pretendidos.

Nessa situação, é importante saber que o PHP automaticamente substituirá qualquer ponto nos nomes de variáveis recebidas com sublinhados.

Determinando o tipo das variáveis

Porque o PHP determina os tipos de variáveis e faz conversões (geralmente) quando necessárias, nem sempre é óbvio o tipo de uma variável tem em todos os momentos. O PHP incluí várias funções que permitem determinar qual o tipo de uma variável, por exemplo: gettype(), is_array(), is_float(), is_int(), is_object(), e is_string(). Veja também o capítulo Tipos.

Variáveis variáveis
Constantes
Variáveis


Constantes

Índice

  • Sintaxe
  • Constantes Mágicas

Uma constante é um identificador (nome) para um único valor. Como o nome sugere, esse valor não pode mudar durante a execução do script (exceção às constantes mágicas, que não são constantes de verdade). As constantes são sensíveis ao caso por padrão. Por convenção, o nomes de constantes são sempre em maiúsculas.

O nome de uma constante tem as mesmas regras de qualquer identificador no PHP. Um nome de constante válida começa com uma letra ou sublinhado, seguido por qualquer número de letras, números ou sublinhados. Em expressões regulares, ela pode ser representada por: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*

Dica

Veja também o Guia de nomenclatura em espaço de usuário.

Exemplo #5 Nomes de constantes válidos e inválidos

<?php

// Nomes de constantes válidos
define("FOO",     "alguma coisa");
define("FOO2",    "alguma outra coisa");
define("FOO_BAR", "alguma coisa mais");

// Nomes de constantes inválidas
define("2FOO",    "alguma coisa");

// Isto é válido, mas deve ser evitado:
// O PHP pode vir a fornercer uma constante mágica
// que danificará seu script
define("__FOO__", "alguma coisa");

?>

Nota: Para nossos exemplos, as letras a-z, A-Z e os caracteres ASCII do 127 ao 255 (0x7f-0xff).

Como as superglobals, o escopo de uma constante é global. Você pode acessar constantes de qualquer lugar em seu script sem se preocupar com o escopo. Para mais informações sobre o escopo no PHP, leia a seção do manual escopo de variáveis.

Variáveis de fontes externas
Sintaxe
Referência da Linguagem


Sintaxe

Você pode definir uma constante utilizando-se da função define(). Quando uma constante é definida, ela não pode ser mais modificada ou anulada.

Somente dados escalares (boolean, integer, float e string) pode ser colocados em constantes. Não defina constantes do tipo resource (recurso).

Você pode obter o valor de uma constante simplesmente especificando seu nome. Diferentemente de variáveis, você não pode prefixar uma constante com um sinal de $. Você também pode utilizar a função constant() para ler o valor de uma constante, se você precisar obter seu valor dinamicamente. Utilize get_defined_constants() para obter a lista de todas as constantes definidas.

Nota: As constantes e variáveis (globais) estão em espaços de nomes diferentes. Isto implica, por exemplo, que TRUE e $TRUE são geralmente diferentes.

Se você usar uma constante indefinida, o PHP assume o nome da constante como seu próprio valor, como se você tivesse uma string (CONSTANT vs "CONSTANT"). Um erro de nível E_NOTICE será lançado quando isso acontecer. Veja também a referência do manual sobre como $foo[bar] é errado (a não ser que você primeiro define() bar como uma constante). Se você simplesmente quer checar se uma constante foi definida, utilize a função defined().

Estas são as diferenças entre constantes e variáveis:

  • Constantes não podem ter um sinal de cifrão ($) antes delas;
  • Constantes só podem ser definidas utilizando a função define(), e não por simples assimilação;
  • Constantes podem ser definidas e acessadas de qualquer lugar sem que a regras de escopo de variáveis seja aplicadas;
  • Constantes não podem ser redefinidas ou eliminadas depois que elas são criadas; e
  • Constantes só podem conter valores escalares.

Exemplo #1 Definindo Constantes

<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // imprime "Hello world."
echo Constant; // imprime "Constant" e gera um alerta notice.
?>

Veja também Constantes de Classe.

Constantes
Constantes Mágicas
Constantes


Constantes Mágicas

O PHP fornece um grande número de predefined constants para qualquer script que ele execute. A maioria dessas constantes, entretanto, são criadas por várias extensões, e somente estarão presentes quando essas extensões estiverem disponíveis, por carregamento dinâmico ou por compilação direta.

Há sete constantes "mágicas", que mudam dependendo de onde elas são utilizadas. Por exemplo, o valor de __LINE__ depende do número da linha em que é utilizada em seu script. Essas constantes especiais são insensíveis ao caso:

Algumas constantes "mágicas" do PHP
Nome | Descrição
__LINE__ | A linha atual do script.
__FILE__ | O caminho completo e nome do arquivo. Se utilizado dentro de um include, o nome do arquivo incluído será retornado. Desde o PHP 4.0.2, __FILE__ sempre contém um caminho absoluto com links simbólicos resolvidos enquanto em versões antigas ela continha um caminho relativo sob certas circunstâncias.
__DIR__ | O diretório do arquivo. Se usado dentro de um include, o diretório do arquivo incluído é retornado. Isto é equivalente a dirname(__FILE__). Este nome do diretório não possui barra no final, a não ser que seja o diretório raiz. (Adicionado no PHP 5.3.0.)
__FUNCTION__ | O nome da função (Acrescentado no PHP 4.3.0). A partir do PHP 5 esta constante retorna o nome da função como ela foi declarada (sensível a maiúsculas e minúsculas). No PHP 4 sempre retorna o nome em minúsculas.
__CLASS__ | O nome da classe (Acrescentado no PHP 4.3.0). A partir do PHP 5 esta constante retorna o nome da função como ela foi declarada (sensível a maiúsculas e minúsculas). No PHP 4 sempre retorna o nome em minúsculas.
__METHOD__ | O nome do método de classe. (Acrescentado no PHP 5.0.0). O nome do método é retornado como foi declarado (sensível a maiúsculas e minúsculas).
__NAMESPACE__ | O nome do atual namespace (sensível a maiúsculas e minúsculas). Esta constante é definida em tempo de compilação (Adicionada no PHP 5.3.0).

Veja também
get_class(),
get_object_vars(),
file_exists() e
function_exists().

Sintaxe
Expressões
Constantes


Expressões

Expressões são as peças de construção mais importantes do PHP. No PHP, quase tudo o que você escreve são expressões. A maneira mais simples e ainda mais precisa de definir uma expressão é "tudo o que tem um valor".

As formas mais básicas de expressões são constantes e variáveis. Quando você digita "$a = 5", você está atribuindo '5' para $a. '5', obviamente, tem o valor 5, ou, em outras palavras, '5' é uma expressão com o valor 5 (neste caso, '5' é uma constante inteira).

Depois desta atribuição, você pode esperar que o valor de $a seja 5 também, assim se você escrever $b = $a, você pode esperar que $b se comporte da mesma forma que se você escrevesse $b = 5. Em outras palavras, $a é uma expressão com valor 5 também. Se tudo funcionou bem, isto é exatamente o que acontecerá.

Exemplos ligeiramente mais complexos para expressões são as funções. Por exemplo, considere a seguinte função:

<?php
function foo ()
{
    return 5;
}
?>

Assumindo que você está familiarizado com o conceito de funções (se não estiver, dê uma olhada no capítulo sobre functions), você pode assumir que digitar $c = foo() é essencialmente a mesma coisa que escrever $c = 5, e você está certo. Funções são expressões com o valor igual ao seu valor de retorno. Como foo() retorna 5, o valor da expressão 'foo()' é 5. Geralmente, as funções não retornam apenas um valor estático, mas computam algo.

Claro, valores em PHP não tem que ser inteiros, e muito comumente eles não são. o PHP suporta quatro tipos de valores escalares: valores integer (inteiros), valores de ponto flutuante (float), valores string (caracteres) e valores boolean (booleano) (valores escalares são valores que você não pode partir em peças menores, diferentemente de matrizes, por exemplo). O PHP também suporta dois tipos compostos (não escalar): matrizes e objetos. Cada um desses valores podem ser definidos em uma variável ou retornados de uma função.

O PHP leva as expressões muito além, da mesma maneira que muitas outras linguagens fazem. O PHP é uma linguagem orientada a expressões, no sentido de que quase tudo são expressões. Considere o exemplo com o qual já lidamos, '$a = 5'. É fácil ver que há dois valores envolvidos aqui, o valor da constante inteira '5', e o valor de $a que está sendo atualizado para 5 também. Mas a verdade é que há um valor adicional envolvido aqui, e que é o próprio valor da atribuição. A própria atribuição é avaliada com o valor atribuído, neste caso 5. Na prática, significa que '$a = 5', independente do que faça, é uma expressão com o valor 5. Portanto, escrever algo como '$b = ($a = 5)' é como escrever '$a = 5; $b = 5;' (um ponto-e-vírgula marca o fim do comando). Como atribuições são analisadas da direita para a esquerda, você também pode escrever '$b = $a = 5'.

Outro bom exemplo de orientação de expressão é o pré e o pós-incremento e decremento. Usuários de PHP 2 e muitas outras linguagens podem estar familiarizados com a notação de variável++ e variable--. Este são operadores de incremento e decrimento. No PHP/FI 2, o comando '$a++' não tem valor (não é uma expressão), e portanto você não pode atribuir desta forma ou usá-la de jeito nenhum. O PHP evoluiu a capacidade de incremento/decremento criando estas expressões também, como em C. Em PHP, como em C, há dois tipos de incremento - pré-incremento e pós-incremento. Tanto o pré-incremento quanto o pós-incremento, essencialmente, incrementam as variáveis, e o efeito sobre a variável é idêntico. A diferença é com o valor da expressão de incremento. O pré-incremento, que é escrito '++$variavel', é avaliado como o valor de incremento (o PHP incrementa a variável antes de ler seu valor, por isso o nome pré-incremento). O pós-incremento, que é escrito '$variavel++' é avaliado como o valor original da variável, antes de ser incrementada (o PHP incrementa a variável depois de ler seu valor, por isso o nome 'pós-incremento').

Um tipo muito comum de expressões são expressões de comparação. Estas expressões avaliam para ser FALSE ou TRUE. O PHP suporta > (maior que), >= (maior ou igual a), == (igual), != (diferente), < (menor que) and <= (menor ou igual a). A linguagem também suporta um conjunto de operador de equivalencia estrita: === (igual a e do mesmo tipo) and !== (diferente de ou não do mesmo tipo). Estas expressões são mais comumente usada dentro de execução condicional como comandos if.

O último exemplo de expressões com que nós vamos lidar aqui são as expressões combinadas operador-atribuição. Você já sabe que se você quer incrementar $a de 1, você só precisa escrever '$a++' ou '++$a'. Mas e se você quiser somar mais que um a ele, por exemplo 3? Você poderia escrever '$a++' várias vezes, mas esta obviamente não é uma forma muito eficiente ou confortável. Uma prática muito mais comum é escrever '$a = $a + 3'. '$a + 3' é avaliada como o valor de $a mais 3, e é atribuído de volta a $a, que resulta em incrementar $a de 3. Em PHP, como em várias outras linguagens como o C, você pode escrever isto de uma forma mais curta, que com o tempo se torna mais limpa e rápida de se entender também. Somar 3 ao valor corrente de $a pode ser escrito '$a +=3'. Isto significa exatamente "pegue o valor de $a, some 3 a ele, e atribua-o de volta a $a." Além de ser mais curto e mais limpo, isto também resulta em execução mais rápida. O valor de '$a += 3', como o valor de uma atribuição regular, é o valor atribuído. Note que NÃO é 3, mas o valor combinado de $a mais 3 (este é o valor que é atribuído a $a). Qualquer operador de dois parâmetros pode ser usado neste modo operador-atribuição, por exemplo '$a -= 5' (subtrai 5 do valor de $a), '$ b *= 7' (multiplica o valor de $b por 7), etc.

Há mais uma expressão que podem parecer estranha se você não a viu em outras linguagens, o operador condicional ternário:

<?php
$primeira ? $segunda : $terceira
?>

Se o valor da primeira sub-expressão é verdadeiro (TRUE, não-zero), então a segunda sub-expressão é avaliada, e este é o resultado da expressão condicional. Caso contrário, a terceira sub-expressão é avaliada e este é o valor.

O seguinte exemplo deve ajudá-lo a entender um pouco melhor pré e pós-incremento e expressões em geral:

<?php
function double($i)
{
    return $i*2;
}
$b = $a = 5;        /* atribui o valor cinco às variáveis $a e $b */
$c = $a++;          /* pós-incremento, atribui o valor original de $a
                       (5) para $c */
$e = $d = ++$b;     /* pré-incremento, atribui o valor incrementado de
                       $b (6) a $d e $e */

/* neste ponto, tanto $d quanto $e são iguais a 6 */

$f = double($d++);  /* atribui o dobro do valor de $d antes
                       do incremento, 2*6 = 12 a $f */
$g = double(++$e);  /* atribui o dobro do valor de $e depois
                       do incremento, 2*7 = 14 a $g */
$h = $g += 10;      /* primeiro, $g é incrementado de 10 e termina com o
                       valor 24. o valor da atribuição (24) é
                       então atribuído a $h, e $h termina com o valor
                       24 também. */
?>

Algumas expressões podem ser consideradas instruções. Neste caso, uma instrução na forma 'expr' ';' ou seja, uma expressão seguida de um ponto e vírgula. Em '$b=$a=5;', $a=5 é uma expressão válida, mas não é um comando por si só. '$b=$a=5;' porém é um comando válido.

Uma última coisa que vale mencionar é o valor-verdade de expressões. Em muitos eventos, principalmente em instruções condicionais e loops, você não está interessado no valor específico da expressão, mas somente se ela significa TRUE ou FALSE (o PHP não tem um tipo booleano dedicado). As constantes TRUE e FALSE (insensitivas ao caso) são seus dois valores booleanos possíveis. As vezes uma expressão é automaticamente convertida para um booleano. Veja a seção sobre type-casting para detalhes de como isso é feito.

O PHP fornece uma implementação completa e poderosa de expressões, e a completa documentação dela vai além do escopo deste manual. Os exemplos acima devem dar a você uma boa idéia sobre o que são as expressões e como você pode construir expressões úteis. Através do restante do manual nós escreveremos expr ou expressao para indicar qualquer expressão PHP válida.

Constantes Mágicas
Operadores
Referência da Linguagem


Operadores

Índice

  • Precedência de Operadores
  • Operadores Aritméticos
  • Operadores de Atribuição
  • Operador Bit-a-bit
  • Operadores de Comparação
  • Operadores de controle de erro
  • Operadores de Execução
  • Operadores de Incremento/Decremento
  • Operadores Lógicos
  • Operadores de String
  • Operadores de Arrays
  • Operadores de tipo

Um operador é algo que você alimenta com um ou mais valores (ou expressões, no jargão de programação) e que devolve outro valor (e por isso os próprios construtores se tormam expressões). Assim, você pode pensar que as funções e os construtores que retornam valores (como o print) são operadores e os outros que não retornam nada (como echo) como uma outra coisa.

Há três tipos de operadores. Primeiramente, os operadores unários, que operam em apenas um valor. Por exemplo, ! (operador de negação) ou o ++ (operador de incremento). No segundo grupo estão os operadores binários, o o grupo que contém a maioria dos operadores que o PHP suporta, com uma lista completa logo abaixo na seção Precedência de operadores.

O terceiro grupo é do operador ternário: ?:. Ele pode ser usado para selecionar entre dois valores dependendo de uma terceira, em vez de selecionar duas sentenças ou encadeamentos de execução. Englobar expressões ternárias com parênteses é uma boa idéia.

Expressões
Precedência de Operadores
Referência da Linguagem


Precedência de Operadores

A precedência de um operador especifica quem tem mais prioridade quando há duas delas juntas. Por exemplo, na expressão, 1 + 5 * 3, a resposta é 16 e não 18 porque o operador de multiplicação ("*") tem prioridade de precedência que o operador de adição ("+"). Parênteses podem ser utilizados para forçar a precedência, se necessário. Assim, (1 + 5) * 3 é avaliado como 18. Se a precedência do operador é igual, a associatividade da esquerda para direita é usada.

A tabela seguinte mostra a precedência dos operadores, da maior precedência no começo. Operadores com a mesma precedência estão na mesma linha, no caso a associatividade deles decidide qual ordem eles são avaliados.

Precedência dos operadores
Associação | Operador | Informação adicional
não associativo | clone new | clone e new
esquerda | [ | array()
não associativo | ++ -- | incremento/decremento
não associativo | ~ - (int) (float) (string) (array) (object) (bool) @ | tipos
não associativo | instanceof | tipos
direita | ! | lógico
esquerda | * / % | aritmético
esquerda | + - . | aritmético e string
esquerda | << >> | Bit-a-bit
não associativo | < <= > >= <> | comparação
não associativo | == != === !== | comparação
esquerda | & | Bit-a-bit e referências
esquerda | ^ | Bit-a-bit
esquerda | | | Bit-a-bit
esquerda | && | lógico
esquerda | || | lógico
esquerda | ? : | ternário
direita | = += -= *= /= .= %= &= |= ^= <<= >>= | atribuição
esquerda | and | lógico
esquerda | xor | lógico
esquerda | or | lógico
esquerda | , | muitos usos

Associatividade a esquerda significa que a expressão é avaliada da esquerda para direita, associatividade a direita o oposto.

Exemplo #1 Associatividade

<?php
$a = 3 * 3 % 5; // (3 * 3) % 5 = 4
$a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2

$a = 1;
$b = 2;
$a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5
?>
Use parênteses para aumenta a legibilidade do código.

Nota:

Mesmo tendo = menor precedência que que outros operadores, o PHP ainda permitirá expressões similares à seguinte: if (!$a = foo()), que no caso o retorno de foo() é recebido em $a.

Operadores
Operadores Aritméticos
Operadores


Operadores Aritméticos

Lembra-se da aritmética básica da escola? Estes operadores funcionam exatamente como aqueles.

Operadores Aritméticos
Exemplo | Nome | Resultado
-$a | Negação | Oposto de $a.
$a + $b | Adição | Soma de $a e $b.
$a - $b | Subtração | Diferença entre $a e $b.
$a * $b | Multiplicação | Produto de $a e $b.
$a / $b | Divisão | Quociente de $a por $b.
$a % $b | Módulo | Resto de $a dividido por $b.

O operador de divisão ("/") sempre retorna um valor com ponto flutuante, a não ser que os dois operados seja inteiros (ou strings que são convertidas para inteiros) e numéros inteiramente divisíveis, em outro caso um inteiro é retornado.

Operandos de módulo são convertidos para inteiros (removendo a parte decimal) antes de processar.

Nota: O resto de $a % $b é negativo se $a for negativo.

Veja também a página do manual funções matemáticas.

Precedência de Operadores
Operadores de Atribuição
Operadores


Operadores de Atribuição

O operador básico de atribuição é "=". A sua primeira inclinação deve ser a de pensar nisto como "é igual". Não. Isto quer dizer, na verdade, que o operando da esquerda recebe o valor da expressão da direita (ou seja, "é configurado para").

O valor de uma expressão de atribuição é o valor atribuído. Ou seja, o valor de "$a = 3" é 3. Isto permite que você faça alguns truques:

<?php

$a = ($b = 4) + 5; // $a é igual a 9 agora e $b foi configurado como 4.

?>

Além do operador básico de atribuição, há "operadores combinados" para todos os operadores aritméticos, de array e string que permitem a você pegar um valor de uma expressão e então usar seu próprio valor para o resultado daquela expressão. Por exemplo:

<?php

$a = 3;
$a += 5; // configura $a para 8, como se disséssemos: $a = $a + 5;
$b = "Bom ";
$b .= "Dia!"; // configura $b para "Bom Dia!", como em $b = $b . "Dia!";

?>

Note que a atribuição copia a variável original para a nova (atribuição por valor), assim a mudança de uma não afeta a outra. Isto pode ter relevância se você precisa copiar algo como uma grande matriz dentro de um loop longo. Atribuições por referência é também suportada, usando a sintaxe $var = &$outra_var;. 'Atribuição por referência' significa que ambas as variáveis acabam apontando para os mesmos dados, e nada é copiado para lugar nenhum. Para aprender mais sobre referências, leia Referências explicadas. No PHP 5, objetos são atribuídos por referência a menos que explícitamente feito o contrário com a nova palavra chave clone.

Operadores Aritméticos
Operador Bit-a-bit
Operadores


Operador Bit-a-bit

Operadores bit-a-bit permitem que você acione ou desligue bits específicos dentro de um inteiro. Se ambos os parâmetros da esquerda e da direita forem strings, esses operadores irão trabalhar nos valores ASCII dos caracteres.

<?php
echo 12 ^ 9; // Imprime '5'

echo "12" ^ "9"; // Imprime o caracter de volta (backspace - ASCII 8)
                 // ('1' (ASCII 49)) ^ ('9' (ASCII 57)) = #8

echo "hallo" ^ "hello"; // Imprime os valores ASCII #0 #4 #0 #0 #0
                        // 'a' ^ 'e' = #4

echo 2 ^ "3"; // Imprime '1'
// 2 ^ ((int)"3") == 1

echo "2" ^ 3; // Imprime '1'
// ((int)"2") ^ 3 == 1

?>

Operadores Bit-a-bit
Exemplo | Nome | Resultado
$a & $b | E | Os bits que estão ativos tanto em $a quanto em $b são ativados.
$a | $b | OU | Os bits que estão ativos em $a ou em $b são ativados.
$a ^ $b | XOR | Os bits que estão ativos em $a ou em $b, mas não em ambos, são ativados.
~ $a | NÃO | Os bits que estão ativos em $a não são ativados, e vice-versa.
$a << $b | Deslocamento à esquerda | Desloca os bits de $a $b passos para a esquerda (cada passo significa "multiplica por dois")
$a >> $b | Deslocamento à direita | Desloca os bits de $a $b passos para a direita (cada passo significa "divide por dois")
Aviso

Não desloque bits à direita maiores que 32 bits em sistemas 32 bits. E também a esquerda no caso do resultado ser um número maior que 32 bits.

Operadores de Atribuição
Operadores de Comparação
Operadores


Operadores de Comparação

Operadores de comparação, como os seus nomes implicam, permitem que você compare dois valores. Você pode se interessar em ver as tabelas de comparação de tipos, que tem exemplo das várias comparações entre tipos relacionadas.

Operadores de comparação
Exemplo | Nome | Resultado
$a == $b | Igual | Verdadeiro (TRUE) se $a é igual a $b.
$a === $b | Idêntico | Verdadeiro (TRUE) se $a é igual a $b, e eles são do mesmo tipo (introduzido no PHP4).
$a != $b | Diferente | Verdadeiro se $a não é igual a $b.
$a <> $b | Diferente | Verdadeiro se $a não é igual a $b.
$a !== $b | Não idêntico | Verdadeiro de $a não é igual a $b, ou eles não são do mesmo tipo (introduzido no PHP4).
$a < $b | Menor que | Verdadeiro se $a é estritamente menor que $b.
$a > $b | Maior que | Verdadeiro se $a é estritamente maior que $b.
$a <= $b | Menor ou igual | Verdadeiro se $a é menor ou igual a $b.
$a >= $b | Maior ou igual | Verdadeiro se $a é maior ou igual a $b.

Se você comparar um inteiro com uma string, a string é convertida para um número. Se você comparar 2 strings numéricas, elas serão comparadas como inteiras. Estas regras também se aplicam ao comando switch.

<?php
var_dump(0 == "a"); // 0 == 0 -> true
var_dump("1" == "01"); // 1 == 1 -> true
var_dump("1" == "1e0"); // 1 == 1 -> true

switch ("a") {
case 0:
    echo "0";
    break;
case "a": // nunca é alcançado porque "a" já foi combinado com 0
    echo "a";
    break;
}
?>

Para vários tipos, comparações são feitas de acordo com a seguinte tabela (em ordem).

Comparação com vários tipos
Tipo do 1º operando | Tipo do 2º operando | Resultado
null ou string | string | Converte NULL para "", numérico ou comparação léxica
bool or null | qualquer | Converte para bool, FALSE < TRUE
object | object | Classes nativas podem definir como são comparadas, classes diferentes são incomparáveis, mesma classe - compara propriedades igual faz arrays (PHP 4), PHP 5 tem sua explicação
string, resource ou number | string, resource ou number | Transforma strings e resources para números
array | array | Array com menos membros é menor, se a chave do operando 1 não é encontrada no operando 2, então os arrays são incomparáveis, caso contrário - compara valor por valor (veja o seguinte exemplo)
array | qualquer | array é sempre maior
object | qualquer | object é sempre maior

Exemplo #1 Transcrição do padrão de comparação de array

<?php
// Arrays are compared like this with standard comparison operators
function standard_array_compare($op1, $op2)
{
    if (count($op1) < count($op2)) {
        return -1; // $op1 < $op2
    } elseif (count($op1) > count($op2)) {
        return 1; // $op1 > $op2
    }
    foreach ($op1 as $key => $val) {
        if (!array_key_exists($key, $op2)) {
            return null; // uncomparable
        } elseif ($val < $op2[$key]) {
            return -1;
        } elseif ($val > $op2[$key]) {
            return 1;
        }
    }
    return 0; // $op1 == $op2
}
?>

Veja também strcasecmp(), strcmp(), operadores de array, e a seção do manual sobre Tipos.

Operador Ternário

Outro operador condicional é o operador "?:" (ou ternário).

Exemplo #2 Atribuindo um valor padrão

<?php
// Example usage for: Ternary Operator
$action = (empty($_POST['action'])) ? 'default' : $_POST['action'];

// The above is identical to this if/else statement
if (empty($_POST['action'])) {
    $action = 'default';
} else {
    $action = $_POST['action'];
}

?>
A expressão (expr1) ? (expr2) : (expr3) é avaliada para expr2 se expr1 é avaliada como TRUE, ou expr3 se expr1 é avaliada como FALSE.

Nota: Note que o operador ternário é um comando, e ele não é avaliado para uma variável, mas para o resultado do comando. Isto é importante saber se você quer retornar uma variável por referência. O comando return $var == 42 ? $a : $b; em uma função que retorna por referência conseqüêntemente não irá funcionar e será avisado nas últimas versões do PHP.

Nota:

É recomendado para evitar "stacking" de expressões ternárias. O comportamento do PHP quando usando mais de um operador ternário no único comando não é óbvio:

Exemplo #3 Não-óbvio comportamento do ternário

<?php
// o seguinte aparenta imprimir 'true'
echo (true?'true':false?'t':'f');

// conteudo, a saída acima é 't'
// isto por causa da expressão ternário se avaliada da esquerda pra direita

// o seguinte é a versão mais óbvia do mesmo código acima
echo ((true ? 'true' : 'false') ? 't' : 'f');

// aqui, você pode ver que a primeira expressão é avaliada para 'true', que
// por sua vez avalia para (bool)true, assim retornando a parte true da
// segunda expressão ternária.
?>

Operador Bit-a-bit
Operadores de controle de erro
Operadores


Operadores de controle de erro

O PHP suporta um operador de controle de erro: o sinal 'arroba' (@). Quando ele precede uma expressão em PHP, qualquer mensagem de erro que possa ser gerada por aquela expressão será ignorada.

Se o recurso track_errors estiver habilitado, qualquer mensagem de erro gerada pela expressão será gravada na variável $php_errormsg. Esta variável será sobrescrita em cada erro, assim verifique-a constantemente se você quiser usá-la.

<?php
/* Erro de arquivo intencional */
$my_file = @file ('arquivo_nao_existente') or
    die ("Falha abrindo arquivo: '$php_errormsg'");

// Isto funciona para qualquer expressão, não apenas para funções:
$value = @$cache[$key];
// você não receberá nenhum aviso se a chave $key não existir.

?>

Nota: O operador @ funciona somente em expressões. Uma regra simples para lembrar disso: se você pode pegar o valor de alguma coisa, você pode prefixar isso com o @. Assim, você pode prefixar chamadas de variáveis, funções e include()s, constantes e afins. Você não pode prefixar definições de funções ou classe, estruturas condicionais como o if, foreach e assim por diante.

Veja também error_reporting() e a seção do manual sobre funções de Manipulação de Erros e Logging.

Nota:

O prefixo de controle de erro "@" não desabilita mensagens que são resultado de erros de interpretação (parse errors).

Aviso

Atualmente, o operador de controle de erro "@" sempre desativa mensagens de erro, mesmo para erros críticos, que terminam a execução de scripts. Além de outras coisas, isto significa que se você usar "@" para suprimir erros de certas funções e elas não estiverem disponíveis ou com tipos incorretos, o script vai parar exatamente aí sem nenhuma indicação da razão.

Operadores de Comparação
Operadores de Execução
Operadores


Operadores de Execução

O PHP suporta um operador de execução: acentos graves (``). Note que não são apóstrofes! O PHP tentará executar o conteúdo dos acentos graves como um comando do shell; a saída será retornada (isto é, ela não será simplesmente descarregada para a saída; ela pode ser atribuída a uma variável). A utilização do operador contra-apóstrofo é idêntica a função shell_exec().

<?php
$output = `ls -al`;
echo "<pre>$output</pre>";
?>

Nota:

O operador de execução fica desabilitado quando safe mode está ativo ou shell_exec() está desabilitado.

Veja também a seção do manual sobre funções de execução de programas, popen() proc_open() e Utilizando o PHP em linha de comando.

Operadores de controle de erro
Operadores de Incremento/Decremento
Operadores


Operadores de Incremento/Decremento

O PHP suporta operadores de pré e pós-incremento e decremento no estilo C.

Nota: Os operadores incremento/decremento não afetam valores booleanos. Decrementando valores NULL não há efeito também, mas incrementando resulta em 1.

Operadores de Incremento/Decremento
Exemplo | Nome | Efeito
++$a | Pré-incremento | Incrementa $a em um, e então retorna $a.
$a++ | Pós-incremento | Retorna $a, e então incrementa $a em um.
--$a | Pré-decremento | Decrementa $a em um, e então retorna $a.
$a-- | Pós-decremento | Retorna $a, e então decrementa $a em um.

Aqui está um script de exemplo simples:

<?php
echo "<h3>Pós-incremento</h3>";
$a = 5;
echo "Deve ser 5: " . $a++ . "<br />\n";
echo "Deve ser 6: " . $a . "<br />\n";

echo "<h3>Pré-incremento</h3>";
$a = 5;
echo "Deve ser 6: " . ++$a . "<br />\n";
echo "Deve ser 6: " . $a . "<br />\n";

echo "<h3>Pós-decremento</h3>";
$a = 5;
echo "Deve ser 5: " . $a-- . "<br />\n";
echo "Deve ser 4: " . $a . "<br />\n";

echo "<h3>Pré-decremento</h3>";
$a = 5;
echo "Deve ser 4: " . --$a . "<br />\n";
echo "Deve ser 4: " . $a . "<br />\n";
?>

O PHP segue a convenção Perl quando tratando operações aritmétricas em variavéis caracter em vez da convenção C. Por exemplo, em Perl 'Z'+1 se torna 'AA', enquanto que no C 'Z'+1 se torna '[' ( ord('Z') == 90, ord('[') == 91 ). Note que variáveis caracter podem ser incrementadas mas não decrementadas e somente caracteres plain ASCII (a-z e A-Z) são suportados.

Exemplo #1 Operações aritmétricas em variáveis caractere

<?php
$i = 'W';
for ($n=0; $n<6; $n++) {
  echo ++$i . "\n";
}
?>

O exemplo acima irá imprimir:

X
Y
Z
AA
AB
AC

Incrementar ou decrementar booleanos não há efeito.

Operadores de Execução
Operadores Lógicos
Operadores


Operadores Lógicos

Operadores Lógicos
Exemplo | Nome | Resultado
$a and $b | E | Verdadeiro (TRUE) se tanto $a quanto $b são verdadeiros.
$a or $b | OU | Verdadeiro se $a ou $b são verdadeiros.
$a xor $b | XOR | Verdadeiro se $a ou $b são verdadeiros, mas não ambos.
! $a | NÃO | Verdadeiro se $a não é verdadeiro.
$a && $b | E | Verdadeiro se tanto $a quanto $b são verdadeiros.
$a || $b | OU | Verdadeiro se $a ou $b são verdadeiros.

A razão para as duas variantes dos operandos "and" e "or" é que eles operam com precedências diferentes. (Veja Precedência de Operadores.)

Exemplo #1 Ilustrando operadores lógicos

<?php

// foo() nunca será chamada como estes operadores são short-circuit
$a = (false && foo());
$b = (true  || foo());
$c = (false and foo());
$d = (true  or  foo());

// "||" tem maior precedência que "or"
$e = false || true; // $e will be assigned to (false || true) which is true
$f = false or true; // $f will be assigned to false
var_dump($e, $f);

// "&&" tem maior precedência que "and"
$g = true && false; // $g will be assigned to (true && false) which is false
$h = true and false; // $h will be assigned to true
var_dump($g, $h);
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)
bool(false)
bool(true)
Operadores de Incremento/Decremento
Operadores de String
Operadores


Operadores de String

Há dois operadores de string. O primeiro é o operador de concatenação ('.'), que retorna a concatenação dos seus argumentos direito e esquerdo. O segundo é o operador de atribuição de concatenação ('.='), que acrescenta o argumento do lado direito no argumento do lado esquerdo. Veja em Operadores de Atribuição para mais informações.

<?php
$a = "Olá ";
$b = $a . "mundo!"; // agora $b contém "Olá mundo!"

$a = "Olá ";
$a .= "mundo!";     // agora $a contém "Olá mundo!"
?>

Veja também as seções do manual sobre o tipo String e as funções de manipulação de Strings.

Operadores Lógicos
Operadores de Arrays
Operadores


Operadores de Arrays

Operadores de array
Exemplo | Nome | Resultado
$a + $b | União | União de $a e $b.
$a == $b | Igualdade | TRUE se $a e $b tem os mesmos pares de chave/valor.
$a === $b | Identidade | TRUE se $a e $b tem os mesmos pares de chave/valor na mesma ordem e do mesmo tipo.
$a != $b | Desigualdade | TRUE se $a não é igual a $b.
$a <> $b | Desigualdade | TRUE se $a não é igual a $b.
$a !== $b | Não identidade | TRUE se $a não é identico a $b.

O operador + acrescenta os elementos da direita no array da esquerda, contudo, chaves duplicadas NÃO são sobrescritas.

<?php
$a = array("a" => "maçã", "b" => "banana");
$b = array("a" =>"pêra", "b" => "framboesa", "c" => "morango");

$c = $a + $b; // Uniao de $a e $b
echo "União de \$a e \$b: \n";
var_dump($c);

$c = $b + $a; // União de $b e $a
echo "União de \$b e \$a: \n";
var_dump($c);
?>
Quando executado, o script produz uma saída assim:
União de $a e $b:
array(3) {
  ["a"]=>
  string(5) "maçã"
  ["b"]=>
  string(6) "banana"
  ["c"]=>
  string(6) "morango"
}
União de $b e $a:
array(3) {
  ["a"]=>
  string(4) "pêra"
  ["b"]=>
  string(10) "framboesa"
  ["c"]=>
  string(6) "morango"
}

Elementos do array são iguais para efeitos de comparação se eles possuem o mesmo valor e chave.

Exemplo #1 Comparando arrays

<?php
$a = array("maçã", "banana");
$b = array(1 => "banana", "0" => "maçã");

var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>

Veja também as seções do manual sobre o tipo Array e funções de manipulação de Arrays.

Operadores de String
Operadores de tipo
Operadores


Operadores de tipo

instanceof é usado para determinar se um variável do PHP é uma objeto instânciado de uma certa classe:

Exemplo #1 Usando instanceof com classes

<?php
class MyClass
{
}

class NotMyClass
{
}
$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof NotMyClass);
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

instanceof pode também ser usado para determinar se uma variável é um objeto instânciado de uma classe que herda de uma classe pai:

Exemplo #2 Usando instanceof com herança

<?php
class ParentClass
{
}

class MyClass extends ParentClass
{
}

$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof ParentClass);
?>

O exemplo acima irá imprimir:

bool(true)
bool(true)

Para verificar se um objeto não é uma instância de uma classe, o operador lógico not pode ser usado.

Exemplo #3 Usando instanceof para verificar se o objeto não é uma instância da classe

<?php
class MyClass
{
}

$a = new MyClass;
var_dump(!($a instanceof stdClass));
?>

O exemplo acima irá imprimir:

bool(true)

Por fim, instanceof pode também ser usado para determinar se uma variável é um objeto instânciado de uma classe que implementa uma interface:

Exemplo #4 Usando instanceof para classe

<?php
interface MyInterface
{
}

class MyClass implements MyInterface
{
}

$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof MyInterface);
?>

O exemplo acima irá imprimir:

bool(true)
bool(true)

Embora instanceof é usualmente usado com um nome de classe literal, ele pode também ser usado com outro objeto ou uma variável string:

Exemplo #5 Usando instanceof com outras variáveis

<?php
interface MyInterface
{
}

class MyClass implements MyInterface
{
}

$a = new MyClass;
$b = new MyClass;
$c = 'MyClass';
$d = 'NotMyClass';

var_dump($a instanceof $b); // $b é umn objeto da classe MyClass
var_dump($a instanceof $c); // $c é uma string 'MyClass'
var_dump($a instanceof $d); // $d é uma string 'NotMyClass'
?>

O exemplo acima irá imprimir:

bool(true)
bool(true)
bool(false)

Há algumas detalhes para estar ciente. Antes do PHP 5.1.0, instanceof podia chamar __autoload() quando o nome da classe não existe. Em adicional, se a classe não foi carregada, um erro fatal poderia ocorrer. Isto pode funcionar usando a dynamic class reference, ou uma variável string contendo o nome da classe:

Exemplo #6 Evitando que o nome da classe seje verificado e fatal erros com instanceof no PHP 5.0

<?php
$d = 'NotMyClass';
var_dump($a instanceof $d); // não causa erro fatal
?>

O exemplo acima irá imprimir:

bool(false)

O operador instanceof foi introduzido no PHP 5. Antes disso is_a() era usado mas is_a() tornou-se obsoleto pelo instanceof.

Veja também get_class() e is_a().

Operadores de Arrays
Estruturas de Controle
Operadores


Estruturas de Controle

Índice

  • Introdução
  • if
  • else
  • elseif/else if
  • Alternative syntax for control structures
  • while
  • do-while
  • for
  • foreach
  • break
  • continue
  • switch
  • declare
  • return
  • require
  • include
  • require_once
  • include_once
  • goto
Operadores de tipo
Introdução
Referência da Linguagem


Introdução

Qualquer script PHP é construído por uma série de instruções. Uma instrução pode ser uma atribuição, uma chamada de função, um 'loop', uma instrução condicional, ou mesmo uma instrução que não faz nada (um comando vazio). Instruções geralmente terminam com um ponto e vírgula. Além disso, as instruções podem ser agrupados em um grupo de comandos através do encapsulamento de um grupo de comandos com chaves. Um grupo de comandos é uma instrução também. Os vários tipos de instruções são descritos neste capítulo.

Estruturas de Controle
if
Estruturas de Controle


if

The if construct is one of the most important features of many languages, PHP included. It allows for conditional execution of code fragments. PHP features an if structure that is similar to that of C:

if (expr)
  statement

As described in the section about expressions, expression is evaluated to its Boolean value. If expression evaluates to TRUE, PHP will execute statement, and if it evaluates to FALSE - it'll ignore it. More information about what values evaluate to FALSE can be found in the 'Converting to boolean' section.

The following example would display a is bigger than b if $a is bigger than $b:

<?php
if ($a > $b)
  echo "a is bigger than b";
?>

Often you'd want to have more than one statement to be executed conditionally. Of course, there's no need to wrap each statement with an if clause. Instead, you can group several statements into a statement group. For example, this code would display a is bigger than b if $a is bigger than $b, and would then assign the value of $a into $b:

<?php
if ($a > $b) {
  echo "a is bigger than b";
  $b = $a;
}
?>

If statements can be nested infinitely within other if statements, which provides you with complete flexibility for conditional execution of the various parts of your program.

Introdução
else
Estruturas de Controle


else

Often you'd want to execute a statement if a certain condition is met, and a different statement if the condition is not met. This is what else is for. else extends an if statement to execute a statement in case the expression in the if statement evaluates to FALSE. For example, the following code would display a is greater than b if $a is greater than $b, and a is NOT greater than b otherwise:

<?php
if ($a > $b) {
  echo "a is greater than b";
} else {
  echo "a is NOT greater than b";
}
?>
The else statement is only executed if the if expression evaluated to FALSE, and if there were any elseif expressions - only if they evaluated to FALSE as well (see elseif).

if
elseif/else if
Estruturas de Controle


elseif/else if

elseif, as its name suggests, is a combination of if and else. Like else, it extends an if statement to execute a different statement in case the original if expression evaluates to FALSE. However, unlike else, it will execute that alternative expression only if the elseif conditional expression evaluates to TRUE. For example, the following code would display a is bigger than b, a equal to b or a is smaller than b:

<?php
if ($a > $b) {
    echo "a is bigger than b";
} elseif ($a == $b) {
    echo "a is equal to b";
} else {
    echo "a is smaller than b";
}
?>

There may be several elseifs within the same if statement. The first elseif expression (if any) that evaluates to TRUE would be executed. In PHP, you can also write 'else if' (in two words) and the behavior would be identical to the one of 'elseif' (in a single word). The syntactic meaning is slightly different (if you're familiar with C, this is the same behavior) but the bottom line is that both would result in exactly the same behavior.

The elseif statement is only executed if the preceding if expression and any preceding elseif expressions evaluated to FALSE, and the current elseif expression evaluated to TRUE.

Nota: Note that elseif and else if will only be considered exactly the same when using curly brackets as in the above example. When using a colon to define your if/elseif conditions, you must not separate else if into two words, or PHP will fail with a parse error.

<?php

/* Incorrect Method: */
if($a > $b):
    echo $a." is greater than ".$b;
else if($a == $b): // Will not compile.
    echo "The above line causes a parse error.";
endif;

/* Correct Method: */
if($a > $b):
    echo $a." is greater than ".$b;
elseif($a == $b): // Note the combination of the words.
    echo $a." equals ".$b;
else:
    echo $a." is neither greater than or equal to ".$b;
endif;

?>

else
Alternative syntax for control structures
Estruturas de Controle


Alternative syntax for control structures

PHP offers an alternative syntax for some of its control structures; namely, if, while, for, foreach, and switch. In each case, the basic form of the alternate syntax is to change the opening brace to a colon (:) and the closing brace to endif;, endwhile;, endfor;, endforeach;, or endswitch;, respectively.

<?php if ($a == 5): ?>
A is equal to 5
<?php endif; ?>

In the above example, the HTML block "A is equal to 5" is nested within an if statement written in the alternative syntax. The HTML block would be displayed only if $a is equal to 5.

The alternative syntax applies to else and elseif as well. The following is an if structure with elseif and else in the alternative format:

<?php
if ($a == 5):
    echo "a equals 5";
    echo "...";
elseif ($a == 6):
    echo "a equals 6";
    echo "!!!";
else:
    echo "a is neither 5 nor 6";
endif;
?>

Nota:

Mixing syntaxes in the same control block is not supported.

See also while, for, and if for further examples.

elseif/else if
while
Estruturas de Controle


while

while loops are the simplest type of loop in PHP. They behave just like their C counterparts. The basic form of a while statement is:

while (expr)
    statement

The meaning of a while statement is simple. It tells PHP to execute the nested statement(s) repeatedly, as long as the while expression evaluates to TRUE. The value of the expression is checked each time at the beginning of the loop, so even if this value changes during the execution of the nested statement(s), execution will not stop until the end of the iteration (each time PHP runs the statements in the loop is one iteration). Sometimes, if the while expression evaluates to FALSE from the very beginning, the nested statement(s) won't even be run once.

Like with the if statement, you can group multiple statements within the same while loop by surrounding a group of statements with curly braces, or by using the alternate syntax:

while (expr):
    statement
    ...
endwhile;

The following examples are identical, and both print the numbers 1 through 10:

<?php
/* example 1 */

$i = 1;
while ($i <= 10) {
    echo $i++;  /* the printed value would be
                   $i before the increment
                   (post-increment) */
}

/* example 2 */

$i = 1;
while ($i <= 10):
    echo $i;
    $i++;
endwhile;
?>

Alternative syntax for control structures
do-while
Estruturas de Controle


do-while

do-while loops are very similar to while loops, except the truth expression is checked at the end of each iteration instead of in the beginning. The main difference from regular while loops is that the first iteration of a do-while loop is guaranteed to run (the truth expression is only checked at the end of the iteration), whereas it may not necessarily run with a regular while loop (the truth expression is checked at the beginning of each iteration, if it evaluates to FALSE right from the beginning, the loop execution would end immediately).

There is just one syntax for do-while loops:

<?php
$i = 0;
do {
    echo $i;
} while ($i > 0);
?>

The above loop would run one time exactly, since after the first iteration, when truth expression is checked, it evaluates to FALSE ($i is not bigger than 0) and the loop execution ends.

Advanced C users may be familiar with a different usage of the do-while loop, to allow stopping execution in the middle of code blocks, by encapsulating them with do-while (0), and using the break statement. The following code fragment demonstrates this:

<?php
do {
    if ($i < 5) {
        echo "i is not big enough";
        break;
    }
    $i *= $factor;
    if ($i < $minimum_limit) {
        break;
    }
   echo "i is ok";

    /* process i */

} while (0);
?>

Don't worry if you don't understand this right away or at all. You can code scripts and even powerful scripts without using this 'feature'. Since PHP 5.3.0, it is possible to use goto operator instead of this hack.

while
for
Estruturas de Controle


for

for loops are the most complex loops in PHP. They behave like their C counterparts. The syntax of a for loop is:

for (expr1; expr2; expr3)
    statement

The first expression (expr1) is evaluated (executed) once unconditionally at the beginning of the loop.

In the beginning of each iteration, expr2 is evaluated. If it evaluates to TRUE, the loop continues and the nested statement(s) are executed. If it evaluates to FALSE, the execution of the loop ends.

At the end of each iteration, expr3 is evaluated (executed).

Each of the expressions can be empty or contain multiple expressions separated by commas. In expr2, all expressions separated by a comma are evaluated but the result is taken from the last part. expr2 being empty means the loop should be run indefinitely (PHP implicitly considers it as TRUE, like C). This may not be as useless as you might think, since often you'd want to end the loop using a conditional break statement instead of using the for truth expression.

Consider the following examples. All of them display the numbers 1 through 10:

<?php
/* example 1 */

for ($i = 1; $i <= 10; $i++) {
    echo $i;
}

/* example 2 */

for ($i = 1; ; $i++) {
    if ($i > 10) {
        break;
    }
    echo $i;
}

/* example 3 */

$i = 1;
for (; ; ) {
    if ($i > 10) {
        break;
    }
    echo $i;
    $i++;
}

/* example 4 */

for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);
?>

Of course, the first example appears to be the nicest one (or perhaps the fourth), but you may find that being able to use empty expressions in for loops comes in handy in many occasions.

PHP also supports the alternate "colon syntax" for for loops.

for (expr1; expr2; expr3):
    statement
    ...
endfor;

Its a common thing to many users to iterate though arrays like in the example below.

<?php
/*
* This is an array with some data we want to modify
* when running through the for loop.
*/
$people = Array(
        Array('name' => 'Kalle', 'salt' => 856412),
        Array('name' => 'Pierre', 'salt' => 215863)
        );

for($i = 0; $i < sizeof($people); ++$i)
{
    $people[$i]['salt'] = rand(000000, 999999);
}
?>

The problem lies in the second for expression. This code can be slow because it has to calculate the size of the array on each iteration. Since the size never change, it can be optimized easily using an intermediate variable to store the size and use in the loop instead of sizeof. The example below illustrates this:

<?php
$people = Array(
        Array('name' => 'Kalle', 'salt' => 856412),
        Array('name' => 'Pierre', 'salt' => 215863)
        );

for($i = 0, $size = sizeof($people); $i < $size; ++$i)
{
    $people[$i]['salt'] = rand(000000, 999999);
}
?>

do-while
foreach
Estruturas de Controle


foreach

PHP 4 introduced a foreach construct, much like Perl and some other languages. This simply gives an easy way to iterate over arrays. foreach works only on arrays, and will issue an error when you try to use it on a variable with a different data type or an uninitialized variable. There are two syntaxes; the second is a minor but useful extension of the first:

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

The first form loops over the array given by array_expression. On each loop, the value of the current element is assigned to $value and the internal array pointer is advanced by one (so on the next loop, you'll be looking at the next element).

The second form does the same thing, except that the current element's key will be assigned to the variable $key on each loop.

As of PHP 5, it is possible to iterate objects too.

Nota:

When foreach first starts executing, the internal array pointer is automatically reset to the first element of the array. This means that you do not need to call reset() before a foreach loop.

Nota:

Unless the array is referenced, foreach operates on a copy of the specified array and not the array itself. foreach has some side effects on the array pointer. Don't rely on the array pointer during or after the foreach without resetting it.

As of PHP 5, you can easily modify array's elements by preceding $value with &. This will assign reference instead of copying the value.

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
unset($value); // break the reference with the last element
?>
This is possible only if iterated array can be referenced (i.e. is variable), that means the following code won't work:
<?php
foreach (array(1, 2, 3, 4) as &$value) {
    $value = $value * 2;
}

?>

Aviso

Reference of a $value and the last array element remain even after the foreach loop. It is recommended to destroy it by unset().

Nota:

foreach does not support the ability to suppress error messages using '@'.

You may have noticed that the following are functionally identical:

<?php
$arr = array("one", "two", "three");
reset($arr);
while (list(, $value) = each($arr)) {
    echo "Value: $value<br />\n";
}

foreach ($arr as $value) {
    echo "Value: $value<br />\n";
}
?>
The following are also functionally identical:
<?php
$arr = array("one", "two", "three");
reset($arr);
while (list($key, $value) = each($arr)) {
    echo "Key: $key; Value: $value<br />\n";
}

foreach ($arr as $key => $value) {
    echo "Key: $key; Value: $value<br />\n";
}
?>

Some more examples to demonstrate usages:

<?php
/* foreach example 1: value only */

$a = array(1, 2, 3, 17);

foreach ($a as $v) {
    echo "Current value of \$a: $v.\n";
}

/* foreach example 2: value (with its manual access notation printed for illustration) */

$a = array(1, 2, 3, 17);

$i = 0; /* for illustrative purposes only */

foreach ($a as $v) {
    echo "\$a[$i] => $v.\n";
    $i++;
}

/* foreach example 3: key and value */

$a = array(
    "one" => 1,
    "two" => 2,
    "three" => 3,
    "seventeen" => 17
);

foreach ($a as $k => $v) {
    echo "\$a[$k] => $v.\n";
}

/* foreach example 4: multi-dimensional arrays */
$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";

foreach ($a as $v1) {
    foreach ($v1 as $v2) {
        echo "$v2\n";
    }
}

/* foreach example 5: dynamic arrays */

foreach (array(1, 2, 3, 4, 5) as $v) {
    echo "$v\n";
}
?>

for
break
Estruturas de Controle


break

break ends execution of the current for, foreach, while, do-while or switch structure.

break accepts an optional numeric argument which tells it how many nested enclosing structures are to be broken out of.

<?php
$arr = array('one', 'two', 'three', 'four', 'stop', 'five');
while (list(, $val) = each($arr)) {
    if ($val == 'stop') {
        break;    /* You could also write 'break 1;' here. */
    }
    echo "$val<br />\n";
}

/* Using the optional argument. */

$i = 0;
while (++$i) {
    switch ($i) {
    case 5:
        echo "At 5<br />\n";
        break 1;  /* Exit only the switch. */
    case 10:
        echo "At 10; quitting<br />\n";
        break 2;  /* Exit the switch and the while. */
    default:
        break;
    }
}
?>

foreach
continue
Estruturas de Controle


continue

continue is used within looping structures to skip the rest of the current loop iteration and continue execution at the condition evaluation and then the beginning of the next iteration.

Nota: Note that in PHP the switch statement is considered a looping structure for the purposes of continue.

continue accepts an optional numeric argument which tells it how many levels of enclosing loops it should skip to the end of.

Nota:

continue 0; and continue 1; is the same as running continue;.

<?php
while (list($key, $value) = each($arr)) {
    if (!($key % 2)) { // skip odd members
        continue;
    }
    do_something_odd($value);
}

$i = 0;
while ($i++ < 5) {
    echo "Outer<br />\n";
    while (1) {
        echo "&nbsp;&nbsp;Middle<br />\n";
        while (1) {
            echo "&nbsp;&nbsp;Inner<br />\n";
            continue 3;
        }
        echo "This never gets output.<br />\n";
    }
    echo "Neither does this.<br />\n";
}
?>

Omitting the semicolon after continue can lead to confusion. Here's an example of what you shouldn't do.

<?php
for ($i = 0; $i < 5; ++$i) {
    if ($i == 2)
        continue
    print "$i\n";
}
?>

One can expect the result to be :

0
1
3
4

but this script will output :

2

because the return value of the print() call is int(1), and it will look like the optional numeric argument mentioned above.

break
switch
Estruturas de Controle


switch

The switch statement is similar to a series of IF statements on the same expression. In many occasions, you may want to compare the same variable (or expression) with many different values, and execute a different piece of code depending on which value it equals to. This is exactly what the switch statement is for.

Nota: Note that unlike some other languages, the continue statement applies to switch and acts similar to break. If you have a switch inside a loop and wish to continue to the next iteration of the outer loop, use continue 2.

Nota:

Note that switch/case does loose comparision.

The following two examples are two different ways to write the same thing, one using a series of if and elseif statements, and the other using the switch statement:

Exemplo #1 switch structure

<?php
if ($i == 0) {
    echo "i equals 0";
} elseif ($i == 1) {
    echo "i equals 1";
} elseif ($i == 2) {
    echo "i equals 2";
}

switch ($i) {
    case 0:
        echo "i equals 0";
        break;
    case 1:
        echo "i equals 1";
        break;
    case 2:
        echo "i equals 2";
        break;
}
?>

Exemplo #2 switch structure allows usage of strings

<?php
switch ($i) {
    case "apple":
        echo "i is apple";
        break;
    case "bar":
        echo "i is bar";
        break;
    case "cake":
        echo "i is cake";
        break;
}
?>

It is important to understand how the switch statement is executed in order to avoid mistakes. The switch statement executes line by line (actually, statement by statement). In the beginning, no code is executed. Only when a case statement is found with a value that matches the value of the switch expression does PHP begin to execute the statements. PHP continues to execute the statements until the end of the switch block, or the first time it sees a break statement. If you don't write a break statement at the end of a case's statement list, PHP will go on executing the statements of the following case. For example:

<?php
switch ($i) {
    case 0:
        echo "i equals 0";
    case 1:
        echo "i equals 1";
    case 2:
        echo "i equals 2";
}
?>

Here, if $i is equal to 0, PHP would execute all of the echo statements! If $i is equal to 1, PHP would execute the last two echo statements. You would get the expected behavior ('i equals 2' would be displayed) only if $i is equal to 2. Thus, it is important not to forget break statements (even though you may want to avoid supplying them on purpose under certain circumstances).

In a switch statement, the condition is evaluated only once and the result is compared to each case statement. In an elseif statement, the condition is evaluated again. If your condition is more complicated than a simple compare and/or is in a tight loop, a switch may be faster.

The statement list for a case can also be empty, which simply passes control into the statement list for the next case.

<?php
switch ($i) {
case 0:
case 1:
case 2:
    echo "i is less than 3 but not negative";
    break;
case 3:
    echo "i is 3";
}
?>

A special case is the default case. This case matches anything that wasn't matched by the other cases. For example:

<?php
switch ($i) {
    case 0:
        echo "i equals 0";
        break;
    case 1:
        echo "i equals 1";
        break;
    case 2:
        echo "i equals 2";
        break;
    default:
       echo "i is not equal to 0, 1 or 2";
}
?>

The case expression may be any expression that evaluates to a simple type, that is, integer or floating-point numbers and strings. Arrays or objects cannot be used here unless they are dereferenced to a simple type.

The alternative syntax for control structures is supported with switches. For more information, see Alternative syntax for control structures.

<?php
switch ($i):
    case 0:
        echo "i equals 0";
        break;
    case 1:
        echo "i equals 1";
        break;
    case 2:
        echo "i equals 2";
        break;
    default:
        echo "i is not equal to 0, 1 or 2";
endswitch;
?>

Its possible to use a semicolon instead of a colon after a case like:

<?php
switch($beer)
{
    case 'tuborg';
    case 'carlsberg';
    case 'heineken';
        echo 'Good choice';
    break;
    default;
        echo 'Please make a new selection...';
    break;
}
?>

continue
declare
Estruturas de Controle


declare

The declare construct is used to set execution directives for a block of code. The syntax of declare is similar to the syntax of other flow control constructs:

declare (directive)
    statement

The directive section allows the behavior of the declare block to be set. Currently only two directives are recognized: the ticks directive (See below for more information on the ticks directive) and the encoding directive (See below for more information on the encoding directive).

Nota: The encoding directive was added in PHP 5.3.0

The statement part of the declare block will be executed - how it is executed and what side effects occur during execution may depend on the directive set in the directive block.

The declare construct can also be used in the global scope, affecting all code following it (however if the file with declare was included then it does not affect the parent file).

<?php
// these are the same:

// you can use this:
declare(ticks=1) {
    // entire script here
}

// or you can use this:
declare(ticks=1);
// entire script here
?>

Ticks

A tick is an event that occurs for every N low-level tickable statements executed by the parser within the declare block. The value for N is specified using ticks=N within the declare blocks's directive section.

Not all statements are tickable. Typically, condition expressions and argument expressions are not tickable.

The event(s) that occur on each tick are specified using the register_tick_function(). See the example below for more details. Note that more than one event can occur for each tick.

Exemplo #1 Tick usage example

<?php

declare(ticks=1);

// A function called on each tick event
function tick_handler()
{
    echo "tick_handler() called\n";
}

register_tick_function('tick_handler');

$a = 1;

if ($a > 0) {
    $a += 2;
    print($a);
}

?>

Exemplo #2 Ticks usage example

<?php

function tick_handler()
{
  echo "tick_handler() called\n";
}

$a = 1;
tick_handler();

if ($a > 0) {
    $a += 2;
    tick_handler();
    print($a);
    tick_handler();
}
tick_handler();

?>

See also register_tick_function() and unregister_tick_function().

Encoding

A script's encoding can be specified per-script using the encoding directive.

Exemplo #3 Declaring an encoding for the script.

<?php
declare(encoding='ISO-8859-1');
// code here
?>

Cuidado

When combined with namespaces, the only legal syntax for declare is declare(encoding='...'); where ... is the encoding value. declare(encoding='...') {} will result in a parse error when combined with namespaces.

The encoding declare value is ignored in PHP 5.3 unless php is compiled with --enable-zend-multibyte.

Note that PHP does not expose whether --enable-zend-multibyte was used to compile PHP other than by phpinfo().

switch
return
Estruturas de Controle


return

If called from within a function, the return() statement immediately ends execution of the current function, and returns its argument as the value of the function call. return() will also end the execution of an eval() statement or script file.

If called from the global scope, then execution of the current script file is ended. If the current script file was include()ed or require()ed, then control is passed back to the calling file. Furthermore, if the current script file was include()ed, then the value given to return() will be returned as the value of the include() call. If return() is called from within the main script file, then script execution ends. If the current script file was named by the auto_prepend_file or auto_append_file configuration options in php.ini, then that script file's execution is ended.

For more information, see Returning values.

Nota: Note that since return() is a language construct and not a function, the parentheses surrounding its arguments are not required. It is common to leave them out, and you actually should do so as PHP has less work to do in this case.

Nota: If no parameter is supplied, then the parentheses must be omitted and NULL will be returned. Calling return() with parentheses but with no arguments will result in a parse error.

Nota: You should never use parentheses around your return variable when returning by reference, as this will not work. You can only return variables by reference, not the result of a statement. If you use return ($a); then you're not returning a variable, but the result of the expression ($a) (which is, of course, the value of $a).

declare
require
Estruturas de Controle


require

return
include
Estruturas de Controle
PHP Manual

require()

require() is identical to include() except upon failure it will also produce a fatal E_COMPILE_ERROR level error. In other words, it will halt the script whereas include() only emits a warning (E_WARNING) which allows the script to continue.

See the include() documentation for how this works.

return
include
Estruturas de Controle


include

require
require_once
Estruturas de Controle
PHP Manual

include()

The include() statement includes and evaluates the specified file.

The documentation below also applies to require().

Files are included based on the file path given or, if none is given, the include_path specified. If the file isn't found in the include_path, include() will finally check in the calling script's own directory and the current working directory before failing. The include() construct will emit a warning if it cannot find a file; this is different behavior from require(), which will emit a fatal error.

If a path is defined — whether absolute (starting with a drive letter or \ on Windows, or / on Unix/Linux systems) or relative to the current directory (starting with . or ..) — the include_path will be ignored altogether. For example, if a filename begins with ../, the parser will look in the parent directory to find the requested file.

For more information on how PHP handles including files and the include path, see the documentation for include_path.

When a file is included, the code it contains inherits the variable scope of the line on which the include occurs. Any variables available at that line in the calling file will be available within the called file, from that point forward. However, all functions and classes defined in the included file have the global scope.

Exemplo #1 Basic include() example

vars.php
<?php

$color = 'green';
$fruit = 'apple';

?>

test.php
<?php

echo "A $color $fruit"; // A

include 'vars.php';

echo "A $color $fruit"; // A green apple

?>

If the include occurs inside a function within the calling file, then all of the code contained in the called file will behave as though it had been defined inside that function. So, it will follow the variable scope of that function. An exception to this rule are magic constants which are evaluated by the parser before the include occurs.

Exemplo #2 Including within functions

<?php

function foo()
{
    global $color;

    include 'vars.php';

    echo "A $color $fruit";
}

/* vars.php is in the scope of foo() so     *
* $fruit is NOT available outside of this  *
* scope.  $color is because we declared it *
* as global.                               */

foo();                    // A green apple
echo "A $color $fruit";   // A green

?>

When a file is included, parsing drops out of PHP mode and into HTML mode at the beginning of the target file, and resumes again at the end. For this reason, any code inside the target file which should be executed as PHP code must be enclosed within valid PHP start and end tags.

If "URL fopen wrappers" are enabled in PHP (which they are in the default configuration), you can specify the file to be included using a URL (via HTTP or other supported wrapper - see Supported Protocols and Wrappers for a list of protocols) instead of a local pathname. If the target server interprets the target file as PHP code, variables may be passed to the included file using a URL request string as used with HTTP GET. This is not strictly speaking the same thing as including the file and having it inherit the parent file's variable scope; the script is actually being run on the remote server and the result is then being included into the local script.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

Exemplo #3 include() through HTTP

<?php

/* This example assumes that www.example.com is configured to parse .php
* files and not .txt files. Also, 'Works' here means that the variables
* $foo and $bar are available within the included file. */

// Won't work; file.txt wasn't handled by www.example.com as PHP
include 'http://www.example.com/file.txt?foo=1&bar=2';

// Won't work; looks for a file named 'file.php?foo=1&bar=2' on the
// local filesystem.
include 'file.php?foo=1&bar=2';

// Works.
include 'http://www.example.com/file.php?foo=1&bar=2';

$foo = 1;
$bar = 2;
include 'file.txt';  // Works.
include 'file.php';  // Works.

?>

Aviso

Security warning

Remote file may be processed at the remote server (depending on the file extension and the fact if the remote server runs PHP or not) but it still has to produce a valid PHP script because it will be processed at the local server. If the file from the remote server should be processed there and outputted only, readfile() is much better function to use. Otherwise, special care should be taken to secure the remote script to produce a valid and desired code.

See also Remote files, fopen() and file() for related information.

Handling Returns: It is possible to execute a return() statement inside an included file in order to terminate processing in that file and return to the script which called it. Also, it's possible to return values from included files. You can take the value of the include call as you would a normal function. This is not, however, possible when including remote files unless the output of the remote file has valid PHP start and end tags (as with any local file). You can declare the needed variables within those tags and they will be introduced at whichever point the file was included.

Because include() is a special language construct, parentheses are not needed around its argument. Take care when comparing return value.

Exemplo #4 Comparing return value of include

<?php
// won't work, evaluated as include(('vars.php') == 'OK'), i.e. include('')
if (include('vars.php') == 'OK') {
    echo 'OK';
}

// works
if ((include 'vars.php') == 'OK') {
    echo 'OK';
}
?>

Exemplo #5 include() and the return() statement

return.php
<?php

$var = 'PHP';

return $var;

?>

noreturn.php
<?php

$var = 'PHP';

?>

testreturns.php
<?php

$foo = include 'return.php';

echo $foo; // prints 'PHP'

$bar = include 'noreturn.php';

echo $bar; // prints 1

?>

$bar is the value 1 because the include was successful. Notice the difference between the above examples. The first uses return() within the included file while the other does not. If the file can't be included, FALSE is returned and E_WARNING is issued.

If there are functions defined in the included file, they can be used in the main file independent if they are before return() or after. If the file is included twice, PHP 5 issues fatal error because functions were already declared, while PHP 4 doesn't complain about functions defined after return(). It is recommended to use include_once() instead of checking if the file was already included and conditionally return inside the included file.

Another way to "include" a PHP file into a variable is to capture the output by using the Output Control Functions with include(). For example:

Exemplo #6 Using output buffering to include a PHP file into a string

<?php
$string = get_include_contents('somefile.php');

function get_include_contents($filename) {
    if (is_file($filename)) {
        ob_start();
        include $filename;
        $contents = ob_get_contents();
        ob_end_clean();
        return $contents;
    }
    return false;
}

?>

In order to automatically include files within scripts, see also the auto_prepend_file and auto_append_file configuration options in php.ini.

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

See also require(), require_once(),
include_once(), get_included_files(),
readfile(), virtual(), and
include_path.

require
require_once
Estruturas de Controle


require_once

include
include_once
Estruturas de Controle
PHP Manual

require_once()

The require_once() statement is identical to require() except PHP will check if the file has already been included, and if so, not include (require) it again.

See the include_once() documentation for information about the _once behaviour, and how it differs from its non _once siblings.

include
include_once
Estruturas de Controle


include_once

require_once
goto
Estruturas de Controle
PHP Manual

include_once()

The include_once() statement includes and evaluates the specified file during the execution of the script. This is a behavior similar to the include() statement, with the only difference being that if the code from a file has already been included, it will not be included again. As the name suggests, it will be included just once.

include_once() may be used in cases where the same file might be included and evaluated more than once during a particular execution of a script, so in this case it may help avoid problems such as function redefinitions, variable value reassignments, etc.

See the include() documentation for information about how this function works.

Nota:

With PHP 4, _once functionality differs with case-insensitive operating systems (like Windows) so for example:

Exemplo #1 include_once() with a case insensitive OS in PHP 4

<?php
include_once "a.php"; // this will include a.php
include_once "A.php"; // this will include a.php again! (PHP 4 only)
?>

This behaviour changed in PHP 5, so for example with Windows the path is normalized first so that C:\PROGRA~1\A.php is realized the same as C:\Program Files\a.php and the file is included just once.

require_once
goto
Estruturas de Controle


goto

The goto operator can be used to jump to another section in the program. The target point is specified by a label followed by a colon, and the instruction is given as goto followed by the desired target label. This is not a full unrestricted goto. The target label must be within the same file and context, meaning that you cannot jump out of a function or method, nor can you jump into one. You also cannot jump into any sort of loop or switch structure. You may jump out of these, and a common use is to use a goto in place of a multi-level break.

Exemplo #1 goto example

<?php
goto a;
echo 'Foo';

a:
echo 'Bar';
?>

O exemplo acima irá imprimir:

Bar

Exemplo #2 goto loop example

<?php
for($i=0,$j=50; $i<100; $i++) {
  while($j--) {
    if($j==17) goto end;
  }
}
echo "i = $i";
end:
echo 'j hit 17';
?>

O exemplo acima irá imprimir:

j hit 17

Exemplo #3 This will not work

<?php
goto loop;
for($i=0,$j=50; $i<100; $i++) {
  while($j--) {
    loop:
  }
}
echo "$i = $i";
?>

O exemplo acima irá imprimir:

Fatal error: 'goto' into loop or switch statement is disallowed in
script on line 2

Nota:

The goto operator is available as of PHP 5.3.

What's the worse thing that could happen if you use goto?
Image courtesy of » xkcd

include_once
Funções
Estruturas de Controle


Funções

Índice

  • Funções definidas pelo usuário
  • Argumentos de funções
  • Retornando valores
  • Funções variáveis
  • Funções internas (built-in)
  • Funções anonimas
goto
Funções definidas pelo usuário
Referência da Linguagem


Funções definidas pelo usuário

Uma função pode ser definida usando a seguinte sintaxe:

Exemplo #1 Pseudo-código de demonstração de uma função

<?php
function foo ($arg_1, $arg_2, /* ..., */ $arg_n)
{
    echo "Exemplo de função.\n";
    return $valor_retornado;
}
?>

Qualquer código PHP válido pode aparecer dentro de uma função, mesmo outras funções e definições de classes.

Nomes de funções seguem as mesmas regras que outros rótulo no PHP. Um nome de função válido começa com uma letra ou um sublinhado, seguido, seguido por qualquer número de letras, números ou sublinhado. Com uma expressão regular, seria expressado com: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*.

Dica

Veja também o Guia de nomenclatura em espaço de usuário.

As funções não precisam ser criadas antes de serem referenciadas, exceto quando uma função é condicionalmente definida como mostrado nos dois exemplos abaixo.

Quando uma função é definida condicionalmente como nos dois exemplos abaixo, sua definição precisa ser processada antes de ser chamada.

Exemplo #2 Funções definidas condicionalmente

<?php

$makefoo = true;

/* Nos nao podemos chamar foo() daqui
   porque ela ainda não existe,
   mas nos podemos chamar bar() */

bar();

if ($makefoo) {
  function foo ()
  {
    echo "Eu não existo até que o programa passe por aqui.\n";
  }
}

/* Agora nos podemos chamar foo()
   porque $makefoo foi avaliado como true */

if ($makefoo) foo();

function bar()
{
  echo "Eu existo imediatamente desde o programa começar.\n";
}

?>

Exemplo #3 Funções dentro de funções

<?php
function foo()
{
  function bar()
  {
    echo "Eu não existo até foo() ser chamada.\n";
  }
}

/* Nós não podemos chamar bar() ainda
   porque ela ainda não foi definida. */

foo();

/* Agora nós podemos chamar bar(),
   porque o processamento de foo()
   tornou a primeira acessivel */

bar();

?>

Todas as funções e classes no PHP tem escopo global - elas podem ser chamadas fora de uma função mesmo que tenham sido definidas dentro e vice-versa.

O PHP não suporta sobrecarga de funções, e também não é possível cancelar ou alterar a definição de funções previamente declaradas.

Nota: Nomes de funções são insensíveis ao caso, mas é melhor chamar as funções da mesma forma que ela aparecem nas declarações.

Ambos número variável de argumentos e argumentos padrões são suportados em funções. veja também as referencias das funções func_num_args(), func_get_arg() e func_get_args() para mais informações.

É possível chamar funções recursivas no PHP. Entretanto evite o uso de funções/métodos recursivos com mais de 100-200 níveis de recursão já que isso pode estourar a pilha e causar o encerramento do script atual.

Exemplo #4 Funções Recursivas

<?php
function recursion($a)
{
    if ($a < 20) {
        echo "$a\n";
        recursion($a + 1);
    }
}
?>

Funções
Argumentos de funções
Funções


Argumentos de funções

Informações podem ser passadas para funções através da lista de argumentos, que é uma lista de expressões delimitados por vírgulas.

O PHP suporta a passagem de argumentos por valor (the default), passagem por referência, e valores padrões de argumentos. lista de argumentos de tamanho variável também são suportadas, veja também a referência das funções func_num_args(), func_get_arg(), e func_get_args() para maiores informações.

Exemplo #1 Passando arrays para funções

<?php
function takes_array($input)
{
    echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}
?>

Fazendo argumentos serem passados por referência

Por padrão, argumentos de função são passados por valor (de forma que se você mudar o valor do parâmetro dentro da função, ele não é alterado fora da função). Para permitir que uma função modifique os seus argumentos, eles devem ser passados por referência.

Para ter um argumento para uma função sempre passado por referência, adicione antes dele um "e comercial" (&) ao nome do argumento na definição da função:

Exemplo #2 Passando parâmetros de função por referência

<?php
function add_some_extra(&$string)
{
    $string .= ' e alguma coisa mais.';
}
$str = 'Isto é uma string,';
add_some_extra($str);
echo $str;    // imprime 'Isto é uma string, e alguma coisa mais.'
?>

Valores padrão de argumentos

Uma função pode definir valores padrão no estilo C++ para argumentos escalares, como a seguir:

Exemplo #3 Utilizando parâmetros padrão em funções

<?php
function cafeteira ($tipo = "cappuccino")
{
    return "Fazendo uma xícara de café $tipo.\n";
}
echo cafeteira ();
echo makecoffee(null);
echo cafeteira ("expresso");
?>

A saída do código acima será:

Fazendo uma xícara de café cappucino.
Fazendo uma xícara de .
Fazendo uma xícara de café expresso.

O PHP também permite o uso def arrays e do tipo especial NULL como valores padrões, por exemplo:

Exemplo #4 Usando tipos não escalares como valores padrões

<?php
function makecoffee($types = array("cappuccino"), $coffeeMaker = NULL)
{
    $device = is_null($coffeeMaker) ? "hands" : $coffeeMaker;
    return "Making a cup of ".join(", ", $types)." with $device.\n";
}
echo makecoffee();
echo makecoffee(array("cappuccino", "lavazza"), "teapot");
?>

O valor padrão precisa ser uma expressão constante, não (por exemplo) uma variável, um membro de classe ou uma chamada de função.

Note que usando argumentos padrão, qualquer padrão deve vir após os argumentos sem padrão: caso contrário, as coisas não funcionarão como esperado. Considere o seguinte trecho de código:

Exemplo #5 Uso incorreto de parâmetros padrão de função

<?php
function iogurtera ($tipo = "azeda", $sabor)
{
    return "Fazendo uma taça de $sabor $tipo.\n";
}

echo iogurtera ("framboesa");   // não funciona como esperado
?>

A saída do exemplo acima é:

Warning: Missing argument 2 in call to iogurtera() in
/usr/local/etc/httpd/htdocs/php3test/functest.html on line 41
Fazendo uma taça de framboesa.

Agora, compare o que está acima com este:

Exemplo #6 Uso correto de parâmetros padrão de função

<?php
function iogurtera ($sabor, $tipo = "azeda")
{
    return "Fazendo uma taça de $sabor $tipo.\n";
}

echo iogurtera ("framboesa");   // funciona
?>

A saída deste exemplo é:

Fazendo uma taça de framboesa azeda.

Nota: A partir do PHP 5, os valores padrões são passados por referência.

Número variável de argumentos

O PHP4 e posteriores tem suporte para um número variável de argumentos
nas funções definidas pelo usuário. Isto é realmente bem fácil, usando
as funções func_num_args(),
func_get_arg() e
func_get_args().

Nenhuma sintaxe especial é requerida, e a lista de argumentos ainda pode ser fornecida explicitamente com as definições de funções e se comportarão normalmente.

Funções definidas pelo usuário
Retornando valores
Funções


Retornando valores

Valores podem ser retornados utilizando a instrução opcional return. Qualquer tipo pode ser retornado, incluindo arrays e objetos. Isto faz com que as função termine sua execução imediatamente e passa o controle de volta para a linha de onde ela foi chamada. Veja a documentação da função return() para maiores informações.

Exemplo #1 O uso de return()

<?php
function quadrado ($num)
{
    return $num * $num;
}
echo quadrado (4);   // imprime '16'.
?>

Você não pode retornar múltiplos valores a partir de uma função, mas resultados similares podem ser obtidos retornando um array.

Exemplo #2 Retornando um array para devolver vários valores

<?php
function numeros_pequenos()
{
    return array (0, 1, 2);
}
list ($zero, $um, $dois) = numeros_pequenos();
?>

Para retornar uma referência de uma função, use o operador de referência & em ambas a declaração da função e quando definindo o valor para a variável.

Exemplo #3 Retornando uma referência de uma função

<?php
function &retorna_referencia()
{
    return $alguma_referencia;
}

$nova_referencia =& retorna_referencia();
?>

Para mais detalhes sobre referências, leia a seção Referências.

Argumentos de funções
Funções variáveis
Funções


Funções variáveis

O PHP suporta o conceito de funções variáveis. Isto significa que se um nome de variável tem parênteses no final dela, o PHP procurará uma função com o mesmo nome, qualquer que seja a avaliação da variável, e tentará executá-la. Entre outras coisas, isto pode ser usado para implementar callbacks, tabelas de função e assim por diante.

Funções variáveis não funcionam com construtores de linguagem como echo(), print(), unset(), isset(), empty(), include(), require() e outras assim. Utilize uma função de wrapper para usar quaisquer um destes construtores como uma função variável.

Exemplo #1 Exemplo de funções variáveis

<?php
function foo() {
    echo "Chamou foo()<br>\n";
}

function bar($arg = '')
{
    echo "Chamou bar(); com argumento '$arg'.<br />\n";
}

// Essa eh uma funcao wrapper para echo()
function echoit($string)
{
    echo $string;
}

$func = 'foo';
$func();        // Chama foo()

$func = 'bar';
$func('test');  // Chama bar()

$func = 'echoit';
$func('test');  // Chama echoit()
?>

Um metodo de um objeto também pode ser chamado com a sintaxe de funções variáveis.

Exemplo #2 Exemplo de chama de método variável

<?php
class Foo
{
    function MetodoVariavel()
    {
        $name = 'Bar';
        $this->$name(); // Isto chama o método Bar()
    }

    function Bar()
    {
        echo "Bar foi chamada!";
    }
}

$foo = new Foo();
$funcname = "MetodoVariavel";
$foo->$funcname();  // Isto chama $foo->MetodoVariavel()

?>

Veja também call_user_func(), variáveis variáveis e function_exists().

Retornando valores
Funções internas (built-in)
Funções


Funções internas (built-in)

O PHP vem por padrão com muitas funções e contrutores. Também existem funções que necessitam que uma extenção especifica esteja compilada, se não erros fatais "undefined function" (função não definida) irão aparecer. Por exemplo, para usar as funções image como imagecreatetruecolor(), o PHP deve ser compilado com suporte GD. Ou, para usar mysql_connect(), PHP deve ser compilado com suporte MySQL. Existem muitas funções do núcleo que são incluídas em cada versão do PHP, como string e variable. Uma chamada a phpinfo() ou get_loaded_extensions() irá mostras quais extenções estão carregadas no PHP. Note também que várias extenções são ativadas por padrão e que o manual do PHP é dividido por extenção. Veja configução, instalação, e os capitulos individuais das extenções para como configurar o PHP.

A leitura e entendimento de um protótipo de função é explicado na seção do manual entitulada como ler uma definição de função. É importante perceber o que a função retorna ou se a função trabalha diretamente no valor passado como argumento. Por exemplo, str_replace() irá retornar a string modificada enquanto usort() trabalha na própria variável passada no argumento. Cada página do manual também contém informações específicas de cada função, como: parâmetros da função, mudanças de comportamento, valores de retorno tanto para sucesso e erros, como outras informações disponíveis. O conhecimento destas diferenças importantes é crucial para escrever corretamente seu código PHP.

Nota: Se os parâmetros dados a uma função não forem o que ela espera, como passar um array aonde um string é esperado, o valor de retorno da função é indefinido. Neste caso provavelmente irá retornar NULL mas isto é apenas uma convenção, e você não pode depender disso.

Veja também function_exists(), a referência de funções, get_extension_funcs() e dl().

Funções variáveis
Funções anonimas
Funções


Funções anonimas

funções anonimas, também conhecidas como closures, permitem a criação de funções que não tem o nome especificado. Elas são mais úteis como o valor de parâmetros callback, mas podem tem vários outros usos.

Exemplo #1 Exemplo de Função Anonima

<?php
echo preg_replace_callback('~-([a-z])~', function ($match) {
    return strtoupper($match[1]);
}, 'hello-world');
// outputs helloWorld
?>

Closures também podem ser usadas como valores de variáveis; PHP automaticamente converte expessões assim em instancias da classe interna Closure. Definindo um closure a uma variável usa a mesma sintaxe que qualquer outra definição, incluindo o ponto-e-vírgula:

Exemplo #2 Exemplo de como definir uma função anonima para uma variável

<?php
$greet = function($name)
{
    printf("Hello %s\r\n", $name);
};

$greet('World');
$greet('PHP');
?>

Closures também podem herdar variáveis do escopo pai. Quaisquer variável assim deve ser declarada no cabeçalho da função. Herdar variáveis do escopo pai não é o mesmo que usar variáveis globais. Variáveis globais existem no escopo global, o qual é o mesmo não importa a função sendo executada. O escopo pai de um closure é a função no qual o closure foi declarado (não necessáriamente a função apartir do qual ele foi chamado). Veja o exemplo a seguir:

Exemplo #3 Closures e escopo

<?php
// A basic shopping cart which contains a list of added products
// and the quantity of each product. Includes a method which
// calculates the total price of the items in the cart using a
// closure as a callback.
class Cart
{
    const PRICE_BUTTER  = 1.00;
    const PRICE_MILK    = 3.00;
    const PRICE_EGGS    = 6.95;

    protected   $products = array();

    public function add($product, $quantity)
    {
        $this->products[$product] = $quantity;
    }

    public function getQuantity($product)
    {
        return isset($this->products[$product]) ? $this->products[$product] :
               FALSE;
    }

    public function getTotal($tax)
    {
        $total = 0.00;

        $callback =
            function ($quantity, $product) use ($tax, &$total)
            {
                $pricePerItem = constant(__CLASS__ . "::PRICE_" .
                    strtoupper($product));
                $total += ($pricePerItem * $quantity) * ($tax + 1.0);
            };

        array_walk($this->products, $callback);
        return round($total, 2);;
    }
}

$my_cart = new Cart;

// Add some items to the cart
$my_cart->add('butter', 1);
$my_cart->add('milk', 3);
$my_cart->add('eggs', 6);

// Print the total with a 5% sales tax.
print $my_cart->getTotal(0.05) . "\n";
// The result is 54.29
?>

Funções anonimas são atualmente implementadas usando a classe Closure. Este é um detalhe da implementação e você não deve se importar.

Nota: Funções anonimas estão disponíveis desde PHP 5.3.0.

Nota: É possível usar func_num_args(), func_get_arg(), e func_get_args() de um closure.

Funções internas (built-in)
Classes e Objetos
Funções


Classes e Objetos

Índice

  • Introdução
  • O Básico
  • Properties
  • Constantes do Objeto
  • Autoloading Objects
  • Construtores e Destrutores
  • Visibilidade
  • Object Inheritance
  • Operador de Resolução de Escopo (::)
  • Palavra-Chave 'static'
  • Abstração de Objetos
  • Interfaces de Objetos
  • Sobrecarga
  • Iteração de Objetos
  • Patterns
  • Métodos Mágicos
  • Palavra-Chave 'final'
  • Clonando objetos
  • Comparando objetos
  • Indução de Tipo
  • Late Static Bindings
  • Objetos e Referências
  • Object Serialization
Funções anonimas
Introdução
Referência da Linguagem


Introdução

Apartir do PHP 5, o modelo de objetos foi rescrito para permitir melhor performance e mais funcionalidades. Esta é uma grande modificação do PHP 4. PHP 5 tem um modelo de objetos completo.

Entre outras novidades do PHP 5 estão a inclusão de visibility, classes e metodos abstract e final, additional metodos mágicos, interfaces, clonagem e dica de tipo.

O PHP trata objetos da mesma maneira que referencias ou manipuladores, significando que cada variável contém uma referencia a um objeto ao invés de uma cópia de todo o objeto. Veja Objetos e Referencias

Dica

Veja também o Guia de nomenclatura em espaço de usuário.

Classes e Objetos
O Básico
Classes e Objetos


O Básico

Classe

Toda definição de classe começa com a palavra-chave class, seguido por um nome da classe, que pode ser qualquer nome que não seja uma palavra reservada no PHP, seguido por um par de chaves, que contém a definição dos membros e métodos da classe. Uma pseudo variável, $this, está disponível quando um método é chamado dentro de um contexto de objeto. $this é uma referência para o objeto chamador do método (normalmente o objeto ao qual o método pertence, mas pode ser outro objeto, se o método é chamado estaticamente no contexto de um objeto secundário). Isso é ilustrado no exemplo a seguir:

Exemplo #1 Variável $this em linguagens com orientação a objetos

<?php
class A
{
    function foo()
    {
        if (isset($this)) {
            echo '$this está definida (';
            echo get_class($this);
            echo ")\n";
        } else {
            echo "\$this não está definida.\n";
        }
    }
}

class B
{
    function bar()
    {
        A::foo();
    }
}

$a = new A();
$a->foo();
A::foo();
$b = new B();
$b->bar();
B::bar();
?>

O exemplo acima irá imprimir:

$this está definida (A)
$this não está definida.
$this está definida (B)
$this não está definida.

Exemplo #2 Definição de SimpleClass

<?php
class SimpleClass
{
    // declaração de membro
    public $var = 'um valor padrão';

    // declaração de método
    public function displayVar() {
        echo $this->var;
    }
}
?>

O valor padrão deve ser uma expressão constante, não (por exemplo) uma variável, um membro da classe ou uma chamada de função.

Exemplo #3 Valor padrão de membros da classe

<?php
class SimpleClass
{
    // declarações de membro inválidas
    public $var1 = 'olá '.'mundo';
    public $var2 = <<<EOD
olá mundo
EOD;
    public $var3 = 1+2;
    public $var4 = self::myStaticMethod();
    public $var5 = $myVar;

    // declarações de membro válidas
    public $var6 = myConstant;
    public $var7 = self::classConstant;
    public $var8 = array(true, false);

}
?>

Nota:

Existem algumas funções legais para lidar com classes e objetos. É bom dar uma olhada nas funções de Classe/Objeto.

Diferente de heredocs, nowdocs pode ser usado no contexto de dado estático.

Exemplo #4 Exemplo com dado estático

<?php
class foo {
    // A partir do PHP 5.3.0
    public $bar = <<<'EOT'
bar
EOT;
}
?>

Nota:

Suporte a Nowdoc foi adicionado no PHP 5.3.0.

new

Para criar uma instância de uma classe, um novo objeto deve ser criado e atribuído a uma variável. Um objeto sempre será atribuído quando for criado um novo objeto, a não ser que o objeto tenha um construtor definido que dispare uma exceção por um erro. Classes devem ser definidas antes de serem instanciadas (e em alguns casos isso é um requerimento).

Exemplo #5 Criando uma instância

<?php
$instance = new SimpleClass();
?>

No contexto da classe, é possível criar um novo objeto por new self and new parent.

Quando atribuir uma instância já criada de um objeto a uma variável nova, a variável nova irá acessar a mesma instância do objeto que foi atribuído. Esse comportamento se mantém quando passando instâncias a uma função. Uma nova instância de um objeto já criado pode ser feita clonando o mesmo.

Exemplo #6 Atribuição de Objetos

<?php
$assigned   =  $instance;
$reference  =& $instance;

$instance->var = '$assigned terá esse valor';

$instance = null; // $instance e $reference tornam-se nulos

var_dump($instance);
var_dump($reference);
var_dump($assigned);
?>

O exemplo acima irá imprimir:

NULL
NULL
object(SimpleClass)#1 (1) {
   ["var"]=>
     string(30) "$assigned terá esse valor"
}

extends

Uma classe pode herdar métodos e membros de outra classe usando a palavra-chave extends na sua declaração. Não é possível herdar classes múltiplas, uma classe só pode herdar uma classe base.

Os métodos e membros herdados podem ser sobrescritos, a não ser que a classe pai definiu um método como final, redeclarando eles com o mesmo nome definido na classe pai. É possível acessar os métodos sobrescritos ou membros estáticos referenciado-os com parent::

Exemplo #7 Herança da Classe Simples

<?php
class ExtendClass extends SimpleClass
{
    // Redefine o método pai
    function displayVar()
    {
        echo "Classe Herdeira\n";
        parent::displayVar();
    }
}

$extended = new ExtendClass();
$extended->displayVar();
?>

O exemplo acima irá imprimir:

Classe Herdeira
um valor padrão
Introdução
Properties
Classes e Objetos


Properties

Class member variables are called "properties". You may also see them referred to using other terms such as "attributes" or "fields", but for the purposes of this reference we will use "properties". They are defined by using one of the keywords public, protected, or private, followed by a normal variable declaration. This declaration may include an initialization, but this initialization must be a constant value--that is, it must be able to be evaluated at compile time and must not depend on run-time information in order to be evaluated.

See Visibilidade for more information on the meanings of public, protected, and private.

Nota:

In order to maintain backward compatibility with PHP 4, PHP 5 will still accept the use of the keyword var in property declarations instead of (or in addition to) public, protected, or private. However, var is no longer required. In versions of PHP from 5.0 to 5.1.3, the use of var was considered deprecated and would issue an E_STRICT warning, but since PHP 5.1.3 it is no longer deprecated and does not issue the warning.

If you declare a property using var instead of one of public, protected, or private, then PHP 5 will treat the property as if it had been declared as public.

Within class methods the properties, constants, and methods may be accessed by using the form $this->property (where property is the name of the property) unless the access is to a static property within the context of a static class method, in which case it is accessed using the form self::$property. See Static Keyword for more information.

The pseudo-variable $this is available inside any class method when that method is called from within an object context. $this is a reference to the calling object (usually the object to which the method belongs, but possibly another object, if the method is called statically from the context of a secondary object).

Exemplo #1 property declarations

<?php
class SimpleClass
{
   // invalid property declarations:
   public $var1 = 'hello ' . 'world';
   public $var2 = <<<EOD
hello world
EOD;
   public $var3 = 1+2;
   public $var4 = self::myStaticMethod();
   public $var5 = $myVar;

   // valid property declarations:
   public $var6 = myConstant;
   public $var7 = array(true, false);

   // This is allowed only in PHP 5.3.0 and later.
   public $var8 = <<<'EOD'
hello world
EOD;
}
?>

Nota:

There are some nice functions to handle classes and objects. You might want to take a look at the Class/Object Functions.

Unlike heredocs, nowdocs can be used in any static data context, including property declarations.

Exemplo #2 Example of using a nowdoc to initialize a property

<?php
class foo {
   // As of PHP 5.3.0
   public $bar = <<<'EOT'
bar
EOT;
}
?>

Nota:

Nowdoc support was added in PHP 5.3.0.

O Básico
Constantes do Objeto
Classes e Objetos


Constantes do Objeto

É possível definir valores constantes em cada classe permanecendo a mesma e imutável. Constantes diferem de variáveis normais no não uso do símbolo $ para declará-las ou usá-las.

O valor deve ser uma expressão constante, não podendo ser (por exemplo) uma variável, um membro de uma classe, o resultado de uma operação matemática, ou uma chamada de função.

É possível também interfaces terem constantes. Veja na documentação de interface os exemplos.

No PHP 5.3.0, é possível referenciar a classe usando uma variável. O valor da variável não pode ser uma palavra chave (e.g. self, parent e static).

Exemplo #1 Definindo e usando uma constante

<?php
class MinhaClasse
{
    const constante = 'valor constante';

    function mostrarConstante() {
        echo  self::constante . "\n";
    }
}

echo MinhaClasse::constante . "\n";

$classname = "MinhaClasse";
echo $classname::constante; // A partir do PHP 5.3.0

$classe = new MinhaClasse();
$classe->mostrarConstante();

echo $classe::constante; // A partir do PHP 5.3.0
?>

Exemplo #2 Exemplo com informação estática

<?php
class foo {
    // A partir do PHP 5.3.0
    const bar = <<<'EOT'
bar
EOT;
}
?>

Diferente de heredocs, nowdocs pode ser usado no contexto de dado estático.

Nota:

Suporte a nowdoc foi adicionado no PHP 5.3.0.

Properties
Autoloading Objects
Classes e Objetos


Autoloading Objects

Muitos desenvolvedores ao desenvolver aplicações orientadas a objeto criam um arquivo PHP para cada definição de classe. Um dos maiores contratempos é ter de escrever uma longa lista de includes no início de cada script(um include para cada classe necessária).

Com PHP 5 isso não é mais necessário. Você pode definir uma função __autoload que é automaticamente chamada no caso de você tentar usar uma classe/interface que ainda não foi definida. Ao chamar essa função o 'scripting engine' tem uma última chance para carregar a classe antes que o PHP falhe com erro.

Nota:

Exceções disparadas em função __autoload não pode ser obtida num bloco catch, resultando em um erro fatal.

Nota:

Autoloading não é disponível usando PHP em modo interativo CLI.

Nota:

Se o nome da classe é usado e.g. em call_user_func() então ela pode conter alguns perigosos caracteres como ../. É recomendado não usar entrada de usuário nestas funções ou verificar a entrada na __autoload().

Exemplo #1 Exemplo de Autoload

Essse exemplo tenta carregar as classes MyClass1 e MyClass2 dos arquivos MyClass1.php e MyClass2.php respectivamente.

<?php
function __autoload($class_name) {
    require_once $class_name . '.php';
}

$obj  = new MyClass1();
$obj2 = new MyClass2();
?>

Exemplo #2 Outro exemplo de Autoload

Este exemplo tenta carregar a interface ITest.

<?php

function __autoload($name) {
    var_dump($name);
}

class Foo implements ITest {
}

/*
string(5) "ITest"

Fatal error: Interface 'ITest' not found in ...
*/
?>

Constantes do Objeto
Construtores e Destrutores
Classes e Objetos


Construtores e Destrutores

Construtores

void __construct ([ mixed $args [, $... ]] )

PHP 5 permite que os desenvolvedores declarem métodos construtores para as classes. Classes que tem um método construtor chamam esse método cada vez que um objeto novo é criado, então é apropriado para qualquer inicialização que o objeto possa vir a precisar antes de ser usado.

Nota: Construtores pais não são chamados implicitamente se a classe filha define um construtor. Para executar o construtor da classe pai, uma chamada a parent::__construct() dentro do construtor da classe filha é necessária.

Exemplo #1 Usando novos construtores unificados

<?php
class ClasseBase {
   function __construct() {
       print "No construtor da ClasseBase\n";
   }
}

class SubClasse extends ClasseBase {
   function __construct() {
       parent::__construct();
       print "No construtor da SubClasse\n";
   }
}

$obj = new ClasseBase();
$obj = new SubClasse();
?>

Para garantir compatibilidade reversa, se o PHP 5 não conseguir achar uma função __construct() para uma determinada classe, ele procurará pela função construtora à moda-antiga, que tenha o mesmo nome da classe. Efetivamente, significa que o único caso que pode gerar problemas de compatibilidade seria se a classe tiver um método chamado __construct() que fosse usado para outra finalidade que não inicializar o objeto.

Destrutor

void __destruct ( void )

PHP 5 introduz um conceito de destrutor similar ao de outras linguagens orientadas a objeto, como o Java. O método destrutor será chamado assim que todas as referências a um objeto particular forem removidas ou quando o objeto for explicitamente destruído ou qualquer ordem na sequência de encerramento.

Exemplo #2 Exemplo de Destrutor

<?php
class MinhaClasseDestruivel {
   function __construct() {
       print "No construtor\n";
       $this->name = "MinhaClasseDestruivel";
   }

   function __destruct() {
       print "Destruindo " . $this->name . "\n";
   }
}

$obj = new MinhaClasseDestruivel();
?>

Como os construtores, destrutores pais não serão chamados implicitamente pelo engine. Para executar o destrutor pai, deve-se fazer uma chamada explicitamente a parent::__destruct() no corpo do destrutor.

Nota:

Destrutores são chamados durante o encerramento do script tendo os cabeçalhos HTTP enviados. No diretório atual do script a fase de encerramento pode ser diferente com algumas SAPIs (e.g. Apache).

Nota:

Tentar disparar uma exceção em um destrutor (chamado no término do script) causa um erro fatal.

Autoloading Objects
Visibilidade
Classes e Objetos


Visibilidade

A visibilidade de uma propriedade ou método pode ser definida prefixando a declaração com as palavras-chave: 'public','protected' ou 'private'. Itens declarados como public podem ser acessados por todo mundo. Protected limita o acesso a classes herdadas (e para a classe que define o item). Private limita a visibilidade para apenas a classe que define o item.

Visibilidade dos membros

Membros de uma classe devem ser definidos com public, private, ou protected.

Exemplo #1 Declaração de Membros

<?php
/**
 * Define MinhaClasse
 */
class MinhaClasse
{
    public $publica = 'Public';
    protected $protegida = 'Protected';
    private $privada = 'Private';

    function imprimeAlo()
    {
        echo $this->publica;
        echo $this->protegida;
        echo $this->privada;
    }
}

$obj = new MinhaClasse();
echo $obj->publica; // Funciona
echo $obj->protegida; // Erro Fatal
echo $obj->privada; // Erro Fatal
$obj->imprimeAlo(); // Mostra Public, Protected e Private

/**
 * Define MinhaClasse2
 */
class MinhaClasse2 extends MinhaClasse
{
    // Nós podemos redeclarar as propriedades públicas e protegidas mas não as privadas
    protected $protegida = 'Protected2';

    function imprimeAlo()
    {
        echo $this->publica;
        echo $this->protegida;
        echo $this->privada;
    }
}

$obj2 = new MinhaClasse2();
echo $obj2->publica; // Works
echo $obj2->privada; // Undefined
echo $obj2->protegida; // Fatal Error
$obj2->imprimeAlo(); // Mostra Public, Protected2, Undefined

?>

Nota: O uso da declaração de variável com a palavra-chave var ainda é suportada por razões de compatibilidade (como um sinônicom para a palavra-chave public). No PHP 5 antes do 5.1.3, seu uso geraria um aviso do tipo E_STRICT.

Visibilidades de métodos

Métodos de classe devem ser definidos com public, private, ou protected. Métodos sem qualquer declaração são definidas como public.

Exemplo #2 Declaração de método

<?php
/**
 * Define MinhaClasse
 */
class MinhaClasse
{
    // Declara um construtor público
    public function __construct() { }

    // Declara um método public
    public function MeuPublico() { }

    // Declara um método protected
    protected function MeuProtegido() { }

    // Declara um método private
    private function MeuPrivado() { }

    // Esse é public
    function Foo()
    {
        $this->MeuPublico();
        $this->MeuProtegido();
        $this->MeuPrivado();
    }
}

$minhaclasse = new MinhaClasse;
$minhaclasse->MeuPublico(); // Funciona
$minhaclasse->MeuProtegido(); // Erro Fatal
$minhaclasse->MeuPrivado(); // Erro Fatal
$minhaclasse->Foo(); // Public, Protected e Private funcionam

/**
 * Define MinhaClasse2
 */
class MinhaClasse2 extends MinhaClasse
{
    // Esse é public
    function Foo2()
    {
        $this->MeuPublico();
        $this->MeuProtegido();
        $this->MeuPrivado(); // Erro Fatal
    }
}

$minhaclasse2 = new MinhaClasse2;
$minhaclasse2->MeuPublico(); // Funciona
$minhaclasse2->Foo2(); // Public e Protected funcionam, Private não

class Bar
{
    public function test() {
        $this->testPrivate();
        $this->testPublic();
    }

    public function testPublic() {
        echo "Bar::testPublic\n";
    }

    private function testPrivate() {
        echo "Bar::testPrivate\n";
    }
}

class Foo extends Bar
{
    public function testPublic() {
        echo "Foo::testPublic\n";
    }

    private function testPrivate() {
        echo "Foo::testPrivate\n";
    }
}

$myFoo = new foo();
$myFoo->test(); // Bar::testPrivate
                // Foo::testPublic
?>

Construtores e Destrutores
Object Inheritance
Classes e Objetos


Object Inheritance

Inheritance is a well-established programming principle, and PHP makes use of this principle in its object model. This principle will affect the way many classes and objects relate to one another.

For example, when you extend a class, the subclass inherits all of the public and protected methods from the parent class. Unless a class overrides those methods, they will retain their original functionality.

This is useful for defining and abstracting functionality, and permits the implementation of additional functionality in similar objects without the need to reimplement all of the shared functionality.

Nota:

Unless autoloading is used, then classes must be defined before they are used. If a class extends another, then the parent class must be declared before the child class structure. This rule applies to class that inherit other classes and interfaces.

Exemplo #1 Inheritance Example

<?php

class foo
{
    public function printItem($string)
    {
        echo 'Foo: ' . $string . PHP_EOL;
    }

    public function printPHP()
    {
        echo 'PHP is great.' . PHP_EOL;
    }
}

class bar extends foo
{
    public function printItem($string)
    {
        echo 'Bar: ' . $string . PHP_EOL;
    }
}

$foo = new foo();
$bar = new bar();
$foo->printItem('baz'); // Output: 'Foo: baz'
$foo->printPHP();       // Output: 'PHP is great'
$bar->printItem('baz'); // Output: 'Bar: baz'
$bar->printPHP();       // Output: 'PHP is great'

?>
Visibilidade
Operador de Resolução de Escopo (::)
Classes e Objetos


Operador de Resolução de Escopo (::)

O Operador de Resolução de Escopo, também chamado de Paamayim Nekudotayim, ou em termos mais simples, dois pontos duplo, é um token que permite acesso a métodos ou membros estáticos, constantes, e sobrecarregados de uma classe.

Quando referenciando esses itens de fora da definição da classe, você usa o nome da classe.

No PHP 5.3.0, é possível referenciar o nome da classe usando uma variável. O valor da variável não pode ser uma palavra chave (e.g. self, parent e static).

Paamayim Nekudotayim pode parecer, de inicio, uma escolha estranha para um dois pontos duplo. No entanto, na hora de escrever o Engine da Zend 0.5 (que provia o PHP3), foi o que a equipe da Zend decidiu. Realmente significa dois pontos duplo - em Hebreu!

Exemplo #1 :: de fora da definição da classe

<?php
class MinhaClasse {
  const VALOR_CONST = 'Um valor constante';
}

$classname = 'MinhaClasse';
echo $classname::VALOR_CONST; // No PHP 5.3.0

echo MinhaClasse::VALOR_CONST;
?>

Duas palavras-chaves especiais self e parent são usadas para acessar membros ou métodos de dentro da definição da classe.

Exemplo #2 :: de dentro da definição da classe

<?php
class OutraClasse extends MinhaClasse {
  public static $meu_estatico = 'variável estática';

  public static function doisPontosDuplo() {
     echo parent::VALOR_CONST . "\n";
     echo self::$meu_estatico . "\n";
  }
}

$classname = 'OutraClasse';
echo $classname::doisPontosDuplo(); // No PHP 5.3.0

OutraClasse::doisPontosDuplo();
?>

Quando uma subclasse sobrecarrega a definição de um método do pai, php não chamará o método pai. Fica a cargo da subclasse chamar o método pai ou não. Isso também aplica a definições de métodos Construtores and Destrutores, Sobrecarregados e Mágicos também.

Exemplo #3 Chamando um método pai

<?php
class MinhaClasse {

  protected function minhaFuncao() {
    echo "MinhaClasse::minhaFuncao()\n";
  }
}

class OutraClasse extends MinhaClasse {

  /* Sobrecarrega a definição do pai */
  public function minhaFuncao() {

    /* Mas ainda chama a função pai */
    parent::minhaFuncao();
    echo "OutraClasse::minhaFuncao()\n";
  }
}

$classe = new OutraClasse();
$classe->minhaFuncao();
?>
Object Inheritance
Palavra-Chave 'static'
Classes e Objetos


Palavra-Chave 'static'

Declarar membros ou métodos de uma classe como estáticos faz deles acessíveis sem precisar instanciar a classe. Um membro declarados como estático não pode ser acessado com um objeto instanciado da classe (embora métodos estáticos podem).

Por compatibilidade com o PHP 4, se nenhuma declaração de visibilidade for usada, então o membro ou método será tratado como se fosse declarado como public.

Como métodos estáticos podem ser chamados sem uma instância do objeto ter sido criada, a pseudo-variável $this não é disponível dentro do método declarado como estático.

Propriedades estáticas não podem ser acessadas pelo objeto usando o operador seta ->.

Chamar métodos não estáticos de maneira estática gera um aviso de nível E_STRICT.

Como qualquer outra variável estática do PHP, propriedades estáticas podem somente ser inicializadas usando um valor literal ou constante; expressões não são permitidas. Então você pode inicializar uma propriedade estática para um inteiro ou array (por exemplo), você não pode inicializar com outra variável, com um retorno de função, ou um objeto.

No PHP 5.3.0, é possível referenciar a classe usando uma variável. O valor da variável não pode ser uma palavra chave (e.g. self, parent e static).

Exemplo #1 Exemplo de membro estático

<?php
class Foo
{
    public static $meu_estatico = 'foo';

    public function valorEstatico() {
        return self::$meu_estatico;
    }
}

class Bar extends Foo
{
    public function fooEstatico() {
        return parent::$meu_estatico;
    }
}

print Foo::$meu_estatico . "\n";

$foo = new Foo();
print $foo->valorEstatico() . "\n";
print $foo->$meu_estatico . "\n";      // "Propriedade" Indefinida $meu_estatico

print $foo::$meu_estatico . "\n";
$classname = 'Foo';
print $classname::$meu_estatico . "\n"; // No PHP 5.3.0

print Bar::$meu_estatico . "\n";
$bar = new Bar();
print $bar->fooEstatico() . "\n";
?>

Exemplo #2 Exemplo de método estático

<?php
class Foo {
  public static function umMetodoEstatico() {
    // ...
  }
}

Foo::umMetodoEstatico();
$classname = 'Foo';
$classname::umMetodoEstatico(); // No PHP 5.3.0
?>
Operador de Resolução de Escopo (::)
Abstração de Objetos
Classes e Objetos


Abstração de Objetos

PHP 5 introduz métodos e classes abstratos. Não é permitido criar uma instância de uma class que foi definida como abstrata. Qualquer classe que contém pelo menos um método abstrato deve também ser abstrata. Métodos definidos como abstratos simplesmente declaram a assinatura do método, eles não podem definir a implementação.

Quando uma classe herda uma classe abstrata, todos os métodos marcados como abstratos na declaração da classe-pai devem ser definidos na classe filha; além disso, esses métodos devem ser definidos com a mesma (ou menos restrita) visibilidade. Por exemplo, se um método abstrado é definido como protected, a implementação da função deve ser definida ou como protected ou public, mas não private.

Exemplo #1 Exemplo de classe abstrata

<?php
abstract class ClasseAbstrata
{
    // Força a classe que extende (a subclasse) a definir esse método
    abstract protected function pegarValor();
    abstract protected function valorComPrefixo( $prefixo );

    // Método comum
    public function imprimir() {
        print $this->pegarValor();
    }
}

class ClasseConcreta1 extends ClasseAbstrata
{
    protected function pegarValor() {
        return "ClasseConcreta1";
    }

    public function valorComPrefixo( $prefixo ) {
        return "{$prefixo}ClasseConcreta1";
    }
}

class ClasseConcreta2 extends ClasseAbstrata
{
    protected function pegarValor() {
        return "ClasseConcreta2";
    }

    public function valorComPrefixo( $prefixo ) {
        return "{$prefixo}ClasseConcreta2";
    }
}

$classe1 = new ClasseConcreta1;
$classe1->imprimir();
echo $classe1->valorComPrefixo('FOO_') ."\n";

$classe2 = new ClasseConcreta2;
$classe2->imprimir();
echo $classe2->valorComPrefixo('FOO_') ."\n";
?>

O exemplo acima irá imprimir:

ConcreteClass1
FOO_ConcreteClass1
ConcreteClass2
FOO_ConcreteClass2

Código antigo que não tem classes ou funções definidas pelo usuário como 'abstract' deve ser executado sem modificações.

Palavra-Chave 'static'
Interfaces de Objetos
Classes e Objetos


Interfaces de Objetos

Interfaces de Objetos permite a criação de código que especifica quais métodos e variáveis uma classe deve implementar, sem ter que definir como esses métodos serão tratados.

Interfaces são definidas usando a palavra-chave 'interface', da mesma maneira que uma classe comum, mas sem nenhum dos métodos ter seu conteúdo definido.

Todos os métodos declarados em uma interface devem ser public, essa é a natureza de uma interface.

implements

Para implementar uma interface, o operador implements é usado. Todos os métodos na interface devem ser implementados na classe; não fazer isso resultará em um erro fatal. Classes podem implementar mais de uma interface se assim for desejado, separando cada interface com uma vírgula.

Nota:

Uma classe não pode implementar duas interfaces que compartilham o mesmo nome uma vez que isso causaria ambigüidade.

Nota:

Interfaces podem ser estendidas como classes, usando o operador extends.

Constants

É possível as interfaces terem constantes. Constantes de interfaces funcionam exatamente como class constants. Elas não podem ser sobrescritas por uma classe/interface que a herda.

Exemplos

Exemplo #1 Exemplo de Interface

<?php

// Declara a interface 'iTemplate'
interface iTemplate
{
    public function setVariable($name, $var);
    public function getHtml($template);
}

// Implementa a interface
// Isso funcionará
class Template implements iTemplate
{
    private $vars = array();

    public function setVariable($name, $var)
    {
        $this->vars[$name] = $var;
    }

    public function getHtml($template)
    {
        foreach($this->vars as $name => $value) {
            $template = str_replace('{' . $name . '}', $value, $template);
        }

        return $template;
    }
}

// Isso NÃO funcionará
// Fatal error: Class BadTemplate contains 1 abstract methods
// and must therefore be declared abstract (iTemplate::getHtml)
class BadTemplate implements iTemplate
{
    private $vars = array();

    public function setVariable($name, $var)
    {
        $this->vars[$name] = $var;
    }
}

?>

Exemplo #2 Interfaces estendíveis

<?php
interface a
{
    public function foo();
}

interface b extends a
{
    public function baz(Baz $baz);
}

// Isto irá funcionar
class c implements b
{
    public function foo()
    {
    }

    public function baz(Baz $baz)
    {
    }
}

// Isto não irá funcionar e resultará em um erro fatal
class d implements b
{
    public function foo()
    {
    }

    public function baz(Foo $foo)
    {
    }
}
?>

Exemplo #3 Interface com herança múltipla

<?php
interface a
{
    public function foo();
}

interface b
{
    public function bar();
}

interface c extends a, b
{
    public function baz();
}

class d implements c
{
    public function foo()
    {
    }

    public function bar()
    {
    }

    public function baz()
    {
    }
}
?>

Exemplo #4 Interfaces com constantes

<?php
interface a
{
    const b = 'Interface constant';
}

// Imprime: Interface constant
echo a::b;

// Isto não funcionará porque não é permitido
// sobreescrever constantes. É o mesmo conceito como
// constantes de classes
class b implements a
{
    const b = 'Class constant';
}
?>

Veja também o operador instanceof.

Abstração de Objetos
Sobrecarga
Classes e Objetos


Sobrecarga

Sobrecarga em PHP provê recursos para "criar" dinamicamente membros e métodos. Estas entidades dinâmicas são processadas via métodos mágicos que podem estabelecer em uma classe para vários tipos de ações.

Os métodos sobrecarregados são invocados quando interagem com membros ou métodos que não foram declarados ou não são visíveis no escopo corrente. O resto desta seção usará os termos "membros inacessíveis" e "métodos inacessíveis" para se referirir a esta combinação de declaração e visibilidade.

Todos os métodos sobrecarregados devem ser definidos como públicos.

Nota:

Nenhum dos argumentos destes métodos mágicos podem ser passados por referência.

Nota:

A interpretação do PHP de "sobrecarga" é diferente da maioria das linguagens orientadas a objeto. Sobrecarga tradicionalmente provê a habilidade de ter múltiplos métodos com o mesmo nome, mas diferentes quantidades e tipos de argumentos.

Histórico

Versão | Descrição
5.3.0 | Adicionado __callStatic(). Adicionado warning para reforçar a visibilidade pública e a declaração não estática.
5.1.0 | Adicionados __isset() e __unset().

Sobrecarga de membros

void __set ( string $name , mixed $value )
mixed __get ( string $name )
bool __isset ( string $name )
void __unset ( string $name )

__set() é executado ao se escrever dados para membros inacessíveis.

__get() é utilizados para ler dados de membros inacessíveis.

__isset() é disparado para chamar isset() ou empty() em membros inacessíveis.

__unset() é invocado quando unset() é usado em membros inacessíveis.

O argumento $name é o nome do membro com o qual se está interagindo. O argumento $value do método __set() especifica o valor para o qual o membro $name deveria ser setado.

Sobrecarga de membros somente trabalha no contexto de objetos. Estes métodos mágicos não serão disparados no contexto estático. Portanto estes métodos não podem ser declarados static.

Exemplo #1 Exemplo de sobrecarga com __get, __set, __isset and __unset

<?php
class MemberTest {
    /**  Local para dado sobrecarregado.  */
    private $data = array();

    /**  Sobrecarga não usada em membros declarados.  */
    public $declared = 1;

    /** Sobrecarga somente utilizada neste quando acessado do lado de fora da
    classe. */
    private $hidden = 2;

    public function __set($name, $value) {
        echo "Setando '$name' para '$value'\n";
        $this->data[$name] = $value;
    }

    public function __get($name) {
        echo "Obtendo '$name'\n";
        if (array_key_exists($name, $this->data)) {
            return $this->data[$name];
        }

        $trace = debug_backtrace();
        trigger_error(
            'Propriedade não definida via __get(): ' . $name .
            ' em ' . $trace[0]['file'] .
            ' na linha ' . $trace[0]['line'],
            E_USER_NOTICE);
        return null;
    }

    /**  Como em PHP 5.1.0  */
    public function __isset($name) {
        echo "'$name' está setado?\n";
        return isset($this->data[$name]);
    }

    /**  Como em PHP 5.1.0  */
    public function __unset($name) {
        echo "Unsetting '$name'\n";
        unset($this->data[$name]);
    }

    /**  Não é um método mágico, apenas está aqui para exemplo.  */
    public function getHidden() {
        return $this->hidden;
    }
}

echo "<pre>\n";

$obj = new MemberTest;

$obj->a = 1;
echo $obj->a . "\n\n";

var_dump(isset($obj->a));
unset($obj->a);
var_dump(isset($obj->a));
echo "\n";

echo $obj->declared . "\n\n";

echo "Vamos experimentar com a proriedade privada chamada 'hidden':\n";
echo "Privados são visíveis dentro da classe, então __get() não usado...\n";
echo $obj->getHidden() . "\n";
echo "Privados não são vidíveis fora da classe, então __get() é usado...\n";
echo $obj->hidden . "\n";
?>

O exemplo acima irá imprimir:

Setando 'a' para '1'
Obtendo 'a'
1

'a' está setado?
bool(true)
Unsetting 'a'
'a' está setado?
bool(false)

1

Vamos experimentar com a proriedade privada chamada 'hidden':
Privados são visíveis dentro da classe, então __get() não usado...
2
Privados não são visíveis fora da classe, então __get() é usado...
Obtendo 'hidden'

Notice:  Propriedade não definida via __get(): hidden em <file> na linha 70 em
 <file> na linha 29

Sobrecarga de método

mixed __call ( string $name , array $arguments )
mixed __callStatic ( string $name , array $arguments )

__call() é disparado quando invocando métodos inacessíveis em um contexto de objeto.

__callStatic() é disparado quando invocando métodos inacessíveis em um contexto estático.

O argumento $name é o nome do método sendo chamado. O argumento $arguments é um array enumerado contendo os parâmetros passados para o método $name.

Exemplo #2 Sobrecarga de métodos instanciados com __call e __callStatic

<?php
class MethodTest {
    public function __call($name, $arguments) {
        // Nota: valor de $name é case sensitive.
        echo "Chamando método objeto '$name' "
             . implode(', ', $arguments). "\n";
    }

    /**  Como em PHP 5.3.0  */
    public static function __callStatic($name, $arguments) {
        // Nota: valor de $name é case sensitive
        echo "Chamando método estático '$name' "
             . implode(', ', $arguments). "\n";
    }
}

$obj = new MethodTest;
$obj->runTest('no contexto objeto');

MethodTest::runTest('no contexto estático');  // Como em PHP 5.3.0
?>

O exemplo acima irá imprimir:

Chamando método objeto 'runTest' no contexto objeto
Chamando método estático 'runTest' no contexto estático
Interfaces de Objetos
Iteração de Objetos
Classes e Objetos


Iteração de Objetos

PHP 5 fornece uma maneira de definir objetos para que seja possível iterar por uma lista de items, como, por exemplo, uma instrução foreach . Por padrão, todas as propriedades visíveis serão usadas para a iteração.

Exemplo #1 Simple Object Iteration

<?php
class MyClass
{
    public $var1 = 'value 1';
    public $var2 = 'value 2';
    public $var3 = 'value 3';

    protected $protected = 'protected var';
    private   $private   = 'private var';

    function iterateVisible() {
        echo "MyClass::iterateVisible:\n";
        foreach($this as $key => $value) {
            print "$key => $value\n";
        }
    }
}

$class = new MyClass();

foreach($class as $key => $value) {
    print "$key => $value\n";
}
echo "\n";

$class->iterateVisible();

?>

O exemplo acima irá imprimir:

var1 => value 1
var2 => value 2
var3 => value 3

MyClass::iterateVisible:
var1 => value 1
var2 => value 2
var3 => value 3
protected => protected var
private => private var

Como a saída mostra, o foreach iteragiu por cada uma das variáveis visíveis que podem ser acessadas. Indo um pouco mais longe, você pode implementar uma das interfaces internas do PHP5 chamada Iterator. Isso permite que o objeto decida o que e como o objeto será iterado.

Exemplo #2 Iteração de Objeto implmentando Iterator

<?php
class MyIterator implements Iterator
{
  private $var = array();

  public function __construct($array)
  {
    if (is_array($array) ) {
      $this->var = $array;
    }
  }

  public function rewind() {
    echo "rewinding\n";
    reset($this->var);
  }

  public function current() {
    $var = current($this->var);
    echo "current: $var\n";
    return $var;
  }

  public function key() {
    $var = key($this->var);
    echo "key: $var\n";
    return $var;
  }

  public function next() {
    $var = next($this->var);
    echo "next: $var\n";
    return $var;
  }

  public function valid() {
    $var = $this->current() !== false;
    echo "valid: {$var}\n";
    return $var;
  }
}

$values = array(1,2,3);
$it = new MyIterator($values);

foreach ($it as $a => $b) {
  print "$a: $b\n";
}
?>

O exemplo acima irá imprimir:

rewinding
current: 1
valid: 1
current: 1
key: 0
0: 1
next: 2
current: 2
valid: 1
current: 2
key: 1
1: 2
next: 3
current: 3
valid: 1
current: 3
key: 2
2: 3
next:
current:
valid:

Você também pode definir sua classe para que ela não tenha que definir todas as funções do Iterator simplesmente implementando a interface IteratorAggregate do PHP 5.

Exemplo #3 Iteração de Objeto implementado IteratorAggregate

<?php
class MyCollection implements IteratorAggregate {
  private $items = array();
  private $count = 0;

  /* Definição requirida da interface IteratorAggregate */
  public function getIterator() {
    return new MyIterator($this->items);
  }

  public function add($value) {
    $this->items[$this->count++] = $value;
  }

}

$coll = new MyCollection();
$coll->add('value 1');
$coll->add('value 2');
$coll->add('value 3');

foreach ($coll as $key => $val) {
  echo "key/value: [$key -> $val]\n\n";
}
?>

O exemplo acima irá imprimir:

rewinding
current: value 1
valid: 1
current: value 1
key: 0
key/value: [0 -> value 1]

next: value 2
current: value 2
valid: 1
current: value 2
key: 1
key/value: [1 -> value 2]

next: value 3
current: value 3
valid: 1
current: value 3
key: 2
key/value: [2 -> value 3]

next:
current:
valid:

Nota:

Para mais exemplos de iteração, veja a Extensão SPL.

Sobrecarga
Patterns
Classes e Objetos


Patterns

Padrões (Patterns) são formas de descrever melhores práticas e bons projetos. Eles mostram soluções flexíveis para problemas comuns de programação.

Factory

O padrão Factory permite a instanciação de objetos em tempo de execução. É chamado de Factory uma vez que é responsável por "produzir" um objeto. O Factory parametrizado recebe como argumento o nome da classe para instanciar.

Exemplo #1 Método Factory Parametrizado

<?php
class Exemplo
{
    // Método Factory parametrizado
    public static function factory($type)
    {
        if (include_once 'Drivers/' . $type . '.php') {
            $classname = 'Driver_' . $type;
            return new $classname;
        } else {
            throw new Exception ('Driver não encontrado');
        }
    }
}
?>

Definir esse método numa classe permite que drivers sejam carregados em tempo de execução. Se a classe Exemplo fosse uma classe de abstração de banco de dados, carregar um driver MySQL e um driver SQLite poderia ser feito como se segue:

<?php
// Carregar um driver MySQL
$mysql = Exemplo::factory('MySQL');

// Carregar um driver SQLite
$sqlite = Exemplo::factory('SQLite');
?>

Singleton

O padrão Singleton se aplica em situações em que é preciso haver uma só instância de uma classe. O exemplo mais comum é uma conexão com um banco de dados. Implementar esse padrão permite ao programador fazer essa instância única ser facilmente acessível por muitos outros objetos.

Exemplo #2 Função Singleton

<?php
class Exemplo
{
    // Guarda uma instância da classe
    private static $instance;

    // Um construtor privado; previne a criação direta do objeto
    private function __construct()
    {
        echo 'Sou um construtor';
    }

    // O método singleton
    public static function singleton()
    {
        if (!isset(self::$instance)) {
            $c = __CLASS__;
            self::$instance = new $c;
        }

        return self::$instance;
    }

    // Método exemplo
    public function latir()
    {
        echo 'Au!';
    }

    // Previne que o usuário clone a instância
    public function __clone()
    {
        trigger_error('Clone is not allowed.', E_USER_ERROR);
    }

}

?>

Isso permite que uma instância única de Exemplo seja recuperada.

<?php
// Isso falharia porque o construtor é privado
$test = new Exemplo;

// Isso sempre vai recuperar uma instância da classe
$test = Exemplo::singleton();
$test->latir();

// Isso irá emitir um E_USER_ERROR.
$test_clone = clone $test;

?>
Iteração de Objetos
Métodos Mágicos
Classes e Objetos


Métodos Mágicos

Os nomes de funções __construct, __destruct, __call, __callStatic, __get, __set, __isset, __unset, __sleep, __wakeup, __toString, __invoke, __set_state and __clone são mágicos nas classes do PHP. Você não pode ter funções com esses nomes em nenhuma de suas classes a não ser que queria que a funcionalidade mágica associada com eles.

Cuidado

PHP reserva todas as funções com nomes começando com __ como mágicas. É recomendado que você não use funções com nomes com __ no PHP a não ser que você queira alguma funcionalidade mágica documentada.

__sleep and __wakeup

serialize() checa se sua classe tem uma função com o nome mágico __sleep. Se tiver, a função é executa antes de qualquer serialização. Ela pode limpar o objeto e deve retornar um array com os nomes de todas as variáveis do objeto que devem ser serializadas. Se o método não retornar nada, então NULL é serializada e um E_NOTICE é disparado.

O intuito do método __sleep enviar dados pendentes ou realizar tarefas similares de limpeza. Além disso, a função é útil se você tiver objetos muito grandes que não precisarão ser salvos completamente.

Inversamente, unserialize() checa pela presença da função com o nome mágico __wakeup. Se achar, essa função pode reconstruir qualquer recursos que o objeto pode ter.

O intuito do método __wakeup é reestabelecer qualquer conexão com banco de dados que podem ter sido perdidas durante a serialização e realizar tarefas de reinicialização.

Exemplo #1 Sleep e wakeup

<?php
class Connection {
    protected $link;
    private $server, $username, $password, $db;

    public function __construct($server, $username, $password, $db)
    {
        $this->server = $server;
        $this->username = $username;
        $this->password = $password;
        $this->db = $db;
        $this->connect();
    }

    private function connect()
    {
        $this->link = mysql_connect($this->server, $this->username, $this->password);
        mysql_select_db($this->db, $this->link);
    }

    public function __sleep()
    {
        return array('server', 'username', 'password', 'db');
    }

    public function __wakeup()
    {
        $this->connect();
    }
}
?>

__toString

O método __toString permite que uma classe decida como se comportar quando for convertida para uma string.

Exemplo #2 Exemplo Simples

<?php
// Declara uma classe simples
class ClasseTeste
{
    public $foo;

    public function __construct($foo) {
        $this->foo = $foo;
    }

    public function __toString() {
        return $this->foo;
    }
}

$classe = new ClasseTeste('Olá');
echo $classe;
?>

O exemplo acima irá imprimir:

Olá

Vale lembrar que antes do PHP 5.2.0 o método __toString só era chamado quando diretamente combinado com echo() ou print(). Desde o PHP 5.2.0, ele é chamado no contexto de string (e.g. em printf() com modificador %s) mas não em outros tipos de contextos (e.g. como modificador %d). Desde o PHP 5.2.0, convertendo objetos sem o método __toString() para string causa E_RECOVERABLE_ERROR.

__invoke

O método __invoke é chamado quando um script tenta chamar um objeto como uma função.

Nota:

Esta funcionalidade esta disponível desde o PHP 5.3.0.

Exemplo #3 Usando __invoke

<?php
class CallableClass {
    function __invoke($x) {
        var_dump($x);
    }
}
$obj = new CallableClass;
$obj(5);
var_dump(is_callable($obj));
?>

O exemplo acima irá imprimir:

int(5)
bool(true)

__set_state

Esse método estático é chamado para classes exportadas por var_export() desde PHP 5.1.0.

O único parâmetro para esse método é um array contendo propriedades exportadas no formato array('property' => value, ...).

Exemplo #4 Usando __set_state (desde o PHP 5.1.0)

<?php

class A
{
    public $var1;
    public $var2;

    public static function __set_state($an_array) // As of PHP 5.1.0
    {
        $obj = new A;
        $obj->var1 = $an_array['var1'];
        $obj->var2 = $an_array['var2'];
        return $obj;
    }
}

$a = new A;
$a->var1 = 5;
$a->var2 = 'foo';

eval('$b = ' . var_export($a, true) . ';'); // $b = A::__set_state(array(
                                            //    'var1' => 5,
                                            //    'var2' => 'foo',
                                            // ));
var_dump($b);

?>

O exemplo acima irá imprimir:

object(A)#2 (2) {
  ["var1"]=>
  int(5)
  ["var2"]=>
  string(3) "foo"
}
Patterns
Palavra-Chave 'final'
Classes e Objetos


Palavra-Chave 'final'

PHP 5 introduz a palavra-chave 'final', que previne que classes filhas sobrecarreguem um método ou variável. Basta prefixar a definição com 'final'.

Exemplo #1 Exemplo de métodos 'final'

<?php
class ClasseBase {
   public function teste() {
       echo "ClasseBase::teste() chamado\n";
   }

   final public function maisTeste() {
       echo "ClasseBase::maisTeste() chamado\n";
   }
}

class ClasseFilha extends ClasseBase {
   public function maisTeste() {
       echo "ClasseFilha::maisTeste() called\n";
   }
}
// Resulta em erro Fatal: Não pode sobrescrever método final ClasseBase::maisTeste()
?>

Exemplo #2 Exemplo de classe Final

<?php
final class ClasseBase {
   public function teste() {
       echo "Método ClasseBase::teste() chamado\n";
   }

   // Aqui não importa se você especificar a função como Final ou não
   final public function maisTeste() {
       echo "Método ClasseBase::maisTeste() chamado\n";
   }
}

class ClasseFilha extends ClasseBase {
}
// Resulta em erro Fatal: A classe ClasseFilha não pode herdar de uma classe Final (ClasseBase)
?>
Métodos Mágicos
Clonando objetos
Classes e Objetos


Clonando objetos

Criar uma cópia de um objeto com propriedades totalmente replicadas nem sempre é o comportamento desejado. Um bom exemplo da necessidade para construtores de cópia é se você tem um objeto que representa uma janela do GTK e um objeto guarda o resource dessa janela. Quando você criar uma duplicata, você pode querer criar uma nova janela com as mesmas propriedades e fazer o novo objeto quarda o resource da nova janela. Outro exemplo é se seu objeto guarda uma referência a outro objeto o qual ele usa e quando você replicar o objeto pai, você quer que seja criada uma nova instância desse outro objeto para que a réplica tenha sua própria cópia separada.

Uma cópia de objeto é criada usando a palavra-chave 'clone' (que chama o método __clone() do objeto, se possível). O método __clone() de um objeto não pode ser chamado diretamente.

$copia_do_objeto = clone $objeto;

Quando um objeto é clonado, PHP 5 fará uma cópia superficial de todas as propriedades do objeto. Qualquer propriedade que seja referência a outra variável, permanecerá referência. Se um método __clone() for definido, então este será chamado, permitindo definir qualquer alteração necessária nas propriedades.

Exemplo #1 Clonando um objeto

<?php
class SubObjeto {
  static $instancias = 0;
  public $instancia;

  public function __construct() {
    $this->$instancia = ++self::$instancias;
  }

  public function __clone() {
    $this->$instancia = ++self::$instancias;
  }
}

class MeuClonavel {

  public $objeto1;
  public $objeto2;

  function __clone() {
    // Força uma cópia de this->objeto, ou então
    // apontará para o mesmo objeto
    $this->objeto1 = clone $this->objeto1;
  }
}

$obj = new MeuClonavel();

$obj->objeto1 = new SubObjeto();
$obj->objeto2 = new SubObjeto();

$obj2 = clone $obj;

print("Objeto Original:\n");
print_r($obj);

print("Objeto Clonado:\n");
print_r($obj2);

?>

O exemplo acima irá imprimir:

Objeto Original:
MeuClonavel Object
(
    [objeto1] => SubObjeto Object
        (
            [instancia] => 1
        )

    [objeto2] => SubObjeto Object
        (
            [instancia] => 2
        )

)
Objeto Clonado:
MeuClonavel Object
(
    [objeto1] => SubObjeto Object
        (
            [instancia] => 3
        )

    [objeto2] => SubObjeto Object
        (
            [instancia] => 2
        )

)
Palavra-Chave 'final'
Comparando objetos
Classes e Objetos


Comparando objetos

No PHP 5, comparação de objetos é mais complicada que no PHP 4 e mais de acordo com o que é esperado de uma Linguagem Orientada a Objetos (não que PHP 5 seja uma delas).

Quando usar o operador de comparação (==), variáveis objeto são comparadas de maneira simples, nominalmente: Duas instâncias de objetos são iguais se tem os mesmos atributos e valores, e são instâncias da mesma classe.

Por outro lado, quando usando o operador de identidade (===), variáveis objetos são identicas se e somente se elas se referem a mesma instância da mesma classe.

Um exemplo evidenciará essas regras.

Exemplo #1 Exemplo de comparação de objetos no PHP 5

<?php
function bool2str($bool)
{
    if ($bool === false) {
            return 'FALSO';
    } else {
            return 'VERDADEIRO';
    }
}

function compareObjetos(&$o1, &$o2)
{
    echo 'o1 == o2 : '.bool2str($o1 == $o2)."\n";
    echo 'o1 != o2 : '.bool2str($o1 != $o2)."\n";
    echo 'o1 === o2 : '.bool2str($o1 === $o2)."\n";
    echo 'o1 !== o2 : '.bool2str($o1 !== $o2)."\n";
}

class Flag
{
    var $flag;

    function Flag($flag=true) {
            $this->flag = $flag;
    }
}

class OutraFlag
{
    var $flag;

    function OutraFlag($flag=true) {
            $this->flag = $flag;
    }
}

$o = new Flag();
$p = new Flag();
$q = $o;
$r = new OutraFlag();

echo "Duas instâncias da mesma classe\n";
compareObjetos($o, $p);

echo "\nDuas referências para a mesma instância\n";
compareObjetos($o, $q);

echo "\nInstâncias de duas classes diferentes\n";
compareObjetos($o, $r);
?>

O exemplo acima irá imprimir:

Duas instâncias da mesma classe
o1 == o2 : VERDADEIRO
o1 != o2 : FALSO
o1 === o2 : FALSO
o1 !== o2 : VERDADEIRO

Duas referências para a mesma instância
o1 == o2 : VERDADEIRO
o1 != o2 : FALSO
o1 === o2 : VERDADEIRO
o1 !== o2 : FALSO

Instâncias de duas classes diferentes
o1 == o2 : FALSO
o1 != o2 : VERDADEIRO
o1 === o2 : FALSO
o1 !== o2 : VERDADEIRO

Nota:

Extensões podem definir suas regras para comparação de objetos.

Clonando objetos
Indução de Tipo
Classes e Objetos


Indução de Tipo

PHP 5 introduz Indução de Tipo. Funções podem forçar que os parâmetros sejam objetos (especificando o nome da classe no protótipo da função) ou array (a partir do PHP 5.1). Contudo, se NULL é usado como o valor padrão do parametro, ele será permitido como um argumento nas chamadas à função.

Exemplo #1 Exemplo Indução de Tipo

<?php
// Uma classe de exemplo
class MinhaClasse
{
    /**
     * Uma função de teste
     *
     * Primeiro parâmetro deve ser um objeto do tipo OutraClasse
     */
    public function teste(OutraClasse $outraclasse) {
        echo $outraclasse->var;
    }

    /**
    * Outra função de teste
    *
    * Primeiro parâmetro deve ser um array
    */
    public function testa_array(array $array_de_entrada) {
        print_r($array_de_entrada);
    }
}

// Outro classe de exemplo
class OutraClasse {
    public $var = 'Alô Mundo';
}
?>

Não satisfazer a indução de tipo resulta em erro fatal (Catchable fatal error).

<?php
// Uma instância de cada classe
$minhaclasse = new MinhaClasse;
$outraclasse = new OutraClasse;

// Erro Fatal: Argumento 1 deve ser um objeto da classe OutraClasse
$minhaclasse->teste('hello');

// Erro Fatal: Argumento 1 deve ser uma instância de OutraClasse
$foo = new stdClass;
$minhaclasse->teste($foo);

// Erro Fatal: Argumento 1 deve ser diferente de null
$minhaclasse->teste(null);

// Funciona: Imprime Alô Mundo
$minhaclasse->teste($outraclasse);

// Erro Fatal: Argumento 1 deve ser um array
$minhaclasse->testa_array('a string');

// Funciona: Imprime o array
$minhaclasse->testa_array(array('a', 'b', 'c'));
?>

Indução de tipo também funciona com funções:

<?php
// Um exemplo de classe
class MinhaClasse {
    public $var = 'Alô Mundo';
}

/**
 * Uma função de teste
 *
 * Primeiro parâmetro deve ser um objeto do tipo MinhaClasse
 */
function MinhaFuncao (MinhaClasse $foo) {
    echo $foo->var;
}

// Funciona
$minhaclasse = new MinhaClasse;
MinhaFuncao($minhaclasse);
?>

Type hinting permitindo valor NULL:

<?php

/* Aceitando valor NULL value */
function test(stdClass $obj = NULL) {

}

test(NULL);
test(new stdClass);

?>

Indução de tipo só pode ser usado com tipos objetos. Indução tradicional com int e string não são suportados.

Comparando objetos
Late Static Bindings
Classes e Objetos


Late Static Bindings

No PHP 5.3.0, o PHP implementa um recurso chamado late static bindings que pode ser usado para referenciar a classe chamada no contexto de herança estática.

Este recurso foi nomeado "late static bindings" com um pespectiva interna em mente. "Late binding" vem do fato que static:: não ser mais resolvido usando a classe onde o mesmo é definido mas ele será avaliado usando informação em tempo de execução. Ele foi também chamado "static binding" como pode ser usado para (mas não é limitado para) chamada de métodos estáticos.

Limitações do self::

Referências estáticas para a atual classe como self:: ou __CLASS__ são resolvidas usando a classe na qual a função pertence, como onde ele foi definido:

Exemplo #1 Uso do self::

<?php
class A {
    public static function who() {
        echo __CLASS__;
    }
    public static function test() {
        self::who();
    }
}

class B extends A {
    public static function who() {
         echo __CLASS__;
    }
}

B::test();
?>

O exemplo acima irá imprimir:

A

Uso de Late Static Bindings

Late static bindings tenta resolver a limitação introduzindo uma palavra-chave que referencia a classe que foi inicialiamente chamada em runtime. Basicamente, uma palavra-chave que permite você referenciar B em test() no exemplo anterior. Foi decidido não introduzir uma nova palavra-chave, mas usar static que já foi reservado.

Exemplo #2 Simples uso do static::

<?php
class A {
    public static function who() {
        echo __CLASS__;
    }
    public static function test() {
        static::who(); // Here comes Late Static Bindings
    }
}

class B extends A {
    public static function who() {
         echo __CLASS__;
    }
}

B::test();
?>

O exemplo acima irá imprimir:

B

Nota:

static:: não funciona como $this para métodos estáticos! $this-> segue a regra de herança quando static:: não o faz. Esta diferença é detalhada depois nesta página.

Exemplo #3 Uso do static:: em um contexto não-estático

<?php
class TestChild extends TestParent {
    public function __construct() {
        static::who();
    }

    public function test() {
        $o = new TestParent();
    }

    public static function who() {
        echo __CLASS__."\n";
    }
}

class TestParent {
    public function __construct() {
        static::who();
    }

    public static function who() {
        echo __CLASS__."\n";
    }
}
$o = new TestChild;
$o->test();

?>

O exemplo acima irá imprimir:

TestChild
TestParent

Nota:

A resolução do Late static bindings termina em uma chamada estática inteiramente resolvida sem volta. Por outro lado, chamadas estáticas usando palavras-chave como parent:: ou self:: encaminharão a informação.

Exemplo #4 Chamadas encaminhadas e não-encaminhadas

<?php
class A {
    public static function foo() {
        static::who();
    }

    public static function who() {
        echo __CLASS__."\n";
    }
}

class B extends A {
    public static function test() {
        A::foo();
        parent::foo();
        self::foo();
    }

    public static function who() {
        echo __CLASS__."\n";
    }
}

class C extends B {
    public static function who() {
        echo __CLASS__."\n";
    }
}

C::test();
?>

O exemplo acima irá imprimir:

A
C
C

Edge cases

Há várias diferentes formas de ser chamado um método no PHP, como callbacks ou métodos mágicos. Como late static bindings baseia sua resolução em informação em runtine, ele pode dar resultados inesperados em então chamados edge cases.

Exemplo #5 Late static bindings em métodos mágicos

<?php
class A {

   protected static function who() {
        echo __CLASS__."\n";
   }

   public function __get($var) {
       return static::who();
   }
}

class B extends A {

   protected static function who() {
        echo __CLASS__."\n";
   }
}

$b = new B;
$b->foo;
?>

O exemplo acima irá imprimir:

B
Indução de Tipo
Objetos e Referências
Classes e Objetos


Objetos e Referências

Um dos pontos-chave da programação orientada a objetos no PHP5 que é frequentemente mencionado é que "objetos são passados por referências por padrão". Isto não é completamente verdade. Esta seção retifica esse pensamento geral usando alguns exemplos.

Uma referência PHP é um alias, que permite duas variáveis diferentes escreverem para o mesmo valor. A partir do PHP5, uma variável objeto não contém mais o próprio objeto como valor. Ela contém um identificador do objeto que permite que os acessadores do objeto encontrem o objeto real. Quando um objeto é enviado por argumento, retornado ou atribuído para outra variável, as variáveis diferentes não são aliases: elas armazenam uma cópia do identificador, que aponta para o mesmo objeto.

Exemplo #1 Referências e Objetos

<?php
class A {
    public $foo = 1;
}

$a = new A;
$b = $a;     // $a and $b are copies of the same identifier
             // ($a) = ($b) = <id>
$b->foo = 2;
echo $a->foo."\n";

$c = new A;
$d = &$c;    // $c and $d are references
             // ($c,$d) = <id>

$d->foo = 2;
echo $c->foo."\n";

$e = new A;

function foo($obj) {
    // ($obj) = ($e) = <id>
    $obj->foo = 2;
}

foo($e);
echo $e->foo."\n";

?>

O exemplo acima irá imprimir:

2
2
2
Late Static Bindings
Object Serialization
Classes e Objetos


Object Serialization

Serializing objects - objects in sessions

serialize() returns a string containing a byte-stream representation of any value that can be stored in PHP. unserialize() can use this string to recreate the original variable values. Using serialize to save an object will save all variables in an object. The methods in an object will not be saved, only the name of the class.

In order to be able to unserialize() an object, the class of that object needs to be defined. That is, if you have an object of class A and serialize this, you'll get a string that refers to class A and contains all values of variables contained in it. If you want to be able to unserialize this in another file, an object of class A, the definition of class A must be present in that file first. This can be done for example by storing the class definition of class A in an include file and including this file or making use of the spl_autoload_register() function.

<?php
// classa.inc:

  class A {
      public $one = 1;

      public function show_one() {
          echo $this->one;
      }
  }

// page1.php:

  include("classa.inc");

  $a = new A;
  $s = serialize($a);
  // store $s somewhere where page2.php can find it.
  file_put_contents('store', $s);

// page2.php:

  // this is needed for the unserialize to work properly.
  include("classa.inc");

  $s = file_get_contents('store');
  $a = unserialize($s);

  // now use the function show_one() of the $a object.
  $a->show_one();
?>

If an application is using sessions and uses session_register() to register objects, these objects are serialized automatically at the end of each PHP page, and are unserialized automatically on each of the following pages. This means that these objects can show up on any of the application's pages once they become part of the session. However, regarding the session_register() function: This deprecated feature will certainly be removed in the future.

It is strongly recommended that if an application serializes objects, for use later in the application, that the application include the class definition for that object throughout the application. Not doing so might result in an object being unserialized without a class definition, which will result in PHP giving the object a class of __PHP_Incomplete_Class_Name, which has no methods and would render the object useless.

So if in the example above $a became part of a session by running session_register("a"), you should include the file classa.inc on all of your pages, not only page1.php and page2.php.

Objetos e Referências
Namespaces
Classes e Objetos


Namespaces

Índice

  • Namespaces - Visão geral
  • Definição de Namespace
  • Usando namespaces
  • Espaço global
  • __NAMESPACE__
  • Regras de resolução de nomes
Object Serialization
Namespaces - Visão geral
Referência da Linguagem


Namespaces - Visão geral

Namespaces no PHP são projetados para resolver problema de escopo em bibliotecas PHP extensas. No PHP, todas as definições de classes são globais. Assim, quando uma autor de uma biblioteca cria vários utilitários ou públicas classes para uma biblioteca, ele precisa ter cuidado com a possibilidade de outra biblioteca com mesma funcionalidade exista e assim escolher nomes únicos para que estas bibliotecas possam ser usadas juntas. Normalmente isto é resolvido prefixando o nome da classe com uma string única - e.g., classes de banco de dados tem prefixo My_Library_DB, etc. Com o crescimento da biblioteca, mais prefixos são adicionados, criando então nomes grandes.

Os namespaces permitem o desenvolvedor manusear nomes num escopo sem usar nomes grandes cada vez que a classe for referenciada, e resolver o problema de espaço global compartilhado sem fazer um código ilegível.

Namespaces está disponível a partir do PHP 5.3.0. Esta seção é experimental e sujeita a mudanças.

Namespaces
Definição de Namespace
Namespaces


Definição de Namespace

O namespace é declarado usando a palavra chave namespace, que deve ser usada logo no começo do arquivo. Exemplo:

Exemplo #1 Defining namespace

<?php
    namespace MyProject\DB;

    const CONNECT_OK = 1;

    class Connection { /* ... */ }

    function connect() { /* ... */  }

?>
Um mesmo nome de namespace pode ser usado em múltiplos arquivos.

Namespace pode conter definições de classes, constantes e funções, mas não código livre.

Definição do Namespace fazem seguinte:

  • Dentro do namespace, todas os nomes de as classes, funções e constantes na definição são automaticamente prefixados com o nome do namespace. O nome da classe é sempre o nome completo, i.e. no exemplo acima a classe é chamada MyProject\DB\Connection.
  • Definição de constantes criam constantes que são compostas do nome do namespace e o nome da constante. Com constantes de classes, constantes do namespace podem somente conter valores estáticos.

  • Nome não qualificado de classe (i.e., nome não contém \) são resolvido em runtime seguindo este procedimento:

    1. A classe é verificada dentro do atual namespace (i.e. prefixando o nome com o atual nome do namespace) sem tentar fazer autoload.
    2. A classe é verificada dentro do namespace global sem tentar fazer autoload.
    3. É tentado autoloading para nomes no namespace atual.
    4. Se anteriormente falhou, a verificação falha.

  • Nome não qualificado de função (i.e., nome não contém \) é verificado em tempo de execução primeiro no namespace atual e então no espaço global.

  • Nome de constantes não qualificada são verificadas primeiro no namespace atual e então entre as constantes globalmente definidas.

Veja também em regras de resolução de nomes.

Namespaces - Visão geral
Usando namespaces
Namespaces


Usando namespaces

Cada classe e função em um namespace pode ser referenciado pelo nome completo - e.g. MyProject\DB\Connection ou MyProject\DB\connect - em algum momento.

Exemplo #1 Usando o nome com namespace

<?php
    require 'MyProject/Db/Connection.php';
    $x = new MyProject\DB\Connection;
    MyProject\DB\connect();
?>

Namespaces podem ser importados para o contexto atual (global ou namespace) usando o operador use. A sintaxe para o operador é:

<?php
/* ... */
use Some\Name as Othername;

// The simplified form of use:
use Foo\Bar;
// which is the same as :
use Foo\Bar as Bar;
?>
O nome importado funciona da seguinte forma: cada vez que o compilador encontra um nome local Othername (o nome sozinho ou com prefixo para nome grande separado por \) o nome importado Some\Name o substitue.

use pode ser usado somente no escopo global, não dentro de função ou classe. Nomes importados tem efeito a partir do ponto do import até o final do arquivo atual. Ele é recomendado colocá-lo no início do arquivo para evitar confusão.

Exemplo #2 Importando e acessando namespace

<?php
    require 'MyProject/Db/Connection.php';
    use MyProject\DB;
    use MyProject\DB\Connection as DbConnection;

    $x = new MyProject\DB\Connection();
    $y = new DB\connection();
    $z = new DbConnection();
    DB\connect();
?>

Nota: A operação import é apenas em tempo de compilação, todos nomes locais são convertidos para seus equivalentes nomes completos pelo compilador. Note que não é traduzido nomes em strings, então callbacks não respeitará regras do import.

Definição de Namespace
Espaço global
Namespaces


Espaço global

Sem definição de namespace, todas as definições de classes e funções são colocadas no espaço global - como era feito no PHP antes dos namespaces serem suportado. Prefixando o nome com \ especificará que o nome é requerido do espaço global até mesmo no contexto do namespace.

Exemplo #1 Usando a especificação de espaço global

<?php
    namespace A\B\C;

 /* This function is A\B\C\fopen */
    function fopen() {
         /* ... */
         $f = \fopen(...); // call global fopen
         return $f;
    }
?>

Usando namespaces
__NAMESPACE__
Namespaces


__NAMESPACE__

A constante __NAMESPACE__ em tempo de compilação é definida para o nome do atual namespace. Fora do namespace esta constante tem o valor de string vazia. Esta constante é útil quando precisa compor nome completo para nomes do namespace local.

Exemplo #1 Usando __NAMESPACE__

<?php
namespace A\B\C;

function foo() {
// do stuff
}

set_error_handler(__NAMESPACE__ . "\foo");
?>

Espaço global
Regras de resolução de nomes
Namespaces


Regras de resolução de nomes

Nomes são resolvidos seguindo estas regras de resolução:

  1. Todos nomes qualificados são traduzidos durante a compilação de acordo com a atual regra do import. Por exemplo, se o namespace A\B\C é importado, uma chamada para C\D\e() é traduzida para A\B\C\D\e().
  2. Nomes não qualificados de classes são traduzidos durante compilação de acordo com a atual regra de import (nome completo substituído pelo pequeno nome importado). Por exemplo, se o namespace A\B\C é importado, new C() é traduzido para new A\B\C().
  3. Dentro do namespace, chamadas para nomes não qualificados de funções que são definidos no atual namespace (e é conhecido na hora que a chamada é analisada) são interpretados como chamadas para estas funções do namespace, em tempo de compilação.
  4. Dentro do namespace (digo A\B), chamadas para funções não qualificadas que não são definidas no atual namespace são resolvidos em tempo de execução. Veja como uma chamada para uma função foo() é resolvida:
    1. Ele procura por uma função do atual namespace: A\B\foo().
    2. Ele procura e tenta chamar a função interna foo().
    Para chamar a função definida do usuário no namespace global, \foo() tem que ser usado.
  5. Dentro do namespace (digo A\B), chamadas para não qualificados nomes de classes são resolvidos em tempo de execução. Veja como uma chamada para new C() é resolvida:
    1. Ele verifica por uma classe do namespace atual: A\B\C.
    2. Ele tenta buscar e chamar a classe interna C.
    3. Ele tenta fazer autoload A\B\C.
    Para referenciar a classe definida pelo usuário no namespace global, new \C() tem que ser usado.
  6. Chamadas para qualificadas funções são resolvidas em tempo de execução. Veja como a chamada para A\B\foo() é resolvida:
    1. Ele verifica por uma função foo() no namespace A\B.
    2. Ele verifica por uma classe A\B e chama o método estático foo(). Irá fazer autoload da class se necessário.
  7. Qualificados nomes de classes são resolvidos em tempo de compilação como classes correspondentes do namespace. Por exemplo, new A\B\C() refere-se a classe C do namespace A\B.

Exemplo #1 Ilustrando resolução de nomes

<?php
namespace A;

// function calls

foo();      // first tries to call "foo" defined in namespace "A"
            // then calls internal function "foo"

\foo();    // calls function "foo" defined in global scope

// class references

new B();    // first tries to create object of class "B" defined in namespace "A"
            // then creates object of internal class "B"

new \B();  // creates object of class "B" defined in global scope

// static methods/namespace functions from another namespace

B\foo();   // first tries to call function "foo" from namespace "A\B"
            // then calls method "foo" of internal class "B"

\B\foo(); // first tries to call function "foo" from namespace "B"
            // then calls method "foo" of class "B" from global scope

// static methods/namespace functions of current namespace

A\foo();   // first tries to call function "foo" from namespace "A\A"
            // then tries to call method "foo" of class "A" from namespace "A"
            // then tries to call function "foo" from namespace "A"
            // then calls method "foo" of internal class "A"

\A\foo(); // first tries to call function "foo" from namespace "A"
            // then calls method "foo" of class "A" from global scope
?>
__NAMESPACE__
Exceções
Namespaces


Exceções

Índice

  • Herdando Exceções

PHP 5 tem um modelo de exceção similar ao de outras linguagens de programação. Uma exceção pode ser disparada (thrown), ou pega (caught ou "catched") no PHP. Código pode ser rodeado em um block try, para facilitar a captura de exceções em potencial. Cada bloco try, deve ter pelo menos um bloco catch correspondente. Vários blocos catch pode ser usado para pegar diferentes classes de exceções. A execução normal (quando nenhuma exceção é disparada dentro de um bloco try ou quando um catch compatível com a classe da exceção disparada não estiver presente) continuará após o último bloco catch definido na seqüência. Exceções podem ser disparadas (ou re-disparadas) dentro de um bloco catch.

Quando uma exceção é disparada, código logo após à instrução não será executada, e o PHP tentará achar o primeiro bloco catch correspondente à exceção disparada. Se uma exceção não for pega, um Erro Fatal do PHP será lançado com uma mensagem "Uncaught Exception ...", a não ser que um tratador tenha sido definido com set_exception_handler().

Nota:

Funções internas do PHP usam principalmente Error reporting, somente extensões modernas usam exceções. Contudo, os erros podem ser simplesmente traduzidos para exceções com ErrorException.

Exemplo #2 Disparando uma Exceção

<?php
function inverse($x) {
    if (!$x) {
        throw new Exception('Division by zero.');
    }
    else return 1/$x;
}

try {
    echo inverse(5) . "\n";
    echo inverse(0) . "\n";
} catch (Exception $e) {
  echo "Exceção pega: ",  $e->getMessage(), "\n";
}

// continua a execução
echo 'Hello World';
?>

O exemplo acima irá imprimir:

0.2
Exceção pega: Division by zero.
Hello World

Exemplo #3 Exceções aninhadas

<?php

class MyException extends Exception { }

class Test {
    public function testing() {
        try {
            try {
                throw new MyException('foo!');
            } catch (MyException $e) {
                /* rethrow it */
                throw $e;
            }
        } catch (Exception $e) {
            var_dump($e->getMessage());
        }
    }
}

$foo = new Test;
$foo->testing();

?>

O exemplo acima irá imprimir:

string(4) "foo!"
Regras de resolução de nomes
Herdando Exceções
Referência da Linguagem


Herdando Exceções

Uma classe de exceção definida pelo usuário pode ser criada herdando a classe Exception. Os membros e propriedades abaixo mostram o que é acessível a partir da classe filha que deriva da Exception.

Exemplo #1 A classe nativa Exception

<?php
class Exception {

  protected $message = 'Unknown exception'; // Mensagem da exceção
  protected $code = 0;                      // Código da exceção definido pelo usuário
  protected $file;                          // Arquivo gerador da exceção
  protected $line;                          // Linha geradora da exceção

  function __construct(string $message=NULL, int code=0);

  final function getMessage();              // Mensagem da exceção
  final function getCode();                 // Código da exceção
  final function getFile();                 // Arquivo gerador
  final function getTrace();                // um array com o backtrace()
  final function getTraceAsString();        // String formatada do trace

  /* Sobrecarregável */
  function _toString();                     // String formatada para ser mostrada

}
?>

Se uma classe herda da classe Exception e redefine o construtor, é altamente recomendado que o mesmo chame parent::__construct() para garantir que todas as informações disponíveis sejam devidamente atribuídas. O método __toString() pode ser sobrecarregado para permitir uma saída personalizada quando o objeto é apresentado como string.

Exemplo #2 Herdando a classe Exception

<?php

class MyException extends Exception {

  /* Redefine a exceção para que a mensagem não seja opcional */
  public function __construct($message, $code = 0) {

    // coisas personalizadas que você queira fazer
    // ...

    /* Garante que tudo é atribuído corretamente */
    parent::__construct($message, $code);
  }

  /* Representação do objeto personalizada no formato string */
  public function __toString() {
    return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
  }

  public function customFunction() {
    echo "Uma função personalizada para esse tipo de exceção\n";
  }

}

/**
 * Cria uma classe para testar a exceção
 */
class TestException {

  public $var;

  const THROW_NONE    = 0;
  const THROW_CUSTOM  = 1;
  const THROW_DEFAULT = 2;

  function __construct($avalue = self::THROW_NONE) {

    switch ($avalue) {
      case self::THROW_CUSTOM:
        // dispara exceção personalizada
        throw new MyException('1 é um parâmetro inválido', 5);
        break;

      case self::THROW_DEFAULT:
        // dispara a padrão
        throw new Exception('2 não é permitido como parâmetro', 6);

        break;

      default:
        // Nenhuma exceção, objeto será criado.
        $this->var = $avalue;
        break;

    }

  }

}

// Exemplo 1
try {
  $o = new TestException(TestException::THROW_CUSTOM);
}
catch (MyException $e) {            /* Será pega */
  echo "Pegou minha exceção\n", $e;
  $e->customFunction();
}
catch (Exception $e) {              /* Ignorado */
  echo "Pegou Exceção Padrão\n", $e;
}
var_dump($o);                       /* continua execução */
echo "\n\n";

// Exemplo 2
try {
  $o = new TestException(TestException::THROW_DEFAULT);
}
catch (MyException $e) {            /* Tipos não batem */
  echo "Pegou minha exceção\n", $e;
  $e->customFunction();
}
catch (Exception $e) {              /* Será pega */
  echo "Pegou Exceção Padrão\n", $e;
}
var_dump($o);                       /* continua execução */
echo "\n\n";

// Exemplo 3
try {
  $o = new TestException(TestException::THROW_CUSTOM);
}
catch (Exception $e) {              /* Será pega */
  echo "Default Exception caught\n", $e;
}
var_dump($o);                       /* continua execução */
echo "\n\n";

// Exemplo 4
try {
  $o = new TestException();
}
catch (Exception $e) {              /* Ignorada, nenhuma exceção */
  echo "Default Exception caught\n", $e;
}
var_dump($o);                       /* continua execução */
echo "\n\n";
Exceções
Referências
Exceções


Referências

Índice

  • O que são referências
  • O que as referências fazem
  • O que as referências não são
  • Passagem por referência
  • Retornando referências
  • Destruindo referências
  • Demonstrando referências
Herdando Exceções
O que são referências
Referência da Linguagem


O que são referências

Referências, em PHP, significa acessar o mesmo conteúdo de variável através de vários nomes. Isto não é parecido com os ponteiros em C; ao invés, aqui temos apelidos numa tabela simbólica. Note que no PHP nomes de variáveis e conteúdo de variável são tratados diferentemente, então um mesmo conteúdo pode ter nomes diferentes. A analogia mais próxima é a dos arquivos e seus nomes em sistemas UNIX: nomes de variáveis são o caminho completo dos arquivos, enquanto o conteúdo da variável são os dados desse arquivo. Assim, referências podem ser tomadas como os links físicos dentro do sistema de arquivos UNIX.

Referências
O que as referências fazem
Referências


O que as referências fazem

Referências PHP permitem fazer duas variáveis se referirem ao mesmo conteúdo. Ou seja:

<?php
$a =& $b;
?>
aqui $a e $b apontam para o mesmo conteúdo.

Nota:

$a e $b são completamente iguais aqui, mas não porque $a está apontando para $b ou vice versa, mas sim que $a e $b apontam para o mesmo lugar.

Nota:

Se o array com referências é copiado, seus valores não são referenciados. Isto é válido também para arrays passados por valor para funções.

Nota:

Se você atribuir, passar ou retornar uma variável indefinida por referência, ela irá ser criada.

Exemplo #1 Usando referência com variáveis indefinidas

<?php
function foo(&$var) { }

foo($a); // $a é "criada" e setada par null

$b = array();
foo($b['b']);
var_dump(array_key_exists('b', $b)); // bool(true)

$c = new StdClass;
foo($c->d);
var_dump(property_exists($c, 'd')); // bool(true)
?>

A mesma sintaxe pode ser utilizada com funções, que retornem referências, e com o operador new (a partir do PHP 4.0.4):

<?php
$bar =& new fooclass();
$foo =& find_var ($bar);
?>
Desde o PHP 5, new retorna referência automaticamente, então usar =& neste contexto é obsoleto e produz mensagem de nível E_STRICT.

Nota:

A não utilização do operador & causará a cópia do objeto. Se você utiliza $this em classes, ele operará na instância atual do objeto. A assimilação sem & irá copiar a instância (o objeto em si) e $this irá operar na cópia, podendo não ser esse procedimento sempre desejável. Normalmente você precisará trabalhar com uma instância única, seja por motivos de performance ou de consumo de memória.

Você pode utilizar o operador @ para esconder quaisquer erros em construtores na forma @new, mas isto não funciona quando utilizada a instrução &new. Esta é uma limitação da Zend Engine e irá gerar um erro de interpretação (parser error).

Aviso

Se você atribuir uma referência para uma variável declarada global dentro da função, a referência irá ser visível somente dentro da função. Você pode evitar isto usando o array $GLOBALS.

Exemplo #2 Referenciando variáveis globais de dentro de funções

<?php
$var1 = "Example variable";
$var2 = "";

function global_references($use_globals)
{
    global $var1, $var2;
    if (!$use_globals) {
        $var2 =& $var1; // visível somente dentro da função
    } else {
        $GLOBALS["var2"] =& $var1; // visível também no contexto global
    }
}

global_references(false);
echo "var2 is set to '$var2'\n"; // var2 is set to ''
global_references(true);
echo "var2 is set to '$var2'\n"; // var2 is set to 'Example variable'
?>
Veja global $var; como atalho para $var =& $GLOBALS['var'];. Assim atribuir outra referência para $var somente modifica a variável de referência local.

Nota:

Se você atribuir um valor para uma variável com referência no comando foreach, a referência é modificada também.

Exemplo #3 Referências e o comando foreach

<?php
$ref = 0;
$row =& $ref;
foreach (array(1, 2, 3) as $row) {
    // faz alguma coisa
}
echo $ref; // 3 - último elemento do array iterado
?>

A segunda coisa que referências permitem é passar variáveis por referência. Isto é feito marcando uma variável local de uma função e a variável do escopo chamador como referências ao mesmo conteúdo. Exemplo:

<?php
function foo (&$var)
{
    $var++;
}

$a=5;
foo ($a);
?>
Fará com que $a seja 6. Isto acontece porque na função foo a variável $var se refere ao mesmo conteúdo que $a. Veja explicações mais detalhadas em passagem por referência.

Em terceiro lugar, referências permitem também retorno por referência.

O que são referências
O que as referências não são
Referências


O que as referências não são

Como dito anteriormente, referências não são ponteiros. Isto significa que o construtor seguinte não fará o que você espera:

<?php
function foo (&$var)
{
    $var =& $GLOBALS["baz"];
}
foo($bar);
?>

Acontece que $var na função foo estará apontada para $bar na chamada, mas ela será re-apontada para $GLOBALS["baz"]. Não existe maneira de apontar $bar no escopo chamador para qualquer outra coisa utilizando o mecanismo de referências, desde que $bar não está disponível na função foo (ela é representa por $var, mas $var somente tem o conteúdo da variável e não um relacionamento nome para valor na tabela simbólica). Você pode retornar referências para referenciar variáveis selecionadas por função.

O que as referências fazem
Passagem por referência
Referências


Passagem por referência

Você pode passar variáveis para funções por referência, então a função poderá modificar seus argumentos. A sintaxe é a seguinte:

<?php
function foo (&$var)
{
    $var++;
}

$a=5;
foo ($a);
// $a é 6 aqui
?>
Note que não há o sinal de referência na chamada da função, somente na definição da função. A marcação na definição da função sozinha é suficiente para configurar corretamente a passagem de argumentos por referência. Em versões recentes do PHP você irá ter um aviso dizendo "Call-time pass-by-reference" é obsoleto quando usa um & em foo(&$a);.

As coisas a seguir podem ser passadas por referência:

  • Variáveis. Exemplo: foo($a)
  • Instrução new. Exemplo foo(new foobar())

  • Outra referência, retornada de uma função. Exemplo:

    <?php
    function &bar()
    {
            $a = 5;
        return     $a;
    }
    foo(bar());
    ?>
    Veja explicações sobre isso em retorno por referência.

Nenhuma outra expressão poderá ser passada por referência, com resultados indefinidos. Por exemplo, o exemplo seguinte de passagem por referência é inválido:

<?php
function bar() // Note a falta do &
{
    $a = 5;
    return $a;
}
foo(bar());

foo($a = 5); // Expressão, não é variável
foo(5);      // Constante, não é variável
?>
Essas limitações valem para o PHP 4.0.4 em diante.

O que as referências não são
Retornando referências
Referências


Retornando referências

Retorno por referência é útil quando você precisa utilizar uma função para localizar variável cuja referência precisa ser obtida. Não use retorno por referência para aumentar performance, a engine é esperta o bastante para otimizar isto para você. Somente retorne referências quando você tem uma razão técnica para isso! Para retornar referências, use a sintaxe:

<?php
class foo {
    public $value = 42;

    public function &getValue() {
        return $this->value;
    }
}

$obj = new foo;
$myValue = &$obj->getValue(); // $myValue is a reference to $obj->value, which is 42.
$obj->value = 2;
echo $myValue;                // prints the new value of $obj->value, i.e. 2.
?>
Neste exemplo, a propriedade do objeto retornado pela função getValue precissa ser assimilada, não copiada, como acontecerá se não utilizar a sintaxe de referências.

Nota: Diferentemente da passagem de parâmetros por referência, aqui você precisa utilizar & em ambos os lugares - primeiro para indicar o retorno por referência (e não a cópia), e depois para indicar a ligação da referência (em vez da assimilação convencional) que precisa ser explícita para $myValue.

Se você tentar retornar uma referência de uma função com a sintaxe: return ($this->value); isto não irá funcionar como você espera, para retornar o resultado de uma expressão, e não uma variável, por referência. Você pode somente retornar variáveis por referência para uma função - nada além. Erro E_NOTICE é emitido desde o PHP 4.4.0 e PHP 5.1.0 se o código tenta retornar uma expressão dinâmica ou um resultado do operador new.

Passagem por referência
Destruindo referências
Referências


Destruindo referências

Quando você quebra uma referência, ela apenas pára de fazer o apontamento entre o nome da variável e o conteúdo. Mas isto não significa que o conteúdo da variável será destruído. Por exemplo:

<?php
$a = 1;
$b =& $a;
unset ($a);
?>
não apaga $b, apenas $a.

Novamente, é mais fácil pensar em analogia ao comando UNIX unlink.

Retornando referências
Demonstrando referências
Referências


Demonstrando referências

Vários construtores sintáticos do PHP são implementados através de mecanismos de referência, assim, tudo o explicado até aqui sobre referências também se aplica a esses construtores. Alguns desses construtores, como a passagem e o retorno de referências foram mencionados acima. Outros construtores que também utilizam referências são:

global

Quando você declara uma variável com global, você está de fato criando um referência para a variável global. Isto significa que isto é o mesmo que:

<?php
$var =& $GLOBALS["var"];
?>

O que significa também que destruir $var não apaga a variável global.

$this

Num método de objeto, $this é sempre uma referência à instância atual.

Destruindo referências
Variáveis pré-definidas
Referências


Variáveis pré-definidas

PHP provê um grande número de variáveis pré-definidas para todos scripts. As variáveis representam tudo de variáveis externas à variáveis nativas de ambiente, última mensagem de erro à último cabeçalho recebido.

Veja também o FAQ intitulado "Como register_globals pode afetar?"

Índice

  • Superglobais — Superglobais são variáveis nativas que estão sempre disponíveis em todos escopos
  • $GLOBALS — Referencia todas variáveis disponíveis no escopo global
  • $_SERVER — Informação do servidor e ambiente de execução
  • $_GET — HTTP GET variáveis
  • $_POST — HTTP POST variables
  • $_FILES — HTTP File Upload variáveis
  • $_REQUEST — Variáveis de requisição HTTP
  • $_SESSION — Variáveis de sessão
  • $_ENV — Environment variables
  • $_COOKIE — HTTP Cookies
  • $php_errormsg — A mensagem de erro anterior
  • $HTTP_RAW_POST_DATA — Informação não-tratada do POST
  • $http_response_header — Cabeçalhos de resposta HTTP
  • $argc — O número de argumentos passados para o script
  • $argv — Array de argumentos passados para o script
Demonstrando referências
Superglobais
Referência da Linguagem


Superglobais são variáveis nativas que estão sempre disponíveis em todos escopos

Variáveis pré-definidas
$GLOBALS
Variáveis pré-definidas
PHP Manual

Superglobais

Superglobais — Superglobais são variáveis nativas que estão sempre disponíveis em todos escopos

Descrição

Várias variáveis pré-definidas no PHP são "superglobais", que significa que elas estão disponível em todos escopos para todo o script. Não há necessidade de fazer global $variable; para acessá-lo dentro de funções ou métodos.

Estas variáveis superglobais são:

  • $GLOBALS
  • $_SERVER
  • $_GET
  • $_POST
  • $_FILES
  • $_COOKIE
  • $_SESSION
  • $_REQUEST
  • $_ENV

Histórico

Versão | Descrição
4.1.0 | Superglobais foram introduzidas no PHP.

Notas

Nota: Disponibilidade da variável

Por padrão, todas as superglobais estão disponíveis, mas há diretivas que afetam esta disponibilidade. Para mais informação, consulte na documentação sobre variables_order.

Nota: Lidando com register_globals

Se a obsoleta diretiva register_globals é definida para on então variáveis contidas irão também estar disponíveis no escopo global do script. Por exemplo, $_POST['foo'] também existiria como $foo.

Para informação relacionada, veja o FAQ intitulado "Como register_globals pode afetar?"

Nota: Variável variáveis

Superglobais não podem ser usadas como variável variáveis dentro de função ou métodos de classes.

Veja Também

  • escopo de variável
  • A diretiva variables_order
  • A extensão filter

Variáveis pré-definidas
$GLOBALS
Variáveis pré-definidas


Referencia todas variáveis disponíveis no escopo global

Superglobais
$_SERVER
Variáveis pré-definidas
PHP Manual

$GLOBALS

$GLOBALS — Referencia todas variáveis disponíveis no escopo global

Descrição

Um array associativo contendo referências para todas as variáveis que estão atualmente definidas no escopo global do script. O nome das variáveis são chaves do array.

Exemplos

Exemplo #1 Exemplo da $GLOBALS

<?php
function test() {
    $foo = "local variable";

    echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
    echo '$foo in current scope: ' . $foo . "\n";
}

$foo = "Example content";
test();
?>

O exemplo acima irá imprimir algo similar a:

$foo in global scope: Example content
$foo in current scope: local variable

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Nota: Disponibilidade da variável

Diferente de todas as outras superglobais, $GLOBALS tem essencialmente sempre estado disponível no PHP.

Superglobais
$_SERVER
Variáveis pré-definidas


Informação do servidor e ambiente de execução

$GLOBALS
$_GET
Variáveis pré-definidas
PHP Manual

$_SERVER

$HTTP_SERVER_VARS [deprecated]

$_SERVER -- $HTTP_SERVER_VARS [deprecated] — Informação do servidor e ambiente de execução

Descrição

$_SERVER é um array contendo informação como cabeçalhos, paths, e localizações do script. As entradas neste array são criadas pelo servidor web. Não há garantia que cada servidor web proverá algum destes; servidores podem omitir alguns, ou fornecer outros não listados aqui. Dito isso, um grande número dessas variáveis são previstas pela » CGI 1.1 specification, então você deve estar hábil para esperá-las.

$HTTP_SERVER_VARS contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_SERVER_VARS e $_SERVER são variáveis diferentes e que o PHP manuseia-as diferentemente)

Você pode ou não encontrar algum dos seguintes elementos em $_SERVER. Note que poucas, se alguma, dessas estarão disponíveis (ou ter algum significado) se executando o PHP na linha de comando.

'PHP_SELF'
O nome do arquivo do script que está executando, relativa à raiz do documento. Por exemplo, $_SERVER['PHP_SELF'] em um script no endereço http://example.com/test.php/foo.bar seria /test.php/foo.bar. A constante __FILE__ contém o caminho completo e nome do atual arquivo (i.e. incluído). Se estiver rodando o PHP em linha de comando, esta variável contém o nome do script desde o PHP 4.3.0. Anteriormente ela não estava disponível.
'argv'
Array de argumentos passado para o script. Quando o script é executado na linha de comando, isto permite um acesso aos parâmetros de linha de comando no estilo do C. Quando chamado via método GET, ele conterá a query string.
'argc'
Contém o número de parâmetros da linha de comando passados para o script (se executando da linha de comando).
'GATEWAY_INTERFACE'
O número de revisão da especificação CGI que o servidor está utilizando, por exemplo : 'CGI/1.1'.
'SERVER_ADDR'
O endereço IP do servidor onde está o script em execução.
'SERVER_NAME'
O nome host do servidor onde o script atual é executado. Se o script está rodando em um host virtual, este será o valor definido para aquele host virtual.
'SERVER_SOFTWARE'
A string de identificação do servidor, fornecida nos headers quando respondendo a requests.
'SERVER_PROTOCOL'
Nome e número de revisão do protocolo de informação pelo qual a página foi requerida, por exemplo 'HTTP/1.0';
'REQUEST_METHOD'
Contém o método de request utilizando para acessar a página. Geralmente 'GET', 'HEAD', 'POST' ou 'PUT'.

Nota:

O script PHP é terminado depois de enviado cabeçalhos (significa depois de produzir alguma saída sem saída do buffer) se o método da requisição for HEAD.

'REQUEST_TIME'
O timestamp do início da requisição. Disponível desde o PHP 5.1.0.
'QUERY_STRING'
A query string (string de solicitação), se houver, pela qual a página foi acessada.
'DOCUMENT_ROOT'
O diretório raiz sob onde o script atual é executado, como definido no arquivos de configuração do servidor.
'HTTP_ACCEPT'
O conteúdo do header Accept: da requisição atual, se houver.
'HTTP_ACCEPT_CHARSET'
O conteúdo do header Accept-Charset: da requisição atual, se houver. Exemplo: 'iso-8859-1,*,utf-8'.
'HTTP_ACCEPT_ENCODING'
O conteúdo do header Accept-Encoding: da requisição atual, se houver. Exemplo: 'gzip'.
'HTTP_ACCEPT_LANGUAGE'
O conteúdo do header Accept-Language: da requisição atual, se houver. Exemplo 'en'.
'HTTP_CONNECTION'
O conteúdo do header Connection: da requisição atual, se houver. Exemplo: 'Keep-Alive'.
'HTTP_HOST'
O conteúdo do header Host: da requisição atual, se houver.
'HTTP_REFERER'
O endereço da página (se houver) através da qual o agente do usuário acessou a página atual. Essa diretiva é informada pelo agente do usuário. Nem todos os browsers geram esse header, e alguns ainda possuem a habilidade de modificar o conteúdo do HTTP_REFERER como recurso. Em poucas palavras, não é confiável.
'HTTP_USER_AGENT'
O conteúdo do header User-Agent: da requisição atual, se houver. É uma string denotando o agente de usuário pelo qual a página é acessada. Um exemplo típico é: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586). Além de outras coisas, você pode utilizar este valor com get_browser() para personalizar a geração de suas páginas para as capacidades do agente do usuário.
'HTTPS'
Define para um valor não vazio se o script foi requisitado através do protocolo HTTPS. Note que quando usando ISAPI com IIS, o valor será off se a requisição não for feita por protocolo HTTPS.
'REMOTE_ADDR'
O endereço IP de onde o usuário está visualizado a página atual.
'REMOTE_HOST'
O nome do host que o usuário utilizou para chamar a página atual. O DNS reverso (lookup) do REMOTE_ADDR do usuário.

Nota: Seu servidor web precisa estar configurado para criar essa variável. Por exemplo, no Apache você precisa colocar um HostnameLookups On dentro do httpd.conf. Veja também gethostbyaddr().

'REMOTE_PORT'
A porta TCP na máquina do usuário utilizada para comunicação com o servidor web.
'SCRIPT_FILENAME'

O caminho absoluto o script atualmente em execução.

Nota:

Se o script for executado pela CLI com um caminho relativo, como file.php ou ../file.php, $_SERVER['SCRIPT_FILENAME'] irá conter o caminho relativo especificado pelo usuário.

'SERVER_ADMIN'
O valor fornecido pela diretiva SERVER_ADMIN (do Apache) no arquivo de configuração do servidor. Se o script está sendo executado em um host virtual, este será os valores definidos para aquele host virtual.
'SERVER_PORT'
A porta na máquina servidora utilizada pelo servidor web para comunicação. Como default, este valor é '80'. Utilizando SSL, entretanto, mudará esse valor para a porta de comunicação segura HTTP.
'SERVER_SIGNATURE'
String contendo a versão do servidor e nome do host virtual que é adicionado às páginas geradas no servidor, se ativo.
'PATH_TRANSLATED'
O caminho real do script relativo ao sistema de arquivos (não o document root), depois realizou todos os mapeamentos de caminhos (virtual-to-real).

Nota: A partir do PHP 4.3.2, PATH_TRANSLATED não mais existe implicitamente sob a SAPI do Apache 2, ao contrário da mesma situação no Apache 1, onde ela tinha o mesmo valor da variável de servidor SCRIPT_FILENAME, quando a mesma não era configurada pelo Apache. Essa mudança foi realizada para conformidade com a especificação CGI, onde PATH_TRANSLATED deve existir somente se PATH_INFO estiver definida. Apache 2 users may use AcceptPathInfo = On inside httpd.conf to define PATH_INFO.

'SCRIPT_NAME'
Contém o caminho completo do script atual. Útil para páginas que precisam apontar para elas mesmas (dinamicamente). A constante __FILE__ contém o caminho completo e nome do arquivo (mesmo incluído) atual.
'REQUEST_URI'
O URI fornecido para acessar a página atual, por exemplo, '/index.html'.
'PHP_AUTH_DIGEST'
Quando executando no Apache como módulo fazendo autenticação HTTP esta variável é definida para o cabeçalho 'Authorization' enviado pelo cliente (que você pode então usar para fazer apropriada validação).
'PHP_AUTH_USER'
Quando executando sob o Apache ou IIS (ISAPI no PHP 5) como módulo e fazendo autenticaçào HTTP, esta variável estará definida com o username fornecido pelo usuário.
'PHP_AUTH_PW'
Quando executando sob o Apache ou IIS (ISAPI no PHP 5) como módulo e fazendo autenticaçào HTTP, esta variável estará definida com a senha fornecida pelo usuário.
'AUTH_TYPE'
Quando executando sob o Apache como módulo e fazendo autenticaçào HTTP, esta variável estará definida com o tipo de autenticação utilizado.

Histórico

Versão | Descrição
4.1.0 | Introduzida $_SERVER que torna obsoleta a $HTTP_SERVER_VARS.

Exemplos

Exemplo #1 Exemplo da $_SERVER

<?php
echo $_SERVER['SERVER_NAME'];
?>

O exemplo acima irá imprimir algo similar a:

www.example.com

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • A extensão filter

$GLOBALS
$_GET
Variáveis pré-definidas


HTTP GET variáveis

$_SERVER
$_POST
Variáveis pré-definidas
PHP Manual

$_GET

$HTTP_GET_VARS [obsoleta]

$_GET -- $HTTP_GET_VARS [obsoleta] — HTTP GET variáveis

Descrição

Um array associativo de variáveis passadas para o script atual via o método HTTP GET.

$HTTP_GET_VARS contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_GET_VARS e $_GET são variáveis diferentes e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida a $_GET que torna obsoleta a $HTTP_GET_VARS.

Exemplos

Exemplo #1 Exemplo da $_GET

<?php
echo 'Hello ' . htmlspecialchars($_GET["name"]) . '!';
?>

Assumindo que o usuário entrou por http://example.com/?name=Hannes

O exemplo acima irá imprimir algo similar a:

Hello Hannes!

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • Manuseamento de variáveis externas
  • A extensão filter

$_SERVER
$_POST
Variáveis pré-definidas


HTTP POST variables

$_GET
$_FILES
Variáveis pré-definidas
PHP Manual

$_POST

$HTTP_POST_VARS [deprecated]

$_POST -- $HTTP_POST_VARS [deprecated] — HTTP POST variables

Descrição

Um array associativo de variáveis passados para o script atual via método HTTP POST.

$HTTP_POST_VARS contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_POST_VARS e $_POST são variáveis diferentes e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida a $_POST que torna obsoleta a $HTTP_POST_VARS.

Exemplos

Exemplo #1 Exemplo da $_POST

<?php
echo 'Hello ' . htmlspecialchars($_POST["name"]) . '!';
?>

Assumindo que o usuário tenha postado name=Hannes

O exemplo acima irá imprimir algo similar a:

Hello Hannes!

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • Manuseando variáveis externas
  • A extensão filter

$_GET
$_FILES
Variáveis pré-definidas


HTTP File Upload variáveis

$_POST
$_REQUEST
Variáveis pré-definidas
PHP Manual

$_FILES

$HTTP_POST_FILES [obsoleta]

$_FILES -- $HTTP_POST_FILES [obsoleta] — HTTP File Upload variáveis

Descrição

Um array associativo de items enviado através do script atual via o método HTTP POST.

$HTTP_POST_FILES contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_POST_FILES e $_FILES são variáveis diferentes e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida a $_FILES que torna obsoleta a $HTTP_POST_FILES.

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • move_uploaded_file() - Move um arquivo enviado para uma nova localização
  • Manuseamento de upload de arquivos

$_POST
$_REQUEST
Variáveis pré-definidas


Variáveis de requisição HTTP

$_FILES
$_SESSION
Variáveis pré-definidas
PHP Manual

$_REQUEST

$_REQUEST — Variáveis de requisição HTTP

Descrição

Um array associativo que por padrão contém informações de $_GET, $_POST e $_COOKIE.

Histórico

Versão | Descrição
5.3.0 | Introduzida a request_order. Esta diretiva afeta o conteúdo de $_REQUEST.
4.3.0 | Informação da $_FILES foi removida de $_REQUEST.
4.1.0 | Introduzida a $_REQUEST.

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Nota:

Quando executando em linha de comando , esta não incluirá as entradas argv e argc; estas estão presentes no array $_SERVER.

Nota:

As variáveis em $_REQUEST são providas para o script via mecanismos de entradas GET, POST, e COOKIE e portando poderia ser modificadas por um usuário remoto e não podem ser confiadas. A presença e ordem das variáveis listadas neste array é definido de acordo com a diretiva de configuração do PHP variables_order.

Veja Também

  • import_request_variables() - Importa variáveis GET/POST/Cookie para o escopo global
  • Manuseamento de variáveis externas
  • A extensão filter
$_FILES
$_SESSION
Variáveis pré-definidas


Variáveis de sessão

$_REQUEST
$_ENV
Variáveis pré-definidas
PHP Manual

$_SESSION

$HTTP_SESSION_VARS [obsoleta]

$_SESSION -- $HTTP_SESSION_VARS [obsoleta] — Variáveis de sessão

Descrição

Um array associativo contendo variáveis de sessão disponíveis para o atual script. Veja a documentação das funções de Sessão para mais informação em como usar isto.

$HTTP_SESSION_VARS contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_SESSION_VARS e $_SESSION são diferentes variáveis e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida $_SESSION que torna obsoleta a $HTTP_SESSION_VARS.

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • session_start() - Inicia dados de sessão

$_REQUEST
$_ENV
Variáveis pré-definidas


Environment variables

$_SESSION
$_COOKIE
Variáveis pré-definidas
PHP Manual

$_ENV

$HTTP_ENV_VARS [obsoleta]

$_ENV -- $HTTP_ENV_VARS [obsoleta] — Environment variables

Descrição

Um array associativo de variáveis passadas para o script atual via o método do ambiente.

Estas variáveis são importadas para o PHP do ambiente sob o qual o parser do PHP é executado. Muitas são providas pelo shell sob o qual o PHP é executado e diferentes sistemas são prováveis executar diferentes tipos de shells, uma lista definitiva é impossível. Veja a documentação de shellp para saber a lista de variáveis de ambiente definidas.

Outras variáveis de ambiente incluem variáveis CGI, elas aparecem desconsiderando se o PHP é executado como um módulo do servidor ou processador CGI.

$HTTP_ENV_VARS contém a mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_ENV_VARS e $_ENV são variáveis diferentes e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida a $_ENV que torna obsoleta a $HTTP_ENV_VARS.

Exemplos

Exemplo #1 Exemplo da $_ENV

<?php
echo 'My username is ' .$_ENV["USER"] . '!';
?>

Assumindo que "bjori" executou este script

O exemplo acima irá imprimir algo similar a:

My username is bjori!

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • getenv() - Obtém uma variável de ambiente
  • A extensão filter

$_SESSION
$_COOKIE
Variáveis pré-definidas


HTTP Cookies

$_ENV
$php_errormsg
Variáveis pré-definidas
PHP Manual

$_COOKIE

$HTTP_COOKIE_VARS [obsoleta]

$_COOKIE -- $HTTP_COOKIE_VARS [obsoleta] — HTTP Cookies

Descrição

Um array associativo de variáveis passadas para o atual script via HTTP Cookies.

$HTTP_COOKIE_VARS contém o mesma informação inicial, mas não é uma superglobal. (Note que $HTTP_COOKIE_VARS e $_COOKIE são variáveis diferentes e que o PHP manuseia-as diferentemente)

Histórico

Versão | Descrição
4.1.0 | Introduzida a $_COOKIE que torna obsoleta a $HTTP_COOKIE_VARS.

Exemplos

Exemplo #1 Exemplo da $_COOKIE

<?php
echo 'Hello ' . htmlspecialchars($_COOKIE["name"]) . '!';
?>

Assumindo que o "nome" do cookie tenha sido definido antes

O exemplo acima irá imprimir algo similar a:

Hello Hannes!

Notas

Nota:

Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Veja Também

  • setcookie() - Envia um cookie
  • Manuseando variáveis externas
  • A extensão filter

$_ENV
$php_errormsg
Variáveis pré-definidas


A mensagem de erro anterior

$_COOKIE
$HTTP_RAW_POST_DATA
Variáveis pré-definidas
PHP Manual

$php_errormsg

$php_errormsg — A mensagem de erro anterior

Descrição

$php_errormsg é uma variável contendo o texto da última mensagem de erro gerado pelo PHP. Esta variável somente estará disponível dentro do escopo no qual o erro ocorreu, e somente se a opção de configuração track_errors estiver on (o padrão é off).

Nota: Esta variável está somente disponível quando a track_errors estiver habilitada no php.ini.

Aviso

Se um manuseador de erro definido pelo usuário é usado, $php_erromsg somente será definida se o manuseador de erro retornar FALSE

Exemplos

Exemplo #1 Exemplo da $php_errormsg

<?php
@strpos();
echo $php_errormsg;
?>

O exemplo acima irá imprimir algo similar a:

Wrong parameter count for strpos()

$_COOKIE
$HTTP_RAW_POST_DATA
Variáveis pré-definidas


Informação não-tratada do POST

$php_errormsg
$http_response_header
Variáveis pré-definidas
PHP Manual

$HTTP_RAW_POST_DATA

$HTTP_RAW_POST_DATA — Informação não-tratada do POST

Descrição

$HTTP_RAW_POST_DATA contém informação não-tratada do POST. Veja always_populate_raw_post_data

$php_errormsg
$http_response_header
Variáveis pré-definidas


Cabeçalhos de resposta HTTP

$HTTP_RAW_POST_DATA
$argc
Variáveis pré-definidas
PHP Manual

$http_response_header

$http_response_header — Cabeçalhos de resposta HTTP

Descrição

O array $http_response_header é similar a função get_headers(). Quando usando o HTTP wrapper, $http_response_header será populada com os cabeçalhos de resposta HTTP.

Exemplos

Exemplo #1 Exemplo da $http_response_header

<?php
file_get_contents("http://example.com");
var_dump($http_response_header);
?>

O exemplo acima irá imprimir algo similar a:

array(9) {
  [0]=>
  string(15) "HTTP/1.1 200 OK"
  [1]=>
  string(35) "Date: Sat, 12 Apr 2008 17:30:38 GMT"
  [2]=>
  string(29) "Server: Apache/2.2.3 (CentOS)"
  [3]=>
  string(44) "Last-Modified: Tue, 15 Nov 2005 13:24:10 GMT"
  [4]=>
  string(27) "ETag: "280100-1b6-80bfd280""
  [5]=>
  string(20) "Accept-Ranges: bytes"
  [6]=>
  string(19) "Content-Length: 438"
  [7]=>
  string(17) "Connection: close"
  [8]=>
  string(38) "Content-Type: text/html; charset=UTF-8"
}

$HTTP_RAW_POST_DATA
$argc
Variáveis pré-definidas


O número de argumentos passados para o script

$http_response_header
$argv
Variáveis pré-definidas
PHP Manual

$argc

$argc — O número de argumentos passados para o script

Descrição

Contém o número de argumentos passados para o atual script quando executando através da linha de comando.

Nota: O nome do arquivo do script é sempre passado como um argumento para o script, portanto o valor mínimo de $argc é 1.

Nota: Esta variável está sempre disponível quando register_argc_argv está habilitada.

Exemplos

Exemplo #1 Exemplo da $argc

<?php
var_dump($argc);
?>

Quando executando o exemplo com: php script.php arg1 arg2 arg3

O exemplo acima irá imprimir algo similar a:

int(4)

$http_response_header
$argv
Variáveis pré-definidas


Array de argumentos passados para o script

$argc
Exceções pré-definidas
Variáveis pré-definidas
PHP Manual

$argv

$argv — Array de argumentos passados para o script

Descrição

Contém um array de todos argumentos passados para o script quando executando através da linha de comando.

Nota: O primeiro argumento é sempre o nome do arquivo do script atual, portanto $argv[0] é o nome do script.

Nota: Esta variável está sempre disponível quando register_argc_argv está habilitada.

Exemplos

Exemplo #1 Exemplo da $argv

<?php
var_dump($argv);
?>

Quando executando o exemplo com: php script.php arg1 arg2 arg3

O exemplo acima irá imprimir algo similar a:

array(4) {
  [0]=>
  string(10) "script.php"
  [1]=>
  string(4) "arg1"
  [2]=>
  string(4) "arg2"
  [3]=>
  string(4) "arg3"
}

$argc
Exceções pré-definidas
Variáveis pré-definidas


Exceções pré-definidas

Índice

  • Exception
  • ErrorException
$argv
Exception
Referência da Linguagem


Exception

Introdução

Exception é a classe base para todas Exceptions.

Sinopse da classe

Exception {
/* Properties */
protected string $message ;
private string $string ;
protected int $code ;
protected string $file ;
protected int $line ;
private array $trace ;
/* Methods */
public __construct ([ string $message = NULL [, int $code ]] )
final public string getMessage ( void )
final public int getCode ( void )
final public string getFile ( void )
final public string getLine ( void )
final public array getTrace ( void )
final public string getTraceAsString ( void )
public string __toString ( void )
final private string __clone ( void )
}

Propriedades

message

A mensagem da exceção

string

Nome interno da exceção

code

O código da exceção

file

O nome do arquivo onde a exceção foi disparada

line

A linha onde a exceção foi disparada

trace

A stack trace

Índice

  • Exception::__construct — Construtor da exceção
  • Exception::getMessage — Obtém a mensagem da exceção
  • Exception::getCode — Obtém o código da exceção
  • Exception::getFile — Obtém o arquivo no qual a exceção ocorreu
  • Exception::getLine — Obtém a linha na qual a exceção ocorreu
  • Exception::getTrace — Obtém a stack trace
  • Exception::getTraceAsString — Obtém a stack trace como uma string
  • Exception::__toString — Representação string da exceção
  • Exception::__clone — Clona a exceção
Exceções pré-definidas
Exception::__construct
Exceções pré-definidas


Construtor da exceção

Exception
Exception::getMessage
Exception
PHP Manual

Exception::__construct

(PHP 5 >= 5.1.0)

Exception::__construct — Construtor da exceção

Descrição

public Exception::__construct() ([ string $message = NULL [, int $code ]] )

Construtor da exceção.

Parâmetros

message

A mensagem da exceção a ser disparada.

code

O código da exceção.

Exception
Exception::getMessage
Exception


Obtém a mensagem da exceção

Exception::__construct
Exception::getCode
Exception
PHP Manual

Exception::getMessage

(PHP 5 >= 5.1.0)

Exception::getMessage — Obtém a mensagem da exceção

Descrição

final public string Exception::getMessage ( void )

Retorna a mensagem da exceção.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna a mensagem da exceção como uma string.

Exemplos

Exemplo #1 Exemplo da Exception::getMessage()

<?php
try {
    throw new Exception("Some error message");
} catch(Exception $e) {
    echo $e->getMessage();
}
?>

O exemplo acima irá imprimir algo similar a:

Some error message

Exception::__construct
Exception::getCode
Exception


Obtém o código da exceção

Exception::getMessage
Exception::getFile
Exception
PHP Manual

Exception::getCode

(PHP 5 >= 5.1.0)

Exception::getCode — Obtém o código da exceção

Descrição

final public int Exception::getCode ( void )

Retorna o código da exceção.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna o código da Exceção como um integer.

Exemplos

Exemplo #1 Exemplo da Exception::getCode()

<?php
try {
    throw new Exception("Some error message", 30);
} catch(Exception $e) {
    echo "The exception code is: " . $e->getCode();
}
?>

O exemplo acima irá imprimir algo similar a:

The exception code is: 30

Exception::getMessage
Exception::getFile
Exception


Obtém o arquivo no qual a exceção ocorreu

Exception::getCode
Exception::getLine
Exception
PHP Manual

Exception::getFile

(PHP 5 >= 5.1.0)

Exception::getFile — Obtém o arquivo no qual a exceção ocorreu

Descrição

final public string Exception::getFile ( void )

Obtém o nome do arquivo de onde a exceção foi disparada.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna o nome do arquivo no qual a exceção foi disparada.

Exemplos

Exemplo #1 Exemplo da Exception::getFile()

<?php
try {
    throw new Exception;
} catch(Exception $e) {
    echo $e->getFile();
}
?>

O exemplo acima irá imprimir algo similar a:

/home/bjori/tmp/ex.php

Exception::getCode
Exception::getLine
Exception


Obtém a linha na qual a exceção ocorreu

Exception::getFile
Exception::getTrace
Exception
PHP Manual

Exception::getLine

(PHP 5 >= 5.1.0)

Exception::getLine — Obtém a linha na qual a exceção ocorreu

Descrição

final public string Exception::getLine ( void )

Retorna o número da linha onde a exceção foi disparada.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna o número da linha onde a exceção foi disparada.

Exemplos

Exemplo #1 Exemplo da Exception::getLine()

<?php
try {
    throw new Exception("Some error message");
} catch(Exception $e) {
    echo "The exception was thrown on line: " . $e->getLine();
}
?>

O exemplo acima irá imprimir algo similar a:

The exception was thrown on line: 3

Exception::getFile
Exception::getTrace
Exception


Obtém a stack trace

Exception::getLine
Exception::getTraceAsString
Exception
PHP Manual

Exception::getTrace

(PHP 5 >= 5.1.0)

Exception::getTrace — Obtém a stack trace

Descrição

final public array Exception::getTrace ( void )

Retorna a stack trace da exceção.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna a stack trace da exceção como um array.

Exemplos

Exemplo #1 Exemplo da Exception::getTrace()

<?php
function test() {
 throw new Exception;
}

try {
 test();
} catch(Exception $e) {
 var_dump($e->getTrace());
}
?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  array(4) {
    ["file"]=>
    string(22) "/home/bjori/tmp/ex.php"
    ["line"]=>
    int(7)
    ["function"]=>
    string(4) "test"
    ["args"]=>
    array(0) {
    }
  }
}

Exception::getLine
Exception::getTraceAsString
Exception


Obtém a stack trace como uma string

Exception::getTrace
Exception::__toString
Exception
PHP Manual

Exception::getTraceAsString

(PHP 5 >= 5.1.0)

Exception::getTraceAsString — Obtém a stack trace como uma string

Descrição

final public string Exception::getTraceAsString ( void )

Retorna a stack trace da exceção como uma string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna a stack trace da exceção como uma string.

Exemplos

Exemplo #1 Exemplo da Exception::getTraceAsString()

<?php
function test() {
    throw new Exception;
}

try {
    test();
} catch(Exception $e) {
    echo $e->getTraceAsString();
}
?>

O exemplo acima irá imprimir algo similar a:

#0 /home/bjori/tmp/ex.php(7): test()
#1 {main}

Exception::getTrace
Exception::__toString
Exception


Representação string da exceção

Exception::getTraceAsString
Exception::__clone
Exception
PHP Manual

Exception::__toString

(PHP 5 >= 5.1.0)

Exception::__toString — Representação string da exceção

Descrição

public string Exception::__toString ( void )

Retorna a representação string da exceção.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna a representação string da exceção.

Exemplos

Exemplo #1 Exemplo da Exception::__toString()

<?php
try {
    throw new Exception("Some error message");
} catch(Exception $e) {
    echo $e;
}
?>

O exemplo acima irá imprimir algo similar a:

exception 'Exception' with message 'Some error message' in /home/bjori/tmp/ex.php:3
Stack trace:
#0 {main}

Exception::getTraceAsString
Exception::__clone
Exception


Clona a exceção

Exception::__toString
ErrorException
Exception
PHP Manual

Exception::__clone

(PHP 5 >= 5.1.0)

Exception::__clone — Clona a exceção

Descrição

final private string Exception::__clone ( void )

Tenta clonar a exceção, o que resulta em um erro fatal.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Exceções não são clonáveis.

Exception::__toString
ErrorException
Exception


ErrorException

Introdução

Uma Exception de erro.

Sinopse da classe

ErrorException extends Exception {
/* Properties */
protected int $severity ;
/* Methods */
public __construct ([ string $message [, int $code [, int $severity [, string $filename [, int $lineno ]]]]] )
final public int getSeverity ( void )
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

severity

O nível da exceção

Exemplos

Exemplo #1 Tornando todas mensagens de erro em ErrorException.

<?php
function exception_error_handler($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}
set_error_handler("exception_error_handler");

/* Trigger exception */
strpos();
?>

O exemplo acima irá imprimir algo similar a:

Fatal error: Uncaught exception 'ErrorException' with message 'Wrong parameter count for strpos()' in /home/bjori/tmp/ex.php:8
Stack trace:
#0 [internal function]: exception_error_handler(2, 'Wrong parameter...', '/home/bjori/php...', 8, Array)
#1 /home/bjori/php/cleandocs/test.php(8): strpos()
#2 {main}
  thrown in /home/bjori/tmp/ex.php on line 8

Índice

  • ErrorException::__construct — Construct the exception
  • ErrorException::getSeverity — Obtém o nível da exceção
Exception::__clone
ErrorException::__construct
Exceções pré-definidas


Construct the exception

ErrorException
ErrorException::getSeverity
ErrorException
PHP Manual

ErrorException::__construct

(PHP 5 >= 5.1.0)

ErrorException::__construct — Construct the exception

Descrição

public ErrorException::__construct() ([ string $message [, int $code [, int $severity [, string $filename [, int $lineno ]]]]] )

Construtor da Exception.

Parâmetros

message

A mensagem da exceção a ser disparada.

code

O código da exceção.

severity

O nível da exceção.

filename

O nome do arquivo onde a exceção é disparada.

lineno

A número da linha onde a exceção é disparada.

ErrorException
ErrorException::getSeverity
ErrorException


Obtém o nível da exceção

ErrorException::__construct
Predefined Interfaces
ErrorException
PHP Manual

ErrorException::getSeverity

(PHP 5 >= 5.1.0)

ErrorException::getSeverity — Obtém o nível da exceção

Descrição

final public int ErrorException::getSeverity ( void )

Retorna o nível da exceção.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna o nível da exceção.

Exemplos

Exemplo #1 Exemplo da ErrorException()

<?php
try {
    throw new ErrorException("Exception message", 0, 75);
} catch(ErrorException $e) {
    echo "This exception severity is: " . $e->getSeverity();
}
?>

O exemplo acima irá imprimir algo similar a:

This exception severity is: 75

ErrorException::__construct
Predefined Interfaces
ErrorException


Predefined Interfaces

Índice

  • Traversable
  • Iterator
  • IteratorAggregate
  • ArrayAccess
  • Serializable

See also the SPL Interfaces

ErrorException::getSeverity
Traversable
Referência da Linguagem


The Traversable interface

Introdução

Interface to detect if a class is traversable using foreach.

Abstract base interface that cannot be implemented alone. Instead it must be implemented by either IteratorAggregate or Iterator.

Nota:

Internal (built-in) classes that implement this interface can be used in a foreach construct and do not need to implement IteratorAggregate or Iterator.

Nota:

This is an internal engine interface which cannot be implemented in PHP scripts. Either IteratorAggregate or Iterator must be used instead.

Resumo da Interface

Traversable {
}

This interface has no methods, its only purpose is to be the base interface for all traversable classes.

Predefined Interfaces
Iterator
Predefined Interfaces


The Iterator interface

Introdução

Interface for external iterators or objects that can be iterated themselves internally.

Resumo da Interface

Iterator extends Traversable {
/* Methods */
abstract public mixed current ( void )
abstract public scalar key ( void )
abstract public void next ( void )
abstract public void rewind ( void )
abstract public boolean valid ( void )
}

Exemplo #2 Basic usage

This example demonstrates in which order methods are called when using foreach with an iterator.

<?php
class myIterator implements Iterator {
    private $position = 0;
    private $array = array(
        "firstelement",
        "secondelement",
        "lastelement",
    );

    public function __construct() {
        $this->position = 0;
    }

    function rewind() {
        var_dump(__METHOD__);
        $this->position = 0;
    }

    function current() {
        var_dump(__METHOD__);
        return $this->array[$this->position];
    }

    function key() {
        var_dump(__METHOD__);
        return $this->position;
    }

    function next() {
        var_dump(__METHOD__);
        ++$this->position;
    }

    function valid() {
        var_dump(__METHOD__);
        return isset($this->array[$this->position]);
    }
}

$it = new myIterator;

foreach($it as $key => $value) {
    var_dump($key, $value);
    echo "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

string(18) "myIterator::rewind"
string(17) "myIterator::valid"
string(19) "myIterator::current"
string(15) "myIterator::key"
int(0)
string(12) "firstelement"

string(16) "myIterator::next"
string(17) "myIterator::valid"
string(19) "myIterator::current"
string(15) "myIterator::key"
int(1)
string(13) "secondelement"

string(16) "myIterator::next"
string(17) "myIterator::valid"
string(19) "myIterator::current"
string(15) "myIterator::key"
int(2)
string(11) "lastelement"

string(16) "myIterator::next"
string(17) "myIterator::valid"

Índice

  • Iterator::current — Return the current element
  • Iterator::key — Return the key of the current element
  • Iterator::next — Move forward to next element
  • Iterator::rewind — Rewind the Iterator to the first element
  • Iterator::valid — Checks if current position is valid
Traversable
Iterator::current
Predefined Interfaces


Return the current element

Iterator
Iterator::key
Iterator
PHP Manual

Iterator::current

(PHP 5 >= 5.0.0)

Iterator::current — Return the current element

Descrição

abstract public mixed Iterator::current ( void )

Returns the current element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Can return any type.

Iterator
Iterator::key
Iterator


Return the key of the current element

Iterator::current
Iterator::next
Iterator
PHP Manual

Iterator::key

(PHP 5 >= 5.0.0)

Iterator::key — Return the key of the current element

Descrição

abstract public scalar Iterator::key ( void )

Returns the key of the current element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns scalar on success, or NULL on failure.

Erros

Issues E_NOTICE on failure.

Iterator::current
Iterator::next
Iterator


Move forward to next element

Iterator::key
Iterator::rewind
Iterator
PHP Manual

Iterator::next

(PHP 5 >= 5.0.0)

Iterator::next — Move forward to next element

Descrição

abstract public void Iterator::next ( void )

Moves the current position to the next element.

Nota:

This method is called after each foreach loop.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Any returned value is ignored.

Iterator::key
Iterator::rewind
Iterator


Rewind the Iterator to the first element

Iterator::next
Iterator::valid
Iterator
PHP Manual

Iterator::rewind

(PHP 5 >= 5.0.0)

Iterator::rewind — Rewind the Iterator to the first element

Descrição

abstract public void Iterator::rewind ( void )

Rewinds back to the first element of the Iterator.

Nota:

This is the first method called when starting a foreach loop. It will not be executed after foreach loops.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Any returned value is ignored.

Iterator::next
Iterator::valid
Iterator


Checks if current position is valid

Iterator::rewind
IteratorAggregate
Iterator
PHP Manual

Iterator::valid

(PHP 5 >= 5.0.0)

Iterator::valid — Checks if current position is valid

Descrição

abstract public boolean Iterator::valid ( void )

This method is called after Iterator::rewind() and Iterator::next() to check if the current position is valid.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The return value will be casted to boolean and then evaluated. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Iterator::rewind
IteratorAggregate
Iterator


The IteratorAggregate interface

Introdução

Interface to create an external Iterator.

Resumo da Interface

IteratorAggregate extends Traversable {
/* Methods */
abstract public Traversable getIterator ( void )
}

Exemplo #1 Basic usage

<?php
class myData implements IteratorAggregate {
    public $property1 = "Public property one";
    public $property2 = "Public property two";
    public $property3 = "Public property three";

    public function __construct() {
        $this->property4 = "last property";
    }

    public function getIterator() {
        return new ArrayIterator($this);
    }
}

$obj = new myData;

foreach($obj as $key => $value) {
    var_dump($key, $value);
    echo "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

string(9) "property1"
string(19) "Public property one"

string(9) "property2"
string(19) "Public property two"

string(9) "property3"
string(21) "Public property three"

string(9) "property4"
string(13) "last property"

Índice

  • IteratorAggregate::getIterator — Retrieve an external iterator
Iterator::valid
IteratorAggregate::getIterator
Predefined Interfaces


Retrieve an external iterator

IteratorAggregate
ArrayAccess
IteratorAggregate
PHP Manual

IteratorAggregate::getIterator

(PHP 5 >= 5.0.0)

IteratorAggregate::getIterator — Retrieve an external iterator

Descrição

abstract public Traversable IteratorAggregate::getIterator ( void )

Returns an external iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An instance of an object implementing Iterator or Traversable

Erros

Throws an Exception on failure.

IteratorAggregate
ArrayAccess
IteratorAggregate


The ArrayAccess interface

Introdução

Interface to provide accessing objects as arrays.

Resumo da Interface

ArrayAccess {
/* Methods */
abstract public boolean offsetExists ( mixed $offset )
abstract public mixed offsetGet ( mixed $offset )
abstract public void offsetSet ( mixed $offset , mixed $value )
abstract public void offsetUnset ( mixed $offset )
}

Exemplo #1 Basic usage

<?php
class obj implements arrayaccess {
    private $container = array();
    public function __construct() {
        $this->container = array(
            "one"   => 1,
            "two"   => 2,
            "three" => 3,
        );
    }
    public function offsetSet($offset, $value) {
        if (is_null($offset)) {
            $this->container[] = $value;
        } else {
            $this->container[$offset] = $value;
        }
    }
    public function offsetExists($offset) {
        return isset($this->container[$offset]);
    }
    public function offsetUnset($offset) {
        unset($this->container[$offset]);
    }
    public function offsetGet($offset) {
        return isset($this->container[$offset]) ? $this->container[$offset] : null;
    }
}

$obj = new obj;

var_dump(isset($obj["two"]));
var_dump($obj["two"]);
unset($obj["two"]);
var_dump(isset($obj["two"]));
$obj["two"] = "A value";
var_dump($obj["two"]);
$obj[] = 'Append 1';
$obj[] = 'Append 2';
$obj[] = 'Append 3';
print_r($obj);
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
int(2)
bool(false)
string(7) "A value"
obj Object
(
    [container:obj:private] => Array
        (
            [one] => 1
            [three] => 3
            [two] => A value
            [0] => Append 1
            [1] => Append 2
            [2] => Append 3
        )

)

Índice

  • ArrayAccess::offsetExists — Whether a offset exists
  • ArrayAccess::offsetGet — Offset to retrieve
  • ArrayAccess::offsetSet — Offset to set
  • ArrayAccess::offsetUnset — Offset to unset
IteratorAggregate::getIterator
ArrayAccess::offsetExists
Predefined Interfaces


Whether a offset exists

ArrayAccess
ArrayAccess::offsetGet
ArrayAccess
PHP Manual

ArrayAccess::offsetExists

(PHP 5 >= 5.0.0)

ArrayAccess::offsetExists — Whether a offset exists

Descrição

abstract public boolean ArrayAccess::offsetExists ( mixed $offset )

Whether or not an offset exists.

This method is executed when using isset() or empty() on objects implementing ArrayAccess.

Nota:

When using empty() ArrayAccess::offsetGet() will be called and checked if empty only if ArrayAccess::offsetExists() returns TRUE.

Parâmetros

offset

An offset to check for.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

The return value will be casted to boolean if non-boolean was returned.

Exemplos

Exemplo #1 ArrayAccess::offsetExists() example

<?php
class obj implements arrayaccess {
    public function offsetSet($offset, $value) {
        var_dump(__METHOD__);
    }
    public function offsetExists($var) {
        var_dump(__METHOD__);
        if ($var == "foobar") {
            return true;
        }
        return false;
    }
    public function offsetUnset($var) {
        var_dump(__METHOD__);
    }
    public function offsetGet($var) {
        var_dump(__METHOD__);
        return "value";
    }
}

$obj = new obj;

echo "Runs obj::offsetExists()\n";
var_dump(isset($obj["foobar"]));

echo "\nRuns obj::offsetExists() and obj::offsetGet()\n";
var_dump(empty($obj["foobar"]));

echo "\nRuns obj::offsetExists(), *not* obj:offsetGet() as there is nothing to get\n";
var_dump(empty($obj["foobaz"]));
?>

O exemplo acima irá imprimir algo similar a:

Runs obj::offsetExists()
string(17) "obj::offsetExists"
bool(true)

Runs obj::offsetExists() and obj::offsetGet()
string(17) "obj::offsetExists"
string(14) "obj::offsetGet"
bool(false)

Runs obj::offsetExists(), *not* obj:offsetGet() as there is nothing to get
string(17) "obj::offsetExists"
bool(true)

ArrayAccess
ArrayAccess::offsetGet
ArrayAccess


Offset to retrieve

ArrayAccess::offsetExists
ArrayAccess::offsetSet
ArrayAccess
PHP Manual

ArrayAccess::offsetGet

(PHP 5 >= 5.0.0)

ArrayAccess::offsetGet — Offset to retrieve

Descrição

abstract public mixed ArrayAccess::offsetGet ( mixed $offset )

Returns the value at specified offset.

This method is executed when checking if offset is empty().

Parâmetros

offset

The offset to retrieve.

Notas

Nota:

Starting with PHP 5.3.4, the prototype checks were relaxed and it's possible for implementations of this method to return by reference. This makes indirect modifications to the overloaded array dimensions of ArrayAccess objects possible.

A direct modification is one that replaces completely the value of the array dimension, as in $obj[6] = 7. An indirect modification, on the other hand, only changes part of the dimension, or attempts to assign the dimension by reference to another variable, as in $obj[6][7] = 7 or $var =& $obj[6]. Increments with ++ and decrements with -- are also implemented in a way that requires indirect modification.

While direct modification triggers a call to ArrayAccess::offsetSet(), indirect modification triggers a call to ArrayAccess::offsetGet(). In that case, the implementation of ArrayAccess::offsetGet() must be able to return by reference, otherwise an E_NOTICE message is raised.

Valor Retornado

Can return all value types.

Veja Também

  • ArrayAccess::offsetExists() - Whether a offset exists

ArrayAccess::offsetExists
ArrayAccess::offsetSet
ArrayAccess


Offset to set

ArrayAccess::offsetGet
ArrayAccess::offsetUnset
ArrayAccess
PHP Manual

ArrayAccess::offsetSet

(PHP 5 >= 5.0.0)

ArrayAccess::offsetSet — Offset to set

Descrição

abstract public void ArrayAccess::offsetSet ( mixed $offset , mixed $value )

Assigns a value to the specified offset.

Parâmetros

offset

The offset to assign the value to.

value

The value to set.

Valor Retornado

Não há valor retornado.

Notas

Nota:

The offset parameter will be set to NULL if another value is not available, like in the following example.

<?php
$arrayaccess[] = "first value";
$arrayaccess[] = "second value";
print_r($arrayaccess);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => first value
    [1] => second value
)

Nota:

This function is not called in assignments by reference and otherwise indirect changes to array dimensions overloaded with ArrayAccess (indirect in the sense they are made not by changing the dimension directly, but by changing a sub-dimension or sub-property or assigning the array dimension by reference to another variable). Instead, ArrayAccess::offsetGet() is called. The operation will only be successful if that method returns by reference, which is only possible since PHP 5.3.4.

ArrayAccess::offsetGet
ArrayAccess::offsetUnset
ArrayAccess


Offset to unset

ArrayAccess::offsetSet
Serializable
ArrayAccess
PHP Manual

ArrayAccess::offsetUnset

(PHP 5 >= 5.0.0)

ArrayAccess::offsetUnset — Offset to unset

Descrição

abstract public void ArrayAccess::offsetUnset ( mixed $offset )

Unsets an offset.

Nota:

This method will not be called when type-casting to (unset)

Parâmetros

offset

The offset to unset.

Valor Retornado

Não há valor retornado.

ArrayAccess::offsetSet
Serializable
ArrayAccess


The Serializable interface

Introdução

Interface for customized serializing.

Classes that implement this interface no longer support __sleep() and __wakeup(). The method serialize is called whenever an instance needs to be serialized. This does not invoke __destruct() or has any other side effect unless programmed inside the method. When the data is unserialized the class is known and the appropriate unserialize() method is called as a constructor instead of calling __construct(). If you need to execute the standard constructor you may do so in the method.

Resumo da Interface

Serializable {
/* Methods */
abstract public string serialize ( void )
abstract public mixed unserialize ( string $serialized )
}

Exemplo #1 Basic usage

<?php
class obj implements Serializable {
    private $data;
    public function __construct() {
        $this->data = "My private data";
    }
    public function serialize() {
        return serialize($this->data);
    }
    public function unserialize($data) {
        $this->data = unserialize($data);
    }
    public function getData() {
        return $this->data;
    }
}

$obj = new obj;
$ser = serialize($obj);

$newobj = unserialize($ser);

var_dump($newobj->getData());
?>

O exemplo acima irá imprimir algo similar a:

string(15) "My private data"

Índice

  • Serializable::serialize — String representation of object
  • Serializable::unserialize — Constructs the object
ArrayAccess::offsetUnset
Serializable::serialize
Predefined Interfaces


String representation of object

Serializable
Serializable::unserialize
Serializable
PHP Manual

Serializable::serialize

(PHP 5 >= 5.1.0)

Serializable::serialize — String representation of object

Descrição

abstract public string Serializable::serialize ( void )

Should return the string representation of the object.

Nota:

This method acts as the destructor of the object. The __destruct() method will not be called after this method.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string representation of the object or NULL

Erros

Throws Exception when returning other types then strings and NULL

Veja Também

  • __sleep()

Serializable
Serializable::unserialize
Serializable


Constructs the object

Serializable::serialize
Context options and parameters
Serializable
PHP Manual

Serializable::unserialize

(PHP 5 >= 5.1.0)

Serializable::unserialize — Constructs the object

Descrição

abstract public mixed Serializable::unserialize ( string $serialized )

Called during unserialization of the object.

Nota:

This method acts as the constructor of the object. The __construct() method will not be called after this method.

Parâmetros

serialized

The string representation of the object.

Valor Retornado

Returns the original value unserialized.

Veja Também

  • __wakeup()

Serializable::serialize
Context options and parameters
Serializable


Context options and parameters

PHP offers various context options and parameters which can be used with all
filesystem and stream wrappers. The context is created with
stream_context_create(). Options are set with
stream_context_set_option() and parameters with
stream_context_set_params().

Índice

  • Socket context options — Socket context option listing
  • HTTP context options — HTTP context option listing
  • FTP context options — FTP context option listing
  • SSL context options — SSL context option listing
  • CURL context options — CURL context option listing
  • Phar context options — Phar context option listing
  • Context parameters — Context parameter listing
Serializable::unserialize
Socket context options
Referência da Linguagem


Socket context option listing

Context options and parameters
HTTP context options
Context options and parameters
PHP Manual

Socket context options

Socket context options — Socket context option listing

Descrição

Socket context options are available for all wrappers that work over sockets, like tcp, http and ftp.

Opções

bindto

Used to specify the IP address (either IPv4 or IPv6) and/or the port number that PHP will use to access the network. The syntax is ip:port. Setting the IP or the port to 0 will let the system choose the IP and/or port.

Nota:

As FTP creates two socket connections during normal operation, the port number cannot be specified using this option.

backlog

Used to limit the number of outstanding connections in the socket's listen queue.

Nota:

This is only applicable to stream_socket_server().

Histórico

Versão | Descrição
5.1.0 | Added bindto.
5.3.3 | Added backlog.

Exemplos

Exemplo #1 Basic bindto usage example

<?php
// connect to the internet using the '192.168.0.100' IP
$opts = array(
    'socket' => array(
        'bindto' => '192.168.0.100:0',
    ),
);

// connect to the internet using the '192.168.0.100' IP and port '7000'
$opts = array(
    'socket' => array(
        'bindto' => '192.168.0.100:7000',
    ),
);

// connect to the internet using port '7000'
$opts = array(
    'socket' => array(
        'bindto' => '0:7000',
    ),
);

// create the context...
$context = stream_context_create($opts);

// ...and use it to fetch the data
echo file_get_contents('http://www.example.com', false, $context);

?>

Context options and parameters
HTTP context options
Context options and parameters


HTTP context option listing

Socket context options
FTP context options
Context options and parameters
PHP Manual

HTTP context options

HTTP context options — HTTP context option listing

Descrição

Context options for http:// and https:// transports.

Opções

method string

GET, POST, or any other HTTP method supported by the remote server.

Defaults to GET.

header string

Additional headers to be sent during request. Values in this option will override other values (such as User-agent:, Host:, and Authentication:).

user_agent string

Value to send with User-Agent: header. This value will only be used if user-agent is not specified in the header context option above.

By default the user_agent php.ini setting is used.

content string

Additional data to be sent after the headers. Typically used with POST or PUT requests.

proxy string

URI specifying address of proxy server. (e.g. tcp://proxy.example.com:5100).

request_fulluri boolean

When set to TRUE, the entire URI will be used when constructing the request. (i.e. GET http://www.example.com/path/to/file.html HTTP/1.0). While this is a non-standard request format, some proxy servers require it.

Defaults to FALSE.

follow_location integer

Follow Location: .. redirects.

Defaults to TRUE.

max_redirects integer

The max number of redirects to follow. Value 1 or less means that no redirects are followed.

Defaults to 20.

protocol_version float

HTTP protocol version.

Defaults to 1.0.

Nota:

PHP prior to 5.3.0 does not implement chunked transfer decoding. If this value is set to 1.1 it is your responsibility to be 1.1 compliant.

timeout float

Read timeout in seconds, specified by a float (e.g. 10.5).

By default the default_socket_timeout php.ini setting is used.

ignore_errors boolean

Fetch the content even on failure status codes.

Defaults to FALSE

Histórico

Versão | Descrição
5.3.4 | Added follow_location.
5.3.0 | The protocol_version supports chunked transfer decoding when set to 1.1.
5.2.10 | Added ignore_errors.
5.2.10 | The header can now be an numerically indexed array.
5.2.1 | Added timeout.
5.1.0 | Added HTTPS proxying through HTTP proxies.
5.1.0 | Added max_redirects.
5.1.0 | Added protocol_version.

Exemplos

Exemplo #1 Fetch a page and send POST data

<?php

$postdata = http_build_query(
    array(
        'var1' => 'some content',
        'var2' => 'doh'
    )
);

$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);

$result = file_get_contents('http://example.com/submit.php', false, $context);

?>

Exemplo #2 Ignore redirects but fetch headers and content

<?php

$url = "http://www.example.org/header.php";

$opts = array(
       'http' => array('method' => 'GET',
                                       'max_redirects' => '0',
                                       'ignore_errors' => '1')
       );

$context = stream_context_create($opts);
$stream = fopen($url, 'r', false, $context);

// header information as well as meta data
// about the stream
var_dump(stream_get_meta_data($stream));

// actual data at $url
var_dump(stream_get_contents($stream));
fclose($stream);
?>

Notas

Nota: Underlying socket stream context options
Additional context options may be supported by the underlying transport For http:// streams, refer to context options for the tcp:// transport. For https:// streams, refer to context options for the ssl:// transport.

Nota: HTTP status line
When this stream wrapper follows a redirect, the wrapper_data returned by stream_get_meta_data() might not necessarily contain the HTTP status line that actually applies to the content data at index 0.

array (
  'wrapper_data' =>
  array (
    0 => 'HTTP/1.0 301 Moved Permantenly',
    1 => 'Cache-Control: no-cache',
    2 => 'Connection: close',
    3 => 'Location: http://example.com/foo.jpg',
    4 => 'HTTP/1.1 200 OK',
    ...
The first request returned a 301 (permanent redirect), so the stream wrapper automatically followed the redirect to get a 200 response (index = 4).

Veja Também

  • HTTP and HTTPS
  • Socket context options
  • SSL context options

Socket context options
FTP context options
Context options and parameters


FTP context option listing

HTTP context options
SSL context options
Context options and parameters
PHP Manual

FTP context options

FTP context options — FTP context option listing

Descrição

Context options for ftp:// and ftps:// transports.

Opções

overwrite boolean

Allow overwriting of already existing files on remote server. Applies to write mode (uploading) only.

Defaults to FALSE.

resume_pos integer

File offset at which to begin transfer. Applies to read mode (downloading) only.

Defaults to 0 (Beginning of File).

proxy string

Proxy FTP request via http proxy server. Applies to file read operations only. Ex: tcp://squid.example.com:8000.

Histórico

Versão | Descrição
5.1.0 | Added proxy.
5.0.0 | Added overwrite and resume_pos.

Notas

Nota: Underlying socket stream context options
Additional context options may be supported by the underlying transport For ftp:// streams, refer to context options for the tcp:// transport. For ftps:// streams, refer to context options for the ssl:// transport.

Veja Também

  • FTP and FTPS
  • Socket context options
  • SSL context options

HTTP context options
SSL context options
Context options and parameters


SSL context option listing

FTP context options
CURL context options
Context options and parameters
PHP Manual

SSL context options

SSL context options — SSL context option listing

Descrição

Context options for ssl:// and tls:// transports.

Opções

verify_peer boolean

Require verification of SSL certificate used.

Defaults to FALSE.

allow_self_signed boolean

Allow self-signed certificates.

Defaults to FALSE

cafile string

Location of Certificate Authority file on local filesystem which should be used with the verify_peer context option to authenticate the identity of the remote peer.

capath string

If cafile is not specified or if the certificate is not found there, the directory pointed to by capath is searched for a suitable certificate. capath must be a correctly hashed certificate directory.

local_cert string

Path to local certificate file on filesystem. It must be a PEM encoded file which contains your certificate and private key. It can optionally contain the certificate chain of issuers.

passphrase string

Passphrase with which your local_cert file was encoded.

CN_match string

Common Name we are expecting. PHP will perform limited wildcard matching. If the Common Name does not match this, the connection attempt will fail.

verify_depth integer

Abort if the certificate chain is too deep.

Defaults to no verification.

ciphers string

Sets the list of available ciphers. The format of the string is described in » ciphers(1).

Defaults to DEFAULT.

capture_peer_cert boolean

If set to TRUE a peer_certificate context option will be created containing the peer certificate.

capture_peer_cert_chain boolean

If set to TRUE a peer_certificate_chain context option will be created containing the certificate chain.

SNI_enabled boolean

If set to TRUE server name indication will be enabled. Enabling SNI allows multiple certificates on the same IP address.

SNI_server_name string

If set, then this value will be used as server name for server name indication. If this value is not set, then the server name is guessed based on the hostname used when opening the stream.

Histórico

Versão | Descrição
5.3.2 | Added SNI_enabled and SNI_server_name.
5.0.0 | Added capture_peer_cert, capture_peer_chain and ciphers.

Notas

Nota: Because ssl:// is the underlying transport for the https:// and ftps:// wrappers, any context options which apply to ssl:// also apply to https:// and ftps://.

Nota: For SNI (Server Name Indication) to be available, then PHP must be compiled with OpenSSL 0.9.8j or greater. Use the OPENSSL_TLSEXT_SERVER_NAME to determine whether SNI is supported.

Veja Também

  • Socket context options

FTP context options
CURL context options
Context options and parameters


CURL context option listing

SSL context options
Phar context options
Context options and parameters
PHP Manual

CURL context options

CURL context options — CURL context option listing

Descrição

CURL context options are available when the CURL extension was compiled using the --with-curlwrappers configure option.

Opções

method string

GET, POST, or any other HTTP method supported by the remote server.

Defaults to GET.

header string

Additional headers to be sent during request. Values in this option will override other values (such as User-agent:, Host:, and Authentication:).

user_agent string

Value to send with User-Agent: header.

By default the user_agent php.ini setting is used.

content string

Additional data to be sent after the headers. This option is not used for GET or HEAD requests.

proxy string

URI specifying address of proxy server. (e.g. tcp://proxy.example.com:5100).

max_redirects integer

The max number of redirects to follow. Value 1 or less means that no redirects are followed.

Defaults to 20.

curl_verify_ssl_host boolean

Verify the host.

Defaults to FALSE

Nota:

This option is available for both the http and ftp protocol wrappers.

curl_verify_ssl_peer boolean

Require verification of SSL certificate used.

Defaults to FALSE

Nota:

This option is available for both the http and ftp protocol wrappers.

Exemplos

Exemplo #1 Fetch a page and send POST data

<?php

$postdata = http_build_query(
    array(
        'var1' => 'some content',
        'var2' => 'doh'
    )
);

$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);

$result = file_get_contents('http://example.com/submit.php', false, $context);

?>

Veja Também

  • Socket context options

SSL context options
Phar context options
Context options and parameters


Phar context option listing

CURL context options
Context parameters
Context options and parameters
PHP Manual

Phar context options

Phar context options — Phar context option listing

Descrição

Context options for phar:// wrapper.

Opções

compress int

One of Phar compression constants.

metadata mixed

Phar metadata. See Phar::setMetadata().

Veja Também

  • phar://
  • Phar stream wrapper

CURL context options
Context parameters
Context options and parameters


Context parameter listing

Phar context options
Supported Protocols and Wrappers
Context options and parameters
PHP Manual

Context parameters

Context parameters — Context parameter listing

Descrição

These parameters can be set on a context using the stream_context_set_params() function.

Parâmetros

notification callback

A callback to be called when an event occurs on a stream.

See stream_notification_callback() for more details.

Phar context options
Supported Protocols and Wrappers
Context options and parameters


Supported Protocols and Wrappers

PHP comes with many built-in wrappers for various URL-style protocols for use with the filesystem functions such as fopen(), copy(), file_exists() and filesize(). In addition to these wrappers, it is possible to register custom wrappers using the stream_wrapper_register() function.

Nota: The URL syntax used to describe a wrapper only supports the scheme://... syntax. The scheme:/ and scheme: syntaxes are not supported.

Índice

  • Filesystem — Accessing local filesystem
  • HTTP and HTTPS — Accessing HTTP(s) URLs
  • FTP and FTPS — Accessing FTP(s) URLs
  • PHP input/output — Accessing various I/O streams
  • zlib, bzip2 and zip — Compression Streams
  • data:// — Data (RFC 2397)
  • Glob — Find pathnames matching pattern
  • phar:// — PHP Archive
  • ssh2:// — Secure Shell 2
  • rar:// — RAR
  • ogg:// — Audio streams
  • expect:// — Process Interaction Streams
Context parameters
Filesystem
Referência da Linguagem


Accessing local filesystem

Supported Protocols and Wrappers
HTTP and HTTPS
Supported Protocols and Wrappers
PHP Manual

Filesystem

Filesystem — Accessing local filesystem

Descrição

Filesystem is the default wrapper used with PHP and represents the local filesystem. When a relative path is specified (a path which does not begin with /, \, \\, or a Windows drive letter) the path provided will be applied against the current working directory. In many cases this is the directory in which the script resides unless it has been changed. Using the CLI sapi, this defaults to the directory from which the script was called.

With some functions, such as fopen() and file_get_contents(), include_path may be optionally searched for relative paths as well.

Opções

  • /path/to/file.ext
  • relative/path/to/file.ext
  • fileInCwd.ext
  • C:/path/to/winfile.ext
  • C:\path\to\winfile.ext
  • \\smbserver\share\path\to\winfile.ext
  • file:///path/to/file.ext

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Allows Reading | Yes
Allows Writing | Yes
Allows Appending | Yes
Allows Simultaneous Reading and Writing | Yes
Supports stat() | Yes
Supports unlink() | Yes
Supports rename() | Yes
Supports mkdir() | Yes
Supports rmdir() | Yes

Histórico

Versão | Descrição
5.0.0 | Added file://.

Supported Protocols and Wrappers
HTTP and HTTPS
Supported Protocols and Wrappers


Accessing HTTP(s) URLs

Filesystem
FTP and FTPS
Supported Protocols and Wrappers
PHP Manual

HTTP and HTTPS

HTTP and HTTPS — Accessing HTTP(s) URLs

Descrição

Allows read-only access to files/resources via HTTP 1.0, using the HTTP GET method. A Host: header is sent with the request to handle name-based virtual hosts. If you have configured a user_agent string using your php.ini file or the stream context, it will also be included in the request.

The stream allows access to the body of the resource; the headers are stored in the $http_response_header variable.

If it's important to know the URL of the resource where your document came from (after all redirects have been processed), you'll need to process the series of response headers returned by the stream.

The from directive will be used for the From: header if set and not overwritten by the Context options and parameters.

Opções

  • http://example.com
  • http://example.com/file.php?var1=val1&var2=val2
  • http://user:password@example.com
  • https://example.com
  • https://example.com/file.php?var1=val1&var2=val2
  • https://user:password@example.com

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | Yes
Allows Reading | Yes
Allows Writing | No
Allows Appending | No
Allows Simultaneous Reading and Writing | N/A
Supports stat() | No
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Histórico

Versão | Descrição
4.3.7 | Detect buggy IIS servers to avoid "SSL: Fatal Protocol Error" errors.
4.3.0 | Added https://.
4.0.5 | Added support for redirects.

Exemplos

Exemplo #1 Detecting which URL we ended up on after redirects

<?php
$url = 'http://www.example.com/redirecting_page.php';

$fp = fopen($url, 'r');

$meta_data = stream_get_meta_data($fp);
foreach($meta_data['wrapper_data'] as $response) {

    /* Were we redirected? */
    if (substr(strtolower($response), 0, 10) == 'location: ') {

        /* update $url with where we were redirected to */
        $url = substr($response, 18);
    }

}

?>

Exemplo #2 Sending custom headers with an HTTP request

Custom headers may be sent with an HTTP request by taking advantage of a side-effect in the handling of the user_agent INI setting. Set user_agent to any valid string (such as the default PHP/version setting) followed by a carriage-return/line-feed pair and any additional headers. This method works in PHP 4 and all later versions.

<?php
ini_set('user_agent', "PHP\r\nX-MyCustomHeader: Foo");

$fp = fopen('http://www.example.com/index.php', 'r');
?>

Results in the following request being sent:

GET /index.php HTTP/1.0
Host: www.example.com
User-Agent: PHP
X-MyCustomHeader: Foo

Notas

Nota: HTTPS is only supported when the openssl extension is enabled.

HTTP connections are read-only; writing data or copying files to an HTTP resource is not supported.

Sending POST and PUT requests, for example, can be done with the help of HTTP Contexts.

Veja Também

  • HTTP context options
  • $http_response_header
  • stream_get_meta_data() - Retrieves header/meta data from streams/file pointers
Filesystem
FTP and FTPS
Supported Protocols and Wrappers


Accessing FTP(s) URLs

HTTP and HTTPS
PHP input/output
Supported Protocols and Wrappers
PHP Manual

FTP and FTPS

FTP and FTPS — Accessing FTP(s) URLs

Descrição

Allows read access to existing files and creation of new files via FTP. If the server does not support passive mode ftp, the connection will fail.

You can open files for either reading or writing, but not both simultaneously. If the remote file already exists on the ftp server and you attempt to open it for writing but have not specified the context option overwrite, the connection will fail. If you need to overwrite existing files over ftp, specify the overwrite option in the context and open the file for writing. Alternatively, you can use the FTP extension.

If you have set the from directive in php.ini, then this value will be sent as the anonymous FTP password.

Opções

  • ftp://example.com/pub/file.txt
  • ftp://user:password@example.com/pub/file.txt
  • ftps://example.com/pub/file.txt
  • ftps://user:password@example.com/pub/file.txt

Opções

Wrapper Summary
Attribute | PHP 4 | PHP 5
Restricted by allow_url_fopen | Yes | Yes
Allows Reading | Yes | Yes
Allows Writing | Yes (new files only) | Yes (new files/existing files with overwrite)
Allows Appending | No | Yes
Allows Simultaneous Reading and Writing | No | No
Supports stat() | No | As of PHP 5.0.0: filesize(), filetype(), file_exists(), is_file(), and is_dir() elements only. As of PHP 5.1.0: filemtime().
Supports unlink() | No | Yes
Supports rename() | No | Yes
Supports mkdir() | No | Yes
Supports rmdir() | No | Yes

Histórico

Versão | Descrição
4.3.0 | Added ftps://.

Notas

Nota:

FTPS is only supported when the openssl extension is enabled.

If the server does not support SSL, then the connection falls back to regular unencrypted ftp.

Nota: Appending
As of PHP 5.0.0 files may be appended via the ftp:// URL wrapper. In prior versions, attempting to append to a file via ftp:// will result in failure.

Veja Também

  • FTP context options
HTTP and HTTPS
PHP input/output
Supported Protocols and Wrappers


Accessing various I/O streams

FTP and FTPS
zlib, bzip2 and zip
Supported Protocols and Wrappers
PHP Manual

PHP input/output

PHP input/output — Accessing various I/O streams

Descrição

php://stdin, php://stdout and php://stderr allow direct access to the corresponding input or output stream of the PHP process. The stream references a duplicate file descriptor, so if you open php://stdin and later close it, you close only your copy of the descriptor-the actual stream referenced by STDIN is unaffected. Note that PHP exhibited buggy behavior in this regard until PHP 5.2.1. It is recommended that you simply use the constants STDIN, STDOUT and STDERR instead of manually opening streams using these wrappers.

php://output allows you to write to the output buffer mechanism in the same way as print() and echo().

php://input allows you to read raw data from the request body. In case of POST requests, it preferrable to $HTTP_RAW_POST_DATA as it does not depend on special php.ini directives. Moreover, for those cases where $HTTP_RAW_POST_DATA is not populated by default, it is a potentially less memory intensive alternative to activating always_populate_raw_post_data. php://input is not available with enctype="multipart/form-data".

Nota: A stream opened with php://input can only be read once; the stream does not support seek operations. However, depending on the SAPI implementation, it may be possible to open another php://input stream and restart reading. This is only possible if the request body data has been saved. Typically, this is the case for POST requests, but not other request methods, such as PUT or PROPFIND.

php://stdin and php://input are read-only, whereas php://stdout, php://stderr and php://output are write-only.

php://fd allows direct access to the given file descriptor. For example, php://fd/3 refers to file descriptor 3.

php://filter is a kind of meta-wrapper designed to permit the application of filters to a stream at the time of opening. This is useful with all-in-one file functions such as readfile(), file(), and file_get_contents() where there is otherwise no opportunity to apply a filter to the stream prior the contents being read.

The php://filter target takes the following 'parameters' as parts of its 'path'.

Opções

  • php://stdin
  • php://stdout
  • php://stderr
  • php://output
  • php://input
  • php://filter (available since PHP 5.0.0)
  • php://memory (available since PHP 5.1.0)
  • php://temp (available since PHP 5.1.0)
  • php://fd (available since PHP 5.3.6)

Opções

Wrapper Summary (For php://filter, refer to summary of wrapper being filtered.)
Attribute | Supported
Restricted by allow_url_fopen | No
Restricted by allow_url_include | php://input, php://stdin, php://memory and php://temp only.
Allows Reading | php://stdin, php://input, php://fd, php://memory and php://temp only.
Allows Writing | php://stdout, php://stderr, php://output, php://fd, php://memory and php://temp only.
Allows Appending | php://stdout, php://stderr, php://output, php://fd, php://memory and php://temp only. (Equivalent to writing)
Allows Simultaneous Reading and Writing | php://fd, php://memory and php://temp only.
Supports stat() | php://memory and php://temp only.
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No
Supports stream_select() | php://stdin, php://stdout, php://stderr, php://fd and php://temp only.

Exemplos

Exemplo #1 /resource=<stream to be filtered> (required)

This parameter must be located at the end of your php://filter specification and should point to the stream which you want filtered.

<?php
/* This is equivalent to simply:
   readfile("http://www.example.com");
   since no filters are actually specified */

readfile("php://filter/resource=http://www.example.com");
?>

Exemplo #2 /read=<filter list to apply to read chain> (optional)

This parameter takes one or more filternames separated by the pipe character |.

<?php
/* This will output the contents of
   www.example.com entirely in uppercase */
readfile("php://filter/read=string.toupper/resource=http://www.example.com");

/* This will do the same as above
   but will also ROT13 encode it */
readfile("php://filter/read=string.toupper|string.rot13/resource=http://www.example.com");
?>

Exemplo #3 /write=<filter list to apply to write chain> (optional)

This parameter takes one or more filternames separated by the pipe character |.

<?php
/* This will filter the string "Hello World"
   through the rot13 filter, then write to
   example.txt in the current directory */
file_put_contents("php://filter/write=string.rot13/resource=example.txt","Hello World");
?>

/<filter list to apply to both chains> (optional) Any filter lists which are not prefixed specifically by read= or write= will be applied to both the read and write chains (as appropriate).

The php://memory wrapper stores the data in the memory. php://temp behaves similarly, but uses a temporary file for storing the data when a certain memory limit is reached (the default is 2 MB).

The php://temp wrapper takes the following 'parameters' as parts of its 'path':

Exemplo #4 /maxmemory:<number of bytes> (optional)

This parameter allows changing the default value for the memory limit (when the data is moved to a temporary file).

<?php
$fiveMBs = 5 * 1024 * 1024;
$fp = fopen("php://temp/maxmemory:$fiveMBs", 'r+');

fputs($fp, "hello\n");

// read what we have written
rewind($fp);
echo stream_get_contents($fp);
?>
FTP and FTPS
zlib, bzip2 and zip
Supported Protocols and Wrappers


Compression Streams

PHP input/output
data://
Supported Protocols and Wrappers
PHP Manual

zlib, bzip2 and zip

zlib, bzip2 and zip — Compression Streams

Descrição

zlib: PHP 4.0.4 - PHP 4.2.3 (systems with fopencookie only)

compress.zlib:// and compress.bzip2:// PHP 4.3.0 and up

zlib: works like gzopen(), except that the stream can be used with fread() and the other filesystem functions. This is deprecated as of PHP 4.3.0 due to ambiguities with filenames containing ':' characters; use compress.zlib:// instead.

compress.zlib:// and compress.bzip2:// are equivalent to gzopen() and bzopen() respectively, and operate even on systems that do not support fopencookie.

ZIP extension registers zip: wrapper.

Opções

  • zlib:
  • compress.zlib://
  • compress.bzip2://

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Allows Reading | Yes
Allows Writing | Yes
Allows Appending | Yes
Allows Simultaneous Reading and Writing | No
Supports stat() | No, use the normal file:// wrapper to stat compressed files.
Supports unlink() | No, use the normal file:// wrapper to unlink compressed files.
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

PHP input/output
data://
Supported Protocols and Wrappers


Data (RFC 2397)

zlib, bzip2 and zip
Glob
Supported Protocols and Wrappers
PHP Manual

data://

data:// — Data (RFC 2397)

Descrição

The data: (» RFC 2397) stream wrapper is available since PHP 5.2.0.

Opções

  • data://text/plain;base64,

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Restricted by allow_url_include | Yes
Allows Reading | Yes
Allows Writing | No
Allows Appending | No
Allows Simultaneous Reading and Writing | No
Supports stat() | No
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Exemplos

Exemplo #1 Print data:// contents

<?php
// prints "I love PHP"
echo file_get_contents('data://text/plain;base64,SSBsb3ZlIFBIUAo=');
?>

Exemplo #2 Fetch the media type

<?php
$fp   = fopen('data://text/plain;base64,', 'r');
$meta = stream_get_meta_data($fp);

// prints "text/plain"
echo $meta['mediatype'];
?>
zlib, bzip2 and zip
Glob
Supported Protocols and Wrappers


Find pathnames matching pattern

data://
phar://
Supported Protocols and Wrappers
PHP Manual

Glob

Glob — Find pathnames matching pattern

Descrição

The glob: stream wrapper is available since PHP 5.3.0.

Opções

  • glob://

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Restricted by allow_url_include | No
Allows Reading | No
Allows Writing | No
Allows Appending | No
Allows Simultaneous Reading and Writing | No
Supports stat() | No
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Exemplos

Exemplo #1 Basic usage

<?php
// Loop over all *.php files in ext/spl/examples/ directory
// and print the filename and its size
$it = new DirectoryIterator("glob://ext/spl/examples/*.php");
foreach($it as $f) {
    printf("%s: %.1FK\n", $f->getFilename(), $f->getSize()/1024);
}
?>
tree.php: 1.0K
findregex.php: 0.6K
findfile.php: 0.7K
dba_dump.php: 0.9K
nocvsdir.php: 1.1K
phar_from_dir.php: 1.0K
ini_groups.php: 0.9K
directorytree.php: 0.9K
dba_array.php: 1.1K
class_tree.php: 1.8K
data://
phar://
Supported Protocols and Wrappers


PHP Archive

Glob
ssh2://
Supported Protocols and Wrappers
PHP Manual

phar://

phar:// — PHP Archive

Descrição

The phar:// stream wrapper is available since PHP 5.3.0. See Phar stream wrapper for detailed description.

Opções

  • phar://

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Restricted by allow_url_include | No
Allows Reading | Yes
Allows Writing | Yes
Allows Appending | No
Allows Simultaneous Reading and Writing | Yes
Supports stat() | Yes
Supports unlink() | Yes
Supports rename() | Yes
Supports mkdir() | Yes
Supports rmdir() | Yes

Veja Também

  • Phar context options
Glob
ssh2://
Supported Protocols and Wrappers


Secure Shell 2

phar://
rar://
Supported Protocols and Wrappers
PHP Manual

ssh2://

ssh2:// — Secure Shell 2

Descrição

ssh2.shell:// ssh2.exec:// ssh2.tunnel:// ssh2.sftp:// ssh2.scp:// PHP 4.3.0 and up (PECL)

Nota: This wrapper is not enabled by default
In order to use the ssh2.*:// wrappers you must install the » SSH2 extension available from » PECL.

In addition to accepting traditional URI login details, the ssh2 wrappers will also reuse open connections by passing the connection resource in the host portion of the URL.

Opções

  • ssh2.shell://user:pass@example.com:22/xterm
  • ssh2.exec://user:pass@example.com:22/usr/local/bin/somecmd
  • ssh2.tunnel://user:pass@example.com:22/192.168.0.1:14
  • ssh2.sftp://user:pass@example.com:22/path/to/filename

Opções

Wrapper Summary
Attribute | ssh2.shell | ssh2.exec | ssh2.tunnel | ssh2.sftp | ssh2.scp
Restricted by allow_url_fopen | Yes | Yes | Yes | Yes | Yes
Allows Reading | Yes | Yes | Yes | Yes | Yes
Allows Writing | Yes | Yes | Yes | Yes | No
Allows Appending | No | No | No | Yes (When supported by server) | No
Allows Simultaneous Reading and Writing | Yes | Yes | Yes | Yes | No
Supports stat() | No | No | No | Yes | No
Supports unlink() | No | No | No | Yes | No
Supports rename() | No | No | No | Yes | No
Supports mkdir() | No | No | No | Yes | No
Supports rmdir() | No | No | No | Yes | No

Context options
Name | Usage | Default
session | Preconnected ssh2 resource to be reused |
sftp | Preallocated sftp resource to be reused |
methods | Key exchange, hostkey, cipher, compression, and MAC methods to use |
callbacks |  |
username | Username to connect as |
password | Password to use with password authentication |
pubkey_file | Name of public key file to use for authentication |
privkey_file | Name of private key file to use for authentication |
env | Associate array of environment variables to set |
term | Terminal emulation type to request when allocating a pty |
term_width | Width of terminal requested when allocating a pty |
term_height | Height of terminal requested when allocating a pty |
term_units | Units to use with term_width and term_height | SSH2_TERM_UNIT_CHARS

Exemplos

Exemplo #1 Opening a stream from an active connection

<?php
$session = ssh2_connect('example.com', 22);
ssh2_auth_pubkey_file($session, 'username', '/home/username/.ssh/id_rsa.pub',
                                            '/home/username/.ssh/id_rsa', 'secret');
$stream = fopen("ssh2.tunnel://$session/remote.example.com:1234", 'r');
?>
phar://
rar://
Supported Protocols and Wrappers


RAR

ssh2://
ogg://
Supported Protocols and Wrappers
PHP Manual

rar://

rar:// — RAR

Descrição

The wrapper takes the url encoded path to the RAR archive (relative or absolute), an optional asterik (*), an optional number sign (#) and an optional url encoded entry name, as stored in the archive. Specifying an entry name requires the number sign; a leading forward slash in the entry name is optional.

This wrapper can open both files and directories. When opening directories, the asterisk sign forces the directory entries names to be returned unencoded. If it's not specified, they will be returned url encoded – the reason for this is to allow the wrapper to be correctly used with built-in functionality like the RecursiveDirectoryIterator in the presence of file names that seem like url encoded data.

If the pound sign and the entry name part are not included, the root of the archive will be displayed. This differs from regular directories in that the resulting stream will not contain information such as the modification time, as the root directory is not stored in an inidivual entry in the archive. The usage of the wrapper with RecursiveDirectoryIterator requires the number sign to be included in the URL when accessing the root, so that the URLs of the children may be constructed correctly.

Nota: This wrapper is not enabled by default
In order to use the rar:// wrapper, you must install the » rar extension available from » PECL.

rar:// Available since PECL rar 3.0.0

Opções

  • rar://<url encoded archive name>[*][#[<url encoded entry name>]]

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Restricted by allow_url_include | No
Allows Reading | Yes
Allows Writing | No
Allows Appending | No
Allows Simultaneous Reading and Writing | No
Supports stat() | Yes
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Context options
Name | Usage | Default
open_password | The password used to encrypt the headers of the archive, if any. WinRAR will encrypt all the files with the same password as the headers password when the later is present, so for archives with encrypted headers, file_password will be ignored. |
file_password | The password used to encrypt a file, if any. If the headers are also encrypted, this option will be ignored in favor of open_password. The reason there are two options is to cover the possibility of supporting archives with different headers and file passwords, should those archives arise. Note that if the archive does not have its headers encrypted, open_password will be ignored and this option must be used instead. |
volume_callback | A callback to determine the path of missing volumes. See RarArchive::open() for more information. |

Exemplos

Exemplo #1 Traversing a RAR archive

<?php

class MyRecDirIt extends RecursiveDirectoryIterator {
    function current() {
        return rawurldecode($this->getSubPathName()) .
            (is_dir(parent::current())?" [DIR]":"");
    }
}

$f = "rar://" . rawurlencode(dirname(__FILE__)) .
    DIRECTORY_SEPARATOR . 'dirs_and_extra_headers.rar#';

$it = new RecursiveTreeIterator(new MyRecDirIt($f));

foreach ($it as $s) {
    echo $s, "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

|-allow_everyone_ni [DIR]
|-file1.txt
|-file2_אּ.txt
|-with_streams.txt
\-אּ [DIR]
  |-אּ\%2Fempty%2E [DIR]
  | \-אּ\%2Fempty%2E\file7.txt
  |-אּ\empty [DIR]
  |-אּ\file3.txt
  |-אּ\file4_אּ.txt
  \-אּ\אּ_2 [DIR]
    |-אּ\אּ_2\file5.txt
    \-אּ\אּ_2\file6_אּ.txt

Exemplo #2 Opening an encrypted file (header encryption)

<?php
$stream = fopen("rar://" .
    rawurlencode(dirname(__FILE__)) . DIRECTORY_SEPARATOR .
    'encrypted_headers.rar' . '#encfile1.txt', "r", false,
    stream_context_create(
        array(
            'rar' =>
                array(
                    'open_password' => 'samplepassword'
                )
            )
        )
    );
var_dump(stream_get_contents($stream));
/* creation and last access date is opt-in in WinRAR, hence most
 * files don't have them */
var_dump(fstat($stream));
?>

O exemplo acima irá imprimir algo similar a:

string(26) "Encrypted file 1 contents."
Array
(
    [0] => 0
    [1] => 0
    [2] => 33206
    [3] => 1
    [4] => 0
    [5] => 0
    [6] => 0
    [7] => 26
    [8] => 0
    [9] => 1259550052
    [10] => 0
    [11] => -1
    [12] => -1
    [dev] => 0
    [ino] => 0
    [mode] => 33206
    [nlink] => 1
    [uid] => 0
    [gid] => 0
    [rdev] => 0
    [size] => 26
    [atime] => 0
    [mtime] => 1259550052
    [ctime] => 0
    [blksize] => -1
    [blocks] => -1
)
ssh2://
ogg://
Supported Protocols and Wrappers


Audio streams

rar://
expect://
Supported Protocols and Wrappers
PHP Manual

ogg://

ogg:// — Audio streams

Descrição

Files opened for reading via the ogg:// wrapper are treated as compressed audio encoded using the OGG/Vorbis codec. Similarly, files opened for writing or appending via the ogg:// wrapper are writen as compressed audio data. stream_get_meta_data(), when used on an OGG/Vorbis file opened for reading will return various details about the stream including the vendor tag, any included comments, the number of channels, the sampling rate, and the encoding rate range described by: bitrate_lower, bitrate_upper, bitrate_nominal, and bitrate_window.

ogg:// PHP 4.3.0 and up (PECL)

Nota: This wrapper is not enabled by default
In order to use the ogg:// wrapper you must install the » OGG/Vorbis extension available from » PECL.

Opções

  • ogg://soundfile.ogg
  • ogg:///path/to/soundfile.ogg
  • ogg://http://www.example.com/path/to/soundstream.ogg

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Allows Reading | Yes
Allows Writing | Yes
Allows Appending | Yes
Allows Simultaneous Reading and Writing | No
Supports stat() | No
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Context options
Name | Usage | Default | Mode
pcm_mode | PCM encoding to apply while reading, one of: OGGVORBIS_PCM_U8, OGGVORBIS_PCM_S8, OGGVORBIS_PCM_U16_BE, OGGVORBIS_PCM_S16_BE, OGGVORBIS_PCM_U16_LE, and OGGVORBIS_PCM_S16_LE. (8 vs 16 bit, signed or unsigned, big or little endian) | OGGVORBIS_PCM_S16_LE | Read
rate | Sampling rate of input data, expressed in Hz | 44100 | Write/Append
bitrate | When given as an integer, the fixed bitrate at which to encode. (16000 to 131072) When given as a float, the variable bitrate quality to use. (-1.0 to 1.0) | 128000 | Write/Append
channels | The number of audio channels to encode, typically 1 (Mono), or 2 (Stero). May range as high as 16. | 2 | Write/Append
comments | An array of string values to encode into the track header. |  | Write/Append

Exemplos

rar://
expect://
Supported Protocols and Wrappers


Process Interaction Streams

ogg://
Segurança
Supported Protocols and Wrappers
PHP Manual

expect://

expect:// — Process Interaction Streams

Descrição

Streams opened via the expect:// wrapper provide access to process'es stdio, stdout and stderr via PTY.

Nota: This wrapper is not enabled by default
In order to use the expect:// wrapper you must install the » Expect extension available from » PECL.

expect:// PHP 4.3.0 and up (PECL)

Opções

  • expect://command

Opções

Wrapper Summary
Attribute | Supported
Restricted by allow_url_fopen | No
Allows Reading | Yes
Allows Writing | Yes
Allows Appending | Yes
Allows Simultaneous Reading and Writing | No
Supports stat() | No
Supports unlink() | No
Supports rename() | No
Supports mkdir() | No
Supports rmdir() | No

Exemplos

ogg://
Segurança
Supported Protocols and Wrappers


Segurança

  • Introdução
  • Considerações Gerais
  • Instalando como binário CGI
    • Ataque Possível
    • Caso 1: apenas arquivos públicos são disponibilizados
    • Caso 2: usando --enable-force-cgi-redirect
    • Caso 3: configurando doc_root ou user_dir
    • Caso 4: Interpretador do PHP fora da árvore de diretórios do servidor web
  • Instalado como módulo do Apache
  • Segurança do Sistema de Arquivos
    • Problemas relacionados a bytes nulos (Null)
  • Segurança de Bancos de Dados
    • Desenhando Bancos de Dados
    • Conectando com o Banco de Dados
    • Modelo de Armazenamento Criptografado
    • Injeção de SQL
  • Relatando Erros
  • Usando a diretiva Register Globals
  • Dados Enviados pelo Usuário
  • Magic Quotes
    • O que são Magic Quotes
    • Porque nós usamos Magic Quotes
    • Por que não usar Magic Quotes?
    • Desabilitando Magic Quotes
  • Escondendo o PHP
  • Mantendo-se Atualizado
expect://
Introdução
Manual do PHP


Introdução

PHP é uma linguagem poderosa e um interpretador, seja incluído em um servidor web como um módulo ou executado separadamente como binário CGI, é possível acessar arquivos, executar comandos e abrir conexões de rede no servidor. Essas propriedades fazem qualquer coisa executando em um servidor web inseguras por padrão. PHP é desenhado especificamente para ser uma linguagem mais segura para escrever programas CGI que Perl ou C, e com a escolha correta de opções de configuração em tempo compilação ou de execução, e práticas corretas de programação, ela pode dar a combinação exata de liberdade e segurança que você precisa.

Como existem diferentes maneiras de utilizar o PHP, existem várias opções de configuração controlando seu comportamento. Um grande leque de opções garante que você pode usar o PHP para vários propósitos, mas também significa que existem combinações dessas opções e configurações do servidor que resultam em uma instalação insegura.

A flexibilidade de configuração do PHP é comparável com a flexibilidade de código. PHP pode ser usado para montar um servidor de aplicações completo, com todo o poder de um usuário shell, ou pode ser usado para inclusão simples de arquivos no lado do servidor com pouco risco em um ambiente bem controlado. Como montar o ambiente, e o quão seguro ele é, depende muito do desenvolvedor.

Esse capítulo começa com alguns conselhos genéricos de segurança, explica as diferentes combinações de opções de configuração e as situações nas quais elas podem ser usadas com segurança e descreve diferentes considerações quanto ao desenvolvimento para diferentes níveis de segurança.

Segurança
Considerações Gerais
Segurança


Considerações Gerais

Um sistema completamente seguro é virtualmente impossível de se conseguir, então uma abordagem freqüentemente usada em segurança é um compromisso entre risco e usabilidade. Se cada variável enviada pelo usuário precias de duas formas de validação biométrica (como escaneamento de retina e impressão digital), você teria um nível de checagem extremamente alto. Demoraria meia hora para preencher um formulário mais ou menos complexo, o que incentivaria os usuários a achar maneiras de burlar a segurana.

A melhor segurança é frequentemente aquele preenche os requerimentos sem obstruir o usuário de fazer o seu trabalho, ou sobrecarregando o programador com complexidade excessiva. De fato, alguns ataques de segurança exploram esse tipo de segurança super-produzida, que tende a degradar com o tempo.

Uma frase que vale a pena lembrar: Um sistema é tão bom quanto o elo mais fraco na corrente. Se todas as transações são maciçamente registradas baseado no tempo, localização, tipo de transação, etc. mas o usuário só é verificado baseado em um único cookie, a validade de ligar os usuários ao registro de transação torna-se muito fraca.

Quando estiver testando, tenha em mente que você não será capaz de testar todas as possibilidades nem mesmo para as páginas mais simples. A entrada que você pode esperar será totalmente diferente da entrada dada por um empregado irritado, um cracker com meses livres para tentar quebrar o sistema, ou um gato andando pelo teclado. Por isso é melhor olhar ao código da perspectiva lógica, para discernir onde dados inesperados podem ser introduzidos, e depois seguir aonde o mesmo é modificado, reduzido ou amplificado.

A Internet está cheia de gente tentando fazer o próprio nome quebrando o código dos outros, derrubando sites, enviando conteúdo indevido e de outras formas fazendo seu dia interessante. Não importa se você tem um site grande ou pequeno, você é um alvo simplesmente por estar online, tendo um servidor que pode ser conectado. Muitos programas de cracking não discernem por tamanho, eles simplesmente vasculham blocos gigantes de IPs procurando por vítimas. Tente não se tornar um.

Introdução
Instalando como binário CGI
Segurança


Instalando como binário CGI

Índice

  • Ataque Possível
  • Caso 1: apenas arquivos públicos são disponibilizados
  • Caso 2: usando --enable-force-cgi-redirect
  • Caso 3: configurando doc_root ou user_dir
  • Caso 4: Interpretador do PHP fora da árvore de diretórios do servidor web
Considerações Gerais
Ataque Possível
Segurança


Ataque Possível

Usando o PHP como binário CGI é uma opção de instalação que por alguma razão não deseja integrar o PHP como um módulo no servidor (como o Apache), ou usará o PHP com tipos diferentes de CGI wrappers para criar ambientes chroot e setuid seguros para os scripts. Esse tipo de instalação normalmente involve copiar o binário executável para o diretório cgi-bin do servidor web. CERT advisory » CA-96.11 recomenda não colocar qualquer interpretador nesse diretório. Mesmo se o binário do PHP pode ser usado como um interpretador autônomo, o PHP foi desenhado para previnir os ataques que essa forma de instalação torna possível:

  • Acessar arquivos de sistema: http://my.host/cgi-bin/php?/etc/passwd A informação de consulta em uma URML depois da interrogração (?) é passada como argumentos de linha de comando para o interpretador pea interface CGI. Normalmente os interpretadores abrem e executam o arquivo especificado como primeiro argumento na linha de comando. Quando invocado como binárgio CGI, o PHP se recusa a interpretar os argumentos de linha de comando.
  • Acessar qualquer domento web no servidor: http://my.host/cgi-bin/php/secret/doc.html A parte de informação de caminho da URL depois do nome do binário do PHP, /secret/doc.html é convencionalmente usada para especificar o nome do arquivo a ser aberto e interpretado pelo programa CGI Normalmente algumas diretivas de configuração do servidor web (Apache: Action) são usadas para redirecionar requisições para documentos como http://my.host/secret/script.php para o interpretados do PHP. Dessa maneira, o servidor web primeiro checa as permissões de acesso ao diretório /secret, e depois cria a requisição redirecionada http://my.host/cgi-bin/php/secret/script.php. Infelizmente, se a requisição é dada originalmente nessa forma, a checagem de permissão não é feita para o arquivo /secret/script.php, mas apenas para o arquivo /cgi-bin/php. Dessa maneira qualquer usuário que pode acessar /cgi-bin/php pode acessar quaisquer documentos protegidos no servidor web. No PHP, a opção de configuração em tempo de compilação --enable-force-cgi-redirect e as diretivas de configuração de tempo de execução doc_root e user_dir podem ser usadas para previnir esse ataque, se a árvore de documentos do servidor tiver qualquer diretório com restrições de acesso. Veja abaixo para uma explicação completa de combinações diferentes.
Instalando como binário CGI
Caso 1: apenas arquivos públicos são disponibilizados
Instalando como binário CGI


Caso 1: apenas arquivos públicos são disponibilizados

Se o seu servidor não tiver qualquer conteúdo que não é restringido por senha ou por IP, não há necessidade para essas opções de configuração. Se seu servidor web não permitir que você faça redirecionamento, ou o servidor não tem uma maneira de comunicar ao binário PHP que a requisição é uma redirecionada de maneira segura, você pode especificar a opção --enable-force-cgi-redirect no script configure. Você ainda tem que assegura que o seus scripts PHP não confiem com uma ou outra maneira de chamar o script, nem diretamente http://my.host/cgi-bin/php/dir/script.php nem por redirecionamento http://my.host/dir/script.php.

Redirecionamento pode ser configurado no Apache usando AddHandler e diretivas Action (veja abaixo).

Ataque Possível
Caso 2: usando --enable-force-cgi-redirect
Instalando como binário CGI


Caso 2: usando --enable-force-cgi-redirect

Essa opção em tempo de compilação previne que qualquer usuário chame o PHP diretamente com uma URL como http://my.host/cgi-bin/php/secretdir/script.php. Ao invés disso, o PHP só executará nesse mode se passar por uma regra de redirecionamento do servidor.

Normalmente o redirecionamento na configuração do Apache é feita com as seguintes diretivas:

Action php-script /cgi-bin/php
AddHandler php-script .php

Essa opção só foi testada com o servidor Apache, e confia no Apache para configura a variável de ambiente não-padrão do CGI REDIRECT_STATUS em requisições redirecionadas. Se seu servidor web não suporta nenhuma maneira de dizer se a requisição é direta ou rediracionada, você não pode usar essa opção e você deve usar uma das outras maneira de executar a versão do CGI documentada aqui.

Caso 1: apenas arquivos públicos são disponibilizados
Caso 3: configurando doc_root ou user_dir
Instalando como binário CGI


Caso 3: configurando doc_root ou user_dir

Para incluir conteúdo ativo, como script e executáveis, nos diretórios de documentos do servidor é algumas vezes consideread uma prática insegura. Se, por conta de um erro de configuração, os scripts não são executados mas mostrados como documentos HTML normais, isso pode resultar em vazamento de propriedade intelectual ou informação de segurança, como senhas. Portanto, muitos administradores preferirão configura outra estrutura de diretório para scripts que são acessíveis apenas pelo CGI do PHP, e, portanto, sempre interpretados e não enviado ao navegador.

Além disso, se o método para assegura que as requisições não são redirecionadas, como descrito na seção anterior, não estiver disponível, é necessário configura um doc_root para os script que é diferente do doc_root do servidor web.

Você pode configura a raiz de documentos dos scripts PHP pela diretiva de configuração doc_root no arquivo de configuração, ou você pode criar a variável de ambiente PHP_DOCUMENT_ROOT. Se ela existir, a versão CGI do PHP sempre construirá o nome de arquivo para ser aberto com esse doc_root e a informação de caminho na requisição, para assegurar que nenhum script é executado fora desse diretório (exceto por user_dir abaixo).

Outra opção utilizável é user_dir. Quando user_dir não existir, a única coisa controlando o nome do arquivo aberto é doc_root. Abrir uma URL como http://my.host/~user/doc.php não resulta em abrir um arquivo no diretório home de users, mas um arquivo chamado ~user/doc.php dentro de doc_root (sim, um nome de diretório começando com til [~]).

Se user_dir existir e tiver valor de, por exemplo, public_php, uma requisição como http://my.host/~user/doc.php abrirá o arquivo chamado doc.php no diretório chamado public_php dentro do diretório home do usuário. Se o home do usuário é /home/user, o arquivo executado é /home/user/public_php/doc.php.

A expansão de user_dir acontece independente da configuração de doc_root, para que você possa controlar a raiz de documentos e de acesso de diretório do usuário separadamente.

Caso 2: usando --enable-force-cgi-redirect
Caso 4: Interpretador do PHP fora da árvore de diretórios do servidor web
Instalando como binário CGI


Caso 4: Interpretador do PHP fora da árvore de diretórios do servidor web

Uma maneira muito segura é colocar o interpretador do PHP em algum lugar longe dos arquivos da árvore de diretórios do servidor. Em /usr/local/bin, por exemplo. A única desvantagem real para essa opção é que você terá que colocar uma linha similar à:

#!/usr/local/bin/php
como a primeira linha de qualquer arquivo contento tags do PHP. Você também terá que tornar o arquivo executável. Isso é, tratá-lo exatamente como você trataria qualquer script CGI escrito em Perl ou sh ou qualquer outra linguagem de script comum que usa o mecanismo de escape de shell #! para ser executado.

Para fazer o PHP tratar as informações de PATH_INFO e PATH_TRANSLATED corretamente com essa configuração, o interpretador do PHP deve ser compilado com a opção de configure --enable-discard-path.

Caso 3: configurando doc_root ou user_dir
Instalado como módulo do Apache
Instalando como binário CGI


Instalado como módulo do Apache

Quando o PHP é usado como módulo do Apache, ele herda as permissões do usuário do Apache (normalmente as do usuário "nobody"). Isso tem vários impactos de segurança e autorização. Por exemplo, se você estiver usando o PHP para acessar um banco de dados, a menos que o banco de dados tenha um controle de acesso interno, você terá que faz o banco de dados acessível ao usuário "nobody". Isso significa que um script malicioso pode acessar e modificar o banco de dados, mesmo sem um usuário e senha. É possível que um web spider pode passar em uma página web de administração do banco de dados e remover todos os bancos de dados. Você pode se proteger contra isso usando autorização do Apache, ou você pode desenvolver seu modelo de acesso prório usando LDAP, arquivos .htaccess, etc. e incluir esse código como parte dos seus scripts PHP.

Normalmente, uma vez que a segurança está estabelecida até esse ponto onde o usuário do PHP (no caso, o usuário apache) tem pouco risco atribuído a ele, você descobre que o PHP não tem permissão de escrita nos diretórios dos usuários. Ou talvez tenha sido proibido de acessar ou alterar bancos de dados. Também foi proibido de escrever arquivos, bons ou ruins, ou fazer transações de bancos de dados, boas ou ruins.

Um erro freqüente de segurança feito até esse ponto é permiter ao apache permissões de administrador (root), ou aumentar as habilidades do apahce de qualquer outra forma.

Aumentar as permissões do usuário do Apache para a de administrador é extremamente perigoso e pode comprometer o sistema inteiro, então sudo'ing, chroot'ing, ou então executar como root não deve ser considerados por aqueles que não são profissionais em segurança.

Existem algumas soluções mais simples. Usando a diretiva open_basedir você pode controlar e restringir quais diretórios o PHP tem permissão de usar. Você também pode configurar area exclusivas para o Apache, restringir todas as atividades web para arquivo que não sejam de algum usuário ou do sistema.

Caso 4: Interpretador do PHP fora da árvore de diretórios do servidor web
Segurança do Sistema de Arquivos
Segurança


Segurança do Sistema de Arquivos

Índice

  • Problemas relacionados a bytes nulos (Null)

O PHP está sujeito à segurança encontrada na maioria dos sistemas de servidor com respeito à permissões de arquivos e diretórios. Isso permite que você controle quais arquivos no sistema podem ser lidos e por quem. É preciso ter cuidado com quaisquer arquivos que são lidos por todos para assegurar que eles podem ser lidos por todos os usuários que tem acesso ao sistema de arquivos.

Já que o PHP foi desenhado para permitir acesso em nível de usuário ao sistema de aruqivos, é possível escrever um script PHP que permitirá ler arquivos do sistema com /etc/passwd, modificar suas conexões de ethernet, enviar trabalhos de impressão gigantes, etc. Isso tem algumas implicações óbvias, já que você precisa ter certeza que os arquivos que você lê e escreve são apropriados.

Considere o seguinte script, onde um usuário indica que ele quer apagar um arquivo no seu diretório home. Isso presume uma situação onde uma interface web PHP é usada regularmente para controle de arquivos, então o usuário do Apache tem permissão de apagar arquivos nos diretórios home dos usuários.

Exemplo #1 Checagem fraca de variáveis resulta em....

<?php
// remove a file from the user's home directory
$username = $_POST['user_submitted_name'];
$userfile = $_POST['user_submitted_filename'];
$homedir  = "/home/$username";

unlink("$homedir/$userfile");

echo "The file has been deleted!";
?>
Já que o nome do usuário e do arquivo são enviáveis pelo formulário, um usuário pode enviar um nome de usuário e de arquivo que pertença a outra pessoa, e apagá-lo, mesmo que eles não tenham permissão para fazê-lo. Nesse caso, você desejaria ter alguma outra forma de autenticação. Considere o que poderia acontecer se as variáveis enviadas forem "../etc/" and "passwd". O código então leria efetivamente:

Exemplo #2 ... um ataque ao sistema de arquivos

<?php
// remove um arquivo de qualquer lugar no disco rígido
// que o usuário do PHP tenha acesso. Se o PHP tiver acesso de administrador (root):
$username = $_POST['user_submitted_name']; // "../etc"
$userfile = $_POST['user_submitted_filename']; // "passwd"
$homedir  = "/home/$username"; // "/home/../etc"

unlink("$homedir/$userfile"); // "/home/../etc/passwd"

echo "The file has been deleted!";
?>
Existem duas medidas importantes que você deve tomar para previnir esses problemas.
  • Só dar permissões limitadas ao usuário executando o binário do PHP.
  • Checar todas as variáveis que são enviadas.
Aqui temos um script melhorado:

Exemplo #3 Checagem mais segura do nome do arquivo

<?php
// remove um arquivo do disco rígido que o
// usuário do PHP tenha acesso.
$username = $_SERVER['REMOTE_USER']; // usando um mecanismo de autenticação
$userfile = basename($_POST['user_submitted_filename']);
$homedir  = "/home/$username";

$filepath = "$homedir/$userfile";

if (file_exists($filepath) && unlink($filepath)) {
    $logstring = "Deleted $filepath\n";
} else {
    $logstring = "Failed to delete $filepath\n";
}
$fp = fopen("/home/logging/filedelete.log", "a");
fwrite($fp, $logstring);
fclose($fp);

echo htmlentities($logstring, ENT_QUOTES);

?>
No entanto, ele ainda possui falhas. Se seu sistema de autenticação permitir que os usuários criem seu próprios logins, e um usuário escolher o login "../etc/", o sistema está novamente exposto. Por essa razão, você pode preferir escrever uma checagem mais específica:

Exemplo #4 Checagem mais segura do nome do arquivo

<?php
$username     = $_SERVER['REMOTE_USER']; // usando um mecanismo de autenticação
$userfile     = $_POST['user_submitted_filename'];
$homedir      = "/home/$username";

$filepath     = "$homedir/$userfile";

if (!ctype_alnum($username) || !preg_match('/^(?:[a-z0-9_-]|\.(?!\.))+$/iD', $userfile)) {
    die("Bad username/filename");
}

//etc...
?>

Dependendo do seu sistema operacional, existe uma variedade enorme de arquivos que você tem que se preocupar, incluindo dispositivos (/dev/ or COM1), arquivos de configuração (arquivos /etc/ e .ini), áres de armazenamento conhecidas (/home/, My Documents), etc. Por essa razão, normalmente é mais fácil criar uma política onde você proibe tudo exceto aquilo que for explicitamente permitido.

Instalado como módulo do Apache
Problemas relacionados a bytes nulos (Null)
Segurança


Problemas relacionados a bytes nulos (Null)

Como o PHP usa funções em C para operações relacionadas ao sistema de arquivos, ele pode lidar com bytes nulos de maneira inexperada. Como bytes nules denotam fim de string em C, strings contendo eles não serão consideradas por inteiro, mas apenas até que um byte nulo ocorra. O seguinte exemplo mostra um código vulnerável que demonstra esse problema:

Exemplo #1 Script vulnerável à bytes nulos

<?php
$file = $_GET['file']; // "../../etc/passwd\0"
if (file_exists('/home/wwwrun/'.$file.'.php')) {
    // file_exists will return true as the file /home/wwwrun/../../etc/passwd exists
    include '/home/wwwrun/'.$file.'.php';
    // the file /etc/passwd will be included
}
?>

Portanto, qualquer string comprometida que é usada em uma operação de sistema de arquivos deve sempre ser validada corretamente. Aqui está uma versão melhorada do exemplo anterior:

Exemplo #2 Validando entrada corretamente

<?php
$file = $_GET['file'];

// Whitelisting possible values
switch ($file) {
    case 'main':
    case 'foo':
    case 'bar':
        include '/home/wwwrun/include/'.$file.'.php';
        break;
    default:
        include '/home/wwwrun/include/main.php';
}
?>
Segurança do Sistema de Arquivos
Segurança de Bancos de Dados
Segurança do Sistema de Arquivos


Segurança de Bancos de Dados

Índice

  • Desenhando Bancos de Dados
  • Conectando com o Banco de Dados
  • Modelo de Armazenamento Criptografado
  • Injeção de SQL

Hoje em dia, bancos de dados são componentes cardinais de qualquer aplicação web permitindo que websites forneçam conteúdo dinâmico variável. uma ves que informação muito sensível e/ou secreta pode ser guardada em um banco de dados, proteger seus bancos de dados é essencial.

Para retirar ou guardar qualquer informação, você precisa conectar-se ao banco de dados, enviar uma consulta (query) legítima, puxar o resultado e fechar a conexão. Atualmente, a linguagem mais usada para consulta nessa interação é a Structured Query Language (SQL). Veja como um atacante pode manipular uma consulta SQL.

Como você pode perceber, o PHP não pode proteger seu banco de dados sozinho. As seções a seguir tentam ser uma introdução básica em relação a como acessa e manipular banco de dados a partir de scripts PHP.

Mantenha em mente essa regra simples: defesa em profundidade. Quanto mais lugares você faz ações para aumentar a proteção do seu banco, menor a probabilidade de um atacante ter suceso em expor ou abusar de qualquer informação guardada. Bom desenho do esquema (schema) de banco de dados e da aplicação lida com seus maiores medos.

Problemas relacionados a bytes nulos (Null)
Desenhando Bancos de Dados
Segurança


Desenhando Bancos de Dados

O primeiro passo é sempre criar o banco de dados, a não ser que você queira usar um de terceiros. Quando um banco de dados é criado, ele é atribuído a um dono, que executou os comandos de criação. Normalmente, só o dono (ou um superusuário) pode faz algo com os objetos naquele banco de dados, e para permitir que outros usuários usem, privilégios devem ser concedidos.

Aplicações nunca devem conecta ao banco de dados como seu dono ou um superusuário, porque esses usuários podem executar qualquer consulta que quiserem, por exemplo, modificar o esquema (ex.: destruindo tabelas) ou removendo seu conteúdo completamente.

Você pode criar usuários de bancos de dados diferentes para cada aspecto da sua aplicação com direitos muito limitados aos objetos do banco de dados. Apenas os privilégios mais necessários devem ser concedidos, e evitar que o mesmo usuário possa interagir com o banco de dados em casos de uso diferentes. Isso significa que se invasores conseguirem acessar seu bando usando credenciais da sua aplicação, eles só podem afetar o banco tanto quanto sua aplicação.

Encorajamos não implementar toda a lógica de negócio na aplicação web (ex.: seu script). Ao invés disso, faça parte no esquema do banco, usando view, triggers ou rules. Se o sistema evoluir, crescerá a vontade de criar novas maneiras de usar o banco, e você terá que reimplementar a lógica em cada cliente separado do banco. Além disso, triggers podem ser usados para lidar com certos campos de maneira automática e transparente, o que permite dar informações quando depurar problemas com sua aplicação ou rastreando transações.

Segurança de Bancos de Dados
Conectando com o Banco de Dados
Segurança de Bancos de Dados


Conectando com o Banco de Dados

Você pode querer estabelecer as conexões sobre SSL para criptografar comunicações cliente/servidor para aumentar a segurança, ou você pode usar ssh para criptografar a conexão de rede entre clientes e o servidor de banco de dados. Se uma dessa opções for usada, monitoramento do seu tráfego e obtenção de informação sobre seu banco de dados serão dificultados por um atacante.

Desenhando Bancos de Dados
Modelo de Armazenamento Criptografado
Segurança de Bancos de Dados


Modelo de Armazenamento Criptografado

SSL/SSH protege dados transitando de um cliente para o servidor, mas não protege os dados guardados em um banco de dados. SSL é um protocolo on-the-wire.

Uma vez que o atacante ganha acesso direto ao seu banco de dados(desviando do servidor web), os dados armazenados podem ser expostos ou sofre uso nocivo, a não ser que a informação seja protegida pelo banco em si. Criptografa os dados é uma boa maneira de diminuir essa ameaça, mas poucos bancos de dados oferecem esse tipo de criptografia de dados.

A maneira mais fácil de contornar esse problema é primeiro criar seu próprio pacote de criptografia, e então usá-lo no seus scripts PHP. O PHP pode ajudá-lo com várias extensões, tais como Mcrypt e Mhash, cobrindo uma grande variedade de algoritmos de criptografia. O script criptografa os dados antes de inserí-los no banco de dados e descriptografa quando os recupera. Veja as referência para outros exemplos de como criptografia funciona.

No caso de dados realmente escondidos, se sua representação crua não é necessária (ex.: não será mostrada), usar uma função de hash pode ser levada em consideração. Um exemplo bem conhecido disso é guardar o hash MD5 de uma senha no banco de dados ao invés da senha em si. Veja também crypt() e md5().

Exemplo #1 Usando campo de senha hasheado

<?php

// guardando hash da senha
$query  = sprintf("INSERT INTO users(name,pwd) VALUES('%s','%s');",
            pg_escape_string($username), md5($password));
$result = pg_query($connection, $query);

// consultando se o usuário enviou a senha correta
$query = sprintf("SELECT 1 FROM users WHERE name='%s' AND pwd='%s';",
            pg_escape_string($username), md5($password));
$result = pg_query($connection, $query);

if (pg_num_rows($result) > 0) {
    echo 'Welcome, $username!';
} else {
    echo 'Authentication failed for $username.';
}

?>
Conectando com o Banco de Dados
Injeção de SQL
Segurança de Bancos de Dados


Injeção de SQL

Muitos desenvolvedores web não sabem de como consultas SQL podem ser manipuladas e presumem que uma consulta de SQL é um comando confiável. Significa que consultas SQL são capazes de passar indetectado por controles de acesso, portanto desviando da autenticação padrão e de checagens de autorização, e algumas vezes consultas SQL podem permitir acesso à comando em nível do sistema operacional do servidor.

Injeção direta de comandos SQL é uma técnica onde um atacante cria ou altera comandos SQL existentes para expor dados escondidos, ou sobrescrever dados valiosos, ou ainda executar comandos de sistema perigosos no servidor. Isso é possível se a aplicação pegar a entrada do usuário e combinar com parâmetros estáticos para montar uma consulta SQL. Os exemplos a seguir são baseados em histórias verdadeiras, infelizmente.

Devido à falta de validação de entrada e conectando ao banco de dados usando o super-usuário ou um usuário que pode criar usuário, o atacante pode criar um super-usuário no seu banco de dados.

Exemplo #1 Dividinto o result set em páginas ... e criando super-usuários (PostgreSQL)

<?php

$offset = $argv[0]; // Cuidado, sem validação de entrada!
$query  = "SELECT id, name FROM products ORDER BY name LIMIT 20 OFFSET $offset;";
$result = pg_query($conn, $query);

?>
Usuários normais clicam nos links 'próxima' e 'anterior' onde $offset é codificado na URL. O script espera que o valor de $offset seja um número decimal. No entanto, e se alguém tentar invadir acrescentando a forma codificada por urlencode() da URL seguinte:
0;
insert into pg_shadow(usename,usesysid,usesuper,usecatupd,passwd)
    select 'crack', usesysid, 't','t','crack'
    from pg_shadow where usename='postgres';
--
Se isso acontecesse, então o script daria de presente acesso de super-usuário ao atacante. Perceba que 0; é para fornecer uma deslocamento válido para a consulta original e terminá-la.

Nota:

É uma técnica comum forçar o avaliador de SQL ignorar o resto da consulta escrita pelo desenvolvedor com --, que é o sinal de comentário no SQL.

Uma maneira de ganhar senha é desviar suas páginas de resultado de busca. A única coisa que o atacante precisa fazer é ver se alguma variável enviada é usada em um comando SQL que não é tratado corretamente. Esses filtros podem ser configurados de forma a personalizar cláusulas WHERE, ORDER BY, LIMIT e OFFSET em comandos SELECT Se seu banco de dados suporta o construtor UNION, o atacante pode tentar adicionar uma consulta inteira à consulta original para listar senhas de uma tabela arbitrária. Uso de campos de senha criptografados é fortemente incentivado.

Exemplo #2 Listando artigos ... e algumas senhas (qualquer banco de dados)

<?php

$query  = "SELECT id, name, inserted, size FROM products
                  WHERE size = '$size'
                  ORDER BY $order LIMIT $limit, $offset;";
$result = odbc_exec($conn, $query);

?>
A parte estática da consulta pode ser combinada com outro comando SELECT que revela todas as senhas:
'
union select '1', concat(uname||'-'||passwd) as name, '1971-01-01', '0' from usertable;
--
Se essa consulta (brincando com ' e --) fosse atribuída para uma das variáveis usadas em $query, a consulta boba acordaria.

Comandos de UPDATE também são suscetíveis a ataques. Essas consultas também são ameaçadas por cortes e acréscimos de uma nova consulta. Mas o atacante pode brincar com a cláusula SET. Nesse caso ele precisa estar de posse de alguma informação sobre o esquema para manipular a consulta com sucesso. Isso pode ser conseguido examinando os nomes das variáveis do formulário, ou simplesmente por força bruta. Não existem muitas convenções para campos guardando senhas ou nomes de usuários.

Exemplo #3 De reinicializando uma senha ... para ganhando mais privilégios (qualquer banco de dados)

<?php
$query = "UPDATE usertable SET pwd='$pwd' WHERE uid='$uid';";
?>
Mas um usuário malicioso envia o valor ' or uid like'%admin%'; -- para $uid para mudar a senha do administrador, ou simplesmente configura $pwd para "hehehe', admin='yes', trusted=100 " (com um espaço sobrando) para ganhar mais privilégios. Então, a consulta ficará torta:
<?php

// $uid == ' or uid like'%admin%'; --
$query = "UPDATE usertable SET pwd='...' WHERE uid='' or uid like '%admin%'; --";

// $pwd == "hehehe', admin='yes', trusted=100 "
$query = "UPDATE usertable SET pwd='hehehe', admin='yes', trusted=100 WHERE
...;";

?>

Um exemplo assustador de como comandos do sistema operacional podem ser acessados em alguns bancos de dados.

Exemplo #4 Atacando o sistema operacional do servidor (MSSQL Server)

<?php

$query  = "SELECT * FROM products WHERE id LIKE '%$prod%'";
$result = mssql_query($query);

?>
Se o atacante enviar o valor a%' exec master..xp_cmdshell 'net user test testpass /ADD' -- para $prod, então $query terá o valor:
<?php

$query  = "SELECT * FROM products
                    WHERE id LIKE '%a%'
                    exec master..xp_cmdshell 'net user test testpass /ADD'--";
$result = mssql_query($query);

?>
MSSQL Server executa os comandos SQL em um lote incluindo um comando para adicionar um novo usuário para o banco de dados de contas locais. Se essa aplicação estiver sendo executada como sa e o serviço MSSQLSERVER estivesse sendo executado com privilégios suficientes, o atacante teria agora uma conta com a qual poderia acessar essa máquina.

Nota:

Alguns dos exemplos acima estão ligados a bancos específicos. Isso não significa que um ataque similar é impossível contra outros produtos. Seu servidor de banco de dados pode ter uma vulnerabilidade similar de outa maneira.

Técnicas para Evitar Ataques

Você pode dizer que o atacante precisa possuir um pouco de informação sobre o esquema de banco de dados na maioria dos exemplos. Você tem razão, mas você nunca sabe quando e como isso pode ser obtido e, se acontecer, seu banco de dados pode ficar exposto. Se você estiver usando um pacote open source publicamente disponível para lidar com banco de deados, que pode pertencer a um sistema de controle de conteúdo ou forum, os invasores facilmente produzem uma cópia de parte de seu código. Também pode ser um risco de segurança se este for for mal desenhado.

Esses ataques se baseam principalmente em explorar falhas no código escrito sem se preocupar com segurança. Nunca confie em nenhum tipo de entrada, especialmente aquela que vem do lado do cliente, mesmo que venha de um combobox, um campo de entrada escondido (hidden) ou um cookie. O primeiro exemplo mostra como uma consulta inocente pode causar desastres.

  • Nunca conecte ao banco de dados como um super-usuário ou como o dono do banco de dados. Use sempre usuários personalidados com privilégios bem limitados.
  • Verifique se uma entrada qualquer tem o tipo de dados experado. O PHP tem um grande número de funções de validação de entrada, desde as mais simples encontrada em Funções de Variáveis e em Funções de Tipo de Caracteres (ex.: is_numeric(), ctype_digit() respectivamente) além de usar o suporte a Expressões Regulares Compatível com Perl.

  • Se a aplicação espera por entradas numéricas, considere verificar os dados com a função is_numeric(), ou silenciosamente mudar o seu tipo usando settype(), ou usar a representação númerica usando a função sprintf().

    Exemplo #5 Uma maneira mais segura para compor consultas de paginação

    <?php

    settype    ($offset, 'integer');
    $query = "SELECT id, name FROM products ORDER BY name LIMIT 20 OFFSET $offset;";

    // por favor perceba o %d na string de formato, usando %s seria inútil
    $query = sprintf("SELECT id, name FROM products ORDER BY name LIMIT 20 OFFSET %d;",
                         $offset);

    ?>

  • Adicione aspas para cada valor não numérico especificado pelo usuário que será passado para o banco de dados com as funções de caracteres de escape (ex.: mysql_real_escape_string(), sqlite_escape_string(), etc.). Se um mecanismo de escape de caracter específico para o seu banco de dados não for disponível, as funções addslashes() e str_replace() podem ser úteis (dependendo do tipo de banco de dados). Veja o o primeiro exemplo. Como o exemplo mostra, adicionar aspas à parte estática da consulta não é suficiente, fazendo com que a consulta seja facilmente atacada.
  • Não imprima qualquer informação específica do banco de dados, especialmente sobre o esquema, custe o que custar. Veja também Relatório de Erros e Funções de Tratamento e Relatório de Erros.
  • Você pode usar stored procedures e cursores previamente definidas para abstrair acesso aos dados para que os usuários não acessem tabelas ou views diretamente, mas essa solução pode ter outros impactos.

Além disso, você ganha em relatar consultas ou dentro do script ou no próprio banco de dados, se esse suportar. Obviamente, o relatório é para previnir qualquer tentativa danosa, mas pode ser útil para ajudar a rastrear qual aplicação foi atacada. O relatório não é útil em si, mas atráves da informação que ele contém. Mais detalhes geralmente é melhor que menos.

Modelo de Armazenamento Criptografado
Relatando Erros
Segurança de Bancos de Dados


Relatando Erros

Com relação a segurança, relatório de erros é uma faca de dois gumes. Pode beneficiar o aumento da segurança, ou fornecer informaçao ao atacante.

Uma tática padrão de ataque involve determinar como um sistema funciona entrando dados incorretos e checando os tipos e contextos dos erros que são retornados. Isso permite que um cracker sonde por informações sobre o servidor, para determinar possíveis fraquezas. Por exemplo, se um atacantes tinha recolhido informação sobre uma página baseado em uma submissão de dados anterior, ele pode tentar sobrescrever variáveis, ou modificá-las:

Exemplo #6 Atacando variáveis com uma página HTML personalizada

<form method="post" action="attacktarget?username=badfoo&amp;password=badfoo">
<input type="hidden" name="username" value="badfoo" />
<input type="hidden" name="password" value="badfoo" />
</form>

Os erros do PHP que são retornados normalmente podem ser úteis para um desenvolvedor que está tentando depurar um script, indicando coisas como a função ou arquivo que falhou, o arquivo PHP no qual a falha ocorreu, e o número da linha de código causadora da falha. Toda essa informação pode ser explorada. Não é incomum para um desenvolvedor PHP usar show_source(), highlight_string(), ou highlight_file() como medidas de depuração, mas em um site de produção, isso pode expor variáveis ocultas, sintaxe incorreta, ou outra informações perigosas. Especialmente perigoso é rodar código de fontes conhecidas com tratadores de depuração integrados, ou usar técnicas de depuração comuns. Se o atacante pode determinar qual técnica gerá você estiver usando, eles podem tentar, por força-bruta, enviar várias strings de depuração comuns para a página:

Exemplo #7 Explorando variáveis comuns de depuração

<form method="post" action="attacktarget?errors=Y&amp;showerrors=1&amp;debug=1">
<input type="hidden" name="errors" value="Y" />
<input type="hidden" name="showerrors" value="1" />
<input type="hidden" name="debug" value="1" />
</form>

Independente do método de tratamento de erros, a habilidade de sondar um sistema por erros acaba dando informações úteis a um atacante.

Por exemplo, o próprio estilo de um erro genérico do PHP indica que o sistema está rodando o PHP. Se o atacante estava procurando por uma página .html, e queria sondar qual o back-end (para procurar fraquezas conhecidas no sistema) enviando dados incorretos, ele pode ser capaz de determinar que um sistema foi feito com PHP.

Uma função de erro pode indicar se o sistema pode está executando um engine de banco de dados específico, ou dar dicas de como uma página foi programada ou desenhada. Isso permite uma investigação profunda sobre portas abertas de bancos de dados, ou procurar por bugs específicos ou fraquezas de uma página. Enviando diferentes pedaços de dados ruins, por exemplo, um atacante pode determinar a ordem de autenticação em um script, (a partir da linha do erro) assim como sondar por exploits que podem ser aproveitados em diferentes partes do script.

Um erro geral do PHP ou do sistema de arquivos indicam quais permissões o servidor web tem, assim como a estrutura e organização dos arquivos no servidor web. Códigos de erros escritos pelo desenvolvedor podem agravar o problema, levando pela exploração fácil de informação até então "escondida".

Existem três soluções principais para esse problema. A primeira é verificar exaustivamente todas as funções, e tentar compensar pelo volume dos erros. A segunda é desabilitar completamente os relatórios de erros no código de produção. A terceira é usar as funções personalizávies de tratamento de erro do PHP para criar seu próprio tratador de erro. Dependendo da sua política de segurança, você pode perceber que todas são aplicáveis à sua situação.

Uma maneira de perceber esse problema antes que o pior aconteça é usar a diretiva error_reporting(), para ajudar a aumentar a segurança de seu código e achar uso de variáveis que pode ser perigoso. Ao testar o seu código, antes de colocar em produção, com E_ALL, você pode rapidamente encontrar áreas onde suas variáveis podem sofrer alterações nocivas ou modificações quaisquer. Uma vez que estiver pronto para produção, você deve ou desabilitar mensagens de erro completamente configurando a diretiva error_reporting() com o valor 0, ou desligar o envio de erros usando a opção display_errors do arquivo php.ini, para evitar sondagem do seu código. Se você escolher a segunda opção, você deve também definir o caminho para o arquivo de registro usando a diretiva error_log, e ligar a diretiva log_errors.

Exemplo #8 Encontrado variáveis perigosas com E_ALL

<?php
if ($username) {  // Not initialized or checked before usage
    $good_login = 1;
}
if ($good_login == 1) { // If above test fails, not initialized or checked before usage
    readfile ("/highly/sensitive/data/index.html");
}
?>

Injeção de SQL
Usando a diretiva Register Globals
Segurança


Usando a diretiva Register Globals

Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

Talvez a mudança mais controversa no PHP foi quando o valor padrão da diretiva do PHP register_globals passou de ON (Ligado) para OFF (Desligado) na versão » 4.2.0. Era muito comum as pessoas dependerem da diretiva e muitas delas nem sabiam que ela existia e presumiam que era a maneira como o PHP funcionava. Essa página explica como alguém pode escrever código inseguro com essa diretiva, mas tenha em mente que a diretiva em si não é insegura, o uso incorreto dela é que é.

Quando ligada, a diretiva register_globals criará para seus scripts vários tipos de variáveis, como as variáveis oriundas de formulários HTML. Isso, combinado com o fato de que o PHP não requer inicialização de variáveis, significa que é mais fácil escrever código inseguro. Foi uma decisão difícil, mas a comunidade do PHP decidiu que, por padrão, essa diretiva deveria ser desabilitada. Quando habilitada, é possível usar variáveis sem saber ao certo de onde elas vieram. Variáveis internas que são definidas no script em si se misturam com dados enviados pelos usuários e desabilitando a diretiva muda isso. Vamos demonstrar um exemplo de uso incorreto de register_globals:

Exemplo #9 Exemplo de uso incorreto de register_globals = on

<?php
// define $authorized = true somente se o usuário for autenticado
if (authenticated_user()) {
    $authorized = true;
}
// Porque nós não inicializamos $authorized como false, ela pode ser
// definida através de register_globals, como usando GET auth.php?authorized=1
// Dessa maneira, qualquer um pode ser visto como autenticado!
if ($authorized) {
    include "/highly/sensitive/data.php";
}
?>

Quando register_globals estiver habilitada, sua lógica pode ser comprometida. Quando desligada $authorized não pode ser configurada via GET, então estará correto, embora geralmente seja uma boa prática de programação inicializar as variáveis primeiro. Por exemplo, no nosso exemplo acima nós podemos executar primeiro $authorized = false. Dessa forma o código funcionaria com register_globals ligada ou desligada, já que os usuário não seriam autorizados a não ser que a autenticação tenha sucesso.

Outro exemplo é o quando usando sessions. Quando a diretiva está ligada, nós também podemos usar $username no exemplo mas novamente é preciso perceber que $username também pode vir de outro lugar, como via GET (através da URL).

Exemplo #10 Exemplo de uso de sessões com register_globals ligada ou desligada

<?php
// Nós não saberiamos de onde $username veio mas sabemos que $_SESSION
// guarda dados da sessão.
if (isset($_SESSION['username'])) {

    echo "Hello <b>{$_SESSION['username']}</b>";

} else {

    echo "Hello <b>Guest</b><br />";
    echo "Would you like to login?";

}
?>

Além disso tudo, é possível tomar medidas preventivas para avisar quando alguém está tentando criação de variáveis falsas. Se você sabe de antemão de onde uma variável deve vir, você pode verificar se os dados enviados estão chegando de maneira incorreta. Embora isso não seja garantia de que os dados não são forjados, torna necessário ao atacante adivinhar o tipo certo de falsificação. Se você não se importar de onde os dados vierão, você pode usar o array $_REQUEST, que contêm a mistura dos dados de GET, POST e COOKIE. Veja também a seção do manual sobre como usar variáveis de fora do PHP.

Exemplo #11 Detecção simples de falsificação de variáveis

<?php
if (isset($_COOKIE['MAGIC_COOKIE'])) {

    // MAGIC_COOKIE vem de um cookie.
    // Valide os dados do cookie!

} elseif (isset($_GET['MAGIC_COOKIE']) || isset($_POST['MAGIC_COOKIE'])) {

   mail("admin@example.com", "Possível tentativa de ataque", $_SERVER['REMOTE_ADDR']);
   echo "Violação de Segurança, o Administrador foi alertado.";
   exit;

} else {

   // MAGIC_COOKIE não foi criada por essa REQUEST

}
?>

É óbvio que só desligar register_globals não significa que seu código está seguro. Cada dado que é enviado deve ser validado de outras maneiras. Sempre valide os dados enviados pelos usuário e inicialize suas variáveis! Para checar por variáveis não inicializadas, você pode configurar error_reporting() para mostrar erros do nível E_NOTICE.

Para mais informações sobre emulação de register_globals como ligada ou desligada, veja esse FAQ.

Nota: Disponibilidade das superglobais:

Arrays superglobais como $_GET, $_POST, e $_SERVER, etc. estão disponíveis desde o PHP 4.1.0. Para mais informação, leia a seção do manual em superglobals

Relatando Erros
Dados Enviados pelo Usuário
Segurança


Dados Enviados pelo Usuário

A maior fraqueza na maioria dos programas PHP não é inerente a linguagem em si, mas meramente um problema de código escrito desconsiderando a segurança. Por essa razão, você sempre deve investir um pouco de tempo considerando as implicações de um certo pedaço de código, para ter certeza que o dano possível se uma variável não esperada for submetida ao mesmo.

Exemplo #12 Uso Perigoso de Variáveis

<?php
// remove um arquivo do diretório home do usuário... ou talvez
// de outra pessoa?
unlink ($evil_var);

// Escreve registro do acesso... ou talvez uma entrada em /etc/passwd?
fwrite ($fp, $evil_var);

// Executa algo trivial... ou rm -rf *?
system ($evil_var);
exec ($evil_var);

?>

Você sempre deve examinar cuidadosamente seu código para se assegurar que quaisquer variáveis sendo enviadas do navegador web estão sendo checadas de maneira correta, e faz a si mesmo as seguintes perguntas:

  • Seu script só afetará os arquivos desejados?
  • Dados incomuns ou indesejados podem ser utilizados?
  • Esse script pode ser usado de maneiras não intencionadas?
  • Ele pode ser usado in conjunto com outros scripts de maneira negativa?
  • As transações serão registradas adequadamente?

Respondendo essas perguntas adequadamente enquanto escrevendo o script, ao invés de depois, previne a reescrita indesejada quando você precisar aumentar a segurança. Começando com essa linha de raciocínio, você não garante a segurança do seu sistema, mas pode ajudar a aumentá-la.

Você também pode considerar desligar as diretivas register_globals, magic_quotes, ou outras configurações convenientes que pode confundir você em relação a validade, origem, ou valor de uma variável qualquer. Trabalhar com PHP em modo error_reporting(E_ALL) também pode ajudar avisando sobre variáveis sendo usadas antes de serem checadas ou inicializadas (então você pode previnir que dados incomuns sejam operados).

Usando a diretiva Register Globals
Magic Quotes
Segurança


Magic Quotes

Índice

  • O que são Magic Quotes
  • Porque nós usamos Magic Quotes
  • Por que não usar Magic Quotes?
  • Desabilitando Magic Quotes
Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

Magic Quotes é um processo de inserção automática de caracteres de escape (\) em todos os dados indo para o script PHP. É preferível escrever código com essa opção desligada e adicionar esses caracteres manualmente quando necessário.

Dados Enviados pelo Usuário
O que são Magic Quotes
Segurança


O que são Magic Quotes

Quando ligada, qualquer ' (aspas simples), " (aspas duplas), \ (barra invertida) e NULL será colocado uma barra-invertida antes (' vira \') automaticamente. Isso é identico ao que a função addslashes() faz.

Existem três diretivas relacionadas a Magic Quotes:

  • magic_quotes_gpc Afeta os dados de requisições HTTP GET, POST, e COOKIE). Não pode ser alterada em tempo de execução e tem o valor padrão on no PHP. Veja também get_magic_quotes_gpc().
  • magic_quotes_runtime Se habilitada, a maioria das funções que retorna dados de uma fonte externa, incluindo bancos de dados e arquivos de texto, serão alterados. Pode ser alterado em tempo de execução e tem o valor padrão de off no PHP. Veja também set_magic_quotes_runtime() e get_magic_quotes_runtime().
  • magic_quotes_sybase Se habilitada, uma aspa simples é usada como caracter de escape quando encontrar outra aspa simples (' vira ''). Se ligada, sobrepõe completamente magic_quotes_gpc. Ligar ambas as diretivas significa que apenas aspas simples são substituídas por ''. Aspas duplas, barras invertidas e NULLs permanecerão intocados e não serão escapados. Veja também ini_get() para pegar esse valor.
Magic Quotes
Porque nós usamos Magic Quotes
Magic Quotes


Porque nós usamos Magic Quotes

Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

  • Não existe mais razão para usar magic quotes porque não é mais uma parte suportada do PHP. Entretanto, existe e ajudou alguns iniciante a contruir um código melhor(mais seguro). Mas, ao lidar com código que utiliza este recurso é melhor atualizar o código do que ativar magic quotes. Assim, porque isso existe? Simples, para ajuda a previnir injeção de SQL. Os desenvolvedores de hoje estão mais a par de segurança e acabam usando mecanismos especificos do banco de dados para escapar e/ou comandos preparados ao invés de depender de coisas como magical quotes.
O que são Magic Quotes
Por que não usar Magic Quotes?
Magic Quotes


Por que não usar Magic Quotes?

Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

  • Portabilidade Presumir que ela está ligada, ou desligada, afeta portabilitade. Use Assuming it to be on, or off, affects portability. Use get_magic_quotes_gpc() para verificar isso e codifique de acordo com a situação.
  • Performance Como nem todos os dados escapados são inseridos em um banco de dados, existe uma perda de performance por escapar todos os dados. Chamar funções de escape (como addslashes()) em tempo de execução é mais eficiente. Embora o arquivo php.ini-dist habilita essas diretivas por padrão, php.ini-recommended desabilita ela. Essa recomendação é principalmente por razões de performance.
  • Inconviniência Porque nem todos os dados precisam ter caracteres de escape inseridos, é irritante ver caracteres de escape onde não deviam. Por exemplo, mandar um e-mail por um formulário, e ver um monte de \' na mensagem. Para consertar isso, pode ser necessário o uso excessivo da função stripslashes().
Porque nós usamos Magic Quotes
Desabilitando Magic Quotes
Magic Quotes


Desabilitando Magic Quotes

Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

A diretiva magic_quotes_gpc só pode ser desabilita em nível de sistema, e não em tempo de execução. Em outras palavras, uso da função ini_set() não é uma opção.

Exemplo #1 Desabilitando magic quotes no lado do servidor

Um exemplo que configuração dessa diretiva para Off (Desligada) no arquivo php.ini. Para detalhes adicionais, leia a seção do manual entitulada Como mudar os valores das configurações.

; Magic quotes
;

; Magic quotes para dados vindos via GET/POST/Cookie.
magic_quotes_gpc = Off

; Magic quotes para dados gerados em tempo de execução,ex.: dados vindo de SQL, de chamadas à exec(), etc.
magic_quotes_runtime = Off

; Usar magic quotes no estilo Sybase (escapar ' com '' ao invés de \').
magic_quotes_sybase = Off

Se acesso à configuração do servidor não estiver disponível, uso do arquivo .htaccess também é uma opção. Por exemplo:

php_flag magic_quotes_gpc Off

No interesse de escrever código portável (código que funciona em qualquer ambiente), como onde configurar a opção em nível de servidor não for possível, aqui está um exemplo de como desabilitar magic_quotes_gpc em tempo de execução. Esse método é ineficiente então é preferível configurar as diretivas apropriadas em outros lugares.

Exemplo #2 Disabilitando magic quotes em tempo de execução

<?php
if (get_magic_quotes_gpc()) {
    function stripslashes_deep($value)
    {
        $value = is_array($value) ?
                    array_map('stripslashes_deep', $value) :
                    stripslashes($value);

        return $value;
    }

    $_POST = array_map('stripslashes_deep', $_POST);
    $_GET = array_map('stripslashes_deep', $_GET);
    $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
    $_REQUEST = array_map('stripslashes_deep', $_REQUEST);
}
?>

Por que não usar Magic Quotes?
Escondendo o PHP
Magic Quotes


Escondendo o PHP

Em geral, segurança por obscuridade é uma das maneiras mais fracas de segurança. Mas em alguns casos, cada pequena medida de segurança extra é desejável.

Algumas técnicas simples podem ajudar a esconder o PHP, possivelmente retardando um atacante que está tentando descobrir fraquezas no seu sistema. Ao configura a diretiva expose_php = off no seu arquivo php.ini, reduz a quantidade de informação disponível à eles.

Outra tática é configura o servidor web, como o Apache, para executar tipos de arquivos diferentes pelo PHP, ou por uma diretiva de arquivo .htaccess, ou no próprio arquivo de configuração do Apache. Você pode então usar extensões de arquivos falsas:

Exemplo #3 Escondendo o PHP como outra linguagem

# Fazer código PHP parecer com outros tipos de códigos
AddType application/x-httpd-php .asp .py .pl
Ou obscurecer completamente:

Exemplo #4 Usando extensões desconhecidas para o PHP

# Fazer código PHP parecer com tipos desconhecidos
AddType application/x-httpd-php .bop .foo .133t
Ou esconder ele como código HTML, o que tem uma pequena queda de performance porque todo HTML será avaliado pelo engine do PHP:

Exemplo #5 Usando extensão HTML para o PHP

# Fazer código PHP parecer com HTML
AddType application/x-httpd-php .htm .html
Para isso funcionar efetivamente, você deve renomear seus arquivos PHP com as extensões acima. Embora seja uma forma de segurança por obscuridade, é uma medida preventiva pequena com poucos custos.

Desabilitando Magic Quotes
Mantendo-se Atualizado
Segurança


Mantendo-se Atualizado

PHP, como qualquer outro sistema grande, está sobre constante revisão e melhoramento. Cada versão nova normalmente incluirá mudanças, sejam grandes ou pequenas, para melhorar a segurança e reparar falhas, erros de configuração, e outros problemas que podem afetar a segurança geral e estabilitade do seu sistema.

Como outras linguagens de script e programas de nível de sistema, a melhor política é atualizar frequentemente e manter-se atento as novas versões e suas mudanças.

Escondendo o PHP
Características
Segurança


Características

  • Autenticação HTTP com PHP
  • Cookies
  • Sessões
  • Lidando com XForms
  • Gerenciar o upload de arquivos
    • Upload de arquivos com o método POST
    • Explicação das mensagens de erro
    • Problemas comuns
    • Carregando múltiplos arquivos
    • Suporte ao método PUT
  • Usando arquivos remotos
  • Tratamento de Conexões
  • Conexão Permanente com o Banco de Dados
  • Modo Seguro (Safe Mode)
    • Segurança e Modo Seguro
    • Funções restringidas/desabilitadas pelo modo seguro
  • Utilizando o PHP na linha de comando
  • Garbage Collection
    • Reference Counting Basics
    • Collecting Cycles
    • Performance Considerations
Mantendo-se Atualizado
Autenticação HTTP com PHP
Manual do PHP


Autenticação HTTP com PHP

Autenticação via HTTP no PHP só é disponível quando o mesmo for executado como módulo do Apache e, portanto, não é disponível na versão CGI. Em um script PHP no módulo Apache, é possível usar a função header() para enviar uma janela de entrada "Authentication Required" que causará que o browser cliente abra um diálogo de entrada de usuário/senha. Uma vez que o usuário preencheu seu nome de usuário e senha, a URL contendo o script PHP será chamada de novo com as variáveis pré-definidas PHP_AUTH_USER, PHP_AUTH_PW, e AUTH_TYPE contendo o nome de usuário, senha e tipo de autenticação, respectivamente. Essas variáveis pré-definidas são achadas nos arrays $_SERVER e $HTTP_SERVER_VARS. Somente autenticação "Basic" (Básica) é suportada. Veja a função header() para mais informações.

Nota: Nota de Versão do PHP

Superglobais, como o $_SERVER, tornaram-se disponíveis no PHP » 4.1.0.

Um script de exemplo que forçaria autenticação do cliente em uma página:

Exemplo #6 Exemplo de Autenticação HTTP

<?php
  if (!isset($_SERVER['PHP_AUTH_USER'])) {
    header('WWW-Authenticate: Basic realm="My Realm"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'Texto a ser enviado caso o usuário aperte o botão Cancelar';
    exit;
  } else {
    echo "<p>Olá, {$_SERVER['PHP_AUTH_USER']}.</p>";
    echo "<p>Você digitou {$_SERVER['PHP_AUTH_PW']} como sua senha.</p>";
  }
?>

Exemplo #7 Exemplo de Autenticação HTTP do tipo Digest

Esse exemplo mostra como implementar um script simples Autenticação HTTP do tipo Digest. Para mais informação leia o » RFC 2617.

<?php
        $realm = 'Restricted area';

        //user => password
        $users = array('admin' => 'mypass', 'guest' => 'guest');

        if (empty($_SERVER['PHP_AUTH_DIGEST'])) {
            header('HTTP/1.1 401 Unauthorized');
            header('WWW-Authenticate: Digest realm="'.$realm.
            '",qop="auth",nonce="'.uniqid().'",opaque="'.md5($realm).'"');

            die('Text to send if user hits Cancel button');
        }

        // analyze the PHP_AUTH_DIGEST variable
        if (!($data = http_digest_parse($_SERVER['PHP_AUTH_DIGEST'])) ||
            !isset($users[$data['username']]))
            die('Wrong Credentials!');

        // generate the valid response
        $A1 = md5($data['username'] . ':' . $realm . ':' . $users[$data['username']]);
        $A2 = md5($_SERVER['REQUEST_METHOD'].':'.$data['uri']);
        $valid_response = md5($A1.':'.$data['nonce'].':'.$data['nc'].':'.$data['cnonce'].':'.$data['qop'].':'.$A2);

        if ($data['response'] != $valid_response)
        die('Wrong Credentials!');

        // ok, valid username & password
        echo 'Your are logged in as: ' . $data['username'];

        // function to parse the http auth header
        function http_digest_parse($txt)
        {
            // protect against missing data
            $needed_parts = array('nonce'=>1, 'nc'=>1, 'cnonce'=>1, 'qop'=>1, 'username'=>1, 'uri'=>1, 'response'=>1);
            $data = array();

            preg_match_all('@(\w+)=(?:([\'"])([^\2]+)\2|([^\s,]+))@', $txt, $matches, PREG_SET_ORDER);

            foreach ($matches as $m) {
                $data[$m[1]] = $m[3] ? $m[3] : $m[4];
                unset($needed_parts[$m[1]]);
            }

            return $needed_parts ? false : $data;
        }
    ?>

Nota: Nota de Compatibilidade

Por favor, tenha cuidado quando codificar as linhas do cabeçalho do HTTP. Para garantir compatibilidade máxima com todos os clientes, a palavra chave "Basic" deve ser escrita com "B" maiúsculo, deve se usar aspas duplas (não simples) em volta da string realm, e exatamente um espaço deve preceder o código 401 na linha do cabeçalho HTTP/1.0 401. Parâmetros de autenticação devem ser separados por vírgula, como visto no exemplo acima.

Ao invés de simplesmente mostrar o valor de PHP_AUTH_USER e PHP_AUTH_PW, como foi feito no exemplo acima, você deve querer checar a validade do nome de usuário e a senha. Talvez enviando uma query para um banco de dados, ou procurando o usuário em um arquivo dbm.

Cuidado com browsers Internet Explorer bugados por aí. Eles parecem muito minuciosos sobre a ordem dos cabeçalhos. Enviar o cabeçalho WWW-Authenticate antes do cabeçalho HTTP/1.0 401 resolve isso por enquanto.

A partir do PHP 4.3.0, para evitar que alguém escreva um script que revele a senha para uma página que foi autenticada através de um mecanismo externo tradicional, as variáveis PHP_AUTH não serão configuradas se autenticação externa estiver disponível para aquela página em particular e se safe mode estiver ligado. No entanto, REMOTE_USER pode ser usada para identificar um usuário autenticado externamente. Então, você pode usar $_SERVER['REMOTE_USER'].

Nota: Nota de Configuração

PHP usa a presença de uma diretiva chamada AuthType para determinar se autenticação externa está em efeito.

Perceba, no entanto, que a diretiva citada não previne que alguém que controle uma URL não autenticada de roubar senhas de URLs autenticadas no mesmo servidor.

Tanto o Netscape Navigator quanto o Internet Explorer limparão o cache de autenticação da janela do navegador para o realm após receber uma resposta 401 do servidor. Isso pode efetivamente "deslogar" um usuário, forçando o mesmo a re-entrar seu nome de usuário e senha. Algumas pessoas usam isso para delimitar o tempo de um login, ou fazer um botão de "log-out".

Exemplo #8 Exemplo de Autenticação via HTTP forçando um(a) novo(a) nome/senha

<<?php
  function authenticate() {
    header('WWW-Authenticate: Basic realm="Test Authentication System"');
    header('HTTP/1.0 401 Unauthorized');
    echo "Você deve usar um login e uma senha válidos para acessar esse recurso\n";
    exit;
  }

  if (!isset($_SERVER['PHP_AUTH_USER']) ||
      ($_POST['SeenBefore'] == 1 && $_POST['OldAuth'] == $_SERVER['PHP_AUTH_USER'])) {
   authenticate();
  } else {
   echo "<p>Bem vindo: {$_SERVER['PHP_AUTH_USER']}<br />";
   echo "Login antigo: {$_REQUEST['OldAuth']}";
   echo "<form action='{$_SERVER['PHP_SELF']}' METHOD='post'>\n";
   echo "<input type='hidden' name='SeenBefore' value='1' />\n";
   echo "<input type='hidden' name='OldAuth' value='{$_SERVER['PHP_AUTH_USER']}' />\n";
   echo "<input type='submit' value='Re Autenticar' />\n";
   echo "</form></p>\n";
  }
?>

Esse comportamento não é necessário pelo padrão autenticação básica via HTTP, então você nunca deve depender disso. Testando com Lynx mostrou que Lynx não limpa as credenciais de autenticação com uma resposta 401 do servidor, então apertar voltar e depois avançar novamente abrirá o recurso enquanto os requerimentos de credenciais não mudarem. Porém, o usuário pode apertar a tecla '_' para limpar a sua informação de autenticação.

Também perceba que até o PHP 4.3.3, Autenticação HTTP não funcionava usando o servidor IIS da Microsoft com a versão CGI do PHP devido a limitação do IIS. Para fazer ela funcionar no PHP 4.3.3 ou superior, você deve editar a configuração "Directory Security" do IIs. Clique em "Editar" e apenas marque "Anonymous Access", todos os outros campos devem ser mantidos desmarcados.

Outra limitação é se você estiver usando o módulo IIS (ISAPI), você não deve usar as variáveis PHP_AUTH_* mas sim, a variável HTTP_AUTHORIZATION. Por exemplo, considere o seguinte código: list($user, $pw) = explode(':', base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));

Nota: IIS Note:
Para autenticação via HTTP funcionar no IIS, a diretiva do PHP cgi.rfc2616_headers deve estar configurada para 0 (o valor padrão).

Nota:

Se modo de segurança estiver ligado, o uid do script é adicionado a parte realm do cabeçalho WWW-Authenticate.

Características
Cookies
Características


Cookies

O PHP suporta transparentemente cookies HTTP. Cookies são um mecanismo para guardar dados no navegador remoto possibilitando o acompanhamento ou identificação de usuários que retornam. Você pode criar cookies usando a função setcookie() ou setrawcookie(). Os cookies são uma parte do cabeçalho HTTP, logo setcookie() precisa ser chamada antes que qualquer outro dado seja enviado ao navegador. Esta é a mesma limitação que a função header() tem. Você pode usar as funções de output buferizado para atrasar as impressões do script até que você tenha decidido ou não configurar qualquer cookie ou enviar mais headers.

Qualquer cookie enviado por você para o cliente automaticamente será incluido na auto-global $_COOKIE se variables_order contém "C". Se você deseja assimilar vários valores em um único cookie, simplesmente acrescente [] ao nome do cookie.

Dependendo da register_globals, variáveis regulares do PHP podem ser criadas para cookies. Contudo, não é recomendado confiar neste recurso que pode ser freqüentemente desabilitado por motivos de segurança. $HTTP_COOKIE_VARS é também definido nas versões anteriores do PHP, também, quando a variável de configuração track_vars estiver ativa. (Esta diretiva é obrigatoriamente ligada a partir do PHP 4.0.3.)

Para mais detalhes, incluindo comentários sobre problemas de browsers, veja as funções setcookie() e setrawcookie() .

Autenticação HTTP com PHP
Sessões
Características


Sessões

Suporte a sessões no PHP consiste de uma maneira de presevar dados através de acessos subsequentes. Isso permite a criação de aplicações mais personalizadas e aumenta o apelo do seu web site. Todas as informações estão na sessões Session reference..

Cookies
Lidando com XForms
Características


Lidando com XForms

» XForms define uma mudança com relação a formulários tradicionais que permite que sejam usados em uma variedade mais ampla de plataformas e browsers ou até mesmo em mídias não tradicionais tais como documentos PDF.

A primeira diferença chave nos XForms é como o formulário é enviado ao cliente. » XForms para autores de HTML contem uma descrição detalhada de como criar XForms. Para o propósito deste tutorial nós veremos apenas exemplos simples.

Exemplo #9 Um formulário XForms simples de busca

<h:html xmlns:h="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/2002/xforms">
<h:head>
 <h:title>Search</h:title>
 <model>
  <submission action="http://example.com/search"
              method="post" id="s"/>
 </model>
</h:head>
<h:body>
 <h:p>
  <input ref="q"><label>Find</label></input>
  <submit submission="s"><label>Go</label></submit>
 </h:p>
</h:body>
</h:html>

O formulário acima mostra uma caixa de entrada de texto (chamada q), e um botão de submit (envio). Quando o botão de submit é clicado, o formulário será enviado para a página referenciada por action.

Aqui é onde começa a parecer diferente do ponto de vista da sua aplicação web. Em um formulário HTML normal, a informação seria enviada como application/x-www-form-urlencoded, no mundo dos XForms, porém, essa informação é enviada no formato XML.

Se você está escolhendo trabalhar com XForms então você, provavelmente, quer aquela informação como XML. Nesse caso, procure em $HTTP_RAW_POST_DATA, onde você achará o documento XML gerado pelo navegador e que você pode passar para o seu engine XSLT ou parser favorito.

Se você não estiver interessado em formatação e só quer que sua informação seja carregada na variável tradicional $_POST, você pode encarregar o navegador do cliente para enviar como um application/x-www-form-urlencoded mudando o atributo method para urlencoded-post.

Exemplo #10 Usando um XForm para popular o $_POST

<h:html xmlns:h="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/2002/xforms">
<h:head>
 <h:title>Search</h:title>
 <model>
  <submission action="http://example.com/search"
              method="urlencoded-post" id="s"/>
 </model>
</h:head>
<h:body>
 <h:p>
  <input ref="q"><label>Find</label></input>
  <submit submission="s"><label>Go</label></submit>
 </h:p>
</h:body>
</h:html>

Nota: Até o término dessa edição, muitos navegadores não suportam XForms. Verifique a versão do seu navegador se os exemplos acima falharem.

Sessões
Gerenciar o upload de arquivos
Características


Gerenciar o upload de arquivos

Índice

  • Upload de arquivos com o método POST
  • Explicação das mensagens de erro
  • Problemas comuns
  • Carregando múltiplos arquivos
  • Suporte ao método PUT
Lidando com XForms
Upload de arquivos com o método POST
Características


Upload de arquivos com o método POST

O PHP é capaz de receber o upload de qualquer browser que siga a norma RFC-1867 (o que inclui Netscape Navigator 3 ou posterior, Microsoft Internet Explorer 3 com um patch da Microsoft, ou posterior sem patch). Isto permite que se faça o upload de arquivos de texto e binários. Com as funções de autenticação e manipulação de arquivos do PHP, você tem o controle completo de quem pode fazer o upload de arquivo e o que fazer com o arquivo após seu upload.

Nota: Nota Sobre Configurações Relacionadas

Veja também file_uploads, upload_max_filesize, upload_tmp_dir, post_max_size, max_input_time no php.ini

Note que o PHP também suporta o método PUT para upload de arquivos como o usado por Netscape Composer e W3C's Amaya clients. Veja Suporte ao Método Put para maiores detalhes.

Uma tela para upload de arquivo pode ser criada com um formulário especial parecido com este:

Exemplo #1 Formulário para Upload de Arquivo

<form enctype="multipart/form-data" action="_URL_" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>

A "_URL_" no exemplo acima deve ser substituida e apontar para um arquivo PHP. O campo escondido MAX_FILE_SIZE (medido em bytes) deve preceder o campo de input do arquivo, e seu valor é o tamanho limite aceito para o arquivo. Também tenha certeza que seu formulário de upload de arquivo tenha enctype="multipart/form-data" em outro caso o upload do arquivo não irá funcionar.

Aviso

O valor de MAX_FILE_SIZE é um aviso para o browser. É fácil contornar este limite. Então não conte que o browser irá obedecer a sua vontade. O que foi estabelecido para maximum-size no PHP não pode ser enganado. Mas você deve adicionar MAX_FILE_SIZE em qualquer caso, já que salva os usuários do problema de esperar por um grande arquivo ser transferido somente para descobrir depois de tudo que ele é muito grande.

As variáveis definidas para o upload de arquivos são diferentes dependendo da versão e da configuração. A autoglobal $_FILES existe desde o PHP 4.1.0. A array $HTTP_POST_FILES existe desde o PHP 4.0.0. Estas array irão conter toda a informação do upload do arquivo. Usar $_FILES é preferido. Se a opção register_globals é on, os nomes de variáveis relacionados também existirão. O padrão de register_globals é off desde o PHP » 4.2.0.

Os conteúdos de $_FILES do nosso script de exemplo é como segue. Note que isso assume que o nome do upload do arquivo é userfile, como o usado no exemplo acima. Pode ser qualquer nome.

$_FILES['userfile']['name']

O nome original do arquivo no computador do usuário.

$_FILES['userfile']['type']

O tipo mime do arquivo, se o browser deu esta informação. Um exemplo pode ser "image/gif".

$_FILES['userfile']['size']

O tamanho, em bytes, do arquivo.

$_FILES['userfile']['tmp_name']

O nome temporário do arquivo, como foi guardado no servidor.

$_FILES['userfile']['error']

O código de erro associado a este upload de arquivo. ['error'] foi adicionado no PHP 4.2.0

Nota:

Em versões anteriores a 4.1.0 o nome era $HTTP_POST_FILES e não é uma variável autoglobal como $_FILES é. PHP 3 não suporta $HTTP_POST_FILES.

Quando register_globals esta em on no php.ini, variáveis adicionais estão disponíveis. Por exemplo, $userfile_name será igual a $_FILES['userfile']['name'], $userfile_type será igual a $_FILES['userfile']['type'], etc. Lembre-se que desde o PHP 4.2.0, o padrão para register_globals é off. É preferível não depender desta opção.

Os arquivos serão guardados no diretório temporário do servidor, a menos que outro lugar seja especificado com a opção upload_tmp_dir no php.ini. O diretório padrão do servidor pode ser mudado se mudando o valor da variável de ambiente TMPDIR no ambiente onde o PHP esta sendo executado PHP. Mudando-a com putenv() de um script PHP não irá funcionar. Esta variável de ambiente também pode ser usada para se ter certeza que outras operações estão funcionando no arquivo do upload.

Note que deve se definir upload_temp_dir no php.ini ou TMPDIR, não podendo estarem ambos vazios, sendo recomendado no mínimo upload_tmp_dir.

Exemplo #2 Validando o upload de arquivos

Veja também as funções is_uploaded_file() e move_uploaded_file() para maiores informações. O seguinte exemplo irá processar o envio de um arquivo que vem de um formulário.

<?php
// Nas versões do PHP anteriores a 4.1.0, deve ser usado $HTTP_POST_FILES
// ao invés de $_FILES.

$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . $_FILES['userfile']['name'];
print "<pre>";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
    print "O arquivo é valido e foi carregado com sucesso. Aqui esta alguma informação:\n";
    print_r($_FILES);
} else {
    print "Possivel ataque de upload! Aqui esta alguma informação:\n";
    print_r($_FILES);
}
print "</pre>";
?>

O script PHP que irá receber o arquivo do upload deve implementar qualquer lógica que for necessária para determinar o que deve ser feito com o arquivo do upload. Você pode, por exemplo, usar a variável $_FILES['userfile']['size'] para descartar qualquer arquivo que seja muito pequeno ou muito grande. Você pode usar a variável $_FILES['userfile']['type'] que não sejam de um certo tipo. Desde o PHP 4.2.0, você pode usar $_FILES['userfile']['error'] e planejar a sua lógica de acordo com os códigos de erro. Qualquer que seja a lógica, você deve excluir o arquivo do diretório temporário ou move-lo para outro lugar.

Se nenhum arquivo for selecionado em seu formulário, o PHP irá retornar $_FILES['userfile']['size'] como 0, e $_FILES['userfile']['tmp_name'] como none.

O arquivo será excluído do diretório temporário ao fim do script se não tiver sido movido ou renomeado.

Gerenciar o upload de arquivos
Explicação das mensagens de erro
Gerenciar o upload de arquivos


Explicação das mensagens de erro

Desde o PHP 4.2.0, PHP retorna um código de erro apropriado na array do arquivo. O código de erro pode ser encontrado em ['error'] na array que é criada durante o upload do arquivo. Em outras palavras, o erro deve ser encontrado em $_FILES['userfile']['error'].

UPLOAD_ERR_OK

Valor: 0; não houve erro, o upload foi bem sucedido.

UPLOAD_ERR_INI_SIZE

Valor 1; O arquivo no upload é maior do que o limite definido em upload_max_filesize no php.ini.

UPLOAD_ERR_FORM_SIZE

Valor: 2; O arquivo ultrapassa o limite de tamanho em MAX_FILE_SIZE que foi especificado no formulário HTML.

UPLOAD_ERR_PARTIAL

Valor: 3; o upload do arquivo foi feito parcialmente.

UPLOAD_ERR_NO_FILE

Valor: 4; Não foi feito o upload do arquivo.

Nota:

Estas tornaram-se constantes no PHP 4.3.0

Upload de arquivos com o método POST
Problemas comuns
Gerenciar o upload de arquivos


Problemas comuns

O item MAX_FILE_SIZE não pode especificar um tamanho de arquivo com tamanho maior do que o especificado no php.ini em upload_max_filesize. O padrão é 2 Megabytes.

Se o limite de memória esta ativado, um maior memory_limit pode ser necessário. tenha certeza de estabelecer um memory_limit grande o suficiente.

Se max_execution_time for muito pequeno, a execução do script pode ultrapassar o limite de tempo. Tenha certeza de estabelecer um max_execution_time grande o suficiente.

Nota: max_execution_time somente afeta o tempo de execução do script em sí. Qualquer tempo gasto com atividades que aconteçam fora da execução do script como chamadas de sistema usando system(), a função sleep(), pesquisas em banco de dados, tempo gasto pelo processo de carregar(upload) um arquivo, etc. nâo é incluso na hora de determinar o lmite de tempo que o script esta sendo executado.

Aviso

max_input_time define o tempo máximo em segundos, que é permitido ao script receber entradas, isto inclui uploads de arquivos. Para um arquivo grande ou multiplos arquivos, ou usuários em conexões lentas, o padrão de 60 segundos pode ser ultrapassado.

Se post_max_size for muito pequeno, arquivos grandes não poderão ser carregados. Tenha certeza de estabelecer post_max_size grande o suficiente.

Não validar o arquivo que você esta operando pode permitir que os usuários acessem informações sensíveis em outros diretórios.

Por favor note que o CERN httpd aparenta cortar tudo iniciando após o primeiro espaço do header content-type que ele recebe do cliente. Se for este o caso, CERN httpd não irá suportar o upload de arquivos.

Devido ao grande número de estilos de listagem de diretórios nós não podemos garantir que arquivos com nomes exóticos(como que contém espaço) sejam manuseados corretamente.

Um desenvolvedor não deve misturar campos de entrada e campos de upload de arquivo na mesma variável de formulário (usando um nome de campo como foo[]).

Explicação das mensagens de erro
Carregando múltiplos arquivos
Gerenciar o upload de arquivos


Carregando múltiplos arquivos

Múltiplos arquivos podem ser carregados usando-se diferentes name para input.

Também é possível carregar vários arquivos simultaneamente e ter a informação organizada automaticamente para você em arrays. Para fazer assim, você precisa usar a mesma sintaxe no formulário HTML que você usa para múltiplos selects e checkboxes:

Nota:

O Suporte para carregar múltiplos arquivos foi adicionado na versão PHP 3.0.10.

Exemplo #1 Carregando múltiplos arquivos

<form action="file-upload.php" method="POST" enctype="multipart/form-data">
  Send these files:<br />
  <input name="userfile[]" type="file" /><br />
  <input name="userfile[]" type="file" /><br />
  <input type="submit" value="Send files" />
</form>

Quando o formulário acima é submetido, as matrizes $_FILES['userfile'], $_FILES['userfile']['name'], e $_FILES['userfile']['size'] serão inicializadas (assim como $HTTP_POST_FILES para versões do PHP anterior a 4.1.0). Quando register_globals esta em on, globals para os arquivos carregados também são inicializadas. Cada um destes será uma array indexada numericamente dos valores apropriados para os arquivos submetidos.

Por exemplo, assuma que os nomes de arquivos tenham sido submetidos /home/test/review.html e /home/test/xwp.out. Neste caso, $_FILES['userfile']['name'][0] deve conter o valor review.html, e $_FILES['userfile']['name'][1] deve conter o valor xwp.out. Similarmente, $_FILES['userfile']['size'][0] deve conter o tamanho de review.html, e assim por diante.

$_FILES['userfile']['name'][0], $_FILES['userfile']['tmp_name'][0], $_FILES['userfile']['size'][0], e $_FILES['userfile']['type'][0] também são definidas.

Problemas comuns
Suporte ao método PUT
Gerenciar o upload de arquivos


Suporte ao método PUT

O suporte ao método PUT mudou entre PHP 3 e PHP 4. No PHP 4, deve se usar a entrada padrão para ler os conteúdos de um PUT.

Exemplo #1 Salvando arquivos HTTP PUT com o PHP 4

<?php
/* PUT data vem do stdin stream */
$putdata = fopen("php://stdin", "r");

/* Abre um arquivo para escrita */
$fp = fopen("myputfile.ext", "w");

/* Lê os dados 1KB de cada vez
   e escreve no arquivo */
while ($data = fread($putdata,1024))
  fwrite($fp,$data);

/* Fecha os streams */
fclose($fp);
fclose($putdata);
?>

Nota:

Toda a documentação abaixo aplica-se ao PHP 3 somente.

PHP prove suporte para o método HTTP PUT usado por clientes como Netscape Composer e W3C Amaya. Requisições PUT são muito mais simples do que o upload de arquivo e se parecem com isto:

PUT /path/filename.html HTTP/1.1

Isto normalmente indica que o cliente remoto gostaria de salvar o conteúdo que se segue como: /path/filename.html na sua arvore web. É obvio que não é uma boa idéia para o Apache ou o PHP automaticamente permitir que todos possam sobrescrever arquivos na sua arvore web. Então, para manusear este tipo de requisição você tem primeiro que dizer ao seu servidor web que você quer que um certo script PHP cuide da requisição. No apache você faz isto com a diretiva Script. Pode ser colocada praticamente em qualquer lugar do seu arquivo de configuração do Apache. Um lugar comum é dentro de um bloco <Directory> ou talvez dentro de um bloco <Virtualhost>. Uma linha como esta deve fazer o truque:

Script PUT /put.php

Isto diz para o apache enviar todas as requisições PUT que estejam no contexto que você colocou esta linha para o script put.php. Isto assume, é claro, que você tem o PHP ativado para a extensão .php e que o PHP esta ativo.

Dentro do seu arquivo put.php você deve então fazer algo parecido com isto:

<?php copy($PHP_UPLOADED_FILE_NAME, $DOCUMENT_ROOT . $REQUEST_URI); ?>

Isto deve copiar o arquivo para a localização requisitada pelo cliente remoto. Você provavelmente quer fazer alguma checagem e/ou autenticar o usuário antes de fazer esta copia de arquivo. O único truque aqui é que quando o php vê uma requisição com o método PUT ele guarda o arquivo carregado em um arquivo temporário justo como se fosse manuseado pelo método POST. Quando a requisição termina, este arquivo temporário é apagado. Assim seu script de manuseio do PUT tem que copiar este arquivo em outro lugar. O nome deste arquivo temporário esta na variável $PHP_PUT_FILENAME, e você pode ver o nome de arquivo de destino sugerido em $REQUEST_URI (deve variar em servidores diferentes do apache). Este nome do arquivo de destino é o que o cliente remoto especificou. Você não tem que ouvir o cliente. Você pode, por exemplo, copiar todos os arquivos carregados para um diretório especial de uploads.

Carregando múltiplos arquivos
Usando arquivos remotos
Gerenciar o upload de arquivos


Usando arquivos remotos

Enquanto allow_url_fopen estiver disponível no arquivo php.ini, você pode usar URLs HTTP e FTP com a maioria das funções que recebem um nome de arquivo como parâmetro. Além disso, URLs podem ser usadas com as funções include(), include_once(), require() e require_once() (desde o PHP 5.2.0, allow_url_include precisa estar habilitado para isto). Veja Supported Protocols and Wrappers para mais informações sobre protocolos suportados pelo PHP.

Nota:

No PHP 4.0.3 e inferiores, para usar URL wrappers, você precisava configurar o PHP usando a opção do script configure --enable-url-fopen-wrapper .

Nota:

As versões para Windows do PHP mais novas que o PHP 4.3 não suportam acesso a arquivos remoto para as seguintes funções: include(), include_once(), require(), require_once(), e as funções imagecreatefromXXX na extensão Funções da GD.

Por exemplo, você pode usar isso para abrir um arquivo em um web server remoto, avaliar a saída para a informação que você precisa, e então usar a informação em uma query de banco de dados, ou simplesmente mostrar em um estilo que combine com o resto do seu website.

Exemplo #2 Pegando o título de uma página remota

<?php
$file = fopen ("http://www.example.com/", "r");
if (!$file) {
    echo "<p>Incapaz de abrir arquivo remoto.\n";
    exit;
}
while (!feof ($file)) {
    $line = fgets ($file, 1024);
    /* Isso só funciona se o título e suas tags estiverem na mesma linha */
    if (eregi ("<title>(.*)</title>", $line, $out)) {
        $title = $out[1];
        break;
    }
}
fclose($file);
?>

Você também pode escrever arquivos em um servidor FTP (presumindo que você conectou como um usuário com os direitos de acesso corretos). Você só pode criar arquivos novos usando esse método. Se você tentar sobrescrever um arquivo que já existe, a chamada para fopen() falhará.

Para conectar como usuário que não o 'anonymous', você precisa especificar o nome de usuário (e possivelmente a senha) dentro da URL, como 'ftp://usuario:senha@ftp.example.com/caminho/para/arquivo'. (Você pode usar o mesmo tipo de sintaxe para acessar arquivos via HTTP quando eles requerem autenticação Basic).

Exemplo #3 Guardando informação em um servidor remoto

<?php
$file = fopen ("ftp://ftp.example.com/incoming/outputfile", "w");
if (!$file) {
    echo "<p>Incapaz de abrir arquivo remoto para escrita.\n";
    exit;
}
/* Escreva informação aqui. */
fwrite ($file, $_SERVER['HTTP_USER_AGENT'] . "\n");
fclose ($file);
?>

Nota:

Você talvez tenha tido a idéia, pelo exemplo acima, de usar essa técnica para escrever para um arquivo de log remoto. Infelizmente isso não funcionaria porque a chamada a fopen() falhará se o arquivo remoto já existir. Para fazer logs distrubuídos dessa maneira, você deve dar uma olhada na função syslog().

Suporte ao método PUT
Tratamento de Conexões
Características


Tratamento de Conexões

O status de uma conexão é mantido internamente no PHP. Existem 3 estados possíveis:

  • 0 - NORMAL
  • 1 - ABORTED
  • 2 - TIMEOUT

Quando um script PHP está sendo executado normalmente, o estado NORMAL está ativo. Se o cliente remoto desconecta, o estado ABORTED (abortado) é ligado. Uma desconexão do cliente remoto é normalmente causada pelo usuário apertando o botão STOP. Se o tempo limite imposto pelo PHP (veja set_time_limit()) é alcançado, o estado TIMEOUT (tempo acabado) é ligado.

Você pode decidir se quer ou não que a desconexão do cliente cause que seu script seja abortado. As vezes é útil sempre fazer o seu script rodar até completar mesmo se não há nenhum navegador remoto recebendo a saída. O comportamento padrão, no entanto, é de seu script ser abortado quando o cliente remoto desconecta. Esse comportamento pode ser configurado através da diretiva ignore_user_abort php.ini assim como pela diretiva correspondente do Apache .conf, "php_value ignore_user_abort" ou com a função ignore_user_abort(). Se você não disser para o PHP ignorar o abort do usuário e ele abortar, seu script será finalizado. A única exceção é se você tiver registrado uma função de finalização usando register_shutdown_function(). Com uma função de finalização, quando um usuário remoto clica no botão STOP, a próxima vez que seu script tentar gerar alguma saída, o PHP detectará que a conexão foi abortada e a função de finalização é chamada. Essa função de finalização também será chamada no fim do seu script mesmo terminando normalmente, então para fazer algo diferente caso o cliente desconecte, você pode usar a função connection_aborted(). Essa função retorna TRUE se a conexão foi abortada.

Seu script também pode ser finalizado pelo timer interno. O tempo limite padrão é de 30 segundos. Pode ser mudado usando a diretiva max_execution_time php.ini ou a diretiva do Apache .conf correspondente php_value max_execution_time assim como com a função set_time_limit(). Quando o timer chega ao limite, o script será abortado e assim como o caso acima de desconexão, se uma função de finalização foi registrada, ela será chamada. Dentro da função de finalização você pode checar se a causa da finalização foi estouro do tempo limite chamando a função connection_timeout(). Essa função retornará TRUE se o a função de finalização foi chamada pelo tempo ter acabado.

Uma coisa a ser notada é que ambos os estados ABORTED e TIMEOUT podem estar ligados ao mesmo tempo. Isso é possível se você disser ao PHP para ignorar o abort do usuário. O PHP continuará a notar o fato que o usuário pode ter quebrado a conexão, mas o script continuará executando. Se então ele alcançar o tempo limite, ele será abortado e sua função de finalização, se houver, será chamada. Nesse ponto, você terá que connection_status() retorna 3.

Usando arquivos remotos
Conexão Permanente com o Banco de Dados
Características


Conexão Permanente com o Banco de Dados

Conexões persistentes são conexões que não fecham quando a execução do seu script termina. Quando uma conexão persistente é requisitada, o PHP checa se já existe uma conexão persistente idêntica (que foi mantida aberta anteriormente) - e, se ela existe, ele a usa. Se não existir, ele cria uma nova. Uma conexão 'idêntica' é uma conexão que foi aberta ao mesmo host, com o mesmo nome de usuário e a mesma senha (onde for aplicável).

Pessoas que não estão totalmente familiarizadas com a maneira como servidores web trabalham e distribuem a carga podem confundir conexões persistentes com o que elas não são. In particular, elas não dão a você a habilidade de abrir 'sessões de usuários' na mesma conexão, elas não dão a habilidade de construir uma transação eficientemente, e elas não fazem um monte de outras coisas. De fato, para ser extremamente claro sobre o assunto, conexões persistentes não te dão nenhuma funcionalidade que não era possível com as suas correspondentes não-persistentes.

Por que?

Tem a ver com a maneira como os servidores web funcionam. Existem três maneiras de seu servidor web utilizar o PHP para gerar páginas.

O primeiro método é usar o PHP como um CGI "wrapper". Quando executado dessa maneira, uma instância do interpretador do PHP é criada e destruída para cada requisição de página (por uma página PHP) para o seu servidor web. Como ela é destruída após cada requisição, quaisquer recursos que ela adquirir (como uma conexão para um banco de dados) são fechados quando ela é destruída. Nesse caso, não há nenhum ganho ao tentar usar conexões persistentes -- elas simplesmente não persistem.

O segundo método, o mais popular, é rodar o PHP como um módulo em um servidor com multi-processos, que atualmente só inclue o Apache. Um servidor com multi-processos tipicamente tem um processo (pai) que coordena uma série de processos (filhos) que são os que realmente fazem o trabalho de servir as páginas. Quando uma requisição chega de um cliente, ela é entregue à um dos filhos que não estiver ocupado servindo outro cliente. Isso significa que quando o mesmo cliente faz uma segunda requisição ao servidor, ele pode ser servido por um processo filho diferente do da primeira vez. Quando abre-se uma conexão persistente, cada página que requisitar serviços de SQL pode reusar a mesma conexão estabelecida ao servidor SQL.

O último método é usar o PHP como um plug-in para um servidor web multithreaded. Atualmente, o PHP4 tem suporte para ISAPI, WSAPI, e NSAPI (no Windows), todos permitindo PHP ser usado como um plug-in em servidores multithreaded como Netscape FastTrack (iPlanet), Internet Information Server (IIS) da Microsoft, e O'Reilly's WebSite Pro. O comportamento é essencialmente o mesmo do modelo multiprocessado descrito anteriormente.

Se conexões persistentes não tem nenhuma funcionalidade a mais, para que elas servem?

A resposta é extremamente simples -- eficiência. Conexôes persistentes são boas se o sobrecarga (overhead) de criar uma conexão ao seu servidor SQL for alta. Saber se essa sobrecarga é alta depende de vários fatores. Como que tipo de banco de dados é, se está ou não na mesma máquina onde o servidor web está, o quão carregada de trabalho está a máquina hospedando o servidor SQL e assim por diante. O ponto é que se a sobrecarga de conexão for alta, conexões persistentes ajudam consideravelmente. Elas fazem com que os processos filhos simplesmente conectam-se uma vez só durante toda sua duração, ao invés de cada vez que eles processam uma página que requer uma conexão ao servidor SQL. Isso significa que cada filho que abriu uma conexão persistente terá sua própria conexão aberta ao servidor. Por exemplo, se você tiver 20 processos filhos diferentes que rodassem um script que fizesse uma conexão persistente à um servidor SQL, você teria 20 conexões diferentes ao banco, uma de cada filho.

Perceba, no entanto, que isso pode ter algumas desvantagens se você estiver usando um banco com limite de conexões que é excedido pela conexões persistentes filhas. Se seu banco tem um limite de 16 conexões simultâneas, e durante um momento de pico de acessos, 17 processos filhos tentam fazer a conexão, um deles não será capaz. Se houver bugs no seus scripts que não permitem que as conexões se fechem (como loops infinitos) o banco de dados com apenas 16 conexões pode rapidamente ficar sobrecarregado. Procure na documentação do seu banco por informações sobre como lidar com conexões ociosas ou abandonadas.

Aviso

Existem mais alguns cuidados a se tomar quando usando conexões persistentes. Um deles é que, quando usando travamento de tabela em uma conexão persistente, se o script por qualquer razão não pode destravar a mesma, então scripts subsequentes usando a mesma conexão serão bloqueados indefinidamente e pode ser preciso reiniciar o servidor http ou o banco de dados. Outro cuidado a se ter é, quando usando transações, um bloco de transação também será carregado para o próximo script que usar a conexão se a execução do script terminar primeiro que o bloco de transação. Em ambos os casos, você pode usar register_shutdown_function() para registrar uma função simples de limpeza para destravar suas tabelas e fazer roll back de suas transação. O ideal é evitar o problema completamente não usando conexões persistentes em scripts que usam travamento de tabelas ou transações (você ainda pode usar elas nos outros casos).

Um resumo importante. Conexões persistente foram feitas para ter um mapeamento de um-para-um com conexões normais. Isso significa que você deve sempre ser capaz de substituir conexões persistentes com conexões não-persistentes e isso não mudará a maneira como seu script se comporta. Pode (e provavelmente irá) mudar a eficiência do mesmo, mas não o seu comportamento!

Veja também fbsql_pconnect(),
ibase_pconnect(), ifx_pconnect(),
ingres_pconnect(),
msql_pconnect(), mssql_pconnect(),
mysql_pconnect(), ociplogon(),
odbc_pconnect(), ora_plogon(),
pfsockopen(), pg_pconnect(), e
sybase_pconnect().

Tratamento de Conexões
Modo Seguro (Safe Mode)
Características


Modo Seguro (Safe Mode)

Índice

  • Segurança e Modo Seguro
  • Funções restringidas/desabilitadas pelo modo seguro

O modo seguro do PHP é uma tentativa de resolver o problema de servidores compartilhados. É arquiteturalmente incorreto tentar resolver esse problema no nível do PHP, mas já que as alternativas no nível dos servidores e dos sistemas operacionais não são muito eficientes, muitas pessoas, especialmente provedores de internet, usam o modo seguro por enquanto.

Aviso

O modo seguro foi removido no PHP 6.0.0.

Conexão Permanente com o Banco de Dados
Segurança e Modo Seguro
Características


Segurança e Modo Seguro

Diretivas de Configuração de Segurança e Modo Seguro
Nome | Valor Padrão | Alterável | Changelog
safe_mode | "0" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_gid | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.1.0. Removido no PHP 6.0.0.
safe_mode_include_dir | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 4.1.0. Removido no PHP 6.0.0.
safe_mode_exec_dir | "" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_allowed_env_vars | "PHP_" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_protected_env_vars | "LD_LIBRARY_PATH" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
open_basedir | NULL | PHP_INI_ALL | PHP_INI_SYSTEM no PHP < 6.
disable_functions | "" | php.ini only | Disponível desde o PHP 4.0.1.
disable_classes | "" | php.ini only | Disponível desde o PHP 4.3.2.
Para mais detalhes e definições das constantes PHP_INI_*, veja ini_set().

Breve descrição das diretivas de configuração.

safe_mode boolean

Determina se o modo seguro estará habilitado ou não.

safe_mode_gid boolean

Por padrão, o modo seguro faz checagem comparando o UID quando abre arquivos. Se você quiser diminuir a especificidade do teste para compara com o GID, então ligue a diretiva safe_mode_gid. Escolher entre usar checagem de UID (FALSE) ou de GID quando acessar um arquivo.

safe_mode_include_dir string

Checagem de UID/GID não são feitas quando é feita inclusão de arquivos desse diretório e seus subdiretórios (diretório também deve estar no include_path ou o caminho completo deve ser incluso).

A partir do PHP 4.2.0, essa diretiva pode receber vários diretórios separados por dois pontos (ponto-e-vírgula no Windows) similar à diretiva include_path, ao contrário de apenas um diretório A restrição especificada é, na verdade, um prefixo, não um nome de diretório. Isso significa que "safe_mode_include_dir = /dir/incl" também permite acesso a "/dir/include" e "/dir/incls" se eles existirem. Quando você quiser restringir o acesso apenas ao diretório especificado, termine com uma barra. Por exemplo: "safe_mode_include_dir = /dir/incl/" Se o valor dessa diretiva estiver vazio, nenhum arquivo com UID/GID diferente pode ser incluído no PHP 4.2.3 e a partir do PHP 4.3.3. Em versões anteriores, todos os arquivos podiam ser incluídos.
safe_mode_exec_dir string

Se o PHP for usado no modo seguro, system() e as outras funções que executam programas do sistema se recusam a executar programas que não estão no diretório atual. Você deve usar / como separador diretório em todos os ambientes, inclusive o Windows.

safe_mode_allowed_env_vars string

Editar certas variáveis de ambientes pode ser uma falha de segurança em potencial. Essa diretiva contem uma lista de prefixos delimitados por vírgulas. No modo seguro, o usuário só pode alterar as variáveis de ambiente cujo nome começa com um dos prefixos dessa lista. Por padrão, os usuários só poderão ser capazser de editar variáveis de ambiente que começão com PHP_ (ex.: PHP_FOO=BAR).

Nota:

Se essa diretiva estiver vazia, o PHP deixará o usuário modificar QUALQUER variável de ambiente!

safe_mode_protected_env_vars string

Essa diretiva contem uma lista delimitada por vírgulas de varáveis de ambiente que o usuário final não será capaz de mudar usando putenv(). Essas variáveis serão protegidas mesmo que safe_mode_allowed_env_vars esteja configurada para permitir que elas sejam mudadas.

open_basedir string

Limita os arquivos que podem ser abertos ao diretório especificado e seus subdiretórios, incluindo o arquivo em si. Essa diretiva NÃO é afetada pelo estado do modo seguro, seja este ligado ou desligado.

Quando um script tenta abrir um arquivo com, por exemplo, fopen() ou gzopen(), a localização do arquivo é checada. Quando o arquivo está fora do diretório especificado, o PHP se recusará a abrí-lo. Todos os links simbólicos também passam pelo teste, não sendo possível evitar essa restrição com um symlink. Se o arquivo não existe então o symlink não deveria ser resolvido e o nome do arquivo é comparado com (um resolvido) open_basedir.

O valor especial . indica que o diretório de trabalho, onde o script é rodado, será usado como o diretório base. Isso é, no entanto, um pouco perigoso, já que o diretório de trabalho do script pode ser facilmente alterado com a função chdir().

In httpd.conf, open_basedir can be turned off (e.g. for some virtual hosts) the same way as any other configuration directive with "php_admin_value open_basedir none".

No Windows, separe os diretórios com ponto-e-vírgula. Em todos os outros sistemas, separe os diretórios com dois pontos. Como módulo do Apache, caminhos do open_basedir dos diretórios pais são herdados automaticamente agora.

A restrição especificada com open_basedir é na verdade um prefixo, não um nome de diretório. Isso significa que "open_basedir = /dir/incl" também permite acesso à "/dir/include" e "/dir/incls" se eles existirem. Quando você quiser restringir o acesso para apenas o diretório especificado, termine com uma barrra. Por exemplo: "open_basedir = /dir/incl/"

O padrão é permitir que todos os arquivos sejam abertos.

disable_functions string
A diretiva permite que você desabilite certas funções por razões de segurança. Ela recebe uma lista de nomes de funções separadas por vírgula. disable_functions não é afetada pela diretiva Safe Mode. Essa diretiva deve ser configurada no php.ini Você não pode, por exemplo, configurá-la no httpd.conf.
disable_classes string
Essa diretiva permite que você desabilite certas classes por razões de segurança. Ela recebe uma lista de nomes de funções separadas por vírgula. disable_functions não é afetada pela diretiva Safe Mode. Essa diretiva deve ser configurada no php.ini Você não pode, por exemplo, configurá-la no httpd.conf.

Nota: Availability note
Essa diretiva está disponível na versão 4.3.2 ou superior.

Veja também: register_globals, display_errors, e log_errors

Quando o safe_mode está ligado, o PHP checa se o proprietário do script atual bate com o proprietário do arquivo a ser operado por uma função de arquivo. Por exemplo:

-rw-rw-r--    1 rasmus   rasmus       33 Jul  1 19:20 script.php
-rw-r--r--    1 root     root       1116 May 26 18:01 /etc/passwd
Executando o script.php
<?php
 readfile('/etc/passwd');
?>
resulta nesse erro quando o modo seguro estiver habilitado:
Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is not
allowed to access /etc/passwd owned by uid 0 in /docroot/script.php on line 2

No entando, em certos ambientes uma checagem rígida de UID não é apropriada e uma checagem mais leve de GID é suficiente. Isso é suportado através da diretiva safe_mode_gid. Atribuindo a ela o valor On faz a checagem de GID, mais leve e atribuindo a ela o valor Off (o padrão) faz a checagem UID.

Se, ao invés de safe_mode, você editou um diretório em open_basedir, então todas as operações de arquivos serão limitadas a arquivos no diretório especificado e seus subdiretórios. Por exemplo (httpd.conf do Apache de exemplo):

<Directory /docroot>
  php_admin_value open_basedir /docroot
</Directory>
Se você rodar o mesmo script.php com essa configuração de open_basedir então esse será o resultado:
Warning: open_basedir restriction in effect. File is in wrong directory in
/docroot/script.php on line 2

Você também pode desabilitar funções individuais. Perceba que a diretiva disable_functions não pode ser usada fora do arquivo php.ini file o que significa que você não pode desabilitar funções em um virtualhost ou diretório específico no seu arquivo httpd.conf Se nós acrescentarmos isso ao nosso arquivo php.ini:

disable_functions = readfile,system
Então teriamos essa saída:
Warning: readfile() has been disabled for security reasons in
/docroot/script.php on line 2

Aviso

Essas restrições do PHP não são validas em binários executados, é claro.

Modo Seguro (Safe Mode)
Funções restringidas/desabilitadas pelo modo seguro
Modo Seguro (Safe Mode)


Funções restringidas/desabilitadas pelo modo seguro

Essa lista provavelmente ainda está incomplete e possivelmente incorreta das funções limitadas pelo modo seguro.

Funções limitadas no modo seguro
Função | Limitações
dbmopen() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
dbase_open() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
filepro() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
filepro_rowcount() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
filepro_retrieve() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
ifx_* | sql_safe_mode restrictions, (!= safe mode)
ingres_* | sql_safe_mode restrictions, (!= safe mode)
mysql_* | sql_safe_mode restrictions, (!= safe mode)
pg_lo_import() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
posix_mkfifo() | Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
putenv() | Obedece as diretivas safe_mode_protected_env_vars e safe_mode_allowed_env_vars. Também veja a documentação on putenv()
move_uploaded_file() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
chdir() | Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
dl() | Esta função é desabilitada quando o PHP é executado em safe-mode
operador backtick (``) | Esta função é desabilitada quando o PHP é executado em safe-mode
shell_exec() (função equivalente de backticks) | Esta função é desabilitada quando o PHP é executado em safe-mode
exec() | Você só pode rodar executáveis que estejam no safe_mode_exec_dir. Por razões práticas, não é permitido atualmente ter .. compondo o caminho para o executável. escapeshellcmd() é executada no argumento dessa função.
system() | Você só pode rodar executáveis que estejam no safe_mode_exec_dir. Por razões práticas, não é permitido atualmente ter .. compondo o caminho para o executável. escapeshellcmd() é executada no argumento dessa função.
passthru() | Você só pode rodar executáveis que estejam no safe_mode_exec_dir. Por razões práticas, não é permitido atualmente ter .. compondo o caminho para o executável. escapeshellcmd() é executada no argumento dessa função.
popen() | Você só pode rodar executáveis que estejam no safe_mode_exec_dir. Por razões práticas, não é permitido atualmente ter .. compondo o caminho para o executável. escapeshellcmd() é executada no argumento dessa função.
fopen() | Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
mkdir() | Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
rmdir() | Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
rename() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
unlink() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
copy() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (on source and target)
chgrp() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
chown() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado.
chmod() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Além disso, você não pode editar os bits SUID, SGID e sticky
touch() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado.
symlink() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (nota: apenas o alvo é checado)
link() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (nota: apenas o alvo é checado)
apache_request_headers() | No modo seguro, cabeçalhos começando com 'authorization' (não diferenciando maiúsculas e minúsculas) não serão retornados.
header() | No modo seguro, o uid do script é adicionado a parte realm do cabeçalho WWW-Authenticate se você configurar esse cabeçalho (usado para Autenticação HTTP).
variáveis PHP_AUTH | No modo seguro, as variáveis PHP_AUTH_USER, PHP_AUTH_PW, e AUTH_TYPE não estão disponíveis no array $_SERVER. Apesar de tudo, você ainda pode usar REMOTE_USER para o USER. (nota: só afetado desde o PHP 4.3.0)
highlight_file(), show_source() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (nota: só afetado desde o PHP 4.2.1)
parse_ini_file() | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (nota: só afetado desde o PHP 4.2.1)
set_time_limit() | Não tem efeito quando o PHP é executado em safe mode.
max_execution_time | Não tem efeito quando o PHP é executado em safe mode.
mail() | Em modo seguro, o quinto parâmetro é desabilitado. (nota: só afetado desde o PHP 4.2.3)
Todos filesystem e funções de stream. | Verifica se os arquivos ou diretórios que estão sendo operados tem o mesmo UID (proprietário) do script que está sendo executado. Verifica se o diretório que será afetado por esta operação tem o mesmo UID (proprietário) do script que está sendo executado. (veja a opção safe_mode_include_dir php.ini. | ??

Segurança e Modo Seguro
Utilizando o PHP na linha de comando
Modo Seguro (Safe Mode)


Utilizando o PHP na linha de comando

A partir versão 4.3.0, o PHP suporta um novo tipo SAPI (Server Application Programming Interface) chamado CLI que significa Command Line Interface. Como o próprio nome indica, essa SAPI tem foco no desenvolvimento de aplicações shell (ou no terminal/linha de comando) com o PHP. Há algumas diferenças entre a a CLI SAPI e outras SAPIs que são explicadas neste capítulo. Mas é errado dizer que a versão CLI e CGI são SAPIs diferentes pelo motivo que elas compartilham muitos comportamentos idênticos.

A CLI SAPI foi liberada primeiramente com o PHP 4.2.0, mas ainda em estágio experimental, sendo necessário ativá-la explicitamente com a opção --enable-cli durante o ./configure. Desde o PHP 4.3.0 a CLI SAPI não mais é experimental e a opção --enable-cli está ligada por default. você pode usar a opção --disable-cli para desativá-la.

Desde o PHP 4.3.0, o nome, localização e existência dos executáveis CLI e CGI podem mudar dependendo de como o PHP foi instalado no seu sistema. Por padrão, quando executado o make, ambos CGI e CLI são compilados e colocados em sapi/cgi/php e sapi/cli/php, respectivamente, no seu diretório de fontes PHP. Note que que ambas tem o nome php. O que acontece durante o make install depende dos parâmetros do configure. Se o módulo SAPI é escolhido durante o configure, como o apxs, ou a opção --disable-cgi é utilizada, a versão CLI é copiada para {PREFIX}/bin/php durante o make install em vez da versão CGI ser colocada aqui. Então, por exemplo, se você tiver --with--apxs na sua linha de configuração, então a versão CLI é copiada para {PREFIX}/bin/php durante o make install. Se você quiser sobrescrever a instalação do executável CGI, use make install-cli depois do make install. Alternativamente, você pode especificar --disable-cgi em seu configure.

Nota:

Por serem ambos --enable-cli e --enable-cgi ligados por padrão, ter um --enable-cli em seu configure não significa necessariamente que a versão CLI será copiada para {PREFIX}/bin/php durante o make install.

Os pacotes para Windows distribuidos entre o PHP 4.2.0 e PHP 4.2.3 forneciam a versão CLI com o nome php-cli.exe, na mesma pasta que a versão CGI php.exe. A partir do PHP 4.3.0, os pacotes Windows distribuem a versão CLI como php.exe em uma pasta separada, chamada cli ou seja: cli/php.exe . A partir do PHP 5, a versão CLI também é distribuída no diretório principal, com o nome php.exe. A versão CGI é distribuída com o nome php-cgi.exe.

A partir do PHP 5, um novo arquivo php-win.exe começou a ser distribuído. Esta versão é igual a versão CLI, exceto que esse php-win não exibe nenhum output e também não disponibiliza nenhum console (nenhuma caixa de texto aparece na tela). Este comportamento é semelhante ao do php-gtk. Você pode configurar esse modo com --enable-cli-win32 .

Nota: Que versão de SAPI eu tenho?

Na linha de comando, digitando php -v, ele lhe dirá se o php é CGI ou CLI. Veja também a função php_sapi_name() e a constante PHP_SAPI.

Nota:

Um manual Unix man foi acrescentado no PHP 4.3.2. Você pode vê-lo digitando man php em seu ambiente shell.

Diferenças importantes das CLI SAPI comparada com outras SAPIs:

  • Diferentemente da CGI SAPI, nenhum header é impresso na saída.

    A CGI SAPI possui um meio de suprimir os headers HTTP, mas não há uma chave equivalente para ativá-los na CLI SAPI.

    A versão CLI é definida silenciosa por padrão. Mas as chaves -q e --no-header são mantidas para compatibilidade, de forma que você possa utilizar scripts CGI antigos.

    Ela não altera o diretório de execução para o do script. (as chaves -C e --no-chdir também são mantidas para compatibilidade).

    Mensagens de erro em texto simples (sem formatação HTML).

  • Estas são as diretivas do php.ini que são sobrescritas pela CLI SAPI porque não fazem sentido no ambiente shell:

    Diretivas php.ini sobrescritas
    Diretiva | Valor default CLI SAPI | Comentários
    html_errors | FALSE | Pode ser bem difícil de ler mensagens de erro no seu shell quando elas estão embebidas dentro de tags HTML, por isso essa diretiva tem default para FALSE.
    implicit_flush | TRUE | Essa diretiva causa que qualquer saída gerada de um print(), echo() e semelhantes sejam imediatamente escritas para o output e não cacheadas em nenhum buffer. Você ainda pode usar o output buffering se você precisa atrasar ou manipular a saída padrão.
    max_execution_time | 0 (unlimited) | Devido as infinitas possibilidades da utilização do PHP em ambientes shell, o tempo máximo de execução foi configurado para ilimitado. Enquanto aplicações escritas para web são geralmente executadas em poucos segundos, aplicações no shell tendem a ter um tempo de execução mais longo.
    register_argc_argv TRUE

    Como essa diretiva é TRUE você sempre terá acesso as variáveis argc (número de argumentos passados para a aplicação) e argv (array dos argumentos informados) na CLI SAPI.

    A partir do PHP 4.3.0, as variáveis do PHP $argc e $argv são registradas e preenchidas com os valores apropriados quando utilizando a CLI SAPI. Antes dessa versão, a criação dessas variáveis era controlada da mesma forma que as versões CGI e MODULE e precisava da diretiva PHP register_globals configurada para on. Independentemente da versão ou da configuração de register_globals, você sempre poderá acessar esses dados através de $_SERVER ou $HTTP_SERVER_VARS. Exemplo: $_SERVER['argv']

    Nota:

    Estas diretivas não podem ser inicializadas com outros valores do arquivo de configuração php.ini ou um arquivo personalizado (se informado). Esta limitação existe porque estes valores são aplicados depois que todos os arquivos de configuração são analisados. Entretanto, seus valores podem ser modificados durante a execução (o que pode não fazer sentido para todas elas, por exemplo, register_argc_argv).

  • Para facilicar a operação no ambiente shell, as seguintes constantes estão definidas:

    Constantes específicas CLI
    Constante Descrição
    STDIN Um stream já aberto para o stdin. Isto economiza ter de abrí-lo com
    <?php

    $stdin     = fopen('php://stdin', 'r');

    ?>
    Se você precisa ler apenas uma linha do stdin, você pode utilizar
    <?php
    $line     = trim(fgets(STDIN)); // lê uma linha do STDIN
    fscanf(STDIN, "%d\n", $number); // carrega number a partir do STDIN
    ?>
    STDOUT Um stream já aberto para o stdout. Isto economiza ter de abrí-lo com
    <?php

    $stdout     = fopen('php://stdout', 'w');

    ?>
    STDERR Um stream já aberto para o stderr. Isto economiza ter de abrí-lo com
    <?php

    $stderr     = fopen('php://stderr', 'w');

    ?>

    Considerando isso, você não precisará mais abrí-los, por exemplo o stderr você mesmo, mas simplesmente usar a constante em vez do recurso stream:

    php -r 'fwrite(STDERR, "stderr\n");'
    Você não precisa fechar explicitamente esses streams. Isto é realizado automaticamente pelo PHP.

  • A CLI SAPI não modifica o diretório de execução atual para o diretório onde o script é interpretado!

    Exemplo mostrando a diferença da CGI SAPI:

    <?php
    /* Nossa aplicação de teste chamada test.php */
    echo getcwd(), "\n";
    ?>

    Quando utilizando a versão CGI, a saída é:

    $ pwd
/tmp

$ php -q outro_diretorio/test.php
/tmp/outro_diretorio
    Isto mostra como o PHP modifica o diretório atual para aquela onde o script é executado.

    Utilizando a versão CLI SAPI:

    $ pwd
/tmp

$ php -f outro_diretorio/test.php
/tmp
    E isto mostra a grande flexibilidade ferramentas shell em PHP.

    Nota:

    A CGI SAPI suporta o comportamento da CLI SAPI utilizando a chave -C quando de sua execução na linha de comando.

A lista de opções de linha de comando fornecidas pelo binário do PHP pode ser solicitada a qualquer tempo executando o PHP com a opção -h :

Usage: php [options] [-f] <file> [args...]
       php [options] -r <code> [args...]
       php [options] [-- args...]
  -s               Display colour syntax highlighted source.
  -w               Display source with stripped comments and whitespace.
  -f <file>        Parse <file>.
  -v               Version number
  -c <path>|<file> Look for php.ini file in this directory
  -a               Run interactively
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -z <file>        Load Zend extension <file>.
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -i               PHP information
  -r <code>        Run PHP <code> without using script tags <?..?>
  -h               This help

  args...          Arguments passed to script. Use -- args when first argument
                   starts with - or script is read from stdin

A CLI SAPI fornecer três maneiras diferentes para você executar seu código PHP:

  1. Chamando o PHP para executar um arquivo determinado.

    php my_script.php

php -f my_script.php
    De ambas maneiras (utilizando ou não a opção -f ) o arquivo my_script.php é executado. Você pode escolher qualquer arquivo para executar --- seus scripts PHP não precisam terminar com a extensão .php, podendo ter qualquer nome ou extensão que você deseje.

  2. Passar o código PHP para execução diretamente a linha de comando.

    php -r 'print_r(get_defined_constants());'
    É preciso ter especial cuidado com a substituição de variáveis shell e delimitação de strings utilizada.

    Nota:

    Leia o exemplo cuidadosamente, observando que não há tags de abertura ou fechamento! A opção -r simplesmente não precisa delas. Utilizando-as você obterá erros de interpretação.

  3. Fornece código PHP para interpretação via a entrada padrão (stdin).

    Isto mostra a habilidade poderosa de como criar dinamicamente código PHP e fornecê-lo ao binário, como demonstrado neste exemplo (apenas demonstrativo):

    $ alguma_aplicacao | algum_filtro | php | sort -u >final_output.txt

Você não pode combinar nenhum das três maneiras para executar código.

Assim como qualquer aplicação shell, não somente o binário do PHP aceita um certo número de argumentos, mas também seu script PHP também pode recebê-los. O número de argumentos que podem ser passados para seu script não é limitado ao PHP (mas o shell tem um certo limite de tamanho em caracteres que podem ser informados, e não há um padrão para esse limite). Os argumentos passados para seu script são disponibilizados no array global $argv. No índice zero sempre conterá o nome do script (podendo ser - no caso de código PHP estar vindo da entrada padrão ou da opção de linha de comando -r ). O segunda variável global $argc contém o número de elementos no array $argv (mas não o número de argumentos passados para seu script.

Os argumentos que você deseja passar para seu script não podem começar com o caracter - e isso não pode ser modificado. Passando argumentos para seu script que comecem com um - causará problemas porque o PHP tentará manuseá-los. Para prevenir isso, utilize o separador de argumentos --. Depois que esse separador é passado para o PHP, todos os argumentos restantes são repassados intocados para seu script.

# Isto não executará o código fornecido e irá fazer o PHP mostrar sua ajuda
$ php -r 'var_dump($argv);' -h
Usage: php [options] [-f] <file> [args...]
[...]

# Isto passará o argumento '-h' para seu script e prevenirá o PHP de usá-lo
$ php -r 'var_dump($argv);' -- -h
array(2) {
  [0]=>
  string(1) "-"
  [1]=>
  string(2) "-h"
}

Entretanto, há ainda uma outra maneira de se utilizar o PHP no shell. Você pode escrever um script que na primeira linha tenha #!/usr/bin/php e em seguida código PHP normal, incluindo as tags de início e fim do PHP. Você também precisa configurar os atributos de execução do arquivo (por exemplo, chmod +x test) de forma que seu script seja executado normalmente como um script shell/Perl:

#!/usr/bin/php
<?php
var_dump($argv);
?>
Assumindo que o arquivo foi nomeado como teste e está no diretório atual, nós podemos fazer o seguinte:
$ chmod +x teste
$ ./test -h -- foo
array(4) {
  [0]=>
  string(6) "./teste"
  [1]=>
  string(2) "-h"
  [2]=>
  string(2) "--"
  [3]=>
  string(3) "foo"
}
Como você viu, dessa forma não há problemas em passar parâmetros para seu script que comecem com o caracter -

Opções com nomes "longos" foram disponibilizados a partir do PHP 4.3.3.

Opções de linha de comando
Opção | Opção Longa | Descrição
-s --syntax-highlight

Mostra o código fonte com destaque de cores.

Esta opção usa o mecanismo interno para interpretar o arquivo e produzir uma versão HTML do fonte com destaque de cores e a envia para a saída padrão. Note que ele somente gerará blocos de <code> [...] </code>, mas não headers HTML.

Nota:

Esta opção não funciona juntamente com a opção -r .

-s --syntax-highlighting

Apelido para --syntax-highlight .

-w --strip

Mostra o fonte sem comentários e espaços em branco.

Nota:

Esta opção não funciona juntamente com a opção -r .

-f --file

Interpreta e executa o arquivo informado com a opção -f Esta diretiva é opcional e pode ser deixada de lado. Informar somente o nome do arquivo para execução é suficiente.

-v --version

Imprime as versões o PHP, PHP SAPI e Zend para a saída padrão, por exemplo:

$ php -v
PHP 4.3.0 (cli), Copyright (c) 1997-2002 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2002 Zend Technologies

-c --php-ini

Esta opção informa um diretório onde procurar pelo php.ini ou especifica um arquivo INI personalizado diretamente (não presisa ser obrigatoriamente php.ini), por exemplo:

$ php -c /custom/directory/ my_script.php

$ php -c /custom/directory/custom-file.ini my_script.php
Se você não usar essa opção, o arquivo será procurado nos locais padrão.

-n --no-php-ini

Ignora todo o php.ini. Esta chave está disponível desde o PHP 4.3.0.

-d --define

Esta opção permite definir um valor personalizado para qualquer diretiva de configuração permitida no php.ini. Sintaxe:

-d diretiva[=valor]

Exemplos (linhas cortadas para melhor visualização):

# Omitindo a parte do valor irá configurar a diretiva para "1"
$ php -d max_execution_time
        -r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(1) "1"

# Passando um valor vazio irá configurar a diretiva para ""
php -d max_execution_time=
        -r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(0) ""

# A diretiva de configuração será preenchida com qualquer coisa informada depois do caracter =''
$  php -d max_execution_time=20
        -r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(2) "20"
$  php
        -d max_execution_time=instonaofazsentido
        -r '$foo = ini_get("max_execution_time"); var_dump($foo);'
string(15) "instonaofazsentido"

-a --interactive

Roda o PHP em modo interativo.

-e --profile-info

Gera informações estendidas para o debugador/profiler.

-z --zend-extension

Carrega a extensão Zend. Se somente o nome de arquivo é fornecido, o PHP tenta carregar essa extensão do caminho default de bibliotecas do seu sistema (geralmente especificado em /etc/ld.so.conf em sistemas Linux). Passando um nome de arquivo com o caminho absoluto irá evitar a procura no caminho das bibliotecas de sistema. Um nome de arquivo com uma informação de diretório relativa fará com que o PHP apenas tente carregar a extensão no caminho relativo ao diretório atual.

-l --syntax-check

Esta opção fornece uma maneira conveniente apenas realizar uma checagem de sintaxe no código PHP fornecido. No sucesso, o texto No syntax errors detected in <arquivo> é impresso na saída padrão e informado o código de saida de sistema 0. Em caso de erro, o texto Errors parsing <filename> juntamente com o a mensagem do interpretador interno é impressa para a saída padrão e o código de saída de sistema é 255.

Esta opção não procura por erros fatais (como funções não definidas). Use -f se você deseja detectar erros fatais também.

Nota:

Esta opção não trabalha com a opção -r

-m --modules

Utilizando essa opção, o PHP imprime os módulos PHP e Zend compilados (e carregados):

$ php -m
[PHP Modules]
xml
tokenizer
standard
session
posix
pcre
overload
mysql
mbstring
ctype

[Zend Modules]

-i | --info | Esta opção de linha de comando chama a função phpinfo() e imprime seus resultados. Se o PHP não está funcionando bem, é interessante fazer um php -i para observar qualquer mensagem de erro impressa antes ou dentro das tabelas de informação. Utilizando o modo CGI o resultado impresso está em HTML, e ela por isso é um pouco grande.
-r --run

Esta opção permite a execução de código PHP direto da linha de comando. As tags de início e fim do PHP (<?php e ?>) não são necessárias e causarão erros de interpretação se informadas.

Nota:

Cuidados deverão ser tomados utilizando dessa forma para evitar que haja substituição de variáveis pelo shell.

Exemplo mostrando um erro de interpretação

$ php -r "$foo = get_defined_constants();"
Command line code(1) : Parse error - parse error, unexpected '='
O problema aqui decorre do sh/bash realizar substituições de variáveis sempre quando se utilizam aspas ("). Desde que a variável $foo não deve estar definida, ela é substituída por nada o que faz que o código passado para o PHP para execução seja:
$ php -r " = get_defined_constants();"
A maneira correta é utilizar apóstrofos ('). Variáveis em strings delimitadas por apóstrofos não são substituidas pelo sh/bash.
$ php -r '$foo = get_defined_constants(); var_dump($foo);'
array(370) {
  ["E_ERROR"]=>
  int(1)
  ["E_WARNING"]=>
  int(2)
  ["E_PARSE"]=>
  int(4)
  ["E_NOTICE"]=>
  int(8)
  ["E_CORE_ERROR"]=>
  [...]
Se você estiver utilizando um shell diferente do sh/bash, você pode experimentar comportamentos diferenciados. Sinta-se livre para abrir um aviso de bug em » http://bugs.php.net/ ou enviar um e-mail para phpdoc@lists.php.net. Você vai rapidamente conseguir problemas quando tentar obter variáveis do ambiente dentro do código ou quando utilizar barras invertidas para escape. Esteja avisado.

Nota:

-r está disponível na SAPI CLI SAPI mas não na SAPI CGI.

-h | --help | Com essa opção, você pode obter informações sobre a lista atual de opções de linha de comando pequenas descrições sobre o que elas fazem.
-? --usage Apelido para --help .

O PHP executável pode ser utilizando para rodar scripts PHP absolutamente independente de um servidor web. Se você está num sistema Unix, você pode acrescentar uma linha especial na primeira linha de seu script e torná-lo executável, então o sistema operacional saberá que programa deverá rodar o script. Na plataforma Windows, você pode associar php.exe com o clique duplo em arquivos .php ou fazer um arquivo batch para rodar seus scripts através do PHP. A primeira linha acrescentada ao script nos Unix não funcionam no Windows, por isso você não pode escrever programas independentes de plataforma desse jeito. Um exemplo simples de como escrever um programa para a linha de comando segue abaixo:

Exemplo #1 Um script para rodar na linha de comando (script.php)

#!/usr/bin/php
<?php

if ($argc != 2 || in_array($argv[1], array('--help', '-help', '-h', '-?'))) {
?>

Este é um script de linha de comando com um parâmetro.

  Uso:
  <?php echo $argv[0]; ?> <opcao>

  <opcao> pode ser qualquer palavra que
  você queira imprimir. Com as opções --help, -help, -h
  ou -?, você pode obter essa ajuda.

<?php
} else {
    echo $argv[1];
}
?>

No script acima, nós utilizamos uma primeira linha especial para indicar que este arquivo precisa rodar pelo PHP. Como nós trabalhamos com a versão CLI aqui, não serão impressos headers HTTP. Há duas variáveis que você precisa conhecer para escrever aplicações em linha de comando com o PHP: $argc e $argv. O primeiro é o número de argumentos mais um (o nome do script executando). O segundo é um array contendo os argumentos, começando com o nome do script no índice zero ($argv[0]).

No programa acima é verificado se há apenas um argumento fornecido. Se o argumento for --help , -help , -h ou -? , é impresso uma mensagem de ajuda, imprimindo o nome do script dinamicamente. Qualquer outro argumento é exibido como informado.

Para rodar esse aplicativo nos Unix, basta torná-lo executável e o chamar diretamente como script.php exibaisso ou script.php -h. No Windows, você pode fazer um arquivo batch para esta tarefa:

Exemplo #2 Arquivo batch para rodar um script em linha de comando (script.bat)

@c:\php\cli\php.exe script.php %1 %2 %3 %4

Assumindo que você nomeou o programa acima como script.php, e que tem sua versão CLI php.exe em c:\php\cli\php.exe este arquivo batch irá rodar com os seguintes parâmetros: script.bat exibaisso ou script.bat -h.

Veja também a documentação da extensão Readline para mais funções que você pode usar para incrementar suas aplicações para linha de comando em PHP.

Funções restringidas/desabilitadas pelo modo seguro
Garbage Collection
Características


Garbage Collection

Índice

  • Reference Counting Basics
  • Collecting Cycles
  • Performance Considerations

This section explains the merits of the new Garbage Collection (also known as GC) mechanism that is part of PHP 5.3.

Utilizando o PHP na linha de comando
Reference Counting Basics
Características


Reference Counting Basics

A PHP variable is stored in a container called a "zval". A zval container contains, besides the variable's type and value, two additional bits of information. The first is called "is_ref" and is a boolean value indicating whether or not the variable is part of a "reference set". With this bit, PHP's engine knows how to differentiate between normal variables and references. Since PHP allows user-land references, as created by the & operator, a zval container also has an internal reference counting mechanism to optimize memory usage. This second piece of additional information, called "refcount", contains how many variable names (also called symbols) point to this one zval container. All symbols are stored in a symbol table, of which there is one per scope. There is a scope for the main script (i.e., the one requested through the browser), as well as one for every function or method.

A zval container is created when a new variable is created with a constant value, such as:

Exemplo #1 Creating a new zval container

<?php
$a = "new string";
?>

In this case, the new symbol name, a, is created in the current scope, and a new variable container is created with the type string and the value new string. The "is_ref" bit is by default set to FALSE because no user-land reference has been created. The "refcount" is set to 1 as there is only one symbol that makes use of this variable container. Note that if "refcount" is 1, "is_ref" is always FALSE. If you have » Xdebug installed, you can display this information by calling xdebug_debug_zval().

Exemplo #2 Displaying zval information

<?php
xdebug_debug_zval('a');
?>

O exemplo acima irá imprimir:

a: (refcount=1, is_ref=0)='new string'

Assigning this variable to another variable name will increase the refcount.

Exemplo #3 Increasing refcount of a zval

<?php
$a = "new string";
$b = $a;
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir:

a: (refcount=2, is_ref=0)='new string'

The refcount is 2 here, because the same variable container is linked with both a and b. PHP is smart enough not to copy the actual variable container when it is not necessary. Variable containers get destroyed when the "refcount" reaches zero. The "refcount" gets decreased by one when any symbol linked to the variable container leaves the scope (e.g. when the function ends) or when unset() is called on a symbol. The following example shows this:

Exemplo #4 Decreasing zval refcount

<?php
$a = "new string";
$c = $b = $a;
xdebug_debug_zval( 'a' );
unset( $b, $c );
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir:

a: (refcount=3, is_ref=0)='new string'
a: (refcount=1, is_ref=0)='new string'

If we now call unset($a);, the variable container, including the type and value, will be removed from memory.

Compound Types

Things get a tad more complex with compound types such as arrays and objects. Instead of a scalar value, arrays and objects store their properties in a symbol table of their own. This means that the following example creates three zval containers:

Exemplo #5 Creating a array zval

<?php
$a = array( 'meaning' => 'life', 'number' => 42 );
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir algo similar a:

a: (refcount=1, is_ref=0)=array (
   'meaning' => (refcount=1, is_ref=0)='life',
   'number' => (refcount=1, is_ref=0)=42
)

Or graphically

Zvals for a simple array

The three zval containers are: a, meaning, and number. Similar rules apply for increasing and decreasing "refcounts". Below, we add another element to the array, and set its value to the contents of an already existing element:

Exemplo #6 Adding already existing element to an array

<?php
$a = array( 'meaning' => 'life', 'number' => 42 );
$a['life'] = $a['meaning'];
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir algo similar a:

a: (refcount=1, is_ref=0)=array (
   'meaning' => (refcount=2, is_ref=0)='life',
   'number' => (refcount=1, is_ref=0)=42,
   'life' => (refcount=2, is_ref=0)='life'
)

Or graphically

Zvals for a simple array with a reference

From the above Xdebug output, we see that both the old and new array elements now point to a zval container whose "refcount" is 2. Although Xdebug's output shows two zval containers with value 'life', they are the same one. The xdebug_debug_zval() function does not show this, but you could see it by also displaying the memory pointer.

Removing an element from the array is like removing a symbol from a scope. By doing so, the "refcount" of a container that an array element points to is decreased. Again, when the "refcount" reaches zero, the variable container is removed from memory. Again, an example to show this:

Exemplo #7 Removing an element from an array

<?php
$a = array( 'meaning' => 'life', 'number' => 42 );
$a['life'] = $a['meaning'];
unset( $a['meaning'], $a['number'] );
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir algo similar a:

a: (refcount=1, is_ref=0)=array (
   'life' => (refcount=1, is_ref=0)='life'
)

Now, things get interesting if we add the array itself as an element of the array, which we do in the next example, in which we also sneak in a reference operator, since otherwise PHP would create a copy:

Exemplo #8 Adding the array itself as an element of it self

<?php
$a = array( 'one' );
$a[] =& $a;
xdebug_debug_zval( 'a' );
?>

O exemplo acima irá imprimir algo similar a:

a: (refcount=2, is_ref=1)=array (
   0 => (refcount=1, is_ref=0)='one',
   1 => (refcount=2, is_ref=1)=...
)

Or graphically

Zvals for an array with a circular reference

You can see that the array variable (a) as well as the second element (1) now point to a variable container that has a "refcount" of 2. The "..." in the display above shows that there is recursion involved, which, of course, in this case means that the "..." points back to the original array.

Just like before, unsetting a variable removes the symbol, and the reference count of the variable container it points to is decreased by one. So, if we unset variable $a after running the above code, the reference count of the variable container that $a and element "1" point to gets decreased by one, from "2" to "1". This can be represented as:

Exemplo #9 Unsetting $a

(refcount=1, is_ref=1)=array (
   0 => (refcount=1, is_ref=0)='one',
   1 => (refcount=1, is_ref=1)=...
)

Or graphically

Zvals after removal of array with a circular reference demonstrating the memory leak

Cleanup Problems

Although there is no longer a symbol in any scope pointing to this structure, it cannot be cleaned up because the array element "1" still points to this same array. Because there is no external symbol pointing to it, there is no way for a user to clean up this structure; thus you get a memory leak. Fortunately, PHP will clean up this data structure at the end of the request, but before then, this is taking up valuable space in memory. This situation happens often if you're implementing parsing algorithms or other things where you have a child point back at a "parent" element. The same situation can also happen with objects of course, where it actually is more likely to occur, as objects are always implicitly used by reference.

This might not be a problem if this only happens once or twice, but if there are thousands, or even millions, of these memory losses, this obviously starts being a problem. This is especially problematic in long running scripts, such as daemons where the request basically never ends, or in large sets of unit tests. The latter caused problems while running the unit tests for the Template component of the eZ Components library. In some cases, it would require over 2 GB of memory, which the test server didn't quite have.

Garbage Collection
Collecting Cycles
Garbage Collection


Collecting Cycles

Traditionally, reference counting memory mechanisms, such as that used previously by PHP, fail to address circular reference memory leaks. As of 5.3.0 PHP however implements the synchronous algorithm from the » Concurrent Cycle Collection in Reference Counted Systems paper which addresses that issue.

A full explanation of how the algorithm works would be slightly beyond the scope of this section, but the basics are explained here. First of all, we have to establish a few ground rules. If a refcount is increased, it's still in use and therefore, not garbage. If the refcount is decreased and hits zero, the zval can be freed. This means that garbage cycles can only be created when a refcount argument is decreased to a non-zero value. Secondly, in a garbage cycle, it is possible to discover which parts are garbage by checking whether it is possible to decrease their refcount by one, and then checking which of the zvals have a refcount of zero.

Garbage collection algorithm

To avoid having to call the checking of garbage cycles with every possible decrease of a refcount, the algorithm instead puts all possible roots (zvals) in the "root buffer" (marking them "purple"). It also makes sure that each possible garbage root ends up in the buffer only once. Only when the root buffer is full does the collection mechanism start for all the different zvals inside. See step A in the figure above.

In step B, the algorithm runs a depth-first search on all possible roots to decrease by one the refcounts of each zval it finds, making sure not to decrease a refcount on the same zval twice (by marking them as "grey"). In step C, the algorithm again runs a depth-first search from each root node, to check the refcount of each zval again. If it finds that the refcount is zero, the zval is marked "white" (blue in the figure). If it's larger than zero, it reverts the decreasing of the refcount by one with a depth-first search from that point on, and they are marked "black" again. In the last step (D), the algorithm walks over the root buffer removing the zval roots from there, and meanwhile, checks which zvals have been marked "white" in the previous step. Every zval marked as "white" will be freed.

Now that you have a basic understanding of how the algorithm works, we will look back at how this integrates with PHP. By default, PHP's garbage collector is turned on. There is, however, a php.ini setting that allows you to change this: zend.enable_gc .

When the garbage collector is turned on, the cycle-finding algorithm as described above is executed whenever the root buffer runs full. The root buffer has a fixed size of 10,000 possible roots (although you can alter this by changing the GC_ROOT_BUFFER_MAX_ENTRIES constant in Zend/zend_gc.c in the PHP source code, and re-compiling PHP). When the garbage collector is turned off, the cycle-finding algorithm will never run. However, possible roots will always be recorded in the root buffer, no matter whether the garbage collection mechanism has been activated with this configuration setting.

If the root buffer becomes full with possible roots while the garbage collection mechanism is turned off, further possible roots will simply not be recorded. Those possible roots that are not recorded will never be analyzed by the algorithm. If they were part of a circular reference cycle, they would never be cleaned up and would create a memory leak.

The reason why possible roots are recorded even if the mechanism has been disabled is because it's faster to record possible roots than to have to check whether the mechanism is turned on every time a possible root could be found. The garbage collection and analysis mechanism itself, however, can take a considerable amount of time.

Besides changing the zend.enable_gc configuration setting, it is also possible to turn the garbage collecting mechanism on and off by calling gc_enable() or gc_disable() respectively. Calling those functions has the same effect as turning on or off the mechanism with the configuration setting. It is also possible to force the collection of cycles even if the possible root buffer is not full yet. For this, you can use the gc_collect_cycles() function. This function will return how many cycles were collected by the algorithm.

The rationale behind the ability to turn the mechanism on and off, and to initiate cycle collection yourself, is that some parts of your application could be highly time-sensitive. In those cases, you might not want the garbage collection mechanism to kick in. Of course, by turning off the garbage collection for certain parts of your application, you do risk creating memory leaks because some possible roots might not fit into the limited root buffer. Therefore, it is probably wise to call gc_collect_cycles() just before you call gc_disable() to free up the memory that could be lost through possible roots that are already recorded in the root buffer. This then leaves an empty buffer so that there is more space for storing possible roots while the cycle collecting mechanism is turned off.

Reference Counting Basics
Performance Considerations
Garbage Collection


Performance Considerations

We have already mentioned in the previous section that simply collecting the possible roots had a very tiny performance impact, but this is when you compare PHP 5.2 against PHP 5.3. Although the recording of possible roots compared to not recording them at all, like in PHP 5.2, is slower, other changes to the PHP runtime in PHP 5.3 prevented this particular performance loss from even showing.

There are two major areas in which performance is affected. The first area is reduced memory usage, and the second area is run-time delay when the garbage collection mechanism performs its memory cleanups. We will look at both of those issues.

Reduced Memory Usage

First of all, the whole reason for implementing the garbage collection mechanism is to reduce memory usage by cleaning up circular-referenced variables as soon as the prerequisites are fulfilled. In PHP's implementation, this happens as soon as the root-buffer is full, or when the function gc_collect_cycles() is called. In the graph below, we display the memory usage of the script below, in both PHP 5.2 and PHP 5.3, excluding the base memory that PHP itself uses when starting up.

Exemplo #1 Memory usage example

<?php
class Foo
{
    public $var = '3.1415962654';
}

$baseMemory = memory_get_usage();

for ( $i = 0; $i <= 100000; $i++ )
{
    $a = new Foo;
    $a->self = $a;
    if ( $i % 500 === 0 )
    {
        echo sprintf( '%8d: ', $i ), memory_get_usage() - $baseMemory, "\n";
    }
}
?>
Comparison of memory usage between PHP 5.2 and PHP 5.3

In this very academic example, we are creating an object in which a property is set to point back to the object itself. When the $a variable in the script is re-assigned in the next iteration of the loop, a memory leak would typically occur. In this case, two zval-containers are leaked (the object zval, and the property zval), but only one possible root is found: the variable that was unset. When the root-buffer is full after 10,000 iterations (with a total of 10,000 possible roots), the garbage collection mechanism kicks in and frees the memory associated with those possible roots. This can very clearly be seen in the jagged memory-usage graph for PHP 5.3. After each 10,000 iterations, the mechanism kicks in and frees the memory associated with the circular referenced variables. The mechanism itself does not have to do a whole lot of work in this example, because the structure that is leaked is extremely simple. From the diagram, you see that the maximum memory usage in PHP 5.3 is about 9 Mb, whereas in PHP 5.2 the memory usage keeps increasing.

Run-Time Slowdowns

The second area where the garbage collection mechanism influences performance is the time taken when the garbage collection mechanism kicks in to free the "leaked" memory. In order to see how much this is, we slightly modify the previous script to allow for a larger number of iterations and the removal of the intermediate memory usage figures. The second script is here:

Exemplo #2 GC performance influences

<?php
class Foo
{
    public $var = '3.1415962654';
}

for ( $i = 0; $i <= 1000000; $i++ )
{
    $a = new Foo;
    $a->self = $a;
}

echo memory_get_peak_usage(), "\n";
?>

We will run this script two times, once with the zend.enable_gc setting turned on, and once with it turned off:

Exemplo #3 Running the above script

time php -dzend.enable_gc=0 -dmemory_limit=-1 -n example2.php
# and
time php -dzend.enable_gc=1 -dmemory_limit=-1 -n example2.php

On my machine, the first command seems to take consistently about 10.7 seconds, whereas the second command takes about 11.4 seconds. This is a slowdown of about 7%. However, the maximum amount of memory used by the script is reduced by 98% from 931Mb to 10Mb. This benchmark is not very scientific, or even representative of real-life applications, but it does demonstrate the memory usage benefits that this garbage collection mechanism provides. The good thing is that the slowdown is always the same 7%, for this particular script, while the memory saving capabilities save more and more memory as more circular references are found during script execution.

PHP's Internal GC Statistics

It is possible to coax a little bit more information about how the garbage collection mechanism is run from within PHP. But in order to do so, you will have to re-compile PHP to enable the benchmark and data-collecting code. You will have to set the CFLAGS environment variable to -DGC_BENCH=1 prior to running ./configure with your desired options. The following sequence should do the trick:

Exemplo #4 Recompiling PHP to enable GC benchmarking

export CFLAGS=-DGC_BENCH=1
./config.nice
make clean
make

When you run the above example code again with the newly built PHP binary, you will see the following being shown after PHP has finished execution:

Exemplo #5 GC statistics

GC Statistics
-------------
Runs:               110
Collected:          2072204
Root buffer length: 0
Root buffer peak:   10000

      Possible            Remove from  Marked
        Root    Buffered     buffer     grey
      --------  --------  -----------  ------
ZVAL   7175487   1491291    1241690   3611871
ZOBJ  28506264   1527980     677581   1025731

The most informative statistics are displayed in the first block. You can see here that the garbage collection mechanism ran 110 times, and in total, more than 2 million memory allocations were freed during those 110 runs. As soon as the garbage collection mechanism has run at least one time, the "Root buffer peak" is always 10000.

Conclusion

In general the garbage collector in PHP will only cause a slowdown when the cycle collecting algorithm actually runs, whereas in normal (smaller) scripts there should be no performance hit at all.

However, in the cases where the cycle collection mechanism does run for normal scripts, the memory reduction it will provide allows more of those scripts to run concurrently on your server, since not so much memory is used in total.

The benefits are most apparent for longer-running scripts, such as lengthy test suites or daemon scripts. Also, for » PHP-GTK applications that generally tend to run longer than scripts for the Web, the new mechanism should make quite a bit of a difference regarding memory leaks creeping in over time.

Collecting Cycles
Referência das Funções
Garbage Collection


Referência das Funções

Dica

Veja também Categorização/Lista das Extensões.

  • Afetando o comportamento do PHP
    • APC — Alternative PHP Cache
    • APD — Advanced PHP debugger
    • bcompiler — Compilador de PHP bytecode
    • Manuseamento de Erro — Erros e Logs
    • htscanner — htaccess-like support for all SAPIs
    • inclued — Inclusion hierarchy viewer
    • Opções/Info do PHP — Informações e Opções do PHP
    • Memtrack
    • Object overloading — Object property and method call overloading
    • Controle de Saída — Controle de Saída de Buffer
    • runkit
    • scream — Break the silence operator
    • WinCache — Windows Cache for PHP
  • Manipulação de Formatos de Audio
    • ID3 — ID3 Tags
    • KTaglib
    • oggvorbis — OGG/Vorbis
    • OpenAL — OpenAL Audio Bindings
  • Serviços de Autenticação
    • KADM5 — Kerberos V
    • Radius
  • Extensões Relacionadas a Calendário e Evento
    • Calendário
    • Data/Hora — Data e Hora
  • Extensões Específica para Linha de Comando
    • Newt
    • Ncurses — Ncurses Terminal Screen Control
    • Readline — GNU Readline
  • Extensões de Compressão e Arquivo
    • Bzip2
    • LZF
    • Phar
    • Rar — Rar Archiving
    • Zip
    • Zlib — Compressão Zlib
  • Processamento de Cartão de Crédito
    • MCVE — MCVE (Monetra) Payment
    • SPPLUS — SPPLUS Payment System
  • Extensões para Criptografia
    • Crack
    • Hash — HASH Message Digest Framework
    • Mcrypt
    • Mhash
    • OpenSSL
  • Extensões de Banco de Dados
    • Camadas de Abstração
    • Vendor Specific Database Extensions
  • Extensões Relacionadas a Sistema de Arquivo
    • Direct IO
    • Diretórios
    • Fileinfo — File Information
    • Filesystem
    • Inotify
    • Mimetype
    • xattr
    • xdiff
  • Linguagem Humana e Suporte a Codificação de Caracteres
    • Enchant — Enchant spelling library
    • FriBiDi
    • Gettext
    • iconv
    • intl — Internationalization Functions
    • Multibyte String
    • Pspell
    • Recode — GNU Recode
  • Processamento de Imagem e Geração
    • Exif — Exchangeable image information
    • GD — Processamento de Imagem (GD)
    • ImageMagick — Image Processing (ImageMagick)
    • Gmagick
    • Cairo
  • Extensões Relacionadas a Mail
    • Cyrus — AdministraÃ§Ã£o de Cyrus IMAP
    • IMAP — IMAP, POP3 and NNTP
    • Mail
    • Mailparse
    • vpopmail
  • Extensões Matemáticas
    • BC Math — BCMath Funções Matemáticas de Precisão Arbitrária
    • GMP — GNU Multiple Precision
    • Math — Funções Matemáticas
    • Statistics
  • Saída de MIME Não-Texto
    • FDF — Forms Data Format
    • GnuPG — GNU Privacy Guard
    • haru — Haru PDF
    • Ming — Ming (flash)
    • PDF
    • PS — PostScript document creation
    • RPM Reader — RPM Header Reading
    • SWF — Shockwave Flash
  • Extensões para Controle de Processo
    • Execução de programa — Execução de programa do sistema
    • Expect
    • Libevent
    • PCNTL — Process Control
    • POSIX
    • Semaphore — Semaphore, Shared Memory and IPC
    • Memória Compartilhada
  • Outras Básicas Extensões
    • GeoIP — Geo IP Location
    • Judy — Judy Arrays
    • JSON — JavaScript Object Notation
    • Misc. — Funções Miscelâneas
    • Parsekit
    • SPL — Standard PHP Library (SPL)
    • SPL Types — SPL Type Handling
    • Streams
    • Tidy
    • Tokenizer
    • URLs
    • V8js — V8 Javascript Engine Integration
    • Yaml — YAML Data Serialization
  • Outros Serviços
    • AMQP
    • chdb — Constant hash database
    • cURL — Cliente da URL Library
    • FAM — File Alteration Monitor
    • FTP
    • Gupnp
    • Hyperwave
    • Hyperwave API
    • HTTP
    • Java — PHP / IntegraÃ§Ã£o com Java
    • LDAP — Lightweight Directory Access Protocol
    • Lotus Notes
    • Memcache
    • Memcached
    • Gearman
    • mqseries
    • Gopher — Net Gopher
    • Network
    • RRD — RRDtool
    • SAM — Simple Asynchronous Messaging
    • SNMP
    • Sockets
    • SSH2 — Secure Shell2
    • Stomp — Stomp Client
    • SVN — Subversion
    • TCP — TCP Wrappers
    • YAZ
    • YP/NIS
  • Extensões de Search Engine
    • mnoGoSearch
    • Sphinx — Sphinx Client
    • Swish — Swish Indexing
    • Solr — Apache Solr
  • Extensões Específicas para Servidor
    • Apache
    • IIS — IIS Administration
    • NSAPI
  • Extensões de Sessão
    • Msession — Mohawk Software Session Handler Functions
    • Sessões — Manipulação de Sessão
    • Session PgSQL — PostgreSQL Session Save Handler
  • Processamento de Texto
    • BBCode — Bulletin Board Code
    • PCRE — Expressões Regulares (Compatíveis com Perl)
    • POSIX Regex — Expressão Regular (POSIX Extended)
    • ssdeep — ssdeep Fuzzy Hashing
    • Strings
  • Variável e Extensões Relacionadas aos Tipos
    • Arrays
    • Classes/Objetos — Informação de Classe/Objeto
    • Classkit
    • Ctype — Funções pra verificação de tipo de caractere
    • Filter — Filtragem de Dados
    • Funções para Manuseamento de Funções
    • Object Aggregation — Object Aggregation/Composition [PHP 4]
    • Reflection
    • Manipulação de variável
  • Web Services
    • OAuth
    • SCA
    • SOAP
    • XML-RPC
  • Extensões Somente para Windows
    • .NET
    • COM — COM and .Net (Windows)
    • Printer
    • W32api
    • win32ps
    • win32service
  • Manipulação de XML
    • DOM — Document Object Model
    • DOM XML
    • libxml
    • qtdom
    • SDO — Service Data Objects
    • SDO-DAS-Relational — SDO Relational Data Access Service
    • SDO DAS XML — SDO XML Data Access Service
    • SimpleXML
    • WDDX
    • XML Parser
    • XMLReader
    • XMLWriter
    • XSL
    • XSLT (PHP4)
Performance Considerations
Afetando o comportamento do PHP
Manual do PHP


Afetando o comportamento do PHP

  • APC — Alternative PHP Cache
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • APC Funções
  • APD — Advanced PHP debugger
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • APD Funções
  • bcompiler — Compilador de PHP bytecode
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • bcompiler Funções
  • Manuseamento de Erro — Erros e Logs
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Manuseamento de Erros
  • htscanner — htaccess-like support for all SAPIs
    • Introdução
    • Instalação/Configuração
  • inclued — Inclusion hierarchy viewer
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • inclued Funções
  • Opções/Info do PHP — Informações e Opções do PHP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Opções/Info do PHP
  • Memtrack
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
  • Object overloading — Object property and method call overloading
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para sobrecarga de Objeto
  • Controle de Saída — Controle de Saída de Buffer
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Control de Saída
  • runkit
    • Introdução
    • Constantes pré-definidas
    • Instalação/Configuração
    • runkit Funções
  • scream — Break the silence operator
    • Introdução
    • Instalação/Configuração
    • Exemplos
  • WinCache — Windows Cache for PHP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • WinCache Funções
    • Building for Windows
Referência das Funções
APC
Referência das Funções


Alternative PHP Cache

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • APC Funções
    • apc_add — Cache a variable in the data store
    • apc_bin_dump — Get a binary dump of the given files and user variables
    • apc_bin_dumpfile — Output a binary dump of cached files and user variables to a file
    • apc_bin_load — Load a binary dump into the APC file/user cache
    • apc_bin_loadfile — Load a binary dump from a file into the APC file/user cache
    • apc_cache_info — Retorna informação guardada (e meta-dados) de registros do APC
    • apc_cas — Updates an old value with a new value
    • apc_clear_cache — Limpa o cache do APC.
    • apc_compile_file — Stores a file in the bytecode cache, bypassing all filters.
    • apc_dec — Decrease a stored number
    • apc_define_constants — Define um conjunto de constantes para recuperação e definição em massa
    • apc_delete_file — Deletes files from the opcode cache
    • apc_delete — Remove uma variável guardado no cache.
    • apc_exists — Checks if APC key exists
    • apc_fetch — Retorna uma variável guardado do cache
    • apc_inc — Increase a stored number
    • apc_load_constants — Carrega um conjunto de constantes do cache
    • apc_sma_info — Retorna informação sobre Alocação de Memória Compartilhada do APC.
    • apc_store — Guarda uma variável no cache
Afetando o comportamento do PHP
Introdução
Afetando o comportamento do PHP


Introdução

O Cache Alternativo do PHP (APC) é um cache livre e aberto para o PHP. Foi desenvolvido para prover um framework livre, aberto e robusto para cache e otimização do código intermediário do PHP.

APC
Instalação/Configuração
APC


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
APC


Dependências

Nenhuma biblioteca externa é necessária para compilar esta extensão.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/apc.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota: No Windows, APC necessita que um diretório temporário exista, e o web server possa escrever. Ele verifica as variáveis de ambiente TMP, TEMP, USERPROFILE nessa ordem e, no final, tenta o diretório WINDOWS se nenhum deles estiver configurado.

Nota: Para detalhes de implementação mais aprofundados, veja o » arquivo de notas técnicas fornecida pelo desenvolvedor .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Embora as configurações padrões do APC são suficientes para muitas instalações, usuários sérios devem considerar alterar os seguintes parâmetros.

São duas decisões principais que você deve fazer. A primeira, a quantidade de memória compartilhada que você quer alocar para o APC, e a segunda, se você quer que o APC verifique se um arquivo foi modificado em cada requisição. As duas diretivas do arquivo php.ini envolvidas aqui são apc.shm_size e apc.stat. Leia as seções sobre essas duas diretivas com muita atenção.

Uma vez que você tiver um servidor operando, você deve copiar o script apc.php que vem com a extensão para algum lugar no seu DocumentRoot e carregue-o no seu navegador. Ele fornece uma visão detalhada sobre o que está acontecendo com o cache. Se você tiver a extensão GD habilitada no PHP, ele até gerará gráficos bonitinhos. Primeira coisa a ser verificada é se ele está de fato cacheando arquivos. Presumindo que está funcionando, você deve prestar atenção para o número Cache full count na esquerda. Isso te diz o número de vezes que o cache foi preenchido e precisou limpar à força todas as entradas que não foram acessados nos últimos segundos. O tempo varia dependendo da diretiva apc.ttl. Você deve configurar seu cache para minimizar esse número. Se você estiver com o cache cheio constantemente, o resultado disso afetará a performance. Você deve ou alocar mais memória para o APC ou usar os filtros (apc.filters) para cachear menos scripts.

Opções de Configuração de APC
Nome | Valor Padrão | Alterável | Changelog
apc.enabled | "1" | PHP_INI_SYSTEM | PHP_INI_SYSTEM no APC 2. PHP_INI_ALL no APC <= 3.0.12.
apc.shm_segments | "1" | PHP_INI_SYSTEM |
apc.shm_size | "30" | PHP_INI_SYSTEM |
apc.optimization | "0" | PHP_INI_ALL | PHP_INI_SYSTEM no APC 2. Removido no APC 3.0.13.
apc.num_files_hint | "1000" | PHP_INI_SYSTEM |
apc.user_entries_hint | "4096" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.ttl | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.user_ttl | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.gc_ttl | "3600" | PHP_INI_SYSTEM |
apc.cache_by_default | "1" | PHP_INI_ALL | PHP_INI_SYSTEM no APC <= 3.0.12p. Disponível desde o APC 3.0.0.
apc.filters | NULL | PHP_INI_SYSTEM |
apc.mmap_file_mask | NULL | PHP_INI_SYSTEM |
apc.slam_defense | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.file_update_protection | "2" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.6.
apc.enable_cli | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.7.
apc.max_file_size | "1M" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.7.
apc.stat | "1" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.10.
apc.write_lock | "1" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.11.
apc.report_autofilter | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.11.
apc.include_once_override | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.12.
apc.rfc1867 | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.13.
apc.rfc1867_prefix | "upload_" | PHP_INI_SYSTEM |
apc.rfc1867_name | "APC_UPLOAD_PROGRESS" | PHP_INI_SYSTEM |
apc.rfc1867_freq | "0" | PHP_INI_SYSTEM |
apc.localcache | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.14.
apc.localcache.size | "512" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.14.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

apc.enabled boolean

apc.enabled pode ser configurado para 0 para desabilitar APC. Isso é primeiramente útil quando APC for compilado estaticamente no PHP, já que não existe outra maneira de desabilitá-lo (quando compilado como um DSO, a linha extension do arquivo php.ini pode ser comentada).

apc.shm_segments integer

O número de segmentos de memória compartilhada para alocar para o cache do compilador. Se APC estiver ficando sem memória compartilhada mas você já configurou apc.shm_size para o valor mais alto que seu sistema permite, tente aumentar esse valor.

apc.shm_size integer

O tamanho de cada segmento de memória compartilhado em MB. Por padrão, alguns sistemas (incluindo a maioria dos BSDs) tem limites muito baixos no tamanho de um segmento de memória compartilhada.

apc.optimization integer

O nível de otimização. Zero disabilita o otimizador, e valores mais algos usam otimizações mais agressivas. Espere melhoras muito modestas de velocidade. Isso é experimental.

apc.num_files_hint integer

Uma "dica" sobra o número de arquivos-fonte distintos serão incluídos ou requisitados no seu servidor web. Configura para zero ou omita o valor se não tiver certeza; Essa configuração é útil principalmente para sites que tem milhares de arquivos-fonte.

apc.user_entries_hint integer

Assim como apc.num_files_hint, dá uma "dica" sobre o número de variáveis de usuários distintos são armazenados. Dê o valor zero ou omit se não tiver certeza.

apc.ttl integer

O número de segundos que uma entrada no cache é permitida a ficar ociosa em uma posição, caso essa posição for necessária para outra entrada. Deixando o valor zero significa que o cache pode potencialmente encher de entradas paradas enquanto novas entradas não serão guardadas.

apc.user_ttl integer

O número de segundos que uma entrada de cache do usuário fica ociosa em cache se a posição que ele está ocupando for necessária. Atribuir zero significa que seu cache pode, potencialmente, ficar cheio de entradas não usadas enquanto novas entradas não serão guardadas.

apc.gc_ttl integer

O número de segundos que uma entrada do cache pode ficar na lista do coletor de lixo (garbage-collection). Esse valor prove uma segurança caso um processo do servidor morra enquanto executando um arquivo-fonte cacheado; Se o arquivo-fonte for modificado, a memória alocada para a versão antiga não será reclamada até que TTL seja alcançado. Configure para zero para desabilitar essa funcionalidade.

apc.cache_by_default boolean

Ligado por padrão, mas pode ser desligado e usado em conjunto com apc.filters positivos para que arquivos só sejam guardados se validados por um filtro positivo.

apc.filters string

Uma lista separada por vírgulas de expressões regulares extendidas POSIX. Se qualquer padrão bater com o nome do arquivo-fonte, o arquivo não será guardado. Perceba que o nome de arquivo usado para comparação é o que é passado para a include/require, não o caminho absoluto. Se o primeiro caracter da expressão é um +, então a expressão será aditiva no sentido que quaisquer arquivos que baterem com a expressão serão guardados, e se o primeiro caracter for -, então qualquer arquivo que não bater com o padrão não será guardado. O caso - é o padrão, então pode ser deixado de fora.

apc.mmap_file_mask string

Se compilado com suporte à MMAP usando --enable-mmap essa é a máscara de arquivo em estilo mktemp a ser passada para o módulo mmap para determinar se sua região mapeada de memória será guardada em arquivo ou memória compartilhada. Para guardar em arquivo, configure para um valor como /tmp/apc.XXXXXX (exatamente 6 Xs). Para usar shm_open/mmap no estilo POSIX ponha um .shm em algum lugar da sua máscara. Por exemplo, /apc.shm.XXXXXX Você também pode configura para /dev/zero usar a interface /dev/zero do kernel para memória mapeada de forma anônima. Deixar em branco forçará mapeamento anônimo.

apc.slam_defense integer

Em servidores muito ocupados sempre que você inicializar o servidor ou modificar arquivos, você pode criar uma "race condition" de muitos processos todos tentando guardar o mesmo arquivo ao mesmo tempo. Essa opção configura a percentagem de processos que não tentarão guardar um arquivo que ainda não esteja no cache. Ou pense como sendo a probabilidade de um único processo não guardar o arquivo. Por exemplo, configurar apc.slam_defense para 75 significaria que existe uma chance de 75% que o processo não guardará um arquivo em cache. Então, quanto maior o valor, maior a defesa contra uma "race condition". Configurando isso para 0 desabilita essa funcionalidade.

Obsoleto por apc.write_lock.

apc.file_update_protection integer

Quando você modifica um arquivo em um servidor web, você realmente devia fazê-lo de uma maneira atômica. Isso é, escreva para um arquivo temporário e renomeie o arquivo (mv) para sua posição permanente quando estiver pronto. Muito editores de texto, cp, tar e outros programas não fazem isso. Isso significa que existe uma chance de que um arquivo é acessado (e guardado em cache) enquanto ele ainda está sendo escrito. Essa configuração apc.file_update_protection coloca um atraso ao fazer o cache de arquivos recém-criados. O valor padrão é 2 segundos, o que significa que se o horário de modificação do arquivo (mtime) tiver menos do que 2 segundos de diferença do tempo atual, ele não será guarado. O infeliz que acessar esse arquivo incompleto ainda verá coisas estranhas, mas pelo menos não persistirá. Se você tiver certeza que você sempre atualiza seus arquivos atomicamente usando algo como rsync que faz isso corretamente, você pode desligar essa proteção ao atribuir o valor de 0. Se você tiver um sistema que é carregado com IO, csuando algum procedimento de atualização que leva mais do que dois segundos, você pode querer aumentar esse valor um pouco.

apc.enable_cli integer

Principalmente para teste e depuração. Ligando essa diretiva habilita o APC para a versão CLI do PHP. Normalmente você não iria querer criar, popular e destrui o cache do APC a cada requisição CLI, mas em vários cenários de teste isso é muito útil ser capaz de habilitar APC para a versão CLI facilmente.

apc.max_file_size integer

Previne que arquivos maiores que esse valor sejam cacheados. O padrão é 1M.

apc.stat integer

Tenha cuidado ao mudar essa configuração. O padrão para ela é On (ligado) o que significa que APC verificará o script em cada requisição para certificar-se que ele não foi modificado. Se ele foi modificado, ele recompilará e cacheará a nova versão. Se você desligar essa configuração, essa verificação não será feita. Isso significa que para que mudanças sejam ativadas, você precisará reiniciar o seu servidor web. Em um servidor de produção, onde você raramente modifica o código, desligar essa configuração pode significar um aumento de performance.

Essa opção aplica-se também para arquivos requeridos ou incluídos, mas perceba que se você estiver usando caminhos relativos para os includes (qualquer caminho que não começa com / no Unix ), o APC precisa chegar para indentificar univocamente o arquivo. Se você usar o caminho absoluto, o APC pode pular o teste e usar o caminho absoluto como identificador único do arquivo.

apc.write_lock boolean

Em servidores muito ocupados, quando você inicializa o servidor, ou quando muitos arquivos são modificados, você pode acabar com todos os processos tentando compilar e cachear os mesmos arquivos. Com write_lock habilitado, apenas um processo por vez tentará compilar um script não cacheado enquanto os outros processos executarão sem cache, ao invés de esperar por sua vez para poder escrever o arquivo.

apc.report_autofilter boolean

Registra qualquer script que são excluídos automaticamente do cache por problemas de binding prévio ou tardio.

apc.include_once_override boolean

Otimiza chamadas à include_once() e require_once() e evita o custo das chamadas de sistema usadas.

apc.rfc1867 boolean

RFC1867 File Upload Progress só está disponível se você compilou o APC com o PHP 5.2.0 ou posterior. Quando habilitado, qualquer upload de arquivo que inclui um campo chamado APC_UPLOAD_PROGRESS antes do campo arquivo em um formulário de upload fará com que o APC crie uma entrada no cache upload_key onde key é o valor da entrada APC_UPLOAD_PROGRESS do formulário.

Perceba que o rastrear uploads de arquivos não é threadsafe até agora, então novos uploads que acontecem enquanto um anterior ainda está sendo executado desabilitará o rastreamento do anterior.

Exemplo #1 An apc.rfc1867 example

<?php
print_r(apc_fetch("upload_$_POST[APC_UPLOAD_PROGRESS]"));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [total] => 1142543
    [current] => 1142543
    [rate] => 1828068.8
    [filename] => test
    [name] => file
    [temp_filename] => /tmp/php8F
    [cancel_upload] => 0
    [done] => 1
)

apc.rfc1867_prefix string

Chave do prefixo para usar por entrada de cache do usuário gerado pela funcionalidade de progresso de upload rfc1867.

apc.rfc1867_name string

Especifica o escondido nome de entrada de formulário que ativa o progresso de upload do APC e especifica o sufixo da chave de cache do usuário.

apc.rfc1867_freq string

A freqüência de atualização que deve ser feita para a entrada de cache do usuário para o progresso do upload. Isto pode ser obtido do formulário de uma porcentagem do total do tamanho do arquivo em bytes opcionalmente sufixado com 'k', 'm', ou 'g' por kilobytes, megabytes, ou gigabytes respectivamente (case insensitive). Definindo para 0 atualizações serão feitas sempre que possível, que pode causar lentidão no upload.

apc.localcache boolean

Isso permite um shadow-cache sem lock no processo local que reduz contenção de locks quando o cache está sendo escrito.

apc.localcache.size integer

O tamanho do shadow-cache do processo local, deve ser um valor suficientemente grande, aproximadamente metade de apc.num_files_hint.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
APC Funções
APC


APC Funções

Índice

  • apc_add — Cache a variable in the data store
  • apc_bin_dump — Get a binary dump of the given files and user variables
  • apc_bin_dumpfile — Output a binary dump of cached files and user variables to a file
  • apc_bin_load — Load a binary dump into the APC file/user cache
  • apc_bin_loadfile — Load a binary dump from a file into the APC file/user cache
  • apc_cache_info — Retorna informação guardada (e meta-dados) de registros do APC
  • apc_cas — Updates an old value with a new value
  • apc_clear_cache — Limpa o cache do APC.
  • apc_compile_file — Stores a file in the bytecode cache, bypassing all filters.
  • apc_dec — Decrease a stored number
  • apc_define_constants — Define um conjunto de constantes para recuperação e definição em massa
  • apc_delete_file — Deletes files from the opcode cache
  • apc_delete — Remove uma variável guardado no cache.
  • apc_exists — Checks if APC key exists
  • apc_fetch — Retorna uma variável guardado do cache
  • apc_inc — Increase a stored number
  • apc_load_constants — Carrega um conjunto de constantes do cache
  • apc_sma_info — Retorna informação sobre Alocação de Memória Compartilhada do APC.
  • apc_store — Guarda uma variável no cache
Constantes pré-definidas
apc_add
APC


Cache a variable in the data store

APC Funções
apc_bin_dump
APC Funções
PHP Manual

apc_add

(PECL apc >= 3.0.13)

apc_add — Cache a variable in the data store

Descrição

bool apc_add ( string $key [, mixed $var [, int $ttl = 0 ]] )
array apc_add ( array $values [, mixed $unused [, int $ttl = 0 ]] )

Caches a variable in the data store, only if it's not already stored.

Nota: Unlike many other mechanisms in PHP, variables stored using apc_add() will persist between requests (until the value is removed from the cache).

Parâmetros

key

Store the variable using this name. keys are cache-unique, so attempting to use apc_add() to store data with a key that already exists will not overwrite the existing data, and will instead return FALSE. (This is the only difference between apc_add() and apc_store().)

var

The variable to store

ttl

Time To Live; store var in the cache for ttl seconds. After the ttl has passed, the stored variable will be expunged from the cache (on the next request). If no ttl is supplied (or if the ttl is 0), the value will persist until it is removed from the cache manually, or otherwise fails to exist in the cache (clear, restart, etc.).

values

Names in key, variables in value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Second syntax returns array with error keys.

Exemplos

Exemplo #1 A apc_add() example

<?php
$bar = 'BAR';
apc_add('foo', $bar);
var_dump(apc_fetch('foo'));
echo "\n";
$bar = 'NEVER GETS SET';
apc_add('foo', $bar);
var_dump(apc_fetch('foo'));
echo "\n";
?>

O exemplo acima irá imprimir:

string(3) "BAR"
string(3) "BAR"

Veja Também

  • apc_store() - Guarda uma variável no cache
  • apc_fetch() - Retorna uma variável guardado do cache
  • apc_delete() - Remove uma variável guardado no cache.

APC Funções
apc_bin_dump
APC Funções


Get a binary dump of the given files and user variables

apc_add
apc_bin_dumpfile
APC Funções
PHP Manual

apc_bin_dump

(PECL apc >= 3.1.4)

apc_bin_dump — Get a binary dump of the given files and user variables

Descrição

string apc_bin_dump ([ array $files [, array $user_vars ]] )

Returns a binary dump of the given files and user variables from the APC cache. A NULL for files or user_vars signals a dump of every entry, whereas array() will dump nothing.

Parâmetros

files

The files. Passing in NULL signals a dump of every entry, while passing in array() will dump nothing.

user_vars

The user vars. Passing in NULL signals a dump of every entry, while passing in array() will dump nothing.

Valor Retornado

Returns a binary dump of the given files and user variables from the APC cache, FALSE if APC is not enabled, or NULL if an unknown error is encountered.

Veja Também

  • apc_bin_dumpfile() - Output a binary dump of cached files and user variables to a file
  • apc_bin_load() - Load a binary dump into the APC file/user cache
apc_add
apc_bin_dumpfile
APC Funções


Output a binary dump of cached files and user variables to a file

apc_bin_dump
apc_bin_load
APC Funções
PHP Manual

apc_bin_dumpfile

(PECL apc >= 3.1.4)

apc_bin_dumpfile — Output a binary dump of cached files and user variables to a file

Descrição

int apc_bin_dumpfile ( array $files , array $user_vars , string $filename [, int $flags = 0 [, resource $context ]] )

Outputs a binary dump of the given files and user variables from the APC cache to the named file.

Parâmetros

files

The file names being dumped.

user_vars

The user variables being dumped.

filename

The filename where the dump is being saved.

flags

Flags passed to the filename stream. See the file_put_contents() documentation for details.

context

The context passed to the filename stream. See the file_put_contents() documentation for details.

Valor Retornado

The number of bytes written to the file, otherwise FALSE if APC is not enabled, filename is an invalid file name, filename can't be opened, the file dump can't be completed (e.g., the hard drive is out of disk space), or an unknown error was encountered.

Veja Também

  • apc_bin_dump() - Get a binary dump of the given files and user variables
  • apc_bin_load() - Load a binary dump into the APC file/user cache
apc_bin_dump
apc_bin_load
APC Funções


Load a binary dump into the APC file/user cache

apc_bin_dumpfile
apc_bin_loadfile
APC Funções
PHP Manual

apc_bin_load

(PECL apc >= 3.1.4)

apc_bin_load — Load a binary dump into the APC file/user cache

Descrição

bool apc_bin_load ( string $data [, int $flags = 0 ] )

Loads the given binary dump into the APC file/user cache.

Parâmetros

data

The binary dump being loaded, likely from apc_bin_dump().

flags

Either APC_BIN_VERIFY_CRC32, APC_BIN_VERIFY_MD5, or both.

Valor Retornado

Returns TRUE if the binary dump data was loaded with success, otherwise FALSE is returned. FALSE is returned if APC is not enabled, or if the data is not a valid APC binary dump (e.g., unexpected size).

Exemplos

Exemplo #1 apc_bin_load() example

<?php
$data = apc_bin_dump(NULL, NULL);
apc_bin_load($data, APC_BIN_VERIFY_MD5 | APC_BIN_VERIFY_CRC32);
?>

Veja Também

  • apc_bin_dump() - Get a binary dump of the given files and user variables
  • apc_bin_loadfile() - Load a binary dump from a file into the APC file/user cache
apc_bin_dumpfile
apc_bin_loadfile
APC Funções


Load a binary dump from a file into the APC file/user cache

apc_bin_load
apc_cache_info
APC Funções
PHP Manual

apc_bin_loadfile

(PECL apc >= 3.1.4)

apc_bin_loadfile — Load a binary dump from a file into the APC file/user cache

Descrição

bool apc_bin_loadfile ( string $filename [, resource $context [, int $flags ]] )

Loads a binary dump from a file into the APC file/user cache.

Parâmetros

filename

The file name containing the dump, likely from apc_bin_dumpfile().

context

The files context.

flags

Either APC_BIN_VERIFY_CRC32, APC_BIN_VERIFY_MD5, or both.

Valor Retornado

Returns TRUE on success, otherwise FALSE Reasons it may return FALSE include APC is not enabled, filename is an invalid file name or empty, filename can't be opened, the file dump can't be completed, or if the data is not a valid APC binary dump (e.g., unexpected size).

Veja Também

  • apc_bin_dumpfile() - Output a binary dump of cached files and user variables to a file
  • apc_bin_load() - Load a binary dump into the APC file/user cache
apc_bin_load
apc_cache_info
APC Funções


Retorna informação guardada (e meta-dados) de registros do APC

apc_bin_loadfile
apc_cas
APC Funções
PHP Manual

apc_cache_info

(PECL apc >= 2.0.0)

apc_cache_info — Retorna informação guardada (e meta-dados) de registros do APC

Descrição

array apc_cache_info ([ string $cache_type [, bool $limited ]] )

Recupera informação do cache e meta-data de dados armazenado do APC.

Valor Retornado

Array de dados guardados (e meta-dados), ou FALSE em caso de falha

Nota: apc_cache_info() lançará um aviso se for incapaz de retorna os dados guardados. Isso tipicamente acontece quando APC não estiver habilitado.

Parâmetros

cache_type

Se cache_type for "user", informações sobre o cache do usuário será retornado.

Se cache_type é "filehits", informação sobre quais arquivos estão sendo servidos do cache de bytecode para a requisição atual será retornada. Este recurso precisa ser habilitado na compilação usando --enable-filehits .

Se cache_type é inválido ou não é especificado, informação sobre o sistema de cache (arquivos em cache) será retornada.

limited

Se limited tiver valor TRUE, o valor retornado excluirá a lista individual de entradas do cache. Isso é útil quando estiver tentando otimizar chamadas para obter estatísiticas.

Histórico

Versão | Descrição
3.0.11 | O parâmetro limited foi introduzido.
3.0.16 | A opção "filehits" para o parâmetro cache_type foi introduzida.

Exemplos

Exemplo #1 Um exemplo de apc_cache_info()

<?php
print_r(apc_cache_info());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [num_slots] => 2000
    [ttl] => 0
    [num_hits] => 9
    [num_misses] => 3
    [start_time] => 1123958803
    [cache_list] => Array
        (
            [0] => Array
                (
                    [filename] => /path/to/apc_test.php
                    [device] => 29954
                    [inode] => 1130511
                    [type] => file
                    [num_hits] => 1
                    [mtime] => 1123960686
                    [creation_time] => 1123960696
                    [deletion_time] => 0
                    [access_time] => 1123962864
                    [ref_count] => 1
                    [mem_size] => 677
                )
            [1] => Array (...iterates for each cached file)
)

Veja Também

  • Diretivas de configuração do APC

apc_bin_loadfile
apc_cas
APC Funções


Updates an old value with a new value

apc_cache_info
apc_clear_cache
APC Funções
PHP Manual

apc_cas

(PECL apc >= 3.1.1)

apc_cas — Updates an old value with a new value

Descrição

bool apc_cas ( string $key , int $old , int $new )

apc_cas() updates an already existing integer value if the old parameter matches the currently stored value with the value of the new parameter.

Parâmetros

key

The key of the value being updated.

old

The old value (the value currently stored).

new

The new value to update to.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 apc_cas() example

<?php
apc_store('foobar', 2);
echo '$foobar = 2', PHP_EOL;
echo '$foobar == 1 ? 2 : 1 = ', (apc_cas('foobar', 1, 2) ? 'ok' : 'fail'), PHP_EOL;
echo '$foobar == 2 ? 1 : 2 = ', (apc_cas('foobar', 2, 1) ? 'ok' : 'fail'), PHP_EOL;

echo '$foobar = ', apc_fetch('foobar'), PHP_EOL;

echo '$f__bar == 1 ? 2 : 1 = ', (apc_cas('f__bar', 1, 2) ? 'ok' : 'fail'), PHP_EOL;

apc_store('perfection', 'xyz');
echo '$perfection == 2 ? 1 : 2 = ', (apc_cas('perfection', 2, 1) ? 'ok' : 'epic fail'), PHP_EOL;

echo '$foobar = ', apc_fetch('foobar'), PHP_EOL;
?>

O exemplo acima irá imprimir algo similar a:

$foobar = 2
$foobar == 1 ? 2 : 1 = fail
$foobar == 2 ? 1 : 2 = ok
$foobar = 1
$f__bar == 1 ? 2 : 1 = fail
$perfection == 2 ? 1 : 2 = epic fail
$foobar = 1

Veja Também

  • apc_dec() - Decrease a stored number
  • apc_store() - Guarda uma variável no cache
apc_cache_info
apc_clear_cache
APC Funções


Limpa o cache do APC.

apc_cas
apc_compile_file
APC Funções
PHP Manual

apc_clear_cache

(PECL apc >= 2.0.0)

apc_clear_cache — Limpa o cache do APC.

Descrição

bool apc_clear_cache ([ string $cache_type ] )

Limpa o cache do usuário/sistema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Parâmetros

cache_type

Se cache_type for "user", o cache do usuário será limpado; caso contrário, o sistema de cache (arquivos cacheados) será limpo.

Veja Também

  • apc_cache_info() - Retorna informação guardada (e meta-dados) de registros do APC

apc_cas
apc_compile_file
APC Funções


Stores a file in the bytecode cache, bypassing all filters.

apc_clear_cache
apc_dec
APC Funções
PHP Manual

apc_compile_file

(PECL apc >= 3.0.13)

apc_compile_file — Stores a file in the bytecode cache, bypassing all filters.

Descrição

mixed apc_compile_file ( string $filename [, bool $atomic = true ] )

Stores a file in the bytecode cache, bypassing all filters.

Parâmetros

filename

Full or relative path to a PHP file that will be compiled and stored in the bytecode cache.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • apc_bin_dumpfile() - Output a binary dump of cached files and user variables to a file
  • apc_bin_loadfile() - Load a binary dump from a file into the APC file/user cache
apc_clear_cache
apc_dec
APC Funções


Decrease a stored number

apc_compile_file
apc_define_constants
APC Funções
PHP Manual

apc_dec

(PECL apc >= 3.1.1)

apc_dec — Decrease a stored number

Descrição

int apc_dec ( string $key [, int $step = 1 [, bool &$success ]] )

Decreases a stored integer value.

Parâmetros

key

The key of the value being decreased.

step

The step, or value to decrease.

success

Optionally pass the success or fail boolean value to this referenced variable.

Valor Retornado

Returns the current value of key's value on success, or FALSE on failure

Exemplos

Exemplo #1 apc_dec() example

<?php
echo "Let's do something with success", PHP_EOL;

apc_store('anumber', 42);

echo apc_fetch('anumber'), PHP_EOL;

echo apc_dec('anumber'), PHP_EOL;
echo apc_dec('anumber', 10), PHP_EOL;
echo apc_dec('anumber', 10, $success), PHP_EOL;

var_dump($success);

echo "Now, let's fail", PHP_EOL, PHP_EOL;

apc_store('astring', 'foo');

$ret = apc_dec('astring', 1, $fail);

var_dump($ret);
var_dump($fail);
?>

O exemplo acima irá imprimir algo similar a:

Let's do something with success
42
41
31
21
bool(true)

Now, let's fail
bool(false)
bool(false)

Veja Também

  • apc_inc() - Increase a stored number
apc_compile_file
apc_define_constants
APC Funções


Define um conjunto de constantes para recuperação e definição em massa

apc_dec
apc_delete_file
APC Funções
PHP Manual

apc_define_constants

(PECL apc >= 3.0.0)

apc_define_constants — Define um conjunto de constantes para recuperação e definição em massa

Descrição

bool apc_define_constants ( string $key , array $constants [, bool $case_sensitive ] )

define() é notoriamente lento. Já que o benefício do APC é aumentar a performance de scripts/aplicações, esse mecanismo é disponibilizado para automatizar o processo de definição de constantes em massa. No entanto, essa função não se desempenha tão bem quanto antecipado.

Para uma solução com melhor performance, tente a extensão » hidef do PECL.

Nota: Para remover um conjunto de constantes guardadas (sem limpar o cache inteiro), um array vazio pode ser passado como parâmetro de constants, efetivamente limpando os valore(s) guardado(s).

Parâmetros

key

A key serve de nome para a constante sendo guardada. Essa key é usada para recuperar as constantes guardadas com apc_load_constants().

constants

Um array associativo de pares constant_name => value. O constant_name deve serguir as regras normais de nomenclatura de constantes. value deve ser um valor escalar (string ou número).

case_sensitive

O comportamento padrão para constantes é ser declarado sensíveis ao caso; ex.: CONSTANT e Constant representam valores diferentes. Se esse parâmetro tem valor FALSE as constantes serão declaradas como símbolos insensíveis ao caso.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de apc_define_constants()

<?php
$constants = array(
    'ONE'   => 1,
    'TWO'   => 2,
    'THREE' => 3,
);
apc_define_constants('numbers', $constants);
echo ONE, TWO, THREE;
?>

O exemplo acima irá imprimir:

123

Veja Também

  • apc_load_constants() - Carrega um conjunto de constantes do cache
  • define() - Define uma constante
  • constant() - Retorna o valor de uma constante
  • Ou a referência de constantes do PHP

apc_dec
apc_delete_file
APC Funções


Deletes files from the opcode cache

apc_define_constants
apc_delete
APC Funções
PHP Manual

apc_delete_file

(PECL apc >= 3.1.1)

apc_delete_file — Deletes files from the opcode cache

Descrição

mixed apc_delete_file ( mixed $keys )

Deletes the given files from the opcode cache.

Parâmetros

keys

The files to be deleted. Accepts a string, array of strings, or an APCIterator object.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Or if keys is an array, then an empty array is returned on success, or an array of failed files is returned.

Exemplos

Exemplo #1 apc_delete_file() example

<?php
$filename = 'file.php';

if (apc_compile_file($filename)) {

    if (apc_delete_file($filename)) {
        echo "Successfully deleted file $filename from APC cache.", PHP_EOL;
    }
}

if (apc_compile_file($filename)) {

    if ($good = apc_delete_file(array($filename, 'donotexist.php'))) {
        var_dump($good);
    }
}

$bad = apc_delete_file('donotexist.php');
var_dump($bad);
?>

O exemplo acima irá imprimir algo similar a:

Successfully deleted file file.php from APC cache.
[Mon May 24 09:30:33 2010] [apc-warning] Could not stat file donotexist.php, unable to delete from cache. in /tmp/test.php on line 13.
array(1) {
  [0]=>
  string(14) "donotexist.php"
}
[Mon May 24 09:30:33 2010] [apc-warning] Could not stat file donotexist.php, unable to delete from cache. in /tmp/test.php on line 18.
bool(false)

Veja Também

  • apc_clear_cache() - Limpa o cache do APC.
  • apc_delete() - Remove uma variável guardado no cache.
  • apc_exists() - Checks if APC key exists
apc_define_constants
apc_delete
APC Funções


Remove uma variável guardado no cache.

apc_delete_file
apc_exists
APC Funções
PHP Manual

apc_delete

(PECL apc >= 3.0.0)

apc_delete — Remove uma variável guardado no cache.

Descrição

bool apc_delete ( string $key )

Remove uma variável armazenada do cache.

Parâmetros

key

A key usada para guardad o valor (com apc_store()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Um exemplo de apc_delete()

<?php
$bar = 'BAR';
apc_store('foo', $bar);
apc_delete('foo');
// Isso é obviamente inútil dessa forma
?>

Veja Também

  • apc_store() - Guarda uma variável no cache
  • apc_fetch() - Retorna uma variável guardado do cache

apc_delete_file
apc_exists
APC Funções


Checks if APC key exists

apc_delete
apc_fetch
APC Funções
PHP Manual

apc_exists

(PECL apc >= 3.1.4)

apc_exists — Checks if APC key exists

Descrição

mixed apc_exists ( mixed $keys )

Checks if one ore more APC keys exist.

Parâmetros

keys

A string, or an array of strings, that contain keys.

Valor Retornado

Returns TRUE if the key exists, otherwise FALSE Or if an array was passed to keys, then an array is returned that contains all existing keys, or an empty array if none exist.

Exemplos

Exemplo #1 apc_exists() example

<?php
$fruit  = 'apple';
$veggie = 'carrot';

apc_store('foo', $fruit);
apc_store('bar', $veggie);

if (apc_exists('foo')) {
    echo "Foo exists: ";
    echo apc_fetch('foo');
} else {
    echo "Foo does not exist";
}

echo PHP_EOL;
if (apc_exists('baz')) {
    echo "Baz exists.";
} else {
    echo "Baz does not exist";
}

echo PHP_EOL;

$ret = apc_exists(array('foo', 'donotexist', 'bar'));
var_dump($ret);

?>

O exemplo acima irá imprimir algo similar a:

Foo exists: apple
Baz does not exist
array(2) {
  ["foo"]=>
  bool(true)
  ["bar"]=>
  bool(true)
}

Veja Também

  • apc_cache_info() - Retorna informação guardada (e meta-dados) de registros do APC
  • apc_fetch() - Retorna uma variável guardado do cache
apc_delete
apc_fetch
APC Funções


Retorna uma variável guardado do cache

apc_exists
apc_inc
APC Funções
PHP Manual

apc_fetch

(PECL apc >= 3.0.0)

apc_fetch — Retorna uma variável guardado do cache

Descrição

mixed apc_fetch ( string $key )

Obtém uma variável armazenada no cache.

Parâmetros

key

A key usada para guardar o valor (com apc_store()).

Valor Retornado

A variável guardada se tiver sucesso; FALSE em caso de falha

Exemplos

Exemplo #1 Um exemplo de apc_fetch()

<?php
$bar = 'BAR';
apc_store('foo', $bar);
var_dump(apc_fetch('foo'));
?>

O exemplo acima irá imprimir:

string(3) "BAR"

Veja Também

  • apc_store() - Guarda uma variável no cache
  • apc_delete() - Remove uma variável guardado no cache.

apc_exists
apc_inc
APC Funções


Increase a stored number

apc_fetch
apc_load_constants
APC Funções
PHP Manual

apc_inc

(PECL apc >= 3.1.1)

apc_inc — Increase a stored number

Descrição

int apc_inc ( string $key [, int $step = 1 [, bool &$success ]] )

Increases a stored number.

Parâmetros

key

The key of the value being increased.

step

The step, or value to increase.

success

Optionally pass the success or fail boolean value to this referenced variable.

Valor Retornado

Returns the current value of key's value on success, or FALSE on failure

Exemplos

Exemplo #1 apc_inc() example

<?php
echo "Let's do something with success", PHP_EOL;

apc_store('anumber', 42);

echo apc_fetch('anumber'), PHP_EOL;

echo apc_inc('anumber'), PHP_EOL;
echo apc_inc('anumber', 10), PHP_EOL;
echo apc_inc('anumber', 10, $success), PHP_EOL;

var_dump($success);

echo "Now, let's fail", PHP_EOL, PHP_EOL;

apc_store('astring', 'foo');

$ret = apc_inc('astring', 1, $fail);

var_dump($ret);
var_dump($fail);
?>

O exemplo acima irá imprimir algo similar a:

42
43
53
63
bool(true)
Now, let's fail

bool(false)
bool(false)

Veja Também

  • apc_dec() - Decrease a stored number
apc_fetch
apc_load_constants
APC Funções


Carrega um conjunto de constantes do cache

apc_inc
apc_sma_info
APC Funções
PHP Manual

apc_load_constants

(PECL apc >= 3.0.0)

apc_load_constants — Carrega um conjunto de constantes do cache

Descrição

bool apc_load_constants ( string $key [, bool $case_sensitive ] )

Carrega um conjunto de constantes do cache.

Parâmetros

key

O nome do conjunto de constantes (que foi guardado com apc_define_constants()) para ser resgatado.

case_sensitive

O comportamento padrão para constantes é serem declaradas sensíveis ao caso; ex.: CONSTANT e Constant representam valores diferentes. Se esse parâmetro tem valor FALSE as constantes serão declaradas como símbolos insensíveis ao caso.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de apc_load_constants()

<?php
$constants = array(
    'ONE'   => 1,
    'TWO'   => 2,
    'THREE' => 3,
);
apc_define_constants('numbers', $constants);
apc_load_constants('numbers');
echo ONE, TWO, THREE;
?>

O exemplo acima irá imprimir:

123

Veja Também

  • apc_define_constants() - Define um conjunto de constantes para recuperação e definição em massa
  • define() - Define uma constante
  • constant() - Retorna o valor de uma constante
  • Ou a referência de constantes do PHP

apc_inc
apc_sma_info
APC Funções


Retorna informação sobre Alocação de Memória Compartilhada do APC.

apc_load_constants
apc_store
APC Funções
PHP Manual

apc_sma_info

(PECL apc >= 2.0.0)

apc_sma_info — Retorna informação sobre Alocação de Memória Compartilhada do APC.

Descrição

array apc_sma_info ([ bool $limited ] )

Recupera informação de alocação de memória compartilhada do APC.

Parâmetros

limited

Quando definido para FALSE (padrão) apc_sma_info() retornará uma informação detalhada sobre cada segmento.

Valor Retornado

Array de dados sobre Alocação de Memória Compartilhada; FALSE em caso de falha.

Exemplos

Exemplo #1 Um exemplo de apc_sma_info()

<?php
print_r(apc_sma_info());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [num_seg] => 1
    [seg_size] => 31457280
    [avail_mem] => 31448408
    [block_lists] => Array
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [size] => 31448408
                            [offset] => 8864
                        )

                )

        )

)

Veja Também

  • Diretivas de configuração do APC

apc_load_constants
apc_store
APC Funções


Guarda uma variável no cache

apc_sma_info
APD
APC Funções
PHP Manual

apc_store

(PECL apc >= 3.0.0)

apc_store — Guarda uma variável no cache

Descrição

bool apc_store ( string $key , mixed $var [, int $ttl ] )

Armazena uma variável no cache.

Nota: Ao contrário de muitos outros mecanismos no PHP, variáveis guardadas usando apc_store() persistirão entre requisições (até que o valor seja removido do cache).

Parâmetros

key

Guarda a variável usando esse nome. keys são únicas para cada cache, então, guardar um segundo valor com a mesma key sobrescreverá o valor original.

var

A variável a ser guardada.

ttl

Tempo de vida; guarda var no cache por ttl segundos. Após ttl ter passado, a variável guardada será removida do cache (na próxima requisição). Se ttl não for passado (ou se ttl for 0), o valor persistirá até ser removido manualmente do cache, ou caso deixe de existir no cache (clear, restart, etc.).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Um exemplo de apc_store()

<?php
$bar = 'BAR';
apc_store('foo', $bar);
var_dump(apc_fetch('foo'));
?>

O exemplo acima irá imprimir:

string(3) "BAR"

Veja Também

  • apc_add() - Cache a variable in the data store
  • apc_fetch() - Retorna uma variável guardado do cache
  • apc_delete() - Remove uma variável guardado no cache.

apc_sma_info
APD
APC Funções


Advanced PHP debugger

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Building on Win32
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • How to use PHP-APD in your scripts
  • APD Funções
    • apd_breakpoint — Stops the interpreter and waits on a CR from the socket
    • apd_callstack — Returns the current call stack as an array
    • apd_clunk — Throw a warning and a callstack
    • apd_continue — Restarts the interpreter
    • apd_croak — Throw an error, a callstack and then exit
    • apd_dump_function_table — Outputs the current function table
    • apd_dump_persistent_resources — Return all persistent resources as an array
    • apd_dump_regular_resources — Return all current regular resources as an array
    • apd_echo — Echo to the debugging socket
    • apd_get_active_symbols — Get an array of the current variables names in the local scope
    • apd_set_pprof_trace — Starts the session debugging
    • apd_set_session_trace_socket — Starts the remote session debugging
    • apd_set_session_trace — Starts the session debugging
    • apd_set_session — Changes or sets the current debugging level
    • override_function — Overrides built-in functions
    • rename_function — Renames orig_name to new_name in the global function table
apc_store
Introdução
Afetando o comportamento do PHP


Introdução

APD is the Advanced PHP Debugger. It was written to provide profiling and debugging capabilities for PHP code, as well as to provide the ability to print out a full stack backtrace. APD supports interactive debugging, but by default it writes data to trace files. It also offers event based logging so that varying levels of information (including function calls, arguments passed, timings, etc.) can be turned on or off for individual scripts.

Cuidado

APD is a Zend Extension, modifying the way the internals of PHP handle function calls, and thus may or may not be compatible with other Zend Extensions (for example Zend Optimizer).

APD
Instalação/Configuração
APD


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Building on Win32
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
APD


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/apd.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

In your INI file, add the following lines:

zend_extension = /absolute/path/to/apd.so
apd.dumpdir = /absolute/path/to/trace/directory
apd.statement_tracing = 0

Depending on your PHP build, the zend_extension directive can be one of the following:

zend_extension              (non ZTS, non debug build)
zend_extension_ts           (    ZTS, non debug build)
zend_extension_debug        (non ZTS,     debug build)
zend_extension_debug_ts     (    ZTS,     debug build)

Dependências
Building on Win32
Instalação/Configuração


Building on Win32

To build APD under Windows you need a working PHP compilation environment as described on http://php.net/ -- basically, it requires you to have Microsoft Visual C++, win32build.zip, bison/flex, and some know how to get it to work. Also ensure that adp.dsp has DOS line endings; if it has unix line endings, Microsoft Visual C++ will complain about it.

Instalação
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

APD Configuration Options
Name | Default | Changeable | Changelog
apd.dumpdir | NULL | PHP_INI_ALL |
apd.statement_tracing | "0" | PHP_INI_ALL | Available since apd 0.9.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

apd.dumpdir string

Sets the directory in which APD writes profile dump files. You can specify an absolute path or a relative path.

You can specify a different directory as an argument to apd_set_pprof_trace().

apd.statement_tracing boolean

Specfies whether or not to do per-line tracings. Turning this on (1) will impact the performance of your application.

Building on Win32
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

APD constants
Constant | Value | Description
FUNCTION_TRACE (integer) | 1 |
ARGS_TRACE (integer) | 2 |
ASSIGNMENT_TRACE (integer) | 4 |
STATEMENT_TRACE (integer) | 8 |
MEMORY_TRACE (integer) | 16 |
TIMING_TRACE (integer) | 32 |
SUMMARY_TRACE (integer) | 64 |
ERROR_TRACE (integer) | 128 |
PROF_TRACE (integer) | 256 |
APD_VERSION (string) | example: 1.0.2-dev |
Tipos Resource
Exemplos
APD


Exemplos

Índice

  • How to use PHP-APD in your scripts
Constantes pré-definidas
How to use PHP-APD in your scripts
APD


How to use PHP-APD in your scripts

  1. As the first line of your PHP script, call the apd_set_pprof_trace() function to start the trace:

    <?php
    apd_set_pprof_trace    ();
    ?>

    You can insert the line anywhere in your script, but if you do not start tracing at the beginning of your script you discard profile data that might otherwise lead you to a performance bottleneck.

  2. Now run your script. The dump output will be written to apd.dumpdir/pprof_pid.ext.

    Dica

    If you're running the CGI version of PHP, you will need to add the '-e' flag to enable extended information for apd to work properly. For example: php -e -f script.php

  3. To display formatted profile data, issue the pprofp command with the sort and display options of your choice. The formatted output will look something like:

    bash-2.05b$ pprofp -R /tmp/pprof.22141.0

Trace for /home/dan/testapd.php
Total Elapsed Time = 0.00
Total System Time  = 0.00
Total User Time    = 0.00

Real         User        System             secs/    cumm
%Time (excl/cumm)  (excl/cumm)  (excl/cumm) Calls    call    s/call  Memory Usage Name
--------------------------------------------------------------------------------------
100.0 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0000   0.0009            0 main
56.9 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0005   0.0005            0 apd_set_pprof_trace
28.0 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 preg_replace
14.3 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 str_replace

    The -R option used in this example sorts the profile table by the amount of real time the script spent executing a given function. The "cumm call" column reveals how many times each function was called, and the "s/call" column reveals how many seconds each call to the function required, on average.

  4. To generate a calltree file that you can import into the KCacheGrind profile analysis application, issue the pprof2calltree comand.

Exemplos
APD Funções
Exemplos


APD Funções

Contact information

If you have comments, bugfixes, enhancements or want to help developing this beast, you can send an mail to » apd@mail.communityconnect.com. Any help is very welcome.

Índice

  • apd_breakpoint — Stops the interpreter and waits on a CR from the socket
  • apd_callstack — Returns the current call stack as an array
  • apd_clunk — Throw a warning and a callstack
  • apd_continue — Restarts the interpreter
  • apd_croak — Throw an error, a callstack and then exit
  • apd_dump_function_table — Outputs the current function table
  • apd_dump_persistent_resources — Return all persistent resources as an array
  • apd_dump_regular_resources — Return all current regular resources as an array
  • apd_echo — Echo to the debugging socket
  • apd_get_active_symbols — Get an array of the current variables names in the local scope
  • apd_set_pprof_trace — Starts the session debugging
  • apd_set_session_trace_socket — Starts the remote session debugging
  • apd_set_session_trace — Starts the session debugging
  • apd_set_session — Changes or sets the current debugging level
  • override_function — Overrides built-in functions
  • rename_function — Renames orig_name to new_name in the global function table
How to use PHP-APD in your scripts
apd_breakpoint
APD


Stops the interpreter and waits on a CR from the socket

APD Funções
apd_callstack
APD Funções
PHP Manual

apd_breakpoint

(PECL apd >= 0.2)

apd_breakpoint — Stops the interpreter and waits on a CR from the socket

Descrição

bool apd_breakpoint ( int $debug_level )

This can be used to stop the running of your script, and await responses on the connected socket. To step the program, just send enter (a blank line), or enter a php command to be executed.

Parâmetros

debug_level

Um interiro que é formado pela adição em conjunto das constantes XXX_TRACE.

Não é recomendado usar MEMORY_TRACE. è muito lenta e não parece ser exata. ASSIGNMENT_TRACE ainda não esta implementada.

Para ativar todos os traços de funções (TIMING, FUNCTIONS, ARGS SUMMARY (como strace -c)) use o valor 99

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Typical session using tcplisten

bash#tcplisten localhost 7777

APD - Advanced PHP Debugger Trace File
---------------------------------------------------------------------------
Process Pid (6118)
Trace Begun at Sun Mar 10 23:13:12 2002
---------------------------------------------------------------------------
(  0.000000): apd_set_session_trace called at /home/alan/Projects/project2/test.
php:5
(  0.074824): apd_set_session_trace_socket() at /home/alan/Projects/project2/tes
t.php:5 returned.  Elapsed (0.074824)
(  0.074918): apd_breakpoint() /home/alan/Projects/project2/test.php:7
              ++ argv[0] $(??) = 9
apd_breakpoint() at /home/alan/Projects/project2/test.php:7 returned.  Elapsed (
-2089521468.1073275368)
>\n
statement: /home/alan/Projects/project2/test.php:8
>\n
statement: /home/alan/Projects/project2/test.php:8
>\n
statement: /home/alan/Projects/project2/test.php:10
>apd_echo($i);
EXEC: apd_echo($i);
0
>apd_echo(serialize(apd_get_active_symbols()));
EXEC:  apd_echo(serialize(apd_get_active_symbols()));
a:47:{i:0;s:4:"PWD";i:1;s:10:"COLORFGBG";i:2;s:11:"XAUTHORITY";i:3;s:14:"
COLORTERM_BCE";i:4;s:9:"WINDOWID";i:5;s:14:"ETERM_VERSION";i:6;s:16:"SE
SSION_MANAGER";i:7;s:4:"PS1";i:8;s:11:"GDMSESSION";i:9;s:5:"USER";i:10;s:5:"
MAIL";i:11;s:7:"OLDPWD";i:12;s:5:"LANG";i:13;s:10:"COLORTERM";i:14;s:8:"DISP
LAY";i:15;s:8:"LOGNAME";i:16;s:6:"
>apd_echo(system('ls /home/mydir'));
........
>apd_continue(0);

APD Funções
apd_callstack
APD Funções


Returns the current call stack as an array

apd_breakpoint
apd_clunk
APD Funções
PHP Manual

apd_callstack

(PECL apd 0.2-0.4)

apd_callstack — Returns the current call stack as an array

Descrição

array apd_callstack ( void )

Returns the current call stack as an array

Valor Retornado

An array containing the current call stack.

Exemplos

Exemplo #1 apd_callstack() example

<?php
print_r(apd_callstack());
?>

apd_breakpoint
apd_clunk
APD Funções


Throw a warning and a callstack

apd_callstack
apd_continue
APD Funções
PHP Manual

apd_clunk

(PECL apd 0.2-0.4)

apd_clunk — Throw a warning and a callstack

Descrição

void apd_clunk ( string $warning [, string $delimiter ] )

Behaves like perl's Carp::cluck. Throw a warning and a callstack.

Parâmetros

warning

The warning to throw.

delimiter

The delimiter. Default to <BR />.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 apd_clunk() example

<?php
apd_clunk("Some Warning", "<br/>");
?>

Veja Também

  • apd_croak() - Throw an error, a callstack and then exit

apd_callstack
apd_continue
APD Funções


Restarts the interpreter

apd_clunk
apd_croak
APD Funções
PHP Manual

apd_continue

(PECL apd >= 0.2)

apd_continue — Restarts the interpreter

Descrição

bool apd_continue ( int $debug_level )

Usually sent via the socket to restart the interpreter.

Parâmetros

debug_level

Um interiro que é formado pela adição em conjunto das constantes XXX_TRACE.

Não é recomendado usar MEMORY_TRACE. è muito lenta e não parece ser exata. ASSIGNMENT_TRACE ainda não esta implementada.

Para ativar todos os traços de funções (TIMING, FUNCTIONS, ARGS SUMMARY (como strace -c)) use o valor 99

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 apd_continue() example

<?php
apd_continue(0);
?>

apd_clunk
apd_croak
APD Funções


Throw an error, a callstack and then exit

apd_continue
apd_dump_function_table
APD Funções
PHP Manual

apd_croak

(PECL apd 0.2-0.4)

apd_croak — Throw an error, a callstack and then exit

Descrição

void apd_croak ( string $warning [, string $delimiter ] )

Behaves like perl's Carp::croak. Throw an error, a callstack and then exit.

Parâmetros

warning

The warning to throw.

delimiter

The delimiter. Default to <BR />.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 apd_croak() example

<?php
apd_croak("Some Warning","<P>");
?>

Veja Também

  • apd_clunk() - Throw a warning and a callstack

apd_continue
apd_dump_function_table
APD Funções


Outputs the current function table

apd_croak
apd_dump_persistent_resources
APD Funções
PHP Manual

apd_dump_function_table

(Unknown)

apd_dump_function_table — Outputs the current function table

Descrição

void apd_dump_function_table ( void )

Outputs the current function table.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 apd_dump_function_table() example

<?php
apd_dump_function_table();
?>

apd_croak
apd_dump_persistent_resources
APD Funções


Return all persistent resources as an array

apd_dump_function_table
apd_dump_regular_resources
APD Funções
PHP Manual

apd_dump_persistent_resources

(PECL apd 0.2-0.4)

apd_dump_persistent_resources — Return all persistent resources as an array

Descrição

array apd_dump_persistent_resources ( void )

Return all persistent resources as an array.

Valor Retornado

An array containing the current call stack.

Exemplos

Exemplo #1 apd_dump_persistent_resources() example

<?php
print_r(apd_dump_persistent_resources());
?>

Veja Também

  • apd_dump_regular_resources() - Return all current regular resources as an array

apd_dump_function_table
apd_dump_regular_resources
APD Funções


Return all current regular resources as an array

apd_dump_persistent_resources
apd_echo
APD Funções
PHP Manual

apd_dump_regular_resources

(PECL apd 0.2-0.4)

apd_dump_regular_resources — Return all current regular resources as an array

Descrição

array apd_dump_regular_resources ( void )

Return all current regular resources as an array.

Valor Retornado

An array containing the current regular resources.

Exemplos

Exemplo #1 apd_dump_regular_resources() example

<?php
print_r(apd_dump_regular_resources());
?>

Veja Também

  • apd_dump_persistent_resources() - Return all persistent resources as an array

apd_dump_persistent_resources
apd_echo
APD Funções


Echo to the debugging socket

apd_dump_regular_resources
apd_get_active_symbols
APD Funções
PHP Manual

apd_echo

(PECL apd >= 0.2)

apd_echo — Echo to the debugging socket

Descrição

bool apd_echo ( string $output )

Usually sent via the socket to request information about the running script.

Parâmetros

output

The debugged variable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 apd_echo() example

<?php
apd_echo($i);
?>

apd_dump_regular_resources
apd_get_active_symbols
APD Funções


Get an array of the current variables names in the local scope

apd_echo
apd_set_pprof_trace
APD Funções
PHP Manual

apd_get_active_symbols

(PECL apd 0.2)

apd_get_active_symbols — Get an array of the current variables names in the local scope

Descrição

array apd_get_active_symbols ( void )

Returns the names of all the variables defined in the active scope, (not their values).

Valor Retornado

A multidimensional array with all the variables.

Exemplos

Exemplo #1 apd_get_active_symbols() example

<?php
apd_echo(apd_get_active_symbols());
?>

apd_echo
apd_set_pprof_trace
APD Funções


Starts the session debugging

apd_get_active_symbols
apd_set_session_trace_socket
APD Funções
PHP Manual

apd_set_pprof_trace

(PECL apd >= 0.2)

apd_set_pprof_trace — Starts the session debugging

Descrição

string apd_set_pprof_trace ([ string $dump_directory [, string $fragment = "pprof" ]] )

Starts debugging to pprof_{process_id} in the dump directory.

Parâmetros

dump_directory

The directory in which the profile dump file is written. If not set, the apd.dumpdir setting from the php.ini file is used.

fragment

Valor Retornado

Returns path of the destination file.

Exemplos

Exemplo #1 apd_set_pprof_trace() example

<?php
apd_set_pprof_trace();
?>

Veja Também

  • apd_set_session_trace() - Starts the session debugging

apd_get_active_symbols
apd_set_session_trace_socket
APD Funções


Starts the remote session debugging

apd_set_pprof_trace
apd_set_session_trace
APD Funções
PHP Manual

apd_set_session_trace_socket

(PECL apd >= 0.2)

apd_set_session_trace_socket — Starts the remote session debugging

Descrição

bool apd_set_session_trace_socket ( string $tcp_server , int $socket_type , int $port , int $debug_level )

Connects to the specified tcp_server (eg. tcplisten) and sends debugging data to the socket.

Parâmetros

tcp_server

IP or Unix Domain socket (like a file) of the TCP server.

socket_type

Can be AF_UNIX for file based sockets or APD_AF_INET for standard tcp/ip.

port

You can use any port, but higher numbers are better as most of the lower numbers may be used by other system services.

debug_level

Um interiro que é formado pela adição em conjunto das constantes XXX_TRACE.

Não é recomendado usar MEMORY_TRACE. è muito lenta e não parece ser exata. ASSIGNMENT_TRACE ainda não esta implementada.

Para ativar todos os traços de funções (TIMING, FUNCTIONS, ARGS SUMMARY (como strace -c)) use o valor 99

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 apd_set_session_trace_socket() example

<?php
  apd_set_session_trace_socket("127.0.0.1",APD_AF_INET,7112,0);
?>

apd_set_pprof_trace
apd_set_session_trace
APD Funções


Starts the session debugging

apd_set_session_trace_socket
apd_set_session
APD Funções
PHP Manual

apd_set_session_trace

(PECL apd 0.2-0.4)

apd_set_session_trace — Starts the session debugging

Descrição

void apd_set_session_trace ( int $debug_level [, string $dump_directory ] )

Starts debugging to apd_dump_{process_id} in the dump directory.

Parâmetros

debug_level

Um interiro que é formado pela adição em conjunto das constantes XXX_TRACE.

Não é recomendado usar MEMORY_TRACE. è muito lenta e não parece ser exata. ASSIGNMENT_TRACE ainda não esta implementada.

Para ativar todos os traços de funções (TIMING, FUNCTIONS, ARGS SUMMARY (como strace -c)) use o valor 99

dump_directory

The directory in which the profile dump file is written. If not set, the apd.dumpdir setting from the php.ini file is used.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 apd_set_session_trace() example

<?php
apd_set_session_trace(99);
?>

apd_set_session_trace_socket
apd_set_session
APD Funções


Changes or sets the current debugging level

apd_set_session_trace
override_function
APD Funções
PHP Manual

apd_set_session

(PECL apd 0.2-0.4)

apd_set_session — Changes or sets the current debugging level

Descrição

void apd_set_session ( int $debug_level )

This can be used to increase or decrease debugging in a different area of your application.

Parâmetros

debug_level

Um interiro que é formado pela adição em conjunto das constantes XXX_TRACE.

Não é recomendado usar MEMORY_TRACE. è muito lenta e não parece ser exata. ASSIGNMENT_TRACE ainda não esta implementada.

Para ativar todos os traços de funções (TIMING, FUNCTIONS, ARGS SUMMARY (como strace -c)) use o valor 99

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 apd_set_session() example

<?php
apd_set_session(9);
?>

apd_set_session_trace
override_function
APD Funções


Overrides built-in functions

apd_set_session
rename_function
APD Funções
PHP Manual

override_function

(PECL apd >= 0.2)

override_function — Overrides built-in functions

Descrição

bool override_function ( string $function_name , string $function_args , string $function_code )

Overrides built-in functions by replacing them in the symbol table.

Parâmetros

function_name

The function to override.

function_args

The function arguments, as a comma separated string.

Usually you will want to pass this parameter, as well as the function_code parameter, as a single quote delimited string. The reason for using single quoted strings, is to protect the variable names from parsing, otherwise, if you use double quotes there will be a need to escape the variable names, e.g. \$your_var.

function_code

The new code for the function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 override_function() example

<?php
override_function('test', '$a,$b', 'echo "DOING TEST"; return $a * $b;');
?>

apd_set_session
rename_function
APD Funções


Renames orig_name to new_name in the global function table

override_function
bcompiler
APD Funções
PHP Manual

rename_function

(PECL apd >= 0.2)

rename_function — Renames orig_name to new_name in the global function table

Descrição

bool rename_function ( string $original_name , string $new_name )

Renames a orig_name to new_name in the global function table. Useful for temporarily overriding built-in functions.

Parâmetros

original_name

The original function name.

new_name

The new name for the original_name function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 rename_function() example

<?php
rename_function('mysql_connect', 'debug_mysql_connect' );
?>

override_function
bcompiler
APD Funções


Compilador de PHP bytecode

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • bcompiler Funções
    • bcompiler_load_exe — Lê e cria classes a partir de um arquivo exe do bcompiler
    • bcompiler_load — Lê e cria classes a partir de um arquivo compactado pelo bzip
    • bcompiler_parse_class — Lê o bytecode de uma classe e chama para uma função do usuário
    • bcompiler_read — Lê e cria uma classe a partir de um handle de arquivo
    • bcompiler_write_class — Escreve uma classe definida como bytecode
    • bcompiler_write_constant — Escreve uma constante definida como bytecodes
    • bcompiler_write_exe_footer — Escreve na posição de início e continua até o fim do arquivo de tipo EXE
    • bcompile_write_file — Escreve um arquivo-fonte do PHP como bytecodes
    • bcompiler_write_footer — Escreve o caracter \x00 para indicar o Fim dos dados compilados
    • bcompiler_write_function — Escreve uma função definida como bytecodes
    • bcompiler_write_functions_from_file — Escreve todas as funções definidas em um arquivo como bytecodes
    • bcompiler_write_header — Escreve o cabeçalho do bcompiler
    • bcompiler_write_included_filename — Escreve os bytecodes de um arquivo incluído (via include)
rename_function
Introdução
Afetando o comportamento do PHP


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Bcompiler foi escrito por várias razões:

  • Para codificar script em uma aplicação PHP proprietária
  • Para codificar algumas classes e/ou funções em uma aplicação PHP proprietária
  • Para disponibilizar a produção de aplicações php-gtk que poderiam ser usadas em clientes desktops, sem precisa do php.exe.
  • Para estudar a possibilidade de fazer um conversor de PHP para C
O primeiro desses objetivos é alcançado usando as funções bcompiler_write_header(), bcompiler_write_file() e bcompiler_write_footer() Os arquivos bytecode podem ser escritos ou como não-compactados ou planos. Para usar o bytecode gerado, você pode simplesmente incluí-lo com instruções include ou require.

O segundo desses objetivos é alcançado usando as funções bcompiler_write_header(), bcompiler_write_class(), bcompiler_write_footer(), bcompiler_read(), e bcompiler_load(). Os arquivos bytecode podem ser escritos ou como não-compactados ou planos. O bcompiler_load() lê um arquivo compactador bzip que contém bytecodes, o que tende a ser 1/3 do tamanho original do arquivo.

Para criar arquivos do tipo EXE, bcompiler tem que ser usado com um arquivo de SAPI modificado ou uma versão do PHP que tenha sido compilada como uma biblioteca compartilhada. Nesse cenário, bcompiler ler o bytecode compactador do fim do arquivo executável.

bcompiler pode aumentar performance em volta de 30% quando usado com bytecodes não-compactados apenas. Mas lembre-se que bytecode não-compactado pode ser até 5 vezes maior que o código-fonte original. Usar compactação de bytecode pode evitar gasto de espaço, mas descompactar requer muito mais tempo do que avaliar um fonte. bcompiler também não faz nenhuma otimização de bytecode, isso pode ser acrescentado no futuro...

Em termos de proteção de código, é seguro dizer que é seria impossível recriar o código-fonte exato do qual ele foi criado, e sem os comentários acompanhando o código-font. Seria efetivamente inútil usar o bcompiler para recriar ou modificar uma classe. No entanto, é possível recuperar dados de um arquivo bytecode compactado - então não ponha suas senhas pessoais ou coisa do tipo nele.

bcompiler
Instalação/Configuração
bcompiler


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
bcompiler


Instalação

Nota curta de instalação:

  • Você precisa de pelo menos o PHP 4.3.0 para a compressão funcionar
  • Para instalar no PHP 4.3.0 e superior no shell do unix digite pear install bcompiler
  • Para instalar no Windows, até o mecanismo de distribuíção de pacotes binários estiver completo, favor procure os arquivos da lista de discussão pear-general pelos pacotes pré-compilados. (ou mande um e-mail para a lista de você não conseguir achar uma referência).
  • Para instalar em versões mais antigas, você precisa fazer algumas pequenas alterações ao binário compilado.
  • untar o arquivo bcompiler.tgz no diretório php4/ext.(Pegue o diretamente da PECL » http://pecl.php.net/get/bcompiler)
  • Se o novo diretório for chamado algo como bcompiler-0.x, então você deve renomeá-lo para bcompiler (exceto se você só quiser compilá-lo como um módulo do php auto-contido).
  • Se você estiver usando versões anteriores ao PHP 4.3.0, você terá que copiar os arquivos Makefile.in.old para Makefile.in e config.m4.old para config.m4.
  • execute phpize no diretório ext/bcompiler
  • execute ./buildconf no diretório php4
  • execute o script configure com a opção --enable-bcompiler e as suas outras opções
  • make; make install
  • E por hoje é só pessoal.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
bcompiler Funções
bcompiler


bcompiler Funções

Informação para contato

Se você tiver comentários, resoluções de bugs, melhoramentos ou quer ajudar a desenvolver essa fera, você pode me enviar um e-mail para » alan_k@php.net. Qualquer ajuda é muito bem-vinda.

Índice

  • bcompiler_load_exe — Lê e cria classes a partir de um arquivo exe do bcompiler
  • bcompiler_load — Lê e cria classes a partir de um arquivo compactado pelo bzip
  • bcompiler_parse_class — Lê o bytecode de uma classe e chama para uma função do usuário
  • bcompiler_read — Lê e cria uma classe a partir de um handle de arquivo
  • bcompiler_write_class — Escreve uma classe definida como bytecode
  • bcompiler_write_constant — Escreve uma constante definida como bytecodes
  • bcompiler_write_exe_footer — Escreve na posição de início e continua até o fim do arquivo de tipo EXE
  • bcompile_write_file — Escreve um arquivo-fonte do PHP como bytecodes
  • bcompiler_write_footer — Escreve o caracter \x00 para indicar o Fim dos dados compilados
  • bcompiler_write_function — Escreve uma função definida como bytecodes
  • bcompiler_write_functions_from_file — Escreve todas as funções definidas em um arquivo como bytecodes
  • bcompiler_write_header — Escreve o cabeçalho do bcompiler
  • bcompiler_write_included_filename — Escreve os bytecodes de um arquivo incluído (via include)
Constantes pré-definidas
bcompiler_load_exe
bcompiler


Lê e cria classes a partir de um arquivo exe do bcompiler

bcompiler Funções
bcompiler_load
bcompiler Funções
PHP Manual

bcompiler_load_exe

(PECL bcompiler >= 0.4)

bcompiler_load_exe — Lê e cria classes a partir de um arquivo exe do bcompiler

Descrição

bool bcompiler_load_exe ( string $filename )

Lê os dados de um arquivo executável do bcompiler e cria classes a partir dos bytecodes

Parâmetros

filename

String com o caminho do arquivo executável.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de bcompiler_load()

<?php

bcompiler_load_exe("/tmp/example.exe");
print_r(get_defined_classes());

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_load() - Lê e cria classes a partir de um arquivo compactado pelo bzip

bcompiler Funções
bcompiler_load
bcompiler Funções


Lê e cria classes a partir de um arquivo compactado pelo bzip

bcompiler_load_exe
bcompiler_parse_class
bcompiler Funções
PHP Manual

bcompiler_load

(PECL bcompiler >= 0.4)

bcompiler_load — Lê e cria classes a partir de um arquivo compactado pelo bzip

Descrição

bool bcompiler_load ( string $filename )

Lê os dados de um arquivo compactado por bzip e cria classes a partir dos bytecodes.

Parâmetros

filename

String com o caminho para o arquivo comprimido pelo bzip.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de chamada à bcompiler_load()

<?php

bcompiler_load("/tmp/example");

print_r(get_defined_classes());

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Nota:

Favor usar as funções include e require para avaliar os bytecodes, é uma maneira mais portável e conveniente do que usar essa função.

Perceba que essa função não executa código no corpo do script contido no arquivo de bytecode.

Veja Também

  • bcompiler_load_exe() - Lê e cria classes a partir de um arquivo exe do bcompiler

bcompiler_load_exe
bcompiler_parse_class
bcompiler Funções


Lê o bytecode de uma classe e chama para uma função do usuário

bcompiler_load
bcompiler_read
bcompiler Funções
PHP Manual

bcompiler_parse_class

(PECL bcompiler >= 0.4)

bcompiler_parse_class — Lê o bytecode de uma classe e chama para uma função do usuário

Descrição

bool bcompiler_parse_class ( string $class , string $callback )

Lê os bytecodes de uma classe passa o resultado como parâmetro para uma função do usuário.

Parâmetros

class

String com o nome da classe.

callback

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_parse_class()

<?php

function readByteCodes($data) {
    print_r($data);
}

bcompiler_parse_class("DB","readByteCodes");

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Nota:

Essa função foi removida do bcompiler e não está mais disponível a partir do bcompiler 0.5.

bcompiler_load
bcompiler_read
bcompiler Funções


Lê e cria uma classe a partir de um handle de arquivo

bcompiler_parse_class
bcompiler_write_class
bcompiler Funções
PHP Manual

bcompiler_read

(PECL bcompiler >= 0.4)

bcompiler_read — Lê e cria uma classe a partir de um handle de arquivo

Descrição

bool bcompiler_read ( resource $filehandle )

Lê dados de um handle de arquivo aberto e cria classes a partir dos bytecodes.

Parâmetros

filehandle

Handle de arquivo retornado por fopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_read()

<?php
$fh = fopen("/tmp/example","r");
bcompiler_read($fh);
fclose($fh);
print_r(get_defined_classes());

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Nota:

Favor usar chamadas de include ou require para avaliar os bytecodes, é uma maneira mais portável e conveniente do que usar essa função.

Favor notar que essa função não executará o código do corpo do script contido no arquivo bytecode.

bcompiler_parse_class
bcompiler_write_class
bcompiler Funções


Escreve uma classe definida como bytecode

bcompiler_read
bcompiler_write_constant
bcompiler Funções
PHP Manual

bcompiler_write_class

(PECL bcompiler >= 0.4)

bcompiler_write_class — Escreve uma classe definida como bytecode

Descrição

bool bcompiler_write_class ( resource $filehandle , string $className [, string $extends ] )

Essa função lê os bytecodes do PHP de uma classe existente e escreve ela para um handle de arquivo aberto.

Parâmetros

filehandle

Handle de arquivo, como o retornado por fopen().

className

String com o nome da classe.

extends

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_class()

<?php
$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_class($fh,"DB");
// you must write DB_common before DB_mysql, as DB_mysql extends DB_common.
bcompiler_write_class($fh,"DB_common");
bcompiler_write_class($fh,"DB_mysql");
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Nota:

Essa função não faz checagem de dependência, portanto, certifique-se de colocar as classes na ordem para que não resulte em um erro de classe não definida quando carregar o bytecode.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_read
bcompiler_write_constant
bcompiler Funções


Escreve uma constante definida como bytecodes

bcompiler_write_class
bcompiler_write_exe_footer
bcompiler Funções
PHP Manual

bcompiler_write_constant

(PECL bcompiler >= 0.5)

bcompiler_write_constant — Escreve uma constante definida como bytecodes

Descrição

bool bcompiler_write_constant ( resource $filehandle , string $constantName )

Lê os bytecodes do PHP de uma constante existente e escreve-os em um handle de arquivo aberto.

Parâmetros

filehandle

Handle de arquivo, como o retornado por fopen().

constantName

String com o nome da constante definida.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_constant()

<?php
define("MODULE_MAX", 30);

$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_constant($fh,"MODULE_MAX");
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_class
bcompiler_write_exe_footer
bcompiler Funções


Escreve na posição de início e continua até o fim do arquivo de tipo EXE

bcompiler_write_constant
bcompile_write_file
bcompiler Funções
PHP Manual

bcompiler_write_exe_footer

(PECL bcompiler >= 0.4)

bcompiler_write_exe_footer — Escreve na posição de início e continua até o fim do arquivo de tipo EXE

Descrição

bool bcompiler_write_exe_footer ( resource $filehandle , int $startpos )

Um arquivo EXE (ou auto executável) consiste de 3 partes,

  • O núcleo (código executável, ex.: um programa C compilado) que carrega o interpretador do PHP, a extensão do bcompiler, is Bytecodes guardados e inicia uma chamada para a função especificada (ex.: main) ou método da classe (ex.: main::main)
  • Os Bytecodes (descomprimidos apenas momentaneamente)
  • O rodapé do exe do bcompile

Para obter um núcleo adequado, você pode compilar php_embed-based stub phpe.c localizado no diretório examples/embed no CVS do bcompiler.

Parâmetros

filehandle

Handle de arquivo, como o retornado por fopen().

startpos

A posição do arquivo no qual os Bytecodes começam. Pode ser obtida usando ftell().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_footer()

<?php

/* creating the output file (example.exe) */
$fh = fopen("example.exe", "w");

/* 1) writing a stub (phpe.exe) */
$size = filesize("phpe.exe");
$fr = fopen("phpe.exe", "r");
fwrite($fh, fread($fr, $size), $size);
$startpos = ftell($fh);

/* 2) writing bytecodes */
bcompiler_write_header($fh);
bcompiler_write_class($fh, "myclass");
bcompiler_write_function($fh, "main");
bcompiler_write_footer($fh);

/* 3) writing EXE footer */
bcompiler_write_exe_footer($fh, $startpos);

/* closing the output file */
fclose($fh);
?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_class() - Escreve uma classe definida como bytecode
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_constant
bcompile_write_file
bcompiler Funções


Escreve um arquivo-fonte do PHP como bytecodes

bcompiler_write_exe_footer
bcompiler_write_footer
bcompiler Funções
PHP Manual

bcompile_write_file

(No version information available, might only be in SVN)

bcompile_write_file — Escreve um arquivo-fonte do PHP como bytecodes

Descrição

bool bcompiler_write_file ( resource $filehandle , string $filename )

Essa função insere arquivos-fonte especificados no bytecode, e escreve-os para o handle de arquivo aberto.

Parâmetros

filehandle

Handle de arquivo aberto, como retornado por fopen().

filename

String com o caminho para o arquivo-fonte.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_file()

<?php
$fh = fopen("example.phb", "w");
bcompiler_write_header($fh);
bcompiler_write_file($fh, "example.php");
bcompiler_write_footer($fh);
fclose($fh);
/* the following should be equivalent:
include "example.php";
   and
include "example.phb";
*/
?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_exe_footer
bcompiler_write_footer
bcompiler Funções


Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompile_write_file
bcompiler_write_function
bcompiler Funções
PHP Manual

bcompiler_write_footer

(PECL bcompiler >= 0.4)

bcompiler_write_footer — Escreve o caracter \x00 para indicar o Fim dos dados compilados

Descrição

bool bcompiler_write_footer ( resource $filehandle )

Escreve o caracter \x00 para indicar o Fim dos dados compilados.

Parâmetros

filehandle

Handle de arquivo aberto, como retornado por fopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_footer()

<?php
$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_class($fh,"DB");
bcompiler_write_class($fh,"DB_common");
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler

bcompile_write_file
bcompiler_write_function
bcompiler Funções


Escreve uma função definida como bytecodes

bcompiler_write_footer
bcompiler_write_functions_from_file
bcompiler Funções
PHP Manual

bcompiler_write_function

(PECL bcompiler >= 0.5)

bcompiler_write_function — Escreve uma função definida como bytecodes

Descrição

bool bcompiler_write_function ( resource $filehandle , string $functionName )

Essa função lê o bytecode do PHP de uma função existente, e escreve o mesmo para um handle de arquivo aberto. Ordem não é importante, (ex.: se função b usa função a, e você compilar como no exemplo abaixo, funcionará perfeitamente).

Parâmetros

filehandle

Handle de arquivo aberto, como retornado por fopen().

functionName

String com o nome da função.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_function()

<?php
$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_function($fh,"my_function_a");
bcompiler_write_function($fh,"my_function_b");
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_footer
bcompiler_write_functions_from_file
bcompiler Funções


Escreve todas as funções definidas em um arquivo como bytecodes

bcompiler_write_function
bcompiler_write_header
bcompiler Funções
PHP Manual

bcompiler_write_functions_from_file

(PECL bcompiler >= 0.5)

bcompiler_write_functions_from_file — Escreve todas as funções definidas em um arquivo como bytecodes

Descrição

bool bcompiler_write_functions_from_file ( resource $filehandle , string $fileName )

Essa função procura por todas as funções declaradas em um dado arquivo, e escreve o bytecode correspondente para um handle de arquivo aberto.

Parâmetros

filehandle

Handle de arquivo aberto, como retornado por fopen().

fileName

Caminho para o arquivo à ser compilado. Você deve sempre chamar include ou require no arquivo que deseja compilar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso de bcompiler_write_functions_from_file()

<?php
require('module.php');

$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_functions_from_file($fh,'module.php');
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_header() - Escreve o cabeçalho do bcompiler
  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_function
bcompiler_write_header
bcompiler Funções


Escreve o cabeçalho do bcompiler

bcompiler_write_functions_from_file
bcompiler_write_included_filename
bcompiler Funções
PHP Manual

bcompiler_write_header

(PECL bcompiler >= 0.3)

bcompiler_write_header — Escreve o cabeçalho do bcompiler

Descrição

bool bcompiler_write_header ( resource $filehandle [, string $write_ver ] )

Escreve a parte do cabeçalho do arquivo bcompiler.

Parâmetros

filehandle

Handle de arquivo aberto, como retornado por fopen().

write_ver

Pode ser usado para escrever bytecode em um formato mais antigo, para que você possa usá-lo com versões mais velhas do bcompiler.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 bcompiler_write_header() example

<?php
$fh = fopen("/tmp/example","w");
bcompiler_write_header($fh);
bcompiler_write_class($fh,"DB");
bcompiler_write_footer($fh);
fclose($fh);

?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • bcompiler_write_footer() - Escreve o caracter \x00 para indicar o Fim dos dados compilados

bcompiler_write_functions_from_file
bcompiler_write_included_filename
bcompiler Funções


Escreve os bytecodes de um arquivo incluído (via include)

bcompiler_write_header
Manuseamento de Erro
bcompiler Funções
PHP Manual

bcompiler_write_included_filename

(PECL bcompiler >= 0.5)

bcompiler_write_included_filename — Escreve os bytecodes de um arquivo incluído (via include)

Descrição

bool bcompiler_write_included_filename ( resource $filehandle , string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

bcompiler_write_header
Manuseamento de Erro
bcompiler Funções


Erros e Logs

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para Manuseamento de Erros
    • debug_backtrace — Generates a backtrace
    • debug_print_backtrace — Mostra um backtrace
    • error_get_last — Obtém o último erro ocorrido
    • error_log — Envia uma mensagem de erro para algum lugar
    • error_reporting — Define quais erros serão reportados
    • restore_error_handler — Restaura a função anterior para gerenciamento de erro
    • restore_exception_handler — Restauda a função tratadora de exceções anterior.
    • set_error_handler — Define uma função do usuário para manipular erros
    • set_exception_handler — Define uma função definida pelo usuário para tratamento de exceções
    • trigger_error — Gera uma mensagem a nível de usuário de erro/aviso/notícia
    • user_error — Apelido para trigger_error
bcompiler_write_included_filename
Introdução
Afetando o comportamento do PHP


Introdução

Estas são funções para lidar com erros e logs. Elas permitem a você definir a suas próprias regras para manusear erros, assim como para modificar a maneira com que é efetuado o log de erros. Isto permite a você melhorar e adaptar as suas necessidades os avisos de erro.

Com as funções de log, você pode mandar mensagens diretamente para outras máquinas, para um email (ou email para um pager), para os logs do sistema, etc, assim você pode seletivamente logar e monitorar as partes mais importantes das suas aplicações e websites.

As funções de erro permitem você configurar quais níveis de erro devem ser reportados e o tipo de resposta que será dado, indo desde simples avisos até as funções retornadas durante os erros.

Manuseamento de Erro
Instalação/Configuração
Manuseamento de Erro


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Manuseamento de Erro


Instalação

Não há nenhuma instalação necessária para utilizar estas funções, elas fazem parte do núcleo do PHP.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configurações de erros e log
Nome | Padrão | Modificável | Changelog
error_reporting | NULL | PHP_INI_ALL |
display_errors | "1" | PHP_INI_ALL |
display_startup_errors | "0" | PHP_INI_ALL |
log_errors | "0" | PHP_INI_ALL |
log_errors_max_len | "1024" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
ignore_repeated_errors | "0" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
ignore_repeated_source | "0" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
report_memleaks | "1" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
track_errors | "0" | PHP_INI_ALL |
html_errors | "1" | PHP_INI_ALL |
docref_root | "" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
docref_ext | "" | PHP_INI_ALL | Disponível desde PHP 4.3.0.
error_prepend_string | NULL | PHP_INI_ALL |
error_append_string | NULL | PHP_INI_ALL |
error_log | NULL | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

error_reporting integer

Define o nível de erros para reportar. O parâmetro pode ser um inteiro ou uma constante. Os níveis de erros para reportar estão descritos em Constantes Pré-definidas, e no php.ini. Para definir em tempo de execução, use a função error_reporting(). Veja também a diretiva display_errors.

No PHP 4 e PHP 5 o valor padrão é E_ALL & ~E_NOTICE. Esta definição não mostra erros de nível E_NOTICE. Você deve querer mostra-los durante o desenvolvimento.

Nota:

Ativando E_NOTICE durante o desenvolvimento tem alguns beneficios. Para o proposito de eliminar erros: mensagens NOTICE irão avisar você sobre possiveis erros em seu código. Por exemplo, o uso de valores não definidos é avisado. É extremamente útil para encontrar erros de digitação e economisar tempo na correção de erros. As mensagens NOTICE irão avisar a você sobre mal estilo. Por exemplo, $arr[item] é melhor que seja escrito como $arr['item'] já que o PHP irá tratar "item" como uma constante. Se não for uma constante, o PHP irá considerar como uma string de índice para a matriz.

Nota:

No PHP 5 um novo nível de erro E_STRICT esta disponível. Já que E_STRICT não esta incluída em E_ALL você deve explicitamente ativar este nível de erro. Ativar E_STRICT durante o desenvolvimento tem alguns beneficios. Mensagem STRICT irão ajudar a você a utilizar o metodo mais recente de codificação, por exemplo, avisar você sobre funções obsoletas.

Nota: Constantes do PHP fora do PHP

Usar constantes PHP fora do PHP, como no httpd.conf, não terá sentido útiil assim nestes casos os valores integer são requeridos. E já que níveis de erros serão adicionados com o passar do tempo, o valor máximo (para E_ALL) irá provavelmente mudar. Assim no lugar de E_ALL considere usar um grande valor para cobrir todos os valores de agora assim como no futuro, um valor numérico como 2147483647.

display_errors boolean

Isto determina quando os erros devem ser mostrados como parte da saída ou se devem ser escondidos do usuário.

O valor "stderr" é enviado para stderr ao invés de stdout. O valor é disponível no PHP 5.2.4. Em versões anteriores, esta diretiva era do tipo boolean.

Nota:

Isto serve para suportar o seu desenvolvimento e nunca deve ser usado em sistemas de produção (ex. sistemas conectados a internet).

Nota:

Mesmo podendo ser display_errors definido em tempo de execução (com ini_set()), ele não terá qualquer efeito se o script tiver erro fatal. Isto é porque a ação desejada em tempo de execução não é executada.

display_startup_errors boolean

Mesmo quando display_errors esta em on, erros que aconteçam durante a inicialização do PHP não são mostrados. É fortemente recomendado manter display_startup_errors em off, exceto para procurar erros.

log_errors boolean

Indica se as mensagens de erro do script devem ficar no log de erros do servidor ou em error_log. Esta opção depende do servidor.

Nota:

Você é fortemente avisado para usar o log de erros ao invés de mostra-los em web sites de produção.

log_errors_max_len integer

Define o limite de tamanho da mensagem de erro para logar em bytes. Em error_log é adicionada informação sobre a fonte. O padrão é 1024 e 0 permite que não seja estabelecido nenhum limite. Este tamanho é aplicado aos erros logados, erros exibidos e também a $php_errormsg.

Quando um integer é utilizado, o valor é medido em bytes. A resumida notação, como descrito neste FAQ, pode também ser usada.
ignore_repeated_errors boolean

Não loga mensagens repetidas. Erros repetidos devem acontecer no mesmo arquivo na mesma linha enquanto ignore_repeated_source estiver em true.

ignore_repeated_source boolean

Ignora a fonte da mensagem quando estiver ignorando mensagens repetidos. Quando esta definição ON não irá logar mensagens de erros repetidas de arquivos diferentes ou linhas diferentes.

report_memleaks boolean

Se este parâmetro estiver em Off, quando acontecerem memory leaks não será mostrado (na saída ou no log). Isto só tem efeito numa compilação de debug, e se error_reporting incluir E_WARNING na lista de permitidos.

track_errors boolean

Se ativado, a última mensagem de erro sempre estará disponível na variável $php_errormsg.

html_errors boolean

Desativa as tags HTML nas mensagens de erro. O novo formato de mensagens de erro em HTML produz mensagens que podem ser clicadas e que direcionam o usuário para uma pagina descrevendo o erro ou a função que causou o erro. Estas referencias são afetadas por docref_root e docref_ext.

docref_root string

O novo formato de mensagens de erro em HTML produz mensagens que podem ser clicadas e que direcionam o usuário para uma pagina descrevendo o erro ou a função que causou o erro. No caso de paginas de manual você pode baixar o manual na sua língua e definir esta diretiva para a sua cópia local. Se a sua cópia local do manual podur ser acessada por '/manual/' você pode simplesmente usar docref_root=/manual/. Adicionalmente você deve definir docref_ext para ser igual a extensão da sua cópia docref_ext=.html. É possível usar referencias externas. Por exemplo, você pode usar docref_root=http://manual/en/ ou docref_root="http://landonize.it/?how=url&theme=classic&filter=Landon &url=http%3A%2F%2Fwww.php.net%2F"

A maior parte do tempo você deve querer que o valor de docref_root termine com uma barra '/'. Mas veja o segundo exemplo acima o qual não tem ou não necessita isso.

Nota:

Isto é para suportar o seu desenvolvimento já que torna mais fácil encontrar a descrição de uma função. Entretando não deve ser usado em sistemas de produção (ex. sistemas conectados na internet).

docref_ext string

Veja docref_root.

Nota:

O valor de docref_ext deve começar com um ponto '.'.

error_prepend_string string

String para mostrar antes de uma mensagem de erro.

error_append_string string

String para mostrar após uma mensagem de erro.

error_log string

O nome do arquivo onde os erros do script serão logados. O arquivo deve poder ser escrito pelo usuário do servidor web. Se o valor especial syslog é usado, os erros são enviados para o log do sistema. No Unix, isto indica syslog(3) e no Windows NT isto indica o log do evento. O log de sistema não é suportado no Windows 95. Veja também: syslog(). Se esta diretiva não for definida, os erros são enviados para o log de erros do SAPI. Por exemplo, é para o log de erros do Apache ou stderr para o CLI.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.

Nota: Você pode usar estes nomes de constantes no php.ini mas não fora do PHP, como no httpd.conf, aonde você deve usar os valores.

Erros e Logs
Valor | Constante | Descrição | Nota
1 | E_ERROR (integer) | Erros fatais em tempo de execução. Estes indicam erros que não podem ser recuperados, como problemas de alocação de memória. A execução do script é interrompida. |
2 | E_WARNING (integer) | Avisos em tempo de execução (erros não fatais). A execução do script não é interrompida. |
4 | E_PARSE (integer) | Erro em tempo de compilação. Erros gerados pelo interpretador. |
8 | E_NOTICE (integer) | Notícia em tempo de execução. Indica que o script encontrou alguma coisa que pode indicar um erro, mas que também possa acontecer durante a execução normal do script. |
16 | E_CORE_ERROR (integer) | Erro fatal que acontece durante a inicialização do PHP. Este é parecido com E_ERROR, exceto que é gerado pelo núcleo do PHP. | desde o PHP 4
32 | E_CORE_WARNING (integer) | Avisos (erros não fatais) que aconteçam durante a inicialização do PHP. Este é parecido com E_WARNING, exceto que é gerado pelo núcleo do PHP. | desde o PHP 4
64 | E_COMPILE_ERROR (integer) | Erro fatal em tempo de compilação. Este é parecido com E_ERROR, exceto que é gerado pelo Zend Scripting Engine. | desde o PHP 4
128 | E_COMPILE_WARNING (integer) | Aviso em tempo de compilação. Este é parecido com E_WARNING, exceto que é geredo pelo Zend Scripting Engine. | desde o PHP 4
256 | E_USER_ERROR (integer) | Erro gerado pelo usuário. Este é parecido com E_ERROR, exceto que é gerado pelo código PHP usando a função trigger_error(). | desde o PHP 4
512 | E_USER_WARNING (integer) | Aviso gerado pelo usuário. Este é parecido com E_WARNING, exceto que é gerado pelo código PHP usando a função trigger_error(). | desde o PHP 4
1024 | E_USER_NOTICE (integer) | Notícia gerada pelo usuário. Este é parecido com E_NOTICE, exceto que é gerado pelo código PHP usando a função trigger_error(). | desde o PHP 4
2048 | E_STRICT (integer) | Notícias em tempo de execução. Permite ao PHP sugerir mudanças ao seu código as quais irão assegurar melhor interoperabilidade e compatibilidade futura do seu código. | desde o PHP 5
4096 | E_RECOVERABLE_ERROR (integer) | Erro fatal capturável. Indica que um erro provavelmente perigoso aconteceu, mas não deixou o Engine em um estado instável. Se o erro não for pego por uma manipulador definido pelo usuário (veja também set_error_handler()), a aplicação é abortada como se fosse um E_ERROR. | desde o PHP 5.2.0
8192 | E_DEPRECATED (integer) | Avisos em tempo de execução. Habilite-o para receber avisos sobre código que não funcionará em futuras versões. | desde o PHP 5.3.0
16384 | E_USER_DEPRECATED (integer) | Mensagem de aviso gerado pelo usuário. Este é como um E_DEPRECATED, exceto que é gerado em código PHP usando a função trigger_error(). | desde o PHP 5.3.0
30719 | E_ALL (integer) | Todos erros e avisos, como suportado, exceto de nível E_STRICT no PHP < 6. | 32767 no PHP 6, 30719 no PHP 5.3.x, 6143 no PHP 5.2.x, 2047 anteriormente

Os valores acima (numéricos ou simbolicos) são usados para criar um bitmask que especifica quais erros reportar.Você pode usar os operadores Bit-a-bit para combinar estes valores ou mascarar certos tipos de erro. Note que somente '|', '~', '!', '^' and '&' serão ententidos dentro do php.ini.

Tipos Resource
Exemplos
Manuseamento de Erro


Exemplos

Abaixo você poderá ver um exemplo de como usar as capacidades de gerenciamento de erros no PHP. Nós definimos uma função para gerenciamento de erros a qual guardas as informações dentro de um arquivo (usando um formato XML), e envia um e-mail para o desenvolvador caso um erro crítico na lógica aconteça.

Exemplo #1 Usando gerenciamento de erro em um script

<?php
// we will do our own error handling
error_reporting(0);

// user defined error handling function
function userErrorHandler($errno, $errmsg, $filename, $linenum, $vars)
{
    // timestamp for the error entry
    $dt = date("Y-m-d H:i:s (T)");

    // define an assoc array of error string
    // in reality the only entries we should
    // consider are E_WARNING, E_NOTICE, E_USER_ERROR,
    // E_USER_WARNING and E_USER_NOTICE
    $errortype = array (
                E_ERROR              => 'Error',
                E_WARNING            => 'Warning',
                E_PARSE              => 'Parsing Error',
                E_NOTICE             => 'Notice',
                E_CORE_ERROR         => 'Core Error',
                E_CORE_WARNING       => 'Core Warning',
                E_COMPILE_ERROR      => 'Compile Error',
                E_COMPILE_WARNING    => 'Compile Warning',
                E_USER_ERROR         => 'User Error',
                E_USER_WARNING       => 'User Warning',
                E_USER_NOTICE        => 'User Notice',
                E_STRICT             => 'Runtime Notice',
                E_RECOVERABLE_ERROR  => 'Catchable Fatal Error'
                );
    // set of errors for which a var trace will be saved
    $user_errors = array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE);

    $err = "<errorentry>\n";
    $err .= "\t<datetime>" . $dt . "</datetime>\n";
    $err .= "\t<errornum>" . $errno . "</errornum>\n";
    $err .= "\t<errortype>" . $errortype[$errno] . "</errortype>\n";
    $err .= "\t<errormsg>" . $errmsg . "</errormsg>\n";
    $err .= "\t<scriptname>" . $filename . "</scriptname>\n";
    $err .= "\t<scriptlinenum>" . $linenum . "</scriptlinenum>\n";

    if (in_array($errno, $user_errors)) {
        $err .= "\t<vartrace>" . wddx_serialize_value($vars, "Variables") . "</vartrace>\n";
    }
    $err .= "</errorentry>\n\n";

    // for testing
    // echo $err;

    // save to the error log, and e-mail me if there is a critical user error
    error_log($err, 3, "/usr/local/php4/error.log");
    if ($errno == E_USER_ERROR) {
        mail("phpdev@example.com", "Critical User Error", $err);
    }
}

function distance($vect1, $vect2)
{
    if (!is_array($vect1) || !is_array($vect2)) {
        trigger_error("Incorrect parameters, arrays expected", E_USER_ERROR);
        return NULL;
    }

    if (count($vect1) != count($vect2)) {
        trigger_error("Vectors need to be of the same size", E_USER_ERROR);
        return NULL;
    }

    for ($i=0; $i<count($vect1); $i++) {
        $c1 = $vect1[$i]; $c2 = $vect2[$i];
        $d = 0.0;
        if (!is_numeric($c1)) {
            trigger_error("Coordinate $i in vector 1 is not a number, using zero",
                            E_USER_WARNING);
            $c1 = 0.0;
        }
        if (!is_numeric($c2)) {
            trigger_error("Coordinate $i in vector 2 is not a number, using zero",
                            E_USER_WARNING);
            $c2 = 0.0;
        }
        $d += $c2*$c2 - $c1*$c1;
    }
    return sqrt($d);
}

$old_error_handler = set_error_handler("userErrorHandler");

// undefined constant, generates a warning
$t = I_AM_NOT_DEFINED;

// define some "vectors"
$a = array(2, 3, "foo");
$b = array(5.5, 4.3, -1.6);
$c = array(1, -3);

// generate a user error
$t1 = distance($c, $b) . "\n";

// generate another user error
$t2 = distance($b, "i am not an array") . "\n";

// generate a warning
$t3 = distance($a, $b) . "\n";

?>

Constantes pré-definidas
Funções para Manuseamento de Erros
Manuseamento de Erro


Funções para Manuseamento de Erros

Veja Também

Veja também syslog().

Índice

  • debug_backtrace — Generates a backtrace
  • debug_print_backtrace — Mostra um backtrace
  • error_get_last — Obtém o último erro ocorrido
  • error_log — Envia uma mensagem de erro para algum lugar
  • error_reporting — Define quais erros serão reportados
  • restore_error_handler — Restaura a função anterior para gerenciamento de erro
  • restore_exception_handler — Restauda a função tratadora de exceções anterior.
  • set_error_handler — Define uma função do usuário para manipular erros
  • set_exception_handler — Define uma função definida pelo usuário para tratamento de exceções
  • trigger_error — Gera uma mensagem a nível de usuário de erro/aviso/notícia
  • user_error — Apelido para trigger_error
Exemplos
debug_backtrace
Manuseamento de Erro


Generates a backtrace

Funções para Manuseamento de Erros
debug_print_backtrace
Funções para Manuseamento de Erros
PHP Manual

debug_backtrace

(PHP 4 >= 4.3.0, PHP 5)

debug_backtrace — Generates a backtrace

Descrição

array debug_backtrace ([ int $options = DEBUG_BACKTRACE_PROVIDE_OBJECT ] )

debug_backtrace() generates a PHP backtrace.

Parâmetros

options

Since 5.3.6, this parameter is a bitmask for the following options:

debug_backtrace() options
DEBUG_BACKTRACE_PROVIDE_OBJECT | Whether or not to populate the "object" index.
DEBUG_BACKTRACE_IGNORE_ARGS | Whether or not to omit the "args" index and thus all the method arguments to save memory.
Before 5.3.6, only value recognized is TRUE or FALSE, which is the same as setting and unsetting DEBUG_BACKTRACE_PROVIDE_OBJECT option.

Valor Retornado

Returns an associative array. The possible returned elements are as follows:

Possible returned elements from debug_backtrace()
Nome | Tipo | Descrição
function | string | The current function name. See also __FUNCTION__.
line | integer | The current line number. See also __LINE__.
file | string | The current file name. See also __FILE__.
class | string | The current class name. See also __CLASS__
object | object | The current object.
type | string | The current call type. If a method call, "->" is returned. If a static method call, "::" is returned. If a function call, nothing is returned.
args | array | If inside a function, this lists the functions arguments. If inside an included file, this lists the included file name(s).

Histórico

Versão | Descrição
5.3.6 | The parameter provide_object changed to options and additional option DEBUG_BACKTRACE_IGNORE_ARGS is added.
5.2.5 | Added the optional parameter provide_object.
5.1.1 | Added the current object as a possible return element.

Exemplos

Exemplo #1 debug_backtrace() example

<?php
// filename: /tmp/a.php

function a_test($str)
{
    echo "\nHi: $str";
    var_dump(debug_backtrace());
}

a_test('friend');
?>

<?php
// filename: /tmp/b.php
include_once '/tmp/a.php';
?>

Results similar to the following when executing /tmp/b.php:

Hi: friend
array(2) {
[0]=>
array(4) {
    ["file"] => string(10) "/tmp/a.php"
    ["line"] => int(10)
    ["function"] => string(6) "a_test"
    ["args"]=>
    array(1) {
      [0] => &string(6) "friend"
    }
}
[1]=>
array(4) {
    ["file"] => string(10) "/tmp/b.php"
    ["line"] => int(2)
    ["args"] =>
    array(1) {
      [0] => string(10) "/tmp/a.php"
    }
    ["function"] => string(12) "include_once"
  }
}

Veja Também

  • trigger_error() - Gera uma mensagem a nível de usuário de erro/aviso/notícia
  • debug_print_backtrace() - Mostra um backtrace

Funções para Manuseamento de Erros
debug_print_backtrace
Funções para Manuseamento de Erros


Mostra um backtrace

debug_backtrace
error_get_last
Funções para Manuseamento de Erros
PHP Manual

debug_print_backtrace

(PHP 5)

debug_print_backtrace — Mostra um backtrace

Descrição

void debug_print_backtrace ( void )

debug_print_backtrace() prints a PHP backtrace. It prints the function calls, included/required files and eval()ed stuff.

Parâmetros

This function has no parameters.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 debug_print_backtrace() example

<?php
// include.php file

function a() {
    b();
}

function b() {
    c();
}

function c(){
    debug_print_backtrace();
}

a();

?>
<?php
// test.php file
// this is the file you should run

include 'include.php';
?>

O exemplo acima irá imprimir algo similar a:

#0  eval() called at [/tmp/include.php:5]
#1  a() called at [/tmp/include.php:17]
#2  include(/tmp/include.php) called at [/tmp/test.php:3]

#0  c() called at [/tmp/include.php:10]
#1  b() called at [/tmp/include.php:6]
#2  a() called at [/tmp/include.php:17]
#3  include(/tmp/include.php) called at [/tmp/test.php:3]

Veja Também

  • debug_backtrace() - Generates a backtrace

debug_backtrace
error_get_last
Funções para Manuseamento de Erros


Obtém o último erro ocorrido

debug_print_backtrace
error_log
Funções para Manuseamento de Erros
PHP Manual

error_get_last

(PHP 5 >= 5.2.0)

error_get_last — Obtém o último erro ocorrido

Descrição

array error_get_last ( void )

Obtém informação sobre o último erro que ocorreu.

Valor Retornado

Retorna um array associativo descrevendo o último erro com chaves "type", "message", "file" e "line". Retorna NULL se não tiver ocorrido um erro até a chamada da função.

Exemplos

Exemplo #1 Um exemplo da error_get_last()

<?php
echo $a;
print_r(error_get_last());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [type] => 8
    [message] => Undefined variable: a
    [file] => C:\WWW\index.php
    [line] => 2
)

Veja Também

  • Constantes de erro
  • Variável $php_errormsg
  • Diretiva display_errors

debug_print_backtrace
error_log
Funções para Manuseamento de Erros


Envia uma mensagem de erro para algum lugar

error_get_last
error_reporting
Funções para Manuseamento de Erros
PHP Manual

error_log

(PHP 4, PHP 5)

error_log — Envia uma mensagem de erro para algum lugar

Descrição

bool error_log ( string $mensagem [, int $mensagem_type [, string $destination [, string $extra_headers ]]] )

Envia uma mensagem de erro para o log de um servidor, para uma porta TCP ou para um arquivo.

Parâmetros

message

The error message that should be logged.

message_type

Says where the error should go. The possible message types are as follows:

Tipo de logs de error_log()
0 | mensagem é enviada para o sistema de log do PHP, usando o sistema de log do sistema operacional ou para um arquivo, dependendo do que estiver definido na diretiva error_log. Esta é a opção padrão.
1 | mensagem é enviado para o endereço de email em destination. Este é o unico tipo de mensagem onde o quarto parâmetro extra_headers é usado.
2 | Não é mais uma opção.
3 | mensagem é adicionada ao arquivo destination. Uma nova linha não é adicionada automaticamente ao final da string message.

destination

A destinação. Seu significado depende do parâmetro message_type como descrito acima.

extra_headers

The extra headers. It's used when the message_type parameter is set to 1. This message type uses the same internal function as mail() does.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplos de error_log()

<?php
// Envia uma notificação para o log do servidor
// se não pudermos conectar ao banco de dados.
if (!Ora_Logon($username, $password)) {
    error_log("Oracle database not available!", 0);
}

// Avisa o administrados se nós ficarmos sem FOO
if (!($foo = allocate_new_foo())) {
    error_log("Big trouble, we're all out of FOOs!", 1,
               "operator@example.com");
}

// outra forma de usar calling error_log():
error_log("You messed up!", 3, "/var/tmp/my-errors.log");

?>

error_get_last
error_reporting
Funções para Manuseamento de Erros


Define quais erros serão reportados

error_log
restore_error_handler
Funções para Manuseamento de Erros
PHP Manual

error_reporting

(PHP 4, PHP 5)

error_reporting — Define quais erros serão reportados

Descrição

int error_reporting ([ int $nível ] )

A função error_reporting() define a diretiva error_reporting em tempo de execução. O PHP tem vários níveis de erros, usando esta função você pode definir o nível durante a execução do seu script.

Parâmetros

level

O novo nível error_reporting. Ele leva ou um bitmask, ou uma constante. Usar constantes é fortemente encorajado para assegurar compatibilidade com versões futuras. Quando níveis de erros forem adicionados, o intervalo dos inteiros aumenta, assim antigos níveis de erro baseados em inteiros não irão funcionar como esperado.

Os níveis de erro disponíveis estão listados a baixo. A descrição deles esta em constantes pré-definidas.

Constantes de nível e valores de bit de error_reporting().
Valor | Constante
1 | E_ERROR
2 | E_WARNING
4 | E_PARSE
8 | E_NOTICE
16 | E_CORE_ERROR
32 | E_CORE_WARNING
64 | E_COMPILE_ERROR
128 | E_COMPILE_WARNING
256 | E_USER_ERROR
512 | E_USER_WARNING
1024 | E_USER_NOTICE
6143 | E_ALL
2048 | E_STRICT
4096 | E_RECOVERABLE_ERROR

Valor Retornado

Retorna o nível anterior de error_reporting.

Histórico

Versão | Descrição
5.0.0 | E_STRICT introduzido (não parte de E_ALL).
5.2.0 | E_RECOVERABLE_ERROR introduzido.
6 | E_STRICT tornou-se parte de E_ALL.

Exemplos

Exemplo #1 Exemplos error_reporting()

<?php

// Turn off all error reporting
error_reporting(0);

// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

// Report all errors except E_NOTICE
// This is the default value set in php.ini
error_reporting(E_ALL ^ E_NOTICE);

// Report all PHP errors
error_reporting(E_ALL);

// Same as error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);

?>

Notas

Aviso

A maioria dos erros E_STRICT são avaliados em tempo de compilação assim esses erros não são reportados no arquivo aonde error_reporting é aumentado para incluir erros E_STRICT (e vice versa).

  • A diretiva display_errors
  • ini_set()

error_log
restore_error_handler
Funções para Manuseamento de Erros


Restaura a função anterior para gerenciamento de erro

error_reporting
restore_exception_handler
Funções para Manuseamento de Erros
PHP Manual

restore_error_handler

(PHP 4 >= 4.0.1, PHP 5)

restore_error_handler — Restaura a função anterior para gerenciamento de erro

Descrição

bool restore_error_handler ( void )

Usada após mudar a função que gerencia os erros usando set_error_handler(), para reverter para a função que gerencia os erros anterior (a qual pode ser uma função interna ou uma função definida pelo usuário).

Valor Retornado

Esta função sempre retorna TRUE.

Exemplos

Exemplo #1 Exemplo restore_error_handler()

Decide se unserialize() causou um erro, então restaura o manipulador de erro original.

<?php
function unserialize_handler($errno, $errstr)
{
    echo "Invalid serialized value.\n";
}

$serialized = 'foo';
set_error_handler('unserialize_handler');
$original = unserialize($serialized);
restore_error_handler();
?>

O exemplo acima irá imprimir:

Invalid serialized value.

Notas

Nota:

Chamar restore_error_handler() da função error_handler é ignorada.

Veja Também

  • error_reporting() - Define quais erros serão reportados
  • set_error_handler() - Define uma função do usuário para manipular erros
  • restore_exception_handler() - Restauda a função tratadora de exceções anterior.
  • trigger_error() - Gera uma mensagem a nível de usuário de erro/aviso/notícia

error_reporting
restore_exception_handler
Funções para Manuseamento de Erros


Restauda a função tratadora de exceções anterior.

restore_error_handler
set_error_handler
Funções para Manuseamento de Erros
PHP Manual

restore_exception_handler

(PHP 5)

restore_exception_handler — Restauda a função tratadora de exceções anterior.

Descrição

bool restore_exception_handler ( void )

Usada após mudar a função de tratamento de exceção com set_exception_handler(), para reverter para o tratador anterior (que pode ser integrado, ou uma função definida pelo usuário).

Valor Retornado

Essa função sempre retorna TRUE.

Veja Também

  • set_exception_handler() - Define uma função definida pelo usuário para tratamento de exceções
  • set_error_handler() - Define uma função do usuário para manipular erros
  • restore_error_handler() - Restaura a função anterior para gerenciamento de erro
  • error_reporting() - Define quais erros serão reportados

restore_error_handler
set_error_handler
Funções para Manuseamento de Erros


Define uma função do usuário para manipular erros

restore_exception_handler
set_exception_handler
Funções para Manuseamento de Erros
PHP Manual

set_error_handler

(PHP 4 >= 4.0.1, PHP 5)

set_error_handler — Define uma função do usuário para manipular erros

Descrição

mixed set_error_handler ( callback $error_handler [, int $error_types ] )

Define uma função do usuário (error_handler) para manipular erros no script.

Esta função pode ser usada para definir a sua própria maneira de manipular erros em tempo de execução, por exemplo, em aplicações nas quais você precisa fazer fazer uma limpeza de dados/arquivos quando um erro crítico acontece, ou quando você precisa que haja um erro sob certa circunstancia (usando trigger_error()).

è importante lembrar-se que o manipulador padrão de erros do PHP é completamente ignorado. As configurações de error_reporting() não terão efeito e o seu manipulador de erro será chamado - entretanto você ainda é capaz de ler o valor atual de error_reporting e agir apropriadamente. É importante notar que este valor será 0 se o comando que causou o erro foi precedido por @ operador de controle de erro .

também note que é sua responsabilidade die()(morrer) se necessário. Se a função manipuladora de erro retornar, a execução do script irá continuar com o próximo comando após o que causou o erro.

Os seguintes tipos de erros não podem ser manipulados com uma função definida pelo usuário: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING, e a maioria de E_STRICT que ocorram no arquivo aonde set_error_handler() for chamada.

Se um erro acontecer antes que o script seja executado (exemplo em uploads de arquivos) a função personalizada de manipulação não pode ser chamada já que não estará registrada para isso neste momento.

Parâmetros

error_handler

A função do usuário precisa aceitar dois parâmetros: o código de erro, e uma string descrevendo o erro. Então tem três parâmetros opcionais que podem ser dados: o nome do arquivo no qual o erro aconteceu, o número da linha na qual o erro aconteceu, e o contexto no qual o erro aconteceu (uma matriz que aponta para a tabela de símbolos ativos no ponto em que o erro aconteceu). A função pode ser mostrada como:

handler ( int $errno , string $errstr [, string $errfile [, int $errline [, array $errcontext ]]] )
errno
O primeiro parâmetro, errno, contém o nível de erro que aconteceu, como um inteiro.
errstr
O segundo parâmetro, errstr, contém a mensagem de erro, como uma string.
errfile
O terceiro parãmetro é opcional, errfile, o qual contém o nome do arquivo no qual o erro ocorreu, como uma string.
errline
O quarto parâmetro é opcional, errline, o qual contém o número da linha na qual o erro ocorreu, como um inteiro.
errcontext
O quinto parâmetro é opcional, errcontext, o qual é uma matriz que aponta para a tabela de símbolos ativos no ponto aonde o erro ocorreu. Em outras palavras, errcontext irá conter uma matriz de cada váriavel que exista no escopo aonde o erro aconteceu. O manipulador de erro do usuário não deve modificar o contexto de erro.

Se a função retornar FALSE então o manipulador de erro normal continua.

error_types

Pode ser usado para mascarar o uso da função error_handler da mesma maneira que a configuação error_reporting controla quais erros são exibidos. Sem esta mascara definida a função error_handler será chamada para cada erro sem se importar com a definição de error_reporting.

Valor Retornado

Retorna uma string contendo o manipulador de erro previamente definido (se houver um), ou NULL em caso de erro. Se o manipulador anterior for um metodo de classe, esta função irá retornar uma matriz indexada com a classe e o nome do metodo.

Histórico

Versão | Descrição
5.2.0 | O manipulador de erro deve retornar FALSE para povoar $php_errormsg.
5.0.0 | O parâmetro error_types foi introzido.
4.3.0 | Ao invés do nome da função, uma matriz contendo a referência a um objeto e um nome de metodo pode também ser dada como argumento para error_handler.
4.0.2 | Três parâmetros opcionais foram adicionados para a função do usuário error_handler. Estes são o nome do arquivo, p número da linha e o contexto.

Exemplos

Exemplo #1 Manipulação de erros com set_error_handler() e trigger_error()

O exemplo abaixo mostra a manipulação de exceções internas realizando erros e manipulando-os com uma função definida pelo usuário:

<?php
// error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
    switch ($errno) {
    case E_USER_ERROR:
        echo "<b>My ERROR</b> [$errno] $errstr<br />\n";
        echo "  Fatal error on line $errline in file $errfile";
        echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n";
        echo "Aborting...<br />\n";
        exit(1);
        break;

    case E_USER_WARNING:
        echo "<b>My WARNING</b> [$errno] $errstr<br />\n";
        break;

    case E_USER_NOTICE:
        echo "<b>My NOTICE</b> [$errno] $errstr<br />\n";
        break;

    default:
        echo "Unknown error type: [$errno] $errstr<br />\n";
        break;
    }

    /* Don't execute PHP internal error handler */
    return true;
}

// function to test the error handling
function scale_by_log($vect, $scale)
{
    if (!is_numeric($scale) || $scale <= 0) {
        trigger_error("log(x) for x <= 0 is undefined, you used: scale = $scale", E_USER_ERROR);
    }

    if (!is_array($vect)) {
        trigger_error("Incorrect input vector, array of values expected", E_USER_WARNING);
        return null;
    }

    $temp = array();
    foreach($vect as $pos => $value) {
        if (!is_numeric($value)) {
            trigger_error("Value at position $pos is not a number, using 0 (zero)", E_USER_NOTICE);
            $value = 0;
        }
        $temp[$pos] = log($scale) * $value;
    }

    return $temp;
}

// set to the user defined error handler
$old_error_handler = set_error_handler("myErrorHandler");

// trigger some errors, first define a mixed array with a non-numeric item
echo "vector a\n";
$a = array(2, 3, "foo", 5.5, 43.3, 21.11);
print_r($a);

// now generate second array
echo "----\nvector b - a notice (b = log(PI) * a)\n";
/* Value at position $pos is not a number, using 0 (zero) */
$b = scale_by_log($a, M_PI);
print_r($b);

// this is trouble, we pass a string instead of an array
echo "----\nvector c - a warning\n";
/* Incorrect input vector, array of values expected */
$c = scale_by_log("not array", 2.3);
var_dump($c); // NULL

// this is a critical error, log of zero or negative number is undefined
echo "----\nvector d - fatal error\n";
/* log(x) for x <= 0 is undefined, you used: scale = $scale" */
$d = scale_by_log($a, -2.5);
var_dump($d); // Never reached
?>

O exemplo acima irá imprimir algo similar a:

vector a
Array
(
    [0] => 2
    [1] => 3
    [2] => foo
    [3] => 5.5
    [4] => 43.3
    [5] => 21.11
)
----
vector b - a notice (b = log(PI) * a)
<b>My NOTICE</b> [1024] Value at position 2 is not a number, using 0 (zero)<br />
Array
(
    [0] => 2.2894597716988
    [1] => 3.4341896575482
    [2] => 0
    [3] => 6.2960143721717
    [4] => 49.566804057279
    [5] => 24.165247890281
)
----
vector c - a warning
<b>My WARNING</b> [512] Incorrect input vector, array of values expected<br />
NULL
----
vector d - fatal error
<b>My ERROR</b> [256] log(x) for x <= 0 is undefined, you used: scale = -2.5<br />
  Fatal error on line 35 in file trigger_error.php, PHP 5.2.1 (FreeBSD)<br />
Aborting...<br />

Veja Também

  • error_reporting() - Define quais erros serão reportados
  • restore_error_handler() - Restaura a função anterior para gerenciamento de erro
  • trigger_error() - Gera uma mensagem a nível de usuário de erro/aviso/notícia
  • error level constants
  • informações sobre o tipo callback

restore_exception_handler
set_exception_handler
Funções para Manuseamento de Erros


Define uma função definida pelo usuário para tratamento de exceções

set_error_handler
trigger_error
Funções para Manuseamento de Erros
PHP Manual

set_exception_handler

(PHP 5)

set_exception_handler — Define uma função definida pelo usuário para tratamento de exceções

Descrição

string set_exception_handler ( callback $exception_handler )

Define o tratador de exceção padrão se uma exceção não for pega em um bloco try/catch. A Execução não parará depois que exception_handler é chamada.

Parâmetros

exception_handler

Nome da função à ser chamada quando uma exceção não pega ocorrer. Essa função deve ser definida antes de chamar set_exception_handler(). Essa função de tratamento precisa aceitar um parâmetro, que será o objeto da exceção que foi disparado.

Valor Retornado

Retorna o nome do tratador padrão de exceção anterior, ou NULL em caso de erro. Se nenhum tratador anterior foi definido, o retorno também será NULL.

Exemplos

Exemplo #1 Um exemplo de set_exception_handler()

<?php
function exception_handler($exception) {
  echo "Uncaught exception: " , $exception->getMessage(), "\n";
}

set_exception_handler('exception_handler');

throw new Exception('Uncaught Exception');
echo "Not Executed\n";
?>

Veja Também

restore_exception_handler() - Restauda a função tratadora de exceções anterior., restore_error_handler() - Restaura a função anterior para gerenciamento de erro, error_reporting() - Define quais erros serão reportados, informações sobre o tipo callback, e Exceções do PHP 5.

set_error_handler
trigger_error
Funções para Manuseamento de Erros


Gera uma mensagem a nível de usuário de erro/aviso/notícia

set_exception_handler
user_error
Funções para Manuseamento de Erros
PHP Manual

trigger_error

(PHP 4 >= 4.0.1, PHP 5)

trigger_error — Gera uma mensagem a nível de usuário de erro/aviso/notícia

Descrição

bool trigger_error ( string $error_msg [, int $error_type ] )

Usado para realizar uma condição de erro, pode ser usado em conjunto com o manipulador de erro interno, ou com uma função definida pelo usuário que foi definida como novo manipulador de erro (set_error_handler()).

Esta função é útil se você precisa gerar uma resposta em particular para uma exceção em tempo de execução.

Parâmetros

error_msg

A mensagem de erro definida para este erro. É limita a 1024 caracteres em tamanho. Quaisquer caracteres além de 1024 serão truncados.

error_type

O tipo de erro definido para est erro. Funciona apenas com a família de constantes E_USER, e o padrão será E_USER_NOTICE.

Valor Retornado

Esta função retorna FALSE se for especificado error_type errado, TRUE se não.

Exemplos

Exemplo #1 Exemplo trigger_error()

Veja set_error_handler() para um exemplo mais extensivo.

<?php
if (assert($divisor == 0)) {
    trigger_error("Cannot divide by zero", E_USER_ERROR);
}
?>

Veja Também

  • error_reporting() - Define quais erros serão reportados
  • set_error_handler() - Define uma função do usuário para manipular erros
  • restore_error_handler() - Restaura a função anterior para gerenciamento de erro
  • As constantes de nível de erro

set_exception_handler
user_error
Funções para Manuseamento de Erros


Apelido para trigger_error

trigger_error
htscanner
Funções para Manuseamento de Erros
PHP Manual

user_error

(PHP 4, PHP 5)

user_error — Apelido para trigger_error()

Descrição

Esta função é um apelido para: trigger_error().

trigger_error
htscanner
Funções para Manuseamento de Erros


htaccess-like support for all SAPIs

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
user_error
Introdução
Afetando o comportamento do PHP


Introdução

The htscanner extension gives the possibility to use htaccess-like file to configure PHP per directory, just like apache's htaccess. It is especially useful with fastcgi (ISS5/6/7, lighttpd, etc.).

htscanner
Instalação/Configuração
htscanner


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
htscanner


Dependências

PHP version 5.2.0 or greater.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/htscanner

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

htscanner Opções de Configuração
Nome | Padrão | Modificável | Changelog
htscanner.config_file | ".htscanner" | PHP_INI_SYSTEM |
htscanner.default_docroot | "/" | PHP_INI_SYSTEM |
htscanner.default_ttl | "300" | PHP_INI_SYSTEM |
htscanner."stop_on_error" | "Off" | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

htscanner.config_file string

Filename to use as configuration file.

htscanner.default_docroot string

Default document root.

htscanner.default_ttl int

Cache time out for the configuration data, in seconds.

htscanner.stop_on_error int

Stop on error (parse error, cannot set an ini setting).

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
inclued
Instalação/Configuração


Inclusion hierarchy viewer

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Example that implements inclued into an application
  • inclued Funções
    • inclued_get_data — Get the inclued data
Tipos Resource
Introdução
Afetando o comportamento do PHP


Introdução

Traces through and dumps the hierarchy of file inclusions and class inheritance at runtime.

The files may have been included using include(), include_once(), require(), or require_once().

Class inheritance dependencies are also reported.

inclued
Instalação/Configuração
inclued


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
inclued


Dependências

PHP version 5.1.0 or greater.

The included gengraph.php file utilizes the » graphviz library, however, this is not required.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/inclued

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

inclued Opções de Configuração
Nome | Padrão | Modificável | Histórico
inclued.enabled | Off | PHP_INI_SYSTEM |
inclued.dumpdir | NULL | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

inclued.enabled bool

Whether or not to enable inclued.

inclued.dumpdir string

Location (path) to the directory that stores inclued files. If set, each PHP request will create a file. These files are serialized versions of what inclued_get_data() would produce, so may be unserialized with unserialize().

Cuidado

Because every request creates a file, this directory may fill up fast!

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
inclued


Exemplos

Índice

  • Example that implements inclued into an application
Constantes pré-definidas
Example that implements inclued into an application
inclued


Example that implements inclued into an application

This example demonstrates the process of implementing inclued into an existing application, and viewing the results.

Exemplo #1 Getting the data within the PHP application itself (function)

<?php
// File to store the inclued information
$fp = fopen('/tmp/wp.ser', 'w');
if ($fp) {
    $clue = inclued_get_data();
    if ($clue) {
        fwrite($fp, serialize($clue));
    }
    fclose($fp);
}
?>

Now that some data exists, it's time to make sense of it in the form of a graph. The inclued extension includes a PHP file named gengraph.php that creates a dot file that requires the » graphviz library. However, this form is not required.

Exemplo #2 Example use of gengraph.php

This example creates an image named inclued.png that shows the inclued data.

# First, create the dot file
$ php graphviz.php -i /tmp/wp.ser -o wp.dot

# Next, create the image
$ dot -Tpng -o inclued.png wp.dot

Exemplo #3 Listing data via inclued dumps (configuration)

When using the inclued.dumpdir directive, files (include clues) are dumped with every request. Here's one way to list those files, and unserialize() them.

<?php
$path = ini_get('inclued.dumpdir');
if ($path && is_dir($path)) {

    echo "Path: $path", PHP_EOL;

    $inclues = new GlobIterator($path . DIRECTORY_SEPARATOR . 'inclued*');

    if ($inclues->count() === 0) {
        echo 'No clues today', PHP_EOL;
        exit;
    }

    foreach ($inclues as $inclue) {

        echo 'Inclued file: ', $inclue->getFilename(), PHP_EOL;

        $data = file_get_contents($inclue->getPathname());
        if ($data) {
            $inc = unserialize($data);
            echo ' -- filename: ', $inc['request']['SCRIPT_FILENAME'], PHP_EOL;
            echo ' -- number of includes: ', count($inc['includes']), PHP_EOL;
        }
        echo PHP_EOL;
    }
} else {
    echo 'I am totally clueless today.', PHP_EOL;
}
?>

O exemplo acima irá imprimir algo similar a:

PATH: /tmp/inclued
Inclued file: inclued.56521.1
 -- filename: /Users/philip/test.php
 -- number of includes: 1

Inclued file: inclued.56563.1
 -- filename: /tmp/none.php
 -- number of includes: 0

Inclued file: inclued.56636.1
 -- filename: /tmp/three.php
 -- number of includes: 3

Exemplos
inclued Funções
Exemplos


inclued Funções

Índice

  • inclued_get_data — Get the inclued data
Example that implements inclued into an application
inclued_get_data
inclued


Get the inclued data

inclued Funções
Opções/Info do PHP
inclued Funções
PHP Manual

inclued_get_data

(PECL inclued >= 0.1.0)

inclued_get_data — Get the inclued data

Descrição

array inclued_get_data ( void )

Get the inclued data.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The inclued data.

Exemplos

Exemplo #1 inclued_get_data() example

See the inclued examples section for ways to create a graphs with this data.

<?php
include 'x.php';

$clue = inclued_get_data();

print_r($clue);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
  [includes] => Array
    (
      [0] => Array
        (
          [operation] => include
          [op_type] => 2
          [filename] => x.php
          [opened_path] => /tmp/x.php
          [fromfile] => /tmp/z.php
          [fromline] => 2
        )
    )
)

Veja Também

  • inclued examples
  • debug_backtrace() - Generates a backtrace
  • include() - include

inclued Funções
Opções/Info do PHP
inclued Funções


Informações e Opções do PHP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Opções/Info do PHP
    • assert_options — Define/Obtém várias opções do assert
    • assert — Confere se uma afirmação é FALSE
    • dl — Carrega uma extensão do PHP durante a execução
    • extension_loaded — Indica quando uma extensão esta carregada
    • gc_collect_cycles — Forces collection of any existing garbage cycles
    • gc_disable — Deactivates the circular reference collector
    • gc_enable — Activates the circular reference collector
    • gc_enabled — Returns status of the circular reference collector
    • get_cfg_var — Obtém o valor de uma opção de configuração do PHP
    • get_current_user — Obtém o nome do dono do script PHP atual
    • get_defined_constants — Retorna uma matriz associativa com os nomes de todas as constantes e seus valores
    • get_extension_funcs — Retorna uma matriz com os nomes de funções de um módulo
    • get_include_path — Obtém a opção de configuração include_path atual
    • get_included_files — Retorna uma matriz com os nomes dos arquivos incluídos ou requeridos
    • get_loaded_extensions — Retorna uma matriz com os nomes de todos os módulos compilados e carregados
    • get_magic_quotes_gpc — Obtém a configuração atual de magic quotes gpc
    • get_magic_quotes_runtime — Obtém a configuração ativa para magic_quotes_runtime
    • get_required_files — Sinônimo de get_included_files
    • getenv — Obtém uma variável de ambiente
    • getlastmod — Obtém o tempo da última modificação na pagina
    • getmygid — Obtém o GID do dono do script PHP
    • getmyinode — Obtém o inode do script atual
    • getmypid — Obtém o ID do processo PHP
    • getmyuid — Obtém o UID do dono do script PHP
    • getopt — Obtém opções da lista de argumentos da linha de comando
    • getrusage — Obtém a utilização de recursos
    • ini_alter — Sinônimo de ini_set
    • ini_get_all — Obtém todas as opções de configuração
    • ini_get — Obtém o valor de uma opção de configuração
    • ini_restore — Restaura o valor de uma opção de configuração
    • ini_set — Define o valor de uma opção de configuração
    • magic_quotes_runtime — Sinônimo de set_magic_quotes_runtime
    • main — Marcador para main
    • memory_get_peak_usage — Returns the peak of memory allocated by PHP
    • memory_get_usage — Retorna a quantidade de memória alocada para PHP
    • php_ini_loaded_file — Retrieve a path to the loaded php.ini file
    • php_ini_scanned_files — Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional
    • php_logo_guid — Obtém o guid do logo
    • php_sapi_name — Retorna o tipo de interface entre o servidor web e o PHP
    • php_uname — Retorna informação sobre o sistema operacional que o PHP foi construído
    • phpcredits — Mostra os créditos pelo PHP
    • phpinfo — Mostra muitas informações sobre o PHP
    • phpversion — Obtém a versão atual do PHP
    • putenv — Define o valor de uma variável de ambiente
    • restore_include_path — Restaura o valor da opção de configuração include_path
    • set_include_path — Define a opção de configuração include_path
    • set_magic_quotes_runtime — Define a configuração atual para magic_quotes_runtime
    • set_time_limit — Limita o tempo de execução do script
    • sys_get_temp_dir — Returns directory path used for temporary files
    • version_compare — Compares two "PHP-standardized" version number strings
    • zend_logo_guid — Retorna o guid Zend
    • zend_thread_id — Returns a unique identifier for the current thread
    • zend_version — Obtém a versão da Zend engine que esta sendo executada
inclued_get_data
Introdução
Afetando o comportamento do PHP


Introdução

Estas funções permitem a você obter muitas informações sobre o PHP em si, ex. Configurações em tempo de execução, extensões carregadas, versão e muito mais. Você também encontrará funções para definir opções durante a execução. A provavelmente mais conhecida função do PHP - phpinfo() - pode ser encontrada aqui.

Opções/Info do PHP
Instalação/Configuração
Opções/Info do PHP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Opções/Info do PHP


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

PHP opções e informações de configuração
Nome | Padrão | Modificável | Lista de mudanças
assert.active | "1" | PHP_INI_ALL |
assert.bail | "0" | PHP_INI_ALL |
assert.warning | "1" | PHP_INI_ALL |
assert.callback | NULL | PHP_INI_ALL |
assert.quiet_eval | "0" | PHP_INI_ALL |
enable_dl | "1" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
max_execution_time | "30" | PHP_INI_ALL |
max_input_time | "-1" | PHP_INI_PERDIR | Disponível a partir do PHP 4.3.0.
max_input_nesting_level | "64" | PHP_INI_PERDIR | Disponível a partir do PHP 4.4.8. Removido no PHP 5.0.0.
magic_quotes_gpc | "1" | PHP_INI_PERDIR | PHP_INI_ALL in PHP <= 4.2.3. Remido no PHP 6.0.0.
magic_quotes_runtime | "0" | PHP_INI_ALL | Removido no PHP 6.0.0.
zend.enable_gc | "1" | PHP_INI_ALL | Disponível desde PHP 5.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

assert.active boolean

Ativa a comparação assert().

assert.bail boolean

Termina a execução do script no caso de uma afirmação(assert) falhar.

assert.warning boolean

Mostra um aviso PHP para cada afirmação(assert) que falhar.

assert.callback string

Função do usuário a ser executado no caso de uma afirmação(assert) falhar.

assert.quiet_eval boolean

Usa o que esta definido atualmente para a função error_reporting() durante a avaliação da afirmação. Se ativado, não são mostrados erros (error_reporting(0) implícito) durante a avaliação. Se desativado, os erros são mostrados de acordo com as definições de error_reporting()

enable_dl boolean

Esta diretiva somente é realmente útil na versão do PHP como módulo do Apache. Você pode mudar o carregamento dinâmico de extensões do PHP com dl() on e off para cada servidor virtual ou por diretório.

A principal razão para mudar o carregamento dinâmico para off é segurança. Com o carregamento dinâmico é possível ignorar todas as restrições de open_basedir. O padrão é permitir o carregamento dinâmico exceto quando usando o safe mode. No safe mode, é sempre impossível usar dl().

max_execution_time integer

Isto define o limite de tempo de execução de um script antes que seja terminado pelo interpretador. Isto ajuda a prevenir que scripts mal escritos serem executados indefinidamente pelo servidor. O padrão é 30. Ao executar o PHP a partir de linha de comando o valor padrão é 0.

O limite de tempo de execução não é afetado por chamadas do sistema, funções de streams, etc. Por favor veja a função set_time_limit() para maiores detalhes.

Você não pode mudar esta definição com a função ini_set() quando estiver executando em safe mode. O único meio de contornar é desativar o safe mode ou mudar o limite de tempo no php.ini.

Seu servidor web pode ter outras configurações de limite de tempo que também interrompar a execução do PHP. O apache tem uma diretiva Timeout e o IIS tem uma função de limite de tempo CGI. O padrão de ambas é 300 segundos. Veja a documentação do seu servidor web para os detalhes especificos.

max_input_time integer

Isto define o tempo máximo em segundos que é permitido para analisar dados de entrada, como POST, GET e upload de arquivos.

max_input_nesting_level integer

Define a profundidade máxima aninhada de variáveis de entrada (i.e. $_GET, $_POST..)

magic_quotes_gpc boolean
Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

Define o estado para as aspas mágicas para operações GPC (Get/Post/Cookie). Quando as aspas mágicas estiverem em on, todas ' (aspas simples), " (aspas duplas), \ (barras invertidas) e NULL's são escapados com uma barra invertida automaticamente.

Nota:

No PHP 4 $_ENV também é escapada.

Nota:

Se a diretiva magic_quotes_sybase também estiver em ON ela irá sobrescrever completamente magic_quotes_gpc. Tendo ambas diretivas ativadas faz com que apenas as aspas simples sejam escapadas como ''. Aspas duplas, barras invertidas e NULL's irão permanecer intocados e não escapados.

Veja também get_magic_quotes_gpc().

magic_quotes_runtime boolean
Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

Se magic_quotes_runtime estiver ativado, a maioria das funções que retornarem dados de qualquer fonte externa incluindo banco de dados e arquivos de texto terão as aspas escapadas com uma barra invertida. Se magic_quotes_sybase também estiver em on, uma aspa simples é escapada com uma aspa simples ao invés de uma barra invertida.

zend.enable_gc boolean

Ativa ou desativa o coletor de referencia circular.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.

Constantes pré-definidas da phpcredits()
Constante | Valor | Descrição
CREDITS_GROUP | 1 | Uma lista do núcleo de desenvolvedores
CREDITS_GENERAL | 2 | Créditos em geral: design e conceito da linguagem, autores do PHP e do módulo SAPI.
CREDITS_SAPI | 4 | Uma lista dos módulos API dos servidores para o PHP, e seus autores.
CREDITS_MODULES | 8 | Uma lista dos módulos de extensão para o PHP, e seus autores.
CREDITS_DOCS | 16 | Os créditos para a equipe de documentação.
CREDITS_FULLPAGE | 32 | Normalmente usada em combinação com as outras opções. Indica que uma pagina HTML completa precisa ser mostrada incluindo a informação indicada pelas outras opções.
CREDITS_QA | 64 | Os créditos para a equipe de controle de qualidade.
CREDITS_ALL | -1 | Todos os créditos, equivalente a usar: CREDITS_DOCS + CREDITS_GENERAL + CREDITS_GROUP + CREDITS_MODULES + CREDITS_QA CREDITS_FULLPAGE. Gera uma pagina HTML completa com as tags apropriadas. Este é o valor padrão.
Constantes da phpinfo()
Constante | Valor | Descrição
INFO_GENERAL | 1 | A linha da configuração, localização do php.ini, data de construção, servidor web, sistema e mais.
INFO_CREDITS | 2 | Créditos do PHP. Veja também phpcredits().
INFO_CONFIGURATION | 4 | Valores atuais e principais para as diretivas de configuração do PHP. Veja também ini_get().
INFO_MODULES | 8 | Módulos carregados e suas respectivas configurações.
INFO_ENVIRONMENT | 16 | Informações das variáveis de ambiente que também estão disponíveis em $_ENV.
INFO_VARIABLES | 32 | Mostra todas as variáveis pré-definidas a partir de EGPCS (Ambiente, GET, POST, Cookie, Server).
INFO_LICENSE | 64 | Informação sobre a licença do PHP. Veja também » a faq sobre licença.
INFO_ALL | -1 | Mostra tudo acima. Este é o valor padrão.
ASSERT_ACTIVE (integer)
ASSERT_CALLBACK (integer)
ASSERT_BAIL (integer)
ASSERT_WARNING (integer)
ASSERT_QUIET_EVAL (integer)
Tipos Resource
Funções para Opções/Info do PHP
Opções/Info do PHP


Funções para Opções/Info do PHP

Índice

  • assert_options — Define/Obtém várias opções do assert
  • assert — Confere se uma afirmação é FALSE
  • dl — Carrega uma extensão do PHP durante a execução
  • extension_loaded — Indica quando uma extensão esta carregada
  • gc_collect_cycles — Forces collection of any existing garbage cycles
  • gc_disable — Deactivates the circular reference collector
  • gc_enable — Activates the circular reference collector
  • gc_enabled — Returns status of the circular reference collector
  • get_cfg_var — Obtém o valor de uma opção de configuração do PHP
  • get_current_user — Obtém o nome do dono do script PHP atual
  • get_defined_constants — Retorna uma matriz associativa com os nomes de todas as constantes e seus valores
  • get_extension_funcs — Retorna uma matriz com os nomes de funções de um módulo
  • get_include_path — Obtém a opção de configuração include_path atual
  • get_included_files — Retorna uma matriz com os nomes dos arquivos incluídos ou requeridos
  • get_loaded_extensions — Retorna uma matriz com os nomes de todos os módulos compilados e carregados
  • get_magic_quotes_gpc — Obtém a configuração atual de magic quotes gpc
  • get_magic_quotes_runtime — Obtém a configuração ativa para magic_quotes_runtime
  • get_required_files — Sinônimo de get_included_files
  • getenv — Obtém uma variável de ambiente
  • getlastmod — Obtém o tempo da última modificação na pagina
  • getmygid — Obtém o GID do dono do script PHP
  • getmyinode — Obtém o inode do script atual
  • getmypid — Obtém o ID do processo PHP
  • getmyuid — Obtém o UID do dono do script PHP
  • getopt — Obtém opções da lista de argumentos da linha de comando
  • getrusage — Obtém a utilização de recursos
  • ini_alter — Sinônimo de ini_set
  • ini_get_all — Obtém todas as opções de configuração
  • ini_get — Obtém o valor de uma opção de configuração
  • ini_restore — Restaura o valor de uma opção de configuração
  • ini_set — Define o valor de uma opção de configuração
  • magic_quotes_runtime — Sinônimo de set_magic_quotes_runtime
  • main — Marcador para main
  • memory_get_peak_usage — Returns the peak of memory allocated by PHP
  • memory_get_usage — Retorna a quantidade de memória alocada para PHP
  • php_ini_loaded_file — Retrieve a path to the loaded php.ini file
  • php_ini_scanned_files — Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional
  • php_logo_guid — Obtém o guid do logo
  • php_sapi_name — Retorna o tipo de interface entre o servidor web e o PHP
  • php_uname — Retorna informação sobre o sistema operacional que o PHP foi construído
  • phpcredits — Mostra os créditos pelo PHP
  • phpinfo — Mostra muitas informações sobre o PHP
  • phpversion — Obtém a versão atual do PHP
  • putenv — Define o valor de uma variável de ambiente
  • restore_include_path — Restaura o valor da opção de configuração include_path
  • set_include_path — Define a opção de configuração include_path
  • set_magic_quotes_runtime — Define a configuração atual para magic_quotes_runtime
  • set_time_limit — Limita o tempo de execução do script
  • sys_get_temp_dir — Returns directory path used for temporary files
  • version_compare — Compares two "PHP-standardized" version number strings
  • zend_logo_guid — Retorna o guid Zend
  • zend_thread_id — Returns a unique identifier for the current thread
  • zend_version — Obtém a versão da Zend engine que esta sendo executada
Constantes pré-definidas
assert_options
Opções/Info do PHP


Define/Obtém várias opções do assert

Funções para Opções/Info do PHP
assert
Funções para Opções/Info do PHP
PHP Manual

assert_options

(PHP 4, PHP 5)

assert_options — Define/Obtém várias opções do assert

Descrição

mixed assert_options ( int $what [, mixed $value ] )

Define as várias opções de controle para assert() ou apenas consulta as definições atuais.

Parâmetros

what

Opções Assert
opção | parâmetro do ini | padrão | descrição
ASSERT_ACTIVE | assert.active | 1 | ativa a avaliação de assert()
ASSERT_WARNING | assert.warning | 1 | mostra um aviso do PHP para cada afirmação que falhar
ASSERT_BAIL | assert.bail | 0 | termina a execução do script quando uma afirmação falhar
ASSERT_QUIET_EVAL | assert.quiet_eval | 0 | desativa error_reporting durante a avaliação da expressão
ASSERT_CALLBACK | assert.callback | (NULL) | função do usuário para chamar quando uma afirmação falhar

value

Um valor opcional novo para a opção.

Valor Retornado

Retorna a definição original de qualquer opção ou FALSE em caso de erro.

Funções para Opções/Info do PHP
assert
Funções para Opções/Info do PHP


Confere se uma afirmação é FALSE

assert_options
dl
Funções para Opções/Info do PHP
PHP Manual

assert

(PHP 4, PHP 5)

assert — Confere se uma afirmação é FALSE

Descrição

bool assert ( mixed $assertion )

assert() se a afirmação assertion é falsa e toma a ação apropriada.

Se o parâmetro assertion é dado como uma string ela será avaliada como código PHP pela função assert(). As vantagens da string assertion são menor sobrecarga quando conferir se a afirmação é verdadeira e mensagens contendo assertion quando a afirmação é falsa. Isto indica que se você passar uma condição booleana(verdadeiro ou falso) como assertion esta condição não será mostrado como parâmetro da função de afirmação, o qual você deve ter definido com a função assert_options(), a condição é convertida para uma string antes que a função gerenciadora seja chamada e o booleano FALSE é convertido para uma string vazia.

Afirmações devem ser usadas apenas com a intenção de eliminar erros. Você deve usa-las para testar condições que devam ser sempre TRUE e que indiquem algum erro de programação se não for ou para verificar a existência de certas coisas como a disponibilidade de funções de algum módulo ou limites e recursos do sistema.

Afirmações não devem ser usadas para operações em tempo de execução normais como para conferir certo valor de entrada. Como uma dica de uso, o seu código deve funcionar corretamente mesmo que o teste de afirmações não esteja ativado.

O funcionamento de assert() pode ser configurado por assert_options() ou pelas configurações descritas na pagina do manual para estas funções.

A função assert_options() e/ou a diretiva de configuração ASSERT_CALLBACK permitem configurar uma função para ser chamada no caso de falha da afirmação.

Funções chamadas a partir de falhas de assert() são particularmente úteis quando estiver criando sistemas automáticos para testes porque permitem que você capture facilmente o código passado para a afirmação em conjunto com informações sobre onde a afirmação foi feita. Enquanto esta informação pode ser capturada por outros métodos, usar afirmações torna muito mais fácil e rápido!

A função utilizada para processar as afirmações devem aceitar três argumentos. O primeiro irá conter o arquivo onde houve a falha na afirmação. O segundo argumento irá conter a linha onde a afirmação falhou e o terceiro argumento irá conter a expressão que falhou (se houver alguma - valores literais como 1 ou "dois" não serão passados por este argumento).

Parâmetros

assertion

A afirmação.

Valor Retornado

FALSE se a afirmação for falsa, TRUE se não.

Exemplos

Exemplo #1 Gerenciando uma afirmação que falhou com uma função do usuário

<?php
// Ativa as afirmações e as deixa quietas
assert_options(ASSERT_ACTIVE, 1);
assert_options(ASSERT_WARNING, 0);
assert_options(ASSERT_QUIET_EVAL, 1);

// Cria a função do usuário que será chamada quando a afirmação falhar
function my_assert_handler($file, $line, $code)
{
    echo "<hr>Afirmação falhou:
        Arquivo '$file'<br />
        Linha '$line'<br />
        Código '$code'<br /><hr />";
}

// Define a função
assert_options(ASSERT_CALLBACK, 'my_assert_handler');

//  Faz uma afirmação que irá falhar
assert('mysql_query ("")');
?>

assert_options
dl
Funções para Opções/Info do PHP


Carrega uma extensão do PHP durante a execução

assert
extension_loaded
Funções para Opções/Info do PHP
PHP Manual

dl

(PHP 4, PHP 5)

dl — Carrega uma extensão do PHP durante a execução

Descrição

int dl ( string $library )

Carrega a extensão do PHP indicada pelo parâmetro library.

Use extension_loaded() para testar se uma extensão esta disponível ou não. Isto funciona para extensões internas e para aquelas carregadas dinamicamente (através do php.ini ou da função dl()).

Parâmetros

library

Este parâmetro é somente o nome do arquivo da exdtensão a carregar o qual também depende da sua plataforma. Por exemplo, a extensão sockets (se compilada como módulo compartilhado, não o padrão!) seria chamada sockets.so em plataformas Unix enquanto é chamada php_sockets.dll na plataforma Windows.

O diretório a partir do qual a extensão é carregada depende da sua plataforma:

Windows - Se for explicitamente definido no php.ini, a extensão é carregada a partir de c:\php4\extensions\ por padrão.

Unix - Se não for explicitamente definido no php.ini, o diretório padrão das extensões depende de

  • se o PHP foi compilado com --enable-debug ou não
  • se o PHP foi compilado com suporte (experimental) ZTS (Zend Thread Safety) ou não
  • O ZEND_MODULE_API_NO (o número Zend internal module API, o que é basicamente a data onde houve uma mudança maior na API ex. 20010901)
Levando em conta o acima, o diretório padrão poderá ser <install-dir>/lib/php/extensions/ <debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO, e.g. /usr/local/php/lib/php/extensions/debug-non-zts-20010901 or /usr/local/php/lib/php/extensions/no-debug-zts-20010901.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Se a funcionalidade de carregar os módulos não estiver disponível (veja a nota) ou foi desabilitada (ou por desativar enable_dl ou por ativar safe mode no php.ini) um E_ERROR é emitido e a execução é parada. Se dl() falhar porque a bliblioteca especificada mão puder ser carregada, em adição a FALSE uma mensagem E_WARNING é emitida.

Exemplos

Exemplo #1 Exemplosdl()

<?php
// Example loading an extension based on OS
if (!extension_loaded('sqlite')) {
    if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
        dl('php_sqlite.dll');
    } else {
        dl('sqlite.so');
    }
}

// Or, the PHP_SHLIB_SUFFIX constant is available as of PHP 4.3.0
if (!extension_loaded('sqlite')) {
    $prefix = (PHP_SHLIB_SUFFIX === 'dll') ? 'php_' : '';
    dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX);
}
?>

Notas

Nota:

dl() não e suportado em servidores multi-tarefa. Useextensions no seu php.ini quando estiver operando em um ambiente assim. Em todo o caso, as versões CGI e CLI não são afetadas!

Nota:

A partir do PHP 5, a função dl() esta obsoleta em todas as SAPI exceto CLI. Use o método de Diretivas para Carregar Extensões ao invés.

Nota:

Desde o PHP 6 esta função esta desabilitada em todas as SAPIs, exceto CLI, CGI e embutida.

Nota:

dl() diferencia maiúsculas e minúsculas em plataformas Unix.

Nota: Esta função é desabilitada quando o PHP é executado em safe-mode

Veja Também

  • Diretivas para Carregar Extensões
  • extension_loaded() - Indica quando uma extensão esta carregada

assert
extension_loaded
Funções para Opções/Info do PHP


Indica quando uma extensão esta carregada

dl
gc_collect_cycles
Funções para Opções/Info do PHP
PHP Manual

extension_loaded

(PHP 4, PHP 5)

extension_loaded — Indica quando uma extensão esta carregada

Descrição

bool extension_loaded ( string $name )

Descobre se uma extensão esta carregada.

Parâmetros

name

O nome da extensão.

Você poderá ver os nomes de várias extensões usando phpinfo() ou se estiver usando a versão CGI ou CLI do PHP você poderá usar a opção -m para listar todas as extensões disponíveis:

$ php -m
[PHP Modules]
xml
tokenizer
standard
sockets
session
posix
pcre
overload
mysql
mbstring
ctype

[Zend Modules]

Valor Retornado

Retorna true TRUE se a extensão identificada por name esta carregada, FALSE se não.

Exemplos

Exemplo #1 Exemplo extension_loaded()

<?php
if (!extension_loaded('gd')) {
    if (!dl('gd.so')) {
        exit;
    }
}
?>

Notas

Nota:

extension_loaded() usa o nome interno da extensão para testar se uma extensão esta disponível ou não. A maioria dos nomes internos esta escrita em minúsculas mas algumas extensões podem ter letras maiúsculas. Tenha cuidado que esta função diferencia maiúsculas e minúsculas!

Veja Também

  • get_loaded_extensions() - Retorna uma matriz com os nomes de todos os módulos compilados e carregados
  • get_extension_funcs() - Retorna uma matriz com os nomes de funções de um módulo
  • phpinfo() - Mostra muitas informações sobre o PHP
  • dl() - Carrega uma extensão do PHP durante a execução

dl
gc_collect_cycles
Funções para Opções/Info do PHP


Forces collection of any existing garbage cycles

extension_loaded
gc_disable
Funções para Opções/Info do PHP
PHP Manual

gc_collect_cycles

(PHP 5 >= 5.3.0)

gc_collect_cycles — Forces collection of any existing garbage cycles

Descrição

int gc_collect_cycles ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Forces collection of any existing garbage cycles.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns number of collected cycles.

extension_loaded
gc_disable
Funções para Opções/Info do PHP


Deactivates the circular reference collector

gc_collect_cycles
gc_enable
Funções para Opções/Info do PHP
PHP Manual

gc_disable

(PHP 5 >= 5.3.0)

gc_disable — Deactivates the circular reference collector

Descrição

void gc_disable ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Deactivates the circular reference collector.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

gc_collect_cycles
gc_enable
Funções para Opções/Info do PHP


Activates the circular reference collector

gc_disable
gc_enabled
Funções para Opções/Info do PHP
PHP Manual

gc_enable

(PHP 5 >= 5.3.0)

gc_enable — Activates the circular reference collector

Descrição

void gc_enable ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Activates the circular reference collector.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

gc_disable
gc_enabled
Funções para Opções/Info do PHP


Returns status of the circular reference collector

gc_enable
get_cfg_var
Funções para Opções/Info do PHP
PHP Manual

gc_enabled

(PHP 5 >= 5.3.0)

gc_enabled — Returns status of the circular reference collector

Descrição

bool gc_enabled ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns status of the circular reference collector.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the garbage collector is enabled, FALSE otherwise.

gc_enable
get_cfg_var
Funções para Opções/Info do PHP


Obtém o valor de uma opção de configuração do PHP

gc_enabled
get_current_user
Funções para Opções/Info do PHP
PHP Manual

get_cfg_var

(PHP 4, PHP 5)

get_cfg_var — Obtém o valor de uma opção de configuração do PHP

Descrição

string get_cfg_var ( string $varname )

Retorna o valor atual da variável de configuração do PHP especificada por varname, ou FALSE se houver um erro.

Não irá retornar informação de configuração definidas quando o PHP foi compilado, ou lidas a partir de um arquivo de configuração do PHP (usando as diretivas php3).

Para saber se um sistema esta usando um arquivo de configuração, tente obter o valor da configuração cfg_file_path. Se estiver disponível então um arquivo de configuração esta sendo usado..

Veja também ini_get().

gc_enabled
get_current_user
Funções para Opções/Info do PHP


Obtém o nome do dono do script PHP atual

get_cfg_var
get_defined_constants
Funções para Opções/Info do PHP
PHP Manual

get_current_user

(PHP 4, PHP 5)

get_current_user — Obtém o nome do dono do script PHP atual

Descrição

string get_current_user ( void )

Retorna o nome do dono do script PHP atual.

Valor Retornado

Retorna o username como uma string.

Veja Também

  • getmyuid() - Obtém o UID do dono do script PHP
  • getmygid() - Obtém o GID do dono do script PHP
  • getmypid() - Obtém o ID do processo PHP
  • getmyinode() - Obtém o inode do script atual
  • getlastmod() - Obtém o tempo da última modificação na pagina

get_cfg_var
get_defined_constants
Funções para Opções/Info do PHP


Retorna uma matriz associativa com os nomes de todas as constantes e seus valores

get_current_user
get_extension_funcs
Funções para Opções/Info do PHP
PHP Manual

get_defined_constants

(PHP 4 >= 4.1.0, PHP 5)

get_defined_constants — Retorna uma matriz associativa com os nomes de todas as constantes e seus valores

Descrição

array get_defined_constants ([ mixed $categorize ] )

Retorna os nomes e os valores de todas as constantes definidas atualmente. Isto inclui aquelas criadas pelas extensões assim como as criadas com a função define().

Parâmetros

categorize

Pode ser passado, modificando o retorno da função para um array multidimensional onde as categorias são as chaves da primeira dimensão e constantes e seus valores na segunda dimensão.

<?php
define("MY_CONSTANT", 1);
print_r(get_defined_constants(true));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [internal] => Array
        (
            [E_ERROR] => 1
            [E_WARNING] => 2
            [E_PARSE] => 4
            [E_NOTICE] => 8
            [E_CORE_ERROR] => 16
            [E_CORE_WARNING] => 32
            [E_COMPILE_ERROR] => 64
            [E_COMPILE_WARNING] => 128
            [E_USER_ERROR] => 256
            [E_USER_WARNING] => 512
            [E_USER_NOTICE] => 1024
            [E_ALL] => 2047
            [TRUE] => 1
        )

    [pcre] => Array
        (
            [PREG_PATTERN_ORDER] => 1
            [PREG_SET_ORDER] => 2
            [PREG_OFFSET_CAPTURE] => 256
            [PREG_SPLIT_NO_EMPTY] => 1
            [PREG_SPLIT_DELIM_CAPTURE] => 2
            [PREG_SPLIT_OFFSET_CAPTURE] => 4
            [PREG_GREP_INVERT] => 1
        )

    [user] => Array
        (
            [MY_CONSTANT] => 1
        )

)

Nota:

O valor do parâmetro categorize é irrelevante, somente fornecê-lo é considerado.

Valor Retornado

Histórico

Versão | Descrição
5.0.0 | O parâmetro categorize foi adicionado.

Exemplos

Exemplo #1 Exemplo da get_defined_constants()

<?php
print_r(get_defined_constants());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [E_ERROR] => 1
    [E_WARNING] => 2
    [E_PARSE] => 4
    [E_NOTICE] => 8
    [E_CORE_ERROR] => 16
    [E_CORE_WARNING] => 32
    [E_COMPILE_ERROR] => 64
    [E_COMPILE_WARNING] => 128
    [E_USER_ERROR] => 256
    [E_USER_WARNING] => 512
    [E_USER_NOTICE] => 1024
    [E_ALL] => 2047
    [TRUE] => 1
)

Veja Também

  • defined() - Confere se uma constante existe
  • get_loaded_extensions() - Retorna uma matriz com os nomes de todos os módulos compilados e carregados
  • get_defined_functions() - Retorna um array de todas as funções definidas
  • get_defined_vars() - Retorna o array com todas variáveis definidas

get_current_user
get_extension_funcs
Funções para Opções/Info do PHP


Retorna uma matriz com os nomes de funções de um módulo

get_defined_constants
get_include_path
Funções para Opções/Info do PHP
PHP Manual

get_extension_funcs

(PHP 4, PHP 5)

get_extension_funcs — Retorna uma matriz com os nomes de funções de um módulo

Descrição

array get_extension_funcs ( string $module_name )

Esta função retorna o nome de todas as funções definidas no módulo indicado por module_name.

Parâmetros

module_name

O nome do módulo.

Nota:

Este parâmetro precisa ser em minúsculo.

Valor Retornado

Retorna um array com todas as funções, ou FALSE se module_name não for uma extensão válida.

Exemplos

Exemplo #1 Imprime as funções de XML

<?php
print_r(get_extension_funcs("xml"));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => xml_parser_create
    [1] => xml_parser_create_ns
    [2] => xml_set_object
    [3] => xml_set_element_handler
    [4] => xml_set_character_data_handler
    [5] => xml_set_processing_instruction_handler
    [6] => xml_set_default_handler
    [7] => xml_set_unparsed_entity_decl_handler
    [8] => xml_set_notation_decl_handler
    [9] => xml_set_external_entity_ref_handler
    [10] => xml_set_start_namespace_decl_handler
    [11] => xml_set_end_namespace_decl_handler
    [12] => xml_parse
    [13] => xml_parse_into_struct
    [14] => xml_get_error_code
    [15] => xml_error_string
    [16] => xml_get_current_line_number
    [17] => xml_get_current_column_number
    [18] => xml_get_current_byte_index
    [19] => xml_parser_free
    [20] => xml_parser_set_option
    [21] => xml_parser_get_option
    [22] => utf8_encode
    [23] => utf8_decode
)

Veja Também

  • get_loaded_extensions() - Retorna uma matriz com os nomes de todos os módulos compilados e carregados

get_defined_constants
get_include_path
Funções para Opções/Info do PHP


Obtém a opção de configuração include_path atual

get_extension_funcs
get_included_files
Funções para Opções/Info do PHP
PHP Manual

get_include_path

(PHP 4 >= 4.3.0, PHP 5)

get_include_path — Obtém a opção de configuração include_path atual

Descrição

string get_include_path ( void )

Obtém o valor atual da opção de configuração include_path.

Valor Retornado

Retorna o caminho, como uma string.

Exemplos

Exemplo #1 Exemplo get_include_path()

<?php
// Funciona a partir do PHP 4.3.0
echo get_include_path();

// Funciona em todas as versões do PHP
echo ini_get('include_path');
?>

Veja Também

  • ini_get() - Obtém o valor de uma opção de configuração
  • restore_include_path() - Restaura o valor da opção de configuração include_path
  • set_include_path() - Define a opção de configuração include_path
  • include() - include

get_extension_funcs
get_included_files
Funções para Opções/Info do PHP


Retorna uma matriz com os nomes dos arquivos incluídos ou requeridos

get_include_path
get_loaded_extensions
Funções para Opções/Info do PHP
PHP Manual

get_included_files

(PHP 4, PHP 5)

get_included_files — Retorna uma matriz com os nomes dos arquivos incluídos ou requeridos

Descrição

array get_included_files ( void )

Retorna uma matriz com os nomes de todos os arquivos que foram incluídos usando
as funções include(),
include_once(), require()
ou require_once().

O script chamado originalmente é considerado um "arquivo incluído", assim será listado junto com os arquivos referenciados por include() e família.

Arquivos que forem incluídos ou requeridos varias vezes aparecem somente uma vez na matriz.

Nota:

Arquivos incluídos usando a diretiva de configuração auto_prepend_file não são incluídos na matriz retornada.

Exemplo #1 Exemplo get_included_files() (abc.php)

<?php

include 'test1.php';
include_once 'test2.php';
require 'test3.php';
require_once 'test4.php';

$included_files = get_included_files();

foreach ($included_files as $filename) {
    echo "$filename\n";
}

?>

Irá gerar a seguinte saída:

abc.php
test1.php
test2.php
test3.php
test4.php

Nota:

No PHP 4.0.1pl2 e versões anteriores get_included_files() assume que os arquivos requeridos terminem com a extensão .php; outras extensões não serão retornadas. A matriz retornada por get_included_files() era uma matriz associativa e listava somente os arquivos incluídos pelas funções include() e include_once().

Veja também
include(),
include_once(),
require(),
require_once() e
get_required_files().

get_include_path
get_loaded_extensions
Funções para Opções/Info do PHP


Retorna uma matriz com os nomes de todos os módulos compilados e carregados

get_included_files
get_magic_quotes_gpc
Funções para Opções/Info do PHP
PHP Manual

get_loaded_extensions

(PHP 4, PHP 5)

get_loaded_extensions — Retorna uma matriz com os nomes de todos os módulos compilados e carregados

Descrição

array get_loaded_extensions ([ bool $zend_extensions = FALSE ] )

Retorna uma matriz com os nomes de todos os módulos compilados e carregados no interpretador PHP.

Parâmetros

zend_extensions

Retorna zend_extensions ou não, padrão é FALSE (não há lista de zend_extensions).

Valor Retornado

Retorna um array indexado de todos os nomes de módulos.

Histórico

Versão | Descrição
5.2.4 | O parâmetro opcional zend_extensions foi adicionado

Exemplos

Exemplo #1 Exemplo da get_loaded_extensions()

<?php
print_r(get_loaded_extensions());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
   [0] => xml
   [1] => wddx
   [2] => standard
   [3] => session
   [4] => posix
   [5] => pgsql
   [6] => pcre
   [7] => gd
   [8] => ftp
   [9] => db
   [10] => calendar
   [11] => bcmath
)

Veja Também

  • get_extension_funcs() - Retorna uma matriz com os nomes de funções de um módulo
  • extension_loaded() - Indica quando uma extensão esta carregada
  • dl() - Carrega uma extensão do PHP durante a execução
  • phpinfo() - Mostra muitas informações sobre o PHP

get_included_files
get_magic_quotes_gpc
Funções para Opções/Info do PHP


Obtém a configuração atual de magic quotes gpc

get_loaded_extensions
get_magic_quotes_runtime
Funções para Opções/Info do PHP
PHP Manual

get_magic_quotes_gpc

(PHP 4, PHP 5)

get_magic_quotes_gpc — Obtém a configuração atual de magic quotes gpc

Descrição

int get_magic_quotes_gpc ( void )

Retorna a configuração atual definida para magic_quotes_gpc

Lembre-se que a configuração magic_quotes_gpc não irá funcionar em runtime.

Para mais informação sobre magic_quotes, veja a seção de segurança.

Valor Retornado

Retorna 0 se magic quotes gpc está off, 1 caso contrário.

Exemplos

Exemplo #1 Exemplo get_magic_quotes_gpc()

<?php
echo get_magic_quotes_gpc();         // 1
echo $_POST['lastname'];             // O\'reilly
echo addslashes($_POST['lastname']); // O\\\'reilly

if (!get_magic_quotes_gpc()) {
    $lastname = addslashes($_POST['lastname']);
} else {
    $lastname = $_POST['lastname'];
}

echo $lastname; // O\'reilly
$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";
?>

Notas

Nota:

Se a diretiva magic_quotes_sybase está ON irá completamente sobreescrever magic_quotes_gpc. Sendo assim quando get_magic_quotes_gpc() retorna TRUE nenhuma as dupla, barra invertida ou NUL's ganharão escape. Somente aspas simples ganharão escape. Neste caso teremos: ''

Veja Também

  • addslashes() - Adiciona barras invertidas a uma string
  • stripslashes() - Desfaz o efeito de addslashes
  • get_magic_quotes_runtime() - Obtém a configuração ativa para magic_quotes_runtime
  • ini_get() - Obtém o valor de uma opção de configuração

get_loaded_extensions
get_magic_quotes_runtime
Funções para Opções/Info do PHP


Obtém a configuração ativa para magic_quotes_runtime

get_magic_quotes_gpc
get_required_files
Funções para Opções/Info do PHP
PHP Manual

get_magic_quotes_runtime

(PHP 4, PHP 5)

get_magic_quotes_runtime — Obtém a configuração ativa para magic_quotes_runtime

Descrição

int get_magic_quotes_runtime ( void )

Retorna a configuração ativa para magic_quotes_runtime.

Valor Retornado

Retorna 0 se magic quotes runtime está off, 1 caso contrário.

Veja Também

  • get_magic_quotes_gpc() - Obtém a configuração atual de magic quotes gpc
  • set_magic_quotes_runtime() - Define a configuração atual para magic_quotes_runtime

get_magic_quotes_gpc
get_required_files
Funções para Opções/Info do PHP


Sinônimo de get_included_files

get_magic_quotes_runtime
getenv
Funções para Opções/Info do PHP
PHP Manual

get_required_files

(PHP 4, PHP 5)

get_required_files — Sinônimo de get_included_files()

Descrição

Esta função é um apelido para: get_included_files().

get_magic_quotes_runtime
getenv
Funções para Opções/Info do PHP


Obtém uma variável de ambiente

get_required_files
getlastmod
Funções para Opções/Info do PHP
PHP Manual

getenv

(PHP 4, PHP 5)

getenv — Obtém uma variável de ambiente

Descrição

string getenv ( string $varname )

Retorna o nome da variável de ambiente varname, ou FALSE em caso de erro.

<?php
$ip = getenv("REMOTE_ADDR"); // obtém o número ip do usuário
?>

Você poderá ver uma lista de todas as variáveis de ambiente usando phpinfo(). Você poderá encontram o que muitas delas indicam dando uma olhada em » CGI specification, especialmente em » page on environmental variables.

Nota:

Esta função não funciona no modo ISAPI.

Veja também putenv().

get_required_files
getlastmod
Funções para Opções/Info do PHP


Obtém o tempo da última modificação na pagina

getenv
getmygid
Funções para Opções/Info do PHP
PHP Manual

getlastmod

(PHP 4, PHP 5)

getlastmod — Obtém o tempo da última modificação na pagina

Descrição

int getlastmod ( void )

Obtém a hora da última modificação da página atual.

Se você está interessado em obter a hora da última modificação de um arquivo diferente, considere usar filemtime().

Valor Retornado

Retorna o tempo da última modificação na pagina atual. O valor é retornado como um Unix timestamp, útil para usar com a função date(). Retorna FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo da getlastmod()

<?php
// mostra por exemplo  'Última Modificação: March 04 1998 20:43:59.'
echo "Última Modificação: " . date ("F d Y H:i:s.", getlastmod());
?>

Veja Também

  • date() - Formata a data e a hora local
  • getmyuid() - Obtém o UID do dono do script PHP
  • getmygid() - Obtém o GID do dono do script PHP
  • get_current_user() - Obtém o nome do dono do script PHP atual
  • getmyinode() - Obtém o inode do script atual
  • getmypid() - Obtém o ID do processo PHP
  • filemtime() - Obtém o tempo de modificação do arquivo

getenv
getmygid
Funções para Opções/Info do PHP


Obtém o GID do dono do script PHP

getlastmod
getmyinode
Funções para Opções/Info do PHP
PHP Manual

getmygid

(PHP 4 >= 4.1.0, PHP 5)

getmygid — Obtém o GID do dono do script PHP

Descrição

int getmygid ( void )

Obtém o ID do grupo do atual script.

Valor Retornado

Retorna o ID do grupo do atual script, ou FALSE em erro.

Veja Também

  • getmyuid() - Obtém o UID do dono do script PHP
  • getmypid() - Obtém o ID do processo PHP
  • get_current_user() - Obtém o nome do dono do script PHP atual
  • getmyinode() - Obtém o inode do script atual
  • getlastmod() - Obtém o tempo da última modificação na pagina

getlastmod
getmyinode
Funções para Opções/Info do PHP


Obtém o inode do script atual

getmygid
getmypid
Funções para Opções/Info do PHP
PHP Manual

getmyinode

(PHP 4, PHP 5)

getmyinode — Obtém o inode do script atual

Descrição

int getmyinode ( void )

Obtém o inode do script atual.

Valor Retornado

Retorna o inode do atual script como um inteiro, ou FALSE em erro.

Notas

Nota: esta função não é implementada na plataforma Windows

getmygid
getmypid
Funções para Opções/Info do PHP


Obtém o ID do processo PHP

getmyinode
getmyuid
Funções para Opções/Info do PHP
PHP Manual

getmypid

(PHP 4, PHP 5)

getmypid — Obtém o ID do processo PHP

Descrição

int getmypid ( void )

Obtém o ID do atual processo do PHP.

Valor Retornado

Retorna o ID do processo PHP, ou FALSE em caso de erro.

Notas

Aviso

ID de processo não é único, então são uma fonte de entropia fraca. Nós recomendamos não usas o pid em contextos dependentes de segurança.

Veja Também

  • getmygid() - Obtém o GID do dono do script PHP
  • getmyuid() - Obtém o UID do dono do script PHP
  • get_current_user() - Obtém o nome do dono do script PHP atual
  • getmyinode() - Obtém o inode do script atual
  • getlastmod() - Obtém o tempo da última modificação na pagina

getmyinode
getmyuid
Funções para Opções/Info do PHP


Obtém o UID do dono do script PHP

getmypid
getopt
Funções para Opções/Info do PHP
PHP Manual

getmyuid

(PHP 4, PHP 5)

getmyuid — Obtém o UID do dono do script PHP

Descrição

int getmyuid ( void )

Obtém o ID do usuário do atual script.

Valor Retornado

Retorna o ID do usuário do atual script, ou FALSE em erro.

Veja Também

  • getmygid() - Obtém o GID do dono do script PHP
  • getmypid() - Obtém o ID do processo PHP
  • get_current_user() - Obtém o nome do dono do script PHP atual
  • getmyinode() - Obtém o inode do script atual
  • getlastmod() - Obtém o tempo da última modificação na pagina

getmypid
getopt
Funções para Opções/Info do PHP


Obtém opções da lista de argumentos da linha de comando

getmyuid
getrusage
Funções para Opções/Info do PHP
PHP Manual

getopt

(PHP 4 >= 4.3.0, PHP 5)

getopt — Obtém opções da lista de argumentos da linha de comando

Descrição

array getopt ( string $options [, array $longopts ] )

Retorna uma matriz associativa das opções/argumentos baseada no formato especificado no parâmetro options, ou FALSE em caso de erro.

Parâmetros

options

O parâmetro options deve conter os seguintes elementos: caracteres individuais, e caracteres individuais seguidos por dois pontos para indicar uma opção com um argumento a seguir. Por exemplo, a string de opção x reconhece uma opção -x, e uma string de opção x: reconhece uma opção e um argumento -x argumento. Não importa se o argumento tem espaço no início.

longopts

Valor Retornado

Esta função irá retornar uma matriz de opções/argumentos . Se uma opção não tiver argumento o valor definido será FALSE.

Histórico

Versão | Descrição
5.3.0 | Esta função não depende mais do sistema e funcionando também em Windows.

Exemplos

Exemplo #1 Exemplo da getopt()

<?php
// parse the command line ($GLOBALS['argv'])
$options = getopt("f:hp:");
?>

getmyuid
getrusage
Funções para Opções/Info do PHP


Obtém a utilização de recursos

getopt
ini_alter
Funções para Opções/Info do PHP
PHP Manual

getrusage

(PHP 4, PHP 5)

getrusage — Obtém a utilização de recursos

Descrição

array getrusage ([ int $who ] )

Esta é uma interface para getrusage(2). Ela obtém informação retornada pela chamada do sistema.

Parâmetros

who

Se who é 1, getrusage será chamada com RUSAGE_CHILDREN.

Valor Retornado

Retorna um array associativo contendo a informação retornado pela chamada do sistema. Todas entradas são acessíveis usando os seus documentados nomes de campos.

Exemplos

Exemplo #1 Exemplo da getrusage()

<?php
$dat = getrusage();
echo $dat["ru_nswap"];         // number of swaps
echo $dat["ru_majflt"];        // number of page faults
echo $dat["ru_utime.tv_sec"];  // user time used (seconds)
echo $dat["ru_utime.tv_usec"]; // user time used (microseconds)
?>

Notas

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • Man page do seu sistema em getrusage(2)

getopt
ini_alter
Funções para Opções/Info do PHP


Sinônimo de ini_set

getrusage
ini_get_all
Funções para Opções/Info do PHP
PHP Manual

ini_alter

(PHP 4, PHP 5)

ini_alter — Sinônimo de ini_set()

Descrição

Esta função é um apelido para: ini_set().

getrusage
ini_get_all
Funções para Opções/Info do PHP


Obtém todas as opções de configuração

ini_alter
ini_get
Funções para Opções/Info do PHP
PHP Manual

ini_get_all

(PHP 4 >= 4.2.0, PHP 5)

ini_get_all — Obtém todas as opções de configuração

Descrição

array ini_get_all ([ string $extension ] )

Retorna todas as opções de configuração como uma matriz associativa. Se o parâmetro opcional extension estiver definido, apenas as opções especificas para esta extensão serão retornadas.

A matriz retornada usa o nome da diretiva como chave da matriz sendo os os elementos global_value (definidos no php.ini), local_value (talvez definidos com ini_set() ou .htaccess), e access (o nível de acesso). Veja a seção do manual sobre mudanças de configuração para informações sobre o que são os níveis.

Nota:

É possível para uma diretiva ter múltiplos níveis de acesso, por isso access mostra os valores apropriados como um valor bitmask.

Exemplo #1 Exemplo ini_get_all()

<?php
$inis = ini_get_all();

print_r($inis);

?>

Parte da saída se parece com:

Array
(
    [allow_call_time_pass_reference] => Array
    (
        [global_value] => 1
        [local_value] => 1
        [access] => 6
    )
    [allow_url_fopen] => Array
    (
        [global_value] => 1
        [local_value] => 1
        [access] => 7
    )

    ...

)

Veja também: ini_get(),
ini_restore(),
ini_set(),
get_loaded_extensions() e
phpinfo().

ini_alter
ini_get
Funções para Opções/Info do PHP


Obtém o valor de uma opção de configuração

ini_get_all
ini_restore
Funções para Opções/Info do PHP
PHP Manual

ini_get

(PHP 4, PHP 5)

ini_get — Obtém o valor de uma opção de configuração

Descrição

string ini_get ( string $varname )

Retorna o valor da opção em caso de sucesso. Em caso de falha, como tentar obter um valor que não exista, irá retornar uma string vazia.

Nota: Quando obtendo valores booleanos

Um valor booleano off será retornado como uma string vazia enquanto um valor booleano on será retornado como "1".

Nota: Quando obtendo valores de tamanho de memória

Vários valores de definição de tamanho de memória, como upload_max_filesize são guardados no arquivo php.ini em uma anotação curta. ini_get() irá retornar exatamente a string guardada no arquivo php.ini, NÃO o seu valor inteiro equivalente. Tentar funções matemáticas comuns com estes valores não trará o resultado esperado.

<?php
/*
Seu php.ini contém as seguintes definições:

display_errors = On
register_globals = Off
post_max_size = 8M
*/

echo 'display_errors = ' . ini_get('display_errors') . "\n";
echo 'register_globals = ' . ini_get('register_globals') . "\n";
echo 'post_max_size = ' . ini_get('post_max_size') . "\n";
echo 'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "\n";
?>

Este script irá produzir:

display_errors = 1
register_globals = 0
post_max_size = 8M
post_max_size+1 = 9
*/
?>

Veja também
get_cfg_var(),
ini_get_all(),
ini_restore() e
ini_set().

ini_get_all
ini_restore
Funções para Opções/Info do PHP


Restaura o valor de uma opção de configuração

ini_get
ini_set
Funções para Opções/Info do PHP
PHP Manual

ini_restore

(PHP 4, PHP 5)

ini_restore — Restaura o valor de uma opção de configuração

Descrição

void ini_restore ( string $varname )

Restaura o valor de uma opção de configuração para o seu valor original.

Parâmetros

varname

O nome da opção de configuração.

Valor Retornado

Não há valor retornado.

Veja Também

  • ini_get() - Obtém o valor de uma opção de configuração
  • ini_get_all() - Obtém todas as opções de configuração
  • ini_set() - Define o valor de uma opção de configuração

ini_get
ini_set
Funções para Opções/Info do PHP


Define o valor de uma opção de configuração

ini_restore
magic_quotes_runtime
Funções para Opções/Info do PHP
PHP Manual

ini_set

(PHP 4, PHP 5)

ini_set — Define o valor de uma opção de configuração

Descrição

string ini_set ( string $varname , string $newvalue )

Define um novo valor para a opção de configuração indicada. A opção de configuração irá manter o novo valor durante a execução do script e será restaurado ao final da execução do script.

Parâmetros

varname

Nem todas as opções disponíveis podem ser modificadas usando a função ini_set(). Há uma lista de todas as opções disponíveis no PHP apêndice.

newvalue

O novo valor para a opção.

Valor Retornado

Retorna o valor anterior em sucesso, FALSE em falha.

Veja Também

  • get_cfg_var() - Obtém o valor de uma opção de configuração do PHP
  • ini_get() - Obtém o valor de uma opção de configuração
  • ini_get_all() - Obtém todas as opções de configuração
  • ini_restore() - Restaura o valor de uma opção de configuração
  • Como modificar a configuração

ini_restore
magic_quotes_runtime
Funções para Opções/Info do PHP


Sinônimo de set_magic_quotes_runtime

ini_set
main
Funções para Opções/Info do PHP
PHP Manual

magic_quotes_runtime

(PHP 4, PHP 5)

magic_quotes_runtime — Sinônimo de set_magic_quotes_runtime()

Descrição

Esta função é um apelido para: set_magic_quotes_runtime()

ini_set
main
Funções para Opções/Info do PHP


Marcador para main

magic_quotes_runtime
memory_get_peak_usage
Funções para Opções/Info do PHP
PHP Manual

main

(No version information available, might only be in SVN)

main — Marcador para main()

Descrição

Não existe função com o nome de main() com exceção no código fonte do PHP. No PHP 4.3.0, um novo tipo de gerenciamento de erro foi introduzido no fonte do PHP (php_error_docref). Uma das funções é prover links para as páginas de manual do PHP nas mensagens de erros quando a diretiva de configuração html_errors (on por padrão) e docref_root (on por padrão até o PHP 4.3.2) estiverem definidas.

Algumas vezes as mensagens de erro se referem a uma página de manual para a função main(), é por isso que esta pagina existe. Por favor adicione um comentário do usuário abaixo que mencione qual função do PHP causou um erro que foi ligado a função main() e será corrigido e propriamente documentado.

Eros conhecidos que apontam para main()
Nome da função | Não aponta para aqui a partir do
include() | 5.1.0
include_once() | 5.1.0
require() | 5.1.0
require_once() | 5.1.0

Veja Também

  • html_errors
  • display_errors

magic_quotes_runtime
memory_get_peak_usage
Funções para Opções/Info do PHP


Returns the peak of memory allocated by PHP

main
memory_get_usage
Funções para Opções/Info do PHP
PHP Manual

memory_get_peak_usage

(PHP 5 >= 5.2.0)

memory_get_peak_usage — Returns the peak of memory allocated by PHP

Descrição

int memory_get_peak_usage ([ bool $real_usage = false ] )

Returns the peak of memory, in bytes, that's been allocated to your PHP script.

Parâmetros

real_usage

Set this to TRUE to get the real size of memory allocated from system. If not set or FALSE only the memory used by emalloc() is reported.

Valor Retornado

Returns the memory peak in bytes.

Histórico

Versão | Descrição
5.2.1 | Compiling with --enable-memory-limit is no longer required for this function to exist.
5.2.0 | real_usage was added.

Veja Também

  • memory_get_usage() - Retorna a quantidade de memória alocada para PHP
  • memory_limit

main
memory_get_usage
Funções para Opções/Info do PHP


Retorna a quantidade de memória alocada para PHP

memory_get_peak_usage
php_ini_loaded_file
Funções para Opções/Info do PHP
PHP Manual

memory_get_usage

(PHP 4 >= 4.3.2, PHP 5)

memory_get_usage — Retorna a quantidade de memória alocada para PHP

Descrição

int memory_get_usage ([ bool $real_usage ] )

Retorna a quantidade de memória, em bytes, que esta atualmente alocada para o seu script PHP.

Parâmetros

real_usage

Defina isto para TRUE para obter a quantidade geral de memória alocada pelo sistema. Se não definida ou FALSE somente a memória usada por emalloc() é reportada.

Valor Retornado

Retorna a quantidade de memória em bytes.

Histórico

Versão | Descrição
5.2.1 | Compilar com --enable-memory-limit não é mais requerido para esta função existir.
5.2.0 | real_usage foi adicionado.

Exemplos

Exemplo #1 Exemplo da memory_get_usage()

<?php
// Este é apenas um exemplo, os números abaixo
// serão diferentes dependendo do seu sistema

echo memory_get_usage() . "\n"; // 36640

$a = str_repeat("Hello", 4242);

echo memory_get_usage() . "\n"; // 57960

unset($a);

echo memory_get_usage() . "\n"; // 36744

?>

Veja Também

  • memory_get_peak_usage() - Returns the peak of memory allocated by PHP
  • memory_limit

memory_get_peak_usage
php_ini_loaded_file
Funções para Opções/Info do PHP


Retrieve a path to the loaded php.ini file

memory_get_usage
php_ini_scanned_files
Funções para Opções/Info do PHP
PHP Manual

php_ini_loaded_file

(PHP 5 >= 5.2.4)

php_ini_loaded_file — Retrieve a path to the loaded php.ini file

Descrição

string php_ini_loaded_file ( void )

Check if a php.ini file is loaded, and retrieve its path.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The loaded php.ini path, or FALSE if one is not loaded.

Exemplos

Exemplo #1 php_ini_loaded_file() example

<?php
$inipath = php_ini_loaded_file();

if ($inipath) {
    echo 'Loaded php.ini: ' . $inipath;
} else {
    echo 'A php.ini file is not loaded';
}
?>

O exemplo acima irá imprimir algo similar a:

Loaded php.ini: /usr/local/php/php.ini

Veja Também

  • php_ini_scanned_files() - Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional
  • phpinfo() - Mostra muitas informações sobre o PHP
  • The configuration file

memory_get_usage
php_ini_scanned_files
Funções para Opções/Info do PHP


Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional

php_ini_loaded_file
php_logo_guid
Funções para Opções/Info do PHP
PHP Manual

php_ini_scanned_files

(PHP 4 >= 4.3.0, PHP 5)

php_ini_scanned_files — Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional

Descrição

string php_ini_scanned_files ( void )

php_ini_scanned_files() retorna uma lista separada por vírgula dos arquivos interpretados depois do php.ini. Estes arquivos são encontrados no diretório definido pela opção --with-config-file-scan-dir definida durante a compilação.

Retorna uma lista de arquivos ini separados por vírgula em caso de sucesso. Se a diretiva --with-config-files-scan-dir não foi definida é retornado FALSE. Se foi definida e o diretório estiver vazio, uma string vazia é retornada. Se um arquivo estiver irreconhecível, o arquivo ainda fará parte da string retornada, mas também será retornado um erro do PHP. Este erro do PHP será visto em tempo de compilação e quando usar a função php_ini_scanned_files().

Os arquivos de configuração incluem também o caminho incluído em --with-config-file-scan-dir. Também cada vírgula e seguida por uma nova linha.

Exemplo #1 Um exemplo simples para a lista de arquivos ini retornados

<?php
if ($filelist = php_ini_scanned_files()) {
    if (strlen($filelist) > 0) {
        $files = explode(',', $filelist);

        foreach ($files as $file) {
            echo "<li>" . trim($file) . "</li>\n";
        }
    }
}
?>

Veja também ini_set() e phpinfo().

php_ini_loaded_file
php_logo_guid
Funções para Opções/Info do PHP


Obtém o guid do logo

php_ini_scanned_files
php_sapi_name
Funções para Opções/Info do PHP
PHP Manual

php_logo_guid

(PHP 4, PHP 5)

php_logo_guid — Obtém o guid do logo

Descrição

string php_logo_guid ( void )

Esta função retorna um ID que pode ser utilizado para mostrar o logo do PHP usando uma imagem embutida. O logo é mostrado somente se expose_php está On.

Valor Retornado

Retorna PHPE9568F34-D428-11d2-A769-00AA001ACF42.

Exemplos

Exemplo #1 Exemplo php_logo_uid()

<?php

echo '<img src="' . $_SERVER['PHP_SELF'] .
     '?=' . php_logo_guid() . '" alt="PHP Logo !" />';

?>

Veja Também

  • phpinfo() - Mostra muitas informações sobre o PHP
  • phpversion() - Obtém a versão atual do PHP
  • phpcredits() - Mostra os créditos pelo PHP
  • zend_logo_guid() - Retorna o guid Zend

php_ini_scanned_files
php_sapi_name
Funções para Opções/Info do PHP


Retorna o tipo de interface entre o servidor web e o PHP

php_logo_guid
php_uname
Funções para Opções/Info do PHP
PHP Manual

php_sapi_name

(PHP 4 >= 4.0.1, PHP 5)

php_sapi_name — Retorna o tipo de interface entre o servidor web e o PHP

Descrição

string php_sapi_name ( void )

Retorna uma string minúscula que descreve o tipo de interface entre o servidor web e o PHP (Server API, SAPI). Em CGI PHP, esta string é "cgi", em mod_php para o Apache, esta string é "apache" e assim por diante.

Valor Retornado

Retorna o tipo da interface, como uma string em minúsculo.

Exemplos

Exemplo #1 Exemplo da php_sapi_name()

<?php
$sapi_type = php_sapi_name();
if (substr($sapi_type, 0, 3) == 'cgi') {
    echo "You are using CGI PHP\n";
} else {
    echo "You are not using CGI PHP\n";
}
?>

Veja Também

  • PHP_SAPI

php_logo_guid
php_uname
Funções para Opções/Info do PHP


Retorna informação sobre o sistema operacional que o PHP foi construído

php_sapi_name
phpcredits
Funções para Opções/Info do PHP
PHP Manual

php_uname

(PHP 4 >= 4.0.2, PHP 5)

php_uname — Retorna informação sobre o sistema operacional que o PHP foi construído

Descrição

string php_uname ( void )

php_uname() retorna uma string com a descrição do sistema operacional que o PHP foi construído. Se você quer apenas o nome do sistema operacional, considere usar a constante PHP_OS.

Exemplo #1 Alguns exemplos de php_uname()

<?php
echo php_uname();
echo PHP_OS;

/* Algumas saídas possíveis:
Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686
Linux

FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001
FreeBSD

Windows NT XN1 5.1 build 2600
WINNT
*/

if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
    echo 'Este é um servidor usando!';
} else {
    echo 'Este é um servidor que não usa Windows!';
}

?>

Existem também algumas Constantes pré-definidas que podem ser úteis, por exemplo:

Exemplo #2 Algumas constantes relacionadas com o sistema operacional

<?php
// *nix
echo DIRECTORY_SEPARATOR; // /
echo PHP_SHLIB_SUFFIX;    // so
echo PATH_SEPARATOR;      // :

// Win*
echo DIRECTORY_SEPARATOR; // \
echo PHP_SHLIB_SUFFIX;    // dll
echo PATH_SEPARATOR;      // ;
?>

Veja também phpversion(),
php_sapi_name() e
phpinfo().

php_sapi_name
phpcredits
Funções para Opções/Info do PHP


Mostra os créditos pelo PHP

php_uname
phpinfo
Funções para Opções/Info do PHP
PHP Manual

phpcredits

(PHP 4, PHP 5)

phpcredits — Mostra os créditos pelo PHP

Descrição

bool phpcredits ([ int $flag ] )

Esta função mostra os créditos devidos aos desenvolvedores do PHP, módulos, etc. É gerado os códigos HTML apropriados para inserir a informação em uma página.

Parâmetros

flag

Para gerar uma página de créditos customizada, você terá que usar o parâmetro flag. flag é opcional, e o padrão é CREDITS_ALL.

Flags pré-definidas da phpcredits()
Nome | Descrição
CREDITS_ALL | Todos os créditos, equivalente ao usar: CREDITS_DOCS + CREDITS_GENERAL + CREDITS_GROUP + CREDITS_MODULES + CREDITS_FULLPAGE. Gera uma completa página HTML com as apropriadas tags.
CREDITS_DOCS | Os créditos para o time da documentação
CREDITS_FULLPAGE | Normalmente usado na combinação com outras flags. Indica que a completa página HTML precisa ser imprimida incluindo a informação indicada por outras flags.
CREDITS_GENERAL | Créditos gerais: design da linguagem e conceitos, autores do PHP 4.0 e módulos SAPI.
CREDITS_GROUP | Uma lista de desenvolvedores do core
CREDITS_MODULES | Uma lista de módulos para o PHP, e seus autores
CREDITS_SAPI | Uma lista de módulos server API para o PHP, e seus autores

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Imprimindo os créditos gerais

<?php
phpcredits(CREDITS_GENERAL);
?>

Exemplo #2 Imprime os desenvolvedores do core e o grupo da documentação

<?php
phpcredits(CREDITS_GROUP + CREDITS_DOCS + CREDITS_FULLPAGE);
?>

Exemplo #3 Imprimindo todos os créditos

<html>
 <head>
  <title>My credits page</title>
 </head>
 <body>
<?php
// some code of your own
phpcredits(CREDITS_ALL - CREDITS_FULLPAGE);
// some more code
?>
 </body>
</html>

Veja Também

  • phpversion() - Obtém a versão atual do PHP
  • php_logo_guid() - Obtém o guid do logo
  • phpinfo() - Mostra muitas informações sobre o PHP

php_uname
phpinfo
Funções para Opções/Info do PHP


Mostra muitas informações sobre o PHP

phpcredits
phpversion
Funções para Opções/Info do PHP
PHP Manual

phpinfo

(PHP 4, PHP 5)

phpinfo — Mostra muitas informações sobre o PHP

Descrição

int phpinfo ([ int $what ] )

Mostra uma grande quantidade de informações sobre o estado atual do PHP. Isto inclui informações sobre as opções de compilação do PHP e extensões, a versão do PHP, informações do servidor e ambiente (se compilado como um módulo), o ambiente PHP, informação da versão do SO, caminhos, valores principais e locais das opções de configuração, cabeçalhos HTTP e a licença do PHP.

Devido a configuração em cada sistema ser diferente, a função phpinfo() e normalmente utilizada para conhecer as definições de configuração e as variáveis pré-definidas que estejam disponíveis no sistema. phpinfo() é também é uma ferramenta valiosa para eliminação de erros já que contém todos os dados de EGPCS (Environment, GET, POST, Cookie, Server).

A saída pode ser configurada passando-se uma ou mais das seguintes constants que serão somadas junto com o parâmetro opcional what. Pode combinar as respectivas constantes ou seus valores bit a bit juntos com o operador or.

Opções phpinfo()
Nome (constant) | Valor | Descrição
INFO_GENERAL | 1 | A linha de configuração, localização do php.ini data de construção, Servidor Web, Sistema e mais.
INFO_CREDITS | 2 | Créditos do PHP 4. Veja também phpcredits().
INFO_CONFIGURATION | 4 | Valores locais e principais para as diretivas de configuração do PHP. Veja também ini_get().
INFO_MODULES | 8 | Módulos carregados e suas respectivas configurações. Veja também get_loaded_modules().
INFO_ENVIRONMENT | 16 | Informação das variáveis de ambiente que também esta disponível em $_ENV.
INFO_VARIABLES | 32 | Mostra todas as variáveis pré-definidas de EGPCS (Environment, GET, POST, Cookie, Server).
INFO_LICENSE | 64 | Informação sobre a Licença do PHP. Veja também o » faq sobre a licença.
INFO_ALL | -1 | Mostra tudo acima. Este é o valor padrão.

Exemplo #1 Exemplos phpinfo()

<?php

// Mostra todas as informações, usa o padrão INFO_ALL
phpinfo();

// Mostra apenas informações dos módulos.
// phpinfo(8) mostra um resultado identico.
phpinfo(INFO_MODULES);

?>

Nota:

Partes da informação mostrada é desabilitada quando a diretiva de configuração expose_php for definida para off. Isto inclui os logos do PHP e Zend, e os créditos.

Nota:

phpinfo() envia texto simples ao invés de HTML quando esta usando o modo CLI.

Veja também phpversion(),
phpcredits(),
php_logo_guid(),
ini_get(),
ini_set(),
get_loaded_modules(),
e a seção sobre Variáveis Pré-definidas.

phpcredits
phpversion
Funções para Opções/Info do PHP


Obtém a versão atual do PHP

phpinfo
putenv
Funções para Opções/Info do PHP
PHP Manual

phpversion

(PHP 4, PHP 5)

phpversion — Obtém a versão atual do PHP

Descrição

string phpversion ([ string $extension ] )

Retorna uma string contendo a versão atual do interpretador PHP ou extensão.

Parâmetros

extension

Um opcional nome de extensão.

Valor Retornado

Se o parâmetro opcional extension é especificado, phpversion() retorna a versão desta extensão, ou FALSE se não há informação da versão ou a extensão não está habilitada.

Exemplos

Exemplo #1 Exemplo phpversion()

<?php
// mostra por exemplo 'Versão Atual do PHP: 4.1.1'
echo 'Versão Atual do PHP: ' . phpversion();

// mostra e.g. '2.0' ou nada se a extensão não está habilitada
echo phpversion('tidy');
?>

Notas

Nota:

Esta informação está também disponível na constante pré-definida PHP_VERSION.

Veja Também

  • version_compare() - Compares two "PHP-standardized" version number strings
  • phpinfo() - Mostra muitas informações sobre o PHP
  • phpcredits() - Mostra os créditos pelo PHP
  • php_logo_guid() - Obtém o guid do logo
  • zend_version() - Obtém a versão da Zend engine que esta sendo executada

phpinfo
putenv
Funções para Opções/Info do PHP


Define o valor de uma variável de ambiente

phpversion
restore_include_path
Funções para Opções/Info do PHP
PHP Manual

putenv

(PHP 4, PHP 5)

putenv — Define o valor de uma variável de ambiente

Descrição

bool putenv ( string $setting )

Adiciona setting no ambiente do servidor. A variável de ambiente irá existir somente durante a requisição atual. Ao final da requisição o ambiente é retornado ao seu estado natural.

Definir certas variáveis de ambiente pode ser potencialmente uma brecha de segurança.. A diretiva safe_mode_allowed_env_vars contém uma lista separada por vírgula de prefixos. No modo seguro, o usuário poderá alterar variáveis de ambiente cujo o nome comece por um dos prefixos indicados nesta diretiva. Por padrão os usuários só poderão definir varáveis que comecem com PHP_ (ex.. PHP_FOO=BAR). Nota: se esta diretiva estiver vazia, o PHP permitirá ao usuário modificar QUALQUER variável de ambiente!

A diretiva safe_mode_protected_env_vars contém uma lista separada por vírgula de variáveis de ambiente que o usuário não possa mudar usando putenv(). Estas variáveis serão protegidas mesmo que safe_mode_allowed_env_vars esta definida para permitir muda-las

Parâmetros

setting

A definição, como "FOO=BAR"

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Definindo uma variável de ambiente

<?php
putenv("UNIQID=$uniqid");
?>

Notas

Aviso

Esta diretiva tem efeito somente quando safe-mode está ativada!

Veja Também

  • getenv() - Obtém uma variável de ambiente

phpversion
restore_include_path
Funções para Opções/Info do PHP


Restaura o valor da opção de configuração include_path

putenv
set_include_path
Funções para Opções/Info do PHP
PHP Manual

restore_include_path

(PHP 4 >= 4.3.0, PHP 5)

restore_include_path — Restaura o valor da opção de configuração include_path

Descrição

void restore_include_path ( void )

Restaura a opção de configuração include_path de volta para o seu valor principal definido no php.ini

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo restore_include_path()

<?php
echo get_include_path();  // .:/usr/local/lib/php
set_include_path('/inc');
echo get_include_path();  // /inc
// Funciona a partir do PHP 4.3.0
restore_include_path();
// Funciona em todas as versões do PHP
ini_restore('include_path');
echo get_include_path();  // .:/usr/local/lib/phpp
?>

Veja Também

  • ini_restore() - Restaura o valor de uma opção de configuração
  • get_include_path() - Obtém a opção de configuração include_path atual
  • set_include_path() - Define a opção de configuração include_path
  • include() - include

putenv
set_include_path
Funções para Opções/Info do PHP


Define a opção de configuração include_path

restore_include_path
set_magic_quotes_runtime
Funções para Opções/Info do PHP
PHP Manual

set_include_path

(PHP 4 >= 4.3.0, PHP 5)

set_include_path — Define a opção de configuração include_path

Descrição

string set_include_path ( string $new_include_path )

Define a opção de configuração include_path pela duração do script. Retorna o valor anterior de include_path em caso de sucesso ou FALSE em caso de falha.

Exemplo #1 Exemplo set_include_path()

<?php
// Funciona a partir do  PHP 4.3.0
set_include_path('/inc');

// Funciona em todas as versões
ini_set('include_path', '/inc');
?>

Exemplo #2 Adicionando mais entradas ao include path

Através do uso da constante PATH_SEPARATOR, é possível extender o include path sem levar em consideração o sistema operacional.

Neste exemplo, nós adicionamos /usr/lib/pear ao final do include_path existente.

<?php
$path = '/usr/lib/pear';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);
?>

Veja também ini_set(),
get_include_path(),
restore_include_path() e
include().

restore_include_path
set_magic_quotes_runtime
Funções para Opções/Info do PHP


Define a configuração atual para magic_quotes_runtime

set_include_path
set_time_limit
Funções para Opções/Info do PHP
PHP Manual

set_magic_quotes_runtime

(PHP 4, PHP 5)

set_magic_quotes_runtime — Define a configuração atual para magic_quotes_runtime

Descrição

bool set_magic_quotes_runtime ( int $new_setting )

Define a configuração atual pata magic_quotes_runtime.

Parâmetros

new_setting

0 para off, 1 para on.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • get_magic_quotes_gpc() - Obtém a configuração atual de magic quotes gpc
  • get_magic_quotes_runtime() - Obtém a configuração ativa para magic_quotes_runtime

set_include_path
set_time_limit
Funções para Opções/Info do PHP


Limita o tempo de execução do script

set_magic_quotes_runtime
sys_get_temp_dir
Funções para Opções/Info do PHP
PHP Manual

set_time_limit

(PHP 4, PHP 5)

set_time_limit — Limita o tempo de execução do script

Descrição

void set_time_limit ( int $seconds )

Define o número de segundos durante os quais é permitido a execução do script. Se este limite é atingido, o script retorna um erro fatal. O limite padrão é de 30 segundos, ou se existir o valor definido o valor max_execution_time definido no php.ini. Se seconds for definido como zero, não é imposto nenhum limite.

Quando utilizada, set_time_limit() reinicia o contador do limite do tempo a partir de zero. Em outras palavras, se o limite for 30 segundos, e 25 segundos depois do inicio da execução do script for utilizada a função com por exemplo, set_time_limit(20), o script será executado por 45 segundos até acabar o tempo.

Aviso

set_time_limit() não tem efeito quando o PHP esta sendo executado em safe mode. Não existe como contornar sem desabilitar o safe mode ou mudar o limite de tempo no php.ini.

Nota:

A função set_time_limit() e a diretiva de configuração max_execution_time somente afetam a execução do script em si mesmo. Qualquer tempo gasto com atividades que aconteçam fora da execução do script como chamadas de sistema usando system(), operações de streams, consultas em banco de dados, etc. não é incluso ao determinar o limite de tempo que o script esta sendo executado.

Veja também: max_execution_time e max_input_time.

set_magic_quotes_runtime
sys_get_temp_dir
Funções para Opções/Info do PHP


Returns directory path used for temporary files

set_time_limit
version_compare
Funções para Opções/Info do PHP
PHP Manual

sys_get_temp_dir

(PHP 5 >= 5.2.1)

sys_get_temp_dir — Returns directory path used for temporary files

Descrição

string sys_get_temp_dir ( void )

Returns the path of the directory PHP stores temporary files in by default.

Valor Retornado

Returns the path of the temporary directory.

Exemplos

Exemplo #1 sys_get_temp_dir() example

<?php
// Create a temporary file in the temporary
// files directory using sys_get_temp_dir()
$temp_file = tempnam(sys_get_temp_dir(), 'Tux');

echo $temp_file;
?>

O exemplo acima irá imprimir algo similar a:

C:\Windows\Temp\TuxA318.tmp

Veja Também

  • tmpfile() - Cria um arquivo temporário
  • tempnam() - Cria um nome de arquivo único

set_time_limit
version_compare
Funções para Opções/Info do PHP


Compares two "PHP-standardized" version number strings

sys_get_temp_dir
zend_logo_guid
Funções para Opções/Info do PHP
PHP Manual

version_compare

(PHP 4 >= 4.1.0, PHP 5)

version_compare — Compares two "PHP-standardized" version number strings

Descrição

mixed version_compare ( string $version1 , string $version2 [, string $operator ] )

version_compare() compares two "PHP-standardized" version number strings. This is useful if you would like to write programs working only on some versions of PHP.

The function first replaces _, - and + with a dot . in the version strings and also inserts dots . before and after any non number so that for example '4.3.2RC1' becomes '4.3.2.RC.1'. Then it splits the results like if you were using explode('.', $ver). Then it compares the parts starting from left to right. If a part contains special version strings these are handled in the following order: any string not found in this list < dev < alpha = a < beta = b < RC = rc < # < pl = p. This way not only versions with different levels like '4.1' and '4.1.2' can be compared but also any PHP specific version containing development state.

Parâmetros

version1

First version number.

version2

Second version number.

operator

If you specify the third optional operator argument, you can test for a particular relationship. The possible operators are: <, lt, <=, le, >, gt, >=, ge, ==, =, eq, !=, <>, ne respectively.

This parameter is case-sensitive, so values should be lowercase.

Valor Retornado

By default, version_compare() returns -1 if the first version is lower than the second, 0 if they are equal, and 1 if the second is lower.

When using the optional operator argument, the function will return TRUE if the relationship is the one specified by the operator, FALSE otherwise.

Exemplos

The examples below use the PHP_VERSION constant, because it contains the value of the PHP version that is executing the code.

Exemplo #1 version_compare() examples

<?php
if (version_compare(PHP_VERSION, '6.0.0') >= 0) {
    echo 'I am at least PHP version 6.0.0, my version: ' . PHP_VERSION . "\n";
}

if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
    echo 'I am at least PHP version 5.3.0, my version: ' . PHP_VERSION . "\n";
}

if (version_compare(PHP_VERSION, '5.0.0', '>=')) {
    echo 'I am using PHP 5, my version: ' . PHP_VERSION . "\n";
}

if (version_compare(PHP_VERSION, '5.0.0', '<')) {
    echo 'I am using PHP 4, my version: ' . PHP_VERSION . "\n";
}
?>

Notas

Nota:

The PHP_VERSION constant holds current PHP version.

Nota:

Note that pre-release versions, such as 5.3.0-dev, are considered lower than their final release counterparts (like 5.3.0).

Veja Também

  • phpversion() - Obtém a versão atual do PHP
  • php_uname() - Retorna informação sobre o sistema operacional que o PHP foi construído
  • function_exists() - Retorna TRUE se a função dada está definida

sys_get_temp_dir
zend_logo_guid
Funções para Opções/Info do PHP


Retorna o guid Zend

version_compare
zend_thread_id
Funções para Opções/Info do PHP
PHP Manual

zend_logo_guid

(PHP 4, PHP 5)

zend_logo_guid — Retorna o guid Zend

Descrição

string zend_logo_guid ( void )

Esta função retorna um ID que pode ser usado para mostrar o logo da Zend usando uma imagem embutida.

Valor Retornado

Retorna PHPE9568F35-D428-11d2-A769-00AA001ACF42.

Exemplos

Exemplo #1 Exemplo da zend_logo_guid()

<?php

echo '<img src="' . $_SERVER['PHP_SELF'] .
     '?=' . zend_logo_guid() . '" alt="Zend Logo !" />';

?>

Veja Também

  • php_logo_guid() - Obtém o guid do logo

version_compare
zend_thread_id
Funções para Opções/Info do PHP


Returns a unique identifier for the current thread

zend_logo_guid
zend_version
Funções para Opções/Info do PHP
PHP Manual

zend_thread_id

(PHP 5)

zend_thread_id — Returns a unique identifier for the current thread

Descrição

int zend_thread_id ( void )

This function returns a unique identifier for the current thread.

Valor Retornado

Returns the thread id as an integer.

Exemplos

Exemplo #1 zend_thread_id() example

<?php
$thread_id = zend_thread_id();

echo 'Current thread id is: ' . $thread_id;
?>

O exemplo acima irá imprimir algo similar a:

Current thread id is: 7864

Notas

Nota:

This function is only available if PHP has been built with ZTS (Zend Thread Safety) support and debug mode (--enable-debug).

zend_logo_guid
zend_version
Funções para Opções/Info do PHP


Obtém a versão da Zend engine que esta sendo executada

zend_thread_id
Memtrack
Funções para Opções/Info do PHP
PHP Manual

zend_version

(PHP 4, PHP 5)

zend_version — Obtém a versão da Zend engine que esta sendo executada

Descrição

string zend_version ( void )

Retorna uma string contendo a versão atual da Zend Engine que esta sendo executada.

Valor Retornado

Retorna o número da versão da Zend Engine, como uma string.

Exemplos

Exemplo #1 Exemplo zend_version()

<?php
echo "Zend engine version: " . zend_version();
?>

O exemplo acima irá imprimir algo similar a:

Zend engine version: 2.2.0

Veja Também

  • phpinfo() - Mostra muitas informações sobre o PHP
  • phpcredits() - Mostra os créditos pelo PHP
  • php_logo_guid() - Obtém o guid do logo
  • phpversion() - Obtém a versão atual do PHP

zend_thread_id
Memtrack
Funções para Opções/Info do PHP


Memtrack

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
zend_version
Introdução
Afetando o comportamento do PHP


Introdução

The purpose of this extension is to detect the most memory hungry scripts and functions.

memtrack tracks memory consumption in PHP scripts and produces reports (warnings) when the consumption reaches certain levels set by the user. This is achieved by replacing default executor function by a special function which compares memory usage before and after running the original executor - this way we can tell how much the memory usage has changed during the execution of the current part of the code.

Zend Engine runs its executor for each opcode array (op_array), which usually means function, plain script and such, so memtrack doesn't have any noticeable effect on performance.

memtrack doesn't provide any functions, there are only INI directives which allow you to configure the way it should work.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Memtrack
Instalação/Configuração
Memtrack


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Memtrack


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/memtrack

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Memtrack Configuration Options
Name | Default | Changeable
memtrack.enabled | "0" | PHP_INI_SYSTEM
memtrack.soft_limit | "0" | PHP_INI_ALL
memtrack.hard_limit | "0" | PHP_INI_ALL
memtrack.vm_limit | "0" | PHP_INI_ALL
memtrack.ignore_functions | "" | PHP_INI_SYSTEM
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

memtrack.enabled boolean

Disables or enables the extension. Default value is 0, i.e. disabled.

memtrack.soft_limit int

Soft memory limit.

The extension checks memory consumption before and after executing an op_array and produces a warning is the difference between the two values is equal to or greater than the soft limit, but only if the function is not ignored.

Setting this option to 0 also disables both soft and hard limit warnings. Default value is 0, i.e. no warnings is produced.

memtrack.hard_limit int

Hard memory limit.

The extension checks memory consumption before and after executing an op_array and produces a warning is the difference between the two values is equal to or greater than the hard limit, even if the function is ignored. Setting this option to 0 disables hard limit warnings completely. Default value is 0, i.e. no hard limit warnings is produced.

memtrack.vm_limit int

Virtual memory limit (set on a process).

This limit is checked only on shutdown and a warning is produced if the value is greater than or equal to the limit.

This option is currently supported only on OSes where mallinfo() function is available (i.e. Linux).

memtrack.ignore_functions string

A comma or whitespace-separated list of functions which are to be ignored by soft_limit. The values are case-insensitive, for class methods use class::method syntax.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Memtrack


Exemplos

Índice

Constantes pré-definidas
Memtrack


Exemplos
Object overloading
Exemplos
PHP Manual

Basic example on using memtrack extension:

Exemplo #1 Creating large array in a function

<?php

/* /tmp/example1.php */

function foo() {
    $a = array();
    for ($i = 0; $i < 10000; $i++) $a[] = "test";
    return $a;
}
$arr = foo();

?>

Run the example with the following command:

php -d memtrack.enabled=1 -d memtrack.soft_limit=1M -d memtrack.vm_limit=3M /tmp/example1.php

O exemplo acima irá imprimir algo similar a:

Warning: [memtrack] [pid 26177] user function foo() executed in /tmp/example1.php on line 10 allocated 4194304 bytes in /tmp/example1.php on line 0
Warning: [memtrack] [pid 26177] virtual memory usage on shutdown: 32911360 bytes in Unknown on line 0
Exemplos
Object overloading
Exemplos


Object property and method call overloading

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para sobrecarga de Objeto
    • overload — Habilita sobrecarga de propriedade e método para uma classe
Introdução
Afetando o comportamento do PHP


Introdução

O propósito desta extensão é permitir a sobrecarga de propriedades de acesso e métodos de objetos. Somente uma função é definida nesta extensão, overload() que recebe o nome da classe que deve ter esta funcionalidade habilitada. A classe especificada tem que definir os métodos para ter esta funcionalidade: __get(), __set() e __call() respectivamente para leitura/escrita das propriedades, ou chamar um método. Desta forma a sobrecarga pode ser seletiva: Dentro destas funções a sobrecarga é desabilitada de forma que você possa acessar propriedades do objeto normalmente.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Aviso

Esta extensão não é parte do PHP 5. PHP 5 suporta __get(), __set() e __call() nativamente. Veja a página Sobrecarga no PHP 5 para mais informação.

Object overloading
Instalação/Configuração
Object overloading


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Object overloading


Instalação

Para usar estas funções, você precisa compilar o PHP com a opção --enable-overload . Começando com o PHP 4.3.0 esta extensão é habilitada por padrão. Você pode desabilitá-la com --disable--overload .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota: Suporte nativo para overload está disponível com PHP 4.3.0.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Object overloading


Exemplos

Índice

Constantes pré-definidas
Object overloading


Exemplos
Funções para sobrecarga de Objeto
Exemplos
PHP Manual

Um exemplo simples da utilização da função overload():

Exemplo #1 Sobrecarga de uma classe no PHP

<?php

class OO {
   var $a = 111;
   var $elem = array('b' => 9, 'c' => 42);

   // Callback method for getting a property
   function __get($prop_name, &$prop_value)
   {
       if (isset($this->elem[$prop_name])) {
           $prop_value = $this->elem[$prop_name];
           return true;
       } else {
           return false;
       }
   }

   // Callback method for setting a property
   function __set($prop_name, $prop_value)
   {
       $this->elem[$prop_name] = $prop_value;
       return true;
   }
}

// Here we overload the OO object
overload('OO');

$o = new OO;
echo "\$o->a: $o->a\n"; // print: $o->a: 111
echo "\$o->b: $o->b\n"; // print: $o->b: 9
echo "\$o->c: $o->c\n"; // print: $o->c: 42
echo "\$o->d: $o->d\n"; // print: $o->d:

// add a new item to the $elem array in OO
$o->x = 56;

// instantiate stdclass (it is built-in in PHP 4)
// $val is not overloaded!
$val = new stdclass;
$val->prop = 555;

// Set "a" to be an array with the $val object in it
// But __set() will put this in the $elem array
$o->a = array($val);
var_dump($o->a[0]->prop);

?>

Exemplos
Funções para sobrecarga de Objeto
Exemplos


Funções para sobrecarga de Objeto

Índice

  • overload — Habilita sobrecarga de propriedade e método para uma classe
overload
Object overloading


Habilita sobrecarga de propriedade e método para uma classe

Funções para sobrecarga de Objeto
Controle de Saída
Funções para sobrecarga de Objeto
PHP Manual

overload

(PHP 4 >= 4.3.0)

overload — Habilita sobrecarga de propriedade e método para uma classe

Descrição

void overload ( string $class_name )

A função overload() habilitará chamada sobrecarregando propriedade e método para uma classe identificada por class_name.

Parâmetros

class_name

O nome da classe a ser sobrecarregada, como uma string

Valor Retornado

Não há valor retornado.

Exemplos

Veja um exemplo na seção introdutória.

Funções para sobrecarga de Objeto
Controle de Saída
Funções para sobrecarga de Objeto


Controle de Saída de Buffer

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Exemplos
  • Funções para Control de Saída
    • flush — Descarrega o buffer de saída
    • ob_clean — Limpa (apaga) o buffer de saída
    • ob_end_clean — Limpa (apaga) o buffer de saída e desativa o buffer de saída
    • ob_end_flush — Descarrega (envia) o buffer de saída e desativa o buffer de saída
    • ob_flush — Descarrega (envia) o conteúdo do buffer de saída
    • ob_get_clean — Obtém o conteudo do buffer e exclui o buffer de saída atual
    • ob_get_contents — Retorna o conteúdo do buffer de saída
    • ob_get_flush — Flush the output buffer, return it as a string and turn off output buffering
    • ob_get_length — Retorna o tamanho do buffer de saída
    • ob_get_level — Retorna o nível do mecanismo de buffer de saída
    • ob_get_status — Obtém a situação dos buffers de saída
    • ob_gzhandler — Função de callback para ob_start para compactar com gzip o buffer de saída
    • ob_implicit_flush — Ativa ou desativa o descarregar implicito
    • ob_list_handlers — List all output handlers in use
    • ob_start — Ativa o buffer de saída
    • output_add_rewrite_var — Add URL rewriter values
    • output_reset_rewrite_vars — Reset URL rewriter values
overload
Introdução
Afetando o comportamento do PHP


Introdução

As funções de Controle de Saída permitem a você controlar quando a saída é enviada do script. Isto pode ser util em várias situações diversas, especialmente se você precisa enviar cabeçalhos para o browser depois que seu script começou a enviar dados. As funções de controle de saída não afetam os cabeçalhos enviados usando header() ou setcookie(), somente funções como echo() e dados entre blocos de código PHP.

Nota:

Quando atualizando a partir do PHP 4.1 (e 4.2) para 4.3 note que devido a um bug nas versões anteriores, você deve ter certeza que implict_flush esta em OFF no seu php.ini, se não qualquer saída com ob_start() não será escondida da saída.

Controle de Saída
Instalação/Configuração
Controle de Saída


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Controle de Saída


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração de controle de saída
Nome | Padrão | Modificavel | Changelog
output_buffering | "0" | PHP_INI_PERDIR |
output_handler | NULL | PHP_INI_PERDIR | Disponível desde o PHP 4.0.4.
implicit_flush | "0" | PHP_INI_ALL | PHP_INI_PERDIR no PHP <= 4.2.3.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

output_buffering boolean/integer

Você pode ativar o buffer de saída para todos os arquivos definindo esta dretiva para 'On'. Se você quiser limitar o tamanho do buffer para um certo limite - você pode usar um número máximo de bytes ao invés de 'On', como valor para esta diretiva (ex., output_buffering=4096). No PHP 4.3.5, esta diretiva é sempre Off em PHP-CLI.

output_handler string

Você pode redirecionar toda a saída do seu script para uma função. Por exemplo, se você definir set output_handler para mb_output_handler(), a codificação dos caracteres será transparentemente convertida para a codificação especificada. Definindo qualquer função para gerenciar a saída ativa o buffer de saída.

Nota:

Você não pode usar mb_output_handler() com
ob_iconv_handler() e você não pode usar
ob_gzhandler() e
zlib.output_compression.

Nota:

Somente funções nativas podem ser usadas com esta diretiva. Para funções definidas pelo usuário, use ob_start().

implicit_flush boolean

FALSE por padrão. Mudando isto para TRUE diz ao PHP para dizer para a camada de saída descarregar a si mesma automaticamente a cada bloco de saída. Isto é equivalente a utilizar a função do PHP flush() a cada print() ou echo() e a cada bloco de HTML.

Quando estiver usando o PHP em um ambiente web, ativando esta opção tem uma séria implicação na performance e geralmente é recomendada apenas para debug. O valor padrão é TRUE quando operando sobre CLI SAPI.

Veja também ob_implicit_flush().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Controle de Saída


Exemplos
Controle de Saída
PHP Manual

Exemplos

Índice

  • Exemplos
Constantes pré-definidas
Exemplos
Controle de Saída


Exemplos
Funções para Control de Saída
Exemplos
PHP Manual

Exemplos

Exemplo #1 Exemplo de Controle de Saída

<?php

ob_start();
echo "Hello\n";

setcookie("cookiename", "cookiedata");

ob_end_flush();

?>

No exmplo acima, a saída de echo() será guardada no bffer de saída até que ob_end_flush() seja chamada. Em quanto isto, a chamada para setcookie() guadará o cookie sem causar um erro. (Normalmente você não pode enviar cabeçalhos para o browser depois que dados já foram enviados.)

Exemplos
Funções para Control de Saída
Exemplos
PHP Manual


Funções para Control de Saída

Veja Também

Veja também header() e setcookie().

Índice

  • flush — Descarrega o buffer de saída
  • ob_clean — Limpa (apaga) o buffer de saída
  • ob_end_clean — Limpa (apaga) o buffer de saída e desativa o buffer de saída
  • ob_end_flush — Descarrega (envia) o buffer de saída e desativa o buffer de saída
  • ob_flush — Descarrega (envia) o conteúdo do buffer de saída
  • ob_get_clean — Obtém o conteudo do buffer e exclui o buffer de saída atual
  • ob_get_contents — Retorna o conteúdo do buffer de saída
  • ob_get_flush — Flush the output buffer, return it as a string and turn off output buffering
  • ob_get_length — Retorna o tamanho do buffer de saída
  • ob_get_level — Retorna o nível do mecanismo de buffer de saída
  • ob_get_status — Obtém a situação dos buffers de saída
  • ob_gzhandler — Função de callback para ob_start para compactar com gzip o buffer de saída
  • ob_implicit_flush — Ativa ou desativa o descarregar implicito
  • ob_list_handlers — List all output handlers in use
  • ob_start — Ativa o buffer de saída
  • output_add_rewrite_var — Add URL rewriter values
  • output_reset_rewrite_vars — Reset URL rewriter values
Exemplos
flush
Controle de Saída


Descarrega o buffer de saída

Funções para Control de Saída
ob_clean
Funções para Control de Saída
PHP Manual

flush

(PHP 4, PHP 5)

flush — Descarrega o buffer de saída

Descrição

void flush ( void )

Descarrega os buffers de saída do PHP e qualquer backend que o PHP esteja usando (CGI, um servidor web, etc). Isto efetivamente tenta empurrar toda a saída até aqui para o browser do usuário.

flush() não tem efeito no funcionamento de buffer do seu servior ou do browser do cliente.

Vários servidores, especialmente no Win32, irão continuar colocando a saída do script em buffer até que ele termine antes de enviar os resultados para o browser.

Módulos de servidor para o Apache como o mod_gzip podem fazer buffer por si o que fará com que flush() não resulte em os dados serem enviados imediatamente para o cliente.

mesmo o browser pode fazer buffer antes de mostrar o conteúdo. Netscape, por exemplo, guarda o texto em buffer até que receba um end-of-line ou o inicio de uma tag, e não irá mostrar tabelas até que a tag </table> da tabela mais de fora seja vista.

Algumas versões do Microsoft Internet Explorer somente começaram a mostrar dados depois de terem recebido 256 bytes de saída, então você vai precisar enviar espaço em branco antes de descarregar para os browser para mostrar a página.

Funções para Control de Saída
ob_clean
Funções para Control de Saída


Limpa (apaga) o buffer de saída

flush
ob_end_clean
Funções para Control de Saída
PHP Manual

ob_clean

(PHP 4 >= 4.2.0, PHP 5)

ob_clean — Limpa (apaga) o buffer de saída

Descrição

void ob_clean ( void )

Esta função descarta o conteúdo do buffer de saída.

Esta função não destroi o buffer de saída como a função ob_end_clean() faz.

Valor Retornado

Não há valor retornado.

Veja Também

  • ob_flush() - Descarrega (envia) o conteúdo do buffer de saída
  • ob_end_flush() - Descarrega (envia) o buffer de saída e desativa o buffer de saída
  • ob_end_clean() - Limpa (apaga) o buffer de saída e desativa o buffer de saída

flush
ob_end_clean
Funções para Control de Saída


Limpa (apaga) o buffer de saída e desativa o buffer de saída

ob_clean
ob_end_flush
Funções para Control de Saída
PHP Manual

ob_end_clean

(PHP 4, PHP 5)

ob_end_clean — Limpa (apaga) o buffer de saída e desativa o buffer de saída

Descrição

bool ob_end_clean ( void )

Esta função descarta o conteúdo do buffer mais em cima e desativa o buffer de saída. Se você quiser processar o conteúdo do buffer, você deve utilizar a função ob_get_contents() antes de ob_end_clean() já que o conteúdo do buffer é descartado quando a função ob_end_flush() é chamada. A função retorna TRUE quando foi bem sucedida em discartar o buffer, FALSE se não. Razões para falhar é primeiro que você utilizou a função sem um buffer ativo ou por algum motivo o buffer não pode ser excluído (possivelmente por um buffer especial).

O exemplo a seguir mostra como eliminar todos os buffers de saída:

Exemplo #1 Exemplo ob_end_clean()

<?php
ob_start();
echo 'Texto que não será exibido.';
ob_end_clean();
?>

Nota: Se a função falhar gera um E_NOTICE. O valor booleano de rtorno foi adicionado no PHP 4.2.0.

Veja também ob_start(),
ob_get_contents() e
ob_flush().

ob_clean
ob_end_flush
Funções para Control de Saída


Descarrega (envia) o buffer de saída e desativa o buffer de saída

ob_end_clean
ob_flush
Funções para Control de Saída
PHP Manual

ob_end_flush

(PHP 4, PHP 5)

ob_end_flush — Descarrega (envia) o buffer de saída e desativa o buffer de saída

Descrição

bool ob_end_flush ( void )

Esta função irá enviar o conteúdo do buffer mais em cima (se existir algum) e desativar o buffer de saída. Se você quiser processar o conteúdo do buffer você deverá utilizar ob_get_contents() antes de ob_end_flush() já que o conteúdo do buffer é discartado após ob_end_flush(). A função retorna TRUE quando é bem sucedida em discartar um buffer, FALSE se não. Razões para falhar é primeiro que você utilizou a função sem um buffer ativo ou por algum motivo o buffer não pode ser excluído (possivelmente por um buffer especial).

Nota: Esta função é que parecida com ob_get_flush(), exceto que ob_get_flush() retorna o buffer como uma string.

O exemplo a seguir mostra como descarregar e terminar com todos os buffers de saída:

Exemplo #1 Exemplo ob_end_flush()

<?php
  while (@ob_end_flush());
?>

Nota: Se a função falhar gera um E_NOTICE. O valor booleano de rtorno foi adicionado no PHP 4.2.0.

Veja também ob_start(),
ob_get_contents(),
ob_get_flush(),
ob_flush() e
ob_end_clean().

ob_end_clean
ob_flush
Funções para Control de Saída


Descarrega (envia) o conteúdo do buffer de saída

ob_end_flush
ob_get_clean
Funções para Control de Saída
PHP Manual

ob_flush

(PHP 4 >= 4.2.0, PHP 5)

ob_flush — Descarrega (envia) o conteúdo do buffer de saída

Descrição

void ob_flush ( void )

Esta função irá enviar o conteúdo do buffer de saída (se existir algum). Se você quiser processar o conteúdo do buffer você deverá utlizar ob_get_contents() antes de ob_flush() já que o conteúdo do buffer é descartado após ob_flush().

Esta função não destroi o buffer de saída como a função ob_end_flush() faz.

Valor Retornado

Não há valor retornado.

Veja Também

  • ob_get_contents() - Retorna o conteúdo do buffer de saída
  • ob_clean() - Limpa (apaga) o buffer de saída
  • ob_end_flush() - Descarrega (envia) o buffer de saída e desativa o buffer de saída
  • ob_end_clean() - Limpa (apaga) o buffer de saída e desativa o buffer de saída

ob_end_flush
ob_get_clean
Funções para Control de Saída


Obtém o conteudo do buffer e exclui o buffer de saída atual

ob_flush
ob_get_contents
Funções para Control de Saída
PHP Manual

ob_get_clean

(PHP 4 >= 4.3.0, PHP 5)

ob_get_clean — Obtém o conteudo do buffer e exclui o buffer de saída atual

Descrição

string ob_get_clean ( void )

Esta função irá retornar o conteúdo do buffer de saída e terminar com o buffer de saída. Se o buffer de saída não estiver ativo então será retornado FALSE. ob_get_clean() essencialmente executa ambas ob_get_contents() e ob_end_clean().

Exemplo #1 Um exemplo simples de ob_get_clean()

<?php

ob_start();

print "Hello World";

$out = ob_get_clean();
$out = strtolower($out);

var_dump($out);
?>

Nosso exemplo irá mostrar:

string(11) "hello world"

Veja também ob_start() e ob_get_contents().

ob_flush
ob_get_contents
Funções para Control de Saída


Retorna o conteúdo do buffer de saída

ob_get_clean
ob_get_flush
Funções para Control de Saída
PHP Manual

ob_get_contents

(PHP 4, PHP 5)

ob_get_contents — Retorna o conteúdo do buffer de saída

Descrição

string ob_get_contents ( void )

Obtém o conteúdo do buffer de saída.

Valor Retornado

Isto irá retornar o conteúdo do buffer de saída ou FALSE, se não está fazendo buffer.

Exemplos

Exemplo #1 Um simples exemplo da ob_get_contents()

<?php

ob_start();

echo "Hello ";

$out1 = ob_get_contents();

echo "World";

$out2 = ob_get_contents();

ob_end_clean();

var_dump($out1, $out2);
?>

O exemplo acima irá imprimir:

string(6) "Hello "
string(11) "Hello World"

Veja Também

  • ob_start() - Ativa o buffer de saída
  • ob_get_length() - Retorna o tamanho do buffer de saída

ob_get_clean
ob_get_flush
Funções para Control de Saída


Flush the output buffer, return it as a string and turn off output buffering

ob_get_contents
ob_get_length
Funções para Control de Saída
PHP Manual

ob_get_flush

(PHP 4 >= 4.3.0, PHP 5)

ob_get_flush — Flush the output buffer, return it as a string and turn off output buffering

Descrição

string ob_get_flush ( void )

ob_get_flush() flushes the output buffer, return it as a string and turns off output buffering.

Nota: This function is similar to ob_end_flush(), except that this function returns the buffer as a string.

Valor Retornado

Returns the output buffer or FALSE if no buffering is active.

Exemplos

Exemplo #1 ob_get_flush() example

<?php
//using output_buffering=On
print_r(ob_list_handlers());

//save buffer in a file
$buffer = ob_get_flush();
file_put_contents('buffer.txt', $buffer);

print_r(ob_list_handlers());
?>

O exemplo acima irá imprimir:

Array
(
    [0] => default output handler
)
Array
(
)

Veja Também

  • ob_end_clean() - Limpa (apaga) o buffer de saída e desativa o buffer de saída
  • ob_end_flush() - Descarrega (envia) o buffer de saída e desativa o buffer de saída
  • ob_list_handlers() - List all output handlers in use

ob_get_contents
ob_get_length
Funções para Control de Saída


Retorna o tamanho do buffer de saída

ob_get_flush
ob_get_level
Funções para Control de Saída
PHP Manual

ob_get_length

(PHP 4 >= 4.0.2, PHP 5)

ob_get_length — Retorna o tamanho do buffer de saída

Descrição

int ob_get_length ( void )

Este irá retonar o tamanho do conteúdo do buffer de saída.

Valor Retornado

Retorna o tamanho do conteúdo do buffer de saída ou FALSE se não está fazendo buffer.

Exemplos

Exemplo #1 Um simples exemplo da ob_get_length()

<?php

ob_start();

echo "Hello ";

$len1 = ob_get_length();

echo "World";

$len2 = ob_get_length();

ob_end_clean();

echo $len1 . ", ." . $len2;
?>

O exemplo acima irá imprimir:

6, 11

Veja Também

  • ob_start() - Ativa o buffer de saída
  • ob_get_contents() - Retorna o conteúdo do buffer de saída

ob_get_flush
ob_get_level
Funções para Control de Saída


Retorna o nível do mecanismo de buffer de saída

ob_get_length
ob_get_status
Funções para Control de Saída
PHP Manual

ob_get_level

(PHP 4 >= 4.2.0, PHP 5)

ob_get_level — Retorna o nível do mecanismo de buffer de saída

Descrição

int ob_get_level ( void )

Isto irá retornar o nível de manipuladores de buffer aninhados ou zero se o mecanismo de buffer de saída não estiver ativado.

Veja também ob_start() e ob_get_contents().

ob_get_length
ob_get_status
Funções para Control de Saída


Obtém a situação dos buffers de saída

ob_get_level
ob_gzhandler
Funções para Control de Saída
PHP Manual

ob_get_status

(PHP 4 >= 4.2.0, PHP 5)

ob_get_status — Obtém a situação dos buffers de saída

Descrição

array ob_get_status ([ bool $ full_status ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Esta função retorna o estado atual dos buffers de saída. Retorna uma matriz que contém o estado dos buffers ou FALSE em caso de erro.

Veja também ob_get_level().

ob_get_level
ob_gzhandler
Funções para Control de Saída


Função de callback para ob_start para compactar com gzip o buffer de saída

ob_get_status
ob_implicit_flush
Funções para Control de Saída
PHP Manual

ob_gzhandler

(PHP 4 >= 4.0.4, PHP 5)

ob_gzhandler — Função de callback para ob_start para compactar com gzip o buffer de saída

Descrição

string ob_gzhandler ( string $buffer [, int $mode ] )

ob_gzhandler() é intencionado para ser usado como uma função de callback para ob_start() para facilitar o envio de dados gz-encoded para browsers que suportam páginas comprimidas. Antes de ob_gzhandler() enviar dados comprimidos, ela determina qual o tipo de códificação de conteúdo que o browser irá aceitar ("gzip", "deflate" ou nenhum) e irá retornar a sua saída de acordo. Todos os browsers são suportados já que é dever do browser enviar o cabeçalho correto indicando que ele aceita paginas comprimidas.

Nota:

mode foi adicionado no PHP 4.0.5.

Exemplo #1 Exemplo ob_gzhandler()

<?php

ob_start("ob_gzhandler");

?>
<html>
<body>
<p>This should be a compressed page.</p>
</html>
<body>

Nota:

Você não pode usar ambas ob_gzhandler() e ini.zlib.output_compression. Também note que usar ini.zlib.output_compression é preferrível do que ob_gzhandler().

Veja também ob_start() e ob_end_flush().

ob_get_status
ob_implicit_flush
Funções para Control de Saída


Ativa ou desativa o descarregar implicito

ob_gzhandler
ob_list_handlers
Funções para Control de Saída
PHP Manual

ob_implicit_flush

(PHP 4, PHP 5)

ob_implicit_flush — Ativa ou desativa o descarregar implicito

Descrição

void ob_implicit_flush ([ int $flag ] )

ob_implicit_flush() irá ativar ou desativar o descarregar implicito (se não for indicado flag, o padrão é on). O descarregar implicito fará com que o buffer seja descarregado a cada operação de saída, então não será mais necessário utilizar flush().

Ativando o descarregar automatico irá desabilitar o buffer de saída. Os buffers de saída atuais serão enviados como se ob_end_flush() fosse utilizada.

Veja também flush(),
ob_start(), e
ob_end_flush().

ob_gzhandler
ob_list_handlers
Funções para Control de Saída


List all output handlers in use

ob_implicit_flush
ob_start
Funções para Control de Saída
PHP Manual

ob_list_handlers

(PHP 4 >= 4.3.0, PHP 5)

ob_list_handlers — List all output handlers in use

Descrição

array ob_list_handlers ( void )

Lists all output handlers in use.

Valor Retornado

This will return an array with the output handlers in use (if any). If output_buffering is enabled or an anonymous function was used with ob_start(), ob_list_handlers() will return "default output handler".

Exemplos

Exemplo #1 ob_list_handlers() example

<?php
//using output_buffering=On
print_r(ob_list_handlers());
ob_end_flush();

ob_start("ob_gzhandler");
print_r(ob_list_handlers());
ob_end_flush();

// anonymous functions
ob_start(create_function('$string', 'return $string;'));
print_r(ob_list_handlers());
ob_end_flush();
?>

O exemplo acima irá imprimir:

Array
(
    [0] => default output handler
)

Array
(
    [0] => ob_gzhandler
)

Array
(
    [0] => default output handler
)

Veja Também

  • ob_end_clean() - Limpa (apaga) o buffer de saída e desativa o buffer de saída
  • ob_end_flush() - Descarrega (envia) o buffer de saída e desativa o buffer de saída
  • ob_get_flush() - Flush the output buffer, return it as a string and turn off output buffering
  • ob_start() - Ativa o buffer de saída

ob_implicit_flush
ob_start
Funções para Control de Saída


Ativa o buffer de saída

ob_list_handlers
output_add_rewrite_var
Funções para Control de Saída
PHP Manual

ob_start

(PHP 4, PHP 5)

ob_start — Ativa o buffer de saída

Descrição

bool ob_start ([ callback $ output_callback ] )

Esta função irá ativar o buffer de saída. Enquanto o buffer de saída estiver ativo, não é enviada a saída do script (outros que não sejam cabeçalhos), ao invés a saída é guardada em um buffer interno.

O conteúdo deste buffer interno pode ser copiado em uma variável usando ob_get_contents(). Para enviar o que esta no buffer interno, use ob_end_flush(). Alternativamente, ob_end_clean() irá silenciosamente descartar o conteúdo do buffer.

Uma função de callback opcional output_callback também pode ser especificada. Esta função leva uma string coo parâmetro e deve retornar uma string. Esta função será chamada quando ob_end_flush() for chamada, ou quando o buffer de saída for descarregado ao final do script. Quando output_callback for chamada, ela irá receber o conteúdo do buffer como seu parâmetro e é esperado que ela retorne um novo buffer de saída como resultado, o qual será enviado para o browser. Se output_callback não é uma função que possa ser utilizada, esta função irá retornar FALSE.

Nota:

No PHP 4.0.4, ob_gzhandler() para facilitar o envio de dados gz-encoded para browsers que suportem paginas web comprimidas. ob_gzhandler() determina o tipo de codificação de conteúdo que o browser aceitará e enviará a sua saída de acordo.

Nota:

Antes do PHP 4.3.2 esta função não retornava FALSE caso output_callback não pudesse ser executada.

Buffers de saída são empilháveis, isro é, você pode utilizar ob_start() enquanto outro ob_start() estiver ativo. Apenas tenha certeza que você utiliza ob_end_flush() o número apropriado de vezes. Se multiplas funções de callback de saída estiverem ativas, a saída será filtrada sequencialmente atráves de cada uma delas na ordem de aninhamento.

ob_end_clean(), ob_end_flush(), ob_clean(), ob_flush() e ob_start() não devem ser utilizados dentro de uma função de callback. Se você utiliza-los dentro de uma função de callback, o funcionamento é indefinido. Se você quiser excluir o conteúdo de um buffer, retorne "" (uma string vazia) da função de callback.

Exemplo #1 Exemplo com uma função de callback definida pelo usuário

<?php

function callback($buffer)
{

  // replace all the apples with oranges
   return (str_replace("apples", "oranges", $buffer));

}

ob_start("callback");

?>

<html>
<body>
<p>It's like comparing apples to oranges.
</body>
</html>

<?php

ob_end_flush();

?>

Irá produzir:

<html>
<body>
<p>It's like comparing oranges to oranges.
</body>
</html>

Veja também ob_get_contents(),
ob_end_flush(),
ob_end_clean(),
ob_implicit_flush() e
ob_gzhandler().

ob_list_handlers
output_add_rewrite_var
Funções para Control de Saída


Add URL rewriter values

ob_start
output_reset_rewrite_vars
Funções para Control de Saída
PHP Manual

output_add_rewrite_var

(PHP 4 >= 4.3.0, PHP 5)

output_add_rewrite_var — Add URL rewriter values

Descrição

bool output_add_rewrite_var ( string $name , string $value )

This function adds another name/value pair to the URL rewrite mechanism. The name and value will be added to URLs (as GET parameter) and forms (as hidden input fields) the same way as the session ID when transparent URL rewriting is enabled with session.use_trans_sid. Please note that absolute URLs (http://example.com/..) aren't rewritten.

This function's behavior is controlled by the url_rewriter.tags php.ini parameter.

Nota: Calling this function will implicitly start output buffering if it is not active already.

Parâmetros

name

The variable name.

value

The variable value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 output_add_rewrite_var() example

<?php
output_add_rewrite_var('var', 'value');

// some links
echo '<a href="file.php">link</a>
<a href="http://example.com">link2</a>';

// a form
echo '<form action="script.php" method="post">
<input type="text" name="var2" />
</form>';

print_r(ob_list_handlers());
?>

O exemplo acima irá imprimir:

<a href="file.php?var=value">link</a>
<a href="http://example.com">link2</a>

<form action="script.php" method="post">
<input type="hidden" name="var" value="value" />
<input type="text" name="var2" />
</form>

Array
(
    [0] => URL-Rewriter
)

Veja Também

  • output_reset_rewrite_vars() - Reset URL rewriter values
  • ob_flush() - Descarrega (envia) o conteúdo do buffer de saída
  • ob_list_handlers() - List all output handlers in use

ob_start
output_reset_rewrite_vars
Funções para Control de Saída


Reset URL rewriter values

output_add_rewrite_var
runkit
Funções para Control de Saída
PHP Manual

output_reset_rewrite_vars

(PHP 4 >= 4.3.0, PHP 5)

output_reset_rewrite_vars — Reset URL rewriter values

Descrição

bool output_reset_rewrite_vars ( void )

This function resets the URL rewriter and removes all rewrite variables previously set by the output_add_rewrite_var() function or the session mechanism (if session.use_trans_sid was set on session_start()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 output_reset_rewrite_vars() example

<?php
session_start();
output_add_rewrite_var('var', 'value');

echo '<a href="file.php">link</a>';
ob_flush();

output_reset_rewrite_vars();
echo '<a href="file.php">link</a>';
?>

O exemplo acima irá imprimir:

<a href="file.php?PHPSESSID=xxx&var=value">link</a>
<a href="file.php">link</a>

Veja Também

  • output_add_rewrite_var() - Add URL rewriter values
  • ob_flush() - Descarrega (envia) o conteúdo do buffer de saída
  • ob_list_handlers() - List all output handlers in use
  • session_start() - Inicia dados de sessão

output_add_rewrite_var
runkit
Funções para Control de Saída


runkit

  • Introdução
  • Constantes pré-definidas
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • runkit Funções
    • Runkit_Sandbox — Runkit Sandbox Class -- PHP Virtual Machine
    • Runkit_Sandbox_Parent — Runkit Anti-Sandbox Class
    • runkit_class_adopt — Convert a base class to an inherited class, add ancestral methods when appropriate
    • runkit_class_emancipate — Convert an inherited class to a base class, removes any method whose scope is ancestral
    • runkit_constant_add — Similar to define(), but allows defining in class definitions as well
    • runkit_constant_redefine — Redefine an already defined constant
    • runkit_constant_remove — Remove/Delete an already defined constant
    • runkit_function_add — Add a new function, similar to create_function
    • runkit_function_copy — Copy a function to a new function name
    • runkit_function_redefine — Replace a function definition with a new implementation
    • runkit_function_remove — Remove a function definition
    • runkit_function_rename — Change a function's name
    • runkit_import — Process a PHP file importing function and class definitions, overwriting where appropriate
    • runkit_lint_file — Check the PHP syntax of the specified file
    • runkit_lint — Check the PHP syntax of the specified php code
    • runkit_method_add — Dynamically adds a new method to a given class
    • runkit_method_copy — Copies a method from class to another
    • runkit_method_redefine — Dynamically changes the code of the given method
    • runkit_method_remove — Dynamically removes the given method
    • runkit_method_rename — Dynamically changes the name of the given method
    • runkit_return_value_used — Determines if the current functions return value will be used
    • runkit_sandbox_output_handler — Specify a function to capture and/or process output from a runkit sandbox
    • runkit_superglobals — Return numerically indexed array of registered superglobals
output_reset_rewrite_vars
Introdução
Afetando o comportamento do PHP


Introdução

The runkit extension provides means to modify constants, user-defined functions, and user-defined classes. It also provides for custom superglobal variables and embeddable sub-interpreters via sandboxing.

This package is meant as a feature added replacement for the » classkit package. When compiled with the --enable-runkit=classkit option to ./configure, it will export classkit compatible function definitions and constants.

runkit
Constantes pré-definidas
runkit


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

RUNKIT_IMPORT_FUNCTIONS (integer)
runkit_import() flag indicating that normal functions should be imported from the specified file.
RUNKIT_IMPORT_CLASS_METHODS (integer)
runkit_import() flag indicating that class methods should be imported from the specified file.
RUNKIT_IMPORT_CLASS_CONSTS (integer)
runkit_import() flag indicating that class constants should be imported from the specified file. Note that this flag is only meaningful in PHP versions 5.1.0 and above.
RUNKIT_IMPORT_CLASS_PROPS (integer)
runkit_import() flag indicating that class standard properties should be imported from the specified file.
RUNKIT_IMPORT_CLASSES (integer)
runkit_import() flag representing a bitwise OR of the RUNKIT_IMPORT_CLASS_* constants.
RUNKIT_IMPORT_OVERRIDE (integer)
runkit_import() flag indicating that if any of the imported functions, methods, constants, or properties already exist, they should be replaced with the new definitions. If this flag is not set, then any imported definitions which already exist will be discarded.
RUNKIT_ACC_PUBLIC (integer)
PHP 5 specific flag to runkit_method_add()
RUNKIT_ACC_PROTECTED (integer)
PHP 5 specific flag to runkit_method_add()
RUNKIT_ACC_PRIVATE (integer)
PHP 5 specific flag to runkit_method_add()
CLASSKIT_ACC_PUBLIC (integer)
PHP 5 specific flag to classkit_method_add() Only defined when classkit compatibility is enabled.
CLASSKIT_ACC_PROTECTED (integer)
PHP 5 specific flag to classkit_method_add() Only defined when classkit compatibility is enabled.
CLASSKIT_ACC_PRIVATE (integer)
PHP 5 specific flag to classkit_method_add() Only defined when classkit compatibility is enabled.
CLASSKIT_AGGREGATE_OVERRIDE (integer)
PHP 5 specific flag to classkit_import() Only defined when classkit compatibility is enabled.
RUNKIT_VERSION (string)
Defined to the current version of the runkit package.
CLASSKIT_VERSION (string)
Defined to the current version of the runkit package. Only defined when classkit compatibility is enabled.
Introdução
Instalação/Configuração
runkit


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Constantes pré-definidas
Dependências
runkit


Dependências

Modifying Constants, Functions, Classes, and Methods works with all releases of PHP 4 and PHP 5. No special requirements are necessary.

Custom Superglobals are only available in PHP 4.2.0 or later.

Sandboxing requires PHP 5.1.0 or later, or PHP 5.0.0 with a special TSRM patch applied. Regardless of which version of PHP is in use it must be compiled with the --enable-maintainer-zts option. See the README file in the runkit package for additional information.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/runkit.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Runkit Configuration Options
Name | Default | Changeable | Changelog
runkit.superglobal | "" | PHP_INI_PERDIR |
runkit.internal_override | "0" | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

runkit.superglobal string
Comma-separated list of variable names to be treated as superglobals. This value should be set in the systemwide php.ini file, but may work in perdir configuration contexts depending on your SAPI.

Exemplo #1 Custom Superglobals with runkit.superglobal=_FOO,_BAR in php.ini

<?php
function show_values() {
  echo "Foo is $_FOO\n";
  echo "Bar is $_BAR\n";
  echo "Baz is $_BAZ\n";
}

$_FOO = 'foo';
$_BAR = 'bar';
$_BAZ = 'baz';

/* Displays foo and bar, but not baz */
show_values();
?>
runkit.internal_override boolean
Enables ability to modify/rename/remove internal functions.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
runkit Funções
Instalação/Configuração


runkit Funções

Índice

  • Runkit_Sandbox — Runkit Sandbox Class -- PHP Virtual Machine
  • Runkit_Sandbox_Parent — Runkit Anti-Sandbox Class
  • runkit_class_adopt — Convert a base class to an inherited class, add ancestral methods when appropriate
  • runkit_class_emancipate — Convert an inherited class to a base class, removes any method whose scope is ancestral
  • runkit_constant_add — Similar to define(), but allows defining in class definitions as well
  • runkit_constant_redefine — Redefine an already defined constant
  • runkit_constant_remove — Remove/Delete an already defined constant
  • runkit_function_add — Add a new function, similar to create_function
  • runkit_function_copy — Copy a function to a new function name
  • runkit_function_redefine — Replace a function definition with a new implementation
  • runkit_function_remove — Remove a function definition
  • runkit_function_rename — Change a function's name
  • runkit_import — Process a PHP file importing function and class definitions, overwriting where appropriate
  • runkit_lint_file — Check the PHP syntax of the specified file
  • runkit_lint — Check the PHP syntax of the specified php code
  • runkit_method_add — Dynamically adds a new method to a given class
  • runkit_method_copy — Copies a method from class to another
  • runkit_method_redefine — Dynamically changes the code of the given method
  • runkit_method_remove — Dynamically removes the given method
  • runkit_method_rename — Dynamically changes the name of the given method
  • runkit_return_value_used — Determines if the current functions return value will be used
  • runkit_sandbox_output_handler — Specify a function to capture and/or process output from a runkit sandbox
  • runkit_superglobals — Return numerically indexed array of registered superglobals
Tipos Resource
Runkit_Sandbox
runkit


Runkit Sandbox Class -- PHP Virtual Machine

runkit Funções
Runkit_Sandbox_Parent
runkit Funções
PHP Manual

Runkit_Sandbox

(PECL runkit >= 0.7.0)

Runkit_Sandbox — Runkit Sandbox Class -- PHP Virtual Machine

Descrição

Instantiating the Runkit_Sandbox class creates a new thread with its own scope and program stack. Using a set of options passed to the constructor, this environment may be restricted to a subset of what the primary interpreter can do and provide a safer environment for executing user supplied code.

Nota: Suporte para Sandbox (necessário para runkit_lint(), runkit_lint_file(), e a classe Runkit_Sandbox) esta disponível apenas com o PHP 5.1 com versões do PHP 5.0 com patch especial e precisam que seja uma versão segura para thread. Veja o arquivo README incluído no pacote runkit para maiores informações.

Constructor

void Runkit_Sandbox::__construct ([ array $options ] )

options is an associative array containing any combination of the special ini options listed below.

safe_mode

If the outer script which is instantiating the Runkit_Sandbox class is configured with safe_mode = off, then safe_mode may be turned on for the sandbox environment. This setting can not be used to disable safe_mode when it's already enabled in the outer script.

safe_mode_gid

If the outer script which is instantiating the Runkit_Sandbox class is configured with safe_mode_gid = on, then safe_mode_gid may be turned off for the sandbox environment. This setting can not be used to enable safe_mode_gid when it's already disabled in the outer script.

safe_mode_include_dir

If the outer script which is instantiating the Runkit_Sandbox class is configured with a safe_mode_include_dir, then a new safe_mode_include_dir may be set for sandbox environments below the currently defined value. safe_mode_include_dir may also be cleared to indicate that the bypass feature is disabled. If safe_mode_include_dir was blank in the outer script, but safe_mode was not enabled, then any arbitrary safe_mode_include_dir may be set while turning safe_mode on.

open_basedir

open_basedir may be set to any path below the current setting of open_basedir. If open_basedir is not set within the global scope, then it is assumed to be the root directory and may be set to any location.

allow_url_fopen

Like safe_mode, this setting can only be made more restrictive, in this case by setting it to FALSE when it is previously set to TRUE

disable_functions

Comma separated list of functions to disable within the sandbox sub-interpreter. This list need not contain the names of the currently disabled functions, they will remain disabled whether listed here or not.

disable_classes

Comma separated list of classes to disable within the sandbox sub-interpreter. This list need not contain the names of the currently disabled classes, they will remain disabled whether listed here or not.

runkit.superglobal

Comma separated list of variables to be treated as superglobals within the sandbox sub-interpreter. These variables will be used in addition to any variables defined internally or through the global runkit.superglobal setting.

runkit.internal_override

Ini option runkit.internal_override may be disabled (but not re-enabled) within sandboxes.

Exemplo #1 Instantiating a restricted sandbox

<?php
$options = array(
  'safe_mode'=>true,
  'open_basedir'=>'/var/www/users/jdoe/',
  'allow_url_fopen'=>'false',
  'disable_functions'=>'exec,shell_exec,passthru,system',
  'disable_classes'=>'myAppClass');
$sandbox = new Runkit_Sandbox($options);
/* Non-protected ini settings may set normally */
$sandbox->ini_set('html_errors',true);
?>

Accessing Variables

All variables in the global scope of the sandbox environment are accessible as properties of the sandbox object. The first thing to note is that because of the way memory between these two threads is managed, object and resource variables can not currently be exchanged between interpreters. Additionally, all arrays are deep copied and any references will be lost. This also means that references between interpreters are not possible.

Exemplo #2 Working with variables in a sandbox

<?php
$sandbox = new Runkit_Sandbox();

$sandbox->foo = 'bar';
$sandbox->eval('echo "$foo\n"; $bar = $foo . "baz";');
echo "{$sandbox->bar}\n";
if (isset($sandbox->foo)) unset($sandbox->foo);
$sandbox->eval('var_dump(isset($foo));');
?>

O exemplo acima irá imprimir:

bar
barbaz
bool(false)

Calling PHP Functions

Any function defined within the sandbox may be called as
a method on the sandbox object.  This also includes a few
pseudo-function language constructs:  eval(),
include(), include_once(),
require(), require_once(),
echo(), print(),
die(), and exit().

Exemplo #3 Calling sandbox functions

<?php
$sandbox = new Runkit_Sandbox();

echo $sandbox->str_replace('a','f','abc');
?>

O exemplo acima irá imprimir:

fbc

When passing arguments to a sandbox function, the arguments are taken from the outer instance of PHP. If you wish to pass arguments from the sandbox's scope, be sure to access them as properties of the sandbox object as illustrated above.

Exemplo #4 Passing arguments to sandbox functions

<?php
$sandbox = new Runkit_Sandbox();

$foo = 'bar';
$sandbox->foo = 'baz';
echo $sandbox->str_replace('a',$foo,'a');
echo $sandbox->str_replace('a',$sandbox->foo,'a');
?>

O exemplo acima irá imprimir:

bar
baz

Changing Sandbox Settings

As of runkit version 0.5, certain Sandbox settings may be modified on the fly using ArrayAccess syntax. Some settings, such as active are read-only and meant to provide status information. Other settings, such as output_handler may be set and read much like a normal array offset. Future settings may be write-only, however no such settings currently exist.

Sandbox Settings / Status Indicators
Setting | Type | Purpose | Default
active | Boolean (Read Only) | TRUE if the Sandbox is still in a usable state, FALSE if the request is in bailout due to a call to die(), exit(), or because of a fatal error condition. | TRUE (Initial)
output_handler | Callback | When set to a valid callback, all output generated by the Sandbox instance will be processed through the named function. Sandbox output handlers follow the same calling conventions as the system-wide output handler. | None
parent_access | Boolean | May the sandbox use instances of the Runkit_Sandbox_Parent class? Must be enabled for other Runkit_Sandbox_Parent related settings to work. | FALSE
parent_read | Boolean | May the sandbox read variables in its parent's context? | FALSE
parent_write | Boolean | May the sandbox modify variables in its parent's context? | FALSE
parent_eval | Boolean | May the sandbox evaluate arbitrary code in its parent's context? DANGEROUS | FALSE
parent_include | Boolean | May the sandbox include php code files in its parent's context? DANGEROUS | FALSE
parent_echo | Boolean | May the sandbox echo data in its parent's context effectively bypassing its own output_handler? | FALSE
parent_call | Boolean | May the sandbox call functions in its parent's context? | FALSE
parent_die | Boolean | May the sandbox kill its own parent? (And thus itself) | FALSE
parent_scope | Integer | What scope will parental property access look at? 0 == Global scope, 1 == Calling scope, 2 == Scope preceeding calling scope, 3 == The scope before that, etc..., etc... | 0 (Global)
parent_scope | String | When parent_scope is set to a string value, it refers to a named array variable in the global scope. If the named variable does not exist at the time of access it will be created as an empty array. If the variable exists but it not an array, a dummy array will be created containing a reference to the named global variable. |

runkit Funções
Runkit_Sandbox_Parent
runkit Funções


Runkit Anti-Sandbox Class

Runkit_Sandbox
runkit_class_adopt
runkit Funções
PHP Manual

Runkit_Sandbox_Parent

(PECL runkit >= 0.7.0)

Runkit_Sandbox_Parent — Runkit Anti-Sandbox Class

Descrição

void Runkit_Sandbox_Parent::__construct ( void )

Instantiating the Runkit_Sandbox_Parent class from within a sandbox environment created from the Runkit_Sandbox class provides some (controlled) means for a sandbox child to access its parent.

Nota: Suporte para Sandbox (necessário para runkit_lint(), runkit_lint_file(), e a classe Runkit_Sandbox) esta disponível apenas com o PHP 5.1 com versões do PHP 5.0 com patch especial e precisam que seja uma versão segura para thread. Veja o arquivo README incluído no pacote runkit para maiores informações.

In order for any of the Runkit_Sandbox_Parent features to function. Support must be enabled on a per-sandbox basis by enabling the parent_access flag from the parent's context.

Exemplo #1 Working with variables in a sandbox

<?php
$sandbox = new Runkit_Sandbox();
$sandbox['parent_access'] = true;
?>

Accessing the Parent's Variables

Just as with sandbox variable access, a sandbox parent's variables may be read from and written to as properties of the Runkit_Sandbox_Parent class. Read access to parental variables may be enabled with the parent_read setting (in addition to the base parent_access setting). Write access, in turn, is enabled through the parent_write setting.

Unlike sandbox child variable access, the variable scope is not limited to globals only. By setting the parent_scope setting to an appropriate integer value, other scopes in the active call stack may be inspected instead. A value of 0 (Default) will direct variable access at the global scope. 1 will point variable access at whatever variable scope was active at the time the current block of sandbox code was executed. Higher values progress back through the functions that called the functions that led to the sandbox executing code that tried to access its own parent's variables.

Exemplo #2 Accessing parental variables

<?php
$php = new Runkit_Sandbox();
$php['parent_access'] = true;
$php['parent_read'] = true;

$test = "Global";

$php->eval('$PARENT = new Runkit_Sandbox_Parent;');

$php['parent_scope'] = 0;
one();

$php['parent_scope'] = 1;
one();

$php['parent_scope'] = 2;
one();

$php['parent_scope'] = 3;
one();

$php['parent_scope'] = 4;
one();

$php['parent_scope'] = 5;
one();

function one() {
    $test = "one()";
    two();
}

function two() {
    $test = "two()";
    three();
}

function three() {
    $test = "three()";
    $GLOBALS['php']->eval('var_dump($PARENT->test);');
}
?>

O exemplo acima irá imprimir:

string(6) "Global"
string(7) "three()"
string(5) "two()"
string(5) "one()"
string(6) "Global"
string(6) "Global"

Calling the Parent's Functions

Just as with sandbox access, a sandbox may access its parents functions providing that the proper settings have been enabled. Enabling parent_call will allow the sandbox to call all functions available to the parent scope. Language constructs are each controlled by their own setting: print() and echo() are enabled with parent_echo. die() and exit() are enabled with parent_die. eval() is enabled with parent_eval while include(), include_once(), require(), and require_once() are enabled through parent_include.

Runkit_Sandbox
runkit_class_adopt
runkit Funções


Convert a base class to an inherited class, add ancestral methods when appropriate

Runkit_Sandbox_Parent
runkit_class_emancipate
runkit Funções
PHP Manual

runkit_class_adopt

(PECL runkit >= 0.7.0)

runkit_class_adopt — Convert a base class to an inherited class, add ancestral methods when appropriate

Descrição

bool runkit_class_adopt ( string $classname , string $parentname )

Parâmetros

classname

Name of class to be adopted

parentname

Parent class which child class is extending

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A runkit_class_adopt() example

<?php
class myParent {
  function parentFunc() {
    echo "Parent Function Output\n";
  }
}

class myChild {
}

runkit_class_adopt('myChild','myParent');
myChild::parentFunc();
?>

O exemplo acima irá imprimir:

Parent Function Output

Veja Também

  • runkit_class_emancipate() - Convert an inherited class to a base class, removes any method whose scope is ancestral

Runkit_Sandbox_Parent
runkit_class_emancipate
runkit Funções


Convert an inherited class to a base class, removes any method whose scope is ancestral

runkit_class_adopt
runkit_constant_add
runkit Funções
PHP Manual

runkit_class_emancipate

(PECL runkit >= 0.7.0)

runkit_class_emancipate — Convert an inherited class to a base class, removes any method whose scope is ancestral

Descrição

bool runkit_class_emancipate ( string $classname )

Parâmetros

classname

Name of class to emancipate

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A runkit_class_emancipate() example

<?php
class myParent {
  function parentFunc () {
    echo "Parent Function Output\n";
  }
}
class myChild extends myParent {
}

myChild::parentFunc();
runkit_class_emancipate('myChild');
myChild::parentFunc();
?>

O exemplo acima irá imprimir:

Parent Function Output
Fatal error: Call to undefined function:  parentFunc() in example.php on line 12

Veja Também

  • runkit_class_adopt() - Convert a base class to an inherited class, add ancestral methods when appropriate

runkit_class_adopt
runkit_constant_add
runkit Funções


Similar to define(), but allows defining in class definitions as well

runkit_class_emancipate
runkit_constant_redefine
runkit Funções
PHP Manual

runkit_constant_add

(PECL runkit >= 0.7.0)

runkit_constant_add — Similar to define(), but allows defining in class definitions as well

Descrição

bool runkit_constant_add ( string $constname , mixed $value )

Parâmetros

constname

Name of constant to declare. Either a string to indicate a global constant, or classname::constname to indicate a class constant.

value

NULL, Bool, Long, Double, String, or Resource value to store in the new constant.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • define() - Define uma constante
  • runkit_constant_redefine() - Redefine an already defined constant
  • runkit_constant_remove() - Remove/Delete an already defined constant

runkit_class_emancipate
runkit_constant_redefine
runkit Funções


Redefine an already defined constant

runkit_constant_add
runkit_constant_remove
runkit Funções
PHP Manual

runkit_constant_redefine

(PECL runkit >= 0.7.0)

runkit_constant_redefine — Redefine an already defined constant

Descrição

bool runkit_constant_redefine ( string $constname , mixed $newvalue )

Parâmetros

constname

Constant to redefine. Either string indicating global constant, or classname::constname indicating class constant.

newvalue

New value to assign to constant.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • runkit_constant_add() - Similar to define(), but allows defining in class definitions as well
  • runkit_constant_remove() - Remove/Delete an already defined constant

runkit_constant_add
runkit_constant_remove
runkit Funções


Remove/Delete an already defined constant

runkit_constant_redefine
runkit_function_add
runkit Funções
PHP Manual

runkit_constant_remove

(PECL runkit >= 0.7.0)

runkit_constant_remove — Remove/Delete an already defined constant

Descrição

bool runkit_constant_remove ( string $constname )

Parâmetros

constname

Name of constant to remove. Either a string indicating a global constant, or classname::constname indicating a class constant.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • define() - Define uma constante
  • runkit_constant_add() - Similar to define(), but allows defining in class definitions as well
  • runkit_constant_redefine() - Redefine an already defined constant

runkit_constant_redefine
runkit_function_add
runkit Funções


Add a new function, similar to create_function

runkit_constant_remove
runkit_function_copy
runkit Funções
PHP Manual

runkit_function_add

(PECL runkit >= 0.7.0)

runkit_function_add — Add a new function, similar to create_function()

Descrição

bool runkit_function_add ( string $funcname , string $arglist , string $code )

Parâmetros

funcname

Name of function to be created

arglist

Comma separated argument list

code

Code making up the function

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A runkit_function_add() example

<?php
runkit_function_add('testme','$a,$b','echo "The value of a is $a\n"; echo "The value of b is $b\n";');
testme(1,2);
?>

O exemplo acima irá imprimir:

The value of a is 1
The value of b is 2

Veja Também

  • create_function() - Cria uma função anônima (lambda-style)
  • runkit_function_redefine() - Replace a function definition with a new implementation
  • runkit_function_copy() - Copy a function to a new function name
  • runkit_function_rename() - Change a function's name
  • runkit_function_remove() - Remove a function definition
  • runkit_method_add() - Dynamically adds a new method to a given class

runkit_constant_remove
runkit_function_copy
runkit Funções


Copy a function to a new function name

runkit_function_add
runkit_function_redefine
runkit Funções
PHP Manual

runkit_function_copy

(PECL runkit >= 0.7.0)

runkit_function_copy — Copy a function to a new function name

Descrição

bool runkit_function_copy ( string $funcname , string $targetname )

Parâmetros

funcname

Name of existing function

targetname

Name of new function to copy definition to

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A runkit_function_copy() example

<?php
function original() {
  echo "In a function\n";
}
runkit_function_copy('original','duplicate');
original();
duplicate();
?>

O exemplo acima irá imprimir:

In a function
In a function

Veja Também

  • runkit_function_add() - Add a new function, similar to create_function
  • runkit_function_redefine() - Replace a function definition with a new implementation
  • runkit_function_rename() - Change a function's name
  • runkit_function_remove() - Remove a function definition

runkit_function_add
runkit_function_redefine
runkit Funções


Replace a function definition with a new implementation

runkit_function_copy
runkit_function_remove
runkit Funções
PHP Manual

runkit_function_redefine

(PECL runkit >= 0.7.0)

runkit_function_redefine — Replace a function definition with a new implementation

Descrição

bool runkit_function_redefine ( string $funcname , string $arglist , string $code )

Nota: Por padrão, apenas funções do usuário podem ser removidas, renomeadas ou modificadas. Para poder modificar funções internas, você deve ativar a definição runkit.internal_override no php.ini.

Parâmetros

funcname

Name of function to redefine

arglist

New list of arguments to be accepted by function

code

New code implementation

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A runkit_function_redefine() example

<?php
function testme() {
  echo "Original Testme Implementation\n";
}
testme();
runkit_function_redefine('testme','','echo "New Testme Implementation\n";');
testme();
?>

O exemplo acima irá imprimir:

Original Testme Implementation
New Testme Implementation

Veja Também

  • runkit_function_add() - Add a new function, similar to create_function
  • runkit_function_copy() - Copy a function to a new function name
  • runkit_function_rename() - Change a function's name
  • runkit_function_remove() - Remove a function definition

runkit_function_copy
runkit_function_remove
runkit Funções


Remove a function definition

runkit_function_redefine
runkit_function_rename
runkit Funções
PHP Manual

runkit_function_remove

(PECL runkit >= 0.7.0)

runkit_function_remove — Remove a function definition

Descrição

bool runkit_function_remove ( string $funcname )

Nota: Por padrão, apenas funções do usuário podem ser removidas, renomeadas ou modificadas. Para poder modificar funções internas, você deve ativar a definição runkit.internal_override no php.ini.

Parâmetros

funcname

Name of function to be deleted

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • runkit_function_add() - Add a new function, similar to create_function
  • runkit_function_copy() - Copy a function to a new function name
  • runkit_function_redefine() - Replace a function definition with a new implementation
  • runkit_function_rename() - Change a function's name

runkit_function_redefine
runkit_function_rename
runkit Funções


Change a function's name

runkit_function_remove
runkit_import
runkit Funções
PHP Manual

runkit_function_rename

(PECL runkit >= 0.7.0)

runkit_function_rename — Change a function's name

Descrição

bool runkit_function_rename ( string $funcname , string $newname )

Nota: Por padrão, apenas funções do usuário podem ser removidas, renomeadas ou modificadas. Para poder modificar funções internas, você deve ativar a definição runkit.internal_override no php.ini.

Parâmetros

funcname

Current function name

newname

New function name

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • runkit_function_add() - Add a new function, similar to create_function
  • runkit_function_copy() - Copy a function to a new function name
  • runkit_function_redefine() - Replace a function definition with a new implementation
  • runkit_function_remove() - Remove a function definition

runkit_function_remove
runkit_import
runkit Funções


Process a PHP file importing function and class definitions, overwriting where appropriate

runkit_function_rename
runkit_lint_file
runkit Funções
PHP Manual

runkit_import

(PECL runkit >= 0.7.0)

runkit_import — Process a PHP file importing function and class definitions, overwriting where appropriate

Descrição

bool runkit_import ( string $filename [, int $flags = RUNKIT_IMPORT_CLASS_METHODS ] )

Similar to include() however any code residing outside of a function or class is simply ignored. Additionally, depending on the value of flags, any functions or classes which already exist in the currently running environment will be automatically overwritten by their new definitions.

Parâmetros

filename

Filename to import function and class definitions from

flags

Bitwise OR of the RUNKIT_IMPORT_* family of constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

runkit_function_rename
runkit_lint_file
runkit Funções


Check the PHP syntax of the specified file

runkit_import
runkit_lint
runkit Funções
PHP Manual

runkit_lint_file

(PECL runkit >= 0.7.0)

runkit_lint_file — Check the PHP syntax of the specified file

Descrição

bool runkit_lint_file ( string $filename )

The runkit_lint_file() function performs a syntax (lint) check on the specified filename testing for scripting errors. This is similar to using php -l from the commandline.

Nota: Suporte para Sandbox (necessário para runkit_lint(), runkit_lint_file(), e a classe Runkit_Sandbox) esta disponível apenas com o PHP 5.1 com versões do PHP 5.0 com patch especial e precisam que seja uma versão segura para thread. Veja o arquivo README incluído no pacote runkit para maiores informações.

Parâmetros

filename

File containing PHP Code to be lint checked

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • runkit_lint() - Check the PHP syntax of the specified php code

runkit_import
runkit_lint
runkit Funções


Check the PHP syntax of the specified php code

runkit_lint_file
runkit_method_add
runkit Funções
PHP Manual

runkit_lint

(PECL runkit >= 0.7.0)

runkit_lint — Check the PHP syntax of the specified php code

Descrição

bool runkit_lint ( string $code )

The runkit_lint() function performs a syntax (lint) check on the specified php code testing for scripting errors. This is similar to using php -l from the command line except runkit_lint() accepts actual code rather than a filename.

Nota: Suporte para Sandbox (necessário para runkit_lint(), runkit_lint_file(), e a classe Runkit_Sandbox) esta disponível apenas com o PHP 5.1 com versões do PHP 5.0 com patch especial e precisam que seja uma versão segura para thread. Veja o arquivo README incluído no pacote runkit para maiores informações.

Parâmetros

code

PHP Code to be lint checked

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • runkit_lint_file() - Check the PHP syntax of the specified file

runkit_lint_file
runkit_method_add
runkit Funções


Dynamically adds a new method to a given class

runkit_lint
runkit_method_copy
runkit Funções
PHP Manual

runkit_method_add

(PECL runkit >= 0.7.0)

runkit_method_add — Dynamically adds a new method to a given class

Descrição

bool runkit_method_add ( string $classname , string $methodname , string $args , string $code [, int $flags = RUNKIT_ACC_PUBLIC ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

The class to which this method will be added

methodname

The name of the method to add

args

Comma-delimited list of arguments for the newly-created method

code

The code to be evaluated when methodname is called

flags

The type of method to create, can be RUNKIT_ACC_PUBLIC, RUNKIT_ACC_PROTECTED or RUNKIT_ACC_PRIVATE

Nota:

This parameter is only used as of PHP 5, because, prior to this, all methods were public.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 runkit_method_add() example

<?php
class Example {
    function foo() {
        echo "foo!\n";
    }
}

// create an Example object
$e = new Example();

// Add a new public method
runkit_method_add(
    'Example',
    'add',
    '$num1, $num2',
    'return $num1 + $num2;',
    RUNKIT_ACC_PUBLIC
);

// add 12 + 4
echo $e->add(12, 4);
?>

O exemplo acima irá imprimir:

16

Veja Também

  • runkit_method_copy() - Copies a method from class to another
  • runkit_method_redefine() - Dynamically changes the code of the given method
  • runkit_method_remove() - Dynamically removes the given method
  • runkit_method_rename() - Dynamically changes the name of the given method
  • runkit_function_add() - Add a new function, similar to create_function

runkit_lint
runkit_method_copy
runkit Funções


Copies a method from class to another

runkit_method_add
runkit_method_redefine
runkit Funções
PHP Manual

runkit_method_copy

(PECL runkit >= 0.7.0)

runkit_method_copy — Copies a method from class to another

Descrição

bool runkit_method_copy ( string $dClass , string $dMethod , string $sClass [, string $sMethod ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

dClass

Destination class for copied method

dMethod

Destination method name

sClass

Source class of the method to copy

sMethod

Name of the method to copy from the source class. If this parameter is omitted, the value of dMethod is assumed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 runkit_method_copy() example

<?php
class Foo {
    function example() {
        return "foo!\n";
    }
}

class Bar {
    // initially, no methods
}

// copy the example() method from the Foo class to the Bar class, as baz()
runkit_method_copy('Bar', 'baz', 'Foo', 'example');

// output copied function
echo Bar::baz();
?>

O exemplo acima irá imprimir:

foo!

Veja Também

  • runkit_method_add() - Dynamically adds a new method to a given class
  • runkit_method_redefine() - Dynamically changes the code of the given method
  • runkit_method_remove() - Dynamically removes the given method
  • runkit_method_rename() - Dynamically changes the name of the given method
  • runkit_function_copy() - Copy a function to a new function name

runkit_method_add
runkit_method_redefine
runkit Funções


Dynamically changes the code of the given method

runkit_method_copy
runkit_method_remove
runkit Funções
PHP Manual

runkit_method_redefine

(PECL runkit >= 0.7.0)

runkit_method_redefine — Dynamically changes the code of the given method

Descrição

bool runkit_method_redefine ( string $classname , string $methodname , string $args , string $code [, int $flags = RUNKIT_ACC_PUBLIC ] )

Nota: Esta função não pode ser usada para manipular o método atualmente em execução (ou emcadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

The class in which to redefine the method

methodname

The name of the method to redefine

args

Comma-delimited list of arguments for the redefined method

code

The new code to be evaluated when methodname is called

flags

The redefined method can be RUNKIT_ACC_PUBLIC, RUNKIT_ACC_PROTECTED or RUNKIT_ACC_PRIVATE

Nota:

This parameter is only used as of PHP 5, because, prior to this, all methods were public.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 runkit_method_redefine() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }
}

// create an Example object
$e = new Example();

// output Example::foo() (before redefine)
echo "Before: " . $e->foo();

// Redefine the 'foo' method
runkit_method_redefine(
    'Example',
    'foo',
    '',
    'return "bar!\n";',
    RUNKIT_ACC_PUBLIC
);

// output Example::foo() (after redefine)
echo "After: " . $e->foo();
?>

O exemplo acima irá imprimir:

Before: foo!
After: bar!

Veja Também

  • runkit_method_add() - Dynamically adds a new method to a given class
  • runkit_method_copy() - Copies a method from class to another
  • runkit_method_remove() - Dynamically removes the given method
  • runkit_method_rename() - Dynamically changes the name of the given method
  • runkit_function_redefine() - Replace a function definition with a new implementation

runkit_method_copy
runkit_method_remove
runkit Funções


Dynamically removes the given method

runkit_method_redefine
runkit_method_rename
runkit Funções
PHP Manual

runkit_method_remove

(PECL runkit >= 0.7.0)

runkit_method_remove — Dynamically removes the given method

Descrição

bool runkit_method_remove ( string $classname , string $methodname )

Nota: Esta função não pode ser usada para manipular o método atualmente em execução (ou emcadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

The class in which to remove the method

methodname

The name of the method to remove

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 runkit_method_remove() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }

    function bar() {
        return "bar!\n";
    }
}

// Remove the 'foo' method
runkit_method_remove(
    'Example',
    'foo'
);

echo implode(' ', get_class_methods('Example'));

?>

O exemplo acima irá imprimir:

bar

Veja Também

  • runkit_method_add() - Dynamically adds a new method to a given class
  • runkit_method_copy() - Copies a method from class to another
  • runkit_method_redefine() - Dynamically changes the code of the given method
  • runkit_method_rename() - Dynamically changes the name of the given method
  • runkit_function_remove() - Remove a function definition

runkit_method_redefine
runkit_method_rename
runkit Funções


Dynamically changes the name of the given method

runkit_method_remove
runkit_return_value_used
runkit Funções
PHP Manual

runkit_method_rename

(PECL runkit >= 0.7.0)

runkit_method_rename — Dynamically changes the name of the given method

Descrição

bool runkit_method_rename ( string $classname , string $methodname , string $newname )

Nota: Esta função não pode ser usada para manipular o método atualmente em execução (ou emcadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

The class in which to rename the method

methodname

The name of the method to rename

newname

The new name to give to the renamed method

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 runkit_method_rename() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }
}

// Rename the 'foo' method to 'bar'
runkit_method_rename(
    'Example',
    'foo',
    'bar'
);

// output renamed function
echo Example::bar();
?>

O exemplo acima irá imprimir:

foo!

Veja Também

  • runkit_method_add() - Dynamically adds a new method to a given class
  • runkit_method_copy() - Copies a method from class to another
  • runkit_method_redefine() - Dynamically changes the code of the given method
  • runkit_method_remove() - Dynamically removes the given method
  • runkit_function_rename() - Change a function's name

runkit_method_remove
runkit_return_value_used
runkit Funções


Determines if the current functions return value will be used

runkit_method_rename
runkit_sandbox_output_handler
runkit Funções
PHP Manual

runkit_return_value_used

(PECL runkit >= 0.8.0)

runkit_return_value_used — Determines if the current functions return value will be used

Descrição

bool runkit_return_value_used ( void )

Valor Retornado

Returns TRUE if the function's return value is used by the calling scope, otherwise FALSE

Exemplos

Exemplo #1 runkit_return_value_used() example

<?php
function foo() {
  var_dump(runkit_return_value_used());
}

foo();
$f = foo();
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

runkit_method_rename
runkit_sandbox_output_handler
runkit Funções


Specify a function to capture and/or process output from a runkit sandbox

runkit_return_value_used
runkit_superglobals
runkit Funções
PHP Manual

runkit_sandbox_output_handler

(PECL runkit >= 0.7.0)

runkit_sandbox_output_handler — Specify a function to capture and/or process output from a runkit sandbox

Descrição

mixed runkit_sandbox_output_handler ( object $sandbox [, mixed $callback ] )

Ordinarily, anything output (such as with echo() or print()) will be output as though it were printed from the parent's scope. Using runkit_sandbox_output_handler() however, output generated by the sandbox (including errors), can be captured by a function outside of the sandbox.

Nota: Suporte para Sandbox (necessário para runkit_lint(), runkit_lint_file(), e a classe Runkit_Sandbox) esta disponível apenas com o PHP 5.1 com versões do PHP 5.0 com patch especial e precisam que seja uma versão segura para thread. Veja o arquivo README incluído no pacote runkit para maiores informações.

Nota: Deprecated

As of runkit version 0.5, this function is deprecated and is scheduled to be removed from the package prior to a 1.0 release. The output handler for a given Runkit_Sandbox instance may be read/set using the array offset syntax shown on the Runkit_Sandbox class definition page.

Parâmetros

sandbox

Object instance of Runkit_Sandbox class on which to set output handling.

callback

Name of a function which expects one parameter. Output generated by sandbox will be passed to this callback. Anything returned by the callback will be displayed normally. If this parameter is not passed then output handling will not be changed. If a non-truth value is passed, output handling will be disabled and will revert to direct display.

Valor Retornado

Returns the name of the previously defined output handler callback, or FALSE if no handler was previously defined.

Exemplos

Exemplo #1 Feeding output to a variable

<?php
function capture_output($str) {
  $GLOBALS['sandbox_output'] .= $str;

  return '';
}

$sandbox_output = '';

$php = new Runkit_Sandbox();
runkit_sandbox_output_handler($php, 'capture_output');
$php->echo("Hello\n");
$php->eval('var_dump("Excuse me");');
$php->die("I lost myself.");
unset($php);

echo "Sandbox Complete\n\n";
echo $sandbox_output;
?>

O exemplo acima irá imprimir:

Sandbox Complete

Hello
string(9) "Excuse me"
I lost myself.

runkit_return_value_used
runkit_superglobals
runkit Funções


Return numerically indexed array of registered superglobals

runkit_sandbox_output_handler
scream
runkit Funções
PHP Manual

runkit_superglobals

(PECL runkit >= 0.7.0)

runkit_superglobals — Return numerically indexed array of registered superglobals

Descrição

array runkit_superglobals ( void )

Valor Retornado

Returns a numerically indexed array of the currently registered superglobals. i.e. _GET, _POST, _REQUEST, _COOKIE, _SESSION, _SERVER, _ENV, _FILES

Veja Também

  • Variable Scope

runkit_sandbox_output_handler
scream
runkit Funções


Break the silence operator

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Exemplos
    • Example that shows the effect of scream
runkit_superglobals
Introdução
Afetando o comportamento do PHP


Introdução

The scream extension gives the possibility to disable the silencing error control operator so all errors are being reported. This feature is controlled by an ini setting.

scream
Instalação/Configuração
scream


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
scream


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/scream

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

scream Opções de Configuração
Nome | Padrão | Modificável | Changelog
scream.enabled | Off | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

scream.enabled int

Whether or not to enable scream.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
Exemplos
Instalação/Configuração


Exemplos

Índice

  • Example that shows the effect of scream
Tipos Resource
Example that shows the effect of scream
scream


Example that shows the effect of scream

This example demonstrates how scream affects the behaviour of PHP's error handler.

Exemplo #1 Enabling and disabling scream at runtime

<?php
// Make sure errors will be shown
ini_set('display_errors', true);
error_reporting(E_ALL);

// Disable scream - this is the default and produce an error
ini_set('scream.enabled', false);
echo "Opening http://example.com/not-existing-file\n";
@fopen('http://example.com/not-existing-file', 'r');

// Now enable scream and try again
ini_set('scream.enabled', true);
echo "Opening http://example.com/not-existing-file\n";
@fopen('http://example.com/another-not-existing-file', 'r');
?>

O exemplo acima irá imprimir algo similar a:

Opening http://example.com/not-existing-file
Opening http://example.com/not-existing-file

Warning: fopen(http://example.com/another-not-existing-file): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in example.php on line 14

Nota: Usually one would set this in the php.ini configuration file instead of changing the code.

Exemplos
WinCache
Exemplos


Windows Cache for PHP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • WinCache Statistics Script
    • WinCache Session Handler
    • WinCache Functions Reroutes
    • Tipos Resource
  • Constantes pré-definidas
  • WinCache Funções
    • wincache_fcache_fileinfo — Retrieves information about files cached in the file cache
    • wincache_fcache_meminfo — Retrieves information about file cache memory usage
    • wincache_lock — Acquires an exclusive lock on a given key
    • wincache_ocache_fileinfo — Retrieves information about files cached in the opcode cache
    • wincache_ocache_meminfo — Retrieves information about opcode cache memory usage
    • wincache_refresh_if_changed — Refreshes the cache entries for the cached files
    • wincache_rplist_fileinfo — Retrieves information about resolve file path cache
    • wincache_rplist_meminfo — Retrieves information about memory usage by the resolve file path cache
    • wincache_scache_info — Retrieves information about files cached in the session cache
    • wincache_scache_meminfo — Retrieves information about session cache memory usage
    • wincache_ucache_add — Adds a variable in user cache only if variable does not already exist in the cache
    • wincache_ucache_cas — Compares the variable with old value and assigns new value to it
    • wincache_ucache_clear — Deletes entire content of the user cache
    • wincache_ucache_dec — Decrements the value associated with the key
    • wincache_ucache_delete — Deletes variables from the user cache
    • wincache_ucache_exists — Checks if a variable exists in the user cache
    • wincache_ucache_get — Gets a variable stored in the user cache
    • wincache_ucache_inc — Increments the value associated with the key
    • wincache_ucache_info — Retrieves information about data stored in the user cache
    • wincache_ucache_meminfo — Retrieves information about user cache memory usage
    • wincache_ucache_set — Adds a variable in user cache and overwrites a variable if it already exists in the cache
    • wincache_unlock — Releases an exclusive lock on a given key
  • Building for Windows
    • Prerequisites
    • Compiling and building
    • Verifying the build
Example that shows the effect of scream
Introdução
Afetando o comportamento do PHP


Introdução

Windows Cache Extension for PHP is a PHP accelerator that is used to increase the speed of PHP applications running on Windows and Windows Server. Once the Windows Cache Extension for PHP is enabled and loaded by the PHP engine, PHP applications can take advantage of the functionality without any code modifications.

The Windows Cache Extension includes 5 different types of caches. The following describes the purpose of each cache type and the benefits it provides.

  • PHP Opcode Cache - PHP is a script processing engine, which reads an input stream of data that contains text and/or PHP instructions and produces another stream of data, most commonly in the HTML format. This means that on a web server the PHP engine reads, parses, compiles and executes a PHP script each time that it is requested by a Web client. The reading, parsing and compilation operations put additional load on the web server's CPU and file system and thus affect the overall performance of a PHP web application. The PHP bytecode (opcode) cache is used to store the compiled script bytecode in shared memory so that it can be re-used by PHP engine for subsequent executions of the same script.

  • File Cache - Even with the PHP opcode cache enabled, the PHP engine has to accesses the script files on a file system. When PHP scripts are stored on a remote UNC file share, the file operations introduce a significant performance overhead. The Windows Cache Extension for PHP includes a file cache that is used to store the content of the PHP script files in shared memory, which reduces the amount of file system operations performed by PHP engine.

  • Resolve File Path Cache - PHP scripts very often include or operate with files by using relative file paths. Every file path has to be normalized to an absolute file path by the PHP engine. When a PHP application uses many PHP files and accesses them by relative paths, the operation of resolving the paths may negatively impact the application's performance. The Windows Cache Extension for PHP provides a Resolve File Path cache, which is used to store the mappings between relative and absolute file paths, thereby reducing the number of path resolutions that the PHP engine has to perform.

  • User Cache (available since version 1.1.0) - PHP scripts can take advantage of the shared memory cache by using the user cache API's. PHP objects and variables can be stored in the user cache and then re-used on subsequent requests. This can be used to improve performance of PHP scripts and to share the data across multiple PHP processes.

  • Session Handler (available since version 1.1.0) - The WinCache session handler can be used to store the PHP session data in the shared memory cache. This avoids file system operations for reading and writing session data, which improves performance when large amount of data is stored in PHP session.

WinCache
Instalação/Configuração
WinCache


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • WinCache Statistics Script
  • WinCache Session Handler
  • WinCache Functions Reroutes
  • Tipos Resource
Introdução
Dependências
WinCache


Dependências

The extension is currently supported only on the following configurations:

Windows OS:

  • Windows XP SP3 with IIS 5.1 and » FastCGI Extension
  • Windows Server 2003 with IIS 6.0 and » FastCGI Extension
  • Windows Vista SP1 with IIS 7.0 and FastCGI Module
  • Windows Server 2008 with IIS 7.0 and FastCGI Module
  • Windows 7 with IIS 7.5 and FastCGI Module
  • Windows Server 2008 R2 with IIS 7.5 and FastCGI Module

PHP:

  • PHP 5.2.X, Non-thread-safe build
  • PHP 5.3 X86, Non-thread-safe VC9 build

Nota: The WinCache Extension can only be used when IIS is configured to run PHP via FastCGI.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/wincache.

There are two packages for this extension: one package is for PHP versions 5.2.X, and the other package is for PHP 5.3.X. Select the package that is appropriate for the PHP version being used.

To install and enable the extension, follow these steps:

  1. Unpack the package into some temporary location.

  2. Copy the php_wincache.dll file into the PHP extensions folder. Typically this folder is called "ext" and it is located in the same folder with all PHP binary files. For example: C:\Program Files\PHP\ext.

  3. Using a text editor, open the php.ini file, which is usually located in the same folder where all PHP binary files are. For example: C:\Program Files\PHP\php.ini.

  4. Add the following line at the end of the php.ini file: extension = php_wincache.dll.

  5. Save and close the php.ini file.

  6. Recycle the IIS Application Pools for PHP to pick up the configuration changes. To check that the extension has been enabled, create a file called phpinfo.php with a PHP code that calls phpinfo function.

  7. Save the phpinfo.php file in the root folder of a IIS web site that uses PHP, then open a browser and make a request to http://localhost/phpinfo.php. Search within the returned web page for a section called wincache. If the extension is enabled, then the phpinfo output will list the configuration settings provided by the WinCache.

Nota: Do not forget to remove phpinfo.php file from the web site's root folder after verifying that extension has been enabled.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

The following table lists and explains the configuration settings provided by the WinCache extension:

WinCache configuration options
Name | Default | Minimum | Maximum | Changeable | Changelog
wincache.fcenabled | "1" | "0" | "1" | PHP_INI_ALL | Available since WinCache 1.0.0
wincache.fcenabledfilter | "NULL" | "NULL" | "NULL" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.fcachesize | "24" | "5" | "255" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.fcndetect | "1" | "0" | "1" | PHP_INI_SYSTEM | Available since WinCache 1.1.0
wincache.maxfilesize | "256" | "10" | "2048" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.ocenabled | "1" | "0" | "1" | PHP_INI_ALL | Available since WinCache 1.0.0
wincache.ocenabledfilter | "NULL" | "NULL" | "NULL" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.ocachesize | "96" | "15" | "255" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.filecount | "4096" | "1024" | "16384" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.chkinterval | "30" | "0" | "300" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.ttlmax | "1200" | "0" | "7200" | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.enablecli | 0 | 0 | 1 | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.ignorelist | NULL | NULL | NULL | PHP_INI_ALL | Available since WinCache 1.0.0
wincache.namesalt | NULL | NULL | NULL | PHP_INI_SYSTEM | Available since WinCache 1.0.0
wincache.ucenabled | 1 | 0 | 1 | PHP_INI_SYSTEM | Available since WinCache 1.1.0
wincache.ucachesize | 8 | 5 | 85 | PHP_INI_SYSTEM | Available since WinCache 1.1.0
wincache.scachesize | 8 | 5 | 85 | PHP_INI_SYSTEM | Available since WinCache 1.1.0
wincache.rerouteini | NULL | NULL | NULL | PHP_INI_SYSTEM | Available since WinCache 1.2.0
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

wincache.fcenabled boolean
Enables or disables the file cache functionality.
wincache.fcenabledfilter string
Defines a comma-separated list of IIS web site identifiers where file cache should be enabled or disabled. This setting works in conjunction with wincache.fcenabled: if wincache.fcenabled is set to 1, then the sites listed in the wincache.fcenabledfilter will have the file cache turned off; if wincache.fcenabled is set to 0, then the sites listed in the wincache.fcenabledfilter will have the file cache turned on.
wincache.fcachesize integer
Defines the maximum memory size (in megabytes) that is allocated for the file cache. If the total size of all the cached files exceeds the value specified in this setting, then most stale files will be removed from the file cache.
wincache.fcndetect boolean
Enables or disables the file change notification detection functionality. If file change notification is supported then it will be used to refresh the opcode and file cache entries as soon as the corresponding files are modified on a file system. If file change notification is not supported, for example when using network file shares, then wincache will poll for file changes at regular time intervals specified by wincache.chkinterval.
wincache.maxfilesize integer
Defines the maximum allowed size (in kilobytes) for a single file to be cached. If a file size exceeds the specified value, the file will not be cached. This setting applies to the file cache only.
wincache.ocenabled boolean
Enables or disables the opcode cache functionality
wincache.ocenabledfilter string
Defines a comma-separated list of IIS web site identifiers where opcode cache should be enabled or disabled. This setting works in conjunction with wincache.ocenabled: if wincache.ocenabled is set to 1, then the sites listed in the wincache.ocenabledfilter will have the opcode cache turned off; if wincache.ocenabled is set to 0, then the sites listed in the wincache.ocenabledfilter will have the opcode cache turned on.
wincache.ocachesize integer
Defines the maximum memory size (in megabytes) that is allocated for the opcode cache. If the cached opcode size exceeds the specified value, then most stale opcode will be removed from the cache. Note that the opcode cache size must be at least 3 times bigger than file cache size. If that is not the case the opcode cache size will be automatically increased.
wincache.filecount integer
Defines how many files are expected to be cached by the extension, so that appropriate memory size is allocated at the startup time. If the number of files exceeds the specified value, the WinCache will re-allocate more memory as needed.
wincache.chkinterval integer
Defines how often (in seconds) the extension checks for file changes in order to refresh the cache. Setting it to 0 will disable the refreshing of the cache. The file changes will not be reflected in the cache unless the cache entry for that file is removed by scavenger or IIS application pool is recycled or wincache_refresh_if_changed function is called.
wincache.ttlmax integer
Defines the maximum time to live (in seconds) for a cached entry without being used. Setting it to 0 will disable the cache scavenger, so the cached entries will never be removed from the cache during the lifetime of the IIS worker process.
wincache.enablecli boolean
Defines if caching is enabled when PHP is running in command line (CLI) mode.
wincache.ignorelist string

Defines a list of files that should not be cached by the extension. The files list is specified by using file names only, separated by the pipe symbol - "|".

Exemplo #1 wincache.ignorelist example

wincache.ignorelist = "index.php|misc.php|admin.php"

wincache.namesalt string
Defines a string that will be used when naming the extension specific objects that are stored in shared memory. This is used to avoid conflicts that may be caused if other applications within an IIS worker process tries to access shared memory. The length of the namesalt string cannot exceed 8 characters.
wincache.ucenabled boolean
Enables or disables the user cache functionality.
wincache.ucachesize integer
Defines the maximum memory size in megabytes that is allocated for the user cache. If the total size of variables stored in the user cache exceeds the specified value, then the most stale variables will be removed from the cache.
wincache.scachesize integer
Defines the maximum memory size in megabytes that is allocated for the session cache. If the total size of data stored in the session cache exceeds the specified value, then the most stale data will be removed from the cache.
wincache.rerouteini string
Specifies an absolute or a relateve path to the reroute.ini file that contains the list of PHP functions whose implementation should be replaced with the WinCache function equivalents. If a relative path is specified then it is assumed to be relative to the location of php-cgi.exe file.

Instalação
WinCache Statistics Script
Instalação/Configuração


WinCache Statistics Script

The installation package for WinCache includes a PHP script, wincache.php, that can be used to obtain cache information and statistics.

If the WinCache extension was installed via the Microsoft Web Platform Installer, then this script is located in %SystemDrive%\Program Files\IIS\Windows Cache for PHP\. On a 64-bit version of the Windows Server operating system, the script is located in %SystemDrive%\Program Files (x86)\IIS\Windows Cache for PHP. If the extension was installed manually, then the wincache.php will be located in the same folder from which the content of the installation package was extracted.

To use wincache.php, copy it into a root folder of a Web site or into any subfolder. To protect the script, open it in any text editor and replace the values for USERNAME and PASSWORD constants. If any other IIS authentication is enabled on the server, then follow the instructions in the comments:

Exemplo #1 Authentication configuration for wincache.php

<?php
/**
 * ======================== CONFIGURATION SETTINGS ==============================
 * If you do not want to use authentication for this page, set USE_AUTHENTICATION to 0.
 * If you use authentication then replace the default password.
 */
define('USE_AUTHENTICATION', 1);
define('USERNAME', 'wincache');
define('PASSWORD', 'wincache');

/**
 * The Basic PHP authentication will work only when IIS is configured to support
 * Anonymous Authentication' and nothing else. If IIS is configured to support/use
 * any other kind of authentication like Basic/Negotiate/Digest etc, this will not work.
 * In that case use the array below to define the names of users in your
 * domain/network/workgroup which you want to grant access to.
 */
$user_allowed = array('DOMAIN\user1', 'DOMAIN\user2', 'DOMAIN\user3');

/**
 * If the array contains string 'all', then all the users authenticated by IIS
 * will have access to the page. Uncomment the below line and comment above line
 * to grant access to all users who gets authenticated by IIS.
 */
/* $user_allowed = array('all'); */

/** ===================== END OF CONFIGURATION SETTINGS ========================== */
?>

Nota: Always protect the wincache.php script by using either the built-in authentication or the server's authentication mechanism. Leaving this script unprotected may compromise the security of your web application and web server.

Configurações em Execução
WinCache Session Handler
Instalação/Configuração


WinCache Session Handler

The WinCache session handler (available since WinCache 1.1.0) can be used to configure PHP to store the session data in shared memory session cache. Using shared memory instead of the default file session storage helps improve performance of PHP applications that store large amount of data in session objects. Wincache session cache uses file-backed shared memory, which ensures that the session data is not lost during recycling of IIS application pools.

To configure PHP to use WinCache session handler set the php.ini setting session.save_handler to wincache. By default the Windows temporary file location is used for storing the session data. To change the location of the session file use session.save_path directive.

Exemplo #1 Enabling WinCache session handler

session.save_handler = wincache
session.save_path = C:\inetpub\temp\session\

WinCache Statistics Script
WinCache Functions Reroutes
Instalação/Configuração


WinCache Functions Reroutes

The WinCache functions reroutes (available since WinCache 1.2.0) can be used to replace built-in PHP functions with their equivalents that are optimized for a particular purpose. WinCache extension includes Windows-optimized implementation of PHP file functions that may improve performance of PHP applications in cases when PHP has to access files on network shares. The optimized implementation is provided for the following functions:

  • file_exists
  • file_get_contents
  • readfile
  • is_readable
  • is_writable
  • is_dir
  • realpath
  • filesize

To configure WinCache to use the functions reroutes use the file reroute.ini that is included in WinCache installation package. Copy this file into the same directory where php.ini file is located. After that add the wincache.rerouteini setting in php.ini and specify an absolute or relative path to the reroute.ini file.

Exemplo #1 Enabling WinCache functions reroutes

wincache.rerouteini = C:\PHP\reroute.ini

Nota: If WinCache functions reroutes are enabled it is recommended to increase the WinCache file cache size. This can be done by using wincache.fcachesize setting.

The reroute.ini file contains the mappings between the native PHP functions and their equivalents in WinCache. Each line in the file defines a mapping by using the following syntax:

<PHP function name>:[<number of function parameters>]=<wincache function name>

The example of the file is shown below. In this example the calls to PHP function file_get_contents() will be replaced with calls to wincache_file_get_contents() only if the number of parameters passed to the function is less than or equals to 2. Specifying the number of parameters is useful when replacement function does not handle all the function's parameters.

Exemplo #2 Reroute.ini file content

[FunctionRerouteList]
file_exists=wincache_file_exists
file_get_contents:2=wincache_file_get_contents
readfile:2=wincache_readfile
is_readable=wincache_is_readable
is_writable=wincache_is_writable
is_writeable=wincache_is_writable
is_file=wincache_is_file
is_dir=wincache_is_dir
realpath=wincache_realpath
filesize=wincache_filesize

WinCache Session Handler
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

WinCache Functions Reroutes
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
WinCache Funções
WinCache


WinCache Funções

Índice

  • wincache_fcache_fileinfo — Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo — Retrieves information about file cache memory usage
  • wincache_lock — Acquires an exclusive lock on a given key
  • wincache_ocache_fileinfo — Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo — Retrieves information about opcode cache memory usage
  • wincache_refresh_if_changed — Refreshes the cache entries for the cached files
  • wincache_rplist_fileinfo — Retrieves information about resolve file path cache
  • wincache_rplist_meminfo — Retrieves information about memory usage by the resolve file path cache
  • wincache_scache_info — Retrieves information about files cached in the session cache
  • wincache_scache_meminfo — Retrieves information about session cache memory usage
  • wincache_ucache_add — Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_cas — Compares the variable with old value and assigns new value to it
  • wincache_ucache_clear — Deletes entire content of the user cache
  • wincache_ucache_dec — Decrements the value associated with the key
  • wincache_ucache_delete — Deletes variables from the user cache
  • wincache_ucache_exists — Checks if a variable exists in the user cache
  • wincache_ucache_get — Gets a variable stored in the user cache
  • wincache_ucache_inc — Increments the value associated with the key
  • wincache_ucache_info — Retrieves information about data stored in the user cache
  • wincache_ucache_meminfo — Retrieves information about user cache memory usage
  • wincache_ucache_set — Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_unlock — Releases an exclusive lock on a given key
Constantes pré-definidas
wincache_fcache_fileinfo
WinCache


Retrieves information about files cached in the file cache

WinCache Funções
wincache_fcache_meminfo
WinCache Funções
PHP Manual

wincache_fcache_fileinfo

(PECL wincache >= 1.0.0)

wincache_fcache_fileinfo — Retrieves information about files cached in the file cache

Descrição

array wincache_fcache_fileinfo ([ bool $summaryonly = false ] )

Retrieves information about file cache content and its usage.

Parâmetros

summaryonly

Controls whether the returned array will contain information about individual cache entries along with the file cache summary.

Valor Retornado

Array of meta data about file cache or FALSE on failure

The array returned by this function contains the following elements:

  • total_cache_uptime - total time in seconds that the file cache has been active
  • total_file_count - total number of files that are currently in the file cache
  • total_hit_count - number of times the files have been served from the file cache
  • total_miss_count - number of times the files have not been found in the file cache

  • file_entries - an array that contains the information about all the cached files:

    • file_name - absolute file name of the cached file
    • add_time - time in seconds since the file has been added to the file cache
    • use_time - time in seconds since the file has been accessed in the file cache
    • last_check - time in seconds since the file has been checked for modifications
    • hit_count - number of times the file has been served from the cache
    • file_size - size of the cached file in bytes

Exemplos

Exemplo #1 A wincache_fcache_fileinfo() example

<pre>
<?php
print_r(wincache_fcache_fileinfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(   [total_cache_uptime] => 3234
    [total_file_count] => 5
    [total_hit_count] => 0
    [total_miss_count] => 1
    [file_entries] => Array
        (
            [1] => Array
                (
                    [file_name] => c:\inetpub\wwwroot\checkcache.php
                    [add_time] => 1
                    [use_time] => 0
                    [last_check] => 1
                    [hit_count] => 1
                    [file_size] => 2435
                )
            [2] => Array (...iterates for each cached file)
        )
)

Veja Também

  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

WinCache Funções
wincache_fcache_meminfo
WinCache Funções


Retrieves information about file cache memory usage

wincache_fcache_fileinfo
wincache_lock
WinCache Funções
PHP Manual

wincache_fcache_meminfo

(PECL wincache >= 1.0.0)

wincache_fcache_meminfo — Retrieves information about file cache memory usage

Descrição

array wincache_fcache_meminfo ( void )

Retrieves information about memory usage by file cache.

Valor Retornado

Array of meta data about file cache memory usage or FALSE on failure

The array returned by this function contains the following elements:

  • memory_total - amount of memory in bytes allocated for the file cache
  • memory_free - amount of free memory in bytes available for the file cache
  • num_used_blks - number of memory blocks used by the file cache
  • num_free_blks - number of free memory blocks available for the file cache
  • memory_overhead - amount of memory in bytes used for the file cache internal structures

Exemplos

Exemplo #1 A wincache_fcache_meminfo() example

<pre>
<?php
print_r(wincache_fcache_meminfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [memory_total] => 134217728
    [memory_free] => 131339120
    [num_used_blks] => 361
    [num_free_blks] => 3
    [memory_overhead] => 5856
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_fcache_fileinfo
wincache_lock
WinCache Funções


Acquires an exclusive lock on a given key

wincache_fcache_meminfo
wincache_ocache_fileinfo
WinCache Funções
PHP Manual

wincache_lock

(PECL wincache >= 1.1.0)

wincache_lock — Acquires an exclusive lock on a given key

Descrição

bool wincache_lock ( string $key [, bool $isglobal = false ] )

Obtains an exclusive lock on a given key. The execution of the current script will be blocked until the lock can be obtained. Once the lock is obtained, the other scripts that try to request the lock by using the same key will be blocked, until the current script releases the lock by using wincache_unlock().

Aviso

Using of the wincache_lock() and wincache_unlock() can cause deadlocks when executing PHP scripts in a multi-process environment like FastCGI. Do not use these functions unless you are absolutely sure you need to use them. For the majority of the operations on the user cache it is not necessary to use these functions.

Parâmetros

key

Name of the key in the cache to get the lock on.

isglobal

Controls whether the scope of the lock is system-wide or local. Local locks are scoped to the application pool in IIS FastCGI case or to all php processes that have the same parent process identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using wincache_lock()

<?php
$fp = fopen("/tmp/lock.txt", "r+");
if (wincache_lock(“lock_txt_lock”)) { // do an exclusive lock
    ftruncate($fp, 0); // truncate file
    fwrite($fp, "Write something here\n");
    wincache_unlock(“lock_txt_lock”); // release the lock
} else {
    echo "Couldn't get the lock!";
}
fclose($fp);
?>

Veja Também

  • wincache_unlock() - Releases an exclusive lock on a given key
  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache

wincache_fcache_meminfo
wincache_ocache_fileinfo
WinCache Funções


Retrieves information about files cached in the opcode cache

wincache_lock
wincache_ocache_meminfo
WinCache Funções
PHP Manual

wincache_ocache_fileinfo

(PECL wincache >= 1.0.0)

wincache_ocache_fileinfo — Retrieves information about files cached in the opcode cache

Descrição

array wincache_ocache_fileinfo ([ bool $summaryonly = false ] )

Retrieves information about opcode cache content and its usage.

Parâmetros

summaryonly

Controls whether the returned array will contain information about individual cache entries along with the opcode cache summary.

Valor Retornado

Array of meta data about opcode cache or FALSE on failure

The array returned by this function contains the following elements:

  • total_cache_uptime - total time in seconds that the opcode cache has been active
  • total_file_count - total number of files that are currently in the opcode cache
  • total_hit_count - number of times the compiled opcode have been served from the cache
  • total_miss_count - number of times the compiled opcode have not been found in the cache
  • is_local_cache - true is the cache metadata is for a local cache instance, false if the metadata is for the global cache

  • file_entries - an array that contains the information about all the cached files:

    • file_name - absolute file name of the cached file
    • add_time - time in seconds since the file has been added to the opcode cache
    • use_time - time in seconds since the file has been accessed in the opcode cache
    • last_check - time in seconds since the file has been checked for modifications
    • hit_count - number of times the file has been served from the cache
    • function_count - number of functions in the cached file
    • class_count - number of classes in the cached file

Exemplos

Exemplo #1 A wincache_ocache_fileinfo() example

<pre>
<?php
print_r(wincache_ocache_fileinfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [total_cache_uptime] => 17357
    [total_file_count] => 121
    [total_hit_count] => 36562
    [total_miss_count] => 201
    [file_entries] => Array
        (
            [1] => Array
                (
                    [file_name] => c:\inetpub\wwwroot\checkcache.php
                    [add_time] => 17356
                    [use_time] => 7
                    [last_check] => 10
                    [hit_count] => 454
                    [function_count] => 0
                    [class_count] => 1
                )
            [2] => Array (...iterates for each cached file)
        )
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_lock
wincache_ocache_meminfo
WinCache Funções


Retrieves information about opcode cache memory usage

wincache_ocache_fileinfo
wincache_refresh_if_changed
WinCache Funções
PHP Manual

wincache_ocache_meminfo

(PECL wincache >= 1.0.0)

wincache_ocache_meminfo — Retrieves information about opcode cache memory usage

Descrição

array wincache_ocache_meminfo ( void )

Retrieves information about memory usage by opcode cache.

Valor Retornado

Array of meta data about opcode cache memory usage or FALSE on failure

The array returned by this function contains the following elements:

  • memory_total - amount of memory in bytes allocated for the opcode cache
  • memory_free - amount of free memory in bytes available for the opcode cache
  • num_used_blks - number of memory blocks used by the opcode cache
  • num_free_blks - number of free memory blocks available for the opcode cache
  • memory_overhead - amount of memory in bytes used for the opcode cache internal structures

Exemplos

Exemplo #1 A wincache_ocache_meminfo() example

<pre>
<?php
print_r(wincache_ocache_meminfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [memory_total] => 134217728
    [memory_free] => 112106972
    [num_used_blks] => 15469
    [num_free_blks] => 4
    [memory_overhead] => 247600
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_ocache_fileinfo
wincache_refresh_if_changed
WinCache Funções


Refreshes the cache entries for the cached files

wincache_ocache_meminfo
wincache_rplist_fileinfo
WinCache Funções
PHP Manual

wincache_refresh_if_changed

(PECL wincache >= 1.0.0)

wincache_refresh_if_changed — Refreshes the cache entries for the cached files

Descrição

bool wincache_refresh_if_changed ([ array $files ] )

Refreshes the cache entries for the files, whose names were passed in the input argument. If no argument is specified then refreshes all the entries in the cache.

Parâmetros

files

An array of file names for files that need to be refreshed. An absolute or relative file paths can be used.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

WinCache performs regular checks on the cached files to ensure that if any file has changed then the corresponding entry in the cache is updated. By default this check is performed every 30 seconds. If, for example, a PHP script updates another PHP script where the application's configuration settings are stored, then it may happen that after the configuration settings have been saved to a file, the application is still using old settings for some time until the cache is refreshed. In those cases it may be preferrable to refresh the cache right after the file has been changed. The following example shows how this can be done.

Exemplo #1 A wincache_refresh_if_changed() example

<?php
$filename = 'C:\inetpub\wwwroot\config.php';
$handle = fopen($filename, 'w+');
if ($handle === FALSE) die('Failed to open file '.$filename.' for writing');
fwrite($handle, '<?php $setting=something; ?>');
fclose($handle);
wincache_refresh_if_changed(array($filename));
?>

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache

wincache_ocache_meminfo
wincache_rplist_fileinfo
WinCache Funções


Retrieves information about resolve file path cache

wincache_refresh_if_changed
wincache_rplist_meminfo
WinCache Funções
PHP Manual

wincache_rplist_fileinfo

(PECL wincache >= 1.0.0)

wincache_rplist_fileinfo — Retrieves information about resolve file path cache

Descrição

array wincache_rplist_fileinfo ([ bool $summaryonly = false ] )

Retrieves information about cached mappings between relative file paths and corresponding absolute file paths.

Valor Retornado

Array of meta data about the resolve file path cache or FALSE on failure

The array returned by this function contains the following elements:

  • total_file_count - total number of file path mappings stored in the cache

  • rplist_entries - an array that contains the information about all the cached file paths:

    • resolve_path - path to a file
    • subkey_data - corresponding absolute path to a file

Exemplos

Exemplo #1 A wincache_rplist_fileinfo() example

<pre>
<?php
print_r(wincache_rplist_fileinfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [total_file_count] => 5
    [rplist_entries] => Array
        (
            [1] => Array
                (
                    [resolve_path] => checkcache.php
                    [subkey_data] => c:\inetpub\wwwroot|c:\inetpub\wwwroot\checkcache.php
                )

            [2] => Array (...iterates for each cached file)
        )
)

Veja Também

  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_refresh_if_changed
wincache_rplist_meminfo
WinCache Funções


Retrieves information about memory usage by the resolve file path cache

wincache_rplist_fileinfo
wincache_scache_info
WinCache Funções
PHP Manual

wincache_rplist_meminfo

(PECL wincache >= 1.0.0)

wincache_rplist_meminfo — Retrieves information about memory usage by the resolve file path cache

Descrição

array wincache_rplist_meminfo ( void )

Retrieves information about memory usage by resolve file path cache.

Valor Retornado

Array of meta data that describes memory usage by resolve file path cache. or FALSE on failure

The array returned by this function contains the following elements:

  • memory_total - amount of memory in bytes allocated for the resolve file path cache
  • memory_free - amount of free memory in bytes available for the resolve file path cache
  • num_used_blks - number of memory blocks used by the resolve file path cache
  • num_free_blks - number of free memory blocks available for the resolve file path cache
  • memory_overhead - amount of memory in bytes used for the internal structures of resolve file path cache

Exemplos

Exemplo #1 A wincache_rplist_meminfo() example

<pre>
<?php
print_r(wincache_rplist_meminfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [memory_total] => 9437184
    [memory_free] => 9416744
    [num_used_blks] => 23
    [num_free_blks] => 1
    [memory_overhead] => 416
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_rplist_fileinfo
wincache_scache_info
WinCache Funções


Retrieves information about files cached in the session cache

wincache_rplist_meminfo
wincache_scache_meminfo
WinCache Funções
PHP Manual

wincache_scache_info

(PECL wincache >= 1.1.0)

wincache_scache_info — Retrieves information about files cached in the session cache

Descrição

array wincache_scache_info ([ bool $summaryonly = false ] )

Retrieves information about session cache content and its usage.

Parâmetros

summaryonly

Controls whether the returned array will contain information about individual cache entries along with the session cache summary.

Valor Retornado

Array of meta data about session cache or FALSE on failure

The array returned by this function contains the following elements:

  • total_cache_uptime - total time in seconds that the session cache has been active
  • total_item_count - total number of elements that are currently in the session cache
  • is_local_cache - true is the cache metadata is for a local cache instance, false if the metadata is for the global cache
  • total_hit_count - number of times the data has been served from the cache
  • total_miss_count - number of times the data has not been found in the cache

  • scache_entries - an array that contains the information about all the cached items:

    • key_name - name of the key which is used to store the data
    • value_type - type of value stored by the key
    • use_time - time in seconds since the file has been accessed in the opcode cache
    • last_check - time in seconds since the file has been checked for modifications
    • ttl_seconds - time remaining for the data to live in the cache, 0 meaning infinite
    • age_seconds - time elapsed from the time data has been added in the cache
    • hitcount - number of times data has been served from the cache

Exemplos

Exemplo #1 A wincache_scache_info() example

<pre>
<?php
print_r(wincache_scache_info());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [total_cache_uptime] => 17357
    [total_file_count] => 121
    [total_hit_count] => 36562
    [total_miss_count] => 201
    [scache_entries] => Array
        (
            [1] => Array
                (
                    [file_name] => c:\inetpub\wwwroot\checkcache.php
                    [add_time] => 17356
                    [use_time] => 7
                    [last_check] => 10
                    [hit_count] => 454
                    [function_count] => 0
                    [class_count] => 1
                )
            [2] => Array (...iterates for each cached file)
        )
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_rplist_meminfo
wincache_scache_meminfo
WinCache Funções


Retrieves information about session cache memory usage

wincache_scache_info
wincache_ucache_add
WinCache Funções
PHP Manual

wincache_scache_meminfo

(PECL wincache >= 1.1.0)

wincache_scache_meminfo — Retrieves information about session cache memory usage

Descrição

array wincache_scache_meminfo ( void )

Retrieves information about memory usage by session cache.

Valor Retornado

Array of meta data about session cache memory usage or FALSE on failure

The array returned by this function contains the following elements:

  • memory_total - amount of memory in bytes allocated for the session cache
  • memory_free - amount of free memory in bytes available for the session cache
  • num_used_blks - number of memory blocks used by the session cache
  • num_free_blks - number of free memory blocks available for the session cache
  • memory_overhead - amount of memory in bytes used for the session cache internal structures

Exemplos

Exemplo #1 A wincache_scache_meminfo() example

<pre>
<?php
print_r(wincache_scache_meminfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [memory_total] => 5242880
    [memory_free] => 5215056
    [num_used_blks] => 6
    [num_free_blks] => 3
    [memory_overhead] => 176
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache

wincache_scache_info
wincache_ucache_add
WinCache Funções


Adds a variable in user cache only if variable does not already exist in the cache

wincache_scache_meminfo
wincache_ucache_cas
WinCache Funções
PHP Manual

wincache_ucache_add

(PECL wincache >= 1.1.0)

wincache_ucache_add — Adds a variable in user cache only if variable does not already exist in the cache

Descrição

bool wincache_ucache_add ( string $key , mixed $value [, int $ttl = 0 ] )
bool wincache_ucache_add ( array $values [, mixed $unused [, int $ttl = 0 ]] )

Adds a variable in user cache, only if this variable doesn't already exist in the cache. The added variable remains in the user cache unless its time to live expires or it is deleted by using wincache_ucache_delete() or wincache_ucache_clear() functions.

Parâmetros

key

Store the variable using this key name. If a variable with same key is already present the function will fail and return FALSE. key is case sensitive. To override the value even if key is present use wincache_ucache_set() function instad. key can also take array of name => value pairs where names will be used as keys. This can be used to add multiple values in the cache in one operation, thus avoiding race condition.

value

Value of a variable to store. Value supports all data types except resources, such as file handles. This paramter is ignored if first argument is an array. A general guidance is to pass NULL as value while using array as key. If value is an object, or an array containing objects, then the objects will be serialized. See __sleep() for details on serializing objects.

values

Associative array of keys and values.

ttl

Time for the variable to live in the cache in seconds. After the value specified in ttl has passed the stored variable will be deleted from the cache. This parameter takes a default value of 0 which means the variable will stay in the cache unless explicitly deleted by using wincache_ucache_delete() or wincache_ucache_clear() functions.

Valor Retornado

If key is string, the function returns TRUE on success and FALSE on failure.

If key is an array, the function returns:

  • If all the name => value pairs in the array can be set, function returns an empty array;
  • If all the name => value pairs in the array cannot be set, function returns FALSE;
  • If some can be set while others cannot, function returns an array with name=>value pair for which the addition failed in the user cache.

Exemplos

Exemplo #1 wincache_ucache_add() with key as a string

<?php
$bar = 'BAR';
var_dump(wincache_ucache_add('foo', $bar));
var_dump(wincache_ucache_add('foo', $bar));
var_dump(wincache_ucache_get('foo'));
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)
string(3) "BAR"

Exemplo #2 wincache_ucache_add() with key as an array

<?php
$colors_array = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8');
var_dump(wincache_ucache_add($colors_array));
var_dump(wincache_ucache_add($colors_array));
var_dump(wincache_ucache_get('Blue'));
?>

O exemplo acima irá imprimir:

array(0) { }
array(4) {
  ["green"]=> int(-1)
  ["Blue"]=> int(-1)
  ["yellow"]=> int(-1)
  ["cyan"]=> int(-1)
}
string(1) "6"

Veja Também

  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • __sleep()

wincache_scache_meminfo
wincache_ucache_cas
WinCache Funções


Compares the variable with old value and assigns new value to it

wincache_ucache_add
wincache_ucache_clear
WinCache Funções
PHP Manual

wincache_ucache_cas

(PECL wincache >= 1.1.0)

wincache_ucache_cas — Compares the variable with old value and assigns new value to it

Descrição

bool wincache_ucache_cas ( string $key , int $old_value , int $new_value )

Compares the variable associated with the key with old_value and if it matches then assigns the new_value to it.

Parâmetros

key

The key that is used to store the variable in the cache. key is case sensitive.

old_value

Old value of the variable pointed by key in the user cache. The value should be of type long, otherwise the function returns FALSE.

new_value

New value which will get assigned to variable pointer by key if a match is found. The value should be of type long, otherwise the function returns FALSE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using wincache_ucache_cas()

<?php
wincache_ucache_set('counter', 2922);
var_dump(wincache_ucache_cas('counter', 2922, 1));
var_dump(wincache_ucache_get('counter'));
?>

O exemplo acima irá imprimir:

bool(true)
int(1)

Veja Também

  • wincache_ucache_inc() - Increments the value associated with the key
  • wincache_ucache_dec() - Decrements the value associated with the key

wincache_ucache_add
wincache_ucache_clear
WinCache Funções


Deletes entire content of the user cache

wincache_ucache_cas
wincache_ucache_dec
WinCache Funções
PHP Manual

wincache_ucache_clear

(PECL wincache >= 1.1.0)

wincache_ucache_clear — Deletes entire content of the user cache

Descrição

bool wincache_ucache_clear ( void )

Clears/deletes all the values stored in the user cache.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 using wincache_ucache_clear()

<?php
wincache_ucache_set('green', 1);
wincache_ucache_set('red', 2);
wincache_ucache_set('orange', 4);
wincache_ucache_set('blue', 8);
wincache_ucache_set('cyan', 16);
$array1 = array('green', 'red', 'orange', 'blue', 'cyan');
var_dump(wincache_ucache_get($array1));
var_dump(wincache_ucache_clear());
var_dump(wincache_ucache_get($array1));
?>

O exemplo acima irá imprimir:

array(5) { ["green"]=> int(1)
           ["red"]=> int(2)
           ["orange"]=> int(4)
           ["blue"]=> int(8)
           ["cyan"]=> int(16) }
bool(true)
bool(false)

Veja Também

  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_add() - Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache

wincache_ucache_cas
wincache_ucache_dec
WinCache Funções


Decrements the value associated with the key

wincache_ucache_clear
wincache_ucache_delete
WinCache Funções
PHP Manual

wincache_ucache_dec

(PECL wincache >= 1.1.0)

wincache_ucache_dec — Decrements the value associated with the key

Descrição

mixed wincache_ucache_dec ( string $key [, int $dec_by = 1 [, bool &$success ]] )

Decrements the value associated with the key by 1 or as specified by dec_by.

Parâmetros

key

The key that was used to store the variable in the cache. key is case sensitive.

dec_by

The value by which the variable associated with the key will get decremented. If the argument is a floating point number it will be truncated to nearest integer. The variable associated with the key should be of type long, otherwise the function fails and returns FALSE.

success

Will be set to TRUE on success and FALSE on failure.

Valor Retornado

Returns the decremented value on success and FALSE on failure.

Exemplos

Exemplo #1 Using wincache_ucache_dec()

<?php
wincache_ucache_set('counter', 1);
var_dump(wincache_ucache_dec('counter', 2923, $success));
var_dump($success);
?>

O exemplo acima irá imprimir:

int(2922)
bool(true)

Veja Também

  • wincache_ucache_inc() - Increments the value associated with the key
  • wincache_ucache_cas() - Compares the variable with old value and assigns new value to it

wincache_ucache_clear
wincache_ucache_delete
WinCache Funções


Deletes variables from the user cache

wincache_ucache_dec
wincache_ucache_exists
WinCache Funções
PHP Manual

wincache_ucache_delete

(PECL wincache >= 1.1.0)

wincache_ucache_delete — Deletes variables from the user cache

Descrição

bool wincache_ucache_delete ( mixed $key )

Deletes the elements in the user cache pointed by key.

Parâmetros

key

The key that was used to store the variable in the cache. key is case sensitive. key can be an array of keys.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

If key is an array then the function returns FALSE if every element of the array fails to get deleted from the user cache, otherwise returns an array which consists of all the keys that are deleted.

Exemplos

Exemplo #1 Using wincache_ucache_delete() with key as a string

<?php
wincache_ucache_set('foo', 'bar');
var_dump(wincache_ucache_delete('foo'));
var_dump(wincache_ucache_exists('foo'));
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

Exemplo #2 Usingwincache_ucache_delete() with key as an array

<?php
$array1 = array('green' => '5', 'blue' => '6', 'yellow' => '7', 'cyan' => '8');
wincache_ucache_set($array1);
$array2 = array('green', 'blue', 'yellow', 'cyan');
var_dump(wincache_ucache_delete($array2));
?>

O exemplo acima irá imprimir:

array(4) { [0]=> string(5) "green"
           [1]=> string(4) "Blue"
           [2]=> string(6) "yellow"
           [3]=> string(4) "cyan" }

Exemplo #3 Using wincache_ucache_delete() with key as an array where some elements cannot be deleted

<?php
$array1 = array('green' => '5', 'blue' => '6', 'yellow' => '7', 'cyan' => '8');
wincache_ucache_set($array1);
$array2 = array('orange', 'red', 'yellow', 'cyan');
var_dump(wincache_ucache_delete($array2));
?>

O exemplo acima irá imprimir:

array(2) { [0]=> string(6) "yellow"
           [1]=> string(4) "cyan" }

Veja Também

  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_add() - Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache

wincache_ucache_dec
wincache_ucache_exists
WinCache Funções


Checks if a variable exists in the user cache

wincache_ucache_delete
wincache_ucache_get
WinCache Funções
PHP Manual

wincache_ucache_exists

(PECL wincache >= 1.1.0)

wincache_ucache_exists — Checks if a variable exists in the user cache

Descrição

bool wincache_ucache_exists ( string $key )

Checks if a variable with the key exists in the user cache or not.

Parâmetros

key

The key that was used to store the variable in the cache. key is case sensitive.

Valor Retornado

Returns TRUE if variable with the key exitsts, otherwise returns FALSE.

Exemplos

Exemplo #1 Using wincache_ucache_exists()

<?php
if (!wincache_ucache_exists('green'))
    wincache_ucache_set('green', 1);
var_dump(wincache_ucache_exists('green'));
?>

O exemplo acima irá imprimir:

bool(true)

Veja Também

  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_add() - Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache

wincache_ucache_delete
wincache_ucache_get
WinCache Funções


Gets a variable stored in the user cache

wincache_ucache_exists
wincache_ucache_inc
WinCache Funções
PHP Manual

wincache_ucache_get

(PECL wincache >= 1.1.0)

wincache_ucache_get — Gets a variable stored in the user cache

Descrição

mixed wincache_ucache_get ( mixed $key [, bool &$success ] )

Gets a variable stored in the user cache.

Parâmetros

key

The key that was used to store the variable in the cache. key is case sensitive. key can be an array of keys. In this case the return value will be an array of values of each element in the key array. If an object, or an array containing objects, is returned, then the objects will be unserialized. See __wakeup() for details on unserializing objects.

success

Will be set to TRUE on success and FALSE on failure.

Valor Retornado

If key is a string, the function returns the value of the variable stored with that key. The success is set to TRUE on success and to FALSE on failure.

The key is an array, the parameter success is always set to TRUE. The returned array (name => value pairs) will contain only those name => value pairs for which the get operation in user cache was successful. If none of the keys in the key array finds a match in the user cache an empty array will be returned.

Exemplos

Exemplo #1 wincache_ucache_get() with key as a string

<?php
wincache_ucache_add('color', 'blue');
var_dump(wincache_ucache_get('color', $success));
var_dump($success);
?>

O exemplo acima irá imprimir:

string(4) "blue"
bool(true)

Exemplo #2 wincache_ucache_get() with key as an array

<?php
$array1 = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8');
wincache_ucache_set($array1);
$array2 = array('green', 'Blue', 'yellow', 'cyan');
var_dump(wincache_ucache_get($array2, $success));
var_dump($success);
?>

O exemplo acima irá imprimir:

array(4) { ["green"]=> string(1) "5"
           ["Blue"]=> string(1) "6"
           ["yellow"]=> string(1) "7"
           ["cyan"]=> string(1) "8" }
bool(true)

Veja Também

  • wincache_ucache_add() - Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • __wakeup()

wincache_ucache_exists
wincache_ucache_inc
WinCache Funções


Increments the value associated with the key

wincache_ucache_get
wincache_ucache_info
WinCache Funções
PHP Manual

wincache_ucache_inc

(PECL wincache >= 1.1.0)

wincache_ucache_inc — Increments the value associated with the key

Descrição

mixed wincache_ucache_inc ( string $key [, int $inc_by = 1 [, bool &$success ]] )

Increments the value associated with the key by 1 or as specified by inc_by.

Parâmetros

key

The key that was used to store the variable in the cache. key is case sensitive.

inc_by

The value by which the variable associated with the key will get incremented. If the argument is a floating point number it will be truncated to nearest integer. The variable associated with the key should be of type long, otherwise the function fails and returns FALSE.

success

Will be set to TRUE on success and FALSE on failure.

Valor Retornado

Returns the incremented value on success and FALSE on failure.

Exemplos

Exemplo #1 Using wincache_ucache_inc()

<?php
wincache_ucache_set('counter', 1);
var_dump(wincache_ucache_inc('counter', 2921, $success));
var_dump($success);
?>

O exemplo acima irá imprimir:

int(2922)
bool(true)

Veja Também

  • wincache_ucache_dec() - Decrements the value associated with the key
  • wincache_ucache_cas() - Compares the variable with old value and assigns new value to it

wincache_ucache_get
wincache_ucache_info
WinCache Funções


Retrieves information about data stored in the user cache

wincache_ucache_inc
wincache_ucache_meminfo
WinCache Funções
PHP Manual

wincache_ucache_info

(PECL wincache >= 1.1.0)

wincache_ucache_info — Retrieves information about data stored in the user cache

Descrição

array wincache_ucache_info ([ bool $summaryonly = false [, string $key ]] )

Retrieves information about data stored in the user cache.

Parâmetros

summaryonly

Controls whether the returned array will contain information about individual cache entries along with the user cache summary.

key

The key of an entry in the user cache. If specified then the returned array will contain information only about that cache entry. If not specified and summaryonly is set to false then the returned array will contain information about all entries in the cache.

Valor Retornado

Array of meta data about user cache or FALSE on failure

The array returned by this function contains the following elements:

  • total_cache_uptime - total time in seconds that the user cache has been active
  • total_item_count - total number of elements that are currently in the user cache
  • is_local_cache - true is the cache metadata is for a local cache instance, false if the metadata is for the global cache
  • total_hit_count - number of times the data has been served from the cache
  • total_miss_count - number of times the data has not been found in the cache

  • ucache_entries - an array that contains the information about all the cached items:

    • key_name - name of the key which is used to store the data
    • value_type - type of value stored by the key
    • use_time - time in seconds since the file has been accessed in the opcode cache
    • last_check - time in seconds since the file has been checked for modifications
    • is_session - indicates if the data is a session variable
    • ttl_seconds - time remaining for the data to live in the cache, 0 meaning infinite
    • age_seconds - time elapsed from the time data has been added in the cache
    • hitcount - number of times data has been served from the cache

Exemplos

Exemplo #1 Using wincache_ucache_info()

<?php
wincache_ucache_get('green');
wincache_ucache_set('green', 2922);
wincache_ucache_get('green');
wincache_ucache_get('green');
wincache_ucache_get('green');
print_r(wincache_ucache_info());
?>

O exemplo acima irá imprimir:

Array
( ["total_cache_uptime"] => int(0)
  ["is_local_cache"] => bool(false)
  ["total_item_count"] => int(1)
  ["total_hit_count"] => int(3)
  ["total_miss_count"] => int(1)
  ["ucache_entries"] => Array(1)
    ( [1] => Array(6)
      (
        ["key_name"] => string(5) "green"
        ["value_type"] => string(4) "long"
        ["is_session"] => int(0)
        ["ttl_seconds"] => int(0)
        ["age_seconds"] => int(0)
        ["hitcount"] => int(3)
       )
    )
)

Veja Também

  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_ocache_meminfo() - Retrieves information about opcode cache memory usage
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_ucache_inc
wincache_ucache_meminfo
WinCache Funções


Retrieves information about user cache memory usage

wincache_ucache_info
wincache_ucache_set
WinCache Funções
PHP Manual

wincache_ucache_meminfo

(PECL wincache >= 1.1.0)

wincache_ucache_meminfo — Retrieves information about user cache memory usage

Descrição

array wincache_ucache_meminfo ( void )

Retrieves information about memory usage by user cache.

Valor Retornado

Array of meta data about user cache memory usage or FALSE on failure

The array returned by this function contains the following elements:

  • memory_total - amount of memory in bytes allocated for the user cache
  • memory_free - amount of free memory in bytes available for the user cache
  • num_used_blks - number of memory blocks used by the user cache
  • num_free_blks - number of free memory blocks available for the user cache
  • memory_overhead - amount of memory in bytes used for the user cache internal structures

Exemplos

Exemplo #1 A wincache_ucache_meminfo() example

<pre>
<?php
print_r(wincache_ucache_meminfo());
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [memory_total] => 5242880
    [memory_free] => 5215056
    [num_used_blks] => 6
    [num_free_blks] => 3
    [memory_overhead] => 176
)

Veja Também

  • wincache_fcache_fileinfo() - Retrieves information about files cached in the file cache
  • wincache_fcache_meminfo() - Retrieves information about file cache memory usage
  • wincache_ocache_fileinfo() - Retrieves information about files cached in the opcode cache
  • wincache_rplist_fileinfo() - Retrieves information about resolve file path cache
  • wincache_rplist_meminfo() - Retrieves information about memory usage by the resolve file path cache
  • wincache_refresh_if_changed() - Refreshes the cache entries for the cached files
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache
  • wincache_scache_meminfo() - Retrieves information about session cache memory usage

wincache_ucache_info
wincache_ucache_set
WinCache Funções


Adds a variable in user cache and overwrites a variable if it already exists in the cache

wincache_ucache_meminfo
wincache_unlock
WinCache Funções
PHP Manual

wincache_ucache_set

(PECL wincache >= 1.1.0)

wincache_ucache_set — Adds a variable in user cache and overwrites a variable if it already exists in the cache

Descrição

bool wincache_ucache_set ( mixed $key , mixed $value [, int $ttl = 0 ] )
bool wincache_ucache_set ( array $values [, mixed $unused [, int $ttl = 0 ]] )

Adds a variable in user cache. Overwrites a variable if it already exists in the cache. The added or updated variable remains in the user cache unless its time to live expires or it is deleted by using wincache_ucache_delete() or wincache_ucache_clear() functions.

Parâmetros

key

Store the variable using this key name. If a variable with same key is already present the function will overwrite the previous value with the new one. key is case sensitive. key can also take array of name => value pairs where names will be used as keys. This can be used to add multiple values in the cache in one operation, thus avoiding race condition.

value

Value of a variable to store. Value supports all data types except resources, such as file handles. This paramter is ignored if first argument is an array. A general guidance is to pass NULL as value while using array as key. If value is an object, or an array containing objects, then the objects will be serialized. See __sleep() for details on serializing objects.

values

Associative array of keys and values.

ttl

Time for the variable to live in the cache in seconds. After the value specified in ttl has passed the stored variable will be deleted from the cache. This parameter takes a default value of 0 which means the variable will stay in the cache unless explicitly deleted by using wincache_ucache_delete() or wincache_ucache_clear() functions.

Valor Retornado

If key is string, the function returns TRUE on success and FALSE on failure.

If key is an array, the function returns:

  • If all the name => value pairs in the array can be set, function returns an empty array;
  • If all the name => value pairs in the array cannot be set, function returns FALSE;
  • If some can be set while others cannot, function returns an array with name=>value pair for which the addition failed in the user cache.

Exemplos

Exemplo #1 wincache_ucache_set() with key as a string

<?php
$bar = 'BAR';
var_dump(wincache_ucache_set('foo', $bar));
var_dump(wincache_ucache_get('foo'));
$bar1 = 'BAR1';
var_dump(wincache_ucache_set('foo', $bar1));
var_dump(wincache_ucache_get('foo'));
?>

O exemplo acima irá imprimir:

bool(true)
string(3) "BAR"
bool(true)
string(3) "BAR1"

Exemplo #2 wincache_ucache_set() with key as an array

<?php
$colors_array = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8');
var_dump(wincache_ucache_set($colors_array));
var_dump(wincache_ucache_set($colors_array));
var_dump(wincache_ucache_get('Blue'));
?>

O exemplo acima irá imprimir:

array(0) {}
array(0) {}
string(1) "6"

Veja Também

  • wincache_ucache_add() - Adds a variable in user cache only if variable does not already exist in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • __sleep()

wincache_ucache_meminfo
wincache_unlock
WinCache Funções


Releases an exclusive lock on a given key

wincache_ucache_set
Building for Windows
WinCache Funções
PHP Manual

wincache_unlock

(PECL wincache >= 1.1.0)

wincache_unlock — Releases an exclusive lock on a given key

Descrição

bool wincache_unlock ( string $key )

Releases an exclusive lock that was obtained on a given key by using wincache_lock(). If any other process was blocked waiting for the lock on this key, that process will be able to obtain the lock.

Aviso

Using of the wincache_lock() and wincache_unlock() can cause deadlocks when executing PHP scripts in a multi-process environment like FastCGI. Do not use these functions unless you are absolutely sure you need to use them. For the majority of the operations on the user cache it is not necessary to use these functions.

Parâmetros

key

Name of the key in the cache to release the lock on.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using wincache_unlock()

<?php
$fp = fopen("/tmp/lock.txt", "r+");
if (wincache_lock(“lock_txt_lock”)) { // do an exclusive lock
    ftruncate($fp, 0); // truncate file
    fwrite($fp, "Write something here\n");
    wincache_unlock(“lock_txt_lock”); // release the lock
} else {
    echo "Couldn't get the lock!";
}
fclose($fp);
?>

Veja Também

  • wincache_lock() - Acquires an exclusive lock on a given key
  • wincache_ucache_set() - Adds a variable in user cache and overwrites a variable if it already exists in the cache
  • wincache_ucache_get() - Gets a variable stored in the user cache
  • wincache_ucache_delete() - Deletes variables from the user cache
  • wincache_ucache_clear() - Deletes entire content of the user cache
  • wincache_ucache_exists() - Checks if a variable exists in the user cache
  • wincache_ucache_meminfo() - Retrieves information about user cache memory usage
  • wincache_ucache_info() - Retrieves information about data stored in the user cache
  • wincache_scache_info() - Retrieves information about files cached in the session cache

wincache_ucache_set
Building for Windows
WinCache Funções


Building for Windows

Índice

  • Prerequisites
  • Compiling and building
  • Verifying the build
wincache_unlock
Prerequisites
WinCache


Prerequisites

Building WinCache extension will require:

  1. PHP source code
  2. PHP build environment
  3. WinCache source code

For completing first two steps, follow the step-by-step guide for how to » build PHP on Windows.

For getting the WinCache source code follow the instructions described in Downloading PECL extensions.

Building for Windows
Compiling and building
Building for Windows


Compiling and building

The following steps describe how to compile and build WinCache on Windows OS:

  1. Open a command prompt which is used to build PHP

  2. Go to the root folder where PHP sources are present

  3. Run the command:

    cscript.exe win32\build\buildconf.js

  4. Run the command:

    configure.bat --help
    The output will contain a new flag --enable-wincache.

  5. Run the command:

    configure.js [all options used to build PHP] --enable-wincache
    --enable-wincache is the only extra option which is required to ensure that WinCache extension gets built properly. This option will build WinCache and will statically link it with PHP dll. To build WinCache extension as a stand-alone DLL use the option --enable-wincache=shared.

  6. Run the command:

    nmake

Prerequisites
Verifying the build
Building for Windows


Verifying the build

The following steps describe how to verify that WinCache has been built correctly:

  1. Go to the folder where the PHP binaries are built

  2. Run the command:

    php.exe -n -d extension=php_wincache.dll -re wincache
    If WinCache has been built properly, the output of this command will list the INI directives and functions supported by WinCache.

Compiling and building
Manipulação de Formatos de Audio
Building for Windows


Manipulação de Formatos de Audio

  • ID3 — ID3 Tags
    • Introdução
    • Instalação/Configuração
    • Predefined Constants
    • ID3 Funções
  • KTaglib
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • KTaglib_MPEG_File — The KTagLib_MPEG_File class
    • KTaglib_MPEG_AudioProperties — The KTaglib_MPEG_AudioProperties class
    • KTaglib_Tag — The KTaglib_Tag class
    • KTaglib_ID3v2_Tag — The KTagLib_ID3v2_Tag class
    • KTaglib_ID3v2_Frame — The KTagLib_ID3v2_Frame class
    • KTaglib_ID3v2_AttachedPictureFrame — The KTaglib_ID3v2_AttachedPictureFrame class
  • oggvorbis — OGG/Vorbis
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Context options
    • Exemplos
  • OpenAL — OpenAL Audio Bindings
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • OpenAL Funções
Verifying the build
ID3
Referência das Funções


ID3 Tags

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Predefined Constants
  • ID3 Funções
    • id3_get_frame_long_name — Get the long name of an ID3v2 frame
    • id3_get_frame_short_name — Get the short name of an ID3v2 frame
    • id3_get_genre_id — Get the id for a genre
    • id3_get_genre_list — Get all possible genre values
    • id3_get_genre_name — Get the name for a genre id
    • id3_get_tag — Get all information stored in an ID3 tag
    • id3_get_version — Get version of an ID3 tag
    • id3_remove_tag — Remove an existing ID3 tag
    • id3_set_tag — Update information stored in an ID3 tag
Manipulação de Formatos de Audio
Introdução
Manipulação de Formatos de Audio


Introdução

These functions let you read and manipulate ID3 tags. ID3 tags are used in MP3 files to store title of the song, as well as information about the artist, album, genre, year and track number.

Since version 0.2 it is also possible to extract text frames from ID3 v2.2+ tags.

ID3
Instalação/Configuração
ID3


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
ID3


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/id3.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
Predefined Constants
Instalação/Configuração


Predefined Constants

Most of the id3 functions either let you specify or return a tag version. In order to specify the version please use on of these constants.

ID3_V1_0 (integer)
ID3_V1_0 is used if you are working with ID3 V1.0 tags. These tags may contain the fields title, artist, album, genre, year and comment.
ID3_V1_1 (integer)
ID3_V1_1 is used if you are working with ID3 V1.1 tags. These tags may all information contained in v1.0 tags plus the track number.
ID3_V2_1 (integer)
ID3_V2_1 is used if you are working with ID3 V2.1 tags.
ID3_V2_2 (integer)
ID3_V2_2 is used if you are working with ID3 V2.2 tags.
ID3_V2_3 (integer)
ID3_V2_3 is used if you are working with ID3 V2.3 tags.
ID3_V2_4 (integer)
ID3_V2_4 is used if you are working with ID3 V2.4 tags.
ID3_BEST (integer)
ID3_BEST is used if would like to let the id3 functions determine which tag version should be used.

Tipos Resource
ID3 Funções
ID3


ID3 Funções

Índice

  • id3_get_frame_long_name — Get the long name of an ID3v2 frame
  • id3_get_frame_short_name — Get the short name of an ID3v2 frame
  • id3_get_genre_id — Get the id for a genre
  • id3_get_genre_list — Get all possible genre values
  • id3_get_genre_name — Get the name for a genre id
  • id3_get_tag — Get all information stored in an ID3 tag
  • id3_get_version — Get version of an ID3 tag
  • id3_remove_tag — Remove an existing ID3 tag
  • id3_set_tag — Update information stored in an ID3 tag
Predefined Constants
id3_get_frame_long_name
ID3


Get the long name of an ID3v2 frame

ID3 Funções
id3_get_frame_short_name
ID3 Funções
PHP Manual

id3_get_frame_long_name

(PECL id3 >= 0.2)

id3_get_frame_long_name — Get the long name of an ID3v2 frame

Descrição

string id3_get_frame_long_name ( string $frameId )

id3_get_frame_long_name() returns the long name for an ID3v2 frame.

Parâmetros

frameId

An ID3v2 frame

Valor Retornado

Returns the frame long name or FALSE on errors.

Exemplos

Exemplo #1 id3_get_frame_long_name() example

<?php
$longName = id3_get_frame_long_name("TOLY");
echo $longName;
?>

O exemplo acima irá imprimir:

Original lyricist(s)/text writer(s)

Veja Também

  • id3_get_frame_short_name() - Get the short name of an ID3v2 frame

ID3 Funções
id3_get_frame_short_name
ID3 Funções


Get the short name of an ID3v2 frame

id3_get_frame_long_name
id3_get_genre_id
ID3 Funções
PHP Manual

id3_get_frame_short_name

(PECL id3 >= 0.2)

id3_get_frame_short_name — Get the short name of an ID3v2 frame

Descrição

string id3_get_frame_short_name ( string $frameId )

id3_get_frame_short_name() returns the short name for an ID3v2 frame.

Parâmetros

frameId

An ID3v2 frame

Valor Retornado

Returns the frame short name or FALSE on errors.

The values returned by id3_get_frame_short_name() are used in the array returned by id3_get_tag().

Exemplos

Exemplo #1 id3_get_frame_short_name() example

<?php
$shortName = id3_get_frame_short_name("TOLY");
echo $shortName;
?>

O exemplo acima irá imprimir:

originalLyricist

Veja Também

  • id3_get_frame_long_name() - Get the long name of an ID3v2 frame

id3_get_frame_long_name
id3_get_genre_id
ID3 Funções


Get the id for a genre

id3_get_frame_short_name
id3_get_genre_list
ID3 Funções
PHP Manual

id3_get_genre_id

(PECL id3 >= 0.1)

id3_get_genre_id — Get the id for a genre

Descrição

int id3_get_genre_id ( string $genre )

id3_get_genre_id() returns the id for a genre.

Parâmetros

genre

An integer ranging from 0 to 147

Valor Retornado

The genre id or FALSE on errors.

Exemplos

Exemplo #1 id3_get_genre_id() example

<?php
$id = id3_get_genre_id("Alternative");
echo $id;
?>

O exemplo acima irá imprimir:

20

Veja Também

  • id3_get_genre_name() - Get the name for a genre id
  • id3_get_genre_list() - Get all possible genre values

id3_get_frame_short_name
id3_get_genre_list
ID3 Funções


Get all possible genre values

id3_get_genre_id
id3_get_genre_name
ID3 Funções
PHP Manual

id3_get_genre_list

(PECL id3 >= 0.1)

id3_get_genre_list — Get all possible genre values

Descrição

array id3_get_genre_list ( void )

id3_get_genre_list() returns an array containing all possible genres that may be stored in an ID3 tag. This list has been created by Eric Kemp and later extended by WinAmp.

This function is useful to provide you users a list of genres from which they may choose one. When updating the ID3 tag you will always have to specify the genre as an integer ranging from 0 to 147.

Valor Retornado

Returns an array containing all possible genres that may be stored in an ID3 tag.

Exemplos

Exemplo #1 id3_get_genre_list() example

<?php
$genres = id3_get_genre_list();
print_r($genres);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => Blues
    [1] => Classic Rock
    [2] => Country
    [3] => Dance
    [4] => Disco
    [5] => Funk
    [6] => Grunge
    [7] => Hip-Hop
    [8] => Jazz
    [9] => Metal
    [10] => New Age
    [11] => Oldies
    [12] => Other
    [13] => Pop
    [14] => R&B
    [15] => Rap
    [16] => Reggae
    [17] => Rock
    [18] => Techno
    [19] => Industrial
    [20] => Alternative
    [21] => Ska
    [22] => Death Metal
    [23] => Pranks
    [24] => Soundtrack
    [25] => Euro-Techno
    [26] => Ambient
    [27] => Trip-Hop
    [28] => Vocal
    [29] => Jazz+Funk
    [30] => Fusion
    [31] => Trance
    [32] => Classical
    [33] => Instrumental
    [34] => Acid
    [35] => House
    [36] => Game
    [37] => Sound Clip
    [38] => Gospel
    [39] => Noise
    [40] => Alternative Rock
    [41] => Bass
    [42] => Soul
    [43] => Punk
    [44] => Space
    [45] => Meditative
    [46] => Instrumental Pop
    [47] => Instrumental Rock
    [48] => Ethnic
    [49] => Gothic
    [50] => Darkwave
    [51] => Techno-Industrial
    [52] => Electronic
    [53] => Pop-Folk
    [54] => Eurodance
    [55] => Dream
    [56] => Southern Rock
    [57] => Comedy
    [58] => Cult
    [59] => Gangsta
    [60] => Top 40
    [61] => Christian Rap
    [62] => Pop/Funk
    [63] => Jungle
    [64] => Native US
    [65] => Cabaret
    [66] => New Wave
    [67] => Psychadelic
    [68] => Rave
    [69] => Showtunes
    [70] => Trailer
    [71] => Lo-Fi
    [72] => Tribal
    [73] => Acid Punk
    [74] => Acid Jazz
    [75] => Polka
    [76] => Retro
    [77] => Musical
    [78] => Rock & Roll
    [79] => Hard Rock
    [80] => Folk
    [81] => Folk-Rock
    [82] => National Folk
    [83] => Swing
    [84] => Fast Fusion
    [85] => Bebob
    [86] => Latin
    [87] => Revival
    [88] => Celtic
    [89] => Bluegrass
    [90] => Avantgarde
    [91] => Gothic Rock
    [92] => Progressive Rock
    [93] => Psychedelic Rock
    [94] => Symphonic Rock
    [95] => Slow Rock
    [96] => Big Band
    [97] => Chorus
    [98] => Easy Listening
    [99] => Acoustic
    [100] => Humour
    [101] => Speech
    [102] => Chanson
    [103] => Opera
    [104] => Chamber Music
    [105] => Sonata
    [106] => Symphony
    [107] => Booty Bass
    [108] => Primus
    [109] => Porn Groove
    [110] => Satire
    [111] => Slow Jam
    [112] => Club
    [113] => Tango
    [114] => Samba
    [115] => Folklore
    [116] => Ballad
    [117] => Power Ballad
    [118] => Rhytmic Soul
    [119] => Freestyle
    [120] => Duet
    [121] => Punk Rock
    [122] => Drum Solo
    [123] => Acapella
    [124] => Euro-House
    [125] => Dance Hall
    [126] => Goa
    [127] => Drum & Bass
    [128] => Club-House
    [129] => Hardcore
    [130] => Terror
    [131] => Indie
    [132] => BritPop
    [133] => Negerpunk
    [134] => Polsk Punk
    [135] => Beat
    [136] => Christian Gangsta
    [137] => Heavy Metal
    [138] => Black Metal
    [139] => Crossover
    [140] => Contemporary C
    [141] => Christian Rock
    [142] => Merengue
    [143] => Salsa
    [144] => Thrash Metal
    [145] => Anime
    [146] => JPop
    [147] => SynthPop
)

Veja Também

  • id3_get_genre_name() - Get the name for a genre id
  • id3_get_genre_id() - Get the id for a genre

id3_get_genre_id
id3_get_genre_name
ID3 Funções


Get the name for a genre id

id3_get_genre_list
id3_get_tag
ID3 Funções
PHP Manual

id3_get_genre_name

(PECL id3 >= 0.1)

id3_get_genre_name — Get the name for a genre id

Descrição

string id3_get_genre_name ( int $genre_id )

id3_get_genre_name() returns the name for a genre id.

Parâmetros

genre_id

An integer ranging from 0 to 147

Valor Retornado

Returns the name as a string.

Exemplos

Exemplo #1 id3_get_genre_name() example

<?php
$genre = id3_get_genre_name(20);
echo $genre;
?>

O exemplo acima irá imprimir:

Alternative

Veja Também

  • id3_get_genre_list() - Get all possible genre values
  • id3_get_genre_id() - Get the id for a genre

id3_get_genre_list
id3_get_tag
ID3 Funções


Get all information stored in an ID3 tag

id3_get_genre_name
id3_get_version
ID3 Funções
PHP Manual

id3_get_tag

(PECL id3 >= 0.1)

id3_get_tag — Get all information stored in an ID3 tag

Descrição

array id3_get_tag ( string $filename [, int $version = ID3_BEST ] )

id3_get_tag() is used to get all information stored in the id3 tag of the specified file.

Parâmetros

filename

The path to the MP3 file

Instead of a filename you may also pass a valid stream resource

version

Allows you to specify the version of the tag as MP3 files may contain both, version 1.x and version 2.x tags

Since version 0.2 id3_get_tag() also supports ID3 tags of version 2.2, 2.3 and 2.4. To extract information from these tags, pass one of the constants ID3_V2_2, ID3_V2_3 or ID3_V2_4 as the second parameter. ID3 v2.x tags can contain a lot more information about the MP3 file than ID3 v1.x tags.

Valor Retornado

Returns an associative array with various keys like: title, artist, ..

The key genre will contain an integer between 0 and 147. You may use id3_get_genre_name() to convert it to a human readable string.

Exemplos

Exemplo #1 id3_get_tag() example

<?php
$tag = id3_get_tag( "path/to/example.mp3" );
print_r($tag);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [title] => DN-38416
    [artist] => Re:\Legion
    [album] => Reflections
    [year] => 2004
    [genre] => 19
)

Exemplo #2 id3_get_tag() example

<?php
$tag = id3_get_tag( "path/to/example2.mp3", ID3_V2_3 );
print_r($tag);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [copyright] => Dirty Mac
    [originalArtist] => Dirty Mac
    [composer] => Marcus Götze
    [artist] => Dirty Mac
    [title] => Little Big Man
    [album] => Demo-Tape
    [track] => 5/12
    [genre] => (17)Rock
    [year] => 2001
)

Veja Também

  • id3_set_tag() - Update information stored in an ID3 tag
  • id3_remove_tag() - Remove an existing ID3 tag
  • id3_get_version() - Get version of an ID3 tag

id3_get_genre_name
id3_get_version
ID3 Funções


Get version of an ID3 tag

id3_get_tag
id3_remove_tag
ID3 Funções
PHP Manual

id3_get_version

(PECL id3 >= 0.1)

id3_get_version — Get version of an ID3 tag

Descrição

int id3_get_version ( string $filename )

id3_get_version() retrieves the version(s) of the ID3 tag(s) in the MP3 file.

If a file contains an ID3 v1.1 tag, it always contains a 1.0 tag, as version 1.1 is just an extension of 1.0.

Parâmetros

filename

The path to the MP3 file

Instead of a filename you may also pass a valid stream resource

Valor Retornado

Returns the version number of the ID3 tag of the file. As a tag can contain ID3 v1.x and v2.x tags, the return value of this function should be bitwise compared with the predefined constants ID3_V1_0, ID3_V1_1 and ID3_V2.

Exemplos

Exemplo #1 id3_get_version() example

<?php
$version = id3_get_version( "path/to/example.mp3" );
if ($version & ID3_V1_0) {
    echo "Contains a 1.x tag\n";
}
if ($version & ID3_V1_1) {
    echo "Contains a 1.1 tag\n";
}
if ($version & ID3_V2) {
    echo "Contains a 2.x tag\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Contains a 1.x tag
Contains a 1.1 tag

Veja Também

  • id3_set_tag() - Update information stored in an ID3 tag
  • id3_get_tag() - Get all information stored in an ID3 tag
  • id3_remove_tag() - Remove an existing ID3 tag

id3_get_tag
id3_remove_tag
ID3 Funções


Remove an existing ID3 tag

id3_get_version
id3_set_tag
ID3 Funções
PHP Manual

id3_remove_tag

(PECL id3 >= 0.1)

id3_remove_tag — Remove an existing ID3 tag

Descrição

bool id3_remove_tag ( string $filename [, int $version = ID3_V1_0 ] )

id3_remove_tag() is used to remove the information stored of an ID3 tag.

Parâmetros

filename

The path to the MP3 file

Instead of a filename you may also pass a valid stream resource

version

Allows you to specify the version of the tag as MP3 files may contain both, version 1.x and version 2.x tags.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 id3_remove_tag() example

<?php
$result = id3_remove_tag( "path/to/example.mp3", ID3_V1_0 );
if ($result === true) {
    echo "Tag succesfully removed\n";
}
?>

If the file is writable and contained a 1.0 tag, this will output:

Tag succesfully removed

Notas

Nota: Currently id3_remove_tag() only supports version 1.0 and 1.1. If you choose to remove a 1.0 tag and the file contains a 1.1 tag, this tag will be removed, as v1.1 is only an extension of 1.0.

Veja Também

  • id3_set_tag() - Update information stored in an ID3 tag
  • id3_get_tag() - Get all information stored in an ID3 tag
  • id3_get_version() - Get version of an ID3 tag

id3_get_version
id3_set_tag
ID3 Funções


Update information stored in an ID3 tag

id3_remove_tag
KTaglib
ID3 Funções
PHP Manual

id3_set_tag

(PECL id3 >= 0.1)

id3_set_tag — Update information stored in an ID3 tag

Descrição

bool id3_set_tag ( string $filename , array $tag [, int $version = ID3_V1_0 ] )

id3_set_tag() is used to change the information stored of an ID3 tag. If no tag has been present, it will be added to the file.

Parâmetros

filename

The path to the MP3 file

Instead of a filename you may also pass a valid stream resource

tag

An associative array of tag keys and values

The following keys may be used in the associative array:

Keys in the associative array
key | possible value | available in version
title | string with maximum of 30 characters | v1.0, v1.1
artist | string with maximum of 30 characters | v1.0, v1.1
album | string with maximum of 30 characters | v1.0, v1.1
year | 4 digits | v1.0, v1.1
genre | integer value between 0 and 147 | v1.0, v1.1
comment | string with maximum of 30 characters (28 in v1.1) | v1.0, v1.1
track | integer between 0 and 255 | v1.1

version

Allows you to specify the version of the tag as MP3 files may contain both, version 1.x and version 2.x tags

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 id3_set_tag() example

<?php
$data = array(
              "title" => "Re:Start",
              "artist" => "Re:\Legion",
              "comment" => "A nice track"
             );
$result = id3_set_tag( "path/to/example.mp3", $data, ID3_V1_0 );
if ($result === true) {
    echo "Tag succesfully updated\n";
}
?>

If the file is writable, this will output:

Tag succesfully updated

Notas

Nota: Currently id3_remove_tag() only supports version 1.0 and 1.1.

Veja Também

  • id3_remove_tag() - Remove an existing ID3 tag
  • id3_get_tag() - Get all information stored in an ID3 tag
  • id3_get_version() - Get version of an ID3 tag

id3_remove_tag
KTaglib
ID3 Funções


KTaglib

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
  • Constantes pré-definidas
  • KTaglib_MPEG_File — The KTagLib_MPEG_File class
    • KTaglib_MPEG_File::__construct — Opens a new file
    • KTaglib_MPEG_File::getAudioProperties — Returns an object that provides access to the audio properties
    • KTaglib_MPEG_File::getID3v1Tag — Returns an object representing an ID3v1 tag
    • KTaglib_MPEG_File::getID3v2Tag — Returns a ID3v2 object
  • KTaglib_MPEG_AudioProperties — The KTaglib_MPEG_AudioProperties class
    • KTaglib_MPEG_AudioProperties::getBitrate — Returns the bitrate of the MPEG file
    • KTaglib_MPEG_AudioProperties::getChannels — Returns the amount of channels of a MPEG file
    • KTaglib_MPEG_AudioProperties::getLayer — Returns the layer of a MPEG file
    • KTaglib_MPEG_AudioProperties::getLength — Returns the length of a MPEG file
    • KTaglib_MPEG_AudioProperties::getSampleBitrate — Returns the sample bitrate of a MPEG file
    • KTaglib_MPEG_AudioProperties::getVersion — Returns the version of a MPEG file
    • KTaglib_MPEG_AudioProperties::isCopyrighted — Returns the length of a MPEG file
    • KTaglib_MPEG_AudioProperties::isOriginal — Returns the length of a MPEG file
    • KTaglib_MPEG_AudioProperties::isProtectionEnabled — Returns the length of a MPEG file
  • KTaglib_Tag — The KTaglib_Tag class
    • KTaglib_Tag::getAlbum — Returns the title string from a ID3 tag
    • KTaglib_Tag::getArtist — Returns the artist string from a ID3 tag
    • KTaglib_Tag::getComment — Returns the comment from a ID3 tag
    • KTaglib_Tag::getGenre — Returns the genre from a ID3 tag
    • KTaglib_Tag::getTitle — Returns the title string from a ID3 tag
    • KTaglib_Tag::getTrack — Returns the track number from a ID3 tag
    • KTaglib_Tag::getYear — Returns the year from a ID3 tag
    • KTaglib_Tag::isEmpty — Returns true if the tag is empty
  • KTaglib_ID3v2_Tag — The KTagLib_ID3v2_Tag class
    • KTaglib_ID3v2_Tag::addFrame — Add a frame to the ID3v2 tag
    • KTaglib_ID3v2_Tag::getFrameList — Returns an array of ID3v2 frames, associated with the ID3v2 tag
  • KTaglib_ID3v2_Frame — The KTagLib_ID3v2_Frame class
    • KTaglib_ID3v2_Frame::getSize — Returns the size of the frame in bytes
    • KTaglib_ID3v2_Frame::__toString — Returns a string representation of the frame
  • KTaglib_ID3v2_AttachedPictureFrame — The KTaglib_ID3v2_AttachedPictureFrame class
    • KTaglib_ID3v2_AttachedPictureFrame::getDescription — Returns a description for the picture in a picture frame
    • KTaglib_ID3v2_AttachedPictureFrame::getMimeType — Returns the mime type of the picture
    • KTaglib_ID3v2_AttachedPictureFrame::getType — Returns the type of the image
    • KTaglib_ID3v2_AttachedPictureFrame::savePicture — Saves the picture to a file
    • KTaglib_ID3v2_AttachedPictureFrame::setMimeType — Set's the mime type of the picture
    • KTaglib_ID3v2_AttachedPictureFrame::setPicture — Sets the frame picture to the given image
    • KTaglib_ID3v2_AttachedPictureFrame::setType — Set the type of the image
id3_set_tag
Introdução
Manipulação de Formatos de Audio


Introdução

KTaglib is an object oriented binding to the taglib library from the KDE project used in projects like Amarok to read and write ID3 and Ogg tags. The library also provides access to audio information. The bindings are designed usually follow the underlying C++ API, but were changed whenever there is a more PHP-like way.

Nota:

At the moment ktaglib is able to read and write ID3v1 and ID3v2 tags.

KTaglib
Instalação/Configuração
KTaglib


Instalação/Configuração

Índice

  • Dependências
  • Instalação
Introdução
Dependências
KTaglib


Dependências

If you want to build ktaglib you need at least taglib 1.5 installed. To obtain the taglib see the » taglib project page. Windows DLL's are build static against taglib, therefore there is no need to have taglib installed.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ktaglib.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

KTaglib uses class constants. Most of the constants are mappings to the according Taglib enums and constants.

KTaglib_MPEG_Header::Version1 (integer)
ID3 version is 1.0
KTaglib_MPEG_Header::Version2 (integer)
ID3 version is 2.0
KTaglib_MPEG_Header::Version2_5 (integer)
ID3 version is 2.5
KTaglib_ID3v2_AttachedPictureFrame::Other (integer)
Picture type Other
KTaglib_ID3v2_AttachedPictureFrame::FileIcon (integer)
Picture type FileIcon
KTaglib_ID3v2_AttachedPictureFrame::OtherFileIcon (integer)
Picture type OtherFileIcon
KTaglib_ID3v2_AttachedPictureFrame::FrontCover (integer)
Picture type FrontCover
KTaglib_ID3v2_AttachedPictureFrame::BackCover (integer)
Picture type BackCover
KTaglib_ID3v2_AttachedPictureFrame::LeafletPage (integer)
Picture type LeafletPage
KTaglib_ID3v2_AttachedPictureFrame::Media (integer)
Picture type Media
KTaglib_ID3v2_AttachedPictureFrame::LeadArtist (integer)
Picture type LeadArtist
KTaglib_ID3v2_AttachedPictureFrame::Artist (integer)
Picture type Artist
KTaglib_ID3v2_AttachedPictureFrame::Conductor (integer)
Picture type Condutor
KTaglib_ID3v2_AttachedPictureFrame::Band (integer)
Picture type Band
KTaglib_ID3v2_AttachedPictureFrame::Composer (integer)
Picture type Composer
KTaglib_ID3v2_AttachedPictureFrame::Lyricist (integer)
Picture type Lyricist
KTaglib_ID3v2_AttachedPictureFrame::RecordingLocation (integer)
Picture type RecordingLocation
KTaglib_ID3v2_AttachedPictureFrame::DuringRecording (integer)
Picture type DuringRecording
KTaglib_ID3v2_AttachedPictureFrame::DuringPerformance (integer)
Picture type DuringPerformance
KTaglib_ID3v2_AttachedPictureFrame::MovieScreenCapture (integer)
Picture type MovieScreenCapture
KTaglib_ID3v2_AttachedPictureFrame::ColouredFish (integer)
Picture type ColouredFish
KTaglib_ID3v2_AttachedPictureFrame::Illustration (integer)
Picture type Illustration
KTaglib_ID3v2_AttachedPictureFrame::BandLogo (integer)
Picture type BandLogo
Instalação
KTaglib_MPEG_File
KTaglib


The KTagLib_MPEG_File class

Introdução

Represents an MPEG file. MPEG files can have ID3v1, ID3v2 tags and audio properties.

Class synopsis

KTagLib_MPEG_File {
}

Índice

  • KTaglib_MPEG_File::__construct — Opens a new file
  • KTaglib_MPEG_File::getAudioProperties — Returns an object that provides access to the audio properties
  • KTaglib_MPEG_File::getID3v1Tag — Returns an object representing an ID3v1 tag
  • KTaglib_MPEG_File::getID3v2Tag — Returns a ID3v2 object
Constantes pré-definidas
KTaglib_MPEG_File::__construct
KTaglib


Opens a new file

KTaglib_MPEG_File
KTaglib_MPEG_File::getAudioProperties
KTaglib_MPEG_File
PHP Manual

KTaglib_MPEG_File::__construct

(0.0.1)

KTaglib_MPEG_File::__construct — Opens a new file

Descrição

KTaglib_MPEG_File::__construct() ( string $filename )

Opens a new MPEG file.

Parâmetros

filename

The file to read

Exemplos

Exemplo #1 Opens a new MP3 file and read the title

<?php
$mpeg = new KTaglib_MPEG_File('example.mp3');
echo $mpeg->getID3v1Tag()->getTitle();
?>

KTaglib_MPEG_File
KTaglib_MPEG_File::getAudioProperties
KTaglib_MPEG_File


Returns an object that provides access to the audio properties

KTaglib_MPEG_File::__construct
KTaglib_MPEG_File::getID3v1Tag
KTaglib_MPEG_File
PHP Manual

KTaglib_MPEG_File::getAudioProperties

(0.0.1)

KTaglib_MPEG_File::getAudioProperties — Returns an object that provides access to the audio properties

Descrição

public KTaglib_MPEG_File: KTaglib_MPEG_File::getAudioProperties ( void )

Returns an object that provides access to the audio properties of the mpeg file.

Valor Retornado

Returns an KTaglib_MPEG_AudioProperties object or false.

KTaglib_MPEG_File::__construct
KTaglib_MPEG_File::getID3v1Tag
KTaglib_MPEG_File


Returns an object representing an ID3v1 tag

KTaglib_MPEG_File::getAudioProperties
KTaglib_MPEG_File::getID3v2Tag
KTaglib_MPEG_File
PHP Manual

KTaglib_MPEG_File::getID3v1Tag

(0.0.1)

KTaglib_MPEG_File::getID3v1Tag — Returns an object representing an ID3v1 tag

Descrição

public KTaglib_ID3v1_Tag KTaglib_MPEG_File::getID3v1Tag ([ bool $create = false ] )

Returns an object that represents an ID3v1 tag, which can be used to get information about the ID3v1 tag.

Valor Retornado

Returns an KTaglib_MPEG_ID3v1Tag object or false if there is no ID3v1 tag.

KTaglib_MPEG_File::getAudioProperties
KTaglib_MPEG_File::getID3v2Tag
KTaglib_MPEG_File


Returns a ID3v2 object

KTaglib_MPEG_File::getID3v1Tag
KTaglib_MPEG_AudioProperties
KTaglib_MPEG_File
PHP Manual

KTaglib_MPEG_File::getID3v2Tag

(0.0.1)

KTaglib_MPEG_File::getID3v2Tag — Returns a ID3v2 object

Descrição

public KTaglib_ID3v2_Tag KTaglib_MPEG_File::getID3v2Tag ([ bool $create = false ] )

Returns a ID3v2 object for the mpeg file. If no ID3v2 Tag is present, an KTaglib_TagNotFoundException is thrown.

Valor Retornado

Returns the KTaglib_ID3v2_Tag object of the MPEG file or false if there is no ID3v2 tag

KTaglib_MPEG_File::getID3v1Tag
KTaglib_MPEG_AudioProperties
KTaglib_MPEG_File


The KTaglib_MPEG_AudioProperties class

Introdução

Represents the audio properties of a MPEG file, like length, bitrate or samplerate.

Class synopsis

KTaglib_MPEG_AudioProperties {
}

Índice

  • KTaglib_MPEG_AudioProperties::getBitrate — Returns the bitrate of the MPEG file
  • KTaglib_MPEG_AudioProperties::getChannels — Returns the amount of channels of a MPEG file
  • KTaglib_MPEG_AudioProperties::getLayer — Returns the layer of a MPEG file
  • KTaglib_MPEG_AudioProperties::getLength — Returns the length of a MPEG file
  • KTaglib_MPEG_AudioProperties::getSampleBitrate — Returns the sample bitrate of a MPEG file
  • KTaglib_MPEG_AudioProperties::getVersion — Returns the version of a MPEG file
  • KTaglib_MPEG_AudioProperties::isCopyrighted — Returns the length of a MPEG file
  • KTaglib_MPEG_AudioProperties::isOriginal — Returns the length of a MPEG file
  • KTaglib_MPEG_AudioProperties::isProtectionEnabled — Returns the length of a MPEG file
KTaglib_MPEG_File::getID3v2Tag
KTaglib_MPEG_AudioProperties::getBitrate
KTaglib


Returns the bitrate of the MPEG file

KTaglib_MPEG_AudioProperties
KTaglib_MPEG_AudioProperties::getChannels
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getBitrate

(0.0.1)

KTaglib_MPEG_AudioProperties::getBitrate — Returns the bitrate of the MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getBitrate ( void )

Returns the bitrate of the MPEG file

Valor Retornado

Returns the bitrate as an integer

KTaglib_MPEG_AudioProperties
KTaglib_MPEG_AudioProperties::getChannels
KTaglib_MPEG_AudioProperties


Returns the amount of channels of a MPEG file

KTaglib_MPEG_AudioProperties::getBitrate
KTaglib_MPEG_AudioProperties::getLayer
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getChannels

(0.0.1)

KTaglib_MPEG_AudioProperties::getChannels — Returns the amount of channels of a MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getChannels ( void )

Returns the amount of channels of the MPEG file

Valor Retornado

Returns the channel count as an integer

KTaglib_MPEG_AudioProperties::getBitrate
KTaglib_MPEG_AudioProperties::getLayer
KTaglib_MPEG_AudioProperties


Returns the layer of a MPEG file

KTaglib_MPEG_AudioProperties::getChannels
KTaglib_MPEG_AudioProperties::getLength
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getLayer

(0.0.1)

KTaglib_MPEG_AudioProperties::getLayer — Returns the layer of a MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getLayer ( void )

Returns the layer of the MPEG file (usually 3 for MP3).

Valor Retornado

Returns the layer as an integer

KTaglib_MPEG_AudioProperties::getChannels
KTaglib_MPEG_AudioProperties::getLength
KTaglib_MPEG_AudioProperties


Returns the length of a MPEG file

KTaglib_MPEG_AudioProperties::getLayer
KTaglib_MPEG_AudioProperties::getSampleBitrate
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getLength

(0.0.1)

KTaglib_MPEG_AudioProperties::getLength — Returns the length of a MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getLength ( void )

Returns the length of the MPEG file

Valor Retornado

Returns the length as an integer

KTaglib_MPEG_AudioProperties::getLayer
KTaglib_MPEG_AudioProperties::getSampleBitrate
KTaglib_MPEG_AudioProperties


Returns the sample bitrate of a MPEG file

KTaglib_MPEG_AudioProperties::getLength
KTaglib_MPEG_AudioProperties::getVersion
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getSampleBitrate

(0.0.1)

KTaglib_MPEG_AudioProperties::getSampleBitrate — Returns the sample bitrate of a MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getSampleBitrate ( void )

Returns the sample bitrate of the MPEG file

Valor Retornado

Returns the sample bitrate as an integer

KTaglib_MPEG_AudioProperties::getLength
KTaglib_MPEG_AudioProperties::getVersion
KTaglib_MPEG_AudioProperties


Returns the version of a MPEG file

KTaglib_MPEG_AudioProperties::getSampleBitrate
KTaglib_MPEG_AudioProperties::isCopyrighted
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::getVersion

(0.0.1)

KTaglib_MPEG_AudioProperties::getVersion — Returns the version of a MPEG file

Descrição

public int KTaglib_MPEG_AudioProperties::getVersion ( void )

Returns the version of the MPEG file header. The possible versions are defined in Tag_MPEG_Header (Version1, Version2, Version2.5).

Valor Retornado

Returns the version

KTaglib_MPEG_AudioProperties::getSampleBitrate
KTaglib_MPEG_AudioProperties::isCopyrighted
KTaglib_MPEG_AudioProperties


Returns the length of a MPEG file

KTaglib_MPEG_AudioProperties::getVersion
KTaglib_MPEG_AudioProperties::isOriginal
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::isCopyrighted

(0.0.1)

KTaglib_MPEG_AudioProperties::isCopyrighted — Returns the length of a MPEG file

Descrição

public bool KTaglib_MPEG_AudioProperties::isCopyrighted ( void )

Returns true if the MPEG file is copyrighted

Valor Retornado

Returns true if the MPEG file is copyrighted

KTaglib_MPEG_AudioProperties::getVersion
KTaglib_MPEG_AudioProperties::isOriginal
KTaglib_MPEG_AudioProperties


Returns the length of a MPEG file

KTaglib_MPEG_AudioProperties::isCopyrighted
KTaglib_MPEG_AudioProperties::isProtectionEnabled
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::isOriginal

(0.0.1)

KTaglib_MPEG_AudioProperties::isOriginal — Returns the length of a MPEG file

Descrição

public bool KTaglib_MPEG_AudioProperties::isOriginal ( void )

Returns true if the file is marked as the original file

Valor Retornado

Returns true if the file is marked as the original file

KTaglib_MPEG_AudioProperties::isCopyrighted
KTaglib_MPEG_AudioProperties::isProtectionEnabled
KTaglib_MPEG_AudioProperties


Returns the length of a MPEG file

KTaglib_MPEG_AudioProperties::isOriginal
KTaglib_Tag
KTaglib_MPEG_AudioProperties
PHP Manual

KTaglib_MPEG_AudioProperties::isProtectionEnabled

(0.0.1)

KTaglib_MPEG_AudioProperties::isProtectionEnabled — Returns the length of a MPEG file

Descrição

public bool KTaglib_MPEG_AudioProperties::isProtectionEnabled ( void )

Returns true if protection mechanism (like DRM) are enabled for this file

Valor Retornado

Returns true if protection mechanism (like DRM) are enabled for this file

KTaglib_MPEG_AudioProperties::isOriginal
KTaglib_Tag
KTaglib_MPEG_AudioProperties


The KTaglib_Tag class

Introdução

Base class for ID3v1 or ID3v2 tags

Class synopsis

KTaglib_Tag {
}

Índice

  • KTaglib_Tag::getAlbum — Returns the title string from a ID3 tag
  • KTaglib_Tag::getArtist — Returns the artist string from a ID3 tag
  • KTaglib_Tag::getComment — Returns the comment from a ID3 tag
  • KTaglib_Tag::getGenre — Returns the genre from a ID3 tag
  • KTaglib_Tag::getTitle — Returns the title string from a ID3 tag
  • KTaglib_Tag::getTrack — Returns the track number from a ID3 tag
  • KTaglib_Tag::getYear — Returns the year from a ID3 tag
  • KTaglib_Tag::isEmpty — Returns true if the tag is empty
KTaglib_MPEG_AudioProperties::isProtectionEnabled
KTaglib_Tag::getAlbum
KTaglib


Returns the title string from a ID3 tag

KTaglib_Tag
KTaglib_Tag::getArtist
KTaglib_Tag
PHP Manual

KTaglib_Tag::getAlbum

(0.0.1)

KTaglib_Tag::getAlbum — Returns the title string from a ID3 tag

Descrição

public string KTaglib_Tag::getAlbum ( void )

Returns the album string of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the album string

KTaglib_Tag
KTaglib_Tag::getArtist
KTaglib_Tag


Returns the artist string from a ID3 tag

KTaglib_Tag::getAlbum
KTaglib_Tag::getComment
KTaglib_Tag
PHP Manual

KTaglib_Tag::getArtist

(0.0.1)

KTaglib_Tag::getArtist — Returns the artist string from a ID3 tag

Descrição

public string KTaglib_Tag::getArtist ( void )

Returns the artist string of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the artist string

KTaglib_Tag::getAlbum
KTaglib_Tag::getComment
KTaglib_Tag


Returns the comment from a ID3 tag

KTaglib_Tag::getArtist
KTaglib_Tag::getGenre
KTaglib_Tag
PHP Manual

KTaglib_Tag::getComment

(0.0.1)

KTaglib_Tag::getComment — Returns the comment from a ID3 tag

Descrição

public string KTaglib_Tag::getComment ( void )

Returns the comment of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the comment string

KTaglib_Tag::getArtist
KTaglib_Tag::getGenre
KTaglib_Tag


Returns the genre from a ID3 tag

KTaglib_Tag::getComment
KTaglib_Tag::getTitle
KTaglib_Tag
PHP Manual

KTaglib_Tag::getGenre

(0.0.1)

KTaglib_Tag::getGenre — Returns the genre from a ID3 tag

Descrição

public string KTaglib_Tag::getGenre ( void )

Returns the genre of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the genre string

KTaglib_Tag::getComment
KTaglib_Tag::getTitle
KTaglib_Tag


Returns the title string from a ID3 tag

KTaglib_Tag::getGenre
KTaglib_Tag::getTrack
KTaglib_Tag
PHP Manual

KTaglib_Tag::getTitle

(0.0.1)

KTaglib_Tag::getTitle — Returns the title string from a ID3 tag

Descrição

public string KTaglib_Tag::getTitle ( void )

Returns the title string of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the title string

KTaglib_Tag::getGenre
KTaglib_Tag::getTrack
KTaglib_Tag


Returns the track number from a ID3 tag

KTaglib_Tag::getTitle
KTaglib_Tag::getYear
KTaglib_Tag
PHP Manual

KTaglib_Tag::getTrack

(0.0.1)

KTaglib_Tag::getTrack — Returns the track number from a ID3 tag

Descrição

public int KTaglib_Tag::getTrack ( void )

Returns the track number of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the track number as an integer

KTaglib_Tag::getTitle
KTaglib_Tag::getYear
KTaglib_Tag


Returns the year from a ID3 tag

KTaglib_Tag::getTrack
KTaglib_Tag::isEmpty
KTaglib_Tag
PHP Manual

KTaglib_Tag::getYear

(0.0.1)

KTaglib_Tag::getYear — Returns the year from a ID3 tag

Descrição

public int KTaglib_Tag::getYear ( void )

Returns the year of an ID3 tag. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns the year as an integer

KTaglib_Tag::getTrack
KTaglib_Tag::isEmpty
KTaglib_Tag


Returns true if the tag is empty

KTaglib_Tag::getYear
KTaglib_ID3v2_Tag
KTaglib_Tag
PHP Manual

KTaglib_Tag::isEmpty

(0.0.1)

KTaglib_Tag::isEmpty — Returns true if the tag is empty

Descrição

public bool KTaglib_Tag::isEmpty ( void )

Returns true if the tag exists, but is empty. This method is implemented in ID3v1 and ID3v2 tags.

Valor Retornado

Returns true if the tag is empty, otherwise false.

KTaglib_Tag::getYear
KTaglib_ID3v2_Tag
KTaglib_Tag


The KTagLib_ID3v2_Tag class

Introdução

Represents and ID3v2 tag. It provides a list of ID3v2 frames and can be used to add and remove additional frames.

Class synopsis

extends KTagLib_Tag {
}

Índice

  • KTaglib_ID3v2_Tag::addFrame — Add a frame to the ID3v2 tag
  • KTaglib_ID3v2_Tag::getFrameList — Returns an array of ID3v2 frames, associated with the ID3v2 tag
KTaglib_Tag::isEmpty
KTaglib_ID3v2_Tag::addFrame
KTaglib


Add a frame to the ID3v2 tag

KTaglib_ID3v2_Tag
KTaglib_ID3v2_Tag::getFrameList
KTaglib_ID3v2_Tag
PHP Manual

KTaglib_ID3v2_Tag::addFrame

(0.0.1)

KTaglib_ID3v2_Tag::addFrame — Add a frame to the ID3v2 tag

Descrição

public bool KTaglib_ID3v2_Tag::addFrame ( KTagLib_ID3v2_Frame $frame )

Adds a frame to the ID3v2 tag. The frame must be a valid KTagLib_ID3v2_Frame object. To save the tag, the save function needs to be invoked.

Valor Retornado

Returns true on success, otherwise false.

KTaglib_ID3v2_Tag
KTaglib_ID3v2_Tag::getFrameList
KTaglib_ID3v2_Tag


Returns an array of ID3v2 frames, associated with the ID3v2 tag

KTaglib_ID3v2_Tag::addFrame
KTaglib_ID3v2_Frame
KTaglib_ID3v2_Tag
PHP Manual

KTaglib_ID3v2_Tag::getFrameList

(0.0.1)

KTaglib_ID3v2_Tag::getFrameList — Returns an array of ID3v2 frames, associated with the ID3v2 tag

Descrição

public array KTaglib_ID3v2_Tag::getFrameList ( void )

Returns an array of ID3v2 frames, associated with the ID3v2 tag.

Valor Retornado

Return an array of KTaglib_ID3v2_Frame objects

KTaglib_ID3v2_Tag::addFrame
KTaglib_ID3v2_Frame
KTaglib_ID3v2_Tag


The KTagLib_ID3v2_Frame class

Introdução

The base class for ID3v2 frames. ID3v2 tags are separated in various specialized frames. Some frames can exists multiple times.

Class synopsis

extends KTagLib_Tag {
}

Índice

  • KTaglib_ID3v2_Frame::getSize — Returns the size of the frame in bytes
  • KTaglib_ID3v2_Frame::__toString — Returns a string representation of the frame
KTaglib_ID3v2_Tag::getFrameList
KTaglib_ID3v2_Frame::getSize
KTaglib


Returns the size of the frame in bytes

KTaglib_ID3v2_Frame
KTaglib_ID3v2_Frame::__toString
KTaglib_ID3v2_Frame
PHP Manual

KTaglib_ID3v2_Frame::getSize

(0.0.1)

KTaglib_ID3v2_Frame::getSize — Returns the size of the frame in bytes

Descrição

public int KTaglib_ID3v2_Frame::getSize ( void )

Returns the size of the frame in bytes. Please refer to id3.org to see what ID3v2 frames are and how they are defined.

Valor Retornado

Returns the size of the frame in bytes

KTaglib_ID3v2_Frame
KTaglib_ID3v2_Frame::__toString
KTaglib_ID3v2_Frame


Returns a string representation of the frame

KTaglib_ID3v2_Frame::getSize
KTaglib_ID3v2_AttachedPictureFrame
KTaglib_ID3v2_Frame
PHP Manual

KTaglib_ID3v2_Frame::__toString

(0.0.1)

KTaglib_ID3v2_Frame::__toString — Returns a string representation of the frame

Descrição

public string KTaglib_ID3v2_Frame::__toString ( void )

Returns a string representation of the frame. This might be just the frame id, but might contain more information. Please see the ktaglib documentation for more information

Valor Retornado

Returns a string representation of the frame.

KTaglib_ID3v2_Frame::getSize
KTaglib_ID3v2_AttachedPictureFrame
KTaglib_ID3v2_Frame


The KTaglib_ID3v2_AttachedPictureFrame class

Introdução

Represents an ID3v2 frame that can hold a picture.

Class synopsis

extends KTagLib_ID3v2_Frame {
}

Índice

  • KTaglib_ID3v2_AttachedPictureFrame::getDescription — Returns a description for the picture in a picture frame
  • KTaglib_ID3v2_AttachedPictureFrame::getMimeType — Returns the mime type of the picture
  • KTaglib_ID3v2_AttachedPictureFrame::getType — Returns the type of the image
  • KTaglib_ID3v2_AttachedPictureFrame::savePicture — Saves the picture to a file
  • KTaglib_ID3v2_AttachedPictureFrame::setMimeType — Set's the mime type of the picture
  • KTaglib_ID3v2_AttachedPictureFrame::setPicture — Sets the frame picture to the given image
  • KTaglib_ID3v2_AttachedPictureFrame::setType — Set the type of the image
KTaglib_ID3v2_Frame::__toString
KTaglib_ID3v2_AttachedPictureFrame::getDescription
KTaglib


Returns a description for the picture in a picture frame

KTaglib_ID3v2_AttachedPictureFrame
KTaglib_ID3v2_AttachedPictureFrame::getMimeType
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::getDescription

(0.0.1)

KTaglib_ID3v2_AttachedPictureFrame::getDescription — Returns a description for the picture in a picture frame

Descrição

public string KTaglib_ID3v2_AttachedPictureFrame::getDescription ( void )

Returns the attached description for a picture frame in an ID3v2.x frame.

Valor Retornado

Returns a description for the picture in a picture frame

KTaglib_ID3v2_AttachedPictureFrame
KTaglib_ID3v2_AttachedPictureFrame::getMimeType
KTaglib_ID3v2_AttachedPictureFrame


Returns the mime type of the picture

KTaglib_ID3v2_AttachedPictureFrame::getDescription
KTaglib_ID3v2_AttachedPictureFrame::getType
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::getMimeType

(0.2.0)

KTaglib_ID3v2_AttachedPictureFrame::getMimeType — Returns the mime type of the picture

Descrição

public string KTaglib_ID3v2_AttachedPictureFrame::getMimeType ( void )

Returns the mime type of the image represented by the attached picture frame.

Please notice that this method might return different types. While ID3v2.2 have a mime type that doesn't start with "image/", ID3v2.3 and v2.4 usually start with "image/". Therefore the method might return "image/png" for IDv2.3 frames and just "PNG" for ID3v2.2 frames.

Notice that even the frame is an attached picture, the mime type might not be set and therefore an empty string might be returned.

Valor Retornado

Returns the mime type of the image represented by the attached picture frame.

KTaglib_ID3v2_AttachedPictureFrame::getDescription
KTaglib_ID3v2_AttachedPictureFrame::getType
KTaglib_ID3v2_AttachedPictureFrame


Returns the type of the image

KTaglib_ID3v2_AttachedPictureFrame::getMimeType
KTaglib_ID3v2_AttachedPictureFrame::savePicture
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::getType

(0.2.0)

KTaglib_ID3v2_AttachedPictureFrame::getType — Returns the type of the image

Descrição

public int KTaglib_ID3v2_AttachedPictureFrame::getType ( void )

Returns the type of the image.

The ID3v2 specification allows an AttachedPictureFrame to set the type of an image. This can be e.g. FrontCover or FileIcon. Please refer to the KTagLib_ID3v2_AttachedPictureFrame class description for a list of available types.

Valor Retornado

Returns the integer representation of the type.

KTaglib_ID3v2_AttachedPictureFrame::getMimeType
KTaglib_ID3v2_AttachedPictureFrame::savePicture
KTaglib_ID3v2_AttachedPictureFrame


Saves the picture to a file

KTaglib_ID3v2_AttachedPictureFrame::getType
KTaglib_ID3v2_AttachedPictureFrame::setMimeType
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::savePicture

(0.0.1)

KTaglib_ID3v2_AttachedPictureFrame::savePicture — Saves the picture to a file

Descrição

public bool KTaglib_ID3v2_AttachedPictureFrame::savePicture ( string $filename )

Saves the attached picture to the given filename.

Valor Retornado

Returns true on success, otherwise false

KTaglib_ID3v2_AttachedPictureFrame::getType
KTaglib_ID3v2_AttachedPictureFrame::setMimeType
KTaglib_ID3v2_AttachedPictureFrame


Set's the mime type of the picture

KTaglib_ID3v2_AttachedPictureFrame::savePicture
KTaglib_ID3v2_AttachedPictureFrame::setPicture
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::setMimeType

(0.2.0)

KTaglib_ID3v2_AttachedPictureFrame::setMimeType — Set's the mime type of the picture

Descrição

public string KTaglib_ID3v2_AttachedPictureFrame::getMimeType ( string $type )

Sets the mime type of the image. This should in most cases be "image/png" or "image/jpeg".

KTaglib_ID3v2_AttachedPictureFrame::savePicture
KTaglib_ID3v2_AttachedPictureFrame::setPicture
KTaglib_ID3v2_AttachedPictureFrame


Sets the frame picture to the given image

KTaglib_ID3v2_AttachedPictureFrame::setMimeType
KTaglib_ID3v2_AttachedPictureFrame::setType
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::setPicture

(0.0.1)

KTaglib_ID3v2_AttachedPictureFrame::setPicture — Sets the frame picture to the given image

Descrição

public void KTaglib_ID3v2_AttachedPictureFrame::setPicture ( string $filename )

Sets the picture to the give image. The image is loaded from the given filename. Please note that the picture is not saved unless you call the save method of the corresponding file object.

Valor Retornado

Returns true on success, otherwise false

KTaglib_ID3v2_AttachedPictureFrame::setMimeType
KTaglib_ID3v2_AttachedPictureFrame::setType
KTaglib_ID3v2_AttachedPictureFrame


Set the type of the image

KTaglib_ID3v2_AttachedPictureFrame::setPicture
oggvorbis
KTaglib_ID3v2_AttachedPictureFrame
PHP Manual

KTaglib_ID3v2_AttachedPictureFrame::setType

(0.2.0)

KTaglib_ID3v2_AttachedPictureFrame::setType — Set the type of the image

Descrição

public void KTaglib_ID3v2_AttachedPictureFrame::setType ( int $type )

Sets the type of the image. This can be e.g. FrontCover or FileIcon. Please refer to the KTaglib_ID3v2_AttachedPictureFrame class description for a list of available types and their constant mappings.

KTaglib_ID3v2_AttachedPictureFrame::setPicture
oggvorbis
KTaglib_ID3v2_AttachedPictureFrame


OGG/Vorbis

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Context options
  • Exemplos
    • Examples on using the ogg:// wrapper.
KTaglib_ID3v2_AttachedPictureFrame::setType
Introdução
Manipulação de Formatos de Audio


Introdução

The OGG/Vorbis file format, as defined by » http://www.vorbis.com/, is a scheme for compressing audio streams by multiple factors with a minimum of quality loss. This extension adds Ogg Vorbis support to PHP's URL Wrappers. When used in read mode, compressed OGG/Vorbis data is expanded to raw PCM audio in one of six PCM encoding formats listed below.

oggvorbis
Instalação/Configuração
oggvorbis


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
oggvorbis


Dependências

This extension requires PHP >= 4.3.0, » libogg >= 1.0, and » libvorbis >= 1.0.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/oggvorbis

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

OGG/Vorbis supports PCM encodings in the following formats
Constant | Definition
OGGVORBIS_PCM_U8 | Unsigned 8-bit PCM.
OGGVORBIS_PCM_S8 | Signed 8-bit PCM.
OGGVORBIS_PCM_U16_LE | Unsigned 16-bit PCM. Little Endian byte order.
OGGVORBIS_PCM_U16_BE | Unsigned 16-bit PCM. Big Endian byte order.
OGGVORBIS_PCM_S16_LE | Signed 16-bit PCM. Little Endian byte order.
OGGVORBIS_PCM_S16_BE | Signed 16-bit PCM. Big Endian byte order.
Tipos Resource
Context options
oggvorbis


Context options

OGG/Vorbis tuning options
Option | Definition | Relevance | Default
pcm_mode | PCM byte encoding used. See constants below. | Read / Write | OGGVORBIS_PCM_S16_LE
rate | PCM Sampling rate. Measured in Hz. | Write only | 44100
bitrate | Vorbis Average Bitrate Encoding / Variable Bitrate Encoding. Measured in bps (ABR) or Quality level (VBR: 0.0 to 1.0). 128000 ABR is rough equal to 0.4 VBR. | Write only | 128000
channels | Number of PCM channels. 1 == Mono, 2 == Stereo. | Write only | 2
serialno | Serial Number of stream within file. Must be unique within file. Because of the potential to select a duplicate serial number within a chained file, make efforts to manually assign unique numbers when encoding. | Write only | Random
comments | Associative array of file comments. Will be translated to strtoupper($name) . "=$value". Note: This context option is not available in oggvorbis-0.1 | Write only | array('ENCODER' => 'PHP/OggVorbis, http://pear.php.net/oggvorbis')
Constantes pré-definidas
Exemplos
oggvorbis


Exemplos

Índice

  • Examples on using the ogg:// wrapper.
Context options
Examples on using the ogg:// wrapper.
oggvorbis


Examples on using the ogg:// wrapper.

Exemplo #1 Reading an OGG/Vorbis file

<?php
dl("oggvorbis.so");

/* By default, ogg:// will decode to Signed 16-bit Little Endian */
$fp = fopen('ogg://myaudio.ogg', 'r');

/* Collect some information about the file. */
$metadata = stream_get_meta_data($fp);

/* Inspect the first song (usually the only song,
   but OGG/Vorbis files may be chained) */
$songdata = $metadata['wrapper_data'][0];

echo "OGG/Vorbis file encoded by: {$songdata['vendor']}\n.";
echo "  {$songdata['channels']} channels of {$songdata['rate']}Hz sampling encoded at {$songdata['bitrate_nominal']}bps.\n";
foreach($songdata['comments'] as $comment) {
    echo "  $comment\n";
}

while ($audio_data = fread($fp, 8192)) {
  /* Do something with the PCM audio we're extracting from the OGG.
     Copying to /dev/dsp is a good target on linux systems,
     just remember to setup the device for your sampling mode first. */
}

fclose($fp);

?>

Exemplo #2 Encode an audio file to OGG/Vorbis

<?php
dl('oggvorbis.so');

$context = stream_context_create(array('ogg'=>array(
             'pcm_mode' => OGGVORBIS_PCM_S8,  /* Signed 8bit audio */
             'rate' => 44100,                 /* 44kHz CD quality */
             'bitrate' => 0.5,                /* Midquality VBR */
             'channels' => 1,                 /* Mono */
             'serialno' => 12345)));          /* Unique within our stream */

/* Open file for appending.  This will "chain" a second OGG stream at the end of the first. */
$ogg = fopen('ogg://mysong.ogg', 'a', false, $context);

$pcm = fopen('mysample.pcm', 'r');

/* Compress the raw PCM audio from mysample.pcm into mysong.ogg */
stream_copy_to_stream($pcm, $ogg);

fclose($pcm);
fclose($ogg);
?>

Exemplos
OpenAL
Exemplos


OpenAL Audio Bindings

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • OpenAL Funções
    • openal_buffer_create — Generate OpenAL buffer
    • openal_buffer_data — Load a buffer with data
    • openal_buffer_destroy — Destroys an OpenAL buffer
    • openal_buffer_get — Retrieve an OpenAL buffer property
    • openal_buffer_loadwav — Load a .wav file into a buffer
    • openal_context_create — Create an audio processing context
    • openal_context_current — Make the specified context current
    • openal_context_destroy — Destroys a context
    • openal_context_process — Process the specified context
    • openal_context_suspend — Suspend the specified context
    • openal_device_close — Close an OpenAL device
    • openal_device_open — Initialize the OpenAL audio layer
    • openal_listener_get — Retrieve a listener property
    • openal_listener_set — Set a listener property
    • openal_source_create — Generate a source resource
    • openal_source_destroy — Destroy a source resource
    • openal_source_get — Retrieve an OpenAL source property
    • openal_source_pause — Pause the source
    • openal_source_play — Start playing the source
    • openal_source_rewind — Rewind the source
    • openal_source_set — Set source property
    • openal_source_stop — Stop playing the source
    • openal_stream — Begin streaming on a source
Examples on using the ogg:// wrapper.
Introdução
Manipulação de Formatos de Audio


Introdução

Platform independent audio bindings. Requires the » OpenAL library.

OpenAL
Instalação/Configuração
OpenAL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
OpenAL


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/openal.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines four resource types:
Open AL(Device) - Returned by openal_device_open(),
Open AL(Context) - Returned by openal_context_create(),
Open AL(Buffer) - Returned by openal_buffer_create(),
and Open AL(Source) - Returned by openal_source_create().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

ALC_FREQUENCY (integer)
Context Attribute
ALC_REFRESH (integer)
Context Attribute
ALC_SYNC (integer)
Context Attribute
AL_FREQUENCY (integer)
Buffer Setting
AL_BITS (integer)
Buffer Setting
AL_CHANNELS (integer)
Buffer Setting
AL_SIZE (integer)
Buffer Setting
AL_BUFFER (integer)
Source/Listener Setting (Integer)
AL_SOURCE_RELATIVE (integer)
Source/Listener Setting (Integer)
AL_SOURCE_STATE (integer)
Source/Listener Setting (Integer)
AL_PITCH (integer)
Source/Listener Setting (Float)
AL_GAIN (integer)
Source/Listener Setting (Float)
AL_MIN_GAIN (integer)
Source/Listener Setting (Float)
AL_MAX_GAIN (integer)
Source/Listener Setting (Float)
AL_MAX_DISTANCE (integer)
Source/Listener Setting (Float)
AL_ROLLOFF_FACTOR (integer)
Source/Listener Setting (Float)
AL_CONE_OUTER_GAIN (integer)
Source/Listener Setting (Float)
AL_CONE_INNER_ANGLE (integer)
Source/Listener Setting (Float)
AL_CONE_OUTER_ANGLE (integer)
Source/Listener Setting (Float)
AL_REFERENCE_DISTANCE (integer)
Source/Listener Setting (Float)
AL_POSITION (integer)
Source/Listener Setting (Float Vector)
AL_VELOCITY (integer)
Source/Listener Setting (Float Vector)
AL_DIRECTION (integer)
Source/Listener Setting (Float Vector)
AL_ORIENTATION (integer)
Source/Listener Setting (Float Vector)
AL_FORMAT_MONO8 (integer)
PCM Format
AL_FORMAT_MONO16 (integer)
PCM Format
AL_FORMAT_STEREO8 (integer)
PCM Format
AL_FORMAT_STEREO16 (integer)
PCM Format
AL_INITIAL (integer)
Source State
AL_PLAYING (integer)
Source State
AL_PAUSED (integer)
Source State
AL_STOPPED (integer)
Source State
AL_LOOPING (integer)
Source State
AL_TRUE (integer)
Boolean value recognized by OpenAL
AL_FALSE (integer)
Boolean value recognized by OpenAL
Tipos Resource
OpenAL Funções
OpenAL


OpenAL Funções

Índice

  • openal_buffer_create — Generate OpenAL buffer
  • openal_buffer_data — Load a buffer with data
  • openal_buffer_destroy — Destroys an OpenAL buffer
  • openal_buffer_get — Retrieve an OpenAL buffer property
  • openal_buffer_loadwav — Load a .wav file into a buffer
  • openal_context_create — Create an audio processing context
  • openal_context_current — Make the specified context current
  • openal_context_destroy — Destroys a context
  • openal_context_process — Process the specified context
  • openal_context_suspend — Suspend the specified context
  • openal_device_close — Close an OpenAL device
  • openal_device_open — Initialize the OpenAL audio layer
  • openal_listener_get — Retrieve a listener property
  • openal_listener_set — Set a listener property
  • openal_source_create — Generate a source resource
  • openal_source_destroy — Destroy a source resource
  • openal_source_get — Retrieve an OpenAL source property
  • openal_source_pause — Pause the source
  • openal_source_play — Start playing the source
  • openal_source_rewind — Rewind the source
  • openal_source_set — Set source property
  • openal_source_stop — Stop playing the source
  • openal_stream — Begin streaming on a source
Constantes pré-definidas
openal_buffer_create
OpenAL


Generate OpenAL buffer

OpenAL Funções
openal_buffer_data
OpenAL Funções
PHP Manual

openal_buffer_create

(PECL openal >= 0.1.0)

openal_buffer_create — Generate OpenAL buffer

Descrição

resource openal_buffer_create ( void )

Valor Retornado

Returns an Open AL(Buffer) resource on success or FALSE on failure.

Veja Também

  • openal_buffer_loadwav() - Load a .wav file into a buffer
  • openal_buffer_data() - Load a buffer with data

OpenAL Funções
openal_buffer_data
OpenAL Funções


Load a buffer with data

openal_buffer_create
openal_buffer_destroy
OpenAL Funções
PHP Manual

openal_buffer_data

(PECL openal >= 0.1.0)

openal_buffer_data — Load a buffer with data

Descrição

bool openal_buffer_data ( resource $buffer , int $format , string $data , int $freq )

Parâmetros

buffer

An Open AL(Buffer) resource (previously created by openal_buffer_create()).

format

Format of data, one of: AL_FORMAT_MONO8, AL_FORMAT_MONO16, AL_FORMAT_STEREO8 e AL_FORMAT_STEREO16

data

Block of binary audio data in the format and freq specified.

freq

Frequency of data given in Hz.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_buffer_loadwav() - Load a .wav file into a buffer
  • openal_stream() - Begin streaming on a source

openal_buffer_create
openal_buffer_destroy
OpenAL Funções


Destroys an OpenAL buffer

openal_buffer_data
openal_buffer_get
OpenAL Funções
PHP Manual

openal_buffer_destroy

(PECL openal >= 0.1.0)

openal_buffer_destroy — Destroys an OpenAL buffer

Descrição

bool openal_buffer_destroy ( resource $buffer )

Parâmetros

buffer

An Open AL(Buffer) resource (previously created by openal_buffer_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_buffer_create() - Generate OpenAL buffer

openal_buffer_data
openal_buffer_get
OpenAL Funções


Retrieve an OpenAL buffer property

openal_buffer_destroy
openal_buffer_loadwav
OpenAL Funções
PHP Manual

openal_buffer_get

(PECL openal >= 0.1.0)

openal_buffer_get — Retrieve an OpenAL buffer property

Descrição

int openal_buffer_get ( resource $buffer , int $property )

Parâmetros

buffer

An Open AL(Buffer) resource (previously created by openal_buffer_create()).

property

Specific property, one of: AL_FREQUENCY, AL_BITS, AL_CHANNELS e AL_SIZE.

Valor Retornado

Returns an integer value appropriate to the property requested or FALSE on failure.

Veja Também

  • openal_buffer_create() - Generate OpenAL buffer

openal_buffer_destroy
openal_buffer_loadwav
OpenAL Funções


Load a .wav file into a buffer

openal_buffer_get
openal_context_create
OpenAL Funções
PHP Manual

openal_buffer_loadwav

(PECL openal >= 0.1.0)

openal_buffer_loadwav — Load a .wav file into a buffer

Descrição

bool openal_buffer_loadwav ( resource $buffer , string $wavfile )

Parâmetros

buffer

An Open AL(Buffer) resource (previously created by openal_buffer_create()).

wavfile

Path to .wav file on local file system.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_buffer_data() - Load a buffer with data
  • openal_stream() - Begin streaming on a source

openal_buffer_get
openal_context_create
OpenAL Funções


Create an audio processing context

openal_buffer_loadwav
openal_context_current
OpenAL Funções
PHP Manual

openal_context_create

(PECL openal >= 0.1.0)

openal_context_create — Create an audio processing context

Descrição

resource openal_context_create ( resource $device )

Parâmetros

device

An Open AL(Device) resource (previously created by openal_device_open()).

Valor Retornado

Returns an Open AL(Context) resource on success or FALSE on failure.

Veja Também

  • openal_device_open() - Initialize the OpenAL audio layer
  • openal_context_destroy() - Destroys a context

openal_buffer_loadwav
openal_context_current
OpenAL Funções


Make the specified context current

openal_context_create
openal_context_destroy
OpenAL Funções
PHP Manual

openal_context_current

(PECL openal >= 0.1.0)

openal_context_current — Make the specified context current

Descrição

bool openal_context_current ( resource $context )

Parâmetros

context

An Open AL(Context) resource (previously created by openal_context_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_context_create() - Create an audio processing context

openal_context_create
openal_context_destroy
OpenAL Funções


Destroys a context

openal_context_current
openal_context_process
OpenAL Funções
PHP Manual

openal_context_destroy

(PECL openal >= 0.1.0)

openal_context_destroy — Destroys a context

Descrição

bool openal_context_destroy ( resource $context )

Parâmetros

context

An Open AL(Context) resource (previously created by openal_context_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_context_create() - Create an audio processing context

openal_context_current
openal_context_process
OpenAL Funções


Process the specified context

openal_context_destroy
openal_context_suspend
OpenAL Funções
PHP Manual

openal_context_process

(PECL openal >= 0.1.0)

openal_context_process — Process the specified context

Descrição

bool openal_context_process ( resource $context )

Parâmetros

context

An Open AL(Context) resource (previously created by openal_context_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_context_create() - Create an audio processing context
  • openal_context_current() - Make the specified context current
  • openal_context_suspend() - Suspend the specified context

openal_context_destroy
openal_context_suspend
OpenAL Funções


Suspend the specified context

openal_context_process
openal_device_close
OpenAL Funções
PHP Manual

openal_context_suspend

(PECL openal >= 0.1.0)

openal_context_suspend — Suspend the specified context

Descrição

bool openal_context_suspend ( resource $context )

Parâmetros

context

An Open AL(Context) resource (previously created by openal_context_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_context_create() - Create an audio processing context
  • openal_context_current() - Make the specified context current
  • openal_context_process() - Process the specified context

openal_context_process
openal_device_close
OpenAL Funções


Close an OpenAL device

openal_context_suspend
openal_device_open
OpenAL Funções
PHP Manual

openal_device_close

(PECL openal >= 0.1.0)

openal_device_close — Close an OpenAL device

Descrição

bool openal_device_close ( resource $device )

Parâmetros

device

An Open AL(Device) resource (previously created by openal_device_open()) to be closed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_device_open() - Initialize the OpenAL audio layer

openal_context_suspend
openal_device_open
OpenAL Funções


Initialize the OpenAL audio layer

openal_device_close
openal_listener_get
OpenAL Funções
PHP Manual

openal_device_open

(PECL openal >= 0.1.0)

openal_device_open — Initialize the OpenAL audio layer

Descrição

resource openal_device_open ([ string $device_desc ] )

Parâmetros

device_desc

Open an audio device optionally specified by device_desc. If device_desc is not specified the first available audio device will be used.

Valor Retornado

Returns an Open AL(Device) resource on success or FALSE on failure.

Veja Também

  • openal_device_close() - Close an OpenAL device
  • openal_context_create() - Create an audio processing context

openal_device_close
openal_listener_get
OpenAL Funções


Retrieve a listener property

openal_device_open
openal_listener_set
OpenAL Funções
PHP Manual

openal_listener_get

(PECL openal >= 0.1.0)

openal_listener_get — Retrieve a listener property

Descrição

mixed openal_listener_get ( int $property )

Parâmetros

property

Property to retrieve, one of:
AL_GAIN (float),
AL_POSITION (array(float,float,float)),
AL_VELOCITY (array(float,float,float)) e
AL_ORIENTATION (array(float,float,float)).

Valor Retornado

Returns a float or array of floats (as appropriate) or FALSE on failure.

Veja Também

  • openal_listener_set() - Set a listener property

openal_device_open
openal_listener_set
OpenAL Funções


Set a listener property

openal_listener_get
openal_source_create
OpenAL Funções
PHP Manual

openal_listener_set

(PECL openal >= 0.1.0)

openal_listener_set — Set a listener property

Descrição

bool openal_listener_set ( int $property , mixed $setting )

Parâmetros

property

Property to set, one of:
AL_GAIN (float),
AL_POSITION (array(float,float,float)),
AL_VELOCITY (array(float,float,float)) e
AL_ORIENTATION (array(float,float,float)).

setting

Value to set, either float, or an array of floats as appropriate.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_listener_get() - Retrieve a listener property

openal_listener_get
openal_source_create
OpenAL Funções


Generate a source resource

openal_listener_set
openal_source_destroy
OpenAL Funções
PHP Manual

openal_source_create

(PECL openal >= 0.1.0)

openal_source_create — Generate a source resource

Descrição

resource openal_source_create ( void )

Valor Retornado

Returns an Open AL(Source) resource on success or FALSE on failure.

Veja Também

  • openal_source_set() - Set source property
  • openal_source_play() - Start playing the source
  • openal_source_destroy() - Destroy a source resource

openal_listener_set
openal_source_destroy
OpenAL Funções


Destroy a source resource

openal_source_create
openal_source_get
OpenAL Funções
PHP Manual

openal_source_destroy

(PECL openal >= 0.1.0)

openal_source_destroy — Destroy a source resource

Descrição

bool openal_source_destroy ( resource $source )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_create() - Generate a source resource

openal_source_create
openal_source_get
OpenAL Funções


Retrieve an OpenAL source property

openal_source_destroy
openal_source_pause
OpenAL Funções
PHP Manual

openal_source_get

(PECL openal >= 0.1.0)

openal_source_get — Retrieve an OpenAL source property

Descrição

mixed openal_source_get ( resource $source , int $property )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

property

Property to get, one of: AL_SOURCE_RELATIVE (int), AL_SOURCE_STATE (int), AL_PITCH (float), AL_GAIN (float), AL_MIN_GAIN (float), AL_MAX_GAIN (float), AL_MAX_DISTANCE (float), AL_ROLLOFF_FACTOR (float), AL_CONE_OUTER_GAIN (float), AL_CONE_INNER_ANGLE (float), AL_CONE_OUTER_ANGLE (float), AL_REFERENCE_DISTANCE (float), AL_POSITION (array(float,float,float)), AL_VELOCITY (array(float,float,float)), AL_DIRECTION (array(float,float,float)).

Valor Retornado

Returns the type associated with the property being retrieved or FALSE on failure.

Veja Também

  • openal_source_create() - Generate a source resource
  • openal_source_set() - Set source property
  • openal_source_play() - Start playing the source

openal_source_destroy
openal_source_pause
OpenAL Funções


Pause the source

openal_source_get
openal_source_play
OpenAL Funções
PHP Manual

openal_source_pause

(PECL openal >= 0.1.0)

openal_source_pause — Pause the source

Descrição

bool openal_source_pause ( resource $source )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_stop() - Stop playing the source
  • openal_source_play() - Start playing the source
  • openal_source_rewind() - Rewind the source

openal_source_get
openal_source_play
OpenAL Funções


Start playing the source

openal_source_pause
openal_source_rewind
OpenAL Funções
PHP Manual

openal_source_play

(PECL openal >= 0.1.0)

openal_source_play — Start playing the source

Descrição

bool openal_source_play ( resource $source )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_stop() - Stop playing the source
  • openal_source_pause() - Pause the source
  • openal_source_rewind() - Rewind the source

openal_source_pause
openal_source_rewind
OpenAL Funções


Rewind the source

openal_source_play
openal_source_set
OpenAL Funções
PHP Manual

openal_source_rewind

(PECL openal >= 0.1.0)

openal_source_rewind — Rewind the source

Descrição

bool openal_source_rewind ( resource $source )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_stop() - Stop playing the source
  • openal_source_pause() - Pause the source
  • openal_source_play() - Start playing the source

openal_source_play
openal_source_set
OpenAL Funções


Set source property

openal_source_rewind
openal_source_stop
OpenAL Funções
PHP Manual

openal_source_set

(PECL openal >= 0.1.0)

openal_source_set — Set source property

Descrição

bool openal_source_set ( resource $source , int $property , mixed $setting )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

property

Property to set, one of: AL_BUFFER (OpenAL(Source)), AL_LOOPING (bool), AL_SOURCE_RELATIVE (int), AL_SOURCE_STATE (int), AL_PITCH (float), AL_GAIN (float), AL_MIN_GAIN (float), AL_MAX_GAIN (float), AL_MAX_DISTANCE (float), AL_ROLLOFF_FACTOR (float), AL_CONE_OUTER_GAIN (float), AL_CONE_INNER_ANGLE (float), AL_CONE_OUTER_ANGLE (float), AL_REFERENCE_DISTANCE (float), AL_POSITION (array(float,float,float)), AL_VELOCITY (array(float,float,float)), AL_DIRECTION (array(float,float,float)).

setting

Value to assign to specified property. Refer to the description of property for a description of the value(s) expected.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_create() - Generate a source resource
  • openal_source_get() - Retrieve an OpenAL source property
  • openal_source_play() - Start playing the source

openal_source_rewind
openal_source_stop
OpenAL Funções


Stop playing the source

openal_source_set
openal_stream
OpenAL Funções
PHP Manual

openal_source_stop

(PECL openal >= 0.1.0)

openal_source_stop — Stop playing the source

Descrição

bool openal_source_stop ( resource $source )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openal_source_play() - Start playing the source
  • openal_source_pause() - Pause the source
  • openal_source_rewind() - Rewind the source

openal_source_set
openal_stream
OpenAL Funções


Begin streaming on a source

openal_source_stop
Serviços de Autenticação
OpenAL Funções
PHP Manual

openal_stream

(PECL openal >= 0.1.0)

openal_stream — Begin streaming on a source

Descrição

resource openal_stream ( resource $source , int $format , int $rate )

Parâmetros

source

An Open AL(Source) resource (previously created by openal_source_create()).

format

Format of data, one of: AL_FORMAT_MONO8, AL_FORMAT_MONO16, AL_FORMAT_STEREO8 e AL_FORMAT_STEREO16

rate

Frequency of data to stream given in Hz.

Valor Retornado

Returns a stream resource on success or FALSE on failure.

Veja Também

  • openal_source_create() - Generate a source resource
  • fwrite() - Escrita binary-safe em arquivos

openal_source_stop
Serviços de Autenticação
OpenAL Funções


Serviços de Autenticação

  • KADM5 — Kerberos V
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • KADM5 Funções
  • Radius
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Radius Funções
openal_stream
KADM5
Referência das Funções


Kerberos V

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • Constants for Attribute Flags
    • Constants for Options
  • Exemplos
  • KADM5 Funções
    • kadm5_chpass_principal — Changes the principal's password
    • kadm5_create_principal — Creates a kerberos principal with the given parameters
    • kadm5_delete_principal — Deletes a kerberos principal
    • kadm5_destroy — Closes the connection to the admin server and releases all related resources
    • kadm5_flush — Flush all changes to the Kerberos database
    • kadm5_get_policies — Gets all policies from the Kerberos database
    • kadm5_get_principal — Gets the principal's entries from the Kerberos database
    • kadm5_get_principals — Gets all principals from the Kerberos database
    • kadm5_init_with_password — Opens a connection to the KADM5 library
    • kadm5_modify_principal — Modifies a kerberos principal with the given parameters
Serviços de Autenticação
Introdução
Serviços de Autenticação


Introdução

These package allows you to access Kerberos V administration servers. You can create, modify, and delete Kerberos V principals and policies.

More information about Kerberos can be found at » http://web.mit.edu/kerberos/www/.

Documentation for Kerberos and KADM5 can be found at » http://web.mit.edu/kerberos/www/krb5-1.2/krb5-1.2.8/doc/admin_toc.html.

KADM5
Instalação/Configuração
KADM5


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
KADM5


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/kadm5.

Nota:

If this option is used without specifying the path to KADM5, PHP will use the built-in KADM5 client libraries. Users who run other applications that use KADM5 (for example, running PHP 4 and PHP 5 as concurrent apache modules, or auth-kadm5) should always specify the path to KADM5: --with-kadm5=/path/to/kadm5. This will force PHP to use the client libraries installed by KADM5, avoiding any conflicts.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines a KADM5 handle returned by kadm5_init_with_password().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Índice

  • Constants for Attribute Flags
  • Constants for Options

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
Constants for Attribute Flags
KADM5


Constants for Attribute Flags

The functions kadm5_create_principal(),
kadm5_modify_principal(), and
kadm5_modify_principal() allow to specify
special attributes using a bitfield. The symbols are defined below:

Attributes for use by the KDC
constant
KRB5_KDB_DISALLOW_POSTDATED
KRB5_KDB_DISALLOW_FORWARDABLE
KRB5_KDB_DISALLOW_TGT_BASED
KRB5_KDB_DISALLOW_RENEWABLE
KRB5_KDB_DISALLOW_PROXIABLE
KRB5_KDB_DISALLOW_DUP_SKEY
KRB5_KDB_DISALLOW_ALL_TIX
KRB5_KDB_REQUIRES_PRE_AUTH
KRB5_KDB_REQUIRES_HW_AUTH
KRB5_KDB_REQUIRES_PWCHANGE
KRB5_KDB_DISALLOW_SVR
KRB5_KDB_PWCHANGE_SERVER
KRB5_KDB_SUPPORT_DESMD5
KRB5_KDB_NEW_PRINC

Constantes pré-definidas
Constants for Options
Constantes pré-definidas


Constants for Options

The functions kadm5_create_principal(),
kadm5_modify_principal(), and
kadm5_get_principal() allow to specify or return
principal's options as an associative array. The keys for the associative
array are defined as string constants below:

Options for creating/modifying/retrieving principals
constant | funcdef | description
KADM5_PRINCIPAL | long | The expire time of the princial as a Kerberos timestamp.
KADM5_PRINC_EXPIRE_TIME | long | The expire time of the princial as a Kerberos timestamp.
KADM5_LAST_PW_CHANGE | long | The time this principal's password was last changed.
KADM5_PW_EXPIRATION | long | The expire time of the principal's current password, as a Kerberos timestamp.
KADM5_MAX_LIFE | long | The maximum lifetime of any Kerberos ticket issued to this principal.
KADM5_MAX_RLIFE | long | The maximum renewable lifetime of any Kerberos ticket issued to or for this principal.
KADM5_MOD_NAME | string | The name of the Kerberos principal that most recently modified this principal.
KADM5_MOD_TIME | long | The time this principal was last modified, as a Kerberos timestamp.
KADM5_KVNO | long | The version of the principal's current key.
KADM5_POLICY | string | The name of the policy controlling this principal.
KADM5_CLEARPOLICY | long | Standard procedure is to assign the 'default' policy to new principals. KADM5_CLEARPOLICY suppresses this behaviour.
KADM5_LAST_SUCCESS | long | The KDC time of the last successfull AS_REQ.
KADM5_LAST_FAILED | long | The KDC time of the last failed AS_REQ.
KADM5_FAIL_AUTH_COUNT | long | The number of consecutive failed AS_REQs.
KADM5_RANDKEY | long | Generates a random password for the principal. The parameter password will be ignored.
KADM5_ATTRIBUTES | long | A bitfield of attributes for use by the KDC.

Constants for Attribute Flags
Exemplos
Constantes pré-definidas


Exemplos

Índice

Constants for Options
KADM5


Exemplos
KADM5 Funções
Exemplos
PHP Manual

This simple example shows how to connect, query, print resulting principals and disconnect from a KADM5 database.

Exemplo #1 KADM5 extension overview example

<?php

  $handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

  print "<h1>get_principals</h1>\n";
  $principals = kadm5_get_principals($handle);
  for( $i=0; $i<count($principals); $i++)
      print "$principals[$i]<br>\n";

  print "<h1>get_policies</h1>\n";
  $policies = kadm5_get_policies($handle);
  for( $i=0; $i<count($policies); $i++)
      print "$policies[$i]<br>\n";

  print "<h1>get_principal burbach@GONICUS.LOCAL</h1>\n";

  $options = kadm5_get_principal($handle, "burbach@GONICUS.LOCAL" );
  $keys = array_keys($options);
  for( $i=0; $i<count($keys); $i++) {
    $value = $options[$keys[$i]];
    print "$keys[$i]: $value<br>\n";
  }

  $options = array(KADM5_PRINC_EXPIRE_TIME => 0);
  kadm5_modify_principal($handle, "burbach@GONICUS.LOCAL", $options);

  kadm5_destroy($handle);
?>

Exemplos
KADM5 Funções
Exemplos


KADM5 Funções

Índice

  • kadm5_chpass_principal — Changes the principal's password
  • kadm5_create_principal — Creates a kerberos principal with the given parameters
  • kadm5_delete_principal — Deletes a kerberos principal
  • kadm5_destroy — Closes the connection to the admin server and releases all related resources
  • kadm5_flush — Flush all changes to the Kerberos database
  • kadm5_get_policies — Gets all policies from the Kerberos database
  • kadm5_get_principal — Gets the principal's entries from the Kerberos database
  • kadm5_get_principals — Gets all principals from the Kerberos database
  • kadm5_init_with_password — Opens a connection to the KADM5 library
  • kadm5_modify_principal — Modifies a kerberos principal with the given parameters
kadm5_chpass_principal
KADM5


Changes the principal's password

KADM5 Funções
kadm5_create_principal
KADM5 Funções
PHP Manual

kadm5_chpass_principal

(PECL kadm5 >= 0.2.3)

kadm5_chpass_principal — Changes the principal's password

Descrição

bool kadm5_chpass_principal ( resource $handle , string $principal , string $password )

kadm5_chpass_principal() sets the new password password for the principal.

Parâmetros

handle

A KADM5 handle.

principal

The principal.

password

The new password.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Example of changing principal's password

<?php

$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

kadm5_chpass_principal($handle, "burbach@GONICUS.LOCAL", "newpassword");

kadm5_destroy($handle);
?>

KADM5 Funções
kadm5_create_principal
KADM5 Funções


Creates a kerberos principal with the given parameters

kadm5_chpass_principal
kadm5_delete_principal
KADM5 Funções
PHP Manual

kadm5_create_principal

(PECL kadm5 >= 0.2.3)

kadm5_create_principal — Creates a kerberos principal with the given parameters

Descrição

bool kadm5_create_principal ( resource $handle , string $principal [, string $password [, array $options ]] )

Creates a principal with the given password.

Parâmetros

handle

A KADM5 handle.

principal

The principal.

password

If password is omitted or is NULL, a random key will be generated.

options

It is possible to specify several optional parameters within the array options. Allowed are the following options: KADM5_PRINC_EXPIRE_TIME, KADM5_PW_EXPIRATION, KADM5_ATTRIBUTES, KADM5_MAX_LIFE, KADM5_KVNO, KADM5_POLICY, KADM5_CLEARPOLICY, KADM5_MAX_RLIFE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Example of principal's creation

<?php

$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

$attributes = KRB5_KDB_REQUIRES_PRE_AUTH | KRB5_KDB_DISALLOW_PROXIABLE;
$options = array(KADM5_PRINC_EXPIRE_TIME => 0,
                 KADM5_POLICY => "default",
                 KADM5_ATTRIBUTES => $attributes);

kadm5_create_principal($handle, "burbach@GONICUS.LOCAL", "password", $options);

kadm5_destroy($handle);
?>

Veja Também

  • kadm5_modify_principal() - Modifies a kerberos principal with the given parameters
  • kadm5_delete_principal() - Deletes a kerberos principal

kadm5_chpass_principal
kadm5_delete_principal
KADM5 Funções


Deletes a kerberos principal

kadm5_create_principal
kadm5_destroy
KADM5 Funções
PHP Manual

kadm5_delete_principal

(PECL kadm5 >= 0.2.3)

kadm5_delete_principal — Deletes a kerberos principal

Descrição

bool kadm5_delete_principal ( resource $handle , string $principal )

Removes the principal from the Kerberos database.

Parâmetros

handle

A KADM5 handle.

principal

The removed principal.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 kadm5_delete_principal() example

<?php

$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

kadm5_delete_principal($handle, "burbach@GONICUS.LOCAL");

kadm5_destroy($handle);
?>

Veja Também

  • kadm5_modify_principal() - Modifies a kerberos principal with the given parameters
  • kadm5_create_principal() - Creates a kerberos principal with the given parameters

kadm5_create_principal
kadm5_destroy
KADM5 Funções


Closes the connection to the admin server and releases all related resources

kadm5_delete_principal
kadm5_flush
KADM5 Funções
PHP Manual

kadm5_destroy

(PECL kadm5 >= 0.2.3)

kadm5_destroy — Closes the connection to the admin server and releases all related resources

Descrição

bool kadm5_destroy ( resource $handle )

Closes the connection to the admin server and releases all related resources.

Parâmetros

handle

A KADM5 handle.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • kadm5_init_with_password() - Opens a connection to the KADM5 library

kadm5_delete_principal
kadm5_flush
KADM5 Funções


Flush all changes to the Kerberos database

kadm5_destroy
kadm5_get_policies
KADM5 Funções
PHP Manual

kadm5_flush

(PECL kadm5 >= 0.2.3)

kadm5_flush — Flush all changes to the Kerberos database

Descrição

bool kadm5_flush ( resource $handle )

Flush all changes to the Kerberos database, leaving the connection to the Kerberos admin server open.

Parâmetros

handle

A KADM5 handle.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

kadm5_destroy
kadm5_get_policies
KADM5 Funções


Gets all policies from the Kerberos database

kadm5_flush
kadm5_get_principal
KADM5 Funções
PHP Manual

kadm5_get_policies

(PECL kadm5 >= 0.2.3)

kadm5_get_policies — Gets all policies from the Kerberos database

Descrição

array kadm5_get_policies ( resource $handle )

Gets an array containing the policies's names.

Parâmetros

handle

A KADM5 handle.

Valor Retornado

Returns array of policies on success or FALSE on failure.

Exemplos

Exemplo #1 kadm5_get_policies() example

<?php
$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

print "<h1>get_policies</h1>\n";
foreach (kadm5_get_policies($handle) as $policy) {
    echo "$policy<br />\n";
}

kadm5_destroy($handle);
?>

kadm5_flush
kadm5_get_principal
KADM5 Funções


Gets the principal's entries from the Kerberos database

kadm5_get_policies
kadm5_get_principals
KADM5 Funções
PHP Manual

kadm5_get_principal

(PECL kadm5 >= 0.2.3)

kadm5_get_principal — Gets the principal's entries from the Kerberos database

Descrição

array kadm5_get_principal ( resource $handle , string $principal )

Gets the principal's entries from the Kerberos database.

Parâmetros

handle

A KADM5 handle.

principal

The principal.

Valor Retornado

Returns array of options containing the following keys: KADM5_PRINCIPAL, KADM5_PRINC_EXPIRE_TIME, KADM5_PW_EXPIRATION, KADM5_ATTRIBUTES, KADM5_MAX_LIFE, KADM5_MOD_NAME, KADM5_MOD_TIME, KADM5_KVNO, KADM5_POLICY, KADM5_MAX_RLIFE, KADM5_LAST_SUCCESS, KADM5_LAST_FAILED, KADM5_FAIL_AUTH_COUNT on success or FALSE on failure.

Exemplos

Exemplo #1 kadm5_get_principal() example

<?php
$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

print "<h1>get_principal burbach@GONICUS.LOCAL</h1>\n";

$options = kadm5_get_principal($handle, "burbach@GONICUS.LOCAL" );

foreach ($options as $key => $value) {
    echo "$key: $value<br />\n";
}

kadm5_destroy($handle);
?>

Veja Também

  • kadm5_get_principals() - Gets all principals from the Kerberos database

kadm5_get_policies
kadm5_get_principals
KADM5 Funções


Gets all principals from the Kerberos database

kadm5_get_principal
kadm5_init_with_password
KADM5 Funções
PHP Manual

kadm5_get_principals

(PECL kadm5 >= 0.2.3)

kadm5_get_principals — Gets all principals from the Kerberos database

Descrição

array kadm5_get_principals ( resource $handle )

kadm5_get_principals() returns an array containing the principals's names.

Parâmetros

handle

A KADM5 handle.

Valor Retornado

Returns array of principals on success or FALSE on failure.

Exemplos

Exemplo #1 kadm5_get_principals() example

<?php
$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

print "<h1>get_principals</h1>\n";
foreach (kadm5_get_principals($handle) as $principal) {
    echo "$principal<br />\n";
}

kadm5_destroy($handle);
?>

Veja Também

  • kadm5_get_principal() - Gets the principal's entries from the Kerberos database

kadm5_get_principal
kadm5_init_with_password
KADM5 Funções


Opens a connection to the KADM5 library

kadm5_get_principals
kadm5_modify_principal
KADM5 Funções
PHP Manual

kadm5_init_with_password

(PECL kadm5 >= 0.2.3)

kadm5_init_with_password — Opens a connection to the KADM5 library

Descrição

resource kadm5_init_with_password ( string $admin_server , string $realm , string $principal , string $password )

Opens a connection with the KADM5 library using the principal and the given password to obtain initial credentials from the admin_server.

Parâmetros

admin_server

The server.

realm

Defines the authentication domain for the connection.

principal

The principal.

password

If password is omitted or is NULL, a random key will be generated.

Valor Retornado

Returns a KADM5 handle on success or FALSE on failure.

Exemplos

Exemplo #1 KADM5 initialization example

<?php

$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

$attributes = KRB5_KDB_REQUIRES_PRE_AUTH | KRB5_KDB_DISALLOW_PROXIABLE;
$options = array(KADM5_PRINC_EXPIRE_TIME => 0,
                 KADM5_POLICY => "default",
                 KADM5_ATTRIBUTES => $attributes);

kadm5_create_principal($handle, "burbach@GONICUS.LOCAL", "password", $options);

kadm5_destroy($handle);
?>

Notas

Nota:

Connection should be closed after use with kadm5_destroy().

Veja Também

  • kadm5_destroy() - Closes the connection to the admin server and releases all related resources

kadm5_get_principals
kadm5_modify_principal
KADM5 Funções


Modifies a kerberos principal with the given parameters

kadm5_init_with_password
Radius
KADM5 Funções
PHP Manual

kadm5_modify_principal

(PECL kadm5 >= 0.2.3)

kadm5_modify_principal — Modifies a kerberos principal with the given parameters

Descrição

bool kadm5_modify_principal ( resource $handle , string $principal , array $options )

Modifies a principal according to the given options.

Parâmetros

handle

A KADM5 handle.

principal

The principal.

options

It is possible to specify several optional parameters within the array options. Allowed are the following options: KADM5_PRINC_EXPIRE_TIME, KADM5_PW_EXPIRATION, KADM5_ATTRIBUTES, KADM5_MAX_LIFE, KADM5_KVNO, KADM5_POLICY, KADM5_CLEARPOLICY, KADM5_MAX_RLIFE. KADM5_FAIL_AUTH_COUNT.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Example of modifying principal

<?php

$handle = kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

$attributes = KRB5_KDB_REQUIRES_PRE_AUTH;
$options = array(KADM5_PRINC_EXPIRE_TIME => 3451234,
                 KADM5_POLICY => "gonicus",
                 KADM5_ATTRIBUTES => $attributes);

kadm5_modify_principal($handle, "burbach@GONICUS.LOCAL", $options);

kadm5_destroy($handle);
?>

Veja Também

  • kadm5_create_principal() - Creates a kerberos principal with the given parameters
  • kadm5_delete_principal() - Deletes a kerberos principal

kadm5_init_with_password
Radius
KADM5 Funções


Radius

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Radius Funções
    • radius_acct_open — Creates a Radius handle for accounting
    • radius_add_server — Adds a server
    • radius_auth_open — Creates a Radius handle for authentication
    • radius_close — Frees all ressources
    • radius_config — Causes the library to read the given configuration file
    • radius_create_request — Create accounting or authentication request
    • radius_cvt_addr — Converts raw data to IP-Address
    • radius_cvt_int — Converts raw data to integer
    • radius_cvt_string — Converts raw data to string
    • radius_demangle_mppe_key — Derives mppe-keys from mangled data
    • radius_demangle — Demangles data
    • radius_get_attr — Extracts an attribute
    • radius_get_vendor_attr — Extracts a vendor specific attribute
    • radius_put_addr — Attaches an IP-Address attribute
    • radius_put_attr — Attaches a binary attribute
    • radius_put_int — Attaches an integer attribute
    • radius_put_string — Attaches a string attribute
    • radius_put_vendor_addr — Attaches a vendor specific IP-Address attribute
    • radius_put_vendor_attr — Attaches a vendor specific binary attribute
    • radius_put_vendor_int — Attaches a vendor specific integer attribute
    • radius_put_vendor_string — Attaches a vendor specific string attribute
    • radius_request_authenticator — Returns the request authenticator
    • radius_send_request — Sends the request and waites for a reply
    • radius_server_secret — Returns the shared secret
    • radius_strerror — Returns an error message
kadm5_modify_principal
Introdução
Serviços de Autenticação


Introdução

This package is based on the libradius (Remote Authentication Dial In User Service) of FreeBSD. It allows clients to perform authentication and accounting by means of network requests to remote servers.

This PECL extension adds full support for Radius Authentication (» RFC 2865) and Radius Accounting (» RFC 2866). This package is available for Unix (tested on FreeBSD and Linux) and for Windows.

Nota:

An exact description for libradius can be found » here. A detailed description of the configuration file can be found » here.

Radius
Instalação/Configuração
Radius


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Radius


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/radius.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

RADIUS_ACCESS_REQUEST ()
Authentication Request
RADIUS_ACCESS_ACCEPT ()
Access accepted
RADIUS_ACCESS_REJECT ()
Access rejected
RADIUS_ACCOUNTING_REQUEST ()
Accounting request
RADIUS_ACCOUNTING_RESPONSE ()
Accounting response
RADIUS_ACCESS_CHALLENGE ()
Accsess challenge
RADIUS_USER_NAME (string)
Username
RADIUS_USER_PASSWORD (string)
Password
RADIUS_CHAP_PASSWORD (string)
Chap Password: chappass = md5(ident + plaintextpass + challenge)
RADIUS_NAS_IP_ADDRESS (string)
NAS IP-Adress
RADIUS_NAS_PORT (int)
NAS Port
RADIUS_SERVICE_TYPE (int)

Type of Service, one of:

  • RADIUS_LOGIN
  • RADIUS_FRAMED
  • RADIUS_CALLBACK_LOGIN
  • RADIUS_CALLBACK_FRAMED
  • RADIUS_OUTBOUND
  • RADIUS_ADMINISTRATIVE
  • RADIUS_NAS_PROMPT
  • RADIUS_AUTHENTICATE_ONLY
  • RADIUS_CALLBACK_NAS_PROMPT

RADIUS_FRAMED_PROTOCOL (int)

Framed Protocol, one of:

  • RADIUS_PPP
  • RADIUS_SLIP
  • RADIUS_ARAP
  • RADIUS_GANDALF
  • RADIUS_XYLOGICS

RADIUS_FRAMED_IP_ADDRESS (string)
IP-Address
RADIUS_FRAMED_IP_NETMASK (string)
Netmask
RADIUS_FRAMED_ROUTING (int)
Routing
RADIUS_FILTER_ID (string)
Filter ID
RADIUS_FRAMED_MTU (int)
MTU
RADIUS_FRAMED_COMPRESSION (int)

Compression, one of:

  • RADIUS_COMP_NONE
  • RADIUS_COMP_VJ
  • RADIUS_COMP_IPXHDR

RADIUS_LOGIN_IP_HOST (string)
Login IP Host
RADIUS_LOGIN_SERVICE (int)
Login Service
RADIUS_LOGIN_TCP_PORT (int)
Login TCP Port
RADIUS_REPLY_MESSAGE (string)
Reply Message
RADIUS_CALLBACK_NUMBER (string)
Callback Number
RADIUS_CALLBACK_ID (string)
Callback ID
RADIUS_FRAMED_ROUTE (string)
Framed Route
RADIUS_FRAMED_IPX_NETWORK (string)
Framed IPX Network
RADIUS_STATE (string)
State
RADIUS_CLASS (int)
Class
RADIUS_VENDOR_SPECIFIC (int)
Vendor specific attribute
RADIUS_SESSION_TIMEOUT (int)
Session timeout
RADIUS_IDLE_TIMEOUT (int)
Idle timeout
RADIUS_TERMINATION_ACTION (int)
Termination action
RADIUS_CALLED_STATION_ID (int)
Called Station Id
RADIUS_CALLING_STATION_ID (string)
Calling Station Id
RADIUS_NAS_IDENTIFIER (int)
NAS ID
RADIUS_PROXY_STATE (int)
Proxy State
RADIUS_LOGIN_LAT_SERVICE (int)
Login LAT Service
RADIUS_LOGIN_LAT_NODE (int)
Login LAT Node
RADIUS_LOGIN_LAT_GROUP (int)
Login LAT Group
RADIUS_FRAMED_APPLETALK_LINK (int)
Framed Appletalk Link
RADIUS_FRAMED_APPLETALK_NETWORK (int)
Framed Appletalk Network
RADIUS_FRAMED_APPLETALK_ZONE (int)
Framed Appletalk Zone
RADIUS_CHAP_CHALLENGE (string)
Challenge
RADIUS_NAS_PORT_TYPE (int)

NAS port type, one of:

  • RADIUS_ASYNC
  • RADIUS_SYNC
  • RADIUS_ISDN_SYNC
  • RADIUS_ISDN_ASYNC_V120
  • RADIUS_ISDN_ASYNC_V110
  • RADIUS_VIRTUAL
  • RADIUS_PIAFS
  • RADIUS_HDLC_CLEAR_CHANNEL
  • RADIUS_X_25
  • RADIUS_X_75
  • RADIUS_G_3_FAX
  • RADIUS_SDSL
  • RADIUS_ADSL_CAP
  • RADIUS_ADSL_DMT
  • RADIUS_IDSL
  • RADIUS_ETHERNET
  • RADIUS_XDSL
  • RADIUS_CABLE
  • RADIUS_WIRELESS_OTHER
  • RADIUS_WIRELESS_IEEE_802_11

RADIUS_PORT_LIMIT (int)
Port Limit
RADIUS_LOGIN_LAT_PORT (int)
Login LAT Port
RADIUS_CONNECT_INFO (string)
Connect info
RADIUS_ACCT_STATUS_TYPE (int)

Accounting status type, one of:

  • RADIUS_START
  • RADIUS_STOP
  • RADIUS_ACCOUNTING_ON
  • RADIUS_ACCOUNTING_OFF

RADIUS_ACCT_DELAY_TIME (int)
Accounting delay time
RADIUS_ACCT_INPUT_OCTETS (int)
Accounting input bytes
RADIUS_ACCT_OUTPUT_OCTETS (int)
Accounting output bytes
RADIUS_ACCT_SESSION_ID (int)
Accounting session ID
RADIUS_ACCT_AUTHENTIC (int)

Accounting authentic, one of:

  • RADIUS_AUTH_RADIUS
  • RADIUS_AUTH_LOCAL
  • RADIUS_AUTH_REMOTE

RADIUS_ACCT_SESSION_TIME (int)
Accounting session time
RADIUS_ACCT_INPUT_PACKETS (int)
Accounting input packets
RADIUS_ACCT_OUTPUT_PACKETS (int)
Accounting output packets
RADIUS_ACCT_TERMINATE_CAUSE (int)

Accounting terminate cause, one of:

  • RADIUS_TERM_USER_REQUEST
  • RADIUS_TERM_LOST_CARRIER
  • RADIUS_TERM_LOST_SERVICE
  • RADIUS_TERM_IDLE_TIMEOUT
  • RADIUS_TERM_SESSION_TIMEOUT
  • RADIUS_TERM_ADMIN_RESET
  • RADIUS_TERM_ADMIN_REBOOT
  • RADIUS_TERM_PORT_ERROR
  • RADIUS_TERM_NAS_ERROR
  • RADIUS_TERM_NAS_REQUEST
  • RADIUS_TERM_NAS_REBOOT
  • RADIUS_TERM_PORT_UNNEEDED
  • RADIUS_TERM_PORT_PREEMPTED
  • RADIUS_TERM_PORT_SUSPENDED
  • RADIUS_TERM_SERVICE_UNAVAILABLE
  • RADIUS_TERM_CALLBACK
  • RADIUS_TERM_USER_ERROR
  • RADIUS_TERM_HOST_REQUEST

RADIUS_ACCT_MULTI_SESSION_ID (string)
Accounting multi session ID
RADIUS_ACCT_LINK_COUNT (int)
Accounting link count
RADIUS_VENDOR_MICROSOFT (int)

Microsoft specific vendor attributes (» RFC 2548), one of:

  • RADIUS_MICROSOFT_MS_CHAP_RESPONSE
  • RADIUS_MICROSOFT_MS_CHAP_ERROR
  • RADIUS_MICROSOFT_MS_CHAP_PW_1
  • RADIUS_MICROSOFT_MS_CHAP_PW_2
  • RADIUS_MICROSOFT_MS_CHAP_LM_ENC_PW
  • RADIUS_MICROSOFT_MS_CHAP_NT_ENC_PW
  • RADIUS_MICROSOFT_MS_MPPE_ENCRYPTION_POLICY
  • RADIUS_MICROSOFT_MS_MPPE_ENCRYPTION_TYPES
  • RADIUS_MICROSOFT_MS_RAS_VENDOR
  • RADIUS_MICROSOFT_MS_CHAP_DOMAIN
  • RADIUS_MICROSOFT_MS_CHAP_CHALLENGE
  • RADIUS_MICROSOFT_MS_CHAP_MPPE_KEYS
  • RADIUS_MICROSOFT_MS_BAP_USAGE
  • RADIUS_MICROSOFT_MS_LINK_UTILIZATION_THRESHOLD
  • RADIUS_MICROSOFT_MS_LINK_DROP_TIME_LIMIT
  • RADIUS_MICROSOFT_MS_MPPE_SEND_KEY
  • RADIUS_MICROSOFT_MS_MPPE_RECV_KEY
  • RADIUS_MICROSOFT_MS_RAS_VERSION
  • RADIUS_MICROSOFT_MS_OLD_ARAP_PASSWORD
  • RADIUS_MICROSOFT_MS_NEW_ARAP_PASSWORD
  • RADIUS_MICROSOFT_MS_ARAP_PASSWORD_CHANGE_REASON
  • RADIUS_MICROSOFT_MS_FILTER
  • RADIUS_MICROSOFT_MS_ACCT_AUTH_TYPE
  • RADIUS_MICROSOFT_MS_ACCT_EAP_TYPE
  • RADIUS_MICROSOFT_MS_CHAP2_RESPONSE
  • RADIUS_MICROSOFT_MS_CHAP2_SUCCESS
  • RADIUS_MICROSOFT_MS_CHAP2_PW
  • RADIUS_MICROSOFT_MS_PRIMARY_DNS_SERVER
  • RADIUS_MICROSOFT_MS_SECONDARY_DNS_SERVER
  • RADIUS_MICROSOFT_MS_PRIMARY_NBNS_SERVER
  • RADIUS_MICROSOFT_MS_SECONDARY_NBNS_SERVER
  • RADIUS_MICROSOFT_MS_ARAP_CHALLENGE

Tipos Resource
Exemplos
Radius


Exemplos

Howto start?

  • get a radius resource
  • configure the library
  • create the request
  • put attributes
  • send the request
  • receive attributes
  • close the radius resource (optional)
Take also a look at the examples in this package.

The package contains an example php script. This script demonstrates howto authenticate with radius using PAP or CHAP (md5). If you authenticate with Microsoft Radius servers then its not possible to use CHAP (md5). If you would like to authenticate with Microsoft Servers you have to use MS-CHAPv1 or MS-CHAPv2, but its more complicated, because you need md4, sha1 and des to generate the right data. The enclosed examples demonstrate all authentication-methods, including MS-CHAPv1 and MS-CHAPv2. To get the MS-CHAP to work you need the mcrypt and the mhash extension, starting with version 1.2 of the package, the mcrypt extension is no longer needed.

Constantes pré-definidas
Radius Funções
Radius


Radius Funções

Contact Information

If you have comments, bugfixes, enhancements or want to help to develop this you can send me a mail at » mbretter@php.net.

Índice

  • radius_acct_open — Creates a Radius handle for accounting
  • radius_add_server — Adds a server
  • radius_auth_open — Creates a Radius handle for authentication
  • radius_close — Frees all ressources
  • radius_config — Causes the library to read the given configuration file
  • radius_create_request — Create accounting or authentication request
  • radius_cvt_addr — Converts raw data to IP-Address
  • radius_cvt_int — Converts raw data to integer
  • radius_cvt_string — Converts raw data to string
  • radius_demangle_mppe_key — Derives mppe-keys from mangled data
  • radius_demangle — Demangles data
  • radius_get_attr — Extracts an attribute
  • radius_get_vendor_attr — Extracts a vendor specific attribute
  • radius_put_addr — Attaches an IP-Address attribute
  • radius_put_attr — Attaches a binary attribute
  • radius_put_int — Attaches an integer attribute
  • radius_put_string — Attaches a string attribute
  • radius_put_vendor_addr — Attaches a vendor specific IP-Address attribute
  • radius_put_vendor_attr — Attaches a vendor specific binary attribute
  • radius_put_vendor_int — Attaches a vendor specific integer attribute
  • radius_put_vendor_string — Attaches a vendor specific string attribute
  • radius_request_authenticator — Returns the request authenticator
  • radius_send_request — Sends the request and waites for a reply
  • radius_server_secret — Returns the shared secret
  • radius_strerror — Returns an error message
Exemplos
radius_acct_open
Radius


Creates a Radius handle for accounting

Radius Funções
radius_add_server
Radius Funções
PHP Manual

radius_acct_open

(PECL radius >= 1.1.0)

radius_acct_open — Creates a Radius handle for accounting

Descrição

resource radius_acct_open ( void )

Valor Retornado

Returns a handle on success, FALSE on error. This function only fails if insufficient memory is available.

Exemplos

Exemplo #1 radius_acct_open() example

<?php
$res = radius_acct_open ()
    or die ("Could not create handle");
print("Handle successfully created");
?>

Radius Funções
radius_add_server
Radius Funções


Adds a server

radius_acct_open
radius_auth_open
Radius Funções
PHP Manual

radius_add_server

(PECL radius >= 1.1.0)

radius_add_server — Adds a server

Descrição

bool radius_add_server ( resource $radius_handle , string $hostname , int $port , string $secret , int $timeout , int $max_tries )

radius_add_server() may be called multiple times, and it may be used together with radius_config(). At most 10 servers may be specified. When multiple servers are given, they are tried in round-robin fashion until a valid response is received, or until each server's max_tries limit has been reached.

Parâmetros

radius_handle

hostname

The hostname parameter specifies the server host, either as a fully qualified domain name or as a dotted-quad IP address in text form.

port

The port specifies the UDP port to contact on the server. If port is given as 0, the library looks up the radius/udp or radacct/udp service in the network services database, and uses the port found there. If no entry is found, the library uses the standard Radius ports, 1812 for authentication and 1813 for accounting.

secret

The shared secret for the server host is passed to the secret parameter. The Radius protocol ignores all but the leading 128 bytes of the shared secret.

timeout

The timeout for receiving replies from the server is passed to the timeout parameter, in units of seconds.

max_tries

The maximum number of repeated requests to make before giving up is passed into the max_tries.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_add_server() example

<?php
if (!radius_add_server($res, 'radius.example.com', 1812, 'testing123', 3, 3)) {
    echo 'RadiusError:' . radius_strerror($res). "\n<br>";
    exit;
}
?>

Veja Também

  • radius_config() - Causes the library to read the given configuration file

radius_acct_open
radius_auth_open
Radius Funções


Creates a Radius handle for authentication

radius_add_server
radius_close
Radius Funções
PHP Manual

radius_auth_open

(PECL radius >= 1.1.0)

radius_auth_open — Creates a Radius handle for authentication

Descrição

resource radius_auth_open ( void )

Valor Retornado

Returns a handle on success, FALSE on error. This function only fails if insufficient memory is available.

Exemplos

Exemplo #1 radius_auth_open() example

<?php
$radh = radius_auth_open()
    or die ("Could not create handle");
echo "Handle successfully created";
?>

radius_add_server
radius_close
Radius Funções


Frees all ressources

radius_auth_open
radius_config
Radius Funções
PHP Manual

radius_close

(PECL radius >= 1.1.0)

radius_close — Frees all ressources

Descrição

bool radius_close ( resource $radius_handle )

It is not needed to call this function because php frees all resources at the end of each request.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

radius_auth_open
radius_config
Radius Funções


Causes the library to read the given configuration file

radius_close
radius_create_request
Radius Funções
PHP Manual

radius_config

(PECL radius >= 1.1.0)

radius_config — Causes the library to read the given configuration file

Descrição

bool radius_config ( resource $radius_handle , string $file )

Before issuing any Radius requests, the library must be made aware of the servers it can contact. The easiest way to configure the library is to call radius_config(). radius_config() causes the library to read a configuration file whose format is described in » radius.conf.

Parâmetros

radius_handle

file

The pathname of the configuration file is passed as the file argument to radius_config(). The library can also be configured programmatically by calls to radius_add_server().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • radius_add_server() - Adds a server

radius_close
radius_create_request
Radius Funções


Create accounting or authentication request

radius_config
radius_cvt_addr
Radius Funções
PHP Manual

radius_create_request

(PECL radius >= 1.1.0)

radius_create_request — Create accounting or authentication request

Descrição

bool radius_create_request ( resource $radius_handle , int $type )

A Radius request consists of a code specifying the kind of request, and zero or more attributes which provide additional information. To begin constructing a new request, call radius_create_request().

Nota: Attention: You must call this function, before you can put any attribute!

Parâmetros

radius_handle

type

Type is RADIUS_ACCESS_REQUEST or RADIUS_ACCOUNTING_REQUEST.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_create_request() example

<?php
if (!radius_create_request($res, RADIUS_ACCESS_REQUEST)) {
    echo 'RadiusError:' . radius_strerror($res). "\n<br />";
    exit;
}
?>

Veja Também

  • radius_send_request() - Sends the request and waites for a reply

radius_config
radius_cvt_addr
Radius Funções


Converts raw data to IP-Address

radius_create_request
radius_cvt_int
Radius Funções
PHP Manual

radius_cvt_addr

(PECL radius >= 1.1.0)

radius_cvt_addr — Converts raw data to IP-Address

Descrição

string radius_cvt_addr ( string $data )

Exemplos

Exemplo #1 radius_cvt_addr() example

<?php
while ($resa = radius_get_attr($res)) {

    if (!is_array($resa)) {
        printf ("Error getting attribute: %s\n",  radius_strerror($res));
        exit;
    }

    $attr = $resa['attr'];
    $data = $resa['data'];

    switch ($attr) {

    case RADIUS_FRAMED_IP_ADDRESS:
        $ip = radius_cvt_addr($data);
        echo "IP: $ip<br>\n";
        break;

    case RADIUS_FRAMED_IP_NETMASK:
        $mask = radius_cvt_addr($data);
        echo "MASK: $mask<br>\n";
        break;
    }
}
?>

Veja Também

  • radius_cvt_int() - Converts raw data to integer
  • radius_cvt_string() - Converts raw data to string

radius_create_request
radius_cvt_int
Radius Funções


Converts raw data to integer

radius_cvt_addr
radius_cvt_string
Radius Funções
PHP Manual

radius_cvt_int

(PECL radius >= 1.1.0)

radius_cvt_int — Converts raw data to integer

Descrição

int radius_cvt_int ( string $data )

Exemplos

Exemplo #1 radius_cvt_int() example

<?php
while ($resa = radius_get_attr($res)) {

    if (!is_array($resa)) {
        printf ("Error getting attribute: %s\n",  radius_strerror($res));
        exit;
    }

    $attr = $resa['attr'];
    $data = $resa['data'];

    switch ($attr) {

    case RADIUS_FRAMED_MTU:
        $mtu = radius_cvt_int($data);
        echo "MTU: $mtu<br>\n";
        break;
    }
}
?>

Veja Também

  • radius_cvt_addr() - Converts raw data to IP-Address
  • radius_cvt_string() - Converts raw data to string

radius_cvt_addr
radius_cvt_string
Radius Funções


Converts raw data to string

radius_cvt_int
radius_demangle_mppe_key
Radius Funções
PHP Manual

radius_cvt_string

(PECL radius >= 1.1.0)

radius_cvt_string — Converts raw data to string

Descrição

string radius_cvt_string ( string $data )

Exemplos

Exemplo #1 radius_cvt_string() example

<?php
while ($resa = radius_get_attr($res)) {

    if (!is_array($resa)) {
        printf ("Error getting attribute: %s\n",  radius_strerror($res));
        exit;
    }

    $attr = $resa['attr'];
    $data = $resa['data'];

    switch ($attr) {

    case RADIUS_FILTER_ID:
        $id = radius_cvt_string($data);
        echo "Filter ID: $id<br>\n";
        break;
    }
}
?>

Veja Também

  • radius_cvt_addr() - Converts raw data to IP-Address
  • radius_cvt_int() - Converts raw data to integer

radius_cvt_int
radius_demangle_mppe_key
Radius Funções


Derives mppe-keys from mangled data

radius_cvt_string
radius_demangle
Radius Funções
PHP Manual

radius_demangle_mppe_key

(PECL radius >= 1.2.0)

radius_demangle_mppe_key — Derives mppe-keys from mangled data

Descrição

string radius_demangle_mppe_key ( resource $radius_handle , string $mangled )

When using MPPE with MS-CHAPv2, the send- and recv-keys are mangled (see » RFC 2548), however this function is useless, because I don't think that there is or will be a PPTP-MPPE implementation in PHP.

Valor Retornado

Returns the demangled string, or FALSE on error.

radius_cvt_string
radius_demangle
Radius Funções


Demangles data

radius_demangle_mppe_key
radius_get_attr
Radius Funções
PHP Manual

radius_demangle

(PECL radius >= 1.2.0)

radius_demangle — Demangles data

Descrição

string radius_demangle ( resource $radius_handle , string $mangled )

Some data (Passwords, MS-CHAPv1 MPPE-Keys) is mangled for security reasons, and must be demangled before you can use them.

Valor Retornado

Returns the demangled string, or FALSE on error.

radius_demangle_mppe_key
radius_get_attr
Radius Funções


Extracts an attribute

radius_demangle
radius_get_vendor_attr
Radius Funções
PHP Manual

radius_get_attr

(PECL radius >= 1.1.0)

radius_get_attr — Extracts an attribute

Descrição

mixed radius_get_attr ( resource $radius_handle )

Like Radius requests, each response may contain zero or more attributes. After a response has been received successfully by radius_send_request(), its attributes can be extracted one by one using radius_get_attr(). Each time radius_get_attr() is called, it gets the next attribute from the current response.

Valor Retornado

Returns an associative array containing the attribute-type and the data, or error number <= 0.

Exemplos

Exemplo #1 radius_get_attr() example

<?php
while ($resa = radius_get_attr($res)) {

    if (!is_array($resa)) {
        printf("Error getting attribute: %s\n",  radius_strerror($res));
        exit;
    }

    $attr = $resa['attr'];
    $data = $resa['data'];
    printf("Got Attr:%d %d Bytes %s\n", $attr, strlen($data), bin2hex($data));
}
?>

Veja Também

  • radius_put_attr() - Attaches a binary attribute
  • radius_get_vendor_attr() - Extracts a vendor specific attribute
  • radius_put_vendor_attr() - Attaches a vendor specific binary attribute
  • radius_send_request() - Sends the request and waites for a reply

radius_demangle
radius_get_vendor_attr
Radius Funções


Extracts a vendor specific attribute

radius_get_attr
radius_put_addr
Radius Funções
PHP Manual

radius_get_vendor_attr

(PECL radius >= 1.1.0)

radius_get_vendor_attr — Extracts a vendor specific attribute

Descrição

array radius_get_vendor_attr ( string $data )

If radius_get_attr() returns RADIUS_VENDOR_SPECIFIC, radius_get_vendor_attr() may be called to determine the vendor.

Valor Retornado

Returns an associative array containing the attribute-type, vendor and the data, or FALSE on error.

Exemplos

Exemplo #1 radius_get_vendor_attr() example

<?php
while ($resa = radius_get_attr($res)) {

    if (!is_array($resa)) {
        printf ("Error getting attribute: %s\n",  radius_strerror($res));
        exit;
    }

    $attr = $resa['attr'];
    $data = $resa['data'];
    printf("Got Attr:%d %d Bytes %s\n", $attr, strlen($data), bin2hex($data));
    if ($attr == RADIUS_VENDOR_SPECIFIC) {

        $resv = radius_get_vendor_attr($data);
        if (is_array($resv)) {
            $vendor = $resv['vendor'];
            $attrv = $resv['attr'];
            $datav = $resv['data'];
            printf("Got Vendor Attr:%d %d Bytes %s\n", $attrv, strlen($datav), bin2hex($datav));
        }

    }
}
?>

Veja Também

  • radius_get_attr() - Extracts an attribute
  • radius_put_vendor_attr() - Attaches a vendor specific binary attribute

radius_get_attr
radius_put_addr
Radius Funções


Attaches an IP-Address attribute

radius_get_vendor_attr
radius_put_attr
Radius Funções
PHP Manual

radius_put_addr

(PECL radius >= 1.1.0)

radius_put_addr — Attaches an IP-Address attribute

Descrição

bool radius_put_addr ( resource $radius_handle , int $type , string $addr )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

radius_get_vendor_attr
radius_put_attr
Radius Funções


Attaches a binary attribute

radius_put_addr
radius_put_int
Radius Funções
PHP Manual

radius_put_attr

(PECL radius >= 1.1.0)

radius_put_attr — Attaches a binary attribute

Descrição

bool radius_put_attr ( resource $radius_handle , int $type , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_put_attr() example

<?php
mt_srand(time());
$chall = mt_rand();
$chapval = md5(pack('Ca*',1 , 'sepp' . $chall));
$pass = pack('CH*', 1, $chapval);
if (!radius_put_attr($res, RADIUS_CHAP_PASSWORD, $pass)) {
    echo 'RadiusError:' . radius_strerror($res). "\n<br />";
    exit;
}
?>

Veja Também

  • radius_get_attr() - Extracts an attribute
  • radius_get_vendor_attr() - Extracts a vendor specific attribute
  • radius_put_vendor_attr() - Attaches a vendor specific binary attribute

radius_put_addr
radius_put_int
Radius Funções


Attaches an integer attribute

radius_put_attr
radius_put_string
Radius Funções
PHP Manual

radius_put_int

(PECL radius >= 1.1.0)

radius_put_int — Attaches an integer attribute

Descrição

bool radius_put_int ( resource $radius_handle , int $type , int $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_put_int() example

<?php
if (!radius_put_int($res, RAD_FRAMED_PROTOCOL, RAD_PPP)) {
   echo 'RadiusError:' . radius_strerror($res). "\n<br />";
   exit;
}
?>

Veja Também

  • radius_put_string() - Attaches a string attribute
  • radius_put_vendor_int() - Attaches a vendor specific integer attribute
  • radius_put_vendor_string() - Attaches a vendor specific string attribute

radius_put_attr
radius_put_string
Radius Funções


Attaches a string attribute

radius_put_int
radius_put_vendor_addr
Radius Funções
PHP Manual

radius_put_string

(PECL radius >= 1.1.0)

radius_put_string — Attaches a string attribute

Descrição

bool radius_put_string ( resource $radius_handle , int $type , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_put_string() example

<?php
if (!radius_put_string($res, RADIUS_USER_NAME, 'billy')) {
    echo 'RadiusError:' . radius_strerror($res). "\n<br />";
    exit;
}
?>

Veja Também

  • radius_put_int() - Attaches an integer attribute
  • radius_put_vendor_int() - Attaches a vendor specific integer attribute
  • radius_put_vendor_string() - Attaches a vendor specific string attribute

radius_put_int
radius_put_vendor_addr
Radius Funções


Attaches a vendor specific IP-Address attribute

radius_put_string
radius_put_vendor_attr
Radius Funções
PHP Manual

radius_put_vendor_addr

(PECL radius >= 1.1.0)

radius_put_vendor_addr — Attaches a vendor specific IP-Address attribute

Descrição

bool radius_put_vendor_addr ( resource $radius_handle , int $vendor , int $type , string $addr )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

radius_put_string
radius_put_vendor_attr
Radius Funções


Attaches a vendor specific binary attribute

radius_put_vendor_addr
radius_put_vendor_int
Radius Funções
PHP Manual

radius_put_vendor_attr

(PECL radius >= 1.1.0)

radius_put_vendor_attr — Attaches a vendor specific binary attribute

Descrição

bool radius_put_vendor_attr ( resource $radius_handle , int $vendor , int $type , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 radius_put_vendor_attr() example

<?php
if (!radius_put_vendor_attr($res, RADIUS_VENDOR_MICROSOFT, RAD_MICROSOFT_MS_CHAP_CHALLENGE, $challenge)) {
    echo 'RadiusError:' . radius_strerror($res). "\n<br />";
    exit;
}
?>

Veja Também

  • radius_get_vendor_attr() - Extracts a vendor specific attribute

radius_put_vendor_addr
radius_put_vendor_int
Radius Funções


Attaches a vendor specific integer attribute

radius_put_vendor_attr
radius_put_vendor_string
Radius Funções
PHP Manual

radius_put_vendor_int

(PECL radius >= 1.1.0)

radius_put_vendor_int — Attaches a vendor specific integer attribute

Descrição

bool radius_put_vendor_int ( resource $radius_handle , int $vendor , int $type , int $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • radius_put_vendor_string() - Attaches a vendor specific string attribute

radius_put_vendor_attr
radius_put_vendor_string
Radius Funções


Attaches a vendor specific string attribute

radius_put_vendor_int
radius_request_authenticator
Radius Funções
PHP Manual

radius_put_vendor_string

(PECL radius >= 1.1.0)

radius_put_vendor_string — Attaches a vendor specific string attribute

Descrição

bool radius_put_vendor_string ( resource $radius_handle , int $vendor , int $type , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • radius_put_vendor_int() - Attaches a vendor specific integer attribute

radius_put_vendor_int
radius_request_authenticator
Radius Funções


Returns the request authenticator

radius_put_vendor_string
radius_send_request
Radius Funções
PHP Manual

radius_request_authenticator

(PECL radius >= 1.1.0)

radius_request_authenticator — Returns the request authenticator

Descrição

string radius_request_authenticator ( resource $radius_handle )

The request authenticator is needed for demangling mangled data like passwords and encryption-keys.

Valor Retornado

Returns the request authenticator as string, or FALSE on error.

Veja Também

  • radius_demangle() - Demangles data

radius_put_vendor_string
radius_send_request
Radius Funções


Sends the request and waites for a reply

radius_request_authenticator
radius_server_secret
Radius Funções
PHP Manual

radius_send_request

(PECL radius >= 1.1.0)

radius_send_request — Sends the request and waites for a reply

Descrição

int radius_send_request ( resource $radius_handle )

After the Radius request has been constructed, it is sent by radius_send_request().

The radius_send_request() function sends the request and waits for a valid reply, retrying the defined servers in round-robin fashion as necessary.

Valor Retornado

If a valid response is received, radius_send_request() returns the Radius code which specifies the type of the response. This will typically be RADIUS_ACCESS_ACCEPT, RADIUS_ACCESS_REJECT, or RADIUS_ACCESS_CHALLENGE. If no valid response is received, radius_send_request() returns FALSE.

Veja Também

  • radius_create_request() - Create accounting or authentication request

radius_request_authenticator
radius_server_secret
Radius Funções


Returns the shared secret

radius_send_request
radius_strerror
Radius Funções
PHP Manual

radius_server_secret

(PECL radius >= 1.1.0)

radius_server_secret — Returns the shared secret

Descrição

string radius_server_secret ( resource $radius_handle )

The shared secret is needed as salt for demangling mangled data like passwords and encryption-keys.

Valor Retornado

Returns the server's shared secret as string, or FALSE on error.

radius_send_request
radius_strerror
Radius Funções


Returns an error message

radius_server_secret
Extensões Relacionadas a Calendário e Evento
Radius Funções
PHP Manual

radius_strerror

(PECL radius >= 1.1.0)

radius_strerror — Returns an error message

Descrição

string radius_strerror ( resource $radius_handle )

If Radius-functions fail then they record an error message. This error message can be retrieved with this function.

Valor Retornado

Returns error messages as string from failed radius functions.

radius_server_secret
Extensões Relacionadas a Calendário e Evento
Radius Funções


Extensões Relacionadas a Calendário e Evento

  • Calendário
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Calendário Funções
  • Data/Hora — Data e Hora
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Lista de Timezones Suportados
    • Funções de Data/Hora
radius_strerror
Calendário
Referência das Funções


Calendário

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Calendário Funções
    • cal_days_in_month — Retorna o número de dias em um mês de um calendário e ano requisitado
    • cal_from_jd — Converte à partir do "Julian Day Count" para um outro calendário suportado
    • cal_info — Retorna informações sobre um calendário em particular
    • cal_to_jd — Converte um calendário (suportado) para o calendário "Julian Day Count"
    • easter_date — Retorna a data do sistema UNIX correspondente à meia-noite da Páscoa do ano especificado. Se nenhum ano tiver sido especificado, será assumido o ano atual.
    • easter_days — Obtém o número de dias entre 21 de Março e o dia da Páscoa em determinado ano.
    • FrenchToJD — Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".
    • GregorianToJD — Converte uma data gregoriana para o "Julian Day Count"
    • JDDayOfWeek — Retorna o dia da semana
    • JDMonthName — Retorna o nome de um mês
    • JDToFrench — Converte do calendário "Julian Day Count" para o calendário Republicano Francês
    • JDToGregorian — Converte uma data no formato "Julian Day Count" para o formato Gregoriano
    • jdtojewish — Convete uma data do calendário "Julian Day Count" para o calendário Judaico
    • JDToJulian — Converte uma data do calendário "Julian Day Count" para o calendário "Julian"
    • jdtounix — Converte do formato de dada Juliana para Unix timestamp
    • JewishToJD — Converte uma data do calendário Judaico para o calendário "Julian Day Count"
    • JulianToJD — Converte datas no formato "Julian" para o formato "Julian Day Count"
    • unixtojd — Converte datas do sistema Unix para data Juliana
Extensões Relacionadas a Calendário e Evento
Introdução
Extensões Relacionadas a Calendário e Evento


Introdução

A extensão de calendário contém uma série de funções para simplificar a conversão de diferentes formatos de calendários. O calendário padrão é baseado no formato "Julian Day Count". A contagem de dias do calendário "Julian Day Count" começa em 1º de Janeiro de 4713 B.C. Para converter um calendário para algum formato, você deve primeiro convertê-lo para o formato "Julian Day Count", então converter para o sistema de calendário de sua escolha. O formato de calendário "Julian Day Count" é muito diferente do "Julian Calendar"! Para mais informações sobre o calendário "Julian Day Count", visite » http://www.hermetic.ch/cal_stud/jdn.htm. Para mais informações sobre sistemas de calendários, visite: » http://www.fourmilab.ch/documents/calendar/. "Excerpts from this page are included in these instructions, and are in quotes".

Calendário
Instalação/Configuração
Calendário


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Calendário


Instalação

Para estas funções funcionarem, você precisa compilar o PHP com --enable-calendar .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CAL_GREGORIAN (integer)
CAL_JULIAN (integer)
CAL_JEWISH (integer)
CAL_FRENCH (integer)
CAL_NUM_CALS (integer)
CAL_DOW_DAYNO (integer)
CAL_DOW_SHORT (integer)
CAL_DOW_LONG (integer)
CAL_MONTH_GREGORIAN_SHORT (integer)
CAL_MONTH_GREGORIAN_LONG (integer)
CAL_MONTH_JULIAN_SHORT (integer)
CAL_MONTH_JULIAN_LONG (integer)
CAL_MONTH_JEWISH (integer)
CAL_MONTH_FRENCH (integer)

As constantes abaixo estão disponíveis à partir do PHP 4.3.0:

CAL_EASTER_DEFAULT (integer)
CAL_EASTER_ROMAN (integer)
CAL_EASTER_ALWAYS_GREGORIAN (integer)
CAL_EASTER_ALWAYS_JULIAN (integer)

As constantes abaixo estão disponíveis à partir do PHP 5.0.0:

CAL_JEWISH_ADD_ALAFIM_GERESH (integer)
CAL_JEWISH_ADD_ALAFIM (integer)
CAL_JEWISH_ADD_GERESHAYIM (integer)
Tipos Resource
Calendário Funções
Calendário


Calendário Funções

Índice

  • cal_days_in_month — Retorna o número de dias em um mês de um calendário e ano requisitado
  • cal_from_jd — Converte à partir do "Julian Day Count" para um outro calendário suportado
  • cal_info — Retorna informações sobre um calendário em particular
  • cal_to_jd — Converte um calendário (suportado) para o calendário "Julian Day Count"
  • easter_date — Retorna a data do sistema UNIX correspondente à meia-noite da Páscoa do ano especificado. Se nenhum ano tiver sido especificado, será assumido o ano atual.
  • easter_days — Obtém o número de dias entre 21 de Março e o dia da Páscoa em determinado ano.
  • FrenchToJD — Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".
  • GregorianToJD — Converte uma data gregoriana para o "Julian Day Count"
  • JDDayOfWeek — Retorna o dia da semana
  • JDMonthName — Retorna o nome de um mês
  • JDToFrench — Converte do calendário "Julian Day Count" para o calendário Republicano Francês
  • JDToGregorian — Converte uma data no formato "Julian Day Count" para o formato Gregoriano
  • jdtojewish — Convete uma data do calendário "Julian Day Count" para o calendário Judaico
  • JDToJulian — Converte uma data do calendário "Julian Day Count" para o calendário "Julian"
  • jdtounix — Converte do formato de dada Juliana para Unix timestamp
  • JewishToJD — Converte uma data do calendário Judaico para o calendário "Julian Day Count"
  • JulianToJD — Converte datas no formato "Julian" para o formato "Julian Day Count"
  • unixtojd — Converte datas do sistema Unix para data Juliana
Constantes pré-definidas
cal_days_in_month
Calendário


Retorna o número de dias em um mês de um calendário e ano requisitado

Calendário Funções
cal_from_jd
Calendário Funções
PHP Manual

cal_days_in_month

(PHP 4 >= 4.1.0, PHP 5)

cal_days_in_month — Retorna o número de dias em um mês de um calendário e ano requisitado

Descrição

int cal_days_in_month ( int $calendar , int $month , int $year )

Esta função irá retornar o número de dias em um month do year para o calendar especificado.

Parâmetros

calendar

Calendário para usar no cálculo

month

Mês a ser selecionado no calendário

year

Ano no selecionado calendário

Valor Retornado

A quantidade de dias do selecionado mês no dado calendário

Exemplos

Exemplo #1 Exemplo da cal_days_in_month()

<?php
$num = cal_days_in_month(CAL_GREGORIAN, 8, 2003); // 31
echo "Houve $num dias em Agosto de 2003";
?>

Calendário Funções
cal_from_jd
Calendário Funções


Converte à partir do "Julian Day Count" para um outro calendário suportado

cal_days_in_month
cal_info
Calendário Funções
PHP Manual

cal_from_jd

(PHP 4 >= 4.1.0, PHP 5)

cal_from_jd — Converte à partir do "Julian Day Count" para um outro calendário suportado

Descrição

array cal_from_jd ( int $jd , int $calendário )

cal_from_jd() converte do "Julian Day Count" ( jd) para uma data de um calendário especificado. Os valores dos calendários suportados são CAL_GREGORIAN, CAL_JULIAN, CAL_JEWISH e CAL_FRENCH.

Exemplo #1 cal_from_jd() exemplo

<?php
$hoje = unixtojd(mktime(0, 0, 0, 8, 16, 2003));
print_r(cal_from_jd($hoje, CAL_GREGORIAN));
?>

Este código retorna:

Array
(
    [date] => 8/16/2003
    [month] => 8
    [day] => 16
    [year] => 2003
    [dow] => 6
    [abbrevdayname] => Sat
    [dayname] => Saturday
    [abbrevmonth] => Aug
    [monthname] => August
)

Veja também cal_to_jd().

cal_days_in_month
cal_info
Calendário Funções


Retorna informações sobre um calendário em particular

cal_from_jd
cal_to_jd
Calendário Funções
PHP Manual

cal_info

(PHP 4 >= 4.1.0, PHP 5)

cal_info — Retorna informações sobre um calendário em particular

Descrição

array cal_info ([ int $calendar ] )

cal_info() retorna as informações de um calendar. Os nomes de diferentes calendários que podem ser usados como calendar são os seguintes:

  • 0 ou CAL_GREGORIAN - Gregorian Calendar
  • 1 ou CAL_JULIAN - Julian Calendar
  • 2 ou CAL_JEWISH - Jewish Calendar
  • 3 ou CAL_FRENCH - French Revolutionary Calendar

A informação do calendário especificado é retornada em um array contendo os elementos calname, calsymbol, month, abbrevmonth e maxdaysinmonth.

Se nenhum calendário foi especificado as informações de todos os calendários suportados são retornadas em um array.

Parâmetros

calendar

Calendário a ser retornado informação. Se nenhuma informação de calendário é especificada, todos calendários são retornados.

Valor Retornado

Histórico

Versão | Descrição
Desde o 5.0 | O parâmetro calendar é opcional e o padrão é "todos calendários" se omitido.

Exemplos

Exemplo #1 Exemplo de cal_info()

<?php
$info = cal_info(0);
print_r($info);
?>

O exemplo acima irá imprimir:

Array
(
    [months] => Array
        (
            [1] => January
            [2] => February
            [3] => March
            [4] => April
            [5] => May
            [6] => June
            [7] => July
            [8] => August
            [9] => September
            [10] => October
            [11] => November
            [12] => December
        )

    [abbrevmonths] => Array
        (
            [1] => Jan
            [2] => Feb
            [3] => Mar
            [4] => Apr
            [5] => May
            [6] => Jun
            [7] => Jul
            [8] => Aug
            [9] => Sep
            [10] => Oct
            [11] => Nov
            [12] => Dec
        )

    [maxdaysinmonth] => 31
    [calname] => Gregorian
    [calsymbol] => CAL_GREGORIAN
)

cal_from_jd
cal_to_jd
Calendário Funções


Converte um calendário (suportado) para o calendário "Julian Day Count"

cal_info
easter_date
Calendário Funções
PHP Manual

cal_to_jd

(PHP 4 >= 4.1.0, PHP 5)

cal_to_jd — Converte um calendário (suportado) para o calendário "Julian Day Count"

Descrição

int cal_to_jd ( int $calendar , int $month , int $day , int $year )

cal_to_jd() calcula uma data em formato "Julian Day Count" à partir de um calendar suportado especificado. Os calendar suportados são: CAL_GREGORIAN, CAL_JULIAN, CAL_JEWISH e CAL_FRENCH.

Parâmetros

calendar

Calendário para converter, um dos CAL_GREGORIAN, CAL_JULIAN, CAL_JEWISH ou CAL_FRENCH.

month

O mês como um número, o intervalo válido depende do calendar

day

O dia como um número, o intervalo válido depende do calendar

year

O ano como um número, o intervalo válido depende do calendar

Valor Retornado

Um número de data juliana.

Veja Também

  • cal_from_jd() - Converte à partir do "Julian Day Count" para um outro calendário suportado
  • frenchtojd() - Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".
  • gregoriantojd() - Converte uma data gregoriana para o "Julian Day Count"
  • jewishtojd() - Converte uma data do calendário Judaico para o calendário "Julian Day Count"
  • juliantojd() - Converte datas no formato "Julian" para o formato "Julian Day Count"
  • unixtojd() - Converte datas do sistema Unix para data Juliana

cal_info
easter_date
Calendário Funções


Retorna a data do sistema UNIX correspondente à meia-noite da Páscoa do ano especificado. Se nenhum ano tiver sido especificado, será assumido o ano atual.

cal_to_jd
easter_days
Calendário Funções
PHP Manual

easter_date

(PHP 4, PHP 5)

easter_date — Retorna a data do sistema UNIX correspondente à meia-noite da Páscoa do ano especificado. Se nenhum ano tiver sido especificado, será assumido o ano atual.

Descrição

int easter_date ([ int $ano ] )

Retorna a data do sistema UNIX correspondente à meia-noite da Páscoa do ano especificado. Se nenhum ano tiver sido especificado, será assumido o ano atual.

À partir da versão 4.3.0 PHP, e se omitido o parâmetro ano, o padrão assumido é o ano atual de acordo com a hora local.

Aviso Esta função irá gerar um aviso se o ano está fora do padrão de datas do sistema UNIX (i.e. antes de 1970 ou após 2037).

Exemplo #1 easter_date() exemplo

<?php

echo date ("M-d-Y", easter_date(1999));        // Apr-04-1999
echo date ("M-d-Y", easter_date(2000));        // Apr-23-2000
echo date ("M-d-Y", easter_date(2001));        // Apr-15-2001

?>

A data da Páscoa foi definida pelo Conselho de Nicaea em DC325 como sendo o primeiro domingo após a primeira lua cheia que cai no equinócio da primavera ou depois dele. O equinócio geralmente cai perto do 21º de Março, logo, o cálculo resume-se à determinar a data da lua cheia e a data do seguinte domingo. O algoritmo usado aqui foi feito no ano 532 por Dionysius Exiguus. De acordo com o calendário "Julian" (para anos anterioris à 1753) um simples ciclo de 19-anos é usado para seguir as fases da lua. De acordo com o Calendário Gregoriano (para antes após 1753 - planejado por Clavius e por Lilius, e feito por Pope Gregory XIII em Outubro de 1582, e na Grã Bretanha e suas colônias em Setembro de 1752), duas correções fatoriais foram adicionadas para fazer o ciclo mais exato.

(O código é baseado em um programa feito em C por Simon Kershaw, <webmaster@ely.anglican.org>)

Veja easter_days() para calcular a Páscoa antes de 1970 ou após 2037.

cal_to_jd
easter_days
Calendário Funções


Obtém o número de dias entre 21 de Março e o dia da Páscoa em determinado ano.

easter_date
FrenchToJD
Calendário Funções
PHP Manual

easter_days

(PHP 4, PHP 5)

easter_days — Obtém o número de dias entre 21 de Março e o dia da Páscoa em determinado ano.

Description

int easter_days ([ int $ano [, int $método ]] )

Retorna o número de dias entre 21 de Março e o dia da Páscoa em determinado ano. Se nenhum ano tiver sido especificado, será assumido o ano atual.

À partir da versão 4.3.0 do PHP, o parâmetro ano é opcional e se for omitido o padrão assumido é o ano atual de acrodo com o hora local.

O parâmetro método está disponível à partir da versão 4.3.0 do PHP e perimite calcular as datas da Páscoa baseadas no calendário Gregoriano durante os anos 1582 - 1752 quando a constante CAL_EASTER_ROMAN está ligada. Veja as constantes de calendário para obter outras constantes válidas.

Ao invés de usar a função easter_date(), você pode usar esta função para calcular a Páscoa em anos que estão fora da escala de datas do sistema UNIX (i.e. antes de 1970 ou após 2037).

Exemplo #1 easter_days() exemplo

<?php

echo easter_days (1999);        // 14, i.e. April 4
echo easter_days (1492);        // 32, i.e. April 22
echo easter_days (1913);        //  2, i.e. March 23

?>

A data da Páscoa foi definida pelo Conselho de Nicaea em DC325 como sendo o primeiro domingo após a primeira lua cheia que cai no equinócio da primavera ou depois dele. O equinócio geralmente cai perto do 21º de Março, logo, o cálculo resume-se à determinar a data da lua cheia e a data do seguinte domingo. O algoritmo usado aqui foi feito no ano 532 por Dionysius Exiguus. De acordo com o calendário "Julian" (para anos anterioris à 1753) um simples ciclo de 19-anos é usado para seguir as fases da lua. De acordo com o Calendário Gregoriano (para antes após 1753 - planejado por Clavius e por Lilius, e feito por Pope Gregory XIII em Outubro de 1582, e na Grã Bretanha e suas colônias em Setembro de 1752), duas correções fatoriais foram adicionadas para fazer o ciclo mais exato.

(O código é baseado em um programa feito em C por Simon Kershaw, <webmaster@ely.anglican.org>)

Veja também easter_date().

easter_date
FrenchToJD
Calendário Funções


Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".

easter_days
GregorianToJD
Calendário Funções
PHP Manual

FrenchToJD

(PHP 4, PHP 5)

FrenchToJD — Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".

Descrição

int frenchtojd ( int $mês , int $dia , int $ano )

Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".

Estas rotinas somente converte datas entre os anos de 1 até 14 (datas Gregorianas de 22 de Setembro de 1792 até 22 de Setembro de 1806). "This more than covers the period when the calendar was in use."

easter_days
GregorianToJD
Calendário Funções


Converte uma data gregoriana para o "Julian Day Count"

FrenchToJD
JDDayOfWeek
Calendário Funções
PHP Manual

GregorianToJD

(PHP 4, PHP 5)

GregorianToJD — Converte uma data gregoriana para o "Julian Day Count"

Descrição

int gregoriantojd ( int $month , int $day , int $year )

Escala válida para o Calendário Gregoriano: 4714 A.C. to 9999 D.C.

Entretanto esta função pode trabalhar com todas datas anteriores à, porém usá-la desta maneira não tem muito sentido. O Calendário Gregoriano não foi instituído até 15 de Outubro de 1582 (ou 5 de Outubro de 1582, no calendário JDC ("Julian Day Count")). Alguns países aceitaram este calendário um pouco mais tarde. Por exemplo, a Grã Bretanha converteu-se em 1752, a URSS em 1918 e a Grécia em 1923. A maioria dos países Europeus usaram o calendário "Julian" (JDC) antes do calendário Gregoriano.

Parâmetros

month

O mês como um número entre 1 (para janeiro) e 12 (para dezembro)

day

O dia como um número entre 1 e 31

year

O ano como um número entre -4714 e 9999

Valor Retornado

A data juliana para a dada data gregoriana como um inteiro.

Exemplos

Exemplo #1 Funções de Calendário

<?php
$jd = GregorianToJD (10,11,1970);
echo "$jd\n";
$gregorian = JDToGregorian ($jd);
echo "$gregorian\n";
?>

Veja Também

  • jdtogregorian() - Converte uma data no formato "Julian Day Count" para o formato Gregoriano
  • cal_to_jd() - Converte um calendário (suportado) para o calendário "Julian Day Count"

FrenchToJD
JDDayOfWeek
Calendário Funções


Retorna o dia da semana

GregorianToJD
JDMonthName
Calendário Funções
PHP Manual

JDDayOfWeek

(PHP 4, PHP 5)

JDDayOfWeek — Retorna o dia da semana

Descrição

mixed jddayofweek ( int $julianday [, int $mode ] )

Retorna o dia da semana. Pode retornar uma "string" ou um inteiro dependendo do modo utilizado.

Parâmetros

julianday

Um número de data juliana como inteiro

mode
Calendários da semana (modos)
Modo | Significado
0 (Padrão) | Retorna o dia da semana como sendo um número inteiro (0=domingo, 1=segunda, etc.)
1 | Retorna uma string contendo o dia da semana (Inglês-gregoriano)
2 | Retorna uma "string" contendo a abreviação do dia da semana (Inglês-gregoriano)

Valor Retornado

Um dia da semana gregoriano com um inteiro ou string.

GregorianToJD
JDMonthName
Calendário Funções


Retorna o nome de um mês

JDDayOfWeek
JDToFrench
Calendário Funções
PHP Manual

JDMonthName

(PHP 4, PHP 5)

JDMonthName — Retorna o nome de um mês

Descrição

string jdmonthname ( int $julianday , int $mode )

Retorna uma "string" contendo o nome do mês. O parâmetro mode diz à função qual calendário será convertido para o formato "Julian Day Count", e o tipo do nome do mês.

Calendário (modos)
Modo | Significado | Valores
0 | Gregoriano - abreviado | Jan, Fev, Mar, Abr, Mai, Jun, Jul, Ago, Set, Out, Nov, Dez
1 | Gregoriano | Janeiro, Fevereiro, Março, Abril, Maio, Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro
2 | "Julian" - abreviado | Jan, Fev, Mar, Abr, Mai, Jun, Jul, Ago, Set, Out, Nov, Dez
3 | "Julian" | Janeiro, Fevereiro, Março, Abril, Maio, Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro
4 | Judeu | Tishri, Heshvan, Kislev, Tevet, Shevat, AdarI, AdarII, Nisan, Iyyar, Sivan, Tammuz, Av, Elul
5 | Republicano Francês | Vendemiaire, Brumaire, Frimaire, Nivose, Pluviose, Ventose, Germinal, Floreal, Prairial, Messidor, Thermidor, Fructidor, Extra

Parâmetros

jday

A data juliana

calendar

O calendário para obter o nome do mês

Valor Retornado

O nome do mês para a dada data juliana e calendar.

JDDayOfWeek
JDToFrench
Calendário Funções


Converte do calendário "Julian Day Count" para o calendário Republicano Francês

JDMonthName
JDToGregorian
Calendário Funções
PHP Manual

JDToFrench

(PHP 4, PHP 5)

JDToFrench — Converte do calendário "Julian Day Count" para o calendário Republicano Francês

Descrição

string jdtofrench ( int $juliandaycount )

Converte do calendário "Julian Day Count" para o calendário Republicano Francês

Parâmetros

julianday

Um número de data Juliana como inteiro

Valor Retornado

A data republicana francesa como uma string no formato "mês/dia/ano"

Veja Também

  • frenchtojd() - Converte uma data do calendário Republicano da França para o calendário "Julian Day Count".
  • cal_from_jd() - Converte à partir do "Julian Day Count" para um outro calendário suportado

JDMonthName
JDToGregorian
Calendário Funções


Converte uma data no formato "Julian Day Count" para o formato Gregoriano

JDToFrench
jdtojewish
Calendário Funções
PHP Manual

JDToGregorian

(PHP 4, PHP 5)

JDToGregorian — Converte uma data no formato "Julian Day Count" para o formato Gregoriano

Descrição

string jdtogregorian ( int $julianday )

Converte "Julian Day Count" para uma "string" contendo a data em formato Gregoriano "mês/dia/ano".

Parâmetros

julianday

O número de uma data Juliana como inteiro

Valor Retornado

A data gregoriana no formato "mês/dia/ano"

Veja Também

  • gregoriantojd() - Converte uma data gregoriana para o "Julian Day Count"
  • cal_from_jd() - Converte à partir do "Julian Day Count" para um outro calendário suportado

JDToFrench
jdtojewish
Calendário Funções


Convete uma data do calendário "Julian Day Count" para o calendário Judaico

JDToGregorian
JDToJulian
Calendário Funções
PHP Manual

jdtojewish

(PHP 4, PHP 5)

jdtojewish — Convete uma data do calendário "Julian Day Count" para o calendário Judaico

Descrição

string jdtojewish ( int $juliandaycount [, bool $hebrew [, int $fl ]] )

Convete uma data do calendário "Julian Day Count" para o calendário Judaico

Os parâmetros hebrew e fl são opcionais e estarão disponíveis na versão do PHP 5.0.0

Se o parâmetro hebrew for TRUE, o parâmetro fl a "string" de saída de dados é baseada no formato "hebrew". Os formatos disponíveis são: CAL_JEWISH_ADD_ALAFIM_GERESH, CAL_JEWISH_ADD_ALAFIM, CAL_JEWISH_ADD_GERESHAYIM.

Exemplo #1 jdtojewish() Exemplo

<?php
echo jdtojewish(gregoriantojd(10,8,2002), true,
       CAL_JEWISH_ADD_GERESHAYIM + CAL_JEWISH_ADD_ALAFIM + CAL_JEWISH_ADD_ALAFIM_GERESH);
?>

JDToGregorian
JDToJulian
Calendário Funções


Converte uma data do calendário "Julian Day Count" para o calendário "Julian"

jdtojewish
jdtounix
Calendário Funções
PHP Manual

JDToJulian

(PHP 4, PHP 5)

JDToJulian — Converte uma data do calendário "Julian Day Count" para o calendário "Julian"

Descrição

string jdtojulian ( int $julianday )

Converte "Julian Day Count" para uma "string" contendo a data do calendário "Julian" no formato "mês/dia/ano".

Parâmetros

julianday

O número de uma data Juliana como inteiro

Valor Retornado

A data Juliana como uma string no formato "mês/dia/ano"

Veja Também

  • juliantojd() - Converte datas no formato "Julian" para o formato "Julian Day Count"
  • cal_from_jd() - Converte à partir do "Julian Day Count" para um outro calendário suportado

jdtojewish
jdtounix
Calendário Funções


Converte do formato de dada Juliana para Unix timestamp

JDToJulian
JewishToJD
Calendário Funções
PHP Manual

jdtounix

(PHP 4, PHP 5)

jdtounix — Converte do formato de dada Juliana para Unix timestamp

Descrição

int jdtounix ( int $jday )

Esta função irá retorna a data do sistema Unix correspondente ao "Julian Day" especificado no parâmetro jday ou FALSE se jday não está dentre a escala de datas Unix (Anos Gregorianos entre 1970 e 2037 ou 2440588 <= jday <= 2465342). A hora retornada é a hora local (e não a GMT).

Parâmetros

jday

O número de um data juliana entre 2440588 e 2465342.

Valor Retornado

O unix timestamp para o ínicio da dada data juliana.

Veja Também

  • unixtojd() - Converte datas do sistema Unix para data Juliana

JDToJulian
JewishToJD
Calendário Funções


Converte uma data do calendário Judaico para o calendário "Julian Day Count"

jdtounix
JulianToJD
Calendário Funções
PHP Manual

JewishToJD

(PHP 4, PHP 5)

JewishToJD — Converte uma data do calendário Judaico para o calendário "Julian Day Count"

Descrição

int jewishtojd ( int $month , int $day , int $year )

Entretanto esta função suporta datas anteriores ao ano 1 (3761 A.C.), porém tal uso não faz sentido. O calendário Judaico vem sendo usado por centenas de anos, porém os primeiros dias não tem uma fórmula que determina qual é o começo do mês. Um novo mês começa quando uma lua nova é vista.

Parâmetros

month

O mês como um número entre 1 e 13

day

O dia como um número entre 1 e 30

year

O ano como um número entre 1 e 9999

Valor Retornado

A data juliana para a dada data judaica como um inteiro.

Veja Também

  • jdtojewish() - Convete uma data do calendário "Julian Day Count" para o calendário Judaico
  • cal_to_jd() - Converte um calendário (suportado) para o calendário "Julian Day Count"

jdtounix
JulianToJD
Calendário Funções


Converte datas no formato "Julian" para o formato "Julian Day Count"

JewishToJD
unixtojd
Calendário Funções
PHP Manual

JulianToJD

(PHP 4, PHP 5)

JulianToJD — Converte datas no formato "Julian" para o formato "Julian Day Count"

Descrição

int juliantojd ( int $month , int $day , int $year )

O Calendário "Julian" vai de 4713 A.C. até 9999 D.C.

Entretanto esta função trabalha com datas anteriores à 4713 A.C, porém tal uso não faz muito sentido. O calendário foi criado em 46 A.C., mas os detalhes não foram padronizados até o ano 8 D.C., e talvez mais tarde no 4º século. Além disso, o começo do ano variou de uma cultura para outra - nem todas aceitaram o Janeiro como sendo o primeiro mês.

Cuidado

Lembre-se, o sistema atual de calendário que é usado mundialmente é o Gregoriano. A função gregoriantojd() pode ser usada para converter datas no formato Gregoriano para o formato "Julian Day Count".

Parâmetros

month

O mês como um número entre 1 (para janeiro) a 12 (para dezembro)

day

O dia como um número entre 1 a 31

year

O ano como um número entre -4713 a 9999

Valor Retornado

A data Juliana para a dada data Juliana como um inteiro.

Veja Também

  • jdtojulian() - Converte uma data do calendário "Julian Day Count" para o calendário "Julian"
  • cal_to_jd() - Converte um calendário (suportado) para o calendário "Julian Day Count"

JewishToJD
unixtojd
Calendário Funções


Converte datas do sistema Unix para data Juliana

JulianToJD
Data/Hora
Calendário Funções
PHP Manual

unixtojd

(PHP 4, PHP 5)

unixtojd — Converte datas do sistema Unix para data Juliana

Descrição

int unixtojd ([ int $timestamp ] )

Retorna a data Juliana para um Unix timestamp (segundos desde 1.1.1970), ou para o dia atual se nenhum timestamp for especificado.

Parâmetros

timestamp

Um timestamp para converter.

Valor Retornado

Um número de data Juliana como inteiro.

Veja Também

  • jdtounix() - Converte do formato de dada Juliana para Unix timestamp

JulianToJD
Data/Hora
Calendário Funções


Data e Hora

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Lista de Timezones Suportados
    • Africa
    • America
    • Antarctica
    • Arctic
    • Asia
    • Atlantic
    • Australia
    • Europe
    • Indian
    • Pacific
    • Others
  • Funções de Data/Hora
    • checkdate — Valida uma data Gregoriana
    • date_add — Sinônimo de DateTime::add
    • date_create_from_format — Sinônimo de DateTime::createFromFormat
    • date_create — Retorna um novo objeto DateTime
    • date_date_set — Define a data
    • date_default_timezone_get — Retorna a timezone padrão usada por todas as funções de data e tempo em um script
    • date_default_timezone_set — Configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script
    • date_diff — Sinônimo de DateTime::diff
    • date_format — Retorna a data formatada de acordo com o formato dado
    • date_get_last_errors — Sinônimo de DateTime::getLastErrors
    • date_interval_create_from_date_string — Sinônimo de DateInterval::createFromDateString
    • date_interval_format — Sinônimo de DateInterval::format
    • date_isodate_set — Define a data ISO
    • date_modify — Altera o timestamp
    • date_offset_get — Retorna a diferença (offset) de tempo do horário de verão
    • date_parse_from_format — Get info about given date formatted according to the specified format
    • date_parse — Retorna um array associativo com detalhes sobre uma dada data
    • date_sub — Sinônimo de DateTime::sub
    • date_sun_info — Retorna um array com informações sobre pôr-do-sol/nascer-do-sol e o início/fim do dia
    • date_sunrise — Returns time of sunrise for a given day and location
    • date_sunset — Returns time of sunset for a given day and location
    • date_time_set — Define o tempo
    • date_timestamp_get — Sinônimo de DateTime::getTimestamp
    • date_timestamp_set — Sinônimo de DateTime::setTimestamp
    • date_timezone_get — Sinônimo de DateTime::getTimezone
    • date_timezone_set — Sinônimo de DateTime::setTimezone
    • date — Formata a data e a hora local
    • getdate — Consegue informações data/hora
    • gettimeofday — Obtém a hora local
    • gmdate — Formata uma data/hora GMT/CUT
    • gmmktime — Obtém um timestamp Unix para uma data GMT
    • gmstrftime — Formata uma hora/data GMT/CUT de acordo com as configurações locais
    • idate — Format a local time/date as integer
    • localtime — Obtém a hora local
    • microtime — Retorna um timestamp Unix com microsegundos
    • mktime — Obtém um timestamp Unix para uma data
    • strftime — Formata uma hora/data de acordo com as configurações locais
    • strptime — Parse a time/date generated with strftime
    • strtotime — Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix
    • time — Retorna o timestamp Unix atual
    • timezone_abbreviations_list — Sinônimo de DateTimeZone::listAbbreviations
    • timezone_identifiers_list — Sinônimo de DateTimeZone::listIdentifiers
    • timezone_location_get — Sinônimo de DateTimeZone::getLocation
    • timezone_name_from_abbr — Returns the timezone name from abbreviation
    • timezone_name_get — Sinônimo de DateTimeZone::getName
    • timezone_offset_get — Sinônimo de DateTimeZone::getOffset
    • timezone_open — Retorna um novo objeto DateTimeZone
    • timezone_transitions_get — Sinônimo de DateTimeZone::getTransitions
    • timezone_version_get — Gets the version of the timezonedb
unixtojd
Introdução
Extensões Relacionadas a Calendário e Evento


Introdução

Estas funções te permitem conseguir a data e a hora do servidor onde o PHP está rodando. Você pode usar estas funções para formatar a saída de data e hora de muitas maneiras diferentes.

Nota: Por favor mantenha em mente que estas funções dependem das configurações locais do servidor. Considerar especialmente horário-de-verão (use e.g. $date = strtotime('+7 days', $date) e não $date += 7*24*60*60) e anos bissextos quando trabalhar com estas funções.

Nota: Os timezones referenciados nesta seção podem ser encontrados em Lista de Timezones Suportados.

Data/Hora
Instalação/Configuração
Data/Hora


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Data/Hora


Instalação

Não há nenhuma instalação necessária para utilizar estas funções, elas fazem parte do núcleo do PHP.

Nota: Getting the latest timezone database

The latest version of the timezone database can be installed via PECL's » timezonedb.

Nota: Experimental DateTime support in PHP 5.1.x

Although the DateTime class (and related functions) are enabled by default since PHP 5.2.0, it is possible to add experimental support into PHP 5.1.x by using the following flag before configure/compile: CFLAGS=-DEXPERIMENTAL_DATE_SUPPORT=1

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração de Data/Hora
Nome | Valor Padrão | Alterável | Changelog
date.default_latitude | "31.7667" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.default_longitude | "35.2333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.sunrise_zenith | "90.583333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.sunset_zenith | "90.583333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.timezone | "" | PHP_INI_ALL | Disponível desde o PHP 5.1.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

date.default_latitude float

A latitude padrão.

date.default_longitude float

A longitude padrão.

date.sunrise_zenith float

O zenith do nascer do sol padrão.

date.sunset_zenith float

O zenith do pôr-do-sol padrão.

date.timezone string

A zona horária padrão usada por todas as funções de data/hora se a variável de ambiente TZ não existir. A ordem de precedência é descrita na página da função date_default_timezone_get(). Veja Lista de Timezones Suportados para uma lista de zonas horárias suportadas.

Nota: As primeiras quatro opções de configuração são usadas atualmente por date_sunrise() e date_sunset().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As seguintes constantes são definidas desde o PHP 5.1.1 e oferecem representações padrão de datas, que podem ser usadas com funções de formatação de datas (como date()).

DATE_ATOM (string)
Atom (exemplo: 2005-08-15T15:52:01+00:00)
DATE_COOKIE (string)
HTTP Cookies (exemplo: Monday, 15-Aug-05 15:52:01 UTC)
DATE_ISO8601 (string)
ISO-8601 (exemplo: 2005-08-15T15:52:01+0000)
DATE_RFC822 (string)
RFC 822 (exemplo: Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC850 (string)
RFC 850 (exemplo: Monday, 15-Aug-05 15:52:01 UTC)
DATE_RFC1036 (string)
RFC 1036 (exemplo: Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC1123 (string)
RFC 1123 (exemplo: Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC2822 (string)
RFC 2822 (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC3339 (string)
O mesmo que DATE_ATOM (desde o PHP 5.1.3)
DATE_RSS (string)
RSS (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_W3C (string)
World Wide Web Consortium (exemplo: 2005-08-15T15:52:01+00:00)

As seguintes constantes existem desde o PHP 5.1.2 e especificam o formato retornado pelas funções date_sunrise() e date_sunset().

SUNFUNCS_RET_TIMESTAMP (integer)
Timestamp
SUNFUNCS_RET_STRING (integer)
Hours:minutes (example: 08:02)
SUNFUNCS_RET_DOUBLE (integer)
Horas como número de ponto flutuante (exemplo: 8.75)
Tipos Resource
Lista de Timezones Suportados
Data/Hora


Lista de Timezones Suportados

Índice

  • Africa
  • America
  • Antarctica
  • Arctic
  • Asia
  • Atlantic
  • Australia
  • Europe
  • Indian
  • Pacific
  • Others

Aqui você encontrará a lista completa de timezones suportados pelo PHP, os quais podem ser usados com e.g. date_default_timezone_set().

Nota: A mais recente versão do banco de dados de timezone pode ser instalada via » timezonedb do PECL.

Nota: This list is based upon the timezone database version 2011.5.

Constantes pré-definidas
Africa
Data/Hora


Africa

Africa
Africa/Abidjan | Africa/Accra | Africa/Addis_Ababa | Africa/Algiers | Africa/Asmara
Africa/Asmera | Africa/Bamako | Africa/Bangui | Africa/Banjul | Africa/Bissau
Africa/Blantyre | Africa/Brazzaville | Africa/Bujumbura | Africa/Cairo | Africa/Casablanca
Africa/Ceuta | Africa/Conakry | Africa/Dakar | Africa/Dar_es_Salaam | Africa/Djibouti
Africa/Douala | Africa/El_Aaiun | Africa/Freetown | Africa/Gaborone | Africa/Harare
Africa/Johannesburg | Africa/Kampala | Africa/Khartoum | Africa/Kigali | Africa/Kinshasa
Africa/Lagos | Africa/Libreville | Africa/Lome | Africa/Luanda | Africa/Lubumbashi
Africa/Lusaka | Africa/Malabo | Africa/Maputo | Africa/Maseru | Africa/Mbabane
Africa/Mogadishu | Africa/Monrovia | Africa/Nairobi | Africa/Ndjamena | Africa/Niamey
Africa/Nouakchott | Africa/Ouagadougou | Africa/Porto-Novo | Africa/Sao_Tome | Africa/Timbuktu
Africa/Tripoli | Africa/Tunis | Africa/Windhoek |  |
Lista de Timezones Suportados
America
Lista de Timezones Suportados


America

America
America/Adak | America/Anchorage | America/Anguilla | America/Antigua | America/Araguaina
America/Argentina/Buenos_Aires | America/Argentina/Catamarca | America/Argentina/ComodRivadavia | America/Argentina/Cordoba | America/Argentina/Jujuy
America/Argentina/La_Rioja | America/Argentina/Mendoza | America/Argentina/Rio_Gallegos | America/Argentina/Salta | America/Argentina/San_Juan
America/Argentina/San_Luis | America/Argentina/Tucuman | America/Argentina/Ushuaia | America/Aruba | America/Asuncion
America/Atikokan | America/Atka | America/Bahia | America/Bahia_Banderas | America/Barbados
America/Belem | America/Belize | America/Blanc-Sablon | America/Boa_Vista | America/Bogota
America/Boise | America/Buenos_Aires | America/Cambridge_Bay | America/Campo_Grande | America/Cancun
America/Caracas | America/Catamarca | America/Cayenne | America/Cayman | America/Chicago
America/Chihuahua | America/Coral_Harbour | America/Cordoba | America/Costa_Rica | America/Cuiaba
America/Curacao | America/Danmarkshavn | America/Dawson | America/Dawson_Creek | America/Denver
America/Detroit | America/Dominica | America/Edmonton | America/Eirunepe | America/El_Salvador
America/Ensenada | America/Fort_Wayne | America/Fortaleza | America/Glace_Bay | America/Godthab
America/Goose_Bay | America/Grand_Turk | America/Grenada | America/Guadeloupe | America/Guatemala
America/Guayaquil | America/Guyana | America/Halifax | America/Havana | America/Hermosillo
America/Indiana/Indianapolis | America/Indiana/Knox | America/Indiana/Marengo | America/Indiana/Petersburg | America/Indiana/Tell_City
America/Indiana/Vevay | America/Indiana/Vincennes | America/Indiana/Winamac | America/Indianapolis | America/Inuvik
America/Iqaluit | America/Jamaica | America/Jujuy | America/Juneau | America/Kentucky/Louisville
America/Kentucky/Monticello | America/Knox_IN | America/La_Paz | America/Lima | America/Los_Angeles
America/Louisville | America/Maceio | America/Managua | America/Manaus | America/Marigot
America/Martinique | America/Matamoros | America/Mazatlan | America/Mendoza | America/Menominee
America/Merida | America/Metlakatla | America/Mexico_City | America/Miquelon | America/Moncton
America/Monterrey | America/Montevideo | America/Montreal | America/Montserrat | America/Nassau
America/New_York | America/Nipigon | America/Nome | America/Noronha | America/North_Dakota/Beulah
America/North_Dakota/Center | America/North_Dakota/New_Salem | America/Ojinaga | America/Panama | America/Pangnirtung
America/Paramaribo | America/Phoenix | America/Port-au-Prince | America/Port_of_Spain | America/Porto_Acre
America/Porto_Velho | America/Puerto_Rico | America/Rainy_River | America/Rankin_Inlet | America/Recife
America/Regina | America/Resolute | America/Rio_Branco | America/Rosario | America/Santa_Isabel
America/Santarem | America/Santiago | America/Santo_Domingo | America/Sao_Paulo | America/Scoresbysund
America/Shiprock | America/Sitka | America/St_Barthelemy | America/St_Johns | America/St_Kitts
America/St_Lucia | America/St_Thomas | America/St_Vincent | America/Swift_Current | America/Tegucigalpa
America/Thule | America/Thunder_Bay | America/Tijuana | America/Toronto | America/Tortola
America/Vancouver | America/Virgin | America/Whitehorse | America/Winnipeg | America/Yakutat
America/Yellowknife |  |  |  |
Africa
Antarctica
Lista de Timezones Suportados


Antarctica

Antarctica
Antarctica/Casey | Antarctica/Davis | Antarctica/DumontDUrville | Antarctica/Macquarie | Antarctica/Mawson
Antarctica/McMurdo | Antarctica/Palmer | Antarctica/Rothera | Antarctica/South_Pole | Antarctica/Syowa
Antarctica/Vostok |  |  |  |
America
Arctic
Lista de Timezones Suportados


Arctic

Arctic
Arctic/Longyearbyen
Antarctica
Asia
Lista de Timezones Suportados


Asia

Asia
Asia/Aden | Asia/Almaty | Asia/Amman | Asia/Anadyr | Asia/Aqtau
Asia/Aqtobe | Asia/Ashgabat | Asia/Ashkhabad | Asia/Baghdad | Asia/Bahrain
Asia/Baku | Asia/Bangkok | Asia/Beirut | Asia/Bishkek | Asia/Brunei
Asia/Calcutta | Asia/Choibalsan | Asia/Chongqing | Asia/Chungking | Asia/Colombo
Asia/Dacca | Asia/Damascus | Asia/Dhaka | Asia/Dili | Asia/Dubai
Asia/Dushanbe | Asia/Gaza | Asia/Harbin | Asia/Ho_Chi_Minh | Asia/Hong_Kong
Asia/Hovd | Asia/Irkutsk | Asia/Istanbul | Asia/Jakarta | Asia/Jayapura
Asia/Jerusalem | Asia/Kabul | Asia/Kamchatka | Asia/Karachi | Asia/Kashgar
Asia/Kathmandu | Asia/Katmandu | Asia/Kolkata | Asia/Krasnoyarsk | Asia/Kuala_Lumpur
Asia/Kuching | Asia/Kuwait | Asia/Macao | Asia/Macau | Asia/Magadan
Asia/Makassar | Asia/Manila | Asia/Muscat | Asia/Nicosia | Asia/Novokuznetsk
Asia/Novosibirsk | Asia/Omsk | Asia/Oral | Asia/Phnom_Penh | Asia/Pontianak
Asia/Pyongyang | Asia/Qatar | Asia/Qyzylorda | Asia/Rangoon | Asia/Riyadh
Asia/Saigon | Asia/Sakhalin | Asia/Samarkand | Asia/Seoul | Asia/Shanghai
Asia/Singapore | Asia/Taipei | Asia/Tashkent | Asia/Tbilisi | Asia/Tehran
Asia/Tel_Aviv | Asia/Thimbu | Asia/Thimphu | Asia/Tokyo | Asia/Ujung_Pandang
Asia/Ulaanbaatar | Asia/Ulan_Bator | Asia/Urumqi | Asia/Vientiane | Asia/Vladivostok
Asia/Yakutsk | Asia/Yekaterinburg | Asia/Yerevan |  |
Arctic
Atlantic
Lista de Timezones Suportados


Atlantic

Atlantic
Atlantic/Azores | Atlantic/Bermuda | Atlantic/Canary | Atlantic/Cape_Verde | Atlantic/Faeroe
Atlantic/Faroe | Atlantic/Jan_Mayen | Atlantic/Madeira | Atlantic/Reykjavik | Atlantic/South_Georgia
Atlantic/St_Helena | Atlantic/Stanley |  |  |
Asia
Australia
Lista de Timezones Suportados


Australia

Australia
Australia/ACT | Australia/Adelaide | Australia/Brisbane | Australia/Broken_Hill | Australia/Canberra
Australia/Currie | Australia/Darwin | Australia/Eucla | Australia/Hobart | Australia/LHI
Australia/Lindeman | Australia/Lord_Howe | Australia/Melbourne | Australia/North | Australia/NSW
Australia/Perth | Australia/Queensland | Australia/South | Australia/Sydney | Australia/Tasmania
Australia/Victoria | Australia/West | Australia/Yancowinna |  |
Atlantic
Europe
Lista de Timezones Suportados


Europe

Europe
Europe/Amsterdam | Europe/Andorra | Europe/Athens | Europe/Belfast | Europe/Belgrade
Europe/Berlin | Europe/Bratislava | Europe/Brussels | Europe/Bucharest | Europe/Budapest
Europe/Chisinau | Europe/Copenhagen | Europe/Dublin | Europe/Gibraltar | Europe/Guernsey
Europe/Helsinki | Europe/Isle_of_Man | Europe/Istanbul | Europe/Jersey | Europe/Kaliningrad
Europe/Kiev | Europe/Lisbon | Europe/Ljubljana | Europe/London | Europe/Luxembourg
Europe/Madrid | Europe/Malta | Europe/Mariehamn | Europe/Minsk | Europe/Monaco
Europe/Moscow | Europe/Nicosia | Europe/Oslo | Europe/Paris | Europe/Podgorica
Europe/Prague | Europe/Riga | Europe/Rome | Europe/Samara | Europe/San_Marino
Europe/Sarajevo | Europe/Simferopol | Europe/Skopje | Europe/Sofia | Europe/Stockholm
Europe/Tallinn | Europe/Tirane | Europe/Tiraspol | Europe/Uzhgorod | Europe/Vaduz
Europe/Vatican | Europe/Vienna | Europe/Vilnius | Europe/Volgograd | Europe/Warsaw
Europe/Zagreb | Europe/Zaporozhye | Europe/Zurich |  |
Australia
Indian
Lista de Timezones Suportados


Indian

Indian
Indian/Antananarivo | Indian/Chagos | Indian/Christmas | Indian/Cocos | Indian/Comoro
Indian/Kerguelen | Indian/Mahe | Indian/Maldives | Indian/Mauritius | Indian/Mayotte
Indian/Reunion |  |  |  |
Europe
Pacific
Lista de Timezones Suportados


Pacific

Pacific
Pacific/Apia | Pacific/Auckland | Pacific/Chatham | Pacific/Chuuk | Pacific/Easter
Pacific/Efate | Pacific/Enderbury | Pacific/Fakaofo | Pacific/Fiji | Pacific/Funafuti
Pacific/Galapagos | Pacific/Gambier | Pacific/Guadalcanal | Pacific/Guam | Pacific/Honolulu
Pacific/Johnston | Pacific/Kiritimati | Pacific/Kosrae | Pacific/Kwajalein | Pacific/Majuro
Pacific/Marquesas | Pacific/Midway | Pacific/Nauru | Pacific/Niue | Pacific/Norfolk
Pacific/Noumea | Pacific/Pago_Pago | Pacific/Palau | Pacific/Pitcairn | Pacific/Pohnpei
Pacific/Ponape | Pacific/Port_Moresby | Pacific/Rarotonga | Pacific/Saipan | Pacific/Samoa
Pacific/Tahiti | Pacific/Tarawa | Pacific/Tongatapu | Pacific/Truk | Pacific/Wake
Pacific/Wallis | Pacific/Yap |  |  |
Indian
Others
Lista de Timezones Suportados


Others

Others
Brazil/Acre | Brazil/DeNoronha | Brazil/East | Brazil/West | Canada/Atlantic
Canada/Central | Canada/East-Saskatchewan | Canada/Eastern | Canada/Mountain | Canada/Newfoundland
Canada/Pacific | Canada/Saskatchewan | Canada/Yukon | CET | Chile/Continental
Chile/EasterIsland | CST6CDT | Cuba | EET | Egypt
Eire | EST | EST5EDT | Etc/GMT | Etc/GMT+0
Etc/GMT+1 | Etc/GMT+10 | Etc/GMT+11 | Etc/GMT+12 | Etc/GMT+2
Etc/GMT+3 | Etc/GMT+4 | Etc/GMT+5 | Etc/GMT+6 | Etc/GMT+7
Etc/GMT+8 | Etc/GMT+9 | Etc/GMT-0 | Etc/GMT-1 | Etc/GMT-10
Etc/GMT-11 | Etc/GMT-12 | Etc/GMT-13 | Etc/GMT-14 | Etc/GMT-2
Etc/GMT-3 | Etc/GMT-4 | Etc/GMT-5 | Etc/GMT-6 | Etc/GMT-7
Etc/GMT-8 | Etc/GMT-9 | Etc/GMT0 | Etc/Greenwich | Etc/UCT
Etc/Universal | Etc/UTC | Etc/Zulu | Factory | GB
GB-Eire | GMT | GMT+0 | GMT-0 | GMT0
Greenwich | Hongkong | HST | Iceland | Iran
Israel | Jamaica | Japan | Kwajalein | Libya
MET | Mexico/BajaNorte | Mexico/BajaSur | Mexico/General | MST
MST7MDT | Navajo | NZ | NZ-CHAT | Poland
Portugal | PRC | PST8PDT | ROC | ROK
Singapore | Turkey | UCT | Universal | US/Alaska
US/Aleutian | US/Arizona | US/Central | US/East-Indiana | US/Eastern
US/Hawaii | US/Indiana-Starke | US/Michigan | US/Mountain | US/Pacific
US/Pacific-New | US/Samoa | UTC | W-SU | WET
Zulu |  |  |  |
Aviso

Por favor não use nenhuma das zonas de horario listadas aqui (alem de UTC), elas só existem por motivo de compatibilidade com versões anteriores.

Pacific
Funções de Data/Hora
Lista de Timezones Suportados


Funções de Data/Hora

Índice

  • checkdate — Valida uma data Gregoriana
  • date_add — Sinônimo de DateTime::add
  • date_create_from_format — Sinônimo de DateTime::createFromFormat
  • date_create — Retorna um novo objeto DateTime
  • date_date_set — Define a data
  • date_default_timezone_get — Retorna a timezone padrão usada por todas as funções de data e tempo em um script
  • date_default_timezone_set — Configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script
  • date_diff — Sinônimo de DateTime::diff
  • date_format — Retorna a data formatada de acordo com o formato dado
  • date_get_last_errors — Sinônimo de DateTime::getLastErrors
  • date_interval_create_from_date_string — Sinônimo de DateInterval::createFromDateString
  • date_interval_format — Sinônimo de DateInterval::format
  • date_isodate_set — Define a data ISO
  • date_modify — Altera o timestamp
  • date_offset_get — Retorna a diferença (offset) de tempo do horário de verão
  • date_parse_from_format — Get info about given date formatted according to the specified format
  • date_parse — Retorna um array associativo com detalhes sobre uma dada data
  • date_sub — Sinônimo de DateTime::sub
  • date_sun_info — Retorna um array com informações sobre pôr-do-sol/nascer-do-sol e o início/fim do dia
  • date_sunrise — Returns time of sunrise for a given day and location
  • date_sunset — Returns time of sunset for a given day and location
  • date_time_set — Define o tempo
  • date_timestamp_get — Sinônimo de DateTime::getTimestamp
  • date_timestamp_set — Sinônimo de DateTime::setTimestamp
  • date_timezone_get — Sinônimo de DateTime::getTimezone
  • date_timezone_set — Sinônimo de DateTime::setTimezone
  • date — Formata a data e a hora local
  • getdate — Consegue informações data/hora
  • gettimeofday — Obtém a hora local
  • gmdate — Formata uma data/hora GMT/CUT
  • gmmktime — Obtém um timestamp Unix para uma data GMT
  • gmstrftime — Formata uma hora/data GMT/CUT de acordo com as configurações locais
  • idate — Format a local time/date as integer
  • localtime — Obtém a hora local
  • microtime — Retorna um timestamp Unix com microsegundos
  • mktime — Obtém um timestamp Unix para uma data
  • strftime — Formata uma hora/data de acordo com as configurações locais
  • strptime — Parse a time/date generated with strftime
  • strtotime — Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix
  • time — Retorna o timestamp Unix atual
  • timezone_abbreviations_list — Sinônimo de DateTimeZone::listAbbreviations
  • timezone_identifiers_list — Sinônimo de DateTimeZone::listIdentifiers
  • timezone_location_get — Sinônimo de DateTimeZone::getLocation
  • timezone_name_from_abbr — Returns the timezone name from abbreviation
  • timezone_name_get — Sinônimo de DateTimeZone::getName
  • timezone_offset_get — Sinônimo de DateTimeZone::getOffset
  • timezone_open — Retorna um novo objeto DateTimeZone
  • timezone_transitions_get — Sinônimo de DateTimeZone::getTransitions
  • timezone_version_get — Gets the version of the timezonedb
Others
checkdate
Data/Hora


Valida uma data Gregoriana

Funções de Data/Hora
date_add
Funções de Data/Hora
PHP Manual

checkdate

(PHP 4, PHP 5)

checkdate — Valida uma data Gregoriana

Descrição

bool checkdate ( int $month , int $day , int $year )

Checa a validade da data formada pelos argumentos. Uma data é considerada válida se cada parâmetro é adequadamente definida.

Parâmetros

month

O mês entre 1 e 12.

day

O dia está dentro do número permitido de dias para um month. Anos bissexto são levados em consideração.

year

The year is between 1 and 32767 inclusive.

Valor Retornado

Retorna TRUE se a dada data é valida; caso contrário retorna FALSE.

Exemplos

Exemplo #1 Exemplo da checkdate()

<?php
 var_dump(checkdate(12, 31, 2000));
 var_dump(checkdate(2, 29, 2001));
 ?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

Veja Também

  • mktime() - Obtém um timestamp Unix para uma data
  • strtotime() - Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

Funções de Data/Hora
date_add
Funções de Data/Hora


Sinônimo de DateTime::add

checkdate
date_create_from_format
Funções de Data/Hora
PHP Manual

date_add

(PHP 5 >= 5.3.0)

date_add — Sinônimo de DateTime::add()

Descrição

Esta função é um apelido para: DateTime::add()

checkdate
date_create_from_format
Funções de Data/Hora


Sinônimo de DateTime::createFromFormat

date_add
date_create
Funções de Data/Hora
PHP Manual

date_create_from_format

(PHP 5 >= 5.3.0)

date_create_from_format — Sinônimo de DateTime::createFromFormat()

Descrição

Esta função é um apelido para: DateTime::createFromFormat()

date_add
date_create
Funções de Data/Hora


Retorna um novo objeto DateTime

date_create_from_format
date_date_set
Funções de Data/Hora
PHP Manual

date_create

(PHP 5 >= 5.2.0)

date_create — Retorna um novo objeto DateTime

Descrição

DateTime date_create ([ string $time [, DateTimeZone $timezone ]] )
DateTime DateTime::__construct ([ string $time [, DateTimeZone $timezone ]] )

Parâmetros

time

String no formato aceito pela strtotime(), o padrão é "now".

timezone

Time zone do tempo.

Valor Retornado

Retorna um objeto DateTime em sucesso ou FALSE em falha.

date_create_from_format
date_date_set
Funções de Data/Hora


Define a data

date_create
date_default_timezone_get
Funções de Data/Hora
PHP Manual

date_date_set

(PHP 5 >= 5.2.0)

date_date_set — Define a data

Descrição

void date_date_set ( DateTime $object , int $year , int $month , int $day )
void DateTime::setDate ( int $year , int $month , int $day )

Parâmetros

object

Objeto DateTime.

year

Ano da data.

month

Mês da data.

day

Dia da data.

Valor Retornado

Retorna NULL em caso de sucesso ou FALSE em falha.

Veja Também

  • date_isodate_set() - Define a data ISO
  • date_time_set() - Define o tempo

date_create
date_default_timezone_get
Funções de Data/Hora


Retorna a timezone padrão usada por todas as funções de data e tempo em um script

date_date_set
date_default_timezone_set
Funções de Data/Hora
PHP Manual

date_default_timezone_get

(PHP 5 >= 5.1.0)

date_default_timezone_get — Retorna a timezone padrão usada por todas as funções de data e tempo em um script

Descrição

string date_default_timezone_get ( void )

Em ordem de preferência, essa função retorna a timezone padrão por:

  • Lendo a timezone configurada utilizando a função date_default_timezone_set() (se configurada)

  • A variável de ambiente TZ (se não estiver vazia)

  • Lendo o valor de date.timezone do ini (se configurada)

  • Perguntando para o sistema operacional (se permitido e suportado pelo seu sistema operacional)

  • Se nenhuma das opções acima tiverem sucesso, a função date_default_timezone_get() retornará a timezone padrão UTC

Valor Retornado

Retorna uma string.

Exemplos

Exemplo #1 Lendo a timezone padrão

<?php
date_default_timezone_set('Europe/London');

if (date_default_timezone_get()) {
    echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}

if (ini_get('date.timezone')) {
    echo 'date.timezone: ' . ini_get('date.timezone');
}

?>

O exemplo acima irá imprimir algo similar a:

date_default_timezone_set: Europe/London
date.timezone: Europe/London

Exemplo #2 Lendo a abreviação de uma timezone

<?php
date_default_timezone_set('America/Los_Angeles');
echo date_default_timezone_get() . ' => ' . date('e') . ' => ' . date('T');
?>

O exemplo acima irá imprimir:

America/Los_Angeles => America/Los_Angeles => PST

Veja Também

  • date_default_timezone_set() - Configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script

date_date_set
date_default_timezone_set
Funções de Data/Hora


Configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script

date_default_timezone_get
date_diff
Funções de Data/Hora
PHP Manual

date_default_timezone_set

(PHP 5 >= 5.1.0)

date_default_timezone_set — Configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script

Descrição

bool date_default_timezone_set ( string $timezone_identifier )

date_default_timezone_set() configura a timezone padrão a ser utilizada por todas as funções de data e hora em um script

Nota:

Desde o PHP5.1.0 (quando as funções de data e tempo foram reescritas), toda chamada a esse tipo de função irá gerar um E_NOTICE se a timezone não é válida, e/ou uma mensagem E_STRICT se estiver utilizando as configurações do sistema ou a variável de ambiente TZ.

Ao invés de utilizar essa função para setar a timezone padrão no seu script, você pode também utilizar a configuração INI date.timezone para configurar a timezone padrão.

Parâmetros

timezone_identifier

O identificador da timezone, como UTC ou Europe/Lisbon. A lista de identificadores válidos está disponível em Lista de Timezones Suportados.

Valor Retornado

A função retorna FALSE se o timezone_identifier não é válido, ou TRUE caso contrário.

Exemplos

Exemplo #1 Lendo a timezone padrão

<?php
date_default_timezone_set('America/Los_Angeles');

$script_tz = date_default_timezone_get();

if (strcmp($script_tz, ini_get('date.timezone'))){
    echo 'Script timezone differs from ini-set timezone.';
} else {
    echo 'Script timezone and ini-set timezone match.';
}
?>

Histórico

Versão | Descrição
5.1.2 | A função passou a validar o parâmetro timezone_identifier.

Veja Também

  • date_default_timezone_get() - Retorna a timezone padrão usada por todas as funções de data e tempo em um script

date_default_timezone_get
date_diff
Funções de Data/Hora


Sinônimo de DateTime::diff

date_default_timezone_set
date_format
Funções de Data/Hora
PHP Manual

date_diff

(PHP 5 >= 5.3.0)

date_diff — Sinônimo de DateTime::diff()

Descrição

Esta função é um apelido para: DateTime::diff()

date_default_timezone_set
date_format
Funções de Data/Hora


Retorna a data formatada de acordo com o formato dado

date_diff
date_get_last_errors
Funções de Data/Hora
PHP Manual

date_format

(PHP 5 >= 5.2.0)

date_format — Retorna a data formatada de acordo com o formato dado

Descrição

string date_format ( DateTime $object , string $format )
string DateTime::format ( string $format )

Parâmetros

object

Objeto DateTime.

format

Formato aceito pela função date().

Valor Retornado

Retorna a data formatada em caso de sucesso ou FALSE em falha.

Veja Também

  • date() - Formata a data e a hora local

date_diff
date_get_last_errors
Funções de Data/Hora


Sinônimo de DateTime::getLastErrors

date_format
date_interval_create_from_date_string
Funções de Data/Hora
PHP Manual

date_get_last_errors

(PHP 5 >= 5.3.0)

date_get_last_errors — Sinônimo de DateTime::getLastErrors()

Descrição

Esta função é um apelido para: DateTime::getLastErrors()

date_format
date_interval_create_from_date_string
Funções de Data/Hora


Sinônimo de DateInterval::createFromDateString

date_get_last_errors
date_interval_format
Funções de Data/Hora
PHP Manual

date_interval_create_from_date_string

(PHP 5 >= 5.3.0)

date_interval_create_from_date_string — Sinônimo de DateInterval::createFromDateString()

Descrição

Esta função é um apelido para: DateInterval::createFromDateString()

date_get_last_errors
date_interval_format
Funções de Data/Hora


Sinônimo de DateInterval::format

date_interval_create_from_date_string
date_isodate_set
Funções de Data/Hora
PHP Manual

date_interval_format

(PHP 5 >= 5.3.0)

date_interval_format — Sinônimo de DateInterval::format()

Descrição

Esta função é um apelido para: DateInterval::format()

date_interval_create_from_date_string
date_isodate_set
Funções de Data/Hora


Define a data ISO

date_interval_format
date_modify
Funções de Data/Hora
PHP Manual

date_isodate_set

(PHP 5 >= 5.2.0)

date_isodate_set — Define a data ISO

Descrição

void date_isodate_set ( DateTime $object , int $year , int $week [, int $day ] )
void DateTime::setISODate ( int $year , int $week [, int $day ] )

Parâmetros

object

Objeto DateTime.

year

Ano da data.

week

Semana da data.

day

Dia da data.

Valor Retornado

Retorna NULL em caso de sucesso ou FALSE em falha.

Veja Também

  • date_date_set() - Define a data

date_interval_format
date_modify
Funções de Data/Hora


Altera o timestamp

date_isodate_set
date_offset_get
Funções de Data/Hora
PHP Manual

date_modify

(PHP 5 >= 5.2.0)

date_modify — Altera o timestamp

Descrição

void date_modify ( DateTime $object , string $modify )
void DateTime::modify ( string $modify )

Parâmetros

object

Objeto DateTime.

modify

String no formato aceito pela strtotime().

Valor Retornado

Retorna NULL em caso de sucesso ou FALSE em falha.

Exemplos

Exemplo #1 Um exemplo da date_modify()

<?php
$date = new DateTime("2006-12-12");
$date->modify("+1 day");
echo $date->format("Y-m-d");
?>

O exemplo acima irá imprimir:

2006-12-13

Veja Também

  • strtotime() - Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

date_isodate_set
date_offset_get
Funções de Data/Hora


Retorna a diferença (offset) de tempo do horário de verão

date_modify
date_parse_from_format
Funções de Data/Hora
PHP Manual

date_offset_get

(PHP 5 >= 5.2.0)

date_offset_get — Retorna a diferença (offset) de tempo do horário de verão

Descrição

int date_offset_get ( DateTime $object )
int DateTime::getOffset ( void )

Parâmetros

object

Estilo procedural somente: Um objeto DateTime retornado pela date_create()

Valor Retornado

Retorna a diferença (offset) em segundos ou FALSE em caso de falha.

Exemplos

Exemplo #1 Comparando a diferença entre Verão e Inverno

<?php
date_default_timezone_set('Europe/London');

$inverno = new DateTime('2008-12-25 14:25:41');
$verao   = new DateTime('2008-07-14 14:25:41');

echo $inverno->getOffset(); // Diferença do inverno: 0
echo $verao->getOffset(); // Diferença do verão: 3600 = 1 hora
?>

date_modify
date_parse_from_format
Funções de Data/Hora


Get info about given date formatted according to the specified format

date_offset_get
date_parse
Funções de Data/Hora
PHP Manual

date_parse_from_format

(PHP 5 >= 5.3.0)

date_parse_from_format — Get info about given date formatted according to the specified format

Descrição

array date_parse_from_format ( string $format , string $date )

Returns associative array with detailed info about given date.

Parâmetros

format

Format accepted by DateTime::createFromFormat().

date

String representing the date.

Valor Retornado

Returns associative array with detailed info about given date.

Exemplos

Exemplo #1 date_parse_from_format() example

<?php
$date = "6.1.2009 13:00+01:00";
print_r(date_parse_from_format("j.n.Y H:iP", $date));
?>

O exemplo acima irá imprimir:

Array
(
    [year] => 2009
    [month] => 1
    [day] => 6
    [hour] => 13
    [minute] => 0
    [second] => 0
    [fraction] =>
    [warning_count] => 0
    [warnings] => Array
        (
        )

    [error_count] => 0
    [errors] => Array
        (
        )

    [is_localtime] => 1
    [zone_type] => 1
    [zone] => -60
    [is_dst] =>
)

Veja Também

  • DateTime::createFromFormat()
  • checkdate() - Valida uma data Gregoriana

date_offset_get
date_parse
Funções de Data/Hora


Retorna um array associativo com detalhes sobre uma dada data

date_parse_from_format
date_sub
Funções de Data/Hora
PHP Manual

date_parse

(PHP 5 >= 5.2.0)

date_parse — Retorna um array associativo com detalhes sobre uma dada data

Descrição

array date_parse ( string $date )

Parâmetros

date

Data no formato aceito pela strtotime().

Valor Retornado

Retorna um array com informação sobre a data analisada em sucesso, ou FALSE em falha.

Erros

No caso do formato da data conter erro, o elemento 'erros' conterá as mensagens de erro.

Exemplos

Exemplo #1 Um exemplo da date_parse()

<?php
print_r(date_parse("2006-12-12 10:00:00.5"));
?>

O exemplo acima irá imprimir:

Array
(
    [year] => 2006
    [month] => 12
    [day] => 12
    [hour] => 10
    [minute] => 0
    [second] => 0
    [fraction] => 0.5
    [warning_count] => 0
    [warnings] => Array()
    [error_count] => 0
    [errors] => Array()
    [is_localtime] =>
)

Veja Também

  • getdate() - Consegue informações data/hora

date_parse_from_format
date_sub
Funções de Data/Hora


Sinônimo de DateTime::sub

date_parse
date_sun_info
Funções de Data/Hora
PHP Manual

date_sub

(PHP 5 >= 5.3.0)

date_sub — Sinônimo de DateTime::sub()

Descrição

Esta função é um apelido para: DateTime::sub()

date_parse
date_sun_info
Funções de Data/Hora


Retorna um array com informações sobre pôr-do-sol/nascer-do-sol e o início/fim do dia

date_sub
date_sunrise
Funções de Data/Hora
PHP Manual

date_sun_info

(PHP 5 >= 5.1.2)

date_sun_info — Retorna um array com informações sobre pôr-do-sol/nascer-do-sol e o início/fim do dia

Descrição

array date_sun_info ( int $time , float $latitude , float $longitude )

Parâmetros

time

Timestamp.

latitude

Latitude em graus.

longitude

Longitude em graus.

Valor Retornado

Retorna um array em caso de sucesso ou FALSE em caso de falha.

Exemplos

Exemplo #1 Um exemplo de date_sun_info()

<?php
$sun_info = date_sun_info(strtotime("2006-12-12"), 31.7667, 35.2333);
foreach ($sun_info as $key => $val) {
    echo "$key: " . date("H:i:s", $val) . "\n";
}
?>

O exemplo acima irá imprimir:

sunrise: 05:52:11
sunset: 15:41:21
transit: 10:46:46
civil_twilight_begin: 05:24:08
civil_twilight_end: 16:09:24
nautical_twilight_begin: 04:52:25
nautical_twilight_end: 16:41:06
astronomical_twilight_begin: 04:21:32
astronomical_twilight_end: 17:12:00

Veja Também

  • date_sunrise() - Returns time of sunrise for a given day and location
  • date_sunset() - Returns time of sunset for a given day and location

date_sub
date_sunrise
Funções de Data/Hora


Returns time of sunrise for a given day and location

date_sun_info
date_sunset
Funções de Data/Hora
PHP Manual

date_sunrise

(PHP 5)

date_sunrise — Returns time of sunrise for a given day and location

Descrição

mixed date_sunrise ( int $timestamp [, int $format = SUNFUNCS_RET_STRING [, float $latitude = ini_get("date.default_latitude") [, float $longitude = ini_get("date.default_longitude") [, float $zenith = ini_get("date.sunrise_zenith") [, float $gmt_offset = 0 ]]]]] )

date_sunrise() returns the sunrise time for a given day (specified as a timestamp) and location.

Parâmetros

timestamp

The timestamp of the day from which the sunrise time is taken.

format

format constants
constant | description | example
SUNFUNCS_RET_STRING | returns the result as string | 16:46
SUNFUNCS_RET_DOUBLE | returns the result as float | 16.78243132
SUNFUNCS_RET_TIMESTAMP | returns the result as integer (timestamp) | 1095034606

latitude

Defaults to North, pass in a negative value for South. See also: date.default_latitude

longitude

Defaults to East, pass in a negative value for West. See also: date.default_longitude

zenith

Default: date.sunrise_zenith

gmtoffset

Specified in hours.

Valor Retornado

Returns the sunrise time in a specified format on success or FALSE on failure.

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Exemplo #1 date_sunrise() example

<?php

/* calculate the sunrise time for Lisbon, Portugal
Latitude: 38.4 North
Longitude: 9 West
Zenith ~= 90
offset: +1 GMT
*/

echo date("D M d Y"). ', sunrise time : ' .date_sunrise(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1);

?>

O exemplo acima irá imprimir algo similar a:

Mon Dec 20 2004, sunrise time : 08:54

Veja Também

  • date_sunset() - Returns time of sunset for a given day and location

date_sun_info
date_sunset
Funções de Data/Hora


Returns time of sunset for a given day and location

date_sunrise
date_time_set
Funções de Data/Hora
PHP Manual

date_sunset

(PHP 5)

date_sunset — Returns time of sunset for a given day and location

Descrição

mixed date_sunset ( int $timestamp [, int $format = SUNFUNCS_RET_STRING [, float $latitude = ini_get("date.default_latitude") [, float $longitude = ini_get("date.default_longitude") [, float $zenith = ini_get("date.sunset_zenith") [, float $gmt_offset = 0 ]]]]] )

date_sunset() returns the sunset time for a given day (specified as a timestamp) and location.

Parâmetros

timestamp

The timestamp of the day from which the sunset time is taken.

format

format constants
constant | description | example
SUNFUNCS_RET_STRING | returns the result as string | 16:46
SUNFUNCS_RET_DOUBLE | returns the result as float | 16.78243132
SUNFUNCS_RET_TIMESTAMP | returns the result as integer (timestamp) | 1095034606

latitude

Defaults to North, pass in a negative value for South. See also: date.default_latitude

longitude

Defaults to East, pass in a negative value for West. See also: date.default_longitude

zenith

Default: date.sunset_zenith

gmtoffset

Specified in hours.

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Valor Retornado

Returns the sunset time in a specified format on success or FALSE on failure.

Exemplos

Exemplo #1 date_sunset() example

<?php

/* calculate the sunset time for Lisbon, Portugal
Latitude: 38.4 North
Longitude: 9 West
Zenith ~= 90
offset: +1 GMT
*/

echo date("D M d Y"). ', sunset time : ' .date_sunset(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1);

?>

O exemplo acima irá imprimir algo similar a:

Mon Dec 20 2004, sunset time : 18:13

Veja Também

  • date_sunrise() - Returns time of sunrise for a given day and location

date_sunrise
date_time_set
Funções de Data/Hora


Define o tempo

date_sunset
date_timestamp_get
Funções de Data/Hora
PHP Manual

date_time_set

(PHP 5 >= 5.2.0)

date_time_set — Define o tempo

Descrição

void date_time_set ( DateTime $object , int $hour , int $minute [, int $second ] )
void DateTime::setTime ( int $hour , int $minute [, int $second ] )

Parâmetros

object

Objeto DateTime.

hour

Hora do tempo.

minute

Minuto do tempo.

second

Segundo do tempo.

Valor Retornado

Retorna NULL em caso de sucesso ou FALSE em falha.

Veja Também

  • date_date_set() - Define a data

date_sunset
date_timestamp_get
Funções de Data/Hora


Sinônimo de DateTime::getTimestamp

date_time_set
date_timestamp_set
Funções de Data/Hora
PHP Manual

date_timestamp_get

(PHP 5 >= 5.3.0)

date_timestamp_get — Sinônimo de DateTime::getTimestamp()

Descrição

Esta função é um apelido para: DateTime::getTimestamp()

date_time_set
date_timestamp_set
Funções de Data/Hora


Sinônimo de DateTime::setTimestamp

date_timestamp_get
date_timezone_get
Funções de Data/Hora
PHP Manual

date_timestamp_set

(PHP 5 >= 5.3.0)

date_timestamp_set — Sinônimo de DateTime::setTimestamp()

Descrição

Esta função é um apelido para: DateTime::setTimestamp()

date_timestamp_get
date_timezone_get
Funções de Data/Hora


Sinônimo de DateTime::getTimezone

date_timestamp_set
date_timezone_set
Funções de Data/Hora
PHP Manual

date_timezone_get

(PHP 5 >= 5.2.0)

date_timezone_get — Sinônimo de DateTime::getTimezone()

Descrição

Esta função é um apelido para: DateTime::getTimezone()

date_timestamp_set
date_timezone_set
Funções de Data/Hora


Sinônimo de DateTime::setTimezone

date_timezone_get
date
Funções de Data/Hora
PHP Manual

date_timezone_set

(PHP 5 >= 5.2.0)

date_timezone_set — Sinônimo de DateTime::setTimezone()

Descrição

Esta função é um apelido para: DateTime::setTimezone()

date_timezone_get
date
Funções de Data/Hora


Formata a data e a hora local

date_timezone_set
getdate
Funções de Data/Hora
PHP Manual

date

(PHP 4, PHP 5)

date — Formata a data e a hora local

Descrição

string date ( string $format [, int $timestamp ] )

Retorna uma string de acordo com a string format dada usando o inteiro timestamp dado ou a hora atual local se nenhum timestamp é dado. Em outras palavras, timestamp é opcional e o padrão para o valor de time().

Parâmetros

format

A string de formato da data a ser mostrada. Veja as opções de formatação abaixo.

Os seguintes caracteres são reconhecidos na string do parâmetro format
Caractere de format | Descrição | Exemplo de valores retornados
Day --- ---
d | Dia do mês, 2 digitos com preenchimento de zero | 01 até 31
D | Uma representação textual de um dia, três letras | Mon até Sun
j | Dia do mês sem preenchimento de zero | 1 até 31
l ('L' minúsculo) | A representação textual completa do dia da semana | Sunday até Saturday
N | Representação numérica ISO-8601 do dia da semana (adicionado no PHP 5.1.0) | 1 (para Segunda) até 7 (para Domingo)
S | Sufixo ordinal inglês para o dia do mês, 2 caracteres | st, nd, rd ou th. Funciona bem com j
w | Representação numérica do dia da semana | 0 (para domingo) até 6 (para sábado)
z | O dia do ano (começando do 0) | 0 through 365
Semana --- ---
W | Número do ano da semana ISO-8601, semanas começam na Segunda (adicionado no PHP 4.1.0) | Exemplo: 42 (the 42nd week in the year)
Mês --- ---
F | Um representação completa de um mês, como January ou March | January até December
m | Representação numérica de um mês, com leading zeros | 01 a 12
M | Uma representação textual curta de um mês, três letras | Jan a Dec
n | Representação numérica de um mês, sem leading zeros | 1 a 12
t | Número de dias de um dado mês | 28 through 31
Year --- ---
L | Se está em um ano bissexto | 1 se está em ano bissexto, 0 caso contrário.
o | Número do ano ISO-8601. Este tem o mesmo valor como Y, exceto que se o número da semana ISO (W) pertence ao anterior ou próximo ano, o ano é usado ao invés. (adicionado no PHP 5.1.0) | Exemplos: 1999 ou 2003
Y | Uma representação de ano completa, 4 dígitos | Exemplos: 1999 ou 2003
y | Uma representação do ano com dois dígitos | Exemplos: 99 ou 03
Tempo --- ---
a | Antes/Depois de meio-dia em minúsculo | am or pm
A | Antes/Depois de meio-dia em maiúsculo | AM or PM
B | Swatch Internet time | 000 até 999
g | Formato 12-horas de uma hora sem preenchimento de zero | 1 até 12
G | Formato 24-horas de uma hora sem preenchimento de zero | 0 até 23
h | Formato 12-horas de uma hora com zero preenchendo à esquerda | 01 até 12
H | Formato 24-horas de uma hora com zero preenchendo à esquerda | 00 até 23
i | Minutos com zero preenchendo à esquerda | 00 até 59
s | Segundos, com zero preenchendo à esquerda | 00 até 59
u | Milisegundos (adicionado no PHP 5.2.2) | Exemplo: 54321
Timezone --- ---
e | Identificador de Timezone (adicionado no PHP 5.1.0) | Exemplos: UTC, GMT, Atlantic/Azores
I (capital i) | Se a data está ou não no horário de verão | 1 se horário de verão, 0 caso contrário.
O | Diferença para Greenwich time (GMT) em horas | Exemplo: +0200
P | Diferença para Greenwich time (GMT) com dois pontos entre horas e minutos (adicionado no PHP 5.1.3) | Exemplo: +02:00
T | Abreviação de Timezone | Exemplos: EST, MDT ...
Z | Timezone offset in seconds. The offset for timezones west of UTC is always negative, and for those east of UTC is always positive. | -43200 até 50400
Full Date/Time --- ---
c | ISO 8601 date (adicionado no PHP 5) | 2004-02-12T15:19:21+00:00
r | » RFC 2822 formatted date | Exemplo: Thu, 21 Dec 2000 16:01:07 +0200
U | Segundos desde a Época Unix (January 1 1970 00:00:00 GMT) | Veja também time()

Caracteres não reconhecidos no formato de serão impressos como são. O formato Z será sempre retornado 0 quando usar gmdate().

Nota:

Desde que esta função aceita somente integer timestamps o caractere de formato u é somente útil quando usando a função date_format() com um timestamp baseado pelo usuário criado com date_create().

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Retorna um string da data formatada. Se um valor não-numérico é usado para timestamp, FALSE é retornado e um erro de nível E_WARNING é emitido.

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | O intervalo válido de um timestamp é tipicamente de Sex, 13 Dez 1901 20:45:54 GMT to Ter, 19 Jan 2038 03:14:07 GMT. (Estas são as datas que correspondem ao valor mínimo e máximo para um inteiro com sinal de 32-bit). Contudo, antes do PHP 5.1.0 este intervalo foi limitado de 01-01-1970 para 19-01-2038 em alguns sistemas (e.g. Windows).
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.
5.1.1 | Há constantes útils do padrão de formato de data/hora que podem ser usados para especificar o parâmetro format.

Exemplos

Exemplo #1 Exemplos da date()

<?php
// Modifica a zona de tempo a ser utilizada. Disnovível desde o PHP 5.1
date_default_timezone_set('UTC');

// Exibe alguma coisa como: Monday
echo date("l");

// Exibe alguma coisa como: Monday 8th of August 2005 03:12:46 PM
echo date('l jS \of F Y h:i:s A');

// Exibe: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " . date("l", mktime(0, 0, 0, 7, 1, 2000));

/* utiliza as constantes do parâmetro de formato */
// Exibe alguma coisa como: Mon, 15 Aug 2005 15:12:46 UTC
echo date(DATE_RFC822);

// Exibe alguma coisa como: 2000-07-01T00:00:00+00:00
echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000));
?>

Você pode prevenir um caracter conhecido no formato de string de um existente escapando-o com uma barra invertida antes dele. Se o caracter com a barra invertida já é uma sequência especial, você pode precisar também escapar a barra invertida.

Exemplo #2 Caracteres de escape em date()

<?php
// exibe algo como: Wednesday the 15th
echo date("l \\t\h\e jS");
?>

É possível utilizar date() e mktime() juntos para encontrar datas no futuro ou no passado.

Exemplo #3 Exemplo da date() e mktime()

<?php
$tomorrow  = mktime (0, 0, 0, date("m")  , date("d")+1, date("Y"));
$lastmonth = mktime (0, 0, 0, date("m")-1, date("d"),  date("Y"));
$nextyear  = mktime (0, 0, 0, date("m"),  date("d"),  date("Y")+1);
?>

Nota:

Esta pode ser mais confiável do que simplesmente adicionar ou subtrair o número de segundos em um dia ou mês para um timestamp devido ao horário de verão.

Alguns exemplos de formatação de date(). Note que você poderia escapar qualquer outro caracter, como algum que atualmente tenha um significado especial produzirá resultados indesejáveis, e outros caracteres poderiam assumir significados em futuras versões do PHP. Quando usar escape, certifique o uso de aspas simples para evitar caracteres como \n próprio para novas linhas.

Exemplo #4 Formatação de date()

<?php
// Assumindo que hoje é: March 10th, 2001, 5:16:18 pm

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day z ');  // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // It is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 15:16:08 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:17 m is month
$today = date("H:i:s");                         // 17:16:17
?>

Para formatar datas em outras línguas, você usaria as funções setlocale() e strftime() ao invés de date().

Notas

Nota:

Para gerar um timestamp de uma string da representação da data, você pode usar strtotime(). Adicionalmente, alguns banco de dados tem funções para converter os formatos de data para timestamps (como a função » UNIX_TIMESTAMP do MySQL).

Dica

Timestamp do início da requisição está disponível na $_SERVER['REQUEST_TIME'] desde o PHP 5.1.

Veja Também

  • getlastmod() - Obtém o tempo da última modificação na pagina
  • gmdate() - Formata uma data/hora GMT/CUT
  • mktime() - Obtém um timestamp Unix para uma data
  • strftime() - Formata uma hora/data de acordo com as configurações locais
  • time() - Retorna o timestamp Unix atual

date_timezone_set
getdate
Funções de Data/Hora


Consegue informações data/hora

date
gettimeofday
Funções de Data/Hora
PHP Manual

getdate

(PHP 4, PHP 5)

getdate — Consegue informações data/hora

Descrição

array getdate ([ int $timestamp ] )

Retorna um array associativo contendo a informação da data do timestamp, ou a hora corrente local se nenhum timestamp é dado.

Parâmetros

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Retorna um array associativo de informação sobre o timestamp. Elementos do array associativo são os seguintes:

Elementos chave de retorno do array associativo
Chave | Descrição | Exemplo dos valores retornados
"seconds" | Representação numérica dos segundos | 0 a 59
"minutes" | Representação numérica dos minutos | 0 a 59
"hours" | Representação numérica das horas | 0 a 23
"mday" | Representação numérica do dia do mês | 1 a 31
"wday" | Representação numérica do dia da semana | 0 (para Sunday) a 6 (para Saturday)
"mon" | Representação numérica de um mês | 1 a 12
"year" | Representação numérica completa do ano, 4 digitos | Exemples: 1999 ou 2003
"yday" | Numeric representation of the day of the year | 0 a 366
"weekday" | Representação textual completa do dia da semana | Sunday a Saturday
"month" | Representação textual completa de um mês, tal como January ou March | January a December
0 | Segundos desde a época UNIX, similar aos valores retornados pela time() e usados por date(). | Dependente do sistema, tipicamente -2147483648 à 2147483647.

Exemplos

Exemplo #1 Exemplo da getdate()

<?php
$today = getdate();
print_r($today);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [seconds] => 40
    [minutes] => 58
    [hours]   => 21
    [mday]    => 17
    [wday]    => 2
    [mon]     => 6
    [year]    => 2003
    [yday]    => 167
    [weekday] => Tuesday
    [month]   => June
    [0]       => 1055901520
)

Veja Também

  • date() - Formata a data e a hora local
  • time() - Retorna o timestamp Unix atual
  • setlocale() - Define informações locais

date
gettimeofday
Funções de Data/Hora


Obtém a hora local

getdate
gmdate
Funções de Data/Hora
PHP Manual

gettimeofday

(PHP 4, PHP 5)

gettimeofday — Obtém a hora local

Descrição

mixed gettimeofday ([ bool $return_float ] )

Esta é uma interface para gettimeofday(2). Esta retorna um array contendo o dado retornado da comunicação com o sistema.

Parâmetros

return_float

Quando definido para TRUE, um float ao invés de array é retornado.

Valor Retornado

Por padrão um array é retornado. Se return_float é definido, então um float é retornado.

Array keys:

  • "sec" - segundos desde a época Unix
  • "usec" - microsegundos
  • "minuteswest" - minutos a oeste de Greenwich
  • "dsttime" - tipo de correção dst

Histórico

Versão | Descrição
5.1.0 | O parâmetro return_float foi adicionado.

Exemplos

Exemplo #1 Exemplo da gettimeofday()

<?php
 print_r(gettimeofday());

 echo gettimeofday(true);
 ?>

O exemplo acima irá imprimir algo similar a:

 Array
 (
     [sec] => 1073504408
     [usec] => 238215
     [minuteswest] => 0
     [dsttime] => 1
 )

 1073504408.23910

getdate
gmdate
Funções de Data/Hora


Formata uma data/hora GMT/CUT

gettimeofday
gmmktime
Funções de Data/Hora
PHP Manual

gmdate

(PHP 4, PHP 5)

gmdate — Formata uma data/hora GMT/CUT

Descrição

string gmdate ( string $format [, int $timestamp ] )

Idêntica a função date() exceto que o tempo está em Greenwich Mean Time (GMT).

Parâmetros

format

O formato de saída da string da data. Veja as opções de formatação para a função date().

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Retorna uma string da data formatada. Se um valor não-numérico é usado para timestamp, FALSE é retornado e um erro de nível E_WARNING é emitido.

Histórico

Versão | Descrição
5.1.0 | O intervalo válido de um timestamp é normalmente de Fri, 13 Dec 1901 20:45:54 GMT a Tue, 19 Jan 2038 03:14:07 GMT. (Estas são as datas que correspondem aos valores máximo e mínimo para um inteiro 32-bit com sinal). Contudo, antes do PHP 5.1.0 este intervalo foi limitado para 01-01-1970 a 19-01-2038 em alguns sistemas (e.g. Windows).
5.1.1 | Há constantes úteis do padrão de formato data/hora que podem ser usadas para especificar o parâmetro format.

Exemplos

Exemplo #1 Exemplo da gmdate()

Quando executado na Finlândia (GMT +0200), a primeira linha abaixo imprime "Jan 01 1998 00:00:00", enquando a segunda imprime "Dec 31 1997 22:00:00".

<?php
echo date("M d Y H:i:s", mktime(0, 0, 0, 1, 1, 1998));
echo gmdate("M d Y H:i:s", mktime(0, 0, 0, 1, 1, 1998));
?>

Veja Também

  • date() - Formata a data e a hora local
  • mktime() - Obtém um timestamp Unix para uma data
  • gmmktime() - Obtém um timestamp Unix para uma data GMT
  • strftime() - Formata uma hora/data de acordo com as configurações locais

gettimeofday
gmmktime
Funções de Data/Hora


Obtém um timestamp Unix para uma data GMT

gmdate
gmstrftime
Funções de Data/Hora
PHP Manual

gmmktime

(PHP 4, PHP 5)

gmmktime — Obtém um timestamp Unix para uma data GMT

Descrição

int gmmktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]]] )

Idêntico ao mktime() exceto que os parâmetros representam uma data GMT. gmmktime() internamente usa mktime() então somente tempo válido no derivado tempo local pode ser usado.

Como em mktime(), os argumentos podem ser omitidos da direita para esquerda, com qualquer argumento omitido sendo definido para o valor GMT correspondente.

Parâmetros

hour

A hora

minute

O minuto

second

O segundo

month

O mês

day

O dia

year

O ano

is_dst

Parâmetros sempre representam uma data GMT em is_dst sendo assim, não influencia o resultado.

Valor Retornado

Retorna um integer Unix timestamp.

Histórico

Versão | Descrição
5.1.0 | As of PHP 5.1.0, the is_dst parameter became deprecated. As a result, the new timezone handling features should be used instead.

Exemplos

Exemplo #1 gmmktime() no Windows

<?php
gmmktime(0, 0, 0, 1, 1, 1970); // valid in GMT and west, invalid in east
?>

Veja Também

  • mktime() - Obtém um timestamp Unix para uma data
  • date() - Formata a data e a hora local
  • time() - Retorna o timestamp Unix atual

gmdate
gmstrftime
Funções de Data/Hora


Formata uma hora/data GMT/CUT de acordo com as configurações locais

gmmktime
idate
Funções de Data/Hora
PHP Manual

gmstrftime

(PHP 4, PHP 5)

gmstrftime — Formata uma hora/data GMT/CUT de acordo com as configurações locais

Descrição

string gmstrftime ( string $format [, int $timestamp ] )

Mesmo comportamento que strftime() exceto que o tempo retornado é Greenwich Mean Time (GMT). Por exemplo, quando roda no Padrão de tempo Oriental (GMT -0500), a primeira linha abaixo imprime "Dec 31 1998 20:00:00", enquanto a segunda linha imprime "Jan 01 1999 01:00:00".

Parâmetros

format

See description in strftime().

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Retorna uma string formatada de acordo com a dada string de formato usando o dado timestamp ou o atual tempo local se nenhum timestamp é dado. Nomes de mês e dias da semana e outras strings dependem do atual locale definido com setlocale().

Exemplos

Exemplo #1 Exemplo da gmstrftime()

<?php
setlocale(LC_TIME, 'en_US');
echo strftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
echo gmstrftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
?>

Veja Também

  • strftime() - Formata uma hora/data de acordo com as configurações locais

gmmktime
idate
Funções de Data/Hora


Format a local time/date as integer

gmstrftime
localtime
Funções de Data/Hora
PHP Manual

idate

(PHP 5)

idate — Format a local time/date as integer

Descrição

int idate ( string $format [, int $timestamp = time() ] )

Returns a number formatted according to the given format string using the given integer timestamp or the current local time if no timestamp is given. In other words, timestamp is optional and defaults to the value of time().

Unlike the function date(), idate() accepts just one char in the format parameter.

Parâmetros

format

The following characters are recognized in the format parameter string
format character | Description
B | Swatch Beat/Internet Time
d | Day of the month
h | Hour (12 hour format)
H | Hour (24 hour format)
i | Minutes
I (uppercase i) | returns 1 if DST is activated, 0 otherwise
L (uppercase l) | returns 1 for leap year, 0 otherwise
m | Month number
s | Seconds
t | Days in current month
U | Seconds since the Unix Epoch - January 1 1970 00:00:00 UTC - this is the same as time()
w | Day of the week (0 on Sunday)
W | ISO-8601 week number of year, weeks starting on Monday
y | Year (1 or 2 digits - check note below)
Y | Year (4 digits)
z | Day of the year
Z | Timezone offset in seconds

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Returns an integer.

As idate() always returns an integer and as they can't start with a "0", idate() may return fewer digits than you would expect. See the example below.

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Exemplo #1 idate() example

<?php
$timestamp = strtotime('1st January 2004'); //1072915200

// this prints the year in a two digit format
// however, as this would start with a "0", it
// only prints "4"
echo idate('y', $timestamp);
?>

Veja Também

  • date() - Formata a data e a hora local
  • getdate() - Consegue informações data/hora
  • time() - Retorna o timestamp Unix atual

gmstrftime
localtime
Funções de Data/Hora


Obtém a hora local

idate
microtime
Funções de Data/Hora
PHP Manual

localtime

(PHP 4, PHP 5)

localtime — Obtém a hora local

Descrição

array localtime ([ int $timestamp [, bool $is_associative ]] )

A função localtime() retorna uma matriz idêntica àquela da estrutura retornada pela chamada de uma função em C.

Parâmetros

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

is_associative

Se definido para FALSE ou não fornecido, então um array é retornado, com índices numéricos. Se o argumento é definido para TRUE então localtime() é um array associativo contendo todos os diferentes elementos da estrutura retornados pela chamada da função C para o localtime. Os nomes das diferentes chaves do array associativo são as seguintes:

  • "tm_sec" - Segundos
  • "tm_min" - Minutos
  • "tm_hour" - Hora
  • "tm_mday" - Dia do mês Meses são de 0 (Jan) à 11 (Dez) e dias da semana são de 0 (Dom) à 6 (Sáb).
  • "tm_mon" - Mês do ano, começa com 0 para Janeiro
  • "tm_year" - Anos desde 1900
  • "tm_wday" - Dia da semana
  • "tm_yday" - Dia do ano
  • "tm_isdst" - Se está em horário de verão

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Exemplo #1 Exemplo da localtime()

<?php
$localtime = localtime();
$localtime_assoc = localtime(time(), true);
print_r($localtime);
print_r($localtime_assoc);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => 24
    [1] => 3
    [2] => 19
    [3] => 3
    [4] => 3
    [5] => 105
    [6] => 0
    [7] => 92
    [8] => 1
)

Array
(
    [tm_sec] => 24
    [tm_min] => 3
    [tm_hour] => 19
    [tm_mday] => 3
    [tm_mon] => 3
    [tm_year] => 105
    [tm_wday] => 0
    [tm_yday] => 92
    [tm_isdst] => 1
)

idate
microtime
Funções de Data/Hora


Retorna um timestamp Unix com microsegundos

localtime
mktime
Funções de Data/Hora
PHP Manual

microtime

(PHP 4, PHP 5)

microtime — Retorna um timestamp Unix com microsegundos

Descrição

mixed microtime ([ bool $get_as_float ] )

A microtime() retorna o timestamp atual com microsegundos. Esta função está apenas disponível em sistemas operacionais que suportam o chamda do sistema gettimeofday().

Parâmetros

get_as_float

Quando chamada sem o argumento opcional, esta função retorna a string "msec sec" onde sec é o a hora atual medida em segundos desde a era UNIX (0:00:00 January 1, 1970 GMT), e msec é a parte em microsegundos. Ambas porções de string são retornadas em segundos.

Se o opcional get_as_float é definido para TRUE então um float (em segundos) é retornado.

Histórico

Versão | Descrição
5.0.0 | O parâmetro get_as_float foi adicionado.

Exemplos

Exemplo #1 Cronometrando a execução do script com microtime()

<?php
/**
 * Simple function to replicate PHP 5 behaviour
 */
function getmicrotime()
{
    list($usec, $sec) = explode(" ", microtime());
    return ((float)$usec + (float)$sec);
}

$time_start = microtime_float();

// Sleep for a while
usleep(100);

$time_end = microtime_float();
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>

Exemplo #2 Timing script execution in PHP 5

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>

Veja Também

  • time() - Retorna o timestamp Unix atual

localtime
mktime
Funções de Data/Hora


Obtém um timestamp Unix para uma data

microtime
strftime
Funções de Data/Hora
PHP Manual

mktime

(PHP 4, PHP 5)

mktime — Obtém um timestamp Unix para uma data

Descrição

int mktime ([ int $hora [, int $minuto [, int $second [, int $mes [, int $dia [, int $ano [, int $is_dst ]]]]]]] )

Retorna o timestamp Unix correspondente para os argumentos dados. Este timestamp é um longo inteiro contendo o número de segundos entre a Era Unix (January 1 1970 00:00:00 GMT) e o tempo especificado.

Argumentos podem ser omitidos da direita para esquerda; quaisquer argumentos assim omitidos serão definidos para o valor atual de acordo com a data e a hora local.

Parâmetros

hour

O número da hora.

minute

O número do minuto.

second

O número de segundos passados do minuto.

month

O número do mês.

day

O número do dia.

year

O número do ano. Pode conter dois ou quatro dígitos, com os valores entre 0-69 significando 2000-2069 e 70-100 para 1970-2000. Em sistemas aonde o time_t é um inteiro assinado de 32 bit, como é mais comum, o alcance do ano é algo entre 1901 e 2038. Entretanto, antes do PHP 5.1.0 esse range era limitado para 1970 até 2038 em alguns sistemas (ex. Windows).

is_dst

Este parâmetro pode ser definido para 1 se está durante o horário de verão (DST), 0 se não está, ou -1 (o padrão) se é desconhecido se o tempo está dentro do horário de verão ou não. Se é desconhecido, o PHP tenta compreender por si mesmo. Isto pode causar inesperado (mas não incorreto) resultados. As vezes é inválido se DST é habilitado no sistema em que o PHP está executando ou is_dst é definido para 1. Se DST é habilitado em e.g. 2:00, todo tempo entre 2:00 e 3:00 são inválidos e mktime() retorna um indefinido (normalmente negativo) valor. Alguns sistemas (e.g. Solaris 8) habilita DST na meia-noite então tempo 0:30 do dia quando DST está habilitado é avaliado como 23:30 do dia anterior.

Nota:

No PHP 5.1.0, este parâmetro tornou-se obsoleto. Como resultado, o o novo recurso de manuseamento de timezone deve ser usado ao invés dele.

Valor Retornado

mktime() retorna o Unix timestamp dos argumentos dado. Se os argumentos são inválidos, a função retorna FALSE (antes do PHP 5.1 retornava -1).

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
3.0.10 | Adicionado o parâmetrois_dst
5.1.0 | O parâmetro is_dst tornou-se obsoleto. Fazendo a função retornar FALSE em erro, ao invés de -1. Reparada a função para aceitar o ano, mês e dia para ser todos passados como zero.
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Exemplo #1 Exemplo da mktime()

mktime() é útil durante a aritmética e validação de data, enquanto ela calculará automaticamente o valor correto para a entrada fora do intervalo. Por exemplo, cada uma das seguintes linhas produzirá a string "Jan-01-1998".

<?php
echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997));
echo date("M-d-Y", mktime(0, 0, 0, 13, 1, 1997));
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998));
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 98));
?>

Exemplo #2 Último dia do próximo mês

O último dia de um mês dado pode ser expressado como o dia "0" do mês seguinte, não o dia -1. Os dois exemplos seguintes produzirão a string "The last day in Feb 2000 is: 29".

<?php
$lastday = mktime (0,0,0,3,0,2000);
echo strftime ("Last day in Feb 2000 is: %d", $lastday);

$lastday = mktime (0,0,0,4,-31,2000);
echo strftime ("Last day in Feb 2000 is: %d", $lastday);
?>

Notas

Cuidado

Antes do PHP 5.1.0, timestamp negativos não eram suportados em nenhuma versão conhecida do Windows e em alguns outros sistemas também. Portanto o intervalo válido de anos foi limitado para 1970 até 2038.

Veja Também

  • gmmktime() - Obtém um timestamp Unix para uma data GMT
  • date() - Formata a data e a hora local
  • time() - Retorna o timestamp Unix atual

microtime
strftime
Funções de Data/Hora


Formata uma hora/data de acordo com as configurações locais

mktime
strptime
Funções de Data/Hora
PHP Manual

strftime

(PHP 4, PHP 5)

strftime — Formata uma hora/data de acordo com as configurações locais

Descrição

string strftime ( string $format [, int $timestamp ] )

Formata uma hora/data local de acordo com o configuração de locale. Nome do mês e dia da semana e outras strings dependem do atual local definido com setlocale().

Note que todas as conversões especificadas podem ser suportadas pela sua biblioteca C, em alguns casos elas não serão suportadas pelo PHP strftime(). Além disso, nem todas as plataformas suportam timestamps negativos, então sua faixa de datas não pode ser limitada mais cedo do que a época Unix. Isto significa e.g. %e, %T, %R e %D (e outras mais) e datas anteriores a Jan 1, 1970 não funcionarão em Windows, algumas distribuições Linux, e alguns outros sistemas operacionais. Para sistemas Windows um resumo completo dos especificadores de conversão suportados podem ser encontrados neste website » MSDN .

Parâmetros

format

As seguintes conversões especificadoras são conhecidas no formato de string:

  • %a - dia da semana abreviado de acordo com a localidade
  • %A - nome da semana completo de acordo com a localidade
  • %b - nome do mês abreviado de acordo com a localidade
  • %B - nome do mês completo de acordo com a localidade
  • %c - representação da data e hora preferida pela a localidade
  • %C - número do século (o ano dividido por 100 e truncado para um inteiro, de 00 até 99)
  • %d - dia do mês como um número decimal (de 01 até 31)
  • %D - mesmo que %m/%d/%y
  • %e - dia do mês como um número decimal, um simples dígito é precedido por espaço (de ' 1' até '31')
  • %g - como %G, mas sem o século.
  • %G - o 4-dígito do ano correspodendo as ISO week number (see %V). Este tem o mesmo formato e valor que %Y, exceto que se o ISO week number pertence ao prévio ou próximo ano, aquele ano é usado ao invés deste.
  • %h - mesmo que %b
  • %H - hora como um número decimal usando um relógio de 24-horas (de 00 até 23)
  • %I - hora como um número decimal usando um relógio de 12-hoas (de 01 até 12)
  • %j - dia do ano como número decimal (de 001 até 366)
  • %m - mês como número decimal (de 01 até 12)
  • %M - minuto como número decimal
  • %n - caracter novalinha
  • %p - um dos dois `am' ou `pm' de acordo com o valor da hora dada, ou as strings correspondentes para a localidade
  • %r - hora em a.m. e p.m. notação
  • %R - hora em notação de 24 horas
  • %S - segundo como um número decimal
  • %t - caracter tab
  • %T - hora corrente, igual a %H:%M:%S
  • %u - dia da semana como número decimal [1,7], com 1 representando Segunda-feira
    Aviso

    Sun Solaris parece iniciar o Domingo como 1 embora ISO 9889:1999 (o padrão C corrente) claramente especificados que ele poderia ser segunda-feira.

  • %U - dia da semana do ano corrente como número decimal, começando com o primeiro domingo como o primeiro dia da primeira semana
  • %V - O número da semana corrente ISO 8601:1988 do ano corrente como um número decimal, de 01 até 53, onde semana 1 é a primeira semana que tem pelo menos 4 dias no ano corrente, e com segunda-feira como o primeiro dia da semana. (Use %G ou %g para o componente anual que corresponde ao dia da semana para o para o timestamp especificado.)
  • %W - dia da semana do ano corrente como número decimal, começando com o a segunda-feira como o primeiro dia da primera semana
  • %w - dia da semana como número decimal, domingo sendo 0
  • %x - representação preferida para a data para a localidade corrente sem a hora
  • %X - representação preferida para a hora para a localidade corrente sem a data
  • %y - ano como número decimal sem o século (de 00 até 99)
  • %Y - ano como número decimal incluindo o século
  • %Z ou %z - time zone, nome ou abreviação (dependendo do sistema operacional)
  • %% - a literal `%' character

Tamanho máximo deste parâmetro é 1023 caracteres.

timestamp

O parâmetro opcional timestamp é um integer Unix timestamp cujo padrão é a hora local se timestamp não for dado. Em outras palavras, o padrão é o valor de time().

Valor Retornado

Retorna uma string formatada de acordo com o formato dado em timestamp ou o horário corrente se nenhum timestamp é dado. Nomes de mês e dia da semana e outras strings dependentes de linguagens respeitam o atual locale definido com setlocale().

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Este exemplo funciona se você tem os respectivos locales instalados em seu sistema.

Exemplo #1 strftime() exemplos locais

<?php
setlocale(LC_TIME, "C");
echo strftime("%A");
setlocale(LC_TIME, "fi_FI");
echo strftime(" in Finnish is %A,");
setlocale(LC_TIME, "fr_FR");
echo strftime(" in French %A and");
setlocale(LC_TIME, "de_DE");
echo strftime(" in German %A.\n");
?>

Exemplo #2 Exemplo de número de semana ISO 8601:1988

<?php
/*     December 2002 / January 2003
ISOWk  M   Tu  W   Thu F   Sa  Su
----- ----------------------------
51     16  17  18  19  20  21  22
52     23  24  25  26  27  28  29
1      30  31   1   2   3   4   5
2       6   7   8   9  10  11  12
3      13  14  15  16  17  18  19   */

// Outputs: 12/28/2002 - %V,%G,%Y = 52,2002,2002
echo "12/28/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y", strtotime("12/28/2002")) . "\n";

// Outputs: 12/30/2002 - %V,%G,%Y = 1,2003,2002
echo "12/30/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y", strtotime("12/30/2002")) . "\n";

// Outputs: 1/3/2003 - %V,%G,%Y = 1,2003,2003
echo "1/3/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2003")) . "\n";

// Outputs: 1/10/2003 - %V,%G,%Y = 2,2003,2003
echo "1/10/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/10/2003")) . "\n";

/*     December 2004 / January 2005
ISOWk  M   Tu  W   Thu F   Sa  Su
----- ----------------------------
51     13  14  15  16  17  18  19
52     20  21  22  23  24  25  26
53     27  28  29  30  31   1   2
1       3   4   5   6   7   8   9
2      10  11  12  13  14  15  16   */

// Outputs: 12/23/2004 - %V,%G,%Y = 52,2004,2004
echo "12/23/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/23/2004")) . "\n";

// Outputs: 12/31/2004 - %V,%G,%Y = 53,2004,2004
echo "12/31/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/31/2004")) . "\n";

// Outputs: 1/2/2005 - %V,%G,%Y = 53,2004,2005
echo "1/2/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/2/2005")) . "\n";

// Outputs: 1/3/2005 - %V,%G,%Y = 1,2005,2005
echo "1/3/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2005")) . "\n";

?>

Notas

Nota: %G e %V, que são baseadas nos números de semana no ISO 8601:1988 pode ser dado resultados inesperados (embora corretos) se o sistema numérico não é perfeitamente entendido. Veja exemplos da %V nesta página do manual.

Veja Também

  • setlocale() - Define informações locais
  • mktime() - Obtém um timestamp Unix para uma data
  • strptime() - Parse a time/date generated with strftime
  • gmstrftime() - Formata uma hora/data GMT/CUT de acordo com as configurações locais
  • » Especificação Open Group da strftime()

mktime
strptime
Funções de Data/Hora


Parse a time/date generated with strftime

strftime
strtotime
Funções de Data/Hora
PHP Manual

strptime

(PHP 5 >= 5.1.0)

strptime — Parse a time/date generated with strftime()

Descrição

array strptime ( string $date , string $format )

strptime() returns an array with the date parsed, or FALSE on error.

Month and weekday names and other language dependent strings respect the current locale set with setlocale() (LC_TIME).

Parâmetros

date (string)

The string to parse (e.g. returned from strftime()).

format (string)

The format used in date (e.g. the same as used in strftime()). Note that some of the format options available to strftime() may not have any effect within strptime(); the exact subset that are supported will vary based on the operating system and C library in use.

For more information about the format options, read the strftime() page.

Valor Retornado

Returns an array or FALSE on failure.

The following parameters are returned in the array
parameters | Description
"tm_sec" | Seconds after the minute (0-61)
"tm_min" | Minutes after the hour (0-59)
"tm_hour" | Hour since midnight (0-23)
"tm_mday" | Day of the month (1-31)
"tm_mon" | Months since January (0-11)
"tm_year" | Years since 1900
"tm_wday" | Days since Sunday (0-6)
"tm_yday" | Days since January 1 (0-365)
"unparsed" | the date part which was not recognized using the specified format

Exemplos

Exemplo #1 strptime() example

<?php
$format = '%d/%m/%Y %H:%M:%S';
$strf = strftime($format);

echo "$strf\n";

print_r(strptime($strf, $format));
?>

O exemplo acima irá imprimir algo similar a:

03/10/2004 15:54:19

Array
(
    [tm_sec] => 19
    [tm_min] => 54
    [tm_hour] => 15
    [tm_mday] => 3
    [tm_mon] => 9
    [tm_year] => 104
    [tm_wday] => 0
    [tm_yday] => 276
    [unparsed] =>
)

Notas

Nota: esta função não é implementada na plataforma Windows

Nota:

Internally, this function calls the strptime() function provided by the system's C library. This function can exhibit noticeably different behaviour across different operating systems. The use of date_parse_from_format(), which does not suffer from these issues, is recommended on PHP 5.3.0 and later.

Nota:

"tm_sec" includes any leap seconds (currently upto 2 a year). For more information on leap seconds, see the » Wikipedia article on leap seconds.

Nota:

Prior to PHP 5.2.0, this function could return undefined behaviour. Notably, the "tm_sec", "tm_min" and "tm_hour" entries would return undefined values.

Veja Também

  • checkdate() - Valida uma data Gregoriana
  • strftime() - Formata uma hora/data de acordo com as configurações locais

strftime
strtotime
Funções de Data/Hora


Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

strptime
time
Funções de Data/Hora
PHP Manual

strtotime

(PHP 4, PHP 5)

strtotime — Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

Descrição

int strtotime ( string $time [, int $now ] )

A função espera que seja dado uma string contendo um formato de data em inglês US e tentará analisar esse formato dentro de um timestamp Unix (o número de segundos desde January 1 1970 00:00:00 GMT), relativo ao timestamp dado em now, ou a hora atual se now não é fornecido.

Esta função usará a variável de ambiente TZ (se disponível) para calcular o timestamp. Desde o PHP 5.1.0 há forma fácil para definir o timezone que é usada em todas as funções de data/hora. Este processo é explicado na página da função date_default_timezone_get().

Nota:

Se o número do ano é especificado no formato de dois dígitos, o valor entre 00-69 é mapeado para 2000-2069 e 70-99 para 1970-1999.

Parâmetros

time

A string para analisar, de acordo com a sintaxe GNU de » Formato de Entrada de Data. Antes do PHP 5.0.0, microsegundos não eram permitidos na hora, desde o PHP 5.0.0 eles são permitidos mas ignorados.

now

O timestamp usado para calcular o valor retornado.

Valor Retornado

Retorna um timestamp em sucesso, FALSE caso contrário. Antes do PHP 5.1.0, esta função podia retornar -1 em falha.

Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem E_STRICT ou E_WARNING se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

Histórico

Versão | Descrição
5.1.0 | Ela agora retorna FALSE em falha, ao invés de -1.
5.1.0 | Agora emite E_STRICT e E_NOTICE em erros da zona de horário.

Exemplos

Exemplo #1 Exemplo da strtotime()

<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?>

Exemplo #2 Checando por falha

<?php
$str = 'Not Good';

// em versões antes do PHP 5.1.0 você compararia com -1, ao invés de false
if (($timestamp = strtotime($str)) === false) {
    echo "The string ($str) is bogus";
} else {
    echo "$str == " . date('l dS \o\f F Y h:i:s A', $timestamp);
}
?>

Notas

Aviso

Em PHP 5 superior a 5.0.2, "now" e outros tempo relativos são erradamente computados para meia-noite do dia. Diferente de outras versões onde ele é corretamente computado da hora atual.

Aviso

Nas versões do PHP menor que 4.4.0, "next" é incorretamente computado como +2. Uma solução típica para isso é usar "+1".

Nota:

O intervalo válido de um timestamp é tipicamente de Fri, 13 Dec 1901 20:45:54 GMT até Tue, 19 Jan 2038 03:14:07 GMT. (Estas são datas que correspondem aos valores máximos e mínimos para um inteiro assinado de 32-bit.) Adicionalmente, nem todas as plataformas suportam timestamps negativos, então a faixa de sua data pode ser limitada antes de chegar na Era Unix. Isto significa que ex. datas antes de Jan 1, 1970 não trabalharão no Windows, nem em algumas distribuições do Linux, e num grupo de outros sistemas operacionais. PHP 5.1.0 e mais recentes versões superaram esta limitação, no entanto.

Veja Também

  • strptime() - Parse a time/date generated with strftime

strptime
time
Funções de Data/Hora


Retorna o timestamp Unix atual

strtotime
timezone_abbreviations_list
Funções de Data/Hora
PHP Manual

time

(PHP 4, PHP 5)

time — Retorna o timestamp Unix atual

Descrição

int time ( void )

Retorna a hora atual medida no número de segundos desde a Era Unix (January 1 1970 00:00:00 GMT).

Exemplos

Exemplo #1 time() example

<?php
$nextWeek = time() + (7 * 24 * 60 * 60);
                   // 7 days; 24 hours; 60 mins; 60secs
echo 'Now:       '. date('Y-m-d') ."\n";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
// or using strtotime():
echo 'Next Week: '. date('Y-m-d', strtotime('+1 week')) ."\n";
?>

O exemplo acima irá imprimir algo similar a:

Now:       2005-03-30
Next Week: 2005-04-06
Next Week: 2005-04-06

Notas

Dica

Timestamp do início da requisição está disponível na $_SERVER['REQUEST_TIME'] desde o PHP 5.1.

Veja Também

  • date() - Formata a data e a hora local
  • microtime() - Retorna um timestamp Unix com microsegundos

strtotime
timezone_abbreviations_list
Funções de Data/Hora


Sinônimo de DateTimeZone::listAbbreviations

time
timezone_identifiers_list
Funções de Data/Hora
PHP Manual

timezone_abbreviations_list

(PHP 5 >= 5.1.0)

timezone_abbreviations_list — Sinônimo de DateTimeZone::listAbbreviations()

Descrição

Esta função é um apelido para: DateTimeZone::listAbbreviations()

time
timezone_identifiers_list
Funções de Data/Hora


Sinônimo de DateTimeZone::listIdentifiers

timezone_abbreviations_list
timezone_location_get
Funções de Data/Hora
PHP Manual

timezone_identifiers_list

(PHP 5 >= 5.1.0)

timezone_identifiers_list — Sinônimo de DateTimeZone::listIdentifiers()

Descrição

Esta função é um apelido para: DateTimeZone::listIdentifiers()

timezone_abbreviations_list
timezone_location_get
Funções de Data/Hora


Sinônimo de DateTimeZone::getLocation

timezone_identifiers_list
timezone_name_from_abbr
Funções de Data/Hora
PHP Manual

timezone_location_get

(PHP 5 >= 5.3.0)

timezone_location_get — Sinônimo de DateTimeZone::getLocation()

Descrição

Esta função é um apelido para: DateTimeZone::getLocation()

timezone_identifiers_list
timezone_name_from_abbr
Funções de Data/Hora


Returns the timezone name from abbreviation

timezone_location_get
timezone_name_get
Funções de Data/Hora
PHP Manual

timezone_name_from_abbr

(PHP 5 >= 5.1.3)

timezone_name_from_abbr — Returns the timezone name from abbreviation

Descrição

string timezone_name_from_abbr ( string $abbr [, int $gmtOffset = -1 [, int $isdst = -1 ]] )

Parâmetros

abbr

Time zone abbreviation.

gmtOffset

Offset from GMT in seconds. Defaults to -1 which means that first found time zone corresponding to abbr is returned. Otherwise exact offset is searched and only if not found then the first time zone with any offset is returned.

isdst

Daylight saving time indicator. Defaults to -1, which means that whether the time zone has daylight saving or not is not taken into consideration when searching. If this is set to 1, then the gmtOffset is assumed to be an offset with daylight saving in effect; if 0, then gmtOffset is assumed to be an offset without daylight saving in effect. If abbr doesn't exist then the time zone is searched solely by the gmtOffset and isdst.

Valor Retornado

Returns time zone name on success or FALSE on failure.

Exemplos

Exemplo #1 A timezone_name_from_abbr() example

<?php
echo timezone_name_from_abbr("CET") . "\n";
echo timezone_name_from_abbr("", 3600, 0) . "\n";
?>

O exemplo acima irá imprimir algo similar a:

Europe/Berlin
Europe/Paris

Veja Também

  • timezone_abbreviations_list() - Sinônimo de DateTimeZone::listAbbreviations

timezone_location_get
timezone_name_get
Funções de Data/Hora


Sinônimo de DateTimeZone::getName

timezone_name_from_abbr
timezone_offset_get
Funções de Data/Hora
PHP Manual

timezone_name_get

(PHP 5 >= 5.1.0)

timezone_name_get — Sinônimo de DateTimeZone::getName()

Descrição

Esta função é um apelido para: DateTimeZone::getName()

timezone_name_from_abbr
timezone_offset_get
Funções de Data/Hora


Sinônimo de DateTimeZone::getOffset

timezone_name_get
timezone_open
Funções de Data/Hora
PHP Manual

timezone_offset_get

(PHP 5 >= 5.1.0)

timezone_offset_get — Sinônimo de DateTimeZone::getOffset()

Descrição

Esta função é um apelido para: DateTimeZone::getOffset()

timezone_name_get
timezone_open
Funções de Data/Hora


Retorna um novo objeto DateTimeZone

timezone_offset_get
timezone_transitions_get
Funções de Data/Hora
PHP Manual

timezone_open

(PHP 5 >= 5.1.0)

timezone_open — Retorna um novo objeto DateTimeZone

Descrição

DateTimeZone timezone_open ( string $timezone )
DateTimeZone DateTimeZone::__construct ( string $timezone )

Parâmetros

timezone

Identificador da timezone no formato de nome completo (ex: Europe/Prague) ou abreviação (ex: CET).

Valor Retornado

Retorna um objeto DateTimeZone em caso de successo ou FALSE em caso de failha.

timezone_offset_get
timezone_transitions_get
Funções de Data/Hora


Sinônimo de DateTimeZone::getTransitions

timezone_open
timezone_version_get
Funções de Data/Hora
PHP Manual

timezone_transitions_get

(PHP 5 >= 5.2.0)

timezone_transitions_get — Sinônimo de DateTimeZone::getTransitions()

Descrição

Esta função é um apelido para: DateTimeZone::getTransitions()

timezone_open
timezone_version_get
Funções de Data/Hora


Gets the version of the timezonedb

timezone_transitions_get
Extensões Específica para Linha de Comando
Funções de Data/Hora
PHP Manual

timezone_version_get

(PHP 5 >= 5.3.0)

timezone_version_get — Gets the version of the timezonedb

Descrição

string timezone_version_get ( void )

Returns the current version of the timezonedb.

Valor Retornado

Returns a string.

Exemplos

Exemplo #1 Getting the timezonedb version

<?php
echo timezone_version_get();
?>

O exemplo acima irá imprimir algo similar a:

2009.7

Veja Também

  • List of Supported Timezones

timezone_transitions_get
Extensões Específica para Linha de Comando
Funções de Data/Hora


Extensões Específica para Linha de Comando

  • Newt
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Newt Funções
  • Ncurses — Ncurses Terminal Screen Control
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Ncurses Funções
  • Readline — GNU Readline
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Readline
timezone_version_get
Newt
Referência das Funções


Newt

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • Newt form exit reasons
    • Newt colorsets
    • Newt argument flags
    • Newt Flags Sense
    • Newt Components Flags
    • File Descriptor Flags
    • Checkbox Tree Flags
    • Entry Flags
    • Listbox Flags
    • Textbox Flags
    • Form Flags
    • Newt Keys
    • Newt Anchors
    • Grid Flags
  • Exemplos
    • Basic usage
  • Newt Funções
    • newt_bell — Send a beep to the terminal
    • newt_button_bar — This function returns a grid containing the buttons created.
    • newt_button — Create a new button
    • newt_centered_window — Open a centered window of the specified size
    • newt_checkbox_get_value — Retreives value of checkox resource
    • newt_checkbox_set_flags — Configures checkbox resource
    • newt_checkbox_set_value — Sets the value of the checkbox
    • newt_checkbox_tree_add_item — Adds new item to the checkbox tree
    • newt_checkbox_tree_find_item — Finds an item in the checkbox tree
    • newt_checkbox_tree_get_current — Returns checkbox tree selected item
    • newt_checkbox_tree_get_entry_value — Descrição
    • newt_checkbox_tree_get_multi_selection — Descrição
    • newt_checkbox_tree_get_selection — Descrição
    • newt_checkbox_tree_multi — Descrição
    • newt_checkbox_tree_set_current — Descrição
    • newt_checkbox_tree_set_entry_value — Descrição
    • newt_checkbox_tree_set_entry — Descrição
    • newt_checkbox_tree_set_width — Descrição
    • newt_checkbox_tree — Descrição
    • newt_checkbox — Descrição
    • newt_clear_key_buffer — Discards the contents of the terminal's input buffer without waiting for additional input
    • newt_cls — Descrição
    • newt_compact_button — Descrição
    • newt_component_add_callback — Descrição
    • newt_component_takes_focus — Descrição
    • newt_create_grid — Descrição
    • newt_cursor_off — Descrição
    • newt_cursor_on — Descrição
    • newt_delay — Descrição
    • newt_draw_form — Descrição
    • newt_draw_root_text — Displays the string text at the position indicated
    • newt_entry_get_value — Descrição
    • newt_entry_set_filter — Descrição
    • newt_entry_set_flags — Descrição
    • newt_entry_set — Descrição
    • newt_entry — Descrição
    • newt_finished — Uninitializes newt interface
    • newt_form_add_component — Adds a single component to the form
    • newt_form_add_components — Add several components to the form
    • newt_form_add_hot_key — Descrição
    • newt_form_destroy — Destroys a form
    • newt_form_get_current — Descrição
    • newt_form_run — Runs a form
    • newt_form_set_background — Descrição
    • newt_form_set_height — Descrição
    • newt_form_set_size — Descrição
    • newt_form_set_timer — Descrição
    • newt_form_set_width — Descrição
    • newt_form_watch_fd — Descrição
    • newt_form — Create a form
    • newt_get_screen_size — Fills in the passed references with the current size of the terminal
    • newt_grid_add_components_to_form — Descrição
    • newt_grid_basic_window — Descrição
    • newt_grid_free — Descrição
    • newt_grid_get_size — Descrição
    • newt_grid_h_close_stacked — Descrição
    • newt_grid_h_stacked — Descrição
    • newt_grid_place — Descrição
    • newt_grid_set_field — Descrição
    • newt_grid_simple_window — Descrição
    • newt_grid_v_close_stacked — Descrição
    • newt_grid_v_stacked — Descrição
    • newt_grid_wrapped_window_at — Descrição
    • newt_grid_wrapped_window — Descrição
    • newt_init — Initialize newt
    • newt_label_set_text — Descrição
    • newt_label — Descrição
    • newt_listbox_append_entry — Descrição
    • newt_listbox_clear_selection — Descrição
    • newt_listbox_clear — Descrição
    • newt_listbox_delete_entry — Descrição
    • newt_listbox_get_current — Descrição
    • newt_listbox_get_selection — Descrição
    • newt_listbox_insert_entry — Descrição
    • newt_listbox_item_count — Descrição
    • newt_listbox_select_item — Descrição
    • newt_listbox_set_current_by_key — Descrição
    • newt_listbox_set_current — Descrição
    • newt_listbox_set_data — Descrição
    • newt_listbox_set_entry — Descrição
    • newt_listbox_set_width — Descrição
    • newt_listbox — Descrição
    • newt_listitem_get_data — Descrição
    • newt_listitem_set — Descrição
    • newt_listitem — Descrição
    • newt_open_window — Open a window of the specified size and position
    • newt_pop_help_line — Replaces the current help line with the one from the stack
    • newt_pop_window — Removes the top window from the display
    • newt_push_help_line — Saves the current help line on a stack, and displays the new line
    • newt_radio_get_current — Descrição
    • newt_radiobutton — Descrição
    • newt_redraw_help_line — Descrição
    • newt_reflow_text — Descrição
    • newt_refresh — Updates modified portions of the screen
    • newt_resize_screen — Descrição
    • newt_resume — Resume using the newt interface after calling newt_suspend
    • newt_run_form — Runs a form
    • newt_scale_set — Descrição
    • newt_scale — Descrição
    • newt_scrollbar_set — Descrição
    • newt_set_help_callback — Descrição
    • newt_set_suspend_callback — Set a callback function which gets invoked when user presses the suspend key
    • newt_suspend — Tells newt to return the terminal to its initial state
    • newt_textbox_get_num_lines — Descrição
    • newt_textbox_reflowed — Descrição
    • newt_textbox_set_height — Descrição
    • newt_textbox_set_text — Descrição
    • newt_textbox — Descrição
    • newt_vertical_scrollbar — Descrição
    • newt_wait_for_key — Doesn't return until a key has been pressed
    • newt_win_choice — Descrição
    • newt_win_entries — Descrição
    • newt_win_menu — Descrição
    • newt_win_message — Descrição
    • newt_win_messagev — Descrição
    • newt_win_ternary — Descrição
Extensões Específica para Linha de Comando
Introdução
Extensões Específica para Linha de Comando


Introdução

This is a PHP language extension for RedHat Newt library, a terminal-based window and widget library for writing applications with user friendly interface. Once this extension is enabled in PHP it will provide the use of Newt widgets, such as windows, buttons, checkboxes, radiobuttons, labels, editboxes, scrolls, textareas, scales, etc. Use of this extension if very similar to the original Newt API of C programming language.

Newt
Instalação/Configuração
Newt


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Newt


Dependências

This module uses the functions of the RedHat Newt library. You need libnewt version >= 0.51.0.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/newt.

No PHP 4, os fontes desta estensão PECL podem ser encontrados no diretório ext/ ou dentro dos fontes do PHP ou no link PECL acima. In order to use these functions you must compile CGI or CLI PHP with newt support by using the --with-newt[=DIR] configure option.

Nota:

This extension is not available for Windows platform.

You may need also curses and slang libraries, in order to compile this extension. To specify locations of these libraries, use the following configuration options: --with-curses-dir=/path/to/libcurses --with-slang-dir=/path/to/libslang

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension uses two resource types: "newt component" and "newt grid".

Resource type "newt component" is returned by functions, which create common newt widgets (for example: newt_button())

Resource type "newt grid" is a special link identifier for components, returned by newt grid factory functions (for example: newt_create_grid())

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Índice

  • Newt form exit reasons
  • Newt colorsets
  • Newt argument flags
  • Newt Flags Sense
  • Newt Components Flags
  • File Descriptor Flags
  • Checkbox Tree Flags
  • Entry Flags
  • Listbox Flags
  • Textbox Flags
  • Form Flags
  • Newt Keys
  • Newt Anchors
  • Grid Flags

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
Newt form exit reasons
Newt


Newt form exit reasons

Newt form exit reasons
constant | meaning
NEWT_EXIT_HOTKEY | hotkey defined by newt_form_add_hot_key() was pressed
NEWT_EXIT_COMPONENT | some component has caused form to exit
NEWT_EXIT_FDREADY | file descriptor specified in newt_form_watch_fd() is ready to be read or written to
NEWT_EXIT_TIMER | time specified in newt_form_set_timer() has elapsed
Constantes pré-definidas
Newt colorsets
Constantes pré-definidas


Newt colorsets

Newt colorsets
constant | meaning
NEWT_COLORSET_ROOT |
NEWT_COLORSET_BORDER |
NEWT_COLORSET_WINDOW |
NEWT_COLORSET_SHADOW |
NEWT_COLORSET_TITLE |
NEWT_COLORSET_BUTTON |
NEWT_COLORSET_ACTBUTTON |
NEWT_COLORSET_CHECKBOX |
NEWT_COLORSET_ACTCHECKBOX |
NEWT_COLORSET_ENTRY |
NEWT_COLORSET_LABEL |
NEWT_COLORSET_LISTBOX |
NEWT_COLORSET_ACTLISTBOX |
NEWT_COLORSET_TEXTBOX |
NEWT_COLORSET_ACTTEXTBOX |
NEWT_COLORSET_HELPLINE |
NEWT_COLORSET_ROOTTEXT |
NEWT_COLORSET_ROOTTEXT |
NEWT_COLORSET_EMPTYSCALE |
NEWT_COLORSET_FULLSCALE |
NEWT_COLORSET_DISENTRY |
NEWT_COLORSET_COMPACTBUTTON |
NEWT_COLORSET_ACTSELLISTBOX |
NEWT_COLORSET_SELLISTBOX |
Newt form exit reasons
Newt argument flags
Constantes pré-definidas


Newt argument flags

Newt argument flags
constant | meaning
NEWT_ARG_LAST |
NEWT_ARG_APPEND |
Newt colorsets
Newt Flags Sense
Constantes pré-definidas


Newt Flags Sense

Newt Flags Sense
constant | meaning
NEWT_FLAGS_SET |
NEWT_FLAGS_RESET |
NEWT_FLAGS_TOGGLE |
Newt argument flags
Newt Components Flags
Constantes pré-definidas


Newt Components Flags

Newt Components Flags
constant | meaning
NEWT_FLAG_RETURNEXIT | Exit form, when component is activated
NEWT_FLAG_HIDDEN | Component is hidden
NEWT_FLAG_SCROLL | Component is scrollable
NEWT_FLAG_DISABLED | Component is disabled
NEWT_FLAG_BORDER |
NEWT_FLAG_WRAP | Wrap text
NEWT_FLAG_NOF12 | Don't exit form on pressing F12
NEWT_FLAG_MULTIPLE |
NEWT_FLAG_SELECTED | Component is selected
NEWT_FLAG_CHECKBOX | Component is checkbox
NEWT_FLAG_PASSWORD | Entry component is password entry
NEWT_FLAG_SHOWCURSOR | Show cursor
Newt Flags Sense
File Descriptor Flags
Constantes pré-definidas


File Descriptor Flags

File Descriptor Flags
constant | meaning
NEWT_FD_READ |
NEWT_FD_WRITE |
NEWT_FD_EXCEPT |
Newt Components Flags
Checkbox Tree Flags
Constantes pré-definidas


Checkbox Tree Flags

Checkbox Tree Flags
constant | meaning
NEWT_CHECKBOXTREE_UNSELECTABLE |
NEWT_CHECKBOXTREE_HIDE_BOX |
NEWT_CHECKBOXTREE_COLLAPSED |
NEWT_CHECKBOXTREE_EXPANDED |
NEWT_CHECKBOXTREE_UNSELECTED |
NEWT_CHECKBOXTREE_SELECTED |
File Descriptor Flags
Entry Flags
Constantes pré-definidas


Entry Flags

Entry Flags
constant | meaning
NEWT_ENTRY_SCROLL |
NEWT_ENTRY_HIDDEN |
NEWT_ENTRY_RETURNEXIT |
NEWT_ENTRY_DISABLED |
Checkbox Tree Flags
Listbox Flags
Constantes pré-definidas


Listbox Flags

Listbox Flags
constant | meaning
NEWT_LISTBOX_RETURNEXIT |
Entry Flags
Textbox Flags
Constantes pré-definidas


Textbox Flags

Textbox Flags
constant | meaning
NEWT_TEXTBOX_WRAP | Wrap text in the textbox
NEWT_TEXTBOX_SCROLL | Scroll text in the textbox
Listbox Flags
Form Flags
Constantes pré-definidas


Form Flags

Form Flags
constant | meaning
NEWT_FORM_NOF12 | Don't exit form on F12 press
Textbox Flags
Newt Keys
Constantes pré-definidas


Newt Keys

Newt Keys
constant | meaning
NEWT_KEY_TAB |
NEWT_KEY_ENTER |
NEWT_KEY_SUSPEND |
NEWT_KEY_ESCAPE |
NEWT_KEY_RETURN |
NEWT_KEY_EXTRA_BASE |
NEWT_KEY_UP |
NEWT_KEY_DOWN |
NEWT_KEY_LEFT |
NEWT_KEY_RIGHT |
NEWT_KEY_BKSPC |
NEWT_KEY_DELETE |
NEWT_KEY_HOME |
NEWT_KEY_END |
NEWT_KEY_UNTAB |
NEWT_KEY_PGUP |
NEWT_KEY_PGDN |
NEWT_KEY_INSERT |
NEWT_KEY_F1 |
NEWT_KEY_F2 |
NEWT_KEY_F3 |
NEWT_KEY_F4 |
NEWT_KEY_F5 |
NEWT_KEY_F6 |
NEWT_KEY_F7 |
NEWT_KEY_F8 |
NEWT_KEY_F9 |
NEWT_KEY_F10 |
NEWT_KEY_F11 |
NEWT_KEY_F12 |
NEWT_KEY_RESIZE |
Form Flags
Newt Anchors
Constantes pré-definidas


Newt Anchors

Newt Anchors
constant | meaning
NEWT_ANCHOR_LEFT |
NEWT_ANCHOR_RIGHT |
NEWT_ANCHOR_TOP |
NEWT_ANCHOR_BOTTOM |
Newt Keys
Grid Flags
Constantes pré-definidas


Grid Flags

Grid Flags
constant | meaning
NEWT_GRID_FLAG_GROWX |
NEWT_GRID_FLAG_GROWY |
NEWT_GRID_EMPTY |
NEWT_GRID_COMPONENT |
NEWT_GRID_SUBGRID |
Newt Anchors
Exemplos
Constantes pré-definidas


Exemplos

Índice

  • Basic usage
Grid Flags
Basic usage
Newt


Basic usage

This example is a PHP port of RedHat 'setup' utility dialog, executed in text mode.

Exemplo #1 Newt Usage Example

<?php
newt_init ();
newt_cls ();

newt_draw_root_text (0, 0, "Test Mode Setup Utility 1.12");
newt_push_help_line (null);
newt_draw_root_text (-30, 0, "(c) 1999-2002 RedHat, Inc");

newt_get_screen_size ($rows, $cols);

newt_open_window ($rows/2-17, $cols/2-10, 34, 17, "Choose a Tool");

$form = newt_form ();

$list = newt_listbox (3, 2, 10);

foreach (array (
    "Authentication configuration",
    "Firewall configuration",
    "Mouse configuration",
    "Network configuration",
    "Printer configuration",
    "System services") as $l_item)
{
    newt_listbox_add_entry ($list, $l_item, $l_item);
}

$b1 = newt_button (5, 12, "Run Tool");
$b2 = newt_button (21, 12, "Quit");

newt_form_add_component ($form, $list);
newt_form_add_components ($form, array($b1, $b2));

newt_refresh ();
newt_run_form ($form);

newt_pop_window ();
newt_pop_help_line ();
newt_finished ();
newt_form_destroy ($form);
?>
Exemplos
Newt Funções
Exemplos


Newt Funções

Índice

  • newt_bell — Send a beep to the terminal
  • newt_button_bar — This function returns a grid containing the buttons created.
  • newt_button — Create a new button
  • newt_centered_window — Open a centered window of the specified size
  • newt_checkbox_get_value — Retreives value of checkox resource
  • newt_checkbox_set_flags — Configures checkbox resource
  • newt_checkbox_set_value — Sets the value of the checkbox
  • newt_checkbox_tree_add_item — Adds new item to the checkbox tree
  • newt_checkbox_tree_find_item — Finds an item in the checkbox tree
  • newt_checkbox_tree_get_current — Returns checkbox tree selected item
  • newt_checkbox_tree_get_entry_value — Descrição
  • newt_checkbox_tree_get_multi_selection — Descrição
  • newt_checkbox_tree_get_selection — Descrição
  • newt_checkbox_tree_multi — Descrição
  • newt_checkbox_tree_set_current — Descrição
  • newt_checkbox_tree_set_entry_value — Descrição
  • newt_checkbox_tree_set_entry — Descrição
  • newt_checkbox_tree_set_width — Descrição
  • newt_checkbox_tree — Descrição
  • newt_checkbox — Descrição
  • newt_clear_key_buffer — Discards the contents of the terminal's input buffer without waiting for additional input
  • newt_cls — Descrição
  • newt_compact_button — Descrição
  • newt_component_add_callback — Descrição
  • newt_component_takes_focus — Descrição
  • newt_create_grid — Descrição
  • newt_cursor_off — Descrição
  • newt_cursor_on — Descrição
  • newt_delay — Descrição
  • newt_draw_form — Descrição
  • newt_draw_root_text — Displays the string text at the position indicated
  • newt_entry_get_value — Descrição
  • newt_entry_set_filter — Descrição
  • newt_entry_set_flags — Descrição
  • newt_entry_set — Descrição
  • newt_entry — Descrição
  • newt_finished — Uninitializes newt interface
  • newt_form_add_component — Adds a single component to the form
  • newt_form_add_components — Add several components to the form
  • newt_form_add_hot_key — Descrição
  • newt_form_destroy — Destroys a form
  • newt_form_get_current — Descrição
  • newt_form_run — Runs a form
  • newt_form_set_background — Descrição
  • newt_form_set_height — Descrição
  • newt_form_set_size — Descrição
  • newt_form_set_timer — Descrição
  • newt_form_set_width — Descrição
  • newt_form_watch_fd — Descrição
  • newt_form — Create a form
  • newt_get_screen_size — Fills in the passed references with the current size of the terminal
  • newt_grid_add_components_to_form — Descrição
  • newt_grid_basic_window — Descrição
  • newt_grid_free — Descrição
  • newt_grid_get_size — Descrição
  • newt_grid_h_close_stacked — Descrição
  • newt_grid_h_stacked — Descrição
  • newt_grid_place — Descrição
  • newt_grid_set_field — Descrição
  • newt_grid_simple_window — Descrição
  • newt_grid_v_close_stacked — Descrição
  • newt_grid_v_stacked — Descrição
  • newt_grid_wrapped_window_at — Descrição
  • newt_grid_wrapped_window — Descrição
  • newt_init — Initialize newt
  • newt_label_set_text — Descrição
  • newt_label — Descrição
  • newt_listbox_append_entry — Descrição
  • newt_listbox_clear_selection — Descrição
  • newt_listbox_clear — Descrição
  • newt_listbox_delete_entry — Descrição
  • newt_listbox_get_current — Descrição
  • newt_listbox_get_selection — Descrição
  • newt_listbox_insert_entry — Descrição
  • newt_listbox_item_count — Descrição
  • newt_listbox_select_item — Descrição
  • newt_listbox_set_current_by_key — Descrição
  • newt_listbox_set_current — Descrição
  • newt_listbox_set_data — Descrição
  • newt_listbox_set_entry — Descrição
  • newt_listbox_set_width — Descrição
  • newt_listbox — Descrição
  • newt_listitem_get_data — Descrição
  • newt_listitem_set — Descrição
  • newt_listitem — Descrição
  • newt_open_window — Open a window of the specified size and position
  • newt_pop_help_line — Replaces the current help line with the one from the stack
  • newt_pop_window — Removes the top window from the display
  • newt_push_help_line — Saves the current help line on a stack, and displays the new line
  • newt_radio_get_current — Descrição
  • newt_radiobutton — Descrição
  • newt_redraw_help_line — Descrição
  • newt_reflow_text — Descrição
  • newt_refresh — Updates modified portions of the screen
  • newt_resize_screen — Descrição
  • newt_resume — Resume using the newt interface after calling newt_suspend
  • newt_run_form — Runs a form
  • newt_scale_set — Descrição
  • newt_scale — Descrição
  • newt_scrollbar_set — Descrição
  • newt_set_help_callback — Descrição
  • newt_set_suspend_callback — Set a callback function which gets invoked when user presses the suspend key
  • newt_suspend — Tells newt to return the terminal to its initial state
  • newt_textbox_get_num_lines — Descrição
  • newt_textbox_reflowed — Descrição
  • newt_textbox_set_height — Descrição
  • newt_textbox_set_text — Descrição
  • newt_textbox — Descrição
  • newt_vertical_scrollbar — Descrição
  • newt_wait_for_key — Doesn't return until a key has been pressed
  • newt_win_choice — Descrição
  • newt_win_entries — Descrição
  • newt_win_menu — Descrição
  • newt_win_message — Descrição
  • newt_win_messagev — Descrição
  • newt_win_ternary — Descrição
Basic usage
newt_bell
Newt


Send a beep to the terminal

Newt Funções
newt_button_bar
Newt Funções
PHP Manual

newt_bell

(PECL newt >= 0.1)

newt_bell — Send a beep to the terminal

Descrição

void newt_bell ( void )

This function sends a beep to the terminal.

Nota:

Depending on the terminal's settings, this beep may or may not be audible.

Valor Retornado

Não há valor retornado.

Newt Funções
newt_button_bar
Newt Funções


This function returns a grid containing the buttons created.

newt_bell
newt_button
Newt Funções
PHP Manual

newt_button_bar

(PECL newt >= 0.1)

newt_button_bar — This function returns a grid containing the buttons created.

Descrição

resource newt_button_bar ( array &$buttons )

This function returns a grid containing the buttons created.

Parâmetros

buttons

Valor Retornado

Returns grid containing the buttons created.

newt_bell
newt_button
Newt Funções


Create a new button

newt_button_bar
newt_centered_window
Newt Funções
PHP Manual

newt_button

(PECL newt >= 0.1)

newt_button — Create a new button

Descrição

resource newt_button ( int $left , int $top , string $text )

Creates a new button.

Parâmetros

left

X-coordinate of the button.

top

Y-coordinate of the button.

text

The text which should be displayed in the button.

Valor Retornado

Returns a resource link to the created button component, or FALSE on error.

Exemplos

Exemplo #1 A newt_button() example

<?php

$form = newt_form();

$ok_button = newt_button(5, 12, "Run Tool");

newt_form_add_component($form, $ok_button);

?>

Veja Também

  • newt_button_bar() - This function returns a grid containing the buttons created.

newt_button_bar
newt_centered_window
Newt Funções


Open a centered window of the specified size

newt_button
newt_checkbox_get_value
Newt Funções
PHP Manual

newt_centered_window

(PECL newt >= 0.1)

newt_centered_window — Open a centered window of the specified size

Descrição

int newt_centered_window ( int $width , int $height [, string $title ] )

Open a centered window of the specified size.

Parâmetros

width

Window width

height

Window height

title

Window title

Valor Retornado

Undefined value.

Veja Também

  • newt_pop_window() - Removes the top window from the display
  • newt_open_window() - Open a window of the specified size and position

newt_button
newt_checkbox_get_value
Newt Funções


Retreives value of checkox resource

newt_centered_window
newt_checkbox_set_flags
Newt Funções
PHP Manual

newt_checkbox_get_value

(PECL newt >= 0.1)

newt_checkbox_get_value — Retreives value of checkox resource

Descrição

string newt_checkbox_get_value ( resource $checkbox )

This function returns the character in the sequence which indicates the current value of the checkbox.

Parâmetros

checkbox

Valor Retornado

Returns character indicating the value of the checkbox.

newt_centered_window
newt_checkbox_set_flags
Newt Funções


Configures checkbox resource

newt_checkbox_get_value
newt_checkbox_set_value
Newt Funções
PHP Manual

newt_checkbox_set_flags

(PECL newt >= 0.1)

newt_checkbox_set_flags — Configures checkbox resource

Descrição

void newt_checkbox_set_flags ( resource $checkbox , int $flags , int $sense )

This function allows to set various flags on checkbox resource.

Parâmetros

checkbox

flags

sense

Valor Retornado

Não há valor retornado.

newt_checkbox_get_value
newt_checkbox_set_value
Newt Funções


Sets the value of the checkbox

newt_checkbox_set_flags
newt_checkbox_tree_add_item
Newt Funções
PHP Manual

newt_checkbox_set_value

(PECL newt >= 0.1)

newt_checkbox_set_value — Sets the value of the checkbox

Descrição

void newt_checkbox_set_value ( resource $checkbox , string $value )

This function allows to set the current value of the checkbox resource.

Parâmetros

checkbox

value

Valor Retornado

Não há valor retornado.

newt_checkbox_set_flags
newt_checkbox_tree_add_item
Newt Funções


Adds new item to the checkbox tree

newt_checkbox_set_value
newt_checkbox_tree_find_item
Newt Funções
PHP Manual

newt_checkbox_tree_add_item

(PECL newt >= 0.1)

newt_checkbox_tree_add_item — Adds new item to the checkbox tree

Descrição

void newt_checkbox_tree_add_item ( resource $checkboxtree , string $text , mixed $data , int $flags , int $index [, int $... ] )

This function allows to add new item to the checkbox tree.

Parâmetros

checkboxtree

text

data

flags

index

Valor Retornado

Não há valor retornado.

newt_checkbox_set_value
newt_checkbox_tree_find_item
Newt Funções


Finds an item in the checkbox tree

newt_checkbox_tree_add_item
newt_checkbox_tree_get_current
Newt Funções
PHP Manual

newt_checkbox_tree_find_item

(PECL newt >= 0.1)

newt_checkbox_tree_find_item — Finds an item in the checkbox tree

Descrição

array newt_checkbox_tree_find_item ( resource $checkboxtree , mixed $data )

Finds an item in the checkbox tree by item's data.

Parâmetros

checkboxtree

data

Valor Retornado

Returns checkbox tree item resource, or NULL if it wasn't found.

newt_checkbox_tree_add_item
newt_checkbox_tree_get_current
Newt Funções


Returns checkbox tree selected item

newt_checkbox_tree_find_item
newt_checkbox_tree_get_entry_value
Newt Funções
PHP Manual

newt_checkbox_tree_get_current

(PECL newt >= 0.1)

newt_checkbox_tree_get_current — Returns checkbox tree selected item

Descrição

mixed newt_checkbox_tree_get_current ( resource $checkboxtree )

This method returns checkbox tree selected tem.

Parâmetros

checkboxtree

Valor Retornado

Returns current (selected) checkbox tree item.

newt_checkbox_tree_find_item
newt_checkbox_tree_get_entry_value
Newt Funções


newt_checkbox_tree_get_current
newt_checkbox_tree_get_multi_selection
Newt Funções
PHP Manual

newt_checkbox_tree_get_entry_value

(PECL newt >= 0.1)

newt_checkbox_tree_get_entry_value —

Descrição

string newt_checkbox_tree_get_entry_value ( resource $checkboxtree , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

data

Valor Retornado

newt_checkbox_tree_get_current
newt_checkbox_tree_get_multi_selection
Newt Funções


newt_checkbox_tree_get_entry_value
newt_checkbox_tree_get_selection
Newt Funções
PHP Manual

newt_checkbox_tree_get_multi_selection

(PECL newt >= 0.1)

newt_checkbox_tree_get_multi_selection —

Descrição

array newt_checkbox_tree_get_multi_selection ( resource $checkboxtree , string $seqnum )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

seqnum

Valor Retornado

newt_checkbox_tree_get_entry_value
newt_checkbox_tree_get_selection
Newt Funções


newt_checkbox_tree_get_multi_selection
newt_checkbox_tree_multi
Newt Funções
PHP Manual

newt_checkbox_tree_get_selection

(PECL newt >= 0.1)

newt_checkbox_tree_get_selection —

Descrição

array newt_checkbox_tree_get_selection ( resource $checkboxtree )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

Valor Retornado

newt_checkbox_tree_get_multi_selection
newt_checkbox_tree_multi
Newt Funções


newt_checkbox_tree_get_selection
newt_checkbox_tree_set_current
Newt Funções
PHP Manual

newt_checkbox_tree_multi

(PECL newt >= 0.1)

newt_checkbox_tree_multi —

Descrição

resource newt_checkbox_tree_multi ( int $left , int $top , int $height , string $seq [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

height

seq

flags

Valor Retornado

newt_checkbox_tree_get_selection
newt_checkbox_tree_set_current
Newt Funções


newt_checkbox_tree_multi
newt_checkbox_tree_set_entry_value
Newt Funções
PHP Manual

newt_checkbox_tree_set_current

(PECL newt >= 0.1)

newt_checkbox_tree_set_current —

Descrição

void newt_checkbox_tree_set_current ( resource $checkboxtree , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

data

Valor Retornado

Não há valor retornado.

newt_checkbox_tree_multi
newt_checkbox_tree_set_entry_value
Newt Funções


newt_checkbox_tree_set_current
newt_checkbox_tree_set_entry
Newt Funções
PHP Manual

newt_checkbox_tree_set_entry_value

(PECL newt >= 0.1)

newt_checkbox_tree_set_entry_value —

Descrição

void newt_checkbox_tree_set_entry_value ( resource $checkboxtree , mixed $data , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

data

value

Valor Retornado

Não há valor retornado.

newt_checkbox_tree_set_current
newt_checkbox_tree_set_entry
Newt Funções


newt_checkbox_tree_set_entry_value
newt_checkbox_tree_set_width
Newt Funções
PHP Manual

newt_checkbox_tree_set_entry

(PECL newt >= 0.1)

newt_checkbox_tree_set_entry —

Descrição

void newt_checkbox_tree_set_entry ( resource $checkboxtree , mixed $data , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkboxtree

data

text

Valor Retornado

Não há valor retornado.

newt_checkbox_tree_set_entry_value
newt_checkbox_tree_set_width
Newt Funções


newt_checkbox_tree_set_entry
newt_checkbox_tree
Newt Funções
PHP Manual

newt_checkbox_tree_set_width

(PECL newt >= 0.1)

newt_checkbox_tree_set_width —

Descrição

void newt_checkbox_tree_set_width ( resource $checkbox_tree , int $width )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

checkbox_tree

width

Valor Retornado

Não há valor retornado.

newt_checkbox_tree_set_entry
newt_checkbox_tree
Newt Funções


newt_checkbox_tree_set_width
newt_checkbox
Newt Funções
PHP Manual

newt_checkbox_tree

(PECL newt >= 0.1)

newt_checkbox_tree —

Descrição

resource newt_checkbox_tree ( int $left , int $top , int $height [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

height

flags

Valor Retornado

newt_checkbox_tree_set_width
newt_checkbox
Newt Funções


newt_checkbox_tree
newt_clear_key_buffer
Newt Funções
PHP Manual

newt_checkbox

(PECL newt >= 0.1)

newt_checkbox —

Descrição

resource newt_checkbox ( int $left , int $top , string $text , string $def_value [, string $seq ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

text

def_value

seq

Valor Retornado

newt_checkbox_tree
newt_clear_key_buffer
Newt Funções


Discards the contents of the terminal's input buffer without waiting for additional input

newt_checkbox
newt_cls
Newt Funções
PHP Manual

newt_clear_key_buffer

(PECL newt >= 0.1)

newt_clear_key_buffer — Discards the contents of the terminal's input buffer without waiting for additional input

Descrição

void newt_clear_key_buffer ( void )

Discards the contents of the terminal's input buffer without waiting for additional input.

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_wait_for_key() - Doesn't return until a key has been pressed

newt_checkbox
newt_cls
Newt Funções


newt_clear_key_buffer
newt_compact_button
Newt Funções
PHP Manual

newt_cls

(PECL newt >= 0.1)

newt_cls —

Descrição

void newt_cls ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

Não há valor retornado.

newt_clear_key_buffer
newt_compact_button
Newt Funções


newt_cls
newt_component_add_callback
Newt Funções
PHP Manual

newt_compact_button

(PECL newt >= 0.1)

newt_compact_button —

Descrição

resource newt_compact_button ( int $left , int $top , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

text

Valor Retornado

newt_cls
newt_component_add_callback
Newt Funções


newt_compact_button
newt_component_takes_focus
Newt Funções
PHP Manual

newt_component_add_callback

(PECL newt >= 0.1)

newt_component_add_callback —

Descrição

void newt_component_add_callback ( resource $component , mixed $func_name , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

component

func_name

data

Valor Retornado

Não há valor retornado.

newt_compact_button
newt_component_takes_focus
Newt Funções


newt_component_add_callback
newt_create_grid
Newt Funções
PHP Manual

newt_component_takes_focus

(PECL newt >= 0.1)

newt_component_takes_focus —

Descrição

void newt_component_takes_focus ( resource $component , bool $takes_focus )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

component

takes_focus

Valor Retornado

Não há valor retornado.

newt_component_add_callback
newt_create_grid
Newt Funções


newt_component_takes_focus
newt_cursor_off
Newt Funções
PHP Manual

newt_create_grid

(PECL newt >= 0.1)

newt_create_grid —

Descrição

resource newt_create_grid ( int $cols , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

cols

rows

Valor Retornado

newt_component_takes_focus
newt_cursor_off
Newt Funções


newt_create_grid
newt_cursor_on
Newt Funções
PHP Manual

newt_cursor_off

(PECL newt >= 0.1)

newt_cursor_off —

Descrição

void newt_cursor_off ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

Não há valor retornado.

newt_create_grid
newt_cursor_on
Newt Funções


newt_cursor_off
newt_delay
Newt Funções
PHP Manual

newt_cursor_on

(PECL newt >= 0.1)

newt_cursor_on —

Descrição

void newt_cursor_on ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

newt_cursor_off
newt_delay
Newt Funções


newt_cursor_on
newt_draw_form
Newt Funções
PHP Manual

newt_delay

(PECL newt >= 0.1)

newt_delay —

Descrição

void newt_delay ( int $microseconds )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

microseconds

Valor Retornado

Não há valor retornado.

newt_cursor_on
newt_draw_form
Newt Funções


newt_delay
newt_draw_root_text
Newt Funções
PHP Manual

newt_draw_form

(PECL newt >= 0.1)

newt_draw_form —

Descrição

void newt_draw_form ( resource $form )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

Valor Retornado

Não há valor retornado.

newt_delay
newt_draw_root_text
Newt Funções


Displays the string text at the position indicated

newt_draw_form
newt_entry_get_value
Newt Funções
PHP Manual

newt_draw_root_text

(PECL newt >= 0.1)

newt_draw_root_text — Displays the string text at the position indicated

Descrição

void newt_draw_root_text ( int $left , int $top , string $text )

Displays the string text at the position indicated.

Parâmetros

left

Column number

Nota:

If left is negative, the position is measured from the opposite side of the screen.

top

Line number

Nota:

If top is negative, the position is measured from the opposite side of the screen.

text

Text to display.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A newt_draw_root_text() example

This code demonstrates drawing of titles in the both corners of the screen.

<?php
 newt_init();
 newt_cls();

 newt_draw_root_text (2, 0, "Some root text");
 newt_refresh();
 sleep(1);

 newt_draw_root_text (-30, 0, "Root text in the other corner");
 newt_refresh();
 sleep(1);

 newt_finished();
?>

Veja Também

  • newt_push_help_line() - Saves the current help line on a stack, and displays the new line
  • newt_pop_help_line() - Replaces the current help line with the one from the stack

newt_draw_form
newt_entry_get_value
Newt Funções


newt_draw_root_text
newt_entry_set_filter
Newt Funções
PHP Manual

newt_entry_get_value

(PECL newt >= 0.1)

newt_entry_get_value —

Descrição

string newt_entry_get_value ( resource $entry )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

entry

Valor Retornado

newt_draw_root_text
newt_entry_set_filter
Newt Funções


newt_entry_get_value
newt_entry_set_flags
Newt Funções
PHP Manual

newt_entry_set_filter

(PECL newt >= 0.1)

newt_entry_set_filter —

Descrição

void newt_entry_set_filter ( resource $entry , callback $filter , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

entry

filter

data

Valor Retornado

Não há valor retornado.

newt_entry_get_value
newt_entry_set_flags
Newt Funções


newt_entry_set_filter
newt_entry_set
Newt Funções
PHP Manual

newt_entry_set_flags

(PECL newt >= 0.1)

newt_entry_set_flags —

Descrição

void newt_entry_set_flags ( resource $entry , int $flags , int $sense )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

entry

flags

sense

Valor Retornado

Não há valor retornado.

newt_entry_set_filter
newt_entry_set
Newt Funções


newt_entry_set_flags
newt_entry
Newt Funções
PHP Manual

newt_entry_set

(PECL newt >= 0.1)

newt_entry_set —

Descrição

void newt_entry_set ( resource $entry , string $value [, bool $cursor_at_end ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

entry

value

cursor_at_end

Valor Retornado

Não há valor retornado.

newt_entry_set_flags
newt_entry
Newt Funções


newt_entry_set
newt_finished
Newt Funções
PHP Manual

newt_entry

(PECL newt >= 0.1)

newt_entry —

Descrição

resource newt_entry ( int $left , int $top , int $width [, string $init_value [, int $flags ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

width

init_value

flags

Valor Retornado

newt_entry_set
newt_finished
Newt Funções


Uninitializes newt interface

newt_entry
newt_form_add_component
Newt Funções
PHP Manual

newt_finished

(PECL newt >= 0.1)

newt_finished — Uninitializes newt interface

Descrição

int newt_finished ( void )

Uninitializes newt interface. This function be called, when program is ready to exit.

Valor Retornado

Returns 1 on success, 0 on failure.

Veja Também

  • newt_init() - Initialize newt

newt_entry
newt_form_add_component
Newt Funções


Adds a single component to the form

newt_finished
newt_form_add_components
Newt Funções
PHP Manual

newt_form_add_component

(PECL newt >= 0.1)

newt_form_add_component — Adds a single component to the form

Descrição

void newt_form_add_component ( resource $form , resource $component )

Adds a single component to the form.

Parâmetros

form

Form to which component will be added

component

Component to add to the form

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A newt_form_add_component() example

<?php
$form = newt_form();

$options = array("Authentication configuration", "Firewall configuration",
"Mouse configuration", "Network configuration", "Printer configuration",
"System services");

$list = newt_listbox(3, 2, 10);

foreach ($options as $l_item) {
    newt_listbox_add_entry($list, $l_item, $l_item);
}

newt_form_add_component($form, $list);
?>

Veja Também

  • newt_form_add_components() - Add several components to the form

newt_finished
newt_form_add_components
Newt Funções


Add several components to the form

newt_form_add_component
newt_form_add_hot_key
Newt Funções
PHP Manual

newt_form_add_components

(PECL newt >= 0.1)

newt_form_add_components — Add several components to the form

Descrição

void newt_form_add_components ( resource $form , array $components )

Adds several components to the form.

Parâmetros

form

Form to which components will be added

components

Array of components to add to the form

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A newt_form_add_components() example

<?php
$form = newt_form();

$b1 = newt_button(5, 12, "Run Tool");
$b2 = newt_button(21, 12, "Quit");

newt_form_add_components($form, array($b1, $b2));
?>

Veja Também

  • newt_form_add_component() - Adds a single component to the form

newt_form_add_component
newt_form_add_hot_key
Newt Funções


newt_form_add_components
newt_form_destroy
Newt Funções
PHP Manual

newt_form_add_hot_key

(PECL newt >= 0.1)

newt_form_add_hot_key —

Descrição

void newt_form_add_hot_key ( resource $form , int $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

key

Valor Retornado

Não há valor retornado.

newt_form_add_components
newt_form_destroy
Newt Funções


Destroys a form

newt_form_add_hot_key
newt_form_get_current
Newt Funções
PHP Manual

newt_form_destroy

(PECL newt >= 0.1)

newt_form_destroy — Destroys a form

Descrição

void newt_form_destroy ( resource $form )

This function frees the memory resources used by the form and all of the components which have been added to the form (including those components which are on subforms). Once a form has been destroyed, none of the form's components can be used.

Parâmetros

form

Form component, which is going to be destroyed

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_form_run() - Runs a form
  • newt_run_form() - Runs a form

newt_form_add_hot_key
newt_form_get_current
Newt Funções


newt_form_destroy
newt_form_run
Newt Funções
PHP Manual

newt_form_get_current

(PECL newt >= 0.1)

newt_form_get_current —

Descrição

resource newt_form_get_current ( resource $form )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

Valor Retornado

newt_form_destroy
newt_form_run
Newt Funções


Runs a form

newt_form_get_current
newt_form_set_background
Newt Funções
PHP Manual

newt_form_run

(PECL newt >= 0.1)

newt_form_run — Runs a form

Descrição

void newt_form_run ( resource $form , array &$exit_struct )

This function runs the form passed to it.

Parâmetros

form

Form component

exit_struct

Array, used for returning information after running the form component. Keys and values are described in the following table:

Form Exit Structure
Index Key | Value Type | Description
reason | integer | The reason, why the form has been exited. Possible values are defined here.
watch | resource | Resource link, specified in newt_form_watch_fd()
key | integer | Hotkey
component | resource | Component, which caused the form to exit

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_run_form() - Runs a form

newt_form_get_current
newt_form_set_background
Newt Funções


newt_form_run
newt_form_set_height
Newt Funções
PHP Manual

newt_form_set_background

(PECL newt >= 0.1)

newt_form_set_background —

Descrição

void newt_form_set_background ( resource $from , int $background )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

from

background

Valor Retornado

Não há valor retornado.

newt_form_run
newt_form_set_height
Newt Funções


newt_form_set_background
newt_form_set_size
Newt Funções
PHP Manual

newt_form_set_height

(PECL newt >= 0.1)

newt_form_set_height —

Descrição

void newt_form_set_height ( resource $form , int $height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

height

Valor Retornado

Não há valor retornado.

newt_form_set_background
newt_form_set_size
Newt Funções


newt_form_set_height
newt_form_set_timer
Newt Funções
PHP Manual

newt_form_set_size

(PECL newt >= 0.1)

newt_form_set_size —

Descrição

void newt_form_set_size ( resource $form )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

Valor Retornado

Não há valor retornado.

newt_form_set_height
newt_form_set_timer
Newt Funções


newt_form_set_size
newt_form_set_width
Newt Funções
PHP Manual

newt_form_set_timer

(PECL newt >= 0.1)

newt_form_set_timer —

Descrição

void newt_form_set_timer ( resource $form , int $milliseconds )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

milliseconds

Valor Retornado

Não há valor retornado.

newt_form_set_size
newt_form_set_width
Newt Funções


newt_form_set_timer
newt_form_watch_fd
Newt Funções
PHP Manual

newt_form_set_width

(PECL newt >= 0.1)

newt_form_set_width —

Descrição

void newt_form_set_width ( resource $form , int $width )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

width

Valor Retornado

Não há valor retornado.

newt_form_set_timer
newt_form_watch_fd
Newt Funções


newt_form_set_width
newt_form
Newt Funções
PHP Manual

newt_form_watch_fd

(PECL newt >= 0.1)

newt_form_watch_fd —

Descrição

void newt_form_watch_fd ( resource $form , resource $stream [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

form

stream

flags

Valor Retornado

Não há valor retornado.

newt_form_set_width
newt_form
Newt Funções


Create a form

newt_form_watch_fd
newt_get_screen_size
Newt Funções
PHP Manual

newt_form

(PECL newt >= 0.1)

newt_form — Create a form

Descrição

resource newt_form ([ resource $vert_bar [, string $help [, int $flags ]]] )

Create a new form.

Parâmetros

vert_bar

Vertical scrollbar which should be associated with the form

help

Help text string

flags

Various flags

Valor Retornado

Returns a resource link to the created form component, or FALSE on error.

Exemplos

Exemplo #1 A newt_form() example

Displays a single button "Quit", which closes the application once it's pressed.

<?php
newt_init();
newt_cls();

$myform = newt_form();
$button = newt_button (5, 12, "Quit");

newt_form_add_component ($myform, $button);
newt_refresh ();
newt_run_form ($myform);

newt_finished ();
newt_form_destroy ($myform);
?>

Veja Também

  • newt_form_run() - Runs a form
  • newt_run_form() - Runs a form
  • newt_form_add_component() - Adds a single component to the form
  • newt_form_add_components() - Add several components to the form
  • newt_form_destroy() - Destroys a form

newt_form_watch_fd
newt_get_screen_size
Newt Funções


Fills in the passed references with the current size of the terminal

newt_form
newt_grid_add_components_to_form
Newt Funções
PHP Manual

newt_get_screen_size

(PECL newt >= 0.1)

newt_get_screen_size — Fills in the passed references with the current size of the terminal

Descrição

void newt_get_screen_size ( int &$cols , int &$rows )

Fills in the passed references with the current size of the terminal.

Parâmetros

cols

Number of columns in the terminal

rows

Number of rows in the terminal

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A newt_get_screen_size() example

This code prints out the screen size of your terminal.

<?php
 newt_init();
 newt_get_screen_size (&$cols, &$rows);
 newt_finished();

 print "Your terminal size is: {$cols}x{$rows}\n";
?>

O exemplo acima irá imprimir:

Your terminal size is: 138x47

newt_form
newt_grid_add_components_to_form
Newt Funções


newt_get_screen_size
newt_grid_basic_window
Newt Funções
PHP Manual

newt_grid_add_components_to_form

(PECL newt >= 0.1)

newt_grid_add_components_to_form —

Descrição

void newt_grid_add_components_to_form ( resource $grid , resource $form , bool $recurse )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

form

recurse

Valor Retornado

Não há valor retornado.

newt_get_screen_size
newt_grid_basic_window
Newt Funções


newt_grid_add_components_to_form
newt_grid_free
Newt Funções
PHP Manual

newt_grid_basic_window

(PECL newt >= 0.1)

newt_grid_basic_window —

Descrição

resource newt_grid_basic_window ( resource $text , resource $middle , resource $buttons )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

middle

buttons

Valor Retornado

newt_grid_add_components_to_form
newt_grid_free
Newt Funções


newt_grid_basic_window
newt_grid_get_size
Newt Funções
PHP Manual

newt_grid_free

(PECL newt >= 0.1)

newt_grid_free —

Descrição

void newt_grid_free ( resource $grid , bool $recurse )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

recurse

Valor Retornado

Não há valor retornado.

newt_grid_basic_window
newt_grid_get_size
Newt Funções


newt_grid_free
newt_grid_h_close_stacked
Newt Funções
PHP Manual

newt_grid_get_size

(PECL newt >= 0.1)

newt_grid_get_size —

Descrição

void newt_grid_get_size ( resouce $grid , int &$width , int &$height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

width

height

Valor Retornado

Não há valor retornado.

newt_grid_free
newt_grid_h_close_stacked
Newt Funções


newt_grid_get_size
newt_grid_h_stacked
Newt Funções
PHP Manual

newt_grid_h_close_stacked

(PECL newt >= 0.1)

newt_grid_h_close_stacked —

Descrição

resource newt_grid_h_close_stacked ( int $element1_type , resource $element1 [, int $... [, resource $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

element1_type

element1

Valor Retornado

newt_grid_get_size
newt_grid_h_stacked
Newt Funções


newt_grid_h_close_stacked
newt_grid_place
Newt Funções
PHP Manual

newt_grid_h_stacked

(PECL newt >= 0.1)

newt_grid_h_stacked —

Descrição

resource newt_grid_h_stacked ( int $element1_type , resource $element1 [, int $... [, resource $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

element1_type

element1

Valor Retornado

newt_grid_h_close_stacked
newt_grid_place
Newt Funções


newt_grid_h_stacked
newt_grid_set_field
Newt Funções
PHP Manual

newt_grid_place

(PECL newt >= 0.1)

newt_grid_place —

Descrição

void newt_grid_place ( resource $grid , int $left , int $top )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

left

top

Valor Retornado

Não há valor retornado.

newt_grid_h_stacked
newt_grid_set_field
Newt Funções


newt_grid_place
newt_grid_simple_window
Newt Funções
PHP Manual

newt_grid_set_field

(PECL newt >= 0.1)

newt_grid_set_field —

Descrição

void newt_grid_set_field ( resource $grid , int $col , int $row , int $type , resource $val , int $pad_left , int $pad_top , int $pad_right , int $pad_bottom , int $anchor [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

col

row

type

val

pad_left

pad_top

pad_right

pad_bottom

anchor

flags

Valor Retornado

Não há valor retornado.

newt_grid_place
newt_grid_simple_window
Newt Funções


newt_grid_set_field
newt_grid_v_close_stacked
Newt Funções
PHP Manual

newt_grid_simple_window

(PECL newt >= 0.1)

newt_grid_simple_window —

Descrição

resource newt_grid_simple_window ( resource $text , resource $middle , resource $buttons )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

middle

buttons

Valor Retornado

newt_grid_set_field
newt_grid_v_close_stacked
Newt Funções


newt_grid_simple_window
newt_grid_v_stacked
Newt Funções
PHP Manual

newt_grid_v_close_stacked

(PECL newt >= 0.1)

newt_grid_v_close_stacked —

Descrição

resource newt_grid_v_close_stacked ( int $element1_type , resource $element1 [, int $... [, resource $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

element1_type

element1

Valor Retornado

newt_grid_simple_window
newt_grid_v_stacked
Newt Funções


newt_grid_v_close_stacked
newt_grid_wrapped_window_at
Newt Funções
PHP Manual

newt_grid_v_stacked

(PECL newt >= 0.1)

newt_grid_v_stacked —

Descrição

resource newt_grid_v_stacked ( int $element1_type , resource $element1 [, int $... [, resource $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

element1_type

element1

Valor Retornado

newt_grid_v_close_stacked
newt_grid_wrapped_window_at
Newt Funções


newt_grid_v_stacked
newt_grid_wrapped_window
Newt Funções
PHP Manual

newt_grid_wrapped_window_at

(PECL newt >= 0.1)

newt_grid_wrapped_window_at —

Descrição

void newt_grid_wrapped_window_at ( resource $grid , string $title , int $left , int $top )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

title

left

top

Valor Retornado

Não há valor retornado.

newt_grid_v_stacked
newt_grid_wrapped_window
Newt Funções


newt_grid_wrapped_window_at
newt_init
Newt Funções
PHP Manual

newt_grid_wrapped_window

(PECL newt >= 0.1)

newt_grid_wrapped_window —

Descrição

void newt_grid_wrapped_window ( resource $grid , string $title )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

grid

title

Valor Retornado

Não há valor retornado.

newt_grid_wrapped_window_at
newt_init
Newt Funções


Initialize newt

newt_grid_wrapped_window
newt_label_set_text
Newt Funções
PHP Manual

newt_init

(PECL newt >= 0.1)

newt_init — Initialize newt

Descrição

int newt_init ( void )

Initializes the newt interface. This function must be called before any other newt function.

Valor Retornado

Returns 1 on success, 0 on failure.

Veja Também

  • newt_finished() - Uninitializes newt interface

newt_grid_wrapped_window
newt_label_set_text
Newt Funções


newt_init
newt_label
Newt Funções
PHP Manual

newt_label_set_text

(PECL newt >= 0.1)

newt_label_set_text —

Descrição

void newt_label_set_text ( resource $label , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

label

text

Valor Retornado

Não há valor retornado.

newt_init
newt_label
Newt Funções


newt_label_set_text
newt_listbox_append_entry
Newt Funções
PHP Manual

newt_label

(PECL newt >= 0.1)

newt_label —

Descrição

resource newt_label ( int $left , int $top , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

text

Valor Retornado

newt_label_set_text
newt_listbox_append_entry
Newt Funções


newt_label
newt_listbox_clear_selection
Newt Funções
PHP Manual

newt_listbox_append_entry

(PECL newt >= 0.1)

newt_listbox_append_entry —

Descrição

void newt_listbox_append_entry ( resource $listbox , string $text , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

text

data

Valor Retornado

Não há valor retornado.

newt_label
newt_listbox_clear_selection
Newt Funções


newt_listbox_append_entry
newt_listbox_clear
Newt Funções
PHP Manual

newt_listbox_clear_selection

(PECL newt >= 0.1)

newt_listbox_clear_selection —

Descrição

void newt_listbox_clear_selection ( resource $listbox )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

Valor Retornado

Não há valor retornado.

newt_listbox_append_entry
newt_listbox_clear
Newt Funções


newt_listbox_clear_selection
newt_listbox_delete_entry
Newt Funções
PHP Manual

newt_listbox_clear

(PECL newt >= 0.1)

newt_listbox_clear —

Descrição

void newt_listbox_clear ( resource $listobx )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listobx

Valor Retornado

Não há valor retornado.

newt_listbox_clear_selection
newt_listbox_delete_entry
Newt Funções


newt_listbox_clear
newt_listbox_get_current
Newt Funções
PHP Manual

newt_listbox_delete_entry

(PECL newt >= 0.1)

newt_listbox_delete_entry —

Descrição

void newt_listbox_delete_entry ( resource $listbox , mixed $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

key

Valor Retornado

Não há valor retornado.

newt_listbox_clear
newt_listbox_get_current
Newt Funções


newt_listbox_delete_entry
newt_listbox_get_selection
Newt Funções
PHP Manual

newt_listbox_get_current

(PECL newt >= 0.1)

newt_listbox_get_current —

Descrição

string newt_listbox_get_current ( resource $listbox )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

Valor Retornado

newt_listbox_delete_entry
newt_listbox_get_selection
Newt Funções


newt_listbox_get_current
newt_listbox_insert_entry
Newt Funções
PHP Manual

newt_listbox_get_selection

(PECL newt >= 0.1)

newt_listbox_get_selection —

Descrição

array newt_listbox_get_selection ( resource $listbox )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

Valor Retornado

newt_listbox_get_current
newt_listbox_insert_entry
Newt Funções


newt_listbox_get_selection
newt_listbox_item_count
Newt Funções
PHP Manual

newt_listbox_insert_entry

(PECL newt >= 0.1)

newt_listbox_insert_entry —

Descrição

void newt_listbox_insert_entry ( resource $listbox , string $text , mixed $data , mixed $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

text

data

key

Valor Retornado

Não há valor retornado.

newt_listbox_get_selection
newt_listbox_item_count
Newt Funções


newt_listbox_insert_entry
newt_listbox_select_item
Newt Funções
PHP Manual

newt_listbox_item_count

(PECL newt >= 0.1)

newt_listbox_item_count —

Descrição

int newt_listbox_item_count ( resource $listbox )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

Valor Retornado

newt_listbox_insert_entry
newt_listbox_select_item
Newt Funções


newt_listbox_item_count
newt_listbox_set_current_by_key
Newt Funções
PHP Manual

newt_listbox_select_item

(PECL newt >= 0.1)

newt_listbox_select_item —

Descrição

void newt_listbox_select_item ( resource $listbox , mixed $key , int $sense )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

key

sense

Valor Retornado

Não há valor retornado.

newt_listbox_item_count
newt_listbox_set_current_by_key
Newt Funções


newt_listbox_select_item
newt_listbox_set_current
Newt Funções
PHP Manual

newt_listbox_set_current_by_key

(PECL newt >= 0.1)

newt_listbox_set_current_by_key —

Descrição

void newt_listbox_set_current_by_key ( resource $listbox , mixed $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

key

Valor Retornado

Não há valor retornado.

newt_listbox_select_item
newt_listbox_set_current
Newt Funções


newt_listbox_set_current_by_key
newt_listbox_set_data
Newt Funções
PHP Manual

newt_listbox_set_current

(PECL newt >= 0.1)

newt_listbox_set_current —

Descrição

void newt_listbox_set_current ( resource $listbox , int $num )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

num

Valor Retornado

Não há valor retornado.

newt_listbox_set_current_by_key
newt_listbox_set_data
Newt Funções


newt_listbox_set_current
newt_listbox_set_entry
Newt Funções
PHP Manual

newt_listbox_set_data

(PECL newt >= 0.1)

newt_listbox_set_data —

Descrição

void newt_listbox_set_data ( resource $listbox , int $num , mixed $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

num

data

Valor Retornado

Não há valor retornado.

newt_listbox_set_current
newt_listbox_set_entry
Newt Funções


newt_listbox_set_data
newt_listbox_set_width
Newt Funções
PHP Manual

newt_listbox_set_entry

(PECL newt >= 0.1)

newt_listbox_set_entry —

Descrição

void newt_listbox_set_entry ( resource $listbox , int $num , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

num

text

Valor Retornado

Não há valor retornado.

newt_listbox_set_data
newt_listbox_set_width
Newt Funções


newt_listbox_set_entry
newt_listbox
Newt Funções
PHP Manual

newt_listbox_set_width

(PECL newt >= 0.1)

newt_listbox_set_width —

Descrição

void newt_listbox_set_width ( resource $listbox , int $width )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

listbox

width

Valor Retornado

Não há valor retornado.

newt_listbox_set_entry
newt_listbox
Newt Funções


newt_listbox_set_width
newt_listitem_get_data
Newt Funções
PHP Manual

newt_listbox

(PECL newt >= 0.1)

newt_listbox —

Descrição

resource newt_listbox ( int $left , int $top , int $height [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

height

flags

Valor Retornado

newt_listbox_set_width
newt_listitem_get_data
Newt Funções


newt_listbox
newt_listitem_set
Newt Funções
PHP Manual

newt_listitem_get_data

(PECL newt >= 0.1)

newt_listitem_get_data —

Descrição

mixed newt_listitem_get_data ( resource $item )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

item

Valor Retornado

newt_listbox
newt_listitem_set
Newt Funções


newt_listitem_get_data
newt_listitem
Newt Funções
PHP Manual

newt_listitem_set

(PECL newt >= 0.1)

newt_listitem_set —

Descrição

void newt_listitem_set ( resource $item , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

item

text

Valor Retornado

Não há valor retornado.

newt_listitem_get_data
newt_listitem
Newt Funções


newt_listitem_set
newt_open_window
Newt Funções
PHP Manual

newt_listitem

(PECL newt >= 0.1)

newt_listitem —

Descrição

resource newt_listitem ( int $left , int $top , string $text , bool $is_default , resouce $prev_item , mixed $data [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

text

is_default

prev_item

data

flags

Valor Retornado

newt_listitem_set
newt_open_window
Newt Funções


Open a window of the specified size and position

newt_listitem
newt_pop_help_line
Newt Funções
PHP Manual

newt_open_window

(PECL newt >= 0.1)

newt_open_window — Open a window of the specified size and position

Descrição

int newt_open_window ( int $left , int $top , int $width , int $height [, string $title ] )

Open a window of the specified size and position.

Parâmetros

left

Location of the upper left-hand corner of the window (column number)

top

Location of the upper left-hand corner of the window (row number)

width

Window width

height

Window height

title

Window title

Valor Retornado

Returns 1 on success, 0 on failure.

Veja Também

  • newt_pop_window() - Removes the top window from the display
  • newt_centered_window() - Open a centered window of the specified size

newt_listitem
newt_pop_help_line
Newt Funções


Replaces the current help line with the one from the stack

newt_open_window
newt_pop_window
Newt Funções
PHP Manual

newt_pop_help_line

(PECL newt >= 0.1)

newt_pop_help_line — Replaces the current help line with the one from the stack

Descrição

void newt_pop_help_line ( void )

Replaces the current help line with the one from the stack.

Nota:

It's important not to call to newt_pop_help_line() more than newt_push_help_line().

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_push_help_line() - Saves the current help line on a stack, and displays the new line

newt_open_window
newt_pop_window
Newt Funções


Removes the top window from the display

newt_pop_help_line
newt_push_help_line
Newt Funções
PHP Manual

newt_pop_window

(PECL newt >= 0.1)

newt_pop_window — Removes the top window from the display

Descrição

void newt_pop_window ( void )

Removes the top window from the display, and redraws the display areas which the window overwrote.

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_open_window() - Open a window of the specified size and position
  • newt_centered_window() - Open a centered window of the specified size

newt_pop_help_line
newt_push_help_line
Newt Funções


Saves the current help line on a stack, and displays the new line

newt_pop_window
newt_radio_get_current
Newt Funções
PHP Manual

newt_push_help_line

(PECL newt >= 0.1)

newt_push_help_line — Saves the current help line on a stack, and displays the new line

Descrição

void newt_push_help_line ([ string $text ] )

Saves the current help line on a stack, and displays the new line.

Parâmetros

text

New help text message

Nota:

If not specified, the help line is cleared.

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_pop_help_line() - Replaces the current help line with the one from the stack

newt_pop_window
newt_radio_get_current
Newt Funções


newt_push_help_line
newt_radiobutton
Newt Funções
PHP Manual

newt_radio_get_current

(PECL newt >= 0.1)

newt_radio_get_current —

Descrição

resource newt_radio_get_current ( resource $set_member )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

set_member

Valor Retornado

newt_push_help_line
newt_radiobutton
Newt Funções


newt_radio_get_current
newt_redraw_help_line
Newt Funções
PHP Manual

newt_radiobutton

(PECL newt >= 0.1)

newt_radiobutton —

Descrição

resource newt_radiobutton ( int $left , int $top , string $text , bool $is_default [, resource $prev_button ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

text

is_default

prev_button

Valor Retornado

newt_radio_get_current
newt_redraw_help_line
Newt Funções


newt_radiobutton
newt_reflow_text
Newt Funções
PHP Manual

newt_redraw_help_line

(PECL newt >= 0.1)

newt_redraw_help_line —

Descrição

void newt_redraw_help_line ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

Não há valor retornado.

newt_radiobutton
newt_reflow_text
Newt Funções


newt_redraw_help_line
newt_refresh
Newt Funções
PHP Manual

newt_reflow_text

(PECL newt >= 0.1)

newt_reflow_text —

Descrição

string newt_reflow_text ( string $text , int $width , int $flex_down , int $flex_up , int &$actual_width , int &$actual_height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

width

flex_down

flex_up

actual_width

actual_height

Valor Retornado

newt_redraw_help_line
newt_refresh
Newt Funções


Updates modified portions of the screen

newt_reflow_text
newt_resize_screen
Newt Funções
PHP Manual

newt_refresh

(PECL newt >= 0.1)

newt_refresh — Updates modified portions of the screen

Descrição

void newt_refresh ( void )

To increase performance, newt only updates the display when it needs to, not when the program tells it to write to the terminal. Applications can force newt to immediately update modified portions of the screen by calling this function.

Valor Retornado

Não há valor retornado.

newt_reflow_text
newt_resize_screen
Newt Funções


newt_refresh
newt_resume
Newt Funções
PHP Manual

newt_resize_screen

(PECL newt >= 0.1)

newt_resize_screen —

Descrição

void newt_resize_screen ([ bool $redraw ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

redraw

Valor Retornado

Não há valor retornado.

newt_refresh
newt_resume
Newt Funções


Resume using the newt interface after calling newt_suspend

newt_resize_screen
newt_run_form
Newt Funções
PHP Manual

newt_resume

(PECL newt >= 0.1)

newt_resume — Resume using the newt interface after calling newt_suspend()

Descrição

void newt_resume ( void )

Resume using the newt interface after calling newt_suspend().

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_suspend() - Tells newt to return the terminal to its initial state

newt_resize_screen
newt_run_form
Newt Funções


Runs a form

newt_resume
newt_scale_set
Newt Funções
PHP Manual

newt_run_form

(PECL newt >= 0.1)

newt_run_form — Runs a form

Descrição

resource newt_run_form ( resource $form )

This function runs the form passed to it.

Parâmetros

form

Form component

Valor Retornado

The component which caused the form to stop running.

Nota:

Notice that this function doesn't fit in with newt's normal naming convention. It is an older interface which will not work for all forms. It was left in newt only for legacy applications. It is a simpler interface than the new newt_form_run() though, and is still used quite often as a result. When an application is done with a form, it destroys the form and all of the components the form contains.

Veja Também

  • newt_form_run() - Runs a form
  • newt_form_destroy() - Destroys a form

newt_resume
newt_scale_set
Newt Funções


newt_run_form
newt_scale
Newt Funções
PHP Manual

newt_scale_set

(PECL newt >= 0.1)

newt_scale_set —

Descrição

void newt_scale_set ( resource $scale , int $amount )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scale

amount

Valor Retornado

Não há valor retornado.

newt_run_form
newt_scale
Newt Funções


newt_scale_set
newt_scrollbar_set
Newt Funções
PHP Manual

newt_scale

(PECL newt >= 0.1)

newt_scale —

Descrição

resource newt_scale ( int $left , int $top , int $width , int $full_value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

width

full_value

Valor Retornado

newt_scale_set
newt_scrollbar_set
Newt Funções


newt_scale
newt_set_help_callback
Newt Funções
PHP Manual

newt_scrollbar_set

(PECL newt >= 0.1)

newt_scrollbar_set —

Descrição

void newt_scrollbar_set ( resource $scrollbar , int $where , int $total )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scrollbar

where

total

Valor Retornado

Não há valor retornado.

newt_scale
newt_set_help_callback
Newt Funções


newt_scrollbar_set
newt_set_suspend_callback
Newt Funções
PHP Manual

newt_set_help_callback

(PECL newt >= 0.1)

newt_set_help_callback —

Descrição

void newt_set_help_callback ( mixed $function )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

function

Valor Retornado

Não há valor retornado.

newt_scrollbar_set
newt_set_suspend_callback
Newt Funções


Set a callback function which gets invoked when user presses the suspend key

newt_set_help_callback
newt_suspend
Newt Funções
PHP Manual

newt_set_suspend_callback

(PECL newt >= 0.1)

newt_set_suspend_callback — Set a callback function which gets invoked when user presses the suspend key

Descrição

void newt_set_suspend_callback ( callback $function , mixed $data )

Set a callback function which gets invoked when user presses the suspend key (normally ^Z). If no suspend callback is registered, the suspend keystroke is ignored.

Parâmetros

function

A callback function, which accepts one argument: data

data

This data is been passed to the callback function

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_suspend() - Tells newt to return the terminal to its initial state
  • newt_resume() - Resume using the newt interface after calling newt_suspend

newt_set_help_callback
newt_suspend
Newt Funções


Tells newt to return the terminal to its initial state

newt_set_suspend_callback
newt_textbox_get_num_lines
Newt Funções
PHP Manual

newt_suspend

(PECL newt >= 0.1)

newt_suspend — Tells newt to return the terminal to its initial state

Descrição

void newt_suspend ( void )

Tells newt to return the terminal to its initial state. Once this is done, the application can suspend itself (by sending itself a SIGTSTP, fork a child program, or do whatever else it likes).

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_resume() - Resume using the newt interface after calling newt_suspend

newt_set_suspend_callback
newt_textbox_get_num_lines
Newt Funções


newt_suspend
newt_textbox_reflowed
Newt Funções
PHP Manual

newt_textbox_get_num_lines

(PECL newt >= 0.1)

newt_textbox_get_num_lines —

Descrição

int newt_textbox_get_num_lines ( resource $textbox )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

textbox

Valor Retornado

newt_suspend
newt_textbox_reflowed
Newt Funções


newt_textbox_get_num_lines
newt_textbox_set_height
Newt Funções
PHP Manual

newt_textbox_reflowed

(PECL newt >= 0.1)

newt_textbox_reflowed —

Descrição

resource newt_textbox_reflowed ( int $left , int $top , char $*text , int $width , int $flex_down , int $flex_up [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

*text

width

flex_down

flex_up

flags

Valor Retornado

newt_textbox_get_num_lines
newt_textbox_set_height
Newt Funções


newt_textbox_reflowed
newt_textbox_set_text
Newt Funções
PHP Manual

newt_textbox_set_height

(PECL newt >= 0.1)

newt_textbox_set_height —

Descrição

void newt_textbox_set_height ( resource $textbox , int $height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

textbox

height

Valor Retornado

Não há valor retornado.

newt_textbox_reflowed
newt_textbox_set_text
Newt Funções


newt_textbox_set_height
newt_textbox
Newt Funções
PHP Manual

newt_textbox_set_text

(PECL newt >= 0.1)

newt_textbox_set_text —

Descrição

void newt_textbox_set_text ( resource $textbox , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

textbox

text

Valor Retornado

Não há valor retornado.

newt_textbox_set_height
newt_textbox
Newt Funções


newt_textbox_set_text
newt_vertical_scrollbar
Newt Funções
PHP Manual

newt_textbox

(PECL newt >= 0.1)

newt_textbox —

Descrição

resource newt_textbox ( int $left , int $top , int $width , int $height [, int $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

width

height

flags

Valor Retornado

newt_textbox_set_text
newt_vertical_scrollbar
Newt Funções


newt_textbox
newt_wait_for_key
Newt Funções
PHP Manual

newt_vertical_scrollbar

(PECL newt >= 0.1)

newt_vertical_scrollbar —

Descrição

resource newt_vertical_scrollbar ( int $left , int $top , int $height [, int $normal_colorset [, int $thumb_colorset ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

left

top

height

normal_colorset

thumb_colorset

Valor Retornado

newt_textbox
newt_wait_for_key
Newt Funções


Doesn't return until a key has been pressed

newt_vertical_scrollbar
newt_win_choice
Newt Funções
PHP Manual

newt_wait_for_key

(PECL newt >= 0.1)

newt_wait_for_key — Doesn't return until a key has been pressed

Descrição

void newt_wait_for_key ( void )

This function doesn't return until a key has been pressed. The keystroke is then ignored. If a key is already in the terminal's buffer, this function discards a keystroke and returns immediately.

Valor Retornado

Não há valor retornado.

Veja Também

  • newt_clear_key_buffer() - Discards the contents of the terminal's input buffer without waiting for additional input

newt_vertical_scrollbar
newt_win_choice
Newt Funções


newt_wait_for_key
newt_win_entries
Newt Funções
PHP Manual

newt_win_choice

(PECL newt >= 0.1)

newt_win_choice —

Descrição

int newt_win_choice ( string $title , string $button1_text , string $button2_text , string $format [, mixed $args [, mixed $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

button1_text

button2_text

format

args

Valor Retornado

newt_wait_for_key
newt_win_entries
Newt Funções


newt_win_choice
newt_win_menu
Newt Funções
PHP Manual

newt_win_entries

(PECL newt >= 0.1)

newt_win_entries —

Descrição

int newt_win_entries ( string $title , string $text , int $suggested_width , int $flex_down , int $flex_up , int $data_width , array &$items , string $button1 [, string $... ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

text

suggested_width

flex_down

flex_up

data_width

items

button1

button2

Valor Retornado

Exemplos

Exemplo #1 A newt_win_entries() example

<?php

newt_init();
newt_cls();

$entries[] = array('text' => 'First name:', 'value' => &$f_name);
$entries[] = array('text' => 'Last name:',  'value' => &$l_name);

$rc = newt_win_entries("User information", "Please enter your credentials:", 50, 7, 7, 30, $entries, "Ok", "Back");
newt_finished ();

if ($rc != 2) {
    echo "Your name is: $f_name $l_name\n";
}
?>

newt_win_choice
newt_win_menu
Newt Funções


newt_win_entries
newt_win_message
Newt Funções
PHP Manual

newt_win_menu

(PECL newt >= 0.1)

newt_win_menu —

Descrição

int newt_win_menu ( string $title , string $text , int $suggestedWidth , int $flexDown , int $flexUp , int $maxListHeight , array $items , int &$listItem [, string $button1 [, string $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

text

suggestedWidth

flexDown

flexUp

maxListHeight

items

listItem

button1

Valor Retornado

Não há valor retornado.

newt_win_entries
newt_win_message
Newt Funções


newt_win_menu
newt_win_messagev
Newt Funções
PHP Manual

newt_win_message

(PECL newt >= 0.1)

newt_win_message —

Descrição

void newt_win_message ( string $title , string $button_text , string $format [, mixed $args [, mixed $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

button_text

format

args

Valor Retornado

Não há valor retornado.

newt_win_menu
newt_win_messagev
Newt Funções


newt_win_message
newt_win_ternary
Newt Funções
PHP Manual

newt_win_messagev

(PECL newt >= 0.1)

newt_win_messagev —

Descrição

void newt_win_messagev ( string $title , string $button_text , string $format , array $args )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

button_text

format

args

Valor Retornado

Não há valor retornado.

newt_win_message
newt_win_ternary
Newt Funções


newt_win_messagev
Ncurses
Newt Funções
PHP Manual

newt_win_ternary

(PECL newt >= 0.1)

newt_win_ternary —

Descrição

int newt_win_ternary ( string $title , string $button1_text , string $button2_text , string $button3_text , string $format [, mixed $args [, mixed $... ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

title

Its description

button1_text

Its description

button2_text

Its description

button3_text

Its description

format

Its description

args

Its description

Valor Retornado

What the function returns, first on success, then on failure. See also the &return.success; entity

newt_win_messagev
Ncurses
Newt Funções


Ncurses Terminal Screen Control

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • Error codes
    • Colors
    • Keys
    • Mouse
  • Ncurses Funções
    • ncurses_addch — Add character at current position and advance cursor
    • ncurses_addchnstr — Add attributed string with specified length at current position
    • ncurses_addchstr — Add attributed string at current position
    • ncurses_addnstr — Add string with specified length at current position
    • ncurses_addstr — Output text at current position
    • ncurses_assume_default_colors — Define default colors for color 0
    • ncurses_attroff — Turn off the given attributes
    • ncurses_attron — Turn on the given attributes
    • ncurses_attrset — Set given attributes
    • ncurses_baudrate — Returns baudrate of terminal
    • ncurses_beep — Let the terminal beep
    • ncurses_bkgd — Set background property for terminal screen
    • ncurses_bkgdset — Control screen background
    • ncurses_border — Draw a border around the screen using attributed characters
    • ncurses_bottom_panel — Moves a visible panel to the bottom of the stack
    • ncurses_can_change_color — Checks if terminal color definitions can be changed
    • ncurses_cbreak — Switch of input buffering
    • ncurses_clear — Clear screen
    • ncurses_clrtobot — Clear screen from current position to bottom
    • ncurses_clrtoeol — Clear screen from current position to end of line
    • ncurses_color_content — Retrieves RGB components of a color
    • ncurses_color_set — Set active foreground and background colors
    • ncurses_curs_set — Set cursor state
    • ncurses_def_prog_mode — Saves terminals (program) mode
    • ncurses_def_shell_mode — Saves terminals (shell) mode
    • ncurses_define_key — Define a keycode
    • ncurses_del_panel — Remove panel from the stack and delete it (but not the associated window)
    • ncurses_delay_output — Delay output on terminal using padding characters
    • ncurses_delch — Delete character at current position, move rest of line left
    • ncurses_deleteln — Delete line at current position, move rest of screen up
    • ncurses_delwin — Delete a ncurses window
    • ncurses_doupdate — Write all prepared refreshes to terminal
    • ncurses_echo — Activate keyboard input echo
    • ncurses_echochar — Single character output including refresh
    • ncurses_end — Stop using ncurses, clean up the screen
    • ncurses_erase — Erase terminal screen
    • ncurses_erasechar — Returns current erase character
    • ncurses_filter — Set LINES for iniscr() and newterm() to 1
    • ncurses_flash — Flash terminal screen (visual bell)
    • ncurses_flushinp — Flush keyboard input buffer
    • ncurses_getch — Read a character from keyboard
    • ncurses_getmaxyx — Returns the size of a window
    • ncurses_getmouse — Reads mouse event
    • ncurses_getyx — Returns the current cursor position for a window
    • ncurses_halfdelay — Put terminal into halfdelay mode
    • ncurses_has_colors — Checks if terminal has color capabilities
    • ncurses_has_ic — Check for insert- and delete-capabilities
    • ncurses_has_il — Check for line insert- and delete-capabilities
    • ncurses_has_key — Check for presence of a function key on terminal keyboard
    • ncurses_hide_panel — Remove panel from the stack, making it invisible
    • ncurses_hline — Draw a horizontal line at current position using an attributed character and max. n characters long
    • ncurses_inch — Get character and attribute at current position
    • ncurses_init_color — Define a terminal color
    • ncurses_init_pair — Define a color pair
    • ncurses_init — Initialize ncurses
    • ncurses_insch — Insert character moving rest of line including character at current position
    • ncurses_insdelln — Insert lines before current line scrolling down (negative numbers delete and scroll up)
    • ncurses_insertln — Insert a line, move rest of screen down
    • ncurses_insstr — Insert string at current position, moving rest of line right
    • ncurses_instr — Reads string from terminal screen
    • ncurses_isendwin — Ncurses is in endwin mode, normal screen output may be performed
    • ncurses_keyok — Enable or disable a keycode
    • ncurses_keypad — Turns keypad on or off
    • ncurses_killchar — Returns current line kill character
    • ncurses_longname — Returns terminals description
    • ncurses_meta — Enables/Disable 8-bit meta key information
    • ncurses_mouse_trafo — Transforms coordinates
    • ncurses_mouseinterval — Set timeout for mouse button clicks
    • ncurses_mousemask — Sets mouse options
    • ncurses_move_panel — Moves a panel so that its upper-left corner is at [startx, starty]
    • ncurses_move — Move output position
    • ncurses_mvaddch — Move current position and add character
    • ncurses_mvaddchnstr — Move position and add attributed string with specified length
    • ncurses_mvaddchstr — Move position and add attributed string
    • ncurses_mvaddnstr — Move position and add string with specified length
    • ncurses_mvaddstr — Move position and add string
    • ncurses_mvcur — Move cursor immediately
    • ncurses_mvdelch — Move position and delete character, shift rest of line left
    • ncurses_mvgetch — Move position and get character at new position
    • ncurses_mvhline — Set new position and draw a horizontal line using an attributed character and max. n characters long
    • ncurses_mvinch — Move position and get attributed character at new position
    • ncurses_mvvline — Set new position and draw a vertical line using an attributed character and max. n characters long
    • ncurses_mvwaddstr — Add string at new position in window
    • ncurses_napms — Sleep
    • ncurses_new_panel — Create a new panel and associate it with window
    • ncurses_newpad — Creates a new pad (window)
    • ncurses_newwin — Create a new window
    • ncurses_nl — Translate newline and carriage return / line feed
    • ncurses_nocbreak — Switch terminal to cooked mode
    • ncurses_noecho — Switch off keyboard input echo
    • ncurses_nonl — Do not translate newline and carriage return / line feed
    • ncurses_noqiflush — Do not flush on signal characters
    • ncurses_noraw — Switch terminal out of raw mode
    • ncurses_pair_content — Retrieves foreground and background colors of a color pair
    • ncurses_panel_above — Returns the panel above panel
    • ncurses_panel_below — Returns the panel below panel
    • ncurses_panel_window — Returns the window associated with panel
    • ncurses_pnoutrefresh — Copies a region from a pad into the virtual screen
    • ncurses_prefresh — Copies a region from a pad into the virtual screen
    • ncurses_putp — Apply padding information to the string and output it
    • ncurses_qiflush — Flush on signal characters
    • ncurses_raw — Switch terminal into raw mode
    • ncurses_refresh — Refresh screen
    • ncurses_replace_panel — Replaces the window associated with panel
    • ncurses_reset_prog_mode — Resets the prog mode saved by def_prog_mode
    • ncurses_reset_shell_mode — Resets the shell mode saved by def_shell_mode
    • ncurses_resetty — Restores saved terminal state
    • ncurses_savetty — Saves terminal state
    • ncurses_scr_dump — Dump screen content to file
    • ncurses_scr_init — Initialize screen from file dump
    • ncurses_scr_restore — Restore screen from file dump
    • ncurses_scr_set — Inherit screen from file dump
    • ncurses_scrl — Scroll window content up or down without changing current position
    • ncurses_show_panel — Places an invisible panel on top of the stack, making it visible
    • ncurses_slk_attr — Returns current soft label key attribute
    • ncurses_slk_attroff — Turn off the given attributes for soft function-key labels
    • ncurses_slk_attron — Turn on the given attributes for soft function-key labels
    • ncurses_slk_attrset — Set given attributes for soft function-key labels
    • ncurses_slk_clear — Clears soft labels from screen
    • ncurses_slk_color — Sets color for soft label keys
    • ncurses_slk_init — Initializes soft label key functions
    • ncurses_slk_noutrefresh — Copies soft label keys to virtual screen
    • ncurses_slk_refresh — Copies soft label keys to screen
    • ncurses_slk_restore — Restores soft label keys
    • ncurses_slk_set — Sets function key labels
    • ncurses_slk_touch — Forces output when ncurses_slk_noutrefresh is performed
    • ncurses_standend — Stop using 'standout' attribute
    • ncurses_standout — Start using 'standout' attribute
    • ncurses_start_color — Initializes color functionality
    • ncurses_termattrs — Returns a logical OR of all attribute flags supported by terminal
    • ncurses_termname — Returns terminals (short)-name
    • ncurses_timeout — Set timeout for special key sequences
    • ncurses_top_panel — Moves a visible panel to the top of the stack
    • ncurses_typeahead — Specify different filedescriptor for typeahead checking
    • ncurses_ungetch — Put a character back into the input stream
    • ncurses_ungetmouse — Pushes mouse event to queue
    • ncurses_update_panels — Refreshes the virtual screen to reflect the relations between panels in the stack
    • ncurses_use_default_colors — Assign terminal default colors to color id -1
    • ncurses_use_env — Control use of environment information about terminal size
    • ncurses_use_extended_names — Control use of extended names in terminfo descriptions
    • ncurses_vidattr — Display the string on the terminal in the video attribute mode
    • ncurses_vline — Draw a vertical line at current position using an attributed character and max. n characters long
    • ncurses_waddch — Adds character at current position in a window and advance cursor
    • ncurses_waddstr — Outputs text at current postion in window
    • ncurses_wattroff — Turns off attributes for a window
    • ncurses_wattron — Turns on attributes for a window
    • ncurses_wattrset — Set the attributes for a window
    • ncurses_wborder — Draws a border around the window using attributed characters
    • ncurses_wclear — Clears window
    • ncurses_wcolor_set — Sets windows color pairings
    • ncurses_werase — Erase window contents
    • ncurses_wgetch — Reads a character from keyboard (window)
    • ncurses_whline — Draws a horizontal line in a window at current position using an attributed character and max. n characters long
    • ncurses_wmouse_trafo — Transforms window/stdscr coordinates
    • ncurses_wmove — Moves windows output position
    • ncurses_wnoutrefresh — Copies window to virtual screen
    • ncurses_wrefresh — Refresh window on terminal screen
    • ncurses_wstandend — End standout mode for a window
    • ncurses_wstandout — Enter standout mode for a window
    • ncurses_wvline — Draws a vertical line in a window at current position using an attributed character and max. n characters long
newt_win_ternary
Introdução
Extensões Específica para Linha de Comando


Introdução

ncurses (new curses) is a free software emulation of curses in System V Rel 4.0 (and above). It uses terminfo format, supports pads, colors, multiple highlights, form characters and function key mapping. Because of the interactive nature of this library, it will be of little use for writing Web applications, but may be useful when writing scripts meant using PHP from the command line.

The features available, such as colors, depend on the terminal that you are using. Use functions such as ncurses_has_colors(), ncurses_can_change_color(), and ncurses_has_ic() to check for individual capabilities.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0.

ncurses is available for the following platforms:

  • AIX
  • BeOS
  • BSD variants (FreeBSD, NetBSD, OpenBSD)
  • Cygwin
  • Digital Unix (aka OSF1)
  • GNU/Linux
  • HPUX
  • IRIX64
  • Mac OS X
  • OS/2
  • QNX
  • SCO OpenServer
  • Solaris
  • Tru64

Ncurses
Instalação/Configuração
Ncurses


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Ncurses


Dependências

You need the ncurses libraries and headerfiles. Download the latest version from the » ftp://ftp.gnu.org/pub/gnu/ncurses/ or from an other GNU-Mirror.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ncurses.

Wide character CRT screen handling (ncursesw) support was added in version 1.0.1 of this PECL extension.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines window, panel and pad resources.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Índice

  • Error codes
  • Colors
  • Keys
  • Mouse

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
Error codes
Ncurses


Error codes

On error ncurses functions return -1. Some functions return 0 on success. See the relevant pages in the documentation for actual return values.

Constantes pré-definidas
Colors
Constantes pré-definidas


Colors

ncurses color constants
constant | meaning
NCURSES_COLOR_BLACK | no color (black)
NCURSES_COLOR_WHITE | white
NCURSES_COLOR_RED | red - supported when terminal is in color mode
NCURSES_COLOR_GREEN | green - supported when terminal is in color mode
NCURSES_COLOR_YELLOW | yellow - supported when terminal is in color mode
NCURSES_COLOR_BLUE | blue - supported when terminal is in color mode
NCURSES_COLOR_CYAN | cyan - supported when terminal is in color mode
NCURSES_COLOR_MAGENTA | magenta - supported when terminal is in color mode
Error codes
Keys
Constantes pré-definidas


Keys

ncurses key constants
constant | meaning
NCURSES_KEY_F0 - NCURSES_KEY_F64 | function keys F1 - F64
NCURSES_KEY_DOWN | down arrow
NCURSES_KEY_UP | up arrow
NCURSES_KEY_LEFT | left arrow
NCURSES_KEY_RIGHT | right arrow
NCURSES_KEY_HOME | home key (upward+left arrow)
NCURSES_KEY_BACKSPACE | backspace
NCURSES_KEY_DL | delete line
NCURSES_KEY_IL | insert line
NCURSES_KEY_DC | delete character
NCURSES_KEY_IC | insert char or enter insert mode
NCURSES_KEY_EIC | exit insert char mode
NCURSES_KEY_CLEAR | clear screen
NCURSES_KEY_EOS | clear to end of screen
NCURSES_KEY_EOL | clear to end of line
NCURSES_KEY_SF | scroll one line forward
NCURSES_KEY_SR | scroll one line backward
NCURSES_KEY_NPAGE | next page
NCURSES_KEY_PPAGE | previous page
NCURSES_KEY_STAB | set tab
NCURSES_KEY_CTAB | clear tab
NCURSES_KEY_CATAB | clear all tabs
NCURSES_KEY_SRESET | soft (partial) reset
NCURSES_KEY_RESET | reset or hard reset
NCURSES_KEY_PRINT | print
NCURSES_KEY_LL | lower left
NCURSES_KEY_A1 | upper left of keypad
NCURSES_KEY_A3 | upper right of keypad
NCURSES_KEY_B2 | center of keypad
NCURSES_KEY_C1 | lower left of keypad
NCURSES_KEY_C3 | lower right of keypad
NCURSES_KEY_BTAB | back tab
NCURSES_KEY_BEG | beginning
NCURSES_KEY_CANCEL | cancel
NCURSES_KEY_CLOSE | close
NCURSES_KEY_COMMAND | cmd (command)
NCURSES_KEY_COPY | copy
NCURSES_KEY_CREATE | create
NCURSES_KEY_END | end
NCURSES_KEY_EXIT | exit
NCURSES_KEY_FIND | find
NCURSES_KEY_HELP | help
NCURSES_KEY_MARK | mark
NCURSES_KEY_MESSAGE | message
NCURSES_KEY_MOVE | move
NCURSES_KEY_NEXT | next
NCURSES_KEY_OPEN | open
NCURSES_KEY_OPTIONS | options
NCURSES_KEY_PREVIOUS | previous
NCURSES_KEY_REDO | redo
NCURSES_KEY_REFERENCE | ref (reference)
NCURSES_KEY_REFRESH | refresh
NCURSES_KEY_REPLACE | replace
NCURSES_KEY_RESTART | restart
NCURSES_KEY_RESUME | resume
NCURSES_KEY_SAVE | save
NCURSES_KEY_SBEG | shiftet beg (beginning)
NCURSES_KEY_SCANCEL | shifted cancel
NCURSES_KEY_SCOMMAND | shifted command
NCURSES_KEY_SCOPY | shifted copy
NCURSES_KEY_SCREATE | shifted create
NCURSES_KEY_SDC | shifted delete char
NCURSES_KEY_SDL | shifted delete line
NCURSES_KEY_SELECT | select
NCURSES_KEY_SEND | shifted end
NCURSES_KEY_SEOL | shifted end of line
NCURSES_KEY_SEXIT | shifted exit
NCURSES_KEY_SFIND | shifted find
NCURSES_KEY_SHELP | shifted help
NCURSES_KEY_SHOME | shifted home
NCURSES_KEY_SIC | shifted input
NCURSES_KEY_SLEFT | shifted left arrow
NCURSES_KEY_SMESSAGE | shifted message
NCURSES_KEY_SMOVE | shifted move
NCURSES_KEY_SNEXT | shifted next
NCURSES_KEY_SOPTIONS | shifted options
NCURSES_KEY_SPREVIOUS | shifted previous
NCURSES_KEY_SPRINT | shifted print
NCURSES_KEY_SREDO | shifted redo
NCURSES_KEY_SREPLACE | shifted replace
NCURSES_KEY_SRIGHT | shifted right arrow
NCURSES_KEY_SRSUME | shifted resume
NCURSES_KEY_SSAVE | shifted save
NCURSES_KEY_SSUSPEND | shifted suspend
NCURSES_KEY_UNDO | undo
NCURSES_KEY_MOUSE | mouse event has occurred
NCURSES_KEY_MAX | maximum key value
Colors
Mouse
Constantes pré-definidas


Mouse

mouse constants
Constant | meaning
NCURSES_BUTTON1_RELEASED - NCURSES_BUTTON4_RELEASED | button (1-4) released
NCURSES_BUTTON1_PRESSED - NCURSES_BUTTON4_PRESSED | button (1-4) pressed
NCURSES_BUTTON1_CLICKED - NCURSES_BUTTON4_CLICKED | button (1-4) clicked
NCURSES_BUTTON1_DOUBLE_CLICKED - NCURSES_BUTTON4_DOUBLE_CLICKED | button (1-4) double clicked
NCURSES_BUTTON1_TRIPLE_CLICKED - NCURSES_BUTTON4_TRIPLE_CLICKED | button (1-4) triple clicked
NCURSES_BUTTON_CTRL | ctrl pressed during click
NCURSES_BUTTON_SHIFT | shift pressed during click
NCURSES_BUTTON_ALT | alt pressed during click
NCURSES_ALL_MOUSE_EVENTS | report all mouse events
NCURSES_REPORT_MOUSE_POSITION | report mouse position
Keys
Ncurses Funções
Constantes pré-definidas


Ncurses Funções

Índice

  • ncurses_addch — Add character at current position and advance cursor
  • ncurses_addchnstr — Add attributed string with specified length at current position
  • ncurses_addchstr — Add attributed string at current position
  • ncurses_addnstr — Add string with specified length at current position
  • ncurses_addstr — Output text at current position
  • ncurses_assume_default_colors — Define default colors for color 0
  • ncurses_attroff — Turn off the given attributes
  • ncurses_attron — Turn on the given attributes
  • ncurses_attrset — Set given attributes
  • ncurses_baudrate — Returns baudrate of terminal
  • ncurses_beep — Let the terminal beep
  • ncurses_bkgd — Set background property for terminal screen
  • ncurses_bkgdset — Control screen background
  • ncurses_border — Draw a border around the screen using attributed characters
  • ncurses_bottom_panel — Moves a visible panel to the bottom of the stack
  • ncurses_can_change_color — Checks if terminal color definitions can be changed
  • ncurses_cbreak — Switch of input buffering
  • ncurses_clear — Clear screen
  • ncurses_clrtobot — Clear screen from current position to bottom
  • ncurses_clrtoeol — Clear screen from current position to end of line
  • ncurses_color_content — Retrieves RGB components of a color
  • ncurses_color_set — Set active foreground and background colors
  • ncurses_curs_set — Set cursor state
  • ncurses_def_prog_mode — Saves terminals (program) mode
  • ncurses_def_shell_mode — Saves terminals (shell) mode
  • ncurses_define_key — Define a keycode
  • ncurses_del_panel — Remove panel from the stack and delete it (but not the associated window)
  • ncurses_delay_output — Delay output on terminal using padding characters
  • ncurses_delch — Delete character at current position, move rest of line left
  • ncurses_deleteln — Delete line at current position, move rest of screen up
  • ncurses_delwin — Delete a ncurses window
  • ncurses_doupdate — Write all prepared refreshes to terminal
  • ncurses_echo — Activate keyboard input echo
  • ncurses_echochar — Single character output including refresh
  • ncurses_end — Stop using ncurses, clean up the screen
  • ncurses_erase — Erase terminal screen
  • ncurses_erasechar — Returns current erase character
  • ncurses_filter — Set LINES for iniscr() and newterm() to 1
  • ncurses_flash — Flash terminal screen (visual bell)
  • ncurses_flushinp — Flush keyboard input buffer
  • ncurses_getch — Read a character from keyboard
  • ncurses_getmaxyx — Returns the size of a window
  • ncurses_getmouse — Reads mouse event
  • ncurses_getyx — Returns the current cursor position for a window
  • ncurses_halfdelay — Put terminal into halfdelay mode
  • ncurses_has_colors — Checks if terminal has color capabilities
  • ncurses_has_ic — Check for insert- and delete-capabilities
  • ncurses_has_il — Check for line insert- and delete-capabilities
  • ncurses_has_key — Check for presence of a function key on terminal keyboard
  • ncurses_hide_panel — Remove panel from the stack, making it invisible
  • ncurses_hline — Draw a horizontal line at current position using an attributed character and max. n characters long
  • ncurses_inch — Get character and attribute at current position
  • ncurses_init_color — Define a terminal color
  • ncurses_init_pair — Define a color pair
  • ncurses_init — Initialize ncurses
  • ncurses_insch — Insert character moving rest of line including character at current position
  • ncurses_insdelln — Insert lines before current line scrolling down (negative numbers delete and scroll up)
  • ncurses_insertln — Insert a line, move rest of screen down
  • ncurses_insstr — Insert string at current position, moving rest of line right
  • ncurses_instr — Reads string from terminal screen
  • ncurses_isendwin — Ncurses is in endwin mode, normal screen output may be performed
  • ncurses_keyok — Enable or disable a keycode
  • ncurses_keypad — Turns keypad on or off
  • ncurses_killchar — Returns current line kill character
  • ncurses_longname — Returns terminals description
  • ncurses_meta — Enables/Disable 8-bit meta key information
  • ncurses_mouse_trafo — Transforms coordinates
  • ncurses_mouseinterval — Set timeout for mouse button clicks
  • ncurses_mousemask — Sets mouse options
  • ncurses_move_panel — Moves a panel so that its upper-left corner is at [startx, starty]
  • ncurses_move — Move output position
  • ncurses_mvaddch — Move current position and add character
  • ncurses_mvaddchnstr — Move position and add attributed string with specified length
  • ncurses_mvaddchstr — Move position and add attributed string
  • ncurses_mvaddnstr — Move position and add string with specified length
  • ncurses_mvaddstr — Move position and add string
  • ncurses_mvcur — Move cursor immediately
  • ncurses_mvdelch — Move position and delete character, shift rest of line left
  • ncurses_mvgetch — Move position and get character at new position
  • ncurses_mvhline — Set new position and draw a horizontal line using an attributed character and max. n characters long
  • ncurses_mvinch — Move position and get attributed character at new position
  • ncurses_mvvline — Set new position and draw a vertical line using an attributed character and max. n characters long
  • ncurses_mvwaddstr — Add string at new position in window
  • ncurses_napms — Sleep
  • ncurses_new_panel — Create a new panel and associate it with window
  • ncurses_newpad — Creates a new pad (window)
  • ncurses_newwin — Create a new window
  • ncurses_nl — Translate newline and carriage return / line feed
  • ncurses_nocbreak — Switch terminal to cooked mode
  • ncurses_noecho — Switch off keyboard input echo
  • ncurses_nonl — Do not translate newline and carriage return / line feed
  • ncurses_noqiflush — Do not flush on signal characters
  • ncurses_noraw — Switch terminal out of raw mode
  • ncurses_pair_content — Retrieves foreground and background colors of a color pair
  • ncurses_panel_above — Returns the panel above panel
  • ncurses_panel_below — Returns the panel below panel
  • ncurses_panel_window — Returns the window associated with panel
  • ncurses_pnoutrefresh — Copies a region from a pad into the virtual screen
  • ncurses_prefresh — Copies a region from a pad into the virtual screen
  • ncurses_putp — Apply padding information to the string and output it
  • ncurses_qiflush — Flush on signal characters
  • ncurses_raw — Switch terminal into raw mode
  • ncurses_refresh — Refresh screen
  • ncurses_replace_panel — Replaces the window associated with panel
  • ncurses_reset_prog_mode — Resets the prog mode saved by def_prog_mode
  • ncurses_reset_shell_mode — Resets the shell mode saved by def_shell_mode
  • ncurses_resetty — Restores saved terminal state
  • ncurses_savetty — Saves terminal state
  • ncurses_scr_dump — Dump screen content to file
  • ncurses_scr_init — Initialize screen from file dump
  • ncurses_scr_restore — Restore screen from file dump
  • ncurses_scr_set — Inherit screen from file dump
  • ncurses_scrl — Scroll window content up or down without changing current position
  • ncurses_show_panel — Places an invisible panel on top of the stack, making it visible
  • ncurses_slk_attr — Returns current soft label key attribute
  • ncurses_slk_attroff — Turn off the given attributes for soft function-key labels
  • ncurses_slk_attron — Turn on the given attributes for soft function-key labels
  • ncurses_slk_attrset — Set given attributes for soft function-key labels
  • ncurses_slk_clear — Clears soft labels from screen
  • ncurses_slk_color — Sets color for soft label keys
  • ncurses_slk_init — Initializes soft label key functions
  • ncurses_slk_noutrefresh — Copies soft label keys to virtual screen
  • ncurses_slk_refresh — Copies soft label keys to screen
  • ncurses_slk_restore — Restores soft label keys
  • ncurses_slk_set — Sets function key labels
  • ncurses_slk_touch — Forces output when ncurses_slk_noutrefresh is performed
  • ncurses_standend — Stop using 'standout' attribute
  • ncurses_standout — Start using 'standout' attribute
  • ncurses_start_color — Initializes color functionality
  • ncurses_termattrs — Returns a logical OR of all attribute flags supported by terminal
  • ncurses_termname — Returns terminals (short)-name
  • ncurses_timeout — Set timeout for special key sequences
  • ncurses_top_panel — Moves a visible panel to the top of the stack
  • ncurses_typeahead — Specify different filedescriptor for typeahead checking
  • ncurses_ungetch — Put a character back into the input stream
  • ncurses_ungetmouse — Pushes mouse event to queue
  • ncurses_update_panels — Refreshes the virtual screen to reflect the relations between panels in the stack
  • ncurses_use_default_colors — Assign terminal default colors to color id -1
  • ncurses_use_env — Control use of environment information about terminal size
  • ncurses_use_extended_names — Control use of extended names in terminfo descriptions
  • ncurses_vidattr — Display the string on the terminal in the video attribute mode
  • ncurses_vline — Draw a vertical line at current position using an attributed character and max. n characters long
  • ncurses_waddch — Adds character at current position in a window and advance cursor
  • ncurses_waddstr — Outputs text at current postion in window
  • ncurses_wattroff — Turns off attributes for a window
  • ncurses_wattron — Turns on attributes for a window
  • ncurses_wattrset — Set the attributes for a window
  • ncurses_wborder — Draws a border around the window using attributed characters
  • ncurses_wclear — Clears window
  • ncurses_wcolor_set — Sets windows color pairings
  • ncurses_werase — Erase window contents
  • ncurses_wgetch — Reads a character from keyboard (window)
  • ncurses_whline — Draws a horizontal line in a window at current position using an attributed character and max. n characters long
  • ncurses_wmouse_trafo — Transforms window/stdscr coordinates
  • ncurses_wmove — Moves windows output position
  • ncurses_wnoutrefresh — Copies window to virtual screen
  • ncurses_wrefresh — Refresh window on terminal screen
  • ncurses_wstandend — End standout mode for a window
  • ncurses_wstandout — Enter standout mode for a window
  • ncurses_wvline — Draws a vertical line in a window at current position using an attributed character and max. n characters long
Mouse
ncurses_addch
Ncurses


Add character at current position and advance cursor

Ncurses Funções
ncurses_addchnstr
Ncurses Funções
PHP Manual

ncurses_addch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_addch — Add character at current position and advance cursor

Descrição

int ncurses_addch ( int $ch )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

ch

Ncurses Funções
ncurses_addchnstr
Ncurses Funções


Add attributed string with specified length at current position

ncurses_addch
ncurses_addchstr
Ncurses Funções
PHP Manual

ncurses_addchnstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_addchnstr — Add attributed string with specified length at current position

Descrição

int ncurses_addchnstr ( string $s , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

s

n

ncurses_addch
ncurses_addchstr
Ncurses Funções


Add attributed string at current position

ncurses_addchnstr
ncurses_addnstr
Ncurses Funções
PHP Manual

ncurses_addchstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_addchstr — Add attributed string at current position

Descrição

int ncurses_addchstr ( string $s )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

s

ncurses_addchnstr
ncurses_addnstr
Ncurses Funções


Add string with specified length at current position

ncurses_addchstr
ncurses_addstr
Ncurses Funções
PHP Manual

ncurses_addnstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_addnstr — Add string with specified length at current position

Descrição

int ncurses_addnstr ( string $s , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

s

n

ncurses_addchstr
ncurses_addstr
Ncurses Funções


Output text at current position

ncurses_addnstr
ncurses_assume_default_colors
Ncurses Funções
PHP Manual

ncurses_addstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_addstr — Output text at current position

Descrição

int ncurses_addstr ( string $text )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

ncurses_addnstr
ncurses_assume_default_colors
Ncurses Funções


Define default colors for color 0

ncurses_addstr
ncurses_attroff
Ncurses Funções
PHP Manual

ncurses_assume_default_colors

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_assume_default_colors — Define default colors for color 0

Descrição

int ncurses_assume_default_colors ( int $fg , int $bg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

fg

bg

ncurses_addstr
ncurses_attroff
Ncurses Funções


Turn off the given attributes

ncurses_assume_default_colors
ncurses_attron
Ncurses Funções
PHP Manual

ncurses_attroff

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_attroff — Turn off the given attributes

Descrição

int ncurses_attroff ( int $attributes )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

attributes

ncurses_assume_default_colors
ncurses_attron
Ncurses Funções


Turn on the given attributes

ncurses_attroff
ncurses_attrset
Ncurses Funções
PHP Manual

ncurses_attron

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_attron — Turn on the given attributes

Descrição

int ncurses_attron ( int $attributes )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

attributes

ncurses_attroff
ncurses_attrset
Ncurses Funções


Set given attributes

ncurses_attron
ncurses_baudrate
Ncurses Funções
PHP Manual

ncurses_attrset

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_attrset — Set given attributes

Descrição

int ncurses_attrset ( int $attributes )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

attributes

ncurses_attron
ncurses_baudrate
Ncurses Funções


Returns baudrate of terminal

ncurses_attrset
ncurses_beep
Ncurses Funções
PHP Manual

ncurses_baudrate

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_baudrate — Returns baudrate of terminal

Descrição

int ncurses_baudrate ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_attrset
ncurses_beep
Ncurses Funções


Let the terminal beep

ncurses_baudrate
ncurses_bkgd
Ncurses Funções
PHP Manual

ncurses_beep

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_beep — Let the terminal beep

Descrição

int ncurses_beep ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

ncurses_beep() sends an audible alert (bell) and if its not possible flashes the screen.

Veja Também

  • ncurses_flash() - Flash terminal screen (visual bell)

ncurses_baudrate
ncurses_bkgd
Ncurses Funções


Set background property for terminal screen

ncurses_beep
ncurses_bkgdset
Ncurses Funções
PHP Manual

ncurses_bkgd

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_bkgd — Set background property for terminal screen

Descrição

int ncurses_bkgd ( int $attrchar )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

attrchar

ncurses_beep
ncurses_bkgdset
Ncurses Funções


Control screen background

ncurses_bkgd
ncurses_border
Ncurses Funções
PHP Manual

ncurses_bkgdset

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_bkgdset — Control screen background

Descrição

void ncurses_bkgdset ( int $attrchar )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

attrchar

ncurses_bkgd
ncurses_border
Ncurses Funções


Draw a border around the screen using attributed characters

ncurses_bkgdset
ncurses_bottom_panel
Ncurses Funções
PHP Manual

ncurses_border

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_border — Draw a border around the screen using attributed characters

Descrição

int ncurses_border ( int $left , int $right , int $top , int $bottom , int $tl_corner , int $tr_corner , int $bl_corner , int $br_corner )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Draws the specified lines and corners around the main window.

Use ncurses_wborder() for borders around subwindows!

Parâmetros

Every parameter expects 0 to draw a line or 1 to skip it.

left

right

top

bottom

tl_corner

Top left corner

tr_corner

Top right corner

bl_corner

Bottom left corner

br_corner

Bottom right corner

Veja Também

  • ncurses_wborder() - Draws a border around the window using attributed characters

ncurses_bkgdset
ncurses_bottom_panel
Ncurses Funções


Moves a visible panel to the bottom of the stack

ncurses_border
ncurses_can_change_color
Ncurses Funções
PHP Manual

ncurses_bottom_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_bottom_panel — Moves a visible panel to the bottom of the stack

Descrição

int ncurses_bottom_panel ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_border
ncurses_can_change_color
Ncurses Funções


Checks if terminal color definitions can be changed

ncurses_bottom_panel
ncurses_cbreak
Ncurses Funções
PHP Manual

ncurses_can_change_color

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_can_change_color — Checks if terminal color definitions can be changed

Descrição

bool ncurses_can_change_color ( void )

Checks whether the terminal has color capabilities and whether the programmer can change color definitions using ncurses_init_color(). ncurses must be initialized using ncurses_init() before calling this function.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return TRUE if the programmer can change color definitions, FALSE otherwise.

Veja Também

  • ncurses_has_colors() - Checks if terminal has color capabilities
  • ncurses_init_color() - Define a terminal color
  • ncurses_start_color() - Initializes color functionality

ncurses_bottom_panel
ncurses_cbreak
Ncurses Funções


Switch of input buffering

ncurses_can_change_color
ncurses_clear
Ncurses Funções
PHP Manual

ncurses_cbreak

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_cbreak — Switch of input buffering

Descrição

bool ncurses_cbreak ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Disables line buffering and character processing (interrupt and flow control characters are unaffected), making characters typed by the user immediately available to the program.

Valor Retornado

Returns TRUE or NCURSES_ERR if any error occurred.

Veja Também

  • ncurses_nocbreak() - Switch terminal to cooked mode

ncurses_can_change_color
ncurses_clear
Ncurses Funções


Clear screen

ncurses_cbreak
ncurses_clrtobot
Ncurses Funções
PHP Manual

ncurses_clear

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_clear — Clear screen

Descrição

bool ncurses_clear ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Clears the screen completely without setting blanks.

Note: ncurses_clear() clears the screen without setting blanks, which have the current background rendition. To clear screen with blanks, use ncurses_erase().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ncurses_erase() - Erase terminal screen

ncurses_cbreak
ncurses_clrtobot
Ncurses Funções


Clear screen from current position to bottom

ncurses_clear
ncurses_clrtoeol
Ncurses Funções
PHP Manual

ncurses_clrtobot

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_clrtobot — Clear screen from current position to bottom

Descrição

bool ncurses_clrtobot ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Erases all lines from cursor to end of screen and creates blanks. Blanks created by ncurses_clrtobot() have the current background rendition.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ncurses_clear() - Clear screen
  • ncurses_clrtoeol() - Clear screen from current position to end of line

ncurses_clear
ncurses_clrtoeol
Ncurses Funções


Clear screen from current position to end of line

ncurses_clrtobot
ncurses_color_content
Ncurses Funções
PHP Manual

ncurses_clrtoeol

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_clrtoeol — Clear screen from current position to end of line

Descrição

bool ncurses_clrtoeol ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Erases the current line from cursor position to the end. Blanks created by ncurses_clrtoeol() have the current background rendition.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ncurses_clear() - Clear screen
  • ncurses_clrtobot() - Clear screen from current position to bottom

ncurses_clrtobot
ncurses_color_content
Ncurses Funções


Retrieves RGB components of a color

ncurses_clrtoeol
ncurses_color_set
Ncurses Funções
PHP Manual

ncurses_color_content

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_color_content — Retrieves RGB components of a color

Descrição

int ncurses_color_content ( int $color , int &$r , int &$g , int &$b )

Retrieves the red, green, and blue components for the given color definition. Terminal color capabilities must be initialized with ncurses_start_color() prior to calling this function.

Parâmetros

color

The number of the color to retrieve information for. May be one of the pre-defined color constants.

r

A reference to which to return the red component of the color. The value returned to the reference will be between 0 and 1000.

g

A reference to which to return the green component of the color. The value returned to the reference will be between 0 and 1000.

b

A reference to which to return the blue component of the color. The value returned to the reference will be between 0 and 1000.

Valor Retornado

Returns -1 if the function was successful, and 0 if ncurses or terminal color capabilities have not been initialized.

Veja Também

  • ncurses_init_color() - Define a terminal color
  • ncurses_start_color() - Initializes color functionality

ncurses_clrtoeol
ncurses_color_set
Ncurses Funções


Set active foreground and background colors

ncurses_color_content
ncurses_curs_set
Ncurses Funções
PHP Manual

ncurses_color_set

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_color_set — Set active foreground and background colors

Descrição

int ncurses_color_set ( int $pair )

Sets the active foreground and background colors. Any characters written after this function is invoked will have these colors. This function requires terminal colors to be supported and initialized using ncurses_start_color() beforehand.

ncurses uses color pairs to specify both foreground and background colors. Use ncurses_init_pair() to define a color pair.

Parâmetros

pair

The color pair from which to get the foreground and background colors to set as the active colors.

Valor Retornado

Returns -1 on success, and 0 on failure.

Exemplos

Exemplo #1 Writing a string with a specified color to the screen

<?php
ncurses_init();

// If the terminal supports colors, initialize and set active color
if (ncurses_has_colors()) {
    ncurses_start_color();
    ncurses_init_pair(1, NCURSES_COLOR_YELLOW, NCURSES_COLOR_BLUE);
    ncurses_color_set(1);
}

// Write a string at specified location
ncurses_mvaddstr(10, 10, "Hello world! Yellow on blue text!");

// Flush output to screen
ncurses_refresh();

ncurses_end();
?>

Veja Também

  • ncurses_init_pair() - Define a color pair
  • ncurses_start_color() - Initializes color functionality

ncurses_color_content
ncurses_curs_set
Ncurses Funções


Set cursor state

ncurses_color_set
ncurses_def_prog_mode
Ncurses Funções
PHP Manual

ncurses_curs_set

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_curs_set — Set cursor state

Descrição

int ncurses_curs_set ( int $visibility )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

visibility

ncurses_color_set
ncurses_def_prog_mode
Ncurses Funções


Saves terminals (program) mode

ncurses_curs_set
ncurses_def_shell_mode
Ncurses Funções
PHP Manual

ncurses_def_prog_mode

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_def_prog_mode — Saves terminals (program) mode

Descrição

bool ncurses_def_prog_mode ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Saves the current terminal modes for program (in curses) for use by ncurses_reset_prog_mode().

Valor Retornado

Returns FALSE on success, otherwise TRUE.

Veja Também

  • ncurses_reset_prog_mode() - Resets the prog mode saved by def_prog_mode

ncurses_curs_set
ncurses_def_shell_mode
Ncurses Funções


Saves terminals (shell) mode

ncurses_def_prog_mode
ncurses_define_key
Ncurses Funções
PHP Manual

ncurses_def_shell_mode

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_def_shell_mode — Saves terminals (shell) mode

Descrição

bool ncurses_def_shell_mode ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Saves the current terminal modes for shell (not in curses) for use by ncurses_reset_shell_mode().

Valor Retornado

Returns FALSE on success, TRUE otherwise.

Veja Também

  • ncurses_reset_shell_mode() - Resets the shell mode saved by def_shell_mode

ncurses_def_prog_mode
ncurses_define_key
Ncurses Funções


Define a keycode

ncurses_def_shell_mode
ncurses_del_panel
Ncurses Funções
PHP Manual

ncurses_define_key

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_define_key — Define a keycode

Descrição

int ncurses_define_key ( string $definition , int $keycode )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

definition

keycode

ncurses_def_shell_mode
ncurses_del_panel
Ncurses Funções


Remove panel from the stack and delete it (but not the associated window)

ncurses_define_key
ncurses_delay_output
Ncurses Funções
PHP Manual

ncurses_del_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_del_panel — Remove panel from the stack and delete it (but not the associated window)

Descrição

bool ncurses_del_panel ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_define_key
ncurses_delay_output
Ncurses Funções


Delay output on terminal using padding characters

ncurses_del_panel
ncurses_delch
Ncurses Funções
PHP Manual

ncurses_delay_output

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_delay_output — Delay output on terminal using padding characters

Descrição

int ncurses_delay_output ( int $milliseconds )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

milliseconds

ncurses_del_panel
ncurses_delch
Ncurses Funções


Delete character at current position, move rest of line left

ncurses_delay_output
ncurses_deleteln
Ncurses Funções
PHP Manual

ncurses_delch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_delch — Delete character at current position, move rest of line left

Descrição

bool ncurses_delch ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Deletes the character under the cursor. All characters to the right of the cursor on the same line are moved to the left one position and the last character on the line is filled with a blank. The cursor position does not change.

Valor Retornado

Returns FALSE on success, TRUE otherwise.

Veja Também

  • ncurses_deleteln() - Delete line at current position, move rest of screen up

ncurses_delay_output
ncurses_deleteln
Ncurses Funções


Delete line at current position, move rest of screen up

ncurses_delch
ncurses_delwin
Ncurses Funções
PHP Manual

ncurses_deleteln

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_deleteln — Delete line at current position, move rest of screen up

Descrição

bool ncurses_deleteln ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Deletes the current line under cursorposition. All lines below the current line are moved up one line. The bottom line of window is cleared. Cursor position does not change.

Valor Retornado

Returns FALSE on success, otherwise TRUE.

Veja Também

  • ncurses_delch() - Delete character at current position, move rest of line left

ncurses_delch
ncurses_delwin
Ncurses Funções


Delete a ncurses window

ncurses_deleteln
ncurses_doupdate
Ncurses Funções
PHP Manual

ncurses_delwin

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_delwin — Delete a ncurses window

Descrição

bool ncurses_delwin ( resource $window )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_deleteln
ncurses_doupdate
Ncurses Funções


Write all prepared refreshes to terminal

ncurses_delwin
ncurses_echo
Ncurses Funções
PHP Manual

ncurses_doupdate

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_doupdate — Write all prepared refreshes to terminal

Descrição

bool ncurses_doupdate ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Compares the virtual screen to the physical screen and updates the physical screen. This way is more effective than using multiple refresh calls.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ncurses_delwin
ncurses_echo
Ncurses Funções


Activate keyboard input echo

ncurses_doupdate
ncurses_echochar
Ncurses Funções
PHP Manual

ncurses_echo

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_echo — Activate keyboard input echo

Descrição

bool ncurses_echo ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Enables echo mode. All characters typed by user are echoed by ncurses_getch().

Valor Retornado

Returns FALSE on success, TRUE if any error occurred.

Veja Também

  • ncurses_noecho() - Switch off keyboard input echo to disable echo mode

ncurses_doupdate
ncurses_echochar
Ncurses Funções


Single character output including refresh

ncurses_echo
ncurses_end
Ncurses Funções
PHP Manual

ncurses_echochar

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_echochar — Single character output including refresh

Descrição

int ncurses_echochar ( int $character )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

character

ncurses_echo
ncurses_end
Ncurses Funções


Stop using ncurses, clean up the screen

ncurses_echochar
ncurses_erase
Ncurses Funções
PHP Manual

ncurses_end

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_end — Stop using ncurses, clean up the screen

Descrição

int ncurses_end ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_echochar
ncurses_erase
Ncurses Funções


Erase terminal screen

ncurses_end
ncurses_erasechar
Ncurses Funções
PHP Manual

ncurses_erase

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_erase — Erase terminal screen

Descrição

bool ncurses_erase ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Fills the terminal screen with blanks.

Created blanks have the current background rendition, set by ncurses_bkgd().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ncurses_bkgd() - Set background property for terminal screen
  • ncurses_clear() - Clear screen

ncurses_end
ncurses_erasechar
Ncurses Funções


Returns current erase character

ncurses_erase
ncurses_filter
Ncurses Funções
PHP Manual

ncurses_erasechar

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_erasechar — Returns current erase character

Descrição

string ncurses_erasechar ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the current erase character.

Valor Retornado

The current erase char, as a string.

Veja Também

  • ncurses_killchar() - Returns current line kill character

ncurses_erase
ncurses_filter
Ncurses Funções


Set LINES for iniscr() and newterm() to 1

ncurses_erasechar
ncurses_flash
Ncurses Funções
PHP Manual

ncurses_filter

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_filter — Set LINES for iniscr() and newterm() to 1

Descrição

void ncurses_filter ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_erasechar
ncurses_flash
Ncurses Funções


Flash terminal screen (visual bell)

ncurses_filter
ncurses_flushinp
Ncurses Funções
PHP Manual

ncurses_flash

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_flash — Flash terminal screen (visual bell)

Descrição

bool ncurses_flash ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Flashes the screen, and if its not possible, sends an audible alert (bell).

Valor Retornado

Returns FALSE on success, otherwise TRUE.

Veja Também

  • ncurses_beep() - Let the terminal beep

ncurses_filter
ncurses_flushinp
Ncurses Funções


Flush keyboard input buffer

ncurses_flash
ncurses_getch
Ncurses Funções
PHP Manual

ncurses_flushinp

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_flushinp — Flush keyboard input buffer

Descrição

bool ncurses_flushinp ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Throws away any typeahead that has been typed and has not yet been read by your program.

Valor Retornado

Returns FALSE on success, otherwise TRUE.

ncurses_flash
ncurses_getch
Ncurses Funções


Read a character from keyboard

ncurses_flushinp
ncurses_getmaxyx
Ncurses Funções
PHP Manual

ncurses_getch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_getch — Read a character from keyboard

Descrição

int ncurses_getch ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_flushinp
ncurses_getmaxyx
Ncurses Funções


Returns the size of a window

ncurses_getch
ncurses_getmouse
Ncurses Funções
PHP Manual

ncurses_getmaxyx

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_getmaxyx — Returns the size of a window

Descrição

void ncurses_getmaxyx ( resource $window , int &$y , int &$x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Gets the horizontal and vertical size of the given window into the given variables.

Variables must be passed as reference, so they are updated when the user changes the terminal size.

Parâmetros

window

The measured window

x

This will be set to the window width

y

This will be set to the window height

Valor Retornado

Não há valor retornado.

ncurses_getch
ncurses_getmouse
Ncurses Funções


Reads mouse event

ncurses_getmaxyx
ncurses_getyx
Ncurses Funções
PHP Manual

ncurses_getmouse

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_getmouse — Reads mouse event

Descrição

bool ncurses_getmouse ( array &$mevent )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

ncurses_getmouse() reads mouse event out of queue.

Parâmetros

mevent

Event options will be delivered in this parameter which has to be an array, passed by reference (see example below).

On success an associative array with following keys will be delivered:

  • "id" : Id to distinguish multiple devices

  • "x" : screen relative x-position in character cells

  • "y" : screen relative y-position in character cells

  • "z" : currently not supported

  • "mmask" : Mouse action

Valor Retornado

Returns FALSE if a mouse event is actually visible in the given window, otherwise returns TRUE.

Exemplos

Exemplo #1 ncurses_getmouse() example

<?php
switch (ncurses_getch()){
  case NCURSES_KEY_MOUSE:
    if (!ncurses_getmouse($mevent)){
      if ($mevent["mmask"] & NCURSES_MOUSE_BUTTON1_PRESSED){
        $mouse_x = $mevent["x"]; // Save mouse position
        $mouse_y = $mevent["y"];
      }
    }
  break;

  default:
    /* .... */
}
?>

Veja Também

  • ncurses_ungetmouse() - Pushes mouse event to queue

ncurses_getmaxyx
ncurses_getyx
Ncurses Funções


Returns the current cursor position for a window

ncurses_getmouse
ncurses_halfdelay
Ncurses Funções
PHP Manual

ncurses_getyx

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_getyx — Returns the current cursor position for a window

Descrição

void ncurses_getyx ( resource $window , int &$y , int &$x )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

y

x

ncurses_getmouse
ncurses_halfdelay
Ncurses Funções


Put terminal into halfdelay mode

ncurses_getyx
ncurses_has_colors
Ncurses Funções
PHP Manual

ncurses_halfdelay

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_halfdelay — Put terminal into halfdelay mode

Descrição

int ncurses_halfdelay ( int $tenth )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

tenth

ncurses_getyx
ncurses_has_colors
Ncurses Funções


Checks if terminal has color capabilities

ncurses_halfdelay
ncurses_has_ic
Ncurses Funções
PHP Manual

ncurses_has_colors

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_has_colors — Checks if terminal has color capabilities

Descrição

bool ncurses_has_colors ( void )

Checks whether the terminal has color capabilities. This function can be used to write terminal-independent programs. ncurses must be initialized using ncurses_init() before calling this function.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return TRUE if the terminal has color capabilities, FALSE otherwise.

Exemplos

Exemplo #1 Writing a string with a specified color to the screen

<?php
ncurses_init();

// If the terminal supports colors, initialize and set active color
if (ncurses_has_colors()) {
    ncurses_start_color();
    ncurses_init_pair(1, NCURSES_COLOR_YELLOW, NCURSES_COLOR_BLUE);
    ncurses_color_set(1);
}

// Write a string at specified location
ncurses_mvaddstr(10, 10, "Hello world! Yellow on blue text!");

// Flush output to screen
ncurses_refresh();

ncurses_end();
?>

Veja Também

  • ncurses_can_change_color() - Checks if terminal color definitions can be changed
  • ncurses_start_color() - Initializes color functionality

ncurses_halfdelay
ncurses_has_ic
Ncurses Funções


Check for insert- and delete-capabilities

ncurses_has_colors
ncurses_has_il
Ncurses Funções
PHP Manual

ncurses_has_ic

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_has_ic — Check for insert- and delete-capabilities

Descrição

bool ncurses_has_ic ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Checks whether the terminal has insert and delete capabilities.

Valor Retornado

Returns TRUE if the terminal has insert/delete-capabilities, FALSE otherwise.

Veja Também

  • ncurses_has_il() - Check for line insert- and delete-capabilities

ncurses_has_colors
ncurses_has_il
Ncurses Funções


Check for line insert- and delete-capabilities

ncurses_has_ic
ncurses_has_key
Ncurses Funções
PHP Manual

ncurses_has_il

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_has_il — Check for line insert- and delete-capabilities

Descrição

bool ncurses_has_il ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Checks whether the terminal has insert- and delete-line-capabilities.

Valor Retornado

Returns TRUE if the terminal has insert/delete-line capabilities, FALSE otherwise.

Veja Também

  • ncurses_has_ic() - Check for insert- and delete-capabilities

ncurses_has_ic
ncurses_has_key
Ncurses Funções


Check for presence of a function key on terminal keyboard

ncurses_has_il
ncurses_hide_panel
Ncurses Funções
PHP Manual

ncurses_has_key

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_has_key — Check for presence of a function key on terminal keyboard

Descrição

int ncurses_has_key ( int $keycode )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

keycode

ncurses_has_il
ncurses_hide_panel
Ncurses Funções


Remove panel from the stack, making it invisible

ncurses_has_key
ncurses_hline
Ncurses Funções
PHP Manual

ncurses_hide_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_hide_panel — Remove panel from the stack, making it invisible

Descrição

int ncurses_hide_panel ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_has_key
ncurses_hline
Ncurses Funções


Draw a horizontal line at current position using an attributed character and max. n characters long

ncurses_hide_panel
ncurses_inch
Ncurses Funções
PHP Manual

ncurses_hline

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_hline — Draw a horizontal line at current position using an attributed character and max. n characters long

Descrição

int ncurses_hline ( int $charattr , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

charattr

n

ncurses_hide_panel
ncurses_inch
Ncurses Funções


Get character and attribute at current position

ncurses_hline
ncurses_init_color
Ncurses Funções
PHP Manual

ncurses_inch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_inch — Get character and attribute at current position

Descrição

string ncurses_inch ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the character from the current position.

Valor Retornado

Returns the character, as a string.

ncurses_hline
ncurses_init_color
Ncurses Funções


Define a terminal color

ncurses_inch
ncurses_init_pair
Ncurses Funções
PHP Manual

ncurses_init_color

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_init_color — Define a terminal color

Descrição

int ncurses_init_color ( int $color , int $r , int $g , int $b )

Defines or redefines the given color. When this function is called, all occurrences of the given color on the screen, if any, immediately change to the new definition.

Color capabilities must be supported by the terminal and initialized using ncurses_start_color() prior to calling this function. In addition, the terminal must have color changing capabilities; use ncurses_can_change_color() to check for this.

Parâmetros

color

The identification number of the color to redefine. It may be one of the default color constants.

r

A color value, between 0 and 1000, for the red component.

g

A color value, between 0 and 1000, for the green component.

b

A color value, between 0 and 1000, for the blue component.

Valor Retornado

Returns -1 if the function was successful, and 0 if ncurses or terminal color capabilities have not been initialized or the terminal does not have color changing capabilities.

Veja Também

  • ncurses_color_content() - Retrieves RGB components of a color
  • ncurses_start_color() - Initializes color functionality

ncurses_inch
ncurses_init_pair
Ncurses Funções


Define a color pair

ncurses_init_color
ncurses_init
Ncurses Funções
PHP Manual

ncurses_init_pair

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_init_pair — Define a color pair

Descrição

int ncurses_init_pair ( int $pair , int $fg , int $bg )

Defines or redefines the given color pair to have the given foreground and background colors. If the color pair was previously initialized, the screen is refreshed and all occurrences of it are changed to reflect the new definition.

Color capabilities must be initialized using ncurses_start_color() before calling this function. The first color pair (color pair 0) is assumed to be white on black by default, but can be changed using ncurses_assume_default_colors().

Parâmetros

pair

The number of the color pair to define.

fg

The foreground color for the color pair. May be one of the pre-defined colors or one defined by ncurses_init_color() if the terminal has color changing capabilities.

bg

The background color for the color pair. May be one of the pre-defined colors or one defined by ncurses_init_color() if the terminal has color changing capabilities.

Valor Retornado

Returns -1 if the function was successful, and 0 if ncurses or color support were not initialized.

Notas

Note that color changing capabilities are not required for defining color pairs of pre-existing colors, but only for changing definitions (red, green, and blue components) of colors themselves per ncurses_init_color().

Exemplos

Exemplo #1 Writing a string with a specified color to the screen

<?php
ncurses_init();

// If the terminal supports colors, initialize and set active color
if (ncurses_has_colors()) {
    ncurses_start_color();
    ncurses_init_pair(1, NCURSES_COLOR_YELLOW, NCURSES_COLOR_BLUE);
    ncurses_color_set(1);
}

// Write a string at specified location
ncurses_mvaddstr(10, 10, "Hello world! Yellow on blue text!");

// Flush output to screen
ncurses_refresh();

ncurses_end();
?>

Veja Também

  • ncurses_pair_content() - Retrieves foreground and background colors of a color pair
  • ncurses_start_color() - Initializes color functionality

ncurses_init_color
ncurses_init
Ncurses Funções


Initialize ncurses

ncurses_init_pair
ncurses_insch
Ncurses Funções
PHP Manual

ncurses_init

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_init — Initialize ncurses

Descrição

void ncurses_init ( void )

Initializes the ncurses interface. This function must be used before any other ncurses function call.

Note that ncurses_end() must be called before exiting from the program, or the terminal will not be restored to its proper non-visual mode.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ncurses_end() - Stop using ncurses, clean up the screen

ncurses_init_pair
ncurses_insch
Ncurses Funções


Insert character moving rest of line including character at current position

ncurses_init
ncurses_insdelln
Ncurses Funções
PHP Manual

ncurses_insch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_insch — Insert character moving rest of line including character at current position

Descrição

int ncurses_insch ( int $character )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

character

ncurses_init
ncurses_insdelln
Ncurses Funções


Insert lines before current line scrolling down (negative numbers delete and scroll up)

ncurses_insch
ncurses_insertln
Ncurses Funções
PHP Manual

ncurses_insdelln

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_insdelln — Insert lines before current line scrolling down (negative numbers delete and scroll up)

Descrição

int ncurses_insdelln ( int $count )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

count

ncurses_insch
ncurses_insertln
Ncurses Funções


Insert a line, move rest of screen down

ncurses_insdelln
ncurses_insstr
Ncurses Funções
PHP Manual

ncurses_insertln

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_insertln — Insert a line, move rest of screen down

Descrição

int ncurses_insertln ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Inserts a new line above the current line. The bottom line will be lost.

ncurses_insdelln
ncurses_insstr
Ncurses Funções


Insert string at current position, moving rest of line right

ncurses_insertln
ncurses_instr
Ncurses Funções
PHP Manual

ncurses_insstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_insstr — Insert string at current position, moving rest of line right

Descrição

int ncurses_insstr ( string $text )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

ncurses_insertln
ncurses_instr
Ncurses Funções


Reads string from terminal screen

ncurses_insstr
ncurses_isendwin
Ncurses Funções
PHP Manual

ncurses_instr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_instr — Reads string from terminal screen

Descrição

int ncurses_instr ( string &$buffer )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Reads a string from the terminal screen and returns the number of characters read from the current character position until end of line.

Parâmetros

buffer

The characters. Attributes will be stripped.

Valor Retornado

Returns the number of characters.

ncurses_insstr
ncurses_isendwin
Ncurses Funções


Ncurses is in endwin mode, normal screen output may be performed

ncurses_instr
ncurses_keyok
Ncurses Funções
PHP Manual

ncurses_isendwin

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_isendwin — Ncurses is in endwin mode, normal screen output may be performed

Descrição

bool ncurses_isendwin ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Checks if ncurses is in endwin mode.

Valor Retornado

Returns TRUE, if ncurses_end() has been called without any subsequent calls to ncurses_wrefresh(), FALSE otherwise.

Veja Também

  • ncurses_end() - Stop using ncurses, clean up the screen
  • ncurses_wrefresh() - Refresh window on terminal screen

ncurses_instr
ncurses_keyok
Ncurses Funções


Enable or disable a keycode

ncurses_isendwin
ncurses_keypad
Ncurses Funções
PHP Manual

ncurses_keyok

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_keyok — Enable or disable a keycode

Descrição

int ncurses_keyok ( int $keycode , bool $enable )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

keycode

enable

ncurses_isendwin
ncurses_keypad
Ncurses Funções


Turns keypad on or off

ncurses_keyok
ncurses_killchar
Ncurses Funções
PHP Manual

ncurses_keypad

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_keypad — Turns keypad on or off

Descrição

int ncurses_keypad ( resource $window , bool $bf )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

bf

ncurses_keyok
ncurses_killchar
Ncurses Funções


Returns current line kill character

ncurses_keypad
ncurses_longname
Ncurses Funções
PHP Manual

ncurses_killchar

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_killchar — Returns current line kill character

Descrição

string ncurses_killchar ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the current line kill character.

Valor Retornado

Returns the kill character, as a string.

Veja Também

  • ncurses_erasechar() - Returns current erase character

ncurses_keypad
ncurses_longname
Ncurses Funções


Returns terminals description

ncurses_killchar
ncurses_meta
Ncurses Funções
PHP Manual

ncurses_longname

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_longname — Returns terminals description

Descrição

string ncurses_longname ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns a verbose description of the terminal.

Valor Retornado

Returns the description, as a string truncated to 128 characters. On errors, returns NULL.

Veja Também

  • ncurses_termname() - Returns terminals (short)-name

ncurses_killchar
ncurses_meta
Ncurses Funções


Enables/Disable 8-bit meta key information

ncurses_longname
ncurses_mouse_trafo
Ncurses Funções
PHP Manual

ncurses_meta

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_meta — Enables/Disable 8-bit meta key information

Descrição

int ncurses_meta ( resource $window , bool $8bit )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

8bit

ncurses_longname
ncurses_mouse_trafo
Ncurses Funções


Transforms coordinates

ncurses_meta
ncurses_mouseinterval
Ncurses Funções
PHP Manual

ncurses_mouse_trafo

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mouse_trafo — Transforms coordinates

Descrição

bool ncurses_mouse_trafo ( int &$y , int &$x , bool $toscreen )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

toscreen

ncurses_meta
ncurses_mouseinterval
Ncurses Funções


Set timeout for mouse button clicks

ncurses_mouse_trafo
ncurses_mousemask
Ncurses Funções
PHP Manual

ncurses_mouseinterval

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mouseinterval — Set timeout for mouse button clicks

Descrição

int ncurses_mouseinterval ( int $milliseconds )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

milliseconds

ncurses_mouse_trafo
ncurses_mousemask
Ncurses Funções


Sets mouse options

ncurses_mouseinterval
ncurses_move_panel
Ncurses Funções
PHP Manual

ncurses_mousemask

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mousemask — Sets mouse options

Descrição

int ncurses_mousemask ( int $newmask , int &$oldmask )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets mouse events to be reported. By default no mouse events will be reported.

Mouse events are represented by NCURSES_KEY_MOUSE in the ncurses_wgetch() input stream. To read the event data and pop the event of queue, call ncurses_getmouse().

Parâmetros

newmask

Mouse mask options can be set with the following predefined constants:

  • NCURSES_BUTTON1_PRESSED

  • NCURSES_BUTTON1_RELEASED

  • NCURSES_BUTTON1_CLICKED

  • NCURSES_BUTTON1_DOUBLE_CLICKED

  • NCURSES_BUTTON1_TRIPLE_CLICKED

  • NCURSES_BUTTON2_PRESSED

  • NCURSES_BUTTON2_RELEASED

  • NCURSES_BUTTON2_CLICKED

  • NCURSES_BUTTON2_DOUBLE_CLICKED

  • NCURSES_BUTTON2_TRIPLE_CLICKED

  • NCURSES_BUTTON3_PRESSED

  • NCURSES_BUTTON3_RELEASED

  • NCURSES_BUTTON3_CLICKED

  • NCURSES_BUTTON3_DOUBLE_CLICKED

  • NCURSES_BUTTON3_TRIPLE_CLICKED

  • NCURSES_BUTTON4_PRESSED

  • NCURSES_BUTTON4_RELEASED

  • NCURSES_BUTTON4_CLICKED

  • NCURSES_BUTTON4_DOUBLE_CLICKED

  • NCURSES_BUTTON4_TRIPLE_CLICKED

  • NCURSES_BUTTON_SHIFT>

  • NCURSES_BUTTON_CTRL

  • NCURSES_BUTTON_ALT

  • NCURSES_ALL_MOUSE_EVENTS

  • NCURSES_REPORT_MOUSE_POSITION

As a side effect, setting a zero mousemask in newmask turns off the mouse pointer. Setting a non zero value turns mouse pointer on.

oldmask

This will be set to the previous value of the mouse event mask.

Valor Retornado

Returns a mask to indicated which of the in parameter newmask specified mouse events can be reported. On complete failure, it returns 0.

Exemplos

Exemplo #1 ncurses_mousemask() example

<?php
$newmask = NCURSES_BUTTON1_CLICKED + NCURSES_BUTTON1_RELEASED;
$mask = ncurses_mousemask($newmask, $oldmask);
if ($mask & $newmask){
    printf("All specified mouse options will be supported\n");
}
?>

Veja Também

  • ncurses_getch() - Read a character from keyboard
  • ncurses_getmouse() - Reads mouse event
  • ncurses_ungetmouse() - Pushes mouse event to queue

ncurses_mouseinterval
ncurses_move_panel
Ncurses Funções


Moves a panel so that its upper-left corner is at [startx, starty]

ncurses_mousemask
ncurses_move
Ncurses Funções
PHP Manual

ncurses_move_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_move_panel — Moves a panel so that its upper-left corner is at [startx, starty]

Descrição

int ncurses_move_panel ( resource $panel , int $startx , int $starty )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

startx

starty

ncurses_mousemask
ncurses_move
Ncurses Funções


Move output position

ncurses_move_panel
ncurses_mvaddch
Ncurses Funções
PHP Manual

ncurses_move

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_move — Move output position

Descrição

int ncurses_move ( int $y , int $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

ncurses_move_panel
ncurses_mvaddch
Ncurses Funções


Move current position and add character

ncurses_move
ncurses_mvaddchnstr
Ncurses Funções
PHP Manual

ncurses_mvaddch

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvaddch — Move current position and add character

Descrição

int ncurses_mvaddch ( int $y , int $x , int $c )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

c

ncurses_move
ncurses_mvaddchnstr
Ncurses Funções


Move position and add attributed string with specified length

ncurses_mvaddch
ncurses_mvaddchstr
Ncurses Funções
PHP Manual

ncurses_mvaddchnstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvaddchnstr — Move position and add attributed string with specified length

Descrição

int ncurses_mvaddchnstr ( int $y , int $x , string $s , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

s

n

ncurses_mvaddch
ncurses_mvaddchstr
Ncurses Funções


Move position and add attributed string

ncurses_mvaddchnstr
ncurses_mvaddnstr
Ncurses Funções
PHP Manual

ncurses_mvaddchstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvaddchstr — Move position and add attributed string

Descrição

int ncurses_mvaddchstr ( int $y , int $x , string $s )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

s

ncurses_mvaddchnstr
ncurses_mvaddnstr
Ncurses Funções


Move position and add string with specified length

ncurses_mvaddchstr
ncurses_mvaddstr
Ncurses Funções
PHP Manual

ncurses_mvaddnstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvaddnstr — Move position and add string with specified length

Descrição

int ncurses_mvaddnstr ( int $y , int $x , string $s , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

s

n

ncurses_mvaddchstr
ncurses_mvaddstr
Ncurses Funções


Move position and add string

ncurses_mvaddnstr
ncurses_mvcur
Ncurses Funções
PHP Manual

ncurses_mvaddstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvaddstr — Move position and add string

Descrição

int ncurses_mvaddstr ( int $y , int $x , string $s )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

s

ncurses_mvaddnstr
ncurses_mvcur
Ncurses Funções


Move cursor immediately

ncurses_mvaddstr
ncurses_mvdelch
Ncurses Funções
PHP Manual

ncurses_mvcur

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvcur — Move cursor immediately

Descrição

int ncurses_mvcur ( int $old_y , int $old_x , int $new_y , int $new_x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

old_y

old_x

new_y

new_x

ncurses_mvaddstr
ncurses_mvdelch
Ncurses Funções


Move position and delete character, shift rest of line left

ncurses_mvcur
ncurses_mvgetch
Ncurses Funções
PHP Manual

ncurses_mvdelch

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvdelch — Move position and delete character, shift rest of line left

Descrição

int ncurses_mvdelch ( int $y , int $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

ncurses_mvcur
ncurses_mvgetch
Ncurses Funções


Move position and get character at new position

ncurses_mvdelch
ncurses_mvhline
Ncurses Funções
PHP Manual

ncurses_mvgetch

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvgetch — Move position and get character at new position

Descrição

int ncurses_mvgetch ( int $y , int $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

ncurses_mvdelch
ncurses_mvhline
Ncurses Funções


Set new position and draw a horizontal line using an attributed character and max. n characters long

ncurses_mvgetch
ncurses_mvinch
Ncurses Funções
PHP Manual

ncurses_mvhline

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvhline — Set new position and draw a horizontal line using an attributed character and max. n characters long

Descrição

int ncurses_mvhline ( int $y , int $x , int $attrchar , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

attrchar

n

ncurses_mvgetch
ncurses_mvinch
Ncurses Funções


Move position and get attributed character at new position

ncurses_mvhline
ncurses_mvvline
Ncurses Funções
PHP Manual

ncurses_mvinch

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvinch — Move position and get attributed character at new position

Descrição

int ncurses_mvinch ( int $y , int $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

ncurses_mvhline
ncurses_mvvline
Ncurses Funções


Set new position and draw a vertical line using an attributed character and max. n characters long

ncurses_mvinch
ncurses_mvwaddstr
Ncurses Funções
PHP Manual

ncurses_mvvline

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvvline — Set new position and draw a vertical line using an attributed character and max. n characters long

Descrição

int ncurses_mvvline ( int $y , int $x , int $attrchar , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

y

x

attrchar

n

ncurses_mvinch
ncurses_mvwaddstr
Ncurses Funções


Add string at new position in window

ncurses_mvvline
ncurses_napms
Ncurses Funções
PHP Manual

ncurses_mvwaddstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_mvwaddstr — Add string at new position in window

Descrição

int ncurses_mvwaddstr ( resource $window , int $y , int $x , string $text )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

y

x

text

ncurses_mvvline
ncurses_napms
Ncurses Funções


Sleep

ncurses_mvwaddstr
ncurses_new_panel
Ncurses Funções
PHP Manual

ncurses_napms

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_napms — Sleep

Descrição

int ncurses_napms ( int $milliseconds )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

milliseconds

ncurses_mvwaddstr
ncurses_new_panel
Ncurses Funções


Create a new panel and associate it with window

ncurses_napms
ncurses_newpad
Ncurses Funções
PHP Manual

ncurses_new_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_new_panel — Create a new panel and associate it with window

Descrição

resource ncurses_new_panel ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_napms
ncurses_newpad
Ncurses Funções


Creates a new pad (window)

ncurses_new_panel
ncurses_newwin
Ncurses Funções
PHP Manual

ncurses_newpad

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_newpad — Creates a new pad (window)

Descrição

resource ncurses_newpad ( int $rows , int $cols )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

rows

cols

ncurses_new_panel
ncurses_newwin
Ncurses Funções


Create a new window

ncurses_newpad
ncurses_nl
Ncurses Funções
PHP Manual

ncurses_newwin

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_newwin — Create a new window

Descrição

resource ncurses_newwin ( int $rows , int $cols , int $y , int $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new window to draw elements in.

When creating additional windows, remember to use ncurses_getmaxyx() to check for available space, as terminal size is individual and may vary.

Parâmetros

rows

Number of rows

cols

Number of columns

y

y-coordinate of the origin

x

x-coordinate of the origin

Valor Retornado

Returns a resource ID for the new window.

ncurses_newpad
ncurses_nl
Ncurses Funções


Translate newline and carriage return / line feed

ncurses_newwin
ncurses_nocbreak
Ncurses Funções
PHP Manual

ncurses_nl

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_nl — Translate newline and carriage return / line feed

Descrição

bool ncurses_nl ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_newwin
ncurses_nocbreak
Ncurses Funções


Switch terminal to cooked mode

ncurses_nl
ncurses_noecho
Ncurses Funções
PHP Manual

ncurses_nocbreak

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_nocbreak — Switch terminal to cooked mode

Descrição

bool ncurses_nocbreak ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns terminal to normal (cooked) mode. Initially the terminal may or may not in cbreak mode as the mode is inherited. Therefore a program should call ncurses_cbreak() and ncurses_nocbreak() explicitly.

Valor Retornado

Returns TRUE if any error occurred, otherwise FALSE.

Veja Também

  • ncurses_cbreak() - Switch of input buffering

ncurses_nl
ncurses_noecho
Ncurses Funções


Switch off keyboard input echo

ncurses_nocbreak
ncurses_nonl
Ncurses Funções
PHP Manual

ncurses_noecho

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_noecho — Switch off keyboard input echo

Descrição

bool ncurses_noecho ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Prevents echoing of user typed characters.

Valor Retornado

Returns TRUE if any error occurred, FALSE otherwise.

Veja Também

  • ncurses_echo() - Activate keyboard input echo
  • ncurses_getch() - Read a character from keyboard

ncurses_nocbreak
ncurses_nonl
Ncurses Funções


Do not translate newline and carriage return / line feed

ncurses_noecho
ncurses_noqiflush
Ncurses Funções
PHP Manual

ncurses_nonl

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_nonl — Do not translate newline and carriage return / line feed

Descrição

bool ncurses_nonl ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_noecho
ncurses_noqiflush
Ncurses Funções


Do not flush on signal characters

ncurses_nonl
ncurses_noraw
Ncurses Funções
PHP Manual

ncurses_noqiflush

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_noqiflush — Do not flush on signal characters

Descrição

void ncurses_noqiflush ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_nonl
ncurses_noraw
Ncurses Funções


Switch terminal out of raw mode

ncurses_noqiflush
ncurses_pair_content
Ncurses Funções
PHP Manual

ncurses_noraw

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_noraw — Switch terminal out of raw mode

Descrição

bool ncurses_noraw ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Switches the terminal out of raw mode. Raw mode is similar to cbreak mode, in that characters typed are immediately passed through to the user program. The differences that are that in raw mode, the interrupt, quit, suspend and flow control characters are all passed through uninterpreted, instead of generating a signal.

Valor Retornado

Returns TRUE if any error occurred, otherwise FALSE.

Veja Também

  • ncurses_raw() - Switch terminal into raw mode
  • ncurses_cbreak() - Switch of input buffering
  • ncurses_nocbreak() - Switch terminal to cooked mode

ncurses_noqiflush
ncurses_pair_content
Ncurses Funções


Retrieves foreground and background colors of a color pair

ncurses_noraw
ncurses_panel_above
Ncurses Funções
PHP Manual

ncurses_pair_content

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_pair_content — Retrieves foreground and background colors of a color pair

Descrição

int ncurses_pair_content ( int $pair , int &$f , int &$b )

Retrieves the foreground and background colors that constitute the given color pair. Terminal color capabilities must be initialized with ncurses_start_color() prior to calling this function.

Parâmetros

pair

The number of the color pair to retrieve information for.

f

A reference to which to return the foreground color of the color pair. The information returned will be a color number referring to one of the pre-defined colors or a color defined previously by ncurses_init_color() if the terminal supports color changing.

b

A reference to which to return the background color of the color pair. The information returned will be a color number referring to one of the pre-defined colors or a color defined previously by ncurses_init_color() if the terminal supports color changing.

Valor Retornado

Returns -1 if the function was successful, and 0 if ncurses or terminal color capabilities have not been initialized.

Veja Também

  • ncurses_init_pair() - Define a color pair
  • ncurses_start_color() - Initializes color functionality

ncurses_noraw
ncurses_panel_above
Ncurses Funções


Returns the panel above panel

ncurses_pair_content
ncurses_panel_below
Ncurses Funções
PHP Manual

ncurses_panel_above

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_panel_above — Returns the panel above panel

Descrição

resource ncurses_panel_above ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

Valor Retornado

If panel is null, returns the bottom panel in the stack.

ncurses_pair_content
ncurses_panel_below
Ncurses Funções


Returns the panel below panel

ncurses_panel_above
ncurses_panel_window
Ncurses Funções
PHP Manual

ncurses_panel_below

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_panel_below — Returns the panel below panel

Descrição

resource ncurses_panel_below ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

Parâmetros

If panel is null, returns the top panel in the stack.

ncurses_panel_above
ncurses_panel_window
Ncurses Funções


Returns the window associated with panel

ncurses_panel_below
ncurses_pnoutrefresh
Ncurses Funções
PHP Manual

ncurses_panel_window

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_panel_window — Returns the window associated with panel

Descrição

resource ncurses_panel_window ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_panel_below
ncurses_pnoutrefresh
Ncurses Funções


Copies a region from a pad into the virtual screen

ncurses_panel_window
ncurses_prefresh
Ncurses Funções
PHP Manual

ncurses_pnoutrefresh

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_pnoutrefresh — Copies a region from a pad into the virtual screen

Descrição

int ncurses_pnoutrefresh ( resource $pad , int $pminrow , int $pmincol , int $sminrow , int $smincol , int $smaxrow , int $smaxcol )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pad

pminrow

pmincol

sminrow

smincol

smaxrow

smaxcol

ncurses_panel_window
ncurses_prefresh
Ncurses Funções


Copies a region from a pad into the virtual screen

ncurses_pnoutrefresh
ncurses_putp
Ncurses Funções
PHP Manual

ncurses_prefresh

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_prefresh — Copies a region from a pad into the virtual screen

Descrição

int ncurses_prefresh ( resource $pad , int $pminrow , int $pmincol , int $sminrow , int $smincol , int $smaxrow , int $smaxcol )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pad

pminrow

pmincol

sminrow

smincol

smaxrow

smaxcol

ncurses_pnoutrefresh
ncurses_putp
Ncurses Funções


Apply padding information to the string and output it

ncurses_prefresh
ncurses_qiflush
Ncurses Funções
PHP Manual

ncurses_putp

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_putp — Apply padding information to the string and output it

Descrição

int ncurses_putp ( string $text )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

text

ncurses_prefresh
ncurses_qiflush
Ncurses Funções


Flush on signal characters

ncurses_putp
ncurses_raw
Ncurses Funções
PHP Manual

ncurses_qiflush

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_qiflush — Flush on signal characters

Descrição

void ncurses_qiflush ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_putp
ncurses_raw
Ncurses Funções


Switch terminal into raw mode

ncurses_qiflush
ncurses_refresh
Ncurses Funções
PHP Manual

ncurses_raw

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_raw — Switch terminal into raw mode

Descrição

bool ncurses_raw ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Places the terminal in raw mode. Raw mode is similar to cbreak mode, in that characters typed are immediately passed through to the user program. The differences that are that in raw mode, the interrupt, quit, suspend and flow control characters are all passed through uninterpreted, instead of generating a signal.

Valor Retornado

Returns TRUE if any error occurred, otherwise FALSE.

Veja Também

  • ncurses_noraw() - Switch terminal out of raw mode
  • ncurses_cbreak() - Switch of input buffering
  • ncurses_nocbreak() - Switch terminal to cooked mode

ncurses_qiflush
ncurses_refresh
Ncurses Funções


Refresh screen

ncurses_raw
ncurses_replace_panel
Ncurses Funções
PHP Manual

ncurses_refresh

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_refresh — Refresh screen

Descrição

int ncurses_refresh ( int $ch )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

ch

ncurses_raw
ncurses_replace_panel
Ncurses Funções


Replaces the window associated with panel

ncurses_refresh
ncurses_reset_prog_mode
Ncurses Funções
PHP Manual

ncurses_replace_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_replace_panel — Replaces the window associated with panel

Descrição

int ncurses_replace_panel ( resource $panel , resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

window

ncurses_refresh
ncurses_reset_prog_mode
Ncurses Funções


Resets the prog mode saved by def_prog_mode

ncurses_replace_panel
ncurses_reset_shell_mode
Ncurses Funções
PHP Manual

ncurses_reset_prog_mode

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_reset_prog_mode — Resets the prog mode saved by def_prog_mode

Descrição

int ncurses_reset_prog_mode ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_replace_panel
ncurses_reset_shell_mode
Ncurses Funções


Resets the shell mode saved by def_shell_mode

ncurses_reset_prog_mode
ncurses_resetty
Ncurses Funções
PHP Manual

ncurses_reset_shell_mode

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_reset_shell_mode — Resets the shell mode saved by def_shell_mode

Descrição

int ncurses_reset_shell_mode ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_reset_prog_mode
ncurses_resetty
Ncurses Funções


Restores saved terminal state

ncurses_reset_shell_mode
ncurses_savetty
Ncurses Funções
PHP Manual

ncurses_resetty

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_resetty — Restores saved terminal state

Descrição

bool ncurses_resetty ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Restores the terminal state, which was previously saved by calling ncurses_savetty().

Valor Retornado

Always returns FALSE.

Veja Também

  • ncurses_savetty() - Saves terminal state

ncurses_reset_shell_mode
ncurses_savetty
Ncurses Funções


Saves terminal state

ncurses_resetty
ncurses_scr_dump
Ncurses Funções
PHP Manual

ncurses_savetty

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_savetty — Saves terminal state

Descrição

bool ncurses_savetty ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Saves the current terminal state. The saved terminal state can be restored with ncurses_resetty().

Valor Retornado

Always returns FALSE.

Veja Também

  • ncurses_resetty() - Restores saved terminal state

ncurses_resetty
ncurses_scr_dump
Ncurses Funções


Dump screen content to file

ncurses_savetty
ncurses_scr_init
Ncurses Funções
PHP Manual

ncurses_scr_dump

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_scr_dump — Dump screen content to file

Descrição

int ncurses_scr_dump ( string $filename )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filename

ncurses_savetty
ncurses_scr_init
Ncurses Funções


Initialize screen from file dump

ncurses_scr_dump
ncurses_scr_restore
Ncurses Funções
PHP Manual

ncurses_scr_init

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_scr_init — Initialize screen from file dump

Descrição

int ncurses_scr_init ( string $filename )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filename

ncurses_scr_dump
ncurses_scr_restore
Ncurses Funções


Restore screen from file dump

ncurses_scr_init
ncurses_scr_set
Ncurses Funções
PHP Manual

ncurses_scr_restore

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_scr_restore — Restore screen from file dump

Descrição

int ncurses_scr_restore ( string $filename )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filename

ncurses_scr_init
ncurses_scr_set
Ncurses Funções


Inherit screen from file dump

ncurses_scr_restore
ncurses_scrl
Ncurses Funções
PHP Manual

ncurses_scr_set

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_scr_set — Inherit screen from file dump

Descrição

int ncurses_scr_set ( string $filename )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filename

ncurses_scr_restore
ncurses_scrl
Ncurses Funções


Scroll window content up or down without changing current position

ncurses_scr_set
ncurses_show_panel
Ncurses Funções
PHP Manual

ncurses_scrl

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_scrl — Scroll window content up or down without changing current position

Descrição

int ncurses_scrl ( int $count )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

count

ncurses_scr_set
ncurses_show_panel
Ncurses Funções


Places an invisible panel on top of the stack, making it visible

ncurses_scrl
ncurses_slk_attr
Ncurses Funções
PHP Manual

ncurses_show_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_show_panel — Places an invisible panel on top of the stack, making it visible

Descrição

int ncurses_show_panel ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_scrl
ncurses_slk_attr
Ncurses Funções


Returns current soft label key attribute

ncurses_show_panel
ncurses_slk_attroff
Ncurses Funções
PHP Manual

ncurses_slk_attr

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_attr — Returns current soft label key attribute

Descrição

int ncurses_slk_attr ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the current soft label key attribute.

Valor Retornado

The attribute, as an integer.

ncurses_show_panel
ncurses_slk_attroff
Ncurses Funções


Turn off the given attributes for soft function-key labels

ncurses_slk_attr
ncurses_slk_attron
Ncurses Funções
PHP Manual

ncurses_slk_attroff

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_attroff — Turn off the given attributes for soft function-key labels

Descrição

int ncurses_slk_attroff ( int $intarg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

intarg

ncurses_slk_attr
ncurses_slk_attron
Ncurses Funções


Turn on the given attributes for soft function-key labels

ncurses_slk_attroff
ncurses_slk_attrset
Ncurses Funções
PHP Manual

ncurses_slk_attron

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_attron — Turn on the given attributes for soft function-key labels

Descrição

int ncurses_slk_attron ( int $intarg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

intarg

ncurses_slk_attroff
ncurses_slk_attrset
Ncurses Funções


Set given attributes for soft function-key labels

ncurses_slk_attron
ncurses_slk_clear
Ncurses Funções
PHP Manual

ncurses_slk_attrset

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_attrset — Set given attributes for soft function-key labels

Descrição

int ncurses_slk_attrset ( int $intarg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

intarg

ncurses_slk_attron
ncurses_slk_clear
Ncurses Funções


Clears soft labels from screen

ncurses_slk_attrset
ncurses_slk_color
Ncurses Funções
PHP Manual

ncurses_slk_clear

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_clear — Clears soft labels from screen

Descrição

bool ncurses_slk_clear ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

The function ncurses_slk_clear() clears soft label keys from screen.

Valor Retornado

Returns TRUE on errors, FALSE otherwise.

ncurses_slk_attrset
ncurses_slk_color
Ncurses Funções


Sets color for soft label keys

ncurses_slk_clear
ncurses_slk_init
Ncurses Funções
PHP Manual

ncurses_slk_color

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_color — Sets color for soft label keys

Descrição

int ncurses_slk_color ( int $intarg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

intarg

ncurses_slk_clear
ncurses_slk_init
Ncurses Funções


Initializes soft label key functions

ncurses_slk_color
ncurses_slk_noutrefresh
Ncurses Funções
PHP Manual

ncurses_slk_init

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_init — Initializes soft label key functions

Descrição

bool ncurses_slk_init ( int $format )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Initializes soft label key functions

This function must be called before ncurses_init() or ncurses_newwin() is called.

Parâmetros

format

If ncurses_init() eventually uses a line from stdscr to emulate the soft labels, then this parameter determines how the labels are arranged of the screen.

0 indicates a 3-2-3 arrangement of the labels, 1 indicates a 4-4 arrangement and 2 indicates the PC like 4-4-4 mode, but in addition an index line will be created.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ncurses_slk_color
ncurses_slk_noutrefresh
Ncurses Funções


Copies soft label keys to virtual screen

ncurses_slk_init
ncurses_slk_refresh
Ncurses Funções
PHP Manual

ncurses_slk_noutrefresh

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_noutrefresh — Copies soft label keys to virtual screen

Descrição

bool ncurses_slk_noutrefresh ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_slk_init
ncurses_slk_refresh
Ncurses Funções


Copies soft label keys to screen

ncurses_slk_noutrefresh
ncurses_slk_restore
Ncurses Funções
PHP Manual

ncurses_slk_refresh

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_refresh — Copies soft label keys to screen

Descrição

int ncurses_slk_refresh ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Copies soft label keys from virtual screen to physical screen.

ncurses_slk_noutrefresh
ncurses_slk_restore
Ncurses Funções


Restores soft label keys

ncurses_slk_refresh
ncurses_slk_set
Ncurses Funções
PHP Manual

ncurses_slk_restore

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_restore — Restores soft label keys

Descrição

int ncurses_slk_restore ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Restores the soft label keys after ncurses_slk_clear() has been performed.

ncurses_slk_refresh
ncurses_slk_set
Ncurses Funções


Sets function key labels

ncurses_slk_restore
ncurses_slk_touch
Ncurses Funções
PHP Manual

ncurses_slk_set

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_set — Sets function key labels

Descrição

bool ncurses_slk_set ( int $labelnr , string $label , int $format )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

labelnr

label

format

ncurses_slk_restore
ncurses_slk_touch
Ncurses Funções


Forces output when ncurses_slk_noutrefresh is performed

ncurses_slk_set
ncurses_standend
Ncurses Funções
PHP Manual

ncurses_slk_touch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_slk_touch — Forces output when ncurses_slk_noutrefresh is performed

Descrição

int ncurses_slk_touch ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Forces all the soft labels to be output the next time a ncurses_slk_noutrefresh() is performed.

ncurses_slk_set
ncurses_standend
Ncurses Funções


Stop using 'standout' attribute

ncurses_slk_touch
ncurses_standout
Ncurses Funções
PHP Manual

ncurses_standend

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_standend — Stop using 'standout' attribute

Descrição

int ncurses_standend ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_slk_touch
ncurses_standout
Ncurses Funções


Start using 'standout' attribute

ncurses_standend
ncurses_start_color
Ncurses Funções
PHP Manual

ncurses_standout

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_standout — Start using 'standout' attribute

Descrição

int ncurses_standout ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_standend
ncurses_start_color
Ncurses Funções


Initializes color functionality

ncurses_standout
ncurses_termattrs
Ncurses Funções
PHP Manual

ncurses_start_color

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_start_color — Initializes color functionality

Descrição

int ncurses_start_color ( void )

Initializes color functionality in ncurses. This function must be called before any color manipulation functions are called and after ncurses_init() is called. It is good practice to call this function right after ncurses_init().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns 0 on success, or -1 if the color table could not be allocated or ncurses was not initialized.

Exemplos

Exemplo #1 Writing a string with a specified color to the screen

<?php
ncurses_init();

// If the terminal supports colors, initialize and set active color
if (ncurses_has_colors()) {
    ncurses_start_color();
    ncurses_init_pair(1, NCURSES_COLOR_YELLOW, NCURSES_COLOR_BLUE);
    ncurses_color_set(1);
}

// Write a string at specified location
ncurses_mvaddstr(10, 10, "Hello world! Yellow on blue text!");

// Flush output to screen
ncurses_refresh();

ncurses_end();
?>

Veja Também

  • ncurses_can_change_color() - Checks if terminal color definitions can be changed
  • ncurses_has_colors() - Checks if terminal has color capabilities

ncurses_standout
ncurses_termattrs
Ncurses Funções


Returns a logical OR of all attribute flags supported by terminal

ncurses_start_color
ncurses_termname
Ncurses Funções
PHP Manual

ncurses_termattrs

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_termattrs — Returns a logical OR of all attribute flags supported by terminal

Descrição

bool ncurses_termattrs ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_start_color
ncurses_termname
Ncurses Funções


Returns terminals (short)-name

ncurses_termattrs
ncurses_timeout
Ncurses Funções
PHP Manual

ncurses_termname

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_termname — Returns terminals (short)-name

Descrição

string ncurses_termname ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns terminals shortname.

Valor Retornado

Returns the shortname of the terminal, truncated to 14 characters. On errors, returns NULL.

Veja Também

  • ncurses_longname() - Returns terminals description

ncurses_termattrs
ncurses_timeout
Ncurses Funções


Set timeout for special key sequences

ncurses_termname
ncurses_top_panel
Ncurses Funções
PHP Manual

ncurses_timeout

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_timeout — Set timeout for special key sequences

Descrição

void ncurses_timeout ( int $millisec )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

millisec

ncurses_termname
ncurses_top_panel
Ncurses Funções


Moves a visible panel to the top of the stack

ncurses_timeout
ncurses_typeahead
Ncurses Funções
PHP Manual

ncurses_top_panel

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_top_panel — Moves a visible panel to the top of the stack

Descrição

int ncurses_top_panel ( resource $panel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

panel

ncurses_timeout
ncurses_typeahead
Ncurses Funções


Specify different filedescriptor for typeahead checking

ncurses_top_panel
ncurses_ungetch
Ncurses Funções
PHP Manual

ncurses_typeahead

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_typeahead — Specify different filedescriptor for typeahead checking

Descrição

int ncurses_typeahead ( int $fd )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

fd

ncurses_top_panel
ncurses_ungetch
Ncurses Funções


Put a character back into the input stream

ncurses_typeahead
ncurses_ungetmouse
Ncurses Funções
PHP Manual

ncurses_ungetch

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_ungetch — Put a character back into the input stream

Descrição

int ncurses_ungetch ( int $keycode )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

keycode

ncurses_typeahead
ncurses_ungetmouse
Ncurses Funções


Pushes mouse event to queue

ncurses_ungetch
ncurses_update_panels
Ncurses Funções
PHP Manual

ncurses_ungetmouse

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_ungetmouse — Pushes mouse event to queue

Descrição

bool ncurses_ungetmouse ( array $mevent )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Pushes a KEY_MOUSE event onto the unput queue and associates with this event the given state sata and screen-relative character cell coordinates, specified in mevent.

Parâmetros

mevent

An associative array specifying the event options:

  • "id" : Id to distinguish multiple devices

  • "x" : screen relative x-position in character cells

  • "y" : screen relative y-position in character cells

  • "z" : currently not supported

  • "mmask" : Mouse action

Valor Retornado

Returns FALSE on success, TRUE otherwise.

Veja Também

  • ncurses_getmouse() - Reads mouse event

ncurses_ungetch
ncurses_update_panels
Ncurses Funções


Refreshes the virtual screen to reflect the relations between panels in the stack

ncurses_ungetmouse
ncurses_use_default_colors
Ncurses Funções
PHP Manual

ncurses_update_panels

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_update_panels — Refreshes the virtual screen to reflect the relations between panels in the stack

Descrição

void ncurses_update_panels ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_ungetmouse
ncurses_use_default_colors
Ncurses Funções


Assign terminal default colors to color id -1

ncurses_update_panels
ncurses_use_env
Ncurses Funções
PHP Manual

ncurses_use_default_colors

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_use_default_colors — Assign terminal default colors to color id -1

Descrição

bool ncurses_use_default_colors ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ncurses_update_panels
ncurses_use_env
Ncurses Funções


Control use of environment information about terminal size

ncurses_use_default_colors
ncurses_use_extended_names
Ncurses Funções
PHP Manual

ncurses_use_env

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_use_env — Control use of environment information about terminal size

Descrição

void ncurses_use_env ( bool $flag )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flag

ncurses_use_default_colors
ncurses_use_extended_names
Ncurses Funções


Control use of extended names in terminfo descriptions

ncurses_use_env
ncurses_vidattr
Ncurses Funções
PHP Manual

ncurses_use_extended_names

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_use_extended_names — Control use of extended names in terminfo descriptions

Descrição

int ncurses_use_extended_names ( bool $flag )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flag

ncurses_use_env
ncurses_vidattr
Ncurses Funções


Display the string on the terminal in the video attribute mode

ncurses_use_extended_names
ncurses_vline
Ncurses Funções
PHP Manual

ncurses_vidattr

(PHP 4 >= 4.0.7, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_vidattr — Display the string on the terminal in the video attribute mode

Descrição

int ncurses_vidattr ( int $intarg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

intarg

ncurses_use_extended_names
ncurses_vline
Ncurses Funções


Draw a vertical line at current position using an attributed character and max. n characters long

ncurses_vidattr
ncurses_waddch
Ncurses Funções
PHP Manual

ncurses_vline

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_vline — Draw a vertical line at current position using an attributed character and max. n characters long

Descrição

int ncurses_vline ( int $charattr , int $n )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

charattr

n

ncurses_vidattr
ncurses_waddch
Ncurses Funções


Adds character at current position in a window and advance cursor

ncurses_vline
ncurses_waddstr
Ncurses Funções
PHP Manual

ncurses_waddch

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_waddch — Adds character at current position in a window and advance cursor

Descrição

int ncurses_waddch ( resource $window , int $ch )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ch

ncurses_vline
ncurses_waddstr
Ncurses Funções


Outputs text at current postion in window

ncurses_waddch
ncurses_wattroff
Ncurses Funções
PHP Manual

ncurses_waddstr

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_waddstr — Outputs text at current postion in window

Descrição

int ncurses_waddstr ( resource $window , string $str [, int $n ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

str

n

ncurses_waddch
ncurses_wattroff
Ncurses Funções


Turns off attributes for a window

ncurses_waddstr
ncurses_wattron
Ncurses Funções
PHP Manual

ncurses_wattroff

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wattroff — Turns off attributes for a window

Descrição

int ncurses_wattroff ( resource $window , int $attrs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

attrs

ncurses_waddstr
ncurses_wattron
Ncurses Funções


Turns on attributes for a window

ncurses_wattroff
ncurses_wattrset
Ncurses Funções
PHP Manual

ncurses_wattron

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wattron — Turns on attributes for a window

Descrição

int ncurses_wattron ( resource $window , int $attrs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

attrs

ncurses_wattroff
ncurses_wattrset
Ncurses Funções


Set the attributes for a window

ncurses_wattron
ncurses_wborder
Ncurses Funções
PHP Manual

ncurses_wattrset

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wattrset — Set the attributes for a window

Descrição

int ncurses_wattrset ( resource $window , int $attrs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

attrs

ncurses_wattron
ncurses_wborder
Ncurses Funções


Draws a border around the window using attributed characters

ncurses_wattrset
ncurses_wclear
Ncurses Funções
PHP Manual

ncurses_wborder

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wborder — Draws a border around the window using attributed characters

Descrição

int ncurses_wborder ( resource $window , int $left , int $right , int $top , int $bottom , int $tl_corner , int $tr_corner , int $bl_corner , int $br_corner )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Draws the specified lines and corners around the passed window.

Use ncurses_border() for borders around the main window.

Parâmetros

Each parameter expects 0 to draw a line and 1 to skip it.

window

The window on which we operate

left

right

top

bottom

tl_corner

Top left corner

tr_corner

Top right corner

bl_corner

Bottom left corner

br_corner

Bottom right corner

Veja Também

  • ncurses_border() - Draw a border around the screen using attributed characters

ncurses_wattrset
ncurses_wclear
Ncurses Funções


Clears window

ncurses_wborder
ncurses_wcolor_set
Ncurses Funções
PHP Manual

ncurses_wclear

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wclear — Clears window

Descrição

int ncurses_wclear ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wborder
ncurses_wcolor_set
Ncurses Funções


Sets windows color pairings

ncurses_wclear
ncurses_werase
Ncurses Funções
PHP Manual

ncurses_wcolor_set

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wcolor_set — Sets windows color pairings

Descrição

int ncurses_wcolor_set ( resource $window , int $color_pair )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

color_pair

ncurses_wclear
ncurses_werase
Ncurses Funções


Erase window contents

ncurses_wcolor_set
ncurses_wgetch
Ncurses Funções
PHP Manual

ncurses_werase

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_werase — Erase window contents

Descrição

int ncurses_werase ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wcolor_set
ncurses_wgetch
Ncurses Funções


Reads a character from keyboard (window)

ncurses_werase
ncurses_whline
Ncurses Funções
PHP Manual

ncurses_wgetch

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wgetch — Reads a character from keyboard (window)

Descrição

int ncurses_wgetch ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_werase
ncurses_whline
Ncurses Funções


Draws a horizontal line in a window at current position using an attributed character and max. n characters long

ncurses_wgetch
ncurses_wmouse_trafo
Ncurses Funções
PHP Manual

ncurses_whline

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_whline — Draws a horizontal line in a window at current position using an attributed character and max. n characters long

Descrição

int ncurses_whline ( resource $window , int $charattr , int $n )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

charattr

n

ncurses_wgetch
ncurses_wmouse_trafo
Ncurses Funções


Transforms window/stdscr coordinates

ncurses_whline
ncurses_wmove
Ncurses Funções
PHP Manual

ncurses_wmouse_trafo

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wmouse_trafo — Transforms window/stdscr coordinates

Descrição

bool ncurses_wmouse_trafo ( resource $window , int &$y , int &$x , bool $toscreen )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

x

y

toscreen

ncurses_whline
ncurses_wmove
Ncurses Funções


Moves windows output position

ncurses_wmouse_trafo
ncurses_wnoutrefresh
Ncurses Funções
PHP Manual

ncurses_wmove

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wmove — Moves windows output position

Descrição

int ncurses_wmove ( resource $window , int $y , int $x )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

y

x

ncurses_wmouse_trafo
ncurses_wnoutrefresh
Ncurses Funções


Copies window to virtual screen

ncurses_wmove
ncurses_wrefresh
Ncurses Funções
PHP Manual

ncurses_wnoutrefresh

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wnoutrefresh — Copies window to virtual screen

Descrição

int ncurses_wnoutrefresh ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wmove
ncurses_wrefresh
Ncurses Funções


Refresh window on terminal screen

ncurses_wnoutrefresh
ncurses_wstandend
Ncurses Funções
PHP Manual

ncurses_wrefresh

(PHP 4 >= 4.2.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wrefresh — Refresh window on terminal screen

Descrição

int ncurses_wrefresh ( resource $window )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wnoutrefresh
ncurses_wstandend
Ncurses Funções


End standout mode for a window

ncurses_wrefresh
ncurses_wstandout
Ncurses Funções
PHP Manual

ncurses_wstandend

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wstandend — End standout mode for a window

Descrição

int ncurses_wstandend ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wrefresh
ncurses_wstandout
Ncurses Funções


Enter standout mode for a window

ncurses_wstandend
ncurses_wvline
Ncurses Funções
PHP Manual

ncurses_wstandout

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wstandout — Enter standout mode for a window

Descrição

int ncurses_wstandout ( resource $window )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

ncurses_wstandend
ncurses_wvline
Ncurses Funções


Draws a vertical line in a window at current position using an attributed character and max. n characters long

ncurses_wstandout
Readline
Ncurses Funções
PHP Manual

ncurses_wvline

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_wvline — Draws a vertical line in a window at current position using an attributed character and max. n characters long

Descrição

int ncurses_wvline ( resource $window , int $charattr , int $n )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

window

charattr

n

ncurses_wstandout
Readline
Ncurses Funções


GNU Readline

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Readline
    • readline_add_history — Adiciona uma linha ao histórico
    • readline_callback_handler_install — Initializes the readline callback interface and terminal, prints the prompt and returns immediately
    • readline_callback_handler_remove — Removes a previously installed callback handler and restores terminal settings
    • readline_callback_read_char — Reads a character and informs the readline callback interface when a line is received
    • readline_clear_history — Limpa a história
    • readline_completion_function — Registra uma função de completar
    • readline_info — Obtém/Define várias variáveis internas do readline
    • readline_list_history — Lista a história
    • readline_on_new_line — Inform readline that the cursor has moved to a new line
    • readline_read_history — Lê a história
    • readline_redisplay — Redraws the display
    • readline_write_history — Grava a história
    • readline — Lê uma linha
ncurses_wvline
Introdução
Extensões Específica para Linha de Comando


Introdução

As funções readline() implementam uma interface para a biblioteca GNU Readline. Estas são funções que provem uma linha de comando editável. Um exeplo é o bash que permite a você usar as setas para inserir caracteres ou navegas no historico dos comandos. Por causa da naturesa interativa desta biblioteca, ela será de pouco uso para escrever aplicações web, mas será util quando você estiver escrevendo scripts que usem o PHP a partir da linha de comando.

Nota: Esta extensão não está disponível na plataforma Windows.

Readline
Instalação/Configuração
Readline


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Readline


Dependências

Para usar as funções readline, você precisa instalar a libreadline. Você pode encontrar a libreadline na página do projeto GNU Readline, em » http://cnswww.cns.cwru.edu/~chet/readline/rltop.html. É mantida por Chet Ramey, que também é o autor do Bash.

Você também pode utilizar estas funções com a biblioteca libedit, uma substituição não-GLP para a biblioteca readline. A biblioteca libedit esta sobre a licença BSD e esta disponível para download a partir de » http://www.thrysoee.dk/editline/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para usar estas funções você deverá compilar as versões CGI ou CLI version do PHP com suporte readline. Você precisa configurar o PHP com --with-readline[=DIR] . Para usar a substituiçao libedit readline, configure o PHP com --with-libedit[=DIR] .

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da Readline
Readline


Funções da Readline

Índice

  • readline_add_history — Adiciona uma linha ao histórico
  • readline_callback_handler_install — Initializes the readline callback interface and terminal, prints the prompt and returns immediately
  • readline_callback_handler_remove — Removes a previously installed callback handler and restores terminal settings
  • readline_callback_read_char — Reads a character and informs the readline callback interface when a line is received
  • readline_clear_history — Limpa a história
  • readline_completion_function — Registra uma função de completar
  • readline_info — Obtém/Define várias variáveis internas do readline
  • readline_list_history — Lista a história
  • readline_on_new_line — Inform readline that the cursor has moved to a new line
  • readline_read_history — Lê a história
  • readline_redisplay — Redraws the display
  • readline_write_history — Grava a história
  • readline — Lê uma linha
Constantes pré-definidas
readline_add_history
Readline


Adiciona uma linha ao histórico

Funções da Readline
readline_callback_handler_install
Funções da Readline
PHP Manual

readline_add_history

(PHP 4, PHP 5)

readline_add_history — Adiciona uma linha ao histórico

Descrição

bool readline_add_history ( string $line )

Esta função adiciona uma linha ao histórico da linha de comando.

Parâmetros

line

A linha para ser adicionada no histórico.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Funções da Readline
readline_callback_handler_install
Funções da Readline


Initializes the readline callback interface and terminal, prints the prompt and returns immediately

readline_add_history
readline_callback_handler_remove
Funções da Readline
PHP Manual

readline_callback_handler_install

(PHP 5 >= 5.1.0)

readline_callback_handler_install — Initializes the readline callback interface and terminal, prints the prompt and returns immediately

Descrição

bool readline_callback_handler_install ( string $prompt , callback $callback )

Sets up a readline callback interface then prints prompt and immediately returns. Calling this function twice without removing the previous callback interface will automatically and conveniently overwrite the old interface.

The callback feature is useful when combined with stream_select() as it allows interleaving of IO and user input, unlike readline().

Parâmetros

prompt

The prompt message.

callback

The callback function takes one parameter; the user input returned.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Readline Callback Interface Example

<?php
function rl_callback($ret)
{
    global $c, $prompting;

    echo "You entered: $ret\n";
    $c++;

    if ($c > 10) {
        $prompting = false;
        readline_callback_handler_remove();
    } else {
        readline_callback_handler_install("[$c] Enter something: ", 'rl_callback');
    }
}

$c = 1;
$prompting = true;

readline_callback_handler_install("[$c] Enter something: ", 'rl_callback');

while ($prompting) {
    $w = NULL;
    $e = NULL;
    $n = stream_select($r = array(STDIN), $w, $e, null);
    if ($n && in_array(STDIN, $r)) {
        // read a character, will call the callback when a newline is entered
        readline_callback_read_char();
    }
}

echo "Prompting disabled. All done.\n";
?>

Veja Também

  • readline_callback_handler_remove() - Removes a previously installed callback handler and restores terminal settings
  • readline_callback_read_char() - Reads a character and informs the readline callback interface when a line is received
  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec

readline_add_history
readline_callback_handler_remove
Funções da Readline


Removes a previously installed callback handler and restores terminal settings

readline_callback_handler_install
readline_callback_read_char
Funções da Readline
PHP Manual

readline_callback_handler_remove

(PHP 5 >= 5.1.0)

readline_callback_handler_remove — Removes a previously installed callback handler and restores terminal settings

Descrição

bool readline_callback_handler_remove ( void )

Removes a previously installed callback handler and restores terminal settings.

Valor Retornado

Returns TRUE if a previously installed callback handler was removed, or FALSE if one could not be found.

Exemplos

See readline_callback_handler_install() for an example of how to use the readline callback interface.

Veja Também

  • readline_callback_handler_install() - Initializes the readline callback interface and terminal, prints the prompt and returns immediately
  • readline_callback_read_char() - Reads a character and informs the readline callback interface when a line is received

readline_callback_handler_install
readline_callback_read_char
Funções da Readline


Reads a character and informs the readline callback interface when a line is received

readline_callback_handler_remove
readline_clear_history
Funções da Readline
PHP Manual

readline_callback_read_char

(PHP 5 >= 5.1.0)

readline_callback_read_char — Reads a character and informs the readline callback interface when a line is received

Descrição

void readline_callback_read_char ( void )

Reads a character of user input. When a line is received, this function informs the readline callback interface installed using readline_callback_handler_install() that a line is ready for input.

Valor Retornado

Não há valor retornado.

Exemplos

See readline_callback_handler_install() for an example of how to use the readline callback interface.

Veja Também

  • readline_callback_handler_install() - Initializes the readline callback interface and terminal, prints the prompt and returns immediately
  • readline_callback_handler_remove() - Removes a previously installed callback handler and restores terminal settings

readline_callback_handler_remove
readline_clear_history
Funções da Readline


Limpa a história

readline_callback_read_char
readline_completion_function
Funções da Readline
PHP Manual

readline_clear_history

(PHP 4, PHP 5)

readline_clear_history — Limpa a história

Descrição

bool readline_clear_history ( void )

Esta função limpa todo o histórico da linha de comando.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

readline_callback_read_char
readline_completion_function
Funções da Readline


Registra uma função de completar

readline_clear_history
readline_info
Funções da Readline
PHP Manual

readline_completion_function

(PHP 4, PHP 5)

readline_completion_function — Registra uma função de completar

Descrição

bool readline_completion_function ( callback $function )

Esta função registra uma função de completar. Este é o mesmo tipo de funcionamento que você tem se você pressionar a tecla tab enquanto estiver usando o Bash.

Parâmetros

function

Você deve usar o nome de uma função existente a qual aceita uma linha de comando parcial e retorna uma matriz de possíveis combinações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

readline_clear_history
readline_info
Funções da Readline


Obtém/Define várias variáveis internas do readline

readline_completion_function
readline_list_history
Funções da Readline
PHP Manual

readline_info

(PHP 4, PHP 5)

readline_info — Obtém/Define várias variáveis internas do readline

Descrição

mixed readline_info ([ string $varname [, string $newvalue ]] )

Obtém ou define várias variáveis internas da readline.

Parâmetros

varname

Um nome de variável.

newvalue

Se fornecido, este será o novo valor.

Valor Retornado

Se for utilizada sem parâmetros, esta função retorna uma matriz de valores para as configurações que a readline usa. Os elementos serão indexados pelos seguintes valores: done, end, erase_empty_line, library_version, line_buffer, mark, pending_input, point, prompt, readline_name, e terminal_name.

Se for utilizada com um ou dois parâmetros, o antigo valor é retornado.

readline_completion_function
readline_list_history
Funções da Readline


Lista a história

readline_info
readline_on_new_line
Funções da Readline
PHP Manual

readline_list_history

(PHP 4, PHP 5)

readline_list_history — Lista a história

Descrição

array readline_list_history ( void )

Obtém o histório de linha de comando inteiro.

Valor Retornado

Retorna um array do histórico de linha de comando inteiro. Os elementos são indexados por inteiros iniciando de zero.

readline_info
readline_on_new_line
Funções da Readline


Inform readline that the cursor has moved to a new line

readline_list_history
readline_read_history
Funções da Readline
PHP Manual

readline_on_new_line

(PHP 5 >= 5.1.0)

readline_on_new_line — Inform readline that the cursor has moved to a new line

Descrição

void readline_on_new_line ( void )

Tells readline that the cursor has moved to a new line.

Valor Retornado

Não há valor retornado.

readline_list_history
readline_read_history
Funções da Readline


Lê a história

readline_on_new_line
readline_redisplay
Funções da Readline
PHP Manual

readline_read_history

(PHP 4, PHP 5)

readline_read_history — Lê a história

Descrição

bool readline_read_history ([ string $filename ] )

Esta função lê a história dos comandos de um arquivo.

Parâmetros

filename

Caminho para o nome do arquivo contendo o histórico de comando.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

readline_on_new_line
readline_redisplay
Funções da Readline


Redraws the display

readline_read_history
readline_write_history
Funções da Readline
PHP Manual

readline_redisplay

(PHP 5 >= 5.1.0)

readline_redisplay — Redraws the display

Descrição

void readline_redisplay ( void )

Redraws readline to redraw the display.

Valor Retornado

Não há valor retornado.

readline_read_history
readline_write_history
Funções da Readline


Grava a história

readline_redisplay
readline
Funções da Readline
PHP Manual

readline_write_history

(PHP 4, PHP 5)

readline_write_history — Grava a história

Descrição

bool readline_write_history ([ string $filename ] )

Esta função escreve a história dos comandos em um arquivo.

Parâmetros

filename

Caminho para salvar o arquivo.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

readline_redisplay
readline
Funções da Readline


Lê uma linha

readline_write_history
Extensões de Compressão e Arquivo
Funções da Readline
PHP Manual

readline

(PHP 4, PHP 5)

readline — Lê uma linha

Descrição

string readline ([ string $prompt ] )

Lê uma única linha do usuário. Você precisa adicionar esta linha para armazenar no histórico usando readline_add_history().

Parâmetros

prompt

Você pode especificar uma string a qual é o prompt do usuário.

Valor Retornado

Retorna uma simples string do usuário. A linha retornada tem o caractere de newline do removido.

Exemplos

Exemplo #1 readline()

<?php
// Obtém três comandos do usuário
for ($i=0; $i < 3; $i++) {
        $line = readline("Command: ");
        readline_add_history($line);
}

// Mostra o historíco
print_r(readline_list_history());

// Mostra as variáveis
print_r(readline_info());
?>

readline_write_history
Extensões de Compressão e Arquivo
Funções da Readline


Extensões de Compressão e Arquivo

  • Bzip2
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Bzip2 Funções
  • LZF
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da LZF
  • Phar
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Using Phar Archives
    • Creating Phar Archives
    • What makes a phar a phar and not a tar or a zip?
    • Phar — The Phar class
    • PharData — The PharData class
    • PharFileInfo — The PharFileInfo class
    • PharException — The PharException class
  • Rar — Rar Archiving
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Rar Funções
    • RarArchive — The RarArchive class
    • RarEntry — The RarEntry class
    • RarException — The RarException class
  • Zip
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Zip
  • Zlib — Compressão Zlib
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da Zlib
readline
Bzip2
Referência das Funções


Bzip2

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Bzip2 Funções
    • bzclose — Fecha um ponteiro de arquivo bzip2
    • bzcompress — Comprime uma string em dados no formato bzip2
    • bzdecompress — Descomprime dados no formato bzip2
    • bzerrno — Retorna um número de erro do bzip2
    • bzerror — Retorna o número e string de erro do bzip2 em um array
    • bzerrstr — Retorna a string de erro do bzip2
    • bzflush — Força a escrita de todos os dados que estão no buffer
    • bzopen — Abre um arquivo comprimido com bzip2
    • bzread — Leitura binary-safe de um arquivo bzip2
    • bzwrite — Escrita binary-safe em um arquivo bzip2
Extensões de Compressão e Arquivo
Introdução
Extensões de Compressão e Arquivo


Introdução

As funções para bzip2 são usadas para ler e escrever, de forma transparente, arquivos compactados do tipo bzip2 (.bz2).

Bzip2
Instalação/Configuração
Bzip2


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Bzip2


Dependências

Este módulo utiliza as funções da biblioteca » bzip2 desenvolvida por Julian Seward. Este módulo requer bzip2/libbzip2 versão >= 1.0.x.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Suporte ao Bzip2 no PHP nÃ£o estÃ¡ disponÃvel por padrÃ£o. VocÃª precisarÃ¡ usar a opÃ§Ã£o de configuraÃ§Ã£o --with-bz2[=DIR] quando compilar o PHP para habilitar o suporte Ã bzip2.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão define um tipo de recurso (resource): um ponteiro para arquivo que identifica o arquivo bzip2 que está sendo usado.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Bzip2


Exemplos

Este exemplo abre um arquivo temporário e escreve uma string de test nele, e então mostra o conteúdo do arquivo.

Exemplo #1 Um exemplo simples de bzip2

<?php

$filename = "/tmp/testfile.bz2";
$str = "This is a test string.\n";

// open file for writing
$bz = bzopen($filename, "w");

// write string to file
bzwrite($bz, $str);

// close file
bzclose($bz);

// open file for reading
$bz = bzopen($filename, "r");

// read 10 characters
echo bzread($bz, 10);

// output until end of the file (or the next 1024 char) and close it.
echo bzread($bz);

bzclose($bz);

?>
Constantes pré-definidas
Bzip2 Funções
Bzip2


Bzip2 Funções

Índice

  • bzclose — Fecha um ponteiro de arquivo bzip2
  • bzcompress — Comprime uma string em dados no formato bzip2
  • bzdecompress — Descomprime dados no formato bzip2
  • bzerrno — Retorna um número de erro do bzip2
  • bzerror — Retorna o número e string de erro do bzip2 em um array
  • bzerrstr — Retorna a string de erro do bzip2
  • bzflush — Força a escrita de todos os dados que estão no buffer
  • bzopen — Abre um arquivo comprimido com bzip2
  • bzread — Leitura binary-safe de um arquivo bzip2
  • bzwrite — Escrita binary-safe em um arquivo bzip2
Exemplos
bzclose
Bzip2


Fecha um ponteiro de arquivo bzip2

Bzip2 Funções
bzcompress
Bzip2 Funções
PHP Manual

bzclose

(PHP 4 >= 4.0.4, PHP 5)

bzclose — Fecha um ponteiro de arquivo bzip2

Descrição

int bzclose ( resource $bz )

Fecha o dado ponteiro de arquivo bzip2.

Parâmetros

bz

O ponteiro de arquivo. Ele precisa ser válido e precisa apontar para um arquivo devidamente aberto com sucesso por bzopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • bzopen() - Abre um arquivo comprimido com bzip2

Bzip2 Funções
bzcompress
Bzip2 Funções


Comprime uma string em dados no formato bzip2

bzclose
bzdecompress
Bzip2 Funções
PHP Manual

bzcompress

(PHP 4 >= 4.0.4, PHP 5)

bzcompress — Comprime uma string em dados no formato bzip2

Descrição

string bzcompress ( string $source [, int $blocksize [, int $workfactor ]] )

bzcompress() comprime a string source e a retorna no formato de dados codificados com bzip2.

O parâmetro opcional blocksize especifica o tamanho do bloco utilizado no momento de compressão e deve ser um número de 1 a 9, com 9 sendo a melhor taxa de compressão, mas usando mais recursos para fazê-lo. O valor padrão de blocksize é 4.

O parâmetro opcional workfactor controla como a fase de compressão irá se comportar quando ocorrer o pior caso: a entrada de dados muito repetitivos. O seu valor pode ser de 0 até 250, com 0 sendo um caso especial, e 30 o valor padrão. Independente do valor de workfactor, a saída gerada será a mesma.

Exemplo #1 Exemplo de bzcompress()

<?php
$str = "demonstracao de dados comprimidos";
$bzstr = bzcompress($str, 9);
echo $bzstr;
?>

Veja também bzdecompress().

bzclose
bzdecompress
Bzip2 Funções


Descomprime dados no formato bzip2

bzcompress
bzerrno
Bzip2 Funções
PHP Manual

bzdecompress

(PHP 4 >= 4.0.4, PHP 5)

bzdecompress — Descomprime dados no formato bzip2

Descrição

string bzdecompress ( string $source [, int $small ] )

bzdecompress() descomprime a string source string contendo dados no formato bzip2 e retorna o seu valor. Se o parâmetro opcional small for TRUE, um algoritmo alternativo de descompressão, com a utilização de menos memória (a máxima quantidade de memória requerida é em torno de 2300K), será usado mas funciona com a metade da velocidade. Veja a documentação do » bzip2 para mais informações sobre essa característica.

Exemplo #1 bzdecompress()

<?php
$start_str = "Esse cara é legal?";
$bzstr = bzcompress($start_str);

echo "String Comprimida: ";
echo $bzstr;
echo "\n<br />\n";

$str = bzdecompress($bzstr);
echo "String Descomprimida: ";
echo $str;
echo "\n<br />\n";
?>

Veja também bzcompress().

bzcompress
bzerrno
Bzip2 Funções


Retorna um número de erro do bzip2

bzdecompress
bzerror
Bzip2 Funções
PHP Manual

bzerrno

(PHP 4 >= 4.0.4, PHP 5)

bzerrno — Retorna um número de erro do bzip2

Descrição

int bzerrno ( resource $bz )

Retorna o número do erro de qualquer erro do bzip2 retornado pelo ponteiro de arquivo bz.

Veja também bzerror() e bzerrstr().

bzdecompress
bzerror
Bzip2 Funções


Retorna o número e string de erro do bzip2 em um array

bzerrno
bzerrstr
Bzip2 Funções
PHP Manual

bzerror

(PHP 4 >= 4.0.4, PHP 5)

bzerror — Retorna o número e string de erro do bzip2 em um array

Descrição

array bzerror ( resource $bz )

Retorna o número e string do erro de um erro da bzip2 retornado pelo dado ponteiro de arquivo. bz.

Parâmetros

bz

O ponteiro do arquivo - Ele precisa ser válido e precisa apontar para um arquivo aberto com sucesso pela bzopen().

Valor Retornado

Retorna um array associativo, com o código de erro na entrada errno, e a mensagem de erro na entrada errstr.

Exemplos

Exemplo #1 Exemplo da bzerror()

<?php
$error = bzerror($bz);

echo $error["errno"];
echo $error["errstr"];
?>

Veja Também

  • bzerrno() - Retorna um número de erro do bzip2
  • bzerrstr() - Retorna a string de erro do bzip2

bzerrno
bzerrstr
Bzip2 Funções


Retorna a string de erro do bzip2

bzerror
bzflush
Bzip2 Funções
PHP Manual

bzerrstr

(PHP 4 >= 4.0.4, PHP 5)

bzerrstr — Retorna a string de erro do bzip2

Descrição

string bzerrstr ( resource $bz )

Obtém a string de erro de um erro da bzip2 retornado para um dado ponteiro de arquivo.

Parâmetros

bz

O ponteiro do arquivo. Ele precisa ser válido e precisa apontar para um arquivo aberto com sucesso pela bzopen().

Valor Retornado

Retorna uma string contendo a mensagem de erro.

Veja Também

  • bzerrno() - Retorna um número de erro do bzip2
  • bzerror() - Retorna o número e string de erro do bzip2 em um array

bzerror
bzflush
Bzip2 Funções


Força a escrita de todos os dados que estão no buffer

bzerrstr
bzopen
Bzip2 Funções
PHP Manual

bzflush

(PHP 4 >= 4.0.4, PHP 5)

bzflush — Força a escrita de todos os dados que estão no buffer

Descrição

int bzflush ( resource $bz )

Força a escrita de todos os dados do bzip2 que estão em buffer para o ponteiro de arquivo bz.

Parâmetros

bz

O ponteiro do arquivo. Ele precisa ser válido e precisa apontar para um arquivo aberto com sucesso por bzopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • bzread() - Leitura binary-safe de um arquivo bzip2
  • bzwrite() - Escrita binary-safe em um arquivo bzip2

bzerrstr
bzopen
Bzip2 Funções


Abre um arquivo comprimido com bzip2

bzflush
bzread
Bzip2 Funções
PHP Manual

bzopen

(PHP 4 >= 4.0.4, PHP 5)

bzopen — Abre um arquivo comprimido com bzip2

Descrição

resource bzopen ( string $filename , string $mode )

Abre um arquivo bzip2 (.bz2) para leitura ou escrita. O parâmetro filename é o nome do arquivo a ser aberto. mode é similar ao da função fopen() (`r' para leitura, `w' para escrita, etc.).

Se esta função falhar, retorna FALSE, do contrário retorna um ponteiro de arquivo aberto.

Exemplo #1 Exemplo de bzopen()

<?php
$bz = bzopen("/tmp/foo.bz2", "r");
$arquivo_descomprimido = '';
while (!feof($bz)) {
      $arquivo_descomprimido .= bzread($bz, 4096);
}

bzclose($bz);

print( "O conteúdo de /tmp/foo.bz2 é: " );
print( "\n<br>\n" );
print( $arquivo_descomprimido );
?>

Veja também bzclose().

bzflush
bzread
Bzip2 Funções


Leitura binary-safe de um arquivo bzip2

bzopen
bzwrite
Bzip2 Funções
PHP Manual

bzread

(PHP 4 >= 4.0.4, PHP 5)

bzread — Leitura binary-safe de um arquivo bzip2

Descrição

string bzread ( resource $bz [, int $length ] )

bzread() lê o número de bytes equivalente a length do ponteiro de arquivo bzip2 referenciado por bz. A leitura pára quando a a quantidade de bytes referenciados por length (descomprimidos) foram lidos ou EOF foi alcançado, o que acontecer primeiro. Se o parâmetro opcional length não for especificado, bzread() irá ler 1024 bytes (descomprimidos) de cada vez.

Exemplo #1 Exemplo de bzread()

<?php
$file = "/tmp/foo.bz2";
$bz = bzopen($file", "r") or die("Couldn't open $file");

$decompressed_file = '';
while (!feof($bz)) {
    $decompressed_file .= bzread($bz, 4096);
}
bzclose($bz);

echo "The contents of /tmp/foo.bz2 are: <br />\n";
echo $decompressed_file;
?>

Veja também bzwrite(), feof() e bzopen().

bzopen
bzwrite
Bzip2 Funções


Escrita binary-safe em um arquivo bzip2

bzread
LZF
Bzip2 Funções
PHP Manual

bzwrite

(PHP 4 >= 4.0.4, PHP 5)

bzwrite — Escrita binary-safe em um arquivo bzip2

Descrição

int bzwrite ( resource $bz , string $data [, int $length ] )

bzwrite() escreve o conteúdo da string data no arquivo referenciado pelo ponteiro de arquivo bzip2 bz. Se o parâmetro opcional length for passado, a escrita irá parar depois deste número de bytes (descomprimidos) foram escritos ou se o final da string foi alcançado, o que acontecer primeiro.

Exemplo #1 Exemplo de bzwrite()

<?php
$str = "dados descomprimidos";
$bz = bzopen("/tmp/foo.bz2", "w");
bzwrite($bz, $str, strlen($str));
bzclose($bz);
?>

Veja também bzread() e bzopen().

bzread
LZF
Bzip2 Funções


LZF

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da LZF
    • lzf_compress — Compressão LZF
    • lzf_decompress — Descompressão LZF
    • lzf_optimized_for — Determina para que a extensão LZF foi otimizada
bzwrite
Introdução
Extensões de Compressão e Arquivo


Introdução

LZF é um algoritmo de compressão muito rápido, ideal para economizar espaço com um pequeno custo de velocidade. Ele pode ser otimizado para velocidade ou espaço em tempo de compilação. Esta extensão está usando para suas operações a biblioteca » liblzf de Marc Lehmann.

LZF
Instalação/Configuração
LZF


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
LZF


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/lzf.

Para usar estas funções você precisa compilar PHP com suporte a lzf usando a opção de configuração --with-lzf[=DIR] . Você pode também passar --enable-lzf-better-compression para otimizar o LZF mais para espaço do que velocidade.

Usuários Windows podem habilitar php_lzf.dll no php.ini para usar estas funções. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da LZF
LZF


Funções da LZF

Índice

  • lzf_compress — Compressão LZF
  • lzf_decompress — Descompressão LZF
  • lzf_optimized_for — Determina para que a extensão LZF foi otimizada
Constantes pré-definidas
lzf_compress
LZF


Compressão LZF

Funções da LZF
lzf_decompress
Funções da LZF
PHP Manual

lzf_compress

(PECL lzf >= 0.1.0)

lzf_compress — Compressão LZF

Descrição

string lzf_compress ( string $data )

lzf_compress() comprime a string data usando a codificação LZF.

Parâmetros

data

Retorna a string comprimida.

Valor Retornado

Retorna a informação comprimida ou FALSE se um erro ocorreu.

Veja Também

  • lzf_decompress() - Descompressão LZF

Funções da LZF
lzf_decompress
Funções da LZF


Descompressão LZF

lzf_compress
lzf_optimized_for
Funções da LZF
PHP Manual

lzf_decompress

(PECL lzf >= 0.1.0)

lzf_decompress — Descompressão LZF

Descrição

string lzf_decompress ( string $data )

lzf_compress() decomprime a string data contendo dados com codificação lzf.

Parâmetros

data

A string comprimida.

Valor Retornado

Retorna a informação decompressa ou FALSE se um erro ocorreu.

Veja Também

  • lzf_compress() - Compressão LZF

lzf_compress
lzf_optimized_for
Funções da LZF


Determina para que a extensão LZF foi otimizada

lzf_decompress
Phar
Funções da LZF
PHP Manual

lzf_optimized_for

(PECL lzf >= 1.0.0)

lzf_optimized_for — Determina para que a extensão LZF foi otimizada

Descrição

int lzf_optimized_for ( void )

Determina para que a extensão LZF foi otimizada durante a compilação.

Valor Retornado

Retorna 1 se LZF foi otimizada para velocidade, 0 para compressão.

lzf_decompress
Phar
Funções da LZF


Phar

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Using Phar Archives
    • Using Phar Archives: Introduction
    • Using Phar Archives: the phar stream wrapper
    • Using Phar Archives: the Phar and PharData class
  • Creating Phar Archives
    • Creating Phar Archives: Introduction
  • What makes a phar a phar and not a tar or a zip?
    • Ingredients of all Phar archives, independent of file format
    • Phar file stub
    • Head-to-head comparison of Phar, Tar and Zip
    • Tar-based phars
    • Zip-based phars
    • Phar File Format
    • Global Phar bitmapped flags
    • Phar manifest file entry definition
    • Phar Signature format
  • Phar — The Phar class
    • Phar::addEmptyDir — Add an empty directory to the phar archive
    • Phar::addFile — Add a file from the filesystem to the phar archive
    • Phar::addFromString — Add a file from the filesystem to the phar archive
    • Phar::apiVersion — Returns the api version
    • Phar::buildFromDirectory — Construct a phar archive from the files within a directory.
    • Phar::buildFromIterator — Construct a phar archive from an iterator.
    • Phar::canCompress — Returns whether phar extension supports compression using either zlib or bzip2
    • Phar::canWrite — Returns whether phar extension supports writing and creating phars
    • Phar::compress — Compresses the entire Phar archive using Gzip or Bzip2 compression
    • Phar::compressAllFilesBZIP2 — Compresses all files in the current Phar archive using Bzip2 compression
    • Phar::compressAllFilesGZ — Compresses all files in the current Phar archive using Gzip compression
    • Phar::compressFiles — Compresses all files in the current Phar archive
    • Phar::__construct — Construct a Phar archive object
    • Phar::convertToData — Convert a phar archive to a non-executable tar or zip file
    • Phar::convertToExecutable — Convert a phar archive to another executable phar archive file format
    • Phar::copy — Copy a file internal to the phar archive to another new file within the phar
    • Phar::count — Returns the number of entries (files) in the Phar archive
    • Phar::createDefaultStub — Create a phar-file format specific stub
    • Phar::decompress — Decompresses the entire Phar archive
    • Phar::decompressFiles — Decompresses all files in the current Phar archive
    • Phar::delMetadata — Deletes the global metadata of the phar
    • Phar::delete — Delete a file within a phar archive
    • Phar::extractTo — Extract the contents of a phar archive to a directory
    • Phar::getMetaData — Returns phar archive meta-data
    • Phar::getModified — Return whether phar was modified
    • Phar::getSignature — Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive
    • Phar::getStub — Return the PHP loader or bootstrap stub of a Phar archive
    • Phar::getSupportedCompression — Return array of supported compression algorithms
    • Phar::getSupportedSignatures — Return array of supported signature types
    • Phar::getVersion — Return version info of Phar archive
    • Phar::hasMetaData — Returns whether phar has global meta-data
    • Phar::interceptFileFuncs — instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions
    • Phar::isBuffering — Used to determine whether Phar write operations are being buffered, or are flushing directly to disk
    • Phar::isCompressed — Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
    • Phar::isFileFormat — Returns true if the phar archive is based on the tar/phar/zip file format depending on the parameter
    • Phar::isValidPharFilename — Returns whether the given filename is a valid phar filename
    • Phar::isWritable — Returns true if the phar archive can be modified
    • Phar::loadPhar — Loads any phar archive with an alias
    • Phar::mapPhar — Reads the currently executed file (a phar) and registers its manifest
    • Phar::mount — Mount an external path or file to a virtual location within the phar archive
    • Phar::mungServer — Defines a list of up to 4 $_SERVER variables that should be modified for execution
    • Phar::offsetExists — determines whether a file exists in the phar
    • Phar::offsetGet — Gets a PharFileInfo object for a specific file
    • Phar::offsetSet — set the contents of an internal file to those of an external file
    • Phar::offsetUnset — remove a file from a phar
    • Phar::running — Returns the full path on disk or full phar URL to the currently executing Phar archive
    • Phar::setAlias — Set the alias for the Phar archive
    • Phar::setDefaultStub — Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader
    • Phar::setMetadata — Sets phar archive meta-data
    • Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it.
    • Phar::setStub — Used to set the PHP loader or bootstrap stub of a Phar archive
    • Phar::startBuffering — Start buffering Phar write operations, do not modify the Phar object on disk
    • Phar::stopBuffering — Stop buffering write requests to the Phar archive, and save changes to disk
    • Phar::uncompressAllFiles — Uncompresses all files in the current Phar archive
    • Phar::unlinkArchive — Completely remove a phar archive from disk and from memory
    • Phar::webPhar — mapPhar for web-based phars. front controller for web applications
  • PharData — The PharData class
    • PharData::addEmptyDir — Add an empty directory to the tar/zip archive
    • PharData::addFile — Add a file from the filesystem to the tar/zip archive
    • PharData::addFromString — Add a file from the filesystem to the tar/zip archive
    • PharData::buildFromDirectory — Construct a tar/zip archive from the files within a directory.
    • PharData::buildFromIterator — Construct a tar or zip archive from an iterator.
    • PharData::compress — Compresses the entire tar/zip archive using Gzip or Bzip2 compression
    • PharData::compressFiles — Compresses all files in the current tar/zip archive
    • PharData::__construct — Construct a non-executable tar or zip archive object
    • PharData::convertToData — Convert a phar archive to a non-executable tar or zip file
    • PharData::convertToExecutable — Convert a non-executable tar/zip archive to an executable phar archive
    • PharData::copy — Copy a file internal to the phar archive to another new file within the phar
    • PharData::decompress — Decompresses the entire Phar archive
    • PharData::decompressFiles — Decompresses all files in the current zip archive
    • PharData::delMetadata — Deletes the global metadata of a zip archive
    • PharData::delete — Delete a file within a tar/zip archive
    • PharData::extractTo — Extract the contents of a tar/zip archive to a directory
    • PharData::isWritable — Returns true if the tar/zip archive can be modified
    • PharData::offsetSet — set the contents of a file within the tar/zip to those of an external file or string
    • PharData::offsetUnset — remove a file from a tar/zip archive
    • PharData::setAlias — dummy function (Phar::setAlias is not valid for PharData)
    • PharData::setDefaultStub — dummy function (Phar::setDefaultStub is not valid for PharData)
    • Phar::setMetadata — Sets phar archive meta-data
    • Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it. The
    • PharData::setStub — dummy function (Phar::setStub is not valid for PharData)
  • PharFileInfo — The PharFileInfo class
    • PharFileInfo::chmod — Sets file-specific permission bits
    • PharFileInfo::compress — Compresses the current Phar entry with either zlib or bzip2 compression
    • PharFileInfo::__construct — Construct a Phar entry object
    • PharFileInfo::decompress — Decompresses the current Phar entry within the phar
    • PharFileInfo::delMetadata — Deletes the metadata of the entry
    • PharFileInfo::getCRC32 — Returns CRC32 code or throws an exception if CRC has not been verified
    • PharFileInfo::getCompressedSize — Returns the actual size of the file (with compression) inside the Phar archive
    • PharFileInfo::getMetaData — Returns file-specific meta-data saved with a file
    • PharFileInfo::getPharFlags — Returns the Phar file entry flags
    • PharFileInfo::hasMetadata — Returns the metadata of the entry
    • PharFileInfo::isCRCChecked — Returns whether file entry has had its CRC verified
    • PharFileInfo::isCompressed — Returns whether the entry is compressed
    • PharFileInfo::isCompressedBZIP2 — Returns whether the entry is compressed using bzip2
    • PharFileInfo::isCompressedGZ — Returns whether the entry is compressed using gz
    • PharFileInfo::setCompressedBZIP2 — Compresses the current Phar entry within the phar using Bzip2 compression
    • PharFileInfo::setCompressedGZ — Compresses the current Phar entry within the phar using gz compression
    • PharFileInfo::setMetaData — Sets file-specific meta-data saved with a file
    • PharFileInfo::setUncompressed — Uncompresses the current Phar entry within the phar, if it is compressed
  • PharException — The PharException class
    • PharException — The PharException class provides a phar-specific exception class for try/catch blocks.
lzf_optimized_for
Introdução
Extensões de Compressão e Arquivo


Introdução

The phar extension provides a way to put entire PHP applications into a single file called a "phar" (PHP Archive) for easy distribution and installation. In addition to providing this service, the phar extension also provides a file-format abstraction method for creating and manipulating tar and zip files through the PharData class, much as PDO provides a unified interface for accessing different databases. Unlike PDO, which cannot convert between different databases, Phar also can convert between tar, zip and phar file formats with a single line of code. see Phar::convertToExecutable() for one example.

What is phar? Phar archives are best characterized as a convenient way to group several files into a single file. As such, a phar archive provides a way to distribute a complete PHP application in a single file and run it from that file without the need to extract it to disk. Additionally, phar archives can be executed by PHP as easily as any other file, both on the commandline and from a web server. Phar is kind of like a thumb drive for PHP applications.

Phar implements this functionality through a Stream Wrapper. Normally, to use an external file within a PHP script, you would use include()

Exemplo #1 Using an external file

<?php
 include '/path/to/external/file.php';
 ?>

PHP can be thought of as actually translating /path/to/external/file.php into a stream wrapper as file:///path/to/external/file.php, and under the hood it does in fact use the plain file stream wrapper stream functions to access all local files.

To use a file named file.php contained with a phar archive /path/to/myphar.phar, the syntax is very similar to the file:// syntax above.

Exemplo #2 Using a file within a phar archive

<?php
 include 'phar:///path/to/myphar.phar/file.php';
 ?>

In fact, one can treat a phar archive exactly as if it were an external disk, using any of fopen()-related functions, opendir() and mkdir()-related functions to read, change, or create new files and directories within the phar archive. This allows complete PHP applications to be distributed in a single file and run directly from that file.

The most common usage for a phar archive is to distribute a complete application in a single file. For instance, the PEAR Installer that is bundled with PHP versions is distributed as a phar archive. To use a phar archive distributed in this way, the archive can be executed on the command-line or via a web server.

Phar archives can be distributed as tar archives, zip archives, or as the custom phar file format designed specifically for the phar extension. Each file format has advantages and disadvantages. The tar and zip file formats can be read or extracted by any third-party tool that can read the format, but require the phar extension in order to run with PHP. The phar file format is customized and unique to the phar extension, and can only be created by the phar extension or the PEAR package » PHP_Archive, but has the advantage that applications created in this format will run even if the phar extension is not enabled.

In other words, even with the phar extension disabled, one can execute or include a phar-based archive. Accessing individual files within a phar archive is only possible with the phar extension unless the phar archive was created by PHP_Archive.

The phar extension is also capable of converting a phar archive from tar to zip or to phar file format in a single command:

Exemplo #3 Converting a phar archive from phar to tar file format

<?php
 $phar = new Phar('myphar.phar');
 $pgz = $phar->convertToExecutable(Phar::TAR, Phar::GZ); // makes myphar.phar.tar.gz
 ?>

Phar can compress individual files or an entire archive using gzip compression or bzip2 compression, and can verify archive integrity automatically through the use of md5(), sha1(), sha256(), or sha512() signatures.

Lastly, the Phar extension is security-conscious, and disables write access to executable phar archives by default, and requires system-level disabling of the phar.readonly php.ini setting in order to create or modify phar archives. Normal tar and zip archives without an executable stub can always be created or modified using the PharData class.

If you are creating applications for distribution, you will want to read How to create Phar Archives. If you want more information on the differences between the three file formats that phar supports, you should read Phar, Tar and Zip.

If you are using phar applications, there are helpful tips in How to use Phar Archives

The word phar is a contraction of PHP and Archive and is based loosely on the jar (Java Archive) familiar to Java developers.

The implementation for Phar archives is based on the PEAR package » PHP_Archive, and the implementation details are similar, although the Phar extension is much more powerful. In addition, the Phar extension allows most PHP applications to be run unmodified while PHP_Archive-based phar archives often require extensive modification in order to work.

Phar
Instalação/Configuração
Phar


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Phar


Dependências

Phar requires PHP 5.2.0 or newer. Additional features require the SPL extension in order to take advantage of iteration and array access to a Phar's file contents. The phar stream does not require any additional extensions to function.

You may optionally wish to enable the zlib and bzip2 extensions to take advantage of compressed phar support. In addition, to take advantage of OpenSSL signing, the OpenSSL extension must be enabled.

Note that a bug in the zlib.deflate stream filter fixed in PHP version 5.2.6 and newer may cause truncation of gzip and bzip2-compressed phar archives.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

The Phar extension is built into PHP as of PHP version 5.3.0. Phar may be installed via the PECL extension with previous PHP versions, and the » Phar PECL page contains further information and history.

Windows users must include the php_phar.dll file within php.ini to use this extension.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Filesystem and Streams Configuration Options
Name | Default | Changeable | Changelog
phar.readonly | "1" | PHP_INI_ALL |
phar.require_hash | "1" | PHP_INI_ALL |
phar.extract_list | "" | PHP_INI_ALL | Available from phar 1.1.0 to 1.2.3, removed in 2.0.0.
phar.cache_list | "" | PHP_INI_SYSTEM | Available from phar 2.0.0.

Breve descrição das diretivas de configuração.

phar.readonly boolean

This option disables creation or modification of Phar archives using the phar stream or Phar object's write support. This setting should always be enabled on production machines, as the phar extension's convenient write support could allow straightforward creation of a php-based virus when coupled with other common security vulnerabilities.

Nota:

This setting can only be unset in php.ini due to security reasons. If phar.readonly is disabled in php.ini, the user may enable phar.readonly in a script or disable it later. If phar.readonly is enabled in php.ini, a script may harmlessly "re-enable" the INI variable, but may not disable it.

phar.require_hash boolean

This option will force all opened Phar archives to contain some kind of signature (currently MD5, SHA1, SHA256 and SHA512 are supported), and will refuse to process any Phar archive that does not contain a signature.

Nota:

This setting can only be unset in php.ini due to security reasons. If phar.require_hash is disabled in php.ini, the user may enable phar.require_hash in a script or disable it later. If phar.require_hash is enabled in php.ini, a script may harmlessly "re-enable" the INI variable, but may not disable it.

This setting does not affect reading plain tar files with the PharData class.

phar.extract_list string

This INI setting has been removed as of phar 2.0.0

Allows mappings from a full path to a phar archive or its alias to the location of its extracted files. The format of the parameter is name=archive,name2=archive2. This allows extraction of phar files to disk, and allows phar to act as a kind of mapper to extracted disk files. This is often done for performance reasons, or to assist with debugging a phar.

Exemplo #1 phar.extract_list usage example

in php.ini:
phar.extract_list = archive=/full/path/to/archive/,arch2=/full/path/to/arch2
<?php
include "phar://archive/content.php";
include "phar://arch2/foo.php";
?>

phar.cache_list string

This INI setting was added in phar 2.0.0

Allows mapping phar archives to be pre-parsed at web server startup, providing a performance improvement that brings running files out of a phar archive very close to the speed of running those files from a traditional disk-based installation.

Exemplo #2 phar.cache_list usage example

in php.ini (windows):
phar.cache_list =C:\path\to\phar1.phar;C:\path\to\phar2.phar
in php.ini (unix):
phar.cache_list =/path/to/phar1.phar:/path/to/phar2.phar

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

The Phar extension provides the phar stream, which allows accessing files contained within a phar transparently. See also the description of the Phar file format.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Phar compression constants
Constant | Value | Description
Phar::NONE (integer) | 0x00000000 | no compression
Phar::COMPRESSED (integer) | 0x0000F000 | bitmask that can be used with file flags to determine if any compression is present
Phar::GZ (integer) | 0x00001000 | zlib (gzip) compression
Phar::BZ2 (integer) | 0x00002000 | bzip2 compression
Phar file format constants
Constant | Value | Description
Phar::SAME (integer) | 0 | retain the same file format
Phar::PHAR (integer) | 1 | phar file format
Phar::TAR (integer) | 2 | tar file format
Phar::ZIP (integer) | 3 | zip file format
Phar signature constants
Constant | Value | Description
Phar::MD5 (integer) | 0x0001 | signature with md5 hash algorithm
Phar::SHA1 (integer) | 0x0002 | signature with sha1 hash algorithm
Phar::SHA256 (integer) | 0x0003 | signature with sha256 hash algorithm (requires hash extension)
Phar::SHA512 (integer) | 0x0004 | signature with sha512 hash algorithm (requires hash extension)
Phar::OPENSSL (integer) | 0x0010 | signature with OpenSSL public/private key pair. This is a true, asymmetric key signature.
Phar webPhar mime override constants
Constant | Value | Description
Phar::PHP (integer) | 1 | used to instruct the mimeoverrides parameter of Phar::webPhar() that the extension should be parsed as a PHP file
Phar::PHPS (integer) | 2 | used to instruct the mimeoverrides parameter of Phar::webPhar() that the extension should be parsed as a PHP source file through highlight_file()
Tipos Resource
Using Phar Archives
Phar


Using Phar Archives

Índice

  • Using Phar Archives: Introduction
  • Using Phar Archives: the phar stream wrapper
  • Using Phar Archives: the Phar and PharData class
Constantes pré-definidas
Using Phar Archives: Introduction
Phar


Using Phar Archives: Introduction

Phar archives are similar in concept to Java JAR archives, but are tailored to the needs and to the flexibility of PHP applications. A Phar archive is used to distribute a complete PHP application or library in a single file. Unlike Java's implementation of JAR archives, no external tool is required to process or run a PHP Phar archive. A Phar archive application is used exactly like any other PHP application:

php coolapplication.phar

Using a Phar archive library is identical to using any other PHP library:

<?php
include 'coollibrary.phar';
?>

The phar stream wrapper provides the core of the phar extension, and is explained in detail here. The phar stream wrapper allows accessing the files within a phar archive using PHP's standard file functions fopen(), opendir(), and others that work on regular files. The phar stream wrapper supports all read/write operations on both files and directories.

<?php
include 'phar://coollibrary.phar/internal/file.php';
header('Content-type: image/jpeg');
// phars can be accessed by full path or by alias
echo file_get_contents('phar:///fullpath/to/coollibrary.phar/images/wow.jpg');
?>

The Phar class implements advanced functionality for accessing files and for creating phar archives. The Phar class is explained in detail here.

<?php
try {
    // open an existing phar
    $p = new Phar('coollibrary.phar', 0);
    // Phar extends SPL's DirectoryIterator class
    foreach (new RecursiveIteratorIterator($p) as $file) {
        // $file is a PharFileInfo class, and inherits from SplFileInfo
        echo $file->getFileName() . "\n";
        echo file_get_contents($file->getPathName()) . "\n"; // display contents;
    }
    if (isset($p['internal/file.php'])) {
        var_dump($p['internal/file.php']->getMetaData());
    }

    // create a new phar - phar.readonly must be 0 in php.ini
    // phar.readonly is enabled by default for security reasons.
    // On production servers, Phars need never be created,
    // only executed.
    if (Phar::canWrite()) {
        $p = new Phar('newphar.tar.phar', 0, 'newphar.tar.phar');
        // make this a tar-based phar archive, compressed with gzip compression (.tar.gz)
        $p = $p->convertToExecutable(Phar::TAR, Phar::GZ);

        // create transaction - nothing is written to newphar.phar
        // until stopBuffering() is called, although temporary storage is needed
        $p->startBuffering();
        // add all files in /path/to/project, saving in the phar with the prefix "project"
        $p->buildFromIterator(new RecursiveIteratorIterator(new DirectoryIterator('/path/to/project')), '/path/to/');

        // add a new file via the array access API
        $p['file1.txt'] = 'Information';
        $fp = fopen('hugefile.dat', 'rb');
        // copy all data from the stream
        $p['data/hugefile.dat'] = $fp;

        if (Phar::canCompress(Phar::GZ)) {
            $p['data/hugefile.dat']->compress(Phar::GZ);
        }

        $p['images/wow.jpg'] = file_get_contents('images/wow.jpg');
        // any value can be saved as file-specific meta-data
        $p['images/wow.jpg']->setMetaData(array('mime-type' => 'image/jpeg'));
        $p['index.php'] = file_get_contents('index.php');
        $p->setMetaData(array('bootstrap' => 'index.php'));

        // save the phar archive to disk
        $p->stopBuffering();
    }
} catch (Exception $e) {
    echo 'Could not open Phar: ', $e;
}
?>

In addition, verification of phar file contents can be done using any of the supported symmetric hash algorithms (MD5, SHA1, SHA256 and SHA512 if ext/hash is enabled) and using asymmetric public/private key signing using OpenSSL (new in Phar 2.0.0). To take advantage of OpenSSL signing, you need to generate a public/private key pair, and use the private key to set the signature using Phar::setSignatureAlgorithm(). In addition, the public key as extracted using this code:

<?php
$public = openssl_get_publickey(file_get_contents('private.pem'));
$pkey = '';
openssl_pkey_export($public, $pkey);
?>
must be saved adjacent to the phar archive it verifies. If the phar archive is saved as /path/to/my.phar, the public key must be saved as /path/to/my.phar.pubkey, or phar will be unable to verify the OpenSSL signature.

As of version 2.0.0, The Phar class also provides 3 static methods, Phar::webPhar(), Phar::mungServer() and Phar::interceptFileFuncs() that are crucial to packaging up PHP applications designed for usage on regular filesystems and for web-based applications. Phar::webPhar() implements a front controller that routes HTTP calls to the correct location within the phar archive. Phar::mungServer() is used to modify the values of the $_SERVER array to trick applications that process these values. Phar::interceptFileFuncs() instructs Phar to intercept calls to fopen(), file_get_contents(), opendir(), and all of the stat-based functions (file_exists(), is_readable() and so on) and route all relative paths to locations within the phar archive.

As an example, packaging up a release of the popular phpMyAdmin application for use as a phar archive requires only this simple script and then phpMyAdmin.phar.tar.php can be accessed as a regular file from your web server after modifying the user/password:

<?php
@unlink('phpMyAdmin.phar.tar.php');
copy('phpMyAdmin-2.11.3-english.tar.gz', 'phpMyAdmin.phar.tar.php');
$a = new Phar('phpMyAdmin.phar.tar.php');
$a->startBuffering();
$a["phpMyAdmin-2.11.3-english/config.inc.php"] = '<?php
/* Servers configuration */
$i = 0;

/* Server localhost (config:root) [1] */
$i++;
$cfg[\'Servers\'][$i][\'host\'] = \'localhost\';
$cfg[\'Servers\'][$i][\'extension\'] = \'mysqli\';
$cfg[\'Servers\'][$i][\'connect_type\'] = \'tcp\';
$cfg[\'Servers\'][$i][\'compress\'] = false;
$cfg[\'Servers\'][$i][\'auth_type\'] = \'config\';
$cfg[\'Servers\'][$i][\'user\'] = \'root\';
$cfg[\'Servers\'][$i][\'password\'] = \'\';

/* End of servers configuration */
if (strpos(PHP_OS, \'WIN\') !== false) {
    $cfg[\'UploadDir\'] = getcwd();
} else {
    $cfg[\'UploadDir\'] = \'/tmp/pharphpmyadmin\';
    @mkdir(\'/tmp/pharphpmyadmin\');
    @chmod(\'/tmp/pharphpmyadmin\', 0777);
}';
$a->setStub('<?php
Phar::interceptFileFuncs();
Phar::webPhar("phpMyAdmin.phar", "phpMyAdmin-2.11.3-english/index.php");
echo "phpMyAdmin is intended to be executed from a web browser\n";
exit -1;
__HALT_COMPILER();
');
$a->stopBuffering();
?>

Using Phar Archives
Using Phar Archives: the phar stream wrapper
Using Phar Archives


Using Phar Archives: the phar stream wrapper

The Phar stream wrapper fully supports fopen() for read and write (not append), unlink(), stat(), fstat(), fseek(), rename() and directory stream operations opendir() and as of version 2.0.0, rmdir() and mkdir().

Individual file compression and per-file metadata can also be manipulated in a Phar archive using stream contexts:

<?php
$context = stream_context_create(array('phar' =>
                                    array('compress' => Phar::GZ)),
                                    array('metadata' => array('user' => 'cellog')));
file_put_contents('phar://my.phar/somefile.php', 0, $context);
?>

The phar stream wrapper does not operate on remote files, and cannot operate on remote files, and so is allowed even when the allow_url_fopen and allow_url_include INI options are disabled.

Although it is possible to create phar archives from scratch just using stream operations, it is best to use the functionality built into the Phar class. The stream wrapper is best used for read-only operations.

Using Phar Archives: Introduction
Using Phar Archives: the Phar and PharData class
Using Phar Archives


Using Phar Archives: the Phar and PharData class

The Phar class supports reading and manipulation of Phar archives, as well as iteration through inherited functionality of the RecursiveDirectoryIterator class. With support for the ArrayAccess interface, files inside a Phar archive can be accessed as if they were part of an associative array.

The PharData class extends the Phar, and allows creating and modifying non-executable (data) tar and zip archives even if phar.readonly=1 in php.ini. As such, PharData::setAlias() and PharData::setStub() are both disabled as the concept of alias and stub are unique to executable phar archives.

It is important to note that when creating a Phar archive, the full path should be passed to the Phar object constructor. Relative paths will fail to initialize.

Assuming that $p is a Phar object initialized as follows:

<?php
$p = new Phar('/path/to/myphar.phar', 0, 'myphar.phar');
?>

An empty Phar archive will be created at /path/to/myphar.phar, or if /path/to/myphar.phar already exists, it will be opened again. The literal myphar.phar demonstrates the concept of an alias that can be used to reference /path/to/myphar.phar in URLs as in:

<?php
// these two calls to file_get_contents() are equivalent if
// /path/to/myphar.phar has an explicit alias of "myphar.phar"
// in its manifest, or if the phar was initialized with the
// previous example's Phar object setup
$f = file_get_contents('phar:///path/to/myphar.phar/whatever.txt');
$f = file_get_contents('phar://myphar.phar/whatever.txt');
?>

With the newly created $p Phar object, the following is possible:

  • $a = $p['file.php'] creates a PharFileInfo class that refers to the contents of phar://myphar.phar/file.php
  • $p['file.php'] = $v creates a new file (phar://myphar.phar/file.php), or overwrites an existing file within myphar.phar. $v can be either a string or an open file pointer, in which case the entire contents of the file will be used to create the new file. Note that $p->addFromString('file.php', $v) is functionally equivalent to the above. Also possible is to add the contents of a file with $p->addFile('/path/to/file.php', 'file.php'). Lastly, an empty directory can be created with $p->addEmptyDir('empty').
  • isset($p['file.php']) can be used to determine whether phar://myphar.phar/file.php exists within myphar.phar.
  • unset($p['file.php']) erases phar://myphar.phar/file.php from myphar.phar.

In addition, the Phar object is the only way to access Phar-specific metadata, through Phar::getMetaData(), and the only way to set or retrieve a Phar archive's PHP loader stub through Phar::getStub() and Phar::setStub(). Additionally, compression for the entire Phar archive at once can only be manipulated using the Phar class.

The full list of Phar object functionality is documented below.

The PharFileInfo class extends the SplFileInfo class, and adds several methods for manipulating Phar-specific details of a file contained within a Phar, such as manipulating compression and metadata.

Using Phar Archives: the phar stream wrapper
Creating Phar Archives
Using Phar Archives


Creating Phar Archives

Índice

  • Creating Phar Archives: Introduction
Using Phar Archives: the Phar and PharData class
Creating Phar Archives: Introduction
Phar


Creating Phar Archives: Introduction

To be written fully in the near future. Before reading this, be sure to read How to use Phar Archives.

A great place to start is by reading about Phar::buildFromIterator(), and the specifics of the file format choices available for archives. A healthy understanding of what a stub is and does is crucial to phar archive creation, and so Phar::setStub() and Phar::createDefaultStub() are good places to start as well. If you are distributing a web-based application, it is crucial to know about Phar::webPhar() and related method Phar::mungServer(). Any application that accesses its own files should also consider using Phar::interceptFileFuncs().

Creating Phar Archives
What makes a phar a phar and not a tar or a zip?
Creating Phar Archives


What makes a phar a phar and not a tar or a zip?

Índice

  • Ingredients of all Phar archives, independent of file format
  • Phar file stub
  • Head-to-head comparison of Phar, Tar and Zip
  • Tar-based phars
  • Zip-based phars
  • Phar File Format
  • Global Phar bitmapped flags
  • Phar manifest file entry definition
  • Phar Signature format
Creating Phar Archives: Introduction
Ingredients of all Phar archives, independent of file format
Phar


Ingredients of all Phar archives, independent of file format

All Phar archives contain three to four sections:

  1. a stub

  2. a manifest describing the contents

  3. the file contents

  4. [optional] a signature for verifying Phar integrity (phar file format only)

What makes a phar a phar and not a tar or a zip?
Phar file stub
What makes a phar a phar and not a tar or a zip?


Phar file stub

A Phar's stub is a simple PHP file. The smallest possible stub follows:

<?php __HALT_COMPILER();

A stub must contain as a minimum, the __HALT_COMPILER(); token at its conclusion. Typically, a stub will contain loader functionality like so:

<?php
Phar::mapPhar();
include 'phar://myphar.phar/index.php';
__HALT_COMPILER();

There are no restrictions on the contents of a Phar stub, except for the requirement that it conclude with __HALT_COMPILER();. The closing PHP tag

?>
may be included or omitted, but there can be no more than 1 space between the ; and the close tag
?>
 or the phar extension will be unable to process the Phar archive's manifest.

In a tar or zip-based phar archive, the stub is stored in the .phar/stub.php file. The default stub for phar-based Phar archives contains approximately 7k of code to extract the contents of the phar and execute them. See Phar::createDefaultStub() for more detail.

The phar alias is stored in a tar or zip-based phar archive in the .phar/alias.txt file as plain text.

Ingredients of all Phar archives, independent of file format
Head-to-head comparison of Phar, Tar and Zip
What makes a phar a phar and not a tar or a zip?


Head-to-head comparison of Phar, Tar and Zip

What are the good and the bad things about the three supported file formats in the phar extension? This table attempts to address that question.

Feature matrix: Phar vs. Tar vs. Zip
Feature | Phar | Tar | Zip
Standard File Format | No | Yes | Yes
Can be executed without the Phar Extension [1] | Yes | No | No
Per-file compression | Yes | No | Yes
Whole-archive compression | Yes | Yes | No
Whole-archive signature validation | Yes | Yes | Yes (PHP 5.3.1+)
Web-specific application support | Yes | Yes | Yes
Per-file Meta-data | Yes | Yes | Yes
Whole-Archive Meta-data | Yes | Yes | Yes
Archive creation/modification [2] | Yes | Yes | Yes
Full support for all stream wrapper functions | Yes | Yes | Yes
Can be created/modified even if phar.readonly=1 [3] | No | Yes | Yes

Dica

[1] PHP can only directly access the contents of a Phar archive without the Phar extension if it is using a stub that extracts the contents of the phar archive. The stub created by Phar::createDefaultStub() extracts the phar archive and runs its contents from a temporary directory if no phar extension is found.

Dica

[2] All write access requires phar.readonly to be disabled in php.ini or on the command-line directly.

Dica

[3] Only tar and zip archives without .phar in their filename and without an executable stub .phar/stub.php can be created if phar.readonly=1.

Phar file stub
Tar-based phars
What makes a phar a phar and not a tar or a zip?


Tar-based phars

Archives based on the tar file format follow the more modern USTAR file format. The design of the tar file header makes them more efficient to access than the zip file format, and almost as efficient as the phar file format. File names are limited to 255 bytes, including full path within the phar archive. There is no limit on the number of files within a tar-based phar archive. These archives can fully compressed in gzip or bzip2 format and still be executed by the Phar extension.

To compress an entire archive, use Phar::compress(). To decompress an entire archive, use Phar::decompress().

Head-to-head comparison of Phar, Tar and Zip
Zip-based phars
What makes a phar a phar and not a tar or a zip?


Zip-based phars

Archives based on the zip file format support several features built into the zip file format. Per-file and whole-archive metadata is stored in the zip file comment and zip archive comment as a serialized string. Pre-existing zip comments will be successfully read as a string. Per-file compression read/write is supported with zlib compression, and read access is supported with bzip2 compression. There is no limit on the number of files within a zip-based phar archive. Empty directories are stored in the zip archive as files with a trailing slash like my/directory/

Tar-based phars
Phar File Format
What makes a phar a phar and not a tar or a zip?


Phar File Format

The phar file format is literally laid out as stub/manifest/contents/signature, and stores the crucial information of what is included in the phar archive in its manifest.

The Phar manifest is a highly optimized format that allows per-file specification of file compression, file permissions, and even user-defined meta-data such as file user or group. All values greater than 1 byte are stored in little-endian byte order, with the exception of the API version, which for historical reasons is stored as 3 nibbles in big-endian order.

All unused flags are reserved for future use, and must not be used to store custom information. Use the per-file meta-data facility to store customized information about particular files.

The basic file format of a Phar archive manifest is as follows:

Global Phar manifest format
Size in bytes | Description
4 bytes | Length of manifest in bytes (1 MB limit)
4 bytes | Number of files in the Phar
2 bytes | API version of the Phar manifest (currently 1.0.0)
4 bytes | Global Phar bitmapped flags
4 bytes | Length of Phar alias
?? | Phar alias (length based on previous)
4 bytes | Length of Phar metadata (0 for none)
?? | Serialized Phar Meta-data, stored in serialize() format
at least 24 * number of entries bytes | entries for each file

Zip-based phars
Global Phar bitmapped flags
What makes a phar a phar and not a tar or a zip?


Global Phar bitmapped flags

Here are the bitmapped flags currently recognized by the Phar extension for the global Phar flat bitmap:

Bitmap values recognized
Value | Description
0x00010000 | If set, this Phar contains a verification signature
0x00001000 | If set, this Phar contains at least 1 file that is compressed with zlib compression
0x00002000 | If set, this Phar contains at least 1 file that is compressed with bzip compression

Phar File Format
Phar manifest file entry definition
What makes a phar a phar and not a tar or a zip?


Phar manifest file entry definition

Each file in the manifest contains the following information:

Phar Manifest file entry
Size in bytes | Description
4 bytes | Filename length in bytes
?? | Filename (length specified in previous)
4 bytes | Un-compressed file size in bytes
4 bytes | Unix timestamp of file
4 bytes | Compressed file size in bytes
4 bytes | CRC32 checksum of un-compressed file contents
4 bytes | Bit-mapped File-specific flags
4 bytes | Serialized File Meta-data length (0 for none)
?? | Serialized File Meta-data, stored in serialize() format

Note that as of API version 1.1.1, empty directories are stored as filenames with a trailing slash like my/directory/

The File-specific bitmap values recognized are:

Bitmap values recognized
Value | Description
0x000001FF | These bits are reserved for defining specific file permissions of a file. Permissions are used for fstat() and can be used to recreate desired permissions upon extraction.
0x00001000 | If set, this file is compressed with zlib compression
0x00002000 | If set, this file is compressed with bzip compression

Global Phar bitmapped flags
Phar Signature format
What makes a phar a phar and not a tar or a zip?


Phar Signature format

Phars containing a signature always have the signature appended to the end of the Phar archive after the loader, manifest, and file contents. The two signature formats supported at this time are MD5 and SHA1.

Signature format
Length in bytes | Description
16 or 20 bytes | The actual signature, 20 bytes for an SHA1 signature, 16 bytes for an MD5 signature, 32 bytes for an SHA256 signature, and 64 bytes for an SHA512 signature.
4 bytes | Signature flags. 0x0001 is used to define an MD5 signature, 0x0002 is used to define an SHA1 signature, 0x0004 is used to define an SHA256 signature, and 0x0008 is used to define an SHA512 signature. The SHA256 and SHA512 signature support was introduced with API version 1.1.0.
4 bytes | Magic GBMB used to define the presence of a signature.

Phar manifest file entry definition
Phar
What makes a phar a phar and not a tar or a zip?


The Phar class

Introdução

The Phar class provides a high-level interface to accessing and creating phar archives.

Sinopse da classe

Phar extends RecursiveDirectoryIterator implements Countable , ArrayAccess {
/* Properties */
/* Methods */
void addEmptyDir ( string $dirname )
void addFile ( string $file [, string $localname ] )
void addFromString ( string $localname , string $contents )
string apiVersion ( void )
array buildFromDirectory ( string $base_dir [, string $regex ] )
array buildFromIterator ( Iterator $iter [, string $base_directory ] )
bool canCompress ([ int $type = 0 ] )
bool canWrite ( void )
object compress ( int $compression [, string $extension ] )
bool compressAllFilesBZIP2 ( void )
bool compressAllFilesGZ ( void )
void compressFiles ( int $compression )
void __construct ( string $fname [, int $flags [, string $alias ]] )
PharData convertToData ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )
Phar convertToExecutable ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )
bool copy ( string $oldfile , string $newfile )
int count ( void )
string createDefaultStub ([ string $indexfile [, string $webindexfile ]] )
object decompress ([ string $extension ] )
bool decompressFiles ( void )
bool delMetadata ( void )
bool delete ( string $entry )
bool extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )
mixed getMetaData ( void )
bool getModified ( void )
array getSignature ( void )
string getStub ( void )
array getSupportedCompression ( void )
array getSupportedSignatures ( void )
string getVersion ( void )
bool hasMetadata ( void )
void interceptFileFuncs ( void )
bool isBuffering ( void )
mixed isCompressed ( void )
bool isFileFormat ( int $format )
bool isValidPharFilename ( string $filename [, bool $executable = true ] )
bool isWritable ( void )
bool loadPhar ( string $filename [, string $alias ] )
bool mapPhar ([ string $alias [, int $dataoffset = 0 ]] )
void mount ( string $pharpath , string $externalpath )
void mungServer ( array $munglist )
bool offsetExists ( string $offset )
int offsetGet ( string $offset )
void offsetSet ( string $offset , string $value )
bool offsetUnset ( string $offset )
string running ([ bool $retphar = true ] )
bool setAlias ( string $alias )
bool setDefaultStub ([ string $index [, string $webindex ]] )
void setMetadata ( mixed $metadata )
void setSignatureAlgorithm ( int $sigtype [, string $privatekey ] )
bool setStub ( string $stub )
void startBuffering ( void )
void stopBuffering ( void )
bool uncompressAllFiles ( void )
bool unlinkArchive ( string $archive )
void webPhar ([ string $alias [, string $index = "index.php" [, string $f404 [, array $mimetypes [, array $rewrites ]]]]] )
}

Índice

  • Phar::addEmptyDir — Add an empty directory to the phar archive
  • Phar::addFile — Add a file from the filesystem to the phar archive
  • Phar::addFromString — Add a file from the filesystem to the phar archive
  • Phar::apiVersion — Returns the api version
  • Phar::buildFromDirectory — Construct a phar archive from the files within a directory.
  • Phar::buildFromIterator — Construct a phar archive from an iterator.
  • Phar::canCompress — Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::canWrite — Returns whether phar extension supports writing and creating phars
  • Phar::compress — Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::compressAllFilesBZIP2 — Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ — Compresses all files in the current Phar archive using Gzip compression
  • Phar::compressFiles — Compresses all files in the current Phar archive
  • Phar::__construct — Construct a Phar archive object
  • Phar::convertToData — Convert a phar archive to a non-executable tar or zip file
  • Phar::convertToExecutable — Convert a phar archive to another executable phar archive file format
  • Phar::copy — Copy a file internal to the phar archive to another new file within the phar
  • Phar::count — Returns the number of entries (files) in the Phar archive
  • Phar::createDefaultStub — Create a phar-file format specific stub
  • Phar::decompress — Decompresses the entire Phar archive
  • Phar::decompressFiles — Decompresses all files in the current Phar archive
  • Phar::delMetadata — Deletes the global metadata of the phar
  • Phar::delete — Delete a file within a phar archive
  • Phar::extractTo — Extract the contents of a phar archive to a directory
  • Phar::getMetaData — Returns phar archive meta-data
  • Phar::getModified — Return whether phar was modified
  • Phar::getSignature — Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive
  • Phar::getStub — Return the PHP loader or bootstrap stub of a Phar archive
  • Phar::getSupportedCompression — Return array of supported compression algorithms
  • Phar::getSupportedSignatures — Return array of supported signature types
  • Phar::getVersion — Return version info of Phar archive
  • Phar::hasMetaData — Returns whether phar has global meta-data
  • Phar::interceptFileFuncs — instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions
  • Phar::isBuffering — Used to determine whether Phar write operations are being buffered, or are flushing directly to disk
  • Phar::isCompressed — Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::isFileFormat — Returns true if the phar archive is based on the tar/phar/zip file format depending on the parameter
  • Phar::isValidPharFilename — Returns whether the given filename is a valid phar filename
  • Phar::isWritable — Returns true if the phar archive can be modified
  • Phar::loadPhar — Loads any phar archive with an alias
  • Phar::mapPhar — Reads the currently executed file (a phar) and registers its manifest
  • Phar::mount — Mount an external path or file to a virtual location within the phar archive
  • Phar::mungServer — Defines a list of up to 4 $_SERVER variables that should be modified for execution
  • Phar::offsetExists — determines whether a file exists in the phar
  • Phar::offsetGet — Gets a PharFileInfo object for a specific file
  • Phar::offsetSet — set the contents of an internal file to those of an external file
  • Phar::offsetUnset — remove a file from a phar
  • Phar::running — Returns the full path on disk or full phar URL to the currently executing Phar archive
  • Phar::setAlias — Set the alias for the Phar archive
  • Phar::setDefaultStub — Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader
  • Phar::setMetadata — Sets phar archive meta-data
  • Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it.
  • Phar::setStub — Used to set the PHP loader or bootstrap stub of a Phar archive
  • Phar::startBuffering — Start buffering Phar write operations, do not modify the Phar object on disk
  • Phar::stopBuffering — Stop buffering write requests to the Phar archive, and save changes to disk
  • Phar::uncompressAllFiles — Uncompresses all files in the current Phar archive
  • Phar::unlinkArchive — Completely remove a phar archive from disk and from memory
  • Phar::webPhar — mapPhar for web-based phars. front controller for web applications
Phar Signature format
Phar::addEmptyDir
Phar


Add an empty directory to the phar archive

Phar
Phar::addFile
Phar
PHP Manual

Phar::addEmptyDir

(Unknown)

Phar::addEmptyDir — Add an empty directory to the phar archive

Descrição

void Phar::addEmptyDir ( string $dirname )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

With this method, an empty directory is created with path dirname. This method is similar to ZipArchive::addEmptyDir().

Parâmetros

dirname

The name of the empty directory to create in the phar archive

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A Phar::addEmptyDir() example

<?php
try {
    $a = new Phar('/path/to/phar.phar');

    $a->addEmptyDir('/full/path/to/file');
    // demonstrates how this file is stored
    $b = $a['full/path/to/file']->isDir();
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • PharData::addEmptyDir() - Add an empty directory to the tar/zip archive
  • Phar::addFile() - Add a file from the filesystem to the phar archive
  • Phar::addFromString() - Add a file from the filesystem to the phar archive

Phar
Phar::addFile
Phar


Add a file from the filesystem to the phar archive

Phar::addEmptyDir
Phar::addFromString
Phar
PHP Manual

Phar::addFile

(Unknown)

Phar::addFile — Add a file from the filesystem to the phar archive

Descrição

void Phar::addFile ( string $file [, string $localname ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

With this method, any file or URL can be added to the phar archive. If the optional second parameter localname is specified, the file will be stored in the archive with that name, otherwise the file parameter is used as the path to store within the archive. URLs must have a localname or an exception is thrown. This method is similar to ZipArchive::addFile().

Parâmetros

file

Full or relative path to a file on disk to be added to the phar archive.

localname

Path that the file will be stored in the archive.

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A Phar::addFile() example

<?php
try {
    $a = new Phar('/path/to/phar.phar');

    $a->addFile('/full/path/to/file');
    // demonstrates how this file is stored
    $b = $a['full/path/to/file']->getContent();

    $a->addFile('/full/path/to/file', 'my/file.txt');
    $c = $a['my/file.txt']->getContent();

    // demonstrate URL usage
    $a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • Phar::offsetSet() - set the contents of an internal file to those of an external file
  • PharData::addFile() - Add a file from the filesystem to the tar/zip archive
  • Phar::addFromString() - Add a file from the filesystem to the phar archive
  • Phar::addEmptyDir() - Add an empty directory to the phar archive

Phar::addEmptyDir
Phar::addFromString
Phar


Add a file from the filesystem to the phar archive

Phar::addFile
Phar::apiVersion
Phar
PHP Manual

Phar::addFromString

(Unknown)

Phar::addFromString — Add a file from the filesystem to the phar archive

Descrição

void Phar::addFromString ( string $localname , string $contents )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

With this method, any string can be added to the phar archive. The file will be stored in the archive with localname as its path. This method is similar to ZipArchive::addFromString().

Parâmetros

localname

Path that the file will be stored in the archive.

contents

The file contents to store

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A Phar::addFromString() example

<?php
try {
    $a = new Phar('/path/to/phar.phar');

    $a->addFromString('path/to/file.txt', 'my simple file');
    $b = $a['path/to/file.txt']->getContent();

    // to add contents from a stream handle for large files, use offsetSet()
    $c = fopen('/path/to/hugefile.bin');
    $a['largefile.bin'] = $c;
    fclose($c);
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • Phar::offsetSet() - set the contents of an internal file to those of an external file
  • PharData::addFromString() - Add a file from the filesystem to the tar/zip archive
  • Phar::addFile() - Add a file from the filesystem to the phar archive
  • Phar::addEmptyDir() - Add an empty directory to the phar archive

Phar::addFile
Phar::apiVersion
Phar


Returns the api version

Phar::addFromString
Phar::buildFromDirectory
Phar
PHP Manual

Phar::apiVersion

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::apiVersion — Returns the api version

Descrição

string Phar::apiVersion ( void )

Return the API version of the phar file format that will be used when creating phars. The Phar extension supports reading API version 1.0.0 or newer. API version 1.1.0 is required for SHA-256 and SHA-512 hash, and API version 1.1.1 is required to store empty directories.

Parâmetros

Valor Retornado

The API version string as in "1.0.0".

Exemplos

Exemplo #1 A Phar::apiVersion() example

<?php
echo Phar::apiVersion();
?>

O exemplo acima irá imprimir:

1.1.1

Phar::addFromString
Phar::buildFromDirectory
Phar


Construct a phar archive from the files within a directory.

Phar::apiVersion
Phar::buildFromIterator
Phar
PHP Manual

Phar::buildFromDirectory

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::buildFromDirectory — Construct a phar archive from the files within a directory.

Descrição

array Phar::buildFromDirectory ( string $base_dir [, string $regex ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Populate a phar archive from directory contents. The optional second parameter is a regular expression (pcre) that is used to exclude files. Any filename that matches the regular expression will be included, all others will be excluded. For more fine-grained control, use Phar::buildFromIterator().

Parâmetros

base_dir

The full or relative path to the directory that contains all files to add to the archive.

regex

An optional pcre regular expression that is used to filter the list of files. Only file paths matching the regular expression will be included in the archive.

Valor Retornado

Phar::buildFromDirectory() returns an associative array mapping internal path of file to the full path of the file on the filesystem.

Erros

This method throws BadMethodCallException when unable to instantiate the internal directory iterators, or a PharException if there were errors saving the phar archive.

Exemplos

Exemplo #1 A Phar::buildFromDirectory() example

<?php
// create with alias "project.phar"
$phar = new Phar('project.phar', 0, 'project.phar');
// add all files in the project
$phar->buildFromDirectory(dirname(__FILE__) . '/project');
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));

$phar2 = new Phar('project2.phar', 0, 'project2.phar');
// add all files in the project, only include php files
$phar->buildFromDirectory(dirname(__FILE__) . '/project', '/\.php$/');
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));
?>

Veja Também

  • Phar::buildFromIterator() - Construct a phar archive from an iterator.

Phar::apiVersion
Phar::buildFromIterator
Phar


Construct a phar archive from an iterator.

Phar::buildFromDirectory
Phar::canCompress
Phar
PHP Manual

Phar::buildFromIterator

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::buildFromIterator — Construct a phar archive from an iterator.

Descrição

array Phar::buildFromIterator ( Iterator $iter [, string $base_directory ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Populate a phar archive from an iterator. Two styles of iterators are supported, iterators that map the filename within the phar to the name of a file on disk, and iterators like DirectoryIterator that return SplFileInfo objects. For iterators that return SplFileInfo objects, the second parameter is required.

Parâmetros

iter

Any iterator that either associatively maps phar file to location or returns SplFileInfo objects

base_directory

For iterators that return SplFileInfo objects, the portion of each file's full path to remove when adding to the phar archive

Valor Retornado

Phar::buildFromIterator() returns an associative array mapping internal path of file to the full path of the file on the filesystem.

Exemplos

Exemplo #1 A Phar::buildFromIterator() with SplFileInfo

For most phar archives, the archive will reflect an actual directory layout, and the second style is the most useful. For instance, to create a phar archive containing the files in this sample directory layout:

/path/to/project/
                 config/
                        dist.xml
                        debug.xml
                 lib/
                     file1.php
                     file2.php
                 src/
                     processthing.php
                 www/
                     index.php
                 cli/
                     index.php

This code could be used to add these files to the "project.phar" phar archive:

<?php
// create with alias "project.phar"
$phar = new Phar('project.phar', 0, 'project.phar');
$phar->buildFromIterator(
    new RecursiveIteratorIterator(
     new RecursiveDirectoryIterator('/path/to/project')),
    '/path/to/project');
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));
?>

The file project.phar can then be used immediately. Phar::buildFromIterator() does not set values such as compression, metadata, and this can be done after creating the phar archive.

As an interesting note, Phar::buildFromIterator() can also be used to copy the contents of an existing phar archive, as the Phar object descends from DirectoryIterator:

<?php
// create with alias "project.phar"
$phar = new Phar('project.phar', 0, 'project.phar');
$phar->buildFromIterator(
    new RecursiveIteratorIterator(
     new Phar('/path/to/anotherphar.phar')),
    'phar:///path/to/anotherphar.phar/path/to/project');
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));
?>

Exemplo #2 A Phar::buildFromIterator() with other iterators

The second form of the iterator can be used with any iterator that returns a key => value mapping, such as an ArrayIterator:

<?php
// create with alias "project.phar"
$phar = new Phar('project.phar', 0, 'project.phar');
$phar->buildFromIterator(
    new ArrayIterator(
     array(
        'internal/file.php' => dirname(__FILE__) . '/somefile.php',
        'another/file.jpg' => fopen('/path/to/bigfile.jpg', 'rb'),
     )));
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));
?>

Erros

This method returns UnexpectedValueException when the iterator returns incorrect values, such as an integer key instead of a string, a BadMethodCallException when an SplFileInfo-based iterator is passed without a base_directory parameter, or a PharException if there were errors saving the phar archive.

Veja Também

  • Phar::buildFromDirectory() - Construct a phar archive from the files within a directory.

Phar::buildFromDirectory
Phar::canCompress
Phar


Returns whether phar extension supports compression using either zlib or bzip2

Phar::buildFromIterator
Phar::canWrite
Phar
PHP Manual

Phar::canCompress

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::canCompress — Returns whether phar extension supports compression using either zlib or bzip2

Descrição

bool Phar::canCompress ([ int $type = 0 ] )

This should be used to test whether compression is possible prior to loading a phar archive containing compressed files.

Parâmetros

type

Either Phar::GZ or Phar::BZ2 can be used to test whether compression is possible with a specific compression algorithm (zlib or bzip2).

Valor Retornado

TRUE if compression/decompression is available, FALSE if not.

Exemplos

Exemplo #1 A Phar::canCompress() example

<?php
if (Phar::canCompress()) {
    echo file_get_contents('phar://compressedphar.phar/internal/file.txt');
} else {
    echo 'no compression available';
}
?>

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::convertToExecutable() - Convert a phar archive to another executable phar archive file format
  • Phar::convertToData() - Convert a phar archive to a non-executable tar or zip file

Phar::buildFromIterator
Phar::canWrite
Phar


Returns whether phar extension supports writing and creating phars

Phar::canCompress
Phar::compress
Phar
PHP Manual

Phar::canWrite

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::canWrite — Returns whether phar extension supports writing and creating phars

Descrição

bool Phar::canWrite ( void )

This static method determines whether write access has been disabled in the system php.ini via the phar.readonly ini variable.

Parâmetros

Valor Retornado

TRUE if write access is enabled, FALSE if it is disabled.

Exemplos

Exemplo #1 A Phar::canWrite() example

<?php
if (Phar::canWrite()) {
    file_put_contents('phar://myphar.phar/file.txt', 'hi there');
}
?>

Veja Também

  • phar.readonly
  • Phar::isWritable() - Returns true if the phar archive can be modified

Phar::canCompress
Phar::compress
Phar


Compresses the entire Phar archive using Gzip or Bzip2 compression

Phar::canWrite
Phar::compressAllFilesBZIP2
Phar
PHP Manual

Phar::compress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::compress — Compresses the entire Phar archive using Gzip or Bzip2 compression

Descrição

object Phar::compress ( int $compression [, string $extension ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based and phar-based phar archives, this method compresses the entire archive using gzip compression or bzip2 compression. The resulting file can be processed with the gunzip command/bunzip command, or accessed directly and transparently with the Phar extension.

For Zip-based phar archives, this method fails with an exception. The zlib extension must be enabled to compress with gzip compression, the bzip2 extension must be enabled in order to compress with bzip2 compression. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

In addition, this method automatically renames the archive, appending .gz, .bz2 or removing the extension if passed Phar::NONE to remove compression. Alternatively, a file extension may be specified with the second parameter.

Parâmetros

compression

Compression must be one of Phar::GZ, Phar::BZ2 to add compression, or Phar::NONE to remove compression.

extension

By default, the extension is .phar.gz or .phar.bz2 for compressing phar archives, and .phar.tar.gz or .phar.tar.bz2 for compressing tar archives. For decompressing, the default file extensions are .phar and .phar.tar.

Valor Retornado

Returns a Phar object.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A Phar::compress() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p1 = $p->compress(Phar::GZ); // copies to /path/to/my.phar.gz
$p2 = $p->compress(Phar::BZ2); // copies to /path/to/my.phar.bz2
$p3 = $p2->compress(Phar::NONE); // exception: /path/to/my.phar already exists
?>

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive

Phar::canWrite
Phar::compressAllFilesBZIP2
Phar


Compresses all files in the current Phar archive using Bzip2 compression

Phar::compress
Phar::compressAllFilesGZ
Phar
PHP Manual

Phar::compressAllFilesBZIP2

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::compressAllFilesBZIP2 — Compresses all files in the current Phar archive using Bzip2 compression

Descrição

bool Phar::compressAllFilesBZIP2 ( void )

Nota:

Este
método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações
alternativas são possíveis usando Phar::compress(),
Phar::decompress(), Phar::compressFiles() e
Phar::decompressFiles().

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method compresses all files in the Phar archive using bzip2 compression. The bzip2 extension must be enabled to take advantage of this feature. In addition, if any files are already compressed using gzip compression, the zlib extension must be enabled in order to decompress the files prior to re-compressing with bzip2 compression. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the bzip2 extension is not available, or if any files are compressed using gzip compression and the zlib extension is not enabled.

Exemplos

Exemplo #1 A Phar::compressAllFilesBZIP2() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressedBZIP2());
    var_dump($file->isCompressedGZ());
}
$p->compressAllFilesBZIP2();
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressedBZIP2());
    var_dump($file->isCompressedGZ());
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)
string(10) "myfile.txt"
bool(true)
bool(true)
bool(false)
string(11) "myfile2.txt"
bool(true)
bool(true)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

Phar::compress
Phar::compressAllFilesGZ
Phar


Compresses all files in the current Phar archive using Gzip compression

Phar::compressAllFilesBZIP2
Phar::compressFiles
Phar
PHP Manual

Phar::compressAllFilesGZ

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::compressAllFilesGZ — Compresses all files in the current Phar archive using Gzip compression

Descrição

bool Phar::compressAllFilesGZ ( void )

Nota:

Este
método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações
alternativas são possíveis usando Phar::compress(),
Phar::decompress(), Phar::compressFiles() e
Phar::decompressFiles().

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based phar archives, this method compresses the entire archive using gzip compression. The resulting file can be processed with the gunzip command, or accessed directly and transparently with the Phar extension.

For Zip-based and phar-based phar archives, this method compresses all files in the Phar archive using gzip compression. The zlib extension must be enabled to take advantage of this feature. In addition, if any files are already compressed using bzip2 compression, the bzip2 extension must be enabled in order to decompress the files prior to re-compressing with gzip compression. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or if any files are compressed using bzip2 compression and the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A Phar::compressAllFilesGZ() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressedBZIP2());
    var_dump($file->isCompressedGZ());
}
$p->compressAllFilesGZ();
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressedBZIP2());
    var_dump($file->isCompressedGZ());
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)
string(10) "myfile.txt"
bool(true)
bool(false)
bool(true)
string(11) "myfile2.txt"
bool(true)
bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

Phar::compressAllFilesBZIP2
Phar::compressFiles
Phar


Compresses all files in the current Phar archive

Phar::compressAllFilesGZ
Phar::__construct
Phar
PHP Manual

Phar::compressFiles

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::compressFiles — Compresses all files in the current Phar archive

Descrição

void Phar::compressFiles ( int $compression )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based phar archives, this method throws a BadMethodCallException, as compression of individual files within a tar archive is not supported by the file format. Use Phar::compress() to compress an entire tar-based phar archive.

For Zip-based and phar-based phar archives, this method compresses all files in the Phar archive using the specified compression. The zlib or bzip2 extensions must be enabled to take advantage of this feature. In addition, if any files are already compressed using bzip2/zlib compression, the respective extension must be enabled in order to decompress the files prior to re-compressing. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Parâmetros

compression

Compression must be one of Phar::GZ, Phar::BZ2 to add compression, or Phar::NONE to remove compression.

Valor Retornado

Não há valor retornado.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or if any files are compressed using bzip2 compression and the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A Phar::compressFiles() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
$p->compressFiles(Phar::GZ);
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)
string(10) "myfile.txt"
int(4096)
bool(false)
bool(true)
string(11) "myfile2.txt"
int(4096)
bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive

Phar::compressAllFilesGZ
Phar::__construct
Phar


Construct a Phar archive object

Phar::compressFiles
Phar::convertToData
Phar
PHP Manual

Phar::__construct

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::__construct — Construct a Phar archive object

Descrição

void Phar::__construct ( string $fname [, int $flags [, string $alias ]] )

Parâmetros

fname

Path to an existing Phar archive or to-be-created archive

flags

Flags to pass to parent class RecursiveDirectoryIterator.

alias

Alias with which this Phar archive should be referred to in calls to stream functionality.

Erros

Throws BadMethodCallException if called twice, UnexpectedValueException if the phar archive can't be opened.

Exemplos

Exemplo #1 A Phar::__construct() example

<?php
try {
    $p = new Phar('/path/to/my.phar', CURRENT_AS_FILEINFO | KEY_AS_FILENAME,
                  'my.phar');
} catch (UnexpectedValueException $e) {
    die('Could not open my.phar');
} catch (BadMethodCallException $e) {
    echo 'technically, this cannot happen';
}
// this works now
echo file_get_contents('phar://my.phar/example.txt');
// and works as if we had typed
echo file_get_contents('phar:///path/to/my.phar/example.txt');
?>

Phar::compressFiles
Phar::convertToData
Phar


Convert a phar archive to a non-executable tar or zip file

Phar::__construct
Phar::convertToExecutable
Phar
PHP Manual

Phar::convertToData

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::convertToData — Convert a phar archive to a non-executable tar or zip file

Descrição

PharData Phar::convertToData ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )

This method is used to convert an executable phar archive to either a tar or zip file. To make the tar or zip non-executable, the phar stub and phar alias files are removed from the newly created archive.

If no changes are specified, this method throws a BadMethodCallException if the archive is in phar file format. For archives in tar or zip file format, this method converts the archive to a non-executable archive.

If successful, the method creates a new archive on disk and returns a PharData object. The old archive is not removed from disk, and should be done manually after the process has finished.

Parâmetros

format

This should be one of Phar::TAR or Phar::ZIP. If set to NULL, the existing file format will be preserved.

compression

This should be one of Phar::NONE for no whole-archive compression, Phar::GZ for zlib-based compression, and Phar::BZ2 for bzip-based compression.

extension

This parameter is used to override the default file extension for a converted archive. Note that .phar cannot be used anywhere in the filename for a non-executable tar or zip archive.

If converting to a tar-based phar archive, the default extensions are .tar, .tar.gz, and .tar.bz2 depending on specified compression. For zip-based archives, the default extension is .zip.

Valor Retornado

The method returns a PharData object on success and throws an exception on failure.

Erros

This method throws BadMethodCallException when unable to compress, an unknown compression method has been specified, the requested archive is buffering with Phar::startBuffering() and has not concluded with Phar::stopBuffering(), and a PharException if any problems are encountered during the phar creation process.

Exemplos

Exemplo #1 A Phar::convertToData() example

Using Phar::convertToData():

<?php
try {
    $tarphar = new Phar('myphar.phar.tar');
    // note that myphar.phar.tar is *not* unlinked
    // convert it to the non-executable tar file format
    // creates myphar.tar
    $tar = $tarphar->convertToData();
    // convert to non-executable zip format, creates myphar.zip
    $zip = $tarphar->convertToData(Phar::ZIP);
    // create myphar.tbz
    $tgz = $tarphar->convertToData(Phar::TAR, Phar::BZ2, '.tbz');
    // creates myphar.phar.tgz
    $phar = $tarphar->convertToData(Phar::PHAR); // throws exception
} catch (Exception $e) {
    // handle the error here
}
?>

Veja Também

  • Phar::convertToExecutable() - Convert a phar archive to another executable phar archive file format
  • PharData::convertToExecutable() - Convert a non-executable tar/zip archive to an executable phar archive
  • PharData::convertToData() - Convert a phar archive to a non-executable tar or zip file

Phar::__construct
Phar::convertToExecutable
Phar


Convert a phar archive to another executable phar archive file format

Phar::convertToData
Phar::copy
Phar
PHP Manual

Phar::convertToExecutable

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::convertToExecutable — Convert a phar archive to another executable phar archive file format

Descrição

Phar Phar::convertToExecutable ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method is used to convert a phar archive to another file format. For instance, it can be used to create a tar-based executable phar archive from a zip-based executable phar archive, or from an executable phar archive in the phar file format. In addition, it can be used to apply whole-archive compression to a tar or phar-based archive.

If no changes are specified, this method throws a BadMethodCallException.

If successful, the method creates a new archive on disk and returns a Phar object. The old archive is not removed from disk, and should be done manually after the process has finished.

Parâmetros

format

This should be one of Phar::PHAR, Phar::TAR, or Phar::ZIP. If set to NULL, the existing file format will be preserved.

compression

This should be one of Phar::NONE for no whole-archive compression, Phar::GZ for zlib-based compression, and Phar::BZ2 for bzip-based compression.

extension

This parameter is used to override the default file extension for a converted archive. Note that all zip- and tar-based phar archives must contain .phar in their file extension in order to be processed as a phar archive.

If converting to a phar-based archive, the default extensions are .phar, .phar.gz, or .phar.bz2 depending on the specified compression. For tar-based phar archives, the default extensions are .phar.tar, .phar.tar.gz, and .phar.tar.bz2. For zip-based phar archives, the default extension is .phar.zip.

Valor Retornado

The method returns a Phar object on success and throws an exception on failure.

Erros

This method throws BadMethodCallException when unable to compress, an unknown compression method has been specified, the requested archive is buffering with Phar::startBuffering() and has not concluded with Phar::stopBuffering(), an UnexpectedValueException if write support is disabled, and a PharException if any problems are encountered during the phar creation process.

Exemplos

Exemplo #1 A Phar::convertToExecutable() example

Using Phar::convertToExecutable():

<?php
try {
    $tarphar = new Phar('myphar.phar.tar');
    // convert it to the phar file format
    // note that myphar.phar.tar is *not* unlinked
    $phar = $tarphar->convertToExecutable(Phar::PHAR); // creates myphar.phar
    $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
    // creates myphar.phar.tgz
    $compressed = $phar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz');
} catch (Exception $e) {
    // handle the error here
}
?>

Veja Também

  • Phar::convertToData() - Convert a phar archive to a non-executable tar or zip file
  • PharData::convertToExecutable() - Convert a non-executable tar/zip archive to an executable phar archive
  • PharData::convertToData() - Convert a phar archive to a non-executable tar or zip file

Phar::convertToData
Phar::copy
Phar


Copy a file internal to the phar archive to another new file within the phar

Phar::convertToExecutable
Phar::count
Phar
PHP Manual

Phar::copy

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::copy — Copy a file internal to the phar archive to another new file within the phar

Descrição

bool Phar::copy ( string $oldfile , string $newfile )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Copy a file internal to the phar archive to another new file within the phar. This is an object-oriented alternative to using copy() with the phar stream wrapper.

Parâmetros

oldfile

newfile

Valor Retornado

returns TRUE on success, but it is safer to encase method call in a try/catch block and assume success if no exception is thrown.

Erros

throws UnexpectedValueException if the source file does not exist, the destination file already exists, write access is disabled, opening either file fails, reading the source file fails, or a PharException if writing the changes to the phar fails.

Exemplos

Exemplo #1 A Phar::copy() example

This example shows using Phar::copy() and the equivalent stream wrapper performance of the same thing. The primary difference between the two approaches is error handling. All Phar methods throw exceptions, whereas the stream wrapper uses trigger_error().

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar['a'] = 'hi';
    $phar->copy('a', 'b');
    echo $phar['b']; // outputs "hi"
} catch (Exception $e) {
    // handle error
}

// the stream wrapper equivalent of the above code.
// E_WARNINGS are triggered on error rather than exceptions.
copy('phar://myphar.phar/a', 'phar//myphar.phar/c');
echo file_get_contents('phar://myphar.phar/c'); // outputs "hi"
?>

Phar::convertToExecutable
Phar::count
Phar


Returns the number of entries (files) in the Phar archive

Phar::copy
Phar::createDefaultStub
Phar
PHP Manual

Phar::count

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::count — Returns the number of entries (files) in the Phar archive

Descrição

int Phar::count ( void )

Parâmetros

Valor Retornado

The number of files contained within this phar, or 0 (the number zero) if none.

Exemplos

Exemplo #1 A Phar::count() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
} catch (Exception $e) {
    echo 'Could not create phar:', $e;
}
echo 'The new phar has ' . $p->count() . " entries\n";
$p['file.txt'] = 'hi';
echo 'The new phar has ' . $p->count() . " entries\n";
?>

O exemplo acima irá imprimir:

The new phar has 0 entries
The new phar has 1 entries

Phar::copy
Phar::createDefaultStub
Phar


Create a phar-file format specific stub

Phar::count
Phar::decompress
Phar
PHP Manual

Phar::createDefaultStub

(Unknown)

Phar::createDefaultStub — Create a phar-file format specific stub

Descrição

string Phar::createDefaultStub ([ string $indexfile [, string $webindexfile ]] )

This method is intended for creation of phar-file format-specific stubs, and is not intended for use with tar- or zip-based phar archives.

Phar archives contain a bootstrap loader, or stub written in PHP that is executed when the archive is executed in PHP either via include:

<?php
include 'myphar.phar';
?>
or by simple execution:
php myphar.phar

This method provides a simple and easy method to create a stub that will run a startup file from the phar archive. In addition, different files can be specified for running the phar archive from the command line versus through a web server. The loader stub also calls Phar::interceptFileFuncs() to allow easy bundling of a PHP application that accesses the file system. If the phar extension is not present, the loader stub will extract the phar archive to a temporary directory and then operate on the files. A shutdown function erases the temporary files on exit.

Valor Retornado

Returns a string containing the contents of a customized bootstrap loader (stub) that allows the created Phar archive to work with or without the Phar extension enabled.

Erros

Throws UnexpectedValueException if either parameter is longer than 400 bytes.

Exemplos

Exemplo #1 A Phar::createDefaultStub() example

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive
  • Phar::getStub() - Return the PHP loader or bootstrap stub of a Phar archive

Phar::count
Phar::decompress
Phar


Decompresses the entire Phar archive

Phar::createDefaultStub
Phar::decompressFiles
Phar
PHP Manual

Phar::decompress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::decompress — Decompresses the entire Phar archive

Descrição

object Phar::decompress ([ string $extension ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based and phar-based phar archives, this method decompresses the entire archive.

For Zip-based phar archives, this method fails with an exception. The zlib extension must be enabled to decompress an archive compressed with gzip compression, and the bzip2 extension must be enabled in order to decompress an archive compressed with bzip2 compression. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

In addition, this method automatically changes the file extension of the archive, .phar by default for phar archives, or .phar.tar for tar-based phar archives. Alternatively, a file extension may be specified with the second parameter.

Parâmetros

extension

For decompressing, the default file extensions are .phar and .phar.tar. Use this parameter to specify another file extension. Be aware that all executable phar archives must contain .phar in their filename.

Valor Retornado

A Phar object is returned.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A Phar::decompress() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar.gz');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p3 = $p2->decompress(); // creates /path/to/my.phar
?>

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive

Phar::createDefaultStub
Phar::decompressFiles
Phar


Decompresses all files in the current Phar archive

Phar::decompress
Phar::delMetadata
Phar
PHP Manual

Phar::decompressFiles

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::decompressFiles — Decompresses all files in the current Phar archive

Descrição

bool Phar::decompressFiles ( void )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based phar archives, this method throws a BadMethodCallException, as compression of individual files within a tar archive is not supported by the file format. Use Phar::compress() to compress an entire tar-based phar archive.

For Zip-based and phar-based phar archives, this method decompresses all files in the Phar archive. The zlib or bzip2 extensions must be enabled to take advantage of this feature if any files are compressed using bzip2/zlib compression. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or if any files are compressed using bzip2 compression and the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A Phar::decompressFiles() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p->compressFiles(Phar::GZ);
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
$p->decompressFiles();
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
int(4096)
bool(false)
bool(true)
string(11) "myfile2.txt"
int(4096)
bool(false)
bool(true)
string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive

Phar::decompress
Phar::delMetadata
Phar


Deletes the global metadata of the phar

Phar::decompressFiles
Phar::delete
Phar
PHP Manual

Phar::delMetadata

(PHP >= 5.3.0, PECL phar >= 1.2.0)

Phar::delMetadata — Deletes the global metadata of the phar

Descrição

bool Phar::delMetadata ( void )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Deletes the global metadata of the phar

Parâmetros

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A Phar::delMetaData() example

<?php
try {
    $phar = new Phar('myphar.phar');
    var_dump($phar->getMetadata());
    $phar->setMetadata("hi there");
    var_dump($phar->getMetadata());
    $phar->delMetadata();
    var_dump($phar->getMetadata());
} catch (Exception $e) {
    // handle errors
}
?>

O exemplo acima irá imprimir:

NULL
string(8) "hi there"
NULL

Veja Também

  • Phar::getMetadata() - Returns phar archive meta-data
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::hasMetadata() - Returns whether phar has global meta-data

Phar::decompressFiles
Phar::delete
Phar


Delete a file within a phar archive

Phar::delMetadata
Phar::extractTo
Phar
PHP Manual

Phar::delete

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::delete — Delete a file within a phar archive

Descrição

bool Phar::delete ( string $entry )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Delete a file within an archive. This is the functional equivalent of calling unlink() on the stream wrapper equivalent, as shown in the example below.

Parâmetros

entry

Path within an archive to the file to delete.

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A Phar::delete() example

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar->delete('unlink/me.php');
    // this is equivalent to:
    unlink('phar://myphar.phar/unlink/me.php');
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • PharData::delete() - Delete a file within a tar/zip archive
  • Phar::unlinkArchive() - Completely remove a phar archive from disk and from memory

Phar::delMetadata
Phar::extractTo
Phar


Extract the contents of a phar archive to a directory

Phar::delete
Phar::getMetaData
Phar
PHP Manual

Phar::extractTo

(Unknown)

Phar::extractTo — Extract the contents of a phar archive to a directory

Descrição

bool Phar::extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Extract all files within a phar archive to disk. Extracted files and directories preserve permissions as stored in the archive. The optional parameters allow optional control over which files are extracted, and whether existing files on disk can be overwritten. The second parameter files can be either the name of a file or directory to extract, or an array of names of files and directories to extract. By default, this method will not overwrite existing files, the third parameter can be set to true to enable overwriting of files. This method is similar to ZipArchive::extractTo().

Parâmetros

pathto

Path within an archive to the file to delete.

files

The name of a file or directory to extract, or an array of files/directories to extract

overwrite

Set to TRUE to enable overwriting existing files

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A Phar::extractTo() example

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar->extractTo('/full/path'); // extract all files
    $phar->extractTo('/another/path', 'file.txt'); // extract only file.txt
    $phar->extractTo('/this/path',
        array('file1.txt', 'file2.txt')); // extract 2 files only
    $phar->extractTo('/third/path', null, true); // extract all files, and overwrite
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • PharData::extractTo() - Extract the contents of a tar/zip archive to a directory

Phar::delete
Phar::getMetaData
Phar


Returns phar archive meta-data

Phar::extractTo
Phar::getModified
Phar
PHP Manual

Phar::getMetaData

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::getMetaData — Returns phar archive meta-data

Descrição

mixed Phar::getMetaData ( void )

Retrieve archive meta-data. Meta-data can be any PHP variable that can be serialized.

Parâmetros

No parameters.

Valor Retornado

any PHP variable that can be serialized and is stored as meta-data for the Phar archive, or NULL if no meta-data is stored.

Exemplos

Exemplo #1 A Phar::getMetaData() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.php'] = '<?php echo "hello";';
    $p->setMetaData(array('bootstrap' => 'file.php'));
    var_dump($p->getMetaData());
} catch (Exception $e) {
    echo 'Could not modify phar:', $e;
}
?>

O exemplo acima irá imprimir:

array(1) {
  ["bootstrap"]=>
  string(8) "file.php"
}

Veja Também

  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::delMetadata() - Deletes the global metadata of the phar
  • Phar::hasMetadata() - Returns whether phar has global meta-data

Phar::extractTo
Phar::getModified
Phar


Return whether phar was modified

Phar::getMetaData
Phar::getSignature
Phar
PHP Manual

Phar::getModified

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::getModified — Return whether phar was modified

Descrição

bool Phar::getModified ( void )

This method can be used to determine whether a phar has either had an internal file deleted, or contents of a file changed in some way.

Parâmetros

No parameters.

Valor Retornado

TRUE if the phar has been modified since opened, FALSE if not.

Phar::getMetaData
Phar::getSignature
Phar


Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive

Phar::getModified
Phar::getStub
Phar
PHP Manual

Phar::getSignature

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::getSignature — Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive

Descrição

array Phar::getSignature ( void )

Returns the verification signature of a phar archive in a hexadecimal string.

Parâmetros

Valor Retornado

Array with the opened archive's signature in hash key and MD5, SHA-1, SHA-256, SHA-512, or OpenSSL in hash_type. This signature is a hash calculated on the entire phar's contents, and may be used to verify the integrity of the archive. A valid signature is absolutely required of all executable phar archives if the phar.require_hash INI variable is set to true.

Phar::getModified
Phar::getStub
Phar


Return the PHP loader or bootstrap stub of a Phar archive

Phar::getSignature
Phar::getSupportedCompression
Phar
PHP Manual

Phar::getStub

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::getStub — Return the PHP loader or bootstrap stub of a Phar archive

Descrição

string Phar::getStub ( void )

Phar archives contain a bootstrap loader, or stub written in PHP that is executed when the archive is executed in PHP either via include:

<?php
include 'myphar.phar';
?>
or by simple execution:
php myphar.phar

Valor Retornado

Returns a string containing the contents of the bootstrap loader (stub) of the current Phar archive.

Erros

Throws RuntimeException if it is not possible to read the stub from the Phar archive.

Exemplos

Exemplo #1 A Phar::getStub() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
echo $p->getStub();
echo "==NEXT==\n";
$p->setStub("<?php
function __autoload($class)
{
    include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER(); ?>");
echo $p->getStub();
?>

O exemplo acima irá imprimir:

<?php __HALT_COMPILER(); ?>
==NEXT==
<?php
function __autoload($class)
{
    include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER(); ?>

Veja Também

  • Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive
  • Phar::createDefaultStub() - Create a phar-file format specific stub

Phar::getSignature
Phar::getSupportedCompression
Phar


Return array of supported compression algorithms

Phar::getStub
Phar::getSupportedSignatures
Phar
PHP Manual

Phar::getSupportedCompression

(PHP >= 5.3.0, PECL phar >= 1.2.0)

Phar::getSupportedCompression — Return array of supported compression algorithms

Descrição

array Phar::getSupportedCompression ( void )

Parâmetros

No parameters.

Valor Retornado

Returns an array containing any of Phar::GZ or Phar::BZ2, depending on the availability of the zlib extension or the bz2 extension.

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive

Phar::getStub
Phar::getSupportedSignatures
Phar


Return array of supported signature types

Phar::getSupportedCompression
Phar::getVersion
Phar
PHP Manual

Phar::getSupportedSignatures

(PHP >= 5.3.0, PECL phar >= 1.1.0)

Phar::getSupportedSignatures — Return array of supported signature types

Descrição

array Phar::getSupportedSignatures ( void )

Return array of supported signature types

Parâmetros

No parameters.

Valor Retornado

Returns an array containing any of MD5, SHA-1, SHA-256, SHA-512, or OpenSSL.

Veja Também

  • Phar::getSignature() - Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive
  • Phar::setSignatureAlgorithm() - set the signature algorithm for a phar and apply it. The

Phar::getSupportedCompression
Phar::getVersion
Phar


Return version info of Phar archive

Phar::getSupportedSignatures
Phar::hasMetaData
Phar
PHP Manual

Phar::getVersion

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::getVersion — Return version info of Phar archive

Descrição

string Phar::getVersion ( void )

Returns the API version of an opened Phar archive.

Parâmetros

Valor Retornado

The opened archive's API version. This is not to be confused with the API version that the loaded phar extension will use to create new phars. Each Phar archive has the API version hard-coded into its manifest. See Phar file format documentation for more information.

Veja Também

  • Phar::apiVersion() - Returns the api version

Phar::getSupportedSignatures
Phar::hasMetaData
Phar


Returns whether phar has global meta-data

Phar::getVersion
Phar::interceptFileFuncs
Phar
PHP Manual

Phar::hasMetaData

(PHP >= 5.3.0, PECL phar >= 1.2.0)

Phar::hasMetaData — Returns whether phar has global meta-data

Descrição

bool Phar::hasMetadata ( void )

Returns whether phar has global meta-data set.

Parâmetros

No parameters.

Valor Retornado

Returns TRUE if meta-data has been set, and FALSE if not.

Exemplos

Exemplo #1 A Phar::hasMetaData() example

<?php
try {
    $phar = new Phar('myphar.phar');
    var_dump($phar->hasMetadata());
    $phar->setMetadata(array('thing' => 'hi'));
    var_dump($phar->hasMetadata());
    $phar->delMetadata();
    var_dump($phar->hasMetadata());
} catch (Exception $e) {
    // handle error
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)
bool(false)

Veja Também

  • Phar::getMetadata() - Returns phar archive meta-data
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::delMetadata() - Deletes the global metadata of the phar

Phar::getVersion
Phar::interceptFileFuncs
Phar


instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions

Phar::hasMetaData
Phar::isBuffering
Phar
PHP Manual

Phar::interceptFileFuncs

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::interceptFileFuncs — instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions

Descrição

void Phar::interceptFileFuncs ( void )

instructs phar to intercept fopen(), readfile(), file_get_contents(), opendir(), and all of the stat-related functions. If any of these functions is called from within a phar archive with a relative path, the call is modified to access a file within the phar archive. Absolute paths are assumed to be attempts to load external files from the filesystem.

This function makes it possible to run PHP applications designed to run off of a hard disk as a phar application.

Parâmetros

No parameters.

Valor Retornado

Exemplos

Exemplo #1 A Phar::interceptFileFuncs() example

<?php
Phar::interceptFileFuncs();
include 'phar://' . __FILE__ . '/file.php';
?>

Assuming that this phar is at /path/to/myphar.phar and it contains file.php and file2.txt, if file.php contains this code:

Exemplo #2 A Phar::interceptFileFuncs() example

<?php
echo file_get_contents('file2.txt');
?>

Normally PHP would search the current directory for file2.txt, which would translate as the directory of file.php, or the current directory of a command-line user. Phar::interceptFileFuncs() instructs PHP to consider the current directory to be phar:///path/to/myphar.phar/ and so opens phar:///path/to/myphar.phar/file2.txt in the above example code.

Phar::hasMetaData
Phar::isBuffering
Phar


Used to determine whether Phar write operations are being buffered, or are flushing directly to disk

Phar::interceptFileFuncs
Phar::isCompressed
Phar
PHP Manual

Phar::isBuffering

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::isBuffering — Used to determine whether Phar write operations are being buffered, or are flushing directly to disk

Descrição

bool Phar::isBuffering ( void )

This method can be used to determine whether a Phar will save changes to disk immediately, or whether a call to Phar->stopBuffering() is needed to enable saving changes.

Phar write buffering is per-archive, buffering active for the foo.phar Phar archive does not affect changes to the bar.phar Phar archive.

Valor Retornado

Returns TRUE if the write operations are being buffer, FALSE otherwise.

Exemplos

Exemplo #1 A Phar::isBuffering() example

<?php
$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
$p2 = new Phar('existingphar.phar');
$p['file1.txt'] = 'hi';
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
?>
=2=
<?php
$p->startBuffering();
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
$p->stopBuffering();
?>
=3=
<?php
var_dump($p->isBuffering());
var_dump($p2->isBuffering());
?>

O exemplo acima irá imprimir:

bool(false)
bool(false)
=2=
bool(true)
bool(false)
=3=
bool(false)
bool(false)

Veja Também

  • Phar::startBuffering() - Start buffering Phar write operations, do not modify the Phar object on disk
  • Phar::stopBuffering() - Stop buffering write requests to the Phar archive, and save changes to disk

Phar::interceptFileFuncs
Phar::isCompressed
Phar


Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)

Phar::isBuffering
Phar::isFileFormat
Phar
PHP Manual

Phar::isCompressed

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::isCompressed — Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)

Descrição

mixed Phar::isCompressed ( void )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on). Zip-based phar archives cannot be compressed as a file, and so this method will always return FALSE if a zip-based phar archive is queried.

Parâmetros

No parameters.

Valor Retornado

Phar::GZ, Phar::BZ2 or FALSE

Exemplos

Exemplo #1 A Phar::isCompressed() example

<?php
try {
    $phar1 = new Phar('myphar.zip.phar');
    var_dump($phar1->isCompressed());
    $phar2 = new Phar('myuncompressed.tar.phar');
    var_dump($phar2->isCompressed());
    $phar2->compressAllFilesGZ();
    var_dump($phar2->isCompressed() == Phar::GZ);
} catch (Exception $e) {
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms

Phar::isBuffering
Phar::isFileFormat
Phar


Returns true if the phar archive is based on the tar/phar/zip file format depending on the parameter

Phar::isCompressed
Phar::isValidPharFilename
Phar
PHP Manual

Phar::isFileFormat

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::isFileFormat — Returns true if the phar archive is based on the tar/phar/zip file format depending on the parameter

Descrição

bool Phar::isFileFormat ( int $format )

Parâmetros

format

Either Phar::PHAR, Phar::TAR, or Phar::ZIP to test for the format of the archive.

Valor Retornado

Returns TRUE if the phar archive matches the file format requested by the parameter

Erros

PharException is thrown if the parameter is an unknown file format specifier.

Veja Também

  • Phar::convertToExecutable() - Convert a phar archive to another executable phar archive file format
  • Phar::convertToData() - Convert a phar archive to a non-executable tar or zip file

Phar::isCompressed
Phar::isValidPharFilename
Phar


Returns whether the given filename is a valid phar filename

Phar::isFileFormat
Phar::isWritable
Phar
PHP Manual

Phar::isValidPharFilename

(PHP >= 5.3.0, PECL phar >= 1.2.0)

Phar::isValidPharFilename — Returns whether the given filename is a valid phar filename

Descrição

bool Phar::isValidPharFilename ( string $filename [, bool $executable = true ] )

Returns whether the given filename is a valid phar filename that will be recognized as a phar archive by the phar extension. This can be used to test a name without having to instantiate a phar archive and catch the inevitable Exception that will be thrown if an invalid name is specified.

Parâmetros

filename

The name or full path to a phar archive not yet created

executable

This parameter determines whether the filename should be treated as a phar executable archive, or a data non-executable archive

Valor Retornado

Returns TRUE if the filename is valid, FALSE if not.

Phar::isFileFormat
Phar::isWritable
Phar


Returns true if the phar archive can be modified

Phar::isValidPharFilename
Phar::loadPhar
Phar
PHP Manual

Phar::isWritable

(Unknown)

Phar::isWritable — Returns true if the phar archive can be modified

Descrição

bool Phar::isWritable ( void )

This method returns TRUE if phar.readonly is 0, and the actual phar archive on disk is not read-only.

Parâmetros

No parameters.

Valor Retornado

Returns TRUE if the phar archive can be modified

Veja Também

  • Phar::canWrite() - Returns whether phar extension supports writing and creating phars
  • PharData::isWritable() - Returns true if the tar/zip archive can be modified

Phar::isValidPharFilename
Phar::loadPhar
Phar


Loads any phar archive with an alias

Phar::isWritable
Phar::mapPhar
Phar
PHP Manual

Phar::loadPhar

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::loadPhar — Loads any phar archive with an alias

Descrição

bool Phar::loadPhar ( string $filename [, string $alias ] )

This can be used to read the contents of an external Phar archive. This is most useful for assigning an alias to a phar so that subsequent references to the phar can use the shorter alias, or for loading Phar archives that only contain data and are not intended for execution/inclusion in PHP scripts.

Parâmetros

filename

the full or relative path to the phar archive to open

alias

The alias that may be used to refer to the phar archive. Note that many phar archives specify an explicit alias inside the phar archive, and a PharException will be thrown if a new alias is specified in this case.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

PharException is thrown if an alias is passed in and the phar archive already has an explicit alias

Exemplos

Exemplo #1 A Phar::loadPhar() example

Phar::loadPhar can be used anywhere to load an external Phar archive, whereas Phar::mapPhar should be used in a loader stub for a Phar.

<?php
try {
    Phar::loadPhar('/path/to/phar.phar', 'my.phar');
    echo file_get_contents('phar://my.phar/file.txt');
} catch (PharException $e) {
    echo $e;
}
?>

Veja Também

  • Phar::mapPhar() - Reads the currently executed file (a phar) and registers its manifest

Phar::isWritable
Phar::mapPhar
Phar


Reads the currently executed file (a phar) and registers its manifest

Phar::loadPhar
Phar::mount
Phar
PHP Manual

Phar::mapPhar

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::mapPhar — Reads the currently executed file (a phar) and registers its manifest

Descrição

bool Phar::mapPhar ([ string $alias [, int $dataoffset = 0 ]] )

This static method can only be used inside a Phar archive's loader stub in order to initialize the phar when it is directly executed, or when it is included in another script.

Parâmetros

alias

The alias that can be used in phar:// URLs to refer to this archive, rather than its full path.

dataoffset

Unused variable, here for compatibility with PEAR's PHP_Archive.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

PharException is thrown if not called directly within PHP execution, if no __HALT_COMPILER(); token is found in the current source file, or if the file cannot be opened for reading.

Exemplos

Exemplo #1 A Phar::mapPhar() example

mapPhar should be used only inside a phar's loader stub. Use loadPhar to load an external phar into memory.

Here is a sample Phar loader stub that uses mapPhar.

<?php
function __autoload($class)
{
    include 'phar://me.phar/' . str_replace('_', '/', $class) . '.php';
}
try {
    Phar::mapPhar('me.phar');
    include 'phar://me.phar/startup.php';
} catch (PharException $e) {
    echo $e->getMessage();
    die('Cannot initialize Phar');
}
__HALT_COMPILER();

Veja Também

  • Phar::loadPhar() - Loads any phar archive with an alias

Phar::loadPhar
Phar::mount
Phar


Mount an external path or file to a virtual location within the phar archive

Phar::mapPhar
Phar::mungServer
Phar
PHP Manual

Phar::mount

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::mount — Mount an external path or file to a virtual location within the phar archive

Descrição

void Phar::mount ( string $pharpath , string $externalpath )

Much like the unix file system concept of mounting external devices to paths within the directory tree, Phar::mount() allows referring to external files and directories as if they were inside of an archive. This allows powerful abstraction such as referring to external configuration files as if they were inside the archive.

Parâmetros

pharpath

The internal path within the phar archive to use as the mounted path location. If executed within a phar archive, this may be a relative path, otherwise this must be a full phar URL.

externalpath

A path or URL to an external file or directory to mount within the phar archive

Valor Retornado

No return. PharException is thrown on failure.

Erros

Throws PharException if any problems occur mounting the path.

Exemplos

Exemplo #1 A Phar::mount() example

The following example shows accessing an external configuration file as if it were a path within a phar archive.

First, the code inside of a phar archive:

<?php
$configuration = simplexml_load_string(file_get_contents(
    Phar::running(false) . '/config.xml'));
?>

Next the external code used to mount the configuration file:

<?php
// first set up the association between the abstract config.xml
// and the actual one on disk
Phar::mount('phar:///path/to/archive.phar/config.xml', '/home/example/config.xml');
// now run the application
include '/path/to/archive.phar';
?>

Another method is to put the mounting code inside the stub of the phar archive. Here is an example of setting up a default configuration file if no user configuration is specified:

<?php
// first set up the association between the abstract config.xml
// and the actual one on disk
if (defined('EXTERNAL_CONFIG')) {
    Phar::mount('config.xml', EXTERNAL_CONFIG);
    if (file_exists(__DIR__ . '/extra_config.xml')) {
        Phar::mount('extra.xml', __DIR__ . '/extra_config.xml');
    }
} else {
    Phar::mount('config.xml', 'phar://' . __FILE__ . '/default_config.xml');
    Phar::mount('extra.xml', 'phar://' . __FILE__ . '/default_extra.xml');
}
// now run the application
include 'phar://' . __FILE__ . '/index.php';
__HALT_COMPILER();
?>

...and the code externally to load this phar archive:

<?php
define('EXTERNAL_CONFIG', '/home/example/config.xml');
// now run the application
include '/path/to/archive.phar';
?>

Phar::mapPhar
Phar::mungServer
Phar


Defines a list of up to 4 $_SERVER variables that should be modified for execution

Phar::mount
Phar::offsetExists
Phar
PHP Manual

Phar::mungServer

(Unknown)

Phar::mungServer — Defines a list of up to 4 $_SERVER variables that should be modified for execution

Descrição

void Phar::mungServer ( array $munglist )

Phar::mungServer() should only be called within the stub of a phar archive.

Defines a list of up to 4 $_SERVER variables that should be modified for execution. Variables that can be modified to remove traces of phar execution are REQUEST_URI, PHP_SELF, SCRIPT_NAME and SCRIPT_FILENAME.

On its own, this method does nothing. Only when combined with Phar::webPhar() does it take effect, and only when the requested file is a PHP file to be parsed. Note that the PATH_INFO and PATH_TRANSLATED variables are always modified.

The original values of variables that are modified are stored in the SERVER array with PHAR_ prepended, so for instance SCRIPT_NAME would be saved as PHAR_SCRIPT_NAME.

Parâmetros

munglist

an array containing as string indices any of REQUEST_URI, PHP_SELF, SCRIPT_NAME and SCRIPT_FILENAME. Other values trigger an exception, and Phar::mungServer() is case-sensitive.

Valor Retornado

No return.

Erros

Throws UnexpectedValueException if any problems are found with the passed in data.

Exemplos

Exemplo #1 A Phar::mungServer() example

<?php
// example stub
Phar::mungServer(array('REQUEST_URI'));
Phar::webPhar();
__HALT_COMPILER();
?>

Veja Também

  • Phar::webPhar() - mapPhar for web-based phars. front controller for web applications
  • Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive

Phar::mount
Phar::offsetExists
Phar


determines whether a file exists in the phar

Phar::mungServer
Phar::offsetGet
Phar
PHP Manual

Phar::offsetExists

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::offsetExists — determines whether a file exists in the phar

Descrição

bool Phar::offsetExists ( string $offset )

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets.

offsetExists() is called whenever isset() is called.

Parâmetros

offset

The filename (relative path) to look for in a Phar.

Valor Retornado

Returns TRUE if the file exists within the phar, or FALSE if not.

Exemplos

Exemplo #1 A Phar::offsetExists() example

<?php
$p = new Phar(dirname(__FILE__) . '/my.phar', 0, 'my.phar');
$p['firstfile.txt'] = 'first file';
$p['secondfile.txt'] = 'second file';
// the next set of lines call offsetExists() indirectly
var_dump(isset($p['firstfile.txt']));
var_dump(isset($p['nothere.txt']));
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

Veja Também

  • Phar::offsetGet() - Gets a PharFileInfo object for a specific file
  • Phar::offsetSet() - set the contents of an internal file to those of an external file
  • Phar::offsetUnset() - remove a file from a phar

Phar::mungServer
Phar::offsetGet
Phar


Gets a PharFileInfo object for a specific file

Phar::offsetExists
Phar::offsetSet
Phar
PHP Manual

Phar::offsetGet

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::offsetGet — Gets a PharFileInfo object for a specific file

Descrição

int Phar::offsetGet ( string $offset )

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets. Phar::offsetGet() is used for retrieving files from a Phar archive.

Parâmetros

offset

The filename (relative path) to look for in a Phar.

Valor Retornado

A PharFileInfo object is returned that can be used to iterate over a file's contents or to retrieve information about the current file.

Erros

This method throws BadMethodCallException if the file does not exist in the Phar archive.

Exemplos

Exemplo #1 Phar::offsetGet() example

As with all classes that implement the ArrayAccess interface, Phar::offsetGet() is automatically called when using the [] angle bracket operator.

<?php
$p = new Phar(dirname(__FILE__) . '/myphar.phar', 0, 'myphar.phar');
$p['exists.txt'] = "file exists\n";
try {
    // automatically calls offsetGet()
    echo $p['exists.txt'];
    echo $p['doesnotexist.txt'];
} catch (BadMethodCallException $e) {
    echo $e;
}
?>

O exemplo acima irá imprimir:

file exists
Entry doesnotexist.txt does not exist

Veja Também

  • Phar::offsetExists() - determines whether a file exists in the phar
  • Phar::offsetSet() - set the contents of an internal file to those of an external file
  • Phar::offsetUnset() - remove a file from a phar

Phar::offsetExists
Phar::offsetSet
Phar


set the contents of an internal file to those of an external file

Phar::offsetGet
Phar::offsetUnset
Phar
PHP Manual

Phar::offsetSet

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::offsetSet — set the contents of an internal file to those of an external file

Descrição

void Phar::offsetSet ( string $offset , string $value )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets. offsetSet is used for modifying an existing file, or adding a new file to a Phar archive.

Parâmetros

offset

The filename (relative path) to modify in a Phar.

value

Content of the file.

Valor Retornado

No return values.

Erros

if phar.readonly is 1, BadMethodCallException is thrown, as modifying a Phar is only allowed when phar.readonly is set to 0. Throws PharException if there are any problems flushing changes made to the Phar archive to disk.

Exemplos

Exemplo #1 A Phar::offsetSet() example

offsetSet should not be accessed directly, but instead used via array access with the [] operator.

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
try {
    // calls offsetSet
    $p['file.txt'] = 'Hi there';
} catch (Exception $e) {
    echo 'Could not modify file.txt:', $e;
}
?>

Veja Também

  • Phar::offsetExists() - determines whether a file exists in the phar
  • Phar::offsetGet() - Gets a PharFileInfo object for a specific file
  • Phar::offsetUnset() - remove a file from a phar

Phar::offsetGet
Phar::offsetUnset
Phar


remove a file from a phar

Phar::offsetSet
Phar::running
Phar
PHP Manual

Phar::offsetUnset

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::offsetUnset — remove a file from a phar

Descrição

bool Phar::offsetUnset ( string $offset )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets. offsetUnset is used for deleting an existing file, and is called by the unset() language construct.

Parâmetros

offset

The filename (relative path) to modify in a Phar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

if phar.readonly is 1, BadMethodCallException is thrown, as modifying a Phar is only allowed when phar.readonly is set to 0. Throws PharException if there are any problems flushing changes made to the Phar archive to disk.

Exemplos

Exemplo #1 A Phar::offsetUnset() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
try {
    // deletes file.txt from my.phar by calling offsetUnset
    unset($p['file.txt']);
} catch (Exception $e) {
    echo 'Could not delete file.txt: ', $e;
}
?>

Veja Também

  • Phar::offsetExists() - determines whether a file exists in the phar
  • Phar::offsetGet() - Gets a PharFileInfo object for a specific file
  • Phar::offsetSet() - set the contents of an internal file to those of an external file
  • Phar::unlinkArchive() - Completely remove a phar archive from disk and from memory
  • Phar::delete() - Delete a file within a phar archive

Phar::offsetSet
Phar::running
Phar


Returns the full path on disk or full phar URL to the currently executing Phar archive

Phar::offsetUnset
Phar::setAlias
Phar
PHP Manual

Phar::running

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::running — Returns the full path on disk or full phar URL to the currently executing Phar archive

Descrição

string Phar::running ([ bool $retphar = true ] )

Returns the full path to the running phar archive. This is intended for use much like the __FILE__ magic constant, and only has effect inside an executing phar archive.

Inside the stub of an archive, Phar::running() returns "". Simply use __FILE__ to access the current running phar inside a stub.

Parâmetros

retphar

If FALSE, the full path on disk to the phar archive is returned. If TRUE, a full phar URL is returned.

Valor Retornado

Returns the filename if valid, empty string otherwise.

Exemplos

Exemplo #1 A Phar::running() example

For the following example, assume the file is within phar archive /path/to/phar/my.phar and the file is located at path my/file.txt within the phar archive.

<?php
$a = Phar::running(); // $a is "phar:///path/to/my.phar"
$b = Phar::running(false); // $b is "/path/to/my.phar"
?>

Phar::offsetUnset
Phar::setAlias
Phar


Set the alias for the Phar archive

Phar::running
Phar::setDefaultStub
Phar
PHP Manual

Phar::setAlias

(PHP >= 5.3.0, PECL phar >= 1.2.1)

Phar::setAlias — Set the alias for the Phar archive

Descrição

bool Phar::setAlias ( string $alias )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Set the alias for the Phar archive, and write it as the permanent alias for this phar archive. An alias can be used internally to a phar archive to ensure that use of the phar stream wrapper to access internal files always works regardless of the location of the phar archive on the filesystem. Another alternative is to rely upon Phar's interception of include() or to use Phar::interceptFileFuncs() and use relative paths.

Parâmetros

alias

A shorthand string that this archive can be referred to in phar stream wrapper access.

Valor Retornado

Erros

Throws UnexpectedValueException when write access is disabled, and PharException if the alias is already in use or any problems were encountered flushing changes to disk.

Exemplos

Exemplo #1 A Phar::setAlias() example

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar->setAlias('myp.phar');
} catch (Exception $e) {
    // handle error
}
?>

Veja Também

  • Phar::__construct() - Construct a Phar archive object
  • Phar::interceptFileFuncs() - instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions

Phar::running
Phar::setDefaultStub
Phar


Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader

Phar::setAlias
Phar::setMetadata
Phar
PHP Manual

Phar::setDefaultStub

(Unknown)

Phar::setDefaultStub — Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader

Descrição

bool Phar::setDefaultStub ([ string $index [, string $webindex ]] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method is a convenience method that combines the functionality of Phar::createDefaultStub() and Phar::setStub().

Parâmetros

index

Relative path within the phar archive to run if accessed on the command-line

webindex

Relative path within the phar archive to run if accessed through a web browser

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

UnexpectedValueException is thrown if phar.readonly is enabled in php.ini. PharException is thrown if any problems are encountered flushing changes to disk.

Exemplos

Exemplo #1 A Phar::setDefaultStub() example

<?php
try {
    $phar = new Phar('myphar.phar');
    $phar->setDefaultStub('cli.php', 'web/index.php');
    // this is the same as:
    // $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive
  • Phar::createDefaultStub() - Create a phar-file format specific stub

Phar::setAlias
Phar::setMetadata
Phar


Sets phar archive meta-data

Phar::setDefaultStub
Phar::setSignatureAlgorithm
Phar
PHP Manual

Phar::setMetadata

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::setMetadata — Sets phar archive meta-data

Descrição

void Phar::setMetadata ( mixed $metadata )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Phar::setMetadata() should be used to store customized data that describes something about the phar archive as a complete entity. PharFileInfo::setMetadata() should be used for file-specific meta-data. Meta-data can slow down the performance of loading a phar archive if the data is large.

Some possible uses for meta-data include specifying which file within the archive should be used to bootstrap the archive, or the location of a file manifest like » PEAR's package.xml file. However, any useful data that describes the phar archive may be stored.

Parâmetros

metadata

Any PHP variable containing information to store that describes the phar archive

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A Phar::setMetadata() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.php'] = '<?php echo "hello"';
    $p->setMetadata(array('bootstrap' => 'file.php'));
    var_dump($p->getMetadata());
} catch (Exception $e) {
    echo 'Could not create and/or modify phar:', $e;
}
?>

O exemplo acima irá imprimir:

array(1) {
  ["bootstrap"]=>
  string(8) "file.php"
}

Veja Também

  • Phar::getMetadata() - Returns phar archive meta-data
  • Phar::delMetadata() - Deletes the global metadata of the phar
  • Phar::hasMetadata() - Returns whether phar has global meta-data

Phar::setDefaultStub
Phar::setSignatureAlgorithm
Phar


set the signature algorithm for a phar and apply it.

Phar::setMetadata
Phar::setStub
Phar
PHP Manual

Phar::setSignatureAlgorithm

(PHP >= 5.3.0, PECL phar >= 1.1.0)

Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it.

Descrição

void Phar::setSignatureAlgorithm ( int $sigtype [, string $privatekey ] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

set the signature algorithm for a phar and apply it. The signature algorithm must be one of Phar::MD5, Phar::SHA1, Phar::SHA256, Phar::SHA512, or Phar::OPENSSL.

Note that all executable phar archives have a signature created automatically, SHA1 by default. data tar- or zip-based archives (archives created with the PharData class) must have their signature created and set explicitly via Phar::setSignatureAlgorithm().

Parâmetros

sigtype

    One of Phar::MD5,
Phar::SHA1, Phar::SHA256,
Phar::SHA512, or Phar::OPENSSL

privatekey

The contents of an OpenSSL private key, as extracted from a certificate or OpenSSL key file:

<?php
$private = openssl_get_privatekey(file_get_contents('private.pem'));
$pkey = '';
openssl_pkey_export($private, $pkey);
$p->setSignatureAlgorithm(Phar::OPENSSL, $pkey);
?>
See phar introduction for instructions on naming and placement of the public key file.

Valor Retornado

Não há valor retornado.

Erros

Throws UnexpectedValueException for many errors, and a PharException if any problems occur flushing changes to disk.

Veja Também

  • Phar::getSupportedSignatures() - Return array of supported signature types
  • Phar::getSignature() - Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive

Phar::setMetadata
Phar::setStub
Phar


Used to set the PHP loader or bootstrap stub of a Phar archive

Phar::setSignatureAlgorithm
Phar::startBuffering
Phar
PHP Manual

Phar::setStub

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::setStub — Used to set the PHP loader or bootstrap stub of a Phar archive

Descrição

bool Phar::setStub ( string $stub )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method is used to add a PHP bootstrap loader stub to a new Phar archive, or to replace the loader stub in an existing Phar archive.

The loader stub for a Phar archive is used whenever an archive is included directly as in this example:

<?php
include 'myphar.phar';
?>

The loader is not accessed when including a file through the phar stream wrapper like so:

<?php
include 'phar://myphar.phar/somefile.php';
?>

Parâmetros

stub

A string or an open stream handle to use as the executable stub for this phar archive.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

UnexpectedValueException is thrown if phar.readonly is enabled in php.ini. PharException is thrown if any problems are encountered flushing changes to disk.

Exemplos

Exemplo #1 A Phar::setStub() example

<?php
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['a.php'] = '<?php var_dump("Hello");';
    $p->setStub('<?php var_dump("First"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>');
    include 'phar://brandnewphar.phar/a.php';
    var_dump($p->getStub());
    $p['b.php'] = '<?php var_dump("World");';
    $p->setStub('<?php var_dump("Second"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>');
    include 'phar://brandnewphar.phar/b.php';
    var_dump($p->getStub());
} catch (Exception $e) {
    echo 'Write operations failed on brandnewphar.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

string(5) "Hello"
string(82) "<?php var_dump("First"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>"
string(5) "World"
string(83) "<?php var_dump("Second"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); ?>"

Veja Também

  • Phar::getStub() - Return the PHP loader or bootstrap stub of a Phar archive
  • Phar::createDefaultStub() - Create a phar-file format specific stub

Phar::setSignatureAlgorithm
Phar::startBuffering
Phar


Start buffering Phar write operations, do not modify the Phar object on disk

Phar::setStub
Phar::stopBuffering
Phar
PHP Manual

Phar::startBuffering

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::startBuffering — Start buffering Phar write operations, do not modify the Phar object on disk

Descrição

void Phar::startBuffering ( void )

Although technically unnecessary, the Phar::startBuffering() method can provide a significant performance boost when creating or modifying a Phar archive with a large number of files. Ordinarily, every time a file within a Phar archive is created or modified in any way, the entire Phar archive will be recreated with the changes. In this way, the archive will be up-to-date with the activity performed on it.

However, this can be unnecessary when simply creating a new Phar archive, when it would make more sense to write the entire archive out at once. Similarly, it is often necessary to make a series of changes and to ensure that they all are possible before making any changes on disk, similar to the relational database concept of transactions. the Phar::startBuffering()/Phar::stopBuffering() pair of methods is provided for this purpose.

Phar write buffering is per-archive, buffering active for the foo.phar Phar archive does not affect changes to the bar.phar Phar archive.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A Phar::startBuffering() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
} catch (Exception $e) {
    echo 'Could not create phar:', $e;
}
echo 'The new phar has ' . $p->count() . " entries\n";
$p->startBuffering();
$p['file.txt'] = 'hi';
$p['file2.txt'] = 'there';
$p['file2.txt']->setCompressedGZ();
$p['file3.txt'] = 'babyface';
$p['file3.txt']->setMetaData(42);
$p->setStub("<?php
function __autoload($class)
{
    include 'phar://myphar.phar/' . str_replace('_', '/', $class) . '.php';
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER();");
$p->stopBuffering();
?>

Veja Também

  • Phar::stopBuffering() - Stop buffering write requests to the Phar archive, and save changes to disk
  • Phar::isBuffering() - Used to determine whether Phar write operations are being buffered, or are flushing directly to disk

Phar::setStub
Phar::stopBuffering
Phar


Stop buffering write requests to the Phar archive, and save changes to disk

Phar::startBuffering
Phar::uncompressAllFiles
Phar
PHP Manual

Phar::stopBuffering

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::stopBuffering — Stop buffering write requests to the Phar archive, and save changes to disk

Descrição

void Phar::stopBuffering ( void )

Phar::stopBuffering() is used in conjunction with the Phar::startBuffering() method. Phar::startBuffering() can provide a significant performance boost when creating or modifying a Phar archive with a large number of files. Ordinarily, every time a file within a Phar archive is created or modified in any way, the entire Phar archive will be recreated with the changes. In this way, the archive will be up-to-date with the activity performed on it.

However, this can be unnecessary when simply creating a new Phar archive, when it would make more sense to write the entire archive out at once. Similarly, it is often necessary to make a series of changes and to ensure that they all are possible before making any changes on disk, similar to the relational database concept of transactions. The Phar::startBuffering()/Phar::stopBuffering() pair of methods is provided for this purpose.

Phar write buffering is per-archive, buffering active for the foo.phar Phar archive does not affect changes to the bar.phar Phar archive.

Valor Retornado

Não há valor retornado.

Erros

PharException is thrown if any problems are encountered flushing changes to disk.

Exemplos

Exemplo #1 A Phar::stopBuffering() example

<?php
$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
$p['file1.txt'] = 'hi';
$p->startBuffering();
var_dump($p->getStub());
$p->setStub("<?php
function __autoload(\$class)
{
    include 'phar://brandnewphar.phar/' . str_replace('_', '/', \$class) . '.php';
}
Phar::mapPhar('brandnewphar.phar');
include 'phar://brandnewphar.phar/startup.php';
__HALT_COMPILER();");
$p->stopBuffering();
var_dump($p->getStub());
?>

O exemplo acima irá imprimir:

string(24) "<?php __HALT_COMPILER();"
string(195) "<?php
function __autoload($class)
{
    include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('brandnewphar.phar');
include 'phar://brandnewphar.phar/startup.php';
__HALT_COMPILER();"

Veja Também

  • Phar::startBuffering() - Start buffering Phar write operations, do not modify the Phar object on disk
  • Phar::isBuffering() - Used to determine whether Phar write operations are being buffered, or are flushing directly to disk

Phar::startBuffering
Phar::uncompressAllFiles
Phar


Uncompresses all files in the current Phar archive

Phar::stopBuffering
Phar::unlinkArchive
Phar
PHP Manual

Phar::uncompressAllFiles

(PECL phar < 2.0.0)

Phar::uncompressAllFiles — Uncompresses all files in the current Phar archive

Descrição

bool Phar::uncompressAllFiles ( void )

Nota:

Este
método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações
alternativas são possíveis usando Phar::compress(),
Phar::decompress(), Phar::compressFiles() e
Phar::decompressFiles().

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method decompresses all files in the Phar archive. If any files are already compressed using gzip compression, the zlib extension must be enabled in order to decompress the files, and any files compressed using bzip2 compression require the bzip2 extension to decompress the files. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the bzip2 extension is not enabled and any files are compressed using bzip2 compression, or if any files are compressed using gzip compression and the zlib extension is not enabled.

Exemplos

Exemplo #1 A Phar::uncompressAllFiles() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $p['myfile2.txt'] = 'hi';
    $p->compressAllFilesGZ();
    foreach ($p as $file) {
        var_dump($file->getFileName());
        var_dump($file->isCompressed());
        var_dump($file->isCompressedBZIP2());
        var_dump($file->isCompressedGZ());
    }
    $p->uncompressAllFiles();
    foreach ($p as $file) {
        var_dump($file->getFileName());
        var_dump($file->isCompressed());
        var_dump($file->isCompressedBZIP2());
        var_dump($file->isCompressedGZ());
    }
} catch (Exception $e) {
    echo 'Write operations failed on my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
bool(true)
bool(false)
bool(true)
string(11) "myfile2.txt"
bool(true)
bool(false)
bool(true)
string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms

Phar::stopBuffering
Phar::unlinkArchive
Phar


Completely remove a phar archive from disk and from memory

Phar::uncompressAllFiles
Phar::webPhar
Phar
PHP Manual

Phar::unlinkArchive

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::unlinkArchive — Completely remove a phar archive from disk and from memory

Descrição

bool Phar::unlinkArchive ( string $archive )

Removes a phar archive for disk and memory.

Parâmetros

archive

The path on disk to the phar archive.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

PharException is thrown if there are any open file pointers to the phar archive, or any existing Phar, PharData, or PharFileInfo objects referring to the phar archive.

Exemplos

Exemplo #1 A Phar::unlinkArchive() example

<?php
// simple usage
Phar::unlinkArchive('/path/to/my.phar');

// more common example:
$p = new Phar('my.phar');
$fp = fopen('phar://my.phar/file.txt', 'r');
// this creates 'my.phar.gz'
$gp = $p->compress(Phar::GZ);
// remove all references to the archive
unset($p);
fclose($fp);
// now remove all traces of the archive
Phar::unlinkArchive('my.phar');
?>

Veja Também

  • Phar::delete() - Delete a file within a phar archive
  • Phar::offsetUnset() - remove a file from a phar

Phar::uncompressAllFiles
Phar::webPhar
Phar


mapPhar for web-based phars. front controller for web applications

Phar::unlinkArchive
PharData
Phar
PHP Manual

Phar::webPhar

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::webPhar — mapPhar for web-based phars. front controller for web applications

Descrição

void Phar::webPhar ([ string $alias [, string $index = "index.php" [, string $f404 [, array $mimetypes [, array $rewrites ]]]]] )

Phar::mapPhar() for web-based phars. This method parses $_SERVER['REQUEST_URI'] and routes a request from a web browser to an internal file within the phar archive. In essence, it simulates a web server, routing requests to the correct file, echoing the correct headers and parsing PHP files as needed. This powerful method is part of what makes it easy to convert an existing PHP application into a phar archive. Combined with Phar::mungServer() and Phar::interceptFileFuncs(), any web application can be used unmodified from a phar archive.

Phar::webPhar() should only be called from the stub of a phar archive (see here for more information on what a stub is).

Parâmetros

alias

The alias that can be used in phar:// URLs to refer to this archive, rather than its full path.

index

The location within the phar of the directory index.

f404

The location of the script to run when a file is not found. This script should output the proper HTTP 404 headers.

mimetypes

An array mapping additional file extensions to MIME type. By default, these extensions are mapped to these mime types:

<?php
$mimes = array(
    'phps' => 2, // pass to highlight_file()
    'c' => 'text/plain',
    'cc' => 'text/plain',
    'cpp' => 'text/plain',
    'c++' => 'text/plain',
    'dtd' => 'text/plain',
    'h' => 'text/plain',
    'log' => 'text/plain',
    'rng' => 'text/plain',
    'txt' => 'text/plain',
    'xsd' => 'text/plain',
    'php' => 1, // parse as PHP
    'inc' => 1, // parse as PHP
    'avi' => 'video/avi',
    'bmp' => 'image/bmp',
    'css' => 'text/css',
    'gif' => 'image/gif',
    'htm' => 'text/html',
    'html' => 'text/html',
    'htmls' => 'text/html',
    'ico' => 'image/x-ico',
    'jpe' => 'image/jpeg',
    'jpg' => 'image/jpeg',
    'jpeg' => 'image/jpeg',
    'js' => 'application/x-javascript',
    'midi' => 'audio/midi',
    'mid' => 'audio/midi',
    'mod' => 'audio/mod',
    'mov' => 'movie/quicktime',
    'mp3' => 'audio/mp3',
    'mpg' => 'video/mpeg',
    'mpeg' => 'video/mpeg',
    'pdf' => 'application/pdf',
    'png' => 'image/png',
    'swf' => 'application/shockwave-flash',
    'tif' => 'image/tiff',
    'tiff' => 'image/tiff',
    'wav' => 'audio/wav',
    'xbm' => 'image/xbm',
    'xml' => 'text/xml',
);
?>

rewrites

An array mapping URI to internal file, simulating mod_rewrite of apache. For example:

<?php
array(
    'myinfo' => 'myinfo.php'
);
?>
would route calls to http://<host>/myphar.phar/myinfo to the file phar:///path/to/myphar.phar/myinfo.php, preserving GET/POST. This does not quite work like mod_rewrite in that it would not match http://<host>/myphar.phar/myinfo/another.

Valor Retornado

Não há valor retornado.

Erros

Throws PharException when unable to open the internal file to output, or if called from a non-stub. If an invalid array value is passed into mimetypes or to rewrites, then UnexpectedValueException is thrown.

Exemplos

Exemplo #1 A Phar::webPhar() example

With the example below, the created phar will display Hello World if one browses to /myphar.phar/index.php or to /myphar.phar, and will display the source of index.phps if one browses to /myphar.phar/index.phps.

<?php
// creating the phar archive:
try {
    $phar = new Phar('myphar.phar');
    $phar['index.php'] = '<?php echo "Hello World"; ?>';
    $phar['index.phps'] = '<?php echo "Hello World"; ?>';
    $phar->setStub('<?php
Phar::webPhar();
__HALT_COMPILER(); ?>');
} catch (Exception $e) {
    // handle error here
}
?>

Veja Também

  • Phar::mungServer() - Defines a list of up to 4 $_SERVER variables that should be modified for execution
  • Phar::interceptFileFuncs() - instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related functions

Phar::unlinkArchive
PharData
Phar


The PharData class

Introdução

The PharData class provides a high-level interface to accessing and creating non-executable tar and zip archives. Because these archives do not contain a stub and cannot be executed by the phar extension, it is possible to create and manipulate regular zip and tar files using the PharData class even if phar.readonly php.ini setting is 1.

Sinopse da classe

PharData extends Phar {
/* Properties */
/* Methods */
bool addEmptyDir ( string $dirname )
void Phar::addFile ( string $file [, string $localname ] )
bool addFromString ( string $localname , string $contents )
array Phar::buildFromDirectory ( string $base_dir [, string $regex ] )
array buildFromIterator ( Iterator $iter [, string $base_directory ] )
object compress ( int $compression [, string $extension ] )
bool compressFiles ( int $compression )
void __construct ( string $fname [, int $flags [, string $alias [, int $format = Phar::TAR ]]] )
PharData convertToData ([ int $format [, int $compression [, string $extension ]]] )
Phar convertToExecutable ([ int $format [, int $compression [, string $extension ]]] )
bool copy ( string $oldfile , string $newfile )
object decompress ([ string $extension ] )
bool decompressFiles ( void )
bool delMetadata ( void )
bool delete ( string $entry )
bool extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )
bool isWritable ( void )
void offsetSet ( string $offset , string $value )
bool offsetUnset ( string $offset )
bool setAlias ( string $alias )
bool setDefaultStub ([ string $index [, string $webindex ]] )
void Phar::setMetadata ( mixed $metadata )
void Phar::setSignatureAlgorithm ( int $sigtype )
bool setStub ( string $stub )
/* Inherited methods */
void Phar::addEmptyDir ( string $dirname )
void Phar::addFile ( string $file [, string $localname ] )
void Phar::addFromString ( string $localname , string $contents )
string Phar::apiVersion ( void )
array Phar::buildFromDirectory ( string $base_dir [, string $regex ] )
array Phar::buildFromIterator ( Iterator $iter [, string $base_directory ] )
bool Phar::canCompress ([ int $type = 0 ] )
bool Phar::canWrite ( void )
object Phar::compress ( int $compression [, string $extension ] )
bool Phar::compressAllFilesBZIP2 ( void )
bool Phar::compressAllFilesGZ ( void )
void Phar::compressFiles ( int $compression )
void Phar::__construct ( string $fname [, int $flags [, string $alias ]] )
PharData Phar::convertToData ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )
Phar Phar::convertToExecutable ([ int $format = 9021976 [, int $compression = 9021976 [, string $extension ]]] )
bool Phar::copy ( string $oldfile , string $newfile )
int Phar::count ( void )
string Phar::createDefaultStub ([ string $indexfile [, string $webindexfile ]] )
object Phar::decompress ([ string $extension ] )
bool Phar::decompressFiles ( void )
bool Phar::delMetadata ( void )
bool Phar::delete ( string $entry )
bool Phar::extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )
mixed Phar::getMetaData ( void )
bool Phar::getModified ( void )
array Phar::getSignature ( void )
string Phar::getStub ( void )
array Phar::getSupportedCompression ( void )
array Phar::getSupportedSignatures ( void )
string Phar::getVersion ( void )
bool Phar::hasMetadata ( void )
void Phar::interceptFileFuncs ( void )
bool Phar::isBuffering ( void )
mixed Phar::isCompressed ( void )
bool Phar::isFileFormat ( int $format )
bool Phar::isValidPharFilename ( string $filename [, bool $executable = true ] )
bool Phar::isWritable ( void )
bool Phar::loadPhar ( string $filename [, string $alias ] )
bool Phar::mapPhar ([ string $alias [, int $dataoffset = 0 ]] )
void Phar::mount ( string $pharpath , string $externalpath )
void Phar::mungServer ( array $munglist )
bool Phar::offsetExists ( string $offset )
int Phar::offsetGet ( string $offset )
void Phar::offsetSet ( string $offset , string $value )
bool Phar::offsetUnset ( string $offset )
string Phar::running ([ bool $retphar = true ] )
bool Phar::setAlias ( string $alias )
bool Phar::setDefaultStub ([ string $index [, string $webindex ]] )
void Phar::setMetadata ( mixed $metadata )
void Phar::setSignatureAlgorithm ( int $sigtype [, string $privatekey ] )
bool Phar::setStub ( string $stub )
void Phar::startBuffering ( void )
void Phar::stopBuffering ( void )
bool Phar::uncompressAllFiles ( void )
bool Phar::unlinkArchive ( string $archive )
void Phar::webPhar ([ string $alias [, string $index = "index.php" [, string $f404 [, array $mimetypes [, array $rewrites ]]]]] )
}

Índice

  • PharData::addEmptyDir — Add an empty directory to the tar/zip archive
  • PharData::addFile — Add a file from the filesystem to the tar/zip archive
  • PharData::addFromString — Add a file from the filesystem to the tar/zip archive
  • PharData::buildFromDirectory — Construct a tar/zip archive from the files within a directory.
  • PharData::buildFromIterator — Construct a tar or zip archive from an iterator.
  • PharData::compress — Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • PharData::compressFiles — Compresses all files in the current tar/zip archive
  • PharData::__construct — Construct a non-executable tar or zip archive object
  • PharData::convertToData — Convert a phar archive to a non-executable tar or zip file
  • PharData::convertToExecutable — Convert a non-executable tar/zip archive to an executable phar archive
  • PharData::copy — Copy a file internal to the phar archive to another new file within the phar
  • PharData::decompress — Decompresses the entire Phar archive
  • PharData::decompressFiles — Decompresses all files in the current zip archive
  • PharData::delMetadata — Deletes the global metadata of a zip archive
  • PharData::delete — Delete a file within a tar/zip archive
  • PharData::extractTo — Extract the contents of a tar/zip archive to a directory
  • PharData::isWritable — Returns true if the tar/zip archive can be modified
  • PharData::offsetSet — set the contents of a file within the tar/zip to those of an external file or string
  • PharData::offsetUnset — remove a file from a tar/zip archive
  • PharData::setAlias — dummy function (Phar::setAlias is not valid for PharData)
  • PharData::setDefaultStub — dummy function (Phar::setDefaultStub is not valid for PharData)
  • Phar::setMetadata — Sets phar archive meta-data
  • Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it. The
  • PharData::setStub — dummy function (Phar::setStub is not valid for PharData)
Phar::webPhar
PharData::addEmptyDir
Phar


Add an empty directory to the tar/zip archive

PharData
PharData::addFile
PharData
PHP Manual

PharData::addEmptyDir

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::addEmptyDir — Add an empty directory to the tar/zip archive

Descrição

bool PharData::addEmptyDir ( string $dirname )

With this method, an empty directory is created with path dirname. This method is similar to ZipArchive::addEmptyDir().

Parâmetros

dirname

The name of the empty directory to create in the phar archive

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A PharData::addEmptyDir() example

<?php
try {
    $a = new PharData('/path/to/my.tar');

    $a->addEmptyDir('/full/path/to/file');
    // demonstrates how this file is stored
    $b = $a['full/path/to/file']->isDir();
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • Phar::addEmptyDir() - Add an empty directory to the phar archive
  • PharData::addFile() - Add a file from the filesystem to the tar/zip archive
  • PharData::addFromString() - Add a file from the filesystem to the tar/zip archive

PharData
PharData::addFile
PharData


Add a file from the filesystem to the tar/zip archive

PharData::addEmptyDir
PharData::addFromString
PharData
PHP Manual

PharData::addFile

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::addFile — Add a file from the filesystem to the tar/zip archive

Descrição

void Phar::addFile ( string $file [, string $localname ] )

With this method, any file or URL can be added to the tar/zip archive. If the optional second parameter localname is specified, the file will be stored in the archive with that name, otherwise the file parameter is used as the path to store within the archive. URLs must have a localname or an exception is thrown. This method is similar to ZipArchive::addFile().

Parâmetros

file

Full or relative path to a file on disk to be added to the phar archive.

localname

Path that the file will be stored in the archive.

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A PharData::addFile() example

<?php
try {
    $a = new PharData('/path/to/my.tar');

    $a->addFile('/full/path/to/file');
    // demonstrates how this file is stored
    $b = $a['full/path/to/file']->getContent();

    $a->addFile('/full/path/to/file', 'my/file.txt');
    $c = $a['my/file.txt']->getContent();

    // demonstrate URL usage
    $a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • PharData::offsetSet() - set the contents of a file within the tar/zip to those of an external file or string
  • Phar::addFile() - Add a file from the filesystem to the phar archive
  • PharData::addFromString() - Add a file from the filesystem to the tar/zip archive
  • PharData::addEmptyDir() - Add an empty directory to the tar/zip archive

PharData::addEmptyDir
PharData::addFromString
PharData


Add a file from the filesystem to the tar/zip archive

PharData::addFile
PharData::buildFromDirectory
PharData
PHP Manual

PharData::addFromString

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::addFromString — Add a file from the filesystem to the tar/zip archive

Descrição

bool PharData::addFromString ( string $localname , string $contents )

With this method, any string can be added to the tar/zip archive. The file will be stored in the archive with localname as its path. This method is similar to ZipArchive::addFromString().

Parâmetros

localname

Path that the file will be stored in the archive.

contents

The file contents to store

Valor Retornado

no return value, exception is thrown on failure.

Exemplos

Exemplo #1 A PharData::addFromString() example

<?php
try {
    $a = new PharData('/path/to/my.tar');

    $a->addFromString('path/to/file.txt', 'my simple file');
    $b = $a['path/to/file.txt']->getContent();

    // to add contents from a stream handle for large files, use offsetSet()
    $c = fopen('/path/to/hugefile.bin');
    $a['largefile.bin'] = $c;
    fclose($c);
} catch (Exception $e) {
    // handle errors here
}
?>

Veja Também

  • PharData::offsetSet() - set the contents of a file within the tar/zip to those of an external file or string
  • Phar::addFromString() - Add a file from the filesystem to the phar archive
  • PharData::addFile() - Add a file from the filesystem to the tar/zip archive
  • PharData::addEmptyDir() - Add an empty directory to the tar/zip archive

PharData::addFile
PharData::buildFromDirectory
PharData


Construct a tar/zip archive from the files within a directory.

PharData::addFromString
PharData::buildFromIterator
PharData
PHP Manual

PharData::buildFromDirectory

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::buildFromDirectory — Construct a tar/zip archive from the files within a directory.

Descrição

array Phar::buildFromDirectory ( string $base_dir [, string $regex ] )

Populate a tar/zip archive from directory contents. The optional second parameter is a regular expression (pcre) that is used to exclude files. Any filename that matches the regular expression will be included, all others will be excluded. For more fine-grained control, use PharData::buildFromIterator().

Parâmetros

base_dir

The full or relative path to the directory that contains all files to add to the archive.

regex

An optional pcre regular expression that is used to filter the list of files. Only file paths matching the regular expression will be included in the archive.

Valor Retornado

Phar::buildFromDirectory() returns an associative array mapping internal path of file to the full path of the file on the filesystem.

Erros

This method throws BadMethodCallException when unable to instantiate the internal directory iterators, or a PharException if there were errors saving the phar archive.

Exemplos

Exemplo #1 A PharData::buildFromDirectory() example

<?php
$phar = new PharData('project.tar');
// add all files in the project
$phar->buildFromDirectory(dirname(__FILE__) . '/project');

$phar2 = new PharData('project2.zip');
// add all files in the project, only include php files
$phar->buildFromDirectory(dirname(__FILE__) . '/project', '/\.php$/');
?>

Veja Também

  • Phar::buildFromDirectory() - Construct a phar archive from the files within a directory.
  • PharData::buildFromIterator() - Construct a tar or zip archive from an iterator.

PharData::addFromString
PharData::buildFromIterator
PharData


Construct a tar or zip archive from an iterator.

PharData::buildFromDirectory
PharData::compress
PharData
PHP Manual

PharData::buildFromIterator

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::buildFromIterator — Construct a tar or zip archive from an iterator.

Descrição

array PharData::buildFromIterator ( Iterator $iter [, string $base_directory ] )

Populate a tar or zip archive from an iterator. Two styles of iterators are supported, iterators that map the filename within the tar/zip to the name of a file on disk, and iterators like DirectoryIterator that return SplFileInfo objects. For iterators that return SplFileInfo objects, the second parameter is required.

Exemplos

Exemplo #1 A PharData::buildFromIterator() with SplFileInfo

For most tar/zip archives, the archive will reflect an actual directory layout, and the second style is the most useful. For instance, to create a tar/zip archive containing the files in this sample directory layout:

/path/to/project/
                 config/
                        dist.xml
                        debug.xml
                 lib/
                     file1.php
                     file2.php
                 src/
                     processthing.php
                 www/
                     index.php
                 cli/
                     index.php

This code could be used to add these files to the "project.tar" tar archive:

<?php
$phar = new PharData('project.tar');
$phar->buildFromIterator(
    new RecursiveIteratorIterator(
     new RecursiveDirectoryIterator('/path/to/project')),
    '/path/to/project');
?>

The file project.tar can then be used immediately. PharData::buildFromIterator() does not set values such as compression, metadata, and this can be done after creating the tar/zip archive.

As an interesting note, PharData::buildFromIterator() can also be used to copy the contents of an existing phar, tar or zip archive, as the PharData object descends from DirectoryIterator:

<?php
$phar = new PharData('project.tar');
$phar->buildFromIterator(
    new RecursiveIteratorIterator(
     new Phar('/path/to/anotherphar.phar')),
    'phar:///path/to/anotherphar.phar/path/to/project');
$phar->setStub($phar->createDefaultWebStub('cli/index.php', 'www/index.php'));
?>

Exemplo #2 A PharData::buildFromIterator() with other iterators

The second form of the iterator can be used with any iterator that returns a key => value mapping, such as an ArrayIterator:

<?php
$phar = new PharData('project.tar');
$phar->buildFromIterator(
    new ArrayIterator(
     array(
        'internal/file.php' => dirname(__FILE__) . '/somefile.php',
        'another/file.jpg' => fopen('/path/to/bigfile.jpg', 'rb'),
     )));
?>

Parâmetros

iter

Any iterator that either associatively maps tar/zip file to location or returns SplFileInfo objects

base_directory

For iterators that return SplFileInfo objects, the portion of each file's full path to remove when adding to the tar/zip archive

Valor Retornado

PharData::buildFromIterator() returns an associative array mapping internal path of file to the full path of the file on the filesystem.

Erros

This method returns UnexpectedValueException when the iterator returns incorrect values, such as an integer key instead of a string, a BadMethodCallException when an SplFileInfo-based iterator is passed without a base_directory parameter, or a PharException if there were errors saving the phar archive.

Veja Também

  • Phar::buildFromIterator() - Construct a phar archive from an iterator.

PharData::buildFromDirectory
PharData::compress
PharData


Compresses the entire tar/zip archive using Gzip or Bzip2 compression

PharData::buildFromIterator
PharData::compressFiles
PharData
PHP Manual

PharData::compress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::compress — Compresses the entire tar/zip archive using Gzip or Bzip2 compression

Descrição

object PharData::compress ( int $compression [, string $extension ] )

For tar archives, this method compresses the entire archive using gzip compression or bzip2 compression. The resulting file can be processed with the gunzip command/bunzip command, or accessed directly and transparently with the Phar extension.

For zip archives, this method fails with an exception. The zlib extension must be enabled to compress with gzip compression, the bzip2 extension must be enabled in order to compress with bzip2 compression.

In addition, this method automatically renames the archive, appending .gz, .bz2 or removing the extension if passed Phar::NONE to remove compression. Alternatively, a file extension may be specified with the second parameter.

Parâmetros

compression

Compression must be one of Phar::GZ, Phar::BZ2 to add compression, or Phar::NONE to remove compression.

extension

By default, the extension is .tar.gz or .tar.bz2 for compressing a tar, and .tar for decompressing.

Valor Retornado

A PharData object is returned.

Erros

Throws BadMethodCallException if the zlib extension is not available, or the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A PharData::compress() example

<?php
$p = new PharData('/path/to/my.tar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p1 = $p->compress(Phar::GZ); // copies to /path/to/my.phar.gz
$p2 = $p->compress(Phar::BZ2); // copies to /path/to/my.phar.bz2
$p3 = $p2->compress(Phar::NONE); // exception: /path/to/my.phar already exists
?>

Veja Também

  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression

PharData::buildFromIterator
PharData::compressFiles
PharData


Compresses all files in the current tar/zip archive

PharData::compress
PharData::__construct
PharData
PHP Manual

PharData::compressFiles

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::compressFiles — Compresses all files in the current tar/zip archive

Descrição

bool PharData::compressFiles ( int $compression )

For tar-based archives, this method throws a BadMethodCallException, as compression of individual files within a tar archive is not supported by the file format. Use PharData::compress() to compress an entire tar-based archive.

For Zip-based archives, this method compresses all files in the archive using the specified compression. The zlib or bzip2 extensions must be enabled to take advantage of this feature. In addition, if any files are already compressed using bzip2/zlib compression, the respective extension must be enabled in order to decompress the files prior to re-compressing.

Parâmetros

compression

Compression must be one of Phar::GZ, Phar::BZ2 to add compression, or Phar::NONE to remove compression.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, the zlib extension is not available, or if any files are compressed using bzip2 compression and the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A PharData::compressFiles() example

<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
$p->compressFiles(Phar::GZ);
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)
string(10) "myfile.txt"
int(4096)
bool(false)
bool(true)
string(11) "myfile2.txt"
int(4096)
bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • PharData::decompressFiles() - Decompresses all files in the current zip archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • PharData::decompress() - Decompresses the entire Phar archive

PharData::compress
PharData::__construct
PharData


Construct a non-executable tar or zip archive object

PharData::compressFiles
PharData::convertToData
PharData
PHP Manual

PharData::__construct

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::__construct — Construct a non-executable tar or zip archive object

Descrição

void PharData::__construct ( string $fname [, int $flags [, string $alias [, int $format = Phar::TAR ]]] )

Parâmetros

fname

Path to an existing tar/zip archive or to-be-created archive

flags

Flags to pass to Phar parent class RecursiveDirectoryIterator.

alias

Alias with which this Phar archive should be referred to in calls to stream functionality.

format

One of the file format constants available within the Phar class.

Erros

Throws BadMethodCallException if called twice; UnexpectedValueException if the Phar archive can't be opened.

Exemplos

Exemplo #1 A PharData::__construct() example

<?php
try {
    $p = new PharData('/path/to/my.tar', CURRENT_AS_FILEINFO | KEY_AS_FILENAME);
} catch (UnexpectedValueException $e) {
    die('Could not open my.tar');
} catch (BadMethodCallException $e) {
    echo 'technically, this cannot happen';
}
echo file_get_contents('phar:///path/to/my.tar/example.txt');
?>

PharData::compressFiles
PharData::convertToData
PharData


Convert a phar archive to a non-executable tar or zip file

PharData::__construct
PharData::convertToExecutable
PharData
PHP Manual

PharData::convertToData

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::convertToData — Convert a phar archive to a non-executable tar or zip file

Descrição

PharData PharData::convertToData ([ int $format [, int $compression [, string $extension ]]] )

This method is used to convert a non-executable tar or zip archive to another non-executable format.

If no changes are specified, this method throws a BadMethodCallException. This method should be used to convert a tar archive to zip format or vice-versa. Although it is possible to simply change the compression of a tar archive using this method, it is better to use the PharData::compress() method for logical consistency.

If successful, the method creates a new archive on disk and returns a PharData object. The old archive is not removed from disk, and should be done manually after the process has finished.

Parâmetros

format

This should be one of Phar::TAR or Phar::ZIP. If set to NULL, the existing file format will be preserved.

compression

This should be one of Phar::NONE for no whole-archive compression, Phar::GZ for zlib-based compression, and Phar::BZ2 for bzip-based compression.

extension

This parameter is used to override the default file extension for a converted archive. Note that .phar cannot be used anywhere in the filename for a non-executable tar or zip archive.

If converting to a tar-based phar archive, the default extensions are .tar, .tar.gz, and .tar.bz2 depending on specified compression. For zip-based archives, the default extension is .zip.

Valor Retornado

The method returns a PharData object on success and throws an exception on failure.

Erros

This method throws BadMethodCallException when unable to compress, an unknown compression method has been specified, the requested archive is buffering with Phar::startBuffering() and has not concluded with Phar::stopBuffering(), and a PharException if any problems are encountered during the phar creation process.

Exemplos

Exemplo #1 A PharData::convertToData() example

Using PharData::convertToData():

<?php
try {
    $tarphar = new PharData('myphar.tar');
    // note that myphar.tar is *not* unlinked
    // convert it to the non-executable tar file format
    // creates myphar.zip
    $zip = $tarphar->convertToData(Phar::ZIP);
    // create myphar.tbz
    $tgz = $zip->convertToData(Phar::TAR, Phar::BZ2, '.tbz');
    // creates myphar.phar.tgz
    $phar = $tarphar->convertToData(Phar::PHAR); // throws exception
} catch (Exception $e) {
    // handle the error here
}
?>

Veja Também

  • Phar::convertToExecutable() - Convert a phar archive to another executable phar archive file format
  • Phar::convertToData() - Convert a phar archive to a non-executable tar or zip file
  • PharData::convertToExecutable() - Convert a non-executable tar/zip archive to an executable phar archive

PharData::__construct
PharData::convertToExecutable
PharData


Convert a non-executable tar/zip archive to an executable phar archive

PharData::convertToData
PharData::copy
PharData
PHP Manual

PharData::convertToExecutable

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::convertToExecutable — Convert a non-executable tar/zip archive to an executable phar archive

Descrição

Phar PharData::convertToExecutable ([ int $format [, int $compression [, string $extension ]]] )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

This method is used to convert a non-executable tar or zip archive to an executable phar archive. Any of the three executable file formats (phar, tar or zip) can be used, and whole-archive compression can also be performed.

If no changes are specified, this method throws a BadMethodCallException.

If successful, the method creates a new archive on disk and returns a Phar object. The old archive is not removed from disk, and should be done manually after the process has finished.

Parâmetros

format

This should be one of Phar::PHAR, Phar::TAR, or Phar::ZIP. If set to NULL, the existing file format will be preserved.

compression

This should be one of Phar::NONE for no whole-archive compression, Phar::GZ for zlib-based compression, and Phar::BZ2 for bzip-based compression.

extension

This parameter is used to override the default file extension for a converted archive. Note that all zip- and tar-based phar archives must contain .phar in their file extension in order to be processed as a phar archive.

If converting to a phar-based archive, the default extensions are .phar, .phar.gz, or .phar.bz2 depending on the specified compression. For tar-based phar archives, the default extensions are .phar.tar, .phar.tar.gz, and .phar.tar.bz2. For zip-based phar archives, the default extension is .phar.zip.

Valor Retornado

The method returns a Phar object on success and throws an exception on failure.

Erros

This method throws BadMethodCallException when unable to compress, an unknown compression method has been specified, the requested archive is buffering with Phar::startBuffering() and has not concluded with Phar::stopBuffering(), an UnexpectedValueException if write support is disabled, and a PharException if any problems are encountered during the phar creation process.

Exemplos

Exemplo #1 A PharData::convertToExecutable() example

Using PharData::convertToExecutable():

<?php
try {
    $tarphar = new PharData('myphar.tar');
    // convert it to the phar file format
    // note that myphar.tar is *not* unlinked
    $phar = $tarphar->convertToExecutable(Phar::PHAR); // creates myphar.phar
    $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
    // creates myphar.phar.tgz
    $compressed = $tarphar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz');
} catch (Exception $e) {
    // handle the error here
}
?>

Veja Também

  • Phar::convertToExecutable() - Convert a phar archive to another executable phar archive file format
  • Phar::convertToData() - Convert a phar archive to a non-executable tar or zip file
  • PharData::convertToData() - Convert a phar archive to a non-executable tar or zip file

PharData::convertToData
PharData::copy
PharData


Copy a file internal to the phar archive to another new file within the phar

PharData::convertToExecutable
PharData::decompress
PharData
PHP Manual

PharData::copy

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::copy — Copy a file internal to the phar archive to another new file within the phar

Descrição

bool PharData::copy ( string $oldfile , string $newfile )

Copy a file internal to the tar/zip archive to another new file within the same archive. This is an object-oriented alternative to using copy() with the phar stream wrapper.

Parâmetros

oldfile

newfile

Valor Retornado

returns TRUE on success, but it is safer to encase method call in a try/catch block and assume success if no exception is thrown.

Erros

throws UnexpectedValueException if the source file does not exist, the destination file already exists, write access is disabled, opening either file fails, reading the source file fails, or a PharException if writing the changes to the phar fails.

Exemplos

Exemplo #1 A PharData::copy() example

This example shows using PharData::copy() and the equivalent stream wrapper performance of the same thing. The primary difference between the two approaches is error handling. All PharData methods throw exceptions, whereas the stream wrapper uses trigger_error().

<?php
try {
    $phar = new PharData('myphar.tar');
    $phar['a'] = 'hi';
    $phar->copy('a', 'b');
    echo $phar['b']; // outputs "phar://myphar.tar/b"
} catch (Exception $e) {
    // handle error
}

// the stream wrapper equivalent of the above code.
// E_WARNINGS are triggered on error rather than exceptions.
copy('phar://myphar.tar/a', 'phar//myphar.tar/c');
echo file_get_contents('phar://myphar.tar/c'); // outputs "hi"
?>

PharData::convertToExecutable
PharData::decompress
PharData


Decompresses the entire Phar archive

PharData::copy
PharData::decompressFiles
PharData
PHP Manual

PharData::decompress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::decompress — Decompresses the entire Phar archive

Descrição

object PharData::decompress ([ string $extension ] )

For tar-based archives, this method decompresses the entire archive.

For Zip-based archives, this method fails with an exception. The zlib extension must be enabled to decompress an archive compressed with gzip compression, and the bzip2 extension must be enabled in order to decompress an archive compressed with bzip2 compression.

In addition, this method automatically renames the file extension of the archive, .tar by default. Alternatively, a file extension may be specified with the second parameter.

Parâmetros

extension

For decompressing, the default file extension is .phar.tar. Use this parameter to specify another file extension. Be aware that no non-executable archives cannot contain .phar in their filename.

Valor Retornado

A PharData object is returned.

Erros

Throws BadMethodCallException if the zlib extension is not available, or the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A PharData::decompress() example

<?php
$p = new PharData('/path/to/my.tar', 0, 'my.tar.gz');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p3 = $p2->decompress(); // creates /path/to/my.tar
?>

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • PharData::compressFiles() - Compresses all files in the current tar/zip archive
  • PharData::decompressFiles() - Decompresses all files in the current zip archive

PharData::copy
PharData::decompressFiles
PharData


Decompresses all files in the current zip archive

PharData::decompress
PharData::delMetadata
PharData
PHP Manual

PharData::decompressFiles

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::decompressFiles — Decompresses all files in the current zip archive

Descrição

bool PharData::decompressFiles ( void )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

For tar-based archives, this method throws a BadMethodCallException, as compression of individual files within a tar archive is not supported by the file format. Use PharData::compress() to compress an entire tar-based archive.

For Zip-based archives, this method decompresses all files in the archive. The zlib or bzip2 extensions must be enabled to take advantage of this feature if any files are compressed using bzip2/zlib compression.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the zlib extension is not available, or if any files are compressed using bzip2 compression and the bzip2 extension is not enabled.

Exemplos

Exemplo #1 A PharData::decompressFiles() example

<?php
$p = new PharData('/path/to/my.zip');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
$p->compressFiles(Phar::GZ);
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
$p->decompressFiles();
foreach ($p as $file) {
    var_dump($file->getFileName());
    var_dump($file->isCompressed());
    var_dump($file->isCompressed(Phar::BZ2));
    var_dump($file->isCompressed(Phar::GZ));
}
?>

O exemplo acima irá imprimir:

string(10) "myfile.txt"
int(4096)
bool(false)
bool(true)
string(11) "myfile2.txt"
int(4096)
bool(false)
bool(true)
string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • PharData::compressFiles() - Compresses all files in the current tar/zip archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • PharData::compress() - Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  • PharData::decompress() - Decompresses the entire Phar archive

PharData::decompress
PharData::delMetadata
PharData


Deletes the global metadata of a zip archive

PharData::decompressFiles
PharData::delete
PharData
PHP Manual

PharData::delMetadata

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::delMetadata — Deletes the global metadata of a zip archive

Descrição

bool PharData::delMetadata ( void )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Deletes the global metadata of the zip archive

Parâmetros

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A PharData::delMetaData() example

<?php
try {
    $phar = new PharData('myphar.zip');
    var_dump($phar->getMetadata());
    $phar->setMetadata("hi there");
    var_dump($phar->getMetadata());
    $phar->delMetadata();
    var_dump($phar->getMetadata());
} catch (Exception $e) {
    // handle errors
}
?>

O exemplo acima irá imprimir:

NULL
string(8) "hi there"
NULL

Veja Também

  • Phar::delMetadata() - Deletes the global metadata of the phar

PharData::decompressFiles
PharData::delete
PharData


Delete a file within a tar/zip archive

PharData::delMetadata
PharData::extractTo
PharData
PHP Manual

PharData::delete

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::delete — Delete a file within a tar/zip archive

Descrição

bool PharData::delete ( string $entry )

Delete a file within an archive. This is the functional equivalent of calling unlink() on the stream wrapper equivalent, as shown in the example below.

Parâmetros

entry

Path within an archive to the file to delete.

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A PharData::delete() example

<?php
try {
    $phar = new PharData('myphar.zip');
    $phar->delete('unlink/me.php');
    // this is equivalent to:
    unlink('phar://myphar.phar/unlink/me.php');
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • Phar::delete() - Delete a file within a phar archive

PharData::delMetadata
PharData::extractTo
PharData


Extract the contents of a tar/zip archive to a directory

PharData::delete
PharData::isWritable
PharData
PHP Manual

PharData::extractTo

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::extractTo — Extract the contents of a tar/zip archive to a directory

Descrição

bool PharData::extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )

Extract all files within a tar/zip archive to disk. Extracted files and directories preserve permissions as stored in the archive. The optional parameters allow optional control over which files are extracted, and whether existing files on disk can be overwritten. The second parameter files can be either the name of a file or directory to extract, or an array of names of files and directories to extract. By default, this method will not overwrite existing files, the third parameter can be set to true to enable overwriting of files. This method is similar to ZipArchive::extractTo().

Parâmetros

pathto

Path within an archive to the file to delete.

files

The name of a file or directory to extract, or an array of files/directories to extract

overwrite

Set to TRUE to enable overwriting existing files

Valor Retornado

returns TRUE on success, but it is better to check for thrown exception, and assume success if none is thrown.

Erros

Throws PharException if errors occur while flushing changes to disk.

Exemplos

Exemplo #1 A PharData::extractTo() example

<?php
try {
    $phar = new PharData('myphar.tar');
    $phar->extractTo('/full/path'); // extract all files
    $phar->extractTo('/another/path', 'file.txt'); // extract only file.txt
    $phar->extractTo('/this/path',
        array('file1.txt', 'file2.txt')); // extract 2 files only
    $phar->extractTo('/third/path', null, true); // extract all files, and overwrite
} catch (Exception $e) {
    // handle errors
}
?>

Veja Também

  • Phar::extractTo() - Extract the contents of a phar archive to a directory

PharData::delete
PharData::isWritable
PharData


Returns true if the tar/zip archive can be modified

PharData::extractTo
PharData::offsetSet
PharData
PHP Manual

PharData::isWritable

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::isWritable — Returns true if the tar/zip archive can be modified

Descrição

bool PharData::isWritable ( void )

This method returns TRUE if the tar/zip archive on disk is not read-only. Unlike Phar::isWritable(), data-only tar/zip archives can be modified even if phar.readonly is set to 1.

Parâmetros

No parameters.

Valor Retornado

Returns TRUE if the tar/zip archive can be modified

Veja Também

  • Phar::canWrite() - Returns whether phar extension supports writing and creating phars
  • Phar::isWritable() - Returns true if the phar archive can be modified

PharData::extractTo
PharData::offsetSet
PharData


set the contents of a file within the tar/zip to those of an external file or string

PharData::isWritable
PharData::offsetUnset
PharData
PHP Manual

PharData::offsetSet

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::offsetSet — set the contents of a file within the tar/zip to those of an external file or string

Descrição

void PharData::offsetSet ( string $offset , string $value )

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a tar/zip archive using array access brackets. offsetSet is used for modifying an existing file, or adding a new file to a tar/zip archive.

Parâmetros

offset

The filename (relative path) to modify in a tar or zip archive.

value

Content of the file.

Valor Retornado

No return values.

Erros

Throws PharException if there are any problems flushing changes made to the tar/zip archive to disk.

Exemplos

Exemplo #1 A PharData::offsetSet() example

offsetSet should not be accessed directly, but instead used via array access with the [] operator.

<?php
$p = new PharData('/path/to/my.tar');
try {
    // calls offsetSet
    $p['file.txt'] = 'Hi there';
} catch (Exception $e) {
    echo 'Could not modify file.txt:', $e;
}
?>

Veja Também

  • Phar::offsetSet() - set the contents of an internal file to those of an external file

PharData::isWritable
PharData::offsetUnset
PharData


remove a file from a tar/zip archive

PharData::offsetSet
PharData::setAlias
PharData
PHP Manual

PharData::offsetUnset

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::offsetUnset — remove a file from a tar/zip archive

Descrição

bool PharData::offsetUnset ( string $offset )

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a tar/zip archive using array access brackets. offsetUnset is used for deleting an existing file, and is called by the unset() language construct.

Parâmetros

offset

The filename (relative path) to modify in the tar/zip archive.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws PharException if there are any problems flushing changes made to the tar/zip archive to disk.

Exemplos

Exemplo #1 A PharData::offsetUnset() example

<?php
$p = new PharData('/path/to/my.zip');
try {
    // deletes file.txt from my.zip by calling offsetUnset
    unset($p['file.txt']);
} catch (Exception $e) {
    echo 'Could not delete file.txt: ', $e;
}
?>

Veja Também

  • Phar::offsetUnset() - remove a file from a phar

PharData::offsetSet
PharData::setAlias
PharData


dummy function (Phar::setAlias is not valid for PharData)

PharData::offsetUnset
PharData::setDefaultStub
PharData
PHP Manual

PharData::setAlias

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::setAlias — dummy function (Phar::setAlias is not valid for PharData)

Descrição

bool PharData::setAlias ( string $alias )

Non-executable tar/zip archives cannot have an alias, so this method simply throws an exception.

Parâmetros

alias

A shorthand string that this archive can be referred to in phar stream wrapper access. This parameter is ignored.

Valor Retornado

Erros

Throws PharException on all method calls

Veja Também

  • Phar::setAlias() - Set the alias for the Phar archive

PharData::offsetUnset
PharData::setDefaultStub
PharData


dummy function (Phar::setDefaultStub is not valid for PharData)

PharData::setAlias
Phar::setMetadata
PharData
PHP Manual

PharData::setDefaultStub

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::setDefaultStub — dummy function (Phar::setDefaultStub is not valid for PharData)

Descrição

bool PharData::setDefaultStub ([ string $index [, string $webindex ]] )

Non-executable tar/zip archives cannot have a stub, so this method simply throws an exception.

Parâmetros

index

Relative path within the phar archive to run if accessed on the command-line

webindex

Relative path within the phar archive to run if accessed through a web browser

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws PharException on all method calls

Veja Também

  • Phar::setDefaultStub() - Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader

PharData::setAlias
Phar::setMetadata
PharData


Sets phar archive meta-data

PharData::setDefaultStub
Phar::setSignatureAlgorithm
PharData
PHP Manual

Phar::setMetadata

(PHP >= 5.3.0, PECL phar >= 1.0.0)

Phar::setMetadata — Sets phar archive meta-data

Descrição

void Phar::setMetadata ( mixed $metadata )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

Phar::setMetadata() should be used to store customized data that describes something about the phar archive as a complete entity. PharFileInfo::setMetadata() should be used for file-specific meta-data. Meta-data can slow down the performance of loading a phar archive if the data is large.

Some possible uses for meta-data include specifying which file within the archive should be used to bootstrap the archive, or the location of a file manifest like » PEAR's package.xml file. However, any useful data that describes the phar archive may be stored.

Parâmetros

metadata

Any PHP variable containing information to store that describes the phar archive

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A Phar::setMetadata() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.php'] = '<?php echo "hello"';
    $p->setMetadata(array('bootstrap' => 'file.php'));
    var_dump($p->getMetadata());
} catch (Exception $e) {
    echo 'Could not create and/or modify phar:', $e;
}
?>

O exemplo acima irá imprimir:

array(1) {
  ["bootstrap"]=>
  string(8) "file.php"
}

Veja Também

  • Phar::getMetadata() - Returns phar archive meta-data
  • Phar::delMetadata() - Deletes the global metadata of the phar
  • Phar::hasMetadata() - Returns whether phar has global meta-data

PharData::setDefaultStub
Phar::setSignatureAlgorithm
PharData


set the signature algorithm for a phar and apply it. The

Phar::setMetadata
PharData::setStub
PharData
PHP Manual

Phar::setSignatureAlgorithm

(PHP >= 5.3.0, PECL phar >= 1.1.0)

Phar::setSignatureAlgorithm — set the signature algorithm for a phar and apply it. The

Descrição

void Phar::setSignatureAlgorithm ( int $sigtype )

Nota:

Esta função requer a configuração do arquivo php.ini phar.readonly ser definida como 0 para funcionar os objetos Phar. Caso contrário, uma PharException será disparada.

set the signature algorithm for a phar and apply it. The signature algorithm must be one of Phar::MD5, Phar::SHA1, Phar::SHA256, Phar::SHA512, or Phar::PGP (pgp not yet supported and falls back to SHA-1).

Parâmetros

sigtype

    One of Phar::MD5,
Phar::SHA1, Phar::SHA256,
Phar::SHA512, or Phar::PGP

Valor Retornado

Não há valor retornado.

Erros

Throws UnexpectedValueException for many errors, BadMethodCallException if called for a zip- or a tar-based phar archive, and a PharException if any problems occur flushing changes to disk.

Veja Também

  • Phar::getSupportedSignatures() - Return array of supported signature types
  • Phar::getSignature() - Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive

Phar::setMetadata
PharData::setStub
PharData


dummy function (Phar::setStub is not valid for PharData)

Phar::setSignatureAlgorithm
PharFileInfo
PharData
PHP Manual

PharData::setStub

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharData::setStub — dummy function (Phar::setStub is not valid for PharData)

Descrição

bool PharData::setStub ( string $stub )

Non-executable tar/zip archives cannot have a stub, so this method simply throws an exception.

Parâmetros

stub

A string or an open stream handle to use as the executable stub for this phar archive. This parameter is ignored.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws PharException on all method calls

Veja Também

  • Phar::setStub() - Used to set the PHP loader or bootstrap stub of a Phar archive

Phar::setSignatureAlgorithm
PharFileInfo
PharData


The PharFileInfo class

Introdução

The PharFileInfo class provides a high-level interface to the contents and attributes of a single file within a phar archive.

Sinopse da classe

PharFileInfo extends SplFileInfo {
/* Properties */
/* Methods */
void chmod ( int $permissions )
bool compress ( int $compression )
void __construct ( string $entry )
bool decompress ( void )
bool delMetadata ( void )
int getCRC32 ( void )
int getCompressedSize ( void )
mixed getMetaData ( void )
int getPharFlags ( void )
bool hasMetadata ( void )
bool isCRCChecked ( void )
bool isCompressed ([ int $compression_type = 9021976 ] )
bool isCompressedBZIP2 ( void )
bool isCompressedGZ ( void )
bool setCompressedBZIP2 ( void )
bool setCompressedGZ ( void )
void setMetaData ( mixed $metadata )
bool setUncompressed ( void )
}

Índice

  • PharFileInfo::chmod — Sets file-specific permission bits
  • PharFileInfo::compress — Compresses the current Phar entry with either zlib or bzip2 compression
  • PharFileInfo::__construct — Construct a Phar entry object
  • PharFileInfo::decompress — Decompresses the current Phar entry within the phar
  • PharFileInfo::delMetadata — Deletes the metadata of the entry
  • PharFileInfo::getCRC32 — Returns CRC32 code or throws an exception if CRC has not been verified
  • PharFileInfo::getCompressedSize — Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::getMetaData — Returns file-specific meta-data saved with a file
  • PharFileInfo::getPharFlags — Returns the Phar file entry flags
  • PharFileInfo::hasMetadata — Returns the metadata of the entry
  • PharFileInfo::isCRCChecked — Returns whether file entry has had its CRC verified
  • PharFileInfo::isCompressed — Returns whether the entry is compressed
  • PharFileInfo::isCompressedBZIP2 — Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressedGZ — Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2 — Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setCompressedGZ — Compresses the current Phar entry within the phar using gz compression
  • PharFileInfo::setMetaData — Sets file-specific meta-data saved with a file
  • PharFileInfo::setUncompressed — Uncompresses the current Phar entry within the phar, if it is compressed
PharData::setStub
PharFileInfo::chmod
Phar


Sets file-specific permission bits

PharFileInfo
PharFileInfo::compress
PharFileInfo
PHP Manual

PharFileInfo::chmod

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::chmod — Sets file-specific permission bits

Descrição

void PharFileInfo::chmod ( int $permissions )

PharFileInfo::chmod() allows setting of the executable file permissions bit, as well as read-only bits. Writeable bits are ignored, and set at runtime based on the phar.readonly INI variable. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Parâmetros

permissions

permissions (see chmod())

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A PharFileInfo::chmod() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar('brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.sh'] = '#!/usr/local/lib/php
    <?php echo "hi"; ?>';
    // set executable bit
    $p['file.sh']->chmod(0555);
    var_dump($p['file.sh']->isExecutable());
} catch (Exception $e) {
    echo 'Could not create/modify phar: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(true)

PharFileInfo
PharFileInfo::compress
PharFileInfo


Compresses the current Phar entry with either zlib or bzip2 compression

PharFileInfo::chmod
PharFileInfo::__construct
PharFileInfo
PHP Manual

PharFileInfo::compress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharFileInfo::compress — Compresses the current Phar entry with either zlib or bzip2 compression

Descrição

bool PharFileInfo::compress ( int $compression )

This method compresses the file inside the Phar archive using either bzip2 compression or zlib compression. The bzip2 or zlib extension must be enabled to take advantage of this feature. In addition, if the file is already compressed, the respective extension must be enabled in order to decompress the file. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, or if the bzip2/zlib extension is not available.

Exemplos

Exemplo #1 A PharFileInfo::compress() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->isCompressed(Phar::BZ2));
    $p['myfile.txt']->compress(Phar::BZ2);
    var_dump($file->isCompressed(Phar::BZ2));
} catch (Exception $e) {
    echo 'Create/modify operations on my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms

PharFileInfo::chmod
PharFileInfo::__construct
PharFileInfo


Construct a Phar entry object

PharFileInfo::compress
PharFileInfo::decompress
PharFileInfo
PHP Manual

PharFileInfo::__construct

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::__construct — Construct a Phar entry object

Descrição

void PharFileInfo::__construct ( string $entry )

This should not be called directly. Instead, a PharFileInfo object is initialized by calling Phar::offsetGet() through array access.

Parâmetros

entry

The full url to retrieve a file. If you wish to retrieve the information for the file my/file.php from the phar boo.phar, the entry should be phar://boo.phar/my/file.php.

Erros

Throws BadMethodCallException if __construct() is called twice. Throws UnexpectedValueException if the phar URL requested is malformed, the requested phar cannot be opened, or the file can't be found within the phar.

Exemplos

Exemplo #1 A PharFileInfo::__construct() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['testfile.txt'] = "hi\nthere\ndude";
    $file = $p['testfile.txt'];
    foreach ($file as $line => $text) {
        echo "line number $line: $text";
    }
    // this also works
    $file = new PharFileInfo('phar:///path/to/my.phar/testfile.txt');
    foreach ($file as $line => $text) {
        echo "line number $line: $text";
    }
} catch (Exception $e) {
    echo 'Phar operations failed: ', $e;
}
?>

O exemplo acima irá imprimir:

line number 1: hi
line number 2: there
line number 3: dude
line number 1: hi
line number 2: there
line number 3: dude

PharFileInfo::compress
PharFileInfo::decompress
PharFileInfo


Decompresses the current Phar entry within the phar

PharFileInfo::__construct
PharFileInfo::delMetadata
PharFileInfo
PHP Manual

PharFileInfo::decompress

(PHP >= 5.3.0, PECL phar >= 2.0.0)

PharFileInfo::decompress — Decompresses the current Phar entry within the phar

Descrição

bool PharFileInfo::decompress ( void )

This method decompresses the file inside the Phar archive. Depending on how the file is compressed, the bzip2 or zlib extensions must be enabled to take advantage of this feature. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, or if the bzip2/zlib extension is not available.

Exemplos

Exemplo #1 A PharFileInfo::decompress() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    $file->compress(Phar::GZ);
    var_dump($file->isCompressed());
    $p['myfile.txt']->decompress();
    var_dump($file->isCompressed());
} catch (Exception $e) {
    echo 'Create/modify failed for my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

int(4096)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressFiles() - Compresses all files in the current Phar archive
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms

PharFileInfo::__construct
PharFileInfo::delMetadata
PharFileInfo


Deletes the metadata of the entry

PharFileInfo::decompress
PharFileInfo::getCRC32
PharFileInfo
PHP Manual

PharFileInfo::delMetadata

(PHP >= 5.3.0, PECL phar >= 1.2.0)

PharFileInfo::delMetadata — Deletes the metadata of the entry

Descrição

bool PharFileInfo::delMetadata ( void )

Deletes the metadata of the entry, if any.

Parâmetros

No parameters.

Valor Retornado

Returns TRUE if successful, FALSE if the entry had no metadata. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Erros

Throws PharException if errors occurred while flushing changes to disk, and BadMethodCallException if write access is disabled.

Exemplos

Exemplo #1 A PharFileInfo::delMetaData() example

<?php
try {
    $a = new Phar('myphar.phar');
    $a['hi'] = 'hi';
    var_dump($a['hi']->delMetadata());
    $a['hi']->setMetadata('there');
    var_dump($a['hi']->delMetadata());
    var_dump($a['hi']->delMetadata());
} catch (Exception $e) {
    // handle errors
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)
bool(false)

Veja Também

  • PharFileInfo::setMetadata() - Sets file-specific meta-data saved with a file
  • PharFileInfo::hasMetadata() - Returns the metadata of the entry
  • PharFileInfo::getMetadata() - Returns file-specific meta-data saved with a file
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::hasMetadata() - Returns whether phar has global meta-data
  • Phar::getMetadata() - Returns phar archive meta-data

PharFileInfo::decompress
PharFileInfo::getCRC32
PharFileInfo


Returns CRC32 code or throws an exception if CRC has not been verified

PharFileInfo::delMetadata
PharFileInfo::getCompressedSize
PharFileInfo
PHP Manual

PharFileInfo::getCRC32

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::getCRC32 — Returns CRC32 code or throws an exception if CRC has not been verified

Descrição

int PharFileInfo::getCRC32 ( void )

This returns the crc32() checksum of the file within the Phar archive.

Valor Retornado

The crc32() checksum of the file within the Phar archive.

Erros

Throws BadMethodCallException if the file has not yet had its CRC32 verified. This should be impossible with normal use, as the CRC is verified upon opening the file for reading or writing.

Exemplos

Exemplo #1 A PharFileInfo::getCRC32() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    echo $file->getCRC32();
} catch (Exception $e) {
    echo 'Write operations on my.phar.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

3633523372

PharFileInfo::delMetadata
PharFileInfo::getCompressedSize
PharFileInfo


Returns the actual size of the file (with compression) inside the Phar archive

PharFileInfo::getCRC32
PharFileInfo::getMetaData
PharFileInfo
PHP Manual

PharFileInfo::getCompressedSize

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::getCompressedSize — Returns the actual size of the file (with compression) inside the Phar archive

Descrição

int PharFileInfo::getCompressedSize ( void )

This returns the size of the file within the Phar archive. Uncompressed files will return the same value for getCompressedSize as they will with filesize()

Valor Retornado

The size in bytes of the file within the Phar archive on disk.

Exemplos

Exemplo #1 A PharFileInfo::getCompressedSize() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    echo $file->getCompressedSize();
} catch (Exception $e) {
    echo 'Write operations failed on my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

2

Veja Também

  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::compressFiles() - Compresses all files in the current Phar archive

PharFileInfo::getCRC32
PharFileInfo::getMetaData
PharFileInfo


Returns file-specific meta-data saved with a file

PharFileInfo::getCompressedSize
PharFileInfo::getPharFlags
PharFileInfo
PHP Manual

PharFileInfo::getMetaData

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::getMetaData — Returns file-specific meta-data saved with a file

Descrição

mixed PharFileInfo::getMetaData ( void )

Return meta-data that was saved in the Phar archive's manifest for this file.

Parâmetros

Valor Retornado

any PHP variable that can be serialized and is stored as meta-data for the file, or NULL if no meta-data is stored.

Exemplos

Exemplo #1 A PharFileInfo::getMetaData() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.txt'] = 'hello';
    $p['file.txt']->setMetaData(array('user' => 'bill', 'mime-type' => 'text/plain'));
    var_dump($p['file.txt']->getMetaData());
} catch (Exception $e) {
    echo 'Could not create/modify brandnewphar.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

array(2) {
  ["user"]=>
  string(4) "bill"
  ["mime-type"]=>
  string(10) "text/plain"
}

Veja Também

  • PharFileInfo::setMetadata() - Sets file-specific meta-data saved with a file
  • PharFileInfo::hasMetadata() - Returns the metadata of the entry
  • PharFileInfo::delMetadata() - Deletes the metadata of the entry
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::hasMetadata() - Returns whether phar has global meta-data
  • Phar::getMetadata() - Returns phar archive meta-data

PharFileInfo::getCompressedSize
PharFileInfo::getPharFlags
PharFileInfo


Returns the Phar file entry flags

PharFileInfo::getMetaData
PharFileInfo::hasMetadata
PharFileInfo
PHP Manual

PharFileInfo::getPharFlags

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::getPharFlags — Returns the Phar file entry flags

Descrição

int PharFileInfo::getPharFlags ( void )

This returns the flags set in the manifest for a Phar. This will always return 0 in the current implementation.

Valor Retornado

The Phar flags (always 0 in the current implementation)

Exemplos

Exemplo #1 A PharFileInfo::getPharFlags() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->getPharFlags());
} catch (Exception $e) {
    echo 'Could not create/modify my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

int(0)

PharFileInfo::getMetaData
PharFileInfo::hasMetadata
PharFileInfo


Returns the metadata of the entry

PharFileInfo::getPharFlags
PharFileInfo::isCRCChecked
PharFileInfo
PHP Manual

PharFileInfo::hasMetadata

(PHP >= 5.3.0, PECL phar >= 1.2.0)

PharFileInfo::hasMetadata — Returns the metadata of the entry

Descrição

bool PharFileInfo::hasMetadata ( void )

Returns the metadata of a file within a phar archive.

Parâmetros

No parameters.

Valor Retornado

Returns FALSE if no metadata is set or is NULL, TRUE if metadata is not NULL

Veja Também

  • PharFileInfo::setMetadata() - Sets file-specific meta-data saved with a file
  • PharFileInfo::getMetadata() - Returns file-specific meta-data saved with a file
  • PharFileInfo::delMetadata() - Deletes the metadata of the entry
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::hasMetadata() - Returns whether phar has global meta-data
  • Phar::getMetadata() - Returns phar archive meta-data

PharFileInfo::getPharFlags
PharFileInfo::isCRCChecked
PharFileInfo


Returns whether file entry has had its CRC verified

PharFileInfo::hasMetadata
PharFileInfo::isCompressed
PharFileInfo
PHP Manual

PharFileInfo::isCRCChecked

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::isCRCChecked — Returns whether file entry has had its CRC verified

Descrição

bool PharFileInfo::isCRCChecked ( void )

This returns whether a file within a Phar archive has had its CRC verified.

Valor Retornado

TRUE if the file has had its CRC verified, FALSE if not.

Exemplos

Exemplo #1 A PharFileInfo::isCRCChecked() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->isCRCChecked());
} catch (Exception $e) {
    echo 'Create/modify operations failed on my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(true)

PharFileInfo::hasMetadata
PharFileInfo::isCompressed
PharFileInfo


Returns whether the entry is compressed

PharFileInfo::isCRCChecked
PharFileInfo::isCompressedBZIP2
PharFileInfo
PHP Manual

PharFileInfo::isCompressed

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::isCompressed — Returns whether the entry is compressed

Descrição

bool PharFileInfo::isCompressed ([ int $compression_type = 9021976 ] )

This returns whether a file is compressed within a Phar archive with either Gzip or Bzip2 compression.

Parâmetros

compression_type

One of Phar::GZ or Phar::BZ2, defaults to any compression.

Valor Retornado

TRUE if the file is compressed within the Phar archive, FALSE if not.

Exemplos

Exemplo #1 A PharFileInfo::isCompressed() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $p['myfile2.txt'] = 'hi';
    $p['myfile2.txt']->setCompressedGZ();
    $file = $p['myfile.txt'];
    $file2 = $p['myfile2.txt'];
    var_dump($file->isCompressed());
    var_dump($file2->isCompressed());
} catch (Exception $e) {
    echo 'Create/modify on phar my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::decompress() - Decompresses the current Phar entry within the phar
  • PharFileInfo::compress() - Compresses the current Phar entry with either zlib or bzip2 compression
  • Phar::decompress() - Decompresses the entire Phar archive
  • Phar::compress() - Compresses the entire Phar archive using Gzip or Bzip2 compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::decompressFiles() - Decompresses all files in the current Phar archive
  • Phar::compressFiles() - Compresses all files in the current Phar archive

PharFileInfo::isCRCChecked
PharFileInfo::isCompressedBZIP2
PharFileInfo


Returns whether the entry is compressed using bzip2

PharFileInfo::isCompressed
PharFileInfo::isCompressedGZ
PharFileInfo
PHP Manual

PharFileInfo::isCompressedBZIP2

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::isCompressedBZIP2 — Returns whether the entry is compressed using bzip2

Descrição

bool PharFileInfo::isCompressedBZIP2 ( void )

Nota:

Este método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações alternativas são possíveis usando PharFileInfo::isCompressed(), PharFileInfo::decompress(), e PharFileInfo::compress().

This returns whether a file is compressed within a Phar archive with Bzip2 compression.

Valor Retornado

TRUE if the file is compressed within the Phar archive using Bzip2, FALSE if not.

Exemplos

Exemplo #1 A PharFileInfo::isCompressedBZIP2() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $p['myfile2.txt'] = 'hi';
    $p['myfile3.txt'] = 'hi';
    $p['myfile2.txt']->setCompressedGZ();
    $p['myfile3.txt']->setCompressedBZIP2();
    $file = $p['myfile.txt'];
    $file2 = $p['myfile2.txt'];
    $file3 = $p['myfile3.txt'];
    var_dump($file->isCompressedBZIP2());
    var_dump($file2->isCompressedBZIP2());
    var_dump($file3->isCompressedBZIP2());
} catch (Exception $e) {
    echo 'Create/modify on phar my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

PharFileInfo::isCompressed
PharFileInfo::isCompressedGZ
PharFileInfo


Returns whether the entry is compressed using gz

PharFileInfo::isCompressedBZIP2
PharFileInfo::setCompressedBZIP2
PharFileInfo
PHP Manual

PharFileInfo::isCompressedGZ

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::isCompressedGZ — Returns whether the entry is compressed using gz

Descrição

bool PharFileInfo::isCompressedGZ ( void )

Nota:

Este método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações alternativas são possíveis usando PharFileInfo::isCompressed(), PharFileInfo::decompress(), e PharFileInfo::compress().

This returns whether a file is compressed within a Phar archive with Gzip compression.

Valor Retornado

TRUE if the file is compressed within the Phar archive using Gzip, FALSE if not.

Exemplos

Exemplo #1 A PharFileInfo::isCompressedGZ() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $p['myfile2.txt'] = 'hi';
    $p['myfile3.txt'] = 'hi';
    $p['myfile2.txt']->setCompressedGZ();
    $p['myfile3.txt']->setCompressedBZIP2();
    $file = $p['myfile.txt'];
    $file2 = $p['myfile2.txt'];
    $file3 = $p['myfile3.txt'];
    var_dump($file->isCompressedGZ());
    var_dump($file2->isCompressedGZ());
    var_dump($file3->isCompressedGZ());
} catch (Exception $e) {
    echo 'Create/modify on phar my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

PharFileInfo::isCompressedBZIP2
PharFileInfo::setCompressedBZIP2
PharFileInfo


Compresses the current Phar entry within the phar using Bzip2 compression

PharFileInfo::isCompressedGZ
PharFileInfo::setCompressedGZ
PharFileInfo
PHP Manual

PharFileInfo::setCompressedBZIP2

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::setCompressedBZIP2 — Compresses the current Phar entry within the phar using Bzip2 compression

Descrição

bool PharFileInfo::setCompressedBZIP2 ( void )

Nota:

Este método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações alternativas são possíveis usando PharFileInfo::isCompressed(), PharFileInfo::decompress(), e PharFileInfo::compress().

This method compresses the file inside the Phar archive using bzip2 compression. The bzip2 extension must be enabled to take advantage of this feature. In addition, if the file is already compressed using gzip compression, the zlib extension must be enabled in order to decompress the file. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, or if the bzip2 extension is not available.

Exemplos

Exemplo #1 A PharFileInfo::setCompressedBZIP2() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->isCompressedBZIP2());
    $p['myfile.txt']->setCompressedBZIP2();
    var_dump($file->isCompressedBZIP2());
} catch (Exception $e) {
    echo 'Create/modify operations on my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

PharFileInfo::isCompressedGZ
PharFileInfo::setCompressedGZ
PharFileInfo


Compresses the current Phar entry within the phar using gz compression

PharFileInfo::setCompressedBZIP2
PharFileInfo::setMetaData
PharFileInfo
PHP Manual

PharFileInfo::setCompressedGZ

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::setCompressedGZ — Compresses the current Phar entry within the phar using gz compression

Descrição

bool PharFileInfo::setCompressedGZ ( void )

Nota:

Este método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações alternativas são possíveis usando PharFileInfo::isCompressed(), PharFileInfo::decompress(), e PharFileInfo::compress().

This method compresses the file inside the Phar archive using gzip compression. The zlib extension must be enabled to take advantage of this feature. In addition, if the file is already compressed using bzip2 compression, the bzip2 extension must be enabled in order to decompress the file. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, or if the zlib extension is not available.

Exemplos

Exemplo #1 A PharFileInfo::setCompressedGZ() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    var_dump($file->isCompressedGZ());
    $p['myfile.txt']->setCompressedGZ();
    var_dump($file->isCompressedGZ());
} catch (Exception $e) {
    echo 'Create/modify operations on my.phar failed: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setUncompressed() - Uncompresses the current Phar entry within the phar, if it is compressed
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

PharFileInfo::setCompressedBZIP2
PharFileInfo::setMetaData
PharFileInfo


Sets file-specific meta-data saved with a file

PharFileInfo::setCompressedGZ
PharFileInfo::setUncompressed
PharFileInfo
PHP Manual

PharFileInfo::setMetaData

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::setMetaData — Sets file-specific meta-data saved with a file

Descrição

void PharFileInfo::setMetaData ( mixed $metadata )

PharFileInfo::setMetaData() should only be used to store customized data in a file that cannot be represented with existing information stored with a file. Meta-data can significantly slow down the performance of loading a phar archive if the data is large, or if there are many files containing meta-data. It is important to note that file permissions are natively supported inside a phar; it is possible to set them with the PharFileInfo::chmod() method. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Some possible uses for meta-data include passing a user/group that should be set when a file is extracted from the phar to disk. Other uses could include explicitly specifying a MIME type to return. However, any useful data that describes a file, but should not be contained inside of it may be stored.

Parâmetros

metadata

Any PHP variable containing information to store alongside a file

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A PharFileInfo::setMetaData() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    $p['file.txt'] = 'hello';
    $p['file.txt']->setMetaData(array('user' => 'bill', 'mime-type' => 'text/plain'));
    var_dump($p['file.txt']->getMetaData());
} catch (Exception $e) {
    echo 'Could not create/modify phar: ', $e;
}
?>

O exemplo acima irá imprimir:

array(2) {
  ["user"]=>
  string(4) "bill"
  ["mime-type"]=>
  string(10) "text/plain"
}

Veja Também

  • PharFileInfo::hasMetadata() - Returns the metadata of the entry
  • PharFileInfo::getMetadata() - Returns file-specific meta-data saved with a file
  • PharFileInfo::delMetadata() - Deletes the metadata of the entry
  • Phar::setMetadata() - Sets phar archive meta-data
  • Phar::hasMetadata() - Returns whether phar has global meta-data
  • Phar::getMetadata() - Returns phar archive meta-data

PharFileInfo::setCompressedGZ
PharFileInfo::setUncompressed
PharFileInfo


Uncompresses the current Phar entry within the phar, if it is compressed

PharFileInfo::setMetaData
PharException
PharFileInfo
PHP Manual

PharFileInfo::setUncompressed

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::setUncompressed — Uncompresses the current Phar entry within the phar, if it is compressed

Descrição

bool PharFileInfo::setUncompressed ( void )

Nota:

Este método tem sido removido da extensão phar a partir da versão 2.0.0. Implementações alternativas são possíveis usando PharFileInfo::isCompressed(), PharFileInfo::decompress(), e PharFileInfo::compress().

This method decompresses the file inside the Phar archive. Depending on how the file is compressed, the bzip2 or zlib extensions must be enabled to take advantage of this feature. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws BadMethodCallException if the phar.readonly INI variable is on, or if the bzip2/zlib extension is not available.

Exemplos

Exemplo #1 A PharFileInfo::setUncompressed() example

<?php
try {
    $p = new Phar('/path/to/my.phar', 0, 'my.phar');
    $p['myfile.txt'] = 'hi';
    $file = $p['myfile.txt'];
    $file->setCompressedGZ();
    var_dump($file->isCompressed());
    $p['myfile.txt']->setUncompressed();
    var_dump($file->isCompressed());
} catch (Exception $e) {
    echo 'Create/modify failed for my.phar: ', $e;
}
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

Veja Também

  • PharFileInfo::getCompressedSize() - Returns the actual size of the file (with compression) inside the Phar archive
  • PharFileInfo::isCompressedBZIP2() - Returns whether the entry is compressed using bzip2
  • PharFileInfo::isCompressed() - Returns whether the entry is compressed
  • PharFileInfo::isCompressedGZ() - Returns whether the entry is compressed using gz
  • PharFileInfo::setCompressedBZIP2() - Compresses the current Phar entry within the phar using Bzip2 compression
  • PharFileInfo::setCompressedGZ() - Compresses the current Phar entry within the phar using gz compression
  • Phar::canCompress() - Returns whether phar extension supports compression using either zlib or bzip2
  • Phar::isCompressed() - Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  • Phar::compressAllFilesBZIP2() - Compresses all files in the current Phar archive using Bzip2 compression
  • Phar::compressAllFilesGZ() - Compresses all files in the current Phar archive using Gzip compression
  • Phar::getSupportedCompression() - Return array of supported compression algorithms
  • Phar::uncompressAllFiles() - Uncompresses all files in the current Phar archive

PharFileInfo::setMetaData
PharException
PharFileInfo


The PharException class

Introdução

The PharException class provides a phar-specific exception class for try/catch blocks.

Sinopse da classe

PharException extends Exception {
/* Properties */
}

Índice

  • PharException — The PharException class provides a phar-specific exception class for try/catch blocks.
PharFileInfo::setUncompressed
PharException
Phar


The PharException class provides a phar-specific exception class for try/catch blocks.

PharException
Rar
PharException
PHP Manual

PharException

(Unknown)

PharException — The PharException class provides a phar-specific exception class for try/catch blocks.

Descrição

PharException
Rar
PharException
PHP Manual


Rar Archiving

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Rar Funções
    • rar_wrapper_cache_stats — Cache hits and misses for the URL wrapper
  • RarArchive — The RarArchive class
    • RarArchive::close — Close RAR archive and free all resources
    • RarArchive::getComment — Get comment text from the RAR archive
    • RarArchive::getEntries — Get full list of entries from the RAR archive
    • RarArchive::getEntry — Get entry object from the RAR archive
    • RarArchive::isBroken — Test whether an archive is broken (incomplete)
    • RarArchive::isSolid — Check whether the RAR archive is solid
    • RarArchive::open — Open RAR archive
    • RarArchive::setAllowBroken — Whether opening broken archives is allowed
    • RarArchive::__toString — Get text representation
  • RarEntry — The RarEntry class
    • RarEntry::extract — Extract entry from the archive
    • RarEntry::getAttr — Get attributes of the entry
    • RarEntry::getCrc — Get CRC of the entry
    • RarEntry::getFileTime — Get entry last modification time
    • RarEntry::getHostOs — Get entry host OS
    • RarEntry::getMethod — Get pack method of the entry
    • RarEntry::getName — Get name of the entry
    • RarEntry::getPackedSize — Get packed size of the entry
    • RarEntry::getStream — Get file handler for entry
    • RarEntry::getUnpackedSize — Get unpacked size of the entry
    • RarEntry::getVersion — Get minimum version of RAR program required to unpack the entry
    • RarEntry::isDirectory — Test whether an entry represents a directory
    • RarEntry::isEncrypted — Test whether an entry is encrypted
    • RarEntry::__toString — Get text representation of entry
  • RarException — The RarException class
    • RarException::isUsingExceptions — Check whether error handling with exceptions is in use
    • RarException::setUsingExceptions — Activate and deactivate error handling with exceptions
PharException
Introdução
Extensões de Compressão e Arquivo


Introdução

Rar is a powerful and effective archiver created by Eugene Roshal. This extension gives you possibility to read Rar archives but doesn't support writing Rar archives, because this is not supported by the UnRar library and is directly prohibited by its license.

More information about Rar and UnRar can be found at » http://www.rarlabs.com/.

Rar
Instalação/Configuração
Rar


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Rar


Instalação

Rar is currently available through PECL » http://pecl.php.net/package/rar.

Also you can use the PECL installer to install the Rar extension, using the following command: pecl -v install rar.

You can always download the tar.gz package and install Rar by hand:

Exemplo #1 Rar installation

gunzip rar-xxx.tgz
tar -xvf rar-xxx.tar
cd rar-xxx
phpize
./configure && make && make install

Windows users will enable php_rar.dll inside of php.ini in order to use these functions. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension registers three internal classes: The archive representations returned by rar_open() – RarArchive –, the entry representations returned by rar_list() and rar_entry_get() – RarEntry and the exception type RarException.

This extension also register a stream resource, called "rar" and a URL wrapper called "rar wrapper" and registered under the prefix "rar".

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

RAR_HOST_MSDOS (integer)
Use RarEntry::HOST_MSDOS instead.
RAR_HOST_OS2 (integer)
Use RarEntry::HOST_OS2 instead.
RAR_HOST_WIN32 (integer)
Use RarEntry::HOST_WIN32 instead.
RAR_HOST_UNIX (integer)
Use RarEntry::HOST_UNIX instead.
RAR_HOST_BEOS (integer)
Use RarEntry::HOST_BEOS instead.
Tipos Resource
Exemplos
Rar


Exemplos

See also the examples under rar:// wrapper.

Exemplo #1 On-the-fly decompression

<?php

if (!array_key_exists("i", $_GET) || !is_numeric($_GET["i"]))
    die("Index unspecified or non-numeric");
$index = (int) $_GET["i"];

$arch = RarArchive::open("example.rar");
if ($arch === FALSE)
    die("Cannot open example.rar");

$entries = $arch->getEntries();
if ($entries === FALSE)
    die("Cannot retrieve entries");

if (!array_key_exists($index, $entries))
    die("No such index: $index");

$orfilename = $entries[$index]->getName(); //UTF-8 encoded

$filesize = $entries[$index]->getUnpackedSize();

/* you could check HTTP_IF_MODIFIED_SINCE here and compare with
 * $entries[$index]->getFileTime(). You could also send a
 * "Last modified" header */

$fp = $entries[$index]->getStream();
if ($fp === FALSE)
    die("Cannot open file with index $index insided the archive.");

$arch->close(); //no longer needed; stream is independent

function detectUserAgent() {
    if (!array_key_exists('HTTP_USER_AGENT', $_SERVER))
        return "Other";

    $uas = $_SERVER['HTTP_USER_AGENT'];
    if (preg_match("@Opera/@", $uas))
        return "Opera";
    if (preg_match("@Firefox/@", $uas))
        return "Firefox";
    if (preg_match("@Chrome/@", $uas))
        return "Chrome";
    if (preg_match("@MSIE ([0-9.]+);@", $uas, $matches)) {
        if (((float)$matches[1]) >= 7.0)
            return "IE";
    }

    return "Other";
}

/*
 * We have 3 options:
 * - For FF and Opera, which support RFC 2231, use that format.
 * - For IE and Chrome, use attwithfnrawpctenclong
 *   (http://greenbytes.de/tech/tc2231/#attwithfnrawpctenclong)
 * - For the others, convert to ISO-8859-1, if possible
 */
$formatRFC2231 = 'Content-Disposition: attachment; filename*=UTF-8\'\'%s';
$formatDef = 'Content-Disposition: attachment; filename="%s"';

switch (detectUserAgent()) {
    case "Opera":
    case "Firefox":
        $orfilename = rawurlencode($orfilename);
        $format = $formatRFC2231;
        break;

    case "IE":
    case "Chrome":
        $orfilename = rawurlencode($orfilename);
        $format = $formatDef;
        break;
    default:
        if (function_exists('iconv'))
            $orfilename =
                @iconv("UTF-8", "ISO-8859-1//TRANSLIT", $orfilename);
        $format = $formatDef;
}

header(sprintf($format, $orfilename));
//cannot send error messages from now on (headers already sent)

//replace by real content type, perhaps infering from the file extension
$contentType = "application/octet-stream";
header("Content-Type: $contentType");

header("Content-Transfer-Encoding: binary");

header("Content-Length: $filesize");

if ($_SERVER['REQUEST_METHOD'] == "HEAD")
    die();

while (!feof($fp)) {
    $s = @fread($fp, 8192);
    if ($s === false)
        break; //useless to send error messages

    echo $s;
}
?>

This example opens a RAR file and presents the requested file inside the RAR archive for download to the client.

Exemplo #2 RAR extension filesystem extraction example

<?php

$rar_file = rar_open('example.rar') or die("Can't open Rar archive");

$entries = rar_list($rar_file);

foreach ($entries as $entry) {
    echo 'Filename: ' . $entry->getName() . "\n";
    echo 'Packed size: ' . $entry->getPackedSize() . "\n";
    echo 'Unpacked size: ' . $entry->getUnpackedSize() . "\n";

    $entry->extract('/dir/extract/to/');
}

rar_close($rar_file);

?>

This example opens a RAR file archive and extracts each entry to the specified directory.

Constantes pré-definidas
Rar Funções
Rar


Rar Funções

Índice

  • rar_wrapper_cache_stats — Cache hits and misses for the URL wrapper
Exemplos
rar_wrapper_cache_stats
Rar


Cache hits and misses for the URL wrapper

Rar Funções
RarArchive
Rar Funções
PHP Manual

rar_wrapper_cache_stats

(PECL rar >= 3.0.0)

rar_wrapper_cache_stats — Cache hits and misses for the URL wrapper

Descrição

string rar_wrapper_cache_stats ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Rar Funções
RarArchive
Rar Funções


The RarArchive class

Introdução

This class represents a RAR archive, which may be formed by several volumes (parts) and which contains a number of RAR entries (i.e., files, directories and other special objects such as symbolic links).

Objects of this class can be traversed, yielding the entries stored in the respective RAR archive. Those entries can also be obtained through RarArchive::getEntry() and RarArchive::getEntries().

Sinopse da classe

final RarArchive implements Traversable {
/* Methods */
public bool close ( void )
public string getComment ( void )
public array getEntries ( void )
public RarEntry getEntry ( string $entryname )
public bool isBroken ( void )
public bool isSolid ( void )
public static RarArchive open ( string $filename [, string $password = NULL [, callback $volume_callback = NULL ]] )
public bool setAllowBroken ( bool $allow_broken )
public string __toString ( void )
}

Índice

  • RarArchive::close — Close RAR archive and free all resources
  • RarArchive::getComment — Get comment text from the RAR archive
  • RarArchive::getEntries — Get full list of entries from the RAR archive
  • RarArchive::getEntry — Get entry object from the RAR archive
  • RarArchive::isBroken — Test whether an archive is broken (incomplete)
  • RarArchive::isSolid — Check whether the RAR archive is solid
  • RarArchive::open — Open RAR archive
  • RarArchive::setAllowBroken — Whether opening broken archives is allowed
  • RarArchive::__toString — Get text representation
rar_wrapper_cache_stats
RarArchive::close
Rar


Close RAR archive and free all resources

RarArchive
RarArchive::getComment
RarArchive
PHP Manual

RarArchive::close

rar_close

(PECL rar >= 2.0.0)

RarArchive::close -- rar_close — Close RAR archive and free all resources

Descrição

Object oriented style (method):

public bool RarArchive::close ( void )

Procedural style:

bool rar_close ( RarArchive $rarfile )

Close RAR archive and free all allocated resources.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
2.0.0 | The RAR entries returned by RarArchive::getEntry() and RarArchive::getEntries() are now invalidated when calling this method. This means that all instance methods called for such entries and not guaranteed to succeed.

Exemplos

Exemplo #1 Object oriented style

<?php
$rar_arch = RarArchive::open('latest_winrar.rar');
echo $rar_arch."\n";
$rar_arch->close();
echo $rar_arch."\n";
?>

O exemplo acima irá imprimir algo similar a:

RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar"
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar" (closed)

Exemplo #2 Procedural style

<?php
$rar_arch = rar_open('latest_winrar.rar');
echo $rar_arch."\n";
rar_close($rar_arch);
echo $rar_arch."\n";
?>

RarArchive
RarArchive::getComment
RarArchive


Get comment text from the RAR archive

RarArchive::close
RarArchive::getEntries
RarArchive
PHP Manual

RarArchive::getComment

rar_comment_get

(PECL rar >= 2.0.0)

RarArchive::getComment -- rar_comment_get — Get comment text from the RAR archive

Descrição

Object oriented style (method):

public string RarArchive::getComment ( void )

Procedural style:

string rar_comment_get ( RarArchive $rarfile )

Get the (global) comment stored in the RAR archive. It may be up to 64 KiB long.

Nota:

This extension does not support comments at the entry level.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

Valor Retornado

Returns the comment or NULL if there is none.

Nota:

RAR has currently no support for unicode comments. The encoding of the result of this function is not specified, but it will probably be Windows-1252.

Exemplos

Exemplo #1 Object oriented style

<?php
$rar_arch = RarArchive::open('commented.rar');
echo $rar_arch->getComment();
?>

O exemplo acima irá imprimir algo similar a:

This is the comment of the file commented.rar.

Exemplo #2 Procedural style

<?php
$rar_arch = rar_open('commented.rar');
echo rar_comment_get($rar_arch);
?>

RarArchive::close
RarArchive::getEntries
RarArchive


Get full list of entries from the RAR archive

RarArchive::getComment
RarArchive::getEntry
RarArchive
PHP Manual

RarArchive::getEntries

rar_list

(PECL rar >= 2.0.0)

RarArchive::getEntries -- rar_list — Get full list of entries from the RAR archive

Descrição

Object oriented style (method):

public array RarArchive::getEntries ( void )

Procedural style:

array rar_list ( RarArchive $rarfile )

Get entries list (files and directories) from the RAR archive.

Nota:

If the archive has entries with the same name, this method, together with RarArchive foreach iteration and array-like access with numeric indexes, are the only ones to access all the entries (i.e., RarArchive::getEntry() and the rar:// wrapper are insufficient).

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

Valor Retornado

rar_list() returns array of RarEntry objects or FALSE on failure.

Histórico

Versão | Descrição
3.0.0 | Support for RAR archives with repeated entry names is no longer defective.

Exemplos

Exemplo #1 Object oriented style

<?php
$rar_arch = RarArchive::open('solid.rar');
if ($rar_arch === FALSE)
    die("Could not open RAR archive.");

$rar_entries = $rar_arch->getEntries();
if ($rar_entries === FALSE)
    die("Could retrieve entries.");

echo "Found " . count($rar_entries) . " entries.\n";

foreach ($rar_entries as $e) {
    echo $e;
    echo "\n";
}
$rar_arch->close();
?>

O exemplo acima irá imprimir algo similar a:

Found 2 entries.
RarEntry for file "tese.txt" (23b93a7a)
RarEntry for file "unrardll.txt" (2ed64b6e)

Exemplo #2 Procedural style

<?php
$rar_arch = rar_open('solid.rar');
if ($rar_arch === FALSE)
    die("Could not open RAR archive.");

$rar_entries = rar_list($rar_arch);
if ($rar_entries === FALSE)
    die("Could retrieve entries.");

echo "Found " . count($rar_entries) . " entries.\n";

foreach ($rar_entries as $e) {
    echo $e;
    echo "\n";
}
rar_close($rar_arch);
?>

Veja Também

  • RarArchive::getEntry() - Get entry object from the RAR archive
  • rar:// wrapper

RarArchive::getComment
RarArchive::getEntry
RarArchive


Get entry object from the RAR archive

RarArchive::getEntries
RarArchive::isBroken
RarArchive
PHP Manual

RarArchive::getEntry

rar_entry_get

(PECL rar >= 2.0.0)

RarArchive::getEntry -- rar_entry_get — Get entry object from the RAR archive

Descrição

Object oriented style (method):

public RarEntry RarArchive::getEntry ( string $entryname )

Procedural style:

RarEntry rar_entry_get ( RarArchive $rarfile , string $entryname )

Get entry object (file or directory) from the RAR archive.

Nota:

You can also get entry objects using RarArchive::getEntries().

Note that a RAR archive can have multiple entries with the same name; this method will retrieve only the first.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

entryname

Path to the entry within the RAR archive.

Nota:

The path must be the same returned by RarEntry::getName().

Valor Retornado

Returns the matching RarEntry object or FALSE on failure.

Exemplos

Exemplo #1 Object oriented style

<?php
$rar_arch = RarArchive::open('solid.rar');
if ($rar_arch === FALSE)
    die("Could not open RAR archive.");
$rar_entry = $rar_arch->getEntry('tese.txt');
if ($rar_entry === FALSE)
    die("Could get such entry");
echo get_class($rar_entry)."\n";
echo $rar_entry;
$rar_arch->close();
?>

O exemplo acima irá imprimir algo similar a:

RarEntry
RarEntry for file "tese.txt" (23b93a7a)

Exemplo #2 Procedural style

<?php
$rar_arch = rar_open('solid.rar');
if ($rar_arch === FALSE)
    die("Could not open RAR archive.");
$rar_entry = rar_entry_get($rar_arch, 'tese.txt');
if ($rar_entry === FALSE)
    die("Could get such entry");
echo get_class($rar_entry)."\n";
echo $rar_entry;
rar_close($rar_arch);
?>

Veja Também

  • RarArchive::getEntries() - Get full list of entries from the RAR archive
  • rar:// wrapper

RarArchive::getEntries
RarArchive::isBroken
RarArchive


Test whether an archive is broken (incomplete)

RarArchive::getEntry
RarArchive::isSolid
RarArchive
PHP Manual

RarArchive::isBroken

rar_broken_is

(PECL rar >= 3.0.0)

RarArchive::isBroken -- rar_broken_is — Test whether an archive is broken (incomplete)

Descrição

Object oriented style (method):

public bool RarArchive::isBroken ( void )

Procedural style:

bool rar_broken_is ( RarArchive $rarfile )

This function determines whether an archive is incomplete, i.e., if a volume is missing or a volume is truncated.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

Valor Retornado

Returns TRUE if the archive is broken, FALSE otherwise. This function may also return FALSE if the passed file has already been closed. The only way to tell the two cases apart is to enable exceptions with RarException::setUsingExceptions(); however, this should be unnecessary as a program should not operate on closed files.

Exemplos

Exemplo #1 Object oriented style

<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument is used to omit notice */
$arch = RarArchive::open($file, null, 'retnull');
var_dump($arch->isBroken());
?>

O exemplo acima irá imprimir algo similar a:

bool(true)

Exemplo #2 Procedural style

<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument is used to omit notice */
$arch = rar_open($file, null, 'retnull');
var_dump(rar_broken_is($arch));
?>

Veja Também

  • RarArchive::setAllowBroken() - Whether opening broken archives is allowed

RarArchive::getEntry
RarArchive::isSolid
RarArchive


Check whether the RAR archive is solid

RarArchive::isBroken
RarArchive::open
RarArchive
PHP Manual

RarArchive::isSolid

rar_solid_is

(PECL rar >= 2.0.0)

RarArchive::isSolid -- rar_solid_is — Check whether the RAR archive is solid

Descrição

Object oriented style (method):

public bool RarArchive::isSolid ( void )

Procedural style:

bool rar_solid_is ( RarArchive $rarfile )

Check whether the RAR archive is solid. Individual file extraction is slower on solid archives.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

Valor Retornado

Returns TRUE if the archive is solid, FALSE otherwise.

Exemplos

Exemplo #1 Object oriented style

<?php
$arch1 = RarArchive::open("store_method.rar");
$arch2 = RarArchive::open("solid.rar");
echo "$arch1: " . ($arch1->isSolid()?'yes':'no') ."\n";
echo "$arch2: " . ($arch2->isSolid()?'yes':'no') . "\n";
?>

O exemplo acima irá imprimir algo similar a:

RAR Archive "C:\php_rar\trunk\tests\store_method.rar": no
RAR Archive "C:\php_rar\trunk\tests\solid.rar": yes

Exemplo #2 Procedural style

<?php
$arch1 = rar_open("store_method.rar");
$arch2 = rar_open("solid.rar");
echo "$arch1: " . (rar_solid_is($arch1)?'yes':'no') ."\n";
echo "$arch2: " . (rar_solid_is($arch2)?'yes':'no') . "\n";
?>

RarArchive::isBroken
RarArchive::open
RarArchive


Open RAR archive

RarArchive::isSolid
RarArchive::setAllowBroken
RarArchive
PHP Manual

RarArchive::open

rar_open

(PECL rar >= 2.0.0)

RarArchive::open -- rar_open — Open RAR archive

Descrição

Object oriented style (method):

public static RarArchive RarArchive::open ( string $filename [, string $password = NULL [, callback $volume_callback = NULL ]] )

Procedural style:

RarArchive rar_open ( string $filename [, string $password = NULL [, callback $volume_callback = NULL ]] )

Open specified RAR archive and return RarArchive instance representing it.

Nota:

If opening a multi-volume archive, the path of the first volume should be passed as the first parameter. Otherwise, not all files will be shown. This is by design.

Parâmetros

filename

Path to the Rar archive.

password

A plain password, if needed to decrypt the headers. It will also be used by default if encrypted files are found. Note that the files may have different passwords in respect to the headers and among them.

volume_callback

A function that receives one parameter – the path of the volume that was not found – and returns a string with the correct path for such volume or NULL if such volume does not exist or is not known. The programmer should ensure the passed function doesn't cause loops as this function is called repeatedly if the path returned in a previous call did not correspond to the needed volume. Specifying this parameter omits the notice that would otherwise be emitted whenever a volume is not found; an implementation that only returns NULL can therefore be used to merely omit such notices.

Aviso

Prior to version 2.0.0, this function would not handle relative paths correctly. Use realpath() as a workaround.

Valor Retornado

Returns the requested RarArchive instance or FALSE on failure.

Histórico

Versão | Descrição
3.0.0 | volume_callback was added.

Exemplos

Exemplo #1 Object oriented style

<?php
$rar_arch = RarArchive::open('encrypted_headers.rar', 'samplepassword');
if ($rar_arch === FALSE)
    die("Failed opening file");

$entries = $rar_arch->getEntries();
if ($entries === FALSE)
    die("Failed fetching entries");

echo "Found " . count($entries) . " files.\n";

if (empty($entries))
    die("No valid entries found.");

$stream = reset($entries)->getStream();
if ($stream === FALSE)
    die("Failed opening first file");

$rar_arch->close();

echo "Content of first one follows:\n";
echo stream_get_contents($stream);

fclose($stream);
?>

O exemplo acima irá imprimir algo similar a:

Found 2 files.
Content of first one follows:
Encrypted file 1 contents.

Exemplo #2 Procedural style

<?php
$rar_arch = rar_open('encrypted_headers.rar', 'samplepassword');
if ($rar_arch === FALSE)
    die("Failed opening file");

$entries = rar_list($rar_arch);
if ($entries === FALSE)
    die("Failed fetching entries");

echo "Found " . count($entries) . " files.\n";

if (empty($entries))
    die("No valid entries found.");

$stream = reset($entries)->getStream();
if ($stream === FALSE)
    die("Failed opening first file");

rar_close($rar_arch);

echo "Content of first one follows:\n";
echo stream_get_contents($stream);

fclose($stream);
?>

Exemplo #3 Volume Callback

<?php
/* In this example, there's a volume named multi_broken.part1.rar
 * whose next volume is named multi.part2.rar */
function resolve($vol) {
    if (preg_match('/_broken/', $vol))
        return str_replace('_broken', '', $vol);
    else
        return null;
}
$rar_file1 = rar_open(dirname(__FILE__).'/multi_broken.part1.rar', null, 'resolve');
$entry = $rar_file1->getEntry('file2.txt');
$entry->extract(null, dirname(__FILE__) . "/temp_file2.txt");
?>

Veja Também

  • rar:// wrapper

RarArchive::isSolid
RarArchive::setAllowBroken
RarArchive


Whether opening broken archives is allowed

RarArchive::open
RarArchive::__toString
RarArchive
PHP Manual

RarArchive::setAllowBroken

(PECL rar >= 3.0.0)

RarArchive::setAllowBroken — Whether opening broken archives is allowed

Descrição

Object oriented style (method):

public bool RarArchive::setAllowBroken ( bool $allow_broken )

Procedural style:

bool rar_allow_broken_set ( RarArchive $rarfile , bool $allow_broken )

This method defines whether broken archives can be read or all the operations that attempt to extract the archive entries will fail. Broken archives are archives for which no error is detected when the file is opened but an error occurs when reading the entries.

Parâmetros

rarfile

A RarArchive object, opened with rar_open().

allow_broken

Whether to allow reading broken files (TRUE) or not (FALSE).

Valor Retornado

Returns TRUE or FALSE on failure. It will only fail if the file has already been closed.

Exemplos

Exemplo #1 Object oriented style

<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument omits "volume not found" message */
$a = RarArchive::open($file, null, 'retnull');
$a->setAllowBroken(true);
foreach ($a->getEntries() as $e) {
    echo "$e\n";
}
var_dump(count($a));
?>

O exemplo acima irá imprimir algo similar a:

RarEntry for file "file1.txt" (52b28202)
int(1)

Exemplo #2 Procedural style

<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument omits "volume not found" message */
$a = rar_open($file, null, 'retnull');
rar_allow_broken_set($a, true);
foreach (rar_list($a) as $e) {
    echo "$e\n";
}
var_dump(count($a));
?>

Veja Também

  • RarArchive::isBroken() - Test whether an archive is broken (incomplete)

RarArchive::open
RarArchive::__toString
RarArchive


Get text representation

RarArchive::setAllowBroken
RarEntry
RarArchive
PHP Manual

RarArchive::__toString

(PECL rar >= 2.0.0)

RarArchive::__toString — Get text representation

Descrição

public string RarArchive::__toString ( void )

Provides a string representation for this RarArchive object. It currently shows the full path name of the archive volume that was opened and whether the resource is valid or was already closed through a call to RarArchive::close().

This method may be used only for debugging purposes, as there are no guarantees as to which information the result contains or how it is formatted.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A textual representation of this RarArchive object. The content of this representation is unspecified.

Exemplos

Exemplo #1 RarArchive::__toString() example

<?php
$rar_arch = RarArchive::open('latest_winrar.rar');
echo $rar_arch."\n";
$rar_arch->close();
echo $rar_arch."\n";
?>

O exemplo acima irá imprimir algo similar a:

RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar"
RAR Archive "D:\php_rar\trunk\tests\latest_winrar.rar" (closed)

RarArchive::setAllowBroken
RarEntry
RarArchive


The RarEntry class

Introdução

A RAR entry, representing a directory or a compressed file inside a RAR archive.

Sinopse da classe

final RarEntry {
/* Constants */
const integer RarEntry::HOST_MSDOS = 0 ;
const integer RarEntry::HOST_OS2 = 1 ;
const integer RarEntry::HOST_WIN32 = 2 ;
const integer RarEntry::HOST_UNIX = 3 ;
const integer RarEntry::HOST_MACOS = 4 ;
const integer RarEntry::HOST_BEOS = 5 ;
const integer RarEntry::ATTRIBUTE_WIN_READONLY = 1 ;
const integer RarEntry::ATTRIBUTE_WIN_HIDDEN = 2 ;
const integer RarEntry::ATTRIBUTE_WIN_SYSTEM = 4 ;
const integer RarEntry::ATTRIBUTE_WIN_DIRECTORY = 16 ;
const integer RarEntry::ATTRIBUTE_WIN_ARCHIVE = 32 ;
const integer RarEntry::ATTRIBUTE_WIN_DEVICE = 64 ;
const integer RarEntry::ATTRIBUTE_WIN_NORMAL = 128 ;
const integer RarEntry::ATTRIBUTE_WIN_TEMPORARY = 256 ;
const integer RarEntry::ATTRIBUTE_WIN_SPARSE_FILE = 512 ;
const integer RarEntry::ATTRIBUTE_WIN_REPARSE_POINT = 1024 ;
const integer RarEntry::ATTRIBUTE_WIN_COMPRESSED = 2048 ;
const integer RarEntry::ATTRIBUTE_WIN_OFFLINE = 4096 ;
const integer RarEntry::ATTRIBUTE_WIN_NOT_CONTENT_INDEXED = 8192 ;
const integer RarEntry::ATTRIBUTE_WIN_ENCRYPTED = 16384 ;
const integer RarEntry::ATTRIBUTE_WIN_VIRTUAL = 65536 ;
const integer RarEntry::ATTRIBUTE_UNIX_WORLD_EXECUTE = 1 ;
const integer RarEntry::ATTRIBUTE_UNIX_WORLD_WRITE = 2 ;
const integer RarEntry::ATTRIBUTE_UNIX_WORLD_READ = 4 ;
const integer RarEntry::ATTRIBUTE_UNIX_GROUP_EXECUTE = 8 ;
const integer RarEntry::ATTRIBUTE_UNIX_GROUP_WRITE = 16 ;
const integer RarEntry::ATTRIBUTE_UNIX_GROUP_READ = 32 ;
const integer RarEntry::ATTRIBUTE_UNIX_OWNER_EXECUTE = 64 ;
const integer RarEntry::ATTRIBUTE_UNIX_OWNER_WRITE = 128 ;
const integer RarEntry::ATTRIBUTE_UNIX_OWNER_READ = 256 ;
const integer RarEntry::ATTRIBUTE_UNIX_STICKY = 512 ;
const integer RarEntry::ATTRIBUTE_UNIX_SETGID = 1024 ;
const integer RarEntry::ATTRIBUTE_UNIX_SETUID = 2048 ;
const integer RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET = 61440 ;
const integer RarEntry::ATTRIBUTE_UNIX_FIFO = 4096 ;
const integer RarEntry::ATTRIBUTE_UNIX_CHAR_DEV = 8192 ;
const integer RarEntry::ATTRIBUTE_UNIX_DIRECTORY = 16384 ;
const integer RarEntry::ATTRIBUTE_UNIX_BLOCK_DEV = 24576 ;
const integer RarEntry::ATTRIBUTE_UNIX_REGULAR_FILE = 32768 ;
const integer RarEntry::ATTRIBUTE_UNIX_SYM_LINK = 40960 ;
const integer RarEntry::ATTRIBUTE_UNIX_SOCKET = 49152 ;
/* Methods */
public bool extract ( string $dir [, string $filepath = '' [, string $password = NULL [, bool $extended_data = false ]]] )
public int getAttr ( void )
public string getCrc ( void )
public string getFileTime ( void )
public int getHostOs ( void )
public int getMethod ( void )
public string getName ( void )
public int getPackedSize ( void )
public resource getStream ([ string $password ] )
public int getUnpackedSize ( void )
public int getVersion ( void )
public bool isDirectory ( void )
public bool isEncrypted ( void )
public string __toString ( void )
}

Constantes pré-definidas

RarEntry Node Types

RarEntry::HOST_MSDOS

If the return value of RarEntry::getHostOs() equals this constant, MS-DOS was used to add this entry. Use instead of RAR_HOST_MSDOS.

RarEntry::HOST_OS2

If the return value of RarEntry::getHostOs() equals this constant, OS/2 was used to add this entry. Intended to replace RAR_HOST_OS2.

RarEntry::HOST_WIN32

If the return value of RarEntry::getHostOs() equals this constant, Microsoft Windows was used to add this entry. Intended to replace RAR_HOST_WIN32.

RarEntry::HOST_UNIX

If the return value of RarEntry::getHostOs() equals this constant, an unspecified UNIX OS was used to add this entry. Intended to replace RAR_HOST_UNIX.

RarEntry::HOST_MACOS

If the return value of RarEntry::getHostOs() equals this constant, Mac OS was used to add this entry.

RarEntry::HOST_BEOS

If the return value of RarEntry::getHostOs() equals this constant, BeOS was used to add this entry. Intended to replace RAR_HOST_BEOS.

RarEntry::ATTRIBUTE_WIN_READONLY

Bit that represents a Windows entry with a read-only attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_HIDDEN

Bit that represents a Windows entry with a hidden attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_SYSTEM

Bit that represents a Windows entry with a system attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_DIRECTORY

Bit that represents a Windows entry with a directory attribute (entry is a directory). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows. See also RarEntry::isDirectory(), which also works with entries that were not added in WinRAR.

RarEntry::ATTRIBUTE_WIN_ARCHIVE

Bit that represents a Windows entry with an archive attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_DEVICE

Bit that represents a Windows entry with a device attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_NORMAL

Bit that represents a Windows entry with a normal file attribute (entry is NOT a directory). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows. See also RarEntry::isDirectory(), which also works with entries that were not added in WinRAR.

RarEntry::ATTRIBUTE_WIN_TEMPORARY

Bit that represents a Windows entry with a temporary attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_SPARSE_FILE

Bit that represents a Windows entry with a sparse file attribute (file is an NTFS sparse file). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_REPARSE_POINT

Bit that represents a Windows entry with a reparse point attribute (entry is an NTFS reparse point, e.g. a directory junction or a mount file system). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_COMPRESSED

Bit that represents a Windows entry with a compressed attribute (NTFS only). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_OFFLINE

Bit that represents a Windows entry with an offline attribute (entry is offline and not accessible). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_NOT_CONTENT_INDEXED

Bit that represents a Windows entry with a not content indexed attribute (entry is to be indexed). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_ENCRYPTED

Bit that represents a Windows entry with an encrypted attribute (NTFS only). To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_WIN_VIRTUAL

Bit that represents a Windows entry with a virtual attribute. To be used with RarEntry::getAttr() on entries whose host OS is Microsoft Windows.

RarEntry::ATTRIBUTE_UNIX_WORLD_EXECUTE

Bit that represents a UNIX entry that is world executable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_WORLD_WRITE

Bit that represents a UNIX entry that is world writable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_WORLD_READ

Bit that represents a UNIX entry that is world readable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_GROUP_EXECUTE

Bit that represents a UNIX entry that is group executable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_GROUP_WRITE

Bit that represents a UNIX entry that is group writable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_GROUP_READ

Bit that represents a UNIX entry that is group readable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_OWNER_EXECUTE

Bit that represents a UNIX entry that is owner executable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_OWNER_WRITE

Bit that represents a UNIX entry that is owner writable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_OWNER_READ

Bit that represents a UNIX entry that is owner readable. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_STICKY

Bit that represents the UNIX sticky bit. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_SETGID

Bit that represents the UNIX setgid attribute. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_SETUID

Bit that represents the UNIX setuid attribute. To be used with RarEntry::getAttr() on entries whose host OS is UNIX.

RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET

Mask to isolate the last four bits (nibble) of UNIX attributes
       (_S_IFMT, the type of file mask). To be used with
        RarEntry::getAttr() on entries whose host OS is UNIX and with the
       constants RarEntry::ATTRIBUTE_UNIX_FIFO,
       RarEntry::ATTRIBUTE_UNIX_CHAR_DEV,
       RarEntry::ATTRIBUTE_UNIX_DIRECTORY,
       RarEntry::ATTRIBUTE_UNIX_BLOCK_DEV,
       RarEntry::ATTRIBUTE_UNIX_REGULAR_FILE,
       RarEntry::ATTRIBUTE_UNIX_SYM_LINK and
       RarEntry::ATTRIBUTE_UNIX_SOCKET.

RarEntry::ATTRIBUTE_UNIX_FIFO

Unix FIFOs will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET.

RarEntry::ATTRIBUTE_UNIX_CHAR_DEV

Unix character devices will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET.

RarEntry::ATTRIBUTE_UNIX_DIRECTORY

Unix directories will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET. See also RarEntry::isDirectory(), which also works with entries that were added in other operating systems.

RarEntry::ATTRIBUTE_UNIX_BLOCK_DEV

Unix block devices will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET.

RarEntry::ATTRIBUTE_UNIX_REGULAR_FILE

Unix regular files (not directories) will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET. See also RarEntry::isDirectory(), which also works with entries that were added in other operating systems.

RarEntry::ATTRIBUTE_UNIX_SYM_LINK

Unix symbolic links will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET.

RarEntry::ATTRIBUTE_UNIX_SOCKET

Unix sockets will have attributes whose last four bits have this value. To be used with RarEntry::getAttr() on entries whose host OS is UNIX and with the constant RarEntry::ATTRIBUTE_UNIX_FINAL_QUARTET.

Índice

  • RarEntry::extract — Extract entry from the archive
  • RarEntry::getAttr — Get attributes of the entry
  • RarEntry::getCrc — Get CRC of the entry
  • RarEntry::getFileTime — Get entry last modification time
  • RarEntry::getHostOs — Get entry host OS
  • RarEntry::getMethod — Get pack method of the entry
  • RarEntry::getName — Get name of the entry
  • RarEntry::getPackedSize — Get packed size of the entry
  • RarEntry::getStream — Get file handler for entry
  • RarEntry::getUnpackedSize — Get unpacked size of the entry
  • RarEntry::getVersion — Get minimum version of RAR program required to unpack the entry
  • RarEntry::isDirectory — Test whether an entry represents a directory
  • RarEntry::isEncrypted — Test whether an entry is encrypted
  • RarEntry::__toString — Get text representation of entry
RarArchive::__toString
RarEntry::extract
Rar


Extract entry from the archive

RarEntry
RarEntry::getAttr
RarEntry
PHP Manual

RarEntry::extract

(PECL rar >= 0.1)

RarEntry::extract — Extract entry from the archive

Descrição

public bool RarEntry::extract ( string $dir [, string $filepath = '' [, string $password = NULL [, bool $extended_data = false ]]] )

RarEntry::extract() extracts the entry's data. It will create new file in the specified dir with the name identical to the entry's name, unless the second argument is specified. See below for more information.

Parâmetros

dir

Path to the directory where files should be extracted. This parameter is considered if and only if filepath is not. If both parameters are empty an extraction to the current directory will be attempted.

filepath

Path (relative or absolute) containing the directory and filename of the extracted file. This parameter overrides both the parameter dir and the original file name.

password

The password used to encrypt this entry. If the entry is not encrypted, this value will not be used and can be omitted. If this parameter is omitted and the entry is encrypted, the password given to rar_open(), if any, will be used. If a wrong password is given, either explicitly or implicitly via rar_open(), CRC checking will fail and this method will fail and return FALSE. If no password is given and one is required, this method will fail and return FALSE. You can check whether an entry is encrypted with RarEntry::isEncrypted().

extended_data

If TRUE, extended information such as NTFS ACLs and Unix owner information will be set in the extract files, as long as it's present in the archive.

Aviso

Prior to version 2.0.0, this function would not handle relative paths correctly. Use realpath() as a workaround.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
3.0.0 | extended_data was added.
3.0.0 | Support for RAR archives with repeated entry names is no longer defective.

Exemplos

Exemplo #1 RarEntry::extract() example

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

$entry->extract('/dir/to'); // create /dir/to/Dir/file.txt
$entry->extract(false, '/dir/to/new_name.txt'); // create /dir/to/new_name.txt

?>

Exemplo #2 How to extract all files in archive:

<?php

/* example by Erik Jenssen aka erix */

$filename = "foobar.rar";
$filepath = "/home/foo/bar/";

$rar_file = rar_open($filepath.$filename);
$list = rar_list($rar_file);
foreach($list as $file) {
    $entry = rar_entry_get($rar_file, $file);
    $entry->extract("."); // extract to the current dir
}
rar_close($rar_file);

?>

Veja Também

  • RarEntry::getStream() - Get file handler for entry
  • rar:// wrapper

RarEntry
RarEntry::getAttr
RarEntry


Get attributes of the entry

RarEntry::extract
RarEntry::getCrc
RarEntry
PHP Manual

RarEntry::getAttr

(PECL rar >= 0.1)

RarEntry::getAttr — Get attributes of the entry

Descrição

public int RarEntry::getAttr ( void )

Returns the OS-dependent attributes of the archive entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the attributes or FALSE on error.

Exemplos

Exemplo #1 RarEntry::getAttr() example

<?php

$rar_file = rar_open('example.rar') or die("Can't open Rar archive");

$entry = rar_entry_get($rar_file, 'dir/in/the/archive') or die("Can't find such entry");

$host_os = $entry->getHostOs();
$attr = $entry->getAttr();

switch($host_os) {
    case RAR_HOST_MSDOS:
    case RAR_HOST_OS2:
    case RAR_HOST_WIN32:
    case RAR_HOST_MACOS:
        printf("%c%c%c%c%c%c\n",
                ($attr & 0x08) ? 'V' : '.',
                ($attr & 0x10) ? 'D' : '.',
                ($attr & 0x01) ? 'R' : '.',
                ($attr & 0x02) ? 'H' : '.',
                ($attr & 0x04) ? 'S' : '.',
                ($attr & 0x20) ? 'A' : '.');
        break;
    case RAR_HOST_UNIX:
    case RAR_HOST_BEOS:
        switch ($attr & 0xF000)
        {
            case 0x4000:
                printf("d");
                break;
            case 0xA000:
                printf("l");
                break;
            default:
                printf("-");
                break;
        }
        printf("%c%c%c%c%c%c%c%c%c\n",
                ($attr & 0x0100) ? 'r' : '-',
                ($attr & 0x0080) ? 'w' : '-',
                ($attr & 0x0040) ? (($attr & 0x0800) ? 's':'x'):(($attr & 0x0800) ? 'S':'-'),
                ($attr & 0x0020) ? 'r' : '-',
                ($attr & 0x0010) ? 'w' : '-',
                ($attr & 0x0008) ? (($attr & 0x0400) ? 's':'x'):(($attr & 0x0400) ? 'S':'-'),
                ($attr & 0x0004) ? 'r' : '-',
                ($attr & 0x0002) ? 'w' : '-',
                ($attr & 0x0001) ? 'x' : '-');
        break;
}

rar_close($rar_file);

?>

Veja Também

  • RarEntry::getHostOs() - Get entry host OS
  • The constants in RarEntry

RarEntry::extract
RarEntry::getCrc
RarEntry


Get CRC of the entry

RarEntry::getAttr
RarEntry::getFileTime
RarEntry
PHP Manual

RarEntry::getCrc

(PECL rar >= 0.1)

RarEntry::getCrc — Get CRC of the entry

Descrição

public string RarEntry::getCrc ( void )

Returns an hexadecimal string representation of the CRC of the archive entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the CRC of the archive entry or FALSE on error.

Histórico

Versão | Descrição
2.0.0 | This method now returns correct values for multiple volume archives.

RarEntry::getAttr
RarEntry::getFileTime
RarEntry


Get entry last modification time

RarEntry::getCrc
RarEntry::getHostOs
RarEntry
PHP Manual

RarEntry::getFileTime

(PECL rar >= 0.1)

RarEntry::getFileTime — Get entry last modification time

Descrição

public string RarEntry::getFileTime ( void )

Gets entry last modification time.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns entry last modification time as string in format YYYY-MM-DD HH:II:SS, or FALSE on error.

RarEntry::getCrc
RarEntry::getHostOs
RarEntry


Get entry host OS

RarEntry::getFileTime
RarEntry::getMethod
RarEntry
PHP Manual

RarEntry::getHostOs

(PECL rar >= 0.1)

RarEntry::getHostOs — Get entry host OS

Descrição

public int RarEntry::getHostOs ( void )

Returns the code of the host OS of the archive entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the code of the host OS, or FALSE on error.

Exemplos

Exemplo #1 RarEntry::getHostOs() example (version >= 2.0.0)

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

switch ($entry->getHostOs()) {
    case RarEntry::HOST_MSDOS:
        echo "MS-DOS\n";
        break;
    case RarEntry::HOST_OS2:
        echo "OS2\n";
        break;
    case RarEntry::HOST_WIN32:
        echo "Win32\n";
        break;
    case RarEntry::HOST_MACOS:
        echo "MacOS\n";
        break;
    case RarEntry::HOST_UNIX:
        echo "Unix/Linux\n";
        break;
    case RarEntry::HOST_BEOS:
        echo "BeOS\n";
        break;
}

?>

Exemplo #2 RarEntry::getHostOs() example (version <= 1.0.0)

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

switch ($entry->getHostOs()) {
    case RAR_HOST_MSDOS:
        echo "MS-DOS\n";
        break;
    case RAR_HOST_OS2:
        echo "OS2\n";
        break;
    case RAR_HOST_WIN32:
        echo "Win32\n";
        break;
    case RAR_HOST_MACOS:
        echo "MacOS\n";
        break;
    case RAR_HOST_UNIX:
        echo "Unix/Linux\n";
        break;
    case RAR_HOST_BEOS:
        echo "BeOS\n";
        break;
}

?>

Veja Também

  • RarEntry::extract() - Extract entry from the archive

RarEntry::getFileTime
RarEntry::getMethod
RarEntry


Get pack method of the entry

RarEntry::getHostOs
RarEntry::getName
RarEntry
PHP Manual

RarEntry::getMethod

(PECL rar >= 0.1)

RarEntry::getMethod — Get pack method of the entry

Descrição

public int RarEntry::getMethod ( void )

RarEntry::getMethod() returns number of the method used when adding current archive entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the method number or FALSE on error.

Exemplos

Exemplo #1 RarEntry::getMethod() example

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

echo "Method number: " . $entry->getMethod();

?>

RarEntry::getHostOs
RarEntry::getName
RarEntry


Get name of the entry

RarEntry::getMethod
RarEntry::getPackedSize
RarEntry
PHP Manual

RarEntry::getName

(PECL rar >= 0.1)

RarEntry::getName — Get name of the entry

Descrição

public string RarEntry::getName ( void )

Returns the name (with path) of the archive entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the entry name as a string, or FALSE on error.

Histórico

Versão | Descrição
2.0.0 | As of version 2.0.0, the returned string is encoded in Unicode/UTF-8.

Exemplos

Exemplo #1 RarEntry::getName() example

<?php

//this example is safe even in pages not encoded in UTF-8
//for those encoded in UTF-8, the call to mb_convert_encoding is unnecessary

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

echo "Entry name: " . mb_convert_encoding(
    htmlentities(
        $entry->getName(),
        ENT_COMPAT,
        "UTF-8"
    ),
    "HTML-ENTITIES",
    "UTF-8"
);

?>

RarEntry::getMethod
RarEntry::getPackedSize
RarEntry


Get packed size of the entry

RarEntry::getName
RarEntry::getStream
RarEntry
PHP Manual

RarEntry::getPackedSize

(PECL rar >= 0.1)

RarEntry::getPackedSize — Get packed size of the entry

Descrição

public int RarEntry::getPackedSize ( void )

Get packed size of the archive entry.

Nota:

Note that on platforms with 32-bit longs (that includes Windows x64), the maximum size returned is capped at 2 GiB. Check the constant PHP_INT_MAX.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the packed size, or FALSE on error.

Histórico

Versão | Descrição
2.0.0 | This method now returns correct values of packed sizes bigger than 2 GiB on platforms with 64-bit integers and never returns negative values on other platforms.

Exemplos

Exemplo #1 RarEntry::getPackedSize() example

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

echo "Packed size of " . $entry->getName() . " = " . $entry->getPackedSize() . " bytes";

?>

RarEntry::getName
RarEntry::getStream
RarEntry


Get file handler for entry

RarEntry::getPackedSize
RarEntry::getUnpackedSize
RarEntry
PHP Manual

RarEntry::getStream

(PECL rar >= 2.0.0)

RarEntry::getStream — Get file handler for entry

Descrição

public resource RarEntry::getStream ([ string $password ] )

Returns a file handler that supports read operations. This handler provides on-the-fly decompression for this entry.

The handler is not invalidated by calling rar_close().

Aviso

The resulting stream has no integrity verification. In particular, file corruption and decryption with a wrong a key will not be detected. It is the programmer's responsability to use the entry's CRC to check for integrity, if he so wishes.

Parâmetros

password

The password used to encrypt this entry. If the entry is not encrypted, this value will not be used and can be omitted. If this parameter is omitted and the entry is encrypted, the password given to rar_open(), if any, will be used. If a wrong password is given, either explicitly or implicitly via rar_open(), this method's resulting stream will produce wrong output. If no password is given and one is required, this method will fail and return FALSE. You can check whether an entry is encrypted with RarEntry::isEncrypted().

Valor Retornado

The file handler or FALSE on failure.

Histórico

Versão | Descrição
3.0.0 | Support for RAR archives with repeated entry names is no longer defective.

Exemplos

Exemplo #1 RarEntry::getStream() example

<?php

$rar_file = rar_open('example.rar');
if ($rar_file === false)
    die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt');
if ($entry === false)
    die("Failed to find such entry");

$stream = $entry->getStream();
if ($stream === false)
    die("Failed to obtain stream.");

rar_close($rar_file); //stream is independent from file

while (!feof($stream)) {
    $buff = fread($stream, 8192);
    if ($buff !== false)
        echo $buff;
    else
        break; //fread error
}

fclose($stream);

?>

Veja Também

  • RarEntry::extract() - Extract entry from the archive
  • rar:// wrapper

RarEntry::getPackedSize
RarEntry::getUnpackedSize
RarEntry


Get unpacked size of the entry

RarEntry::getStream
RarEntry::getVersion
RarEntry
PHP Manual

RarEntry::getUnpackedSize

(PECL rar >= 0.1)

RarEntry::getUnpackedSize — Get unpacked size of the entry

Descrição

public int RarEntry::getUnpackedSize ( void )

Get unpacked size of the archive entry.

Nota:

Note that on platforms with 32-bit longs (that includes Windows x64), the maximum size returned is capped at 2 GiB. Check the constant PHP_INT_MAX.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the unpacked size, or FALSE on error.

Histórico

Versão | Descrição
2.0.0 | This method now returns correct values of unpacked sizes bigger than 2 GiB on platforms with 64-bit integers and never returns negative values on other platforms.

Valor Retornado

Exemplo #1 RarEntry::getUnpackedSize() example

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

echo "Unpacked size of " . $entry->getName() . " = " . $entry->getPackedSize() . " bytes";

?>

RarEntry::getStream
RarEntry::getVersion
RarEntry


Get minimum version of RAR program required to unpack the entry

RarEntry::getUnpackedSize
RarEntry::isDirectory
RarEntry
PHP Manual

RarEntry::getVersion

(PECL rar >= 0.1)

RarEntry::getVersion — Get minimum version of RAR program required to unpack the entry

Descrição

public int RarEntry::getVersion ( void )

Returns minimum version of RAR program (e.g. WinRAR) required to unpack the entry. It is encoded as 10 * major version + minor version.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the version or FALSE on error.

Exemplos

Exemplo #1 RarEntry::getVersion() example

<?php

$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");

$entry = rar_entry_get($rar_file, 'Dir/file.txt') or die("Failed to find such entry");

echo "Rar version required for unpacking: " . $entry->getVersion();

?>

RarEntry::getUnpackedSize
RarEntry::isDirectory
RarEntry


Test whether an entry represents a directory

RarEntry::getVersion
RarEntry::isEncrypted
RarEntry
PHP Manual

RarEntry::isDirectory

(PECL rar >= 2.0.0)

RarEntry::isDirectory — Test whether an entry represents a directory

Descrição

public bool RarEntry::isDirectory ( void )

Tests whether the current entry is a directory.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if this entry is a directory and FALSE otherwise.

Notas

This function is only available starting with version 2.0.0, but one can also test whether an entry is a directory by checking the entry attributes, like this (only works for files compressed in RAR for Windows or Unix):

<?php
//...
//Open file, get entry and store in variable $e...
//...

$isDirectory = (bool) ((($e->getHostOs() == RAR_HOST_WIN32) && ($e->getAttr() & 0x10)) ||
    (($e->getHostOs() == RAR_HOST_UNIX) && (($e->getAttr() & 0xf000) == 0x4000)));
?>

RarEntry::getVersion
RarEntry::isEncrypted
RarEntry


Test whether an entry is encrypted

RarEntry::isDirectory
RarEntry::__toString
RarEntry
PHP Manual

RarEntry::isEncrypted

(PECL rar >= 2.0.0)

RarEntry::isEncrypted — Test whether an entry is encrypted

Descrição

public bool RarEntry::isEncrypted ( void )

Tests whether the current entry contents are encrypted.

Nota:

The password used may differ between files inside the same RAR archive.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the current entry is encrypted and FALSE otherwise.

RarEntry::isDirectory
RarEntry::__toString
RarEntry


Get text representation of entry

RarEntry::isEncrypted
RarException
RarEntry
PHP Manual

RarEntry::__toString

(PECL rar >= 2.0.0)

RarEntry::__toString — Get text representation of entry

Descrição

public string RarEntry::__toString ( void )

RarEntry::__toString() returns a textual representation for this entry. It includes whether the entry is a file or a directory (symbolic links and other special objects will be treated as files), the UTF-8 name of the entry and its CRC. The form and content of this representation may be changed in the future, so they cannot be relied upon.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A textual representation for the entry.

RarEntry::isEncrypted
RarException
RarEntry


The RarException class

Introdução

This class serves two purposes: it is the type of the exceptions thrown by the RAR extension functions and methods and it allows, through static methods to query and define the error behaviour of the extension, i.e., whether exceptions are thrown or only warnings are emitted.

The following error codes are used:

  • -1 - error outside UnRAR library
  • 11 - insufficient memory
  • 12 - bad data
  • 13 - bad archive
  • 14 - unknown format
  • 15 - file open error
  • 16 - file create error
  • 17 - file close error
  • 18 - read error
  • 19 - write error
  • 20 - buffer too small
  • 21 - unkown RAR error
  • 22 - password required but not given

Sinopse da classe

final RarException extends Exception {
/* Methods */
public static bool isUsingExceptions ( void )
public static void setUsingExceptions ( bool $using_exceptions )
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Índice

  • RarException::isUsingExceptions — Check whether error handling with exceptions is in use
  • RarException::setUsingExceptions — Activate and deactivate error handling with exceptions
RarEntry::__toString
RarException::isUsingExceptions
Rar


Check whether error handling with exceptions is in use

RarException
RarException::setUsingExceptions
RarException
PHP Manual

RarException::isUsingExceptions

(PECL rar >= 2.0.0)

RarException::isUsingExceptions — Check whether error handling with exceptions is in use

Descrição

public static bool RarException::isUsingExceptions ( void )

Checks whether the RAR functions will emit warnings and return error values or whether they will throw exceptions in most of the circumstances (does not include some programmatic errors such as passing the wrong type of arguments).

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if exceptions are being used, FALSE otherwise.

Exemplos

Exemplo #1 RarException::isUsingExceptions() example

<?php
//The default is not to use exceptions
var_dump(RarException::isUsingExceptions());
?>

O exemplo acima irá imprimir algo similar a:

bool(false)

Veja Também

  • RarException::setUsingExceptions() - Activate and deactivate error handling with exceptions

RarException
RarException::setUsingExceptions
RarException


Activate and deactivate error handling with exceptions

RarException::isUsingExceptions
Zip
RarException
PHP Manual

RarException::setUsingExceptions

(PECL rar >= 2.0.0)

RarException::setUsingExceptions — Activate and deactivate error handling with exceptions

Descrição

public static void RarException::setUsingExceptions ( bool $using_exceptions )

If and only if the argument is TRUE, then, instead of emitting warnings and returning a special value indicating error when the UnRAR library encounters an error, an exception of type RarException will be thrown.

Exceptions will also be thrown for the following errors, which occur outside the library (their error code will be -1):

  • attempting some operations on a closed RarArchive object or a RarEntry object relative to the first;
  • attempting to get an entry that does not exist with RarArchive::getEntry().

Parâmetros

using_exceptions

Should be TRUE to activate exception throwing, FALSE to deactivate (the default).

Exemplos

Exemplo #1 RarException::setUsingExceptions() example

<?php
var_dump(RarException::isUsingExceptions());
$arch = RarArchive::open("does_not_exist.rar");
var_dump($arch);

RarException::setUsingExceptions(true);
var_dump(RarException::isUsingExceptions());
$arch = RarArchive::open("does_not_exist.rar");
var_dump($arch); //not reached
?>

O exemplo acima irá imprimir algo similar a:

bool(false)

Warning: RarArchive::open(): Failed to open does_not_exist.rar: ERAR_EOPEN (file open error) in C:\php_rar\trunk\tests\test.php on line 3
bool(false)
bool(true)

Fatal error: Uncaught exception 'RarException' with message 'unRAR internal error: Failed to open does_not_exist.rar: ERAR_EOPEN (file open error)' in C:\php_rar\trunk\tests\test.php:8
Stack trace:
#0 C:\php_rar\trunk\tests\test.php(8): RarArchive::open('does_not_exist....')
#1 {main}
  thrown in C:\php_rar\trunk\tests\test.php on line 8

Veja Também

  • RarException::isUsingExceptions() - Check whether error handling with exceptions is in use

RarException::isUsingExceptions
Zip
RarException


Zip

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para Zip
    • zip_close — Fecha um arquivo ZIP
    • zip_entry_close — Fecha o arquivo que está aberto
    • zip_entry_compressedsize — Recupera o tamanho compactado do arquivo que está dentro do arquivo ZIP
    • zip_entry_compressionmethod — Recupera qual o método de compressão foi utilizado no arquivo
    • zip_entry_filesize — Retorna o tamanho de um diretório de entrada
    • zip_entry_name — Retorna o nome do arquivo
    • zip_entry_open — Abre um arquivo do arquivo ZIP
    • zip_entry_read — Lê de um arquivo aberto
    • zip_open — Abre um arquivo ZIPado
    • zip_read — Lê a próxima entrada em um arquivo ZIPado
RarException::setUsingExceptions
Introdução
Extensões de Compressão e Arquivo


Introdução

Esta extenção habilita você a transparentemente ler ou escrever arquivos compactados ZIP e os arquivos do mesmo.

Zip
Instalação/Configuração
Zip


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Zip


Dependências

PHP 4

A versão embutida do PHP 4 requer » ZZIPlib, criada por Guido Draheim, versão 0.10.6 ou superior

PHP 5.2.0 ou superior

Esta extenção usa funções da » zlib criada por Jean-loup Gailly e Mark Adler.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

PHP 4

Nota:

O suporte a Zip antes do PHP 4.1.0 é experimental.

Aviso

Por causa da extensão zip no PHP 4 zip não ser mantida nós recomendamos que a extensão PECL seja usada.

Sistemas Linux

Para usar estas funções você precisa compilar o PHP com suporte a zip usando a opção de configuração --with-zip[=DIR] , onde [DIR] é o prefixo da biblioteca instalada » ZZIPlib.

Windows

Usuários Windows precisam habilitar php_zip.dll no php.ini para usar estas funções.

PHP 5.2.0 e superior

Sistemas Linux

Para usar estas funções você precisa compilar o PHP com suporte a zip usando a opção de configuração --enable-zip .

Windows

Usuários Windows precisam habilitar php_zip.dll no php.ini para usar estas funções.

Instalação via PECL

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/zip.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

No PHP esta DLL reside no diretório extensions/ junto aos binários do PHP para Windows.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Há dois tipos de tipos resource usada neste módulo. O primeiro é um Zip directory para arquivo Zip, o segundo Zip Entry para entradas de arquivos.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

ZipArchive usa constantes de classes. Há três tipos de constantes, Flags (FL_), erros (ER_) ou modo (sem prefixo).

ZIPARCHIVE::CREATE (integer)
Cria o arquivo se ele não existir.
ZIPARCHIVE::OVERWRITE (integer)
Sempre inicia um novo arquivo, este modo sobreescreverá o arquivo se ele já existir.
ZIPARCHIVE::EXCL (integer)
Emite erro se o arquivo já existir.
ZIPARCHIVE::CHECKCONS (integer)
Executa uma adicional verificação de consistência no arquivo, e emite erro se ele falhar.
ZIPARCHIVE::FL_NOCASE (integer)
Ignora maiúsculo e minúsculo no nome.
ZIPARCHIVE::FL_NODIR (integer)
Ignora componentes de diretório.
ZIPARCHIVE::FL_COMPRESSED (integer)
Lê a informação comprimida.
ZIPARCHIVE::FL_UNCHANGED (integer)
Usa os dados originais, ignorando mudanças.
ZIPARCHIVE::CM_DEFAULT (integer)
better of deflate or store.
ZIPARCHIVE::CM_STORE (integer)
Armazenado (não compresso).
ZIPARCHIVE::CM_SHRINK (integer)
shrunk
ZIPARCHIVE::CM_REDUCE_1 (integer)
reduced with factor 1
ZIPARCHIVE::CM_REDUCE_2 (integer)
reduced with factor 2
ZIPARCHIVE::CM_REDUCE_3 (integer)
reduced with factor 3
ZIPARCHIVE::CM_REDUCE_4 (integer)
reduced with factor 4
ZIPARCHIVE::CM_IMPLODE (integer)
imploded
ZIPARCHIVE::CM_DEFLATE (integer)
deflated
ZIPARCHIVE::CM_DEFLATE64 (integer)
deflate64
ZIPARCHIVE::CM_PKWARE_IMPLODE (integer)
PKWARE imploding
ZIPARCHIVE::CM_BZIP2 (integer)
BZIP2 algorithm
ZIPARCHIVE::ER_OK (integer)
Sem erro.
ZIPARCHIVE::ER_MULTIDISK (integer)
Arquivos Multi-disk zip não suportados.
ZIPARCHIVE::ER_RENAME (integer)
Renomeia arquivo temporário falhado.
ZIPARCHIVE::ER_CLOSE (integer)
Fecha arquivo zip falhado
ZIPARCHIVE::ER_SEEK (integer)
Procura o erro
ZIPARCHIVE::ER_READ (integer)
Lê o erro
ZIPARCHIVE::ER_WRITE (integer)
Escreve o erro
ZIPARCHIVE::ER_CRC (integer)
CRC error
ZIPARCHIVE::ER_ZIPCLOSED (integer)
Containing zip archive was closed
ZIPARCHIVE::ER_NOENT (integer)
Arquivo não encontrado.
ZIPARCHIVE::ER_EXISTS (integer)
Arquivo já existente.
ZIPARCHIVE::ER_OPEN (integer)
Não foi possível abrir o arquivo.
ZIPARCHIVE::ER_TMPOPEN (integer)
Falha ao criar arquivo temporário.
ZIPARCHIVE::ER_ZLIB (integer)
Erro da Zlib
ZIPARCHIVE::ER_MEMORY (integer)
Falha na alocação de memória.
ZIPARCHIVE::ER_CHANGED (string)
Entrada foi modificada.
ZIPARCHIVE::ER_COMPNOTSUPP (integer)
Método de compressão não suportado.
ZIPARCHIVE::ER_EOF (integer)
Prematuro EOF
ZIPARCHIVE::ER_INVAL (integer)
Argumento inválido.
ZIPARCHIVE::ER_NOZIP (integer)
Não é um arquivo zip.
ZIPARCHIVE::ER_INTERNAL (integer)
Erro interno.
ZIPARCHIVE::ER_INCONS (integer)
Arquivo Zip inconsistente.
ZIPARCHIVE::ER_REMOVE (integer)
Não foi possível remove o arquivo.
ZIPARCHIVE::ER_DELETED (integer)
Entrada foi deletada.
Tipos Resource
Exemplos
Zip


Exemplos

Exemplo #1 Criando um arquivo Zip

<?php

$zip = new ZipArchive();
$filename = "./test112.zip";

if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
    exit("cannot open <$filename>\n");
}

$zip->addFromString("testfilephp.txt" . time(), "#1 This is a test string added as testfilephp.txt.\n");
$zip->addFromString("testfilephp2.txt" . time(), "#2 This is a test string added as testfilephp2.txt.\n");
$zip->addFile($thisdir . "/too.php","/testfromfile.php");
echo "numfiles: " . $zip->numFiles . "\n";
echo "status:" . $zip->status . "\n";
$zip->close();
?>

Exemplo #2 Exibindo detalhes dos arquivos e listando-os

<?php
$za = new ZipArchive();

$za->open('test_with_comment.zip');
print_r($za);
var_dump($za);
echo "numFiles: " . $za->numFiles . "\n";
echo "status: " . $za->status  . "\n";
echo "statusSys: " . $za->statusSys . "\n";
echo "filename: " . $za->filename . "\n";
echo "comment: " . $za->comment . "\n";

for ($i=0; $i<$za->numFiles;$i++) {
    echo "index: $i\n";
    print_r($za->statIndex($i));
}
echo "numFile:" . $za->numFiles . "\n";
?>

Exemplo #3 Zip stream wrapper, lendo um OpenOffice meta info

<?php
$reader = new XMLReader();

$reader->open('zip://' . dirname(__FILE__) . '/test.odt#meta.xml');
$odt_meta = array();
while ($reader->read()) {
    if ($reader->nodeType == XMLREADER::ELEMENT) {
        $elm = $reader->name;
    } else {
        if ($reader->nodeType == XMLREADER::END_ELEMENT && $reader->name == 'office:meta') {
            break;
        }
        if (!trim($reader->value)) {
            continue;
        }
        $odt_meta[$elm] = $reader->value;
    }
}
print_r($odt_meta);
?>

Este exemplo usa a velha API (PHP 4), ela abre um arquivo ZIP, ler cada arquivo do arquivo e imprime o conteúdo deles. O arquivo test2.zip usado neste exemplo é um arquivo de teste do fonte da distruição ZZIPlib.

Exemplo #4 Exemplo de uso

<?php

$zip = zip_open("/tmp/test2.zip");

if ($zip) {
    while ($zip_entry = zip_read($zip)) {
        echo "Name:               " . zip_entry_name($zip_entry) . "\n";
        echo "Actual Filesize:    " . zip_entry_filesize($zip_entry) . "\n";
        echo "Compressed Size:    " . zip_entry_compressedsize($zip_entry) . "\n";
        echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "\n";

        if (zip_entry_open($zip, $zip_entry, "r")) {
            echo "File Contents:\n";
            $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
            echo "$buf\n";

            zip_entry_close($zip_entry);
        }
        echo "\n";

    }

    zip_close($zip);

}
?>
Constantes pré-definidas
Funções para Zip
Zip


Funções para Zip

Índice

  • zip_close — Fecha um arquivo ZIP
  • zip_entry_close — Fecha o arquivo que está aberto
  • zip_entry_compressedsize — Recupera o tamanho compactado do arquivo que está dentro do arquivo ZIP
  • zip_entry_compressionmethod — Recupera qual o método de compressão foi utilizado no arquivo
  • zip_entry_filesize — Retorna o tamanho de um diretório de entrada
  • zip_entry_name — Retorna o nome do arquivo
  • zip_entry_open — Abre um arquivo do arquivo ZIP
  • zip_entry_read — Lê de um arquivo aberto
  • zip_open — Abre um arquivo ZIPado
  • zip_read — Lê a próxima entrada em um arquivo ZIPado
Exemplos
zip_close
Zip


Fecha um arquivo ZIP

Funções para Zip
zip_entry_close
Funções para Zip
PHP Manual

zip_close

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_close — Fecha um arquivo ZIP

Descrição

void zip_close ( resource $zip )

Fecha um dado arquivo ZIP.

Parâmetros

zip

Um arquivo ZIP previamente aberto com zip_open().

Valor Retornado

Não há valor retornado.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_read() - Lê a próxima entrada em um arquivo ZIPado

Funções para Zip
zip_entry_close
Funções para Zip


Fecha o arquivo que está aberto

zip_close
zip_entry_compressedsize
Funções para Zip
PHP Manual

zip_entry_close

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_close — Fecha o arquivo que está aberto

Descrição

bool zip_entry_close ( resource $zip_entry )

Fecha uma especificada lista de entrada.

Parâmetros

zip_entry

Um diretório de entrada previamente aberto com zip_entry_open().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • zip_entry_open() - Abre um arquivo do arquivo ZIP
  • zip_entry_read() - Lê de um arquivo aberto

zip_close
zip_entry_compressedsize
Funções para Zip


Recupera o tamanho compactado do arquivo que está dentro do arquivo ZIP

zip_entry_close
zip_entry_compressionmethod
Funções para Zip
PHP Manual

zip_entry_compressedsize

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_compressedsize — Recupera o tamanho compactado do arquivo que está dentro do arquivo ZIP

Descrição

int zip_entry_compressedsize ( resource $zip_entry )

Retorna o tamanho do arquivo compactado dentro do arquivo ZIP especificado.

Parâmetros

zip_entry

Uma lista de entrada retornada pela zip_read().

Valor Retornado

O tamanho da compressão.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_read() - Lê a próxima entrada em um arquivo ZIPado

zip_entry_close
zip_entry_compressionmethod
Funções para Zip


Recupera qual o método de compressão foi utilizado no arquivo

zip_entry_compressedsize
zip_entry_filesize
Funções para Zip
PHP Manual

zip_entry_compressionmethod

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_compressionmethod — Recupera qual o método de compressão foi utilizado no arquivo

Descrição

string zip_entry_compressionmethod ( resource $zip_entry )

Recupera qual o método de compressão foi utilizado no arquivo passado por zip_entry.

Parâmetros

zip_entry

Uma lista de entrada retornada pela zip_read().

Valor Retornado

O método de compressão.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_read() - Lê a próxima entrada em um arquivo ZIPado

zip_entry_compressedsize
zip_entry_filesize
Funções para Zip


Retorna o tamanho de um diretório de entrada

zip_entry_compressionmethod
zip_entry_name
Funções para Zip
PHP Manual

zip_entry_filesize

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_filesize — Retorna o tamanho de um diretório de entrada

Descrição

int zip_entry_filesize ( resource $zip_entry )

Retorna o tamanho atual do especificado diretório de entrada.

Parâmetros

zip_entry

Um diretório de entrada retornado por zip_read().

Valor Retornado

O tamanho do diretório de entrada.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_read() - Lê a próxima entrada em um arquivo ZIPado

zip_entry_compressionmethod
zip_entry_name
Funções para Zip


Retorna o nome do arquivo

zip_entry_filesize
zip_entry_open
Funções para Zip
PHP Manual

zip_entry_name

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_name — Retorna o nome do arquivo

Descrição

string zip_entry_name ( resource $zip_entry )

Retorna o nome do arquivo especificado.

Parâmetros

zip_entry

A lista de entrada retornada pela zip_read().

Valor Retornado

O nome do diretório de entrada.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_read() - Lê a próxima entrada em um arquivo ZIPado

zip_entry_filesize
zip_entry_open
Funções para Zip


Abre um arquivo do arquivo ZIP

zip_entry_name
zip_entry_read
Funções para Zip
PHP Manual

zip_entry_open

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_open — Abre um arquivo do arquivo ZIP

Descrição

bool zip_entry_open ( resource $zip , resource $zip_entry [, string $mode ] )

Abre um arquivo para ser manipulado.

Parâmetros

zip

Um válido manipulador de resource retornado por zip_open().

zip_entry

Uma entrada de diretório retornada por zip_read().

mode

Algum dos modos especificados na documentação da fopen().

Nota:

Atualmente, o modo é ignorado e o modo padrão suportado é "rb". Isto é devido ao fato que o suporte a zip no PHP é apenas de leitura.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

Infelizmente fopen() e outras funções similares, retornam o mesmo valor de zip_entry_open() , apenas indicam o resultado da operação efetuada e não são necessárias para abrir ou fechar um arquivo do arquivo ZIP.

Veja Também

  • zip_entry_close() - Fecha o arquivo que está aberto
  • zip_entry_read() - Lê de um arquivo aberto

zip_entry_name
zip_entry_read
Funções para Zip


Lê de um arquivo aberto

zip_entry_open
zip_open
Funções para Zip
PHP Manual

zip_entry_read

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_read — Lê de um arquivo aberto

Descrição

string zip_entry_read ( resource $zip_entry [, int $length ] )

Lê de um arquivo aberto.

Parâmetros

zip_entry

Um arquivo retornado pela zip_read().

length

O número de bytes para retornar. Se não especificado, esta função irá tentar ler 1024 bytes.

Nota:

Este deve ser o tamanho não comprimido que você deseja ler.

Valor Retornado

Retorna a informação lida, ou FALSE se o fim do arquivo for encontrado.

Veja Também

  • zip_entry_open() - Abre um arquivo do arquivo ZIP
  • zip_entry_close() - Fecha o arquivo que está aberto
  • zip_entry_filesize() - Retorna o tamanho de um diretório de entrada

zip_entry_open
zip_open
Funções para Zip


Abre um arquivo ZIPado

zip_entry_read
zip_read
Funções para Zip
PHP Manual

zip_open

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_open — Abre um arquivo ZIPado

Descrição

mixed zip_open ( string $filename )

Abre um arquivo ZIPado para ser lido.

Parâmetros

filename

O nome do arquivo ZIP para abrir.

Valor Retornado

Retorna a conexão com o arquivo que será usado com as funções zip_read() e zip_close() ou retorna o número de erros se filename não existir or em outro caso erro.

Veja Também

  • zip_read() - Lê a próxima entrada em um arquivo ZIPado
  • zip_close() - Fecha um arquivo ZIP

zip_entry_read
zip_read
Funções para Zip


Lê a próxima entrada em um arquivo ZIPado

zip_open
Zlib
Funções para Zip
PHP Manual

zip_read

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_read — Lê a próxima entrada em um arquivo ZIPado

Descrição

mixed zip_read ( resource $zip )

Lê o próximo elemento dentro de uma arquivo ZIP.

Parâmetros

zip

Um arquivo ZIP anteriormente aberto com zip_open().

Valor Retornado

Retorna uma conexao com o arquivo ZIP para ser usado com as funções zip_entry_... ou FALSE se não houver arquivos para serem lidos ou número de erros no caso de outro erro.

Veja Também

  • zip_open() - Abre um arquivo ZIPado
  • zip_close() - Fecha um arquivo ZIP
  • zip_entry_open() - Abre um arquivo do arquivo ZIP
  • zip_entry_read() - Lê de um arquivo aberto

zip_open
Zlib
Funções para Zip


Compressão Zlib

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da Zlib
    • gzclose — Fecha um ponteiro para um arquivo-gz
    • gzcompress — Comprime uma string
    • gzdecode — Decodifica uma string comprimida usando o gzip
    • gzdeflate — Comprime uma string usando DEFLATE
    • gzencode — Cria uma string comprimida com gzip
    • gzeof — Testa para o fim de um ponteiro de arquivo-gz
    • gzfile — Lê todo o arquivo-gz para uma matriz
    • gzgetc — Obtém um caractere de um ponteiro de arquivo-gz
    • gzgets — Obtém uma linha de um ponteiro de arquivo
    • gzgetss — Obtém uma linha de um ponteiro de arquivo-gz e retira as tags HTML
    • gzinflate — Descomprime uma string usando DEFLATE
    • gzopen — Abre um arquivo-gz
    • gzpassthru — Envia todos os dados restantes em um ponteiro para arquivo-gz
    • gzputs — Sinônimo de gzwrite
    • gzread — Leitura de arquivos-gz segura para binários
    • gzrewind — Retorna ao início a posição de um ponteiro para um arquivo-gz
    • gzseek — Move o ponteiro de um arquivo-gz
    • gztell — Indica a posição de leitura/gravação em um ponteiro para arquivo-gz
    • gzuncompress — Descomprime uma string com DEFLATED
    • gzwrite — Escrita segura para binário em arquivo-gz
    • readgzfile — Mostra um arquivo-gz
    • zlib_get_coding_type — Retorna o tipo de codificação para a compressão de saída
zip_read
Introdução
Extensões de Compressão e Arquivo


Introdução

Este módulo lhe possibilita ler e gerar transparentemente arquivos comprimidos do tipo gzip (.gz), através de muitas das funções filesystem nas quais funcionam com arquivos gzip comprimidos (e arquivos não comprimidos também, mas não com sockets).

Nota:

A versão 4.0.4 introduziu um fopen-wrapper para arquivos .gz, assim você pode usar uma URL especial zlib: para acessar arquivos comprimidos transparentemente usando as funções f*() normais de acessos a arquivos se você colocar como prefixo no nome ou caminho zlib: ao chamar fopen(). Isto requer que você use uma biblioteca C em tempo de execução que tenha a função fopencookie(). Até agora apenas a GNU libc parace ser a única biblioteca que tenha este recurso.

No PHP 4.3.0, zlib: foi modificado para compress.zlib:// para previnir ambiguidades com nomes de arquivos contendo caracteres ':'. A função fopencookie() não é mais requerida. Maiores informações estão disponíveis em uma sessão sobre zlib, bzip2 and zip.

Zlib
Instalação/Configuração
Zlib


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Zlib


Dependências

Este módulo usa as funções da » zlib por Jean-loup Gailly e Mark Adler. Você terá que usar uma versão zlib >= à 1.0.9 com este módulo.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

O suporte a Zlib no PHP não esta ativado por padrão. Você precisa configurar o PHP com --with-zlib[=DIR]

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota: Suporte embutido para o zlib no Windows esta disponível partir do PHP 4.3.0.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

A extensão zlib oferece a opção de comprimir transparentemente suas páginas em tempo real, se o navegador requisitante suportar isto. Então existem três opções no arquivo de configuração php.ini.

Opções de Configuração da Zlib
Nome | Padrão | Modificável | Modificação
zlib.output_compression | 0 | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
zlib.output_compression_level | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
zlib.output_handler | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Aqui está uma breve explicação das diretrizes de configuração.

zlib.output_compression booleano/inteiro

Serve para comprimir páginas de modo transparente. Se esta opção for mudada para "On" no php.ini ou na configuração do Apache, as páginas serão comprimidas se o navegador enviar um cabeçalho "Accept-Encoding: gzip" ou "deflate". "Content-Encoding: gzip" (respectivamente "deflate") e cabeçalhos "Vary: Accept-Encoding" serão adicionados para a saida. Em tempo de execução, isso só pode ser definido antes de enviar qualquer saída.

Esta opção também aceita valores inteiros em vez de valores booleanos "On"/"Off", usando isto você pode configurar o tamanho do buffer de saída (o padrão é 4KB).

Nota:

output_handler deve estar vazio se a diretriz estiver configurada em 'On'! Em vez disto você deve usar zlib.output_handler.

zlib.output_compression_level inteiro

Nível de compressão usado para as saídas.

zlib.output_handler string

Você não pode especificar tratamentos adicionais de saída se zlib.output_compression for ativado. Esta configuração faz o mesmo que a output_handler mas em uma ordem diferente.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão define um ponteiro de arquivo resource retornado pela gzopen().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FORCE_GZIP (integer)
FORCE_DEFLATE (integer)
Tipos Resource
Exemplos
Zlib


Exemplos

Este exemplo abre um arquivo temporário e gera uma string teste dentro dele, então ela mostra o conteúdo deste arquivo duas vezes.

Exemplo #1 Pequeno Exemplo da Zlib

<?php

$filename = tempnam('/tmp', 'zlibtest') . '.gz';
echo "<html>\n<head></head>\n<body>\n<pre>\n";
$s = "Only a test, test, test, test, test, test, test, test!\n";

// open file for writing with maximum compression
$zp = gzopen($filename, "w9");

// write string to file
gzwrite($zp, $s);

// close file
gzclose($zp);

// open file for reading
$zp = gzopen($filename, "r");

// read 3 char
echo gzread($zp, 3);

// output until end of the file and close it.
gzpassthru($zp);
gzclose($zp);

echo "\n";

// open file and print content (the 2nd time).
if (readgzfile($filename) != strlen($s)) {
        echo "Error with zlib functions!";
}
unlink($filename);
echo "</pre>\n</body>\n</html>\n";

?>
Constantes pré-definidas
Funções da Zlib
Zlib


Funções da Zlib

Índice

  • gzclose — Fecha um ponteiro para um arquivo-gz
  • gzcompress — Comprime uma string
  • gzdecode — Decodifica uma string comprimida usando o gzip
  • gzdeflate — Comprime uma string usando DEFLATE
  • gzencode — Cria uma string comprimida com gzip
  • gzeof — Testa para o fim de um ponteiro de arquivo-gz
  • gzfile — Lê todo o arquivo-gz para uma matriz
  • gzgetc — Obtém um caractere de um ponteiro de arquivo-gz
  • gzgets — Obtém uma linha de um ponteiro de arquivo
  • gzgetss — Obtém uma linha de um ponteiro de arquivo-gz e retira as tags HTML
  • gzinflate — Descomprime uma string usando DEFLATE
  • gzopen — Abre um arquivo-gz
  • gzpassthru — Envia todos os dados restantes em um ponteiro para arquivo-gz
  • gzputs — Sinônimo de gzwrite
  • gzread — Leitura de arquivos-gz segura para binários
  • gzrewind — Retorna ao início a posição de um ponteiro para um arquivo-gz
  • gzseek — Move o ponteiro de um arquivo-gz
  • gztell — Indica a posição de leitura/gravação em um ponteiro para arquivo-gz
  • gzuncompress — Descomprime uma string com DEFLATED
  • gzwrite — Escrita segura para binário em arquivo-gz
  • readgzfile — Mostra um arquivo-gz
  • zlib_get_coding_type — Retorna o tipo de codificação para a compressão de saída
Exemplos
gzclose
Zlib


Fecha um ponteiro para um arquivo-gz

Funções da Zlib
gzcompress
Funções da Zlib
PHP Manual

gzclose

(PHP 4, PHP 5)

gzclose — Fecha um ponteiro para um arquivo-gz

Descrição

bool gzclose ( resource $zp )

Fecha o ponteiro para arquivo gz dado.

Parâmetros

zp

O ponteiro de arquivo gz. Ele deve ser válido,e apontar para um arquivo aberto de maneira correta pela função gzopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 gzclose() example

<?php
$gz = gzopen('somefile.gz','w9');
gzputs ($gz, 'I was added to somefile.gz');
gzclose($gz);
?>

Veja Também

  • gzopen() - Abre um arquivo-gz

Funções da Zlib
gzcompress
Funções da Zlib


Comprime uma string

gzclose
gzdecode
Funções da Zlib
PHP Manual

gzcompress

(PHP 4 >= 4.0.1, PHP 5)

gzcompress — Comprime uma string

Descrição

string gzcompress ( string $data [, int $level ] )

Esta função comprime a string usando o formato de dados ZLIB.

Para detalhes sobre o algoritimo de compressão ZLIB veja o documento "» ZLIB Compressed Data Format Specification version 3.3" (RFC 1950).

Nota:

Isto não é o mesmo que a compressão gzip, a qual incluir alguns dados de cabeçalho. Veja gzencode() para compressão gzip.

Parâmetros

data

Os dados a comprimir.

level

The level of compression. Can be given as 0 for no compression up to 9 for maximum compression.

Valor Retornado

A string comprimida ou FALSE se um erro ocorreu.

Exemplos

Exemplo #1 Exemplo gzcompress()

<?php
$compressed = gzcompress('Compress me', 9);
echo $compressed;
?>

Veja Também

  • gzdeflate() - Comprime uma string usando DEFLATE
  • gzinflate() - Descomprime uma string usando DEFLATE
  • gzuncompress() - Descomprime uma string com DEFLATED
  • gzencode() - Cria uma string comprimida com gzip

gzclose
gzdecode
Funções da Zlib


Decodifica uma string comprimida usando o gzip

gzcompress
gzdeflate
Funções da Zlib
PHP Manual

gzdecode

(No version information available, might only be in SVN)

gzdecode — Decodifica uma string comprimida usando o gzip

Descrição

string gzdecode ( string $data [, int $length ] )

Essa função retorna a versão decodifica de data.

Parâmetros

data

Os dados a serem decodificados, encodificados por gzencode().

length

Tamanho máximo dos dados a serem decodificados.

Valor Retornado

A string decodificada, ou FALSE se um erro ocorrer.

Veja Também

  • gzencode() - Cria uma string comprimida com gzip

gzcompress
gzdeflate
Funções da Zlib


Comprime uma string usando DEFLATE

gzdecode
gzencode
Funções da Zlib
PHP Manual

gzdeflate

(PHP 4 >= 4.0.4, PHP 5)

gzdeflate — Comprime uma string usando DEFLATE

Descrição

string gzdeflate ( string $data [, int $level ] )

Esta função comprime a string dada usando o formato de dados DEFLATE.

Para detalhes sobre o algoritimo de compressão DEFLATE veja o documento "» DEFLATE Compressed Data Format Specification version 1.3" (RFC 1951).

Parâmetros

data

Os dados a comprimir.

level

O nível de compressão. Pode ser dado como 0 para sem compressão até 9 para a máxima compressão. Se não for dados, o nível de compressão padrão será o nível de compressão padrão da biblioteca zlib.

Valor Retornado

A string comprimida ou FALSE se ocorreu um erro.

Exemplos

Exemplo #1 Exemplo gzdeflate()

<?php
$compressed = gzdeflate('Compress me', 9);
echo $compressed;
?>

Veja Também

  • gzinflate() - Descomprime uma string usando DEFLATE
  • gzcompress() - Comprime uma string
  • gzuncompress() - Descomprime uma string com DEFLATED
  • gzencode() - Cria uma string comprimida com gzip

gzdecode
gzencode
Funções da Zlib


Cria uma string comprimida com gzip

gzdeflate
gzeof
Funções da Zlib
PHP Manual

gzencode

(PHP 4 >= 4.0.4, PHP 5)

gzencode — Cria uma string comprimida com gzip

Descrição

string gzencode ( string $data [, int $level [, int $encoding_mode ]] )

Esta função retorna uma versão comprimida dos dados de entrada data compatível com a saída do programa gzip.

Para maiores informações sobre o formato GZIP, veja o documento: » Especificação do formato de arquivo GZIP versão 4.3 (RFC 1952).

Parâmetros

data

Os dados para codificar.

level

O nível de compressão. Pode ser dado como 0 para sem compressão até 9 para a máxima compressão. Se não for dados, o nível de compressão padrão será o nível de compressão padrão da biblioteca zlib.

encoding_mode

O modo de codificação. Pode ser FORCE_GZIP (o padrão) ou FORCE_DEFLATE.

Se você usar FORCE_DEFLATE, você obtém uma string comprimida padrão zlib (incluindo os cabeçalhos zlib) após o cabeçalho do arquivo gzip mas sem a somatória crc32 ao final.

Valor Retornado

A string codificada, ou FALSE se aconteceu um erro.

Histórico

Versão | Descrição
4.2 | level foi adicionado. gzencode() apenas tinha os parâmetros data e o opcional encoding_mode antes.

Exemplos

Os dados resultantes contém os cabeçalhos apropriados e a estrutura de dados para fazer um arquivo .gz padrão, ex:

Exemplo #1 Criando um arquivo gzip

<?php
$data = implode("", file("bigfile.txt"));
$gzdata = gzencode($data, 9);
$fp = fopen("bigfile.txt.gz", "w");
fwrite($fp, $gzdata);
fclose($fp);
?>

Veja Também

  • gzdecode() - Decodifica uma string comprimida usando o gzip
  • gzdeflate() - Comprime uma string usando DEFLATE
  • gzinflate() - Descomprime uma string usando DEFLATE
  • gzuncompress() - Descomprime uma string com DEFLATED
  • gzcompress() - Comprime uma string

gzdeflate
gzeof
Funções da Zlib


Testa para o fim de um ponteiro de arquivo-gz

gzencode
gzfile
Funções da Zlib
PHP Manual

gzeof

(PHP 4, PHP 5)

gzeof — Testa para o fim de um ponteiro de arquivo-gz

Descrição

int gzeof ( resource $zp )

Teste o ponteiro de arquivo GZ para o EOF (fim do arquivo).

Parâmetros

zp

O ponteiro de arquivo gz. Ele deve ser válido, e deve apontar para um arquivo aberto de maneira bem sucedida por gzopen().

Valor Retornado

Retorna TRUE se o ponteiro de arquivo-gz esta no fim do arquivo ou se acontecer um erro, se não retorna FALSE.

Exemplos

Exemplo #1 gzeof() example

<?php
$gz = gzopen('somefile.gz', 'r');
while (!gzeof($gz)) {
    echo gzgetc($gz);
}
gzclose($gz);
?>

gzencode
gzfile
Funções da Zlib


Lê todo o arquivo-gz para uma matriz

gzeof
gzgetc
Funções da Zlib
PHP Manual

gzfile

(PHP 4, PHP 5)

gzfile — Lê todo o arquivo-gz para uma matriz

Descrição

array gzfile ( string $filename [, int $use_include_path ] )

Esta função é identica a readgzfile(), exceto que ela retorna o arquivo em uma array.

Parâmetros

filename

O nome do arquivo.

use_include_path

Você pode definir esta parâmetro para 1, se você quer procurar o arquivo no include_path também.

Valor Retornado

Um array contendo o arquivo, uma linha por célula.

Exemplos

Exemplo #1 Exemplo gzfile()

<?php
$lines = gzfile('somefile.gz');
foreach ($lines as $line) {
    echo $line;
}
?>

Veja Também

  • readgzfile() - Mostra um arquivo-gz
  • gzopen() - Abre um arquivo-gz

gzeof
gzgetc
Funções da Zlib


Obtém um caractere de um ponteiro de arquivo-gz

gzfile
gzgets
Funções da Zlib
PHP Manual

gzgetc

(PHP 4, PHP 5)

gzgetc — Obtém um caractere de um ponteiro de arquivo-gz

Descrição

string gzgetc ( resource $zp )

Retorna uma string contendo um único (descomprimido) caractere lido a partir do arquivo gz.

Parâmetros

zp

O ponteiro de arquivo-gz deve ser válido , e deve apontar para um arquivo aberto corretamente com gzopen().

Valor Retornado

O caractere descomprimido ou FALSE em caso de EOF (Diferentemente de gzeof()).

Exemplos

Exemplo #1 Exemplo gzgetc()

<?php
$gz = gzopen('somefile.gz', 'r');
while (!gzeof($gz)) {
    echo gzgetc($gz);
}
gzclose($gz);
?>

Veja Também

  • gzopen() - Abre um arquivo-gz
  • gzgets() - Obtém uma linha de um ponteiro de arquivo

gzfile
gzgets
Funções da Zlib


Obtém uma linha de um ponteiro de arquivo

gzgetc
gzgetss
Funções da Zlib
PHP Manual

gzgets

(PHP 4, PHP 5)

gzgets — Obtém uma linha de um ponteiro de arquivo

Descrição

string gzgets ( resource $zp , int $length )

Obtém uma (descomprimida) string até o tamanho length - 1 bytes lidos a partir do ponteiro de arquivo dado. A leitura termina quando length - 1 bytes tiverem sido lidos, em uma nova liha ou em EOF (o que vier primeiro).

Parâmetros

zp

O ponteiro do arquivo deve ser válido, e deve apontar para um arquivo aberto corretamente com gzopen().

length

O tamanho dos dados a pegar.

Valor Retornado

A string descomprimida, ou FALSE em caso de erro.

Exemplos

Exemplo #1 gzgets() example

<?php
$handle = gzopen('somefile.gz', 'r');
while (!gzeof($handle)) {
    $buffer = gzgets($handle, 4096);
    echo $buffer;
}
gzclose($handle);
?>

Veja Também

  • gzopen() - Abre um arquivo-gz
  • gzgetc() - Obtém um caractere de um ponteiro de arquivo-gz
  • gzwrite() - Escrita segura para binário em arquivo-gz

gzgetc
gzgetss
Funções da Zlib


Obtém uma linha de um ponteiro de arquivo-gz e retira as tags HTML

gzgets
gzinflate
Funções da Zlib
PHP Manual

gzgetss

(PHP 4, PHP 5)

gzgetss — Obtém uma linha de um ponteiro de arquivo-gz e retira as tags HTML

Descrição

string gzgetss ( resource $zp , int $length [, string $allowable_tags ] )

Identica a gzgets(), exceto que gzgetss() tenta retirar todas as tags HTML e todas as tags PHP do texto que lê.

Parâmetros

zp

O ponteiro para o arquivo gz. Ele deve ser válido, e deve apontar para um arquivo aberto de maneira bem sucedida por gzopen().

length

O tamanho dos dados a pegar.

allowable_tags

Você pode usar esta parâmetro opcional para especificar as tags que não devem ser renovidas.

Valor Retornado

A string descomprimida e com as tags removidas, ou FALSE em caso de erro.

Histórico

Versão | Descrição
3.0.13 e 4.0.0 | Foi adicionado allowable_tags.

Exemplos

Exemplo #1 Exemplo gzgetss()

<?php
$handle = gzopen('somefile.gz', 'r');
while (!gzeof($handle)) {
    $buffer = gzgetss($handle, 4096);
    echo $buffer;
}
gzclose($handle);
?>

Veja Também

  • gzopen() - Abre um arquivo-gz
  • gzgets() - Obtém uma linha de um ponteiro de arquivo
  • strip_tags() - Retira as tags HTML e PHP de uma string

gzgets
gzinflate
Funções da Zlib


Descomprime uma string usando DEFLATE

gzgetss
gzopen
Funções da Zlib
PHP Manual

gzinflate

(PHP 4 >= 4.0.4, PHP 5)

gzinflate — Descomprime uma string usando DEFLATE

Descrição

string gzinflate ( string $data [, int $length ] )

Esta função descomprime uma string.

Parâmetros

data

Os dados comprimidos por gzdeflate().

length

O limite de tamanho dos dados a descompactar.

Valor Retornado

Os dados originais descomprimidos ou FALSE em caso de erro.

Esta função irá retornar um erro se os dados descomprimidos forem maiores do 32768 vezes o tamanho dos dados comprimidos de entrada data ou mais do que o parâmetro opcional length.

Exemplos

Exemplo #1 Exemplo gzinflate()

<?php
$compressed   = gzdeflate('Compress me', 9);
$uncompressed = gzinflate($compressed);
echo $uncompressed;
?>

Veja Também

Veja também gzcompress() - Comprime uma string. gzuncompress() - Descomprime uma string com DEFLATED, gzdeflate() - Comprime uma string usando DEFLATE, e gzencode() - Cria uma string comprimida com gzip.

gzgetss
gzopen
Funções da Zlib


Abre um arquivo-gz

gzinflate
gzpassthru
Funções da Zlib
PHP Manual

gzopen

(PHP 4, PHP 5)

gzopen — Abre um arquivo-gz

Descrição

resource gzopen ( string $filename , string $mode [, int $use_include_path ] )

Abre um arquivo-gz para leitura ou escrita. O parâmetro mode é igual a fopen() ("rb" ou "wb") mas pode incluir também um nível de compressão ("wb9") ou uma estratégia: 'f' para dados filtrados como em "wb6f", 'h' para compressão apenas com Huffman como em "wb1h". (Veja a descrição de deflateInit2 e zlib.h para maiores informações sobre o parâmetro strategy.)

gzopen() pode ser usada para ler um arquivo que não esteja no formato gzip; neste caso gzread() irá ler diretamente a partir do arquivo sem descompressão.

gzopen() retorna um ponteiro para arquivo aberto, após isso, tudo o que você ler apartir desse descritor de arquivo será transparentemente descomprimido e o que você escrever será comprimido.

Se falhar ao abrir, a função retorna FALSE.

Você pode usar o terceiro parâmetro, que é opcional, e defini-lo como "1", se você quiser procurar pelo arquivo no include_path, também.

Exemplo #1 Exemplo gzopen()

<?php
$fp = gzopen("/tmp/file.gz", "r");
?>

Veja também gzclose().

gzinflate
gzpassthru
Funções da Zlib


Envia todos os dados restantes em um ponteiro para arquivo-gz

gzopen
gzputs
Funções da Zlib
PHP Manual

gzpassthru

(PHP 4, PHP 5)

gzpassthru — Envia todos os dados restantes em um ponteiro para arquivo-gz

Descrição

int gzpassthru ( resource $zp )

Lê até o EOF do ponteiro de arquivo-gz e escreve o (descomprimido) resultado para a saída padrão.

Se acontecer um erro, retorna FALSE.

O ponteiro para o arquivo deve ser válido, e deve apontar para um arquivo aberto corretamente com gzopen().

gzopen
gzputs
Funções da Zlib


Sinônimo de gzwrite

gzpassthru
gzread
Funções da Zlib
PHP Manual

gzputs

(PHP 4, PHP 5)

gzputs — Sinônimo de gzwrite()

Descrição

Esta função é um apelido para: gzwrite().

gzpassthru
gzread
Funções da Zlib


Leitura de arquivos-gz segura para binários

gzputs
gzrewind
Funções da Zlib
PHP Manual

gzread

(PHP 4, PHP 5)

gzread — Leitura de arquivos-gz segura para binários

Descrição

string gzread ( resource $zp , int $length )

gzread() lê length bytes do ponteiro de arquivo gz. A leitura pára quando length (descomprimido) bytes forem lidos ou até o fim do arquivo, o que chegar primeiro.

Parâmetros

zp

O ponteiro do arquivo gz. Precisa ser válido, e apontar para um arquivo aberto com sucesso por gzopen().

length

O número de bytes a serem lidos.

Valor Retornado

The data that have been read.

Exemplos

Exemplo #1 Exemplo da gzread()

<?php
// Obtém o conteúdo de um arquivo-gz em uma string
$filename = "/usr/local/something.txt.gz";
$zd = gzopen($filename, "r");
$contents = gzread($zd, 10000);
gzclose($zd);
?>

Veja Também

  • gzwrite() - Escrita segura para binário em arquivo-gz
  • gzopen() - Abre um arquivo-gz
  • gzgets() - Obtém uma linha de um ponteiro de arquivo
  • gzgetss() - Obtém uma linha de um ponteiro de arquivo-gz e retira as tags HTML
  • gzfile() - Lê todo o arquivo-gz para uma matriz
  • gzpassthru() - Envia todos os dados restantes em um ponteiro para arquivo-gz

gzputs
gzrewind
Funções da Zlib


Retorna ao início a posição de um ponteiro para um arquivo-gz

gzread
gzseek
Funções da Zlib
PHP Manual

gzrewind

(PHP 4, PHP 5)

gzrewind — Retorna ao início a posição de um ponteiro para um arquivo-gz

Descrição

bool gzrewind ( resource $zp )

Define o indicador de posição para o dado arquivo gz para o início do arquivo.

Parâmetros

zp

O ponteiro do arquivo gz. Ele deve ser válido e deve apontar para um arquivo aberto corretamente com gzopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gzseek() - Move o ponteiro de um arquivo-gz
  • gztell() - Indica a posição de leitura/gravação em um ponteiro para arquivo-gz

gzread
gzseek
Funções da Zlib


Move o ponteiro de um arquivo-gz

gzrewind
gztell
Funções da Zlib
PHP Manual

gzseek

(PHP 4, PHP 5)

gzseek — Move o ponteiro de um arquivo-gz

Descrição

int gzseek ( resource $zp , int $offset )

Define a posição do indicador do dado ponteiro de arquivo para a dada posição do byte dentro do arquivo. Equivalente a chamar (em C) gzseek(zp, offset, SEEK_SET).

Se o arquivo esta aberto para leitura, esta função é emulada mas pode ser extremamente lenta. Se o arquivo estiver aberto para escrita, apenas mudanças para a frente são suportadas; gzseek() então comprime uma sequencia de zeros até a nova posição de início.

Parâmetros

zp

O ponteiro de arquivo gz. Ele precisa ser válido, e apontar para um arquivo aberto com sucesso por gzopen().

offset

A posição desejada.

Valor Retornado

Em caso de sucesso, retorna 0; senão retorna -1. Note que mover a posição alem do fim do arquivo não é considerado um erro. past EOF is not considered an error.

Exemplos

Exemplo #1 Exemplo da gzseek()

<?php
$gz = gzopen('somefile.gz', 'r');
gzseek($gz,2);
echo gzgetc($gz);
gzclose($gz);
?>

Veja Também

  • gztell() - Indica a posição de leitura/gravação em um ponteiro para arquivo-gz
  • gzrewind() - Retorna ao início a posição de um ponteiro para um arquivo-gz

gzrewind
gztell
Funções da Zlib


Indica a posição de leitura/gravação em um ponteiro para arquivo-gz

gzseek
gzuncompress
Funções da Zlib
PHP Manual

gztell

(PHP 4, PHP 5)

gztell — Indica a posição de leitura/gravação em um ponteiro para arquivo-gz

Descrição

int gztell ( resource $zp )

Obtém a posição do ponteiro de arquivo; i.e., seu índice dentro do arquivo.

Parâmetros

zp

O ponteiro de arquivo gz. Precisa ser válido, e deve apontar para um arquivo aberto corretamente com gzopen().

Valor Retornado

A posição do ponteiro do arquivo ou FALSE se um erro ocorrer.

Veja Também

  • gzopen() - Abre um arquivo-gz
  • gzseek() - Move o ponteiro de um arquivo-gz
  • gzrewind() - Retorna ao início a posição de um ponteiro para um arquivo-gz

gzseek
gzuncompress
Funções da Zlib


Descomprime uma string com DEFLATED

gztell
gzwrite
Funções da Zlib
PHP Manual

gzuncompress

(PHP 4 >= 4.0.1, PHP 5)

gzuncompress — Descomprime uma string com DEFLATED

Descrição

string gzuncompress ( string $data [, int $length ] )

Esta função leva os dados data comprimidos por gzcompress() e retorna os dados originais descomprimidos ou FALSE em caso de erro. A função irá retornar um erro se os dados descompactados foram mais do que 32768 vezes o tamanho dos dados compactados data ou mais do que o parâmetro opcional length.

Veja também gzdeflate(),
gzinflate(),
gzcompress() e
gzencode().

gztell
gzwrite
Funções da Zlib


Escrita segura para binário em arquivo-gz

gzuncompress
readgzfile
Funções da Zlib
PHP Manual

gzwrite

(PHP 4, PHP 5)

gzwrite — Escrita segura para binário em arquivo-gz

Descrição

int gzwrite ( resource $zp , string $string [, int $length ] )

gzwrite() escreve o conteúdo de string para o arquivo-gz.

Parâmetros

zp

O ponteiro do arquivo gz. Precisa ser válido, e apontar para um arquivo aberto com sucesso por gzopen().

string

A string a ser escrita.

length

O número de bytes descompresso para escrever. Se fornecido, a escrita irá parar depos de length (descomprimido) bytes ter sido escritos, ou ao final de string, o que vier primeiro.

Nota:

Note que se o argumentolength for dado, então a configuração magic_quotes_runtime será ignorada e não serão retiradas as barras de string.

Valor Retornado

Retorna o número de (descomprimido) bytes escrito no dado stream do arquivo gz.

Exemplos

Exemplo #1 Exemplo da gzwrite()

<?php
$string = 'Some information to compress';
$gz = gzopen('somefile.gz','w9');
gzwrite($gz, $string);
gzclose($gz);
?>

Veja Também

  • gzread() - Leitura de arquivos-gz segura para binários
  • gzopen() - Abre um arquivo-gz

gzuncompress
readgzfile
Funções da Zlib


Mostra um arquivo-gz

gzwrite
zlib_get_coding_type
Funções da Zlib
PHP Manual

readgzfile

(PHP 4, PHP 5)

readgzfile — Mostra um arquivo-gz

Descrição

int readgzfile ( string $filename [, int $use_include_path ] )

Lê um arquivo, descomprime ele e escreve-o para a saída padrão.

readgzfile() pode ser usada para ler um arquivo o qual não esteja no formato gzip, neste caso readgzfile() irá ler diretamente do arquivo sem descompressão.

Parâmetros

filename

O nome do arquivo. Este arquivo será aberto do sistema de arquivo e seu conteúdo escrito para saída padrão.

use_include_path

Você pode definir este parâmetro opcional para 1, se você quer procurar pelo arquivo no include_path também.

Valor Retornado

Retorna o número de (descomprimidos) bytes lidos a partir do arquivo. Se acontecer um erro, é retornado FALSE e a menos que a função seja chamada como @readgzfile, uma mensagem de erro é mostrada.

Veja Também

  • gzpassthru() - Envia todos os dados restantes em um ponteiro para arquivo-gz
  • gzfile() - Lê todo o arquivo-gz para uma matriz
  • gzopen() - Abre um arquivo-gz

gzwrite
zlib_get_coding_type
Funções da Zlib


Retorna o tipo de codificação para a compressão de saída

readgzfile
Processamento de Cartão de Crédito
Funções da Zlib
PHP Manual

zlib_get_coding_type

(PHP 4 >= 4.3.2, PHP 5)

zlib_get_coding_type — Retorna o tipo de codificação para a compressão de saída

Descrição

string zlib_get_coding_type ( void )

Retorna o tipo de codificação usado para a compressão de saída.

Valor Retornado

Possíveis valores de retorno são gzip, deflate, ou FALSE.

Veja Também

  • A diretiva zlib.output_compression

readgzfile
Processamento de Cartão de Crédito
Funções da Zlib


Processamento de Cartão de Crédito

  • MCVE — MCVE (Monetra) Payment
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • MCVE Funções
  • SPPLUS — SPPLUS Payment System
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para SPPLUS
zlib_get_coding_type
MCVE
Referência das Funções


MCVE (Monetra) Payment

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • MCVE Funções
    • m_checkstatus — Check to see if a transaction has completed
    • m_completeauthorizations — Number of complete authorizations in queue, returning an array of their identifiers
    • m_connect — Establish the connection to MCVE
    • m_connectionerror — Get a textual representation of why a connection failed
    • m_deletetrans — Delete specified transaction from MCVE_CONN structure
    • m_destroyconn — Destroy the connection and MCVE_CONN structure
    • m_destroyengine — Free memory associated with IP/SSL connectivity
    • m_getcell — Get a specific cell from a comma delimited response by column name
    • m_getcellbynum — Get a specific cell from a comma delimited response by column number
    • m_getcommadelimited — Get the RAW comma delimited data returned from MCVE
    • m_getheader — Get the name of the column in a comma-delimited response
    • m_initconn — Create and initialize an MCVE_CONN structure
    • m_initengine — Ready the client for IP/SSL Communication
    • m_iscommadelimited — Checks to see if response is comma delimited
    • m_maxconntimeout — The maximum amount of time the API will attempt a connection to MCVE
    • m_monitor — Perform communication with MCVE (send/receive data) Non-blocking
    • m_numcolumns — Number of columns returned in a comma delimited response
    • m_numrows — Number of rows returned in a comma delimited response
    • m_parsecommadelimited — Parse the comma delimited response so m_getcell, etc will work
    • m_responsekeys — Returns array of strings which represents the keys that can be used for response parameters on this transaction
    • m_responseparam — Get a custom response parameter
    • m_returnstatus — Check to see if the transaction was successful
    • m_setblocking — Set blocking/non-blocking mode for connection
    • m_setdropfile — Set the connection method to Drop-File
    • m_setip — Set the connection method to IP
    • m_setssl_cafile — Set SSL CA (Certificate Authority) file for verification of server certificate
    • m_setssl_files — Set certificate key files and certificates if server requires client certificate verification
    • m_setssl — Set the connection method to SSL
    • m_settimeout — Set maximum transaction time (per trans)
    • m_sslcert_gen_hash — Generate hash for SSL client certificate verification
    • m_transactionssent — Check to see if outgoing buffer is clear
    • m_transinqueue — Number of transactions in client-queue
    • m_transkeyval — Add key/value pair to a transaction. Replaces deprecated transparam()
    • m_transnew — Start a new transaction
    • m_transsend — Finalize and send the transaction
    • m_uwait — Wait x microsecs
    • m_validateidentifier — Whether or not to validate the passed identifier on any transaction it is passed to
    • m_verifyconnection — Set whether or not to PING upon connect to verify connection
    • m_verifysslcert — Set whether or not to verify the server ssl certificate
Processamento de Cartão de Crédito
Introdução
Processamento de Cartão de Crédito


Introdução

These functions interface the MCVE (Monetra) API (libmonetra, formerly known as libmcve), allowing you to work directly with MCVE/Monetra from your PHP scripts. MCVE/Monetra is Main Street Softworks' solution to direct credit/debit/gift card processing for Linux/Unix/MacOSX/Windows ( » http://www.mainstreetsoftworks.com/ ). It lets you directly address the credit card clearing houses via your *nix box, modem and/or internet connection (bypassing the need for an additional service such as Authorize.Net or Pay Flow Pro). Using the MCVE/Monetra module for PHP, you can process credit cards directly through MCVE/Monetra via your PHP scripts. The following references will outline the process.

Nota:

MCVE/Monetra is the replacement for RedHat's CCVS. They contracted with RedHat in late 2001 to migrate all existing clientele to the MCVE platform.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Nota: Esta extensão não está disponível na plataforma Windows.

MCVE
Instalação/Configuração
MCVE


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
MCVE


Dependências

The LibMonetra (formerly libmcve) library.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/mcve.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

If installing without specifying the libmonetra path, PHP will attempt to look in the default LibMonetra Install location (/usr/local). If Monetra (MCVE) is in a non-standard location, run configure with: --with-mcve=$mcve_path , where $mcve_path is the path to your MCVE/Monetra installation. Please note that MCVE/Monetra support requires that $mcve_path/lib and $mcve_path/include exist, and include mcve.h or monetra.h under the include directory and libmcve.so and/or libmcve.a and/or libmonetra.so and/or libmonetra.a under the lib directory.

Since MCVE/Monetra has true server/client separation, there are no additional requirements for running PHP with MCVE support. To test your MCVE/Monetra extension in PHP, you may connect to testbox.monetra.com on port 8333 for IP, or port 8444 for SSL using the MCVE/Monetra PHP API. Use 'vitale' for your username, and 'test' for your password. Additional information about test facilities are available at » http://www.mainstreetsoftworks.com/.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines a MCVE_CONN resource returned by m_initconn().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

M_PENDING (integer)
M_DONE (integer)
M_ERROR (integer)
M_FAIL (integer)
M_SUCCESS (integer)
Tipos Resource
MCVE Funções
MCVE


MCVE Funções

Veja Também

Additional documentation about MCVE/Monetra's PHP API can be found at » http://www.mainstreetsoftworks.com/documentation.html. Main Street's documentation is complete and should be the primary reference for functions.

Índice

  • m_checkstatus — Check to see if a transaction has completed
  • m_completeauthorizations — Number of complete authorizations in queue, returning an array of their identifiers
  • m_connect — Establish the connection to MCVE
  • m_connectionerror — Get a textual representation of why a connection failed
  • m_deletetrans — Delete specified transaction from MCVE_CONN structure
  • m_destroyconn — Destroy the connection and MCVE_CONN structure
  • m_destroyengine — Free memory associated with IP/SSL connectivity
  • m_getcell — Get a specific cell from a comma delimited response by column name
  • m_getcellbynum — Get a specific cell from a comma delimited response by column number
  • m_getcommadelimited — Get the RAW comma delimited data returned from MCVE
  • m_getheader — Get the name of the column in a comma-delimited response
  • m_initconn — Create and initialize an MCVE_CONN structure
  • m_initengine — Ready the client for IP/SSL Communication
  • m_iscommadelimited — Checks to see if response is comma delimited
  • m_maxconntimeout — The maximum amount of time the API will attempt a connection to MCVE
  • m_monitor — Perform communication with MCVE (send/receive data) Non-blocking
  • m_numcolumns — Number of columns returned in a comma delimited response
  • m_numrows — Number of rows returned in a comma delimited response
  • m_parsecommadelimited — Parse the comma delimited response so m_getcell, etc will work
  • m_responsekeys — Returns array of strings which represents the keys that can be used for response parameters on this transaction
  • m_responseparam — Get a custom response parameter
  • m_returnstatus — Check to see if the transaction was successful
  • m_setblocking — Set blocking/non-blocking mode for connection
  • m_setdropfile — Set the connection method to Drop-File
  • m_setip — Set the connection method to IP
  • m_setssl_cafile — Set SSL CA (Certificate Authority) file for verification of server certificate
  • m_setssl_files — Set certificate key files and certificates if server requires client certificate verification
  • m_setssl — Set the connection method to SSL
  • m_settimeout — Set maximum transaction time (per trans)
  • m_sslcert_gen_hash — Generate hash for SSL client certificate verification
  • m_transactionssent — Check to see if outgoing buffer is clear
  • m_transinqueue — Number of transactions in client-queue
  • m_transkeyval — Add key/value pair to a transaction. Replaces deprecated transparam()
  • m_transnew — Start a new transaction
  • m_transsend — Finalize and send the transaction
  • m_uwait — Wait x microsecs
  • m_validateidentifier — Whether or not to validate the passed identifier on any transaction it is passed to
  • m_verifyconnection — Set whether or not to PING upon connect to verify connection
  • m_verifysslcert — Set whether or not to verify the server ssl certificate
Constantes pré-definidas
m_checkstatus
MCVE


Check to see if a transaction has completed

MCVE Funções
m_completeauthorizations
MCVE Funções
PHP Manual

m_checkstatus

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_checkstatus — Check to see if a transaction has completed

Descrição

int m_checkstatus ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

MCVE Funções
m_completeauthorizations
MCVE Funções


Number of complete authorizations in queue, returning an array of their identifiers

m_checkstatus
m_connect
MCVE Funções
PHP Manual

m_completeauthorizations

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_completeauthorizations — Number of complete authorizations in queue, returning an array of their identifiers

Descrição

int m_completeauthorizations ( resource $conn , int &$array )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

array

Its description

Valor Retornado

What the function returns, first on success, then on failure. See also the &return.success; entity

m_checkstatus
m_connect
MCVE Funções


Establish the connection to MCVE

m_completeauthorizations
m_connectionerror
MCVE Funções
PHP Manual

m_connect

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_connect — Establish the connection to MCVE

Descrição

int m_connect ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_completeauthorizations
m_connectionerror
MCVE Funções


Get a textual representation of why a connection failed

m_connect
m_deletetrans
MCVE Funções
PHP Manual

m_connectionerror

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_connectionerror — Get a textual representation of why a connection failed

Descrição

string m_connectionerror ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_connect
m_deletetrans
MCVE Funções


Delete specified transaction from MCVE_CONN structure

m_connectionerror
m_destroyconn
MCVE Funções
PHP Manual

m_deletetrans

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_deletetrans — Delete specified transaction from MCVE_CONN structure

Descrição

bool m_deletetrans ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_connectionerror
m_destroyconn
MCVE Funções


Destroy the connection and MCVE_CONN structure

m_deletetrans
m_destroyengine
MCVE Funções
PHP Manual

m_destroyconn

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_destroyconn — Destroy the connection and MCVE_CONN structure

Descrição

bool m_destroyconn ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

Returns TRUE.

Veja Também

  • m_initconn() - Create and initialize an MCVE_CONN structure

m_deletetrans
m_destroyengine
MCVE Funções


Free memory associated with IP/SSL connectivity

m_destroyconn
m_getcell
MCVE Funções
PHP Manual

m_destroyengine

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_destroyengine — Free memory associated with IP/SSL connectivity

Descrição

void m_destroyengine ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

Não há valor retornado.

m_destroyconn
m_getcell
MCVE Funções


Get a specific cell from a comma delimited response by column name

m_destroyengine
m_getcellbynum
MCVE Funções
PHP Manual

m_getcell

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_getcell — Get a specific cell from a comma delimited response by column name

Descrição

string m_getcell ( resource $conn , int $identifier , string $column , int $row )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

column

row

Valor Retornado

m_destroyengine
m_getcellbynum
MCVE Funções


Get a specific cell from a comma delimited response by column number

m_getcell
m_getcommadelimited
MCVE Funções
PHP Manual

m_getcellbynum

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_getcellbynum — Get a specific cell from a comma delimited response by column number

Descrição

string m_getcellbynum ( resource $conn , int $identifier , int $column , int $row )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

column

row

Valor Retornado

m_getcell
m_getcommadelimited
MCVE Funções


Get the RAW comma delimited data returned from MCVE

m_getcellbynum
m_getheader
MCVE Funções
PHP Manual

m_getcommadelimited

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_getcommadelimited — Get the RAW comma delimited data returned from MCVE

Descrição

string m_getcommadelimited ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_getcellbynum
m_getheader
MCVE Funções


Get the name of the column in a comma-delimited response

m_getcommadelimited
m_initconn
MCVE Funções
PHP Manual

m_getheader

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_getheader — Get the name of the column in a comma-delimited response

Descrição

string m_getheader ( resource $conn , int $identifier , int $column_num )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

column_num

Valor Retornado

m_getcommadelimited
m_initconn
MCVE Funções


Create and initialize an MCVE_CONN structure

m_getheader
m_initengine
MCVE Funções
PHP Manual

m_initconn

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_initconn — Create and initialize an MCVE_CONN structure

Descrição

resource m_initconn ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Returns an MCVE_CONN resource.

Veja Também

  • m_destroyconn() - Destroy the connection and MCVE_CONN structure

m_getheader
m_initengine
MCVE Funções


Ready the client for IP/SSL Communication

m_initconn
m_iscommadelimited
MCVE Funções
PHP Manual

m_initengine

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_initengine — Ready the client for IP/SSL Communication

Descrição

int m_initengine ( string $location )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

location

Valor Retornado

m_initconn
m_iscommadelimited
MCVE Funções


Checks to see if response is comma delimited

m_initengine
m_maxconntimeout
MCVE Funções
PHP Manual

m_iscommadelimited

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_iscommadelimited — Checks to see if response is comma delimited

Descrição

int m_iscommadelimited ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_initengine
m_maxconntimeout
MCVE Funções


The maximum amount of time the API will attempt a connection to MCVE

m_iscommadelimited
m_monitor
MCVE Funções
PHP Manual

m_maxconntimeout

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_maxconntimeout — The maximum amount of time the API will attempt a connection to MCVE

Descrição

bool m_maxconntimeout ( resource $conn , int $secs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

secs

Valor Retornado

m_iscommadelimited
m_monitor
MCVE Funções


Perform communication with MCVE (send/receive data) Non-blocking

m_maxconntimeout
m_numcolumns
MCVE Funções
PHP Manual

m_monitor

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_monitor — Perform communication with MCVE (send/receive data) Non-blocking

Descrição

int m_monitor ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_maxconntimeout
m_numcolumns
MCVE Funções


Number of columns returned in a comma delimited response

m_monitor
m_numrows
MCVE Funções
PHP Manual

m_numcolumns

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_numcolumns — Number of columns returned in a comma delimited response

Descrição

int m_numcolumns ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_monitor
m_numrows
MCVE Funções


Number of rows returned in a comma delimited response

m_numcolumns
m_parsecommadelimited
MCVE Funções
PHP Manual

m_numrows

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_numrows — Number of rows returned in a comma delimited response

Descrição

int m_numrows ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_numcolumns
m_parsecommadelimited
MCVE Funções


Parse the comma delimited response so m_getcell, etc will work

m_numrows
m_responsekeys
MCVE Funções
PHP Manual

m_parsecommadelimited

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_parsecommadelimited — Parse the comma delimited response so m_getcell, etc will work

Descrição

int m_parsecommadelimited ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_numrows
m_responsekeys
MCVE Funções


Returns array of strings which represents the keys that can be used for response parameters on this transaction

m_parsecommadelimited
m_responseparam
MCVE Funções
PHP Manual

m_responsekeys

(PHP 5 >= 5.0.5, PECL mcve >= 1.0.0)

m_responsekeys — Returns array of strings which represents the keys that can be used for response parameters on this transaction

Descrição

array m_responsekeys ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_parsecommadelimited
m_responseparam
MCVE Funções


Get a custom response parameter

m_responsekeys
m_returnstatus
MCVE Funções
PHP Manual

m_responseparam

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_responseparam — Get a custom response parameter

Descrição

string m_responseparam ( resource $conn , int $identifier , string $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

key

Valor Retornado

m_responsekeys
m_returnstatus
MCVE Funções


Check to see if the transaction was successful

m_responseparam
m_setblocking
MCVE Funções
PHP Manual

m_returnstatus

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_returnstatus — Check to see if the transaction was successful

Descrição

int m_returnstatus ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_responseparam
m_setblocking
MCVE Funções


Set blocking/non-blocking mode for connection

m_returnstatus
m_setdropfile
MCVE Funções
PHP Manual

m_setblocking

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_setblocking — Set blocking/non-blocking mode for connection

Descrição

int m_setblocking ( resource $conn , int $tf )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

tf

Valor Retornado

m_returnstatus
m_setdropfile
MCVE Funções


Set the connection method to Drop-File

m_setblocking
m_setip
MCVE Funções
PHP Manual

m_setdropfile

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_setdropfile — Set the connection method to Drop-File

Descrição

int m_setdropfile ( resource $conn , string $directory )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

directory

Valor Retornado

m_setblocking
m_setip
MCVE Funções


Set the connection method to IP

m_setdropfile
m_setssl_cafile
MCVE Funções
PHP Manual

m_setip

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_setip — Set the connection method to IP

Descrição

int m_setip ( resource $conn , string $host , int $port )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

host

port

Valor Retornado

m_setdropfile
m_setssl_cafile
MCVE Funções


Set SSL CA (Certificate Authority) file for verification of server certificate

m_setip
m_setssl_files
MCVE Funções
PHP Manual

m_setssl_cafile

(PHP 5 >= 5.0.5, PECL mcve >= 1.0.0)

m_setssl_cafile — Set SSL CA (Certificate Authority) file for verification of server certificate

Descrição

int m_setssl_cafile ( resource $conn , string $cafile )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

cafile

Valor Retornado

m_setip
m_setssl_files
MCVE Funções


Set certificate key files and certificates if server requires client certificate verification

m_setssl_cafile
m_setssl
MCVE Funções
PHP Manual

m_setssl_files

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_setssl_files — Set certificate key files and certificates if server requires client certificate verification

Descrição

int m_setssl_files ( resource $conn , string $sslkeyfile , string $sslcertfile )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

sslkeyfile

sslcertfile

Valor Retornado

m_setssl_cafile
m_setssl
MCVE Funções


Set the connection method to SSL

m_setssl_files
m_settimeout
MCVE Funções
PHP Manual

m_setssl

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_setssl — Set the connection method to SSL

Descrição

int m_setssl ( resource $conn , string $host , int $port )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

host

port

Valor Retornado

m_setssl_files
m_settimeout
MCVE Funções


Set maximum transaction time (per trans)

m_setssl
m_sslcert_gen_hash
MCVE Funções
PHP Manual

m_settimeout

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_settimeout — Set maximum transaction time (per trans)

Descrição

int m_settimeout ( resource $conn , int $seconds )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

seconds

Valor Retornado

m_setssl
m_sslcert_gen_hash
MCVE Funções


Generate hash for SSL client certificate verification

m_settimeout
m_transactionssent
MCVE Funções
PHP Manual

m_sslcert_gen_hash

(PECL mcve >= 5.2.0)

m_sslcert_gen_hash — Generate hash for SSL client certificate verification

Descrição

string m_sslcert_gen_hash ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filename

Valor Retornado

m_settimeout
m_transactionssent
MCVE Funções


Check to see if outgoing buffer is clear

m_sslcert_gen_hash
m_transinqueue
MCVE Funções
PHP Manual

m_transactionssent

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_transactionssent — Check to see if outgoing buffer is clear

Descrição

int m_transactionssent ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_sslcert_gen_hash
m_transinqueue
MCVE Funções


Number of transactions in client-queue

m_transactionssent
m_transkeyval
MCVE Funções
PHP Manual

m_transinqueue

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_transinqueue — Number of transactions in client-queue

Descrição

int m_transinqueue ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_transactionssent
m_transkeyval
MCVE Funções


Add key/value pair to a transaction. Replaces deprecated transparam()

m_transinqueue
m_transnew
MCVE Funções
PHP Manual

m_transkeyval

(PHP 5 >= 5.0.5, PECL mcve >= 1.0.0)

m_transkeyval — Add key/value pair to a transaction. Replaces deprecated transparam()

Descrição

int m_transkeyval ( resource $conn , int $identifier , string $key , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

key

value

Valor Retornado

m_transinqueue
m_transnew
MCVE Funções


Start a new transaction

m_transkeyval
m_transsend
MCVE Funções
PHP Manual

m_transnew

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_transnew — Start a new transaction

Descrição

int m_transnew ( resource $conn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

Valor Retornado

m_transkeyval
m_transsend
MCVE Funções


Finalize and send the transaction

m_transnew
m_uwait
MCVE Funções
PHP Manual

m_transsend

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_transsend — Finalize and send the transaction

Descrição

int m_transsend ( resource $conn , int $identifier )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

identifier

Valor Retornado

m_transnew
m_uwait
MCVE Funções


Wait x microsecs

m_transsend
m_validateidentifier
MCVE Funções
PHP Manual

m_uwait

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_uwait — Wait x microsecs

Descrição

int m_uwait ( int $microsecs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

microsecs

Valor Retornado

m_transsend
m_validateidentifier
MCVE Funções


Whether or not to validate the passed identifier on any transaction it is passed to

m_uwait
m_verifyconnection
MCVE Funções
PHP Manual

m_validateidentifier

(PHP 5 >= 5.0.5, PECL mcve >= 1.0.0)

m_validateidentifier — Whether or not to validate the passed identifier on any transaction it is passed to

Descrição

int m_validateidentifier ( resource $conn , int $tf )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

tf

Valor Retornado

m_uwait
m_verifyconnection
MCVE Funções


Set whether or not to PING upon connect to verify connection

m_validateidentifier
m_verifysslcert
MCVE Funções
PHP Manual

m_verifyconnection

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_verifyconnection — Set whether or not to PING upon connect to verify connection

Descrição

bool m_verifyconnection ( resource $conn , int $tf )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

tf

Valor Retornado

m_validateidentifier
m_verifysslcert
MCVE Funções


Set whether or not to verify the server ssl certificate

m_verifyconnection
SPPLUS
MCVE Funções
PHP Manual

m_verifysslcert

(PHP 4 >= 4.3.9, PHP 5 <= 5.0.5, PECL mcve >= 1.0.0)

m_verifysslcert — Set whether or not to verify the server ssl certificate

Descrição

bool m_verifysslcert ( resource $conn , int $tf )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

conn

Um recurso MCVE_CONN retornado por m_initengine().

tf

Valor Retornado

m_verifyconnection
SPPLUS
MCVE Funções


SPPLUS Payment System

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para SPPLUS
    • calcul_hmac — Obtém uma chave hmac (precisa 8 argumentos)
    • calculhmac — Obtém uma chave hmac (precisa 2 argumentos)
    • nthmac — Obtém uma chave nthmac (precisa 2 argumentos)
    • signeurlpaiement — Obtém uma url de pagamento (precisa 2 argumentos)
m_verifysslcert
Introdução
Processamento de Cartão de Crédito


Introdução

Esta extensão dá a você possibilidade de usar o » SPPLUS Payment System do Caisse d'Epargne (um banco francês).

Nota: Esta extensão não está disponível na plataforma Windows.

Consulte os arquivos README no fonte do kit_php da distribuição para detalhes de configuração.

SPPLUS
Instalação/Configuração
SPPLUS


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SPPLUS


Dependências

Nota: Você precisa no mínimo do PHP 4.1.0 e SPPLUS v.3

Nota: Você precisará obter o novo kit_php para spplus. Sinta-se livre para contactar o manentedor se você não conseguir.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

pequena nota sobre a instalação:

  • Você precisa no mínimo do PHP 4.3.0 para a compressão funcionar
  • Para instalar em PHP 4.3.0 e superior no prompt de comando Unix, digite pear install pecl/spplus

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções para SPPLUS
SPPLUS


Funções para SPPLUS

Índice

  • calcul_hmac — Obtém uma chave hmac (precisa 8 argumentos)
  • calculhmac — Obtém uma chave hmac (precisa 2 argumentos)
  • nthmac — Obtém uma chave nthmac (precisa 2 argumentos)
  • signeurlpaiement — Obtém uma url de pagamento (precisa 2 argumentos)
Constantes pré-definidas
calcul_hmac
SPPLUS


Obtém uma chave hmac (precisa 8 argumentos)

Funções para SPPLUS
calculhmac
Funções para SPPLUS
PHP Manual

calcul_hmac

(PECL spplus >= 1.0.0)

calcul_hmac — Obtém uma chave hmac (precisa 8 argumentos)

Descrição

string calcul_hmac ( string $clent , string $siretcode , string $price , string $reference , string $validity , string $taxation , string $devise , string $language )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Funções para SPPLUS
calculhmac
Funções para SPPLUS


Obtém uma chave hmac (precisa 2 argumentos)

calcul_hmac
nthmac
Funções para SPPLUS
PHP Manual

calculhmac

(PECL spplus >= 1.0.0)

calculhmac — Obtém uma chave hmac (precisa 2 argumentos)

Descrição

string calculhmac ( string $clent , string $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

calcul_hmac
nthmac
Funções para SPPLUS


Obtém uma chave nthmac (precisa 2 argumentos)

calculhmac
signeurlpaiement
Funções para SPPLUS
PHP Manual

nthmac

(PECL spplus >= 1.0.0)

nthmac — Obtém uma chave nthmac (precisa 2 argumentos)

Descrição

string nthmac ( string $clent , string $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

calculhmac
signeurlpaiement
Funções para SPPLUS


Obtém uma url de pagamento (precisa 2 argumentos)

nthmac
Extensões para Criptografia
Funções para SPPLUS
PHP Manual

signeurlpaiement

(PECL spplus >= 1.0.0)

signeurlpaiement — Obtém uma url de pagamento (precisa 2 argumentos)

Descrição

string nthmac ( string $clent , string $data )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

nthmac
Extensões para Criptografia
Funções para SPPLUS


Extensões para Criptografia

  • Crack
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da Crack
  • Hash — HASH Message Digest Framework
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Hash Funções
  • Mcrypt
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Mcrypt ciphers
    • Exemplos
    • Mcrypt Funções
  • Mhash
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da Mhash
  • OpenSSL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Key/Certificate parameters
    • Certificate Verification
    • OpenSSL Funções
signeurlpaiement
Crack
Referência das Funções


Crack

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da Crack
    • crack_check — Faz uma conferencia obscura com a senha indicada
    • crack_closedict — Fecha um dicionário CrackLib aberto
    • crack_getlastmessage — Retorna a mensagem do último teste de senha
    • crack_opendict — Abre um novo dicionário CrackLib
Extensões para Criptografia
Introdução
Extensões para Criptografia


Introdução

Estas funções permitem a você usar a biblioteca CrackLib para testar a 'força' de uma senha. A 'força' de uma senha é testada pelo seu tamanho, uso de letras maiúsculas e minúsculas, e conferido em um dicionário CrackLib especificado. CrackLib irá também dar mensagens de diagnóstico utéis que irão ajudar a 'fortalecer' a sua senha.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

Crack
Instalação/Configuração
Crack


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Crack


Dependências

Maiores informações sobre a biblioteca CrackLib podem ser encontradas em » http://sourceforge.net/projects/cracklib.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/crack.

No PHP 4, os fontes desta estensão PECL podem ser encontrados no diretório ext/ ou dentro dos fontes do PHP ou no link PECL acima. Para poder usar estas funções você deverá compilar o PHP com suporte a Crack usando a opção de configuração --with-crack[=DIR] .

Usuários do windows devem abilitar php_crack.dll dentro do php.ini para poder usar estas funções. No PHP esta DLL reside no diretório extensions/ junto aos binários do PHP para Windows. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração Crack
Nome | Padrão | Modificável | Changelog
crack.default_dictionary | NULL | PHP_INI_PERDIR | PHP_INI_SYSTEM no crack <= 0.2. Disponível desde PHP 4.0.5. Removido no PHP 5.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

A extenção CrackLib define um identificador de resource de dicionário retornado pela crack_opendict().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Crack


Exemplos

Este exemplo mostra como abrir um dicionário CrackLib, testar uma dada senha, receber alguma mensagem de diagnóstico, e fechar o dicionário.

Exemplo #1 Exemplo da CrackLib

<?php
// Open CrackLib Dictionary
$dictionary = crack_opendict('/usr/local/lib/pw_dict')
     or die('Unable to open CrackLib dictionary');

// Perform password check
$check = crack_check($dictionary, 'gx9A2s0x');

// Retrieve messages
$diag = crack_getlastmessage();
echo $diag; // 'strong password'

// Close dictionary
crack_closedict($dictionary);
?>

Nota:

Se crack_check() retorna TRUE, crack_getlastmessage() retornará 'strong password'.

Constantes pré-definidas
Funções da Crack
Crack


Funções da Crack

Índice

  • crack_check — Faz uma conferencia obscura com a senha indicada
  • crack_closedict — Fecha um dicionário CrackLib aberto
  • crack_getlastmessage — Retorna a mensagem do último teste de senha
  • crack_opendict — Abre um novo dicionário CrackLib
Exemplos
crack_check
Crack


Faz uma conferencia obscura com a senha indicada

Funções da Crack
crack_closedict
Funções da Crack
PHP Manual

crack_check

(PECL crack >= 0.1)

crack_check — Faz uma conferencia obscura com a senha indicada

Descrição

bool crack_check ( resource $dictionary , string $password )
bool crack_check ( string $password )

Realiza uma conferencia obscura com o password dado no dicionário especificado.

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

dictionary

O dicionário crack lib. Se não for especificado, o último dicionário aberto é usado.

password

O password testado.

Valor Retornado

Retorna TRUE se password é forte, ou FALSE se não for.

Funções da Crack
crack_closedict
Funções da Crack


Fecha um dicionário CrackLib aberto

crack_check
crack_getlastmessage
Funções da Crack
PHP Manual

crack_closedict

(PECL crack >= 0.1)

crack_closedict — Fecha um dicionário CrackLib aberto

Descrição

bool crack_closedict ([ resource $dictionary ] )

crack_closedict() fecha o identificador de dictionary indicado.

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

dictionary

O dicinário para fechar. Se não for especificado, o diretório atual é fechado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • crack_opendict() - Abre um novo dicionário CrackLib

crack_check
crack_getlastmessage
Funções da Crack


Retorna a mensagem do último teste de senha

crack_closedict
crack_opendict
Funções da Crack
PHP Manual

crack_getlastmessage

(PECL crack >= 0.1)

crack_getlastmessage — Retorna a mensagem do último teste de senha

Descrição

string crack_getlastmessage ( void )

crack_getlastmessage() retorna a mensagem do último teste de senha.

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Valor Retornado

A mensagem do ultimo teste de senha ou FALSE se não houve testes feitos até agora.

A mensagem retornada é uma de:

  • it's WAY too short
  • it is too short
  • it does not contain enough DIFFERENT characters
  • it is all whitespace
  • it is too simplistic/systematic
  • it looks like a National Insurance number.
  • it is based on a dictionary word
  • it is based on a (reversed) dictionary word
  • strong password

Veja Também

  • crack_check() - Faz uma conferencia obscura com a senha indicada

crack_closedict
crack_opendict
Funções da Crack


Abre um novo dicionário CrackLib

crack_getlastmessage
Hash
Funções da Crack
PHP Manual

crack_opendict

(PECL crack >= 0.1)

crack_opendict — Abre um novo dicionário CrackLib

Descrição

resource crack_opendict ( string $dictionary )

crack_opendict() abre o dictionary CrackLib especificado para usar com a função crack_check().

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Nota:

Apenas um dicionário pode estar aberto de cada vez.

Parâmetros

dictionary

O caminho para o dicinário Cracklib.

Valor Retornado

Retorna o identificador de recurso do dicionário em caso de sucesso, ou FALSE em caso de falha.

Veja Também

  • crack_check() - Faz uma conferencia obscura com a senha indicada
  • crack_closedict() - Fecha um dicionário CrackLib aberto

crack_getlastmessage
Hash
Funções da Crack


HASH Message Digest Framework

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Hash Funções
    • hash_algos — Return a list of registered hashing algorithms
    • hash_copy — Copy hashing context
    • hash_file — Generate a hash value using the contents of a given file
    • hash_final — Finalize an incremental hash and return resulting digest
    • hash_hmac_file — Generate a keyed hash value using the HMAC method and the contents of a given file
    • hash_hmac — Generate a keyed hash value using the HMAC method
    • hash_init — Initialize an incremental hashing context
    • hash_update_file — Pump data into an active hashing context from a file
    • hash_update_stream — Pump data into an active hashing context from an open stream
    • hash_update — Pump data into an active hashing context
    • hash — Generate a hash value (message digest)
crack_opendict
Introdução
Extensões para Criptografia


Introdução

Message Digest (hash) engine. Allows direct or incremental processing of arbitrary length messages using a variety of hashing algorithms.

Hash
Instalação/Configuração
Hash


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Hash


Dependências

The Hash extension requires no external libraries and is enabled by default as of PHP 5.1.2. It may be explicitly disabled by using the --disable-hash switch to configure. Earlier versions of PHP may incorporate the Hash extension by installing the » PECL module.

Instalação/Configuração
Instalação
Instalação/Configuração


Tipos Resource

This extension defines a Hashing Context resource returned by hash_init().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

HASH_HMAC (integer)
Optional flag for hash_init(). Indicates that the HMAC digest-keying algorithm should be applied to the current hashing context.
Tipos Resource
Hash Funções
Hash


Hash Funções

Índice

  • hash_algos — Return a list of registered hashing algorithms
  • hash_copy — Copy hashing context
  • hash_file — Generate a hash value using the contents of a given file
  • hash_final — Finalize an incremental hash and return resulting digest
  • hash_hmac_file — Generate a keyed hash value using the HMAC method and the contents of a given file
  • hash_hmac — Generate a keyed hash value using the HMAC method
  • hash_init — Initialize an incremental hashing context
  • hash_update_file — Pump data into an active hashing context from a file
  • hash_update_stream — Pump data into an active hashing context from an open stream
  • hash_update — Pump data into an active hashing context
  • hash — Generate a hash value (message digest)
Constantes pré-definidas
hash_algos
Hash


Return a list of registered hashing algorithms

Hash Funções
hash_copy
Hash Funções
PHP Manual

hash_algos

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_algos — Return a list of registered hashing algorithms

Descrição

array hash_algos ( void )

Valor Retornado

Returns a numerically indexed array containing the list of supported hashing algorithms.

Exemplos

Exemplo #1 hash_algos() example

As of PHP 5.1.2, hash_algos() will return the following list of algorithm names.

<?php
print_r(hash_algos());
?>

O exemplo acima irá imprimir:

Array
(
    [0] => md4
    [1] => md5
    [2] => sha1
    [3] => sha256
    [4] => sha384
    [5] => sha512
    [6] => ripemd128
    [7] => ripemd160
    [8] => whirlpool
    [9] => tiger128,3
    [10] => tiger160,3
    [11] => tiger192,3
    [12] => tiger128,4
    [13] => tiger160,4
    [14] => tiger192,4
    [15] => snefru
    [16] => gost
    [17] => adler32
    [18] => crc32
    [19] => crc32b
    [20] => haval128,3
    [21] => haval160,3
    [22] => haval192,3
    [23] => haval224,3
    [24] => haval256,3
    [25] => haval128,4
    [26] => haval160,4
    [27] => haval192,4
    [28] => haval224,4
    [29] => haval256,4
    [30] => haval128,5
    [31] => haval160,5
    [32] => haval192,5
    [33] => haval224,5
    [34] => haval256,5
)

Hash Funções
hash_copy
Hash Funções


Copy hashing context

hash_algos
hash_file
Hash Funções
PHP Manual

hash_copy

(PHP 5 >= 5.3.0)

hash_copy — Copy hashing context

Descrição

resource hash_copy ( resource $context )

Parâmetros

context

Hashing context returned by hash_init().

Valor Retornado

Returns a copy of Hashing Context resource.

Exemplos

Exemplo #1 hash_copy() example

<?php
$context = hash_init("md5");
hash_update($context, "data");

/* copy context to be able to continue using it */
$copy_context = hash_copy($context);

echo hash_final($context), "\n";

hash_update($copy_context, "data");
echo hash_final($copy_context), "\n";
?>

O exemplo acima irá imprimir:

8d777f385d3dfec8815d20f7496026dc
511ae0b1c13f95e5f08f1a0dd3da3d93

hash_algos
hash_file
Hash Funções


Generate a hash value using the contents of a given file

hash_copy
hash_final
Hash Funções
PHP Manual

hash_file

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_file — Generate a hash value using the contents of a given file

Descrição

string hash_file ( string $algo , string $filename [, bool $raw_output = false ] )

Parâmetros

algo

Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..)

filename

URL describing location of file to be hashed; Supports fopen wrappers.

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Valor Retornado

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Exemplos

Exemplo #1 Using hash_file()

<?php
/* Create a file to calculate hash of */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');

echo hash_file('md5', 'example.txt');
?>

O exemplo acima irá imprimir:

5c6ffbdd40d9556b73a21e63c3e0e904

Veja Também

  • hash() - Generate a hash value (message digest)
  • hash_hmac_file() - Generate a keyed hash value using the HMAC method and the contents of a given file
  • hash_update_file() - Pump data into an active hashing context from a file
  • md5_file() - Calcula hash md5 de um dado arquivo
  • sha1_file() - Calcula a hash sha1 de um arquivo

hash_copy
hash_final
Hash Funções


Finalize an incremental hash and return resulting digest

hash_file
hash_hmac_file
Hash Funções
PHP Manual

hash_final

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_final — Finalize an incremental hash and return resulting digest

Descrição

string hash_final ( resource $context [, bool $raw_output = false ] )

Parâmetros

context

Hashing context returned by hash_init().

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Valor Retornado

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Exemplos

Exemplo #1 hash_final() example

<?php
$ctx = hash_init('sha1');
hash_update($ctx, 'The quick brown fox jumped over the lazy dog.');
echo hash_final($ctx);
?>

O exemplo acima irá imprimir:

c0854fb9fb03c41cce3802cb0d220529e6eef94e

Veja Também

  • hash_init() - Initialize an incremental hashing context
  • hash_update() - Pump data into an active hashing context
  • hash_update_stream() - Pump data into an active hashing context from an open stream
  • hash_update_file() - Pump data into an active hashing context from a file

hash_file
hash_hmac_file
Hash Funções


Generate a keyed hash value using the HMAC method and the contents of a given file

hash_final
hash_hmac
Hash Funções
PHP Manual

hash_hmac_file

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_hmac_file — Generate a keyed hash value using the HMAC method and the contents of a given file

Descrição

string hash_hmac_file ( string $algo , string $filename , string $key [, bool $raw_output = false ] )

Parâmetros

algo

Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..) See hash_algos() for a list of supported algorithms.

filename

URL describing location of file to be hashed; Supports fopen wrappers.

key

Shared secret key used for generating the HMAC variant of the message digest.

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Valor Retornado

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Exemplos

Exemplo #1 hash_hmac_file() example

<?php
/* Create a file to calculate hash of */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');

echo hash_hmac_file('md5', 'example.txt', 'secret');
?>

O exemplo acima irá imprimir:

7eb2b5c37443418fc77c136dd20e859c

Veja Também

  • hash_algos() - Return a list of registered hashing algorithms
  • hash_hmac() - Generate a keyed hash value using the HMAC method
  • hash_file() - Generate a hash value using the contents of a given file

hash_final
hash_hmac
Hash Funções


Generate a keyed hash value using the HMAC method

hash_hmac_file
hash_init
Hash Funções
PHP Manual

hash_hmac

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_hmac — Generate a keyed hash value using the HMAC method

Descrição

string hash_hmac ( string $algo , string $data , string $key [, bool $raw_output = false ] )

Parâmetros

algo

Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..) See hash_algos() for a list of supported algorithms.

data

Message to be hashed.

key

Shared secret key used for generating the HMAC variant of the message digest.

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Valor Retornado

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Exemplos

Exemplo #1 hash_hmac() example

<?php
echo hash_hmac('ripemd160', 'The quick brown fox jumped over the lazy dog.', 'secret');
?>

O exemplo acima irá imprimir:

b8e7ae12510bdfb1812e463a7f086122cf37e4f7

Veja Também

  • hash() - Generate a hash value (message digest)
  • hash_algos() - Return a list of registered hashing algorithms
  • hash_init() - Initialize an incremental hashing context
  • hash_hmac_file() - Generate a keyed hash value using the HMAC method and the contents of a given file

hash_hmac_file
hash_init
Hash Funções


Initialize an incremental hashing context

hash_hmac
hash_update_file
Hash Funções
PHP Manual

hash_init

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_init — Initialize an incremental hashing context

Descrição

resource hash_init ( string $algo [, int $options = 0 [, string $key = NULL ]] )

Parâmetros

algo

Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..)

options

Optional settings for hash generation, currently supports only one option: HASH_HMAC. When specified, the key must be specified.

key

When HASH_HMAC is specified for options, a shared secret key to be used with the HMAC hashing method must be supplied in this parameter.

Valor Retornado

Returns a Hashing Context resource for use with hash_update(), hash_update_stream(), hash_update_file(), and hash_final().

Exemplos

Exemplo #1 Incremental hashing example

<?php
$ctx = hash_init('md5');
hash_update($ctx, 'The quick brown fox ');
hash_update($ctx, 'jumped over the lazy dog.');
echo hash_final($ctx);
?>

O exemplo acima irá imprimir:

5c6ffbdd40d9556b73a21e63c3e0e904

Veja Também

  • hash() - Generate a hash value (message digest)
  • hash_file() - Generate a hash value using the contents of a given file
  • hash_hmac() - Generate a keyed hash value using the HMAC method
  • hash_hmac_file() - Generate a keyed hash value using the HMAC method and the contents of a given file

hash_hmac
hash_update_file
Hash Funções


Pump data into an active hashing context from a file

hash_init
hash_update_stream
Hash Funções
PHP Manual

hash_update_file

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_update_file — Pump data into an active hashing context from a file

Descrição

bool hash_update_file ( resource $context , string $filename [, resource $context = NULL ] )

Parâmetros

context

Hashing context returned by hash_init().

filename

URL describing location of file to be hashed; Supports fopen wrappers.

context

Stream context as returned by stream_context_create().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hash_init() - Initialize an incremental hashing context
  • hash_update() - Pump data into an active hashing context
  • hash_update_stream() - Pump data into an active hashing context from an open stream
  • hash_final() - Finalize an incremental hash and return resulting digest
  • hash() - Generate a hash value (message digest)
  • hash_file() - Generate a hash value using the contents of a given file

hash_init
hash_update_stream
Hash Funções


Pump data into an active hashing context from an open stream

hash_update_file
hash_update
Hash Funções
PHP Manual

hash_update_stream

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_update_stream — Pump data into an active hashing context from an open stream

Descrição

int hash_update_stream ( resource $context , resource $handle [, int $length = -1 ] )

Parâmetros

context

Hashing context returned by hash_init().

handle

Open file handle as returned by any stream creation function.

length

Maximum number of characters to copy from handle into the hashing context.

Valor Retornado

Actual number of bytes added to the hashing context from handle.

Exemplos

Exemplo #1 hash_update_stream() example

<?php
$fp = tmpfile();
fwrite($fp, 'The quick brown fox jumped over the lazy dog.');
rewind($fp);

$ctx = hash_init('md5');
hash_update_stream($ctx, $fp);
echo hash_final($ctx);
?>

O exemplo acima irá imprimir:

5c6ffbdd40d9556b73a21e63c3e0e904

Veja Também

  • hash_init() - Initialize an incremental hashing context
  • hash_update() - Pump data into an active hashing context
  • hash_final() - Finalize an incremental hash and return resulting digest
  • hash() - Generate a hash value (message digest)
  • hash_file() - Generate a hash value using the contents of a given file

hash_update_file
hash_update
Hash Funções


Pump data into an active hashing context

hash_update_stream
hash
Hash Funções
PHP Manual

hash_update

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash_update — Pump data into an active hashing context

Descrição

bool hash_update ( resource $context , string $data )

Parâmetros

context

Hashing context returned by hash_init().

data

Message to be included in the hash digest.

Valor Retornado

Returns TRUE.

Veja Também

  • hash_init() - Initialize an incremental hashing context
  • hash_update_file() - Pump data into an active hashing context from a file
  • hash_update_stream() - Pump data into an active hashing context from an open stream
  • hash_final() - Finalize an incremental hash and return resulting digest

hash_update_stream
hash
Hash Funções


Generate a hash value (message digest)

hash_update
Mcrypt
Hash Funções
PHP Manual

hash

(PHP 5 >= 5.1.2, PECL hash >= 1.1)

hash — Generate a hash value (message digest)

Descrição

string hash ( string $algo , string $data [, bool $raw_output = false ] )

Parâmetros

algo

Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..)

data

Message to be hashed.

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Valor Retornado

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Exemplos

Exemplo #1 A hash() example

<?php
echo hash('ripemd160', 'The quick brown fox jumped over the lazy dog.');
?>

O exemplo acima irá imprimir:

ec457d0a974c48d5685a7efa03d137dc8bbde7e3

Veja Também

  • hash_file() - Generate a hash value using the contents of a given file
  • hash_hmac() - Generate a keyed hash value using the HMAC method
  • hash_init() - Initialize an incremental hashing context
  • md5() - Calcula o "hash MD5" de uma string
  • sha1() - Calcula a hash sha1 de uma string

hash_update
Mcrypt
Hash Funções


Mcrypt

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Mcrypt ciphers
  • Exemplos
  • Mcrypt Funções
    • mcrypt_cbc — Encrypts/decrypts data in CBC mode
    • mcrypt_cfb — Encrypts/decrypts data in CFB mode
    • mcrypt_create_iv — Creates an initialization vector (IV) from a random source
    • mcrypt_decrypt — Decrypts crypttext with given parameters
    • mcrypt_ecb — Deprecated: Encrypts/decrypts data in ECB mode
    • mcrypt_enc_get_algorithms_name — Returns the name of the opened algorithm
    • mcrypt_enc_get_block_size — Returns the blocksize of the opened algorithm
    • mcrypt_enc_get_iv_size — Returns the size of the IV of the opened algorithm
    • mcrypt_enc_get_key_size — Returns the maximum supported keysize of the opened mode
    • mcrypt_enc_get_modes_name — Returns the name of the opened mode
    • mcrypt_enc_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm
    • mcrypt_enc_is_block_algorithm_mode — Checks whether the encryption of the opened mode works on blocks
    • mcrypt_enc_is_block_algorithm — Checks whether the algorithm of the opened mode is a block algorithm
    • mcrypt_enc_is_block_mode — Checks whether the opened mode outputs blocks
    • mcrypt_enc_self_test — Runs a self test on the opened module
    • mcrypt_encrypt — Encrypts plaintext with given parameters
    • mcrypt_generic_deinit — This function deinitializes an encryption module
    • mcrypt_generic_end — This function terminates encryption
    • mcrypt_generic_init — This function initializes all buffers needed for encryption
    • mcrypt_generic — This function encrypts data
    • mcrypt_get_block_size — Gets the block size of the specified cipher
    • mcrypt_get_cipher_name — Gets the name of the specified cipher
    • mcrypt_get_iv_size — Returns the size of the IV belonging to a specific cipher/mode combination
    • mcrypt_get_key_size — Gets the key size of the specified cipher
    • mcrypt_list_algorithms — Gets an array of all supported ciphers
    • mcrypt_list_modes — Gets an array of all supported modes
    • mcrypt_module_close — Closes the mcrypt module
    • mcrypt_module_get_algo_block_size — Returns the blocksize of the specified algorithm
    • mcrypt_module_get_algo_key_size — Returns the maximum supported keysize of the opened mode
    • mcrypt_module_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm
    • mcrypt_module_is_block_algorithm_mode — Returns if the specified module is a block algorithm or not
    • mcrypt_module_is_block_algorithm — This function checks whether the specified algorithm is a block algorithm
    • mcrypt_module_is_block_mode — Returns if the specified mode outputs blocks or not
    • mcrypt_module_open — Opens the module of the algorithm and the mode to be used
    • mcrypt_module_self_test — This function runs a self test on the specified module
    • mcrypt_ofb — Encrypts/decrypts data in OFB mode
    • mdecrypt_generic — Decrypts data
hash
Introdução
Extensões para Criptografia


Introdução

This is an interface to the mcrypt library, which supports a wide variety of block algorithms such as DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 and GOST in CBC, OFB, CFB and ECB cipher modes. Additionally, it supports RC6 and IDEA which are considered "non-free". CFB/OFB are 8bit by default.

Mcrypt
Instalação/Configuração
Mcrypt


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mcrypt


Dependências

These functions work using » mcrypt. To use it, download libmcrypt-x.x.tar.gz from » http://mcrypt.sourceforge.net/ and follow the included installation instructions.

As of PHP 5.0.0 you will need libmcrypt Version 2.5.6 or greater.

Windows users will find the library is the PHP 5.2 Windows binaries release. PHP 5.3 Windows binaries uses the static version of the MCrypt library, no DLL are needed.

If you linked against libmcrypt 2.4.x or higher, the following additional block algorithms are supported: CAST, LOKI97, RIJNDAEL, SAFERPLUS, SERPENT and the following stream ciphers: ENIGMA (crypt), PANAMA, RC4 and WAKE. With libmcrypt 2.4.x or higher another cipher mode is also available; nOFB.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

You need to compile PHP with the --with-mcrypt[=DIR] parameter to enable this extension. DIR is the mcrypt install directory. Make sure you compile libmcrypt with the option --disable-posix-threads .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Mcrypt configuration options
Name | Default | Changeable | Changelog
mcrypt.algorithms_dir | NULL | PHP_INI_ALL |
mcrypt.modes_dir | NULL | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mcrypt.algorithms_dir string

The directory that contains the algorithms. Defaults to the directories compiled within libmcrypt, which is typically /usr/local/lib/libmcrypt. See mcrypt_list_algorithms() for additional details.

mcrypt.modes_dir string

The directory that contains the modes. Defaults to the directories compiled within libmcrypt, which is typically /usr/local/lib/libmcrypt. See mcrypt_list_modes() for additional details.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

mcrypt_module_open() returns an encryption descriptor.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Mcrypt can operate in four block cipher modes (CBC, OFB, CFB, and ECB). If linked against libmcrypt-2.4.x or higher the functions can also operate in the block cipher mode nOFB and in STREAM mode. Below you find a list with all supported encryption modes together with the constants that are defines for the encryption mode. For a more complete reference and discussion see Applied Cryptography by Schneier (ISBN 0-471-11709-9).

  • MCRYPT_MODE_ECB (electronic codebook) is suitable for random data, such as encrypting other keys. Since data there is short and random, the disadvantages of ECB have a favorable negative effect.
  • MCRYPT_MODE_CBC (cipher block chaining) is especially suitable for encrypting files where the security is increased over ECB significantly.
  • MCRYPT_MODE_CFB (cipher feedback) is the best mode for encrypting byte streams where single bytes must be encrypted.
  • MCRYPT_MODE_OFB (output feedback, in 8bit) is comparable to CFB, but can be used in applications where error propagation cannot be tolerated. It's insecure (because it operates in 8bit mode) so it is not recommended to use it.
  • MCRYPT_MODE_NOFB (output feedback, in nbit) is comparable to OFB, but more secure because it operates on the block size of the algorithm.
  • MCRYPT_MODE_STREAM is an extra mode to include some stream algorithms like "WAKE" or "RC4".

Some other mode and random device constants:

MCRYPT_ENCRYPT (integer)
MCRYPT_DECRYPT (integer)
MCRYPT_DEV_RANDOM (integer)
MCRYPT_DEV_URANDOM (integer)
MCRYPT_RAND (integer)

Tipos Resource
Mcrypt ciphers
Mcrypt


Mcrypt ciphers

Here is a list of ciphers which are currently supported by the mcrypt extension. For a complete list of supported ciphers, see the defines at the end of mcrypt.h. The general rule with the mcrypt-2.2.x API is that you can access the cipher from PHP with MCRYPT_ciphername. With the libmcrypt-2.4.x and libmcrypt-2.5.x API these constants also work, but it is possible to specify the name of the cipher as a string with a call to mcrypt_module_open().

  • MCRYPT_3DES
  • MCRYPT_ARCFOUR_IV (libmcrypt > 2.4.x only)
  • MCRYPT_ARCFOUR (libmcrypt > 2.4.x only)
  • MCRYPT_BLOWFISH
  • MCRYPT_CAST_128
  • MCRYPT_CAST_256
  • MCRYPT_CRYPT
  • MCRYPT_DES
  • MCRYPT_DES_COMPAT (libmcrypt 2.2.x only)
  • MCRYPT_ENIGMA (libmcrypt > 2.4.x only, alias for MCRYPT_CRYPT)
  • MCRYPT_GOST
  • MCRYPT_IDEA (non-free)
  • MCRYPT_LOKI97 (libmcrypt > 2.4.x only)
  • MCRYPT_MARS (libmcrypt > 2.4.x only, non-free)
  • MCRYPT_PANAMA (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_128 (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_192 (libmcrypt > 2.4.x only)
  • MCRYPT_RIJNDAEL_256 (libmcrypt > 2.4.x only)
  • MCRYPT_RC2
  • MCRYPT_RC4 (libmcrypt 2.2.x only)
  • MCRYPT_RC6 (libmcrypt > 2.4.x only)
  • MCRYPT_RC6_128 (libmcrypt 2.2.x only)
  • MCRYPT_RC6_192 (libmcrypt 2.2.x only)
  • MCRYPT_RC6_256 (libmcrypt 2.2.x only)
  • MCRYPT_SAFER64
  • MCRYPT_SAFER128
  • MCRYPT_SAFERPLUS (libmcrypt > 2.4.x only)
  • MCRYPT_SERPENT(libmcrypt > 2.4.x only)
  • MCRYPT_SERPENT_128 (libmcrypt 2.2.x only)
  • MCRYPT_SERPENT_192 (libmcrypt 2.2.x only)
  • MCRYPT_SERPENT_256 (libmcrypt 2.2.x only)
  • MCRYPT_SKIPJACK (libmcrypt > 2.4.x only)
  • MCRYPT_TEAN (libmcrypt 2.2.x only)
  • MCRYPT_THREEWAY
  • MCRYPT_TRIPLEDES (libmcrypt > 2.4.x only)
  • MCRYPT_TWOFISH (for older mcrypt 2.x versions, or mcrypt > 2.4.x )
  • MCRYPT_TWOFISH128 (TWOFISHxxx are available in newer 2.x versions, but not in the 2.4.x versions)
  • MCRYPT_TWOFISH192
  • MCRYPT_TWOFISH256
  • MCRYPT_WAKE (libmcrypt > 2.4.x only)
  • MCRYPT_XTEA (libmcrypt > 2.4.x only)

You must (in CFB and OFB mode) or can (in CBC mode) supply an initialization vector (IV) to the respective cipher function. The IV must be unique and must be the same when decrypting/encrypting. With data which is stored encrypted, you can take the output of a function of the index under which the data is stored (e.g. the MD5 key of the filename). Alternatively, you can transmit the IV together with the encrypted data (see chapter 9.3 of Applied Cryptography by Schneier (ISBN 0-471-11709-9) for a discussion of this topic).

Constantes pré-definidas
Exemplos
Mcrypt


Exemplos

Mcrypt can be used to encrypt and decrypt using the above mentioned ciphers. If you linked against libmcrypt-2.2.x, the four important mcrypt commands (mcrypt_cfb(), mcrypt_cbc(), mcrypt_ecb(), and mcrypt_ofb()) can operate in both modes which are named MCRYPT_ENCRYPT and MCRYPT_DECRYPT, respectively.

Exemplo #1 Encrypt an input value with TripleDES under 2.2.x in ECB mode

<?php
$key = "this is a secret key";
$input = "Let us meet at 9 o'clock at the secret place.";

$encrypted_data = mcrypt_ecb (MCRYPT_3DES, $key, $input, MCRYPT_ENCRYPT);
?>
This example will give you the encrypted data as a string in $encrypted_data.

If you linked against libmcrypt 2.4.x or 2.5.x, these functions are still available, but it is recommended that you use the advanced functions.

Exemplo #2 Encrypt an input value with TripleDES under 2.4.x and higher in ECB mode

<?php
    $key = "this is a secret key";
    $input = "Let us meet at 9 o'clock at the secret place.";

    $td = mcrypt_module_open('tripledes', '', 'ecb', '');
    $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
    mcrypt_generic_init($td, $key, $iv);
    $encrypted_data = mcrypt_generic($td, $input);
    mcrypt_generic_deinit($td);
    mcrypt_module_close($td);
?>
This example will give you the encrypted data as a string in $encrypted_data. For a full example see mcrypt_module_open().

Mcrypt ciphers
Mcrypt Funções
Mcrypt


Mcrypt Funções

Índice

  • mcrypt_cbc — Encrypts/decrypts data in CBC mode
  • mcrypt_cfb — Encrypts/decrypts data in CFB mode
  • mcrypt_create_iv — Creates an initialization vector (IV) from a random source
  • mcrypt_decrypt — Decrypts crypttext with given parameters
  • mcrypt_ecb — Deprecated: Encrypts/decrypts data in ECB mode
  • mcrypt_enc_get_algorithms_name — Returns the name of the opened algorithm
  • mcrypt_enc_get_block_size — Returns the blocksize of the opened algorithm
  • mcrypt_enc_get_iv_size — Returns the size of the IV of the opened algorithm
  • mcrypt_enc_get_key_size — Returns the maximum supported keysize of the opened mode
  • mcrypt_enc_get_modes_name — Returns the name of the opened mode
  • mcrypt_enc_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm
  • mcrypt_enc_is_block_algorithm_mode — Checks whether the encryption of the opened mode works on blocks
  • mcrypt_enc_is_block_algorithm — Checks whether the algorithm of the opened mode is a block algorithm
  • mcrypt_enc_is_block_mode — Checks whether the opened mode outputs blocks
  • mcrypt_enc_self_test — Runs a self test on the opened module
  • mcrypt_encrypt — Encrypts plaintext with given parameters
  • mcrypt_generic_deinit — This function deinitializes an encryption module
  • mcrypt_generic_end — This function terminates encryption
  • mcrypt_generic_init — This function initializes all buffers needed for encryption
  • mcrypt_generic — This function encrypts data
  • mcrypt_get_block_size — Gets the block size of the specified cipher
  • mcrypt_get_cipher_name — Gets the name of the specified cipher
  • mcrypt_get_iv_size — Returns the size of the IV belonging to a specific cipher/mode combination
  • mcrypt_get_key_size — Gets the key size of the specified cipher
  • mcrypt_list_algorithms — Gets an array of all supported ciphers
  • mcrypt_list_modes — Gets an array of all supported modes
  • mcrypt_module_close — Closes the mcrypt module
  • mcrypt_module_get_algo_block_size — Returns the blocksize of the specified algorithm
  • mcrypt_module_get_algo_key_size — Returns the maximum supported keysize of the opened mode
  • mcrypt_module_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm
  • mcrypt_module_is_block_algorithm_mode — Returns if the specified module is a block algorithm or not
  • mcrypt_module_is_block_algorithm — This function checks whether the specified algorithm is a block algorithm
  • mcrypt_module_is_block_mode — Returns if the specified mode outputs blocks or not
  • mcrypt_module_open — Opens the module of the algorithm and the mode to be used
  • mcrypt_module_self_test — This function runs a self test on the specified module
  • mcrypt_ofb — Encrypts/decrypts data in OFB mode
  • mdecrypt_generic — Decrypts data
Exemplos
mcrypt_cbc
Mcrypt


Encrypts/decrypts data in CBC mode

Mcrypt Funções
mcrypt_cfb
Mcrypt Funções
PHP Manual

mcrypt_cbc

(PHP 4, PHP 5)

mcrypt_cbc — Encrypts/decrypts data in CBC mode

Descrição

string mcrypt_cbc ( int $cipher , string $key , string $data , int $mode [, string $iv ] )
string mcrypt_cbc ( string $cipher , string $key , string $data , int $mode [, string $iv ] )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or higher. The mode should be either MCRYPT_ENCRYPT or MCRYPT_DECRYPT.

This function should not be used anymore, see mcrypt_generic() and mdecrypt_generic() for replacements.

Mcrypt Funções
mcrypt_cfb
Mcrypt Funções


Encrypts/decrypts data in CFB mode

mcrypt_cbc
mcrypt_create_iv
Mcrypt Funções
PHP Manual

mcrypt_cfb

(PHP 4, PHP 5)

mcrypt_cfb — Encrypts/decrypts data in CFB mode

Descrição

string mcrypt_cfb ( int $cipher , string $key , string $data , int $mode , string $iv )
string mcrypt_cfb ( string $cipher , string $key , string $data , int $mode [, string $iv ] )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or higher. The mode should be either MCRYPT_ENCRYPT or MCRYPT_DECRYPT.

This function should not be used anymore, see mcrypt_generic() and mdecrypt_generic() for replacements.

mcrypt_cbc
mcrypt_create_iv
Mcrypt Funções


Creates an initialization vector (IV) from a random source

mcrypt_cfb
mcrypt_decrypt
Mcrypt Funções
PHP Manual

mcrypt_create_iv

(PHP 4, PHP 5)

mcrypt_create_iv — Creates an initialization vector (IV) from a random source

Descrição

string mcrypt_create_iv ( int $size [, int $source = MCRYPT_DEV_RANDOM ] )

Creates an initialization vector (IV) from a random source.

The IV is only meant to give an alternative seed to the encryption routines. This IV does not need to be secret at all, though it can be desirable. You even can send it along with your ciphertext without losing security.

Parâmetros

size

The size of the IV.

source

The source of the IV. The source can be MCRYPT_RAND (system random number generator), MCRYPT_DEV_RANDOM (read data from /dev/random) and MCRYPT_DEV_URANDOM (read data from /dev/urandom). Prior to 5.3.0, MCRYPT_RAND was the only one supported on Windows.

Valor Retornado

Returns the initialization vector, or FALSE on error.

Histórico

Versão | Descrição
5.3.0 | MCRYPT_DEV_RANDOM and MCRYPT_DEV_URANDOM became available on Windows platforms.
5.3.0 | It is no longer required to call srand() first. This is now done automatically.

Exemplos

Exemplo #1 mcrypt_create_iv() Example

<?php
    $size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB);
    $iv = mcrypt_create_iv($size, MCRYPT_DEV_RANDOM);
?>

Veja Também

  • » http://www.ciphersbyritter.com/GLOSSARY.HTM#IV
  • » http://www.quadibloc.com/crypto/co0409.htm
  • Chapter 9.3 of Applied Cryptography by Schneier (ISBN 0-471-11709-9)

mcrypt_cfb
mcrypt_decrypt
Mcrypt Funções


Decrypts crypttext with given parameters

mcrypt_create_iv
mcrypt_ecb
Mcrypt Funções
PHP Manual

mcrypt_decrypt

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_decrypt — Decrypts crypttext with given parameters

Descrição

string mcrypt_decrypt ( string $cipher , string $key , string $data , string $mode [, string $iv ] )

Decrypts the data and returns the unencrypted data.

Parâmetros

cipher

One of the MCRYPT_ciphername constants, or the name of the algorithm as string.

key

The key with which the data was encrypted. If it's smaller than the required keysize, it is padded with '\0'.

data

The data that will be decrypted with the given cipher and mode. If the size of the data is not n * blocksize, the data will be padded with '\0'.

mode

One of the MCRYPT_MODE_modename constants, or one of the following strings: "ecb", "cbc", "cfb", "ofb", "nofb" or "stream".

iv

The iv parameter is used for the initialization in CBC, CFB, OFB modes, and in some algorithms in STREAM mode. If you do not supply an IV, while it is needed for an algorithm, the function issues a warning and uses an IV with all its bytes set to '\0'.

Valor Retornado

Returns the decrypted data as a string.

mcrypt_create_iv
mcrypt_ecb
Mcrypt Funções


Deprecated: Encrypts/decrypts data in ECB mode

mcrypt_decrypt
mcrypt_enc_get_algorithms_name
Mcrypt Funções
PHP Manual

mcrypt_ecb

(PHP 4, PHP 5)

mcrypt_ecb — Deprecated: Encrypts/decrypts data in ECB mode

Descrição

string mcrypt_ecb ( int $cipher , string $key , string $data , int $mode )
string mcrypt_ecb ( string $cipher , string $key , string $data , int $mode [, string $iv ] )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or higher. The mode should be either MCRYPT_ENCRYPT or MCRYPT_DECRYPT.

This function is deprecated and should not be used anymore, see mcrypt_generic() and mdecrypt_generic() for replacements.

mcrypt_decrypt
mcrypt_enc_get_algorithms_name
Mcrypt Funções


Returns the name of the opened algorithm

mcrypt_ecb
mcrypt_enc_get_block_size
Mcrypt Funções
PHP Manual

mcrypt_enc_get_algorithms_name

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_algorithms_name — Returns the name of the opened algorithm

Descrição

string mcrypt_enc_get_algorithms_name ( resource $td )

This function returns the name of the algorithm.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns the name of the opened algorithm as a string.

Exemplos

Exemplo #1 mcrypt_enc_get_algorithms_name() example

<?php
$td = mcrypt_module_open(MCRYPT_CAST_256, '', MCRYPT_MODE_CFB, '');
echo mcrypt_enc_get_algorithms_name($td). "\n";

$td = mcrypt_module_open('cast-256', '', MCRYPT_MODE_CFB, '');
echo mcrypt_enc_get_algorithms_name($td). "\n";
?>

O exemplo acima irá imprimir:

CAST-256
CAST-256

mcrypt_ecb
mcrypt_enc_get_block_size
Mcrypt Funções


Returns the blocksize of the opened algorithm

mcrypt_enc_get_algorithms_name
mcrypt_enc_get_iv_size
Mcrypt Funções
PHP Manual

mcrypt_enc_get_block_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_block_size — Returns the blocksize of the opened algorithm

Descrição

int mcrypt_enc_get_block_size ( resource $td )

Gets the blocksize of the opened algorithm.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns the block size of the specified algorithm in bytes.

mcrypt_enc_get_algorithms_name
mcrypt_enc_get_iv_size
Mcrypt Funções


Returns the size of the IV of the opened algorithm

mcrypt_enc_get_block_size
mcrypt_enc_get_key_size
Mcrypt Funções
PHP Manual

mcrypt_enc_get_iv_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_iv_size — Returns the size of the IV of the opened algorithm

Descrição

int mcrypt_enc_get_iv_size ( resource $td )

This function returns the size of the IV of the algorithm specified by the encryption descriptor in bytes. An IV is used in cbc, cfb and ofb modes, and in some algorithms in stream mode.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns the size of the IV, or 0 if the IV is ignored by the algorithm.

mcrypt_enc_get_block_size
mcrypt_enc_get_key_size
Mcrypt Funções


Returns the maximum supported keysize of the opened mode

mcrypt_enc_get_iv_size
mcrypt_enc_get_modes_name
Mcrypt Funções
PHP Manual

mcrypt_enc_get_key_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_key_size — Returns the maximum supported keysize of the opened mode

Descrição

int mcrypt_enc_get_key_size ( resource $td )

Gets the maximum supported key size of the algorithm in bytes.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns the maximum supported key size of the algorithm in bytes.

mcrypt_enc_get_iv_size
mcrypt_enc_get_modes_name
Mcrypt Funções


Returns the name of the opened mode

mcrypt_enc_get_key_size
mcrypt_enc_get_supported_key_sizes
Mcrypt Funções
PHP Manual

mcrypt_enc_get_modes_name

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_modes_name — Returns the name of the opened mode

Descrição

string mcrypt_enc_get_modes_name ( resource $td )

This function returns the name of the mode.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns the name as a string.

Exemplos

Exemplo #1 mcrypt_enc_get_modes_name() example

<?php
$td = mcrypt_module_open (MCRYPT_CAST_256, '', MCRYPT_MODE_CFB, '');
echo mcrypt_enc_get_modes_name($td). "\n";

$td = mcrypt_module_open ('cast-256', '', 'ecb', '');
echo mcrypt_enc_get_modes_name($td). "\n";
?>

O exemplo acima irá imprimir:

CFB
ECB

mcrypt_enc_get_key_size
mcrypt_enc_get_supported_key_sizes
Mcrypt Funções


Returns an array with the supported keysizes of the opened algorithm

mcrypt_enc_get_modes_name
mcrypt_enc_is_block_algorithm_mode
Mcrypt Funções
PHP Manual

mcrypt_enc_get_supported_key_sizes

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm

Descrição

array mcrypt_enc_get_supported_key_sizes ( resource $td )

Gets the supported key sizes of the opened algorithm.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns an array with the key sizes supported by the algorithm specified by the encryption descriptor. If it returns an empty array then all key sizes between 1 and mcrypt_enc_get_key_size() are supported by the algorithm.

Exemplos

Exemplo #1 mcrypt_enc_get_supported_key_sizes() example

<?php
    $td = mcrypt_module_open('rijndael-256', '', 'ecb', '');
    var_dump(mcrypt_enc_get_supported_key_sizes($td));
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  int(16)
  [1]=>
  int(24)
  [2]=>
  int(32)
}

mcrypt_enc_get_modes_name
mcrypt_enc_is_block_algorithm_mode
Mcrypt Funções


Checks whether the encryption of the opened mode works on blocks

mcrypt_enc_get_supported_key_sizes
mcrypt_enc_is_block_algorithm
Mcrypt Funções
PHP Manual

mcrypt_enc_is_block_algorithm_mode

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_is_block_algorithm_mode — Checks whether the encryption of the opened mode works on blocks

Descrição

bool mcrypt_enc_is_block_algorithm_mode ( resource $td )

Tells whether the algorithm of the opened mode works on blocks (e.g. FALSE for stream, and TRUE for cbc, cfb, ofb)..

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns TRUE if the mode is for use with block algorithms, otherwise it returns FALSE.

mcrypt_enc_get_supported_key_sizes
mcrypt_enc_is_block_algorithm
Mcrypt Funções


Checks whether the algorithm of the opened mode is a block algorithm

mcrypt_enc_is_block_algorithm_mode
mcrypt_enc_is_block_mode
Mcrypt Funções
PHP Manual

mcrypt_enc_is_block_algorithm

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_is_block_algorithm — Checks whether the algorithm of the opened mode is a block algorithm

Descrição

bool mcrypt_enc_is_block_algorithm ( resource $td )

Tells whether the algorithm of the opened mode is a block algorithm.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns TRUE if the algorithm is a block algorithm or FALSE if it is a stream one.

mcrypt_enc_is_block_algorithm_mode
mcrypt_enc_is_block_mode
Mcrypt Funções


Checks whether the opened mode outputs blocks

mcrypt_enc_is_block_algorithm
mcrypt_enc_self_test
Mcrypt Funções
PHP Manual

mcrypt_enc_is_block_mode

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_is_block_mode — Checks whether the opened mode outputs blocks

Descrição

bool mcrypt_enc_is_block_mode ( resource $td )

Tells whether the opened mode outputs blocks (e.g. TRUE for cbc and ecb, and FALSE for cfb and stream).

Parâmetros

td

The encryption descriptor.

Valor Retornado

Returns TRUE if the mode outputs blocks of bytes, or FALSE if it outputs just bytes.

mcrypt_enc_is_block_algorithm
mcrypt_enc_self_test
Mcrypt Funções


Runs a self test on the opened module

mcrypt_enc_is_block_mode
mcrypt_encrypt
Mcrypt Funções
PHP Manual

mcrypt_enc_self_test

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_enc_self_test — Runs a self test on the opened module

Descrição

int mcrypt_enc_self_test ( resource $td )

This function runs the self test on the algorithm specified by the descriptor td.

Parâmetros

td

The encryption descriptor.

Valor Retornado

If the self test succeeds it returns FALSE. In case of an error, it returns TRUE.

mcrypt_enc_is_block_mode
mcrypt_encrypt
Mcrypt Funções


Encrypts plaintext with given parameters

mcrypt_enc_self_test
mcrypt_generic_deinit
Mcrypt Funções
PHP Manual

mcrypt_encrypt

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_encrypt — Encrypts plaintext with given parameters

Descrição

string mcrypt_encrypt ( string $cipher , string $key , string $data , string $mode [, string $iv ] )

Encrypts the data and returns it.

Parâmetros

cipher

One of the MCRYPT_ciphername constants, or the name of the algorithm as string.

key

The key with which the data will be encrypted. If it's smaller than the required keysize, it is padded with '\0'. It is better not to use ASCII strings for keys.

It is recommended to use the mhash functions to create a key from a string.

data

The data that will be encrypted with the given cipher and mode. If the size of the data is not n * blocksize, the data will be padded with '\0'.

The returned crypttext can be larger than the size of the data that was given by data.

mode

One of the MCRYPT_MODE_modename constants, or one of the following strings: "ecb", "cbc", "cfb", "ofb", "nofb" or "stream".

iv

Used for the initialization in CBC, CFB, OFB modes, and in some algorithms in STREAM mode. If you do not supply an IV, while it is needed for an algorithm, the function issues a warning and uses an IV with all its bytes set to '\0'.

Valor Retornado

Returns the encrypted data, as a string.

Exemplos

Exemplo #1 mcrypt_encrypt() Example

<?php
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
    $key = "This is a very secret key";
    $text = "Meet me at 11 o'clock behind the monument.";
    echo strlen($text) . "\n";

    $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
    echo strlen($crypttext) . "\n";
?>

O exemplo acima irá imprimir:

42
64

See also mcrypt_module_open() for a more advanced API and an example.

mcrypt_enc_self_test
mcrypt_generic_deinit
Mcrypt Funções


This function deinitializes an encryption module

mcrypt_encrypt
mcrypt_generic_end
Mcrypt Funções
PHP Manual

mcrypt_generic_deinit

(PHP 4 >= 4.0.7, PHP 5)

mcrypt_generic_deinit — This function deinitializes an encryption module

Descrição

bool mcrypt_generic_deinit ( resource $td )

This function terminates encryption specified by the encryption descriptor (td). It clears all buffers, but does not close the module. You need to call mcrypt_module_close() yourself. (But PHP does this for you at the end of the script.)

Parâmetros

td

The encryption descriptor.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mcrypt_module_open() - Opens the module of the algorithm and the mode to be used
  • mcrypt_generic_init() - This function initializes all buffers needed for encryption

mcrypt_encrypt
mcrypt_generic_end
Mcrypt Funções


This function terminates encryption

mcrypt_generic_deinit
mcrypt_generic_init
Mcrypt Funções
PHP Manual

mcrypt_generic_end

(PHP 4 >= 4.0.2, PHP 5 <= 5.1.6)

mcrypt_generic_end — This function terminates encryption

Descrição

bool mcrypt_generic_end ( resource $td )

Aviso

This function is deprecated, use mcrypt_generic_deinit() instead. It can cause crashes when used with mcrypt_module_close() due to multiple buffer frees.

This function terminates encryption specified by the encryption descriptor (td). Actually it clears all buffers, and closes all the modules used. Returns FALSE on error, or TRUE on success.

mcrypt_generic_deinit
mcrypt_generic_init
Mcrypt Funções


This function initializes all buffers needed for encryption

mcrypt_generic_end
mcrypt_generic
Mcrypt Funções
PHP Manual

mcrypt_generic_init

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_generic_init — This function initializes all buffers needed for encryption

Descrição

int mcrypt_generic_init ( resource $td , string $key , string $iv )

You need to call this function before every call to mcrypt_generic() or mdecrypt_generic().

Parâmetros

td

The encryption descriptor.

key

The maximum length of the key should be the one obtained by calling mcrypt_enc_get_key_size() and every value smaller than this is legal.

iv

The IV should normally have the size of the algorithms block size, but you must obtain the size by calling mcrypt_enc_get_iv_size(). IV is ignored in ECB. IV MUST exist in CFB, CBC, STREAM, nOFB and OFB modes. It needs to be random and unique (but not secret). The same IV must be used for encryption/decryption. If you do not want to use it you should set it to zeros, but this is not recommended.

Valor Retornado

The function returns a negative value on error: -3 when the key length was incorrect, -4 when there was a memory allocation problem and any other return value is an unknown error. If an error occurs a warning will be displayed accordingly. FALSE is returned if incorrect parameters were passed.

Veja Também

  • mcrypt_module_open() - Opens the module of the algorithm and the mode to be used

mcrypt_generic_end
mcrypt_generic
Mcrypt Funções


This function encrypts data

mcrypt_generic_init
mcrypt_get_block_size
Mcrypt Funções
PHP Manual

mcrypt_generic

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_generic — This function encrypts data

Descrição

string mcrypt_generic ( resource $td , string $data )

This function encrypts data. The data is padded with "\0" to make sure the length of the data is n * blocksize. This function returns the encrypted data. Note that the length of the returned string can in fact be longer then the input, due to the padding of the data.

If you want to store the encrypted data in a database make sure to store the entire string as returned by mcrypt_generic, or the string will not entirely decrypt properly. If your original string is 10 characters long and the block size is 8 (use mcrypt_enc_get_block_size() to determine the blocksize), you would need at least 16 characters in your database field. Note the string returned by mdecrypt_generic() will be 16 characters as well...use rtrim($str, "\0") to remove the padding.

If you are for example storing the data in a MySQL database remember that varchar fields automatically have trailing spaces removed during insertion. As encrypted data can end in a space (ASCII 32), the data will be damaged by this removal. Store data in a tinyblob/tinytext (or larger) field instead.

Parâmetros

td

The encryption descriptor.

The encryption handle should always be initialized with mcrypt_generic_init() with a key and an IV before calling this function. Where the encryption is done, you should free the encryption buffers by calling mcrypt_generic_deinit(). See mcrypt_module_open() for an example.

data

The data to encrypt.

Valor Retornado

Returns the encrypted data.

Veja Também

  • mdecrypt_generic() - Decrypts data
  • mcrypt_generic_init() - This function initializes all buffers needed for encryption
  • mcrypt_generic_deinit() - This function deinitializes an encryption module

mcrypt_generic_init
mcrypt_get_block_size
Mcrypt Funções


Gets the block size of the specified cipher

mcrypt_generic
mcrypt_get_cipher_name
Mcrypt Funções
PHP Manual

mcrypt_get_block_size

(PHP 4, PHP 5)

mcrypt_get_block_size — Gets the block size of the specified cipher

Descrição

int mcrypt_get_block_size ( int $cipher )
int mcrypt_get_block_size ( string $cipher , string $module )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or 2.5.x.

mcrypt_get_block_size() is used to get the size of a block of the specified cipher (in combination with an encryption mode).

It is more useful to use the mcrypt_enc_get_block_size() function as this uses the resource returned by mcrypt_module_open().

Parâmetros

cipher

One of the MCRYPT_ciphername constants or the name of the algorithm as string.

module

The module.

Valor Retornado

Gets the block size, as an integer.

Exemplos

Exemplo #1 mcrypt_get_block_size() example

This example shows how to use this function when linked against libmcrypt 2.4.x and 2.5.x.

<?php

echo mcrypt_get_block_size('tripledes', 'ecb'); // 8

?>

Veja Também

  • mcrypt_get_key_size() - Gets the key size of the specified cipher
  • mcrypt_enc_get_block_size() - Returns the blocksize of the opened algorithm
  • mcrypt_encrypt() - Encrypts plaintext with given parameters

mcrypt_generic
mcrypt_get_cipher_name
Mcrypt Funções


Gets the name of the specified cipher

mcrypt_get_block_size
mcrypt_get_iv_size
Mcrypt Funções
PHP Manual

mcrypt_get_cipher_name

(PHP 4, PHP 5)

mcrypt_get_cipher_name — Gets the name of the specified cipher

Descrição

string mcrypt_get_cipher_name ( int $cipher )
string mcrypt_get_cipher_name ( string $cipher )

mcrypt_get_cipher_name() is used to get the name of the specified cipher.

mcrypt_get_cipher_name() takes the cipher number as an argument (libmcrypt 2.2.x) or takes the cipher name as an argument (libmcrypt 2.4.x or higher) and returns the name of the cipher or FALSE, if the cipher does not exist.

Parâmetros

cipher

One of the MCRYPT_ciphername constants or the name of the algorithm as string.

Valor Retornado

This function returns the name of the cipher or FALSE, if the cipher does not exist.

Exemplos

Exemplo #1 mcrypt_get_cipher_name() Example

<?php
   $cipher = MCRYPT_TripleDES;

   echo mcrypt_get_cipher_name($cipher);
?>

O exemplo acima irá imprimir:

3DES

mcrypt_get_block_size
mcrypt_get_iv_size
Mcrypt Funções


Returns the size of the IV belonging to a specific cipher/mode combination

mcrypt_get_cipher_name
mcrypt_get_key_size
Mcrypt Funções
PHP Manual

mcrypt_get_iv_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_get_iv_size — Returns the size of the IV belonging to a specific cipher/mode combination

Descrição

int mcrypt_get_iv_size ( string $cipher , string $mode )

Gets the size of the IV belonging to a specific cipher/mode combination.

It is more useful to use the mcrypt_enc_get_iv_size() function as this uses the resource returned by mcrypt_module_open().

Parâmetros

cipher

One of the MCRYPT_ciphername constants, or the name of the algorithm as string.

mode

One of the MCRYPT_MODE_modename constants, or one of the following strings: "ecb", "cbc", "cfb", "ofb", "nofb" or "stream". The IV is ignored in ECB mode as this mode does not require it. You will need to have the same IV (think: starting point) both at encryption and decryption stages, otherwise your encryption will fail.

Valor Retornado

Returns the size of the Initialization Vector (IV) in bytes. On error the function returns FALSE. If the IV is ignored in the specified cipher/mode combination zero is returned.

Exemplos

Exemplo #1 mcrypt_get_iv_size() Example

<?php
    echo mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB) . "\n";

    echo mcrypt_get_iv_size('des', 'ecb') . "\n";
?>

Veja Também

  • mcrypt_get_block_size() - Gets the block size of the specified cipher
  • mcrypt_enc_get_iv_size() - Returns the size of the IV of the opened algorithm
  • mcrypt_create_iv() - Creates an initialization vector (IV) from a random source

mcrypt_get_cipher_name
mcrypt_get_key_size
Mcrypt Funções


Gets the key size of the specified cipher

mcrypt_get_iv_size
mcrypt_list_algorithms
Mcrypt Funções
PHP Manual

mcrypt_get_key_size

(PHP 4, PHP 5)

mcrypt_get_key_size — Gets the key size of the specified cipher

Descrição

int mcrypt_get_key_size ( int $cipher )
int mcrypt_get_key_size ( string $cipher , string $module )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or 2.5.x.

mcrypt_get_key_size() is used to get the size of a key of the specified cipher (in combination with an encryption mode).

It is more useful to use the mcrypt_enc_get_key_size() function as this uses the resource returned by mcrypt_module_open().

Exemplos

Exemplo #1 mcrypt_get_key_size() Example

<?php
    echo mcrypt_get_key_size('tripledes', 'ecb');
?>

The example above shows how to use this function when linked against libmcrypt 2.4.x or 2.5.x.

O exemplo acima irá imprimir:

24

Veja Também

  • mcrypt_get_block_size() - Gets the block size of the specified cipher
  • mcrypt_enc_get_key_size() - Returns the maximum supported keysize of the opened mode
  • mcrypt_encrypt() - Encrypts plaintext with given parameters

mcrypt_get_iv_size
mcrypt_list_algorithms
Mcrypt Funções


Gets an array of all supported ciphers

mcrypt_get_key_size
mcrypt_list_modes
Mcrypt Funções
PHP Manual

mcrypt_list_algorithms

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_list_algorithms — Gets an array of all supported ciphers

Descrição

array mcrypt_list_algorithms ([ string $lib_dir = ini_get("mcrypt.algorithms_dir") ] )

Gets the list of all supported algorithms in the lib_dir parameter.

Parâmetros

lib_dir

Specifies the directory where all algorithms are located. If not specified, the value of the mcrypt.algorithms_dir php.ini directive is used.

Valor Retornado

Returns an array with all the supported algorithms.

Exemplos

Exemplo #1 mcrypt_list_algorithms() Example

<?php
    $algorithms = mcrypt_list_algorithms("/usr/local/lib/libmcrypt");

    foreach ($algorithms as $cipher) {
        echo "$cipher<br />\n";
    }
?>

The example above will produce a list with all supported algorithms in the "/usr/local/lib/libmcrypt" directory.

mcrypt_get_key_size
mcrypt_list_modes
Mcrypt Funções


Gets an array of all supported modes

mcrypt_list_algorithms
mcrypt_module_close
Mcrypt Funções
PHP Manual

mcrypt_list_modes

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_list_modes — Gets an array of all supported modes

Descrição

array mcrypt_list_modes ([ string $lib_dir = ini_get("mcrypt.modes_dir") ] )

Gets the list of all supported modes in the lib_dir parameter.

Parâmetros

lib_dir

Specifies the directory where all modes are located. If not specified, the value of the mcrypt.modes_dir php.ini directive is used.

Valor Retornado

Returns an array with all the supported modes.

Exemplos

Exemplo #1 mcrypt_list_modes() Example

<?php
    $modes = mcrypt_list_modes();

    foreach ($modes as $mode) {
        echo "$mode <br />\n";
    }
?>

The example above will produce a list with all supported algorithms in the default mode directory. If it is not set with the mcrypt.modes_dir php.ini directive, the default directory of mcrypt is used (which is /usr/local/lib/libmcrypt).

mcrypt_list_algorithms
mcrypt_module_close
Mcrypt Funções


Closes the mcrypt module

mcrypt_list_modes
mcrypt_module_get_algo_block_size
Mcrypt Funções
PHP Manual

mcrypt_module_close

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_close — Closes the mcrypt module

Descrição

bool mcrypt_module_close ( resource $td )

Closes the specified encryption handle.

Parâmetros

td

The encryption descriptor.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mcrypt_module_open() - Opens the module of the algorithm and the mode to be used

mcrypt_list_modes
mcrypt_module_get_algo_block_size
Mcrypt Funções


Returns the blocksize of the specified algorithm

mcrypt_module_close
mcrypt_module_get_algo_key_size
Mcrypt Funções
PHP Manual

mcrypt_module_get_algo_block_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_get_algo_block_size — Returns the blocksize of the specified algorithm

Descrição

int mcrypt_module_get_algo_block_size ( string $algorithm [, string $lib_dir ] )

Gets the blocksize of the specified algorithm.

Parâmetros

algorithm

The algorithm name.

lib_dir

This optional parameter can contain the location where the mode module is on the system.

Valor Retornado

Returns the block size of the algorithm specified in bytes.

mcrypt_module_close
mcrypt_module_get_algo_key_size
Mcrypt Funções


Returns the maximum supported keysize of the opened mode

mcrypt_module_get_algo_block_size
mcrypt_module_get_supported_key_sizes
Mcrypt Funções
PHP Manual

mcrypt_module_get_algo_key_size

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_get_algo_key_size — Returns the maximum supported keysize of the opened mode

Descrição

int mcrypt_module_get_algo_key_size ( string $algorithm [, string $lib_dir ] )

Gets the maximum supported keysize of the opened mode.

Parâmetros

algorithm

The algorithm name.

lib_dir

This optional parameter can contain the location where the mode module is on the system.

Valor Retornado

This function returns the maximum supported key size of the algorithm specified in bytes.

mcrypt_module_get_algo_block_size
mcrypt_module_get_supported_key_sizes
Mcrypt Funções


Returns an array with the supported keysizes of the opened algorithm

mcrypt_module_get_algo_key_size
mcrypt_module_is_block_algorithm_mode
Mcrypt Funções
PHP Manual

mcrypt_module_get_supported_key_sizes

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_get_supported_key_sizes — Returns an array with the supported keysizes of the opened algorithm

Descrição

array mcrypt_module_get_supported_key_sizes ( string $algorithm [, string $lib_dir ] )

Returns an array with the key sizes supported by the specified algorithm. If it returns an empty array then all key sizes between 1 and mcrypt_module_get_algo_key_size() are supported by the algorithm.

Parâmetros

algorithm

The algorithm to be used.

lib_dir

The optional lib_dir parameter can contain the location where the algorithm module is on the system.

Valor Retornado

Returns an array with the key sizes supported by the specified algorithm. If it returns an empty array then all key sizes between 1 and mcrypt_module_get_algo_key_size() are supported by the algorithm.

Veja Também

  • mcrypt_enc_get_supported_key_sizes() - Returns an array with the supported keysizes of the opened algorithm

mcrypt_module_get_algo_key_size
mcrypt_module_is_block_algorithm_mode
Mcrypt Funções


Returns if the specified module is a block algorithm or not

mcrypt_module_get_supported_key_sizes
mcrypt_module_is_block_algorithm
Mcrypt Funções
PHP Manual

mcrypt_module_is_block_algorithm_mode

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_is_block_algorithm_mode — Returns if the specified module is a block algorithm or not

Descrição

bool mcrypt_module_is_block_algorithm_mode ( string $mode [, string $lib_dir ] )

This function returns TRUE if the mode is for use with block algorithms, otherwise it returns FALSE. (e.g. FALSE for stream, and TRUE for cbc, cfb, ofb).

Parâmetros

mode

The mode to check.

lib_dir

The optional lib_dir parameter can contain the location where the algorithm module is on the system.

Valor Retornado

This function returns TRUE if the mode is for use with block algorithms, otherwise it returns FALSE. (e.g. FALSE for stream, and TRUE for cbc, cfb, ofb).

mcrypt_module_get_supported_key_sizes
mcrypt_module_is_block_algorithm
Mcrypt Funções


This function checks whether the specified algorithm is a block algorithm

mcrypt_module_is_block_algorithm_mode
mcrypt_module_is_block_mode
Mcrypt Funções
PHP Manual

mcrypt_module_is_block_algorithm

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_is_block_algorithm — This function checks whether the specified algorithm is a block algorithm

Descrição

bool mcrypt_module_is_block_algorithm ( string $algorithm [, string $lib_dir ] )

This function returns TRUE if the specified algorithm is a block algorithm, or FALSE if it is a stream one.

Parâmetros

algorithm

The algorithm to check.

lib_dir

The optional lib_dir parameter can contain the location where the algorithm module is on the system.

Valor Retornado

This function returns TRUE if the specified algorithm is a block algorithm, or FALSE if it is a stream one.

mcrypt_module_is_block_algorithm_mode
mcrypt_module_is_block_mode
Mcrypt Funções


Returns if the specified mode outputs blocks or not

mcrypt_module_is_block_algorithm
mcrypt_module_open
Mcrypt Funções
PHP Manual

mcrypt_module_is_block_mode

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_is_block_mode — Returns if the specified mode outputs blocks or not

Descrição

bool mcrypt_module_is_block_mode ( string $mode [, string $lib_dir ] )

This function returns TRUE if the mode outputs blocks of bytes or FALSE if it outputs just bytes. (e.g. TRUE for cbc and ecb, and FALSE for cfb and stream).

Parâmetros

mode

The mode to check.

lib_dir

The optional lib_dir parameter can contain the location where the algorithm module is on the system.

Valor Retornado

This function returns TRUE if the mode outputs blocks of bytes or FALSE if it outputs just bytes. (e.g. TRUE for cbc and ecb, and FALSE for cfb and stream).

mcrypt_module_is_block_algorithm
mcrypt_module_open
Mcrypt Funções


Opens the module of the algorithm and the mode to be used

mcrypt_module_is_block_mode
mcrypt_module_self_test
Mcrypt Funções
PHP Manual

mcrypt_module_open

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_open — Opens the module of the algorithm and the mode to be used

Descrição

resource mcrypt_module_open ( string $algorithm , string $algorithm_directory , string $mode , string $mode_directory )

This function opens the module of the algorithm and the mode to be used. The name of the algorithm is specified in algorithm, e.g. "twofish" or is one of the MCRYPT_ciphername constants. The module is closed by calling mcrypt_module_close().

Parâmetros

algorithm

The algorithm to be used.

algorithm_directory

The algorithm_directory parameter is used to locate the encryption module. When you supply a directory name, it is used. When you set it to an empty string (""), the value set by the mcrypt.algorithms_dir php.ini directive is used. When it is not set, the default directory that is used is the one that was compiled into libmcrypt (usually /usr/local/lib/libmcrypt).

mode

The mode to be used.

mode_directory

The mode_directory parameter is used to locate the encryption module. When you supply a directory name, it is used. When you set it to an empty string (""), the value set by the mcrypt.modes_dir php.ini directive is used. When it is not set, the default directory that is used is the one that was compiled-in into libmcrypt (usually /usr/local/lib/libmcrypt).

Valor Retornado

Normally it returns an encryption descriptor, or FALSE on error.

Exemplos

Exemplo #1 mcrypt_module_open() Examples

<?php
    $td = mcrypt_module_open(MCRYPT_DES, '',
        MCRYPT_MODE_ECB, '/usr/lib/mcrypt-modes');

    $td = mcrypt_module_open('rijndael-256', '', 'ofb', '');
?>

The first line in the example above will try to open the DES cipher from the default directory and the EBC mode from the directory /usr/lib/mcrypt-modes. The second example uses strings as name for the cipher and mode, this only works when the extension is linked against libmcrypt 2.4.x or 2.5.x.

Exemplo #2 Using mcrypt_module_open() in encryption

<?php
    /* Open the cipher */
    $td = mcrypt_module_open('rijndael-256', '', 'ofb', '');

    /* Create the IV and determine the keysize length, use MCRYPT_RAND
     * on Windows instead */
    $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_RANDOM);
    $ks = mcrypt_enc_get_key_size($td);

    /* Create key */
    $key = substr(md5('very secret key'), 0, $ks);

    /* Intialize encryption */
    mcrypt_generic_init($td, $key, $iv);

    /* Encrypt data */
    $encrypted = mcrypt_generic($td, 'This is very important data');

    /* Terminate encryption handler */
    mcrypt_generic_deinit($td);

    /* Initialize encryption module for decryption */
    mcrypt_generic_init($td, $key, $iv);

    /* Decrypt encrypted string */
    $decrypted = mdecrypt_generic($td, $encrypted);

    /* Terminate decryption handle and close module */
    mcrypt_generic_deinit($td);
    mcrypt_module_close($td);

    /* Show string */
    echo trim($decrypted) . "\n";
?>

Veja Também

  • mcrypt_module_close() - Closes the mcrypt module
  • mcrypt_generic() - This function encrypts data
  • mdecrypt_generic() - Decrypts data
  • mcrypt_generic_init() - This function initializes all buffers needed for encryption
  • mcrypt_generic_deinit() - This function deinitializes an encryption module

mcrypt_module_is_block_mode
mcrypt_module_self_test
Mcrypt Funções


This function runs a self test on the specified module

mcrypt_module_open
mcrypt_ofb
Mcrypt Funções
PHP Manual

mcrypt_module_self_test

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_module_self_test — This function runs a self test on the specified module

Descrição

bool mcrypt_module_self_test ( string $algorithm [, string $lib_dir ] )

This function runs the self test on the algorithm specified.

Parâmetros

algorithm

The algorithm to test.

lib_dir

The optional lib_dir parameter can contain the location where the algorithm module is on the system.

Valor Retornado

The function returns TRUE if the self test succeeds, or FALSE when it fails.

Exemplos

Exemplo #1 mcrypt_module_self_test() example

<?php
var_dump(mcrypt_module_self_test(MCRYPT_RIJNDAEL_128)) . "\n";
var_dump(mcrypt_module_self_test(MCRYPT_BOGUS_CYPHER));
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

mcrypt_module_open
mcrypt_ofb
Mcrypt Funções


Encrypts/decrypts data in OFB mode

mcrypt_module_self_test
mdecrypt_generic
Mcrypt Funções
PHP Manual

mcrypt_ofb

(PHP 4, PHP 5)

mcrypt_ofb — Encrypts/decrypts data in OFB mode

Descrição

string mcrypt_ofb ( int $cipher , string $key , string $data , int $mode , string $iv )
string mcrypt_ofb ( string $cipher , string $key , string $data , int $mode [, string $iv ] )

The first prototype is when linked against libmcrypt 2.2.x, the second when linked against libmcrypt 2.4.x or higher. The mode should be either MCRYPT_ENCRYPT or MCRYPT_DECRYPT.

This function should not be used anymore, see mcrypt_generic() and mdecrypt_generic() for replacements.

mcrypt_module_self_test
mdecrypt_generic
Mcrypt Funções


Decrypts data

mcrypt_ofb
Mhash
Mcrypt Funções
PHP Manual

mdecrypt_generic

(PHP 4 >= 4.0.2, PHP 5)

mdecrypt_generic — Decrypts data

Descrição

string mdecrypt_generic ( resource $td , string $data )

This function decrypts data. Note that the length of the returned string can in fact be longer than the unencrypted string, due to the padding of the data.

Parâmetros

td

An encryption descriptor returned by mcrypt_module_open()

data

Encrypted data.

Exemplos

Exemplo #1 mdecrypt_generic() Example

<?php
    /* Data */
    $key = 'this is a very long key, even too long for the cipher';
    $plain_text = 'very important data';

    /* Open module, and create IV */
    $td = mcrypt_module_open('des', '', 'ecb', '');
    $key = substr($key, 0, mcrypt_enc_get_key_size($td));
    $iv_size = mcrypt_enc_get_iv_size($td);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

    /* Initialize encryption handle */
    if (mcrypt_generic_init($td, $key, $iv) != -1) {

        /* Encrypt data */
        $c_t = mcrypt_generic($td, $plain_text);
        mcrypt_generic_deinit($td);

        /* Reinitialize buffers for decryption */
        mcrypt_generic_init($td, $key, $iv);
        $p_t = mdecrypt_generic($td, $c_t);

        /* Clean up */
        mcrypt_generic_deinit($td);
        mcrypt_module_close($td);
    }

    if (strncmp($p_t, $plain_text, strlen($plain_text)) == 0) {
        echo "ok\n";
    } else {
        echo "error\n";
    }
?>

The example above shows how to check if the data before the encryption is the same as the data after the decryption. It is very important to reinitialize the encryption buffer with mcrypt_generic_init() before you try to decrypt the data.

The decryption handle should always be initialized with mcrypt_generic_init() with a key and an IV before calling this function. Where the encryption is done, you should free the encryption buffers by calling mcrypt_generic_deinit(). See mcrypt_module_open() for an example.

Veja Também

  • mcrypt_generic() - This function encrypts data
  • mcrypt_generic_init() - This function initializes all buffers needed for encryption
  • mcrypt_generic_deinit() - This function deinitializes an encryption module

mcrypt_ofb
Mhash
Mcrypt Funções


Mhash

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da Mhash
    • mhash_count — Ler o mais alto hash id disponível
    • mhash_get_block_size — Ler o tamanho do bloco da hash específicada
    • mhash_get_hash_name — Ler o nome da hash especificada
    • mhash_keygen_s2k — Gerar uma chave
    • mhash — Computa a hash
mdecrypt_generic
Introdução
Extensões para Criptografia


Introdução

Essas funções são planejadas para trabalhar com » mhash. Com o Mhash você pode criar checksums, digests de mensagens, códigos de autenticação de mensagens e mais.

Esta é uma interface para a biblioteca mhash. O mhash suporta uma grande variedade de algoritmos de hash como MD5, SHA1, GOST e muitos outros. Para uma lista completa das hashs suportadas, verifique a documentação do mhash. A regra geral é: você pode acessar o algoritmo de hash a partir do PHP com MHASH_NOMEdoHASH, Por exemplo, para acessar o algoritmo TIGER, você utiliza a constante MHASH_TIGER.

Nota:

Esta extensão está obsoleta por Hash.

Mhash
Instalação/Configuração
Mhash


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mhash


Dependências

Para usá-las, faça o download da distribuição do mhash em » http://mhash.sourceforge.net/ e siga as instruções de instalação inclusas.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

You need to compile PHP with the --with-mhash[=DIR] parameter to enable this extension. DIR is the mhash installation directory.

As of PHP 5.3.0, the mhash extension is emulated thru the Hash extension. This makes the mhash installation directory have no effect, and requires the hash extension enabled to make the mhash support available.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Aqui está a lista de hashes que são atualmente suportadas por mhash. Se uma hash não está listada aqui, mas é listada pelo mhash como suportada, você pode assumir seguramente que esta documentação está desatualizada.

  • MHASH_ADLER32
  • MHASH_CRC32
  • MHASH_CRC32B
  • MHASH_GOST
  • MHASH_HAVAL128
  • MHASH_HAVAL160
  • MHASH_HAVAL192
  • MHASH_HAVAL256
  • MHASH_MD4
  • MHASH_MD5
  • MHASH_RIPEMD160
  • MHASH_SHA1
  • MHASH_SHA256
  • MHASH_TIGER
  • MHASH_TIGER128
  • MHASH_TIGER160

Tipos Resource
Exemplos
Mhash


Exemplos

Exemplo #1 Calcula o MD5 digest e hmac e imprimi como hex

<?php
$input = "what do ya want for nothing?";
$hash = mhash(MHASH_MD5, $input);
echo "The hash is " . bin2hex($hash) . "<br />\n";
$hash = mhash(MHASH_MD5, $input, "Jefe");
echo "The hmac is " . bin2hex($hash) . "<br />\n";
?>

Irá mostrar:

The hash is d03cb659cbf9192dcd066272249f8412
The hmac is 750c783e6ab0b503eaa86e310a5db738

Constantes pré-definidas
Funções da Mhash
Mhash


Funções da Mhash

Índice

  • mhash_count — Ler o mais alto hash id disponível
  • mhash_get_block_size — Ler o tamanho do bloco da hash específicada
  • mhash_get_hash_name — Ler o nome da hash especificada
  • mhash_keygen_s2k — Gerar uma chave
  • mhash — Computa a hash
Exemplos
mhash_count
Mhash


Ler o mais alto hash id disponível

Funções da Mhash
mhash_get_block_size
Funções da Mhash
PHP Manual

mhash_count

(PHP 4, PHP 5)

mhash_count — Ler o mais alto hash id disponível

Descrição

int mhash_count ( void )

Obtém a mais alta hash id disponível.

Valor Retornado

Retorna a mais alta hash id. Hashes são numerados de 0 a este hash id.

Exemplos

Exemplo #1 Listando todas as hashes

<?php

$nr = mhash_count();

for ($i = 0; $i <= $nr; $i++) {
    echo sprintf("O tamanho do bloco de %s é %d\n",
        mhash_get_hash_name ($i),
        mhash_get_block_size ($i));
}
?>

Funções da Mhash
mhash_get_block_size
Funções da Mhash


Ler o tamanho do bloco da hash específicada

mhash_count
mhash_get_hash_name
Funções da Mhash
PHP Manual

mhash_get_block_size

(PHP 4, PHP 5)

mhash_get_block_size — Ler o tamanho do bloco da hash específicada

Descrição

int mhash_get_block_size ( int $hash )

Obtém o tamanho de um bloco da hash especificada.

Parâmetros

hash

O hash id. Uma das constantes MHASH_XXX.

Valor Retornado

Retorna o tamanho em bytes ou FALSE, se o hash não existe.

Exemplos

Exemplo #1 mhash_get_block_size() Example

<?php

echo mhash_get_block_size(MHASH_MD5); // 16

?>

mhash_count
mhash_get_hash_name
Funções da Mhash


Ler o nome da hash especificada

mhash_get_block_size
mhash_keygen_s2k
Funções da Mhash
PHP Manual

mhash_get_hash_name

(PHP 4, PHP 5)

mhash_get_hash_name — Ler o nome da hash especificada

Descrição

string mhash_get_hash_name ( int $hash )

Obtém o nome da especificada hash.

Parâmetros

hash

O hash id. Uma das constantes MHASH_XXX.

Valor Retornado

Retorna o nome da hash ou FALSE, se a hash não existe.

Exemplos

Exemplo #1 Exemplo do mhash_get_hash_name()

<?php

echo mhash_get_hash_name(MHASH_MD5);

?>

mhash_get_block_size
mhash_keygen_s2k
Funções da Mhash


Gerar uma chave

mhash_get_hash_name
mhash
Funções da Mhash
PHP Manual

mhash_keygen_s2k

(PHP 4 >= 4.0.4, PHP 5)

mhash_keygen_s2k — Gerar uma chave

Descrição

string mhash_keygen_s2k ( int $hash , string $password , string $salt , int $bytes )

Gera um chave de acordo com hash apartir de uma password (senha) do usuário.

Este é o algoritmo Salted S2K como especificado no documento OpenPGP (» RFC 2440).

Tenha em mente que as senhas fornecidas pelos usuários não são boas para serem usadas como chaves em algoritmos criptográficos, pois usuários normalmente escolhem chaves que eles podem escrever no teclado. Estas senhas usam somente 6 a 7 bits por caracter (ou menos). É altamente recomendado usar algum tipo de transformação (como esta função) na chave dada pelo usuário.

Parâmetros

hash

O hash id usado para criar uma chave. Um das constantes MHASH_XXX.

password

A senha fornecida do usuário.

salt

Deve ser diferente e aleatório o suficiente para que cada chave que você gere seja diferente. Este salt tem que ser sabido quando você checar as suas chaves (keys), logo é uma boa ideia que a chave siga o salt. O salt tem o comprimento fixo de 8 bytes e será completado com zeros se voce fornecer menos bytes.

bytes

O tamanho da chave, em bytes.

Valor Retornado

Retorna a chave gerada como uma string, ou FALSE em erro.

mhash_get_hash_name
mhash
Funções da Mhash


Computa a hash

mhash_keygen_s2k
OpenSSL
Funções da Mhash
PHP Manual

mhash

(PHP 4, PHP 5)

mhash — Computa a hash

Descrição

string mhash ( int $hash , string $data [, string $key ] )

mhash() aplica a função hash especificada por hash para o parâmetro data.

Parâmetros

hash

O hash id. Uma das constantes MHASH_XXX.

data

A entrada do usuário, como uma string.

key

Se especificada, a função irá retornar o HMAC resultante. HMAC é o hashing com chave (keyed) para autenticações de mensagens, ou simplesmente um digest de mensagens que depende na chave específicada. Nem todos os algoritmos suportados em mhash podem ser usados em modo HMAC.

Valor Retornado

Retorna o hash resultante (também chamado digest) ou HMAC como uma string, ou FALSE em erros.

mhash_keygen_s2k
OpenSSL
Funções da Mhash


OpenSSL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • Purpose checking flags
    • Padding flags
    • Key types
    • PKCS7 Flags/Constants
    • Signature Algorithms
    • Ciphers
    • Version constants
    • Server Name Indication constants
  • Key/Certificate parameters
  • Certificate Verification
  • OpenSSL Funções
    • openssl_csr_export_to_file — Exports a CSR to a file
    • openssl_csr_export — Exports a CSR as a string
    • openssl_csr_get_public_key — Returns the public key of a CERT
    • openssl_csr_get_subject — Returns the subject of a CERT
    • openssl_csr_new — Generates a CSR
    • openssl_csr_sign — Sign a CSR with another certificate (or itself) and generate a certificate
    • openssl_decrypt — Decrypts data
    • openssl_dh_compute_key — Computes shared secret for public value of remote DH key and local DH key
    • openssl_digest — Computes a digest
    • openssl_encrypt — Encrypts data
    • openssl_error_string — Return openSSL error message
    • openssl_free_key — Free key resource
    • openssl_get_cipher_methods — Gets available cipher methods
    • openssl_get_md_methods — Gets available digest methods
    • openssl_get_privatekey — Sinônimo de openssl_pkey_get_private
    • openssl_get_publickey — Sinônimo de openssl_pkey_get_public
    • openssl_open — Open sealed data
    • openssl_pkcs12_export_to_file — Exports a PKCS#12 Compatible Certificate Store File
    • openssl_pkcs12_export — Exports a PKCS#12 Compatible Certificate Store File to variable.
    • openssl_pkcs12_read — Parse a PKCS#12 Certificate Store into an array
    • openssl_pkcs7_decrypt — Decrypts an S/MIME encrypted message
    • openssl_pkcs7_encrypt — Encrypt an S/MIME message
    • openssl_pkcs7_sign — Sign an S/MIME message
    • openssl_pkcs7_verify — Verifies the signature of an S/MIME signed message
    • openssl_pkey_export_to_file — Gets an exportable representation of a key into a file
    • openssl_pkey_export — Gets an exportable representation of a key into a string
    • openssl_pkey_free — Frees a private key
    • openssl_pkey_get_details — Returns an array with the key details
    • openssl_pkey_get_private — Get a private key
    • openssl_pkey_get_public — Extract public key from certificate and prepare it for use
    • openssl_pkey_new — Generates a new private key
    • openssl_private_decrypt — Decrypts data with private key
    • openssl_private_encrypt — Encrypts data with private key
    • openssl_public_decrypt — Decrypts data with public key
    • openssl_public_encrypt — Encrypts data with public key
    • openssl_random_pseudo_bytes — Generate a pseudo-random string of bytes
    • openssl_seal — Seal (encrypt) data
    • openssl_sign — Generate signature
    • openssl_verify — Verify signature
    • openssl_x509_check_private_key — Checks if a private key corresponds to a certificate
    • openssl_x509_checkpurpose — Verifies if a certificate can be used for a particular purpose
    • openssl_x509_export_to_file — Exports a certificate to file
    • openssl_x509_export — Exports a certificate as a string
    • openssl_x509_free — Free certificate resource
    • openssl_x509_parse — Parse an X509 certificate and return the information as an array
    • openssl_x509_read — Parse an X.509 certificate and return a resource identifier for it
mhash
Introdução
Extensões para Criptografia


Introdução

This module uses the functions of » OpenSSL for generation and verification of signatures and for sealing (encrypting) and opening (decrypting) data. OpenSSL offers many features that this module currently doesn't support. Some of these may be added in the future.

OpenSSL
Instalação/Configuração
OpenSSL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
OpenSSL


Dependências

In order to use the OpenSSL functions you need to install the » OpenSSL package. PHP between versions 4.0.5 and 4.3.1 will work with OpenSSL >= 0.9.5. Other versions (PHP <=4.0.4 and >= 4.3.2) require OpenSSL >= 0.9.6.

Aviso

You are strongly encouraged to use the most recent OpenSSL version, otherwise your web server could be vulnerable to attack.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To use PHP's OpenSSL support you must also compile PHP --with-openssl[=DIR] .

The OpenSSL library also has additional requirements for normal operation at run-time. Most notably, OpenSSL requires access to a random or pseudo-random number generator; on most Unix and Unix-like platforms (including Linux), this means that it must have access to a /dev/urandom or /dev/random device.

Nota: Note to Win32 Users

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: libeay32.dll

Additionally, if you are planning to use the key generation and certificate signing functions, you will need to install a valid openssl.cnf file on your system. As of PHP 4.3.0, we include a sample configuration file in our win32 binary distributions. PHP 4.3.x and 4.4.x has the file in the openssl directory. PHP 5.x and 6.x has the file in the extras/openssl directory. If you are either using PHP 4.2.x or missing the file, you can obtain it from » the OpenSSL binaries page or by downloading a recent PHP release. Be aware that Windows Explorer hides the .cnf extension by default and says the file Type is SpeedDial.

PHP will search for the openssl.cnf using the following logic:

  • the OPENSSL_CONF environmental variable, if set, will be used as the path (including filename) of the configuration file.
  • the SSLEAY_CONF environmental variable, if set, will be used as the path (including filename) of the configuration file.
  • The file openssl.cnf will be assumed to be found in the default certificate area, as configured at the time that the openssl DLL was compiled. This is usually means that the default filename is c:\usr\local\ssl\openssl.cnf.

In your installation, you need to decide whether to install the configuration file at c:\usr\local\ssl\openssl.cnf or whether to install it someplace else and use environmental variables (possibly on a per-virtual-host basis) to locate the configuration file. Note that it is possible to override the default path from the script using the configargs of the functions that require a configuration file.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Índice

  • Purpose checking flags
  • Padding flags
  • Key types
  • PKCS7 Flags/Constants
  • Signature Algorithms
  • Ciphers
  • Version constants
  • Server Name Indication constants

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
Purpose checking flags
OpenSSL


Purpose checking flags

X509_PURPOSE_SSL_CLIENT (integer)
X509_PURPOSE_SSL_SERVER (integer)
X509_PURPOSE_NS_SSL_SERVER (integer)
X509_PURPOSE_SMIME_SIGN (integer)
X509_PURPOSE_SMIME_ENCRYPT (integer)
X509_PURPOSE_CRL_SIGN (integer)
X509_PURPOSE_ANY (integer)
Constantes pré-definidas
Padding flags
Constantes pré-definidas


Padding flags

OPENSSL_PKCS1_PADDING (integer)
OPENSSL_SSLV23_PADDING (integer)
OPENSSL_NO_PADDING (integer)
OPENSSL_PKCS1_OAEP_PADDING (integer)
Purpose checking flags
Key types
Constantes pré-definidas


Key types

OPENSSL_KEYTYPE_RSA (integer)
OPENSSL_KEYTYPE_DSA (integer)
OPENSSL_KEYTYPE_DH (integer)
Padding flags
PKCS7 Flags/Constants
Constantes pré-definidas


PKCS7 Flags/Constants

The S/MIME functions make use of flags which are specified using a bitfield which can include one or more of the following values:

PKCS7 CONSTANTS
Constant | Description
PKCS7_TEXT | Adds text/plain content type headers to encrypted/signed message. If decrypting or verifying, it strips those headers from the output - if the decrypted or verified message is not of MIME type text/plain then an error will occur.
PKCS7_BINARY | Normally the input message is converted to "canonical" format which is effectively using CR and LF as end of line: as required by the S/MIME specification. When this option is present, no translation occurs. This is useful when handling binary data which may not be in MIME format.
PKCS7_NOINTERN | When verifying a message, certificates (if any) included in the message are normally searched for the signing certificate. With this option only the certificates specified in the extracerts parameter of openssl_pkcs7_verify() are used. The supplied certificates can still be used as untrusted CAs however.
PKCS7_NOVERIFY | Do not verify the signers certificate of a signed message.
PKCS7_NOCHAIN | Do not chain verification of signers certificates: that is don't use the certificates in the signed message as untrusted CAs.
PKCS7_NOCERTS | When signing a message the signer's certificate is normally included - with this option it is excluded. This will reduce the size of the signed message but the verifier must have a copy of the signers certificate available locally (passed using the extracerts to openssl_pkcs7_verify() for example).
PKCS7_NOATTR | Normally when a message is signed, a set of attributes are included which include the signing time and the supported symmetric algorithms. With this option they are not included.
PKCS7_DETACHED | When signing a message, use cleartext signing with the MIME type "multipart/signed". This is the default if you do not specify any flags to openssl_pkcs7_sign(). If you turn this option off, the message will be signed using opaque signing, which is more resistant to translation by mail relays but cannot be read by mail agents that do not support S/MIME.
PKCS7_NOSIGS | Don't try and verify the signatures on a message

Nota:

These constants were added in 4.0.6.

Key types
Signature Algorithms
Constantes pré-definidas


Signature Algorithms

OPENSSL_ALGO_DSS1 (integer)
OPENSSL_ALGO_SHA1 (integer)
Used as default algorithm by openssl_sign() and openssl_verify().
OPENSSL_ALGO_MD5 (integer)
OPENSSL_ALGO_MD4 (integer)
OPENSSL_ALGO_MD2 (integer)

Nota:

These constants were added in 5.0.0.

PKCS7 Flags/Constants
Ciphers
Constantes pré-definidas


Ciphers

OPENSSL_CIPHER_RC2_40 (integer)
OPENSSL_CIPHER_RC2_128 (integer)
OPENSSL_CIPHER_RC2_64 (integer)
OPENSSL_CIPHER_DES (integer)
OPENSSL_CIPHER_3DES (integer)

Nota:

These constants were added in 4.3.0.

Signature Algorithms
Version constants
Constantes pré-definidas


Version constants

OPENSSL_VERSION_TEXT (string)
OPENSSL_VERSION_NUMBER (integer)

Nota:

These constants were added in 5.2.0.

Ciphers
Server Name Indication constants
Constantes pré-definidas


Server Name Indication constants

OPENSSL_TLSEXT_SERVER_NAME (string)
Whether SNI support is available or not.

Nota:

This constant were added in 5.3.2 and requires PHP to be built with OpenSSL 0.9.8j or greater.

Version constants
Key/Certificate parameters
Constantes pré-definidas


Key/Certificate parameters

Quite a few of the openssl functions require a key or a certificate parameter. PHP 4.0.5 and earlier have to use a key or certificate resource returned by one of the openssl_get_xxx() functions. Later versions may use one of the following methods:

  • Certificates

    1. An X.509 resource returned from openssl_x509_read()
    2. A string having the format file://path/to/cert.pem; the named file must contain a PEM encoded certificate
    3. A string containing the content of a certificate, PEM encoded

  • Public/Private Keys

    1. A key resource returned from openssl_get_publickey() or openssl_get_privatekey()
    2. For public keys only: an X.509 resource
    3. A string having the format file://path/to/file.pem - the named file must contain a PEM encoded certificate/private key (it may contain both)
    4. A string containing the content of a certificate/key, PEM encoded
    5. For private keys, you may also use the syntax array($key, $passphrase) where $key represents a key specified using the file:// or textual content notation above, and $passphrase represents a string containing the passphrase for that private key

Server Name Indication constants
Certificate Verification
OpenSSL


Certificate Verification

When calling a function that will verify a signature/certificate, the cainfo parameter is an array containing file and directory names that specify the locations of trusted CA files. If a directory is specified, then it must be a correctly formed hashed directory as the openssl command would use.

Key/Certificate parameters
OpenSSL Funções
OpenSSL


OpenSSL Funções

Índice

  • openssl_csr_export_to_file — Exports a CSR to a file
  • openssl_csr_export — Exports a CSR as a string
  • openssl_csr_get_public_key — Returns the public key of a CERT
  • openssl_csr_get_subject — Returns the subject of a CERT
  • openssl_csr_new — Generates a CSR
  • openssl_csr_sign — Sign a CSR with another certificate (or itself) and generate a certificate
  • openssl_decrypt — Decrypts data
  • openssl_dh_compute_key — Computes shared secret for public value of remote DH key and local DH key
  • openssl_digest — Computes a digest
  • openssl_encrypt — Encrypts data
  • openssl_error_string — Return openSSL error message
  • openssl_free_key — Free key resource
  • openssl_get_cipher_methods — Gets available cipher methods
  • openssl_get_md_methods — Gets available digest methods
  • openssl_get_privatekey — Sinônimo de openssl_pkey_get_private
  • openssl_get_publickey — Sinônimo de openssl_pkey_get_public
  • openssl_open — Open sealed data
  • openssl_pkcs12_export_to_file — Exports a PKCS#12 Compatible Certificate Store File
  • openssl_pkcs12_export — Exports a PKCS#12 Compatible Certificate Store File to variable.
  • openssl_pkcs12_read — Parse a PKCS#12 Certificate Store into an array
  • openssl_pkcs7_decrypt — Decrypts an S/MIME encrypted message
  • openssl_pkcs7_encrypt — Encrypt an S/MIME message
  • openssl_pkcs7_sign — Sign an S/MIME message
  • openssl_pkcs7_verify — Verifies the signature of an S/MIME signed message
  • openssl_pkey_export_to_file — Gets an exportable representation of a key into a file
  • openssl_pkey_export — Gets an exportable representation of a key into a string
  • openssl_pkey_free — Frees a private key
  • openssl_pkey_get_details — Returns an array with the key details
  • openssl_pkey_get_private — Get a private key
  • openssl_pkey_get_public — Extract public key from certificate and prepare it for use
  • openssl_pkey_new — Generates a new private key
  • openssl_private_decrypt — Decrypts data with private key
  • openssl_private_encrypt — Encrypts data with private key
  • openssl_public_decrypt — Decrypts data with public key
  • openssl_public_encrypt — Encrypts data with public key
  • openssl_random_pseudo_bytes — Generate a pseudo-random string of bytes
  • openssl_seal — Seal (encrypt) data
  • openssl_sign — Generate signature
  • openssl_verify — Verify signature
  • openssl_x509_check_private_key — Checks if a private key corresponds to a certificate
  • openssl_x509_checkpurpose — Verifies if a certificate can be used for a particular purpose
  • openssl_x509_export_to_file — Exports a certificate to file
  • openssl_x509_export — Exports a certificate as a string
  • openssl_x509_free — Free certificate resource
  • openssl_x509_parse — Parse an X509 certificate and return the information as an array
  • openssl_x509_read — Parse an X.509 certificate and return a resource identifier for it
Certificate Verification
openssl_csr_export_to_file
OpenSSL


Exports a CSR to a file

OpenSSL Funções
openssl_csr_export
OpenSSL Funções
PHP Manual

openssl_csr_export_to_file

(PHP 4 >= 4.2.0, PHP 5)

openssl_csr_export_to_file — Exports a CSR to a file

Descrição

bool openssl_csr_export_to_file ( resource $csr , string $outfilename [, bool $notext = true ] )

openssl_csr_export_to_file() takes the Certificate Signing Request represented by csr and saves it as ascii-armoured text into the file named by outfilename.

Parâmetros

csr

outfilename

Path to the output file.

notext

O parâmetro opcional notext afeta a exibição da saída; se ele é FALSE então informação legível para humano é incluida na saída. O valor padrão do notext é TRUE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_csr_export() - Exports a CSR as a string
  • openssl_csr_new() - Generates a CSR
  • openssl_csr_sign() - Sign a CSR with another certificate (or itself) and generate a certificate

OpenSSL Funções
openssl_csr_export
OpenSSL Funções


Exports a CSR as a string

openssl_csr_export_to_file
openssl_csr_get_public_key
OpenSSL Funções
PHP Manual

openssl_csr_export

(PHP 4 >= 4.2.0, PHP 5)

openssl_csr_export — Exports a CSR as a string

Descrição

bool openssl_csr_export ( resource $csr , string &$out [, bool $notext = true ] )

openssl_csr_export() takes the Certificate Signing Request represented by csr and stores it as ascii-armoured text into out, which is passed by reference.

Parâmetros

csr

out

notext

O parâmetro opcional notext afeta a exibição da saída; se ele é FALSE então informação legível para humano é incluida na saída. O valor padrão do notext é TRUE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_csr_export_to_file() - Exports a CSR to a file
  • openssl_csr_new() - Generates a CSR
  • openssl_csr_sign() - Sign a CSR with another certificate (or itself) and generate a certificate

openssl_csr_export_to_file
openssl_csr_get_public_key
OpenSSL Funções


Returns the public key of a CERT

openssl_csr_export
openssl_csr_get_subject
OpenSSL Funções
PHP Manual

openssl_csr_get_public_key

(PHP 5 >= 5.2.0)

openssl_csr_get_public_key — Returns the public key of a CERT

Descrição

resource openssl_csr_get_public_key ( mixed $csr [, bool $use_shortnames = true ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

openssl_csr_export
openssl_csr_get_subject
OpenSSL Funções


Returns the subject of a CERT

openssl_csr_get_public_key
openssl_csr_new
OpenSSL Funções
PHP Manual

openssl_csr_get_subject

(PHP 5 >= 5.2.0)

openssl_csr_get_subject — Returns the subject of a CERT

Descrição

array openssl_csr_get_subject ( mixed $csr [, bool $use_shortnames = true ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

openssl_csr_get_public_key
openssl_csr_new
OpenSSL Funções


Generates a CSR

openssl_csr_get_subject
openssl_csr_sign
OpenSSL Funções
PHP Manual

openssl_csr_new

(PHP 4 >= 4.2.0, PHP 5)

openssl_csr_new — Generates a CSR

Descrição

mixed openssl_csr_new ( array $dn , resource &$privkey [, array $configargs [, array $extraattribs ]] )

openssl_csr_new() generates a new CSR (Certificate Signing Request) based on the information provided by dn, which represents the Distinguished Name to be used in the certificate.

Nota: Você precisa ter um válido openssl.cnf instalado para esta função operar corretamente. Veja as notas sobre a seção de instalação para mais informação.

Parâmetros

dn

The Distinguished Name to be used in the certificate.

privkey

privkey should be set to a private key that was previously generated by openssl_pkey_new() (or otherwise obtained from the other openssl_pkey family of functions). The corresponding public portion of the key will be used to sign the CSR.

configargs

By default, the information in your system openssl.conf is used to initialize the request; you can specify a configuration file section by setting the config_section_section key of configargs. You can also specify an alternative openssl configuration file by setting the value of the config key to the path of the file you want to use. The following keys, if present in configargs behave as their equivalents in the openssl.conf, as listed in the table below.

Configuration overrides
configargs key | type | openssl.conf equivalent | description
digest_alg | string | default_md | Selects which digest method to use
x509_extensions | string | x509_extensions | Selects which extensions should be used when creating an x509 certificate
req_extensions | string | req_extensions | Selects which extensions should be used when creating a CSR
private_key_bits | integer | default_bits | Specifies how many bits should be used to generate a private key
private_key_type | integer | none | Specifies the type of private key to create. This can be one of OPENSSL_KEYTYPE_DSA, OPENSSL_KEYTYPE_DH or OPENSSL_KEYTYPE_RSA. The default value is OPENSSL_KEYTYPE_RSA which is currently the only supported key type.
encrypt_key | boolean | encrypt_key | Should an exported key (with passphrase) be encrypted?

extraattribs

extraattribs is used to specify additional configuration options for the CSR. Both dn and extraattribs are associative arrays whose keys are converted to OIDs and applied to the relevant part of the request.

Valor Retornado

Returns the CSR.

Exemplos

Exemplo #1 Creating a self-signed-certificate

<?php
// Fill in data for the distinguished name to be used in the cert
// You must change the values of these keys to match your name and
// company, or more precisely, the name and company of the person/site
// that you are generating the certificate for.
// For SSL certificates, the commonName is usually the domain name of
// that will be using the certificate, but for S/MIME certificates,
// the commonName will be the name of the individual who will use the
// certificate.
$dn = array(
    "countryName" => "UK",
    "stateOrProvinceName" => "Somerset",
    "localityName" => "Glastonbury",
    "organizationName" => "The Brain Room Limited",
    "organizationalUnitName" => "PHP Documentation Team",
    "commonName" => "Wez Furlong",
    "emailAddress" => "wez@example.com"
);

// Generate a new private (and public) key pair
$privkey = openssl_pkey_new();

// Generate a certificate signing request
$csr = openssl_csr_new($dn, $privkey);

// You will usually want to create a self-signed certificate at this
// point until your CA fulfills your request.
// This creates a self-signed cert that is valid for 365 days
$sscert = openssl_csr_sign($csr, null, $privkey, 365);

// Now you will want to preserve your private key, CSR and self-signed
// cert so that they can be installed into your web server, mail server
// or mail client (depending on the intended use of the certificate).
// This example shows how to get those things into variables, but you
// can also store them directly into files.
// Typically, you will send the CSR on to your CA who will then issue
// you with the "real" certificate.
openssl_csr_export($csr, $csrout) and var_dump($csrout);
openssl_x509_export($sscert, $certout) and var_dump($certout);
openssl_pkey_export($privkey, $pkeyout, "mypassword") and var_dump($pkeyout);

// Show any errors that occurred here
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>

openssl_csr_get_subject
openssl_csr_sign
OpenSSL Funções


Sign a CSR with another certificate (or itself) and generate a certificate

openssl_csr_new
openssl_decrypt
OpenSSL Funções
PHP Manual

openssl_csr_sign

(PHP 4 >= 4.2.0, PHP 5)

openssl_csr_sign — Sign a CSR with another certificate (or itself) and generate a certificate

Descrição

resource openssl_csr_sign ( mixed $csr , mixed $cacert , mixed $priv_key , int $days [, array $configargs [, int $serial = 0 ]] )

openssl_csr_sign() generates an x509 certificate resource from the given CSR.

Nota: Você precisa ter um válido openssl.cnf instalado para esta função operar corretamente. Veja as notas sobre a seção de instalação para mais informação.

Parâmetros

csr

A CSR previously generated by openssl_csr_new(). It can also be the path to a PEM encoded CSR when specified as file://path/to/csr or an exported string generated by openssl_csr_export().

cacert

The generated certificate will be signed by cacert. If cacert is NULL, the generated certificate will be a self-signed certificate.

priv_key

priv_key is the private key that corresponds to cacert.

days

days specifies the length of time for which the generated certificate will be valid, in days.

configargs

You can finetune the CSR signing by configargs. See openssl_csr_new() for more information about configargs.

serial

An optional the serial number of issued certificate. If not specified it will default to 0.

Valor Retornado

Returns an x509 certificate resource on success, FALSE on failure.

Histórico

Versão | Descrição
4.3.3 | The serial parameter was added.

Exemplos

Exemplo #1 openssl_csr_sign() example - signing a CSR (how to implement your own CA)

<?php
// Let's assume that this script is set to receive a CSR that has
// been pasted into a textarea from another page
$csrdata = $_POST["CSR"];

// We will sign the request using our own "certificate authority"
// certificate.  You can use any certificate to sign another, but
// the process is worthless unless the signing certificate is trusted
// by the software/users that will deal with the newly signed certificate

// We need our CA cert and its private key
$cacert = "file://path/to/ca.crt";
$privkey = array("file://path/to/ca.key", "your_ca_key_passphrase");

$usercert = openssl_csr_sign($csrdata, $cacert, $privkey, 365);

// Now display the generated certificate so that the user can
// copy and paste it into their local configuration (such as a file
// to hold the certificate for their SSL server)
openssl_x509_export($usercert, $certout);
echo $certout;

// Show any errors that occurred here
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>

openssl_csr_new
openssl_decrypt
OpenSSL Funções


Decrypts data

openssl_csr_sign
openssl_dh_compute_key
OpenSSL Funções
PHP Manual

openssl_decrypt

(PHP 5 >= 5.3.0)

openssl_decrypt — Decrypts data

Descrição

string openssl_decrypt ( string $data , string $method , string $password [, bool $raw_input = false [, string $iv = "" ]] )

Takes a raw or base64 encoded string and decrypts it using a given method and key.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

data

The data.

method

The cipher method.

password

The password.

raw_input

Setting to TRUE will take a raw encoded string, otherwise a base64 string is assumed for the data parameter.

Valor Retornado

The decrypted string on success or FALSE on failure.

Erros

Emits an E_WARNING level error if an unknown cipher algorithm is passed via the method parameter.

Veja Também

  • openssl_encrypt() - Encrypts data

openssl_csr_sign
openssl_dh_compute_key
OpenSSL Funções


Computes shared secret for public value of remote DH key and local DH key

openssl_decrypt
openssl_digest
OpenSSL Funções
PHP Manual

openssl_dh_compute_key

(No version information available, might only be in SVN)

openssl_dh_compute_key — Computes shared secret for public value of remote DH key and local DH key

Descrição

string openssl_dh_compute_key ( string $pub_key , resource $dh_key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pub_key

Public key

dh_key

DH key

Valor Retornado

Returns computed key on success or FALSE on failure.

openssl_decrypt
openssl_digest
OpenSSL Funções


Computes a digest

openssl_dh_compute_key
openssl_encrypt
OpenSSL Funções
PHP Manual

openssl_digest

(PHP 5 >= 5.3.0)

openssl_digest — Computes a digest

Descrição

string openssl_digest ( string $data , string $method [, bool $raw_output = false ] )

Computes a digest hash value for the given data using a given method, and returns a raw or binhex encoded string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

data

The data.

method

The digest method.

raw_output

Setting to TRUE will return as raw output data, otherwise the return value is binhex encoded.

Valor Retornado

Returns the digested hash value on success or FALSE on failure.

Erros

Emits an E_WARNING level error if an unknown signature algorithm is passed via the method parameter.

Veja Também

  • openssl_get_cipher_methods() - Gets available cipher methods

openssl_dh_compute_key
openssl_encrypt
OpenSSL Funções


Encrypts data

openssl_digest
openssl_error_string
OpenSSL Funções
PHP Manual

openssl_encrypt

(PHP 5 >= 5.3.0)

openssl_encrypt — Encrypts data

Descrição

string openssl_encrypt ( string $data , string $method , string $password [, bool $raw_output = false [, string $iv = "" ]] )

Encrypts given data with given method and key, returns a raw or base64 encoded string

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

data

The data.

method

The cipher method.

password

The password.

raw_output

Setting to TRUE will return as raw output data, otherwise the return value is base64 encoded.

Valor Retornado

Returns the encrypted string on success or FALSE on failure.

Erros

Emits an E_WARNING level error if an unknown cipher algorithm is passed in via the method parameter.

Veja Também

  • openssl_decrypt() - Decrypts data

openssl_digest
openssl_error_string
OpenSSL Funções


Return openSSL error message

openssl_encrypt
openssl_free_key
OpenSSL Funções
PHP Manual

openssl_error_string

(PHP 4 >= 4.0.6, PHP 5)

openssl_error_string — Return openSSL error message

Descrição

string openssl_error_string ( void )

openssl_error_string() returns the last error from the openSSL library. Error messages are stacked, so this function should be called multiple times to collect all of the information.

Valor Retornado

Returns an error message string, or FALSE if there are no more error messages to return.

Exemplos

Exemplo #1 openssl_error_string() example

<?php
// lets assume you just called an openssl function that failed
while ($msg = openssl_error_string())
    echo $msg . "<br />\n";
?>

openssl_encrypt
openssl_free_key
OpenSSL Funções


Free key resource

openssl_error_string
openssl_get_cipher_methods
OpenSSL Funções
PHP Manual

openssl_free_key

(PHP 4 >= 4.0.4, PHP 5)

openssl_free_key — Free key resource

Descrição

void openssl_free_key ( resource $key_identifier )

openssl_free_key() frees the key associated with the specified key_identifier from memory.

Parâmetros

key_identifier

Valor Retornado

Não há valor retornado.

openssl_error_string
openssl_get_cipher_methods
OpenSSL Funções


Gets available cipher methods

openssl_free_key
openssl_get_md_methods
OpenSSL Funções
PHP Manual

openssl_get_cipher_methods

(PHP 5 >= 5.3.0)

openssl_get_cipher_methods — Gets available cipher methods

Descrição

array openssl_get_cipher_methods ([ bool $aliases = false ] )

Gets a list of available cipher methods.

Parâmetros

aliases

Set to TRUE if cipher aliases should be included within the returned array.

Valor Retornado

An array of available cipher methods.

Exemplos

Exemplo #1 openssl_get_cipher_methods() example

Shows how the available ciphers might look, and also which aliases might be available.

<?php
$ciphers             = openssl_get_cipher_methods();
$ciphers_and_aliases = openssl_get_cipher_methods(true);
$cipher_aliases      = array_diff($ciphers_and_aliases, $ciphers);

print_r($ciphers);

print_r($cipher_aliases);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => AES-128-CBC
    [1] => AES-128-CFB
    [2] => AES-128-CFB1
    [3] => AES-128-CFB8
    [4] => AES-128-ECB
    [5] => AES-128-OFB
    [6] => AES-192-CBC
    [7] => AES-192-CFB
    [8] => AES-192-CFB1
    [9] => AES-192-CFB8
    [10] => AES-192-ECB
    [11] => AES-192-OFB
    [12] => AES-256-CBC
    [13] => AES-256-CFB
    [14] => AES-256-CFB1
    [15] => AES-256-CFB8
    [16] => AES-256-ECB
    [17] => AES-256-OFB
    [18] => BF-CBC
    [19] => BF-CFB
    [20] => BF-ECB
    [21] => BF-OFB
    [22] => CAST5-CBC
    [23] => CAST5-CFB
    [24] => CAST5-ECB
    [25] => CAST5-OFB
    [26] => DES-CBC
    [27] => DES-CFB
    [28] => DES-CFB1
    [29] => DES-CFB8
    [30] => DES-ECB
    [31] => DES-EDE
    [32] => DES-EDE-CBC
    [33] => DES-EDE-CFB
    [34] => DES-EDE-OFB
    [35] => DES-EDE3
    [36] => DES-EDE3-CBC
    [37] => DES-EDE3-CFB
    [38] => DES-EDE3-OFB
    [39] => DES-OFB
    [40] => DESX-CBC
    [41] => IDEA-CBC
    [42] => IDEA-CFB
    [43] => IDEA-ECB
    [44] => IDEA-OFB
    [45] => RC2-40-CBC
    [46] => RC2-64-CBC
    [47] => RC2-CBC
    [48] => RC2-CFB
    [49] => RC2-ECB
    [50] => RC2-OFB
    [51] => RC4
    [52] => RC4-40
    [53] => aes-128-cbc
    [54] => aes-128-cfb
    [55] => aes-128-cfb1
    [56] => aes-128-cfb8
    [57] => aes-128-ecb
    [58] => aes-128-ofb
    [59] => aes-192-cbc
    [60] => aes-192-cfb
    [61] => aes-192-cfb1
    [62] => aes-192-cfb8
    [63] => aes-192-ecb
    [64] => aes-192-ofb
    [65] => aes-256-cbc
    [66] => aes-256-cfb
    [67] => aes-256-cfb1
    [68] => aes-256-cfb8
    [69] => aes-256-ecb
    [70] => aes-256-ofb
    [71] => bf-cbc
    [72] => bf-cfb
    [73] => bf-ecb
    [74] => bf-ofb
    [75] => cast5-cbc
    [76] => cast5-cfb
    [77] => cast5-ecb
    [78] => cast5-ofb
    [79] => des-cbc
    [80] => des-cfb
    [81] => des-cfb1
    [82] => des-cfb8
    [83] => des-ecb
    [84] => des-ede
    [85] => des-ede-cbc
    [86] => des-ede-cfb
    [87] => des-ede-ofb
    [88] => des-ede3
    [89] => des-ede3-cbc
    [90] => des-ede3-cfb
    [91] => des-ede3-ofb
    [92] => des-ofb
    [93] => desx-cbc
    [94] => idea-cbc
    [95] => idea-cfb
    [96] => idea-ecb
    [97] => idea-ofb
    [98] => rc2-40-cbc
    [99] => rc2-64-cbc
    [100] => rc2-cbc
    [101] => rc2-cfb
    [102] => rc2-ecb
    [103] => rc2-ofb
    [104] => rc4
    [105] => rc4-40
)
Array
(
    [18] => AES128
    [19] => AES192
    [20] => AES256
    [21] => BF
    [26] => CAST
    [27] => CAST-cbc
    [32] => DES
    [47] => DES3
    [48] => DESX
    [50] => IDEA
    [55] => RC2
    [82] => aes128
    [83] => aes192
    [84] => aes256
    [85] => bf
    [90] => blowfish
    [91] => cast
    [92] => cast-cbc
    [97] => des
    [112] => des3
    [113] => desx
    [115] => idea
    [120] => rc2
)

Veja Também

  • openssl_get_md_methods() - Gets available digest methods

openssl_free_key
openssl_get_md_methods
OpenSSL Funções


Gets available digest methods

openssl_get_cipher_methods
openssl_get_privatekey
OpenSSL Funções
PHP Manual

openssl_get_md_methods

(PHP 5 >= 5.3.0)

openssl_get_md_methods — Gets available digest methods

Descrição

array openssl_get_md_methods ([ bool $aliases = false ] )

Gets a list of available digest methods.

Parâmetros

aliases

Set to TRUE if digest aliases should be included within the returned array.

Valor Retornado

An array of available digest methods.

Exemplos

Exemplo #1 openssl_get_md_methods() example

Shows how the available digests might look, and also which aliases might be available.

<?php
$digests             = openssl_get_md_methods();
$digests_and_aliases = openssl_get_md_methods(true);
$digest_aliases      = array_diff($digests_and_aliases, $digests);

print_r($digests);

print_r($digest_aliases);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => DSA
    [1] => DSA-SHA
    [2] => MD2
    [3] => MD4
    [4] => MD5
    [5] => RIPEMD160
    [6] => SHA
    [7] => SHA1
    [8] => SHA224
    [9] => SHA256
    [10] => SHA384
    [11] => SHA512
    [12] => dsaEncryption
    [13] => dsaWithSHA
    [14] => ecdsa-with-SHA1
    [15] => md2
    [16] => md4
    [17] => md5
    [18] => ripemd160
    [19] => sha
    [20] => sha1
    [21] => sha224
    [22] => sha256
    [23] => sha384
    [24] => sha512
)
Array
(
    [2] => DSA-SHA1
    [3] => DSA-SHA1-old
    [4] => DSS1
    [9] => RSA-MD2
    [10] => RSA-MD4
    [11] => RSA-MD5
    [12] => RSA-RIPEMD160
    [13] => RSA-SHA
    [14] => RSA-SHA1
    [15] => RSA-SHA1-2
    [16] => RSA-SHA224
    [17] => RSA-SHA256
    [18] => RSA-SHA384
    [19] => RSA-SHA512
    [28] => dsaWithSHA1
    [29] => dss1
    [32] => md2WithRSAEncryption
    [34] => md4WithRSAEncryption
    [36] => md5WithRSAEncryption
    [37] => ripemd
    [39] => ripemd160WithRSA
    [40] => rmd160
    [43] => sha1WithRSAEncryption
    [45] => sha224WithRSAEncryption
    [47] => sha256WithRSAEncryption
    [49] => sha384WithRSAEncryption
    [51] => sha512WithRSAEncryption
    [52] => shaWithRSAEncryption
    [53] => ssl2-md5
    [54] => ssl3-md5
    [55] => ssl3-sha1
)

Veja Também

  • openssl_digest() - Computes a digest
  • openssl_get_cipher_methods() - Gets available cipher methods

openssl_get_cipher_methods
openssl_get_privatekey
OpenSSL Funções


Sinônimo de openssl_pkey_get_private

openssl_get_md_methods
openssl_get_publickey
OpenSSL Funções
PHP Manual

openssl_get_privatekey

(PHP 4 >= 4.0.4, PHP 5)

openssl_get_privatekey — Sinônimo de openssl_pkey_get_private()

Descrição

Esta função é um apelido para: openssl_pkey_get_private().

openssl_get_md_methods
openssl_get_publickey
OpenSSL Funções


Sinônimo de openssl_pkey_get_public

openssl_get_privatekey
openssl_open
OpenSSL Funções
PHP Manual

openssl_get_publickey

(PHP 4 >= 4.0.4, PHP 5)

openssl_get_publickey — Sinônimo de openssl_pkey_get_public()

Descrição

Esta função é um apelido para: openssl_pkey_get_public().

openssl_get_privatekey
openssl_open
OpenSSL Funções


Open sealed data

openssl_get_publickey
openssl_pkcs12_export_to_file
OpenSSL Funções
PHP Manual

openssl_open

(PHP 4 >= 4.0.4, PHP 5)

openssl_open — Open sealed data

Descrição

bool openssl_open ( string $sealed_data , string &$open_data , string $env_key , mixed $priv_key_id [, string $method ] )

openssl_open() opens (decrypts) sealed_data using the private key associated with the key identifier priv_key_id and the envelope key env_key, and fills open_data with the decrypted data. The envelope key is generated when the data are sealed and can only be used by one specific private key. See openssl_seal() for more information.

Parâmetros

sealed_data

open_data

If the call is successful the opened data is returned in this parameter.

env_key

priv_key_id

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 openssl_open() example

<?php
// $sealed and $env_key are assumed to contain the sealed data
// and our envelope key, both given to us by the sealer.

// fetch private key from file and ready it
$fp = fopen("/src/openssl-0.9.6/demos/sign/key.pem", "r");
$priv_key = fread($fp, 8192);
fclose($fp);
$pkeyid = openssl_get_privatekey($priv_key);

// decrypt the data and store it in $open
if (openssl_open($sealed, $open, $env_key, $pkeyid)) {
    echo "here is the opened data: ", $open;
} else {
    echo "failed to open data";
}

// free the private key from memory
openssl_free_key($pkeyid);
?>

Veja Também

  • openssl_seal() - Seal (encrypt) data

openssl_get_publickey
openssl_pkcs12_export_to_file
OpenSSL Funções


Exports a PKCS#12 Compatible Certificate Store File

openssl_open
openssl_pkcs12_export
OpenSSL Funções
PHP Manual

openssl_pkcs12_export_to_file

(PHP 5 >= 5.2.2)

openssl_pkcs12_export_to_file — Exports a PKCS#12 Compatible Certificate Store File

Descrição

bool openssl_pkcs12_export_to_file ( mixed $x509 , string $filename , mixed $priv_key , string $pass [, array $args ] )

openssl_pkcs12_export_to_file() stores x509 into a file named by filename in a PKCS#12 file format.

Parâmetros

x509

See Key/Certificate parameters for a list of valid values.

filename

Path to the output file.

priv_key

Private key component of PKCS#12 file.

pass

Encryption password for unlocking the PKCS#12 file.

args

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_open
openssl_pkcs12_export
OpenSSL Funções


Exports a PKCS#12 Compatible Certificate Store File to variable.

openssl_pkcs12_export_to_file
openssl_pkcs12_read
OpenSSL Funções
PHP Manual

openssl_pkcs12_export

(PHP 5 >= 5.2.2)

openssl_pkcs12_export — Exports a PKCS#12 Compatible Certificate Store File to variable.

Descrição

bool openssl_pkcs12_export ( mixed $x509 , string &$out , mixed $priv_key , string $pass [, array $args ] )

openssl_pkcs12_export() stores x509 into a string named by out in a PKCS#12 file format.

Parâmetros

x509

See Key/Certificate parameters for a list of valid values.

out

On success, this will hold the PKCS#12.

priv_key

Private key component of PKCS#12 file.

pass

Encryption password for unlocking the PKCS#12 file.

args

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_pkcs12_export_to_file
openssl_pkcs12_read
OpenSSL Funções


Parse a PKCS#12 Certificate Store into an array

openssl_pkcs12_export
openssl_pkcs7_decrypt
OpenSSL Funções
PHP Manual

openssl_pkcs12_read

(PHP 5 >= 5.2.2)

openssl_pkcs12_read — Parse a PKCS#12 Certificate Store into an array

Descrição

bool openssl_pkcs12_read ( string $pkcs12 , array &$certs , string $pass )

openssl_pkcs12_read() parses the PKCS#12 certificate store supplied by pkcs12 into a array named certs.

Parâmetros

pkcs12

certs

On success, this will hold the Certificate Store Data.

pass

Encryption password for unlocking the PKCS#12 file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_pkcs12_export
openssl_pkcs7_decrypt
OpenSSL Funções


Decrypts an S/MIME encrypted message

openssl_pkcs12_read
openssl_pkcs7_encrypt
OpenSSL Funções
PHP Manual

openssl_pkcs7_decrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_pkcs7_decrypt — Decrypts an S/MIME encrypted message

Descrição

bool openssl_pkcs7_decrypt ( string $infilename , string $outfilename , mixed $recipcert [, mixed $recipkey ] )

Decrypts the S/MIME encrypted message contained in the file specified by infilename using the certificate and its associated private key specified by recipcert and recipkey.

Parâmetros

infilename

outfilename

The decrypted message is written to the file specified by outfilename.

recipcert

recipkey

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 openssl_pkcs7_decrypt() example

<?php
// $cert and $key are assumed to contain your personal certificate and private
// key pair, and that you are the recipient of an S/MIME message
$infilename = "encrypted.msg";  // this file holds your encrypted message
$outfilename = "decrypted.msg"; // make sure you can write to this file

if (openssl_pkcs7_decrypt($infilename, $outfilename, $cert, $key)) {
    echo "decrypted!";
} else {
    echo "failed to decrypt!";
}
?>

openssl_pkcs12_read
openssl_pkcs7_encrypt
OpenSSL Funções


Encrypt an S/MIME message

openssl_pkcs7_decrypt
openssl_pkcs7_sign
OpenSSL Funções
PHP Manual

openssl_pkcs7_encrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_pkcs7_encrypt — Encrypt an S/MIME message

Descrição

bool openssl_pkcs7_encrypt ( string $infile , string $outfile , mixed $recipcerts , array $headers [, int $flags = 0 [, int $cipherid = OPENSSL_CIPHER_RC2_40 ]] )

openssl_pkcs7_encrypt() takes the contents of the file named infile and encrypts them using an RC2 40-bit cipher so that they can only be read by the intended recipients specified by recipcerts.

Parâmetros

infile

outfile

recipcerts

Either a lone X.509 certificate, or an array of X.509 certificates.

headers

headers is an array of headers that will be prepended to the data after it has been encrypted.

headers can be either an associative array keyed by header name, or an indexed array, where each element contains a single header line.

flags

flags can be used to specify options that affect the encoding process - see PKCS7 constants.

cipherid

Cipher can be selected with cipherid.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | The cipherid parameter was added.

Exemplos

Exemplo #1 openssl_pkcs7_encrypt() example

<?php
// the message you want to encrypt and send to your secret agent
// in the field, known as nighthawk.  You have his certificate
// in the file nighthawk.pem
$data = <<<EOD
Nighthawk,

Top secret, for your eyes only!

The enemy is closing in! Meet me at the cafe at 8.30am
to collect your forged passport!

HQ
EOD;

// load key
$key = file_get_contents("nighthawk.pem");

// save message to file
$fp = fopen("msg.txt", "w");
fwrite($fp, $data);
fclose($fp);

// encrypt it
if (openssl_pkcs7_encrypt("msg.txt", "enc.txt", $key,
    array("To" => "nighthawk@example.com", // keyed syntax
          "From: HQ <hq@example.com>", // indexed syntax
          "Subject" => "Eyes only"))) {
    // message encrypted - send it!
    exec(ini_get("sendmail_path") . " < enc.txt");
}
?>

openssl_pkcs7_decrypt
openssl_pkcs7_sign
OpenSSL Funções


Sign an S/MIME message

openssl_pkcs7_encrypt
openssl_pkcs7_verify
OpenSSL Funções
PHP Manual

openssl_pkcs7_sign

(PHP 4 >= 4.0.6, PHP 5)

openssl_pkcs7_sign — Sign an S/MIME message

Descrição

bool openssl_pkcs7_sign ( string $infilename , string $outfilename , mixed $signcert , mixed $privkey , array $headers [, int $flags = PKCS7_DETACHED [, string $extracerts ]] )

openssl_pkcs7_sign() takes the contents of the file named infilename and signs them using the certificate and its matching private key specified by signcert and privkey parameters.

Parâmetros

infilename

outfilename

signcert

privkey

headers

headers is an array of headers that will be prepended to the data after it has been signed (see openssl_pkcs7_encrypt() for more information about the format of this parameter).

flags

flags can be used to alter the output - see PKCS7 constants.

extracerts

extracerts specifies the name of a file containing a bunch of extra certificates to include in the signature which can for example be used to help the recipient to verify the certificate that you used.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 openssl_pkcs7_sign() example

<?php
// the message you want to sign so that recipient can be sure it was you that
// sent it
$data = <<<EOD

You have my authorization to spend $10,000 on dinner expenses.

The CEO
EOD;
// save message to file
$fp = fopen("msg.txt", "w");
fwrite($fp, $data);
fclose($fp);
// encrypt it
if (openssl_pkcs7_sign("msg.txt", "signed.txt", "mycert.pem",
    array("file://mycert.pem", "mypassphrase"),
    array("To" => "joes@example.com", // keyed syntax
          "From: HQ <ceo@example.com>", // indexed syntax
          "Subject" => "Eyes only")
    )) {
    // message signed - send it!
    exec(ini_get("sendmail_path") . " < signed.txt");
}
?>

openssl_pkcs7_encrypt
openssl_pkcs7_verify
OpenSSL Funções


Verifies the signature of an S/MIME signed message

openssl_pkcs7_sign
openssl_pkey_export_to_file
OpenSSL Funções
PHP Manual

openssl_pkcs7_verify

(PHP 4 >= 4.0.6, PHP 5)

openssl_pkcs7_verify — Verifies the signature of an S/MIME signed message

Descrição

mixed openssl_pkcs7_verify ( string $filename , int $flags [, string $outfilename [, array $cainfo [, string $extracerts [, string $content ]]]] )

openssl_pkcs7_verify() reads the S/MIME message contained in the given file and examines the digital signature.

Parâmetros

filename

Path to the message.

flags

flags can be used to affect how the signature is verified - see PKCS7 constants for more information.

outfilename

If the outfilename is specified, it should be a string holding the name of a file into which the certificates of the persons that signed the messages will be stored in PEM format.

cainfo

If the cainfo is specified, it should hold information about the trusted CA certificates to use in the verification process - see certificate verification for more information about this parameter.

extracerts

If the extracerts is specified, it is the filename of a file containing a bunch of certificates to use as untrusted CAs.

content

You can specify a filename with content that will be filled with the verified data, but with the signature information stripped.

Valor Retornado

Returns TRUE if the signature is verified, FALSE if it is not correct (the message has been tampered with, or the signing certificate is invalid), or -1 on error.

Histórico

Versão | Descrição
5.1.0 | The content parameter was added.

Notas

Nota: As specified in RFC 2045, lines may not be longer than 76 characters in the filename parameter.

openssl_pkcs7_sign
openssl_pkey_export_to_file
OpenSSL Funções


Gets an exportable representation of a key into a file

openssl_pkcs7_verify
openssl_pkey_export
OpenSSL Funções
PHP Manual

openssl_pkey_export_to_file

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_export_to_file — Gets an exportable representation of a key into a file

Descrição

bool openssl_pkey_export_to_file ( mixed $key , string $outfilename [, string $passphrase [, array $configargs ]] )

openssl_pkey_export_to_file() saves an ascii-armoured (PEM encoded) rendition of key into the file named by outfilename.

Nota: Você precisa ter um válido openssl.cnf instalado para esta função operar corretamente. Veja as notas sobre a seção de instalação para mais informação.

Parâmetros

key

outfilename

Path to the output file.

passphrase

The key can be optionally protected by a passphrase.

configargs

configargs can be used to fine-tune the export process by specifying and/or overriding options for the openssl configuration file. See openssl_csr_new() for more information about configargs.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_pkcs7_verify
openssl_pkey_export
OpenSSL Funções


Gets an exportable representation of a key into a string

openssl_pkey_export_to_file
openssl_pkey_free
OpenSSL Funções
PHP Manual

openssl_pkey_export

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_export — Gets an exportable representation of a key into a string

Descrição

bool openssl_pkey_export ( mixed $key , string &$out [, string $passphrase [, array $configargs ]] )

openssl_pkey_export() exports key as a PEM encoded string and stores it into out (which is passed by reference).

Nota: Você precisa ter um válido openssl.cnf instalado para esta função operar corretamente. Veja as notas sobre a seção de instalação para mais informação.

Parâmetros

key

out

passphrase

The key is optionally protected by passphrase.

configargs

configargs can be used to fine-tune the export process by specifying and/or overriding options for the openssl configuration file. See openssl_csr_new() for more information about configargs.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_pkey_export_to_file
openssl_pkey_free
OpenSSL Funções


Frees a private key

openssl_pkey_export
openssl_pkey_get_details
OpenSSL Funções
PHP Manual

openssl_pkey_free

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_free — Frees a private key

Descrição

void openssl_pkey_free ( resource $key )

This function frees a private key created by openssl_pkey_new().

Parâmetros

key

Resource holding the key.

Valor Retornado

Não há valor retornado.

openssl_pkey_export
openssl_pkey_get_details
OpenSSL Funções


Returns an array with the key details

openssl_pkey_free
openssl_pkey_get_private
OpenSSL Funções
PHP Manual

openssl_pkey_get_details

(PHP 5 >= 5.2.0)

openssl_pkey_get_details — Returns an array with the key details

Descrição

array openssl_pkey_get_details ( resource $key )

This function returns the key details (bits, key, type).

Parâmetros

key

Resource holding the key.

Valor Retornado

Returns an array with the key details in success or FALSE in failure. Returned array has indexes bits (number of bits), key (string representation of the public key) and type (type of the key which is one of OPENSSL_KEYTYPE_RSA, OPENSSL_KEYTYPE_DSA, OPENSSL_KEYTYPE_DH, OPENSSL_KEYTYPE_EC or -1 meaning unknown).

Depending on the key type used, additional details may be returned. Note that some elements may not always be available.

  • OPENSSL_KEYTYPE_RSA, an additional array key named "rsa", containing the key data is returned.
    Key Descrição
    "n"
    "e"
    "d"
    "p"
    "q"
    "dmp1"
    "dmq1"
    "iqmp"
  • OPENSSL_KEYTYPE_DSA, an additional array key named "dsa", containing the key data is returned.
    Key Descrição
    "p"
    "q"
    "g"
    "priv_key"
    "pub_key"
  • OPENSSL_KEYTYPE_DH, an additional array key named "dh", containing the key data is returned.
    Key Descrição
    "p"
    "g"
    "priv_key"
    "pub_key"
openssl_pkey_free
openssl_pkey_get_private
OpenSSL Funções


Get a private key

openssl_pkey_get_details
openssl_pkey_get_public
OpenSSL Funções
PHP Manual

openssl_pkey_get_private

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_get_private — Get a private key

Descrição

resource openssl_pkey_get_private ( mixed $key [, string $passphrase = "" ] )

openssl_get_privatekey() parses key and prepares it for use by other functions.

Parâmetros

key

key can be one of the following:

  1. a string having the format file://path/to/file.pem. The named file must contain a PEM encoded certificate/private key (it may contain both).
  2. A PEM formatted private key.

passphrase

The optional parameter passphrase must be used if the specified key is encrypted (protected by a passphrase).

Valor Retornado

Returns a positive key resource identifier on success, or FALSE on error.

openssl_pkey_get_details
openssl_pkey_get_public
OpenSSL Funções


Extract public key from certificate and prepare it for use

openssl_pkey_get_private
openssl_pkey_new
OpenSSL Funções
PHP Manual

openssl_pkey_get_public

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_get_public — Extract public key from certificate and prepare it for use

Descrição

resource openssl_pkey_get_public ( mixed $certificate )

openssl_get_publickey() extracts the public key from certificate and prepares it for use by other functions.

Parâmetros

certificate

certificate can be one of the following:

  1. an X.509 certificate resource
  2. a string having the format file://path/to/file.pem. The named file must contain a PEM encoded certificate/private key (it may contain both).
  3. A PEM formatted private key.

Valor Retornado

Returns a positive key resource identifier on success, or FALSE on error.

openssl_pkey_get_private
openssl_pkey_new
OpenSSL Funções


Generates a new private key

openssl_pkey_get_public
openssl_private_decrypt
OpenSSL Funções
PHP Manual

openssl_pkey_new

(PHP 4 >= 4.2.0, PHP 5)

openssl_pkey_new — Generates a new private key

Descrição

resource openssl_pkey_new ([ array $configargs ] )

openssl_pkey_new() generates a new private and public key pair. The public component of the key can be obtained using openssl_pkey_get_public().

Nota: Você precisa ter um válido openssl.cnf instalado para esta função operar corretamente. Veja as notas sobre a seção de instalação para mais informação.

Parâmetros

configargs

You can finetune the key generation (such as specifying the number of bits) using configargs. See openssl_csr_new() for more information about configargs.

Valor Retornado

Returns a resource identifier for the pkey on success, or FALSE on error.

openssl_pkey_get_public
openssl_private_decrypt
OpenSSL Funções


Decrypts data with private key

openssl_pkey_new
openssl_private_encrypt
OpenSSL Funções
PHP Manual

openssl_private_decrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_private_decrypt — Decrypts data with private key

Descrição

bool openssl_private_decrypt ( string $data , string &$decrypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] )

openssl_private_decrypt() decrypts data that was previous encrypted via openssl_public_encrypt() and stores the result into decrypted.

You can use this function e.g. to decrypt data which were supposed only to you.

Parâmetros

data

decrypted

key

key must be the private key corresponding that was used to encrypt the data.

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_public_encrypt() - Encrypts data with public key
  • openssl_public_decrypt() - Decrypts data with public key

openssl_pkey_new
openssl_private_encrypt
OpenSSL Funções


Encrypts data with private key

openssl_private_decrypt
openssl_public_decrypt
OpenSSL Funções
PHP Manual

openssl_private_encrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_private_encrypt — Encrypts data with private key

Descrição

bool openssl_private_encrypt ( string $data , string &$crypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] )

openssl_private_encrypt() encrypts data with private key and stores the result into crypted. Encrypted data can be decrypted via openssl_public_decrypt().

This function can be used e.g. to sign data (or its hash) to prove that it is not written by someone else.

Parâmetros

data

crypted

key

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_NO_PADDING.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_public_encrypt() - Encrypts data with public key
  • openssl_public_decrypt() - Decrypts data with public key

openssl_private_decrypt
openssl_public_decrypt
OpenSSL Funções


Decrypts data with public key

openssl_private_encrypt
openssl_public_encrypt
OpenSSL Funções
PHP Manual

openssl_public_decrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_public_decrypt — Decrypts data with public key

Descrição

bool openssl_public_decrypt ( string $data , string &$decrypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] )

openssl_public_decrypt() decrypts data that was previous encrypted via openssl_private_encrypt() and stores the result into decrypted.

You can use this function e.g. to check if the message was written by the owner of the private key.

Parâmetros

data

decrypted

key

key must be the public key corresponding that was used to encrypt the data.

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_NO_PADDING.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_private_encrypt() - Encrypts data with private key
  • openssl_private_decrypt() - Decrypts data with private key

openssl_private_encrypt
openssl_public_encrypt
OpenSSL Funções


Encrypts data with public key

openssl_public_decrypt
openssl_random_pseudo_bytes
OpenSSL Funções
PHP Manual

openssl_public_encrypt

(PHP 4 >= 4.0.6, PHP 5)

openssl_public_encrypt — Encrypts data with public key

Descrição

bool openssl_public_encrypt ( string $data , string &$crypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] )

openssl_public_encrypt() encrypts data with public key and stores the result into crypted. Encrypted data can be decrypted via openssl_private_decrypt().

This function can be used e.g. to encrypt message which can be then read only by owner of the private key. It can be also used to store secure data in database.

Parâmetros

data

crypted

This will hold the result of the encryption.

key

The public key.

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • openssl_private_encrypt() - Encrypts data with private key
  • openssl_private_decrypt() - Decrypts data with private key

openssl_public_decrypt
openssl_random_pseudo_bytes
OpenSSL Funções


Generate a pseudo-random string of bytes

openssl_public_encrypt
openssl_seal
OpenSSL Funções
PHP Manual

openssl_random_pseudo_bytes

(PHP 5 >= 5.3.0)

openssl_random_pseudo_bytes — Generate a pseudo-random string of bytes

Descrição

string openssl_random_pseudo_bytes ( int $length [, bool &$crypto_strong ] )

Generates a string of pseudo-random bytes, with the number of bytes determined by the length parameter.

It also indicates if a cryptographically strong algorithm was used to produce the pseudo-random bytes, and does this via the optional crypto_strong parameter. It's rare for this to be FALSE, but some systems may be broken or old.

Parâmetros

length

The length of the desired string of bytes. Must be a positive integer. PHP will try to cast this parameter to a non-null integer to use it.

crypto_strong

If passed into the function, this will hold a boolean value that determines if the algorithm used was "cryptographically strong", e.g., safe for usage with GPG, passwords, etc. TRUE if it did, otherwise FALSE

Valor Retornado

Returns the generated string of bytes on success, or FALSE on failure.

Exemplos

Exemplo #1 openssl_random_pseudo_bytes() example

<?php
for ($i = -1; $i <= 4; $i++) {
    $bytes = openssl_random_pseudo_bytes($i, $cstrong);
    $hex   = bin2hex($bytes);

    echo "Lengths: Bytes: $i and Hex: " . strlen($hex) . PHP_EOL;
    var_dump($hex);
    var_dump($cstrong);
    echo PHP_EOL;
}
?>

O exemplo acima irá imprimir algo similar a:

Lengths: Bytes: -1 and Hex: 0
string(0) ""
NULL

Lengths: Bytes: 0 and Hex: 0
string(0) ""
NULL

Lengths: Bytes: 1 and Hex: 2
string(2) "42"
bool(true)

Lengths: Bytes: 2 and Hex: 4
string(4) "dc6e"
bool(true)

Lengths: Bytes: 3 and Hex: 6
string(6) "288591"
bool(true)

Lengths: Bytes: 4 and Hex: 8
string(8) "ab86d144"
bool(true)

Veja Também

  • bin2hex() - Converte um dado binário em representação hexadecimal
  • crypt() - Encriptação unidirecional de string (hashing)
  • mt_rand() - Gerador melhorado de números aleatórios
  • uniqid() - Gera um ID unico
openssl_public_encrypt
openssl_seal
OpenSSL Funções


Seal (encrypt) data

openssl_random_pseudo_bytes
openssl_sign
OpenSSL Funções
PHP Manual

openssl_seal

(PHP 4 >= 4.0.4, PHP 5)

openssl_seal — Seal (encrypt) data

Descrição

int openssl_seal ( string $data , string &$sealed_data , array &$env_keys , array $pub_key_ids [, string $method ] )

openssl_seal() seals (encrypts) data by using RC4 with a randomly generated secret key. The key is encrypted with each of the public keys associated with the identifiers in pub_key_ids and each encrypted key is returned in env_keys. This means that one can send sealed data to multiple recipients (provided one has obtained their public keys). Each recipient must receive both the sealed data and the envelope key that was encrypted with the recipient's public key.

Parâmetros

data

sealed_data

env_keys

pub_key_ids

Valor Retornado

Returns the length of the sealed data on success, or FALSE on error. If successful the sealed data is returned in sealed_data, and the envelope keys in env_keys.

Exemplos

Exemplo #1 openssl_seal() example

<?php
// $data is assumed to contain the data to be sealed

// fetch public keys for our recipients, and ready them
$fp = fopen("/src/openssl-0.9.6/demos/maurice/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk1 = openssl_get_publickey($cert);
// Repeat for second recipient
$fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk2 = openssl_get_publickey($cert);

// seal message, only owners of $pk1 and $pk2 can decrypt $sealed with keys
// $ekeys[0] and $ekeys[1] respectively.
openssl_seal($data, $sealed, $ekeys, array($pk1, $pk2));

// free the keys from memory
openssl_free_key($pk1);
openssl_free_key($pk2);
?>

Veja Também

  • openssl_open() - Open sealed data

openssl_random_pseudo_bytes
openssl_sign
OpenSSL Funções


Generate signature

openssl_seal
openssl_verify
OpenSSL Funções
PHP Manual

openssl_sign

(PHP 4 >= 4.0.4, PHP 5)

openssl_sign — Generate signature

Descrição

bool openssl_sign ( string $data , string &$signature , mixed $priv_key_id [, int $signature_alg = OPENSSL_ALGO_SHA1 ] )

openssl_sign() computes a signature for the specified data by using SHA1 for hashing followed by encryption using the private key associated with priv_key_id. Note that the data itself is not encrypted.

Parâmetros

data

signature

If the call was successful the signature is returned in signature.

priv_key_id

signature_alg

For more information see the list of Signature Algorithms.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | The signature_alg parameter was added.

Exemplos

Exemplo #1 openssl_sign() example

<?php
// $data is assumed to contain the data to be signed

// fetch private key from file and ready it
$fp = fopen("/src/openssl-0.9.6/demos/sign/key.pem", "r");
$priv_key = fread($fp, 8192);
fclose($fp);
$pkeyid = openssl_get_privatekey($priv_key);

// compute signature
openssl_sign($data, $signature, $pkeyid);

// free the key from memory
openssl_free_key($pkeyid);
?>

Veja Também

  • openssl_verify() - Verify signature

openssl_seal
openssl_verify
OpenSSL Funções


Verify signature

openssl_sign
openssl_x509_check_private_key
OpenSSL Funções
PHP Manual

openssl_verify

(PHP 4 >= 4.0.4, PHP 5)

openssl_verify — Verify signature

Descrição

int openssl_verify ( string $data , string $signature , mixed $pub_key_id [, int $signature_alg = OPENSSL_ALGO_SHA1 ] )

openssl_verify() verifies that the signature is correct for the specified data using the public key associated with pub_key_id. This must be the public key corresponding to the private key used for signing.

Parâmetros

data

signature

pub_key_id

signature_alg

For more information see the list of Signature Algorithms.

Valor Retornado

Returns 1 if the signature is correct, 0 if it is incorrect, and -1 on error.

Histórico

Versão | Descrição
5.2.0 | The signature_alg parameter was added.

Exemplos

Exemplo #1 openssl_verify() example

<?php
// $data and $signature are assumed to contain the data and the signature

// fetch public key from certificate and ready it
$fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pubkeyid = openssl_get_publickey($cert);

// state whether signature is okay or not
$ok = openssl_verify($data, $signature, $pubkeyid);
if ($ok == 1) {
    echo "good";
} elseif ($ok == 0) {
    echo "bad";
} else {
    echo "ugly, error checking signature";
}
// free the key from memory
openssl_free_key($pubkeyid);
?>

Veja Também

  • openssl_sign() - Generate signature

openssl_sign
openssl_x509_check_private_key
OpenSSL Funções


Checks if a private key corresponds to a certificate

openssl_verify
openssl_x509_checkpurpose
OpenSSL Funções
PHP Manual

openssl_x509_check_private_key

(PHP 4 >= 4.2.0, PHP 5)

openssl_x509_check_private_key — Checks if a private key corresponds to a certificate

Descrição

bool openssl_x509_check_private_key ( mixed $cert , mixed $key )

Checks whether the given key is the private key that corresponds to cert.

Parâmetros

cert

The certificate.

key

The private key.

Valor Retornado

Returns TRUE if key is the private key that corresponds to cert, or FALSE otherwise.

openssl_verify
openssl_x509_checkpurpose
OpenSSL Funções


Verifies if a certificate can be used for a particular purpose

openssl_x509_check_private_key
openssl_x509_export_to_file
OpenSSL Funções
PHP Manual

openssl_x509_checkpurpose

(PHP 4 >= 4.0.6, PHP 5)

openssl_x509_checkpurpose — Verifies if a certificate can be used for a particular purpose

Descrição

int openssl_x509_checkpurpose ( mixed $x509cert , int $purpose [, array $cainfo = array() [, string $untrustedfile ]] )

openssl_x509_checkpurpose() examines a certificate to see if it can be used for the specified purpose.

Parâmetros

x509cert

The examined certificate.

purpose

openssl_x509_checkpurpose() purposes
Constant | Description
X509_PURPOSE_SSL_CLIENT | Can the certificate be used for the client side of an SSL connection?
X509_PURPOSE_SSL_SERVER | Can the certificate be used for the server side of an SSL connection?
X509_PURPOSE_NS_SSL_SERVER | Can the cert be used for Netscape SSL server?
X509_PURPOSE_SMIME_SIGN | Can the cert be used to sign S/MIME email?
X509_PURPOSE_SMIME_ENCRYPT | Can the cert be used to encrypt S/MIME email?
X509_PURPOSE_CRL_SIGN | Can the cert be used to sign a certificate revocation list (CRL)?
X509_PURPOSE_ANY | Can the cert be used for Any/All purposes?
These options are not bitfields - you may specify one only!

cainfo

cainfo should be an array of trusted CA files/dirs as described in Certificate Verification.

untrustedfile

If specified, this should be the name of a PEM encoded file holding certificates that can be used to help verify the certificate, although no trust is placed in the certificates that come from that file.

Valor Retornado

Returns TRUE if the certificate can be used for the intended purpose, FALSE if it cannot, or -1 on error.

openssl_x509_check_private_key
openssl_x509_export_to_file
OpenSSL Funções


Exports a certificate to file

openssl_x509_checkpurpose
openssl_x509_export
OpenSSL Funções
PHP Manual

openssl_x509_export_to_file

(PHP 4 >= 4.2.0, PHP 5)

openssl_x509_export_to_file — Exports a certificate to file

Descrição

bool openssl_x509_export_to_file ( mixed $x509 , string $outfilename [, bool $notext ] )

openssl_x509_export_to_file() stores x509 into a file named by outfilename in a PEM encoded format.

Parâmetros

x509

See Key/Certificate parameters for a list of valid values.

outfilename

Path to the output file.

notext

O parâmetro opcional notext afeta a exibição da saída; se ele é FALSE então informação legível para humano é incluida na saída. O valor padrão do notext é TRUE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_x509_checkpurpose
openssl_x509_export
OpenSSL Funções


Exports a certificate as a string

openssl_x509_export_to_file
openssl_x509_free
OpenSSL Funções
PHP Manual

openssl_x509_export

(PHP 4 >= 4.2.0, PHP 5)

openssl_x509_export — Exports a certificate as a string

Descrição

bool openssl_x509_export ( mixed $x509 , string &$output [, bool $notext ] )

openssl_x509_export() stores x509 into a string named by output in a PEM encoded format.

Parâmetros

x509

See Key/Certificate parameters for a list of valid values.

output

On success, this will hold the PEM.

notext

O parâmetro opcional notext afeta a exibição da saída; se ele é FALSE então informação legível para humano é incluida na saída. O valor padrão do notext é TRUE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

openssl_x509_export_to_file
openssl_x509_free
OpenSSL Funções


Free certificate resource

openssl_x509_export
openssl_x509_parse
OpenSSL Funções
PHP Manual

openssl_x509_free

(PHP 4 >= 4.0.6, PHP 5)

openssl_x509_free — Free certificate resource

Descrição

void openssl_x509_free ( resource $x509cert )

openssl_x509_free() frees the certificate associated with the specified x509cert resource from memory.

Parâmetros

x509cert

Valor Retornado

Não há valor retornado.

openssl_x509_export
openssl_x509_parse
OpenSSL Funções


Parse an X509 certificate and return the information as an array

openssl_x509_free
openssl_x509_read
OpenSSL Funções
PHP Manual

openssl_x509_parse

(PHP 4 >= 4.0.6, PHP 5)

openssl_x509_parse — Parse an X509 certificate and return the information as an array

Descrição

array openssl_x509_parse ( mixed $x509cert [, bool $shortnames = true ] )

openssl_x509_parse() returns information about the supplied x509cert, including fields such as subject name, issuer name, purposes, valid from and valid to dates etc.

Parâmetros

x509cert

shortnames

shortnames controls how the data is indexed in the array - if shortnames is TRUE (the default) then fields will be indexed with the short name form, otherwise, the long name form will be used - e.g.: CN is the shortname form of commonName.

Valor Retornado

The structure of the returned data is (deliberately) not yet documented, as it is still subject to change.

openssl_x509_free
openssl_x509_read
OpenSSL Funções


Parse an X.509 certificate and return a resource identifier for it

openssl_x509_parse
Extensões de Banco de Dados
OpenSSL Funções
PHP Manual

openssl_x509_read

(PHP 4 >= 4.0.6, PHP 5)

openssl_x509_read — Parse an X.509 certificate and return a resource identifier for it

Descrição

resource openssl_x509_read ( mixed $x509certdata )

openssl_x509_read() parses the certificate supplied by x509certdata and returns a resource identifier for it.

Parâmetros

x509certdata

Valor Retornado

Returns a resource identifier on success or FALSE on failure.

openssl_x509_parse
Extensões de Banco de Dados
OpenSSL Funções


Extensões de Banco de Dados

  • Camadas de Abstração
    • DBA — Database (dbm-style) Abstraction Layer
    • dbx
    • ODBC
    • PDO — PHP Data Objects
  • Vendor Specific Database Extensions
    • CUBRID
    • dBase
    • DB++
    • FrontBase
    • filePro
    • Firebird/InterBase
    • Informix
    • IBM DB2 — IBM DB2, Cloudscape and Apache Derby
    • Ingres — Ingres DBMS, EDBC, and Enterprise Access Gateways
    • MaxDB
    • Mongo — MongoDB Native Driver
    • mSQL
    • Mssql — Microsoft SQL Server
    • MySQL
    • Mysqli — Extensão MySQL Melhorada
    • Mysqlnd — MySQL Native Driver
    • mysqlnd_qc — Mysqlnd query result cache plugin
    • OCI8 — Oracle OCI8
    • Ovrimos SQL
    • Paradox — Paradox File Access
    • PostgreSQL
    • SQLite
    • SQLite3
    • Sybase
    • tokyo_tyrant
openssl_x509_read
Camadas de Abstração
Referência das Funções


Camadas de Abstração

  • DBA — Database (dbm-style) Abstraction Layer
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • DBA Funções
  • dbx
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da dbx
  • ODBC
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • ODBC Unificado
  • PDO — PHP Data Objects
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Connections and Connection management
    • Transactions and auto-commit
    • Prepared statements and stored procedures
    • Errors and error handling
    • Large Objects (LOBs)
    • PDO — The PDO class
    • PDOStatement — The PDOStatement class
    • PDOException — The PDOException class
    • PDO Drivers
Extensões de Banco de Dados
DBA
Extensões de Banco de Dados


Database (dbm-style) Abstraction Layer

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic usage
  • DBA Funções
    • dba_close — Close a DBA database
    • dba_delete — Delete DBA entry specified by key
    • dba_exists — Check whether key exists
    • dba_fetch — Fetch data specified by key
    • dba_firstkey — Fetch first key
    • dba_handlers — List all the handlers available
    • dba_insert — Insert entry
    • dba_key_split — Splits a key in string representation into array representation
    • dba_list — List all open database files
    • dba_nextkey — Fetch next key
    • dba_open — Open database
    • dba_optimize — Optimize database
    • dba_popen — Open database persistently
    • dba_replace — Replace or insert entry
    • dba_sync — Synchronize database
Camadas de Abstração
Introdução
Camadas de Abstração


Introdução

These functions build the foundation for accessing Berkeley DB style databases.

This is a general abstraction layer for several file-based databases. As such, functionality is limited to a common subset of features supported by modern databases such as » Oracle Berkeley DB.

DBA
Instalação/Configuração
DBA


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
DBA


Dependências

The behaviour of various aspects depends on the implementation of the underlying database. Functions such as dba_optimize() and dba_sync() will do what they promise for one database and will do nothing for others. You have to download and install supported dba-Handlers.

List of DBA handlers
Handler | Notes
dbm | Dbm is the oldest (original) type of Berkeley DB style databases. You should avoid it, if possible. We do not support the compatibility functions built into DB2 and gdbm, because they are only compatible on the source code level, but cannot handle the original dbm format.
ndbm | Ndbm is a newer type and more flexible than dbm. It still has most of the arbitrary limits of dbm (therefore it is deprecated).
gdbm | Gdbm is the » GNU database manager.
db2 | DB2 is for » Oracle Berkeley DB 2. It is described as "a programmatic toolkit that provides high-performance built-in database support for both standalone and client/server applications.
db3 | DB3 is for » Oracle Berkeley DB 3.
db4 | DB4 is for » Oracle Berkeley DB 4 or 5. This option is available from PHP 4.3.2. It can be used with BDB 5 from PHP 5.3.3.
cdb | Cdb is "a fast, reliable, lightweight package for creating and reading constant databases." It is from the author of qmail and can be found at » http://cr.yp.to/cdb.html. Since it is constant, we support only reading operations. And since PHP 4.3.0 we support writing (not updating) through the internal cdb library.
cdb_make | Since PHP 4.3.0 we support creation (not updating) of cdb files when the bundled cdb library is used.
flatfile | This is available since PHP 4.3.0 for compatibility with the deprecated dbm extension only and should be avoided. However you may use this where files were created in this format. That happens when configure could not find any external library.
inifile | This is available since PHP 4.3.3 to be able to modify php.ini files from within PHP scripts. When working with ini files you can pass arrays of the form array(0=>group,1=>value_name) or strings of the form "[group]value_name" where group is optional. As the functions dba_firstkey() and dba_nextkey() return string representations of the key there is a new function dba_key_split() available since PHP 5 which allows to convert the string keys into array keys without loosing FALSE.
qdbm | This is available since PHP 5.0.0. The qdbm library can be loaded from » http://fallabs.com/qdbm/index.html.

When invoking the dba_open() or dba_popen() functions, one of the handler names must be supplied as an argument. The actually available list of handlers is displayed by invoking phpinfo() or dba_handlers().

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

By using the --enable-dba=shared configuration option you can build a dynamic loadable module to enable PHP for basic support of dbm-style databases. You also have to add support for at least one of the following handlers by specifying the --with-XXXX configure switch to your PHP configure line.

Aviso

After configuring and compiling PHP you must execute the following test from commandline: php run-tests.php ext/dba. This shows whether your combination of handlers works. Most problematic are dbm and ndbm which conflict with many installations. The reason for this is that on several systems these libraries are part of more than one other library. The configuration test only prevents you from configuring malfunctioning single handlers but not combinations.

Supported DBA handlers
Handler | Configure Switch
dbm

To enable support for dbm add --with-dbm[=DIR] .

Nota:

dbm normally is a wrapper which often results in failures. This means you should only use dbm if you are sure it works and if you really need this format.

ndbm

To enable support for ndbm add --with-ndbm[=DIR] .

Nota:

ndbm normally is a wrapper which often results in failures. This means you should only use ndbm if you are sure it works and if you really need this format.

gdbm | To enable support for gdbm add --with-gdbm[=DIR] .
db2

To enable support for Oracle Berkeley DB 2 add --with-db2[=DIR] .

Nota:

db2 conflicts with db3 and db4.

db3

To enable support for Oracle Berkeley DB 3 add --with-db3[=DIR] .

Nota:

db3 conflicts with db2 and db4.

db4

To enable support for Oracle Berkeley DB 4 or 5 add --with-db4[=DIR] .

Nota:

db4 conflicts with db2 and db3.

Nota:

The db4 option was added in PHP 4.3.2. In earlier versions of PHP you need to use --with-db3=DIR with DIR being the path to db4 library. It is not possible to use db versions starting from 4.1 with PHP prior to version 4.3.0. Also, the db libraries with versions 4.1 through 4.1.24 cannot be used in any PHP version.

Support for BDB 5 was added in PHP 5.3.3.

cdb

To enable support for cdb add --with-cdb[=DIR] .

Nota:

Since PHP 4.3.0 you can omit DIR to use the bundled cdb library that adds the cdb_make handler which allows creation of cdb files and allows to access cdb files on the network using PHP's streams.

flatfile

To enable support for flatfile add --with-flatfile .

Nota:

This was added in PHP 4.3.0 to add compatibility with deprecated dbm extension. Use this handler only when you cannot install one of the libraries required by the other handlers and when you cannot use bundled cdb handler.

inifile

To enable support for inifile add --with-inifile .

Nota:

This was added in PHP 5.0.0 and allows to read and set microsoft style .ini files (like the php.ini file).

qdbm

To enable support for qdbm add --with-qdbm[=DIR] .

Nota:

qdbm conflicts with dbm and gdbm.

Nota:

This was added in PHP 5.0.0. The qdbm library can be loaded from » http://fallabs.com/qdbm/index.html.

Nota:

Up to PHP 4.3.0 you are able to add both db2 and db3 handler but only one of them can be used internally. That means that you cannot have both file formats. Starting with PHP 5.0.0 there is a configuration check avoid such misconfigurations.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

The functions dba_open() and dba_popen() return a handle to the specified database file to access which is used by all other dba-function calls.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
DBA


Exemplos

Índice

  • Basic usage
Constantes pré-definidas
Basic usage
DBA


Basic usage

Exemplo #1 DBA example

<?php

$id = dba_open("/tmp/test.db", "n", "db2");

if (!$id) {
    echo "dba_open failed\n";
    exit;
}

dba_replace("key", "This is an example!", $id);

if (dba_exists("key", $id)) {
    echo dba_fetch("key", $id);
    dba_delete("key", $id);
}

dba_close($id);
?>

DBA is binary safe and does not have any arbitrary limits. However, it inherits all limits set by the underlying database implementation.

All file-based databases must provide a way of setting the file mode of a new created database, if that is possible at all. The file mode is commonly passed as the fourth argument to dba_open() or dba_popen().

You can access all entries of a database in a linear way by using the dba_firstkey() and dba_nextkey() functions. You may not change the database while traversing it.

Exemplo #2 Traversing a database

<?php

// ...open database...

$key = dba_firstkey($id);

while ($key != false) {
    if (true) {          // remember the key to perform some action later
        $handle_later[] = $key;
    }
    $key = dba_nextkey($id);
}

foreach ($handle_later as $val) {
    dba_delete($val, $id);
}

?>

Exemplos
DBA Funções
Exemplos


DBA Funções

Índice

  • dba_close — Close a DBA database
  • dba_delete — Delete DBA entry specified by key
  • dba_exists — Check whether key exists
  • dba_fetch — Fetch data specified by key
  • dba_firstkey — Fetch first key
  • dba_handlers — List all the handlers available
  • dba_insert — Insert entry
  • dba_key_split — Splits a key in string representation into array representation
  • dba_list — List all open database files
  • dba_nextkey — Fetch next key
  • dba_open — Open database
  • dba_optimize — Optimize database
  • dba_popen — Open database persistently
  • dba_replace — Replace or insert entry
  • dba_sync — Synchronize database
Basic usage
dba_close
DBA


Close a DBA database

DBA Funções
dba_delete
DBA Funções
PHP Manual

dba_close

(PHP 4, PHP 5)

dba_close — Close a DBA database

Descrição

void dba_close ( resource $handle )

dba_close() closes the established database and frees all resources of the specified database handle.

Parâmetros

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Não há valor retornado.

Veja Também

  • dba_open() - Open database
  • dba_popen() - Open database persistently

DBA Funções
dba_delete
DBA Funções


Delete DBA entry specified by key

dba_close
dba_exists
DBA Funções
PHP Manual

dba_delete

(PHP 4, PHP 5)

dba_delete — Delete DBA entry specified by key

Descrição

bool dba_delete ( string $key , resource $handle )

dba_delete() deletes the specified entry from the database.

Parâmetros

key

The key of the entry which is deleted.

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dba_exists() - Check whether key exists
  • dba_fetch() - Fetch data specified by key
  • dba_insert() - Insert entry
  • dba_replace() - Replace or insert entry

dba_close
dba_exists
DBA Funções


Check whether key exists

dba_delete
dba_fetch
DBA Funções
PHP Manual

dba_exists

(PHP 4, PHP 5)

dba_exists — Check whether key exists

Descrição

bool dba_exists ( string $key , resource $handle )

dba_exists() checks whether the specified key exists in the database.

Parâmetros

key

The key the check is performed for.

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Returns TRUE if the key exists, FALSE otherwise.

Veja Também

  • dba_delete() - Delete DBA entry specified by key
  • dba_fetch() - Fetch data specified by key
  • dba_insert() - Insert entry
  • dba_replace() - Replace or insert entry

dba_delete
dba_fetch
DBA Funções


Fetch data specified by key

dba_exists
dba_firstkey
DBA Funções
PHP Manual

dba_fetch

(PHP 4, PHP 5)

dba_fetch — Fetch data specified by key

Descrição

string dba_fetch ( string $key , resource $handle )
string dba_fetch ( string $key , int $skip , resource $handle )

dba_fetch() fetches the data specified by key from the database specified with handle.

Parâmetros

key

The key the data is specified by.

Nota:

When working with inifiles this function accepts arrays as keys where index 0 is the group and index 1 is the value name. See: dba_key_split().

skip

The number of key-value pairs to ignore when using cdb databases. This value is ignored for all other databases which do not support multiple keys with the same name.

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Returns the associated string if the key/data pair is found, FALSE otherwise.

Histórico

Versão | Descrição
4.3 | The skip parameter is available to support cdb's capability of multiple keys having the same name.

Veja Também

  • dba_exists() - Check whether key exists
  • dba_delete() - Delete DBA entry specified by key
  • dba_insert() - Insert entry
  • dba_replace() - Replace or insert entry
  • dba_key_split() - Splits a key in string representation into array representation

dba_exists
dba_firstkey
DBA Funções


Fetch first key

dba_fetch
dba_handlers
DBA Funções
PHP Manual

dba_firstkey

(PHP 4, PHP 5)

dba_firstkey — Fetch first key

Descrição

string dba_firstkey ( resource $handle )

dba_firstkey() returns the first key of the database and resets the internal key pointer. This permits a linear search through the whole database.

Parâmetros

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Returns the key on success or FALSE on failure.

Veja Também

  • dba_nextkey() - Fetch next key
  • dba_key_split() - Splits a key in string representation into array representation
  • Example 2 in the DBA examples

dba_fetch
dba_handlers
DBA Funções


List all the handlers available

dba_firstkey
dba_insert
DBA Funções
PHP Manual

dba_handlers

(PHP 4 >= 4.3.0, PHP 5)

dba_handlers — List all the handlers available

Descrição

array dba_handlers ([ bool $full_info = false ] )

dba_handlers() list all the handlers supported by this extension.

Parâmetros

full_info

Turns on/off full information display in the result.

Valor Retornado

Returns an array of database handlers. If full_info is set to TRUE, the array will be associative with the handlers names as keys, and their version information as value. Otherwise, the result will be an indexed array of handlers names.

Nota:

When the internal cdb library is used you will see cdb and cdb_make.

Exemplos

Exemplo #1 dba_handlers() Example

<?php

echo "Available DBA handlers:\n";
foreach (dba_handlers(true) as $handler_name => $handler_version) {
  // clean the versions
  $handler_version = str_replace('$', '', $handler_version);
  echo " - $handler_name: $handler_version\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Available DBA handlers:
 - cdb: 0.75, Revision: 1.3.2.3
 - cdb_make: 0.75, Revision: 1.2.2.4
 - db2: Sleepycat Software: Berkeley DB 2.7.7: (08/20/99)
 - inifile: 1.0, Revision: 1.6.2.3
 - flatfile: 1.0, Revision: 1.5.2.4

dba_firstkey
dba_insert
DBA Funções


Insert entry

dba_handlers
dba_key_split
DBA Funções
PHP Manual

dba_insert

(PHP 4, PHP 5)

dba_insert — Insert entry

Descrição

bool dba_insert ( string $key , string $value , resource $handle )

dba_insert() inserts the entry described with key and value into the database.

Parâmetros

key

The key of the entry to be inserted. If this key already exist in the database, this function will fail. Use dba_replace() if you need to replace an existent key.

value

The value to be inserted.

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dba_exists() - Check whether key exists
  • dba_delete() - Delete DBA entry specified by key
  • dba_fetch() - Fetch data specified by key
  • dba_replace() - Replace or insert entry

dba_handlers
dba_key_split
DBA Funções


Splits a key in string representation into array representation

dba_insert
dba_list
DBA Funções
PHP Manual

dba_key_split

(PHP 5)

dba_key_split — Splits a key in string representation into array representation

Descrição

mixed dba_key_split ( mixed $key )

dba_key_split() splits a key (string representation) into an array representation.

Parâmetros

key

The key in string representation.

Valor Retornado

Returns an array of the form array(0 => group, 1 => value_name). This function will return FALSE if key is NULL or FALSE.

Veja Também

  • dba_firstkey() - Fetch first key
  • dba_nextkey() - Fetch next key
  • dba_fetch() - Fetch data specified by key

dba_insert
dba_list
DBA Funções


List all open database files

dba_key_split
dba_nextkey
DBA Funções
PHP Manual

dba_list

(PHP 4 >= 4.3.0, PHP 5)

dba_list — List all open database files

Descrição

array dba_list ( void )

dba_list() list all open database files.

Valor Retornado

An associative array, in the form resourceid => filename.

dba_key_split
dba_nextkey
DBA Funções


Fetch next key

dba_list
dba_open
DBA Funções
PHP Manual

dba_nextkey

(PHP 4, PHP 5)

dba_nextkey — Fetch next key

Descrição

string dba_nextkey ( resource $handle )

dba_nextkey() returns the next key of the database and advances the internal key pointer.

Parâmetros

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Returns the key on success or FALSE on failure.

Veja Também

  • dba_firstkey() - Fetch first key
  • dba_key_split() - Splits a key in string representation into array representation
  • Example 2 in the DBA examples

dba_list
dba_open
DBA Funções


Open database

dba_nextkey
dba_optimize
DBA Funções
PHP Manual

dba_open

(PHP 4, PHP 5)

dba_open — Open database

Descrição

resource dba_open ( string $path , string $mode [, string $handler [, mixed $... ]] )

dba_open() establishes a database instance for path with mode using handler.

Parâmetros

path

Commonly a regular path in your filesystem.

mode

It is r for read access, w for read/write access to an already existing database, c for read/write access and database creation if it doesn't currently exist, and n for create, truncate and read/write access. The database is created in BTree mode, other modes (like Hash or Queue) are not supported.

Additionally you can set the database lock method with the next char. Use l to lock the database with a .lck file or d to lock the databasefile itself. It is important that all of your applications do this consistently.

If you want to test the access and do not want to wait for the lock you can add t as third character. When you are absolutely sure that you do not require database locking you can do so by using - instead of l or d. When none of d, l or - is used, dba will lock on the database file as it would with d.

Nota:

There can only be one writer for one database file. When you use dba on a web server and more than one request requires write operations they can only be done one after another. Also read during write is not allowed. The dba extension uses locks to prevent this. See the following table:

DBA locking
already open | mode = "rl" | mode = "rlt" | mode = "wl" | mode = "wlt" | mode = "rd" | mode = "rdt" | mode = "wd" | mode = "wdt"
not open | ok | ok | ok | ok | ok | ok | ok | ok
mode = "rl" | ok | ok | wait | false | illegal | illegal | illegal | illegal
mode = "wl" | wait | false | wait | false | illegal | illegal | illegal | illegal
mode = "rd" | illegal | illegal | illegal | illegal | ok | ok | wait | false
mode = "wd" | illegal | illegal | illegal | illegal | wait | false | wait | false
  • ok: the second call will be successfull.
  • wait: the second call waits until dba_close() is called for the first.
  • false: the second call returns false.
  • illegal: you must not mix "l" and "d" modifiers for mode parameter.

handler

The name of the handler which shall be used for accessing path. It is passed all optional parameters given to dba_open() and can act on behalf of them.

Valor Retornado

Returns a positive handle on success or FALSE on failure.

Histórico

Versão | Descrição
4.3.0 | It's possible to open database files over network connection. However in cases a socket connection will be used (as with http or ftp) the connection will be locked instead of the resource itself. This is important to know since in such cases locking is simply ignored on the resource and other solutions have to be found.
4.3.0 | Locking and the mode modifiers "l", "d", "-" and "t" were added. In previous PHP versions, you must use semaphores to guard against simultaneous database access for any database handler with the exception of GDBM. See System V semaphore support.
before 4.3.5 | open mode 'c' is broken for several internal handlers and truncates the database instead of appending data to an existent database. Also dbm and ndbm fail on mode 'c' in typical configurations (this cannot be fixed).

Veja Também

  • dba_popen() - Open database persistently
  • dba_close() - Close a DBA database

dba_nextkey
dba_optimize
DBA Funções


Optimize database

dba_open
dba_popen
DBA Funções
PHP Manual

dba_optimize

(PHP 4, PHP 5)

dba_optimize — Optimize database

Descrição

bool dba_optimize ( resource $handle )

dba_optimize() optimizes the underlying database.

Parâmetros

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dba_sync() - Synchronize database

dba_open
dba_popen
DBA Funções


Open database persistently

dba_optimize
dba_replace
DBA Funções
PHP Manual

dba_popen

(PHP 4, PHP 5)

dba_popen — Open database persistently

Descrição

resource dba_popen ( string $path , string $mode [, string $handler [, mixed $... ]] )

dba_popen() establishes a persistent database instance for path with mode using handler.

Parâmetros

path

Commonly a regular path in your filesystem.

mode

It is r for read access, w for read/write access to an already existing database, c for read/write access and database creation if it doesn't currently exist, and n for create, truncate and read/write access.

handler

The name of the handler which shall be used for accessing path. It is passed all optional parameters given to dba_popen() and can act on behalf of them.

Valor Retornado

Returns a positive handle on success or FALSE on failure.

Veja Também

  • dba_open() - Open database
  • dba_close() - Close a DBA database

dba_optimize
dba_replace
DBA Funções


Replace or insert entry

dba_popen
dba_sync
DBA Funções
PHP Manual

dba_replace

(PHP 4, PHP 5)

dba_replace — Replace or insert entry

Descrição

bool dba_replace ( string $key , string $value , resource $handle )

dba_replace() replaces or inserts the entry described with key and value into the database specified by handle.

Parâmetros

key

The key of the entry to be replaced.

value

The value to be replaced.

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dba_exists() - Check whether key exists
  • dba_delete() - Delete DBA entry specified by key
  • dba_fetch() - Fetch data specified by key
  • dba_insert() - Insert entry

dba_popen
dba_sync
DBA Funções


Synchronize database

dba_replace
dbx
DBA Funções
PHP Manual

dba_sync

(PHP 4, PHP 5)

dba_sync — Synchronize database

Descrição

bool dba_sync ( resource $handle )

dba_sync() synchronizes the database. This will probably trigger a physical write to the disk, if supported.

Parâmetros

handle

The database handler, returned by dba_open() or dba_popen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dba_optimize() - Optimize database

dba_replace
dbx
DBA Funções


dbx

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da dbx
    • dbx_close — Encera uma conexão/banco de dados
    • dbx_compare — Compara duas linhas para finalidades de ordenação
    • dbx_connect — Inicia uma conexão/banco de dados
    • dbx_error — Mostra a mensagem de erro da última função chamada no módulo
    • dbx_escape_string — Transforma uma string para que ela possa ser seguramente usada em comandos-sql.
    • dbx_fetch_row — Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada
    • dbx_query — Envia uma requisição e armazena todos os resultados (se houver)
    • dbx_sort — Ordena um resultado de uma dbx_query usando uma função
dba_sync
Introdução
Camadas de Abstração


Introdução

O módulo dbx é uma camada de banco de dados abstrata (db 'X', onde 'X' é o banco de dados suportado). As funções dbx permitem à você acessar todos os banco de dados suportados usando uma única convenção de chamada. As próprias funções-dbx não atuam diretamente com os bancos de dados, mas sim nos módulos que são usados para suportar estes banco de dados.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

dbx
Instalação/Configuração
dbx


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
dbx


Dependências

Para poder usar o banco de dados com o módulo-dbx, o módulo precisa estar linkado ou carregado no PHP, e o módulo do banco de dados precisa ser suportado pelo módulo-dbx. Atualmente, os seguintes banco de dados são suportados, mas haverão mais:

  • FrontBase (disponível desde o PHP 4.1.0).
  • Microsoft SQL Server
  • MySQL
  • ODBC
  • PostgreSQL
  • Sybase-CT (disponível desde o PHP 4.2.0).
  • Oracle (oci8) (disponível desde o PHP 4.3.0).
  • SQLite (PHP 5).

A documentação para adicionar suporte ao banco de dados no dbx pode ser encontrada em » http://www.guidance.nl/php/dbx/doc/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para ter estas funções disponíveis, você precisa compilar o PHP com suporte à dbx usando a opção --enable-dbx e todas as opções para o banco de dados que será usado, ex: para o MySQL você deve especificar --with-mysql=[DIR] . Para que outros banco de dados tenham suporte ao módulo-dbx consulte o manual do seu banco de dados.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração do DBX
Nome | Padrão | Modificável | Changelog
dbx.colnames_case | "unchanged" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0. Removido no PHP 5.1.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

dbx.colnames_case string

Os nomes das colunas podem ser retornados "inalterados" ou convertidos para "caixa alta" ou "caixa baixa". Esta diretiva pode ser sobreescrita alterando a "flag" de dbx_query().

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Há dois tipos de recursos usados no módulo dbx. O primeiro é um link object para a conexão com o banco de dados, e o segundo é o resultado object que guarda o resultado da consulta.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

DBX_MYSQL (integer)
DBX_ODBC (integer)
DBX_PGSQL (integer)
DBX_MSSQL (integer)
DBX_FBSQL (integer)
DBX_OCI8 (integer) (disponível desde o PHP 4.3.0)
DBX_SYBASECT (integer)
DBX_SQLITE (integer) (PHP 5)
DBX_PERSISTENT (integer)
DBX_RESULT_INFO (integer)
DBX_RESULT_INDEX (integer)
DBX_RESULT_ASSOC (integer)
DBX_RESULT_UNBUFFERED (integer) (PHP 5)
DBX_COLNAMES_UNCHANGED (integer) (disponível desde o PHP 4.3.0)
DBX_COLNAMES_UPPERCASE (integer) (disponível desde o PHP 4.3.0)
DBX_COLNAMES_LOWERCASE (integer) (disponível desde o PHP 4.3.0)
DBX_CMP_NATIVE (integer)
DBX_CMP_TEXT (integer)
DBX_CMP_NUMBER (integer)
DBX_CMP_ASC (integer)
DBX_CMP_DESC (integer)
Tipos Resource
Funções da dbx
dbx


Funções da dbx

Índice

  • dbx_close — Encera uma conexão/banco de dados
  • dbx_compare — Compara duas linhas para finalidades de ordenação
  • dbx_connect — Inicia uma conexão/banco de dados
  • dbx_error — Mostra a mensagem de erro da última função chamada no módulo
  • dbx_escape_string — Transforma uma string para que ela possa ser seguramente usada em comandos-sql.
  • dbx_fetch_row — Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada
  • dbx_query — Envia uma requisição e armazena todos os resultados (se houver)
  • dbx_sort — Ordena um resultado de uma dbx_query usando uma função
Constantes pré-definidas
dbx_close
dbx


Encera uma conexão/banco de dados

Funções da dbx
dbx_compare
Funções da dbx
PHP Manual

dbx_close

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_close — Encera uma conexão/banco de dados

Descrição

int dbx_close ( object $link_identifier )

Parâmetros

link_identifier

O link do objeto DBX para fechar.

Valor Retornado

Retorna 1 em successo e 0 em erros.

Exemplos

Exemplo #1 dbx_close() exemplo

<?php
$link = dbx_connect(DBX_MYSQL, "localhost", "db", "nome de usuário", "senha")
    or die ("Não foi possível conectar");

echo "Conexão realizada com sucesso";
dbx_close($link);
?>

Notas

Nota:

Sempre se referia à documentação do módulo-específico quando necessário.

Veja Também

  • dbx_connect() - Inicia uma conexão/banco de dados

Funções da dbx
dbx_compare
Funções da dbx


Compara duas linhas para finalidades de ordenação

dbx_close
dbx_connect
Funções da dbx
PHP Manual

dbx_compare

(PHP 4 >= 4.1.0, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_compare — Compara duas linhas para finalidades de ordenação

Descrição

int dbx_compare ( array $row_a , array $row_b , string $column_key [, int $flags ] )

A função dbx_compare() é uma mão na roda para a função dbx_sort() para facilitar o uso e manuseamente de uma função pré-definida (customizada).

Parâmetros

row_a

Primeira linha

row_b

Segunda linha

column_key

A coluna comparada

flags

O parâmetro flags pode ser configurado para comparações específicas:

  • DBX_CMP_ASC - ordem crescente
  • DBX_CMP_DESC - ordem decrescente
e os tipos de comparações mais adequadas:
  • DBX_CMP_NATIVE - sem conversão de tipo
  • DBX_CMP_TEXT - compara itens como sendo strings
  • DBX_CMP_NUMBER - compara os itens numéricamente
Uma das comparações e um dos tipos de constante podem ser combinados com o operador bitwise OR (|). O valor padrão para o parâmetro flags são as constantes DBX_CMP_ASC | DBX_CMP_NATIVE.

Valor Retornado

Retorna 0 se linha_a[$coluna_chave] é igual à linha_b[$coluna_chave], e 1 ou -1 se o anterior for maior ou menor do que o último, respectivamente, ou vice-versa se o parâmetro flag está configurado para usar a constante DBX_CMP_DESC.

Exemplos

Exemplo #1 Exemplo da dbx_compare()

<?php
function reordenar_usuarios ($a, $b)
{
    $rv = dbx_compare ($a, $b, "parentid", DBX_CMP_DESC);
    if ( !$rv ) {
        $rv = dbx_compare ($a, $b, "id", DBX_CMP_NUMBER);
    }
    return $rv;
}

$link   = dbx_connect (DBX_ODBC, "", "bd", "nome de usuário", "senha")
    or die ("Não foi possível conectar");

$resultado = dbx_query ($link, "SELECT id, parentid, descricao FROM tabela ORDER BY id");
 // dados em $resultado são agora ordenados pelo id

dbx_sort ($resultado, "reordenar_usuarios");
 // dados em $resultado são agora ordenados por parentid (decrescente), depois por id

dbx_close ($link);
?>

Veja Também

  • dbx_sort() - Ordena um resultado de uma dbx_query usando uma função

dbx_close
dbx_connect
Funções da dbx


Inicia uma conexão/banco de dados

dbx_compare
dbx_error
Funções da dbx
PHP Manual

dbx_connect

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_connect — Inicia uma conexão/banco de dados

Descrição

objeto dbx_connect ( mixed $module , string $host , string $database , string $username , string $password [, int $persistent ] )

Abre uma conexão para o banco de dados.

Parâmetros

module

O parâmetro módulo pode ser uma "string" ou uma constante, apesar da segunda forma ser a mais adequada. Os possíveis valres são listados abaixo, mas tenha em mente que eles somente irão funcionar se o módulo atual está carregado.

  • DBX_MYSQL ou "mysql"
  • DBX_ODBC ou "odbc"
  • DBX_PGSQL ou "pgsql"
  • DBX_MSSQL ou "mssql"
  • DBX_FBSQL ou "fbsql" (disponível à partir do PHP 4.1.0)
  • DBX_SYBASECT ou "sybase_ct" (disponível à partir do PHP 4.2.0)
  • DBX_OCI8 ou "oci8" (disponível à partir do PHP 4.3.0)
  • DBX_SQLITE ou "sqlite" (PHP 5)

host

O host do servidor SQL

database

O nome do banco de dados

username

O nome de usuário

password

A senha

persistent

O parâmetro persistent pode ser definido para DBX_PERSISTENT, dessa forma, a conexão persistente será criada.

Os parâmetros host, database, username e password são necessários, porém nem sempre usados depedendo das funções de conexão do módulo selecionado.

Valor Retornado

Retorna um objeto em sucesso, FALSE em erro. Se uma conexão foi feita mas o banco de dados não foi selecionado, a conexão é fechada e FALSE é retornado.

O objeto retornado contém três propriedades:

banco de dados
É o nome do banco de dados selecionado.
evento

É um evento válido para o banco de dados conectado, e como tal pode ser usado nas funções do módulo-específico (se necessário).

<?php
$link = dbx_connect (DBX_MYSQL, "localhost", "bd", "nome de usuário", "senha");
mysql_close ($link->handle); // dbx_close($link) seria o mais apropiado
?>

módulo
É usado internamente pelo dbx, e é atualmente o número do módulo mencionado acima.

Exemplos

Exemplo #1 dbx_connect() exemplo

<?php
$link = dbx_connect (DBX_ODBC, "", "bd", "nome de usuário", "senha", DBX_PERSISTENT)
    or die ("Não foi possível conectar");

echo "Conexão realizada com sucesso.";
dbx_close ($link);
?>

Notas

Nota:

Sempre se referia à documentação do módulo-específico quando necessário.

Veja Também

  • dbx_close() - Encera uma conexão/banco de dados

dbx_compare
dbx_error
Funções da dbx


Mostra a mensagem de erro da última função chamada no módulo

dbx_connect
dbx_escape_string
Funções da dbx
PHP Manual

dbx_error

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_error — Mostra a mensagem de erro da última função chamada no módulo

Descrição

string dbx_error ( objeto $link_identifier )

A função dbx_error() retorna a última mensagem de erro.

Parâmetros

link_identifier

O link do objeto DBX retornado por dbx_connect()

Valor Retornado

Retorna uma string contendo a mensagem de erro da última função chamda no módulo (ex: módulo mysql). Se houver múltiplas conexões no mesmo módulo, apenas o último erro é retornado para o módulo especificado no parâmetro link_identifier.

Exemplos

Exemplo #1 Exemplo da dbx_error()

<?php
$link   = dbx_connect(DBX_MYSQL, "localhost", "bd", "nome de usuário", "senha")
    or die ("Não foi possível conectar");

$resultado = dbx_query($link, "select id from tabela_inexistente");
if ( $resultado == 0 ) {
    echo dbx_error ($link);
}
dbx_close ($link);
?>

Notas

Nota:

Sempre refira-se à documentação do módulo-específico quando necessário.

A mensagem de erro para o Microsoft SQL Server é atualmente o resultado da função mssql_get_last_message().

A mensagem de erro para o Oracle (oci8) não foi implementado ainda.

dbx_connect
dbx_escape_string
Funções da dbx


Transforma uma string para que ela possa ser seguramente usada em comandos-sql.

dbx_error
dbx_fetch_row
Funções da dbx
PHP Manual

dbx_escape_string

(PHP 4 >= 4.3.0, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_escape_string — Transforma uma string para que ela possa ser seguramente usada em comandos-sql.

Descrição

string dbx_escape_string ( object $link_identifier , string $text )

Adicione escape na dada string de forma que ela possa ser seguramente usada em um comando SQL.

Parâmetros

link_identifier

O link do objeto DBX retornado pela dbx_connect()

text

A string para adicionar escape.

Valor Retornado

Retorna o texto, com escapes adicionados onde necessário (como em aspas, barra invertida, etc). Em erro, NULL é retornado.

Exemplos

Exemplo #1 Exemplo da dbx_escape_string()

<?php
$link   = dbx_connect(DBX_MYSQL, "localhost", "bd", "nome de usuário", "senha")
    or die ("Não foi possível conectar");

$texto = dbx_escape_string($link, "It\'s quoted and backslashed (\\).");
$resultado = dbx_query($link, "insert into tabela (txt) values ('".$texto."')");
if ( $resultado == 0 ) {
    echo dbx_error ($link);
}
dbx_close ($link);
?>

Veja Também

  • dbx_query() - Envia uma requisição e armazena todos os resultados (se houver)

dbx_error
dbx_fetch_row
Funções da dbx


Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada

dbx_escape_string
dbx_query
Funções da dbx
PHP Manual

dbx_fetch_row

(PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_fetch_row — Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada

Descrição

mixed dbx_fetch_row ( object $result_identifier )

dbx_fetch_row() obtém linhas de um identificador de resultado que tem a flag DBX_RESULT_UNBUFFERED definida.

Quando a constante DBX_RESULT_UNBUFFERED não está ligada no momento da requisição, a função dbx_fetch_row() retornará erro bem como todas as linhas que já tenham sido lidas nos resultados da propriedade data.

Um dos efeitos colaterais, é que a propriedade rows será incrementada à cada objeto retornado com sucesso na chamada da função dbx_fetch_row().

Parâmetros

result_identifier

Um conjunto de resultado retornado por dbx_query().

Valor Retornado

Retorna um objeto em sucesso que contém a mesma informação como qualquer linha teria no resultado da dbx_query() da propriedade data, incluindo colunas acessíveis por índice ou nome do campo quando as flags para dbx_query() foram definidas desta forma.

Em falha, retorna 0 (e.g. quando não há mais linha disponível).

Exemplos

Exemplo #1 Como tratar o valor retornado

<?php
$resultado = dbx_query ($link, 'SELECT id, parentid, descricao FROM tabela', DBX_RESULT_UNBUFFERED);

echo "<table>\n";
while ( $linha = dbx_fetch_row($resultado) ) {
    echo "<tr>\n";
    foreach ( $linha as $campo ) {
        echo "<td>$campo</td>";
    }
    echo "</tr>\n";
}
echo "</table>\n";
?>

Veja Também

  • dbx_query() - Envia uma requisição e armazena todos os resultados (se houver)

dbx_escape_string
dbx_query
Funções da dbx


Envia uma requisição e armazena todos os resultados (se houver)

dbx_fetch_row
dbx_sort
Funções da dbx
PHP Manual

dbx_query

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_query — Envia uma requisição e armazena todos os resultados (se houver)

Descrição

mixed dbx_query ( object $link_identifier , string $sql_statement [, int $flags ] )

Envia uma query e obtém todos resultados.

Parâmetros

link_identifier

O link do objeto DBX retornado pela dbx_connect()

sql_statement

O comando SQL.

flags

O parâmetro flags é usado para controlar a quantiodade de informação que é retornada. Estas informações podem ser qualquer combinação de uma das constantes abaixo usando o operador bitwise OR (|). As flags DBX_COLNAMES_* quando usadas, substituem as dbx.colnames_case configuradas no php.ini.

DBX_RESULT_INDEX
Está sempre ligada, isto é, o objeto retornado contém uma propriedade data, que é um array numérico indexado com 2 dimensões. Por exemplo, na expressão data[2][3] 2 é o número da coluna (ou registro) e 3 é o número da coluna (ou campo). A primeira linha e coluna estão no índice 0. Se a constante DBX_RESULT_ASSOC estiver sendo especificada, o objeto retornado irá conter informações relacionadas à DBX_RESULT_INFO também, mesmo que isto não tenha sido especificado.
DBX_RESULT_INFO
Contém informações sobre colunas, assim como o nome e tipos dos campos.
DBX_RESULT_ASSOC
Esta constante torna possível o acesso aos valores dos campos e nomes das colunas respectivamente, ela é usada como chave para os objetos retornados na propriedade data. Os resultados associados são atualmente referências aos dados numericamente posicionados, sendo assim, ao modificar data[0][0] causa a modificação de data[0]['nome_para_a_primeira_coluna'] também.
DBX_RESULT_UNBUFFERED (PHP 5)
Esta flag não irá criar a propriedade data, e a propriedade rows irá iniciar à partir do 0. Use esta flag para grandes datasets, e use a função dbx_fetch_row() para obter os resultados linha à linha. A função dbx_fetch_row() irá retornar as linhas que fazem parte das flags desta requisição. Incidentalmente, ela irá também atualizar a propriedade rows toda vez que for chamada.
DBX_COLNAMES_UNCHANGED (disponível à partir do PHP 4.3.0)
Os nomes das colunas retornadas não serão alterados.
DBX_COLNAMES_UPPERCASE (disponível à partir do PHP 4.3.0)
Os nomes das colunas retornadas serão todas alteradas para CAIXA ALTA.
DBX_COLNAMES_LOWERCASE (disponível à partir do PHP 4.3.0)
Os nomes das colunas retornadas serão todas alteradas para caixa baixa.
Note que a constante DBX_RESULT_INDEX é sempre usada, contendo o valor atual do parâmetro flags. Isto significa que somennte as seguintes combinaçõs surtem efeito:
  • DBX_RESULT_INDEX
  • DBX_RESULT_INDEX | DBX_RESULT_INFO
  • DBX_RESULT_INDEX | DBX_RESULT_INFO | DBX_RESULT_ASSOC - este é o padrão, se o parâmetro flags não for especificado.

Valor Retornado

dbx_query() retorna um objeto ou 1 em sucesso, e 0 em falha. O objeto é retornado somente se a query dada em sql_statement produz um conjunto de resultados (i.e. uma query SELECT, até mesmo se o conjunto de resultado é vazio).

O objeto retornado contém quatro ou cinco propriedades dependendo do parâmetro flags:

handle

É um evento válido para a conexão com o banco de dados, e como tal pode ser usado nas funções do módulo específico (se necessário).

<?php
$result = dbx_query ($link, "SELECT id FROM tabela");
mysql_field_len ($result->handle, 0);
?>

cols e rows

Estas propriedades conte´m o número das colunas (ou campos) e das linhas (ou registros) respectivamente.

<?php
$result = dbx_query ($link, 'SELECT id FROM tabela');
echo $result->rows; // número de registros
echo $result->cols; // número de campos
?>

info (opcional)
É retornado somente se as constantes DBX_RESULT_INFO ou DBX_RESULT_ASSOC são especificados no parâmetro flags. Esta propriedade é um array de 2 dimensões, que contém duas linhas nomeadas (name e type) para obter informação da coluna.

Exemplo #1 lista cada nome e tipo de campo

<?php
$result = dbx_query ($link, 'SELECT id FROM tabela',
                     DBX_RESULT_INDEX | DBX_RESULT_INFO);

for ($i = 0; $i < $result->cols; $i++ ) {
    echo $result->info['name'][$i] . "\n";
    echo $result->info['type'][$i] . "\n";
}
?>
data
Esta propriedade contém os dados do resultado atual, possivelmente associado com os nomes das colunas depdnendo do parâmetro flags. Se a constante DBX_RESULT_ASSOC está ligada, é possível usar $result->data[2]["nome_do_campo"].

Exemplo #2 colocando o conteúdo da propriedade data em uma tabela HTML

<?php
$resultado = dbx_query ($link, 'SELECT id, parentid, descricao FROM tabela');

echo "<table>\n";
foreach ( $resultado->data as $linha ) {
    echo "<tr>\n";
    foreach ( $linha as $campo ) {
        echo "<td>$campo</td>";
    }
    echo "</tr>\n";
}
echo "</table>\n";
?>

Exemplo #3 Como tratar requisições "UNBUFFERED"

<?php

$resultado = dbx_query ($link, 'SELECT id, parentid, descricao FROM tabela', DBX_RESULT_UNBUFFERED);

echo "<table>\n";
while ( $linha = dbx_fetch_row($resultado) ) {
    echo "<tr>\n";
    foreach ( $linha as $campo ) {
        echo "<td>$campo</td>";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplos

Exemplo #4 Como manipular o valor retornado

<?php
$link   = dbx_connect(DBX_ODBC, "", "db", "username", "password")
    or die("Could not connect");

$result = dbx_query($link, 'SELECT id, parentid, description FROM table');

if (is_object($result) ) {
    // ... do some stuff here, see detailed examples below ...
    // first, print out field names and types
    // then, draw a table filled with the returned field values
} else {
    exit("Query failed");
}

dbx_close($link);
?>

Notas

Nota:

Sempre refira-se à documentação do módulo-específico quando necessário.

Os nomes das colunas em uma requisição de um banco de dados Oracle são retornados em maiúsculo.

Veja Também

  • dbx_escape_string() - Transforma uma string para que ela possa ser seguramente usada em comandos-sql.
  • dbx_fetch_row() - Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada
  • dbx_connect() - Inicia uma conexão/banco de dados

dbx_fetch_row
dbx_sort
Funções da dbx


Ordena um resultado de uma dbx_query usando uma função

dbx_query
ODBC
Funções da dbx
PHP Manual

dbx_sort

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_sort — Ordena um resultado de uma dbx_query usando uma função

Descrição

bool dbx_sort ( object $result , string $user_compare_function )

Ordena um resultado de um dbx_query() chamando uma função para ordenação.

Parâmetros

result

Um conjunto de resultados retornado por dbx_query().

user_compare_function

A função do usuário definida para comparação. Ela precisa aceitar dois argumentos e retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da dbx_sort()

<?php
function reordenar_usuario ($a, $b)
{
    $rv = dbx_compare ($a, $b, "parentid", DBX_CMP_DESC);
    if ( !$rv ) {
        $rv = dbx_compare ($a, $b, "id", DBX_CMP_NUMBER);
    }
    return $rv;
}

$link   = dbx_connect (DBX_ODBC, "", "bd", "nome de usuário", "senha")
    or die ("Não foi possível conectar");

$resultado = dbx_query ($link, "SELECT id, parentid, descricao FROM tabela ORDER BY id");
    // dados em $resultado estão ordenados pelo id

dbx_sort ($resultado, "reordenar_usuario");
    // dados em $resultado agora estão ordenados pelo parentid (ordem decrescente), e depois pelo id

dbx_close ($link);
?>

Notas

Nota:

É sempre melhor usar a cláusula ORDER BY da SQL ao invés de dbx_sort(), se possível.

Veja Também

  • dbx_compare() - Compara duas linhas para finalidades de ordenação

dbx_query
ODBC
Funções da dbx


ODBC

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • ODBC Unificado
    • odbc_autocommit — Modifica o funcionamento do autocommit
    • odbc_binmode — Manipulação de uma coluna com dados binários
    • odbc_close_all — Fecha todas as conexões ODBC
    • odbc_close — Fecha uma conexão ODBC
    • odbc_columnprivileges — Retorna um identificador de resultado que pode ser usado para obter uma lista das colunas e seus privilégios associados
    • odbc_columns — Lista os nomes das colunas na tabela especificada
    • odbc_commit — Grava uma transação ODBC
    • odbc_connect — Conecta com uma fonte de dados
    • odbc_cursor — Obtém o nome do cursor
    • odbc_data_source — Retorna informação sobre a conexão atual
    • odbc_do — Sinônimo de odbc_exec
    • odbc_error — Obtém o último código de erro
    • odbc_errormsg — Obtém a última mensagem de erro
    • odbc_exec — Prepara e executa um comando SQL
    • odbc_execute — Executa um comando preparado
    • odbc_fetch_array — Obtém uma linha do resultado como uma array associativa
    • odbc_fetch_into — Obtém uma linha do conjunto de resultados como uma matriz
    • odbc_fetch_object — Obtém um conjunto de resultados como um objeto
    • odbc_fetch_row — Obtém uma linha
    • odbc_field_len — Obtém o tamanho (precisão) de um campo
    • odbc_field_name — Obtém o nome da coluna
    • odbc_field_num — Retorna o número da coluna
    • odbc_field_precision — Sinônimo de odbc_field_len
    • odbc_field_scale — Obtém a precisão de um campo
    • odbc_field_type — Tipo de dados de um campo
    • odbc_foreignkeys — Retorna uma lista de chaves estrangeiras na tabela especificada ou uma lista de chaves estrangeiras em outras tabelas que se referem a chave primária na tabela especificada
    • odbc_free_result — Libera os recursos associados a um resultado
    • odbc_gettypeinfo — Retorna um identificador de resultados contendo informações sobre os tipos de dados suportados pela fonte de dados
    • odbc_longreadlen — Manipulação de colunas LONG
    • odbc_next_result — Confere se resultados múltiplos estão disponíveis
    • odbc_num_fields — Número de colunas em um resultado
    • odbc_num_rows — Número de linhas em um resultado
    • odbc_pconnect — Abre uma conexão persistente com o servidor de banco de dados
    • odbc_prepare — Prepara um comando para execução
    • odbc_primarykeys — Obtém a chave primária de uma tabela
    • odbc_procedurecolumns — Obtém informações sobre parâmetros para procedures
    • odbc_procedures — Obtém a lista de procedures guadadas na fonte de dados especificada.
    • odbc_result_all — Mostra o resultado como uma tabela HTML
    • odbc_result — Obtém dados do resultado
    • odbc_rollback — Desfaz uma transação
    • odbc_setoption — Ajusta definições ODBC
    • odbc_specialcolumns — Retorna um conjunto de colunas que identificam de modo único uma linha na tabela ou as colunas que são automaticamente atualizadas quando qualquer valor na linha é atualizado por uma transação.
    • odbc_statistics — Obtém estatisticas sobre uma tabela
    • odbc_tableprivileges — Lista tabelas e os privilégios associados a cada tabela
    • odbc_tables — Obtém uma lista dos nomes das tabelas guardadas em uma fonte de dados especificado
dbx_sort
Introdução
Camadas de Abstração


Introdução

Em adição ao suporte ODBC normal, as funções de ODBC Unificadas no PHP permitem que você acesse vários bancos de dados que emprestaram a semântica da API do ODBC para implementer a sua própria API. Ao invés de manter múltiplos drivers de banco de dados que são todos praticamente identicos, estes drivers foram unificados em um único conjunto de funções ODBC.

Os seguintes bancos de dados são suportados pelas funções de OBDC Unificado: » Adabas D, » IBM DB2, » iODBC, » Solid, e » Sybase SQL Anywhere.

Nota:

Com a excessão de iODBC, não existe ODBC involvido ao conectar aos bancos de dados acima. As funções que você usa para conversar nativamente com eles apenas compartilham os mesmos nomes e sintaxe das funções ODBC. Entretanto, compilar o PHP com suporte a iODBC permite a você usar qualquer dirver compatível com ODBC nas suas aplicações PHP. Maiores informações sobre iODBC, estão disponíveis em » www.iodbc.org com a alternativa unixODBC disponível em » www.unixodbc.org.

ODBC
Instalação/Configuração
ODBC


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
ODBC


Dependências

Para acessar qualquer dos bancos de dados suportados você precisa ter as bibliotecas necessárias instaladas.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

--with-adabas[=DIR]

Inclui suporte a Adabas D. DIR é o diretório base da instalação do Adabas, o padrão é /usr/local.

--with-sapdb[=DIR]

Inclui suporte a SAP DB. DIR é o diretório base SAP DB, o padrão é /usr/local.

--with-solid[=DIR]

Inclui o suporte Solid. DIR é o diretório base da instalação Solid, o padrão é /usr/local/solid.

--with-ibm-db2[=DIR]

Inclui suporte ao IBM DB2. DIR é o diretório base da instalaçação do DB2, o padrão é /home/db2inst1/sqllib.

--with-empress[=DIR]

Inclui suporte a Empress. DIR é o diretório base da instalação do Empress, o padrão é $EMPRESSPATH. A partir do PHP4, esta opção suporta apenas o Empress Versão 8.60 e posterior.

--with-empress-bcs[=DIR]

Inclui suporte a Empress Local Access. DIR é o diretório base da instalação do Empress, o padrão é $EMPRESSPATH. A partir do PHP4, esta opção suporta apenas o Empress Version 8.60 e posterior.

--with-birdstep[=DIR]

Inclui suporte Birdstep. DIR é o diretório base da instalação do Birdstep, o padrão é /usr/local/birdstep.

--with-custom-odbc[=DIR]

Inclui um suporte ODBC definido pelo usuário. DIR é o diretório base da instalação do ODBC, o padrão é /usr/local. Tenha certeza de definir CUSTOM_ODBC_LIBS e ter algum odbc.h nos seus diretórios de inclusão. Ex., você deve definir o seguinte para Sybase SQL Anywhere 5.5.00 no QNX, antes de executar o script configure:

   CPPFLAGS="-DODBC_QNX -DSQLANY_BUG"
   LDFLAGS=-lunix
   CUSTOM_ODBC_LIBS="-ldblib -lodbc".

--with-iodbc[=DIR]

Inclui o suporte a iODBC. DIR é o diretório base da instalação do iODBC, o pardrão é /usr/local.

--with-esoob[=DIR]

Inclui suporte a Easysoft OOB. DIR é o diretório base da instalação OOB, o padrão é /usr/local/easysoft/oob/client.

--with-unixODBC[=DIR]

Inclui suporte a unixODBC. DIR é o diretório base da instalação unixODBC, o padrão é /usr/local.

--with-openlink[=DIR]

Inclui suporte a OpenLink ODBC. DIR é o diretório base da instalação do OpenLink, o padrão é /usr/local. Este é o mesmo que iODBC.

--with-dbmaker[=DIR]

Inclui suporte a DBMaker. DIR é o diretório base da instalação do DBMaker, o padrão é para onde a versão mais recente do DBMaker esteja instalada (algo como /home/dbmaker/3.6).

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração do ODBC Unificado
Nome | Padrão | Modificável | Changelog
odbc.default_db * | NULL | PHP_INI_ALL |
odbc.default_user * | NULL | PHP_INI_ALL |
odbc.default_pw * | NULL | PHP_INI_ALL |
odbc.allow_persistent | "1" | PHP_INI_SYSTEM |
odbc.check_persistent | "1" | PHP_INI_SYSTEM |
odbc.max_persistent | "-1" | PHP_INI_SYSTEM |
odbc.max_links | "-1" | PHP_INI_SYSTEM |
odbc.defaultlrl | "4096" | PHP_INI_ALL |
odbc.defaultbinmode | "1" | PHP_INI_ALL |

Nota: Entradas marcadas com * ainda não estão implementadas.

Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

odbc.default_db string

Fonte de dados ODBC se nenhuma for especificada em odbc_connect() ou odbc_pconnect().

odbc.default_user string

Nome de usuário se nenhum for especificado em odbc_connect() ou odbc_pconnect().

odbc.default_pw string

Senha para usar se nenhuma for especificada em odbc_connect() ou odbc_pconnect().

odbc.allow_persistent boolean

Quando permitir conexões ODBC persistentes.

odbc.check_persistent boolean

Conferir que a conexão ainda seja válida antes de reutilizar.

odbc.max_persistent integer

O número máximo de conexões ODBC persistentes por processo.

odbc.max_links integer

O número máximo de conexões ODBC por processo, incluindo as conexões persistentes.

odbc.defaultlrl integer

Manipulação de campos LONG. Especifica o número de bytes retornados para as variáveis.

odbc.defaultbinmode integer

Manipulação de dados binários.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão define dois tipos resource: uma identificador de conexão ODBC e um identificador de resultado ODBC.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

ODBC_TYPE (integer)
ODBC_BINMODE_PASSTHRU (integer)
ODBC_BINMODE_RETURN (integer)
ODBC_BINMODE_CONVERT (integer)
SQL_ODBC_CURSORS (integer)
SQL_CUR_USE_DRIVER (integer)
SQL_CUR_USE_IF_NEEDED (integer)
SQL_CUR_USE_ODBC (integer)
SQL_CONCURRENCY (integer)
SQL_CONCUR_READ_ONLY (integer)
SQL_CONCUR_LOCK (integer)
SQL_CONCUR_ROWVER (integer)
SQL_CONCUR_VALUES (integer)
SQL_CURSOR_TYPE (integer)
SQL_CURSOR_FORWARD_ONLY (integer)
SQL_CURSOR_KEYSET_DRIVEN (integer)
SQL_CURSOR_DYNAMIC (integer)
SQL_CURSOR_STATIC (integer)
SQL_KEYSET_SIZE (integer)
SQL_CHAR (integer)
SQL_VARCHAR (integer)
SQL_LONGVARCHAR (integer)
SQL_DECIMAL (integer)
SQL_NUMERIC (integer)
SQL_BIT (integer)
SQL_TINYINT (integer)
SQL_SMALLINT (integer)
SQL_INTEGER (integer)
SQL_BIGINT (integer)
SQL_REAL (integer)
SQL_FLOAT (integer)
SQL_DOUBLE (integer)
SQL_BINARY (integer)
SQL_VARBINARY (integer)
SQL_LONGVARBINARY (integer)
SQL_DATE (integer)
SQL_TIME (integer)
SQL_TIMESTAMP (integer)
SQL_TYPE_DATE (integer)
SQL_TYPE_TIME (integer)
SQL_TYPE_TIMESTAMP (integer)
SQL_BEST_ROWID (integer)
SQL_ROWVER (integer)
SQL_SCOPE_CURROW (integer)
SQL_SCOPE_TRANSACTION (integer)
SQL_SCOPE_SESSION (integer)
SQL_NO_NULLS (integer)
SQL_NULLABLE (integer)
SQL_INDEX_UNIQUE (integer)
SQL_INDEX_ALL (integer)
SQL_ENSURE (integer)
SQL_QUICK (integer)
Tipos Resource
ODBC Unificado
ODBC


ODBC Unificado

Índice

  • odbc_autocommit — Modifica o funcionamento do autocommit
  • odbc_binmode — Manipulação de uma coluna com dados binários
  • odbc_close_all — Fecha todas as conexões ODBC
  • odbc_close — Fecha uma conexão ODBC
  • odbc_columnprivileges — Retorna um identificador de resultado que pode ser usado para obter uma lista das colunas e seus privilégios associados
  • odbc_columns — Lista os nomes das colunas na tabela especificada
  • odbc_commit — Grava uma transação ODBC
  • odbc_connect — Conecta com uma fonte de dados
  • odbc_cursor — Obtém o nome do cursor
  • odbc_data_source — Retorna informação sobre a conexão atual
  • odbc_do — Sinônimo de odbc_exec
  • odbc_error — Obtém o último código de erro
  • odbc_errormsg — Obtém a última mensagem de erro
  • odbc_exec — Prepara e executa um comando SQL
  • odbc_execute — Executa um comando preparado
  • odbc_fetch_array — Obtém uma linha do resultado como uma array associativa
  • odbc_fetch_into — Obtém uma linha do conjunto de resultados como uma matriz
  • odbc_fetch_object — Obtém um conjunto de resultados como um objeto
  • odbc_fetch_row — Obtém uma linha
  • odbc_field_len — Obtém o tamanho (precisão) de um campo
  • odbc_field_name — Obtém o nome da coluna
  • odbc_field_num — Retorna o número da coluna
  • odbc_field_precision — Sinônimo de odbc_field_len
  • odbc_field_scale — Obtém a precisão de um campo
  • odbc_field_type — Tipo de dados de um campo
  • odbc_foreignkeys — Retorna uma lista de chaves estrangeiras na tabela especificada ou uma lista de chaves estrangeiras em outras tabelas que se referem a chave primária na tabela especificada
  • odbc_free_result — Libera os recursos associados a um resultado
  • odbc_gettypeinfo — Retorna um identificador de resultados contendo informações sobre os tipos de dados suportados pela fonte de dados
  • odbc_longreadlen — Manipulação de colunas LONG
  • odbc_next_result — Confere se resultados múltiplos estão disponíveis
  • odbc_num_fields — Número de colunas em um resultado
  • odbc_num_rows — Número de linhas em um resultado
  • odbc_pconnect — Abre uma conexão persistente com o servidor de banco de dados
  • odbc_prepare — Prepara um comando para execução
  • odbc_primarykeys — Obtém a chave primária de uma tabela
  • odbc_procedurecolumns — Obtém informações sobre parâmetros para procedures
  • odbc_procedures — Obtém a lista de procedures guadadas na fonte de dados especificada.
  • odbc_result_all — Mostra o resultado como uma tabela HTML
  • odbc_result — Obtém dados do resultado
  • odbc_rollback — Desfaz uma transação
  • odbc_setoption — Ajusta definições ODBC
  • odbc_specialcolumns — Retorna um conjunto de colunas que identificam de modo único uma linha na tabela ou as colunas que são automaticamente atualizadas quando qualquer valor na linha é atualizado por uma transação.
  • odbc_statistics — Obtém estatisticas sobre uma tabela
  • odbc_tableprivileges — Lista tabelas e os privilégios associados a cada tabela
  • odbc_tables — Obtém uma lista dos nomes das tabelas guardadas em uma fonte de dados especificado
Constantes pré-definidas
odbc_autocommit
ODBC


Modifica o funcionamento do autocommit

ODBC Unificado
odbc_binmode
ODBC Unificado
PHP Manual

odbc_autocommit

(PHP 4, PHP 5)

odbc_autocommit — Modifica o funcionamento do autocommit

Descrição

mixed odbc_autocommit ( resource $connection_id [, bool $OnOff ] )

Modifica o comportamento do autocommit.

Por padrão. o auto-commit esta em on para a conexão. Desabilitar o auto-commit é equivalente a começar uma transação.

Parâmetros

connection_id

O identificador de conexão.

OnOff

Se OnOff é TRUE, auto-commit é habilitado, se é FALSE auto-commit é desabilitado.

Valor Retornado

Sem o parâmetro OnOff, esta função retorna status do auto-commit para connection_id. Valor diferente de zero retorna se auto-commit está on, 0 se ele está off, ou FALSE se um erro ocorrer.

Se OnOff é definido, esta função retorna TRUE em sucesso e FALSE em falha.

Veja Também

  • odbc_commit() - Grava uma transação ODBC
  • odbc_rollback() - Desfaz uma transação

ODBC Unificado
odbc_binmode
ODBC Unificado


Manipulação de uma coluna com dados binários

odbc_autocommit
odbc_close_all
ODBC Unificado
PHP Manual

odbc_binmode

(PHP 4, PHP 5)

odbc_binmode — Manipulação de uma coluna com dados binários

Descrição

bool odbc_binmode ( resource $result_id , int $mode )

Habilita o manuseamento de coluna de dados binários. Tipos ODBC SQL afetados são BINARY, VARBINARY, e LONGVARBINARY.

Quando dados binários SQL são convertidos para dados de caractere C, cada (8 bits) dos dados da fonte são representados como dois caracteres ASCII. Estes caracteres são a representação em caracteres ASCII do número em sua forma hexadecimal. por exemplo, um binário 00000001 é convertido para "01" e um binário 11111111 é convertido para "FF".

Manipulando LONGVARBINARY
binmode | longreadlen | result
ODBC_BINMODE_PASSTHRU | 0 | passthru
ODBC_BINMODE_RETURN | 0 | passthru
ODBC_BINMODE_CONVERT | 0 | passthru
ODBC_BINMODE_PASSTHRU | 0 | passthru
ODBC_BINMODE_PASSTHRU | >0 | passthru
ODBC_BINMODE_RETURN | >0 | retorna como esta
ODBC_BINMODE_CONVERT | >0 | retorna como char

Se odbc_fetch_into() é usada, passthru indica que uma string vazia é retornada para estas colunas.

Parâmetros

result_id

The result identifier.

Se result_id for 0, as definições aplicam-se como padrão para novos resultados.

Nota: O padrão para longreadlen e 4096 e mode padrão para ODBC_BINMODE_RETURN. A manipulação de colunas binary long também é afetada por odbc_longreadlen().

mode

Possíveis valores para mode são:

  • ODBC_BINMODE_PASSTHRU: Passthru BINARY data
  • ODBC_BINMODE_RETURN: Retorna como é
  • ODBC_BINMODE_CONVERT: Converte para char e retorna

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

odbc_autocommit
odbc_close_all
ODBC Unificado


Fecha todas as conexões ODBC

odbc_binmode
odbc_close
ODBC Unificado
PHP Manual

odbc_close_all

(PHP 4, PHP 5)

odbc_close_all — Fecha todas as conexões ODBC

Descrição

void odbc_close_all ( void )

odbc_close_all() irá fechar todas as conexões para os servidores de banco de dados.

Valor Retornado

Não há valor retornado.

Notas

Nota:

Esta função irá falhar se houverem transações abertas na conexão. Neste caso a conexão permanecerá aberta.

odbc_binmode
odbc_close
ODBC Unificado


Fecha uma conexão ODBC

odbc_close_all
odbc_columnprivileges
ODBC Unificado
PHP Manual

odbc_close

(PHP 4, PHP 5)

odbc_close — Fecha uma conexão ODBC

Descrição

void odbc_close ( resource $connection_id )

Fecha a conexão com o servidor de banco de dados.

Parâmetros

connection_id

O identificador de conexão.

Valor Retornado

Não há valor retornado.

Notas

Nota:

Esta função irá falhar se houverem transações abertas nesta conexão. A conexão permanecerá aberta neste caso.

odbc_close_all
odbc_columnprivileges
ODBC Unificado


Retorna um identificador de resultado que pode ser usado para obter uma lista das colunas e seus privilégios associados

odbc_close
odbc_columns
ODBC Unificado
PHP Manual

odbc_columnprivileges

(PHP 4, PHP 5)

odbc_columnprivileges — Retorna um identificador de resultado que pode ser usado para obter uma lista das colunas e seus privilégios associados

Descrição

resource odbc_columnprivileges ( resource $connection_id , string $qualifier , string $owner , string $table_name , string $column_name )

Lista colunas e os privilégios associados a tabela indicada.

Parâmetros

connection_id

O identificador de conexão.

qualifier

O quantificador.

owner

O proprietário.

table_name

O nome da tabela.

column_name

O argumento column_name aceita padrões de busca ('%' para casar zero ou mais caracteres e '_' para casa um único caractere).

The owner, table_name, and column_name accept search patterns ('%' to match zero or more characters and '_' to match a single character).

Valor Retornado

Retorna um identificador de resultado ODBC ou FALSE em erro. Este identificador de resultado pode ser usado para obter uma lista de colunas e seus privilégios.

O conjunto de resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_OWNER
  • TABLE_NAME
  • GRANTOR
  • GRANTEE
  • PRIVILEGE
  • IS_GRANTABLE

O conjunto de resultados é ordenado por TABLE_QUALIFIER, TABLE_OWNER e TABLE_NAME.

odbc_close
odbc_columns
ODBC Unificado


Lista os nomes das colunas na tabela especificada

odbc_columnprivileges
odbc_commit
ODBC Unificado
PHP Manual

odbc_columns

(PHP 4, PHP 5)

odbc_columns — Lista os nomes das colunas na tabela especificada

Descrição

resource odbc_columns ( resource $connection_id [, string $qualifier [, string $schema [, string $table_name [, string $column_name ]]]] )

Lista todas as colunas no intervalo requerido.

Parâmetros

connection_id

O identificador de conexão.

qualifier

O quantificador.

schema

The owner.

table_name

O nome da tabela.

column_name

O nome da coluna.

O schema, table_name, e column_name aceitam padrões de busca ('%' para casar zero ou mais caracteres e '_' para casar um único caractere).

Valor Retornado

Retorna um identificador de resultado ODBC ou FALSE em erro.

O conjunto de resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_SCHEM
  • TABLE_NAME
  • COLUMN_NAME
  • DATA_TYPE
  • TYPE_NAME
  • PRECISION
  • LENGTH
  • SCALE
  • RADIX
  • NULLABLE
  • REMARKS

O conjunto de resultados é ordenado por TABLE_QUALIFIER, TABLE_SCHEM e TABLE_NAME.

Veja Também

  • odbc_columnprivileges() - Retorna um identificador de resultado que pode ser usado para obter uma lista das colunas e seus privilégios associados para recuperar privilégios associados

odbc_columnprivileges
odbc_commit
ODBC Unificado


Grava uma transação ODBC

odbc_columns
odbc_connect
ODBC Unificado
PHP Manual

odbc_commit

(PHP 4, PHP 5)

odbc_commit — Grava uma transação ODBC

Descrição

bool odbc_commit ( resource $connection_id )

Grava todas as transações pendentes na conexão.

Parâmetros

connection_id

O identificador de conexão.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

odbc_columns
odbc_connect
ODBC Unificado


Conecta com uma fonte de dados

odbc_commit
odbc_cursor
ODBC Unificado
PHP Manual

odbc_connect

(PHP 4, PHP 5)

odbc_connect — Conecta com uma fonte de dados

Descrição

resource odbc_connect ( string $dsn , string $user , string $password [, int $cursor_type ] )

Retorna o id de uma conexão ODBC ou 0 (FALSE) em caso de erro.

O id da conexão retornado por esta função é necessário por outras funções ODBC. Você pode ter várias conexões abertas de uma vez contando que elas usem um banco de dados ou credenciais diferentes. O quarto parâmetro, que é opcional, define o tipo de cursor para ser utilizado nesta conexão. Este parâmetro normalmente não é necessário, mas pode ser útil para contornar problemas com alguns drivers ODBC.

Com alguns drivers ODBC, executar uma stored procedure complexa pode falhar com um erro semelhante a este: "Cannot open a cursor on a stored procedure that has anything other than a single select statement in it". Usar SQL_CUR_USE_ODBC pode previnir este erro. Também, alguns drivers não suportam o parâmetro opcional row_number em odbc_fetch_row(). SQL_CUR_USE_ODBC deve ajudar neste caso também.

As seguintes constantes são definidas para cursortype:

  • SQL_CUR_USE_IF_NEEDED
  • SQL_CUR_USE_ODBC
  • SQL_CUR_USE_DRIVER
  • SQL_CUR_DEFAULT

Para conexões persistentes veja odbc_pconnect().

odbc_commit
odbc_cursor
ODBC Unificado


Obtém o nome do cursor

odbc_connect
odbc_data_source
ODBC Unificado
PHP Manual

odbc_cursor

(PHP 4, PHP 5)

odbc_cursor — Obtém o nome do cursor

Descrição

string odbc_cursor ( resource $result_id )

Obtém o nome do cursor de um dado result_id.

Parâmetros

result_id

O identificador de resultado.

Valor Retornado

Retorna o nome do cursor, como uma string.

odbc_connect
odbc_data_source
ODBC Unificado


Retorna informação sobre a conexão atual

odbc_cursor
odbc_do
ODBC Unificado
PHP Manual

odbc_data_source

(PHP 4 >= 4.3.0, PHP 5)

odbc_data_source — Retorna informação sobre a conexão atual

Descrição

array odbc_data_source ( resource $connection_id , int $fetch_type )

Esta função retornará a lista de DNS disponíveis (depois de chamando várias vezes).

Parâmetros

connection_id

O identificador de conexão.

fetch_type

O fetch_type pode ser um dos dois tipos de contantes: SQL_FETCH_FIRST, SQL_FETCH_NEXT. Use SQL_FETCH_FIRST na primeira vez que chamar a função, então depois use SQL_FETCH_NEXT.

Valor Retornado

Retorna FALSE em erro, e um array em sucesso.

odbc_cursor
odbc_do
ODBC Unificado


Sinônimo de odbc_exec

odbc_data_source
odbc_error
ODBC Unificado
PHP Manual

odbc_do

(PHP 4, PHP 5)

odbc_do — Sinônimo de odbc_exec()

Descrição

Esta função é um apelido para: odbc_exec().

odbc_data_source
odbc_error
ODBC Unificado


Obtém o último código de erro

odbc_do
odbc_errormsg
ODBC Unificado
PHP Manual

odbc_error

(PHP 4 >= 4.0.5, PHP 5)

odbc_error — Obtém o último código de erro

Descrição

string odbc_error ([ resource $connection_id ] )

Retorna um estado ODBC de seis dígitos, ou uma string vazia se não houveram erros.

Parâmetros

connection_id

The connection identifier.

Valor Retornado

Se connection_id é especificado, o último estado desta conexão é especificado, senão o último estado de qualquer conexão.

Esta função retorna um valor significante apenas se a ultima consulta odbc falhou (ex. odbc_exec() retornou FALSE).

Veja Também

  • odbc_errormsg() - Obtém a última mensagem de erro
  • odbc_exec() - Prepara e executa um comando SQL

odbc_do
odbc_errormsg
ODBC Unificado


Obtém a última mensagem de erro

odbc_error
odbc_exec
ODBC Unificado
PHP Manual

odbc_errormsg

(PHP 4 >= 4.0.5, PHP 5)

odbc_errormsg — Obtém a última mensagem de erro

Descrição

string odbc_errormsg ([ resource $connection_id ] )

Retorna uma string contendo a última mensagem de erro do ODBC, ou uma string vazia se não houveram erros.

Parâmetros

connection_id

O identificador de conexão.

Valor Retornado

Se connection_id for especificado, o último estado desta conexão é retornado, senão a última mensagem de qualquer conexão é retornada.

Esta função retorna um valor significante apenas se a ultima consulta odbc falhou (ex. odbc_exec() retornou FALSE).

Veja Também

  • odbc_error() - Obtém o último código de erro
  • odbc_exec() - Prepara e executa um comando SQL

odbc_error
odbc_exec
ODBC Unificado


Prepara e executa um comando SQL

odbc_errormsg
odbc_execute
ODBC Unificado
PHP Manual

odbc_exec

(PHP 4, PHP 5)

odbc_exec — Prepara e executa um comando SQL

Descrição

resource odbc_exec ( resource $connection_id , string $query_string [, int $flags ] )

Envia um comando SQL para o servidor de banco de dados.

Parâmetros

connection_id

O identificador da conexão.

query_string

O comando SQL.

flags

Valor Retornado

Retorna um identificador de resultado ODBC se o comando foi executado com sucesso, ou FALSE em erro.

Veja Também

  • odbc_prepare() - Prepara um comando para execução
  • odbc_execute() - Executa um comando preparado

odbc_errormsg
odbc_execute
ODBC Unificado


Executa um comando preparado

odbc_exec
odbc_fetch_array
ODBC Unificado
PHP Manual

odbc_execute

(PHP 4, PHP 5)

odbc_execute — Executa um comando preparado

Descrição

bool odbc_execute ( resource $result_id [, array $parameters_array ] )

Executa um comando preparado com odbc_prepare().Retorna TRUE em caso de sucesso ou FALSE em falhas. A matriz parameters_array somente precisa ser dada se você realmente tiver parâmetros em seu comando.

Parâmetros em parameter_array serão substituidos pelos marcadores de lugar na ordem no comando preparado. Elementos desta array serão convertidos para strings ao chamar esta função.

Quaisquer parâmetros em parameter_array que comecem e terminem com aspas simples serão considerados como um nome de arquivo para ler e enviar para o banco de dados como dados para o marcador de lugar apropriado.

Nota:

A partir do PHP 4.1.1, esta funcionalidade de leitura de arquivo tem as seguintes restrições:

  • A leitura de arquivos não é sujeita a quaiquer restrições safe mode ou open-basedir. Isto foi corrigido no PHP 4.2.0.
  • Arquivos Remotos não são suportados.
  • Se você querrer guardar uma string que comece e termine com aspas simples, você deverá escapa-la ou adicionar um espaço ou outro caracter que não seja aspas simples no início ou no final do parâmetro, o qual irá prevenir que o parâmetro seja considerado como um nome de arquivo. Se isto não for uma opção, então você deve usar outro mecanismo para guardar a string, como executar a consulta diretamente com odbc_exec().

odbc_exec
odbc_fetch_array
ODBC Unificado


Obtém uma linha do resultado como uma array associativa

odbc_execute
odbc_fetch_into
ODBC Unificado
PHP Manual

odbc_fetch_array

(PHP 4 >= 4.0.2, PHP 5)

odbc_fetch_array — Obtém uma linha do resultado como uma array associativa

Descrição

array odbc_fetch_array ( resource $result [, int $rownumber ] )

Obtém um array associativo de uma consulta ODBC. Veja o changelog abaixo para saber desde quando esta função esta disponível.

Parâmetros

result

O recurso de resultado de odbc_exec().

rownumber

Opcionalmente escolha o número da linha que você quer obter.

Valor Retornado

Retorna uma array que corresponde a linha obtida, ou FALSE se não houverem mais linhas.

Histórico

Versão | Descrição
4.3.3 | Esta função existe quando compilado com suporte a IBM DB2 ou UnixODBC.
4.3.2 | Esta função existe quando compilado para Windows.
4.0.2 | Esta função existe quando compilado com suporte DBMaker.

Veja Também

  • odbc_fetch_row() - Obtém uma linha
  • odbc_fetch_object() - Obtém um conjunto de resultados como um objeto
  • odbc_num_rows() - Número de linhas em um resultado

odbc_execute
odbc_fetch_into
ODBC Unificado


Obtém uma linha do conjunto de resultados como uma matriz

odbc_fetch_array
odbc_fetch_object
ODBC Unificado
PHP Manual

odbc_fetch_into

(PHP 4, PHP 5)

odbc_fetch_into — Obtém uma linha do conjunto de resultados como uma matriz

Descrição

int odbc_fetch_into ( resource $result_id , array &$result_array [, int $rownumber ] )
bool odbc_fetch_into ( resource $result_id [, int $rownumber ], array &$result_array )

Retorna o número de colunas no resultado; FALSE em caso de erro. result_array deve ser passado por referencia, mas pode ser de qualquer tipo já que vai ser convertido para array. A matriz irá conter os valores das colunas com o índice começando em 0.

A partir do PHP 4.0.5 o parâmetro result_array não precisa mais ser passado por referencia.

A partir do PHP 4.0.6 o parâmetro rownumber não pode ser passado como uma constante, mas sim como uma variável.

A partir do PHP 4.2.0 o parâmetro result_array e rownumber foram trocados. Isto permite a rownumber poder ser uma constante novamente. Esta mudança também será a última nesta função.

Exemplo #1 Exemplo odbc_fetch_into() pré 4.0.6

<?php
$rc = odbc_fetch_into($res_id, $my_array);
?>

ou

<?php
$rc = odbc_fetch_into($res_id, $row, $my_array);

$rc = odbc_fetch_into($res_id, 1, $my_array);
?>

Exemplo #2 Exemplo odbc_fetch_into() 4.0.6

<?php
$rc = odbc_fetch_into($res_id, $my_array);
?>

ou

<?php
$row = 1;
$rc = odbc_fetch_into($res_id, $row, $my_array);
?>

Exemplo #3 Exemplo odbc_fetch_into() 4.2.0

<?php
$rc = odbc_fetch_into($res_id, $my_array);
?>

ou

<?php
$rc = odbc_fetch_into($res_id,$my_array, 2);
?>

odbc_fetch_array
odbc_fetch_object
ODBC Unificado


Obtém um conjunto de resultados como um objeto

odbc_fetch_into
odbc_fetch_row
ODBC Unificado
PHP Manual

odbc_fetch_object

(PHP 4 >= 4.0.2, PHP 5)

odbc_fetch_object — Obtém um conjunto de resultados como um objeto

Descrição

object odbc_fetch_object ( resource $result [, int $rownumber ] )

Obtém um object a partir de uma consulta ODBC. Veja o changelog abaixo para ver quando esta função esta disponível.

Parâmetros

result

O recurso do resultado de odbc_exec().

rownumber

Opcionalmente escolha o número da linha a qual obter.

Valor Retornado

Retorna um objeto que corresponde a linha obitida, ou FALSE se não houverem mais linhas.

Histórico

Versão | Descrição
4.3.3 | Esta função existe quando compilado com suporte a IBM DB2 ou UnixODBC.
4.3.2 | Esta função existe quando compilada para o Windows.
4.0.2 | Esta função existe quando compilado com suporte DBMaker.

Veja Também

  • odbc_fetch_row() - Obtém uma linha
  • odbc_fetch_array() - Obtém uma linha do resultado como uma array associativa
  • odbc_num_rows() - Número de linhas em um resultado

odbc_fetch_into
odbc_fetch_row
ODBC Unificado


Obtém uma linha

odbc_fetch_object
odbc_field_len
ODBC Unificado
PHP Manual

odbc_fetch_row

(PHP 4, PHP 5)

odbc_fetch_row — Obtém uma linha

Descrição

bool odbc_fetch_row ( resource $result_id [, int $row_number ] )

Obtém uma linha de dados que foi retornada pela odbc_do() ou odbc_exec(). Depois de odbc_fetch_row() ser chamada, os campos desta linha podem ser acessados com odbc_result().

Parâmetros

result_id

O identificador de resultado.

row_number

Se row_number não for especificado, odbc_fetch_row() irá tentar obter a próxima linha no conjunto de resultados. Chamadas para odbc_fetch_row() com ou sem row_number podem ser misturadas.

Para caminhar através do conjunto de resultados mais de uma vez, você pode usar odbc_fetch_row() com row_number 1, e então continuar fazendo odbc_fetch_row() sem row_number para ver os resultados. Se um driver não suportar a obtenção de linhas por números, o parâmetro row_number é ignorado.

Valor Retornado

Retorna TRUE se houver uma linha, FALSE caso contrário.

odbc_fetch_object
odbc_field_len
ODBC Unificado


Obtém o tamanho (precisão) de um campo

odbc_fetch_row
odbc_field_name
ODBC Unificado
PHP Manual

odbc_field_len

(PHP 4, PHP 5)

odbc_field_len — Obtém o tamanho (precisão) de um campo

Descrição

int odbc_field_len ( resource $result_id , int $field_number )

Obtém o tamanho do campo referenciado pelo número no dado identificador de resultado.

Parâmetros

result_id

O identificador do resultado.

field_number

O número do campo. A numeração dos campos inicia em 0.

Valor Retornado

Retorna o nome do campo como uma string, ou FALSE em erro.

Veja Também

  • odbc_field_scale() - Obtém a precisão de um campo para obter a precisão de um número de ponto flutuante

odbc_fetch_row
odbc_field_name
ODBC Unificado


Obtém o nome da coluna

odbc_field_len
odbc_field_num
ODBC Unificado
PHP Manual

odbc_field_name

(PHP 4, PHP 5)

odbc_field_name — Obtém o nome da coluna

Descrição

string odbc_field_name ( resource $result_id , int $field_number )

Obtém o nome do campo ocupando o número da coluna em um dado identificador de resultado.

Parâmetros

result_id

O identificador de resultado.

field_number

O número do campo. A numeração de campos iniciam em 1.

Valor Retornado

Retorna o nome do campo como uma string, ou FALSE em erro.

odbc_field_len
odbc_field_num
ODBC Unificado


Retorna o número da coluna

odbc_field_name
odbc_field_precision
ODBC Unificado
PHP Manual

odbc_field_num

(PHP 4, PHP 5)

odbc_field_num — Retorna o número da coluna

Descrição

int odbc_field_num ( resource $result_id , string $field_name )

Obtém o número da coluna que corresponde ao nome do campo no dado identificador de resultado.

Parâmetros

result_id

O identificador de resultado.

field_name

O nome do campo.

Valor Retornado

Retorna o número do campo como um inteiro, ou FALSE em erro. A numeração dos campos iniciam em 1.

odbc_field_name
odbc_field_precision
ODBC Unificado


Sinônimo de odbc_field_len

odbc_field_num
odbc_field_scale
ODBC Unificado
PHP Manual

odbc_field_precision

(PHP 4, PHP 5)

odbc_field_precision — Sinônimo de odbc_field_len()

Descrição

Esta função é um apelido para: odbc_field_len().

Veja Também

  • odbc_field_scale() - Obtém a precisão de um campo para obter a precisão de números de ponto flutuante.

odbc_field_num
odbc_field_scale
ODBC Unificado


Obtém a precisão de um campo

odbc_field_precision
odbc_field_type
ODBC Unificado
PHP Manual

odbc_field_scale

(PHP 4, PHP 5)

odbc_field_scale — Obtém a precisão de um campo

Descrição

int odbc_field_scale ( resource $result_id , int $field_number )

Obtém a precisão do campo referenciado pelo número em um dado identificador de resultado.

Parâmetros

result_id

O identificador de resultado.

field_number

O número do campo. A numeração do campo inicia em 1.

Valor Retornado

Retorna a precisão do campo como um inteiro, ou FALSE em erro.

odbc_field_precision
odbc_field_type
ODBC Unificado


Tipo de dados de um campo

odbc_field_scale
odbc_foreignkeys
ODBC Unificado
PHP Manual

odbc_field_type

(PHP 4, PHP 5)

odbc_field_type — Tipo de dados de um campo

Descrição

string odbc_field_type ( resource $result_id , int $field_number )

Obtém o tipo SQL do campo referenciado pelo número num dado identificador de resultado.

Parâmetros

result_id

O identificador de resultado.

field_number

O número do campo. Campos numerados a partir de 1.

Valor Retornado

Retorna o tipo do campo como uma string, ou FALSE em erro.

odbc_field_scale
odbc_foreignkeys
ODBC Unificado


Retorna uma lista de chaves estrangeiras na tabela especificada ou uma lista de chaves estrangeiras em outras tabelas que se referem a chave primária na tabela especificada

odbc_field_type
odbc_free_result
ODBC Unificado
PHP Manual

odbc_foreignkeys

(PHP 4, PHP 5)

odbc_foreignkeys — Retorna uma lista de chaves estrangeiras na tabela especificada ou uma lista de chaves estrangeiras em outras tabelas que se referem a chave primária na tabela especificada

Descrição

resource odbc_foreignkeys ( resource $connection_id , string $pk_qualifier , string $pk_owner , string $pk_table , string $fk_qualifier , string $fk_owner , string $fk_table )

odbc_foreignkeys() obtém informações sobre as chaves estrangeiras. Retorna um conjunto de resultados ODBC FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • PKTABLE_QUALIFIER
  • PKTABLE_OWNER
  • PKTABLE_NAME
  • PKCOLUMN_NAME
  • FKTABLE_QUALIFIER
  • FKTABLE_OWNER
  • FKTABLE_NAME
  • FKCOLUMN_NAME
  • KEY_SEQ
  • UPDATE_RULE
  • DELETE_RULE
  • FK_NAME
  • PK_NAME

Se pk_table contém um nome de tabela, odbc_foreignkeys() retorna um conjunto de resultados contendo a chave primária da tabela especificada e todas as chaves estrangeiras que se referem a ela.

Se fk_table contém um nome de tabela, odbc_foreignkeys() retorna um conjunto de resultados de todas as chaves estrangeiras da tabela especificada e as chaves primárias (em outras tabelas) as quais elas se referem.

Se ambos pk_table e fk_table contiverem nomes de tabelas, odbc_foreignkeys() retorna as chaves estrangeiras na tabela especificada em fk_table que se referam a chave primária na tabela especificada em pk_table. Isto deve ser uma chave primária no máximo.

odbc_field_type
odbc_free_result
ODBC Unificado


Libera os recursos associados a um resultado

odbc_foreignkeys
odbc_gettypeinfo
ODBC Unificado
PHP Manual

odbc_free_result

(PHP 4, PHP 5)

odbc_free_result — Libera os recursos associados a um resultado

Descrição

bool odbc_free_result ( resource $result_id )

Libera o recursos associados com o resultado.

odbc_free_result() somente necessita ser chamado se você está com problema pelo fato de usar muita memória quando seu script é executado. Toda memória de resultado irá automaticamente ser liberada quando o script é terminado.

Parâmetros

result_id

The result identifier.

Valor Retornado

Sempre retorna TRUE.

Notas

Nota:

Se auto-commit estiver desabilitado (veja odbc_autocommit()) e você utilizar odbc_free_result() antes de gravar, todas as transações pendentes serão desfeitas.

odbc_foreignkeys
odbc_gettypeinfo
ODBC Unificado


Retorna um identificador de resultados contendo informações sobre os tipos de dados suportados pela fonte de dados

odbc_free_result
odbc_longreadlen
ODBC Unificado
PHP Manual

odbc_gettypeinfo

(PHP 4, PHP 5)

odbc_gettypeinfo — Retorna um identificador de resultados contendo informações sobre os tipos de dados suportados pela fonte de dados

Descrição

resource odbc_gettypeinfo ( resource $connection_id [, int $data_type ] )

Obtém informações sobre os tipos de dados suportados pela fonte de dados. Retorna um identificador de resultados ODBC ou FALSE em caso de falha. O argumento opcional data_type pode ser utilizado para restringir a informação para um único tipo de dados.

O conjunto de resultados tem as seguintes colunas:

  • TYPE_NAME
  • DATA_TYPE
  • PRECISION
  • LITERAL_PREFIX
  • LITERAL_SUFFIX
  • CREATE_PARAMS
  • NULLABLE
  • CASE_SENSITIVE
  • SEARCHABLE
  • UNSIGNED_ATTRIBUTE
  • MONEY
  • AUTO_INCREMENT
  • LOCAL_TYPE_NAME
  • MINIMUM_SCALE
  • MAXIMUM_SCALE

O conjunto de resultados é ordenado por DATA_TYPE e TYPE_NAME.

odbc_free_result
odbc_longreadlen
ODBC Unificado


Manipulação de colunas LONG

odbc_gettypeinfo
odbc_next_result
ODBC Unificado
PHP Manual

odbc_longreadlen

(PHP 4, PHP 5)

odbc_longreadlen — Manipulação de colunas LONG

Descrição

bool odbc_longreadlen ( resource $result_id , int $length )

Habilita o manusei de colunas LONG e LONGVARBINARY.

Parâmetros

result_id

O identificador de resultado.

length

O número de bytes retornado pelo PHP é controlado pelo parâmetro length. Se ele é definido para 0, coluna de grandes dados são passadas através do cliente.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Manipulação de colunas LONGVARBINARY é também afetado por odbc_binmode().

odbc_gettypeinfo
odbc_next_result
ODBC Unificado


Confere se resultados múltiplos estão disponíveis

odbc_longreadlen
odbc_num_fields
ODBC Unificado
PHP Manual

odbc_next_result

(PHP 4 >= 4.0.5, PHP 5)

odbc_next_result — Confere se resultados múltiplos estão disponíveis

Descrição

bool odbc_next_result ( resource $result_id )

Verifica se há mais resultados disponíveis, dessa forma, permitindo acesso para próximo resultado via odbc_fetch_array(), odbc_fetch_row(), odbc_result(), etc.

Parâmetros

result_id

O identificador de resultado.

Valor Retornado

Retorna TRUE se há mais resultados, FALSE caso contrário.

Exemplos

Exemplo #1 odbc_next_result()

<?php
$r_Connection = odbc_connect($dsn, $username, $password);

$s_SQL = <<<END_SQL
SELECT 'A'
SELECT 'B'
SELECT 'C'
END_SQL;

$r_Results = odbc_exec($r_Connection, $s_SQL);

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo "Dump first result set";
var_dump($a_Row1, $a_Row2);

echo "Get second results set ";
var_dump(odbc_next_result($r_Results));

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo "Dump second result set ";
var_dump($a_Row1, $a_Row2);

echo "Get third results set ";
var_dump(odbc_next_result($r_Results));

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo "Dump third result set ";
var_dump($a_Row1, $a_Row2);

echo "Try for a fourth result set ";
var_dump(odbc_next_result($r_Results));
?>

O exemplo acima irá imprimir:

Dump first result set array(1) {
    ["A"]=>
    string(1) "A"
}
bool(false)
Get second results set bool(true)
Dump second result set array(1) {
    ["B"]=>
    string(1) "B"
}
bool(false)
Get third results set bool(true)
Dump third result set array(1) {
    ["C"]=>
    string(1) "C"
}
bool(false)
Try for a fourth result set bool(false)

odbc_longreadlen
odbc_num_fields
ODBC Unificado


Número de colunas em um resultado

odbc_next_result
odbc_num_rows
ODBC Unificado
PHP Manual

odbc_num_fields

(PHP 4, PHP 5)

odbc_num_fields — Número de colunas em um resultado

Descrição

int odbc_num_fields ( resource $result_id )

Obtém o número de campos (colunas) em um resultado ODBC.

Parâmetros

result_id

O identificador de resultado retornado pela odbc_exec().

Valor Retornado

Retorna o número de campos, ou -1 em erro.

odbc_next_result
odbc_num_rows
ODBC Unificado


Número de linhas em um resultado

odbc_num_fields
odbc_pconnect
ODBC Unificado
PHP Manual

odbc_num_rows

(PHP 4, PHP 5)

odbc_num_rows — Número de linhas em um resultado

Descrição

int odbc_num_rows ( resource $result_id )

Obtém o número de linhas em um resultado ODBC. Para comandos INSERT, UPDATE e DELETE odbc_num_rows() retorna o número de linhas afetadas. Para SELECT isto pode ser o número de linhas disponíveis.

Parâmetros

result_id

O identificador de resultado retornado pela odbc_exec().

Valor Retornado

Retorna o número de linhas em um resultado ODBC. Esta função retornará -1 em erro.

Notas

Nota:

Usando odbc_num_rows() para determinar o número de linhas disponível após um SELECT, será retornado -1 com muitos drivers.

odbc_num_fields
odbc_pconnect
ODBC Unificado


Abre uma conexão persistente com o servidor de banco de dados

odbc_num_rows
odbc_prepare
ODBC Unificado
PHP Manual

odbc_pconnect

(PHP 4, PHP 5)

odbc_pconnect — Abre uma conexão persistente com o servidor de banco de dados

Descrição

resource odbc_pconnect ( string $dsn , string $user , string $password [, int $cursor_type ] )

Retorna uma id de conexão ODBC ou 0 (FALSE) em caso de erro. Esta função é muito parecida com odbc_connect(), exceto que a conexão não é realmente fechada quando o script termina. Requisições futuras com o mesma combinação de dsn, user, password (via odbc_connect() e odbc_pconnect()) podem reutilizar a conexão persistente.

Nota: Conexões persistentes não tem efeito se o PHP é utilizado como um programa CGI.

Para informações sobre o parâmetro opcional cursor_type veja a função odbc_connect(). Para maiores informações sobre as conexões persistentes, leia o FAQ PHP.

odbc_num_rows
odbc_prepare
ODBC Unificado


Prepara um comando para execução

odbc_pconnect
odbc_primarykeys
ODBC Unificado
PHP Manual

odbc_prepare

(PHP 4, PHP 5)

odbc_prepare — Prepara um comando para execução

Descrição

resource odbc_prepare ( resource $connection_id , string $query_string )

Retorna FALSE em caso de erro.

Retorna um identificador de resultado ODBC se o comando SQL foi preparado de modo bem sucedido. O identificador de resultado pode ser executado posteriormente para executar o comando com odbc_execute().

Alguns bancos de dados (como IBM DB2, MS SQL Server, e Oracle) suportam stored procedures que aceitam parâmetros do tipo IN, INOUT, e OUT como definido pela especificação ODBC. Entretanto, o Unified ODBC driver atualmente suporta apenas parâmetros do tipo IN em stored procedures.

No seguinte código, $res será válido apenas se todos os três parâmetros em myproc forem parâmetros IN:

<?php
$a = 1;
$b = 2;
$c = 3;
$stmt = odbc_prepare($conn, 'CALL myproc(?,?,?)');
$res = odbc_execute($stmt, array($a, $b, $c));
?>
Se você precisar usar um stored procedure usando parâmetros INOUT ou OUT, a alternativa é usar a extensão nativa para o seu banco de dados (por exemplo, mssql para MS SQL Server, ou oci8 para Oracle).

odbc_pconnect
odbc_primarykeys
ODBC Unificado


Obtém a chave primária de uma tabela

odbc_prepare
odbc_procedurecolumns
ODBC Unificado
PHP Manual

odbc_primarykeys

(PHP 4, PHP 5)

odbc_primarykeys — Obtém a chave primária de uma tabela

Descrição

resource odbc_primarykeys ( resource $connection_id , string $qualifier , string $owner , string $table )

Retorna um identificador de resultado que pode ser usado para obter o nome das colunas chave primária de uma tabela.

Parâmetros

connection_id

O identificador da conexão.

qualifier

owner

table

Valor Retornado

Retorna um identificador de resultado ODBC ou FALSE em falha.

O conjunto de resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_OWNER
  • TABLE_NAME
  • COLUMN_NAME
  • KEY_SEQ
  • PK_NAME

odbc_prepare
odbc_procedurecolumns
ODBC Unificado


Obtém informações sobre parâmetros para procedures

odbc_primarykeys
odbc_procedures
ODBC Unificado
PHP Manual

odbc_procedurecolumns

(PHP 4, PHP 5)

odbc_procedurecolumns — Obtém informações sobre parâmetros para procedures

Descrição

resource odbc_procedurecolumns ( resource $connection_id [, string $qualifier ], string $owner , string $proc , string $column )

Retorna uma lista de parâmetros de entrada e saída, assim como as colunas que fazem parte do conjunto de resultados para os procedures especificados. Retorna um idenficador de resultado ODBC ou FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • PROCEDURE_QUALIFIER
  • PROCEDURE_OWNER
  • PROCEDURE_NAME
  • COLUMN_NAME
  • COLUMN_TYPE
  • DATA_TYPE
  • TYPE_NAME
  • PRECISION
  • LENGTH
  • SCALE
  • RADIX
  • NULLABLE
  • REMARKS

O conjunto de resultados é ordenado por PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME e COLUMN_TYPE.

Os argumentos owner, proc and column aceitam modelos de busca ('%' para buscar zero ou mais caracteres e '_' para buscar um único caractere).

odbc_primarykeys
odbc_procedures
ODBC Unificado


Obtém a lista de procedures guadadas na fonte de dados especificada.

odbc_procedurecolumns
odbc_result_all
ODBC Unificado
PHP Manual

odbc_procedures

(PHP 4, PHP 5)

odbc_procedures — Obtém a lista de procedures guadadas na fonte de dados especificada.

Descrição

resource odbc_procedures ( resource $connection_id [, string $qualifier ], string $owner , string $name )

Lista todas as procedures solicitadas. Terorna um identificador de resultado contendo as informações ou FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • PROCEDURE_QUALIFIER
  • PROCEDURE_OWNER
  • PROCEDURE_NAME
  • NUM_INPUT_PARAMS
  • NUM_OUTPUT_PARAMS
  • NUM_RESULT_SETS
  • REMARKS
  • PROCEDURE_TYPE

Os argumentos owner e name aceitam modelos de busca ('%' para encontrar zero ou mais caracteres e '_' para encontrar um único caractere).

odbc_procedurecolumns
odbc_result_all
ODBC Unificado


Mostra o resultado como uma tabela HTML

odbc_procedures
odbc_result
ODBC Unificado
PHP Manual

odbc_result_all

(PHP 4, PHP 5)

odbc_result_all — Mostra o resultado como uma tabela HTML

Descrição

int odbc_result_all ( resource $result_id [, string $format ] )

Mostra todas as linhas de um resultado produzido pela odbc_exec(). O resultado é mostrado no formato de tabela HTML.

Parâmetros

result_id

O identificador de resultado.

format

Formatação adicional de toda tabela.

Valor Retornado

Retorna o número de linhas no resultado ou FALSE em erro.

odbc_procedures
odbc_result
ODBC Unificado


Obtém dados do resultado

odbc_result_all
odbc_rollback
ODBC Unificado
PHP Manual

odbc_result

(PHP 4, PHP 5)

odbc_result — Obtém dados do resultado

Descrição

mixed odbc_result ( resource $result_id , mixed $field )

Retorna o contéudo de um campo. FALSE em caso de erro, NULL para dados NULL, ou TRUE para dados binários.

field pode ser um inteio contendo o número da coluna que você quer; ou pode ser uma string contendo o nome do campo. Por exemplo:

<?php
$item_3 = odbc_result ($Query_ID, 3);
$item_val = odbc_result ($Query_ID, "val");
?>

A primeira chamada a odbc_result() retorna o valor do terceiro campo do registro atual do resultado da consulta. A segunda chamada a odbc_result() retorna o valor do campo cujo nome é "val" do registro atual do resultado da consulta. Um erro acontece se o número do campo for menor do que um ou for maior do que o número de colunas(ou campos). De modo similar, um erro acontece se o nome do campo indicado não existir na tabela que esta sendo consultada.

Índices de campo começam em 1. Para saber sobre o meio que dados binários ou uma coluna long é retornada, veja odbc_binmode() e odbc_longreadlen().

odbc_result_all
odbc_rollback
ODBC Unificado


Desfaz uma transação

odbc_result
odbc_setoption
ODBC Unificado
PHP Manual

odbc_rollback

(PHP 4, PHP 5)

odbc_rollback — Desfaz uma transação

Descrição

bool odbc_rollback ( resource $connection_id )

Desfaz todos os comandos pendentes em conexão.

Parâmetros

connection_id

O identificador da conexão.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

odbc_result
odbc_setoption
ODBC Unificado


Ajusta definições ODBC

odbc_rollback
odbc_specialcolumns
ODBC Unificado
PHP Manual

odbc_setoption

(PHP 4, PHP 5)

odbc_setoption — Ajusta definições ODBC

Descrição

bool odbc_setoption ( resource $id , int $function , int $option , int $param )

Esta opção permite mudar opções ODBC para um conexão em particular ou o resultado de uma consulta. Foi escrita para ajudar a encontrar meios para contornar problemas com drivers ODBC caprichosos. Você provavelmente somente usar esta função se você é um programador ODBC e intender os efeitos que as várias opções terão. Você certamente vai precisar de uma boa referencia ODBC que explique todas as opções diferentes e valores que podem ser usados. Versões diferentes dos drivers suportam opções diferentes.

Devido aos efeitos variarem dependendo do driver ODBC, o uso desta função em scripts que serão tornados publicos é fortemente desencourajado. Também, algumas opções ODBC não estão disponíveis para esta função porque devem ser definidas antes de a conexão ser estabelecida ou a consulta ser preparada. Em todo o caso, se em um trabalho particular isso pode fazer o PHP funcionar e seu superior não dizer para você usar um produto comercial, isto é tudo o que importa realmente.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

id é um id de conexão o o id de um resultado de uma consulta no qual será mudada as definições. Para SQLSetConnectOption(), este é um id de conexão. Para SQLSetStmtOption(), este é um id de um resultado de uma consulta.

Function é a função ODBC a ser usada. O valor deve ser 1 para SQLSetConnectOption() e 2 para SQLSetStmtOption().

O parâmetro option é a opção a ser definida.

O parâmetro param é o valor para a option indicada.

Exemplo #1 Exemplos ODBC Setoption

<?php
// 1. Option 102 of SQLSetConnectOption() is SQL_AUTOCOMMIT.
//    Value 1 of SQL_AUTOCOMMIT is SQL_AUTOCOMMIT_ON.
//    This example has the same effect as
//    odbc_autocommit($conn, true);

odbc_setoption ($conn, 1, 102, 1);

// 2. Option 0 of SQLSetStmtOption() is SQL_QUERY_TIMEOUT.
//    This example sets the query to timeout after 30 seconds.

$result = odbc_prepare ($conn, $sql);
odbc_setoption ($result, 2, 0, 30);
odbc_execute ($result);
?>

odbc_rollback
odbc_specialcolumns
ODBC Unificado


Retorna um conjunto de colunas que identificam de modo único uma linha na tabela ou as colunas que são automaticamente atualizadas quando qualquer valor na linha é atualizado por uma transação.

odbc_setoption
odbc_statistics
ODBC Unificado
PHP Manual

odbc_specialcolumns

(PHP 4, PHP 5)

odbc_specialcolumns — Retorna um conjunto de colunas que identificam de modo único uma linha na tabela ou as colunas que são automaticamente atualizadas quando qualquer valor na linha é atualizado por uma transação.

Descrição

resource odbc_specialcolumns ( resource $connection_id , int $type , string $qualifier , string $owner , string $table , int $scope , int $nullable )

Quando o argumento type é SQL_BEST_ROWID, odbc_specialcolumns() retorna a coluna ou colunas que identificam unicamente cada linha na tabela.

Quando o argumento type é SQL_ROWVER, odbc_specialcolumns() retorna a coluna ou colunas na tabela especificada, se qualquer, que seja automaticamente atualizada pela fonte de dados quando qualquer valor na linha é atualizado por qualquer transação.

Retorna um identificador de resultado ODBC ou FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • SCOPE
  • COLUMN_NAME
  • DATA_TYPE
  • TYPE_NAME
  • PRECISION
  • LENGTH
  • SCALE
  • PSEUDO_COLUMN

O conjunto de resultados é ordenado por SCOPE.

odbc_setoption
odbc_statistics
ODBC Unificado


Obtém estatisticas sobre uma tabela

odbc_specialcolumns
odbc_tableprivileges
ODBC Unificado
PHP Manual

odbc_statistics

(PHP 4, PHP 5)

odbc_statistics — Obtém estatisticas sobre uma tabela

Descrição

resource odbc_statistics ( resource $connection_id , string $qualifier , string $owner , string $table_name , int $unique , int $accuracy )

Pega estatisticas sobre uma tabela e seus índices. Retorna um identificador de resultado ODBC ou FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_OWNER
  • TABLE_NAME
  • NON_UNIQUE
  • INDEX_QUALIFIER
  • INDEX_NAME
  • TYPE
  • SEQ_IN_INDEX
  • COLUMN_NAME
  • COLLATION
  • CARDINALITY
  • PAGES
  • FILTER_CONDITION

O conjunto de resultados é ordenado por NON_UNIQUE, TYPE, INDEX_QUALIFIER, INDEX_NAME e SEQ_IN_INDEX.

odbc_specialcolumns
odbc_tableprivileges
ODBC Unificado


Lista tabelas e os privilégios associados a cada tabela

odbc_statistics
odbc_tables
ODBC Unificado
PHP Manual

odbc_tableprivileges

(PHP 4, PHP 5)

odbc_tableprivileges — Lista tabelas e os privilégios associados a cada tabela

Descrição

resource odbc_tableprivileges ( resource $connection_id , string $qualifier , string $owner , string $name )

Lista as tabelas solicitadas e os privilégios associados a cada tabela. Retorna um identificador de resultado ODBC ou FALSE em caso de falha.

O conjunto dos resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_OWNER
  • TABLE_NAME
  • GRANTOR
  • GRANTEE
  • PRIVILEGE
  • IS_GRANTABLE

O conjunto dos resultados e ordenado por TABLE_QUALIFIER, TABLE_OWNER e TABLE_NAME.

Os argumentos owner e name aceitam caracteres de busca ('%' para buscar zero ou mais caracteres e '_' para buscar um único caractere).

odbc_statistics
odbc_tables
ODBC Unificado


Obtém uma lista dos nomes das tabelas guardadas em uma fonte de dados especificado

odbc_tableprivileges
PDO
ODBC Unificado
PHP Manual

odbc_tables

(PHP 4, PHP 5)

odbc_tables — Obtém uma lista dos nomes das tabelas guardadas em uma fonte de dados especificado

Descrição

resource odbc_tables ( resource $connection_id [, string $qualifier [, string $owner [, string $name [, string $types ]]]] )

Lista todas as tabelas no intervalo solicitado. Retorna um identificador de resultado contendo a informação ou FALSE em caso de falha.

O conjunto de resultados tem as seguintes colunas:

  • TABLE_QUALIFIER
  • TABLE_OWNER
  • TABLE_NAME
  • TABLE_TYPE
  • REMARKS

O conjunto de resultados é ordenado por TABLE_TYPE, TABLE_QUALIFIER, TABLE_OWNER e TABLE_NAME.

Os argumentos owner e name aceitam caracteres de busca ('%' para buscar zero ou mais caracteres e '_' para buscar um único caractere).

Para suportar a enumeração de qualifiers, owners, e table types, a seguinte semantica especial para qualifier, owner, name, e table_type esta disponível:

  • Se qualifier é um único caractere de porcentagem (%) e owner e name são strings vazias, então o conjunto de resultados contém uma lista dos qualifiers válidos para a fonte de dados. (Todas as colunas exceto a coluna TABLE_QUALIFIER contém NULLs.)
  • Se owner é um único caractere de porcentagem (%) e qualifier e name são strings vazias, então o conjunto de resultados contém uma lista dos owners válidos para a fonte de dados. (Todas as colunas exceto a coluna TABLE_OWNER contém NULLs.)
  • Se table_type é um único caractere de porcentagem (%) e qualifier, owner e name são strings vazias, então o conjunto de resultados contém uma lista de table types válido para a fonte de dados. (Todas as colunas exceto a coluna TABLE_TYPE contém NULLs.)

Se table_type não for uma string vazia, deve conter uma lista de valores separados por vírgula para os tipos que interessem, cada valor pode estar entre aspas simples (') ou sem aspas. Poe exemplo, "'TABLE','VIEW'" ou "TABLE, VIEW". Se a fonte de dados não suportar o tipo de tabela especificado, odbc_tables() não retorna nenhum resultado para este tipo.

Veja também odbc_tableprivileges() para obter os privilégios associados.

odbc_tableprivileges
PDO
ODBC Unificado


PHP Data Objects

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Connections and Connection management
  • Transactions and auto-commit
  • Prepared statements and stored procedures
  • Errors and error handling
  • Large Objects (LOBs)
  • PDO — The PDO class
    • PDO::beginTransaction — Initiates a transaction
    • PDO::commit — Commits a transaction
    • PDO::__construct — Creates a PDO instance representing a connection to a database
    • PDO::errorCode — Fetch the SQLSTATE associated with the last operation on the database handle
    • PDO::errorInfo — Fetch extended error information associated with the last operation on the database handle
    • PDO::exec — Execute an SQL statement and return the number of affected rows
    • PDO::getAttribute — Retrieve a database connection attribute
    • PDO::getAvailableDrivers — Return an array of available PDO drivers
    • PDO::inTransaction — Checks if inside a transaction
    • PDO::lastInsertId — Returns the ID of the last inserted row or sequence value
    • PDO::prepare — Prepares a statement for execution and returns a statement object
    • PDO::query — Executes an SQL statement, returning a result set as a PDOStatement object
    • PDO::quote — Quotes a string for use in a query.
    • PDO::rollBack — Rolls back a transaction
    • PDO::setAttribute — Set an attribute
  • PDOStatement — The PDOStatement class
    • PDOStatement->bindColumn — Bind a column to a PHP variable
    • PDOStatement->bindParam — Binds a parameter to the specified variable name
    • PDOStatement->bindValue — Binds a value to a parameter
    • PDOStatement->closeCursor — Closes the cursor, enabling the statement to be executed again.
    • PDOStatement->columnCount — Returns the number of columns in the result set
    • PDOStatement->debugDumpParams — Dump an SQL prepared command
    • PDOStatement->errorCode — Fetch the SQLSTATE associated with the last operation on the statement handle
    • PDOStatement->errorInfo — Fetch extended error information associated with the last operation on the statement handle
    • PDOStatement->execute — Executes a prepared statement
    • PDOStatement->fetch — Fetches the next row from a result set
    • PDOStatement->fetchAll — Returns an array containing all of the result set rows
    • PDOStatement->fetchColumn — Returns a single column from the next row of a result set
    • PDOStatement->fetchObject — Fetches the next row and returns it as an object.
    • PDOStatement->getAttribute — Retrieve a statement attribute
    • PDOStatement->getColumnMeta — Returns metadata for a column in a result set
    • PDOStatement->nextRowset — Advances to the next rowset in a multi-rowset statement handle
    • PDOStatement->rowCount — Returns the number of rows affected by the last SQL statement
    • PDOStatement->setAttribute — Set a statement attribute
    • PDOStatement->setFetchMode — Set the default fetch mode for this statement
  • PDOException — The PDOException class
  • PDO Drivers
    • CUBRID (PDO) — CUBRID Functions (PDO_CUBRID)
    • MS SQL Server (PDO) — Microsoft SQL Server and Sybase Functions (PDO_DBLIB)
    • Firebird/Interbase (PDO) — Firebird/Interbase Functions (PDO_FIREBIRD)
    • IBM (PDO) — IBM Functions (PDO_IBM)
    • Informix (PDO) — Informix Functions (PDO_INFORMIX)
    • MySQL (PDO) — MySQL Functions (PDO_MYSQL)
    • Oracle (PDO) — Oracle Functions (PDO_OCI)
    • ODBC and DB2 (PDO) — ODBC and DB2 Functions (PDO_ODBC)
    • PostgreSQL (PDO) — PostgreSQL Functions (PDO_PGSQL)
    • SQLite (PDO) — SQLite Functions (PDO_SQLITE)
    • 4D (PDO) — 4D Functions (PDO_4D)
odbc_tables
Introdução
Camadas de Abstração


Introdução

The PHP Data Objects (PDO) extension defines a lightweight, consistent interface for accessing databases in PHP. Each database driver that implements the PDO interface can expose database-specific features as regular extension functions. Note that you cannot perform any database functions using the PDO extension by itself; you must use a database-specific PDO driver to access a database server.

PDO provides a data-access abstraction layer, which means that, regardless of which database you're using, you use the same functions to issue queries and fetch data. PDO does not provide a database abstraction; it doesn't rewrite SQL or emulate missing features. You should use a full-blown abstraction layer if you need that facility.

PDO ships with PHP 5.1, and is available as a PECL extension for PHP 5.0; PDO requires the new OO features in the core of PHP 5, and so will not run with earlier versions of PHP.

PDO
Instalação/Configuração
PDO


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PDO


Instalação

Installing PDO on Unix systems

  1. PDO and the PDO_SQLITE driver is enabled by default as of PHP 5.1.0. You may need to enable the PDO driver for your database of choice; consult the documentation for database-specific PDO drivers to find out more about that. Note: When building PDO as a shared extension (not recommended) then all PDO drivers must be loaded after PDO itself.

  2. When installing PDO as a shared module, the php.ini file needs to be updated so that the PDO extension will be loaded automatically when PHP runs. You will also need to enable any database specific drivers there too; make sure that they are listed after the pdo.so line, as PDO must be initialized before the database-specific extensions can be loaded. If you built PDO and the database-specific extensions statically, you can skip this step.

    extension=pdo.so

Windows users

  1. PDO and all the major drivers ship with PHP as shared extensions, and simply need to be activated by editing the php.ini file:

    extension=php_pdo.dll

    Nota:

    This step is not necessary for PHP 5.3 and above, as a DLL is no longer required for PDO.

  2. Next, choose the other database-specific DLL files and either use dl() to load them at runtime, or enable them in php.ini below php_pdo.dll. For example:

    extension=php_pdo.dll
extension=php_pdo_firebird.dll
extension=php_pdo_informix.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll

    These DLLs should exist in the system's extension_dir.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração do PDO
Nome | Padrão | Modificável | Changelog
pdo.dsn.* |  | php.ini only |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

pdo.dsn.* string

Define sinônimos DSN. Veja PDO::__construct() para uma completa explicação.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Aviso

PDO uses class constants since PHP 5.1. Prior releases use global constants in the form PDO_PARAM_BOOL.

PDO::PARAM_BOOL (integer)
Represents a boolean data type.
PDO::PARAM_NULL (integer)
Represents the SQL NULL data type.
PDO::PARAM_INT (integer)
Represents the SQL INTEGER data type.
PDO::PARAM_STR (integer)
Represents the SQL CHAR, VARCHAR, or other string data type.
PDO::PARAM_LOB (integer)
Represents the SQL large object data type.
PDO::PARAM_STMT (integer)
Represents a recordset type. Not currently supported by any drivers.
PDO::PARAM_INPUT_OUTPUT (integer)
Specifies that the parameter is an INOUT parameter for a stored procedure. You must bitwise-OR this value with an explicit PDO::PARAM_* data type.
PDO::FETCH_LAZY (integer)
Specifies that the fetch method shall return each row as an object with variable names that correspond to the column names returned in the result set. PDO::FETCH_LAZY creates the object variable names as they are accessed.
PDO::FETCH_ASSOC (integer)
Specifies that the fetch method shall return each row as an array indexed by column name as returned in the corresponding result set. If the result set contains multiple columns with the same name, PDO::FETCH_ASSOC returns only a single value per column name.
PDO::FETCH_NAMED (integer)
Specifies that the fetch method shall return each row as an array indexed by column name as returned in the corresponding result set. If the result set contains multiple columns with the same name, PDO::FETCH_NAMED returns an array of values per column name.
PDO::FETCH_NUM (integer)
Specifies that the fetch method shall return each row as an array indexed by column number as returned in the corresponding result set, starting at column 0.
PDO::FETCH_BOTH (integer)
Specifies that the fetch method shall return each row as an array indexed by both column name and number as returned in the corresponding result set, starting at column 0.
PDO::FETCH_OBJ (integer)
Specifies that the fetch method shall return each row as an object with property names that correspond to the column names returned in the result set.
PDO::FETCH_BOUND (integer)
Specifies that the fetch method shall return TRUE and assign the values of the columns in the result set to the PHP variables to which they were bound with the PDOStatement::bindParam() or PDOStatement::bindColumn() methods.
PDO::FETCH_COLUMN (integer)
Specifies that the fetch method shall return only a single requested column from the next row in the result set.
PDO::FETCH_CLASS (integer)
Specifies that the fetch method shall return a new instance of the requested class, mapping the columns to named properties in the class.

Nota: The magic __set() method is called if the property doesn't exist in the requested class

PDO::FETCH_INTO (integer)
Specifies that the fetch method shall update an existing instance of the requested class, mapping the columns to named properties in the class.
PDO::FETCH_FUNC (integer)
PDO::FETCH_GROUP (integer)
PDO::FETCH_UNIQUE (integer)
PDO::FETCH_KEY_PAIR (integer)
Fetch into an array where the 1st column is a key and all subsequent columns are values. Available since PHP 5.2.3.
PDO::FETCH_CLASSTYPE (integer)
Determine the class name from the value of first column.
PDO::FETCH_SERIALIZE (integer)
As PDO::FETCH_INTO but object is provided as a serialized string. Available since PHP 5.1.0.
PDO::FETCH_PROPS_LATE (integer)
Available since PHP 5.2.0
PDO::ATTR_AUTOCOMMIT (integer)
If this value is FALSE, PDO attempts to disable autocommit so that the connection begins a transaction.
PDO::ATTR_PREFETCH (integer)
Setting the prefetch size allows you to balance speed against memory usage for your application. Not all database/driver combinations support setting of the prefetch size. A larger prefetch size results in increased performance at the cost of higher memory usage.
PDO::ATTR_TIMEOUT (integer)
Sets the timeout value in seconds for communications with the database.
PDO::ATTR_ERRMODE (integer)
See the Errors and error handling section for more information about this attribute.
PDO::ATTR_SERVER_VERSION (integer)
This is a read only attribute; it will return information about the version of the database server to which PDO is connected.
PDO::ATTR_CLIENT_VERSION (integer)
This is a read only attribute; it will return information about the version of the client libraries that the PDO driver is using.
PDO::ATTR_SERVER_INFO (integer)
This is a read only attribute; it will return some meta information about the database server to which PDO is connected.
PDO::ATTR_CONNECTION_STATUS (integer)
PDO::ATTR_CASE (integer)
Force column names to a specific case specified by the PDO::CASE_* constants.
PDO::ATTR_CURSOR_NAME (integer)
Get or set the name to use for a cursor. Most useful when using scrollable cursors and positioned updates.
PDO::ATTR_CURSOR (integer)
Selects the cursor type. PDO currently supports either PDO::CURSOR_FWDONLY and PDO::CURSOR_SCROLL. Stick with PDO::CURSOR_FWDONLY unless you know that you need a scrollable cursor.
PDO::ATTR_DRIVER_NAME (string)
Returns the name of the driver.

Exemplo #1 using PDO::ATTR_DRIVER_NAME

<?php
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
  echo "Running on mysql; doing something mysql specific here\n";
}
?>

PDO::ATTR_ORACLE_NULLS (integer)
Convert empty strings to SQL NULL values on data fetches.
PDO::ATTR_PERSISTENT (integer)
Request a persistent connection, rather than creating a new connection. See Connections and Connection management for more information on this attribute.
PDO::ATTR_STATEMENT_CLASS (integer)
PDO::ATTR_FETCH_CATALOG_NAMES (integer)
Prepend the containing catalog name to each column name returned in the result set. The catalog name and column name are separated by a decimal (.) character. Support of this attribute is at the driver level; it may not be supported by your driver.
PDO::ATTR_FETCH_TABLE_NAMES (integer)
Prepend the containing table name to each column name returned in the result set. The table name and column name are separated by a decimal (.) character. Support of this attribute is at the driver level; it may not be supported by your driver.
PDO::ATTR_STRINGIFY_FETCHES (integer)
PDO::ATTR_MAX_COLUMN_LEN (integer)
PDO::ATTR_DEFAULT_FETCH_MODE (integer)
Available since PHP 5.2.0
PDO::ATTR_EMULATE_PREPARES (integer)
Available since PHP 5.1.3.
PDO::ERRMODE_SILENT (integer)
Do not raise an error or exception if an error occurs. The developer is expected to explicitly check for errors. This is the default mode. See Errors and error handling for more information about this attribute.
PDO::ERRMODE_WARNING (integer)
Issue a PHP E_WARNING message if an error occurs. See Errors and error handling for more information about this attribute.
PDO::ERRMODE_EXCEPTION (integer)
Throw a PDOException if an error occurs. See Errors and error handling for more information about this attribute.
PDO::CASE_NATURAL (integer)
Leave column names as returned by the database driver.
PDO::CASE_LOWER (integer)
Force column names to lower case.
PDO::CASE_UPPER (integer)
Force column names to upper case.
PDO::NULL_NATURAL (integer)
PDO::NULL_EMPTY_STRING (integer)
PDO::NULL_TO_STRING (integer)
PDO::FETCH_ORI_NEXT (integer)
Fetch the next row in the result set. Valid only for scrollable cursors.
PDO::FETCH_ORI_PRIOR (integer)
Fetch the previous row in the result set. Valid only for scrollable cursors.
PDO::FETCH_ORI_FIRST (integer)
Fetch the first row in the result set. Valid only for scrollable cursors.
PDO::FETCH_ORI_LAST (integer)
Fetch the last row in the result set. Valid only for scrollable cursors.
PDO::FETCH_ORI_ABS (integer)
Fetch the requested row by row number from the result set. Valid only for scrollable cursors.
PDO::FETCH_ORI_REL (integer)
Fetch the requested row by relative position from the current position of the cursor in the result set. Valid only for scrollable cursors.
PDO::CURSOR_FWDONLY (integer)
Create a PDOStatement object with a forward-only cursor. This is the default cursor choice, as it is the fastest and most common data access pattern in PHP.
PDO::CURSOR_SCROLL (integer)
Create a PDOStatement object with a scrollable cursor. Pass the PDO::FETCH_ORI_* constants to control the rows fetched from the result set.
PDO::ERR_NONE (string)
Corresponds to SQLSTATE '00000', meaning that the SQL statement was successfully issued with no errors or warnings. This constant is for your convenience when checking PDO::errorCode() or PDOStatement::errorCode() to determine if an error occurred. You will usually know if this is the case by examining the return code from the method that raised the error condition anyway.
PDO::PARAM_EVT_ALLOC (integer)
Allocation event
PDO::PARAM_EVT_FREE (integer)
Deallocation event
PDO::PARAM_EVT_EXEC_PRE (integer)
Event triggered prior to execution of a prepared statement.
PDO::PARAM_EVT_EXEC_POST (integer)
Event triggered subsequent to execution of a prepared statement.
PDO::PARAM_EVT_FETCH_PRE (integer)
Event triggered prior to fetching a result from a resultset.
PDO::PARAM_EVT_FETCH_POST (integer)
Event triggered subsequent to fetching a result from a resultset.
PDO::PARAM_EVT_NORMALIZE (integer)
Event triggered during bound parameter registration allowing the driver to normalize the parameter name.
Tipos Resource
Connections and Connection management
PDO


Connections and Connection management

Connections are established by creating instances of the PDO base class. It doesn't matter which driver you want to use; you always use the PDO class name. The constructor accepts parameters for specifying the database source (known as the DSN) and optionally for the username and password (if any).

Exemplo #2 Connecting to MySQL

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
?>

If there are any connection errors, a PDOException object will be thrown. You may catch the exception if you want to handle the error condition, or you may opt to leave it for an application global exception handler that you set up via set_exception_handler().

Exemplo #3 Handling connection errors

<?php
try {
    $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
    foreach($dbh->query('SELECT * from FOO') as $row) {
        print_r($row);
    }
    $dbh = null;
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}
?>

Aviso

If your application does not catch the exception thrown from the PDO constructor, the default action taken by the zend engine is to terminate the script and display a back trace. This back trace will likely reveal the full database connection details, including the username and password. It is your responsibility to catch this exception, either explicitly (via a catch statement) or implicitly via set_exception_handler().

Upon successful connection to the database, an instance of the PDO class is returned to your script. The connection remains active for the lifetime of that PDO object. To close the connection, you need to destroy the object by ensuring that all remaining references to it are deleted--you do this by assigning NULL to the variable that holds the object. If you don't do this explicitly, PHP will automatically close the connection when your script ends.

Exemplo #4 Closing a connection

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
// use the connection here

// and now we're done; close it
$dbh = null;
?>

Many web applications will benefit from making persistent connections to database servers. Persistent connections are not closed at the end of the script, but are cached and re-used when another script requests a connection using the same credentials. The persistent connection cache allows you to avoid the overhead of establishing a new connection every time a script needs to talk to a database, resulting in a faster web application.

Exemplo #5 Persistent connections

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
    PDO::ATTR_PERSISTENT => true
));
?>

Nota:

If you wish to use persistent connections, you must set PDO::ATTR_PERSISTENT in the array of driver options passed to the PDO constructor. If setting this attribute with PDO::setAttribute() after instantiation of the object, the driver will not use persistent connections.

Nota:

If you're using the PDO ODBC driver and your ODBC libraries support ODBC Connection Pooling (unixODBC and Windows are two that do; there may be more), then it's recommended that you don't use persistent PDO connections, and instead leave the connection caching to the ODBC Connection Pooling layer. The ODBC Connection Pool is shared with other modules in the process; if PDO is told to cache the connection, then that connection would never be returned to the ODBC connection pool, resulting in additional connections being created to service those other modules.

Constantes pré-definidas
Transactions and auto-commit
PDO


Transactions and auto-commit

Now that you're connected via PDO, you must understand how PDO manages transactions before you start issuing queries. If you've never encountered transactions before, they offer 4 major features: Atomicity, Consistency, Isolation and Durability (ACID). In layman's terms, any work carried out in a transaction, even if it is carried out in stages, is guaranteed to be applied to the database safely, and without interference from other connections, when it is committed. Transactional work can also be automatically undone at your request (provided you haven't already committed it), which makes error handling in your scripts easier.

Transactions are typically implemented by "saving-up" your batch of changes to be applied all at once; this has the nice side effect of drastically improving the efficiency of those updates. In other words, transactions can make your scripts faster and potentially more robust (you still need to use them correctly to reap that benefit).

Unfortunately, not every database supports transactions, so PDO needs to run in what is known as "auto-commit" mode when you first open the connection. Auto-commit mode means that every query that you run has its own implicit transaction, if the database supports it, or no transaction if the database doesn't support transactions. If you need a transaction, you must use the PDO::beginTransaction() method to initiate one. If the underlying driver does not support transactions, a PDOException will be thrown (regardless of your error handling settings: this is always a serious error condition). Once you are in a transaction, you may use PDO::commit() or PDO::rollBack() to finish it, depending on the success of the code you run during the transaction.

Aviso

PDO only checks for transaction capabilities on driver level. If certain runtime conditions mean that transactions are unavailable, PDO::beginTransaction() will still return TRUE without error if the database server accepts the request to start a transaction.

An example of this would be trying to use transactions on MyISAM tables on a MySQL database.

When the script ends or when a connection is about to be closed, if you have an outstanding transaction, PDO will automatically roll it back. This is a safety measure to help avoid inconsistency in the cases where the script terminates unexpectedly--if you didn't explicitly commit the transaction, then it is assumed that something went awry, so the rollback is performed for the safety of your data.

Aviso

The automatic rollback only happens if you initiate the transaction via PDO::beginTransaction(). If you manually issue a query that begins a transaction PDO has no way of knowing about it and thus cannot roll it back if something bad happens.

Exemplo #6 Executing a batch in a transaction

In the following sample, let's assume that we are creating a set of entries for a new employee, who has been assigned an ID number of 23. In addition to entering the basic data for that person, we also need to record their salary. It's pretty simple to make two separate updates, but by enclosing them within the PDO::beginTransaction() and PDO::commit() calls, we are guaranteeing that no one else will be able to see those changes until they are complete. If something goes wrong, the catch block rolls back all changes made since the transaction was started, and then prints out an error message.

<?php
try {
  $dbh = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2',
      array(PDO::ATTR_PERSISTENT => true));
  echo "Connected\n";
} catch (Exception $e) {
  die("Unable to connect: " . $e->getMessage());
}

try {
  $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $dbh->beginTransaction();
  $dbh->exec("insert into staff (id, first, last) values (23, 'Joe', 'Bloggs')");
  $dbh->exec("insert into salarychange (id, amount, changedate)
      values (23, 50000, NOW())");
  $dbh->commit();

} catch (Exception $e) {
  $dbh->rollBack();
  echo "Failed: " . $e->getMessage();
}
?>

You're not limited to making updates in a transaction; you can also issue complex queries to extract data, and possibly use that information to build up more updates and queries; while the transaction is active, you are guaranteed that no one else can make changes while you are in the middle of your work. For further reading on transactions, refer to the documentation provided by your database server.

Connections and Connection management
Prepared statements and stored procedures
PDO


Prepared statements and stored procedures

Many of the more mature databases support the concept of prepared statements. What are they? They can be thought of as a kind of compiled template for the SQL that an application wants to run, that can be customized using variable parameters. Prepared statements offer two major benefits:

  • The query only needs to be parsed (or prepared) once, but can be executed multiple times with the same or different parameters. When the query is prepared, the database will analyze, compile and optimize it's plan for executing the query. For complex queries this process can take up enough time that it will noticeably slow down an application if there is a need to repeat the same query many times with different parameters. By using a prepared statement the application avoids repeating the analyze/compile/optimize cycle. This means that prepared statements use fewer resources and thus run faster.
  • The parameters to prepared statements don't need to be quoted; the driver automatically handles this. If an application exclusively uses prepared statements, the developer can be sure that no SQL injection will occur (however, if other portions of the query are being built up with unescaped input, SQL injection is still possible).

Prepared statements are so useful that they are the only feature that PDO will emulate for drivers that don't support them. This ensures that an application will be able to use the same data access paradigm regardless of the capabilities of the database.

Exemplo #7 Repeated inserts using prepared statements

This example performs an INSERT query by substituting a name and a value for the named placeholders.

<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);

// insert one row
$name = 'one';
$value = 1;
$stmt->execute();

// insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>

Exemplo #8 Repeated inserts using prepared statements

This example performs an INSERT query by substituting a name and a value for the positional ? placeholders.

<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (?, ?)");
$stmt->bindParam(1, $name);
$stmt->bindParam(2, $value);

// insert one row
$name = 'one';
$value = 1;
$stmt->execute();

// insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>

Exemplo #9 Fetching data using prepared statements

This example fetches data based on a key value supplied by a form. The user input is automatically quoted, so there is no risk of a SQL injection attack.

<?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) {
  while ($row = $stmt->fetch()) {
    print_r($row);
  }
}
?>

If the database driver supports it, an application may also bind parameters for output as well as input. Output parameters are typically used to retrieve values from stored procedures. Output parameters are slightly more complex to use than input parameters, in that a developer must know how large a given parameter might be when they bind it. If the value turns out to be larger than the size they suggested, an error is raised.

Exemplo #10 Calling a stored procedure with an output parameter

<?php
$stmt = $dbh->prepare("CALL sp_returns_string(?)");
$stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000);

// call the stored procedure
$stmt->execute();

print "procedure returned $return_value\n";
?>

Developers may also specify parameters that hold values both input and output; the syntax is similar to output parameters. In this next example, the string 'hello' is passed into the stored procedure, and when it returns, hello is replaced with the return value of the procedure.

Exemplo #11 Calling a stored procedure with an input/output parameter

<?php
$stmt = $dbh->prepare("CALL sp_takes_string_returns_string(?)");
$value = 'hello';
$stmt->bindParam(1, $value, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 4000);

// call the stored procedure
$stmt->execute();

print "procedure returned $value\n";
?>

Exemplo #12 Invalid use of placeholder

<?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name LIKE '%?%'");
$stmt->execute(array($_GET['name']));

// placeholder must be used in the place of the whole value
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name LIKE ?");
$stmt->execute(array("%$_GET[name]%"));
?>

Transactions and auto-commit
Errors and error handling
PDO


Errors and error handling

PDO offers you a choice of 3 different error handling strategies, to fit your style of application development.

  • PDO::ERRMODE_SILENT

    This is the default mode. PDO will simply set the error code for you to inspect using the PDO::errorCode() and PDO::errorInfo() methods on both the statement and database objects; if the error resulted from a call on a statement object, you would invoke the PDOStatement::errorCode() or PDOStatement::errorInfo() method on that object. If the error resulted from a call on the database object, you would invoke those methods on the database object instead.

  • PDO::ERRMODE_WARNING

    In addition to setting the error code, PDO will emit a traditional E_WARNING message. This setting is useful during debugging/testing, if you just want to see what problems occurred without interrupting the flow of the application.

  • PDO::ERRMODE_EXCEPTION

    In addition to setting the error code, PDO will throw a PDOException and set its properties to reflect the error code and error information. This setting is also useful during debugging, as it will effectively "blow up" the script at the point of the error, very quickly pointing a finger at potential problem areas in your code (remember: transactions are automatically rolled back if the exception causes the script to terminate).

    Exception mode is also useful because you can structure your error handling more clearly than with traditional PHP-style warnings, and with less code/nesting than by running in silent mode and explicitly checking the return value of each database call.

    See Exceptions for more information about Exceptions in PHP.

PDO standardizes on using SQL-92 SQLSTATE error code strings; individual PDO drivers are responsible for mapping their native codes to the appropriate SQLSTATE codes. The PDO::errorCode() method returns a single SQLSTATE code. If you need more specific information about an error, PDO also offers an PDO::errorInfo() method which returns an array containing the SQLSTATE code, the driver specific error code and driver specific error string.

Prepared statements and stored procedures
Large Objects (LOBs)
PDO


Large Objects (LOBs)

At some point in your application, you might find that you need to store "large" data in your database. Large typically means "around 4kb or more", although some databases can happily handle up to 32kb before data becomes "large". Large objects can be either textual or binary in nature. PDO allows you to work with this large data type by using the PDO::PARAM_LOB type code in your PDOStatement::bindParam() or PDOStatement::bindColumn() calls. PDO::PARAM_LOB tells PDO to map the data as a stream, so that you can manipulate it using the PHP Streams API.

Exemplo #13 Displaying an image from a database

This example binds the LOB into the variable named $lob and then sends it to the browser using fpassthru(). Since the LOB is represented as a stream, functions such as fgets(), fread() and stream_get_contents() can be used on it.

<?php
$db = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2');
$stmt = $db->prepare("select contenttype, imagedata from images where id=?");
$stmt->execute(array($_GET['id']));
$stmt->bindColumn(1, $type, PDO::PARAM_STR, 256);
$stmt->bindColumn(2, $lob, PDO::PARAM_LOB);
$stmt->fetch(PDO::FETCH_BOUND);

header("Content-Type: $type");
fpassthru($lob);
?>

Exemplo #14 Inserting an image into a database

This example opens up a file and passes the file handle to PDO to insert it as a LOB. PDO will do its best to get the contents of the file up to the database in the most efficient manner possible.

<?php
$db = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2');
$stmt = $db->prepare("insert into images (id, contenttype, imagedata) values (?, ?, ?)");
$id = get_new_id(); // some function to allocate a new ID

// assume that we are running as part of a file upload form
// You can find more information in the PHP documentation

$fp = fopen($_FILES['file']['tmp_name'], 'rb');

$stmt->bindParam(1, $id);
$stmt->bindParam(2, $_FILES['file']['type']);
$stmt->bindParam(3, $fp, PDO::PARAM_LOB);

$db->beginTransaction();
$stmt->execute();
$db->commit();
?>

Exemplo #15 Inserting an image into a database: Oracle

Oracle requires a slightly different syntax for inserting a lob from a file. It's also essential that you perform the insert under a transaction, otherwise your newly inserted LOB will be committed with a zero-length as part of the implicit commit that happens when the query is executed:

<?php
$db = new PDO('oci:', 'scott', 'tiger');
$stmt = $db->prepare("insert into images (id, contenttype, imagedata) " .
"VALUES (?, ?, EMPTY_BLOB()) RETURNING imagedata INTO ?");
$id = get_new_id(); // some function to allocate a new ID

// assume that we are running as part of a file upload form
// You can find more information in the PHP documentation

$fp = fopen($_FILES['file']['tmp_name'], 'rb');

$stmt->bindParam(1, $id);
$stmt->bindParam(2, $_FILES['file']['type']);
$stmt->bindParam(3, $fp, PDO::PARAM_LOB);

$stmt->beginTransaction();
$stmt->execute();
$stmt->commit();
?>

Errors and error handling
PDO
PDO


The PDO class

Introdução

Represents a connection between PHP and a database server.

Sinopse da classe

PDO {
__construct ( string $dsn [, string $username [, string $password [, array $driver_options ]]] )
bool beginTransaction ( void )
bool commit ( void )
mixed errorCode ( void )
array errorInfo ( void )
int exec ( string $statement )
mixed getAttribute ( int $attribute )
array getAvailableDrivers ( void )
bool inTransaction ( void )
string lastInsertId ([ string $name = NULL ] )
PDOStatement prepare ( string $statement [, array $driver_options = array() ] )
PDOStatement query ( string $statement )
string quote ( string $string [, int $parameter_type = PDO::PARAM_STR ] )
bool rollBack ( void )
bool setAttribute ( int $attribute , mixed $value )
}

Índice

  • PDO::beginTransaction — Initiates a transaction
  • PDO::commit — Commits a transaction
  • PDO::__construct — Creates a PDO instance representing a connection to a database
  • PDO::errorCode — Fetch the SQLSTATE associated with the last operation on the database handle
  • PDO::errorInfo — Fetch extended error information associated with the last operation on the database handle
  • PDO::exec — Execute an SQL statement and return the number of affected rows
  • PDO::getAttribute — Retrieve a database connection attribute
  • PDO::getAvailableDrivers — Return an array of available PDO drivers
  • PDO::inTransaction — Checks if inside a transaction
  • PDO::lastInsertId — Returns the ID of the last inserted row or sequence value
  • PDO::prepare — Prepares a statement for execution and returns a statement object
  • PDO::query — Executes an SQL statement, returning a result set as a PDOStatement object
  • PDO::quote — Quotes a string for use in a query.
  • PDO::rollBack — Rolls back a transaction
  • PDO::setAttribute — Set an attribute
Large Objects (LOBs)
PDO::beginTransaction
PDO


Initiates a transaction

PDO
PDO::commit
PDO
PHP Manual

PDO::beginTransaction

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::beginTransaction — Initiates a transaction

Descrição

bool PDO::beginTransaction ( void )

Turns off autocommit mode. While autocommit mode is turned off, changes made to the database via the PDO object instance are not committed until you end the transaction by calling PDO::commit(). Calling PDO::rollBack() will roll back all changes to the database and return the connection to autocommit mode.

Some databases, including MySQL, automatically issue an implicit COMMIT when a database definition language (DDL) statement such as DROP TABLE or CREATE TABLE is issued within a transaction. The implicit COMMIT will prevent you from rolling back any other changes within the transaction boundary.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Roll back a transaction

The following example begins a transaction and issues two statements that modify the database before rolling back the changes. On MySQL, however, the DROP TABLE statement automatically commits the transaction so that none of the changes in the transaction are rolled back.

<?php
/* Begin a transaction, turning off autocommit */
$dbh->beginTransaction();

/* Change the database schema and data */
$sth = $dbh->exec("DROP TABLE fruit");
$sth = $dbh->exec("UPDATE dessert
    SET name = 'hamburger'");

/* Recognize mistake and roll back changes */
$dbh->rollBack();

/* Database connection is now back in autocommit mode */
?>

Veja Também

  • PDO::commit() - Commits a transaction
  • PDO::rollBack() - Rolls back a transaction
  • Transactions and auto-commit

PDO
PDO::commit
PDO


Commits a transaction

PDO::beginTransaction
PDO::__construct
PDO
PHP Manual

PDO::commit

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::commit — Commits a transaction

Descrição

bool PDO::commit ( void )

Commits a transaction, returning the database connection to autocommit mode until the next call to PDO::beginTransaction() starts a new transaction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Commit a transaction

<?php
/* Begin a transaction, turning off autocommit */
$dbh->beginTransaction();

/* Change the database schema */
$sth = $dbh->exec("DROP TABLE fruit");

/* Commit the changes */
$dbh->commit();

/* Database connection is now back in autocommit mode */
?>

Veja Também

  • PDO::beginTransaction() - Initiates a transaction
  • PDO::rollBack() - Rolls back a transaction
  • Transactions and auto-commit

PDO::beginTransaction
PDO::__construct
PDO


Creates a PDO instance representing a connection to a database

PDO::commit
PDO::errorCode
PDO
PHP Manual

PDO::__construct

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::__construct — Creates a PDO instance representing a connection to a database

Descrição

PDO::__construct() ( string $dsn [, string $username [, string $password [, array $driver_options ]]] )

Creates a PDO instance to represent a connection to the requested database.

Parâmetros

dsn

The Data Source Name, or DSN, contains the information required to connect to the database.

In general, a DSN consists of the PDO driver name, followed by a colon, followed by the PDO driver-specific connection syntax. Further information is available from the PDO driver-specific documentation.

The dsn parameter supports three different methods of specifying the arguments required to create a database connection:

Driver invocation

dsn contains the full DSN.

URI invocation

dsn consists of uri: followed by a URI that defines the location of a file containing the DSN string. The URI can specify a local file or a remote URL.

uri:file:///path/to/dsnfile

Aliasing

dsn consists of a name name that maps to pdo.dsn.name in php.ini defining the DSN string.

Nota:

The alias must be defined in php.ini, and not .htaccess or httpd.conf

username

The user name for the DSN string. This parameter is optional for some PDO drivers.

password

The password for the DSN string. This parameter is optional for some PDO drivers.

driver_options

A key=>value array of driver-specific connection options.

Valor Retornado

Returns a PDO object on success.

Erros

PDO::__construct() throws a PDOException if the attempt to connect to the requested database fails.

Exemplos

Exemplo #1 Create a PDO instance via driver invocation

<?php
/* Connect to an ODBC database using driver invocation */
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';

try {
    $dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

?>

Exemplo #2 Create a PDO instance via URI invocation

The following example assumes that the file /usr/local/dbconnect exists with file permissions that enable PHP to read the file. The file contains the PDO DSN to connect to a DB2 database through the PDO_ODBC driver:

odbc:DSN=SAMPLE;UID=john;PWD=mypass

The PHP script can then create a database connection by simply passing the uri: parameter and pointing to the file URI:

<?php
/* Connect to an ODBC database using driver invocation */
$dsn = 'uri:file:///usr/local/dbconnect';
$user = '';
$password = '';

try {
    $dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

?>

Exemplo #3 Create a PDO instance using an alias

The following example assumes that php.ini contains the following entry to enable a connection to a MySQL database using only the alias mydb:

[PDO]
pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"
<?php
/* Connect to an ODBC database using an alias */
$dsn = 'mydb';
$user = '';
$password = '';

try {
    $dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

?>

PDO::commit
PDO::errorCode
PDO


Fetch the SQLSTATE associated with the last operation on the database handle

PDO::__construct
PDO::errorInfo
PDO
PHP Manual

PDO::errorCode

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::errorCode — Fetch the SQLSTATE associated with the last operation on the database handle

Descrição

mixed PDO::errorCode ( void )

Valor Retornado

Returns an SQLSTATE, a five characters alphanumeric identifier defined in the ANSI SQL-92 standard. Briefly, an SQLSTATE consists of a two characters class value followed by a three characters subclass value. A class value of 01 indicates a warning and is accompanied by a return code of SQL_SUCCESS_WITH_INFO. Class values other than '01', except for the class 'IM', indicate an error. The class 'IM' is specific to warnings and errors that derive from the implementation of PDO (or perhaps ODBC, if you're using the ODBC driver) itself. The subclass value '000' in any class indicates that there is no subclass for that SQLSTATE.

PDO::errorCode() only retrieves error codes for operations performed directly on the database handle. If you create a PDOStatement object through PDO::prepare() or PDO::query() and invoke an error on the statement handle, PDO::errorCode() will not reflect that error. You must call PDOStatement::errorCode() to return the error code for an operation performed on a particular statement handle.

Returns NULL if no operation has been run on the database handle.

Exemplos

Exemplo #1 Retrieving an SQLSTATE code

<?php
/* Provoke an error -- the BONES table does not exist */
$dbh->exec("INSERT INTO bones(skull) VALUES ('lucy')");

echo "\nPDO::errorCode(): ";
print $dbh->errorCode();
?>

O exemplo acima irá imprimir:

PDO::errorCode(): 42S02

Veja Também

  • PDO::errorInfo() - Fetch extended error information associated with the last operation on the database handle
  • PDOStatement::errorCode() - Fetch the SQLSTATE associated with the last operation on the statement handle
  • PDOStatement::errorInfo() - Fetch extended error information associated with the last operation on the statement handle

PDO::__construct
PDO::errorInfo
PDO


Fetch extended error information associated with the last operation on the database handle

PDO::errorCode
PDO::exec
PDO
PHP Manual

PDO::errorInfo

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::errorInfo — Fetch extended error information associated with the last operation on the database handle

Descrição

array PDO::errorInfo ( void )

Valor Retornado

PDO::errorInfo() returns an array of error information about the last operation performed by this database handle. The array consists of the following fields:

Element | Information
0 | SQLSTATE error code (a five characters alphanumeric identifier defined in the ANSI SQL standard).
1 | Driver-specific error code.
2 | Driver-specific error message.

Nota:

If the SQLSTATE error code is not set or there is no driver-specific error, the elements following element 0 will be set to NULL.

PDO::errorInfo() only retrieves error information for operations performed directly on the database handle. If you create a PDOStatement object through PDO::prepare() or PDO::query() and invoke an error on the statement handle, PDO::errorInfo() will not reflect the error from the statement handle. You must call PDOStatement::errorInfo() to return the error information for an operation performed on a particular statement handle.

Exemplos

Exemplo #1 Displaying errorInfo() fields for a PDO_ODBC connection to a DB2 database

<?php
/* Provoke an error -- bogus SQL syntax */
$stmt = $dbh->prepare('bogus sql');
if (!$stmt) {
    echo "\nPDO::errorInfo():\n";
    print_r($dbh->errorInfo());
}
?>

O exemplo acima irá imprimir:

PDO::errorInfo():
Array
(
    [0] => HY000
    [1] => 1
    [2] => near "bogus": syntax error
)

Veja Também

  • PDO::errorCode() - Fetch the SQLSTATE associated with the last operation on the database handle
  • PDOStatement::errorCode() - Fetch the SQLSTATE associated with the last operation on the statement handle
  • PDOStatement::errorInfo() - Fetch extended error information associated with the last operation on the statement handle

PDO::errorCode
PDO::exec
PDO


Execute an SQL statement and return the number of affected rows

PDO::errorInfo
PDO::getAttribute
PDO
PHP Manual

PDO::exec

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::exec — Execute an SQL statement and return the number of affected rows

Descrição

int PDO::exec ( string $statement )

PDO::exec() executes an SQL statement in a single function call, returning the number of rows affected by the statement.

PDO::exec() does not return results from a SELECT statement. For a SELECT statement that you only need to issue once during your program, consider issuing PDO::query(). For a statement that you need to issue multiple times, prepare a PDOStatement object with PDO::prepare() and issue the statement with PDOStatement::execute().

Parâmetros

statement

The SQL statement to prepare and execute.

Data inside the query should be properly escaped.

Valor Retornado

PDO::exec() returns the number of rows that were modified or deleted by the SQL statement you issued. If no rows were affected, PDO::exec() returns 0.

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.

The following example incorrectly relies on the return value of PDO::exec(), wherein a statement that affected 0 rows results in a call to die():

<?php
$db->exec() or die(print_r($db->errorInfo(), true));
?>

Exemplos

Exemplo #1 Issuing a DELETE statement

Count the number of rows deleted by a DELETE statement with no WHERE clause.

<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

/* Delete all rows from the FRUIT table */
$count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'");

/* Return number of rows that were deleted */
print("Deleted $count rows.\n");
?>

O exemplo acima irá imprimir:

Deleted 1 rows.

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object
  • PDOStatement::execute() - Executes a prepared statement

PDO::errorInfo
PDO::getAttribute
PDO


Retrieve a database connection attribute

PDO::exec
PDO::getAvailableDrivers
PDO
PHP Manual

PDO::getAttribute

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDO::getAttribute — Retrieve a database connection attribute

Descrição

mixed PDO::getAttribute ( int $attribute )

This function returns the value of a database connection attribute. To retrieve PDOStatement attributes, refer to PDOStatement::getAttribute().

Note that some database/driver combinations may not support all of the database connection attributes.

Parâmetros

attribute

One of the PDO::ATTR_* constants. The constants that apply to database connections are as follows:

  • PDO::ATTR_AUTOCOMMIT
  • PDO::ATTR_CASE
  • PDO::ATTR_CLIENT_VERSION
  • PDO::ATTR_CONNECTION_STATUS
  • PDO::ATTR_DRIVER_NAME
  • PDO::ATTR_ERRMODE
  • PDO::ATTR_ORACLE_NULLS
  • PDO::ATTR_PERSISTENT
  • PDO::ATTR_PREFETCH
  • PDO::ATTR_SERVER_INFO
  • PDO::ATTR_SERVER_VERSION
  • PDO::ATTR_TIMEOUT

Valor Retornado

A successful call returns the value of the requested PDO attribute. An unsuccessful call returns null.

Exemplos

Exemplo #1 Retrieving database connection attributes

<?php
$conn = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');
$attributes = array(
    "AUTOCOMMIT", "ERRMODE", "CASE", "CLIENT_VERSION", "CONNECTION_STATUS",
    "ORACLE_NULLS", "PERSISTENT", "PREFETCH", "SERVER_INFO", "SERVER_VERSION",
    "TIMEOUT"
);

foreach ($attributes as $val) {
    echo "PDO::ATTR_$val: ";
    echo $conn->getAttribute(constant("PDO::ATTR_$val")) . "\n";
}
?>

Veja Também

  • PDO::setAttribute() - Set an attribute
  • PDOStatement::getAttribute() - Retrieve a statement attribute
  • PDOStatement::setAttribute() - Set a statement attribute

PDO::exec
PDO::getAvailableDrivers
PDO


Return an array of available PDO drivers

PDO::getAttribute
PDO::inTransaction
PDO
PHP Manual

PDO::getAvailableDrivers

(PHP 5 >= 5.1.3, PECL pdo >= 1.0.3)

PDO::getAvailableDrivers — Return an array of available PDO drivers

Descrição

array PDO::getAvailableDrivers ( void )
array pdo_drivers ( void )

This function returns all currently available PDO drivers which can be used in DSN parameter of PDO::__construct(). This is a static method.

Valor Retornado

PDO::getAvailableDrivers() returns an array of PDO driver names. If no drivers are available, it returns an empty array.

Exemplos

Exemplo #1 A PDO::getAvailableDrivers() example

<?php
print_r(PDO::getAvailableDrivers());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => mysql
    [1] => sqlite
)

PDO::getAttribute
PDO::inTransaction
PDO


Checks if inside a transaction

PDO::getAvailableDrivers
PDO::lastInsertId
PDO
PHP Manual

PDO::inTransaction

(PHP 5 >= 5.3.3, Bundled pdo_pgsql)

PDO::inTransaction — Checks if inside a transaction

Descrição

bool PDO::inTransaction ( void )

Checks if a transaction is currently active within the driver.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if a transaction is currently active, and FALSE if not.

Valor Retornado

Nota:

Note that currently only the PostgreSQL driver implements this method.

PDO::getAvailableDrivers
PDO::lastInsertId
PDO


Returns the ID of the last inserted row or sequence value

PDO::inTransaction
PDO::prepare
PDO
PHP Manual

PDO::lastInsertId

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::lastInsertId — Returns the ID of the last inserted row or sequence value

Descrição

string PDO::lastInsertId ([ string $name = NULL ] )

Returns the ID of the last inserted row, or the last value from a sequence object, depending on the underlying driver. For example, PDO_PGSQL() requires you to specify the name of a sequence object for the name parameter.

Nota:

This method may not return a meaningful or consistent result across different PDO drivers, because the underlying database may not even support the notion of auto-increment fields or sequences.

Parâmetros

name

Name of the sequence object from which the ID should be returned.

Valor Retornado

If a sequence name was not specified for the name parameter, PDO::lastInsertId() returns a string representing the row ID of the last row that was inserted into the database.

If a sequence name was specified for the name parameter, PDO::lastInsertId() returns a string representing the last value retrieved from the specified sequence object.

If the PDO driver does not support this capability, PDO::lastInsertId() triggers an IM001 SQLSTATE.

PDO::inTransaction
PDO::prepare
PDO


Prepares a statement for execution and returns a statement object

PDO::lastInsertId
PDO::query
PDO
PHP Manual

PDO::prepare

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::prepare — Prepares a statement for execution and returns a statement object

Descrição

PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )

Prepares an SQL statement to be executed by the PDOStatement::execute() method. The SQL statement can contain zero or more named (:name) or question mark (?) parameter markers for which real values will be substituted when the statement is executed. You cannot use both named and question mark parameter markers within the same SQL statement; pick one or the other parameter style. Use these parameters to bind any user-input, do not include the user-input directly in the query.

You must include a unique parameter marker for each value you wish to pass in to the statement when you call PDOStatement::execute(). You cannot use a named parameter marker of the same name twice in a prepared statement. You cannot bind multiple values to a single named parameter in, for example, the IN() clause of an SQL statement.

Calling PDO::prepare() and PDOStatement::execute() for statements that will be issued multiple times with different parameter values optimizes the performance of your application by allowing the driver to negotiate client and/or server side caching of the query plan and meta information, and helps to prevent SQL injection attacks by eliminating the need to manually quote the parameters.

PDO will emulate prepared statements/bound parameters for drivers that do not natively support them, and can also rewrite named or question mark style parameter markers to something more appropriate, if the driver supports one style but not the other.

Parâmetros

statement

This must be a valid SQL statement for the target database server.

driver_options

This array holds one or more key=>value pairs to set attribute values for the PDOStatement object that this method returns. You would most commonly use this to set the PDO::ATTR_CURSOR value to PDO::CURSOR_SCROLL to request a scrollable cursor. Some drivers have driver specific options that may be set at prepare-time.

Valor Retornado

If the database server successfully prepares the statement, PDO::prepare() returns a PDOStatement object. If the database server cannot successfully prepare the statement, PDO::prepare() returns FALSE or emits PDOException (depending on error handling).

Nota:

Emulated prepared statements does not communicate with the database server so PDO::prepare() does not check the statement.

Exemplos

Exemplo #1 Prepare an SQL statement with named parameters

<?php
/* Execute a prepared statement by passing an array of values */
$sql = 'SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour';
$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':calories' => 150, ':colour' => 'red'));
$red = $sth->fetchAll();
$sth->execute(array(':calories' => 175, ':colour' => 'yellow'));
$yellow = $sth->fetchAll();
?>

Exemplo #2 Prepare an SQL statement with question mark parameters

<?php
/* Execute a prepared statement by passing an array of values */
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->execute(array(150, 'red'));
$red = $sth->fetchAll();
$sth->execute(array(175, 'yellow'));
$yellow = $sth->fetchAll();
?>

Veja Também

  • PDO::exec() - Execute an SQL statement and return the number of affected rows
  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object
  • PDOStatement::execute() - Executes a prepared statement

PDO::lastInsertId
PDO::query
PDO


Executes an SQL statement, returning a result set as a PDOStatement object

PDO::prepare
PDO::quote
PDO
PHP Manual

PDO::query

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDO::query — Executes an SQL statement, returning a result set as a PDOStatement object

Descrição

PDOStatement PDO::query ( string $statement )
PDOStatement PDO::query ( string $statement , int $PDO::FETCH_COLUMN , int $colno )
PDOStatement PDO::query ( string $statement , int $PDO::FETCH_CLASS , string $classname , array $ctorargs )
PDOStatement PDO::query ( string $statement , int $PDO::FETCH_INTO , object $object )

PDO::query() executes an SQL statement in a single function call, returning the result set (if any) returned by the statement as a PDOStatement object.

For a query that you need to issue multiple times, you will realize better performance if you prepare a PDOStatement object using PDO::prepare() and issue the statement with multiple calls to PDOStatement::execute().

If you do not fetch all of the data in a result set before issuing your next call to PDO::query(), your call may fail. Call PDOStatement::closeCursor() to release the database resources associated with the PDOStatement object before issuing your next call to PDO::query().

Nota:

Although this function is only documented as having a single parameter, you may pass additional arguments to this function. They will be treated as though you called PDOStatement::setFetchMode() on the resultant statement object.

Parâmetros

statement

The SQL statement to prepare and execute.

Data inside the query should be properly escaped.

Valor Retornado

PDO::query() returns a PDOStatement object, or FALSE on failure.

Exemplos

Exemplo #1 Demonstrate PDO::query

A nice feature of PDO::query() is that it enables you to iterate over the rowset returned by a successfully executed SELECT statement.

<?php
function getFruit($conn) {
    $sql = 'SELECT name, color, calories FROM fruit ORDER BY name';
    foreach ($conn->query($sql) as $row) {
        print $row['name'] . "\t";
        print $row['color'] . "\t";
        print $row['calories'] . "\n";
    }
}
?>

O exemplo acima irá imprimir:

apple   red     150
banana  yellow  250
kiwi    brown   75
lemon   yellow  25
orange  orange  300
pear    green   150
watermelon      pink    90

Veja Também

  • PDO::exec() - Execute an SQL statement and return the number of affected rows
  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement

PDO::prepare
PDO::quote
PDO


Quotes a string for use in a query.

PDO::query
PDO::rollBack
PDO
PHP Manual

PDO::quote

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.1)

PDO::quote — Quotes a string for use in a query.

Descrição

string PDO::quote ( string $string [, int $parameter_type = PDO::PARAM_STR ] )

PDO::quote() places quotes around the input string (if required) and escapes special characters within the input string, using a quoting style appropriate to the underlying driver.

If you are using this function to build SQL statements, you are strongly recommended to use PDO::prepare() to prepare SQL statements with bound parameters instead of using PDO::quote() to interpolate user input into an SQL statement. Prepared statements with bound parameters are not only more portable, more convenient, immune to SQL injection, but are often much faster to execute than interpolated queries, as both the server and client side can cache a compiled form of the query.

Not all PDO drivers implement this method (notably PDO_ODBC). Consider using prepared statements instead.

Parâmetros

string

The string to be quoted.

parameter_type

Provides a data type hint for drivers that have alternate quoting styles.

Valor Retornado

Returns a quoted string that is theoretically safe to pass into an SQL statement. Returns FALSE if the driver does not support quoting in this way.

Exemplos

Exemplo #1 Quoting a normal string

<?php
$conn = new PDO('sqlite:/home/lynn/music.sql3');

/* Simple string */
$string = 'Nice';
print "Unquoted string: $string\n";
print "Quoted string: " . $conn->quote($string) . "\n";
?>

O exemplo acima irá imprimir:

Unquoted string: Nice
Quoted string: 'Nice'

Exemplo #2 Quoting a dangerous string

<?php
$conn = new PDO('sqlite:/home/lynn/music.sql3');

/* Dangerous string */
$string = 'Naughty \' string';
print "Unquoted string: $string\n";
print "Quoted string:" . $conn->quote($string) . "\n";
?>

O exemplo acima irá imprimir:

Unquoted string: Naughty ' string
Quoted string: 'Naughty '' string'

Exemplo #3 Quoting a complex string

<?php
$conn = new PDO('sqlite:/home/lynn/music.sql3');

/* Complex string */
$string = "Co'mpl''ex \"st'\"ring";
print "Unquoted string: $string\n";
print "Quoted string: " . $conn->quote($string) . "\n";
?>

O exemplo acima irá imprimir:

Unquoted string: Co'mpl''ex "st'"ring
Quoted string: 'Co''mpl''''ex "st''"ring'

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement

PDO::query
PDO::rollBack
PDO


Rolls back a transaction

PDO::quote
PDO::setAttribute
PDO
PHP Manual

PDO::rollBack

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::rollBack — Rolls back a transaction

Descrição

bool PDO::rollBack ( void )

Rolls back the current transaction, as initiated by PDO::beginTransaction(). It is an error to call this method if no transaction is active.

If the database was set to autocommit mode, this function will restore autocommit mode after it has rolled back the transaction.

Some databases, including MySQL, automatically issue an implicit COMMIT when a database definition language (DDL) statement such as DROP TABLE or CREATE TABLE is issued within a transaction. The implicit COMMIT will prevent you from rolling back any other changes within the transaction boundary.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Roll back a transaction

The following example begins a transaction and issues two statements that modify the database before rolling back the changes. On MySQL, however, the DROP TABLE statement automatically commits the transaction so that none of the changes in the transaction are rolled back.

<?php
/* Begin a transaction, turning off autocommit */
$dbh->beginTransaction();

/* Change the database schema and data */
$sth = $dbh->exec("DROP TABLE fruit");
$sth = $dbh->exec("UPDATE dessert
    SET name = 'hamburger'");

/* Recognize mistake and roll back changes */
$dbh->rollBack();

/* Database connection is now back in autocommit mode */
?>

Veja Também

  • PDO::beginTransaction() - Initiates a transaction
  • PDO::commit() - Commits a transaction
  • Transactions and auto-commit

PDO::quote
PDO::setAttribute
PDO


Set an attribute

PDO::rollBack
PDOStatement
PDO
PHP Manual

PDO::setAttribute

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::setAttribute — Set an attribute

Descrição

bool PDO::setAttribute ( int $attribute , mixed $value )

Sets an attribute on the database handle. Some of the available generic attributes are listed below; some drivers may make use of additional driver specific attributes.

  • PDO::ATTR_CASE: Force column names to a specific case.

    • PDO::CASE_LOWER: Force column names to lower case.

    • PDO::CASE_NATURAL: Leave column names as returned by the database driver.

    • PDO::CASE_UPPER: Force column names to upper case.

  • PDO::ATTR_ERRMODE: Error reporting.

    • PDO::ERRMODE_SILENT: Just set error codes.

    • PDO::ERRMODE_WARNING: Raise E_WARNING.

    • PDO::ERRMODE_EXCEPTION: Throw exceptions.

  • PDO::ATTR_ORACLE_NULLS (available with all drivers, not just Oracle): Conversion of NULL and empty strings.

    • PDO::NULL_NATURAL: No conversion.

    • PDO::NULL_EMPTY_STRING: Empty string is converted to NULL.

    • PDO::NULL_TO_STRING: NULL is converted to an empty string.

  • PDO::ATTR_STRINGIFY_FETCHES: Convert numeric values to strings when fetching. Requires bool.

  • PDO::ATTR_STATEMENT_CLASS: Set user-supplied statement class derived from PDOStatement. Cannot be used with persistent PDO instances. Requires array(string classname, array(mixed constructor_args)).

  • PDO::ATTR_TIMEOUT: Specifies the timeout duration in seconds. Not all drivers support this option, and it's meaning may differ from driver to driver. For example, sqlite will wait for up to this time value before giving up on obtaining an writable lock, but other drivers may interpret this as a connect or a read timeout interval. Requires int.

  • PDO::ATTR_AUTOCOMMIT (available in OCI, Firebird and MySQL): Whether to autocommit every single statement.

  • PDO::MYSQL_ATTR_USE_BUFFERED_QUERY (available in MySQL): Use buffered queries.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDO::rollBack
PDOStatement
PDO


The PDOStatement class

Introdução

Represents a prepared statement and, after the statement is executed, an associated result set.

Sinopse da classe

PDOStatement implements Traversable {
/* Properties */
readonlystring $queryString;
/* Methods */
bool bindColumn ( mixed $column , mixed &$param [, int $type [, int $maxlen [, mixed $driverdata ]]] )
bool bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )
bool bindValue ( mixed $parameter , mixed $value [, int $data_type = PDO::PARAM_STR ] )
bool closeCursor ( void )
int columnCount ( void )
bool debugDumpParams ( void )
string errorCode ( void )
array errorInfo ( void )
bool execute ([ array $input_parameters ] )
mixed fetch ([ int $fetch_style = PDO::FETCH_BOTH [, int $cursor_orientation = PDO::FETCH_ORI_NEXT [, int $cursor_offset = 0 ]]] )
array fetchAll ([ int $fetch_style = PDO::FETCH_BOTH [, mixed $fetch_argument [, array $ctor_args = array() ]]] )
string fetchColumn ([ int $column_number = 0 ] )
mixed fetchObject ([ string $class_name = "stdClass" [, array $ctor_args ]] )
mixed getAttribute ( int $attribute )
array getColumnMeta ( int $column )
bool nextRowset ( void )
int rowCount ( void )
bool setAttribute ( int $attribute , mixed $value )
bool setFetchMode ( int $mode )
}

Propriedades

queryString

Used query string.

Índice

  • PDOStatement->bindColumn — Bind a column to a PHP variable
  • PDOStatement->bindParam — Binds a parameter to the specified variable name
  • PDOStatement->bindValue — Binds a value to a parameter
  • PDOStatement->closeCursor — Closes the cursor, enabling the statement to be executed again.
  • PDOStatement->columnCount — Returns the number of columns in the result set
  • PDOStatement->debugDumpParams — Dump an SQL prepared command
  • PDOStatement->errorCode — Fetch the SQLSTATE associated with the last operation on the statement handle
  • PDOStatement->errorInfo — Fetch extended error information associated with the last operation on the statement handle
  • PDOStatement->execute — Executes a prepared statement
  • PDOStatement->fetch — Fetches the next row from a result set
  • PDOStatement->fetchAll — Returns an array containing all of the result set rows
  • PDOStatement->fetchColumn — Returns a single column from the next row of a result set
  • PDOStatement->fetchObject — Fetches the next row and returns it as an object.
  • PDOStatement->getAttribute — Retrieve a statement attribute
  • PDOStatement->getColumnMeta — Returns metadata for a column in a result set
  • PDOStatement->nextRowset — Advances to the next rowset in a multi-rowset statement handle
  • PDOStatement->rowCount — Returns the number of rows affected by the last SQL statement
  • PDOStatement->setAttribute — Set a statement attribute
  • PDOStatement->setFetchMode — Set the default fetch mode for this statement
PDO::setAttribute
PDOStatement->bindColumn
PDO


Bind a column to a PHP variable

PDOStatement
PDOStatement->bindParam
PDOStatement
PHP Manual

PDOStatement->bindColumn

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->bindColumn — Bind a column to a PHP variable

Descrição

bool PDOStatement::bindColumn ( mixed $column , mixed &$param [, int $type [, int $maxlen [, mixed $driverdata ]]] )

PDOStatement::bindColumn() arranges to have a particular variable bound to a given column in the result-set from a query. Each call to PDOStatement::fetch() or PDOStatement::fetchAll() will update all the variables that are bound to columns.

Nota:

Since information about the columns is not always available to PDO until the statement is executed, portable applications should call this function after PDOStatement::execute().

However, to be able to bind a LOB column as a stream when using the PgSQL driver, applications should call this method before calling PDOStatement::execute(), otherwise the large object OID will be returned as an integer.

Parâmetros

column

Number of the column (1-indexed) or name of the column in the result set. If using the column name, be aware that the name should match the case of the column, as returned by the driver.

param

Name of the PHP variable to which the column will be bound.

type

Data type of the parameter, specified by the PDO::PARAM_* constants.

maxlen

A hint for pre-allocation.

driverdata

Optional parameter(s) for the driver.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Binding result set output to PHP variables

Binding columns in the result set to PHP variables is an effective way to make the data contained in each row immediately available to your application. The following example demonstrates how PDO allows you to bind and retrieve columns with a variety of options and with intelligent defaults.

<?php
function readData($dbh) {
  $sql = 'SELECT name, colour, calories FROM fruit';
  try {
    $stmt = $dbh->prepare($sql);
    $stmt->execute();

    /* Bind by column number */
    $stmt->bindColumn(1, $name);
    $stmt->bindColumn(2, $colour);

    /* Bind by column name */
    $stmt->bindColumn('calories', $cals);

    while ($row = $stmt->fetch(PDO::FETCH_BOUND)) {
      $data = $name . "\t" . $colour . "\t" . $cals . "\n";
      print $data;
    }
  }
  catch (PDOException $e) {
    print $e->getMessage();
  }
}
readData($dbh);
?>

O exemplo acima irá imprimir:

apple   red     150
banana  yellow  175
kiwi    green   75
orange  orange  150
mango   red     200
strawberry      red     25

Veja Também

  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::fetch() - Fetches the next row from a result set
  • PDOStatement::fetchAll() - Returns an array containing all of the result set rows
  • PDOStatement::fetchColumn() - Returns a single column from the next row of a result set

PDOStatement
PDOStatement->bindParam
PDOStatement


Binds a parameter to the specified variable name

PDOStatement->bindColumn
PDOStatement->bindValue
PDOStatement
PHP Manual

PDOStatement->bindParam

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->bindParam — Binds a parameter to the specified variable name

Descrição

bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )

Binds a PHP variable to a corresponding named or question mark placeholder in the SQL statement that was use to prepare the statement. Unlike PDOStatement::bindValue(), the variable is bound as a reference and will only be evaluated at the time that PDOStatement::execute() is called.

Most parameters are input parameters, that is, parameters that are used in a read-only fashion to build up the query. Some drivers support the invocation of stored procedures that return data as output parameters, and some also as input/output parameters that both send in data and are updated to receive it.

Parâmetros

parameter

Parameter identifier. For a prepared statement using named placeholders, this will be a parameter name of the form :name. For a prepared statement using question mark placeholders, this will be the 1-indexed position of the parameter.

variable

Name of the PHP variable to bind to the SQL statement parameter.

data_type

Explicit data type for the parameter using the PDO::PARAM_* constants. To return an INOUT parameter from a stored procedure, use the bitwise OR operator to set the PDO::PARAM_INPUT_OUTPUT bits for the data_type parameter.

length

Length of the data type. To indicate that a parameter is an OUT parameter from a stored procedure, you must explicitly set the length.

driver_options

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Execute a prepared statement with named placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

Exemplo #2 Execute a prepared statement with question mark placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->bindParam(1, $calories, PDO::PARAM_INT);
$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

Exemplo #3 Call a stored procedure with an INOUT parameter

<?php
/* Call a stored procedure with an INOUT parameter */
$colour = 'red';
$sth = $dbh->prepare('CALL puree_fruit(?)');
$sth->bindParam(1, $colour, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 12);
$sth->execute();
print("After pureeing fruit, the colour is: $colour");
?>

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::bindValue() - Binds a value to a parameter

PDOStatement->bindColumn
PDOStatement->bindValue
PDOStatement


Binds a value to a parameter

PDOStatement->bindParam
PDOStatement->closeCursor
PDOStatement
PHP Manual

PDOStatement->bindValue

(PHP 5 >= 5.1.0, PECL pdo >= 1.0.0)

PDOStatement->bindValue — Binds a value to a parameter

Descrição

bool PDOStatement::bindValue ( mixed $parameter , mixed $value [, int $data_type = PDO::PARAM_STR ] )

Binds a value to a corresponding named or question mark placeholder in the SQL statement that was used to prepare the statement.

Parâmetros

parameter

Parameter identifier. For a prepared statement using named placeholders, this will be a parameter name of the form :name. For a prepared statement using question mark placeholders, this will be the 1-indexed position of the parameter.

value

The value to bind to the parameter.

data_type

Explicit data type for the parameter using the PDO::PARAM_* constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Execute a prepared statement with named placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindValue(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR);
$sth->execute();
?>

Exemplo #2 Execute a prepared statement with question mark placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->bindValue(1, $calories, PDO::PARAM_INT);
$sth->bindValue(2, $colour, PDO::PARAM_STR);
$sth->execute();
?>

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::bindParam() - Binds a parameter to the specified variable name

PDOStatement->bindParam
PDOStatement->closeCursor
PDOStatement


Closes the cursor, enabling the statement to be executed again.

PDOStatement->bindValue
PDOStatement->columnCount
PDOStatement
PHP Manual

PDOStatement->closeCursor

(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

PDOStatement->closeCursor — Closes the cursor, enabling the statement to be executed again.

Descrição

bool PDOStatement::closeCursor ( void )

PDOStatement::closeCursor() frees up the connection to the server so that other SQL statements may be issued, but leaves the statement in a state that enables it to be executed again.

This method is useful for database drivers that do not support executing a PDOStatement object when a previously executed PDOStatement object still has unfetched rows. If your database driver suffers from this limitation, the problem may manifest itself in an out-of-sequence error.

PDOStatement::closeCursor() is implemented either as an optional driver specific method (allowing for maximum efficiency), or as the generic PDO fallback if no driver specific function is installed. The PDO generic fallback is semantically the same as writing the following code in your PHP script:

<?php
do {
    while ($stmt->fetch())
        ;
    if (!$stmt->nextRowset())
        break;
} while (true);
?>

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A PDOStatement::closeCursor() example

In the following example, the $stmt PDOStatement object returns multiple rows but the application fetches only the first row, leaving the PDOStatement object in a state of having unfetched rows. To ensure that the application will work with all database drivers, the author inserts a call to PDOStatement::closeCursor() on $stmt before executing the $otherStmt PDOStatement object.

<?php
/* Create a PDOStatement object */
$stmt = $dbh->prepare('SELECT foo FROM bar');

/* Create a second PDOStatement object */
$otherStmt = $dbh->prepare('SELECT foobaz FROM foobar');

/* Execute the first statement */
$stmt->execute();

/* Fetch only the first row from the results */
$stmt->fetch();

/* The following call to closeCursor() may be required by some drivers */
$stmt->closeCursor();

/* Now we can execute the second statement */
$otherStmt->execute();
?>

Veja Também

  • PDOStatement::execute() - Executes a prepared statement

PDOStatement->bindValue
PDOStatement->columnCount
PDOStatement


Returns the number of columns in the result set

PDOStatement->closeCursor
PDOStatement->debugDumpParams
PDOStatement
PHP Manual

PDOStatement->columnCount

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->columnCount — Returns the number of columns in the result set

Descrição

int PDOStatement::columnCount ( void )

Use PDOStatement::columnCount() to return the number of columns in the result set represented by the PDOStatement object.

If the PDOStatement object was returned from PDO::query(), the column count is immediately available.

If the PDOStatement object was returned from PDO::prepare(), an accurate column count will not be available until you invoke PDOStatement::execute().

Valor Retornado

Returns the number of columns in the result set represented by the PDOStatement object. If there is no result set, PDOStatement::columnCount() returns 0.

Exemplos

Exemplo #1 Counting columns

This example demonstrates how PDOStatement::columnCount() operates with and without a result set.

<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

$sth = $dbh->prepare("SELECT name, colour FROM fruit");

/* Count the number of columns in the (non-existent) result set */
$colcount = $sth->columnCount();
print("Before execute(), result set has $colcount columns (should be 0)\n");

$sth->execute();

/* Count the number of columns in the result set */
$colcount = $sth->columnCount();
print("After execute(), result set has $colcount columns (should be 2)\n");

?>

O exemplo acima irá imprimir:

Before execute(), result set has 0 columns (should be 0)
After execute(), result set has 2 columns (should be 2)

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::rowCount() - Returns the number of rows affected by the last SQL statement

PDOStatement->closeCursor
PDOStatement->debugDumpParams
PDOStatement


Dump an SQL prepared command

PDOStatement->columnCount
PDOStatement->errorCode
PDOStatement
PHP Manual

PDOStatement->debugDumpParams

(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

PDOStatement->debugDumpParams — Dump an SQL prepared command

Descrição

bool PDOStatement::debugDumpParams ( void )

Dumps the informations contained by a prepared statement directly on the output. It will provide the SQL query in use, the number of parameters used (Params), the list of parameters, with their name, type (paramtype) as an integer, their key name or position, the value, and the position in the query (if this is supported by the PDO driver, otherwise, it will be -1).

This is a debug function, which dump directly the data on the normal output.

Dica

Como toda saída é normalmente enviada direto para o browser, as Funções de Controle de Output podem ser usadas para capturar o resultado e guardá-lo em uma string (por exemplo).

This will only dumps the parameters in the statement at the moment of the dump. Extra parameters are not stored in the statement, and not displayed.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 PDOStatement::debugDumpParams() example with named parameters

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();

$sth->debugDumpParams();

?>

O exemplo acima irá imprimir:

SQL: [96] SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour
Params:  2
Key: Name: [9] :calories
paramno=-1
name=[9] ":calories"
is_param=1
param_type=1
Key: Name: [7] :colour
paramno=-1
name=[7] ":colour"
is_param=1
param_type=2

Exemplo #2 PDOStatement::debugDumpParams() example with unnamed parameters

<?php

/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$name = 'apple';

$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->bindParam(1, $calories, PDO::PARAM_INT);
$sth->bindValue(2, $colour, PDO::PARAM_STR);
$sth->execute();

$sth->debugDumpParams();

?>

O exemplo acima irá imprimir:

SQL: [82] SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?
Params:  2
Key: Position #0:
paramno=0
name=[0] ""
is_param=1
param_type=1
Key: Position #1:
paramno=1
name=[0] ""
is_param=1
param_type=2

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::bindParam() - Binds a parameter to the specified variable name
  • PDOStatement::bindValue() - Binds a value to a parameter

PDOStatement->columnCount
PDOStatement->errorCode
PDOStatement


Fetch the SQLSTATE associated with the last operation on the statement handle

PDOStatement->debugDumpParams
PDOStatement->errorInfo
PDOStatement
PHP Manual

PDOStatement->errorCode

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->errorCode — Fetch the SQLSTATE associated with the last operation on the statement handle

Descrição

string PDOStatement::errorCode ( void )

Valor Retornado

Identical to PDO::errorCode(), except that PDOStatement::errorCode() only retrieves error codes for operations performed with PDOStatement objects.

Exemplos

Exemplo #1 Retrieving an SQLSTATE code

<?php
/* Provoke an error -- the BONES table does not exist */
$err = $dbh->prepare('SELECT skull FROM bones');
$err->execute();

echo "\nPDOStatement::errorCode(): ";
print $err->errorCode();
?>

O exemplo acima irá imprimir:

PDOStatement::errorCode(): 42S02

Veja Também

  • PDO::errorCode() - Fetch the SQLSTATE associated with the last operation on the database handle
  • PDO::errorInfo() - Fetch extended error information associated with the last operation on the database handle
  • PDOStatement::errorInfo() - Fetch extended error information associated with the last operation on the statement handle

PDOStatement->debugDumpParams
PDOStatement->errorInfo
PDOStatement


Fetch extended error information associated with the last operation on the statement handle

PDOStatement->errorCode
PDOStatement->execute
PDOStatement
PHP Manual

PDOStatement->errorInfo

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->errorInfo — Fetch extended error information associated with the last operation on the statement handle

Descrição

array PDOStatement::errorInfo ( void )

Valor Retornado

PDOStatement::errorInfo() returns an array of error information about the last operation performed by this statement handle. The array consists of the following fields:

Element | Information
0 | SQLSTATE error code (a five characters alphanumeric identifier defined in the ANSI SQL standard).
1 | Driver specific error code.
2 | Driver specific error message.

Exemplos

Exemplo #1 Displaying errorInfo() fields for a PDO_ODBC connection to a DB2 database

<?php
/* Provoke an error -- the BONES table does not exist */
$sth = $dbh->prepare('SELECT skull FROM bones');
$sth->execute();

echo "\nPDOStatement::errorInfo():\n";
$arr = $sth->errorInfo();
print_r($arr);
?>

O exemplo acima irá imprimir:

PDOStatement::errorInfo():
Array
(
    [0] => 42S02
    [1] => -204
    [2] => [IBM][CLI Driver][DB2/LINUX] SQL0204N  "DANIELS.BONES" is an undefined name.  SQLSTATE=42704
)

Veja Também

  • PDO::errorCode() - Fetch the SQLSTATE associated with the last operation on the database handle
  • PDO::errorInfo() - Fetch extended error information associated with the last operation on the database handle
  • PDOStatement::errorCode() - Fetch the SQLSTATE associated with the last operation on the statement handle

PDOStatement->errorCode
PDOStatement->execute
PDOStatement


Executes a prepared statement

PDOStatement->errorInfo
PDOStatement->fetch
PDOStatement
PHP Manual

PDOStatement->execute

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->execute — Executes a prepared statement

Descrição

bool PDOStatement::execute ([ array $input_parameters ] )

Execute the prepared statement. If the prepared statement included parameter markers, you must either:

  • call PDOStatement::bindParam() to bind PHP variables to the parameter markers: bound variables pass their value as input and receive the output value, if any, of their associated parameter markers

  • or pass an array of input-only parameter values

Parâmetros

input_parameters

An array of values with as many elements as there are bound parameters in the SQL statement being executed. All values are treated as PDO::PARAM_STR.

You cannot bind multiple values to a single parameter; for example, you cannot bind two values to a single named parameter in an IN() clause.

You cannot bind more values than specified; if more keys exist in input_parameters than in the SQL specified in the PDO::prepare(), then the statement will fail and an error is emitted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.2.0 | The keys from input_parameters must match the ones declared in the SQL. Before PHP 5.2.0 this was silently ignored.

Exemplos

Exemplo #1 Execute a prepared statement with bound variables

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

Exemplo #2 Execute a prepared statement with an array of insert values (named parameters)

<?php
/* Execute a prepared statement by passing an array of insert values */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->execute(array(':calories' => $calories, ':colour' => $colour));
?>

Exemplo #3 Execute a prepared statement with an array of insert values (placeholders)

<?php
/* Execute a prepared statement by passing an array of insert values */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->execute(array($calories, $colour));
?>

Exemplo #4 Execute a prepared statement with question mark placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < ? AND colour = ?');
$sth->bindParam(1, $calories, PDO::PARAM_INT);
$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>

Notas

Nota:

Some drivers require to close cursor before executing next statement.

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::bindParam() - Binds a parameter to the specified variable name
  • PDOStatement::fetch() - Fetches the next row from a result set
  • PDOStatement::fetchAll() - Returns an array containing all of the result set rows
  • PDOStatement::fetchColumn() - Returns a single column from the next row of a result set

PDOStatement->errorInfo
PDOStatement->fetch
PDOStatement


Fetches the next row from a result set

PDOStatement->execute
PDOStatement->fetchAll
PDOStatement
PHP Manual

PDOStatement->fetch

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->fetch — Fetches the next row from a result set

Descrição

 mixed PDOStatement::fetch
  ([ int $fetch_style = PDO::FETCH_BOTH
 [, int $cursor_orientation = PDO::FETCH_ORI_NEXT
 [, int $cursor_offset = 0
]]] )

Fetches a row from a result set associated with a PDOStatement object. The fetch_style parameter determines how PDO returns the row.

Parâmetros

fetch_style

Controls how the next row will be returned to the caller. This value must be one of the PDO::FETCH_* constants, defaulting to PDO::FETCH_BOTH.

  • PDO::FETCH_ASSOC: returns an array indexed by column name as returned in your result set

  • PDO::FETCH_BOTH (default): returns an array indexed by both column name and 0-indexed column number as returned in your result set

  • PDO::FETCH_BOUND: returns TRUE and assigns the values of the columns in your result set to the PHP variables to which they were bound with the PDOStatement::bindColumn() method

  • PDO::FETCH_CLASS: returns a new instance of the requested class, mapping the columns of the result set to named properties in the class. If fetch_style includes PDO::FETCH_CLASSTYPE (e.g. PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE) then the name of the class is determined from a value of the first column.

  • PDO::FETCH_INTO: updates an existing instance of the requested class, mapping the columns of the result set to named properties in the class

  • PDO::FETCH_LAZY: combines PDO::FETCH_BOTH and PDO::FETCH_OBJ, creating the object variable names as they are accessed

  • PDO::FETCH_NUM: returns an array indexed by column number as returned in your result set, starting at column 0

  • PDO::FETCH_OBJ: returns an anonymous object with property names that correspond to the column names returned in your result set

cursor_orientation

For a PDOStatement object representing a scrollable cursor, this value determines which row will be returned to the caller. This value must be one of the PDO::FETCH_ORI_* constants, defaulting to PDO::FETCH_ORI_NEXT. To request a scrollable cursor for your PDOStatement object, you must set the PDO::ATTR_CURSOR attribute to PDO::CURSOR_SCROLL when you prepare the SQL statement with PDO::prepare().

offset

For a PDOStatement object representing a scrollable cursor for which the cursor_orientation parameter is set to PDO::FETCH_ORI_ABS, this value specifies the absolute number of the row in the result set that shall be fetched.

For a PDOStatement object representing a scrollable cursor for which the cursor_orientation parameter is set to PDO::FETCH_ORI_REL, this value specifies the row to fetch relative to the cursor position before PDOStatement::fetch() was called.

Valor Retornado

The return value of this function on success depends on the fetch type. In all cases, FALSE is returned on failure.

Exemplos

Exemplo #1 Fetching rows using different fetch styles

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Exercise PDOStatement::fetch styles */
print("PDO::FETCH_ASSOC: ");
print("Return next row as an array indexed by column name\n");
$result = $sth->fetch(PDO::FETCH_ASSOC);
print_r($result);
print("\n");

print("PDO::FETCH_BOTH: ");
print("Return next row as an array indexed by both column name and number\n");
$result = $sth->fetch(PDO::FETCH_BOTH);
print_r($result);
print("\n");

print("PDO::FETCH_LAZY: ");
print("Return next row as an anonymous object with column names as properties\n");
$result = $sth->fetch(PDO::FETCH_LAZY);
print_r($result);
print("\n");

print("PDO::FETCH_OBJ: ");
print("Return next row as an anonymous object with column names as properties\n");
$result = $sth->fetch(PDO::FETCH_OBJ);
print $result->NAME;
print("\n");
?>

O exemplo acima irá imprimir:

PDO::FETCH_ASSOC: Return next row as an array indexed by column name
Array
(
    [NAME] => apple
    [COLOUR] => red
)

PDO::FETCH_BOTH: Return next row as an array indexed by both column name and number
Array
(
    [NAME] => banana
    [0] => banana
    [COLOUR] => yellow
    [1] => yellow
)

PDO::FETCH_LAZY: Return next row as an anonymous object with column names as properties
PDORow Object
(
    [NAME] => orange
    [COLOUR] => orange
)

PDO::FETCH_OBJ: Return next row as an anonymous object with column names as properties
kiwi

Exemplo #2 Fetching rows with a scrollable cursor

<?php
function readDataForwards($dbh) {
  $sql = 'SELECT hand, won, bet FROM mynumbers ORDER BY BET';
  try {
    $stmt = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
    $stmt->execute();
    while ($row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_NEXT)) {
      $data = $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n";
      print $data;
    }
    $stmt = null;
  }
  catch (PDOException $e) {
    print $e->getMessage();
  }
}
function readDataBackwards($dbh) {
  $sql = 'SELECT hand, won, bet FROM mynumbers ORDER BY bet';
  try {
    $stmt = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
    $stmt->execute();
    $row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_LAST);
    do {
      $data = $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n";
      print $data;
    } while ($row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_PRIOR));
    $stmt = null;
  }
  catch (PDOException $e) {
    print $e->getMessage();
  }
}

print "Reading forwards:\n";
readDataForwards($conn);

print "Reading backwards:\n";
readDataBackwards($conn);
?>

O exemplo acima irá imprimir:

Reading forwards:
21    10    5
16    0     5
19    20    10

Reading backwards:
19    20    10
16    0     5
21    10    5

Veja Também

  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::fetchAll() - Returns an array containing all of the result set rows
  • PDOStatement::fetchColumn() - Returns a single column from the next row of a result set
  • PDOStatement::fetchObject() - Fetches the next row and returns it as an object.
  • PDOStatement::setFetchMode() - Set the default fetch mode for this statement

PDOStatement->execute
PDOStatement->fetchAll
PDOStatement


Returns an array containing all of the result set rows

PDOStatement->fetch
PDOStatement->fetchColumn
PDOStatement
PHP Manual

PDOStatement->fetchAll

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->fetchAll — Returns an array containing all of the result set rows

Descrição

array PDOStatement::fetchAll ([ int $fetch_style = PDO::FETCH_BOTH [, mixed $fetch_argument [, array $ctor_args = array() ]]] )

Parâmetros

fetch_style

Controls the contents of the returned array as documented in PDOStatement::fetch().

To return an array consisting of all values of a single column from the result set, specify PDO::FETCH_COLUMN. You can specify which column you want with the column-index parameter.

To fetch only the unique values of a single column from the result set, bitwise-OR PDO::FETCH_COLUMN with PDO::FETCH_UNIQUE.

To return an associative array grouped by the values of a specified column, bitwise-OR PDO::FETCH_COLUMN with PDO::FETCH_GROUP.

fetch_argument

This argument have a different meaning depending on the value of the fetch_style parameter:

  • PDO::FETCH_COLUMN: Returns the indicated 0-indexed column.

  • PDO::FETCH_CLASS: Returns instances of the specified class, mapping the columns of each row to named properties in the class.

  • PDO::FETCH_FUNC: Returns the results of calling the specified function, using each row's columns as parameters in the call.

ctor_args

Arguments of custom class constructor when the fetch_style parameter is PDO::FETCH_CLASS.

Valor Retornado

PDOStatement::fetchAll() returns an array containing all of the remaining rows in the result set. The array represents each row as either an array of column values or an object with properties corresponding to each column name.

Using this method to fetch large result sets will result in a heavy demand on system and possibly network resources. Rather than retrieving all of the data and manipulating it in PHP, consider using the database server to manipulate the result sets. For example, use the WHERE and ORDER BY clauses in SQL to restrict results before retrieving and processing them with PHP.

Exemplos

Exemplo #1 Fetch all remaining rows in a result set

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Fetch all of the remaining rows in the result set */
print("Fetch all of the remaining rows in the result set:\n");
$result = $sth->fetchAll();
print_r($result);
?>

O exemplo acima irá imprimir algo similar a:

Fetch all of the remaining rows in the result set:
Array
(
    [0] => Array
        (
            [NAME] => pear
            [0] => pear
            [COLOUR] => green
            [1] => green
        )

    [1] => Array
        (
            [NAME] => watermelon
            [0] => watermelon
            [COLOUR] => pink
            [1] => pink
        )

)

Exemplo #2 Fetching all values of a single column from a result set

The following example demonstrates how to return all of the values of a single column from a result set, even though the SQL statement itself may return multiple columns per row.

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Fetch all of the values of the first column */
$result = $sth->fetchAll(PDO::FETCH_COLUMN, 0);
var_dump($result);
?>

O exemplo acima irá imprimir algo similar a:

Array(3)
(
    [0] =>
    string(5) => apple
    [1] =>
    string(4) => pear
    [2] =>
    string(10) => watermelon
)

Exemplo #3 Grouping all values by a single column

The following example demonstrates how to return an associative array grouped by the values of the specified column in the result set. The array contains three keys: values apple and pear are returned as arrays that contain two different colours, while watermelon is returned as an array that contains only one colour.

<?php
$insert = $dbh->prepare("INSERT INTO fruit(name, colour) VALUES (?, ?)");
$insert->execute(array('apple', 'green'));
$insert->execute(array('pear', 'yellow'));

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Group values by the first column */
var_dump($sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP));
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["apple"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(3) "red"
  }
  ["pear"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(6) "yellow"
  }
  ["watermelon"]=>
  array(1) {
    [0]=>
    string(5) "green"
  }
}

Exemplo #4 Instantiating a class for each result

The following example demonstrates the behaviour of the PDO::FETCH_CLASS fetch style.

<?php
class fruit {
    public $name;
    public $colour;
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_CLASS, "fruit");
var_dump($result);
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  [0]=>
  object(fruit)#1 (2) {
    ["name"]=>
    string(5) "apple"
    ["colour"]=>
    string(5) "green"
  }
  [1]=>
  object(fruit)#2 (2) {
    ["name"]=>
    string(4) "pear"
    ["colour"]=>
    string(6) "yellow"
  }
  [2]=>
  object(fruit)#3 (2) {
    ["name"]=>
    string(10) "watermelon"
    ["colour"]=>
    string(4) "pink"
  }
}

Exemplo #5 Calling a function for each result

The following example demonstrates the behaviour of the PDO::FETCH_FUNC fetch style.

<?php
function fruit($name, $colour) {
    return "{$name}: {$colour}";
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_FUNC, "fruit");
var_dump($result);
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  [0]=>
  string(12) "apple: green"
  [1]=>
  string(12) "pear: yellow"
  [2]=>
  string(16) "watermelon: pink"
}

Veja Também

  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object
  • PDOStatement::fetch() - Fetches the next row from a result set
  • PDOStatement::fetchColumn() - Returns a single column from the next row of a result set
  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::setFetchMode() - Set the default fetch mode for this statement

PDOStatement->fetch
PDOStatement->fetchColumn
PDOStatement


Returns a single column from the next row of a result set

PDOStatement->fetchAll
PDOStatement->fetchObject
PDOStatement
PHP Manual

PDOStatement->fetchColumn

(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

PDOStatement->fetchColumn — Returns a single column from the next row of a result set

Descrição

string PDOStatement::fetchColumn ([ int $column_number = 0 ] )

Returns a single column from the next row of a result set or FALSE if there are no more rows.

Parâmetros

column_number

0-indexed number of the column you wish to retrieve from the row. If no value is supplied, PDOStatement::fetchColumn() fetches the first column.

Valor Retornado

PDOStatement::fetchColumn() returns a single column in the next row of a result set.

Aviso

There is no way to return another column from the same row if you use PDOStatement::fetchColumn() to retrieve data.

Exemplos

Exemplo #1 Return first column of the next row

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* Fetch the first column from the next row in the result set */
print("Fetch the first column from the next row in the result set:\n");
$result = $sth->fetchColumn();
print("name = $result\n");

print("Fetch the second column from the next row in the result set:\n");
$result = $sth->fetchColumn(1);
print("colour = $result\n");
?>

O exemplo acima irá imprimir:

Fetch the first column from the next row in the result set:
name = lemon
Fetch the second column from the next row in the result set:
colour = red

Veja Também

  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object
  • PDOStatement::fetch() - Fetches the next row from a result set
  • PDOStatement::fetchAll() - Returns an array containing all of the result set rows
  • PDO::prepare() - Prepares a statement for execution and returns a statement object
  • PDOStatement::setFetchMode() - Set the default fetch mode for this statement

PDOStatement->fetchAll
PDOStatement->fetchObject
PDOStatement


Fetches the next row and returns it as an object.

PDOStatement->fetchColumn
PDOStatement->getAttribute
PDOStatement
PHP Manual

PDOStatement->fetchObject

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.4)

PDOStatement->fetchObject — Fetches the next row and returns it as an object.

Descrição

mixed PDOStatement::fetchObject ([ string $class_name = "stdClass" [, array $ctor_args ]] )

Fetches the next row and returns it as an object. This function is an
alternative to PDOStatement::fetch() with
PDO::FETCH_CLASS or
PDO::FETCH_OBJ style.

Parâmetros

class_name

Name of the created class.

ctor_args

Elements of this array are passed to the constructor.

Valor Retornado

Returns an instance of the required class with property names that correspond to the column names or FALSE on failure.

Veja Também

  • PDOStatement::fetch() - Fetches the next row from a result set

PDOStatement->fetchColumn
PDOStatement->getAttribute
PDOStatement


Retrieve a statement attribute

PDOStatement->fetchObject
PDOStatement->getColumnMeta
PDOStatement
PHP Manual

PDOStatement->getAttribute

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->getAttribute — Retrieve a statement attribute

Descrição

mixed PDOStatement::getAttribute ( int $attribute )

Gets an attribute of the statement. Currently, no generic attributes exist but only driver specific:

  • PDO::ATTR_CURSOR_NAME (Firebird and ODBC specific): Get the name of cursor for UPDATE ... WHERE CURRENT OF.

Valor Retornado

Returns the attribute value.

Veja Também

  • PDO::getAttribute() - Retrieve a database connection attribute
  • PDO::setAttribute() - Set an attribute
  • PDOStatement::setAttribute() - Set a statement attribute

PDOStatement->fetchObject
PDOStatement->getColumnMeta
PDOStatement


Returns metadata for a column in a result set

PDOStatement->getAttribute
PDOStatement->nextRowset
PDOStatement
PHP Manual

PDOStatement->getColumnMeta

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->getColumnMeta — Returns metadata for a column in a result set

Descrição

array PDOStatement::getColumnMeta ( int $column )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Retrieves the metadata for a 0-indexed column in a result set as an associative array.

Aviso

Not all PDO drivers support PDOStatement::getColumnMeta().

Parâmetros

column

The 0-indexed column in the result set.

Valor Retornado

Returns an associative array containing the following values representing the metadata for a single column:

Column metadata
Name | Value
native_type | The PHP native type used to represent the column value.
driver:decl_type | The SQL type used to represent the column value in the database. If the column in the result set is the result of a function, this value is not returned by PDOStatement::getColumnMeta().
flags | Any flags set for this column.
name | The name of this column as returned by the database.
table | The name of this column's table as returned by the database.
len | The length of this column. Normally -1 for types other than floating point decimals.
precision | The numeric precision of this column. Normally 0 for types other than floating point decimals.
pdo_type | The type of this column as represented by the PDO::PARAM_* constants.

Returns FALSE if the requested column does not exist in the result set, or if no result set exists.

Histórico

Versão | Descrição
5.2.3 | table field

Exemplos

Exemplo #1 Retrieving column metadata

The following example shows the results of retrieving the metadata for a single column generated by a function (COUNT) in a PDO_SQLITE driver.

<?php
$select = $DB->query('SELECT COUNT(*) FROM fruit');
$meta = $select->getColumnMeta(0);
var_dump($meta);
?>

O exemplo acima irá imprimir:

array(6) {
  ["native_type"]=>
  string(7) "integer"
  ["flags"]=>
  array(0) {
  }
  ["name"]=>
  string(8) "COUNT(*)"
  ["len"]=>
  int(-1)
  ["precision"]=>
  int(0)
  ["pdo_type"]=>
  int(2)
}

Veja Também

  • PDOStatement::columnCount() - Returns the number of columns in the result set
  • PDOStatement::rowCount() - Returns the number of rows affected by the last SQL statement

PDOStatement->getAttribute
PDOStatement->nextRowset
PDOStatement


Advances to the next rowset in a multi-rowset statement handle

PDOStatement->getColumnMeta
PDOStatement->rowCount
PDOStatement
PHP Manual

PDOStatement->nextRowset

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->nextRowset — Advances to the next rowset in a multi-rowset statement handle

Descrição

bool PDOStatement::nextRowset ( void )

Some database servers support stored procedures that return more than one rowset (also known as a result set). PDOStatement::nextRowset() enables you to access the second and subsequent rowsets associated with a PDOStatement object. Each rowset can have a different set of columns from the preceding rowset.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Fetching multiple rowsets returned from a stored procedure

The following example shows how to call a stored procedure, MULTIPLE_ROWSETS, that returns three rowsets. We use a do / while loop to loop over the PDOStatement::nextRowset() method, which returns false and terminates the loop when no more rowsets can be returned.

<?php
$sql = 'CALL multiple_rowsets()';
$stmt = $conn->query($sql);
$i = 1;
do {
    $rowset = $stmt->fetchAll(PDO::FETCH_NUM);
    if ($rowset) {
        printResultSet($rowset, $i);
    }
    $i++;
} while ($stmt->nextRowset());

function printResultSet(&$rowset, $i) {
    print "Result set $i:\n";
    foreach ($rowset as $row) {
        foreach ($row as $col) {
            print $col . "\t";
        }
        print "\n";
    }
    print "\n";
}
?>

O exemplo acima irá imprimir:

Result set 1:
apple    red
banana   yellow

Result set 2:
orange   orange    150
banana   yellow    175

Result set 3:
lime     green
apple    red
banana   yellow

Veja Também

  • PDOStatement::columnCount() - Returns the number of columns in the result set
  • PDOStatement::execute() - Executes a prepared statement
  • PDOStatement::getColumnMeta() - Returns metadata for a column in a result set
  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object

PDOStatement->getColumnMeta
PDOStatement->rowCount
PDOStatement


Returns the number of rows affected by the last SQL statement

PDOStatement->nextRowset
PDOStatement->setAttribute
PDOStatement
PHP Manual

PDOStatement->rowCount

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDOStatement->rowCount — Returns the number of rows affected by the last SQL statement

Descrição

int PDOStatement::rowCount ( void )

PDOStatement::rowCount() returns the number of rows affected by the last DELETE, INSERT, or UPDATE statement executed by the corresponding PDOStatement object.

If the last SQL statement executed by the associated PDOStatement was a SELECT statement, some databases may return the number of rows returned by that statement. However, this behaviour is not guaranteed for all databases and should not be relied on for portable applications.

Valor Retornado

Returns the number of rows.

Exemplos

Exemplo #1 Return the number of deleted rows

PDOStatement::rowCount() returns the number of rows affected by a DELETE, INSERT, or UPDATE statement.

<?php
/* Delete all rows from the FRUIT table */
$del = $dbh->prepare('DELETE FROM fruit');
$del->execute();

/* Return number of rows that were deleted */
print("Return number of rows that were deleted:\n");
$count = $del->rowCount();
print("Deleted $count rows.\n");
?>

O exemplo acima irá imprimir:

Return number of rows that were deleted:
Deleted 9 rows.

Exemplo #2 Counting rows returned by a SELECT statement

For most databases, PDOStatement::rowCount() does not return the number of rows affected by a SELECT statement. Instead, use PDO::query() to issue a SELECT COUNT(*) statement with the same predicates as your intended SELECT statement, then use PDOStatement::fetchColumn() to retrieve the number of rows that will be returned. Your application can then perform the correct action.

<?php
$sql = "SELECT COUNT(*) FROM fruit WHERE calories > 100";
if ($res = $conn->query($sql)) {

    /* Check the number of rows that match the SELECT statement */
  if ($res->fetchColumn() > 0) {

        /* Issue the real SELECT statement and work with the results */
         $sql = "SELECT name FROM fruit WHERE calories > 100";
       foreach ($conn->query($sql) as $row) {
           print "Name: " .  $row['NAME'] . "\n";
         }
    }
    /* No rows matched -- do something else */
  else {
      print "No rows matched the query.";
    }
}

$res = null;
$conn = null;
?>

O exemplo acima irá imprimir:

apple
banana
orange
pear

Veja Também

  • PDOStatement::columnCount() - Returns the number of columns in the result set
  • PDOStatement::fetchColumn() - Returns a single column from the next row of a result set
  • PDO::query() - Executes an SQL statement, returning a result set as a PDOStatement object

PDOStatement->nextRowset
PDOStatement->setAttribute
PDOStatement


Set a statement attribute

PDOStatement->rowCount
PDOStatement->setFetchMode
PDOStatement
PHP Manual

PDOStatement->setAttribute

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->setAttribute — Set a statement attribute

Descrição

bool PDOStatement::setAttribute ( int $attribute , mixed $value )

Sets an attribute on the statement. Currently, no generic attributes are set but only driver specific:

  • PDO::ATTR_CURSOR_NAME (Firebird and ODBC specific): Set the name of cursor for UPDATE ... WHERE CURRENT OF.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • PDO::getAttribute() - Retrieve a database connection attribute
  • PDO::setAttribute() - Set an attribute
  • PDOStatement::getAttribute() - Retrieve a statement attribute

PDOStatement->rowCount
PDOStatement->setFetchMode
PDOStatement


Set the default fetch mode for this statement

PDOStatement->setAttribute
PDOException
PDOStatement
PHP Manual

PDOStatement->setFetchMode

(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)

PDOStatement->setFetchMode — Set the default fetch mode for this statement

Descrição

bool PDOStatement::setFetchMode ( int $mode )
bool PDOStatement::setFetchMode ( int $PDO::FETCH_COLUMN , int $colno )
bool PDOStatement::setFetchMode ( int $PDO::FETCH_CLASS , string $classname , array $ctorargs )
bool PDOStatement::setFetchMode ( int $PDO::FETCH_INTO , object $object )

Parâmetros

mode

The fetch mode must be one of the PDO::FETCH_* constants.

colno

Column number.

classname

Class name.

ctorargs

Constructor arguments.

object

Object.

Valor Retornado

Returns 1 on success or FALSE on failure.

Exemplos

Exemplo #1 Setting the fetch mode

The following example demonstrates how PDOStatement::setFetchMode() changes the default fetch mode for a PDOStatement object.

<?php
$sql = 'SELECT name, colour, calories FROM fruit';
try {
  $stmt = $dbh->query($sql);
  $result = $stmt->setFetchMode(PDO::FETCH_NUM);
  while ($row = $stmt->fetch()) {
    print $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n";
  }
}
catch (PDOException $e) {
  print $e->getMessage();
}
?>

O exemplo acima irá imprimir:

apple   red     150
banana  yellow  250
orange  orange  300
kiwi    brown   75
lemon   yellow  25
pear    green   150
watermelon      pink    90

PDOStatement->setAttribute
PDOException
PDOStatement


The PDOException class

Introdução

Represents an error raised by PDO. You should not throw a PDOException from your own code. See Exceptions for more information about Exceptions in PHP.

Sinopse da classe

PDOException extends RuntimeException {
/* Properties */
public array $errorInfo ;
protected string $message ;
protected string $code ;
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

errorInfo

Corresponds to PDO::errorInfo() or PDOStatement::errorInfo()

message

Textual error message. Exception::getMessage() to access it.

code

SQLSTATE error code. Use Exception::getCode() to access it.

PDOStatement->setFetchMode
PDO Drivers
PDO


PDO Drivers

Índice

  • CUBRID (PDO)
  • MS SQL Server (PDO)
  • Firebird/Interbase (PDO)
  • IBM (PDO)
  • Informix (PDO)
  • MySQL (PDO)
  • Oracle (PDO)
  • ODBC and DB2 (PDO)
  • PostgreSQL (PDO)
  • SQLite (PDO)
  • 4D (PDO)

The following drivers currently implement the PDO interface:

Driver name | Supported databases
PDO_CUBRID | Cubrid
PDO_DBLIB | FreeTDS / Microsoft SQL Server / Sybase
PDO_FIREBIRD | Firebird/Interbase 6
PDO_IBM | IBM DB2
PDO_INFORMIX | IBM Informix Dynamic Server
PDO_MYSQL | MySQL 3.x/4.x/5.x
PDO_OCI | Oracle Call Interface
PDO_ODBC | ODBC v3 (IBM DB2, unixODBC and win32 ODBC)
PDO_PGSQL | PostgreSQL
PDO_SQLITE | SQLite 3 and SQLite 2
PDO_4D | 4D

PDOException
CUBRID (PDO)
PDO


CUBRID Functions (PDO_CUBRID)

Introdução

PDO_CUBRID is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to CUBRID databases.

Nota:

Current version of PDO_CUBRID doesn't support persistent connection now.

Instalação

To build the PDO_CUBRID extension, the CUBRID DBMS must be installed on the same system as PHP. PDO_CUBRID is a » PECL extension, so follow the instructions in Instalação das extensões PECL to install the PDO_CUBRID extension. Issue the configure command to point to the location of your CUBRID base dir as follows:

   $ ./configure --with-pdo-cubrid=/path/to/CUBRID[,shared]
The configure command defaults to the value of the CUBRID environment variable.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section. Detailed information about installation on Linux and Windows manually, please read build-guide.html in PECL package CUBRID for reference.

Features

PDO_CUBRID Features
Feature | Description
Scrollable cursors | PDO_CUBRID supports scrollable cursors. The default cursor type is forward only, and you can use parameter driver_options in PDO::prepare() to change cursor type.
Timeout | PDO_CUBRID supports sql statement execution timeout setting; You can use PDO::setAttribute() to set timeout value.
Autocommit_mode and Transaction PDO_CUBRID supports both autocommit_mode and transaction, and autocommit_mode is enable by default. You can use PDO::setAttribute() to change its state.

If you use PDO::beginTransaction to begin a transaction, it will disable autocommit_mode and restore it after PDO::commit or PDO::rollBack. Note that before disabling the autocommit_mode, any pending work is automatically committed.

Multiple SQL Statements | PDO_CUBRID supports Multiple SQL statements. Multiple SQL statements are separated by semicolons (;)
Schema Information | PDO_CUBRID doesn't implement PDOStatement->getColumnMeta. Instead, PDO_CUBRID implements a function PDO::cubrid_schema() to get schema information.
LOBs PDO_CUBRID supports BLOB/CLOB data type. The LOB in PDO is represented as a stream, so you can insert LOBs by binding a stream, and get LOBs by reading a stream returned by CUBRID PDO. For example:

Exemplo #2 Insert LOBs in CUBRID PDO

<?php
$fp = fopen('lob_test.png', 'rb');

$sql_stmt = "INSERT INTO lob_test(name, content) VALUES('lob_test.png', ?)";

$stmt = $dbh->prepare($sql_stmt);
$ret = $stmt->bindParam(1, $fp, PDO::PARAM_LOB);
$ret = $stmt->execute();
?>

Exemplo #3 Fetch LOBs in CUBRID PDO

<?php
$sql_stmt = "SELECT content FROM lob_test WHERE name='lob_test.png'";

$stmt = $dbh->prepare($sql_stmt);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_NUM);

header("Content-Type: image/png");
fpassthru($result[0]);
?>

Constantes pré-definidas

As constantes abaixo são definidas por este driver, e somente estarão disponíveis quando esta extensão for compilada no PHP ou carregada dinamicamente em tempo de execução. Em adição, estas constantes especificas do drive somente devem ser usadas se você estive usando este drive. Usar atributos especificos do mysql com o driver postgree pode resultar em um funcionamento não esperado. PDO::getAttribute() deve ser usado para obter o atributo PDO_ATTR_DRIVER_NAME para se certificar do driver, se o seu código puder ser usado com vários drivers.

The following constants can be used when getting schema information. They can be passed to PDO::cubrid_schema().

PDO::CUBRID schema flags
Constant | Description
PDO::CUBRID_SCH_TABLE | Get name and type of table in CUBRID.
PDO::CUBRID_SCH_VIEW | Get name and type of view in CUBRID.
PDO::CUBRID_SCH_QUERY_SPEC | Get the query definition of view.
PDO::CUBRID_SCH_ATTRIBUTE | Get the attributes of table column.
PDO::CUBRID_SCH_TABLE_ATTRIBUTE | Get the attributes of table.
PDO::CUBRID_SCH_METHOD | Get the instance method. The instance method is a method called by a class instance. It is used more often than the class method because most operations are executed in the instance.
PDO::CUBRID_SCH_TABLE_METHOD | Get the class method. The class method is a method called by a class object. It is usually used to create a new class instance or to initialize it. It is also used to access or update class attributes.
PDO::CUBRID_SCH_METHOD_FILE | Get the information of the file where the method of the table is defined.
PDO::CUBRID_SCH_SUPER_TABLE | Get the name and type of table which table inherites attributes from.
PDO::CUBRID_SCH_SUB_TABLE | Get the name and type of table which inherites attributes from this table.
PDO::CUBRID_SCH_CONSTRAINT | Get the table constraints.
PDO::CUBRID_SCH_TRIGGER | Get the table triggers.
PDO::CUBRID_SCH_TABLE_PRIVILEGE | Get the privilege information of table.
PDO::CUBRID_SCH_COL_PRIVILEGE | Get the privilege information of column.
PDO::CUBRID_SCH_DIRECT_SUPER_TABLE | Get the direct super table of table.
PDO::CUBRID_SCH_PRIMARY_KEY | Get the table primary key.
PDO::CUBRID_SCH_IMPORTED_KEYS | Get imported keys of table.
PDO::CUBRID_SCH_EXPORTED_KEYS | Get exported keys of table.
PDO::CUBRID_SCH_CROSS_REFERENCE | Get reference relationship of tow tables.

Índice

  • PDO_CUBRID DSN — Connecting to CUBRID databases
  • PDO::cubrid_schema — Get the requested schema information
PDO Drivers
PDO_CUBRID DSN
PDO Drivers


Connecting to CUBRID databases

CUBRID (PDO)
PDO::cubrid_schema
CUBRID (PDO)
PHP Manual

PDO_CUBRID DSN

(No version information available, might only be in SVN)

PDO_CUBRID DSN — Connecting to CUBRID databases

Descrição

The PDO_CUBRID Data Source Name (DSN) is composed of the following elements, delimited by semicolons:

DSN prefix

The DSN prefix is cubrid:.

host

The hostname on which the database server resides.

port

The port on which the database server is running.

dbname

The name of the database.

Exemplos

Exemplo #1 PDO_CUBRID DSN examples

The following example shows a PDO_CUBRID DSN for connecting to a CUBRID database:

cubrid:host=localhost;port=33000;dbname=demodb

CUBRID (PDO)
PDO::cubrid_schema
CUBRID (PDO)


Get the requested schema information

PDO_CUBRID DSN
MS SQL Server (PDO)
CUBRID (PDO)
PHP Manual

PDO::cubrid_schema

(No version information available, might only be in SVN)

PDO::cubrid_schema — Get the requested schema information

Descrição

array PDO::cubrid_schema ( int $schema_type [, string $table_name [, string $col_name ]] )

This function is used to get the requested schema information from database. You have to designate table_name, if you want to get information on certain table, col_name, if you want to get information on certain column (can be used only with PDO::CUBRID_SCH_COL_PRIVILEGE).

The result of this function is returned as a two-dimensional array (column (associative array) * row (numeric array)). The following tables shows types of schema and the column structure of the result array to be returned based on the schema type.

Result Composition of Each Type
Schema | Column Number | Column Name | Value
PDO::CUBRID_SCH_TABLE | 1 | NAME |
 | 2 | TYPE | 0:system table 1:view 2:table
PDO::CUBRID_SCH_VIEW | 1 | NAME |
 | 2 | TYPE | 1:view
PDO::CUBRID_SCH_QUERY_SPEC | 1 | QUERY_SPEC |
PDO::CUBRID_SCH_ATTRIBUTE / PDO::CUBRID_SCH_TABLE_ATTRIBUTE | 1 | ATTR_NAME |
 | 2 | DOMAIN |
 | 3 | SCALE |
 | 4 | PRECISION |
 | 5 | INDEXED | 1:indexed
 | 6 | NOT NULL | 1:not null
 | 7 | SHARED | 1:shared
 | 8 | UNIQUE | 1:unique
 | 9 | DEFAULT |
 | 10 | ATTR_ORDER | base:1
 | 11 | CLASS_NAME |
 | 12 | SOURCE_CLASS |
 | 13 | IS_KEY | 1:key
PDO::CUBRID_SCH_METHOD / PDO::CUBRID_SCH_TABLE_METHOD | 1 | NAME |
 | 2 | RET_DOMAIN |
 | 3 | ARG_DOMAIN |
PDO::CUBRID_SCH_METHOD_FILE | 1 | METHOD_FILE |
PDO::CUBRID_SCH_SUPER_TABLE / PDO::CUBRID_SCH_DIRECT_SUPER_TABLE / PDO::CUBRID_SCH_SUB_TABLE | 1 | CLASS_NAME |
 | 2 | TYPE | 0:system table 1:view 2:table
PDO::CUBRID_SCH_CONSTRAINT | 1 | TYPE | 0:unique 1:index 2:reverse unique 3:reverse index
 | 2 | NAME |
 | 3 | ATTR_NAME |
 | 4 | NUM_PAGES |
 | 5 | NUM_KEYS |
 | 6 | PRIMARY_KEY | 1:primary key
 | 7 | KEY_ORDER | base:1
PDO::CUBRID_SCH_TRIGGER | 1 | NAME |
 | 2 | STATUS |
 | 3 | EVENT |
 | 4 | TARGET_CLASS |
 | 5 | TARGET_ATTR |
 | 6 | ACTION_TIME |
 | 7 | ACTION |
 | 8 | PRIORITY |
 | 9 | CONDITION_TIME |
 | 10 | CONDITION |
PDO::CUBRID_SCH_TABLE_PRIVILEGE / PDO::CUBRID_SCH_COL_PRIVILEGE | 1 | CLASS_NAME / ATTR_NAME |
 | 2 | PRIVILEGE |
 | 3 | GRANTABLE |
PDO::CUBRID_SCH_PRIMARY_KEY | 1 | CLASS_NAME |
 | 2 | ATTR_NAME |
 | 3 | KEY_SEQ | base:1
 | 4 | KEY_NAME |
PDO::CUBRID_SCH_IMPORTED_KEYS / PDO::CUBRID_SCH_EXPORTED_KEYS / PDO::CUBRID_SCH_CROSS_REFERENCE | 1 | PKTABLE_NAME |
 | 2 | PKCOLUMN_NAME |
 | 3 | FKTABLE_NAME | base:1
 | 4 | FKCOLUMN_NAME |
 | 5 | KEY_SEQ | base:1
 | 6 | UPDATE_ACTION | 0:cascade 1:restrict 2:no action 3:set null
 | 7 | DELETE_ACTION | 0:cascade 1:restrict 2:no action 3:set null
 | 8 | FK_NAME |
 | 9 | PK_NAME |

Parâmetros

schema_type

Schema type that you want to know.

table_name

Table you want to know the schema of.

col_name

Column you want to know the schema of.

Valor Retornado

Array containing the schema information, when process is successful;

FALSE, when process is unsuccessful

Exemplos

Exemplo #1 A PDO::cubrid_schema() example

This example shows how to get primary key and foreign keys of table game.

<?php
$pk_list = $dbh->cubrid_schema(PDO::CUBRID_SCH_PRIMARY_KEY, "game");
print_r($pk_list);

$fk_list = $dbh->cubrid_schema(PDO::CUBRID_SCH_IMPORTED_KEYS, "game");
print_r($fk_list);
?>

O exemplo acima irá imprimir:

Result:
Array
(
    [0] => Array
        (
            [CLASS_NAME] => game
            [ATTR_NAME] => athlete_code
            [KEY_SEQ] => 3
            [KEY_NAME] => pk_game_host_year_event_code_athlete_code
        )

    [1] => Array
        (
            [CLASS_NAME] => game
            [ATTR_NAME] => event_code
            [KEY_SEQ] => 2
            [KEY_NAME] => pk_game_host_year_event_code_athlete_code
        )

    [2] => Array
        (
            [CLASS_NAME] => game
            [ATTR_NAME] => host_year
            [KEY_SEQ] => 1
            [KEY_NAME] => pk_game_host_year_event_code_athlete_code
        )

)
Array
(
    [0] => Array
        (
            [PKTABLE_NAME] => athlete
            [PKCOLUMN_NAME] => code
            [FKTABLE_NAME] => game
            [FKCOLUMN_NAME] => athlete_code
            [KEY_SEQ] => 1
            [UPDATE_RULE] => 1
            [DELETE_RULE] => 1
            [FK_NAME] => fk_game_athlete_code
            [PK_NAME] => pk_athlete_code
        )

    [1] => Array
        (
            [PKTABLE_NAME] => event
            [PKCOLUMN_NAME] => code
            [FKTABLE_NAME] => game
            [FKCOLUMN_NAME] => event_code
            [KEY_SEQ] => 1
            [UPDATE_RULE] => 1
            [DELETE_RULE] => 1
            [FK_NAME] => fk_game_event_code
            [PK_NAME] => pk_event_code
        )

)

PDO_CUBRID DSN
MS SQL Server (PDO)
CUBRID (PDO)


Microsoft SQL Server and Sybase Functions (PDO_DBLIB)

Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

PDO_DBLIB is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Microsoft SQL Server and Sybase databases through the FreeTDS libary.

This extension is not available anymore on Windows with PHP 5.3 or later.

On Windows, you should use SqlSrv, an alternative driver for MS SQL is available from Microsoft: » http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx .

If it is not possible to use SqlSrv, you can use the PDO_ODBC driver to connect to Microsoft SQL Server and Sybase databases, as the native Windows DB-LIB is ancient, thread un-safe and no longer supported by Microsoft.

Índice

  • PDO_DBLIB DSN — Connecting to Microsoft SQL Server and Sybase databases
PDO::cubrid_schema
PDO_DBLIB DSN
PDO Drivers


Connecting to Microsoft SQL Server and Sybase databases

MS SQL Server (PDO)
Firebird/Interbase (PDO)
MS SQL Server (PDO)
PHP Manual

PDO_DBLIB DSN

(PECL PDO_DBLIB >= 0.9.0)

PDO_DBLIB DSN — Connecting to Microsoft SQL Server and Sybase databases

Descrição

The PDO_DBLIB Data Source Name (DSN) is composed of the following elements:

DSN prefix

The DSN prefix is sybase: if PDO_DBLIB was linked against the Sybase ct-lib libraries, mssql: if PDO_DBLIB was linked against the Microsoft SQL Server libraries, or dblib: if PDO_DBLIB was linked against the FreeTDS libraries.

host

The hostname on which the database server resides. Defaults to 127.0.0.1.

dbname

The name of the database.

charset

The client character set.

appname

The application name (used in sysprocesses). Defaults to "PHP Generic DB-lib" or "PHP freetds".

secure

Currently unused.

Exemplos

Exemplo #1 PDO_DBLIB DSN examples

The following examples show a PDO_DBLIB DSN for connecting to Microsoft SQL Server and Sybase databases:

mssql:host=localhost;dbname=testdb
sybase:host=localhost;dbname=testdb
dblib:host=localhost;dbname=testdb

MS SQL Server (PDO)
Firebird/Interbase (PDO)
MS SQL Server (PDO)


Firebird/Interbase Functions (PDO_FIREBIRD)

Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

PDO_FIREBIRD is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Firebird and Interbase databases.

Instalação

Use --with-pdo-firebird[=DIR] to install the PDO Firebird extension, where the optional [=DIR] is the Firebird base install directory.

$ ./configure --with-pdo-firebird

Constantes pré-definidas

As constantes abaixo são definidas por este driver, e somente estarão disponíveis quando esta extensão for compilada no PHP ou carregada dinamicamente em tempo de execução. Em adição, estas constantes especificas do drive somente devem ser usadas se você estive usando este drive. Usar atributos especificos do mysql com o driver postgree pode resultar em um funcionamento não esperado. PDO::getAttribute() deve ser usado para obter o atributo PDO_ATTR_DRIVER_NAME para se certificar do driver, se o seu código puder ser usado com vários drivers.

PDO::FB_ATTR_DATE_FORMAT (integer)

Available since PHP 5.3.0.

Sets the date format.

PDO::FB_ATTR_TIME_FORMAT (integer)

Sets the time format.

Available since PHP 5.3.0.

PDO::FB_ATTR_TIMESTAMP_FORMAT (integer)

Sets the timestamp format.

Available since PHP 5.3.0.

Índice

  • PDO_FIREBIRD DSN — Connecting to Firebird and Interbase databases
PDO_DBLIB DSN
PDO_FIREBIRD DSN
PDO Drivers


Connecting to Firebird and Interbase databases

Firebird/Interbase (PDO)
IBM (PDO)
Firebird/Interbase (PDO)
PHP Manual

PDO_FIREBIRD DSN

(PECL PDO_FIREBIRD >= 0.1.0)

PDO_FIREBIRD DSN — Connecting to Firebird and Interbase databases

Descrição

The PDO_FIREBIRD Data Source Name (DSN) is composed of the following elements:

DSN prefix

The DSN prefix is firebird:.

dbname

The name of the database.

charset

The character set.

role

The SQL role name.

Exemplos

Exemplo #1 PDO_FIREBIRD DSN examples

The following example shows a PDO_FIREBIRD DSN for connecting to Firebird and Interbase databases:

firebird:dbname=DATABASE.GDE

Firebird/Interbase (PDO)
IBM (PDO)
Firebird/Interbase (PDO)


IBM Functions (PDO_IBM)

Introdução

PDO_IBM is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to IBM databases.

Instalação

To build the PDO_IBM extension, the DB2 Client v9.1 or later must be installed on the same system as PHP. The DB2 Client can be downloaded from the IBM » Application Development Site.

Nota: Note

The DB2 Client v9.1 or later supports direct access to DB2 for Linux, UNIX, and Windows v8 and v9.1 servers.

The DB2 Client v9.1 also supports access to DB2 UDB for i5 and DB2 UDB for z/OS servers using the separately purchased » DB2 Connect product.

PDO_IBM is a » PECL extension, so follow the instructions in Instalação das extensões PECL to install the PDO_IBM extension. Issue the configure command to point to the location of your DB2 Client header files and libraries as follows:

bash$ ./configure --with-pdo-ibm=/path/to/sqllib[,shared]
The configure command defaults to the value of the DB2DIR environment variable.

Índice

  • PDO_IBM DSN — Connecting to IBM databases
PDO_FIREBIRD DSN
PDO_IBM DSN
PDO Drivers


Connecting to IBM databases

IBM (PDO)
Informix (PDO)
IBM (PDO)
PHP Manual

PDO_IBM DSN

(PECL PDO_IBM >= 0.9.0)

PDO_IBM DSN — Connecting to IBM databases

Descrição

The PDO_IBM Data Source Name (DSN) is based on the IBM CLI DSN. The major components of the PDO_IBM DSN are:

DSN prefix

The DSN prefix is ibm:.

DSN

The DSN can be any of the following:

  • a) Data source setup using db2cli.ini or odbc.ini

  • b) Catalogued database name i.e. database alias in the DB2 client catalog

  • c) Complete connection string in the following format: DRIVER={IBM DB2 ODBC DRIVER};DATABASE=database;HOSTNAME=hostname;PORT=port;PROTOCOL=TCPIP;UID=username;PWD=password; where the parameters represent the following values:

    database

    The name of the database.

    hostname

    The hostname or IP address of the database server.

    port

    The TCP/IP port on which the database is listening for requests.

    username

    The username with which you are connecting to the database.

    password

    The password with which you are connecting to the database.

Exemplos

Exemplo #1 PDO_IBM DSN example using db2cli.ini

The following example shows a PDO_IBM DSN for connecting to an DB2 database cataloged as DB2_9 in db2cli.ini:

$db = new PDO("ibm:DSN=DB2_9", "", "");

[DB2_9]
Database=testdb
Protocol=tcpip
Hostname=11.22.33.444
Servicename=56789

Exemplo #2 PDO_IBM DSN example using a connection string

The following example shows a PDO_IBM DSN for connecting to an DB2 database named testdb using the DB2 CLI connection string syntax.

$db = new PDO("ibm:DRIVER={IBM DB2 ODBC DRIVER};DATABASE=testdb;" .
  "HOSTNAME=11.22.33.444;PORT=56789;PROTOCOL=TCPIP;", "testuser", "tespass");

IBM (PDO)
Informix (PDO)
IBM (PDO)


Informix Functions (PDO_INFORMIX)

Introdução

PDO_INFORMIX is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Informix databases.

Instalação

To build the PDO_INFORMIX extension, the Informix Client SDK 2.81 UC1 or higher must be installed on the same system as PHP. The Informix Client SDK is available from the » IBM Informix Support Site.

PDO_INFORMIX is a » PECL extension, so follow the instructions in Instalação das extensões PECL to install the PDO_INFORMIX extension. Issue the configure command to point to the location of your Informix Client SDK header files and libraries as follows:

   bash$ ./configure --with-pdo-informix=/path/to/SDK[,shared]
The configure command defaults to the value of the INFORMIXDIR environment variable.

Scrollable cursors

PDO_INFORMIX supports scrollable cursors; however, they are not enabled by default. To enable scrollable cursor support, you must either set ENABLESCROLLABLECURSORS=1 in the corresponding ODBC connection settings in odbc.ini or pass the EnableScrollableCursors=1 clause in the DSN connection string.

Índice

  • PDO_INFORMIX DSN — Connecting to Informix databases
PDO_IBM DSN
PDO_INFORMIX DSN
PDO Drivers


Connecting to Informix databases

Informix (PDO)
MySQL (PDO)
Informix (PDO)
PHP Manual

PDO_INFORMIX DSN

(PECL PDO_INFORMIX >= 0.1.0)

PDO_INFORMIX DSN — Connecting to Informix databases

Descrição

The PDO_INFORMIX Data Source Name (DSN) is based on the Informix ODBC DSN string. Details on configuring an Informix ODBC DSN are available from the » Informix Dynamic Server Information Center. The major components of the PDO_INFORMIX DSN are:

DSN prefix

The DSN prefix is informix:.

DSN

The DSN can be either a data source setup using odbc.ini or a complete » connection string.

Exemplos

Exemplo #1 PDO_INFORMIX DSN example using odbc.ini

The following example shows a PDO_INFORMIX DSN for connecting to an Informix database cataloged as Infdrv33 in odbc.ini:

$db = new PDO("informix:DSN=Infdrv33", "", "");

[ODBC Data Sources]
Infdrv33=INFORMIX 3.3 32-BIT

[Infdrv33]
Driver=/opt/informix/csdk_2.81.UC1G2/lib/cli/iclis09b.so
Description=INFORMIX 3.3 32-BIT
Database=common_db
LogonID=testuser
pwd=testpass
Servername=ids_server
DB_LOCALE=en_US.819
OPTIMIZEAUTOCOMMIT=1
ENABLESCROLLABLECURSORS=1

Exemplo #2 PDO_INFORMIX DSN example using a connection string

The following example shows a PDO_INFORMIX DSN for connecting to an Informix database named common_db using the Informix connection string syntax.

$db = new PDO("informix:host=host.domain.com; service=9800;
    database=common_db; server=ids_server; protocol=onsoctcp;
    EnableScrollableCursors=1", "testuser", "tespass");

Informix (PDO)
MySQL (PDO)
Informix (PDO)


MySQL Functions (PDO_MYSQL)

Introdução

PDO_MYSQL é um driver que implementa a interface PHP Data Objects (PDO) para acesso do PHP ao MySQL 3.x, 4.x and 5.x.

PDO_MYSQL tem vantagens do nativo suporte a prepared statement presente no MySQL 4.1 e superior. Se você está usando um versão antiga da biblioteca do mysql client, PDO irá emular para você.

Aviso

Cuidado: Alguns tipos de table do MySQL (storage engines) não suportam transações. Quando escrevendo código para um banco de dados transacional onde o tipo de tabela não suporta transações, MySQL irá pretender que a transação foi inicializada com sucesso. Adicionalmente, qualquer DDL queries serão implicitamente aceitas sem pedir confirmação.

Constantes pré-definidas

As constantes abaixo são definidas por este driver, e somente estarão disponíveis quando esta extensão for compilada no PHP ou carregada dinamicamente em tempo de execução. Em adição, estas constantes especificas do drive somente devem ser usadas se você estive usando este drive. Usar atributos especificos do mysql com o driver postgree pode resultar em um funcionamento não esperado. PDO::getAttribute() deve ser usado para obter o atributo PDO_ATTR_DRIVER_NAME para se certificar do driver, se o seu código puder ser usado com vários drivers.

PDO::MYSQL_ATTR_USE_BUFFERED_QUERY (integer)
Se este atributo é definido para TRUE em uma PDOStatement, o driver MySQL irá usar a versão bufferizada da MySQL API. Se você está escrevendo um código portável, você deveria usar PDOStatement::fetchAll().

Exemplo #3 Forçando queries para ser bufferizadas no mysql

<?php
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
    $stmt = $db->prepare('select * from foo',
        array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));
} else {
    die("my application only works with mysql; I should use \$stmt->fetchAll() instead");
}
?>

PDO::MYSQL_ATTR_LOCAL_INFILE (integer)

Enable LOAD LOCAL INFILE.

PDO::MYSQL_ATTR_INIT_COMMAND (integer)

Comando para executar quando conectado ao servidor MySQL. Irá automaticamente ser reexecutado quando reconectar.

PDO::MYSQL_ATTR_READ_DEFAULT_FILE (integer)

Lê opções do nomeado arquivo de opções ao invés do my.cnf.

PDO::MYSQL_ATTR_READ_DEFAULT_GROUP (integer)

Lê opções do nomeado group para my.cnf ou o arquivo especificado com MYSQL_READ_DEFAULT_FILE.

PDO::MYSQL_ATTR_MAX_BUFFER_SIZE (integer)

Tamanho máximo do buffer. Padrão é 1 MiB.

PDO::MYSQL_ATTR_DIRECT_QUERY (integer)

Executa queries diretamente, não usa prepared statements.

Índice

  • PDO_MYSQL DSN — Conectando a bancos de dados MySQL
PDO_INFORMIX DSN
PDO_MYSQL DSN
PDO Drivers


Conectando a bancos de dados MySQL

MySQL (PDO)
Oracle (PDO)
MySQL (PDO)
PHP Manual

PDO_MYSQL DSN

(PECL PDO_MYSQL >= 0.1.0)

PDO_MYSQL DSN — Conectando a bancos de dados MySQL

Descrição

A PDO_MYSQL Data Source Name (DSN) é composta dos seguintes elementos:

DSN prefix

O prefixo DSN é mysql:.

host

O hostname no qual o servidor do banco de dados está.

port

O número da porta onde o servidor do banco de dados está escutando.

dbname

O nome do banco de dados.

unix_socket

O socket Unix do MySQL (não deve ser usado com host ou port).

Exemplos

Exemplo #1 PDO_MYSQL DSN examples

O seguinte exemplo mostrar um PDO_MYSQL DSN para conexão com banco de dados MySQL:

mysql:host=localhost;dbname=testdb
Exemplos mais completos:
mysql:host=localhost;port=3307;dbname=testdb
mysql:unix_socket=/tmp/mysql.sock;dbname=testdb

MySQL (PDO)
Oracle (PDO)
MySQL (PDO)


Oracle Functions (PDO_OCI)

Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

PDO_OCI is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Oracle databases through the OCI library.

Instalação

Use --with-pdo-oci[=DIR] to install the PDO Oracle OCI extension, where the optional [=DIR] is the Oracle Home directory. [=DIR] defaults to the $ORACLE_HOME environment variable.

Use --with-pdo-oci=instantclient,prefix,version for an Oracle Instant Client SDK, where prefix and version are configured.

// Using $ORACLE_HOME
$ ./configure --with-pdo-oci

// Using OIC for Linux with 10.2.0.3 RPMs with a /usr prefix
$ ./configure --with-pdo-oci=instantclient,/usr,10.2.0.3

Índice

  • PDO_OCI DSN — Connecting to Oracle databases
PDO_MYSQL DSN
PDO_OCI DSN
PDO Drivers


Connecting to Oracle databases

Oracle (PDO)
ODBC and DB2 (PDO)
Oracle (PDO)
PHP Manual

PDO_OCI DSN

(PECL PDO_OCI >= 0.1.0)

PDO_OCI DSN — Connecting to Oracle databases

Descrição

The PDO_OCI Data Source Name (DSN) is composed of the following elements:

DSN prefix

The DSN prefix is oci:.

dbname (Oracle Instant Client)

The URI for the Oracle Instant Client connection takes the form of dbname=//hostname:port-number/database. If you are connecting to a database defined in tnsnames.ora, use only the name of the database: dbname=database.

charset

The client-side character set for the current environment handle.

Exemplos

Exemplo #1 PDO_OCI DSN examples

The following examples show a PDO_OCI DSN for connecting to Oracle databases:

// Connect to a database defined in tnsnames.ora
oci:dbname=mydb

// Connect using the Oracle Instant Client
oci:dbname=//localhost:1521/mydb

Oracle (PDO)
ODBC and DB2 (PDO)
Oracle (PDO)


ODBC and DB2 Functions (PDO_ODBC)

Introdução

PDO_ODBC is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to databases through ODBC drivers or through the IBM DB2 Call Level Interface (DB2 CLI) library. PDO_ODBC currently supports three different "flavours" of database drivers:

ibm-db2

Supports access to IBM DB2 Universal Database, Cloudscape, and Apache Derby servers through the free DB2 client.

unixODBC

Supports access to database servers through the unixODBC driver manager and the database's own ODBC drivers.

generic

Offers a compile option for ODBC driver managers that are not explicitly supported by PDO_ODBC.

On Windows, PDO_ODBC is built into the PHP core by default. It is linked against the Windows ODBC Driver Manager so that PHP can connect to any database cataloged as a System DSN, and is the recommended driver for connecting to Microsoft SQL Server databases.

Instalação

PDO_ODBC on UNIX systems

  1. As of PHP 5.1, PDO_ODBC is included in the PHP source. You can compile the PDO_ODBC extension as either a static or shared module using the following configure commands.

    ibm_db2

    ./configure --with-pdo-odbc=ibm-db2,/opt/IBM/db2/V8.1/
    To build PDO_ODBC with the ibm-db2 flavour, you have to have previously installed the DB2 application development headers on the same machine on which you are compiling PDO_ODBC. The DB2 application development headers are an installable option in the DB2 servers, and are also available as part of the DB2 Application Development Client freely available for download from the IBM DB2 Universal Database » support site.

    If you do not supply a location for the DB2 libraries and headers to the configure command, PDO_ODBC defaults to /home/db2inst1/sqllib.

    unixODBC

    ./configure --with-pdo-odbc=unixODBC,/usr/local
    If you do not supply a location for the unixODBC libraries and headers to the configure command, PDO_ODBC defaults to /usr/local.

    generic
    ./configure --with-pdo-odbc=generic,/usr/local,libname,ldflags,cflags

Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

PDO_ODBC Configuration Options
Name | Default | Changeable | Changelog
pdo_odbc.connection_pooling | "strict" | PHP_INI_ALL | Available since PHP 5.1.0.
pdo_odbc.db2_instance_name | NULL | PHP_INI_SYSTEM | Available since PHP 5.1.1. This deprecated feature will certainly be removed in the future.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

pdo_odbc.connection_pooling string

Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off" (equals to ""). The parameter describes how strict the connection manager should be when matching connection parameters to existing pooled connections. strict is the recommend default, and will result in the use of cached connections only when all the connection parameters match exactly. relaxed will result in the use of cached connections when similar connection parameters are used. This can result in increased use of the cache, at the risk of bleeding connection information between (for example) virtual hosts.

This setting can only be changed from the php.ini file, and affects the entire process; any other modules loaded into the process that use the same ODBC libraries will be affected too, including the Unified ODBC extension.

Aviso

relaxed matching should not be used on a shared server, for security reasons.

Dica

Leave this setting at the default strict setting unless you have good reason to change it.

pdo_odbc.db2_instance_name string

If you compile PDO_ODBC using the db2 flavour, this setting sets the value of the DB2INSTANCE environment variable on Linux and UNIX operating systems to the specified name of the DB2 instance. This enables PDO_ODBC to resolve the location of the DB2 libraries and make cataloged connections to DB2 databases.

This setting can only be changed from the php.ini file, and affects the entire process; any other modules loaded into the process that use the same ODBC libraries will be affected too, including the Unified ODBC extension.

This setting has no effect on Windows.

Índice

  • PDO_ODBC DSN — Connecting to ODBC or DB2 databases
PDO_OCI DSN
PDO_ODBC DSN
PDO Drivers


Connecting to ODBC or DB2 databases

ODBC and DB2 (PDO)
PostgreSQL (PDO)
ODBC and DB2 (PDO)
PHP Manual

PDO_ODBC DSN

(PECL PDO_ODBC >= 0.1.0)

PDO_ODBC DSN — Connecting to ODBC or DB2 databases

Descrição

The PDO_ODBC Data Source Name (DSN) is composed of the following elements:

DSN prefix

The DSN prefix is odbc:. If you are connecting to a database cataloged in the ODBC driver manager or the DB2 catalog, you can append the cataloged name of the database to the DSN.

DSN

The name of the database as cataloged in the ODBC driver manager or the DB2 catalog. Alternately, you can provide a complete ODBC connection string to connect to a database as described at » http://www.connectionstrings.com/.

UID

The name of the user for the connection. If you specify the user name in the DSN, PDO ignores the value of the user name argument in the PDO constructor.

PWD

The password of the user for the connection. If you specify the password in the DSN, PDO ignores the value of the password argument in the PDO constructor.

Exemplos

Exemplo #1 PDO_ODBC DSN example (ODBC driver manager)

The following example shows a PDO_ODBC DSN for connecting to an ODBC database cataloged as testdb in the ODBC driver manager:

odbc:testdb

Exemplo #2 PDO_ODBC DSN example (IBM DB2 uncataloged connection)

The following example shows a PDO_ODBC DSN for connecting to an IBM DB2 database named SAMPLE using the full ODBC DSN syntax:

odbc:DRIVER={IBM DB2 ODBC DRIVER};HOSTNAME=localhost;PORT=50000;DATABASE=SAMPLE;PROTOCOL=TCPIP;UID=db2inst1;PWD=ibmdb2;

Exemplo #3 PDO_ODBC DSN example (Microsoft Access uncataloged connection)

The following example shows a PDO_ODBC DSN for connecting to a Microsoft Access database stored at C:\db.mdb using the full ODBC DSN syntax:

odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\\db.mdb;Uid=Admin

ODBC and DB2 (PDO)
PostgreSQL (PDO)
ODBC and DB2 (PDO)


PostgreSQL Functions (PDO_PGSQL)

Introdução

PDO_PGSQL is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to PostgreSQL databases.

Tipos Resource

This extension defines a stream resource returned by PDO::pgsqlLOBOpen().

Instalação

Use --with-pdo-pgsql[=DIR] to install the PDO PostgreSQL extension, where the optional [=DIR] is the PostgreSQL base install directory, or the path to pg_config.

$ ./configure --with-pdo-pgsql

Índice

  • PDO_PGSQL DSN — Connecting to PostgreSQL databases
  • PDO::pgsqlLOBCreate — Creates a new large object
  • PDO::pgsqlLOBOpen — Opens an existing large object stream
  • PDO::pgsqlLOBUnlink — Deletes the large object
PDO_ODBC DSN
PDO_PGSQL DSN
PDO Drivers


Connecting to PostgreSQL databases

PostgreSQL (PDO)
PDO::pgsqlLOBCreate
PostgreSQL (PDO)
PHP Manual

PDO_PGSQL DSN

(PECL PDO_PGSQL >= 0.1.0)

PDO_PGSQL DSN — Connecting to PostgreSQL databases

Descrição

The PDO_PGSQL Data Source Name (DSN) is composed of the following elements, delimited by spaces or semicolons:

DSN prefix

The DSN prefix is pgsql:.

host

The hostname on which the database server resides.

port

The port on which the database server is running.

dbname

The name of the database.

user

The name of the user for the connection. If you specify the user name in the DSN, PDO ignores the value of the user name argument in the PDO constructor.

password

The password of the user for the connection. If you specify the password in the DSN, PDO ignores the value of the password argument in the PDO constructor.

Nota:

The bytea fields are returned as streams.

Exemplos

Exemplo #1 PDO_PGSQL DSN examples

The following example shows a PDO_PGSQL DSN for connecting to a PostgreSQL database:

pgsql:host=localhost;port=5432;dbname=testdb;user=bruce;password=mypass

PostgreSQL (PDO)
PDO::pgsqlLOBCreate
PostgreSQL (PDO)


Creates a new large object

PDO_PGSQL DSN
PDO::pgsqlLOBOpen
PostgreSQL (PDO)
PHP Manual

PDO::pgsqlLOBCreate

(PHP 5 >= 5.1.2, PECL pdo_pgsql >= 1.0.2)

PDO::pgsqlLOBCreate — Creates a new large object

Descrição

string PDO::pgsqlLOBCreate ( void )

PDO::pgsqlLOBCreate() creates a large object and returns the OID of that object. You may then open a stream on the object using PDO::pgsqlLOBOpen() to read or write data to it. The OID can be stored in columns of type OID and be used to reference the large object, without causing the row to grow arbitrarily large. The large object will continue to live in the database until it is removed by calling PDO::pgsqlLOBUnlink().

Large objects can be up to 2GB in size, but are cumbersome to use; you need to ensure that PDO::pgsqlLOBUnlink() is called prior to deleting the last row that references its OID from your database. In addition, large objects have no access controls. As an alternative, try the bytea column type; recent versions of PostgreSQL allow bytea columns of up to 1GB in size and transparently manage the storage for optimal row size.

Nota: This function must be called within a transaction.

Parâmetros

PDO::pgsqlLOBCreate() takes no parameters.

Valor Retornado

Returns the OID of the newly created large object on success, or FALSE on failure.

Exemplos

Exemplo #1 A PDO::pgsqlLOBCreate() example

This example creates a new large object and copies the contents of a file into it. The OID is then stored into a table.

<?php
$db = new PDO('pgsql:dbname=test host=localhost', $user, $pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->beginTransaction();
$oid = $db->pgsqlLOBCreate();
$stream = $db->pgsqlLOBOpen($oid, 'w');
$local = fopen($filename, 'rb');
stream_copy_to_stream($local, $stream);
$local = null;
$stream = null;
$stmt = $db->prepare("INSERT INTO BLOBS (ident, oid) VALUES (?, ?)");
$stmt->execute(array($some_id, $oid));
$db->commit();
?>

Veja Também

  • PDO::pgsqlLOBOpen() - Opens an existing large object stream
  • PDO::pgsqlLOBUnlink() - Deletes the large object
  • pg_lo_create() - Cria um objeto grande (large object)

PDO_PGSQL DSN
PDO::pgsqlLOBOpen
PostgreSQL (PDO)


Opens an existing large object stream

PDO::pgsqlLOBCreate
PDO::pgsqlLOBUnlink
PostgreSQL (PDO)
PHP Manual

PDO::pgsqlLOBOpen

(PHP 5 >= 5.1.2, PECL pdo_pgsql >= 1.0.2)

PDO::pgsqlLOBOpen — Opens an existing large object stream

Descrição

resource PDO::pgsqlLOBOpen ( string $oid [, string $mode = "rb" ] )

PDO::pgsqlLOBOpen() opens a stream to access the data referenced by oid. If mode is r, the stream is opened for reading, if mode is w, then the stream will be opened for writing. You can use all the usual filesystem functions, such as fread(), fwrite() and fgets() to manipulate the contents of the stream.

Nota: This function, and all manipulations of the large object, must be called and carried out within a transaction.

Parâmetros

oid

A large object identifier.

mode

If mode is r, open the stream for reading. If mode is w, open the stream for writing.

Valor Retornado

Returns a stream resource on success or FALSE on failure.

Exemplos

Exemplo #1 A PDO::pgsqlLOBOpen() example

Following on from the PDO::pgsqlLOBCreate() example, this code snippet retrieves the large object from the database and outputs it to the browser.

<?php
$db = new PDO('pgsql:dbname=test host=localhost', $user, $pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->beginTransaction();
$stmt = $db->prepare("select oid from BLOBS where ident = ?");
$stmt->execute(array($some_id));
$stmt->bindColumn('oid', $lob, PDO::PARAM_LOB);
$stmt->fetch(PDO::FETCH_BOUND);
fpassthru($lob);
?>

Veja Também

  • PDO::pgsqlLOBCreate() - Creates a new large object
  • PDO::pgsqlLOBUnlink() - Deletes the large object
  • pg_lo_open() - Abre um objeto grande (large object)

PDO::pgsqlLOBCreate
PDO::pgsqlLOBUnlink
PostgreSQL (PDO)


Deletes the large object

PDO::pgsqlLOBOpen
SQLite (PDO)
PostgreSQL (PDO)
PHP Manual

PDO::pgsqlLOBUnlink

(PHP 5 >= 5.1.2, PECL pdo_pgsql >= 1.0.2)

PDO::pgsqlLOBUnlink — Deletes the large object

Descrição

bool PDO::pgsqlLOBUnlink ( string $oid )

Deletes a large object from the database identified by OID.

Nota: This function must be called within a transaction.

Parâmetros

oid

A large object identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A PDO::pgsqlLOBUnlink() example

This example unlinks a large object from the database prior to deleting the row that references it from the blobs table we've been using in our PDO::pgsqlLOBCreate() and PDO::pgsqlLOBOpen() examples.

<?php
$db = new PDO('pgsql:dbname=test host=localhost', $user, $pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->beginTransaction();
$db->pgsqlLOBUnlink($oid);
$stmt = $db->prepare("DELETE FROM BLOBS where ident = ?");
$stmt->execute(array($some_id));
$db->commit();
?>

Veja Também

  • PDO::pgsqlLOBOpen() - Opens an existing large object stream
  • PDO::pgsqlLOBCreate() - Creates a new large object

PDO::pgsqlLOBOpen
SQLite (PDO)
PostgreSQL (PDO)


SQLite Functions (PDO_SQLITE)

Introdução

PDO_SQLITE is a driver that implements the PHP Data Objects (PDO) interface to enable access to SQLite 3 databases.

In PHP 5.1, the SQLite extension also provides a driver for SQLite 2 databases; while it is not technically a part of the PDO_SQLITE driver, it behaves similarly, so it is documented alongside it. The SQLite 2 driver for PDO is provided primarily to make it easier to import legacy SQLite 2 database files into an application that uses the faster, more efficient SQLite 3 driver. As a result, the SQLite 2 driver is not as feature-rich as the SQLite 3 driver.

Nota:

PDO_SQLITE allows using strings apart from streams together with PDO::PARAM_LOB.

Instalação

The PDO_SQLITE PDO driver is enabled by default. To disable, --without-pdo-sqlite[=DIR] may be used, where the optional [=DIR] is the sqlite base install directory.

Índice

  • PDO_SQLITE DSN — Connecting to SQLite databases
  • PDO::sqliteCreateAggregate — Registers an aggregating User Defined Function for use in SQL statements
  • PDO::sqliteCreateFunction — Registers a User Defined Function for use in SQL statements
PDO::pgsqlLOBUnlink
PDO_SQLITE DSN
PDO Drivers


Connecting to SQLite databases

SQLite (PDO)
PDO::sqliteCreateAggregate
SQLite (PDO)
PHP Manual

PDO_SQLITE DSN

(PECL PDO_SQLITE >= 0.2.0)

PDO_SQLITE DSN — Connecting to SQLite databases

Descrição

The PDO_SQLITE Data Source Name (DSN) is composed of the following elements:

DSN prefix (SQLite 3)

The DSN prefix is sqlite:.

  • To access a database on disk, append the absolute path to the DSN prefix.

  • To create a database in memory, append :memory: to the DSN prefix.

DSN prefix (SQLite 2)

The SQLite extension in PHP 5.1 provides a PDO driver that supports accessing and creating SQLite 2 databases. This enables you to access databases you may have created with the SQLite extension in previous versions of PHP.

Nota:

The sqlite2 driver is only available in PHP 5.1.x if you have enabled both PDO and ext/sqlite. It is not currently available via PECL.

The DSN prefix for connecting to SQLite 2 databases is sqlite2:.

  • To access a database on disk, append the absolute path to the DSN prefix.

  • To create a database in memory, append :memory: to the DSN prefix.

Exemplos

Exemplo #1 PDO_SQLITE DSN examples

The following examples show PDO_SQLITE DSN for connecting to SQLite databases:

sqlite:/opt/databases/mydb.sq3
sqlite::memory:
sqlite2:/opt/databases/mydb.sq2
sqlite2::memory:

SQLite (PDO)
PDO::sqliteCreateAggregate
SQLite (PDO)


Registers an aggregating User Defined Function for use in SQL statements

PDO_SQLITE DSN
PDO::sqliteCreateFunction
SQLite (PDO)
PHP Manual

PDO::sqliteCreateAggregate

(PHP 5 >= 5.1.0, PECL pdo_sqlite >= 1.0.0)

PDO::sqliteCreateAggregate — Registers an aggregating User Defined Function for use in SQL statements

Descrição

bool PDO::sqliteCreateAggregate ( string $function_name , callback $step_func , callback $finalize_func [, int $num_args ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

This method is similar to PDO::sqliteCreateFunction except that it registers functions that can be used to calculate a result aggregated across all the rows of a query.

The key difference between this method and PDO::sqliteCreateFunction is that two functions are required to manage the aggregate.

Parâmetros

function_name

The name of the function used in SQL statements.

step_func

Callback function called for each row of the result set. Your PHP function should accumulate the result and store it in the aggregation context.

This function need to be defined as:

step ( mixed $context , int $rownumber , mixed $value1 [, mixed $value2 [, mixed $.. ]] )

context will be NULL for the first row; on subsequent rows it will have the value that was previously returned from the step function; you should use this to maintain the aggregate state.

rownumber will hold the current row number.

finalize_func

Callback function to aggregate the "stepped" data from each row. Once all the rows have been processed, this function will be called and it should then take the data from the aggregation context and return the result. Callback functions should return a type understood by SQLite (i.e. scalar type).

This function need to be defined as:

fini ( mixed $context , int $rownumber )

context will hold the return value from the very last call to the step function.

rownumber will hold the number of rows over which the aggregate was performed.

The return value of this function will be used as the return value for the aggregate.

num_args

Hint to the SQLite parser if the callback function accepts a predetermined number of arguments.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 max_length aggregation function example

<?php
$data = array(
   'one',
   'two',
   'three',
   'four',
   'five',
   'six',
   'seven',
   'eight',
   'nine',
   'ten',
   );
$db = new PDO('sqlite::memory:');
$db->exec("CREATE TABLE strings(a)");
$insert = $db->prepare('INSERT INTO strings VALUES (?)');
foreach ($data as $str) {
    $insert->execute(array($str));
}
$insert = null;

function max_len_step(&$context, $rownumber, $string)
{
    if (strlen($string) > $context) {
        $context = strlen($string);
    }
    return $context;
}

function max_len_finalize(&$context, $rownumber)
{
    return $context;
}

$db->sqliteCreateAggregate('max_len', 'max_len_step', 'max_len_finalize');

var_dump($db->query('SELECT max_len(a) from strings')->fetchAll());

?>

In this example, we are creating an aggregating function that will calculate the length of the longest string in one of the columns of the table. For each row, the max_len_step function is called and passed a context parameter. The context parameter is just like any other PHP variable and be set to hold an array or even an object value. In this example, we are simply using it to hold the maximum length we have seen so far; if the string has a length longer than the current maximum, we update the context to hold this new maximum length.

After all of the rows have been processed, SQLite calls the max_len_finalize function to determine the aggregate result. Here, we could perform some kind of calculation based on the data found in the context. In our simple example though, we have been calculating the result as the query progressed, so we simply need to return the context value.

Dica

It is NOT recommended for you to store a copy of the values in the context and then process them at the end, as you would cause SQLite to use a lot of memory to process the query - just think of how much memory you would need if a million rows were stored in memory, each containing a string 32 bytes in length.

Dica

You can use PDO::sqliteCreateFunction and PDO::sqliteCreateAggregate to override SQLite native SQL functions.

Nota:

This method is not available with the SQLite2 driver. Use the old style sqlite API for that instead.

Veja Também

  • PDO::sqliteCreateFunction
  • sqlite_create_function() - Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
  • sqlite_create_aggregate() - Registra uma função agregada UDF para usar em SQLs

PDO_SQLITE DSN
PDO::sqliteCreateFunction
SQLite (PDO)


Registers a User Defined Function for use in SQL statements

PDO::sqliteCreateAggregate
4D (PDO)
SQLite (PDO)
PHP Manual

PDO::sqliteCreateFunction

(PHP 5 >= 5.1.0, PECL pdo_sqlite >= 1.0.0)

PDO::sqliteCreateFunction — Registers a User Defined Function for use in SQL statements

Descrição

bool PDO::sqliteCreateFunction ( string $function_name , callback $callback [, int $num_args ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

This method allows you to register a PHP function with SQLite as an UDF (User Defined Function), so that it can be called from within your SQL statements.

The UDF can be used in any SQL statement that can call functions, such as SELECT and UPDATE statements and also in triggers.

Parâmetros

function_name

The name of the function used in SQL statements.

callback

Callback function to handle the defined SQL function.

Nota: Callback functions should return a type understood by SQLite (i.e. scalar type).

num_args

Hint to the SQLite parser if the callback function accepts a predetermined number of arguments.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 PDO::sqliteCreateFunction() example

<?php
function md5_and_reverse($string)
{
    return strrev(md5($string));
}

$db = new PDO('sqlite:sqlitedb');
$db->sqliteCreateFunction('md5rev', 'md5_and_reverse', 1);
$rows = $db->query('SELECT md5rev(filename) FROM files')->fetchAll();
?>

In this example, we have a function that calculates the md5 sum of a string, and then reverses it. When the SQL statement executes, it returns the value of the filename transformed by our function. The data returned in $rows contains the processed result.

The beauty of this technique is that you do not need to process the result using a foreach loop after you have queried for the data.

Dica

You can use PDO::sqliteCreateFunction and PDO::sqliteCreateAggregate to override SQLite native SQL functions.

Nota:

This method is not available with the SQLite2 driver. Use the old style sqlite API for that instead.

Veja Também

  • PDO::sqliteCreateAggregate
  • sqlite_create_function() - Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
  • sqlite_create_aggregate() - Registra uma função agregada UDF para usar em SQLs

PDO::sqliteCreateAggregate
4D (PDO)
SQLite (PDO)


4D Functions (PDO_4D)

Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

PDO_4D is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to 4D databases.

4D is an integrated platform that speeds and simplifies the development and deployment of business applications, used in over 70 countries, by a community of thousands of developers and vertical solution providers, with millions of end-users worldwide.

By offering a suite of integrated tools such as an ANSI SQL relational and transactional database, a graphical development environment, a fourth-generation language with over 1000 high-level commands, a built-in HTTP server, application server, etc., 4D facilitates the creation and maintenance of applications from one to hundreds of simultaneous users, whether on Windows, Mac or from any Web client.

4D is also an open platform, offering a complete API for plug-in creation, including various connectors that allow it to act as a back-end or front-end for many environments (Oracle via OCI, SOAP client or server, Flex data source, all ODBC databases, XML over HTTP, etc.)

In addition to the ability to interact with 4D applications across Web Services, 4D databases can now be directly accessed using the PDO_4D driver.

More details about the 4D development environment on » http://www.4d.com/.

PDO_4D is known to work with 4D versions 12 beta and up, for Mac OS X and Windows. Older plat-forms may work, but are unsupported.

Índice

  • PDO_4D DSN — Connecting to 4D SQL server
  • Constants for PDO_4D — Constants for PDO_4D
  • SQL types with PDO_4D and PHP — SQL types with PDO_4D and PHP
  • SQL acceptable by 4D — PDO and SQL 4D
  • Examples with PDO_4D — Examples PDO_4D
PDO::sqliteCreateFunction
PDO_4D DSN
PDO Drivers


Connecting to 4D SQL server

4D (PDO)
Constants for PDO_4D
4D (PDO)
PHP Manual

PDO_4D DSN

(No version information available, might only be in SVN)

PDO_4D DSN — Connecting to 4D SQL server

Descrição

The PDO_4D DSN consists of:

DSN prefix

The DSN prefix is 4D:.

host

The host on which the 4D SQL server is.

port

The port number for the server. This is optional.

user

The login name when connecting to the database.

password

The password for the above login.

dbname

The name of the database. This parameter is optional, and it is not used.

charset

The 4D character set.

Exemplos

Exemplo #1 DSN examples for PDO_4D

The following examples has two DSN for PDO_4D, that connects to a 4D database :

4D:host=localhost;charset=UTF-8
Other possible values :
4D:host=localhost
4D:

4D (PDO)
Constants for PDO_4D
4D (PDO)


Constants for PDO_4D

(No version information available, might only be in SVN)

Constants for PDO_4D — Constants for PDO_4D

Constantes pré-definidas

As constantes abaixo são definidas por este driver, e somente estarão disponíveis quando esta extensão for compilada no PHP ou carregada dinamicamente em tempo de execução. Em adição, estas constantes especificas do drive somente devem ser usadas se você estive usando este drive. Usar atributos especificos do mysql com o driver postgree pode resultar em um funcionamento não esperado. PDO::getAttribute() deve ser usado para obter o atributo PDO_ATTR_DRIVER_NAME para se certificar do driver, se o seu código puder ser usado com vários drivers.

PDO::FOURD_ATTR_CHARSET (integer)

Change the charset in which 4D returns data. (Default is UTF-8).

PDO::FOURD_ATTR_PREFERRED_IMAGE_TYPES (integer)

The requested format of the image, when selecting a row with a column type PICTURE. It may be any type that 4D supports.

PDO_4D DSN
SQL types with PDO_4D and PHP
4D (PDO)


SQL types with PDO_4D and PHP

(No version information available, might only be in SVN)

SQL types with PDO_4D and PHP — SQL types with PDO_4D and PHP

Supported SQL types
Type SQL 4D | Equivalent 4D | Note
ALPHA_NUMERIC | TEXT |
VARCHAR | TEXT |
TEXT | TEXT |
TIMESTAMP | DATE |
INTERVAL | HOUR |
DURATION | HOUR |
BOOLEAN | BOOLEAN |
BIT | BOOLEAN |
BYTE | INT32 |
INT16 | SMALLINT |
SMALLINT | SMALLINT |
INT32 | INT32 |
INT | INT32 |
INT64 | INT64 |
NUMERIC | INT64 |
REAL | REAL | Unsupported (use VARCHAR conversion)
FLOAT | FLOAT | Unsupported (use VARCHAR conversion)
DOUBLE PRECISION | FLOAT |
BLOB | BLOB | Must use a prepared statement, and PDO::PARAM_LOB
BIT VARYING | BLOB | Must use a prepared statement, and PDO::PARAM_LOB
CLOB | TEXT |
PICTURE | PICTURE | Must use a prepared statement, and PDO::PARAM_LOB

Constants for PDO_4D
SQL acceptable by 4D
4D (PDO)


PDO and SQL 4D

SQL types with PDO_4D and PHP
Examples with PDO_4D
4D (PDO)
PHP Manual

SQL acceptable by 4D

(No version information available, might only be in SVN)

SQL acceptable by 4D — PDO and SQL 4D

Descrição

4D implements strictly the ANSI 89 standard, and have it enforced. It is highly recommended to read the 4D SQL documentation to learn about the available commands. The URL of the manual is : » http://doc.4d.com/. Below is a list of 4D SQL characteristics: it is not exhaustive, but may serve as an introduction.

Characteristics of 4D SQL
Characteristics | Alternative | Note
INTEGER | Modify the SQL to use INT. | INT is the supported integer type in 4Dv12.0.
CHAR | Use VARCHAR instead. | Unsupported in 4Dv12.0
UNION | Unsupported. Make separate queries. | Unsupported in 4Dv12.0
SELECT 1 + 1; | SELECT 1 + 1 FROM _USER_SCHEMAS; | FROM is required
FLOAT | Cast the FLOAT value into a FLOAT or STRING, with an SQL 4D function (CAST, ROUND, TRUNC or TRUNCATE) | Unsupported in current versions of the PDO_4D driver
Strong typing | Take care your SQL query, or your PHP code provides data with the expected type | One must provide the right type that 4D expect. One can't insert '1' (as a string) in an INTEGER column.
PDO::execute($row)() : only works if all the table's column are of type TEXT or VARCHAR | Use the prepared statements, and use the right types. | The PDO extension cast all values through execute() as string, and expect the SQL database to parse the values.
SELECT NULL FROM TABLE | Do not use NULL constants. Extract them from the table | It is not allowed to use the NULL constant in the select list
SELECT * FROM TABLE WHERE 1 | Use WHERE 1 = 1 | A constant can't be used in a WHERE clause
SHOW TABLES | Use system tables | The list of tables, schemas, index, etc. are in these system tables : _USER_TABLES, _USER_COLUMNS, _USER_INDEXES, _USER_CONSTRAINTS, _USER_IND_COLUMNS, _USER_CONS_COLUMNS, and _USER_SCHEMAS.
SQL structure delimiter | Use the following function to protect SQL elements: function sqlEscapeElement(elem) { return '[' . str_replace(']',']]', $elem) . ']'; } | To escape SQL elements names (tables, fields, users, groups, schema, primary key, etc.), the whole identifier must be between square brackets, and the closing brackets ']' must be doubled.

SQL types with PDO_4D and PHP
Examples with PDO_4D
4D (PDO)


Examples PDO_4D

SQL acceptable by 4D
Vendor Specific Database Extensions
4D (PDO)
PHP Manual

Examples with PDO_4D

(No version information available, might only be in SVN)

Examples with PDO_4D — Examples PDO_4D

This basic example show how to connect, execute a query, read data and disconnect from a 4D SQL server.

Exemplo #1 Basic example with PDO_4D

<?php
$dsn = '4D:host=localhost;charset=UTF-8';
$user = 'test';
$pass = 'test';

// Connection to the 4D SQL server
$db = new PDO($dsn, $user, $pass);

try {
    $db->exec('CREATE TABLE test(id varCHAR(1) NOT NULL, val VARCHAR(10))');
} catch (PDOException $e) {
    die("Erreur 4D : " . $e->getMessage());
}

$db->exec("INSERT INTO test VALUES('A', 'A')");
$db->exec("INSERT INTO test VALUES('B', 'A')");
$db->exec("INSERT INTO test VALUES('C', 'C')");

$stmt = $db->prepare('SELECT id, val from test');

$stmt->execute();
print_r($stmt->fetchAll());

unset($stmt);
unset($db);
?>

O exemplo acima irá imprimir:

    Array
(
    [0] => Array
        (
            [ID] => A
            [0] => A
            [VAL] => B
            [1] => B
        )

    [1] => Array
        (
            [ID] => C
            [0] => C
            [VAL] => D
            [1] => D
        )

    [2] => Array
        (
            [ID] => E
            [0] => E
            [VAL] => F
            [1] => F
        )

)

This example shows how to execute a query in 4D language, and how to read the result through PDO_4D.

Exemplo #2 Accessing 4D language from pdo_4d

Set up a 4D method, called method. Make sure in the method properties that the option Available via SQL is checked. The 4D code is the following.

C_TEXTE($0)
$0:=Version application(*);

The PHP code to use the above 4D method is :

<?php
$dsn = '4D:host=localhost;charset=UTF-8';
$user = 'test';
$pass = 'test';

// Connection to the 4D server
$db = new PDO($dsn, $user, $pass);

$stmt = $db->prepare('SELECT {FN method() AS VARCHAR } FROM _USER_SCHEMAS LIMIT 1');

$stmt->execute();
print_r($stmt->fetchAll());

unset($stmt);
unset($db);
?>

O exemplo acima irá imprimir:

(
    [0] => Array
        (
            [<expression>] => F0011140
            [0] => F0011140
        )

)

Exemplo #3 Escaping 4D table names

This examples illustrates how to escape characters in a 4D SQL query.

<?php
$dsn = '4D:host=localhost;charset=UTF-8';
$user = 'test';
$pass = 'test';

// Connection to 4D server 4D
$db = new PDO($dsn, $user, $pass);

$objects = array('[',']','[]','][','[[',']]','[[[',']]]','TBL ]]32[23');

foreach($objects as $id => $object) {
    $object = str_replace(']',']]', $object);
    print "$object\n";

    $db->exec('CREATE TABLE IF NOT EXISTS ['.$object.'](['.$object.'] FLOAT)');

    $req = "INSERT INTO [$object] ([$object]) VALUES ($id);";
    $db->query($req);

    $q = $db->prepare("SELECT [$object] FROM [$object]");
    $q->execute();
    $x[] = $q->fetch(PDO::FETCH_NUM);

    $db->exec('DROP TABLE ['.$object.'];');
}

?>

O exemplo acima irá imprimir:

[
]]
[]]
]][
[[
]]]]
[[[
]]]]]]
TBL ]]]]32[23

SQL acceptable by 4D
Vendor Specific Database Extensions
4D (PDO)


Vendor Specific Database Extensions

  • CUBRID
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • CUBRID Funções
    • CUBRID MySQL Compatibility Functions
    • CUBRID Obsolete Aliases and Functions
  • dBase
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da dBase
  • DB++
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • DB++ Funções
  • FrontBase
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • FrontBase Funções
  • filePro
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da filePro
  • Firebird/InterBase
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Firebird/InterBase
  • Informix
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Informix Funções
  • IBM DB2 — IBM DB2, Cloudscape and Apache Derby
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • IBM DB2 Funções
  • Ingres — Ingres DBMS, EDBC, and Enterprise Access Gateways
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Ingres Funções
  • MaxDB
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • MaxDB Funções
  • Mongo — MongoDB Native Driver
    • Manual
    • Core Classes
    • Types
    • GridFS Classes
    • Functions
    • Exceptions
  • mSQL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para mSQL
  • Mssql — Microsoft SQL Server
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Mssql
  • MySQL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da MySQL
  • Mysqli — Extensão MySQL Melhorada
    • Introdução
    • Overview
    • Instalação/Configuração
    • Constantes pré-definidas
    • The MySQLi Extension Function Summary
    • MySQLi — A classe MySQLi
    • MySQLi_STMT — A classe MySQLi_STMT
    • MySQLi_Result — A classe MySQLi_Result
    • MySQLi_Driver — The MySQLi_Driver class
    • Apelidos e Funções obsoletas da Mysqli
  • Mysqlnd — MySQL Native Driver
    • Introdução
    • Overview
    • Installation
    • Configurações em Execução
    • Persistent Connections
    • Statistics
    • Notes
    • MySQL Native Driver Plugin API
  • mysqlnd_qc — Mysqlnd query result cache plugin
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • mysqlnd_qc Funções
  • OCI8 — Oracle OCI8
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Connecting Handling
    • Supported Datatypes
    • Funções para OCI8
  • Ovrimos SQL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções do Ovrimos SQL
  • Paradox — Paradox File Access
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Paradox Funções
  • PostgreSQL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • PostgreSQL Funções
  • SQLite
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • SQLite Funções
  • SQLite3
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • SQLite3 — The SQLite3 class
    • SQLite3Stmt — The SQLite3Stmt class
    • SQLite3Result — The SQLite3Result class
  • Sybase
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Sybase
  • tokyo_tyrant
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • TokyoTyrant — The TokyoTyrant class
    • TokyoTyrantTable — The TokyoTyrantTable class
    • TokyoTyrantQuery — The TokyoTyrantQuery class
Examples with PDO_4D
CUBRID
Extensões de Banco de Dados


CUBRID

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • CUBRID Funções
    • cubrid_affected_rows — Return the number of rows affected by the last SQL statement
    • cubrid_bind — Bind variables to a prepared statement as parameters
    • cubrid_close_prepare — Close the request handle
    • cubrid_close_request — Close the request handle
    • cubrid_col_get — Get contents of collection type column using OID
    • cubrid_col_size — Get the number of elements in collection type column using OID
    • cubrid_column_names — Get the column names in result
    • cubrid_column_types — Get column types in result
    • cubrid_commit — Commit a transaction
    • cubrid_connect_with_url — Establish the environment for connecting to CUBRID server
    • cubrid_connect — Open a connection to a CUBRID Server
    • cubrid_current_oid — Get OID of the current cursor location
    • cubrid_disconnect — Close a database connection
    • cubrid_drop — Delete an instance using OID
    • cubrid_error_code_facility — Get the facility code of error
    • cubrid_error_code — Get error code for the most recent function call
    • cubrid_error_msg — Get last error message for the most recent function call
    • cubrid_execute — Execute a prepared SQL statement
    • cubrid_fetch — Fetch the next row from a result set
    • cubrid_free_result — Free the memory occupied by the result data
    • cubrid_get_charset — Return the current CUBRID connection charset
    • cubrid_get_class_name — Get the class name using OID
    • cubrid_get_client_info — Return the client library version
    • cubrid_get_db_parameter — Returns the CUBRID database parameters
    • cubrid_get_server_info — Return the CUBRID server version
    • cubrid_get — Get a column using OID
    • cubrid_insert_id — Return an array with the IDs generated for the AUTO_INCREMENT columns
    • cubrid_is_instance — Check whether the instance pointed by OID exists
    • cubrid_lob_close — Close BLOB/CLOB data
    • cubrid_lob_export — Export BLOB/CLOB data to file
    • cubrid_lob_get — Get BLOB/CLOB data
    • cubrid_lob_send — Read BLOB/CLOB data and send straight to browser
    • cubrid_lob_size — Get BLOB/CLOB data size
    • cubrid_lock_read — Set a read lock on the given OID
    • cubrid_lock_write — Set a write lock on the given OID
    • cubrid_move_cursor — Move the cursor in the result
    • cubrid_num_cols — Return the number of columns in the result set
    • cubrid_num_rows — Get the number of rows in the result set
    • cubrid_prepare — Prepare an SQL statement for execution
    • cubrid_put — Update a column using OID
    • cubrid_rollback — Roll back a transaction
    • cubrid_schema — Get the requested schema information
    • cubrid_seq_drop — Delete an element from sequence type column using OID
    • cubrid_seq_insert — Insert an element to a sequence type column using OID
    • cubrid_seq_put — Update the element value of sequence type column using OID
    • cubrid_set_add — Insert a single element to set type column using OID
    • cubrid_set_drop — Delete an element from set type column using OID
    • cubrid_version — Get the CUBRID PHP module's version
  • CUBRID MySQL Compatibility Functions
    • cubrid_client_encoding — Return the current CUBRID connection charset
    • cubrid_close — Close CUBRID connection
    • cubrid_data_seek — Move the internal row pointer of the CUBRID result
    • cubrid_db_name — Get db name from results of cubrid_list_dbs
    • cubrid_errno — Return the numerical value of the error message from previous CUBRID operation
    • cubrid_error — Get the error message
    • cubrid_fetch_array — Fetch a result row as an associative array, a numeric array, or both
    • cubrid_fetch_assoc — Return the associative array that corresponds to the fetched row
    • cubrid_fetch_field — Get column information from a result and return as an object
    • cubrid_fetch_lengths — Return an array with the lengths of the values of each field from the current row
    • cubrid_fetch_object — Fetche the next row and returns it as an object
    • cubrid_fetch_row — Return a numerical array with the values of the current row
    • cubrid_field_flags — Return a string with the flags of the given field offset
    • cubrid_field_len — Get the maximum length of the specified field
    • cubrid_field_name — Return the name of the specified field index
    • cubrid_field_seek — Move the result set cursor to the specified field offset
    • cubrid_field_table — Return the name of the table of the specified field
    • cubrid_field_type — Return the type of the column corresponding to the given field offset
    • cubrid_list_dbs — Return an array with the list of all existing CUBRID databases
    • cubrid_num_fields — Return the number of columns in the result set
    • cubrid_ping — Ping a server connection or reconnect if there is no connection
    • cubrid_query — Send a CUBRID query
    • cubrid_real_escape_string — Escape special characters in a string for use in an SQL statement
    • cubrid_result — Return the value of a specific field in a specific row
    • cubrid_unbuffered_query — Perform a query without fetching the results into memory
  • CUBRID Obsolete Aliases and Functions
    • cubrid_load_from_glo — Read data from a GLO instance and save it in a file
    • cubrid_new_glo — Create a glo instance
    • cubrid_save_to_glo — Save requested file in a GLO instance
    • cubrid_send_glo — Read data from glo and send it to std output
Vendor Specific Database Extensions
Introdução
Vendor Specific Database Extensions


Introdução

These functions allow you to access CUBRID database servers. More information about CUBRID can be found at » CUBRID.

Documentation for CUBRID can be found at » CUBRID Documentation.

CUBRID
Instalação/Configuração
CUBRID


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
CUBRID


Dependências

In order to have these functions available, you must install CUBRID, and compile CUBRID PHP Library with CUBRID support.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/cubrid.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

For information about manual installation on Linux and Windows systems, please read the file build-guide.html included in the package.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

There is no runtime configuration now.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

There are three resource types used in CUBRID. The first one is the link identifier for a database connection, the second is the a resource which holds the result of a query, and the third a resource which holds the query results of BLOB/CLOB data types.

connection identifier

A connection identifier returned by cubrid_connect() and cubrid_connect_with_url().

request identifier

A request identifier returned by cubrid_prepare() and cubrid_execute().

LOB identifier

A LOB identifier returned by cubrid_lob_get().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The following constants can be used when executing SQL statement. They can be passed to cubrid_prepare() and cubrid_execute().

CUBRID SQL execution flags
Constant | Description
CUBRID_INCLUDE_OID | Determine whether to get OID during query execution.
CUBRID_ASYNC | Execute the query in asynchronous mode.

The following constants can be used when fetching the results to specify fetch behaviour. They can be passed to cubrid_fetch() and cubrid_fetch_array().

CUBRID fetch flags
Constant | Description
CUBRID_NUM | Get query result as a numeric array (0-default).
CUBRID_ASSOC | Get query result as an associative array.
CUBRID_BOTH | Get query result as both numeric and associative arrays (default value).
CUBRID_OBJECT | Get query result an object.

The following constants can be used when positioning the cursor in query results. They can be passed to or returned by cubrid_move_cursor().

CUBRID cursor position flags
Constant | Description
CUBRID_CURSOR_FIRST | Move current cursor to the first position in the result.
CUBRID_CURSOR_CURRENT | Move current cursor as a default value if the origin is not specified.
CUBRID_CURSOR_LAST | Move current cursor to the last position in the result.
CUBRID_CURSOR_SUCCESS | Returned value of cubrid_move_cursor() function in case of success.
CUBRID_NO_MORE_DATA | Returned value of cubrid_move_cursor() function in case of failure.
CUBRID_CURSOR_ERROR | Returned value of cubrid_move_cursor() function in case of failure.

The following constants can be used when getting schema information. They can be passed to cubrid_schema().

CUBRID schema flags
Constant | Description
CUBRID_SCH_CLASS | Get name and type of table in CUBRID.
CUBRID_SCH_VCLASS | Get name and type of view in CUBRID.
CUBRID_SCH_QUERY_SPEC | Get the query definition of view.
CUBRID_SCH_ATTRIBUTE | Get the attributes of table column.
CUBRID_SCH_CLASS_ATTRIBUTE | Get the attributes of table.
CUBRID_SCH_METHOD | Get the instance method. The instance method is a method called by a class instance. It is used more often than the class method because most operations are executed in the instance.
CUBRID_SCH_CLASS_METHOD | Get the class method. The class method is a method called by a class object. It is usually used to create a new class instance or to initialize it. It is also used to access or update class attributes.
CUBRID_SCH_METHOD_FILE | Get the information of the file where the method of the table is defined.
CUBRID_SCH_SUPERCLASS | Get the name and type of table which table inherites attributes from.
CUBRID_SCH_SUBCLASS | Get the name and type of table which inherites attributes from this table.
CUBRID_SCH_CONSTRAINT | Get the table constraints.
CUBRID_SCH_TRIGGER | Get the table triggers.
CUBRID_SCH_CLASS_PRIVILEGE | Get the privilege information of table.
CUBRID_SCH_ATTR_PRIVILEGE | Get the privilege information of column.
CUBRID_SCH_DIRECT_SUPER_CLASS | Get the direct super table of table.
CUBRID_SCH_PRIMARY_KEY | Get the table primary key.
CUBRID_SCH_IMPORTED_KEYS | Get imported keys of table.
CUBRID_SCH_EXPORTED_KEYS | Get exported keys of table.
CUBRID_SCH_CROSS_REFERENCE | Get reference relationship of tow tables.

The following constants can be used when reporting errors. They can be returned from cubrid_error_code_facility().

CUBRID error facility code
Constant | Description
CUBRID_FACILITY_DBMS | The error occured in CUBRID dbms.
CUBRID_FACILITY_CAS | The error occured in CUBRID broker cas.
CUBRID_FACILITY_CCI | The error occured in CUBRID cci.
CUBRID_FACILITY_CLIENT | The error occured in CUBRID PHP client.

Tipos Resource
Exemplos
CUBRID


Exemplos

The following is a simple example that establishes a connection between PHP and CUBRID. This section will cover the most basic and notable features. The following code required to connect to CUBRID database, which means CUBRID Server and CUBRID Broker have to be running.

The example below uses the demodb database as an examples. By default it is created during the installation. Make sure it has been created.

Exemplo #1 Example of Data Retrieval

<html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=euc-kr">
    </head>
    <body>
    <center>
    <table border=2>
    <?php
        /**
         * Set server information for CUBRID connection. host_ip is the IP
         * address where the CUBRID Broker is installed (localhost in this
         * example), and host_port is the port number of the CUBRID Broker.
         * The port number is the default given during the installation.
         * For details, see "Administrator's Guide."
         */
        $host_ip = "localhost";
        $host_port = 33000;
        $db_name = "demodb";
        /**
         * Connect to CUBRID Server. Do not make the actual connection, but
         * only retain the connection information. The reason for not making
         * the actual connection is to handle transaction more efficiently
         * in the 3-tier architecture.
         */
        $cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);

        if (!$cubrid_con) {
            echo "Database Connection Error";
            exit;
        }
    ?>
    <?php
        $sql = "select sports, count(players) as players from event group by sports";
        /**
         * Request the CUBRID Server for the results of the SQL statement.
         * Now make the actual connection to the CUBRID Server.
         */
        $result = cubrid_execute($cubrid_con, $sql);

        if ($result) {
            /**
             * Get the column names from the result set created by the SQL query.
             */
            $columns = cubrid_column_names($result);
            /**
             * Get the number of columns in the result set created by the SQL query.
             */
            $num_fields = cubrid_num_cols($result);
            /**
             * List the column names of the result set on the screen.
             */
            echo("<tr>");

            while (list($key, $colname) = each($columns)) {
                echo("<td align=center>$colname</td>");
            }

            echo("</tr>");

            /**
             * Get the results from the result set.
             */
            while ($row = cubrid_fetch($result)) {
                echo("<tr>");

                for ($i = 0; $i < $num_fields; $i++) {
                    echo("<td align=center>");
                    echo($row[$i]);
                    echo("</td>");
                }

                echo("</tr>");
            }
        }
        /**
         * The PHP module in the CUBRID runs in a 3-tier architecture. Even when
         * calling SELECT for transaction processing, it is processed as a part
         * of the transaction. Therefore, the transaction needs to be rolled back
         * by calling commit or rollback even though SELECT was called for smooth
         * performance.
         */
        cubrid_commit($cubrid_con);
        cubrid_disconnect($cubrid_con);
    ?>
    </body>
    </html>

Exemplo #2 Example of Data Insertion

<html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=euc- kr">
    </head>
    <body>
    <center>
    <table border=2>
    <?php
        /**
         * host_ip is the IP address where the CUBRID Broker is installed
         * host_port is the port number of the CUBRID Broker
         * db_name is the name of CUBRID Database
         */
        $host_ip = "localhost";
        $host_port = 33000;
        $db_name = "demodb";
        $cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);

        if (!$cubrid_con) {
            echo "Database Connection Error";
            exit;
        }
    ?>
    <?php
        $sql = "insert into olympic (host_year,host_nation,host_city,"
            . "opening_date,closing_date) values (2008, 'China', 'Beijing',"
            . "to_date('08-08-2008','mm-dd- yyyy'),to_date('08-24-2008','mm-dd-yyyy')) ;"
        $result = cubrid_execute($cubrid_con, $sql);
        if ($result) {
            /**
             * Handled successfully, so commit.
             */
            cubrid_commit($cubrid_con);
            echo("Inserted successfully ");
        } else {
            /**
             * Error occurred, so the error message is output and rollback is called.
             */
            echo(cubrid_error_msg());
            cubrid_rollback($cubrid_con);
        }
        cubrid_disconnect($cubrid_con);
    ?>
    </body>
    </html>
Constantes pré-definidas
CUBRID Funções
CUBRID


CUBRID Funções

Índice

  • cubrid_affected_rows — Return the number of rows affected by the last SQL statement
  • cubrid_bind — Bind variables to a prepared statement as parameters
  • cubrid_close_prepare — Close the request handle
  • cubrid_close_request — Close the request handle
  • cubrid_col_get — Get contents of collection type column using OID
  • cubrid_col_size — Get the number of elements in collection type column using OID
  • cubrid_column_names — Get the column names in result
  • cubrid_column_types — Get column types in result
  • cubrid_commit — Commit a transaction
  • cubrid_connect_with_url — Establish the environment for connecting to CUBRID server
  • cubrid_connect — Open a connection to a CUBRID Server
  • cubrid_current_oid — Get OID of the current cursor location
  • cubrid_disconnect — Close a database connection
  • cubrid_drop — Delete an instance using OID
  • cubrid_error_code_facility — Get the facility code of error
  • cubrid_error_code — Get error code for the most recent function call
  • cubrid_error_msg — Get last error message for the most recent function call
  • cubrid_execute — Execute a prepared SQL statement
  • cubrid_fetch — Fetch the next row from a result set
  • cubrid_free_result — Free the memory occupied by the result data
  • cubrid_get_charset — Return the current CUBRID connection charset
  • cubrid_get_class_name — Get the class name using OID
  • cubrid_get_client_info — Return the client library version
  • cubrid_get_db_parameter — Returns the CUBRID database parameters
  • cubrid_get_server_info — Return the CUBRID server version
  • cubrid_get — Get a column using OID
  • cubrid_insert_id — Return an array with the IDs generated for the AUTO_INCREMENT columns
  • cubrid_is_instance — Check whether the instance pointed by OID exists
  • cubrid_lob_close — Close BLOB/CLOB data
  • cubrid_lob_export — Export BLOB/CLOB data to file
  • cubrid_lob_get — Get BLOB/CLOB data
  • cubrid_lob_send — Read BLOB/CLOB data and send straight to browser
  • cubrid_lob_size — Get BLOB/CLOB data size
  • cubrid_lock_read — Set a read lock on the given OID
  • cubrid_lock_write — Set a write lock on the given OID
  • cubrid_move_cursor — Move the cursor in the result
  • cubrid_num_cols — Return the number of columns in the result set
  • cubrid_num_rows — Get the number of rows in the result set
  • cubrid_prepare — Prepare an SQL statement for execution
  • cubrid_put — Update a column using OID
  • cubrid_rollback — Roll back a transaction
  • cubrid_schema — Get the requested schema information
  • cubrid_seq_drop — Delete an element from sequence type column using OID
  • cubrid_seq_insert — Insert an element to a sequence type column using OID
  • cubrid_seq_put — Update the element value of sequence type column using OID
  • cubrid_set_add — Insert a single element to set type column using OID
  • cubrid_set_drop — Delete an element from set type column using OID
  • cubrid_version — Get the CUBRID PHP module's version
Exemplos
cubrid_affected_rows
CUBRID


Return the number of rows affected by the last SQL statement

CUBRID Funções
cubrid_bind
CUBRID Funções
PHP Manual

cubrid_affected_rows

(PECL CUBRID >= 8.3.0)

cubrid_affected_rows — Return the number of rows affected by the last SQL statement

Descrição

int cubrid_affected_rows ([ resource $req_identifier ] )

The cubrid_affected_rows() function is used to get the number of rows affected by the SQL sentence (INSERT, DELETE, UPDATE).

Parâmetros

req_identifier

Request identifier. If the request identifier is not specified, the last request is assumed.

Valor Retornado

Number of rows affected by the SQL sentence, when process is successful.

-1, when SQL sentence is not INSERT, DELETE or UPDATE.

FALSE, when the request identifier is not specified, and there is no last request.

Exemplos

Exemplo #1 cubrid_affected_rows() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE cubrid_test");
cubrid_execute($conn, "CREATE TABLE cubrid_test (t varchar)");

for ($i = 0; $i < 5; $i++) {
    cubrid_execute($conn, "INSERT INTO cubrid_test(t) VALUES('cubrid_test')");
}

cubrid_execute($conn, "DELETE FROM cubrid_test");

$affected_num = cubrid_affected_rows();
var_dump($affected_num);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

int(5)

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

CUBRID Funções
cubrid_bind
CUBRID Funções


Bind variables to a prepared statement as parameters

cubrid_affected_rows
cubrid_close_prepare
CUBRID Funções
PHP Manual

cubrid_bind

(PECL CUBRID >= 8.3.0)

cubrid_bind — Bind variables to a prepared statement as parameters

Descrição

bool cubrid_bind ( resource $req_identifier , int $bind_index , string $bind_value [, string $bind_value_type ] )

The cubrid_bind() function is used to bind values in a cubrid_prepare() variable, a various types in PHP and corresponding types in SQL. If bind_value_type is not given, string will be the default.

Nota:

Known issue: If column data type is CLOB, binding parameter will fail. This bug will fixed later.

The following table shows the types of substitute values.

CUBRID Bind Date Types
Support | Bind Type | Corresponding SQL Type
Supported | STRING | CHAR, VARCHAR
 | NCHAR | NCHAR, NVARCHAR
 | BIT | BIT, VARBIT
 | NUMERIC or NUMBER | SHORT, INT, NUMERIC
 | FLOAT | FLOAT
 | DOUBLE | DOUBLE
 | TIME | TIME
 | DATE | DATE
 | TIMESTAMP | TIMESTAMP
 | OBJECT | OBJECT
 | BLOB | BLOB
 | CLOB | CLOB
 | NULL | NULL
Not supported | SET | SET
 | MULTISET | MULTISET
 | SEQUENCE | SEQUENCE

Parâmetros

req_identifier

Request identifier as a result of cubrid_prepare().

bind_index

Index for binding.

bind_value

Actual value for binding.

bind_index

A type of the value to bind. (It is omitted by default. Thus, system internally use string by default. However, you need to specify the exact type of the value as an argument when they are NCHAR, BIT, or BLOB/CLOB).

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Histórico

Versão | Descrição
8.3.1 | Added BLOB/CLOB data types support.

Exemplos

Exemplo #1 cubrid_bind() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$result = cubrid_execute($conn, "SELECT code FROM event WHERE sports='Basketball' and gender='M'");
$row = cubrid_fetch_array($result, CUBRID_ASSOC);
$event_code = $row["code"];

cubrid_close_request($result);

$game_req = cubrid_prepare($conn, "SELECT athlete_code FROM game WHERE host_year=1992 and event_code=? and nation_code='USA'");
cubrid_bind($game_req, 1, $event_code, "number");
cubrid_execute($game_req);

printf("--- Dream Team (1992 United States men's Olympic basketball team) ---\n");
while ($athlete_code = cubrid_fetch_array($game_req, CUBRID_NUM)) {
    $athlete_req = cubrid_prepare($conn, "SELECT name FROM athlete WHERE code=? AND nation_code='USA' AND event='Basketball' AND gender='M'");
    cubrid_bind($athlete_req, 1, $athlete_code[0], "number");
    cubrid_execute($athlete_req);
    $row = cubrid_fetch_assoc($athlete_req);
    printf("%s\n", $row["name"]);
}

cubrid_close_request($game_req);
cubrid_close_request($athlete_req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

--- Dream Team (1992 United States men's Olympic basketball team) ---
Stockton John
Robinson David
Pippen Scottie
Mullin C.
Malone Karl
Laettner C.
Jordan Michael
Johnson Earvin
Ewing Patrick
Drexler Clyde
Bird Larry
Barkley Charles

Exemplo #2 cubrid_bind() BLOB/CLOB example

<?php
$con = cubrid_connect("localhost", 33000, "foo");
if ($con) {
    $sql = "INSERT INTO php_cubrid_lob_test(doc_content) VALUES(?)";
    $req = cubrid_prepare($con, $sql);

    $fp = fopen("book.txt", "rb");

    cubrid_bind($req, 1, $fp, "blob");
    cubrid_execute($req);
}
?>

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_prepare() - Prepare an SQL statement for execution

cubrid_affected_rows
cubrid_close_prepare
CUBRID Funções


Close the request handle

cubrid_bind
cubrid_close_request
CUBRID Funções
PHP Manual

cubrid_close_prepare

(PECL CUBRID >= 8.3.0)

cubrid_close_prepare — Close the request handle

Descrição

int cubrid_close_prepare ( resource $req_identifier )

The cubrid_close_prepare() function closes the request handle given by the req_identifier argument, and releases the memory region related to the handle.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_close_prepare() example

<?php
$con = cubrid_connect ("dbsvr.cubrid.com", 12345, "demodb");
if ($con) {
   echo "connected successfully";
   $req = cubrid_execute ( $con, "select * from members",
                           CUBRID_INCLUDE_OID | CUBRID_ASYNC);
   if ($req) {
      while ( list ($id, $name) = cubrid_fetch ($req) ){
         echo $id;
         echo $name;
      }
      cubrid_close_prepare($re1);
   }
   cubrid_disconnect($con);
}
?>

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_bind
cubrid_close_request
CUBRID Funções


Close the request handle

cubrid_close_prepare
cubrid_col_get
CUBRID Funções
PHP Manual

cubrid_close_request

(PECL CUBRID >= 8.3.0)

cubrid_close_request — Close the request handle

Descrição

bool cubrid_close_request ( resource $req_identifier )

The cubrid_close_request() function closes the request handle given by the req_identifier argument, and releases the memory region related to the handle.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_close_request() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_prepare ($conn, "SELECT * FROM olympic WHERE host_year=?");

$host_year = 2004;
cubrid_bind($req, 1, $host_year, "number");
cubrid_execute($req);

printf("%-9s %-11s %-9s %-12s %-12s %-15s %-15s\n",
    "host_year", "host_nation", "host_city", "opening_date",
    "closing_date", "mascot", "slogan");

while ($row = cubrid_fetch_assoc($req)) {
    printf("%-9s %-11s %-9s %-12s %-12s %-15s %-15s\n",
        $row["host_year"], $row["host_nation"], $row["host_city"],
        $row["opening_date"], $row["closing_date"], $row["mascot"], $row["slogan"]);
}

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

host_year host_nation host_city opening_date closing_date mascot          slogan
2004      Greece      Athens    2004-8-13    2004-8-29    Athena  Phevos  Welcome Home

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_close_prepare
cubrid_col_get
CUBRID Funções


Get contents of collection type column using OID

cubrid_close_request
cubrid_col_size
CUBRID Funções
PHP Manual

cubrid_col_get

(PECL CUBRID >= 8.3.0)

cubrid_col_get — Get contents of collection type column using OID

Descrição

array cubrid_col_get ( resource $conn_identifier , string $oid , string $attr_name )

The cubrid_col_get() function is used to get contents of the elements of the collection type (set, multiset, sequence) attribute you requested as an array.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to read.

attr_name

Attribute name that you want to read from the instance.

Valor Retornado

Array (0-based numerical array) containing the elements you requested, when process is successful;

FALSE (to distinguish the error from the situation of attribute having empty collection or NULL, in case of error, a warning message is shown; in such case you can check the error by using cubrid_error_code()), when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_col_get() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

$size = cubrid_col_size($conn, $oid, "b");
var_dump($size);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
int(3)
cubrid_close_request
cubrid_col_size
CUBRID Funções


Get the number of elements in collection type column using OID

cubrid_col_get
cubrid_column_names
CUBRID Funções
PHP Manual

cubrid_col_size

(PECL CUBRID >= 8.3.0)

cubrid_col_size — Get the number of elements in collection type column using OID

Descrição

int cubrid_col_size ( resource $conn_identifier , string $oid , string $attr_name )

The cubrid_col_size() function is used to get the number of elements in a collection type (set, multiset, sequence) attribute.

Parâmetros

conn_identifier

Connection identifier.

oid

OID the instance that you want to work with.

attr_name

Name of the attribute that you want to work with.

Valor Retornado

Number of elements, when process is successful.

FALSE, when process is unsuccessful.

Histórico

Versão | Descrição
8.3.1 | Change return value: when process is unsuccessful, return false, not -1.

Exemplos

Exemplo #1 cubrid_col_size() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

$size = cubrid_col_size($conn, $oid, "b");
var_dump($size);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
int(3)
cubrid_col_get
cubrid_column_names
CUBRID Funções


Get the column names in result

cubrid_col_size
cubrid_column_types
CUBRID Funções
PHP Manual

cubrid_column_names

(PECL CUBRID >= 8.3.0)

cubrid_column_names — Get the column names in result

Descrição

array cubrid_column_names ( resource $req_identifier )

The cubrid_column_names() function is used to get the column names of the query result by using req_identifier.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

Array of string which containing column names, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_column_names() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$column_names = cubrid_column_names($result);
$column_types = cubrid_column_types($result);

printf("%-30s %-30s %-15s\n", "Column Names", "Column Types", "Column Maxlen");
for($i = 0, $size = count($column_names); $i < $size; $i++) {
    $column_len = cubrid_field_len($result, $i);
    printf("%-30s %-30s %-15s\n", $column_names[$i], $column_types[$i], $column_len);
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Column Names                   Column Types                   Column Maxlen
host_year                      integer                        11
event_code                     integer                        11
athlete_code                   integer                        11
stadium_code                   integer                        11
nation_code                    char(3)                        3
medal                          char(1)                        1
game_date                      date                           10

Veja Também

  • cubrid_prepare() - Prepare an SQL statement for execution
  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_column_types() - Get column types in result

cubrid_col_size
cubrid_column_types
CUBRID Funções


Get column types in result

cubrid_column_names
cubrid_commit
CUBRID Funções
PHP Manual

cubrid_column_types

(PECL CUBRID >= 8.3.0)

cubrid_column_types — Get column types in result

Descrição

array cubrid_column_types ( resource $req_identifier )

The cubrid_column_types() function gets column types of query results by using req_identifier.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

Array of string which containing column types, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_column_types() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$column_names = cubrid_column_names($result);
$column_types = cubrid_column_types($result);

printf("%-30s %-30s %-15s\n", "Column Names", "Column Types", "Column Maxlen");
for($i = 0, $size = count($column_names); $i < $size; $i++) {
    $column_len = cubrid_field_len($result, $i);
    printf("%-30s %-30s %-15s\n", $column_names[$i], $column_types[$i], $column_len);
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Column Names                   Column Types                   Column Maxlen
host_year                      integer                        11
event_code                     integer                        11
athlete_code                   integer                        11
stadium_code                   integer                        11
nation_code                    char(3)                        3
medal                          char(1)                        1
game_date                      date                           10

Veja Também

  • cubrid_column_names() - Get the column names in result
  • cubrid_prepare() - Prepare an SQL statement for execution
  • cubrid_execute() - Execute a prepared SQL statement

cubrid_column_names
cubrid_commit
CUBRID Funções


Commit a transaction

cubrid_column_types
cubrid_connect_with_url
CUBRID Funções
PHP Manual

cubrid_commit

(PECL CUBRID >= 8.3.0)

cubrid_commit — Commit a transaction

Descrição

bool cubrid_commit ( resource $conn_identifier )

The cubrid_commit() function is used to execute commit on the transaction pointed by conn_identifier, currently on progress. Connection to the server is closed after the cubrid_commit() function is called; the connection handle is still valid, however.

In CUBRID PHP, an auto-commit mode is disabled by default for transaction management, and it can't be enabled in current version CUBRID PHP. It can be set in next version. And auto commit modes can be applied only for SELECT statements by setting broker parameters.

Parâmetros

conn_identifier

Connection identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_commit() example

<?php
$conn = cubrid_connect("127.0.0.1", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE publishers");

$sql = <<<EOD
CREATE TABLE publishers(
pub_id CHAR(3),
pub_name VARCHAR(20),
city VARCHAR(15),
state CHAR(2),
country VARCHAR(15)
)
EOD;

if (!cubrid_execute($conn, $sql)) {
    printf("Error facility: %d\nError code: %d\nError msg: %s\n", cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());

    cubrid_disconnect($conn);
    exit;
}

$req = cubrid_prepare($conn, "INSERT INTO publishers VALUES(?, ?, ?, ?, ?)");

$id_list = array("P01", "P02", "P03", "P04");
$name_list = array("Abatis Publishers", "Core Dump Books", "Schadenfreude Press", "Tenterhooks Press");
$city_list = array("New York", "San Francisco", "Hamburg", "Berkeley");
$state_list = array("NY", "CA", NULL, "CA");
$country_list = array("USA", "USA", "Germany", "USA");

for ($i = 0, $size = count($id_list); $i < $size; $i++) {
    cubrid_bind($req, 1, $id_list[$i]);
    cubrid_bind($req, 2, $name_list[$i]);
    cubrid_bind($req, 3, $city_list[$i]);
    cubrid_bind($req, 4, $state_list[$i]);
    cubrid_bind($req, 5, $country_list[$i]);

    if (!($ret = cubrid_execute($req))) {
        break;
    }
}

if (!$ret) {
    cubrid_rollback($conn);
} else {
    cubrid_commit($conn);

    $req = cubrid_execute($conn, "SELECT * FROM publishers");
    while ($result = cubrid_fetch_assoc($req)) {
        printf("%-3s %-20s %-15s %-3s %-15s\n",
            $result["pub_id"], $result["pub_name"], $result["city"], $result["state"], $result["country"]);
    }
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

P01 Abatis Publishers    New York        NY  USA
P02 Core Dump Books      San Francisco   CA  USA
P03 Schadenfreude Press  Hamburg             Germany
P04 Tenterhooks Press    Berkeley        CA  USA

Veja Também

  • cubrid_rollback() - Roll back a transaction

cubrid_column_types
cubrid_connect_with_url
CUBRID Funções


Establish the environment for connecting to CUBRID server

cubrid_commit
cubrid_connect
CUBRID Funções
PHP Manual

cubrid_connect_with_url

(PECL CUBRID >= 8.3.0)

cubrid_connect_with_url — Establish the environment for connecting to CUBRID server

Descrição

resource cubrid_connect_with_url ( string $conn_url [, string $userid [, string $passwd ]] )

The cubrid_connect_with_url() function is used to establish the environment for connecting to your server by using connection information passed with an url string argument. If the HA feature is enabled in CUBRID, you must specify the connection information of the standby server, which is used for failover when failure occurs, in the url string argument of this function. If the user name and password is not given, then the "PUBLIC" connection will be made by default.

<url> ::= cci:CUBRID:<host>:<db_name>:<db_user>:<db_password>:[?<properties>]
<properties> ::= <property> [&<propertygt;]
<alternative_hosts> ::= <standby_broker1_host>:<port> [,<standby_broker2_host>:<port>]
<host> := HOSTNAME | IP_ADDR
<time> := SECOND

  • host : A host name or IP address of the master database
  • db_name : A name of the database
  • db_user : A name of the database user
  • db_password : A database user password
  • alhosts: Specifies the broker information of the standby server, which is used for failover when it is impossible to connect to the active server. You can specify multiple brokers for failover, and the connection to the brokers is attempted in the order listed in alhosts
  • rctime : An interval between the attempts to connect to the active broker in which failure occurred. After a failure occurs, the system connects to the broker specified by althosts (failover), terminates the transaction, and then attempts to connect to the active broker of the master database at every rctime. The default value is 600 seconds.

Parâmetros

conn_url

A character string that contains server connection information.

userid

User name for the database.

passwd

User password.

Valor Retornado

Connection identifier, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_connect_with_url() url without properties example

<?php
$conn_url = "cci:CUBRID:127.0.0.1:33088:demodb:dba:123456:"
$con = cubrid_connect_with_url ($conn_url);

if ($con) {
   echo "connected successfully";
   $req =cubrid_execute($con, "insert into person values(1,’James’)");

   if ($req) {
      cubrid_close_request ($req);
      cubrid_commit ($con);
   } else {
      cubrid_rollback ($con);
   }
   cubrid_disconnect ($con);
}
?>

Exemplo #2 cubrid_connect_with_url() url with properties example

<?php
$conn_url = "cci:CUBRID:127.0.0.1:33088:demodb:dba:123456:?althost=10.34.63.132:33088&rctime=100"
$con = cubrid_connect_with_url ($conn_url);

if ($con) {
   echo "connected successfully";
   $req =cubrid_execute($con, "insert into person values(1,’James’)");

   if ($req) {
      cubrid_close_request ($req);
      cubrid_commit ($con);
   } else {
      cubrid_rollback ($con);
   }
   cubrid_disconnect ($con);
}
?>

Veja Também

  • cubrid_connect() - Open a connection to a CUBRID Server
  • cubrid_disconnect() - Close a database connection

cubrid_commit
cubrid_connect
CUBRID Funções


Open a connection to a CUBRID Server

cubrid_connect_with_url
cubrid_current_oid
CUBRID Funções
PHP Manual

cubrid_connect

(PECL CUBRID >= 8.3.0)

cubrid_connect — Open a connection to a CUBRID Server

Descrição

resource cubrid_connect ( string $host , int $port , string $dbname [, string $userid [, string $passwd ]] )

The cubrid_connect() function is used to establish the environment for connecting to your server by using your server address, port number, database name, user name, and password. If the user name and password is not given, then the "PUBLIC" connection will be made by default.

Parâmetros

host

Host name or IP address of CUBRID CAS server.

port

Port number of CUBRID CAS server (BROKER_PORT configured in $CUBRID/conf/cubrid_broker.conf).

dbname

Name of database.

userid

User name for the database.

passwd

User password.

Valor Retornado

Connection identifier, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_connect() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33000, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1

Veja Também

  • cubrid_connect_with_url() - Establish the environment for connecting to CUBRID server
  • cubrid_disconnect() - Close a database connection

cubrid_connect_with_url
cubrid_current_oid
CUBRID Funções


Get OID of the current cursor location

cubrid_connect
cubrid_disconnect
CUBRID Funções
PHP Manual

cubrid_current_oid

(PECL CUBRID >= 8.3.0)

cubrid_current_oid — Get OID of the current cursor location

Descrição

string cubrid_current_oid ( resource $req_identifier )

The cubrid_current_oid() function is used to get the oid of the current cursor location from the query result. To use cubrid_current_oid(), the query executed must be a updatable query, and the CUBRID_INCLUDE_OID option must be included during the query execution.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

Oid of current cursor location, when process is successful

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_current_oid() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code", CUBRID_INCLUDE_OID);
$oid = cubrid_current_oid($req);
$res = cubrid_get($conn, $oid);

print_r($res);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Array
(
    [s_name] => X
    [f_name] => Mixed
)

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_connect
cubrid_disconnect
CUBRID Funções


Close a database connection

cubrid_current_oid
cubrid_drop
CUBRID Funções
PHP Manual

cubrid_disconnect

(PECL CUBRID >= 8.3.0)

cubrid_disconnect — Close a database connection

Descrição

bool cubrid_disconnect ( resource $conn_identifier )

The cubrid_disconnect() function closes the connection handle and disconnects from server. If there exists any request handle not closed yet at this point, it will be closed.

Parâmetros

conn_identifier

Connection identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_disconnect() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33000, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1

Veja Também

  • cubrid_connect() - Open a connection to a CUBRID Server

cubrid_current_oid
cubrid_drop
CUBRID Funções


Delete an instance using OID

cubrid_disconnect
cubrid_error_code_facility
CUBRID Funções
PHP Manual

cubrid_drop

(PECL CUBRID >= 8.3.0)

cubrid_drop — Delete an instance using OID

Descrição

bool cubrid_drop ( resource $conn_identifier , string $oid )

The cubrid_drop() function is used to delete an instance from database by using oid.

Parâmetros

conn_identifier

Connection identifier.

oid

Oid of the instance that you want to delete.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_drop() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(2, {4,5,7}, {44,55,66,666}, 'b')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

printf("--- Before Drop: ---\n");
$attr = cubrid_get($conn, $oid);
var_dump($attr);

if (cubrid_drop($conn, $oid)) {
    cubrid_commit($conn);
} else {
    cubrid_rollback($conn);
}

cubrid_close_request($req);

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

printf("\n--- After Drop: ---\n");
$attr = cubrid_get($conn, $oid);
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

--- Before Drop: ---
array(4) {
  ["a"]=>
  string(1) "1"
  ["b"]=>
  array(3) {
    [0]=>
    string(1) "1"
    [1]=>
    string(1) "2"
    [2]=>
    string(1) "3"
  }
  ["c"]=>
  array(4) {
    [0]=>
    string(2) "11"
    [1]=>
    string(2) "22"
    [2]=>
    string(2) "33"
    [3]=>
    string(3) "333"
  }
  ["d"]=>
  string(10) "a         "
}

--- After Drop: ---
array(4) {
  ["a"]=>
  string(1) "2"
  ["b"]=>
  array(3) {
    [0]=>
    string(1) "4"
    [1]=>
    string(1) "5"
    [2]=>
    string(1) "7"
  }
  ["c"]=>
  array(4) {
    [0]=>
    string(2) "44"
    [1]=>
    string(2) "55"
    [2]=>
    string(2) "66"
    [3]=>
    string(3) "666"
  }
  ["d"]=>
  string(10) "b         "
}

Veja Também

  • cubrid_is_instance() - Check whether the instance pointed by OID exists

cubrid_disconnect
cubrid_error_code_facility
CUBRID Funções


Get the facility code of error

cubrid_drop
cubrid_error_code
CUBRID Funções
PHP Manual

cubrid_error_code_facility

(PECL CUBRID >= 8.3.0)

cubrid_error_code_facility — Get the facility code of error

Descrição

int cubrid_error_code_facility ( void )

The cubrid_error_code_facility() function is used to get the facility code (level in which the error occurred) from the error code of the error that occurred during the API execution. Usually, you can get the error code when API returns false as its return value.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Facility code of the error code that occurred: CUBRID_FACILITY_DBMS, CUBRID_FACILITY_CAS, CUBRID_FACILITY_CCI, CUBRID_FACILITY_CLIENT

Exemplos

Exemplo #1 cubrid_error_code_facility() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = @cubrid_execute($conn, "SELECT * FROM unknown");
if (!$req) {
    printf("Error facility: %d\nError code: %d\nError msg: %s\n",
        cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());

    cubrid_disconnect($conn);
    exit;
}
?>

O exemplo acima irá imprimir:

Error facility: 1
Error code: -493
Error msg: Syntax: syntax error, unexpected UNKNOWN

Veja Também

  • cubrid_error_code() - Get error code for the most recent function call
  • cubrid_error_msg() - Get last error message for the most recent function call

cubrid_drop
cubrid_error_code
CUBRID Funções


Get error code for the most recent function call

cubrid_error_code_facility
cubrid_error_msg
CUBRID Funções
PHP Manual

cubrid_error_code

(PECL CUBRID >= 8.3.0)

cubrid_error_code — Get error code for the most recent function call

Descrição

int cubrid_error_code ( void )

The cubrid_error_code() function is used to get the error code of the error that occurred during the API execution. Usually, it gets the error code when API returns false as its return value.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Error code of the error that occurred, or 0 (zero) if no error occurred.

Exemplos

Exemplo #1 cubrid_error_code() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_prepare($conn , "SELECT * FROM code WHERE s_name=?");

$req = @cubrid_execute($req);
if (!$req) {
    printf("Error facility: %d\nError code: %d\nError msg: %s\n",
        cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());

    cubrid_disconnect($conn);
    exit;
}
?>

O exemplo acima irá imprimir:

Error facility: 4
Error code: -2015
Error msg: Some parameter not binded

Veja Também

  • cubrid_error_code_facility() - Get the facility code of error
  • cubrid_error_msg() - Get last error message for the most recent function call

cubrid_error_code_facility
cubrid_error_msg
CUBRID Funções


Get last error message for the most recent function call

cubrid_error_code
cubrid_execute
CUBRID Funções
PHP Manual

cubrid_error_msg

(PECL CUBRID >= 8.3.0)

cubrid_error_msg — Get last error message for the most recent function call

Descrição

string cubrid_error_msg ( void )

The cubrid_error_msg() function is used to get the error message that occurred during the use of CUBRID API. Usually, it gets error message when API returns false as its return value.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Error message that occurred.

Exemplos

Exemplo #1 cubrid_error_msg() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

if (!@cubrid_schema($conn, 100000)) {
    printf("Error facility: %d\nError code: %d\nError msg: %s\n",
        cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());

    cubrid_disconnect($conn);
    exit;
}
?>

O exemplo acima irá imprimir:

Error facility: 2
Error code: -1015
Error msg: Invalid T_CCI_SCH_TYPE value

Veja Também

  • cubrid_error_code() - Get error code for the most recent function call
  • cubrid_error_code_facility() - Get the facility code of error

cubrid_error_code
cubrid_execute
CUBRID Funções


Execute a prepared SQL statement

cubrid_error_msg
cubrid_fetch
CUBRID Funções
PHP Manual

cubrid_execute

(PECL CUBRID >= 8.3.0)

cubrid_execute — Execute a prepared SQL statement

Descrição

resource cubrid_execute ( resource $conn_identifier , string $SQL [, int $option ] )
bool cubrid_execute ( resource $request_identifier [, int $option ] )

The cubrid_execute() function is used to execute the given SQL sentence. It executes the query by using conn_identifier and SQL, and then returns the request identifier created. It is used for simple execution of query, where the parameter binding is not needed. In addition, the cubrid_execute() function is used to execute the prepared statement by means of cubrid_prepare() and cubrid_bind(). At this time, you need to specify arguments of request_identifier and option.

You can use the option argument to tell whether to receive oid of the row after the execution, and, whether to execute the query in asynchronous mode. You can use it by setting the CUBRID_INCLUDE_OID and CUBRID_ASYNC using bitwise or operator. If the both variables are not explicitly given, they are not selected by default.

If the first argument is request_identifier to execute the cubrid_prepare() function, you can specify an option, CUBRID_ASYNC only.

Parâmetros

conn_identifier

Connection identifier.

SQL

SQL to be executed.

option

Query execution option CUBRID_INCLUDE_OID, CUBRID_ASYNC.

request_identifier

cubrid_prepare() identifier.

Valor Retornado

Request identifier, when process is successful and first param is conn_identifier; TRUE, when process is successful and first argument is request_identifier.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_execute() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$result = cubrid_execute($conn, "SELECT code FROM event WHERE name='100m Butterfly' and gender='M'", CUBRID_ASYNC);
$row = cubrid_fetch_array($result, CUBRID_ASSOC);
$event_code = $row["code"];

cubrid_close_request($result);

$history_req = cubrid_prepare($conn, "SELECT * FROM history WHERE event_code=?");
cubrid_bind($history_req, 1, $event_code, "number");
cubrid_execute($history_req);

printf("%-20s %-9s %-10s %-5s\n", "athlete", "host_year", "score", "unit");
while ($row = cubrid_fetch_array($history_req, CUBRID_ASSOC)) {
    printf("%-20s %-9s %-10s %-5s\n",
        $row["athlete"], $row["host_year"], $row["score"], $row["unit"]);
}

cubrid_close_request($history_req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

athlete              host_year score      unit
Phelps Michael       2004      51.25      time

Veja Também

  • cubrid_close_request() - Close the request handle
  • cubrid_commit() - Commit a transaction
  • cubrid_rollback() - Roll back a transaction
  • cubrid_prepare() - Prepare an SQL statement for execution
  • cubrid_bind() - Bind variables to a prepared statement as parameters

cubrid_error_msg
cubrid_fetch
CUBRID Funções


Fetch the next row from a result set

cubrid_execute
cubrid_free_result
CUBRID Funções
PHP Manual

cubrid_fetch

(PECL CUBRID >= 8.3.0)

cubrid_fetch — Fetch the next row from a result set

Descrição

mixed cubrid_fetch ( resource $result [, int $type = CUBRID_BOTH ] )

The cubrid_fetch() function is used to get a single row from the query result. The cursor automatically moves to the next row after getting the result.

Parâmetros

result

result comes from a call to cubrid_execute()

type

Array type of the fetched result CUBRID_NUM, CUBRID_ASSOC, CUBRID_BOTH, CUBRID_OBJECT.

Valor Retornado

Result array or object, when process is successful.

FALSE, when process is unsuccessful.

The result can be received either as an array or as an object, and you can decide which data type to use by setting the type argument. The type variable can be set to one of the following values:

  • CUBRID_NUM : Numerical array (0-based)
  • CUBRID_ASSOC : Associative array
  • CUBRID_BOTH : Numerical & Associative array (default)
  • CUBRID_OBJECT : object that has the attribute name as the column name of query result

When type argument is omitted, the result will be received using CUBRID_BOTH option as default. When you want to receive query result in object data type, the column name of the result must obey the naming rules for identifiers in PHP. For example, column name such as "count(*)" cannot be received in object type.

Exemplos

Exemplo #1 cubrid_fetch() example

<?php
$conn = cubrid_connect("localhost", 33088, "demodb");
$req = cubrid_execute($conn, "SELECT * FROM stadium WHERE nation_code='GRE' AND seats > 10000");

printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch($req)) {
    printf("%-40s %-10s %-6s %-20s\n",
        $row["name"], $row["area"], $row["seats"], $row["address"]);
}

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

name                                     area       seats  address
Panathinaiko Stadium                     86300.00   50000  Athens, Greece
Olympic Stadium                          54700.00   13000  Athens, Greece
Olympic Indoor Hall                      34100.00   18800  Athens, Greece
Olympic Hall                             52400.00   21000  Athens, Greece
Olympic Aquatic Centre                   42500.00   11500  Athens, Greece
Markopoulo Olympic Equestrian Centre     64000.00   15000  Markopoulo, Athens, Greece
Faliro Coastal Zone Olympic Complex      34650.00   12171  Faliro, Athens, Greece
Athens Olympic Stadium                   120400.00  71030  Maroussi, Athens, Greece
Ano Liossia                              34000.00   12000  Ano Liosia, Athens, Greece

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_execute
cubrid_free_result
CUBRID Funções


Free the memory occupied by the result data

cubrid_fetch
cubrid_get_charset
CUBRID Funções
PHP Manual

cubrid_free_result

(PECL CUBRID >= 8.3.0)

cubrid_free_result — Free the memory occupied by the result data

Descrição

bool cubrid_free_result ( resource $req_identifier )

This function frees the memory occupied by the result data. It returns TRUE on success or FALSE on failure. Note that it can only frees the client fetch buffer now, and if you want free all memory, use function cubrid_close_request().

Parâmetros

req_identifier

This is the request identifier.

Valor Retornado

TRUE on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_free_result() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM history WHERE host_year=2004 ORDER BY event_code");
$row = cubrid_fetch_assoc($req);
var_dump($row);

cubrid_free_result($req);
cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(5) {
  ["event_code"]=>
  string(5) "20005"
  ["athlete"]=>
  string(12) "Hayes Joanna"
  ["host_year"]=>
  string(4) "2004"
  ["score"]=>
  string(5) "12.37"
  ["unit"]=>
  string(4) "time"
}
cubrid_fetch
cubrid_get_charset
CUBRID Funções


Return the current CUBRID connection charset

cubrid_free_result
cubrid_get_class_name
CUBRID Funções
PHP Manual

cubrid_get_charset

(PECL CUBRID >= 8.3.0)

cubrid_get_charset — Return the current CUBRID connection charset

Descrição

string cubrid_get_charset ( resource $conn_identifier )

This function returns This function returns the current CUBRID connection charset.

Parâmetros

conn_identifier

The CUBRID connection.

Valor Retornado

A string that represents the CUBRID connection charset; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_get_charset() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33088, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);

?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1
cubrid_free_result
cubrid_get_class_name
CUBRID Funções


Get the class name using OID

cubrid_get_charset
cubrid_get_client_info
CUBRID Funções
PHP Manual

cubrid_get_class_name

(PECL CUBRID >= 8.3.0)

cubrid_get_class_name — Get the class name using OID

Descrição

string cubrid_get_class_name ( resource $conn_identifier , string $oid )

The cubrid_get_class_name() function is used to get the class name from oid.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to check the existence.

Valor Retornado

Class name when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_get_class_name() example

<?php
$conn = cubrid_connect("localhost", 33088, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code", CUBRID_INCLUDE_OID);
$oid = cubrid_current_oid($req);
$class_name = cubrid_get_class_name($conn, $oid);

print_r($class_name);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

code

Veja Também

  • cubrid_is_instance() - Check whether the instance pointed by OID exists
  • cubrid_drop() - Delete an instance using OID

cubrid_get_charset
cubrid_get_client_info
CUBRID Funções


Return the client library version

cubrid_get_class_name
cubrid_get_db_parameter
CUBRID Funções
PHP Manual

cubrid_get_client_info

(PECL CUBRID >= 8.3.0)

cubrid_get_client_info — Return the client library version

Descrição

string cubrid_get_client_info ( void )

This function returns a string that represents the client library version.

Parâmetros

Valor Retornado

A string that represents the client library version; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_get_client_info() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33088, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);

?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1
cubrid_get_class_name
cubrid_get_db_parameter
CUBRID Funções


Returns the CUBRID database parameters

cubrid_get_client_info
cubrid_get_server_info
CUBRID Funções
PHP Manual

cubrid_get_db_parameter

(PECL CUBRID >= 8.3.0)

cubrid_get_db_parameter — Returns the CUBRID database parameters

Descrição

array cubrid_get_db_parameter ( resource $conn_identifier )

This function returns the CUBRID database parameters or it returns FALSE on failure. It returns an associative array with the values for the following parameters:

  • PARAM_ISOLATION_LEVEL
  • LOCK_TIMEOUT
  • MAX_STRING_LENGTH
  • PARAM_AUTO_COMMIT

Database parameters
Parameter | Description
PARAM_ISOLATION_LEVEL | In current version CUBRID PHP, you can set the level of transaction isolation by using isolation_level in the $CUBRID/conf/cubrid.conf or the SET TRANSACTION statement. In next version, isolation level can be set using new CUBRID PHP API.
LOCK_TIMEOUT | CUBRID provides the lock timeout feature, which sets the waiting time for the lock until the transaction lock setting is allowed. The system parameter lock_timeout_in_secs in the $CUBRID/conf/cubrid.conf file or the SET TRANSACTION statement sets the timeout (in seconds). In next version, lock timeout can be set using new CUBRID PHP API. The default value of the lock_timeout_in_secs parameter is -1, which means the application client will wait indefinitely until the transaction lock is allowed.
PARAM_AUTO_COMMIT | In CUBRID PHP, an auto-commit mode is disabled by default for transaction management, and it can't be enabled in current version CUBRID PHP. It can be set in next version. And auto commit modes can be applied only for SELECT statements by setting broker parameters.

The following table shows the isolation levels from 1 to 6. It consists of table schema (row) and isolation level:

Levels of Isolation Supported by CUBRID
Name | Description
SERIALIZABLE (6) | In this isolation level, problems concerning concurrency (e.g. dirty read, non-repeatable read, phantom read, etc.) do not occur.
REPEATABLE READ CLASS with REPEATABLE READ INSTANCES (5) | Another transaction T2 cannot update the schema of table A while transaction T1 is viewing table A. Transaction T1 may experience phantom read for the record R that was inserted by another transaction T2 when it is repeatedly retrieving a specific record.
REPEATABLE READ CLASS with READ COMMITTED INSTANCES (or CURSOR STABILITY) (4) | Another transaction T2 cannot update the schema of table A while transaction T1 is viewing table A. Transaction T1 may experience R read (non-repeatable read) that was updated and committed by another transaction T2 when it is repeatedly retrieving the record R.
REPEATABLE READ CLASS with READ UNCOMMITTED INSTANCES (3) | Default isolation level. Another transaction T2 cannot update the schema of table A while transaction T1 is viewing table A. Transaction T1 may experience R' read (dirty read) for the record that was updated but not committed by another transaction T2.
READ COMMITTED CLASS with READ COMMITTED INSTANCES (2) | Transaction T1 may experience A' read (non-repeatable read) for the table that was updated and committed by another transaction T2 while it is viewing table A repeatedly. Transaction T1 may experience R' read (non-repeatable read) for the record that was updated and committed by another transaction T2 while it is retrieving the record R repeatedly.
READ COMMITTED CLASS with READ UNCOMMITTED INSTANCES (1) | Transaction T1 may experience A' read (non-repeatable read) for the table that was updated and committed by another transaction T2 while it is repeatedly viewing table A. Transaction T1 may experience R' read (dirty read) for the record that was updated but not committed by another transaction T2.

Parâmetros

conn_identifier

The CUBRID connection. If the connection identifier is not specified, the last link opened by cubrid_connect() is assumed.

Valor Retornado

An associative array with CUBRID database parameters; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_get_db_parameter() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33088, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);

?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1
cubrid_get_client_info
cubrid_get_server_info
CUBRID Funções


Return the CUBRID server version

cubrid_get_db_parameter
cubrid_get
CUBRID Funções
PHP Manual

cubrid_get_server_info

(PECL CUBRID >= 8.3.0)

cubrid_get_server_info — Return the CUBRID server version

Descrição

string cubrid_get_server_info ( resource $conn_identifier )

This function returns a string that represents the CUBRID server version.

Parâmetros

conn_identifier

The CUBRID connection.

Valor Retornado

A string that represents the CUBRID server version; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_get_server_info() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33088, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);

?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1
cubrid_get_db_parameter
cubrid_get
CUBRID Funções


Get a column using OID

cubrid_get_server_info
cubrid_insert_id
CUBRID Funções
PHP Manual

cubrid_get

(PECL CUBRID >= 8.3.0)

cubrid_get — Get a column using OID

Descrição

mixed cubrid_get ( resource $conn_identifier , string $oid [, mixed $attr ] )

The cubrid_get() function is used to get the attribute of the instance of the given oid. You can get single attribute by using string data type for the attr argument, or many attributes by using array data type for the attr argument.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to read.

attr

Name of the attribute that you want to read.

Valor Retornado

Content of the requested attribute, when process is successful; When attr is set with string data type, the result is returned as a string; when attr is set with array data type (0-based numerical array), then the result is returned in associative array. When attr is omitted, then all attributes are received in array form.

FALSE when process is unsuccessful or result is NULL (If error occurs to distinguish empty string from NULL, then it prints the warning message. You can check the error by using cubrid_error_code())

Exemplos

Exemplo #1 cubrid_get() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(2, {4,5,7}, {44,55,66,666}, 'b')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_get($conn, $oid, "b");
var_dump($attr);

$attr = cubrid_get($conn, $oid);
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

string(9) "{1, 2, 3}"
array(4) {
  ["a"]=>
  string(1) "1"
  ["b"]=>
  array(3) {
    [0]=>
    string(1) "1"
    [1]=>
    string(1) "2"
    [2]=>
    string(1) "3"
  }
  ["c"]=>
  array(4) {
    [0]=>
    string(2) "11"
    [1]=>
    string(2) "22"
    [2]=>
    string(2) "33"
    [3]=>
    string(3) "333"
  }
  ["d"]=>
  string(10) "a         "
}

Veja Também

  • cubrid_put() - Update a column using OID

cubrid_get_server_info
cubrid_insert_id
CUBRID Funções


Return an array with the IDs generated for the AUTO_INCREMENT columns

cubrid_get
cubrid_is_instance
CUBRID Funções
PHP Manual

cubrid_insert_id

(PECL CUBRID >= 8.3.0)

cubrid_insert_id — Return an array with the IDs generated for the AUTO_INCREMENT columns

Descrição

array cubrid_insert_id ( string $class_name [, resource $conn_identifier ] )

This function returns an array with the IDs generated for the AUTO_INCREMENT columns that were updated by the previous INSERT query. It returns an array with all the AUTO_INCREMENT columns and their values. It returns 0 if the previous query does not generate new rows, or it returns FALSE on failure.

Parâmetros

class_name

The name of the class (table) that was used in the last INSERT statement for which the auto increment values are retrieved.

conn_identifier

The connection identifier previously obtained by a call to cubrid_connect().

Valor Retornado

An associative array with all the AUTO_INCREMENT columns and their values, on success.

0, if the previous query does not generate new rows.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_insert_id() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE cubrid_test");
cubrid_execute($conn, "CREATE TABLE cubrid_test (d int AUTO_INCREMENT(1, 2), t varchar)");

for ($i = 0; $i < 10; $i++) {
    cubrid_execute($conn, "INSERT INTO cubrid_test(t) VALUES('cubrid_test')");
}

$id_list = cubrid_insert_id("cubrid_test");
var_dump($id_list);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(1) {
  ["d"]=>
  int(19)
}
cubrid_get
cubrid_is_instance
CUBRID Funções


Check whether the instance pointed by OID exists

cubrid_insert_id
cubrid_lob_close
CUBRID Funções
PHP Manual

cubrid_is_instance

(PECL CUBRID >= 8.3.0)

cubrid_is_instance — Check whether the instance pointed by OID exists

Descrição

int cubrid_is_instance ( resource $conn_identifier , string $oid )

The cubrid_is_instance() function is used to check whether the instance pointed by the given oid exists or not.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to check the existence.

Valor Retornado

1, if such instance exists;

0, if such instance does not exist;

-1, in case of error

Exemplos

Exemplo #1 cubrid_is_instance() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$sql = <<<EOD
SELECT host_year, medal, game_date
FROM game
WHERE athlete_code IN
    (SELECT code FROM athlete WHERE name='Thorpe Ian');
EOD;

$req = cubrid_execute($conn, $sql, CUBRID_INCLUDE_OID);
$oid = cubrid_current_oid($req);

$res = cubrid_is_instance ($conn, $oid);
if ($res == 1) {
    echo "Instance pointed by $oid exists.\n";
} else if ($res == 0){
    echo "Instance pointed by $oid doesn't exist.\n";
} else {
    echo "error\n";
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Instance pointed by @0|0|0 doesn't exist.

Veja Também

  • cubrid_drop() - Delete an instance using OID
  • cubrid_get_class_name() - Get the class name using OID

cubrid_insert_id
cubrid_lob_close
CUBRID Funções


Close BLOB/CLOB data

cubrid_is_instance
cubrid_lob_export
CUBRID Funções
PHP Manual

cubrid_lob_close

(PECL CUBRID >= 8.3.1)

cubrid_lob_close — Close BLOB/CLOB data

Descrição

bool cubrid_lob_close ( array $lob_identifier_array )

cubrid_lob_close() is used to close all BLOB/CLOB returned from cubrid_lob_get().

Parâmetros

lob_identifier_array

LOB identifier array return from cubrid_lob_get.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lob_close() example

<?php
$lobs = cubrid_lob_get($con, "SELECT doc_content FROM doc WHERE doc_id=5");
cubrid_lob_export($conn, $lobs[0], "doc_5.txt");
cubrid_lob_close($lobs);
?>

Veja Também

  • cubrid_lob_get() - Get BLOB/CLOB data
  • cubrid_lob_size() - Get BLOB/CLOB data size
  • cubrid_lob_export() - Export BLOB/CLOB data to file
  • cubrid_lob_send() - Read BLOB/CLOB data and send straight to browser

cubrid_is_instance
cubrid_lob_export
CUBRID Funções


Export BLOB/CLOB data to file

cubrid_lob_close
cubrid_lob_get
CUBRID Funções
PHP Manual

cubrid_lob_export

(PECL CUBRID >= 8.3.1)

cubrid_lob_export — Export BLOB/CLOB data to file

Descrição

bool cubrid_lob_export ( resource $conn_identifier , resource $lob_identifier , string $path_name )

cubrid_lob_export() is used to get BLOB/CLOB data from CUBRID database, and saves its contents to a file. To use this function, you must use cubrid_lob_get() first to get BLOB/CLOB info from CUBRID.

Parâmetros

conn_identifier

Connection identifier.

lob_identifier

LOB identifier.

path_name

Path name of the file.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lob_export() example

<?php
$lobs = cubrid_lob_get($con, "SELECT doc_content FROM doc WHERE doc_id=5");
cubrid_lob_export($conn, $lobs[0], "doc_5.txt");
cubrid_lob_close($lobs);
?>

Veja Também

  • cubrid_lob_get() - Get BLOB/CLOB data
  • cubrid_lob_close() - Close BLOB/CLOB data
  • cubrid_lob_size() - Get BLOB/CLOB data size
  • cubrid_lob_send() - Read BLOB/CLOB data and send straight to browser

cubrid_lob_close
cubrid_lob_get
CUBRID Funções


Get BLOB/CLOB data

cubrid_lob_export
cubrid_lob_send
CUBRID Funções
PHP Manual

cubrid_lob_get

(PECL CUBRID >= 8.3.1)

cubrid_lob_get — Get BLOB/CLOB data

Descrição

array cubrid_lob_get ( resource $conn_identifier , string $SQL )

cubrid_lob_get() is used to get BLOB/CLOB meta info from CUBRID database, CUBRID gets BLOB/CLOB by executing the SQL statement, and returns all LOBs as a resource array. Be sure that the SQL retrieves only one column and its data type is BLOB or CLOB.

Remember to use cubrid_lob_close() to release the LOBs if you don't need it any more.

Parâmetros

conn_identifier

Connection identifier.

SQL

SQL to be executed.

Valor Retornado

Return an array of LOB resources, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lob_get() example

<?php
$lobs = cubrid_lob_get($con, "SELECT doc_content FROM doc WHERE doc_id=5");
cubrid_lob_export($conn, $lobs[0], "doc_5.txt");
cubrid_lob_close($lobs);
?>

Veja Também

  • cubrid_lob_close() - Close BLOB/CLOB data
  • cubrid_lob_size() - Get BLOB/CLOB data size
  • cubrid_lob_export() - Export BLOB/CLOB data to file
  • cubrid_lob_send() - Read BLOB/CLOB data and send straight to browser

cubrid_lob_export
cubrid_lob_send
CUBRID Funções


Read BLOB/CLOB data and send straight to browser

cubrid_lob_get
cubrid_lob_size
CUBRID Funções
PHP Manual

cubrid_lob_send

(PECL CUBRID >= 8.3.1)

cubrid_lob_send — Read BLOB/CLOB data and send straight to browser

Descrição

bool cubrid_lob_send ( resource $conn_identifier , resource $lob_identifier )

cubrid_lob_send() reads BLOB/CLOB data and passes it straight through to the browser. To use this function, you must use cubrid_lob_get() first to get BLOB/CLOB info from CUBRID.

Parâmetros

conn_identifier

Connection identifier.

lob_identifier

LOB identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lob_send() example

<?php
$lobs = cubrid_lob_get($con, "SELECT image FROM person WHERE id=1");
Header("Content-type: image/jpeg");
cubrid_lob_send($conn, $lobs[0]);
cubrid_lob_close($lobs);
?>

Veja Também

  • cubrid_lob_get() - Get BLOB/CLOB data
  • cubrid_lob_close() - Close BLOB/CLOB data
  • cubrid_lob_size() - Get BLOB/CLOB data size
  • cubrid_lob_export() - Export BLOB/CLOB data to file

cubrid_lob_get
cubrid_lob_size
CUBRID Funções


Get BLOB/CLOB data size

cubrid_lob_send
cubrid_lock_read
CUBRID Funções
PHP Manual

cubrid_lob_size

(PECL CUBRID >= 8.3.1)

cubrid_lob_size — Get BLOB/CLOB data size

Descrição

int cubrid_lob_size ( resource $lob_identifier )

cubrid_lob_size() is used to get BLOB/CLOB data size.

Nota:

The maximum length of BLOB/CLOB data is the maximum file size creatable in an external storage. But there is no integer type such as long long in PHP. If you do need it, maybe you should use 64bit PHP.

Parâmetros

lob_identifier

LOB identifier.

Valor Retornado

LOB data size, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lob_size() example

<?php
$lobs = cubrid_lob_get($con, "SELECT doc_content FROM doc WHERE doc_id=5");
echo "Doc size:".cubrid_lob_size($lobs[0]);
cubrid_lob_export($conn, $lobs[0], "doc_5.txt");
cubrid_lob_close($lobs);
?>

Veja Também

  • cubrid_lob_get() - Get BLOB/CLOB data
  • cubrid_lob_close() - Close BLOB/CLOB data
  • cubrid_lob_export() - Export BLOB/CLOB data to file
  • cubrid_lob_send() - Read BLOB/CLOB data and send straight to browser

cubrid_lob_send
cubrid_lock_read
CUBRID Funções


Set a read lock on the given OID

cubrid_lob_size
cubrid_lock_write
CUBRID Funções
PHP Manual

cubrid_lock_read

(PECL CUBRID >= 8.3.0)

cubrid_lock_read — Set a read lock on the given OID

Descrição

bool cubrid_lock_read ( resource $conn_identifier , string $oid )

The cubrid_lock_read() function is used to put read lock on the instance pointed by given oid.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to put read lock on.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lock_read() example

<?php
$conn = cubrid_connect("localhost", 33088, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(2, {4,5,7}, {44,55,66,666}, 'b')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

cubrid_lock_read($conn, $oid);

$attr = cubrid_get($conn, $oid, "b");
var_dump($attr);

$attr = cubrid_get($conn, $oid);
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

string(9) "{1, 2, 3}"
array(4) {
  ["a"]=>
  string(1) "1"
  ["b"]=>
  array(3) {
    [0]=>
    string(1) "1"
    [1]=>
    string(1) "2"
    [2]=>
    string(1) "3"
  }
  ["c"]=>
  array(4) {
    [0]=>
    string(2) "11"
    [1]=>
    string(2) "22"
    [2]=>
    string(2) "33"
    [3]=>
    string(3) "333"
  }
  ["d"]=>
  string(10) "a         "
}

Veja Também

  • cubrid_lock_write() - Set a write lock on the given OID

cubrid_lob_size
cubrid_lock_write
CUBRID Funções


Set a write lock on the given OID

cubrid_lock_read
cubrid_move_cursor
CUBRID Funções
PHP Manual

cubrid_lock_write

(PECL CUBRID >= 8.3.0)

cubrid_lock_write — Set a write lock on the given OID

Descrição

bool cubrid_lock_write ( resource $conn_identifier , string $oid )

The cubrid_lock_write() function is used to put write lock on the instance pointed by the given oid.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to put write lock on.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_lock_write() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(2, {4,5,7}, {44,55,66,666}, 'b')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

cubrid_lock_write($conn, $oid);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_put($conn, $oid, "b", array(2, 4, 8));

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
array(3) {
  [0]=>
  string(1) "2"
  [1]=>
  string(1) "4"
  [2]=>
  string(1) "8"
}

Veja Também

  • cubrid_lock_read() - Set a read lock on the given OID

cubrid_lock_read
cubrid_move_cursor
CUBRID Funções


Move the cursor in the result

cubrid_lock_write
cubrid_num_cols
CUBRID Funções
PHP Manual

cubrid_move_cursor

(PECL CUBRID >= 8.3.0)

cubrid_move_cursor — Move the cursor in the result

Descrição

int cubrid_move_cursor ( resource $req_identifier , int $offset [, int $origin = CUBRID_CURSOR_CURRENT ] )

The cubrid_move_cursor() function is used to move the current cursor location of req_identifier by the value set in the offset argument, to the direction set in the origin argument. To set the origin argument, you can use CUBRID_CURSOR_FIRST for the first part of the result, CUBRID_CURSOR_CURRENT for the current location of the result, or CUBRID_CURSOR_LAST for the last part of the result. If origin argument is not explicitly designated, then the function uses CUBRID_CURSOR_CURRENT as its default value.

If the value of cursor movement range goes over the valid limit, then the cursor moves to the next location after the valid range for the cursor. For example, if you move 20 units in the result with the size of 10, then the cursor will move to 11th place and return CUBRID_NO_MORE_DATA.

Parâmetros

req_identifier

Request identifier.

offset

Number of units you want to move the cursor.

origin

Location where you want to move the cursor from CUBRID_CURSOR_FIRST, CUBRID_CURSOR_CURRENT, CUBRID_CURSOR_LAST.

Valor Retornado

CUBRID_CURSOR_SUCCESS, when process is successful.

CUBRID_NO_MORE_DATA, when it is not a valid cursor location.

CUBRID_CURSOR_ERROR, in case of error.

Exemplos

Exemplo #1 cubrid_move_cursor() example

<?php
$conn = cubrid_connect("127.0.0.1", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");
cubrid_move_cursor($req, 1, CUBRID_CURSOR_LAST);

$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_CURRENT);
$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  string(1) "G"
  [1]=>
  string(4) "Gold"
}
array(2) {
  [0]=>
  string(1) "X"
  [1]=>
  string(5) "Mixed"
}
array(2) {
  [0]=>
  string(1) "M"
  [1]=>
  string(3) "Man"
}

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_lock_write
cubrid_num_cols
CUBRID Funções


Return the number of columns in the result set

cubrid_move_cursor
cubrid_num_rows
CUBRID Funções
PHP Manual

cubrid_num_cols

(PECL CUBRID >= 8.3.0)

cubrid_num_cols — Return the number of columns in the result set

Descrição

int cubrid_num_cols ( resource $req_identifier )

The cubrid_num_cols() function is used to get the number of columns from the query result. It can only be used when the query executed is a select sentence.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

Number of columns, when process is successful.

-1, if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_num_cols() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");

$row_num = cubrid_num_rows($req);
$col_num = cubrid_num_cols($req);

printf("Row Num: %d\nColumn Num: %d\n", $row_num, $col_num);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Row Num: 6
Column Num: 2

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_num_rows() - Get the number of rows in the result set

cubrid_move_cursor
cubrid_num_rows
CUBRID Funções


Get the number of rows in the result set

cubrid_num_cols
cubrid_prepare
CUBRID Funções
PHP Manual

cubrid_num_rows

(PECL CUBRID >= 8.3.0)

cubrid_num_rows — Get the number of rows in the result set

Descrição

int cubrid_num_rows ( resource $req_identifier )

The cubrid_num_rows() function is used to get the number of rows from the query result. You can use it only when the query executed is a select sentence. When you want to know such value for INSERT, UPDATE, or DELETE query, you have to use the cubrid_affected_rows() function.

Note: The cubrid_num_rows() function can only be used for synchronous query; it returns 0 when it is used for asynchronous query.

Parâmetros

req_identifier

Request identifier.

Valor Retornado

Number of rows, when process is successful.

0 when the query was done in async mode.

-1, if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_num_rows() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");

$row_num = cubrid_num_rows($req);
$col_num = cubrid_num_cols($req);

printf("Row Num: %d\nColumn Num: %d\n", $row_num, $col_num);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Row Num: 6
Column Num: 2

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_num_cols() - Return the number of columns in the result set
  • cubrid_affected_rows() - Return the number of rows affected by the last SQL statement

cubrid_num_cols
cubrid_prepare
CUBRID Funções


Prepare an SQL statement for execution

cubrid_num_rows
cubrid_put
CUBRID Funções
PHP Manual

cubrid_prepare

(PECL CUBRID >= 8.3.0)

cubrid_prepare — Prepare an SQL statement for execution

Descrição

resource cubrid_prepare ( resource $conn_identifier , string $prepare_stmt [, int $option = 0 ] )

The cubrid_prepare() function is a sort of API which represents SQL statements compiled previously to a given connection handle. This pre-compiled SQL statement will be included in the cubrid_prepare().

Accordingly, you can use this statement effectively to execute several times repeatedly or to process long data. Only a single statement can be used and a parameter may put a question mark (?) to appropriate area in the SQL statement. Add a parameter when you bind a value in the VALUES clause of INSERT statement or in the WHERE clause. Note that it is allowed to bind a value to a MARK(?) by the cubrid_bind() only.

Parâmetros

conn_identifier

Connection identifier.

prepare_stmt

Prepare query.

option

OID return option CUBRID_INCLUDE_OID.

Valor Retornado

Request identifier, if process is successful;

FALSE, if process is unsuccessful.

Exemplos

Exemplo #1 cubrid_prepare() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$sql = <<<EOD
SELECT g.event_code, e.name
FROM game g
JOIN event e ON g.event_code=e.code
WHERE host_year = ? AND event_code NOT IN (SELECT event_code FROM game WHERE host_year=?) GROUP BY event_code;
EOD;

$req = cubrid_prepare($conn, $sql);

cubrid_bind($req, 1, 2004);
cubrid_bind($req, 2, 2000);
cubrid_execute($req);

$row_num = cubrid_num_rows($req);
printf("There are %d event that exits in 2004 olympic but not in 2000. For example:\n\n", $row_num);

printf("%-15s %s\n", "Event_code", "Event_name");
printf("----------------------------\n");

$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);
$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

There are 27 event that exits in 2004 olympic but not in 2000. For example:

Event_code      Event_name
----------------------------
20063           +91kg
20070           64kg

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_bind() - Bind variables to a prepared statement as parameters

cubrid_num_rows
cubrid_put
CUBRID Funções


Update a column using OID

cubrid_prepare
cubrid_rollback
CUBRID Funções
PHP Manual

cubrid_put

(PECL CUBRID >= 8.3.0)

cubrid_put — Update a column using OID

Descrição

int cubrid_put ( resource $conn_identifier , string $oid [, string $attr ], mixed $value )

The cubrid_put() function is used to update an attribute of the instance of the given oid.

You can update single attribute by using string data type to set attr. In such case, you can use integer, float-point, or string type data for the value argument. To update multiple number of attributes, you can disregard the attr argument, and set value argument with associative array data type.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance that you want to update.

attr

Name of the attribute that you want to update.

value

New value that you want to assign to the attribute.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_put() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(2, {4,5,7}, {44,55,66,666}, 'b')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_put($conn, $oid, "b", array(2, 4, 8));

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
array(3) {
  [0]=>
  string(1) "2"
  [1]=>
  string(1) "4"
  [2]=>
  string(1) "8"
}

Veja Também

  • cubrid_get() - Get a column using OID
  • cubrid_set_add() - Insert a single element to set type column using OID
  • cubrid_set_drop() - Delete an element from set type column using OID
  • cubrid_seq_insert() - Insert an element to a sequence type column using OID
  • cubrid_seq_drop() - Delete an element from sequence type column using OID
  • cubrid_seq_put() - Update the element value of sequence type column using OID

cubrid_prepare
cubrid_rollback
CUBRID Funções


Roll back a transaction

cubrid_put
cubrid_schema
CUBRID Funções
PHP Manual

cubrid_rollback

(PECL CUBRID >= 8.3.0)

cubrid_rollback — Roll back a transaction

Descrição

bool cubrid_rollback ( resource $conn_identifier )

The cubrid_rollback() function executes rollback on the transaction pointed by conn_identifier, currently in progress.

Connection to server is closed after calling cubrid_rollback(). Connection handle, however, is still valid.

Parâmetros

conn_identifier

Connection identifier.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_rollback() example

<?php
$conn = cubrid_connect("127.0.0.1", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE publishers");

$sql = <<<EOD
CREATE TABLE publishers(
pub_id CHAR(3),
pub_name VARCHAR(20),
city VARCHAR(15),
state CHAR(2),
country VARCHAR(15)
)
EOD;

if (!cubrid_execute($conn, $sql)) {
    printf("Error facility: %d\nError code: %d\nError msg: %s\n", cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());

    cubrid_disconnect($conn);
    exit;
}

$req = cubrid_prepare($conn, "INSERT INTO publishers VALUES(?, ?, ?, ?, ?)");

$id_list = array("P01", "P02", "P03", "P04");
$name_list = array("Abatis Publishers", "Core Dump Books", "Schadenfreude Press", "Tenterhooks Press");
$city_list = array("New York", "San Francisco", "Hamburg", "Berkeley");
$state_list = array("NY", "CA", NULL, "CA");
$country_list = array("USA", "USA", "Germany", "USA");

for ($i = 0, $size = count($id_list); $i < $size; $i++) {
    cubrid_bind($req, 1, $id_list[$i]);
    cubrid_bind($req, 2, $name_list[$i]);
    cubrid_bind($req, 3, $city_list[$i]);
    cubrid_bind($req, 4, $state_list[$i]);
    cubrid_bind($req, 5, $country_list[$i]);

    if (!($ret = cubrid_execute($req))) {
        break;
    }
}

if (!$ret) {
    cubrid_rollback($conn);
} else {
    cubrid_commit($conn);

    $req = cubrid_execute($conn, "SELECT * FROM publishers");
    while ($result = cubrid_fetch_assoc($req)) {
        printf("%-3s %-20s %-15s %-3s %-15s\n",
            $result["pub_id"], $result["pub_name"], $result["city"], $result["state"], $result["country"]);
    }
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

P01 Abatis Publishers    New York        NY  USA
P02 Core Dump Books      San Francisco   CA  USA
P03 Schadenfreude Press  Hamburg             Germany
P04 Tenterhooks Press    Berkeley        CA  USA

Veja Também

  • cubrid_commit() - Commit a transaction
  • cubrid_disconnect() - Close a database connection

cubrid_put
cubrid_schema
CUBRID Funções


Get the requested schema information

cubrid_rollback
cubrid_seq_drop
CUBRID Funções
PHP Manual

cubrid_schema

(PECL CUBRID >= 8.3.0)

cubrid_schema — Get the requested schema information

Descrição

array cubrid_schema ( resource $conn_identifier , int $schema_type [, string $class_name [, string $attr_name ]] )

The cubrid_schema() function is used to get the requested schema information from database. You have to designate class_name, if you want to get information on certain class, attr_name, if you want to get information on certain attribute (can be used only with CUBRID_ SCH_ATTR_PRIVILEGE).

The result of the cubrid_schema function is returned as a two-dimensional array (column (associative array) * row (numeric array)). The following tables shows types of schema and the column structure of the result array to be returned based on the schema type.

Result Composition of Each Type
Schema | Column Number | Column Name | Value
CUBRID_SCH_CLASS | 1 | NAME |
 | 2 | TYPE | 0:system class 1:vclass 2:class
CUBRID_SCH_VCLASS | 1 | NAME |
 | 2 | TYPE | 1:vclass
CUBRID_SCH_QUERY_SPEC | 1 | QUERY_SPEC |
CUBRID_SCH_ATTRIBUTE / CUBRID_SCH_CLASS_ATTRIBUTE | 1 | ATTR_NAME |
 | 2 | DOMAIN |
 | 3 | SCALE |
 | 4 | PRECISION |
 | 5 | INDEXED | 1:indexed
 | 6 | NOT NULL | 1:not null
 | 7 | SHARED | 1:shared
 | 8 | UNIQUE | 1:unique
 | 9 | DEFAULT |
 | 10 | ATTR_ORDER | base:1
 | 11 | CLASS_NAME |
 | 12 | SOURCE_CLASS |
 | 13 | IS_KEY | 1:key
CUBRID_SCH_METHOD / CUBRID_SCH_CLASS_METHOD | 1 | NAME |
 | 2 | RET_DOMAIN |
 | 3 | ARG_DOMAIN |
CUBRID_SCH_METHOD_FILE | 1 | METHOD_FILE |
CUBRID_SCH_SUPERCLASS / CUBRID_SCH_DIRECT_SUPER_CLASS / CUBRID_SCH_SUBCLASS | 1 | CLASS_NAME |
 | 2 | TYPE | 0:system class 1:vclass 2:class
CUBRID_SCH_CONSTRAINT | 1 | TYPE | 0:unique 1:index 2:reverse unique 3:reverse index
 | 2 | NAME |
 | 3 | ATTR_NAME |
 | 4 | NUM_PAGES |
 | 5 | NUM_KEYS |
 | 6 | PRIMARY_KEY | 1:primary key
 | 7 | KEY_ORDER | base:1
CUBRID_SCH_TRIGGER | 1 | NAME |
 | 2 | STATUS |
 | 3 | EVENT |
 | 4 | TARGET_CLASS |
 | 5 | TARGET_ATTR |
 | 6 | ACTION_TIME |
 | 7 | ACTION |
 | 8 | PRIORITY |
 | 9 | CONDITION_TIME |
 | 10 | CONDITION |
CUBRID_SCH_CLASS_PRIVILEGE / CUBRID_SCH_ATTR_PRIVILEGE | 1 | CLASS_NAME / ATTR_NAME |
 | 2 | PRIVILEGE |
 | 3 | GRANTABLE |
CUBRID_SCH_PRIMARY_KEY | 1 | CLASS_NAME |
 | 2 | ATTR_NAME |
 | 3 | KEY_SEQ | base:1
 | 4 | KEY_NAME |
CUBRID_SCH_IMPORTED_KEYS / CUBRID_SCH_EXPORTED_KEYS / CUBRID_SCH_CROSS_REFERENCE | 1 | PKTABLE_NAME |
 | 2 | PKCOLUMN_NAME |
 | 3 | FKTABLE_NAME | base:1
 | 4 | FKCOLUMN_NAME |
 | 5 | KEY_SEQ | base:1
 | 6 | UPDATE_ACTION | 0:cascade 1:restrict 2:no action 3:set null
 | 7 | DELETE_ACTION | 0:cascade 1:restrict 2:no action 3:set null
 | 8 | FK_NAME |
 | 9 | PK_NAME |

Parâmetros

conn_identifier

Connection identifier.

schema_type

Schema data that you want to know.

class_name

Class you want to know the schema of.

attr_name

Attribute you want to know the schema of.

Valor Retornado

Array containing the schema information, when process is successful;

FALSE, when process is unsuccessful

Histórico

Versão | Descrição
8.3.1 | Change return value: when process is unsuccessful, return false, not -1.

Exemplos

Exemplo #1 cubrid_schema() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

printf("\n--- Primary Key ---\n");
$pk = cubrid_schema($conn, CUBRID_SCH_PRIMARY_KEY, "game");
var_dump($pk);

printf("\n--- Foreign Keys ---\n");
$fk = cubrid_schema($conn, CUBRID_SCH_IMPORTED_KEYS, "game");
var_dump($fk);

printf("\n--- Column Attribute ---\n");
$attr = cubrid_schema($conn, CUBRID_SCH_ATTRIBUTE, "stadium", "area");
var_dump($attr);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

--- Primary Key ---
array(3) {
  [0]=>
  array(4) {
    ["CLASS_NAME"]=>
    string(4) "game"
    ["ATTR_NAME"]=>
    string(12) "athlete_code"
    ["KEY_SEQ"]=>
    string(1) "3"
    ["KEY_NAME"]=>
    string(41) "pk_game_host_year_event_code_athlete_code"
  }
  [1]=>
  array(4) {
    ["CLASS_NAME"]=>
    string(4) "game"
    ["ATTR_NAME"]=>
    string(10) "event_code"
    ["KEY_SEQ"]=>
    string(1) "2"
    ["KEY_NAME"]=>
    string(41) "pk_game_host_year_event_code_athlete_code"
  }
  [2]=>
  array(4) {
    ["CLASS_NAME"]=>
    string(4) "game"
    ["ATTR_NAME"]=>
    string(9) "host_year"
    ["KEY_SEQ"]=>
    string(1) "1"
    ["KEY_NAME"]=>
    string(41) "pk_game_host_year_event_code_athlete_code"
  }
}

--- Foreign Keys ---
array(2) {
  [0]=>
  array(9) {
    ["PKTABLE_NAME"]=>
    string(7) "athlete"
    ["PKCOLUMN_NAME"]=>
    string(4) "code"
    ["FKTABLE_NAME"]=>
    string(4) "game"
    ["FKCOLUMN_NAME"]=>
    string(12) "athlete_code"
    ["KEY_SEQ"]=>
    string(1) "1"
    ["UPDATE_RULE"]=>
    string(1) "1"
    ["DELETE_RULE"]=>
    string(1) "1"
    ["FK_NAME"]=>
    string(20) "fk_game_athlete_code"
    ["PK_NAME"]=>
    string(15) "pk_athlete_code"
  }
  [1]=>
  array(9) {
    ["PKTABLE_NAME"]=>
    string(5) "event"
    ["PKCOLUMN_NAME"]=>
    string(4) "code"
    ["FKTABLE_NAME"]=>
    string(4) "game"
    ["FKCOLUMN_NAME"]=>
    string(10) "event_code"
    ["KEY_SEQ"]=>
    string(1) "1"
    ["UPDATE_RULE"]=>
    string(1) "1"
    ["DELETE_RULE"]=>
    string(1) "1"
    ["FK_NAME"]=>
    string(18) "fk_game_event_code"
    ["PK_NAME"]=>
    string(13) "pk_event_code"
  }
}

--- Column Attribute ---
array(1) {
  [0]=>
  array(13) {
    ["ATTR_NAME"]=>
    string(4) "area"
    ["DOMAIN"]=>
    string(1) "7"
    ["SCALE"]=>
    string(1) "2"
    ["PRECISION"]=>
    string(2) "10"
    ["INDEXED"]=>
    string(1) "0"
    ["NON_NULL"]=>
    string(1) "0"
    ["SHARED"]=>
    string(1) "0"
    ["UNIQUE"]=>
    string(1) "0"
    ["DEFAULT"]=>
    NULL
    ["ATTR_ORDER"]=>
    string(1) "4"
    ["CLASS_NAME"]=>
    string(7) "stadium"
    ["SOURCE_CLASS"]=>
    string(7) "stadium"
    ["IS_KEY"]=>
    string(1) "0"
  }
}
cubrid_rollback
cubrid_seq_drop
CUBRID Funções


Delete an element from sequence type column using OID

cubrid_schema
cubrid_seq_insert
CUBRID Funções
PHP Manual

cubrid_seq_drop

(PECL CUBRID >= 8.3.0)

cubrid_seq_drop — Delete an element from sequence type column using OID

Descrição

bool cubrid_seq_drop ( resource $conn_identifier , string $oid , string $attr_name , int $index )

The cubrid_seq_drop() function is used to delete an element you request from the given sequence type attribute in the database.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance you want to work with.

attr_name

Name of the attribute that you want to delete an element from.

index

Index of the element that you want to delete (1-based).

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_seq_drop() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c sequence(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_seq_drop($conn, $oid, "c", 4);

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(2) "11"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
  [3]=>
  string(3) "333"
}
array(3) {
  [0]=>
  string(2) "11"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
}

Veja Também

  • cubrid_seq_insert() - Insert an element to a sequence type column using OID
  • cubrid_seq_put() - Update the element value of sequence type column using OID

cubrid_schema
cubrid_seq_insert
CUBRID Funções


Insert an element to a sequence type column using OID

cubrid_seq_drop
cubrid_seq_put
CUBRID Funções
PHP Manual

cubrid_seq_insert

(PECL CUBRID >= 8.3.0)

cubrid_seq_insert — Insert an element to a sequence type column using OID

Descrição

bool cubrid_seq_insert ( resource $conn_identifier , string $oid , string $attr_name , int $index , string $seq_element )

The cubrid_col_insert() function is used to insert an element to a sequence type attribute in a requested location.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance you want to work with.

attr_name

Name of the attribute you want to insert an instance to.

index

Location of the element, you want to insert the element to (1-based).

seq_element

Content of the element that you want to insert.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_seq_insert() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c sequence(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_seq_insert($conn, $oid, "c", 5, "44");

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(2) "11"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
  [3]=>
  string(3) "333"
}
array(5) {
  [0]=>
  string(2) "11"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
  [3]=>
  string(3) "333"
  [4]=>
  string(2) "44"
}

Veja Também

  • cubrid_seq_drop() - Delete an element from sequence type column using OID
  • cubrid_seq_put() - Update the element value of sequence type column using OID

cubrid_seq_drop
cubrid_seq_put
CUBRID Funções


Update the element value of sequence type column using OID

cubrid_seq_insert
cubrid_set_add
CUBRID Funções
PHP Manual

cubrid_seq_put

(PECL CUBRID >= 8.3.0)

cubrid_seq_put — Update the element value of sequence type column using OID

Descrição

bool cubrid_seq_put ( resource $conn_identifier , string $oid , string $attr_name , int $index , string $seq_element )

The cubrid_seq_put() function is used to update the content of the requested element in a sequent type attribute using OID.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance you want to work with.

attr_name

Name of the attribute that you want to update an element.

index

Index (1-based) of the element that you want to update.

seq_element

New content that you want to use for the update.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_seq_put() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c sequence(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_seq_put($conn, $oid, "c", 1, "111");

$attr = cubrid_col_get($conn, $oid, "c");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(2) "11"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
  [3]=>
  string(3) "333"
}
array(4) {
  [0]=>
  string(3) "111"
  [1]=>
  string(2) "22"
  [2]=>
  string(2) "33"
  [3]=>
  string(3) "333"
}

Veja Também

  • cubrid_seq_drop() - Delete an element from sequence type column using OID
  • cubrid_seq_insert() - Insert an element to a sequence type column using OID

cubrid_seq_insert
cubrid_set_add
CUBRID Funções


Insert a single element to set type column using OID

cubrid_seq_put
cubrid_set_drop
CUBRID Funções
PHP Manual

cubrid_set_add

(PECL CUBRID >= 8.3.0)

cubrid_set_add — Insert a single element to set type column using OID

Descrição

bool cubrid_set_add ( resource $conn_identifier , string $oid , string $attr_name , string $set_element )

The cubrid_set_add() function is used to insert a single element to a set type attribute (set, multiset, sequence) you requested.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance you want to work with.

attr_name

Name of the attribute you want to insert an element.

set_element

Content of the element you want to insert.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_set_add() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_set_add($conn, $oid, "b", "4");

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
array(4) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
  [3]=>
  string(1) "4"
}

Veja Também

  • cubrid_seq_drop() - Delete an element from sequence type column using OID

cubrid_seq_put
cubrid_set_drop
CUBRID Funções


Delete an element from set type column using OID

cubrid_set_add
cubrid_version
CUBRID Funções
PHP Manual

cubrid_set_drop

(PECL CUBRID >= 8.3.0)

cubrid_set_drop — Delete an element from set type column using OID

Descrição

bool cubrid_set_drop ( resource $conn_identifier , string $oid , string $attr_name , string $set_element )

The cubrid_set_drop() function is used to delete an element that you request from the given set type (set, multiset) attribute of the database.

Parâmetros

conn_identifier

Connection identifier.

oid

OID of the instance you want to work with.

attr_name

Name of the attribute you want to delete an element from.

set_element

Content of the element you want to delete.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_set_drop() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

@cubrid_execute($conn, "DROP TABLE foo");
cubrid_execute($conn, "CREATE TABLE foo(a int AUTO_INCREMENT, b set(int), c list(int), d char(10))");
cubrid_execute($conn, "INSERT INTO foo(a, b, c, d) VALUES(1, {1,2,3}, {11,22,33,333}, 'a')");

$req = cubrid_execute($conn, "SELECT * FROM foo", CUBRID_INCLUDE_OID);

cubrid_move_cursor($req, 1, CUBRID_CURSOR_FIRST);
$oid = cubrid_current_oid($req);

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_set_drop($conn, $oid, "b", "1");

$attr = cubrid_col_get($conn, $oid, "b");
var_dump($attr);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}
array(2) {
  [0]=>
  string(1) "2"
  [1]=>
  string(1) "3"
}

Veja Também

  • cubrid_set_add() - Insert a single element to set type column using OID

cubrid_set_add
cubrid_version
CUBRID Funções


Get the CUBRID PHP module's version

cubrid_set_drop
CUBRID MySQL Compatibility Functions
CUBRID Funções
PHP Manual

cubrid_version

(PECL CUBRID >= 8.3.0)

cubrid_version — Get the CUBRID PHP module's version

Descrição

string cubrid_version ( void )

The cubrid_version() function is used to get the CUBRID PHP module's version.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Version information (eg. "8.3.1.0001").

Exemplos

Exemplo #1 cubrid_version() example

<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());

printf("\n");

$conn = cubrid_connect("localhost", 33088, "demodb");

if (!$conn) {
    die('Connect Error ('. cubrid_error_code() .')' . cubrid_error_msg());
}

$db_params = cubrid_get_db_parameter($conn);

while (list($param_name, $param_value) = each($db_params)) {
    printf("%-30s %s\n", $param_name, $param_value);
}

printf("\n");

$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();

printf("%-30s %s\n", "Server Info:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);

printf("\n");

$charset = cubrid_get_charset($conn);

printf("%-30s %s\n", "CUBRID Charset:", $charset);

cubrid_disconnect($conn);

?>

O exemplo acima irá imprimir:

CUBRID PHP Version:            8.3.1.0005

PARAM_ISOLATION_LEVEL          3
LOCK_TIMEOUT                   -1
MAX_STRING_LENGTH              1073741823
PARAM_AUTO_COMMIT              0

Server Info:                   8.3.1.0173
Client Info:                   8.3.1

CUBRID Charset:                iso8859-1

Veja Também

  • cubrid_error_code() - Get error code for the most recent function call
  • cubrid_error_code_facility() - Get the facility code of error

cubrid_set_drop
CUBRID MySQL Compatibility Functions
CUBRID Funções


CUBRID MySQL Compatibility Functions

Índice

  • cubrid_client_encoding — Return the current CUBRID connection charset
  • cubrid_close — Close CUBRID connection
  • cubrid_data_seek — Move the internal row pointer of the CUBRID result
  • cubrid_db_name — Get db name from results of cubrid_list_dbs
  • cubrid_errno — Return the numerical value of the error message from previous CUBRID operation
  • cubrid_error — Get the error message
  • cubrid_fetch_array — Fetch a result row as an associative array, a numeric array, or both
  • cubrid_fetch_assoc — Return the associative array that corresponds to the fetched row
  • cubrid_fetch_field — Get column information from a result and return as an object
  • cubrid_fetch_lengths — Return an array with the lengths of the values of each field from the current row
  • cubrid_fetch_object — Fetche the next row and returns it as an object
  • cubrid_fetch_row — Return a numerical array with the values of the current row
  • cubrid_field_flags — Return a string with the flags of the given field offset
  • cubrid_field_len — Get the maximum length of the specified field
  • cubrid_field_name — Return the name of the specified field index
  • cubrid_field_seek — Move the result set cursor to the specified field offset
  • cubrid_field_table — Return the name of the table of the specified field
  • cubrid_field_type — Return the type of the column corresponding to the given field offset
  • cubrid_list_dbs — Return an array with the list of all existing CUBRID databases
  • cubrid_num_fields — Return the number of columns in the result set
  • cubrid_ping — Ping a server connection or reconnect if there is no connection
  • cubrid_query — Send a CUBRID query
  • cubrid_real_escape_string — Escape special characters in a string for use in an SQL statement
  • cubrid_result — Return the value of a specific field in a specific row
  • cubrid_unbuffered_query — Perform a query without fetching the results into memory
cubrid_version
cubrid_client_encoding
CUBRID


Return the current CUBRID connection charset

CUBRID MySQL Compatibility Functions
cubrid_close
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_client_encoding

(PECL CUBRID >= 8.3.1)

cubrid_client_encoding — Return the current CUBRID connection charset

Descrição

string cubrid_client_encoding ([ resource $conn_identifier ] )

This function returns the current CUBRID connection charset.

Parâmetros

conn_identifier

The CUBRID connection. If the connection identifier is not specified, the last link opened by cubrid_connect() is assumed.

Valor Retornado

A string that represents the CUBRID connection charset; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_client_encoding() example

<?php
    $con = cubrid_connect("localhost", 33000, "demodb");
    if (!$con)
    {
        die('Could not connect.');
    }

    printf("CUBRID current charset: %s\n", cubrid_client_encoding($con));
?>

O exemplo acima irá imprimir:

Result:
CUBRID current charset: iso8859-1

Veja Também

  • cubrid_get_charset() - Return the current CUBRID connection charset

CUBRID MySQL Compatibility Functions
cubrid_close
CUBRID MySQL Compatibility Functions


Close CUBRID connection

cubrid_client_encoding
cubrid_data_seek
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_close

(PECL CUBRID >= 8.3.1)

cubrid_close — Close CUBRID connection

Descrição

bool cubrid_close ([ resource $conn_identifier ] )

The cubrid_close() function ends the transaction currently on process, closes the connection handle and disconnects from server. If there exists any request handle not closed yet at this point, it will be closed.

Parâmetros

conn_identifier

The CUBRID connection identifier. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_close() example

<?php
$con = cubrid_connect ("210.211.133.100", 12345, "demodb");
if ($con) {
   echo "connected successfully";
   $req = cubrid_execute ( $con, "insert into person values(1,'James')");
   if ($req) {
      cubrid_close_request ($req);
      cubrid_commit ($con);
   } else {
      cubrid_rollback ($con);
   }
   cubrid_close ($con);
}
?>

Veja Também

  • cubrid_connect() - Open a connection to a CUBRID Server

cubrid_client_encoding
cubrid_data_seek
CUBRID MySQL Compatibility Functions


Move the internal row pointer of the CUBRID result

cubrid_close
cubrid_db_name
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_data_seek

(PECL CUBRID >= 8.3.0)

cubrid_data_seek — Move the internal row pointer of the CUBRID result

Descrição

int cubrid_data_seek ( resource $req_identifier , int $row_number )

This function performs the moving of the internal row pointer of the CUBRID result (associated with the specified result identifier) to point to a specific row number. There are functions, such as cubrid_fetch_assoc(), which use the current stored value of row number.

Parâmetros

req_identifier

This is the request identifier.

row_number

This is the desired row number of the new result pointer.

Valor Retornado

CUBRID_CURSOR_SUCCESS, on success.

CUBRID_NO_MORE_DATA, when it is not a valid cursor location.

FALSE on CAS error, row count is 0, or invalid offset.

Exemplos

Exemplo #1 cubrid_data_seek() example

<?php
$conn = cubrid_connect("127.0.0.1", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");
cubrid_data_seek($req, 0);

$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_data_seek($req, 2);
$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_data_seek($req, 4);
$result = cubrid_fetch_row($req);
var_dump($result);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  string(1) "X"
  [1]=>
  string(5) "Mixed"
}
array(2) {
  [0]=>
  string(1) "M"
  [1]=>
  string(3) "Man"
}
array(2) {
  [0]=>
  string(1) "S"
  [1]=>
  string(6) "Silver"
}
cubrid_close
cubrid_db_name
CUBRID MySQL Compatibility Functions


Get db name from results of cubrid_list_dbs

cubrid_data_seek
cubrid_errno
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_db_name

(PECL CUBRID >= 8.3.1)

cubrid_db_name — Get db name from results of cubrid_list_dbs

Descrição

string cubrid_db_name ( array $result , int $index )

Retrieve the database name from a call to cubrid_list_dbs().

Parâmetros

result

The result pointer from a call to cubrid_list_dbs().

index

The index into the result set.

Valor Retornado

Returns the database name on success, and FALSE on failure. If FALSE is returned, use cubrid_error() to determine the nature of the error.

Exemplos

Exemplo #1 cubrid_db_name() example

<?php
error_reporting(E_ALL);

$conn = cubrid_connect('dbhost', 33000, 'demodb', 'username', 'password');
$db_list = cubrid_list_dbs($conn);

$i = 0;
$cnt = cubrid_num_rows($db_list);
while ($i < $cnt) {
    echo cubrid_db_name($db_list, $i) . "\n";
    $i++;
}
?>

Veja Também

  • cubrid_list_dbs() - Return an array with the list of all existing CUBRID databases

cubrid_data_seek
cubrid_errno
CUBRID MySQL Compatibility Functions


Return the numerical value of the error message from previous CUBRID operation

cubrid_db_name
cubrid_error
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_errno

(PECL CUBRID >= 8.3.1)

cubrid_errno — Return the numerical value of the error message from previous CUBRID operation

Descrição

int cubrid_errno ([ resource $conn_identifier ] )

Returns the error number from the last CUBRID function.

The cubrid_errno() function is used to get the error code of the error that occurred during the API execution. Usually, it gets the error code when API returns false as its return value.

Parâmetros

conn_identifier

The CUBRID connection identifier. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

Returns the error number from the last CUBRID function, or 0 (zero) if no error occurred.

Exemplos

Exemplo #1 cubrid_errno() example

<?php
$req = cubrid_execute($con, "select id, name from person");
if ($req) {
    while (list ($id, $name) = cubrid_fetch($req))
    echo $id, $name;
} else {
    echo "Error Code: ", cubrid_errno($con);
    echo "Error Message: ", cubrid_error($con);
}
?>

Veja Também

  • cubrid_error() - Get the error message
  • cubrid_error_code() - Get error code for the most recent function call
  • cubrid_error_msg() - Get last error message for the most recent function call

cubrid_db_name
cubrid_error
CUBRID MySQL Compatibility Functions


Get the error message

cubrid_errno
cubrid_fetch_array
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_error

(PECL CUBRID >= 8.3.1)

cubrid_error — Get the error message

Descrição

string cubrid_error ([ resource $connection ] )

The cubrid_error() function is used to get the error message that occurred during the use of CUBRID API. Usually, it gets error message when API returns false as its return value.

Parâmetros

connection

Valor Retornado

Error message that occurred.

Exemplos

Exemplo #1 cubrid_error() example

<?php
$req = cubrid_execute($con, "select id, name from person");
if ($req) {
    while (list ($id, $name) = cubrid_fetch($req))
    echo $id, $name;
} else {
    echo "Error Code: ", cubrid_errno($con);
    echo "Error Message: ", cubrid_error($con);
}
?>

Veja Também

  • cubrid_errno() - Return the numerical value of the error message from previous CUBRID operation
  • cubrid_error_code() - Get error code for the most recent function call
  • cubrid_error_msg() - Get last error message for the most recent function call

cubrid_errno
cubrid_fetch_array
CUBRID MySQL Compatibility Functions


Fetch a result row as an associative array, a numeric array, or both

cubrid_error
cubrid_fetch_assoc
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_array

(PECL CUBRID >=8.3.0)

cubrid_fetch_array — Fetch a result row as an associative array, a numeric array, or both

Descrição

array cubrid_fetch_array ( resource $result [, int $type = CUBRID_BOTH ] )

The cubrid_fetch_array() function is used to get a single row from the query result and returns an array. The cursor automatically moves to the next row after getting the result.

Parâmetros

result

Result comes from a call to cubrid_execute()

type

Array type of the fetched result CUBRID_NUM, CUBRID_ASSOC, CUBRID_BOTH.

Valor Retornado

Returns an array of strings that corresponds to the fetched row, when process is successful.

FALSE, when process is unsuccessful.

The type of returned array depends on how type is defined. By using CUBRID_BOTH (default), you'll get an array with both associative and number indices, and you can decide which data type to use by setting the type argument. The type variable can be set to one of the following values:

  • CUBRID_NUM : Numerical array (0-based)
  • CUBRID_ASSOC : Associative array
  • CUBRID_BOTH : Numerical & Associative array (default)

Exemplos

Exemplo #1 cubrid_fetch_array() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT name,area,seats,address FROM stadium WHERE nation_code='GRE' AND seats > 10000");

printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch_array($req, CUBRID_NUM)) {
    printf("%-40s %-10s %-6s %-20s\n", $row[0], $row[1], $row[2], $row[3]);
}

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

name                                     area       seats  address
Panathinaiko Stadium                     86300.00   50000  Athens, Greece
Olympic Stadium                          54700.00   13000  Athens, Greece
Olympic Indoor Hall                      34100.00   18800  Athens, Greece
Olympic Hall                             52400.00   21000  Athens, Greece
Olympic Aquatic Centre                   42500.00   11500  Athens, Greece
Markopoulo Olympic Equestrian Centre     64000.00   15000  Markopoulo, Athens, Greece
Faliro Coastal Zone Olympic Complex      34650.00   12171  Faliro, Athens, Greece
Athens Olympic Stadium                   120400.00  71030  Maroussi, Athens, Greece
Ano Liossia                              34000.00   12000  Ano Liosia, Athens, Greece

Veja Também

  • cubrid_execute() - Execute a prepared SQL statement

cubrid_error
cubrid_fetch_assoc
CUBRID MySQL Compatibility Functions


Return the associative array that corresponds to the fetched row

cubrid_fetch_array
cubrid_fetch_field
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_assoc

(PECL CUBRID >= 8.3.0)

cubrid_fetch_assoc — Return the associative array that corresponds to the fetched row

Descrição

array cubrid_fetch_assoc ( resource $result )

This function returns the associative array, that corresponds to the fetched row, and then moves the internal data pointer ahead, or returns FALSE when the end is reached.

Parâmetros

result

result comes from a call to cubrid_execute()

Valor Retornado

Associative array, when process is successful.

FALSE when the end is reached, or error.

Exemplos

Exemplo #1 cubrid_fetch_assoc() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT name,area,seats,address FROM stadium WHERE nation_code='GRE' AND seats > 10000");

printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch_assoc($req)) {
    printf("%-40s %-10s %-6s %-20s\n",
        $row["name"], $row["area"], $row["seats"], $row["address"]);
}

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

name                                     area       seats  address
Panathinaiko Stadium                     86300.00   50000  Athens, Greece
Olympic Stadium                          54700.00   13000  Athens, Greece
Olympic Indoor Hall                      34100.00   18800  Athens, Greece
Olympic Hall                             52400.00   21000  Athens, Greece
Olympic Aquatic Centre                   42500.00   11500  Athens, Greece
Markopoulo Olympic Equestrian Centre     64000.00   15000  Markopoulo, Athens, Greece
Faliro Coastal Zone Olympic Complex      34650.00   12171  Faliro, Athens, Greece
Athens Olympic Stadium                   120400.00  71030  Maroussi, Athens, Greece
Ano Liossia                              34000.00   12000  Ano Liosia, Athens, Greece
cubrid_fetch_array
cubrid_fetch_field
CUBRID MySQL Compatibility Functions


Get column information from a result and return as an object

cubrid_fetch_assoc
cubrid_fetch_lengths
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_field

(PECL CUBRID >= 8.3.0)

cubrid_fetch_field — Get column information from a result and return as an object

Descrição

object cubrid_fetch_field ( resource $result [, int $field_offset = 0 ] )

This function returns an object with certain properties of the specific column. The properties of the object are:

name

column name

table

name of the table that the column belongs to

def

default value of the column

max_length

maximum length of the column

not_null

1 if the column cannot be NULL

unique_key

1 if the column is an unique key

multiple_key

1 if the column is a non-unique key

numeric

1 if the column is numeric

type

the type of the column

Parâmetros

result

result comes from a call to cubrid_execute()

field_offset

The numerical field offset. If the field offset is not specified, the next field (that was not yet retrieved by this function) is retrieved. The field_offset starts at 0.

Valor Retornado

Object with certain properties of the specific column, when process is successful.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_fetch_field() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT event_code,athlete_code,nation_code,game_date FROM game WHERE host_year=1988 and event_code=20001;");

var_dump(cubrid_fetch_row($req));

cubrid_field_seek($req, 1);
$field = cubrid_fetch_field($req);

printf("\n--- Field Properties ---\n");
printf("%-30s %s\n", "name:", $field->name);
printf("%-30s %s\n", "table:", $field->table);
printf("%-30s \"%s\"\n", "default value:", $field->def);
printf("%-30s %d\n", "max lenght:", $field->max_length);
printf("%-30s %d\n", "not null:", $field->not_null);
printf("%-30s %d\n", "unique key:", $field->unique_key);
printf("%-30s %d\n", "multiple key:", $field->multiple_key);
printf("%-30s %d\n", "numeric:", $field->numeric);
printf("%-30s %s\n", "type:", $field->type);

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(5) "20001"
  [1]=>
  string(5) "16681"
  [2]=>
  string(3) "KOR"
  [3]=>
  string(9) "1988-9-30"
}

--- Field Properties ---
name:                          athlete_code
table:                         game
default value:                 ""
max lenght:                    5
not null:                      1
unique key:                    1
multiple key:                  0
numeric:                       1
type:                          integer
cubrid_fetch_assoc
cubrid_fetch_lengths
CUBRID MySQL Compatibility Functions


Return an array with the lengths of the values of each field from the current row

cubrid_fetch_field
cubrid_fetch_object
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_lengths

(PECL CUBRID >= 8.3.0)

cubrid_fetch_lengths — Return an array with the lengths of the values of each field from the current row

Descrição

array cubrid_fetch_lengths ( resource $result )

This function returns an numeric array with the lengths of the values of each field from the current row of the result set or it returns FALSE on failure.

Nota:

If field data type is BLOB/CLOB, you should get its length by using cubrid_lob_size().

Parâmetros

result

result comes from a call to cubrid_execute()

Valor Retornado

An numeric array, when process is successful.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_fetch_lengths() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$row = cubrid_fetch_row($result);
print_r($row);

$lens = cubrid_fetch_lengths($result);
print_r($lens);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 2004
    [1] => 20085
    [2] => 15118
    [3] => 30134
    [4] => AUS
    [5] => G
    [6] => 2004-8-20
)
Array
(
    [0] => 4
    [1] => 5
    [2] => 5
    [3] => 5
    [4] => 3
    [5] => 1
    [6] => 9
)
cubrid_fetch_field
cubrid_fetch_object
CUBRID MySQL Compatibility Functions


Fetche the next row and returns it as an object

cubrid_fetch_lengths
cubrid_fetch_row
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_object

(PECL CUBRID >= 8.3.0)

cubrid_fetch_object — Fetche the next row and returns it as an object

Descrição

object cubrid_fetch_object ( resource $result [, string $class_name [, array $params ]] )

This function returns an object with the column names of the result set as properties. The values of these properties are extracted from the current row of the result.

Parâmetros

result

result comes from a call to cubrid_execute()

class_name

The name of the class to instantiate. If not specified, a stdClass (stdClass is PHP's generic empty class that's used when casting other types to objects) object is returned.

params

An optional array of parameters to pass to the constructor for class_name objects.

Valor Retornado

An object, when process is successful.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_fetch_object() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$res = cubrid_execute($conn, "SELECT * FROM code");

var_dump(cubrid_fetch_object($res));

class demodb_code {
    public $s_name = null;
    public $f_name = null;

    public function toString() {
        var_dump($this);
    }
}

var_dump(cubrid_fetch_object($res, "demodb_code"));

class demodb_code_construct extends demodb_code {
    public function __construct($s, $f) {
        $this->s_name = $s;
        $this->f_name = $f;
    }
}

var_dump(cubrid_fetch_object($res, 'demodb_code_construct', array('s_name', 'f_name')));
var_dump(cubrid_fetch_object($res));

cubrid_close_request($res);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

object(stdClass)#1 (2) {
  ["s_name"]=>
  string(1) "X"
  ["f_name"]=>
  string(5) "Mixed"
}
object(demodb_code)#1 (2) {
  ["s_name"]=>
  string(1) "W"
  ["f_name"]=>
  string(5) "Woman"
}
object(demodb_code_construct)#1 (2) {
  ["s_name"]=>
  string(6) "s_name"
  ["f_name"]=>
  string(6) "f_name"
}
object(stdClass)#1 (2) {
  ["s_name"]=>
  string(1) "B"
  ["f_name"]=>
  string(6) "Bronze"
}
cubrid_fetch_lengths
cubrid_fetch_row
CUBRID MySQL Compatibility Functions


Return a numerical array with the values of the current row

cubrid_fetch_object
cubrid_field_flags
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_fetch_row

(PECL CUBRID >= 8.3.0)

cubrid_fetch_row — Return a numerical array with the values of the current row

Descrição

array cubrid_fetch_row ( resource $result )

This function returns a numerical array with the values of the current row from the result set, starting from 0, and moves the internal data pointer ahead.

Parâmetros

result

result comes from a call to cubrid_execute()

Valor Retornado

A numerical array, when process is successful.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_fetch_row() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT name,area,seats,address FROM stadium WHERE nation_code='GRE' AND seats > 10000");

printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch_row($req)) {
    printf("%-40s %-10s %-6s %-20s\n", $row[0], $row[1], $row[2], $row[3]);
}

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

name                                     area       seats  address
Panathinaiko Stadium                     86300.00   50000  Athens, Greece
Olympic Stadium                          54700.00   13000  Athens, Greece
Olympic Indoor Hall                      34100.00   18800  Athens, Greece
Olympic Hall                             52400.00   21000  Athens, Greece
Olympic Aquatic Centre                   42500.00   11500  Athens, Greece
Markopoulo Olympic Equestrian Centre     64000.00   15000  Markopoulo, Athens, Greece
Faliro Coastal Zone Olympic Complex      34650.00   12171  Faliro, Athens, Greece
Athens Olympic Stadium                   120400.00  71030  Maroussi, Athens, Greece
Ano Liossia                              34000.00   12000  Ano Liosia, Athens, Greece
cubrid_fetch_object
cubrid_field_flags
CUBRID MySQL Compatibility Functions


Return a string with the flags of the given field offset

cubrid_fetch_row
cubrid_field_len
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_flags

(PECL CUBRID >= 8.3.0)

cubrid_field_flags — Return a string with the flags of the given field offset

Descrição

string cubrid_field_flags ( resource $result , int $field_offset )

This function returns a string with the flags of the given field offset separated by space. You can split the returned value using explode. The possible flags could be: not_null, primary_key, unique_key, foreign_key, auto_increment, shared, reverse_index, reverse_unique and timestamp.

Parâmetros

result

result comes from a call to cubrid_execute()

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

A string with flags, when process is successful.

FALSE when invalid field_offset value.

-1 if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_field_flags() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$col_num = cubrid_num_cols($result);

printf("%-30s %s\n", "Field Name", "Field Flags");
for($i = 0; $i < $col_num; $i++) {
    printf("%-30s %s\n", cubrid_field_name($result, $i), cubrid_field_flags($result, $i));
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Field Name                     Field Flags
host_year                      not_null primary_key unique_key
event_code                     not_null primary_key unique_key foreign_key
athlete_code                   not_null primary_key unique_key foreign_key
stadium_code                   not_null
nation_code
medal
game_date
cubrid_fetch_row
cubrid_field_len
CUBRID MySQL Compatibility Functions


Get the maximum length of the specified field

cubrid_field_flags
cubrid_field_name
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_len

(PECL CUBRID >= 8.3.0)

cubrid_field_len — Get the maximum length of the specified field

Descrição

int cubrid_field_len ( resource $result , int $field_offset )

This function returns the maximum length of the specified field on success, or it returns FALSE on failure.

Parâmetros

result

result comes from a call to cubrid_execute()

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

Maximum length, when process is successful.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_field_len() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$column_names = cubrid_column_names($result);
$column_types = cubrid_column_types($result);

printf("%-30s %-30s %-15s\n", "Column Names", "Column Types", "Column Maxlen");
for($i = 0, $size = count($column_names); $i < $size; $i++) {
    $column_len = cubrid_field_len($result, $i);
    printf("%-30s %-30s %-15s\n", $column_names[$i], $column_types[$i], $column_len);
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Column Names                   Column Types                   Column Maxlen
host_year                      integer                        11
event_code                     integer                        11
athlete_code                   integer                        11
stadium_code                   integer                        11
nation_code                    char(3)                        3
medal                          char(1)                        1
game_date                      date                           10
cubrid_field_flags
cubrid_field_name
CUBRID MySQL Compatibility Functions


Return the name of the specified field index

cubrid_field_len
cubrid_field_seek
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_name

(PECL CUBRID >= 8.3.0)

cubrid_field_name — Return the name of the specified field index

Descrição

string cubrid_field_name ( resource $result , int $field_offset )

This function returns the name of the specified field index on success or it returns FALSE on failure.

Parâmetros

result

result comes from a call to cubrid_execute()

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

Name of specified field index, on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_field_name() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM game WHERE host_year=2004 AND nation_code='AUS' AND medal='G'");

$col_num = cubrid_num_cols($result);

printf("%-30s %s\n", "Field Name", "Field Flags");
for($i = 0; $i < $col_num; $i++) {
    printf("%-30s %s\n", cubrid_field_name($result, $i), cubrid_field_flags($result, $i));
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Field Name                     Field Flags
host_year                      not_null primary_key unique_key
event_code                     not_null primary_key unique_key foreign_key
athlete_code                   not_null primary_key unique_key foreign_key
stadium_code                   not_null
nation_code
medal
game_date
cubrid_field_len
cubrid_field_seek
CUBRID MySQL Compatibility Functions


Move the result set cursor to the specified field offset

cubrid_field_name
cubrid_field_table
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_seek

(PECL CUBRID >= 8.3.0)

cubrid_field_seek — Move the result set cursor to the specified field offset

Descrição

bool cubrid_field_seek ( resource $result [, int $field_offset = 0 ] )

This function moves the result set cursor to the specified field offset. This offset is used by cubrid_fetch_field() if it doesn't include a field offset. It returns TRUE on success or FALSE on failure.

Parâmetros

result

result comes from a call to cubrid_execute()

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

TRUE on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_field_seek() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT event_code,athlete_code,nation_code,game_date FROM game WHERE host_year=1988 and event_code=20001;");

var_dump(cubrid_fetch_row($req));

cubrid_field_seek($req, 1);
$field = cubrid_fetch_field($req);

printf("\n--- Field Properties ---\n");
printf("%-30s %s\n", "name:", $field->name);
printf("%-30s %s\n", "table:", $field->table);
printf("%-30s \"%s\"\n", "default value:", $field->def);
printf("%-30s %d\n", "max lenght:", $field->max_length);
printf("%-30s %d\n", "not null:", $field->not_null);
printf("%-30s %d\n", "unique key:", $field->unique_key);
printf("%-30s %d\n", "multiple key:", $field->multiple_key);
printf("%-30s %d\n", "numeric:", $field->numeric);
printf("%-30s %s\n", "type:", $field->type);

cubrid_close_request($req);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(5) "20001"
  [1]=>
  string(5) "16681"
  [2]=>
  string(3) "KOR"
  [3]=>
  string(9) "1988-9-30"
}

--- Field Properties ---
name:                          athlete_code
table:                         game
default value:                 ""
max lenght:                    5
not null:                      1
unique key:                    1
multiple key:                  0
numeric:                       1
type:                          integer
cubrid_field_name
cubrid_field_table
CUBRID MySQL Compatibility Functions


Return the name of the table of the specified field

cubrid_field_seek
cubrid_field_type
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_table

(PECL CUBRID >= 8.3.0)

cubrid_field_table — Return the name of the table of the specified field

Descrição

string cubrid_field_table ( resource $result , int $field_offset )

This function returns the name of the table of the specified field. This is useful when using large select queries with JOINS.

Parâmetros

result

Array type of the fetched result CUBRID_NUM, CUBRID_ASSOC, CUBRID_BOTH.

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

Name of the table of the specified field, on success.

FALSE when invalid field_offset value.

-1 if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_field_table() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM code");

$col_num = cubrid_num_cols($result);

printf("%-15s %-15s %s\n", "Field Table", "Field Name", "Field Type");
for($i = 0; $i < $col_num; $i++) {
    printf("%-15s %-15s %s\n",
        cubrid_field_table($result, $i), cubrid_field_name($result, $i), cubrid_field_type($result, $i));
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Field Table     Field Name      Field Type
code            s_name          char(1)
code            f_name          varchar(6)
cubrid_field_seek
cubrid_field_type
CUBRID MySQL Compatibility Functions


Return the type of the column corresponding to the given field offset

cubrid_field_table
cubrid_list_dbs
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_field_type

(PECL CUBRID >= 8.3.0)

cubrid_field_type — Return the type of the column corresponding to the given field offset

Descrição

string cubrid_field_type ( resource $result , int $field_offset )

This function returns the type of the column corresponding to the given field offset. The returned field type could be one of the following: "int", "real", "string", etc.

Parâmetros

result

Array type of the fetched result CUBRID_NUM, CUBRID_ASSOC, CUBRID_BOTH.

field_offset

The numerical field offset. The field_offset starts at 0. If field_offset does not exist, an error of level E_WARNING is also issued.

Valor Retornado

Type of the column, on success.

FALSE when invalid field_offset value.

-1 if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_field_type() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT * FROM code");

$col_num = cubrid_num_cols($result);

printf("%-15s %-15s %s\n", "Field Table", "Field Name", "Field Type");
for($i = 0; $i < $col_num; $i++) {
    printf("%-15s %-15s %s\n",
        cubrid_field_table($result, $i), cubrid_field_name($result, $i), cubrid_field_type($result, $i));
}

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Field Table     Field Name      Field Type
code            s_name          char(1)
code            f_name          varchar(6)
cubrid_field_table
cubrid_list_dbs
CUBRID MySQL Compatibility Functions


Return an array with the list of all existing CUBRID databases

cubrid_field_type
cubrid_num_fields
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_list_dbs

(PECL CUBRID >= 8.3.0)

cubrid_list_dbs — Return an array with the list of all existing CUBRID databases

Descrição

array cubrid_list_dbs ( resource $conn_identifier )

This function returns an array with the list of all existing Cubrid databases.

Parâmetros

conn_identifier

The CUBRID connection.

Valor Retornado

An numeric array with all existing Cubrid databases; on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_list_dbs() example

<?php
$conn = cubrid_connect("localhost", 33088, "demodb");

$db_list = cubrid_list_dbs($conn);
var_dump($db_list);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(1) {
  [0]=>
  string(6) "demodb"
}
cubrid_field_type
cubrid_num_fields
CUBRID MySQL Compatibility Functions


Return the number of columns in the result set

cubrid_list_dbs
cubrid_ping
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_num_fields

(PECL CUBRID >= 8.3.0)

cubrid_num_fields — Return the number of columns in the result set

Descrição

int cubrid_num_fields ( resource $result )

This function returns the number of columns in the result set, on success, or it returns FALSE on failure.

Parâmetros

result

result comes from a call to cubrid_execute()

Valor Retornado

Number of columns, on success.

-1 if SQL sentence is not SELECT.

Exemplos

Exemplo #1 cubrid_num_fields() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");

$row_num = cubrid_num_rows($req);
$col_num = cubrid_num_fields($req);

printf("Row Num: %d\nColumn Num: %d\n", $row_num, $col_num);

cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

Row Num: 6
Column Num: 2
cubrid_list_dbs
cubrid_ping
CUBRID MySQL Compatibility Functions


Ping a server connection or reconnect if there is no connection

cubrid_num_fields
cubrid_query
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_ping

(PECL CUBRID >= 8.3.1)

cubrid_ping — Ping a server connection or reconnect if there is no connection

Descrição

bool cubrid_ping ([ resource $conn_identifier ] )

Checks whether or not the connection to the server is working.

Parâmetros

conn_identifier

The CUBRID connection identifier. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

Returns TRUE if the connection to the server CUBRID server is working, otherwise FALSE.

Exemplos

Exemplo #1 cubrid_ping() example

<?php
set_time_limit(0);

$conn = cubrid_connect('localhost', 33000, 'demodb');

/* Assuming this query will take a long time */
$result = cubrid_query($sql);
if (!$result) {
    echo 'Query #1 failed, exiting.';
    exit;
}

/* Make sure the connection is still alive, if not, try to reconnect */
if (!cubrid_ping($conn)) {
    echo 'Lost connection, exiting after query #1';
    exit;
}
cubrid_free_result($result);

/* So the connection is still alive, let's run another query */
$result2 = cubrid_query($sql2);
?>

cubrid_num_fields
cubrid_query
CUBRID MySQL Compatibility Functions


Send a CUBRID query

cubrid_ping
cubrid_real_escape_string
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_query

(PECL CUBRID >= 8.3.1)

cubrid_query — Send a CUBRID query

Descrição

resource cubrid_query ( string $query [, resource $conn_identifier ] )

cubrid_query() sends a unique query (multiple queries are not supported) to the currently active database on the server that's associated with the specified conn_identifier.

Parâmetros

query

An SQL query

Data inside the query should be properly escaped.

conn_identifier

The CUBRID connection. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, cubrid_query() returns a resource on success, or FALSE on error.

For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, cubrid_query() returns TRUE on success or FALSE on error.

The returned result resource should be passed to cubrid_fetch_array(), and other functions for dealing with result tables, to access the returned data.

Use cubrid_num_rows() to find out how many rows were returned for a SELECT statement or cubrid_affected_rows() to find out how many rows were affected by a DELETE, INSERT, REPLACE, or UPDATE statement.

cubrid_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query.

Exemplos

Exemplo #1 Invalid Query

The following query is syntactically invalid, so cubrid_query() fails and returns FALSE.

<?php
$conn = cubrid_connect('localhost', 33000, 'foo');

$result = cubrid_query('SELECT * WHERE 1=1');
if (!$result) {
    die('Invalid query: ' . cubrid_error());
}

?>

Exemplo #2 Valid Query

The following query is valid, so cubrid_query() returns a resource.

<?php
// This could be supplied by a user, for example
$firstname = 'fred';
$lastname  = 'fox';

$conn = cubrid_connect('localhost', 33000, 'foo');

// Formulate Query
// This is the best way to perform an SQL query
// For more examples, see cubrid_real_escape_string()
$query = sprintf("SELECT firstname, lastname, address, age FROM friends WHERE firstname='%s' AND lastname='%s'",
cubrid_real_escape_string($firstname),
cubrid_real_escape_string($lastname));

// Perform Query
$result = cubrid_query($query);

// Check result
// This shows the actual query sent to CUBRID, and the error. Useful for debugging.
if (!$result) {
    $message  = 'Invalid query: ' . cubrid_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
}

// Use result
// Attempting to print $result won't allow access to information in the resource
// One of the cubrid result functions must be used
// See also cubrid_result(), cubrid_fetch_array(), cubrid_fetch_row(), etc.
while ($row = cubrid_fetch_assoc($result)) {
    echo $row['firstname'];
    echo $row['lastname'];
    echo $row['address'];
    echo $row['age'];
}

// Free the resources associated with the result set
// This is done automatically at the end of the script
cubrid_free_result($result);
?>

Veja Também

  • cubrid_connect() - Open a connection to a CUBRID Server
  • cubrid_error() - Get the error message
  • cubrid_real_escape_string() - Escape special characters in a string for use in an SQL statement
  • cubrid_result() - Return the value of a specific field in a specific row
  • cubrid_fetch_assoc() - Return the associative array that corresponds to the fetched row
  • cubrid_unbuffered_query() - Perform a query without fetching the results into memory

cubrid_ping
cubrid_real_escape_string
CUBRID MySQL Compatibility Functions


Escape special characters in a string for use in an SQL statement

cubrid_query
cubrid_result
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_real_escape_string

(PECL CUBRID >= 8.3.0)

cubrid_real_escape_string — Escape special characters in a string for use in an SQL statement

Descrição

string cubrid_real_escape_string ( string $unescaped_string [, resource $conn_identifier ] )

This function returns the escaped string version of the given string. It will escape the following characters: '. In general, single quotations are used to enclose character string. Double quotations may be used as well depending on the value of ansi_quotes, which is a parameter related to SQL statement. If the ansi_quotes value is set to no, character string enclosed by double quotations is handled as character string, not as an identifier. The default value is yes. If you want to include a single quote as part of a character string, enter two single quotes in a row.

Parâmetros

unescaped_string

The string that is to be escaped.

conn_identifier

The CUBRID connection. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

Escaped string version of the given string, on success.

FALSE on failure.

Exemplos

Exemplo #1 cubrid_real_escape_string() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$unescaped_str = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~';
$escaped_str = cubrid_real_escape_string($unescaped_str);

$len = strlen($unescaped_str);

@cubrid_execute($conn, "DROP TABLE cubrid_test");
cubrid_execute($conn, "CREATE TABLE cubrid_test (t char($len))");
cubrid_execute($conn, "INSERT INTO cubrid_test (t) VALUES('$escaped_str')");

$req = cubrid_execute($conn, "SELECT * FROM cubrid_test");
$row = cubrid_fetch_assoc($req);

var_dump($row);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

array(1) {
  ["t"]=>
  string(95) " !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
}
cubrid_query
cubrid_result
CUBRID MySQL Compatibility Functions


Return the value of a specific field in a specific row

cubrid_real_escape_string
cubrid_unbuffered_query
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_result

(PECL CUBRID >= 8.3.0)

cubrid_result — Return the value of a specific field in a specific row

Descrição

string cubrid_result ( resource $result , int $row [, mixed $field = 0 ] )

This function returns the value of a specific field in a specific row from a result set.

Parâmetros

result

result comes from a call to cubrid_execute()

row

The row number from the result that is being retrieved. Row numbers start at 0.

field

The name or offset of the field being retrieved. It can be the field's offset, the field's name, or the field's table dot field name (tablename.fieldname). If the column name has been aliased ('select foo as bar from...'), use the alias instead of the column name. If undefined, the first field is retrieved.

Valor Retornado

Value of a specific field, on success (NULL if value if null).

FALSE on failure.

Exemplos

Exemplo #1 cubrid_result() example

<?php
$conn = cubrid_connect("localhost", 33000, "demodb");

$req = cubrid_execute($conn, "SELECT * FROM code");

$result = cubrid_result($req, 0);
var_dump($result);

$result = cubrid_result($req, 0, 1);
var_dump($result);

$result = cubrid_result($req, 5, "f_name");
var_dump($result);

cubrid_close_request($req);
cubrid_disconnect($conn);
?>

O exemplo acima irá imprimir:

string(1) "X"
string(5) "Mixed"
string(4) "Gold"
cubrid_real_escape_string
cubrid_unbuffered_query
CUBRID MySQL Compatibility Functions


Perform a query without fetching the results into memory

cubrid_result
CUBRID Obsolete Aliases and Functions
CUBRID MySQL Compatibility Functions
PHP Manual

cubrid_unbuffered_query

(PECL CUBRID >= 8.3.0)

cubrid_unbuffered_query — Perform a query without fetching the results into memory

Descrição

resource cubrid_unbuffered_query ( string $query [, resource $conn_identifier ] )

This function performs a query without waiting for that all query results have been complete. It will return when the results are being generated.

Parâmetros

query

A SQL query.

conn_identifier

The CUBRID connection. If the connection identifier is not specified, the last connection opened by cubrid_connect() is assumed.

Valor Retornado

For SELECT, SHOW, DESCRIBE or EXPLAIN statements returns a connection identifier resource on success.

For other type of SQL statements, UPDATE, DELETE, DROP, etc, returns TRUE on success.

FALSE on failure.

Notas

Nota:

The benefits of cubrid_unbuffered_query() come at a cost: you cannot use cubrid_num_rows() and cubrid_data_seek() on a result set returned from cubrid_unbuffered_query().

Exemplos

Exemplo #1 cubrid_unbuffered_query() example

<?php
    $link = cubrid_connect("localhost", 30000, "demodb2", "dba", "");
    if (!$link)
    {
        die('Could not connect.');
    }
    $query = "insert into employees (name, address, salary) values ('Michael', 'Boston, MA', 3750)";
    cubrid_unbuffered_query($query, $link);
?>
cubrid_result
CUBRID Obsolete Aliases and Functions
CUBRID MySQL Compatibility Functions


CUBRID Obsolete Aliases and Functions

Índice

  • cubrid_load_from_glo — Read data from a GLO instance and save it in a file
  • cubrid_new_glo — Create a glo instance
  • cubrid_save_to_glo — Save requested file in a GLO instance
  • cubrid_send_glo — Read data from glo and send it to std output
cubrid_unbuffered_query
cubrid_load_from_glo
CUBRID


Read data from a GLO instance and save it in a file

CUBRID Obsolete Aliases and Functions
cubrid_new_glo
CUBRID Obsolete Aliases and Functions
PHP Manual

cubrid_load_from_glo

(PECL CUBRID >= 8.3.0)

cubrid_load_from_glo — Read data from a GLO instance and save it in a file

Descrição

int cubrid_load_from_glo ( resource $conn_identifier , string $oid , string $file_name )

The cubrid_load_from_glo() function is used to read a data from a glo instance, and saves it in a designated file.

Parâmetros

conn_identifier

Connection identifier.

oid

Oid of the glo instance that you want to read the data from.

file_name

Name of the file where you want to save the data in.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_load_from_glo() example

<?php
$req = cubrid_execute ($con, "select image from person where id=1");
if ($req) {
   list ($oid) = cubrid_fetch($req);
   cubrid_close_request($req);
   $res = cubrid_load_from_glo ($con, $oid, "output.jpg");
   if ($res) {
      echo "image changed successfully";
   }
}
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: cubrid_load_from_glo()

Nota:

This function is removed from CUBRID 3.1.

Veja Também

  • cubrid_new_glo() - Create a glo instance
  • cubrid_save_to_glo() - Save requested file in a GLO instance
  • cubrid_send_glo() - Read data from glo and send it to std output

CUBRID Obsolete Aliases and Functions
cubrid_new_glo
CUBRID Obsolete Aliases and Functions


Create a glo instance

cubrid_load_from_glo
cubrid_save_to_glo
CUBRID Obsolete Aliases and Functions
PHP Manual

cubrid_new_glo

(PECL CUBRID >= 8.3.0)

cubrid_new_glo — Create a glo instance

Descrição

string cubrid_new_glo ( resource $conn_identifier , string $class_name , string $file_name )

The cubrid_new_glo() function is used to create a glo instance in the requested class (glo class). The glo created is a LO type, and is stored in the file_name file.

Parâmetros

conn_identifier

Connection identifier.

class_name

Name of the class that you want to create a glo in.

file_name

The file name that you want to save in the newly created glo.

Valor Retornado

Oid of the instance created, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_new_glo() example

<?php
$oid = cubrid_new_glo ($con, "glo", "input.jpg");
if ($oid){
   // the type of column "image" is "object"
   $req = cubrid_execute ($con, "insert into person(image) values($oid)");
   if ($req) {
      echo "image inserted successfully";
      cubrid_close_request ($req);
      cubrid_commit($con);
   }
}
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: cubrid_new_glo()

Nota:

This function is removed from CUBRID 3.1.

Veja Também

  • cubrid_save_to_glo() - Save requested file in a GLO instance
  • cubrid_load_from_glo() - Read data from a GLO instance and save it in a file
  • cubrid_send_glo() - Read data from glo and send it to std output

cubrid_load_from_glo
cubrid_save_to_glo
CUBRID Obsolete Aliases and Functions


Save requested file in a GLO instance

cubrid_new_glo
cubrid_send_glo
CUBRID Obsolete Aliases and Functions
PHP Manual

cubrid_save_to_glo

(PECL CUBRID >= 8.3.0)

cubrid_save_to_glo — Save requested file in a GLO instance

Descrição

int cubrid_save_to_glo ( resource $conn_identifier , string $oid , string $file_name )

The cubrid_save_to_glo() function is used to save requested file in a glo instance.

Parâmetros

conn_identifier

Connection identifier.

oid

Oid of the glo instance that you want to save a file in.

file_name

The name of the file that you want to save.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_save_to_glo() example

<?php
$req = cubrid_execute ($con, "select image from person where id=1");
if ($req) {
   list ($oid) = cubrid_fetch($req);
   cubrid_close_request($req);
   $res = cubrid_save_to_glo ($con, $oid, "input.jpg");
   if ($res) {
      echo "image changed successfully";
   }
}
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: cubrid_save_to_glo()

Nota:

This function is removed from CUBRID 3.1.

Veja Também

  • cubrid_new_glo() - Create a glo instance
  • cubrid_load_from_glo() - Read data from a GLO instance and save it in a file
  • cubrid_send_glo() - Read data from glo and send it to std output

cubrid_new_glo
cubrid_send_glo
CUBRID Obsolete Aliases and Functions


Read data from glo and send it to std output

cubrid_save_to_glo
dBase
CUBRID Obsolete Aliases and Functions
PHP Manual

cubrid_send_glo

(PECL CUBRID >= 8.3.0)

cubrid_send_glo — Read data from glo and send it to std output

Descrição

int cubrid_send_glo ( resource $conn_identifier , string $oid )

The cubrid_send_glo() function is used to read data from glo instance and sends it to the PHP standard output.

Parâmetros

conn_identifier

Connection identifier.

oid

Oid of the glo instance that you want to read data from.

Valor Retornado

TRUE, when process is successful.

FALSE, when process is unsuccessful.

Exemplos

Exemplo #1 cubrid_send_glo() example

<?php
$req = cubrid_execute ($con, "select image from person where id =1");
if ($req) {
  list ($oid) = cubrid_fetch($req);
  cubrid_close_request($req);
  Header ("Content-type: image/jpeg");
  cubrid_send_glo ($con, $oid);
}
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: cubrid_send_glo()

Nota:

This function is removed from CUBRID 3.1.

Veja Também

  • cubrid_new_glo() - Create a glo instance
  • cubrid_save_to_glo() - Save requested file in a GLO instance
  • cubrid_load_from_glo() - Read data from a GLO instance and save it in a file

cubrid_save_to_glo
dBase
CUBRID Obsolete Aliases and Functions


dBase

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da dBase
    • dbase_add_record — Adiciona um registro ao banco de dados
    • dbase_close — Fecha um banco de dados
    • dbase_create — Cria um banco de dados
    • dbase_delete_record — Exclui um registro do banco de dados
    • dbase_get_header_info — Obtém as informações do cabeçalho do banco de dados
    • dbase_get_record_with_names — Obtém um registro do banco de dados como uma matriz associativa.
    • dbase_get_record — Obtém um registro do banco de dados como uma matriz indexada
    • dbase_numfields — Obtém o número de campos em um banco de dados
    • dbase_numrecords — Obtém o número de registros no banco de dados
    • dbase_open — Abre um banco de dados
    • dbase_pack — Apaga permanentemente os registros do banco de dados dBase
    • dbase_replace_record — Substitui um registro no banco de dados
cubrid_send_glo
Introdução
Vendor Specific Database Extensions


Introdução

Estas funções permitem acessar registros guardados em banco de dados no formato Dbase(dbf).

Arquivos dBase são simples sequência de arquivos de tamanho fixo de registros. Registros são colocados no final de cada arquivo e os deletados são mantidos até que chame dbase_pack().

Os tipos de campos dBase disponíveis são:

Tipos disponíveis de campos
Campo | Tipo dBase | Formato | Informação adicional
M | Memo | n/a | Este tipo não é suportado pelo PHP, tal campo será ignorado
D | Date | YYYYMMDD | O tamanho do campo é limitado para 8
N | Number | A number | Você precisa declarar o tamanho e a precisão (o número de dígitos depois do ponto decimal)
C | String | A string | Você precisa declarar o tamanho. Quando recebendo dados, a string irá terá será preenchida com espaços à esquerda para completar o tamanho declarado.
L | Boolean | T ou Y para TRUE, F ou N para FALSE | Armazenado e retornado como um inteiro (1 ou 0)
F | Float | A float number | Suporte para este tipo de campo foi adicionado no PHP 5.2.0

Aviso

Não há suporte para índices ou campos memo. Não há suporte para travas também. Dois processos do servidor web comcorrentes modificando o mesmo banco de dados normalmente irá arruinar o banco de dados.

Nós recomendamos que você não use seus arquivos dbase como seu banco de dados de produção. Escolha ao invés um servidor SQL real; » MySQL ou » Postgres são escolhas comuns com o php. O suporte ao Dbase esta aqui para permitir a você importar e exportar dados para e a partir do seu banco de dados web, porque o formato é normalmente entendido por planilhas e organizadores do Windows.

dBase
Instalação/Configuração
dBase


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
dBase


Instalação

Para ativar a biblioteca dbase e para usar estas funções, você deve compilar o PHP com a opção --enable-dbase .

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da dBase
dBase


Funções da dBase

Exemplos

Muitos exemplos nesta referência requerem um banco de dados dBase. Nós iremos usar /tmp/test.dbf que irá ser criado no exemplo da dbase_create().

Índice

  • dbase_add_record — Adiciona um registro ao banco de dados
  • dbase_close — Fecha um banco de dados
  • dbase_create — Cria um banco de dados
  • dbase_delete_record — Exclui um registro do banco de dados
  • dbase_get_header_info — Obtém as informações do cabeçalho do banco de dados
  • dbase_get_record_with_names — Obtém um registro do banco de dados como uma matriz associativa.
  • dbase_get_record — Obtém um registro do banco de dados como uma matriz indexada
  • dbase_numfields — Obtém o número de campos em um banco de dados
  • dbase_numrecords — Obtém o número de registros no banco de dados
  • dbase_open — Abre um banco de dados
  • dbase_pack — Apaga permanentemente os registros do banco de dados dBase
  • dbase_replace_record — Substitui um registro no banco de dados
Constantes pré-definidas
dbase_add_record
dBase


Adiciona um registro ao banco de dados

Funções da dBase
dbase_close
Funções da dBase
PHP Manual

dbase_add_record

(PHP 4, PHP 5)

dbase_add_record — Adiciona um registro ao banco de dados

Descrição

bool dbase_add_record ( int $dbase_identifier , array $record )

Adiciona os dados so banco de dados.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

record

Uma matriz indexada de dados. O número de itens deve ser igual ao número de campos no banco de dados, se não dbase_add_record() irá falhar.

Nota:

Se você esta usando o valor de retorno de dbase_get_record() para este parâmetro, lembre-se de reiniciar o valor de deleted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Inserindo um registro num banco de dados dBase

<?php

// open in read-write mode
$db = dbase_open('/tmp/test.dbf', 2);

if ($db) {
  dbase_add_record($db, array(
      date('Ymd'),
      'Maxim Topolov',
      '23',
      'max@example.com',
      'T'));
  dbase_close($db);
}

?>

Veja Também

  • dbase_delete_record() - Exclui um registro do banco de dados
  • dbase_replace_record() - Substitui um registro no banco de dados

Funções da dBase
dbase_close
Funções da dBase


Fecha um banco de dados

dbase_add_record
dbase_create
Funções da dBase
PHP Manual

dbase_close

(PHP 4, PHP 5)

dbase_close — Fecha um banco de dados

Descrição

bool dbase_close ( int $dbase_identifier )

Fecha o idendificador de banco de dados indicado.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Fechando um banco de dados dBase

<?php

// open in read-only mode
$db = dbase_open('/tmp/test.dbf', 0);

if ($db) {
  // read some data ..

  dbase_close($db);
}

?>

Veja Também

  • dbase_open() - Abre um banco de dados
  • dbase_create() - Cria um banco de dados

dbase_add_record
dbase_create
Funções da dBase


Cria um banco de dados

dbase_close
dbase_delete_record
Funções da dBase
PHP Manual

dbase_create

(PHP 4, PHP 5)

dbase_create — Cria um banco de dados

Descrição

int dbase_create ( string $filename , array $fields )

dbase_create() cria um banco de dados com a definição dada.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Nota:

Esta função é afetada por open_basedir.

Parâmetros

filename

O nome do banco de dados. Pode ser um caminho relativo ou absoluto para o arquivo onde o dBase irá guardar os seus dados.

fields

Uma matriz de matrizes, cada matriz descrevendo o formato de um campo no banco de dados. Cada campo consiste de um nome, um caractere indicando o tipo do campo, e opcionalmente, um tamanho e uma precisão.

Nota:

O nome dos campos são limitados em tamanho e não podem ultrapassar 10 caracteres.

Valor Retornado

Retorna um identificador do banco de dados se for bem sucedido, ou FALSE se houve um erro.

Exemplos

Exemplo #1 Criando um banco de dados dBase

<?php

// database "definition"
$def = array(
  array("date",     "D"),
  array("name",     "C",  50),
  array("age",      "N",   3, 0),
  array("email",    "C", 128),
  array("ismember", "L")
);

// creation
if (!dbase_create('/tmp/test.dbf', $def)) {
  echo "Error, can't create the database\n";
}

?>

Veja Também

  • dbase_open() - Abre um banco de dados
  • dbase_close() - Fecha um banco de dados

dbase_close
dbase_delete_record
Funções da dBase


Exclui um registro do banco de dados

dbase_create
dbase_get_header_info
Funções da dBase
PHP Manual

dbase_delete_record

(PHP 4, PHP 5)

dbase_delete_record — Exclui um registro do banco de dados

Descrição

bool dbase_delete_record ( int $dbase_identifier , int $record_number )

Marca o registro indicado para ser excluído do banco de dados.

Nota:

Para realmente remover o registro do banco de dados, você deve também utilizar dbase_pack().

Parâmetros

dbase_identifier

Identificador do banco de dados, retornado por dbase_open() ou dbase_create().

record_number

Um inteiro que vai de 1 até o número de registros no banco de dados (como retornado por dbase_numrecords()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • dbase_add_record() - Adiciona um registro ao banco de dados
  • dbase_replace_record() - Substitui um registro no banco de dados

dbase_create
dbase_get_header_info
Funções da dBase


Obtém as informações do cabeçalho do banco de dados

dbase_delete_record
dbase_get_record_with_names
Funções da dBase
PHP Manual

dbase_get_header_info

(PHP 5)

dbase_get_header_info — Obtém as informações do cabeçalho do banco de dados

Descrição

array dbase_get_header_info ( int $dbase_identifier )

Retorna informações sobre a estrutura das colunas do banco de dados indicado.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

Valor Retornado

Uma matriz indexada com uma entrada para cada coluna no banco de dados. O índice começa em 0.

Cada elemento da matriz contém uma matriz associativa com informações da coluna, como descrito aqui:

name
O nome da coluna
type
O nome do tipo de campo dBase em forma legível (ex date, boolean, etc.)
length
O número de bytes que esta coluna pode guardar
precision
O número de digitos da precisão decimal da coluna
format
Um especificador de formato printf() sugerido para a coluna
offset
O índice em byte da coluna a partir do início da linha

Se as informações do cabeçalho do banco de dados não puderem ser lidas, é retornado FALSE.

Exemplos

Exemplo #1 Mostrando informações do banco de dados de um arquivo dBase

<?php
// Path to dbase file
$db_path = "/tmp/test.dbf";

// Open dbase file
$dbh = dbase_open($db_path, 0)
  or die("Error! Could not open dbase database file '$db_path'.");

// Get column information
$column_info = dbase_get_header_info($dbh);

// Display information
print_r($column_info);
?>

dbase_delete_record
dbase_get_record_with_names
Funções da dBase


Obtém um registro do banco de dados como uma matriz associativa.

dbase_get_header_info
dbase_get_record
Funções da dBase
PHP Manual

dbase_get_record_with_names

(PHP 4, PHP 5)

dbase_get_record_with_names — Obtém um registro do banco de dados como uma matriz associativa.

Descrição

array dbase_get_record_with_names ( int $dbase_identifier , int $record_number )

Obtém um registro do banco de dados como uma matriz associativa.

Parâmetros

dbase_identifier

Identificador do banco de dados, retornado por dbase_open() ou dbase_create().

record_number

O índice do registro.

Valor Retornado

Uma matriz associativa com o registro. Isto também irá incluir uma chave chamada deleted a qual é definida como 1 se o registro foi marcado para exclusão (veja dbase_delete_record()).

Cada campo é convertido para o tipo PHP apropriado, exceto:

  • Datas são mantidas como strings.
  • Inteiros que causariam uma sobrecarga (> 32 bits) são retornados como uma string.

Em caso de erro, dbase_get_record_with_names() irá retornar FALSE.

Exemplos

Exemplo #1 Listando todos os membros registrados no banco de dados

<?php
// open in read-only mode
$db = dbase_open('/tmp/test.dbf', 0);

if ($db) {
  $record_numbers = dbase_numrecords($db);
  for ($i = 1; $i <= $record_numbers; $i++) {
      $row = dbase_get_record_with_names($db, $i);
      if ($row['ismember'] == 1) {
          echo "Member #$i: " . trim($row['name']) . "\n";
      }
  }
}
?>

Veja Também

  • dbase_get_record() - Obtém um registro do banco de dados como uma matriz indexada

dbase_get_header_info
dbase_get_record
Funções da dBase


Obtém um registro do banco de dados como uma matriz indexada

dbase_get_record_with_names
dbase_numfields
Funções da dBase
PHP Manual

dbase_get_record

(PHP 4, PHP 5)

dbase_get_record — Obtém um registro do banco de dados como uma matriz indexada

Descrição

array dbase_get_record ( int $dbase_identifier , int $record_number )

Obtém um registro do banco de dados como uma matriz indexada.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

record_number

O índice do registro.

Valor Retornado

Uma matriz indexada com o registro. Esta matriz também irá incluir uma chave associativa chamada deleted a qual é definida como 1 se o registro foi marcado para exclusão (veja dbase_delete_record()).

Cada campo é convertido para o tipo PHP apropriado, exceto:

  • Datas são mantidas como strings.
  • Inteiros que causariam uma sobrecarga (> 32 bits) são retornados como uma string.

Em caso de erro, dbase_get_record() irá retornar FALSE.

Veja Também

  • dbase_get_record_with_names() - Obtém um registro do banco de dados como uma matriz associativa.

dbase_get_record_with_names
dbase_numfields
Funções da dBase


Obtém o número de campos em um banco de dados

dbase_get_record
dbase_numrecords
Funções da dBase
PHP Manual

dbase_numfields

(PHP 4, PHP 5)

dbase_numfields — Obtém o número de campos em um banco de dados

Descrição

int dbase_numfields ( int $dbase_identifier )

Obtém o número de campos(colunas) no banco de dados especificados.

Nota:

Números de campo estão entre 0 e dbase_numfields($db)-1, enquanto que números de registro estão entre 1 e dbase_numrecords($db).

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

Valor Retornado

O números de campos em um banco de dados, ou FALSE se acontecer um erro.

Exemplos

Exemplo #1 Exemplo dbase_numfields()

<?php

$rec = dbase_get_record($db, $recno);
$nf  = dbase_numfields($db);
for ($i = 0; $i < $nf; $i++) {
  echo $rec[$i], "\n";
}

?>

Veja Também

  • dbase_numrecords() - Obtém o número de registros no banco de dados

dbase_get_record
dbase_numrecords
Funções da dBase


Obtém o número de registros no banco de dados

dbase_numfields
dbase_open
Funções da dBase
PHP Manual

dbase_numrecords

(PHP 4, PHP 5)

dbase_numrecords — Obtém o número de registros no banco de dados

Descrição

int dbase_numrecords ( int $dbase_identifier )

Obtém o número de registros (linhas) no banco de dados especificado.

Nota:

Número de registros são entre 1 e dbase_numrecords($db), enquanto que números de campo são entre 0 e dbase_numfields($db)-1.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

Valor Retornado

O número de registros no banco de dados, ou FALSE se ocorrer um erro.

Exemplos

Exemplo #1 Lendo todos os registros de um banco de dados

<?php

// open in read-only mode
$db = dbase_open('/tmp/test.dbf', 0);

if ($db) {
  $record_numbers = dbase_numrecords($db);
  for ($i = 1; $i <= $record_numbers; $i++) {
      // do something here, for each record
  }
}

?>

Veja Também

  • dbase_num_fields()

dbase_numfields
dbase_open
Funções da dBase


Abre um banco de dados

dbase_numrecords
dbase_pack
Funções da dBase
PHP Manual

dbase_open

(PHP 4, PHP 5)

dbase_open — Abre um banco de dados

Descrição

int dbase_open ( string $filename , int $mode )

dbase_open() abre um banco de dados dBase com o modo de acesso dado.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Nota:

Esta função é afetada por open_basedir.

Parâmetros

filename

O nome do banco de dados. Pode ser um caminho relativo ou absoluto para o arquivo onde o dBase irá guardar os seus dados.

mode

Um inteiro que corresponda a chamada de sistema open() (Tipicamente 0 significa somente-leitura, 1 apenas para escrita e 2 significa leitura e escrita).

Nota:

VoC~e não pode abrir um banco de dados dBase em modo somente para escrita já que a função irá falhar ao ler os cabeçalhos com informações e então você não pode usar 1 como o parâmetro mode.

Exemplos

Exemplo #1 Abrindo um banco de dados dBase

<?php

// open in read-only mode
$db = dbase_open('/tmp/test.dbf', 0);

if ($db) {
  // read some data ..

  dbase_close($db);
}

?>

Valor Retornado

Retorna um identificador do banco de dados se for aberto com sucesso, ou FALSE se um erro aconteceu.

Veja Também

  • dbase_create() - Cria um banco de dados
  • dbase_close() - Fecha um banco de dados

dbase_numrecords
dbase_pack
Funções da dBase


Apaga permanentemente os registros do banco de dados dBase

dbase_open
dbase_replace_record
Funções da dBase
PHP Manual

dbase_pack

(PHP 4, PHP 5)

dbase_pack — Apaga permanentemente os registros do banco de dados dBase

Descrição

bool dbase_pack ( int $dbase_identifier )

Apaga permanentemente todos os registros marcados para exclusão usando dbase_delete_record().

Parâmetros

dbase_identifier

O identificador do link do banco de dados, retornado por dbase_open() ou dbase_create().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Limpando um banco de dados dBase

<?php

// open in read-write mode
$db = dbase_open('/tmp/test.dbf', 2);

if ($db) {
  $record_numbers = dbase_numrecords($db);
  for ($i = 1; $i <= $record_numbers; $i++) {
      dbase_delete_record($db, $i);
  }
  // expunge the database
  dbase_pack($db);
}

?>

Veja Também

  • dbase_delete_record() - Exclui um registro do banco de dados

dbase_open
dbase_replace_record
Funções da dBase


Substitui um registro no banco de dados

dbase_pack
DB++
Funções da dBase
PHP Manual

dbase_replace_record

(PHP 4, PHP 5)

dbase_replace_record — Substitui um registro no banco de dados

Descrição

bool dbase_replace_record ( int $dbase_identifier , array $record , int $record_number )

Substitui o registro no banco de dados com os dados indicados.

Parâmetros

dbase_identifier

O identificador do banco de dados, retornado por dbase_open() ou dbase_create().

record

Uma matriz indexada de dados. O número deve ser igual ao número de campo no banco de dados, se não dbase_add_record() irá falhar.

Nota:

Se você esta usando o valor de retorno de dbase_get_record() para este parâmetro, lembre-se de reiniciar o valor de deleted.

record_number

Um inteiro que vai de 1 até o número de registros no banco de dados (como retornado por dbase_numrecords()).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Atualizando um registro no banco de dados

<?php

// open in read-write mode
$db = dbase_open('/tmp/test.dbf', 2);

if ($db) {
  // gets the old row
  $row = dbase_get_record_with_names($db, 1);

  // remove the 'deleted' entry
  unset($row['deleted']);

  // Update the date field with the current timestamp
  $row['date'] = date('Ymd');

  // Replace the record
  dbase_replace_record($db, $row, 1);
  dbase_close($db);
}

?>

Veja Também

  • dbase_add_record() - Adiciona um registro ao banco de dados
  • dbase_delete_record() - Exclui um registro do banco de dados

dbase_pack
DB++
Funções da dBase


DB++

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • db++ error codes
  • DB++ Funções
    • dbplus_add — Add a tuple to a relation
    • dbplus_aql — Perform AQL query
    • dbplus_chdir — Get/Set database virtual current directory
    • dbplus_close — Close a relation
    • dbplus_curr — Get current tuple from relation
    • dbplus_errcode — Get error string for given errorcode or last error
    • dbplus_errno — Get error code for last operation
    • dbplus_find — Set a constraint on a relation
    • dbplus_first — Get first tuple from relation
    • dbplus_flush — Flush all changes made on a relation
    • dbplus_freealllocks — Free all locks held by this client
    • dbplus_freelock — Release write lock on tuple
    • dbplus_freerlocks — Free all tuple locks on given relation
    • dbplus_getlock — Get a write lock on a tuple
    • dbplus_getunique — Get an id number unique to a relation
    • dbplus_info — Get information about a relation
    • dbplus_last — Get last tuple from relation
    • dbplus_lockrel — Request write lock on relation
    • dbplus_next — Get next tuple from relation
    • dbplus_open — Open relation file
    • dbplus_prev — Get previous tuple from relation
    • dbplus_rchperm — Change relation permissions
    • dbplus_rcreate — Creates a new DB++ relation
    • dbplus_rcrtexact — Creates an exact but empty copy of a relation including indices
    • dbplus_rcrtlike — Creates an empty copy of a relation with default indices
    • dbplus_resolve — Resolve host information for relation
    • dbplus_restorepos — Restore position
    • dbplus_rkeys — Specify new primary key for a relation
    • dbplus_ropen — Open relation file local
    • dbplus_rquery — Perform local (raw) AQL query
    • dbplus_rrename — Rename a relation
    • dbplus_rsecindex — Create a new secondary index for a relation
    • dbplus_runlink — Remove relation from filesystem
    • dbplus_rzap — Remove all tuples from relation
    • dbplus_savepos — Save position
    • dbplus_setindex — Set index
    • dbplus_setindexbynumber — Set index by number
    • dbplus_sql — Perform SQL query
    • dbplus_tcl — Execute TCL code on server side
    • dbplus_tremove — Remove tuple and return new current tuple
    • dbplus_undo — Undo
    • dbplus_undoprepare — Prepare undo
    • dbplus_unlockrel — Give up write lock on relation
    • dbplus_unselect — Remove a constraint from relation
    • dbplus_update — Update specified tuple in relation
    • dbplus_xlockrel — Request exclusive lock on relation
    • dbplus_xunlockrel — Free exclusive lock on relation
dbase_replace_record
Introdução
Vendor Specific Database Extensions


Introdução

db++, made by the German company » Concept asa, is a relational database system with high performance and low memory and disk usage in mind. While providing SQL as an additional language interface, it is not really an SQL database in the first place but provides its own AQL query language which is much more influenced by the relational algebra than SQL is.

Concept asa always had an interest in supporting open source languages, db++ has had Perl and Tcl call interfaces for years now and uses Tcl as its internal stored procedure language.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

DB++
Instalação/Configuração
DB++


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
DB++


Dependências

This extension relies on external client libraries so you have to have a db++ client installed on the system you want to use this extension on.

» Concept asa provides » db++ Demo versions and » documentation for Linux, some other Unix versions. There is also a Windows version of db++, but this extension doesn't support it (yet).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

In order to build this extension yourself you need the db++ client libraries and header files to be installed on your system (these are included in the db++ installation archives by default). You have to run configure with option --with-dbplus to build this extension.

configure looks for the client libraries and header files under the default paths /usr/dbplus, /usr/local/dbplus and /opt/dblus. If you have installed db++ in a different place you have add the installation path to the configure option like this: --with-dbplus=/your/installation/path .

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

dbplus_relation

Most db++ functions operate on or return dbplus_relation resources. A dbplus_relation is a handle to a stored relation or a relation generated as the result of a query.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Índice

  • db++ error codes

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
db++ error codes
DB++


db++ error codes

DB++ Error Codes
PHP Constant | db++ constant | meaning
DBPLUS_ERR_NOERR (integer) | ERR_NOERR | Null error condition
DBPLUS_ERR_DUPLICATE (integer) | ERR_DUPLICATE | Tried to insert a duplicate tuple
DBPLUS_ERR_EOSCAN (integer) | ERR_EOSCAN | End of scan from rget()
DBPLUS_ERR_EMPTY (integer) | ERR_EMPTY | Relation is empty (server)
DBPLUS_ERR_CLOSE (integer) | ERR_CLOSE | The server can't close
DBPLUS_ERR_WLOCKED (integer) | ERR_WLOCKED | The record is write locked
DBPLUS_ERR_LOCKED (integer) | ERR_LOCKED | Relation was already locked
DBPLUS_ERR_NOLOCK (integer) | ERR_NOLOCK | Relation cannot be locked
DBPLUS_ERR_READ (integer) | ERR_READ | Read error on relation
DBPLUS_ERR_WRITE (integer) | ERR_WRITE | Write error on relation
DBPLUS_ERR_CREATE (integer) | ERR_CREATE | Create() system call failed
DBPLUS_ERR_LSEEK (integer) | ERR_LSEEK | Lseek() system call failed
DBPLUS_ERR_LENGTH (integer) | ERR_LENGTH | Tuple exceeds maximum length
DBPLUS_ERR_OPEN (integer) | ERR_OPEN | Open() system call failed
DBPLUS_ERR_WOPEN (integer) | ERR_WOPEN | Relation already opened for writing
DBPLUS_ERR_MAGIC (integer) | ERR_MAGIC | File is not a relation
DBPLUS_ERR_VERSION (integer) | ERR_VERSION | File is a very old relation
DBPLUS_ERR_PGSIZE (integer) | ERR_PGSIZE | Relation uses a different page size
DBPLUS_ERR_CRC (integer) | ERR_CRC | Invalid crc in the superpage
DBPLUS_ERR_PIPE (integer) | ERR_PIPE | Piped relation requires lseek()
DBPLUS_ERR_NIDX (integer) | ERR_NIDX | Too many secondary indices
DBPLUS_ERR_MALLOC (integer) | ERR_MALLOC | Malloc() call failed
DBPLUS_ERR_NUSERS (integer) | ERR_NUSERS | Error use of max users
DBPLUS_ERR_PREEXIT (integer) | ERR_PREEXIT | Caused by invalid usage
DBPLUS_ERR_ONTRAP (integer) | ERR_ONTRAP | Caused by a signal
DBPLUS_ERR_PREPROC (integer) | ERR_PREPROC | Error in the preprocessor
DBPLUS_ERR_DBPARSE (integer) | ERR_DBPARSE | Error in the parser
DBPLUS_ERR_DBRUNERR (integer) | ERR_DBRUNERR | Run error in db
DBPLUS_ERR_DBPREEXIT (integer) | ERR_DBPREEXIT | Exit condition caused by prexit() * procedure
DBPLUS_ERR_WAIT (integer) | ERR_WAIT | Wait a little (Simple only)
DBPLUS_ERR_CORRUPT_TUPLE (integer) | ERR_CORRUPT_TUPLE | A client sent a corrupt tuple
DBPLUS_ERR_WARNING0 (integer) | ERR_WARNING0 | The Simple routines encountered a non fatal error which was corrected
DBPLUS_ERR_PANIC (integer) | ERR_PANIC | The server should not really die but after a disaster send ERR_PANIC to all its clients
DBPLUS_ERR_FIFO (integer) | ERR_FIFO | Can't create a fifo
DBPLUS_ERR_PERM (integer) | ERR_PERM | Permission denied
DBPLUS_ERR_TCL (integer) | ERR_TCL | TCL_error
DBPLUS_ERR_RESTRICTED (integer) | ERR_RESTRICTED | Only two users
DBPLUS_ERR_USER (integer) | ERR_USER | An error in the use of the library by an application programmer
DBPLUS_ERR_UNKNOWN (integer) | ERR_UNKNOWN |

Constantes pré-definidas
DB++ Funções
Constantes pré-definidas


DB++ Funções

Índice

  • dbplus_add — Add a tuple to a relation
  • dbplus_aql — Perform AQL query
  • dbplus_chdir — Get/Set database virtual current directory
  • dbplus_close — Close a relation
  • dbplus_curr — Get current tuple from relation
  • dbplus_errcode — Get error string for given errorcode or last error
  • dbplus_errno — Get error code for last operation
  • dbplus_find — Set a constraint on a relation
  • dbplus_first — Get first tuple from relation
  • dbplus_flush — Flush all changes made on a relation
  • dbplus_freealllocks — Free all locks held by this client
  • dbplus_freelock — Release write lock on tuple
  • dbplus_freerlocks — Free all tuple locks on given relation
  • dbplus_getlock — Get a write lock on a tuple
  • dbplus_getunique — Get an id number unique to a relation
  • dbplus_info — Get information about a relation
  • dbplus_last — Get last tuple from relation
  • dbplus_lockrel — Request write lock on relation
  • dbplus_next — Get next tuple from relation
  • dbplus_open — Open relation file
  • dbplus_prev — Get previous tuple from relation
  • dbplus_rchperm — Change relation permissions
  • dbplus_rcreate — Creates a new DB++ relation
  • dbplus_rcrtexact — Creates an exact but empty copy of a relation including indices
  • dbplus_rcrtlike — Creates an empty copy of a relation with default indices
  • dbplus_resolve — Resolve host information for relation
  • dbplus_restorepos — Restore position
  • dbplus_rkeys — Specify new primary key for a relation
  • dbplus_ropen — Open relation file local
  • dbplus_rquery — Perform local (raw) AQL query
  • dbplus_rrename — Rename a relation
  • dbplus_rsecindex — Create a new secondary index for a relation
  • dbplus_runlink — Remove relation from filesystem
  • dbplus_rzap — Remove all tuples from relation
  • dbplus_savepos — Save position
  • dbplus_setindex — Set index
  • dbplus_setindexbynumber — Set index by number
  • dbplus_sql — Perform SQL query
  • dbplus_tcl — Execute TCL code on server side
  • dbplus_tremove — Remove tuple and return new current tuple
  • dbplus_undo — Undo
  • dbplus_undoprepare — Prepare undo
  • dbplus_unlockrel — Give up write lock on relation
  • dbplus_unselect — Remove a constraint from relation
  • dbplus_update — Update specified tuple in relation
  • dbplus_xlockrel — Request exclusive lock on relation
  • dbplus_xunlockrel — Free exclusive lock on relation
db++ error codes
dbplus_add
DB++


Add a tuple to a relation

DB++ Funções
dbplus_aql
DB++ Funções
PHP Manual

dbplus_add

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_add — Add a tuple to a relation

Descrição

int dbplus_add ( resource $relation , array $tuple )

Adds a tuple to a relation.

Parâmetros

relation

tuple

An array of attribute/value pairs to be inserted into the given relation.

After successful execution this array will contain the complete data of the newly created tuple, including all implicitly set domain fields like sequences.

Valor Retornado

The function will return DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_errcode() - Get error string for given errorcode or last error

DB++ Funções
dbplus_aql
DB++ Funções


Perform AQL query

dbplus_add
dbplus_chdir
DB++ Funções
PHP Manual

dbplus_aql

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_aql — Perform AQL query

Descrição

resource dbplus_aql ( string $query [, string $server [, string $dbpath ]] )

Executes an AQL query on the given server and dbpath.

Parâmetros

query

The AQL query to be executed. Further information on the AQL (Algebraic Query Language) is provided in the original db++ manual.

server

dbpath

Valor Retornado

Returns a relation handle on success. The result data may be fetched from this relation by calling dbplus_next() and dbplus_curr(). Other relation access functions will not work on a result relation.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_add
dbplus_chdir
DB++ Funções


Get/Set database virtual current directory

dbplus_aql
dbplus_close
DB++ Funções
PHP Manual

dbplus_chdir

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_chdir — Get/Set database virtual current directory

Descrição

string dbplus_chdir ([ string $newdir ] )

Changes the virtual current directory where relation files will be looked for by dbplus_open().

Parâmetros

newdir

The new directory for relation files. You can omit this parameter to query the current working directory.

Valor Retornado

Returns the absolute path of the current directory.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_aql
dbplus_close
DB++ Funções


Close a relation

dbplus_chdir
dbplus_curr
DB++ Funções
PHP Manual

dbplus_close

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_close — Close a relation

Descrição

mixed dbplus_close ( resource $relation )

Closes a relation previously opened by dbplus_open().

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Returns TRUE on success or DBPLUS_ERR_UNKNOWN on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_chdir
dbplus_curr
DB++ Funções


Get current tuple from relation

dbplus_close
dbplus_errcode
DB++ Funções
PHP Manual

dbplus_curr

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_curr — Get current tuple from relation

Descrição

int dbplus_curr ( resource $relation , array &$tuple )

Reads the data for the current tuple for the given relation.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

The data will be passed back in this parameter, as an associative array.

Valor Retornado

The function will return zero (aka. DBPLUS_ERR_NOERR) on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_first() - Get first tuple from relation
  • dbplus_prev() - Get previous tuple from relation
  • dbplus_next() - Get next tuple from relation
  • dbplus_last() - Get last tuple from relation
  • dbplus_errcode() - Get error string for given errorcode or last error

dbplus_close
dbplus_errcode
DB++ Funções


Get error string for given errorcode or last error

dbplus_curr
dbplus_errno
DB++ Funções
PHP Manual

dbplus_errcode

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_errcode — Get error string for given errorcode or last error

Descrição

string dbplus_errcode ([ int $errno ] )

Returns a clear error string for the given error code.

Parâmetros

errno

The error code. If not provided, the result code of the last db++ operation is assumed.

Valor Retornado

Returns the error message.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_curr
dbplus_errno
DB++ Funções


Get error code for last operation

dbplus_errcode
dbplus_find
DB++ Funções
PHP Manual

dbplus_errno

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_errno — Get error code for last operation

Descrição

int dbplus_errno ( void )

Returns the error code returned by the last db++ operation.

Valor Retornado

Returns the error code, as an integer.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_errcode() - Get error string for given errorcode or last error

dbplus_errcode
dbplus_find
DB++ Funções


Set a constraint on a relation

dbplus_errno
dbplus_first
DB++ Funções
PHP Manual

dbplus_find

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_find — Set a constraint on a relation

Descrição

int dbplus_find ( resource $relation , array $constraints , mixed $tuple )

Places a constraint on the given relation.

Further calls to functions like dbplus_curr() or dbplus_next() will only return tuples matching the given constraints.

Parâmetros

relation

A relation opened by dbplus_open().

constraints

Constraints are triplets of strings containing of a domain name, a comparison operator and a comparison value. The constraints parameter array may consist of a collection of string arrays, each of which contains a domain, an operator and a value, or of a single string array containing a multiple of three elements.

The comparison operator may be one of the following strings: '==', '>', '>=', '<', '<=', '!=', '~' for a regular expression match and 'BAND' or 'BOR' for bitwise operations.

tuple

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_unselect() - Remove a constraint from relation

dbplus_errno
dbplus_first
DB++ Funções


Get first tuple from relation

dbplus_find
dbplus_flush
DB++ Funções
PHP Manual

dbplus_first

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_first — Get first tuple from relation

Descrição

int dbplus_first ( resource $relation , array &$tuple )

Reads the data for the first tuple for the given relation, makes it the current tuple and pass it back as an associative array in tuple.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_curr() - Get current tuple from relation
  • dbplus_prev() - Get previous tuple from relation
  • dbplus_next() - Get next tuple from relation
  • dbplus_last() - Get last tuple from relation
  • dbplus_errcode() - Get error string for given errorcode or last error

dbplus_find
dbplus_flush
DB++ Funções


Flush all changes made on a relation

dbplus_first
dbplus_freealllocks
DB++ Funções
PHP Manual

dbplus_flush

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_flush — Flush all changes made on a relation

Descrição

int dbplus_flush ( resource $relation )

Writes all changes applied to relation since the last flush to disk.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_errcode() - Get error string for given errorcode or last error

dbplus_first
dbplus_freealllocks
DB++ Funções


Free all locks held by this client

dbplus_flush
dbplus_freelock
DB++ Funções
PHP Manual

dbplus_freealllocks

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_freealllocks — Free all locks held by this client

Descrição

int dbplus_freealllocks ( void )

Frees all tuple locks held by this client.

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_getlock() - Get a write lock on a tuple
  • dbplus_freelock() - Release write lock on tuple
  • dbplus_freerlocks() - Free all tuple locks on given relation

dbplus_flush
dbplus_freelock
DB++ Funções


Release write lock on tuple

dbplus_freealllocks
dbplus_freerlocks
DB++ Funções
PHP Manual

dbplus_freelock

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_freelock — Release write lock on tuple

Descrição

int dbplus_freelock ( resource $relation , string $tuple )

Releases a write lock on the given tuple previously obtained by dbplus_getlock().

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_getlock() - Get a write lock on a tuple
  • dbplus_freerlocks() - Free all tuple locks on given relation
  • dbplus_freealllocks() - Free all locks held by this client

dbplus_freealllocks
dbplus_freerlocks
DB++ Funções


Free all tuple locks on given relation

dbplus_freelock
dbplus_getlock
DB++ Funções
PHP Manual

dbplus_freerlocks

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_freerlocks — Free all tuple locks on given relation

Descrição

int dbplus_freerlocks ( resource $relation )

Frees all tuple locks held on the given relation.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_getlock() - Get a write lock on a tuple
  • dbplus_freelock() - Release write lock on tuple
  • dbplus_freealllocks() - Free all locks held by this client

dbplus_freelock
dbplus_getlock
DB++ Funções


Get a write lock on a tuple

dbplus_freerlocks
dbplus_getunique
DB++ Funções
PHP Manual

dbplus_getlock

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_getlock — Get a write lock on a tuple

Descrição

int dbplus_getlock ( resource $relation , string $tuple )

Requests a write lock on the specified tuple.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Returns zero on success or a non-zero error code, especially DBPLUS_ERR_WLOCKED on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_freelock() - Release write lock on tuple
  • dbplus_freerlocks() - Free all tuple locks on given relation
  • dbplus_freealllocks() - Free all locks held by this client

dbplus_freerlocks
dbplus_getunique
DB++ Funções


Get an id number unique to a relation

dbplus_getlock
dbplus_info
DB++ Funções
PHP Manual

dbplus_getunique

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_getunique — Get an id number unique to a relation

Descrição

int dbplus_getunique ( resource $relation , int $uniqueid )

Obtains a number guaranteed to be unique for the given relation and will pass it back in the variable given as uniqueid.

Parâmetros

relation

A relation opened by dbplus_open().

uniqueid

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_getlock
dbplus_info
DB++ Funções


Get information about a relation

dbplus_getunique
dbplus_last
DB++ Funções
PHP Manual

dbplus_info

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_info — Get information about a relation

Descrição

int dbplus_info ( resource $relation , string $key , array &$result )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

key

result

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_getunique
dbplus_last
DB++ Funções


Get last tuple from relation

dbplus_info
dbplus_lockrel
DB++ Funções
PHP Manual

dbplus_last

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_last — Get last tuple from relation

Descrição

int dbplus_last ( resource $relation , array &$tuple )

Reads the data for the last tuple for the given relation, makes it the current tuple and pass it back as an associative array in tuple.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_first() - Get first tuple from relation
  • dbplus_curr() - Get current tuple from relation
  • dbplus_prev() - Get previous tuple from relation
  • dbplus_next() - Get next tuple from relation

dbplus_info
dbplus_lockrel
DB++ Funções


Request write lock on relation

dbplus_last
dbplus_next
DB++ Funções
PHP Manual

dbplus_lockrel

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_lockrel — Request write lock on relation

Descrição

int dbplus_lockrel ( resource $relation )

Requests a write lock on the given relation.

Other clients may still query the relation, but can't alter it while it is locked.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_last
dbplus_next
DB++ Funções


Get next tuple from relation

dbplus_lockrel
dbplus_open
DB++ Funções
PHP Manual

dbplus_next

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_next — Get next tuple from relation

Descrição

int dbplus_next ( resource $relation , array &$tuple )

Reads the data for the next tuple for the given relation, makes it the current tuple and will pass it back as an associative array in tuple.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_first() - Get first tuple from relation
  • dbplus_curr() - Get current tuple from relation
  • dbplus_prev() - Get previous tuple from relation
  • dbplus_last() - Get last tuple from relation

dbplus_lockrel
dbplus_open
DB++ Funções


Open relation file

dbplus_next
dbplus_prev
DB++ Funções
PHP Manual

dbplus_open

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_open — Open relation file

Descrição

resource dbplus_open ( string $name )

Opens the given relation file.

Parâmetros

name

Can be either a file name or a relative or absolute path name. This will be mapped in any case to an absolute relation file path on a specific host machine and server.

Valor Retornado

On success a relation file resource (cursor) is returned which must be used in any subsequent commands referencing the relation. Failure leads to a zero return value, the actual error code may be asked for by calling dbplus_errno().

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_next
dbplus_prev
DB++ Funções


Get previous tuple from relation

dbplus_open
dbplus_rchperm
DB++ Funções
PHP Manual

dbplus_prev

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_prev — Get previous tuple from relation

Descrição

int dbplus_prev ( resource $relation , array &$tuple )

Reads the data for the previous tuple for the given relation, makes it the current tuple and will pass it back as an associative array in tuple.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Returns DBPLUS_ERR_NOERR on success or a db++ error code on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_first() - Get first tuple from relation
  • dbplus_curr() - Get current tuple from relation
  • dbplus_next() - Get next tuple from relation
  • dbplus_last() - Get last tuple from relation

dbplus_open
dbplus_rchperm
DB++ Funções


Change relation permissions

dbplus_prev
dbplus_rcreate
DB++ Funções
PHP Manual

dbplus_rchperm

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rchperm — Change relation permissions

Descrição

int dbplus_rchperm ( resource $relation , int $mask , string $user , string $group )

Changes access permissions as specified by mask, user and group. The values for these are operating system specific.

Parâmetros

relation

A relation opened by dbplus_open().

mask

user

group

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_prev
dbplus_rcreate
DB++ Funções


Creates a new DB++ relation

dbplus_rchperm
dbplus_rcrtexact
DB++ Funções
PHP Manual

dbplus_rcreate

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rcreate — Creates a new DB++ relation

Descrição

resource dbplus_rcreate ( string $name , mixed $domlist [, bool $overwrite ] )

Creates a new relation. Any existing relation sharing the same name will be overwritten if the relation is currently not in use and overwrite is set to TRUE.

Parâmetros

name

domlist

A combination of domains. May be passed as a single domain name string or as an array of domain names.

This parameter should contain the domain specification for the new relation within an array of domain description strings. A domain description string consists of a domain name unique to this relation, a slash and a type specification character. See the db++ documentation, especially the dbcreate(1) manpage, for a description of available type specifiers and their meanings.

Nota:

This function will also accept a string with space delimited domain description strings, but it is recommended to use an array

overwrite

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rchperm
dbplus_rcrtexact
DB++ Funções


Creates an exact but empty copy of a relation including indices

dbplus_rcreate
dbplus_rcrtlike
DB++ Funções
PHP Manual

dbplus_rcrtexact

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rcrtexact — Creates an exact but empty copy of a relation including indices

Descrição

mixed dbplus_rcrtexact ( string $name , resource $relation [, bool $overwrite ] )

dbplus_rcrtexact() will create an exact but empty copy of the given relation under a new name.

Parâmetros

name

relation

The copied relation, opened by dbplus_open().

overwrite

An existing relation by the same name will only be overwritten if this parameter is set to TRUE and no other process is currently using the relation.

Valor Retornado

Returns resource on success or DBPLUS_ERR_UNKNOWN on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rcreate
dbplus_rcrtlike
DB++ Funções


Creates an empty copy of a relation with default indices

dbplus_rcrtexact
dbplus_resolve
DB++ Funções
PHP Manual

dbplus_rcrtlike

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rcrtlike — Creates an empty copy of a relation with default indices

Descrição

mixed dbplus_rcrtlike ( string $name , resource $relation [, int $overwrite ] )

dbplus_rcrtexact() will create an empty copy of the given relation under a new name, but with default indices.

Parâmetros

name

relation

The copied relation, opened by dbplus_open().

overwrite

An existing relation by the same name will only be overwritten if this parameter is set to TRUE and no other process is currently using the relation.

Valor Retornado

Returns resource on success or DBPLUS_ERR_UNKNOWN on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rcrtexact
dbplus_resolve
DB++ Funções


Resolve host information for relation

dbplus_rcrtlike
dbplus_restorepos
DB++ Funções
PHP Manual

dbplus_resolve

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_resolve — Resolve host information for relation

Descrição

array dbplus_resolve ( string $relation_name )

dbplus_resolve() will try to resolve the given relation_name and find out internal server id, real hostname and the database path on this host.

Parâmetros

relation_name

The relation name.

Valor Retornado

Returns an array containing these values under the keys sid, host and host_path or FALSE on error.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_tcl() - Execute TCL code on server side

dbplus_rcrtlike
dbplus_restorepos
DB++ Funções


Restore position

dbplus_resolve
dbplus_rkeys
DB++ Funções
PHP Manual

dbplus_restorepos

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_restorepos — Restore position

Descrição

int dbplus_restorepos ( resource $relation , array $tuple )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

tuple

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_resolve
dbplus_rkeys
DB++ Funções


Specify new primary key for a relation

dbplus_restorepos
dbplus_ropen
DB++ Funções
PHP Manual

dbplus_rkeys

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rkeys — Specify new primary key for a relation

Descrição

mixed dbplus_rkeys ( resource $relation , mixed $domlist )

dbplus_rkeys() will replace the current primary key for relation with the combination of domains specified by domlist.

Parâmetros

relation

A relation opened by dbplus_open().

domlist

A combination of domains. May be passed as a single domain name string or as an array of domain names.

Valor Retornado

Returns resource on success or DBPLUS_ERR_UNKNOWN on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_restorepos
dbplus_ropen
DB++ Funções


Open relation file local

dbplus_rkeys
dbplus_rquery
DB++ Funções
PHP Manual

dbplus_ropen

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_ropen — Open relation file local

Descrição

resource dbplus_ropen ( string $name )

dbplus_ropen() will open the relation file locally for quick access without any client/server overhead. Access is read only and only dbplus_curr() and dbplus_next() may be applied to the returned relation.

Parâmetros

name

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rkeys
dbplus_rquery
DB++ Funções


Perform local (raw) AQL query

dbplus_ropen
dbplus_rrename
DB++ Funções
PHP Manual

dbplus_rquery

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rquery — Perform local (raw) AQL query

Descrição

resource dbplus_rquery ( string $query [, string $dbpath ] )

dbplus_rquery() performs a local (raw) AQL query using an AQL interpreter embedded into the db++ client library. dbplus_rquery() is faster than dbplus_aql() but will work on local data only.

Parâmetros

query

dbpath

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_ropen
dbplus_rrename
DB++ Funções


Rename a relation

dbplus_rquery
dbplus_rsecindex
DB++ Funções
PHP Manual

dbplus_rrename

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rrename — Rename a relation

Descrição

int dbplus_rrename ( resource $relation , string $name )

dbplus_rrename() will change the name of relation to name.

Parâmetros

relation

A relation opened by dbplus_open().

name

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rquery
dbplus_rsecindex
DB++ Funções


Create a new secondary index for a relation

dbplus_rrename
dbplus_runlink
DB++ Funções
PHP Manual

dbplus_rsecindex

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rsecindex — Create a new secondary index for a relation

Descrição

mixed dbplus_rsecindex ( resource $relation , mixed $domlist , int $type )

dbplus_rsecindex() will create a new secondary index for relation with consists of the domains specified by domlist and is of type type

Parâmetros

relation

A relation opened by dbplus_open().

domlist

A combination of domains. May be passed as a single domain name string or as an array of domain names.

type

Valor Retornado

Returns resource on success or DBPLUS_ERR_UNKNOWN on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rrename
dbplus_runlink
DB++ Funções


Remove relation from filesystem

dbplus_rsecindex
dbplus_rzap
DB++ Funções
PHP Manual

dbplus_runlink

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_runlink — Remove relation from filesystem

Descrição

int dbplus_runlink ( resource $relation )

dbplus_runlink() will close and remove the relation.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rsecindex
dbplus_rzap
DB++ Funções


Remove all tuples from relation

dbplus_runlink
dbplus_savepos
DB++ Funções
PHP Manual

dbplus_rzap

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_rzap — Remove all tuples from relation

Descrição

int dbplus_rzap ( resource $relation )

dbplus_rzap() will remove all tuples from relation.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_runlink
dbplus_savepos
DB++ Funções


Save position

dbplus_rzap
dbplus_setindex
DB++ Funções
PHP Manual

dbplus_savepos

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_savepos — Save position

Descrição

int dbplus_savepos ( resource $relation )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_rzap
dbplus_setindex
DB++ Funções


Set index

dbplus_savepos
dbplus_setindexbynumber
DB++ Funções
PHP Manual

dbplus_setindex

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_setindex — Set index

Descrição

int dbplus_setindex ( resource $relation , string $idx_name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

idx_name

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_savepos
dbplus_setindexbynumber
DB++ Funções


Set index by number

dbplus_setindex
dbplus_sql
DB++ Funções
PHP Manual

dbplus_setindexbynumber

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_setindexbynumber — Set index by number

Descrição

int dbplus_setindexbynumber ( resource $relation , int $idx_number )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

idx_number

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_setindex
dbplus_sql
DB++ Funções


Perform SQL query

dbplus_setindexbynumber
dbplus_tcl
DB++ Funções
PHP Manual

dbplus_sql

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_sql — Perform SQL query

Descrição

resource dbplus_sql ( string $query [, string $server [, string $dbpath ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

query

server

dbpath

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_setindexbynumber
dbplus_tcl
DB++ Funções


Execute TCL code on server side

dbplus_sql
dbplus_tremove
DB++ Funções
PHP Manual

dbplus_tcl

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_tcl — Execute TCL code on server side

Descrição

string dbplus_tcl ( int $sid , string $script )

A db++ server will prepare a TCL interpreter for each client connection. This interpreter will enable the server to execute TCL code provided by the client as a sort of stored procedures to improve the performance of database operations by avoiding client/server data transfers and context switches.

dbplus_tcl() needs to pass the client connection id the TCL script code should be executed by. dbplus_resolve() will provide this connection id. The function will return whatever the TCL code returns or a TCL error message if the TCL code fails.

Parâmetros

sid

script

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_resolve() - Resolve host information for relation

dbplus_sql
dbplus_tremove
DB++ Funções


Remove tuple and return new current tuple

dbplus_tcl
dbplus_undo
DB++ Funções
PHP Manual

dbplus_tremove

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_tremove — Remove tuple and return new current tuple

Descrição

int dbplus_tremove ( resource $relation , array $tuple [, array &$current ] )

dbplus_tremove() removes tuple from relation if it perfectly matches a tuple within the relation. current, if given, will contain the data of the new current tuple after calling dbplus_tremove().

Parâmetros

relation

A relation opened by dbplus_open().

tuple

current

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_tcl
dbplus_undo
DB++ Funções


Undo

dbplus_tremove
dbplus_undoprepare
DB++ Funções
PHP Manual

dbplus_undo

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_undo — Undo

Descrição

int dbplus_undo ( resource $relation )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_tremove
dbplus_undoprepare
DB++ Funções


Prepare undo

dbplus_undo
dbplus_unlockrel
DB++ Funções
PHP Manual

dbplus_undoprepare

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_undoprepare — Prepare undo

Descrição

int dbplus_undoprepare ( resource $relation )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_undo
dbplus_unlockrel
DB++ Funções


Give up write lock on relation

dbplus_undoprepare
dbplus_unselect
DB++ Funções
PHP Manual

dbplus_unlockrel

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_unlockrel — Give up write lock on relation

Descrição

int dbplus_unlockrel ( resource $relation )

Release a write lock previously obtained by dbplus_lockrel().

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_undoprepare
dbplus_unselect
DB++ Funções


Remove a constraint from relation

dbplus_unlockrel
dbplus_update
DB++ Funções
PHP Manual

dbplus_unselect

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_unselect — Remove a constraint from relation

Descrição

int dbplus_unselect ( resource $relation )

Calling dbplus_unselect() will remove a constraint previously set by dbplus_find() on relation.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_unlockrel
dbplus_update
DB++ Funções


Update specified tuple in relation

dbplus_unselect
dbplus_xlockrel
DB++ Funções
PHP Manual

dbplus_update

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_update — Update specified tuple in relation

Descrição

int dbplus_update ( resource $relation , array $old , array $new )

dbplus_update() replaces the old tuple with the data from the new one, only if the old completely matches a tuple within relation.

Parâmetros

relation

A relation opened by dbplus_open().

old

The old tuple.

new

The new tuple.

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_unselect
dbplus_xlockrel
DB++ Funções


Request exclusive lock on relation

dbplus_update
dbplus_xunlockrel
DB++ Funções
PHP Manual

dbplus_xlockrel

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_xlockrel — Request exclusive lock on relation

Descrição

int dbplus_xlockrel ( resource $relation )

Request an exclusive lock on relation preventing even read access from other clients.

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • dbplus_xunlockrel() - Free exclusive lock on relation

dbplus_update
dbplus_xunlockrel
DB++ Funções


Free exclusive lock on relation

dbplus_xlockrel
FrontBase
DB++ Funções
PHP Manual

dbplus_xunlockrel

(PHP 4 <= 4.1.0, PECL dbplus >= 0.9)

dbplus_xunlockrel — Free exclusive lock on relation

Descrição

int dbplus_xunlockrel ( resource $relation )

Releases an exclusive lock previously obtained by dbplus_xlockrel().

Parâmetros

relation

A relation opened by dbplus_open().

Valor Retornado

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

dbplus_xlockrel
FrontBase
DB++ Funções


FrontBase

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • FrontBase Funções
    • fbsql_affected_rows — Get number of affected rows in previous FrontBase operation
    • fbsql_autocommit — Enable or disable autocommit
    • fbsql_blob_size — Get the size of a BLOB
    • fbsql_change_user — Change logged in user of the active connection
    • fbsql_clob_size — Get the size of a CLOB
    • fbsql_close — Close FrontBase connection
    • fbsql_commit — Commits a transaction to the database
    • fbsql_connect — Open a connection to a FrontBase Server
    • fbsql_create_blob — Create a BLOB
    • fbsql_create_clob — Create a CLOB
    • fbsql_create_db — Create a FrontBase database
    • fbsql_data_seek — Move internal result pointer
    • fbsql_database_password — Sets or retrieves the password for a FrontBase database
    • fbsql_database — Get or set the database name used with a connection
    • fbsql_db_query — Send a FrontBase query
    • fbsql_db_status — Get the status for a given database
    • fbsql_drop_db — Drop (delete) a FrontBase database
    • fbsql_errno — Returns the error number from previous operation
    • fbsql_error — Returns the error message from previous operation
    • fbsql_fetch_array — Fetch a result row as an associative array, a numeric array, or both
    • fbsql_fetch_assoc — Fetch a result row as an associative array
    • fbsql_fetch_field — Get column information from a result and return as an object
    • fbsql_fetch_lengths — Get the length of each output in a result
    • fbsql_fetch_object — Fetch a result row as an object
    • fbsql_fetch_row — Get a result row as an enumerated array
    • fbsql_field_flags — Get the flags associated with the specified field in a result
    • fbsql_field_len — Returns the length of the specified field
    • fbsql_field_name — Get the name of the specified field in a result
    • fbsql_field_seek — Set result pointer to a specified field offset
    • fbsql_field_table — Get name of the table the specified field is in
    • fbsql_field_type — Get the type of the specified field in a result
    • fbsql_free_result — Free result memory
    • fbsql_get_autostart_info — Descrição
    • fbsql_hostname — Get or set the host name used with a connection
    • fbsql_insert_id — Get the id generated from the previous INSERT operation
    • fbsql_list_dbs — List databases available on a FrontBase server
    • fbsql_list_fields — List FrontBase result fields
    • fbsql_list_tables — List tables in a FrontBase database
    • fbsql_next_result — Move the internal result pointer to the next result
    • fbsql_num_fields — Get number of fields in result
    • fbsql_num_rows — Get number of rows in result
    • fbsql_password — Get or set the user password used with a connection
    • fbsql_pconnect — Open a persistent connection to a FrontBase Server
    • fbsql_query — Send a FrontBase query
    • fbsql_read_blob — Read a BLOB from the database
    • fbsql_read_clob — Read a CLOB from the database
    • fbsql_result — Get result data
    • fbsql_rollback — Rollback a transaction to the database
    • fbsql_rows_fetched — Get the number of rows affected by the last statement
    • fbsql_select_db — Select a FrontBase database
    • fbsql_set_characterset — Change input/output character set
    • fbsql_set_lob_mode — Set the LOB retrieve mode for a FrontBase result set
    • fbsql_set_password — Change the password for a given user
    • fbsql_set_transaction — Set the transaction locking and isolation
    • fbsql_start_db — Start a database on local or remote server
    • fbsql_stop_db — Stop a database on local or remote server
    • fbsql_table_name — Get table name of field
    • fbsql_tablename — Sinônimo de fbsql_table_name
    • fbsql_username — Get or set the username for the connection
    • fbsql_warnings — Enable or disable FrontBase warnings
dbplus_xunlockrel
Introdução
Vendor Specific Database Extensions


Introdução

These functions allow you to access FrontBase database servers. More information about FrontBase can be found at » http://www.frontbase.com/.

Documentation for FrontBase can be found at » http://www.frontbase.com/cgi-bin/WebObjects/FBWebSite.woa.

Frontbase support has been added to PHP 4.0.6.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0.

FrontBase
Instalação/Configuração
FrontBase


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
FrontBase


Dependências

You must install the FrontBase database server or at least the fbsql client libraries to use this functions. You can get FrontBase from » http://www.frontbase.com/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

In order to have these functions available, you must compile PHP with fbsql support by using the --with-fbsql[=DIR] option. If you use this option without specifying the path to fbsql, PHP will search for the fbsql client libraries in the default installation location for the platform. Users who installed FrontBase in a non standard directory should always specify the path to fbsql: --with-fbsql=/path/to/fbsql . This will force PHP to use the client libraries installed by FrontBase, avoiding any conflicts.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

FrontBase configuration options
Name | Default | Changeable | Changelog
fbsql.allow_persistent | "1" | PHP_INI_SYSTEM | Available since PHP 4.2.0.
fbsql.generate_warnings | "0" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.autocommit | "1" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_persistent | "-1" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_links | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_connections | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_results | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.batchSize | "1000" | PHP_INI_SYSTEM | Available since PHP 4.2.0. Removed in PHP 5.1.0.
fbsql.default_host | NULL | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_user | "_SYSTEM" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_password | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_database | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_database_password | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FBSQL_ASSOC (integer)
FBSQL_NUM (integer)
FBSQL_BOTH (integer)
FBSQL_LOCK_DEFERRED (integer)
FBSQL_LOCK_OPTIMISTIC (integer)
FBSQL_LOCK_PESSIMISTIC (integer)
FBSQL_ISO_READ_UNCOMMITTED (integer)
FBSQL_ISO_READ_COMMITTED (integer)
FBSQL_ISO_REPEATABLE_READ (integer)
FBSQL_ISO_SERIALIZABLE (integer)
FBSQL_ISO_VERSIONED (integer)
FBSQL_UNKNOWN (integer)
FBSQL_STOPPED (integer)
FBSQL_STARTING (integer)
FBSQL_RUNNING (integer)
FBSQL_STOPPING (integer)
FBSQL_NOEXEC (integer)
FBSQL_LOB_DIRECT (integer)
FBSQL_LOB_HANDLE (integer)
Tipos Resource
FrontBase Funções
FrontBase


FrontBase Funções

Índice

  • fbsql_affected_rows — Get number of affected rows in previous FrontBase operation
  • fbsql_autocommit — Enable or disable autocommit
  • fbsql_blob_size — Get the size of a BLOB
  • fbsql_change_user — Change logged in user of the active connection
  • fbsql_clob_size — Get the size of a CLOB
  • fbsql_close — Close FrontBase connection
  • fbsql_commit — Commits a transaction to the database
  • fbsql_connect — Open a connection to a FrontBase Server
  • fbsql_create_blob — Create a BLOB
  • fbsql_create_clob — Create a CLOB
  • fbsql_create_db — Create a FrontBase database
  • fbsql_data_seek — Move internal result pointer
  • fbsql_database_password — Sets or retrieves the password for a FrontBase database
  • fbsql_database — Get or set the database name used with a connection
  • fbsql_db_query — Send a FrontBase query
  • fbsql_db_status — Get the status for a given database
  • fbsql_drop_db — Drop (delete) a FrontBase database
  • fbsql_errno — Returns the error number from previous operation
  • fbsql_error — Returns the error message from previous operation
  • fbsql_fetch_array — Fetch a result row as an associative array, a numeric array, or both
  • fbsql_fetch_assoc — Fetch a result row as an associative array
  • fbsql_fetch_field — Get column information from a result and return as an object
  • fbsql_fetch_lengths — Get the length of each output in a result
  • fbsql_fetch_object — Fetch a result row as an object
  • fbsql_fetch_row — Get a result row as an enumerated array
  • fbsql_field_flags — Get the flags associated with the specified field in a result
  • fbsql_field_len — Returns the length of the specified field
  • fbsql_field_name — Get the name of the specified field in a result
  • fbsql_field_seek — Set result pointer to a specified field offset
  • fbsql_field_table — Get name of the table the specified field is in
  • fbsql_field_type — Get the type of the specified field in a result
  • fbsql_free_result — Free result memory
  • fbsql_get_autostart_info — Descrição
  • fbsql_hostname — Get or set the host name used with a connection
  • fbsql_insert_id — Get the id generated from the previous INSERT operation
  • fbsql_list_dbs — List databases available on a FrontBase server
  • fbsql_list_fields — List FrontBase result fields
  • fbsql_list_tables — List tables in a FrontBase database
  • fbsql_next_result — Move the internal result pointer to the next result
  • fbsql_num_fields — Get number of fields in result
  • fbsql_num_rows — Get number of rows in result
  • fbsql_password — Get or set the user password used with a connection
  • fbsql_pconnect — Open a persistent connection to a FrontBase Server
  • fbsql_query — Send a FrontBase query
  • fbsql_read_blob — Read a BLOB from the database
  • fbsql_read_clob — Read a CLOB from the database
  • fbsql_result — Get result data
  • fbsql_rollback — Rollback a transaction to the database
  • fbsql_rows_fetched — Get the number of rows affected by the last statement
  • fbsql_select_db — Select a FrontBase database
  • fbsql_set_characterset — Change input/output character set
  • fbsql_set_lob_mode — Set the LOB retrieve mode for a FrontBase result set
  • fbsql_set_password — Change the password for a given user
  • fbsql_set_transaction — Set the transaction locking and isolation
  • fbsql_start_db — Start a database on local or remote server
  • fbsql_stop_db — Stop a database on local or remote server
  • fbsql_table_name — Get table name of field
  • fbsql_tablename — Sinônimo de fbsql_table_name
  • fbsql_username — Get or set the username for the connection
  • fbsql_warnings — Enable or disable FrontBase warnings
Constantes pré-definidas
fbsql_affected_rows
FrontBase


Get number of affected rows in previous FrontBase operation

FrontBase Funções
fbsql_autocommit
FrontBase Funções
PHP Manual

fbsql_affected_rows

(PHP 4 >= 4.0.6, PHP 5)

fbsql_affected_rows — Get number of affected rows in previous FrontBase operation

Descrição

int fbsql_affected_rows ([ resource $link_identifier ] )

fbsql_affected_rows() returns the number of rows affected by the last INSERT, UPDATE or DELETE query associated with link_identifier.

Nota:

If you are using transactions, you need to call fbsql_affected_rows() after your INSERT, UPDATE, or DELETE query, not after the commit.

If the last query was a DELETE query with no WHERE clause, all of the records will have been deleted from the table but this function will return zero.

Nota:

When using UPDATE, FrontBase will not update columns where the new value is the same as the old value. This creates the possibility that fbsql_affected_rows() may not actually equal the number of rows matched, only the number of rows that were literally affected by the query.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

If the last query failed, this function will return -1.

Veja Também

  • fbsql_num_rows() - Get number of rows in result

FrontBase Funções
fbsql_autocommit
FrontBase Funções


Enable or disable autocommit

fbsql_affected_rows
fbsql_blob_size
FrontBase Funções
PHP Manual

fbsql_autocommit

(PHP 4 >= 4.0.6, PHP 5)

fbsql_autocommit — Enable or disable autocommit

Descrição

bool fbsql_autocommit ( resource $link_identifier [, bool $OnOff ] )

Returns the current autocommit status.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

OnOff

If this optional parameter is given the auto commit status will be changed.

With OnOff set to TRUE each statement will be committed automatically, if no errors was found.

With OnOff set to FALSE the user must commit or rollback the transaction using either fbsql_commit() or fbsql_rollback().

Valor Retornado

Returns the current autocommit status, as a boolean.

Veja Também

  • fbsql_commit() - Commits a transaction to the database
  • fbsql_rollback() - Rollback a transaction to the database

fbsql_affected_rows
fbsql_blob_size
FrontBase Funções


Get the size of a BLOB

fbsql_autocommit
fbsql_change_user
FrontBase Funções
PHP Manual

fbsql_blob_size

(PHP 4 >= 4.2.0, PHP 5)

fbsql_blob_size — Get the size of a BLOB

Descrição

int fbsql_blob_size ( string $blob_handle [, resource $link_identifier ] )

Returns the size of the given BLOB.

Parâmetros

blob_handle

A BLOB handle, returned by fbsql_create_blob().

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns the BLOB size as an integer, or FALSE on error.

Veja Também

  • fbsql_clob_size() - Get the size of a CLOB

fbsql_autocommit
fbsql_change_user
FrontBase Funções


Change logged in user of the active connection

fbsql_blob_size
fbsql_clob_size
FrontBase Funções
PHP Manual

fbsql_change_user

(PHP 4 >= 4.0.6, PHP 5)

fbsql_change_user — Change logged in user of the active connection

Descrição

bool fbsql_change_user ( string $user , string $password [, string $database [, resource $link_identifier ]] )

fbsql_change_user() changes the logged in user of the specified connection. If the new user and password authorization fails, the current connected user stays active.

Parâmetros

user

The new user name.

password

The new user password.

database

If specified, this will be the default or current database after the user has been changed.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fbsql_blob_size
fbsql_clob_size
FrontBase Funções


Get the size of a CLOB

fbsql_change_user
fbsql_close
FrontBase Funções
PHP Manual

fbsql_clob_size

(PHP 4 >= 4.2.0, PHP 5)

fbsql_clob_size — Get the size of a CLOB

Descrição

int fbsql_clob_size ( string $clob_handle [, resource $link_identifier ] )

Returns the size of the given CLOB.

Parâmetros

clob_handle

A CLOB handle, returned by fbsql_create_clob().

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns the CLOB size as an integer, or FALSE on error.

Veja Também

  • fbsql_blob_size() - Get the size of a BLOB

fbsql_change_user
fbsql_close
FrontBase Funções


Close FrontBase connection

fbsql_clob_size
fbsql_commit
FrontBase Funções
PHP Manual

fbsql_close

(PHP 4 >= 4.0.6, PHP 5)

fbsql_close — Close FrontBase connection

Descrição

bool fbsql_close ([ resource $link_identifier ] )

Closes the connection to the FrontBase server that's associated with the specified link identifier.

Using fbsql_close() isn't usually necessary, as non-persistent open links are automatically closed at the end of the script's execution.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 fbsql_close() example

<?php
$link = fbsql_connect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
echo "Connected successfully";
fbsql_close($link);
?>

Veja Também

  • fbsql_connect() - Open a connection to a FrontBase Server
  • fbsql_pconnect() - Open a persistent connection to a FrontBase Server

fbsql_clob_size
fbsql_commit
FrontBase Funções


Commits a transaction to the database

fbsql_close
fbsql_connect
FrontBase Funções
PHP Manual

fbsql_commit

(PHP 4 >= 4.0.6, PHP 5)

fbsql_commit — Commits a transaction to the database

Descrição

bool fbsql_commit ([ resource $link_identifier ] )

Ends the current transaction by writing all inserts, updates and deletes to the disk and unlocking all row and table locks held by the transaction. This command is only needed if autocommit is set to false.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_autocommit() - Enable or disable autocommit
  • fbsql_rollback() - Rollback a transaction to the database

fbsql_close
fbsql_connect
FrontBase Funções


Open a connection to a FrontBase Server

fbsql_commit
fbsql_create_blob
FrontBase Funções
PHP Manual

fbsql_connect

(PHP 4 >= 4.0.6, PHP 5)

fbsql_connect — Open a connection to a FrontBase Server

Descrição

 resource fbsql_connect
  ([ string $hostname = ini_get("fbsql.default_host")
 [, string $username = ini_get("fbsql.default_user")
 [, string $password = ini_get("fbsql.default_password")
]]] )

fbsql_connect() establishes a connection to a FrontBase server.

If a second call is made to fbsql_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned.

The link to the server will be closed as soon as the execution of the script ends, unless it's closed earlier by explicitly calling fbsql_close().

Parâmetros

hostname

The server host name.

username

The user name for the connection.

password

The password for the connection.

Valor Retornado

Returns a positive FrontBase link identifier on success, or FALSE on errors.

Exemplos

Exemplo #1 fbsql_connect() example

<?php

$link = fbsql_connect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
echo "Connected successfully";
fbsql_close($link);

?>

Veja Também

  • fbsql_pconnect() - Open a persistent connection to a FrontBase Server
  • fbsql_close() - Close FrontBase connection

fbsql_commit
fbsql_create_blob
FrontBase Funções


Create a BLOB

fbsql_connect
fbsql_create_clob
FrontBase Funções
PHP Manual

fbsql_create_blob

(PHP 4 >= 4.2.0, PHP 5)

fbsql_create_blob — Create a BLOB

Descrição

string fbsql_create_blob ( string $blob_data [, resource $link_identifier ] )

Creates a BLOB from the given data.

Parâmetros

blob_data

The BLOB data.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a resource handle to the newly created BLOB, which can be used with insert and update commands to store the BLOB in the database.

Exemplos

Exemplo #1 fbsql_create_blob() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
$filename = "blobfile.bin";
$fp = fopen($filename, "rb");
$blobdata = fread($fp, filesize($filename));
fclose($fp);

$blobHandle = fbsql_create_blob($blobdata, $link);

$sql = "INSERT INTO BLOB_TABLE (BLOB_COLUMN) VALUES ($blobHandle);";
$rs = fbsql_query($sql, $link);
?>

Veja Também

  • fbsql_create_clob() - Create a CLOB
  • fbsql_read_blob() - Read a BLOB from the database
  • fbsql_read_clob() - Read a CLOB from the database
  • fbsql_set_lob_mode() - Set the LOB retrieve mode for a FrontBase result set

fbsql_connect
fbsql_create_clob
FrontBase Funções


Create a CLOB

fbsql_create_blob
fbsql_create_db
FrontBase Funções
PHP Manual

fbsql_create_clob

(PHP 4 >= 4.2.0, PHP 5)

fbsql_create_clob — Create a CLOB

Descrição

string fbsql_create_clob ( string $clob_data [, resource $link_identifier ] )

Creates a CLOB from the given data.

Parâmetros

clob_data

The CLOB data.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a resource handle to the newly created CLOB, which can be used with insert and update commands to store the CLOB in the database.

Exemplos

Exemplo #1 fbsql_create_clob() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
$filename = "clob_file.txt";
$fp = fopen($filename, "rb");
$clobdata = fread($fp, filesize($filename));
fclose($fp);

$clobHandle = fbsql_create_clob($clobdata, $link);

$sql = "INSERT INTO CLOB_TABLE (CLOB_COLUMN) VALUES ($clobHandle);";
$rs = fbsql_query($sql, $link);
?>

Veja Também

  • fbsql_create_blob() - Create a BLOB
  • fbsql_read_blob() - Read a BLOB from the database
  • fbsql_read_clob() - Read a CLOB from the database
  • fbsql_set_lob_mode() - Set the LOB retrieve mode for a FrontBase result set

fbsql_create_blob
fbsql_create_db
FrontBase Funções


Create a FrontBase database

fbsql_create_clob
fbsql_data_seek
FrontBase Funções
PHP Manual

fbsql_create_db

(PHP 4 >= 4.0.6, PHP 5)

fbsql_create_db — Create a FrontBase database

Descrição

bool fbsql_create_db ( string $database_name [, resource $link_identifier [, string $database_options ]] )

Attempts to create a new database on the specified server.

Parâmetros

database_name

The database name, as a string.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

database_options

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 fbsql_create_db() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
if (fbsql_create_db("my_db")) {
    echo "Database created successfully\n";
} else {
    printf("Error creating database: %s\n", fbsql_error());
}
?>

Veja Também

  • fbsql_drop_db() - Drop (delete) a FrontBase database

fbsql_create_clob
fbsql_data_seek
FrontBase Funções


Move internal result pointer

fbsql_create_db
fbsql_database_password
FrontBase Funções
PHP Manual

fbsql_data_seek

(PHP 4 >= 4.0.6, PHP 5)

fbsql_data_seek — Move internal result pointer

Descrição

bool fbsql_data_seek ( resource $result , int $row_number )

Moves the internal row pointer of the FrontBase result associated with the specified result identifier to point to the specified row number.

The next call to fbsql_fetch_row() would return that row.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

row_number

The row number. Starts at 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 fbsql_data_seek() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");

fbsql_select_db("samp_db")
    or die("Could not select database");

$query = "SELECT last_name, first_name FROM friends;";
$result = fbsql_query($query)
    or die("Query failed");

// fetch rows in reverse order

for ($i = fbsql_num_rows($result) - 1; $i >=0; $i--) {
    if (!fbsql_data_seek($result, $i)) {
        printf("Cannot seek to row %d\n", $i);
        continue;
    }

    if (!($row = fbsql_fetch_object($result)))
        continue;

    echo $row->last_name . $row->first_name . "<br />\n";
}

fbsql_free_result($result);
?>

fbsql_create_db
fbsql_database_password
FrontBase Funções


Sets or retrieves the password for a FrontBase database

fbsql_data_seek
fbsql_database
FrontBase Funções
PHP Manual

fbsql_database_password

(PHP 4 >= 4.0.6, PHP 5)

fbsql_database_password — Sets or retrieves the password for a FrontBase database

Descrição

string fbsql_database_password ( resource $link_identifier [, string $database_password ] )

Sets and retrieves the database password used by the connection. If a database is protected by a database password, the user must call this function before calling fbsql_select_db().

If no link is open, the function will try to establish a link as if fbsql_connect() was called, and use it.

This function does not change the database password in the database nor can it be used to retrieve the database password for a database.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

database_password

The database password, as a string. If given, the function sets the database password for the specified link identifier.

Valor Retornado

Returns the database password associated with the link identifier.

Exemplos

Exemplo #1 fbsql_create_clob() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
fbsql_database_password($link, "secret db password");
fbsql_select_db($database, $link);
?>

Veja Também

  • fbsql_connect() - Open a connection to a FrontBase Server
  • fbsql_pconnect() - Open a persistent connection to a FrontBase Server
  • fbsql_select_db() - Select a FrontBase database

fbsql_data_seek
fbsql_database
FrontBase Funções


Get or set the database name used with a connection

fbsql_database_password
fbsql_db_query
FrontBase Funções
PHP Manual

fbsql_database

(PHP 4 >= 4.0.6, PHP 5)

fbsql_database — Get or set the database name used with a connection

Descrição

string fbsql_database ( resource $link_identifier [, string $database ] )

Get or set the database name used with the connection.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

database

The database name. If given, the default database of the connexion will be changed to database.

Valor Retornado

Returns the name of the database used with this connection.

fbsql_database_password
fbsql_db_query
FrontBase Funções


Send a FrontBase query

fbsql_database
fbsql_db_status
FrontBase Funções
PHP Manual

fbsql_db_query

(PHP 4 >= 4.0.6, PHP 5)

fbsql_db_query — Send a FrontBase query

Descrição

resource fbsql_db_query ( string $database , string $query [, resource $link_identifier ] )

Selects a database and executes a query on it.

Parâmetros

database

The database to be selected.

query

The SQL query to be executed.

Nota:

The query string shall always end with a semicolon.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a positive FrontBase result identifier to the query result, or FALSE on error.

Veja Também

  • fbsql_query() - Send a FrontBase query
  • fbsql_connect() - Open a connection to a FrontBase Server

fbsql_database
fbsql_db_status
FrontBase Funções


Get the status for a given database

fbsql_db_query
fbsql_drop_db
FrontBase Funções
PHP Manual

fbsql_db_status

(PHP 4 >= 4.0.7, PHP 5)

fbsql_db_status — Get the status for a given database

Descrição

int fbsql_db_status ( string $database_name [, resource $link_identifier ] )

Gets the current status of the specified database.

Parâmetros

database_name

The database name.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns an integer value with the current status. This can be one of the following constants:

  • FALSE - The exec handler for the host was invalid. This error will occur when the link_identifier connects directly to a database by using a port number. FBExec can be available on the server but no connection has been made for it.
  • FBSQL_UNKNOWN - The Status is unknown.
  • FBSQL_STOPPED - The database is not running. Use fbsql_start_db() to start the database.
  • FBSQL_STARTING - The database is starting.
  • FBSQL_RUNNING - The database is running and can be used to perform SQL operations.
  • FBSQL_STOPPING - The database is stopping.
  • FBSQL_NOEXEC - FBExec is not running on the server and it is not possible to get the status of the database.

Veja Também

  • fbsql_start_db() - Start a database on local or remote server
  • fbsql_stop_db() - Stop a database on local or remote server

fbsql_db_query
fbsql_drop_db
FrontBase Funções


Drop (delete) a FrontBase database

fbsql_db_status
fbsql_errno
FrontBase Funções
PHP Manual

fbsql_drop_db

(PHP 4 >= 4.0.6, PHP 5)

fbsql_drop_db — Drop (delete) a FrontBase database

Descrição

bool fbsql_drop_db ( string $database_name [, resource $link_identifier ] )

fbsql_drop_db() attempts to drop (remove) an entire database from the server associated with the specified link identifier.

Parâmetros

database_name

The database name, as a string.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_create_db() - Create a FrontBase database

fbsql_db_status
fbsql_errno
FrontBase Funções


Returns the error number from previous operation

fbsql_drop_db
fbsql_error
FrontBase Funções
PHP Manual

fbsql_errno

(PHP 4 >= 4.0.6, PHP 5)

fbsql_errno — Returns the error number from previous operation

Descrição

int fbsql_errno ([ resource $link_identifier ] )

Returns the numerical value of the error message from previous FrontBase operation.

Errors coming back from the fbsql database backend don't issue warnings. Instead, use fbsql_errno() to retrieve the error code. Note that this function only returns the error code from the most recently executed fbsql function (not including fbsql_error() and fbsql_errno()), so if you want to use it, make sure you check the value before calling another fbsql function.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns the error number from the last fbsql function, or 0 (zero) if no error occurred.

Exemplos

Exemplo #1 fbsql_errno() Example

<?php
fbsql_connect("marliesle");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
fbsql_select_db("nonexistentdb");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
$conn = fbsql_query("SELECT * FROM nonexistenttable;");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
?>

Veja Também

  • fbsql_error() - Returns the error message from previous operation
  • fbsql_warnings() - Enable or disable FrontBase warnings

fbsql_drop_db
fbsql_error
FrontBase Funções


Returns the error message from previous operation

fbsql_errno
fbsql_fetch_array
FrontBase Funções
PHP Manual

fbsql_error

(PHP 4 >= 4.0.6, PHP 5)

fbsql_error — Returns the error message from previous operation

Descrição

string fbsql_error ([ resource $link_identifier ] )

Returns the error message from previous FrontBase operation.

Errors coming back from the fbsql database backend don't issue warnings. Instead, use fbsql_error() to retrieve the error text. Note that this function only returns the error code from the most recently executed fbsql function (not including fbsql_error() and fbsql_errno()), so if you want to use it, make sure you check the value before calling another fbsql function.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns the error text from the last fbsql function, or '' (the empty string) if no error occurred.

Exemplos

Exemplo #1 fbsql_error() Example

<?php
fbsql_connect("marliesle");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
fbsql_select_db("nonexistentdb");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
$conn = fbsql_query("SELECT * FROM nonexistenttable;");
echo fbsql_errno() . ": " . fbsql_error() . "<br />";
?>

Veja Também

  • fbsql_errno() - Returns the error number from previous operation
  • fbsql_warnings() - Enable or disable FrontBase warnings

fbsql_errno
fbsql_fetch_array
FrontBase Funções


Fetch a result row as an associative array, a numeric array, or both

fbsql_error
fbsql_fetch_assoc
FrontBase Funções
PHP Manual

fbsql_fetch_array

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_array — Fetch a result row as an associative array, a numeric array, or both

Descrição

array fbsql_fetch_array ( resource $result [, int $result_type ] )

fbsql_fetch_array() is a combination of
fbsql_fetch_row() and
fbsql_fetch_assoc().

An important thing to note is that using fbsql_fetch_array() is NOT significantly slower than using fbsql_fetch_row(), while it provides a significant added value.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

result_type

A constant and can take the following values: FBSQL_ASSOC, FBSQL_NUM, or FBSQL_BOTH.

When using FBSQL_BOTH, in addition to storing the data in the numeric indices of the result array, it also stores the data in associative indices, using the field names as keys.

Valor Retornado

Returns an array that corresponds to the fetched row, or FALSE if there are no more rows.

If two or more columns of the result have the same field names, the last column will take precedence. To access the other column(s) of the same name, you must the numeric index of the column or make an alias for the column.

select t1.f1 as foo t2.f1 as bar from t1, t2

Exemplos

Exemplo #1 fbsql_fetch_array() example

<?php
fbsql_connect($host, $user, $password);
$result = fbsql_db_query("database", "select user_id, fullname from table");
while ($row = fbsql_fetch_array($result)) {
    echo "user_id: " . $row["user_id"] . "<br />\n";
    echo "user_id: " . $row[0] . "<br />\n";
    echo "fullname: " . $row["fullname"] . "<br />\n";
    echo "fullname: " . $row[1] . "<br />\n";
}
fbsql_free_result($result);
?>

Veja Também

  • fbsql_fetch_row() - Get a result row as an enumerated array
  • fbsql_fetch_assoc() - Fetch a result row as an associative array
  • fbsql_fetch_object() - Fetch a result row as an object

fbsql_error
fbsql_fetch_assoc
FrontBase Funções


Fetch a result row as an associative array

fbsql_fetch_array
fbsql_fetch_field
FrontBase Funções
PHP Manual

fbsql_fetch_assoc

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_assoc — Fetch a result row as an associative array

Descrição

array fbsql_fetch_assoc ( resource $result )

Calling fbsql_fetch_assoc() is equivalent to calling fbsql_fetch_array() with FBSQL_ASSOC as second parameter. It only returns an associative array.

This is the way fbsql_fetch_array() originally worked. If you need the numeric indices as well as the associative, use fbsql_fetch_array().

An important thing to note is that using fbsql_fetch_assoc() is NOT significantly slower than using fbsql_fetch_row(), while it provides a significant added value.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns an associative array that corresponds to the fetched row, or FALSE if there are no more rows.

If two or more columns of the result have the same field names, the last column will take precedence. To access the other column(s) of the same name, you must use fbsql_fetch_array() and have it return the numeric indices as well.

Exemplos

Exemplo #1 fbsql_fetch_assoc() example

<?php
fbsql_connect($host, $user, $password);
$result = fbsql_db_query("database", "select * from table");
while ($row = fbsql_fetch_assoc($result)) {
    echo $row["user_id"];
    echo $row["fullname"];
}
fbsql_free_result($result);
?>

Veja Também

  • fbsql_fetch_row() - Get a result row as an enumerated array
  • fbsql_fetch_array() - Fetch a result row as an associative array, a numeric array, or both
  • fbsql_fetch_object() - Fetch a result row as an object

fbsql_fetch_array
fbsql_fetch_field
FrontBase Funções


Get column information from a result and return as an object

fbsql_fetch_assoc
fbsql_fetch_lengths
FrontBase Funções
PHP Manual

fbsql_fetch_field

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_field — Get column information from a result and return as an object

Descrição

object fbsql_fetch_field ( resource $result [, int $field_offset ] )

Used in order to obtain information about fields in a certain query result.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

field_offset

The numerical offset of the field. The field index starts at 0. If not specified, the next field that wasn't yet retrieved by fbsql_fetch_field() is retrieved.

Valor Retornado

Returns an object containing field information, or FALSE on errors.

The properties of the object are:

  • name - column name
  • table - name of the table the column belongs to
  • max_length - maximum length of the column
  • not_null - 1 if the column cannot be NULL
  • type - the type of the column

Exemplos

Exemplo #1 fbsql_fetch_field() example

<?php
fbsql_connect($host, $user, $password)
    or die("Could not connect");
$result = fbsql_db_query("database", "select * from table")
    or die("Query failed");
# get column metadata
$i = 0;
while ($i < fbsql_num_fields($result)) {
    echo "Information for column $i:<br />\n";
    $meta = fbsql_fetch_field($result);
    if (!$meta) {
        echo "No information available<br />\n";
    }
    echo "<pre>
max_length:   $meta->max_length
name:         $meta->name
not_null:     $meta->not_null
table:        $meta->table
type:         $meta->type
</pre>";
    $i++;
}
fbsql_free_result($result);
?>

Veja Também

  • fbsql_field_seek() - Set result pointer to a specified field offset

fbsql_fetch_assoc
fbsql_fetch_lengths
FrontBase Funções


Get the length of each output in a result

fbsql_fetch_field
fbsql_fetch_object
FrontBase Funções
PHP Manual

fbsql_fetch_lengths

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_lengths — Get the length of each output in a result

Descrição

array fbsql_fetch_lengths ( resource $result )

Stores the lengths of each result column in the last row returned by
fbsql_fetch_row(),
fbsql_fetch_array() and
fbsql_fetch_object() in an array.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns an array, starting at offset 0, that corresponds to the lengths of each field in the last row fetched by fbsql_fetch_row(), or FALSE on error.

Veja Também

  • fbsql_fetch_row() - Get a result row as an enumerated array

fbsql_fetch_field
fbsql_fetch_object
FrontBase Funções


Fetch a result row as an object

fbsql_fetch_lengths
fbsql_fetch_row
FrontBase Funções
PHP Manual

fbsql_fetch_object

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_object — Fetch a result row as an object

Descrição

object fbsql_fetch_object ( resource $result )

fbsql_fetch_object() is similar to fbsql_fetch_array(), with one difference - an object is returned, instead of an array. Indirectly, that means that you can only access the data by the field names, and not by their offsets (numbers are illegal property names).

Speed-wise, the function is identical to fbsql_fetch_array(), and almost as quick as fbsql_fetch_row() (the difference is insignificant).

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns an object with properties that correspond to the fetched row, or FALSE if there are no more rows.

Exemplos

Exemplo #1 fbsql_fetch_object() example

<?php
fbsql_connect($host, $user, $password);
$result = fbsql_db_query("database", "select * from table");
while ($row = fbsql_fetch_object($result)) {
    echo $row->user_id;
    echo $row->fullname;
}
fbsql_free_result($result);
?>

Veja Também

  • fbsql_fetch_array() - Fetch a result row as an associative array, a numeric array, or both
  • fbsql_fetch_row() - Get a result row as an enumerated array
  • fbsql_fetch_assoc() - Fetch a result row as an associative array

fbsql_fetch_lengths
fbsql_fetch_row
FrontBase Funções


Get a result row as an enumerated array

fbsql_fetch_object
fbsql_field_flags
FrontBase Funções
PHP Manual

fbsql_fetch_row

(PHP 4 >= 4.0.6, PHP 5)

fbsql_fetch_row — Get a result row as an enumerated array

Descrição

array fbsql_fetch_row ( resource $result )

fbsql_fetch_row() fetches one row of data from the result associated with the specified result identifier.

Subsequent call to fbsql_fetch_row() would return the next row in the result set, or FALSE if there are no more rows.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns an array that corresponds to the fetched row where each result column is stored in an offset, starting at offset 0, or FALSE if there are no more rows.

Veja Também

  • fbsql_fetch_array() - Fetch a result row as an associative array, a numeric array, or both
  • fbsql_fetch_assoc() - Fetch a result row as an associative array
  • fbsql_fetch_object() - Fetch a result row as an object
  • fbsql_data_seek() - Move internal result pointer
  • fbsql_fetch_lengths() - Get the length of each output in a result
  • fbsql_result() - Get result data

fbsql_fetch_object
fbsql_field_flags
FrontBase Funções


Get the flags associated with the specified field in a result

fbsql_fetch_row
fbsql_field_len
FrontBase Funções
PHP Manual

fbsql_field_flags

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_flags — Get the flags associated with the specified field in a result

Descrição

string fbsql_field_flags ( resource $result [, int $field_offset ] )

Gets the flags associated with the specified field in a result.

Parâmetros

result

A result pointer returned by fbsql_list_fields().

field_offset

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Returns the field flags of the specified field as a single word per flag separated by a single space, so that you can split the returned value using explode().

fbsql_fetch_row
fbsql_field_len
FrontBase Funções


Returns the length of the specified field

fbsql_field_flags
fbsql_field_name
FrontBase Funções
PHP Manual

fbsql_field_len

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_len — Returns the length of the specified field

Descrição

int fbsql_field_len ( resource $result [, int $field_offset ] )

Returns the length of the specified field.

Parâmetros

result

A result pointer returned by fbsql_list_fields().

field_offset

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Returns the length of the specified field.

fbsql_field_flags
fbsql_field_name
FrontBase Funções


Get the name of the specified field in a result

fbsql_field_len
fbsql_field_seek
FrontBase Funções
PHP Manual

fbsql_field_name

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_name — Get the name of the specified field in a result

Descrição

string fbsql_field_name ( resource $result [, int $field_index ] )

Returns the name of the specified field index.

Parâmetros

result

A result pointer returned by fbsql_list_fields().

field_index

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Returns the name as a string, or FALSE if the field doesn't exist.

Exemplos

Exemplo #1 fbsql_field_name() example

<?php
// The users table consists of three fields:
//   user_id
//   username
//   password.

$res = fbsql_db_query("users", "select * from users", $link);

echo fbsql_field_name($res, 0) . "\n";
echo fbsql_field_name($res, 2);
?>

O exemplo acima irá imprimir:

user_id
password

Veja Também

  • fbsql_field_type() - Get the type of the specified field in a result

fbsql_field_len
fbsql_field_seek
FrontBase Funções


Set result pointer to a specified field offset

fbsql_field_name
fbsql_field_table
FrontBase Funções
PHP Manual

fbsql_field_seek

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_seek — Set result pointer to a specified field offset

Descrição

bool fbsql_field_seek ( resource $result [, int $field_offset ] )

Seeks to the specified field offset. If the next call to fbsql_fetch_field() doesn't include a field offset, the field offset specified in fbsql_field_seek() will be returned.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

field_offset

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_fetch_field() - Get column information from a result and return as an object

fbsql_field_name
fbsql_field_table
FrontBase Funções


Get name of the table the specified field is in

fbsql_field_seek
fbsql_field_type
FrontBase Funções
PHP Manual

fbsql_field_table

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_table — Get name of the table the specified field is in

Descrição

string fbsql_field_table ( resource $result [, int $field_offset ] )

Returns the name of the table that the specified field is in.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

field_offset

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Returns the name of the table, as a string.

fbsql_field_seek
fbsql_field_type
FrontBase Funções


Get the type of the specified field in a result

fbsql_field_table
fbsql_free_result
FrontBase Funções
PHP Manual

fbsql_field_type

(PHP 4 >= 4.0.6, PHP 5)

fbsql_field_type — Get the type of the specified field in a result

Descrição

string fbsql_field_type ( resource $result [, int $field_offset ] )

fbsql_field_type() is similar to the fbsql_field_name() function, but the field type is returned instead.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

field_offset

The numerical offset of the field. The field index starts at 0.

Valor Retornado

Returns the field type, as a string.

This can be one of int, real, string, blob, and others as detailed in the » FrontBase documentation.

Exemplos

Exemplo #1 fbsql_field_type() example

<?php

fbsql_connect("localhost", "_SYSTEM", "");
fbsql_select_db("wisconsin");
$result = fbsql_query("SELECT * FROM onek;");
$fields = fbsql_num_fields($result);
$rows   = fbsql_num_rows($result);
$i = 0;
$table = fbsql_field_table($result, $i);
echo "Your '" . $table . "' table has " . $fields . " fields and " . $rows . " records <br />";
echo "The table has the following fields <br />";
while ($i < $fields) {
    $type  = fbsql_field_type($result, $i);
    $name  = fbsql_field_name($result, $i);
    $len   = fbsql_field_len($result, $i);
    $flags = fbsql_field_flags($result, $i);
    echo $type . " " . $name . " " . $len . " " . $flags . "<br />";
    $i++;
}
fbsql_close();

?>

Veja Também

  • fbsql_field_name() - Get the name of the specified field in a result

fbsql_field_table
fbsql_free_result
FrontBase Funções


Free result memory

fbsql_field_type
fbsql_get_autostart_info
FrontBase Funções
PHP Manual

fbsql_free_result

(PHP 4 >= 4.0.6, PHP 5)

fbsql_free_result — Free result memory

Descrição

bool fbsql_free_result ( resource $result )

Frees all memory associated with the given result identifier.

fbsql_free_result() only needs to be called if you are concerned about how much memory is being used for queries that return large result sets. All associated result memory is automatically freed at the end of the script's execution.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fbsql_field_type
fbsql_get_autostart_info
FrontBase Funções


fbsql_free_result
fbsql_hostname
FrontBase Funções
PHP Manual

fbsql_get_autostart_info

(PHP 4 >= 4.0.7, PHP 5)

fbsql_get_autostart_info —

Descrição

array fbsql_get_autostart_info ([ resource $link_identifier ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

fbsql_free_result
fbsql_hostname
FrontBase Funções


Get or set the host name used with a connection

fbsql_get_autostart_info
fbsql_insert_id
FrontBase Funções
PHP Manual

fbsql_hostname

(PHP 4 >= 4.0.6, PHP 5)

fbsql_hostname — Get or set the host name used with a connection

Descrição

string fbsql_hostname ( resource $link_identifier [, string $host_name ] )

Gets or sets the host name used with a connection.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

host_name

If provided, this will be the new connection host name.

Valor Retornado

Returns the current host name used for the connection.

Veja Também

  • fbsql_username() - Get or set the username for the connection
  • fbsql_password() - Get or set the user password used with a connection

fbsql_get_autostart_info
fbsql_insert_id
FrontBase Funções


Get the id generated from the previous INSERT operation

fbsql_hostname
fbsql_list_dbs
FrontBase Funções
PHP Manual

fbsql_insert_id

(PHP 4 >= 4.0.6, PHP 5)

fbsql_insert_id — Get the id generated from the previous INSERT operation

Descrição

int fbsql_insert_id ([ resource $link_identifier ] )

Gets the id generated from the previous INSERT operation which created a DEFAULT UNIQUE value.

Nota:

The value of the FrontBase SQL function fbsql_insert_id() always contains the most recently generated DEFAULT UNIQUE value, and is not reset between queries.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns the ID generated from the previous INSERT query, or 0 if the previous query does not generate an DEFAULT UNIQUE value.

If you need to save the value for later, be sure to call this function immediately after the query that generates the value.

Veja Também

  • fbsql_affected_rows() - Get number of affected rows in previous FrontBase operation

fbsql_hostname
fbsql_list_dbs
FrontBase Funções


List databases available on a FrontBase server

fbsql_insert_id
fbsql_list_fields
FrontBase Funções
PHP Manual

fbsql_list_dbs

(PHP 4 >= 4.0.6, PHP 5)

fbsql_list_dbs — List databases available on a FrontBase server

Descrição

resource fbsql_list_dbs ([ resource $link_identifier ] )

Return a result pointer containing the databases available from the current fbsql daemon. Use the fbsql_tablename() to traverse this result pointer.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a result pointer or FALSE on error.

Exemplos

Exemplo #1 fbsql_list_dbs() example

<?php
$link = fbsql_connect('localhost', 'myname', 'secret');
$db_list = fbsql_list_dbs($link);

while ($row = fbsql_fetch_object($db_list)) {
    echo $row->Database . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

database1
database2
database3
...

Nota:

The above code would just as easily work with fbsql_fetch_row() or other similar functions.

Veja Também

  • fbsql_list_fields() - List FrontBase result fields
  • fbsql_list_tables() - List tables in a FrontBase database

fbsql_insert_id
fbsql_list_fields
FrontBase Funções


List FrontBase result fields

fbsql_list_dbs
fbsql_list_tables
FrontBase Funções
PHP Manual

fbsql_list_fields

(PHP 4 >= 4.0.6, PHP 5)

fbsql_list_fields — List FrontBase result fields

Descrição

resource fbsql_list_fields ( string $database_name , string $table_name [, resource $link_identifier ] )

Retrieves information about the given table.

Parâmetros

database_name

The database name.

table_name

The table name.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a result pointer which can be used with the fbsql_field_xxx functions, or FALSE on error.

Erros

A string describing the error will be placed in $phperrmsg, and unless the function was called as @fbsql() then this error string will also be printed out.

Exemplos

Exemplo #1 fbsql_list_fields() example

<?php
$link = fbsql_connect('localhost', 'myname', 'secret');

$fields = fbsql_list_fields("database1", "table1", $link);
$columns = fbsql_num_fields($fields);

for ($i = 0; $i < $columns; $i++) {
    echo fbsql_field_name($fields, $i) . "\n";;
}
?>

O exemplo acima irá imprimir algo similar a:

field1
field2
field3
...

Veja Também

  • fbsql_field_len() - Returns the length of the specified field
  • fbsql_field_name() - Get the name of the specified field in a result
  • fbsql_field_type() - Get the type of the specified field in a result
  • fbsql_field_flags() - Get the flags associated with the specified field in a result

fbsql_list_dbs
fbsql_list_tables
FrontBase Funções


List tables in a FrontBase database

fbsql_list_fields
fbsql_next_result
FrontBase Funções
PHP Manual

fbsql_list_tables

(PHP 4 >= 4.0.6, PHP 5)

fbsql_list_tables — List tables in a FrontBase database

Descrição

resource fbsql_list_tables ( string $database [, resource $link_identifier ] )

Returns a result pointer describing the database.

Parâmetros

database

The database name.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a result pointer which can be used with the fbsql_tablename() function to read the actual table names, or FALSE on error.

Veja Também

  • fbsql_list_fields() - List FrontBase result fields
  • fbsql_list_dbs() - List databases available on a FrontBase server

fbsql_list_fields
fbsql_next_result
FrontBase Funções


Move the internal result pointer to the next result

fbsql_list_tables
fbsql_num_fields
FrontBase Funções
PHP Manual

fbsql_next_result

(PHP 4 >= 4.0.6, PHP 5)

fbsql_next_result — Move the internal result pointer to the next result

Descrição

bool fbsql_next_result ( resource $result )

When sending more than one SQL statement to the server or executing a stored procedure with multiple results will cause the server to return multiple result sets. This function will test for additional results available form the server. If an additional result set exists it will free the existing result set and prepare to fetch the words from the new result set.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns TRUE if an additional result set was available or FALSE otherwise.

Exemplos

Exemplo #1 fbsql_next_result() example

<?php
$link = fbsql_connect("localhost", "_SYSTEM", "secret");
fbsql_select_db("MyDB", $link);
$SQL = "Select * from table1; select * from table2;";
$rs = fbsql_query($SQL, $link);
do {
    while ($row = fbsql_fetch_row($rs)) {
    }
} while (fbsql_next_result($rs));
fbsql_free_result($rs);
fbsql_close($link);
?>

fbsql_list_tables
fbsql_num_fields
FrontBase Funções


Get number of fields in result

fbsql_next_result
fbsql_num_rows
FrontBase Funções
PHP Manual

fbsql_num_fields

(PHP 4 >= 4.0.6, PHP 5)

fbsql_num_fields — Get number of fields in result

Descrição

int fbsql_num_fields ( resource $result )

Returns the number of fields in the given result set.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns the number of fields, as an integer.

Veja Também

  • fbsql_db_query() - Send a FrontBase query
  • fbsql_query() - Send a FrontBase query
  • fbsql_fetch_field() - Get column information from a result and return as an object
  • fbsql_num_rows() - Get number of rows in result

fbsql_next_result
fbsql_num_rows
FrontBase Funções


Get number of rows in result

fbsql_num_fields
fbsql_password
FrontBase Funções
PHP Manual

fbsql_num_rows

(PHP 4 >= 4.0.6, PHP 5)

fbsql_num_rows — Get number of rows in result

Descrição

int fbsql_num_rows ( resource $result )

Gets the number of rows in the given result set.

This function is only valid for SELECT statements. To retrieve the number of rows returned from a INSERT, UPDATE or DELETE query, use fbsql_affected_rows().

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns the number of rows returned by the last SELECT statement.

Exemplos

Exemplo #1 fbsql_num_rows() example

<?php

$link = fbsql_connect("localhost", "username", "password");
fbsql_select_db("database", $link);

$result = fbsql_query("SELECT * FROM table1;", $link);
$num_rows = fbsql_num_rows($result);

echo "$num_rows Rows\n";

?>

Veja Também

  • fbsql_affected_rows() - Get number of affected rows in previous FrontBase operation
  • fbsql_connect() - Open a connection to a FrontBase Server
  • fbsql_select_db() - Select a FrontBase database
  • fbsql_query() - Send a FrontBase query

fbsql_num_fields
fbsql_password
FrontBase Funções


Get or set the user password used with a connection

fbsql_num_rows
fbsql_pconnect
FrontBase Funções
PHP Manual

fbsql_password

(PHP 4 >= 4.0.6, PHP 5)

fbsql_password — Get or set the user password used with a connection

Descrição

string fbsql_password ( resource $link_identifier [, string $password ] )

Get or set the user password used with a connection.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

password

If provided, this will be the new connection password.

Valor Retornado

Returns the current password used for the connection.

Veja Também

  • fbsql_username() - Get or set the username for the connection
  • fbsql_hostname() - Get or set the host name used with a connection

fbsql_num_rows
fbsql_pconnect
FrontBase Funções


Open a persistent connection to a FrontBase Server

fbsql_password
fbsql_query
FrontBase Funções
PHP Manual

fbsql_pconnect

(PHP 4 >= 4.0.6, PHP 5)

fbsql_pconnect — Open a persistent connection to a FrontBase Server

Descrição

 resource fbsql_pconnect
  ([ string $hostname = ini_get("fbsql.default_host")
 [, string $username = ini_get("fbsql.default_user")
 [, string $password = ini_get("fbsql.default_password")
]]] )

Establishes a persistent connection to a FrontBase server.

To set the server port number, use fbsql_select_db().

fbsql_pconnect() acts very much like fbsql_connect() with two major differences:

First, when connecting, the function would first try to find a (persistent) link that's already open with the same host, username and password. If one is found, an identifier for it will be returned instead of opening a new connection.

Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use.

This type of links is therefore called 'persistent'.

Parâmetros

hostname

The server host name.

username

The user name for the connection.

password

The password for the connection.

Valor Retornado

Returns a positive FrontBase persistent link identifier on success, or FALSE on error.

Veja Também

  • fbsql_connect() - Open a connection to a FrontBase Server

fbsql_password
fbsql_query
FrontBase Funções


Send a FrontBase query

fbsql_pconnect
fbsql_read_blob
FrontBase Funções
PHP Manual

fbsql_query

(PHP 4 >= 4.0.6, PHP 5)

fbsql_query — Send a FrontBase query

Descrição

resource fbsql_query ( string $query [, resource $link_identifier [, int $batch_size ]] )

Sends a query to the currently active database on the server.

If the query succeeds, you can call fbsql_num_rows() to find out how many rows were returned for a SELECT statement or fbsql_affected_rows() to find out how many rows were affected by a DELETE, INSERT, REPLACE, or UPDATE statement.

Parâmetros

query

The SQL query to be executed.

Nota:

The query string shall always end with a semicolon.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

batch_size

Valor Retornado

fbsql_query() returns TRUE (non-zero) or FALSE to indicate whether or not the query succeeded. A return value of TRUE means that the query was legal and could be executed by the server. It does not indicate anything about the number of rows affected or returned. It is perfectly possible for a query to succeed but affect no rows or return no rows.

For SELECT statements, fbsql_query() returns a new result identifier that you can pass to fbsql_result().

fbsql_query() will also fail and return FALSE if you don't have permission to access the table(s) referenced by the query.

Exemplos

The following query is syntactically invalid, so fbsql_query() fails and returns FALSE:

Exemplo #1 fbsql_query() example

<?php
$result = fbsql_query("SELECT * WHERE 1=1")
    or die ("Invalid query");
?>

The following query is semantically invalid if my_col is not a column in the table my_tbl, so fbsql_query() fails and returns FALSE:

Exemplo #2 fbsql_query() example

<?php
$result = fbsql_query ("SELECT my_col FROM my_tbl;")
    or die ("Invalid query");
?>

Veja Também

  • fbsql_affected_rows() - Get number of affected rows in previous FrontBase operation
  • fbsql_db_query() - Send a FrontBase query
  • fbsql_free_result() - Free result memory
  • fbsql_result() - Get result data
  • fbsql_select_db() - Select a FrontBase database
  • fbsql_connect() - Open a connection to a FrontBase Server

fbsql_pconnect
fbsql_read_blob
FrontBase Funções


Read a BLOB from the database

fbsql_query
fbsql_read_clob
FrontBase Funções
PHP Manual

fbsql_read_blob

(PHP 4 >= 4.2.0, PHP 5)

fbsql_read_blob — Read a BLOB from the database

Descrição

string fbsql_read_blob ( string $blob_handle [, resource $link_identifier ] )

Reads BLOB data from the database.

If a select statement contains BLOB and/or CLOB columns FrontBase will return the data directly when data is fetched. This default behavior can be changed with fbsql_set_lob_mode() so the fetch functions will return handles to BLOB and CLOB data. If a handle is fetched a user must call fbsql_read_blob() to get the actual BLOB data from the database.

Parâmetros

blob_handle

A BLOB handle, returned by fbsql_create_blob().

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a string containing the specified BLOB data.

Exemplos

Exemplo #1 fbsql_read_blob() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
$sql = "SELECT BLOB_COLUMN FROM BLOB_TABLE;";
$rs = fbsql_query($sql, $link);
$row_data = fbsql_fetch_row($rs);
// $row_data[0] will now contain the blob data for the first row
fbsql_free_result($rs);

$rs = fbsql_query($sql, $link);
fbsql_set_lob_mode($rs, FBSQL_LOB_HANDLE);
$row_data = fbsql_fetch_row($rs);
// $row_data[0] will now contain a handle to the BLOB data in the first row
$blob_data = fbsql_read_blob($row_data[0]);
fbsql_free_result($rs);

?>

Veja Também

  • fbsql_create_blob() - Create a BLOB
  • fbsql_read_clob() - Read a CLOB from the database
  • fbsql_set_lob_mode() - Set the LOB retrieve mode for a FrontBase result set

fbsql_query
fbsql_read_clob
FrontBase Funções


Read a CLOB from the database

fbsql_read_blob
fbsql_result
FrontBase Funções
PHP Manual

fbsql_read_clob

(PHP 4 >= 4.2.0, PHP 5)

fbsql_read_clob — Read a CLOB from the database

Descrição

string fbsql_read_clob ( string $clob_handle [, resource $link_identifier ] )

Reads CLOB data from the database.

If a select statement contains BLOB and/or CLOB columns FrontBase will return the data directly when data is fetched. This default behavior can be changed with fbsql_set_lob_mode() so the fetch functions will return handles to BLOB and CLOB data. If a handle is fetched a user must call fbsql_read_clob() to get the actual CLOB data from the database.

Parâmetros

clob_handle

A CLOB handle, returned by fbsql_create_clob().

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Returns a string containing the specified CLOB data.

Exemplos

Exemplo #1 fbsql_read_clob() example

<?php
$link = fbsql_pconnect("localhost", "_SYSTEM", "secret")
    or die("Could not connect");
$sql = "SELECT CLOB_COLUMN FROM CLOB_TABLE;";
$rs = fbsql_query($sql, $link);
$row_data = fbsql_fetch_row($rs);
// $row_data[0] will now contain the clob data for the first row
fbsql_free_result($rs);

$rs = fbsql_query($sql, $link);
fbsql_set_lob_mode($rs, FBSQL_LOB_HANDLE);
$row_data = fbsql_fetch_row($rs);
// $row_data[0] will now contain a handle to the CLOB data in the first row
$clob_data = fbsql_read_clob($row_data[0]);
fbsql_free_result($rs);

?>

Veja Também

  • fbsql_create_clob() - Create a CLOB
  • fbsql_read_blob() - Read a BLOB from the database
  • fbsql_set_lob_mode() - Set the LOB retrieve mode for a FrontBase result set

fbsql_read_blob
fbsql_result
FrontBase Funções


Get result data

fbsql_read_clob
fbsql_rollback
FrontBase Funções
PHP Manual

fbsql_result

(PHP 4 >= 4.0.6, PHP 5)

fbsql_result — Get result data

Descrição

mixed fbsql_result ( resource $result [, int $row [, mixed $field ]] )

Returns the contents of one cell from a FrontBase result set.

When working on large result sets, you should consider using one of the functions that fetch an entire row (specified below). As these functions return the contents of multiple cells in one function call, they're MUCH quicker than fbsql_result().

Calls to fbsql_result() should not be mixed with calls to other functions that deal with the result set.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

row

field

Can be the field's offset, or the field's name, or the field's table dot field's name (tablename.fieldname).

If the column name has been aliased ('select foo as bar from...'), use the alias instead of the column name.

Nota:

Specifying a numeric offset for the field argument is much quicker than specifying a fieldname or tablename.fieldname argument.

Valor Retornado

Veja Também

Recommended high-performance alternatives:

  • fbsql_fetch_row() - Get a result row as an enumerated array
  • fbsql_fetch_array() - Fetch a result row as an associative array, a numeric array, or both
  • fbsql_fetch_assoc() - Fetch a result row as an associative array
  • fbsql_fetch_object() - Fetch a result row as an object

fbsql_read_clob
fbsql_rollback
FrontBase Funções


Rollback a transaction to the database

fbsql_result
fbsql_rows_fetched
FrontBase Funções
PHP Manual

fbsql_rollback

(PHP 4 >= 4.0.6, PHP 5)

fbsql_rollback — Rollback a transaction to the database

Descrição

bool fbsql_rollback ([ resource $link_identifier ] )

Ends the current transaction by rolling back all statements issued since last commit.

This command is only needed if autocommit is set to false.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_autocommit() - Enable or disable autocommit
  • fbsql_commit() - Commits a transaction to the database

fbsql_result
fbsql_rows_fetched
FrontBase Funções


Get the number of rows affected by the last statement

fbsql_rollback
fbsql_select_db
FrontBase Funções
PHP Manual

fbsql_rows_fetched

(PHP 5 >= 5.1.0)

fbsql_rows_fetched — Get the number of rows affected by the last statement

Descrição

int fbsql_rows_fetched ( resource $result )

Gets the number of rows affected by the last statement.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

Valor Retornado

Returns the number of rows, as an integer.

fbsql_rollback
fbsql_select_db
FrontBase Funções


Select a FrontBase database

fbsql_rows_fetched
fbsql_set_characterset
FrontBase Funções
PHP Manual

fbsql_select_db

(PHP 4 >= 4.0.6, PHP 5)

fbsql_select_db — Select a FrontBase database

Descrição

bool fbsql_select_db ([ string $database_name [, resource $link_identifier ]] )

Sets the current active database on the given link identifier.

The client contacts FBExec to obtain the port number to use for the connection to the database. If the database name is a number the system will use that as a port number and it will not ask FBExec for the port number. The FrontBase server can be stared as FRontBase -FBExec=No -port=<port number> <database name>.

Every subsequent call to fbsql_query() will be made on the active database.

Parâmetros

database_name

The name of the database to be selected.

If the database is protected with a database password, the you must call fbsql_database_password() before selecting the database.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_connect() - Open a connection to a FrontBase Server
  • fbsql_pconnect() - Open a persistent connection to a FrontBase Server
  • fbsql_database_password() - Sets or retrieves the password for a FrontBase database
  • fbsql_query() - Send a FrontBase query

fbsql_rows_fetched
fbsql_set_characterset
FrontBase Funções


Change input/output character set

fbsql_select_db
fbsql_set_lob_mode
FrontBase Funções
PHP Manual

fbsql_set_characterset

(PHP 5 >= 5.1.0)

fbsql_set_characterset — Change input/output character set

Descrição

void fbsql_set_characterset ( resource $link_identifier , int $characterset [, int $in_out_both ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

fbsql_select_db
fbsql_set_lob_mode
FrontBase Funções


Set the LOB retrieve mode for a FrontBase result set

fbsql_set_characterset
fbsql_set_password
FrontBase Funções
PHP Manual

fbsql_set_lob_mode

(PHP 4 >= 4.2.0, PHP 5)

fbsql_set_lob_mode — Set the LOB retrieve mode for a FrontBase result set

Descrição

bool fbsql_set_lob_mode ( resource $result , int $lob_mode )

Sets the mode for retrieving LOB data from the database.

When BLOB and CLOB data is retrieved in FrontBase it can be retrieved direct or indirect. Direct retrieved LOB data will always be fetched no matter the setting of the lob mode. If the LOB data is less than 512 bytes it will always be retrieved directly.

Parâmetros

result

Um identificador de resultado retornado por fbsql_query() ou fbsql_db_query().

lob_mode

Can be one of:

  • FBSQL_LOB_DIRECT - LOB data is retrieved directly. When data is fetched from the database with fbsql_fetch_row(), and other fetch functions, all CLOB and BLOB columns will be returned as ordinary columns. This is the default value on a new FrontBase result.
  • FBSQL_LOB_HANDLE - LOB data is retrieved as handles to the data. When data is fetched from the database with fbsql_fetch_row(), and other fetch functions, LOB data will be returned as a handle to the data if the data is stored indirect or the data if it is stored direct. If a handle is returned it will be a 27 byte string formatted as @'000000000000000000000000'.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_create_blob() - Create a BLOB
  • fbsql_create_clob() - Create a CLOB
  • fbsql_read_blob() - Read a BLOB from the database
  • fbsql_read_clob() - Read a CLOB from the database

fbsql_set_characterset
fbsql_set_password
FrontBase Funções


Change the password for a given user

fbsql_set_lob_mode
fbsql_set_transaction
FrontBase Funções
PHP Manual

fbsql_set_password

(PHP 5)

fbsql_set_password — Change the password for a given user

Descrição

bool fbsql_set_password ( resource $link_identifier , string $user , string $password , string $old_password )

Changes the password for the given user.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

user

The user name.

password

The new password to be set.

old_password

The old password to be replaced.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fbsql_set_lob_mode
fbsql_set_transaction
FrontBase Funções


Set the transaction locking and isolation

fbsql_set_password
fbsql_start_db
FrontBase Funções
PHP Manual

fbsql_set_transaction

(PHP 4 >= 4.2.0, PHP 5)

fbsql_set_transaction — Set the transaction locking and isolation

Descrição

void fbsql_set_transaction ( resource $link_identifier , int $locking , int $isolation )

Sets the transaction locking and isolation.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

locking

The type of locking to be set. It can be one of the following constants: FBSQL_LOCK_DEFERRED, FBSQL_LOCK_OPTIMISTIC, or FBSQL_LOCK_PESSIMISTIC.

isolation

The type of isolation to be set. It can be one of the following constants: FBSQL_ISO_READ_UNCOMMITTED, FBSQL_ISO_READ_COMMITTED, FBSQL_ISO_REPEATABLE_READ, FBSQL_ISO_SERIALIZABLE, or FBSQL_ISO_VERSIONED.

Valor Retornado

Não há valor retornado.

fbsql_set_password
fbsql_start_db
FrontBase Funções


Start a database on local or remote server

fbsql_set_transaction
fbsql_stop_db
FrontBase Funções
PHP Manual

fbsql_start_db

(PHP 4 >= 4.0.6, PHP 5)

fbsql_start_db — Start a database on local or remote server

Descrição

bool fbsql_start_db ( string $database_name [, resource $link_identifier [, string $database_options ]] )

Start a database on local or remote server.

Parâmetros

database_name

The database name.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

database_options

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_db_status() - Get the status for a given database
  • fbsql_stop_db() - Stop a database on local or remote server

fbsql_set_transaction
fbsql_stop_db
FrontBase Funções


Stop a database on local or remote server

fbsql_start_db
fbsql_table_name
FrontBase Funções
PHP Manual

fbsql_stop_db

(PHP 4 >= 4.0.6, PHP 5)

fbsql_stop_db — Stop a database on local or remote server

Descrição

bool fbsql_stop_db ( string $database_name [, resource $link_identifier ] )

Stops a database on local or remote server.

Parâmetros

database_name

The database name.

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fbsql_db_status() - Get the status for a given database
  • fbsql_start_db() - Start a database on local or remote server

fbsql_start_db
fbsql_table_name
FrontBase Funções


Get table name of field

fbsql_stop_db
fbsql_tablename
FrontBase Funções
PHP Manual

fbsql_table_name

(PHP 4 >= 4.2.0, PHP 5)

fbsql_table_name — Get table name of field

Descrição

string fbsql_table_name ( resource $result , int $index )

fbsql_table_name() gets the name of the current table in the given result set.

The fbsql_num_rows() function may be used to determine the number of tables in the result pointer.

Parâmetros

result

A result pointer returned by fbsql_list_tables().

index

Integer index for the current table.

Valor Retornado

Returns the name of the table, as a string.

Exemplos

Exemplo #1 fbsql_table_name() example

<?php
fbsql_connect("localhost", "_SYSTEM", "");
$result = fbsql_list_tables("wisconsin");
$i = 0;
while ($i < fbsql_num_rows($result)) {
    $tb_names[$i] = fbsql_table_name($result, $i);
    echo $tb_names[$i] . "<br />";
    $i++;
}
?>

fbsql_stop_db
fbsql_tablename
FrontBase Funções


Sinônimo de fbsql_table_name

fbsql_table_name
fbsql_username
FrontBase Funções
PHP Manual

fbsql_tablename

(PHP 4 >= 4.2.0, PHP 5)

fbsql_tablename — Sinônimo de fbsql_table_name()

Descrição

Esta função é um apelido para: fbsql_table_name().

fbsql_table_name
fbsql_username
FrontBase Funções


Get or set the username for the connection

fbsql_tablename
fbsql_warnings
FrontBase Funções
PHP Manual

fbsql_username

(PHP 4 >= 4.0.6, PHP 5)

fbsql_username — Get or set the username for the connection

Descrição

string fbsql_username ( resource $link_identifier [, string $username ] )

Get or set the username used for the connection.

Parâmetros

link_identifier

Um identificador de conexão FrontBase retornado por fbsql_connect() ou fbsql_pconnect().

Se opcional e não especificado, a função tentará encontrar uma conexão aberta para o servidor FrontBase server e se não for encontrada uma conexão dessa ela irá tentar criar uma como se fbsql_connect() fosse chamada sem argumentos

username

If provided, this is the new username to set.

Valor Retornado

Returns the current username used with the connection, as a string.

Veja Também

  • fbsql_password() - Get or set the user password used with a connection
  • fbsql_hostname() - Get or set the host name used with a connection

fbsql_tablename
fbsql_warnings
FrontBase Funções


Enable or disable FrontBase warnings

fbsql_username
filePro
FrontBase Funções
PHP Manual

fbsql_warnings

(PHP 4 >= 4.0.6, PHP 5)

fbsql_warnings — Enable or disable FrontBase warnings

Descrição

bool fbsql_warnings ([ bool $OnOff ] )

Enables or disables FrontBase warnings.

Parâmetros

OnOff

Whether to enable warnings or no.

Valor Retornado

Returns TRUE if warnings is turned on, FALSE otherwise.

Veja Também

  • fbsql_errno() - Returns the error number from previous operation
  • fbsql_error() - Returns the error message from previous operation

fbsql_username
filePro
FrontBase Funções


filePro

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da filePro
    • filepro_fieldcount — Conta quantos campos tem em um banco de dados filePro
    • filepro_fieldname — Obtém o nome de um campo
    • filepro_fieldtype — Obtém o tipo de um campo
    • filepro_fieldwidth — Obtém a largura de um campo
    • filepro_retrieve — Obtém dados de um banco de dados filePro
    • filepro_rowcount — Conta o número de linhas em um banco de dados filePro
    • filepro — Lê e verifica o arquivo de mapa
fbsql_warnings
Introdução
Vendor Specific Database Extensions


Introdução

Estes funções permitem acesso somente para leitura em dados guardados em um banco de dados filePro.

filePro é uma marca registrada de fP Technologies, Inc. Você pode encontrar maiores informações sobre o filePro em » http://www.fptech.com/.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.2.0.

filePro
Instalação/Configuração
filePro


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
filePro


Instalação

O suporte ao filePro no PHP não esta ativado por padrão. Para ativar o suporte filePro somente para leitura embutido, você precisa usar a opção de configuração --enable-filepro quando estiver compilando o PHP.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da filePro
filePro


Funções da filePro

Índice

  • filepro_fieldcount — Conta quantos campos tem em um banco de dados filePro
  • filepro_fieldname — Obtém o nome de um campo
  • filepro_fieldtype — Obtém o tipo de um campo
  • filepro_fieldwidth — Obtém a largura de um campo
  • filepro_retrieve — Obtém dados de um banco de dados filePro
  • filepro_rowcount — Conta o número de linhas em um banco de dados filePro
  • filepro — Lê e verifica o arquivo de mapa
Constantes pré-definidas
filepro_fieldcount
filePro


Conta quantos campos tem em um banco de dados filePro

Funções da filePro
filepro_fieldname
Funções da filePro
PHP Manual

filepro_fieldcount

(PHP 4, PHP 5 <= 5.1.6)

filepro_fieldcount — Conta quantos campos tem em um banco de dados filePro

Descrição

int filepro_fieldcount ( void )

Retorna o número de campos (colunas) em um banco de dados filePro aberto.

Valor Retornado

Retorna o número de campos no banco de dados filePro aberto, ou FALSE em caso de erro.

Veja Também

  • filepro() - Lê e verifica o arquivo de mapa

Funções da filePro
filepro_fieldname
Funções da filePro


Obtém o nome de um campo

filepro_fieldcount
filepro_fieldtype
Funções da filePro
PHP Manual

filepro_fieldname

(PHP 4, PHP 5 <= 5.1.6)

filepro_fieldname — Obtém o nome de um campo

Descrição

string filepro_fieldname ( int $field_number )

Retorna o nome do campo correspondente a field_number.

Parâmetros

field_number

O número do campo.

Valor Retornado

Retorna o nome do campo como string, ou FALSE em caso de erro.

filepro_fieldcount
filepro_fieldtype
Funções da filePro


Obtém o tipo de um campo

filepro_fieldname
filepro_fieldwidth
Funções da filePro
PHP Manual

filepro_fieldtype

(PHP 4, PHP 5 <= 5.1.6)

filepro_fieldtype — Obtém o tipo de um campo

Descrição

string filepro_fieldtype ( int $field_number )

Retorna o tipo de campo correspondente a field_number.

Parâmetros

field_number

O número do campo.

Valor Retornado

Retorna o tipo de edição do campo como uma string, ou FALSE em caso de erro.

filepro_fieldname
filepro_fieldwidth
Funções da filePro


Obtém a largura de um campo

filepro_fieldtype
filepro_retrieve
Funções da filePro
PHP Manual

filepro_fieldwidth

(PHP 4, PHP 5 <= 5.1.6)

filepro_fieldwidth — Obtém a largura de um campo

Descrição

int filepro_fieldwidth ( int $field_number )

Retorna a largura do campo correspondente a field_number.

Parâmetros

field_number

O número do campo.

Valor Retornado

Retorna a largura do campo como um inteiro, ou FALSE e, caso de erro.

filepro_fieldtype
filepro_retrieve
Funções da filePro


Obtém dados de um banco de dados filePro

filepro_fieldwidth
filepro_rowcount
Funções da filePro
PHP Manual

filepro_retrieve

(PHP 4, PHP 5 <= 5.1.6)

filepro_retrieve — Obtém dados de um banco de dados filePro

Descrição

string filepro_retrieve ( int $row_number , int $field_number )

Retorna dados do local especificado no banco de dados.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Parâmetros

row_number

O número da linha. Deve ser entre zero e o número total de linhas menos um (0..filepro_rowcount() - 1)

field_number

O número do campo. Aceita valores entre zero e o número total de campos menos um (0..filepro_fieldcount() - 1)

Valor Retornado

Retorna os dados especificados ou FALSE em caso de erro.

filepro_fieldwidth
filepro_rowcount
Funções da filePro


Conta o número de linhas em um banco de dados filePro

filepro_retrieve
filepro
Funções da filePro
PHP Manual

filepro_rowcount

(PHP 4, PHP 5 <= 5.1.6)

filepro_rowcount — Conta o número de linhas em um banco de dados filePro

Descrição

int filepro_rowcount ( void )

Retorna o número de linhas no banco de dados filePro aberto.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Valor Retornado

Retorna o número de linhas no banco de dados filePro aberto, ou FALSE em caso de erro.

Veja Também

  • filepro() - Lê e verifica o arquivo de mapa

filepro_retrieve
filepro
Funções da filePro


Lê e verifica o arquivo de mapa

filepro_rowcount
Firebird/InterBase
Funções da filePro
PHP Manual

filepro

(PHP 4, PHP 5 <= 5.1.6)

filepro — Lê e verifica o arquivo de mapa

Descrição

bool filepro ( string $directory )

Esta lê e verifica o arquivo de mapa, que guarda a quantidade de campos e informações.

Não é feita nenhuma trava, então você deve evitar modificar seu banco de dados filePro enquanto ele esta aberto no PHP.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Parâmetros

directory

O diretório do mapa.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

filepro_rowcount
Firebird/InterBase
Funções da filePro


Firebird/InterBase

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Firebird/InterBase
    • ibase_add_user — Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)
    • ibase_affected_rows — Retorna o número de linhas que foram afetados pela consulta anterior
    • ibase_backup — Initiates a backup task in the service manager and returns immediately
    • ibase_blob_add — Adiciona dados em um blob recém criado
    • ibase_blob_cancel — Cancela a criação de um blob
    • ibase_blob_close — Fecha o blob
    • ibase_blob_create — Cria um novo blob para adicionar dados
    • ibase_blob_echo — Envia o conteúdo do blob para o browser
    • ibase_blob_get — Retorna uma quantidade especificada de bytes de dados de um blob aberto
    • ibase_blob_import — Cria um blob, copia um arquivo para ele e o fecha
    • ibase_blob_info — Retorna o tamanho do blob e outras informações úteis
    • ibase_blob_open — Abre um blob para obter partes de dados
    • ibase_close — Fecha uma conexão com um banco de dados InterBase
    • ibase_commit_ret — Grava uma transação sem fechá-la
    • ibase_commit — Grava uma transação
    • ibase_connect — Abre uma conexão com um banco de dados InterBase
    • ibase_db_info — Request statistics about a database
    • ibase_delete_user — Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)
    • ibase_drop_db — Exclui um banco de dados
    • ibase_errcode — Retorna um código de erro
    • ibase_errmsg — Retorna uma mensagem de erro
    • ibase_execute — Executa uma consulta preparada anteriormente
    • ibase_fetch_assoc — Obtém o resultado de uma linha da consulta como uma matriz associativa
    • ibase_fetch_object — Obtém uma linha como um objeto de um banco de dados InterBase
    • ibase_fetch_row — Obtém uma linha de um banco de dados InterBase
    • ibase_field_info — Obtém informação sobre um campo
    • ibase_free_event_handler — Cancela um manipulador de eventos registrado
    • ibase_free_query — Libera a memória alocada para uma consulta preparada
    • ibase_free_result — Libera um conjunto de resultados
    • ibase_gen_id — Increments the named generator and returns its new value
    • ibase_maintain_db — Execute a maintenance command on the database server
    • ibase_modify_user — Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)
    • ibase_name_result — Define um nome para um conjunto de resultados
    • ibase_num_fields — Obtém o número de campos em um conjunto de resultados
    • ibase_num_params — Retorna o número de parâmetros em uma consulta preparada
    • ibase_param_info — Retorna informação sobre um parâmetro em uma consulta preparada
    • ibase_pconnect — Abre uma conexão persistente com um banco de dados InterBase
    • ibase_prepare — Prepara uma query para execução posterior
    • ibase_query — Executa uma consulta em um banco de dados InterBase
    • ibase_restore — Initiates a restore task in the service manager and returns immediately
    • ibase_rollback_ret — Desfaz uma transação sem fechá-la
    • ibase_rollback — Desfaz uma transação
    • ibase_server_info — Request information about a database server
    • ibase_service_attach — Connect to the service manager
    • ibase_service_detach — Disconnect from the service manager
    • ibase_set_event_handler — Registra uma função de callback para ser chamada quando eventos são postados
    • ibase_timefmt — Define o formato do timestamp, colunas do tipo data e hora retornadas de consultas
    • ibase_trans — Inicia uma transação
    • ibase_wait_event — Espera por um evento ser postado no banco de dados
filepro
Introdução
Vendor Specific Database Extensions


Introdução

Firebird/InterBase é um banco de dados relacional que oferece muitos recursos ANSI SQL-92 e é executado em Linux, Windows, e uma variedade de plataformas Unix. Firebird/InterBase oferece excelente concorrência, alta peformance, e suporte a poderosa linguagem para stored procedures e triggers. Ele vem sendo usado em sistemas de produção, sob uma variedades de nomes desde 1981.

InterBase é o nome da variante de código fechado deste RDBMS que foi desenvolvido pela Borland/Inprise. Mais informação sobre InterBase está disponível em » http://www.borland.com/interbase/.

Firebird é um projeto comercialmente independente de programadores C e C++, conselheiros técnicos e suportes de desenvolvimento e revisores um sistema gerenciador de banco de dados relacional baseado no código fonte liberado por Inprise Corp (agora conhecido como Borland Software Corp) sob InterBase Public License v.1.0 em 25 Julho, 2000. Mais informação sobre Firebird está disponível em » http://www.firebirdsql.org/.

Nota:

Esta extensão suporta as versões 5 e superiores do InterBase e todas versões do Firebird. Suporte para versão 5.x do InterBase será removido no PHP 6.

Este banco de dados usa o caractere de aspa simples (') para escape, um comportamento similar ao do banco de dados Sybase, adicione ao seu php.ini a seguinte diretiva:

magic_quotes_sybase = On

Firebird/InterBase
Instalação/Configuração
Firebird/InterBase


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Firebird/InterBase


Instalação

Para ativar o suporte InterBase, configure o PHP com --with-interbase[=DIR] , aonde DIR é o diretório base da instalação do InterBase, o qual o padrão é /usr/interbase.

Nota: Nota para os usários de Win32

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: gds32.dll

No caso se você ter instalado o servidor do banco de dados InterBase na mesma máquina onde o PHP esta sendo executado, você já deve ter esta DLL. Então você precisa verificar se gds32.dll já esta no PATH.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do InterBase
Nome | Padrão | Modificável | Modificações
ibase.allow_persistent | 1 | PHP_INI_SYSTEM |
ibase.max_persistent | "-1" | PHP_INI_SYSTEM |
ibase.max_links | "-1" | PHP_INI_SYSTEM |
ibase.default_db | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
ibase.default_user | NULL | PHP_INI_ALL |
ibase.default_password | NULL | PHP_INI_ALL |
ibase.default_charset | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
ibase.timestampformat | "%Y-%m-%d %H:%M:%S" | PHP_INI_ALL |
ibase.dateformat | "%Y-%m-%d" | PHP_INI_ALL |
ibase.timeformat | "%H:%M:%S" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

ibase.allow_persistent boolean

Quando permitir conexões persistentes ao Firebird/InterBase.

ibase.max_persistent integer

O número máximo de conexões persistentes com o Firebird/InterBase por processo. Novas conexões criadas com ibase_pconnect() não serão persistentes se este número for excedido.

ibase.max_links integer

O número máximo de conexões ao Firebird/InterBase por processo, incluindo as conexões persistentes.

ibase.default_db string

O banco de dados padrão a conectar quando ibase_[p]connect() é chamada sem especificar o nome do banco de dados. Se este valor for definido e o SQL safe mode estiver ativado, não serão permitidas outras conexões a este banco de dados.

ibase.default_user string

O nome de usuário para usar quando estiver se conectando ao banco de dados se não for especificado um nome de usuário.

ibase.default_password string

A senha usada ao conectar ao banco de dados se nenhuma senha for especificada.

ibase.default_charset string

O conjunto de caracteres a usar quando estiver conectando ao banco de dados se nenhum conjunto de caracteres for especificado.

ibase.timestampformat string

ibase.dateformat string

ibase.timeformat string

Estas diretivas são usadas para definir os formatos de data e hora que são usados ao retornas datas e horas do conjunto de resultados, ou quando estiver fornecendo datas e horas em parâmetros.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

As seguinte constantes podem ser passadas para ibase_trans() para especificar o funcionamento da transação.

Opções da transação Firebird/InterBase
Constante | Descrição
IBASE_DEFAULT | Serão usadas as definições padrão para a transação. Este padrão é determinado pela biblioteca do cliente, a qual define-o como IBASE_WRITE|IBASE_CONCURRENCY|IBASE_WAIT na maioria ds casos.
IBASE_READ | Começa uma transação apenas para leitura.
IBASE_WRITE | Começa uma transação de leitura e escrita.
IBASE_CONSISTENCY | Começa uma transação com o nível de isolação definido como 'consistency', o qual indica que a transação não pode ler de tabelas que estão sendo modificadas por outras transações concorrentes.
IBASE_CONCURRENCY | Começa uma transação com o nível de isolação definido como 'concurrency' (ou 'snapshot'), o qual indica que a transação tem acesso a todas as tabelas, mas não pode ver as modificações que foram gravadas por outras transações após a transação ter começado.
IBASE_COMMITTED | Começa uma transação com o nível de isolação definido como 'read committed'. Esta opção deve ser combinada com IBASE_REC_VERSION ou IBASE_REC_NO_VERSION. Este nível de isolação permite acesso para as modifcações salvar após o início da transação. Se IBASE_REC_NO_VERSION for especificada, apenas a ultima versão de uma linha pode ser lida. Se IBASE_REC_VERSION for especificada, uma linha pode ser lida mesmo quando exista uma modificação pendente em uma transação concorrente.
IBASE_WAIT | Indica que uma transação deve esperar e tentar novamente quando aconteça um conflito.
IBASE_NOWAIT | Indica que a transação deve falhar imediatamente quando aconteça um conflito.

As seguintes constantes podem ser passadas para ibase_fetch_row(), ibase_fetch_assoc() ou ibase_fetch_object() para especificar o funcionamento para obter.

Opções para obter do Firebird/InterBase
Constante | Descrição
IBASE_FETCH_BLOBS | Também disponível como IBASE_TEXT para compatibilidade com versões anteriores. Faz com que o conteúdo de campos BLOB serão retornados diretamente, ao invés de serem retornados como identificadores BLOB.
IBASE_FETCH_ARRAYS | Faz com que as arrays sejam retornadas diretamente. Se não, são retornados identificadores de array. Identificadores de array somente podem ser usados como argumentos para operações INSERT, já que não estão disponíveis atualmente nenhuma função para manipular identificadores de array.
IBASE_UNIXTIME | Faz com que campos de date e time não sejam retornados como strings, mas como timestamps UNIX (o número de segundos deste epoch, o qual é 1-Jan-1970 0:00 UTC). Pode ser problematico se usado com datas antes de 1970 em alguns sistemas.

As seguintes constantes são usados para passar requesições e opções para as
funções da API de serviços (ibase_server_info(),
ibase_db_info(), ibase_backup(),
ibase_restore() e ibase_maintain_db()).
Por favor veja o manual do Firebird/InterBase para o significado destas opções.

IBASE_BKP_IGNORE_CHECKSUMS
IBASE_BKP_IGNORE_LIMBO
IBASE_BKP_METADATA_ONLY
IBASE_BKP_NO_GARBAGE_COLLECT
IBASE_BKP_OLD_DESCRIPTIONS
IBASE_BKP_NON_TRANSPORTABLE
IBASE_BKP_CONVERT
Options to ibase_backup()
IBASE_RES_DEACTIVATE_IDX
IBASE_RES_NO_SHADOW
IBASE_RES_NO_VALIDITY
IBASE_RES_ONE_AT_A_TIME
IBASE_RES_REPLACE
IBASE_RES_CREATE
IBASE_RES_USE_ALL_SPACE
Options to ibase_restore()
IBASE_PRP_PAGE_BUFFERS
IBASE_PRP_SWEEP_INTERVAL
IBASE_PRP_SHUTDOWN_DB
IBASE_PRP_DENY_NEW_TRANSACTIONS
IBASE_PRP_DENY_NEW_ATTACHMENTS
IBASE_PRP_RESERVE_SPACE
IBASE_PRP_RES_USE_FULL
IBASE_PRP_RES
IBASE_PRP_WRITE_MODE
IBASE_PRP_WM_ASYNC
IBASE_PRP_WM_SYNC
IBASE_PRP_ACCESS_MODE
IBASE_PRP_AM_READONLY
IBASE_PRP_AM_READWRITE
IBASE_PRP_SET_SQL_DIALECT
IBASE_PRP_ACTIVATE
IBASE_PRP_DB_ONLINE
IBASE_RPR_CHECK_DB
IBASE_RPR_IGNORE_CHECKSUM
IBASE_RPR_KILL_SHADOWS
IBASE_RPR_MEND_DB
IBASE_RPR_VALIDATE_DB
IBASE_RPR_FULL
IBASE_RPR_SWEEP_DB
Options to ibase_maintain_db()
IBASE_STS_DATA_PAGES
IBASE_STS_DB_LOG
IBASE_STS_HDR_PAGES
IBASE_STS_IDX_PAGES
IBASE_STS_SYS_RELATIONS
Opções para ibase_db_info()
IBASE_SVC_SERVER_VERSION
IBASE_SVC_IMPLEMENTATION
IBASE_SVC_GET_ENV
IBASE_SVC_GET_ENV_LOCK
IBASE_SVC_GET_ENV_MSG
IBASE_SVC_USER_DBPATH
IBASE_SVC_SVR_DB_INFO
IBASE_SVC_GET_USERS
Opções para ibase_server_info()

Tipos Resource
Funções para Firebird/InterBase
Firebird/InterBase


Funções para Firebird/InterBase

Índice

  • ibase_add_user — Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)
  • ibase_affected_rows — Retorna o número de linhas que foram afetados pela consulta anterior
  • ibase_backup — Initiates a backup task in the service manager and returns immediately
  • ibase_blob_add — Adiciona dados em um blob recém criado
  • ibase_blob_cancel — Cancela a criação de um blob
  • ibase_blob_close — Fecha o blob
  • ibase_blob_create — Cria um novo blob para adicionar dados
  • ibase_blob_echo — Envia o conteúdo do blob para o browser
  • ibase_blob_get — Retorna uma quantidade especificada de bytes de dados de um blob aberto
  • ibase_blob_import — Cria um blob, copia um arquivo para ele e o fecha
  • ibase_blob_info — Retorna o tamanho do blob e outras informações úteis
  • ibase_blob_open — Abre um blob para obter partes de dados
  • ibase_close — Fecha uma conexão com um banco de dados InterBase
  • ibase_commit_ret — Grava uma transação sem fechá-la
  • ibase_commit — Grava uma transação
  • ibase_connect — Abre uma conexão com um banco de dados InterBase
  • ibase_db_info — Request statistics about a database
  • ibase_delete_user — Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)
  • ibase_drop_db — Exclui um banco de dados
  • ibase_errcode — Retorna um código de erro
  • ibase_errmsg — Retorna uma mensagem de erro
  • ibase_execute — Executa uma consulta preparada anteriormente
  • ibase_fetch_assoc — Obtém o resultado de uma linha da consulta como uma matriz associativa
  • ibase_fetch_object — Obtém uma linha como um objeto de um banco de dados InterBase
  • ibase_fetch_row — Obtém uma linha de um banco de dados InterBase
  • ibase_field_info — Obtém informação sobre um campo
  • ibase_free_event_handler — Cancela um manipulador de eventos registrado
  • ibase_free_query — Libera a memória alocada para uma consulta preparada
  • ibase_free_result — Libera um conjunto de resultados
  • ibase_gen_id — Increments the named generator and returns its new value
  • ibase_maintain_db — Execute a maintenance command on the database server
  • ibase_modify_user — Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)
  • ibase_name_result — Define um nome para um conjunto de resultados
  • ibase_num_fields — Obtém o número de campos em um conjunto de resultados
  • ibase_num_params — Retorna o número de parâmetros em uma consulta preparada
  • ibase_param_info — Retorna informação sobre um parâmetro em uma consulta preparada
  • ibase_pconnect — Abre uma conexão persistente com um banco de dados InterBase
  • ibase_prepare — Prepara uma query para execução posterior
  • ibase_query — Executa uma consulta em um banco de dados InterBase
  • ibase_restore — Initiates a restore task in the service manager and returns immediately
  • ibase_rollback_ret — Desfaz uma transação sem fechá-la
  • ibase_rollback — Desfaz uma transação
  • ibase_server_info — Request information about a database server
  • ibase_service_attach — Connect to the service manager
  • ibase_service_detach — Disconnect from the service manager
  • ibase_set_event_handler — Registra uma função de callback para ser chamada quando eventos são postados
  • ibase_timefmt — Define o formato do timestamp, colunas do tipo data e hora retornadas de consultas
  • ibase_trans — Inicia uma transação
  • ibase_wait_event — Espera por um evento ser postado no banco de dados
Constantes pré-definidas
ibase_add_user
Firebird/InterBase


Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)

Funções para Firebird/InterBase
ibase_affected_rows
Funções para Firebird/InterBase
PHP Manual

ibase_add_user

(PHP 4 >= 4.2.0, PHP 5)

ibase_add_user — Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)

Descrição

bool ibase_add_user ( resource $service_handle , string $user_name , string $password [, string $first_name [, string $middle_name [, string $last_name ]]] )

O PHP 4 usa server, dba_user_name e dba_user_password ao invés do parâmetro service_handle.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_modify_user() - Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)
  • ibase_delete_user() - Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)

Funções para Firebird/InterBase
ibase_affected_rows
Funções para Firebird/InterBase


Retorna o número de linhas que foram afetados pela consulta anterior

ibase_add_user
ibase_backup
Funções para Firebird/InterBase
PHP Manual

ibase_affected_rows

(PHP 5)

ibase_affected_rows — Retorna o número de linhas que foram afetados pela consulta anterior

Descrição

int ibase_affected_rows ([ resource $link_identifier ] )

Esta função retorna o número de registros que foram afetados pela consulta (INSERT, UPDATE or DELETE) anterior que foi executada no contexto da transação especificada.

Parâmetros

link_identifier

Um contexto de transação. Se link_identifier é um resource de conexão, a transação padrão é usada.

Valor Retornado

Retorna o número de linhas como um inteiro.

Veja Também

  • ibase_query() - Executa uma consulta em um banco de dados InterBase
  • ibase_execute() - Executa uma consulta preparada anteriormente

ibase_add_user
ibase_backup
Funções para Firebird/InterBase


Initiates a backup task in the service manager and returns immediately

ibase_affected_rows
ibase_blob_add
Funções para Firebird/InterBase
PHP Manual

ibase_backup

(PHP 5)

ibase_backup — Initiates a backup task in the service manager and returns immediately

Descrição

mixed ibase_backup ( resource $service_handle , string $source_db , string $dest_file [, int $options = 0 [, bool $verbose = false ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ibase_affected_rows
ibase_blob_add
Funções para Firebird/InterBase


Adiciona dados em um blob recém criado

ibase_backup
ibase_blob_cancel
Funções para Firebird/InterBase
PHP Manual

ibase_blob_add

(PHP 4, PHP 5)

ibase_blob_add — Adiciona dados em um blob recém criado

Descrição

void ibase_blob_add ( resource $blob_handle , string $data )

ibase_blob_add() adiciona dados em um blob criado com ibase_blob_create().

Parâmetros

blob_handle

Um manipulador blob aberto com ibase_blob_create().

data

A informação a ser adicionada.

Valor Retornado

Não há valor retornado.

Veja Também

  • ibase_blob_cancel() - Cancela a criação de um blob
  • ibase_blob_close() - Fecha o blob
  • ibase_blob_create() - Cria um novo blob para adicionar dados
  • ibase_blob_import() - Cria um blob, copia um arquivo para ele e o fecha

ibase_backup
ibase_blob_cancel
Funções para Firebird/InterBase


Cancela a criação de um blob

ibase_blob_add
ibase_blob_close
Funções para Firebird/InterBase
PHP Manual

ibase_blob_cancel

(PHP 4, PHP 5)

ibase_blob_cancel — Cancela a criação de um blob

Descrição

bool ibase_blob_cancel ( resource $blob_handle )

Esta função irá descartar um BLOB se ele já não foi fechado por ibase_blob_close().

Parâmetros

blob_handle

A BLOB handle opened with ibase_create_blob().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_blob_close() - Fecha o blob
  • ibase_blob_create() - Cria um novo blob para adicionar dados
  • ibase_blob_import() - Cria um blob, copia um arquivo para ele e o fecha

ibase_blob_add
ibase_blob_close
Funções para Firebird/InterBase


Fecha o blob

ibase_blob_cancel
ibase_blob_create
Funções para Firebird/InterBase
PHP Manual

ibase_blob_close

(PHP 4, PHP 5)

ibase_blob_close — Fecha o blob

Descrição

mixed ibase_blob_close ( resource $blob_handle )

Esta função fecha um BLOB que tenha sido aberto para leitura com ibase_open_blob() ou aberto para escrita com ibase_create_blob().

Parâmetros

blob_handle

Um manipulador BLOB aberto com ibase_create_blob() ou ibase_open_blob().

Valor Retornado

Se o BLOB foi lido, esta função retorna TRUE em sucesso, se o BLOB foi escrito, esta função retorna uma string contendo o id do BLOB que foi definido para ele pelo banco de dados. Em falha, esta função retorna FALSE.

Veja Também

  • ibase_blob_cancel() - Cancela a criação de um blob
  • ibase_blob_open() - Abre um blob para obter partes de dados

ibase_blob_cancel
ibase_blob_create
Funções para Firebird/InterBase


Cria um novo blob para adicionar dados

ibase_blob_close
ibase_blob_echo
Funções para Firebird/InterBase
PHP Manual

ibase_blob_create

(PHP 4, PHP 5)

ibase_blob_create — Cria um novo blob para adicionar dados

Descrição

resource ibase_blob_create ([ resource $link_identifier ] )

ibase_blob_create() cria um novo BLOB para ser prenchido com dados.

Parâmetros

link_identifier

Um link identificador do InterBase. Se omitido, o último link aberto é usado.

Valor Retornado

Retorna um manipulador BLOB para posteriormente ser usado com ibase_blob_add() ou FALSE em caso de falha.

Veja Também

  • ibase_blob_add() - Adiciona dados em um blob recém criado
  • ibase_blob_cancel() - Cancela a criação de um blob
  • ibase_blob_close() - Fecha o blob
  • ibase_blob_import() - Cria um blob, copia um arquivo para ele e o fecha

ibase_blob_close
ibase_blob_echo
Funções para Firebird/InterBase


Envia o conteúdo do blob para o browser

ibase_blob_create
ibase_blob_get
Funções para Firebird/InterBase
PHP Manual

ibase_blob_echo

(PHP 4, PHP 5)

ibase_blob_echo — Envia o conteúdo do blob para o browser

Descrição

bool ibase_blob_echo ([ resource $link_identifier ], string $blob_id )

Esta função abre um BLOB para leitura e envia seu conteúdo diretamente para a saída padrão (o browser, na maioria dos casos).

Parâmetros

link_identifier

Um link identificador InterBase. Se omitido, o último link aberto é usado.

blob_id

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_blob_open() - Abre um blob para obter partes de dados
  • ibase_blob_close() - Fecha o blob
  • ibase_blob_get() - Retorna uma quantidade especificada de bytes de dados de um blob aberto

ibase_blob_create
ibase_blob_get
Funções para Firebird/InterBase


Retorna uma quantidade especificada de bytes de dados de um blob aberto

ibase_blob_echo
ibase_blob_import
Funções para Firebird/InterBase
PHP Manual

ibase_blob_get

(PHP 4, PHP 5)

ibase_blob_get — Retorna uma quantidade especificada de bytes de dados de um blob aberto

Descrição

string ibase_blob_get ( resource $blob_handle , int $len )

Esta função retorna a quantidade len de bytes de um BLOB que foi aberto para leitura com ibase_blob_open().

Nota:

Não é possível ler de um BLOB que não foi aberto para escrita por ibase_blob_create().

Parâmetros

blob_handle

Um manipulador de BLOB aberto com ibase_blob_open().

len

Tamanho da informação retornada.

Valor Retornado

Retorna no máximo len bytes de um BLOB, ou FALSE em falha.

Exemplos

Exemplo #1 Exemplo da ibase_blob_get()

<?php
$result    = ibase_query("SELECT blob_value FROM table");
$data      = ibase_fetch_object($result);
$blob_data = ibase_blob_info($data->BLOB_VALUE);
$blob_hndl = ibase_blob_open($data->BLOB_VALUE);
echo         ibase_blob_get($blob_hndl, $blob_data[0]);
?>
Enquanto este exemplo não faz muito mais do que um 'ibase_blob_echo($data->BLOB_VALUE)' faria, ele mostra a você como obter a informação em uma $variavel para você poder manipular como quiser.

Veja Também

  • ibase_blob_open() - Abre um blob para obter partes de dados
  • ibase_blob_close() - Fecha o blob
  • ibase_blob_echo() - Envia o conteúdo do blob para o browser

ibase_blob_echo
ibase_blob_import
Funções para Firebird/InterBase


Cria um blob, copia um arquivo para ele e o fecha

ibase_blob_get
ibase_blob_info
Funções para Firebird/InterBase
PHP Manual

ibase_blob_import

(PHP 4, PHP 5)

ibase_blob_import — Cria um blob, copia um arquivo para ele e o fecha

Descrição

string ibase_blob_import ( resource $link_identifier , resource $file_handle )
string ibase_blob_import ( resource $file_handle )

Este função cria um BLOB, lê um arquivo inteiro para dentro dele, fecha, e retorna o id do BLOB.

Parâmetros

link_identifier

Um link identificador InterBase. Se omitido, o último link aberto é usado.

file_handle

O manipulador de arquivo é um manipulador retornado por fopen().

Valor Retornado

Retorna o id do BLOB em sucesso, ou FALSE em erro.

Exemplos

Exemplo #1 Exemplo da ibase_blob_import()

<?php
$dbh = ibase_connect($host, $username, $password);
$filename = '/tmp/bar';

$fd = fopen($filename, 'r');
if ($fd) {

    $blob = ibase_blob_import($dbh, $fd);
    fclose($fd);

    if (!is_string($blob)) {
        // import failed
    } else {
        $query = "INSERT INTO foo (name, data) VALUES ('$filename', ?)";
        $prepared = ibase_prepare($dbh, $query);
        if (!ibase_execute($prepared, $blob)) {
            // record insertion failed
        }
    }
} else {
    // unable to open the data file
}
?>

Veja Também

  • ibase_blob_add() - Adiciona dados em um blob recém criado
  • ibase_blob_cancel() - Cancela a criação de um blob
  • ibase_blob_close() - Fecha o blob
  • ibase_blob_create() - Cria um novo blob para adicionar dados

ibase_blob_get
ibase_blob_info
Funções para Firebird/InterBase


Retorna o tamanho do blob e outras informações úteis

ibase_blob_import
ibase_blob_open
Funções para Firebird/InterBase
PHP Manual

ibase_blob_info

(PHP 4, PHP 5)

ibase_blob_info — Retorna o tamanho do blob e outras informações úteis

Descrição

array ibase_blob_info ( resource $link_identifier , string $blob_id )
array ibase_blob_info ( string $blob_id )

Retorna o tamanho do BLOB e outras informações úteis.

Parâmetros

link_identifier

Um link identificador InterBase. Se omitido, o último link aberto é usado.

blob_id

Um id de BLOB.

Valor Retornado

Retorna uma matriz contendo informações sobre um BLOB. A informação retornada consiste no tamanho do BLOB, o número de seguimentos que ele contém, o tamanho do maior seguimento e quando é um BLOB de stream ou um BLOB seguimentado.

ibase_blob_import
ibase_blob_open
Funções para Firebird/InterBase


Abre um blob para obter partes de dados

ibase_blob_info
ibase_close
Funções para Firebird/InterBase
PHP Manual

ibase_blob_open

(PHP 4, PHP 5)

ibase_blob_open — Abre um blob para obter partes de dados

Descrição

resource ibase_blob_open ( resource $link_identifier , string $blob_id )
resource ibase_blob_open ( string $blob_id )

Abre um BLOB existente para leitura.

Parâmetros

link_identifier

Um link identificador InterBase. Se omitido, o último link aberto é usado.

blob_id

Um id de BLOB.

Valor Retornado

Retorna um manipulador de BLOB para uso posterior com ibase_blob_get() ou FALSE em caso de falha.

Veja Também

  • ibase_blob_close() - Fecha o blob
  • ibase_blob_echo() - Envia o conteúdo do blob para o browser
  • ibase_blob_get() - Retorna uma quantidade especificada de bytes de dados de um blob aberto

ibase_blob_info
ibase_close
Funções para Firebird/InterBase


Fecha uma conexão com um banco de dados InterBase

ibase_blob_open
ibase_commit_ret
Funções para Firebird/InterBase
PHP Manual

ibase_close

(PHP 4, PHP 5)

ibase_close — Fecha uma conexão com um banco de dados InterBase

Descrição

bool ibase_close ([ resource $connection_id ] )

Fecha a conexão com um banco de dados InterBase que esta associado ao id de conexão retornado por ibase_connect(). A transação padrão na conexão é salva, outras transações são desfeitas.

Parâmetros

connection_id

Um identificador de link InterBase retornado pela ibase_connect(). Se omitido, o último link aberto é usado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_connect() - Abre uma conexão com um banco de dados InterBase
  • ibase_pconnect() - Abre uma conexão persistente com um banco de dados InterBase

ibase_blob_open
ibase_commit_ret
Funções para Firebird/InterBase


Grava uma transação sem fechá-la

ibase_close
ibase_commit
Funções para Firebird/InterBase
PHP Manual

ibase_commit_ret

(PHP 5)

ibase_commit_ret — Grava uma transação sem fechá-la

Descrição

bool ibase_commit_ret ([ resource $link_or_trans_identifier ] )

Grava uma transação sem fechá-la.

Parâmetros

link_or_trans_identifier

Se for utilizada sem um argumento, esta função grava a transação padrão da conexão padrão. Se o argumento é um identificador de conexão, a transação padrão da conexão correspondente será gravada. Se o argumento for um identificador de transação, a transação correspondente será salva. O contexto da transação será retido, então comandos executados a partir desta transação não seram invalidados.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_close
ibase_commit
Funções para Firebird/InterBase


Grava uma transação

ibase_commit_ret
ibase_connect
Funções para Firebird/InterBase
PHP Manual

ibase_commit

(PHP 4, PHP 5)

ibase_commit — Grava uma transação

Descrição

bool ibase_commit ([ resource $link_or_trans_identifier ] )

Grava uma transação.

Parâmetros

link_or_trans_identifier

Se for chamada sem argumento, esta função grava a transação padrão na conexão padrão. Se o argumento é um identificador de conexão, a transação padrão na conexão correspondente será gravada. Se o argumento é um identificador de transação, a transação correspondente será gravada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_commit_ret
ibase_connect
Funções para Firebird/InterBase


Abre uma conexão com um banco de dados InterBase

ibase_commit
ibase_db_info
Funções para Firebird/InterBase
PHP Manual

ibase_connect

(PHP 4, PHP 5)

ibase_connect — Abre uma conexão com um banco de dados InterBase

Descrição

resource ibase_connect ([ string $database [, string $username [, string $password [, string $charset [, int $buffers [, int $dialect [, string $role [, int $sync ]]]]]]]] )

Estabelece uma conexão com um banco de dados InterBase.

No caso de uma segunda chamada a ibase_connect() com os mesmos argumntos, não será criada uma nova conexão, mas ao invés, será retornado o identificador da conexão já aberta. A conexão com o servidor será fechada assim que terminar a execução do script, a menos que seja fechada explicitamente pela chamada de ibase_close().

Parâmetros

database

O argumento database deve ser um caminho válido para o arquivo do banco de dados no servidor no qual ele reside. Se o servidor não for local, ele deve ser prefixado com 'hostname:' (TCP/IP), '//hostname/' (NetBEUI) ou 'hostname@' (IPX/SPX), dependendo do protocolo de conexão usado.

username

O nome de usuário. Pode ser definido com a diretiva ibase.default_user do php.ini

password

A senha para username. Poe ser definida com a diretiva ibase.default_password do php.ini.

charset

charset é o conjunto de caracteres padrão para o banco de dados.

buffers

buffers é o número de buffers do banco de dados a serem alocados para o cache do lado do servidor. Se 0 ou omitido, o servidor escolhe o seu próprio padrão.

dialect

dialect define o dialeto SQL padrão para qualquer comand executado na conexão, e o padrão é o mais alto suportado pelas bibliotecas do cliente. Funciona apenas com InterBase 6 e superior.

role

Funcional apenas com InterBase 5 e superior.

sync

Valor Retornado

Retorna um identificador de conexão InterBase em caso de sucesso, ou FALSE em caso de erro.

Erros

Se você ter um erro parecido com "arithmetic exception, numeric overflow, ou string truncation. Cannot transliterate character between character sets" (isto ocorre quando você tenta usar algum caractere com acento) ao usar esta e depois ibase_query() você deve definir seu conjunto de caracteres (ex. ISO8859_1 ou seu conjunto de caracteres atual).

Histórico

Versão | Descrição
4.0.0 | Os parâmetros buffers, dialect e role foram adicionados.

Exemplos

Exemplo #1 Exemplo ibase_connect()

<?php
$host = 'localhost:/path/to/your.gdb';

$dbh = ibase_connect($host, $username, $password);
$stmt = 'SELECT * FROM tblname';
$sth = ibase_query($dbh, $stmt);
while ($row = ibase_fetch_object($sth)) {
    echo $row->email, "\n";
}
ibase_free_result($sth);
ibase_close($dbh);
?>

Veja Também

  • ibase_pconnect() - Abre uma conexão persistente com um banco de dados InterBase
  • ibase_close() - Fecha uma conexão com um banco de dados InterBase

ibase_commit
ibase_db_info
Funções para Firebird/InterBase


Request statistics about a database

ibase_connect
ibase_delete_user
Funções para Firebird/InterBase
PHP Manual

ibase_db_info

(PHP 5)

ibase_db_info — Request statistics about a database

Descrição

string ibase_db_info ( resource $service_handle , string $db , int $action [, int $argument = 0 ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ibase_connect
ibase_delete_user
Funções para Firebird/InterBase


Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)

ibase_db_info
ibase_drop_db
Funções para Firebird/InterBase
PHP Manual

ibase_delete_user

(PHP 4 >= 4.2.0, PHP 5)

ibase_delete_user — Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)

Descrição

bool ibase_delete_user ( resource $service_handle , string $user_name )

PHP 4 uses server, dba_user_name and dba_user_password instead of service_handle parameter.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_add_user() - Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)
  • ibase_modify_user() - Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)

ibase_db_info
ibase_drop_db
Funções para Firebird/InterBase


Exclui um banco de dados

ibase_delete_user
ibase_errcode
Funções para Firebird/InterBase
PHP Manual

ibase_drop_db

(PHP 5)

ibase_drop_db — Exclui um banco de dados

Descrição

bool ibase_drop_db ([ resource $connection ] )

Esta função exclui um banco de dados que foi aberto por ibase_connect() ou ibase_pconnect(). O banco de dados é fechado e excluído do servidor.

Parâmetros

connection

Um link identificador do InterBase. Se omitido, o último link aberto é assumido.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_connect() - Abre uma conexão com um banco de dados InterBase
  • ibase_pconnect() - Abre uma conexão persistente com um banco de dados InterBase

ibase_delete_user
ibase_errcode
Funções para Firebird/InterBase


Retorna um código de erro

ibase_drop_db
ibase_errmsg
Funções para Firebird/InterBase
PHP Manual

ibase_errcode

(PHP 5)

ibase_errcode — Retorna um código de erro

Descrição

int ibase_errcode ( void )

Retorna o código de erro que resultou da função do InterBase mais recentemente utilizada.

Valor Retornado

Returns the error code as an integer, or FALSE if no error occured.

Veja Também

  • ibase_errmsg() - Retorna uma mensagem de erro

ibase_drop_db
ibase_errmsg
Funções para Firebird/InterBase


Retorna uma mensagem de erro

ibase_errcode
ibase_execute
Funções para Firebird/InterBase
PHP Manual

ibase_errmsg

(PHP 4, PHP 5)

ibase_errmsg — Retorna uma mensagem de erro

Descrição

string ibase_errmsg ( void )

Retorna a mensagem de erro que resultou da função do InterBase mais recentemente utilizada.

Valor Retornado

Retorna a mensagem de erro como uma string, ou FALSE se nenhum erro ocorreu.

Veja Também

  • ibase_errcode() - Retorna um código de erro

ibase_errcode
ibase_execute
Funções para Firebird/InterBase


Executa uma consulta preparada anteriormente

ibase_errmsg
ibase_fetch_assoc
Funções para Firebird/InterBase
PHP Manual

ibase_execute

(PHP 4, PHP 5)

ibase_execute — Executa uma consulta preparada anteriormente

Descrição

resource ibase_execute ( resource $query [, mixed $bind_arg [, mixed $... ]] )

Executa uma consulta preparada por ibase_prepare().

Isto é muito mais efetivo do que usar ibase_query() se você estiver repetindo o mesmo tipo de consulta muitas vezes apenas mudando alguns parâmetros.

Parâmetros

query

Uma preparada query do InterBase por ibase_prepare().

bind_arg

...

Valor Retornado

Se houver um erro na consulta retorna FALSE. Se for bem sucedida e tiver um conjunto de resultados (possivelmente vazio), por exemplo de uma consulta SELECT, retorna um identificador de consulta. Se a consulta for bem sucedida e não houverem resultados TRUE.

Nota:

No PHP 5.0.0 e posterior, esta função retorna o número de linhas afetadas pela consulta (se > 0 e aplicado ao tipo de comando). A consulta que tenha sido bem sucedida mas não afete nenhuma linha(ex. um UPDATE de um registro que não exista) irá retornar TRUE.

Exemplos

Exemplo #1 Exemplo da ibase_execute()

<?php
    $dbh = ibase_connect($host, $username, $password);
    $updates = array(
        1 => 'Eric',
        5 => 'Filip',
        7 => 'Larry'
    );

    $query = ibase_prepare($dbh, "UPDATE FOO SET BAR = ? WHERE BAZ = ?");

    foreach ($updates as $baz => $bar) {
        ibase_execute($query, $bar, $baz);
    }

?>

Veja Também

  • ibase_query() - Executa uma consulta em um banco de dados InterBase

ibase_errmsg
ibase_fetch_assoc
Funções para Firebird/InterBase


Obtém o resultado de uma linha da consulta como uma matriz associativa

ibase_execute
ibase_fetch_object
Funções para Firebird/InterBase
PHP Manual

ibase_fetch_assoc

(PHP 4 >= 4.3.0, PHP 5)

ibase_fetch_assoc — Obtém o resultado de uma linha da consulta como uma matriz associativa

Descrição

array ibase_fetch_assoc ( resource $result [, int $fetch_flag ] )

Obtém uma linha de resultado de uma query com um array associativo.

ibase_fetch_assoc() obtém uma linha dos dados de result. Se duas ou mais colunas do resultado tiverem o mesmo nome de campo, a última coluna terá preferencia. Para acessar a outra(s) coluna de mesmo nome, você deverá acessar os resultados usando índice numérico com ibase_fetch_row() ou usar apelidos na sua consulta.

Parâmetros

result

O manipulador de resultado.

fetch_flag

fetch_flag é uma combinação das constantes IBASE_TEXT e IBASE_UNIXTIME. Passando IBASE_TEXT irá fazer com que esta função retorne o conteúdo de BLOB, ao invés do id do BLOB. Passando IBASE_UNIXTIME irá fazer esta função retornar valores de data/hora como Unix timestamps ao invés de strings formatadas.

Valor Retornado

Retorna uma matriz associativa que corresponde a linha obtida. As próximas chamadas a função irão a próxima linha no conjunto de resultados, ou FALSE se não houverem mais linhas.

Veja Também

  • ibase_fetch_row() - Obtém uma linha de um banco de dados InterBase
  • ibase_fetch_object() - Obtém uma linha como um objeto de um banco de dados InterBase

ibase_execute
ibase_fetch_object
Funções para Firebird/InterBase


Obtém uma linha como um objeto de um banco de dados InterBase

ibase_fetch_assoc
ibase_fetch_row
Funções para Firebird/InterBase
PHP Manual

ibase_fetch_object

(PHP 4, PHP 5)

ibase_fetch_object — Obtém uma linha como um objeto de um banco de dados InterBase

Descrição

object ibase_fetch_object ( resource $result_id [, int $fetch_flag ] )

Obtém uma linha como pseudo-objeto a partir de um dado identificador de resultado.

Chamadas subseqüêntes a ibase_fetch_object() retornam a próxima linha no conjunto de resultados.

Parâmetros

result_id

Um identificador de resultado InterBase obtido por ibase_query() ou ibase_execute().

fetch_flag

fetch_flag é uma combinação das constantes IBASE_TEXT e IBASE_UNIXTIME. Passando IBASE_TEXT irá fazer com que esta função retorne o conteúdo de BLOB, ao invés do id do BLOB. Passando IBASE_UNIXTIME irá fazer esta função retornar valores de data/hora como Unix timestamps ao invés de strings formatadas.

Valor Retornado

Retorna um objeto com a próxima linha de informação, ou FALSE se não houver mais linhas.

Exemplos

Exemplo #1 ibase_fetch_object() example

<?php
    $dbh = ibase_connect($host, $username, $password);
    $stmt = 'SELECT * FROM tblname';
    $sth = ibase_query($dbh, $stmt);
    while ($row = ibase_fetch_object($sth)) {
        echo $row->email . "\n";
    }
    ibase_close($dbh);
?>

Veja Também

  • ibase_fetch_row() - Obtém uma linha de um banco de dados InterBase
  • ibase_fetch_assoc() - Obtém o resultado de uma linha da consulta como uma matriz associativa

ibase_fetch_assoc
ibase_fetch_row
Funções para Firebird/InterBase


Obtém uma linha de um banco de dados InterBase

ibase_fetch_object
ibase_field_info
Funções para Firebird/InterBase
PHP Manual

ibase_fetch_row

(PHP 4, PHP 5)

ibase_fetch_row — Obtém uma linha de um banco de dados InterBase

Descrição

array ibase_fetch_row ( resource $result_identifier [, int $fetch_flag ] )

ibase_fetch_row() fetches one row of data from the given result set.

A próxima chamada a ibase_fetch_row() retorna a próxima linha no conjunto de resultados, ou FALSE se não houverem mais linhas.

Parâmetros

result_identifier

Um identificador de resultado InterBase.

fetch_flag

fetch_flag é uma combinação das constantes IBASE_TEXT e IBASE_UNIXTIME. Passando IBASE_TEXT irá fazer com que esta função retorne o conteúdo de BLOB, ao invés do id do BLOB. Passando IBASE_UNIXTIME irá fazer esta função retornar valores de data/hora como Unix timestamps ao invés de strings formatadas.

Valor Retornado

Retorna um array que corresponde a linha obtida, ou FALSE se não houver mais linhas. Cada coluna de resultado é armazenado em uma posição do array, iniciando no índice 0.

Veja Também

  • ibase_fetch_assoc() - Obtém o resultado de uma linha da consulta como uma matriz associativa
  • ibase_fetch_object() - Obtém uma linha como um objeto de um banco de dados InterBase

ibase_fetch_object
ibase_field_info
Funções para Firebird/InterBase


Obtém informação sobre um campo

ibase_fetch_row
ibase_free_event_handler
Funções para Firebird/InterBase
PHP Manual

ibase_field_info

(PHP 4, PHP 5)

ibase_field_info — Obtém informação sobre um campo

Descrição

array ibase_field_info ( resource $result , int $field_number )

Retorna uma matriz com informações sobre um campo após uma consulta SELECT ter sido executada.

Parâmetros

result

Um identificador de resultado do InterBase.

field_number

Índice do campo.

Valor Retornado

Retorna um array com as seguintes chaves: name, alias, relation, length e type.

Exemplos

Exemplo #1 Exemplo da ibase_field_info()

<?php
    $rs = ibase_query("SELECT * FROM tablename");
    $coln = ibase_num_fields($rs);
    for ($i = 0; $i < $coln; $i++) {
        $col_info = ibase_field_info($rs, $i);
        echo "name: ". $col_info['name']. "\n";
        echo "alias: ". $col_info['alias']. "\n";
        echo "relation: ". $col_info['relation']. "\n";
        echo "length: ". $col_info['length']. "\n";
        echo "type: ". $col_info['type']. "\n";
    }
?>

Veja Também

  • ibase_num_fields() - Obtém o número de campos em um conjunto de resultados

ibase_fetch_row
ibase_free_event_handler
Funções para Firebird/InterBase


Cancela um manipulador de eventos registrado

ibase_field_info
ibase_free_query
Funções para Firebird/InterBase
PHP Manual

ibase_free_event_handler

(PHP 5)

ibase_free_event_handler — Cancela um manipulador de eventos registrado

Descrição

bool ibase_free_event_handler ( resource $event )

Esta função faz com que o manipulador de eventos registrado especificado por event seja cancelado. A função de callback não será mais chamada para os eventos que estava registrada para manipular.

Parâmetros

event

Um resource de evento criado com ibase_set_event_handler().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_set_event_handler() - Registra uma função de callback para ser chamada quando eventos são postados

ibase_field_info
ibase_free_query
Funções para Firebird/InterBase


Libera a memória alocada para uma consulta preparada

ibase_free_event_handler
ibase_free_result
Funções para Firebird/InterBase
PHP Manual

ibase_free_query

(PHP 4, PHP 5)

ibase_free_query — Libera a memória alocada para uma consulta preparada

Descrição

bool ibase_free_query ( resource $query )

Libera uma query preparada.

Parâmetros

query

Uma query preparada com ibase_prepare().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_free_event_handler
ibase_free_result
Funções para Firebird/InterBase


Libera um conjunto de resultados

ibase_free_query
ibase_gen_id
Funções para Firebird/InterBase
PHP Manual

ibase_free_result

(PHP 4, PHP 5)

ibase_free_result — Libera um conjunto de resultados

Descrição

bool ibase_free_result ( resource $result_identifier )

Libera um conjunto de resultado.

Parâmetros

result_identifier

Um conjunto de resultado criado pela ibase_query() ou ibase_execute().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_free_query
ibase_gen_id
Funções para Firebird/InterBase


Increments the named generator and returns its new value

ibase_free_result
ibase_maintain_db
Funções para Firebird/InterBase
PHP Manual

ibase_gen_id

(PHP 5)

ibase_gen_id — Increments the named generator and returns its new value

Descrição

mixed ibase_gen_id ( string $generator [, int $increment = 1 [, resource $link_identifier = NULL ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Returns new generator value as integer, or as string if the value is too big.

ibase_free_result
ibase_maintain_db
Funções para Firebird/InterBase


Execute a maintenance command on the database server

ibase_gen_id
ibase_modify_user
Funções para Firebird/InterBase
PHP Manual

ibase_maintain_db

(PHP 5)

ibase_maintain_db — Execute a maintenance command on the database server

Descrição

bool ibase_maintain_db ( resource $service_handle , string $db , int $action [, int $argument = 0 ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_gen_id
ibase_modify_user
Funções para Firebird/InterBase


Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)

ibase_maintain_db
ibase_name_result
Funções para Firebird/InterBase
PHP Manual

ibase_modify_user

(PHP 4 >= 4.2.0, PHP 5)

ibase_modify_user — Modifica um usuário para um banco de dados seguro (somente para IB6 ou posterior)

Descrição

bool ibase_modify_user ( resource $service_handle , string $user_name , string $password [, string $first_name [, string $middle_name [, string $last_name ]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

O PHP 4 usa server, dba_user_name e dba_user_password ao invés do parâmetro service_handle.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ibase_add_user() - Adiciona um usuário a um banco de dados seguro (apenas para IB6 ou posterior)
  • ibase_delete_user() - Exclui um usuário de um banco de dados seguro (apenas para o IB6 ou posterior)

ibase_maintain_db
ibase_name_result
Funções para Firebird/InterBase


Define um nome para um conjunto de resultados

ibase_modify_user
ibase_num_fields
Funções para Firebird/InterBase
PHP Manual

ibase_name_result

(PHP 5)

ibase_name_result — Define um nome para um conjunto de resultados

Descrição

bool ibase_name_result ( resource $result , string $name )

Esta função define um nome para um conjunto de resultados. Este nome pode ser usado posteriormente em comandos UPDATE|DELETE ... WHERE CURRENT OF name.

Parâmetros

result

Um conjunto de resultado do InterBase.

name

O nome a ser atribuído.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da ibase_name_result()

<?php
 $result = ibase_query("SELECT field1,field2 FROM table FOR UPDATE");
    ibase_name_result($result, "my_cursor");

    $updateqry = ibase_prepare("UPDATE table SET field2 = ? WHERE CURRENT OF my_cursor");

    for ($i = 0; ibase_fetch_row($result); ++$i) {
        ibase_execute($updateqry, $i);
    }
?>

Veja Também

  • ibase_prepare() - Prepara uma query para execução posterior
  • ibase_execute() - Executa uma consulta preparada anteriormente

ibase_modify_user
ibase_num_fields
Funções para Firebird/InterBase


Obtém o número de campos em um conjunto de resultados

ibase_name_result
ibase_num_params
Funções para Firebird/InterBase
PHP Manual

ibase_num_fields

(PHP 4, PHP 5)

ibase_num_fields — Obtém o número de campos em um conjunto de resultados

Descrição

int ibase_num_fields ( resource $result_id )

Obtém o número de campos em um conjunto de resultados.

Parâmetros

result_id

Um identificador de resultado InterBase.

Valor Retornado

Retorna o número de campos como um inteiro.

Exemplos

Exemplo #1 Exemplo da ibase_num_fields()

<?php
    $rs = ibase_query("SELECT * FROM tablename");
    $coln = ibase_num_fields($rs);
    for ($i = 0; $i < $coln; $i++) {
        $col_info = ibase_field_info($rs, $i);
        echo "name: " . $col_info['name'] . "\n";
        echo "alias: " . $col_info['alias'] . "\n";
        echo "relation: " . $col_info['relation'] . "\n";
        echo "length: " . $col_info['length'] . "\n";
        echo "type: " . $col_info['type'] . "\n";
    }
?>

Veja Também

  • ibase_field_info() - Obtém informação sobre um campo

ibase_name_result
ibase_num_params
Funções para Firebird/InterBase


Retorna o número de parâmetros em uma consulta preparada

ibase_num_fields
ibase_param_info
Funções para Firebird/InterBase
PHP Manual

ibase_num_params

(PHP 5)

ibase_num_params — Retorna o número de parâmetros em uma consulta preparada

Descrição

int ibase_num_params ( resource $query )

Esta função retorna o número de parâmetros em uma consulta preparada especificada query. Este é o numero de argumentos que devem estar presentes quando usar a função ibase_execute().

Parâmetros

query

O manipulador da query preparada.

Valor Retornado

Retorna o número de parâmetros como um inteiro.

Veja Também

  • ibase_prepare() - Prepara uma query para execução posterior
  • ibase_param_info() - Retorna informação sobre um parâmetro em uma consulta preparada

ibase_num_fields
ibase_param_info
Funções para Firebird/InterBase


Retorna informação sobre um parâmetro em uma consulta preparada

ibase_num_params
ibase_pconnect
Funções para Firebird/InterBase
PHP Manual

ibase_param_info

(PHP 5)

ibase_param_info — Retorna informação sobre um parâmetro em uma consulta preparada

Descrição

array ibase_param_info ( resource $query , int $param_number )

Retorna uma matriz com informações sobre um parâmetro após a consulta ter sido preparada.

Parâmetros

query

Um manipulador de query preparada do InterBase.

param_number

O índice do parâmetro.

Valor Retornado

Retorna um array com as seguintes chaves: name, alias, relation, length and type.

Veja Também

  • ibase_field_info() - Obtém informação sobre um campo
  • ibase_num_params() - Retorna o número de parâmetros em uma consulta preparada

ibase_num_params
ibase_pconnect
Funções para Firebird/InterBase


Abre uma conexão persistente com um banco de dados InterBase

ibase_param_info
ibase_prepare
Funções para Firebird/InterBase
PHP Manual

ibase_pconnect

(PHP 4, PHP 5)

ibase_pconnect — Abre uma conexão persistente com um banco de dados InterBase

Descrição

resource ibase_pconnect ([ string $database [, string $username [, string $password [, string $charset [, int $buffers [, int $dialect [, string $role [, int $sync ]]]]]]]] )

Abre uma conexão persistente com um banco de dados InterBase

ibase_pconnect() aje muito parecido com ibase_connect() com duas diferenças maiores.

Primeiro, ao conectar, a função irá primeiro tentar encontrar uma conexão (persistente) que já esteja aberta com os mesmos parâmetros. Se uma for encontrada, um identidicador para ela será retornado ao invés de abrir uma nova conexão.

Segundo, a conexão ao servidor InterBase não será fechada quando a execução do script terminar. Ao invés, a conexão permanecerá aberta para uso futuro (ibase_close() não irá fechar conexões criadas por ibase_pconnect()). Este tipo de conexão é então chamado de "persistente".

Parâmetros

database

O argumento database deve ser um caminho válido para o arquivo do banco de dados no sevidor no qual reside. Se o servidor não for local, ele deve ser prefixado com 'hostname:' (TCP/IP), '//hostname/' (NetBEUI) ou 'hostname@' (IPX/SPX), dependendo do protocolo de conexão usado.

username

O nome de usuário, pode ser definido com a diretiva ibase.default_user do php.ini.

password

A senha para username. Pode ser definida com a diretiva ibase.default_password do php.ini.

charset

charset é o conjunto de caracteres padrão para o banco de dados.

buffers

buffers é o número de buffer do banco de dados a serem alocados para o cache do lado do servidor. Se for 0 ou omitido, o servidor escolhe seu próprio padrão.

dialect

dialect define o dialeto SQL padrão para qualquer comand executado na conexão, e o padrão é o mais alto suportado pelas bibliotecas do cliente. Funciona apenas com InterBase 6 e superior.

role

Funcional apenas com o InterBase 5 e posterior.

sync

Valor Retornado

Retorna um identificador de conexão InterBase em caso de sucesso, ou FALSE em caso de erro.

Histórico

Versão | Descrição
4.0.0 | Os parâmetros buffers, dialect e role foram adicionados

Veja Também

  • ibase_close() - Fecha uma conexão com um banco de dados InterBase
  • ibase_connect() - Abre uma conexão com um banco de dados InterBase

ibase_param_info
ibase_prepare
Funções para Firebird/InterBase


Prepara uma query para execução posterior

ibase_pconnect
ibase_query
Funções para Firebird/InterBase
PHP Manual

ibase_prepare

(PHP 4, PHP 5)

ibase_prepare — Prepara uma query para execução posterior

Descrição

resource ibase_prepare ( string $query )
resource ibase_prepare ( resource $link_identifier , string $query )
resource ibase_prepare ( resource $link_identifier , string $trans , string $query )

Prepara uma consulta para execução posterior. (via ibase_execute()).

Parâmetros

query

Uma query InterBase.

Valor Retornado

Retorna o manipulador da query preparada, ou FALSE em erro.

ibase_pconnect
ibase_query
Funções para Firebird/InterBase


Executa uma consulta em um banco de dados InterBase

ibase_prepare
ibase_restore
Funções para Firebird/InterBase
PHP Manual

ibase_query

(PHP 4, PHP 5)

ibase_query — Executa uma consulta em um banco de dados InterBase

Descrição

resource ibase_query ([ resource $link_identifier ], string $query [, int $bind_args ] )

Executa uma consulta em um banco de dados InterBase.

Parâmetros

link_identifier

Um link identificador do InterBase. Se omitido, o último link é usado.

query

Uma query do InterBase.

bind_args

Valor Retornado

Se houver um erro na consulta, retorna FALSE. Se ela for bem sucedida e houver um conjunto de resultados (possivelmente vazio), como o retornado por uma consulta SELECT, retorna um identificados de resultado. Se a consulta for bem sucedida e não houver resultado, retorna TRUE.

Nota:

No PHP 5.0.0 e posterior, esta função irá retornar o número de linhas afetadas pela consulta para INSERT, UPDATE e DELETE. Para manter a compatibilidade com versões anteriores, irá retornar TRUE para estas consultas se ela for bem sucedida sem afetar nenhuma linha.

Erros

Se você tiver um erro como "arithmetic exception, numeric overflow, or string truncation. Cannot transliterate character between character sets" (isto acontece quando você tenta usar alguns caracteres com acentos) quando você utilizar esta e depois ibase_query() você deverá definir o conjunto de caracteres (ex. ISO8859_1 ou seu conjunto de caraacteres atual).

Exemplos

Exemplo #1 Exemplo da ibase_query()

<?php

$host = 'localhost:/path/to/your.gdb';

$dbh = ibase_connect($host, $username, $password);
$stmt = 'SELECT * FROM tblname';

$sth = ibase_query($dbh, $stmt) or die(ibase_errmsg());

?>

Veja Também

  • ibase_errmsg() - Retorna uma mensagem de erro
  • ibase_fetch_row() - Obtém uma linha de um banco de dados InterBase
  • ibase_fetch_object() - Obtém uma linha como um objeto de um banco de dados InterBase
  • ibase_free_result() - Libera um conjunto de resultados

ibase_prepare
ibase_restore
Funções para Firebird/InterBase


Initiates a restore task in the service manager and returns immediately

ibase_query
ibase_rollback_ret
Funções para Firebird/InterBase
PHP Manual

ibase_restore

(PHP 5)

ibase_restore — Initiates a restore task in the service manager and returns immediately

Descrição

mixed ibase_restore ( resource $service_handle , string $source_file , string $dest_db [, int $options = 0 [, bool $verbose = false ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ibase_query
ibase_rollback_ret
Funções para Firebird/InterBase


Desfaz uma transação sem fechá-la

ibase_restore
ibase_rollback
Funções para Firebird/InterBase
PHP Manual

ibase_rollback_ret

(PHP 5)

ibase_rollback_ret — Desfaz uma transação sem fechá-la

Descrição

bool ibase_rollback_ret ([ resource $link_or_trans_identifier ] )

Desfaz a transação sem fechá-la.

Parâmetros

link_or_trans_identifier

Se chamado sem um argumento, esta função desfaz a transação padrão do link padrão. Se o argumento é um identificador de conexão, a transação padrão da conexão correspondente será desfeita. Se o argumento é um identificador de transação, a transação correspondente será desfeita. O contexto da transação será retido, então comando executados de dentro desta transação não serão invalidados.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_restore
ibase_rollback
Funções para Firebird/InterBase


Desfaz uma transação

ibase_rollback_ret
ibase_server_info
Funções para Firebird/InterBase
PHP Manual

ibase_rollback

(PHP 4, PHP 5)

ibase_rollback — Desfaz uma transação

Descrição

bool ibase_rollback ([ resource $link_or_trans_identifier ] )

Desfaz a transação.

Parâmetros

link_or_trans_identifier

Se chamado sem um argumento, esta função desfaz a transação padrão do link padrão. Se o argumento é um identificador de conexão, a transação padrão para a conexão correspondente será desfeita. Se o argumento é um identificador de transação, a transação correspondente será desfeita.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_rollback_ret
ibase_server_info
Funções para Firebird/InterBase


Request information about a database server

ibase_rollback
ibase_service_attach
Funções para Firebird/InterBase
PHP Manual

ibase_server_info

(PHP 5)

ibase_server_info — Request information about a database server

Descrição

string ibase_server_info ( resource $service_handle , int $action )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ibase_rollback
ibase_service_attach
Funções para Firebird/InterBase


Connect to the service manager

ibase_server_info
ibase_service_detach
Funções para Firebird/InterBase
PHP Manual

ibase_service_attach

(PHP 5)

ibase_service_attach — Connect to the service manager

Descrição

resource ibase_service_attach ( string $host , string $dba_username , string $dba_password )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ibase_server_info
ibase_service_detach
Funções para Firebird/InterBase


Disconnect from the service manager

ibase_service_attach
ibase_set_event_handler
Funções para Firebird/InterBase
PHP Manual

ibase_service_detach

(PHP 5)

ibase_service_detach — Disconnect from the service manager

Descrição

bool ibase_service_detach ( resource $service_handle )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ibase_service_attach
ibase_set_event_handler
Funções para Firebird/InterBase


Registra uma função de callback para ser chamada quando eventos são postados

ibase_service_detach
ibase_timefmt
Funções para Firebird/InterBase
PHP Manual

ibase_set_event_handler

(PHP 5)

ibase_set_event_handler — Registra uma função de callback para ser chamada quando eventos são postados

Descrição

resource ibase_set_event_handler ( callback $event_handler , string $event_name1 [, string $event_name2 [, string $... ]] )
resource ibase_set_event_handler ( resource $connection , callback $event_handler , string $event_name1 [, string $event_name2 [, string $... ]] )

Esta função registra uma função do usuário como gerenciador de eventos para os eventos especificados.

Parâmetros

event_handler

O callback é chamado com o nome do evento e o link do resource como argumento sempre que um dos eventos especificados é postado pelo banco de dados.

O callback precisa retornar FALSE se o manipulador do evento deve ser cancelado. Qualquer outro valor retornado é ignorado. Esta função aceita 15 argumentos de eventos.

event_name1

Um nome do evento.

event_name2

...

Valor Retornado

O valor do retorno é um resource de evento. Este resource pode ser liberado usando a função ibase_free_event_handler().

Exemplos

Exemplo #1 Exemplo da ibase_set_event_handler()

<?php
function event_handler($event_name, $link)
{
    if ($event_name=="NEW ORDER") {
        // process new order
        ibase_query($link, "UPDATE orders SET status='handled'");
    } else if ($event_name=="DB_SHUTDOWN") {
        // free event handler
        return false;
    }
}
ibase_set_event_handler($link,"event_handler","NEW_ORDER","DB_SHUTDOWN");
?>

Veja Também

  • ibase_free_event_handler() - Cancela um manipulador de eventos registrado
  • ibase_wait_event() - Espera por um evento ser postado no banco de dados

ibase_service_detach
ibase_timefmt
Funções para Firebird/InterBase


Define o formato do timestamp, colunas do tipo data e hora retornadas de consultas

ibase_set_event_handler
ibase_trans
Funções para Firebird/InterBase
PHP Manual

ibase_timefmt

(PHP 4)

ibase_timefmt — Define o formato do timestamp, colunas do tipo data e hora retornadas de consultas

Descrição

bool ibase_timefmt ( string $format [, int $columntype ] )

Define o formato de timestamp, data ou hora retornados de consultas.

Você pode definir o padrão para estes formatos com a diretiva de configuração do PHP ibase.timestampformat, ibase.dateformat e ibase.timeformat.

Nota:

Esta função foi removida no PHP 5, use ao invés a ini_set().

Parâmetros

format

Internamente, as colunas são formadas por função C strftime(), então consulte a documentação sobre o formato da string.

columntype

columntype é uma das constantes IBASE_TIMESTAMP, IBASE_DATE e IBASE_TIME. Se omitido, o padrão é IBASE_TIMESTAMP para compatibilidade.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da ibase_timefmt()

<?php
    /* InterBase 6 TIME-type columns will be returned in
     * the form '05 hours 37 minutes'. */
    ibase_timefmt("%H hours %M minutes", IBASE_TIME);
?>

ibase_set_event_handler
ibase_trans
Funções para Firebird/InterBase


Inicia uma transação

ibase_timefmt
ibase_wait_event
Funções para Firebird/InterBase
PHP Manual

ibase_trans

(PHP 4, PHP 5)

ibase_trans — Inicia uma transação

Descrição

resource ibase_trans ([ int $trans_args [, resource $link_identifier ]] )

Inicia uma transação.

Nota:

O funcionamento desta função mudou no PHP 5.0.0. A primeira chamada a ibase_trans() não irá retornar a transação padrão da conexão. Todas as transações começadas por ibase_trans() seram desfeitas ao final do script se não for gravada ou desfeita por ibase_commit() ou ibase_rollback().

Nota:

No PHP 5.0.0. e posterior, estafunção aceitará multiplos argumentos trans_args e link_identifier. Isto irá permitir transações sobre multiplas conexões de banco de dados, as quais são gravadas usando um algaritimo de duas fases. Isto indica que suas atualizações podem ser bem sucedidas em todos os bancos de dados, ou falhar em todo os bancos de dados. Isto NÃO indica que você possa utilizar tabelas de banco de dados diferentes na mesma consulta!

Se você usar transações em multiplos bancos de dados, você tem que especificar os parâmetros link_id e transaction_id nas chamadas para ibase_query() e ibase_prepare().

Parâmetros

trans_args

trans_args pode ser a combinação de IBASE_READ, IBASE_WRITE, IBASE_COMMITTED, IBASE_CONSISTENCY, IBASE_CONCURRENCY, IBASE_REC_VERSION, IBASE_REC_NO_VERSION, IBASE_WAIT and IBASE_NOWAIT.

link_identifier

Um link identificador InterBase. Se omitido, o último link aberto é usado.

Valor Retornado

Retorna um manipulador de transação, ou FALSE em erro.

ibase_timefmt
ibase_wait_event
Funções para Firebird/InterBase


Espera por um evento ser postado no banco de dados

ibase_trans
Informix
Funções para Firebird/InterBase
PHP Manual

ibase_wait_event

(PHP 5)

ibase_wait_event — Espera por um evento ser postado no banco de dados

Descrição

string ibase_wait_event ( string $event_name1 [, string $event_name2 [, string $... ]] )
string ibase_wait_event ( resource $connection , string $event_name1 [, string $event_name2 [, string $... ]] )

Esta função suspende a execução do script até um dos dos eventos especificados é postado pelo banco de dados. O nome do evento que foi postado é retornado. Esta função aceita até 15 eventos de argumento.

Parâmetros

event_name1

O nome do evento.

event_name2

...

Valor Retornado

Retorna o nome do evento que foi postado.

Veja Também

  • ibase_set_event_handler() - Registra uma função de callback para ser chamada quando eventos são postados
  • ibase_free_event_handler() - Cancela um manipulador de eventos registrado

ibase_trans
Informix
Funções para Firebird/InterBase


Informix

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Informix Funções
    • ifx_affected_rows — Get number of rows affected by a query
    • ifx_blobinfile_mode — Set the default blob mode for all select queries
    • ifx_byteasvarchar — Set the default byte mode
    • ifx_close — Close Informix connection
    • ifx_connect — Open Informix server connection
    • ifx_copy_blob — Duplicates the given blob object
    • ifx_create_blob — Creates an blob object
    • ifx_create_char — Creates an char object
    • ifx_do — Execute a previously prepared SQL-statement
    • ifx_error — Returns error code of last Informix call
    • ifx_errormsg — Returns error message of last Informix call
    • ifx_fetch_row — Get row as an associative array
    • ifx_fieldproperties — List of SQL fieldproperties
    • ifx_fieldtypes — List of Informix SQL fields
    • ifx_free_blob — Deletes the blob object
    • ifx_free_char — Deletes the char object
    • ifx_free_result — Releases resources for the query
    • ifx_get_blob — Return the content of a blob object
    • ifx_get_char — Return the content of the char object
    • ifx_getsqlca — Get the contents of sqlca.sqlerrd[0..5] after a query
    • ifx_htmltbl_result — Formats all rows of a query into a HTML table
    • ifx_nullformat — Sets the default return value on a fetch row
    • ifx_num_fields — Returns the number of columns in the query
    • ifx_num_rows — Count the rows already fetched from a query
    • ifx_pconnect — Open persistent Informix connection
    • ifx_prepare — Prepare an SQL-statement for execution
    • ifx_query — Send Informix query
    • ifx_textasvarchar — Set the default text mode
    • ifx_update_blob — Updates the content of the blob object
    • ifx_update_char — Updates the content of the char object
    • ifxus_close_slob — Deletes the slob object
    • ifxus_create_slob — Creates an slob object and opens it
    • ifxus_free_slob — Deletes the slob object
    • ifxus_open_slob — Opens an slob object
    • ifxus_read_slob — Reads nbytes of the slob object
    • ifxus_seek_slob — Sets the current file or seek position
    • ifxus_tell_slob — Returns the current file or seek position
    • ifxus_write_slob — Writes a string into the slob object
ibase_wait_event
Introdução
Vendor Specific Database Extensions


Introdução

The Informix driver for Informix (IDS) 7.x, SE 7.x, Universal Server (IUS) 9.x and IDS 2000 is implemented in "ifx.ec" and "php_informix.h" in the informix extension directory. IDS 7.x support is fairly complete, with full support for BYTE and TEXT columns. IUS 9.x support is partly finished: the new data types are there, but SLOB and CLOB support is still under construction.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.2.1.

Informix
Instalação/Configuração
Informix


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Informix


Dependências

Nota: Configuration notes

You need a version of ESQL/C to compile the PHP Informix driver. ESQL/C versions from 7.2x on should be OK. ESQL/C is now part of the Informix Client SDK.

Make sure that the "INFORMIXDIR" variable has been set, and that $INFORMIXDIR/bin is in your PATH before you run the "configure" script.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To be able to use the functions defined in this module you must compile your PHP interpreter using the configure line --with-informix[=DIR] , where DIR is the Informix base install directory, defaults to nothing.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Nota:

Make sure that the Informix environment variables INFORMIXDIR and INFORMIXSERVER are available to the PHP ifx driver, and that the INFORMIX bin directory is in the PATH. Check this by running a script that contains a call to phpinfo() before you start testing. The phpinfo() output should list these environment variables. This is true for both CGI php and Apache mod_php. You may have to set these environment variables in your Apache startup script.

The Informix shared libraries should also be available to the loader (check LD_LIBRARY_PATH or ld.so.conf/ldconfig).

Nota: Some notes on the use of BLOBs (TEXT and BYTE columns)

BLOBs are normally addressed by BLOB identifiers. Select queries return a "blob id" for every BYTE and TEXT column. You can get at the contents with "string_var = ifx_get_blob($blob_id);" if you choose to get the BLOBs in memory (with: "ifx_blobinfile(0);"). If you prefer to receive the content of BLOB columns in a file, use "ifx_blobinfile(1);", and "ifx_get_blob($blob_id);" will get you the filename. Use normal file I/O to get at the blob contents.

For insert/update queries you must create these "blob id's" yourself with "ifx_create_blob();". You then plug the blob id's into an array, and replace the blob columns with a question mark (?) in the query string. For updates/inserts, you are responsible for setting the blob contents with ifx_update_blob().

The behaviour of BLOB columns can be altered by configuration variables that also can be set at runtime:

configuration variable: ifx.textasvarchar

configuration variable: ifx.byteasvarchar

runtime functions:

ifx_textasvarchar(0): use blob id's for select queries with TEXT columns

ifx_byteasvarchar(0): use blob id's for select queries with BYTE columns

ifx_textasvarchar(1): return TEXT columns as if they were VARCHAR columns, so that you don't need to use blob id's for select queries.

ifx_byteasvarchar(1): return BYTE columns as if they were VARCHAR columns, so that you don't need to use blob id's for select queries.

configuration variable: ifx.blobinfile

runtime function:

ifx_blobinfile_mode(0): return BYTE columns in memory, the blob id lets you get at the contents.

ifx_blobinfile_mode(1): return BYTE columns in a file, the blob id lets you get at the file name.

If you set ifx_text/byteasvarchar to 1, you can use TEXT and BYTE columns in select queries just like normal (but rather long) VARCHAR fields. Since all strings are "counted" in PHP, this remains "binary safe". It is up to you to handle this correctly. The returned data can contain anything, you are responsible for the contents.

If you set ifx_blobinfile to 1, use the file name returned by ifx_get_blob(..) to get at the blob contents. Note that in this case YOU ARE RESPONSIBLE FOR DELETING THE TEMPORARY FILES CREATED BY INFORMIX when fetching the row. Every new row fetched will create new temporary files for every BYTE column.

The location of the temporary files can be influenced by the environment variable "blobdir", default is "." (the current directory). Something like: putenv(blobdir=tmpblob"); will ease the cleaning up of temp files accidentally left behind (their names all start with "blb").

Nota: Automatically trimming "char" (SQLCHAR and SQLNCHAR) data

This can be set with the configuration variable

ifx.charasvarchar: if set to 1 trailing spaces will be automatically trimmed, to save you some "chopping".

Nota: NULL values

The configuration variable ifx.nullformat (and the runtime function ifx_nullformat()) when set to TRUE will return NULL columns as the string "NULL", when set to FALSE they return the empty string. This allows you to discriminate between NULL columns and empty columns.

Informix configuration options
Name | Default | Changeable | Changelog
ifx.allow_persistent | "1" | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.max_persistent | "-1" | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.max_links | "-1" | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.default_host | NULL | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.default_user | NULL | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.default_password | NULL | PHP_INI_SYSTEM | Removed in PHP 5.2.1.
ifx.blobinfile | "1" | PHP_INI_ALL | Removed in PHP 5.2.1.
ifx.textasvarchar | "0" | PHP_INI_ALL | Removed in PHP 5.2.1.
ifx.byteasvarchar | "0" | PHP_INI_ALL | Removed in PHP 5.2.1.
ifx.charasvarchar | "0" | PHP_INI_ALL | Removed in PHP 5.2.1.
ifx.nullformat | "0" | PHP_INI_ALL | Removed in PHP 5.2.1.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

ifx.allow_persistent boolean

Whether to allow persistent Informix connections.

ifx.max_persistent integer

The maximum number of persistent Informix connections per process.

ifx.max_links integer

The maximum number of Informix connections per process, including persistent connections.

ifx.default_host string

The default host to connect to when no host is specified in ifx_connect() or ifx_pconnect(). Doesn't apply in safe mode.

ifx.default_user string

The default user id to use when none is specified in ifx_connect() or ifx_pconnect(). Doesn't apply in safe mode.

ifx.default_password string

The default password to use when none is specified in ifx_connect() or ifx_pconnect(). Doesn't apply in safe mode.

ifx.blobinfile boolean

Set to TRUE if you want to return blob columns in a file, FALSE if you want them in memory. You can override the setting at runtime with ifx_blobinfile_mode().

ifx.textasvarchar boolean

Set to TRUE if you want to return TEXT columns as normal strings in select statements, FALSE if you want to use blob id parameters. You can override the setting at runtime with ifx_textasvarchar().

ifx.byteasvarchar boolean

Set to TRUE if you want to return BYTE columns as normal strings in select queries, FALSE if you want to use blob id parameters. You can override the setting at runtime with ifx_textasvarchar().

ifx.charasvarchar boolean

Set to TRUE if you want to trim trailing spaces from CHAR columns when fetching them.

ifx.nullformat boolean

Set to TRUE if you want to return NULL columns as the literal string "NULL", FALSE if you want them returned as the empty string "". You can override this setting at runtime with ifx_nullformat().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

IFX_SCROLL (integer)
IFX_HOLD (integer)
IFX_LO_RDONLY (integer)
IFX_LO_WRONLY (integer)
IFX_LO_APPEND (integer)
IFX_LO_RDWR (integer)
IFX_LO_BUFFER (integer)
IFX_LO_NOBUFFER (integer)
Tipos Resource
Informix Funções
Informix


Informix Funções

Índice

  • ifx_affected_rows — Get number of rows affected by a query
  • ifx_blobinfile_mode — Set the default blob mode for all select queries
  • ifx_byteasvarchar — Set the default byte mode
  • ifx_close — Close Informix connection
  • ifx_connect — Open Informix server connection
  • ifx_copy_blob — Duplicates the given blob object
  • ifx_create_blob — Creates an blob object
  • ifx_create_char — Creates an char object
  • ifx_do — Execute a previously prepared SQL-statement
  • ifx_error — Returns error code of last Informix call
  • ifx_errormsg — Returns error message of last Informix call
  • ifx_fetch_row — Get row as an associative array
  • ifx_fieldproperties — List of SQL fieldproperties
  • ifx_fieldtypes — List of Informix SQL fields
  • ifx_free_blob — Deletes the blob object
  • ifx_free_char — Deletes the char object
  • ifx_free_result — Releases resources for the query
  • ifx_get_blob — Return the content of a blob object
  • ifx_get_char — Return the content of the char object
  • ifx_getsqlca — Get the contents of sqlca.sqlerrd[0..5] after a query
  • ifx_htmltbl_result — Formats all rows of a query into a HTML table
  • ifx_nullformat — Sets the default return value on a fetch row
  • ifx_num_fields — Returns the number of columns in the query
  • ifx_num_rows — Count the rows already fetched from a query
  • ifx_pconnect — Open persistent Informix connection
  • ifx_prepare — Prepare an SQL-statement for execution
  • ifx_query — Send Informix query
  • ifx_textasvarchar — Set the default text mode
  • ifx_update_blob — Updates the content of the blob object
  • ifx_update_char — Updates the content of the char object
  • ifxus_close_slob — Deletes the slob object
  • ifxus_create_slob — Creates an slob object and opens it
  • ifxus_free_slob — Deletes the slob object
  • ifxus_open_slob — Opens an slob object
  • ifxus_read_slob — Reads nbytes of the slob object
  • ifxus_seek_slob — Sets the current file or seek position
  • ifxus_tell_slob — Returns the current file or seek position
  • ifxus_write_slob — Writes a string into the slob object
Constantes pré-definidas
ifx_affected_rows
Informix


Get number of rows affected by a query

Informix Funções
ifx_blobinfile_mode
Informix Funções
PHP Manual

ifx_affected_rows

(PHP 4, PHP <=5.2.0)

ifx_affected_rows — Get number of rows affected by a query

Descrição

int ifx_affected_rows ( resource $result_id )

Returns the number of rows affected by a query associated with result_id.

For inserts, updates and deletes the number is the real number (sqlerrd[2]) of affected rows. For selects it is an estimate (sqlerrd[0]). Don't rely on it. The database server can never return the actual number of rows that will be returned by a SELECT because it has not even begun fetching them at this stage (just after the "PREPARE" when the optimizer has determined the query plan).

Useful after ifx_prepare() to limit queries to reasonable result sets.

Parâmetros

result_id

A valid result id returned by ifx_query() or ifx_prepare().

Valor Retornado

Returns the number of rows as an integer.

Exemplos

Exemplo #1 Informix affected rows

<?php
$rid = ifx_prepare("select * from emp
                     where name like " . $name, $connid);
if (! $rid) {
    /* ... error ... */
}
$rowcount = ifx_affected_rows($rid);
if ($rowcount > 1000) {
    printf ("Too many rows in result set (%d)\n<br />", $rowcount);
    die ("Please restrict your query<br />\n");
}
?>

Veja Também

  • ifx_num_rows() - Count the rows already fetched from a query

Informix Funções
ifx_blobinfile_mode
Informix Funções


Set the default blob mode for all select queries

ifx_affected_rows
ifx_byteasvarchar
Informix Funções
PHP Manual

ifx_blobinfile_mode

(PHP 4, PHP <=5.2.0)

ifx_blobinfile_mode — Set the default blob mode for all select queries

Descrição

bool ifx_blobinfile_mode ( int $mode )

Set the default blob mode for all select queries.

Parâmetros

mode

Mode "0" means save Byte-Blobs in memory, and mode "1" means save Byte-Blobs in a file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ifx_affected_rows
ifx_byteasvarchar
Informix Funções


Set the default byte mode

ifx_blobinfile_mode
ifx_close
Informix Funções
PHP Manual

ifx_byteasvarchar

(PHP 4, PHP <=5.2.0)

ifx_byteasvarchar — Set the default byte mode

Descrição

bool ifx_byteasvarchar ( int $mode )

Sets the default byte mode for all select-queries.

Parâmetros

mode

Mode "0" will return a blob id, and mode "1" will return a varchar with text content.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_textasvarchar() - Set the default text mode

ifx_blobinfile_mode
ifx_close
Informix Funções


Close Informix connection

ifx_byteasvarchar
ifx_connect
Informix Funções
PHP Manual

ifx_close

(PHP 4, PHP <=5.2.0)

ifx_close — Close Informix connection

Descrição

bool ifx_close ([ resource $link_identifier ] )

ifx_close() closes the link to an Informix database that's associated with the specified link identifier.

Note that this isn't usually necessary, as non-persistent open links are automatically closed at the end of the script's execution.

ifx_close() will not close persistent links generated by ifx_pconnect().

Parâmetros

link_identifier

The link identifier. If not specified, the last opened link is assumed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Closing a Informix connection

<?php
$conn_id = ifx_connect ("mydb@ol_srv", "itsme", "mypassword");
/* ... some queries and stuff ... */
ifx_close($conn_id);
?>

Veja Também

  • ifx_connect() - Open Informix server connection
  • ifx_pconnect() - Open persistent Informix connection

ifx_byteasvarchar
ifx_connect
Informix Funções


Open Informix server connection

ifx_close
ifx_copy_blob
Informix Funções
PHP Manual

ifx_connect

(PHP 4, PHP <=5.2.0)

ifx_connect — Open Informix server connection

Descrição

resource ifx_connect ([ string $database [, string $userid [, string $password ]]] )

ifx_connect() establishes a connection to an Informix server.

In case a second call is made to ifx_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned.

The link to the server will be closed as soon as the execution of the script ends, unless it's closed earlier by explicitly calling ifx_close().

Parâmetros

All of the arguments are optional, and if they're missing, defaults are taken from values supplied in php.ini (ifx.default_host for the host (Informix libraries will use INFORMIXSERVER environment value if not defined), ifx.default_user for user, ifx.default_password for the password (none if not defined).

database

The database name, as a string.

userid

The username, as a string.

password

The password, as a string.

Valor Retornado

Returns a connection identifier on success, or FALSE on error.

Exemplos

Exemplo #1 Connect to a Informix database

<?php
$conn_id = ifx_connect ("mydb@ol_srv1", "imyself", "mypassword");
?>

Veja Também

  • ifx_pconnect() - Open persistent Informix connection
  • ifx_close() - Close Informix connection

ifx_close
ifx_copy_blob
Informix Funções


Duplicates the given blob object

ifx_connect
ifx_create_blob
Informix Funções
PHP Manual

ifx_copy_blob

(PHP 4, PHP <=5.2.0)

ifx_copy_blob — Duplicates the given blob object

Descrição

int ifx_copy_blob ( int $bid )

Duplicates the given blob object.

Parâmetros

bid

A BLOB identifier.

Valor Retornado

Returns the new blob object-id, or FALSE on errors.

Veja Também

  • ifx_create_blob() - Creates an blob object
  • ifx_free_blob() - Deletes the blob object

ifx_connect
ifx_create_blob
Informix Funções


Creates an blob object

ifx_copy_blob
ifx_create_char
Informix Funções
PHP Manual

ifx_create_blob

(PHP 4, PHP <=5.2.0)

ifx_create_blob — Creates an blob object

Descrição

int ifx_create_blob ( int $type , int $mode , string $param )

Creates a blob object.

Parâmetros

type

1 = TEXT, 0 = BYTE

mode

0 = blob-object holds the content in memory, 1 = blob-object holds the content in file.

param

if mode = 0: pointer to the content, if mode = 1: pointer to the filestring.

Valor Retornado

Returns the new BLOB object-id, or FALSE on errors.

Veja Também

  • ifx_copy_blob() - Duplicates the given blob object
  • ifx_free_blob() - Deletes the blob object

ifx_copy_blob
ifx_create_char
Informix Funções


Creates an char object

ifx_create_blob
ifx_do
Informix Funções
PHP Manual

ifx_create_char

(PHP 4, PHP <=5.2.0)

ifx_create_char — Creates an char object

Descrição

int ifx_create_char ( string $param )

Creates an char object.

Parâmetros

param

The char content.

Valor Retornado

Returns the new char object id, or FALSE on errors.

Veja Também

  • ifx_free_char() - Deletes the char object

ifx_create_blob
ifx_do
Informix Funções


Execute a previously prepared SQL-statement

ifx_create_char
ifx_error
Informix Funções
PHP Manual

ifx_do

(PHP 4, PHP <=5.2.0)

ifx_do — Execute a previously prepared SQL-statement

Descrição

bool ifx_do ( resource $result_id )

Executes a previously prepared query or opens a cursor for it.

Does NOT free result_id on error.

Also sets the real number of ifx_affected_rows() for non-select statements for retrieval by ifx_affected_rows().

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

Exemplo #1 ifx_do() Example

<?php
$conn = fx_connect( "db", "user", "password" );
$result = ifx_prepare("SELECT customer_num, company FROM customer", $conn);
ifx_do($result);
?>

Veja Também

  • ifx_prepare() - Prepare an SQL-statement for execution

ifx_create_char
ifx_error
Informix Funções


Returns error code of last Informix call

ifx_do
ifx_errormsg
Informix Funções
PHP Manual

ifx_error

(PHP 4, PHP <=5.2.0)

ifx_error — Returns error code of last Informix call

Descrição

string ifx_error ([ resource $link_identifier ] )

Returns in a string one character describing the general results of a statement and both SQLSTATE and SQLCODE associated with the most recent SQL statement executed.

Parâmetros

link_identifier

The link identifier.

Valor Retornado

The Informix error codes (SQLSTATE & SQLCODE) formatted as x [SQLSTATE = aa bbb SQLCODE=cccc].

where x = space : no error

E : error

N : no more data

W : warning

? : undefined

If the "x" character is anything other than space, SQLSTATE and SQLCODE describe the error in more detail.

See the Informix manual for the description of SQLSTATE and SQLCODE

Veja Também

  • ifx_errormsg() - Returns error message of last Informix call

ifx_do
ifx_errormsg
Informix Funções


Returns error message of last Informix call

ifx_error
ifx_fetch_row
Informix Funções
PHP Manual

ifx_errormsg

(PHP 4, PHP <=5.2.0)

ifx_errormsg — Returns error message of last Informix call

Descrição

string ifx_errormsg ([ int $errorcode ] )

Returns the Informix error message associated with the most recent Informix error.

Parâmetros

errorcode

If specified, the function will return the message corresponding to the specified code.

Valor Retornado

Return the error message, as a string.

Exemplos

Exemplo #1 ifx_errormsg() example

<?php
printf("%s\n<br>", ifx_errormsg(-201));
?>

Veja Também

  • ifx_error() - Returns error code of last Informix call

ifx_error
ifx_fetch_row
Informix Funções


Get row as an associative array

ifx_errormsg
ifx_fieldproperties
Informix Funções
PHP Manual

ifx_fetch_row

(PHP 4, PHP <=5.2.0)

ifx_fetch_row — Get row as an associative array

Descrição

array ifx_fetch_row ( resource $result_id [, mixed $position ] )

Fetches one row of data from the result associated with the specified result identifier.

Subsequent calls to ifx_fetch_row() would return the next row in the result set, or FALSE if there are no more rows.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

position

An optional parameter for a "fetch" operation on "scroll" cursors: NEXT, PREVIOUS, CURRENT, FIRST, LAST or a number. If you specify a number, an "absolute" row fetch is executed. This parameter is optional, and only valid for SCROLL cursors.

Valor Retornado

Returns an associative array that corresponds to the fetched row, or FALSE if there are no more rows.

Blob columns are returned as integer blob id values for use in ifx_get_blob() unless you have used ifx_textasvarchar(1) or ifx_byteasvarchar(1), in which case blobs are returned as string values.

Exemplos

Exemplo #1 Informix fetch rows

<?php
$rid = ifx_prepare ("select * from emp where name like " . $name,
                     $connid, IFX_SCROLL);
if (! $rid) {
    /* ... error ... */
}
$rowcount = ifx_affected_rows($rid);
if ($rowcount > 1000) {
    printf ("Too many rows in result set (%d)\n<br />", $rowcount);
    die ("Please restrict your query<br />\n");
}
if (! ifx_do ($rid)) {
   /* ... error ... */
}
$row = ifx_fetch_row ($rid, "NEXT");
while (is_array($row)) {
    for (reset($row); $fieldname=key($row); next($row)) {
        $fieldvalue = $row[$fieldname];
        printf ("%s = %s,", $fieldname, $fieldvalue);
    }
    printf("\n<br />");
    $row = ifx_fetch_row($rid, "NEXT");
}
ifx_free_result ($rid);
?>

ifx_errormsg
ifx_fieldproperties
Informix Funções


List of SQL fieldproperties

ifx_fetch_row
ifx_fieldtypes
Informix Funções
PHP Manual

ifx_fieldproperties

(PHP 4, PHP <=5.2.0)

ifx_fieldproperties — List of SQL fieldproperties

Descrição

array ifx_fieldproperties ( resource $result_id )

Returns the Informix SQL fieldproperties of every field in the query as an associative array. Properties are encoded as: "SQLTYPE;length;precision;scale;ISNULLABLE" where SQLTYPE = the Informix type like "SQLVCHAR" etc. and ISNULLABLE = "Y" or "N".

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Returns an associative array with fieldnames as key and the SQL fieldproperties as data for a query with result_id. Returns FALSE on errors.

Exemplos

Exemplo #1 Informix SQL fieldproperties

<?php
$properties = ifx_fieldproperties($resultid);
if (!isset($properties)) {
    /* ... error ... */
}
foreach ($properties as $fname => $val) {
    echo "$fname:\t property = $val\n";
}
?>

Veja Também

  • ifx_fieldtypes() - List of Informix SQL fields

ifx_fetch_row
ifx_fieldtypes
Informix Funções


List of Informix SQL fields

ifx_fieldproperties
ifx_free_blob
Informix Funções
PHP Manual

ifx_fieldtypes

(PHP 4, PHP <=5.2.0)

ifx_fieldtypes — List of Informix SQL fields

Descrição

array ifx_fieldtypes ( resource $result_id )

Returns an associative array with fieldnames as key and the SQL fieldtypes as data for the query associated with result_id.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Returns an associative array with fieldnames as key and the SQL fieldtypes as data for query with result_id. Returns FALSE on error.

Exemplos

Exemplo #1 Fieldnames and SQL fieldtypes

<?php
$types = ifx_fieldtypes($resultid);
if (is_array($types)) {
    foreach ($types as $fname => $val) {
        echo "$fname:\t type = $val\n";
    }
}
?>

Veja Também

  • ifx_fieldproperties() - List of SQL fieldproperties

ifx_fieldproperties
ifx_free_blob
Informix Funções


Deletes the blob object

ifx_fieldtypes
ifx_free_char
Informix Funções
PHP Manual

ifx_free_blob

(PHP 4, PHP <=5.2.0)

ifx_free_blob — Deletes the blob object

Descrição

bool ifx_free_blob ( int $bid )

Deletes the blobobject for the given blob object-id.

Parâmetros

bid

The BLOB object id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_create_blob() - Creates an blob object

ifx_fieldtypes
ifx_free_char
Informix Funções


Deletes the char object

ifx_free_blob
ifx_free_result
Informix Funções
PHP Manual

ifx_free_char

(PHP 4, PHP <=5.2.0)

ifx_free_char — Deletes the char object

Descrição

bool ifx_free_char ( int $bid )

Deletes the charobject for the given char object-id.

Parâmetros

bid

The char object id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_create_char() - Creates an char object

ifx_free_blob
ifx_free_result
Informix Funções


Releases resources for the query

ifx_free_char
ifx_get_blob
Informix Funções
PHP Manual

ifx_free_result

(PHP 4, PHP <=5.2.0)

ifx_free_result — Releases resources for the query

Descrição

bool ifx_free_result ( resource $result_id )

Releases resources for the query associated with result_id.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_do() - Execute a previously prepared SQL-statement

ifx_free_char
ifx_get_blob
Informix Funções


Return the content of a blob object

ifx_free_result
ifx_get_char
Informix Funções
PHP Manual

ifx_get_blob

(PHP 4, PHP <=5.2.0)

ifx_get_blob — Return the content of a blob object

Descrição

string ifx_get_blob ( int $bid )

Returns the content of the blob object.

Parâmetros

bid

The BLOB object id.

Valor Retornado

The contents of the BLOB as a string, or FALSE on errors.

Veja Também

  • ifx_get_char() - Return the content of the char object

ifx_free_result
ifx_get_char
Informix Funções


Return the content of the char object

ifx_get_blob
ifx_getsqlca
Informix Funções
PHP Manual

ifx_get_char

(PHP 4, PHP <=5.2.0)

ifx_get_char — Return the content of the char object

Descrição

string ifx_get_char ( int $bid )

Returns the content of the char object.

Parâmetros

bid

The char object-id.

Valor Retornado

Returns the contents as a string, or FALSE on errors.

Veja Também

  • ifx_get_blob() - Return the content of a blob object

ifx_get_blob
ifx_getsqlca
Informix Funções


Get the contents of sqlca.sqlerrd[0..5] after a query

ifx_get_char
ifx_htmltbl_result
Informix Funções
PHP Manual

ifx_getsqlca

(PHP 4, PHP <=5.2.0)

ifx_getsqlca — Get the contents of sqlca.sqlerrd[0..5] after a query

Descrição

array ifx_getsqlca ( resource $result_id )

Returns a pseudo-row with sqlca.sqlerrd[0] ... sqlca.sqlerrd[5] after the query associated with result_id.

For inserts, updates and deletes the values returned are those as set by the server after executing the query. This gives access to the number of affected rows and the serial insert value. For SELECTs the values are those saved after the PREPARE statement. This gives access to the *estimated* number of affected rows. The use of this function saves the overhead of executing a SELECT dbinfo('sqlca.sqlerrdx') query, as it retrieves the values that were saved by the ifx driver at the appropriate moment.

Parâmetros

result_id

result_id is a valid result id returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Returns an associative array with the following entries: sqlerrd0, sqlerrd1, sqlerrd2, sqlerrd3, sqlerrd4 and sqlerrd5.

Exemplos

Exemplo #1 Retrieve Informix sqlca.sqlerrd[x] values

<?php
/* assume the first column of 'sometable' is a serial */
$qid = ifx_query("insert into sometable
                  values (0, '2nd column', 'another column') ", $connid);
if (!$qid) {
    /* ... error ... */
}
$sqlca = ifx_getsqlca($qid);
$serial_value = $sqlca["sqlerrd1"];
echo "The serial value of the inserted row is : $serial_value<br />\n";
?>

ifx_get_char
ifx_htmltbl_result
Informix Funções


Formats all rows of a query into a HTML table

ifx_getsqlca
ifx_nullformat
Informix Funções
PHP Manual

ifx_htmltbl_result

(PHP 4, PHP <=5.2.0)

ifx_htmltbl_result — Formats all rows of a query into a HTML table

Descrição

int ifx_htmltbl_result ( resource $result_id [, string $html_table_options ] )

Formats and prints all rows of the result_id query into a HTML table.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

html_table_options

This optional argument is a string of <table> tag options.

Valor Retornado

Returns the number of fetched rows, or FALSE on errors.

Exemplos

Exemplo #1 Informix results as HTML table

<?php
$rid = ifx_prepare ("select * from emp where name like " . $name,
                     $connid, IFX_SCROLL);
if (! $rid) {
    /* ... error ... */
}
$rowcount = ifx_affected_rows ($rid);
if ($rowcount > 1000) {
    printf ("Too many rows in result set (%d)\n<br />", $rowcount);
    die ("Please restrict your query<br />\n");
}
if (! ifx_do($rid)) {
    /* ... error ... */
}

ifx_htmltbl_result ($rid, "border=\"2\"");

ifx_free_result($rid);
?>

ifx_getsqlca
ifx_nullformat
Informix Funções


Sets the default return value on a fetch row

ifx_htmltbl_result
ifx_num_fields
Informix Funções
PHP Manual

ifx_nullformat

(PHP 4, PHP <=5.2.0)

ifx_nullformat — Sets the default return value on a fetch row

Descrição

bool ifx_nullformat ( int $mode )

Sets the default return value of a NULL-value on a fetch row.

Parâmetros

mode

Mode "0" returns "", and mode "1" returns "NULL".

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ifx_htmltbl_result
ifx_num_fields
Informix Funções


Returns the number of columns in the query

ifx_nullformat
ifx_num_rows
Informix Funções
PHP Manual

ifx_num_fields

(PHP 4, PHP <=5.2.0)

ifx_num_fields — Returns the number of columns in the query

Descrição

int ifx_num_fields ( resource $result_id )

After preparing or executing a query, this call gives you the number of columns in the query.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Returns the number of columns in query for result_id, or FALSE on errors.

Exemplos

Exemplo #1 ifx_num_fields() Example

<?php
$conn_id = ifx_connect("db", "user", "password");
$res_id = ifx_query("select * from systables", $conn_id);
echo ifx_num_fields($res_id);
?>

Veja Também

  • ifx_num_rows() - Count the rows already fetched from a query

ifx_nullformat
ifx_num_rows
Informix Funções


Count the rows already fetched from a query

ifx_num_fields
ifx_pconnect
Informix Funções
PHP Manual

ifx_num_rows

(PHP 4, PHP <=5.2.0)

ifx_num_rows — Count the rows already fetched from a query

Descrição

int ifx_num_rows ( resource $result_id )

Gives the number of rows fetched so far for a query with result_id after a ifx_query() or ifx_do() query.

Parâmetros

result_id

result_id is a valid resultid returned by ifx_query() or ifx_prepare() (select type queries only!).

Valor Retornado

Returns the number of fetched rows or FALSE on errors.

Veja Também

  • ifx_num_fields() - Returns the number of columns in the query

ifx_num_fields
ifx_pconnect
Informix Funções


Open persistent Informix connection

ifx_num_rows
ifx_prepare
Informix Funções
PHP Manual

ifx_pconnect

(PHP 4, PHP <=5.2.0)

ifx_pconnect — Open persistent Informix connection

Descrição

resource ifx_pconnect ([ string $database [, string $userid [, string $password ]]] )

ifx_pconnect() acts very much like ifx_connect() with two major differences.

First, when connecting, the function would first try to find a (persistent) link that's already open with the same host, username and password. If one is found, an identifier for it will be returned instead of opening a new connection.

Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (ifx_close() will not close links established by ifx_pconnect()).

This type of links is therefore called 'persistent'.

Parâmetros

All of the arguments are optional, and if they're missing, defaults are taken from values supplied in php.ini (ifx.default_host for the host (Informix libraries will use INFORMIXSERVER environment value if not defined), ifx.default_user for user, ifx.default_password for the password (none if not defined).

database

The database name, as a string.

userid

The username, as a string.

password

The password, as a string.

Valor Retornado

Returns: valid Informix persistent link identifier on success, or FALSE on errors.

Veja Também

  • ifx_connect() - Open Informix server connection

ifx_num_rows
ifx_prepare
Informix Funções


Prepare an SQL-statement for execution

ifx_pconnect
ifx_query
Informix Funções
PHP Manual

ifx_prepare

(PHP 4, PHP <=5.2.0)

ifx_prepare — Prepare an SQL-statement for execution

Descrição

resource ifx_prepare ( string $query , resource $link_identifier [, int $cursor_def ], mixed $blobidarray )

Prepares a query for later use with ifx_do().

For "select-type" queries a cursor is declared and opened. Non-select queries are "execute immediate".

For either query type the number of (estimated or real) affected rows is saved for retrieval by ifx_affected_rows().

If the contents of the TEXT (or BYTE) column allow it, you can also use ifx_textasvarchar(1) and ifx_byteasvarchar(1). This allows you to treat TEXT (or BYTE) columns just as if they were ordinary (but long) VARCHAR columns for select queries, and you don't need to bother with blob id's.

With ifx_textasvarchar(0) or ifx_byteasvarchar(0) (the default situation), select queries will return BLOB columns as blob id's (integer value). You can get the value of the blob as a string or file with the blob functions (see below).

Parâmetros

query

The query string.

link_identifier

The link identifier.

cursor_def

This optional parameter allows you to make this a scroll and/or hold cursor. It's a bitmask and can be either IFX_SCROLL, IFX_HOLD, or both or'ed together.

blobidarray

If you have BLOB (BYTE or TEXT) columns in the query, you can add a blobidarray parameter containing the corresponding "blob ids", and you should replace those columns with a "?" in the query text.

Valor Retornado

Returns a valid result identifier for use by ifx_do(), or FALSE on errors.

Veja Também

  • ifx_do() - Execute a previously prepared SQL-statement

ifx_pconnect
ifx_query
Informix Funções


Send Informix query

ifx_prepare
ifx_textasvarchar
Informix Funções
PHP Manual

ifx_query

(PHP 4, PHP <=5.2.0)

ifx_query — Send Informix query

Descrição

resource ifx_query ( string $query , resource $link_identifier [, int $cursor_type [, mixed $blobidarray ]] )

Sends a query to the currently active database on the server that's associated with the specified link identifier.

For "select-type" queries a cursor is declared and opened. Non-select queries are "execute immediate".

For either query type the number of (estimated or real) affected rows is saved for retrieval by ifx_affected_rows().

If the contents of the TEXT (or BYTE) column allow it, you can also use ifx_textasvarchar(1) and ifx_byteasvarchar(1). This allows you to treat TEXT (or BYTE) columns just as if they were ordinary (but long) VARCHAR columns for select queries, and you don't need to bother with blob id's.

With ifx_textasvarchar(0) or ifx_byteasvarchar(0) (the default situation), select queries will return BLOB columns as blob id's (integer value). You can get the value of the blob as a string or file with the blob functions (see below).

Parâmetros

query

The query string.

link_identifier

The link identifier.

cursor_def

This optional parameter allows you to make this a scroll and/or hold cursor. It's a bitmask and can be either IFX_SCROLL, IFX_HOLD, or both or'ed together. I you omit this parameter the cursor is a normal sequential cursor.

blobidarray

If you have BLOB (BYTE or TEXT) columns in the query, you can add a blobidarray parameter containing the corresponding "blob ids", and you should replace those columns with a "?" in the query text.

Valor Retornado

Returns valid Informix result identifier on success, or FALSE on errors.

Exemplos

Exemplo #1 Show all rows of the "orders" table as a HTML table

<?php
ifx_textasvarchar(1);      // use "text mode" for blobs
$res_id = ifx_query("select * from orders", $conn_id);
if (! $res_id) {
    printf("Can't select orders : %s\n<br />%s<br />\n", ifx_error(), ifx_errormsg());
    die;
}
ifx_htmltbl_result($res_id, "border=\"1\"");
ifx_free_result($res_id);
?>

Exemplo #2 Insert some values into the "catalog" table

<?php

// create blob id's for a byte and text column
$textid = ifx_create_blob(0, 0, "Text column in memory");
$byteid = ifx_create_blob(1, 0, "Byte column in memory");

// store blob id's in a blobid array
$blobidarray[] = $textid;
$blobidarray[] = $byteid;

// launch query
$query = "insert into catalog (stock_num, manu_code, " .
         "cat_descr,cat_picture) values(1,'HRO',?,?)";
$res_id = ifx_query($query, $conn_id, $blobidarray);
if (! $res_id) {
    /* ... error ... */
}

// free result id
ifx_free_result($res_id);
?>

Veja Também

  • ifx_connect() - Open Informix server connection

ifx_prepare
ifx_textasvarchar
Informix Funções


Set the default text mode

ifx_query
ifx_update_blob
Informix Funções
PHP Manual

ifx_textasvarchar

(PHP 4, PHP <=5.2.0)

ifx_textasvarchar — Set the default text mode

Descrição

bool ifx_textasvarchar ( int $mode )

Sets the default text mode for all select-queries.

Parâmetros

mode

Mode "0" will return a blob id, and mode "1" will return a varchar with text content.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_byteasvarchar() - Set the default byte mode

ifx_query
ifx_update_blob
Informix Funções


Updates the content of the blob object

ifx_textasvarchar
ifx_update_char
Informix Funções
PHP Manual

ifx_update_blob

(PHP 4, PHP <=5.2.0)

ifx_update_blob — Updates the content of the blob object

Descrição

bool ifx_update_blob ( int $bid , string $content )

Updates the content of the blob object for the given blob object bid.

Parâmetros

bid

A BLOB object identifier.

content

The new data, as a string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_update_char() - Updates the content of the char object

ifx_textasvarchar
ifx_update_char
Informix Funções


Updates the content of the char object

ifx_update_blob
ifxus_close_slob
Informix Funções
PHP Manual

ifx_update_char

(PHP 4, PHP <=5.2.0)

ifx_update_char — Updates the content of the char object

Descrição

bool ifx_update_char ( int $bid , string $content )

Updates the content of the char object for the given char object bid.

Parâmetros

bid

A char object identifier.

content

The new data, as a string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifx_update_blob() - Updates the content of the blob object

ifx_update_blob
ifxus_close_slob
Informix Funções


Deletes the slob object

ifx_update_char
ifxus_create_slob
Informix Funções
PHP Manual

ifxus_close_slob

(PHP 4, PHP <=5.2.0)

ifxus_close_slob — Deletes the slob object

Descrição

bool ifxus_close_slob ( int $bid )

Deletes the slob object on the given slob object-id bid.

Parâmetros

bid

An existing slob id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifxus_open_slob() - Opens an slob object

ifx_update_char
ifxus_create_slob
Informix Funções


Creates an slob object and opens it

ifxus_close_slob
ifxus_free_slob
Informix Funções
PHP Manual

ifxus_create_slob

(PHP 4, PHP <=5.2.0)

ifxus_create_slob — Creates an slob object and opens it

Descrição

int ifxus_create_slob ( int $mode )

Creates an slob object and opens it.

Parâmetros

mode

A combination of IFX_LO_RDONLY, IFX_LO_WRONLY, IFX_LO_APPEND IFX_LO_RDWR, IFX_LO_BUFFER, IFX_LO_NOBUFFER.

Valor Retornado

Return the new slob object-id, or FALSE on errors.

Veja Também

  • ifxus_close_slob() - Deletes the slob object
  • ifxus_free_slob() - Deletes the slob object

ifxus_close_slob
ifxus_free_slob
Informix Funções


Deletes the slob object

ifxus_create_slob
ifxus_open_slob
Informix Funções
PHP Manual

ifxus_free_slob

(PHP 4, PHP <=5.2.0)

ifxus_free_slob — Deletes the slob object

Descrição

bool ifxus_free_slob ( int $bid )

Deletes the slob object.

Parâmetros

bid

An existing slob id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ifxus_close_slob() - Deletes the slob object

ifxus_create_slob
ifxus_open_slob
Informix Funções


Opens an slob object

ifxus_free_slob
ifxus_read_slob
Informix Funções
PHP Manual

ifxus_open_slob

(PHP 4, PHP <=5.2.0)

ifxus_open_slob — Opens an slob object

Descrição

int ifxus_open_slob ( int $bid , int $mode )

Opens an slob object. bid should be an existing slob id.

Parâmetros

bid

An existing slob id.

mode

A combination of IFX_LO_RDONLY, IFX_LO_WRONLY, IFX_LO_APPEND IFX_LO_RDWR, IFX_LO_BUFFER, IFX_LO_NOBUFFER.

Valor Retornado

Returns the new slob object-id, or FALSE on errors.

Veja Também

  • ifxus_close_slob() - Deletes the slob object
  • ifxus_free_slob() - Deletes the slob object

ifxus_free_slob
ifxus_read_slob
Informix Funções


Reads nbytes of the slob object

ifxus_open_slob
ifxus_seek_slob
Informix Funções
PHP Manual

ifxus_read_slob

(PHP 4, PHP <=5.2.0)

ifxus_read_slob — Reads nbytes of the slob object

Descrição

string ifxus_read_slob ( int $bid , int $nbytes )

Reads nbytes of the slob object.

Parâmetros

bid

An existing slob id.

nbytes

The number of bytes to read.

Valor Retornado

Returns the slob contents as a string, or FALSE on errors.

Veja Também

  • ifxus_write_slob() - Writes a string into the slob object

ifxus_open_slob
ifxus_seek_slob
Informix Funções


Sets the current file or seek position

ifxus_read_slob
ifxus_tell_slob
Informix Funções
PHP Manual

ifxus_seek_slob

(PHP 4, PHP <=5.2.0)

ifxus_seek_slob — Sets the current file or seek position

Descrição

int ifxus_seek_slob ( int $bid , int $mode , int $offset )

Sets the current file or seek position of an open slob object.

Parâmetros

bid

An existing slob id.

mode

0 = LO_SEEK_SET, 1 = LO_SEEK_CUR, 2 = LO_SEEK_END.

offset

A byte offset.

Valor Retornado

Returns the seek position as an integer, or FALSE on errors.

Veja Também

  • ifxus_tell_slob() - Returns the current file or seek position

ifxus_read_slob
ifxus_tell_slob
Informix Funções


Returns the current file or seek position

ifxus_seek_slob
ifxus_write_slob
Informix Funções
PHP Manual

ifxus_tell_slob

(PHP 4, PHP <=5.2.0)

ifxus_tell_slob — Returns the current file or seek position

Descrição

int ifxus_tell_slob ( int $bid )

Returns the current file or seek position of an open slob object

Parâmetros

bid

An existing slob id.

Valor Retornado

Returns the seek position as an integer, or FALSE on errors.

Veja Também

  • ifxus_seek_slob() - Sets the current file or seek position

ifxus_seek_slob
ifxus_write_slob
Informix Funções


Writes a string into the slob object

ifxus_tell_slob
IBM DB2
Informix Funções
PHP Manual

ifxus_write_slob

(PHP 4, PHP <=5.2.0)

ifxus_write_slob — Writes a string into the slob object

Descrição

int ifxus_write_slob ( int $bid , string $content )

Writes a string into the slob object.

Parâmetros

bid

An existing slob id.

content

The content to write, as a string.

Valor Retornado

Returns the bytes written as an integer, or FALSE on errors.

Veja Também

  • ifxus_read_slob() - Reads nbytes of the slob object

ifxus_tell_slob
IBM DB2
Informix Funções


IBM DB2, Cloudscape and Apache Derby

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • IBM DB2 Funções
    • db2_autocommit — Returns or sets the AUTOCOMMIT state for a database connection
    • db2_bind_param — Binds a PHP variable to an SQL statement parameter
    • db2_client_info — Returns an object with properties that describe the DB2 database client
    • db2_close — Closes a database connection
    • db2_column_privileges — Returns a result set listing the columns and associated privileges for a table
    • db2_columns — Returns a result set listing the columns and associated metadata for a table
    • db2_commit — Commits a transaction
    • db2_conn_error — Returns a string containing the SQLSTATE returned by the last connection attempt
    • db2_conn_errormsg — Returns the last connection error message and SQLCODE value
    • db2_connect — Returns a connection to a database
    • db2_cursor_type — Returns the cursor type used by a statement resource
    • db2_escape_string — Used to escape certain characters
    • db2_exec — Executes an SQL statement directly
    • db2_execute — Executes a prepared SQL statement
    • db2_fetch_array — Returns an array, indexed by column position, representing a row in a result set
    • db2_fetch_assoc — Returns an array, indexed by column name, representing a row in a result set
    • db2_fetch_both — Returns an array, indexed by both column name and position, representing a row in a result set
    • db2_fetch_object — Returns an object with properties representing columns in the fetched row
    • db2_fetch_row — Sets the result set pointer to the next row or requested row
    • db2_field_display_size — Returns the maximum number of bytes required to display a column
    • db2_field_name — Returns the name of the column in the result set
    • db2_field_num — Returns the position of the named column in a result set
    • db2_field_precision — Returns the precision of the indicated column in a result set
    • db2_field_scale — Returns the scale of the indicated column in a result set
    • db2_field_type — Returns the data type of the indicated column in a result set
    • db2_field_width — Returns the width of the current value of the indicated column in a result set
    • db2_foreign_keys — Returns a result set listing the foreign keys for a table
    • db2_free_result — Frees resources associated with a result set
    • db2_free_stmt — Frees resources associated with the indicated statement resource
    • db2_get_option — Retrieves an option value for a statement resource or a connection resource
    • db2_last_insert_id — Returns the auto generated ID of the last insert query that successfully executed on this connection
    • db2_lob_read — Gets a user defined size of LOB files with each invocation
    • db2_next_result — Requests the next result set from a stored procedure
    • db2_num_fields — Returns the number of fields contained in a result set
    • db2_num_rows — Returns the number of rows affected by an SQL statement
    • db2_pclose — Closes a persistent database connection
    • db2_pconnect — Returns a persistent connection to a database
    • db2_prepare — Prepares an SQL statement to be executed
    • db2_primary_keys — Returns a result set listing primary keys for a table
    • db2_procedure_columns — Returns a result set listing stored procedure parameters
    • db2_procedures — Returns a result set listing the stored procedures registered in a database
    • db2_result — Returns a single column from a row in the result set
    • db2_rollback — Rolls back a transaction
    • db2_server_info — Returns an object with properties that describe the DB2 database server
    • db2_set_option — Set options for connection or statement resources
    • db2_special_columns — Returns a result set listing the unique row identifier columns for a table
    • db2_statistics — Returns a result set listing the index and statistics for a table
    • db2_stmt_error — Returns a string containing the SQLSTATE returned by an SQL statement
    • db2_stmt_errormsg — Returns a string containing the last SQL statement error message
    • db2_table_privileges — Returns a result set listing the tables and associated privileges in a database
    • db2_tables — Returns a result set listing the tables and associated metadata in a database
ifxus_write_slob
Introdução
Vendor Specific Database Extensions


Introdução

These functions enable you to access IBM DB2 Universal Database, IBM Cloudscape, and Apache Derby databases using the DB2 Call Level Interface (DB2 CLI).

IBM DB2
Instalação/Configuração
IBM DB2


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
IBM DB2


Dependências

To connect to IBM DB2 Universal Database for Linux, UNIX, and Windows, or IBM Cloudscape, or Apache Derby, you must install an IBM DB2 Universal Database client on the same computer on which you are running PHP. The extension has been developed and tested with DB2 Version 8.2.

To connect to IBM DB2 Universal Database for z/OS or iSeries, you also require IBM DB2 Connect or the equivalent DRDA gateway software.

Requirements on Linux or Unix

The user invoking the PHP executable or SAPI must specify the DB2 instance before accessing these functions. You can set the name of the DB2 instance in php.ini using the ibm_db2.instance_name configuration option, or you can source the DB2 instance profile before invoking the PHP executable.

If you created a DB2 instance named db2inst1 in /home/db2inst1/, for example, you can add the following line to php.ini:

ibm_db2.instance_name=db2inst1
If you do not set this option in php.ini, you must issue the following command to modify your environment variables to enable access to DB2:
bash$ source /home/db2inst1/sqllib/db2profile
To enable your PHP-enabled Web server to access these functions, you must either set the ibm_db2.instance_name configuration option in php.ini, or source the DB2 instance environment in your Web server start script (typically /etc/init.d/httpd or /etc/init.d/apache).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To build the ibm_db2 extension, the DB2 application development header files and libraries must be installed on your system. DB2 does not install these by default, so you may have to return to your DB2 installer and add this option. The header files are included with the DB2 Application Development Client freely available for download from the IBM DB2 Universal Database » support site.

If you add the DB2 application development header files and libraries to a Linux or Unix operating system on which DB2 was already installed, you must issue the command db2iupdt -e to update the symbolic links to the header files and libraries in your DB2 instances.

ibm_db2 is a » PECL extension, so follow the instructions in Instalação das extensões PECL to install the ibm_db2 extension for PHP. Issue the configure command to point to the location of your DB2 header files and libraries as follows:

bash$ ./configure --with-IBM_DB2=/path/to/DB2
The configure command defaults to /opt/IBM/db2/V8.1.

Nota: Note for IIS users

If you are using the ibm_db2 driver with Microsoft Internet Information Server (IIS) you may have to do the following:

  • Install DB2 with extended operating system security.
  • Add the PHP binary path to the PATH system environment variable (default C:\php\).
  • Create another system environment variable equal to the path where the PHP.INI file is located (eg: PHPRC = C:\php\).
  • Add the IUSR_COMPUTERNAME to the DB2USERS group.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

ibm_db2 Opções de Configuração
Nome | Padrão | Modificável | Changelog
ibm_db2.binmode | "1" | PHP_INI_ALL |
ibm_db2.i5_all_pconnect | "0" | PHP_INI_SYSTEM | Available since ibm_db2 1.6.5.
ibm_db2.i5_allow_commit | "0" | PHP_INI_SYSTEM | Available since ibm_db2 1.4.9.
ibm_db2.i5_dbcs_alloc | "0" | PHP_INI_SYSTEM | Available since ibm_db2 1.5.0.
ibm_db2.instance_name | NULL | PHP_INI_SYSTEM | Available since ibm_db2 1.0.2.
ibm_db2.i5_ignore_userid | "0" | PHP_INI_SYSTEM | Available since ibm_db2 1.8.0.

Breve descrição das diretivas de configuração.

ibm_db2.binmode integer

This option controls the mode used for converting to and from binary data in the PHP application.

  • 1 (DB2_BINARY)

  • 2 (DB2_CONVERT)

  • 3 (DB2_PASSTHRU)

ibm_db2.i5_all_pconnect integer

This option overrides i5 db2_connect() full open and close in the PHP application. When ibm_db2.i5_all_pconnect = 1, all db2 connections become persistent (db2_pconnect()). On i5/OS, db2_pconnect() performs dramatically better with lower machine stress over db2_connect(). This is a convenience override of db2_connect() to evoke db2_pconnect() without PHP source code changes.

  • 0 db2_connect() default full open and close

  • 1 db2_connect() override to db2_pconnect() for persistent connection only

ibm_db2.i5_allow_commit integer

This option controls the commit mode used for i5 schema collections in the PHP application.

  • 0 no commit (see i5_commit for override)

  • 1 allow commit (see i5_commit for override)

ibm_db2.i5_dbcs_alloc integer

This option controls the internal ibm_db2 allocation scheme for large DBCS column buffers.

  • 0 no expanded allocations (see i5_dbcs_alloc for override)

  • 1 use expanded allocations (see i5_dbcs_alloc for override)

ibm_db2.instance_name string

On Linux and UNIX operating systems, this option defines the name of the instance to use for cataloged database connections. If this option is set, its value overrides the DB2INSTANCE environment variable setting.

This option is ignored on Windows operating systems.

ibm_db2.i5_ignore_userid integer

This option overrides i5 db2_(p)connect userid and password in the PHP application. When ibm_db2.i5_ignore_userid = 1, all db2 (p)connections become null userid and null password. Therefore Apache jobs connect with the current profile (NOBODY). Use of this override is only for simple DB2 based websites that never require profile switching and therefore can avoid all overhead of server mode additional QSQSRVR jobs. This is a convenience override of db2_(p)connect to set the userid and password values to null without PHP source code changes. This override can be used in combination with ibm_db2.i5_all_pconnect = 1.

  • 0 db2_(p)connect with specified userid and password

  • 1 db2_(p)connect override connect with null userid and null password

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

The ibm_db2 extension returns connection resources, statement resources, and result set resources.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

DB2_BINARY (integer)
Specifies that binary data shall be returned as is. This is the default mode.
DB2_CONVERT (integer)
Specifies that binary data shall be converted to a hexadecimal encoding and returned as an ASCII string.
DB2_PASSTHRU (integer)
Specifies that binary data shall be converted to a NULL value.
DB2_SCROLLABLE (integer)
Specifies a scrollable cursor for a statement resource. This mode enables random access to rows in a result set, but currently is supported only by IBM DB2 Universal Database.
DB2_FORWARD_ONLY (integer)
Specifies a forward-only cursor for a statement resource. This is the default cursor type and is supported on all database servers.
DB2_PARAM_IN (integer)
Specifies the PHP variable should be bound as an IN parameter for a stored procedure.
DB2_PARAM_OUT (integer)
Specifies the PHP variable should be bound as an OUT parameter for a stored procedure.
DB2_PARAM_INOUT (integer)
Specifies the PHP variable should be bound as an INOUT parameter for a stored procedure.
DB2_PARAM_FILE (integer)
Specifies that the column should be bound directly to a file for input.
DB2_AUTOCOMMIT_ON (integer)
Specifies that autocommit should be turned on.
DB2_AUTOCOMMIT_OFF (integer)
Specifies that autocommit should be turned off.
DB2_DOUBLE (integer)
Specifies that the variable should be bound as a DOUBLE, FLOAT, or REAL data type.
DB2_LONG (integer)
Specifies that the variable should be bound as a SMALLINT, INTEGER, or BIGINT data type.
DB2_CHAR (integer)
Specifies that the variable should be bound as a CHAR or VARCHAR data type.
DB2_CASE_NATURAL (integer)
Specifies that column names will be returned in their natural case.
DB2_CASE_LOWER (integer)
Specifies that column names will be returned in lower case.
DB2_CASE_UPPER (integer)
Specifies that column names will be returned in upper case.
DB2_DEFERRED_PREPARE_ON (integer)
Specifies that deferred prepare should be turned on for the specified statement resource.
DB2_DEFERRED_PREPARE_OFF (integer)
Specifies that deferred prepare should be turned off for the specified statement resource.
Tipos Resource
IBM DB2 Funções
IBM DB2


IBM DB2 Funções

Índice

  • db2_autocommit — Returns or sets the AUTOCOMMIT state for a database connection
  • db2_bind_param — Binds a PHP variable to an SQL statement parameter
  • db2_client_info — Returns an object with properties that describe the DB2 database client
  • db2_close — Closes a database connection
  • db2_column_privileges — Returns a result set listing the columns and associated privileges for a table
  • db2_columns — Returns a result set listing the columns and associated metadata for a table
  • db2_commit — Commits a transaction
  • db2_conn_error — Returns a string containing the SQLSTATE returned by the last connection attempt
  • db2_conn_errormsg — Returns the last connection error message and SQLCODE value
  • db2_connect — Returns a connection to a database
  • db2_cursor_type — Returns the cursor type used by a statement resource
  • db2_escape_string — Used to escape certain characters
  • db2_exec — Executes an SQL statement directly
  • db2_execute — Executes a prepared SQL statement
  • db2_fetch_array — Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc — Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both — Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_object — Returns an object with properties representing columns in the fetched row
  • db2_fetch_row — Sets the result set pointer to the next row or requested row
  • db2_field_display_size — Returns the maximum number of bytes required to display a column
  • db2_field_name — Returns the name of the column in the result set
  • db2_field_num — Returns the position of the named column in a result set
  • db2_field_precision — Returns the precision of the indicated column in a result set
  • db2_field_scale — Returns the scale of the indicated column in a result set
  • db2_field_type — Returns the data type of the indicated column in a result set
  • db2_field_width — Returns the width of the current value of the indicated column in a result set
  • db2_foreign_keys — Returns a result set listing the foreign keys for a table
  • db2_free_result — Frees resources associated with a result set
  • db2_free_stmt — Frees resources associated with the indicated statement resource
  • db2_get_option — Retrieves an option value for a statement resource or a connection resource
  • db2_last_insert_id — Returns the auto generated ID of the last insert query that successfully executed on this connection
  • db2_lob_read — Gets a user defined size of LOB files with each invocation
  • db2_next_result — Requests the next result set from a stored procedure
  • db2_num_fields — Returns the number of fields contained in a result set
  • db2_num_rows — Returns the number of rows affected by an SQL statement
  • db2_pclose — Closes a persistent database connection
  • db2_pconnect — Returns a persistent connection to a database
  • db2_prepare — Prepares an SQL statement to be executed
  • db2_primary_keys — Returns a result set listing primary keys for a table
  • db2_procedure_columns — Returns a result set listing stored procedure parameters
  • db2_procedures — Returns a result set listing the stored procedures registered in a database
  • db2_result — Returns a single column from a row in the result set
  • db2_rollback — Rolls back a transaction
  • db2_server_info — Returns an object with properties that describe the DB2 database server
  • db2_set_option — Set options for connection or statement resources
  • db2_special_columns — Returns a result set listing the unique row identifier columns for a table
  • db2_statistics — Returns a result set listing the index and statistics for a table
  • db2_stmt_error — Returns a string containing the SQLSTATE returned by an SQL statement
  • db2_stmt_errormsg — Returns a string containing the last SQL statement error message
  • db2_table_privileges — Returns a result set listing the tables and associated privileges in a database
  • db2_tables — Returns a result set listing the tables and associated metadata in a database
Constantes pré-definidas
db2_autocommit
IBM DB2


Returns or sets the AUTOCOMMIT state for a database connection

IBM DB2 Funções
db2_bind_param
IBM DB2 Funções
PHP Manual

db2_autocommit

(PECL ibm_db2 >= 1.0.0)

db2_autocommit — Returns or sets the AUTOCOMMIT state for a database connection

Descrição

mixed db2_autocommit ( resource $connection [, bool $value ] )

Sets or gets the AUTOCOMMIT behavior of the specified connection resource.

Parâmetros

connection

A valid database connection resource variable as returned from db2_connect() or db2_pconnect().

value

One of the following constants:

DB2_AUTOCOMMIT_OFF

Turns AUTOCOMMIT off.

DB2_AUTOCOMMIT_ON

Turns AUTOCOMMIT on.

Valor Retornado

When db2_autocommit() receives only the connection parameter, it returns the current state of AUTOCOMMIT for the requested connection as an integer value. A value of 0 indicates that AUTOCOMMIT is off, while a value of 1 indicates that AUTOCOMMIT is on.

When db2_autocommit() receives both the connection parameter and autocommit parameter, it attempts to set the AUTOCOMMIT state of the requested connection to the corresponding state. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Retrieving the AUTOCOMMIT value for a connection

In the following example, a connection which has been created with AUTOCOMMIT turned off is tested with the db2_autocommit() function.

<?php
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF);
$conn = db2_connect($database, $user, $password, $options);
$ac = db2_autocommit($conn);
if ($ac == 0) {
    print "$ac -- AUTOCOMMIT is off.";
} else {
    print "$ac -- AUTOCOMMIT is on.";
}
?>

O exemplo acima irá imprimir:

0 -- AUTOCOMMIT is off.

Exemplo #2 Setting the AUTOCOMMIT value for a connection

In the following example, a connection which was initially created with AUTOCOMMIT turned off has its behavior changed to turn AUTOCOMMIT on.

<?php
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF);
$conn = db2_connect($database, $user, $password, $options);

// Turn AUTOCOMMIT on
$rc = db2_autocommit($conn, DB2_AUTOCOMMIT_ON);
if ($rc) {
    print "Turning AUTOCOMMIT on succeeded.\n";
}

// Check AUTOCOMMIT state
$ac = db2_autocommit($conn);
if ($ac == 0) {
    print "$ac -- AUTOCOMMIT is off.";
} else {
    print "$ac -- AUTOCOMMIT is on.";
}
?>

O exemplo acima irá imprimir:

Turning AUTOCOMMIT on succeeded.
1 -- AUTOCOMMIT is on.

Veja Também

  • db2_connect() - Returns a connection to a database
  • db2_pconnect() - Returns a persistent connection to a database

IBM DB2 Funções
db2_bind_param
IBM DB2 Funções


Binds a PHP variable to an SQL statement parameter

db2_autocommit
db2_client_info
IBM DB2 Funções
PHP Manual

db2_bind_param

(PECL ibm_db2 >= 1.0.0)

db2_bind_param — Binds a PHP variable to an SQL statement parameter

Descrição

bool db2_bind_param ( resource $stmt , int $parameter-number , string $variable-name [, int $parameter-type [, int $data-type = 0 [, int $precision = -1 [, int $scale = 0 ]]]] )

Binds a PHP variable to an SQL statement parameter in a statement resource returned by db2_prepare(). This function gives you more control over the parameter type, data type, precision, and scale for the parameter than simply passing the variable as part of the optional input array to db2_execute().

Parâmetros

stmt

A prepared statement returned from db2_prepare().

parameter-number

Specifies the 1-indexed position of the parameter in the prepared statement.

variable-name

A string specifying the name of the PHP variable to bind to the parameter specified by parameter-number.

parameter-type

A constant specifying whether the PHP variable should be bound to the SQL parameter as an input parameter (DB2_PARAM_IN), an output parameter (DB2_PARAM_OUT), or as a parameter that accepts input and returns output (DB2_PARAM_INOUT). To avoid memory overhead, you can also specify DB2_PARAM_FILE to bind the PHP variable to the name of a file that contains large object (BLOB, CLOB, or DBCLOB) data.

data-type

A constant specifying the SQL data type that the PHP variable should be bound as: one of DB2_BINARY, DB2_CHAR, DB2_DOUBLE, or DB2_LONG .

precision

Specifies the precision with which the variable should be bound to the database. This parameter can also be used for retrieving XML output values from stored procedures. A non-negative value specifies the maximum size of the XML data that will be retrieved from the database. If this parameter is not used, a default of 1MB will be assumed for retrieving the XML output value from the stored procedure.

scale

Specifies the scale with which the variable should be bound to the database.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Binding PHP variables to a prepared statement

The SQL statement in the following example uses two input parameters in the WHERE clause. We call db2_bind_param() to bind two PHP variables to the corresponding SQL parameters. Notice that the PHP variables do not have to be declared or assigned before the call to db2_bind_param(); in the example, $lower_limit is assigned a value before the call to db2_bind_param(), but $upper_limit is assigned a value after the call to db2_bind_param(). The variables must be bound and, for parameters that accept input, must have any value assigned, before calling db2_execute().

<?php

$sql = 'SELECT name, breed, weight FROM animals
    WHERE weight > ? AND weight < ?';
$conn = db2_connect($database, $user, $password);
$stmt = db2_prepare($conn, $sql);

// We can declare the variable before calling db2_bind_param()
$lower_limit = 1;

db2_bind_param($stmt, 1, "lower_limit", DB2_PARAM_IN);
db2_bind_param($stmt, 2, "upper_limit", DB2_PARAM_IN);

// We can also declare the variable after calling db2_bind_param()
$upper_limit = 15.0;

if (db2_execute($stmt)) {
    while ($row = db2_fetch_array($stmt)) {
        print "{$row[0]}, {$row[1]}, {$row[2]}\n";
    }
}
?>

O exemplo acima irá imprimir:

Pook, cat, 3.2
Rickety Ride, goat, 9.7
Peaches, dog, 12.3

Exemplo #2 Calling stored procedures with IN and OUT parameters

The stored procedure match_animal in the following example accepts three different parameters:

  1. an input (IN) parameter that accepts the name of the first animal as input

  2. an input-output (INOUT) parameter that accepts the name of the second animal as input and returns the string TRUE if an animal in the database matches that name

  3. an output (OUT) parameter that returns the sum of the weight of the two identified animals

In addition, the stored procedure returns a result set consisting of the animals listed in alphabetic order starting at the animal corresponding to the input value of the first parameter and ending at the animal corresponding to the input value of the second parameter.

<?php

$sql = 'CALL match_animal(?, ?, ?)';
$conn = db2_connect($database, $user, $password);
$stmt = db2_prepare($conn, $sql);

$name = "Peaches";
$second_name = "Rickety Ride";
$weight = 0;

db2_bind_param($stmt, 1, "name", DB2_PARAM_IN);
db2_bind_param($stmt, 2, "second_name", DB2_PARAM_INOUT);
db2_bind_param($stmt, 3, "weight", DB2_PARAM_OUT);

print "Values of bound parameters _before_ CALL:\n";
print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";

if (db2_execute($stmt)) {
    print "Values of bound parameters _after_ CALL:\n";
    print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";

    print "Results:\n";
    while ($row = db2_fetch_array($stmt)) {
        print "  {$row[0]}, {$row[1]}, {$row[2]}\n";
    }
}
?>

O exemplo acima irá imprimir:

Values of bound parameters _before_ CALL:
  1: Peaches 2: Rickety Ride 3: 0

Values of bound parameters _after_ CALL:
  1: Peaches 2: TRUE 3: 22

Results:
  Peaches, dog, 12.3
  Pook, cat, 3.2
  Rickety Ride, goat, 9.7

Exemplo #3 Inserting a binary large object (BLOB) directly from a file

The data for large objects are typically stored in files, such as XML documents or audio files. Rather than reading an entire file into a PHP variable, and then binding that PHP variable into an SQL statement, you can avoid some memory overhead by binding the file directly to the input parameter of your SQL statement. The following example demonstrates how to bind a file directly into a BLOB column.

<?php
$stmt = db2_prepare($conn, "INSERT INTO animal_pictures(picture) VALUES (?)");

$picture = "/opt/albums/spook/grooming.jpg";
$rc = db2_bind_param($stmt, 1, "picture", DB2_PARAM_FILE);
$rc = db2_execute($stmt);
?>

Veja Também

  • db2_execute() - Executes a prepared SQL statement
  • db2_prepare() - Prepares an SQL statement to be executed

db2_autocommit
db2_client_info
IBM DB2 Funções


Returns an object with properties that describe the DB2 database client

db2_bind_param
db2_close
IBM DB2 Funções
PHP Manual

db2_client_info

(PECL ibm_db2 >= 1.1.1)

db2_client_info — Returns an object with properties that describe the DB2 database client

Descrição

object db2_client_info ( resource $connection )

This function returns an object with read-only properties that return information about the DB2 database client. The following table lists the DB2 client properties:

DB2 client properties
Property name | Return type | Description
APPL_CODEPAGE | int | The application code page.
CONN_CODEPAGE | int | The code page for the current connection.
DATA_SOURCE_NAME | string | The data source name (DSN) used to create the current connection to the database.
DRIVER_NAME | string | The name of the library that implements the DB2 Call Level Interface (CLI) specification.
DRIVER_ODBC_VER | string | The version of ODBC that the DB2 client supports. This returns a string "MM.mm" where MM is the major version and mm is the minor version. The DB2 client always returns "03.51".
DRIVER_VER | string | The version of the client, in the form of a string "MM.mm.uuuu" where MM is the major version, mm is the minor version, and uuuu is the update. For example, "08.02.0001" represents major version 8, minor version 2, update 1.
ODBC_SQL_CONFORMANCE string

The level of ODBC SQL grammar supported by the client:

MINIMUM

Supports the minimum ODBC SQL grammar.

CORE

Supports the core ODBC SQL grammar.

EXTENDED

Supports extended ODBC SQL grammar.

ODBC_VER | string | The version of ODBC that the ODBC driver manager supports. This returns a string "MM.mm.rrrr" where MM is the major version, mm is the minor version, and rrrr is the release. The DB2 client always returns "03.01.0000".

Parâmetros

connection

Specifies an active DB2 client connection.

Valor Retornado

Returns an object on a successful call. Returns FALSE on failure.

Exemplos

Exemplo #1 A db2_client_info() example

To retrieve information about the client, you must pass a valid database connection resource to db2_client_info().

<?php
$conn = db2_connect( 'SAMPLE', 'db2inst1', 'ibmdb2' );
$client = db2_client_info( $conn );

if ($client) {
    echo "DRIVER_NAME: ";           var_dump( $client->DRIVER_NAME );
    echo "DRIVER_VER: ";            var_dump( $client->DRIVER_VER );
    echo "DATA_SOURCE_NAME: ";      var_dump( $client->DATA_SOURCE_NAME );
    echo "DRIVER_ODBC_VER: ";       var_dump( $client->DRIVER_ODBC_VER );
    echo "ODBC_VER: ";              var_dump( $client->ODBC_VER );
    echo "ODBC_SQL_CONFORMANCE: ";  var_dump( $client->ODBC_SQL_CONFORMANCE );
    echo "APPL_CODEPAGE: ";         var_dump( $client->APPL_CODEPAGE );
    echo "CONN_CODEPAGE: ";         var_dump( $client->CONN_CODEPAGE );
}
else {
    echo "Error retrieving client information.
     Perhaps your database connection was invalid.";
}
db2_close($conn);

?>

O exemplo acima irá imprimir:

DRIVER_NAME: string(8) "libdb2.a"
DRIVER_VER: string(10) "08.02.0001"
DATA_SOURCE_NAME: string(6) "SAMPLE"
DRIVER_ODBC_VER: string(5) "03.51"
ODBC_VER: string(10) "03.01.0000"
ODBC_SQL_CONFORMANCE: string(8) "EXTENDED"
APPL_CODEPAGE: int(819)
CONN_CODEPAGE: int(819)

Veja Também

  • db2_server_info() - Returns an object with properties that describe the DB2 database server

db2_bind_param
db2_close
IBM DB2 Funções


Closes a database connection

db2_client_info
db2_column_privileges
IBM DB2 Funções
PHP Manual

db2_close

(PECL ibm_db2 >= 1.0.0)

db2_close — Closes a database connection

Descrição

bool db2_close ( resource $connection )

This function closes a DB2 client connection created with db2_connect() and returns the corresponding resources to the database server.

If you attempt to close a persistent DB2 client connection created with db2_pconnect(), the close request is ignored and the persistent DB2 client connection remains available for the next caller.

Parâmetros

connection

Specifies an active DB2 client connection.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Closing a connection

The following example demonstrates a successful attempt to close a connection to an IBM DB2, Cloudscape, or Apache Derby database.

<?php
$conn = db2_connect('SAMPLE', 'db2inst1', 'ibmdb2');
$rc = db2_close($conn);
if ($rc) {
    echo "Connection was successfully closed.";
}
?>

O exemplo acima irá imprimir:

Connection was successfully closed.

Veja Também

  • db2_connect() - Returns a connection to a database
  • db2_pclose() - Closes a persistent database connection
  • db2_pconnect() - Returns a persistent connection to a database

db2_client_info
db2_column_privileges
IBM DB2 Funções


Returns a result set listing the columns and associated privileges for a table

db2_close
db2_columns
IBM DB2 Funções
PHP Manual

db2_column_privileges

(PECL ibm_db2 >= 1.0.0)

db2_column_privileges — Returns a result set listing the columns and associated privileges for a table

Descrição

resource db2_column_privileges ( resource $connection [, string $qualifier [, string $schema [, string $table-name [, string $column-name ]]]] )

Returns a result set listing the columns and associated privileges for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. To match all schemas, pass NULL or an empty string.

table-name

The name of the table or view. To match all tables in the database, pass NULL or an empty string.

column-name

The name of the column. To match all columns in the table, pass NULL or an empty string.

Valor Retornado

Returns a statement resource with a result set containing rows describing the column privileges for columns matching the specified parameters. The rows are composed of the following columns:

Column name | Description
TABLE_CAT | Name of the catalog. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema.
TABLE_NAME | Name of the table or view.
COLUMN_NAME | Name of the column.
GRANTOR | Authorization ID of the user who granted the privilege.
GRANTEE | Authorization ID of the user to whom the privilege was granted.
PRIVILEGE | The privilege for the column.
IS_GRANTABLE | Whether the GRANTEE is permitted to grant this privilege to other users.

Veja Também

  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_close
db2_columns
IBM DB2 Funções


Returns a result set listing the columns and associated metadata for a table

db2_column_privileges
db2_commit
IBM DB2 Funções
PHP Manual

db2_columns

(PECL ibm_db2 >= 1.0.0)

db2_columns — Returns a result set listing the columns and associated metadata for a table

Descrição

resource db2_columns ( resource $connection [, string $qualifier [, string $schema [, string $table-name [, string $column-name ]]]] )

Returns a result set listing the columns and associated metadata for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. To match all schemas, pass '%'.

table-name

The name of the table or view. To match all tables in the database, pass NULL or an empty string.

column-name

The name of the column. To match all columns in the table, pass NULL or an empty string.

Valor Retornado

Returns a statement resource with a result set containing rows describing the columns matching the specified parameters. The rows are composed of the following columns:

Column name | Description
TABLE_CAT | Name of the catalog. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema.
TABLE_NAME | Name of the table or view.
COLUMN_NAME | Name of the column.
DATA_TYPE | The SQL data type for the column represented as an integer value.
TYPE_NAME | A string representing the data type for the column.
COLUMN_SIZE | An integer value representing the size of the column.
BUFFER_LENGTH | Maximum number of bytes necessary to store data from this column.
DECIMAL_DIGITS | The scale of the column, or NULL where scale is not applicable.
NUM_PREC_RADIX | An integer value of either 10 (representing an exact numeric data type), 2 (representing an approximate numeric data type), or NULL (representing a data type for which radix is not applicable).
NULLABLE | An integer value representing whether the column is nullable or not.
REMARKS | Description of the column.
COLUMN_DEF | Default value for the column.
SQL_DATA_TYPE | An integer value representing the size of the column.
SQL_DATETIME_SUB | Returns an integer value representing a datetime subtype code, or NULL for SQL data types to which this does not apply.
CHAR_OCTET_LENGTH | Maximum length in octets for a character data type column, which matches COLUMN_SIZE for single-byte character set data, or NULL for non-character data types.
ORDINAL_POSITION | The 1-indexed position of the column in the table.
IS_NULLABLE | A string value where 'YES' means that the column is nullable and 'NO' means that the column is not nullable.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_column_privileges
db2_commit
IBM DB2 Funções


Commits a transaction

db2_columns
db2_conn_error
IBM DB2 Funções
PHP Manual

db2_commit

(PECL ibm_db2 >= 1.0.0)

db2_commit — Commits a transaction

Descrição

bool db2_commit ( resource $connection )

Commits an in-progress transaction on the specified connection resource and begins a new transaction. PHP applications normally default to AUTOCOMMIT mode, so db2_commit() is not necessary unless AUTOCOMMIT has been turned off for the connection resource.

Parâmetros

connection

A valid database connection resource variable as returned from db2_connect() or db2_pconnect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • db2_autocommit() - Returns or sets the AUTOCOMMIT state for a database connection
  • db2_rollback() - Rolls back a transaction

db2_columns
db2_conn_error
IBM DB2 Funções


Returns a string containing the SQLSTATE returned by the last connection attempt

db2_commit
db2_conn_errormsg
IBM DB2 Funções
PHP Manual

db2_conn_error

(PECL ibm_db2 >= 1.0.0)

db2_conn_error — Returns a string containing the SQLSTATE returned by the last connection attempt

Descrição

string db2_conn_error ([ resource $connection ] )

db2_conn_error() returns an SQLSTATE value representing the reason the last attempt to connect to a database failed. As db2_connect() returns FALSE in the event of a failed connection attempt, you do not pass any parameters to db2_conn_error() to retrieve the SQLSTATE value.

If, however, the connection was successful but becomes invalid over time, you can pass the connection parameter to retrieve the SQLSTATE value for a specific connection.

To learn what the SQLSTATE value means, you can issue the following command at a DB2 Command Line Processor prompt: db2 '? sqlstate-value'. You can also call db2_conn_errormsg() to retrieve an explicit error message and the associated SQLCODE value.

Parâmetros

connection

A connection resource associated with a connection that initially succeeded, but which over time became invalid.

Valor Retornado

Returns the SQLSTATE value resulting from a failed connection attempt. Returns an empty string if there is no error associated with the last connection attempt.

Exemplos

Exemplo #1 Retrieving an SQLSTATE value for a failed connection attempt

The following example demonstrates how to return an SQLSTATE value after deliberately passing invalid parameters to db2_connect().

<?php
$conn = db2_connect('badname', 'baduser', 'badpassword');
if (!$conn) {
    print "SQLSTATE value: " . db2_conn_error();
}
?>

O exemplo acima irá imprimir:

SQLSTATE value: 08001

Veja Também

  • db2_conn_errormsg() - Returns the last connection error message and SQLCODE value
  • db2_connect() - Returns a connection to a database
  • db2_stmt_error() - Returns a string containing the SQLSTATE returned by an SQL statement
  • db2_stmt_errormsg() - Returns a string containing the last SQL statement error message

db2_commit
db2_conn_errormsg
IBM DB2 Funções


Returns the last connection error message and SQLCODE value

db2_conn_error
db2_connect
IBM DB2 Funções
PHP Manual

db2_conn_errormsg

(PECL ibm_db2 >= 1.0.0)

db2_conn_errormsg — Returns the last connection error message and SQLCODE value

Descrição

string db2_conn_errormsg ([ resource $connection ] )

db2_conn_errormsg() returns an error message and SQLCODE value representing the reason the last database connection attempt failed. As db2_connect() returns FALSE in the event of a failed connection attempt, do not pass any parameters to db2_conn_errormsg() to retrieve the associated error message and SQLCODE value.

If, however, the connection was successful but becomes invalid over time, you can pass the connection parameter to retrieve the associated error message and SQLCODE value for a specific connection.

Parâmetros

connection

A connection resource associated with a connection that initially succeeded, but which over time became invalid.

Valor Retornado

Returns a string containing the error message and SQLCODE value resulting from a failed connection attempt. If there is no error associated with the last connection attempt, db2_conn_errormsg() returns an empty string.

Exemplos

Exemplo #1 Retrieving the error message returned by a failed connection attempt

The following example demonstrates how to return an error message and SQLCODE value after deliberately passing invalid parameters to db2_connect().

<?php
$conn = db2_connect('badname', 'baduser', 'badpassword');
if (!$conn) {
    print db2_conn_errormsg();
}
?>

O exemplo acima irá imprimir:

[IBM][CLI Driver] SQL1013N  The database alias name
or database name "BADNAME" could not be found.  SQLSTATE=42705
 SQLCODE=-1013

Veja Também

  • db2_conn_error() - Returns a string containing the SQLSTATE returned by the last connection attempt
  • db2_connect() - Returns a connection to a database
  • db2_stmt_error() - Returns a string containing the SQLSTATE returned by an SQL statement
  • db2_stmt_errormsg() - Returns a string containing the last SQL statement error message

db2_conn_error
db2_connect
IBM DB2 Funções


Returns a connection to a database

db2_conn_errormsg
db2_cursor_type
IBM DB2 Funções
PHP Manual

db2_connect

(PECL ibm_db2 >= 1.0.0)

db2_connect — Returns a connection to a database

Descrição

resource db2_connect ( string $database , string $username , string $password [, array $options ] )

Creates a new connection to an IBM DB2 Universal Database, IBM Cloudscape, or Apache Derby database.

Parâmetros

database

For a cataloged connection to a database, database represents the database alias in the DB2 client catalog.

For an uncataloged connection to a database, database represents a complete connection string in the following format:

DATABASE=database;HOSTNAME=hostname;PORT=port;PROTOCOL=TCPIP;UID=username;PWD=password;
where the parameters represent the following values:
database

The name of the database.

hostname

The hostname or IP address of the database server.

port

The TCP/IP port on which the database is listening for requests.

username

The username with which you are connecting to the database.

password

The password with which you are connecting to the database.

username

The username with which you are connecting to the database.

For uncataloged connections, you must pass a NULL value or empty string.

password

The password with which you are connecting to the database.

For uncataloged connections, you must pass a NULL value or empty string.

options

An associative array of connection options that affect the behavior of the connection, where valid array keys include:

autocommit

Passing the DB2_AUTOCOMMIT_ON value turns autocommit on for this connection handle.

Passing the DB2_AUTOCOMMIT_OFF value turns autocommit off for this connection handle.

DB2_ATTR_CASE

Passing the DB2_CASE_NATURAL value specifies that column names are returned in natural case.

Passing the DB2_CASE_LOWER value specifies that column names are returned in lower case.

Passing the DB2_CASE_UPPER value specifies that column names are returned in upper case.

CURSOR

Passing the DB2_FORWARD_ONLY value specifies a forward-only cursor for a statement resource. This is the default cursor type and is supported on all database servers.

Passing the DB2_SCROLLABLE value specifies a scrollable cursor for a statement resource. This mode enables random access to rows in a result set, but currently is supported only by IBM DB2 Universal Database.

The following new option is available in ibm_db2 version 1.7.0 and later.

trustedcontext

Passing the DB2_TRUSTED_CONTEXT_ENABLE value turns trusted context on for this connection handle. This parameter cannot be set using db2_set_option().

This key works only if the database is cataloged (even if the database is local), or if you specify the full DSN when you create the connection.

To catalog the database, use following commands:

db2 catalog tcpip node loopback remote <SERVERNAME> server <SERVICENAME>
db2 catalog database <LOCALDBNAME> as <REMOTEDBNAME> at node loopback
db2 "update dbm cfg using svcename <SERVICENAME>"
db2set DB2COMM=TCPIP

The following new i5/OS options are available in ibm_db2 version 1.5.1 and later.

i5_lib

A character value that indicates the default library that will be used for resolving unqualified file references. This is not valid if the connection is using system naming mode.

i5_naming

DB2_I5_NAMING_ON value turns on DB2 UDB CLI iSeries system naming mode. Files are qualified using the slash (/) delimiter. Unqualified files are resolved using the library list for the job.

DB2_I5_NAMING_OFF value turns off DB2 UDB CLI default naming mode, which is SQL naming. Files are qualified using the period (.) delimiter. Unqualified files are resolved using either the default library or the current user ID.

i5_commit

The i5_commit attribute should be set before the db2_connect(). If the value is changed after the connection has been established, and the connection is to a remote data source, the change does not take effect until the next successful db2_connect() for the connection handle.

Nota:

The php.ini setting ibm_db2.i5_allow_commit==0 or DB2_I5_TXN_NO_COMMIT is the default, but may be overridden with the i5_commit option.

DB2_I5_TXN_NO_COMMIT - Commitment control is not used.

DB2_I5_TXN_READ_UNCOMMITTED - Dirty reads, nonrepeatable reads, and phantoms are possible.

DB2_I5_TXN_READ_COMMITTED - Dirty reads are not possible. Nonrepeatable reads, and phantoms are possible.

DB2_I5_TXN_REPEATABLE_READ - Dirty reads and nonrepeatable reads are not possible. Phantoms are possible.

DB2_I5_TXN_SERIALIZABLE - Transactions are serializable. Dirty reads, non-repeatable reads, and phantoms are not possible

i5_query_optimize

DB2_FIRST_IO All queries are optimized with the goal of returning the first page of output as fast as possible. This goal works well when the output is controlled by a user who is most likely to cancel the query after viewing the first page of output data. Queries coded with an OPTIMIZE FOR nnn ROWS clause honor the goal specified by the clause.

DB2_ALL_IO All queries are optimized with the goal of running the entire query to completion in the shortest amount of elapsed time. This is a good option when the output of a query is being written to a file or report, or the interface is queuing the output data. Queries coded with an OPTIMIZE FOR nnn ROWS clause honor the goal specified by the clause. This is the default.

i5_dbcs_alloc

DB2_I5_DBCS_ALLOC_ON value turns on DB2 6X allocation scheme for DBCS translation column size growth.

DB2_I5_DBCS_ALLOC_OFF value turns off DB2 6X allocation scheme for DBCS translation column size growth.

Note: php.ini setting ibm_db2.i5_dbcs_alloc==0 or DB2_I5_DBCS_ALLOC_OFF is the default, but may be overridden with the i5_dbcs_alloc option.

i5_date_fmt

DB2_I5_FMT_ISO - The International Organization for Standardization (ISO) date format yyyy-mm-dd is used. This is the default.

DB2_I5_FMT_USA - The United States date format mm/dd/yyyy is used.

DB2_I5_FMT_EUR - The European date format dd.mm.yyyy is used.

DB2_I5_FMT_JIS - The Japanese Industrial Standard date format yyyy-mm-dd is used.

DB2_I5_FMT_MDY - The date format mm/dd/yyyy is used.

DB2_I5_FMT_DMY - The date format dd/mm/yyyy is used.

DB2_I5_FMT_YMD - The date format yy/mm/dd is used.

DB2_I5_FMT_JUL - The Julian date format yy/ddd is used.

DB2_I5_FMT_JOB - The job default is used.

i5_date_sep

DB2_I5_SEP_SLASH - A slash ( / ) is used as the date separator. This is the default.

DB2_I5_SEP_DASH - A dash ( - ) is used as the date separator.

DB2_I5_SEP_PERIOD - A period ( . ) is used as the date separator.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the date separator.

DB2_I5_SEP_BLANK - A blank is used as the date separator.

DB2_I5_SEP_JOB - The job default is used

i5_time_fmt

DB2_I5_FMT_ISO - The International Organization for Standardization (ISO) time format hh.mm.ss is used. This is the default.

DB2_I5_FMT_USA - The United States time format hh:mmxx is used, where xx is AM or PM.

DB2_I5_FMT_EUR - The European time format hh.mm.ss is used.

DB2_I5_FMT_JIS - The Japanese Industrial Standard time format hh:mm:ss is used.

DB2_I5_FMT_HMS - The hh:mm:ss format is used.

i5_time_sep

DB2_I5_SEP_COLON - A colon ( : ) is used as the time separator. This is the default.

DB2_I5_SEP_PERIOD - A period ( . ) is used as the time separator.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the time separator.

DB2_I5_SEP_BLANK - A blank is used as the time separator.

DB2_I5_SEP_JOB - The job default is used.

i5_decimal_sep

DB2_I5_SEP_PERIOD - A period ( . ) is used as the decimal separator. This is the default.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the decimal separator.

DB2_I5_SEP_JOB - The job default is used.

The following new i5/OS option is available in ibm_db2 version 1.8.0 and later.

i5_libl

A character value that indicates the library list that will be used for resolving unqualified file references. Specify the library list elements separated by blanks 'i5_libl'=>"MYLIB YOURLIB ANYLIB".

Nota:

i5_libl calls qsys2/qcmdexc('cmd',cmdlen), which is only available in i5/OS V5R4 and later.

Valor Retornado

Returns a connection handle resource if the connection attempt is successful. If the connection attempt fails, db2_connect() returns FALSE.

Exemplos

Exemplo #1 Creating a cataloged connection

Cataloged connections require you to have previously cataloged the target database through the DB2 Command Line Processor (CLP) or DB2 Configuration Assistant.

<?php
$database = 'SAMPLE';
$user = 'db2inst1';
$password = 'ibmdb2';

$conn = db2_connect($database, $user, $password);

if ($conn) {
    echo "Connection succeeded.";
    db2_close($conn);
}
else {
    echo "Connection failed.";
}
?>

O exemplo acima irá imprimir:

Connection succeeded.

Exemplo #2 Creating an uncataloged connection

An uncataloged connection enables you to dynamically connect to a database.

<?php
$database = 'SAMPLE';
$user = 'db2inst1';
$password = 'ibmdb2';
$hostname = 'localhost';
$port = 50000;

$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;" .
  "HOSTNAME=$hostname;PORT=$port;PROTOCOL=TCPIP;UID=$user;PWD=$password;";
$conn = db2_connect($conn_string, '', '');

if ($conn) {
    echo "Connection succeeded.";
    db2_close($conn);
}
else {
    echo "Connection failed.";
}
?>

O exemplo acima irá imprimir:

Connection succeeded.

Exemplo #3 Creating a connection with autocommit off by default

Passing an array of options to db2_connect() enables you to modify the default behavior of the connection handle.

<?php
$database = 'SAMPLE';
$user = 'db2inst1';
$password = 'ibmdb2';
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF);

$conn = db2_connect($database, $user, $password, $options);

if ($conn) {
    echo "Connection succeeded.\n";
    if (db2_autocommit($conn)) {
         echo "Autocommit is on.\n";
    }
    else {
         echo "Autocommit is off.\n";
    }
    db2_close($conn);
}
else {
    echo "Connection failed.";
}
?>

O exemplo acima irá imprimir:

Connection succeeded.
Autocommit is off.

Exemplo #4 i5/OS best performance

To achieve best performance for your i5/OS ibm_db2 1.5.1 PHP application use the default host, userid, and password for your db2_connect().

<?php
  $library = "ADC";
  $i5 = db2_connect("", "", "", array("i5_lib"=>"qsys2"));
  $result = db2_exec($i5,
       "select * from systables where table_schema = '$library'");
  while ($row = db2_fetch_both($result)) {
     echo $row['TABLE_NAME']."</br>";
  }
  db2_close($i5);
?>

O exemplo acima irá imprimir:

ANIMALS
NAMES
PICTURES

Exemplo #5 Using trusted context

The following example shows how to enable trusted context, switch users, and get the current user ID.

<?php

$database = "SAMPLE";
$hostname = "localhost";
$port = 50000;
$authID = "db2inst1";
$auth_pass = "ibmdb2";

$tc_user = "tcuser";
$tc_pass = "tcpassword";

$dsn = "DATABASE=$database;HOSTNAME=$hostname;PORT=$port;
  PROTOCOL=TCPIP;UID=$authID;PWD=$auth_pass;";
$options = array ("trustedcontext" => DB2_TRUSTED_CONTEXT_ENABLE);

$tc_conn = db2_connect($dsn, "", "", $options);
if($tc_conn) {
    echo "Explicit trusted connection succeeded.\n";

    if(db2_get_option($tc_conn, "trustedcontext")) {
        $userBefore = db2_get_option($tc_conn, "trusted_user");

        //Do some work as user 1.

        //Switching to trusted user.
        $parameters = array("trusted_user" => $tc_user,
          "trusted_password" => $tcuser_pass);
        $res = db2_set_option ($tc_conn, $parameters, 1);

        $userAfter = db2_get_option($tc_conn, "trusted_user");
        //Do more work as trusted user.

        if($userBefore != $userAfter) {
            echo "User has been switched." . "\n";
        }
    }

    db2_close($tc_conn);
}
else {
    echo "Explicit trusted connection failed.\n";
}
?>

O exemplo acima irá imprimir:

Explicit trusted connection succeeded.
User has been switched.

Veja Também

  • db2_close() - Closes a database connection
  • db2_pconnect() - Returns a persistent connection to a database

db2_conn_errormsg
db2_cursor_type
IBM DB2 Funções


Returns the cursor type used by a statement resource

db2_connect
db2_escape_string
IBM DB2 Funções
PHP Manual

db2_cursor_type

(PECL ibm_db2 >= 1.0.0)

db2_cursor_type — Returns the cursor type used by a statement resource

Descrição

int db2_cursor_type ( resource $stmt )

Returns the cursor type used by a statement resource. Use this to determine if you are working with a forward-only cursor or scrollable cursor.

Parâmetros

stmt

A valid statement resource.

Valor Retornado

Returns either DB2_FORWARD_ONLY if the statement resource uses a forward-only cursor or DB2_SCROLLABLE if the statement resource uses a scrollable cursor.

Veja Também

  • db2_prepare() - Prepares an SQL statement to be executed

db2_connect
db2_escape_string
IBM DB2 Funções


Used to escape certain characters

db2_cursor_type
db2_exec
IBM DB2 Funções
PHP Manual

db2_escape_string

(PECL ibm_db2 >= 1.6.0)

db2_escape_string — Used to escape certain characters

Descrição

string db2_escape_string ( string $string_literal )

Prepends backslashes to special characters in the string argument.

Parâmetros

string_literal

The string that contains special characters that need to be modified. Characters that are prepended with a backslash are \x00, \n, \r, \, ', " and \x1a.

Valor Retornado

Returns string_literal with the special characters noted above prepended with backslashes.

Exemplos

Exemplo #1 A db2_escape_string() example

Result of using the db2_escape_string() function

<?php

$conn = db2_connect($database, $user, $password);

if ($conn) {
    $str[0] = "All characters: \x00 , \n , \r , \ , ' , \" , \x1a .";
    $str[1] = "Backslash (\). Single quote ('). Double quote (\")";
    $str[2] = "The NULL character \0 must be quoted as well";
    $str[3] = "Intersting characters: \x1a , \x00 .";
    $str[4] = "Nothing to quote";
    $str[5] = 200676;
    $str[6] = "";

    foreach( $str as $string ) {
        echo "db2_escape_string: " . db2_escape_string($string). "\n";
    }
}
?>

O exemplo acima irá imprimir:

db2_escape_string: All characters: \0 , \n , \r , \\ , \' , \" , \Z .
db2_escape_string: Backslash (\\). Single quote (\'). Double quote (\")
db2_escape_string: The NULL character \0 must be quoted as well
db2_escape_string: Intersting characters: \Z , \0 .
db2_escape_string: Nothing to quote
db2_escape_string: 200676
db2_escape_string:

Veja Também

  • db2_prepare() - Prepares an SQL statement to be executed

db2_cursor_type
db2_exec
IBM DB2 Funções


Executes an SQL statement directly

db2_escape_string
db2_execute
IBM DB2 Funções
PHP Manual

db2_exec

(PECL ibm_db2 >= 1.0.0)

db2_exec — Executes an SQL statement directly

Descrição

resource db2_exec ( resource $connection , string $statement [, array $options ] )

Executes an SQL statement directly.

If you plan to interpolate PHP variables into the SQL statement, understand that this is one of the more common security exposures. Consider calling db2_prepare() to prepare an SQL statement with parameter markers for input values. Then you can call db2_execute() to pass in the input values and avoid SQL injection attacks.

If you plan to repeatedly issue the same SQL statement with different parameters, consider calling db2_prepare() and db2_execute() to enable the database server to reuse its access plan and increase the efficiency of your database access.

Parâmetros

connection

A valid database connection resource variable as returned from db2_connect() or db2_pconnect().

statement

An SQL statement. The statement cannot contain any parameter markers.

options

An associative array containing statement options. You can use this parameter to request a scrollable cursor on database servers that support this functionality.

For a description of valid statement options, see db2_set_option().

Valor Retornado

Returns a statement resource if the SQL statement was issued successfully, or FALSE if the database failed to execute the SQL statement.

Exemplos

Exemplo #1 Creating a table with db2_exec()

The following example uses db2_exec() to issue a set of DDL statements in the process of creating a table.

<?php
$conn = db2_connect($database, $user, $password);

// Create the test table
$create = 'CREATE TABLE animals (id INTEGER, breed VARCHAR(32),
    name CHAR(16), weight DECIMAL(7,2))';
$result = db2_exec($conn, $create);
if ($result) {
    print "Successfully created the table.\n";
}

// Populate the test table
$animals = array(
    array(0, 'cat', 'Pook', 3.2),
    array(1, 'dog', 'Peaches', 12.3),
    array(2, 'horse', 'Smarty', 350.0),
    array(3, 'gold fish', 'Bubbles', 0.1),
    array(4, 'budgerigar', 'Gizmo', 0.2),
    array(5, 'goat', 'Rickety Ride', 9.7),
    array(6, 'llama', 'Sweater', 150)
);

foreach ($animals as $animal) {
    $rc = db2_exec($conn, "INSERT INTO animals (id, breed, name, weight)
      VALUES ({$animal[0]}, '{$animal[1]}', '{$animal[2]}', {$animal[3]})");
    if ($rc) {
        print "Insert... ";
    }
}
?>

O exemplo acima irá imprimir:

Successfully created the table.
Insert... Insert... Insert... Insert... Insert... Insert... Insert...

Exemplo #2 Executing a SELECT statement with a scrollable cursor

The following example demonstrates how to request a scrollable cursor for an SQL statement issued by db2_exec().

<?php
$conn = db2_connect($database, $user, $password);
$sql = "SELECT name FROM animals
    WHERE weight < 10.0
    ORDER BY name";
if ($conn) {
    require_once('prepare.inc');
    $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
    while ($row = db2_fetch_array($stmt)) {
        print "$row[0]\n";
    }
}
?>

O exemplo acima irá imprimir:

Bubbles
Gizmo
Pook
Rickety Ride

Exemplo #3 Returning XML data as an SQL ResultSet

The following example demonstrates how to work with documents stored in a XML column using the SAMPLE database. Using some pretty simple SQL/XML, this example returns some of the nodes in a XML document in an SQL ResultSet format that most users are familiar with.

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = 'SELECT * FROM XMLTABLE(
    XMLNAMESPACES (DEFAULT \'http://posample.org\'),
    \'db2-fn:xmlcolumn("CUSTOMER.INFO")/customerinfo\'
    COLUMNS
    "CID" VARCHAR (50) PATH \'@Cid\',
    "NAME" VARCHAR (50) PATH \'name\',
    "PHONE" VARCHAR (50) PATH \'phone [ @type = "work"]\'
    ) AS T
    WHERE NAME = \'Kathy Smith\'
    ';
$stmt = db2_exec($conn, $query);

while($row = db2_fetch_object($stmt)){
    printf("$row->CID     $row->NAME     $row->PHONE\n");
}
db2_close($conn);

?>

O exemplo acima irá imprimir:

1000     Kathy Smith     416-555-1358
1001     Kathy Smith     905-555-7258

Exemplo #4 Performing a "JOIN" with XML data

The following example works with documents stored in 2 different XML columns in the SAMPLE database. It creates 2 temporary tables from the XML documents from 2 different columns and returns an SQL ResultSet with information regarding shipping status for the customer.

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = '
    SELECT A.CID, A.NAME, A.PHONE, C.PONUM, C.STATUS
    FROM
    XMLTABLE(
    XMLNAMESPACES (DEFAULT \'http://posample.org\'),
    \'db2-fn:xmlcolumn("CUSTOMER.INFO")/customerinfo\'
    COLUMNS
    "CID" BIGINT PATH \'@Cid\',
    "NAME" VARCHAR (50) PATH \'name\',
    "PHONE" VARCHAR (50) PATH \'phone [ @type = "work"]\'
    ) as A,
    PURCHASEORDER AS B,
    XMLTABLE (
    XMLNAMESPACES (DEFAULT \'http://posample.org\'),
    \'db2-fn:xmlcolumn("PURCHASEORDER.PORDER")/PurchaseOrder\'
    COLUMNS
    "PONUM"  BIGINT PATH \'@PoNum\',
    "STATUS" VARCHAR (50) PATH \'@Status\'
    ) as C
    WHERE A.CID = B.CUSTID AND
    B.POID = C.PONUM AND
    A.NAME = \'Kathy Smith\'
';

$stmt = db2_exec($conn, $query);

while($row = db2_fetch_object($stmt)){
    printf("$row->CID     $row->NAME     $row->PHONE     $row->PONUM     $row->STATUS\n");
}

db2_close($conn);

?>

O exemplo acima irá imprimir:

1001     Kathy Smith     905-555-7258     5002     Shipped

Exemplo #5 Returning SQL data as part of a larger XML document

The following example works with a portion of the PRODUCT.DESCRIPTION documents in the SAMPLE database. It creates a XML document containing product description (XML data) and pricing info (SQL data).

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = '
SELECT
XMLSERIALIZE(
XMLQUERY(\'
    declare boundary-space strip;
    declare default element namespace "http://posample.org";
    <promoList> {
    for $prod in $doc/product
    where $prod/description/price < 10.00
    order by $prod/description/price ascending
    return(
        <promoitem> {
        $prod,
        <startdate> {$start} </startdate>,
        <enddate> {$end} </enddate>,
        <promoprice> {$promo} </promoprice>
        } </promoitem>
    )
    } </promoList>
\' passing by ref DESCRIPTION AS "doc",
PROMOSTART as "start",
PROMOEND as "end",
PROMOPRICE as "promo"
RETURNING SEQUENCE)
AS CLOB (32000))
AS NEW_PRODUCT_INFO
FROM PRODUCT
WHERE PID = \'100-100-01\'
';

$stmt = db2_exec($conn, $query);

while($row = db2_fetch_array($stmt)){
    printf("$row[0]\n");
}
db2_close($conn);

?>

O exemplo acima irá imprimir:

<promoList xmlns="http://posample.org">
    <promoitem>
    <product pid="100-100-01">
        <description>
            <name>Snow Shovel, Basic 22 inch</name>
            <details>Basic Snow Shovel, 22 inches wide, straight handle with D-Grip</details>
            <price>9.99</price>
            <weight>1 kg</weight>
        </description>
    </product>
    <startdate>2004-11-19</startdate>
    <enddate>2004-12-19</enddate>
    <promoprice>7.25</promoprice>
    </promoitem>
</promoList>

Veja Também

  • db2_execute() - Executes a prepared SQL statement
  • db2_prepare() - Prepares an SQL statement to be executed

db2_escape_string
db2_execute
IBM DB2 Funções


Executes a prepared SQL statement

db2_exec
db2_fetch_array
IBM DB2 Funções
PHP Manual

db2_execute

(PECL ibm_db2 >= 1.0.0)

db2_execute — Executes a prepared SQL statement

Descrição

bool db2_execute ( resource $stmt [, array $parameters ] )

db2_execute() executes an SQL statement that was prepared by db2_prepare().

If the SQL statement returns a result set, for example, a SELECT statement or a CALL to a stored procedure that returns one or more result sets, you can retrieve a row as an array from the stmt resource using db2_fetch_assoc(), db2_fetch_both(), or db2_fetch_array(). Alternatively, you can use db2_fetch_row() to move the result set pointer to the next row and fetch a column at a time from that row with db2_result().

Refer to db2_prepare() for a brief discussion of the advantages of using db2_prepare() and db2_execute() rather than db2_exec().

Parâmetros

stmt

A prepared statement returned from db2_prepare().

parameters

An array of input parameters matching any parameter markers contained in the prepared statement.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Preparing and executing an SQL statement with parameter markers

The following example prepares an INSERT statement that accepts four parameter markers, then iterates over an array of arrays containing the input values to be passed to db2_execute().

<?php
$pet = array(0, 'cat', 'Pook', 3.2);

$insert = 'INSERT INTO animals (id, breed, name, weight)
    VALUES (?, ?, ?, ?)';

$stmt = db2_prepare($conn, $insert);
if ($stmt) {
    $result = db2_execute($stmt, $pet);
    if ($result) {
        print "Successfully added new pet.";
    }
}
?>

O exemplo acima irá imprimir:

Successfully added new pet.

Exemplo #2 Calling a stored procedure with an OUT parameter

The following example prepares a CALL statement that accepts one parameter marker representing an OUT parameter, binds the PHP variable $my_pets to the parameter using db2_bind_param(), then issues db2_execute() to execute the CALL statement. After the CALL to the stored procedure has been made, the value of $num_pets changes to reflect the value returned by the stored procedure for that OUT parameter.

<?php
$num_pets = 0;
$res = db2_prepare($conn, "CALL count_my_pets(?)");
$rc = db2_bind_param($res, 1, "num_pets", DB2_PARAM_OUT);
$rc = db2_execute($res);
print "I have $num_pets pets!";
?>

O exemplo acima irá imprimir:

I have 7 pets!

Exemplo #3 Returning XML data as an SQL ResultSet

The following example demonstrates how to work with documents stored in a XML column using the SAMPLE database. Using some pretty simple SQL/XML, this example returns some of the nodes in a XML document in an SQL ResultSet format that most users are familiar with.

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = 'SELECT * FROM XMLTABLE(
    XMLNAMESPACES (DEFAULT \'http://posample.org\'),
    \'db2-fn:xmlcolumn("CUSTOMER.INFO")/customerinfo\'
    COLUMNS
    "CID" VARCHAR (50) PATH \'@Cid\',
    "NAME" VARCHAR (50) PATH \'name\',
    "PHONE" VARCHAR (50) PATH \'phone [ @type = "work"]\'
    ) AS T
    WHERE NAME = ?
    ';

$stmt = db2_prepare($conn, $query);

$name = 'Kathy Smith';

if ($stmt) {
    db2_bind_param($stmt, 1, "name", DB2_PARAM_IN);
    db2_execute($stmt);

    while($row = db2_fetch_object($stmt)){
    printf("$row->CID     $row->NAME     $row->PHONE\n");
    }
}
db2_close($conn);

?>

O exemplo acima irá imprimir:

1000     Kathy Smith     416-555-1358
1001     Kathy Smith     905-555-7258

Exemplo #4 Performing a "JOIN" with XML data

The following example works with documents stored in 2 different XML columns in the SAMPLE database. It creates 2 temporary tables from the XML documents from 2 different columns and returns an SQL ResultSet with information regarding shipping status for the customer.

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = '
SELECT A.CID, A.NAME, A.PHONE, C.PONUM, C.STATUS
FROM
XMLTABLE(
XMLNAMESPACES (DEFAULT \'http://posample.org\'),
\'db2-fn:xmlcolumn("CUSTOMER.INFO")/customerinfo\'
COLUMNS
"CID" BIGINT PATH \'@Cid\',
"NAME" VARCHAR (50) PATH \'name\',
"PHONE" VARCHAR (50) PATH \'phone [ @type = "work"]\'
) as A,
PURCHASEORDER AS B,
XMLTABLE (
XMLNAMESPACES (DEFAULT \'http://posample.org\'),
\'db2-fn:xmlcolumn("PURCHASEORDER.PORDER")/PurchaseOrder\'
COLUMNS
"PONUM"  BIGINT PATH \'@PoNum\',
"STATUS" VARCHAR (50) PATH \'@Status\'
) as C
WHERE A.CID = B.CUSTID AND
    B.POID = C.PONUM AND
    A.NAME = ?
';

$stmt = db2_prepare($conn, $query);

$name = 'Kathy Smith';

if ($stmt) {
    db2_bind_param($stmt, 1, "name", DB2_PARAM_IN);
    db2_execute($stmt);

    while($row = db2_fetch_object($stmt)){
    printf("$row->CID     $row->NAME     $row->PHONE     $row->PONUM     $row->STATUS\n");
    }
}

db2_close($conn);

?>

O exemplo acima irá imprimir:

1001     Kathy Smith     905-555-7258     5002     Shipped

Exemplo #5 Returning SQL data as part of a larger XML document

The following example works with a portion of the PRODUCT.DESCRIPTION documents in the SAMPLE database. It creates a XML document containing product description (XML data) and pricing info (SQL data).

<?php

$conn = db2_connect("SAMPLE", "db2inst1", "ibmdb2");

$query = '
SELECT
XMLSERIALIZE(
XMLQUERY(\'
    declare boundary-space strip;
    declare default element namespace "http://posample.org";
    <promoList> {
    for $prod in $doc/product
    where $prod/description/price < 10.00
    order by $prod/description/price ascending
    return(
        <promoitem> {
        $prod,
        <startdate> {$start} </startdate>,
        <enddate> {$end} </enddate>,
        <promoprice> {$promo} </promoprice>
            } </promoitem>
    )
    } </promoList>
\' passing by ref DESCRIPTION AS "doc",
PROMOSTART as "start",
PROMOEND as "end",
PROMOPRICE as "promo"
RETURNING SEQUENCE)
AS CLOB (32000))
AS NEW_PRODUCT_INFO
FROM PRODUCT
WHERE PID = ?
';

$stmt = db2_prepare($conn, $query);

$pid = "100-100-01";

if ($stmt) {
    db2_bind_param($stmt, 1, "pid", DB2_PARAM_IN);
    db2_execute($stmt);

    while($row = db2_fetch_array($stmt)){
    printf("$row[0]\n");
    }
}

db2_close($conn);

?>

O exemplo acima irá imprimir:

<promoList xmlns="http://posample.org">
    <promoitem>
    <product pid="100-100-01">
        <description>
            <name>Snow Shovel, Basic 22 inch</name>
            <details>Basic Snow Shovel, 22 inches wide, straight handle with D-Grip</details>
            <price>9.99</price>
            <weight>1 kg</weight>
        </description>
    </product>
    <startdate>2004-11-19</startdate>
    <enddate>2004-12-19</enddate>
    <promoprice>7.25</promoprice>
    </promoitem>
</promoList>

Veja Também

  • db2_exec() - Executes an SQL statement directly
  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_prepare() - Prepares an SQL statement to be executed
  • db2_result() - Returns a single column from a row in the result set

db2_exec
db2_fetch_array
IBM DB2 Funções


Returns an array, indexed by column position, representing a row in a result set

db2_execute
db2_fetch_assoc
IBM DB2 Funções
PHP Manual

db2_fetch_array

(PECL ibm_db2 >= 1.0.1)

db2_fetch_array — Returns an array, indexed by column position, representing a row in a result set

Descrição

array db2_fetch_array ( resource $stmt [, int $row_number = -1 ] )

Returns an array, indexed by column position, representing a row in a result set. The columns are 0-indexed.

Parâmetros

stmt

A valid stmt resource containing a result set.

row_number

Requests a specific 1-indexed row from the result set. Passing this parameter results in a PHP warning if the result set uses a forward-only cursor.

Valor Retornado

Returns a 0-indexed array with column values indexed by the column position representing the next or requested row in the result set. Returns FALSE if there are no rows left in the result set, or if the row requested by row_number does not exist in the result set.

Exemplos

Exemplo #1 Iterating through a forward-only cursor

If you call db2_fetch_array() without a specific row number, it automatically retrieves the next row in the result set.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);

while ($row = db2_fetch_array($stmt)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row[0], $row[1], $row[2], $row[3]);
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Exemplo #2 Retrieving specific rows with db2_fetch_array() from a scrollable cursor

If your result set uses a scrollable cursor, you can call db2_fetch_array() with a specific row number. The following example retrieves every other row in the result set, starting with the second row.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));

$i=2;
while ($row = db2_fetch_array($result, $i)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row[0], $row[1], $row[2], $row[3]);
    $i = $i + 2;
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Veja Também

  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_object() - Returns an object with properties representing columns in the fetched row
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_result() - Returns a single column from a row in the result set

db2_execute
db2_fetch_assoc
IBM DB2 Funções


Returns an array, indexed by column name, representing a row in a result set

db2_fetch_array
db2_fetch_both
IBM DB2 Funções
PHP Manual

db2_fetch_assoc

(PECL ibm_db2 >= 1.0.0)

db2_fetch_assoc — Returns an array, indexed by column name, representing a row in a result set

Descrição

array db2_fetch_assoc ( resource $stmt [, int $row_number = -1 ] )

Returns an array, indexed by column name, representing a row in a result set.

Parâmetros

stmt

A valid stmt resource containing a result set.

row_number

Requests a specific 1-indexed row from the result set. Passing this parameter results in a PHP warning if the result set uses a forward-only cursor.

Valor Retornado

Returns an associative array with column values indexed by the column name representing the next or requested row in the result set. Returns FALSE if there are no rows left in the result set, or if the row requested by row_number does not exist in the result set.

Exemplos

Exemplo #1 Iterating through a forward-only cursor

If you call db2_fetch_assoc() without a specific row number, it automatically retrieves the next row in the result set.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);

while ($row = db2_fetch_assoc($stmt)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row['ID'], $row['NAME'], $row['BREED'], $row['WEIGHT']);
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Exemplo #2 Retrieving specific rows with db2_fetch_assoc() from a scrollable cursor

If your result set uses a scrollable cursor, you can call db2_fetch_assoc() with a specific row number. The following example retrieves every other row in the result set, starting with the second row.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));

$i=2;
while ($row = db2_fetch_assoc($result, $i)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row['ID'], $row['NAME'], $row['BREED'], $row['WEIGHT']);
    $i = $i + 2;
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Veja Também

  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_object() - Returns an object with properties representing columns in the fetched row
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_result() - Returns a single column from a row in the result set

db2_fetch_array
db2_fetch_both
IBM DB2 Funções


Returns an array, indexed by both column name and position, representing a row in a result set

db2_fetch_assoc
db2_fetch_object
IBM DB2 Funções
PHP Manual

db2_fetch_both

(PECL ibm_db2 >= 1.0.0)

db2_fetch_both — Returns an array, indexed by both column name and position, representing a row in a result set

Descrição

array db2_fetch_both ( resource $stmt [, int $row_number = -1 ] )

Returns an array, indexed by both column name and position, representing a
row in a result set. Note that the row returned by
db2_fetch_both() requires more memory than the
single-indexed arrays returned by db2_fetch_assoc() or
db2_fetch_array().

Parâmetros

stmt

A valid stmt resource containing a result set.

row_number

Requests a specific 1-indexed row from the result set. Passing this parameter results in a PHP warning if the result set uses a forward-only cursor.

Valor Retornado

Returns an associative array with column values indexed by both the column name and 0-indexed column number. The array represents the next or requested row in the result set. Returns FALSE if there are no rows left in the result set, or if the row requested by row_number does not exist in the result set.

Exemplos

Exemplo #1 Iterating through a forward-only cursor

If you call db2_fetch_both() without a specific row number, it automatically retrieves the next row in the result set. The following example accesses columns in the returned array by both column name and by numeric index.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);

while ($row = db2_fetch_both($stmt)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row['ID'], $row[0], $row['BREED'], $row[3]);
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Exemplo #2 Retrieving specific rows with db2_fetch_both() from a scrollable cursor

If your result set uses a scrollable cursor, you can call db2_fetch_both() with a specific row number. The following example retrieves every other row in the result set, starting with the second row.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));

$i=2;
while ($row = db2_fetch_both($result, $i)) {
    printf ("%-5d %-16s %-32s %10s\n",
        $row[0], $row['NAME'], $row[2], $row['WEIGHT']);
    $i = $i + 2;
}
?>

O exemplo acima irá imprimir:

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

Veja Também

  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_object() - Returns an object with properties representing columns in the fetched row
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_result() - Returns a single column from a row in the result set

db2_fetch_assoc
db2_fetch_object
IBM DB2 Funções


Returns an object with properties representing columns in the fetched row

db2_fetch_both
db2_fetch_row
IBM DB2 Funções
PHP Manual

db2_fetch_object

(PECL ibm_db2 >= 1.0.0)

db2_fetch_object — Returns an object with properties representing columns in the fetched row

Descrição

object db2_fetch_object ( resource $stmt [, int $row_number = -1 ] )

Returns an object in which each property represents a column returned in the row fetched from a result set.

Parâmetros

stmt

A valid stmt resource containing a result set.

row_number

Requests a specific 1-indexed row from the result set. Passing this parameter results in a PHP warning if the result set uses a forward-only cursor.

Valor Retornado

Returns an object representing a single row in the result set. The properties of the object map to the names of the columns in the result set.

The IBM DB2, Cloudscape, and Apache Derby database servers typically fold column names to upper-case, so the object properties will reflect that case.

If your SELECT statement calls a scalar function to modify the value of a column, the database servers return the column number as the name of the column in the result set. If you prefer a more descriptive column name and object property, you can use the AS clause to assign a name to the column in the result set.

Returns FALSE if no row was retrieved.

Exemplos

Exemplo #1 A db2_fetch_object() example

The following example issues a SELECT statement with a scalar function, RTRIM, that removes whitespace from the end of the column. Rather than creating an object with the properties "BREED" and "2", we use the AS clause in the SELECT statement to assign the name "name" to the modified column. The database server folds the column names to upper-case, resulting in an object with the properties "BREED" and "NAME".

<?php
$conn = db2_connect($database, $user, $password);

$sql = "SELECT breed, RTRIM(name) AS name
    FROM animals
    WHERE id = ?";

if ($conn) {
    $stmt = db2_prepare($conn, $sql);
    db2_execute($stmt, array(0));

    while ($pet = db2_fetch_object($stmt)) {
        echo "Come here, {$pet->NAME}, my little {$pet->BREED}!";
    }
    db2_close($conn);
}
?>

O exemplo acima irá imprimir:

Come here, Pook, my little cat!

Veja Também

  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_result() - Returns a single column from a row in the result set

db2_fetch_both
db2_fetch_row
IBM DB2 Funções


Sets the result set pointer to the next row or requested row

db2_fetch_object
db2_field_display_size
IBM DB2 Funções
PHP Manual

db2_fetch_row

(PECL ibm_db2 >= 1.0.0)

db2_fetch_row — Sets the result set pointer to the next row or requested row

Descrição

bool db2_fetch_row ( resource $stmt [, int $row_number ] )

Use db2_fetch_row() to iterate through a result set, or to point to a specific row in a result set if you requested a scrollable cursor.

To retrieve individual fields from the result set, call the db2_result() function.

Rather than calling db2_fetch_row() and db2_result(), most applications will call one of db2_fetch_assoc(), db2_fetch_both(), or db2_fetch_array() to advance the result set pointer and return a complete row as an array.

Parâmetros

stmt

A valid stmt resource.

row_number

With scrollable cursors, you can request a specific row number in the result set. Row numbering is 1-indexed.

Valor Retornado

Returns TRUE if the requested row exists in the result set. Returns FALSE if the requested row does not exist in the result set.

Exemplos

Exemplo #1 Iterating through a result set

The following example demonstrates how to iterate through a result set with db2_fetch_row() and retrieve columns from the result set with db2_result().

<?php
$sql = 'SELECT name, breed FROM animals WHERE weight < ?';
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, array(10));
while (db2_fetch_row($stmt)) {
    $name = db2_result($stmt, 0);
    $breed = db2_result($stmt, 1);
    print "$name $breed";
}
?>

O exemplo acima irá imprimir:

cat Pook
gold fish Bubbles
budgerigar Gizmo
goat Rickety Ride

Exemplo #2 i5/OS recommended alternatives to db2_fetch_row/db2_result

On i5/OS it is recommended that you use db2_fetch_both(), db2_fetch_array(), or db2_fetch_object() over db2_fetch_row()/db2_result(). In general db2_fetch_row()/db2_result() have more issues with various column types in EBCIDIC to ASCII translation, including possible truncation in DBCS applications. You may also find the performance of db2_fetch_both(), db2_fetch_array(), and db2_fetch_object() to be superior to db2_fetch_row()/db2_result().

<?php
  $conn = db2_connect("","","");
  $sql = 'SELECT SPECIFIC_SCHEMA, SPECIFIC_NAME, ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE, ROUTINE_CREATED, ROUTINE_BODY, IN_PARMS, OUT_PARMS, INOUT_PARMS, PARAMETER_STYLE, EXTERNAL_NAME, EXTERNAL_LANGUAGE FROM QSYS2.SYSROUTINES FETCH FIRST 2 ROWS ONLY';
  $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
  while ($row = db2_fetch_both($stmt)){
    echo "<br>db2_fetch_both {$row['SPECIFIC_NAME']} {$row['ROUTINE_CREATED']} {$row[5]}";
  }
  $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
  while ($row = db2_fetch_array($stmt)){
    echo "<br>db2_fetch_array {$row[1]}  {$row[5]}";
  }
  $stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
  while ($row = db2_fetch_object($stmt)){
    echo "<br>db2_fetch_object {$row->SPECIFIC_NAME} {$row->ROUTINE_CREATED}";
  }
  db2_close($conn);
?>

O exemplo acima irá imprimir:

db2_fetch_both MATCH_ANIMAL 2006-08-25-17.10.23.775000 2006-08-25-17.10.23.775000
db2_fetch_both MULTIRESULTS 2006-10-17-10.11.05.308000 2006-10-17-10.11.05.308000
db2_fetch_array MATCH_ANIMAL 2006-08-25-17.10.23.775000
db2_fetch_array MULTIRESULTS 2006-10-17-10.11.05.308000
db2_fetch_object MATCH_ANIMAL 2006-08-25-17.10.23.775000
db2_fetch_object MULTIRESULTS 2006-10-17-10.11.05.308000

Veja Também

  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_object() - Returns an object with properties representing columns in the fetched row
  • db2_result() - Returns a single column from a row in the result set

db2_fetch_object
db2_field_display_size
IBM DB2 Funções


Returns the maximum number of bytes required to display a column

db2_fetch_row
db2_field_name
IBM DB2 Funções
PHP Manual

db2_field_display_size

(PECL ibm_db2 >= 1.0.0)

db2_field_display_size — Returns the maximum number of bytes required to display a column

Descrição

int db2_field_display_size ( resource $stmt , mixed $column )

Returns the maximum number of bytes required to display a column in a result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns an integer value with the maximum number of bytes required to display the specified column. If the column does not exist in the result set, db2_field_display_size() returns FALSE.

Veja Também

  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_fetch_row
db2_field_name
IBM DB2 Funções


Returns the name of the column in the result set

db2_field_display_size
db2_field_num
IBM DB2 Funções
PHP Manual

db2_field_name

(PECL ibm_db2 >= 1.0.0)

db2_field_name — Returns the name of the column in the result set

Descrição

string db2_field_name ( resource $stmt , mixed $column )

Returns the name of the specified column in the result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns a string containing the name of the specified column. If the specified column does not exist in the result set, db2_field_name() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_field_display_size
db2_field_num
IBM DB2 Funções


Returns the position of the named column in a result set

db2_field_name
db2_field_precision
IBM DB2 Funções
PHP Manual

db2_field_num

(PECL ibm_db2 >= 1.0.0)

db2_field_num — Returns the position of the named column in a result set

Descrição

int db2_field_num ( resource $stmt , mixed $column )

Returns the position of the named column in a result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns an integer containing the 0-indexed position of the named column in the result set. If the specified column does not exist in the result set, db2_field_num() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_field_name
db2_field_precision
IBM DB2 Funções


Returns the precision of the indicated column in a result set

db2_field_num
db2_field_scale
IBM DB2 Funções
PHP Manual

db2_field_precision

(PECL ibm_db2 >= 1.0.0)

db2_field_precision — Returns the precision of the indicated column in a result set

Descrição

int db2_field_precision ( resource $stmt , mixed $column )

Returns the precision of the indicated column in a result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns an integer containing the precision of the specified column. If the specified column does not exist in the result set, db2_field_precision() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_field_num
db2_field_scale
IBM DB2 Funções


Returns the scale of the indicated column in a result set

db2_field_precision
db2_field_type
IBM DB2 Funções
PHP Manual

db2_field_scale

(PECL ibm_db2 >= 1.0.0)

db2_field_scale — Returns the scale of the indicated column in a result set

Descrição

int db2_field_scale ( resource $stmt , mixed $column )

Returns the scale of the indicated column in a result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns an integer containing the scale of the specified column. If the specified column does not exist in the result set, db2_field_scale() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_field_precision
db2_field_type
IBM DB2 Funções


Returns the data type of the indicated column in a result set

db2_field_scale
db2_field_width
IBM DB2 Funções
PHP Manual

db2_field_type

(PECL ibm_db2 >= 1.0.0)

db2_field_type — Returns the data type of the indicated column in a result set

Descrição

string db2_field_type ( resource $stmt , mixed $column )

Returns the data type of the indicated column in a result set.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns a string containing the defined data type of the specified column. If the specified column does not exist in the result set, db2_field_type() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_field_scale
db2_field_width
IBM DB2 Funções


Returns the width of the current value of the indicated column in a result set

db2_field_type
db2_foreign_keys
IBM DB2 Funções
PHP Manual

db2_field_width

(PECL ibm_db2 >= 1.0.0)

db2_field_width — Returns the width of the current value of the indicated column in a result set

Descrição

int db2_field_width ( resource $stmt , mixed $column )

Returns the width of the current value of the indicated column in a result set. This is the maximum width of the column for a fixed-length data type, or the actual width of the column for a variable-length data type.

Parâmetros

stmt

Specifies a statement resource containing a result set.

column

Specifies the column in the result set. This can either be an integer representing the 0-indexed position of the column, or a string containing the name of the column.

Valor Retornado

Returns an integer containing the width of the specified character or binary data type column in a result set. If the specified column does not exist in the result set, db2_field_width() returns FALSE.

Veja Também

  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set

db2_field_type
db2_foreign_keys
IBM DB2 Funções


Returns a result set listing the foreign keys for a table

db2_field_width
db2_free_result
IBM DB2 Funções
PHP Manual

db2_foreign_keys

(PECL ibm_db2 >= 1.0.0)

db2_foreign_keys — Returns a result set listing the foreign keys for a table

Descrição

resource db2_foreign_keys ( resource $connection , string $qualifier , string $schema , string $table-name )

Returns a result set listing the foreign keys for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. If schema is NULL, db2_foreign_keys() matches the schema for the current connection.

table-name

The name of the table.

Valor Retornado

Returns a statement resource with a result set containing rows describing the foreign keys for the specified table. The result set is composed of the following columns:

Column name | Description
PKTABLE_CAT | Name of the catalog for the table containing the primary key. The value is NULL if this table does not have catalogs.
PKTABLE_SCHEM | Name of the schema for the table containing the primary key.
PKTABLE_NAME | Name of the table containing the primary key.
PKCOLUMN_NAME | Name of the column containing the primary key.
FKTABLE_CAT | Name of the catalog for the table containing the foreign key. The value is NULL if this table does not have catalogs.
FKTABLE_SCHEM | Name of the schema for the table containing the foreign key.
FKTABLE_NAME | Name of the table containing the foreign key.
FKCOLUMN_NAME | Name of the column containing the foreign key.
KEY_SEQ | 1-indexed position of the column in the key.
UPDATE_RULE | Integer value representing the action applied to the foreign key when the SQL operation is UPDATE.
DELETE_RULE | Integer value representing the action applied to the foreign key when the SQL operation is DELETE.
FK_NAME | The name of the foreign key.
PK_NAME | The name of the primary key.
DEFERRABILITY | An integer value representing whether the foreign key deferrability is SQL_INITIALLY_DEFERRED, SQL_INITIALLY_IMMEDIATE, or SQL_NOT_DEFERRABLE.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_field_width
db2_free_result
IBM DB2 Funções


Frees resources associated with a result set

db2_foreign_keys
db2_free_stmt
IBM DB2 Funções
PHP Manual

db2_free_result

(PECL ibm_db2 >= 1.0.0)

db2_free_result — Frees resources associated with a result set

Descrição

bool db2_free_result ( resource $stmt )

Frees the system and database resources that are associated with a result set. These resources are freed implicitly when a script finishes, but you can call db2_free_result() to explicitly free the result set resources before the end of the script.

Parâmetros

stmt

A valid statement resource.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • db2_free_stmt() - Frees resources associated with the indicated statement resource

db2_foreign_keys
db2_free_stmt
IBM DB2 Funções


Frees resources associated with the indicated statement resource

db2_free_result
db2_get_option
IBM DB2 Funções
PHP Manual

db2_free_stmt

(PECL ibm_db2 >= 1.0.0)

db2_free_stmt — Frees resources associated with the indicated statement resource

Descrição

bool db2_free_stmt ( resource $stmt )

Frees the system and database resources that are associated with a statement resource. These resources are freed implicitly when a script finishes, but you can call db2_free_stmt() to explicitly free the statement resources before the end of the script.

Parâmetros

stmt

A valid statement resource.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • db2_free_result() - Frees resources associated with a result set

db2_free_result
db2_get_option
IBM DB2 Funções


Retrieves an option value for a statement resource or a connection resource

db2_free_stmt
db2_last_insert_id
IBM DB2 Funções
PHP Manual

db2_get_option

(PECL ibm_db2 >= 1.6.0)

db2_get_option — Retrieves an option value for a statement resource or a connection resource

Descrição

string db2_get_option ( resource $resource , string $option )

Retrieves the value of a specified option value for a statement resource or a connection resource.

Parâmetros

resource

A valid statement resource as returned from db2_prepare() or a valid connection resource as returned from db2_connect() or db2_pconnect().

option

A valid statement or connection options. The following new options are available as of ibm_db2 version 1.6.0. They provide useful tracking information that can be set during execution with db2_get_option().

Nota:

Prior versions of ibm_db2 do not support these new options.

When the value in each option is being set, some servers might not handle the entire length provided and might truncate the value.

To ensure that the data specified in each option is converted correctly when transmitted to a host system, use only the characters A through Z, 0 through 9, and the underscore (_) or period (.).

userid

SQL_ATTR_INFO_USERID - A pointer to a null-terminated character string used to identify the client user ID sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 16 characters. This user-id is not to be confused with the authentication user-id, it is for identification purposes only and is not used for any authorization.

acctstr

SQL_ATTR_INFO_ACCTSTR - A pointer to a null-terminated character string used to identify the client accounting string sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 200 characters.

applname

SQL_ATTR_INFO_APPLNAME - A pointer to a null-terminated character string used to identify the client application name sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 32 characters.

wrkstnname

SQL_ATTR_INFO_WRKSTNNAME - A pointer to a null-terminated character string used to identify the client workstation name sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 18 characters.

The following table specifies which options are compatible with the available resource types:

Resource-Parameter Matrix
Key | Value | Resource Type
 |  | Connection | Statement | Result Set
userid | SQL_ATTR_INFO_USERID | X | X | -
acctstr | SQL_ATTR_INFO_ACCTSTR | X | X | -
applname | SQL_ATTR_INFO_APPLNAME | X | X | -
wrkstnname | SQL_ATTR_INFO_WRKSTNNAME | X | X | -

Valor Retornado

Returns the current setting of the connection attribute provided on success or FALSE on failure.

Exemplos

Exemplo #1 Setting and retrieving parameters through a connection resource

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$user     = 'db2inst1';
$password = 'ibmdb2';

/* Obtain Connection Resource */
$conn = db2_connect($database, $user, $password);

echo "Client attributes passed through connection string:\n";

/* Create the associative options array with valid key-value pairs */
/* Assign the attributes through connection string */
/* Access the options specified */
$options1 = array('userid' => 'db2inst1');
$conn1 = db2_connect($database, $user, $password, $options1);
$val = db2_get_option($conn1, 'userid');
echo $val . "\n";

$options2 = array('acctstr' => 'account');
$conn2 = db2_connect($database, $user, $password, $options2);
$val = db2_get_option($conn2, 'acctstr');
echo $val . "\n";

$options3 = array('applname' => 'myapp');
$conn3 = db2_connect($database, $user, $password, $options3);
$val = db2_get_option($conn3, 'applname');
echo $val . "\n";

$options4 = array('wrkstnname' => 'workstation');
$conn4 = db2_connect($database, $user, $password, $options4);
$val = db2_get_option($conn4, 'wrkstnname');
echo $val . "\n";

echo "Client attributes passed post-connection:\n";

/* Create the associative options array with valid key-value pairs */
/* Assign the attributes after a connection is made */
/* Access the options specified */
$options5 = array('userid' => 'db2inst1');
$conn5 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn5, $options5, 1);
$val = db2_get_option($conn5, 'userid');
echo $val . "\n";

$options6 = array('acctstr' => 'account');
$conn6 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn6, $options6, 1);
$val = db2_get_option($conn6, 'acctstr');
echo $val . "\n";

$options7 = array('applname' => 'myapp');
$conn7 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn7, $options7, 1);
$val = db2_get_option($conn7, 'applname');
echo $val . "\n";

$options8 = array('wrkstnname' => 'workstation');
$conn8 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn8, $options8, 1);
$val = db2_get_option($conn8, 'wrkstnname');
echo $val . "\n";
?>

O exemplo acima irá imprimir:

Client attributes passed through connection string:
db2inst1
account
myapp
workstation
Client attributes passed post-connection:
db2inst1
account
myapp
workstation

Veja Também

  • db2_connect() - Returns a connection to a database
  • db2_cursor_type() - Returns the cursor type used by a statement resource
  • db2_exec() - Executes an SQL statement directly
  • db2_set_option() - Set options for connection or statement resources
  • db2_pconnect() - Returns a persistent connection to a database
  • db2_prepare() - Prepares an SQL statement to be executed

db2_free_stmt
db2_last_insert_id
IBM DB2 Funções


Returns the auto generated ID of the last insert query that successfully executed on this connection

db2_get_option
db2_lob_read
IBM DB2 Funções
PHP Manual

db2_last_insert_id

(PECL ibm_db2 >= 1.7.1)

db2_last_insert_id — Returns the auto generated ID of the last insert query that successfully executed on this connection

Descrição

string db2_last_insert_id ( resource $resource )

Returns the auto generated ID of the last insert query that successfully executed on this connection.

The result of this function is not affected by any of the following:

  • A single row INSERT statement with a VALUES clause for a table without an identity column.

  • A multiple row INSERT statement with a VALUES clause.

  • An INSERT statement with a fullselect.

  • A ROLLBACK TO SAVEPOINT statement.

Parâmetros

resource

A valid connection resource as returned from db2_connect() or db2_pconnect(). The value of this parameter cannot be a statement resource or result set resource.

Valor Retornado

Returns the auto generated ID of last insert query that successfully executed on this connection.

Exemplos

Exemplo #1 A db2_last_insert_id() example

The following example shows how to return the auto generated ID of last insert query that successfully executed on this connection.

<?php

$database = "SAMPLE";
$user = "db2inst1";
$password = "ibmdb2";

$conn = db2_connect($database, $user, $password);
if($conn) {
    $createTable = "CREATE TABLE lastInsertID
      (id integer GENERATED BY DEFAULT AS IDENTITY, name varchar(20))";
    $insertTable = "INSERT INTO lastInsertID (name) VALUES ('Temp Name')";

    $stmt = @db2_exec($conn, $createTable);

    /* Checking for single row inserted. */
    $stmt = db2_exec($conn, $insertTable);
    $ret =  db2_last_insert_id($conn);
    if($ret) {
        echo "Last Insert ID is : " . $ret . "\n";
    } else {
        echo "No Last insert ID.\n";
    }

    db2_close($conn);
}
else {
    echo "Connection failed.";
}
?>

O exemplo acima irá imprimir:

Last Insert ID is : 1

db2_get_option
db2_lob_read
IBM DB2 Funções


Gets a user defined size of LOB files with each invocation

db2_last_insert_id
db2_next_result
IBM DB2 Funções
PHP Manual

db2_lob_read

(PECL ibm_db2 >= 1.6.0)

db2_lob_read — Gets a user defined size of LOB files with each invocation

Descrição

string db2_lob_read ( resource $stmt , int $colnum , int $length )

Use db2_lob_read() to iterate through a specified column of a result set and retrieve a user defined size of LOB data.

Parâmetros

stmt

A valid stmt resource containing LOB data.

colnum

A valid column number in the result set of the stmt resource.

length

The size of the LOB data to be retrieved from the stmt resource.

Valor Retornado

Returns the amount of data the user specifies. Returns FALSE if the data cannot be retrieved.

Exemplos

Exemplo #1 Iterating through different types of data

<?php

/* Database Connection Parameters */
$db = 'SAMPLE';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Obtain Connection Resource */
$conn = db2_connect($db,$username,$password);

if ($conn) {
    $drop = 'DROP TABLE clob_stream';
    $result = @db2_exec( $conn, $drop );

    $create = 'CREATE TABLE clob_stream (id INTEGER, my_clob CLOB)';
    $result = db2_exec( $conn, $create );

    $variable = "";
    $stmt = db2_prepare($conn, "INSERT INTO clob_stream (id,my_clob) VALUES (1, ?)");
    $variable = "THIS IS A CLOB TEST. THIS IS A CLOB TEST.";
    db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
    db2_execute($stmt);

    $sql = "SELECT id,my_clob FROM clob_stream";
    $result = db2_prepare($conn, $sql);
    db2_execute($result);
    db2_fetch_row($result);
    $i = 0;
    /* Read LOB data */
    while ($data = db2_lob_read($result, 2, 6)) {
        echo "Loop $i: $data\n";
        $i = $i + 1;
    }

    $drop = 'DROP TABLE blob_stream';
    $result = @db2_exec( $conn, $drop );

    $create = 'CREATE TABLE blob_stream (id INTEGER, my_blob CLOB)';
    $result = db2_exec( $conn, $create );

    $variable = "";
    $stmt = db2_prepare($conn, "INSERT INTO blob_stream (id,my_blob) VALUES (1, ?)");
    $variable = "THIS IS A BLOB TEST. THIS IS A BLOB TEST.";
    db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
    db2_execute($stmt);

    $sql = "SELECT id,my_blob FROM blob_stream";
    $result = db2_prepare($conn, $sql);
    db2_execute($result);
    db2_fetch_row($result);
    $i = 0;
    /* Read LOB data */
    while ($data = db2_lob_read($result, 2, 6)) {
        echo "Loop $i: $data\n";
        $i = $i + 1;
    }
} else {
    echo 'no connection: ' . db2_conn_errormsg();
}

?>

O exemplo acima irá imprimir:

Loop 0: THIS I
Loop 1: S A CL
Loop 2: OB TES
Loop 3: T. THI
Loop 4: S IS A
Loop 5:  CLOB
Loop 6: TEST.
Loop 0: THIS I
Loop 1: S A BL
Loop 2: OB TES
Loop 3: T. THI
Loop 4: S IS A
Loop 5:  BLOB
Loop 6: TEST.

Veja Também

  • db2_bind_param() - Binds a PHP variable to an SQL statement parameter
  • db2_exec() - Executes an SQL statement directly
  • db2_execute() - Executes a prepared SQL statement
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row
  • db2_prepare() - Prepares an SQL statement to be executed
  • db2_result() - Returns a single column from a row in the result set

db2_last_insert_id
db2_next_result
IBM DB2 Funções


Requests the next result set from a stored procedure

db2_lob_read
db2_num_fields
IBM DB2 Funções
PHP Manual

db2_next_result

(PECL ibm_db2 >= 1.0.0)

db2_next_result — Requests the next result set from a stored procedure

Descrição

resource db2_next_result ( resource $stmt )

A stored procedure can return zero or more result sets. While you handle the first result set in exactly the same way you would handle the results returned by a simple SELECT statement, to fetch the second and subsequent result sets from a stored procedure you must call the db2_next_result() function and return the result to a uniquely named PHP variable.

Parâmetros

stmt

A prepared statement returned from db2_exec() or db2_execute().

Valor Retornado

Returns a new statement resource containing the next result set if the stored procedure returned another result set. Returns FALSE if the stored procedure did not return another result set.

Exemplos

Exemplo #1 Calling a stored procedure that returns multiple result sets

In the following example, we call a stored procedure that returns three result sets. The first result set is fetched directly from the same statement resource on which we invoked the CALL statement, while the second and third result sets are fetched from statement resources returned from our calls to the db2_next_result() function.

<?php
$conn = db2_connect($database, $user, $password);

if ($conn) {
  $stmt = db2_exec($conn, 'CALL multiResults()');

  print "Fetching first result set\n";
  while ($row = db2_fetch_array($stmt)) {
    var_dump($row);
  }

  print "\nFetching second result set\n";
  $res = db2_next_result($stmt);
  if ($res) {
    while ($row = db2_fetch_array($res)) {
      var_dump($row);
    }
  }

  print "\nFetching third result set\n";
  $res2 = db2_next_result($stmt);
  if ($res2) {
    while ($row = db2_fetch_array($res2)) {
      var_dump($row);
    }
  }

  db2_close($conn);
}
?>

O exemplo acima irá imprimir:

Fetching first result set
array(2) {
  [0]=>
  string(16) "Bubbles         "
  [1]=>
  int(3)
}
array(2) {
  [0]=>
  string(16) "Gizmo           "
  [1]=>
  int(4)
}

Fetching second result set
array(4) {
  [0]=>
  string(16) "Sweater         "
  [1]=>
  int(6)
  [2]=>
  string(5) "llama"
  [3]=>
  string(6) "150.00"
}
array(4) {
  [0]=>
  string(16) "Smarty          "
  [1]=>
  int(2)
  [2]=>
  string(5) "horse"
  [3]=>
  string(6) "350.00"
}

Fetching third result set
array(1) {
  [0]=>
  string(16) "Bubbles         "
}
array(1) {
  [0]=>
  string(16) "Gizmo           "
}

db2_lob_read
db2_num_fields
IBM DB2 Funções


Returns the number of fields contained in a result set

db2_next_result
db2_num_rows
IBM DB2 Funções
PHP Manual

db2_num_fields

(PECL ibm_db2 >= 1.0.0)

db2_num_fields — Returns the number of fields contained in a result set

Descrição

int db2_num_fields ( resource $stmt )

Returns the number of fields contained in a result set. This is most useful for handling the result sets returned by dynamically generated queries, or for result sets returned by stored procedures, where your application cannot otherwise know how to retrieve and use the results.

Parâmetros

stmt

A valid statement resource containing a result set.

Valor Retornado

Returns an integer value representing the number of fields in the result set associated with the specified statement resource. Returns FALSE if the statement resource is not a valid input value.

Exemplos

Exemplo #1 Retrieving the number of fields in a result set

The following example demonstrates how to retrieve the number of fields returned in a result set.

<?php

$sql = "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, $sql);
$columns = db2_num_fields($stmt);

echo "There are {$columns} columns in the result set.";
?>

O exemplo acima irá imprimir:

There are 4 columns in the result set.

Veja Também

  • db2_execute() - Executes a prepared SQL statement
  • db2_field_display_size() - Returns the maximum number of bytes required to display a column
  • db2_field_name() - Returns the name of the column in the result set
  • db2_field_num() - Returns the position of the named column in a result set
  • db2_field_precision() - Returns the precision of the indicated column in a result set
  • db2_field_scale() - Returns the scale of the indicated column in a result set
  • db2_field_type() - Returns the data type of the indicated column in a result set
  • db2_field_width() - Returns the width of the current value of the indicated column in a result set

db2_next_result
db2_num_rows
IBM DB2 Funções


Returns the number of rows affected by an SQL statement

db2_num_fields
db2_pclose
IBM DB2 Funções
PHP Manual

db2_num_rows

(PECL ibm_db2 >= 1.0.0)

db2_num_rows — Returns the number of rows affected by an SQL statement

Descrição

int db2_num_rows ( resource $stmt )

Returns the number of rows deleted, inserted, or updated by an SQL statement.

To determine the number of rows that will be returned by a SELECT statement, issue SELECT COUNT(*) with the same predicates as your intended SELECT statement and retrieve the value.

If your application logic checks the number of rows returned by a SELECT statement and branches if the number of rows is 0, consider modifying your application to attempt to return the first row with one of db2_fetch_assoc(), db2_fetch_both(), db2_fetch_array(), or db2_fetch_row(), and branch if the fetch function returns FALSE.

Nota:

If you issue a SELECT statement using a scrollable cursor, db2_num_rows() returns the number of rows returned by the SELECT statement. However, the overhead associated with scrollable cursors significantly degrades the performance of your application, so if this is the only reason you are considering using scrollable cursors, you should use a forward-only cursor and either call SELECT COUNT(*) or rely on the boolean return value of the fetch functions to achieve the equivalent functionality with much better performance.

Parâmetros

stmt

A valid stmt resource containing a result set.

Valor Retornado

Returns the number of rows affected by the last SQL statement issued by the specified statement handle.

db2_num_fields
db2_pclose
IBM DB2 Funções


Closes a persistent database connection

db2_num_rows
db2_pconnect
IBM DB2 Funções
PHP Manual

db2_pclose

(PECL ibm_db2 >= 1.8.0)

db2_pclose — Closes a persistent database connection

Descrição

bool db2_pclose ( resource $resource )

This function closes a DB2 client connection created with db2_pconnect() and returns the corresponding resources to the database server.

Nota:

This function is only available on i5/OS in response to i5/OS system administration requests.

If you have a persistent DB2 client connection created with db2_pconnect(), you may use this function to close the connection. To avoid substantial connection performance penalties, this function should only be used in rare cases when the persistent connection has become unresponsive or the persistent connection will not be needed for a long period of time.

Parâmetros

connection

Specifies an active DB2 client connection.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Closing a persistent connection

The following example demonstrates a successful attempt to close a connection to an IBM DB2 i5/OS database.

<?php
$conn = db2_pconnect('', '', '');
$rc = db2_pclose($conn);
if ($rc) {
    echo "Connection was successfully closed.";
}
?>

O exemplo acima irá imprimir:

Connection was successfully closed.

Veja Também

  • db2_close() - Closes a database connection
  • db2_pconnect() - Returns a persistent connection to a database

db2_num_rows
db2_pconnect
IBM DB2 Funções


Returns a persistent connection to a database

db2_pclose
db2_prepare
IBM DB2 Funções
PHP Manual

db2_pconnect

(PECL ibm_db2 >= 1.0.0)

db2_pconnect — Returns a persistent connection to a database

Descrição

resource db2_pconnect ( string $database , string $username , string $password [, array $options ] )

Returns a persistent connection to an IBM DB2 Universal Database, IBM Cloudscape, or Apache Derby database.

For more information on persistent connections, refer to Conexão Permanente com o Banco de Dados.

Calling db2_close() on a persistent connection always returns TRUE, but the underlying DB2 client connection remains open and waiting to serve the next matching db2_pconnect() request.

Users running version 1.9.0 or later of ibm_db2 should be aware that the extension will perform a transaction rollback on persistent connections at the end of a request, thus ending the transaction. This prevents the transaction block from carrying over to the next request which uses that connection if script execution ends before the transaction block does.

Parâmetros

database

The database alias in the DB2 client catalog.

username

The username with which you are connecting to the database.

password

The password with which you are connecting to the database.

options

An associative array of connection options that affect the behavior of the connection, where valid array keys include:

autocommit

Passing the DB2_AUTOCOMMIT_ON value turns autocommit on for this connection handle.

Passing the DB2_AUTOCOMMIT_OFF value turns autocommit off for this connection handle.

DB2_ATTR_CASE

Passing the DB2_CASE_NATURAL value specifies that column names are returned in natural case.

Passing the DB2_CASE_LOWER value specifies that column names are returned in lower case.

Passing the DB2_CASE_UPPER value specifies that column names are returned in upper case.

CURSOR

Passing the DB2_FORWARD_ONLY value specifies a forward-only cursor for a statement resource. This is the default cursor type and is supported on all database servers.

Passing the DB2_SCROLLABLE value specifies a scrollable cursor for a statement resource. This mode enables random access to rows in a result set, but currently is supported only by IBM DB2 Universal Database.

The following new option is available in ibm_db2 version 1.7.0 and later.

trustedcontext

Passing the DB2_TRUSTED_CONTEXT_ENABLE value turns trusted context on for this connection handle. This parameter cannot be set using db2_set_option().

This key works only if the database is cataloged (even if the database is local), or if you specify the full DSN when you create the connection.

To catalog the database, use following commands:

db2 catalog tcpip node loopback remote <SERVERNAME> server <SERVICENAME>
db2 catalog database <LOCALDBNAME> as <REMOTEDBNAME> at node loopback
db2 "update dbm cfg using svcename <SERVICENAME>"
db2set DB2COMM=TCPIP

The following new i5/OS options are available in ibm_db2 version 1.5.1 and later.

Dica

Conflicting connection attributes used in conjunction with persistent connections can produce indeterminate results on i5/OS. Site policies should be establish for all applications using each persistent connection user profile. The default DB2_AUTOCOMMIT_ON is suggested when using persistent connections.

i5_lib

A character value that indicates the default library that will be used for resolving unqualified file references. This is not valid if the connection is using system naming mode.

i5_naming

DB2_I5_NAMING_ON value turns on DB2 UDB CLI iSeries system naming mode. Files are qualified using the slash (/) delimiter. Unqualified files are resolved using the library list for the job.

DB2_I5_NAMING_OFF value turns off DB2 UDB CLI default naming mode, which is SQL naming. Files are qualified using the period (.) delimiter. Unqualified files are resolved using either the default library or the current user ID.

i5_commit

The i5_commit attribute should be set before the db2_pconnect(). If the value is changed after the connection has been established, and the connection is to a remote data source, the change does not take effect until the next successful db2_pconnect() for the connection handle.

Nota:

The php.ini setting ibm_db2.i5_allow_commit==0 or DB2_I5_TXN_NO_COMMIT is the default, but may be overridden with the i5_commit option.

DB2_I5_TXN_NO_COMMIT - Commitment control is not used.

DB2_I5_TXN_READ_UNCOMMITTED - Dirty reads, nonrepeatable reads, and phantoms are possible.

DB2_I5_TXN_READ_COMMITTED - Dirty reads are not possible. Nonrepeatable reads, and phantoms are possible.

DB2_I5_TXN_REPEATABLE_READ - Dirty reads and nonrepeatable reads are not possible. Phantoms are possible.

DB2_I5_TXN_SERIALIZABLE - Transactions are serializable. Dirty reads, non-repeatable reads, and phantoms are not possible

i5_query_optimize

DB2_FIRST_IO All queries are optimized with the goal of returning the first page of output as fast as possible. This goal works well when the output is controlled by a user who is most likely to cancel the query after viewing the first page of output data. Queries coded with an OPTIMIZE FOR nnn ROWS clause honor the goal specified by the clause.

DB2_ALL_IO All queries are optimized with the goal of running the entire query to completion in the shortest amount of elapsed time. This is a good option when the output of a query is being written to a file or report, or the interface is queuing the output data. Queries coded with an OPTIMIZE FOR nnn ROWS clause honor the goal specified by the clause. This is the default.

i5_dbcs_alloc

DB2_I5_DBCS_ALLOC_ON value turns on DB2 6X allocation scheme for DBCS translation column size growth.

DB2_I5_DBCS_ALLOC_OFF value turns off DB2 6X allocation scheme for DBCS translation column size growth.

Nota:

The php.ini setting ibm_db2.i5_dbcs_alloc==0 or DB2_I5_DBCS_ALLOC_OFF is the default, but may be overridden with the i5_dbcs_alloc option.

i5_date_fmt

DB2_I5_FMT_ISO - The International Organization for Standardization (ISO) date format yyyy-mm-dd is used. This is the default.

DB2_I5_FMT_USA - The United States date format mm/dd/yyyy is used.

DB2_I5_FMT_EUR - The European date format dd.mm.yyyy is used.

DB2_I5_FMT_JIS - The Japanese Industrial Standard date format yyyy-mm-dd is used.

DB2_I5_FMT_MDY - The date format mm/dd/yyyy is used.

DB2_I5_FMT_DMY - The date format dd/mm/yyyy is used.

DB2_I5_FMT_YMD - The date format yy/mm/dd is used.

DB2_I5_FMT_JUL - The Julian date format yy/ddd is used.

DB2_I5_FMT_JOB - The job default is used.

i5_date_sep

DB2_I5_SEP_SLASH - A slash ( / ) is used as the date separator. This is the default.

DB2_I5_SEP_DASH - A dash ( - ) is used as the date separator.

DB2_I5_SEP_PERIOD - A period ( . ) is used as the date separator.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the date separator.

DB2_I5_SEP_BLANK - A blank is used as the date separator.

DB2_I5_SEP_JOB - The job default is used

i5_time_fmt

DB2_I5_FMT_ISO - The International Organization for Standardization (ISO) time format hh.mm.ss is used. This is the default.

DB2_I5_FMT_USA - The United States time format hh:mmxx is used, where xx is AM or PM.

DB2_I5_FMT_EUR - The European time format hh.mm.ss is used.

DB2_I5_FMT_JIS - The Japanese Industrial Standard time format hh:mm:ss is used.

DB2_I5_FMT_HMS - The hh:mm:ss format is used.

i5_time_sep

DB2_I5_SEP_COLON - A colon ( : ) is used as the time separator. This is the default.

DB2_I5_SEP_PERIOD - A period ( . ) is used as the time separator.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the time separator.

DB2_I5_SEP_BLANK - A blank is used as the time separator.

DB2_I5_SEP_JOB - The job default is used.

i5_decimal_sep

DB2_I5_SEP_PERIOD - A period ( . ) is used as the decimal separator. This is the default.

DB2_I5_SEP_COMMA - A comma ( , ) is used as the decimal separator.

DB2_I5_SEP_JOB - The job default is used.

The following new i5/OS option is available in ibm_db2 version 1.8.0 and later.

i5_libl

A character value that indicates the library list that will be used for resolving unqualified file references. Specify the library list elements separated by blanks 'i5_libl'=>"MYLIB YOURLIB ANYLIB".

Nota:

i5_libl calls qsys2/qcmdexc('cmd',cmdlen), which is only available in i5/OS V5R4 and later.

Valor Retornado

Returns a connection handle resource if the connection attempt is successful. db2_pconnect() tries to reuse an existing connection resource that exactly matches the database, username, and password parameters. If the connection attempt fails, db2_pconnect() returns FALSE.

Histórico

Versão | Descrição
ibm_db2 1.9.0 | Active transactions within a persistent connection will be rolled back at the end of each request.
ibm_db2 1.8.0 | The i5_libl option is available for i5/OS users.
ibm_db2 1.7.0 | The trustedcontext option is available.
ibm_db2 1.5.1 | The i5_lib, i5_naming, i5_commit, i5_query_optimize, i5_dbcs_alloc, i5_date_fmt, i5_date_sep, i5_time_fmt, i5_time_sep and i5_decimal_sep options are available for i5/OS users.

Exemplos

Exemplo #1 A db2_pconnect() example

In the following example, the first call to db2_pconnect() returns a new persistent connection resource. The second call to db2_pconnect() returns a persistent connection resource that simply reuses the first persistent connection resource.

<?php
$database = 'SAMPLE';
$user = 'db2inst1';
$password = 'ibmdb2';

$pconn = db2_pconnect($database, $user, $password);

if ($pconn) {
    echo "Persistent connection succeeded.";
}
else {
    echo "Persistent connection failed.";
}

$pconn2 = db2_pconnect($database, $user, $password);
if ($pconn) {
    echo "Second persistent connection succeeded.";
}
else {
    echo "Second persistent connection failed.";
}
?>

O exemplo acima irá imprimir:

Persistent connection succeeded.
Second persistent connection succeeded.

Exemplo #2 Using trusted context

The following example shows how to enable trusted context, switch users, and get the current user ID.

<?php

$database = "SAMPLE";
$hostname = "localhost";
$port = 50000;
$authID = "db2inst1";
$auth_pass = "ibmdb2";

$tc_user = "tcuser";
$tc_pass = "tcpassword";

$dsn = "DATABASE=$database;HOSTNAME=$hostname;PORT=$port;
  PROTOCOL=TCPIP;UID=$authID;PWD=$auth_pass;";
$options = array ("trustedcontext" => DB2_TRUSTED_CONTEXT_ENABLE);

$tc_conn = db2_pconnect($dsn, "", "", $options);
if($tc_conn) {
    echo "Explicit trusted connection succeeded.\n";

    if(db2_get_option($tc_conn, "trustedcontext")) {
        $userBefore = db2_get_option($tc_conn, "trusted_user");

        //Do some work as user 1.

        //Switching to trusted user.
        $parameters = array("trusted_user" => $tc_user,
          "trusted_password" => $tcuser_pass);
        $res = db2_set_option ($tc_conn, $parameters, 1);

        $userAfter = db2_get_option($tc_conn, "trusted_user");
        //Do more work as trusted user.

        if($userBefore != $userAfter) {
            echo "User has been switched." . "\n";
        }
    }

    db2_close($tc_conn);
}
else {
    echo "Explicit trusted connection failed.\n";
}
?>

O exemplo acima irá imprimir:

Explicit trusted connection succeeded.
User has been switched.

Veja Também

  • db2_connect() - Returns a connection to a database

db2_pclose
db2_prepare
IBM DB2 Funções


Prepares an SQL statement to be executed

db2_pconnect
db2_primary_keys
IBM DB2 Funções
PHP Manual

db2_prepare

(PECL ibm_db2 >= 1.0.0)

db2_prepare — Prepares an SQL statement to be executed

Descrição

resource db2_prepare ( resource $connection , string $statement [, array $options ] )

db2_prepare() creates a prepared SQL statement which can include 0 or more parameter markers (? characters) representing parameters for input, output, or input/output. You can pass parameters to the prepared statement using db2_bind_param(), or for input values only, as an array passed to db2_execute().

There are three main advantages to using prepared statements in your application:

  • Performance: when you prepare a statement, the database server creates an optimized access plan for retrieving data with that statement. Subsequently issuing the prepared statement with db2_execute() enables the statements to reuse that access plan and avoids the overhead of dynamically creating a new access plan for every statement you issue.

  • Security: when you prepare a statement, you can include parameter markers for input values. When you execute a prepared statement with input values for placeholders, the database server checks each input value to ensure that the type matches the column definition or parameter definition.

  • Advanced functionality: Parameter markers not only enable you to pass input values to prepared SQL statements, they also enable you to retrieve OUT and INOUT parameters from stored procedures using db2_bind_param().

Parâmetros

connection

A valid database connection resource variable as returned from db2_connect() or db2_pconnect().

statement

An SQL statement, optionally containing one or more parameter markers..

options

An associative array containing statement options. You can use this parameter to request a scrollable cursor on database servers that support this functionality.

For a description of valid statement options, see db2_set_option().

Valor Retornado

Returns a statement resource if the SQL statement was successfully parsed and prepared by the database server. Returns FALSE if the database server returned an error. You can determine which error was returned by calling db2_stmt_error() or db2_stmt_errormsg().

Exemplos

Exemplo #1 Preparing and executing an SQL statement with parameter markers

The following example prepares an INSERT statement that accepts four parameter markers, then iterates over an array of arrays containing the input values to be passed to db2_execute().

<?php
$animals = array(
    array(0, 'cat', 'Pook', 3.2),
    array(1, 'dog', 'Peaches', 12.3),
    array(2, 'horse', 'Smarty', 350.0),
);

$insert = 'INSERT INTO animals (id, breed, name, weight)
    VALUES (?, ?, ?, ?)';
$stmt = db2_prepare($conn, $insert);
if ($stmt) {
    foreach ($animals as $animal) {
        $result = db2_execute($stmt, $animal);
    }
}
?>

Veja Também

  • db2_bind_param() - Binds a PHP variable to an SQL statement parameter
  • db2_execute() - Executes a prepared SQL statement
  • db2_stmt_error() - Returns a string containing the SQLSTATE returned by an SQL statement
  • db2_stmt_errormsg() - Returns a string containing the last SQL statement error message

db2_pconnect
db2_primary_keys
IBM DB2 Funções


Returns a result set listing primary keys for a table

db2_prepare
db2_procedure_columns
IBM DB2 Funções
PHP Manual

db2_primary_keys

(PECL ibm_db2 >= 1.0.0)

db2_primary_keys — Returns a result set listing primary keys for a table

Descrição

resource db2_primary_keys ( resource $connection , string $qualifier , string $schema , string $table-name )

Returns a result set listing the primary keys for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. If schema is NULL, db2_primary_keys() matches the schema for the current connection.

table-name

The name of the table.

Valor Retornado

Returns a statement resource with a result set containing rows describing the primary keys for the specified table. The result set is composed of the following columns:

Column name | Description
TABLE_CAT | Name of the catalog for the table containing the primary key. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema for the table containing the primary key.
TABLE_NAME | Name of the table containing the primary key.
COLUMN_NAME | Name of the column containing the primary key.
KEY_SEQ | 1-indexed position of the column in the key.
PK_NAME | The name of the primary key.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_prepare
db2_procedure_columns
IBM DB2 Funções


Returns a result set listing stored procedure parameters

db2_primary_keys
db2_procedures
IBM DB2 Funções
PHP Manual

db2_procedure_columns

(PECL ibm_db2 >= 1.0.0)

db2_procedure_columns — Returns a result set listing stored procedure parameters

Descrição

resource db2_procedure_columns ( resource $connection , string $qualifier , string $schema , string $procedure , string $parameter )

Returns a result set listing the parameters for one or more stored procedures.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the procedures. This parameter accepts a search pattern containing _ and % as wildcards.

procedure

The name of the procedure. This parameter accepts a search pattern containing _ and % as wildcards.

parameter

The name of the parameter. This parameter accepts a search pattern containing _ and % as wildcards. If this parameter is NULL, all parameters for the specified stored procedures are returned.

Valor Retornado

Returns a statement resource with a result set containing rows describing the parameters for the stored procedures matching the specified parameters. The rows are composed of the following columns:

Column name | Description
PROCEDURE_CAT | The catalog that contains the procedure. The value is NULL if this table does not have catalogs.
PROCEDURE_SCHEM | Name of the schema that contains the stored procedure.
PROCEDURE_NAME | Name of the procedure.
COLUMN_NAME | Name of the parameter.
COLUMN_TYPE

An integer value representing the type of the parameter:

Return value | Parameter type
1 (SQL_PARAM_INPUT) | Input (IN) parameter.
2 (SQL_PARAM_INPUT_OUTPUT) | Input/output (INOUT) parameter.
3 (SQL_PARAM_OUTPUT) | Output (OUT) parameter.
DATA_TYPE | The SQL data type for the parameter represented as an integer value.
TYPE_NAME | A string representing the data type for the parameter.
COLUMN_SIZE | An integer value representing the size of the parameter.
BUFFER_LENGTH | Maximum number of bytes necessary to store data for this parameter.
DECIMAL_DIGITS | The scale of the parameter, or NULL where scale is not applicable.
NUM_PREC_RADIX | An integer value of either 10 (representing an exact numeric data type), 2 (representing an approximate numeric data type), or NULL (representing a data type for which radix is not applicable).
NULLABLE | An integer value representing whether the parameter is nullable or not.
REMARKS | Description of the parameter.
COLUMN_DEF | Default value for the parameter.
SQL_DATA_TYPE | An integer value representing the size of the parameter.
SQL_DATETIME_SUB | Returns an integer value representing a datetime subtype code, or NULL for SQL data types to which this does not apply.
CHAR_OCTET_LENGTH | Maximum length in octets for a character data type parameter, which matches COLUMN_SIZE for single-byte character set data, or NULL for non-character data types.
ORDINAL_POSITION | The 1-indexed position of the parameter in the CALL statement.
IS_NULLABLE | A string value where 'YES' means that the parameter accepts or returns NULL values and 'NO' means that the parameter does not accept or return NULL values.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_primary_keys
db2_procedures
IBM DB2 Funções


Returns a result set listing the stored procedures registered in a database

db2_procedure_columns
db2_result
IBM DB2 Funções
PHP Manual

db2_procedures

(PECL ibm_db2 >= 1.0.0)

db2_procedures — Returns a result set listing the stored procedures registered in a database

Descrição

resource db2_procedures ( resource $connection , string $qualifier , string $schema , string $procedure )

Returns a result set listing the stored procedures registered in a database.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the procedures. This parameter accepts a search pattern containing _ and % as wildcards.

procedure

The name of the procedure. This parameter accepts a search pattern containing _ and % as wildcards.

Valor Retornado

Returns a statement resource with a result set containing rows describing the stored procedures matching the specified parameters. The rows are composed of the following columns:

Column name | Description
PROCEDURE_CAT | The catalog that contains the procedure. The value is NULL if this table does not have catalogs.
PROCEDURE_SCHEM | Name of the schema that contains the stored procedure.
PROCEDURE_NAME | Name of the procedure.
NUM_INPUT_PARAMS | Number of input (IN) parameters for the stored procedure.
NUM_OUTPUT_PARAMS | Number of output (OUT) parameters for the stored procedure.
NUM_RESULT_SETS | Number of result sets returned by the stored procedure.
REMARKS | Any comments about the stored procedure.
PROCEDURE_TYPE | Always returns 1, indicating that the stored procedure does not return a return value.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_procedure_columns
db2_result
IBM DB2 Funções


Returns a single column from a row in the result set

db2_procedures
db2_rollback
IBM DB2 Funções
PHP Manual

db2_result

(PECL ibm_db2 >= 1.0.0)

db2_result — Returns a single column from a row in the result set

Descrição

mixed db2_result ( resource $stmt , mixed $column )

Use db2_result() to return the value of a specified column in the current row of a result set. You must call db2_fetch_row() before calling db2_result() to set the location of the result set pointer.

Parâmetros

stmt

A valid stmt resource.

column

Either an integer mapping to the 0-indexed field in the result set, or a string matching the name of the column.

Valor Retornado

Returns the value of the requested field if the field exists in the result set. Returns NULL if the field does not exist, and issues a warning.

Exemplos

Exemplo #1 A db2_result() example

The following example demonstrates how to iterate through a result set with db2_fetch_row() and retrieve columns from the result set with db2_result().

<?php
$sql = 'SELECT name, breed FROM animals WHERE weight < ?';
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, array(10));
while (db2_fetch_row($stmt)) {
    $name = db2_result($stmt, 0);
    $breed = db2_result($stmt, 'BREED');
    print "$name $breed";
}
?>

O exemplo acima irá imprimir:

cat Pook
gold fish Bubbles
budgerigar Gizmo
goat Rickety Ride

Veja Também

  • db2_fetch_array() - Returns an array, indexed by column position, representing a row in a result set
  • db2_fetch_assoc() - Returns an array, indexed by column name, representing a row in a result set
  • db2_fetch_both() - Returns an array, indexed by both column name and position, representing a row in a result set
  • db2_fetch_object() - Returns an object with properties representing columns in the fetched row
  • db2_fetch_row() - Sets the result set pointer to the next row or requested row

db2_procedures
db2_rollback
IBM DB2 Funções


Rolls back a transaction

db2_result
db2_server_info
IBM DB2 Funções
PHP Manual

db2_rollback

(PECL ibm_db2 >= 1.0.0)

db2_rollback — Rolls back a transaction

Descrição

bool db2_rollback ( resource $connection )

Rolls back an in-progress transaction on the specified connection resource and begins a new transaction. PHP applications normally default to AUTOCOMMIT mode, so db2_rollback() normally has no effect unless AUTOCOMMIT has been turned off for the connection resource.

Parâmetros

connection

A valid database connection resource variable as returned from db2_connect() or db2_pconnect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Rolling back a DELETE statement

In the following example, we count the number of rows in a table, turn off AUTOCOMMIT mode on a database connection, delete all of the rows in the table and return the count of 0 to prove that the rows have been removed. We then issue db2_rollback() and return the updated count of rows in the table to show that the number is the same as before we issued the DELETE statement. The return to the original state of the table demonstrates that the roll back of the transaction succeeded.

<?php
$conn = db2_connect($database, $user, $password);

if ($conn) {
    $stmt = db2_exec($conn, "SELECT count(*) FROM animals");
    $res = db2_fetch_array( $stmt );
    echo $res[0] . "\n";

    // Turn AUTOCOMMIT off
    db2_autocommit($conn, DB2_AUTOCOMMIT_OFF);

    // Delete all rows from ANIMALS
    db2_exec($conn, "DELETE FROM animals");

    $stmt = db2_exec($conn, "SELECT count(*) FROM animals");
    $res = db2_fetch_array( $stmt );
    echo $res[0] . "\n";

    // Roll back the DELETE statement
    db2_rollback( $conn );

    $stmt = db2_exec( $conn, "SELECT count(*) FROM animals" );
    $res = db2_fetch_array( $stmt );
    echo $res[0] . "\n";
    db2_close($conn);
}
?>

O exemplo acima irá imprimir:

7
0
7

Veja Também

  • db2_autocommit() - Returns or sets the AUTOCOMMIT state for a database connection
  • db2_commit() - Commits a transaction

db2_result
db2_server_info
IBM DB2 Funções


Returns an object with properties that describe the DB2 database server

db2_rollback
db2_set_option
IBM DB2 Funções
PHP Manual

db2_server_info

(PECL ibm_db2 >= 1.1.1)

db2_server_info — Returns an object with properties that describe the DB2 database server

Descrição

object db2_server_info ( resource $connection )

This function returns an object with read-only properties that return information about the IBM DB2, Cloudscape, or Apache Derby database server. The following table lists the database server properties:

Database server properties
Property name | Return type | Description
DBMS_NAME | string | The name of the database server to which you are connected. For DB2 servers this is a combination of DB2 followed by the operating system on which the database server is running.
DBMS_VER | string | The version of the database server, in the form of a string "MM.mm.uuuu" where MM is the major version, mm is the minor version, and uuuu is the update. For example, "08.02.0001" represents major version 8, minor version 2, update 1.
DB_CODEPAGE | int | The code page of the database to which you are connected.
DB_NAME | string | The name of the database to which you are connected.
DFT_ISOLATION string

The default transaction isolation level supported by the server:

UR

Uncommitted read: changes are immediately visible by all concurrent transactions.

CS

Cursor stability: a row read by one transaction can be altered and committed by a second concurrent transaction.

RS

Read stability: a transaction can add or remove rows matching a search condition or a pending transaction.

RR

Repeatable read: data affected by pending transaction is not available to other transactions.

NC

No commit: any changes are visible at the end of a successful operation. Explicit commits and rollbacks are not allowed.

IDENTIFIER_QUOTE_CHAR | string | The character used to delimit an identifier.
INST_NAME | string | The instance on the database server that contains the database.
ISOLATION_OPTION | array | An array of the isolation options supported by the database server. The isolation options are described in the DFT_ISOLATION property.
KEYWORDS | array | An array of the keywords reserved by the database server.
LIKE_ESCAPE_CLAUSE | bool | TRUE if the database server supports the use of % and _ wildcard characters. FALSE if the database server does not support these wildcard characters.
MAX_COL_NAME_LEN | int | Maximum length of a column name supported by the database server, expressed in bytes.
MAX_IDENTIFIER_LEN | int | Maximum length of an SQL identifier supported by the database server, expressed in characters.
MAX_INDEX_SIZE | int | Maximum size of columns combined in an index supported by the database server, expressed in bytes.
MAX_PROC_NAME_LEN | int | Maximum length of a procedure name supported by the database server, expressed in bytes.
MAX_ROW_SIZE | int | Maximum length of a row in a base table supported by the database server, expressed in bytes.
MAX_SCHEMA_NAME_LEN | int | Maximum length of a schema name supported by the database server, expressed in bytes.
MAX_STATEMENT_LEN | int | Maximum length of an SQL statement supported by the database server, expressed in bytes.
MAX_TABLE_NAME_LEN | int | Maximum length of a table name supported by the database server, expressed in bytes.
NON_NULLABLE_COLUMNS | bool | TRUE if the database server supports columns that can be defined as NOT NULL, FALSE if the database server does not support columns defined as NOT NULL.
PROCEDURES | bool | TRUE if the database server supports the use of the CALL statement to call stored procedures, FALSE if the database server does not support the CALL statement.
SPECIAL_CHARS | string | A string containing all of the characters other than a-Z, 0-9, and underscore that can be used in an identifier name.
SQL_CONFORMANCE string

The level of conformance to the ANSI/ISO SQL-92 specification offered by the database server:

ENTRY

Entry-level SQL-92 compliance.

FIPS127

FIPS-127-2 transitional compliance.

FULL

Full level SQL-92 compliance.

INTERMEDIATE

Intermediate level SQL-92 compliance.

Parâmetros

connection

Specifies an active DB2 client connection.

Valor Retornado

Returns an object on a successful call. Returns FALSE on failure.

Exemplos

Exemplo #1 A db2_server_info() example

To retrieve information about the server, you must pass a valid database connection resource to db2_server_info().

<?php

$conn = db2_connect('sample', 'db2inst1', 'ibmdb2');

$server = db2_server_info( $conn );

if ($server) {
    echo "DBMS_NAME: ";                 var_dump( $server->DBMS_NAME );
    echo "DBMS_VER: ";                  var_dump( $server->DBMS_VER );
    echo "DB_CODEPAGE: ";               var_dump( $server->DB_CODEPAGE );
    echo "DB_NAME: ";                   var_dump( $server->DB_NAME );
    echo "INST_NAME: ";                 var_dump( $server->INST_NAME );
    echo "SPECIAL_CHARS: ";             var_dump( $server->SPECIAL_CHARS );
    echo "KEYWORDS: ";                  var_dump( sizeof($server->KEYWORDS) );
    echo "DFT_ISOLATION: ";             var_dump( $server->DFT_ISOLATION );
    echo "ISOLATION_OPTION: ";
    $il = '';
    foreach( $server->ISOLATION_OPTION as $opt )
    {
       $il .= $opt." ";
    }
    var_dump( $il );
    echo "SQL_CONFORMANCE: ";           var_dump( $server->SQL_CONFORMANCE );
    echo "PROCEDURES: ";                var_dump( $server->PROCEDURES );
    echo "IDENTIFIER_QUOTE_CHAR: ";     var_dump( $server->IDENTIFIER_QUOTE_CHAR );
    echo "LIKE_ESCAPE_CLAUSE: ";        var_dump( $server->LIKE_ESCAPE_CLAUSE );
    echo "MAX_COL_NAME_LEN: ";          var_dump( $server->MAX_COL_NAME_LEN );
    echo "MAX_ROW_SIZE: ";              var_dump( $server->MAX_ROW_SIZE );
    echo "MAX_IDENTIFIER_LEN: ";        var_dump( $server->MAX_IDENTIFIER_LEN );
    echo "MAX_INDEX_SIZE: ";            var_dump( $server->MAX_INDEX_SIZE );
    echo "MAX_PROC_NAME_LEN: ";         var_dump( $server->MAX_PROC_NAME_LEN );
    echo "MAX_SCHEMA_NAME_LEN: ";       var_dump( $server->MAX_SCHEMA_NAME_LEN );
    echo "MAX_STATEMENT_LEN: ";         var_dump( $server->MAX_STATEMENT_LEN );
    echo "MAX_TABLE_NAME_LEN: ";        var_dump( $server->MAX_TABLE_NAME_LEN );
    echo "NON_NULLABLE_COLUMNS: ";      var_dump( $server->NON_NULLABLE_COLUMNS );

    db2_close($conn);
}
?>

O exemplo acima irá imprimir:

DBMS_NAME: string(9) "DB2/LINUX"
DBMS_VER: string(10) "08.02.0000"
DB_CODEPAGE: int(1208)
DB_NAME: string(6) "SAMPLE"
INST_NAME: string(8) "db2inst1"
SPECIAL_CHARS: string(2) "@#"
KEYWORDS: int(179)
DFT_ISOLATION: string(2) "CS"
ISOLATION_OPTION: string(12) "UR CS RS RR "
SQL_CONFORMANCE: string(7) "FIPS127"
PROCEDURES: bool(true)
IDENTIFIER_QUOTE_CHAR: string(1) """
LIKE_ESCAPE_CLAUSE: bool(true)
MAX_COL_NAME_LEN: int(30)
MAX_ROW_SIZE: int(32677)
MAX_IDENTIFIER_LEN: int(18)
MAX_INDEX_SIZE: int(1024)
MAX_PROC_NAME_LEN: int(128)
MAX_SCHEMA_NAME_LEN: int(30)
MAX_STATEMENT_LEN: int(2097152)
MAX_TABLE_NAME_LEN: int(128)
NON_NULLABLE_COLUMNS: bool(true)

Veja Também

  • db2_client_info() - Returns an object with properties that describe the DB2 database client

db2_rollback
db2_set_option
IBM DB2 Funções


Set options for connection or statement resources

db2_server_info
db2_special_columns
IBM DB2 Funções
PHP Manual

db2_set_option

(PECL ibm_db2 >= 1.0.0)

db2_set_option — Set options for connection or statement resources

Descrição

bool db2_set_option ( resource $resource , array $options , int $type )

Sets options for a statement resource or a connection resource. You cannot set options for result set resources.

Parâmetros

resource

A valid statement resource as returned from db2_prepare() or a valid connection resource as returned from db2_connect() or db2_pconnect().

options

An associative array containing valid statement or connection options. This parameter can be used to change autocommit values, cursor types (scrollable or forward), and to specify the case of the column names (lower, upper, or natural) that will appear in a result set.

autocommit

Passing DB2_AUTOCOMMIT_ON turns autocommit on for the specified connection resource.

Passing DB2_AUTOCOMMIT_OFF turns autocommit off for the specified connection resource.

cursor

Passing DB2_FORWARD_ONLY specifies a forward-only cursor for a statement resource. This is the default cursor type, and is supported by all database servers.

Passing DB2_SCROLLABLE specifies a scrollable cursor for a statement resource. Scrollable cursors enable result set rows to be accessed in non-sequential order, but are only supported by IBM DB2 Universal Database databases.

binmode

Passing DB2_BINARY specifies that binary data will be returned as is. This is the default mode. This is the equivalent of setting ibm_db2.binmode=1 in php.ini.

Passing DB2_CONVERT specifies that binary data will be converted to hexadecimal encoding, and will be returned as such. This is the equivalent of setting ibm_db2.binmode=2 in php.ini.

Passing DB2_PASSTHRU specifies that binary data will be converted to NULL. This is the equivalent of setting ibm_db2.binmode=3 in php.ini.

db2_attr_case

Passing DB2_CASE_LOWER specifies that column names of the result set are returned in lower case.

Passing DB2_CASE_UPPER specifies that column names of the result set are returned in upper case.

Passing DB2_CASE_NATURAL specifies that column names of the result set are returned in natural case.

deferred_prepare

Passing DB2_DEFERRED_PREPARE_ON turns deferred prepare on for the specified statement resource.

Passing DB2_DEFERRED_PREPARE_OFF turns deferred prepare off for the specified statement resource.

The following new i5/OS options are available in ibm_db2 version 1.5.1 and later. These options apply only when running PHP and ibm_db2 natively on i5 systems.

i5_fetch_only

DB2_I5_FETCH_ON - Cursors are read-only and cannot be used for positioned updates or deletes. This is the default unless SQL_ATTR_FOR_FETCH_ONLY environment has been set to SQL_FALSE.

DB2_I5_FETCH_OFF - Cursors can be used for positioned updates and deletes.

The following new option is available in ibm_db2 version 1.8.0 and later.

rowcount

DB2_ROWCOUNT_PREFETCH_ON - Client can request the full row count prior to fetching, which means that db2_num_rows() returns the number of rows selected even when a ROLLFORWARD_ONLY cursor is used.

DB2_ROWCOUNT_PREFETCH_OFF - Client cannot request the full row count prior to fetching.

The following new options are available in ibm_db2 version 1.7.0 and later.

trusted_user

To switch the user to a trusted user, pass the User ID (String) of the trusted user as the value of this key. This option can be set on a connection resource only. To use this option, trusted context must be enabled on the connection resource.

trusted_password

The password (String) that corresponds to the user specified by the trusted_user key.

The following new options are available in ibm_db2 version 1.6.0 and later. These options provide useful tracking information that can be accessed during execution with db2_get_option().

Nota:

When the value in each option is being set, some servers might not handle the entire length provided and might truncate the value.

To ensure that the data specified in each option is converted correctly when transmitted to a host system, use only the characters A through Z, 0 through 9, and the underscore (_) or period (.).

userid

SQL_ATTR_INFO_USERID - A pointer to a null-terminated character string used to identify the client user ID sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 16 characters. This user-id is not to be confused with the authentication user-id, it is for identification purposes only and is not used for any authorization.

acctstr

SQL_ATTR_INFO_ACCTSTR - A pointer to a null-terminated character string used to identify the client accounting string sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 200 characters.

applname

SQL_ATTR_INFO_APPLNAME - A pointer to a null-terminated character string used to identify the client application name sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 32 characters.

wrkstnname

SQL_ATTR_INFO_WRKSTNNAME - A pointer to a null-terminated character string used to identify the client workstation name sent to the host database server when using DB2 Connect.

Nota:

DB2 for z/OS and OS/390 servers support up to a length of 18 characters.

type

An integer value that specifies the type of resource that was passed into the function. The type of resource and this value must correspond.

Passing 1 as the value specifies that a connection resource has been passed into the function.

Passing any integer not equal to 1 as the value specifies that a statement resource has been passed into the function.

The following table specifies which options are compatible with the available resource types:

Resource-Parameter Matrix
Key | Value | Resource Type
 |  | Connection | Statement | Result Set
autocommit | DB2_AUTOCOMMIT_ON | X | - | -
autocommit | DB2_AUTOCOMMIT_OFF | X | - | -
cursor | DB2_SCROLLABLE | - | X | -
cursor | DB2_FORWARD_ONLY | - | X | -
binmode | DB2_BINARY | X | X | -
binmode | DB2_CONVERT | X | X | -
binmode | DB2_PASSTHRU | X | X | -
db2_attr_case | DB2_CASE_LOWER | X | X | -
db2_attr_case | DB2_CASE_UPPER | X | X | -
db2_attr_case | DB2_CASE_NATURAL | X | X | -
deferred_prepare | DB2_DEFERRED_PREPARE_ON | - | X | -
deferred_prepare | DB2_DEFERRED_PREPARE_OFF | - | X | -
i5_fetch_only | DB2_I5_FETCH_ON | - | X | -
i5_fetch_only | DB2_I5_FETCH_OFF | - | X | -
rowcount | DB2_ROWCOUNT_PREFETCH_ON | - | X | -
rowcount | DB2_ROWCOUNT_PREFETCH_OFF | - | X | -
trusted_user | <USER NAME> (String) | X | - | -
trusted_password | <PASSWORD> (String) | X | - | -
userid | SQL_ATTR_INFO_USERID | X | X | -
acctstr | SQL_ATTR_INFO_ACCTSTR | X | X | -
applname | SQL_ATTR_INFO_APPLNAME | X | X | -
wrkstnname | SQL_ATTR_INFO_WRKSTNNAME | X | X | -

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting one parameter with a connection resource

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_ON);

/* Call the function using the correct resource, options array, and type values */
$result = db2_set_option($conn, $options, 1);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Options Set Successfully

Exemplo #2 Setting multiple parameters with a connection resource

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF,
                    'binmode' => DB2_PASSTHRU,
              'db2_attr_case' => DB2_CASE_UPPER,
                     'cursor' => DB2_SCROLLABLE);

/* Call the function using the correct resource, options array, and type values */
$result = db2_set_option($conn, $options, 1);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Options Set Successfully

Exemplo #3 Setting multiple parameters with an invalid key

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF,
             'MY_INVALID_KEY' => DB2_PASSTHRU,
              'db2_attr_case' => DB2_CASE_UPPER,
                     'cursor' => DB2_SCROLLABLE);

/* Call the function using the correct resource, options array, and type values */
$result = db2_set_option($conn, $options, 1);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Could Not Set Options

Exemplo #4 Setting multiple parameters with an invalid value

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF,
                    'binmode' => 'INVALID_VALUE',
              'db2_attr_case' => DB2_CASE_UPPER,
                     'cursor' => DB2_SCROLLABLE);

/* Call the function using the correct resource, options array, and type values */
$result = db2_set_option($conn, $options, 1);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Could Not Set Options

Exemplo #5 Setting multiple parameters with a connection resource and the wrong type

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF,
                    'binmode' => DB2_PASSTHRU,
              'db2_attr_case' => DB2_CASE_UPPER,
                     'cursor' => DB2_SCROLLABLE);

/* Call the function using the correct resource, options array, and the wrong type value */
$result = db2_set_option($conn, $options, 2);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Could Not Set Options

Exemplo #6 Setting multiple parameters with the wrong resource

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF,
                    'binmode' => DB2_PASSTHRU,
              'db2_attr_case' => DB2_CASE_UPPER,
                     'cursor' => DB2_SCROLLABLE);

$stmt = db2_prepare($conn, 'SELECT * FROM EMPLOYEE');

/* Call the function using the wrong resource, and the correct options array, and type values */
$result = db2_set_option($stmt, $options, 1);

/* Check if all options could be set correctly */
if($result)
{
  echo 'Options Set Successfully';
}
else
{
  echo 'Could Not Set Options';
}
?>

O exemplo acima irá imprimir:

Could Not Set Options

Exemplo #7 Putting it all together

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$hostname = 'localhost';
$port = 50000;
$protocol = 'TCPIP';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Connection String */
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;";
$conn_string .= "HOSTNAME=$hostname;PORT=$port;PROTOCOL=$protocol;";
$conn_string .= "UID=$username;PWD=$password;";

/* Obtain Connection Resource */
$conn = db2_connect($conn_string, '', '');

/* Create the associative options array with valid key-value pairs */
$options = array('db2_attr_case' => DB2_CASE_LOWER,
                        'cursor' => DB2_SCROLLABLE);

$stmt = db2_prepare($conn, 'SELECT * FROM EMPLOYEE WHERE EMPNO = ? OR EMPNO = ?');

/* Call the function using the correct resource, options array, and type values */
$option_result = db2_set_option($stmt, $options, 2);
$result = db2_execute($stmt, array('000130', '000140'));

/* Get Row 2 before Row 1 since Scrollable Cursor */
print_r(db2_fetch_assoc($stmt, 2));
print '<br /><br />';
print_r(db2_fetch_assoc($stmt, 1));

?>

O exemplo acima irá imprimir:

Array
(
    [empno] => 000140
    [firstnme] => HEATHER
    [midinit] => A
    [lastname] => NICHOLLS
    [workdept] => C01
    [phoneno] => 1793
    [hiredate] => 1976-12-15
    [job] => ANALYST
    [edlevel] => 18
    [sex] => F
    [birthdate] => 1946-01-19
    [salary] => 28420.00
    [bonus] => 600.00
    [comm] => 2274.00
)

Array
(
    [empno] => 000130
    [firstnme] => DELORES
    [midinit] => M
    [lastname] => QUINTANA
    [workdept] => C01
    [phoneno] => 4578
    [hiredate] => 1971-07-28
    [job] => ANALYST
    [edlevel] => 16
    [sex] => F
    [birthdate] => 1925-09-15
    [salary] => 23800.00
    [bonus] => 500.00
    [comm] => 1904.00
)

Exemplo #8 i5/OS cursors are read-only

<?php
  $conn = db2_connect("", "", "", array("i5_lib"=>"nobody"));
  $stmt = db2_prepare($conn, 'select * from names where first = ?');
  $name = "first2";
  db2_bind_param($stmt, 1, "name", DB2_PARAM_IN);
  $options = array("i5_fetch_only"=>DB2_I5_FETCH_ON);
  db2_set_option($stmt,$options,0);
  if (db2_execute($stmt)) {
    while ($row = db2_fetch_array($stmt)) {
      echo "{$row[0]} {$row[1]}";
    }
  }
?>

O exemplo acima irá imprimir:

first2 last2

Veja Também

  • db2_connect() - Returns a connection to a database
  • db2_pconnect() - Returns a persistent connection to a database
  • db2_exec() - Executes an SQL statement directly
  • db2_prepare() - Prepares an SQL statement to be executed
  • db2_cursor_type() - Returns the cursor type used by a statement resource

db2_server_info
db2_special_columns
IBM DB2 Funções


Returns a result set listing the unique row identifier columns for a table

db2_set_option
db2_statistics
IBM DB2 Funções
PHP Manual

db2_special_columns

(PECL ibm_db2 >= 1.0.0)

db2_special_columns — Returns a result set listing the unique row identifier columns for a table

Descrição

resource db2_special_columns ( resource $connection , string $qualifier , string $schema , string $table_name , int $scope )

Returns a result set listing the unique row identifier columns for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables.

table_name

The name of the table.

scope

Integer value representing the minimum duration for which the unique row identifier is valid. This can be one of the following values:

Integer value | SQL constant | Description
0 | SQL_SCOPE_CURROW | Row identifier is valid only while the cursor is positioned on the row.
1 | SQL_SCOPE_TRANSACTION | Row identifier is valid for the duration of the transaction.
2 | SQL_SCOPE_SESSION | Row identifier is valid for the duration of the connection.

Valor Retornado

Returns a statement resource with a result set containing rows with unique row identifier information for a table. The rows are composed of the following columns:

Column name | Description
SCOPE

Integer value | SQL constant | Description
0 | SQL_SCOPE_CURROW | Row identifier is valid only while the cursor is positioned on the row.
1 | SQL_SCOPE_TRANSACTION | Row identifier is valid for the duration of the transaction.
2 | SQL_SCOPE_SESSION | Row identifier is valid for the duration of the connection.
COLUMN_NAME | Name of the unique column.
DATA_TYPE | SQL data type for the column.
TYPE_NAME | Character string representation of the SQL data type for the column.
COLUMN_SIZE | An integer value representing the size of the column.
BUFFER_LENGTH | Maximum number of bytes necessary to store data from this column.
DECIMAL_DIGITS | The scale of the column, or NULL where scale is not applicable.
NUM_PREC_RADIX | An integer value of either 10 (representing an exact numeric data type), 2 (representing an approximate numeric data type), or NULL (representing a data type for which radix is not applicable).
PSEUDO_COLUMN | Always returns 1.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_set_option
db2_statistics
IBM DB2 Funções


Returns a result set listing the index and statistics for a table

db2_special_columns
db2_stmt_error
IBM DB2 Funções
PHP Manual

db2_statistics

(PECL ibm_db2 >= 1.0.0)

db2_statistics — Returns a result set listing the index and statistics for a table

Descrição

resource db2_statistics ( resource $connection , string $qualifier , string $schema , string $table-name , bool $unique )

Returns a result set listing the index and statistics for a table.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema that contains the targeted table. If this parameter is NULL, the statistics and indexes are returned for the schema of the current user.

table_name

The name of the table.

unique

An integer value representing the type of index information to return.

0

Return only the information for unique indexes on the table.

1

Return the information for all indexes on the table.

Valor Retornado

Returns a statement resource with a result set containing rows describing the statistics and indexes for the base tables matching the specified parameters. The rows are composed of the following columns:

Column name | Description
TABLE_CAT | The catalog that contains the table. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema that contains the table.
TABLE_NAME | Name of the table.
NON_UNIQUE

An integer value representing whether the index prohibits unique values, or whether the row represents statistics on the table itself:

Return value | Parameter type
0 (SQL_FALSE) | The index allows duplicate values.
1 (SQL_TRUE) | The index values must be unique.
NULL | This row is statistics information for the table itself.
INDEX_QUALIFIER | A string value representing the qualifier that would have to be prepended to INDEX_NAME to fully qualify the index.
INDEX_NAME | A string representing the name of the index.
TYPE

An integer value representing the type of information contained in this row of the result set:

Return value | Parameter type
0 (SQL_TABLE_STAT) | The row contains statistics about the table itself.
1 (SQL_INDEX_CLUSTERED) | The row contains information about a clustered index.
2 (SQL_INDEX_HASH) | The row contains information about a hashed index.
3 (SQL_INDEX_OTHER) | The row contains information about a type of index that is neither clustered nor hashed.
ORDINAL_POSITION | The 1-indexed position of the column in the index. NULL if the row contains statistics information about the table itself.
COLUMN_NAME | The name of the column in the index. NULL if the row contains statistics information about the table itself.
ASC_OR_DESC | A if the column is sorted in ascending order, D if the column is sorted in descending order, NULL if the row contains statistics information about the table itself.
CARDINALITY

If the row contains information about an index, this column contains an integer value representing the number of unique values in the index.

If the row contains information about the table itself, this column contains an integer value representing the number of rows in the table.

PAGES

If the row contains information about an index, this column contains an integer value representing the number of pages used to store the index.

If the row contains information about the table itself, this column contains an integer value representing the number of pages used to store the table.

FILTER_CONDITION | Always returns NULL.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_special_columns
db2_stmt_error
IBM DB2 Funções


Returns a string containing the SQLSTATE returned by an SQL statement

db2_statistics
db2_stmt_errormsg
IBM DB2 Funções
PHP Manual

db2_stmt_error

(PECL ibm_db2 >= 1.0.0)

db2_stmt_error — Returns a string containing the SQLSTATE returned by an SQL statement

Descrição

string db2_stmt_error ([ resource $stmt ] )

Returns a string containing the SQLSTATE value returned by an SQL statement.

If you do not pass a statement resource as an argument to db2_stmt_error(), the driver returns the SQLSTATE value associated with the last attempt to return a statement resource, for example, from db2_prepare() or db2_exec().

To learn what the SQLSTATE value means, you can issue the following command at a DB2 Command Line Processor prompt: db2 '? sqlstate-value'. You can also call db2_stmt_errormsg() to retrieve an explicit error message and the associated SQLCODE value.

Parâmetros

stmt

A valid statement resource.

Valor Retornado

Returns a string containing an SQLSTATE value.

Veja Também

  • db2_conn_error() - Returns a string containing the SQLSTATE returned by the last connection attempt
  • db2_conn_errormsg() - Returns the last connection error message and SQLCODE value
  • db2_stmt_errormsg() - Returns a string containing the last SQL statement error message

db2_statistics
db2_stmt_errormsg
IBM DB2 Funções


Returns a string containing the last SQL statement error message

db2_stmt_error
db2_table_privileges
IBM DB2 Funções
PHP Manual

db2_stmt_errormsg

(PECL ibm_db2 >= 1.0.0)

db2_stmt_errormsg — Returns a string containing the last SQL statement error message

Descrição

string db2_stmt_errormsg ([ resource $stmt ] )

Returns a string containing the last SQL statement error message.

If you do not pass a statement resource as an argument to db2_stmt_errormsg(), the driver returns the error message associated with the last attempt to return a statement resource, for example, from db2_prepare() or db2_exec().

Parâmetros

stmt

A valid statement resource.

Valor Retornado

Returns a string containing the error message and SQLCODE value for the last error that occurred issuing an SQL statement.

Veja Também

  • db2_conn_error() - Returns a string containing the SQLSTATE returned by the last connection attempt
  • db2_conn_errormsg() - Returns the last connection error message and SQLCODE value
  • db2_stmt_error() - Returns a string containing the SQLSTATE returned by an SQL statement

db2_stmt_error
db2_table_privileges
IBM DB2 Funções


Returns a result set listing the tables and associated privileges in a database

db2_stmt_errormsg
db2_tables
IBM DB2 Funções
PHP Manual

db2_table_privileges

(PECL ibm_db2 >= 1.0.0)

db2_table_privileges — Returns a result set listing the tables and associated privileges in a database

Descrição

resource db2_table_privileges ( resource $connection [, string $qualifier [, string $schema [, string $table_name ]]] )

Returns a result set listing the tables and associated privileges in a database.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. This parameter accepts a search pattern containing _ and % as wildcards.

table_name

The name of the table. This parameter accepts a search pattern containing _ and % as wildcards.

Valor Retornado

Returns a statement resource with a result set containing rows describing the privileges for the tables that match the specified parameters. The rows are composed of the following columns:

Column name | Description
TABLE_CAT | The catalog that contains the table. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema that contains the table.
TABLE_NAME | Name of the table.
GRANTOR | Authorization ID of the user who granted the privilege.
GRANTEE | Authorization ID of the user to whom the privilege was granted.
PRIVILEGE | The privilege that has been granted. This can be one of ALTER, CONTROL, DELETE, INDEX, INSERT, REFERENCES, SELECT, or UPDATE.
IS_GRANTABLE | A string value of "YES" or "NO" indicating whether the grantee can grant the privilege to other users.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_tables() - Returns a result set listing the tables and associated metadata in a database

db2_stmt_errormsg
db2_tables
IBM DB2 Funções


Returns a result set listing the tables and associated metadata in a database

db2_table_privileges
Ingres
IBM DB2 Funções
PHP Manual

db2_tables

(PECL ibm_db2 >= 1.0.0)

db2_tables — Returns a result set listing the tables and associated metadata in a database

Descrição

resource db2_tables ( resource $connection [, string $qualifier [, string $schema [, string $table-name [, string $table-type ]]]] )

Returns a result set listing the tables and associated metadata in a database.

Parâmetros

connection

A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.

qualifier

A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.

schema

The schema which contains the tables. This parameter accepts a search pattern containing _ and % as wildcards.

table-name

The name of the table. This parameter accepts a search pattern containing _ and % as wildcards.

table-type

A list of comma-delimited table type identifiers. To match all table types, pass NULL or an empty string. Valid table type identifiers include: ALIAS, HIERARCHY TABLE, INOPERATIVE VIEW, NICKNAME, MATERIALIZED QUERY TABLE, SYSTEM TABLE, TABLE, TYPED TABLE, TYPED VIEW, and VIEW.

Valor Retornado

Returns a statement resource with a result set containing rows describing the tables that match the specified parameters. The rows are composed of the following columns:

Column name | Description
TABLE_CAT | The catalog that contains the table. The value is NULL if this table does not have catalogs.
TABLE_SCHEM | Name of the schema that contains the table.
TABLE_NAME | Name of the table.
TABLE_TYPE | Table type identifier for the table.
REMARKS | Description of the table.

Veja Também

  • db2_column_privileges() - Returns a result set listing the columns and associated privileges for a table
  • db2_columns() - Returns a result set listing the columns and associated metadata for a table
  • db2_foreign_keys() - Returns a result set listing the foreign keys for a table
  • db2_primary_keys() - Returns a result set listing primary keys for a table
  • db2_procedure_columns() - Returns a result set listing stored procedure parameters
  • db2_procedures() - Returns a result set listing the stored procedures registered in a database
  • db2_special_columns() - Returns a result set listing the unique row identifier columns for a table
  • db2_statistics() - Returns a result set listing the index and statistics for a table
  • db2_table_privileges() - Returns a result set listing the tables and associated privileges in a database

db2_table_privileges
Ingres
IBM DB2 Funções


Ingres DBMS, EDBC, and Enterprise Access Gateways

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Ingres Funções
    • ingres_autocommit_state — Test if the connection is using autocommit
    • ingres_autocommit — Switch autocommit on or off
    • ingres_charset — Returns the installation character set
    • ingres_close — Close an Ingres database connection
    • ingres_commit — Commit a transaction
    • ingres_connect — Open a connection to an Ingres database
    • ingres_cursor — Get a cursor name for a given result resource
    • ingres_errno — Get the last Ingres error number generated
    • ingres_error — Get a meaningful error message for the last error generated
    • ingres_errsqlstate — Get the last SQLSTATE error code generated
    • ingres_escape_string — Escape special characters for use in a query
    • ingres_execute — Execute a prepared query
    • ingres_fetch_array — Fetch a row of result into an array
    • ingres_fetch_assoc — Fetch a row of result into an associative array
    • ingres_fetch_object — Fetch a row of result into an object
    • ingres_fetch_proc_return — Get the return value from a procedure call
    • ingres_fetch_row — Fetch a row of result into an enumerated array
    • ingres_field_length — Get the length of a field
    • ingres_field_name — Get the name of a field in a query result
    • ingres_field_nullable — Test if a field is nullable
    • ingres_field_precision — Get the precision of a field
    • ingres_field_scale — Get the scale of a field
    • ingres_field_type — Get the type of a field in a query result
    • ingres_free_result — Free the resources associated with a result identifier
    • ingres_next_error — Get the next Ingres error
    • ingres_num_fields — Get the number of fields returned by the last query
    • ingres_num_rows — Get the number of rows affected or returned by a query
    • ingres_pconnect — Open a persistent connection to an Ingres database
    • ingres_prepare — Prepare a query for later execution
    • ingres_query — Send an SQL query to Ingres
    • ingres_result_seek — Set the row position before fetching data
    • ingres_rollback — Roll back a transaction
    • ingres_set_environment — Set environment features controlling output options
    • ingres_unbuffered_query — Send an unbuffered SQL query to Ingres
db2_tables
Introdução
Vendor Specific Database Extensions


Introdução

The Ingres driver for PHP enables you to connect to and query the Ingres DBMS, EDBC, and Enterprise Access Gateways.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Ingres
Instalação/Configuração
Ingres


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Ingres


Dependências

To use or build the PHP extension for Ingres you must have a working Ingres client environment. You can download the client software for Ingres from » http://esd.ingres.com/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ingres.

You can download the DLL for this PECL extension from » http://esd.ingres.com/product/drivers/PHP/.

To have these functions available, you must » download and compile this extension, enabling Ingres support using the --with-ingres[=DIR] option, where DIR is the Ingres base directory. If the II_SYSTEM environment variable is not set correctly you may need to use --with-ingres=DIR to specify your Ingres installation directory.

PHP code written for version 2.x and later is not backward-compatible with earlier versions of this PHP extension. However, it is possible to run two incompatible releases within the same PHP environment using the --enable-ingres2 option. This configuration option renames the extension to ingres2, changing function names, configuration settings, and constants. For example, with this option enabled, ingres_connect() becomes ingres2_connect().

To use this extension the system environment variable II_SYSTEM must be defined. Linux and UNIX users will also need to define the shared library search path, for example, LD_LIBRARY_PATH. When used with the Apache web server these variables must be set explicitly in the startup script for Apache. In addition, the PassEnv directive is required for the Ingres extension to load the correct shared libraries. For example:

Exemplo #1 Example usage of PassEnv for Ingres

<IfModule mod_env.c>
    PassEnv II_SYSTEM
    PassEnv LD_LIBRARY_PATH
</IfModule>

Nota:

For example configurations for different web servers and operating systems see » http://community.ingres.com/wiki/Ingres_Articles#Ingres_and_Web_Servers.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Ingres configuration options
Name | Default | Changeable | Changelog
ingres.allow_persistent | "1" | PHP_INI_SYSTEM | Available since ingres 1.0.0
ingres.array_index_start | "1" | PHP_INI_ALL | Available since ingres 1.4.0.
ingres.auto | "1" | PHP_INI_ALL | Available since ingres 2.0.0.
ingres.blob_segment_length | "4096" | PHP_INI_ALL | Available since ingres 1.2.0.
ingres.cursor_mode | "0" | PHP_INI_ALL | Available since ingres 1.1.0.
ingres.default_database | NULL | PHP_INI_ALL | Available since ingres 1.0.0
ingres.default_password | NULL | PHP_INI_ALL | Available since ingres 1.0.0
ingres.default_user | NULL | PHP_INI_ALL | Available since ingres 1.0.0
ingres.describe | 1 | PHP_INI_ALL | Available since ingres 2.1.0
ingres.fetch_buffer_size | 100 | PHP_INI_ALL | Available since ingres 2.1.0
ingres.max_links | "-1" | PHP_INI_SYSTEM | Available since ingres 1.0.0
ingres.max_persistent | "-1" | PHP_INI_SYSTEM | Available since ingres 1.0.0
ingres.reuse_connection | "1" | PHP_INI_ALL | Available since ingres 2.0.0
ingres.scrollable | "1" | PHP_INI_ALL | Available since ingres 2.0.0.
ingres.trace | "0" | PHP_INI_ALL | Available since ingres 2.0.0.
ingres.trace_connect | "0" | PHP_INI_ALL | Available since ingres 1.2.1.
ingres.utf8 | "1" | PHP_INI_ALL | Available since ingres 2.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

ingres.allow_persistent boolean

Specifies whether to allow persistent connections to Ingres

ingres.array_index_start integer

Specifies the start value for an integer key for arrays generated by ingres_fetch_row() or ingres_fetch_array(). By default ingres.array_index_start is set to 1. If you wish to make the ingres extension behave like other database extensions set this configuration option to 0.

ingres.auto boolean

Enables or disables autocommit emulation. Ingres cannot have multiple cursors open with autocommit enabled. When enabled, the driver emulates autocommit.

ingres.blob_segment_length integer

Specifies the amount of memory to use when reading BLOB data, in bytes

ingres.cursor_mode integer

Specifies the default mode for cursors opened with ingres_prepare(). Valid values are INGRES_CURSOR_UPDATE or INGRES_CURSOR_READONLY.

ingres.default_database string

Specifies the default database name to use when connecting to the database server if no other name is specified. Does not apply in Modo seguro de SQL.

ingres.default_password string

Specifies the default password to use when connecting to the database server if no other name is specified. Does not apply in Modo seguro de SQL.

ingres.default_user string

Specifies the default user name to use when connecting to the database server if no other name is specified. Does not apply in Modo seguro de SQL.

ingres.describe boolean

Enables the use of DESCRIBE INPUT to determine the expected data types for queries that use parameters. Available with Ingres 9.1.0 and later. When disabled, queries that have parameters passed may need to manually describe the types of those parameters using the types parameter in ingres_query().

Nota:

Enabling this feature with ingres_query() will cause additional communications traffic between this extension and the server. To minimize this additional traffic, use ingres_prepare() and ingres_execute().

ingres.fetch_buffer_size integer

Specifies the number of pre-fetch rows that ingres_fetch_array(), ingres_fetch_object() and ingres_fetch_row() will try and fetch in one fetch operation.

ingres.max_links integer

Specifies the maximum number of Ingres sessions allowed per process or thread. The number of sessions should not exceed the total number of connected sessions configured within Ingres.

ingres.max_persistent integer

Specifies the maximum number of persistent Ingres sessions allowed per process or thread. The number of sessions should not exceed the total number of connected sessions configured within Ingres.

ingres.reuse_connection boolean

Reuses an existing active connection if connecting to the same database with the same user name

ingres.scrollable boolean

Enables support for scrollable cursors. When fetching CLOB or BLOB data, this should be set to FALSE. Available with Ingres 9.2.0 or later.

ingres.trace boolean

Enables simple tracing using E_NOTICE messages

ingres.trace_connect boolean

Prints E_NOTICE messages during ingres_connect() or ingres_pconnect() calls

ingres.utf8 boolean

Assumes that strings being passed to National Character column types (NVARCHAR or NCHAR) are using UTF8 encoding and converts them to UTF16 for the server

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

ingres_connect() and ingres_pconnect() return an Ingres link identifier.

ingres_query() and ingres_unbuffered_query() return an Ingres result identifier.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

INGRES_ASSOC (integer)
Columns are returned into the array having the fieldname as the array index. Used with ingres_fetch_array().
INGRES_NUM (integer)
Columns are returned into the array having a numerical index to the fields. By default this index starts at 1, the first field in the result. To change this value, see ingres.array_index_start. Used with ingres_fetch_array().
INGRES_BOTH (integer)
Columns are returned into the array having both a numerical index and the fieldname as the array index. Used with ingres_fetch_array().
INGRES_EXT_VERSION (string)
Specifies the version of the Ingres Extension. Available since version 1.2.0 of the PECL extension.
INGRES_API_VERSION (integer)
Specifies the version of Ingres OpenAPI that the extension was built against. Available since version 1.2.0 of the PECL extension.
INGRES_CURSOR_READONLY (integer)
Specifies that Ingres cursors should be opened in "readonly" mode. Available since version 1.2.0 of the PECL extension. Used with ingres.cursor_mode.
INGRES_CURSOR_UPDATE (integer)
Specifies that Ingres cursors should be opened "for update." Available since version 1.2.0 of the PECL extension. Used with ingres.cursor_mode.
INGRES_DATE_MULTINATIONAL (integer)
Equivalent to the II_DATE_FORMAT setting of MULTINATIONAL. Available since version 1.2.0 of the PECL extension. Used with ingres_connect(), ingres_pconnect() and ingres_set_environment(). See options in ingres_set_environment().
INGRES_DATE_MULTINATIONAL4 (integer)
Equivalent to the II_DATE_FORMAT setting of MULTINATIONAL4. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_FINNISH (integer)
Equivalent to the II_DATE_FORMAT setting of FINNISH. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_ISO (integer)
Equivalent to the II_DATE_FORMAT setting of ISO. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_ISO4 (integer)
Equivalent to the II_DATE_FORMAT setting of ISO4. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_GERMAN (integer)
Equivalent to the II_DATE_FORMAT setting of GERMAN. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_MDY (integer)
Equivalent to the II_DATE_FORMAT setting of MDY. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_DMY (integer)
Equivalent to the II_DATE_FORMAT setting of DMY. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_DATE_YMD (integer)
Equivalent to the II_DATE_FORMAT setting of YMD. Available since version 1.2.0 of the PECL extension.
Used with
ingres_connect(), ingres_pconnect()
and ingres_set_environment(). See options
in ingres_set_environment().
INGRES_MONEY_LEADING (integer)
Specifies the currency character that should be placed at the start of a money value. Equivalent to setting II_MONEY_FORMAT to "L:". Available since version 1.2.0 of the PECL extension. Used with ingres_connect(), ingres_pconnect() and ingres_set_environment(). See options in ingres_set_environment().
INGRES_MONEY_TRAILING (integer)
Specifies the currency character that should be placed at the end of a money value. Equivalent to setting II_MONEY_FORMAT to "T:". Available since version 1.2.0 of the PECL extension. Used with ingres_connect(), ingres_pconnect() and ingres_set_environment(). See options in ingres_set_environment().
INGRES_STRUCTURE_BTREE (integer)
Specifies the default table or index structure to BTREE when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_CBTREE (integer)
Specifies the default table or index structure to COMPRESSED BTREE when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_HASH (integer)
Specifies the default table or index structure to HASH when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_CHASH (integer)
Specifies the default table or index structure to COMPRESSED HASH when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_HEAP (integer)
Specifies the default table structure to HEAP when used in combination with the
options option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_CHEAP (integer)
Specifies the default table structure to COMPRESSED HEAP when used in combination with the
options option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_ISAM (integer)
Specifies the default table or index structure to ISAM when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
INGRES_STRUCTURE_CISAM (integer)
Specifies the default table or index structure to COMPRESSED ISAM when used in combination with the
options or index_structure option when connecting. Available since version 1.4.0 of the PECL extension.
Used with ingres_connect() and
ingres_pconnect(). See options
in ingres_connect().
Tipos Resource
Exemplos
Ingres


Exemplos

Índice

Constantes pré-definidas
Ingres


Exemplos
Ingres Funções
Exemplos
PHP Manual

The following simple example shows how to connect to an Ingres database, execute a query, print resulting rows and disconnect from the database.

Exemplo #1 Simple Ingres Example

<?php
// Connecting, selecting database
$link = ingres_connect("database", "user", "password")
    or die("Could not connect: " . ingres_error($link));
echo "Connected successfully";

// Select from a table that exists in all Ingres databases
$query = "SELECT * FROM iitables";
$result = ingres_query($link,$query) or die("Query failed: " .
ingres_error($link));

// Print results in HTML
// relid - table name
// relowner - table owner
echo "<table>\n";
while ($iitables = ingres_fetch_object($result)) {
    echo "\t<tr>\n";
    echo "\t\t<td>" . $iitables->relid . "</td>\n";
    echo "\t\t<td>" . $iitables->relowner . "</td>\n";
    echo "\t</tr>\n";
}
echo "</table>\n";

// Free results
ingres_free_result($result);

// Commit transaction
ingres_commit($link);

// Closing connection
ingres_close($link);
?>

Exemplos
Ingres Funções
Exemplos


Ingres Funções

Índice

  • ingres_autocommit_state — Test if the connection is using autocommit
  • ingres_autocommit — Switch autocommit on or off
  • ingres_charset — Returns the installation character set
  • ingres_close — Close an Ingres database connection
  • ingres_commit — Commit a transaction
  • ingres_connect — Open a connection to an Ingres database
  • ingres_cursor — Get a cursor name for a given result resource
  • ingres_errno — Get the last Ingres error number generated
  • ingres_error — Get a meaningful error message for the last error generated
  • ingres_errsqlstate — Get the last SQLSTATE error code generated
  • ingres_escape_string — Escape special characters for use in a query
  • ingres_execute — Execute a prepared query
  • ingres_fetch_array — Fetch a row of result into an array
  • ingres_fetch_assoc — Fetch a row of result into an associative array
  • ingres_fetch_object — Fetch a row of result into an object
  • ingres_fetch_proc_return — Get the return value from a procedure call
  • ingres_fetch_row — Fetch a row of result into an enumerated array
  • ingres_field_length — Get the length of a field
  • ingres_field_name — Get the name of a field in a query result
  • ingres_field_nullable — Test if a field is nullable
  • ingres_field_precision — Get the precision of a field
  • ingres_field_scale — Get the scale of a field
  • ingres_field_type — Get the type of a field in a query result
  • ingres_free_result — Free the resources associated with a result identifier
  • ingres_next_error — Get the next Ingres error
  • ingres_num_fields — Get the number of fields returned by the last query
  • ingres_num_rows — Get the number of rows affected or returned by a query
  • ingres_pconnect — Open a persistent connection to an Ingres database
  • ingres_prepare — Prepare a query for later execution
  • ingres_query — Send an SQL query to Ingres
  • ingres_result_seek — Set the row position before fetching data
  • ingres_rollback — Roll back a transaction
  • ingres_set_environment — Set environment features controlling output options
  • ingres_unbuffered_query — Send an unbuffered SQL query to Ingres
ingres_autocommit_state
Ingres


Test if the connection is using autocommit

Ingres Funções
ingres_autocommit
Ingres Funções
PHP Manual

ingres_autocommit_state

(PECL ingres >= 2.0.0)

ingres_autocommit_state — Test if the connection is using autocommit

Descrição

bool ingres_autocommit_state ( resource $link )

ingres_autocommit_state() is called to determine whether the current link has autocommit enabled or not.

Parâmetros

link

The connection link identifier

Valor Retornado

Returns TRUE if autocommit is enabled or FALSE when autocommit is disabled

Veja Também

  • ingres_autocommit() - Switch autocommit on or off
  • ingres_query() - Send an SQL query to Ingres

Ingres Funções
ingres_autocommit
Ingres Funções


Switch autocommit on or off

ingres_autocommit_state
ingres_charset
Ingres Funções
PHP Manual

ingres_autocommit

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_autocommit — Switch autocommit on or off

Descrição

bool ingres_autocommit ( resource $link )

ingres_autocommit() is called before opening a transaction (before the first call to ingres_query() or just after a call to ingres_rollback() or ingres_commit()) to switch the autocommit mode of the server on or off (when the script begins the autocommit mode is off).

When autocommit mode is on, every query is automatically committed by the server, as if ingres_commit() was called after every call to ingres_query(). To see if autocommit is enabled use, ingres_autocommit_state().

By default Ingres will rollback any uncommitted transactions at the end of a request. Use this function or ingres_commit() to ensure your data is committed to the database.

Parâmetros

link

The connection link identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ingres_autocommit_state() - Test if the connection is using autocommit
  • ingres_query() - Send an SQL query to Ingres
  • ingres_rollback() - Roll back a transaction
  • ingres_commit() - Commit a transaction

ingres_autocommit_state
ingres_charset
Ingres Funções


Returns the installation character set

ingres_autocommit
ingres_close
Ingres Funções
PHP Manual

ingres_charset

(PECL ingres >= 2.1.0)

ingres_charset — Returns the installation character set

Descrição

string ingres_charset ( resource $link )

ingres_charset() is called to determine the character set being used by the Ingres client, from II_CHARSETxx (where xx is the installation code).

Nota:

You can override the value returned by using the function putenv(). Changing the value of II_CHARSETxx in a running Ingres installation can cause data corruption.

Parâmetros

link

The connection link identifier

Valor Retornado

Returns a string with the value for II_CHARSETxx or returns NULL if the value could not be determined.

Exemplos

Exemplo #1 ingres_charset() - Get the installation character set

<?php
$link = ingres_connect($database, $user, $password);

echo ingres_charset($link) . "\n";

ingres_close($link);
?>

Veja Também

  • ingres_connect() - Open a connection to an Ingres database
  • ingres_query() - Send an SQL query to Ingres

ingres_autocommit
ingres_close
Ingres Funções


Close an Ingres database connection

ingres_charset
ingres_commit
Ingres Funções
PHP Manual

ingres_close

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_close — Close an Ingres database connection

Descrição

bool ingres_close ( resource $link )

ingres_close() closes the connection to the Ingres server that is associated with the specified link.

ingres_close() is usually unnecessary, as it will not close persistent connections and all non-persistent connections are automatically closed at the end of the script.

Parâmetros

link

The connection link identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ingres_connect() - Open a connection to an Ingres database
  • ingres_pconnect() - Open a persistent connection to an Ingres database

ingres_charset
ingres_commit
Ingres Funções


Commit a transaction

ingres_close
ingres_connect
Ingres Funções
PHP Manual

ingres_commit

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_commit — Commit a transaction

Descrição

bool ingres_commit ( resource $link )

ingres_commit() commits the currently open transaction, making all changes made to the database permanent.

This closes the transaction. A new transaction can be opened by sending a query with ingres_query().

You can also have the server commit automatically after every query by calling ingres_autocommit() before opening the transaction.

By default Ingres will roll back any uncommitted transactions at the end of a request. Use this function or ingres_autocommit() to ensure your that data is committed to the database.

Parâmetros

link

The connection link identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_rollback() - Roll back a transaction
  • ingres_autocommit() - Switch autocommit on or off

ingres_close
ingres_connect
Ingres Funções


Open a connection to an Ingres database

ingres_commit
ingres_cursor
Ingres Funções
PHP Manual

ingres_connect

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_connect — Open a connection to an Ingres database

Descrição

resource ingres_connect ([ string $database [, string $username [, string $password [, array $options ]]]] )

ingres_connect() opens a connection with the given Ingres database.

The connection is closed when the script ends or when ingres_close() is called on this link.

Parâmetros

If some parameters are missing, ingres_connect() uses the values in php.ini for ingres.default_database, ingres.default_user and ingres.default_password.

database

The database name. Must follow the syntax:

[vnode::]dbname[/svr_class]

username

The Ingres user name

password

The password associated with username

options

ingres_connect() options

Option name | Option type | Description | Example
date_century_boundary | integer | The threshold by which a 2-digit year is determined to be in the current century or in the next century. Equivalent to II_DATE_CENTURY_BOUNDARY. | 50
group | string | Specifies the group ID of the user, equivalent to the "-G" flag | payroll
role | string | The role ID of the application. If a role password is required, the parameter value should be specified as "role/password"
effective_user | string | The ingres user account being impersonated, equivalent to the "-u" flag | another_user
dbms_password | string | The internal database password for the user connecting to Ingres | s3cr3t
table_structure string

The default structure for new tables. Valid values for table_structure are:

  • INGRES_STRUCTURE_BTREE
  • INGRES_STRUCTURE_HASH
  • INGRES_STRUCTURE_HEAP
  • INGRES_STRUCTURE_ISAM
  • INGRES_STRUCTURE_CBTREE
  • INGRES_STRUCTURE_CISAM
  • INGRES_STRUCTURE_CHASH
  • INGRES_STRUCTURE_CHEAP

 INGRES_STRUCTURE_BTREE
index_structure string

The default structure for new secondary indexes. Valid values for index_structure are:

  • INGRES_STRUCTURE_CBTREE
  • INGRES_STRUCTURE_CISAM
  • INGRES_STRUCTURE_CHASH
  • INGRES_STRUCTURE_BTREE
  • INGRES_STRUCTURE_HASH
  • INGRES_STRUCTURE_ISAM

 INGRES_STRUCTURE_HASH
login_local | boolean | Determines how the connection user ID and password are used when a VNODE is included in the target database string. If set to TRUE, the user ID and password are used to locally access the VNODE, and the VNODE login information is used to establish the DBMS connection. If set to FALSE, the process user ID is used to access the VNODE, and the connection user ID and password are used in place of the VNODE login information to establish the DBMS connection. This parameter is ignored if no VNODE is included in the target database string. The default is FALSE. | TRUE
timezone | string | Controls the timezone of the session. If not set it will default to the value defined by II_TIMEZONE_NAME. If II_TIMEZONE_NAME is not defined, NA-PACIFIC (GMT-8 with Daylight Savings) is used.
date_format integer

Sets the allowable input and output format for Ingres dates. Defaults to the value defined by II_DATE_FORMAT. If II_DATE_FORMAT is not set the default date format is US, e.g. mm/dd/yy. Valid values for date_format are:

  • INGRES_DATE_DMY
  • INGRES_DATE_FINISH
  • INGRES_DATE_GERMAN
  • INGRES_DATE_ISO
  • INGRES_DATE_ISO4
  • INGRES_DATE_MDY
  • INGRES_DATE_MULTINATIONAL
  • INGRES_DATE_MULTINATIONAL4
  • INGRES_DATE_YMD
  • INGRES_DATE_US

 INGRES_DATE_MULTINATIONAL4
decimal_separator string The character identifier for decimal data ","
money_lort integer

Leading or trailing currency sign. Valid values for money_lort are:

  • INGRES_MONEY_LEADING
  • INGRES_MONEY_TRAILING

 INGRES_MONEY_TRAILING
money_sign string The currency symbol to be used with the MONEY datatype €
money_precision | integer | The precision of the MONEY datatype | 3
float4_precision | integer | Precision of the FLOAT4 datatype | 10
float8_precision | integer | Precision of the FLOAT8 data | 10
blob_segment_length | integer | The amount of data in bytes to fetch at a time when retrieving BLOB or CLOB data, defaults to 4096 bytes when not explicitly set | 8192

Valor Retornado

Returns a Ingres link resource on success or FALSE on failure

Exemplos

Exemplo #1 Open a connection to an Ingres database

<?php
$link = ingres_connect("mydb", "user", "pass")
    or die("Could not connect");
echo "Connected successfully";
ingres_close($link);
?>

Veja Também

  • ingres_pconnect() - Open a persistent connection to an Ingres database
  • ingres_close() - Close an Ingres database connection

ingres_commit
ingres_cursor
Ingres Funções


Get a cursor name for a given result resource

ingres_connect
ingres_errno
Ingres Funções
PHP Manual

ingres_cursor

(PECL ingres >= 1.1.0)

ingres_cursor — Get a cursor name for a given result resource

Descrição

string ingres_cursor ( resource $result )

Returns a string with the active cursor name. If no cursor is active then NULL is returned.

Parâmetros

result

The query result identifier

Valor Retornado

Returns a string containing the active cursor name. If no cursor is active then NULL is returned.

Exemplos

Exemplo #1 Get cursor name for a query resource

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_prepare($link, "select * from table");

$cursor_name = ingres_cursor($result);

echo $cursor_name;

?>

Veja Também

  • ingres_prepare() - Prepare a query for later execution
  • ingres_execute() - Execute a prepared query

ingres_connect
ingres_errno
Ingres Funções


Get the last Ingres error number generated

ingres_cursor
ingres_error
Ingres Funções
PHP Manual

ingres_errno

(PECL ingres >= 1.1.0)

ingres_errno — Get the last Ingres error number generated

Descrição

int ingres_errno ([ resource $link ] )

Returns an integer containing the last error number. If no error was reported 0 is returned.

If a link resource is passed to ingres_errno() it returns the last error recorded for the link. If no link is passed, then ingres_errno() returns the last error reported using the default link.

The function, ingres_errno(), should always be called after executing a database query. Calling another function before ingres_errno() is called will reset or change any error code from the last Ingres function call.

Parâmetros

link

The connection link identifier

Valor Retornado

Returns an integer containing the last error number. If no error was reported, 0 is returned.

Exemplos

Exemplo #1 Get the last Ingres error number generated

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link, "select * from table");

$error_code = ingres_errno($link);

if ( $error_code != 0 ) {
   echo "An error occured - " . $error_code;
}
?>

Veja Também

  • ingres_error() - Get a meaningful error message for the last error generated
  • ingres_errsqlstate() - Get the last SQLSTATE error code generated
  • ingres_next_error() - Get the next Ingres error

ingres_cursor
ingres_error
Ingres Funções


Get a meaningful error message for the last error generated

ingres_errno
ingres_errsqlstate
Ingres Funções
PHP Manual

ingres_error

(PECL ingres >= 1.1.0)

ingres_error — Get a meaningful error message for the last error generated

Descrição

string ingres_error ([ resource $link ] )

Returns a string containing the last error, or NULL if no error has occurred.

If a link resource is passed to ingres_error(), it returns the last error recorded for the link. If no link is passed then ingres_error() returns the last error reported using the default link.

The function, ingres_error(), should always be called after executing any database query. Calling another function before ingres_error() is called will reset or change any error message from the last Ingres function call.

Parâmetros

link

The connection link identifier

Valor Retornado

Returns a string containing the last error, or NULL if no error has occurred.

Exemplos

Exemplo #1 Get a message for the last error generated

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link, "select * from table");

$error_text = ingres_error();

if (!is_null($error_text)) {
   echo "An error occured - " . $error_text;
}
?>

Veja Também

  • ingres_errno() - Get the last Ingres error number generated
  • ingres_errsqlstate() - Get the last SQLSTATE error code generated
  • ingres_next_error() - Get the next Ingres error

ingres_errno
ingres_errsqlstate
Ingres Funções


Get the last SQLSTATE error code generated

ingres_error
ingres_escape_string
Ingres Funções
PHP Manual

ingres_errsqlstate

(PECL ingres >= 1.1.0)

ingres_errsqlstate — Get the last SQLSTATE error code generated

Descrição

string ingres_errsqlstate ([ resource $link ] )

Returns a string containing the last SQLSTATE, or NULL if no error has occurred.

If a link resource is passed to ingres_errsqlstate(), it returns the last error recorded for the link. If no link is passed, then ingres_errsqlstate() returns the last error reported using the default link.

The function, ingres_errsqlstate(), should always be called after executing any database query. Calling another function before ingres_errsqlstate() is called will reset or change any error message from the last Ingres function call.

Parâmetros

link

The connection link identifier

Valor Retornado

Returns a string containing the last SQLSTATE, or NULL if no error has occurred.

Exemplos

Exemplo #1 Get the last SQLSTATE error code generated

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link, "select * from table");

$error_sqlstate = ingres_errsqlstate($link);

if (!is_null($error_sqlstate)) {
   echo "An error occured - " . $error_sqlstate;
}
?>

Veja Também

  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated
  • ingres_next_error() - Get the next Ingres error

ingres_error
ingres_escape_string
Ingres Funções


Escape special characters for use in a query

ingres_errsqlstate
ingres_execute
Ingres Funções
PHP Manual

ingres_escape_string

(PECL ingres >= 2.1.0)

ingres_escape_string — Escape special characters for use in a query

Descrição

string ingres_escape_string ( resource $link , string $source_string )

ingres_escape_string() is used to escape certain characters within a string before it is sent to the database server.

Parâmetros

link

The connection link identifier

source_string

The source string to be parsed

Valor Retornado

Returns a string containing the escaped data.

Exemplos

Exemplo #1 Escape special characters for use in a query

<?php
$link = ingres_connect($database, $user, $password);

$last_name = "O'Connor";

$sql = sprintf("select * from user_profile where up_last = '%s'", ingres_escape_string( $link, $last_name));

$result = ingres_query($link, $sql);

while ($user = ingres_fetch_object($result))
{
  echo $user->up_first . '<BR/>';
}

ingres_commit($link);

ingres_close($link);

?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres

ingres_errsqlstate
ingres_execute
Ingres Funções


Execute a prepared query

ingres_escape_string
ingres_fetch_array
Ingres Funções
PHP Manual

ingres_execute

(PECL ingres >= 1.1.0)

ingres_execute — Execute a prepared query

Descrição

bool ingres_execute ( resource $result [, array $params [, string $types ]] )

Execute a query prepared using ingres_prepare().

Nota: Related Configurations

See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in Runtime Configuration.

Parâmetros

result

The result query identifier

params

An array of parameter values to be used with the query

types

A string containing a sequence of types for the parameter values passed. See the types parameter in ingres_query() for the list of type codes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ingres_unbuffered_query() - Send an unbuffered SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array
  • ingres_commit() - Commit a transaction
  • ingres_rollback() - Roll back a transaction
  • ingres_autocommit() - Switch autocommit on or off
  • ingres_set_environment() - Set environment features controlling output options
  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated

ingres_escape_string
ingres_fetch_array
Ingres Funções


Fetch a row of result into an array

ingres_execute
ingres_fetch_assoc
Ingres Funções
PHP Manual

ingres_fetch_array

( PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_fetch_array — Fetch a row of result into an array

Descrição

array ingres_fetch_array ( resource $result [, int $result_type ] )

This function is an extended version of ingres_fetch_row(). In addition to storing the data in the numeric indices of the result array, it also stores the data in associative indices, using the field names as keys.

If two or more columns of the result have the same field names, the last column will take precedence. To access the another column or columns of the same name, you must use the numeric index of the column or make an alias for the column. For example:

<?php

$result = ingres_query($link, "select ap_place as city, ap_ccode as country from airport where ap_iatacode = 'VLL'");
$result = ingres_fetch_array($result);
$foo = $result["city"];
$bar = $result["country"];

?>

With regard to speed, the function is identical to ingres_fetch_object(), and almost as quick as ingres_fetch_row() (the difference is insignificant).

By default, arrays created by ingres_fetch_array() start from position 1 and not 0 as with other DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter ingres.array_index_start.

Nota: Related Configurations

See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in Runtime Configuration.

Parâmetros

result

The query result identifier

result_type

The result type. This result_type can be INGRES_NUM for enumerated array, INGRES_ASSOC for associative array, or INGRES_BOTH (default).

Valor Retornado

Returns an array that corresponds to the fetched row, or FALSE if there are no more rows

Exemplos

Exemplo #1 Fetch a row of result into an array

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link,"select * from table");
while ($row = ingres_fetch_array($result)) {
    echo $row["user_id"];  // using associative array
    echo $row["fullname"];
    echo $row[1];          // using enumerated array
    echo $row[2];
}
?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_num_fields() - Get the number of fields returned by the last query
  • ingres_field_name() - Get the name of a field in a query result
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_execute
ingres_fetch_assoc
Ingres Funções


Fetch a row of result into an associative array

ingres_fetch_array
ingres_fetch_object
Ingres Funções
PHP Manual

ingres_fetch_assoc

(PECL ingres >= 2.2.2)

ingres_fetch_assoc — Fetch a row of result into an associative array

Descrição

array ingres_fetch_assoc ( resource $result )

This function is stores the data fetched from a query executed using ingres_query() in an associative array, using the field names as keys.

With regard to speed, the function is identical to ingres_fetch_object(), and almost as quick as ingres_fetch_row() (the difference is insignificant).

By default, arrays created by ingres_fetch_assoc() start from position 1 and not 0 as with other DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter ingres.array_index_start.

Nota: Related Configurations

See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in Runtime Configuration.

Parâmetros

result

The query result identifier

Valor Retornado

Returns an associative array that corresponds to the fetched row, or FALSE if there are no more rows

Exemplos

Exemplo #1 Fetch a row into an associative array

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link,"select * from table");
while ($row = ingres_fetch_assoc($result)) {
    echo $row["user_id"];  // using associative array
    echo $row["fullname"];
}
?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_num_fields() - Get the number of fields returned by the last query
  • ingres_field_name() - Get the name of a field in a query result
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_fetch_array
ingres_fetch_object
Ingres Funções


Fetch a row of result into an object

ingres_fetch_assoc
ingres_fetch_proc_return
Ingres Funções
PHP Manual

ingres_fetch_object

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_fetch_object — Fetch a row of result into an object

Descrição

object ingres_fetch_object ( resource $result [, int $result_type ] )

This function is similar to ingres_fetch_array(), with one difference - an object is returned instead of an array. Indirectly, this means that you can access the data only by the field names and not by their offsets (numbers are illegal property names).

With regard to speed, the function is identical to ingres_fetch_array(), and almost as quick as ingres_fetch_row() (the difference is insignificant).

Nota: Related Configurations

See also the ingres.fetch_buffer_size and ingres.utf8 directives in Runtime Configuration.

Parâmetros

link

The query result identifier

result_type

(Optional argument.) result_type is a constant and can take the following values: INGRES_ASSOC, INGRES_NUM, and INGRES_BOTH.

Valor Retornado

Returns an object that corresponds to the fetched row, or FALSE if there are no more rows

Exemplos

Exemplo #1 Fetch a row into an object

<?php
$link = ingres_connect($database, $user, $password);
$result = ingres_query($link, "select * from table");
while ($row = ingres_fetch_object($result)) {
    echo $row->user_id;
    echo $row->fullname;
}
?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_num_fields() - Get the number of fields returned by the last query
  • ingres_field_name() - Get the name of a field in a query result
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_fetch_assoc
ingres_fetch_proc_return
Ingres Funções


Get the return value from a procedure call

ingres_fetch_object
ingres_fetch_row
Ingres Funções
PHP Manual

ingres_fetch_proc_return

(PECL ingres >= 1.4.0)

ingres_fetch_proc_return — Get the return value from a procedure call

Descrição

int ingres_fetch_proc_return ( resource $result )

This function is used to retrieve the return value following the execution of an Ingres database procedure (stored procedure).

Nota:

If used with a row-producing procedure, this function should be called after all the rows from the procedure have been fetched using ingres_fetch_array(), ingres_fetch_object() or ingres_fetch_row(). This function will eliminate any rows yet to be fetched should there be any left over.

Parâmetros

result

The result identifier for a query

Valor Retornado

Returns an integer if there is a return value otherwise it will return NULL.

Exemplos

Exemplo #1 Get the return value from a procedure call

<?php

$link = ingres_connect($database);

if ( ingres_errno() != 0 ) {
    $error_text = ingres_error();
    die($error_text);
}

$result = ingres_query($link, "execute procedure php_proc (value = 1000)");

if ( ingres_errno() != 0 ) {
    $error_text = ingres_error();
    die($error_text);
}

echo "return value - " . ingres_fetch_proc_return($result) . "\n";

ingres_close($link);

?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_fetch_object
ingres_fetch_row
Ingres Funções


Fetch a row of result into an enumerated array

ingres_fetch_proc_return
ingres_field_length
Ingres Funções
PHP Manual

ingres_fetch_row

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_fetch_row — Fetch a row of result into an enumerated array

Descrição

array ingres_fetch_row ( resource $result )

ingres_fetch_row() returns an array that corresponds to the fetched row, or FALSE if there are no more rows. Each result column is stored in an array offset, starting at offset 1.

Subsequent calls to ingres_fetch_row() return the next row in the result set, or FALSE if there are no more rows.

By default, arrays created by ingres_fetch_row() start from position 1 and not 0 as with other DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter ingres.array_index_start.

Nota: Related Configurations

See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in Runtime Configuration.

Parâmetros

result

The query result identifier

Valor Retornado

Returns an array that corresponds to the fetched row, or FALSE if there are no more rows

Exemplos

Exemplo #1 Fetch a row of result into an enumerated array

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link, "select * from table");
while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
?>

Veja Também

  • ingres_num_fields() - Get the number of fields returned by the last query
  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object

ingres_fetch_proc_return
ingres_field_length
Ingres Funções


Get the length of a field

ingres_fetch_row
ingres_field_name
Ingres Funções
PHP Manual

ingres_field_length

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_length — Get the length of a field

Descrição

int ingres_field_length ( resource $result , int $index )

ingres_field_length() returns the length of a field. This is the number of bytes the server uses to store the field. For detailed information, see the Ingres OpenAPI User Guide, Appendix "Data Types" in the Ingres documentation.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the column number whose length will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

Returns the length of a field.

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_fetch_row
ingres_field_name
Ingres Funções


Get the name of a field in a query result

ingres_field_length
ingres_field_nullable
Ingres Funções
PHP Manual

ingres_field_name

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_name — Get the name of a field in a query result

Descrição

string ingres_field_name ( resource $result , int $index )

ingres_field_name() returns the name of a field in a query result.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the field whose name will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

Returns the name of a field in a query result or FALSE on failure

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_field_length
ingres_field_nullable
Ingres Funções


Test if a field is nullable

ingres_field_name
ingres_field_precision
Ingres Funções
PHP Manual

ingres_field_nullable

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_nullable — Test if a field is nullable

Descrição

bool ingres_field_nullable ( resource $result , int $index )

Test if a field is nullable.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the field whose nullability will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

ingres_field_nullable() returns TRUE if the field can be set to the NULL value and FALSE if it cannot

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_field_name
ingres_field_precision
Ingres Funções


Get the precision of a field

ingres_field_nullable
ingres_field_scale
Ingres Funções
PHP Manual

ingres_field_precision

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_precision — Get the precision of a field

Descrição

int ingres_field_precision ( resource $result , int $index )

ingres_field_precision() returns the precision of a field. This value is used only for decimal, float, and money SQL data types. For detailed information, see the Ingres OpenAPI User Guide, Appendix "Data Types" in the Ingres documentation.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the field whose precision will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

Returns the field precision as an integer

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_field_nullable
ingres_field_scale
Ingres Funções


Get the scale of a field

ingres_field_precision
ingres_field_type
Ingres Funções
PHP Manual

ingres_field_scale

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_scale — Get the scale of a field

Descrição

int ingres_field_scale ( resource $result , int $index )

ingres_field_scale() returns the scale of a field. This value is used only for the decimal SQL data type. For detailed information, see the Ingres OpenAPI User Guide, Appendix "Data Types" in the Ingres documentation.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the field whose scale will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

Returns the scale of the field, as an integer

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_field_precision
ingres_field_type
Ingres Funções


Get the type of a field in a query result

ingres_field_scale
ingres_free_result
Ingres Funções
PHP Manual

ingres_field_type

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_field_type — Get the type of a field in a query result

Descrição

string ingres_field_type ( resource $result , int $index )

Get the type of a field in a query result.

Nota: Related Configurations

See ingres.array_index_start in Runtime Configuration

Parâmetros

result

The query result identifier

index

index is the field whose type will be retrieved.

The possible values of index depend upon the value of ingres.array_index_start. If ingres.array_index_start is 1 (the default) then index must be between 1 and the value returned by ingres_num_fields(). If ingres.array_index_start is 0 then index must be between 0 and ingres_num_fields() - 1.

Valor Retornado

ingres_field_type() returns the type of a field in a query result or FALSE on failure. Examples of types returned are IIAPI_BYTE_TYPE, IIAPI_CHA_TYPE, IIAPI_DTE_TYPE, IIAPI_FLT_TYPE, IIAPI_INT_TYPE, IIAPI_VCH_TYPE. Some of these types can map to more than one SQL type depending on the length of the field (see ingres_field_length()). For example IIAPI_FLT_TYPE can be a float4 or a float8. For detailed information, see the Ingres OpenAPI User Guide, Appendix "Data Types" in the Ingres documentation.

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_field_scale
ingres_free_result
Ingres Funções


Free the resources associated with a result identifier

ingres_field_type
ingres_next_error
Ingres Funções
PHP Manual

ingres_free_result

(PECL ingres >= 2.0.0)

ingres_free_result — Free the resources associated with a result identifier

Descrição

bool ingres_free_result ( resource $result )

Parâmetros

result

The query result identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Free a result resource

<?php
$link = ingres_connect($database, $user, $password);

$result = ingres_query($link, "select * from table");

while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
ingres_free_result($result);

ingres_close($link)

?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres

ingres_field_type
ingres_next_error
Ingres Funções


Get the next Ingres error

ingres_free_result
ingres_num_fields
Ingres Funções
PHP Manual

ingres_next_error

(PECL ingres >= 2.0.0)

ingres_next_error — Get the next Ingres error

Descrição

bool ingres_next_error ([ resource $link ] )

Get the next Ingres error for the last executed query. Each call to ingres_next_error() can be followed by a call to ingres_errno(), ingres_error() or ingres_errsqlstate() to get the respective error number, error text, or SQL STATE. While ingres_next_error() returns TRUE, there are more errors to fetch.

Parâmetros

link

The connection link identifier

Valor Retornado

ingres_next_error() returns TRUE if there is another error to retrieve or FALSE when there are no more errors

Veja Também

  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated
  • ingres_errsqlstate() - Get the last SQLSTATE error code generated

ingres_free_result
ingres_num_fields
Ingres Funções


Get the number of fields returned by the last query

ingres_next_error
ingres_num_rows
Ingres Funções
PHP Manual

ingres_num_fields

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_num_fields — Get the number of fields returned by the last query

Descrição

int ingres_num_fields ( resource $result )

ingres_num_fields() returns the number of fields in the results returned by the Ingres server after a call to ingres_query().

Parâmetros

result

The query result identifier

Valor Retornado

Returns the number of fields

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_next_error
ingres_num_rows
Ingres Funções


Get the number of rows affected or returned by a query

ingres_num_fields
ingres_pconnect
Ingres Funções
PHP Manual

ingres_num_rows

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_num_rows — Get the number of rows affected or returned by a query

Descrição

int ingres_num_rows ( resource $result )

This function primarily is meant to get the number of rows modified in the database. However, it can be used to retrieve the number of rows to fetch for a SELECT statement.

Nota:

If scrollable cursors are disabled and this function is called before using ingres_fetch_array(), ingres_fetch_object(), or ingres_fetch_row(), the server will delete the result's data and the script will be unable to get them.

Instead, you should retrieve the result's data using one of these fetch functions in a loop until it returns FALSE, indicating that no more results are available.

Parâmetros

result

The result identifier for a query

Valor Retornado

For delete, insert, or update queries, ingres_num_rows() returns the number of rows affected by the query. For other queries, ingres_num_rows() returns the number of rows in the query's result.

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_num_fields
ingres_pconnect
Ingres Funções


Open a persistent connection to an Ingres database

ingres_num_rows
ingres_prepare
Ingres Funções
PHP Manual

ingres_pconnect

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_pconnect — Open a persistent connection to an Ingres database

Descrição

resource ingres_pconnect ([ string $database [, string $username [, string $password [, array $options ]]]] )

Open a persistent connection to an Ingres database.

There are only two differences between this function and ingres_connect(): First, when connecting, the function will initially try to find a (persistent) link that is already opened with the same parameters. If one is found, an identifier for it will be returned instead of opening a new connection. Second, the connection to the Ingres server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (ingres_close() will not close links established by ingres_pconnect()). This type of link is therefore called "persistent".

Parâmetros

database

The database name. Must follow the syntax:

[vnode::]dbname[/svr_class]

username

The Ingres user name

password

The password associated with username

options

See ingres_connect() for the list of options that can be passed

Valor Retornado

Returns an Ingres link resource on success or FALSE on failure

Veja Também

  • ingres_connect() - Open a connection to an Ingres database
  • ingres_close() - Close an Ingres database connection

ingres_num_rows
ingres_prepare
Ingres Funções


Prepare a query for later execution

ingres_pconnect
ingres_query
Ingres Funções
PHP Manual

ingres_prepare

(PECL ingres >= 1.1.0)

ingres_prepare — Prepare a query for later execution

Descrição

mixed ingres_prepare ( resource $link , string $query )

Prepares a query for execution by ingres_execute().

The query becomes part of the currently open transaction. If there is no open transaction, ingres_query() opens a new transaction. To close the transaction, you can call either ingres_commit() to commit the changes made to the database or ingres_rollback() to cancel these changes. When the script ends, any open transaction is rolled back (by calling ingres_rollback()). You can also use ingres_autocommit() before opening a new transaction to have every SQL query immediately committed.

Nota: Related Configurations

See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in Runtime Configuration.

Parâmetros

link

The connection link identifier

query

A valid SQL query (see the Ingres SQL reference guide) in the Ingres documentation. See the query parameter in ingres_query() for a list of SQL statements which cannot be executed using ingres_prepare()

Valor Retornado

ingres_prepare() returns a query result identifier that
is used with ingres_execute() to execute the query. To see
if an error occurred, use ingres_errno(),
ingres_error(), or
ingres_errsqlstate().

Veja Também

  • ingres_unbuffered_query() - Send an unbuffered SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array
  • ingres_commit() - Commit a transaction
  • ingres_rollback() - Roll back a transaction
  • ingres_autocommit() - Switch autocommit on or off
  • ingres_set_environment() - Set environment features controlling output options
  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated

ingres_pconnect
ingres_query
Ingres Funções


Send an SQL query to Ingres

ingres_prepare
ingres_result_seek
Ingres Funções
PHP Manual

ingres_query

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_query — Send an SQL query to Ingres

Descrição

mixed ingres_query ( resource $link , string $query [, array $params [, string $types ]] )

ingres_query() sends the given query to the Ingres server.

The query becomes part of the currently open transaction. If there is no open transaction, ingres_query() opens a new transaction. To close the transaction, you can call either ingres_commit() to commit the changes made to the database or ingres_rollback() to cancel these changes. When the script ends, any open transaction is rolled back (by calling ingres_rollback()). You can also use ingres_autocommit() before opening a new transaction to have every SQL query immediately committed.

Nota: Related Configurations

See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in Runtime Configuration

Parâmetros

link

The connection link identifier.

query

A valid SQL query (see the Ingres SQL reference guide) in the Ingres documentation.

Data inside the query should be properly escaped.

The following types of SQL queries cannot be sent with this function:

  • close (see ingres_close())
  • commit (see ingres_commit())
  • connect (see ingres_connect())
  • disconnect (see ingres_close())
  • get dbevent
  • prepare to commit
  • rollback (see ingres_rollback())
  • savepoint
  • set autocommit (see ingres_autocommit())
  • all cursor-related queries are unsupported

params

An array of parameter values to be used with the query

types

A string containing a sequence of types for the parameter values passed. When ingres.describe is enabled, this parameter can be ignored as the driver automatically fetches the expected parameter types from the server.

Type code | Ingres type
a | BOOLEAN
b | BYTE
B | LONG BYTE/BLOB
c | CHAR
d | DATE/ANSIDATE/TIMESTAMP/TIME
f | FLOAT
i | INTEGER
L | LONG TEXT
m | MONEY
M | LONG NVARCHAR
n | NCHAR
N | NVARCHAR
t | TEXT
v | VARCHAR
V | LONG VARCHAR

Valor Retornado

ingres_query() returns a query result identifier on
success else it returns FALSE. To see if an error
occurred use ingres_errno(),
ingres_error() or
ingres_errsqlstate().

Exemplos

Exemplo #1 Send a simple select

<?php
$link = ingres_connect("demodb");

$result = ingres_query($link, "select * from user_profile");
while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
?>

Exemplo #2 Passing query parameters to ingres_query()

<?php
$link = ingres_connect("demodb");

$params[] = "Emma";
$query = "select * from user_profile where up_first = ?";
$result = ingres_query($link, $query, $params);
while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
?>

Exemplo #3 Inserting a BLOB with parameter types

<?php
$link = ingres_connect("demodb");

//Open a photo
$fh = fopen("photo.jpg","r");
$blob_data = stream_get_contents($fh);
fclose($fh);

//Prepare parameters
$params[] = $blob_data;
$params[] = 1201;

//Define parameter types
$param_types = "Bi";

$query = "update user_profile set up_image = ? where up_id = ?";
$result = ingres_query($link, $query , $params, $param_types);

if (ingres_errno())
{
    echo ingres_errno() . "-" . ingres_error() . "\n";
}

ingres_commit($link);

ingres_close($link);
?>

Veja Também

  • ingres_unbuffered_query() - Send an unbuffered SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array
  • ingres_commit() - Commit a transaction
  • ingres_rollback() - Roll back a transaction
  • ingres_autocommit() - Switch autocommit on or off
  • ingres_set_environment() - Set environment features controlling output options
  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated

ingres_prepare
ingres_result_seek
Ingres Funções


Set the row position before fetching data

ingres_query
ingres_rollback
Ingres Funções
PHP Manual

ingres_result_seek

(PECL ingres >= 2.1.0)

ingres_result_seek — Set the row position before fetching data

Descrição

bool ingres_result_seek ( resource $result , int $position )

This function is used to position the cursor associated with the result resource before issuing a fetch. If ingres.array_index_start is set to 0 then the first row is 0 else it is 1. ingres_result_seek() can be used only with queries that make use of scrollable cursors. It cannot be used with ingres_unbuffered_query().

Nota: Related Configurations

See also the ingres.scrollable and ingres.array_index_start directives in Runtime Configuration.

Parâmetros

result

The result identifier for a query

position

The row to position the cursor on. If ingres.array_index_start is set to 0, then the first row is 0, else it is 1

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Position the cursor on the 3rd row

<?php

$result=ingres_query($link, "select * from airport where ap_ccode = 'ES' order by ap_place asc");

/* goto row 3 */
if (!ingres_result_seek($result, 3))
{
    echo ingres_errno() . " - " . ingres_error . "\n";
    die("i died");
}
else
{
    $airport = ingres_fetch_object ($result);
    {
        echo $airport->ap_iatacode . " - " .  $airport->ap_name . "\n";
    }
}

ingres_commit($link);

?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array

ingres_query
ingres_rollback
Ingres Funções


Roll back a transaction

ingres_result_seek
ingres_set_environment
Ingres Funções
PHP Manual

ingres_rollback

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_rollback — Roll back a transaction

Descrição

bool ingres_rollback ( resource $link )

ingres_rollback() rolls back the currently open transaction, actually cancelling all changes made to the database during the transaction.

This closes the transaction. A new transaction can be opened by sending a query with ingres_query().

Parâmetros

link

The connection link identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_commit() - Commit a transaction
  • ingres_autocommit() - Switch autocommit on or off

ingres_result_seek
ingres_set_environment
Ingres Funções


Set environment features controlling output options

ingres_rollback
ingres_unbuffered_query
Ingres Funções
PHP Manual

ingres_set_environment

(PECL ingres >= 1.2.0)

ingres_set_environment — Set environment features controlling output options

Descrição

bool ingres_set_environment ( resource $link , array $options )

ingres_set_environment() is called to set environmental options that affect the output of certain values from Ingres, such as the timezone, date format, decimal character separator, and float precision.

Parâmetros

link

The connection link identifier

options

An enumerated array of option name/value pairs. The following table lists the option name and the expected type

Option name | Option type | Description | Example
date_century_boundary | integer | The threshold by which a 2-digit year is determined to be in the current century or in the next century. Equivalent to II_DATE_CENTURY_BOUNDARY | 50
timezone | string | Controls the timezone of the session. If not set, it will default the value defined by II_TIMEZONE_NAME. If II_TIMEZONE_NAME is not defined, NA-PACIFIC (GMT-8 with Daylight Savings) is used. | UNITED-KINGDOM
date_format integer

Sets the allowable input and output format for Ingres dates. Defaults to the value defined by II_DATE_FORMAT. If II_DATE_FORMAT is not set, the default date format is US, for example mm/dd/yy. Valid values for date_format are:

  • INGRES_DATE_DMY
  • INGRES_DATE_FINISH
  • INGRES_DATE_GERMAN
  • INGRES_DATE_ISO
  • INGRES_DATE_ISO4
  • INGRES_DATE_MDY
  • INGRES_DATE_MULTINATIONAL
  • INGRES_DATE_MULTINATIONAL4
  • INGRES_DATE_YMD
  • INGRES_DATE_US

 INGRES_DATE_ISO4
decimal_separator string The character identifier for decimal data ","
money_lort integer

Leading or trailing currency sign. Valid values for money_lort are:

  • INGRES_MONEY_LEADING
  • INGRES_MONEY_TRAILING

 INGRES_MONEY_LEADING
money_sign string The currency symbol to be used with the MONEY datatype €
money_precision | integer | The precision of the MONEY datatype | 2
float4_precision | integer | Precision of the FLOAT4 datatype | 10
float8_precision | integer | Precision of the FLOAT8 data | 10
blob_segment_length | integer | The amount of data in bytes to fetch at a time when retrieving BLOB or CLOB data. Defaults to 4096 bytes when not set explicitly | 8192

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Set date_format to ISO4

<?php
$options = array( "date_format" => INGRES_DATE_ISO4 );

if (ingres_set_environment($link, $options))
{
    $result=ingres_query($link,"select date('now') as date");

    while ( $object = ingres_fetch_object ($result) ) {
        echo $object->date."\n";
    }
}
?>

Exemplo #2 Set timezone to HONG-KONG

<?php

$options = array( "timezone" => "HONG-KONG");

if (ingres_set_environment($link, $options))
{
    $result=ingres_query($link,"select date('now') as date");

    while ( $object = ingres_fetch_object ($result) ) {
        echo $object->date."\n";
    }
}
?>

Veja Também

  • ingres_connect() - Open a connection to an Ingres database
  • ingres_query() - Send an SQL query to Ingres

ingres_rollback
ingres_unbuffered_query
Ingres Funções


Send an unbuffered SQL query to Ingres

ingres_set_environment
MaxDB
Ingres Funções
PHP Manual

ingres_unbuffered_query

(No version information available, might only be in SVN)

ingres_unbuffered_query — Send an unbuffered SQL query to Ingres

Descrição

mixed ingres_unbuffered_query ( resource $link , string $query [, array $params [, string $types ]] )

ingres_unbuffered_query() sends the given query to the Ingres server.

The query becomes part of the currently open transaction. If there is no open transaction, ingres_unbuffered_query() opens a new transaction. To close the transaction, you can call either ingres_commit() to commit the changes made to the database or ingres_rollback() to cancel these changes. When the script ends, any open transaction is rolled back (by calling ingres_rollback()). You can also use ingres_autocommit() before opening a new transaction to have every SQL query immediately committed. Ingres allows only a single unbuffered statement to be active at any one time. The extension will close any active unbuffered statements before executing any SQL. In addition you cannot use ingres_result_seek() to position the row before fetching.

Nota: Related Configurations

See also the ingres.describe and ingres.utf8 directives in Runtime Configuration.

Parâmetros

link

The connection link identifier

query

A valid SQL query (see the Ingres SQL reference guide) in the Ingres documentation. See the query parameter in ingres_query() for a list of SQL statements that cannot be executed via ingres_unbuffered_query().

Data inside the query should be properly escaped.

params

An array of parameter values to be used with the query

types

A string containing a sequence of types for the parameter values passed. See the types parameter in ingres_query() for the list of type codes.

Valor Retornado

ingres_unbuffered_query() returns a query result identifier when there are rows to fetch; else it returns FALSE when there are no rows, as is the case of an INSERT, UPDATE, or DELETE statement. To see if an error occurred, use ingres_errno(), ingres_error(), or ingres_errsqlstate().

Exemplos

Exemplo #1 Issue a simple un-buffered select

<?php
$link = ingres_connect("demodb");

$result = ingres_unbuffered_query($link, "select * from user_profile");
while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
?>

Exemplo #2 Passing query parameters to ingres_unbuffered_query()

<?php
$link = ingres_connect("demodb");

$params[] = "Emma";
$query = "select * from user_profile where up_first = ?";
$result = ingres_unbuffered_query($link, $query, $params);
while ($row = ingres_fetch_row($result)) {
    echo $row[1];
    echo $row[2];
}
?>

Exemplo #3 Inserting a BLOB with parameter types

<?php
$link = ingres_connect("demodb");

//Open a photo
$fh = fopen("photo.jpg","r");
$blob_data = stream_get_contents($fh);
fclose($fh);

//Prepare parameters
$params[] = $blob_data;
$params[] = 1201;

//Define parameter types
$param_types = "Bi";

$query = "update user_profile set up_image = ? where up_id = ?";
$result = ingres_unbuffered_query($link, $query , $params, $param_types);

if (ingres_errno())
{
    echo ingres_errno() . "-" . ingres_error() . "\n";
}
?>

Veja Também

  • ingres_query() - Send an SQL query to Ingres
  • ingres_fetch_array() - Fetch a row of result into an array
  • ingres_fetch_assoc() - Fetch a row of result into an associative array
  • ingres_fetch_object() - Fetch a row of result into an object
  • ingres_fetch_row() - Fetch a row of result into an enumerated array
  • ingres_commit() - Commit a transaction
  • ingres_rollback() - Roll back a transaction
  • ingres_autocommit() - Switch autocommit on or off
  • ingres_set_environment() - Set environment features controlling output options
  • ingres_errno() - Get the last Ingres error number generated
  • ingres_error() - Get a meaningful error message for the last error generated

ingres_set_environment
MaxDB
Ingres Funções


MaxDB

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • MaxDB Funções
    • maxdb_affected_rows — Gets the number of affected rows in a previous MaxDB operation
    • maxdb_autocommit — Turns on or off auto-commiting database modifications
    • maxdb_bind_param — Sinônimo de maxdb_stmt_bind_param
    • maxdb_bind_result — Sinônimo de maxdb_stmt_bind_result
    • maxdb_change_user — Changes the user of the specified database connection
    • maxdb_character_set_name — Returns the default character set for the database connection
    • maxdb_client_encoding — Sinônimo de maxdb_character_set_name
    • maxdb_close_long_data — Sinônimo de maxdb_stmt_close_long_data
    • maxdb_close — Closes a previously opened database connection
    • maxdb_commit — Commits the current transaction
    • maxdb_connect_errno — Returns the error code from last connect call
    • maxdb_connect_error — Returns a string description of the last connect error
    • maxdb_connect — Open a new connection to the MaxDB server
    • maxdb_data_seek — Adjusts the result pointer to an arbitary row in the result
    • maxdb_debug — Performs debugging operations
    • maxdb_disable_reads_from_master — Disable reads from master
    • maxdb_disable_rpl_parse — Disable RPL parse
    • maxdb_dump_debug_info — Dump debugging information into the log
    • maxdb_embedded_connect — Open a connection to an embedded MaxDB server
    • maxdb_enable_reads_from_master — Enable reads from master
    • maxdb_enable_rpl_parse — Enable RPL parse
    • maxdb_errno — Returns the error code for the most recent function call
    • maxdb_error — Returns a string description of the last error
    • maxdb_escape_string — Sinônimo de maxdb_real_escape_string
    • maxdb_execute — Sinônimo de maxdb_stmt_execute
    • maxdb_fetch_array — Fetch a result row as an associative, a numeric array, or both
    • maxdb_fetch_assoc — Fetch a result row as an associative array
    • maxdb_fetch_field_direct — Fetch meta-data for a single field
    • maxdb_fetch_field — Returns the next field in the result set
    • maxdb_fetch_fields — Returns an array of resources representing the fields in a result set
    • maxdb_fetch_lengths — Returns the lengths of the columns of the current row in the result set
    • maxdb_fetch_object — Returns the current row of a result set as an object
    • maxdb_fetch_row — Get a result row as an enumerated array
    • maxdb_fetch — Sinônimo de maxdb_stmt_fetch
    • maxdb_field_count — Returns the number of columns for the most recent query
    • maxdb_field_seek — Set result pointer to a specified field offset
    • maxdb_field_tell — Get current field offset of a result pointer
    • maxdb_free_result — Frees the memory associated with a result
    • maxdb_get_client_info — Returns the MaxDB client version as a string
    • maxdb_get_client_version — Get MaxDB client info
    • maxdb_get_host_info — Returns a string representing the type of connection used
    • maxdb_get_metadata — Sinônimo de maxdb_stmt_result_metadata
    • maxdb_get_proto_info — Returns the version of the MaxDB protocol used
    • maxdb_get_server_info — Returns the version of the MaxDB server
    • maxdb_get_server_version — Returns the version of the MaxDB server as an integer
    • maxdb_info — Retrieves information about the most recently executed query
    • maxdb_init — Initializes MaxDB and returns an resource for use with maxdb_real_connect
    • maxdb_insert_id — Returns the auto generated id used in the last query
    • maxdb_kill — Disconnects from a MaxDB server
    • maxdb_master_query — Enforce execution of a query on the master in a master/slave setup
    • maxdb_more_results — Check if there any more query results from a multi query
    • maxdb_multi_query — Performs a query on the database
    • maxdb_next_result — Prepare next result from multi_query
    • maxdb_num_fields — Get the number of fields in a result
    • maxdb_num_rows — Gets the number of rows in a result
    • maxdb_options — Set options
    • maxdb_param_count — Sinônimo de maxdb_stmt_param_count
    • maxdb_ping — Pings a server connection, or tries to reconnect if the connection has gone down
    • maxdb_prepare — Prepare an SQL statement for execution
    • maxdb_query — Performs a query on the database
    • maxdb_real_connect — Opens a connection to a MaxDB server
    • maxdb_real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
    • maxdb_real_query — Execute an SQL query
    • maxdb_report — Enables or disables internal report functions
    • maxdb_rollback — Rolls back current transaction
    • maxdb_rpl_parse_enabled — Check if RPL parse is enabled
    • maxdb_rpl_probe — RPL probe
    • maxdb_rpl_query_type — Returns RPL query type
    • maxdb_select_db — Selects the default database for database queries
    • maxdb_send_long_data — Sinônimo de maxdb_stmt_send_long_data
    • maxdb_send_query — Send the query and return
    • maxdb_server_end — Shut down the embedded server
    • maxdb_server_init — Initialize embedded server
    • maxdb_set_opt — Sinônimo de maxdb_options
    • maxdb_sqlstate — Returns the SQLSTATE error from previous MaxDB operation
    • maxdb_ssl_set — Used for establishing secure connections using SSL
    • maxdb_stat — Gets the current system status
    • maxdb_stmt_affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement
    • maxdb_stmt_bind_param — Binds variables to a prepared statement as parameters
    • maxdb_stmt_bind_result — Binds variables to a prepared statement for result storage
    • maxdb_stmt_close_long_data — Ends a sequence of maxdb_stmt_send_long_data
    • maxdb_stmt_close — Closes a prepared statement
    • maxdb_stmt_data_seek — Seeks to an arbitray row in statement result set
    • maxdb_stmt_errno — Returns the error code for the most recent statement call
    • maxdb_stmt_error — Returns a string description for last statement error
    • maxdb_stmt_execute — Executes a prepared Query
    • maxdb_stmt_fetch — Fetch results from a prepared statement into the bound variables
    • maxdb_stmt_free_result — Frees stored result memory for the given statement handle
    • maxdb_stmt_init — Initializes a statement and returns an resource for use with maxdb_stmt_prepare
    • maxdb_stmt_num_rows — Return the number of rows in statements result set
    • maxdb_stmt_param_count — Returns the number of parameter for the given statement
    • maxdb_stmt_prepare — Prepare an SQL statement for execution
    • maxdb_stmt_reset — Resets a prepared statement
    • maxdb_stmt_result_metadata — Returns result set metadata from a prepared statement
    • maxdb_stmt_send_long_data — Send data in blocks
    • maxdb_stmt_sqlstate — Returns SQLSTATE error from previous statement operation
    • maxdb_stmt_store_result — Transfers a result set from a prepared statement
    • maxdb_store_result — Transfers a result set from the last query
    • maxdb_thread_id — Returns the thread ID for the current connection
    • maxdb_thread_safe — Returns whether thread safety is given or not
    • maxdb_use_result — Initiate a result set retrieval
    • maxdb_warning_count — Returns the number of warnings from the last query for the given link
ingres_unbuffered_query
Introdução
Vendor Specific Database Extensions


Introdução

The MaxDB PHP extension allows you to access the functionality provided by MaxDB 7.5.0 and above. More information about the MaxDB Database server can be found at » http://www.sdn.sap.com/irj/sdn/maxdb.

The MaxDB PHP extension is compatible to the MySQL mysqli extension. There are only minor differences in the behaviour of some functions due to the differences of the underlying database servers, MaxDB and MySQL.

The main differences to mysqli are in the following functions:

  • maxdb_character_set_name() - Returns only ascii or unicode.
  • maxdb_get_client_info() - Returns a different version string.
  • maxdb_get_client_version() - Returns a different version string.
  • maxdb_get_host_info() - Returns localhost or hostname.
  • maxdb_get_server_info() - Returns a different version string.
  • maxdb_get_server_version() - Returns a different version string.
  • maxdb_kill() - Only disconnects the session.
  • maxdb_multi_query() - Can not handle multiple SQL statements.
  • maxdb_next_result() - Function returns always false.
  • maxdb_options() - Supports a different set of options.
  • maxdb_report() - Supports a different report mode.
  • maxdb_stat() - Returns a different system status string.
  • maxdb_stmt_store_result() - Is not necessary for MaxDB.
  • maxdb_store_result() - Is not necessary for MaxDB.

Documentation for MaxDB can be found at » http://maxdb.sap.com/documentation/.

MaxDB
Instalação/Configuração
MaxDB


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
MaxDB


Dependências

In order to have these functions available, you must compile PHP with MaxDB support. Additionally, you must have the MaxDB SQLDBC runtime library available to access the MaxDB server.

Documentation for MaxDB SQLDBC can be found at » http://maxdb.sap.com/documentation/.

Download the MaxDB SQLDBC package from » http://www.sdn.sap.com/irj/sdn/maxdb-downloads.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

By using the --with-maxdb[=DIR] configuration option you enable PHP to access MaxDB databases. [DIR] points to the directory that contains the installed MaxDB SQLDBC package.

Windows users will need to enable php_maxdb.dll inside of php.ini.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

MaxDB Configuration Options
Name | Default | Changeable | Changelog
maxdb.default_host | NULL | PHP_INI_ALL |
maxdb.default_db | NULL | PHP_INI_ALL |
maxdb.default_user | NULL | PHP_INI_ALL |
maxdb.default_pw | NULL | PHP_INI_ALL |
maxdb.long_readlen | "200" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

maxdb.default_host string

The default server host to use when connecting to the database server if no other host is specified.

maxdb.default_db string

The default server database to use when connecting if no other database is specified.

maxdb.default_user string

The default user name to use when connecting to the database server if no other name is specified.

maxdb.default_pw string

The default password to use when connecting to the database server if no other password is specified.

maxdb.long_readlen integer

The default maximum length of bytes that is transferred to the client if long data is retrieved from the MaxDB database server.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

This extension defines resources.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The following constants to use with maxdb_options() are defined. For further description of these constants see » http://maxdb.sap.com/documentation/.

MaxDB PHP client constants
Constant | Description
MAXDB_COMPNAME | The component name used to initialise the SQLDBC runtime environment.
MAXDB_APPLICATION | The application to be connected to the database.
MAXDB_APPVERSION | The version of the application.
MAXDB_SQLMODE | The SQL mode.
MAXDB_UNICODE | TRUE, if the connection is an unicode (UCS2) client or FALSE, if not.
MAXDB_TIMEOUT | The maximum allowed time of inactivity after which the connection to the database is closed by the system.
MAXDB_ISOLATIONLEVEL | Specifies whether and how shared locks and exclusive locks are implicitly requested or released.
MAXDB_PACKETCOUNT | The number of different request packets used for the connection.
MAXDB_STATEMENTCACHESIZE | The number of prepared statements to be cached for the connection for re-use.
MAXDB_CURSORPREFIX | The prefix to use for result tables that are automatically named.

The function maxdb_fetch_array() uses a constant for the different types of result arrays. The following constants are defined:

MaxDB fetch constants
Constant | Description
MAXDB_ASSOC | Columns are returned into the array having the fieldname as the array index.
MAXDB_ASSOC_UPPER | Columns are returned into the array having the upper case fieldname as the array index.
MAXDB_ASSOC_LOWER | Columns are returned into the array having the lower case fieldname as the array index.
MAXDB_BOTH | Columns are returned into the array having both a numerical index and the fieldname as the array index.
MAXDB_NUM | Columns are returned into the array having a numerical index to the fields. This index starts with 0, the first field in the result.

Tipos Resource
Exemplos
MaxDB


Exemplos

Índice

Constantes pré-definidas
MaxDB


Exemplos
MaxDB Funções
Exemplos
PHP Manual

All examples in the MaxDB PHP documentation use the HOTELDB demo database from MaxDB. More about this database can be found at » http://maxdb.sap.com/doc/7_7/44/d8c25164bb38d0e10000000a1553f7/content.htm.

To use the examples in the MaxDB PHP documentation, you have to load the tutorial data into your database. Then you have to set maxdb.default_db in php.ini to the database that contains the tutorial data.

This simple example shows how to connect, execute a query, print resulting rows and disconnect from a MaxDB database.

Exemplo #1 MaxDB extension overview example

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Performing SQL query */
$query = "SELECT * FROM hotel.city";
$result = maxdb_query($link, $query) or die("Query failed : " . maxdb_error());

/* Printing results in HTML */
echo "<table>\n";
while ($line = maxdb_fetch_array($result, MAXDB_ASSOC)) {
    echo "  <tr>\n";
    foreach ($line as $col_value) {
        echo "    <td>$col_value</td>\n";
    }
    echo "  </tr>\n";
}
echo "</table>\n";

/* Free resultset */
maxdb_free_result($result);

/* Closing connection */
maxdb_close($link);
?>

The following example shows how to bind variables to a SELECT INTO statement.

Exemplo #2 Example for use of SELECT INTO statements

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Performing SQL query */
$stmt = maxdb_prepare ($link, "SELECT percentage INTO ? FROM hotel.countrylanguage where language = ?");
if (!$stmt) {
  printf ("Prepare failed: %s\n", maxdb_error($link));
}

$name = "Mbundu";

maxdb_stmt_bind_param($stmt, 'ds', $percentage, $name);
maxdb_stmt_execute($stmt);

printf ("%f\n", $percentage);

maxdb_stmt_close ($stmt);
?>

The following example shows how to use MaxDB database procedures.

Exemplo #3 Example fore using database procedures

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP DBPROC test_proc");
maxdb_report (MAXDB_REPORT_ERROR);

$query = "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;";

maxdb_query($link, $query);

/* Performing SQL query */
$stmt = maxdb_prepare ($link, "CALL test_proc (?)");
if (!$stmt) {
  printf ("Prepare failed: %s\n", maxdb_error($link));
}

maxdb_stmt_bind_param($stmt, 's', $result);
maxdb_stmt_execute($stmt);

printf ("%s\n", $result);

maxdb_stmt_close ($stmt);
?>

Exemplos
MaxDB Funções
Exemplos


maxdb_affected_rows
MaxDB
PHP Manual

MaxDB Funções

Classes pré-definidas

maxdb

Represents a connection between PHP and a MaxDB database.

Construtor

  • maxdb - construct a new maxdb object

Métodos

  • autocommit - turns on or off auto-commiting database modifications

  • change_user - changes the user of the specified database connection

  • character_set_name - returns the default character set for the database connection

  • close - closes a previously opened connection

  • commit - commits the current transaction

  • connect - opens a new connection to MaxDB database server

  • debug - performs debugging operations

  • dump_debug_info - dumps debug information

  • get_client_info - returns client version

  • get_host_info - returns type of connection used

  • get_server_info - returns version of the MaxDB server

  • get_server_version - returns version of the MaxDB server

  • init - initializes maxdb object

  • info - retrieves information about the most recently executed query

  • kill - asks the server to kill a MaxDB thread

  • multi_query - performs multiple queries

  • more_results - check if more results exist from currently executed multi-query

  • next_result - reads next result from currently executed multi-query

  • options - set options

  • ping - pings a server connection or reconnects if there is no connection

  • prepare - prepares an SQL query

  • query - performs a query

  • real_connect - attempts to open a connection to MaxDB database server

  • escape_string - escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

  • rollback - rolls back the current transaction

  • select_db - selects the default database

  • ssl_set - sets ssl parameters

  • stat - gets the current system status

  • stmt_init- initializes a statement for use with maxdb_stmt_prepare

  • store_result - transfers a resultset from last query

  • use_result - transfers an unbuffered resultset from last query

  • thread-safe - returns whether thread safety is given or not

Propriedades

  • affected_rows - gets the number of affected rows in a previous MaxDB operation

  • client_info - returns the MaxDB client version as a string

  • client_version - returns the MaxDB client version as an integer

  • errno - returns the error code for the most recent function call

  • error - returns the error string for the most recent function call

  • field_count - returns the number of columns for the most recent query

  • host_info - returns a string representing the type of connection used

  • info - retrieves information about the most recently executed query

  • insert_id - returns the auto generated id used in the last query

  • protocol_version - returns the version of the MaxDB protocol used

  • sqlstate - returns a string containing the SQLSTATE error code for the last error

  • thread_id - returns the thread ID for the current connection

  • warning_count - returns the number of warnings generated during execution of the previous SQL statement

maxdb_stmt

Represents a prepared statement.

Métodos

  • bind_param - binds variables to a prepared statement

  • bind_result - binds variables to a prepared statement for result storage

  • close - closes a prepared statement

  • data-seek - seeks to an arbitrary row in a statement result set

  • execute - executes a prepared statement

  • fetch - fetches result from a prepared statement into bound variables

  • free_result - frees stored result memory for the given statement handle

  • result_metadata - retrieves a resultset from a prepared statement for metadata information

  • prepare - prepares an SQL query

  • send_long_data - sends data in chunks

  • close_long_data - end sending long data

  • reset - resets a prepared statement

  • store_result - buffers complete resultset from a prepared statement

Propriedades

  • affected_rows - returns affected rows from last statement execution

  • errno - returns errorcode for last statement function

  • errno - returns errormessage for last statement function

  • param_count - returns number of parameter for a given prepare statement

  • sqlstate - returns a string containing the SQLSTATE error code for the last statement function

maxdb_result

Represents the result set obtained from a query against the database.

Métodos

  • close - closes resultset

  • data_seek - moves internal result pointer

  • fetch_field - gets column information from a resultset

  • fetch_fields - gets information for all columns from a resulset

  • fetch_field_direct - gets column information for specified column

  • fetch_array - fetches a result row as an associative array, a numeric array, or both.

  • fetch_assoc - fetches a result row as an associative array

  • fetch_object - fetches a result row as an object

  • fetch_row - gets a result row as an enumerated array

  • close - frees result memory

  • field_seek - set result pointer to a specified field offset

Propriedades

  • current_field - returns offset of current fieldpointer

  • field_count - returns number of fields in resultset

  • lengths - returns an array of columnlengths

  • num_rows - returns number of rows in resultset

Índice

  • maxdb_affected_rows — Gets the number of affected rows in a previous MaxDB operation
  • maxdb_autocommit — Turns on or off auto-commiting database modifications
  • maxdb_bind_param — Sinônimo de maxdb_stmt_bind_param
  • maxdb_bind_result — Sinônimo de maxdb_stmt_bind_result
  • maxdb_change_user — Changes the user of the specified database connection
  • maxdb_character_set_name — Returns the default character set for the database connection
  • maxdb_client_encoding — Sinônimo de maxdb_character_set_name
  • maxdb_close_long_data — Sinônimo de maxdb_stmt_close_long_data
  • maxdb_close — Closes a previously opened database connection
  • maxdb_commit — Commits the current transaction
  • maxdb_connect_errno — Returns the error code from last connect call
  • maxdb_connect_error — Returns a string description of the last connect error
  • maxdb_connect — Open a new connection to the MaxDB server
  • maxdb_data_seek — Adjusts the result pointer to an arbitary row in the result
  • maxdb_debug — Performs debugging operations
  • maxdb_disable_reads_from_master — Disable reads from master
  • maxdb_disable_rpl_parse — Disable RPL parse
  • maxdb_dump_debug_info — Dump debugging information into the log
  • maxdb_embedded_connect — Open a connection to an embedded MaxDB server
  • maxdb_enable_reads_from_master — Enable reads from master
  • maxdb_enable_rpl_parse — Enable RPL parse
  • maxdb_errno — Returns the error code for the most recent function call
  • maxdb_error — Returns a string description of the last error
  • maxdb_escape_string — Sinônimo de maxdb_real_escape_string
  • maxdb_execute — Sinônimo de maxdb_stmt_execute
  • maxdb_fetch_array — Fetch a result row as an associative, a numeric array, or both
  • maxdb_fetch_assoc — Fetch a result row as an associative array
  • maxdb_fetch_field_direct — Fetch meta-data for a single field
  • maxdb_fetch_field — Returns the next field in the result set
  • maxdb_fetch_fields — Returns an array of resources representing the fields in a result set
  • maxdb_fetch_lengths — Returns the lengths of the columns of the current row in the result set
  • maxdb_fetch_object — Returns the current row of a result set as an object
  • maxdb_fetch_row — Get a result row as an enumerated array
  • maxdb_fetch — Sinônimo de maxdb_stmt_fetch
  • maxdb_field_count — Returns the number of columns for the most recent query
  • maxdb_field_seek — Set result pointer to a specified field offset
  • maxdb_field_tell — Get current field offset of a result pointer
  • maxdb_free_result — Frees the memory associated with a result
  • maxdb_get_client_info — Returns the MaxDB client version as a string
  • maxdb_get_client_version — Get MaxDB client info
  • maxdb_get_host_info — Returns a string representing the type of connection used
  • maxdb_get_metadata — Sinônimo de maxdb_stmt_result_metadata
  • maxdb_get_proto_info — Returns the version of the MaxDB protocol used
  • maxdb_get_server_info — Returns the version of the MaxDB server
  • maxdb_get_server_version — Returns the version of the MaxDB server as an integer
  • maxdb_info — Retrieves information about the most recently executed query
  • maxdb_init — Initializes MaxDB and returns an resource for use with maxdb_real_connect
  • maxdb_insert_id — Returns the auto generated id used in the last query
  • maxdb_kill — Disconnects from a MaxDB server
  • maxdb_master_query — Enforce execution of a query on the master in a master/slave setup
  • maxdb_more_results — Check if there any more query results from a multi query
  • maxdb_multi_query — Performs a query on the database
  • maxdb_next_result — Prepare next result from multi_query
  • maxdb_num_fields — Get the number of fields in a result
  • maxdb_num_rows — Gets the number of rows in a result
  • maxdb_options — Set options
  • maxdb_param_count — Sinônimo de maxdb_stmt_param_count
  • maxdb_ping — Pings a server connection, or tries to reconnect if the connection has gone down
  • maxdb_prepare — Prepare an SQL statement for execution
  • maxdb_query — Performs a query on the database
  • maxdb_real_connect — Opens a connection to a MaxDB server
  • maxdb_real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
  • maxdb_real_query — Execute an SQL query
  • maxdb_report — Enables or disables internal report functions
  • maxdb_rollback — Rolls back current transaction
  • maxdb_rpl_parse_enabled — Check if RPL parse is enabled
  • maxdb_rpl_probe — RPL probe
  • maxdb_rpl_query_type — Returns RPL query type
  • maxdb_select_db — Selects the default database for database queries
  • maxdb_send_long_data — Sinônimo de maxdb_stmt_send_long_data
  • maxdb_send_query — Send the query and return
  • maxdb_server_end — Shut down the embedded server
  • maxdb_server_init — Initialize embedded server
  • maxdb_set_opt — Sinônimo de maxdb_options
  • maxdb_sqlstate — Returns the SQLSTATE error from previous MaxDB operation
  • maxdb_ssl_set — Used for establishing secure connections using SSL
  • maxdb_stat — Gets the current system status
  • maxdb_stmt_affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement
  • maxdb_stmt_bind_param — Binds variables to a prepared statement as parameters
  • maxdb_stmt_bind_result — Binds variables to a prepared statement for result storage
  • maxdb_stmt_close_long_data — Ends a sequence of maxdb_stmt_send_long_data
  • maxdb_stmt_close — Closes a prepared statement
  • maxdb_stmt_data_seek — Seeks to an arbitray row in statement result set
  • maxdb_stmt_errno — Returns the error code for the most recent statement call
  • maxdb_stmt_error — Returns a string description for last statement error
  • maxdb_stmt_execute — Executes a prepared Query
  • maxdb_stmt_fetch — Fetch results from a prepared statement into the bound variables
  • maxdb_stmt_free_result — Frees stored result memory for the given statement handle
  • maxdb_stmt_init — Initializes a statement and returns an resource for use with maxdb_stmt_prepare
  • maxdb_stmt_num_rows — Return the number of rows in statements result set
  • maxdb_stmt_param_count — Returns the number of parameter for the given statement
  • maxdb_stmt_prepare — Prepare an SQL statement for execution
  • maxdb_stmt_reset — Resets a prepared statement
  • maxdb_stmt_result_metadata — Returns result set metadata from a prepared statement
  • maxdb_stmt_send_long_data — Send data in blocks
  • maxdb_stmt_sqlstate — Returns SQLSTATE error from previous statement operation
  • maxdb_stmt_store_result — Transfers a result set from a prepared statement
  • maxdb_store_result — Transfers a result set from the last query
  • maxdb_thread_id — Returns the thread ID for the current connection
  • maxdb_thread_safe — Returns whether thread safety is given or not
  • maxdb_use_result — Initiate a result set retrieval
  • maxdb_warning_count — Returns the number of warnings from the last query for the given link
maxdb_affected_rows
MaxDB
PHP Manual


Gets the number of affected rows in a previous MaxDB operation

MaxDB Funções
maxdb_autocommit
MaxDB Funções
PHP Manual

maxdb_affected_rows

maxdb->affected_rows

(PECL maxdb >= 1.0)

maxdb_affected_rows -- maxdb->affected_rows — Gets the number of affected rows in a previous MaxDB operation

Descrição

Estilo de procedimentos

int maxdb_affected_rows ( resource $link )

Estilo orientado a objetos

int $affected_rows;

maxdb_affected_rows() returns the number of rows affected by the last INSERT, UPDATE, or DELETE query associated with the provided link parameter. If this number cannot be determined, this function will return -1.

Nota:

For SELECT statements maxdb_affected_rows() works like maxdb_num_rows().

The maxdb_affected_rows() function only works with queries which modify a table. In order to return the number of rows from a SELECT query, use the maxdb_num_rows() function instead.

Valor Retornado

An integer greater than zero indicates the number of rows affected or retrieved. Zero indicates that no records where updated for an UPDATE statement, no rows matched the WHERE clause in the query or that no query has yet been executed. -1 indicates that the number of rows affected can not be determined.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
$maxdb->query("DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);

/* Insert rows */
$maxdb->query("CREATE TABLE mycustomer AS SELECT * from hotel.customer");
printf("Affected rows (INSERT): %d\n", $maxdb->affected_rows);

$maxdb->query("ALTER TABLE mycustomer ADD Status int default 0");

/* update rows */
$maxdb->query("UPDATE mycustomer SET Status=1 WHERE cno > 50");
printf("Affected rows (UPDATE): %d\n", $maxdb->affected_rows);

/* delete rows */
$maxdb->query("DELETE FROM mycustomer WHERE cno < 50");
printf("Affected rows (DELETE): %d\n", $maxdb->affected_rows);

/* select all rows */
$result = $maxdb->query("SELECT title FROM mycustomer");
printf("Affected rows (SELECT): %d\n", $maxdb->affected_rows);

$result->close();

/* Delete table Language */
$maxdb->query("DROP TABLE mycustomer");

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

if (!$link) {
   printf("Can't connect to localhost. Error: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);

/* Insert rows */
maxdb_query($link, "CREATE TABLE mycustomer AS SELECT * from hotel.customer");
printf("Affected rows (INSERT): %d\n", maxdb_affected_rows($link));

maxdb_query($link, "ALTER TABLE mycustomer ADD Status int default 0");

/* update rows */
maxdb_query($link, "UPDATE mycustomer SET Status=1 WHERE cno > 50");
printf("Affected rows (UPDATE): %d\n", maxdb_affected_rows($link));

/* delete rows */
maxdb_query($link, "DELETE FROM mycustomer WHERE cno < 50");
printf("Affected rows (DELETE): %d\n", maxdb_affected_rows($link));

/* select all rows */
$result = maxdb_query($link, "SELECT title FROM mycustomer");
printf("Affected rows (SELECT): %d\n", maxdb_affected_rows($link));

maxdb_free_result($result);

/* Delete table Language */
maxdb_query($link, "DROP TABLE mycustomer");

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Affected rows (INSERT): 15
Affected rows (UPDATE): 15
Affected rows (DELETE): 0
Affected rows (SELECT): 15

Veja Também

  • maxdb_num_rows() - Gets the number of rows in a result
  • maxdb_info() - Retrieves information about the most recently executed query

MaxDB Funções
maxdb_autocommit
MaxDB Funções


Turns on or off auto-commiting database modifications

maxdb_affected_rows
maxdb_bind_param
MaxDB Funções
PHP Manual

maxdb_autocommit

maxdb::auto_commit

(PECL maxdb >= 1.0)

maxdb_autocommit -- maxdb::auto_commit — Turns on or off auto-commiting database modifications

Descrição

Estilo de procedimentos

bool maxdb_autocommit ( resource $link , bool $mode )

Estilo orientado a objetos

bool maxdb::auto_commit ( bool $mode )

maxdb_autocommit() is used to turn on or off auto-commit mode on queries for the database connection represented by the link resource.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* turn autocommit on */
$maxdb->autocommit(TRUE);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

if (!$link) {
   printf("Can't connect to localhost. Error: %s\n", maxdb_connect_error());
   exit();
}

/* turn autocommit on */
maxdb_autocommit($link, TRUE);

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • maxdb_commit() - Commits the current transaction
  • maxdb_rollback() - Rolls back current transaction

maxdb_affected_rows
maxdb_bind_param
MaxDB Funções


Sinônimo de maxdb_stmt_bind_param

maxdb_autocommit
maxdb_bind_result
MaxDB Funções
PHP Manual

maxdb_bind_param

(PECL maxdb 1.0)

maxdb_bind_param — Sinônimo de maxdb_stmt_bind_param()

Descrição

Esta função é um apelido para: maxdb_stmt_bind_param()

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_autocommit
maxdb_bind_result
MaxDB Funções


Sinônimo de maxdb_stmt_bind_result

maxdb_bind_param
maxdb_change_user
MaxDB Funções
PHP Manual

maxdb_bind_result

(PECL maxdb 1.0)

maxdb_bind_result — Sinônimo de maxdb_stmt_bind_result()

Descrição

Esta função é um apelido para: maxdb_stmt_bind_result().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_bind_param
maxdb_change_user
MaxDB Funções


Changes the user of the specified database connection

maxdb_bind_result
maxdb_character_set_name
MaxDB Funções
PHP Manual

maxdb_change_user

maxdb::change_user

(PECL maxdb >= 1.0)

maxdb_change_user -- maxdb::change_user — Changes the user of the specified database connection

Descrição

Estilo de procedimentos

bool maxdb_change_user ( resource $link , string $user , string $password , string $database )

Estilo orientado a objetos

bool maxdb::change_user ( string $user , string $password , string $database )

maxdb_change_user() is used to change the user of the specified database connection as given by the link parameter and to set the current database to that specified by the database parameter.

In order to successfully change users a valid username and password parameters must be provided and that user must have sufficient permissions to access the desired database. If for any reason authorization fails, the current user authentication will remain.

Nota:

Using this command will always cause the current database connection to behave as if was a completely new database connection, regardless of if the operation was completed successfully. This reset includes performing a rollback on any active transactions, closing all temporary tables, and unlocking all locked tables.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connect database test */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = $maxdb->query("SELECT * FROM dual")) {
   $row = $result->fetch_row();
   printf("Result: %s\n", $row[0]);
   $result->free();
}

/* reset all and select a new database */
if (!$maxdb->change_user("DBADMIN", "SECRET", "DEMODB")) {
  printf("Database not running\n");
} else {
  printf("Database running\n");
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = maxdb_query($link, "SELECT * FROM dual")) {
   $row = maxdb_fetch_row($result);
   printf("Result: %s\n", $row[0]);
   maxdb_free_result($result);
}

/* reset all and select a new database */
if (!maxdb_change_user($link, "DBADMIN", "SECRET", "DEMODB")) {
  printf("Database not running\n");
} else {
  printf("Database running\n");
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Result: a
Database running

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_select_db() - Selects the default database for database queries

maxdb_bind_result
maxdb_character_set_name
MaxDB Funções


Returns the default character set for the database connection

maxdb_change_user
maxdb_client_encoding
MaxDB Funções
PHP Manual

maxdb_character_set_name

maxdb::character_set_name

(PECL maxdb >= 1.0)

maxdb_character_set_name -- maxdb::character_set_name — Returns the default character set for the database connection

Descrição

Estilo de procedimentos

string maxdb_character_set_name ( resource $link )

Estilo orientado a objetos

string maxdb::character_set_name ( void )

Returns the current character set for the database connection specified by the link parameter.

Valor Retornado

The default character set for the current connection, either ascii or unicode.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Print current character set */
$charset = $maxdb->character_set_name();
printf ("Current character set is %s\n", $charset);

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Print current character set */
$charset = maxdb_character_set_name($link);
printf ("Current character set is %s\n",$charset);

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Current character set is ascii

Veja Também

  • maxdb_client_encoding() - Sinônimo de maxdb_character_set_name
  • maxdb_real_escape_string() - Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

maxdb_change_user
maxdb_client_encoding
MaxDB Funções


Sinônimo de maxdb_character_set_name

maxdb_character_set_name
maxdb_close_long_data
MaxDB Funções
PHP Manual

maxdb_client_encoding

(PECL maxdb 1.0)

maxdb_client_encoding — Sinônimo de maxdb_character_set_name()

Descrição

Esta função é um apelido para: maxdb_character_set_name().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_character_set_name
maxdb_close_long_data
MaxDB Funções


Sinônimo de maxdb_stmt_close_long_data

maxdb_client_encoding
maxdb_close
MaxDB Funções
PHP Manual

maxdb_close_long_data

maxdb->close_long_data

(PECL maxdb >= 1.0)

maxdb_close_long_data -- maxdb->close_long_data — Sinônimo de maxdb_stmt_close_long_data()

Descrição

Esta função é um apelido para: maxdb_stmt_close_long_data().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_client_encoding
maxdb_close
MaxDB Funções


Closes a previously opened database connection

maxdb_close_long_data
maxdb_commit
MaxDB Funções
PHP Manual

maxdb_close

maxdb::close

(PECL maxdb >= 1.0)

maxdb_close -- maxdb::close — Closes a previously opened database connection

Descrição

Estilo de procedimentos

bool maxdb_close ( resource $link )

Estilo orientado a objetos

bool maxdb::close ( void )

The maxdb_close() function closes a previously opened database connection specified by the link parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_init() - Initializes MaxDB and returns an resource for use with maxdb_real_connect
  • maxdb_real_connect() - Opens a connection to a MaxDB server

maxdb_close_long_data
maxdb_commit
MaxDB Funções


Commits the current transaction

maxdb_close
maxdb_connect_errno
MaxDB Funções
PHP Manual

maxdb_commit

maxdb::commit

(PECL maxdb >= 1.0)

maxdb_commit -- maxdb::commit — Commits the current transaction

Descrição

Estilo de procedimentos

bool maxdb_commit ( resource $link )

Estilo orientado a objetos

bool maxdb::commit ( void )

Commits the current transaction for the database connection specified by the link parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* set autocommit to off */
$maxdb->autocommit(FALSE);

maxdb_report (MAXDB_REPORT_OFF);
$maxdb->query("DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);

$maxdb->query("CREATE TABLE mycustomer LIKE hotel.customer");

/* Insert some values */
$maxdb->query("INSERT INTO mycustomer VALUES (3000,'Mrs','Jenny','Porter','10580','1340 N.Ash Street, #3')");
$maxdb->query("INSERT INTO mycustomer VALUES (3100,'Mr','Peter','Brown','48226','1001 34th Str., APT.3')");

/* commit transaction */
$maxdb->commit();

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* set autocommit to off */
maxdb_autocommit($link, FALSE);

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);

maxdb_query($link, "CREATE TABLE mycustomer LIKE hotel.customer");

/* Insert some values */
maxdb_query($link, "INSERT INTO mycustomer VALUES (3000,'Mrs','Jenny','Porter','10580','1340 N.Ash Street, #3')");
maxdb_query($link, "INSERT INTO mycustomer VALUES (3100,'Mr','Peter','Brown','48226','1001 34th Str., APT.3')");

/* commit transaction */
maxdb_commit($link);

/* close connection */
maxdb_close($link);
?>

The above examples produces no output.

Veja Também

  • maxdb_autocommit() - Turns on or off auto-commiting database modifications
  • maxdb_rollback() - Rolls back current transaction

maxdb_close
maxdb_connect_errno
MaxDB Funções


Returns the error code from last connect call

maxdb_commit
maxdb_connect_error
MaxDB Funções
PHP Manual

maxdb_connect_errno

(PECL maxdb >= 1.0)

maxdb_connect_errno — Returns the error code from last connect call

Descrição

int maxdb_connect_errno ( void )

The maxdb_connect_errno() function will return the last error code number for last call to maxdb_connect(). If no errors have occured, this function will return zero.

Valor Retornado

An error code value for the last call to maxdb_connect(), if it failed. zero means no error occurred.

Exemplos

Exemplo #1 maxdb_connect_errno sample

<?php
$link = maxdb_connect("localhost", "XXXXXXXX", "YYYYYYYYY");

if (!$link) {
   printf("Can't connect to localhost. Errorcode: %d\n", maxdb_connect_errno());
}
?>

O exemplo acima irá imprimir algo similar a:

PHP Warning:  maxdb_connect(): -4008 POS(1) Unknown user name/password combination [08004] <...>
Can't connect to localhost. Errorcode: -4008

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_connect_error() - Returns a string description of the last connect error
  • maxdb_errno() - Returns the error code for the most recent function call
  • maxdb_error() - Returns a string description of the last error
  • maxdb_sqlstate() - Returns the SQLSTATE error from previous MaxDB operation

maxdb_commit
maxdb_connect_error
MaxDB Funções


Returns a string description of the last connect error

maxdb_connect_errno
maxdb_connect
MaxDB Funções
PHP Manual

maxdb_connect_error

(PECL maxdb >= 1.0)

maxdb_connect_error — Returns a string description of the last connect error

Descrição

string maxdb_connect_error ( void )

The maxdb_connect_error() function is identical to the corresponding maxdb_connect_errno() function in every way, except instead of returning an integer error code the maxdb_connect_error() function will return a string representation of the last error to occur for the last maxdb_connect() call. If no error has occured, this function will return an empty string.

Valor Retornado

A string that describes the error. An empty string if no error occurred.

Exemplos

Exemplo #1 maxdb_connect_error sample

<?php

$link = maxdb_connect("localhost", "nonexisting_user", "");

if (!$link) {
   printf("Can't connect to localhost. Error: %s\n", maxdb_connect_error());
}
?>

O exemplo acima irá imprimir algo similar a:

PHP Warning:  maxdb_connect(): -4008 POS(1) Unknown user name/password combination <...>
Can't connect to localhost. Error: POS(1) Unknown user name/password combination

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_connect_errno() - Returns the error code from last connect call
  • maxdb_errno() - Returns the error code for the most recent function call
  • maxdb_error() - Returns a string description of the last error
  • maxdb_sqlstate() - Returns the SQLSTATE error from previous MaxDB operation

maxdb_connect_errno
maxdb_connect
MaxDB Funções


Open a new connection to the MaxDB server

maxdb_connect_error
maxdb_data_seek
MaxDB Funções
PHP Manual

maxdb_connect

maxdb::__construct

(PECL maxdb >= 1.0)

maxdb_connect -- maxdb::__construct — Open a new connection to the MaxDB server

Descrição

Estilo de procedimentos

resource maxdb_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port = 0 [, string $socket ]]]]]] )

Estilo orientado a objetos

maxdb::__construct() ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port = 0 [, string $socket ]]]]]] )

The maxdb_connect() function attempts to open a connection to the MaxDB Server running on host which can be either a host name or an IP address. Passing the string "localhost" to this parameter, the local host is assumed. If successful, the maxdb_connect() will return an resource representing the connection to the database or FALSE on failure.

The username and password parameters specify the username and password under which to connect to the MaxDB server. If the password is not provided (the NULL value is passed), the MaxDB server will attempt to authenticate the user against the maxdb.default_pw in php.ini.

The dbname parameter if provided will specify the default database to be used when performing queries. If not provied, the entry maxdb.default_db in php.ini is used.

The port and socket parameters are ignored for the MaxDB server.

Valor Retornado

Returns a resource which represents the connection to a MaxDB Server or FALSE if the connection failed.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf("Host information: %s\n", $maxdb->host_info);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf("Host information: %s\n", maxdb_get_host_info($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Host information: localhost
maxdb_connect_error
maxdb_data_seek
MaxDB Funções


Adjusts the result pointer to an arbitary row in the result

maxdb_connect
maxdb_debug
MaxDB Funções
PHP Manual

maxdb_data_seek

maxdb_result::data_seek

(PECL maxdb >= 1.0)

maxdb_data_seek -- maxdb_result::data_seek — Adjusts the result pointer to an arbitary row in the result

Descrição

Estilo de procedimentos

bool maxdb_data_seek ( resource $result , int $offset )

Estilo orientado a objetos

bool maxdb_result::data_seek ( int $offset )

The maxdb_data_seek() function seeks to an arbitrary result pointer specified by the offset in the result set represented by result. The offset parameter must be between zero and the total number of rows minus one (0..maxdb_num_rows() - 1).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER BY name";
if ($result = $maxdb->query( $query)) {

   /* seek to row no. 10 */
   $result->data_seek(10);

   /* fetch row */
   $row = $result->fetch_row();

   printf ("City: %s  State: %s\n", $row[0], $row[1]);

   /* free result set*/
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER BY name";

if ($result = maxdb_query($link, $query)) {

   /* seek to row no. 400 */
   maxdb_data_seek($result, 10);

   /* fetch row */
   $row = maxdb_fetch_row($result);

   printf ("City: %s  State: %s\n", $row[0], $row[1]);

   /* free result set*/
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

City: Irvine  State: CA

Veja Também

  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_fetch_row() - Get a result row as an enumerated array
  • maxdb_num_rows() - Gets the number of rows in a result

maxdb_connect
maxdb_debug
MaxDB Funções


Performs debugging operations

maxdb_data_seek
maxdb_disable_reads_from_master
MaxDB Funções
PHP Manual

maxdb_debug

(PECL maxdb >= 1.0)

maxdb_debug — Performs debugging operations

Descrição

void maxdb_debug ( string $debug )

The maxdb_debug() can be used to trace the SQLDBC communication. The following strings can be used as a parameter to maxdb_debug():

  • TRACE SHORT ON|OFF - Enables/disables method call trace.
  • TRACE LONG ON|OFF - Enables/disables method argument and detail debug trace.
  • TRACE PACKET ON|OFF|<size> - Enables/disables packet trace, limiting the size of the traced object to the specified number of bytes, or 1000 if no size is specified.
  • TRACE SQL ON|OFF - Enables/disables high level api trace.
  • TRACE TIMESTAMP ON|OFF - Enables/disables a timestamp prefix on each line that is traced.
  • TRACE SIZE <size> - Limits the size of the trace file to <size> bytes, at least 8192 bytes are required.

Valor Retornado

maxdb_debug() doesn't return any value.

Exemplos

Exemplo #1 Procedural style

<?php

maxdb_debug("trace packet 200");

$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* close connection */
maxdb_close($link);
?>

The above example produces no output.

maxdb_data_seek
maxdb_disable_reads_from_master
MaxDB Funções


Disable reads from master

maxdb_debug
maxdb_disable_rpl_parse
MaxDB Funções
PHP Manual

maxdb_disable_reads_from_master

maxdb::disable_reads_from_master

(PECL maxdb >= 1.0)

maxdb_disable_reads_from_master -- maxdb::disable_reads_from_master — Disable reads from master

Descrição

Estilo de procedimentos

bool maxdb_disable_reads_from_master ( resource $link )

Estilo orientado a objetos

void maxdb::disable_reads_from_master ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_debug
maxdb_disable_rpl_parse
MaxDB Funções


Disable RPL parse

maxdb_disable_reads_from_master
maxdb_dump_debug_info
MaxDB Funções
PHP Manual

maxdb_disable_rpl_parse

(PECL maxdb >= 1.0)

maxdb_disable_rpl_parse — Disable RPL parse

Descrição

bool maxdb_disable_rpl_parse ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_disable_reads_from_master
maxdb_dump_debug_info
MaxDB Funções


Dump debugging information into the log

maxdb_disable_rpl_parse
maxdb_embedded_connect
MaxDB Funções
PHP Manual

maxdb_dump_debug_info

(PECL maxdb >= 1.0)

maxdb_dump_debug_info — Dump debugging information into the log

Descrição

bool maxdb_dump_debug_info ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_disable_rpl_parse
maxdb_embedded_connect
MaxDB Funções


Open a connection to an embedded MaxDB server

maxdb_dump_debug_info
maxdb_enable_reads_from_master
MaxDB Funções
PHP Manual

maxdb_embedded_connect

(PECL maxdb >= 1.0)

maxdb_embedded_connect — Open a connection to an embedded MaxDB server

Descrição

resource maxdb_embedded_connect ([ string $dbname ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_dump_debug_info
maxdb_enable_reads_from_master
MaxDB Funções


Enable reads from master

maxdb_embedded_connect
maxdb_enable_rpl_parse
MaxDB Funções
PHP Manual

maxdb_enable_reads_from_master

(PECL maxdb >= 1.0)

maxdb_enable_reads_from_master — Enable reads from master

Descrição

bool maxdb_enable_reads_from_master ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_embedded_connect
maxdb_enable_rpl_parse
MaxDB Funções


Enable RPL parse

maxdb_enable_reads_from_master
maxdb_errno
MaxDB Funções
PHP Manual

maxdb_enable_rpl_parse

(PECL maxdb >= 1.0)

maxdb_enable_rpl_parse — Enable RPL parse

Descrição

bool maxdb_enable_rpl_parse ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_enable_reads_from_master
maxdb_errno
MaxDB Funções


Returns the error code for the most recent function call

maxdb_enable_rpl_parse
maxdb_error
MaxDB Funções
PHP Manual

maxdb_errno

maxdb->errno

(PECL maxdb >= 1.0)

maxdb_errno -- maxdb->errno — Returns the error code for the most recent function call

Descrição

Estilo de procedimentos

int maxdb_errno ( resource $link )

Estilo orientado a objetos

int $errno;

The maxdb_errno() function will return the last error code for the most recent MaxDB function call that can succeed or fail with respect to the database link defined by the link parameter. If no errors have occured, this function will return zero.

Valor Retornado

An error code value for the last call, if it failed. zero means no error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if (!$maxdb->query("SELECT xxx FROM hotel.city")) {
   printf("Errorcode: %d\n", $maxdb->errno);
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if (!maxdb_query($link, "SELECT xxx FROM hotel.city")) {
   printf("Errorcode: %d\n", maxdb_errno($link));
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

PHP Warning:  maxdb_query(): -4005 POS(8) Unknown column name:XXX [42000] <...>
Errorcode: -4005

Veja Também

  • maxdb_connect_errno() - Returns the error code from last connect call
  • maxdb_connect_error() - Returns a string description of the last connect error
  • maxdb_error() - Returns a string description of the last error
  • maxdb_sqlstate() - Returns the SQLSTATE error from previous MaxDB operation

maxdb_enable_rpl_parse
maxdb_error
MaxDB Funções


Returns a string description of the last error

maxdb_errno
maxdb_escape_string
MaxDB Funções
PHP Manual

maxdb_error

maxdb->error

(PECL maxdb >= 1.0)

maxdb_error -- maxdb->error — Returns a string description of the last error

Descrição

Estilo de procedimentos

string maxdb_error ( resource $link )

Estilo orientado a objetos

string $error;

The maxdb_error() function is identical to the corresponding maxdb_errno() function in every way, except instead of returning an integer error code the maxdb_error() function will return a string representation of the last error to occur for the database connection represented by the link parameter. If no error has occured, this function will return an empty string.

Valor Retornado

A string that describes the error. An empty string if no error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if (!$maxdb->query("SELECT xxx FROM hotel.city")) {
   printf("Errormessage: %s\n", $maxdb->error);
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if (!maxdb_query($link, "SELECT xxx FROM hotel.city")) {
   printf("Errormessgae: %s\n", maxdb_error($link));
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

PHP Warning:  maxdb_query(): -4005 POS(8) Unknown column name:XXX [42000]
Errormessgae: POS(8) Unknown column name:XXX

Veja Também

  • maxdb_connect_errno() - Returns the error code from last connect call
  • maxdb_connect_error() - Returns a string description of the last connect error
  • maxdb_errno() - Returns the error code for the most recent function call
  • maxdb_sqlstate() - Returns the SQLSTATE error from previous MaxDB operation

maxdb_errno
maxdb_escape_string
MaxDB Funções


Sinônimo de maxdb_real_escape_string

maxdb_error
maxdb_execute
MaxDB Funções
PHP Manual

maxdb_escape_string

(PECL maxdb 1.0)

maxdb_escape_string — Sinônimo de maxdb_real_escape_string()

Descrição

Esta função é um apelido para: maxdb_real_escape_string().

maxdb_error
maxdb_execute
MaxDB Funções


Sinônimo de maxdb_stmt_execute

maxdb_escape_string
maxdb_fetch_array
MaxDB Funções
PHP Manual

maxdb_execute

(PECL maxdb 1.0)

maxdb_execute — Sinônimo de maxdb_stmt_execute()

Descrição

Esta função é um apelido para: maxdb_stmt_execute().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_escape_string
maxdb_fetch_array
MaxDB Funções


Fetch a result row as an associative, a numeric array, or both

maxdb_execute
maxdb_fetch_assoc
MaxDB Funções
PHP Manual

maxdb_fetch_array

maxdb_result::fetch_array

(PECL maxdb >= 1.0)

maxdb_fetch_array -- maxdb_result::fetch_array — Fetch a result row as an associative, a numeric array, or both

Descrição

Estilo de procedimentos

mixed maxdb_fetch_array ( resource $result [, int $resulttype ] )

Estilo orientado a objetos

mixed maxdb_result::fetch_array ([ int $resulttype ] )

Returns an array that corresponds to the fetched row or NULL if there are no more rows for the resultset represented by the result parameter.

maxdb_fetch_array() is an extended version of the maxdb_fetch_row() function. In addition to storing the data in the numeric indices of the result array, the maxdb_fetch_array() function can also store the data in associative indices, using the field names of the result set as keys.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

If two or more columns of the result have the same field names, the last column will take precedence and overwrite the earlier data. In order to access multiple columns with the same name, the numerically indexed version of the row must be used.

The optional second argument resulttype is a constant indicating what type of array should be produced from the current row data. The possible values for this parameter are the constants MAXDB_ASSOC, MAXDB_ASSOC_UPPER, MAXDB_ASSOC_LOWER, MAXDB_NUM, or MAXDB_BOTH. By default the maxdb_fetch_array() function will assume MAXDB_BOTH, which is a combination of MAXDB_NUM and MAXDB_ASSOC for this parameter.

By using the MAXDB_ASSOC constant this function will behave identically to the maxdb_fetch_assoc(), while MAXDB_NUM will behave identically to the maxdb_fetch_row() function. The final option MAXDB_BOTH will create a single array with the attributes of both.

By using the MAXDB_ASSOC_UPPER constant, the behaviour of this function is identical to the use of MAXDB_ASSOC except the array index of a column is the fieldname in upper case.

By using the MAXDB_ASSOC_LOWER constant, the behaviour of this function is identical to the use of MAXDB_ASSOC except the array index of a column is the fieldname in lower case.

Valor Retornado

Returns an array that corresponds to the fetched row or NULL if there are no more rows in resultset.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";
$result = $maxdb->query($query);

/* numeric array */
$row = $result->fetch_array(MAXDB_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

/* associative array */
$row = $result->fetch_array(MAXDB_ASSOC);
printf ("%s (%s)\n", $row["NAME"], $row["STATE"]);

/* associative and numeric array */
$row = $result->fetch_array(MAXDB_BOTH);
printf ("%s (%s)\n", $row[0], $row["STATE"]);

/* free result set */
$result->close();

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";
$result = maxdb_query($link, $query);

/* numeric array */
$row = maxdb_fetch_array($result, MAXDB_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

/* associative array */
$row = maxdb_fetch_array($result, MAXDB_ASSOC);
printf ("%s (%s)\n", $row["NAME"], $row["STATE"]);

/* associative and numeric array */
$row = maxdb_fetch_array($result, MAXDB_BOTH);
printf ("%s (%s)\n", $row[0], $row["STATE"]);

/* free result set */
maxdb_free_result($result);

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

New York (NY)
New York (NY)
Long Island (NY)

Veja Também

  • maxdb_fetch_assoc() - Fetch a result row as an associative array
  • maxdb_fetch_row() - Get a result row as an enumerated array
  • maxdb_fetch_resource()

maxdb_execute
maxdb_fetch_assoc
MaxDB Funções


Fetch a result row as an associative array

maxdb_fetch_array
maxdb_fetch_field_direct
MaxDB Funções
PHP Manual

maxdb_fetch_assoc

maxdb_result::fetch_assoc

(PECL maxdb >= 1.0)

maxdb_fetch_assoc -- maxdb_result::fetch_assoc — Fetch a result row as an associative array

Descrição

Estilo de procedimentos

array maxdb_fetch_assoc ( resource $result )

Estilo orientado a objetos

array maxdb_result::fetch_assoc ( void )

Returns an associative array that corresponds to the fetched row or NULL if there are no more rows.

The maxdb_fetch_assoc() function is used to return an associative array representing the next row in the result set for the result represented by the result parameter, where each key in the array represents the name of one of the result set's columns.

If two or more columns of the result have the same field names, the last column will take precedence. To access the other column(s) of the same name, you either need to access the result with numeric indices by using maxdb_fetch_row() or add alias names.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Valor Retornado

Returns an array that corresponds to the fetched row or NULL if there are no more rows in resultset.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = $maxdb->query($query)) {

   /* fetch associative array */
   while ($row = $result->fetch_assoc()) {
       printf ("%s (%s)\n", $row["NAME"], $row["STATE"]);
   }

   /* free result set */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = maxdb_query($link, $query)) {

   /* fetch associative array */
   while ($row = maxdb_fetch_assoc($result)) {
       printf ("%s (%s)\n", $row["NAME"], $row["STATE"]);
   }

   /* free result set */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

New York (NY)
New York (NY)
Long Island (NY)
Albany (NY)
Washington (DC)
Washington (DC)
Washington (DC)
Silver Spring (MD)
Daytona Beach (FL)
Deerfield Beach (FL)
Clearwater (FL)
Cincinnati (OH)
Detroit (MI)
Rosemont (IL)
Chicago (IL)
Chicago (IL)
New Orleans (LA)
Dallas (TX)
Los Angeles (CA)
Hollywood (CA)
Long Beach (CA)
Palm Springs (CA)
Irvine (CA)
Santa Clara (CA)
Portland (OR)

Veja Também

  • maxdb_fetch_array() - Fetch a result row as an associative, a numeric array, or both
  • maxdb_fetch_row() - Get a result row as an enumerated array
  • maxdb_fetch_resource()

maxdb_fetch_array
maxdb_fetch_field_direct
MaxDB Funções


Fetch meta-data for a single field

maxdb_fetch_assoc
maxdb_fetch_field
MaxDB Funções
PHP Manual

maxdb_fetch_field_direct

maxdb_result::fetch_field_direct

(PECL maxdb >= 1.0)

maxdb_fetch_field_direct -- maxdb_result::fetch_field_direct — Fetch meta-data for a single field

Descrição

Estilo de procedimentos

mixed maxdb_fetch_field_direct ( resource $result , int $fieldnr )

Estilo orientado a objetos

mixed maxdb_result::fetch_field_direct ( int $fieldnr )

maxdb_fetch_field_direct() returns an resource which contains field definition information from specified resultset. The value of fieldnr must be in the range from 0 to number of fields - 1.

Valor Retornado

Returns an resource which contains field definition information or FALSE if no field information for specified fieldnr is available.

Object attributes
Attribute | Description
name | The name of the column
max_length | The maximum width of the field for the result set.
type | The data type used for this field
decimals | The number of decimals used (for integer fields)

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY name";

if ($result = $maxdb->query($query)) {

   /* Get field information for column 'SurfaceArea' */
   $finfo = $result->fetch_field_direct(1);

   printf("Name:     %s\n", $finfo->name);
   printf("Table:    %s\n", $finfo->table);
   printf("max. Len: %d\n", $finfo->max_length);
   printf("Flags:    %d\n", $finfo->flags);
   printf("Type:     %d\n", $finfo->type);

   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY name";

if ($result = maxdb_query($link, $query)) {

   /* Get field information for column 'cno' */
   $finfo = maxdb_fetch_field_direct($result, 1);

   printf("Name:     %s\n", $finfo->name);
   printf("Table:    %s\n", $finfo->table);
   printf("max. Len: %d\n", $finfo->max_length);
   printf("Flags:    %d\n", $finfo->flags);
   printf("Type:     %d\n", $finfo->type);

   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Name:     CNO
Table:
max. Len: 4
Flags:    -1
Type:     0

Veja Também

  • maxdb_num_fields() - Get the number of fields in a result
  • maxdb_fetch_field() - Returns the next field in the result set
  • maxdb_fetch_fields() - Returns an array of resources representing the fields in a result set

maxdb_fetch_assoc
maxdb_fetch_field
MaxDB Funções


Returns the next field in the result set

maxdb_fetch_field_direct
maxdb_fetch_fields
MaxDB Funções
PHP Manual

maxdb_fetch_field

maxdb_result::fetch_field

(PECL maxdb >= 1.0)

maxdb_fetch_field -- maxdb_result::fetch_field — Returns the next field in the result set

Descrição

Estilo de procedimentos

mixed maxdb_fetch_field ( resource $result )

Estilo orientado a objetos

mixed maxdb_result::fetch_field ( void )

The maxdb_fetch_field() returns the definition of one column of a result set as an resource. Call this function repeatedly to retrieve information about all columns in the result set. maxdb_fetch_field() returns FALSE when no more fields are left.

Valor Retornado

Returns an resource which contains field definition information or FALSE if no field information is available.

Object properties
Property | Description
name | The name of the column
max_length | The maximum width of the field for the result set.
type | The data type used for this field
decimals | The number of decimals used (for integer fields)

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = $maxdb->query($query)) {

   /* Get field information for all columns */
   while ($finfo = $result->fetch_field()) {

       printf("Name:     %s\n", $finfo->name);
       printf("Table:    %s\n", $finfo->table);
       printf("max. Len: %d\n", $finfo->max_length);
       printf("Flags:    %d\n", $finfo->flags);
       printf("Type:     %d\n\n", $finfo->type);
   }
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = maxdb_query($link, $query)) {

   /* Get field information for all fields */
   while ($finfo = maxdb_fetch_field($result)) {

       printf("Name:     %s\n", $finfo->name);
       printf("Table:    %s\n", $finfo->table);
       printf("max. Len: %d\n", $finfo->max_length);
       printf("Flags:    %d\n", $finfo->flags);
       printf("Type:     %d\n\n", $finfo->type);
   }
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Name:     NAME
Table:
max. Len: 10
Flags:    -1
Type:     2

Name:     CNO
Table:
max. Len: 4
Flags:    -1
Type:     0

Veja Também

  • maxdb_num_fields() - Get the number of fields in a result
  • maxdb_fetch_field_direct() - Fetch meta-data for a single field
  • maxdb_fetch_fields() - Returns an array of resources representing the fields in a result set
  • maxdb_field_seek() - Set result pointer to a specified field offset

maxdb_fetch_field_direct
maxdb_fetch_fields
MaxDB Funções


Returns an array of resources representing the fields in a result set

maxdb_fetch_field
maxdb_fetch_lengths
MaxDB Funções
PHP Manual

maxdb_fetch_fields

maxdb_result::fetch_fields

(PECL maxdb >= 1.0)

maxdb_fetch_fields -- maxdb_result::fetch_fields — Returns an array of resources representing the fields in a result set

Descrição

Estilo de procedimentos

mixed maxdb_fetch_fields ( resource $result )

Estilo orientado a objetos

mixed maxdb_result::fetch_fields ( void )

This function serves an identical purpose to the maxdb_fetch_field() function with the single difference that, instead of returning one resource at a time for each field, the columns are returned as an array of resources.

Valor Retornado

Returns an array of resources which contains field definition information or FALSE if no field information is available.

Object properties
Property | Description
name | The name of the column
max_length | The maximum width of the field for the result set.
type | The data type used for this field
decimals | The number of decimals used (for integer fields)

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = $maxdb->query($query)) {

   /* Get field information for all columns */
   $finfo = $result->fetch_fields();

   foreach ($finfo as $val) {
       printf("Name:     %s\n", $val->name);
       printf("Table:    %s\n", $val->table);
       printf("max. Len: %d\n", $val->max_length);
       printf("Flags:    %d\n", $val->flags);
       printf("Type:     %d\n\n", $val->type);
   }
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = maxdb_query($link, $query)) {

   /* Get field information for all columns */
   $finfo = maxdb_fetch_fields($result);

   foreach ($finfo as $val) {
       printf("Name:     %s\n", $val->name);
       printf("Table:    %s\n", $val->table);
       printf("max. Len: %d\n", $val->max_length);
       printf("Flags:    %d\n", $val->flags);
       printf("Type:     %d\n\n", $val->type);
   }
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Name:     NAME
Table:
max. Len: 10
Flags:    -1
Type:     2

Name:     CNO
Table:
max. Len: 4
Flags:    -1
Type:     0

Veja Também

  • maxdb_num_fields() - Get the number of fields in a result
  • maxdb_fetch_field() - Returns the next field in the result set
  • maxdb_fetch_field_direct() - Fetch meta-data for a single field

maxdb_fetch_field
maxdb_fetch_lengths
MaxDB Funções


Returns the lengths of the columns of the current row in the result set

maxdb_fetch_fields
maxdb_fetch_object
MaxDB Funções
PHP Manual

maxdb_fetch_lengths

maxdb_result->lengths

(PECL maxdb >= 1.0)

maxdb_fetch_lengths -- maxdb_result->lengths — Returns the lengths of the columns of the current row in the result set

Descrição

Estilo de procedimentos

array maxdb_fetch_lengths ( resource $result )

Estilo orientado a objetos

array $lengths;

The maxdb_fetch_lengths() function returns an array containing the lengths of every column of the current row within the result set represented by the result parameter. If successful, a numerically indexed array representing the lengths of each column is returned or FALSE on failure.

Valor Retornado

An array of integers representing the size of each column (not including any terminating null characters). FALSE if an error occurred.

maxdb_fetch_lengths() is valid only for the current row of the result set. It returns FALSE if you call it before calling maxdb_fetch_row/array/resource or after retrieving all rows in the result.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT * from hotel.customer WHERE cno = 3000";

if ($result = $maxdb->query($query)) {

   $row = $result->fetch_row();

   /* display column lengths */
   foreach ($result->lengths as $i => $val) {
       printf("Field %2d has Length %2d\n", $i+1, $val);
   }
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT * from hotel.customer WHERE cno = 3000";

if ($result = maxdb_query($link, $query)) {

   $row = maxdb_fetch_row($result);

   /* display column lengths */
   foreach (maxdb_fetch_lengths($result) as $i => $val) {
       printf("Field %2d has Length %2d\n", $i+1, $val);
   }
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Field  1 has Length  4
Field  2 has Length  3
Field  3 has Length  5
Field  4 has Length  6
Field  5 has Length  5
Field  6 has Length 21
maxdb_fetch_fields
maxdb_fetch_object
MaxDB Funções


Returns the current row of a result set as an object

maxdb_fetch_lengths
maxdb_fetch_row
MaxDB Funções
PHP Manual

maxdb_fetch_object

maxdb_result::fetch_object

(PECL maxdb >= 1.0)

maxdb_fetch_object -- maxdb_result::fetch_object — Returns the current row of a result set as an object

Descrição

Estilo de procedimentos

object maxdb_fetch_object ( object $result )

Estilo orientado a objetos

object maxdb_result::fetch_object ( void )

The maxdb_fetch_object() will return the current row result set as an object where the attributes of the object represent the names of the fields found within the result set. If no more rows exist in the current result set, NULL is returned.

Valor Retornado

Returns an object that corresponds to the fetched row or NULL if there are no more rows in resultset.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = $maxdb->query($query)) {

   /* fetch object array */
   while ($obj = $result->fetch_object()) {
       printf ("%s (%s)\n", $obj->NAME, $obj->STATE);
   }

   /* free result set */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = maxdb_query($link, $query)) {

   /* fetch object array */
   while ($obj = maxdb_fetch_object($result)) {
       printf ("%s (%s)\n", $obj->NAME, $obj->STATE);
   }

   /* free result set */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

New York (NY)
New York (NY)
Long Island (NY)
Albany (NY)
Washington (DC)
Washington (DC)
Washington (DC)
Silver Spring (MD)
Daytona Beach (FL)
Deerfield Beach (FL)
Clearwater (FL)
Cincinnati (OH)
Detroit (MI)
Rosemont (IL)
Chicago (IL)
Chicago (IL)
New Orleans (LA)
Dallas (TX)
Los Angeles (CA)
Hollywood (CA)
Long Beach (CA)
Palm Springs (CA)
Irvine (CA)
Santa Clara (CA)
Portland (OR)

Veja Também

  • maxdb_fetch_array() - Fetch a result row as an associative, a numeric array, or both
  • maxdb_fetch_assoc() - Fetch a result row as an associative array
  • maxdb_fetch_row() - Get a result row as an enumerated array

maxdb_fetch_lengths
maxdb_fetch_row
MaxDB Funções


Get a result row as an enumerated array

maxdb_fetch_object
maxdb_fetch
MaxDB Funções
PHP Manual

maxdb_fetch_row

maxdb_result::fetch_row

(PECL maxdb >= 1.0)

maxdb_fetch_row -- maxdb_result::fetch_row — Get a result row as an enumerated array

Descrição

Estilo de procedimentos

mixed maxdb_fetch_row ( resource $result )

Estilo orientado a objetos

mixed maxdb_result::fetch_row ( void )

Returns an array that corresponds to the fetched row, or NULL if there are no more rows.

maxdb_fetch_row() fetches one row of data from the result set represented by result and returns it as an enumerated array, where each column is stored in an array offset starting from 0 (zero). Each subsequent call to the maxdb_fetch_row() function will return the next row within the result set, or FALSE if there are no more rows.

Valor Retornado

maxdb_fetch_row() returns an array that corresponds to the fetched row or NULL if there are no more rows in result set.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = $maxdb->query($query)) {

   /* fetch enumerated array */
   while ($row = $result->fetch_row()) {
       printf ("%s (%s)\n", $row[0], $row[1]);
   }

   /* free result set */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, state FROM hotel.city ORDER by zip";

if ($result = maxdb_query($link, $query)) {

   /* fetch enumerated array */
   while ($row = maxdb_fetch_row($result)) {
       printf ("%s (%s)\n", $row[0], $row[1]);
   }

   /* free result set */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

New York (NY)
New York (NY)
Long Island (NY)
Albany (NY)
Washington (DC)
Washington (DC)
Washington (DC)
Silver Spring (MD)
Daytona Beach (FL)
Deerfield Beach (FL)
Clearwater (FL)
Cincinnati (OH)
Detroit (MI)
Rosemont (IL)
Chicago (IL)
Chicago (IL)
New Orleans (LA)
Dallas (TX)
Los Angeles (CA)
Hollywood (CA)
Long Beach (CA)
Palm Springs (CA)
Irvine (CA)
Santa Clara (CA)
Portland (OR)

Veja Também

  • maxdb_fetch_array() - Fetch a result row as an associative, a numeric array, or both
  • maxdb_fetch_assoc() - Fetch a result row as an associative array
  • maxdb_fetch_resource()

maxdb_fetch_object
maxdb_fetch
MaxDB Funções


Sinônimo de maxdb_stmt_fetch

maxdb_fetch_row
maxdb_field_count
MaxDB Funções
PHP Manual

maxdb_fetch

(PECL maxdb 1.0)

maxdb_fetch — Sinônimo de maxdb_stmt_fetch()

Descrição

Esta função é um apelido para: maxdb_stmt_fetch().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_fetch_row
maxdb_field_count
MaxDB Funções


Returns the number of columns for the most recent query

maxdb_fetch
maxdb_field_seek
MaxDB Funções
PHP Manual

maxdb_field_count

maxdb::field_count

(PECL maxdb >= 1.0)

maxdb_field_count -- maxdb::field_count — Returns the number of columns for the most recent query

Descrição

Estilo de procedimentos

int maxdb_field_count ( resource $link )

Estilo orientado a objetos

int maxdb::field_count ( void )

Returns the number of columns for the most recent query on the connection represented by the link parameter. This function can be useful when using the maxdb_store_result() function to determine if the query should have produced a non-empty result set or not without knowing the nature of the query.

Valor Retornado

An integer representing the number of fields in a result set.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

maxdb_report (MAXDB_REPORT_OFF);
$maxdb->query("DROP TABLE friends");
maxdb_report (MAXDB_REPORT_ERROR);

$maxdb->query( "CREATE TABLE friends (id int, name varchar(20))");

$maxdb->query( "INSERT INTO friends VALUES (1,'Hartmut')");
$maxdb->query( "INSERT INTO friends VALUES (2, 'Ulf')");

if ($maxdb->field_count()) {
   /* this was a select/show or describe query */
   $result = $maxdb->store_result();

   /* process resultset */
   $row = $result->fetch_row();

   /* free resultset */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP TABLE friends");
maxdb_report (MAXDB_REPORT_ERROR);

maxdb_query($link, "CREATE TABLE friends (id int, name varchar(20))");

maxdb_query($link, "INSERT INTO friends VALUES (1,'Hartmut')");
maxdb_query($link, "INSERT INTO friends VALUES (2, 'Ulf')");

if (maxdb_field_count($link)) {
   /* this was a select/show or describe query */
   $result = maxdb_store_result($link);

   /* process resultset */
   $row = maxdb_fetch_row($result);

   /* free resultset */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

The above example produces no output.

maxdb_fetch
maxdb_field_seek
MaxDB Funções


Set result pointer to a specified field offset

maxdb_field_count
maxdb_field_tell
MaxDB Funções
PHP Manual

maxdb_field_seek

maxdb_result::field_seek

(PECL maxdb >= 1.0)

maxdb_field_seek -- maxdb_result::field_seek — Set result pointer to a specified field offset

Descrição

Estilo de procedimentos

bool maxdb_field_seek ( resource $result , int $fieldnr )

Estilo orientado a objetos

bool maxdb_result::field_seek ( int $fieldnr )

Sets the field cursor to the given offset. The next call to maxdb_fetch_field() will retrieve the field definition of the column associated with that offset.

Nota:

To seek to the beginning of a row, pass an offset value of zero.

Valor Retornado

maxdb_field_seek() returns previuos value of field cursor.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = $maxdb->query($query)) {

   /* Get field information for 2nd column */
   $result->field_seek(1);
   $finfo = $result->fetch_field();

   printf("Name:     %s\n", $finfo->name);
   printf("Table:    %s\n", $finfo->table);
   printf("max. Len: %d\n", $finfo->max_length);
   printf("Flags:    %d\n", $finfo->flags);
   printf("Type:     %d\n\n", $finfo->type);

   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = maxdb_query($link, $query)) {

   /* Get field information for 2nd column */
   maxdb_field_seek($result, 1);
   $finfo = maxdb_fetch_field($result);

   printf("Name:     %s\n", $finfo->name);
   printf("Table:    %s\n", $finfo->table);
   printf("max. Len: %d\n", $finfo->max_length);
   printf("Flags:    %d\n", $finfo->flags);
   printf("Type:     %d\n\n", $finfo->type);

   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Name:     NAME
Table:
max. Len: 10
Flags:    -1
Type:     2

Veja Também

  • maxdb_fetch_field() - Returns the next field in the result set

maxdb_field_count
maxdb_field_tell
MaxDB Funções


Get current field offset of a result pointer

maxdb_field_seek
maxdb_free_result
MaxDB Funções
PHP Manual

maxdb_field_tell

maxdb_result->current_field

(PECL maxdb >= 1.0)

maxdb_field_tell -- maxdb_result->current_field — Get current field offset of a result pointer

Descrição

Estilo de procedimentos

int maxdb_field_tell ( resource $result )

Estilo orientado a objetos

int $current_field;

Returns the position of the field cursor used for the last maxdb_fetch_field() call. This value can be used as an argument to maxdb_field_seek().

Valor Retornado

Returns current offset of field cursor.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = $maxdb->query($query)) {

   /* Get field information for all columns */
   while ($finfo = $result->fetch_field()) {

       /* get fieldpointer offset */
       $currentfield = $result->current_field;

       printf("Column    %d:\n", $currentfield);
       printf("Name:     %s\n", $finfo->name);
       printf("Table:    %s\n", $finfo->table);
       printf("max. Len: %d\n", $finfo->max_length);
       printf("Flags:    %d\n", $finfo->flags);
       printf("Type:     %d\n\n", $finfo->type);
   }
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, cno from hotel.customer ORDER BY cno";

if ($result = maxdb_query($link, $query)) {

   /* Get field information for all fields */
   while ($finfo = maxdb_fetch_field($result)) {

       /* get fieldpointer offset */
       $currentfield = maxdb_field_tell($result);

       printf("Column    %d:\n", $currentfield);
       printf("Name:     %s\n", $finfo->name);
       printf("Table:    %s\n", $finfo->table);
       printf("max. Len: %d\n", $finfo->max_length);
       printf("Flags:    %d\n", $finfo->flags);
       printf("Type:     %d\n\n", $finfo->type);
   }
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Column    1:
Name:     NAME
Table:
max. Len: 10
Flags:    -1
Type:     2

Column    2:
Name:     CNO
Table:
max. Len: 4
Flags:    -1
Type:     0

Veja Também

  • maxdb_fetch_field() - Returns the next field in the result set
  • maxdb_field_seek() - Set result pointer to a specified field offset

maxdb_field_seek
maxdb_free_result
MaxDB Funções


Frees the memory associated with a result

maxdb_field_tell
maxdb_get_client_info
MaxDB Funções
PHP Manual

maxdb_free_result

maxdb_result::free

(PECL maxdb >= 1.0)

maxdb_free_result -- maxdb_result::free — Frees the memory associated with a result

Descrição

Estilo de procedimentos

void maxdb_free_result ( resource $result )

Estilo orientado a objetos

void maxdb_result::free ( void )

The maxdb_free_result() function frees the memory associated with the result represented by the result parameter, which was allocated by maxdb_query(), maxdb_store_result() or maxdb_use_result().

Nota:

You should always free your result with maxdb_free_result(), when your result resource is not needed anymore.

Valor Retornado

This function doesn't return any value.

Veja Também

  • maxdb_query() - Performs a query on the database
  • maxdb_stmt_store_result() - Transfers a result set from a prepared statement
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_use_result() - Initiate a result set retrieval

maxdb_field_tell
maxdb_get_client_info
MaxDB Funções


Returns the MaxDB client version as a string

maxdb_free_result
maxdb_get_client_version
MaxDB Funções
PHP Manual

maxdb_get_client_info

(PECL maxdb >= 1.0)

maxdb_get_client_info — Returns the MaxDB client version as a string

Descrição

string maxdb_get_client_info ( void )

The maxdb_get_client_info() function is used to return a string representing the client version being used in the MaxDB extension.

Valor Retornado

A string that represents the MaxDB client library version

Exemplos

Exemplo #1 maxdb_get_client_info

<?php

/* We don't need a connection to determine
   the version of MaxDB client library */

printf("Client library version: %s\n", maxdb_get_client_info());
?>

O exemplo acima irá imprimir algo similar a:

Client library version: libSQLDBC <...>

Veja Também

  • maxdb_get_client_version() - Get MaxDB client info
  • maxdb_get_server_info() - Returns the version of the MaxDB server
  • maxdb_get_server_version() - Returns the version of the MaxDB server as an integer

maxdb_free_result
maxdb_get_client_version
MaxDB Funções


Get MaxDB client info

maxdb_get_client_info
maxdb_get_host_info
MaxDB Funções
PHP Manual

maxdb_get_client_version

(PECL maxdb >= 1.0)

maxdb_get_client_version — Get MaxDB client info

Descrição

int maxdb_get_client_version ( void )

Returns client version number as an integer.

Valor Retornado

A number that represents the MaxDB client library version in format: main_version*10000 + minor_version *100 + sub_version. For example, 7.5.0 is returned as 70500.

This is useful to quickly determine the version of the client library to know if some capability exists.

Exemplos

Exemplo #1 maxdb_get_client_version

<?php

/* We don't need a connection to determine
   the version of MaxDB client library */

printf("Client library version: %d\n", maxdb_get_client_version());
?>

O exemplo acima irá imprimir algo similar a:

Client library version: 7.<...>

Veja Também

  • maxdb_get_client_info() - Returns the MaxDB client version as a string
  • maxdb_get_server_info() - Returns the version of the MaxDB server
  • maxdb_get_server_version() - Returns the version of the MaxDB server as an integer

maxdb_get_client_info
maxdb_get_host_info
MaxDB Funções


Returns a string representing the type of connection used

maxdb_get_client_version
maxdb_get_metadata
MaxDB Funções
PHP Manual

maxdb_get_host_info

maxdb->get_host_info

(PECL maxdb >= 1.0)

maxdb_get_host_info -- maxdb->get_host_info — Returns a string representing the type of connection used

Descrição

Estilo de procedimentos

string maxdb_get_host_info ( resource $link )

Estilo orientado a objetos

string $host_info;

The maxdb_get_host_info() function returns a string describing the connection represented by the link parameter is using.

Valor Retornado

A character string representing the server hostname and the connection type.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print host information */
printf("Host info: %s\n", $maxdb->host_info);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print host information */
printf("Host info: %s\n", maxdb_get_host_info($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Host info: localhost

Veja Também

  • maxdb_get_proto_info() - Returns the version of the MaxDB protocol used

maxdb_get_client_version
maxdb_get_metadata
MaxDB Funções


Sinônimo de maxdb_stmt_result_metadata

maxdb_get_host_info
maxdb_get_proto_info
MaxDB Funções
PHP Manual

maxdb_get_metadata

(PECL maxdb 1.0)

maxdb_get_metadata — Sinônimo de maxdb_stmt_result_metadata()

Descrição

Esta função é um apelido para: maxdb_stmt_result_metadata().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_get_host_info
maxdb_get_proto_info
MaxDB Funções


Returns the version of the MaxDB protocol used

maxdb_get_metadata
maxdb_get_server_info
MaxDB Funções
PHP Manual

maxdb_get_proto_info

maxdb->protocol_version

(PECL maxdb >= 1.0)

maxdb_get_proto_info -- maxdb->protocol_version — Returns the version of the MaxDB protocol used

Descrição

Estilo de procedimentos

int maxdb_get_proto_info ( resource $link )

Estilo orientado a objetos

string $protocol_version;

Returns an integer representing the MaxDB protocol version used by the connection represented by the link parameter.

Valor Retornado

Returns an integer representing the protocol version (constant 10).

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print protocol version */
printf("Protocol version: %d\n", $maxdb->protocol_version);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print protocol version */
printf("Protocol version: %d\n", maxdb_get_proto_info($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Protocol version: 10

Veja Também

  • maxdb_get_host_info() - Returns a string representing the type of connection used

maxdb_get_metadata
maxdb_get_server_info
MaxDB Funções


Returns the version of the MaxDB server

maxdb_get_proto_info
maxdb_get_server_version
MaxDB Funções
PHP Manual

maxdb_get_server_info

maxdb->server_info

(PECL maxdb >= 1.0)

maxdb_get_server_info -- maxdb->server_info — Returns the version of the MaxDB server

Descrição

Estilo de procedimentos

string maxdb_get_server_info ( resource $link )

Estilo orientado a objetos

string $server_info;

Returns a string representing the version of the MaxDB server that the MaxDB extension is connected to (represented by the link parameter).

Valor Retornado

A character string representing the server version.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print server version */
printf("Server version: %s\n", $maxdb->server_info);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print server version */
printf("Server version: %s\n", maxdb_get_server_info($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Server version: Kernel    7<...>

Veja Também

  • maxdb_get_client_info() - Returns the MaxDB client version as a string
  • maxdb_get_client_version() - Get MaxDB client info
  • maxdb_get_server_version() - Returns the version of the MaxDB server as an integer

maxdb_get_proto_info
maxdb_get_server_version
MaxDB Funções


Returns the version of the MaxDB server as an integer

maxdb_get_server_info
maxdb_info
MaxDB Funções
PHP Manual

maxdb_get_server_version

maxdb->server_version

(PECL maxdb >= 1.0)

maxdb_get_server_version -- maxdb->server_version — Returns the version of the MaxDB server as an integer

Descrição

Estilo de procedimentos

int maxdb_get_server_version ( resource $link )

Estilo orientado a objetos

int $server_version;

The maxdb_get_server_version() function returns the version of the server connected to (represented by the link parameter) as an integer.

The form of this version number is main_version * 10000 + minor_version * 100 + sub_version (i.e. version 7.5.0 is 70500).

Valor Retornado

An integer representing the server version.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print server version */
printf("Server version: %d\n", $maxdb->server_version);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* print server version */
printf("Server version: %d\n", maxdb_get_server_version($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Server version: 7<...>

Veja Também

  • maxdb_get_client_info() - Returns the MaxDB client version as a string
  • maxdb_get_client_version() - Get MaxDB client info
  • maxdb_get_server_info() - Returns the version of the MaxDB server

maxdb_get_server_info
maxdb_info
MaxDB Funções


Retrieves information about the most recently executed query

maxdb_get_server_version
maxdb_init
MaxDB Funções
PHP Manual

maxdb_info

maxdb->info

(PECL maxdb >= 1.0)

maxdb_info -- maxdb->info — Retrieves information about the most recently executed query

Descrição

Estilo de procedimentos

string maxdb_info ( resource $link )

Estilo orientado a objetos

string $info;

The maxdb_info() function returns a string providing information about the last query executed. The nature of this string is provided below:

Possible maxdb_info return values
Query type | Example result string
INSERT INTO...SELECT... | Records: 100 Duplicates: 0 Warnings: 0
INSERT INTO...VALUES (...),(...),(...) | Records: 3 Duplicates: 0 Warnings: 0
LOAD DATA INFILE ... | Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
ALTER TABLE ... | Records: 3 Duplicates: 0 Warnings: 0
UPDATE ... | Rows matched: 40 Changed: 40 Warnings: 0

Nota:

Queries which do not fall into one of the above formats are not supported. In these situations, maxdb_info() will return an empty string.

Valor Retornado

A character string representing additional information about the most recently executed query.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.t1 LIKE hotel.city");

/* INSERT INTO .. SELECT */
$maxdb->query("INSERT INTO temp.t1 SELECT * FROM hotel.city");
printf("%s\n", $maxdb->info);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.t1 LIKE hotel.city");

/* INSERT INTO .. SELECT */
maxdb_query($link, "INSERT INTO temp.t1 SELECT * FROM hotel.city");
printf("%s\n", maxdb_info($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Records: 25 Duplicates: 0 Warnings: 0

Veja Também

  • maxdb_affected_rows() - Gets the number of affected rows in a previous MaxDB operation
  • maxdb_warning_count() - Returns the number of warnings from the last query for the given link
  • maxdb_num_rows() - Gets the number of rows in a result

maxdb_get_server_version
maxdb_init
MaxDB Funções


Initializes MaxDB and returns an resource for use with maxdb_real_connect

maxdb_info
maxdb_insert_id
MaxDB Funções
PHP Manual

maxdb_init

(PECL maxdb >= 1.0)

maxdb_init — Initializes MaxDB and returns an resource for use with maxdb_real_connect

Descrição

resource maxdb_init ( void )

Allocates or initializes a MaxDB resource suitable for maxdb_options() and maxdb_real_connect().

Nota:

Any subsequent calls to any maxdb function (except maxdb_options()) will fail until maxdb_real_connect() was called.

Valor Retornado

Returns an resource.

Veja Também

  • maxdb_options() - Set options
  • maxdb_close() - Closes a previously opened database connection
  • maxdb_real_connect() - Opens a connection to a MaxDB server
  • maxdb_connect() - Open a new connection to the MaxDB server

maxdb_info
maxdb_insert_id
MaxDB Funções


Returns the auto generated id used in the last query

maxdb_init
maxdb_kill
MaxDB Funções
PHP Manual

maxdb_insert_id

maxdb->insert_id

(PECL maxdb >= 1.0)

maxdb_insert_id -- maxdb->insert_id — Returns the auto generated id used in the last query

Descrição

Estilo de procedimentos

mixed maxdb_insert_id ( resource $link )

Estilo orientado a objetos

mixed $insert_id;

The maxdb_insert_id() function returns the ID generated by a query on a table with a column having the DEFAULT SERIAL attribute. If the last query wasn't an INSERT or UPDATE statement or if the modified table does not have a column with the DEFAULT SERIAL attribute, this function will return zero.

Valor Retornado

The value of the DEFAULT SERIAL field that was updated by the previous query. Returns zero if there was no previous query on the connection or if the query did not update an DEFAULT_SERIAL value.

Nota:

If the number is greater than maximal int value, maxdb_insert_id() will return a string.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
$maxdb->query("DROP TABLE mycity");
maxdb_report (MAXDB_REPORT_ERROR);

$maxdb->query("CREATE TABLE mycity LIKE hotel.city");
$maxdb->query("ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL");

$query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')";
$maxdb->query($query);

printf ("New Record has id %d.\n", $maxdb->insert_id);

/* drop table */
$maxdb->query("DROP TABLE mycity");

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP TABLE mycity");
maxdb_report (MAXDB_REPORT_ERROR);

maxdb_query($link, "CREATE TABLE mycity LIKE hotel.city");
maxdb_query($link, "ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL");

$query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')";
maxdb_query($link, $query);

printf ("New Record has id %d.\n", maxdb_insert_id($link));

/* drop table */
maxdb_query($link, "DROP TABLE mycity");

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

New Record has id 1.
maxdb_init
maxdb_kill
MaxDB Funções


Disconnects from a MaxDB server

maxdb_insert_id
maxdb_master_query
MaxDB Funções
PHP Manual

maxdb_kill

maxdb::kill

(PECL maxdb >= 1.0)

maxdb_kill -- maxdb::kill — Disconnects from a MaxDB server

Descrição

Estilo de procedimentos

bool maxdb_kill ( resource $link , int $processid )

Estilo orientado a objetos

bool maxdb::kill ( int $processid )

This function is used to disconnect from a MaxDB server specified by the processid parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* determine our thread id */
$thread_id = $maxdb->thread_id;

/* Kill connection */
$maxdb->kill($thread_id);

/* This should produce an error */
if (!$maxdb->query("CREATE TABLE myCity LIKE City")) {
   printf("Error: %s\n", $maxdb->error);
   exit;
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* determine our thread id */
$thread_id = maxdb_thread_id($link);

/* Kill connection */
maxdb_kill($link, $thread_id);

/* This should produce an error */
if (!maxdb_query($link, "CREATE TABLE myCity LIKE City")) {
   printf("Error: %s\n", maxdb_error($link));
   exit;
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Error: Session not connected

Veja Também

  • maxdb_thread_id() - Returns the thread ID for the current connection

maxdb_insert_id
maxdb_master_query
MaxDB Funções


Enforce execution of a query on the master in a master/slave setup

maxdb_kill
maxdb_more_results
MaxDB Funções
PHP Manual

maxdb_master_query

(PECL maxdb >= 1.0)

maxdb_master_query — Enforce execution of a query on the master in a master/slave setup

Descrição

bool maxdb_master_query ( resource $link , string $query )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_kill
maxdb_more_results
MaxDB Funções


Check if there any more query results from a multi query

maxdb_master_query
maxdb_multi_query
MaxDB Funções
PHP Manual

maxdb_more_results

maxdb->more_results

(PECL maxdb >= 1.0)

maxdb_more_results -- maxdb->more_results — Check if there any more query results from a multi query

Descrição

bool maxdb_more_results ( resource $link )

maxdb_more_results() indicates if one or more result sets are available from a previous call to maxdb_multi_query().

Valor Retornado

Always FALSE.

Exemplos

See maxdb_multi_query().

Veja Também

  • maxdb_multi_query() - Performs a query on the database
  • maxdb_next_result() - Prepare next result from multi_query
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_use_result() - Initiate a result set retrieval

maxdb_master_query
maxdb_multi_query
MaxDB Funções


Performs a query on the database

maxdb_more_results
maxdb_next_result
MaxDB Funções
PHP Manual

maxdb_multi_query

maxdb::multi_query

(PECL maxdb >= 1.0)

maxdb_multi_query -- maxdb::multi_query — Performs a query on the database

Descrição

Estilo de procedimentos

bool maxdb_multi_query ( resource $link , string $query )

Estilo orientado a objetos

bool maxdb::multi_query ( string $query )

The maxdb_multi_query() works like the function maxdb_query(). Multiple queries are not yet supported.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query  = "SELECT * FROM dual";

/* execute multi query */
if ($maxdb->multi_query($query)) {
   do {
       /* store first result set */
       if ($result = $maxdb->store_result()) {
           while ($row = $result->fetch_row()) {
               printf("%s\n", $row[0]);
           }
           $result->close();
       }
       /* print divider */
       if ($maxdb->more_results()) {
           printf("-----------------\n");
       }
   } while ($maxdb->next_result());
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT * FROM dual";

/* execute multi query */
if (maxdb_multi_query($link, $query)) {
   do {
       /* store first result set */
       if ($result = maxdb_store_result($link)) {
           while ($row = maxdb_fetch_row($result)) {
               printf("%s\n", $row[0]);
           }
           maxdb_free_result($result);
       }
       /* print divider */
       if (maxdb_more_results($link)) {
           printf("-----------------\n");
       }
   } while (maxdb_next_result($link));
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

a

Veja Também

  • maxdb_use_result() - Initiate a result set retrieval
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_next_result() - Prepare next result from multi_query
  • maxdb_more_results() - Check if there any more query results from a multi query

maxdb_more_results
maxdb_next_result
MaxDB Funções


Prepare next result from multi_query

maxdb_multi_query
maxdb_num_fields
MaxDB Funções
PHP Manual

maxdb_next_result

maxdb->next_result

(PECL maxdb >= 1.0)

maxdb_next_result -- maxdb->next_result — Prepare next result from multi_query

Descrição

bool maxdb_next_result ( resource $link )

Since multiple queries are not yet supported, maxdb_next_result() returns always FALSE.

Valor Retornado

Returns FALSE.

Veja Também

  • maxdb_multi_query() - Performs a query on the database
  • maxdb_more_results() - Check if there any more query results from a multi query
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_use_result() - Initiate a result set retrieval

maxdb_multi_query
maxdb_num_fields
MaxDB Funções


Get the number of fields in a result

maxdb_next_result
maxdb_num_rows
MaxDB Funções
PHP Manual

maxdb_num_fields

maxdb_result->field_count

(PECL maxdb >= 1.0)

maxdb_num_fields -- maxdb_result->field_count — Get the number of fields in a result

Descrição

Estilo de procedimentos

int maxdb_num_fields ( resource $result )

Estilo orientado a objetos

int $field_count;

maxdb_num_fields() returns the number of fields from specified result set.

Valor Retornado

The number of fields from a result set

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = $maxdb->query("SELECT * FROM hotel.city ORDER BY zip")) {

   /* determine number of fields in result set */
   $field_cnt = $result->field_count;

   printf("Result set has %d fields.\n", $field_cnt);

   /* close result set */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = maxdb_query($link, "SELECT * FROM hotel.city ORDER BY zip")) {

   /* determine number of fields in result set */
   $field_cnt = maxdb_num_fields($result);

   printf("Result set has %d fields.\n", $field_cnt);

   /* close result set */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Result set has 3 fields.

Veja Também

  • maxdb_fetch_field() - Returns the next field in the result set

maxdb_next_result
maxdb_num_rows
MaxDB Funções


Gets the number of rows in a result

maxdb_num_fields
maxdb_options
MaxDB Funções
PHP Manual

maxdb_num_rows

maxdb->num_rows

(PECL maxdb >= 1.0)

maxdb_num_rows -- maxdb->num_rows — Gets the number of rows in a result

Descrição

Estilo de procedimentos

int maxdb_num_rows ( resource $result )

Estilo orientado a objetos

int $num_rows;

Returns the number of rows in the result set.

The use of maxdb_num_rows() depends on whether you use buffered or unbuffered result sets. In case you use unbuffered resultsets maxdb_num_rows() will not correct the correct number of rows until all the rows in the result have been retrieved.

Valor Retornado

Returns number of rows in the result set.

Nota:

If the number of rows is greater than maximal int value, the number will be returned as a string.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = $maxdb->query("SELECT cno, name FROM hotel.customer ORDER BY name")) {

   /* determine number of rows result set */
   $row_cnt = $result->num_rows;

   printf("Result set has %d rows.\n", $row_cnt);

   /* close result set */
   $result->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($result = maxdb_query($link, "SELECT cno, name FROM hotel.customer ORDER BY name")) {

   /* determine number of rows result set */
   $row_cnt = maxdb_num_rows($result);

   printf("Result set has %d rows.\n", $row_cnt);

   /* close result set */
   maxdb_free_result($result);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Result set has 15 rows.

Veja Também

  • maxdb_affected_rows() - Gets the number of affected rows in a previous MaxDB operation
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_use_result() - Initiate a result set retrieval
  • maxdb_query() - Performs a query on the database

maxdb_num_fields
maxdb_options
MaxDB Funções


Set options

maxdb_num_rows
maxdb_param_count
MaxDB Funções
PHP Manual

maxdb_options

maxdb::options

(PECL maxdb >= 1.0)

maxdb_options -- maxdb::options — Set options

Descrição

Estilo de procedimentos

bool maxdb_options ( resource $link , int $option , mixed $value )

Estilo orientado a objetos

bool maxdb::options ( int $option , mixed $value )

maxdb_options() can be used to set extra connect options and affect behavior for a connection.

This function may be called multiple times to set several options.

maxdb_options() should be called after maxdb_init() and before maxdb_real_connect().

The parameter option is the option that you want to set, the value is the value for the option. For detailed description of the options see » http://maxdb.sap.com/documentation/ The parameter option can be one of the following values:

Valid options
Name | Description
MAXDB_COMPNAME | The component name used to initialise the SQLDBC runtime environment.
MAXDB_APPLICATION | The application to be connected to the database.
MAXDB_APPVERSION | The version of the application.
MAXDB_SQLMODE | The SQL mode.
MAXDB_UNICODE | TRUE, if the connection is an unicode (UCS2) client or FALSE, if not.
MAXDB_TIMEOUT | The maximum allowed time of inactivity after which the connection to the database is closed by the system.
MAXDB_ISOLATIONLEVEL | Specifies whether and how shared locks and exclusive locks are implicitly requested or released.
MAXDB_PACKETCOUNT | The number of different request packets used for the connection.
MAXDB_STATEMENTCACHESIZE | The number of prepared statements to be cached for the connection for re-use.
MAXDB_CURSORPREFIX | The prefix to use for result tables that are automatically named.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

See maxdb_real_connect().

Veja Também

  • maxdb_init() - Initializes MaxDB and returns an resource for use with maxdb_real_connect
  • maxdb_real_connect() - Opens a connection to a MaxDB server

maxdb_num_rows
maxdb_param_count
MaxDB Funções


Sinônimo de maxdb_stmt_param_count

maxdb_options
maxdb_ping
MaxDB Funções
PHP Manual

maxdb_param_count

(PECL maxdb 1.0)

maxdb_param_count — Sinônimo de maxdb_stmt_param_count()

Descrição

Esta função é um apelido para: maxdb_stmt_param_count().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_options
maxdb_ping
MaxDB Funções


Pings a server connection, or tries to reconnect if the connection has gone down

maxdb_param_count
maxdb_prepare
MaxDB Funções
PHP Manual

maxdb_ping

maxdb::ping

(PECL maxdb >= 1.0)

maxdb_ping -- maxdb::ping — Pings a server connection, or tries to reconnect if the connection has gone down

Descrição

Estilo de procedimentos

bool maxdb_ping ( resource $link )

Estilo orientado a objetos

bool maxdb::ping ( void )

Checks whether the connection to the server is working. If it has gone down, and global option maxdb.reconnect is enabled an automatic reconnection is attempted.

This function can be used by clients that remain idle for a long while, to check whether the server has closed the connection and reconnect if necessary.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* check if server is alive */
if ($maxdb->ping()) {
   printf ("Our connection is ok!\n");
} else {
   printf ("Error: %s\n", $maxdb->error);
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* check if server is alive */
if (maxdb_ping($link)) {
   printf ("Our connection is ok!\n");
} else {
   printf ("Error: %s\n", maxdb_error($link));
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Our connection is ok!
maxdb_param_count
maxdb_prepare
MaxDB Funções


Prepare an SQL statement for execution

maxdb_ping
maxdb_query
MaxDB Funções
PHP Manual

maxdb_prepare

maxdb::prepare

(PECL maxdb >= 1.0)

maxdb_prepare -- maxdb::prepare — Prepare an SQL statement for execution

Descrição

Estilo de procedimentos

resource maxdb_prepare ( resource $link , string $query )

Estilo orientado a objetos

maxdb_stmt maxdb::prepare ( string $query )

maxdb_prepare() prepares the SQL query pointed to by the null-terminated string query, and returns a statement handle to be used for further operations on the statement. The query must consist of a single SQL statement.

Nota:

You should not add a terminating semicolon or \g to the statement.

The parameter query can include one or more parameter markers in the SQL statement by embedding question mark (?) characters at the appropriate positions.

Nota:

The markers are legal only in certain places in SQL statements. For example, they are allowed in the VALUES() list of an INSERT statement (to specify column values for a row), or in a comparison with a column in a WHERE clause to specify a comparison value.

However, they are not allowed for identifiers (such as table or column names), in the select list that names the columns to be returned by a SELECT statement), or to specify both operands of a binary operator such as the = equal sign. The latter restriction is necessary because it would be impossible to determine the parameter type. In general, parameters are legal only in Data Manipulation Languange (DML) statements, and not in Data Defination Language (DDL) statements.

The parameter markers must be bound to application variables using maxdb_stmt_bind_param() and/or maxdb_stmt_bind_result() before executing the statement or fetching rows.

Valor Retornado

maxdb_prepare() returns a statement resource or FALSE if an error occured.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$city = "Rosemont";

/* create a prepared statement */
if ($stmt = $maxdb->prepare("SELECT state FROM hotel.city WHERE name=?")) {

   /* bind parameters for markers */
   $stmt->bind_param("s", $city);

   /* execute query */
   $stmt->execute();

   /* bind result variables */
   $stmt->bind_result($district);

   /* fetch value */
   $stmt->fetch();

   printf("%s is in district %s\n", $city, $district);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$city = "Rosemont";

/* create a prepared statement */
if ($stmt = maxdb_prepare($link, "SELECT state FROM hotel.city WHERE name=?")) {

   /* bind parameters for markers */
   maxdb_stmt_bind_param($stmt, "s", $city);

   /* execute query */
   maxdb_stmt_execute($stmt);

  /* bind result variables */
   maxdb_stmt_bind_result($stmt, $district);

   /* fetch value */
   maxdb_stmt_fetch($stmt);

   printf("%s is in district %s\n", $city, $district);

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Rosemont is in district IL

Veja Também

  • maxdb_stmt_execute() - Executes a prepared Query
  • maxdb_stmt_fetch() - Fetch results from a prepared statement into the bound variables
  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters
  • maxdb_stmt_bind_result() - Binds variables to a prepared statement for result storage
  • maxdb_stmt_close() - Closes a prepared statement

maxdb_ping
maxdb_query
MaxDB Funções


Performs a query on the database

maxdb_prepare
maxdb_real_connect
MaxDB Funções
PHP Manual

maxdb_query

maxdb::query

(PECL maxdb >= 1.0)

maxdb_query -- maxdb::query — Performs a query on the database

Descrição

Estilo de procedimentos

mixed maxdb_query ( resource $link , string $query [, int $resultmode ] )

Estilo orientado a objetos

mixed maxdb::query ( string $query )

The maxdb_query() function is used to simplify the act of performing a query against the database represented by the link parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. For SELECT, SHOW, DESCRIBE or EXPLAIN maxdb_query() will return a result resource.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Create table doesn't return a resultset */
if ($maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city") === TRUE) {
   printf("Table mycity successfully created.\n");
}

/* Select queries return a resultset */
if ($result = $maxdb->query("SELECT name FROM hotel.city")) {
   printf("Select returned %d rows.\n", $result->num_rows);

   /* free result set */
   $result->close();
}

/* If we have to retrieve large amount of data we use MAXDB_USE_RESULT */
if ($result = $maxdb->query("SELECT * FROM hotel.city", MAXDB_USE_RESULT)) {
   $result->close();
}

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Create table doesn't return a resultset */
if (maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city") === TRUE) {
   printf("Table mycity successfully created.\n");
}

/* Select queries return a resultset */
if ($result = maxdb_query($link, "SELECT name FROM hotel.city")) {
   printf("Select returned %d rows.\n", maxdb_num_rows($result));

   /* free result set */
   maxdb_free_result($result);
}

/* If we have to retrieve large amount of data we use MAXDB_USE_RESULT */
if ($result = maxdb_query($link, "SELECT * FROM hotel.city", MAXDB_USE_RESULT)) {
   maxdb_free_result($result);
}

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Table mycity successfully created.
Select returned 25 rows.

Veja Também

  • maxdb_real_query() - Execute an SQL query
  • maxdb_multi_query() - Performs a query on the database
  • maxdb_free_result() - Frees the memory associated with a result

maxdb_prepare
maxdb_real_connect
MaxDB Funções


Opens a connection to a MaxDB server

maxdb_query
maxdb_real_escape_string
MaxDB Funções
PHP Manual

maxdb_real_connect

maxdb::real_connect

(PECL maxdb >= 1.0)

maxdb_real_connect -- maxdb::real_connect — Opens a connection to a MaxDB server

Descrição

Estilo de procedimentos

bool maxdb_real_connect ( resource $link [, string $hostname [, string $username [, string $passwd [, string $dbname [, int $port = 0 [, string $socket ]]]]]] )

Estilo orientado a objetos

bool maxdb::real_connect ([ string $hostname [, string $username [, string $passwd [, string $dbname [, int $port = 0 [, string $socket ]]]]]] )

maxdb_real_connect() attempts to establish a connection to a MaxDB database engine running on hostname.

This function differs from maxdb_connect():

  • maxdb_real_connect() needs a valid resource which has to be created by function maxdb_init()

  • With function maxdb_options() you can set various options for connection.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php

/* create a connection object which is not connected */
$maxdb = maxdb_init();

/* set connection options */
$maxdb->options(MAXDB_UNICODE, "FALSE");
$maxdb->options(MAXDB_TIMEOUT, 5);

/* connect to server */
$maxdb->real_connect('localhost', 'MONA', 'RED', 'DEMODB');

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf ("Connection: %s\n.", $maxdb->host_info);

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php

/* create a connection object which is not connected */
$link = maxdb_init();

/* set connection options */
maxdb_options($link, MAXDB_UNICODE, "FALSE");
maxdb_options($link, MAXDB_TIMEOUT, 5);

/* connect to server */
maxdb_real_connect($link, 'localhost', 'MONA', 'RED', 'DEMODB');

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf ("Connection: %s\n.", maxdb_get_host_info($link));

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Connection: localhost <...>

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_init() - Initializes MaxDB and returns an resource for use with maxdb_real_connect
  • maxdb_options() - Set options
  • maxdb_ssl_set() - Used for establishing secure connections using SSL
  • maxdb_close() - Closes a previously opened database connection

maxdb_query
maxdb_real_escape_string
MaxDB Funções


Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

maxdb_real_connect
maxdb_real_query
MaxDB Funções
PHP Manual

maxdb_real_escape_string

maxdb::real_escape_string

(PECL maxdb >= 1.0)

maxdb_real_escape_string -- maxdb::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

Descrição

Estilo de procedimentos

string maxdb_real_escape_string ( resource $link , string $escapestr )

Estilo orientado a objetos

string maxdb::real_escape_sring ( string $escapestr )

This function is used to create a legal SQL string that you can use in an SQL statement. The string escapestr is encoded to an escaped SQL string, taking into account the current character set of the connection.

Characters encoded are ', ".

Valor Retornado

Returns an escaped string.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");

$city = "'s Hertogenbosch";

/* this query will fail, cause we didn't escape $city */
if (!$maxdb->query("INSERT into temp.mycity VALUES ('11111','$city','NY')")) {
   printf("Error: %s\n", $maxdb->sqlstate);
}

$city = $maxdb->real_escape_string($city);

/* this query with escaped $city will work */
if ($maxdb->query("INSERT into temp.mycity VALUES ('22222','$city','NY')")) {
   printf("%d Row inserted.\n", $maxdb->affected_rows);
}

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");

$city = "'s Hertogenbosch";

/* this query will fail, cause we didn't escape $city */
if (!maxdb_query($link, "INSERT into temp.mycity VALUES ('11111','$city','NY')")) {
   printf("Error: %s\n", maxdb_sqlstate($link));
}

$city = maxdb_real_escape_string($link, $city);

/* this query with escaped $city will work */
if (maxdb_query($link, "INSERT into temp.mycity VALUES ('22222','$city','NY')")) {
   printf("%d Row inserted.\n", maxdb_affected_rows($link));
}

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_query(): -5016 POS(43) Missing delimiter: ) <...>
Error: 42000
1 Row inserted.

Veja Também

  • maxdb_character_set_name() - Returns the default character set for the database connection

maxdb_real_connect
maxdb_real_query
MaxDB Funções


Execute an SQL query

maxdb_real_escape_string
maxdb_report
MaxDB Funções
PHP Manual

maxdb_real_query

maxdb::real_query

(PECL maxdb >= 1.0)

maxdb_real_query -- maxdb::real_query — Execute an SQL query

Descrição

Estilo de procedimentos

bool maxdb_real_query ( resource $link , string $query )

Estilo orientado a objetos

bool maxdb::real_query ( string $query )

The maxdb_real_query() is functionally identical with the maxdb_query().

Nota:

In order to determine if a given query should return a result set or not, see maxdb_field_count().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • maxdb_query() - Performs a query on the database
  • maxdb_store_result() - Transfers a result set from the last query
  • maxdb_use_result() - Initiate a result set retrieval

maxdb_real_escape_string
maxdb_report
MaxDB Funções


Enables or disables internal report functions

maxdb_real_query
maxdb_rollback
MaxDB Funções
PHP Manual

maxdb_report

(PECL maxdb 1.0)

maxdb_report — Enables or disables internal report functions

Descrição

bool maxdb_report ( int $flags )

Parâmetros

flags

One of the MAXDB_REPORT_XXX constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural style

<?php
/* activate reporting */
maxdb_report(MAXDB_REPORT_ERROR);

$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* this query should report an error */
$result = maxdb_query($link,"SELECT Name FROM Nonexistingtable WHERE population > 50000");

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_query(): -4004 POS(18) Unknown table name:NONEXISTINGTABLE <...>
maxdb_real_query
maxdb_rollback
MaxDB Funções


Rolls back current transaction

maxdb_report
maxdb_rpl_parse_enabled
MaxDB Funções
PHP Manual

maxdb_rollback

maxdb::rollback

(PECL maxdb >= 1.0)

maxdb_rollback -- maxdb::rollback — Rolls back current transaction

Descrição

Estilo de procedimentos

bool maxdb_rollback ( resource $link )

Estilo orientado a objetos

bool maxdb::rollback ( void )

Rollbacks the current transaction for the database specified by the link parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* disable autocommit */
$maxdb->autocommit(FALSE);

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");

/* commit insert */
$maxdb->commit();

/* delete all rows */
$maxdb->query("DELETE FROM temp.mycity");

if ($result = $maxdb->query("SELECT COUNT(*) FROM temp.mycity")) {
   $row = $result->fetch_row();
   printf("%d rows in table mycity.\n", $row[0]);
   /* Free result */
   $result->close();
}

/* Rollback */
$maxdb->rollback();

if ($result = $maxdb->query("SELECT COUNT(*) FROM temp.mycity")) {
   $row = $result->fetch_row();
   printf("%d rows in table mycity (after rollback).\n", $row[0]);
   /* Free result */
   $result->close();
}

/* Drop table myCity */
$maxdb->query("DROP TABLE temp.mycity");

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* disable autocommit */
maxdb_autocommit($link, FALSE);

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

/* commit insert */
maxdb_commit($link);

/* delete all rows */
maxdb_query($link, "DELETE FROM temp.mycity");

if ($result = maxdb_query($link, "SELECT COUNT(*) FROM temp.mycity")) {
   $row = maxdb_fetch_row($result);
   printf("%d rows in table mycity.\n", $row[0]);
   /* Free result */
   maxdb_free_result($result);
}

/* Rollback */
maxdb_rollback($link);

if ($result = maxdb_query($link, "SELECT COUNT(*) FROM temp.mycity")) {
   $row = maxdb_fetch_row($result);
   printf("%d rows in table mycity (after rollback).\n", $row[0]);
   /* Free result */
   maxdb_free_result($result);
}

/* Drop table myCity */
maxdb_query($link, "DROP TABLE temp.mycity");

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

0 rows in table mycity.
25 rows in table mycity (after rollback).

Veja Também

  • maxdb_commit() - Commits the current transaction
  • maxdb_autocommit() - Turns on or off auto-commiting database modifications

maxdb_report
maxdb_rpl_parse_enabled
MaxDB Funções


Check if RPL parse is enabled

maxdb_rollback
maxdb_rpl_probe
MaxDB Funções
PHP Manual

maxdb_rpl_parse_enabled

(PECL maxdb >= 1.0)

maxdb_rpl_parse_enabled — Check if RPL parse is enabled

Descrição

int maxdb_rpl_parse_enabled ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_rollback
maxdb_rpl_probe
MaxDB Funções


RPL probe

maxdb_rpl_parse_enabled
maxdb_rpl_query_type
MaxDB Funções
PHP Manual

maxdb_rpl_probe

(PECL maxdb >= 1.0)

maxdb_rpl_probe — RPL probe

Descrição

bool maxdb_rpl_probe ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_rpl_parse_enabled
maxdb_rpl_query_type
MaxDB Funções


Returns RPL query type

maxdb_rpl_probe
maxdb_select_db
MaxDB Funções
PHP Manual

maxdb_rpl_query_type

maxdb::rpl_query_type

(PECL maxdb >= 1.0)

maxdb_rpl_query_type -- maxdb::rpl_query_type — Returns RPL query type

Descrição

Estilo de procedimentos

int maxdb_rpl_query_type ( resource $link )

Estilo orientado a objetos

int maxdb::rpl_query_type ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_rpl_probe
maxdb_select_db
MaxDB Funções


Selects the default database for database queries

maxdb_rpl_query_type
maxdb_send_long_data
MaxDB Funções
PHP Manual

maxdb_select_db

maxdb->select_db

(PECL maxdb >= 1.0)

maxdb_select_db -- maxdb->select_db — Selects the default database for database queries

Descrição

bool maxdb_select_db ( resource $link , string $dbname )

The maxdb_select_db() function selects the default database (specified by the dbname parameter) to be used when performing queries against the database connection represented by the link parameter.

Nota:

This function should only be used to change the default database for the connection. You can select the default database with 4th parameter in maxdb_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* return name of current default database */
if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
   $row = $result->fetch_row();
   printf("Default database is %s.\n", $row[0]);
   $result->close();
}

/* change db to non existing db */
$maxdb->select_db("XXXXXXXX");

/* return name of current default database */
if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
   $row = $result->fetch_row();
   printf("Default database is %s.\n", $row[0]);
   $result->close();
}

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* return name of current default database */
if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
   $row = maxdb_fetch_row($result);
   printf("Default database is %s.\n", $row[0]);
   maxdb_free_result($result);
}

/* change db to non existing db */
maxdb_select_db($link, "XXXXXXXX");

/* return name of current default database */
if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
   $row = maxdb_fetch_row($result);
   printf("Default database is %s.\n", $row[0]);
   maxdb_free_result($result);
}

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Default database is <...>.

Warning: maxdb_select_db(): -10709 Connection failed (RTE:database not running) <...>

Warning: maxdb_query(): -10821 Session not connected [] <...>

Warning: maxdb_close(): -10821 Session not connected [] <...>

Veja Também

  • maxdb_connect() - Open a new connection to the MaxDB server
  • maxdb_real_connect() - Opens a connection to a MaxDB server

maxdb_rpl_query_type
maxdb_send_long_data
MaxDB Funções


Sinônimo de maxdb_stmt_send_long_data

maxdb_select_db
maxdb_send_query
MaxDB Funções
PHP Manual

maxdb_send_long_data

(PECL maxdb >= 1.0)

maxdb_send_long_data — Sinônimo de maxdb_stmt_send_long_data()

Descrição

Esta função é um apelido para: maxdb_stmt_send_long_data().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

maxdb_select_db
maxdb_send_query
MaxDB Funções


Send the query and return

maxdb_send_long_data
maxdb_server_end
MaxDB Funções
PHP Manual

maxdb_send_query

maxdb::send_query

(PECL maxdb >= 1.0)

maxdb_send_query -- maxdb::send_query — Send the query and return

Descrição

Estilo de procedimentos

bool maxdb_send_query ( resource $link , string $query )

Estilo orientado a objetos

bool maxdb::send_query ( string $query )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_send_long_data
maxdb_server_end
MaxDB Funções


Shut down the embedded server

maxdb_send_query
maxdb_server_init
MaxDB Funções
PHP Manual

maxdb_server_end

(PECL maxdb >= 1.0)

maxdb_server_end — Shut down the embedded server

Descrição

void maxdb_server_end ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_send_query
maxdb_server_init
MaxDB Funções


Initialize embedded server

maxdb_server_end
maxdb_set_opt
MaxDB Funções
PHP Manual

maxdb_server_init

(PECL maxdb >= 1.0)

maxdb_server_init — Initialize embedded server

Descrição

bool maxdb_server_init ([ array $server [, array $groups ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_server_end
maxdb_set_opt
MaxDB Funções


Sinônimo de maxdb_options

maxdb_server_init
maxdb_sqlstate
MaxDB Funções
PHP Manual

maxdb_set_opt

(PECL maxdb 1.0)

maxdb_set_opt — Sinônimo de maxdb_options()

Descrição

Esta função é um apelido para: maxdb_options().

maxdb_server_init
maxdb_sqlstate
MaxDB Funções


Returns the SQLSTATE error from previous MaxDB operation

maxdb_set_opt
maxdb_ssl_set
MaxDB Funções
PHP Manual

maxdb_sqlstate

maxdb->sqlstate

(PECL maxdb >= 1.0)

maxdb_sqlstate -- maxdb->sqlstate — Returns the SQLSTATE error from previous MaxDB operation

Descrição

Estilo de procedimentos

string maxdb_sqlstate ( resource $link )

Estilo orientado a objetos

string $sqlstate;

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error. The values are specified by ANSI SQL and ODBC.

Nota:

Note that not all MaxDB errors are yet mapped to SQLSTATE's. The value HY000 (general error) is used for unmapped errors.

Valor Retornado

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Table City already exists, so we should get an error */
if (!$maxdb->query("CREATE TABLE hotel.city (ID INT, Name VARCHAR(30))")) {
   printf("Error - SQLSTATE %s.\n", $maxdb->sqlstate);
}

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Table City already exists, so we should get an error */
if (!maxdb_query($link, "CREATE TABLE hotel.city (ID INT, Name VARCHAR(30))")) {
   printf("Error - SQLSTATE %s.\n", maxdb_sqlstate($link));
}

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_query(): -6000 POS(20) Duplicate table name:CITY [I6000] <...>
Error - SQLSTATE I6000.

Veja Também

  • maxdb_errno() - Returns the error code for the most recent function call
  • maxdb_error() - Returns a string description of the last error

maxdb_set_opt
maxdb_ssl_set
MaxDB Funções


Used for establishing secure connections using SSL

maxdb_sqlstate
maxdb_stat
MaxDB Funções
PHP Manual

maxdb_ssl_set

maxdb::ssl_set

(PECL maxdb >= 1.0)

maxdb_ssl_set -- maxdb::ssl_set — Used for establishing secure connections using SSL

Descrição

Estilo de procedimentos

bool maxdb_ssl_set ( resource $link , string $key , string $cert , string $ca , string $capath , string $cipher )

Estilo orientado a objetos

bool maxdb::ssl_set ( string $key , string $cert , string $ca , string $capath , string $cipher )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_sqlstate
maxdb_stat
MaxDB Funções


Gets the current system status

maxdb_ssl_set
maxdb_stmt_affected_rows
MaxDB Funções
PHP Manual

maxdb_stat

maxdb::stat

(PECL maxdb >= 1.0)

maxdb_stat -- maxdb::stat — Gets the current system status

Descrição

Estilo de procedimentos

string maxdb_stat ( resource $link )

Estilo orientado a objetos

string maxdb::stat ( void )

maxdb_stat() returns a string containing several information about the MaxDB server running.

Valor Retornado

A string describing the server status. FALSE if an error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf ("System status: %s\n", $maxdb->stat());

$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

printf("System status: %s\n", maxdb_stat($link));

maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

System status: Kernel    7<...>

Veja Também

  • maxdb_get_server_info() - Returns the version of the MaxDB server

maxdb_ssl_set
maxdb_stmt_affected_rows
MaxDB Funções


Returns the total number of rows changed, deleted, or inserted by the last executed statement

maxdb_stat
maxdb_stmt_bind_param
MaxDB Funções
PHP Manual

maxdb_stmt_affected_rows

maxdb_stmt->affected_rows

(PECL maxdb >= 1.0)

maxdb_stmt_affected_rows -- maxdb_stmt->affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement

Descrição

Estilo de procedimentos

int maxdb_stmt_affected_rows ( resource $stmt )

Estilo orientado a objetos

int $affected_rows;

maxdb_stmt_affected_rows() returns the number of rows affected by INSERT, UPDATE, or DELETE query. If the last query was invalid or the number of rows can not determined, this function will return -1.

Valor Retornado

An integer greater than zero indicates the number of rows affected or retrieved. Zero indicates that no records where updated for an UPDATE/DELETE statement, no rows matched the WHERE clause in the query or that no query has yet been executed. -1 indicates that the query has returned an error or the number of rows can not determined.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* create temp table */
$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");

$query = "INSERT INTO temp.mycity SELECT * FROM hotel.city WHERE state LIKE ?";

/* prepare statement */
if ($stmt = $maxdb->prepare($query)) {

   /* Bind variable for placeholder */
   $code = 'N%';
   $stmt->bind_param("s", $code);

   /* execute statement */
   $stmt->execute();

   printf("rows inserted: %d\n", $stmt->affected_rows);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* create temp table */
maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");

$query = "INSERT INTO temp.mycity SELECT * FROM hotel.city WHERE state LIKE ?";

/* prepare statement */
if ($stmt = maxdb_prepare($link, $query)) {

   /* Bind variable for placeholder */
   $code = 'N%';
   maxdb_stmt_bind_param($stmt, "s", $code);

   /* execute statement */
   maxdb_stmt_execute($stmt);

   printf("rows inserted: %d\n", maxdb_stmt_affected_rows($stmt));

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

rows inserted: 4

Veja Também

  • maxdb_stmt_num_rows() - Return the number of rows in statements result set
  • maxdb_prepare() - Prepare an SQL statement for execution

maxdb_stat
maxdb_stmt_bind_param
MaxDB Funções


Binds variables to a prepared statement as parameters

maxdb_stmt_affected_rows
maxdb_stmt_bind_result
MaxDB Funções
PHP Manual

maxdb_stmt_bind_param

maxdb_stmt::bind_param

(PECL maxdb >= 1.0)

maxdb_stmt_bind_param -- maxdb_stmt::bind_param — Binds variables to a prepared statement as parameters

Descrição

Estilo de procedimentos

bool maxdb_stmt_bind_param ( resource $stmt , string $types , mixed &$var1 [, mixed &$... ] )

Estilo orientado a objetos

bool maxdb_stmt::bind_param ( string $types , mixed &$var1 [, mixed &$... ] )

Estilo de procedimentos (extended syntax):

bool maxdb_stmt_bind_param ( resource $stmt , string $types , array &$var )

Estilo orientado a objetos (extended syntax):

bool maxdb_stmt::bind_param ( string $types , array &$var )

maxdb_stmt_bind_param() is used to bind variables for the parameter markers in the SQL statement that was passed to maxdb_prepare(). The string types contains one or more characters which specify the types for the corresponding bind variables.

The extended syntax of maxdb_stmt_bind_param() allows to give the parameters as an array instead of a variable list of PHP variables to the function. If the array variable has not been used before calling maxdb_stmt_bind_param(), it has to be initialized as an emtpy array. See the examples how to use maxdb_stmt_bind_param() with extended syntax.

Variables for SELECT INTO SQL statements can also be bound using maxdb_stmt_bind_param(). Parameters for database procedures can be bound using maxdb_stmt_bind_param(). See the examples how to use maxdb_stmt_bind_param() in this cases.

If a variable bound as INTO variable to an SQL statement was used before, the content of this variable is overwritten by the data of the SELECT INTO statement. A reference to this variable will be invalid after a call to maxdb_stmt_bind_param().

For INOUT parameters of database procedures the content of the bound INOUT variable is overwritten by the output value of the database procedure. A reference to this variable will be invalid after a call to maxdb_stmt_bind_param().

Type specification chars
Character | Description
i | corresponding variable has type integer
d | corresponding variable has type double
s | corresponding variable has type string
b | corresponding variable is a blob and will be sent in packages

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb('localhost', 'MONA', 'RED', 'DEMODB');

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query ("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query ("INSERT INTO temp.mycity SELECT * FROM hotel.city");

$stmt = $maxdb->prepare("INSERT INTO temp.mycity VALUES (?, ?, ?)");
$stmt->bind_param('sss', $zip, $name, $state);

$zip = '11111';
$name = 'Georgetown';
$state = 'NY';

/* execute prepared statement */
$stmt->execute();

printf("%d Row inserted.\n", $stmt->affected_rows);

/* close statement and connection */
$stmt->close();

/* Clean up table CountryLanguage */
$maxdb->query("DELETE FROM temp.mycity WHERE name='Georgetown'");
printf("%d Row deleted.\n", $maxdb->affected_rows);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query ($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query ($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

$stmt = maxdb_prepare($link, "INSERT INTO temp.mycity VALUES (?, ?, ?)");
maxdb_stmt_bind_param($stmt, 'sss', $zip, $name, $state);

$zip = '11111';
$name = 'Georgetown';
$state = 'NY';

/* execute prepared statement */
maxdb_stmt_execute($stmt);

printf("%d Row inserted.\n", maxdb_stmt_affected_rows($stmt));

/* close statement and connection */
maxdb_stmt_close($stmt);

/* Clean up table CountryLanguage */
maxdb_query($link, "DELETE FROM temp.mycity WHERE name='Georgetown'");
printf("%d Row deleted.\n", maxdb_affected_rows($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

1 Row inserted.
1 Row deleted.

Exemplo #3 Procedural style (SELECT INTO)

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* Performing SQL query */
$stmt = maxdb_prepare ($link, "SELECT price INTO ? FROM hotel.room where hno = ? and type = ?");
if (!$stmt) {
  printf ("Prepare failed: %s\n", maxdb_error($link));
}

$hno = "50";
$rtype = "suite";

maxdb_stmt_bind_param($stmt, 'dss', $price, $hno, $rtype);
maxdb_stmt_execute($stmt);

printf ("%f\n", $price);

maxdb_stmt_close ($stmt);
?>

O exemplo acima irá imprimir algo similar a:

21.600000

Exemplo #4 Procedural style (DB procedure)

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP DBPROC test_proc");
maxdb_report (MAXDB_REPORT_ERROR);

$query = "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;";

maxdb_query($link, $query);

/* Performing SQL query */
$stmt = maxdb_prepare ($link, "CALL test_proc (?)");
if (!$stmt) {
  printf ("Prepare failed: %s\n", maxdb_error($link));
}

maxdb_stmt_bind_param($stmt, 's', $result);
maxdb_stmt_execute($stmt);

printf ("%s\n", $result);

maxdb_stmt_close ($stmt);
?>

O exemplo acima irá imprimir algo similar a:

a

Exemplo #5 Object oriented style (extended syntax)

<?php
$maxdb = new maxdb('localhost', 'MONA', 'RED', 'DEMODB');

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query ("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query ("INSERT INTO temp.mycity SELECT * FROM hotel.city");

$stmt = $maxdb->prepare("INSERT INTO temp.mycity VALUES (?, ?, ?)");

$arr = array();

$stmt->bind_param('iss', $arr);

$arr[0] = 11111;
$arr[1] = 'Georgetown';
$arr[2] = 'NY';

/* execute prepared statement */
$stmt->execute();

printf("%d Row inserted.\n", maxdb_stmt_affected_rows($stmt));

$arr[0] = 22222;
$arr[1] = 'New Orleans';
$arr[2] = 'LA';

/* execute prepared statement */
$stmt->execute();

printf("%d Row inserted.\n", $stmt->affected_rows);

/* close statement and connection */
$stmt->close();

$result = $maxdb->query("SELECT * from temp.mycity WHERE zip = '11111' OR zip = '22222'");
if ($result) {
  while ($row = $result->fetch_row()) {
    printf ("%s %s %s\n", $row[0], $row[1], $row[2]);
  }
}

/* Clean up table CountryLanguage */
$maxdb->query("DELETE FROM temp.mycity WHERE name='Georgetown'");
$maxdb->query("DELETE FROM temp.mycity WHERE name='New Orleans'");
printf("%d Rows deleted.\n", $maxdb->affected_rows);

/* close connection */
$maxdb->close();
?>

O exemplo acima irá imprimir algo similar a:

1 Row inserted.
1 Row inserted.
11111 Georgetown NY
22222 New Orleans LA
2 Rows deleted.

Veja Também

  • maxdb_stmt_bind_result() - Binds variables to a prepared statement for result storage
  • maxdb_stmt_execute() - Executes a prepared Query
  • maxdb_stmt_fetch() - Fetch results from a prepared statement into the bound variables
  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_send_long_data() - Send data in blocks
  • maxdb_stmt_errno() - Returns the error code for the most recent statement call
  • maxdb_stmt_error() - Returns a string description for last statement error

maxdb_stmt_affected_rows
maxdb_stmt_bind_result
MaxDB Funções


Binds variables to a prepared statement for result storage

maxdb_stmt_bind_param
maxdb_stmt_close_long_data
MaxDB Funções
PHP Manual

maxdb_stmt_bind_result

maxdb_stmt::bind_result

(PECL maxdb >= 1.0)

maxdb_stmt_bind_result -- maxdb_stmt::bind_result — Binds variables to a prepared statement for result storage

Descrição

Estilo de procedimentos

bool maxdb_stmt_bind_result ( resource $stmt , mixed &$var1 [, mixed &$... ] )

Estilo orientado a objetos

bool maxdb_stmt::bind_result ( mixed &$var1 [, mixed &$... ] )

maxdb_stmt_bind_result() is used to associate (bind) columns in the result set to variables. When maxdb_stmt_fetch() is called to fetch data, the MaxDB client/server protocol places the data for the bound columns into the specified variables var1, ....

Nota:

Note that all columns must be bound prior to calling maxdb_stmt_fetch(). Depending on column types bound variables can silently change to the corresponding PHP type.

A column can be bound or rebound at any time, even after a result set has been partially retrieved. The new binding takes effect the next time maxdb_stmt_fetch() is called.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* prepare statement */
if ($stmt = $maxdb->prepare("SELECT zip, name FROM hotel.city ORDER BY name")) {
   $stmt->execute();

   /* bind variables to prepared statement */
   $stmt->bind_result($col1, $col2);

   /* fetch values */
   while ($stmt->fetch()) {
       printf("%s %s\n", $col1, $col2);
   }

   /* close statement */
   $stmt->close();
}
/* close connection */
$maxdb->close();

?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (!$link) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* prepare statement */
if ($stmt = maxdb_prepare($link, "SELECT zip, name FROM hotel.city ORDER BY name")) {
   maxdb_stmt_execute($stmt);

   /* bind variables to prepared statement */
   maxdb_stmt_bind_result($stmt, $col1, $col2);

   /* fetch values */
   while (maxdb_stmt_fetch($stmt)) {
       printf("%s %s\n", $col1, $col2);
   }

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

12203 Albany
60601 Chicago
60615 Chicago
45211 Cincinnati
33575 Clearwater
75243 Dallas
32018 Daytona Beach
33441 Deerfield Beach
48226 Detroit
90029 Hollywood
92714 Irvine
90804 Long Beach
11788 Long Island
90018 Los Angeles
70112 New Orleans
10019 New York
10580 New York
92262 Palm Springs
97213 Portland
60018 Rosemont
95054 Santa Clara
20903 Silver Spring
20005 Washington
20019 Washington
20037 Washington

Veja Também

  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters
  • maxdb_stmt_execute() - Executes a prepared Query
  • maxdb_stmt_fetch() - Fetch results from a prepared statement into the bound variables
  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_init() - Initializes a statement and returns an resource for use with maxdb_stmt_prepare
  • maxdb_stmt_errno() - Returns the error code for the most recent statement call
  • maxdb_stmt_error() - Returns a string description for last statement error

maxdb_stmt_bind_param
maxdb_stmt_close_long_data
MaxDB Funções


Ends a sequence of maxdb_stmt_send_long_data

maxdb_stmt_bind_result
maxdb_stmt_close
MaxDB Funções
PHP Manual

maxdb_stmt_close_long_data

maxdb_stmt::close_long_data

(PECL maxdb 1.0)

maxdb_stmt_close_long_data -- maxdb_stmt::close_long_data — Ends a sequence of maxdb_stmt_send_long_data()

Descrição

Estilo de procedimentos

bool maxdb_stmt_close_long_data ( resource $stmt , int $param_nr )

Estilo orientado a objetos

bool maxdb_stmt::close_long_data ( void )

This function has to be called after a sequence of maxdb_stmt_send_long_data(), that was started after maxdb_execute().

param_nr indicates which parameter to associate the end of data with. Parameters are numbered beginning with 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters

maxdb_stmt_bind_result
maxdb_stmt_close
MaxDB Funções


Closes a prepared statement

maxdb_stmt_close_long_data
maxdb_stmt_data_seek
MaxDB Funções
PHP Manual

maxdb_stmt_close

maxdb_stmt::close

(PECL maxdb >= 1.0)

maxdb_stmt_close -- maxdb_stmt::close — Closes a prepared statement

Descrição

Estilo de procedimentos

bool maxdb_stmt_close ( resource $stmt )

Estilo orientado a objetos

bool maxdb_stmt::close ( void )

Closes a prepared statement. maxdb_stmt_close() also deallocates the statement handle pointed to by stmt. If the current statement has pending or unread results, this function cancels them so that the next query can be executed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution

maxdb_stmt_close_long_data
maxdb_stmt_data_seek
MaxDB Funções


Seeks to an arbitray row in statement result set

maxdb_stmt_close
maxdb_stmt_errno
MaxDB Funções
PHP Manual

maxdb_stmt_data_seek

maxdb_stmt::data_seek

(PECL maxdb >= 1.0)

maxdb_stmt_data_seek -- maxdb_stmt::data_seek — Seeks to an arbitray row in statement result set

Descrição

Estilo de procedimentos

bool maxdb_stmt_data_seek ( resource $statement , int $offset )

Estilo orientado a objetos

bool maxdb_stmt::data_seek ( int $offset )

The maxdb_stmt_data_seek() function seeks to an arbitrary result pointer specified by the offset in the statement result set represented by statement. The offset parameter must be between zero and the total number of rows minus one (0..maxdb_stmt_num_rows() - 1).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, zip FROM hotel.city ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* execute query */
   $stmt->execute();

   /* bind result variables */
   $stmt->bind_result($name, $code);

   /* store result */
   $stmt->store_result();

   /* seek to row no. 5 */
   $stmt->data_seek(5);

   /* fetch values */
   $stmt->fetch();

   printf ("City: %s  Zip: %s\n", $name, $code);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, zip FROM hotel.city ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* execute query */
   maxdb_stmt_execute($stmt);

   /* bind result variables */
   maxdb_stmt_bind_result($stmt, $name, $code);

   /* store result */
   maxdb_stmt_store_result($stmt);

   /* seek to row no. 5 */
   maxdb_stmt_data_seek($stmt, 5);

   /* fetch values */
   maxdb_stmt_fetch($stmt);

   printf ("City: %s  Zip: %s\n", $name, $code);

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

City: Dallas  Zip: 75243

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution

maxdb_stmt_close
maxdb_stmt_errno
MaxDB Funções


Returns the error code for the most recent statement call

maxdb_stmt_data_seek
maxdb_stmt_error
MaxDB Funções
PHP Manual

maxdb_stmt_errno

maxdb_stmt->errno

(PECL maxdb >= 1.0)

maxdb_stmt_errno -- maxdb_stmt->errno — Returns the error code for the most recent statement call

Descrição

Estilo de procedimentos

int maxdb_stmt_errno ( resource $stmt )

Estilo orientado a objetos

int $errno;

For the statement specified by stmt, maxdb_stmt_errno() returns the error code for the most recently invoked statement function that can succeed or fail.

Nota:

For possible error codes see documentation of SQLDBC: » http://maxdb.sap.com/documentation/.

Valor Retornado

An error code value. Zero means no error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* drop table */
   $maxdb->query("DROP TABLE temp.mycity");

   /* execute query */
   $stmt->execute();

   printf("Error: %d.\n", $stmt->errno);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* drop table */
   maxdb_query($link, "DROP TABLE temp.mycity");

   /* execute query */
   maxdb_stmt_execute($stmt);

   printf("Error: %d.\n", maxdb_stmt_errno($stmt));

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_stmt_execute(): -4004 POS(23) Unknown table name:MYCITY [42000] <...>
Error: -4004.

Veja Também

  • maxdb_stmt_error() - Returns a string description for last statement error
  • maxdb_stmt_sqlstate() - Returns SQLSTATE error from previous statement operation

maxdb_stmt_data_seek
maxdb_stmt_error
MaxDB Funções


Returns a string description for last statement error

maxdb_stmt_errno
maxdb_stmt_execute
MaxDB Funções
PHP Manual

maxdb_stmt_error

maxdb_stmt->error

(PECL maxdb >= 1.0)

maxdb_stmt_error -- maxdb_stmt->error — Returns a string description for last statement error

Descrição

Estilo de procedimentos

string maxdb_stmt_error ( resource $stmt )

Estilo orientado a objetos

string $error;

For the statement specified by stmt, maxdb_stmt_error() returns a containing the error message for the most recently invoked statement function that can succeed or fail.

Valor Retornado

A string that describes the error. An empty string if no error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* drop table */
   $maxdb->query("DROP TABLE temp.mycity");

   /* execute query */
   $stmt->execute();

   printf("Error: %s.\n", $stmt->error);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* drop table */
   maxdb_query($link, "DROP TABLE temp.mycity");

   /* execute query */
   maxdb_stmt_execute($stmt);

   printf("Error: %s.\n", maxdb_stmt_error($stmt));

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_stmt_execute(): -4004 POS(23) Unknown table name:MYCITY [42000] <...>
Error: POS(23) Unknown table name:MYCITY.

Veja Também

  • maxdb_stmt_errno() - Returns the error code for the most recent statement call
  • maxdb_stmt_sqlstate() - Returns SQLSTATE error from previous statement operation

maxdb_stmt_errno
maxdb_stmt_execute
MaxDB Funções


Executes a prepared Query

maxdb_stmt_error
maxdb_stmt_fetch
MaxDB Funções
PHP Manual

maxdb_stmt_execute

maxdb_stmt::execute

(PECL maxdb >= 1.0)

maxdb_stmt_execute -- maxdb_stmt::execute — Executes a prepared Query

Descrição

Estilo de procedimentos

bool maxdb_stmt_execute ( resource $stmt )

Estilo orientado a objetos

bool maxdb_stmt::execute ( void )

The maxdb_stmt_execute() function executes a query that has been previously prepared using the maxdb_prepare() function represented by the stmt resource. When executed any parameter markers which exist will automatically be replaced with the appropiate data.

If the statement is UPDATE, DELETE, or INSERT, the total number of affected rows can be determined by using the maxdb_stmt_affected_rows() function. Likewise, if the query yields a result set the maxdb_fetch() function is used.

Nota:

When using maxdb_stmt_execute(), the maxdb_fetch() function must be used to fetch the data prior to preforming any additional queries.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");

/* Prepare an insert statement */
$query = "INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)";
$stmt = $maxdb->prepare($query);

$stmt->bind_param("sss", $val1, $val2, $val3);

$val1 = '11111';
$val2 = 'Georgetown';
$val3 = 'NY';

/* Execute the statement */
$stmt->execute();

$val1 = '22222';
$val2 = 'Hubbatown';
$val3 = 'CA';

/* Execute the statement */
$stmt->execute();

/* close statement */
$stmt->close();

/* retrieve all rows from myCity */
$query = "SELECT zip, name, state FROM temp.mycity";
if ($result = $maxdb->query($query)) {
   while ($row = $result->fetch_row()) {
       printf("%s (%s,%s)\n", $row[0], $row[1], $row[2]);
   }
   /* free result set */
   $result->close();
}

/* remove table */
$maxdb->query("DROP TABLE temp.mycity");

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");

/* Prepare an insert statement */
$query = "INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)";
$stmt = maxdb_prepare($link, $query);

maxdb_stmt_bind_param($stmt, "sss", $val1, $val2, $val3);

$val1 = '11111';
$val2 = 'Georgetown';
$val3 = 'NY';

/* Execute the statement */
maxdb_stmt_execute($stmt);

$val1 = '22222';
$val2 = 'Hubbatown';
$val3 = 'CA';

/* Execute the statement */
maxdb_stmt_execute($stmt);

/* close statement */
maxdb_stmt_close($stmt);

/* retrieve all rows from myCity */
$query = "SELECT zip, name, state FROM temp.mycity";
if ($result = maxdb_query($link, $query)) {
   while ($row = maxdb_fetch_row($result)) {
       printf("%s (%s,%s)\n", $row[0], $row[1], $row[2]);
   }
   /* free result set */
   maxdb_free_result($result);
}

/* remove table */
maxdb_query($link, "DROP TABLE temp.mycity");

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

11111 (Georgetown,NY)
22222 (Hubbatown,CA)

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters

maxdb_stmt_error
maxdb_stmt_fetch
MaxDB Funções


Fetch results from a prepared statement into the bound variables

maxdb_stmt_execute
maxdb_stmt_free_result
MaxDB Funções
PHP Manual

maxdb_stmt_fetch

maxdb_stmt::fetch

(PECL maxdb >= 1.0)

maxdb_stmt_fetch -- maxdb_stmt::fetch — Fetch results from a prepared statement into the bound variables

Descrição

Estilo de procedimentos

bool maxdb_stmt_fetch ( resource $stmt )

Estilo orientado a objetos

bool maxdb_stmt::fetch ( void )

maxdb_stmt_fetch() returns row data using the variables bound by maxdb_stmt_bind_result().

Nota:

Note that all columns must be bound by the application before calling maxdb_stmt_fetch().

Valor Retornado

Return values
Value | Description
TRUE | Success. Data has been fetched
FALSE | Error occured
NULL | No more rows/data exists

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT zip, name FROM hotel.city ORDER by name";

if ($stmt = $maxdb->prepare($query)) {

   /* execute statement */
   $stmt->execute();

   /* bind result variables */
   $stmt->bind_result($name, $code);

   /* fetch values */
   while ($stmt->fetch()) {
       printf ("%s (%s)\n", $name, $code);
   }

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT zip, name FROM hotel.city ORDER by name";

if ($stmt = maxdb_prepare($link, $query)) {

   /* execute statement */
   maxdb_stmt_execute($stmt);

   /* bind result variables */
   maxdb_stmt_bind_result($stmt, $name, $code);

   /* fetch values */
   while (maxdb_stmt_fetch($stmt)) {
       printf ("%s (%s)\n", $name, $code);
   }

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

12203 (Albany)
60601 (Chicago)
60615 (Chicago)
45211 (Cincinnati)
33575 (Clearwater)
75243 (Dallas)
32018 (Daytona Beach)
33441 (Deerfield Beach)
48226 (Detroit)
90029 (Hollywood)
92714 (Irvine)
90804 (Long Beach)
11788 (Long Island)
90018 (Los Angeles)
70112 (New Orleans)
10019 (New York)
10580 (New York)
92262 (Palm Springs)
97213 (Portland)
60018 (Rosemont)
95054 (Santa Clara)
20903 (Silver Spring)
20005 (Washington)
20019 (Washington)
20037 (Washington)

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_errno() - Returns the error code for the most recent statement call
  • maxdb_stmt_error() - Returns a string description for last statement error
  • maxdb_stmt_bind_result() - Binds variables to a prepared statement for result storage

maxdb_stmt_execute
maxdb_stmt_free_result
MaxDB Funções


Frees stored result memory for the given statement handle

maxdb_stmt_fetch
maxdb_stmt_init
MaxDB Funções
PHP Manual

maxdb_stmt_free_result

maxdb_stmt::free_result

(PECL maxdb >= 1.0)

maxdb_stmt_free_result -- maxdb_stmt::free_result — Frees stored result memory for the given statement handle

Descrição

Estilo de procedimentos

void maxdb_stmt_free_result ( resource $stmt )

Estilo orientado a objetos

void maxdb_stmt::free_result ( void )

The maxdb_stmt_free_result() function frees the result memory associated with the statement represented by the stmt parameter, which was allocated by maxdb_stmt_store_result().

Valor Retornado

This function doesn't return any value.

Veja Também

  • maxdb_stmt_store_result() - Transfers a result set from a prepared statement

maxdb_stmt_fetch
maxdb_stmt_init
MaxDB Funções


Initializes a statement and returns an resource for use with maxdb_stmt_prepare

maxdb_stmt_free_result
maxdb_stmt_num_rows
MaxDB Funções
PHP Manual

maxdb_stmt_init

maxdb->stmt_init

(PECL maxdb >= 1.0)

maxdb_stmt_init -- maxdb->stmt_init — Initializes a statement and returns an resource for use with maxdb_stmt_prepare

Descrição

Estilo de procedimentos

resource maxdb_stmt_init ( resource $link )

Estilo orientado a objetos

object maxdb::stmt_init ( void )

Allocates and initializes a statement resource suitable for maxdb_stmt_prepare().

Nota:

Any subsequent calls to any maxdb_stmt function will fail until maxdb_stmt_prepare() was called.

Valor Retornado

Returns an resource.

Veja Também

  • maxdb_stmt_prepare() - Prepare an SQL statement for execution

maxdb_stmt_free_result
maxdb_stmt_num_rows
MaxDB Funções


Return the number of rows in statements result set

maxdb_stmt_init
maxdb_stmt_param_count
MaxDB Funções
PHP Manual

maxdb_stmt_num_rows

maxdb_stmt->num_rows

(PECL maxdb >= 1.0)

maxdb_stmt_num_rows -- maxdb_stmt->num_rows — Return the number of rows in statements result set

Descrição

Estilo de procedimentos

int maxdb_stmt_num_rows ( resource $stmt )

Estilo orientado a objetos

int $num_rows;

Returns the number of rows in the result set.

Valor Retornado

An integer representing the number of rows in result set.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT zip, name FROM hotel.city ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* execute query */
   $stmt->execute();

   /* store result */
   $stmt->store_result();

   printf("Number of rows: %d.\n", $stmt->num_rows);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT zip, name FROM hotel.city ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* execute query */
   maxdb_stmt_execute($stmt);

   /* store result */
   maxdb_stmt_store_result($stmt);

   printf("Number of rows: %d.\n", maxdb_stmt_num_rows($stmt));

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Number of rows: 25.

Veja Também

  • maxdb_stmt_affected_rows() - Returns the total number of rows changed, deleted, or inserted by the last executed statement
  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_store_result() - Transfers a result set from a prepared statement

maxdb_stmt_init
maxdb_stmt_param_count
MaxDB Funções


Returns the number of parameter for the given statement

maxdb_stmt_num_rows
maxdb_stmt_prepare
MaxDB Funções
PHP Manual

maxdb_stmt_param_count

maxdb_stmt->param_count

(PECL maxdb >= 1.0)

maxdb_stmt_param_count -- maxdb_stmt->param_count — Returns the number of parameter for the given statement

Descrição

Estilo de procedimentos

int maxdb_stmt_param_count ( resource $stmt )

Estilo orientado a objetos

int $param_count;

maxdb_stmt_param_count() returns the number of parameter markers present in the prepared statement.

Valor Retornado

returns an integer representing the number of parameters.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($stmt = $maxdb->prepare("SELECT name FROM hotel.city WHERE name=? OR state=?")) {

   $marker = $stmt->param_count;
   printf("Statement has %d markers.\n", $marker);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

if ($stmt = maxdb_prepare($link, "SELECT name FROM hotel.city WHERE name=? OR state=?")) {

   $marker = maxdb_stmt_param_count($stmt);
   printf("Statement has %d markers.\n", $marker);

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Statement has 2 markers.

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution

maxdb_stmt_num_rows
maxdb_stmt_prepare
MaxDB Funções


Prepare an SQL statement for execution

maxdb_stmt_param_count
maxdb_stmt_reset
MaxDB Funções
PHP Manual

maxdb_stmt_prepare

maxdb_stmt::prepare

(PECL maxdb >= 1.0)

maxdb_stmt_prepare -- maxdb_stmt::prepare — Prepare an SQL statement for execution

Descrição

Estilo de procedimentos

bool maxdb_stmt_prepare ( resource $stmt , string $query )

Estilo orientado a objetos

mixed maxdb_stmt::prepare ( string $query )

maxdb_stmt_prepare() prepares the SQL query pointed to by the null-terminated string query. The statement resource has to be allocated by maxdb_stmt_init(). The query must consist of a single SQL statement.

Nota:

You should not add a terminating semicolon or \g to the statement.

The parameter query can include one or more parameter markers in the SQL statement by embedding question mark (?) characters at the appropriate positions.

Nota:

The markers are legal only in certain places in SQL statements. For example, they are allowed in the VALUES() list of an INSERT statement (to specify column values for a row), or in a comparison with a column in a WHERE clause to specify a comparison value.

However, they are not allowed for identifiers (such as table or column names), in the select list that names the columns to be returned by a SELECT statement), or to specify both operands of a binary operator such as the = equal sign. The latter restriction is necessary because it would be impossible to determine the parameter type. In general, parameters are legal only in Data Manipulation Languange (DML) statements, and not in Data Defination Language (DDL) statements.

The parameter markers must be bound to application variables using maxdb_stmt_bind_param() and/or maxdb_stmt_bind_result() before executing the statement or fetching rows.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$city = "Portland";

/* create a prepared statement */
$stmt =  $maxdb->stmt_init();
if ($stmt->prepare("SELECT state FROM hotel.city WHERE name=?")) {

   /* bind parameters for markers */
   $stmt->bind_param("s", $city);

   /* execute query */
   $stmt->execute();

   /* bind result variables */
   $stmt->bind_result($district);

   /* fetch value */
   $stmt->fetch();

   printf("%s is in district %s\n", $city, $district);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$city = "Portland";

/* create a prepared statement */
$stmt = maxdb_stmt_init($link);
if (maxdb_stmt_prepare($stmt, "SELECT state FROM hotel.city WHERE name=?")) {

   /* bind parameters for markers */
   maxdb_stmt_bind_param($stmt, "s", $city);

   /* execute query */
   maxdb_stmt_execute($stmt);

   /* bind result variables */
   maxdb_stmt_bind_result($stmt, $district);

   /* fetch value */
   maxdb_stmt_fetch($stmt);

   printf("%s is in district %s\n", $city, $district);

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Portland is in district OR

Veja Também

  • maxdb_stmt_init() - Initializes a statement and returns an resource for use with maxdb_stmt_prepare
  • maxdb_stmt_execute() - Executes a prepared Query
  • maxdb_stmt_fetch() - Fetch results from a prepared statement into the bound variables
  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters
  • maxdb_stmt_bind_result() - Binds variables to a prepared statement for result storage
  • maxdb_stmt_close() - Closes a prepared statement

maxdb_stmt_param_count
maxdb_stmt_reset
MaxDB Funções


Resets a prepared statement

maxdb_stmt_prepare
maxdb_stmt_result_metadata
MaxDB Funções
PHP Manual

maxdb_stmt_reset

maxdb_stmt::reset

(PECL maxdb >= 1.0)

maxdb_stmt_reset -- maxdb_stmt::reset — Resets a prepared statement

Descrição

Estilo de procedimentos

bool maxdb_stmt_reset ( resource $stmt )

Estilo orientado a objetos

bool maxdb_stmt::reset ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

maxdb_stmt_prepare
maxdb_stmt_result_metadata
MaxDB Funções


Returns result set metadata from a prepared statement

maxdb_stmt_reset
maxdb_stmt_send_long_data
MaxDB Funções
PHP Manual

maxdb_stmt_result_metadata

maxdb_stmt::result_metadata

(PECL maxdb >= 1.0)

maxdb_stmt_result_metadata -- maxdb_stmt::result_metadata — Returns result set metadata from a prepared statement

Descrição

Estilo de procedimentos

resource maxdb_stmt_result_metadata ( resource $stmt )

Estilo orientado a objetos

resource maxdb_stmt::result_metadata ( void )

If a statement passed to maxdb_prepare() is one that produces a result set, maxdb_stmt_result_metadata() returns the result resource that can be used to process the meta information such as total number of fields and individual field information.

Nota:

This result set pointer can be passed as an argument to any of the field-based functions that process result set metadata, such as:

  • maxdb_num_fields()

  • maxdb_fetch_field()

  • maxdb_fetch_field_direct()

  • maxdb_fetch_fields()

  • maxdb_field_count()

  • maxdb_field_seek()

  • maxdb_field_tell()

  • maxdb_free_result()

The result set structure should be freed when you are done with it, which you can do by passing it to maxdb_free_result()

Nota:

The result set returned by maxdb_stmt_result_metadata() contains only metadata. It does not contain any row results. The rows are obtained by using the statement handle with maxdb_fetch().

Valor Retornado

maxdb_stmt_result_metadata() returns a result resource or FALSE if an error occured.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

$maxdb->query("CREATE TABLE temp.friends (id int, name varchar(20))");

$maxdb->query("INSERT INTO temp.friends VALUES (1,'Hartmut')");
$maxdb->query("INSERT INTO temp.friends VALUES (2, 'Ulf')");

$stmt = $maxdb->prepare("SELECT id, name FROM temp.friends");
$stmt->execute();

/* get resultset for metadata */
$result = $stmt->result_metadata();

/* retrieve field information from metadata result set */
$field = $result->fetch_field();

printf("Fieldname: %s\n", $field->name);

/* close resultset */
$result->close();

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

maxdb_query($link, "CREATE TABLE temp.friends (id int, name varchar(20))");

maxdb_query($link, "INSERT INTO temp.friends VALUES (1,'Hartmut')");
maxdb_query($link, "INSERT INTO temp.friends VALUES (2, 'Ulf')");

$stmt = maxdb_prepare($link, "SELECT id, name FROM temp.friends");
maxdb_stmt_execute($stmt);

/* get resultset for metadata */
$result = maxdb_stmt_result_metadata($stmt);

/* retrieve field information from metadata result set */
$field = maxdb_fetch_field($result);

printf("Fieldname: %s\n", $field->name);

/* close resultset */
maxdb_free_result($result);

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Fieldname: ID

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_free_result() - Frees the memory associated with a result

maxdb_stmt_reset
maxdb_stmt_send_long_data
MaxDB Funções


Send data in blocks

maxdb_stmt_result_metadata
maxdb_stmt_sqlstate
MaxDB Funções
PHP Manual

maxdb_stmt_send_long_data

maxdb_stmt::send_long_data

(PECL maxdb 1.0)

maxdb_stmt_send_long_data -- maxdb_stmt::send_long_data — Send data in blocks

Descrição

Estilo de procedimentos

bool maxdb_stmt_send_long_data ( resource $stmt , int $param_nr , string $data )

Estilo orientado a objetos

bool maxdb_stmt::stmt_send_long_data ( int $param_nr , string $data )

Allows to send parameter data to the server in pieces (or chunks). This function can be called multiple times to send the parts of a character or binary data value for a column, which must be one of the TEXT or BLOB datatypes.

param_nr indicates which parameter to associate the data with. Parameters are numbered beginning with 0. data is a string containing data to be sent.

Nota:

For efficiency reasons, this function should be used after calling maxdb_execute(). In this case, the data is not stored on the client side. The end of the sequence must end with a call to maxdb_stmt_close_long_data().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_bind_param() - Binds variables to a prepared statement as parameters

maxdb_stmt_result_metadata
maxdb_stmt_sqlstate
MaxDB Funções


Returns SQLSTATE error from previous statement operation

maxdb_stmt_send_long_data
maxdb_stmt_store_result
MaxDB Funções
PHP Manual

maxdb_stmt_sqlstate

(PECL maxdb >= 1.0)

maxdb_stmt_sqlstate — Returns SQLSTATE error from previous statement operation

Descrição

string maxdb_stmt_sqlstate ( resource $stmt )

Returns a string containing the SQLSTATE error code for the most recently invoked prepared statement function that can succeed or fail. The error code consists of five characters. '00000' means no error. The values are specified by ANSI SQL and ODBC.

Nota:

Note that not all MaxDB errors are yet mapped to SQLSTATE's. The value HY000 (general error) is used for unmapped errors.

Valor Retornado

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* drop table */
   $maxdb->query("DROP TABLE temp.mycity");

   /* execute query */
   $stmt->execute();

   printf("Error: %s.\n", $stmt->sqlstate);

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* drop table */
   maxdb_query($link, "DROP TABLE temp.mycity");

   /* execute query */
   maxdb_stmt_execute($stmt);

   printf("Error: %s.\n", maxdb_stmt_sqlstate($stmt));

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_stmt_execute(): -4004 POS(23) Unknown table name:MYCITY [42000] <...>
Error: 42000.

Veja Também

  • maxdb_stmt_errno() - Returns the error code for the most recent statement call
  • maxdb_stmt_error() - Returns a string description for last statement error

maxdb_stmt_send_long_data
maxdb_stmt_store_result
MaxDB Funções


Transfers a result set from a prepared statement

maxdb_stmt_sqlstate
maxdb_store_result
MaxDB Funções
PHP Manual

maxdb_stmt_store_result

maxdb::store_result

(PECL maxdb >= 1.0)

maxdb_stmt_store_result -- maxdb::store_result — Transfers a result set from a prepared statement

Descrição

Estilo de procedimentos

bool maxdb_stmt_store_result ( resource $stmt )

Estilo orientado a objetos

object maxdb::store_result ( void )

maxdb_stmt_store_result() has no functionally effect and should not be used for retrieving data from MaxDB server.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Open a connection */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, zip FROM hotel.city ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {

   /* execute query */
   $stmt->execute();

   /* store result */
   $stmt->store_result();

   printf("Number of rows: %d.\n", $stmt->num_rows);

   /* free result */
   $stmt->free_result();

   /* close statement */
   $stmt->close();
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
/* Open a connection */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query = "SELECT name, zip FROM hotel.city ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {

   /* execute query */
   maxdb_stmt_execute($stmt);

   /* store result */
   maxdb_stmt_store_result($stmt);

   printf("Number of rows: %d.\n", maxdb_stmt_num_rows($stmt));

   /* free result */
   maxdb_stmt_free_result($stmt);

   /* close statement */
   maxdb_stmt_close($stmt);
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Number of rows: 25.

Veja Também

  • maxdb_prepare() - Prepare an SQL statement for execution
  • maxdb_stmt_result_metadata() - Returns result set metadata from a prepared statement
  • maxdb_fetch() - Sinônimo de maxdb_stmt_fetch

maxdb_stmt_sqlstate
maxdb_store_result
MaxDB Funções


Transfers a result set from the last query

maxdb_stmt_store_result
maxdb_thread_id
MaxDB Funções
PHP Manual

maxdb_store_result

maxdb::store_result

(PECL maxdb >= 1.0)

maxdb_store_result -- maxdb::store_result — Transfers a result set from the last query

Descrição

Estilo de procedimentos

resource maxdb_store_result ( resource $link )

Estilo orientado a objetos

object maxdb::store_result ( void )

This function has no functionally effect.

Valor Retornado

Returns a result resource or FALSE if an error occurred.

Exemplos

See maxdb_multi_query().

Veja Também

  • maxdb_real_query() - Execute an SQL query
  • maxdb_use_result() - Initiate a result set retrieval

maxdb_stmt_store_result
maxdb_thread_id
MaxDB Funções


Returns the thread ID for the current connection

maxdb_store_result
maxdb_thread_safe
MaxDB Funções
PHP Manual

maxdb_thread_id

maxdb->thread_id

(PECL maxdb >= 1.0)

maxdb_thread_id -- maxdb->thread_id — Returns the thread ID for the current connection

Descrição

Estilo de procedimentos

int maxdb_thread_id ( resource $link )

Estilo orientado a objetos

int $thread_id;

The maxdb_thread_id() function returns the thread ID for the current connection which can then be killed using the maxdb_kill() function. If the connection is lost and you reconnect with maxdb_ping(), the thread ID will be other. Therefore you should get the thread ID only when you need it.

Nota:

The thread ID is assigned on a connection-by-connection basis. Hence, if the connection is broken and then re-established a new thread ID will be assigned.

Valor Retornado

maxdb_thread_id() returns the Thread ID for the current connection.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* determine our thread id */
$thread_id = $maxdb->thread_id;

/* Kill connection */
$maxdb->kill($thread_id);

/* This should produce an error */
if (!$maxdb->query("CREATE TABLE mycity LIKE hotel.city")) {
   printf("Error: %s\n", $maxdb->error);
   exit;
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* determine our thread id */
$thread_id = maxdb_thread_id($link);

/* Kill connection */
maxdb_kill($link, $thread_id);

/* This should produce an error */
if (!maxdb_query($link, "CREATE TABLE mycity LIKE hotel.city")) {
   printf("Error: %s\n", maxdb_error($link));
   exit;
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_query(): -10821 Session not connected <...>
Error: Session not connected

Veja Também

  • maxdb_kill() - Disconnects from a MaxDB server

maxdb_store_result
maxdb_thread_safe
MaxDB Funções


Returns whether thread safety is given or not

maxdb_thread_id
maxdb_use_result
MaxDB Funções
PHP Manual

maxdb_thread_safe

(PECL maxdb >= 7.6.06.04)

maxdb_thread_safe — Returns whether thread safety is given or not

Descrição

bool maxdb_thread_safe ( void )

maxdb_thread_safe() indicates whether the client library is compiled as thread-safe.

Valor Retornado

TRUE if the client library is thread-safe, otherwise FALSE.

maxdb_thread_id
maxdb_use_result
MaxDB Funções


Initiate a result set retrieval

maxdb_thread_safe
maxdb_warning_count
MaxDB Funções
PHP Manual

maxdb_use_result

maxdb::use_result

(PECL maxdb >= 1.0)

maxdb_use_result -- maxdb::use_result — Initiate a result set retrieval

Descrição

Estilo de procedimentos

resource maxdb_use_result ( resource $link )

Estilo orientado a objetos

resource maxdb::use_result ( void )

maxdb_use_result() has no effect.

Valor Retornado

Returns result or FALSE on failure.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query  = "SELECT * FROM DUAL";

/* execute multi query */
if ($maxdb->multi_query($query)) {
   do {
       /* store first result set */
       if ($result = $maxdb->use_result()) {
           while ($row = $result->fetch_row()) {
               printf("%s\n", $row[0]);
           }
           $result->close();
       }
       /* print divider */
       if ($maxdb->more_results()) {
           printf("-----------------\n");
       }
   } while ($maxdb->next_result());
}

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$query  = "SELECT * FROM DUAL";

/* execute multi query */
if (maxdb_multi_query($link, $query)) {
   do {
       /* store first result set */
       if ($result = maxdb_use_result($link)) {
           while ($row = maxdb_fetch_row($result)) {
               printf("%s\n", $row[0]);
           }
           maxdb_free_result($result);
       }
       /* print divider */
       if (maxdb_more_results($link)) {
           printf("-----------------\n");
       }
   } while (maxdb_next_result($link));
}

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

a

Veja Também

  • maxdb_real_query() - Execute an SQL query
  • maxdb_store_result() - Transfers a result set from the last query

maxdb_thread_safe
maxdb_warning_count
MaxDB Funções


Returns the number of warnings from the last query for the given link

maxdb_use_result
Mongo
MaxDB Funções
PHP Manual

maxdb_warning_count

maxdb->warning_count

(PECL maxdb >= 1.0)

maxdb_warning_count -- maxdb->warning_count — Returns the number of warnings from the last query for the given link

Descrição

Estilo de procedimentos

int maxdb_warning_count ( resource $link )

Estilo orientado a objetos

int $warning_count;

maxdb_warning_count() returns the number of warnings from the last query in the connection represented by the link parameter.

Valor Retornado

Number of warnings or zero if there are no warnings.

Exemplos

Exemplo #1 Object oriented style

<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");

/* a remarkable city in Wales */
$query = "INSERT INTO temp.mycity (zip, name) VALUES('11111',
       'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";

$maxdb->query($query);

printf ("Number of warning: %d\n", $maxdb->warning_count);

/* close connection */
$maxdb->close();
?>

Exemplo #2 Procedural style

<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");

/* a remarkable long city name in Wales */
$query = "INSERT INTO temp.mycity (zip, name) VALUES('11111',
       'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";

maxdb_query($link, $query);

printf ("Number of warning: %d\n", maxdb_warning_count($link));

/* close connection */
maxdb_close($link);
?>

O exemplo acima irá imprimir algo similar a:

Warning: maxdb_query(): -8004 POS(62) Constant must be compatible with column type and length <...>
Number of warning: 0

Veja Também

  • maxdb_errno() - Returns the error code for the most recent function call
  • maxdb_error() - Returns a string description of the last error
  • maxdb_sqlstate() - Returns the SQLSTATE error from previous MaxDB operation

maxdb_use_result
Mongo
MaxDB Funções


MongoDB Native Driver

  • Manual
    • Instalação
    • Tutorial
    • Connecting
    • Writes
    • Querying
    • Updates
    • php.ini Options
    • Security
    • Running the Driver's Tests
    • Troubleshooting
  • Core Classes
    • Mongo — The Mongo class
    • MongoDB — The MongoDB class
    • MongoCollection — The MongoCollection class
    • MongoCursor — The MongoCursor class
  • Types
    • MongoId — The MongoId class
    • MongoCode — The MongoCode class
    • MongoDate — The MongoDate class
    • MongoRegex — The MongoRegex class
    • MongoBinData — The MongoBinData class
    • MongoInt32 — The MongoInt32 class
    • MongoInt64 — The MongoInt64 class
    • MongoDBRef — The MongoDBRef class
    • MongoMinKey — The MongoMinKey class
    • MongoMaxKey — The MongoMaxKey class
    • MongoTimestamp — The MongoTimestamp class
  • GridFS Classes
    • MongoGridFS — The MongoGridFS class
    • MongoGridFSFile — The MongoGridFSFile class
    • MongoGridFSCursor — The MongoGridFSCursor class
  • Functions
    • Mongo Funções
  • Exceptions
    • MongoException — The MongoException class
    • MongoCursorException — The MongoCursorException class
    • MongoCursorTimeoutException — The MongoCursorTimeoutException class
    • MongoConnectionException — The MongoConnectionException class
    • MongoGridFSException — The MongoGridFSException class
maxdb_warning_count
Manual
Vendor Specific Database Extensions


Manual

Índice

  • Instalação
  • Tutorial
  • Connecting
  • Writes
  • Querying
  • Updates
  • php.ini Options
  • Security
  • Running the Driver's Tests
  • Troubleshooting

Veja Também

» Developing Scalable PHP Applications Using MongoDB is an excellent article on getting started with MongoDB. For francophones, » NoSQL - MongoDB et PHP: Première Approche gives a nice overview.

Mongo
Instalação
Mongo


Instalação

The MongoDB PHP driver should work on nearly any system: Windows, Mac OS X, Unix, and Linux; little- and big-endian machines; 32- and 64-bit machines; PHP 5.1, 5.2, and 5.3.

Esta extensão » PECL não vem compilada com o PHP. This page gives more specific information on installing on different systems and troubleshooting issues users have run into.

  • » Installing on *NIX

  • » Manual Installation

  • » OS X

  • » Gentoo

  • » Fedora

  • » Installing on Windows

  • » Third-Party Installation Instructions

Installing on *NIX

Run:

$ sudo pecl install mongo

If you are using CentOS or Redhat, Csoke Arpad created » RPMs for these distributions.

Add the following line to your php.ini file:

extension=mongo.so

If pecl runs out of memory while installing, make sure memory_limit in php.ini is set to at least 32MB.

Manual Installation

For driver developers and people interested in the latest bugfixes, you can compile the driver from the latest source code on » Github. Go to Github and click the "download" button. Then run:

$ tar zxvf mongodb-mongodb-php-driver-<commit_id>.tar.gz
$ cd mongodb-mongodb-php-driver-<commit_id>
$ phpize
$ ./configure
$ sudo make install

Make the following changes to php.ini:

  • Make sure the extension_dir variable is pointing to the location of mongo.so. The build will display where it is installing the PHP driver with output that looks something like:

      Installing '/usr/lib/php/extensions/no-debug-zts-20060613/mongo.so'
    Make sure that it is the same as the PHP extension directory by runnning:

      $ php -i | grep extension_dir
        extension_dir => /usr/lib/php/extensions/no-debug-zts-20060613 =>
      /usr/lib/php/extensions/no-debug-zts-20060613
    If it's not, change the extension_dir in php.ini or move mongo.so.

  • To load the extension on PHP startup, add a line:

      extension=mongo.so

OS X

If your system is unable to find autoconf, you'll need to install Xcode (available on your installation DVD or as a free download from the Apple website).

If you are using XAMPP, you may be able to compile the driver with the following command:

sudo /Applications/XAMPP/xamppfiles/bin/pecl install mongo

If you are using MAMP (or XAMPP and the above command does not work), precompiled binaries are available from » Github (download the latest one with "osx" in the name that matches your version of PHP). Extract mongo.so from the archive and add it to MAMP or XAMPP's extension directory. Add

      extension=mongo.so
to the php.ini file being used and restart the server.

Gentoo

Gentoo has a package for the PHP driver called dev-php5/mongo, which can be installed with:

$ sudo emerge -va dev-php5/mongo

If you use PECL, you may get an error that libtool is the wrong version. Compiling from source you'll need to run aclocal and autoconf.

$ phpize && aclocal && autoconf && ./configure && make && make install

Red Hat

This includes Fedora and CentOS.

The default Apache settings on these systems do not let requests make network connections, meaning that the driver will get "Permission denied" errors when it tries to connect to the database. If you run into this, try running:

$ /usr/sbin/setsebool -P httpd_can_network_connect 1
Then restart Apache. (This issue has also occurred with SELinux.)

Installing on Windows

Precompiled binaries for each release are available from » Github for a variety of combinations of versions, thread safety, and VC libraries. Unzip the archive and put php_mongo.dll in your PHP extension directory ("ext" by default).

The latest (non-release) code is compiled into Windows binaries on every commit. The zip consists of a .zip with php_mongo.dll and a version.txt. Please keep the version.txt around so that if you have a question or problem, you can give the developers the exact version you're using. (The number is long and nonsensical, but it will make sense to the developers!)

To get the latest bug fixes (and possibly bugs), download the binary corresponding to the PHP you have installed:

  • » PHP 5.2 VC6 Non-Thread-Safe Mongo extension

  • » PHP 5.2 VC6 Thread-Safe Mongo extension

  • » PHP 5.3 VC6 Non-Thread-Safe Mongo extension

  • » PHP 5.3 VC6 Thread-Safe Mongo extension

  • » PHP 5.3 VC8 Non-Thread-Safe Mongo extension

  • » PHP 5.3 VC8 Thread-Safe Mongo extension

  • » PHP 5.3 VC9 Non-Thread-Safe Mongo extension

  • » PHP 5.3 VC9 Thread-Safe Mongo extension

Add the following line to your php.ini file:

extension=php_mongo.dll

Third-Party Installation Instructions

A number of people have created excellent tutorials on installing the PHP driver.

  • » PHP 5.3.1 with Xdebug, MongoDB and Lithium on Ubuntu 9.10 / Apache 2.2

    An excellent video that takes you step-by-step through installing Apache, PHP, Xdebug, MongoDB, and Lithium by Jon Adams.

  • » Installing MongoDB and the PHP driver on Ubuntu 9.04

    Spanish article by Javier Aranda (» English translation).

  • » OS X: Installing MongoDB and the PHP Mongo Driver

    By Matt Butcher.

Manual
Tutorial
Manual


Tutorial

Introduction

This is the 10gen-supported PHP driver for MongoDB.

Here's a quick code sample that connects, inserts documents, queries for documents, iterates through query results, and disconnects from MongoDB. There are more details on each step in the tutorial below.

<?php

// connect
$m = new Mongo();

// select a database
$db = $m->comedy;

// select a collection (analogous to a relational database's table)
$collection = $db->cartoons;

// add a record
$obj = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
$collection->insert($obj);

// add another record, with a different "shape"
$obj = array( "title" => "XKCD", "online" => true );
$collection->insert($obj);

// find everything in the collection
$cursor = $collection->find();

// iterate through the results
foreach ($cursor as $obj) {
    echo $obj["title"] . "\n";
}

?>

This would output:

Calvin and Hobbes
XKCD

Making a Connection

To connect to the database server, use one of the following:

<?php

$connection = new Mongo(); // connects to localhost:27017
$connection = new Mongo( "example.com" ); // connect to a remote host (default port)
$connection = new Mongo( "example.com:65432" ); // connect to a remote host at a given port

?>
You do not have to explicitly disconnect from the database. When $connection goes out of scope, the connection will be closed automatically and any database resources it was using will be freed.

See Also

The manual chapter on connecting covers different types of connections.

The API documentation on the Mongo class and Mongo::__construct() give a comprehensive look at all possible options with a number of examples.

Getting a Database

To select a database, use:

<?php

$db = $connection->dbname;

?>
The database does not need to be created in advance, you can create new databases by selecting them. Be careful of typos! You can inadvertently create a new database, which can cause confusing errors:
<?php

$db = $connection->mybiglongdbname;
// do some stuff
$db = $connection->mybiglongdbnme;
// now connected to a different database!

?>

See Also

The API documentation on the MongoDB class contains more information about database objects.

Getting A Collection

Getting a collection has the same syntax as getting a database:

<?php

$db = $connection->baz;
$collection = $db->foobar;

// or, more succinctly
$collection = $connection->baz->foobar;

?>

See Also

The API documentation on the MongoCollection class contains more information about collection objects.

Inserting a Document

Associative arrays are the basic object that can be saved to a collection in the database. A somewhat random "document" might be:

<?php

$doc = array( "name" => "MongoDB",
   "type" => "database",
   "count" => 1,
   "info" => (object)array( "x" => 203, "y" => 102),
   "versions" => array("0.9.7", "0.9.8", "0.9.9")
);

?>
Note that you can have nested arrays and objects.

To insert this document, use MongoCollection::insert():

<?php

$collection->insert( $doc );

?>

See Also

The API documentation on MongoCollection::insert() contains more information about inserting data.

Finding Documents using MongoCollection::findOne()

To show that the document we inserted in the previous step is there, we can do a simple MongoCollection::findOne() operation to get a single document from the collection. This method is useful when there only is one document matching the query or you are only interested in one result.

<?php

$obj = $collection->findOne();
var_dump( $obj );

?>
This should print:
array(5) {
  ["_id"]=>
  object(MongoId)#6 (0) {
  }
  ["name"]
  string(7) "MongoDB"
  ["type"]=>
  string(8) "database"
  ["count"]=>
  int(1)
  ["info"]=>
  array (2) {
    ["x"]=>
    int(203)
    ["y"]=>
    int(102)
  }
  ["versions"]
  array(3) {
    [0]=>
    string(5) "0.9.7"
    [1]=>
    string(5) "0.9.8"
    [2]=>
    string(5) "0.9.9"
  }
}

Note the _id field has been added automatically to your document. _id is the "primary key" field that is automatically populate for almost all documents in MongoDB.

See Also

The API documentation on MongoCollection::findOne() contains more information about finding data.

Adding Multiple Documents

In order to do more interesting things with queries, let's add multiple simple documents to the collection. These documents will just be

<?php

array( "i" => value );

?>
and we can do this fairly efficiently in a loop
<?php

for($i=0; $i<100; $i++) {
    $collection->insert( array( "i" => $i ) );
}

?>

Notice that we can insert arrays with different key sets into the same collection. This aspect is what we mean when we say that MongoDB is "schema-free".

Counting Documents in A Collection

Now that we've inserted 101 documents (the 100 we did in the loop, plus the first one), we can check to see if we have them all using the MongoCollection::count() method.

<?php

echo $collection->count();

?>
and it should print 101.

Using a Cursor to Get All of the Documents

In order to get all the documents in the collection, we will use MongoCollection::find(). The find() method returns a MongoCursor object which allows us to iterate over the set of documents that matched our query. So to query all of the documents and print them out:

<?php

$cursor = $collection->find();
foreach ($cursor as $id => $value) {
    echo "$id: ";
    var_dump( $value );
}

?>
and that should print all 101 documents in the collection. $id is the _id field of a document, and $value is the document itself.

See Also

The API documentation on MongoCollection::find() contains more information about finding data.

Setting Criteria for a Query

We can create a query to pass to the MongoCollection::find() method to get a subset of the documents in our collection. For example, if we wanted to find the document for which the value of the "i" field is 71, we would do the following:

<?php

$query = array( "i" => 71 );
$cursor = $collection->find( $query );

while( $cursor->hasNext() ) {
    var_dump( $cursor->getNext() );
}

?>
and it should just print just one document
array(2) {
  ["_id"]=>
  object(MongoId)#6 (0) {
  }
  ["i"]=>
  int(71)
  ["_ns"]=>
  "testCollection"
}

Getting A Set of Documents With a Query

We can use the query to get a set of documents from our collection. For example, if we wanted to get all documents where "i" > 50, we could write:

<?php

$query = array( "i" => array( '$gt' => 50 ) ); //note the single quotes around '$gt'
$cursor = $coll->find( $query );

while( $cursor->hasNext() ) {
    var_dump( $cursor->getNext() );
}

?>
which should print the documents where i > 50. We could also get a range, say 20 < i <= 30:
<?php

$query = array( "i" => array( "\$gt" => 20, "\$lte" => 30 ) );
$cursor = $coll->find( $query );

while( $cursor->hasNext() ) {
    var_dump( $cursor->getNext() );
}

?>
As it is easy to forget to escape the "$", you can also choose your own special character to use instead of '$'. Choose a character that will not occur in your key names, e.g. ":", and add the following line to php.ini:
mongo.cmd = ":"
Then the example above would look like:
<?php

$query = array( "i" => array( ":gt" => 20, ":lte" => 30 ) );

?>
You can also change it in your code using ini_set("mongo.cmd", ":"). Of course, you can also just use single quotes around the $.

Creating An Index

MongoDB supports indexes, and they are very easy to add on a collection. To create an index, you specify the field name and direction: ascending (1) or descending (-1). The following creates an ascending index on the "i" field:

<?php

$coll->ensureIndex( array( "i" => 1 ) );  // create index on "i"
$coll->ensureIndex( array( "i" => -1, "j" => 1 ) );  // index on "i" descending, "j" ascending

?>

Instalação
Connecting
Manual


Connecting

Connecting to MongoDB can be as easy as new Mongo, but there are many additional options and configurations. The Mongo::__construct() page covers all of the API options, but this page gives some more details and advice for practical use cases.

Logging In on Connection

If MongoDB is started with the --auth option, connections must be authenticated before they are used. You can do this on a per-database level with MongoDB::authenticate():

<?php

$m = new Mongo();
$db = $m->admin;

$db->authenticate($username, $password);

?>

There is a major disadvantage to this method: if the database connection is dropped and then reconnected, the connection will no longer be authenticated.

If you use the connection string format described by Mongo::__construct(), the database will authenticate on connection and reauthenticate if the connection is re-established.

This is equivalent to the code above, except that reconnections to the database will be authenticated automatically:

<?php

$m = new Mongo("mongodb://${username}:${password}@localhost");

?>

By default, the driver will authenticate the user against the admin database. To authenticate with a different database, specify the database name after the hosts. This example will log the user into the "blog" database:

<?php

$m = new Mongo("mongodb://${username}:${password}@localhost/blog");

?>

Replica Sets

To connect to a replica set, specify one or more members of the set and use the replicaSet option.

<?php

$m = new Mongo("mongodb://localhost:27017", array("replicaSet" => true));

?>

Version 1.0.9+ of the driver is required to connect to a replica set (earlier versions of the driver will not autodetect the master or reconnect correctly).

The PHP driver will query the database server(s) listed to figure out who is master. So long as it can connect to at least one host listed and find a master, the connection will succeed. If it cannot make a connection to any servers listed or cannot find a master, a MongoConnectionException will be thrown.

If the master becomes unavailable, the slaves will not promote a new master for a few seconds. During that time, this connection will not be able to perform any database operations (connections to slaves will still be able to perform reads). Thus, if you attempt to do any sort of read or write on this connection, it will throw an exception.

Once a master is elected, attempting to perform a read or write will allow the driver to detect the new master. The driver will make this its primary database connection and continue operating normally.

For more information on replica sets, see the » core documentation.

Persistent Connections

Creating new connection to the database is very slow. To minimize the number of connections that you need to make, you can use persistent connections. A persistent connection is saved by PHP, so you can use the same connection for multiple requests.

For example, this simple program connects to the database 1000 times:

<?php

for ($i=0; $i<1000; $i++) {
  $m = new Mongo();
}

?>

It takes approximately 18 seconds to execute. If we change it to use a persistent connection:

<?php

for ($i=0; $i<1000; $i++) {
  $m = new Mongo("localhost:27017", array("persist" => "x"));
}

?>

...it takes less than .02 seconds to execute, as it only makes one database connection.

Persistent connections need an identifier string (which is "x" in the above example) to uniquely identify them. For a persistent connection to be used, the hostname, port, persist string, and username and password (if given) must match an existing persistent connection. Otherwise, a new connection will be created with this identifying information.

Persistent connections are highly recommended and should always be used in production unless there is a compelling reason not to. Most of the reasons that they are not recommended for relational databases are irrelevant to MongoDB.

Persistent connections will become the default connection type in 1.0.12. To create a non-persistent connection, you will need to pass "persist" => false to Mongo::__construct().

Domain Socket Support

If you are running MongoDB locally and have version 1.0.9 or better of the driver, you can connect to the database via file. MongoDB automatically opens a socket file on startup: /tmp/mongodb-<port>.sock.

To connect to the socket file, specify the path in your MongoDB connection string:

<?php

$m = new Mongo("mongodb:///tmp/mongo-27017.sock");

?>

If you would like to use authentication on connection (as described above) with a socket file, you must specify a port of 0 so that the connection string parser knows where the end of the connection string is.

<?php

$m = new Mongo("mongodb://username:password@/tmp/mongo-27017.sock:0/foo");

?>
Tutorial
Writes
Manual


Writes

Safe Operations

By default, the driver does not wait for a database response to writes (inserts, updates, and deletes). This means that writes can be performed extremely quickly, but you don't know whether or not they actually succeeded. Writes can fail for a number of reasons: if there are network problems, if a database server goes down, or if the write was simply invalid (e.g., writing to a system collection).

To get a response from the database, use the safe option, available for all types of writes. This option will make sure that the database has the write before returning success. If the write failed, it will throw a MongoCursorException() with an explanation of the failure.

While developing, you should always use safe writes (to protect against inadvertent mistakes, such as duplicate key errors and similar). In production, unsafe writes can be used for "unimportant" data. Unimportant data varies on application, but it's generally automatically (instead of user generated) data, such as click tracking or GPS locations, where you can get thousands of records per second.

To safely perform writes without incurring too large a performance penalty, it is recommended that you do a safe write at the end of a series of writes. For example:

$collection->insert($someDoc);
$collection->update($criteria, $newObj);
$collection->insert($somethingElse);
$collection->remove($something, array("safe" => true));

Then, if the last write throws an exception, you know that there's a problem with your database.

There are a few other options available to ensure the safety of writes. You can specify "fsync" => true to force the database to fsync all writes up to this point to disk (by default, MongoDB fsyncs writes once per minute).

The safest way of doing a write is to use replication and specify the number of servers that must have this write before returning success. (You should always use replication in production, see the Connecting section for more information on replica sets.)

$collection->insert($someDoc, array("safe" => 3));

If you specify "safe" => N, the MongoDB server will make sure that at least N servers have a copy of the write before returning success. So, if N is 3, the master and two slaves must have the write.

Updating Nested Objects

Suppose we wish to change the name of a comment's author in this document:

{
    "_id" : ObjectId("4b06c282edb87a281e09dad9"),
    "content" : "this is a blog post.",
    "comments" :
    [
        {
            "author" : "Mike",
            "comment" : "I think that blah blah blah...",
        },
        {
            "author" : "John",
            "comment" : "I disagree."
        }
    ]
}
In order to change an inner field, we use $set (so that all of the other fields are not removed!) with the index of comment to change:
<?php

$blog->update($criteria, array('$set' => array("comments.1" => array("author" => "Jim"))));

?>

The Positional Operator

The positional operator $ is useful for updating objects that are in arrays. In the example above, for instance, suppose that we did not know the index of the comment that we needed to change, merely that we needed to change "John" to "Jim". We can use $ to do so.

<?php

$blog->update(
    array("comments.author" => "John"),
    array('$set' => array('comments.$.author' => "Jim")));

?>
Connecting
Querying
Manual


Querying

Distributing queries to slaves

Nota: 1.1.0+

If you are using a » replica set and version 1.1.0 or above of the driver, the driver can automatically route reads to slaves. This behavior does not exist in earlier versions of the driver and cannot be used with "normal" master-slave.

By default, the driver will send all queries to the master. If you set the "slaveOkay" option, the driver will send all queries to a non-primary server, if possible. The "slaveOkay" option can be set at every "level": connection, database, collection, and cursor. Each class inherits the "slaveOkay" setting from the class above it, so if you do:

<?php

$db->setSlaveOkay(true);
$c = $db->myCollection;

$cursor = $c->find();

?>

then the query will be executed against a slave (the collection inherited "slaveOkay" from the database and the cursor inherited it from the collection).

How slaves are chosen

Each instance of Mongo gets its own slave, randomly chosen from the readable slaves. This holds, even if you are using persistent connections. So, if we do something like:

<?php

// connects to a replica set with members ip0, ip1, and ip2
// ip0 is the primary, ip1 and ip2 are secondaries
$m1 = new Mongo("mongodb://ip0", array("replicaSet" => true, "persist" => "x"));
echo "m1's slave is ".$m1->getSlave()."\n";

// uses the same connection as $m1
$m2 = new Mongo("mongodb://ip0", array("replicaSet" => true, "persist" => "x"));
echo "m2's slave is ".$m2->getSlave()."\n";

?>

we'd probably end up with something like:

m1's slave is: ip2
m2's slave is: ip1

If we continued to create new Mongos, we should get a fairly even distribution between ip1 and ip2. Keep in mind that all secondaries listed by the isMaster() command will be in the pool of possible readers (even ones with priority 0 or slaveDelay set). If you have certain servers you do not wish to read from, either route reads manually or add the hidden option to the server's replica set configuration.

Slaves are chosen on a per-instance basis and do no change (unless something bad happens to your set and they are forced to).

You can see what the driver thinks is the current status of the set members by running Mongo::getHosts().

If no non-primary server is readable, the driver will send reads to the primary (even if "slaveOkay" is set). A server is considered readable if its state is 2 (SECONDARY) and its health is 1. You can check this with Mongo::getHosts() (some fields omitted for clarity):

Array
(
    [ubuntu:27017] => Array
        (
            [_id] => 0
            [name] => ip0
            [health] => 1
            [state] => 1
            [stateStr] => PRIMARY
        )

    [ubuntu:27019] => Array
        (
            [_id] => 2
            [name] => ip1
            [health] => 1
            [state] => 2
            [stateStr] => SECONDARY
        )

    [ubuntu:27018] => Array
        (
            [_id] => 1
            [name] => ip2
            [health] => 1
            [state] => 2
            [stateStr] => SECONDARY
        )

)

The set above has two readable servers, "ip1" and "ip2". If both of these went down or became stale, reads would go to "ip0".

If you enjoy twiddling knobs that you probably shouldn't mess with, you can force the driver to use a different slave by calling Mongo::switchSlave(). This randomly chooses a new slave to use and shouldn't be used unless you know what you're doing.

Random notes

Writes are always sent to the primary. Database commands, even read-only commands, are also always sent to the primary.

The health and state of a slave is checked every 5 seconds or when the next operation occurs after 5 seconds. It will also recheck the configuration when the driver has a problem reaching a server. You can manually force the driver to update the status by calling Mongo::getHosts().

Note that a non-primary server may be behind the primary in operations, so your application must be okay with getting out-of-date data (or you must use w for all writes).

Querying by _id

Every object inserted is automatically assigned a unique _id field, which is often a useful field to use in queries.

Suppose that we wish to find the document we just inserted. Inserting adds and _id field to the document, so we can query by that:

<?php

$person = array("name" => "joe");

$people->insert($person);

// now $joe has an _id field
$joe = $people->findOne(array("_id" => $person['_id']));

?>

Unless the user has specified otherwise, the _id field is a MongoId. The most common mistake is attepting to use a string to match a MongoId. Keep in mind that these are two different datatypes, and will not match each other in the same way that the string "array()" is not the same as an empty array. For example:

<?php

$person = array("name" => "joe");

$people->insert($person);

// convert the _id to a string
$pid = $person['_id'] . "";

// FAILS - $pid is a string, not a MongoId
$joe = $people->findOne(array("_id" => $pid));

?>

Arrays

Arrays are special in a couple ways. First, there are two types that MongoDB uses: "normal" arrays and associative arrays. Associative arrays can have any mix of key types and values. "Normal" arrays are defined as arrays with ascending numeric indexes starting at 0 and increasing by one for each element. These are, typically, just your usual PHP array.

For instance, if you want to save a list of awards in a document, you could say:

<?php

$collection->save(array("awards" => array("gold", "silver", "bronze")));

?>

Queries can reach into arrays to search for elements. Suppose that we wish to find all documents with an array element of a given value. For example, documents with a "gold" award, such as:

{ "_id" : ObjectId("4b06c282edb87a281e09dad9"), "awards" : ["gold", "silver", "bronze"]}

This can be done with a simple query, ignoring the fact that "awards" is an array:

<?php

  $cursor = $collection->find(array("awards" => "gold"));

?>

Suppose we are querying for a more complex object, if each element of the array were an object itself, such as:

{
     "_id" : ObjectId("4b06c282edb87a281e09dad9"),
     "awards" :
     [
        {
            "first place" : "gold"
        },
        {
            "second place" : "silver"
        },
        {
            "third place" :  "bronze"
        }
     ]
}

Still ignoring that this is an array, we can use dot notation to query the subobject:

<?php

$cursor = $collection->find(array("awards.first place" => "gold"));

?>

Notice that it doesn't matter that there is a space in the field name (although it may be best not to use spaces, just to make things more readable).

You can also use an array to query for a number of possible values. For instance, if we were looking for documents "gold" or "copper", we could do:

<?php

$cursor = $collection->find(array("awards" => array('$in' => array("gold", "copper"))));

?>
Writes
Updates
Manual


Updates

Updates can be one of the most complicated operation available with MongoDB. They combine a query with an action, modifying documents that match the criteria. They are also extremely powerful, allowing you to change documents quickly and replace them altogether. They are done in-place (when possible) with little overhead.

Modifying vs. replacing documents

There are two types of updates you can use: modifying updates and replacing updates. Modifying updates contain $-operators and change fields in a document: they might increment counters, push new elements onto an array, or change the type of a field.

For example, a modifying update could add a new field to a document.

/** suppose documents look like:
 * {"username" : "...", "password" : "...", "email" : "..."}
 */
$coll->update(array("username" => "joe"), array('$set' => array("twitter" => "@joe4153")));

/** now the document will look like:
 * {"username" : "joe", "password" : "...", "email" : "...", "twitter" : "@joe4153"}
 */

Replacing updates replace the entire matching document with a new document. They are generally not as efficient as using $-modifiers, but can be very usefully for complex operations or updates that can't be expressed in terms of $-operators.

For example, a replacing update can completely change the structure of a document.

/** suppose documents look like:
 * {"username" : "...", "password" : "...", "email" : "..."}
 */
$coll->update(array("username" => "joe"), array("userId" => 12345, "info" => array(
    "name" => "joe", "twitter" => "@joe4153", "email" => "..."), "likes" => array()));

/** now the document will look like:
 * {
 *     "userId" : 12345,
 *     "info" : {
 *         "name" : "joe",
 *         "twitter" : "@joe4153",
 *         "email" : "..."
 *     },
 *     "likes" : []
 * }
 */

Updating Nested Objects

Suppose we wish to change the name of a comment's author in this document:

{
    "_id" : ObjectId("4b06c282edb87a281e09dad9"),
    "content" : "this is a blog post.",
    "comments" :
    [
        {
            "author" : "Mike",
            "comment" : "I think that blah blah blah...",
        },
        {
            "author" : "John",
            "comment" : "I disagree."
        }
    ]
}
In order to change an inner field, we use $set (so that all of the other fields are not removed!) with the index of comment to change:
<?php

$blog->update($criteria, array('$set' => array("comments.1" => array("author" => "Jim"))));

?>

The Positional Operator

The positional operator $ is useful for updating objects that are in arrays. In the example above, for instance, suppose that we did not know the index of the comment that we needed to change, merely that we needed to change "John" to "Jim". We can use $ to do so.

<?php

$blog->update(
    array("comments.author" => "John"),
    array('$set' => array('comments.$.author' => "Jim")));

?>
Querying
php.ini Options
Manual


php.ini Options

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Mongo Opções de Configuração
Nome | Padrão | Modificável
mongo.native_long | false* | PHP_INI_ALL
mongo.long_as_object | false | PHP_INI_ALL
mongo.default_host | "localhost" | PHP_INI_ALL
mongo.default_port | 27017 | PHP_INI_ALL
mongo.auto_reconnect | true | PHP_INI_SYSTEM
mongo.allow_persistent | true | PHP_INI_SYSTEM
mongo.chunk_size | 262144 | PHP_INI_SYSTEM
mongo.cmd | "$" | PHP_INI_ALL
mongo.utf8 | "1" | PHP_INI_ALL
mongo.allow_empty_keys | false | PHP_INI_ALL
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mongo.native-long int

The default behavior for this will be changed to TRUE in 2.0.0, so make sure to set this variable to the value you want (probably TRUE) so that the driver's behavior doesn't suddenly change when you upgrade.

On 64-bit platforms, the mongo.native_long setting allows for 64-bit integers to be stored in MongoDB. If it is not set, only 32-bits of the integer will be saved. The MongoDB data type that is used in this case is the BSON LONG, instead of the BSON INT that is used if this setting is turned off.

The setting also changes the way how BSON LONGs behave when they are read back from MongoDB. Without mongo.native_long enabled, the driver would convert every BSON LONG to a PHP double which can result in a loss of precision.

On 32-bit platforms, the mongo.native_log setting changes nothing for storing integers in MongoDB: the integer is stored as a BSON INT as before. However, when the setting is enabled and a BSON LONG is read from MongoDB a MongoCursorException is thrown alerting you that the data could not be read back without losing precision.

On 32-bit systems especially, it is recommended that you combine this with enabling mongo.long_as_object.

mongo.long_as_object string

Return a BSON_LONG as an instance of MongoInt64 (instead of a primitive type).

mongo.default_host string

Default hostname when nothing is passed to the constructor.

mongo.default_port string

The default TCP port number to use when connecting to the database server if no other port is specified. The database's default is 27017.

mongo.auto_reconnect bool

Whether to reconnect to the database if the connection is lost.

mongo.allow_persistent bool

If persistent connections are allowed.

mongo.chunk_size int

The number of bytes-per-chunk. Used in divvying up GridFS files. This number must be at least 100 less than 4 megabytes (max: 4194204) and it is recommended that it be less than that.

mongo.cmd string

A character to be used in place of $ in modifiers and comparisons.

mongo.utf8 int

If an exception should be thrown for non-UTF8 strings. Until version 1.0.4, the PHP driver would ignore non-UTF8 strings, even though you're not supposed to insert them. As of 1.0.4, the driver throws a MongoException. To ease the transition for applications that insert non-UTF8 strings, you can turn this option off to emulate the old, non-exception-throwning behavior. This option will be eliminated and exceptions always thrown for non-UTF8 strings starting with version 1.1.0.

mongo.allow_empty_keys int

Added in version 1.0.11.

If empty strings ("") should be allowed as key names. By default, the driver will throw an exception if you attempt to pass the empty string as a key to the database. It is extremely easy to do this inavertently by using double quotes with $-operators, so it is recommended that you leave this setting as default. However, if you need to save keys that are empty strings, you can set this option to true and the driver will allow you to pass empty strings to the database.

Updates
Security
Manual


Security

Request Injection Attacks

If you are passing $_GET parameters to your queries, make sure that they are cast to strings first. Users can insert associative arrays in GET requests, which could then become unwanted $-queries.

A fairly innocuous example: suppose you are looking up a user's information with the request http://www.example.com?username=bob. Your application does the query $collection->find(array("username" => $_GET['username'])).

Someone could subvert this by getting http://www.example.com?username[$ne]=foo, which PHP will magically turn into an associative array, turning your query into $collection->find(array("username" => array('$ne' => "foo"))), which will return all users not named "foo" (all of your users, probably).

This is a fairly easy attack to defend against: make sure $_GET's parameters are the type you expect before you send them to the database (cast them to strings, in this case).

Thanks to » Phil for pointing this out.

See » the main documentation for more information about SQL-injection-like issues with MongoDB.

php.ini Options
Running the Driver's Tests
Manual


Running the Driver's Tests

The PECL package does not come with the PHP tests, but they are available at » Github. Download the driver source and there are tests in the tests/ directory. The driver uses » PHPUnit for testing, which can be installed via PEAR.

You must set error_reporting in php.ini to E_STRICT | E_ALL for all of the tests to pass. If you do not, you will get some failures that say the test was expecting a warning or error.

To run the tests, make sure that there is a MongoDB server running locally on port 27017. Make sure you're in the main directory of the driver source you downloaded from Github. Run:

$ phpunit tests/MongoSuite.php

Please report any failures or errors in the » bugtracker. There may be skipped tests, these are normal and can be ignored.

New tests are always welcome! Please feel free to contribute new tests of any type testing any functionality.

Security
Troubleshooting
Manual


Troubleshooting

If you're having trouble, there are lots of resources you can turn to.

  • IRC

    The official MongoDB IRC room is irc.freenode.net/#mongodb. This is the fastest way to get help... if there are people around.

  • Mailing List

    » MongoDB's mailing list is a good (and usually very fast) way to get answers to questions.

  • Bug Tracker

    Found a bug? Want a feature? Have a question? File it in the » PHP driver's bug tracker.

You can turn on (very) verbose debugging output by compiling the driver with the debugging flag.

$ ./configure CFLAGS=-DDEBUG

DEBUG turns on all debugging. You can also turn on specific debug flags. In the latest code, these flags are:

  • DEBUG_CONN

    Debugging connections.

Running the Driver's Tests
Core Classes
Manual


Core Classes

Índice

  • Mongo
  • MongoDB
  • MongoCollection
  • MongoCursor

The core classes are the most important part of the driver.

Troubleshooting
Mongo
Mongo


The Mongo class

Introdução

A connection between PHP and MongoDB.

This class is used to create and manage connections. A typical use is:

<?php

$m = new Mongo(); // connect
$db = $m->foo; // get the database named "foo"

?>

See Mongo::__construct() and the section on connecting for more information about creating connections.

Sinopse da classe

Mongo {
/* Constants */
const string Mongo::VERSION ;
const string Mongo::DEFAULT_HOST = "localhost" ;
const int Mongo::DEFAULT_PORT = 27017 ;
/* Fields */
public boolean $connected = FALSE ;
public string $status = NULL ;
protected string $server = NULL ;
protected boolean $persistent = NULL ;
/* Methods */
public bool close ( void )
public bool connect ( void )
protected bool connectUtil ( void )
__construct ([ string $server = "mongodb://localhost:27017" [, array $options = array("connect" => TRUE) ]] )
public array dropDB ( mixed $db )
public MongoDB __get ( string $dbname )
public array getHosts ( void )
public string getSlave ( void )
public bool getSlaveOkay ( void )
public array listDBs ( void )
public MongoCollection selectCollection ( string $db , string $collection )
public MongoDB selectDB ( string $name )
public bool setSlaveOkay ([ bool $ok ] )
public string switchSlave ( void )
public string __toString ( void )
}

Constantes pré-definidas

Mongo Constants

Mongo::VERSION
PHP driver version. May be suffixed with "+" or "-" if it is in-between versions.
Mongo::DEFAULT_HOST
"localhost"
Host to connect to if no host is given.
Mongo::DEFAULT_PORT
27017
Port to connect to if no port is given.

Fields

status
If this is a persistent connection, if the connection was created for this object or is being reused. If this is not a persistent connection, this field should be NULL.

Veja Também

MongoDB core docs on » connecting.

Índice

  • Mongo::close — Closes this connection
  • Mongo::connect — Connects to a database server
  • Mongo::connectUtil — Connects with a database server
  • Mongo::__construct — Creates a new database connection object
  • Mongo::dropDB — Drops a database [deprecated]
  • Mongo::__get — Gets a database
  • Mongo::getHosts — Updates status for all hosts associated with this
  • Mongo::getSlave — Returns the address being used by this for slaveOkay reads
  • Mongo::getSlaveOkay — Get slaveOkay setting for this connection
  • Mongo::listDBs — Lists all of the databases available.
  • Mongo::selectCollection — Gets a database collection
  • Mongo::selectDB — Gets a database
  • Mongo::setSlaveOkay — Change slaveOkay setting for this connection
  • Mongo::switchSlave — Choose a new slave for slaveOkay reads
  • Mongo::__toString — String representation of this connection
Core Classes
Mongo::close
Core Classes


Closes this connection

Mongo
Mongo::connect
Mongo
PHP Manual

Mongo::close

(PECL mongo >=0.9.0)

Mongo::close — Closes this connection

Descrição

public bool Mongo::close ( void )

This method does not need to be called, except in unusual circumstances. The driver will cleanly close the database connection when this Mongo instance goes out of scope.

If objects do not go out of scope between requests, you may wish to call this method at the end of your program to keep old connections from hanging around. However, it is probably more efficient use a persistent connection, which will automatically create a connection if needed and use it for as many requests as possible.

If you are connected to a replica set, close() will only close the connection to the primary.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns if the connection was successfully closed.

Mongo
Mongo::connect
Mongo


Connects to a database server

Mongo::close
Mongo::connectUtil
Mongo
PHP Manual

Mongo::connect

(PECL mongo >=0.9.0)

Mongo::connect — Connects to a database server

Descrição

public bool Mongo::connect ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

If the connection was successful.

Erros

Throws MongoConnectionException if it fails to connect to the database.

Mongo::close
Mongo::connectUtil
Mongo


Connects with a database server

Mongo::connect
Mongo::__construct
Mongo
PHP Manual

Mongo::connectUtil

(PECL mongo >=0.9.0)

Mongo::connectUtil — Connects with a database server

Descrição

protected bool Mongo::connectUtil ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

If the connection was successful.

Erros

Throws MongoConnectionException if it fails to connect to the databases.

Mongo::connect
Mongo::__construct
Mongo


Creates a new database connection object

Mongo::connectUtil
Mongo::dropDB
Mongo
PHP Manual

Mongo::__construct

(PECL mongo >=0.9.0)

Mongo::__construct — Creates a new database connection object

Descrição

  Mongo::__construct
  ([ string $server = "mongodb://localhost:27017"
 [, array $options = array("connect" => TRUE)
]] )

If no parameters are passed, this connects to "localhost:27017" (or whatever was specified in php.ini for mongo.default_host and mongo.default_port).

server should have the form:

mongodb://[username:password@]host1[:port1][,host2[:port2:],...]/db

The connection string always starts with mongodb://, to indicate it is a connection string in this form.

If username and password are specified, the constructor will attempt to authenticate the connection with the database before returning. Username and password are optional and must be followed by an @, if specified.

At least one host must be given (port optional, always defaulting to 27017) and as many hosts as desired may be connected to. Host names are comma-separated and the constructor will return successfully if it connected to at least one host. If it could not connect to any of the hosts, it will throw a MongoConnectionException.

Finally, if you specified a username and password, you may specify a database to authenticate with. If db is not specified, "admin" will be used.

Parâmetros

server

The server name.

options

An array of options for the connection. Currently available options include:

  • "connect"

    If the constructor should connect before returning. Default is TRUE.

  • "persist"

    If the connection should be persistent. If set, the connection will be persistent. The string representation of the value is used as an id for the connection, so two instances of Mongo that are initialized with array("persist" => "foobar") will share the same database connection, whereas an instance initialized with array("persist" => "barbaz") will use a different database connection.

  • "timeout"

    For how long the driver should try to connect to the database (in milliseconds).

  • "replicaSet"

    If this hosts listed are seeds of a replica set. If they are, the master will be determined by using the ismaster database command on the seeds, so the driver may end up connecting to a server that was not even listed. See the replica set example below for details.

  • "username"

    The username can be specified here, instead of including it in the host list. This is especially useful if a username has a ":" in it.

  • "password"

    The password can be specified here, instead of including it in the host list. This is especially useful if a password has a "@" in it.

Valor Retornado

Returns a new database connection object.

Erros

Throws MongoConnectionException if it tries and fails to connect to the database for all hostnames given. It will also throw a MongoConnnectionException if an invalid username or password is given. See MongoConnectionException documentation for common exceptions and their causes.

Histórico

Versão | Descrição
1.0.2 Changed constructor to take an array of options. Pre-1.0.2, the constructor took the following parameters:
server

The server name.

connect

Optional boolean parameter specifying if the constructor should connect to the database before returning. Defaults to TRUE.

persistent

If the connection should be persistent.

paired

If the connection should be paired.

1.0.9 | Added the replicaSet option.
1.2.0 | Added the username and password options.

Exemplos

Exemplo #1 Mongo::__construct() replica set example

This example shows how to connect the driver to a replica set. It assumes that there is a set of three servers: sf1.example.com, sf2.example.com, and ny1.example.com. The master could be any one of these servers.

<?php

// pass a comma-separated list of server names to the constructor
$m1 = new Mongo("mongodb://sf2.example.com,ny1.example.com", array("replicaSet" => true));

// you only need to pass a single seed, the driver will derive the full list and
// find the master from this seed
$m2 = new Mongo("mongodb://ny1.example.com", array("replicaSet" => true));

?>

If the current master fails, the driver will figure out which secondary server became the new master and automatically start using that connection. Automatic failover will not work correctly if replicaSet is not specified.

At least one seed in the seed list must be up for the driver to connect to the replica set.

If you include seeds from two separate replica sets, behavior is undefined.

See the » core documentation on replica sets for more information.

Exemplo #2 Connecting to a domain socket

In version 1.0.9+, you can use a UNIX domain socket to connect to an instance of MongoDB running locally. This should be slightly faster than using a network connection.

In version 1.5.0, the MongoDB server automatically opens a socket at /tmp/mongodb-<port>.sock. You can connect to this by specifying the path in your connection string:

<?php

// MongoDB server running locally on port 20000
$m = new Mongo("mongodb:///tmp/mongodb-20000.sock");

?>

You can combine this with any other connections you'd like:

<?php

// try to connect to the domain socket, fall back to localhost connection
$m = new MongoDB("mongodb:///tmp/mongodb-27017.sock,localhost:27017");

?>

Exemplo #3 Mongo::__construct() persistent connection example

A persistent connection will last for more than one request (usually... milage may vary depending on server). It can save significant time to reuse connections, as creating a connection is a time-intensive process.

A persistent connection is identified by the server string and an id string.

<?php

// creates a persistent connection
$m1 = new Mongo("mongodb://localhost", array("persist" => ""));

// uses the same connection as $m1
$m2 = new Mongo("mongodb://localhost", array("persist" => ""));

// creates a new connection
$m3 = new Mongo("mongodb://127.0.0.1", array("persist" => ""));

// creates a new connection
$m4 = new Mongo("mongodb://127.0.0.1:27017", array("persist" => ""));

// creates a new connection
$m5 = new Mongo("mongodb://localhost", array("persist" => "foo"));

// uses the $m5 connection
$m6 = new Mongo("mongodb://localhost", array("persist" => "foo"));

?>

Exemplo #4 Mongo::__construct() authentication example

A user must exist in the admin database before attempting to use authentication. You can create one with the Mongo shell by running:

> use admin
switched to db admin
> db.addUser("testUser", "testPass");
{
        "_id" : ObjectId("4b21272fd9ab21611d19095c"),
        "user" : "testUser",
        "pwd" : "03b9b27e0abf1865e2f6fcbd9845dd59"
}
>

After creating a user with, in this case, username "testUser" and password "testPass", you can create an authenticated connection:

<?php

$m = new Mongo("mongodb://testUser:testPass@localhost");

?>
Mongo::connectUtil
Mongo::dropDB
Mongo


Drops a database [deprecated]

Mongo::__construct
Mongo::__get
Mongo
PHP Manual

Mongo::dropDB

(PECL mongo >=0.9.0)

Mongo::dropDB — Drops a database [deprecated]

Descrição

public array Mongo::dropDB ( mixed $db )
Aviso

Deprecated

Use MongoDB::drop() instead.

Parâmetros

db

The database to drop. Can be a MongoDB object or the name of the database.

Valor Retornado

Returns the database response.

Mongo::__construct
Mongo::__get
Mongo


Gets a database

Mongo::dropDB
Mongo::getHosts
Mongo
PHP Manual

Mongo::__get

(PECL mongo >=1.0.2)

Mongo::__get — Gets a database

Descrição

public MongoDB Mongo::__get ( string $dbname )

This is the cleanest way of getting a database. If the database name has any special characters, Mongo::selectDB() will need to be used. However, in most cases, this should be sufficient.

<?php

$mongo = new Mongo();

// the following two lines are equivalent
$db = $mongo->selectDB("foo");
$db = $mongo->foo;

?>

Parâmetros

dbname

The database name.

Valor Retornado

Returns a new db object.

Erros

Throws a generic exception if the database name is invalid.

Mongo::dropDB
Mongo::getHosts
Mongo


Updates status for all hosts associated with this

Mongo::__get
Mongo::getSlave
Mongo
PHP Manual

Mongo::getHosts

(PECL mongo >=1.1.0)

Mongo::getHosts — Updates status for all hosts associated with this

Descrição

public array Mongo::getHosts ( void )

This method can only be used with a connection to a replica set. It returns the status of all of the hosts in the set and updates the connection information (the updating is invisible to the user).

This is called automatically by the driver every five seconds.

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of information about the hosts in the set. Includes each host's hostname, id in the set, health (1 is healthy), the uptime, and how up-to-date the host is compared to the primary. For example, on a three-member replica set running locally, it might look something like:

Array
(
    [ubuntu:27017] => Array
        (
            [_id] => 0
            [name] => ubuntu:27017
            [health] => 1
            [state] => 1
            [stateStr] => PRIMARY
            [optime] => MongoTimestamp Object
                (
                    [sec] => 1
                    [inc] => 1291155754
                )

            [optimeDate] => MongoDate Object
                (
                    [sec] => 1291155754
                    [usec] => 0
                )

            [self] => 1
        )

    [ubuntu:27019] => Array
        (
            [_id] => 2
            [name] => ubuntu:27019
            [health] => 1
            [state] => 2
            [stateStr] => SECONDARY
            [uptime] => 91928
            [optime] => MongoTimestamp Object
                (
                    [sec] => 1
                    [inc] => 1291155754
                )

            [optimeDate] => MongoDate Object
                (
                    [sec] => 1291155754
                    [usec] => 0
                )

            [lastHeartbeat] => MongoDate Object
                (
                    [sec] => 1291158846
                    [usec] => 0
                )

        )

    [ubuntu:27018] => Array
        (
            [_id] => 1
            [name] => ubuntu:27018
            [health] => 1
            [state] => 2
            [stateStr] => SECONDARY
            [uptime] => 91944
            [optime] => MongoTimestamp Object
                (
                    [sec] => 1
                    [inc] => 1291155754
                )

            [optimeDate] => MongoDate Object
                (
                    [sec] => 1291155754
                    [usec] => 0
                )

            [lastHeartbeat] => MongoDate Object
                (
                    [sec] => 1291158846
                    [usec] => 0
                )

        )

)

This returns NULL if the connection is not connected to a replica set or has not been initialized, yet.

Mongo::__get
Mongo::getSlave
Mongo


Returns the address being used by this for slaveOkay reads

Mongo::getHosts
Mongo::getSlaveOkay
Mongo
PHP Manual

Mongo::getSlave

(PECL mongo >=1.1.0)

Mongo::getSlave — Returns the address being used by this for slaveOkay reads

Descrição

public string Mongo::getSlave ( void )

This finds the address of the slave currently being used for reads. It is a read-only method: it does not change anything about the internal state of the object.

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The address of the slave this connection is using for reads.

This returns NULL if this is not connected to a replica set or not yet initialized.

Mongo::getHosts
Mongo::getSlaveOkay
Mongo


Get slaveOkay setting for this connection

Mongo::getSlave
Mongo::listDBs
Mongo
PHP Manual

Mongo::getSlaveOkay

(PECL mongo >=1.1.0)

Mongo::getSlaveOkay — Get slaveOkay setting for this connection

Descrição

public bool Mongo::getSlaveOkay ( void )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the value of slaveOkay for this instance.

Mongo::getSlave
Mongo::listDBs
Mongo


Lists all of the databases available.

Mongo::getSlaveOkay
Mongo::selectCollection
Mongo
PHP Manual

Mongo::listDBs()

(No version information available, might only be in SVN)

— Lists all of the databases available.

Descrição

public array Mongo::listDBs ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an associative array containing three fields. The first field is databases, which in turn contains an array. Each element of the array is an associative array corresponding to a database, giving the database's name, size, and if it's empty. The other two fields are totalSize (in bytes) and ok, which is 1 if this method ran successfully.

Exemplos

Exemplo #1 Mongo::listDBs() example

Example demonstrating how to use listDBs and the returned data structure.

<?php

$mongo = new Mongo();
$dbs = $mongo->listDBs();
print_r($dbs);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [databases] => Array
        (
            [0] => Array
                (
                    [name] => doctrine
                    [sizeOnDisk] => 218103808
                    [empty] =>
                )
        )

    [totalSize] => 218103808
    [ok] => 1
)
Mongo::getSlaveOkay
Mongo::selectCollection
Mongo


Gets a database collection

Mongo::listDBs
Mongo::selectDB
Mongo
PHP Manual

Mongo::selectCollection()

(No version information available, might only be in SVN)

— Gets a database collection

Descrição

public MongoCollection Mongo::selectCollection ( string $db , string $collection )

Parâmetros

db

The database name.

collection

The collection name.

Valor Retornado

Returns a new collection object.

Erros

Throws InvalidArgumentException if the database or collection name is invalid.

Exemplos

Exemplo #1 Mongo::selectCollection() example

<?php
$m = new Mongo();

$c1 = $m->selectCollection("foo", "bar.baz");
// which is equivalent to
$c2 = $m->selectDB("foo")->selectCollection("bar.baz");

// $c1 and $c2 now represent the same collection
?>
Mongo::listDBs
Mongo::selectDB
Mongo


Gets a database

Mongo::selectCollection
Mongo::setSlaveOkay
Mongo
PHP Manual

Mongo::selectDB

(PECL mongo >=0.9.0)

Mongo::selectDB — Gets a database

Descrição

public MongoDB Mongo::selectDB ( string $name )

Parâmetros

name

The database name.

Valor Retornado

Returns a new db object.

Erros

Throws InvalidArgumentException if the database name is invalid.

Mongo::selectCollection
Mongo::setSlaveOkay
Mongo


Change slaveOkay setting for this connection

Mongo::selectDB
Mongo::switchSlave
Mongo
PHP Manual

Mongo::setSlaveOkay

(PECL mongo >=1.1.0)

Mongo::setSlaveOkay — Change slaveOkay setting for this connection

Descrição

public bool Mongo::setSlaveOkay ([ bool $ok ] )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

ok

If reads should be sent to secondary members of a replica set for all possible queries using this Mongo instance.

Valor Retornado

Returns the former value of slaveOkay for this instance.

Mongo::selectDB
Mongo::switchSlave
Mongo


Choose a new slave for slaveOkay reads

Mongo::setSlaveOkay
Mongo::__toString
Mongo
PHP Manual

Mongo::switchSlave

(PECL mongo >=1.1.0)

Mongo::switchSlave — Choose a new slave for slaveOkay reads

Descrição

public string Mongo::switchSlave ( void )

This choses a random slave for a connection to read from. It is called automatically by the driver and should not need to be used. It calls Mongo::getHosts() (to refresh the status of hosts) and Mongo::getSlave() (to get the return value).

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The address of the slave this connection is using for reads. This may be the same as the previous address as addresses are randomly chosen. It may return only one address if only one secondary (or only the primary) is available.

For example, if we had a three member replica set with a primary, secondary, and arbiter this method would always return the address of the secondary. If the secondary became unavailable, this method would always return the address of the primary. If the primary also became unavailable, this method would throw an exception, as an arbiter cannot handle reads.

Erros

Throws a MongoException (error code 15) if it is called on a non-replica-set connection. It will also throw MongoExceptions if it cannot find anyone (primary or secondary) to read from (error code 16).

Mongo::setSlaveOkay
Mongo::__toString
Mongo


String representation of this connection

Mongo::switchSlave
MongoDB
Mongo
PHP Manual

Mongo::__toString

(PECL mongo >=0.9.0)

Mongo::__toString — String representation of this connection

Descrição

public string Mongo::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns hostname and port for this connection.

Mongo::switchSlave
MongoDB
Mongo


The MongoDB class

Introdução

Instances of this class are used to interact with a database. To get a database:

<?php

$m = new Mongo(); // connect
$db = $m->selectDB("example");

?>
Database names can use almost any character in the ASCII range. However, they cannot contain " ", "." or be the empty string. The name "system" is also reserved.

A few unusual, but valid, database names: "null", "[x,y]", "3", "\"", "/".

Unlike collection names, database names may contain "$".

Sinopse da classe

MongoDB {
/* Constants */
const int MongoDB::PROFILING_OFF = 0 ;
const int MongoDB::PROFILING_SLOW = 1 ;
const int MongoDB::PROFILING_ON = 2 ;
/* Fields */
public integer $w = 1 ;
public integer $wtimeout = 10000 ;
/* Methods */
public array authenticate ( string $username , string $password )
public array command ( array $command )
__construct ( Mongo $conn , string $name )
public MongoCollection createCollection ( string $name [, bool $capped = FALSE [, int $size = 0 [, int $max = 0 ]]] )
public array createDBRef ( string $collection , mixed $a )
public array drop ( void )
public array dropCollection ( mixed $coll )
public array execute ( mixed $code [, array $args = array() ] )
public bool forceError ( void )
public MongoCollection __get ( string $name )
public array getDBRef ( array $ref )
public MongoGridFS getGridFS ([ string $prefix = "fs" ] )
public int getProfilingLevel ( void )
public bool getSlaveOkay ( void )
public array lastError ( void )
public array listCollections ( void )
public array prevError ( void )
public array repair ([ bool $preserve_cloned_files = FALSE [, bool $backup_original_files = FALSE ]] )
public array resetError ( void )
public MongoCollection selectCollection ( string $name )
public int setProfilingLevel ( int $level )
public bool setSlaveOkay ([ bool $ok ] )
public string __toString ( void )
}

Constantes pré-definidas

MongoDB Log Levels

MongoDB::PROFILING_OFF
0
Profiling is off.
MongoDB::PROFILING_SLOW
1
Profiling is on for slow operations (>100 ms).
MongoDB::PROFILING_ON
2
Profiling is on for all operations.

Fields

w
1

The number of servers to replicate a change to before returning success. Inherited by instances of MongoCollection derived from this. w functionality is only available in version 1.5.1+ of the MongoDB server and 1.0.8+ of the driver.

w is used whenever you perform a "safe" operation (MongoCollection::insert(), MongoCollection::update(), MongoCollection::remove(), MongoCollection::save(), and MongoCollection::ensureIndex() all support safe options). With the default value (1), a safe operation will return once the database server has the operation. If the server goes down before the operation has been replicated to a slave, it is possible to lose the operation forever. Thus, you can specify w to be higher than one and guarantee that at least one slave has the operation before it is considered successful.

For example, if w is 2, the main server and one slave must have a record of the operation or the driver will throw a MongoCursorException. It is tempting to set w to the total number of slaves + master, but then if one slave is down the op will fail and an exception will be thrown, so usually w=2 is safest (master+1 slave).

wtimeout
10000

The number of milliseconds to wait for MongoDB::$w replications to take place. Inherited by instances of MongoCollection derived from this. w functionality is only available in version 1.5.1+ of the MongoDB server and 1.0.8+ of the driver.

Unless wtimeout is set, the server waits forever for replicating to w servers to finish. The driver defaults to waiting for 10 seconds, you can change this value to alter its behavior.

Veja Também

MongoDB core docs on » databases.

Índice

  • MongoDB::authenticate — Log in to this database
  • MongoDB::command — Execute a database command
  • MongoDB::__construct — Creates a new database
  • MongoDB::createCollection — Creates a collection
  • MongoDB::createDBRef — Creates a database reference
  • MongoDB::drop — Drops this database
  • MongoDB::dropCollection — Drops a collection [deprecated]
  • MongoDB::execute — Runs JavaScript code on the database server.
  • MongoDB::forceError — Creates a database error
  • MongoDB::__get — Gets a collection
  • MongoDB::getDBRef — Fetches the document pointed to by a database reference
  • MongoDB::getGridFS — Fetches toolkit for dealing with files stored in this database
  • MongoDB::getProfilingLevel — Gets this database's profiling level
  • MongoDB::getSlaveOkay — Get slaveOkay setting for this database
  • MongoDB::lastError — Check if there was an error on the most recent db operation performed
  • MongoDB::listCollections — Get a list of collections in this database
  • MongoDB::prevError — Checks for the last error thrown during a database operation
  • MongoDB::repair — Repairs and compacts this database
  • MongoDB::resetError — Clears any flagged errors on the database
  • MongoDB::selectCollection — Gets a collection
  • MongoDB::setProfilingLevel — Sets this database's profiling level
  • MongoDB::setSlaveOkay — Change slaveOkay setting for this database
  • MongoDB::__toString — The name of this database
Mongo::__toString
MongoDB::authenticate
Core Classes


Log in to this database

MongoDB
MongoDB::command
MongoDB
PHP Manual

MongoDB::authenticate

(PECL mongo >=1.0.1)

MongoDB::authenticate — Log in to this database

Descrição

public array MongoDB::authenticate ( string $username , string $password )

This method causes its connection to be authenticated. If authentication is enabled for the database server (it's not, by default), you need to log in before the database will allow you to do anything.

In general, you should use the authenticate built into Mongo::__construct() in preference to this method. If you authenticate on connection and the connection drops and reconnects during your session, you'll be reauthenticated. If you manually authenticated using this method and the connection drops, you'll have to call this method again once you're reconnected.

This method is identical to running:

<?php

$salted = "${username}:mongo:${password}";
$hash = md5($salted);

$nonce = $db->command(array("getnonce" => 1));

$saltedHash = md5($nonce["nonce"]."${username}${hash}");

$result = $db->command(array("authenticate" => 1,
    "user" => $username,
    "nonce" => $nonce["nonce"],
    "key" => $saltedHash
));

?>

Once a connection has been authenticated, it can only be un-authenticated by using the "logout" database command:

<?php

$db->command(array("logout" => 1));

?>

Parâmetros

username

The username.

password

The password (in plaintext).

Valor Retornado

Returns database response. If the login was successful, it will return

<?php
array("ok" => 1);
?>
If something went wrong, it will return
<?php
array("ok" => 0, "errmsg" => "auth fails");
?>
("auth fails" could be another message, depending on database version and what when wrong).

Veja Também

MongoDB core docs on » authenticate.

MongoDB
MongoDB::command
MongoDB


Execute a database command

MongoDB::authenticate
MongoDB::__construct
MongoDB
PHP Manual

MongoDB::command

(PECL mongo >=0.9.2)

MongoDB::command — Execute a database command

Descrição

public array MongoDB::command ( array $command )

Almost everything that is not a CRUD operation can be done with a database command. Need to know the database version? There's a command for that. Need to do aggregation? There's a command for that. Need to turn up logging? You get the idea.

This method is identical to:

<?php

public function command($data) {
    return $this->selectCollection('$cmd')->findOne($data);
}

?>

Parâmetros

command

The query to send.

Histórico

Versão | Descrição
1.2.0 | Added options parameter with a single option: timeout.

Valor Retornado

Returns database response.

Exemplos

Exemplo #1 MongoDB::command() "distinct" example

Finding all of the distinct values for a key.

<?php

$people = $db->people;

$people->insert(array("name" => "Joe", "age" => 4));
$people->insert(array("name" => "Sally", "age" => 22));
$people->insert(array("name" => "Dave", "age" => 22));
$people->insert(array("name" => "Molly", "age" => 87));

$ages = $db->command(array("distinct" => "people", "key" => "age"));

foreach ($ages['values'] as $age) {
    echo "$age\n";
}

?>

O exemplo acima irá imprimir algo similar a:

4
22
87

Exemplo #2 MongoDB::command() MapReduce example

Get all users with at least on "sale" event, and how many times each of these users has had a sale.

<?php

// sample event document
$events->insert(array("user_id" => $id,
    "type" => $type,
    "time" => new MongoDate(),
    "desc" => $description));

// construct map and reduce functions
$map = new MongoCode("function() { emit(this.user_id,1); }");
$reduce = new MongoCode("function(k, vals) { ".
    "var sum = 0;".
    "for (var i in vals) {".
        "sum += vals[i];".
    "}".
    "return sum; }");

$sales = $db->command(array(
    "mapreduce" => "events",
    "map" => $map,
    "reduce" => $reduce,
    "query" => array("type" => "sale"),
    "out" => array("merge" => "eventCounts")));

$users = $db->selectCollection($sales['result'])->find();

foreach ($users as $user) {
    echo "{$user['_id']} had {$user['value']} sale(s).\n";
}

?>

O exemplo acima irá imprimir algo similar a:

User 47cc67093475061e3d9536d2 had 3 sale(s).
User 49902cde5162504500b45c2c had 14 sale(s).
User 4af467e4fd543cce7b0ea8e2 had 1 sale(s).

Nota: Using MongoCode

This example uses MongoCode, which can also take a scope argument. However, at the moment, MongoDB does not support using scopes in MapReduce. If you would like to use client-side variables in the MapReduce functions, you can add them to the global scope by using the optional scope field with the database command. See the » MapReduce documentation for more information.

Nota: The out argument

Before 1.8.0, the out argument was optional. If you did not use it, MapReduce results would be written to a temporary collection, which would be deleted when your connection was closed. In 1.8.0+, the out argument is required. See the » MapReduce documentation for more information.

If you are going to be using MapReduce, Prajwal Tuladhar created an API for Mongo PHP users which provides a nicer interface than the bare command. You can download it from » Github and there is a » blog post on how to use it.

Veja Também

MongoDB core docs on » database commands and on individual commands: » findAndModify, » getLastError, and » repair (dozens more exist, there are merely a few examples).

MongoDB::authenticate
MongoDB::__construct
MongoDB


Creates a new database

MongoDB::command
MongoDB::createCollection
MongoDB
PHP Manual

MongoDB::__construct

(PECL mongo >=0.9.0)

MongoDB::__construct — Creates a new database

Descrição

MongoDB::__construct ( Mongo $conn , string $name )

This method is not meant to be called directly. The preferred way to create an instance of MongoDB is through Mongo::__get() or Mongo::selectDB().

If you're ignoring the previous paragraph and want to call it directly you can do so:

<?php

$m = new Mongo();
$db = new MongoDB($m, 'mydbname');

?>

But don't. Isn't this much nicer:

<?php

$m = new Mongo();
$db = $m->mydbname;

// or, if the name contains weird characters:

$db = $m->selectDB('my,db:name');

?>

Parâmetros

Mongo conn

Database connection.

name

Database name.

Valor Retornado

Returns the database.

Erros

Throws default exception if the database name is invalid.

MongoDB::command
MongoDB::createCollection
MongoDB


Creates a collection

MongoDB::__construct
MongoDB::createDBRef
MongoDB
PHP Manual

MongoDB::createCollection

(PECL mongo >=0.9.0)

MongoDB::createCollection — Creates a collection

Descrição

public MongoCollection MongoDB::createCollection ( string $name [, bool $capped = FALSE [, int $size = 0 [, int $max = 0 ]]] )

This method is used to create capped collections and other collections requiring special options. It is identical to running:

<?php

$collection = $db->command(array("create" => $name, "size" => $size, "capped" => $capped, "max" => $max));

?>
See MongoDB::command() for more information about database commands.

Parâmetros

name

The name of the collection.

capped

If the collection should be a fixed size.

size

If the collection is fixed size, its size in bytes.

max

If the collection is fixed size, the maximum number of elements to store in the collection.

Valor Retornado

Returns a collection object representing the new collection.

Exemplos

Exemplo #1 MongoDB::createCollection() capped collection example

A capped collection is a special type of collection that has either a fixed or a fixed number of elements. Once the collection is "full," the oldest elements will be removed when new elements are added. Capped collections can be very useful for applications like logging, where you may want to reserve a certain amount of space for logs and not worry about them getting too big.

This example creates a very tiny log collection that will keep a maximum of 10 documents.

<?php

$log = $db->createCollection("logger", true, 10*1024, 10);

for ($i = 0; $i < 100; $i++) {
    $log->insert(array("level" => WARN, "msg" => "sample log message #$i", "ts" => new MongoDate()));
}

$msgs = $log->find();

foreach ($msgs as $msg) {
    echo $msg['msg']."\n";
}

?>

O exemplo acima irá imprimir algo similar a:

sample log message #90
sample log message #91
sample log message #92
sample log message #93
sample log message #94
sample log message #95
sample log message #96
sample log message #97
sample log message #98
sample log message #99
MongoDB::__construct
MongoDB::createDBRef
MongoDB


Creates a database reference

MongoDB::createCollection
MongoDB::drop
MongoDB
PHP Manual

MongoDB::createDBRef

(PECL mongo >=0.9.0)

MongoDB::createDBRef — Creates a database reference

Descrição

public array MongoDB::createDBRef ( string $collection , mixed $a )

This method is a flexible interface for creating database refrences (see MongoDBRef).

Parâmetros

collection

The collection to which the database reference will point.

a

Object or _id to which to create a reference. If an object or associative array is given, this will create a reference using the _id field.

Valor Retornado

Returns a database reference array.

Exemplos

Exemplo #1 MongoDB::createDBRef() example

Example demonstrating how to programatically create a DB reference array from a document.

<?php

$articles = $db->articles;

$article = array(
 'title' => 'Test article',
 'description' => 'Test article description'
);

$articles->insert($article);
$ref = $db->createDBRef('articles', $article);

print_r($article);
print_r($ref);
?>

O exemplo acima irá imprimir algo similar a:

     Array
     (
         [title] => Test article
         [description] => Test article description
         [_id] => MongoId Object
             (
             )

     )
     Array
     (
         [$ref] => articles
         [$id] => MongoId Object
             (
             )

     )

Now the $ref can be stored on another document and retrieved later with MongoDB::getDBRef() or MongoCollection::getDBRef().

Exemplo #2 MongoDB::createDBRef() example

Example demonstrating how to programatically create a DB reference from just an id.

<?php

$id = new MongoId('47cc67093475061e3d9536d2');
$ref = $db->createDBRef('articles', $id);
?>
MongoDB::createCollection
MongoDB::drop
MongoDB


Drops this database

MongoDB::createDBRef
MongoDB::dropCollection
MongoDB
PHP Manual

MongoDB::drop

(PECL mongo >=0.9.0)

MongoDB::drop — Drops this database

Descrição

public array MongoDB::drop ( void )

This drops the database currently being used.

This is identical to running:

<?php

public function drop() {
    $this->command(array("dropDatabase" => 1));
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the database response.

Exemplos

Exemplo #1 MongoDB::drop() example

This example demonstrates how to drop a mongo database and the response to expect.

<?php

$db = $mongo->foo;
$response = $db->drop();
print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [dropped] => foo.$cmd
    [ok] => 1
)
MongoDB::createDBRef
MongoDB::dropCollection
MongoDB


Drops a collection [deprecated]

MongoDB::drop
MongoDB::execute
MongoDB
PHP Manual

MongoDB::dropCollection

(PECL mongo >=0.9.0)

MongoDB::dropCollection — Drops a collection [deprecated]

Descrição

public array MongoDB::dropCollection ( mixed $coll )
Aviso

Deprecated

Use MongoCollection::drop() instead.

This function leaks memory in version 1.0.7 and earlier!

Parâmetros

coll

MongoCollection or name of collection to drop.

Valor Retornado

Returns the database response.

MongoDB::drop
MongoDB::execute
MongoDB


Runs JavaScript code on the database server.

MongoDB::dropCollection
MongoDB::forceError
MongoDB
PHP Manual

MongoDB::execute

(PECL mongo >=0.9.3)

MongoDB::execute — Runs JavaScript code on the database server.

Descrição

public array MongoDB::execute ( mixed $code [, array $args = array() ] )

The Mongo database server runs a JavaScript engine. This method allows you to run arbitary JavaScript on the database. This can be useful if you want touch a number of collections lightly, or process some results on the database side to reduce the amount that has to be sent to the client.

Running JavaScript in the database takes a write lock, meaning it blocks other operations. Make sure you consider this before running a long script.

This is a wrapper for a database command. This method is basically:

<?php

public function execute($code, $args) {
    return $this->command(array('$eval' => $code, args => $args));
}

?>

Parâmetros

code

MongoCode or string to execute.

args

Arguments to be passed to code.

Valor Retornado

Returns the result of the evaluation.

Exemplos

Exemplo #1 Simple MongoDB::execute() example

<?php

$response = $db->execute("function() { return 'Hello, world!'; }");
echo $response['retval'];

?>

O exemplo acima irá imprimir algo similar a:

Hello, world!

Exemplo #2 Parameter MongoDB::execute() example

The optional array of parameters will be passed to the JavaScript function.

<?php

$response = $db->execute("function(greeting, name) { return greeting+', '+name+'!'; }", array("Good bye", "Joe"));
echo $response['retval'];

?>

O exemplo acima irá imprimir algo similar a:

Good bye, Joe!

Exemplo #3 Scope example

If a MongoCode object is used instead of a string for the first parameter, a scope can be passed in which the JavaScript will be executed.

<?php

$func =
    "function(greeting, name) { ".
        "return greeting+', '+name+', says '+greeter;".
    "}";
$scope = array("greeter" => "Fred");

$code = new MongoCode($func, $scope);

$response = $db->execute($code, array("Goodbye", "Joe"));
echo $response['retval'];

?>

O exemplo acima irá imprimir algo similar a:

Goodbye, Joe, says Fred
MongoDB::dropCollection
MongoDB::forceError
MongoDB


Creates a database error

MongoDB::execute
MongoDB::__get
MongoDB
PHP Manual

MongoDB::forceError()

(No version information available, might only be in SVN)

— Creates a database error

Descrição

public bool MongoDB::forceError ( void )

This method is not very useful for normal MongoDB use. It forces a database error to occur. This means that MongoDB::lastError() will return a generic database error after running this command.

This command is identical to running:

<?php

public function forceError() {
    return $this->command(array('forceerror' => 1));
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the database response.

MongoDB::execute
MongoDB::__get
MongoDB


Gets a collection

MongoDB::forceError
MongoDB::getDBRef
MongoDB
PHP Manual

MongoDB::__get

(PECL mongo >=1.0.2)

MongoDB::__get — Gets a collection

Descrição

public MongoCollection MongoDB::__get ( string $name )

This is the easiest way of getting a collection from a database object. If a collection name contains strange characters, you may have to use MongoDB::selectCollection() instead.

<?php

$mongo = new Mongo();

// the following two lines are equivalent
$collection = $mongo->selectDB("foo")->selectCollection("bar");
$collection = $mongo->foo->bar;

?>

Parâmetros

name

The name of the collection.

Valor Retornado

Returns the collection.

MongoDB::forceError
MongoDB::getDBRef
MongoDB


Fetches the document pointed to by a database reference

MongoDB::__get
MongoDB::getGridFS
MongoDB
PHP Manual

MongoDB::getDBRef

(PECL mongo >=0.9.0)

MongoDB::getDBRef — Fetches the document pointed to by a database reference

Descrição

public array MongoDB::getDBRef ( array $ref )

Parâmetros

ref

A database reference.

Valor Retornado

Returns the document pointed to by the reference.

Exemplos

Exemplo #1 MongoDB::getDBRef() example

Example demonstrating how to get a database reference and what the expected input is.

<?php

 $ref = array(
   '$ref' => 'profiles',
   '$id' => '47cc67093475061e3d9536d2'
 );

 $profile = $db->getDBRef($ref);
 ?>

See MongoDB::createDBRef() for more information about how to programatically create DB references.

MongoDB::__get
MongoDB::getGridFS
MongoDB


Fetches toolkit for dealing with files stored in this database

MongoDB::getDBRef
MongoDB::getProfilingLevel
MongoDB
PHP Manual

MongoDB::getGridFS

(PECL mongo >=0.9.0)

MongoDB::getGridFS — Fetches toolkit for dealing with files stored in this database

Descrição

public MongoGridFS MongoDB::getGridFS ([ string $prefix = "fs" ] )

Parâmetros

prefix

The prefix for the files and chunks collections.

Valor Retornado

Returns a new gridfs object for this database.

Exemplos

Exemplo #1 MongoDB::getGridFS() example

This example demonstrates how get a MongoGridFS instance.

<?php

$db = $mongo->my_db;

$prefix = 'files';
$collection = $db->getGridFS($prefix);

?>

Read more about the MongoGridFS to learn how to store files with MongoDB.

MongoDB::getDBRef
MongoDB::getProfilingLevel
MongoDB


Gets this database's profiling level

MongoDB::getGridFS
MongoDB::getSlaveOkay
MongoDB
PHP Manual

MongoDB::getProfilingLevel

(PECL mongo >=0.9.0)

MongoDB::getProfilingLevel — Gets this database's profiling level

Descrição

public int MongoDB::getProfilingLevel ( void )

This returns the current database profiling level.

The database profiler tracks query execution times. If you turn it on (say, using MongoDB::setProfilingLevel() or the shell), you can see how many queries took longer than a given number of milliseconds or the timing for all queries.

Note that profiling slows down queries, so it is better to use in development or testing than in a time-sensitive application.

This function is equivalent to running:

<?php

public function getProfilingLevel() {
    return $this->command(array('profile' => -1));
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the profiling level.

Veja Também

MongoDB core docs on » profiling and MongoDB::setProfilingLevel() - Sets this database's profiling level.

MongoDB::getGridFS
MongoDB::getSlaveOkay
MongoDB


Get slaveOkay setting for this database

MongoDB::getProfilingLevel
MongoDB::lastError
MongoDB
PHP Manual

MongoDB::getSlaveOkay

(PECL mongo >=1.1.0)

MongoDB::getSlaveOkay — Get slaveOkay setting for this database

Descrição

public bool MongoDB::getSlaveOkay ( void )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the value of slaveOkay for this instance.

MongoDB::getProfilingLevel
MongoDB::lastError
MongoDB


Check if there was an error on the most recent db operation performed

MongoDB::getSlaveOkay
MongoDB::listCollections
MongoDB
PHP Manual

MongoDB::lastError

(PECL mongo >=0.9.5)

MongoDB::lastError — Check if there was an error on the most recent db operation performed

Descrição

public array MongoDB::lastError ( void )

This method is equivalent to:

<?php

public function lastError() {
    return $this->command(array('getlasterror' => 1));
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the error, if there was one.

Exemplos

Exemplo #1 MongoDB::lastError() NULL error example

<?php
$db->resetError();
var_dump($db->lastError());
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["err"]=>
  NULL
  ["n"]=>
  int(0)
  ["ok"]=>
  float(1)
}

Exemplo #2 MongoDB::lastError() duplicate key example

<?php
$c = $db->selectCollection("foo");

// insert two documents with the same _id
$c->insert(array("_id" => 1));
$c->insert(array("_id" => 1));

var_dump($db->lastError());
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["err"]=>
  string(64) "E11000 duplicate key errorindex: foo.foo.$_id_  dup key: { : 1 }"
  ["n"]=>
  int(0)
  ["ok"]=>
  float(1)
}
MongoDB::getSlaveOkay
MongoDB::listCollections
MongoDB


Get a list of collections in this database

MongoDB::lastError
MongoDB::prevError
MongoDB
PHP Manual

MongoDB::listCollections

(PECL mongo >=0.9.0)

MongoDB::listCollections — Get a list of collections in this database

Descrição

public array MongoDB::listCollections ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a list of MongoCollections.

Exemplos

Exemplo #1 MongoDB::listCollections() example

The following example demonstrates dropping each collection in a database.

<?php

$m = new Mongo();
$db = $m->selectDB("sample");

$list = $db->listCollections();
foreach ($list as $collection) {
    echo "removing $collection... ";
    $collection->drop();
    echo "gone\n";
}

?>

O exemplo acima irá imprimir algo similar a:

removing sample.blog.posts... gone
removing sample.critical.docs... gone
removing sample.taxes... gone
...
MongoDB::lastError
MongoDB::prevError
MongoDB


Checks for the last error thrown during a database operation

MongoDB::listCollections
MongoDB::repair
MongoDB
PHP Manual

MongoDB::prevError

(PECL mongo >=0.9.5)

MongoDB::prevError — Checks for the last error thrown during a database operation

Descrição

public array MongoDB::prevError ( void )

MongoDB::lastError() is usually preferred to this. This method returns the last database error that occurred and how many operations ago it occurred. It is mostly deprecated.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the error and the number of operations ago it occurred.

MongoDB::listCollections
MongoDB::repair
MongoDB


Repairs and compacts this database

MongoDB::prevError
MongoDB::resetError
MongoDB
PHP Manual

MongoDB::repair

(PECL mongo >=0.9.0)

MongoDB::repair — Repairs and compacts this database

Descrição

public array MongoDB::repair ([ bool $preserve_cloned_files = FALSE [, bool $backup_original_files = FALSE ]] )

This creates a fresh copy of all database data. It will remove any corrupt data and compact and large stretches of free space it finds. This is a very slow operation on a large database.

This is usually run from the shell or the command line, not the driver.

It is equivalent to the function:

<?php

public function repair() {
    return $this->command(array('repairDatabase' => 1));
}

?>

Parâmetros

preserve_cloned_files

If cloned files should be kept if the repair fails.

backup_original_files

If original files should be backed up.

Valor Retornado

Returns db response.

Veja Também

MongoDB core docs on » repair.

Exemplos

Exemplo #1 MongoDB::repair() example

This example demonstrates how to repare and compact a database.

<?php

$db = $mongo->foo;

$response = $db->repair();
print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [ok] => 1
)
MongoDB::prevError
MongoDB::resetError
MongoDB


Clears any flagged errors on the database

MongoDB::repair
MongoDB::selectCollection
MongoDB
PHP Manual

MongoDB::resetError

(PECL mongo >=0.9.5)

MongoDB::resetError — Clears any flagged errors on the database

Descrição

public array MongoDB::resetError ( void )

This method is not used in normal operations. It resets the database error tracker (which can be incremented with MongoDB::forceError(), also not normally used).

It is equivalent to running:

<?php

public function resetError() {
    return $this->command(array('reseterror' => 1));
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the database response.

MongoDB::repair
MongoDB::selectCollection
MongoDB


Gets a collection

MongoDB::resetError
MongoDB::setProfilingLevel
MongoDB
PHP Manual

MongoDB::selectCollection

(PECL mongo >=0.9.0)

MongoDB::selectCollection — Gets a collection

Descrição

public MongoCollection MongoDB::selectCollection ( string $name )

Parâmetros

name

The name of the collection.

Valor Retornado

Returns the collection.

MongoDB::resetError
MongoDB::setProfilingLevel
MongoDB


Sets this database's profiling level

MongoDB::selectCollection
MongoDB::setSlaveOkay
MongoDB
PHP Manual

MongoDB::setProfilingLevel

(PECL mongo >=0.9.0)

MongoDB::setProfilingLevel — Sets this database's profiling level

Descrição

public int MongoDB::setProfilingLevel ( int $level )

This changes the current database profiling level.

This function is equivalent to running:

<?php

public function setProfilingLevel($level) {
    return $this->command(array('profile' => $level));
}

?>

The options for level are 0 (off), 1 (queries > 100ms), and 2 (all queries). If you would like to profile queries that take longer than another time period, use the database command and pass it a second option, the number of milliseconds. For example, to profile all queries that take longer than one second, run:

<?php

$result = $this->command(array('profile' => 1, 'slowms' => 1000));

?>

Profiled queries will appear in the system.profile collection of this database.

Parâmetros

level

Profiling level.

Valor Retornado

Returns the previous profiling level.

MongoDB::selectCollection
MongoDB::setSlaveOkay
MongoDB


Change slaveOkay setting for this database

MongoDB::setProfilingLevel
MongoDB::__toString
MongoDB
PHP Manual

MongoDB::setSlaveOkay

(PECL mongo >=1.1.0)

MongoDB::setSlaveOkay — Change slaveOkay setting for this database

Descrição

public bool MongoDB::setSlaveOkay ([ bool $ok ] )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

ok

If reads should be sent to secondary members of a replica set for all possible queries using this MongoDB instance.

Valor Retornado

Returns the former value of slaveOkay for this instance.

MongoDB::setProfilingLevel
MongoDB::__toString
MongoDB


The name of this database

MongoDB::setSlaveOkay
MongoCollection
MongoDB
PHP Manual

MongoDB::__toString

(PECL mongo >=0.9.0)

MongoDB::__toString — The name of this database

Descrição

public string MongoDB::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns this database's name.

MongoDB::setSlaveOkay
MongoCollection
MongoDB


The MongoCollection class

Introdução

Representations a database collection.

Collection names can use any character in the ASCII set. Some valid collection names are "", "...", "my collection", and "*&#@".

User-defined collection names cannot contain the $ symbol. There are certain system collections which use a $ in their names (e.g., local.oplog.$main), but it is a reserved character. If you attempt to create and use a collection with a $ in the name, MongoDB will assert.

Sinopse da classe

MongoCollection {
/* Constants */
const int MongoCollection::ASCENDING = 1 ;
const int MongoCollection::DESCENDING = -1 ;
/* Fields */
public MongoDB $db = NULL ;
public integer $w ;
public integer $wtimeout ;
/* Methods */
public mixed batchInsert ( array $a [, array $options = array() ] )
public __construct ( MongoDB $db , string $name )
public int count ([ array $query = array() [, int $limit = 0 [, int $skip = 0 ]]] )
public array createDBRef ( array $a )
public array deleteIndex ( string|array $keys )
public array deleteIndexes ( void )
public array drop ( void )
public bool ensureIndex ( array $keys [, array $options ] )
public MongoCursor find ([ array $query = array() [, array $fields = array() ]] )
public array findOne ([ array $query = array() [, array $fields = array() ]] )
public MongoCollection __get ( string $name )
public array getDBRef ( array $ref )
public array getIndexInfo ( void )
public string getName ( void )
public bool getSlaveOkay ( void )
public array group ( mixed $keys , array $initial , MongoCode $reduce [, array $options = array() ] )
public mixed insert ( array $a [, array $options = array() ] )
public mixed remove ([ array $criteria = array() [, array $options = array() ]] )
public mixed save ( array $a [, array $options = array() ] )
public bool setSlaveOkay ([ bool $ok ] )
public string __toString ( void )
public bool update ( array $criteria , array $newobj [, array $options = array() ] )
public array validate ([ bool $scan_data = FALSE ] )
}

Constantes pré-definidas

MongoCollection::ASCENDING
1
Ascending direction for sorts and index creation.
MongoCollection::DESCENDING
-1
Descending direction for sorts and index creation.

Fields

db

The "parent" database for this collection.

w

The number of servers to replicate a change to before returning success. Value is inherited from the parent database. The MongoDB class has a more detailed description of how w works.

wtimeout

The number of milliseconds to wait for $this->w replications to take place. Value is inherited from the parent database. The MongoDB class has a more detailed description of how wtimeout works.

Veja Também

MongoDB core docs on » collections.

Índice

  • MongoCollection::batchInsert — Inserts multiple documents into this collection
  • MongoCollection::__construct — Creates a new collection
  • MongoCollection::count — Counts the number of documents in this collection
  • MongoCollection::createDBRef — Creates a database reference
  • MongoCollection::deleteIndex — Deletes an index from this collection
  • MongoCollection::deleteIndexes — Delete all indices for this collection
  • MongoCollection::drop — Drops this collection
  • MongoCollection::ensureIndex — Creates an index on the given field(s), or does nothing if the index already exists
  • MongoCollection::find — Querys this collection
  • MongoCollection::findOne — Querys this collection, returning a single element
  • MongoCollection::__get — Gets a collection
  • MongoCollection::getDBRef — Fetches the document pointed to by a database reference
  • MongoCollection::getIndexInfo — Returns an array of index names for this collection
  • MongoCollection::getName — Returns this collection's name
  • MongoCollection::getSlaveOkay — Get slaveOkay setting for this collection
  • MongoCollection::group — Performs an operation similar to SQL's GROUP BY command
  • MongoCollection::insert — Inserts an array into the collection
  • MongoCollection::remove — Remove records from this collection
  • MongoCollection::save — Saves an object to this collection
  • MongoCollection::setSlaveOkay — Change slaveOkay setting for this collection
  • MongoCollection::__toString — String representation of this collection
  • MongoCollection::update — Update records based on a given criteria
  • MongoCollection::validate — Validates this collection
MongoDB::__toString
MongoCollection::batchInsert
Core Classes


Inserts multiple documents into this collection

MongoCollection
MongoCollection::__construct
MongoCollection
PHP Manual

MongoCollection::batchInsert

(PECL mongo >=0.9.0)

MongoCollection::batchInsert — Inserts multiple documents into this collection

Descrição

public mixed MongoCollection::batchInsert ( array $a [, array $options = array() ] )

Parâmetros

a

An array of arrays.

options

Options for the inserts.

  • "safe"

    Can be a boolean or integer, defaults to FALSE. If FALSE, the program continues executing without waiting for a database response. If TRUE, the program will wait for the database response and throw a MongoCursorException if the insert did not succeed.

    If safe is an integer, will replicate the insert to that many machines before returning success (or throw an exception if the replication times out, see wtimeout). This overrides the w variable set on the collection.

  • "fsync"

    Boolean, defaults to FALSE. Forces the insert to be synced to disk before returning success. If TRUE, a safe insert is implied and will override setting safe to FALSE.

Valor Retornado

If "safe" is set, returns an associative array with the status of the inserts ("ok") and any error that may have occured ("err"). Otherwise, returns TRUE if the batch insert was successfully sent, FALSE otherwise.

Erros

Throws MongoCursorException if the "safe" option is set and the insert fails.

Throws MongoCursorTimeoutException if the "safe" option is set to a value greater than one and the database cannot replicate the operation in MongoCollection::$wtimeout milliseconds.

Histórico

Versão | Descrição
1.0.5 | Added "options" parameter.
1.0.9 | Added ability to pass integers to "safe" options (only accepted booleans before) and added "fsync" option.

Exemplos

Exemplo #1 MongoCollection::batchInsert() example

Batch insertion is a quick way to add many elements to the database at once

<?php

$users = array();
for ($i = 0; $i<100; $i++) {
  $users[] = array('username' => 'user'.$i, 'i' => $i);
}

$mongo = new Mongo();
$collection = $mongo->my_db->users;
$collection->drop();

$collection->batchInsert($users);

foreach ($users as $user) {
  echo $user['_id']."\n"; // populated with instanceof MongoId
}

$users = $collection->find()->sort(array('i' => 1));
foreach ($users as $user) {
    var_dump($user['username']);
}

?>

O exemplo acima irá imprimir algo similar a:

4bf43ac68ead0e1971000000
4bf43ac68ead0e1971010000
4bf43ac68ead0e1971020000
...
string(5) "user1"
string(5) "user2"
string(5) "user3"
...
MongoCollection
MongoCollection::__construct
MongoCollection


Creates a new collection

MongoCollection::batchInsert
MongoCollection::count
MongoCollection
PHP Manual

MongoCollection::__construct

(PECL mongo >=0.9.0)

MongoCollection::__construct — Creates a new collection

Descrição

public MongoCollection::__construct ( MongoDB $db , string $name )

Parâmetros

MongoDB db

Parent database.

name

Name for this collection.

Valor Retornado

Returns a new collection object.

Erros

Throws default exception if the collection name is invalid.

MongoCollection::batchInsert
MongoCollection::count
MongoCollection


Counts the number of documents in this collection

MongoCollection::__construct
MongoCollection::createDBRef
MongoCollection
PHP Manual

MongoCollection::count

(PECL mongo >=0.9.0)

MongoCollection::count — Counts the number of documents in this collection

Descrição

public int MongoCollection::count ([ array $query = array() [, int $limit = 0 [, int $skip = 0 ]]] )

Parâmetros

query

Associative array or object with fields to match.

limit

Specifies an upper limit to the number returned.

skip

Specifies a number of results to skip before starting the count.

Valor Retornado

Returns the number of documents matching the query.

Histórico

Versão | Descrição
1.0.7 | Added limit and skip parameters.

Exemplos

Exemplo #1 MongoCollection::count() example

<?php

$collection->insert(array('x'=>1));
$collection->insert(array('x'=>2));
$collection->insert(array('x'=>3));

var_dump($collection->count());
var_dump($collection->count(array('x'=>1)));

?>

O exemplo acima irá imprimir algo similar a:

int(3)
int(1)
MongoCollection::__construct
MongoCollection::createDBRef
MongoCollection


Creates a database reference

MongoCollection::count
MongoCollection::deleteIndex
MongoCollection
PHP Manual

MongoCollection::createDBRef

(PECL mongo >=0.9.0)

MongoCollection::createDBRef — Creates a database reference

Descrição

public array MongoCollection::createDBRef ( array $a )

Parâmetros

a

Object to which to create a reference.

Valor Retornado

Returns a database reference array.

Exemplos

Exemplo #1 MongoCollection::createDBRef() example

<?php

$songs = $db->songs;
$playlists = $db->playlists;

// create a reference to a song
$manamana = $songs->findOne(array('title' => 'Ma na ma na'));
$refToSong = $songs->createDBRef($manamana);

// add the reference to my playlist
$playlists->update(array('username' => 'me'), array('$push' => array('songlist' => $refToSong)));

?>

Veja Também

  • MongoCollection::getDBRef() - Fetches the document pointed to by a database reference

MongoCollection::count
MongoCollection::deleteIndex
MongoCollection


Deletes an index from this collection

MongoCollection::createDBRef
MongoCollection::deleteIndexes
MongoCollection
PHP Manual

MongoCollection::deleteIndex

(PECL mongo >=0.9.0)

MongoCollection::deleteIndex — Deletes an index from this collection

Descrição

public array MongoCollection::deleteIndex ( string|array $keys )

This method is identical to:

<?php

public function deleteIndexes($keys) {
  // toIndexString is a protected method that turns strings, arrays, and objs
  //into index names
  $index = $this->toIndexString($keys);

  return $this->db->command(array("deleteIndexes" => $this->getName(),
    "index" => $index);
}

?>

Each index, when created, is given a unique name. This is generally user-set (with MongoCollection::ensureIndex()'s "name" option) or generated by the driver from a combination of key names and directions. This name is then used by MongoCollection::deleteIndex() to remove the function.

Unfortunately, the MongoCollection::ensureIndex() generates slightly different names than the shell and, due to backwards compatibility issues, MongoCollection::deleteIndex() cannot delete custom-named indexes as well. Thus, the best way to delete indexes created in the shell or with custom names is to directly call the deleteIndexes database command.

Thus, if you named an index "superfast query", you could delete it with:

<?php

$db->command(array("deleteIndexes" => $collection->getName(), "index" => "superfast query");

?>

To find what an index is named, you can query the system.indexes collection of a database and look for the name field.

Parâmetros

keys

Field or fields from which to delete the index.

Valor Retornado

Returns the database response.

Exemplos

Exemplo #1 MongoCollection::deleteIndex() example

This example passes the function string and array parameters.

<?php
$m = new Mongo();
$c = $m->example->indices;

// create an index
$c->ensureIndex(array("i"=>1));

// remove a simple index
$c->deleteIndex("i");

// create a multi-key index
$c->ensureIndex(array("j" => 1, "k" => 1));

// remove a multi-key index
$c->deleteIndex(array("j" => 1, "k" => 1));
?>
MongoCollection::createDBRef
MongoCollection::deleteIndexes
MongoCollection


Delete all indices for this collection

MongoCollection::deleteIndex
MongoCollection::drop
MongoCollection
PHP Manual

MongoCollection::deleteIndexes

(PECL mongo >=0.9.0)

MongoCollection::deleteIndexes — Delete all indices for this collection

Descrição

public array MongoCollection::deleteIndexes ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the database response.

Exemplos

Exemplo #1 MongoCollection::deleteIndexes() example

This example demonstrates how to delete all indexes from a collection and the response to expect.

<?php

$collection = $mongo->my_db->articles;
$response = $collection->deleteIndexes();
print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [nIndexesWas] => 1
    [msg] => all indexes deleted for collection
    [ok] => 1
)
MongoCollection::deleteIndex
MongoCollection::drop
MongoCollection


Drops this collection

MongoCollection::deleteIndexes
MongoCollection::ensureIndex
MongoCollection
PHP Manual

MongoCollection::drop

(PECL mongo >=0.9.0)

MongoCollection::drop — Drops this collection

Descrição

public array MongoCollection::drop ( void )

Drops this collection and deletes its indices.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the database response.

Exemplos

Exemplo #1 MongoCollection::drop() example

This example demonstrates how to drop a collection and the response to expect.

<?php

$collection = $mongo->my_db->articles;
$response = $collection->drop();
print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [nIndexesWas] => 1
    [msg] => all indexes deleted for collection
    [ns] => my_db.articles
    [ok] => 1
)
MongoCollection::deleteIndexes
MongoCollection::ensureIndex
MongoCollection


Creates an index on the given field(s), or does nothing if the index already exists

MongoCollection::drop
MongoCollection::find
MongoCollection
PHP Manual

MongoCollection::ensureIndex

(PECL mongo >=0.9.0)

MongoCollection::ensureIndex — Creates an index on the given field(s), or does nothing if the index already exists

Descrição

public bool MongoCollection::ensureIndex ( array $keys [, array $options ] )

A unique index cannot be created on a field if multiple existing documents do not contain the field. The field is effectively NULL for these documents and thus already non-unique.

Parâmetros

keys

Field or fields to use as index.

options

This parameter is an associative array of the form array("optionname" => <boolean>, ...). Currently supported options are:

  • "unique"

    Create a unique index.

  • "dropDups"

    If a unique index is being created and duplicate values exist, drop all but one duplicate value.

  • "background"

    If you are using MongoDB version 1.3.2+, you can create indexes in the background while other operations are taking place. By default, index creation happens synchronously. If you specify TRUE with this option, index creation will be asynchronous.

  • "safe"

    Starting with driver version 1.0.4, you can specify a boolean value for checking if the index creation succeeded. The driver will throw a MongoCursorException if index creation failed.

    If you are using replication and the master has changed, using "safe" will make the driver disconnect from the master, throw and exception, and attempt to find a new master on the next operation (your application must decide whether or not to retry the operation on the new master).

    If you do not use "safe" with a replica set and the master changes, there will be no way for the driver to know about the change so it will continuously and silently fail to write.

  • "name"

    After driver version 1.0.4 (NOT including 1.0.4) you can specify an index name. This can be useful if you are indexing many keys and Mongo complains about the index name being too long.

  • "timeout"

    Integer, defaults to MongoCursor::$timeout. If "safe" is set, this sets how long (in milliseconds) for the client to wait for a database response. If the database does not respond within the timeout period, a MongoCursorTimeoutException will be thrown.

Valor Retornado

Returns TRUE.

Histórico

Versão | Descrição
1.2.0 | Added timeout option.
1.0.11 | "safe" will trigger master failover, if necessary.
1.0.11 | MongoException will be thrown if index name (either generated or set) is longer than 128 bytes.
1.0.2 | Changed "options" parameter from boolean to array. Pre-1.0.2, the second parameter was an optional boolean value specifying a unique index.

Erros

Throws MongoException if the index name is longer than 128 bytes. (Version 1.0.11+)

Throws MongoCursorException if the "safe" option is set and the index creation fails.

Throws MongoCursorTimeoutException if the "safe" option is set and the operation takes longer than MongoCursor::$timeout milliseconds to complete. This does not kill the operation on the server, it is a client-side timeout.

Exemplos

Exemplo #1 MongoCollection::ensureIndex() example

<?php

$c = new MongoCollection($db, 'foo');

// create an index on 'x' ascending
$c->ensureIndex(array('x' => 1));

// create an index on 'z' ascending and 'zz' descending
$c->ensureIndex(array('z' => 1, 'zz' => -1));

// create a unique index on 'x'
$c->ensureIndex(array('x' => 1), array("unique" => true));

?>

Exemplo #2 Drop duplicates example

<?php

$collection->insert(array("username" => "joeschmoe"));
$collection->insert(array("username" => "joeschmoe"));

/*
 * index creation fails, you can't create a unique index on a key with
 * non-unique values
 */
$collection->ensureIndex(array("username" => 1), array("unique" => 1));

/*
 * index creation succeeds: one of the documents is removed from the collection
 */
$collection->ensureIndex(array("username" => 1), array("unique" => 1, "dropDups" => 1));

/*
 * now we have a unique index, more inserts with the same username (such as the
 * one below) will fail
 */
$collection->insert(array("username" => "joeschmoe"));

?>

Exemplo #3 Geospatial Indexing

Mongo supports geospatial indexes, which allow you to search for documents near a given location or within a shape. For example, to create a geospatial index on the "loc" field:

<?php

$collection->ensureIndex(array("loc" => "2d"));

?>

Veja Também

MongoDB core docs on » vanilla indexes and » geospatial indexes.

MongoCollection::drop
MongoCollection::find
MongoCollection


Querys this collection

MongoCollection::ensureIndex
MongoCollection::findOne
MongoCollection
PHP Manual

MongoCollection::find

(PECL mongo >=0.9.0)

MongoCollection::find — Querys this collection

Descrição

 public MongoCursor MongoCollection::find
  ([ array $query = array()
 [, array $fields = array()
]] )

Parâmetros

query

The fields for which to search.

fields

Fields of the results to return.

Valor Retornado

Returns a cursor for the search results.

Exemplos

Exemplo #1 MongoCollection::find() example

This example demonstrates how to search for a range.

<?php

// search for documents where 5 < x < 20
$rangeQuery = array('x' => array( '$gt' => 5, '$lt' => 20 ));

$cursor = $collection->find($rangeQuery);

?>

See MongoCursor for more information how to work with cursors.

Exemplo #2 MongoCollection::find() example using $where

This example demonstrates how to search a collection using javascript code to reduce the resultset.

<?php

$collection = $db->my_db->articles;

$js = "function() {
  return this.type == 'homepage' || this.featured == true;
}";
$articles = $collection->find(array('$where' => $js));

?>

Exemplo #3 MongoCollection::find() example using $in

This example demonstrates how to search a collection using the $in operator.

<?php

$collection = $db->my_db->articles;
$articles = $collection->find(array(
  'type' => array('$in' => array('homepage', 'editorial'))
));

?>

Exemplo #4 Getting results as an array

This returns a MongoCursor. Often, when people are starting out, they are more comfortable using an array. To turn a cursor into an array, use the iterator_to_array() function.

<?php

$cursor = $collection->find();
$array = iterator_to_array($cursor);

?>

Using iterator_to_array() forces the driver to load all of the results into memory, so do not do this for result sets that are larger than memory!

Also, certain system collections do not have an _id field. If you are dealing with a collection that might have documents without _ids, pass FALSE as the second argument to iterator_to_array() (so that it will not try to use the non-existent _id values as keys).

Veja Também

MongoDB core docs on » find.

MongoCollection::ensureIndex
MongoCollection::findOne
MongoCollection


Querys this collection, returning a single element

MongoCollection::find
MongoCollection::__get
MongoCollection
PHP Manual

MongoCollection::findOne

(PECL mongo >=0.9.0)

MongoCollection::findOne — Querys this collection, returning a single element

Descrição

 public array MongoCollection::findOne
  ([ array $query = array()
 [, array $fields = array()
]] )

Parâmetros

query

The fields for which to search.

fields

Fields of the results to return.

Valor Retornado

Returns record matching the search or NULL.

Erros

Throws MongoConnectionException if it cannot reach the database.

Exemplos

Exemplo #1 MongoCollection::findOne() document by its id.

This example demonstrates how to find a single document in a collection by its id.

<?php

$articles = $mongo->my_db->articles;

$article = $articles->findOne(array('_id' => new MongoId('47cc67093475061e3d9536d2')));

?>

Exemplo #2 MongoCollection::findOne() document by some condition.

This example demonstrates how to find a single document in a collection by some condition and limiting the returned fields.

<?php

$users = $mongo->my_db->users;
$user = $users->findOne(array('username' => 'jwage'), array('password'));
print_r($user);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [_id] => MongoId Object
        (
        )

    [password] => test
)

Notice how even though the document does have a username field, we limited the results to only contain the password field.

MongoCollection::find
MongoCollection::__get
MongoCollection


Gets a collection

MongoCollection::findOne
MongoCollection::getDBRef
MongoCollection
PHP Manual

MongoCollection::__get

(PECL mongo >=1.0.2)

MongoCollection::__get — Gets a collection

Descrição

public MongoCollection MongoCollection::__get ( string $name )

A concise syntax for getting a collection with a dot-separated name. If a collection name contains strange characters, you may have to use MongoDB::selectCollection() instead.

<?php

$mongo = new Mongo();

// the following two lines are equivalent
$collection = $mongo->selectDB("foo")->selectCollection("bar.baz");
$collection = $mongo->foo->bar->baz;

?>

Parâmetros

name

The next string in the collection name.

Valor Retornado

Returns the collection.

MongoCollection::findOne
MongoCollection::getDBRef
MongoCollection


Fetches the document pointed to by a database reference

MongoCollection::__get
MongoCollection::getIndexInfo
MongoCollection
PHP Manual

MongoCollection::getDBRef

(PECL mongo >=0.9.0)

MongoCollection::getDBRef — Fetches the document pointed to by a database reference

Descrição

public array MongoCollection::getDBRef ( array $ref )

Parâmetros

ref

A database reference.

Valor Retornado

Returns the database document pointed to by the reference.

Exemplos

Exemplo #1 MongoCollection::getDBRef() example

<?php

$playlists = $db->playlists;

$myList = $playlists->findOne(array('username' => 'me'));

// fetch each song in the playlist
foreach ($myList['songlist'] as $songRef) {
    $song = $playlists->getDBRef($songRef);
    echo $song['title'] . "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Dazed and Confused
Ma na ma na
Bohemian Rhapsody

In the above example each $songRef looks something like the following:
    Array
    (
        [$ref] => songs
        [$id] => 49902cde5162504500b45c2c
    )

Veja Também

  • MongoCollection::createDBRef() - Creates a database reference

MongoCollection::__get
MongoCollection::getIndexInfo
MongoCollection


Returns an array of index names for this collection

MongoCollection::getDBRef
MongoCollection::getName
MongoCollection
PHP Manual

MongoCollection::getIndexInfo

(PECL mongo >=0.9.0)

MongoCollection::getIndexInfo — Returns an array of index names for this collection

Descrição

public array MongoCollection::getIndexInfo ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a list of index names.

MongoCollection::getDBRef
MongoCollection::getName
MongoCollection


Returns this collection's name

MongoCollection::getIndexInfo
MongoCollection::getSlaveOkay
MongoCollection
PHP Manual

MongoCollection::getName

(PECL mongo >=0.9.0)

MongoCollection::getName — Returns this collection's name

Descrição

public string MongoCollection::getName ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the name of this collection.

Exemplos

Exemplo #1 MongoCollection::getName() example

<?php

$m = new Mongo();
$c = $m->foo->bar->baz;

echo "Working with collection " . $c->getName() . ".\n";

// the full namespace is given by the MongoCollection::__toString() method
echo "Working in namespace $c.\n";

?>

O exemplo acima irá imprimir algo similar a:

Working with collection bar.baz.
Working in namespace foo.bar.baz.

MongoCollection::getIndexInfo
MongoCollection::getSlaveOkay
MongoCollection


Get slaveOkay setting for this collection

MongoCollection::getName
MongoCollection::group
MongoCollection
PHP Manual

MongoCollection::getSlaveOkay

(PECL mongo >=1.1.0)

MongoCollection::getSlaveOkay — Get slaveOkay setting for this collection

Descrição

public bool MongoCollection::getSlaveOkay ( void )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the value of slaveOkay for this instance.

MongoCollection::getName
MongoCollection::group
MongoCollection


Performs an operation similar to SQL's GROUP BY command

MongoCollection::getSlaveOkay
MongoCollection::insert
MongoCollection
PHP Manual

MongoCollection::group

(PECL mongo >=0.9.2)

MongoCollection::group — Performs an operation similar to SQL's GROUP BY command

Descrição

public array MongoCollection::group ( mixed $keys , array $initial , MongoCode $reduce [, array $options = array() ] )

Parâmetros

keys

Fields to group by. If an array or non-code object is passed, it will be the key used to group results.

1.0.4+: If keys is an instance of MongoCode, keys will be treated as a function that returns the key to group by (see the "Passing a keys function" example below).

initial

Initial value of the aggregation counter object.

reduce

A function that takes two arguments (the current document and the aggregation to this point) and does the aggregation.

options

Optional parameters to the group command. Valid options include:

  • "condition"

    Criteria for including a document in the aggregation.

  • "finalize"

    Function called once per unique key that takes the final output of the reduce function.

Valor Retornado

Returns an array containing the result.

Exemplos

Exemplo #1 MongoCollection::group() example

This groups documents by category and creates a list of names within that category.

<?php

$collection->insert(array("category" => "fruit", "name" => "apple"));
$collection->insert(array("category" => "fruit", "name" => "peach"));
$collection->insert(array("category" => "fruit", "name" => "banana"));
$collection->insert(array("category" => "veggie", "name" => "corn"));
$collection->insert(array("category" => "veggie", "name" => "broccoli"));

$keys = array("category" => 1);

$initial = array("items" => array());

$reduce = "function (obj, prev) { prev.items.push(obj.name); }";

$g = $collection->group($keys, $initial, $reduce);

echo json_encode($g['retval']);

?>

O exemplo acima irá imprimir algo similar a:

[{"category":"fruit","items":["apple","peach","banana"]},{"category":"veggie","items":["corn","broccoli"]}]

Exemplo #2 MongoCollection::group() example

This example doesn't use any key, so every document will be its own group. It also uses a condition: only documents that match this condition will be processed by the grouping function.

<?php

$collection->save(array("a" => 2));
$collection->save(array("b" => 5));
$collection->save(array("a" => 1));

// use all fields
$keys = array();

// set intial values
$initial = array("count" => 0);

// JavaScript function to perform
$reduce = "function (obj, prev) { prev.count++; }";

// only use documents where the "a" field is greater than 1
$condition = array("a" => array( '$gt' => 1));

$g = $collection->group($keys, $initial, $reduce, $condition);

var_dump($g);

?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  ["retval"]=>
  array(1) {
    [0]=>
    array(1) {
      ["count"]=>
      float(1)
    }
  }
  ["count"]=>
  float(1)
  ["keys"]=>
  int(1)
  ["ok"]=>
  float(1)
}

Exemplo #3 Passing a keys function

If you want to group by something other than a field name, you can pass a function as the first parameter of MongoCollection::group() and it will be run against each document. The return value of the function will be used as its grouping value.

This example demonstrates grouping by the num field modulo 4.

<?php

$c->group(new MongoCode('function(doc) { return {mod : doc.num % 4}; }'),
     array("count" => 0),
     new MongoCode('function(current, total) { total.count++; }'));

?>
MongoCollection::getSlaveOkay
MongoCollection::insert
MongoCollection


Inserts an array into the collection

MongoCollection::group
MongoCollection::remove
MongoCollection
PHP Manual

MongoCollection::insert

(PECL mongo >=0.9.0)

MongoCollection::insert — Inserts an array into the collection

Descrição

public mixed MongoCollection::insert ( array $a [, array $options = array() ] )

All strings sent to the database must be UTF-8. If a string is not UTF-8, a MongoException will be thrown. To insert (or query for) a non-UTF-8 string, use MongoBinData.

Parâmetros

a

An array.

options

Options for the insert.

  • "safe"

    Can be a boolean or integer, defaults to FALSE. If FALSE, the program continues executing without waiting for a database response. If TRUE, the program will wait for the database response and throw a MongoCursorException if the insert did not succeed.

    If you are using replication and the master has changed, using "safe" will make the driver disconnect from the master, throw an exception, and attempt to find a new master on the next operation (your application must decide whether or not to retry the operation on the new master).

    If you do not use "safe" with a replica set and the master changes, there will be no way for the driver to know about the change so it will continuously and silently fail to write.

    If safe is an integer, will replicate the insert to that many machines before returning success (or throw an exception if the replication times out, see wtimeout). This overrides the w variable set on the collection.

  • "fsync"

    Boolean, defaults to FALSE. Forces the insert to be synced to disk before returning success. If TRUE, a safe insert is implied and will override setting safe to FALSE.

  • "timeout"

    Integer, defaults to MongoCursor::$timeout. If "safe" is set, this sets how long (in milliseconds) for the client to wait for a database response. If the database does not respond within the timeout period, a MongoCursorTimeoutException will be thrown.

Valor Retornado

If safe was set, returns an array containing the status of the insert. Otherwise, returns a boolean representing if the array was not empty (an empty array will not be inserted).

Erros

Throws MongoCursorException if the "safe" option is set and the insert fails. (Version 1.0.1+)

Throws MongoCursorTimeoutException if the "safe" option is set and the operation takes longer than MongoCursor::$timeout milliseconds to complete. This does not kill the operation on the server, it is a client-side timeout.

Histórico

Versão | Descrição
1.0.5 | Changed second parameter to an array of options. Pre-1.0.5, the second parameter was a boolean indicating the "safe" option.
1.0.9 | Added ability to pass integers to "safe" options (only accepted booleans before) and added "fsync" option.
1.0.11 | Disconnects on "not master" errors if "safe" is set.
1.2.0 | Added timeout option.

Exemplos

Exemplo #1 MongoCollection::insert() _id example

Inserting an object will add an _id field to it, unless it is passed by reference.

<?php

$a = array('x' => 1);
$collection->insert($a);
var_dump($a);

$b = array('x' => 1);
$ref = &$b;
$collection->insert($ref);
var_dump($ref);

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["x"]=>
  int(1)
  ["_id"]=>
  object(MongoId)#4 (0) {
  }
}
array(1) {
  ["x"]=>
  int(1)
}

Exemplo #2 MongoCollection::insert() safe example

This example shows inserting two elements with the same _id, which causes a MongoCursorException to be thrown, as safe was set.

<?php

$person = array("name" => "Joe", "age" => 20);
$collection->insert($person, true);

// now $person has an _id field, so if we save it
// again, we will get an exception
try {
    $collection->insert($person, true);
}
catch(MongoCursorException $e) {
    echo "Can't save the same person twice!\n";
}

?>

Veja Também

MongoDB core docs on » insert.

MongoCollection::group
MongoCollection::remove
MongoCollection


Remove records from this collection

MongoCollection::insert
MongoCollection::save
MongoCollection
PHP Manual

MongoCollection::remove

(PECL mongo >=0.9.0)

MongoCollection::remove — Remove records from this collection

Descrição

 public mixed MongoCollection::remove
  ([ array $criteria = array()
 [, array $options = array()
]] )

Parâmetros

criteria

Description of records to remove.

options

Options for remove.

  • "justOne"

    Remove at most one record matching this criteria.

  • "safe"

    Can be a boolean or integer, defaults to FALSE. If FALSE, the program continues executing without waiting for a database response. If TRUE, the program will wait for the database response and throw a MongoCursorException if the update did not succeed.

    If you are using replication and the master has changed, using "safe" will make the driver disconnect from the master, throw and exception, and attempt to find a new master on the next operation (your application must decide whether or not to retry the operation on the new master).

    If you do not use "safe" with a replica set and the master changes, there will be no way for the driver to know about the change so it will continuously and silently fail to write.

    If safe is an integer, will replicate the update to that many machines before returning success (or throw an exception if the replication times out, see wtimeout). This overrides the w variable set on the collection.

  • "fsync"

    Boolean, defaults to FALSE. Forces the update to be synced to disk before returning success. If TRUE, a safe update is implied and will override setting safe to FALSE.

  • "timeout"

    Integer, defaults to MongoCursor::$timeout. If "safe" is set, this sets how long (in milliseconds) for the client to wait for a database response. If the database does not respond within the timeout period, a MongoCursorTimeoutException will be thrown.

Valor Retornado

If "safe" is set, returns an associative array with the status of the remove ("ok"), the number of items removed ("n"), and any error that may have occured ("err"). Otherwise, returns TRUE if the remove was successfully sent, FALSE otherwise.

Erros

Throws MongoCursorException if the "safe" option is set and the remove fails.

Throws MongoCursorTimeoutException if the "safe" option is set and the operation takes longer than MongoCursor::$timeout milliseconds to complete. This does not kill the operation on the server, it is a client-side timeout.

Histórico

Versão | Descrição
1.0.9 | Added ability to pass integers to "safe" options (only accepted booleans before) and added "fsync" option.
1.0.5 | Changed second parameter to an array of options. Pre-1.0.5, the second parameter was a boolean indicating the "justOne" option and there was no safe option.
1.0.11 | Disconnects on "not master" errors if "safe" is set.
1.2.0 | Added timeout option.

Exemplos

Exemplo #1 MongoCollection::remove() with justOne example

<?php

$radioactive = $db->radioactive;

// count how much more plutonium there is
$remaining = $radioactive->count(array('type' => 94));

$halflife = $remaining/2;

// remove half of it
while ($halflife > 0) {
    $radioactive->remove(array('type' => 94), array("justOne" => true));
    $halflife--;
}

?>

Veja Também

MongoDB core docs on » remove.

MongoCollection::insert
MongoCollection::save
MongoCollection


Saves an object to this collection

MongoCollection::remove
MongoCollection::setSlaveOkay
MongoCollection
PHP Manual

MongoCollection::save

(PECL mongo >=0.9.0)

MongoCollection::save — Saves an object to this collection

Descrição

public mixed MongoCollection::save ( array $a [, array $options = array() ] )

If the object is from the database, update the existing database object, otherwise insert this object.

Parâmetros

a

Array to save.

options

Options for the save.

  • "safe"

    Can be a boolean or integer, defaults to FALSE. If FALSE, the program continues executing without waiting for a database response. If TRUE, the program will wait for the database response and throw a MongoCursorException if the insert did not succeed.

    If you are using replication and the master has changed, using "safe" will make the driver disconnect from the master, throw and exception, and attempt to find a new master on the next operation (your application must decide whether or not to retry the operation on the new master).

    If you do not use "safe" with a replica set and the master changes, there will be no way for the driver to know about the change so it will continuously and silently fail to write.

    If safe is an integer, will replicate the insert to that many machines before returning success (or throw an exception if the replication times out, see wtimeout). This overrides the w variable set on the collection.

  • "fsync"

    Boolean, defaults to FALSE. Forces the insert to be synced to disk before returning success. If TRUE, a safe insert is implied and will override setting safe to FALSE.

  • "timeout"

    Integer, defaults to MongoCursor::$timeout. If "safe" is set, this sets how long (in milliseconds) for the client to wait for a database response. If the database does not respond within the timeout period, a MongoCursorTimeoutException will be thrown.

Valor Retornado

If safe was set, returns an array containing the status of the save. Otherwise, returns a boolean representing if the array was not empty (an empty array will not be inserted).

Erros

Throws MongoCursorException if the "safe" option is set and the save fails.

Throws MongoCursorTimeoutException if the "safe" option is set and the operation takes longer than MongoCursor::$timeout milliseconds to complete. This does not kill the operation on the server, it is a client-side timeout.

Histórico

Versão | Descrição
1.0.5 | Added "options" parameter.
1.0.9 | Added ability to pass integers to "safe" options (only accepted booleans before) and added "fsync" option.
1.0.11 | Disconnects on "not master" errors if "safe" is set.
1.2.0 | Added timeout option.

Exemplos

Exemplo #1 MongoCollection::save() example

<?php

$obj = array('x' => 1);

// insert $obj into the db
$collection->save($obj);

// add another field
$obj['foo'] = 'bar';

// $obj cannot be inserted again, causes duplicate _id error
$collection->insert($obj);

// save updates $obj with the new field
$collection->save($obj);

?>
MongoCollection::remove
MongoCollection::setSlaveOkay
MongoCollection


Change slaveOkay setting for this collection

MongoCollection::save
MongoCollection::__toString
MongoCollection
PHP Manual

MongoCollection::setSlaveOkay

(PECL mongo >=1.1.0)

MongoCollection::setSlaveOkay — Change slaveOkay setting for this collection

Descrição

public bool MongoCollection::setSlaveOkay ([ bool $ok ] )

See the query section of this manual for information on distributing reads to slaves.

Parâmetros

ok

If reads should be sent to secondary members of a replica set for all possible queries using this MongoCollection instance.

Valor Retornado

Returns the former value of slaveOkay for this instance.

MongoCollection::save
MongoCollection::__toString
MongoCollection


String representation of this collection

MongoCollection::setSlaveOkay
MongoCollection::update
MongoCollection
PHP Manual

MongoCollection::__toString

(PECL mongo >=0.9.0)

MongoCollection::__toString — String representation of this collection

Descrição

public string MongoCollection::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the full name of this collection.

Exemplos

Exemplo #1 MongoCollection::__toString() example

<?php

$m = new Mongo();

$c1 = $m->foo->bar->baz;
echo "Working with collection $c1.";

$c2 = $m->selectCollection('[]', '&');
echo "Working with collection $c2.";

?>

O exemplo acima irá imprimir algo similar a:

Working with collection foo.bar.baz.
Working with collection [].&.

MongoCollection::setSlaveOkay
MongoCollection::update
MongoCollection


Update records based on a given criteria

MongoCollection::__toString
MongoCollection::validate
MongoCollection
PHP Manual

MongoCollection::update

(PECL mongo >=0.9.0)

MongoCollection::update — Update records based on a given criteria

Descrição

public bool MongoCollection::update ( array $criteria , array $newobj [, array $options = array() ] )

Parâmetros

criteria

Description of the objects to update.

newobj

The object with which to update the matching records.

options

This parameter is an associative array of the form array("optionname" => <boolean>, ...). Currently supported options are:

  • "upsert"

    If no document matches $criteria, a new document will be created from $criteria and $newobj (see upsert example below).

  • "multiple"

    All documents matching $criteria will be updated. MongoCollection::update() has exactly the opposite behavior of MongoCollection::remove(): it updates one document by default, not all matching documents. It is recommended that you always specify whether you want to update multiple documents or a single document, as the database may change its default behavior at some point in the future.

  • "safe"

    Can be a boolean or integer, defaults to FALSE. If FALSE, the program continues executing without waiting for a database response. If TRUE, the program will wait for the database response and throw a MongoCursorException if the update did not succeed.

    If you are using replication and the master has changed, using "safe" will make the driver disconnect from the master, throw and exception, and attempt to find a new master on the next operation (your application must decide whether or not to retry the operation on the new master).

    If you do not use "safe" with a replica set and the master changes, there will be no way for the driver to know about the change so it will continuously and silently fail to write.

    If safe is an integer, will replicate the update to that many machines before returning success (or throw an exception if the replication times out, see wtimeout). This overrides the w variable set on the collection.

  • "fsync"

    Boolean, defaults to FALSE. Forces the update to be synced to disk before returning success. If TRUE, a safe update is implied and will override setting safe to FALSE.

  • "timeout"

    Integer, defaults to MongoCursor::$timeout. If "safe" is set, this sets how long (in milliseconds) for the client to wait for a database response. If the database does not respond within the timeout period, a MongoCursorTimeoutException will be thrown.

Valor Retornado

Returns if the update was successfully sent to the database.

Erros

Throws MongoCursorException if the "safe" option is set and the update fails.

Throws MongoCursorTimeoutException if the "safe" option is set and the operation takes longer than MongoCursor::$timeout milliseconds to complete. This does not kill the operation on the server, it is a client-side timeout.

Histórico

Versão | Descrição
1.0.1 | Changed "options" parameter from boolean to array. Pre-1.0.1, the second parameter was an optional boolean value specifying an upsert.
1.0.5 | Added "safe" option.
1.0.9 | Added ability to pass integers to "safe" options (only accepted booleans before) and added "fsync" option.
1.0.11 | Disconnects on "not master" errors if "safe" is set.
1.2.0 | Added timeout option.

Exemplos

Exemplo #1 MongoCollection::update()

Adding an address field to a document.

<?php

$c->insert(array("firstname" => "Bob", "lastname" => "Jones" ));
$newdata = array('$set' => array("address" => "1 Smith Lane"));
$c->update(array("firstname" => "Bob"), $newdata);

var_dump($c->findOne(array("firstname" => "Bob")));

?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  ["_id"]=>
  object(MongoId)#6 (0) {
  }
  ["firstname"]=>
  string(3) "Bob"
  ["lastname"]=>
  string(5) "Jones"
  ["address"]=>
  string(12) "1 Smith Lane"
}

Exemplo #2 MongoCollection::update() upsert example

Upserts can simplify code, as a single line can create the object if it does not exist yet and update it if it does.

<?php

$c->drop();
$c->update(array("uri" => "/summer_pics"), array('$inc' => array("page hits" => 1)), array("upsert" => true));
var_dump($c->findOne());

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["_id"]=>
  object(MongoId)#9 (0) {
  }
  ["uri"]=>
  string(12) "/summer_pics"
  ["page hits"]=>
  int(1)
}

If newobj does not contain $-operators, an upsert will create a new document from it alone. This matches the behavior of a normal update, where not using $-operators causes the whole document to be overwritten.

<?php

$c->update(array("name" => "joe"), array("username" => "joe312", "createdAt" => new MongoDate()),
    array("upsert" => true));

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["_id"]=>
  object(MongoId)#10 (0) {
  }
  ["username"]=>
  string(6) "joe312"
  ["createdAt"]=>
  object(MongoDate)#4 (0) {
  }
}

Exemplo #3 MongoCollection::update() multiple example

By default, MongoCollection::update() will only update the first document matching $criteria that it finds. Using the "multiple" option can override this behavior, if needed.

This example adds a "gift" field to every person whose birthday is in the next day.

<?php

$today = array('$gt' => new MongoDate(), '$lt' => new MongoDate(strtotime("+1 day")));
$people->update(array("birthday" => $today), array('$set' => array('gift' => $surprise)), array("multiple" => true));

?>

Veja Também

The PHP documentation on updates and the » MongoDB core docs.

MongoCollection::__toString
MongoCollection::validate
MongoCollection


Validates this collection

MongoCollection::update
MongoCursor
MongoCollection
PHP Manual

MongoCollection::validate

(PECL mongo >=0.9.0)

MongoCollection::validate — Validates this collection

Descrição

public array MongoCollection::validate ([ bool $scan_data = FALSE ] )

Parâmetros

scan_data

Only validate indices, not the base collection.

Valor Retornado

Returns the database's evaluation of this object.

MongoCollection::update
MongoCursor
MongoCollection


The MongoCursor class

Introdução

Result object for database query.

A MongoCursor has two "life stages": pre- and post- query. A cursor can be created manually by calling the constructor, but it is most often created by calling MongoCollection::find(). When a cursor is created, it has not yet contacted the database, so it is in its pre-query state. In this state, the client can further specify what they want the query to do, including adding limits, skips, sorts, and more advanced options.

When the client attempts to get a result (by calling MongoCursor::next(), directly or indirectly), the cursor moves into the post-query stage. At this point, the query has been executed by the database and cannot be modified anymore.

<?php

$cursor = $collection->find()->limit(10);

// database has not yet been queried, so more search options can be added
$cursor = $cursor->sort(array("a" => 1));

var_dump($cursor->getNext());
// now database has been queried and more options cannot be added

// so this will throw an exception:
$cursor->skip(4);
?>

Sinopse da classe

implements Iterator {
/* Static Fields */
static boolean $slaveOkay = FALSE ;
static integer $timeout = 20000 ;
/* Methods */
public MongoCursor addOption ( string $key , mixed $value )
public MongoCursor batchSize ( int $num )
__construct ( Mongo $connection , string $ns [, array $query = array() [, array $fields = array() ]] )
public int count ([ bool $foundOnly = FALSE ] )
public array current ( void )
public bool dead ( void )
protected void doQuery ( void )
public array explain ( void )
public MongoCursor fields ( array $f )
public array getNext ( void )
public bool hasNext ( void )
public MongoCursor hint ( array $key_pattern )
public MongoCursor immortal ([ bool $liveForever = true ] )
public array info ( void )
public string key ( void )
public MongoCursor limit ( int $num )
public void next ( void )
public MongoCursor partial ([ bool $okay = true ] )
public void reset ( void )
public void rewind ( void )
public MongoCursor skip ( int $num )
public MongoCursor slaveOkay ([ bool $okay = true ] )
public MongoCursor snapshot ( void )
public MongoCursor sort ( array $fields )
public MongoCursor tailable ([ bool $tail = true ] )
public MongoCursor timeout ( int $ms )
public bool valid ( void )
}

Static Variables

MongoCursor::slaveOkay

If the query should have the "slaveOkay" flag set, which allows reads on the slave (slaves are, by default, just for backup and unreadable). Can be overridden with MongoCursor::slaveOkay().

MongoCursor::timeout

Set timeout in milliseconds for all database responses. To wait forever, use -1. Can be overridden with MongoCursor::timeout(). This does not cause the MongoDB server to cancel the operation, it just causes the driver to stop waiting for a response and throw a MongoCursorTimeoutException.

Veja Também

MongoDB core docs on » cursors.

Índice

  • MongoCursor::addOption — Adds a top-level key/value pair to a query
  • MongoCursor::batchSize — Sets the number of results returned per result set
  • MongoCursor::__construct — Create a new cursor
  • MongoCursor::count — Counts the number of results for this query
  • MongoCursor::current — Returns the current element
  • MongoCursor::dead — Checks if there are documents that have not been sent yet from the database for this cursor
  • MongoCursor::doQuery — Execute the query.
  • MongoCursor::explain — Return an explanation of the query, often useful for optimization and debugging
  • MongoCursor::fields — Sets the fields for a query
  • MongoCursor::getNext — Return the next object to which this cursor points, and advance the cursor
  • MongoCursor::hasNext — Checks if there are any more elements in this cursor
  • MongoCursor::hint — Gives the database a hint about the query
  • MongoCursor::immortal — Sets whether this cursor will timeout
  • MongoCursor::info — Gets the query, fields, limit, and skip for this cursor
  • MongoCursor::key — Returns the current result's _id
  • MongoCursor::limit — Limits the number of results returned
  • MongoCursor::next — Advances the cursor to the next result
  • MongoCursor::partial — If this query should fetch partial results from mongos if a shard is down
  • MongoCursor::reset — Clears the cursor
  • MongoCursor::rewind — Returns the cursor to the beginning of the result set
  • MongoCursor::skip — Skips a number of results
  • MongoCursor::slaveOkay — Sets whether this query can be done on a slave
  • MongoCursor::snapshot — Use snapshot mode for the query
  • MongoCursor::sort — Sorts the results by given fields
  • MongoCursor::tailable — Sets whether this cursor will be left open after fetching the last results
  • MongoCursor::timeout — Sets a client-side timeout for this query
  • MongoCursor::valid — Checks if the cursor is reading a valid result.
MongoCollection::validate
MongoCursor::addOption
Core Classes


Adds a top-level key/value pair to a query

MongoCursor
MongoCursor::batchSize
MongoCursor
PHP Manual

MongoCursor::addOption

(PECL mongo >=1.0.4)

MongoCursor::addOption — Adds a top-level key/value pair to a query

Descrição

public MongoCursor MongoCursor::addOption ( string $key , mixed $value )

This is an advanced function and should not be used unless you know what you're doing.

A query can optionally be nested in a "query" field if other options, such as a sort or hint, are given. For instance, adding a sort causes the query to become a subfield of a bigger query object, like:

<?php

$query = array("query" => $query, "orderby" => $sort);

?>

This method is for adding a top-level field to a query. It makes the query a subobject (if it isn't already) and adds the key/value pair of your chosing to the top level.

Aviso

It cannot be used to add extra criteria to a query on the fly. For instance, this will not work:

<?php

// NOT CORRECT
$cursor = $users->find()->addOption("name", "joe")->addOption("age", 20);

?>
This does not query for a user named "joe" with an age of 20.

Parâmetros

key

Fieldname to add.

value

Value to add.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

Exemplos

Exemplo #1 MongoCursor::addOption() example

Using MongoCursor::skip() to skip over millions of results can become slow. One way around this is to use $min or $max options for the query. These can be handy, but they require an index on exactly the fields being searched for. This is an example of how to use $min as an alternative to MongoCursor::skip().

<?php

// make sure we have an index
$c->ensureIndex(array("ts" => 1));

// you may have to modify this to run in a reasonable amount of time on slow
// machines (should take about 30 seconds on a good machine)
for ($i = 0; $i < 30000000; $i++) {
    $c->insert(array("ts" => new MongoDate(), "i" => $i));
}

$now = strtotime("now");

// find documents inserted in the last 2 seconds
$cursor = $c->find()->addOption('$min', array("ts" => $now-2));

?>
MongoCursor
MongoCursor::batchSize
MongoCursor


Sets the number of results returned per result set

MongoCursor::addOption
MongoCursor::__construct
MongoCursor
PHP Manual

MongoCursor::batchSize

(PECL mongo >=1.0.11)

MongoCursor::batchSize — Sets the number of results returned per result set

Descrição

public MongoCursor MongoCursor::batchSize ( int $num )

This cannot override MongoDB's limit on the amount of data it will return to the client (i.e., if you set batch size to 1,000,000,000, MongoDB will still only return 4-16MB of results).

To ensure consistent behavior, the rules of batchSize and limit behavior a little complex but work "as expected". The rules are: hard limits override soft limits with preference given to MongoCursor::limit() over MongoCursor::batchSize(). After that, whichever is set and lower than the other will take precedence. Some examples:

<?php

// one batch, at most 20 items
$cursor->limit(-20)->batchSize(10);

// one batch, at most 10 items
$cursor->limit(20)->batchSize(-10);

// first batch: at most 10 items
$cursor->limit(10);

// first batch: at most 10 items
$cursor->limit(10)->batchSize(20);

// first batch: at most 10 items
$cursor->limit(20)->batchSize(10);

$cursor->limit(30)->batchSize(7)
// if we iterate through 28 items, the next call to getNext() will contact the
// database and request a batch of 2 documents

?>

Parâmetros

num

The number of results to return in the next batch.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating. This will change in 1.0.12, as this should be able to be called at any time.

MongoCursor::addOption
MongoCursor::__construct
MongoCursor


Create a new cursor

MongoCursor::batchSize
MongoCursor::count
MongoCursor
PHP Manual

MongoCursor::__construct

(PECL mongo >=0.9.0)

MongoCursor::__construct — Create a new cursor

Descrição

MongoCursor::__construct ( Mongo $connection , string $ns [, array $query = array() [, array $fields = array() ]] )

Parâmetros

connection

Database connection.

ns

Full name of database and collection.

query

Database query.

fields

Fields to return.

Valor Retornado

Returns the new cursor.

MongoCursor::batchSize
MongoCursor::count
MongoCursor


Counts the number of results for this query

MongoCursor::__construct
MongoCursor::current
MongoCursor
PHP Manual

MongoCursor::count

(PECL mongo >=0.9.2)

MongoCursor::count — Counts the number of results for this query

Descrição

public int MongoCursor::count ([ bool $foundOnly = FALSE ] )

This method does not affect the state of the cursor: if you haven't queried yet, you can still apply limits, skips, etc. If you have started iterating through results, it will not move the current position of the cursor. If you have exhasted the cursor, it will not reset it.

Parâmetros

foundOnly

Send cursor limit and skip information to the count function, if applicable.

Valor Retornado

The number of documents returned by this cursor's query.

Exemplos

Exemplo #1 MongoCursor::count() example

<?php

$collection->insert(array('x'=>1));
$collection->insert(array('x'=>2));
$collection->insert(array('x'=>3));

$cursor = $collection->find();

var_dump($cursor->count());
var_dump($cursor->count(true));

$cursor->limit(2);

var_dump($cursor->count());
var_dump($cursor->count(true));

?>

O exemplo acima irá imprimir algo similar a:

int(3)
int(3)
int(3)
int(2)

Erros

Throws MongoConnectionException if it cannot reach the database.

MongoCursor::__construct
MongoCursor::current
MongoCursor


Returns the current element

MongoCursor::count
MongoCursor::dead
MongoCursor
PHP Manual

MongoCursor::current

(PECL mongo >=0.9.0)

MongoCursor::current — Returns the current element

Descrição

public array MongoCursor::current ( void )

This returns NULL until MongoCursor::next() is called.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current result as an associative array.

MongoCursor::count
MongoCursor::dead
MongoCursor


Checks if there are documents that have not been sent yet from the database for this cursor

MongoCursor::current
MongoCursor::doQuery
MongoCursor
PHP Manual

MongoCursor::dead

(PECL mongo >=0.9.6)

MongoCursor::dead — Checks if there are documents that have not been sent yet from the database for this cursor

Descrição

public bool MongoCursor::dead ( void )

The database sends responses in batches of documents, up to 4Mb of documents per response. This method checks if the database has more batches or if the result set has been exhausted.

A cursor being "dead" does not mean that MongoCursor::hasNext() will return FALSE, it only means that the database is done sending results to the client. The client should continue iterating through results until MongoCursor::hasNext() is FALSE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns if there are more results that have not been sent to the client, yet.

MongoCursor::current
MongoCursor::doQuery
MongoCursor


Execute the query.

MongoCursor::dead
MongoCursor::explain
MongoCursor
PHP Manual

MongoCursor::doQuery

(No version information available, might only be in SVN)

MongoCursor::doQuery — Execute the query.

Descrição

protected void MongoCursor::doQuery ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

NULL.

Erros

Throws MongoConnectionException if it cannot reach the database.

MongoCursor::dead
MongoCursor::explain
MongoCursor


Return an explanation of the query, often useful for optimization and debugging

MongoCursor::doQuery
MongoCursor::fields
MongoCursor
PHP Manual

MongoCursor::explain

(PECL mongo >=0.9.2)

MongoCursor::explain — Return an explanation of the query, often useful for optimization and debugging

Descrição

public array MongoCursor::explain ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an explanation of the query.

Exemplos

Exemplo #1 MongoCursor::explain() example

<?php

$cursor = $collection->find(array("x"=>1), array("y"));
$cursor->sort(array("z" => 1))->limit(4)->skip(5);

var_dump($cursor->explain());

?>

O exemplo acima irá imprimir algo similar a:

array(8) {
  ["cursor"]=>
  string(15) "BtreeCursor x_1"
  ["startKey"]=>
  array(1) {
    ["x"]=>
    int(1)
  }
  ["endKey"]=>
  array(1) {
    ["x"]=>
    int(1)
  }
  ["nscanned"]=>
  float(4)
  ["n"]=>
  int(4)
  ["scanAndOrder"]=>
  int(1)
  ["millis"]=>
  int(3)
  ["allPlans"]=>
  array(2) {
    [0]=>
    array(3) {
      ["cursor"]=>
      string(15) "BtreeCursor x_1"
      ["startKey"]=>
      array(1) {
        ["x"]=>
        int(1)
      }
      ["endKey"]=>
      array(1) {
        ["x"]=>
        int(1)
      }
    }
    [1]=>
    array(3) {
      ["cursor"]=>
      string(11) "BasicCursor"
      ["startKey"]=>
      array(0) {
      }
      ["endKey"]=>
      array(0) {
      }
    }
  }
}

Erros

Throws MongoConnectionException if it cannot reach the database.

Veja Também

MongoDB core docs on » explain.

MongoCursor::doQuery
MongoCursor::fields
MongoCursor


Sets the fields for a query

MongoCursor::explain
MongoCursor::getNext
MongoCursor
PHP Manual

MongoCursor::fields

(PECL mongo >=1.0.6)

MongoCursor::fields — Sets the fields for a query

Descrição

public MongoCursor MongoCursor::fields ( array $f )

Fields are specified by "fieldname" : bool. TRUE indicates that a field should be returned, FALSE indicates that it should not be returned. You can also use 1 and 0 instead of TRUE and FALSE.

Thus, to return only the "summary" field, one could say:

<?php

$cursor->fields(array("summary" => true));

?>

To return all fields except the "hidden" field:

<?php

$cursor->fields(array("hidden" => false));

?>

Parâmetros

f

Fields to return (or not return).

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating or a scalar argument is given.

MongoCursor::explain
MongoCursor::getNext
MongoCursor


Return the next object to which this cursor points, and advance the cursor

MongoCursor::fields
MongoCursor::hasNext
MongoCursor
PHP Manual

MongoCursor::getNext

(PECL mongo >=0.9.0)

MongoCursor::getNext — Return the next object to which this cursor points, and advance the cursor

Descrição

public array MongoCursor::getNext ( void )

This is identical to the function:

<?php

public function getNext() {
    $this->next();
    return $this->current();
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the next object.

Erros

Throws MongoConnectionException if it cannot reach the database and MongoCursorTimeoutException if the timeout is exceeded.

MongoCursor::fields
MongoCursor::hasNext
MongoCursor


Checks if there are any more elements in this cursor

MongoCursor::getNext
MongoCursor::hint
MongoCursor
PHP Manual

MongoCursor::hasNext

(PECL mongo >=0.9.0)

MongoCursor::hasNext — Checks if there are any more elements in this cursor

Descrição

public bool MongoCursor::hasNext ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns if there is another element.

Erros

Throws MongoConnectionException if it cannot reach the database and MongoCursorTimeoutException if the timeout is exceeded.

MongoCursor::getNext
MongoCursor::hint
MongoCursor


Gives the database a hint about the query

MongoCursor::hasNext
MongoCursor::immortal
MongoCursor
PHP Manual

MongoCursor::hint

(PECL mongo >=0.9.0)

MongoCursor::hint — Gives the database a hint about the query

Descrição

public MongoCursor MongoCursor::hint ( array $key_pattern )

Parâmetros

key_pattern

Indexes to use for the query.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

MongoCursor::hasNext
MongoCursor::immortal
MongoCursor


Sets whether this cursor will timeout

MongoCursor::hint
MongoCursor::info
MongoCursor
PHP Manual

MongoCursor::immortal

(PECL mongo >=1.0.1)

MongoCursor::immortal — Sets whether this cursor will timeout

Descrição

public MongoCursor MongoCursor::immortal ([ bool $liveForever = true ] )

After remaining idle for some amount of time, cursor, by default, "die." This is generally the behavior one wants. The database cleans up a cursor once all of its results have been sent to the client, but if the client doesn't request all of the results, the cursor will languish there, taking up resources. Thus, after a few minutes, the cursor "times out" and the database assumes the client has gotten everything it needs and cleans up its the cursor's resources.

If, for some reason, you need a cursor to hang around for a long time, you can prevent the database from cleaning it up by using this method. However, if you make a cursor immortal, you need to iterate through all of its results (or at least until Cursor::dead() returns TRUE) or the cursor will hang around the database forever, taking up resources.

Parâmetros

liveForever

If the cursor should be immortal.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

MongoCursor::hint
MongoCursor::info
MongoCursor


Gets the query, fields, limit, and skip for this cursor

MongoCursor::immortal
MongoCursor::key
MongoCursor
PHP Manual

MongoCursor::info

(PECL mongo >=1.0.5)

MongoCursor::info — Gets the query, fields, limit, and skip for this cursor

Descrição

public array MongoCursor::info ( void )

This can be called before or after the query.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the namespace, limit, skip, query, and fields for this cursor.

Histórico

Versão | Descrição
1.0.10 | Added started_iterating field, a boolean indicating if cursor is pre- or post-query.
1.1.0 | Added a number of other fields, including id (the cursor id), at (the driver's counter of which document is current), numReturned (the number returned by the server in the current batch), and server (which server the query was sent to—useful in conjunction with MongoCursor::slaveOkay()).

Exemplos

Exemplo #1 MongoCursor::info() example

<?php

$m = new Mongo();
$cursor = $m->foo->bar->find(array("x" => 4), array("y" => false));
var_dump($cursor->info());

?>

O exemplo acima irá imprimir algo similar a:

array(5) {
  ["ns"]=>
  string(7) "foo.bar"
  ["limit"]=>
  int(0)
  ["skip"]=>
  int(0)
  ["query"]=>
  array(1) {
    ["x"]=>
    int(4)
  }
  ["fields"]=>
  array(1) {
    ["y"]=>
    int(0)
  }
}
MongoCursor::immortal
MongoCursor::key
MongoCursor


Returns the current result's _id

MongoCursor::info
MongoCursor::limit
MongoCursor
PHP Manual

MongoCursor::key

(PECL mongo >=0.9.0)

MongoCursor::key — Returns the current result's _id

Descrição

public string MongoCursor::key ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current result's _id as a string.

MongoCursor::info
MongoCursor::limit
MongoCursor


Limits the number of results returned

MongoCursor::key
MongoCursor::next
MongoCursor
PHP Manual

MongoCursor::limit

(PECL mongo >=0.9.0)

MongoCursor::limit — Limits the number of results returned

Descrição

public MongoCursor MongoCursor::limit ( int $num )

Parâmetros

num

The number of results to return.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

Veja Também

MongoDB core docs on » limit.

MongoCursor::key
MongoCursor::next
MongoCursor


Advances the cursor to the next result

MongoCursor::limit
MongoCursor::partial
MongoCursor
PHP Manual

MongoCursor::next

(PECL mongo >=0.9.0)

MongoCursor::next — Advances the cursor to the next result

Descrição

public void MongoCursor::next ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

NULL.

Erros

Throws MongoConnectionException if it cannot reach the database and MongoCursorTimeoutException if the timeout is exceeded.

MongoCursor::limit
MongoCursor::partial
MongoCursor


If this query should fetch partial results from mongos if a shard is down

MongoCursor::next
MongoCursor::reset
MongoCursor
PHP Manual

MongoCursor::partial

(PECL mongo >=1.2.0)

MongoCursor::partial — If this query should fetch partial results from mongos if a shard is down

Descrição

public MongoCursor MongoCursor::partial ([ bool $okay = true ] )

This option allows mongos to send partial query results if a shard is unreachable. This is only applicable when running a sharded MongoDB cluster and connecting to a mongos.

If a shard goes down and a query needs to be sent to that shard, mongos will return the results (if any) from shards it already contacted, then an error message that it could not reach the shard (a MongoCursorException in PHP). If you would like to get whatever results mongos can provide and no exception, you can use this method. Note that this means that you won't have an indication that a shard is down in your query response.

This has no effect on the query if all shards are reachable. This flag was implemented in MongoDB version 1.7.5, so will only work with that version and higher.

Parâmetros

okay

If receiving partial results is okay.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

MongoCursor::next
MongoCursor::reset
MongoCursor


Clears the cursor

MongoCursor::partial
MongoCursor::rewind
MongoCursor
PHP Manual

MongoCursor::reset

(PECL mongo >=0.9.0)

MongoCursor::reset — Clears the cursor

Descrição

public void MongoCursor::reset ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

NULL.

MongoCursor::partial
MongoCursor::rewind
MongoCursor


Returns the cursor to the beginning of the result set

MongoCursor::reset
MongoCursor::skip
MongoCursor
PHP Manual

MongoCursor::rewind

(PECL mongo >=0.9.0)

MongoCursor::rewind — Returns the cursor to the beginning of the result set

Descrição

public void MongoCursor::rewind ( void )

This is identical to the function:

<?php

public function rewind() {
    $this->reset();
    $this->next();
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

NULL.

Erros

Throws MongoConnectionException if it cannot reach the database and MongoCursorTimeoutException if the timeout is exceeded.

MongoCursor::reset
MongoCursor::skip
MongoCursor


Skips a number of results

MongoCursor::rewind
MongoCursor::slaveOkay
MongoCursor
PHP Manual

MongoCursor::skip

(PECL mongo >=0.9.0)

MongoCursor::skip — Skips a number of results

Descrição

public MongoCursor MongoCursor::skip ( int $num )

Parâmetros

num

The number of results to skip.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

MongoCursor::rewind
MongoCursor::slaveOkay
MongoCursor


Sets whether this query can be done on a slave

MongoCursor::skip
MongoCursor::snapshot
MongoCursor
PHP Manual

MongoCursor::slaveOkay

(PECL mongo >=0.9.4)

MongoCursor::slaveOkay — Sets whether this query can be done on a slave

Descrição

public MongoCursor MongoCursor::slaveOkay ([ bool $okay = true ] )

Calling this will make the driver route reads to slaves if:

  • You are using a replica set and
  • You created a Mongo instance using the option "replicaSet" => true and
  • There is a healthy slave that can be reached by the driver.
You can check which server was used for this query by calling MongoCursor::info() after running the query. It's server field will show which server the query was sent to.

Note that you should use this function even if you do not use the automatic routing to slaves. If you connect directly to a secondary in a replica set, you still need to call this function, which basically tells the database that you are aware that you might be getting older data and you're okay with that. If you do not call this, you'll get "not master" errors when you try to query.

This method will override the static class variable
MongoCursor::slaveOkay.  It will also override
Mongo::setSlaveOkay(),
MongoDB::setSlaveOkay() and
MongoCollection::setSlaveOkay().

Parâmetros

okay

If it is okay to query the slave.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

Exemplos

Exemplo #1 MongoCursor::slaveOkay() example

<?php

MongoCursor::$slaveOkay = false;

// cannot query slave
$cursor = $collection->find();

// can query slave
$cursor = $collection->find()->slaveOkay();

MongoCursor::$slaveOkay = true;

// can query slave
$cursor = $collection->find();

// cannot query slave
$cursor = $collection->find()->slaveOkay(false);

?>
MongoCursor::skip
MongoCursor::snapshot
MongoCursor


Use snapshot mode for the query

MongoCursor::slaveOkay
MongoCursor::sort
MongoCursor
PHP Manual

MongoCursor::snapshot

(PECL mongo >=0.9.4)

MongoCursor::snapshot — Use snapshot mode for the query

Descrição

public MongoCursor MongoCursor::snapshot ( void )

Use snapshot mode for the query. Snapshot mode assures no duplicates are returned, or objects missed, which were present at both the start and end of the query's execution (if an object is new during the query, or deleted during the query, it may or may not be returned, even with snapshot mode).

Note that short query responses (less than 1MB) are always effectively snapshotted.

Currently, snapshot mode may not be used with sorting or explicit hints.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

MongoCursor::slaveOkay
MongoCursor::sort
MongoCursor


Sorts the results by given fields

MongoCursor::snapshot
MongoCursor::tailable
MongoCursor
PHP Manual

MongoCursor::sort

(PECL mongo >=0.9.0)

MongoCursor::sort — Sorts the results by given fields

Descrição

public MongoCursor MongoCursor::sort ( array $fields )

Parâmetros

fields

The fields by which to sort.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

Exemplos

Exemplo #1 MongoCursor::sort() example

<?php
// sort x ascending
$cursor->sort(array('x' => 1));

// the associative array is ordered, for instance, these two
// examples might yield different results:

// sort date ascending and age descending
$cursor->sort(array('date' => 1, 'age' => -1));

// sort age descending and date ascending
$cursor->sort(array('age' => -1, 'date' => 1));
?>
MongoCursor::snapshot
MongoCursor::tailable
MongoCursor


Sets whether this cursor will be left open after fetching the last results

MongoCursor::sort
MongoCursor::timeout
MongoCursor
PHP Manual

MongoCursor::tailable

(PECL mongo >=0.9.4)

MongoCursor::tailable — Sets whether this cursor will be left open after fetching the last results

Descrição

public MongoCursor MongoCursor::tailable ([ bool $tail = true ] )

Mongo has a feature known as tailable cursors which are similar to the Unix "tail -f" command.

Tailable means cursor is not closed when the last data is retrieved. Rather, the cursor marks the final object's position. you can resume using the cursor later, from where it was located, if more data were received.

Like any "latent cursor", the cursor may become invalid at some point -- for example if that final object it references were deleted. Thus, you should be prepared to requery if the cursor is MongoCursor::dead().

Parâmetros

tail

If the cursor should be tailable.

Valor Retornado

Returns this cursor.

Erros

Throws MongoCursorException if this cursor has started iterating.

Exemplos

Exemplo #1 MongoCursor::tailable() example

<?php

$cursor = $collection->find()->tailable();

$results = array();

while (1) {
    if (!$cursor->hasNext()) {
        // we've read all the results, exit
        if ($cursor->dead()) {
            break;
        }
        // read all results so far, wait for more
        sleep(10);
    }
    else {
        $results[] = $cursor->getNext();
    }
}

?>
MongoCursor::sort
MongoCursor::timeout
MongoCursor


Sets a client-side timeout for this query

MongoCursor::tailable
MongoCursor::valid
MongoCursor
PHP Manual

MongoCursor::timeout

(PECL mongo >=1.0.3)

MongoCursor::timeout — Sets a client-side timeout for this query

Descrição

public MongoCursor MongoCursor::timeout ( int $ms )

A timeout can be set at any time and will affect subsequent queries on the cursor, including fetching more results from the database. For example, to wait forever for an initial response but timeout after 100 ms for subsequent results, one could say:

<?php

$cursor = $collection->find();

// $cursor->hasNext() executes the query.  No timeout has been set, so the
// program will wait as long as necessary for a response.

while ($cursor->hasNext()) {
    $cursor->timeout(100);

    // now the timeout has been set, so if the cursor needs to get more results
    // from the database, it will only wait 100 ms for the database's reply

    try {
        print_r($cursor->getNext());
    }
    catch(MongoCursorTimeoutException $e) {
        echo "query took too long!";
    }
}

?>

A timeout of 0 (or a negative number) will wait forever so it can be used to reset the cursor if a timeout is no longer needed.

Parâmetros

ms

The number of milliseconds for the cursor to wait for a response. By default, the cursor will wait forever.

Valor Retornado

This cursor.

Exemplos

Exemplo #1 MongoCursor::timeout() example

A query where the cursor waits for one second for a response.

<?php

$cursor = $collection->find()->timeout(1000);

try {
  foreach ($cursor as $value) {
    print_r($value);
  }
}
catch(MongoCursorTimeoutException $e) {
  echo "query took too long!";
}

?>

Erros

Causes methods that fetch results to throw MongoCursorTimeoutExceptions if the query takes longer than the number of milliseconds specified.

MongoCursor::tailable
MongoCursor::valid
MongoCursor


Checks if the cursor is reading a valid result.

MongoCursor::timeout
Types
MongoCursor
PHP Manual

MongoCursor::valid

(PECL mongo >=0.9.0)

MongoCursor::valid — Checks if the cursor is reading a valid result.

Descrição

public bool MongoCursor::valid ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

If the current result is not null.

MongoCursor::timeout
Types
MongoCursor


Types

Índice

  • MongoId
  • MongoCode
  • MongoDate
  • MongoRegex
  • MongoBinData
  • MongoInt32
  • MongoInt64
  • MongoDBRef
  • MongoMinKey
  • MongoMaxKey
  • MongoTimestamp

Change in number handling

The default behavior for numbers will be changing in version 1.1.0. For most programmers, this will make the driver's numeric handling smoother and more natural, but it may require updating application code to work.

The backwards-breaking changes will be related to the serialization and deserialization of integers. You can test how these changes will affect your code by specifying the .ini changes now: mongo.native_int and mongo.long_as_object will default to TRUE.

Serialization: by default pre-1.1.0, all PHP integers are serialized as 32-bit integers, even on 64-bit machines. This means that large numbers get silently truncated. In 1.1.0, 64-bit machines will, by default, save integers as 64-bit integers. 32-bit machines will continue to save integers as 32-bit integers (you can also use the MongoInt32 and MongoInt64 classes to use 32-bit int on a 64-bit machine or visa versa).

Deserialization: by default pre-1.1.0, 64-bit integers will be deserialized as doubles. This is not a perfect mapped and means they will be resaved as the wrong type (double instead of 64-bit integer). In 1.1.0, 64-bit integers will be returned as MongoInt64's on 32-bit machines.

MongoDB allows programmers to save and query for data expressed in all of the basic PHP types, compound types (arrays, associative arrays, and objects), and a half-dozen classes provided by the MongoDB PHP driver (for regular expressions, dates, and other specialized applications).

Simple Types

The built-in types are:

Type | Description | Size in MongoDB (bytes)
NULL | Fairly self-explanatory. | 0
boolean | TRUE and FALSE | 1
int | Integer values. | 4
float | Double values. | 8
string | Strings of UTF-8 characters. | string length + 1

Arrays and Objects

Arrays and objects can also be saved to the database. An array with ascending numeric keys will be saved as a an array, anything else will be saved as an object.

<?php

// $scores will be saved as an array
$scores = array(98, 100, 73, 85);
$collection->insert(array("scores" => $scores));

// $scores will be saved as an object
$scores = array("quiz1" => 98, "midterm" => 100, "quiz2" => 73, "final" => 85);
$collection->insert(array("scores" => $scores));

?>

If you query for these objects using the database shell, they will look like:

> db.students.find()
{ "_id" : ObjectId("4b06beada9ad6390dab17c43"), "scores" : [ 98, 100, 73, 85 ] }
{ "_id" : ObjectId("4b06bebea9ad6390dab17c44"), "scores" : { "quiz1" : 98, "midterm" : 100, "quiz2" : 73, "final" : 85 } }

The database can also save arbitrary PHP objects (although they will be returned as associative arrays). The fields are used for the key/value pairs. For example, a blog post might look like:

<?php

  // the blog post class
  class Post {

  var $author;
  var $content;
  var $comments = array();
  var $date;

  public function __construct($author, $content) {
  $this->author = $author;
$this->content = $content;
    $this->date = new MongoDate();
  }

  public function setTitle($title) {
    $this->title = $title;
  }
}

// create a simple blog post and insert it into the database
$post1 = new Post("Adam", "This is a blog post");

$blog->insert($post1);

// there is nothing restricting the type of the "author" field, so we can make
// it a nested object
$author = array("name" => "Fred", "karma" => 42);
$post2 = new Post($author, "This is another blog post.");

// we create an extra field by setting the title
$post2->setTitle("Second Post");

$blog->insert($post2);

?>

From the database shell, this will look something like:

> db.blog.find()
{ "_id" : ObjectId("4b06c263edb87a281e09dad8"), "author" : "Adam", "content" : "This is a blog post", "comments" : [ ], "date" : "Fri Nov 20 2009 11:22:59 GMT-0500 (EST)" }
{ "_id" : ObjectId("4b06c282edb87a281e09dad9"), "author" : { "name" : "Fred", "karma" : 42 }, "content" : "This is a blog post", "comments" : [ ], "date" : "Fri Nov 20 2009 11:23:30 GMT-0500 (EST)", "title" : "Second Post" }

The driver will not detect reference loops in arrays and objects. For example, this will give a fatal error:

<?php

$collection->insert($GLOBALS);

?>

Fatal error: Nesting level too deep - recursive dependency?
If you need to insert documents that may have recursive dependency, you have to check for it yourself before passing it to the driver.

MongoDB Types

The Mongo PHP driver also defines a few new types to use with the database. See class documentation for details and examples.

Type | Description | Size in MongoDB (bytes)
MongoBinData | Binary data. | Number of bytes in binary data + 5
MongoCode | JavaScript code. | String length of code + object size of scope.
MongoDate | Dates and times. Stored as milliseconds since the epoch. | 8
MongoId Unique document id:

  • 4 bytes of timestamp

    No two records can have the same id if they were inserted at different times.

  • 3 bytes machine id

    No two records can have the same id if they were inserted on different machines

  • 2 bytes thread id

    No two records can have the same id if they were inserted by different threads running on the same machine.

  • 3 bytes incrementing value

    Each time an id is created, a global counter is incremented and used as the increment value of the next id.

Thus, no two records can have the same id unless a single process on a single machine managed to insert 256^3 (over 16 million) documents in one second, overflowing the increment field. 		12
MongoMinKey | Always smaller than any other value. | String length of code + object size of scope.
MongoMaxKey | JavaScript code. | Always larger than any other value.
MongoRegex | Regular expressions. | Number of characters in regular expression + number of flags
MongoTimestamp | Replication timestamp | 8

BSON

MongoDB uses a storage format called "BSON," Binary Serializable Object Notation, which is similar to JSON but more compact and rich in types. Listed below is the exact byte size of each type (or information required to compute its size, in the case of variable-length types). Keep in mind that these sizes do not include field names. The size of an object can be manually computed, but it may be easier for programmers to call the bson_encode() function and take the length of the resulting string.

An example of manually computing BSON size for saving the object array("x" => null, "y" => 40):

4 bytes (object size)

1 byte  (type of "x" field)
2 bytes ("x" and "\0")
0 bytes (for null)

1 byte  (type of "y" field)
2 bytes ("y" and "\0")
4 bytes (for an integer)

1 byte  (end-of-object byte)
-----------------------
15 bytes

MongoCursor::valid
MongoId
Mongo


The MongoId class

Introdução

A unique identifier created for database objects. If an object is inserted into the database without an _id field, an _id field will be added to it with a MongoId instance as its value. If the data has a naturally occuring unique field (say, a username or timestamp) it is fine to use this as the _id field instead, and it will not be replaced with a MongoId.

Instances of the MongoId class fulfill the role that autoincrementing does in a relational database: to provide a unique key if the data does not natually have one. Autoincrementing does not work well with a sharded database, as it is impossible to find what the next number should be quickly. This class fulfills the constraints of quickly generating a value that is unique across shards.

Each MongoId is 12 bytes (making its string form 24 hexidecimal characters). The first four bytes are a timestamp, the next three are a hash of the client machine's hostname, the next two are the two least significant bytes of the process id running the script, and the last three bytes are an incrementing value.

MongoIds are serializable/unserializable. Their serialized form is similar to their string form:

C:7:"MongoId":24:{4af9f23d8ead0e1d32000000}

Sinopse da classe

MongoId {
public string $$id = NULL ;
/* Methods */
__construct ([ string $id = NULL ] )
publicstaticstring getHostname ( void )
public int getInc ( void )
public int getPID ( void )
public int getTimestamp ( void )
publicstaticMongoId __set_state ( array $props )
public string __toString ( void )
}

Fields

$id
This field contains the string representation of this object.

Veja Também

MongoDB core docs on » ids.

Índice

  • MongoId::__construct — Creates a new id
  • MongoId::getHostname — Gets the hostname being used for this machine's ids
  • MongoId::getInc — Gets the incremented value to create this id
  • MongoId::getPID — Gets the process id used to create this
  • MongoId::getTimestamp — Gets the number of seconds since the epoch that this id was created
  • MongoId::__set_state — Create a dummy MongoId
  • MongoId::__toString — Returns a hexidecimal representation of this id
Types
MongoId::__construct
Types


Creates a new id

MongoId
MongoId::getHostname
MongoId
PHP Manual

MongoId::__construct

(PECL mongo >= 0.8.0)

MongoId::__construct — Creates a new id

Descrição

MongoId::__construct ([ string $id = NULL ] )

Parâmetros

id

A string to use as the id. Must be 24 hexidecimal characters. If an invalid string is passed to this constructor, the constructor will ignore it and create a new id value.

Valor Retornado

Returns a new id.

Exemplos

Exemplo #1 MongoId::__construct() example

This example shows how to create a new id. This is seldom necessary, as the driver adds an id to arrays automatically before storing them in the database.

<?php

  $id1 = new MongoId();
  echo "$id1\n";

  $id2 = new MongoId();
  echo "$id2\n";

  ?>

O exemplo acima irá imprimir algo similar a:

49a7011a05c677b9a916612a
49a702d5450046d3d515d10d

Exemplo #2 Parameter example

This example shows how to use a string parameter to initialize a MongoId with a given value.

<?php
  $id1 = new MongoId();

  // create a new id from $id1
  $id2 = new MongoId("$id1");

  // show that $id1 and $id2 have the same hexidecimal value
  var_dump($id1 == $id2);
  ?>

O exemplo acima irá imprimir algo similar a:

bool(true)

Veja Também

  • MongoId::__toString() - Returns a hexidecimal representation of this id

MongoId
MongoId::getHostname
MongoId


Gets the hostname being used for this machine's ids

MongoId::__construct
MongoId::getInc
MongoId
PHP Manual

MongoId::getHostname

(PECL mongo >= 1.0.8)

MongoId::getHostname — Gets the hostname being used for this machine's ids

Descrição

publicstaticstring MongoId::getHostname ( void )

This returns the hostname MongoId is using to generate unique ids. This should be the same value gethostname() returns.

It is identical to the function:

<?php

public static function getHostname() {
    return gethostname();
}

?>

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the hostname.

MongoId::__construct
MongoId::getInc
MongoId


Gets the incremented value to create this id

MongoId::getHostname
MongoId::getPID
MongoId
PHP Manual

MongoId::getInc

(PECL mongo >= 1.0.11)

MongoId::getInc — Gets the incremented value to create this id

Descrição

public int MongoId::getInc ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the incremented value used to create this MongoId.

MongoId::getHostname
MongoId::getPID
MongoId


Gets the process id used to create this

MongoId::getInc
MongoId::getTimestamp
MongoId
PHP Manual

MongoId::getPID

(PECL mongo >= 1.0.11)

MongoId::getPID — Gets the process id used to create this

Descrição

public int MongoId::getPID ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the PID used to create this MongoId.

MongoId::getInc
MongoId::getTimestamp
MongoId


Gets the number of seconds since the epoch that this id was created

MongoId::getPID
MongoId::__set_state
MongoId
PHP Manual

MongoId::getTimestamp

(PECL mongo >= 1.0.1)

MongoId::getTimestamp — Gets the number of seconds since the epoch that this id was created

Descrição

public int MongoId::getTimestamp ( void )

This returns the same thing as running time() when the id is created.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of seconds since the epoch that this id was created. There are only four bytes of timestamp stored, so MongoDate is a better choice for storing exact or wide-ranging times.

MongoId::getPID
MongoId::__set_state
MongoId


Create a dummy MongoId

MongoId::getTimestamp
MongoId::__toString
MongoId
PHP Manual

MongoId::__set_state

(PECL mongo >= 1.0.8)

MongoId::__set_state — Create a dummy MongoId

Descrição

publicstaticMongoId MongoId::__set_state ( array $props )

This function is only used by PHP internally, it shouldn't need to ever be called by the user.

It is identical to the function:

<?php

public static function __set_state($props) {
    return new MongoId("000000000000000000000000");
}

?>

Parâmetros

props

Theoretically, an array of properties used to create the new id. However, as MongoId instances have no properties, this is not used.

Valor Retornado

A new id with the value "000000000000000000000000".

MongoId::getTimestamp
MongoId::__toString
MongoId


Returns a hexidecimal representation of this id

MongoId::__set_state
MongoCode
MongoId
PHP Manual

MongoId::__toString

(PECL mongo >= 0.8.0)

MongoId::__toString — Returns a hexidecimal representation of this id

Descrição

public string MongoId::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This id.

Exemplos

Exemplo #1 MongoId::__toString() example

<?php

$m = new Mongo();
$collection = $m->selectDB("foo")->selectCollection("bar");

$collection->insert(array( "x" => "y" ));
$collection->insert(array( "x" => "y" ));

$cursor = $collection->find();
$r1 = $cursor->next();
$r2 = $cursor->next();

echo $r1["_id"] . "\n";
echo $r2["_id"] . "\n";

?>

O exemplo acima irá imprimir algo similar a:

49a7011a05c677b9a916612a
49a702d5450046d3d515d10d
MongoId::__set_state
MongoCode
MongoId


The MongoCode class

Introdução

Represents JavaScript code for the database.

MongoCode objects are composed of two parts: a string of code and an optional scope. The string of code must be valid JavaScript. The scope is a associative array of variable name/value pairs.

Sinopse da classe

MongoCode {
/* Methods */
__construct ( string $code [, array $scope = array() ] )
public string __toString ( void )
}

Índice

  • MongoCode::__construct — Creates a new code object
  • MongoCode::__toString — Returns this code as a string
MongoId::__toString
MongoCode::__construct
Types


Creates a new code object

MongoCode
MongoCode::__toString
MongoCode
PHP Manual

MongoCode::__construct

(PECL mongo >= 0.8.3)

MongoCode::__construct — Creates a new code object

Descrição

MongoCode::__construct ( string $code [, array $scope = array() ] )

Parâmetros

code

A string of code.

scope

The scope to use for the code.

Valor Retornado

Returns a new code object.

Exemplos

Exemplo #1 MongoCode::__construct() example

<?php

$code = new MongoCode('function() { '.
    'for(i=0;i<10;i++) {'.
        'db.foo.update({z : i}, {z : x});'.
    '}'.
    'return x-1;'.
 '}', array("x" => 4));
var_dump($code);

?>

O exemplo acima irá imprimir algo similar a:

object(MongoCode)#1 (2) {
  ["scope"]=>
  array(1) {
    ["x"]=>
    int(4)
  }
  ["code"]=>
  string(80) "function() { for(i=0;i<10;i++) { db.foo.update({z : i}, {z : x}); } return x-1; }"
}

Exemplo #2 Using MongoCode() with $where

This example queries a collection for elements where the 'x' fields is less than $y. Notice that PHP objects can be passed into the JavaScript scope and that the JavaScript function returns a boolean.

<?php

$cursor = $collection->find(array('$where' => new MongoCode('function() { return this.x < y; }', array('y'=>$y))));

?>
MongoCode
MongoCode::__toString
MongoCode


Returns this code as a string

MongoCode::__construct
MongoDate
MongoCode
PHP Manual

MongoCode::__toString

(PECL mongo >= 0.8.3)

MongoCode::__toString — Returns this code as a string

Descrição

public string MongoCode::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This code, the scope is not returned.

Exemplos

Exemplo #1 MongoCode::__toString() example

<?php

$code = new MongoCode('return x;', array("x"=>"hi"));
echo "$code\n";

$code = new MongoCode('function() { for(i=0;i<10;i++) { db.foo.update({x:i}, {x:i+1}); } }');
echo "$code\n";

?>

O exemplo acima irá imprimir algo similar a:

return x;
function() { for(i=0;i<10;i++) { db.foo.update({x:i}, {x:i+1}); } }
MongoCode::__construct
MongoDate
MongoCode


The MongoDate class

Introdução

Represent date objects for the database. This class should be used to save dates to the database and to query for dates. For example:

<?php

// save a date to the database
$collection->save(array("ts" => new MongoDate()));

$start = new MongoDate(strtotime("2010-01-15 00:00:00"));
$end = new MongoDate(strtotime("2010-01-30 00:00:00"));

// find dates between 1/15/2010 and 1/30/2010
$collection->find(array("ts" => array('$gt' => $start, '$lte' => $end)));

?>

MongoDB stores dates as milliseconds past the epoch. This means that dates do not contain timezone information. Timezones must be stored in a separate field if needed. Second, this means that any precision beyond milliseconds will be lost when the document is sent to/from the database.

Sinopse da classe

MongoDate {
/* Fields */
public int $sec ;
public int $usec ;
/* Methods */
__construct ([ int $sec [, int $usec ]] )
publicstring __toString ( void )
}

Índice

  • MongoDate::__construct — Creates a new date.
  • MongoDate::__toString — Returns a string representation of this date
MongoCode::__toString
MongoDate::__construct
Types


Creates a new date.

MongoDate
MongoDate::__toString
MongoDate
PHP Manual

MongoDate::__construct

(PECL mongo >= 0.8.1)

MongoDate::__construct — Creates a new date.

Descrição

MongoDate::__construct ([ int $sec [, int $usec ]] )

Creates a new date. If no parameters are given, the current time is used.

Parâmetros

sec

Number of seconds since January 1st, 1970.

usec

Microseconds.

Valor Retornado

Returns this new date.

Exemplos

Exemplo #1 MongoDate::__construct() example

This example demonstrates creating a new date with the current time and a new date with a given time.

<?php

$d = new MongoDate();
echo "$d\n";
$d = new MongoDate(1234567890);
echo "$d\n";
$d = new MongoDate(strtotime("2009-05-01 00:00:01"));
echo "$d\n";

?>

O exemplo acima irá imprimir algo similar a:

0.23660600 1235685067
0.00000000 1234567890
0.00000000 1241150401

Veja Também

  • MongoDate::__toString() - Returns a string representation of this date

MongoDate
MongoDate::__toString
MongoDate


Returns a string representation of this date

MongoDate::__construct
MongoRegex
MongoDate
PHP Manual

MongoDate::__toString

(PECL mongo >= 0.8.1)

MongoDate::__toString — Returns a string representation of this date

Descrição

publicstring MongoDate::__toString ( void )

Returns a string representation of this date, similar to the representation returned by microtime().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This date.

MongoDate::__construct
MongoRegex
MongoDate


The MongoRegex class

Introdução

This class can be used to create regular expressions. Typically, these expressions will be used to query the database and find matching strings. More unusually, they can be saved to the database and retrieved.

Mongo recognizes six regular expression flags:

  • i

    Case insensitive

  • m

    Multiline

  • x

    Can contain comments

  • l

    locale

  • s

    dotall, "." matches everything, including newlines

  • u

    match unicode

Sinopse da classe

MongoRegex {
/* Fields */
public string $regex ;
public string $flags ;
/* Methods */
__construct ( string $regex )
public string __toString ( void )
}

Índice

  • MongoRegex::__construct — Creates a new regular expression
  • MongoRegex::__toString — A string representation of this regular expression
MongoDate::__toString
MongoRegex::__construct
Types


Creates a new regular expression

MongoRegex
MongoRegex::__toString
MongoRegex
PHP Manual

MongoRegex::__construct

(PECL mongo >= 0.8.1)

MongoRegex::__construct — Creates a new regular expression

Descrição

MongoRegex::__construct ( string $regex )

Creates a new regular expression.

Parâmetros

regex

Regular expression string of the form /expr/flags.

Valor Retornado

Returns a new regular expression.

Exemplos

Exemplo #1 MongoRegex::__construct() example

This example uses a regular expression to query for all documents with a username field matching a regular expression.

<?php

$joe_search = new MongoRegex("/j[o0]e/i");
$cursor = $collection->find(array("username" => $joe_search));

?>

Veja Também

  • MongoRegex::__toString() - A string representation of this regular expression

MongoRegex
MongoRegex::__toString
MongoRegex


A string representation of this regular expression

MongoRegex::__construct
MongoBinData
MongoRegex
PHP Manual

MongoRegex::__toString

(PECL mongo >= 0.8.1)

MongoRegex::__toString — A string representation of this regular expression

Descrição

public string MongoRegex::__toString ( void )

Returns a string representation of this regular expression.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This regular expression in the form "/expr/flags".

Exemplos

Exemplo #1 MongoRegex::__toString() example

<?php

$r = new MongoRegex( "/[a-fA-F0-9]{16}/g" );
echo $r->regex . "\n";
echo $r->flags . "\n";
echo "$r\n";

?>

O exemplo acima irá imprimir algo similar a:

[a-fA-F0-9]{16}
g
/[a-fA-F0-9]{16}/g

MongoRegex::__construct
MongoBinData
MongoRegex


The MongoBinData class

Introdução

An object that can be used to store or retrieve binary data from the database.

The maximum size of a single object that can be inserted into the database is 4Mb. For data that is larger than this (movies, music, Henry Kissinger's autobiography), use MongoGridFS. For data that is smaller than 4Mb, it's probably be easier to just embed it into the document using MongoBinData.

For example, to embed an image in a document, one could write:

<?php

$profile = array("username" => "foobity",
    "pic" => new MongoBinData(file_get_contents("gravatar.jpg"))
);

$users->save($profile);

?>

This class contains a type field, which currently gives no additional functionality in the driver or the database. There are five predefined types (which are the class constants listed below), and the user can create their own (at the risk of the BSON spec catching up with them). By default, the PHP driver always uses type 2: a byte array.

Sinopse da classe

MongoBinData {
/* Constants */
const int MongoBinData::FUNC = 1 ;
const int MongoBinData::BYTE_ARRAY = 2 ;
const int MongoBinData::UUID = 3 ;
const int MongoBinData::MD5 = 5 ;
const int MongoBinData::CUSTOM = 128 ;
/* Fields */
public string $bin ;
public int $type = 2 ;
/* Methods */
public __construct ( string $data [, int $type = 2 ] )
public string __toString ( void )
}

Constantes pré-definidas

Binary Data Types

MongoBinData::FUNC
0x01
Function.
MongoBinData::BYTE_ARRAY
0x02
Array of bytes.
MongoBinData::UUID
0x03
Universally unique identifier.
MongoBinData::MD5
0x05
MD5.
MongoBinData::CUSTOM
0xf0
User-defined type.

Índice

  • MongoBinData::__construct — Creates a new binary data object.
  • MongoBinData::__toString — The string representation of this binary data object.
MongoRegex::__toString
MongoBinData::__construct
Types


Creates a new binary data object.

MongoBinData
MongoBinData::__toString
MongoBinData
PHP Manual

MongoBinData::__construct

(PECL mongo >= 0.8.1)

MongoBinData::__construct — Creates a new binary data object.

Descrição

public MongoBinData::__construct ( string $data [, int $type = 2 ] )

Creates a new binary data object.

There are five types of binary data currently recognized by the BSON spec: function (0x01), byte array (0x02), UUID (0x03), MD5 (0x05), and user defined (0x80). The default type is byte array (0x02). There is no particular difference in how the driver or server interpret different types, so by and large they are irrelevant for now. Any number (between 0 and 255) could be used for type, if the user is willing to assume the risk that the database might eventually do something with binary data based on type.

Parâmetros

data

Binary data.

type

Data type.

Valor Retornado

Returns a new binary data object.

MongoBinData
MongoBinData::__toString
MongoBinData


The string representation of this binary data object.

MongoBinData::__construct
MongoInt32
MongoBinData
PHP Manual

MongoBinData::__toString

(PECL mongo >= 0.8.1)

MongoBinData::__toString — The string representation of this binary data object.

Descrição

public string MongoBinData::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string "<Mongo Binary Data>". To access the contents of a MongoBinData, use the bin field.

MongoBinData::__construct
MongoInt32
MongoBinData


The MongoInt32 class

Introdução

The class can be used to save 32-bit integers to the database on a 64-bit system.

Sinopse da classe

MongoInt32 {
/* Methods */
public __construct ( string $value )
public string __toString ( void )
}

Índice

  • MongoInt32::__construct — Creates a new 32-bit integer.
  • MongoInt32::__toString — Returns the string representation of this 32-bit integer.
MongoBinData::__toString
MongoInt32::__construct
Types


Creates a new 32-bit integer.

MongoInt32
MongoInt32::__toString
MongoInt32
PHP Manual

MongoInt32::__construct

(PECL mongo >= 1.0.9)

MongoInt32::__construct — Creates a new 32-bit integer.

Descrição

public MongoInt32::__construct ( string $value )

Creates a new 32-bit number with the given value.

Parâmetros

value

A number.

Valor Retornado

Returns a new integer.

MongoInt32
MongoInt32::__toString
MongoInt32


Returns the string representation of this 32-bit integer.

MongoInt32::__construct
MongoInt64
MongoInt32
PHP Manual

MongoInt32::__toString

(PECL mongo >= 1.0.9)

MongoInt32::__toString — Returns the string representation of this 32-bit integer.

Descrição

public string MongoInt32::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string representation of this integer.

MongoInt32::__construct
MongoInt64
MongoInt32


The MongoInt64 class

Introdução

The class can be used to save 64-bit integers to the database on a 32-bit system.

Sinopse da classe

MongoInt64 {
/* Methods */
public __construct ( string $value )
public string __toString ( void )
}

Índice

  • MongoInt64::__construct — Creates a new 64-bit integer.
  • MongoInt64::__toString — Returns the string representation of this 64-bit integer.
MongoInt32::__toString
MongoInt64::__construct
Types


Creates a new 64-bit integer.

MongoInt64
MongoInt64::__toString
MongoInt64
PHP Manual

MongoInt64::__construct

(PECL mongo >= 1.0.9)

MongoInt64::__construct — Creates a new 64-bit integer.

Descrição

public MongoInt64::__construct ( string $value )

Creates a new 64-bit number with the given value.

Parâmetros

value

A number.

Valor Retornado

Returns a new integer.

MongoInt64
MongoInt64::__toString
MongoInt64


Returns the string representation of this 64-bit integer.

MongoInt64::__construct
MongoDBRef
MongoInt64
PHP Manual

MongoInt64::__toString

(PECL mongo >= 1.0.9)

MongoInt64::__toString — Returns the string representation of this 64-bit integer.

Descrição

public string MongoInt64::__toString ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string representation of this integer.

MongoInt64::__construct
MongoDBRef
MongoInt64


The MongoDBRef class

Introdução

This class can be used to create lightweight links between objects in different collections.

Motivation: Suppose we need to refer to a document in another collection. The easiest way is to create a field in the current document. For example, if we had a "people" collection and an "addresses" collection, we might want to create a link between each person document and an address document:

<?php

$people = $db->people;
$addresses = $db->addresses;

$myAddress = array("line 1" => "123 Main Street",
    "line 2" => null,
    "city" => "Springfield",
    "state" => "Vermont",
    "country" => "USA");

// save the address
$addresses->insert($myAddress);

// save a person with a reference to the address
$me = array("name" => "Fred", "address" => $myAddress['_id']);
$people->insert($me);

?>

Then, later on, we can find the person's address by querying the "addresses" collection with the MongoId we saved in the "people" collection.

Suppose now that we have a more general case, where we don't know which collection (or even which database) contains the referenced document. MongoDBRef is a good choice for this case, as it is a common format that all of the drivers and the database understand.

If each person had a list of things they liked which could come from multiple collections, such as "hobbies", "sports", "books", etc., we could use MongoDBRefs to keep track of what "like" went with what collection:

<?php

$people = $db->selectCollection("people");

// model trains are in the "hobbies" collection
$trainRef = MongoDBRef::create("hobbies", $modelTrains['_id']);
// soccer is in the "sports" collection
$soccerRef = MongoDBRef::create("sports", $soccer['_id']);

// now we'll know what collections the items in the "likes" array came from when
// we retrieve this document
$people->insert(array("name" => "Fred", "likes" => array($trainRef, $soccerRef)));

?>

Database references can be thought of as hyperlinks: they give the unique address of another document, but they do not load it or automatically follow the link/reference.

A database reference is just a normal associative array, not an instance of MongoDBRef, so this class is a little different than the other data type classes. This class contains exclusively static methods for manipulating database references.

Sinopse da classe

MongoDBRef {
/* Methods */
public static array create ( string $collection , mixed $id [, string $database ] )
public static array get ( MongoDB $db , array $ref )
public static bool isRef ( mixed $ref )
}

Veja Também

MongoDB core docs on » databases references.

Índice

  • MongoDBRef::create — Creates a new database reference
  • MongoDBRef::get — Fetches the object pointed to by a reference
  • MongoDBRef::isRef — Checks if an array is a database reference
MongoInt64::__toString
MongoDBRef::create
Types


Creates a new database reference

MongoDBRef
MongoDBRef::get
MongoDBRef
PHP Manual

MongoDBRef::create

(PECL mongo >= 0.9.0)

MongoDBRef::create — Creates a new database reference

Descrição

public static array MongoDBRef::create ( string $collection , mixed $id [, string $database ] )

If no database is given, the current database is used.

Parâmetros

collection

Collection name (without the database name).

id

The _id field of the object to which to link.

database

Database name.

Valor Retornado

Returns the reference.

Exemplos

Exemplo #1 MongoDBRef::create() example

This creates a database reference to a document in the addresses collection. The MongoCollection::getName() function returns the name of the collection (not including the database name).

<?php
$addresses = $db->addresses;
$people = $db->people;

// save $address so it has an _id
$addresses->insert($address);

// create a reference
$ref = MongoDBRef::create($addresses->getName(), $address['_id']);

// set the field in $person
$person['address'] = $ref;
$people->save($person);
?>

Veja Também

  • MongoDB::createDBRef() - Creates a database reference
  • MongoCollection::createDBRef() - Creates a database reference

MongoDBRef
MongoDBRef::get
MongoDBRef


Fetches the object pointed to by a reference

MongoDBRef::create
MongoDBRef::isRef
MongoDBRef
PHP Manual

MongoDBRef::get

(PECL mongo >= 0.9.0)

MongoDBRef::get — Fetches the object pointed to by a reference

Descrição

public static array MongoDBRef::get ( MongoDB $db , array $ref )

Parâmetros

db

Database to use.

ref

Reference to fetch.

Valor Retornado

Returns the document to which the reference refers or NULL if the document does not exist (the reference is broken).

Exemplos

Exemplo #1 MongoCollection::createDBRef() example

<?php

// get $person out of the db
$person = $people->findOne();

// dereference the address
$address = MongoDBRef::get($people->db, $person['address']);

?>

Veja Também

  • MongoDB::getDBRef() - Fetches the document pointed to by a database reference
  • MongoCollection::getDBRef() - Fetches the document pointed to by a database reference

MongoDBRef::create
MongoDBRef::isRef
MongoDBRef


Checks if an array is a database reference

MongoDBRef::get
MongoMinKey
MongoDBRef
PHP Manual

MongoDBRef::isRef

(PECL mongo >= 0.9.0)

MongoDBRef::isRef — Checks if an array is a database reference

Descrição

public static bool MongoDBRef::isRef ( mixed $ref )

This not actually follow the reference, so it does not determine if it is broken or not. It merely checks that ref is in valid database reference format (in that it is an object or array with $ref and $id fields).

Parâmetros

ref

Array or object to check.

Valor Retornado

Returns if ref is a reference.

MongoDBRef::get
MongoMinKey
MongoDBRef


The MongoMinKey class

Introdução

MongoMinKey is a special type used by the database that evaluates to less than any other type. Thus, if a query is sorted by a given field in ascending order, any document with a MongoMinKey as its value will be returned first.

MongoMinKey has no associated fields, methods, or constants. It is merely the "smallest" thing that can be inserted into the database.

Sinopse da classe

MongoMinKey {
}

Using MongoMinKey as a value

<?php

$collection->insert(array("task" => "lunch", "do by" => new MongoMinKey));
$collection->insert(array("task" => "staff meeting", "do by" => new MongoDate(strtotime("+4 days"))));

$cursor = $collection->find()->sort(array("do by" => 1));

?>

The cursor will contain the lunch document, then the staff meeting document. The lunch document will always be returned first, regardless of what else is added to the collection (unless other documents are added with MongoMinKey in the "do by" field).

MongoDBRef::isRef
MongoMaxKey
Types


The MongoMaxKey class

Introdução

MongoMaxKey is a special type used by the database that evaluates to greater than any other type. Thus, if a query is sorted by a given field in ascending order, any document with a MongoMaxKey as its value will be returned last.

MongoMaxKey has no associated fields, methods, or constants. It is merely the "largest" thing that can be inserted into the database.

Sinopse da classe

MongoMaxKey {
}

Using MongoMaxKey as a value

<?php

$collection->insert(array("task" => "dishes", "do by" => new MongoMaxKey));
$collection->insert(array("task" => "staff meeting", "do by" => new MongoDate(strtotime("+4 days"))));

$cursor = $collection->find()->sort(array("do by" => 1));

?>

The cursor will contain the staff meeting document, then the dishes document. The dishes document will always be returned last, regardless of what else is added to the collection (unless other documents are added with MongoMaxKey in the "do by" field).

MongoMinKey
MongoTimestamp
Types


The MongoTimestamp class

Introdução

MongoTimestamp is used by sharding. If you're not looking to write sharding tools, what you probably want is MongoDate.

MongoTimestamp is 4 bytes of timestamp (seconds since the epoch) and 4 bytes of increment.

This class is not for measuring time, creating a timestamp on a document or automatically adding or updating a timestamp on a document. Unless you are writing something that interacts with the sharding internals, stop, go directly to MongoDate, do not pass go, do not collect 200 dollars. This is not the class you are looking for.

If you are writing sharding tools, read on.

Sinopse da classe

MongoTimestamp {
/* Fields */
public int $sec = 0 ;
public int $inc = 0 ;
/* Methods */
__construct ([ int $sec [, int $inc ]] )
publicstring __toString ( void )
}

Índice

  • MongoTimestamp::__construct — Creates a new timestamp.
  • MongoTimestamp::__toString — Returns a string representation of this timestamp
MongoMaxKey
MongoTimestamp::__construct
Types


Creates a new timestamp.

MongoTimestamp
MongoTimestamp::__toString
MongoTimestamp
PHP Manual

MongoTimestamp::__construct

(PECL mongo >= 1.0.1)

MongoTimestamp::__construct — Creates a new timestamp.

Descrição

MongoTimestamp::__construct ([ int $sec [, int $inc ]] )

Creates a new timestamp. If no parameters are given, the current time is used and the increment is automatically provided. The increment is set to 0 when the module is loaded and is incremented every time this constructor is called (without the $inc parameter passed in).

Parâmetros

sec

Number of seconds since January 1st, 1970.

inc

Increment.

Valor Retornado

Returns this new timestamp.

Veja Também

  • MongoTimestamp::__toString() - Returns a string representation of this timestamp

MongoTimestamp
MongoTimestamp::__toString
MongoTimestamp


Returns a string representation of this timestamp

MongoTimestamp::__construct
GridFS Classes
MongoTimestamp
PHP Manual

MongoTimestamp::__toString

(PECL mongo >= 1.0.1)

MongoTimestamp::__toString — Returns a string representation of this timestamp

Descrição

publicstring MongoTimestamp::__toString ( void )

Returns the "sec" field of this timestamp.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The seconds since epoch represented by this timestamp.

MongoTimestamp::__construct
GridFS Classes
MongoTimestamp


GridFS Classes

Índice

  • MongoGridFS
  • MongoGridFSFile
  • MongoGridFSCursor
MongoTimestamp::__toString
MongoGridFS
Mongo


The MongoGridFS class

Introdução

Utilities for storing and retrieving files from the database.

GridFS is a storage specification all supported drivers implement. Basically, it defines two collections: files, for file metadata, and chunks, for file content. If the file is large, it will automatically be split into smaller chunks and each chunk will be saved as a document in the chunks collection.

Each document in the files collection contains the filename, upload date, and md5 hash. It also contains a unique _id field, which can be used to query the chunks collection for the file's content. Each document in the chunks collection contains a chunk of binary data, a files_id field that matches its file's _id, and the position of this chunk in the overall file.

For example, the files document is something like:

<?php
array("_id" => 123456789, "filename" => "foo.txt", "chunkSize" => 3, "length" => 12);
?>
and the chunks documents look like:
<?php
array("files_id" => 123456789, "n" => 0, "data" => new MongoBinData("abc"));
array("files_id" => 123456789, "n" => 1, "data" => new MongoBinData("def"));
array("files_id" => 123456789, "n" => 2, "data" => new MongoBinData("ghi"));
array("files_id" => 123456789, "n" => 3, "data" => new MongoBinData("jkl"));
?>
Of course, the default chunk size is thousands of bytes, but that makes an unweildy example.

Inter-Language Compatibility

You should be able to use any files created by MongoGridFS with any other drivers, and visa vera. However, some drivers expect that all metadata associated with a file be in a "metadata" field. If you're going to be using other languages, it's a good idea to wrap info you might want them to see in a "metadata" field. For example, instead of:

<?php

$grid->storeFile("somefile.txt", array("date" => new MongoDate()));

?>

use something like:

<?php

$grid->storeFile("somefile.txt", array("metadata" => array("date" => new MongoDate())));

?>

The MongoGridFS Family

MongoGridFS represents the files and chunks collections. MongoGridFS extends MongoCollection, and an instance of MongoGridFS has access to all of MongoCollection methods, which act on the files collection:

<?php

$grid = $db->getGridFS();
$grid->update(array("filename" => "foo"), $newObj); // update on the files collection

?>

Another example of manipulating metadata:

<?php

// save a file
$id = $grid->storeFile("game.tgz");
$game = $grid->findOne();

// add a downloads counter
$game->file['downloads'] = 0;
$grid->save($game->file);

// increment the counter
$grid->update(array("_id" => $id), array('$inc' => array("downloads" => 1)));

?>

You can also access the chunks collection from an instance of MongoGridFS:

<?php

  $chunks = $grid->chunks; // $chunks is a normal MongoCollection
$chunks->insert(array("x" => 4));

?>

There are some methods for MongoGridFS with the same name as MongoCollection methods, that behave slightly differently. For example, MongoGridFS::remove() will remove any objects that match the criteria from the files collection and their content from the chunks collection.

To store something new in GridFS, there are a couple options. If you have a filename, you can say:

<?php

$grid->storeFile($filename, array("whatever" => "metadata", "you" => "want"));

?>

If you have a string of bytes that isn't a file, you can also store that using MongoGridFS::storeBytes():

<?php

$grid->storeBytes($bytes, array("whatever" => "metadata", "you" => "want"));

?>

Querying a MongoGridFS collection returns a MongoGridFSCursor, which behaves like a normal MongoCursor except that it returns MongoGridFSFiles instead of associative arrays.

MongoGridFSFiles can be written back to disc using MongoGridFSFile::write() or retrieved in memory using MongoGridFSFile::getBytes(). There is currently no method that automatically streams chunks, but it would be fairly easy to write by querying the $grid->chunks collection.

MongoGridFSFile objects contain a field file which contains any file metadata.

Sinopse da classe

extends MongoCollection {
/* Fields */
public MongoCollection $chunks = NULL ;
protected string $filesName = NULL ;
protected string $chunksName = NULL ;
/* Methods */
__construct ( MongoDB $db [, string $prefix = "fs" [, mixed $chunks = "fs" ]] )
public bool delete ( mixed $id )
public array drop ( void )
public MongoGridFSCursor find ([ array $query = array() [, array $fields = array() ]] )
public MongoGridFSFile findOne ([ mixed $query = array() [, mixed $fields = array() ]] )
public MongoGridFSFile get ( mixed $id )
public mixed put ( string $filename [, array $extra = array() ] )
public bool remove ([ array $criteria = array() [, array $options = array() ]] )
public mixed storeBytes ( string $bytes [, array $extra = array() [, array $options = array() ]] )
public mixed storeFile ( string $filename [, array $extra = array() [, array $options = array() ]] )
public mixed storeUpload ( string $name [, string $filename ] )
}

Veja Também

MongoDB core docs on » GridFS. There's also a nice intro to » saving user uploads and » adding metadata at LightCubeSolutions.com.

Índice

  • MongoGridFS::__construct — Creates new file collections
  • MongoGridFS::delete — Delete a file from the database
  • MongoGridFS::drop — Drops the files and chunks collections
  • MongoGridFS::find — Queries for files
  • MongoGridFS::findOne — Returns a single file matching the criteria
  • MongoGridFS::get — Retrieve a file from the database
  • MongoGridFS::put — Stores a file in the database
  • MongoGridFS::remove — Removes files from the collections
  • MongoGridFS::storeBytes — Chunkifies and stores bytes in the database
  • MongoGridFS::storeFile — Stores a file in the database
  • MongoGridFS::storeUpload — Saves an uploaded file to the database
GridFS Classes
MongoGridFS::__construct
GridFS Classes


Creates new file collections

MongoGridFS
MongoGridFS::delete
MongoGridFS
PHP Manual

MongoGridFS::__construct

(PECL mongo >=0.9.0)

MongoGridFS::__construct — Creates new file collections

Descrição

MongoGridFS::__construct ( MongoDB $db [, string $prefix = "fs" [, mixed $chunks = "fs" ]] )

Files as stored across two collections, the first containing file meta information, the second containing chunks of the actual file. By default, fs.files and fs.chunks are the collection names used.

Use one argument to specify a prefix other than "fs":

$fs = new MongoGridFS($db, "myfiles");
uses myfiles.files and myfiles.chunks collections.

Parâmetros

db

Database.

files

Optional collection name prefix.

MongoGridFS
MongoGridFS::delete
MongoGridFS


Delete a file from the database

MongoGridFS::__construct
MongoGridFS::drop
MongoGridFS
PHP Manual

MongoGridFS::delete

(PECL mongo >=1.0.8)

MongoGridFS::delete — Delete a file from the database

Descrição

public bool MongoGridFS::delete ( mixed $id )

Parâmetros

id

_id of the file to remove.

Valor Retornado

Returns if the remove was successfully sent to the database.

MongoGridFS::__construct
MongoGridFS::drop
MongoGridFS


Drops the files and chunks collections

MongoGridFS::delete
MongoGridFS::find
MongoGridFS
PHP Manual

MongoGridFS::drop

(PECL mongo >=0.9.0)

MongoGridFS::drop — Drops the files and chunks collections

Descrição

public array MongoGridFS::drop ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The database response.

MongoGridFS::delete
MongoGridFS::find
MongoGridFS


Queries for files

MongoGridFS::drop
MongoGridFS::findOne
MongoGridFS
PHP Manual

MongoGridFS::find

(PECL mongo >=0.9.0)

MongoGridFS::find — Queries for files

Descrição

 public MongoGridFSCursor MongoGridFS::find
  ([ array $query = array()
 [, array $fields = array()
]] )

Parâmetros

query

The query.

fields

Fields to return.

Valor Retornado

A MongoGridFSCursor.

MongoGridFS::drop
MongoGridFS::findOne
MongoGridFS


Returns a single file matching the criteria

MongoGridFS::find
MongoGridFS::get
MongoGridFS
PHP Manual

MongoGridFS::findOne

(PECL mongo >=0.9.0)

MongoGridFS::findOne — Returns a single file matching the criteria

Descrição

 public MongoGridFSFile MongoGridFS::findOne
  ([ mixed $query = array()
 [, mixed $fields = array()
]] )

Parâmetros

query

The filename or criteria for which to search.

Valor Retornado

Returns a MongoGridFSFile or NULL.

Exemplos

Exemplo #1 MongoGridFS::findOne() example

Example demonstrating how to find a single file from the MongoGridFS.

<?php

$downloads = $mongo->my_db->getGridFS('downloads');

$downloads->storeFile('filename.tgz');

$download = $downloads->findOne('filename.tgz'); // instance of MongoGridFSFile

print_r($download);
?>

See MongoGridFSFile for more information about how to work with files.

O exemplo acima irá imprimir algo similar a:

MongoGridFSFile Object
(
    [file] => Array
        (
            [_id] => MongoId Object
                (
                )

            [filename] => filename.tgz
            [uploadDate] => MongoDate Object
                (
                    [sec] => 1274288014
                    [usec] => 467000
                )

            [chunkSize] => 262144
            [md5] => d41d8cd98f00b204e9800998ecf8427e
        )

    [gridfs:protected] => MongoGridFS Object
        (
            [chunks] => MongoCollection Object
                (
                )

            [filesName:protected] => downloads.files
            [chunksName:protected] => downloads.chunks
        )

)
MongoGridFS::find
MongoGridFS::get
MongoGridFS


Retrieve a file from the database

MongoGridFS::findOne
MongoGridFS::put
MongoGridFS
PHP Manual

MongoGridFS::get

(PECL mongo >=1.0.8)

MongoGridFS::get — Retrieve a file from the database

Descrição

public MongoGridFSFile MongoGridFS::get ( mixed $id )

Parâmetros

id

_id of the file to find.

Valor Retornado

Returns the file, if found, or NULL.

MongoGridFS::findOne
MongoGridFS::put
MongoGridFS


Stores a file in the database

MongoGridFS::get
MongoGridFS::remove
MongoGridFS
PHP Manual

MongoGridFS::put

(PECL mongo >=1.0.8)

MongoGridFS::put — Stores a file in the database

Descrição

public mixed MongoGridFS::put ( string $filename [, array $extra = array() ] )

Parâmetros

filename

The name of the file.

extra

Other metadata to add to the file saved.

Valor Retornado

Returns the _id of the saved object.

MongoGridFS::get
MongoGridFS::remove
MongoGridFS


Removes files from the collections

MongoGridFS::put
MongoGridFS::storeBytes
MongoGridFS
PHP Manual

MongoGridFS::remove

(PECL mongo >=0.9.0)

MongoGridFS::remove — Removes files from the collections

Descrição

 public bool MongoGridFS::remove
  ([ array $criteria = array()
 [, array $options = array()
]] )

Parâmetros

query

The filename or criteria for which to search.

options

Options for the remove. Valid options are:

  • "safe"

    Check that the remove succeeded.

Valor Retornado

Returns if the removal was successfully sent to the database.

MongoGridFS::put
MongoGridFS::storeBytes
MongoGridFS


Chunkifies and stores bytes in the database

MongoGridFS::remove
MongoGridFS::storeFile
MongoGridFS
PHP Manual

MongoGridFS::storeBytes

(PECL mongo >=0.9.2)

MongoGridFS::storeBytes — Chunkifies and stores bytes in the database

Descrição

public mixed MongoGridFS::storeBytes ( string $bytes [, array $extra = array() [, array $options = array() ]] )

Parâmetros

bytes

A string of bytes to store.

extra

Other metadata to add to the file saved.

options

Options for the store.

  • "safe"

    Check that this store succeeded.

Valor Retornado

The _id of the object saved.

Erros

Throws MongoCursorException if the "safe" option is set and the insert fails.

MongoGridFS::remove
MongoGridFS::storeFile
MongoGridFS


Stores a file in the database

MongoGridFS::storeBytes
MongoGridFS::storeUpload
MongoGridFS
PHP Manual

MongoGridFS::storeFile

(PECL mongo >=0.9.0)

MongoGridFS::storeFile — Stores a file in the database

Descrição

public mixed MongoGridFS::storeFile ( string $filename [, array $extra = array() [, array $options = array() ]] )

Parâmetros

filename

The name of the file.

extra

Other metadata to add to the file saved.

options

Options for the store.

  • "safe"

    Check that this store succeeded.

Valor Retornado

Returns the _id of the saved object.

Erros

Throws MongoCursorException if the "safe" option is set and the insert fails.

MongoGridFS::storeBytes
MongoGridFS::storeUpload
MongoGridFS


Saves an uploaded file to the database

MongoGridFS::storeFile
MongoGridFSFile
MongoGridFS
PHP Manual

MongoGridFS::storeUpload

(PECL mongo >=0.9.0)

MongoGridFS::storeUpload — Saves an uploaded file to the database

Descrição

public mixed MongoGridFS::storeUpload ( string $name [, string $filename ] )

Parâmetros

name

The name field of the uploaded file.

filename

String to be used as filename field in the database.

Valor Retornado

Returns the _id of the uploaded file.

MongoGridFS::storeFile
MongoGridFSFile
MongoGridFS


The MongoGridFSFile class

Introdução

A database file object.

Sinopse da classe

MongoGridFSFile {
/* Fields */
public array $file = NULL ;
protected MongoGridFS $gridfs = NULL ;
/* Methods */
MongoGridfsFile::__construct ( MongoGridFS $gridfs , array $file )
public string getBytes ( void )
public string getFilename ( void )
public int getSize ( void )
public int write ([ string $filename = NULL ] )
}

Índice

  • MongoGridfsFile::__construct — Create a new GridFS file
  • MongoGridFSFile::getBytes — Returns this file's contents as a string of bytes
  • MongoGridFSFile::getFilename — Returns this file's filename
  • MongoGridFSFile::getSize — Returns this file's size
  • MongoGridFSFile::write — Writes this file to the filesystem
MongoGridFS::storeUpload
MongoGridfsFile::__construct
GridFS Classes


Create a new GridFS file

MongoGridFSFile
MongoGridFSFile::getBytes
MongoGridFSFile
PHP Manual

MongoGridfsFile::__construct

(PECL mongo >=0.9.0)

MongoGridfsFile::__construct — Create a new GridFS file

Descrição

MongoGridfsFile::__construct ( MongoGridFS $gridfs , array $file )

Parâmetros

gridfs

The parent MongoGridFS instance.

file

A file from the database.

Valor Retornado

Returns a new MongoGridFSFile.

MongoGridFSFile
MongoGridFSFile::getBytes
MongoGridFSFile


Returns this file's contents as a string of bytes

MongoGridfsFile::__construct
MongoGridFSFile::getFilename
MongoGridFSFile
PHP Manual

MongoGridFSFile::getBytes

(PECL mongo >=0.9.0)

MongoGridFSFile::getBytes — Returns this file's contents as a string of bytes

Descrição

public string MongoGridFSFile::getBytes ( void )

Warning: this will load the file into memory. If the file is bigger than your memory, this will cause problems!

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string of the bytes in the file.

Exemplos

Exemplo #1 MongoGridFSFile::getBytes() example

<?php

$images = $db->my_db->getGridFS('images');

$image = $images->findOne('jwage.png');

header('Content-type: image/png;');
echo $image->getBytes();
?>
MongoGridfsFile::__construct
MongoGridFSFile::getFilename
MongoGridFSFile


Returns this file's filename

MongoGridFSFile::getBytes
MongoGridFSFile::getSize
MongoGridFSFile
PHP Manual

MongoGridFSFile::getFilename

(PECL mongo >=0.9.0)

MongoGridFSFile::getFilename — Returns this file's filename

Descrição

public string MongoGridFSFile::getFilename ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the filename.

MongoGridFSFile::getBytes
MongoGridFSFile::getSize
MongoGridFSFile


Returns this file's size

MongoGridFSFile::getFilename
MongoGridFSFile::write
MongoGridFSFile
PHP Manual

MongoGridFSFile::getSize

(PECL mongo >=0.9.0)

MongoGridFSFile::getSize — Returns this file's size

Descrição

public int MongoGridFSFile::getSize ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns this file's size

MongoGridFSFile::getFilename
MongoGridFSFile::write
MongoGridFSFile


Writes this file to the filesystem

MongoGridFSFile::getSize
MongoGridFSCursor
MongoGridFSFile
PHP Manual

MongoGridFSFile::write

(PECL mongo >=0.9.0)

MongoGridFSFile::write — Writes this file to the filesystem

Descrição

public int MongoGridFSFile::write ([ string $filename = NULL ] )

Parâmetros

filename

The location to which to write the file. If none is given, the stored filename will be used.

Valor Retornado

Returns the number of bytes written.

Exemplos

Exemplo #1 MongoGridFSFile::write() example

<?php

$images = $db->my_db->getGridFS('images');

$image = $images->findOne('jwage.png');
$image->write('/path/to/write/jwage.png');
?>
MongoGridFSFile::getSize
MongoGridFSCursor
MongoGridFSFile


The MongoGridFSCursor class

Introdução

Cursor for database file results.

Sinopse da classe

extends MongoCursor {
/* Fields */
protected MongoGridFS $gridfs = NULL ;
/* Methods */
__construct ( MongoGridFS $gridfs , resource $connection , string $ns , array $query , array $fields )
public MongoGridFSFile current ( void )
public MongoGridFSFile getNext ( void )
public string key ( void )
}

Índice

  • MongoGridFSCursor::__construct — Create a new cursor
  • MongoGridFSCursor::current — Returns the current file
  • MongoGridFSCursor::getNext — Return the next file to which this cursor points, and advance the cursor
  • MongoGridFSCursor::key — Returns the current result's filename
MongoGridFSFile::write
MongoGridFSCursor::__construct
GridFS Classes


Create a new cursor

MongoGridFSCursor
MongoGridFSCursor::current
MongoGridFSCursor
PHP Manual

MongoGridFSCursor::__construct

(PECL mongo >=0.9.0)

MongoGridFSCursor::__construct — Create a new cursor

Descrição

MongoGridFSCursor::__construct ( MongoGridFS $gridfs , resource $connection , string $ns , array $query , array $fields )

Parâmetros

gridfs

Related GridFS collection.

connection

Database connection.

ns

Full name of database and collection.

query

Database query.

fields

Fields to return.

Valor Retornado

Returns the new cursor.

MongoGridFSCursor
MongoGridFSCursor::current
MongoGridFSCursor


Returns the current file

MongoGridFSCursor::__construct
MongoGridFSCursor::getNext
MongoGridFSCursor
PHP Manual

MongoGridFSCursor::current

(PECL mongo >=0.9.0)

MongoGridFSCursor::current — Returns the current file

Descrição

public MongoGridFSFile MongoGridFSCursor::current ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current file.

MongoGridFSCursor::__construct
MongoGridFSCursor::getNext
MongoGridFSCursor


Return the next file to which this cursor points, and advance the cursor

MongoGridFSCursor::current
MongoGridFSCursor::key
MongoGridFSCursor
PHP Manual

MongoGridFSCursor::getNext

(PECL mongo >=0.9.0)

MongoGridFSCursor::getNext — Return the next file to which this cursor points, and advance the cursor

Descrição

public MongoGridFSFile MongoGridFSCursor::getNext ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the next file.

MongoGridFSCursor::current
MongoGridFSCursor::key
MongoGridFSCursor


Returns the current result's filename

MongoGridFSCursor::getNext
Functions
MongoGridFSCursor
PHP Manual

MongoGridFSCursor::key

(PECL mongo >=0.9.0)

MongoGridFSCursor::key — Returns the current result's filename

Descrição

public string MongoGridFSCursor::key ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current result's filename.

MongoGridFSCursor::getNext
Functions
MongoGridFSCursor


Functions

Índice

  • Mongo Funções
MongoGridFSCursor::key
Mongo Funções
Mongo


Mongo Funções

Índice

  • bson_decode — Deserializes a BSON object into a PHP array
  • bson_encode — Serializes a PHP variable into a BSON string
Functions
bson_decode
Functions


Deserializes a BSON object into a PHP array

Mongo Funções
bson_encode
Mongo Funções
PHP Manual

bson_decode

(PECL mongo >=1.0.1)

bson_decode — Deserializes a BSON object into a PHP array

Descrição

array bson_decode ( string $bson )

This function is very beta and entirely useless for 99% of users. It is only useful if you're doing something weird, such as writing your own driver on top of the PHP driver.

Parâmetros

bson

The BSON to be deserialized.

Valor Retornado

Returns the deserialized BSON object.

Mongo Funções
bson_encode
Mongo Funções


Serializes a PHP variable into a BSON string

bson_decode
Exceptions
Mongo Funções
PHP Manual

bson_encode

(PECL mongo >=1.0.1)

bson_encode — Serializes a PHP variable into a BSON string

Descrição

string bson_encode ( mixed $anything )

This function is very beta and entirely useless for 99% of users. It is only useful if you're doing something weird, such as writing your own driver on top of the PHP driver.

Parâmetros

anything

The variable to be serialized.

Valor Retornado

Returns the serialized string.

bson_decode
Exceptions
Mongo Funções


Exceptions

Índice

  • MongoException
  • MongoCursorException
  • MongoCursorTimeoutException
  • MongoConnectionException
  • MongoGridFSException

VMWare Oddities

If you are running VMWare on Windows and are using CIFS, pausing the VM will cause CIFS to go out of sync and cause weird errors on un-pausing it ("The Mongo object has not been correctly initialized by its constructor"). Permanently mounting the Windows shares will fix this and you'll be able to pause and unpause at will.

To permanently mount the Windows shares, run:

$ sudo update-rc.d -f umountnfs.sh remove
$ sudo update-rc.d umountnfs.sh stop 15 0 6 .

See » the Ubuntu docs for the most up-to-date instructions.

bson_encode
MongoException
Mongo


The MongoException class

Introdução

Default Mongo exception.

This covers a bunch of different error conditions that may eventually be moved to more specific exceptions, but will always extend MongoException.

  • The MongoSomething object has not been correctly initialized by its constructor

    Code: 0

    Probably your Mongo object is not connected to a database server.

  • zero-length keys are not allowed, did you use $ with double quotes?

    Code: 1

    You tried to save "" as a key. You generally should not do this. "" can mess up subobject access and is used by MongoDB internally. However, if you really want, you can set mongo.allow_empty_keys to true in your php.ini file to override this sanity check. If you override this, it is highly recommended that you set error checking to strict to avoid string interpolation errors.

  • '.' not allowed in key: <key>

    Code: 2

    You attempted to write a key with '.' in it, which is prohibited.

  • insert too large: <size>, max: <max>

    Code: 3

    You're attempting to send too much data to the database at once: the database will only accept inserts up to a certain size (currently 16 MB).

  • no elements in doc

    Code: 4

    You're attempting to save a document with no fields.

  • size of BSON doc is <size> bytes, max <max>MB

    Code: 5

    You're attempting to save a document that is larger than MongoDB can save.

  • no documents given

    Code: 6

    You're attempting to batch insert an empty array of documents.

  • MongoCollection::group takes an array, object, or MongoCode key

    Code: 7

    Wrong type parameter send to MongoCollection::group().

  • field names must be strings

    Code: 8

    You should format field selectors as array("field1" => 1, "field2" => 1, ..., "fieldN" => 1).

  • invalid regex

    Code: 8

    The regex passed to MongoRegex is not of the correct form.

  • MongoDBRef::get: $ref field must be a string

    Code: 10

  • MongoDBRef::get: $db field must be a string

    Code: 11

  • non-utf8 string: <str>

    Code: 12

    This error occurs if you attempt to send a non-utf8 string to the database. All strings going into the database should be UTF8. See php.ini options for the transition option of quieting this exception.

  • mutex error: <err>

    Code: 13

    The driver uses mutexes for synchronizing requests and responses in multithreaded environments. This is a fairly serious error and may not have a stack trace. It's unusual and should be reported to maintainers with any system information and steps to reproduce that you can provide.

  • index name too long: <len>, max <max> characters

    Code: 14

    Indexes with names longer than 128 characters cannot be created. If you get this error, you should use MongoCollection::ensureIndex()'s "name" option to create a shorter name for your index.

Sinopse da classe

extends Exception {
}
Exceptions
MongoCursorException
Exceptions


The MongoCursorException class

Introdução

Caused by accessing a cursor incorrectly or a error receiving a reply.

If there is an error receiving a reply, there will be a more specific error message to help diagnose the problem. As it is a bit programmatically awkward to parse an exception message, there is also an error code associated with each cause of the exception.

  • cannot modify cursor after beginning iteration

    Code: 0

    You are calling a method that sets up the query after executing the query. Reset the cursor and try again.

  • Get next batch send errors

    Code: 1

    Could not send the query to the database. Make sure the database is still up and the network is okay.

  • cursor not found

    Code: 2

    The driver was trying to fetch more results from the database, but the database did not have a record of the query. This usually means that the cursor timed out on the server side: after a few minutes of inactivity, the database will kill a cursor (see MongoCursor::immortal() for information on preventing this).

  • Couldn't get response header.

    Code: 4

  • cursor->buf.pos is null

    Code: 3

    This may indicate you are out of hard driver space or some other extraordinary circumstance.

  • couldn't get response header

    Code: 4

    The driver could not fetch a reply header from the database, so it gave up. Check if the database is still up and the network is connected and try the query again.

  • no db response

    Code: 5

    This may not even be an error, for example, the database command "shutdown" returns no response. However, if you were expecting a response, this means the database didn't give one.

  • bad response length: %d, max: %d, did the db assert?

    Code: 6

    This means that the database said that its response was greater than 4Mb or less than 0. Generally, a number greater than 5Mb should be reported to the developers as a potential database bug (max response length is 4Mb). A response of less than 0 often means a database assertion occured.

  • incomplete header

    Code: 7

    Highly unusual. Occurs if the database response started out correctly, but broke off in the middle. Probably indicates a network problem.

  • incomplete response

    Code: 8

    Highly unusual. Occurs if the database response started out correctly, but broke off in the middle. Probably indicates a network problem.

  • couldn't find a response

    Code: 9

    If the response was cached and now cannot be located.

  • error getting socket

    Code: 10

    The socket was closed or encountered an error. The driver should automatically reconnect (if possible) on the next operation.

  • couldn't find reply, please try again

    Code: 11

    The driver saves any database responses it cannot immediately match with a request. This exception occurs if the driver has already passed your request's response and cannot find your response in its cache.

  • error getting database response: errstr

    WSA error getting database response: errstr

    "errstr" is an io error reported directly from the C socket subsystem. On Windows, the error message is prefixed with "WSA".

  • Timeout error

    Code: 13

    If there was an error while waiting for a query to complete.

  • couldn't send query: <various>

    Code: 14

    C socket error on send.

Errors passed through by the database

Database errors should always trigger MongoCursorExceptions on queries. Error messages and codes are sent directly from the database and you should be able to see matching errors in the database log.

A few common database errors are listed below:

  • E11000 duplicate key error index: foo.bar.$X dup key: { /* ... */ }

    Code: 11000

    Database error for duplicate keys.

  • not master

    Codes: 10107, 13435, and 10058

    Not master errors, piped through by the database. Each of these will cause the driver to disconnect and attempt to find a new master. The actual error you get on failover may not be a "not master" error, depending on when the change in master occurs.

Sinopse da classe

extends MongoException {
}
MongoException
MongoCursorTimeoutException
Exceptions


The MongoCursorTimeoutException class

Introdução

Caused by a query timing out. You can set the length of time to wait before this exception is thrown by calling MongoCursor::timeout() on the cursor or setting MongoCursor::$timeout. The static variable is useful for queries such as database commands and MongoCollection::findOne(), both of which implicitly use cursors.

Sinopse da classe

extends MongoCursorException {
}
MongoCursorException
MongoConnectionException
Exceptions


The MongoConnectionException class

Introdução

Thrown when the driver fails to connect to the database.

There are a number of possible error messages to help you diagnose the connection problem. These are:

  • No server name given.

    This error occurs if you pass in "" as the server name, probably because of an typo with string interpolation, e.g., "$servr" instead of "$server".

  • failed to get host [hostname] or port [portnum] from [server].

    This indicated that the server string was malformed. "[hostname]" and "[portnum]" will be as much as the driver could dicipher of it.

  • Operation in progress

    Connecting to the database timed out.

  • Transport endpoint is not connected

    Generally means that the connection string isn't correct, the driver couldn't even find the database server.

  • couldn't determine master

    Neither server in a paired connection appeared to be master.

  • couldn't get host info for [server]

    This indicated that DNS could not resolve the server address you gave. This could easily be caused by a typo, for example, "server" instead of "$server".

  • Invalid Argument

    This can be caused by attempting to connect to a machine that is up but that the database isn't actually running on. Make sure that you've started the database server before connecting.

  • Permission denied

    This means that the socket could not be opened due to permissions issues. On Red Hat variants, this can be caused by a default setting that does not allow Apache to create network connections. You can override this setting by running:

    $ /usr/sbin/setsebool -P httpd_can_network_connect 1
    then restarting Apache.

If the error message is not listed above, it is probably an error from the C socket, and you can search the web for its usual cause.

Sinopse da classe

extends MongoException {
}
MongoCursorTimeoutException
MongoGridFSException
Exceptions


The MongoGridFSException class

Introdução

Thrown when there are errors reading or writing files to or from the database.

Sinopse da classe

extends MongoException {
}
MongoConnectionException
mSQL
Exceptions


mSQL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para mSQL
    • msql_affected_rows — Retorna o número de registros afetados pela última consulta
    • msql_close — Fecha uma conexão mSQL
    • msql_connect — Abre uma conexão mSQL
    • msql_create_db — Cria um banco de dados mSQL
    • msql_createdb — Sinônimo de msql_create_db
    • msql_data_seek — Move o ponteiro interno dos registros
    • msql_db_query — Send mSQL query
    • msql_dbname — Sinônimo de msql_result
    • msql_drop_db — Exclui um banco de dados mSQL
    • msql_error — Retorna a mensagem de erro da última chamada a msql
    • msql_fetch_array — Obtém um registro como uma matriz
    • msql_fetch_field — Retorna informação sobre um campo
    • msql_fetch_object — Obtem uma linha como um objeto
    • msql_fetch_row — Retorna uma linha como uma matriz numerada
    • msql_fieldflags — Apelido para msql_field_flags
    • msql_field_len — Obtém o tamanho do campo
    • msql_field_name — Obtém o nome de um especificado campo de um resultado
    • msql_field_seek — Estabelece o índice do campo
    • msql_field_table — Obtém o nome da tabela pelo campo
    • msql_field_type — Obtém o tipo do campo
    • msql_fieldflags — Apelido para msql_field_flags
    • msql_fieldlen — Apelido para msql_field_len
    • msql_fieldname — Apelido para msql_field_name
    • msql_fieldtable — Apelido para msql_field_table
    • msql_fieldtype — Apelido para msql_field_type
    • msql_free_result — Libera o resultado de uma consulta da memória
    • msql_list_dbs — Lista os banco de dados mSQL no servidor
    • msql_list_fields — Lista os campos de uma tabela
    • msql_list_tables — Lista as tabelas em um banco de dados mSQL
    • msql_num_fields — Retorna o número de campos em um resultado
    • msql_num_rows — Retorna o número de registros em um resultado
    • msql_numfields — Apelido para msql_num_fields
    • msql_numrows — Alias of msql_num_rows
    • msql_pconnect — Abre uma conexão mSQL persistente
    • msql_query — Envia uma consulta
    • msql_regcase — Apelido para sql_regcase
    • msql_result — Retorna dados do resultado
    • msql_select_db — Seleciona um banco de dados mSQL
    • msql_tablename — Alias of msql_result
    • msql — Apelido para msql_db_query
MongoGridFSException
Introdução
Vendor Specific Database Extensions


Introdução

Estas funções permitem acessar servidores de banco de dados mSQL. Maiores informações sobre o mSQL podem ser encontradas em » http://www.hughes.com.au/.

mSQL
Instalação/Configuração
mSQL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
mSQL


Instalação

Para ter estas funções disponíveis, você deve compilar o PHP com suporte ao msql usando a opção --with-msql[=DIR] . DIR é o diretório base da instalação do msql, cujo padrão é /usr/local/msql3.

Nota: Nota para os usuários Win32

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: msql.dll

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do mSQL
Nome | Padrão | Modificável | Changelog
msql.allow_persistent | "1" | PHP_INI_ALL |
msql.max_persistent | "-1" | PHP_INI_ALL |
msql.max_links | "-1" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

msql.allow_persistent boolean

Quando permitir conexões persistentes mSQL.

msql.max_persistent integer

O número máximo de conexões persistentes mSQL por processo.

msql.max_links integer

O número máximo de conexões mSQL por processo, incluindo as conexões persistentes.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Existem dois tipos de recursos usados no módulo mSQL. O primeiro é o identificador de conexão para a conexão com o banco de dados, e o segundo é um recurso que guarda o resultado de uma consulta.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MSQL_ASSOC (integer)
MSQL_NUM (integer)
MSQL_BOTH (integer)
Tipos Resource
Exemplos
mSQL


Exemplos

Índice

Constantes pré-definidas
mSQL


Exemplos
Funções para mSQL
Exemplos
PHP Manual

Este exemplo simples mostra como conectar, realizar uma consulta, mostrar as linhas do resultado e disconectar do banco de dados mSQL.

Exemplo #1 Exemplo de uso da mSQL

<?php
/* Connecting, selecting database */
$link = msql_connect('localhost', 'username', 'password')
    or die('Could not connect : ' . msql_error($link));

msql_select_db('database', $link)
    or die('Could not select database');

/* Issue SQL query */
$query = 'SELECT * FROM my_table';
$result = msql_query($query, $link) or die('Query failed : ' . msql_error());

/* Printing results in HTML */
echo "<table>\n";
while ($row = msql_fetch_array($result, MSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($row as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

/* Free result set */
msql_free_result($result);

/* Close connection */
msql_close($link);
?>

Exemplos
Funções para mSQL
Exemplos


Funções para mSQL

Índice

  • msql_affected_rows — Retorna o número de registros afetados pela última consulta
  • msql_close — Fecha uma conexão mSQL
  • msql_connect — Abre uma conexão mSQL
  • msql_create_db — Cria um banco de dados mSQL
  • msql_createdb — Sinônimo de msql_create_db
  • msql_data_seek — Move o ponteiro interno dos registros
  • msql_db_query — Send mSQL query
  • msql_dbname — Sinônimo de msql_result
  • msql_drop_db — Exclui um banco de dados mSQL
  • msql_error — Retorna a mensagem de erro da última chamada a msql
  • msql_fetch_array — Obtém um registro como uma matriz
  • msql_fetch_field — Retorna informação sobre um campo
  • msql_fetch_object — Obtem uma linha como um objeto
  • msql_fetch_row — Retorna uma linha como uma matriz numerada
  • msql_fieldflags — Apelido para msql_field_flags
  • msql_field_len — Obtém o tamanho do campo
  • msql_field_name — Obtém o nome de um especificado campo de um resultado
  • msql_field_seek — Estabelece o índice do campo
  • msql_field_table — Obtém o nome da tabela pelo campo
  • msql_field_type — Obtém o tipo do campo
  • msql_fieldflags — Apelido para msql_field_flags
  • msql_fieldlen — Apelido para msql_field_len
  • msql_fieldname — Apelido para msql_field_name
  • msql_fieldtable — Apelido para msql_field_table
  • msql_fieldtype — Apelido para msql_field_type
  • msql_free_result — Libera o resultado de uma consulta da memória
  • msql_list_dbs — Lista os banco de dados mSQL no servidor
  • msql_list_fields — Lista os campos de uma tabela
  • msql_list_tables — Lista as tabelas em um banco de dados mSQL
  • msql_num_fields — Retorna o número de campos em um resultado
  • msql_num_rows — Retorna o número de registros em um resultado
  • msql_numfields — Apelido para msql_num_fields
  • msql_numrows — Alias of msql_num_rows
  • msql_pconnect — Abre uma conexão mSQL persistente
  • msql_query — Envia uma consulta
  • msql_regcase — Apelido para sql_regcase
  • msql_result — Retorna dados do resultado
  • msql_select_db — Seleciona um banco de dados mSQL
  • msql_tablename — Alias of msql_result
  • msql — Apelido para msql_db_query
msql_affected_rows
mSQL


Retorna o número de registros afetados pela última consulta

Funções para mSQL
msql_close
Funções para mSQL
PHP Manual

msql_affected_rows

(PHP 4, PHP 5)

msql_affected_rows — Retorna o número de registros afetados pela última consulta

Descrição

int msql_affected_rows ( resource $result )

Retorna o número de registros afetados pela última query SELECT, UPDATE ou DELETE associado com result.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

Valor Retornado

Retorna o número de linhas afetadas em sucesso, ou FALSE em erro.

Veja Também

  • msql_query() - Envia uma consulta

Funções para mSQL
msql_close
Funções para mSQL


Fecha uma conexão mSQL

msql_affected_rows
msql_connect
Funções para mSQL
PHP Manual

msql_close

(PHP 4, PHP 5)

msql_close — Fecha uma conexão mSQL

Descrição

int msql_close ([ resource $link_identifier ] )

msql_close() fecha a conexão com o banco de dados mSQL que esta associado a conexão indicada. Se o indentificador de conexão não é especificado, a última conexão aberta é assumida.

Retorna TRUE em caso de sucesso, FALSE em caso de erro.

Note que isto normalmente não é necesssário, já que conexões não persistentes são fechadas automaticamente ao final do script.

msql_close() não irá fechar conexões persistentes geradas por msql_pconnect().

Veja também: msql_connect() e msql_pconnect().

msql_affected_rows
msql_connect
Funções para mSQL


Abre uma conexão mSQL

msql_close
msql_create_db
Funções para mSQL
PHP Manual

msql_connect

(PHP 4, PHP 5)

msql_connect — Abre uma conexão mSQL

Descrição

int msql_connect ([ string $hostname [, string $username [, string $password ]]] )

msql_connect() estabelece uma conexão com um servidor mSQL. O parâmetro hostname pode incluir também um número de porta. Ex "hostname:port". O padrão é 'localhost'.

Retorna um identificador de conexão com o mSQL em caso de sucesso, FALSE em caso de erro.

No caso de se fazer uma segunda chamada a msql_connect() com os mesmos argumentos, não é criada uma nova conexão, mas ao invés, a conexão que já esta aberta é retornada.

A conexão com o servidor será fechada tão logo quanto termine a execução do script, a menos que seja fechada antes utilizando msql_close().

Veja também msql_pconnect() e msql_close().

msql_close
msql_create_db
Funções para mSQL


Cria um banco de dados mSQL

msql_connect
msql_createdb
Funções para mSQL
PHP Manual

msql_create_db

(PHP 4, PHP 5)

msql_create_db — Cria um banco de dados mSQL

Descrição

bool msql_create_db ( string $database_name [, resource $link_identifier ] )

msql_create_db() tenta criar um novo banco de dados no servidor mSQL.

Parâmetros

database_name

O nome do banco de dados mSQL.

link_identifier

A conexão mSQL. Se não for especificado, a ultima conexão aberta por msql_connect() é assumida. Se uma conexão assim não for encontrada, a função irá tentar establecer uma conexão como se a função msql_connect() fosse chamada, e irá usa-la.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msql_drop_db() - Exclui um banco de dados mSQL

msql_connect
msql_createdb
Funções para mSQL


Sinônimo de msql_create_db

msql_create_db
msql_data_seek
Funções para mSQL
PHP Manual

msql_createdb

(PHP 4, PHP 5)

msql_createdb — Sinônimo de msql_create_db()

Descrição

Esta função é um apelido para: msql_create_db().

msql_create_db
msql_data_seek
Funções para mSQL


Move o ponteiro interno dos registros

msql_createdb
msql_db_query
Funções para mSQL
PHP Manual

msql_data_seek

(PHP 4, PHP 5)

msql_data_seek — Move o ponteiro interno dos registros

Descrição

bool msql_data_seek ( resource $result , int $row_number )

msql_data_seek() move o ponteiro interno de registro para o conjunto de resultados identificado por query_identifier para o número do registro indicado. A próxima chamada a msql_fetch_row() irá retornar este registro.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

row_number

A linha desejada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msql_fetch_array() - Obtém um registro como uma matriz
  • msql_fetch_object() - Obtem uma linha como um objeto
  • msql_fetch_row() - Retorna uma linha como uma matriz numerada
  • msql_result() - Retorna dados do resultado

msql_createdb
msql_db_query
Funções para mSQL


Send mSQL query

msql_data_seek
msql_dbname
Funções para mSQL
PHP Manual

msql_db_query

(PHP 4, PHP 5)

msql_db_query — Send mSQL query

Descrição

resource msql_db_query ( string $database , string $query [, resource $link_identifier ] )

msql_db_query() selects a database and executes a query on it.

Parâmetros

database

The name of the mSQL database.

query

The SQL query.

link_identifier

A conexão mSQL. Se não for especificado, a ultima conexão aberta por msql_connect() é assumida. Se uma conexão assim não for encontrada, a função irá tentar establecer uma conexão como se a função msql_connect() fosse chamada, e irá usa-la.

Valor Retornado

Returns a positive mSQL query identifier to the query result, or FALSE on error.

Veja Também

  • msql_query() - Envia uma consulta

msql_data_seek
msql_dbname
Funções para mSQL


Sinônimo de msql_result

msql_db_query
msql_drop_db
Funções para mSQL
PHP Manual

msql_dbname

(PHP 4, PHP 5)

msql_dbname — Sinônimo de msql_result()

Descrição

Esta função é um apelido para: msql_result().

msql_db_query
msql_drop_db
Funções para mSQL


Exclui um banco de dados mSQL

msql_dbname
msql_error
Funções para mSQL
PHP Manual

msql_drop_db

(PHP 4, PHP 5)

msql_drop_db — Exclui um banco de dados mSQL

Descrição

bool msql_drop_db ( string $database_name [, resource $link_identifier ] )

msql_drop_db() tenta remover um banco de dados do servidor mSQL.

Parâmetros

database_name

O nome do banco de dados.

link_identifier

A conexão mSQL. Se não for especificado, a ultima conexão aberta por msql_connect() é assumida. Se uma conexão assim não for encontrada, a função irá tentar establecer uma conexão como se a função msql_connect() fosse chamada, e irá usa-la.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msql_create_db() - Cria um banco de dados mSQL

msql_dbname
msql_error
Funções para mSQL


Retorna a mensagem de erro da última chamada a msql

msql_drop_db
msql_fetch_array
Funções para mSQL
PHP Manual

msql_error

(PHP 4, PHP 5)

msql_error — Retorna a mensagem de erro da última chamada a msql

Descrição

string msql_error ( void )

msql_error() retorna o último erro emitido pelo servidor mSQL. Note que somente a última mensagem de erro é acessível com msql_error().

Valor Retornado

A última mensagem de erro ou uma string vazia se nenhum erro foi emitido.

msql_drop_db
msql_fetch_array
Funções para mSQL


Obtém um registro como uma matriz

msql_error
msql_fetch_field
Funções para mSQL
PHP Manual

msql_fetch_array

(PHP 4, PHP 5)

msql_fetch_array — Obtém um registro como uma matriz

Descrição

int msql_fetch_array ( int $query_identifier [, int $result_type ] )

Retorna uma matriz que corresponde ao registro obtido, ou FALSE se não houverem mais registros.

msql_fetch_array() é uma versão extendida de msql_fetch_row(). Além de guardar os dados em índices numéricos na matriz do resultado, também guarda os dados em uma matriz associativa, usando os nomes dos campos como chave.

O segundo argumento, que é opcional, result_type em msql_fetch_array() é uma constante e pode ter os seguintes valores: MSQL_ASSOC, MSQL_NUM, e MSQL_BOTH, sendo MSQL_BOTH o padrão.

Seja cuidadoso se você esta obtento resultados de uma consulta que possa retornar um registro com apenas um campo que tenha o valor de 0 (ou uma string vazia, ou NULL).

Uma coisa importante para notar é que usar msql_fetch_array() NÃO é significantemente mais lendo do que msql_fetch_row(), enquanto provê um valor melhor de manipular.

Veja também msql_fetch_row() e msql_fetch_object().

msql_error
msql_fetch_field
Funções para mSQL


Retorna informação sobre um campo

msql_fetch_array
msql_fetch_object
Funções para mSQL
PHP Manual

msql_fetch_field

(PHP 4, PHP 5)

msql_fetch_field — Retorna informação sobre um campo

Descrição

object msql_fetch_field ( resource $query_identifier , int $field_offset )

Retorna um objeto contendo informações do campo

msql_fetch_field() pode ser usado para obter informações sobre os campos no resultado de uma consulta. se o número do campo não for indicado, o próximo campo que não tenha sido obtido por msql_fetch_field() será o campo retornado.

As propriedades do objeto são:

  • name - nome da coluna
  • table - nome da tabela a qual esta coluna pertence
  • not_null - 1 se a coluna não puder ser NULL
  • primary_key - 1 se a coluna é a chave primária
  • unique - 1 se a coluna é chave única
  • type - o tipo da coluna

Veja também msql_field_seek().

msql_fetch_array
msql_fetch_object
Funções para mSQL


Obtem uma linha como um objeto

msql_fetch_field
msql_fetch_row
Funções para mSQL
PHP Manual

msql_fetch_object

(PHP 4, PHP 5)

msql_fetch_object — Obtem uma linha como um objeto

Descrição

int msql_fetch_object ( int $query_identifier )

Retorna um objeto cuja as propriedades correspondem a linha obtida, ou FALSE se não houverem mais linhas.

msql_fetch_object() é similar a msql_fetch_array(), com uma diferença - um objeto é retorado em vez de uma matriz, isto indica que você somente pode acessar os dados pelos nomes dos campos e não por seus índices(números não são nomes de propriedade válidos).

Em termos de velocidade esta função é identica a msql_fetch_array(), e quase tão rapida quanto msql_fetch_row() (a diferença é insignificante).

Veja também msql_fetch_array() e msql_fetch_row().

msql_fetch_field
msql_fetch_row
Funções para mSQL


Retorna uma linha como uma matriz numerada

msql_fetch_object
msql_fieldflags
Funções para mSQL
PHP Manual

msql_fetch_row

(PHP 4, PHP 5)

msql_fetch_row — Retorna uma linha como uma matriz numerada

Descrição

array msql_fetch_row ( resource $query_identifier )

Retorna uma matriz que corresponde a linha obtida, ou FALSE se não houverem mais linhas.

msql_fetch_row() obtem uma linha de dados apartir do resultado de uma query especificado. A linha é retornada como uma matriz. Cada coluna é um índice da matriz, começando em 0.

A próxima chamada a msql_fetch_row() deve retornar a próxima linha do conjunto de resultados, ou FALSE se não houverem mais linhas.

Veja também msql_fetch_array(),
msql_fetch_object(),
msql_data_seek() e
msql_result().

msql_fetch_object
msql_fieldflags
Funções para mSQL


Apelido para msql_field_flags

msql_fetch_row
msql_field_len
Funções para mSQL
PHP Manual

msql_fieldflags

(PHP 4, PHP 5)

msql_fieldflags — Apelido para msql_field_flags()

Descrição

Esta função é um apelido para msql_field_flags().

msql_fetch_row
msql_field_len
Funções para mSQL


Obtém o tamanho do campo

msql_fieldflags
msql_field_name
Funções para mSQL
PHP Manual

msql_field_len

(PHP 4, PHP 5)

msql_field_len — Obtém o tamanho do campo

Descrição

int msql_field_len ( resource $result , int $field_offset )

msql_field_len() retorna o tamanho do campo especificado.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

field_offset

O índice numérico. O field_offset começa em 1.

Valor Retornado

Retorna o tamanho do campo especificado ou FALSE em erro.

msql_fieldflags
msql_field_name
Funções para mSQL


Obtém o nome de um especificado campo de um resultado

msql_field_len
msql_field_seek
Funções para mSQL
PHP Manual

msql_field_name

(PHP 4, PHP 5)

msql_field_name — Obtém o nome de um especificado campo de um resultado

Descrição

string msql_field_name ( resource $result , int $field_offset )

msql_field_name() obtém o nome do especificado campo.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

field_offset

O índice numérico. O field_offset começa em 1.

Valor Retornado

O nome do campo ou FALSE em falha.

Veja Também

  • msql_field_len() - Obtém o tamanho do campo

msql_field_len
msql_field_seek
Funções para mSQL


Estabelece o índice do campo

msql_field_name
msql_field_table
Funções para mSQL
PHP Manual

msql_field_seek

(PHP 4, PHP 5)

msql_field_seek — Estabelece o índice do campo

Descrição

bool msql_field_seek ( resource $result , int $field_offset )

Move o índice de campos para o campo especificado. Na próxima chamada a msql_fetch_field() que não inclui um índice de campo, este campo será retornado.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

field_offset

O índice numérico. O field_offset começa em 1.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msql_fetch_field() - Retorna informação sobre um campo

msql_field_name
msql_field_table
Funções para mSQL


Obtém o nome da tabela pelo campo

msql_field_seek
msql_field_type
Funções para mSQL
PHP Manual

msql_field_table

(PHP 4, PHP 5)

msql_field_table — Obtém o nome da tabela pelo campo

Descrição

int msql_field_table ( resource $result , int $field_offset )

Retorna o nome da tabela pelo especificado campo.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

field_offset

O índice numérico. O field_offset começa em 1.

Valor Retornado

O nome da tabela em sucesso, ou FALSE em falha.

msql_field_seek
msql_field_type
Funções para mSQL


Obtém o tipo do campo

msql_field_table
msql_fieldflags
Funções para mSQL
PHP Manual

msql_field_type

(PHP 4, PHP 5)

msql_field_type — Obtém o tipo do campo

Descrição

string msql_field_type ( resource $result , int $field_offset )

msql_field_type() obtém o tipo de um especificado campo.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

field_offset

O índice numérico. O field_offset começa em 1.

Valor Retornado

O tipo do campo. Um dos int, char, real, ident, null ou unknown. Retornará FALSE em falha.

msql_field_table
msql_fieldflags
Funções para mSQL


Apelido para msql_field_flags

msql_field_type
msql_fieldlen
Funções para mSQL
PHP Manual

msql_fieldflags

(PHP 4, PHP 5)

msql_fieldflags — Apelido para msql_field_flags()

Descrição

Esta função é um apelido para msql_field_flags().

msql_field_type
msql_fieldlen
Funções para mSQL


Apelido para msql_field_len

msql_fieldflags
msql_fieldname
Funções para mSQL
PHP Manual

msql_fieldlen

(PHP 4, PHP 5)

msql_fieldlen — Apelido para msql_field_len()

Descrição

Esta função é um apelido para msql_field_len().

msql_fieldflags
msql_fieldname
Funções para mSQL


Apelido para msql_field_name

msql_fieldlen
msql_fieldtable
Funções para mSQL
PHP Manual

msql_fieldname

(PHP 4, PHP 5)

msql_fieldname — Apelido para msql_field_name()

Descrição

Esta função é um apelido para msql_field_name().

msql_fieldlen
msql_fieldtable
Funções para mSQL


Apelido para msql_field_table

msql_fieldname
msql_fieldtype
Funções para mSQL
PHP Manual

msql_fieldtable

(PHP 4, PHP 5)

msql_fieldtable — Apelido para msql_field_table()

Descrição

Esta função é um apelido para msql_field_table().

msql_fieldname
msql_fieldtype
Funções para mSQL


Apelido para msql_field_type

msql_fieldtable
msql_free_result
Funções para mSQL
PHP Manual

msql_fieldtype

(PHP 4, PHP 5)

msql_fieldtype — Apelido para msql_field_type()

Descrição

Esta função é um apelido para msql_field_type().

msql_fieldtable
msql_free_result
Funções para mSQL


Libera o resultado de uma consulta da memória

msql_fieldtype
msql_list_dbs
Funções para mSQL
PHP Manual

msql_free_result

(PHP 4, PHP 5)

msql_free_result — Libera o resultado de uma consulta da memória

Descrição

bool msql_free_result ( resource $result )

msql_free_result() libera a memória usada com query_identifier. Quando o PHP completa uma requisição, a memória é liberada automaticamente, assim você só precisa utilizar esta função quendo você quer ter certeza de que você não utiliza muita memória durante a execução do script.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

msql_fieldtype
msql_list_dbs
Funções para mSQL


Lista os banco de dados mSQL no servidor

msql_free_result
msql_list_fields
Funções para mSQL
PHP Manual

msql_list_dbs

(PHP 4, PHP 5)

msql_list_dbs — Lista os banco de dados mSQL no servidor

Descrição

resource msql_list_dbs ([ resource $link_identifier ] )

msql_list_dbs() listará os banco de dados disponíveis no especificado link_identifier.

Parâmetros

link_identifier

A conexão mSQL. Se não for especificado, a ultima conexão aberta por msql_connect() é assumida. Se uma conexão assim não for encontrada, a função irá tentar establecer uma conexão como se a função msql_connect() fosse chamada, e irá usa-la.

Valor Retornado

Retorna um conjunto de resultado que pode ser percorrido com alguma função que obtém os conjuntos de resultados, como a msql_fetch_array(). Em falha esta função retornará FALSE.

Veja Também

  • msql_list_tables() - Lista as tabelas em um banco de dados mSQL
  • msql_list_fields() - Lista os campos de uma tabela

msql_free_result
msql_list_fields
Funções para mSQL


Lista os campos de uma tabela

msql_list_dbs
msql_list_tables
Funções para mSQL
PHP Manual

msql_list_fields

(PHP 4, PHP 5)

msql_list_fields — Lista os campos de uma tabela

Descrição

resource msql_list_fields ( string $database , string $tablename [, resource $link_identifier ] )

msql_list_fields()obém informações sobre a tablename(nome da tabela) indicada. O conjunto de resultados retornado pode ser usado com quaisquer funções que obtém resultados de um conjunto de resultados como, por exemplo, msql_fetch_array().

Esta função retorna FALSE em caso de falha.

Para compatibilidade com versões anteriores, o apelido chamado msql_listfields() pode ser usado. Este, entretanto, esta obsoleto e seu uso não é recomendado.

msql_list_dbs
msql_list_tables
Funções para mSQL


Lista as tabelas em um banco de dados mSQL

msql_list_fields
msql_num_fields
Funções para mSQL
PHP Manual

msql_list_tables

(PHP 4, PHP 5)

msql_list_tables — Lista as tabelas em um banco de dados mSQL

Descrição

resource msql_list_tables ( string $database [, resource $link_identifier ] )

msql_list_tables() lista as tabelas no database(banco de dados) especificado . Ela retorna um conjunto de resultados que pode ser utilizado com quaisquer funções que obtém resultados de um conjunto de resultados, como, por exemplo, msql_fetch_array().

Esta função retorna FALSE em caso de falha.

Para compatibilidade com versões anteriores, o apelido chamado msql_listtables() pode ser usado. Esta, entretando, esta obsoleta e não é recomendada.

msql_list_fields
msql_num_fields
Funções para mSQL


Retorna o número de campos em um resultado

msql_list_tables
msql_num_rows
Funções para mSQL
PHP Manual

msql_num_fields

(PHP 4, PHP 5)

msql_num_fields — Retorna o número de campos em um resultado

Descrição

int msql_num_fields ( resource $result )

msql_num_fields() retorna o número de campos em um conjunto de resultados.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

Valor Retornado

Retorna o número de campos em um conjunto de resultados.

Veja Também

  • msql_query() - Envia uma consulta
  • msql_fetch_field() - Retorna informação sobre um campo
  • msql_num_rows() - Retorna o número de registros em um resultado

msql_list_tables
msql_num_rows
Funções para mSQL


Retorna o número de registros em um resultado

msql_num_fields
msql_numfields
Funções para mSQL
PHP Manual

msql_num_rows

(PHP 4, PHP 5)

msql_num_rows — Retorna o número de registros em um resultado

Descrição

int msql_num_rows ( resource $query_identifier )

msql_num_rows() retorna o número de registros em um conjunto de resultados.

Parâmetros

result

O resulatdo resource que esta sendo avaliado. Este resultado vem de uma chamada a msql_query().

Valor Retornado

Returns the number of rows in the result set.

Veja Também

  • msql_num_fields() - Retorna o número de campos em um resultado

msql_num_fields
msql_numfields
Funções para mSQL


Apelido para msql_num_fields

msql_num_rows
msql_numrows
Funções para mSQL
PHP Manual

msql_numfields

(PHP 4, PHP 5)

msql_numfields — Apelido para msql_num_fields()

Descrição

Esta função é um apelido para msql_num_fields().

msql_num_rows
msql_numrows
Funções para mSQL


Alias of msql_num_rows

msql_numfields
msql_pconnect
Funções para mSQL
PHP Manual

msql_numrows

(PHP 4, PHP 5)

msql_numrows — Alias of msql_num_rows()

Descrição

Esta funço é um apelido para msql_num_rows().

msql_numfields
msql_pconnect
Funções para mSQL


Abre uma conexão mSQL persistente

msql_numrows
msql_query
Funções para mSQL
PHP Manual

msql_pconnect

(PHP 4, PHP 5)

msql_pconnect — Abre uma conexão mSQL persistente

Descrição

int msql_pconnect ([ string $server [, string $username [, string $password ]]] )

msql_pconnect() funciona muito parecido com msql_connect() com duas diferenças maiores.

Primeiro, ao conectar, a função irá primeiro tentar encontrar uma conexão persistente que já esteja aberta com o mesmo servidor. Se encontrar uma, um identificador para esta conexão será retornado ao invés de criar uma nova conexão.

Segundo, a conexão com o servidor SQL não será fechada ao final da execução do script. Ao invés, a conexão permanecerá aberta para uso futuro (msql_close() não irá fechar conexões persistentes abertas por msql_pconnect()).

Retorna um identificador de conexão mSQL persistente em caso de sucesso, ou FALSE em caso de erro.

msql_numrows
msql_query
Funções para mSQL


Envia uma consulta

msql_pconnect
msql_regcase
Funções para mSQL
PHP Manual

msql_query

(PHP 4, PHP 5)

msql_query — Envia uma consulta

Descrição

resource msql_query ( string $query [, resource $link_identifier ] )

msql_query() envia uma consulta para o banco de dados ativo no servidor indicado na conexão especificada.

Parâmetros

query

A query SQL.

link_identifier

A conexão mSQL. Se não for especificado, a ultima conexão aberta por msql_connect() é assumida. Se uma conexão assim não for encontrada, a função irá tentar establecer uma conexão como se a função msql_connect() fosse chamada, e irá usa-la.

Valor Retornado

Retorna um identificador de consulta em caso de sucesso, ou FALSE se ouver erro.

Exemplos

Exemplo #1 Exemplo msql_query()

<?php
$link = msql_connect("dbserver")
   or die("Não foi possível conectar ao servidor msql: " . msql_error());
msql_select_db("db", $link)
   or die("Não foi possível selecionar o banco de dados 'db': " . msql_error());

$result = msql_query("SELECT * FROM table WHERE id=1", $link);
if (!$result) {
   die("A consulta falhou: " . msql_error());
}

while ($row = msql_fetch_array($result)) {
    echo $row["id"];
}
?>

Veja Também

  • msql_db_query() - Send mSQL query
  • msql_select_db() - Seleciona um banco de dados mSQL
  • msql_connect() - Abre uma conexão mSQL

msql_pconnect
msql_regcase
Funções para mSQL


Apelido para sql_regcase

msql_query
msql_result
Funções para mSQL
PHP Manual

msql_regcase

(PHP 4, PHP 5)

msql_regcase — Apelido para sql_regcase()

Descrição

Esta função é um apelido para sql_regcase().

msql_query
msql_result
Funções para mSQL


Retorna dados do resultado

msql_regcase
msql_select_db
Funções para mSQL
PHP Manual

msql_result

(PHP 4, PHP 5)

msql_result — Retorna dados do resultado

Description

string msql_result ( resource $query_identifier , int $row [, mixed $field ] )

Retorna o conteúdo de uma célula na linha e coluna especificadas de um conjunto de resultados.

msql_result() retorna o conteúdo de uma célula de um conjunto de resultados mSQL. O argumento field pode ser o nome do campo, seu índice numerico ou o nome da tabela ponto o nome do campo (tabela.campo). Se o campo tem um apelido ('select foo as bar from ...'), use o apelido ao invés do nome da coluna.

Quando estiver trabalhando com um conjunto de resultados grande, você deve considerar uma das funções que obtem o registro inteiro (especificadas abaixo). Já que estas funções retornam o conteúdo de multiplas células em uma chamada de função, elas são MUITO mais rápidas do que msql_result(). Também, note que especificar o índice numerico do argumento campo e muito mais rápido do que especificar o nome do campo ou tabela.campo.

Alternativas mais rápidas recomendadas:
msql_fetch_row(),
msql_fetch_array() e
msql_fetch_object().

Para compatibilidade com versões anteriores, os apelidos chamados msql(), msql_tablename(), e msql_dbname() podem ser usados. Estes, estretanto, estão obsoletos e não são recomendados

msql_regcase
msql_select_db
Funções para mSQL


Seleciona um banco de dados mSQL

msql_result
msql_tablename
Funções para mSQL
PHP Manual

msql_select_db

(PHP 4, PHP 5)

msql_select_db — Seleciona um banco de dados mSQL

Descrição

bool msql_select_db ( string $database_name [, resource $link_identifier ] )

msql_select_db() define o banco de dados atual para a conexão com o servidor especificada. Se não for especificado um identificador de conexão, a última conexão aberta é usada. Se não houver conexão aberta, a função tentará criar uma como se a função msql_connect() fosse chamada, e ira usa-la.

Retorna TRUE em caso de sucesso, FALSE em caso de erro.

Todas as próximas chamadas a msql_query() serão feitas no banco de dados ativo.

Para compatibilidade com versões anteriore, o apelido chamado msql_selectdb() pode ser usado. Este, entretanto esta obsoleto e não é recomendado.

Veja também
msql_connect(),
msql_pconnect() e
msql_query().

msql_result
msql_tablename
Funções para mSQL


Alias of msql_result

msql_select_db
msql
Funções para mSQL
PHP Manual

msql_tablename

(PHP 4, PHP 5)

msql_tablename — Alias of msql_result()

Descrição

Esta função é um apelido para msql_result().

msql_select_db
msql
Funções para mSQL


Apelido para msql_db_query

msql_tablename
Mssql
Funções para mSQL
PHP Manual

msql

(PHP 4, PHP 5)

msql — Apelido para msql_db_query()

Descrição

Esta função é um apelido para msql_db_query().

msql_tablename
Mssql
Funções para mSQL


Microsoft SQL Server

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Mssql
    • mssql_bind — Adiciona um parâmetro a um stored procedure ou a um remote stored procedure
    • mssql_close — Fecha a conexão com o servidor MS SQL
    • mssql_connect — Abre uma conexão com o servidor MS SQL
    • mssql_data_seek — Move o ponteiro interno da linha
    • mssql_execute — Executa uma stored procedure num banco de dados de um servidor MS SQL
    • mssql_fetch_array — Retorna uma linha como uma matriz associativa, matriz numérica ou ambas
    • mssql_fetch_assoc — Retorna um array associativo da linha atual no resultado
    • mssql_fetch_batch — Retorna o próximo lote de registros
    • mssql_fetch_field — Retorna informação sobre o campo
    • mssql_fetch_object — Devolve a linha como um objeto
    • mssql_fetch_row — Retorna uma matriz enumerada
    • mssql_field_length — Retorna o tamanho de um campo
    • mssql_field_name — Retorna o nome de um campo
    • mssql_field_seek — Estabelece o índice do campo
    • mssql_field_type — Retorna o tipo de um campo
    • mssql_free_result — Limpa o resultado da memória
    • mssql_free_statement — Libera comando da memória
    • mssql_get_last_message — Retorna a ultima mensagem do servidor
    • mssql_guid_string — Converte um 16 byte binary GUID para uma string
    • mssql_init — Inicializa um stored procedure ou um remote stored procedure
    • mssql_min_error_severity — Estabelece a menor severidade a erros
    • mssql_min_message_severity — Estabelece a menor severidade a mensagens
    • mssql_next_result — Move o ponteiro interno do resultado para o próximo resultado
    • mssql_num_fields — Retorna o número de campos em um resultado
    • mssql_num_rows — Retorna o número de linhas em um resultado
    • mssql_pconnect — Abre uma conexão persistente com MS SQL
    • mssql_query — Envia uma query ao MS SQL
    • mssql_result — Retorna dados do resultado
    • mssql_rows_affected — Retorna o número de registros afetados pela query
    • mssql_select_db — Seleciona um banco de dados do MS SQL
msql
Introdução
Vendor Specific Database Extensions


Introdução

Estas funções permitem a você acessar um banco de dados do MS SQL Server.

Mssql
Instalação/Configuração
Mssql


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mssql


Dependências

Requerimentos para as plataformas Win32.

A extensão requer que as ferramentas de cliente do MS SQL sejam instaladas no sistema onde o PHP esta instalado. As ferramentas de cliene podem ser instaladas apartir do CD do MS SQL Server ou copiando ntwdblib.dll de \winnt\system32 da máquina do servidor \winnt\system32 na máquina do PHP. Copiar ntwdblib.dll irá somente prover acesso através de named pipes. Configuração do cliente irá requerer a instalação de todas as ferramentas.

Requerimentos para as plataformas Unix/Linux.

Para usar a extensão MSSQL no Unix/Linux, você primeiramente precisa compilar e instalar a biblioteca FreeTDS. Código fonte e instruções de instalação estão disponíveis na página de FreeTDS: » http://www.freetds.org/

Nota:

No Windows, é usado a DBLIB da Microsoft. Funções que retornam um nome de coluna estão baseadas na função dbcolname() na DBLIB. DBLIB foi desenvolvida para o SQL Server 6.x aonde o limite do identificador é 30. Por esta razão, o limite de tamanho da coluna é 30 caracteres. Nas plataformas onde o FreeTDS é usado(Linux), isto não é um problema.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

A extensão MSSQL é ativada se adicionando extension=php_mssql.dll no php.ini.

Para que estas funções funcionem, você tem que compilar o PHP com --with-mssql[=DIR] , aonde DIR é o diretório de instalação do FreeTDS. E FreeTDS deve ser compilado usando --enable-msdblib .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do MS SQL Server
Nome | Padrão | Modificável | Changelog
mssql.allow_persistent | "1" | PHP_INI_SYSTEM |
mssql.max_persistent | "-1" | PHP_INI_SYSTEM |
mssql.max_links | "-1" | PHP_INI_SYSTEM |
mssql.min_error_severity | "10" | PHP_INI_ALL |
mssql.min_message_severity | "10" | PHP_INI_ALL |
mssql.compatability_mode | "0" | PHP_INI_ALL |
mssql.connect_timeout | "5" | PHP_INI_ALL |
mssql.timeout | "60" | PHP_INI_ALL | Disponível desde o PHP 4.1.0.
mssql.textsize | "-1" | PHP_INI_ALL |
mssql.textlimit | "-1" | PHP_INI_ALL |
mssql.batchsize | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
mssql.datetimeconvert | "1" | PHP_INI_ALL | Disponível desde o PHP 4.2.0.
mssql.secure_connection | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0.
mssql.max_procs | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MSSQL_ASSOC (integer)
MSSQL_NUM (integer)
MSSQL_BOTH (integer)
SQLTEXT (integer)
SQLVARCHAR (integer)
SQLCHAR (integer)
SQLINT1 (integer)
SQLINT2 (integer)
SQLINT4 (integer)
SQLBIT (integer)
SQLFLT8 (integer)
Tipos Resource
Funções para Mssql
Mssql


Funções para Mssql

Índice

  • mssql_bind — Adiciona um parâmetro a um stored procedure ou a um remote stored procedure
  • mssql_close — Fecha a conexão com o servidor MS SQL
  • mssql_connect — Abre uma conexão com o servidor MS SQL
  • mssql_data_seek — Move o ponteiro interno da linha
  • mssql_execute — Executa uma stored procedure num banco de dados de um servidor MS SQL
  • mssql_fetch_array — Retorna uma linha como uma matriz associativa, matriz numérica ou ambas
  • mssql_fetch_assoc — Retorna um array associativo da linha atual no resultado
  • mssql_fetch_batch — Retorna o próximo lote de registros
  • mssql_fetch_field — Retorna informação sobre o campo
  • mssql_fetch_object — Devolve a linha como um objeto
  • mssql_fetch_row — Retorna uma matriz enumerada
  • mssql_field_length — Retorna o tamanho de um campo
  • mssql_field_name — Retorna o nome de um campo
  • mssql_field_seek — Estabelece o índice do campo
  • mssql_field_type — Retorna o tipo de um campo
  • mssql_free_result — Limpa o resultado da memória
  • mssql_free_statement — Libera comando da memória
  • mssql_get_last_message — Retorna a ultima mensagem do servidor
  • mssql_guid_string — Converte um 16 byte binary GUID para uma string
  • mssql_init — Inicializa um stored procedure ou um remote stored procedure
  • mssql_min_error_severity — Estabelece a menor severidade a erros
  • mssql_min_message_severity — Estabelece a menor severidade a mensagens
  • mssql_next_result — Move o ponteiro interno do resultado para o próximo resultado
  • mssql_num_fields — Retorna o número de campos em um resultado
  • mssql_num_rows — Retorna o número de linhas em um resultado
  • mssql_pconnect — Abre uma conexão persistente com MS SQL
  • mssql_query — Envia uma query ao MS SQL
  • mssql_result — Retorna dados do resultado
  • mssql_rows_affected — Retorna o número de registros afetados pela query
  • mssql_select_db — Seleciona um banco de dados do MS SQL
Constantes pré-definidas
mssql_bind
Mssql


Adiciona um parâmetro a um stored procedure ou a um remote stored procedure

Funções para Mssql
mssql_close
Funções para Mssql
PHP Manual

mssql_bind

(PHP 4 >= 4.0.7, PHP 5, PECL odbtp >= 1.1.1)

mssql_bind — Adiciona um parâmetro a um stored procedure ou a um remote stored procedure

Descrição

bool mssql_bind ( resource $stmt , string $param_name , mixed $var , int $type [, int $is_output [, int $is_null [, int $maxlen ]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja também mssql_execute(),
         mssql_free_statement() e
         mssql_init().

Funções para Mssql
mssql_close
Funções para Mssql


Fecha a conexão com o servidor MS SQL

mssql_bind
mssql_connect
Funções para Mssql
PHP Manual

mssql_close

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_close — Fecha a conexão com o servidor MS SQL

Descrição

bool mssql_close ([ resource $link_identifier ] )

mssql_close() fecha a conexão com o MS SQL Server que esta associado ao identificador de conexão(link_identifier) indicado. Se o identificador de conexão não é especificado, a ultima conexão aberta é usada.

Note que isto não é usualmente necessário, já que conexões não persistentes são automaticamente fechadas ao final da execução do script.

mssql_close() não irá fechar conexões persistentes geradas por mssql_pconnect().

Veja também: mssql_connect() e mssql_pconnect().

mssql_bind
mssql_connect
Funções para Mssql


Abre uma conexão com o servidor MS SQL

mssql_close
mssql_data_seek
Funções para Mssql
PHP Manual

mssql_connect

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_connect — Abre uma conexão com o servidor MS SQL

Descrição

int mssql_connect ([ string $nomedoservidor [, string $username [, string $password ]]] )

Retorna: um identificador de link positivo com o servidor MS SQL se funcionar, ou FALSE se houver erro.

mssql_connect() estabelece uma conexão com um servidor MS SQL . O argumento nomedoservidor tem que ser um nome de servidor que esteja definido no arquivo 'interfaces'.

No caso de uma segunda chamada for feita para mssql_connect() com os mesmos argumentos, não será criada uma nova conexão, mas ao invés, o identificador de conexão da conexão que já esta aberta será retornado.

A conexão com o servidor será fechada assim que a execução do script terminar, a menos que seja fechada antes explicitamente por mssql_close().

Veja também mssql_pconnect(), mssql_close().

mssql_close
mssql_data_seek
Funções para Mssql


Move o ponteiro interno da linha

mssql_connect
mssql_execute
Funções para Mssql
PHP Manual

mssql_data_seek

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_data_seek — Move o ponteiro interno da linha

Descrição

bool mssql_data_seek ( resource $result_identifier , int $row_number )

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mssql_data_seek() move o ponteiro interno da linha do resultado indicado por result_identifier para o numero da linha especificado, sendo a primeira linha de número 0. A próxima chamada a mssql_fetch_row() irá retornar esta linha.

Veja também mssql_data_seek().

mssql_connect
mssql_execute
Funções para Mssql


Executa uma stored procedure num banco de dados de um servidor MS SQL

mssql_data_seek
mssql_fetch_array
Funções para Mssql
PHP Manual

mssql_execute

(PHP 4 >= 4.0.7, PHP 5, PECL odbtp >= 1.1.1)

mssql_execute — Executa uma stored procedure num banco de dados de um servidor MS SQL

Descrição

mixed mssql_execute ( resource $stmt [, bool $skip_results ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Nota: Se o stored procedure retorna parâmetros ou retorna um valor, estes estarão disponiveis após a chamada a mssql_execute() a menos que o stored procedure retorne mais do que um conjunto de resultados. Neste caso use mssql_next_result() para mudar entre os resulatdo. Quando o ultimo resultado tiver sido processado os parâmetors de saída e os valores de retorno estarão disponivéis.

Veja também mssql_bind(),
 mssql_free_statement(), e
  mssql_init().

mssql_data_seek
mssql_fetch_array
Funções para Mssql


Retorna uma linha como uma matriz associativa, matriz numérica ou ambas

mssql_execute
mssql_fetch_assoc
Funções para Mssql
PHP Manual

mssql_fetch_array

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_array — Retorna uma linha como uma matriz associativa, matriz numérica ou ambas

Descrição

array mssql_fetch_array ( resource $result [, int $result_type ] )

mssql_fetch_array() é uma versão estendida de mssql_fetch_row(). Alem de guardar os dados em uma matriz com índices numéricos, também guarda os dados em uma matriz associativa, usando os nomes dos campos como chave.

Uma coisa importante para notar é que usar mssql_fetch_array() NÃO é significativamente mais lento do que usar mssql_fetch_row(), enquanto que é mais fácil de usar.

Parâmetros

result

O resource do resultado que está sendo avaliado. Este resultado vem de uma chamada a mssql_query().

result_type

O tipo de array a ser obtido. Você pode usar umas das seguintes constante: MSSQL_ASSOC, MSSQL_NUM, e o valor padrão é MSSQL_BOTH.

Valor Retornado

Retorna um array que corresponde a linha obtida, ou FALSE se não houver mais linhas.

Notas

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mssql_fetch_row() - Retorna uma matriz enumerada

mssql_execute
mssql_fetch_assoc
Funções para Mssql


Retorna um array associativo da linha atual no resultado

mssql_fetch_array
mssql_fetch_batch
Funções para Mssql
PHP Manual

mssql_fetch_assoc

(PHP 4 >= 4.2.0, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_assoc — Retorna um array associativo da linha atual no resultado

Descrição

array mssql_fetch_assoc ( resource $result_id )

Retorna um array associativo que corresponde a linha obtida e move o ponteiro de dados interno à frente. mssql_fetch_assoc() é equivalente a chamar mssql_fetch_array() com MSSQL_ASSOC para o segundo parâmetro opcional.

Parâmetros

result_id

O resource do resultado que está sendo avaliado. Este resultado vem de uma chamada a mssql_query().

Valor Retornado

Retorna um array associativo que corresponde a linha obtida, ou FALSE se não houver mais linhas.

mssql_fetch_array
mssql_fetch_batch
Funções para Mssql


Retorna o próximo lote de registros

mssql_fetch_assoc
mssql_fetch_field
Funções para Mssql
PHP Manual

mssql_fetch_batch

(PHP 4 >= 4.0.4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_batch — Retorna o próximo lote de registros

Descrição

int mssql_fetch_batch ( resource $result )

Retorna o próximo lote de registros

Parâmetros

result

O resource do resultado que foi avaliado. Este resultado é o que foi retornado ao chamar a mssql_query().

Valor Retornado

Retorna o número do lote como inteiro.

Exemplos

Exemplo #1 Exemplo mssql_fetch_batch()

<?php
$resDb = mssql_connect('localhost', 'user', 'name');
$result = mssql_query('SELECT * FROM MYTABLE', $resDb, 10000);

$intNumRows = mssql_num_rows($result);

while ($intNumRows > 0) {
    while ($arrRow = mssql_fetch_assoc($result)) {
        // Do stuff ...
    }
    $intNumRows = mssql_fetch_batch($result);
}
?>

mssql_fetch_assoc
mssql_fetch_field
Funções para Mssql


Retorna informação sobre o campo

mssql_fetch_batch
mssql_fetch_object
Funções para Mssql
PHP Manual

mssql_fetch_field

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_field — Retorna informação sobre o campo

Descrição

object mssql_fetch_field ( resource $result [, int $field_offset ] )

mssql_fetch_field() pode ser usado para obter informação sobre campos de um certo resultado de query.

Parâmetros

result

O resource do resultado que está sendo avaliado. Este resultado vem de uma chamada a mssql_query().

field_offset

O índice numérico do campo. Se o índice do campo não é especificado, o próximo campo que não foi recebido por esta função é recuperado. O field_offset inicia em 0.

Valor Retornado

Retorna um objeto contendo informação do campo.

As propriedades do objeto são:

  • name - nome da coluna. Se a coluna é resultado de alguma função, esta propriedade é estabelecida como computed#N, aonde #N é um número de série.
  • column_source - a tabela de origem da coluna.
  • max_length - o limite de tamanho da coluna.
  • numeric - 1 se a coluna é numérica.
  • type - O tipo da coluna.

Veja Também

  • mssql_field_seek() - Estabelece o índice do campo

mssql_fetch_batch
mssql_fetch_object
Funções para Mssql


Devolve a linha como um objeto

mssql_fetch_field
mssql_fetch_row
Funções para Mssql
PHP Manual

mssql_fetch_object

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_object — Devolve a linha como um objeto

Descrição

object mssql_fetch_object ( resource $result )

Retorna: Um objeto com propriedades que correspondem a linha, ou FALSE se não houver mais linhas.

mssql_fetch_object() é similar a mssql_fetch_array(), com uma diferença - um objeto é retornado, ao invés de uma matriz. Indiretamente, isto indica que você só pode acessar os dados pelo nome dos campos, e não por seus índices (números são nomes de propriedades ilegais).

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Em velocidade, esta função é idêntica a mssql_fetch_array(), e quase tão rápida quanto mssql_fetch_row() (a diferença é insignificante).

Veja também: mssql_fetch-array() e mssql_fetch-row().

mssql_fetch_field
mssql_fetch_row
Funções para Mssql


Retorna uma matriz enumerada

mssql_fetch_object
mssql_field_length
Funções para Mssql
PHP Manual

mssql_fetch_row

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_fetch_row — Retorna uma matriz enumerada

Descrição

array mssql_fetch_row ( resource $result )

mssql_fetch_row() retorna uma linha do resultado identificado por result. A linha é retornada como uma matriz. Cada coluna do resultado é guardada com um índice numérico, começando no 0.

A próxima chamada para mssql_fetch_row() deve retornar a próxima linha do conjunto de resultados, ou FALSE se não houver mais linhas.

Parâmetros

result

O resource do resultado que foi avaliado. Este resultado é retornado ao chamar a mssql_query().

Valor Retornado

Retorna um array que corresponde a linha obtida, ou FALSE se não há mais linhas.

Notas

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mssql_fetch_array() - Retorna uma linha como uma matriz associativa, matriz numérica ou ambas
  • mssql_fetch_object() - Devolve a linha como um objeto
  • mssql_data_seek() - Move o ponteiro interno da linha
  • mssql_result() - Retorna dados do resultado

mssql_fetch_object
mssql_field_length
Funções para Mssql


Retorna o tamanho de um campo

mssql_fetch_row
mssql_field_name
Funções para Mssql
PHP Manual

mssql_field_length

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_length — Retorna o tamanho de um campo

Descrição

int mssql_field_length ( resource $result [, int $offset ] )

Esta função irá retornar o tamanho do campo número offset no conjunto de resultados result. Se offset for omitido, o campo atual é usado.

Nota: Nota para os usuários de Win32
Devido a uma limitação da API usada pelo PHP (MS DbLib C API), o tamanho de campos VARCHAR é limitado em 255. Se você precisar guardar mais dados, use um campo TEXT.

mssql_fetch_row
mssql_field_name
Funções para Mssql


Retorna o nome de um campo

mssql_field_length
mssql_field_seek
Funções para Mssql
PHP Manual

mssql_field_name

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_name — Retorna o nome de um campo

Descrição

string mssql_field_name ( resource $result [, int $offset ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mssql_field_length
mssql_field_seek
Funções para Mssql


Estabelece o índice do campo

mssql_field_name
mssql_field_type
Funções para Mssql
PHP Manual

mssql_field_seek

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_seek — Estabelece o índice do campo

Descrição

bool mssql_field_seek ( resource $result , int $field_offset )

Move o ponteiro para o índice do campo especificado. Se a próxima chamada a mssql_fetch_field() não incluir um índice do campo, este campo será retornado.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja também mssql_fetch_field().

mssql_field_name
mssql_field_type
Funções para Mssql


Retorna o tipo de um campo

mssql_field_seek
mssql_free_result
Funções para Mssql
PHP Manual

mssql_field_type

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_type — Retorna o tipo de um campo

Descrição

string mssql_field_type ( resource $result [, int $offset ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mssql_field_seek
mssql_free_result
Funções para Mssql


Limpa o resultado da memória

mssql_field_type
mssql_free_statement
Funções para Mssql
PHP Manual

mssql_free_result

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_free_result — Limpa o resultado da memória

Descrição

bool mssql_free_result ( resource $result )

mssql_free_result() somente precisa ser chamado se você esta preocupado com a quantidade de memória usada enquanto o seu script esta sendo executado. Toda a memória do resultado é liberada automaticamente quando o script acaba. Você deve chamar mssql_free_result() com o identificador do resultado que você quer liberar da memória.

Parâmetros

result

O resource do resultado que está sendo avaliado. Este resultado vem da chamada a mssql_query().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mssql_field_type
mssql_free_statement
Funções para Mssql


Libera comando da memória

mssql_free_result
mssql_get_last_message
Funções para Mssql
PHP Manual

mssql_free_statement

(PHP 4 >= 4.3.2, PHP 5, PECL odbtp >= 1.1.1)

mssql_free_statement — Libera comando da memória

Descrição

bool mssql_free_statement ( resource $stmt )

mssql_free_statement() somente precisa ser chamada se você está preocupado usando muita memória quando seu script é executado. Toda memória de comandos será automaticamente liberada quando o script termina. Você pode chamhar mssql_free_statement() com o identificador do comando como um argumento e o comando associado na memória será liberado.

Parâmetros

stmt

Resource do comando, obtido com mssql_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mssql_bind() - Adiciona um parâmetro a um stored procedure ou a um remote stored procedure
  • mssql_execute() - Executa uma stored procedure num banco de dados de um servidor MS SQL
  • mssql_init() - Inicializa um stored procedure ou um remote stored procedure

mssql_free_result
mssql_get_last_message
Funções para Mssql


Retorna a ultima mensagem do servidor

mssql_free_statement
mssql_guid_string
Funções para Mssql
PHP Manual

mssql_get_last_message

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_get_last_message — Retorna a ultima mensagem do servidor

Descrição

string mssql_get_last_message ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mssql_free_statement
mssql_guid_string
Funções para Mssql


Converte um 16 byte binary GUID para uma string

mssql_get_last_message
mssql_init
Funções para Mssql
PHP Manual

mssql_guid_string

(PHP 4 >= 4.0.7, PHP 5, PECL odbtp >= 1.1.1)

mssql_guid_string — Converte um 16 byte binary GUID para uma string

Descrição

string mssql_guid_string ( string $binary [, int $short_format ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mssql_get_last_message
mssql_init
Funções para Mssql


Inicializa um stored procedure ou um remote stored procedure

mssql_guid_string
mssql_min_error_severity
Funções para Mssql
PHP Manual

mssql_init

(PHP 4 >= 4.0.7, PHP 5, PECL odbtp >= 1.1.1)

mssql_init — Inicializa um stored procedure ou um remote stored procedure

Descrição

int mssql_init ( string $sp_name [, resource $conn_id ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja também mssql_bind(),
mssql_execute() e
mssql_free_statement()

mssql_guid_string
mssql_min_error_severity
Funções para Mssql


Estabelece a menor severidade a erros

mssql_init
mssql_min_message_severity
Funções para Mssql
PHP Manual

mssql_min_error_severity

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_min_error_severity — Estabelece a menor severidade a erros

Descrição

void mssql_min_error_severity ( int $severity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

mssql_init
mssql_min_message_severity
Funções para Mssql


Estabelece a menor severidade a mensagens

mssql_min_error_severity
mssql_next_result
Funções para Mssql
PHP Manual

mssql_min_message_severity

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_min_message_severity — Estabelece a menor severidade a mensagens

Descrição

void mssql_min_message_severity ( int $severity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

mssql_min_error_severity
mssql_next_result
Funções para Mssql


Move o ponteiro interno do resultado para o próximo resultado

mssql_min_message_severity
mssql_num_fields
Funções para Mssql
PHP Manual

mssql_next_result

(PHP 4 >= 4.0.5, PHP 5, PECL odbtp >= 1.1.1)

mssql_next_result — Move o ponteiro interno do resultado para o próximo resultado

Descrição

bool mssql_next_result ( resource $result_id )

Quando se envia mais de uma sql para o servidor ou executando uma stored procedure com múltiplos resultados, irá causar que o servidor retorne múltiplos conjuntos de resultados. Esta função irá testar se há resultados adicionais do servidor. Se existir um conjunto adicional de resultados, irá liberar o conjunto atual de resultados e preparar para usar o novo conjunto de resultados.

Parâmetros

result_id

O resource de resultado que está sendo avaliado. Este resultado vem da chamada a mssql_query().

Valor Retornado

Retorna TRUE se um conjunto de resultado adicional está disponível ou FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da mssql_next_result()

<?php
$link = mssql_connect("localhost", "userid", "secret");
mssql_select_db("MyDB", $link);
$sql = "Select * from table1 select * from table2";
$rs = mssql_query($sql, $link);
do {
    while ($row = mssql_fetch_row($rs)) {
    }
} while (mssql_next_result($rs));
mssql_free_result($rs);
mssql_close($link);
?>

mssql_min_message_severity
mssql_num_fields
Funções para Mssql


Retorna o número de campos em um resultado

mssql_next_result
mssql_num_rows
Funções para Mssql
PHP Manual

mssql_num_fields

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_num_fields — Retorna o número de campos em um resultado

Descrição

int mssql_num_fields ( resource $result )

mssql_num_fields() retorna o número de campos em um conjunto de resultados.

Parâmetros

result

O resource de resultado que está sendo avaliado. Este resultado vem da chamada a mssql_query().

Valor Retornado

Retorna o número de campos, como um inteiro.

Veja Também

  • mssql_query() - Envia uma query ao MS SQL
  • mssql_fetch_field() - Retorna informação sobre o campo
  • mssql_num_rows() - Retorna o número de linhas em um resultado

mssql_next_result
mssql_num_rows
Funções para Mssql


Retorna o número de linhas em um resultado

mssql_num_fields
mssql_pconnect
Funções para Mssql
PHP Manual

mssql_num_rows

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_num_rows — Retorna o número de linhas em um resultado

Descrição

int mssql_num_rows ( resource $result )

mssql_num_rows() retorna o número de linhas em um conjunto de resultados.

Parâmetros

result

O resource do resultado que está sendo avaliado. Este resultado vem de uma chamada a mssql_query().

Valor Retornado

Retorna o número de linhas, como um inteiro.

Veja Também

  • mssql_query() - Envia uma query ao MS SQL
  • mssql_fetch_row() - Retorna uma matriz enumerada

mssql_num_fields
mssql_pconnect
Funções para Mssql


Abre uma conexão persistente com MS SQL

mssql_num_rows
mssql_query
Funções para Mssql
PHP Manual

mssql_pconnect

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_pconnect — Abre uma conexão persistente com MS SQL

Descrição

int mssql_pconnect ([ string $servername [, string $username [, string $password ]]] )

Retorna: um identificador de link persistente com MS SQL se funcionar, ou FALSE se houver erro.

mssql_pconnect() funciona muito parecido com mssql_connect() com duas diferenças maiores.

Primeiro, ao conectar, a função irá primeiro tentar achar uma conexão (persistente) que já esteja aberta com o mesmo host, username e password. Se uma é encontrada, um identificador para ela será retornada ao invés de abrir uma nova conexão.

Segundo, a conexão ao servidor SQL não será fechada quando a execução do script terminar. Ao invés, a conexão permanecerá aberta para uso futuro (mssql_close() não irá fechar conexões criadas com mssql_pconnect()).

Este tipo de conexão é chamado 'Persistente'.

mssql_num_rows
mssql_query
Funções para Mssql


Envia uma query ao MS SQL

mssql_pconnect
mssql_result
Funções para Mssql
PHP Manual

mssql_query

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_query — Envia uma query ao MS SQL

Descrição

resource mssql_query ( string $query [, resource $link_identifier ] )

Retorna: um identificador de resultado do MS SQL se funcionar, ou FALSE se houver um erro.

mssql_query() envia uma query para o banco de dados atual no servidor que esta associado a conexão especificada em link_identifier. Se link_identifier não for especificado, a ultima conexão aberta é usada. Se nenhuma conexão estiver aberta, a função tenta criar um como se mssql_connect() fosse chamada, e irá usa-la.

Veja também mssql_select_db() e mssql_connect().

mssql_pconnect
mssql_result
Funções para Mssql


Retorna dados do resultado

mssql_query
mssql_rows_affected
Funções para Mssql
PHP Manual

mssql_result

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_result — Retorna dados do resultado

Descrição

string mssql_result ( resource $result , int $row , mixed $field )

mssql_result() retorna o conteúdo de uma célula de um conjunto de resultados do MS SQL. O argumento field pode ser o índice do campo, o nome do campo ou a tabela do campo ponto o nome do campo (tabela.campo). Se um nome da coluna tem apelido ('select foo as bar from...'), use o apelido ao invés do nome da coluna.

Quando estiver trabalhando com grandes conjuntos de resultados, você deve considerar o uso de funções que retornam toda a linha (especificadas abaixo). Como estas funções retornam múltiplas células em uma chamada de função, elas são MUITO mais rápidas do que mssql_result(). Também note que especificar um índice numérico para o argumento field é muito mais rápido do que especificar um nome de campo ou tabela.campo.

Alternativas mais rápidas recomendadas:
mssql_fetch_row(),
mssql_fetch_array(), e
mssql_fetch_object().

mssql_query
mssql_rows_affected
Funções para Mssql


Retorna o número de registros afetados pela query

mssql_result
mssql_select_db
Funções para Mssql
PHP Manual

mssql_rows_affected

(PHP 4 >= 4.0.4, PHP 5, PECL odbtp >= 1.1.1)

mssql_rows_affected — Retorna o número de registros afetados pela query

Descrição

int mssql_rows_affected ( resource $conn_id )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mssql_result
mssql_select_db
Funções para Mssql


Seleciona um banco de dados do MS SQL

mssql_rows_affected
MySQL
Funções para Mssql
PHP Manual

mssql_select_db

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_select_db — Seleciona um banco de dados do MS SQL

Descrição

bool mssql_select_db ( string $database_name [, resource $link_identifier ] )

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mssql_select_db() estabelece o banco de dados ativo para a conexão especificada por link_identifier. Se nenhum identificador de conexão for especificado, a ultima conexão aberta é usada. Se nenhuma conexão estiver aberta a função tentará estabelecer uma como se mssql_connect() fosse chamada, e irá usa-la.

Todas as próximas chamadas a mssql_query() serão feitas no banco de dados ativo.

Para poder selecionar um banco de dados contendo um espaço ou hifen ("-") você precisa colocar o nome do banco de dados entre colchetes("[]"), como mostrado no exemplo abaixo:

Exemplo #1 Exemplo mssql_select_db()

<?php
$conn = mssql_connect('MYSQLSERVER', 'sa', 'password');
mssql_select_db('[my data-base]', $conn);
?>

Veja também:
    mssql_connect(),
    mssql_pconnect(), e
    mssql_query()

mssql_rows_affected
MySQL
Funções para Mssql


MySQL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da MySQL
    • mysql_affected_rows — Obtém o número de linhas atingidas na operação anterior do MySQL
    • mysql_client_encoding — Retorna o nome do conjunto de caracteres
    • mysql_close — Fecha a conexão MySQL
    • mysql_connect — Abre uma conexão com um servidor MySQL
    • mysql_create_db — Cria um banco de dados MySQL
    • mysql_data_seek — Move o ponteiro interno do resultado
    • mysql_db_name — Obtém dados do resultado(nome de banco de dados)
    • mysql_db_query — Envia uma consulta MySQL
    • mysql_drop_db — Exclui um banco de dados MySQL
    • mysql_errno — Retorna o valor numérico da mensagem de erro da operação MySQL anterior
    • mysql_error — Retorna o texto da mensagem de erro da operação MySQL anterior
    • mysql_escape_string — Escapa uma string para usar em uma consulta MySQL
    • mysql_fetch_array — Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
    • mysql_fetch_assoc — Obtém um linha do resultado como uma matriz associativa
    • mysql_fetch_field — Obtém informações sobre uma coluna de um resultado e retorna como um objeto
    • mysql_fetch_lengths — Obtém o tamanho de cada saída no resultado
    • mysql_fetch_object — Obtém o resultado de uma linha como um objeto
    • mysql_fetch_row — Obtém uma linha como uma array numérica
    • mysql_field_flags — Obtém as flags associadas ao campo especificado em um resultado
    • mysql_field_len — Retorna o tamanho do campo especificado
    • mysql_field_name — Obtém o nome do campo especificado em um resultado
    • mysql_field_seek — Define o ponteiro do resultado para o índice de campo especificado
    • mysql_field_table — Obtém o nome da tabela na qual o campo especificado esta
    • mysql_field_type — Obtém o tipo do campo especificado em um resultado
    • mysql_free_result — Libera um resultado da memória
    • mysql_get_client_info — Obtém informações do cliente MySQL
    • mysql_get_host_info — Obtém informações do servidor MySQL
    • mysql_get_proto_info — Obtém informações do protocolo MySQL
    • mysql_get_server_info — Obtém informações do servidor MySQL
    • mysql_info — Obtém informação sobre a consulta mais recente
    • mysql_insert_id — Obtém o ID gerado pela operação INSERT anterior
    • mysql_list_dbs — Lista os bancos de dados disponíveis em um servidor MySQL
    • mysql_list_fields — Lista os campos de uma tabela MySQL
    • mysql_list_processes — Lista os processos MySQL
    • mysql_list_tables — Lista as tabelas em um banco de dados MySQL
    • mysql_num_fields — Obtém o numero de campos em um resultado
    • mysql_num_rows — Obtém o número de linhas em um resultado
    • mysql_pconnect — Abre uma conexão persistente com um servidor MySQL
    • mysql_ping — pinga uma conexão com o servidor ou reconecta se não houver conexão
    • mysql_query — Envia uma consulta MySQL
    • mysql_real_escape_string — Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.
    • mysql_result — Retorna dados do resultado
    • mysql_select_db — Seleciona um banco de dados MySQL
    • mysql_set_charset — Sets the client character set
    • mysql_stat — Retorna o status atual do sistema
    • mysql_tablename — Retorna o nome da tabela do campo
    • mysql_thread_id — Returna o ID da thread atual
    • mysql_unbuffered_query — Envia uma query para o MySQL, sem retornar e colocar em buffer as linhas do resultado
mssql_select_db
Introdução
Vendor Specific Database Extensions


Introdução

Estas funções permitem a você acessar os servidoes de banco de dados MySQL. maiores informações sobre o MySQL podem ser encontradas em » http://www.mysql.com/.

A documentação para o MySQL pode ser encontrada em » http://dev.mysql.com/doc/.

MySQL
Instalação/Configuração
MySQL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
MySQL


Dependências

Para ter estas funções disponíveis, você deve compilar o PHP com suporte a MySQL.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para compilar, simplesmente use a opção de configuração --with-mysql[=DIR] aonde o parãmetro opcional [DIR] aponta para o diretório onde o MySQL esta instalado.

Mesmo sendo esta extensão MySQL compativel com MySQL 4.1.0 e posterior, ela não suporta a funcionalidade extra que estas versões proveem. Para isto, use a extensão MySQLi.

Se você quiser instalar a extensão mysql em conjuno com a extnsão mysqli você deve usar a mesma biblioteca de cliente para evitar quaisquer conflitos.

Instalação em Sistemas Linux

PHP 4

A opção --with-mysql é ativada por padrão. Este é o funcionamento padrão e pode ser desabilitado com a opção de configuração --without-mysql . Se o MySQL for ativado sem especificar o caminho para o diretório de instalação do MySQL, o PHP irá usar a biblioteca de cliente MySQL embutida.

Usuários que executam outras aplicações que usam o MySQL (por exemplo, auth-mysql) não devem usar a biblioteca embutida, mas ao invés especificar o caminho para o diretório de instalação do MySQL, assim: --with-mysql=/path/to/mysql . Isto irá forçar o PHP a usar as bibliotecas de cliente instaladas pelo MySQL, assim evitando quaisquer conflitos.

PHP 5+

O MySQL não esta ativo por padrão, nem a biblioteca MySQL é embutida com o PHP. Leia este FAQ para detalhes sobre o motivo. Use a opção de configuração --with-mysql[=DIR] Para incluir o suporte a MySQL. Você pode baixar cabeçalhos e bibliotecas a partir de » MySQL.

Instalação em Sistemas Windows

PHP 4

A extensão do PHP MySQL é compilada no PHP.

PHP 5+

O MySQL não é mais ativado por padrão, assim a DLL php_mysql.dll deve ser ativada dentro do php.ini. Também, o PHP precisa acessar a biblioteca de cliente do MySQL. Um arquivo chamado libmysql.dll é incluso na distribuição PHP do Windows e para permitir que o PHP converse com o MySQL este arquivo precisa estar disponível para o sistema Windows na variavél de ambiênte PATH. Veja o Faq intitulado "Como eu adiciono o meu diretório PHP no PATh no Windows" para informação de como fazer isto. Mesmo que copiar libmysql.dll para o diretório de sistema do Windows também (porque o diretório de sistema esta por padrão no PATH do sistema), isto não é recomendado.

Do mesmo jeito que ativar qualquer extensão do PHP (como php_mysql.dll), a diretiva do PHP extension_dir deve estar definida para o diretório aonde as extensões do PHP estão localizadas. Veja também Instruções de instalação Manual no Windows. Como um exemplo de valor para extension_dir para o PHP 5 é c:\php\ext

Nota:

Se ao iniciar o servidor web acontecer um erro similar a este: "Unable to load dynamic library './php_mysql.dll'", isto é porque php_mysql.dll e/ou libmysql.dll não pode ser encontrada pelo sistema.

Notas de Instalação do MySQL

Aviso

Quebras e problemas de inicilização do PHP podem ser encontrados ao carregar esta extensão em conjunto com a extensão recode. Veja a extensão recode para maiores informações.

Nota:

Se você precisar de conjuntos de caracteres diferntes de latin (padrão), você terá que instalar um libmysql externa (não embutida) com o suporte ao conjunto de caracteres compilado.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do MySQL
Nome | Padrão | Modificável | Modificações
mysql.allow_persistent | "On" | PHP_INI_SYSTEM
mysql.max_persistent | "-1" | PHP_INI_SYSTEM |
mysql.max_links | "-1" | PHP_INI_SYSTEM |
mysql.default_port | NULL | PHP_INI_ALL |
mysql.trace_mode | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
mysql.default_socket | NULL | PHP_INI_ALL |
mysql.default_host | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.1.
mysql.default_user | NULL | PHP_INI_ALL |
mysql.default_password | NULL | PHP_INI_ALL |
mysql.connect_timeout | "60" | PHP_INI_ALL | PHP_INI_SYSTEM in PHP <= 4.3.2. Available since PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mysql.allow_persistent boolean

Quando permitir conexões persistentes para o MySQL.

mysql.max_persistent integer

O número máximo de conexões persistentes com o MySQL por processo.

mysql.max_links integer

O número maximo de conexões com o MYSQL por processo, incluindo conexões persistentes.

mysql.trace_mode boolean

Trace mode. Quando mysql.trace_mode esta ativado, avisos para procuras table/index scans, conjuntos de resultados não liberados, e erros de SQL serão exibidos. (Introduzido no PHP 4.3.0)

mysql.default_port string

O número padrão da porta TCP a usar quando conectar com o servidor do banco de dados se nenhuma outra porta for especificada. Se nenhum padrão for especificado, aporta será obtida da variavel de ambiente MYSQL_TCP_PORT, da entrada mysql-tcp em /etc/services ou da constante da compilação MYSQL_PORT, nesta ordem. Windows irá usar somente a constante MYSQL_PORT.

mysql.default_socket string

O nome padrão do socket para usar quando conectar com um servidor de banco de dados local se outro nome de socket não for especificado.

mysql.default_host string

O servidor padrão para usar quando conectar com um servidor de banco de dados se outro servidor não for encontrado. Não se aplica em Modo seguro de SQL.

mysql.default_user string

O nome padrão de usuário para conectar ao servidor de banco de dados se outro nome não for especificado. Não se aplica em Modo seguro de SQL.

mysql.default_password string

A senha padrão para usar ao conectar ao servidor de banco de dados se outra senha não for especificada. Não se aplica em Modo seguro de SQL.

mysql.connect_timeout integer

Limite de tempo da conexão em segundos. No Linux este limite é também usado para a espera da primeira resposta do servidor.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Existem dois tipos de recursos usados no módulo MySQL. O primeiro é o identificador de conexão com o banco de dados, e o segundo é o recurso o qual guarda o resultado de uma consulta.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Desde PHP 4.3.0 é possivel especificar opções adicionais para as funções mysql_connect() and mysql_pconnect() As seguintes constantes são definidas:

Constante do cliente MySQL
Constante | Descrição
MYSQL_CLIENT_COMPRESS | Usa o protocolo de compressão
MYSQL_CLIENT_IGNORE_SPACE | Permite espaço após o nome de função
MYSQL_CLIENT_INTERACTIVE | Permite interactive_timeout segundos (ao inves de wait_timeout) de inatividade antes de fechar a conexão.
MYSQL_CLIENT_SSL | Usar encriptação SSL. Esta opção esta disponível apenas com a versão 4.x da biblioteca de cliente MySQL ou mais nova. A versão 3.23.x é distribuida com o PHP 4 e com os binários Windows do PHP 5.

A função mysql_fetch_array() usa uma constante para cada diferentes tipos de matrizes de resultado. As seguintes constantes são definidas:

Constantes de fetch do MySQL
Constante | Descrição
MYSQL_ASSOC | As colunas são retornadas na matriz tendo o nome do campo como índice da matriz.
MYSQL_BOTH | As colunas são retornadas na matriz tendo ambos os indices: um numérico e o um com o nome do campo.
MYSQL_NUM | As colunas são retornadas numa matriz tendo um indice numérico dos campos. Este indice começa com 0, o primeiro campo no resultado.

Tipos Resource
Exemplos
MySQL


Exemplos

Índice

Constantes pré-definidas
MySQL


Exemplos
Funções da MySQL
Exemplos
PHP Manual

Este exemplo simples mostra como conectar, executar uma consulta, mostrar as linhas do resultado e disconectar do banco de dados MySQL.

Exemplo #1 Exemplo de visão geral da extensão MySQL

<?php
// Connecting, selecting database
$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
    or die('Could not connect: ' . mysql_error());
echo 'Connected successfully';
mysql_select_db('my_database') or die('Could not select database');

// Performing SQL query
$query = 'SELECT * FROM my_table';
$result = mysql_query($query) or die('Query failed: ' . mysql_error());

// Printing results in HTML
echo "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

// Free resultset
mysql_free_result($result);

// Closing connection
mysql_close($link);
?>

Exemplos
Funções da MySQL
Exemplos


Funções da MySQL

Notas

Nota:

A maioria das funções MySQL aceitam link_identifier como o último parâmetro opcional. Se este não for dados, a última conexão aberta é usada. Se não existir, é tentado estabelecer uma conexão com os valores padrão definidos no php.ini. Se não for possível, a função retornará FALSE.

Índice

  • mysql_affected_rows — Obtém o número de linhas atingidas na operação anterior do MySQL
  • mysql_client_encoding — Retorna o nome do conjunto de caracteres
  • mysql_close — Fecha a conexão MySQL
  • mysql_connect — Abre uma conexão com um servidor MySQL
  • mysql_create_db — Cria um banco de dados MySQL
  • mysql_data_seek — Move o ponteiro interno do resultado
  • mysql_db_name — Obtém dados do resultado(nome de banco de dados)
  • mysql_db_query — Envia uma consulta MySQL
  • mysql_drop_db — Exclui um banco de dados MySQL
  • mysql_errno — Retorna o valor numérico da mensagem de erro da operação MySQL anterior
  • mysql_error — Retorna o texto da mensagem de erro da operação MySQL anterior
  • mysql_escape_string — Escapa uma string para usar em uma consulta MySQL
  • mysql_fetch_array — Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
  • mysql_fetch_assoc — Obtém um linha do resultado como uma matriz associativa
  • mysql_fetch_field — Obtém informações sobre uma coluna de um resultado e retorna como um objeto
  • mysql_fetch_lengths — Obtém o tamanho de cada saída no resultado
  • mysql_fetch_object — Obtém o resultado de uma linha como um objeto
  • mysql_fetch_row — Obtém uma linha como uma array numérica
  • mysql_field_flags — Obtém as flags associadas ao campo especificado em um resultado
  • mysql_field_len — Retorna o tamanho do campo especificado
  • mysql_field_name — Obtém o nome do campo especificado em um resultado
  • mysql_field_seek — Define o ponteiro do resultado para o índice de campo especificado
  • mysql_field_table — Obtém o nome da tabela na qual o campo especificado esta
  • mysql_field_type — Obtém o tipo do campo especificado em um resultado
  • mysql_free_result — Libera um resultado da memória
  • mysql_get_client_info — Obtém informações do cliente MySQL
  • mysql_get_host_info — Obtém informações do servidor MySQL
  • mysql_get_proto_info — Obtém informações do protocolo MySQL
  • mysql_get_server_info — Obtém informações do servidor MySQL
  • mysql_info — Obtém informação sobre a consulta mais recente
  • mysql_insert_id — Obtém o ID gerado pela operação INSERT anterior
  • mysql_list_dbs — Lista os bancos de dados disponíveis em um servidor MySQL
  • mysql_list_fields — Lista os campos de uma tabela MySQL
  • mysql_list_processes — Lista os processos MySQL
  • mysql_list_tables — Lista as tabelas em um banco de dados MySQL
  • mysql_num_fields — Obtém o numero de campos em um resultado
  • mysql_num_rows — Obtém o número de linhas em um resultado
  • mysql_pconnect — Abre uma conexão persistente com um servidor MySQL
  • mysql_ping — pinga uma conexão com o servidor ou reconecta se não houver conexão
  • mysql_query — Envia uma consulta MySQL
  • mysql_real_escape_string — Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.
  • mysql_result — Retorna dados do resultado
  • mysql_select_db — Seleciona um banco de dados MySQL
  • mysql_set_charset — Sets the client character set
  • mysql_stat — Retorna o status atual do sistema
  • mysql_tablename — Retorna o nome da tabela do campo
  • mysql_thread_id — Returna o ID da thread atual
  • mysql_unbuffered_query — Envia uma query para o MySQL, sem retornar e colocar em buffer as linhas do resultado
mysql_affected_rows
MySQL


Obtém o número de linhas atingidas na operação anterior do MySQL

Funções da MySQL
mysql_client_encoding
Funções da MySQL
PHP Manual

mysql_affected_rows

(PHP 4, PHP 5)

mysql_affected_rows — Obtém o número de linhas atingidas na operação anterior do MySQL

Descrição

int mysql_affected_rows ([ resource $link_identifier ] )

Obtém o número de linhas atingidas pela consulta INSERT, UPDATE, REPLACE ou DELETE mais recente associada ao link_identifier.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retona o número de linas atingidas em caso de sucesso, e -1 se a ultima consulta falhou.

Se a ultima consulta foi um consulta DELETE sem a claúsula WHERE, todos os registros terão sido excluídos da tabela mas esta função irá retornar zero com versões do MySQL anteriores a 4.1.2.

Ao usar UPDATE, o MySQL não irá atualizar colunas aonde o novo valor é o mesmo que o valor anterior. Isto cria a possibilidade de que mysql_affected_rows() possa não ser igual ao número de linhas encontradas, apenas o número de linhas que literalmente foram afetadas pela consulta.

O comando REPLACE primeiro exclui o registro com a mesma chave primaria e então insere o novo registro. Esta função retorna o número de registros excluídos mais o número de registros inseridos.

Exemplos

Exemplo #1 Exemplo mysql_affected_rows()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
mysql_select_db('mydb');

/* isto deve retornar o número correto de registros excluídos */
mysql_query('DELETE FROM mytable WHERE id < 10');
printf("Registros excluídos: %d\n", mysql_affected_rows());

/* com uma clausula where que jamais é verdadeira, deve retornar 0 */
mysql_query('DELETE FROM mytable WHERE 0');
printf("Registros Excluídos: %d\n", mysql_affected_rows());
?>

O exemplo acima irá imprimir algo similar a:

Records deleted: 10
Records deleted: 0

Exemplo #2 Exemplo de mysql_affected_rows() usando transações

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
mysql_select_db('mydb');

/* Atualiza os registros */
mysql_query("UPDATE mytable SET used=1 WHERE id < 10");
printf ("Registros atualizados: %d\n", mysql_affected_rows());
mysql_query("COMMIT");
?>

O exemplo acima irá imprimir algo similar a:

Updated Records: 10

Notas

Nota: Transações

Se você estiver usando transações, você deve utilizar mysql_affected_rows() depois da sua consulta INSERT, UPDATE, ou DELETE, não depois de COMMIT.

Nota: Comandos SELECT

Para obter o número de linhas retornados por um SELECT, é possível usar mysql_num_rows().

Veja Também

  • mysql_num_rows() - Obtém o número de linhas em um resultado
  • mysql_info() - Obtém informação sobre a consulta mais recente

Funções da MySQL
mysql_client_encoding
Funções da MySQL


Retorna o nome do conjunto de caracteres

mysql_affected_rows
mysql_close
Funções da MySQL
PHP Manual

mysql_client_encoding

(PHP 4 >= 4.3.0, PHP 5)

mysql_client_encoding — Retorna o nome do conjunto de caracteres

Descrição

string mysql_client_encoding ([ resource $link_identifier ] )

Obtém a variável character_set do MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna o conjunto de caracteres padrão da conexão atual.

Exemplos

Exemplo #1 Exemplo mysql_client_encoding()

<?php
$link    = mysql_connect('localhost', 'mysql_user', 'mysql_password');
$charset = mysql_client_encoding($link);

echo "O conjunto de caracteres atual é: $charset\n";
?>

O exemplo acima irá imprimir algo similar a:

O conjunto de caracteres atual é: latin1

Veja Também

  • mysql_real_escape_string() - Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.

mysql_affected_rows
mysql_close
Funções da MySQL


Fecha a conexão MySQL

mysql_client_encoding
mysql_connect
Funções da MySQL
PHP Manual

mysql_close

(PHP 4, PHP 5)

mysql_close — Fecha a conexão MySQL

Descrição

bool mysql_close ([ resource $link_identifier ] )

mysql_close() fecha a conexão não persistente ao servidor MySQL que esta associado ao identificador de conexão dado. Se link_identifier não for especificado, a ultima conexão aberta é usada.

Usar mysql_close() não é normalmente necessário, já que as conexões não persistentes são automaticamente fechadas ao final da execução do script. Veja também liberando recursos.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo mysql_close()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);
?>

O exemplo acima irá imprimir:

Conexão bem sucedida

Notas

Nota:

mysql_close() não irá fechar conexões persistentes criadas por mysql_pconnect().

Veja Também

  • mysql_connect() - Abre uma conexão com um servidor MySQL
  • mysql_free_result() - Libera um resultado da memória

mysql_client_encoding
mysql_connect
Funções da MySQL


Abre uma conexão com um servidor MySQL

mysql_close
mysql_create_db
Funções da MySQL
PHP Manual

mysql_connect

(PHP 4, PHP 5)

mysql_connect — Abre uma conexão com um servidor MySQL

Descrição

resource mysql_connect ([ string $server [, string $username [, string $password [, bool $new_link [, int $client_flags ]]]]] )

Abre ou reutiliza uma conexão com um servidor MySQL.

Parâmetros

server

O servidor MySQL. Também pode incluir um número de porta, exemplo "servidor:porta" ou um caminho para um socket local, exemplo ":/caminho/para/socket" para o servidor local(localhost).

Se a diretiva do PHP mysql.default_host não estiver definida(padrão), então o valor padrão é 'localhost:3306'

username

O nome de usuário. O valor padrão é o nome do usuário que é o proprietário do processo do servidor.

password

A senha. O valor padrão é uma senha vazia.

new_link

Se uma segunda chamada é feita a mysql_connect() com os mesmos argumentos, não é estabelecida uma nova conexão, mas ao invés, o identificador da conexão que já esta aberta é retornado. O parâmetro new_link modifica este funcionamento e faz mysql_connect() sempre abrir uma nova conexão, mesmo que mysql_connect() seja chamado antes com os mesmos parâmetros.

client_flags

O parâmetro client_flags pode ser uma combinação das seguintes constantes: MYSQL_CLIENT_SSL, MYSQL_CLIENT_COMPRESS, MYSQL_CLIENT_IGNORE_SPACE ou MYSQL_CLIENT_INTERACTIVE. Leia a seção sobre Constante do cliente MySQL para maiores informações.

Valor Retornado

Retorna um identificador de conexão MySQL em caso de sucesso, ou FALSE em caso de falha.

Histórico

Versão | Descrição
4.3.0 | Adicionado o parâmetro client_flags.
4.2.0 | Adicionado o parâmetro new_link.
3.0.10 | Adicionado o suporte para ":/caminho/para/socket" com server.
3.0.0 | Adicionado o suporte para ":porta" com server.

Exemplos

Exemplo #1 Exemplo mysql_connect()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);
?>

Exemplo #2 Exemplo mysql_connect() usando a a sintaxe servidor:porta

<?php
// nós conectamos com example.com na porta 3307
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);

// nós conectamos com localhost na porta 3307
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);
?>

Exemplo #3 Exemplo mysql_connect() usando a sintaxe ":/caminho/para/socket"

<?php
// nós conectamos com localhost e socket exemplo /tmp/mysql.sock

//variação 1: omitindo localhost
$link = mysql_connect('/tmp/mysql', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);

// variant 2: with localhost
$link = mysql_connect('localhost:/tmp/mysql.sock', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);
?>

Notas

Nota:

Em qualquer lugar que você especificar "localhost" ou "localhost:porta" como servidor, a biblioteca de cliente do MySQL irá sobrescrever isso e tentar conectar com um socket local (named pipe no Windows). Se você quiser usar TCP/IP, use "127.0.0.1" ao invés de "localhost". Se a biblioteca de cliente do MySQL tentar conectar com o socket local errado, você deverá definir o caminho correto como na sua configuração do PHP e deixar o campo servidor em branco.

Nota:

A conexão com o servidor será fechada assim que a execução do script terminar, a menos que tenha sido fechada anteriormente usando-se explicitamente mysql_close().

Nota:

Você pode suprimir a mensagem de erro em caso de falha adicionando ante do nome da função @.

Veja Também

  • mysql_pconnect() - Abre uma conexão persistente com um servidor MySQL
  • mysql_close() - Fecha a conexão MySQL

mysql_close
mysql_create_db
Funções da MySQL


Cria um banco de dados MySQL

mysql_connect
mysql_data_seek
Funções da MySQL
PHP Manual

mysql_create_db

(PHP 4, PHP 5)

mysql_create_db — Cria um banco de dados MySQL

Descrição

bool mysql_create_db ( string $database_name [, resource $link_identifier ] )

mysql_create_db() tenta criar um novo banco de dados no servidor indicado pelo identificador de conexão especificado.

Parâmetros

database_name

O nome do banco de dados sendo criado.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo alternativo de mysql_create_db()

A função mysql_create_db() esta obsoleta. É preferível usar a função mysql_query() para executar ao invés um comando CREATE DATABASE.

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}

$sql = 'CREATE DATABASE my_db';
if (mysql_query($sql, $link)) {
    echo "O banco de dados my_db foi criado\n";
} else {
    echo 'Erro criando o banco de dados: ' . mysql_error() . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

O banco de dados my_db foi criado

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_createdb()

Nota:

Esta função não estará disponível se a extensão MySQL foi compilada com a versão MySQL 4.x da biblioteca de cliente.

Veja Também

  • mysql_query() - Envia uma consulta MySQL
  • mysql_select_db() - Seleciona um banco de dados MySQL

mysql_connect
mysql_data_seek
Funções da MySQL


Move o ponteiro interno do resultado

mysql_create_db
mysql_db_name
Funções da MySQL
PHP Manual

mysql_data_seek

(PHP 4, PHP 5)

mysql_data_seek — Move o ponteiro interno do resultado

Descrição

bool mysql_data_seek ( resource $result , int $row_number )

mysql_data_seek() move o ponteiro interno das linhas de um resultado MySQL associado ao identificador de resultado dado para o número da linha especificado. A próxima chamada a uma função MySQL que retorne resultado, como mysql_fetch_assoc(), irá retornar esta linha.

row_number começa em 0. O row_number deve ser um valor no intervalo de 0 a mysql_num_rows() - 1. Entretanto, se o conjunto de reseultados for vazio (mysql_num_rows() == 0), uma busca para 0 irá falhar com um E_WARNING e mysql_data_seek() iá retornar FALSE.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

row_number

O número de linha desejado para o ponteiro de resultado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo mysql_data_seek()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}
$db_selected = mysql_select_db('sample_db');
if (!$db_selected) {
    die('Não foi possível selecionar o banco de dados: ' . mysql_error());
}
$query = 'SELECT last_name, first_name FROM friends';
$result = mysql_query($query);
if (!$result) {
    die('A consulta falhou: ' . mysql_error());
}
/* obtém as linhas em ordem reversa */
for ($i = mysql_num_rows($result) - 1; $i >= 0; $i--) {
    if (!mysql_data_seek($result, $i)) {
        echo "Não foi possível mover para a linha $i: " . mysql_error() . "\n";
        continue;
    }

    if (!($row = mysql_fetch_assoc($result))) {
        continue;
    }

    echo $row['last_name'] . ' ' . $row['first_name'] . "<br />\n";
}

mysql_free_result($result);
?>

Notas

Nota:

A função mysql_data_seek() pode ser usada apenas em conjunto com a função mysql_query(), não com mysql_unbuffered_query().

Veja Também

  • mysql_query() - Envia uma consulta MySQL
  • mysql_num_rows() - Obtém o número de linhas em um resultado
  • mysql_fetch_row() - Obtém uma linha como uma array numérica
  • mysql_fetch_assoc() - Obtém um linha do resultado como uma matriz associativa
  • mysql_fetch_array() - Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
  • mysql_fetch_object() - Obtém o resultado de uma linha como um objeto

mysql_create_db
mysql_db_name
Funções da MySQL


Obtém dados do resultado(nome de banco de dados)

mysql_data_seek
mysql_db_query
Funções da MySQL
PHP Manual

mysql_db_name

(PHP 4, PHP 5)

mysql_db_name — Obtém dados do resultado(nome de banco de dados)

Descrição

string mysql_db_name ( resource $result , int $row [, mixed $field ] )

Obtém o nome do banco de dados a partir de uma chamada a mysql_list_dbs().

Parâmetros

result

O ponteiro de resultado de uma chamada a mysql_list_dbs().

row

O índice dentro do conjunto de resultados.

field

O nome do campo.

Valor Retornado

Retorna o nome do banco de dados em caso de sucesso, e FALSE em caso de falha. Se for retornado FALSE, use mysql_error() para determinar a natureza do erro.

Exemplos

Exemplo #1 Exemplo mysql_db_name()

<?php
error_reporting(E_ALL);

$link = mysql_connect('dbhost', 'username', 'password');
$db_list = mysql_list_dbs($link);

$i = 0;
$cnt = mysql_num_rows($db_list);
while ($i < $cnt) {
    echo mysql_db_name($db_list, $i) . "\n";
    $i++;
}
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_dbname()

Veja Também

  • mysql_list_dbs() - Lista os bancos de dados disponíveis em um servidor MySQL
  • mysql_tablename() - Retorna o nome da tabela do campo

mysql_data_seek
mysql_db_query
Funções da MySQL


Envia uma consulta MySQL

mysql_db_name
mysql_drop_db
Funções da MySQL
PHP Manual

mysql_db_query

(PHP 4, PHP 5)

mysql_db_query — Envia uma consulta MySQL

Descrição

resource mysql_db_query ( string $database , string $query [, resource $link_identifier ] )

mysql_db_query() seleciona um banco de dados, e executa uma consulta nele.

Parâmetros

database

O nome do banco de dados que será selecionado.

query

A consulta MySQL.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna um recurso de resultado MySQL com o resultado da consulta, ou FALSE em caso de erro. A função também retorna TRUE/FALSE para consultas INSERT/UPDATE/DELETE para indicar sucesso/falha.

Histórico

Versão | Descrição
4.0.6 | Esta função é obsoleta, não use esta função. Use mysql_select_db() e mysql_query() ao invés.

Exemplos

Exemplo #1 Exemplo alternativo mysql_db_query()

<?php

if (!$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
    echo 'Não foi possível conectar ao mysql';
    exit;
}

if (!mysql_select_db('mysql_dbname', $link)) {
    echo 'Não foi possível selecionar o banco de dados';
    exit;
}

$sql    = 'SELECT foo FROM bar WHERE id = 42';
$result = mysql_query($sql, $link);

if (!$result) {
    echo "Erro do banco de dados, não foi possível consultar o banco de dados\n";
    echo 'Erro MySQL: ' . mysql_error();
    exit;
}

while ($row = mysql_fetch_assoc($result)) {
    echo $row['foo'];
}

mysql_free_result($result);

?>

Notas

Nota:

Tenha cuidado que esta função NÃO muda de volta para o banco de dados que você estava conectado antes. Em outras palavras, você não pode usar esta função para temporariamente executar uma consulta sql em outro banco de dados, você deverá manualmente retornar ao banco de dados anterior. Aos usuários é fortemente recomendado usar a sintaxe bancodedados.tabela nas suas consultas ou mysql_select_db() ao invés desta função.

Veja Também

  • mysql_query() - Envia uma consulta MySQL
  • mysql_select_db() - Seleciona um banco de dados MySQL

mysql_db_name
mysql_drop_db
Funções da MySQL


Exclui um banco de dados MySQL

mysql_db_query
mysql_errno
Funções da MySQL
PHP Manual

mysql_drop_db

(PHP 4, PHP 5)

mysql_drop_db — Exclui um banco de dados MySQL

Descrição

bool mysql_drop_db ( string $database_name [, resource $link_identifier ] )

mysql_drop_db() tenta remover todo um banco de dados do servidor associado ao identificador de conexão dado. Esta função é obsoleta, é preferível usar mysql_query() para realilar um comando sql DROP DATABASE ao invés.

Parâmetros

database_name

O nome do banco de dados que será excluído.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo alternativo de mysql_drop_db()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar: ' . mysql_error());
}

$sql = 'DROP DATABASE my_db';
if (mysql_query($sql, $link)) {
    echo "O banco de dados foi excluído com sucesso\n";
} else {
    echo 'Erro ao excluir o banco de dados: ' . mysql_error() . "\n";
}
?>

Notas

Aviso

Esta função não estará disponível se a extensão MySQL foi compilada com a versão da biblioteca de cliente MySQL 4.x.

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_dropdb()

Veja Também

  • mysql_query() - Envia uma consulta MySQL

mysql_db_query
mysql_errno
Funções da MySQL


Retorna o valor numérico da mensagem de erro da operação MySQL anterior

mysql_drop_db
mysql_error
Funções da MySQL
PHP Manual

mysql_errno

(PHP 4, PHP 5)

mysql_errno — Retorna o valor numérico da mensagem de erro da operação MySQL anterior

Descrição

int mysql_errno ([ resource $link_identifier ] )

Retorna o número do erro da ultima função MySQL.

Erros vindos o MySQL não geram mais avisos. Ao invés, use mysql_errno() para obter o código do erro. Note que esta fução apenas retorna o código apenas da função to MySQL mais recentemente usada (não incluindo mysql_error() e mysql_errno()), assim se você quiser usa-la, tenha certesa de conferir o valor antes de executar outra função MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna o número de erro da ultima função MySQL, ou 0 (zero) se não houve erro.

Exemplos

Exemplo #1 Exemplo mysql_errno()

<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");

if (!mysql_select_db("nonexistentdb", $link)) {
    echo mysql_errno($link) . ": " . mysql_error($link). "\n";
}

mysql_select_db("kossu", $link);
if (!mysql_query("SELECT * FROM nonexistenttable", $link)) {
    echo mysql_errno($link) . ": " . mysql_error($link) . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

1049: Unknown database 'nonexistentdb'
1146: Table 'kossu.nonexistenttable' doesn't exist

Veja Também

  • mysql_error() - Retorna o texto da mensagem de erro da operação MySQL anterior
  • » códigos de erro MySQL

mysql_drop_db
mysql_error
Funções da MySQL


Retorna o texto da mensagem de erro da operação MySQL anterior

mysql_errno
mysql_escape_string
Funções da MySQL
PHP Manual

mysql_error

(PHP 4, PHP 5)

mysql_error — Retorna o texto da mensagem de erro da operação MySQL anterior

Descrição

string mysql_error ([ resource $link_identifier ] )

Retorna o texto do erro da ultima função MySQL. Erros vindos do banco de dados MySQL não geram mais avisos. Ao invés, use mysql_error() para obter o texto do erro. Note que esta função apenas retorna o texto do erro da função MySQL mais recentemente executada (não incluindo mysql_error() e mysql_errno()), assim se você quiser usa-la, tenha certesa de usar o valor antes de utilizar outra função MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna o texto do erro da ultima função MySQL, ou '' (uma string vazia) se não houve erro.

Exemplos

Exemplo #1 Exemplo mysql_error()

<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");

mysql_select_db("nonexistentdb", $link);
echo mysql_errno($link) . ": " . mysql_error($link). "\n";

mysql_select_db("kossu", $link);
mysql_query("SELECT * FROM nonexistenttable", $link);
echo mysql_errno($link) . ": " . mysql_error($link) . "\n";
?>

O exemplo acima irá imprimir algo similar a:

1049: Unknown database 'nonexistentdb'
1146: Table 'kossu.nonexistenttable' doesn't exist

Veja Também

  • mysql_errno() - Retorna o valor numérico da mensagem de erro da operação MySQL anterior
  • » códigos de erro MySQL

mysql_errno
mysql_escape_string
Funções da MySQL


Escapa uma string para usar em uma consulta MySQL

mysql_error
mysql_fetch_array
Funções da MySQL
PHP Manual

mysql_escape_string

(PHP 4 >= 4.0.3, PHP 5)

mysql_escape_string — Escapa uma string para usar em uma consulta MySQL

Descrição

string mysql_escape_string ( string $unescaped_string )

This function will escape the unescaped_string, so that it is safe to place it in a mysql_query(). This function is deprecated.

This function is identical to mysql_real_escape_string() except that mysql_real_escape_string() takes a connection handler and escapes the string according to the current character set. mysql_escape_string() does not take a connection argument and does not respect the current charset setting.

Parâmetros

unescaped_string

The string that is to be escaped.

Valor Retornado

Returns the escaped string.

Histórico

Versão | Descrição
4.3.0 | This function became deprecated, do not use this function. Instead, use mysql_real_escape_string().

Exemplos

Exemplo #1 mysql_escape_string() example

<?php
$item = "Zak's Laptop";
$escaped_item = mysql_escape_string($item);
printf("Escaped string: %s\n", $escaped_item);
?>

O exemplo acima irá imprimir:

Escaped string: Zak\'s Laptop

Notas

Nota:

mysql_escape_string() does not escape % and _.

Veja Também

  • mysql_real_escape_string() - Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.
  • addslashes() - Adiciona barras invertidas a uma string
  • The magic_quotes_gpc directive.

mysql_error
mysql_fetch_array
Funções da MySQL


Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas

mysql_escape_string
mysql_fetch_assoc
Funções da MySQL
PHP Manual

mysql_fetch_array

(PHP 4, PHP 5)

mysql_fetch_array — Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas

Descrição

array mysql_fetch_array ( resource $result [, int $result_type ] )

Retorna uma matriz que corresponde a linha obtida e move o ponteiro interno dos dados adiante.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

result_type

O tipo de array que deve ser obtida. é uma constante e pode ter os seguintes valores: MYSQL_ASSOC, MYSQL_NUM, e o valor padrão de MYSQL_BOTH.

Valor Retornado

Retorna uma array que corresponde a linha obtida, ou FALSE se não houver mais linhas. O tipo da array retornada depende de como result_type esta definido. Usando MYSQL_BOTH (padrão), você terá um array com ambos os índices, numérico e associativo. Usando MYSQL_ASSOC, você tem apenas os índices associativos (como mysql_fetch_assoc() funciona), usando MYSQL_NUM, você tem apenas os índices numéricos (como mysql_fetch_row() funciona).

Se duas ou mais colunas do resultado tiverem os mesmos nomes de campos, a ultima coluna terá precedencia. Para acessar a(s) outra(s) coluna(s) com o mesmo nome, você deverá usar o índice numérico da coluna ou fazer um alias para a coluna. Para colunas com alias, você não pode acessar os conteúdos com o nome original da coluna.

Exemplos

Exemplo #1 Consulta com nomes de campos duplicados usando alias

SELECT table1.field AS foo, table2.field AS bar FROM table1, table2

Exemplo #2 mysql_fetch_array() com MYSQL_NUM

<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Não foi possível conectar: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    printf("ID: %s  Name: %s", $row[0], $row[1]);
}

mysql_free_result($result);
?>

Exemplo #3 mysql_fetch_array() com MYSQL_ASSOC

<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Não foi possível conectar: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);
?>

Exemplo #4 mysql_fetch_array() com MYSQL_BOTH

<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Não foi possível conectar: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
    printf ("ID: %s  Name: %s", $row[0], $row["name"]);
}

mysql_free_result($result);
?>

Notas

Nota: Performance

Uma coisa importante para notar que usar mysql_fetch_array() não é significativamente mais lento do que usar mysql_fetch_row(), enquanto provê um valor agregado significante.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mysql_fetch_row() - Obtém uma linha como uma array numérica
  • mysql_fetch_assoc() - Obtém um linha do resultado como uma matriz associativa
  • mysql_data_seek() - Move o ponteiro interno do resultado
  • mysql_query() - Envia uma consulta MySQL

mysql_escape_string
mysql_fetch_assoc
Funções da MySQL


Obtém um linha do resultado como uma matriz associativa

mysql_fetch_array
mysql_fetch_field
Funções da MySQL
PHP Manual

mysql_fetch_assoc

(PHP 4 >= 4.0.3, PHP 5)

mysql_fetch_assoc — Obtém um linha do resultado como uma matriz associativa

Descrição

array mysql_fetch_assoc ( resource $result )

Retorna uma matriz associativa que corresponde a linha obtida e move o ponteiro interno dos dados adiante. mysql_fetch_assoc() é equivalente a utilizar mysql_fetch_array() com MYSQL_ASSOC para o segunto parâmetro, que é opcional. Ela apenas retorna a matriz associativa.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

Retorna uma matriz associativa de strings que corresponde a linha obtida, ou FALSE se não houverem mais linhas.

Se duas ou mais colunas do resultado tiverem o mesmo nome de campo, a ultima coluna terá precedencia. Para acessar as outras coluna(s) com o mesmo nome, você precisa acessar os outros resultados usando índices numéricos usando mysql_fetch_row() ou adicionar nomes alias. Veja o exemplo em mysql_fetch_array() para uma descrição sobre alias.

Exemplos

Exemplo #1 Um exemplo expandido de mysql_fetch_assoc()

<?php

$conn = mysql_connect("localhost", "mysql_user", "mysql_password");

if (!$conn) {
    echo "Não foi possível conectar ao banco de dados: " . mysql_error();
    exit;
}

if (!mysql_select_db("mydbname")) {
    echo "Não foi possível selecionar mydbname: " . mysql_error();
    exit;
}

$sql = "SELECT id as userid, fullname, userstatus
        FROM   sometable
        WHERE  userstatus = 1";

$result = mysql_query($sql);

if (!$result) {
    echo "Não foi possível executar a consulta ($sql) no banco de dados: " . mysql_error();
    exit;
}

if (mysql_num_rows($result) == 0) {
    echo "Não foram encontradas linhas, nada para mostrar, assim eu estou saindo";
    exit;
}

// Enquanto uma linha de dados existir, coloca esta linha em $row como uma matriz associativa
// Nota: se você esta esperando apenas uma linha, não é necessário usar um loop
// Nota: se você colocar extract($row); dentro do loop, você então
//     irá criar $userid, $fullname, e $userstatus
while ($row = mysql_fetch_assoc($result)) {
    echo $row["userid"];
    echo $row["fullname"];
    echo $row["userstatus"];
}

mysql_free_result($result);

?>

Notas

Nota: Performance

Uma coisa importante para notar é que usar mysql_fetch_assoc() não é significativamente mais lento do que usar mysql_fetch_row(), enquanto provê um valor agregado significante.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mysql_fetch_row() - Obtém uma linha como uma array numérica
  • mysql_fetch_array() - Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
  • mysql_data_seek() - Move o ponteiro interno do resultado
  • mysql_query() - Envia uma consulta MySQL
  • mysql_error() - Retorna o texto da mensagem de erro da operação MySQL anterior

mysql_fetch_array
mysql_fetch_field
Funções da MySQL


Obtém informações sobre uma coluna de um resultado e retorna como um objeto

mysql_fetch_assoc
mysql_fetch_lengths
Funções da MySQL
PHP Manual

mysql_fetch_field

(PHP 4, PHP 5)

mysql_fetch_field — Obtém informações sobre uma coluna de um resultado e retorna como um objeto

Descrição

object mysql_fetch_field ( resource $result [, int $field_offset ] )

Retorna um objeto contendo informações sobre o campo. Esta função pode ser usada para obter informações sobre os campos de um resultado de uma consulta.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O índice numérico do campo. Se o índice não for especificado, o próximo campo que não tenha sido obtido por esta função é retornado. O parâmetro field_offset começa em 0.

Valor Retornado

Retorna um object contendo a informação sobre o campo. As propriedades do objeto são:

  • name - nome da coluna
  • table - a tabela a qual o objeto pertence
  • def - o valor padrão da coluna
  • max_length - o limite de tamanho da coluna
  • not_null - 1 se a coluna não puder ser NULL
  • primary_key - 1 se a coluna é a chave primária
  • unique_key - 1 se a coluna é a chave única
  • multiple_key - 1 se a coluna é uma chave não-única
  • numeric - 1 se a coluna é numérica
  • blob - 1 se a coluna é um BLOB
  • type - o tipo da coluna
  • unsigned - 1 se a coluna é sem sinal
  • zerofill - 1 se a coluna é prenchida com zero

Exemplos

Exemplo #1 Exemplo mysql_fetch_field()

<?php
$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$conn) {
    die('Não foi possível conectar: ' . mysql_error());
}
mysql_select_db('database');
$result = mysql_query('select * from table');
if (!$result) {
    die('A consulta falhou: ' . mysql_error());
}
/* obtém as informações da coluna */
$i = 0;
while ($i < mysql_num_fields($result)) {
    echo "Informação para a coluna $i:<br />\n";
    $meta = mysql_fetch_field($result, $i);
    if (!$meta) {
        echo "Sem informação disponível<br />\n";
    }
    echo "<pre>
blob:         $meta->blob
max_length:   $meta->max_length
multiple_key: $meta->multiple_key
name:         $meta->name
not_null:     $meta->not_null
numeric:      $meta->numeric
primary_key:  $meta->primary_key
table:        $meta->table
type:         $meta->type
default:      $meta->def
unique_key:   $meta->unique_key
unsigned:     $meta->unsigned
zerofill:     $meta->zerofill
</pre>";
    $i++;
}
mysql_free_result($result);
?>

Notas

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Veja Também

  • mysql_field_seek() - Define o ponteiro do resultado para o índice de campo especificado

mysql_fetch_assoc
mysql_fetch_lengths
Funções da MySQL


Obtém o tamanho de cada saída no resultado

mysql_fetch_field
mysql_fetch_object
Funções da MySQL
PHP Manual

mysql_fetch_lengths

(PHP 4, PHP 5)

mysql_fetch_lengths — Obtém o tamanho de cada saída no resultado

Descrição

array mysql_fetch_lengths ( resource $result )

Retorna uma matriz que corresponde aos tamanhos de cada campo na ultima linha obtida pelo MySQL.

mysql_fetch_lengths() guarda o tamanho de
cada coluna do resultado na ultima linha retornada por
mysql_fetch_row(),
mysql_fetch_assoc(),
mysql_fetch_array(), e
mysql_fetch_object() em uma matriz, começando
no índice 0.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

Um array de tamanhos em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Um exemplo mysql_fetch_lengths()

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Não foi possível executar a consulta: ' . mysql_error();
    exit;
}
$row     = mysql_fetch_assoc($result);
$lengths = mysql_fetch_lengths($result);

print_r($row);
print_r($lengths);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [id] => 42
    [email] => user@example.com
)
Array
(
    [0] => 2
    [1] => 16
)

Veja Também

  • mysql_field_len() - Retorna o tamanho do campo especificado
  • mysql_fetch_row() - Obtém uma linha como uma array numérica
  • strlen() - Retorna o tamanho de uma string

mysql_fetch_field
mysql_fetch_object
Funções da MySQL


Obtém o resultado de uma linha como um objeto

mysql_fetch_lengths
mysql_fetch_row
Funções da MySQL
PHP Manual

mysql_fetch_object

(PHP 4, PHP 5)

mysql_fetch_object — Obtém o resultado de uma linha como um objeto

Descrição

object mysql_fetch_object ( resource $result [, string $class_name [, array $params ]] )

Retorna um objeto com propriedades que correspondem a linha obtida e move o ponteiro interno dos dados adiante.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

class_name

O nome de classe para instanciar, definir as propriedades e retornar. Se não for especificado, um objeto stdClass é retornado.

params

Uma array opcional de parâmetros para passar para o construtor do objeto class_name.

Valor Retornado

Retorna um object com propriedades strings que correspondem a linha obtida, ou FALSE se não houverem mais linhas.

mysql_fetch_row() obtém uma linha de dados do resultado associado ao identificador de resultados dado. A linha é retornada como um array. Cada coluna do resultado é guardada em um índice da matriz, começando no índice 0.

Histórico

Versão | Descrição
5.0.0 | Adiciona a abilidade de retornar como um objeto diferente.

Exemplos

Exemplo #1 Exemplo mysql_fetch_object()

<?php
mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");
$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result)) {
    echo $row->user_id;
    echo $row->fullname;
}
mysql_free_result($result);
?>

Exemplo #2 Exemplo mysql_fetch_object()

<?php
class foo {
    public $name;
}

mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");

$result = mysql_query("select name from mytable limit 1");
$obj = mysql_fetch_object($result, 'foo');
var_dump($obj);
?>

Notas

Nota: Performance

Em termos de velocidade, a função é identica a mysql_fetch_array(), e quase tão rápida quanto mysql_fetch_row() (a diferença é insignificante).

Nota:

mysql_fetch_object() é similar a mysql_fetch_array(), com uma diferença - um objeto é retornado, ao invés de um array. Indiretamente, isto significa que você pode acessar os dados apenas pelo nome dos campos, e não por seus índices (numeros são ilegais como nomes de propriedades).

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mysql_fetch_array() - Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
  • mysql_fetch_assoc() - Obtém um linha do resultado como uma matriz associativa
  • mysql_fetch_row() - Obtém uma linha como uma array numérica
  • mysql_data_seek() - Move o ponteiro interno do resultado
  • mysql_query() - Envia uma consulta MySQL

mysql_fetch_lengths
mysql_fetch_row
Funções da MySQL


Obtém uma linha como uma array numérica

mysql_fetch_object
mysql_field_flags
Funções da MySQL
PHP Manual

mysql_fetch_row

(PHP 4, PHP 5)

mysql_fetch_row — Obtém uma linha como uma array numérica

Descrição

array mysql_fetch_row ( resource $result )

Retorna uma array numérica que corresponde a linha obtida e move o ponteiro interno dos dados adiante.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

Retorna uma array numérica de strings que corresponde linha obtida, ou FALSE se não houverem mais linhas.

mysql_fetch_row() obtém uma linha de dados do resultado associado ao identificador de resultado dado. A linha é retornada como um array. Cada coluna do resultado é salva em um índice da matriz, começando no índice 0.

Exemplos

Exemplo #1 Obtendo uma linha com mysql_fetch_row()

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Não foi possível executar a consulta: ' . mysql_error();
    exit;
}
$row = mysql_fetch_row($result);

echo $row[0]; // 42
echo $row[1]; // o valor do email
?>

Notas

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja Também

  • mysql_fetch_array() - Obtém uma linha como uma matriz associativa, uma matriz numérica, ou ambas
  • mysql_fetch_assoc() - Obtém um linha do resultado como uma matriz associativa
  • mysql_fetch_object() - Obtém o resultado de uma linha como um objeto
  • mysql_data_seek() - Move o ponteiro interno do resultado
  • mysql_fetch_lengths() - Obtém o tamanho de cada saída no resultado
  • mysql_result() - Retorna dados do resultado

mysql_fetch_object
mysql_field_flags
Funções da MySQL


Obtém as flags associadas ao campo especificado em um resultado

mysql_fetch_row
mysql_field_len
Funções da MySQL
PHP Manual

mysql_field_flags

(PHP 4, PHP 5)

mysql_field_flags — Obtém as flags associadas ao campo especificado em um resultado

Descrição

string mysql_field_flags ( resource $result , int $field_offset )

mysql_field_flags() retorna as flags do campo especificado. As flags são mostradas como uma única palavra por flag separada por um único espaço, assim você pode dividir o valor retornado usando explode().

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

Retorna uma string com as flags associadas ao resultado, ou false em caso de falha.

As seguintes flags são reportadas, se a sua versão do MySQL for atual o suficiente para suporta-las: "not_null", "primary_key", "unique_key", "multiple_key", "blob", "unsigned", "zerofill", "binary", "enum", "auto_increment" e "timestamp".

Exemplos

Exemplo #1 Um exemplo de mysql_field_flags()

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Não foi possível executar a consulta: ' . mysql_error();
    exit;
}
$flags = mysql_field_flags($result, 0);

echo $flags;
print_r(explode(' ', $flags));
?>

O exemplo acima irá imprimir algo similar a:

not_null primary_key auto_increment
Array
(
    [0] => not_null
    [1] => primary_key
    [2] => auto_increment
)

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_fieldflags()

mysql_fetch_row
mysql_field_len
Funções da MySQL


Retorna o tamanho do campo especificado

mysql_field_flags
mysql_field_name
Funções da MySQL
PHP Manual

mysql_field_len

(PHP 4, PHP 5)

mysql_field_len — Retorna o tamanho do campo especificado

Descrição

int mysql_field_len ( resource $result , int $field_offset )

mysql_field_len() retorna o tamanho do campo especificado.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

O tamanho do campo especificado em sucesso, ou FALSE em falha.

Exemplos

Exemplo #1 mysql_field_len() example

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Could not run query: ' . mysql_error();
    exit;
}

// Will get the length of the id field as specified in the database
// schema.
$length = mysql_field_len($result, 0);
echo $length;
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_fieldlen()

Veja Também

  • mysql_fetch_lengths() - Obtém o tamanho de cada saída no resultado
  • strlen() - Retorna o tamanho de uma string

mysql_field_flags
mysql_field_name
Funções da MySQL


Obtém o nome do campo especificado em um resultado

mysql_field_len
mysql_field_seek
Funções da MySQL
PHP Manual

mysql_field_name

(PHP 4, PHP 5)

mysql_field_name — Obtém o nome do campo especificado em um resultado

Descrição

string mysql_field_name ( resource $result , int $field_offset )

mysql_field_name() retorna o nome do campo do índice especificado.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

O nome do campo do índice especificado emj caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_field_name()

<?php
/* A tabela users consiste em três campos:
*   user_id
*   username
*   password.
*/
$link = @mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Não foi possível conectar ao servidor MySQL: ' . mysql_error());
}
$dbname = 'mydb';
$db_selected = mysql_select_db($dbname, $link);
if (!$db_selected) {
    die("Não foi possível selecionar $dbname: " . mysql_error());
}
$res = mysql_query('select * from users', $link);

echo mysql_field_name($res, 0) . "\n";
echo mysql_field_name($res, 2);
?>

O exemplo acima irá imprimir:

user_id
password

Notas

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_fieldname()

Veja Também

  • mysql_field_type() - Obtém o tipo do campo especificado em um resultado
  • mysql_field_len() - Retorna o tamanho do campo especificado

mysql_field_len
mysql_field_seek
Funções da MySQL


Define o ponteiro do resultado para o índice de campo especificado

mysql_field_name
mysql_field_table
Funções da MySQL
PHP Manual

mysql_field_seek

(PHP 4, PHP 5)

mysql_field_seek — Define o ponteiro do resultado para o índice de campo especificado

Descrição

bool mysql_field_seek ( resource $result , int $field_offset )

Move para o índice do campo especificado. Se a próxima chamada a mysql_fetch_field() não incluir um índice, o índice de campo especificado em mysql_field_seek() será retornado.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mysql_fetch_field() - Obtém informações sobre uma coluna de um resultado e retorna como um objeto

mysql_field_name
mysql_field_table
Funções da MySQL


Obtém o nome da tabela na qual o campo especificado esta

mysql_field_seek
mysql_field_type
Funções da MySQL
PHP Manual

mysql_field_table

(PHP 4, PHP 5)

mysql_field_table — Obtém o nome da tabela na qual o campo especificado esta

Descrição

string mysql_field_table ( resource $result , int $field_offset )

Retorna o nome da tabela na qual o campo especificado esta.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

O nome da tabela em caso de sucesso.

Exemplos

Exemplo #1 Um exemplo mysql_field_table()

<?php

$query = "SELECT account.*, country.* FROM account, country WHERE country.name = 'Portugal' AND account.country_id = country.id";

// get the result from the DB
$result = mysql_query($query);

// Lists the table name and then the field name
for ($i = 0; $i < mysql_num_fields($result); ++$i) {
    $table = mysql_field_table($result, $i);
    $field = mysql_field_name($result, $i);

    echo "$table: $field\n";
}

?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_fieldtable()

Veja Também

  • mysql_list_tables() - Lista as tabelas em um banco de dados MySQL

mysql_field_seek
mysql_field_type
Funções da MySQL


Obtém o tipo do campo especificado em um resultado

mysql_field_table
mysql_free_result
Funções da MySQL
PHP Manual

mysql_field_type

(PHP 4, PHP 5)

mysql_field_type — Obtém o tipo do campo especificado em um resultado

Descrição

string mysql_field_type ( resource $result , int $field_offset )

mysql_field_type() é similar a mysql_field_name(). Os argumentos são identicos, mas ao invés é retornado o tipo do campo.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

field_offset

O indice nuérico do campo. O field_offset começa em 0. Se field_offset não existir, um erro de nível E_WARNING é emitido.

Valor Retornado

O tipo de campo retornado será um de "int", "real", "string", "blob", e outros como detalhado na » documentação do MySQL.

Exemplos

Exemplo #1 Exemplo mysql_field_type()

<?php
mysql_connect("localhost", "mysql_username", "mysql_password");
mysql_select_db("mysql");
$result = mysql_query("SELECT * FROM func");
$fields = mysql_num_fields($result);
$rows   = mysql_num_rows($result);
$table  = mysql_field_table($result, 0);
echo "Your '" . $table . "' table has " . $fields . " fields and " . $rows . " record(s)\n";
echo "The table has the following fields:\n";
for ($i=0; $i < $fields; $i++) {
    $type  = mysql_field_type($result, $i);
    $name  = mysql_field_name($result, $i);
    $len   = mysql_field_len($result, $i);
    $flags = mysql_field_flags($result, $i);
    echo $type . " " . $name . " " . $len . " " . $flags . "\n";
}
mysql_free_result($result);
mysql_close();
?>

O exemplo acima irá imprimir algo similar a:

Your 'func' table has 4 fields and 1 record(s)
The table has the following fields:
string name 64 not_null primary_key binary
int ret 1 not_null
string dl 128 not_null
string type 9 not_null enum

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_fieldtype()

Veja Também

  • mysql_field_name() - Obtém o nome do campo especificado em um resultado
  • mysql_field_len() - Retorna o tamanho do campo especificado

mysql_field_table
mysql_free_result
Funções da MySQL


Libera um resultado da memória

mysql_field_type
mysql_get_client_info
Funções da MySQL
PHP Manual

mysql_free_result

(PHP 4, PHP 5)

mysql_free_result — Libera um resultado da memória

Descrição

bool mysql_free_result ( resource $result )

mysql_free_result() irá liberar toda a memória associada ao identificador de resultado result.

mysql_free_result() apenas precisa ser chamada se você esta preocupado sobre quanta memória esta sendo usada em consultas que retornam grandes conjuntos de resultados. Toda a memória associada a um resultado é automaticamente liberada ao final da execução do script.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Se não for usado um recurso para result, um erro de nível E_WARNING será emitido. É importante notar que mysql_query() apena retorna um resource para consultas SELECT, SHOW, EXPLAIN, e DESCRIBE.

Exemplos

Exemplo #1 Um exemplo mysql_free_result()

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Não foi possível executar a consulta: ' . mysql_error();
    exit;
}
/* Use the result, assuming we're done with it afterwords */
$row = mysql_fetch_assoc($result);

/* Now we free up the result and continue on with our script */
mysql_free_result($result);

echo $row['id'];
echo $row['email'];
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_freeresult()

Veja Também

  • mysql_query() - Envia uma consulta MySQL
  • is_resource() - Informa se a variável é um resource

mysql_field_type
mysql_get_client_info
Funções da MySQL


Obtém informações do cliente MySQL

mysql_free_result
mysql_get_host_info
Funções da MySQL
PHP Manual

mysql_get_client_info

(PHP 4 >= 4.0.5, PHP 5)

mysql_get_client_info — Obtém informações do cliente MySQL

Descrição

string mysql_get_client_info ( void )

mysql_get_client_info() retorna uma string que representa a versão da biblioteca de cliente.

Valor Retornado

A versão do cliente MySQL.

Exemplos

Exemplo #1 Exemplo mysql_get_client_info()

<?php
printf("MySQL client info: %s\n", mysql_get_client_info());
?>

O exemplo acima irá imprimir algo similar a:

MySQL client info: 3.23.39

Veja Também

  • mysql_get_host_info() - Obtém informações do servidor MySQL
  • mysql_get_proto_info() - Obtém informações do protocolo MySQL
  • mysql_get_server_info() - Obtém informações do servidor MySQL

mysql_free_result
mysql_get_host_info
Funções da MySQL


Obtém informações do servidor MySQL

mysql_get_client_info
mysql_get_proto_info
Funções da MySQL
PHP Manual

mysql_get_host_info

(PHP 4 >= 4.0.5, PHP 5)

mysql_get_host_info — Obtém informações do servidor MySQL

Descrição

string mysql_get_host_info ([ resource $link_identifier ] )

Descreve o tipo de conexão em uso para a conexão, incluindo o nome do servidor.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna uma string descrevendo o tipo da conexão MySQL em uso para a conexão, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_get_host_info()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
printf("MySQL host info: %s\n", mysql_get_host_info());
?>

O exemplo acima irá imprimir algo similar a:

MySQL host info: Localhost via UNIX socket

Veja Também

  • mysql_get_client_info() - Obtém informações do cliente MySQL
  • mysql_get_proto_info() - Obtém informações do protocolo MySQL
  • mysql_get_server_info() - Obtém informações do servidor MySQL

mysql_get_client_info
mysql_get_proto_info
Funções da MySQL


Obtém informações do protocolo MySQL

mysql_get_host_info
mysql_get_server_info
Funções da MySQL
PHP Manual

mysql_get_proto_info

(PHP 4 >= 4.0.5, PHP 5)

mysql_get_proto_info — Obtém informações do protocolo MySQL

Descrição

int mysql_get_proto_info ([ resource $link_identifier ] )

Obtém o protocolo MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna o protocolo MySQL em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_get_proto_info()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
printf("MySQL protocol version: %s\n", mysql_get_proto_info());
?>

O exemplo acima irá imprimir algo similar a:

MySQL protocol version: 10

Veja Também

  • mysql_get_client_info() - Obtém informações do cliente MySQL
  • mysql_get_host_info() - Obtém informações do servidor MySQL
  • mysql_get_server_info() - Obtém informações do servidor MySQL

mysql_get_host_info
mysql_get_server_info
Funções da MySQL


Obtém informações do servidor MySQL

mysql_get_proto_info
mysql_info
Funções da MySQL
PHP Manual

mysql_get_server_info

(PHP 4 >= 4.0.5, PHP 5)

mysql_get_server_info — Obtém informações do servidor MySQL

Descrição

string mysql_get_server_info ([ resource $link_identifier ] )

Obtém a versão do servidor MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna a versão do servidor MySQL em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_get_server_info()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
printf("MySQL server version: %s\n", mysql_get_server_info());
?>

O exemplo acima irá imprimir algo similar a:

MySQL server version: 4.0.1-alpha

Veja Também

  • mysql_get_client_info() - Obtém informações do cliente MySQL
  • mysql_get_host_info() - Obtém informações do servidor MySQL
  • mysql_get_proto_info() - Obtém informações do protocolo MySQL
  • phpversion() - Obtém a versão atual do PHP

mysql_get_proto_info
mysql_info
Funções da MySQL


Obtém informação sobre a consulta mais recente

mysql_get_server_info
mysql_insert_id
Funções da MySQL
PHP Manual

mysql_info

(PHP 4 >= 4.3.0, PHP 5)

mysql_info — Obtém informação sobre a consulta mais recente

Descrição

string mysql_info ([ resource $link_identifier ] )

Retorna informação detalhada sobre a última consulta.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna informação sobre o comando em caso de sucesso, ou FALSE em caso de falha. Veja o exemplo abaixo para quais comandos provêm informação, e como o valor retornado se parecerá. Comandos não listados irão retornar FALSE.

Exemplos

Exemplo #1 Comandos MySQL relevantes

Comandos que retornam valores de string. Os números são apenas para proposito de ilustração, os seus valores irão corresponder a consulta.

INSERT INTO ... SELECT ...
String format: Records: 23 Duplicates: 0 Warnings: 0
INSERT INTO ... VALUES (...),(...),(...)...
String format: Records: 37 Duplicates: 0 Warnings: 0
LOAD DATA INFILE ...
String format: Records: 42 Deleted: 0 Skipped: 0 Warnings: 0
ALTER TABLE
String format: Records: 60 Duplicates: 0 Warnings: 0
UPDATE
String format: Rows matched: 65 Changed: 65 Warnings: 0

Notas

Nota:

mysql_info() retornará um valor diferente de FALSE para comandos INSERT ... VALUES apenas se multiplas listas de valores forem especificadas no comando.

Veja Também

  • mysql_affected_rows() - Obtém o número de linhas atingidas na operação anterior do MySQL
  • mysql_insert_id() - Obtém o ID gerado pela operação INSERT anterior
  • mysql_stat() - Retorna o status atual do sistema

mysql_get_server_info
mysql_insert_id
Funções da MySQL


Obtém o ID gerado pela operação INSERT anterior

mysql_info
mysql_list_dbs
Funções da MySQL
PHP Manual

mysql_insert_id

(PHP 4, PHP 5)

mysql_insert_id — Obtém o ID gerado pela operação INSERT anterior

Descrição

int mysql_insert_id ([ resource $link_identifier ] )

Obtém o ID gerado para uma coluna AUTO_INCREMENT pela consulta INSERT anterior.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

O ID gerado para uma coluna AUTO_INCREMENT pela consulta INSERT anterior em caso de sucesso, 0 se a consulta anterior não gerou um valor AUTO_INCREMENT, ou FALSE se não foi estabelecida a conexão com o MySQL.

Exemplos

Exemplo #1 Exemplo mysql_insert_id()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>

Notas

Cuidado

mysql_insert_id() converte o tipo de retorno nativo da API em C do MySQL mysql_insert_id() para um tipo long (chamado int no PHP). Se a sua coluna AUTO_INCREMENT for uma coluna do tipo BIGINT, o valor retornado por mysql_insert_id() será incorreto. Ao invés, use a função SQL interna do MySQL LAST_INSERT_ID() em uma consulta SQL.

Nota:

Devido a mysql_insert_id() agir sobre a última consulta realizada, tenha certeza de chamar mysql_insert_id() imediatamente após a consulta que gerou o valor.

Nota:

O valor da função SQL do MySQL LAST_INSERT_ID() sempre contém o valor AUTO_INCREMENT mais recentemente gerado, e não é reiniciado entre as consultas.

Veja Também

  • mysql_query() - Envia uma consulta MySQL
  • mysql_info() - Obtém informação sobre a consulta mais recente

mysql_info
mysql_list_dbs
Funções da MySQL


Lista os bancos de dados disponíveis em um servidor MySQL

mysql_insert_id
mysql_list_fields
Funções da MySQL
PHP Manual

mysql_list_dbs

(PHP 4, PHP 5)

mysql_list_dbs — Lista os bancos de dados disponíveis em um servidor MySQL

Descrição

resource mysql_list_dbs ([ resource $link_identifier ] )

Retorna um ponteiro de resultado contendo od banco de dados disponíveis atualmente no servidor MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna um ponteiro de resultado resource em caso de sucesso, ou FALSE em caso de falha. Use a função mysql_tablename() para lidar com este ponteiro de resultado, ou qualquer função para tabelas com resultados, como mysql_fetch_array().

Exemplos

Exemplo #1 Exemplo mysql_list_dbs()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
$db_list = mysql_list_dbs($link);

while ($row = mysql_fetch_object($db_list)) {
     echo $row->Database . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

database1
database2
database3

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_listdbs()

Veja Também

  • mysql_db_name() - Obtém dados do resultado(nome de banco de dados)
  • mysql_select_db() - Seleciona um banco de dados MySQL

mysql_insert_id
mysql_list_fields
Funções da MySQL


Lista os campos de uma tabela MySQL

mysql_list_dbs
mysql_list_processes
Funções da MySQL
PHP Manual

mysql_list_fields

(PHP 4, PHP 5)

mysql_list_fields — Lista os campos de uma tabela MySQL

Descrição

resource mysql_list_fields ( string $database_name , string $table_name [, resource $link_identifier ] )

Obtém informações sobre o nome de tabela dado.

Esta função esta obsoleta. É preferrível usar mysql_query() para realizar uma consulta SQL SHOW COLUMNS FROM table [LIKE 'name'] ao invés.

Parâmetros

database_name

O nome do banco de dados que esta sendo consultado.

table_name

O nome da tabela que esta sendo consultada.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Um ponteiro de recurso resource em caso de sucesso, ou FALSE em caso de falha.

O ponteiro de resultado pode ser usado com mysql_field_flags(),
mysql_field_len(),
mysql_field_name() e
mysql_field_type().

Exemplos

Exemplo #1 Alternativa para o obsoleto mysql_list_fields()

<?php
$result = mysql_query("SHOW COLUMNS FROM sometable");
if (!$result) {
    echo 'Could not run query: ' . mysql_error();
    exit;
}
if (mysql_num_rows($result) > 0) {
    while ($row = mysql_fetch_assoc($result)) {
        print_r($row);
    }
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [Field] => id
    [Type] => int(7)
    [Null] =>
    [Key] => PRI
    [Default] =>
    [Extra] => auto_increment
)
Array
(
    [Field] => email
    [Type] => varchar(100)
    [Null] =>
    [Key] =>
    [Default] =>
    [Extra] =>
)

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_listfields()

Veja Também

  • mysql_field_flags() - Obtém as flags associadas ao campo especificado em um resultado
  • mysql_info() - Obtém informação sobre a consulta mais recente

mysql_list_dbs
mysql_list_processes
Funções da MySQL


Lista os processos MySQL

mysql_list_fields
mysql_list_tables
Funções da MySQL
PHP Manual

mysql_list_processes

(PHP 4 >= 4.3.0, PHP 5)

mysql_list_processes — Lista os processos MySQL

Descrição

resource mysql_list_processes ([ resource $link_identifier ] )

Obtém as threads atuais do servidor MySQL.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Um ponteiro de resultado resource em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_list_processes()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');

$result = mysql_list_processes($link);
while ($row = mysql_fetch_assoc($result)){
    printf("%s %s %s %s %s\n", $row["Id"], $row["Host"], $row["db"],
        $row["Command"], $row["Time"]);
}
mysql_free_result($result);
?>

O exemplo acima irá imprimir algo similar a:

1 localhost test Processlist 0
4 localhost mysql sleep 5

Veja Também

  • mysql_thread_id() - Returna o ID da thread atual
  • mysql_stat() - Retorna o status atual do sistema

mysql_list_fields
mysql_list_tables
Funções da MySQL


Lista as tabelas em um banco de dados MySQL

mysql_list_processes
mysql_num_fields
Funções da MySQL
PHP Manual

mysql_list_tables

(PHP 4, PHP 5)

mysql_list_tables — Lista as tabelas em um banco de dados MySQL

Descrição

resource mysql_list_tables ( string $database [, resource $link_identifier ] )

Obtém uma lista dos nomes das tabelas de um banco de dados MySQL.

Esta função esta obsoleta. É preferrível usar mysql_query() para fazer uma consulta SQL SHOW TABLES [FROM db_name] [LIKE 'pattern'] ao invés.

Parâmetros

database

O nome do banco de dados

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Um ponteiro do tipo resultado resource em caso de sucesso, ou FALSE em caso de falha.

Use a função mysql_tablename() para lidar com este ponteiro de resultado, ou qualquer função para tabelas de resultado, como mysql_fetch_array().

Exemplos

Exemplo #1 Exemplo alternativo de mysql_list_tables()

<?php
$dbname = 'mysql_dbname';

if (!mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
    echo 'Could not connect to mysql';
    exit;
}

$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);

if (!$result) {
    echo "DB Error, could not list tables\n";
    echo 'MySQL Error: ' . mysql_error();
    exit;
}

while ($row = mysql_fetch_row($result)) {
    echo "Table: {$row[0]}\n";
}

mysql_free_result($result);
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_listtables()

Veja Também

  • mysql_list_dbs() - Lista os bancos de dados disponíveis em um servidor MySQL
  • mysql_tablename() - Retorna o nome da tabela do campo

mysql_list_processes
mysql_num_fields
Funções da MySQL


Obtém o numero de campos em um resultado

mysql_list_tables
mysql_num_rows
Funções da MySQL
PHP Manual

mysql_num_fields

(PHP 4, PHP 5)

mysql_num_fields — Obtém o numero de campos em um resultado

Descrição

int mysql_num_fields ( resource $result )

Obtém o numero de campos de uma consulta.

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

Retorna o numero de capos em um conjunto de resultados resource em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_num_fields()

<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Could not run query: ' . mysql_error();
    exit;
}

/* returns 2 because id,email === two fields */
echo mysql_num_fields($result);
?>

Notas

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_numfields()

Veja Também

  • mysql_select_db() - Seleciona um banco de dados MySQL
  • mysql_query() - Envia uma consulta MySQL
  • mysql_fetch_field() - Obtém informações sobre uma coluna de um resultado e retorna como um objeto
  • mysql_num_rows() - Obtém o número de linhas em um resultado

mysql_list_tables
mysql_num_rows
Funções da MySQL


Obtém o número de linhas em um resultado

mysql_num_fields
mysql_pconnect
Funções da MySQL
PHP Manual

mysql_num_rows

(PHP 4, PHP 5)

mysql_num_rows — Obtém o número de linhas em um resultado

Descrição

int mysql_num_rows ( resource $result )

Obtém o numero de linhas de um conjunto de resultados. Este comando é valido apenas para comandos como SELECT ou SHOW que atualmente retornam um conjunto de resultados. Para obter o numero de linhas afetadas por uma consulta INSERT, UPDATE, REPLACE ou DELETE, use mysql_affected_rows().

Parâmetros

result

O resultado resource que esta sendo avaliado. Este resultado vem de uma chamada a mysql_query().

Valor Retornado

O numero de linhas em um conjunto de resultados em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo mysql_num_rows()

<?php

$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);

$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);

echo "$num_rows Rows\n";

?>

Notas

Nota:

Se você usar mysql_unbuffered_query(), mysql_num_rows() não irá retornar o valor correto até que todas as linhas no conjunto de resultado tenham sido obtidas.

Nota:

Para compatibilidade com versões anteriores, o seguinte apelido obsoleto pode ser usado: mysql_numrows()

Veja Também

  • mysql_affected_rows() - Obtém o número de linhas atingidas na operação anterior do MySQL
  • mysql_connect() - Abre uma conexão com um servidor MySQL
  • mysql_data_seek() - Move o ponteiro interno do resultado
  • mysql_select_db() - Seleciona um banco de dados MySQL
  • mysql_query() - Envia uma consulta MySQL

mysql_num_fields
mysql_pconnect
Funções da MySQL


Abre uma conexão persistente com um servidor MySQL

mysql_num_rows
mysql_ping
Funções da MySQL
PHP Manual

mysql_pconnect

(PHP 4, PHP 5)

mysql_pconnect — Abre uma conexão persistente com um servidor MySQL

Descrição

resource mysql_pconnect ([ string $server [, string $username [, string $password [, int $client_flags ]]]] )

Estabelece uma conexão persistente com o servidor MySQL.

mysql_pconnect() funciona muito parecido com mysql_connect() com duas maiores diferenças.

Primeiro, ao conectar,a função irá primeiro tentar encontrar uma conexão(persistente) que já esteja aberta com o mesmo servidor, nome de usuário e senha. Se uma for encontrada, um identificador para ela será retornado ao invés de abrir uma nova conexão.

Segundo, a conexão ao servidor SQL não será fechada quando a execução do script terminar. Ao invés, a conexão permanecerá aberta para uso futuro (mysql_close() não irá fechar conexões estabelecidas por mysql_pconnect()).

Este tipo de conexão portanto é chamada 'persistente'.

Parâmetros

server

O servidor MySQL. Também pode incluir um numero de porta. exemplo "hostname:port" ou um caminho para um socket local exemplo ":/path/to/socket" para o servidor local.

Se a diretiva do PHP mysql.default_host não estiver definida (padrão), então o valor padrão é 'localhost:3306'

username

O nome de usuário. O Valor padrão é o nome do usuário que é o proprietário do processo do servidor.

password

A senha. O valor padrão é uma senha vazia.

client_flags

O parâmetro client_flags pode ser uma combinação das seguintes constantes: 128 (habilita manuseador LOAD DATA LOCAL), MYSQL_CLIENT_SSL, MYSQL_CLIENT_COMPRESS, MYSQL_CLIENT_IGNORE_SPACE ou MYSQL_CLIENT_INTERACTIVE.

Valor Retornado

Retorna um identificador de conexão persistente MySQL em caso de sucesso, ou FALSE em caso de falha.

Histórico

Versão | Descrição
4.3.0 | Adicionado o parâmetro client_flags.
3.0.10 | Adicionado o suporte a ":/path/to/socket" com server.
3.0.0 | Adicionado o suporte a ":port" com server.

Notas

Nota:

Note que este tipo de conexão funciona somente se você estiver usando uma versão do PHP como módulo. Veja a sessão Conexões Persistentes com Banco de Dados para maiores informações.

Aviso

Usar conexões persistentes podem requerer alguns ajustes na suas configurações do Apache e do MySQL para ter certeza que você não exceda o limite de conexões permitidas pelo MySQL.

Nota:

Você pode suprimir a mensagem de erro em caso de falha adicionando @ ao nome da função.

Veja Também

  • mysql_connect() - Abre uma conexão com um servidor MySQL
  • Conexões Persistentes com Banco de Dados

mysql_num_rows
mysql_ping
Funções da MySQL


pinga uma conexão com o servidor ou reconecta se não houver conexão

mysql_pconnect
mysql_query
Funções da MySQL
PHP Manual

mysql_ping

(PHP 4 >= 4.3.0, PHP 5)

mysql_ping — pinga uma conexão com o servidor ou reconecta se não houver conexão

Descrição

bool mysql_ping ([ resource $link_identifier ] )

Confere se uma conexão com um servidor esta funcionando ou não. Se ela tiver caído, tenta realizar uma conexão automatica. Esta função pode ser usada em scripts que permanecem inativos por um longo tempo, para conferir se o servidor fechou ou não a conexão e reconectar se necessário.

Nota:

Desde o MySQL 5.0.13, o recurso de automática reconexão está desabilitada.

Parâmetros

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna TRUE se a conexão com o servidor MySQL esta funcionando, se não retorna FALSE.

Exemplos

Exemplo #1 Exemplo mysql_ping()

<?php
set_time_limit(0);

$conn = mysql_connect('localhost', 'mysqluser', 'mypass');
$db   = mysql_select_db('mydb');

/* Assuming this query will take a long time */
$result = mysql_query($sql);
if (!$result) {
    echo 'Query #1 failed, exiting.';
    exit;
}

/* Make sure the connection is still alive, if not, try to reconnect */
if (!mysql_ping($conn)) {
    echo 'Lost connection, exiting after query #1';
    exit;
}
mysql_free_result($result);

/* So the connection is still alive, let's run another query */
$result2 = mysql_query($sql2);
?>

Veja Também

  • mysql_thread_id() - Returna o ID da thread atual
  • mysql_list_processes() - Lista os processos MySQL

mysql_pconnect
mysql_query
Funções da MySQL


Envia uma consulta MySQL

mysql_ping
mysql_real_escape_string
Funções da MySQL
PHP Manual

mysql_query

(PHP 4, PHP 5)

mysql_query — Envia uma consulta MySQL

Descrição

resource mysql_query ( string $query [, resource $link_identifier ] )

mysql_query() envia uma consulta (para o banco de dados atualmente ativo no servidor associado ao link_identifier especificado).

Parâmetros

query

A consulta SQL.

A consulta não deve terminar com um ponto e vírgula.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Para comandos SELECT, SHOW, DESCRIBE ou EXPLAIN, mysql_query() retorna um resource em caso de sucesso, ou FALSE em caso de falha.

Para outros tipos de consultas SQL, UPDATE, DELETE, DROP, etc, mysql_query() retorna TRUE em caso de sucesso ou FALSE em caso de erro.

O recurso de resultado retornado pode ser passado para mysql_fetch_array(), e outras funções para manipular tabelas de resultados, para acessar os dados retornados.

Use mysql_num_rows() para obter quantas linhas foram retornadas para um comando SELECT ou mysql_affected_rows() para obter quantas linhas foram afetadas por um comando DELETE, INSERT, REPLACE, ou UPDATE.

mysql_query() irá também falhar e retornar FALSE se o usuário não tiver permissões para acessar a tabela(s) referenciadas pela consulta.

Exemplos

Exemplo #1 Consulta Inválida

A seguinte consulta é sintaticamente inválida, assim mysql_query() falha e retorna FALSE.

<?php
$result = mysql_query('SELECT * WHERE 1=1');
if (!$result) {
    die('Invalid query: ' . mysql_error());
}

?>

Exemplo #2 Consulta válida

A seguinte consulta é válida, assim mysql_query() retorna um resource.

<?php
// This could be supplied by a user, for example
$firstname = 'fred';
$lastname  = 'fox';

// Formulate Query
// This is the best way to perform a SQL query
// For more examples, see mysql_real_escape_string()
$query = sprintf("SELECT firstname, lastname, address, age FROM friends WHERE firstname='%s' AND lastname='%s'",
    mysql_real_escape_string($firstname),
    mysql_real_escape_string($lastname));

// Perform Query
$result = mysql_query($query);

// Check result
// This shows the actual query sent to MySQL, and the error. Useful for debugging.
if (!$result) {
    $message  = 'Invalid query: ' . mysql_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
}

// Use result
// Attempting to print $result won't allow access to information in the resource
// One of the mysql result functions must be used
// See also mysql_result(), mysql_fetch_array(), mysql_fetch_row(), etc.
while ($row = mysql_fetch_assoc($result)) {
    echo $row['firstname'];
    echo $row['lastname'];
    echo $row['address'];
    echo $row['age'];
}

// Free the resources associated with the result set
// This is done automatically at the end of the script
mysql_free_result($result);
?>

Veja Também

  • mysql_connect() - Abre uma conexão com um servidor MySQL
  • mysql_error() - Retorna o texto da mensagem de erro da operação MySQL anterior
  • mysql_real_escape_string() - Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.
  • mysql_result() - Retorna dados do resultado
  • mysql_fetch_assoc() - Obtém um linha do resultado como uma matriz associativa
  • mysql_unbuffered_query() - Envia uma query para o MySQL, sem retornar e colocar em buffer as linhas do resultado

mysql_ping
mysql_real_escape_string
Funções da MySQL


Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.

mysql_query
mysql_result
Funções da MySQL
PHP Manual

mysql_real_escape_string

(PHP 4 >= 4.3.0, PHP 5)

mysql_real_escape_string — Escapa os caracteres especiais numa string para usar em um comando SQL, levando em conta o conjunto atual de caracteres.

Descrição

string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier ] )

Esta função irá escapar os caracteres especiais em unescaped_string, levando em conta o atual conjunto de caracteres da conexão, assim é seguro coloca-la em mysql_query().

Nota: mysql_real_escape_string() não escapa % e _.

Exemplo #1 Exemplo mysql_real_escape_string()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
$item = "Zak's and Derick's Laptop";
$escaped_item = mysql_real_escape_string($item, $link);
printf("Escaped string: %s\n", $escaped_item);
?>

O exemplo acima deve produzir a seguinte saída:

Escaped string: Zak\'s and Derick\'s Laptop

Veja também mysql_escape_string() e mysql_client_encoding().

mysql_query
mysql_result
Funções da MySQL


Retorna dados do resultado

mysql_real_escape_string
mysql_select_db
Funções da MySQL
PHP Manual

mysql_result

(PHP 4, PHP 5)

mysql_result — Retorna dados do resultado

Descrição

mixed mysql_result ( resource $result , int $row [, mixed $ field ] )

mysql_result() retorna o conteúdo de uma célula do resultado MySQL. O argumento field(campo) pode ser o índice do campo, o nome do campo, o a tabela ponto o nome do campo(tabela.campo). Se o nome da coluna usa apelido ('select foo as bar from...'), use o apelido ao invés do nome da coluna.

Quando trabalhando com um grande conjunto de resultado, você deve considerar o uso de uma das funções que retornam toda a linha(especificadas abaixo). Estas funções retornam o conteúdo de multiplas células em uma chamada de função, elas são MUITO mais rapidas do que mysql_result(). Também note que especificar um índice do campo é muito mais rapido do que especificar o nome do campo ou tabela.campo.

Chamadas a mysql_result() não devem ser misturadas com chamadas a outras funções que lidam com o conjunto de resultados.

Exemplo #1 Exemplo mysql_result()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
$result = mysql_query('SELECT name FROM work.employee');
if (!$result) {
    die('Could not query:' . mysql_error());
}
echo mysql_result($result, 2); // outputs third employee's name

mysql_close($link);
?>

Alternativas de alta performance recomendadas:
mysql_fetch_row(),
mysql_fetch_array(),
mysql_fetch_assoc() e
mysql_fetch_object().

mysql_real_escape_string
mysql_select_db
Funções da MySQL


Seleciona um banco de dados MySQL

mysql_result
mysql_set_charset
Funções da MySQL
PHP Manual

mysql_select_db

(PHP 4, PHP 5)

mysql_select_db — Seleciona um banco de dados MySQL

Descrição

bool mysql_select_db ( string $database_name [, resource $ link_identifier ] )

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mysql_select_db() define o banco de dados ativo no servidor que é associado ao identificador de conexão(link_identifier) especificado. Se nenhum identificador de conexão é especificado, a ultima conexão aberta é assumida. Se nenhuma conexão esta aberta, a função irá tentar abrir uma conexão como se mysql_connect() fosse chamada sem argumentos e usa-la.

Todas as próximas chamadas a mysql_query() serão feitas no banco de dados ativo.

Exemplo #1 Exemplo mysql_select_db()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Not connected : ' . mysql_error());
}

// make foo the current db
$db_selected = mysql_select_db('foo', $link);
if (!$db_selected) {
    die ('Can\'t use foo : ' . mysql_error());
}
?>

Veja também
mysql_connect(),
mysql_pconnect() e
mysql_query().

Para compatibilidade com versões anteriores mysql_selectdb() também pode ser usada. Esta função esta obsoleta.

mysql_result
mysql_set_charset
Funções da MySQL


Sets the client character set

mysql_select_db
mysql_stat
Funções da MySQL
PHP Manual

mysql_set_charset

(PHP 5 >= 5.2.3)

mysql_set_charset — Sets the client character set

Descrição

bool mysql_set_charset ( string $charset [, resource $link_identifier ] )

Sets the default character set for the current connection.

Parâmetros

charset

A valid character set name.

link_identifier

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível de erro E_WARNING é gerado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

This function requires MySQL 5.0.7 or later.

Nota:

This is the preferred way to change the charset. Using mysql_query() to execute SET NAMES .. is not recommended.

Veja Também

  • mysql_client_encoding() - Retorna o nome do conjunto de caracteres
  • » List of character sets that MySQL supports

mysql_select_db
mysql_stat
Funções da MySQL


Retorna o status atual do sistema

mysql_set_charset
mysql_tablename
Funções da MySQL
PHP Manual

mysql_stat

(PHP 4 >= 4.3.0, PHP 5)

mysql_stat — Retorna o status atual do sistema

Descrição

string mysql_stat ([ resource $link_identifier ] )

mysql_stat() returna o status atual do servidor.

Nota:

mysql_stat() atualmente retorna somente o satus para uptime, threads, queries, open tables, flush tables e queries por segundos. Para uma lista completa de outras variáveis de staus você tem que usar o comando SQL SHOW STATUS.

Exemplo #1 Exemplo mysql_stat()

<?php
$link = mysql_connect('localhost', "mysql_user", "mysql_password");
$status = explode('  ', mysql_stat($link));
print_r($status);
?>

O exemplo acima deve produzir a seguinte saída:

Array
(
    [0] => Uptime: 5380
    [1] => Threads: 2
    [2] => Questions: 1321299
    [3] => Slow queries: 0
    [4] => Opens: 26
    [5] => Flush tables: 1
    [6] => Open tables: 17
    [7] => Queries per second avg: 245.595
)

mysql_set_charset
mysql_tablename
Funções da MySQL


Retorna o nome da tabela do campo

mysql_stat
mysql_thread_id
Funções da MySQL
PHP Manual

mysql_tablename

(PHP 4, PHP 5)

mysql_tablename — Retorna o nome da tabela do campo

Descrição

string mysql_tablename ( resource $result , int $i )

mysql_tablename() usa um ponteiro de resultado retornado por mysql_list_tables() ou um índice inteiro e retorna o nome da tabela A função mysql_num_rows() pode ser usada para determinar o número de tabelas no ponteiro do resultado. Use a função mysql_tablename() para transpor o resultado, ou qualquer função para pegar o resultado como mysql_fetch_array().

Exemplo #1 Exemplo mysql_tablename()

<?php
mysql_connect("localhost", "mysql_user", "mysql_password");
$result = mysql_list_tables("mydb");

for ($i = 0; $i < mysql_num_rows($result); $i++) {
    echo "Table: ", mysql_tablename($result, $i), "\n";
}

mysql_free_result($result);
?>

Veja também mysql_list_tables().

mysql_stat
mysql_thread_id
Funções da MySQL


Returna o ID da thread atual

mysql_tablename
mysql_unbuffered_query
Funções da MySQL
PHP Manual

mysql_thread_id

(PHP 4 >= 4.3.0, PHP 5)

mysql_thread_id — Returna o ID da thread atual

Descrição

int mysql_thread_id ([ resource $link_identifier ] )

mysql_thread_id() retorna o ID da thread atual. Se a conexão for perdida e você reconectar com mysql_ping(), o ID da thread irá muda. Isto indica que você não deve guardar o pegar ID e guarda-lo para depois. Você deve pega-lo quando você precisar dele.

Exemplo #1 Exemplo mysql_thread_id()

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
$thread_id = mysql_thread_id($link);
if ($thread_id){
    printf("current thread id is %d\n", $thread_id);
}
?>

O exemplo acima deve produzir a seguinte saída:

current thread id is 73

Veja também mysql_ping() e mysql_list_processes().

mysql_tablename
mysql_unbuffered_query
Funções da MySQL


Envia uma query para o MySQL, sem retornar e colocar em buffer as linhas do resultado

mysql_thread_id
Mysqli
Funções da MySQL
PHP Manual

mysql_unbuffered_query

(PHP 4 >= 4.0.6, PHP 5)

mysql_unbuffered_query — Envia uma query para o MySQL, sem retornar e colocar em buffer as linhas do resultado

Descrição

resource mysql_unbuffered_query ( string $query [, resource $link_identifier ] )

mysql_unbuffered_query() envia uma query SQL para MySQL, sem retornar e colocar em buffer as linhas do resultado automaticamente, como mysql_query() faz. por um lado, isto salva uma quantidade considerável de memória em query que produzem um resultado grandes. por outro lado, você pode começãr a trbalhar com o resultado imediatamente após a primeira linha ser retornada: você não tem que esperar que toda a query SQL seja realizada. Quando usar multiplas conexões com o banco de dados, você deve especificar o parametro opcional link_identifier.

Nota:

Os beneficios de mysql_unbuffered_query() vem com um custo: você não pode usar mysql_num_rows() e mysql_data_seek() no resultado retornado por mysql_unbuffered_query(). Você também tem que pegar todas as linhas de uma query SQL sem buffer antes de poder enviar uma nova query SQL para o MySQL.

Veja também mysql_query().

mysql_thread_id
Mysqli
Funções da MySQL


Extensão MySQL Melhorada

  • Introdução
  • Overview
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • The MySQLi Extension Function Summary
  • MySQLi — A classe MySQLi
    • mysqli->affected_rows — Retorna o número de linhas afetadas pela operação MySQL anterior
    • mysqli::autocommit — Ativa ou desativa o salvar automaticamente as modificações no banco de dados
    • mysqli::change_user — Modifica o usuário para a conexão com o banco de dados especificada
    • mysqli::character_set_name — Retorna o conjunto de caracteres padrão para a conexão com o banco de dados
    • mysqli->client_info — Returns the MySQL client version as a string
    • mysqli->client_version — Get MySQL client info
    • mysqli_close — Fecha uma conexão aberta anteriormente com o banco de dados
    • mysqli::commit — Salva a transação atual
    • mysqli_connect_errno — Retorna o código de erro da ultima chamada a função connect
    • mysqli_connect_error — Retorna uma string descrevendo o ultimo erro da função connect
    • mysqli_connect — Abre uma nova conexão com o servidor MySQL
    • mysqli_debug — Realiza operações de debug
    • mysqli::dump_debug_info — Descarrega informação de debug no log
    • mysqli->errno — Retorna o código de erro para a chamada de função mais recente
    • mysqli->error — Retorna uma string descrevendo o ultimo erro
    • mysqli_field_count — Retorna o número de colunas para a consulta mais recente
    • mysqli::get_charset — Returns a character set object
    • mysqli::get_client_info — Retorna a versão do cliente MySQL como uma string
    • mysqli_get_client_stats — Returns client per-process statistics
    • mysqli::get_client_version — Obtém informação sobre o cliente MySQL
    • mysqli::get_connection_stats — Returns statistics about the client connection
    • mysqli_get_host_info — Retorna uma string representando o tipo da conexão usada
    • mysqli->protocol_version — Retorna a versão do protocolo MySQL usada
    • mysqli->server_info — Retorna a versão do servidor MySQL
    • mysqli->server_version — Retorna a versão do servidor MySQL como um integer
    • mysqli::get_warnings — Get result of SHOW WARNINGS
    • mysqli_info — Recupera informação sobre a mais recente query executada
    • mysqli_init — Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()
    • mysqli_insert_id — Retorna o id gerado automaticamente na última consulta
    • mysqli::kill — Solicita ao servidor o encerramento de um thread do MySQL
    • mysqli::more_results — Verifica se há mais algum resultado de uma multi query
    • mysqli::multi_query — Performs a query on the database
    • mysqli::next_result — Prepara o próximo resultado de multi_query
    • mysqli::options — Set options
    • mysqli::ping — Pings a server connection, or tries to reconnect if the connection has gone down
    • mysqli::poll — Poll connections
    • mysqli::prepare — Prepare an SQL statement for execution
    • mysqli::query — Performs a query on the database
    • mysqli::real_connect — Opens a connection to a mysql server
    • mysqli::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
    • mysqli::real_query — Execute an SQL query
    • mysqli::reap_async_query — Get result from async query
    • mysqli::rollback — Rolls back current transaction
    • mysqli::select_db — Selects the default database for database queries
    • mysqli::set_charset — Sets the default client character set
    • mysqli::set_local_infile_default — Unsets user defined handler for load local infile command
    • mysqli::set_local_infile_handler — Set callback function for LOAD DATA LOCAL INFILE command
    • mysqli->sqlstate — Returns the SQLSTATE error from previous MySQL operation
    • mysqli::ssl_set — Used for establishing secure connections using SSL
    • mysqli::stat — Gets the current system status
    • mysqli::stmt_init — Initializes a statement and returns an object for use with mysqli_stmt_prepare
    • mysqli::store_result — Transfers a result set from the last query
    • mysqli->thread_id — Returns the thread ID for the current connection
    • mysqli::thread_safe — Returns whether thread safety is given or not
    • mysqli::use_result — Initiate a result set retrieval
    • mysqli->warning_count — Returns the number of warnings from the last query for the given link
  • MySQLi_STMT — A classe MySQLi_STMT
    • mysqli_stmt->affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement
    • mysqli_stmt::attr_get — Used to get the current value of a statement attribute
    • mysqli_stmt::attr_set — Used to modify the behavior of a prepared statement
    • mysqli_stmt::bind_param — Passa variáveis para um preparado comando como parâmetros
    • mysqli_stmt::bind_result — Passa variáveis para um preparado comando por resultado armazenado
    • mysqli_stmt::close — Closes a prepared statement
    • mysqli_stmt::data_seek — Seeks to an arbitrary row in statement result set
    • mysqli_stmt->errno — Returns the error code for the most recent statement call
    • mysqli_stmt->error — Returns a string description for last statement error
    • mysqli_stmt->execute — Executa uma preparada query
    • mysqli_stmt::fetch — Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
    • mysqli_stmt->field_count — Returns the number of field in the given statement
    • mysqli_free_result — Libera a memória associada ao resultado
    • mysqli_stmt::get_result — Gets a result set from a prepared statement
    • mysqli_stmt::get_warnings — Get result of SHOW WARNINGS
    • mysqli_stmt->insert_id — Get the ID generated from the previous INSERT operation
    • mysqli_stmt::num_rows — Return the number of rows in statements result set
    • mysqli_stmt->param_count — Returns the number of parameter for the given statement
    • mysqli_stmt::prepare — Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o
    • mysqli_stmt::reset — Resets a prepared statement
    • mysqli_stmt::result_metadata — Returns result set metadata from a prepared statement
    • mysqli_stmt::send_long_data — Send data in blocks
    • mysqli_stmt::sqlstate — Returns SQLSTATE error from previous statement operation
    • mysqli_stmt::store_result — Transfers a result set from a prepared statement
  • MySQLi_Result — A classe MySQLi_Result
    • mysqli_result->current_field — Get current field offset of a result pointer
    • mysqli_result::data_seek — Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados
    • mysqli_result::fetch_all — Fetches all result rows as an associative array, a numeric array, or both
    • mysqli_fetch_array — Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
    • mysqli_result::fetch_assoc — Obtem uma linha do conjunto de resultados como uma matriz associativa
    • mysqli_fetch_field_direct — Obtem meta dados para um único campo
    • mysqli_result::fetch_field — Retorna o próximo campo no conjunto de resultados
    • mysqli_result::fetch_fields — Retorna uma matriz de objetos representando os campos em um conjunto de resultados
    • mysqli_fetch_object — Retorna a linha atual do conjunto de resultados como um objeto
    • mysqli_result::fetch_row — Obtém uma linha do resultado como uma matriz numerada
    • mysqli_result->field_count — Get the number of fields in a result
    • mysqli_field_seek — Move o ponteiro do resultado para um campo especificado
    • mysqli_result::free — Frees the memory associated with a result
    • mysqli_result->lengths — Returns the lengths of the columns of the current row in the result set
    • mysqli_result->num_rows — Gets the number of rows in a result
  • MySQLi_Driver — The MySQLi_Driver class
    • mysqli_driver::embedded_server_end — Stop embedded server
    • mysqli_driver::embedded_server_start — Initialize and start embedded server
  • Apelidos e Funções obsoletas da Mysqli
    • mysqli_bind_param — Apelido para mysqli_stmt_bind_param
    • mysqli_bind_result — Apelido para mysqli_stmt_bind_result
    • mysqli_client_encoding — Apelido para mysqli_character_set_name
    • mysqli_connect — Sinônimo de mysqli::__construct
    • mysqli_disable_reads_from_master — Desabilita leitura do master
    • mysqli_disable_rpl_parse — Desabilita análise RPL
    • mysqli_enable_reads_from_master — Habilita leitura do master
    • mysqli_enable_rpl_parse — Habilita análise RPL
    • mysqli_escape_string — Apelido para mysqli_real_escape_string
    • mysqli_execute — Apelido para mysqli_stmt_execute
    • mysqli_fetch — Apelido para mysqli_stmt_fetch
    • mysqli_get_cache_stats — Returns client Zval cache statistics
    • mysqli_get_metadata — Apelido para mysqli_stmt_result_metadata
    • mysqli_master_query — Força execução de uma query no master numa configuração master/slave
    • mysqli_param_count — Alias for mysqli_stmt_param_count
    • mysqli_report — Enables or disables internal report functions
    • mysqli_rpl_parse_enabled — Check if RPL parse is enabled
    • mysqli_rpl_probe — RPL probe
    • mysqli_rpl_query_type — Returns RPL query type
    • mysqli_send_long_data — Alias for mysqli_stmt_send_long_data
    • mysqli_send_query — Send the query and return
    • mysqli_set_opt — Alias of mysqli_options
    • mysqli_slave_query — Force execution of a query on a slave in a master/slave setup
mysql_unbuffered_query
Introdução
Vendor Specific Database Extensions


Introdução

A extensão mysqli permite a você acessar a funcionalidade provida pelo MySQL 4.1 e posterior. Maiores informações sobre o servidor de banco de dados MySQL podem ser encontradas em » http://www.mysql.com/

Uma visão geral de software disponível para estar usando MySQL através do PHP pode ser encontrado em Overview

Documentação para o MySQL pode ser encontrada em » http://dev.mysql.com/doc/.

Partes desta documentação foram incluídas do manual do MySQL com a permissão de MySQL AB.

Exemplos

Todos os exemplos na documentação MySQLI usam o banco de dados world da MySQL AB. O banco de dados world pode ser encontrado em » http://downloads.mysql.com/docs/world.sql.gz

Mysqli
Overview
Mysqli


Overview

This section provides an introduction to the options available to you when developing a PHP application that needs to interact with a MySQL database.

What is an API?

An Application Programming Interface, or API, defines the classes, methods, functions and variables that your application will need to call in order to carry out its desired task. In the case of PHP applications that need to communicate with databases the necessary APIs are usually exposed via PHP extensions.

APIs can be procedural or object-oriented. With a procedural API you call functions to carry out tasks, with the object-oriented API you instantiate classes and then call methods on the resulting objects. Of the two the latter is usually the preferred interface, as it is more modern and leads to better organised code.

When writing PHP applications that need to connect to the MySQL server there are several API options available. This document discusses what is available and how to select the best solution for your application.

What is a Connector?

In the MySQL documentation, the term connector refers to a piece of software that allows your application to connect to the MySQL database server. MySQL provides connectors for a variety of languages, including PHP.

If your PHP application needs to communicate with a database server you will need to write PHP code to perform such activities as connecting to the database server, querying the database and other database-related functions. Software is required to provide the API that your PHP application will use, and also handle the communication between your application and the database server, possibly using other intermediate libraries where necessary. This software is known generically as a connector, as it allows your application to connect to a database server.

What is a Driver?

A driver is a piece of software designed to communicate with a specific type of database server. The driver may also call a library, such as the MySQL Client Library or the MySQL Native Driver. These libraries implement the low-level protocol used to communicate with the MySQL database server.

By way of an example, the PHP Data Objects (PDO) database abstraction layer may use one of several database-specific drivers. One of the drivers it has available is the PDO MYSQL driver, which allows it to interface with the MySQL server.

Sometimes people use the terms connector and driver interchangeably, this can be confusing. In the MySQL-related documentation the term "driver" is reserved for software that provides the database-specific part of a connector package.

What is an Extension?

In the PHP documentation you will come across another term - extension. The PHP code consists of a core, with optional extensions to the core functionality. PHP's MySQL-related extensions, such as the mysqli extension, and the mysql extension, are implemented using the PHP extension framework.

An extension typically exposes an API to the PHP programmer, to allow its facilities to be used programmatically. However, some extensions which use the PHP extension framework do not expose an API to the PHP programmer.

The PDO MySQL driver extension, for example, does not expose an API to the PHP programmer, but provides an interface to the PDO layer above it.

The terms API and extension should not be taken to mean the same thing, as an extension may not necessarily expose an API to the programmer.

What are the main PHP API offerings for using MySQL?

There are three main API options when considering connecting to a MySQL database server:

  • PHP's MySQL Extension

  • PHP's mysqli Extension

  • PHP Data Objects (PDO)

Each has its own advantages and disadvantages. The following discussion aims to give a brief introduction to the key aspects of each API.

What is PHP's MySQL Extension?

This is the original extension designed to allow you to develop PHP applications that interact with a MySQL database. The mysql extension provides a procedural interface and is intended for use only with MySQL versions older than 4.1.3. This extension can be used with versions of MySQL 4.1.3 or newer, but not all of the latest MySQL server features will be available.

Nota:

If you are using MySQL versions 4.1.3 or later it is strongly recommended that you use the mysqli extension instead.

The mysql extension source code is located in the PHP extension directory ext/mysql.

For further information on the mysql extension, see MySQL.

What is PHP's mysqli Extension?

The mysqli extension, or as it is sometimes known, the MySQL improved extension, was developed to take advantage of new features found in MySQL systems versions 4.1.3 and newer. The mysqli extension is included with PHP versions 5 and later.

The mysqli extension has a number of benefits, the key enhancements over the mysql extension being:

  • Object-oriented interface

  • Support for Prepared Statements

  • Support for Multiple Statements

  • Support for Transactions

  • Enhanced debugging capabilities

  • Embedded server support

Nota:

If you are using MySQL versions 4.1.3 or later it is strongly recommended that you use this extension.

As well as the object-oriented interface the extension also provides a procedural interface.

The mysqli extension is built using the PHP extension framework, its source code is located in the directory ext/mysqli.

For further information on the mysqli extension, see Mysqli.

What is PDO?

PHP Data Objects, or PDO, is a database abstraction layer specifically for PHP applications. PDO provides a consistent API for your PHP application regardless of the type of database server your application will connect to. In theory, if you are using the PDO API, you could switch the database server you used, from say Firebird to MySQL, and only need to make minor changes to your PHP code.

Other examples of database abstraction layers include JDBC for Java applications and DBI for Perl.

While PDO has its advantages, such as a clean, simple, portable API, its main disadvantage is that it doesn't allow you to use all of the advanced features that are available in the latest versions of MySQL server. For example, PDO does not allow you to use MySQL's support for Multiple Statements.

PDO is implemented using the PHP extension framework, its source code is located in the directory ext/pdo.

For further information on PDO, see the PDO.

What is the PDO MYSQL driver?

The PDO MYSQL driver is not an API as such, at least from the PHP programmer's perspective. In fact the PDO MYSQL driver sits in the layer below PDO itself and provides MySQL-specific functionality. The programmer still calls the PDO API, but PDO uses the PDO MYSQL driver to carry out communication with the MySQL server.

The PDO MYSQL driver is one of several available PDO drivers. Other PDO drivers available include those for the Firebird and PostgreSQL database servers.

The PDO MYSQL driver is implemented using the PHP extension framework. Its source code is located in the directory ext/pdo_mysql. It does not expose an API to the PHP programmer.

For further information on the PDO MYSQL driver, see MySQL (PDO).

What is PHP's MySQL Native Driver?

In order to communicate with the MySQL database server the mysql extension, mysqli and the PDO MYSQL driver each use a low-level library that implements the required protocol. In the past, the only available library was the MySQL Client Library, otherwise known as libmysql.

However, the interface presented by libmysql was not optimized for communication with PHP applications, as libmysql was originally designed with C applications in mind. For this reason the MySQL Native Driver, mysqlnd, was developed as an alternative to libmysql for PHP applications.

The mysql extension, the mysqli extension and the PDO MySQL driver can each be individually configured to use either libmysql or mysqlnd. As mysqlnd is designed specifically to be utilised in the PHP system it has numerous memory and speed enhancements over libmysql. You are strongly encouraged to take advantage of these improvements.

Nota:

The MySQL Native Driver can only be used with MySQL server versions 4.1.3 and later.

The MySQL Native Driver is implemented using the PHP extension framework. The source code is located in ext/mysqlnd. It does not expose an API to the PHP programmer.

Comparison of Features

The following table compares the functionality of the three main methods of connecting to MySQL from PHP:

 | PHP's mysqli Extension | PDO (Using PDO MySQL Driver and MySQL Native Driver) | PHP's MySQL Extension
PHP version introduced | 5.0 | 5.0 | Prior to 3.0
Included with PHP 5.x | yes | yes | Yes
MySQL development status | Active development | Active development as of PHP 5.3 | Maintenance only
Recommended by MySQL for new projects | Yes - preferred option | Yes | No
API supports Charsets | Yes | Yes | No
API supports server-side Prepared Statements | Yes | Yes | No
API supports client-side Prepared Statements | No | Yes | No
API supports Stored Procedures | Yes | Yes | No
API supports Multiple Statements | Yes | Most | No
Supports all MySQL 4.1+ functionality | Yes | Most | No
Introdução
Instalação/Configuração
Mysqli


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Overview
Dependências
Mysqli


Dependências

Para ter esta funções disponíveis, você deverá compilar o PHP com suporte para a extensão mysqli.

Nota:

A extensão mysqli foi criada para funcionar com a versão 4.1.3 ou posterior do MySQL. Para versões anteriores, por favor veja documentação da extensão MySQL.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para instalar a extensão mysqli para o PHP, use a opção de configuração --with-mysqli=mysql_config_path/mysql_config aonde mysql_config_path representa a localização do programa mysql_config que vem com versões do MySQL maiores do que 4.1.

Se você quiser instalar a extensão mysql junto com a extensão mysqli você tem que usar a mesma biblioteca de cliente para previnir quaisquer conflitos.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do MySQLi
Nome | Padrão | Modificável | Changelog
mysqli.max_links | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
mysqli.default_port | "3306" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_socket | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_host | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_user | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_pw | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.reconnect | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.5.

Para maiores detalhes e definições das constantes PHP_INI_* acima, veja o capitulo sobre mudanças de configuração.

Breve descrição das diretivas de configuração.

mysqli.max_links integer

O número máximo de conexões MySQL por processo.

mysqli.default_port string

O número da porta TCP padrão para usar ao conectar ao servidor de banco de dados se não for especificada outra porta. Se não for especificado um padrão, então a porta será obtida da variável de ambiênte MYSQL_TCP_PORT, a entrada mysql-tcp em /etc/services ou a constante em tempo de compilação MYSQL_PORT, nesta ordem. Em Win32 será usada apenas a constante MYSQL_PORT.

mysqli.default_socket string

O nome padrão do socket para usar ao conectar com um servidor de banco de dados local, se não for especificado outro nome de socket.

mysqli.default_host string

O servidor padrão para usar ao conectar com o servidor de banco de dados se não for especificado um servidor. Não se aplica em safe mode.

mysqli.default_user string

O nome de usuário padrão para usar ao conectar com o servidor de banco de dados. Não se aplica em safe mode.

mysqli.default_pw string

A senha padrão para usar ao conectar ao servidor de banco de dados se não for especificado outra senha. Não se aplica em safe mode.

mysqli.reconnect integer

Automatically reconnect if the connection was lost.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

MYSQLI_READ_DEFAULT_GROUP

Lê opções do grupo especificado apartir do arquivo my.cnf ou do arquivo especificado por MYSQLI_READ_DEFAULT_FILE

MYSQLI_READ_DEFAULT_FILE

Lê opções apartir do arquivo indicado ao invés de my.cnf

MYSQLI_OPT_CONNECT_TIMEOUT

Limite de tempo para conectar em segundos

MYSQLI_OPT_LOCAL_INFILE

Ativa o comando LOAD LOCAL INFILE

MYSQLI_INIT_COMMAND

Comando para executar ao conectar no servidor MySQL. Será automaticamente executado novamente ao reconectar.

MYSQLI_CLIENT_SSL

Usar SSL (protocolo criptografado). Esta opção não deve ser definida por programas aplicativos; ela é definida internamente na biblioteca de cliente MySQL

MYSQLI_CLIENT_COMPRESS

Usar o protocolo de compressão

MYSQLI_CLIENT_INTERACTIVE

Permite interactive_timeout segundos (ao invés de wait_timeout segundo) de inatividade antes de fechar a conexão. A variável de sessão do cliente wait_timeout variable será definida com o valor da variável interactive_timeout.

MYSQLI_CLIENT_IGNORE_SPACE

Permite espaçoes após os nomes de função. Torna todos os nomes de função palavras reservadas.

MYSQLI_CLIENT_NO_SCHEMA

Não permite a sintaxe nome_bancodados.nome_tabela.nome_coluna.

MYSQLI_CLIENT_MULTI_QUERIES

Permite múltiplas queries delimitadas por ponto-e-vírgula em uma única chamadaies a mysqli_query().

MYSQLI_STORE_RESULT

Para usar conjuntos de resultados guardados em buffer

MYSQLI_USE_RESULT

Para usar conjuntos de resultados não guardados em buffer

MYSQLI_ASSOC

As colunas são retornadas em uma matriz tendo o nome dos campos como indices da matriz.

MYSQLI_NUM

As colunas são retornadas em uma matriz tendo os índices numerados.

MYSQLI_BOTH

As colunas são retornadas em uma matriz tendo ambos os índices, numérico e o nome do campo como índice associativo.

MYSQLI_NOT_NULL_FLAG

Indica que um campo é definido como NOT NULL

MYSQLI_PRI_KEY_FLAG

O campo é parte do índice primário

MYSQLI_UNIQUE_KEY_FLAG

O campo é parte de um índice único.

MYSQLI_MULTIPLE_KEY_FLAG

O campo é parte de um índice.

MYSQLI_BLOB_FLAG

O campo é definido como BLOB

MYSQLI_UNSIGNED_FLAG

O campo é definido como UNSIGNED

MYSQLI_ZEROFILL_FLAG

O campo é definido como ZEROFILL

MYSQLI_AUTO_INCREMENT_FLAG

O campo é definido como AUTO_INCREMENT

MYSQLI_TIMESTAMP_FLAG

O campo é definido como TIMESTAMP

MYSQLI_SET_FLAG

O campo é definido como SET

MYSQLI_NUM_FLAG

O campo é definido como NUMERIC

MYSQLI_PART_KEY_FLAG

O campo é parte de um índice múltiplo

MYSQLI_GROUP_FLAG

O campo é parte de GROUP BY

MYSQLI_TYPE_DECIMAL

O campo é definido como DECIMAL

MYSQLI_TYPE_NEWDECIMAL

Precisão matemática DECIMAL ou campo NUMERIC (MySQL 5.0.3 e superior)

MYSQLI_TYPE_BIT

O campo é definido como BIT (MySQL 5.0.3 e superior)

MYSQLI_TYPE_TINY

O campo é definido como TINYINT

MYSQLI_TYPE_SHORT

O campo é definido como INT

MYSQLI_TYPE_LONG

O campo é definido como INT

MYSQLI_TYPE_FLOAT

O campo é definido como FLOAT

MYSQLI_TYPE_DOUBLE

O campo é definido como DOUBLE

MYSQLI_TYPE_NULL

O campo é definido como DEFAULT NULL

MYSQLI_TYPE_TIMESTAMP

O campo é definido como TIMESTAMP

MYSQLI_TYPE_LONGLONG

O campo é definido como BIGINT

MYSQLI_TYPE_INT24

O campo é definido como MEDIUMINT

MYSQLI_TYPE_DATE

O campo é definido como DATE

MYSQLI_TYPE_TIME

O campo é definido como TIME

MYSQLI_TYPE_DATETIME

O campo é definido como DATETIME

MYSQLI_TYPE_YEAR

O campo é definido como YEAR

MYSQLI_TYPE_NEWDATE

O campo é definido como DATE

MYSQLI_TYPE_ENUM

O campo é definido como ENUM

MYSQLI_TYPE_SET

O campo é definido como SET

MYSQLI_TYPE_TINY_BLOB

O campo é definido como TINYBLOB

MYSQLI_TYPE_MEDIUM_BLOB

O campo é definido como MEDIUMBLOB

MYSQLI_TYPE_LONG_BLOB

O campo é definido como LONGBLOB

MYSQLI_TYPE_BLOB

O campo é definido como BLOB

MYSQLI_TYPE_VAR_STRING

O campo é definido como VARCHAR

MYSQLI_TYPE_STRING

O campo é definido como CHAR

MYSQLI_TYPE_GEOMETRY

O campo é definido como GEOMETRY

MYSQLI_NEED_DATA

Mais dados disponível para fazer bind com variável

MYSQLI_NO_DATA

Não há mais dados disponível para fazer bind com variável

MYSQLI_DATA_TRUNCATED

Dados foram truncados. Disponível desde o PHP 5.1.0 e MySQL 5.0.5.

Tipos Resource
The MySQLi Extension Function Summary
Mysqli


The MySQLi Extension Function Summary

MySQLi Class
OOP Interface | Procedural Interface | Alias (Do not use) | Description
Properties
$mysqli->affected_rows | mysqli_affected_rows() | N/A | Gets the number of affected rows in a previous MySQL operation
$mysqli->client_info | mysqli_get_client_info() | N/A | Returns the MySQL client version as a string
$mysqli->client_version | mysqli_get_client_version() | N/A | Returns MySQL client version info as an integer
$mysqli->connect_errno | mysqli_connect_errno() | N/A | Returns the error code from last connect call
$mysqli->connect_error | mysqli_connect_error() | N/A | Returns a string description of the last connect error
$mysqli->errno | mysqli_errno() | N/A | Returns the error code for the most recent function call
$mysqli->error | mysqli_error() | N/A | Returns a string description of the last error
$mysqli->field_count | mysqli_field_count() | N/A | Returns the number of columns for the most recent query
$mysqli->host_info | mysqli_get_host_info() | N/A | Returns a string representing the type of connection used
$mysqli->protocol_version | mysqli_get_proto_info() | N/A | Returns the version of the MySQL protocol used
$mysqli->server_info | mysqli_get_server_info() | N/A | Returns the version of the MySQL server
$mysqli->server_version | mysqli_get_server_version() | N/A | Returns the version of the MySQL server as an integer
$mysqli->info | mysqli_info() | N/A | Retrieves information about the most recently executed query
$mysqli->insert_id | mysqli_insert_id() | N/A | Returns the auto generated id used in the last query
$mysqli->sqlstate | mysqli_sqlstate() | N/A | Returns the SQLSTATE error from previous MySQL operation
$mysqli->warning_count | mysqli_warning_count() | N/A | Returns the number of warnings from the last query for the given link
Methods
mysqli->autocommit() | mysqli_autocommit() | N/A | Turns on or off auto-commiting database modifications
mysqli->change_user() | mysqli_change_user() | N/A | Changes the user of the specified database connection
mysqli->character_set_name(), mysqli->client_encoding | mysqli_character_set_name() | mysqli_client_encoding() | Returns the default character set for the database connection
mysqli->close() | mysqli_close() | N/A | Closes a previously opened database connection
mysqli->commit() | mysqli_commit() | N/A | Commits the current transaction
mysqli::__construct() | mysqli_connect() | N/A | Open a new connection to the MySQL server [Note: static (i.e. class) method]
mysqli->debug() | mysqli_debug() | N/A | Performs debugging operations
mysqli->dump_debug_info() | mysqli_dump_debug_info() | N/A | Dump debugging information into the log
mysqli->get_charset() | mysqli_get_charset() | N/A | Returns a character set object
mysqli->get_connection_stats() | mysqli_get_connection_stats() | N/A | Returns client connection statistics. Disponível apenas com mysqlnd.
mysqli->get_client_info() | mysqli_get_client_info() | N/A | Returns the MySQL client version as a string
mysqli->get_client_stats() | mysqli_get_client_stats() | N/A | Returns client per-process statistics. Disponível apenas com mysqlnd.
mysqli->get_cache_stats() | mysqli_get_cache_stats() | N/A | Returns client Zval cache statistics. Disponível apenas com mysqlnd.
mysqli->get_server_info() | mysqli_get_server_info() | N/A | NOT DOCUMENTED
mysqli->get_warnings() | mysqli_get_warnings() | N/A | NOT DOCUMENTED
mysqli::init() | mysqli_init() | N/A | Initializes MySQLi and returns a resource for use with mysqli_real_connect. [Not called on an object, as it returns a $mysqli object.]
mysqli->kill() | mysqli_kill() | N/A | Asks the server to kill a MySQL thread
mysqli->more_results() | mysqli_more_results() | N/A | Check if there are any more query results from a multi query
mysqli->multi_query() | mysqli_multi_query() | N/A | Performs a query on the database
mysqli->next_result() | mysqli_next_result() | N/A | Prepare next result from multi_query
mysqli->options() | mysqli_options() | mysqli_set_opt() | Set options
mysqli->ping() | mysqli_ping() | N/A | Pings a server connection, or tries to reconnect if the connection has gone down
mysqli->prepare() | mysqli_prepare() | N/A | Prepare an SQL statement for execution
mysqli->query() | mysqli_query() | N/A | Performs a query on the database
mysqli->real_connect() | mysqli_real_connect() | N/A | Opens a connection to a mysql server
mysqli->real_escape_string(), mysqli->escape_string() | mysqli_real_escape_string() | mysqli_escape_string() | Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
mysqli->real_query() | mysqli_real_query() | N/A | Execute an SQL query
mysqli->rollback() | mysqli_rollback() | N/A | Rolls back current transaction
mysqli->select_db() | mysqli_select_db() | N/A | Selects the default database for database queries
mysqli->set_charset() | mysqli_set_charset() | N/A | Sets the default client character set
mysqli->set_local_infile_default() | mysqli_set_local_infile_default() | N/A | Unsets user defined handler for load local infile command
mysqli->set_local_infile_handler() | mysqli_set_local_infile_handler() | N/A | Set callback function for LOAD DATA LOCAL INFILE command
mysqli->ssl_set() | mysqli_ssl_set() | N/A | Used for establishing secure connections using SSL
mysqli->stat() | mysqli_stat() | N/A | Gets the current system status
mysqli->stmt_init() | mysqli_stmt_init() | N/A | Initializes a statement and returns an object for use with mysqli_stmt_prepare
mysqli->store_result() | mysqli_store_result() | N/A | Transfers a result set from the last query
mysqli->thread_id() | mysqli_thread_id() | N/A | Returns the thread ID for the current connection
mysqli->thread_safe() | mysqli_thread_safe() | N/A | Returns whether thread safety is given or not
mysqli->use_result() | mysqli_use_result() | N/A | Initiate a result set retrieval
MySQL_STMT
OOP Interface | Procedural Interface | Alias (Do not use) | Description
Properties
$mysqli_stmt->affected_rows | mysqli_stmt_affected_rows() | N/A | Returns the total number of rows changed, deleted, or inserted by the last executed statement
$mysqli_stmt->errno | mysqli_stmt_errno() | N/A | Returns the error code for the most recent statement call
$mysqli_stmt->error | mysqli_stmt_error() | N/A | Returns a string description for last statement error
$mysqli_stmt->field_count | mysqli_stmt_field_count() | N/A | Returns the number of field in the given statement - not documented
$mysqli_stmt->insert_id | mysqli_stmt_insert_id() | N/A | Get the ID generated from the previous INSERT operation
$mysqli_stmt->num_rows | mysqli_stmt_num_rows() | N/A | Return the number of rows in statements result set
$mysqli_stmt->param_count | mysqli_stmt_param_count() | mysqli_param_count() | Returns the number of parameter for the given statement
$mysqli_stmt->sqlstate | mysqli_stmt_sqlstate() | N/A | Returns SQLSTATE error from previous statement operation
Methods
mysqli_stmt->attr_get() | mysqli_stmt_attr_get() | N/A | Used to get the current value of a statement attribute
mysqli_stmt->attr_set() | mysqli_stmt_attr_set() | N/A | Used to modify the behavior of a prepared statement
mysqli_stmt->bind_param() | mysqli_stmt_bind_param() | mysqli_bind_param() | Binds variables to a prepared statement as parameters
mysqli_stmt->bind_result() | mysqli_stmt_bind_result() | mysqli_bind_result() | Binds variables to a prepared statement for result storage
mysqli_stmt->close() | mysqli_stmt_close() | N/A | Closes a prepared statement
mysqli_stmt->data_seek() | mysqli_stmt_data_seek() | N/A | Seeks to an arbitrary row in statement result set
mysqli_stmt->execute() | mysqli_stmt_execute() | mysqli_execute() | Executes a prepared Query
mysqli_stmt->fetch() | mysqli_stmt_fetch() | mysqli_fetch() | Fetch results from a prepared statement into the bound variables
mysqli_stmt->free_result() | mysqli_stmt_free_result() | N/A | Frees stored result memory for the given statement handle
mysqli_stmt->get_result() | mysqli_stmt_get_result() | N/A | Gets a result set from a prepared statement. Disponível apenas com mysqlnd.
mysqli_stmt->get_warnings() | mysqli_stmt_get_warnings() | N/A | NOT DOCUMENTED
$mysqli_stmt->more_results() | mysqli_stmt_more_results() | N/A | NOT DOCUMENTED Disponível apenas com mysqlnd.
$mysqli_stmt->next_result() | mysqli_stmt_next_result() | N/A | NOT DOCUMENTED Disponível apenas com mysqlnd.
mysqli_stmt->num_rows() | mysqli_stmt_num_rows() | N/A | See also property $mysqli_stmt->num_rows
mysqli_stmt->prepare() | mysqli_stmt_prepare() | N/A | Prepare an SQL statement for execution
mysqli_stmt->reset() | mysqli_stmt_reset() | N/A | Resets a prepared statement
mysqli_stmt->result_metadata() | mysqli_stmt_result_metadata() | mysqli_get_metadata() | Returns result set metadata from a prepared statement
mysqli_stmt->send_long_data() | mysqli_stmt_send_long_data() | mysqli_send_long_data() | Send data in blocks
mysqli_stmt->store_result() | mysqli_stmt_store_result() | N/A | Transfers a result set from a prepared statement
MySQLi_RESULT
OOP Interface | Procedural Interface | Alias (Do not use) | Description
Properties
$mysqli_result->current_field | mysqli_field_tell() | N/A | Get current field offset of a result pointer
$mysqli_result->field_count | mysqli_num_fields() | N/A | Get the number of fields in a result
$mysqli_result->lengths | mysqli_fetch_lengths() | N/A | Returns the lengths of the columns of the current row in the result set
$mysqli_result->num_rows | mysqli_num_rows() | N/A | Gets the number of rows in a result
Methods
mysqli_result->data_seek() | mysqli_data_seek() | N/A | Adjusts the result pointer to an arbitary row in the result
mysqli_result->fetch_all() | mysqli_fetch_all() | N/A | Fetches all result rows and returns the result set as an associative array, a numeric array, or both. Disponível apenas com mysqlnd.
mysqli_result->fetch_array() | mysqli_fetch_array() | N/A | Fetch a result row as an associative, a numeric array, or both
mysqli_result->fetch_assoc() | mysqli_fetch_assoc() | N/A | Fetch a result row as an associative array
mysqli_result->fetch_field_direct() | mysqli_fetch_field_direct() | N/A | Fetch meta-data for a single field
mysqli_result->fetch_field() | mysqli_fetch_field() | N/A | Returns the next field in the result set
mysqli_result->fetch_fields() | mysqli_fetch_fields() | N/A | Returns an array of objects representing the fields in a result set
mysqli_result->fetch_object() | mysqli_fetch_object() | N/A | Returns the current row of a result set as an object
mysqli_result->fetch_row() | mysqli_fetch_row() | N/A | Get a result row as an enumerated array
mysqli_result->field_seek() | mysqli_field_seek() | N/A | Set result pointer to a specified field offset
mysqli_result->free(), mysqli_result->close, mysqli_result->free_result | mysqli_free_result() | N/A | Frees the memory associated with a result
MySQL_Driver
OOP Interface | Procedural Interface | Alias (Do not use) | Description
Properties
N/A
Methods
mysqli_driver->embedded_server_end() | mysqli_embedded_server_end() | N/A | NOT DOCUMENTED
mysqli_driver->embedded_server_start() | mysqli_embedded_server_start() | N/A | NOT DOCUMENTED

Nota:

Alias functions are provided for backward compatibility purposes only. Do not use them in new projects.

Constantes pré-definidas
MySQLi
Mysqli


A classe MySQLi

Introdução

Representa uma conexão entre o PHP e um banco de dados MySQL.

Sinopse da classe

MySQLi {
/* Propriedades */
int $affected_rows;
string $client_info;
int $client_version;
int $errno;
string $error;
string $host_info;
string $protocol_version;
string $server_info;
int $server_version;
string $info;
int $insert_id;
string $sqlstate;
int $thread_id;
int $warning_count;
/* Métodos */
int MySQLi::mysqli_affected_rows ( mysqli $link )
bool mysqli::autocommit ( bool $mode )
bool mysqli::change_user ( string $user , string $password , string $database )
string mysqli::character_set_name ( void )
string mysqli_get_client_info ( mysqli $link )
int mysqli_get_client_version ( mysqli $link )
bool mysqli::commit ( void )
bool mysqli::dump_debug_info ( void )
int mysqli_errno ( mysqli $link )
string mysqli_error ( mysqli $link )
object mysqli::get_charset ( void )
string mysqli::get_client_info ( void )
array mysqli_get_client_stats ( void )
int mysqli::get_client_version ( void )
bool mysqli::get_connection_stats ( void )
string mysqli_get_host_info ( mysqli $link )
int mysqli_get_proto_info ( mysqli $link )
string mysqli_get_server_info ( mysqli $link )
int mysqli_get_server_version ( mysqli $link )
mysqli_warning mysqli::get_warnings ( void )
string mysqli_info ( mysqli $link )
mysqli mysqli_init ( void )
int mysqli_insert_id ( mysqli $link )
bool mysqli::kill ( int $processid )
bool mysqli::more_results ( void )
bool mysqli::multi_query ( string $query )
bool mysqli::next_result ( void )
bool mysqli::options ( int $option , mixed $value )
bool mysqli::ping ( void )
public int mysqli::poll ( array &$read , array &$error , array &$reject , int $sec [, int $usec ] )
mysqli_stmt mysqli::prepare ( string $query )
mixed mysqli::query ( string $query [, int $resultmode ] )
bool mysqli::real_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket [, int $flags ]]]]]]] )
string mysqli::escape_string ( string $escapestr )
bool mysqli::real_query ( string $query )
public mysqli_result mysqli::reap_async_query ( void )
bool mysqli::rollback ( void )
bool mysqli::select_db ( string $dbname )
bool mysqli::set_charset ( string $charset )
void mysqli_set_local_infile_default ( mysqli $link )
bool mysqli::set_local_infile_handler ( mysqli $link , callback $read_func )
string mysqli_sqlstate ( mysqli $link )
bool mysqli::ssl_set ( string $key , string $cert , string $ca , string $capath , string $cipher )
string mysqli::stat ( void )
mysqli_stmt mysqli::stmt_init ( void )
mysqli_result mysqli::store_result ( void )
int mysqli_thread_id ( mysqli $link )
bool mysqli_thread_safe ( void )
mysqli_result mysqli::use_result ( void )
int mysqli_warning_count ( mysqli $link )
}

Índice

  • mysqli->affected_rows — Retorna o número de linhas afetadas pela operação MySQL anterior
  • mysqli::autocommit — Ativa ou desativa o salvar automaticamente as modificações no banco de dados
  • mysqli::change_user — Modifica o usuário para a conexão com o banco de dados especificada
  • mysqli::character_set_name — Retorna o conjunto de caracteres padrão para a conexão com o banco de dados
  • mysqli->client_info — Returns the MySQL client version as a string
  • mysqli->client_version — Get MySQL client info
  • mysqli_close — Fecha uma conexão aberta anteriormente com o banco de dados
  • mysqli::commit — Salva a transação atual
  • mysqli_connect_errno — Retorna o código de erro da ultima chamada a função connect
  • mysqli_connect_error — Retorna uma string descrevendo o ultimo erro da função connect
  • mysqli_connect — Abre uma nova conexão com o servidor MySQL
  • mysqli_debug — Realiza operações de debug
  • mysqli::dump_debug_info — Descarrega informação de debug no log
  • mysqli->errno — Retorna o código de erro para a chamada de função mais recente
  • mysqli->error — Retorna uma string descrevendo o ultimo erro
  • mysqli_field_count — Retorna o número de colunas para a consulta mais recente
  • mysqli::get_charset — Returns a character set object
  • mysqli::get_client_info — Retorna a versão do cliente MySQL como uma string
  • mysqli_get_client_stats — Returns client per-process statistics
  • mysqli::get_client_version — Obtém informação sobre o cliente MySQL
  • mysqli::get_connection_stats — Returns statistics about the client connection
  • mysqli_get_host_info — Retorna uma string representando o tipo da conexão usada
  • mysqli->protocol_version — Retorna a versão do protocolo MySQL usada
  • mysqli->server_info — Retorna a versão do servidor MySQL
  • mysqli->server_version — Retorna a versão do servidor MySQL como um integer
  • mysqli::get_warnings — Get result of SHOW WARNINGS
  • mysqli_info — Recupera informação sobre a mais recente query executada
  • mysqli_init — Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()
  • mysqli_insert_id — Retorna o id gerado automaticamente na última consulta
  • mysqli::kill — Solicita ao servidor o encerramento de um thread do MySQL
  • mysqli::more_results — Verifica se há mais algum resultado de uma multi query
  • mysqli::multi_query — Performs a query on the database
  • mysqli::next_result — Prepara o próximo resultado de multi_query
  • mysqli::options — Set options
  • mysqli::ping — Pings a server connection, or tries to reconnect if the connection has gone down
  • mysqli::poll — Poll connections
  • mysqli::prepare — Prepare an SQL statement for execution
  • mysqli::query — Performs a query on the database
  • mysqli::real_connect — Opens a connection to a mysql server
  • mysqli::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
  • mysqli::real_query — Execute an SQL query
  • mysqli::reap_async_query — Get result from async query
  • mysqli::rollback — Rolls back current transaction
  • mysqli::select_db — Selects the default database for database queries
  • mysqli::set_charset — Sets the default client character set
  • mysqli::set_local_infile_default — Unsets user defined handler for load local infile command
  • mysqli::set_local_infile_handler — Set callback function for LOAD DATA LOCAL INFILE command
  • mysqli->sqlstate — Returns the SQLSTATE error from previous MySQL operation
  • mysqli::ssl_set — Used for establishing secure connections using SSL
  • mysqli::stat — Gets the current system status
  • mysqli::stmt_init — Initializes a statement and returns an object for use with mysqli_stmt_prepare
  • mysqli::store_result — Transfers a result set from the last query
  • mysqli->thread_id — Returns the thread ID for the current connection
  • mysqli::thread_safe — Returns whether thread safety is given or not
  • mysqli::use_result — Initiate a result set retrieval
  • mysqli->warning_count — Returns the number of warnings from the last query for the given link
The MySQLi Extension Function Summary
mysqli->affected_rows
Mysqli


Retorna o número de linhas afetadas pela operação MySQL anterior

MySQLi
mysqli::autocommit
MySQLi
PHP Manual

mysqli->affected_rows

mysqli_affected_rows

(PHP 5)

mysqli->affected_rows -- mysqli_affected_rows — Retorna o número de linhas afetadas pela operação MySQL anterior

Descrição

Estilo orientado a objetos (propriedades):

int $affected_rows;

Estilo de procedimento:

int mysqli::mysqli_affected_rows ( mysqli $link )

mysqli_affected_rows() retorna o número de linhas afetadas pela ultima consulta INSERT, UPDATE, REPLACE ou DELETE associada ao parâmetro link indicado. Se a ultima consulta foi invalida, esta função irá retornar -1.

Para comandos SELECT mysqli_affected_rows() funciona como mysqli_num_rows().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Um inteiro maior do que zero indica o número de linhas afetadas ou obtidas. Zero indica que nenhum registro foi atualizado por um UPDATE, não foram encontradas linhas em uma claúsula WHERE na consulta ou que a consulta ainda não foi executada. -1 indica que a consulta retornou com erro.

Nota:

Se o número de linhas afetadas for maior do que o maior valor inteiro possível, o número de linhas afetadas será retornado como uma string.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Insert rows */
$mysqli->query("CREATE TABLE Language SELECT * from CountryLanguage");
printf("Affected rows (INSERT): %d\n", $mysqli->affected_rows);

$mysqli->query("ALTER TABLE Language ADD Status int default 0");

/* update rows */
$mysqli->query("UPDATE Language SET Status=1 WHERE Percentage > 50");
printf("Affected rows (UPDATE): %d\n", $mysqli->affected_rows);

/* delete rows */
$mysqli->query("DELETE FROM Language WHERE Percentage < 50");
printf("Affected rows (DELETE): %d\n", $mysqli->affected_rows);

/* select all rows */
$result = $mysqli->query("SELECT CountryCode FROM Language");
printf("Affected rows (SELECT): %d\n", $mysqli->affected_rows);

$result->close();

/* Delete table Language */
$mysqli->query("DROP TABLE Language");

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

if (!$link) {
    printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error());
    exit();
}

/* Insert rows */
mysqli_query($link, "CREATE TABLE Language SELECT * from CountryLanguage");
printf("Affected rows (INSERT): %d\n", mysqli_affected_rows($link));

mysqli_query($link, "ALTER TABLE Language ADD Status int default 0");

/* update rows */
mysqli_query($link, "UPDATE Language SET Status=1 WHERE Percentage > 50");
printf("Affected rows (UPDATE): %d\n", mysqli_affected_rows($link));

/* delete rows */
mysqli_query($link, "DELETE FROM Language WHERE Percentage < 50");
printf("Affected rows (DELETE): %d\n", mysqli_affected_rows($link));

/* select all rows */
$result = mysqli_query($link, "SELECT CountryCode FROM Language");
printf("Affected rows (SELECT): %d\n", mysqli_affected_rows($link));

mysqli_free_result($result);

/* Delete table Language */
mysqli_query($link, "DROP TABLE Language");

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Affected rows (INSERT): 984
Affected rows (UPDATE): 168
Affected rows (DELETE): 815
Affected rows (SELECT): 169

Veja Também

  • mysqli_num_rows() - Gets the number of rows in a result
  • mysqli_info() - Recupera informação sobre a mais recente query executada

MySQLi
mysqli::autocommit
MySQLi


Ativa ou desativa o salvar automaticamente as modificações no banco de dados

mysqli->affected_rows
mysqli::change_user
MySQLi
PHP Manual

mysqli::autocommit

mysqli_autocommit

(PHP 5)

mysqli::autocommit -- mysqli_autocommit — Ativa ou desativa o salvar automaticamente as modificações no banco de dados

Descrição

Estilo orientado a objeto(metodo)

bool mysqli::autocommit ( bool $mode )

Estilo de procedimento:

bool mysqli_autocommit ( mysqli $link , bool $mode )

mysqli_autocommit() é usado para ativar ou desativar o modo de salvar automaticamente as consultas para a conexão com o banco dedados representado por link. object.

Nota:

Para determinar o estado do salvar automaticamente use o comando SQL 'SELECT @@autocommit'.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

mysqli_autocommit() Não funciona com tabelas de tipos não baseadas em transações (como MyISAM ou ISAM).

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* turn autocommit on */
$mysqli->autocommit(TRUE);

if ($result = $mysqli->query("SELECT @@autocommit")) {
    $row = $result->fetch_row();
    printf("Autocommit is %s\n", $row[0]);
    $result->free();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

if (!$link) {
    printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error());
    exit();
}

/* turn autocommit on */
mysqli_autocommit($link, TRUE);

if ($result = mysqli_query($link, "SELECT @@autocommit")) {
    $row = mysqli_fetch_row($result);
    printf("Autocommit is %s\n", $row[0]);
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Autocommit is 1

Veja Também

  • mysqli_commit() - Salva a transação atual
  • mysqli_rollback() - Rolls back current transaction

mysqli->affected_rows
mysqli::change_user
MySQLi


Modifica o usuário para a conexão com o banco de dados especificada

mysqli::autocommit
mysqli::character_set_name
MySQLi
PHP Manual

mysqli::change_user

mysqli_change_user

(PHP 5)

mysqli::change_user -- mysqli_change_user — Modifica o usuário para a conexão com o banco de dados especificada

Descrição

Estilo orientado a objeto (metodo):

bool mysqli::change_user ( string $user , string $password , string $database )

Estilo de procedimento:

bool mysqli_change_user ( mysqli $link , string $user , string $password , string $database )

mysqli_change_user() é usado para mudar o usuário na conexão com o banco de dados especificado como indicado pelo parâmetro link e definido para o banco de dados atual para o especificado pelo parâmetro database.

Se desejado, o valor NULL pode ser passado no lugar do parâmetro database fazendo com que seja apenas mudado o usuário e não seja escolhido também um banco de dados. Para escolher um banco de dados neste caso, use a função mysqli_select_db().

Para poder mudar usuários de maneira correta, os parâmetors username e password devem ser válidos e este usuário deve ter permissões suficinte para acessar o banco de dados desejado. Se por alguma razão a autenticação falhar, o usuário atualmente autenticado irá permanecer.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Usar este comando fará sempre que a conexão atual com o banco de dados funcione como se fosse completamente uma nova conexão, não importando se a operação foi completada de maneira correta. Este reínicio incluí desfazer quaisquer transações ativas, fechar todas as tabelas temporarias e destravar todas as tabelas travadas.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php

/* connect database test */
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Set Variable a */
$mysqli->query("SET @a:=1");

/* reset all and select a new database */
$mysqli->change_user("my_user", "my_password", "world");

if ($result = $mysqli->query("SELECT DATABASE()")) {
    $row = $result->fetch_row();
    printf("Default database: %s\n", $row[0]);
    $result->close();
}

if ($result = $mysqli->query("SELECT @a")) {
    $row = $result->fetch_row();
    if ($row[0] === NULL) {
        printf("Value of variable a is NULL\n");
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
/* connect database test */
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Set Variable a */
mysqli_query($link, "SET @a:=1");

/* reset all and select a new database */
mysqli_change_user($link, "my_user", "my_password", "world");

if ($result = mysqli_query($link, "SELECT DATABASE()")) {
    $row = mysqli_fetch_row($result);
    printf("Default database: %s\n", $row[0]);
    mysqli_free_result($result);
}

if ($result = mysqli_query($link, "SELECT @a")) {
    $row = mysqli_fetch_row($result);
    if ($row[0] === NULL) {
        printf("Value of variable a is NULL\n");
    }
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Default database: world
Value of variable a is NULL

Veja Também

  • mysqli_connect() - Sinônimo de mysqli::__construct
  • mysqli_select_db() - Selects the default database for database queries

mysqli::autocommit
mysqli::character_set_name
MySQLi


Retorna o conjunto de caracteres padrão para a conexão com o banco de dados

mysqli::change_user
mysqli->client_info
MySQLi
PHP Manual

mysqli::character_set_name

mysqli_character_set_name

(PHP 5)

mysqli::character_set_name -- mysqli_character_set_name — Retorna o conjunto de caracteres padrão para a conexão com o banco de dados

Descrição

Estilo orientado a objeto(metodo)

string mysqli::character_set_name ( void )

Estilo de procedimento:

string mysqli_character_set_name ( mysqli $link )

Retorna o conjunto de caracteres para a conexão com o banco de dados especificada pelo parâmetro link.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

O conjunto de caracteres padrão para a conexão atual

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Print current character set */
$charset = $mysqli->character_set_name();
printf ("Current character set is %s\n", $charset);

$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Print current character set */
$charset = mysqli_character_set_name($link);
printf ("Current character set is %s\n",$charset);

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Current character set is latin1_swedish_ci

Veja Também

  • mysqli_client_encoding() - Apelido para mysqli_character_set_name
  • mysqli_real_escape_string() - Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

mysqli::change_user
mysqli->client_info
MySQLi


Returns the MySQL client version as a string

mysqli::character_set_name
mysqli->client_version
MySQLi
PHP Manual

mysqli->client_info

mysqli_get_client_info

(PHP 5)

mysqli->client_info -- mysqli_get_client_info — Returns the MySQL client version as a string

Descrição

Estilo orientado a objetos

string $client_info;

Estilo de procedimentos

string mysqli::mysqli_get_client_info ( mysqli $link )

Returns a string that represents the MySQL client library version.

Valor Retornado

A string that represents the MySQL client library version

Exemplos

Exemplo #1 mysqli_get_client_info

<?php

/* We don't need a connection to determine
   the version of mysql client library */

printf("Client library version: %s\n", mysqli_get_client_info());
?>

Veja Também

  • mysqli_get_client_version() - Obtém informação sobre o cliente MySQL
  • mysqli_get_server_info() - Retorna a versão do servidor MySQL
  • mysqli_get_server_version() - Retorna a versão do servidor MySQL como um integer

mysqli::character_set_name
mysqli->client_version
MySQLi


Get MySQL client info

mysqli->client_info
mysqli_close
MySQLi
PHP Manual

mysqli->client_version

mysqli_get_client_version

(PHP 5)

mysqli->client_version -- mysqli_get_client_version — Get MySQL client info

Descrição

Estilo orientado a objetos

int $client_version;

Estilo de procedimentos

int mysqli::mysqli_get_client_version ( mysqli $link )

Returns client version number as an integer.

Valor Retornado

A number that represents the MySQL client library version in format: main_version*10000 + minor_version *100 + sub_version. For example, 4.1.0 is returned as 40100.

This is useful to quickly determine the version of the client library to know if some capability exits.

Exemplos

Exemplo #1 mysqli_get_client_version

<?php

/* We don't need a connection to determine
   the version of mysql client library */

printf("Client library version: %d\n", mysqli_get_client_version());
?>

Veja Também

  • mysqli_get_client_info() - Retorna a versão do cliente MySQL como uma string
  • mysqli_get_server_info() - Retorna a versão do servidor MySQL
  • mysqli_get_server_version() - Retorna a versão do servidor MySQL como um integer

mysqli->client_info
mysqli_close
MySQLi


Fecha uma conexão aberta anteriormente com o banco de dados

mysqli->client_version
mysqli::commit
MySQLi
PHP Manual

mysqli_close

mysqli->close

(PHP 5)

mysqli_close -- mysqli->close — Fecha uma conexão aberta anteriormente com o banco de dados

Descrição

Estilo de procedimento:

bool mysqli_close ( object $link )

Estilo orientado a objeto (metodo):

bool mysqli::close ( void )

A função mysqli_close() fecha uma conexão com um banco de dados aberto anteriormente especificado pelo parâmetro link.

Valores de retorno

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja também

mysqli_connect(),
mysqli_init(),
mysqli_real_connect().

mysqli->client_version
mysqli::commit
MySQLi


Salva a transação atual

mysqli_close
mysqli_connect_errno
MySQLi
PHP Manual

mysqli::commit

mysqli_commit

(PHP 5)

mysqli::commit -- mysqli_commit — Salva a transação atual

Descrição

Estilo orientado a objeto (metodo)

bool mysqli::commit ( void )

Estilo de procedimento:

bool mysqli_commit ( mysqli $link )

Grava a transação atual para a conexão com o banco de dados especificada pelo parâmetro link.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE Language LIKE CountryLanguage Type=InnoDB");

/* set autocommit to off */
$mysqli->autocommit(FALSE);

/* Insert some values */
$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");
$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");

/* commit transaction */
$mysqli->commit();

/* drop table */
$mysqli->query("DROP TABLE Language");

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* set autocommit to off */
mysqli_autocommit($link, FALSE);

mysqli_query($link, "CREATE TABLE Language LIKE CountryLanguage Type=InnoDB");

/* Insert some values */
mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");
mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");

/* commit transaction */
mysqli_commit($link);

/* close connection */
mysqli_close($link);
?>

Veja Também

  • mysqli_autocommit() - Ativa ou desativa o salvar automaticamente as modificações no banco de dados
  • mysqli_rollback() - Rolls back current transaction

mysqli_close
mysqli_connect_errno
MySQLi


Retorna o código de erro da ultima chamada a função connect

mysqli::commit
mysqli_connect_error
MySQLi
PHP Manual

mysqli_connect_errno

(PHP 5)

mysqli_connect_errno — Retorna o código de erro da ultima chamada a função connect

Descrição

int mysqli_connect_errno ( void )

A função mysqli_connect_errno() irá retornar o número do código de erro da ultima chamada a função mysqli_connect(). Se não houve erro, esta função irá retornar zero.

Nota:

As mensagens de erro do cliente são listados no arquivo de cabeçalho do MySQL errmsg.h, mensagens de erro do servidor são listadas em mysqld_error.h. Na distribuição da fonte do MySQL você pode encontrar uma lista completa das mensagens de erro e números de erro no arquivo Docs/mysqld_error.txt.

Valores de retorno

O valor do código de erro para a ultima chamada a função mysqli_connect(), se tiver falhado. Zero indica que não houve erro.

Veja também

mysqli_connect(),
mysqli_connect_error(),
mysqli_errno(),
mysqli_error(),
mysqli_sqlstate()

Examplo

Exemplo #1 mysqli_connect_errno sample

<?php

$link = @mysqli_connect("localhost", "nonexisting_user", "");

if (!$link) {
    printf("Can't connect to localhost. Errorcode: %d\n", mysqli_connect_errno());
}
?>

mysqli::commit
mysqli_connect_error
MySQLi


Retorna uma string descrevendo o ultimo erro da função connect

mysqli_connect_errno
mysqli_connect
MySQLi
PHP Manual

mysqli_connect_error

(PHP 5)

mysqli_connect_error — Retorna uma string descrevendo o ultimo erro da função connect

Descrição

string mysqli_connect_error ( void )

A função mysqli_connect_error() é identica a função correspondente mysqli_connect_errno() de todas as maneiras, exceto que ao invés de retornar um número inteiro como código de erro, a função mysqli_connect_error() irá retornar uma string representando o ultimo erro que aconteceu com a ultima chamada a função mysqli_connect(). Se não houve erro, esta função irá retornar uma string vazia.

Valores de retorno

Uma string que descreve o erro. Uma string vazia se não houve erro.

Veja também

mysqli_connect(),
mysqli_connect_errno(),
mysqli_errno(),
mysqli_error(),
mysqli_sqlstate()

Exemplo

Exemplo #1 mysqli_connect_error sample

<?php

$link = @mysqli_connect("localhost", "nonexisting_user", "");

if (!$link) {
    printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error());
}
?>

mysqli_connect_errno
mysqli_connect
MySQLi


Abre uma nova conexão com o servidor MySQL

mysqli_connect_error
mysqli_debug
MySQLi
PHP Manual

mysqli_connect

mysqli()

(PHP 5)

mysqli_connect -- mysqli() — Abre uma nova conexão com o servidor MySQL

Descrição

Estilo de procedimento

object mysqli_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket ]]]]]] )

Estilo orientado a objeto (construtor):

mysqli::__construct ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket ]]]]]] )

A função mysqli_connect() tenta abrir uma conexão com o servidor MySQL que esteja rodando em host o qual pode ser um nome de servidor ou um endereço IP. Passando NULL ou a string "localhost" para este parâmetro, é assumido o servidor local. Quando possível, serão usados pipes ao invés do protocolo TCP/IP. Se for bem sucedida, a função mysqli_connect() irá retornar um objeto representando a conexão com o banco de dados, ou FALSE em caso de falha.

Os parâmetros username e password especificam o nome de usuário e a senha para usar ao conectar com o servidor MySQL. Se a senha não for dada (é passado o valor NULL), the MySQL server will attempt to authenticate the user against those user records which have no password only. This allows one username to be used with different permissions (depending on if a password as provided or not).

Se for dao o parâmetro dbname, irá especificar o banco de dados padrão a ser usado ao se executar consultas.

Os parâmetros port e socket são usados em conjunto com o parâmetro host para maior controle de como conectar com o servidor de banc de dados. O parâmetro port especifica o número da porta a ser usada ao tentar conectar com o servidor MySQL, enquanto o parâmetro socket especifica um socket ou named pipe que deve ser usado.

Nota:

especificar o parâmetro socket não irá determinar explicitamente o tipo de conexão a ser usada ao conectar com o servidor MySQL. Como a conexão é feita com o banco de dados MySQL é determinada pelo parâmetro host.

Valores de retorno

Retorna um objeto que representa a conexão com o servidor MySQL ou FALSE se a conexão falhar.

Exemplo

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

printf("Host information: %s\n", $mysqli->host_info);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

printf("Host information: %s\n", mysqli_get_host_info($link));

/* close connection */
mysqli_close($link);
?>

Os exemplos acimas devem produzir a seguinte saída:

Host information: Localhost via UNIX socket
mysqli_connect_error
mysqli_debug
MySQLi


Realiza operações de debug

mysqli_connect
mysqli::dump_debug_info
MySQLi
PHP Manual

mysqli_debug

(PHP 5)

mysqli_debug — Realiza operações de debug

Descrição

void mysqli_debug ( string $debug )

A função mysqli_debug() é usada para realizar operações de debug usando a biblioteca de debug Fred Fish. O parâmetro debug é uma string representando a operação de debug a realizar.

Nota:

Para usar a função mysqli_debug() você deve compilar a biblioteca de cliente do MySQL para suportar debug.

Valores de retorno

mysqli_debug() não retorna nenhum valor.

Veja também

mysqli_dump_debug_info(), mysqli_report()

Exemplo

Exemplo #1 Gerando um arquivo de Trace

<?php

/* Create a trace file in '/tmp/client.trace' on the local (client) machine: */
mysqli_debug("d:t:0,/tmp/client.trace");

?>

mysqli_connect
mysqli::dump_debug_info
MySQLi


Descarrega informação de debug no log

mysqli_debug
mysqli->errno
MySQLi
PHP Manual

mysqli::dump_debug_info

mysqli_dump_debug_info

(PHP 5)

mysqli::dump_debug_info -- mysqli_dump_debug_info — Descarrega informação de debug no log

Descrição

Estilo orientado a objeto (metodo):

bool mysqli::dump_debug_info ( void )

Estilo de procedimento:

bool mysqli_dump_debug_info ( mysqli $link )

Esta função foi criada para ser executada por um usuário com privilégio SUPER e é usada para descaregar informações no log para o servidor MySQL relacionado a conexão especificada pelo parâmetro link.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mysqli_debug() - Realiza operações de debug

mysqli_debug
mysqli->errno
MySQLi


Retorna o código de erro para a chamada de função mais recente

mysqli::dump_debug_info
mysqli->error
MySQLi
PHP Manual

mysqli->errno

mysqli_errno

(PHP 5)

mysqli->errno -- mysqli_errno — Retorna o código de erro para a chamada de função mais recente

Descrição

Estilo orientado a objeto (propriedade):

int $errno;

Estilo de procedimento:

int mysqli::mysqli_errno ( mysqli $link )

A função mysqli_errno() irá retornar o ultimo código de erro para a função mais recente do MySQLi usada que possa ser bem sucedida ou falhar com respeito a conexão com o banco de dados definido pelo parâmetro link. Se não houveram erros, esta função retorna zero.

Números de erros das mensagens do cliente são listados no arquivo de cabeçalho do MySQL errmsg.h, números de erros das mensagens do servidor são listados em mysqld_error.h. Na distribuição da fonte do MySQL você pode encontrar uma lista completa das mensagens de erros no arquivo Docs/mysqld_error.txt.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Um código de erro para a ultima chamada, se tiver falhado. Zero indica que não houve erro.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if (!$mysqli->query("SET a=1")) {
    printf("Errorcode: %d\n", $mysqli->errno);
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if (!mysqli_query($link, "SET a=1")) {
    printf("Errorcode: %d\n", mysqli_errno($link));
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Errorcode: 1193

Veja Também

  • mysqli_connect_errno() - Retorna o código de erro da ultima chamada a função connect
  • mysqli_connect_error() - Retorna uma string descrevendo o ultimo erro da função connect
  • mysqli_error() - Retorna uma string descrevendo o ultimo erro
  • mysqli_sqlstate() - Returns the SQLSTATE error from previous MySQL operation

mysqli::dump_debug_info
mysqli->error
MySQLi


Retorna uma string descrevendo o ultimo erro

mysqli->errno
mysqli_field_count
MySQLi
PHP Manual

mysqli->error

mysqli_error

(PHP 5)

mysqli->error -- mysqli_error — Retorna uma string descrevendo o ultimo erro

Descrição

Object oriented style (property)

string $error;

Estilo de procedimento:

string mysqli::mysqli_error ( mysqli $link )

A função mysqli_error() é identica a função correspondente mysqli_errno() de todas as maneiras, exceto que ao invés de retornar um código de erro inteiro, a função mysqli_error() irá retornar uma string representando o ultimo erro que aconteceu na conexão com o banco de dados representado pelo parâmetro link. Se não houve erro, esta função irá retornar uma string vazia.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Uma string que descreve o erro. Uma string vazia se não houve erro.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if (!$mysqli->query("SET a=1")) {
    printf("Errormessage: %s\n", $mysqli->error);
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if (!mysqli_query($link, "SET a=1")) {
    printf("Errormessage: %s\n", mysqli_error($link));
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Errormessage: Unknown system variable 'a'

Veja Também

  • mysqli_connect_errno() - Retorna o código de erro da ultima chamada a função connect
  • mysqli_connect_error() - Retorna uma string descrevendo o ultimo erro da função connect
  • mysqli_errno() - Retorna o código de erro para a chamada de função mais recente
  • mysqli_sqlstate() - Returns the SQLSTATE error from previous MySQL operation

mysqli->errno
mysqli_field_count
MySQLi


Retorna o número de colunas para a consulta mais recente

mysqli->error
mysqli::get_charset
MySQLi
PHP Manual

mysqli_field_count

mysqli->field_count

(PHP 5)

mysqli_field_count -- mysqli->field_count — Retorna o número de colunas para a consulta mais recente

Descrição

Estilo de procedimento:

int mysqli_field_count ( object $link )

Estilo orientado a objeto (metodo):

int mysql::field_count ( void )

Retorna o número de colunas para a consulta mais recente na conexão representada pelo parâmetro link. Esta função pode ser útil ao usar a função mysqli_store_result() para determinar se a consulta produziu um conjunto de resultados vazio ou não sem conhecer a natureza da consulta.

Valores de retorno

Um inteiro representando o número de campos no conjunto de resultados

Exemplo

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

$mysqli->query( "DROP TABLE IF EXISTS friends");
$mysqli->query( "CREATE TABLE friends (id int, name varchar(20))");

$mysqli->query( "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

$mysqli->real_query($HTTP_POST_VARS['query']);

if (mysqli_field_count($link)) {
    /* this was a select/show or describe query */
    $result = $mysqli->store_result();

    /* process resultset */
    $row = $result->fetch_row();

    /* free resultset */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

mysqli_query($link, "DROP TABLE IF EXISTS friends");
mysqli_query($link, "CREATE TABLE friends (id int, name varchar(20))");

mysqli_query($link, "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

mysqli_real_query($link, $HTTP_POST_VARS['query']);

if (mysqli_field_count($link)) {
    /* this was a select/show or describe query */
    $result = mysqli_store_result($link);

    /* process resultset */
    $row = mysqli_fetch_row($result);

    /* free resultset */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

mysqli->error
mysqli::get_charset
MySQLi


Returns a character set object

mysqli_field_count
mysqli::get_client_info
MySQLi
PHP Manual

mysqli::get_charset

mysqli_get_charset

(PHP 5 >= 5.1.0)

mysqli::get_charset -- mysqli_get_charset — Returns a character set object

Descrição

Estilo orientado a objetos

object mysqli::get_charset ( void )

Estilo de procedimentos

object mysqli_get_charset ( mysqli $link )

Returns a character set object providing several properties of the current active character set.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

The function returns a character set object with the following properties:

charset

Character set name

collation

Collation name

dir

Directory the charset description was fetched from (?) or "" for built-in character sets

min_length

Minimum character length in bytes

max_length

Maximum character length in bytes

number

Internal character set number

state

Character set status (?)

Exemplos

Exemplo #1 mysqli::get_charset() example

Estilo orientado a objetos

<?php
  $db = mysqli_init();
  $db->real_connect("localhost","root","","test");
  var_dump($db->get_charset());
?>

Estilo de procedimentos

<?php
  $db = mysqli_init();
  mysqli_real_connect($db, "localhost","root","","test");
  var_dump($db->get_charset());
?>

The above examples will output:

object(stdClass)#2 (7) {
  ["charset"]=>
  string(6) "latin1"
  ["collation"]=>
  string(17) "latin1_swedish_ci"
  ["dir"]=>
  string(0) ""
  ["min_length"]=>
  int(1)
  ["max_length"]=>
  int(1)
  ["number"]=>
  int(8)
  ["state"]=>
  int(801)
}

Veja Também

  • mysqli_character_set_name() - Retorna o conjunto de caracteres padrão para a conexão com o banco de dados
  • mysqli_set_charset() - Sets the default client character set

mysqli_field_count
mysqli::get_client_info
MySQLi


Retorna a versão do cliente MySQL como uma string

mysqli::get_charset
mysqli_get_client_stats
MySQLi
PHP Manual

mysqli::get_client_info

mysqli_get_client_info

(PHP 5)

mysqli::get_client_info -- mysqli_get_client_info — Retorna a versão do cliente MySQL como uma string

Descrição

string mysqli::get_client_info ( void )
string mysqli_get_client_info ( void )

A função mysqli_get_client_info() é usada para retornar uma string representando a versão de cliente usada na extensão MySQLi.

Valor Retornado

Uma string que representa a versão da biblioteca de cliente do MySQL.

Exemplos

Exemplo #1 mysqli_get_client_info

<?php

/* We don't need a connection to determine
   the version of mysql client library */

printf("Client library version: %s\n", mysqli_get_client_info());
?>

Veja Também

  • mysqli_get_client_version() - Obtém informação sobre o cliente MySQL
  • mysqli_get_server_info() - Retorna a versão do servidor MySQL
  • mysqli_get_server_version() - Retorna a versão do servidor MySQL como um integer

mysqli::get_charset
mysqli_get_client_stats
MySQLi


Returns client per-process statistics

mysqli::get_client_info
mysqli::get_client_version
MySQLi
PHP Manual

mysqli_get_client_stats

(PHP 5 >= 5.3.0)

mysqli_get_client_stats — Returns client per-process statistics

Descrição

array mysqli_get_client_stats ( void )

Returns client per-process statistics. Disponível apenas com mysqlnd.

Parâmetros

Valor Retornado

Returns an array with client stats if success, FALSE otherwise.

Exemplos

Exemplo #1 A mysqli_get_client_stats() example

<?php
$link = mysqli_connect();
print_r(mysqli_get_client_stats());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [bytes_sent] => 43
    [bytes_received] => 80
    [packets_sent] => 1
    [packets_received] => 2
    [protocol_overhead_in] => 8
    [protocol_overhead_out] => 4
    [bytes_received_ok_packet] => 11
    [bytes_received_eof_packet] => 0
    [bytes_received_rset_header_packet] => 0
    [bytes_received_rset_field_meta_packet] => 0
    [bytes_received_rset_row_packet] => 0
    [bytes_received_prepare_response_packet] => 0
    [bytes_received_change_user_packet] => 0
    [packets_sent_command] => 0
    [packets_received_ok] => 1
    [packets_received_eof] => 0
    [packets_received_rset_header] => 0
    [packets_received_rset_field_meta] => 0
    [packets_received_rset_row] => 0
    [packets_received_prepare_response] => 0
    [packets_received_change_user] => 0
    [result_set_queries] => 0
    [non_result_set_queries] => 0
    [no_index_used] => 0
    [bad_index_used] => 0
    [slow_queries] => 0
    [buffered_sets] => 0
    [unbuffered_sets] => 0
    [ps_buffered_sets] => 0
    [ps_unbuffered_sets] => 0
    [flushed_normal_sets] => 0
    [flushed_ps_sets] => 0
    [ps_prepared_never_executed] => 0
    [ps_prepared_once_executed] => 0
    [rows_fetched_from_server_normal] => 0
    [rows_fetched_from_server_ps] => 0
    [rows_buffered_from_client_normal] => 0
    [rows_buffered_from_client_ps] => 0
    [rows_fetched_from_client_normal_buffered] => 0
    [rows_fetched_from_client_normal_unbuffered] => 0
    [rows_fetched_from_client_ps_buffered] => 0
    [rows_fetched_from_client_ps_unbuffered] => 0
    [rows_fetched_from_client_ps_cursor] => 0
    [rows_skipped_normal] => 0
    [rows_skipped_ps] => 0
    [copy_on_write_saved] => 0
    [copy_on_write_performed] => 0
    [command_buffer_too_small] => 0
    [connect_success] => 1
    [connect_failure] => 0
    [connection_reused] => 0
    [reconnect] => 0
    [pconnect_success] => 0
    [active_connections] => 1
    [active_persistent_connections] => 0
    [explicit_close] => 0
    [implicit_close] => 0
    [disconnect_close] => 0
    [in_middle_of_command_close] => 0
    [explicit_free_result] => 0
    [implicit_free_result] => 0
    [explicit_stmt_close] => 0
    [implicit_stmt_close] => 0
    [mem_emalloc_count] => 0
    [mem_emalloc_ammount] => 0
    [mem_ecalloc_count] => 0
    [mem_ecalloc_ammount] => 0
    [mem_erealloc_count] => 0
    [mem_erealloc_ammount] => 0
    [mem_efree_count] => 0
    [mem_malloc_count] => 0
    [mem_malloc_ammount] => 0
    [mem_calloc_count] => 0
    [mem_calloc_ammount] => 0
    [mem_realloc_count] => 0
    [mem_realloc_ammount] => 0
    [mem_free_count] => 0
    [proto_text_fetched_null] => 0
    [proto_text_fetched_bit] => 0
    [proto_text_fetched_tinyint] => 0
    [proto_text_fetched_short] => 0
    [proto_text_fetched_int24] => 0
    [proto_text_fetched_int] => 0
    [proto_text_fetched_bigint] => 0
    [proto_text_fetched_decimal] => 0
    [proto_text_fetched_float] => 0
    [proto_text_fetched_double] => 0
    [proto_text_fetched_date] => 0
    [proto_text_fetched_year] => 0
    [proto_text_fetched_time] => 0
    [proto_text_fetched_datetime] => 0
    [proto_text_fetched_timestamp] => 0
    [proto_text_fetched_string] => 0
    [proto_text_fetched_blob] => 0
    [proto_text_fetched_enum] => 0
    [proto_text_fetched_set] => 0
    [proto_text_fetched_geometry] => 0
    [proto_text_fetched_other] => 0
    [proto_binary_fetched_null] => 0
    [proto_binary_fetched_bit] => 0
    [proto_binary_fetched_tinyint] => 0
    [proto_binary_fetched_short] => 0
    [proto_binary_fetched_int24] => 0
    [proto_binary_fetched_int] => 0
    [proto_binary_fetched_bigint] => 0
    [proto_binary_fetched_decimal] => 0
    [proto_binary_fetched_float] => 0
    [proto_binary_fetched_double] => 0
    [proto_binary_fetched_date] => 0
    [proto_binary_fetched_year] => 0
    [proto_binary_fetched_time] => 0
    [proto_binary_fetched_datetime] => 0
    [proto_binary_fetched_timestamp] => 0
    [proto_binary_fetched_string] => 0
    [proto_binary_fetched_blob] => 0
    [proto_binary_fetched_enum] => 0
    [proto_binary_fetched_set] => 0
    [proto_binary_fetched_geometry] => 0
    [proto_binary_fetched_other] => 0
)

Veja Também

  • Stats description

mysqli::get_client_info
mysqli::get_client_version
MySQLi


Obtém informação sobre o cliente MySQL

mysqli_get_client_stats
mysqli::get_connection_stats
MySQLi
PHP Manual

mysqli::get_client_version

mysqli_get_client_version

(PHP 5)

mysqli::get_client_version -- mysqli_get_client_version — Obtém informação sobre o cliente MySQL

Descrição

int mysqli::get_client_version ( void )
int mysqli_get_client_version ( void )

Retorna a versão do cliente como um inteiro.

Valor Retornado

Um número que representa a versão da biblioteca de cliente MySQL no formato: versão_principal*10000 + versão_menor *100 + sub_versão. Por exemplo, 4.1.0 é retornado como 40100.

Isto é útil para determinar rapidamente a versão da biblioteca de cliente para saber se alguma funcionalidade existe.

Exemplos

Exemplo #1 mysqli_get_client_version

<?php

/* We don't need a connection to determine
   the version of mysql client library */

printf("Client library version: %d\n", mysqli_get_client_version());
?>

Veja Também

  • mysqli_get_client_info() - Retorna a versão do cliente MySQL como uma string
  • mysqli_get_server_info() - Retorna a versão do servidor MySQL
  • mysqli_get_server_version() - Retorna a versão do servidor MySQL como um integer

mysqli_get_client_stats
mysqli::get_connection_stats
MySQLi


Returns statistics about the client connection

mysqli::get_client_version
mysqli_get_host_info
MySQLi
PHP Manual

mysqli::get_connection_stats

mysqli_get_connection_stats

(PHP 5 >= 5.3.0)

mysqli::get_connection_stats -- mysqli_get_connection_stats — Returns statistics about the client connection

Descrição

Estilo orientado a objetos

bool mysqli::get_connection_stats ( void )

Estilo de procedimentos

array mysqli_get_connection_stats ( mysqli $link )

Returns statistics about the client connection. Disponível apenas com mysqlnd.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns an array with connection stats if success, FALSE otherwise.

Exemplos

Exemplo #1 A mysqli_get_connection_stats() example

<?php
$link = mysqli_connect();
print_r(mysqli_get_connection_stats($link));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [bytes_sent] => 43
    [bytes_received] => 80
    [packets_sent] => 1
    [packets_received] => 2
    [protocol_overhead_in] => 8
    [protocol_overhead_out] => 4
    [bytes_received_ok_packet] => 11
    [bytes_received_eof_packet] => 0
    [bytes_received_rset_header_packet] => 0
    [bytes_received_rset_field_meta_packet] => 0
    [bytes_received_rset_row_packet] => 0
    [bytes_received_prepare_response_packet] => 0
    [bytes_received_change_user_packet] => 0
    [packets_sent_command] => 0
    [packets_received_ok] => 1
    [packets_received_eof] => 0
    [packets_received_rset_header] => 0
    [packets_received_rset_field_meta] => 0
    [packets_received_rset_row] => 0
    [packets_received_prepare_response] => 0
    [packets_received_change_user] => 0
    [result_set_queries] => 0
    [non_result_set_queries] => 0
    [no_index_used] => 0
    [bad_index_used] => 0
    [slow_queries] => 0
    [buffered_sets] => 0
    [unbuffered_sets] => 0
    [ps_buffered_sets] => 0
    [ps_unbuffered_sets] => 0
    [flushed_normal_sets] => 0
    [flushed_ps_sets] => 0
    [ps_prepared_never_executed] => 0
    [ps_prepared_once_executed] => 0
    [rows_fetched_from_server_normal] => 0
    [rows_fetched_from_server_ps] => 0
    [rows_buffered_from_client_normal] => 0
    [rows_buffered_from_client_ps] => 0
    [rows_fetched_from_client_normal_buffered] => 0
    [rows_fetched_from_client_normal_unbuffered] => 0
    [rows_fetched_from_client_ps_buffered] => 0
    [rows_fetched_from_client_ps_unbuffered] => 0
    [rows_fetched_from_client_ps_cursor] => 0
    [rows_skipped_normal] => 0
    [rows_skipped_ps] => 0
    [copy_on_write_saved] => 0
    [copy_on_write_performed] => 0
    [command_buffer_too_small] => 0
    [connect_success] => 1
    [connect_failure] => 0
    [connection_reused] => 0
    [reconnect] => 0
    [pconnect_success] => 0
    [active_connections] => 1
    [active_persistent_connections] => 0
    [explicit_close] => 0
    [implicit_close] => 0
    [disconnect_close] => 0
    [in_middle_of_command_close] => 0
    [explicit_free_result] => 0
    [implicit_free_result] => 0
    [explicit_stmt_close] => 0
    [implicit_stmt_close] => 0
    [mem_emalloc_count] => 0
    [mem_emalloc_ammount] => 0
    [mem_ecalloc_count] => 0
    [mem_ecalloc_ammount] => 0
    [mem_erealloc_count] => 0
    [mem_erealloc_ammount] => 0
    [mem_efree_count] => 0
    [mem_malloc_count] => 0
    [mem_malloc_ammount] => 0
    [mem_calloc_count] => 0
    [mem_calloc_ammount] => 0
    [mem_realloc_count] => 0
    [mem_realloc_ammount] => 0
    [mem_free_count] => 0
    [proto_text_fetched_null] => 0
    [proto_text_fetched_bit] => 0
    [proto_text_fetched_tinyint] => 0
    [proto_text_fetched_short] => 0
    [proto_text_fetched_int24] => 0
    [proto_text_fetched_int] => 0
    [proto_text_fetched_bigint] => 0
    [proto_text_fetched_decimal] => 0
    [proto_text_fetched_float] => 0
    [proto_text_fetched_double] => 0
    [proto_text_fetched_date] => 0
    [proto_text_fetched_year] => 0
    [proto_text_fetched_time] => 0
    [proto_text_fetched_datetime] => 0
    [proto_text_fetched_timestamp] => 0
    [proto_text_fetched_string] => 0
    [proto_text_fetched_blob] => 0
    [proto_text_fetched_enum] => 0
    [proto_text_fetched_set] => 0
    [proto_text_fetched_geometry] => 0
    [proto_text_fetched_other] => 0
    [proto_binary_fetched_null] => 0
    [proto_binary_fetched_bit] => 0
    [proto_binary_fetched_tinyint] => 0
    [proto_binary_fetched_short] => 0
    [proto_binary_fetched_int24] => 0
    [proto_binary_fetched_int] => 0
    [proto_binary_fetched_bigint] => 0
    [proto_binary_fetched_decimal] => 0
    [proto_binary_fetched_float] => 0
    [proto_binary_fetched_double] => 0
    [proto_binary_fetched_date] => 0
    [proto_binary_fetched_year] => 0
    [proto_binary_fetched_time] => 0
    [proto_binary_fetched_datetime] => 0
    [proto_binary_fetched_timestamp] => 0
    [proto_binary_fetched_string] => 0
    [proto_binary_fetched_blob] => 0
    [proto_binary_fetched_enum] => 0
    [proto_binary_fetched_set] => 0
    [proto_binary_fetched_geometry] => 0
    [proto_binary_fetched_other] => 0
)

Veja Também

  • Stats description

mysqli::get_client_version
mysqli_get_host_info
MySQLi


Retorna uma string representando o tipo da conexão usada

mysqli::get_connection_stats
mysqli->protocol_version
MySQLi
PHP Manual

mysqli_get_host_info

mysqli->host_info

(PHP 5)

mysqli_get_host_info -- mysqli->host_info — Retorna uma string representando o tipo da conexão usada

Descrição

Estilo de procedimento:

string mysqli_get_host_info ( mysqli $link )

Estilo orientado a objeto (propriedade):

string $host_info;

A função mysqli_get_host_info() retorna uma string descrevendo a conexão representada pelo parâmetro link que esta sendo usada (incluindo o nome do servidor).

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Uma string de caracteres representando o nome do servidor e o tipo de conexão.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print host information */
printf("Host info: %s\n", $mysqli->host_info);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print host information */
printf("Host info: %s\n", mysqli_get_host_info($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Host info: Localhost via UNIX socket

Veja Também

  • mysqli_get_proto_info() - Retorna a versão do protocolo MySQL usada

mysqli::get_connection_stats
mysqli->protocol_version
MySQLi


Retorna a versão do protocolo MySQL usada

mysqli_get_host_info
mysqli->server_info
MySQLi
PHP Manual

mysqli->protocol_version

mysqli_get_proto_info

(PHP 5)

mysqli->protocol_version -- mysqli_get_proto_info — Retorna a versão do protocolo MySQL usada

Descrição

Estilo orientado a objeto (propriedade):

string $protocol_version;

Estilo de procedimento:

int mysqli::mysqli_get_proto_info ( mysqli $link )

Retorna um integer representando a versão do protocolo MySQL usada pela conexão representada pelo parâmetro link.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna um integer representando a versão do protocolo.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print protocol version */
printf("Protocol version: %d\n", $mysqli->protocol_version);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print protocol version */
printf("Protocol version: %d\n", mysqli_get_proto_info($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Protocol version: 10

Veja Também

  • mysqli_get_host_info() - Retorna uma string representando o tipo da conexão usada

mysqli_get_host_info
mysqli->server_info
MySQLi


Retorna a versão do servidor MySQL

mysqli->protocol_version
mysqli->server_version
MySQLi
PHP Manual

mysqli->server_info

mysqli_get_server_info

(PHP 5)

mysqli->server_info -- mysqli_get_server_info — Retorna a versão do servidor MySQL

Descrição

Estilo orientado a objeto (propriedade):

string $server_info;

Estilo de procedimento:

string mysqli::mysqli_get_server_info ( mysqli $link )

Retorna uma string representando a versão do servidor MySQL que a extensão MySQLi esta conectada (representado pelo parâmetro link).

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Ums string de caracteres representando a versão do servidor.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print server version */
printf("Server version: %s\n", $mysqli->server_info);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print server version */
printf("Server version: %s\n", mysqli_get_server_info($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Server version: 4.1.2-alpha-debug

Veja Também

  • mysqli_get_client_info() - Retorna a versão do cliente MySQL como uma string
  • mysqli_get_client_version() - Obtém informação sobre o cliente MySQL
  • mysqli_get_server_version() - Retorna a versão do servidor MySQL como um integer

mysqli->protocol_version
mysqli->server_version
MySQLi


Retorna a versão do servidor MySQL como um integer

mysqli->server_info
mysqli::get_warnings
MySQLi
PHP Manual

mysqli->server_version

mysqli_get_server_version

(PHP 5)

mysqli->server_version -- mysqli_get_server_version — Retorna a versão do servidor MySQL como um integer

Descrição

Estilo orientado a objeto (propriedade):

int $server_version;

Estilo de procedimento:

int mysqli::mysqli_get_server_version ( mysqli $link )

A função mysqli_get_server_version() retorna a versão do servidor a qual se esta conectado (representado pelo parâmetro link parameter) como um integer.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Um integer representando a versão do servidor.

A forma deste número de versão é versão_principal * 10000 + versão_menor * 100 + sub_versão (ex. a versão 4.1.0 é 40100).

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print server version */
printf("Server version: %d\n", $mysqli->server_version);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* print server version */
printf("Server version: %d\n", mysqli_get_server_version($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Server version: 40102

Veja Também

  • mysqli_get_client_info() - Retorna a versão do cliente MySQL como uma string
  • mysqli_get_client_version() - Obtém informação sobre o cliente MySQL
  • mysqli_get_server_info() - Retorna a versão do servidor MySQL

mysqli->server_info
mysqli::get_warnings
MySQLi


Get result of SHOW WARNINGS

mysqli->server_version
mysqli_info
MySQLi
PHP Manual

mysqli::get_warnings

mysqli_get_warnings

(PHP 5 >= 5.1.0)

mysqli::get_warnings -- mysqli_get_warnings — Get result of SHOW WARNINGS

Descrição

Estilo orientado a objetos

mysqli_warning mysqli::get_warnings ( void )

Estilo de procedimentos

mysqli_warning mysqli_get_warnings ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mysqli->server_version
mysqli_info
MySQLi


Recupera informação sobre a mais recente query executada

mysqli::get_warnings
mysqli_init
MySQLi
PHP Manual

mysqli_info

mysqli->info

(PHP 5)

mysqli_info -- mysqli->info — Recupera informação sobre a mais recente query executada

Descrição

Modo procedural:

string mysqli_info ( mysqli $link )

Modo orientado a objeto (propriedade)

string $info;

A função mysqli_info() retorna uma string contendo informação sobre a última query executada. Normalmente a informação é como visto abaixo:

Possíveis valores de retorno da mysqli_info
Tipo de query | Exemplo de resultado
INSERT INTO...SELECT... | Records: 100 Duplicates: 0 Warnings: 0
INSERT INTO...VALUES (...),(...),(...) | Records: 3 Duplicates: 0 Warnings: 0
LOAD DATA INFILE ... | Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
ALTER TABLE ... | Records: 3 Duplicates: 0 Warnings: 0
UPDATE ... | Rows matched: 40 Changed: 40 Warnings: 0

Nota:

Queries que não dão um dos formatos acima não são suportadas. Nesta situação, mysqli_info() irá retornar uma string vazia.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Uma string representando informação adicional sobre a mais recente query executada.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO .. SELECT */
$mysqli->query("INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", $mysqli->info);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO .. SELECT */
mysqli_query($link, "INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", mysqli_info($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Records: 150  Duplicates: 0  Warnings: 0

Veja Também

  • mysqli_affected_rows() - Retorna o número de linhas afetadas pela operação MySQL anterior
  • mysqli_warning_count() - Returns the number of warnings from the last query for the given link
  • mysqli_num_rows() - Gets the number of rows in a result

mysqli::get_warnings
mysqli_init
MySQLi


Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()

mysqli_info
mysqli_insert_id
MySQLi
PHP Manual

mysqli_init

(PHP 5)

mysqli_init — Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()

Descrição

Modo procedural:

mysqli mysqli_init ( void )

Modo orientado a objeto (método):

mysqli mysqli::init ( void )

Aloca ou inicializa um objeto MYSQL destinado para mysqli_options() e mysqli_real_connect().

Nota:

Chamadas subseqüentes para alguma função mysqli (exceto mysqli_options()) irá falhar se mysqli_real_connect() não for chamado.

Valor Retornado

Retorna um objeto.

Veja Também

  • mysqli_options() - Set options
  • mysqli_close() - Fecha uma conexão aberta anteriormente com o banco de dados
  • mysqli_real_connect() - Opens a connection to a mysql server
  • mysqli_connect() - Sinônimo de mysqli::__construct

mysqli_info
mysqli_insert_id
MySQLi


Retorna o id gerado automaticamente na última consulta

mysqli_init
mysqli::kill
MySQLi
PHP Manual

mysqli_insert_id

mysqli->insert_id

(PHP 5)

mysqli_insert_id -- mysqli->insert_id — Retorna o id gerado automaticamente na última consulta

Descrição

Modo procedural:

int mysqli_insert_id ( mysqli $link )

Modo orientado a objeto (propriedade):

int $insert_id;

A função mysqli_insert_id() retorna o ID gerado pela consulta em uma tabela com uma coluna com o atributo AUTO_INCREMENT. Se a última consulta não foi um INSERT ou UPDATE ou se a tabela modificada não tem uma coluna com o atributo AUTO_INCREMENT, esta função irá retornar zero.

Nota:

Executar uma consulta INSERT ou UPDATE usando a função LAST_INSERT_ID() irá também modificar o valor retornado pela função mysqli_insert_id().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

O valor do campo AUTO_INCREMENT que foi atualizado pela consulta anterior. Retorna zero se não houve uma consulta anterior na conexão ou se a consulta não atualizou um valor AUTO_INCREMENT.

Nota:

Se o número for maior do que o maior valor inteiro possível, mysqli_insert_id() irá retornar uma string.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCity LIKE City");

$query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)";
$mysqli->query($query);

printf ("New Record has id %d.\n", $mysqli->insert_id);

/* drop table */
$mysqli->query("DROP TABLE myCity");

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCity LIKE City");

$query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)";
mysqli_query($link, $query);

printf ("New Record has id %d.\n", mysqli_insert_id($link));

/* drop table */
mysqli_query($link, "DROP TABLE myCity");

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

New Record has id 1.
mysqli_init
mysqli::kill
MySQLi


Solicita ao servidor o encerramento de um thread do MySQL

mysqli_insert_id
mysqli::more_results
MySQLi
PHP Manual

mysqli::kill

mysqli_kill

(PHP 5)

mysqli::kill -- mysqli_kill — Solicita ao servidor o encerramento de um thread do MySQL

Descrição

Modo orientado a objeto (método)

bool mysqli::kill ( int $processid )

Modo procedural:

bool mysqli_kill ( mysqli $link , int $processid )

Esta função é usado para solicitar ao servidor o encerramento de uma específica thread do MySQL pelo parâmetro processid. Este valor precisa ser recuperado chamando a função mysqli_thread_id().

Para encerrar a execução de uma query, você deve usar o comando SQL KILL QUERY processid.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id = $mysqli->thread_id;

/* Kill connection */
$mysqli->kill($thread_id);

/* This should produce an error */
if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
    printf("Error: %s\n", $mysqli->error);
    exit;
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id = mysqli_thread_id($link);

/* Kill connection */
mysqli_kill($link, $thread_id);

/* This should produce an error */
if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) {
    printf("Error: %s\n", mysqli_error($link));
    exit;
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Error: MySQL server has gone away

Veja Também

  • mysqli_thread_id() - Returns the thread ID for the current connection

mysqli_insert_id
mysqli::more_results
MySQLi


Verifica se há mais algum resultado de uma multi query

mysqli::kill
mysqli::multi_query
MySQLi
PHP Manual

mysqli::more_results

mysqli_more_results

(PHP 5)

mysqli::more_results -- mysqli_more_results — Verifica se há mais algum resultado de uma multi query

Descrição

bool mysqli::more_results ( void )
bool mysqli_more_results ( mysqli $link )

Indica se um ou mais conjunto de resultados estão disponíveis de uma chamada anterior a mysqli_multi_query().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Veja mysqli_multi_query().

Veja Também

  • mysqli_multi_query() - Performs a query on the database
  • mysqli_next_result() - Prepara o próximo resultado de multi_query
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_use_result() - Initiate a result set retrieval

mysqli::kill
mysqli::multi_query
MySQLi


Performs a query on the database

mysqli::more_results
mysqli::next_result
MySQLi
PHP Manual

mysqli::multi_query

mysqli_multi_query

(PHP 5)

mysqli::multi_query -- mysqli_multi_query — Performs a query on the database

Descrição

Modo orientado a objeto (método):

bool mysqli::multi_query ( string $query )

Modo procedural:

bool mysqli_multi_query ( mysqli $link , string $query )

Executa um ou múltiplas queries que são concatenadas com ponto-e-vírgula.

Para recuperar o conjunto de resultado da primeira query, você pode usar mysqli_use_result() ou mysqli_store_result(). Todos os resultados de queries subseqüentes podem ser processados usando mysqli_more_results() e mysqli_next_result().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

query

A query, como uma string.

Valor Retornado

Retorna FALSE se o primeiro comando falhar. Para recuperar erros subseqüentes de outros comandos, você terá que chamar mysqli_next_result() primeiro.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if ($mysqli->multi_query($query)) {
    do {
        /* store first result set */
        if ($result = $mysqli->store_result()) {
            while ($row = $result->fetch_row()) {
                printf("%s\n", $row[0]);
            }
            $result->free();
        }
        /* print divider */
        if ($mysqli->more_results()) {
            printf("-----------------\n");
        }
    } while ($mysqli->next_result());
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if (mysqli_multi_query($link, $query)) {
    do {
        /* store first result set */
        if ($result = mysqli_store_result($link)) {
            while ($row = mysqli_fetch_row($result)) {
                printf("%s\n", $row[0]);
            }
            mysqli_free_result($result);
        }
        /* print divider */
        if (mysqli_more_results($link)) {
            printf("-----------------\n");
        }
    } while (mysqli_next_result($link));
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir algo similar a:

my_user@localhost
-----------------
Amersfoort
Maastricht
Dordrecht
Leiden
Haarlemmermeer

Veja Também

  • mysqli_use_result() - Initiate a result set retrieval
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_next_result() - Prepara o próximo resultado de multi_query
  • mysqli_more_results() - Verifica se há mais algum resultado de uma multi query

mysqli::more_results
mysqli::next_result
MySQLi


Prepara o próximo resultado de multi_query

mysqli::multi_query
mysqli::options
MySQLi
PHP Manual

mysqli::next_result

mysqli_next_result

(PHP 5)

mysqli::next_result -- mysqli_next_result — Prepara o próximo resultado de multi_query

Descrição

bool mysqli::next_result ( void )
bool mysqli_next_result ( mysqli $link )

Prepara o próximo conjunto de resultado de uma chamada anterior para
mysqli_multi_query() que pode ser recuperado por
mysqli_store_result() ou
mysqli_use_result().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Veja mysqli_multi_query().

Veja Também

  • mysqli_multi_query() - Performs a query on the database
  • mysqli_more_results() - Verifica se há mais algum resultado de uma multi query
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_use_result() - Initiate a result set retrieval

mysqli::multi_query
mysqli::options
MySQLi


Set options

mysqli::next_result
mysqli::ping
MySQLi
PHP Manual

mysqli::options

mysqli_options

(PHP 5)

mysqli::options -- mysqli_options — Set options

Descrição

Estilo orientado a objetos

bool mysqli::options ( int $option , mixed $value )

Estilo de procedimentos

bool mysqli_options ( mysqli $link , int $option , mixed $value )

Used to set extra connect options and affect behavior for a connection.

This function may be called multiple times to set several options.

mysqli_options() should be called after
mysqli_init() and before
mysqli_real_connect().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

option

The option that you want to set. It can be one of the following values:

Valid options
Name | Description
MYSQLI_OPT_CONNECT_TIMEOUT | connection timeout in seconds (supported on Windows with TCP/IP since PHP 5.3.1)
MYSQLI_OPT_LOCAL_INFILE | enable/disable use of LOAD LOCAL INFILE
MYSQLI_INIT_COMMAND | command to execute after when connecting to MySQL server
MYSQLI_READ_DEFAULT_FILE | Read options from named option file instead of my.cnf
MYSQLI_READ_DEFAULT_GROUP | Read options from the named group from my.cnf or the file specified with MYSQL_READ_DEFAULT_FILE.

value

The value for the option.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

See mysqli_real_connect().

Notas

Nota:

MySQLnd always assumes the server default charset. This charset is sent during connection hand-shake/authentication, which mysqlnd will use.

Libmysql uses the default charset set in the my.cnf or by an explicit call to mysqli_options() prior to calling mysqli_real_connect(), but after mysqli_init().

Veja Também

  • mysqli_init() - Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()
  • mysqli_real_connect() - Opens a connection to a mysql server

mysqli::next_result
mysqli::ping
MySQLi


Pings a server connection, or tries to reconnect if the connection has gone down

mysqli::options
mysqli::poll
MySQLi
PHP Manual

mysqli::ping

mysqli_ping

(PHP 5)

mysqli::ping -- mysqli_ping — Pings a server connection, or tries to reconnect if the connection has gone down

Descrição

Estilo orientado a objetos

bool mysqli::ping ( void )

Estilo de procedimentos

bool mysqli_ping ( mysqli $link )

Checks whether the connection to the server is working. If it has gone down, and global option mysqli.reconnect is enabled an automatic reconnection is attempted.

This function can be used by clients that remain idle for a long while, to check whether the server has closed the connection and reconnect if necessary.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mysqli::ping() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* check if server is alive */
if ($mysqli->ping()) {
    printf ("Our connection is ok!\n");
} else {
    printf ("Error: %s\n", $mysqli->error);
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* check if server is alive */
if (mysqli_ping($link)) {
    printf ("Our connection is ok!\n");
} else {
    printf ("Error: %s\n", mysqli_error($link));
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Our connection is ok!
mysqli::options
mysqli::poll
MySQLi


Poll connections

mysqli::ping
mysqli::prepare
MySQLi
PHP Manual

mysqli::poll

mysqli_poll

(PHP 5 >= 5.3.0)

mysqli::poll -- mysqli_poll — Poll connections

Descrição

Estilo orientado a objetos

public int mysqli::poll ( array &$read , array &$error , array &$reject , int $sec [, int $usec ] )

Estilo de procedimentos

int mysqli_poll ( array &$read , array &$error , array &$reject , int $sec [, int $usec ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Poll connections. Disponível apenas com mysqlnd.

Parâmetros

read

error

reject

sec

Number of seconds to wait, must be non-negative.

usec

Number of microseconds to wait, must be non-negative.

Valor Retornado

Returns number of ready connections in success, FALSE otherwise.

Exemplos

Exemplo #1 A mysqli_poll() example

<?php
$link1 = mysqli_connect();
$link1->query("SELECT 'test'", MYSQLI_ASYNC);
$all_links = array($link1);
$processed = 0;
do {
    $links = $errors = $reject = array();
    foreach ($all_links as $link) {
        $links[] = $errors[] = $reject[] = $link;
    }
    if (!mysqli_poll($links, $errors, $reject, 1)) {
        continue;
    }
    foreach ($links as $link) {
        if ($result = $link->reap_async_query()) {
            print_r($result->fetch_row());
            mysqli_free_result($result);
            $processed++;
        }
    }
} while ($processed < count($all_links));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => test
)

Veja Também

  • mysqli_query() - Performs a query on the database
  • mysqli_reap_async_query() - Get result from async query

mysqli::ping
mysqli::prepare
MySQLi


Prepare an SQL statement for execution

mysqli::poll
mysqli::query
MySQLi
PHP Manual

mysqli::prepare

mysqli_prepare

(PHP 5)

mysqli::prepare -- mysqli_prepare — Prepare an SQL statement for execution

Descrição

Estilo orientado a objetos

mysqli_stmt mysqli::prepare ( string $query )

Estilo de procedimentos

mysqli_stmt mysqli_prepare ( mysqli $link , string $query )

Prepares the SQL query, and returns a statement handle to be used for further operations on the statement. The query must consist of a single SQL statement.

The parameter markers must be bound to application variables using mysqli_stmt_bind_param() and/or mysqli_stmt_bind_result() before executing the statement or fetching rows.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

query

The query, as a string.

Nota:

You should not add a terminating semicolon or \g to the statement.

This parameter can include one or more parameter markers in the SQL statement by embedding question mark (?) characters at the appropriate positions.

Nota:

The markers are legal only in certain places in SQL statements. For example, they are allowed in the VALUES() list of an INSERT statement (to specify column values for a row), or in a comparison with a column in a WHERE clause to specify a comparison value.

However, they are not allowed for identifiers (such as table or column names), in the select list that names the columns to be returned by a SELECT statement, or to specify both operands of a binary operator such as the = equal sign. The latter restriction is necessary because it would be impossible to determine the parameter type. It's not allowed to compare marker with NULL by ? IS NULL too. In general, parameters are legal only in Data Manipulation Language (DML) statements, and not in Data Definition Language (DDL) statements.

Valor Retornado

mysqli_prepare() returns a statement object or FALSE if an error occurred.

Exemplos

Exemplo #1 mysqli::prepare() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$city = "Amersfoort";

/* create a prepared statement */
if ($stmt = $mysqli->prepare("SELECT District FROM City WHERE Name=?")) {

    /* bind parameters for markers */
    $stmt->bind_param("s", $city);

    /* execute query */
    $stmt->execute();

    /* bind result variables */
    $stmt->bind_result($district);

    /* fetch value */
    $stmt->fetch();

    printf("%s is in district %s\n", $city, $district);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$city = "Amersfoort";

/* create a prepared statement */
if ($stmt = mysqli_prepare($link, "SELECT District FROM City WHERE Name=?")) {

    /* bind parameters for markers */
    mysqli_stmt_bind_param($stmt, "s", $city);

    /* execute query */
    mysqli_stmt_execute($stmt);

    /* bind result variables */
    mysqli_stmt_bind_result($stmt, $district);

    /* fetch value */
    mysqli_stmt_fetch($stmt);

    printf("%s is in district %s\n", $city, $district);

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Amersfoort is in district Utrecht

Veja Também

  • mysqli_stmt_execute() - Executa uma preparada query
  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
  • mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros
  • mysqli_stmt_bind_result() - Passa variáveis para um preparado comando por resultado armazenado
  • mysqli_stmt_close() - Closes a prepared statement

mysqli::poll
mysqli::query
MySQLi


Performs a query on the database

mysqli::prepare
mysqli::real_connect
MySQLi
PHP Manual

mysqli::query

mysqli_query

(PHP 5)

mysqli::query -- mysqli_query — Performs a query on the database

Descrição

Estilo orientado a objetos

mixed mysqli::query ( string $query [, int $resultmode ] )

Estilo de procedimentos

mixed mysqli_query ( mysqli $link , string $query [, int $resultmode ] )

Performs a query against the database.

Functionally, using this function is identical to calling
mysqli_real_query() followed either by
mysqli_use_result() or
mysqli_store_result().

Nota:

In the case where you pass a statement to mysqli_query() that is longer than max_allowed_packet of the server, the returned error codes are different depending on whether you are using MySQL Native Driver (mysqlnd) or MySQL Client Library (libmysql). The behavior is as follows:

  • mysqlnd on Linux returns an error code of 1153. The error message means "got a packet bigger than max_allowed_packet bytes".

  • mysqlnd on Windows returns an error code 2006. This error message means "server has gone away".

  • libmysql on all platforms returns an error code 2006. This error message means "server has gone away".

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

query

The query string.

Data inside the query should be properly escaped.

resultmode

Either the constant MYSQLI_USE_RESULT or MYSQLI_STORE_RESULT depending on the desired behavior. By default, MYSQLI_STORE_RESULT is used.

If you use MYSQLI_USE_RESULT all subsequent calls will return error Commands out of sync unless you call mysqli_free_result()

With MYSQLI_ASYNC (available with mysqlnd), it is possible to perform query asynchronously. mysqli_poll() is then used to get results from such queries.

Valor Retornado

Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a result object. For other successful queries mysqli_query() will return TRUE.

Histórico

Versão | Descrição
5.3.0 | Added the ability of async queries.

Exemplos

Exemplo #1 mysqli::query() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Create table doesn't return a resultset */
if ($mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) {
    printf("Table myCity successfully created.\n");
}

/* Select queries return a resultset */
if ($result = $mysqli->query("SELECT Name FROM City LIMIT 10")) {
    printf("Select returned %d rows.\n", $result->num_rows);

    /* free result set */
    $result->close();
}

/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */
if ($result = $mysqli->query("SELECT * FROM City", MYSQLI_USE_RESULT)) {

    /* Note, that we can't execute any functions which interact with the
       server until result set was closed. All calls will return an
       'out of sync' error */
    if (!$mysqli->query("SET @a:='this will not work'")) {
        printf("Error: %s\n", $mysqli->error);
    }
    $result->close();
}

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Create table doesn't return a resultset */
if (mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) {
    printf("Table myCity successfully created.\n");
}

/* Select queries return a resultset */
if ($result = mysqli_query($link, "SELECT Name FROM City LIMIT 10")) {
    printf("Select returned %d rows.\n", mysqli_num_rows($result));

    /* free result set */
    mysqli_free_result($result);
}

/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */
if ($result = mysqli_query($link, "SELECT * FROM City", MYSQLI_USE_RESULT)) {

    /* Note, that we can't execute any functions which interact with the
       server until result set was closed. All calls will return an
       'out of sync' error */
    if (!mysqli_query($link, "SET @a:='this will not work'")) {
        printf("Error: %s\n", mysqli_error($link));
    }
    mysqli_free_result($result);
}

mysqli_close($link);
?>

The above examples will output:

Table myCity successfully created.
Select returned 10 rows.
Error: Commands out of sync;  You can't run this command now

Veja Também

  • mysqli_real_query() - Execute an SQL query
  • mysqli_multi_query() - Performs a query on the database
  • mysqli_free_result() - Frees the memory associated with a result

mysqli::prepare
mysqli::real_connect
MySQLi


Opens a connection to a mysql server

mysqli::query
mysqli::real_escape_string
MySQLi
PHP Manual

mysqli::real_connect

mysqli_real_connect

(PHP 5)

mysqli::real_connect -- mysqli_real_connect — Opens a connection to a mysql server

Descrição

Estilo orientado a objetos

bool mysqli::real_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket [, int $flags ]]]]]]] )

Estilo de procedimentos

bool mysqli_real_connect ( mysqli $link [, string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket [, int $flags ]]]]]]] )

Establish a connection to a MySQL database engine.

This function differs from mysqli_connect():

  • mysqli_real_connect() needs a valid object which has to be created by function mysqli_init().

  • With the mysqli_options() function you can set various options for connection.

  • There is a flags parameter.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

host

Can be either a host name or an IP address. Passing the NULL value or the string "localhost" to this parameter, the local host is assumed. When possible, pipes will be used instead of the TCP/IP protocol.

username

The MySQL user name.

passwd

If provided or NULL, the MySQL server will attempt to authenticate the user against those user records which have no password only. This allows one username to be used with different permissions (depending on if a password as provided or not).

dbname

If provided will specify the default database to be used when performing queries.

port

Specifies the port number to attempt to connect to the MySQL server.

socket

Specifies the socket or named pipe that should be used.

Nota:

Specifying the socket parameter will not explicitly determine the type of connection to be used when connecting to the MySQL server. How the connection is made to the MySQL database is determined by the host parameter.

flags

With the parameter flags you can set different connection options:

Supported flags
Name | Description
MYSQLI_CLIENT_COMPRESS | Use compression protocol
MYSQLI_CLIENT_FOUND_ROWS | return number of matched rows, not the number of affected rows
MYSQLI_CLIENT_IGNORE_SPACE | Allow spaces after function names. Makes all function names reserved words.
MYSQLI_CLIENT_INTERACTIVE | Allow interactive_timeout seconds (instead of wait_timeout seconds) of inactivity before closing the connection
MYSQLI_CLIENT_SSL | Use SSL (encryption)

Nota:

For security reasons the MULTI_STATEMENT flag is not supported in PHP. If you want to execute multiple queries use the mysqli_multi_query() function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mysqli::real_connect() example

Estilo orientado a objetos

<?php

$mysqli = mysqli_init();
if (!$mysqli) {
    die('mysqli_init failed');
}

if (!$mysqli->options(MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) {
    die('Setting MYSQLI_INIT_COMMAND failed');
}

if (!$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 5)) {
    die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
}

if (!$mysqli->real_connect('localhost', 'my_user', 'my_password', 'my_db')) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
            . mysqli_connect_error());
}

echo 'Success... ' . $mysqli->host_info . "\n";

$mysqli->close();
?>

Estilo orientado a objetos when extending mysqli class

<?php

class foo_mysqli extends mysqli {
    public function __construct($host, $user, $pass, $db) {
        parent::init();

        if (!parent::options(MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) {
            die('Setting MYSQLI_INIT_COMMAND failed');
        }

        if (!parent::options(MYSQLI_OPT_CONNECT_TIMEOUT, 5)) {
            die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
        }

        if (!parent::real_connect($host, $user, $pass, $db)) {
            die('Connect Error (' . mysqli_connect_errno() . ') '
                    . mysqli_connect_error());
        }
    }
}

$db = new foo_mysqli('localhost', 'my_user', 'my_password', 'my_db');

echo 'Success... ' . $db->host_info . "\n";

$db->close();
?>

Estilo de procedimentos

<?php

$link = mysqli_init();
if (!$link) {
    die('mysqli_init failed');
}

if (!mysqli_options($link, MYSQLI_INIT_COMMAND, 'SET AUTOCOMMIT = 0')) {
    die('Setting MYSQLI_INIT_COMMAND failed');
}

if (!mysqli_options($link, MYSQLI_OPT_CONNECT_TIMEOUT, 5)) {
    die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
}

if (!mysqli_real_connect($link, 'localhost', 'my_user', 'my_password', 'my_db')) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
            . mysqli_connect_error());
}

echo 'Success... ' . mysqli_get_host_info($link) . "\n";

mysqli_close($link);
?>

The above examples will output:

Success... MySQL host info: localhost via TCP/IP

Notas

Nota:

MySQLnd always assumes the server default charset. This charset is sent during connection hand-shake/authentication, which mysqlnd will use.

Libmysql uses the default charset set in the my.cnf or by an explicit call to mysqli_options() prior to calling mysqli_real_connect(), but after mysqli_init().

Veja Também

  • mysqli_connect() - Sinônimo de mysqli::__construct
  • mysqli_init() - Inicializa a MySQLi e retorna um resource para usar com mysqli_real_connect()
  • mysqli_options() - Set options
  • mysqli_ssl_set() - Used for establishing secure connections using SSL
  • mysqli_close() - Fecha uma conexão aberta anteriormente com o banco de dados

mysqli::query
mysqli::real_escape_string
MySQLi


Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

mysqli::real_connect
mysqli::real_query
MySQLi
PHP Manual

mysqli::real_escape_string

mysqli_real_escape_string

(PHP 5)

mysqli::real_escape_string -- mysqli_real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

Descrição

Estilo orientado a objetos

string mysqli::escape_string ( string $escapestr )
string mysqli::real_escape_string ( string $escapestr )

Estilo de procedimentos

string mysqli_real_escape_string ( mysqli $link , string $escapestr )

This function is used to create a legal SQL string that you can use in an SQL statement. The given string is encoded to an escaped SQL string, taking into account the current character set of the connection.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

escapestr

The string to be escaped.

Characters encoded are NUL (ASCII 0), \n, \r, \, ', ", and Control-Z.

Valor Retornado

Returns an escaped string.

Exemplos

Exemplo #1 mysqli::real_escape_string() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City");

$city = "'s Hertogenbosch";

/* this query will fail, cause we didn't escape $city */
if (!$mysqli->query("INSERT into myCity (Name) VALUES ('$city')")) {
    printf("Error: %s\n", $mysqli->sqlstate);
}

$city = $mysqli->real_escape_string($city);

/* this query with escaped $city will work */
if ($mysqli->query("INSERT into myCity (Name) VALUES ('$city')")) {
    printf("%d Row inserted.\n", $mysqli->affected_rows);
}

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City");

$city = "'s Hertogenbosch";

/* this query will fail, cause we didn't escape $city */
if (!mysqli_query($link, "INSERT into myCity (Name) VALUES ('$city')")) {
    printf("Error: %s\n", mysqli_sqlstate($link));
}

$city = mysqli_real_escape_string($link, $city);

/* this query with escaped $city will work */
if (mysqli_query($link, "INSERT into myCity (Name) VALUES ('$city')")) {
    printf("%d Row inserted.\n", mysqli_affected_rows($link));
}

mysqli_close($link);
?>

The above examples will output:

Error: 42000
1 Row inserted.

Veja Também

  • mysqli_character_set_name() - Retorna o conjunto de caracteres padrão para a conexão com o banco de dados

mysqli::real_connect
mysqli::real_query
MySQLi


Execute an SQL query

mysqli::real_escape_string
mysqli::reap_async_query
MySQLi
PHP Manual

mysqli::real_query

mysqli_real_query

(PHP 5)

mysqli::real_query -- mysqli_real_query — Execute an SQL query

Descrição

Estilo orientado a objetos

bool mysqli::real_query ( string $query )

Estilo de procedimentos

bool mysqli_real_query ( mysqli $link , string $query )

Executes a single query against the database whose result can then be retrieved or stored using the mysqli_store_result() or mysqli_use_result() functions.

In order to determine if a given query should return a result set or not, see mysqli_field_count().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

query

The query, as a string.

Data inside the query should be properly escaped.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mysqli_query() - Performs a query on the database
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_use_result() - Initiate a result set retrieval

mysqli::real_escape_string
mysqli::reap_async_query
MySQLi


Get result from async query

mysqli::real_query
mysqli::rollback
MySQLi
PHP Manual

mysqli::reap_async_query

mysqli_reap_async_query

(PHP 5 >= 5.3.0)

mysqli::reap_async_query -- mysqli_reap_async_query — Get result from async query

Descrição

Estilo orientado a objetos

public mysqli_result mysqli::reap_async_query ( void )

Estilo de procedimentos

mysqli_result mysqli_reap_async_query ( mysql $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Get result from async query. Disponível apenas com mysqlnd.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns mysqli_result in success, FALSE otherwise.

Veja Também

  • mysqli_poll() - Poll connections

mysqli::real_query
mysqli::rollback
MySQLi


Rolls back current transaction

mysqli::reap_async_query
mysqli::select_db
MySQLi
PHP Manual

mysqli::rollback

mysqli_rollback

(PHP 5)

mysqli::rollback -- mysqli_rollback — Rolls back current transaction

Descrição

Estilo orientado a objetos

bool mysqli::rollback ( void )

Estilo de procedimentos

bool mysqli_rollback ( mysqli $link )

Rollbacks the current transaction for the database.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mysqli::rollback() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* disable autocommit */
$mysqli->autocommit(FALSE);

$mysqli->query("CREATE TABLE myCity LIKE City");
$mysqli->query("ALTER TABLE myCity Type=InnoDB");
$mysqli->query("INSERT INTO myCity SELECT * FROM City LIMIT 50");

/* commit insert */
$mysqli->commit();

/* delete all rows */
$mysqli->query("DELETE FROM myCity");

if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) {
    $row = $result->fetch_row();
    printf("%d rows in table myCity.\n", $row[0]);
    /* Free result */
    $result->close();
}

/* Rollback */
$mysqli->rollback();

if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) {
    $row = $result->fetch_row();
    printf("%d rows in table myCity (after rollback).\n", $row[0]);
    /* Free result */
    $result->close();
}

/* Drop table myCity */
$mysqli->query("DROP TABLE myCity");

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* disable autocommit */
mysqli_autocommit($link, FALSE);

mysqli_query($link, "CREATE TABLE myCity LIKE City");
mysqli_query($link, "ALTER TABLE myCity Type=InnoDB");
mysqli_query($link, "INSERT INTO myCity SELECT * FROM City LIMIT 50");

/* commit insert */
mysqli_commit($link);

/* delete all rows */
mysqli_query($link, "DELETE FROM myCity");

if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) {
    $row = mysqli_fetch_row($result);
    printf("%d rows in table myCity.\n", $row[0]);
    /* Free result */
    mysqli_free_result($result);
}

/* Rollback */
mysqli_rollback($link);

if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) {
    $row = mysqli_fetch_row($result);
    printf("%d rows in table myCity (after rollback).\n", $row[0]);
    /* Free result */
    mysqli_free_result($result);
}

/* Drop table myCity */
mysqli_query($link, "DROP TABLE myCity");

mysqli_close($link);
?>

The above examples will output:

0 rows in table myCity.
50 rows in table myCity (after rollback).

Veja Também

  • mysqli_commit() - Salva a transação atual
  • mysqli_autocommit() - Ativa ou desativa o salvar automaticamente as modificações no banco de dados

mysqli::reap_async_query
mysqli::select_db
MySQLi


Selects the default database for database queries

mysqli::rollback
mysqli::set_charset
MySQLi
PHP Manual

mysqli::select_db

mysqli_select_db

(PHP 5)

mysqli::select_db -- mysqli_select_db — Selects the default database for database queries

Descrição

Estilo orientado a objetos

bool mysqli::select_db ( string $dbname )

Estilo de procedimentos

bool mysqli_select_db ( mysqli $link , string $dbname )

Selects the default database to be used when performing queries against the database connection.

Nota:

This function should only be used to change the default database for the connection. You can select the default database with 4th parameter in mysqli_connect().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

dbname

The database name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mysqli::select_db() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* return name of current default database */
if ($result = $mysqli->query("SELECT DATABASE()")) {
    $row = $result->fetch_row();
    printf("Default database is %s.\n", $row[0]);
    $result->close();
}

/* change db to world db */
$mysqli->select_db("world");

/* return name of current default database */
if ($result = $mysqli->query("SELECT DATABASE()")) {
    $row = $result->fetch_row();
    printf("Default database is %s.\n", $row[0]);
    $result->close();
}

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* return name of current default database */
if ($result = mysqli_query($link, "SELECT DATABASE()")) {
    $row = mysqli_fetch_row($result);
    printf("Default database is %s.\n", $row[0]);
    mysqli_free_result($result);
}

/* change db to world db */
mysqli_select_db($link, "world");

/* return name of current default database */
if ($result = mysqli_query($link, "SELECT DATABASE()")) {
    $row = mysqli_fetch_row($result);
    printf("Default database is %s.\n", $row[0]);
    mysqli_free_result($result);
}

mysqli_close($link);
?>

The above examples will output:

Default database is test.
Default database is world.

Veja Também

  • mysqli_connect() - Sinônimo de mysqli::__construct
  • mysqli_real_connect() - Opens a connection to a mysql server

mysqli::rollback
mysqli::set_charset
MySQLi


Sets the default client character set

mysqli::select_db
mysqli::set_local_infile_default
MySQLi
PHP Manual

mysqli::set_charset

mysqli_set_charset

(PHP 5 >= 5.0.5)

mysqli::set_charset -- mysqli_set_charset — Sets the default client character set

Descrição

Estilo orientado a objetos

bool mysqli::set_charset ( string $charset )

Estilo de procedimentos

bool mysqli_set_charset ( mysqli $link , string $charset )

Sets the default character set to be used when sending data from and to the database server.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

charset

The charset to be set as default.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

To use this function on a Windows platform you need MySQL client library version 4.1.11 or above (for MySQL 5.0 you need 5.0.6 or above).

Nota:

This is the preferred way to change the charset. Using mysqli::query() to execute SET NAMES .. is not recommended.

Exemplos

Exemplo #1 mysqli::set_charset() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* change character set to utf8 */
if (!$mysqli->set_charset("utf8")) {
    printf("Error loading character set utf8: %s\n", $mysqli->error);
} else {
    printf("Current character set: %s\n", $mysqli->character_set_name());
}

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'test');

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* change character set to utf8 */
if (!mysqli_set_charset($link, "utf8")) {
    printf("Error loading character set utf8: %s\n", mysqli_error($link));
} else {
    printf("Current character set: %s\n", mysqli_character_set_name($link));
}

mysqli_close($link);
?>

The above examples will output:

Current character set: utf8

Veja Também

  • mysqli_character_set_name() - Retorna o conjunto de caracteres padrão para a conexão com o banco de dados
  • mysqli_real_escape_string() - Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
  • » List of character sets that MySQL supports

mysqli::select_db
mysqli::set_local_infile_default
MySQLi


Unsets user defined handler for load local infile command

mysqli::set_charset
mysqli::set_local_infile_handler
MySQLi
PHP Manual

mysqli::set_local_infile_default

mysqli_set_local_infile_default

(PHP 5)

mysqli::set_local_infile_default -- mysqli_set_local_infile_default — Unsets user defined handler for load local infile command

Descrição

void mysqli_set_local_infile_default ( mysqli $link )

Deactivates a LOAD DATA INFILE LOCAL handler previously set with mysqli_set_local_infile_handler().

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Não há valor retornado.

Exemplos

See mysqli_set_local_infile_handler() examples

Veja Também

  • mysqli_set_local_infile_handler() - Set callback function for LOAD DATA LOCAL INFILE command

mysqli::set_charset
mysqli::set_local_infile_handler
MySQLi


Set callback function for LOAD DATA LOCAL INFILE command

mysqli::set_local_infile_default
mysqli->sqlstate
MySQLi
PHP Manual

mysqli::set_local_infile_handler

mysqli_set_local_infile_handler

(PHP 5)

mysqli::set_local_infile_handler -- mysqli_set_local_infile_handler — Set callback function for LOAD DATA LOCAL INFILE command

Descrição

Estilo orientado a objetos

bool mysqli::set_local_infile_handler ( mysqli $link , callback $read_func )

Estilo de procedimentos

bool mysqli_set_local_infile_handler ( mysqli $link , callback $read_func )

Set callback function for LOAD DATA LOCAL INFILE command

The callbacks task is to read input from the file specified in the LOAD DATA LOCAL INFILE and to reformat it into the format understood by LOAD DATA INFILE.

The returned data needs to match the format specified in the LOAD DATA

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

read_func

A callback function or object method taking the following parameters:

stream

A PHP stream associated with the SQL commands INFILE

&buffer

A string buffer to store the rewritten input into

buflen

The maximum number of characters to be stored in the buffer

&errormsg

If an error occurs you can store an error message in here

The callback function should return the number of characters stored in the buffer or a negative value if an error occurred.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mysqli::set_local_infile_handler() example

Estilo orientado a objetos

<?php
  $db = mysqli_init();
  $db->real_connect("localhost","root","","test");

  function callme($stream, &$buffer, $buflen, &$errmsg)
  {
    $buffer = fgets($stream);

    echo $buffer;

    // convert to upper case and replace "," delimiter with [TAB]
    $buffer = strtoupper(str_replace(",", "\t", $buffer));

    return strlen($buffer);
  }

  echo "Input:\n";

  $db->set_local_infile_handler("callme");
  $db->query("LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1");
  $db->set_local_infile_default();

  $res = $db->query("SELECT * FROM t1");

  echo "\nResult:\n";
  while ($row = $res->fetch_assoc()) {
    echo join(",", $row)."\n";
  }
?>

Estilo de procedimentos

<?php
  $db = mysqli_init();
  mysqli_real_connect($db, "localhost","root","","test");

  function callme($stream, &$buffer, $buflen, &$errmsg)
  {
    $buffer = fgets($stream);

    echo $buffer;

    // convert to upper case and replace "," delimiter with [TAB]
    $buffer = strtoupper(str_replace(",", "\t", $buffer));

    return strlen($buffer);
  }

  echo "Input:\n";

  mysqli_set_local_infile_handler($db, "callme");
  mysqli_query($db, "LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1");
  mysqli_set_local_infile_default($db);

  $res = mysqli_query($db, "SELECT * FROM t1");

  echo "\nResult:\n";
  while ($row = mysqli_fetch_assoc($res)) {
    echo join(",", $row)."\n";
  }
?>

The above examples will output:

Input:
23,foo
42,bar

Output:
23,FOO
42,BAR

Veja Também

  • mysqli_set_local_infile_default() - Unsets user defined handler for load local infile command

mysqli::set_local_infile_default
mysqli->sqlstate
MySQLi


Returns the SQLSTATE error from previous MySQL operation

mysqli::set_local_infile_handler
mysqli::ssl_set
MySQLi
PHP Manual

mysqli->sqlstate

mysqli_sqlstate

(PHP 5)

mysqli->sqlstate -- mysqli_sqlstate — Returns the SQLSTATE error from previous MySQL operation

Descrição

Estilo orientado a objetos

string $sqlstate;

Estilo de procedimentos

string mysqli::mysqli_sqlstate ( mysqli $link )

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error. The values are specified by ANSI SQL and ODBC. For a list of possible values, see » http://dev.mysql.com/doc/mysql/en/error-handling.html.

Nota:

Note that not all MySQL errors are yet mapped to SQLSTATE's. The value HY000 (general error) is used for unmapped errors.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error.

Exemplos

Exemplo #1 mysqli->sqlstate example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Table City already exists, so we should get an error */
if (!$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
    printf("Error - SQLSTATE %s.\n", $mysqli->sqlstate);
}

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* Table City already exists, so we should get an error */
if (!mysqli_query($link, "CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
    printf("Error - SQLSTATE %s.\n", mysqli_sqlstate($link));
}

mysqli_close($link);
?>

The above examples will output:

Error - SQLSTATE 42S01.

Veja Também

  • mysqli_errno() - Retorna o código de erro para a chamada de função mais recente
  • mysqli_error() - Retorna uma string descrevendo o ultimo erro

mysqli::set_local_infile_handler
mysqli::ssl_set
MySQLi


Used for establishing secure connections using SSL

mysqli->sqlstate
mysqli::stat
MySQLi
PHP Manual

mysqli::ssl_set

mysqli_ssl_set

(PHP 5)

mysqli::ssl_set -- mysqli_ssl_set — Used for establishing secure connections using SSL

Descrição

Estilo orientado a objetos

bool mysqli::ssl_set ( string $key , string $cert , string $ca , string $capath , string $cipher )

Estilo de procedimentos

bool mysqli_ssl_set ( mysqli $link , string $key , string $cert , string $ca , string $capath , string $cipher )

Used for establishing secure connections using SSL. It must be called before mysqli_real_connect(). This function does nothing unless OpenSSL support is enabled.

Note that MySQL Native Driver does not support SSL, so calling this function when using MySQL Native Driver will result in an error. MySQL Native Driver is enabled by default on Microsoft Windows from PHP version 5.3 onwards.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

key

The path name to the key file.

cert

The path name to the certificate file.

ca

The path name to the certificate authority file.

capath

The pathname to a directory that contains trusted SSL CA certificates in PEM format.

cipher

A list of allowable ciphers to use for SSL encryption.

Any unused SSL parameters may be given as NULL

Valor Retornado

This function always returns TRUE value. If SSL setup is incorrect mysqli_real_connect() will return an error when you attempt to connect.

Veja Também

  • mysqli_options() - Set options
  • mysqli_real_connect() - Opens a connection to a mysql server

mysqli->sqlstate
mysqli::stat
MySQLi


Gets the current system status

mysqli::ssl_set
mysqli::stmt_init
MySQLi
PHP Manual

mysqli::stat

mysqli_stat

(PHP 5)

mysqli::stat -- mysqli_stat — Gets the current system status

Descrição

Estilo orientado a objetos

string mysqli::stat ( void )

Estilo de procedimentos

string mysqli_stat ( mysqli $link )

mysqli_stat() returns a string containing information similar to that provided by the 'mysqladmin status' command. This includes uptime in seconds and the number of running threads, questions, reloads, and open tables.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

A string describing the server status. FALSE if an error occurred.

Exemplos

Exemplo #1 mysqli::stat() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

printf ("System status: %s\n", $mysqli->stat());

$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

printf("System status: %s\n", mysqli_stat($link));

mysqli_close($link);
?>

The above examples will output:

System status: Uptime: 272  Threads: 1  Questions: 5340  Slow queries: 0
Opens: 13  Flush tables: 1  Open tables: 0  Queries per second avg: 19.632
Memory in use: 8496K  Max memory used: 8560K

Veja Também

  • mysqli_get_server_info() - Retorna a versão do servidor MySQL

mysqli::ssl_set
mysqli::stmt_init
MySQLi


Initializes a statement and returns an object for use with mysqli_stmt_prepare

mysqli::stat
mysqli::store_result
MySQLi
PHP Manual

mysqli::stmt_init

mysqli_stmt_init

(PHP 5)

mysqli::stmt_init -- mysqli_stmt_init — Initializes a statement and returns an object for use with mysqli_stmt_prepare

Descrição

Estilo orientado a objetos

mysqli_stmt mysqli::stmt_init ( void )

Estilo de procedimentos

mysqli_stmt mysqli_stmt_init ( mysqli $link )

Allocates and initializes a statement object suitable for mysqli_stmt_prepare().

Nota:

Any subsequent calls to any mysqli_stmt function will fail until mysqli_stmt_prepare() was called.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns an object.

Veja Também

  • mysqli_stmt_prepare() - Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o

mysqli::stat
mysqli::store_result
MySQLi


Transfers a result set from the last query

mysqli::stmt_init
mysqli->thread_id
MySQLi
PHP Manual

mysqli::store_result

mysqli_store_result

(PHP 5)

mysqli::store_result -- mysqli_store_result — Transfers a result set from the last query

Descrição

Estilo orientado a objetos

mysqli_result mysqli::store_result ( void )

Estilo de procedimentos

mysqli_result mysqli_store_result ( mysqli $link )

Transfers the result set from the last query on the database connection represented by the link parameter to be used with the mysqli_data_seek() function.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns a buffered result object or FALSE if an error occurred.

Nota:

mysqli_store_result() returns FALSE in case the query didn't return a result set (if the query was, for example an INSERT statement). This function also returns FALSE if the reading of the result set failed. You can check if you have got an error by checking if mysqli_error() doesn't return an empty string, if mysqli_errno() returns a non zero value, or if mysqli_field_count() returns a non zero value. Also possible reason for this function returning FALSE after successful call to mysqli_query() can be too large result set (memory for it cannot be allocated). If mysqli_field_count() returns a non-zero value, the statement should have produced a non-empty result set.

Notas

Nota:

Although it is always good practice to free the memory used by the result of a query using the mysqli_free_result() function, when transferring large result sets using the mysqli_store_result() this becomes particularly important.

Exemplos

See mysqli_multi_query().

Veja Também

  • mysqli_real_query() - Execute an SQL query
  • mysqli_use_result() - Initiate a result set retrieval

mysqli::stmt_init
mysqli->thread_id
MySQLi


Returns the thread ID for the current connection

mysqli::store_result
mysqli::thread_safe
MySQLi
PHP Manual

mysqli->thread_id

mysqli_thread_id

(PHP 5)

mysqli->thread_id -- mysqli_thread_id — Returns the thread ID for the current connection

Descrição

Estilo orientado a objetos

int $thread_id;

Estilo de procedimentos

int mysqli::mysqli_thread_id ( mysqli $link )

The mysqli_thread_id() function returns the thread ID for the current connection which can then be killed using the mysqli_kill() function. If the connection is lost and you reconnect with mysqli_ping(), the thread ID will be other. Therefore you should get the thread ID only when you need it.

Nota:

The thread ID is assigned on a connection-by-connection basis. Hence, if the connection is broken and then re-established a new thread ID will be assigned.

To kill a running query you can use the SQL command KILL QUERY processid.

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Returns the Thread ID for the current connection.

Exemplos

Exemplo #1 mysqli->thread_id example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id = $mysqli->thread_id;

/* Kill connection */
$mysqli->kill($thread_id);

/* This should produce an error */
if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
    printf("Error: %s\n", $mysqli->error);
    exit;
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id = mysqli_thread_id($link);

/* Kill connection */
mysqli_kill($link, $thread_id);

/* This should produce an error */
if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) {
    printf("Error: %s\n", mysqli_error($link));
    exit;
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Error: MySQL server has gone away

Veja Também

  • mysqli_kill() - Solicita ao servidor o encerramento de um thread do MySQL

mysqli::store_result
mysqli::thread_safe
MySQLi


Returns whether thread safety is given or not

mysqli->thread_id
mysqli::use_result
MySQLi
PHP Manual

mysqli::thread_safe

mysqli_thread_safe

(PHP 5)

mysqli::thread_safe -- mysqli_thread_safe — Returns whether thread safety is given or not

Descrição

Estilo de procedimentos

bool mysqli_thread_safe ( void )

Tells whether the client library is compiled as thread-safe.

Valor Retornado

TRUE if the client library is thread-safe, otherwise FALSE.

mysqli->thread_id
mysqli::use_result
MySQLi


Initiate a result set retrieval

mysqli::thread_safe
mysqli->warning_count
MySQLi
PHP Manual

mysqli::use_result

mysqli_use_result

(PHP 5)

mysqli::use_result -- mysqli_use_result — Initiate a result set retrieval

Descrição

Estilo orientado a objetos

mysqli_result mysqli::use_result ( void )

Estilo de procedimentos

mysqli_result mysqli_use_result ( mysqli $link )

Used to initiate the retrieval of a result set from the last query executed using the mysqli_real_query() function on the database connection.

Either this or the mysqli_store_result() function must be called before the results of a query can be retrieved, and one or the other must be called to prevent the next query on that database connection from failing.

Nota:

The mysqli_use_result() function does not transfer the entire result set from the database and hence cannot be used functions such as mysqli_data_seek() to move to a particular row within the set. To use this functionality, the result set must be stored using mysqli_store_result(). One should not use mysqli_use_result() if a lot of processing on the client side is performed, since this will tie up the server and prevent other threads from updating any tables from which the data is being fetched.

Valor Retornado

Returns an unbuffered result object or FALSE if an error occurred.

Exemplos

Exemplo #1 mysqli::use_result() example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if ($mysqli->multi_query($query)) {
    do {
        /* store first result set */
        if ($result = $mysqli->use_result()) {
            while ($row = $result->fetch_row()) {
                printf("%s\n", $row[0]);
            }
            $result->close();
        }
        /* print divider */
        if ($mysqli->more_results()) {
            printf("-----------------\n");
        }
    } while ($mysqli->next_result());
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if (mysqli_multi_query($link, $query)) {
    do {
        /* store first result set */
        if ($result = mysqli_use_result($link)) {
            while ($row = mysqli_fetch_row($result)) {
                printf("%s\n", $row[0]);
            }
            mysqli_free_result($result);
        }
        /* print divider */
        if (mysqli_more_results($link)) {
            printf("-----------------\n");
        }
    } while (mysqli_next_result($link));
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

my_user@localhost
-----------------
Amersfoort
Maastricht
Dordrecht
Leiden
Haarlemmermeer

Veja Também

  • mysqli_real_query() - Execute an SQL query
  • mysqli_store_result() - Transfers a result set from the last query

mysqli::thread_safe
mysqli->warning_count
MySQLi


Returns the number of warnings from the last query for the given link

mysqli::use_result
MySQLi_STMT
MySQLi
PHP Manual

mysqli->warning_count

mysqli_warning_count

(PHP 5)

mysqli->warning_count -- mysqli_warning_count — Returns the number of warnings from the last query for the given link

Descrição

Estilo orientado a objetos

int $warning_count;

Estilo de procedimentos

int mysqli::mysqli_warning_count ( mysqli $link )

Returns the number of warnings from the last query in the connection.

Nota:

For retrieving warning messages you can use the SQL command SHOW WARNINGS [limit row_count].

Parâmetros

link

Apenas para estilo de procedimento: Um identificador de conexão retornado por mysqli_connect() or mysqli_init()

Valor Retornado

Number of warnings or zero if there are no warnings.

Exemplos

Exemplo #1 mysqli->warning_count example

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCity LIKE City");

/* a remarkable city in Wales */
$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR',
        'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";

$mysqli->query($query);

if ($mysqli->warning_count) {
    if ($result = $mysqli->query("SHOW WARNINGS")) {
        $row = $result->fetch_row();
        printf("%s (%d): %s\n", $row[0], $row[1], $row[2]);
        $result->close();
    }
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCity LIKE City");

/* a remarkable long city name in Wales */
$query = "INSERT INTO myCity (CountryCode, Name) VALUES('GBR',
        'Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch')";

mysqli_query($link, $query);

if (mysqli_warning_count($link)) {
    if ($result = mysqli_query($link, "SHOW WARNINGS")) {
        $row = mysqli_fetch_row($result);
        printf("%s (%d): %s\n", $row[0], $row[1], $row[2]);
        mysqli_free_result($result);
    }
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Warning (1264): Data truncated for column 'Name' at row 1

Veja Também

  • mysqli_errno() - Retorna o código de erro para a chamada de função mais recente
  • mysqli_error() - Retorna uma string descrevendo o ultimo erro
  • mysqli_sqlstate() - Returns the SQLSTATE error from previous MySQL operation

mysqli::use_result
MySQLi_STMT
MySQLi


A classe MySQLi_STMT

Introdução

Representa um comando preparado.

Sinopse da classe

MySQLi_STMT {
/* Propriedades */
int $affected_rows;
int $errno;
string $error;
int $field_count;
int $insert_id;
int $num_rows;
int $param_count;
string $sqlstate;
/* Métodos */
int MySQLi_STMT::mysqli_stmt_affected_rows ( mysqli_stmt $stmt )
int mysqli_stmt::attr_get ( int $attr )
bool mysqli_stmt::attr_set ( int $attr , int $mode )
bool mysqli_stmt::bind_param ( string $types , mixed &$var1 [, mixed &$... ] )
bool mysqli_stmt::bind_result ( mixed &$var1 [, mixed &$... ] )
bool mysqli_stmt::close ( void )
void mysqli_stmt::data_seek ( int $offset )
int mysqli_stmt_errno ( mysqli_stmt $stmt )
string mysqli_stmt_error ( mysqli_stmt $stmt )
bool mysqli_stmt::execute ( void )
bool mysqli_stmt::fetch ( void )
int mysqli_stmt_field_count ( mysqli_stmt $stmt )
void mysqli_stmt::free_result ( void )
bool mysqli_stmt::get_result ( void )
object mysqli_stmt::get_warnings ( mysqli_stmt $stmt )
mixed mysqli_stmt_insert_id ( mysqli_stmt $stmt )
int mysqli_stmt_num_rows ( mysqli_stmt $stmt )
int mysqli_stmt_param_count ( mysqli_stmt $stmt )
mixed mysqli_stmt::prepare ( string $query )
bool mysqli_stmt::reset ( void )
mysqli_result mysqli_stmt::result_metadata ( void )
bool mysqli_stmt::send_long_data ( int $param_nr , string $data )
string mysqli_stmt_sqlstate ( mysqli_stmt $stmt )
bool mysqli_stmt::store_result ( void )
}

Índice

  • mysqli_stmt->affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement
  • mysqli_stmt::attr_get — Used to get the current value of a statement attribute
  • mysqli_stmt::attr_set — Used to modify the behavior of a prepared statement
  • mysqli_stmt::bind_param — Passa variáveis para um preparado comando como parâmetros
  • mysqli_stmt::bind_result — Passa variáveis para um preparado comando por resultado armazenado
  • mysqli_stmt::close — Closes a prepared statement
  • mysqli_stmt::data_seek — Seeks to an arbitrary row in statement result set
  • mysqli_stmt->errno — Returns the error code for the most recent statement call
  • mysqli_stmt->error — Returns a string description for last statement error
  • mysqli_stmt->execute — Executa uma preparada query
  • mysqli_stmt::fetch — Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
  • mysqli_stmt->field_count — Returns the number of field in the given statement
  • mysqli_free_result — Libera a memória associada ao resultado
  • mysqli_stmt::get_result — Gets a result set from a prepared statement
  • mysqli_stmt::get_warnings — Get result of SHOW WARNINGS
  • mysqli_stmt->insert_id — Get the ID generated from the previous INSERT operation
  • mysqli_stmt::num_rows — Return the number of rows in statements result set
  • mysqli_stmt->param_count — Returns the number of parameter for the given statement
  • mysqli_stmt::prepare — Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o
  • mysqli_stmt::reset — Resets a prepared statement
  • mysqli_stmt::result_metadata — Returns result set metadata from a prepared statement
  • mysqli_stmt::send_long_data — Send data in blocks
  • mysqli_stmt::sqlstate — Returns SQLSTATE error from previous statement operation
  • mysqli_stmt::store_result — Transfers a result set from a prepared statement
mysqli->warning_count
mysqli_stmt->affected_rows
Mysqli


Returns the total number of rows changed, deleted, or inserted by the last executed statement

MySQLi_STMT
mysqli_stmt::attr_get
MySQLi_STMT
PHP Manual

mysqli_stmt->affected_rows

mysqli_stmt_affected_rows

(PHP 5)

mysqli_stmt->affected_rows -- mysqli_stmt_affected_rows — Returns the total number of rows changed, deleted, or inserted by the last executed statement

Descrição

Estilo orientado a objetos

int $affected_rows;

Estilo de procedimentos

int mysqli_stmt::mysqli_stmt_affected_rows ( mysqli_stmt $stmt )

Returns the number of rows affected by INSERT, UPDATE, or DELETE query.

This function only works with queries which update a table. In order to get the number of rows from a SELECT query, use mysqli_stmt_num_rows() instead.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

An integer greater than zero indicates the number of rows affected or retrieved. Zero indicates that no records where updated for an UPDATE/DELETE statement, no rows matched the WHERE clause in the query or that no query has yet been executed. -1 indicates that the query has returned an error. NULL indicates an invalid argument was supplied to the function.

Nota:

If the number of affected rows is greater than maximal PHP int value, the number of affected rows will be returned as a string value.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* create temp table */
$mysqli->query("CREATE TEMPORARY TABLE myCountry LIKE Country");

$query = "INSERT INTO myCountry SELECT * FROM Country WHERE Code LIKE ?";

/* prepare statement */
if ($stmt = $mysqli->prepare($query)) {

    /* Bind variable for placeholder */
    $code = 'A%';
    $stmt->bind_param("s", $code);

    /* execute statement */
    $stmt->execute();

    printf("rows inserted: %d\n", $stmt->affected_rows);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* create temp table */
mysqli_query($link, "CREATE TEMPORARY TABLE myCountry LIKE Country");

$query = "INSERT INTO myCountry SELECT * FROM Country WHERE Code LIKE ?";

/* prepare statement */
if ($stmt = mysqli_prepare($link, $query)) {

    /* Bind variable for placeholder */
    $code = 'A%';
    mysqli_stmt_bind_param($stmt, "s", $code);

    /* execute statement */
    mysqli_stmt_execute($stmt);

    printf("rows inserted: %d\n", mysqli_stmt_affected_rows($stmt));

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

rows inserted: 17

Veja Também

  • mysqli_stmt_num_rows() - Return the number of rows in statements result set
  • mysqli_prepare() - Prepare an SQL statement for execution

MySQLi_STMT
mysqli_stmt::attr_get
MySQLi_STMT


Used to get the current value of a statement attribute

mysqli_stmt->affected_rows
mysqli_stmt::attr_set
MySQLi_STMT
PHP Manual

mysqli_stmt::attr_get

mysqli_stmt_attr_get

(PHP 5)

mysqli_stmt::attr_get -- mysqli_stmt_attr_get — Used to get the current value of a statement attribute

Descrição

Estilo orientado a objetos

int mysqli_stmt::attr_get ( int $attr )

Estilo de procedimentos

int mysqli_stmt_attr_get ( mysqli_stmt $stmt , int $attr )

Gets the current value of a statement attribute.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

attr

The attribute that you want to get.

Valor Retornado

Returns FALSE if the attribute is not found, otherwise returns the value of the attribute.

mysqli_stmt->affected_rows
mysqli_stmt::attr_set
MySQLi_STMT


Used to modify the behavior of a prepared statement

mysqli_stmt::attr_get
mysqli_stmt::bind_param
MySQLi_STMT
PHP Manual

mysqli_stmt::attr_set

mysqli_stmt_attr_set

(PHP 5)

mysqli_stmt::attr_set -- mysqli_stmt_attr_set — Used to modify the behavior of a prepared statement

Descrição

Estilo orientado a objetos

bool mysqli_stmt::attr_set ( int $attr , int $mode )

Estilo de procedimentos

bool mysqli_stmt_attr_set ( mysqli_stmt $stmt , int $attr , int $mode )

Used to modify the behavior of a prepared statement. This function may be called multiple times to set several attributes.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

attr

The attribute that you want to set. It can have one of the following values:

Attribute values
Character | Description
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH | If set to 1, causes mysqli_stmt_store_result() to update the metadata MYSQL_FIELD->max_length value.
MYSQLI_STMT_ATTR_CURSOR_TYPE | Type of cursor to open for statement when mysqli_stmt_execute() is invoked. mode can be MYSQLI_CURSOR_TYPE_NO_CURSOR (the default) or MYSQLI_CURSOR_TYPE_READ_ONLY.
MYSQLI_STMT_ATTR_PREFETCH_ROWS | Number of rows to fetch from server at a time when using a cursor. mode can be in the range from 1 to the maximum value of unsigned long. The default is 1.

If you use the MYSQLI_STMT_ATTR_CURSOR_TYPE option with MYSQLI_CURSOR_TYPE_READ_ONLY, a cursor is opened for the statement when you invoke mysqli_stmt_execute(). If there is already an open cursor from a previous mysqli_stmt_execute() call, it closes the cursor before opening a new one. mysqli_stmt_reset() also closes any open cursor before preparing the statement for re-execution. mysqli_stmt_free_result() closes any open cursor.

If you open a cursor for a prepared statement, mysqli_stmt_store_result() is unnecessary.

mode

The value to assign to the attribute.

mysqli_stmt::attr_get
mysqli_stmt::bind_param
MySQLi_STMT


Passa variáveis para um preparado comando como parâmetros

mysqli_stmt::attr_set
mysqli_stmt::bind_result
MySQLi_STMT
PHP Manual

mysqli_stmt::bind_param

mysqli_stmt_bind_param

(PHP 5)

mysqli_stmt::bind_param -- mysqli_stmt_bind_param — Passa variáveis para um preparado comando como parâmetros

Descrição

Modo orientado a objeto (método):

bool mysqli_stmt::bind_param ( string $types , mixed &$var1 [, mixed &$... ] )

Modo procedural:

bool mysqli_stmt_bind_param ( mysqli_stmt $stmt , string $types , mixed &$var1 [, mixed &$... ] )

Passa variáveis para marcadores de parâmetros no comando SQL que foi passado para mysqli_prepare().

Nota:

Se o tamanho da informação da variáveis excede o máximo permitido do tamanho de pacote (max_allowed_packet), você deve especificar b no types e usar mysqli_stmt_send_long_data() para enviar a informação em pacotes.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

types

A string que contém um ou mais caracteres que especifica os tipos para as correspondente variáveis passadas:

Caracteres de especificação de tipo
Caractere | Descrição
i | corresponde a uma variável de tipo inteiro
d | corresponde a uma variável de tipo double
s | corresponde a uma variável de tipo string
b | corresponde a uma variável que contém dados para um blob e enviará em pacotes

var1

O número de variáveis e tamanho da string types precisa combinar com os parâmetros no comando.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$stmt = $mysqli->prepare("INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)");
$stmt->bind_param('sssd', $code, $language, $official, $percent);

$code = 'DEU';
$language = 'Bavarian';
$official = "F";
$percent = 11.2;

/* execute prepared statement */
$stmt->execute();

printf("%d Row inserted.\n", $stmt->affected_rows);

/* close statement and connection */
$stmt->close();

/* Clean up table CountryLanguage */
$mysqli->query("DELETE FROM CountryLanguage WHERE Language='Bavarian'");
printf("%d Row deleted.\n", $mysqli->affected_rows);

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'world');

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$stmt = mysqli_prepare($link, "INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)");
mysqli_stmt_bind_param($stmt, 'sssd', $code, $language, $official, $percent);

$code = 'DEU';
$language = 'Bavarian';
$official = "F";
$percent = 11.2;

/* execute prepared statement */
mysqli_stmt_execute($stmt);

printf("%d Row inserted.\n", mysqli_stmt_affected_rows($stmt));

/* close statement and connection */
mysqli_stmt_close($stmt);

/* Clean up table CountryLanguage */
mysqli_query($link, "DELETE FROM CountryLanguage WHERE Language='Bavarian'");
printf("%d Row deleted.\n", mysqli_affected_rows($link));

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

1 Row inserted.
1 Row deleted.

Veja Também

  • mysqli_stmt_bind_result() - Passa variáveis para um preparado comando por resultado armazenado
  • mysqli_stmt_execute() - Executa uma preparada query
  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_send_long_data() - Send data in blocks
  • mysqli_stmt_errno() - Returns the error code for the most recent statement call
  • mysqli_stmt_error() - Returns a string description for last statement error

mysqli_stmt::attr_set
mysqli_stmt::bind_result
MySQLi_STMT


Passa variáveis para um preparado comando por resultado armazenado

mysqli_stmt::bind_param
mysqli_stmt::close
MySQLi_STMT
PHP Manual

mysqli_stmt::bind_result

mysqli_stmt_bind_result

(PHP 5)

mysqli_stmt::bind_result -- mysqli_stmt_bind_result — Passa variáveis para um preparado comando por resultado armazenado

Descrição

Modo orientado a objeto (método):

bool mysqli_stmt::bind_result ( mixed &$var1 [, mixed &$... ] )

Modo procedural:

bool mysqli_stmt_bind_result ( mysqli_stmt $stmt , mixed &$var1 [, mixed &$... ] )

Passa colunas em um conjunto de resultados para variáveis.

Quando mysqli_stmt_fetch() é chamada para obter dados, o MySQL client/server protocol coloca a informação das colunas nas especificadas variáveis var1, ....

Nota:

Note que todas as colunas precisam ser determinadas antes de mysqli_stmt_execute() e antes de chamar mysqli_stmt_fetch(). Dependendo do tipo da coluna de determinada variável pode silenciosamente mudar para o tipo do PHP correspondente.

Uma coluna pode ser especificada ou não especificada em dado tempo, até mesmo depois de um conjunto de resultado tem sido parcialmente recebido. A nova passagem pega o efeito da última chamada a mysqli_stmt_fetch().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

var1

A variável a ser determinada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* prepare statement */
if ($stmt = $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
    $stmt->execute();

    /* bind variables to prepared statement */
    $stmt->bind_result($col1, $col2);

    /* fetch values */
    while ($stmt->fetch()) {
        printf("%s %s\n", $col1, $col2);
    }

    /* close statement */
    $stmt->close();
}
/* close connection */
$mysqli->close();

?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* prepare statement */
if ($stmt = mysqli_prepare($link, "SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
    mysqli_stmt_execute($stmt);

    /* bind variables to prepared statement */
    mysqli_stmt_bind_result($stmt, $col1, $col2);

    /* fetch values */
    while (mysqli_stmt_fetch($stmt)) {
        printf("%s %s\n", $col1, $col2);
    }

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

AFG Afghanistan
ALB Albania
DZA Algeria
ASM American Samoa
AND Andorra

Veja Também

  • mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros
  • mysqli_stmt_execute() - Executa uma preparada query
  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_prepare() - Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o
  • mysqli_stmt_init() - Initializes a statement and returns an object for use with mysqli_stmt_prepare
  • mysqli_stmt_errno() - Returns the error code for the most recent statement call
  • mysqli_stmt_error() - Returns a string description for last statement error

mysqli_stmt::bind_param
mysqli_stmt::close
MySQLi_STMT


Closes a prepared statement

mysqli_stmt::bind_result
mysqli_stmt::data_seek
MySQLi_STMT
PHP Manual

mysqli_stmt::close

mysqli_stmt_close

(PHP 5)

mysqli_stmt::close -- mysqli_stmt_close — Closes a prepared statement

Descrição

Estilo orientado a objetos

bool mysqli_stmt::close ( void )

Estilo de procedimentos

bool mysqli_stmt_close ( mysqli_stmt $stmt )

Closes a prepared statement. mysqli_stmt_close() also deallocates the statement handle. If the current statement has pending or unread results, this function cancels them so that the next query can be executed.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution

mysqli_stmt::bind_result
mysqli_stmt::data_seek
MySQLi_STMT


Seeks to an arbitrary row in statement result set

mysqli_stmt::close
mysqli_stmt->errno
MySQLi_STMT
PHP Manual

mysqli_stmt::data_seek

mysqli_stmt_data_seek

(PHP 5)

mysqli_stmt::data_seek -- mysqli_stmt_data_seek — Seeks to an arbitrary row in statement result set

Descrição

Estilo orientado a objetos

void mysqli_stmt::data_seek ( int $offset )

Estilo de procedimentos

void mysqli_stmt_data_seek ( mysqli_stmt $stmt , int $offset )

Seeks to an arbitrary result pointer in the statement result set.

mysqli_stmt_store_result() must be called prior to mysqli_stmt_data_seek().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

offset

Must be between zero and the total number of rows minus one (0.. mysqli_stmt_num_rows() - 1).

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";
if ($stmt = $mysqli->prepare($query)) {

    /* execute query */
    $stmt->execute();

    /* bind result variables */
    $stmt->bind_result($name, $code);

    /* store result */
    $stmt->store_result();

    /* seek to row no. 400 */
    $stmt->data_seek(399);

    /* fetch values */
    $stmt->fetch();

    printf ("City: %s  Countrycode: %s\n", $name, $code);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";
if ($stmt = mysqli_prepare($link, $query)) {

    /* execute query */
    mysqli_stmt_execute($stmt);

    /* bind result variables */
    mysqli_stmt_bind_result($stmt, $name, $code);

    /* store result */
    mysqli_stmt_store_result($stmt);

    /* seek to row no. 400 */
    mysqli_stmt_data_seek($stmt, 399);

    /* fetch values */
    mysqli_stmt_fetch($stmt);

    printf ("City: %s  Countrycode: %s\n", $name, $code);

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

City: Benin City  Countrycode: NGA

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution

mysqli_stmt::close
mysqli_stmt->errno
MySQLi_STMT


Returns the error code for the most recent statement call

mysqli_stmt::data_seek
mysqli_stmt->error
MySQLi_STMT
PHP Manual

mysqli_stmt->errno

mysqli_stmt_errno

(PHP 5)

mysqli_stmt->errno -- mysqli_stmt_errno — Returns the error code for the most recent statement call

Descrição

Estilo orientado a objetos

int $errno;

Estilo de procedimentos

int mysqli_stmt::mysqli_stmt_errno ( mysqli_stmt $stmt )

Returns the error code for the most recently invoked statement function that can succeed or fail.

Client error message numbers are listed in the MySQL errmsg.h header file, server error message numbers are listed in mysqld_error.h. In the MySQL source distribution you can find a complete list of error messages and error numbers in the file Docs/mysqld_error.txt.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

An error code value. Zero means no error occurred.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCountry LIKE Country");
$mysqli->query("INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = $mysqli->prepare($query)) {

    /* drop table */
    $mysqli->query("DROP TABLE myCountry");

    /* execute query */
    $stmt->execute();

    printf("Error: %d.\n", $stmt->errno);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCountry LIKE Country");
mysqli_query($link, "INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = mysqli_prepare($link, $query)) {

    /* drop table */
    mysqli_query($link, "DROP TABLE myCountry");

    /* execute query */
    mysqli_stmt_execute($stmt);

    printf("Error: %d.\n", mysqli_stmt_errno($stmt));

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Error: 1146.

Veja Também

  • mysqli_stmt_error() - Returns a string description for last statement error
  • mysqli_stmt_sqlstate() - Returns SQLSTATE error from previous statement operation

mysqli_stmt::data_seek
mysqli_stmt->error
MySQLi_STMT


Returns a string description for last statement error

mysqli_stmt->errno
mysqli_stmt->execute
MySQLi_STMT
PHP Manual

mysqli_stmt->error

mysqli_stmt_error

(PHP 5)

mysqli_stmt->error -- mysqli_stmt_error — Returns a string description for last statement error

Descrição

Estilo orientado a objetos

string $error;

Estilo de procedimentos

string mysqli_stmt::mysqli_stmt_error ( mysqli_stmt $stmt )

Returns a containing the error message for the most recently invoked statement function that can succeed or fail.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

A string that describes the error. An empty string if no error occurred.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCountry LIKE Country");
$mysqli->query("INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = $mysqli->prepare($query)) {

    /* drop table */
    $mysqli->query("DROP TABLE myCountry");

    /* execute query */
    $stmt->execute();

    printf("Error: %s.\n", $stmt->error);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCountry LIKE Country");
mysqli_query($link, "INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = mysqli_prepare($link, $query)) {

    /* drop table */
    mysqli_query($link, "DROP TABLE myCountry");

    /* execute query */
    mysqli_stmt_execute($stmt);

    printf("Error: %s.\n", mysqli_stmt_error($stmt));

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Error: Table 'world.myCountry' doesn't exist.

Veja Também

  • mysqli_stmt_errno() - Returns the error code for the most recent statement call
  • mysqli_stmt_sqlstate() - Returns SQLSTATE error from previous statement operation

mysqli_stmt->errno
mysqli_stmt->execute
MySQLi_STMT


Executa uma preparada query

mysqli_stmt->error
mysqli_stmt::fetch
MySQLi_STMT
PHP Manual

mysqli_stmt->execute

mysqli_stmt_execute

(PHP 5)

mysqli_stmt->execute -- mysqli_stmt_execute — Executa uma preparada query

Descrição

Modo orientado a objeto (método):

bool mysqli_stmt::execute ( void )

Modo procedural:

bool mysqli_stmt_execute ( mysqli_stmt $stmt )

Executa uma query que foi previamente preparada usando a função mysqli_prepare(). Quando executada alguns parâmetros marcados que existem irão automaticamente ser substituido com a informação apropriada.

Se o comando é UPDATE, DELETE, ou INSERT, o número total de linhas afetadas pode ser determinado usando a função mysqli_stmt_affected_rows(). Da mesma forma, se a query produz um conjunto de resultado a função mysqli_stmt_fetch() é usada.

Nota:

Quando usando mysqli_stmt_execute(), a função mysqli_stmt_fetch() precisa ser usada para obter a informação antes de executar alguma query adicional.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCity LIKE City");

/* Prepare an insert statement */
$query = "INSERT INTO myCity (Name, CountryCode, District) VALUES (?,?,?)";
$stmt = $mysqli->prepare($query);

$stmt->bind_param("sss", $val1, $val2, $val3);

$val1 = 'Stuttgart';
$val2 = 'DEU';
$val3 = 'Baden-Wuerttemberg';

/* Execute the statement */
$stmt->execute();

$val1 = 'Bordeaux';
$val2 = 'FRA';
$val3 = 'Aquitaine';

/* Execute the statement */
$stmt->execute();

/* close statement */
$stmt->close();

/* retrieve all rows from myCity */
$query = "SELECT Name, CountryCode, District FROM myCity";
if ($result = $mysqli->query($query)) {
    while ($row = $result->fetch_row()) {
        printf("%s (%s,%s)\n", $row[0], $row[1], $row[2]);
    }
    /* free result set */
    $result->close();
}

/* remove table */
$mysqli->query("DROP TABLE myCity");

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCity LIKE City");

/* Prepare an insert statement */
$query = "INSERT INTO myCity (Name, CountryCode, District) VALUES (?,?,?)";
$stmt = mysqli_prepare($link, $query);

mysqli_stmt_bind_param($stmt, "sss", $val1, $val2, $val3);

$val1 = 'Stuttgart';
$val2 = 'DEU';
$val3 = 'Baden-Wuerttemberg';

/* Execute the statement */
mysqli_stmt_execute($stmt);

$val1 = 'Bordeaux';
$val2 = 'FRA';
$val3 = 'Aquitaine';

/* Execute the statement */
mysqli_stmt_execute($stmt);

/* close statement */
mysqli_stmt_close($stmt);

/* retrieve all rows from myCity */
$query = "SELECT Name, CountryCode, District FROM myCity";
if ($result = mysqli_query($link, $query)) {
    while ($row = mysqli_fetch_row($result)) {
        printf("%s (%s,%s)\n", $row[0], $row[1], $row[2]);
    }
    /* free result set */
    mysqli_free_result($result);
}

/* remove table */
mysqli_query($link, "DROP TABLE myCity");

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Stuttgart (DEU,Baden-Wuerttemberg)
Bordeaux (FRA,Aquitaine)

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros

mysqli_stmt->error
mysqli_stmt::fetch
MySQLi_STMT


Obtém resultados de um preparado comando e os coloca nas determinadas variáveis

mysqli_stmt->execute
mysqli_stmt->field_count
MySQLi_STMT
PHP Manual

mysqli_stmt::fetch

mysqli_stmt_fetch

(PHP 5)

mysqli_stmt::fetch -- mysqli_stmt_fetch — Obtém resultados de um preparado comando e os coloca nas determinadas variáveis

Descrição

Modo orientado a objeto (método):

bool mysqli_stmt::fetch ( void )

Modo procedural:

bool mysqli_stmt_fetch ( mysqli_stmt $stmt )

Obtém o resultado de um preparado comando e coloca nas variáveis determinadas por mysqli_stmt_bind_result().

Nota:

Note que todas as colunas precisam ser determinadas para aplicação antes de chamar a mysqli_stmt_fetch().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Valor Retornado
Valor | Descrição
TRUE | Sucesso. Dados foram obtidos
FALSE | Erro ocorrido
NULL | Não há mais linhas/não existe dados ou dados truncados

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if ($stmt = $mysqli->prepare($query)) {

    /* execute statement */
    $stmt->execute();

    /* bind result variables */
    $stmt->bind_result($name, $code);

    /* fetch values */
    while ($stmt->fetch()) {
        printf ("%s (%s)\n", $name, $code);
    }

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if ($stmt = mysqli_prepare($link, $query)) {

    /* execute statement */
    mysqli_stmt_execute($stmt);

    /* bind result variables */
    mysqli_stmt_bind_result($stmt, $name, $code);

    /* fetch values */
    while (mysqli_stmt_fetch($stmt)) {
        printf ("%s (%s)\n", $name, $code);
    }

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Rockford (USA)
Tallahassee (USA)
Salinas (USA)
Santa Clarita (USA)
Springfield (USA)

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_errno() - Returns the error code for the most recent statement call
  • mysqli_stmt_error() - Returns a string description for last statement error
  • mysqli_stmt_bind_result() - Passa variáveis para um preparado comando por resultado armazenado

mysqli_stmt->execute
mysqli_stmt->field_count
MySQLi_STMT


Returns the number of field in the given statement

mysqli_stmt::fetch
mysqli_free_result
MySQLi_STMT
PHP Manual

mysqli_stmt->field_count

mysqli_stmt_field_count

(PHP 5)

mysqli_stmt->field_count -- mysqli_stmt_field_count — Returns the number of field in the given statement

Descrição

Estilo orientado a objetos

int $field_count;

Estilo de procedimentos

int mysqli_stmt::mysqli_stmt_field_count ( mysqli_stmt $stmt )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mysqli_stmt::fetch
mysqli_free_result
MySQLi_STMT


Libera a memória associada ao resultado

mysqli_stmt->field_count
mysqli_stmt::get_result
MySQLi_STMT
PHP Manual

mysqli_free_result

result->free

(PHP 5)

mysqli_free_result -- result->free — Libera a memória associada ao resultado

Descrição

Orientado a objeto (método):

void mysqli_stmt::free_result ( void )

Modo procedural:

void mysqli_stmt_free_result ( mysqli_stmt $stmt )

Libera o resultado da memória associado com o comando, que foi alocado por mysqli_stmt_store_result().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Não há valor retornado.

Veja Também

  • mysqli_stmt_store_result() - Transfers a result set from a prepared statement

mysqli_stmt->field_count
mysqli_stmt::get_result
MySQLi_STMT


Gets a result set from a prepared statement

mysqli_free_result
mysqli_stmt::get_warnings
MySQLi_STMT
PHP Manual

mysqli_stmt::get_result

mysqli_stmt_get_result

(No version information available, might only be in SVN)

mysqli_stmt::get_result -- mysqli_stmt_get_result — Gets a result set from a prepared statement

Descrição

Estilo orientado a objetos

bool mysqli_stmt::get_result ( void )

Estilo de procedimentos

bool mysqli_stmt_get_result ( mysqli_stmt $stmt )

Call to return a result set from a prepared statement query.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Returns a resultset.

Exemplos

Estilo orientado a objetos

<?php

$mysqli = new mysqli("127.0.0.1", "user", "password", "world");

if($mysqli->connect_error)
{
    die("$mysqli->connect_errno: $myslqi->connect_error");
}

$query = "SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1";

$stmt = $mysqli->stmt_init();
if(!$stmt->prepare($query))
{
    print "Failed to prepare statement\n";
}
else
{
    $stmt->bind_param("s", $continent);

    $continent_array = array('Europe','Africa','Asia','North America');

    foreach($continent_array as $continent)
    {
        $stmt->execute();
        $result = $stmt->get_result();
        while ($row = $result->fetch_array(MYSQLI_NUM))
        {
            foreach ($row as $r)
            {
                print "$r ";
            }
            print "\n";
        }
    }
}

$stmt->close();
$mysqli->close();
?>

Estilo de procedimentos

<?php

$link = mysqli_connect("127.0.0.1", "user", "password", "world");

if (!$link)
{
    $error = mysqli_connect_error();
    $errno = mysqli_connect_errno();
    print "$errno: $error\n";
    exit();
}

$query = "SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1";

$stmt = mysqli_stmt_init($link);
if(!mysqli_stmt_prepare($stmt, $query))
{
    print "Failed to prepare statement\n";
}
else
{
    mysqli_stmt_bind_param($stmt, "s", $continent);

    $continent_array = array('Europe','Africa','Asia','North America');

    foreach($continent_array as $continent)
    {
        mysqli_stmt_execute($stmt);
        $result = mysqli_stmt_get_result($stmt);
        while ($row = mysqli_fetch_array($result, MYSQLI_NUM))
        {
            foreach ($row as $r)
            {
                print "$r ";
            }
            print "\n";
        }
    }
}
mysqli_stmt_close($stmt);
mysqli_close($link);
?>

The above examples will output:

Albania 3401200 Europe
Algeria 31471000 Africa
Afghanistan 22720000 Asia
Anguilla 8000 North America

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_result_metadata() - Returns result set metadata from a prepared statement
  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis
  • mysqli_fetch_array() - Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_stmt_store_result() - Transfers a result set from a prepared statement

mysqli_free_result
mysqli_stmt::get_warnings
MySQLi_STMT


Get result of SHOW WARNINGS

mysqli_stmt::get_result
mysqli_stmt->insert_id
MySQLi_STMT
PHP Manual

mysqli_stmt::get_warnings

mysqli_stmt_get_warnings

(PHP 5 >= 5.1.0)

mysqli_stmt::get_warnings -- mysqli_stmt_get_warnings — Get result of SHOW WARNINGS

Descrição

Estilo orientado a objetos

object mysqli_stmt::get_warnings ( mysqli_stmt $stmt )

Estilo de procedimentos

object mysqli_stmt_get_warnings ( mysqli_stmt $stmt )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mysqli_stmt::get_result
mysqli_stmt->insert_id
MySQLi_STMT


Get the ID generated from the previous INSERT operation

mysqli_stmt::get_warnings
mysqli_stmt::num_rows
MySQLi_STMT
PHP Manual

mysqli_stmt->insert_id

mysqli_stmt_insert_id

(PHP 5)

mysqli_stmt->insert_id -- mysqli_stmt_insert_id — Get the ID generated from the previous INSERT operation

Descrição

Estilo orientado a objetos

int $insert_id;

Estilo de procedimentos

mixed mysqli_stmt::mysqli_stmt_insert_id ( mysqli_stmt $stmt )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mysqli_stmt::get_warnings
mysqli_stmt::num_rows
MySQLi_STMT


Return the number of rows in statements result set

mysqli_stmt->insert_id
mysqli_stmt->param_count
MySQLi_STMT
PHP Manual

mysqli_stmt::num_rows

mysqli_stmt_num_rows

(PHP 5)

mysqli_stmt::num_rows -- mysqli_stmt_num_rows — Return the number of rows in statements result set

Descrição

Estilo orientado a objetos

int $num_rows;

Estilo de procedimentos

int mysqli_stmt::mysqli_stmt_num_rows ( mysqli_stmt $stmt )

Returns the number of rows in the result set. The use of mysqli_stmt_num_rows() depends on whether or not you used mysqli_stmt_store_result() to buffer the entire result set in the statement handle.

If you use mysqli_stmt_store_result(), mysqli_stmt_num_rows() may be called immediately.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

An integer representing the number of rows in result set.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
if ($stmt = $mysqli->prepare($query)) {

    /* execute query */
    $stmt->execute();

    /* store result */
    $stmt->store_result();

    printf("Number of rows: %d.\n", $stmt->num_rows);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
if ($stmt = mysqli_prepare($link, $query)) {

    /* execute query */
    mysqli_stmt_execute($stmt);

    /* store result */
    mysqli_stmt_store_result($stmt);

    printf("Number of rows: %d.\n", mysqli_stmt_num_rows($stmt));

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Number of rows: 20.

Veja Também

  • mysqli_stmt_affected_rows() - Returns the total number of rows changed, deleted, or inserted by the last executed statement
  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_store_result() - Transfers a result set from a prepared statement

mysqli_stmt->insert_id
mysqli_stmt->param_count
MySQLi_STMT


Returns the number of parameter for the given statement

mysqli_stmt::num_rows
mysqli_stmt::prepare
MySQLi_STMT
PHP Manual

mysqli_stmt->param_count

mysqli_stmt_param_count

(PHP 5)

mysqli_stmt->param_count -- mysqli_stmt_param_count — Returns the number of parameter for the given statement

Descrição

Estilo orientado a objetos

int $param_count;

Estilo de procedimentos

int mysqli_stmt::mysqli_stmt_param_count ( mysqli_stmt $stmt )

Returns the number of parameter markers present in the prepared statement.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Returns an integer representing the number of parameters.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($stmt = $mysqli->prepare("SELECT Name FROM Country WHERE Name=? OR Code=?")) {

    $marker = $stmt->param_count;
    printf("Statement has %d markers.\n", $marker);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($stmt = mysqli_prepare($link, "SELECT Name FROM Country WHERE Name=? OR Code=?")) {

    $marker = mysqli_stmt_param_count($stmt);
    printf("Statement has %d markers.\n", $marker);

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Statement has 2 markers.

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution

mysqli_stmt::num_rows
mysqli_stmt::prepare
MySQLi_STMT


Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o

mysqli_stmt->param_count
mysqli_stmt::reset
MySQLi_STMT
PHP Manual

mysqli_stmt::prepare

mysqli_stmt_prepare

(PHP 5)

mysqli_stmt::prepare -- mysqli_stmt_prepare — Prepara uma declaraÃ§Ã£o SQL para execuÃ§Ã£o

Descrição

Estilo orientado a objeto (mÃ©todo)

mixed mysqli_stmt::prepare ( string $query )

Estilo procedural:

bool mysqli_stmt_prepare ( mysqli_stmt $stmt , string $query )

Prepares the SQL query pointed to by the null-terminated string query.

Os marcadores de parÃ¢metros devem ser ligados as variÃ¡veis da aplicaÃ§Ã£o utilizando-se mysqli_stmt_bind_param() e/ou mysqli_stmt_bind_result() antes de executar a declaraÃ§Ã£o ou trazer os resultados.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

query

A query, como uma string. Deve conter somente uma Ãºnica declaraÃ§Ã£o SQL.

VocÃª pode incluir um ou mais marcadores de parÃ¢metros na declaraÃ§Ã£o SQL colocando a interrogaÃ§Ã£o (?) nas posiÃ§Ãµes apropriadas.

Nota:

VocÃª nÃ£o deve adicionar um ponto-e-virgula ou \g para terminar a declaraÃ§Ã£o

Nota:

Os marcadores sÃ£o permitidos somente em alguns lugares das declaraÃ§Ãµes SQL. Por exemplo, eles sÃ£o permitidos na lista VALUES() de um INSERT (para especificar valores das colunas em uma linha), ou na comparaÃ§Ã£o de uma coluna na clÃ¡usula WHERE para especificar um valor de comparaÃ§Ã£o.

Entretanto, eles nÃ£o sÃ£o permitidos em identificadores (como nomes de tabela e coluna, na lista que nomeia os nomes das colunas a serem retornados por uma declaraÃ§Ã£o SELECT), ou para especificar ambos os operandos de um operador binÃ¡rio como o = sinal de igual. A Ãºltima restriÃ§Ã£o Ã© necessÃ¡ria pois seria impossÃvel determinar o tipo do parÃ¢metro. No geral, os parÃ¢metros sÃ£o permitidos somente em declaraÃ§Ãµes de Linguagem de ManipulaÃ§Ã£o de Dados (no inglÃªs DML), e nÃ£o em Linguagem DefiniÃ§Ã£o de Dados (DDL).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* verifica coenxÃ£o */
if (mysqli_connect_errno()) {
    printf("ConexÃ£o falhou: %s\n", mysqli_connect_error());
    exit();
}

$cidade = "Curitiba";

/* cria uma declaraÃ§Ã£o preparada */
$stmt =  $mysqli->stmt_init();
if ($stmt->prepare("SELECT Estado FROM Cidade WHERE Nome=?")) {

    /* atribui os parÃ¢metros aos marcadores */
    $stmt->bind_param("s", $cidade);

    /* executa a query */
    $stmt->execute();

    /* atribui as variÃ¡veis de resultado */
    $stmt->bind_result($estado);

    /* busca o valor */
    $stmt->fetch();

    printf("%s estÃ¡ no estado %s\n", $cidade, $estado);

    /* fecha a declaraÃ§Ã£o */
    $stmt->close();
}

/* fecha a conexÃ£o */
$mysqli->close();
?>

Exemplo #2 Estilo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* verifica coenxÃ£o */
if (mysqli_connect_errno()) {
    printf("ConexÃ£o falhou: %s\n", mysqli_connect_error());
    exit();
}

$cidade = "Curitiba";

/* cria uma declaraÃ§Ã£o preparada */
$stmt = mysqli_stmt_init($link);
if (mysqli_stmt_prepare($stmt, 'SELECT Estado FROM Cidade WHERE Nome=?')) {

    /* atribui os parÃ¢metros aos marcadores */
    mysqli_stmt_bind_param($stmt, "s", $cidade);

    /* executa a query */
    mysqli_stmt_execute($stmt);

    /* atribui as variÃ¡veis de resultado */
    mysqli_stmt_bind_result($stmt, $estado);

    /* busca o valor */
    mysqli_stmt_fetch($stmt);

    printf("%s estÃ¡ no estado %s\n", $cidade, $estado);

    /* fecha a declaraÃ§Ã£o */
    mysqli_stmt_close($stmt);
}

/* fecha a conexÃ£o */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Curitiba estÃ¡ no estado ParanÃ¡

Veja Também

mysqli_stmt_init() - Initializes a statement and returns an object for use with mysqli_stmt_prepare, mysqli_stmt_execute() - Executa uma preparada query, mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis, mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros, mysqli_stmt_bind_result() - Passa variáveis para um preparado comando por resultado armazenado mysqli_stmt_close() - Closes a prepared statement.

mysqli_stmt->param_count
mysqli_stmt::reset
MySQLi_STMT


Resets a prepared statement

mysqli_stmt::prepare
mysqli_stmt::result_metadata
MySQLi_STMT
PHP Manual

mysqli_stmt::reset

mysqli_stmt_reset

(PHP 5)

mysqli_stmt::reset -- mysqli_stmt_reset — Resets a prepared statement

Descrição

Estilo orientado a objetos

bool mysqli_stmt::reset ( void )

Estilo de procedimentos

bool mysqli_stmt_reset ( mysqli_stmt $stmt )

Resets a prepared statement on client and server to state after prepare.

It resets the statement on the server, data sent using mysqli_stmt_send_long_data(), unbuffered result sets and current errors. It does not clear bindings or stored result sets. Stored result sets will be cleared when executing the prepared statement (or closing it).

To prepare a statement with another query use function mysqli_stmt_prepare().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution

mysqli_stmt::prepare
mysqli_stmt::result_metadata
MySQLi_STMT


Returns result set metadata from a prepared statement

mysqli_stmt::reset
mysqli_stmt::send_long_data
MySQLi_STMT
PHP Manual

mysqli_stmt::result_metadata

mysqli_stmt_result_metadata

(PHP 5)

mysqli_stmt::result_metadata -- mysqli_stmt_result_metadata — Returns result set metadata from a prepared statement

Descrição

Estilo orientado a objetos

mysqli_result mysqli_stmt::result_metadata ( void )

Estilo de procedimentos

mysqli_result mysqli_stmt_result_metadata ( mysqli_stmt $stmt )

If a statement passed to mysqli_prepare() is one that produces a result set, mysqli_stmt_result_metadata() returns the result object that can be used to process the meta information such as total number of fields and individual field information.

Nota:

This result set pointer can be passed as an argument to any of the field-based functions that process result set metadata, such as:

  • mysqli_num_fields()

  • mysqli_fetch_field()

  • mysqli_fetch_field_direct()

  • mysqli_fetch_fields()

  • mysqli_field_count()

  • mysqli_field_seek()

  • mysqli_field_tell()

  • mysqli_free_result()

The result set structure should be freed when you are done with it, which you can do by passing it to mysqli_free_result()

Nota:

The result set returned by mysqli_stmt_result_metadata() contains only metadata. It does not contain any row results. The rows are obtained by using the statement handle with mysqli_stmt_fetch().

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Returns a result object or FALSE if an error occurred.

Exemplos

Exemplo #1 Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

$mysqli->query("DROP TABLE IF EXISTS friends");
$mysqli->query("CREATE TABLE friends (id int, name varchar(20))");

$mysqli->query("INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

$stmt = $mysqli->prepare("SELECT id, name FROM friends");
$stmt->execute();

/* get resultset for metadata */
$result = $stmt->result_metadata();

/* retrieve field information from metadata result set */
$field = $result->fetch_field();

printf("Fieldname: %s\n", $field->name);

/* close resultset */
$result->close();

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

mysqli_query($link, "DROP TABLE IF EXISTS friends");
mysqli_query($link, "CREATE TABLE friends (id int, name varchar(20))");

mysqli_query($link, "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

$stmt = mysqli_prepare($link, "SELECT id, name FROM friends");
mysqli_stmt_execute($stmt);

/* get resultset for metadata */
$result = mysqli_stmt_result_metadata($stmt);

/* retrieve field information from metadata result set */
$field = mysqli_fetch_field($result);

printf("Fieldname: %s\n", $field->name);

/* close resultset */
mysqli_free_result($result);

/* close connection */
mysqli_close($link);
?>

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_free_result() - Frees the memory associated with a result

mysqli_stmt::reset
mysqli_stmt::send_long_data
MySQLi_STMT


Send data in blocks

mysqli_stmt::result_metadata
mysqli_stmt::sqlstate
MySQLi_STMT
PHP Manual

mysqli_stmt::send_long_data

mysqli_stmt_send_long_data

(PHP 5)

mysqli_stmt::send_long_data -- mysqli_stmt_send_long_data — Send data in blocks

Descrição

Estilo orientado a objetos

bool mysqli_stmt::send_long_data ( int $param_nr , string $data )

Estilo de procedimentos

bool mysqli_stmt_send_long_data ( mysqli_stmt $stmt , int $param_nr , string $data )

Allows to send parameter data to the server in pieces (or chunks), e.g. if the size of a blob exceeds the size of max_allowed_packet. This function can be called multiple times to send the parts of a character or binary data value for a column, which must be one of the TEXT or BLOB datatypes.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

param_nr

Indicates which parameter to associate the data with. Parameters are numbered beginning with 0.

data

A string containing data to be sent.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Estilo orientado a objetos

<?php
$stmt = $mysqli->prepare("INSERT INTO messages (message) VALUES (?)");
$null = NULL;
$stmt->bind_param("b", $null);
$fp = fopen("messages.txt", "r");
while (!feof($fp)) {
    $stmt->send_long_data(0, fread($fp, 8192));
}
fclose($fp);
$stmt->execute();
?>

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros

mysqli_stmt::result_metadata
mysqli_stmt::sqlstate
MySQLi_STMT


Returns SQLSTATE error from previous statement operation

mysqli_stmt::send_long_data
mysqli_stmt::store_result
MySQLi_STMT
PHP Manual

mysqli_stmt::sqlstate

mysqli_stmt_sqlstate

(PHP 5)

mysqli_stmt::sqlstate -- mysqli_stmt_sqlstate — Returns SQLSTATE error from previous statement operation

Descrição

Estilo orientado a objetos

string $sqlstate;

Estilo de procedimentos

string mysqli_stmt::mysqli_stmt_sqlstate ( mysqli_stmt $stmt )

Returns a string containing the SQLSTATE error code for the most recently invoked prepared statement function that can succeed or fail. The error code consists of five characters. '00000' means no error. The values are specified by ANSI SQL and ODBC. For a list of possible values, see » http://dev.mysql.com/doc/mysql/en/error-handling.html.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Returns a string containing the SQLSTATE error code for the last error. The error code consists of five characters. '00000' means no error.

Notas

Nota:

Note that not all MySQL errors are yet mapped to SQLSTATE's. The value HY000 (general error) is used for unmapped errors.

Exemplos

Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$mysqli->query("CREATE TABLE myCountry LIKE Country");
$mysqli->query("INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = $mysqli->prepare($query)) {

    /* drop table */
    $mysqli->query("DROP TABLE myCountry");

    /* execute query */
    $stmt->execute();

    printf("Error: %s.\n", $stmt->sqlstate);

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

mysqli_query($link, "CREATE TABLE myCountry LIKE Country");
mysqli_query($link, "INSERT INTO myCountry SELECT * FROM Country");

$query = "SELECT Name, Code FROM myCountry ORDER BY Name";
if ($stmt = mysqli_prepare($link, $query)) {

    /* drop table */
    mysqli_query($link, "DROP TABLE myCountry");

    /* execute query */
    mysqli_stmt_execute($stmt);

    printf("Error: %s.\n", mysqli_stmt_sqlstate($stmt));

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Error: 42S02.

Veja Também

  • mysqli_stmt_errno() - Returns the error code for the most recent statement call
  • mysqli_stmt_error() - Returns a string description for last statement error

mysqli_stmt::send_long_data
mysqli_stmt::store_result
MySQLi_STMT


Transfers a result set from a prepared statement

mysqli_stmt::sqlstate
MySQLi_Result
MySQLi_STMT
PHP Manual

mysqli_stmt::store_result

mysqli_stmt_store_result

(PHP 5)

mysqli_stmt::store_result -- mysqli_stmt_store_result — Transfers a result set from a prepared statement

Descrição

Estilo orientado a objetos

bool mysqli_stmt::store_result ( void )

Estilo de procedimentos

bool mysqli_stmt_store_result ( mysqli_stmt $stmt )

You must call mysqli_stmt_store_result() for every query that successfully produces a result set (SELECT, SHOW, DESCRIBE, EXPLAIN), and only if you want to buffer the complete result set by the client, so that the subsequent mysqli_stmt_fetch() call returns buffered data.

Nota:

It is unnecessary to call mysqli_stmt_store_result() for other queries, but if you do, it will not harm or cause any notable performance in all cases. You can detect whether the query produced a result set by checking if mysqli_stmt_result_metadata() returns NULL.

Parâmetros

stmt

Apenas para estilo de procedimento: Um identificador de statement retornado por mysqli_stmt_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Estilo orientado a objetos

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
if ($stmt = $mysqli->prepare($query)) {

    /* execute query */
    $stmt->execute();

    /* store result */
    $stmt->store_result();

    printf("Number of rows: %d.\n", $stmt->num_rows);

    /* free result */
    $stmt->free_result();

    /* close statement */
    $stmt->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
if ($stmt = mysqli_prepare($link, $query)) {

    /* execute query */
    mysqli_stmt_execute($stmt);

    /* store result */
    mysqli_stmt_store_result($stmt);

    printf("Number of rows: %d.\n", mysqli_stmt_num_rows($stmt));

    /* free result */
    mysqli_stmt_free_result($stmt);

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Number of rows: 20.

Veja Também

  • mysqli_prepare() - Prepare an SQL statement for execution
  • mysqli_stmt_result_metadata() - Returns result set metadata from a prepared statement
  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis

mysqli_stmt::sqlstate
MySQLi_Result
MySQLi_STMT


A classe MySQLi_Result

Introdução

Representa o conjunto de resultados da consulta feit ao banco de dados.

Sinopse da classe

MySQLi_Result {
/* Propriedades */
int $current_field ;
int $field_count;
array $lengths;
int $num_rows;
/* Métodos */
int MySQLi_Result::mysqli_field_tell ( mysqli_result $result )
bool mysqli_result::data_seek ( int $offset )
mixed mysqli_result::fetch_all ([ int $resulttype = MYSQLI_NUM ] )
array mysqli_result::fetch_assoc ( void )
object mysqli_result::fetch_field ( void )
array mysqli_result::fetch_fields ( void )
mixed mysqli_result::fetch_row ( void )
int mysqli_num_fields ( mysqli_result $result )
bool mysqli_result::field_seek ( int $fieldnr )
void mysqli_result::free ( void )
array mysqli_fetch_lengths ( mysqli_result $result )
int mysqli_num_rows ( mysqli_result $result )
}

Índice

  • mysqli_result->current_field — Get current field offset of a result pointer
  • mysqli_result::data_seek — Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados
  • mysqli_result::fetch_all — Fetches all result rows as an associative array, a numeric array, or both
  • mysqli_fetch_array — Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_result::fetch_assoc — Obtem uma linha do conjunto de resultados como uma matriz associativa
  • mysqli_fetch_field_direct — Obtem meta dados para um único campo
  • mysqli_result::fetch_field — Retorna o próximo campo no conjunto de resultados
  • mysqli_result::fetch_fields — Retorna uma matriz de objetos representando os campos em um conjunto de resultados
  • mysqli_fetch_object — Retorna a linha atual do conjunto de resultados como um objeto
  • mysqli_result::fetch_row — Obtém uma linha do resultado como uma matriz numerada
  • mysqli_result->field_count — Get the number of fields in a result
  • mysqli_field_seek — Move o ponteiro do resultado para um campo especificado
  • mysqli_result::free — Frees the memory associated with a result
  • mysqli_result->lengths — Returns the lengths of the columns of the current row in the result set
  • mysqli_result->num_rows — Gets the number of rows in a result
mysqli_stmt::store_result
mysqli_result->current_field
Mysqli


Get current field offset of a result pointer

MySQLi_Result
mysqli_result::data_seek
MySQLi_Result
PHP Manual

mysqli_result->current_field

mysqli_field_tell

(PHP 5)

mysqli_result->current_field -- mysqli_field_tell — Get current field offset of a result pointer

Descrição

Estilo orientado a objetos

int $current_field ;

Estilo de procedimentos

int mysqli_result::mysqli_field_tell ( mysqli_result $result )

Returns the position of the field cursor used for the last mysqli_fetch_field() call. This value can be used as an argument to mysqli_field_seek().

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Returns current offset of field cursor.

Exemplos

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for all columns */
    while ($finfo = $result->fetch_field()) {

        /* get fieldpointer offset */
        $currentfield = $result->current_field;

        printf("Column %d:\n", $currentfield);
        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = mysqli_query($link, $query)) {

    /* Get field information for all fields */
    while ($finfo = mysqli_fetch_field($result)) {

        /* get fieldpointer offset */
        $currentfield = mysqli_field_tell($result);

        printf("Column %d:\n", $currentfield);
        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);
    }
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Column 1:
Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Column 2:
Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4

Veja Também

  • mysqli_fetch_field() - Retorna o próximo campo no conjunto de resultados
  • mysqli_field_seek() - Move o ponteiro do resultado para um campo especificado

MySQLi_Result
mysqli_result::data_seek
MySQLi_Result


Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados

mysqli_result->current_field
mysqli_result::fetch_all
MySQLi_Result
PHP Manual

mysqli_result::data_seek

mysqli_data_seek

(PHP 5)

mysqli_result::data_seek -- mysqli_data_seek — Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados

Descrição

Estilo orientado a objetos (metodo):

bool mysqli_result::data_seek ( int $offset )

Estilo de procedimento:

bool mysqli_data_seek ( mysqli_result $result , int $offset )

A função mysqli_data_seek() move para um resultado arbritario especificado por offset no conjunto de resultados especificado por result. O parâmetro offset deve estar entre zero e o número total de linhas menos uma (0..mysqli_num_rows() - 1).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Esta função só pode ser usadas para consultas não guardadas em buffer guardadas com o uso de mysqli_store_result() ou mysqli_query().

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";
if ($result = $mysqli->query( $query)) {

    /* seek to row no. 400 */
    $result->data_seek(399);

    /* fetch row */
    $row = $result->fetch_row();

    printf ("City: %s  Countrycode: %s\n", $row[0], $row[1]);

    /* free result set*/
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (!$link) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";

if ($result = mysqli_query($link, $query)) {

    /* seek to row no. 400 */
    mysqli_data_seek($result, 399);

    /* fetch row */
    $row = mysqli_fetch_row($result);

    printf ("City: %s  Countrycode: %s\n", $row[0], $row[1]);

    /* free result set*/
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

City: Benin City  Countrycode: NGA

Veja Também

  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_fetch_row() - Obtém uma linha do resultado como uma matriz numerada
  • mysqli_fetch_array() - Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_fetch_assoc() - Obtem uma linha do conjunto de resultados como uma matriz associativa
  • mysqli_fetch_object() - Retorna a linha atual do conjunto de resultados como um objeto
  • mysqli_query() - Performs a query on the database
  • mysqli_num_rows() - Gets the number of rows in a result

mysqli_result->current_field
mysqli_result::fetch_all
MySQLi_Result


Fetches all result rows as an associative array, a numeric array, or both

mysqli_result::data_seek
mysqli_fetch_array
MySQLi_Result
PHP Manual

mysqli_result::fetch_all

mysqli_fetch_all

(PHP 5 >= 5.3.0)

mysqli_result::fetch_all -- mysqli_fetch_all — Fetches all result rows as an associative array, a numeric array, or both

Descrição

Estilo orientado a objetos

mixed mysqli_result::fetch_all ([ int $resulttype = MYSQLI_NUM ] )

Estilo de procedimentos

mixed mysqli_fetch_all ( mysqli_result $result [, int $resulttype = MYSQLI_NUM ] )

mysqli_fetch_all() fetches all result rows and returns the result set as an associative array, a numeric array, or both.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

resulttype

This optional parameter is a constant indicating what type of array should be produced from the current row data. The possible values for this parameter are the constants MYSQLI_ASSOC, MYSQLI_NUM, or MYSQLI_BOTH.

Valor Retornado

Returns an array of associative or numeric arrays holding result rows.

MySQL Native Driver Only

Disponível apenas com mysqlnd.

As mysqli_fetch_all() returns all the rows as an array in a single step, it may consume more memory than some similar functions such as mysqli_fetch_array(), which only returns one row at a time from the result set. Further, if you need to iterate over the result set, you will need a looping construct that will further impact performance. For these reasons mysqli_fetch_all() should only be used in those situations where the fetched result set will be sent to another layer for processing.

Veja Também

  • mysqli_fetch_array() - Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_query() - Performs a query on the database

mysqli_result::data_seek
mysqli_fetch_array
MySQLi_Result


Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas

mysqli_result::fetch_all
mysqli_result::fetch_assoc
MySQLi_Result
PHP Manual

mysqli_fetch_array

result->fetch_array

(PHP 5)

mysqli_fetch_array -- result->fetch_array — Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas

Descrição

Estilo de procedimento:

mixed mysqli_fetch_array ( object $result [, int $resulttype ] )

Estilo orientado a objetos (metodo):

mixed result::fetch_array ([ int $resulttype ] )

Retorna uma matriz que corresponde a linha obtida ou NULL se não houverem mais linhas para o conjunto deresultados representado pelo parâmetro result.

mysqli_fetch_array() é uma versão extendida da função mysqli_fetch_row(). Alem de guardar os dados em índices numéricos na matriz do resultado, a função mysqli_fetch_array() pode também guardar os dados em índices associativos, usando os nomes dos campos do conjunto de resultado como chave.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Se duas ou mais colunas do resultado tiverem o mesmo nome do campo, a ultima coluna terá precedencia e irá sobrescrever os dados anteriores. Para poder acessar múltiplas colunas com o mesmo nome, deve ser usada a versão com os índices numéricos.

O segundo arqumento, que é opcional, resulttype é uma constante indicando qual tipo de matriz deve ser produzido da linha atual do resultado. Os valores possíveis para este parâmetro são as constantes MYSQLI_ASSOC, MYSQLI_NUM, ou MYSQLI_BOTH. Pos padrão, a função mysqli_fetch_array() irá assumir MYSQLI_BOTH para este parâmetro.

Usando a constante MYSQLI_ASSOC esta função irá funcionar de modo identico a mysqli_fetch_assoc(), enquando MYSQLI_NUM irá funcionar de modo identico a função mysqli_fetch_row(). A opção final MYSQLI_BOTH irá criar uma única matriz com os atributos de ambas.

Valores de retorno

Retorna uma matriz que corresponde a linha obtida ou NULL se não houverem mais linhas no conjunto de resultados.

Veja também

mysqli_fetch_assoc(),
mysqli_fetch_row(),
mysqli_fetch_object().

Exemplo

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = $mysqli->query($query);

/* numeric array */
$row = $result->fetch_array(MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

/* associative array */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);

/* associative and numeric array */
$row = $result->fetch_array(MYSQLI_BOTH);
printf ("%s (%s)\n", $row[0], $row["CountryCode"]);

/* free result set */
$result->close();

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = mysqli_query($link, $query);

/* numeric array */
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

/* associative array */
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);

/* associative and numeric array */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf ("%s (%s)\n", $row[0], $row["CountryCode"]);

/* free result set */
mysqli_free_result($result);

/* close connection */
mysqli_close($link);
?>

Os exemplos acima devem produzir a seguinte saída:

Kabul (AFG)
Qandahar (AFG)
Herat (AFG)
mysqli_result::fetch_all
mysqli_result::fetch_assoc
MySQLi_Result


Obtem uma linha do conjunto de resultados como uma matriz associativa

mysqli_fetch_array
mysqli_fetch_field_direct
MySQLi_Result
PHP Manual

mysqli_result::fetch_assoc

mysqli_fetch_assoc

(PHP 5)

mysqli_result::fetch_assoc -- mysqli_fetch_assoc — Obtem uma linha do conjunto de resultados como uma matriz associativa

Descrição

Estilo orientado a objeto (metodo):

array mysqli_result::fetch_assoc ( void )

Estilo de procedimento:

array mysqli_fetch_assoc ( mysqli_result $result )

Retorna uma matriz associativa que corresponde a linha obtida, ou NULL se não houverem mais linhas.

A função mysqli_fetch_assoc() é usada para retornar uma matriz associativa representando a próxima linha no conjunto de resultados representado pelo parâmetro result, aonde cada chave representa o nome de uma coluna do conjunto de resultados.

Se duas ou mais colunas do resultado tiverem o mesmo nome do campo, a ultima coluna terá precedencia, Paa acessar as outra coluna(s) com o mesmo nome, você pode acessar o resultados com índices númericos usando a função mysqli_fetch_row() ou adicionar apelidos.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Retorna uma matriz que corresponde a linha obtida NULL se não houverem mais linhas no conjunto de resultados.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
    }

    /* free result set */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = mysqli_query($link, $query)) {

    /* fetch associative array */
    while ($row = mysqli_fetch_assoc($result)) {
        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
    }

    /* free result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Pueblo (USA)
Arvada (USA)
Cape Coral (USA)
Green Bay (USA)
Santa Clara (USA)

Veja Também

  • mysqli_fetch_array() - Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_fetch_row() - Obtém uma linha do resultado como uma matriz numerada
  • mysqli_fetch_object() - Retorna a linha atual do conjunto de resultados como um objeto
  • mysqli_query() - Performs a query on the database
  • mysqli_data_seek() - Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados

mysqli_fetch_array
mysqli_fetch_field_direct
MySQLi_Result


Obtem meta dados para um único campo

mysqli_result::fetch_assoc
mysqli_result::fetch_field
MySQLi_Result
PHP Manual

mysqli_fetch_field_direct

result->fetch_field_direct

(PHP 5)

mysqli_fetch_field_direct -- result->fetch_field_direct — Obtem meta dados para um único campo

Descrição

Estilo de procedimento:

mixed mysqli_fetch_field_direct ( object $result , int $fieldnr )

Estilo orientado a objeto (metodo):

mixed result::fetch_field_direct ( int $fieldnr )

mysqli_fetch_field_direct() retorna um objeto o qual contém informações da definição de um campo do conjunto de resultados especificado. O valor de fieldnr deve estar no intervalo entre 0 e número de campos - 1.

Valores de retorno

Retorna um objeto o qual contém informações das definições de um campo ou FALSE se não houver informações sobre o campo especificado com fieldnr disponíveis.

Atributos do objeto
Atibuto | Descrição
name | O nome da coluna
orgname | Nome original da coluna se foi especificado um alias
table | O nome da tabela a qual este campo pertence (se não for calculada)
orgtable | Nome da tabela original se foi especificado um alias
def | O valor padrão para este campo, representado por uma string
max_length | O limite de tamanho para o campo no conjunto de resultados.
flags | Um inteiro representando bit-flags para o campo.
type | O tipo de dados para este campo
decimals | O número de casas decimais usadas (para campos integer)

Veja também

mysqli_num_fields()
mysqli_fetch_field()
mysqli_fetch_fields()

Exemplo

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for column 'SurfaceArea' */
    $finfo = $result->fetch_field_direct(1);

    printf("Name:     %s\n", $finfo->name);
    printf("Table:    %s\n", $finfo->table);
    printf("max. Len: %d\n", $finfo->max_length);
    printf("Flags:    %d\n", $finfo->flags);
    printf("Type:     %d\n", $finfo->type);

    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";

if ($result = mysqli_query($link, $query)) {

    /* Get field information for column 'SurfaceArea' */
    $finfo = mysqli_fetch_field_direct($result, 1);

    printf("Name:     %s\n", $finfo->name);
    printf("Table:    %s\n", $finfo->table);
    printf("max. Len: %d\n", $finfo->max_length);
    printf("Flags:    %d\n", $finfo->flags);
    printf("Type:     %d\n", $finfo->type);

    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

Os exemplos acima devem produzir a seguinte saída:

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4
mysqli_result::fetch_assoc
mysqli_result::fetch_field
MySQLi_Result


Retorna o próximo campo no conjunto de resultados

mysqli_fetch_field_direct
mysqli_result::fetch_fields
MySQLi_Result
PHP Manual

mysqli_result::fetch_field

mysqli_fetch_field

(PHP 5)

mysqli_result::fetch_field -- mysqli_fetch_field — Retorna o próximo campo no conjunto de resultados

Descrição

Estilo orientado a objeto (metodo):

object mysqli_result::fetch_field ( void )

Estilo de procedimento:

object mysqli_fetch_field ( mysqli_result $result )

A função mysqli_fetch_field() retorna a definição de uma coluna do conjunto de resultados como um objeto. Utilize esta função repetidamente para obter sobre todas as colunas no conjunto de resultados. mysqli_fetch_field() retorna FALSE quando não houverem mais campos.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Retorna um objeto o qual contém informações sobre a definição do campoou FALSE se não houver informação sobre campos disponível.

Propriedades do objeto
Propriedade | Descrição
name | O nome da coluna
orgname | Nome original da coluna se foi especificado um alias
table | O nome da tabela a qual este campo pertence (se não for calculada)
orgtable | Nome da tabela original se foi especificado um alias
def | O valor padrão para este campo, representando como uma string
max_length | O tamanho máximo do campo no conjunto de resultados.
flags | Um inteiro representando bit-flags para o campo.
type | O tipo de dados usado para este campo
decimals | O número de decimais usados (par campos integer)

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for all columns */
    while ($finfo = $result->fetch_field()) {

        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = mysqli_query($link, $query)) {

    /* Get field information for all fields */
    while ($finfo = mysqli_fetch_field($result)) {

        printf("Name:     %s\n", $finfo->name);
        printf("Table:    %s\n", $finfo->table);
        printf("max. Len: %d\n", $finfo->max_length);
        printf("Flags:    %d\n", $finfo->flags);
        printf("Type:     %d\n\n", $finfo->type);
    }
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4

Veja Também

  • mysqli_num_fields() - Get the number of fields in a result
  • mysqli_fetch_field_direct() - Obtem meta dados para um único campo
  • mysqli_fetch_fields() - Retorna uma matriz de objetos representando os campos em um conjunto de resultados
  • mysqli_field_seek() - Move o ponteiro do resultado para um campo especificado

mysqli_fetch_field_direct
mysqli_result::fetch_fields
MySQLi_Result


Retorna uma matriz de objetos representando os campos em um conjunto de resultados

mysqli_result::fetch_field
mysqli_fetch_object
MySQLi_Result
PHP Manual

mysqli_result::fetch_fields

mysqli_fetch_fields

(PHP 5)

mysqli_result::fetch_fields -- mysqli_fetch_fields — Retorna uma matriz de objetos representando os campos em um conjunto de resultados

Descrição

Estilo orientado a objeto (metodo):

array mysqli_result::fetch_fields ( void )

Estilo de procedimento:

array mysqli_fetch_fields ( mysqli_result $result )

Esta função serve para o mesmo propósito que a função mysqli_fetch_field() com uma simples diferença, ao invés de retornar um objeto de cada vez para cada campo, as colunas são retornadas como uma matriz de objetos.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Retorna uma matriz de objetos o quais contém informações sobre as definições dos campo ou FALSE se não houver inforções dos campos disponíveis.

Propriedades dos objetos
Propriedade | Descrição
name | O nome da coluna
orgname | O nome original da coluna se foi especificado um alias
table | O nome da tabela a qual o campo pertence (se não for calculado)
orgtable | Nome da tabela original se foi especificado um alias
def | O valor padrão para este campo, representado como um string
max_length | A largura máxima do campo no conjunto de resultados.
length | O tamanho do campo, como específicado na definição da tabela.
charsetnr | O número do conjunto de caracteres do campo.
flags | Um inteiro representando bit-flags para o campo.
type | O tipo de dados usado para este campo
decimals | O número de decimais usados (para campos integer)

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for all columns */
    $finfo = $result->fetch_fields();

    foreach ($finfo as $val) {
        printf("Name:     %s\n", $val->name);
        printf("Table:    %s\n", $val->table);
        printf("max. Len: %d\n", $val->max_length);
        printf("Flags:    %d\n", $val->flags);
        printf("Type:     %d\n\n", $val->type);
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = mysqli_query($link, $query)) {

    /* Get field information for all columns */
    $finfo = mysqli_fetch_fields($result);

    foreach ($finfo as $val) {
        printf("Name:     %s\n", $val->name);
        printf("Table:    %s\n", $val->table);
        printf("max. Len: %d\n", $val->max_length);
        printf("Flags:    %d\n", $val->flags);
        printf("Type:     %d\n\n", $val->type);
    }
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4

Veja Também

  • mysqli_num_fields() - Get the number of fields in a result
  • mysqli_fetch_field_direct() - Obtem meta dados para um único campo
  • mysqli_fetch_field() - Retorna o próximo campo no conjunto de resultados

mysqli_result::fetch_field
mysqli_fetch_object
MySQLi_Result


Retorna a linha atual do conjunto de resultados como um objeto

mysqli_result::fetch_fields
mysqli_result::fetch_row
MySQLi_Result
PHP Manual

mysqli_fetch_object

result->fetch_object

(PHP 5)

mysqli_fetch_object -- result->fetch_object — Retorna a linha atual do conjunto de resultados como um objeto

Descrição

Estilo de procedimento:

mixed mysqli_fetch_object ( object $result )

Estilo orientado a objeto (metodo):

mixed result::fetch_object ( void )

A função mysqli_fetch_object() irá retornar a linha atual do conjunto de resultados como um objeto aonde os atributos do objeto representam os nomes dos campos encontrados no conjunto de resultados. Se não existirem mais linhas no conjunto de resultados atual, é retornado NULL.

Valores de retorno

Retorna um objeto que corresponde a linha obtida ou NULL se não houverem mais linhas no conjunto de resultados.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Veja também

mysqli_fetch_array(),
mysqli_fetch_assoc(),
mysqli_fetch_row().

Exemplo

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = $mysqli->query($query)) {

    /* fetch object array */
    while ($obj = $result->fetch_object()) {
        printf ("%s (%s)\n", $obj->Name, $obj->CountryCode);
    }

    /* free result set */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = mysqli_query($link, $query)) {

    /* fetch associative array */
    while ($obj = mysqli_fetch_object($result)) {
        printf ("%s (%s)\n", $obj->Name, $obj->CountryCode);
    }

    /* free result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

Os exemplos acima devem produzir a seguinte saída:

Pueblo (USA)
Arvada (USA)
Cape Coral (USA)
Green Bay (USA)
Santa Clara (USA)
mysqli_result::fetch_fields
mysqli_result::fetch_row
MySQLi_Result


Obtém uma linha do resultado como uma matriz numerada

mysqli_fetch_object
mysqli_result->field_count
MySQLi_Result
PHP Manual

mysqli_result::fetch_row

mysqli_fetch_row

(PHP 5)

mysqli_result::fetch_row -- mysqli_fetch_row — Obtém uma linha do resultado como uma matriz numerada

Descrição

Estilo orientado a objeto (metodo):

mixed mysqli_result::fetch_row ( void )

Estilo de procedimento:

mixed mysqli_fetch_row ( mysqli_result $result )

Retorna uma matriz que corresponde a linha obtida, NULL se não houverem mais linhas.

mysqli_fetch_row() obtém uma linha de dados do conjunto de resultados representado pelo parâmetro result é retorna-a como uma matriz numerada, onde cada coluna é guardada em um índice da matriz começando de 0 (zero). Cada utilização subseqüente de mysqli_fetch_row() irá retornar a próxima linha do conjunto de resultados, ou FALSE se não houverem mais linhas.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

mysqli_fetch_row() retorna uma matriz que corresponde a linha obtida ou NULL se não houverem mais linhas no conjunto de resultados.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Exemplos

Exemplo #1 Estilo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = $mysqli->query($query)) {

    /* fetch object array */
    while ($row = $result->fetch_row()) {
        printf ("%s (%s)\n", $row[0], $row[1]);
    }

    /* free result set */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = mysqli_query($link, $query)) {

    /* fetch associative array */
    while ($row = mysqli_fetch_row($result)) {
        printf ("%s (%s)\n", $row[0], $row[1]);
    }

    /* free result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Pueblo (USA)
Arvada (USA)
Cape Coral (USA)
Green Bay (USA)
Santa Clara (USA)

Veja Também

  • mysqli_fetch_array() - Obtem uma linha do resultado como uma matriz associativa, numérica, ou ambas
  • mysqli_fetch_assoc() - Obtem uma linha do conjunto de resultados como uma matriz associativa
  • mysqli_fetch_object() - Retorna a linha atual do conjunto de resultados como um objeto
  • mysqli_query() - Performs a query on the database
  • mysqli_data_seek() - Ajusta o ponteiro do resultado para uma linha arbritaria no conjunto de resutados

mysqli_fetch_object
mysqli_result->field_count
MySQLi_Result


Get the number of fields in a result

mysqli_result::fetch_row
mysqli_field_seek
MySQLi_Result
PHP Manual

mysqli_result->field_count

mysqli_num_fields

(PHP 5)

mysqli_result->field_count -- mysqli_num_fields — Get the number of fields in a result

Descrição

Estilo orientado a objetos

int $field_count;

Estilo de procedimentos

int mysqli_result::mysqli_num_fields ( mysqli_result $result )

Returns the number of fields from specified result set.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

The number of fields from a result set.

Exemplos

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($result = $mysqli->query("SELECT * FROM City ORDER BY ID LIMIT 1")) {

    /* determine number of fields in result set */
    $field_cnt = $result->field_count;

    printf("Result set has %d fields.\n", $field_cnt);

    /* close result set */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($result = mysqli_query($link, "SELECT * FROM City ORDER BY ID LIMIT 1")) {

    /* determine number of fields in result set */
    $field_cnt = mysqli_num_fields($result);

    printf("Result set has %d fields.\n", $field_cnt);

    /* close result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Result set has 5 fields.

Veja Também

  • mysqli_fetch_field() - Retorna o próximo campo no conjunto de resultados

mysqli_result::fetch_row
mysqli_field_seek
MySQLi_Result


Move o ponteiro do resultado para um campo especificado

mysqli_result->field_count
mysqli_result::free
MySQLi_Result
PHP Manual

mysqli_field_seek

result->field_seek

(PHP 5)

mysqli_field_seek -- result->field_seek — Move o ponteiro do resultado para um campo especificado

Descrição

Modo orientado a objeto (método):

bool mysqli_result::field_seek ( int $fieldnr )

Modo procedural:

bool mysqli_field_seek ( mysqli_result $result , int $fieldnr )

Define o cursor dos campo para o índice indicado. A próxima chamada a mysqli_fetch_field() irá retornar as informações da definição do campo com este índice.

Nota:

Para mover para o início da linha, passe um índice de valor zero.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

fieldnr

O número do campo. Este valor precisa estar num intervalo de 0 a numéro de campos - 1.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for 2nd column */
    $result->field_seek(1);
    $finfo = $result->fetch_field();

    printf("Name:     %s\n", $finfo->name);
    printf("Table:    %s\n", $finfo->table);
    printf("max. Len: %d\n", $finfo->max_length);
    printf("Flags:    %d\n", $finfo->flags);
    printf("Type:     %d\n\n", $finfo->type);

    $result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Modo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = mysqli_query($link, $query)) {

    /* Get field information for 2nd column */
    mysqli_field_seek($result, 1);
    $finfo = mysqli_fetch_field($result);

    printf("Name:     %s\n", $finfo->name);
    printf("Table:    %s\n", $finfo->table);
    printf("max. Len: %d\n", $finfo->max_length);
    printf("Flags:    %d\n", $finfo->flags);
    printf("Type:     %d\n\n", $finfo->type);

    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4

Veja Também

  • mysqli_fetch_field() - Retorna o próximo campo no conjunto de resultados

mysqli_result->field_count
mysqli_result::free
MySQLi_Result


Frees the memory associated with a result

mysqli_field_seek
mysqli_result->lengths
MySQLi_Result
PHP Manual

mysqli_result::free

mysqli_free_result

(PHP 5)

mysqli_result::free -- mysqli_free_result — Frees the memory associated with a result

Descrição

Estilo orientado a objetos

void mysqli_result::free ( void )
void mysqli_result::close ( void )
void mysqli_result::free_result ( void )

Estilo de procedimentos

void mysqli_free_result ( mysqli_result $result )

Frees the memory associated with the result.

Nota:

You should always free your result with mysqli_free_result(), when your result object is not needed anymore.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Não há valor retornado.

Veja Também

  • mysqli_query() - Performs a query on the database
  • mysqli_stmt_store_result() - Transfers a result set from a prepared statement
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_use_result() - Initiate a result set retrieval

mysqli_field_seek
mysqli_result->lengths
MySQLi_Result


Returns the lengths of the columns of the current row in the result set

mysqli_result::free
mysqli_result->num_rows
MySQLi_Result
PHP Manual

mysqli_result->lengths

mysqli_fetch_lengths

(PHP 5)

mysqli_result->lengths -- mysqli_fetch_lengths — Returns the lengths of the columns of the current row in the result set

Descrição

Estilo orientado a objetos

array $lengths;

Estilo de procedimentos

array mysqli_result::mysqli_fetch_lengths ( mysqli_result $result )

The mysqli_fetch_lengths() function returns an array containing the lengths of every column of the current row within the result set.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

An array of integers representing the size of each column (not including any terminating null characters). FALSE if an error occurred.

mysqli_fetch_lengths() is valid only for the current row of the result set. It returns FALSE if you call it before calling mysqli_fetch_row/array/object or after retrieving all rows in the result.

Exemplos

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT * from Country ORDER BY Code LIMIT 1";

if ($result = $mysqli->query($query)) {

    $row = $result->fetch_row();

    /* display column lengths */
    foreach ($result->lengths as $i => $val) {
        printf("Field %2d has Length %2d\n", $i+1, $val);
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT * from Country ORDER BY Code LIMIT 1";

if ($result = mysqli_query($link, $query)) {

    $row = mysqli_fetch_row($result);

    /* display column lengths */
    foreach (mysqli_fetch_lengths($result) as $i => $val) {
        printf("Field %2d has Length %2d\n", $i+1, $val);
    }
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Field  1 has Length  3
Field  2 has Length  5
Field  3 has Length 13
Field  4 has Length  9
Field  5 has Length  6
Field  6 has Length  1
Field  7 has Length  6
Field  8 has Length  4
Field  9 has Length  6
Field 10 has Length  6
Field 11 has Length  5
Field 12 has Length 44
Field 13 has Length  7
Field 14 has Length  3
Field 15 has Length  2
mysqli_result::free
mysqli_result->num_rows
MySQLi_Result


Gets the number of rows in a result

mysqli_result->lengths
MySQLi_Driver
MySQLi_Result
PHP Manual

mysqli_result->num_rows

mysqli_num_rows

(PHP 5)

mysqli_result->num_rows -- mysqli_num_rows — Gets the number of rows in a result

Descrição

Estilo orientado a objetos

int $num_rows;

Estilo de procedimentos

int mysqli_result::mysqli_num_rows ( mysqli_result $result )

Returns the number of rows in the result set.

The use of mysqli_num_rows() depends on whether you use buffered or unbuffered result sets. In case you use unbuffered resultsets mysqli_num_rows() will not return the correct number of rows until all the rows in the result have been retrieved.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Returns number of rows in the result set.

Nota:

If the number of rows is greater than maximal int value, the number will be returned as a string.

Exemplos

Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($result = $mysqli->query("SELECT Code, Name FROM Country ORDER BY Name")) {

    /* determine number of rows result set */
    $row_cnt = $result->num_rows;

    printf("Result set has %d rows.\n", $row_cnt);

    /* close result set */
    $result->close();
}

/* close connection */
$mysqli->close();
?>

Estilo de procedimentos

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($result = mysqli_query($link, "SELECT Code, Name FROM Country ORDER BY Name")) {

    /* determine number of rows result set */
    $row_cnt = mysqli_num_rows($result);

    printf("Result set has %d rows.\n", $row_cnt);

    /* close result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

The above examples will output:

Result set has 239 rows.

Veja Também

  • mysqli_affected_rows() - Retorna o número de linhas afetadas pela operação MySQL anterior
  • mysqli_store_result() - Transfers a result set from the last query
  • mysqli_use_result() - Initiate a result set retrieval
  • mysqli_query() - Performs a query on the database

mysqli_result->lengths
MySQLi_Driver
MySQLi_Result


The MySQLi_Driver class

Introdução

MySQLi Driver.

Sinopse da classe

MySQLi_Driver {
/* Properties */
public readonly string $client_info ;
public readonly string $client_version ;
public readonly string $driver_version ;
public readonly string $embedded ;
public bool $reconnect ;
public int $report_mode ;
/* Methods */
void mysqli_driver::embedded_server_end ( void )
bool mysqli_driver::embedded_server_start ( bool $start , array $arguments , array $groups )
}

Propriedades

client_info

The Client API header version

client_version

The Client version

driver_version

The MySQLi Driver version

embedded

Whether MySQLi Embedded support is enabled

reconnect

Allow or prevent reconnect (see the mysqli.reconnect INI directive)

report_mode

Set to MYSQLI_REPORT_OFF, MYSQLI_REPORT_ALL or any combination of MYSQLI_REPORT_STRICT (throw Exceptions for errors), MYSQLI_REPORT_ERROR (report errors) and MYSQLI_REPORT_INDEX (errors regarding indexes). See also mysqli_report().

Índice

  • mysqli_driver::embedded_server_end — Stop embedded server
  • mysqli_driver::embedded_server_start — Initialize and start embedded server
mysqli_result->num_rows
mysqli_driver::embedded_server_end
Mysqli


Stop embedded server

MySQLi_Driver
mysqli_driver::embedded_server_start
MySQLi_Driver
PHP Manual

mysqli_driver::embedded_server_end

mysqli_embedded_server_end

(PHP 5)

mysqli_driver::embedded_server_end -- mysqli_embedded_server_end — Stop embedded server

Descrição

Estilo orientado a objetos

void mysqli_driver::embedded_server_end ( void )

Estilo de procedimentos

void mysqli_embedded_server_end ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

MySQLi_Driver
mysqli_driver::embedded_server_start
MySQLi_Driver


Initialize and start embedded server

mysqli_driver::embedded_server_end
Apelidos e Funções obsoletas da Mysqli
MySQLi_Driver
PHP Manual

mysqli_driver::embedded_server_start

mysqli_embedded_server_start

(PHP 5)

mysqli_driver::embedded_server_start -- mysqli_embedded_server_start — Initialize and start embedded server

Descrição

Estilo orientado a objetos

bool mysqli_driver::embedded_server_start ( bool $start , array $arguments , array $groups )

Estilo de procedimentos

bool mysqli_embedded_server_start ( bool $start , array $arguments , array $groups )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

mysqli_driver::embedded_server_end
Apelidos e Funções obsoletas da Mysqli
MySQLi_Driver


Apelidos e Funções obsoletas da Mysqli

Índice

  • mysqli_bind_param — Apelido para mysqli_stmt_bind_param
  • mysqli_bind_result — Apelido para mysqli_stmt_bind_result
  • mysqli_client_encoding — Apelido para mysqli_character_set_name
  • mysqli_connect — Sinônimo de mysqli::__construct
  • mysqli_disable_reads_from_master — Desabilita leitura do master
  • mysqli_disable_rpl_parse — Desabilita análise RPL
  • mysqli_enable_reads_from_master — Habilita leitura do master
  • mysqli_enable_rpl_parse — Habilita análise RPL
  • mysqli_escape_string — Apelido para mysqli_real_escape_string
  • mysqli_execute — Apelido para mysqli_stmt_execute
  • mysqli_fetch — Apelido para mysqli_stmt_fetch
  • mysqli_get_cache_stats — Returns client Zval cache statistics
  • mysqli_get_metadata — Apelido para mysqli_stmt_result_metadata
  • mysqli_master_query — Força execução de uma query no master numa configuração master/slave
  • mysqli_param_count — Alias for mysqli_stmt_param_count
  • mysqli_report — Enables or disables internal report functions
  • mysqli_rpl_parse_enabled — Check if RPL parse is enabled
  • mysqli_rpl_probe — RPL probe
  • mysqli_rpl_query_type — Returns RPL query type
  • mysqli_send_long_data — Alias for mysqli_stmt_send_long_data
  • mysqli_send_query — Send the query and return
  • mysqli_set_opt — Alias of mysqli_options
  • mysqli_slave_query — Force execution of a query on a slave in a master/slave setup
mysqli_driver::embedded_server_start
mysqli_bind_param
Mysqli


Apelido para mysqli_stmt_bind_param

Apelidos e Funções obsoletas da Mysqli
mysqli_bind_result
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_bind_param

(PHP 5)

mysqli_bind_param — Apelido para mysqli_stmt_bind_param()

Descrição

Esta função é um apelido para mysqli_stmt_bind_param().

Notas

Nota:

mysqli_bind_param() esta obsoleta e será removida.

Veja Também

  • mysqli_stmt_bind_param() - Passa variáveis para um preparado comando como parâmetros

Apelidos e Funções obsoletas da Mysqli
mysqli_bind_result
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_stmt_bind_result

mysqli_bind_param
mysqli_client_encoding
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_bind_result

(PHP 5)

mysqli_bind_result — Apelido para mysqli_stmt_bind_result()

Descrição

Esta função é um apelido para mysqli_stmt_bind_result().

Notas

Nota:

mysqli_bind_result() esta obsoleta e será removida.

Veja Também

  • mysqli_stmt_bind_result() - Passa variáveis para um preparado comando por resultado armazenado

mysqli_bind_param
mysqli_client_encoding
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_character_set_name

mysqli_bind_result
mysqli_connect
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_client_encoding

(PHP 5)

mysqli_client_encoding — Apelido para mysqli_character_set_name()

Descrição

Esta função é um apelido para mysqli_character_set_name().

Veja Também

  • mysqli_real_escape_string() - Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

mysqli_bind_result
mysqli_connect
Apelidos e Funções obsoletas da Mysqli


Sinônimo de mysqli::__construct

mysqli_client_encoding
mysqli_disable_reads_from_master
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_connect

(PHP 5)

mysqli_connect — Sinônimo de mysqli::__construct()

Descrição

Esta função é um apelido para: mysqli::__construct()

mysqli_client_encoding
mysqli_disable_reads_from_master
Apelidos e Funções obsoletas da Mysqli


Desabilita leitura do master

mysqli_connect
mysqli_disable_rpl_parse
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_disable_reads_from_master

mysqli->disable_reads_from_master()

(PHP 5)

mysqli_disable_reads_from_master -- mysqli->disable_reads_from_master() — Desabilita leitura do master

Descrição

Modo procedural:

bool mysqli_disable_reads_from_master ( mysqli $link )

Modo orientado a objeto (método):

void mysqli::disable_reads_from_master ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_connect
mysqli_disable_rpl_parse
Apelidos e Funções obsoletas da Mysqli


Desabilita análise RPL

mysqli_disable_reads_from_master
mysqli_enable_reads_from_master
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_disable_rpl_parse

(PHP 5)

mysqli_disable_rpl_parse — Desabilita análise RPL

Descrição

bool mysqli_disable_rpl_parse ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_disable_reads_from_master
mysqli_enable_reads_from_master
Apelidos e Funções obsoletas da Mysqli


Habilita leitura do master

mysqli_disable_rpl_parse
mysqli_enable_rpl_parse
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_enable_reads_from_master

(PHP 5)

mysqli_enable_reads_from_master — Habilita leitura do master

Descrição

bool mysqli_enable_reads_from_master ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_disable_rpl_parse
mysqli_enable_rpl_parse
Apelidos e Funções obsoletas da Mysqli


Habilita análise RPL

mysqli_enable_reads_from_master
mysqli_escape_string
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_enable_rpl_parse

(PHP 5)

mysqli_enable_rpl_parse — Habilita análise RPL

Descrição

bool mysqli_enable_rpl_parse ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_enable_reads_from_master
mysqli_escape_string
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_real_escape_string

mysqli_enable_rpl_parse
mysqli_execute
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_escape_string

(PHP 5)

mysqli_escape_string — Apelido para mysqli_real_escape_string()

Descrição

Esta função é um apelido para mysqli_real_escape_string().

Veja Também

  • mysqli_real_escape_string() - Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection

mysqli_enable_rpl_parse
mysqli_execute
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_stmt_execute

mysqli_escape_string
mysqli_fetch
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_execute

(PHP 5)

mysqli_execute — Apelido para mysqli_stmt_execute()

Descrição

Esta função é um apelido para mysqli_stmt_execute().

Notas

Nota:

mysqli_execute() esta obsoleta e será removida.

Veja Também

  • mysqli_stmt_execute() - Executa uma preparada query

mysqli_escape_string
mysqli_fetch
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_stmt_fetch

mysqli_execute
mysqli_get_cache_stats
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_fetch

(PHP 5)

mysqli_fetch — Apelido para mysqli_stmt_fetch()

Descrição

Esta função é um apelido para mysqli_stmt_fetch().

Notas

Nota:

mysqli_fetch() é obsoleta e será removida.

Veja Também

  • mysqli_stmt_fetch() - Obtém resultados de um preparado comando e os coloca nas determinadas variáveis

mysqli_execute
mysqli_get_cache_stats
Apelidos e Funções obsoletas da Mysqli


Returns client Zval cache statistics

mysqli_fetch
mysqli_get_metadata
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_get_cache_stats

(PHP 5 >= 5.3.0)

mysqli_get_cache_stats — Returns client Zval cache statistics

Descrição

array mysqli_get_cache_stats ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns client Zval cache statistics. Disponível apenas com mysqlnd.

Parâmetros

Valor Retornado

Returns an array with client Zval cache stats if success, FALSE otherwise.

Exemplos

Exemplo #1 A mysqli_get_cache_stats() example

<?php
$link = mysqli_connect();
print_r(mysqli_get_cache_stats());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [bytes_sent] => 43
    [bytes_received] => 80
    [packets_sent] => 1
    [packets_received] => 2
    [protocol_overhead_in] => 8
    [protocol_overhead_out] => 4
    [bytes_received_ok_packet] => 11
    [bytes_received_eof_packet] => 0
    [bytes_received_rset_header_packet] => 0
    [bytes_received_rset_field_meta_packet] => 0
    [bytes_received_rset_row_packet] => 0
    [bytes_received_prepare_response_packet] => 0
    [bytes_received_change_user_packet] => 0
    [packets_sent_command] => 0
    [packets_received_ok] => 1
    [packets_received_eof] => 0
    [packets_received_rset_header] => 0
    [packets_received_rset_field_meta] => 0
    [packets_received_rset_row] => 0
    [packets_received_prepare_response] => 0
    [packets_received_change_user] => 0
    [result_set_queries] => 0
    [non_result_set_queries] => 0
    [no_index_used] => 0
    [bad_index_used] => 0
    [slow_queries] => 0
    [buffered_sets] => 0
    [unbuffered_sets] => 0
    [ps_buffered_sets] => 0
    [ps_unbuffered_sets] => 0
    [flushed_normal_sets] => 0
    [flushed_ps_sets] => 0
    [ps_prepared_never_executed] => 0
    [ps_prepared_once_executed] => 0
    [rows_fetched_from_server_normal] => 0
    [rows_fetched_from_server_ps] => 0
    [rows_buffered_from_client_normal] => 0
    [rows_buffered_from_client_ps] => 0
    [rows_fetched_from_client_normal_buffered] => 0
    [rows_fetched_from_client_normal_unbuffered] => 0
    [rows_fetched_from_client_ps_buffered] => 0
    [rows_fetched_from_client_ps_unbuffered] => 0
    [rows_fetched_from_client_ps_cursor] => 0
    [rows_skipped_normal] => 0
    [rows_skipped_ps] => 0
    [copy_on_write_saved] => 0
    [copy_on_write_performed] => 0
    [command_buffer_too_small] => 0
    [connect_success] => 1
    [connect_failure] => 0
    [connection_reused] => 0
    [reconnect] => 0
    [pconnect_success] => 0
    [active_connections] => 1
    [active_persistent_connections] => 0
    [explicit_close] => 0
    [implicit_close] => 0
    [disconnect_close] => 0
    [in_middle_of_command_close] => 0
    [explicit_free_result] => 0
    [implicit_free_result] => 0
    [explicit_stmt_close] => 0
    [implicit_stmt_close] => 0
    [mem_emalloc_count] => 0
    [mem_emalloc_ammount] => 0
    [mem_ecalloc_count] => 0
    [mem_ecalloc_ammount] => 0
    [mem_erealloc_count] => 0
    [mem_erealloc_ammount] => 0
    [mem_efree_count] => 0
    [mem_malloc_count] => 0
    [mem_malloc_ammount] => 0
    [mem_calloc_count] => 0
    [mem_calloc_ammount] => 0
    [mem_realloc_count] => 0
    [mem_realloc_ammount] => 0
    [mem_free_count] => 0
    [proto_text_fetched_null] => 0
    [proto_text_fetched_bit] => 0
    [proto_text_fetched_tinyint] => 0
    [proto_text_fetched_short] => 0
    [proto_text_fetched_int24] => 0
    [proto_text_fetched_int] => 0
    [proto_text_fetched_bigint] => 0
    [proto_text_fetched_decimal] => 0
    [proto_text_fetched_float] => 0
    [proto_text_fetched_double] => 0
    [proto_text_fetched_date] => 0
    [proto_text_fetched_year] => 0
    [proto_text_fetched_time] => 0
    [proto_text_fetched_datetime] => 0
    [proto_text_fetched_timestamp] => 0
    [proto_text_fetched_string] => 0
    [proto_text_fetched_blob] => 0
    [proto_text_fetched_enum] => 0
    [proto_text_fetched_set] => 0
    [proto_text_fetched_geometry] => 0
    [proto_text_fetched_other] => 0
    [proto_binary_fetched_null] => 0
    [proto_binary_fetched_bit] => 0
    [proto_binary_fetched_tinyint] => 0
    [proto_binary_fetched_short] => 0
    [proto_binary_fetched_int24] => 0
    [proto_binary_fetched_int] => 0
    [proto_binary_fetched_bigint] => 0
    [proto_binary_fetched_decimal] => 0
    [proto_binary_fetched_float] => 0
    [proto_binary_fetched_double] => 0
    [proto_binary_fetched_date] => 0
    [proto_binary_fetched_year] => 0
    [proto_binary_fetched_time] => 0
    [proto_binary_fetched_datetime] => 0
    [proto_binary_fetched_timestamp] => 0
    [proto_binary_fetched_string] => 0
    [proto_binary_fetched_blob] => 0
    [proto_binary_fetched_enum] => 0
    [proto_binary_fetched_set] => 0
    [proto_binary_fetched_geometry] => 0
    [proto_binary_fetched_other] => 0
)

Veja Também

  • Stats description

mysqli_fetch
mysqli_get_metadata
Apelidos e Funções obsoletas da Mysqli


Apelido para mysqli_stmt_result_metadata

mysqli_get_cache_stats
mysqli_master_query
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_get_metadata

(PHP 5)

mysqli_get_metadata — Apelido para mysqli_stmt_result_metadata()

Descrição

Esta função é um apelido para mysqli_stmt_result_metadata().

Notas

Nota:

mysqli_get_metadata() é obsoleta e será removida.

Veja Também

  • mysqli_stmt_result_metadata() - Returns result set metadata from a prepared statement

mysqli_get_cache_stats
mysqli_master_query
Apelidos e Funções obsoletas da Mysqli


Força execução de uma query no master numa configuração master/slave

mysqli_get_metadata
mysqli_param_count
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_master_query

(PHP 5)

mysqli_master_query — Força execução de uma query no master numa configuração master/slave

Descrição

bool mysqli_master_query ( mysqli $link , string $query )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_get_metadata
mysqli_param_count
Apelidos e Funções obsoletas da Mysqli


Alias for mysqli_stmt_param_count

mysqli_master_query
mysqli_report
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_param_count

(PHP 5)

mysqli_param_count — Alias for mysqli_stmt_param_count()

Descrição

This function is an alias of mysqli_stmt_param_count().

Notas

Nota:

mysqli_param_count() is deprecated and will be removed.

Veja Também

  • mysqli_stmt_param_count() - Returns the number of parameter for the given statement

mysqli_master_query
mysqli_report
Apelidos e Funções obsoletas da Mysqli


Enables or disables internal report functions

mysqli_param_count
mysqli_rpl_parse_enabled
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_report

(PHP 5)

mysqli_report — Enables or disables internal report functions

Descrição

bool mysqli_report ( int $flags )

mysqli_report() is a powerful function to improve your queries and code during development and testing phase. Depending on the flags it reports errors from mysqli function calls or queries which don't use an index (or use a bad index).

Parâmetros

flags

Supported flags
Name | Description
MYSQLI_REPORT_OFF | Turns reporting off
MYSQLI_REPORT_ERROR | Report errors from mysqli function calls
MYSQLI_REPORT_STRICT | Throw mysqli_sql_exception for errors instead of warnings
MYSQLI_REPORT_INDEX | Report if no index or bad index was used in a query
MYSQLI_REPORT_ALL | Set all options (report all)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.2.15 & 5.3.4 | Changing the reporting mode is now be per-request, rather than per-process.

Exemplos

Estilo orientado a objetos

<?php
/* activate reporting */
mysqli_report(MYSQLI_REPORT_ALL);

$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* this query should report an error */
$result = $mysqli->query("SELECT Name FROM Nonexistingtable WHERE population > 50000");

/* this query should report a bad index */
$result = $mysqli->query("SELECT Name FROM City WHERE population > 50000");
$result->close();

$mysqli->close();
?>

Veja Também

  • MySQLi_Driver::$report_mode
  • mysqli_debug() - Realiza operações de debug
  • mysqli_dump_debug_info() - Descarrega informação de debug no log

mysqli_param_count
mysqli_rpl_parse_enabled
Apelidos e Funções obsoletas da Mysqli


Check if RPL parse is enabled

mysqli_report
mysqli_rpl_probe
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_rpl_parse_enabled

(PHP 5)

mysqli_rpl_parse_enabled — Check if RPL parse is enabled

Descrição

int mysqli_rpl_parse_enabled ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_report
mysqli_rpl_probe
Apelidos e Funções obsoletas da Mysqli


RPL probe

mysqli_rpl_parse_enabled
mysqli_rpl_query_type
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_rpl_probe

(PHP 5)

mysqli_rpl_probe — RPL probe

Descrição

bool mysqli_rpl_probe ( mysqli $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_rpl_parse_enabled
mysqli_rpl_query_type
Apelidos e Funções obsoletas da Mysqli


Returns RPL query type

mysqli_rpl_probe
mysqli_send_long_data
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_rpl_query_type

mysqli->rpl_query_type

(PHP 5)

mysqli_rpl_query_type -- mysqli->rpl_query_type — Returns RPL query type

Descrição

Estilo orientado a objetos

int mysqli::rpl_query_type ( string $query )

Estilo de procedimentos

int mysqli_rpl_query_type ( mysqli $link , string $query )

Returns MYSQLI_RPL_MASTER, MYSQLI_RPL_SLAVE or MYSQLI_RPL_ADMIN depending on a query type. INSERT, UPDATE and similar are master queries, SELECT is slave, and FLUSH, REPAIR and similar are admin.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_rpl_probe
mysqli_send_long_data
Apelidos e Funções obsoletas da Mysqli


Alias for mysqli_stmt_send_long_data

mysqli_rpl_query_type
mysqli_send_query
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_send_long_data

(PHP 5)

mysqli_send_long_data — Alias for mysqli_stmt_send_long_data()

Descrição

This function is an alias of mysqli_stmt_send_long_data().

Notas

Nota:

mysqli_send_long_data() is deprecated and will be removed.

Veja Também

  • mysqli_stmt_send_long_data() - Send data in blocks

mysqli_rpl_query_type
mysqli_send_query
Apelidos e Funções obsoletas da Mysqli


Send the query and return

mysqli_send_long_data
mysqli_set_opt
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_send_query

mysqli->send_query

(PHP 5)

mysqli_send_query -- mysqli->send_query — Send the query and return

Descrição

Estilo orientado a objetos

bool mysqli::send_query ( string $query )

Estilo de procedimentos

bool mysqli_send_query ( mysqli $link , string $query )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_send_long_data
mysqli_set_opt
Apelidos e Funções obsoletas da Mysqli


Alias of mysqli_options

mysqli_send_query
mysqli_slave_query
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_set_opt

(PHP 5)

mysqli_set_opt — Alias of mysqli_options()

Descrição

This function is an alias of mysqli_options().

mysqli_send_query
mysqli_slave_query
Apelidos e Funções obsoletas da Mysqli


Force execution of a query on a slave in a master/slave setup

mysqli_set_opt
Mysqlnd
Apelidos e Funções obsoletas da Mysqli
PHP Manual

mysqli_slave_query

(PHP 5)

mysqli_slave_query — Force execution of a query on a slave in a master/slave setup

Descrição

bool mysqli_slave_query ( mysqli $link , string $query )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Aviso

Esta função tornou-se OBSOLETA e REMOVIDA do PHP 5.3.0.

mysqli_set_opt
Mysqlnd
Apelidos e Funções obsoletas da Mysqli


MySQL Native Driver

  • Introdução
  • Overview
  • Installation
  • Configurações em Execução
  • Persistent Connections
  • Statistics
  • Notes
  • MySQL Native Driver Plugin API
    • A comparison of mysqlnd plugins with MySQL Proxy
    • Obtaining the mysqlnd plugin API
    • MySQL Native Driver Plugin Architecture
    • The mysqlnd plugin API
    • Getting started building a mysqlnd plugin
mysqli_slave_query
Introdução
Vendor Specific Database Extensions


Introdução

This section of the manual provides an overview of the MySQL Native Driver.

Mysqlnd
Overview
Mysqlnd


Overview

MySQL Native Driver is a replacement for the MySQL Client Library (libmysql). MySQL Native Driver is part of the official PHP sources as of PHP 5.3.0.

The MySQL database extensions MySQL extension, mysqli and PDO MYSQL all communicate with the MySQL server. In the past, this was done by the extension using the services provided by the MySQL Client Library. The extensions were compiled against the MySQL Client Library in order to use its client-server protocol.

With MySQL Native Driver there is now an alternative, as the MySQL database extensions can be compiled to use MySQL Native Driver instead of the MySQL Client Library.

MySQL Native Driver is written in C as a PHP extension.

What it is not

Although MySQL Native Driver is written as a PHP extension, it is important to note that it does not provide a new API to the PHP programmer. The programmer APIs for MySQL database connectivity are provided by the MySQL extension, mysqli and PDO MYSQL. These extensions can now use the services of MySQL Native Driver to communicate with the MySQL Server. Therefore, you should not think of MySQL Native Driver as an API.

Why use it?

Using the MySQL Native Driver offers a number of advantages over using the MySQL Client Library.

The older MySQL Client Library was written by MySQL AB (now Oracle Corporation) and so was released under the MySQL license. This ultimately led to MySQL support being disabled by default in PHP. However, the MySQL Native Driver has been developed as part of the PHP project, and is therefore released under the PHP license. This removes licensing issues that have been problematic in the past.

Also, in the past, you needed to build the MySQL database extensions against a copy of the MySQL Client Library. This typically meant you needed to have MySQL installed on a machine where you were building the PHP source code. Also, when your PHP application was running, the MySQL database extensions would call down to the MySQL Client library file at run time, so the file needed to be installed on your system. With MySQL Native Driver that is no longer the case as it is included as part of the standard distribution. So you do not need MySQL installed in order to build PHP or run PHP database applications.

Because MySQL Native Driver is written as a PHP extension, it is tightly coupled to the workings of PHP. This leads to gains in efficiency, especially when it comes to memory usage, as the driver uses the PHP memory management system. It also supports the PHP memory limit. Using MySQL Native Driver leads to comparable or better performance than using MySQL Client Library, it always ensures the most efficient use of memory. One example of the memory efficiency is the fact that when using the MySQL Client Library, each row is stored in memory twice, whereas with the MySQL Native Driver each row is only stored once in memory.

Special features

MySQL Native Driver also provides some special features not available when the MySQL database extensions use MySQL Client Library. These special features are listed below:

  • Improved persistent connections

  • The special function mysqli_fetch_all()

  • Performance statistics calls:
mysqli_get_cache_stats(),
mysqli_get_client_stats(),
mysqli_get_connection_stats()

The performance statistics facility can prove to be very useful in identifying performance bottlenecks.

MySQL Native Driver also allows for persistent connections when used with the mysqli extension.

SSL Support

MySQL Native Driver has supported SSL since PHP version 5.3.3

Compressed Protocol Support

As of PHP 5.3.2 MySQL Native Driver supports the compressed client server protocol. MySQL Native Driver did not support this in 5.3.0 and 5.3.1. Extensions such as ext/mysql, ext/mysqli, that are configured to use MySQL Native Driver, can also take advantage of this feature. Note that PDO_MYSQL does NOT support compression when used together with mysqlnd.

Named Pipes Support

Named pipes support for Windows was added in PHP version 5.4.0.

Introdução
Installation
Mysqlnd


Installation

Installation on Unix

By default the MySQL database extensions are configured to use MySQL Client Library. In order to use the MySQL Native Driver, PHP needs to be built specifying that the MySQL database extensions are compiled with MySQL Native Driver support. This is done through configuration options prior to building the PHP source code.

For example, to build the MySQL extension, mysqli and PDO MYSQL using the MySQL Native Driver, the following command would be given:

./configure --with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
[other options]

Installation on Windows

In the official PHP distributions from 5.3 onwards, MySQL Native Driver is enabled by default, so no additional configuration is required to use it. All MySQL database extensions will use MySQL Native Driver in this case.

Overview
Configurações em Execução
Mysqlnd


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

MySQL Native Driver Configuration Options
Name | Default | Changeable | Changelog
mysqlnd.collect_statistics | "1" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
mysqlnd.collect_memory_statistics | "0" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
mysqlnd.debug | "0" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
mysqlnd.net_read_timeout | "31536000" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
mysqlnd.net_cmd_buffer_size | 5.3.0 - "2048", 5.3.1 - "4096" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
mysqlnd.net_read_buffer_size | "32768" | PHP_INI_SYSTEM | Available since PHP 5.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mysqlnd.collect_statistics boolean

Enables the collection of various client statistics which can be
accessed through mysqli_get_client_stats(),
mysqli_get_connection_stats(),
mysqli_get_cache_stats() and are shown in
mysqlnd section of the output of the
phpinfo() function as well.

This configuration setting enables all MySQL Native Driver statistics except those relating to memory management.

mysqlnd.collect_memory_statistics boolean

Enable the collection of various memory statistics which can be
accessed through mysqli_get_client_stats(),
mysqli_get_connection_stats(),
mysqli_get_cache_stats() and are shown in
mysqlnd section of the output of the
phpinfo() function as well.

This configuration setting enables the memory management statistics within the overall set of MySQL Native Driver statistics.

mysqlnd.debug string

Records communication from all extensions using mysqlnd to the specified log file.

The format of the directive is mysqlnd.debug = "option1[,parameter_option1][:option2[,parameter_option2]]".

The options for the format string are as follows:

  • A[,file] - Appends trace output to specified file. Also ensures that data is written after each write. This is done by closing and reopening the trace file (this is slow). It helps ensure a complete log file should the application crash.

  • a[,file] - Appends trace output to the specified file.

  • d - Enables output from DBUG_<N> macros for the current state. May be followed by a list of keywords which selects output only for the DBUG macros with that keyword. An empty list of keywords implies output for all macros.

  • f[,functions] - Limits debugger actions to the specified list of functions. An empty list of functions implies that all functions are selected.

  • F - Marks each debugger output line with the name of the source file containing the macro causing the output.

  • i - Marks each debugger output line with the PID of the current process.

  • L - Marks each debugger output line with the name of the source file line number of the macro causing the output.

  • n - Marks each debugger output line with the current function nesting depth

  • o[,file] - Similar to a[,file] but overwrites old file, and does not append.

  • O[,file] - Similar to A[,file] but overwrites old file, and does not append.

  • t[,N] - Enables function control flow tracing. The maximum nesting depth is specified by N, and defaults to 200.

  • x - This option activates profiling.

Example:

d:t:x:O,/tmp/mysqlnd.trace

Nota:

This feature is only available with a debug build of PHP. Works on Microsoft Windows if using a debug build of PHP and PHP was built using Microsoft Visual C version 9 and above.

mysqlnd.net_read_timeout integer

mysqlnd and the MySQL Client Library, libmysql use different networking APIs. mysqlnd uses PHP streams, whereas libmysql uses its own wrapper around the operating level network calls. PHP, by default, sets a read timeout of 60s for streams. This is set via php.ini, default_socket_timeout. This default applies to all streams that set no other timeout value. mysqlnd does not set any other value and therefore connections of long running queries can be disconnected after default_socket_timeout seconds resulting in an error message "2006 - MySQL Server has gone away". The MySQL Client Library sets a default timeout of 365 * 24 * 3600 seconds (1 year) and waits for other timeouts to occur, such as TCP/IP timeouts. mysqlnd now uses the same very long timeout. The value is configurable through a new php.ini setting: mysqlnd.net_read_timeout. mysqlnd.net_read_timeout gets used by any extension (ext/mysql, ext/mysqli, PDO_MySQL) that uses mysqlnd. mysqlnd tells PHP Streams to use mysqlnd.net_read_timeout. Please note that there may be subtle differences between MYSQL_OPT_READ_TIMEOUT from the MySQL Client Library and PHP Streams, for example MYSQL_OPT_READ_TIMEOUT is documented to work only for TCP/IP connections and, prior to MySQL 5.1.2, only for Windows. PHP streams may not have this limitation. Please check the streams documentation, if in doubt.

mysqlnd.net_cmd_buffer_size long

mysqlnd allocates an internal command/network buffer of mysqlnd.net_cmd_buffer_size (in php.ini) bytes for every connection. If a MySQL Client Server protocol command, for example, COM_QUERY ("normal" query), does not fit into the buffer, mysqlnd will grow the buffer to the size required for sending the command. Whenever the buffer gets extended for one connection, command_buffer_too_small will be incremented by one.

If mysqlnd has to grow the buffer beyond its initial size of mysqlnd.net_cmd_buffer_size bytes for almost every connection, you should consider increasing the default size to avoid re-allocations.

The default buffer size is 2048 bytes in PHP 5.3.0. In later versions the default is 4096 bytes. The default can changed either through the php.ini setting mysqlnd.net_cmd_buffer_size or using mysqli_options(MYSQLI_OPT_NET_CMD_BUFFER_SIZE, int size).

It is recommended that the buffer size be set to no less than 4096 bytes because mysqlnd also uses it when reading certain communication packet from MySQL. In PHP 5.3.0, mysqlnd will not grow the buffer if MySQL sends a packet that is larger than the current size of the buffer. As a consequence, mysqlnd is unable to decode the packet and the client application will get an error. There are only two situations when the packet can be larger than the 2048 bytes default of mysqlnd.net_cmd_buffer_size in PHP 5.3.0: the packet transports a very long error message, or the packet holds column meta data from COM_LIST_FIELD (mysql_list_fields() and the meta data come from a string column with a very long default value (>1900 bytes).

As of PHP 5.3.2 mysqlnd does not allow setting buffers smaller than 4096 bytes.

The value can also be set using mysqli_option(link, MYSQLI_OPT_NET_CMD_BUFFER_SIZE, size).

mysqlnd.net_read_buffer_size long

Maximum read chunk size in bytes when reading the body of a MySQL command packet. The MySQL client server protocol encapsulates all its commands in packets. The packets consist of a small header and a body with the actual payload. The size of the body is encoded in the header. mysqlnd reads the body in chunks of MIN(header.size, mysqlnd.net_read_buffer_size) bytes. If a packet body is larger than mysqlnd.net_read_buffer_size bytes, mysqlnd has to call read() multiple times.

The value can also be set using mysqli_optionS(link, MYSQLI_OPT_NET_READ_BUFFER_SIZE, size).

Installation
Persistent Connections
Mysqlnd


Persistent Connections

Using Persistent Connections

If mysqli is used with mysqlnd, when a persistent connection is created it generates a COM_CHANGE_USER (mysql_change_user()) call on the server. This ensures that re-authentication of the connection takes place.

As there is some overhead associated with the COM_CHANGE_USER call, it is possible to switch this off at compile time. Reusing a persistent connection will then generate a COM_PING (mysql_ping) call to simply test the connection is reusable.

Generation of COM_CHANGE_USER can be switched off with the compile flag MYSQLI_NO_CHANGE_USER_ON_PCONNECT. For example:

shell# CFLAGS="-DMYSQLI_NO_CHANGE_USER_ON_PCONNECT" ./configure --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql/bin/mysql_config --enable-debug && make clean && make -j6

Or alternatively:

shell# export CFLAGS="-DMYSQLI_NO_CHANGE_USER_ON_PCONNECT"
shell# configure --whatever-option
shell# make clean
shell# make

Note that only mysqli on mysqlnd uses COM_CHANGE_USER. Other extension-driver combinations use COM_PING on initial use of a persistent connection.

Configurações em Execução
Statistics
Mysqlnd


Statistics

Using Statistical Data

MySQL Native Driver contains support for gathering statistics on the communication between the client and the server. The statistics gathered are of three main types:

  • Client statistics

  • Connection statistics

  • Zval cache statistics

If you are using the mysqli extension, these statistics can be obtained through three API calls:

  • mysqli_get_client_stats()

  • mysqli_get_connection_stats()

  • mysqli_get_cache_stats()

Nota:

Statistics are aggregated among all extensions that use MySQL Native Driver. For example, when compiling both ext/mysql and ext/mysqli against MySQL Native Driver, both function calls of ext/mysql and ext/mysqli will change the statistics. There is no way to find out how much a certain API call of any extension that has been compiled against MySQL Native Driver has impacted a certain statistic. You can configure the PDO MySQL Driver, ext/mysql and ext/mysqli to optionally use the MySQL Native Driver. When doing so, all three extensions will change the statistics.

Accessing Client Statistics

To access client statistics, you need to call mysqli_get_client_stats(). The function call does not require any parameters.

The function returns an associative array that contains the name of the statistic as the key and the statistical data as the value.

Client statistics can also be accessed by calling the phpinfo() function.

Accessing Connection Statistics

To access connection statistics call mysqli_get_connection_stats(). This takes the database connection handle as the parameter.

The function returns an associative array that contains the name of the statistic as the key and the statistical data as the value.

Accessing Zval Cache Statistics

The MySQL Native Driver also collects statistics from its internal Zval cache. These statistics can be accessed by calling mysqli_get_cache_stats().

The Zval cache statistics obtained may lead to a tweaking of php.ini settings related to the Zval cache, resulting in better performance.

Buffered and Unbuffered Result Sets

Result sets can be buffered or unbuffered. Using default settings, ext/mysql and ext/mysqli work with buffered result sets for normal (non prepared statement) queries. Buffered result sets are cached on the client. After the query execution all results are fetched from the MySQL Server and stored in a cache on the client. The big advantage of buffered result sets is that they allow the server to free all resources allocated to a result set, once the results have been fetched by the client.

Unbuffered result sets on the other hand are kept much longer on the server. If you want to reduce memory consumption on the client, but increase load on the server, use unbuffered results. If you experience a high server load and the figures for unbuffered result sets are high, you should consider moving the load to the clients. Clients typically scale better than servers. "Load" does not only refer to memory buffers - the server also needs to keep other resources open, for example file handles and threads, before a result set can be freed.

Prepared Statements use unbuffered result sets by default. However, you can use mysqli_stmt_store_result() to enable buffered result sets.

Statistics returned by MySQL Native Driver

The following tables show a list of statistics returned by the
mysqli_get_client_stats(),
mysqli_get_connection_stats() and
mysqli_get_cache_stats() functions.

Network

Statistic | Scope | Description | Notes
bytes_sent | Connection | Number of bytes sent from PHP to the MySQL server | Can be used to check the efficiency of the compression protocol
bytes_received | Connection | Number of bytes received from MySQL server | Can be used to check the efficiency of the compression protocol
packets_sent | Connection | Number of MySQL Client Server protocol packets sent | Used for debugging Client Server protocol implementation
packets_received | Connection | Number of MySQL Client Server protocol packets received | Used for debugging Client Server protocol implementation
protocol_overhead_in | Connection | MySQL Client Server protocol overhead in bytes for incoming traffic. Currently only the Packet Header (4 bytes) is considered as overhead. protocol_overhead_in = packets_received * 4 | Used for debugging Client Server protocol implementation
protocol_overhead_out | Connection | MySQL Client Server protocol overhead in bytes for outgoing traffic. Currently only the Packet Header (4 bytes) is considered as overhead. protocol_overhead_out = packets_sent * 4 | Used for debugging Client Server protocol implementation
bytes_received_ok_packet | Connection | Total size of bytes of MySQL Client Server protocol OK packets received. OK packets can contain a status message. The length of the status message can vary and thus the size of an OK packet is not fixed. | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_ok | Connection | Number of MySQL Client Server protocol OK packets received. | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_eof_packet | Connection | Total size in bytes of MySQL Client Server protocol EOF packets received. EOF can vary in size depending on the server version. Also, EOF can transport an error message. | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_eof | Connection | Number of MySQL Client Server protocol EOF packets. Like with other packet statistics the number of packets will be increased even if PHP does not receive the expected packet but, for example, an error message. | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_rset_header_packet | Connection | Total size in bytes of MySQL Client Server protocol result set header packets. The size of the packets varies depending on the payload (LOAD LOCAL INFILE, INSERT, UPDATE, SELECT, error message). | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_rset_header | Connection | Number of MySQL Client Server protocol result set header packets. | Used for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_rset_field_meta_packet | Connection | Total size in bytes of MySQL Client Server protocol result set meta data (field information) packets. Of course the size varies with the fields in the result set. The packet may also transport an error or an EOF packet in case of COM_LIST_FIELDS. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_rset_field_meta | Connection | Number of MySQL Client Server protocol result set meta data (field information) packets. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_rset_row_packet | Connection | Total size in bytes of MySQL Client Server protocol result set row data packets. The packet may also transport an error or an EOF packet. You can reverse engineer the number of error and EOF packets by substracting rows_fetched_from_server_normal and rows_fetched_from_server_ps from bytes_received_rset_row_packet. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_rset_row | Connection | Number of MySQL Client Server protocol result set row data packets and their total size in bytes. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_prepare_response_packet | Connection | Total size in bytes of MySQL Client Server protocol OK for Prepared Statement Initialization packets (prepared statement init packets). The packet may also transport an error. The packet size depends on the MySQL version: 9 bytes with MySQL 4.1 and 12 bytes from MySQL 5.0 on. There is no safe way to know how many errors happened. You may be able to guess that an error has occurred if, for example, you always connect to MySQL 5.0 or newer and, bytes_received_prepare_response_packet != packets_received_prepare_response * 12. See also ps_prepared_never_executed, ps_prepared_once_executed. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_prepare_response | Connection | Number of MySQL Client Server protocol OK for Prepared Statement Initialization packets (prepared statement init packets). | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
bytes_received_change_user_packet | Connection | Total size in bytes of MySQL Client Server protocol COM_CHANGE_USER packets. The packet may also transport an error or EOF. | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_received_change_user | Connection | Number of MySQL Client Server protocol COM_CHANGE_USER packets | Only useful for debugging CS protocol implementation. Note that the total size in bytes includes the size of the header packet (4 bytes, see protocol overhead).
packets_sent_command | Connection | Number of MySQL Client Server protocol commands sent from PHP to MySQL. There is no way to know which specific commands and how many of them have been sent. At its best you can use it to check if PHP has sent any commands to MySQL to know if you can consider to disable MySQL support in your PHP binary. There is also no way to reverse engineer the number of errors that may have occurred while sending data to MySQL. The only error recoded is command_buffer_too_small (see below). | Only useful for debugging CS protocol implementation.
bytes_received_real_data_normal Connection Number of bytes of payload fetched by the PHP client from mysqlnd using the text protocol. This is the size of the actual data contained in result sets that do not originate from prepared statements and which have been fetched by the PHP client. Note that although a full result set may have been pulled from MySQL by mysqlnd, this statistic only counts actual data pulled from mysqlnd by the PHP client. An example of a code sequence that will increase the value is as follows:
$mysqli = new mysqli();
$res = $mysqli->query("SELECT 'abc'");
$res->fetch_assoc();
$res->close();

Every fetch operation will increase the value.

The statistic will not be increased if the result set is only buffered on the client, but not fetched, such as in the following example:

$mysqli = new mysqli();
$res = $mysqli->query("SELECT 'abc'");
$res->close();

This statistic is available as of PHP version 5.3.4.

bytes_received_real_data_ps | Connection | Number of bytes of the payload fetched by the PHP client from mysqlnd using the prepared statement protocol. | This is the size of the actual data contained in result sets that originate from prepared statements and which has been fetched by the PHP client. The value will not be increased if the result set is not subsequently read by the PHP client. Note that although a full result set may have been pulled from MySQL by mysqlnd, this statistic only counts actual data pulled from mysqlnd by the PHP client. See also bytes_received_real_data_normal. This statistic is available as of PHP version 5.3.4.

Result Set

Statistic | Scope | Description | Notes
result_set_queries | Connection | Number of queries that have generated a result set. Examples of queries that generate a result set: SELECT, SHOW. The statistic will not be incremented if there is an error reading the result set header packet from the line. | You may use it as an indirect measure for the number of queries PHP has sent to MySQL, for example, to identify a client that causes a high database load.
non_result_set_queries | Connection | Number of queries that did not generate a result set. Examples of queries that do not generate a result set: INSERT, UPDATE, LOAD DATA, SHOW. The statistic will not be incremented if there is an error reading the result set header packet from the line. | You may use it as an indirect measure for the number of queries PHP has sent to MySQL, for example, to identify a client that causes a high database load.
no_index_used | Connection | Number of queries that have generated a result set but did not use an index (see also mysqld start option –log-queries-not-using-indexes). If you want these queries to be reported you can use mysqli_report(MYSQLI_REPORT_INDEX) to make ext/mysqli throw an exception. If you prefer a warning instead of an exception use mysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT).
bad_index_used | Connection | Number of queries that have generated a result set and did not use a good index (see also mysqld start option –log-slow-queries). | If you want these queries to be reported you can use mysqli_report(MYSQLI_REPORT_INDEX) to make ext/mysqli throw an exception. If you prefer a warning instead of an exception use mysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT)
slow_queries | Connection | SQL statements that took more than long_query_time seconds to execute and required at least min_examined_row_limit rows to be examined. | Not reported through mysqli_report()
buffered_sets | Connection | Number of buffered result sets returned by "normal" queries. "Normal" means "not prepared statement" in the following notes. | Examples of API calls that will buffer result sets on the client: mysql_query(), mysqli_query(), mysqli_store_result(), mysqli_stmt_get_result(). Buffering result sets on the client ensures that server resources are freed as soon as possible and it makes result set scrolling easier. The downside is the additional memory consumption on the client for buffering data. Note that mysqlnd (unlike the MySQL Client Library) respects the PHP memory limit because it uses PHP internal memory management functions to allocate memory. This is also the reason why memory_get_usage() reports a higer memory consumption when using mysqlnd instead of the MySQL Client Library. memory_get_usage() does not measure the memory consumption of the MySQL Client Library at all because the MySQL Client Library does not use PHP internal memory management functions monitored by the function!
unbuffered_sets | Connection | Number of unbuffered result sets returned by normal (non prepared statement) queries. | Examples of API calls that will not buffer result sets on the client: mysqli_use_result()
ps_buffered_sets | Connection | Number of buffered result sets returned by prepared statements. By default prepared statements are unbuffered. | Examples of API calls that will not buffer result sets on the client: mysqli_stmt_store_result
ps_unbuffered_sets | Connection | Number of unbuffered result sets returned by prepared statements. | By default prepared statements are unbuffered.
flushed_normal_sets Connection Number of result sets from normal (non prepared statement) queries with unread data which have been flushed silently for you. Flushing happens only with unbuffered result sets. Unbuffered result sets must be fetched completely before a new query can be run on the connection otherwise MySQL will throw an error. If the application does not fetch all rows from an unbuffered result set, mysqlnd does implicitly fetch the result set to clear the line. See also rows_skipped_normal, rows_skipped_ps. Some possible causes for an implicit flush:

  • Faulty client application

  • Client stopped reading after it found what it was looking for but has made MySQL calculate more records than needed

  • Client application has stopped unexpectedly

flushed_ps_sets Connection Number of result sets from prepared statements with unread data which have been flushed silently for you. Flushing happens only with unbuffered result sets. Unbuffered result sets must be fetched completely before a new query can be run on the connection otherwise MySQL will throw an error. If the application does not fetch all rows from an unbuffered result set, mysqlnd does implicitly fetch the result set to clear the line. See also rows_skipped_normal, rows_skipped_ps. Some possible causes for an implicit flush:

  • Faulty client application

  • Client stopped reading after it found what it was looking for but has made MySQL calculate more records than needed

  • Client application has stopped unexpectedly

ps_prepared_never_executed | Connection | Number of statements prepared but never executed. | Prepared statements occupy server resources. You should not prepare a statement if you do not plan to execute it.
ps_prepared_once_executed | Connection | Number of prepared statements executed only one. | One of the ideas behind prepared statements is that the same query gets executed over and over again (with different parameters) and some parsing and other preparation work can be saved, if statement execution is split up in separate prepare and execute stages. The idea is to prepare once and "cache" results, for example, the parse tree to be reused during multiple statement executions. If you execute a prepared statement only once the two stage processing can be inefficient compared to "normal" queries because all the caching means extra work and it takes (limited) server resources to hold the cached information. Consequently, prepared statements that are executed only once may cause performance hurts.
rows_fetched_from_server_normal, rows_fetched_from_server_ps | Connection | Total number of result set rows successfully fetched from MySQL regardless if the client application has consumed them or not. Some of the rows may not have been fetched by the client application but have been flushed implicitly. | See also packets_received_rset_row
rows_buffered_from_client_normal, rows_buffered_from_client_ps | Connection | Total number of succesfully buffered rows originating from a "normal" query or a prepared statement. This is the number of rows that have been fetched from MySQL and buffered on client. Note that there are two distinct statistics on rows that have been buffered (MySQL to mysqlnd internal buffer) and buffered rows that have been fetched by the client application (mysqlnd internal buffer to client application). If the number of buffered rows is higher than the number of fetched buffered rows it can mean that the client application runs queries that cause larger result sets than needed resulting in rows not read by the client. | Examples of queries that will buffer results: mysqli_query(), mysqli_store_result()
rows_fetched_from_client_normal_buffered, rows_fetched_from_client_ps_buffered | Connection | Total number of rows fetched by the client from a buffered result set created by a normal query or a prepared statement.
rows_fetched_from_client_normal_unbuffered, rows_fetched_from_client_ps_unbuffered | Connection | Total number of rows fetched by the client from a unbuffered result set created by a "normal" query or a prepared statement.
rows_fetched_from_client_ps_cursor | Connection | Total number of rows fetch by the client from a cursor created by a prepared statement.
rows_skipped_normal, rows_skipped_ps | Connection | Reserved for future use (currently not supported)
copy_on_write_saved, copy_on_write_performed | Process | With mysqlnd, variables returned by the extensions point into mysqlnd internal network result buffers. If you do not change the variables, fetched data will be kept only once in memory. If you change the variables, mysqlnd has to perform a copy-on-write to protect the internal network result buffers from being changed. With the MySQL Client Library you always hold fetched data twice in memory. Once in the internal MySQL Client Library buffers and once in the variables returned by the extensions. In theory mysqlnd can save up to 40% memory. However, note that the memory saving cannot be measured using memory_get_usage().
explicit_free_result, implicit_free_result | Connection, Process (only during prepared statement cleanup) | Total number of freed result sets. | The free is always considered explicit but for result sets created by an init command, for example, mysqli_options(MYSQLI_INIT_COMMAND , ...)
proto_text_fetched_null, proto_text_fetched_bit, proto_text_fetched_tinyint proto_text_fetched_short, proto_text_fetched_int24, proto_text_fetched_int proto_text_fetched_bigint, proto_text_fetched_decimal, proto_text_fetched_float proto_text_fetched_double, proto_text_fetched_date, proto_text_fetched_year proto_text_fetched_time, proto_text_fetched_datetime, proto_text_fetched_timestamp proto_text_fetched_string, proto_text_fetched_blob, proto_text_fetched_enum proto_text_fetched_set, proto_text_fetched_geometry, proto_text_fetched_other Connection Total number of columns of a certain type fetched from a normal query (MySQL text protocol). Mapping from C API / MySQL meta data type to statistics name:

  • MYSQL_TYPE_NULL - proto_text_fetched_null

  • MYSQL_TYPE_BIT - proto_text_fetched_bit

  • MYSQL_TYPE_TINY - proto_text_fetched_tinyint

  • MYSQL_TYPE_SHORT - proto_text_fetched_short

  • MYSQL_TYPE_INT24 - proto_text_fetched_int24

  • MYSQL_TYPE_LONG - proto_text_fetched_int

  • MYSQL_TYPE_LONGLONG - proto_text_fetched_bigint

  • MYSQL_TYPE_DECIMAL, MYSQL_TYPE_NEWDECIMAL - proto_text_fetched_decimal

  • MYSQL_TYPE_FLOAT - proto_text_fetched_float

  • MYSQL_TYPE_DOUBLE - proto_text_fetched_double

  • MYSQL_TYPE_DATE, MYSQL_TYPE_NEWDATE - proto_text_fetched_date

  • MYSQL_TYPE_YEAR - proto_text_fetched_year

  • MYSQL_TYPE_TIME - proto_text_fetched_time

  • MYSQL_TYPE_DATETIME - proto_text_fetched_datetime

  • MYSQL_TYPE_TIMESTAMP - proto_text_fetched_timestamp

  • MYSQL_TYPE_STRING, MYSQL_TYPE_VARSTRING, MYSQL_TYPE_VARCHAR - proto_text_fetched_string

  • MYSQL_TYPE_TINY_BLOB, MYSQL_TYPE_MEDIUM_BLOB, MYSQL_TYPE_LONG_BLOB, MYSQL_TYPE_BLOB - proto_text_fetched_blob

  • MYSQL_TYPE_ENUM - proto_text_fetched_enum

  • MYSQL_TYPE_SET - proto_text_fetched_set

  • MYSQL_TYPE_GEOMETRY - proto_text_fetched_geometry

  • Any MYSQL_TYPE_* not listed before (there should be none) - proto_text_fetched_other

Note that the MYSQL_*-type constants may not be associated with the very same SQL column types in every version of MySQL.

proto_binary_fetched_null, proto_binary_fetched_bit, proto_binary_fetched_tinyint proto_binary_fetched_short, proto_binary_fetched_int24, proto_binary_fetched_int, proto_binary_fetched_bigint, proto_binary_fetched_decimal, proto_binary_fetched_float, proto_binary_fetched_double, proto_binary_fetched_date, proto_binary_fetched_year, proto_binary_fetched_time, proto_binary_fetched_datetime, proto_binary_fetched_timestamp, proto_binary_fetched_string, proto_binary_fetched_blob, proto_binary_fetched_enum, proto_binary_fetched_set, proto_binary_fetched_geometry, proto_binary_fetched_other | Connection | Total number of columns of a certain type fetched from a prepared statement (MySQL binary protocol). | For type mapping see proto_text_* described in the preceding text.

Connection

Statistic | Scope | Description | Notes
connect_success, connect_failure | Connection | Total number of successful / failed connection attempt. | Reused connections and all other kinds of connections are included.
reconnect | Process | Total number of (real_)connect attempts made on an already opened connection handle. | The code sequence $link = new mysqli(...); $link->real_connect(...) will cause a reconnect. But $link = new mysqli(...); $link->connect(...) will not because $link->connect(...) will explicitly close the existing connection before a new connection is established.
pconnect_success | Connection | Total number of successful persistent connection attempts. | Note that connect_success holds the sum of successful persistent and non-persistent connection attempts. The number of successful non-persistent connection attempts is connect_success - pconnect_success.
active_connections | Connection | Total number of active persistent and non-persistent connections.
active_persistent_connections | Connection | Total number of active persistent connections. | The total number of active non-persistent connections is active_connections - active_persistent_connections.
explicit_close Connection Total number of explicitly closed connections (ext/mysqli only). Examples of code snippets that cause an explicit close :
$link = new mysqli(...); $link->close(...)
$link = new mysqli(...); $link->connect(...)
implicit_close Connection Total number of implicitly closed connections (ext/mysqli only). Examples of code snippets that cause an implicit close :

  • $link = new mysqli(...); $link->real_connect(...)

  • unset($link)

  • Persistent connection: pooled connection has been created with real_connect and there may be unknown options set - close implicitly to avoid returning a connection with unknown options

  • Persistent connection: ping/change_user fails and ext/mysqli closes the connection

  • end of script execution: close connections that have not been closed by the user

disconnect_close | Connection | Connection failures indicated by the C API call mysql_real_connect() during an attempt to establish a connection. | It is called disconnect_close because the connection handle passed to the C API call will be closed.
in_middle_of_command_close | Process | A connection has been closed in the middle of a command execution (outstanding result sets not fetched, after sending a query and before retrieving an answer, while fetching data, while transferring data with LOAD DATA). | Unless you use asynchronous queries this should only happen if your script stops unexpectedly and PHP shuts down the connections for you.
init_command_executed_count | Connection | Total number of init command executions, for example, mysqli_options(MYSQLI_INIT_COMMAND , ...). | The number of successful executions is init_command_executed_count - init_command_failed_count.
init_command_failed_count | Connection | Total number of failed init commands.

COM_* Commands

Statistic Scope Description Notes
com_quit, com_init_db, com_query, com_field_list, com_create_db, com_drop_db, com_refresh, com_shutdown, com_statistics, com_process_info, com_connect, com_process_kill, com_debug, com_ping, com_time, com_delayed_insert, com_change_user, com_binlog_dump, com_table_dump, com_connect_out, com_register_slave, com_stmt_prepare, com_stmt_execute, com_stmt_send_long_data, com_stmt_close, com_stmt_reset, com_stmt_set_option, com_stmt_fetch, com_daemon Connection Total number of attempts to send a certain COM_* command from PHP to MySQL.

The statistics are incremented after checking the line and immediately before sending the corresponding MySQL client server protocol packet. If mysqlnd fails to send the packet over the wire the statistics will not be decremented. In case of a failure mysqlnd emits a PHP warning "Error while sending %s packet. PID=%d."

Usage examples:

  • Check if PHP sends certain commands to MySQL, for example, check if a client sends COM_PROCESS_KILL

  • Calculate the average number of prepared statement executions by comparing COM_EXECUTE with COM_PREPARE

  • Check if PHP has run any non-prepared SQL statements by checking if COM_QUERY is zero

  • Identify PHP scripts that run an excessive number of SQL statements by checking COM_QUERY and COM_EXECUTE

Miscellaneous

Statistic | Scope | Description | Notes
explicit_stmt_close, implicit_stmt_close | Process | Total number of close prepared statements. | A close is always considered explicit but for a failed prepare.
mem_emalloc_count, mem_emalloc_ammount, mem_ecalloc_count, mem_ecalloc_ammount, mem_erealloc_count, mem_erealloc_ammount, mem_efree_count, mem_malloc_count, mem_malloc_ammount, mem_calloc_count, mem_calloc_ammount, mem_realloc_count, mem_realloc_ammount, mem_free_count | Process | Memory management calls. | Development only.
command_buffer_too_small Connection Number of network command buffer extensions while sending commands from PHP to MySQL.

mysqlnd allocates an internal command/network buffer of mysqlnd.net_cmd_buffer_size (php.ini) bytes for every connection. If a MySQL Client Server protocol command, for example, COM_QUERY (normal query), does not fit into the buffer, mysqlnd will grow the buffer to what is needed for sending the command. Whenever the buffer gets extended for one connection command_buffer_too_small will be incremented by one.

If mysqlnd has to grow the buffer beyond its initial size of mysqlnd.net_cmd_buffer_size (php.ini) bytes for almost every connection, you should consider to increase the default size to avoid re-allocations.

The default buffer size is 2048 bytes in PHP 5.3.0. In future versions the default will be 4kB or larger. The default can changed either through the php.ini setting mysqlnd.net_cmd_buffer_size or using mysqli_options(MYSQLI_OPT_NET_CMD_BUFFER_SIZE, int size).

It is recommended to set the buffer size to no less than 4096 bytes because mysqlnd also uses it when reading certain communication packet from MySQL. In PHP 5.3.0, mysqlnd will not grow the buffer if MySQL sends a packet that is larger than the current size of the buffer. As a consequence mysqlnd is unable to decode the packet and the client application will get an error. There are only two situations when the packet can be larger than the 2048 bytes default of mysqlnd.net_cmd_buffer_size in PHP 5.3.0: the packet transports a very long error message or the packet holds column meta data from COM_LIST_FIELD (mysql_list_fields()) and the meta data comes from a string column with a very long default value (>1900 bytes). No bug report on this exists - it should happen rarely.

As of PHP 5.3.2 mysqlnd does not allow setting buffers smaller than 4096 bytes.

connection_reused
Persistent Connections
Notes
Mysqlnd


Notes

This section provides a collection of miscellaneous notes on MySQL Native Driver usage.

  • Using mysqlnd means using PHP streams for underlying connectivity. For mysqlnd, the PHP streams documentation (Streams) should be consulted on such details as timeout settings, not the documentation for the MySQL Client Library.

Statistics
MySQL Native Driver Plugin API
Mysqlnd


MySQL Native Driver Plugin API

Índice

  • A comparison of mysqlnd plugins with MySQL Proxy
  • Obtaining the mysqlnd plugin API
  • MySQL Native Driver Plugin Architecture
  • The mysqlnd plugin API
  • Getting started building a mysqlnd plugin

The MySQL Native Driver Plugin API is a feature of MySQL Native Driver, or mysqlnd. Mysqlnd plugins operate in the layer between PHP applications and the MySQL server. This is comparable to MySQL Proxy. MySQL Proxy operates on a layer between any MySQL client application, for example, a PHP application and, the MySQL server. Mysqlnd plugins can undertake typical MySQL Proxy tasks such as load balancing, monitoring and performance optimizations. Due to the different architecture and location, mysqlnd plugins do not have some of MySQL Proxy's disadvantages. For example, with plugins, there is no single point of failure, no dedicated proxy server to deploy, and no new programming language to learn (Lua).

A mysqlnd plugin can be thought of as an extension to mysqlnd. Plugins can intercept the majority of mysqlnd functions. The mysqlnd functions are called by the PHP MySQL extensions such as ext/mysql, ext/mysqli, and PDO_MYSQL. As a result, it is possible for a mysqlnd plugin to intercept all calls made to these extensions from the client application.

Internal mysqlnd function calls can also be intercepted, or replaced. There are no restrictions on manipulating mysqlnd internal function tables. It is possible to set things up so that when certain mysqlnd functions are called by the extensions that use mysqlnd, the call is directed to the appropriate function in the mysqlnd plugin. The ability to manipulate mysqlnd internal function tables in this way allows maximum flexibility for plugins.

Mysqlnd plugins are in fact PHP Extensions, written in C, that use the mysqlnd plugin API (which is built into MySQL Native Driver, mysqlnd). Plugins can be made 100% transparent to PHP applications. No application changes are needed because plugins operate on a different layer. The mysqlnd plugin can be thought of as operating in a layer below mysqlnd.

The following list represents some possible applications of mysqlnd plugins.

  • Load Balancing

    • Read/Write Splitting. An example of this is the PECL/mysqlnd_ms (Master Slave) extension. This extension splits read/write queries for a replication setup.

    • Failover

    • Round-Robin, least loaded

  • Monitoring

    • Query Logging

    • Query Analysis

    • Query Auditing. An example of this is the PECL/mysqlnd_sip (SQL Injection Protection) extension. This extension inspects queries and executes only those that are allowed according to a ruleset.

  • Performance

    • Caching. An example of this is the PECL/mysqlnd_qc (Query Cache) extension.

    • Throttling

    • Sharding. An example of this is the PECL/mysqlnd_mc (Multi Connect) extension. This extension will attempt to split a SELECT statement into n-parts, using SELECT ... LIMIT part_1, SELECT LIMIT part_n. It sends the queries to distinct MySQL servers and merges the result at the client.

MySQL Native Driver Plugins Available

There are a number of mysqlnd plugins already available. These include:

  • PECL/mysqlnd_mc - Multi Connect plugin.

  • PECL/mysqlnd_ms - Master Slave plugin.

  • PECL/mysqlnd_qc - Query Cache plugin.

  • PECL/mysqlnd_pscache - Prepared Statement Handle Cache plugin.

  • PECL/mysqlnd_sip - SQL Injection Protection plugin.

  • PECL/mysqlnd_uh - User Handler plugin.

Notes
A comparison of mysqlnd plugins with MySQL Proxy
Mysqlnd


A comparison of mysqlnd plugins with MySQL Proxy

Mysqlnd plugins and MySQL Proxy are different technologies using different approaches. Both are valid tools for solving a variety of common tasks such as load balancing, monitoring, and performance enhancements. An important difference is that MySQL Proxy works with all MySQL clients, whereas mysqlnd plugins are specific to PHP applications.

As a PHP Extension, a mysqlnd plugin gets installed on the PHP application server, along with the rest of PHP. MySQL Proxy can either be run on the PHP application server or can be installed on a dedicated machine to handle multiple PHP application servers.

Deploying MySQL Proxy on the application server has two advantages:

  1. No single point of failure

  2. Easy to scale out (horizontal scale out, scale by client)

MySQL Proxy (and mysqlnd plugins) can solve problems easily which otherwise would have required changes to existing applications.

However, MySQL Proxy does have some disadvantages:

  • MySQL Proxy is a new component and technology to master and deploy.

  • MySQL Proxy requires knowledge of the Lua scripting language.

MySQL Proxy can be customized with C and Lua programming. Lua is the preferred scripting language of MySQL Proxy. For most PHP experts Lua is a new language to learn. A mysqlnd plugin can be written in C. It is also possible to write plugins in PHP using » PECL/mysqlnd_uh.

MySQL Proxy runs as a daemon - a background process. MySQL Proxy can recall earlier decisions, as all state can be retained. However, a mysqlnd plugin is bound to the request-based lifecycle of PHP. MySQL Proxy can also share one-time computed results among multiple application servers. A mysqlnd plugin would need to store data in a persistent medium to be able to do this. Another daemon would need to be used for this purpose, such as Memcache. This gives MySQL Proxy an advantage in this case.

MySQL Proxy works on top of the wire protocol. With MySQL Proxy you have to parse and reverse engineer the MySQL Client Server Protocol. Actions are limited to those that can be achieved by manipulating the communication protocol. If the wire protocol changes (which happens very rarely) MySQL Proxy scripts would need to be changed as well.

Mysqlnd plugins work on top of the C API, which mirrors the libmysql client and Connector/C APIs. This C API is basically a wrapper around the MySQL Client Server protocol, or wire protocol, as it is sometimes called. You can intercept all C API calls. PHP makes use of the C API, therefore you can hook all PHP calls, without the need to program at the level of the wire protocol.

Mysqlnd implements the wire protocol. Plugins can therefore parse, reverse engineer, manipulate and even replace the communication protocol. However, this is usually not required.

As plugins allow you to create implementations that use two levels (C API and wire protocol), they have greater flexibility than MySQL Proxy. If a mysqlnd plugin is implemented using the C API, any subsequent changes to the wire protocol do not require changes to the plugin itself.

MySQL Native Driver Plugin API
Obtaining the mysqlnd plugin API
MySQL Native Driver Plugin API


Obtaining the mysqlnd plugin API

The mysqlnd plugin API is simply part of the MySQL Native Driver PHP extension, ext/mysqlnd. Development started on the mysqlnd plugin API in December 2009. It is developed as part of the PHP source repository, and as such is available to the public either via SVN, or through source snapshot downloads.

The following table shows PHP versions and the corresponding mysqlnd version contained within.

PHP Version | MySQL Native Driver version
5.3.0 | 5.0.5
5.3.1 | 5.0.5
5.3.2 | 5.0.7
5.3.3 | 5.0.7
5.3.4 | 5.0.7

Plugin developers can determine the mysqlnd version through accessing MYSQLND_VERSION, which is a string of the format "mysqlnd 5.0.7-dev - 091210 - $Revision: 300535", or through MYSQLND_VERSION_ID, which is an integer such as 50007. Developers can calculate the version number as follows:

Version (part) | Example
Major*10000 | 5*10000 = 50000
Minor*100 | 0*100 = 0
Patch | 7 = 7
MYSQLND_VERSION_ID | 50007

During development, developers should refer to the mysqlnd version number for compatibility and version tests, as several iterations of mysqlnd could occur during the lifetime of a PHP development branch with a single PHP version number.

A comparison of mysqlnd plugins with MySQL Proxy
MySQL Native Driver Plugin Architecture
MySQL Native Driver Plugin API


MySQL Native Driver Plugin Architecture

This section provides an overview of the mysqlnd plugin architecture.

MySQL Native Driver Overview

Before developing mysqlnd plugins, it is useful to know a little of how mysqlnd itself is organized. Mysqlnd consists of the following modules:

Modules Statistics | mysqlnd_statistics.c
Connection | mysqlnd.c
Resultset | mysqlnd_result.c
Resultset Metadata | mysqlnd_result_meta.c
Statement | mysqlnd_ps.c
Network | mysqlnd_net.c
Wire protocol | mysqlnd_wireprotocol.c

C Object Oriented Paradigm

At the code level, mysqlnd uses a C pattern for implementing object orientation.

In C you use a struct to represent an object. Members of the struct represent object properties. Struct members pointing to functions represent methods.

Unlike with other languages such as C++ or Java, there are no fixed rules on inheritance in the C object oriented paradigm. However, there are some conventions that need to be followed that will be discussed later.

The PHP Life Cycle

When considering the PHP life cycle there are two basic cycles:

  • PHP engine startup and shutdown cycle

  • Request cycle

When the PHP engine starts up it will call the module initialization (MINIT) function of each registered extension. This allows each module to setup variables and allocate resources that will exist for the lifetime of the PHP engine process. When the PHP engine shuts down it will call the module shutdown (MSHUTDOWN) function of each extension.

During the lifetime of the PHP engine it will receive a number of requests. Each request constitutes another life cycle. On each request the PHP engine will call the request initialization function of each extension. The extension can perform any variable setup and resource allocation required for request processing. As the request cycle ends the engine calls the request shutdown (RSHUTDOWN) function of each extension so the extension can perform any cleanup required.

How a plugin works

A mysqlnd plugin works by intercepting calls made to mysqlnd by extensions that use mysqlnd. This is achieved by obtaining the mysqlnd function table, backing it up, and replacing it by a custom function table, which calls the functions of the plugin as required.

The following code shows how the mysqlnd function table is replaced:

/* a place to store orginal function table */
struct st_mysqlnd_conn_methods org_methods;

void minit_register_hooks(TSRMLS_D) {
  /* active function table */
  struct st_mysqlnd_conn_methods * current_methods
    = mysqlnd_conn_get_methods();

  /* backup original function table */
  memcpy(&org_methods, current_methods,
    sizeof(struct st_mysqlnd_conn_methods);

  /* install new methods */
  current_methods->query = MYSQLND_METHOD(my_conn_class, query);
}

Connection function table manipulations must be done during Module Initialization (MINIT). The function table is a global shared resource. In an multi-threaded environment, with a TSRM build, the manipulation of a global shared resource during the request processing will almost certainly result in conflicts.

Nota:

Do not use any fixed-size logic when manipulating the mysqlnd function table: new methods may be added at the end of the function table. The function table may change at any time in the future.

Calling parent methods

If the original function table entries are backed up, it is still possible to call the original function table entries - the parent methods.

In some cases, such as for Connection::stmt_init(), it is vital to call the parent method prior to any other activity in the derived method.

MYSQLND_METHOD(my_conn_class, query)(MYSQLND *conn,
  const char *query, unsigned int query_len TSRMLS_DC) {

  php_printf("my_conn_class::query(query = %s)\n", query);

  query = "SELECT 'query rewritten' FROM DUAL";
  query_len = strlen(query);

  return org_methods.query(conn, query, query_len); /* return with call to parent */
}

Extending properties

A mysqlnd object is represented by a C struct. It is not possible to add a member to a C struct at run time. Users of mysqlnd objects cannot simply add properties to the objects.

Arbitrary data (properties) can be added to a mysqlnd objects using an appropriate function of the mysqlnd_plugin_get_plugin_<object>_data() family. When allocating an object mysqlnd reserves space at the end of the object to hold a void * pointer to arbitrary data. mysqlnd reserves space for one void * pointer per plugin.

The following table shows how to calculate the position of the pointer for a specific plugin:

Memory address | Contents
0 | Beginning of the mysqlnd object C struct
n | End of the mysqlnd object C struct
n + (m x sizeof(void*)) | void* to object data of the m-th plugin

If you plan to subclass any of the mysqlnd object constructors, which is allowed, you must keep this in mind!

The following code shows extending properties:

/* any data we want to associate */
typedef struct my_conn_properties {
  unsigned long query_counter;
} MY_CONN_PROPERTIES;

/* plugin id */
unsigned int my_plugin_id;

void minit_register_hooks(TSRMLS_D) {
  /* obtain unique plugin ID */
  my_plugin_id = mysqlnd_plugin_register();
  /* snip - see Extending Connection: methods */
}

static MY_CONN_PROPERTIES** get_conn_properties(const MYSQLND *conn TSRMLS_DC) {
  MY_CONN_PROPERTIES** props;
  props = (MY_CONN_PROPERTIES**)mysqlnd_plugin_get_plugin_connection_data(
    conn, my_plugin_id);
  if (!props || !(*props)) {
    *props = mnd_pecalloc(1, sizeof(MY_CONN_PROPERTIES), conn->persistent);
    (*props)->query_counter = 0;
  }
  return props;
}

The plugin developer is responsible for the management of plugin data memory.

Use of the mysqlnd memory allocator is recommended for plugin data. These functions are named using the convention: mnd_*loc(). The mysqlnd allocator has some useful features, such as the ability to use a debug allocator in a non-debug build.

When and how to subclass

 | When to subclass? | Each instance has its own private function table? | How to subclass?
Connection (MYSQLND) | MINIT | No | mysqlnd_conn_get_methods()
Resultset (MYSQLND_RES) | MINIT or later | Yes | mysqlnd_result_get_methods() or object method function table manipulation
Resultset Meta (MYSQLND_RES_METADATA) | MINIT | No | mysqlnd_result_metadata_get_methods()
Statement (MYSQLND_STMT) | MINIT | No | mysqlnd_stmt_get_methods()
Network (MYSQLND_NET) | MINIT or later | Yes | mysqlnd_net_get_methods() or object method function table manipulation
Wire protocol (MYSQLND_PROTOCOL) | MINIT or later | Yes | mysqlnd_protocol_get_methods() or object method function table manipulation

You must not manipulate function tables at any time later than MINIT if it is not allowed according to the above table.

Some classes contain a pointer to the method function table. All instances of such a class will share the same function table. To avoid chaos, in particular in threaded environments, such function tables must only be manipulated during MINIT.

Other classes use copies of a globally shared function table. The class function table copy is created together with the object. Each object uses its own function table. This gives you two options: you can manipulate the default function table of an object at MINIT, and you can additionally refine methods of an object without impacting other instances of the same class.

The advantage of the shared function table approach is performance. There is no need to copy a function table for each and every object.

Constructors

Allocation, construction, reset | Can be modified? | Caller
Connection (MYSQLND) | mysqlnd_init() | No | mysqlnd_connect()
Resultset(MYSQLND_RES)

Allocation:

  • Connection::result_init()

Reset and re-initialized during:

  • Result::use_result()

  • Result::store_result

Yes, but call parent!

  • Connection::list_fields()

  • Statement::get_result()

  • Statement::prepare() (Metadata only)

  • Statement::resultMetaData()

Resultset Meta (MYSQLND_RES_METADATA) | Connection::result_meta_init() | Yes, but call parent! | Result::read_result_metadata()
Statement (MYSQLND_STMT) | Connection::stmt_init() | Yes, but call parent! | Connection::stmt_init()
Network (MYSQLND_NET) | mysqlnd_net_init() | No | Connection::init()
Wire protocol (MYSQLND_PROTOCOL) | mysqlnd_protocol_init() | No | Connection::init()

It is strongly recommended that you do not entirely replace a constructor. The constructors perform memory allocations. The memory allocations are vital for the mysqlnd plugin API and the object logic of mysqlnd. If you do not care about warnings and insist on hooking the constructors, you should at least call the parent constructor before doing anything in your constructor.

Regardless of all warnings, it can be useful to subclass constructors. Constructors are the perfect place for modifying the function tables of objects with non-shared object tables, such as Resultset, Network, Wire Protocol.

Destruction

 | Derived method must call parent? | Destructor
Connection | yes, after method execution | free_contents(), end_psession()
Resultset | yes, after method execution | free_result()
Resultset Meta | yes, after method execution | free()
Statement | yes, after method execution | dtor(), free_stmt_content()
Network | yes, after method execution | free()
Wire protocol | yes, after method execution | free()

The destructors are the appropriate place to free properties, mysqlnd_plugin_get_plugin_<object>_data().

The listed destructors may not be equivalent to the actual mysqlnd method freeing the object itself. However, they are the best possible place for you to hook in and free your plugin data. As with constructors you may replace the methods entirely but this is not recommended. If multiple methods are listed in the above table you will need to hook all of the listed methods and free your plugin data in whichever method is called first by mysqlnd.

The recommended method for plugins is to simply hook the methods, free your memory and call the parent implementation immediately following this.

Cuidado

Due to a bug in PHP versions 5.3.0 to 5.3.3, plugins do not associate plugin data with a persistent connection. This is because ext/mysql and ext/mysqli do not trigger all the necessary mysqlnd end_psession() method calls and the plugin may therefore leak memory. This has been fixed in PHP 5.3.4.

Obtaining the mysqlnd plugin API
The mysqlnd plugin API
MySQL Native Driver Plugin API


The mysqlnd plugin API

The following is a list of functions provided in the mysqlnd plugin API:

  • mysqlnd_plugin_register()

  • mysqlnd_plugin_count()

  • mysqlnd_plugin_get_plugin_connection_data()

  • mysqlnd_plugin_get_plugin_result_data()

  • mysqlnd_plugin_get_plugin_stmt_data()

  • mysqlnd_plugin_get_plugin_net_data()

  • mysqlnd_plugin_get_plugin_protocol_data()

  • mysqlnd_conn_get_methods()

  • mysqlnd_result_get_methods()

  • mysqlnd_result_meta_get_methods()

  • mysqlnd_stmt_get_methods()

  • mysqlnd_net_get_methods()

  • mysqlnd_protocol_get_methods()

There is no formal definition of what a plugin is and how a plugin mechanism works.

Components often found in plugins mechanisms are:

  • A plugin manager

  • A plugin API

  • Application services (or modules)

  • Application service APIs (or module APIs)

The mysqlnd plugin concept employs these features, and additionally enjoys an open architecture.

No Restrictions

A plugin has full access to the inner workings of mysqlnd. There are no security limits or restrictions. Everything can be overwritten to implement friendly or hostile algorithms. It is recommended you only deploy plugins from a trusted source.

As discussed previously, plugins can use pointers freely. These pointers are not restricted in any way, and can point into another plugin's data. Simple offset arithmetic can be used to read another plugin's data.

It is recommended that you write cooperative plugins, and that you always call the parent method. The plugins should always cooperate with mysqlnd itself.

Issues: an example of chaining and cooperation

Extension | mysqlnd.query() pointer | call stack if calling parent
ext/mysqlnd | mysqlnd.query() | mysqlnd.query
ext/mysqlnd_cache mysqlnd_cache.query()

  1. mysqlnd_cache.query()

  2. mysqlnd.query

ext/mysqlnd_monitor mysqlnd_monitor.query()

  1. mysqlnd_monitor.query()

  2. mysqlnd_cache.query()

  3. mysqlnd.query

In this scenario, a cache (ext/mysqlnd_cache) and a monitor (ext/mysqlnd_monitor) plugin are loaded. Both subclass Connection::query(). Plugin registration happens at MINIT using the logic shown previously. PHP calls extensions in alphabetical order by default. Plugins are not aware of each other and do not set extension dependencies.

By default the plugins call the parent implementation of the query method in their derived version of the method.

PHP Extension Recap

This is a recap of what happens when using an example plugin, ext/mysqlnd_plugin, which exposes the mysqlnd C plugin API to PHP:

  • Any PHP MySQL application tries to establish a connection to 192.168.2.29

  • The PHP application will either use ext/mysql, ext/mysqli or PDO_MYSQL. All three PHP MySQL extensions use mysqlnd to establish the connection to 192.168.2.29.

  • Mysqlnd calls its connect method, which has been subclassed by ext/mysqlnd_plugin.

  • ext/mysqlnd_plugin calls the userspace hook proxy::connect() registered by the user.

  • The userspace hook changes the connection host IP from 192.168.2.29 to 127.0.0.1 and returns the connection established by parent::connect().

  • ext/mysqlnd_plugin performs the equivalent of parent::connect(127.0.0.1) by calling the original mysqlnd method for establishing a connection.

  • ext/mysqlnd establishes a connection and returns to ext/mysqlnd_plugin. ext/mysqlnd_plugin returns as well.

  • Whatever PHP MySQL extension had been used by the application, it receives a connection to 127.0.0.1. The PHP MySQL extension itself returns to the PHP application. The circle is closed.

MySQL Native Driver Plugin Architecture
Getting started building a mysqlnd plugin
MySQL Native Driver Plugin API


Getting started building a mysqlnd plugin

It is important to remember that a mysqlnd plugin is itself a PHP extension.

The following code shows the basic structure of the MINIT function that will be used in the typical mysqlnd plugin:

/* my_php_mysqlnd_plugin.c */

 static PHP_MINIT_FUNCTION(mysqlnd_plugin) {
  /* globals, ini entries, resources, classes */

  /* register mysqlnd plugin */
  mysqlnd_plugin_id = mysqlnd_plugin_register();

  conn_m = mysqlnd_get_conn_methods();
  memcpy(org_conn_m, conn_m,
    sizeof(struct st_mysqlnd_conn_methods));

  conn_m->query = MYSQLND_METHOD(mysqlnd_plugin_conn, query);
  conn_m->connect = MYSQLND_METHOD(mysqlnd_plugin_conn, connect);
}

/* my_mysqlnd_plugin.c */

 enum_func_status MYSQLND_METHOD(mysqlnd_plugin_conn, query)(/* ... */) {
  /* ... */
}
enum_func_status MYSQLND_METHOD(mysqlnd_plugin_conn, connect)(/* ... */) {
  /* ... */
}

Task analysis: from C to userspace

 class proxy extends mysqlnd_plugin_connection {
  public function connect($host, ...) { .. }
}
mysqlnd_plugin_set_conn_proxy(new proxy());

Process:

  1. PHP: user registers plugin callback

  2. PHP: user calls any PHP MySQL API to connect to MySQL

  3. C: ext/*mysql* calls mysqlnd method

  4. C: mysqlnd ends up in ext/mysqlnd_plugin

  5. C: ext/mysqlnd_plugin

    1. Calls userspace callback

    2. Or orginal mysqlnd method, if userspace callback not set

You need to carry out the following:

  1. Write a class "mysqlnd_plugin_connection" in C

  2. Accept and register proxy object through "mysqlnd_plugin_set_conn_proxy()"

  3. Call userspace proxy methods from C (optimization - zend_interfaces.h)

Userspace object methods can either be called using call_user_function() or you can operate at a level closer to the Zend Engine and use zend_call_method().

Optimization: calling methods from C using zend_call_method

The following code snippet shows the prototype for the zend_call_method function, taken from zend_interfaces.h.

 ZEND_API zval* zend_call_method(
  zval **object_pp, zend_class_entry *obj_ce,
  zend_function **fn_proxy, char *function_name,
  int function_name_len, zval **retval_ptr_ptr,
  int param_count, zval* arg1, zval* arg2 TSRMLS_DC
);

Zend API supports only two arguments. You may need more, for example:

 enum_func_status (*func_mysqlnd_conn__connect)(
  MYSQLND *conn, const char *host,
  const char * user, const char * passwd,
  unsigned int passwd_len, const char * db,
  unsigned int db_len, unsigned int port,
  const char * socket, unsigned int mysql_flags TSRMLS_DC
);

To get around this problem you will need to make a copy of zend_call_method() and add a facility for additional parameters. You can do this by creating a set of MY_ZEND_CALL_METHOD_WRAPPER macros.

Calling PHP userspace

This code snippet shows the optimized method for calling a userspace function from C:

/* my_mysqlnd_plugin.c */

MYSQLND_METHOD(my_conn_class,connect)(
  MYSQLND *conn, const char *host /* ... */ TSRMLS_DC) {
  enum_func_status ret = FAIL;
  zval * global_user_conn_proxy = fetch_userspace_proxy();
  if (global_user_conn_proxy) {
    /* call userspace proxy */
    ret = MY_ZEND_CALL_METHOD_WRAPPER(global_user_conn_proxy, host, /*...*/);
  } else {
    /* or original mysqlnd method = do nothing, be transparent */
    ret = org_methods.connect(conn, host, user, passwd,
          passwd_len, db, db_len, port,
          socket, mysql_flags TSRMLS_CC);
  }
  return ret;
}

Calling userspace: simple arguments

/* my_mysqlnd_plugin.c */

 MYSQLND_METHOD(my_conn_class,connect)(
  /* ... */, const char *host, /* ...*/) {
  /* ... */
  if (global_user_conn_proxy) {
    /* ... */
    zval* zv_host;
    MAKE_STD_ZVAL(zv_host);
    ZVAL_STRING(zv_host, host, 1);
    MY_ZEND_CALL_METHOD_WRAPPER(global_user_conn_proxy, zv_retval, zv_host /*, ...*/);
    zval_ptr_dtor(&zv_host);
    /* ... */
  }
  /* ... */
}

Calling userspace: structs as arguments

/* my_mysqlnd_plugin.c */

MYSQLND_METHOD(my_conn_class, connect)(
  MYSQLND *conn, /* ...*/) {
  /* ... */
  if (global_user_conn_proxy) {
    /* ... */
    zval* zv_conn;
    ZEND_REGISTER_RESOURCE(zv_conn, (void *)conn, le_mysqlnd_plugin_conn);
    MY_ZEND_CALL_METHOD_WRAPPER(global_user_conn_proxy, zv_retval, zv_conn, zv_host /*, ...*/);
    zval_ptr_dtor(&zv_conn);
    /* ... */
  }
  /* ... */
}

The first argument of many mysqlnd methods is a C "object". For example, the first argument of the connect() method is a pointer to MYSQLND. The struct MYSQLND represents a mysqlnd connection object.

The mysqlnd connection object pointer can be compared to a standard I/O file handle. Like a standard I/O file handle a mysqlnd connection object shall be linked to the userspace using the PHP resource variable type.

From C to userspace and back

 class proxy extends mysqlnd_plugin_connection {
  public function connect($conn, $host, ...) {
    /* "pre" hook */
    printf("Connecting to host = '%s'\n", $host);
    debug_print_backtrace();
    return parent::connect($conn);
  }

  public function query($conn, $query) {
    /* "post" hook */
    $ret = parent::query($conn, $query);
    printf("Query = '%s'\n", $query);
    return $ret;
  }
}
mysqlnd_plugin_set_conn_proxy(new proxy());

PHP users must be able to call the parent implementation of an overwritten method.

As a result of subclassing it is possible to refine only selected methods and you can choose to have "pre" or "post" hooks.

Buildin class: mysqlnd_plugin_connection::connect()

/*  my_mysqlnd_plugin_classes.c */

 PHP_METHOD("mysqlnd_plugin_connection", connect) {
  /* ... simplified! ... */
  zval* mysqlnd_rsrc;
  MYSQLND* conn;
  char* host; int host_len;
  if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs",
    &mysqlnd_rsrc, &host, &host_len) == FAILURE) {
    RETURN_NULL();
  }
  ZEND_FETCH_RESOURCE(conn, MYSQLND* conn, &mysqlnd_rsrc, -1,
    "Mysqlnd Connection", le_mysqlnd_plugin_conn);
  if (PASS == org_methods.connect(conn, host, /* simplified! */ TSRMLS_CC))
    RETVAL_TRUE;
  else
    RETVAL_FALSE;
}
The mysqlnd plugin API
mysqlnd_qc
MySQL Native Driver Plugin API


Mysqlnd query result cache plugin

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
  • Constantes pré-definidas
  • Exemplos
    • Basic usage
    • Setting the TTL
    • Cache by default
    • Procedural user-defined storage handler
  • mysqlnd_qc Funções
    • mysqlnd_qc_change_handler — Change current storage handler
    • mysqlnd_qc_clear_cache — Flush all cache contents
    • mysqlnd_qc_get_cache_info — Returns information on the current handler, the number of cache entries and cache entries, if available
    • mysqlnd_qc_get_core_stats — Statistics collected by the core of the query cache
    • mysqlnd_qc_get_handler — Returns a list of available storage handler
    • mysqlnd_qc_get_query_trace_log — Returns a backtrace for each query inspected by the query cache
    • mysqlnd_qc_set_user_handlers — Sets the callback functions for a user-defined procedural storage handler
Getting started building a mysqlnd plugin
Introdução
Vendor Specific Database Extensions


Introdução

The mysqlnd query result cache plugin adds easy to use client-side query caching to all PHP MySQL extensions using mysqlnd.

As of version PHP 5.3.3 the MySQL native driver for PHP ( mysqlnd) features an internal plugin C API. C plugins, such as the query cache plugin, can extend the functionality of mysqlnd.

The MySQL native driver for PHP is a C library which ships together with PHP as of PHP 5.3.0. It serves as a drop-in replacement for the MySQL Client Library (AKA libmysql/libmysqlclient). Using mysqlnd has several advantages: no extra downloads because it comes with PHP, PHP license, lower memory consumption in certain cases, new functionality such as asynchronous queries.

Mysqlnd plugins such as the query cache plugin operate transparent from a user perspective. The cache plugin supports all PHP applications and all PHP MySQL extensions ( mysqli, mysql, PDO_MYSQL). It does not change existing APIs.

No significant application changes are required to cache a query. The cache has two operation modes. It will either cache all queries (not recommended) or only those queries marked with a certain SQL hint (recommended).

Key Features

  • Transparent and therefore easy to use

    • supports all PHP MySQL extensions

    • no API changes

    • very little application changes required

  • Flexible invalidation strategy

    • Time-to-Live (TTL)

    • user-defined

  • Storage with different scope and life-span

    • Default (Hash)

    • APC

    • MEMCACHE

    • sqlite

    • user-defined

Limitations

The query cache plugin prototype will not cache unbuffered queries or results from prepared statements. This limitation is likely to be lifted soon.

The following popular user API calls use buffered queries which can be cached:

  • mysqli

    • mysqli_query()

    • mysqli_real_query() + mysqli_store_result()

  • PDO_MYSQL

    • PDO::query() if PDO::ATTR_EMULATE_PREPARES = 1 (default setting)

  • mysql

    • mysql_query()

Architecture

The query cache is implemented as a PHP extension. It is written in C and operates under the hood of PHP. During the startup of the PHP interpreter it gets registered as a mysqlnd plugin to replace selected mysqlnd C methods.

At PHP run time it proxies queries send from mysqlnd (PHP) to the MySQL server. If a query string starts with the SQL hint ( /*qc=on*/) to enable caching of it and the query is not cached (cache miss), the query cache plugin will record the raw wire protocol data send from MySQL to PHP to answer the query. The query cache records the wire protocol data in its cache and replays it, if still valid, on a cache hit.

Note that the query cache does not hold decoded result sets consisting of zvals (C struct representing a PHP variable). It stores the raw wire data of the MySQL client server protocol. In case of a cache hits, mysqlnd still needs to decode the cached raw wire data into PHP variables before passing the result to the user space. This approach has one major advantage: simplicity. Furthermore this approach eliminates the need for serializing data for cache storage.

mysqlnd_qc
Instalação/Configuração
mysqlnd_qc


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
Introdução
Dependências
mysqlnd_qc


Dependências

PHP 5.3.3 or newer.

For using APC storage handler: APC 3.1.3p1-beta or newer.

For using MEMCACHE storage handler: libmemcache 0.38 or newer.

For using sqlite storage handler: sqlite3 bundled with PHP.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/mysqlnd_qc

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

mysqlnd_qc Opções de Configuração
Nome | Padrão | Modificável | Histórico
mysqlnd_qc.enable_qc | 1 | PHP_INI_SYSTEM |
mysqlnd_qc.ttl | 30 | PHP_INI_ALL |
mysqlnd_qc.cache_by_default | 0 | PHP_INI_ALL |
mysqlnd_qc.cache_no_table | 0 | PHP_INI_ALL |
mysqlnd_qc.use_request_time | 0 | PHP_INI_ALL |
mysqlnd_qc.time_statistics | 1 | PHP_INI_ALL |
mysqlnd_qc.collect_statistics | 0 | PHP_INI_ALL |
mysqlnd_qc.collect_query_trace | 0 | PHP_INI_SYSTEM |
mysqlnd_qc.query_trace_bt_depth | 3 | PHP_INI_SYSTEM |
mysqlnd_qc.slam_defense | 0 | PHP_INI_SYSTEM |
mysqlnd_qc.slam_defense_ttl | 30 | PHP_INI_SYSTEM |
mysqlnd_qc.collect_normalized_query_trace | 0 | PHP_INI_SYSTEM |
mysqlnd_qc.std_data_copy | 0 | PHP_INI_SYSTEM |
mysqlnd_qc.apc_prefix | qc_ | PHP_INI_ALL |
mysqlnd_qc.memc_server | 127.0.0.1 | PHP_INI_ALL |
mysqlnd_qc.memc_port | 11211 | PHP_INI_ALL |
mysqlnd_qc.sqlite_data_file | :memory: | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

mysqlnd_qc.enable_qc integer

Enables or disables the plugin. If disabled the extension will not plug into mysqlnd to proxy internal mysqlnd C API calls.

mysqlnd_qc.ttl integer

Default Time-to-Live (TTL) for cache entries in seconds.

mysqlnd_qc.cache_by_default integer

Cache all queries regardless if they begin with the SQL hint that enables caching of a query or not. Storage handler cannot overrule the setting. It is evaluated by the core of the plugin.

mysqlnd_qc.cache_no_table integer

Cache queries with no table name in any of columns meta data of their result set, e.g. SELECT SLEEP(1)?

mysqlnd_qc.use_request_time integer

Use PHP global request time to avoid gettimeofday() system calls? If using APC storage handler it should be set to the value of apc.use_request_time , if not warnings will be generated.

mysqlnd_qc.time_statistics integer

Collect run time and store time statistics using gettimeofday() system call? Data will be collected only if you also set mysqlnd_qc.collect_statistics = 1,

mysqlnd_qc.collect_statistics integer

Collect statistics for mysqlnd_qc_get_core_stats()()? Does not influence storage handler statistics! Handler statistics can be an integral part of the handler internal storage format. Thereofore, collection of some handler statistics cannot be disabled.

mysqlnd_qc.collect_query_trace integer

Collect query back traces?

mysqlnd_qc.query_trace_bt_depth integer

Maximum depth/level of a query code backtrace.

mysqlnd_qc.slam_defense integer

Activates handler based slam defense if available. Supported by Default and APC storage handler

mysqlnd_qc.slam_defense_ttl integer

TTL for stale cache entries which are served while another client updates the entries. Supported by APC storage handler.

mysqlnd_qc.collect_normalized_query_trace integer

Collect aggregated normalized query traces? The setting has no effect by default. You compile the extension using the define NORM_QUERY_TRACE_LOG to make use of the setting.

mysqlnd_qc.std_data_copy integer

Default storage handler: copy cached wire data? EXPERIMENTAL – use default setting!

mysqlnd_qc.apc_prefix string

The APC storage handler stores data in the APC user cache. The setting sets a prefix to be used for cache entries.

mysqlnd_qc.memc_server string

MEMCACHE storage handler: memcache server host.

mysqlnd_qc.memc_port integer

MEMCACHE storage handler: memcached server port.

mysqlnd_qc.sqlite_data_file string

sqlite storage handler: data file. Any setting but :memory: may be of little practical value.

Instalação
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SQL hint related

The query cache is controled by SQL hints. SQL hints are used to enable and disable caching. SQL hints can be used to set the TTL of a query.

The SQL hints recognized by the query cache can be manually changed at compile time. This makes it possible to use mysqlnd_qc in environments in which the default SQL hints are already taken and interpreted by other systems. Therefore it is recommended to use the SQL hint string constants instead of manually adding the default SQL hints to the query string.

<?php
/* Use constants for maximum portability */
$query = "/*" . MYSQLND_QC_ENABLE_SWITCH . "*/SELECT id FROM test";

/* Valid but less portable: default TTL */
$query = "/*qc=on*/SELECT id FROM test";

/* Valid but less portable: per statement TTL */
$query = "/*qc=on*//*qc_ttl=5*/SELECT id FROM test";

printf("MYSQLND_QC_ENABLE_SWITCH: %s\n", MYSQLND_QC_ENABLE_SWITCH);
printf("MYSQLND_QC_DISABLE_SWITCH: %s\n", MYSQLND_QC_DISABLE_SWITCH);
printf("MYSQLND_QC_TTL_SWITCH: %s\n", MYSQLND_QC_TTL_SWITCH);
?>

The above examples will output:

MYSQLND_QC_ENABLE_SWITCH: qc=on
MYSQLND_QC_DISABLE_SWITCH: qc=off
MYSQLND_QC_TTL_SWITCH: qc_ttl=

MYSQLND_QC_ENABLE_SWITCH ( string)
SQL hint used to enable caching of a query.
MYSQLND_QC_DISABLE_SWITCH ( string)
SQL hint used to disable caching of a query if mysqlnd_qc.cache_by_default = 1.
MYSQLND_QC_TTL_SWITCH ( string)
SQL hint used to set the TTL of a result set.

Configurações em Execução
Exemplos
mysqlnd_qc


Exemplos

Índice

  • Basic usage
  • Setting the TTL
  • Cache by default
  • Procedural user-defined storage handler
Constantes pré-definidas
Basic usage
mysqlnd_qc


Basic usage

The Query Cache plugin supports caching of queries issued by the following user API calls:

  • mysqli

    • mysqli_query()

    • mysqli_real_query() + mysqli_store_result()

  • PDO_MYSQL

    • PDO::query() if PDO::ATTR_EMULATE_PREPARES = 1 (default setting)

  • mysql

    • mysql_query()

A query which shall be cached must begin with the SQL hint /*qc=on*/. It is recommended to use the PHP constant MYSQLND_QC_ENABLE_SWITCH instead of using the string value.

  • uncached: SELECT id FROM test

  • cached: /*qc=on*/SELECT id FROM test

Example using the most advanced PHP MySQL API, which is mysqli :

<?php
/* Enable collection of query cache statistics */
ini_set("mysqlnd_qc.collect_statistics", 1);

/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

/* Will be cached because of the SQL hint: cache put and cache_miss */
$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

/* Will NOT be cached and will NOT hit the cache: no SQL hint */
$res = $mysqli->query("SELECT id FROM test WHERE id = 2");
var_dump($res->fetch_assoc());
$res->free();

/* Display cache statistics */
$stats = mysqlnd_qc_get_core_stats();
printf("Cache hit\t: %d\n",  $stats['cache_hit']);
printf("Cache miss\t: %d\n", $stats['cache_miss']);
printf("Cache put\t: %d\n",  $stats['cache_put']);

?>

The above examples will output:

array(1) {
  ["id"]=>
  string(1) "1"
}
array(1) {
  ["id"]=>
  string(1) "2"
}
Cache hit       : 0
Cache miss      : 1
Cache put       : 1

The default invalidation strategy of the cache is Time-to-Live ( TTL). Cache entries are valid for a certain duration. The default duration is set by the PHP configuration directive mysqlnd_qc.tll

Exemplos
Setting the TTL
Exemplos


Setting the TTL

The default invalidation strategy of the query cache plugin is Time-to-Live ( TTL). The built-in storage handler will use the default TTL defined by the PHP configuration value mysqlnd_qc.ttl unless the query string contains a hint for setting a different TTL. The TTL is specified in seconds.

Any TTL based cache can serve stale data. Cache entries are not automatically invalidated, if underlying data changes.

User-defined cache storage handler can implement any invalidation strategy to work around this limitation.

<?php
/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

printf("Default TTL\t: %d seconds\n", ini_get("mysqlnd_qc.ttl"));

/* Will be cached because of the SQL hint */
$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

$mysqli->query("DELETE FROM test WHERE id = 1");

/* Cache hit - no automatic invalidation! */
$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

sleep(ini_get("mysqlnd_qc.ttl"));

/* Cache miss - cache entry has expired */
$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

?>

The above examples will output:

Default TTL:    : 30 seconds
array(1) {
  ["id"]=>
  string(1) "1"
}
array(1) {
  ["id"]=>
  string(1) "1"
}
NULL

The default TTL can be overruled using the SQL hint /*qc_tt=seconds*/. The SQL hint must be appear immediately after the SQL hint which enables caching. It is recommended to use the PHP constant MYSQLND_QC_TTL_SWITCH instead of using the string value.

<?php
$start = microtime(true);

/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

printf("Default TTL\t: %d seconds\n", ini_get("mysqlnd_qc.ttl"));

/* Will be cached for 2 seconds */
$sql = sprintf("/*%s*//*%s%d*/SELECT id FROM test WHERE id = 1",
 MYSQLND_QC_ENABLE_SWITCH,
 MYSQLND_QC_TTL_SWITCH,
 2);
$res = $mysqli->query($sql);
var_dump($res->fetch_assoc());
$res->free();

$mysqli->query("DELETE FROM test WHERE id = 1");
sleep(1);

/* Cache hit - no automatic invalidation and still valid! */
$res = $mysqli->query($sql);
var_dump($res->fetch_assoc());
$res->free();

sleep(2);

/* Cache miss - cache entry has expired */
$res = $mysqli->query($sql);
var_dump($res->fetch_assoc());
$res->free();

printf("Script runtime\t: %d seconds\n", microtime(true) - $start);

?>

The above examples will output:

Default TTL     : 30 seconds
array(1) {
  ["id"]=>
  string(1) "1"
}
array(1) {
  ["id"]=>
  string(1) "1"
}
NULL
Script runtime  : 3 seconds

Basic usage
Cache by default
Exemplos


Cache by default

The query cache plugin will cache all queries regardless if the query string begins with the SQL hint which enables caching or not, if the PHP configuration directive mysqlnd_qc.cache_by_default is set to 1. The setting mysqlnd_qc.cache_by_default is evaluated by the core of the query cache plugins. Neither the built-in nor user-defined storage handler can overrule the setting.

The SQL hint /*qc=off*/ can be used to disable caching of individual queries if mysqlnd_qc.cache_by_default = 1 It is recommended to use the PHP constant MYSQLND_QC_DISABLE_SWITCH instead of using the string value.

<?php
/* Enable default caching of all statements */
ini_set("mysqlnd_qc.cache_by_default", 1);

/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

/* Will be cached although no SQL hint is present because of mysqlnd_qc.cache_by_default = 1*/
$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

$mysqli->query("DELETE FROM test WHERE id = 1");

/* Cache hit - no automatic invalidation and still valid! */
$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

/* Cache miss - query must not be cached or served from cache because of the SQL hint */
$res = $mysqli->query("/*" . MYSQLND_QC_DISABLE_SWITCH . "*/SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

?>

The above examples will output:

array(1) {
  ["id"]=>
  string(1) "1"
}
array(1) {
  ["id"]=>
  string(1) "1"
}
NULL

Setting the TTL
Procedural user-defined storage handler
Exemplos


Procedural user-defined storage handler

The query cache plugin supports the use of user-defined storage handler. User-defined storage handler can use arbitrarily complex invalidation algorithms and support arbitrary storage media.

All user-defined storage handlers have to provide a certain interface. The functions of the user-defined storage handler will be called by the core of the cache plugin. The necessary interface consists of seven public functions. Both procedural and object oriented user-defined storage handler must implement the same set of functions.

Please check the example for details.

<?php
/* Enable default caching of all statements */
ini_set("mysqlnd_qc.cache_by_default", 1);

/* Procedural user defined storage handler functions */

$__cache = array();

function get_hash($host_info, $port, $user, $db, $query) {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  return md5(sprintf("%s%s%s%s%s", $host_info, $port, $user, $db, $query));
}

function find_query_in_cache($key) {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  if (isset($__cache[$key])) {
    $tmp = $__cache[$key];
    if ($tmp["valid_until"] < time()) {
      unset($__cache[$key]);
      $ret = NULL;
    } else {
      $ret = $__cache[$key]["data"];
    }
  } else {
    $ret = NULL;
  }

  return $ret;
}

function return_to_cache($key) {
  /*
     Called on cache hit after cached data has been processed,
     may be used for reference counting
  */
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());
}

function add_query_to_cache_if_not_exists($key, $data, $ttl, $run_time, $store_time, $row_count) {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  $__cache[$key] = array(
    "data"               => $data,
    "row_count"          => $row_count,
    "valid_until"        => time() + $ttl,
    "hits"               => 0,
    "run_time"           => $run_time,
    "store_time"         => $store_time,
    "cached_run_times"   => array(),
    "cached_store_times" => array(),
  );

  return TRUE;
}

function query_is_select($query) {
  printf("\t%s('%s'): ", __FUNCTION__, $query);

  $ret = FALSE;
  if (stristr($query, "SELECT") !== FALSE) {
    /* cache for 5 seconds */
    $ret = 5;
  }

  printf("%s\n", (FALSE === $ret) ? "FALSE" : $ret);
  return $ret;
}

function update_query_run_time_stats($key, $run_time, $store_time) {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  if (isset($__cache[$key])) {
    $__cache[$key]['hits']++;
    $__cache[$key]["cached_run_times"][] = $run_time;
    $__cache[$key]["cached_store_times"][] = $store_time;
  }
}

function get_stats($key = NULL) {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  if ($key && isset($__cache[$key])) {
    $stats = $__cache[$key];
  } else {
    $stats = array();
    foreach ($__cache as $key => $details) {
      $stats[$key] = array(
        'hits'              => $details['hits'],
        'bytes'             => strlen($details['data']),
        'uncached_run_time' => $details['run_time'],
        'cached_run_time'   => (count($details['cached_run_times']))
                                  ? array_sum($details['cached_run_times']) / count($details['cached_run_times'])
                                  : 0,
      );
    }
  }

  return $stats;
}

function clear_cache() {
  global $__cache;
  printf("\t%s(%d)\n", __FUNCTION__, func_num_args());

  $__cache = array();
  return TRUE;
}

/* Install procedural user-defined storage handler */
if (!mysqlnd_qc_set_user_handlers("get_hash", "find_query_in_cache",
      "return_to_cache", "add_query_to_cache_if_not_exists",
      "query_is_select", "update_query_run_time_stats",
       "get_stats", "clear_cache")) {
  printf("Failed to install user-defined storage handler\n");
}

/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

printf("\nCache put/cache miss\n");

$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

/* Delete record to verify we get our data from the cache */
$mysqli->query("DELETE FROM test WHERE id = 1");

printf("\nCache hit\n");

$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

printf("\nDisplay cache statistics\n");
var_dump(mysqlnd_qc_get_cache_info());

printf("\nFlushing cache, cache put/cache miss");
var_dump(mysqlnd_qc_clear_cache());

$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();
?>

The above examples will output:

        query_is_select('DROP TABLE IF EXISTS test'): FALSE
        query_is_select('CREATE TABLE test(id INT)'): FALSE
        query_is_select('INSERT INTO test(id) VALUES (1), (2)'): FALSE

Cache put/cache miss
        query_is_select('SELECT id FROM test WHERE id = 1'): 5
        get_hash(5)
        find_query_in_cache(1)
        add_query_to_cache_if_not_exists(6)
array(1) {
  ["id"]=>
  string(1) "1"
}
        query_is_select('DELETE FROM test WHERE id = 1'): FALSE

Cache hit
        query_is_select('SELECT id FROM test WHERE id = 1'): 5
        get_hash(5)
        find_query_in_cache(1)
        return_to_cache(1)
        update_query_run_time_stats(3)
array(1) {
  ["id"]=>
  string(1) "1"
}

Display cache statistics
        get_stats(0)
array(4) {
  ["num_entries"]=>
  int(1)
  ["handler"]=>
  string(4) "user"
  ["handler_version"]=>
  string(5) "1.0.0"
  ["data"]=>
  array(1) {
    ["18683c177dc89bb352b29965d112fdaa"]=>
    array(4) {
      ["hits"]=>
      int(1)
      ["bytes"]=>
      int(71)
      ["uncached_run_time"]=>
      int(398)
      ["cached_run_time"]=>
      int(4)
    }
  }
}

Flushing cache, cache put/cache miss    clear_cache(0)
bool(true)
        query_is_select('SELECT id FROM test WHERE id = 1'): 5
        get_hash(5)
        find_query_in_cache(1)
        add_query_to_cache_if_not_exists(6)
NULL

Cache by default
mysqlnd_qc Funções
Exemplos


mysqlnd_qc Funções

Índice

  • mysqlnd_qc_change_handler — Change current storage handler
  • mysqlnd_qc_clear_cache — Flush all cache contents
  • mysqlnd_qc_get_cache_info — Returns information on the current handler, the number of cache entries and cache entries, if available
  • mysqlnd_qc_get_core_stats — Statistics collected by the core of the query cache
  • mysqlnd_qc_get_handler — Returns a list of available storage handler
  • mysqlnd_qc_get_query_trace_log — Returns a backtrace for each query inspected by the query cache
  • mysqlnd_qc_set_user_handlers — Sets the callback functions for a user-defined procedural storage handler
Procedural user-defined storage handler
mysqlnd_qc_change_handler
mysqlnd_qc


Change current storage handler

mysqlnd_qc Funções
mysqlnd_qc_clear_cache
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_change_handler

(No version information available, might only be in SVN)

mysqlnd_qc_change_handler — Change current storage handler

Descrição

bool mysqlnd_qc_change_handler ( mixed $handler )

Sets the storage handler used by the query cache. A list of available storage handler can be obtained from mysqlnd_qc_get_handler(). Which storage are available depends on the compile time configuration of the query cache plugin. The default storage handler is always available. All other storage handler must be enabled explicitly when building the extension.

Parâmetros

handler

Handler can be of type string representing the name of a built-in storage handler or an object of type mysqlnd_qc_handler_default. The names of the built-in storage handler are default, APC, MEMCACHE, sqlite.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

If changing the storage handler fails a catchable fatal error will be thrown. The query cache cannot operate if the previous storage handler has been shutdown but no new storage handler has been installed.

Exemplos

The example shows the output from the built-in default storage handler. Other storage handler may report different data.

<?php
var_dump(mysqlnd_qc_change_handler("memcache"));

if (true === mysqlnd_qc_change_handler("default"))
  printf("Default storage handler activated");

/* Catchable fatal error */
var_dump(mysqlnd_qc_change_handler("unknown"));
?>

The above examples will output:

bool(true)
Default storage handler activated
Catchable fatal error: mysqlnd_qc_change_handler(): Unknown handler 'unknown' in (file) on line (line)

Veja Também

  • Installation
  • mysqlnd_qc_get_handler() - Returns a list of available storage handler

mysqlnd_qc Funções
mysqlnd_qc_clear_cache
mysqlnd_qc Funções


Flush all cache contents

mysqlnd_qc_change_handler
mysqlnd_qc_get_cache_info
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_clear_cache

(No version information available, might only be in SVN)

mysqlnd_qc_clear_cache — Flush all cache contents

Descrição

bool mysqlnd_qc_clear_cache ( void )

Flush all cache contents.

Flushing the cache is a storage handler responsibility. All built-in storage handler but the memcache storage handler support flushing the cache. The memcache storage handler cannot flush its cache contents.

User-defined storage handler may or may not support the operation.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

A return value of FALSE indicates that flushing all cache contents has failed or the operation is not supported by the active storage handler. Applications must not expect that calling the function will always flush the cache.

mysqlnd_qc_change_handler
mysqlnd_qc_get_cache_info
mysqlnd_qc Funções


Returns information on the current handler, the number of cache entries and cache entries, if available

mysqlnd_qc_clear_cache
mysqlnd_qc_get_core_stats
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_get_cache_info

(No version information available, might only be in SVN)

mysqlnd_qc_get_cache_info — Returns information on the current handler, the number of cache entries and cache entries, if available

Descrição

array mysqlnd_qc_get_cache_info ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns information on the current handler, the number of cache entries and cache entries, if available. If and what data will be returned for the cache entries is subject to the active storage handler. Storage handler are free to return any data. Storage handler are recommended to return at least the data provided by the default handler, if technically possible.

Exemplos

The example shows the output from the built-in default storage handler. Other storage handler may report different data.

<?php
/* Populate the cache, e.g. using mysqli */
$mysqli = new mysqli("host", "user", "password", "schema");
$mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/SELECT id FROM test");

/* Display cache information */
var_dump(mysqlnd_qc_get_cache_info());
?>

The above examples will output:

array(4) {
 ["num_entries"]=>
 int(1)
 ["handler"]=>
 string(7) "default"
 ["handler_version"]=>
 string(5) "1.0.0"
 ["data"]=>
 array(1) {
   ["Localhost via UNIX socket 3306 user schema|/*qc=on*/SELECT id FROM test"]=>
   array(2) {
     ["statistics"]=>
     array(11) {
       ["rows"]=>
       int(6)
       ["stored_size"]=>
       int(101)
       ["cache_hits"]=>
       int(0)
       ["run_time"]=>
       int(471)
       ["store_time"]=>
       int(27)
       ["min_run_time"]=>
       int(0)
       ["max_run_time"]=>
       int(0)
       ["min_store_time"]=>
       int(0)
       ["max_store_time"]=>
       int(0)
       ["avg_run_time"]=>
       int(0)
       ["avg_store_time"]=>
       int(0)
     }
     ["metadata"]=>
     array(1) {
       [0]=>
       array(8) {
         ["name"]=>
         string(2) "id"
         ["orig_name"]=>
         string(2) "id"
         ["table"]=>
         string(4) "test"
         ["orig_table"]=>
         string(4) "test"
         ["db"]=>
         string(4) "schema"
         ["max_length"]=>
         int(1)
         ["length"]=>
         int(11)
         ["type"]=>
         int(3)
       }
     }
   }
 }
}
mysqlnd_qc_clear_cache
mysqlnd_qc_get_core_stats
mysqlnd_qc Funções


Statistics collected by the core of the query cache

mysqlnd_qc_get_cache_info
mysqlnd_qc_get_handler
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_get_core_stats

(No version information available, might only be in SVN)

mysqlnd_qc_get_core_stats — Statistics collected by the core of the query cache

Descrição

array mysqlnd_qc_get_core_stats ( void )

Returns an array of statistics collected by the core of the cache plugin. The same data fields will be reported for any storage handler because the data is collected by the core.

The PHP configuration setting mysqlnd_qc.collect_statistics controls the collection of statistics. The collection of statistics is disabled by default for performance reasons. Disabling the collection of statistics will also disable the collection of time related statistics.

The PHP configuration setting mysqlnd_qc.collect_time_statistics controls the collection of time related statistics.

The scope of the core statistics is the PHP process. Depending on your deployment model a PHP process may handle one or multiple requests.

Statistics are aggregated for all cache entries. It is not possible to tell how much queries originating from mysqli, PDO_MySQL or mysql API calls have contributed to the aggregated data values.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Array of core statistics

Statistic | Description | Version
cache_hit | Statement is considered cacheable and cached data has been reused. Statement is considered cacheable and a cache miss happened but the statement got cached by someone else while we process it and thus we can fetch the result from the refreshed cache. | Since 1.0.0.
cache_miss Statement is considered cacheable...

  • ... and has been added to the cache

  • ... but the PHP configuration directive setting of mysqlnd_qc.cache_no_table = 1 has prevented caching.

  • ... but an unbuffered result set is requested.

  • ... but a buffered result set was empty.

Since 1.0.0.
cache_put | Statement is considered cacheable and has been added to the cache. Take care when calculating derived statistics. Storage handler with a storage life time beyond process scope may report cache_put = 0 together with cache_hit > 0, if another process has filled the cache. You may want to use num_entries from mysqlnd_qc_get_cache_info() if the handler supports it ( default, APC). | Since 1.0.0.
query_should_cache | Statement is considered cacheable based on query string analysis. The statement may or may not be added to the cache. See also cache_put. | Since 1.0.0.
query_should_not_cache | Statement is considered not cacheable based on query string analysis. | Since 1.0.0.
query_not_cached | Statement is considered not cacheable or it is considered cachable but the storage handler has not returned a hash key for it. | Since 1.0.0.
query_could_cache Statement is considered cacheable...

  • ... and statement has been run without errors

  • ... and meta data shows at least one column in the result set

The statement may or may not be in the cache already. It may or may not be added to the cache later on. 		Since 1.0.0.
query_found_in_cache | Statement is considered cacheable and we have found it in the cache but we have not replayed the cached data yet and we have not send the result set to the client yet. This is not considered a cache hit because the client might not fetch the result or the cached data may be faulty. | Since 1.0.0.
query_uncached_other | Statement is considered cacheable and it may or may not be in the cache already but either replaying cached data has failed, no result set is available or some other error has happened.
query_uncached_no_table | Statement has not been cached because the result set has at least one column which has no table name in its meta data. An example of such a query is SELECT SLEEP(1). To cache those statements you have to change default value of the PHP configuration directive mysqlnd_qc.cache_no_table and set mysqlnd_qc.cache_no_table = 1. Often, it is not desired to cache such statements. | Since 1.0.0.
query_uncached_use_result | Statement would have been cached if a buffered result set had been used. The situation is also consiered as a cache miss and cache_miss will be incremented as well. | Since 1.0.0.
query_aggr_run_time_cache_hit | Aggregated run time (ms) of all cached queries. Cached queries are those which have incremented cache_hit. | Since 1.0.0.
query_aggr_run_time_cache_put | Aggregated run time (ms) of all uncached queries that have been put into the cache. See also cache_put. | Since 1.0.0.
query_aggr_run_time_total | Aggregated run time (ms) of all uncached and cached queries that have been inspected and executed by the query cache. | Since 1.0.0.
query_aggr_store_time_cache_hit | Aggregated store time (ms) of all cached queries. Cached queries are those which have incremented cache_hit. | Since 1.0.0.
query_aggr_store_time_cache_put | Aggregated store time ( ms) of all uncached queries that have been put into the cache. See also cache_put. | Since 1.0.0.
query_aggr_store_time_total | Aggregated store time (ms) of all uncached and cached queries that have been inspected and executed by the query cache. | Since 1.0.0.
receive_bytes_recorded | Recorded incoming network traffic ( bytes) send from MySQL to PHP. The traffic may or may not have been added to the cache. The traffic is the total for all queries regardless if cached or not. | Since 1.0.0.
receive_bytes_replayed | Network traffic replayed during cache. This is the total amount of incoming traffic saved because of the usage of the query cache plugin. | Since 1.0.0.
send_bytes_recorded | Recorded outgoing network traffic ( bytes) send from MySQL to PHP. The traffic may or may not have been added to the cache. The traffic is the total for all queries regardless if cached or not. | Since 1.0.0.
send_bytes_replayed | Network traffic replayed during cache. This is the total amount of outgoing traffic saved because of the usage of the query cache plugin. | Since 1.0.0.
slam_stale_refresh | Number of cache misses which triggered serving stale data until the client causing the cache miss has refreshed the cache entry. | Since 1.0.0.
slam_stale_hit | Number of cache hits while a stale cache entry gets refreshed. | Since 1.0.0.

Exemplos

<?php
/* Enable collection of statistics - default: disabled */
ini_set("mysqlnd_qc.collect_statistics", 1);

/* Enable collection of all timing related statistics -
default: enabled but overruled by mysqlnd_qc.collect_statistics = 0 */
ini_set("mysqlnd_qc.collect_time_statistics", 1);

/* Populate the cache, e.g. using mysqli */
$mysqli = new mysqli('host', 'user', 'password', 'schema');

/* Cache miss and cache put */
$mysqli->query("/*qc=on*/SELECT id FROM test");
/* Cache hit */
$mysqli->query("/*qc=on*/SELECT id FROM test");

/* Display core statstics */
var_dump(mysqlnd_qc_get_core_stats());
?>

The above examples will output:

array(26) {
  ["cache_hit"]=>
  string(1) "1"
  ["cache_miss"]=>
  string(1) "1"
  ["cache_put"]=>
  string(1) "1"
  ["query_should_cache"]=>
  string(1) "2"
  ["query_should_not_cache"]=>
  string(1) "0"
  ["query_not_cached"]=>
  string(1) "0"
  ["query_could_cache"]=>
  string(1) "2"
  ["query_found_in_cache"]=>
  string(1) "1"
  ["query_uncached_other"]=>
  string(1) "0"
  ["query_uncached_no_table"]=>
  string(1) "0"
  ["query_uncached_no_result"]=>
  string(1) "0"
  ["query_uncached_use_result"]=>
  string(1) "0"
  ["query_aggr_run_time_cache_hit"]=>
  string(1) "4"
  ["query_aggr_run_time_cache_put"]=>
  string(3) "395"
  ["query_aggr_run_time_total"]=>
  string(3) "399"
  ["query_aggr_store_time_cache_hit"]=>
  string(1) "2"
  ["query_aggr_store_time_cache_put"]=>
  string(1) "8"
  ["query_aggr_store_time_total"]=>
  string(2) "10"
  ["receive_bytes_recorded"]=>
  string(2) "65"
  ["receive_bytes_replayed"]=>
  string(2) "65"
  ["send_bytes_recorded"]=>
  string(2) "29"
  ["send_bytes_replayed"]=>
  string(2) "29"
  ["slam_stale_refresh"]=>
  string(1) "0"
  ["slam_stale_hit"]=>
  string(1) "0"
  ["request_counter"]=>
  int(1)
  ["process_hash"]=>
  int(3547549858)
}

Veja Também

  • Runtime configuration
  • mysqlnd_qc.collect_statistics
  • mysqlnd_qc.time_statistics

mysqlnd_qc_get_cache_info
mysqlnd_qc_get_handler
mysqlnd_qc Funções


Returns a list of available storage handler

mysqlnd_qc_get_core_stats
mysqlnd_qc_get_query_trace_log
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_get_handler

(No version information available, might only be in SVN)

mysqlnd_qc_get_handler — Returns a list of available storage handler

Descrição

array mysqlnd_qc_get_handler ( void )

Which storage are available depends on the compile time configuration of the query cache plugin. The default storage handler is always available. All other storage handler must be enabled explicitly when building the extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of available built-in storage handler. For each storage handler the version number and version string is given.

Exemplos

<?php
var_dump(mysqlnd_qc_get_handler());
?>

The above examples will output:

array(5) {
  ["default"]=>
  array(2) {
    ["version"]=>
    string(5) "1.0.0"
    ["version_number"]=>
    int(100000)
  }
  ["user"]=>
  array(2) {
    ["version"]=>
    string(5) "1.0.0"
    ["version_number"]=>
    int(100000)
  }
  ["APC"]=>
  array(2) {
    ["version"]=>
    string(5) "1.0.0"
    ["version_number"]=>
    int(100000)
  }
  ["MEMCACHE"]=>
  array(2) {
    ["version"]=>
    string(5) "1.0.0"
    ["version_number"]=>
    int(100000)
  }
  ["sqlite"]=>
  array(2) {
    ["version"]=>
    string(5) "1.0.0"
    ["version_number"]=>
    int(100000)
  }
}

Veja Também

  • Installation
  • mysqlnd_qc_change_handler() - Change current storage handler

mysqlnd_qc_get_core_stats
mysqlnd_qc_get_query_trace_log
mysqlnd_qc Funções


Returns a backtrace for each query inspected by the query cache

mysqlnd_qc_get_handler
mysqlnd_qc_set_user_handlers
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_get_query_trace_log

(No version information available, might only be in SVN)

mysqlnd_qc_get_query_trace_log — Returns a backtrace for each query inspected by the query cache

Descrição

array mysqlnd_qc_get_query_trace_log ( void )

Returns a backtrace for each query inspected by the query cache. The collection of the backtrace is disabled by default. To collect the backtrace you have to set the PHP configuration directive mysqlnd_qc.collect_query_trace to 1

The maximum depth of the backtrace is limited to the depth set with the PHP configuration directive mysqlnd_qc.query_trace_bt_depth.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of query backtrace. Every list entry contains the query string, a backtrace and further detail information.

Key | Description
query | Query string.
origin | Code backtrace.
run_time | Query run time in milliseconds. The collection of all times and the necessary gettimeofday system calls can be disabled by setting the PHP configuration directive mysqlnd_qc.time_statistics to 0
store_time | Query result set store time in milliseconds. The collection of all times and the necessary gettimeofday system calls can be disabled by setting the PHP configuration directive mysqlnd_qc.time_statistics to 0
eligible_for_caching | TRUE if query is cacheble otherwise FALSE.
no_table | TRUE if the query has generated a result set and at least one column from the result set has no table name set in its metadata. This is usually the case with queries which one probably do not want to cache such as SELECT SLEEP(1). By default any such query will not be added to the cache. See also PHP configuration directive mysqlnd_qc.cache_no_table.
was_added | TRUE if the query result has been put into the cache, otherwise FALSE.
was_already_in_cache | TRUE if the query result would have been added to the cache if it was not already in the cache (cache hit). Otherwise FALSE.

Exemplos

<?php
/* Connect, create and populate test table */
$mysqli = new mysqli("host", "user", "password", "schema", "port", "socket");
$mysqli->query("DROP TABLE IF EXISTS test");
$mysqli->query("CREATE TABLE test(id INT)");
$mysqli->query("INSERT INTO test(id) VALUES (1), (2)");

$res = $mysqli->query("SELECT id FROM test WHERE id = 1");
var_dump($res->fetch_assoc());
$res->free();

$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 2");
var_dump($res->fetch_assoc());
$res->free();

$res = $mysqli->query("/*" . MYSQLND_QC_ENABLE_SWITCH . "*/" . "SELECT id FROM test WHERE id = 2");
var_dump($res->fetch_assoc());
$res->free();
?>

The above examples will output:

array(1) {
  ["id"]=>
  string(1) "1"
}
array(1) {
  ["id"]=>
  string(1) "2"
}
array(1) {
  ["id"]=>
  string(1) "2"
}
array(6) {
  [0]=>
  array(8) {
    ["query"]=>
    string(25) "DROP TABLE IF EXISTS test"
    ["origin"]=>
    string(85) "#0 /home/nixnutz/php/phpdoc/foo.php(7): mysqli->query('DROP TABLE IF E...')
#1 {main}"
    ["run_time"]=>
    int(0)
    ["store_time"]=>
    int(0)
    ["eligible_for_caching"]=>
    bool(false)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(false)
    ["was_already_in_cache"]=>
    bool(false)
  }
  [1]=>
  array(8) {
    ["query"]=>
    string(25) "CREATE TABLE test(id INT)"
    ["origin"]=>
    string(85) "#0 /home/nixnutz/php/phpdoc/foo.php(8): mysqli->query('CREATE TABLE te...')
#1 {main}"
    ["run_time"]=>
    int(0)
    ["store_time"]=>
    int(0)
    ["eligible_for_caching"]=>
    bool(false)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(false)
    ["was_already_in_cache"]=>
    bool(false)
  }
  [2]=>
  array(8) {
    ["query"]=>
    string(36) "INSERT INTO test(id) VALUES (1), (2)"
    ["origin"]=>
    string(85) "#0 /home/nixnutz/php/phpdoc/foo.php(9): mysqli->query('INSERT INTO tes...')
#1 {main}"
    ["run_time"]=>
    int(0)
    ["store_time"]=>
    int(0)
    ["eligible_for_caching"]=>
    bool(false)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(false)
    ["was_already_in_cache"]=>
    bool(false)
  }
  [3]=>
  array(8) {
    ["query"]=>
    string(32) "SELECT id FROM test WHERE id = 1"
    ["origin"]=>
    string(86) "#0 /home/nixnutz/php/phpdoc/foo.php(11): mysqli->query('SELECT id FROM ...')
#1 {main}"
    ["run_time"]=>
    int(0)
    ["store_time"]=>
    int(15)
    ["eligible_for_caching"]=>
    bool(false)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(false)
    ["was_already_in_cache"]=>
    bool(false)
  }
  [4]=>
  array(8) {
    ["query"]=>
    string(41) "/*qc=on*/SELECT id FROM test WHERE id = 2"
    ["origin"]=>
    string(86) "#0 /home/nixnutz/php/phpdoc/foo.php(15): mysqli->query('/*qc=on*/SELECT...')
#1 {main}"
    ["run_time"]=>
    int(340)
    ["store_time"]=>
    int(3)
    ["eligible_for_caching"]=>
    bool(true)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(true)
    ["was_already_in_cache"]=>
    bool(false)
  }
  [5]=>
  array(8) {
    ["query"]=>
    string(41) "/*qc=on*/SELECT id FROM test WHERE id = 2"
    ["origin"]=>
    string(86) "#0 /home/nixnutz/php/phpdoc/foo.php(19): mysqli->query('/*qc=on*/SELECT...')
#1 {main}"
    ["run_time"]=>
    int(4)
    ["store_time"]=>
    int(2)
    ["eligible_for_caching"]=>
    bool(true)
    ["no_table"]=>
    bool(false)
    ["was_added"]=>
    bool(false)
    ["was_already_in_cache"]=>
    bool(true)
  }
}

Veja Também

  • Runtime configuration
  • mysqlnd_qc.collect_query_trace
  • mysqlnd_qc.query_trace_bt_depth
  • mysqlnd_qc.time_statistics
  • mysqlnd_qc.cache_no_table

mysqlnd_qc_get_handler
mysqlnd_qc_set_user_handlers
mysqlnd_qc Funções


Sets the callback functions for a user-defined procedural storage handler

mysqlnd_qc_get_query_trace_log
OCI8
mysqlnd_qc Funções
PHP Manual

mysqlnd_qc_set_user_handlers

(No version information available, might only be in SVN)

mysqlnd_qc_set_user_handlers — Sets the callback functions for a user-defined procedural storage handler

Descrição

bool mysqlnd_qc_set_user_handlers ( string $get_hash , string $find_query_in_cache , string $return_to_cache , string $add_query_to_cache_if_not_exists , string $query_is_select , string $update_query_run_time_stats , string $get_stats , string $clear_cache )

Sets the callback functions for a user-defined procedural storage handler.

Parâmetros

get_hash

Name of the user function implementing the storage handler get_hash functionality.

find_query_in_cache

Name of the user function implementing the storage handler find_in_cache functionality.

return_to_cache

Name of the user function implementing the storage handler return_to_cache functionality.

add_query_to_cache_if_not_exists

Name of the user function implementing the storage handler add_query_to_cache_if_not_exists functionality.

query_is_select

Name of the user function implementing the storage handler query_is_select functionality.

update_query_run_time_stats

Name of the user function implementing the storage handler update_query_run_time_stats functionality.

get_stats

Name of the user function implementing the storage handler get_stats functionality.

clear_cache

Name of the user function implementing the storage handler clear_cache functionality.

Valor Retornado

Returns TRUE on success or FALSE on FAILURE.

Veja Também

  • Procedural user-defined storage handler example

mysqlnd_qc_get_query_trace_log
OCI8
mysqlnd_qc Funções


Oracle OCI8

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Testing
    • Configurações em Execução
  • Constantes pré-definidas
  • Exemplos
  • Connecting Handling
  • Supported Datatypes
  • Funções para OCI8
    • oci_bind_array_by_name — Binds a PHP array to an Oracle PL/SQL array parameter
    • oci_bind_by_name — Binds a PHP variable to an Oracle placeholder
    • oci_cancel — Cancels reading from cursor
    • oci_close — Closes an Oracle connection
    • OCI-Collection->append — Appends element to the collection
    • OCI-Collection->assign — Assigns a value to the collection from another existing collection
    • OCI-Collection->assignElem — Assigns a value to the element of the collection
    • OCI-Collection->free — Frees the resources associated with the collection object
    • OCI-Collection->getElem — Returns value of the element
    • OCI-Collection->max — Returns the maximum number of elements in the collection
    • OCI-Collection->size — Returns size of the collection
    • OCI-Collection->trim — Trims elements from the end of the collection
    • oci_commit — Commits the outstanding database transaction
    • oci_connect — Connect to an Oracle database
    • oci_define_by_name — Associates a PHP variable with a column for query fetches
    • oci_error — Returns the last error found
    • oci_execute — Executes a statement
    • oci_fetch_all — Fetches multiple rows from a query into a two-dimensional array
    • oci_fetch_array — Returns the next row from a query as an associative or numeric array
    • oci_fetch_assoc — Returns the next row from a query as an associative array
    • oci_fetch_object — Returns the next row from a query as an object
    • oci_fetch_row — Returns the next row from a query as a numeric array
    • oci_fetch — Fetches the next row from a query into internal buffers
    • oci_field_is_null — Checks if the field is NULL
    • oci_field_name — Returns the name of a field from the statement
    • oci_field_precision — Tell the precision of a field
    • oci_field_scale — Tell the scale of the field
    • oci_field_size — Returns field's size
    • oci_field_type_raw — Tell the raw Oracle data type of the field
    • oci_field_type — Returns field's data type
    • oci_free_statement — Frees all resources associated with statement or cursor
    • oci_internal_debug — Enables or disables internal debug output
    • OCI-Lob->append — Appends data from the large object to another large object
    • OCI-Lob->close — Closes LOB descriptor
    • oci_lob_copy — Copies large object
    • OCI-Lob->eof — Tests for end-of-file on a large object's descriptor
    • OCI-Lob->erase — Erases a specified portion of the internal LOB data
    • OCI-Lob->export — Exports LOB's contents to a file
    • OCI-Lob->flush — Flushes/writes buffer of the LOB to the server
    • OCI-Lob->free — Frees resources associated with the LOB descriptor
    • OCI-Lob->getBuffering — Returns current state of buffering for the large object
    • OCI-Lob->import — Imports file data to the LOB
    • oci_lob_is_equal — Compares two LOB/FILE locators for equality
    • OCI-Lob->load — Returns large object's contents
    • OCI-Lob->read — Reads part of the large object
    • OCI-Lob->rewind — Moves the internal pointer to the beginning of the large object
    • OCI-Lob->save — Saves data to the large object
    • OCI-Lob->saveFile — Sinônimo de oci_lob_import
    • OCI-Lob->seek — Sets the internal pointer of the large object
    • OCI-Lob->setBuffering — Changes current state of buffering for the large object
    • OCI-Lob->size — Returns size of large object
    • OCI-Lob->tell — Returns the current position of internal pointer of large object
    • OCI-Lob->truncate — Truncates large object
    • OCI-Lob->write — Writes data to the large object
    • OCI-Lob->writeTemporary — Writes a temporary large object
    • OCI-Lob->writeToFile — Sinônimo de oci_lob_export
    • oci_new_collection — Allocates new collection object
    • oci_new_connect — Connect to the Oracle server using a unique connection
    • oci_new_cursor — Allocates and returns a new cursor (statement handle)
    • oci_new_descriptor — Initializes a new empty LOB or FILE descriptor
    • oci_num_fields — Returns the number of result columns in a statement
    • oci_num_rows — Returns number of rows affected during statement execution
    • oci_parse — Prepares an Oracle statement for execution
    • oci_password_change — Changes password of Oracle's user
    • oci_pconnect — Connect to an Oracle database using a persistent connection
    • oci_result — Returns field's value from the fetched row
    • oci_rollback — Rolls back the outstanding database transaction
    • oci_server_version — Returns server version
    • oci_set_action — Sets the action name
    • oci_set_client_identifier — Sets the client identifier
    • oci_set_client_info — Sets the client information
    • oci_set_edition — Sets the database edition
    • oci_set_module_name — Sets the module name
    • oci_set_prefetch — Sets number of rows to be prefetched by queries
    • oci_statement_type — Returns the type of a statement
mysqlnd_qc_set_user_handlers
Introdução
Vendor Specific Database Extensions


Introdução

Essas funções permitem você acessar Banco de Dados Oracle 10, Oracle 9, Oracle8 e Oracle7 usando a Oracle Call Interface (OCI). Elas suportam ligação de variáveis PHP para Oracle placeholders, tem suporte completo a LOB, FILE e ROWID, ae permite você definir variáveis.

OCI8
Instalação/Configuração
OCI8


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Testing
  • Configurações em Execução
Introdução
Dependências
OCI8


Dependências

The OCI8 extension requires Oracle 9iR2, 10g or 11g Client libraries. If the Oracle Database is on the same machine as PHP, the database software already contains the necessary libraries. When PHP is on a different machine, use the free » Oracle Instant Client libraries.

To use Oracle Instant Client, install the basic or basiclite Oracle Instant Client ZIP file or RPM package. When building PHP from source code, also install the sdk ZIP file or devel RPM package.

On Windows, OCI8 needs client libraries from version 10gR2 or greater. With some versions of Instant Client you may additionally need mfc71.dll and msvcr71.dll libraries.

You should run PHP with the same, or more recent, version of the Oracle libraries that OCI8 was built with.

Nota:

If OCI8 uses 9iR2 or 10g client libraries, then PHP can connect to Oracle Database 8i, 9iR2, 10g or 11g. If OCI8 uses 11g client libraries, the database can be 9iR2, 10g or 11g.

Nota:

Full OCI8 feature support is only available when using the most recent versions of the client libraries and database.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Você tem que compilar o PHP com a opção --with-oci8[=DIR] , onde DIR é a variável de ambiente ORACLE_HOME.

Se você está usando » Oracle Instant Client, você precisa compilar o PHP com a opção --with-oci8=instantclient,/path/to/oic/lib . Note que suporte a Oracle Instant Client apareceu primeiro nas versões 4.3.11 e 5.0.4.

Nota:

Note que nas versões da OCI8 antes da 1.1, você tem que usar a opção --with-oci8-instant-client para configurar o PHP com Oracle Instant Client.

Dependências
Testing
Instalação/Configuração


Testing

The OCI8 test suite is in ext/oci8/tests. After OCI8 tests are run this directory will also contain logs of any failures.

Before running PHP's tests, edit details.inc and set $user, $password and the $dbase connection string. The OCI8 test suite has been developed using the SYSTEM account. Some tests will fail if the test user does not have equivalent permissions.

If the database is on the same machine as PHP, set $oracle_on_localhost to TRUE.

If Oracle 11g Database Resident Connection Pooling is being tested, set $test_drcp to TRUE and ensure the connection string uses an appropriate DRCP pooled server.

An alternative to editing details.inc is the set environment variables, for example:

    $ export PHP_OCI8_TEST_USER=system
    $ export PHP_OCI8_TEST_PASS=oracle
    $ export PHP_OCI8_TEST_DB=localhost/XE
    $ export PHP_OCI8_TEST_DB_ON_LOCALHOST=TRUE
    $ export PHP_OCI8_TEST_DRCP=FALSE
Note in some shells these variables are not propagated correctly to the PHP process and tests will fail to connect if this method is used.

Next, set any necessary environment for the Oracle database. With Oracle 10g XE do:

    $ . /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh

For other versions of the Oracle database do:

    $ . /usr/local/bin/oraenv

Some shells require that php.ini has E in the variables_order parameter, for example:

    variables_order = "EGPCS"

Run all the PHP tests with:

    $ cd your_php_src_directory
    $ make test
or run only the OCI8 tests with
    $ cd your_php_src_directory
    $ make test TESTS=ext/oci8

When the tests have completed, review any test failures. On slow systems, some tests may take longer than the default test timeout in run-tests.php. To correct this, set the environment variable TEST_TIMEOUT to a larger number of seconds.

On fast machines with a local database configured for light load (e.g. Oracle 10g XE) some tests might fail with ORA-12516 or ORA-12520 errors. To prevent this, increase the database PROCESSES parameter using the following steps:

Connect as the oracle software owner:

    $ su - oracle

Set the necessary Oracle environment with oracle_env.sh or oraenv, as described above.

Start the SQL*Plus command line tool and increase PROCESSES

    $ sqlplus / as sysdba
    SQL> alter system set processes=100 scope=spfile

Restart the database:

    SQL> startup force

Instalação
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

OCI8 Configuration Options
Name | Default | Changeable | Changelog
oci8.connection_class | "" | PHP_INI_ALL | Available since PHP 5.3 (PECL OCI8 1.3).
oci8.default_prefetch | "100" | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.events | Off | PHP_INI_SYSTEM | Available since PHP 5.3 (PECL OCI8 1.3).
oci8.max_persistent | "-1" | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.old_oci_close_semantics | Off | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.persistent_timeout | "-1" | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.ping_interval | "60" | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.privileged_connect | Off | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).
oci8.statement_cache_size | "20" | PHP_INI_SYSTEM | Available since PHP 5.1.2 (PECL OCI8 1.1).

Breve descrição das diretivas de configuração.

oci8.connection_class string

This user defined text is used by Oracle 11g Database Resident Connection Pooling (DRCP) connections to sub-partition the connection pool. It allows OCI8 persistent connections from an application to reuse database sessions from a previous PHP script, giving better scalability. When an application uses a database pooled process previously used with a different connection class, the session settings such as the default Oracle date format are reset. This prevents accidental sharing of information between different applications.

The value can be set at runtime with ini_set() prior to connecting.

To use DRCP, OCI8 must be linked with Oracle 11g libraries and the database must be Oracle 11g. The connection pool must be enabled in the database, the oci8.connection_class should be set to the same string for all web servers running the same application, and the OCI8 connection string must specify to use a pooled server.

oci8.default_prefetch int

This option sets the default number of extra rows that will be fetched and cached automatically whenever a low-level request for data from the database is made. Setting a value of 0 turns off prefetching.

The prefetch value does not alter the number of rows that functions like oci_fetch_array() return to the user; the prefetching and caching of rows is handled internally in OCI8.

The value can be set per-statement with oci_set_prefetch() prior to statement execution.

In PHP 5.3 (PECL OCI8 1.3.4) the default value was increased from 10 to 100.

In PHP 5.3.2 (PECL OCI8 1.4) the minimum value settable was reduced from 1 to 0, allowing prefetching to be turned off.

Nota: A larger prefetch can result in improved performance, at the cost of some increased memory usage. For queries that return large amounts of data, the performance benefit can be significant.

oci8.events boolean

Using On allows PHP to be notified of database Fast Application Notification (FAN) events.

Without FAN, when a database instance or machine node fails unexpectedly, PHP applications may be blocked waiting for a database response until a TCP timeout expires. With FAN events, PHP applications are quickly notified of failures that affect their established database connections. The OCI8 extension will clean up unusable connections in the persistent connection cache.

When using On, the database must also be configured to post FAN events.

FAN support is available when OCI8 is linked with Oracle 10gR2 (or later) libraries and connected to Oracle Database 10gR2 (or later).

oci8.max_persistent int

The maximum number of persistent OCI8 connections per PHP process. Setting this option to -1 means that there is no limit.

oci8.old_oci_close_semantics boolean

This option controls oci_close() behaviour. Enabling it means that oci_close() will do nothing; the connection will not be closed until the end of the script. This is for backward compatibility only. If you find that you need to enable this setting, you are strongly encouraged to adjust the oci_close() calls in your application instead of enabling this option.

oci8.persistent_timeout int

The maximum number of seconds that a PHP process is allowed to keep an idle persistent connection open. Setting this option to -1 means that idle persistent connections will be retained until the PHP process terminates or the connection is explicitly closed with oci_close().

Nota: In PHP, the expiry of idle resources is not alarm-based. It occurs when PHP finishes processing a script and checks the last-used timestamp of resources. Hence there is a paradox that idle connections can only be closed when there is some activity (though not necessarily OCI8 related) in the PHP process. The introduction of Database Resident Connection Pooling (DRCP) in Oracle 11g resolves the memory and resource issues that oci8.max_persistent and oci8.persistent_timeout previously attempted to overcome.

Nota: In PHP 5.3 (PECL OCI8 1.3), persistent connections can be closed with oci_close().

oci8.ping_interval int

The number of seconds that must pass before issuing a ping during oci_pconnect(). A ping ensures that the database connection is valid. When set to 0, persistent connections will be pinged every time oci_pconnect() is called. To disable pings completely, set this option to -1.

Nota: Disabling pings allows oci_pconnect() to operate at the highest efficiency, but PHP may not be able to detect unusable connections, such as caused by network dropout, or if the Oracle database has gone down since PHP connected, until the connection is used later in the script. Consult the oci_pconnect() documentation for more information.

oci8.privileged_connect boolean

This option allows connections to use the privileged external credentials OCI_SYSOPER or OCI_SYSDBA.

Nota: Seting this On can allow scripts on web servers running with the appropriate OS user privileges to connect as privileged database users without requiring a database password. This can be a security risk.

oci8.statement_cache_size int

This option enables statement caching, and specifies how many statements to cache. To disable statement caching just set this option to 0.

Statement caching removes the need to transmit the statement text to the database and removes the need to transmit any meta data about the statement back to PHP. This can significantly improve overall system performance in applications which reuse statements during the lifetime of a connection. Some extra database "cursors" may be held open under the assumption that statements will be reused.

Set this value to the size of the working set of statements used by your application. Setting too small a value can cause statements to be flushed from the cache before they are reused.

This option is of most use with persistent connections.

Testing
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

OCI_DEFAULT (integer)
Modo de execução de comando. O comando não faz commit automaticamente quando usando este modo.
OCI_DESCRIBE_ONLY (integer)
Modo de execução de comando. Use este modo se você não quer executar a query, mas obter a descrição da lista do select.
OCI_COMMIT_ON_SUCCESS (integer)
Modo de execução de comando. O comando faz automaticamente commit depois de chamar oci_execute().
OCI_EXACT_FETCH (integer)
Modo de fetch do comando. Usado quando a aplicação sabe exatamente quantas linhas serão obtidas. Este modo torna modo prefetching off para Oracle release 8 ou superior. Cursor é cancelado depois das desejadas linhas serem obtidas o que pode resultar em redução de uso de recurso do servidor.
OCI_SYSDATE (integer)
OCI_B_BFILE (integer)
Usado com oci_bind_by_name() quando usando BFILEs.
OCI_B_CFILEE (integer)
Usado com oci_bind_by_name() quando usando CFILEs.
OCI_B_CLOB (integer)
Usado com oci_bind_by_name() quando usando CLOBs.
OCI_B_BLOB (integer)
Usado com oci_bind_by_name() quando usando BLOBs.
OCI_B_ROWID (integer)
Usado com oci_bind_by_name() quando usando ROWIDs.
OCI_B_CURSOR (integer)
Usado com oci_bind_by_name() quando usando cursores, previamente alocado com oci_new_descriptor().
OCI_B_NTY (integer)
Usado com oci_bind_by_name() quando usando tipos de dados nomeados. Nota: no PHP < 5.0 era chamado OCI_B_SQLT_NTY.
OCI_B_BIN (integer)
SQLT_BFILEE (integer)
O mesmo que OCI_B_BFILE.
SQLT_CFILEE (integer)
O mesmo que OCI_B_CFILEE.
SQLT_CLOB (integer)
O mesmo que OCI_B_CLOB.
SQLT_BLOB (integer)
O mesmo que OCI_B_BLOB.
SQLT_RDD (integer)
O mesmo que OCI_B_ROWID.
SQLT_NTY (integer)
O mesmo que OCI_B_NTY.
SQLT_LNG (integer)
Usado com oci_bind_by_name() quando usando valores LONG.
SQLT_LBI (integer)
Usado com oci_bind_by_name() quando usando valores LONG RAW.
SQLT_BIN (integer)
Usado com oci_bind_by_name() quando usando valores RAW.
SQLT_NUM (integer)
Usado com oci_bind_array_by_name() quando passando arrays de NUMBER.
SQLT_INT (integer)
Usado com oci_bind_array_by_name() quando passando arrays de INTEGER.
SQLT_AFC (integer)
Usado com oci_bind_array_by_name() quando passando arrays de CHAR.
SQLT_CHR (integer)
Usado com oci_bind_array_by_name() quando passando arrays de VARCHAR2. Também usado com oci_bind_by_name().
SQLT_VCS (integer)
Usado com oci_bind_array_by_name() quando passando arrays de VARCHAR.
SQLT_AVC (integer)
Usado com oci_bind_array_by_name() quando passando arrays de CHARZ.
SQLT_STR (integer)
Usado com oci_bind_array_by_name() quando passando arrays de STRING.
SQLT_LVC (integer)
Usado com oci_bind_array_by_name() quando passando arrays de LONG VARCHAR.
SQLT_FLT (integer)
Usado com oci_bind_array_by_name() quando passando arrays de FLOAT.
SQLT_ODT (integer)
Usado com oci_bind_array_by_name() quando passando arrays de LONG.
SQLT_BDOUBLE (integer)
SQLT_BFLOAT (integer)
OCI_FETCHSTATEMENT_BY_COLUMN (integer)
Modo padrão de oci_fetch_all().
OCI_FETCHSTATEMENT_BY_ROW (integer)
Modo alternativo de oci_fetch_all().
OCI_ASSOC (integer)
Usado com oci_fetch_all() e oci_fetch_array() para ter um array associativo como resultado.
OCI_NUM (integer)
Usado com oci_fetch_all() e oci_fetch_array() para ter um array enumerado como resultado.
OCI_BOTH (integer)
Usado com oci_fetch_all() e oci_fetch_array() para ter um array com ambos índices associativo e númerico.
OCI_RETURN_NULLS (integer)
Usado com oci_fetch_array() para ter elementos de array vazio se o valor do campo é NULL.
OCI_RETURN_LOBS (integer)
Usado com oci_fetch_array() para ter valor de LOB ao invés do descritor.
OCI_DTYPE_FILE (integer)
Esta flag diz para oci_new_descriptor() inicializar novo descritor de FILE.
OCI_DTYPE_LOB (integer)
Esta flag diz para oci_new_descriptor() inicializar novo descritor de LOB.
OCI_DTYPE_ROWID (integer)
Esta flag diz para oci_new_descriptor() inicializar novo descritor de ROWID.
OCI_D_FILE (integer)
O mesmo que OCI_DTYPE_FILE.
OCI_D_LOB (integer)
O mesmo que OCI_DTYPE_LOB.
OCI_D_ROWID (integer)
O mesmo que OCI_DTYPE_ROWID.
OCI_SYSOPER (integer)
Usado com oci_connect() para conectar como SYSOPER usando credenciais externas (oci8.privileged_connect deve estar habilitado para isto).
OCI_SYSDBA (integer)
Usado com oci_connect() para conectar como SYSDBA usando credenciais externas (oci8.privileged_connect deve estar habilitado para isto).
OCI_LOB_BUFFER_FREE (integer)
Usado com OCI-Lob->flush para liberar buffer usado.
OCI_TEMP_CLOB (integer)
Usado com OCI-Lob->writeTemporary para indicar explicitamente que temporário CLOB deve ser criado.
OCI_TEMP_BLOB (integer)
Usado com OCI-Lob->writeTemporary para indicar explicitamente que temporário BLOB deve ser criado.
Configurações em Execução
Exemplos
OCI8


Exemplos

Índice

Constantes pré-definidas
OCI8


Exemplos
Connecting Handling
Exemplos
PHP Manual

Exemplo #1 Query básica

<?php

  $conn = oci_connect('hr', 'hr', 'orcl');
  if (!$conn) {
    $e = oci_error();
    print htmlentities($e['message']);
    exit;
  }

  $query = 'SELECT * FROM DEPARTMENTS';

  $stid = oci_parse($conn, $query);
  if (!$stid) {
    $e = oci_error($conn);
    print htmlentities($e['message']);
    exit;
  }

  $r = oci_execute($stid, OCI_DEFAULT);
  if (!$r) {
    $e = oci_error($stid);
    echo htmlentities($e['message']);
    exit;
  }

  print '<table border="1">';
  while ($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {
    print '<tr>';
       foreach ($row as $item) {
         print '<td>'.($item?htmlentities($item):'&nbsp;').'</td>';
       }
       print '</tr>';
  }
  print '</table>';

  oci_close($conn);
?>

Exemplo #2 Inserindo usando bind com variáveis

<?php

  // Before running, create the table:
  //   CREATE TABLE MYTABLE (mid NUMBER, myd VARCHAR2(20));

  $conn = oci_connect('scott', 'tiger', 'orcl');

  $query = 'INSERT INTO MYTABLE VALUES(:myid, :mydata)';

  $stid = oci_parse($conn, $query);

  $id = 60;
  $data = 'Some data';

  oci_bind_by_name($stid, ':myid', $id);
  oci_bind_by_name($stid, ':mydata', $data);

  $r = oci_execute($stid);

  if ($r)
    print "One row inserted";

  oci_close($conn);

?>

Exemplo #3 Inserindo dados em uma coluna CLOB

<?php

// Before running, create the table:
//     CREATE TABLE MYTABLE (mykey NUMBER, myclob CLOB);

$conn = oci_connect('scott', 'tiger', 'orcl');

$mykey = 12343;  // arbitrary key for this example;

$sql = "INSERT INTO mytable (mykey, myclob)
        VALUES (:mykey, EMPTY_CLOB())
        RETURNING myclob INTO :myclob";

$stid = oci_parse($conn, $sql);
$clob = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_bind_by_name($stid, ":myclob", $clob, -1, OCI_B_CLOB);
oci_execute($stid, OCI_DEFAULT);
$clob->save("A very long string");

oci_commit($conn);

// Fetching CLOB data

$query = 'SELECT myclob FROM mytable WHERE mykey = :mykey';

$stid = oci_parse ($conn, $query);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_execute($stid, OCI_DEFAULT);

print '<table border="1">';
while ($row = oci_fetch_array($stid, OCI_ASSOC)) {
  $result = $row['MYCLOB']->load();
  print '<tr><td>'.$result.'</td></tr>';
}
print '</table>';

?>

Você pode facilmente acessar stored procedures na mesma forma como você faz na linha de comando.

Exemplo #4 Usando Stored Procedures

<?php
// by webmaster at remoterealty dot com
$sth = oci_parse($dbh, "begin sp_newaddress( :address_id, '$firstname',
 '$lastname', '$company', '$address1', '$address2', '$city', '$state',
 '$postalcode', '$country', :error_code );end;");

// This calls stored procedure sp_newaddress, with :address_id being an
// in/out variable and :error_code being an out variable.
// Then you do the binding:

   oci_bind_by_name($sth, ":address_id", $addr_id, 10);
   oci_bind_by_name($sth, ":error_code", $errorcode, 10);
   oci_execute($sth);

?>

Exemplos
Connecting Handling
Exemplos


Connecting Handling

A extensão oci8 oferece a você 3 diferentes funções para conectar ao Oracle. Isto para você usar a mais apropriada função para sua aplicação, e a informação nesta seção tem objetivo de ajudar a fazer um boa escolha.

Conectar a um servidor Oracle é uma razoavelmente grande operação, em termos de tempo que isto leva para completar. A função oci_pconnect() usa uma cache persistente de conexões que pode ser reusado para diferentes requisições. Isto significa que você irá normalmente somente fazer a conexão uma vez por processo php (ou processo filho do apache).

Se sua aplicação conecta ao Oracle usando um diferente conjunto de credenciais para cada usuário web, o cache persistente empregado por oci_pconnect() será pouco útil como o número de usuários concorrentes aumenta, pelo o ponto onde ele pode iniciar um efeito inversamente ao da performance de seu servidor Oracle devido a muitas conexões ociosas. Se sua aplicação é estruturada desta forma, é recomendado que esteja usando as definições de configuração oci8.max_persistent e oci8.persistent_timeout (estas irão dar a você controle sobre o tamanho do cache e tempo de vida e conexões persistentes) ou usar oci_connect() ao invés.

Ambas oci_connect() e oci_pconnect() usando um cache de conexão; se você fiz múltiplas chamadas para oci_connect(), usando os mesmo parâmetros, em um dado script, o segundo e subseqüêntes chamadas retornam o existente manipulador de conexão. O cache usado por oci_connect() é limpado no final da execução do script, ou quando você explicitamente fecha um manipulador de conexão. oci_pconnect() tem um comportamento similar, embora o cache seja mantido separadamente e sobreviva entre requisições.

Este recurso de cache é importamente lembrar, porque ele dá a aparência que os dois manipuladores não são transacionalmente isolados (eles são de fato o mesmo manipulador de conexão, então não há nenhum tipo de isolamento). Se sua aplicação precisa ter dois separados, conexões transacionalmente isoladas, você precisa usar oci_new_connect().

oci_new_connect() sempre cria uma nova conexão para o servidor Oracle, desconsiderando que outras conexões possa já existir. Aplicações de bastante tráfego web devem tentar evitar usar oci_new_connect(), especialmente na parte de negócias da aplicação.

Supported Datatypes
OCI8


Supported Datatypes

The driver supports the following types when binding parameters using oci_bind_by_name() function:
Type | Mapping
SQLT_NTY | Maps a native collection type from a PHP collection object, such as those created by oci_new_collection().
SQLT_BFILEE | Maps a native descriptor, such as those created by oci_new_descriptor().
SQLT_CFILEE | Maps a native descriptor, such as those created by oci_new_descriptor().
SQLT_CLOB | Maps a native descriptor, such as those created by oci_new_descriptor().
SQLT_BLOB | Maps a native descriptor, such as those created by oci_new_descriptor().
SQLT_RDD | Maps a native descriptor, such as those created by oci_new_descriptor().
SQLT_NUM | Converts the PHP parameter to a 'C' long type, and binds to that value.
SQLT_RSET | Maps a native statement handle, such as those created by oci_parse() or those retrieved from other OCI queries.
SQLT_CHR and any other type | Converts the PHP parameter to a string type and binds as a string.
The following types are supported when retrieving columns from a result set:
Type | Mapping
SQLT_RSET | Creates an oci statement resource to represent the cursor.
SQLT_RDD | Creates a ROWID object.
SQLT_BLOB | Creates a LOB object.
SQLT_CLOB | Creates a LOB object.
SQLT_BFILE | Creates a LOB object.
SQLT_LNG | Bound as SQLT_CHR, returned as a string
SQLT_LBI | Bound as SQLT_BIN, returned as a string
Any other type | Bound as SQLT_CHR, returned as a string
Connecting Handling
Funções para OCI8
OCI8


Funções para OCI8

Índice

  • oci_bind_array_by_name — Binds a PHP array to an Oracle PL/SQL array parameter
  • oci_bind_by_name — Binds a PHP variable to an Oracle placeholder
  • oci_cancel — Cancels reading from cursor
  • oci_close — Closes an Oracle connection
  • OCI-Collection->append — Appends element to the collection
  • OCI-Collection->assign — Assigns a value to the collection from another existing collection
  • OCI-Collection->assignElem — Assigns a value to the element of the collection
  • OCI-Collection->free — Frees the resources associated with the collection object
  • OCI-Collection->getElem — Returns value of the element
  • OCI-Collection->max — Returns the maximum number of elements in the collection
  • OCI-Collection->size — Returns size of the collection
  • OCI-Collection->trim — Trims elements from the end of the collection
  • oci_commit — Commits the outstanding database transaction
  • oci_connect — Connect to an Oracle database
  • oci_define_by_name — Associates a PHP variable with a column for query fetches
  • oci_error — Returns the last error found
  • oci_execute — Executes a statement
  • oci_fetch_all — Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_array — Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc — Returns the next row from a query as an associative array
  • oci_fetch_object — Returns the next row from a query as an object
  • oci_fetch_row — Returns the next row from a query as a numeric array
  • oci_fetch — Fetches the next row from a query into internal buffers
  • oci_field_is_null — Checks if the field is NULL
  • oci_field_name — Returns the name of a field from the statement
  • oci_field_precision — Tell the precision of a field
  • oci_field_scale — Tell the scale of the field
  • oci_field_size — Returns field's size
  • oci_field_type_raw — Tell the raw Oracle data type of the field
  • oci_field_type — Returns field's data type
  • oci_free_statement — Frees all resources associated with statement or cursor
  • oci_internal_debug — Enables or disables internal debug output
  • OCI-Lob->append — Appends data from the large object to another large object
  • OCI-Lob->close — Closes LOB descriptor
  • oci_lob_copy — Copies large object
  • OCI-Lob->eof — Tests for end-of-file on a large object's descriptor
  • OCI-Lob->erase — Erases a specified portion of the internal LOB data
  • OCI-Lob->export — Exports LOB's contents to a file
  • OCI-Lob->flush — Flushes/writes buffer of the LOB to the server
  • OCI-Lob->free — Frees resources associated with the LOB descriptor
  • OCI-Lob->getBuffering — Returns current state of buffering for the large object
  • OCI-Lob->import — Imports file data to the LOB
  • oci_lob_is_equal — Compares two LOB/FILE locators for equality
  • OCI-Lob->load — Returns large object's contents
  • OCI-Lob->read — Reads part of the large object
  • OCI-Lob->rewind — Moves the internal pointer to the beginning of the large object
  • OCI-Lob->save — Saves data to the large object
  • OCI-Lob->saveFile — Sinônimo de oci_lob_import
  • OCI-Lob->seek — Sets the internal pointer of the large object
  • OCI-Lob->setBuffering — Changes current state of buffering for the large object
  • OCI-Lob->size — Returns size of large object
  • OCI-Lob->tell — Returns the current position of internal pointer of large object
  • OCI-Lob->truncate — Truncates large object
  • OCI-Lob->write — Writes data to the large object
  • OCI-Lob->writeTemporary — Writes a temporary large object
  • OCI-Lob->writeToFile — Sinônimo de oci_lob_export
  • oci_new_collection — Allocates new collection object
  • oci_new_connect — Connect to the Oracle server using a unique connection
  • oci_new_cursor — Allocates and returns a new cursor (statement handle)
  • oci_new_descriptor — Initializes a new empty LOB or FILE descriptor
  • oci_num_fields — Returns the number of result columns in a statement
  • oci_num_rows — Returns number of rows affected during statement execution
  • oci_parse — Prepares an Oracle statement for execution
  • oci_password_change — Changes password of Oracle's user
  • oci_pconnect — Connect to an Oracle database using a persistent connection
  • oci_result — Returns field's value from the fetched row
  • oci_rollback — Rolls back the outstanding database transaction
  • oci_server_version — Returns server version
  • oci_set_action — Sets the action name
  • oci_set_client_identifier — Sets the client identifier
  • oci_set_client_info — Sets the client information
  • oci_set_edition — Sets the database edition
  • oci_set_module_name — Sets the module name
  • oci_set_prefetch — Sets number of rows to be prefetched by queries
  • oci_statement_type — Returns the type of a statement
Supported Datatypes
oci_bind_array_by_name
OCI8


Binds a PHP array to an Oracle PL/SQL array parameter

Funções para OCI8
oci_bind_by_name
Funções para OCI8
PHP Manual

oci_bind_array_by_name

(PHP 5 >= 5.1.2, PECL OCI8 >= 1.2.0)

oci_bind_array_by_name — Binds a PHP array to an Oracle PL/SQL array parameter

Descrição

bool oci_bind_array_by_name ( resource $statement , string $name , array &$var_array , int $max_table_length [, int $max_item_length = -1 [, int $type = SQLT_AFC ]] )

Binds the PHP array var_array to the Oracle placeholder name, which points to an Oracle PL/SQL array. Whether it will be used for input or output will be determined at run-time.

Parâmetros

statement

A valid OCI statement identifier.

name

The Oracle placeholder.

var_array

An array.

max_table_length

Sets the maximum length both for incoming and result arrays.

max_item_length

Sets maximum length for array items. If not specified or equals to -1, oci_bind_array_by_name() will find the longest element in the incoming array and will use it as the maximum length.

type

Should be used to set the type of PL/SQL array items. See list of available types below:

  • SQLT_NUM - for arrays of NUMBER.

  • SQLT_INT - for arrays of INTEGER (Note: INTEGER it is actually a synonym for NUMBER(38), but SQLT_NUM type won't work in this case even though they are synonyms).

  • SQLT_FLT - for arrays of FLOAT.

  • SQLT_AFC - for arrays of CHAR.

  • SQLT_CHR - for arrays of VARCHAR2.

  • SQLT_VCS - for arrays of VARCHAR.

  • SQLT_AVC - for arrays of CHARZ.

  • SQLT_STR - for arrays of STRING.

  • SQLT_LVC - for arrays of LONG VARCHAR.

  • SQLT_ODT - for arrays of DATE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 oci_bind_array_by_name() example

<?php

$c = oci_connect("scott", "tiger");

$create = "CREATE TABLE bind_example(name VARCHAR(20))";
$statement = oci_parse($c, $create);
oci_execute($statement);

$create_pkg = "
CREATE OR REPLACE PACKAGE ARRAYBINDPKG1 AS
  TYPE ARRTYPE IS TABLE OF VARCHAR(20) INDEX BY BINARY_INTEGER;
  PROCEDURE iobind(c1 IN OUT ARRTYPE);
END ARRAYBINDPKG1;";
$statement = oci_parse($c, $create_pkg);
oci_execute($statement);

$create_pkg_body = "
CREATE OR REPLACE PACKAGE BODY ARRAYBINDPKG1 AS
  CURSOR CUR IS SELECT name FROM bind_example;
  PROCEDURE iobind(c1 IN OUT ARRTYPE) IS
    BEGIN
    FOR i IN 1..5 LOOP
      INSERT INTO bind_example VALUES (c1(i));
    END LOOP;
    IF NOT CUR%ISOPEN THEN
      OPEN CUR;
    END IF;
    FOR i IN REVERSE 1..5 LOOP
      FETCH CUR INTO c1(i);
      IF CUR%NOTFOUND THEN
        CLOSE CUR;
        EXIT;
      END IF;
    END LOOP;
  END iobind;
END ARRAYBINDPKG1;";
$statement = oci_parse($c, $create_pkg_body);
oci_execute($statement);

$statement = oci_parse($c, "BEGIN ARRAYBINDPKG1.iobind(:c1); END;");

$array = array("one", "two", "three", "four", "five");

oci_bind_array_by_name($statement, ":c1", $array, 5, -1, SQLT_CHR);

oci_execute($statement);

var_dump($array);

?>

Notas

Nota:

This function is available since OCI8 release 1.2.

Funções para OCI8
oci_bind_by_name
Funções para OCI8


Binds a PHP variable to an Oracle placeholder

oci_bind_array_by_name
oci_cancel
Funções para OCI8
PHP Manual

oci_bind_by_name

(PHP 5, PECL OCI8 >= 1.1.0)

oci_bind_by_name — Binds a PHP variable to an Oracle placeholder

Descrição

bool oci_bind_by_name ( resource $statement , string $bv_name , mixed &$variable [, int $maxlength = -1 [, int $type = SQLT_CHR ]] )

Binds a PHP variable variable to the Oracle bind variable placeholder bv_name. Binding is important for Oracle database performance and also as a way to avoid SQL Injection security issues.

Binding allows the database to reuse the statement context and caches from previous executions of the statement, even if another user or process originally executed it. Binding reduces SQL Injection concerns because the data associated with a bind variable is never treated as part of the SQL statement. It does not need quoting or escaping.

PHP variables that have been bound can be changed and the statement re-executed without needing to re-parse the statement or re-bind.

In Oracle, bind variables are commonly divided into IN binds for values that are passed into the database, and OUT binds for values that are returned to PHP. A bind variable may be both IN and OUT. Whether a bind variable will be used for input or output is determined at run-time.

You must specify maxlength when using an OUT bind so that PHP allocates enough memory to hold the returned value.

For IN binds it is recommended to set the maxlength length if the statement is re-executed multiple times with different values for the PHP variable. Otherwise Oracle may truncate data to the length of the initial PHP variable value. If you don't know what the maximum length will be, then re-call oci_bind_by_name() with the current data size prior to each oci_execute() call. Binding an unnecessarily large length will have an impact on process memory in the database.

A bind call tells Oracle which memory address to read data from. For IN binds that address needs to contain valid data when oci_execute() is called. This means that the variable bound must remain in scope until execution. If it doesn't, unexpected results or errors such as "ORA-01460: unimplemented or unreasonable conversion requested" may occur. For OUT binds one symptom is no value being set in the PHP variable.

For a statement that is repeatedly executed, binding values that never change may reduce the ability of the Oracle optimizer to choose the best statement execution plan. Long running statements that are rarely re-executed may not benefit from binding. However in both cases, binding might be safer than joining strings into a SQL statement, as this can be a security risk if unfiltered user text is concatenated.

Parâmetros

statement

A valid OCI8 statement identifer.

bv_name

The colon-prefixed bind variable placeholder used in the statement. The colon is optional in bv_name. Oracle does not use question marks for placeholders.

variable

The PHP variable to be associated with bv_name

maxlength

Sets the maximum length for the data. If you set it to -1, this function will use the current length of variable to set the maximum length. In this case the variable must exist and contain data when oci_bind_by_name() is called.

type

The datatype that Oracle will treat the data as. The default type used is SQLT_CHR. Oracle will convert the data between this type and the database column (or PL/SQL variable type), when possible.

If you need to bind an abstract datatype (LOB/ROWID/BFILE) you need to allocate it first using the oci_new_descriptor() function. The length is not used for abstract datatypes and should be set to -1.

Possible values for type are:

  • SQLT_BFILEE or OCI_B_BFILE - for BFILEs;

  • SQLT_CFILEE or OCI_B_CFILEE - for CFILEs;

  • SQLT_CLOB or OCI_B_CLOB - for CLOBs;

  • SQLT_BLOB or OCI_B_BLOB - for BLOBs;

  • SQLT_RDD or OCI_B_ROWID - for ROWIDs;

  • SQLT_NTY or OCI_B_NTY - for named datatypes;

  • SQLT_INT or OCI_B_INT - for integers;

  • SQLT_CHR - for VARCHARs;

  • SQLT_BIN or OCI_B_BIN - for RAW columns;

  • SQLT_LNG - for LONG columns;

  • SQLT_LBI - for LONG RAW columns;

  • SQLT_RSET - for cursors created with oci_new_cursor().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Inserting data with oci_bind_by_name()

<?php

// Create the table with:
//   CREATE TABLE mytab (id NUMBER, text VARCHAR2(40));

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$stid = oci_parse($conn,"INSERT INTO mytab (id, text) VALUES(:id_bv, :text_bv)");

$id = 1;
$text = "Data to insert     ";
oci_bind_by_name($stid, ":id_bv", $id);
oci_bind_by_name($stid, ":text_bv", $text);
oci_execute($stid);

// Table now contains: 1, 'Data to insert     '

?>

Exemplo #2 Binding once for multiple executions

<?php

// Create the table with:
//   CREATE TABLE mytab (id NUMBER);

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$a = array(1,3,5,7,11);  // data to insert

$stid = oci_parse($conn, 'INSERT INTO mytab (id) VALUES (:bv)');
oci_bind_by_name($stid, ':bv', $v, 20);
foreach ($a as $v) {
    $r = oci_execute($stid, OCI_DEFAULT);  // don't auto commit
}
oci_commit($conn); // commit everything at once

// Table contains five rows: 1, 3, 5, 7, 11

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #3 Binding with a foreach() loop

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$sql = 'SELECT * FROM departments WHERE department_name = :dname AND location_id = :loc';
$stid = oci_parse($conn, $sql);

$ba = array(':dname' => 'IT Support', ':loc' => 1700);

foreach ($ba as $key => $val) {

    // oci_bind_by_name($stid, $key, $val) does not work
    // because it binds each placeholder to the same location: $val
    // instead use the actual location of the data: $ba[$key]
    oci_bind_by_name($stid, $key, $ba[$key]);
}

oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS);
foreach ($row as $item) {
    print $item."<br>\n";
}

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #4 Binding in a WHERE clause

<?php

$conn = oci_connect("hr", "hrpwd", "localhost/XE");
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$sql = 'SELECT last_name FROM employees WHERE employee_id = :eidbv';
$stid = oci_parse($conn, $sql);
$myeid = 101;
oci_bind_by_name($stid, ':eidbv', $myeid);
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC);
echo $row['LAST_NAME'] ."<br>\n";

// Output is
//    Kochhar

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #5 Binding with a LIKE clause

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

// Find all cities that begin with 'South'
$stid = oci_parse($conn, "SELECT city FROM locations WHERE city LIKE :bv");
$city = 'South%';  // '%' is a wildcard in SQL
oci_bind_by_name($stid, ":bv", $city);
oci_execute($stid);
oci_fetch_all($stid, $res);

foreach ($res['CITY'] as $c) {
    print $c . "<br>\n";
}
// Output is
//   South Brunswick
//   South San Francisco
//   Southlake

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #6 Binding with REGEXP_LIKE

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

// Find all cities that contain 'ing'
$stid = oci_parse($conn, "SELECT city FROM locations WHERE REGEXP_LIKE(city, :bv)");
$city = '.*ing.*';
oci_bind_by_name($stid, ":bv", $city);
oci_execute($stid);
oci_fetch_all($stid, $res);

foreach ($res['CITY'] as $c) {
    print $c . "<br>\n";
}
// Output is
//   Beijing
//   Singapore

oci_free_statement($stid);
oci_close($conn);

?>

For a small, fixed number of IN clause conditions, use individual bind variables. Values unknown at run time can be set to NULL. This allows a single statement to be used by all application users, maximizing Oracle DB cache efficiency.

Exemplo #7 Binding Multiple Values in an IN Clause

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$sql = 'SELECT last_name FROM employees WHERE employee_id in (:e1, :e2, :e3)';
$stid = oci_parse($conn, $sql);
$mye1 = 103;
$mye2 = 104;
$mye3 = NULL; // pretend we were not given this value
oci_bind_by_name($stid, ':e1', $mye1);
oci_bind_by_name($stid, ':e2', $mye2);
oci_bind_by_name($stid, ':e3', $mye3);
oci_execute($stid);
oci_fetch_all($stid, $res);
foreach ($res['LAST_NAME'] as $name) {
    print $name ."<br>\n";
}

// Output is
//   Ernst
//   Hunold

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #8 Binding a ROWID returned by a query

<?php

// Create the table with:
//   CREATE TABLE mytab (id NUMBER, salary NUMBER, name VARCHAR2(40));
//   INSERT INTO mytab (id, salary, name) VALUES (1, 100, 'Chris');
//   COMMIT;

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT ROWID, name FROM mytab WHERE id = :id_bv FOR UPDATE');
$id = 1;
oci_bind_by_name($stid, ':id_bv', $id);
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS);
$rid = $row['ROWID'];
$name = $row['NAME'];

// Change name to upper case & save the changes
$name = strtoupper($name);
$stid = oci_parse($conn, 'UPDATE mytab SET name = :n_bv WHERE ROWID = :r_bv');
oci_bind_by_name($stid, ':n_bv', $name);
oci_bind_by_name($stid, ':r_bv', $rid, -1, OCI_B_ROWID);
oci_execute($stid);

// The table now contains 1, 100, CHRIS

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #9 Binding a ROWID on INSERT

<?php

// This example inserts an id & name, and then updates the salary
// Create the table with:
//   CREATE TABLE mytab (id NUMBER, salary NUMBER, name VARCHAR2(40));
//
// Based on original ROWID example by thies at thieso dot net (980221)

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$sql = "INSERT INTO mytab (id, name) VALUES(:id_bv, :name_bv)
        RETURNING ROWID INTO :rid";

$ins_stid = oci_parse($conn, $sql);

$rowid = oci_new_descriptor($conn, OCI_D_ROWID);
oci_bind_by_name($ins_stid, ":id_bv",   $id,    10);
oci_bind_by_name($ins_stid, ":name_bv", $name,  32);
oci_bind_by_name($ins_stid, ":rid",     $rowid, -1, OCI_B_ROWID);

$sql = "UPDATE mytab SET salary = :salary WHERE ROWID = :rid";
$upd_stid = oci_parse($conn, $sql);
oci_bind_by_name($upd_stid, ":rid", $rowid, -1, OCI_B_ROWID);
oci_bind_by_name($upd_stid, ":salary", $salary,   32);

// ids and names to insert
$data = array(1111 => "Larry",
              2222 => "Bill",
              3333 => "Jim");

// Salary of each person
$salary = 10000;

// Insert and immediately update each row
foreach ($data as $id => $name) {
    oci_execute($ins_stid);
    oci_execute($upd_stid);
}

$rowid->free();
oci_free_statement($upd_stid);
oci_free_statement($ins_stid);

// Show the new rows
$stid = oci_parse($conn, "SELECT * FROM mytab");
oci_execute($stid);
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    var_dump($row);
}

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #10 Binding for a PL/SQL stored function

<?php

//  Before running the PHP program, create a stored function in
//  SQL*Plus or SQL Developer:
//
//  CREATE OR REPLACE FUNCTION myfunc(p IN NUMBER) RETURN NUMBER AS
//  BEGIN
//      RETURN p * 3;
//  END;

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$p = 8;

$stid = oci_parse($conn, 'begin :r := myfunc(:p); end;');
oci_bind_by_name($stid, ':p', $p);

// The return value is an OUT bind. The default type will be a string
// type so binding a length 40 means that at most 40 digits will be
// returned.
oci_bind_by_name($stid, ':r', $r, 40);

oci_execute($stid);

print "$r\n";   // prints 24

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #11 Binding parameters for a PL/SQL stored procedure

<?php

//  Before running the PHP program, create a stored procedure in
//  SQL*Plus or SQL Developer:
//
//  CREATE OR REPLACE PROCEDURE myproc(p1 IN NUMBER, p2 OUT NUMBER) AS
//  BEGIN
//      p2 := p1 * 2;
//  END;

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$p1 = 8;

$stid = oci_parse($conn, 'begin myproc(:p1, :p2); end;');
oci_bind_by_name($stid, ':p1', $p1);

// The second procedure parameter is an OUT bind. The default type
// will be a string type so binding a length 40 means that at most 40
// digits will be returned.
oci_bind_by_name($stid, ':p2', $p2, 40);

oci_execute($stid);

print "$p2\n";   // prints 16

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #12 Binding a CLOB column

<?php

// Before running, create the table:
//     CREATE TABLE mytab (mykey NUMBER, myclob CLOB);

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$mykey = 12343;  // arbitrary key for this example;

$sql = "INSERT INTO mytab (mykey, myclob)
        VALUES (:mykey, EMPTY_CLOB())
        RETURNING myclob INTO :myclob";

$stid = oci_parse($conn, $sql);
$clob = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_bind_by_name($stid, ":myclob", $clob, -1, OCI_B_CLOB);
oci_execute($stid, OCI_DEFAULT);
$clob->save("A very long string");

oci_commit($conn);

// Fetching CLOB data

$query = 'SELECT myclob FROM mytab WHERE mykey = :mykey';

$stid = oci_parse ($conn, $query);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_execute($stid);

print '<table border="1">';
while ($row = oci_fetch_array($stid, OCI_ASSOC)) {
  $result = $row['MYCLOB']->load();
  print '<tr><td>'.$result.'</td></tr>';
}
print '</table>';

?>

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Do not use magic_quotes_gpc or addslashes() and oci_bind_by_name() simultaneously as no quoting is needed. Any magically applied quotes will be written into your database because oci_bind_by_name() inserts data verbatim and does not remove quotes or escape characters.

Nota:

If you bind a string to a CHAR column in a WHERE clause, remember that Oracle uses blank-padded comparison semantics for CHAR columns. Your PHP variable should be blank padded to the same width as the column for the WHERE clause to succeed.

Nota:

The PHP variable argument is a reference. Some forms of loops do not work as expected:

<?php
foreach ($myarray as $key => $value)  {
    oci_bind_by_name($stid, $key, $value);
}
?>

This binds each key to the location of $value, so all bound variables end up pointing to the last loop iteration's value. Instead use the following:

<?php
foreach ($myarray as $key => $value) {
    oci_bind_by_name($stid, $key, $myarray[$key]);
}
?>

Nota:

In PHP versions before 5.0.0 you must use ocibindbyname() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_bind_array_by_name() - Binds a PHP array to an Oracle PL/SQL array parameter
  • oci_parse() - Prepares an Oracle statement for execution

oci_bind_array_by_name
oci_cancel
Funções para OCI8


Cancels reading from cursor

oci_bind_by_name
oci_close
Funções para OCI8
PHP Manual

oci_cancel

(PHP 5, PECL OCI8 >= 1.1.0)

oci_cancel — Cancels reading from cursor

Descrição

bool oci_cancel ( resource $statement )

Invalidates a cursor, freeing all associated resources and cancels the ability to read from it.

Parâmetros

statement

An OCI statement.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

oci_bind_by_name
oci_close
Funções para OCI8


Closes an Oracle connection

oci_cancel
OCI-Collection->append
Funções para OCI8
PHP Manual

oci_close

(PHP 5, PECL OCI8 >= 1.1.0)

oci_close — Closes an Oracle connection

Descrição

bool oci_close ( resource $connection )

Unsets connection. The underlying database connection is closed if no other resources are using it and if it was created with oci_connect() or oci_new_connect().

It is recommended to close connections that are no longer needed because this makes database resources available for other users.

Parâmetros

connection

An Oracle connection identifier returned by oci_connect(), oci_pconnect(), or oci_new_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Closing a connection

Resources associated with a connection should be closed to ensure the underlying database connection is properly terminated and the database resources are released.

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM departments');
$r = oci_execute($stid);
oci_fetch_all($stid, $res);
var_dump($res);

// Free the statement identifier when closing the connection
oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 Database connections are not closed until all references are closed

The internal refcount of a connection identifier must be zero before the underlying connection to the database is closed.

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM departments');  // this increases the refcount on $conn
oci_execute($stid);
oci_fetch_all($stid, $res);
var_dump($res);

oci_close($conn);

// $conn is no long usable in the script but the underlying database
// connection is still held open until $stid is freed.
var_dump($conn);  // prints NULL

// While PHP sleeps, querying the Oracle V$SESSION view in a
// terminal window will show that the database user is still connected.
sleep(10);

// When $stid is freed, the database connection is physically closed
oci_free_statement($stid);

// While PHP sleeps, querying the Oracle V$SESSION view in a
// terminal window will show that the database user has disconnected.
sleep(10);

?>

Exemplo #3 Closing a connection opened more than once

When database credentials are reused, both connections must be closed before the underlying database connection is closed.

<?php

$conn1 = oci_connect('hr', 'welcome', 'localhost/XE');

// Using the same credentials reuses the same underlying database connection
// Any uncommitted changes done on $conn1 will be visible in $conn2
$conn2 = oci_connect('hr', 'welcome', 'localhost/XE');

// While PHP sleeps, querying the Oracle V$SESSION view in a
// terminal window will show that only one database user is connected.
sleep(10);

oci_close($conn1); // doesn't close the underlying database connection
var_dump($conn1);  // prints NULL because the variable $conn1 is no longer usable
var_dump($conn2);  // displays that $conn2 is still a valid connection resource

?>

Exemplo #4 Connections are closed when variables go out of scope

When all variables referencing a connection go out of scope and are freed by PHP, a rollback occurs (if necessary) and the underlying connection to the database is closed.

<?php

function myfunc() {
    $conn = oci_connect('hr', 'hrpwd', 'localhost/XE');
    if (!$conn) {
        $e = oci_error();
        trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
    }

    $stid = oci_parse($conn, 'UPDATE mytab SET id = 100');
    oci_execute($stid, OCI_NO_AUTO_COMMIT);
    return "Finished";
}

$r = myfunc();
// At this point a rollback occurred and the underlying database connection was released.

print $r;  // displays the function return value "Finished"

?>

Notas

Nota:

Variables that have a dependency on the connection identifier, such as statement identifiers returned by oci_parse(), must also be freed before the underlying database connection is closed.

Nota:

Prior to version PHP 5.1.2 (PECL OCI8 1.1) oci_close() was a no-op. In more recent versions it correctly closes the Oracle connection. Use oci8.old_oci_close_semantics option to restore old behavior of this function.

Nota:

The oci_close() function does not close the underlying database connections created with oci_pconnect().

Nota:

In PHP versions before 5.0.0 you must use ocilogoff() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_connect() - Connect to an Oracle database
  • oci_free_statement() - Frees all resources associated with statement or cursor

oci_cancel
OCI-Collection->append
Funções para OCI8


Appends element to the collection

oci_close
OCI-Collection->assign
Funções para OCI8
PHP Manual

OCI-Collection->append

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->append — Appends element to the collection

Descrição

bool OCI-Collection::append ( mixed $value )

Appends element to the end of the collection.

Parâmetros

value

The value to be added to the collection. Can be a string or a number.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Collection->assign

oci_close
OCI-Collection->assign
Funções para OCI8


Assigns a value to the collection from another existing collection

OCI-Collection->append
OCI-Collection->assignElem
Funções para OCI8
PHP Manual

OCI-Collection->assign

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->assign — Assigns a value to the collection from another existing collection

Descrição

bool OCI-Collection::assign ( OCI-Collection $from )

Assigns a value to the collection from another, previously created collection. Both collections must be created with oci_new_collection() prior to using them.

Parâmetros

from

An instance of OCI-Collection.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Collection->append

OCI-Collection->append
OCI-Collection->assignElem
Funções para OCI8


Assigns a value to the element of the collection

OCI-Collection->assign
OCI-Collection->free
Funções para OCI8
PHP Manual

OCI-Collection->assignElem

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->assignElem — Assigns a value to the element of the collection

Descrição

bool OCI-Collection::assignElem ( int $index , mixed $value )

Assigns a value to the element with index index.

Parâmetros

index

The element index. First index is 1.

value

Can be a string or a number.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Collection->getElem

OCI-Collection->assign
OCI-Collection->free
Funções para OCI8


Frees the resources associated with the collection object

OCI-Collection->assignElem
OCI-Collection->getElem
Funções para OCI8
PHP Manual

OCI-Collection->free

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->free — Frees the resources associated with the collection object

Descrição

bool OCI-Collection::free ( void )

Frees the resources associated with the collection object.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • oci_new_collection

OCI-Collection->assignElem
OCI-Collection->getElem
Funções para OCI8


Returns value of the element

OCI-Collection->free
OCI-Collection->max
Funções para OCI8
PHP Manual

OCI-Collection->getElem

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->getElem — Returns value of the element

Descrição

mixed OCI-Collection::getElem ( int $index )

Returns element's value with the index index (1-based).

Parâmetros

index

The element index. First index is 1.

Valor Retornado

Returns FALSE if such element doesn't exist; NULL if element is NULL; string if element is column of a string datatype or number if element is numeric field.

Veja Também

  • OCI-Collection->assignElem

OCI-Collection->free
OCI-Collection->max
Funções para OCI8


Returns the maximum number of elements in the collection

OCI-Collection->getElem
OCI-Collection->size
Funções para OCI8
PHP Manual

OCI-Collection->max

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->max — Returns the maximum number of elements in the collection

Descrição

int OCI-Collection::max ( void )

Returns the maximum number of elements in the collection.

Valor Retornado

Returns the maximum number as an integer, or FALSE on errors.

If the returned value is 0, then the number of elements is not limited.

Veja Também

  • OCI-Collection->size

OCI-Collection->getElem
OCI-Collection->size
Funções para OCI8


Returns size of the collection

OCI-Collection->max
OCI-Collection->trim
Funções para OCI8
PHP Manual

OCI-Collection->size

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->size — Returns size of the collection

Descrição

int OCI-Collection::size ( void )

Returns the size of the collection.

Valor Retornado

Returns the number of elements in the collection or FALSE on error.

Veja Também

  • OCI-Collection->max

OCI-Collection->max
OCI-Collection->trim
Funções para OCI8


Trims elements from the end of the collection

OCI-Collection->size
oci_commit
Funções para OCI8
PHP Manual

OCI-Collection->trim

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Collection->trim — Trims elements from the end of the collection

Descrição

bool OCI-Collection::trim ( int $num )

Trims num of elements from the end of the collection.

Parâmetros

num

The number of elements to be trimmed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Collection->size

OCI-Collection->size
oci_commit
Funções para OCI8


Commits the outstanding database transaction

OCI-Collection->trim
oci_connect
Funções para OCI8
PHP Manual

oci_commit

(PHP 5, PECL OCI8 >= 1.1.0)

oci_commit — Commits the outstanding database transaction

Descrição

bool oci_commit ( resource $connection )

Commits the outstanding transaction for the Oracle connection. A commit ends the current transaction and makes permanent all changes. It releases all locks held.

A transaction begins when the first SQL statement that changes data is executed with oci_execute() using the OCI_NO_AUTO_COMMIT flag. Further data changes made by other statements become part of the same transaction. Data changes made in a transaction are temporary until the transaction is committed or rolled back. Other users of the database will not see the changes until they are committed.

When inserting or updating data, using transactions is recommended for relational data consistency and for performance reasons.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 oci_commit() example

<?php

// Insert into several tables, rolling back the changes if an error occurs

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, "INSERT INTO mysalary (id, name) VALUES (1, 'Chris')");

// The OCI_NO_AUTO_COMMIT flag tells Oracle not to commit the INSERT immediately
// Use OCI_DEFAULT as the flag for PHP <= 5.3.1.  The two flags are equivalent
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
    $e = oci_error($stid);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, 'INSERT INTO myschedule (startday) VALUES (12)');
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
    $e = oci_error($stid);
    oci_rollback($conn);  // rollback changes to both tables
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

// Commit the changes to both tables
$r = oci_commit($conn);
if (!r) {
    $e = oci_error($conn);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

?>

Notas

Nota:

Transactions are automatically rolled back when you close the connection, or when the script ends, whichever is soonest. You need to explicitly call oci_commit() to commit the transaction.

Any call to oci_execute() that uses OCI_COMMIT_ON_SUCCESS mode explicitly or by default will commit any previous uncommitted transaction.

Any Oracle DDL statement such as CREATE or DROP will automatically commit any uncommitted transaction.

Nota:

In PHP versions before 5.0.0 you must use ocicommit() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_execute() - Executes a statement
  • oci_rollback() - Rolls back the outstanding database transaction

OCI-Collection->trim
oci_connect
Funções para OCI8


Connect to an Oracle database

oci_commit
oci_define_by_name
Funções para OCI8
PHP Manual

oci_connect

(PHP 5, PECL OCI8 >= 1.1.0)

oci_connect — Connect to an Oracle database

Descrição

resource oci_connect ( string $username , string $password [, string $connection_string [, string $character_set [, int $session_mode ]]] )

Returns a connection identifier needed for most other OCI8 operations.

See Connection Handling for general information on connection management and connection pooling.

From PHP 5.1.2 (PECL OCI8 1.1) oci_close() can be used to close the connection.

The second and subsequent calls to oci_connect() with the same parameters will return the connection handle returned from the first call. This means that transactions in one handle are also in the other handles, because they use the same underlying database connection. If two handles need to be transactionally isolated from each other, use oci_new_connect() instead.

Parâmetros

username

The Oracle user name.

password

The password for username.

connection_string

Contains the Oracle instance to connect to. It can be an » Easy Connect string, or a Connect Name from the tnsnames.ora file, or the name of a local Oracle instance.

If not specified, PHP uses environment variables such as TWO_TASK (on Linux) or LOCAL (on Windows) and ORACLE_SID to determine the Oracle instance to connect to.

To use the Easy Connect naming method, PHP must be linked with Oracle 10g or greater Client libraries. The Easy Connect string for Oracle 10g is of the form: [//]host_name[:port][/service_name]. With Oracle 11g, the syntax is: [//]host_name[:port][/service_name][:server_type][/instance_name]. Service names can be found by running the Oracle utility lsnrctl status on the database server machine.

The tnsnames.ora file can be in the Oracle Net search path, which includes $ORACLE_HOME/network/admin and /etc. Alternatively set TNS_ADMIN so that $TNS_ADMIN/tnsnames.ora is read. Make sure the web daemon has read access to the file.

character_set

Com o Oracle server 9.2 e seguintes, você pode indicar o parâmetro charset, que será utilizado na nova conexão. Se você estiver utilizando Oracle server < 9.2, este parâmetro será ignorado e a variável de ambiente NLS_LANG deverá ser utilizada.

session_mode

This parameter is available since version PHP 5 (PECL OCI8 1.1) and accepts the following values: OCI_DEFAULT, OCI_SYSOPER and OCI_SYSDBA. If either OCI_SYSOPER or OCI_SYSDBA were specified, this function will try to establish privileged connection using external credentials. Privileged connections are disabled by default. To enable them you need to set oci8.privileged_connect to On.

PHP 5.3 (PECL OCI8 1.3.4) introduced the OCI_CRED_EXT mode value. This tells Oracle to use External or OS authentication, which must be configured in the database. The OCI_CRED_EXT flag can only be used with username of "/" and a empty password. oci8.privileged_connect may be On or Off.

OCI_CRED_EXT may be combined with the OCI_SYSOPER or OCI_SYSDBA modes.

OCI_CRED_EXT is not supported on Windows for security reasons.

Valor Retornado

Returns a connection identifier or FALSE on error.

Exemplos

Exemplo #1 Basic oci_connect() using Easy Connect syntax

<?php

// Connects to the XE service (i.e. database) on the "localhost" machine
$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM employees');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplo #2 Basic oci_connect() using a Network Connect name

<?php

// Connects to the MYDB database described in tnsnames.ora file,
// One example tnsnames.ora entry for MYDB could be:
//   MYDB =
//     (DESCRIPTION =
//       (ADDRESS = (PROTOCOL = TCP)(HOST = mymachine.oracle.com)(PORT = 1521))
//       (CONNECT_DATA =
//         (SERVER = DEDICATED)
//         (SERVICE_NAME = XE)
//       )
//     )

$conn = oci_connect('hr', 'welcome', 'MYDB');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM employees');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplo #3 oci_connect() with an explicit character set

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE', 'AL32UTF8');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM employees');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplo #4 Using multiple calls to oci_connect()

<?php

$c1 = oci_connect("hr", "welcome", 'localhost/XE');
$c2 = oci_connect("hr", "welcome", 'localhost/XE');

// Both $c1 and $c2 show the same PHP resource id meaning they use the
// same underlying database connection
echo "c1 is $c1<br>\n";
echo "c2 is $c2<br>\n";

function create_table($conn)
{
    $stmt = oci_parse($conn, "create table hallo (test varchar2(64))");
    oci_execute($stmt);
    echo "Created table<br>\n";
}

function drop_table($conn)
{
    $stmt = oci_parse($conn, "drop table hallo");
    oci_execute($stmt);
    echo "Dropped table<br>\n";
}

function insert_data($connname, $conn)
{
    $stmt = oci_parse($conn, "insert into hallo
              values(to_char(sysdate,'DD-MON-YY HH24:MI:SS'))");
    oci_execute($stmt, OCI_DEFAULT);
    echo "$connname inserted row without committing<br>\n";
}

function rollback($connname, $conn)
{
    oci_rollback($conn);
    echo "$connname rollback<br>\n";
}

function select_data($connname, $conn)
{
    $stmt = oci_parse($conn, "select * from hallo");
    oci_execute($stmt, OCI_DEFAULT);
    echo "$connname ----selecting<br>\n";
    while (oci_fetch($stmt)) {
        echo "    " . oci_result($stmt, "TEST") . "<br>\n";
    }
    echo "$connname ----done<br>\n";
}

create_table($c1);

insert_data('c1', $c1);   // Insert a row using c1
sleep(2);                 // sleep to show a different timestamp for the 2nd row
insert_data('c2', $c2);   // Insert a row using c2

select_data('c1', $c1);   // Results of both inserts are returned
select_data('c2', $c2);   // Results of both inserts are returned

rollback('c1', $c1);      // Rollback using c1

select_data('c1', $c1);   // Both inserts have been rolled back
select_data('c2', $c2);

drop_table($c1);

// Closing one of the connections makes the PHP variable unusable, but
// the other could be used
oci_close($c1);
echo "c1 is $c1<br>\n";
echo "c2 is $c2<br>\n";

// Output is:
//    c1 is Resource id #5
//    c2 is Resource id #5
//    Created table
//    c1 inserted row without committing
//    c2 inserted row without committing
//    c1 ----selecting
//        09-DEC-09 12:14:43
//        09-DEC-09 12:14:45
//    c1 ----done
//    c2 ----selecting
//        09-DEC-09 12:14:43
//        09-DEC-09 12:14:45
//    c2 ----done
//    c1 rollback
//    c1 ----selecting
//    c1 ----done
//    c2 ----selecting
//    c2 ----done
//    Dropped table
//    c1 is
//    c2 is Resource id #5

?>

Notas

Nota:

An incorrectly installed or configured OCI8 extension will often manifest itself as a connection problem or error. See Installing/Configuring for troubleshooting information.

Nota:

In PHP versions before 5.0.0 use ocilogon() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_pconnect() - Connect to an Oracle database using a persistent connection
  • oci_new_connect() - Connect to the Oracle server using a unique connection
  • oci_close() - Closes an Oracle connection

oci_commit
oci_define_by_name
Funções para OCI8


Associates a PHP variable with a column for query fetches

oci_connect
oci_error
Funções para OCI8
PHP Manual

oci_define_by_name

(PHP 5, PECL OCI8 >= 1.1.0)

oci_define_by_name — Associates a PHP variable with a column for query fetches

Descrição

bool oci_define_by_name ( resource $statement , string $column_name , mixed &$variable [, int $type = SQLT_CHR ] )

Associates a PHP variable with a column for query fetches using oci_fetch().

The oci_define_by_name() call must occur before executing oci_execute().

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

column_name

The column name used in the query.

Use uppercase for Oracle's default, non-case sensitive column names. Use the exact column name case for case-sensitive column names.

variable

The PHP variable that will contain the returned column value.

type

The data type to be returned. Generally not needed. Note that Oracle-style data conversions are not performed. For example, SQLT_INT will be ignored and the returned data type will still be SQLT_CHR.

You can optionally use oci_new_descriptor() to allocate LOB/ROWID/BFILE descriptors.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 oci_define_by_name() example

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);

// The defines MUST be done before executing
oci_define_by_name($stid, 'LOCATION_ID', $locid);
oci_define_by_name($stid, 'CITY', $city);

oci_execute($stid);

// Each fetch populates the previously defined variables with the next row's data
while (oci_fetch($stid)) {
    echo "Location id $locid is $city<br>\n";
}

// Displays:
//   Location id 1000 is Roma
//   Location id 1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 oci_define_by_name() with case sensitive column names

<?php

/*
  Before running, create the table with a case sensitive column name:
    CREATE TABLE mytab (id NUMBER, "MyDescription" VARCHAR2(30));
    INSERT INTO mytab (id, "MyDescription") values (1, 'Iced Coffee');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM mytab');

// Use uppercase for non case-sensitive column names
oci_define_by_name($stid, 'ID', $id);

// Use the exact case for case-sensitive column names
oci_define_by_name($stid, 'MyDescription', $mydesc);

oci_execute($stid);

while (oci_fetch($stid)) {
    echo "id $id is $mydesc<br>\n";
}

// Displays:
//   id 1 is Iced Coffee

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #3 oci_define_by_name() with LOB columns

<?php

/*
  Before running, create the table:
    CREATE TABLE mytab (id NUMBER, fruit CLOB);
    INSERT INTO mytab (id, fruit) values (1, 'apple');
    INSERT INTO mytab (id, fruit) values (2, 'orange');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM mytab');

// The defines MUST be done before executing
oci_define_by_name($stid, 'ID', $id);
oci_define_by_name($stid, 'FRUIT', $fruit);  // $fruit will become a LOB descriptor

oci_execute($stid);

while (oci_fetch($stid)) {
    echo $id . " is " . $fruit->load(100) . "<br>\n";
}

// Displays:
//   1 is apple
//   2 is orange

$fruit->free();
oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #4 oci_define_by_name() with an explicit type

<?php

/*
  Before running, create the table:
    CREATE TABLE mytab (id NUMBER, fruit CLOB);
    INSERT INTO mytab (id, fruit) values (1, 'apple');
    INSERT INTO mytab (id, fruit) values (2, 'orange');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM mytab');

// The defines MUST be done before executing
oci_define_by_name($stid, 'ID', $id);

$fruit = oci_new_descriptor($conn, OCI_D_LOB);
oci_define_by_name($stid, 'FRUIT', $fruit, OCI_D_CLOB);

oci_execute($stid);

while (oci_fetch($stid)) {
    echo $id . " is " . $fruit->load(100) . "<br>\n";
}

// Displays:
//   1 is apple
//   2 is orange

$fruit->free();
oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

In PHP versions before 5.0.0 use ocidefinebyname() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_new_descriptor() - Initializes a new empty LOB or FILE descriptor

oci_connect
oci_error
Funções para OCI8


Returns the last error found

oci_define_by_name
oci_execute
Funções para OCI8
PHP Manual

oci_error

(PHP 5, PECL OCI8 >= 1.1.0)

oci_error — Returns the last error found

Descrição

array oci_error ([ resource $resource ] )

Returns the last error found.

The function should be called immediately after an error occurs. Errors are cleared by a successful statement.

Parâmetros

resource

For most errors, resource is the
resource handle that was passed to the failing function call.
For connection errors with oci_connect(),
oci_new_connect() or
oci_pconnect() do not pass resource.

Valor Retornado

If no error is found, oci_error() returns FALSE. Otherwise, oci_error() returns the error information as an associative array.

oci_error() Array Description
Array key | Type | Descrição
code | integer | The Oracle error number.
message | string | The Oracle error text.
offset | integer | The byte position of an error in the SQL statement. If there was no statement, this is 0
sqltext | string | The SQL statement text. If there was no statement, this is an empty string.

Histórico

Versão | Descrição
PHP 4.3 | The offset and sqltext entries were added.

Exemplos

Exemplo #1 Displaying the Oracle error message after a connection error

<?php
$conn = oci_connect("hr", "welcome", "localhost/XE");
if (!$conn) {
    $e = oci_error();   // For oci_connect errors do not pass a handle
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>

Exemplo #2 Displaying the Oracle error message after a parsing error

<?php
$stid = oci_parse($conn, "select ' from dual");  // note mismatched quote
if (!$stid) {
    $e = oci_error($conn);  // For oci_parse errors pass the connection handle
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>

Exemplo #3 Displaying the Oracle error message, the problematic statement, and the position of the problem of an execution error

<?php
$stid = oci_parse($conn, "select does_not_exist from dual");
$r = oci_execute($stid);
if (!$r) {
    $e = oci_error($stid);  // For oci_execute errors pass the statement handle
    print htmlentities($e['message']);
    print "\n<pre>\n";
    print htmlentities($e['sqltext']);
    printf("\n%".($e['offset']+1)."s", "^");
    print  "\n</pre>\n";
}
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocierror() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

oci_define_by_name
oci_execute
Funções para OCI8


Executes a statement

oci_error
oci_fetch_all
Funções para OCI8
PHP Manual

oci_execute

(PHP 5, PECL OCI8 >= 1.1.0)

oci_execute — Executes a statement

Descrição

bool oci_execute ( resource $statement [, int $mode = OCI_COMMIT_ON_SUCCESS ] )

Executes a statement previously returned from oci_parse().

After execution, statements like INSERT will have data committed to the database by default. For statements like SELECT, execution performs the logic of the query. Query results can subsequently be fetched in PHP with functions like oci_fetch_array().

Each parsed statement may be executed multiple times, saving the cost of re-parsing. This is commonly used for INSERT statements when data is bound with oci_bind_by_name().

Parâmetros

statement

A valid OCI statement identifier.

mode

An optional second parameter can be one of the following constants:

Execution Modes
Constant | Description
OCI_COMMIT_ON_SUCCESS | Automatically commit all outstanding changes for this connection when the statement has succeeded. This is the default.
OCI_DEFAULT | Obsolete as of PHP 5.3.2 (PECL OCI8 1.4) but still available for backward compatibility. Use the equivalent OCI_NO_AUTO_COMMIT in new code.
OCI_DESCRIBE_ONLY | Make query meta data available to functions like oci_field_name() but do not create a result set. Any subsequent fetch call such as oci_fetch_array() will fail.
OCI_NO_AUTO_COMMIT | Do not automatically commit changes. Prior to PHP 5.3.2 (PECL OCI8 1.4) use OCI_DEFAULT which is an alias for OCI_NO_AUTO_COMMIT.

Using OCI_NO_AUTO_COMMIT mode starts a transaction. Transactions are automatically rolled back when the connection is closed, or when the script ends. Explicitly call oci_commit() to commit a transaction, or oci_rollback() to abort it.

When inserting or updating data, using transactions is recommended for relational data consistency and for performance reasons.

If OCI_NO_AUTO_COMMIT mode is used for any statement including queries, and oci_commit() or oci_rollback() is not subsequently called, then OCI8 will perform a rollback at the end of the script even if no data was changed. To avoid an unnecessary rollback, many scripts do not use OCI_NO_AUTO_COMMIT mode for queries or PL/SQL. Be careful to ensure the appropriate transactional consistency for the application when using oci_execute() with different modes in the same script.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 oci_execute() for queries

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'SELECT * FROM employees');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplo #2 oci_execute() without specifying a mode example

<?php

// Before running, create the table:
//   CREATE TABLE MYTABLE (col1 NUMBER);

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'INSERT INTO mytab (col1) VALUES (123)');

oci_execute($stid); // The row is committed and immediately visible to other users

?>

Exemplo #3 oci_execute() with OCI_NO_AUTO_COMMIT example

<?php

// Before running, create the table:
//   CREATE TABLE MYTABLE (col1 NUMBER);

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'INSERT INTO mytab (col1) VALUES (:bv)');
oci_bind_by_name($stid, ':bv', $i, 10);
for ($i = 1; $i <= 5; ++$i) {
    oci_execute($stid, OCI_NO_AUTO_COMMIT);  // use OCI_DEFAULT for PHP <= 5.3.1
}
oci_commit($conn);  // commits all new values: 1, 2, 3, 4, 5

?>

Exemplo #4 oci_execute() with different commit modes example

<?php

// Before running, create the table:
//   CREATE TABLE MYTABLE (col1 NUMBER);

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'INSERT INTO mytab (col1) VALUES (123)');
oci_execute($stid, OCI_NO_AUTO_COMMIT);  // data not committed

$stid = oci_parse($conn, 'INSERT INTO mytab (col1) VALUES (456)');
oci_execute($stid);  // commits both 123 and 456 values

?>

Exemplo #5 oci_execute() with OCI_DESCRIBE_ONLY example

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'SELECT * FROM locations');
oci_execute($s, OCI_DESCRIBE_ONLY);
for ($i = 1; $i <= oci_num_fields($stid); ++$i) {
    echo oci_field_name($stid, $i) . "<br>\n";
}

?>

Notas

Nota:

Transactions are automatically rolled back when connections are closed, or when the script ends, whichever is soonest. Explicitly call oci_commit() to commit a transaction.

Any call to oci_execute() that uses OCI_COMMIT_ON_SUCCESS mode explicitly or by default will commit any previous uncommitted transaction.

Any Oracle DDL statement such as CREATE or DROP will automatically commit any uncommitted transaction.

Nota:

Because the oci_execute() function generally sends the statement to the database, oci_execute() can identify some statement syntax errors that the lightweight, local oci_parse() function does not.

Nota:

In PHP versions before 5.0.0 use ociexecute() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_parse() - Prepares an Oracle statement for execution

oci_error
oci_fetch_all
Funções para OCI8


Fetches multiple rows from a query into a two-dimensional array

oci_execute
oci_fetch_array
Funções para OCI8
PHP Manual

oci_fetch_all

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_all — Fetches multiple rows from a query into a two-dimensional array

Descrição

int oci_fetch_all ( resource $statement , array &$output [, int $skip = 0 [, int $maxrows = -1 [, int $flags = OCI_FETCHSTATEMENT_BY_COLUMN + OCI_ASSOC ]]] )

Fetches multiple rows from a query into a two-dimensional array. By default, all rows are returned.

This function can be called only once for each query executed with oci_execute().

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

output

The variable to contain the returned rows.

LOB columns are returned as strings, where Oracle supports conversion.

See oci_fetch_array() for more information on how data and types are fetched.

skip

The number of initial rows to discard when fetching the result. The default value is 0, so the first row onwards is returned.

maxrows

The number of rows to return. The default is -1 meaning return all the rows from skip + 1 onwards.

flags

Parameter flags indicates the array structure and whether associative arrays should be used.

oci_fetch_all() Array Structure Modes
Constant | Description
OCI_FETCHSTATEMENT_BY_ROW | The outer array will contain one sub-array per query row.
OCI_FETCHSTATEMENT_BY_COLUMN | The outer array will contain one sub-array per query column. This is the default.

Arrays can be indexed by column heading or numerically.

oci_fetch_all() Array Index Modes
Constant | Description
OCI_NUM | Numeric indexes are used for each column's array.
OCI_ASSOC | Associative indexes are used for each column's array. This is the default.

Use the addition operator "+" to choose a combination of array structure and index modes.

Oracle's default, non-case sensitive column names will have uppercase array keys. Case-sensitive column names will have array keys using the exact column case. Use var_dump() on outputto verify the appropriate case to use for each query.

Queries that have more than one column with the same name should use column aliases. Otherwise only one of the columns will appear in an associative array.

Valor Retornado

Returns the number of rows in output, which may be 0 or more, or FALSE on failure.

Exemplos

Exemplo #1 oci_fetch_all() example

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT POSTAL_CODE, CITY FROM locations WHERE ROWNUM < 3');
oci_execute($stid);

$nrows = oci_fetch_all($stid, $res);

echo "$nrows rows fetched<br>\n";
var_dump($res);

// var_dump output is:
//    2 rows fetched
//    array(2) {
//      ["POSTAL_CODE"]=>
//      array(2) {
//        [0]=>
//        string(6) "00989x"
//        [1]=>
//        string(6) "10934x"
//      }
//      ["CITY"]=>
//      array(2) {
//        [0]=>
//        string(4) "Roma"
//        [1]=>
//        string(6) "Venice"
//      }
//    }

// Pretty-print the results
echo "<table border='1'>\n";
foreach ($res as $col) {
    echo "<tr>\n";
    foreach ($col as $item) {
        echo "    <td>".($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;")."</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 oci_fetch_all() example with OCI_FETCHSTATEMENT_BY_ROW

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT POSTAL_CODE, CITY FROM locations WHERE ROWNUM < 3');
oci_execute($stid);

$nrows = oci_fetch_all($stid, $res, null, null, OCI_FETCHSTATEMENT_BY_ROW);

echo "$nrows rows fetched<br>\n";
var_dump($res);

// Output is:
//    2 rows fetched
//    array(2) {
//      [0]=>
//      array(2) {
//        ["POSTAL_CODE"]=>
//        string(6) "00989x"
//        ["CITY"]=>
//        string(4) "Roma"
//      }
//      [1]=>
//      array(2) {
//        ["POSTAL_CODE"]=>
//        string(6) "10934x"
//        ["CITY"]=>
//        string(6) "Venice"
//      }
//    }

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #3 oci_fetch_all() with OCI_NUM

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT POSTAL_CODE, CITY FROM locations WHERE ROWNUM < 3');
oci_execute($stid);

$nrows = oci_fetch_all($stid, $res, null, null, OCI_FETCHSTATEMENT_BY_ROW + OCI_NUM);

echo "$nrows rows fetched<br>\n";
var_dump($res);

// Output is:
//    2 rows fetched
//    array(2) {
//      [0]=>
//      array(2) {
//        [0]=>
//        string(6) "00989x"
//        [1]=>
//        string(4) "Roma"
//      }
//      [1]=>
//      array(2) {
//        [0]=>
//        string(6) "10934x"
//        [1]=>
//        string(6) "Venice"
//      }
//    }

oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

Using skip is very inefficient. All the rows to be skipped are included in the result set that is returned from the database to PHP. They are then discarded. It is more efficient to use SQL to restrict the offset and range of rows in the query. See oci_fetch_array() for an example.

Nota:

Queries that return a large number of rows can be more memory efficient if a single-row fetching function like oci_fetch_array() is used.

Nota:

For queries returning a large number of rows, performance can be significantly improved by increasing oci8.default_prefetch or using oci_set_prefetch().

Nota:

In PHP versions before 5.0.0 you must use ocifetchstatement() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array
  • oci_set_prefetch() - Sets number of rows to be prefetched by queries

oci_execute
oci_fetch_array
Funções para OCI8


Returns the next row from a query as an associative or numeric array

oci_fetch_all
oci_fetch_assoc
Funções para OCI8
PHP Manual

oci_fetch_array

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_array — Returns the next row from a query as an associative or numeric array

Descrição

array oci_fetch_array ( resource $statement [, int $mode ] )

Returns an array containing the next result-set row of a query. Each array entry corresponds to a column of the row. This function is typically called in a loop until it returns FALSE, indicating no more rows exist.

Para detalhes sobre o mapeamento dos tipos de dados realizado pelo driver oci8, veja tipos de dados suportados pelo driver

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

mode

An optional second parameter can be any combination of the following constants:

oci_fetch_array() Modes
Constant | Description
OCI_BOTH | Returns an array with both associative and numeric indices. This is the same as OCI_ASSOC + OCI_NUM and is the default behavior.
OCI_ASSOC | Returns an associative array.
OCI_NUM | Returns a numeric array.
OCI_RETURN_NULLS | Creates elements for NULL fields. The element values will be a PHP NULL.
OCI_RETURN_LOBS | Returns the contents of LOBs instead of the LOB descriptors.

The default mode is OCI_BOTH.

Use the addition operator "+" to specify more than one mode at a time.

Valor Retornado

Returns an array with associative and/or numeric indices. If there are no more rows in the statement then FALSE is returned.

By default, LOB columns are returned as LOB descriptors.

DATE columns are returned as strings formatted to the current date format. The default format can be changed with Oracle environment variables such as NLS_LANG or by a previously executed ALTER SESSION SET NLS_DATE_FORMAT command.

Oracle's default, non-case sensitive column names will have uppercase associative indices in the result array. Case-sensitive column names will have array indices using the exact column case. Use var_dump() on the result array to verify the appropriate case to use for each query.

Exemplos

Exemplo #1 oci_fetch_array() with OCI_BOTH

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT department_id, department_name FROM departments');
oci_execute($stid);

while (($row = oci_fetch_array($stid, OCI_BOTH))) {
    // Use the uppercase column names for the associative array indices
    echo $row[0] . " and " . $row['DEPARTMENT_ID']   . " are the same<br>\n";
    echo $row[1] . " and " . $row['DEPARTMENT_NAME'] . " are the same<br>\n";
}

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 oci_fetch_array() with OCI_NUM

<?php

/*
  Before running, create the table:
      CREATE TABLE mytab (id NUMBER, description CLOB);
      INSERT INTO mytab (id, description) values (1, 'A very long string');
      COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, description FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_array($stid, OCI_NUM))) {
    echo $row[0] . "<br>\n";
    echo $row[1]->read(11) . "<br>\n"; // this will output first 11 bytes from DESCRIPTION
}

// Output is:
//    1
//    A very long

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #3 oci_fetch_array() with OCI_ASSOC

<?php

/*
  Before running, create the table:
      CREATE TABLE mytab (id NUMBER, description CLOB);
      INSERT INTO mytab (id, description) values (1, 'A very long string');
      COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, description FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_array($stid, OCI_ASSOC))) {
    echo $row['ID'] . "<br>\n";
    echo $row['DESCRIPTION']->read(11) . "<br>\n"; // this will output first 11 bytes from DESCRIPTION
}

// Output is:
//    1
//    A very long

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #4 oci_fetch_array() with OCI_RETURN_NULLS

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT 1, null FROM dual');
oci_execute($stid);
while (($row = oci_fetch_array ($stid, OCI_ASSOC))) { // Ignore NULLs
    var_dump($row);
}

/*
The above code prints:
  array(1) {
    [1]=>
    string(1) "1"
  }
*/

$stid = oci_parse($conn, 'SELECT 1, null FROM dual');
oci_execute($stid);
while (($row = oci_fetch_array ($stid, OCI_ASSOC+OCI_RETURN_NULLS))) { // Fetch NULLs
    var_dump($row);
}

/*
The above code prints:
  array(2) {
    [1]=>
    string(1) "1"
    ["NULL"]=>
    NULL
  }
*/

?>

Exemplo #5 oci_fetch_array() with OCI_RETURN_LOBS

<?php

/*
  Before running, create the table:
      CREATE TABLE mytab (id NUMBER, description CLOB);
      INSERT INTO mytab (id, description) values (1, 'A very long string');
      COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, description FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_LOBS))) {
    echo $row['ID'] . "<br>\n";
    echo $row['DESCRIPTION'] . "<br>\n"; // this contains all of DESCRIPTION
}

// Output is:
//    1
//    A very long string

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #6 oci_fetch_array() with case sensitive column names

<?php

/*
   Before running, create the table:
      CREATE TABLE mytab ("Name" VARCHAR2(20), city VARCHAR2(20));
      INSERT INTO mytab ("Name", city) values ('Chris', 'Melbourne');
      COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'select * from mytab');
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS);

// Because 'Name' was created as a case-sensitive column, that same
// case is used for the array index.  However uppercase 'CITY' must
// be used for the case-insensitive column index
print $row['Name'] . "<br>\n";   //  prints Chris
print $row['CITY'] . "<br>\n";   //  prints Melbourne

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #7 oci_fetch_array() with columns having duplicate names

<?php

/*
  Before running, create the tables:
      CREATE TABLE mycity (id NUMBER, name VARCHAR2(20));
      INSERT INTO mycity (id, name) values (1, 'Melbourne');
      CREATE TABLE mycountry (id NUMBER, name VARCHAR2(20));
      INSERT INTO mycountry (id, name) values (1, 'Australia');
      COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT mycity.name, mycountry.name
        FROM mycity, mycountry
        WHERE mycity.id = mycountry.id';
$stid = oci_parse($conn, $sql);
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC);
var_dump($row);

// Output only contains one "NAME" entry:
//    array(1) {
//      ["NAME"]=>
//      string(9) "Australia"
//    }

// To query a repeated column name, use an SQL column alias like "AS ctnm":
$sql = 'SELECT mycity.name AS ctnm, mycountry.name
        FROM mycity, mycountry
        WHERE mycity.id = mycountry.id';
$stid = oci_parse($conn, $sql);
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC);
var_dump($row);

// Output now contains both columns selected:
//    array(2) {
//      ["CTNM"]=>
//      string(9) "Melbourne"
//      ["NAME"]=>
//      string(9) "Australia"
//    }

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #8 oci_fetch_array() with DATE columns

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

// Set the date format for this connection.
// For performance reasons, consider changing the format
// in a trigger or with environment variables instead
$stid = oci_parse($conn, "ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD'");
oci_execute($stid);

$stid = oci_parse($conn, 'SELECT hire_date FROM employees WHERE employee_id = 188');
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC);
echo $row['HIRE_DATE'] . "<br>\n";  // prints 1997-06-14

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #9 oci_fetch_array() with REF CURSOR

<?php
/*
  Create the PL/SQL stored procedure as:

  CREATE OR REPLACE PROCEDURE myproc(p1 OUT SYS_REFCURSOR) AS
  BEGIN
    OPEN p1 FOR SELECT * FROM all_objects WHERE ROWNUM < 5000;
  END;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'BEGIN myproc(:rc); END;');
$refcur = oci_new_cursor($conn);
oci_bind_by_name($stid, ':rc', $refcur, -1, OCI_B_CURSOR);
oci_execute($stid);

// Execute the returned REF CURSOR and fetch from it like a statement identifier
oci_execute($refcur);
echo "<table border='1'>\n";
while ($row = oci_fetch_array($refcur, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>".($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;")."</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

oci_free_statement($refcur);
oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #10 oci_fetch_array() with a LIMIT-like query

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

// This is the query you want to execute
$sql = 'SELECT city, postal_code FROM locations ORDER BY city';

// This nested query selects a subset of rows from $sql.
// In production environments, be careful to avoid SQL Injection
// issues with concatenated SQL statements
$limit_sql =
   'select *
    from ( select a.*, rownum as rnum
        from (' . $sql . ') a
        where rownum < :FIRST_ROW + :NUM_ROWS )
    where rnum >= :FIRST_ROW';

$first = 1;  // start with the first row
$num   = 5;  // return 5 rows
$stid = oci_parse($conn, $limit_sql);
oci_bind_by_name($stid, ':FIRST_ROW', $first);
oci_bind_by_name($stid, ':NUM_ROWS', $num);
oci_execute($stid);

while (($row = oci_fetch_array($stid, OCI_ASSOC))) {
    echo $row['CITY'] . " " . $row['POSTAL_CODE'] . "<br>\n";
}

// Output is:
//    Beijing 190518x
//    Bern 3095x
//    Bombay 490231x
//    Geneva 1730x
//    Hiroshima 6823x

oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

Associative array indices need to be in uppercase for standard Oracle columns that were created with case insensitive names.

Nota:

For queries returning a large number of rows, performance can be significantly improved by increasing oci8.default_prefetch or using oci_set_prefetch().

Nota:

The function oci_fetch_array() is insignificantly slower than oci_fetch_assoc() or oci_fetch_row(), but is more flexible.

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array
  • oci_set_prefetch() - Sets number of rows to be prefetched by queries

oci_fetch_all
oci_fetch_assoc
Funções para OCI8


Returns the next row from a query as an associative array

oci_fetch_array
oci_fetch_object
Funções para OCI8
PHP Manual

oci_fetch_assoc

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_assoc — Returns the next row from a query as an associative array

Descrição

array oci_fetch_assoc ( resource $statement )

Returns an associative array containing the next result-set row of a query. Each array entry corresponds to a column of the row. This function is typically called in a loop until it returns FALSE, indicating no more rows exist.

Calling oci_fetch_assoc() is identical to calling oci_fetch_array() with OCI_ASSOC + OCI_RETURN_NULLS.

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

Valor Retornado

Returns an associative array. If there are no more rows in the statement then FALSE is returned.

Notas

Nota:

See oci_fetch_array() for examples of fetching rows.

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array

oci_fetch_array
oci_fetch_object
Funções para OCI8


Returns the next row from a query as an object

oci_fetch_assoc
oci_fetch_row
Funções para OCI8
PHP Manual

oci_fetch_object

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_object — Returns the next row from a query as an object

Descrição

object oci_fetch_object ( resource $statement )

Returns an object containing the next result-set row of a query. Each attribute of the object corresponds to a column of the row. This function is typically called in a loop until it returns FALSE, indicating no more rows exist.

Para detalhes sobre o mapeamento dos tipos de dados realizado pelo driver oci8, veja tipos de dados suportados pelo driver

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

Valor Retornado

Returns an object. Each attribute of the object corresponds to a column of the row. If there are no more rows in the statement then FALSE is returned.

Any LOB columns are returned as LOB descriptors.

DATE columns are returned as strings formatted to the current date format. The default format can be changed with Oracle environment variables such as NLS_LANG or by a previously executed ALTER SESSION SET NLS_DATE_FORMAT command.

Oracle's default, non-case sensitive column names will have uppercase attribute names. Case-sensitive column names will have attribute names using the exact column case. Use var_dump() on the result object to verify the appropriate case to use for each query.

Attribute values will be NULL for any NULL data fields.

Exemplos

Exemplo #1 oci_fetch_object() example

<?php

/*
  Before running, create the table:
    CREATE TABLE mytab (id NUMBER, description VARCHAR2(30));
    INSERT INTO mytab (id, description) values (1, 'Fish and Chips');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, description FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_object($stid))) {
    // Use upper case attribute names for each standard Oracle column
    echo $row->ID . "<br>\n";
    echo $row->DESCRIPTION . "<br>\n";
}

// Output is:
//    1
//    Fish and Chips

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 oci_fetch_object() with case sensitive column names

<?php

/*
  Before running, create the table with a case sensitive column name:
    CREATE TABLE mytab (id NUMBER, "MyDescription" VARCHAR2(30));
    INSERT INTO mytab (id, "MyDescription") values (1, 'Iced Coffee');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, "MyDescription" FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_object($stid))) {
    // Use upper case attribute names for each standard Oracle column
    echo $row->ID . "<br>\n";
    // Use the exact case for the case sensitive column name
    echo $row->MyDescription . "<br>\n";
}

// Output is:
//    1
//    Iced Coffee

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #3 oci_fetch_object() with LOBs

<?php

/*
  Before running, create the table:
    CREATE TABLE mytab (id NUMBER, description CLOB);
    INSERT INTO mytab (id, description) values (1, 'A very long string');
    COMMIT;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT id, description FROM mytab');
oci_execute($stid);

while (($row = oci_fetch_object($stid))) {
    echo $row->ID . "<br>\n";
    // The following will output the first 11 bytes from DESCRIPTION
    echo $row->DESCRIPTION->read(11) . "<br>\n";
}

// Output is:
//    1
//    A very long

oci_free_statement($stid);
oci_close($conn);

?>

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_row() - Returns the next row from a query as a numeric array

oci_fetch_assoc
oci_fetch_row
Funções para OCI8


Returns the next row from a query as a numeric array

oci_fetch_object
oci_fetch
Funções para OCI8
PHP Manual

oci_fetch_row

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_row — Returns the next row from a query as a numeric array

Descrição

array oci_fetch_row ( resource $statement )

Returns a numerically indexed array containing the next result-set row of a query. Each array entry corresponds to a column of the row. This function is typically called in a loop until it returns FALSE, indicating no more rows exist.

Calling oci_fetch_row() is identical to calling oci_fetch_array() with OCI_NUM + OCI_RETURN_NULLS.

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

Valor Retornado

Returns a numerically indexed array. If there are no more rows in the statement then FALSE is returned.

Notas

Nota:

See oci_fetch_array() for examples of fetching rows.

Veja Também

  • oci_fetch() - Fetches the next row from a query into internal buffers
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object

oci_fetch_object
oci_fetch
Funções para OCI8


Fetches the next row from a query into internal buffers

oci_fetch_row
oci_field_is_null
Funções para OCI8
PHP Manual

oci_fetch

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch — Fetches the next row from a query into internal buffers

Descrição

bool oci_fetch ( resource $statement )

Fetches the next row from a query into internal buffers accessible either with oci_result(), or by using variables previously defined with oci_define_by_name().

See oci_fetch_array() for general information about fetching data.

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

Valor Retornado

Returns TRUE on success or FALSE if there are no more rows in the statement.

Exemplos

Exemplo #1 oci_fetch() with defined variables

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);

// The defines MUST be done before executing
oci_define_by_name($stid, 'LOCATION_ID', $locid);
oci_define_by_name($stid, 'CITY', $city);

oci_execute($stid);

// Each fetch populates the previously defined variables with the next row's data
while (oci_fetch($stid)) {
    echo "Location id $locid is $city<br>\n";
}

// Displays:
//   Location id 1000 is Roma
//   Location id 1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 oci_fetch() with oci_result()

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);
oci_execute($stid);

while (oci_fetch($stid)) {
    echo oci_result($stid, 'LOCATION_ID') . " is ";
    echo oci_result($stid, 'CITY') . "<br>\n";
}

// Displays:
//   1000 is Roma
//   1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

In PHP versions before 5.0.0 use ocifetch() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_define_by_name() - Associates a PHP variable with a column for query fetches
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array
  • oci_result() - Returns field's value from the fetched row

oci_fetch_row
oci_field_is_null
Funções para OCI8


Checks if the field is NULL

oci_fetch
oci_field_name
Funções para OCI8
PHP Manual

oci_field_is_null

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_is_null — Checks if the field is NULL

Descrição

bool oci_field_is_null ( resource $statement , mixed $field )

Checks if the given field from the statement is NULL.

Parâmetros

statement

A valid OCI statement identifier.

field

Can be a field's index or a field's name (uppercased).

Valor Retornado

Returns TRUE if field is NULL, FALSE otherwise.

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumnisnull() instead. This name still can be used, it was left as alias of oci_field_is_null() for downwards compatability. This, however, is deprecated and not recommended.

oci_fetch
oci_field_name
Funções para OCI8


Returns the name of a field from the statement

oci_field_is_null
oci_field_precision
Funções para OCI8
PHP Manual

oci_field_name

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_name — Returns the name of a field from the statement

Descrição

string oci_field_name ( resource $statement , int $field )

Returns the name of the field.

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns the name as a string, or FALSE on errors.

Exemplos

Exemplo #1 oci_field_name() example

<?php
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "SELECT * FROM emp");
oci_execute($stmt);

echo "<table border=\"1\">";
echo "<tr>";
echo "<th>Name</th>";
echo "<th>Type</th>";
echo "<th>Length</th>";
echo "</tr>";

$ncols = oci_num_fields($stmt);

for ($i = 1; $i <= $ncols; $i++) {
    $column_name  = oci_field_name($stmt, $i);
    $column_type  = oci_field_type($stmt, $i);
    $column_size  = oci_field_size($stmt, $i);

    echo "<tr>";
    echo "<td>$column_name</td>";
    echo "<td>$column_type</td>";
    echo "<td>$column_size</td>";
    echo "</tr>";
}

echo "</table>\n";
oci_free_statement($stmt);
oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumnname() instead. This name still can be used, it was left as alias of oci_field_name() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_num_fields() - Returns the number of result columns in a statement
  • oci_field_type() - Returns field's data type
  • oci_field_size() - Returns field's size

oci_field_is_null
oci_field_precision
Funções para OCI8


Tell the precision of a field

oci_field_name
oci_field_scale
Funções para OCI8
PHP Manual

oci_field_precision

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_precision — Tell the precision of a field

Descrição

int oci_field_precision ( resource $statement , int $field )

Returns precision of the field.

For FLOAT columns, precision is nonzero and scale is -127. If precision is 0, then column is NUMBER. Else it's NUMBER(precision, scale).

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns the precision as an integer, or FALSE on errors.

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumnprecision() instead. This name still can be used, it was left as alias of oci_field_precision() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_field_scale() - Tell the scale of the field
  • oci_field_type() - Returns field's data type

oci_field_name
oci_field_scale
Funções para OCI8


Tell the scale of the field

oci_field_precision
oci_field_size
Funções para OCI8
PHP Manual

oci_field_scale

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_scale — Tell the scale of the field

Descrição

int oci_field_scale ( resource $statement , int $field )

Returns the scale of the column with field index.

For FLOAT columns, precision is nonzero and scale is -127. If precision is 0, then column is NUMBER. Else it's NUMBER(precision, scale).

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns the scale as an integer, or FALSE on errors.

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumnscale() instead. This name still can be used, it was left as alias of oci_field_scale() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_field_precision() - Tell the precision of a field
  • oci_field_type() - Returns field's data type

oci_field_precision
oci_field_size
Funções para OCI8


Returns field's size

oci_field_scale
oci_field_type_raw
Funções para OCI8
PHP Manual

oci_field_size

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_size — Returns field's size

Descrição

int oci_field_size ( resource $statement , mixed $field )

Returns the size of a field.

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns the size of a field in bytes, or FALSE on errors.

Exemplos

Exemplo #1 oci_field_size() example

<?php
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "SELECT * FROM emp");
oci_execute($stmt);

echo "<table border=\"1\">";
echo "<tr>";
echo "<th>Name</th>";
echo "<th>Type</th>";
echo "<th>Length</th>";
echo "</tr>";

$ncols = oci_num_fields($stmt);

for ($i = 1; $i <= $ncols; $i++) {
    $column_name  = oci_field_name($stmt, $i);
    $column_type  = oci_field_type($stmt, $i);
    $column_size  = oci_field_size($stmt, $i);
    echo "<tr>";
    echo "<td>$column_name</td>";
    echo "<td>$column_type</td>";
    echo "<td>$column_size</td>";
    echo "</tr>";
}

echo "</table>";

oci_free_statement($stmt);
oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumnsize() instead. This name still can be used, it was left as alias of oci_field_size() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_num_fields() - Returns the number of result columns in a statement
  • oci_field_name() - Returns the name of a field from the statement

oci_field_scale
oci_field_type_raw
Funções para OCI8


Tell the raw Oracle data type of the field

oci_field_size
oci_field_type
Funções para OCI8
PHP Manual

oci_field_type_raw

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_type_raw — Tell the raw Oracle data type of the field

Descrição

int oci_field_type_raw ( resource $statement , int $field )

Returns Oracle's raw data type of the field.

However, if you want to get field's type, then oci_field_type() will suit you better.

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns Oracle's raw data type as a string, or FALSE on errors.

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumntyperaw() instead. This name still can be used, it was left as alias of oci_field_type_raw() for downwards compatability. This, however, is deprecated and not recommended.

oci_field_size
oci_field_type
Funções para OCI8


Returns field's data type

oci_field_type_raw
oci_free_statement
Funções para OCI8
PHP Manual

oci_field_type

(PHP 5, PECL OCI8 >= 1.1.0)

oci_field_type — Returns field's data type

Descrição

mixed oci_field_type ( resource $statement , int $field )

Returns a field's data type.

Parâmetros

statement

A valid OCI statement identifier.

field

Can be the field's index (1-based) or name.

Valor Retornado

Returns the field data type as a string, or FALSE on errors.

Valor Retornado

Exemplo #1 oci_field_type() example

<?php
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "SELECT * FROM emp");
oci_execute($stmt);

echo "<table border=\"1\">";
echo "<tr>";
echo "<th>Name</th>";
echo "<th>Type</th>";
echo "<th>Length</th>";
echo "</tr>";

$ncols = oci_num_fields($stmt);

for ($i = 1; $i <= $ncols; $i++) {
    $column_name  = oci_field_name($stmt, $i);
    $column_type  = oci_field_type($stmt, $i);
    $column_size  = oci_field_size($stmt, $i);

    echo "<tr>";
    echo "<td>$column_name</td>";
    echo "<td>$column_type</td>";
    echo "<td>$column_size</td>";
    echo "</tr>";
}

echo "</table>\n";

oci_free_statement($stmt);
oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocicolumntype() instead. This name still can be used, it was left as alias of oci_field_type() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_num_fields() - Returns the number of result columns in a statement
  • oci_field_name() - Returns the name of a field from the statement
  • oci_field_size() - Returns field's size

oci_field_type_raw
oci_free_statement
Funções para OCI8


Frees all resources associated with statement or cursor

oci_field_type
oci_internal_debug
Funções para OCI8
PHP Manual

oci_free_statement

(PHP 5, PECL OCI8 >= 1.1.0)

oci_free_statement — Frees all resources associated with statement or cursor

Descrição

bool oci_free_statement ( resource $statement )

Frees resources associated with Oracle's cursor or statement, which was received from as a result of oci_parse() or obtained from Oracle.

Parâmetros

statement

A valid OCI statement identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

oci_field_type
oci_internal_debug
Funções para OCI8


Enables or disables internal debug output

oci_free_statement
OCI-Lob->append
Funções para OCI8
PHP Manual

oci_internal_debug

(PHP 5, PECL OCI8 >= 1.1.0)

oci_internal_debug — Enables or disables internal debug output

Descrição

void oci_internal_debug ( bool $onoff )

Enables or disables internal debug output.

Parâmetros

onoff

Set this to FALSE to turn debug output off or TRUE to turn it on.

Valor Retornado

Não há valor retornado.

Notas

Nota:

In PHP versions before 5.0.0 you must use ociinternaldebug() instead. This name still can be used, it was left as alias of oci_internal_debug() for downwards compatability. This, however, is deprecated and not recommended.

oci_free_statement
OCI-Lob->append
Funções para OCI8


Appends data from the large object to another large object

oci_internal_debug
OCI-Lob->close
Funções para OCI8
PHP Manual

OCI-Lob->append

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->append — Appends data from the large object to another large object

Descrição

bool OCI-Lob::append ( OCI-Lob $lob_from )

Appends data from the large object to the end of another large object.

Writing to the large object with this method will fail if buffering was previously enabled. You must disable buffering before appending. You may need to flush buffers with OCI-Lob->flush before disabling buffering.

Parâmetros

lob_from

The copied LOB.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->flush
  • OCI-Lob->setBuffering
  • OCI-Lob->getBuffering

oci_internal_debug
OCI-Lob->close
Funções para OCI8


Closes LOB descriptor

OCI-Lob->append
oci_lob_copy
Funções para OCI8
PHP Manual

OCI-Lob->close

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->close — Closes LOB descriptor

Descrição

bool OCI-Lob::close ( void )

Closes descriptor of LOB or FILE. This function should be used only with OCI-Lob->writeTemporary.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->writeTemporary

OCI-Lob->append
oci_lob_copy
Funções para OCI8


Copies large object

OCI-Lob->close
OCI-Lob->eof
Funções para OCI8
PHP Manual

oci_lob_copy

(PHP 5, PECL OCI8 >= 1.1.0)

oci_lob_copy — Copies large object

Descrição

bool oci_lob_copy ( OCI-Lob $lob_to , OCI-Lob $lob_from [, int $length = 0 ] )

Copies a large object or a part of a large object to another large object. Old LOB-recipient data will be overwritten.

If you need to copy a particular part of a LOB to a particular position of a LOB, use oci_lob_seek() to move LOB internal pointers.

Parâmetros

lob_to

The destination LOB.

lob_from

The copied LOB.

length

Indicates the length of data to be copied.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

OCI-Lob->close
OCI-Lob->eof
Funções para OCI8


Tests for end-of-file on a large object's descriptor

oci_lob_copy
OCI-Lob->erase
Funções para OCI8
PHP Manual

OCI-Lob->eof

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->eof — Tests for end-of-file on a large object's descriptor

Descrição

bool OCI-Lob::eof ( void )

Tells whether the internal pointer of large object is at the end of LOB.

Valor Retornado

Returns TRUE if internal pointer of large object is at the end of LOB. Otherwise returns FALSE.

Veja Também

  • OCI-Lob->size

oci_lob_copy
OCI-Lob->erase
Funções para OCI8


Erases a specified portion of the internal LOB data

OCI-Lob->eof
OCI-Lob->export
Funções para OCI8
PHP Manual

OCI-Lob->erase

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->erase — Erases a specified portion of the internal LOB data

Descrição

int OCI-Lob::erase ([ int $offset [, int $length ]] )

Erases a specified portion of the internal LOB data starting at a specified offset. If called without parameters, it erases all LOB data.

For BLOBs, erasing means that the existing LOB value is overwritten with zero-bytes. For CLOBs, the existing LOB value is overwritten with spaces.

Parâmetros

offset

length

Valor Retornado

Returns the actual number of characters/bytes erased or FALSE on failure.

Veja Também

  • OCI-Lob->truncate

OCI-Lob->eof
OCI-Lob->export
Funções para OCI8


Exports LOB's contents to a file

OCI-Lob->erase
OCI-Lob->flush
Funções para OCI8
PHP Manual

OCI-Lob->export

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->export — Exports LOB's contents to a file

Descrição

bool OCI-Lob::export ( string $filename [, int $start [, int $length ]] )

Exports LOB contents to a file.

Parâmetros

filename

Path to the file.

start

Indicates from where to start exporting.

length

Indicates the length of data to be exported.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->import

OCI-Lob->erase
OCI-Lob->flush
Funções para OCI8


Flushes/writes buffer of the LOB to the server

OCI-Lob->export
OCI-Lob->free
Funções para OCI8
PHP Manual

OCI-Lob->flush

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->flush — Flushes/writes buffer of the LOB to the server

Descrição

bool OCI-Lob::flush ([ int $flag ] )

OCI-Lob->flush() actually writes data to the server.

Parâmetros

flag

By default, resources are not freed, but using flag OCI_LOB_BUFFER_FREE you can do it explicitly. Be sure you know what you're doing - next read/write operation to the same part of LOB will involve a round-trip to the server and initialize new buffer resources. It is recommended to use OCI_LOB_BUFFER_FREE flag only when you are not going to work with the LOB anymore.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Returns FALSE if buffering was not enabled or an error occurred.

Veja Também

  • OCI-Lob->getBuffering
  • OCI-Lob->setBuffering

OCI-Lob->export
OCI-Lob->free
Funções para OCI8


Frees resources associated with the LOB descriptor

OCI-Lob->flush
OCI-Lob->getBuffering
Funções para OCI8
PHP Manual

OCI-Lob->free

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->free — Frees resources associated with the LOB descriptor

Descrição

bool OCI-Lob::free ( void )

Frees resources associated with the descriptor, previously allocated with oci_new_descriptor().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

OCI-Lob->flush
OCI-Lob->getBuffering
Funções para OCI8


Returns current state of buffering for the large object

OCI-Lob->free
OCI-Lob->import
Funções para OCI8
PHP Manual

OCI-Lob->getBuffering

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->getBuffering — Returns current state of buffering for the large object

Descrição

bool OCI-Lob::getBuffering ( void )

Tells whether the buffering for the large object is on or off.

Valor Retornado

Returns FALSE if buffering for the large object is off and TRUE if buffering is used.

Veja Também

  • OCI-Lob->setBuffering

OCI-Lob->free
OCI-Lob->import
Funções para OCI8


Imports file data to the LOB

OCI-Lob->getBuffering
oci_lob_is_equal
Funções para OCI8
PHP Manual

OCI-Lob->import

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->import — Imports file data to the LOB

Descrição

bool OCI-Lob::import ( string $filename )

Writes data from the filename in to the current position of large object.

Parâmetros

filename

Path to the file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->export
  • OCI-Lob->write

OCI-Lob->getBuffering
oci_lob_is_equal
Funções para OCI8


Compares two LOB/FILE locators for equality

OCI-Lob->import
OCI-Lob->load
Funções para OCI8
PHP Manual

oci_lob_is_equal

(PHP 5, PECL OCI8 >= 1.1.0)

oci_lob_is_equal — Compares two LOB/FILE locators for equality

Descrição

bool oci_lob_is_equal ( OCI-Lob $lob1 , OCI-Lob $lob2 )

Compares two LOB/FILE locators.

Parâmetros

lob1

A LOB identifier.

lob2

A LOB identifier.

Valor Retornado

Returns TRUE if these objects are equal, FALSE otherwise.

OCI-Lob->import
OCI-Lob->load
Funções para OCI8


Returns large object's contents

oci_lob_is_equal
OCI-Lob->read
Funções para OCI8
PHP Manual

OCI-Lob->load

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->load — Returns large object's contents

Descrição

string OCI-Lob::load ( void )

Returns large object's contents. As script execution is terminated when the memory_limit is reached, ensure that the LOB does not exceed this limit. In most cases it's recommended to use OCI-Lob->read instead.

Valor Retornado

Returns the contents of the object, or FALSE on errors.

Veja Também

  • OCI-Lob->read

oci_lob_is_equal
OCI-Lob->read
Funções para OCI8


Reads part of the large object

OCI-Lob->load
OCI-Lob->rewind
Funções para OCI8
PHP Manual

OCI-Lob->read

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->read — Reads part of the large object

Descrição

string OCI-Lob::read ( int $length )

Reads length bytes from the current position of LOB's internal pointer.

Reading stops when length bytes have been read or end of the large object is reached. Internal pointer of the large object will be shifted on the amount of bytes read.

Parâmetros

length

The length of data to read, in bytes.

Valor Retornado

Returns the contents as a string, or FALSE on failure.

Veja Também

  • OCI-Lob->load
  • OCI-Lob->write

OCI-Lob->load
OCI-Lob->rewind
Funções para OCI8


Moves the internal pointer to the beginning of the large object

OCI-Lob->read
OCI-Lob->save
Funções para OCI8
PHP Manual

OCI-Lob->rewind

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->rewind — Moves the internal pointer to the beginning of the large object

Descrição

bool OCI-Lob::rewind ( void )

Sets the internal pointer to the beginning of the large object.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->seek
  • OCI-Lob->tell

OCI-Lob->read
OCI-Lob->save
Funções para OCI8


Saves data to the large object

OCI-Lob->rewind
OCI-Lob->saveFile
Funções para OCI8
PHP Manual

OCI-Lob->save

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->save — Saves data to the large object

Descrição

bool OCI-Lob::save ( string $data [, int $offset ] )

Saves data to the large object.

Parâmetros

data

The data to be saved.

offset

Can be used to indicate offset from the beginning of the large object.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->write
  • OCI-Lob->import

OCI-Lob->rewind
OCI-Lob->saveFile
Funções para OCI8


Sinônimo de oci_lob_import

OCI-Lob->save
OCI-Lob->seek
Funções para OCI8
PHP Manual

OCI-Lob->saveFile

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->saveFile — Sinônimo de oci_lob_import()

Descrição

Esta função é um apelido para: oci_lob_import().

OCI-Lob->save
OCI-Lob->seek
Funções para OCI8


Sets the internal pointer of the large object

OCI-Lob->saveFile
OCI-Lob->setBuffering
Funções para OCI8
PHP Manual

OCI-Lob->seek

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->seek — Sets the internal pointer of the large object

Descrição

bool OCI-Lob::seek ( int $offset [, int $whence = OCI_SEEK_SET ] )

Sets the internal pointer of the large object.

Parâmetros

offset

Indicates the amount of bytes, on which internal pointer should be moved from the position, pointed by whence.

whence

May be one of:

  • OCI_SEEK_SET - sets the position equal to offset
  • OCI_SEEK_CUR - adds offset bytes to the current position
  • OCI_SEEK_END - adds offset bytes to the end of large object (use negative value to move to a position before the end of large object)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->rewind
  • OCI-Lob->tell
  • OCI-Lob->eof

OCI-Lob->saveFile
OCI-Lob->setBuffering
Funções para OCI8


Changes current state of buffering for the large object

OCI-Lob->seek
OCI-Lob->size
Funções para OCI8
PHP Manual

OCI-Lob->setBuffering

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->setBuffering — Changes current state of buffering for the large object

Descrição

bool OCI-Lob::setBuffering ( bool $on_off )

Sets the buffering for the large object, depending on the value of the on_off parameter.

Use of this function may provide performance improvements by buffering small reads and writes of LOBs by reducing the number of network round-trips and LOB versions. oci_lob_flush() should be used to flush buffers, when you have finished working with the large object.

Parâmetros

on_off

TRUE for on and FALSE for off.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Repeated calls to this method with the same flag will return TRUE.

Veja Também

  • OCI-Lob->getBuffering

OCI-Lob->seek
OCI-Lob->size
Funções para OCI8


Returns size of large object

OCI-Lob->setBuffering
OCI-Lob->tell
Funções para OCI8
PHP Manual

OCI-Lob->size

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->size — Returns size of large object

Descrição

int OCI-Lob::size ( void )

Gets the size of the large object.

Valor Retornado

Returns length of large object value or FALSE on failure. Empty objects have zero length.

OCI-Lob->setBuffering
OCI-Lob->tell
Funções para OCI8


Returns the current position of internal pointer of large object

OCI-Lob->size
OCI-Lob->truncate
Funções para OCI8
PHP Manual

OCI-Lob->tell

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->tell — Returns the current position of internal pointer of large object

Descrição

int OCI-Lob::tell ( void )

Gets the current position of a LOB's internal pointer.

Valor Retornado

Returns current position of a LOB's internal pointer or FALSE if an error occurred.

Veja Também

  • OCI-Lob->rewind
  • OCI-Lob->size
  • OCI-Lob->eof

OCI-Lob->size
OCI-Lob->truncate
Funções para OCI8


Truncates large object

OCI-Lob->tell
OCI-Lob->write
Funções para OCI8
PHP Manual

OCI-Lob->truncate

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->truncate — Truncates large object

Descrição

bool OCI-Lob::truncate ([ int $length = 0 ] )

Truncates the LOB.

Parâmetros

length

If provided, this method will truncate the LOB to length bytes. Otherwise, it will completrely purge the LOB.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->erase

OCI-Lob->tell
OCI-Lob->write
Funções para OCI8


Writes data to the large object

OCI-Lob->truncate
OCI-Lob->writeTemporary
Funções para OCI8
PHP Manual

OCI-Lob->write

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->write — Writes data to the large object

Descrição

int OCI-Lob::write ( string $data [, int $length ] )

Writes data from the parameter data into the current position of LOB's internal pointer.

Parâmetros

data

The data to write in the LOB.

length

If this parameter is given, writing will stop after length bytes have been written or the end of data is reached, whichever comes first.

Valor Retornado

Returns the number of bytes written or FALSE on failure.

Veja Também

  • OCI-Lob->read

OCI-Lob->truncate
OCI-Lob->writeTemporary
Funções para OCI8


Writes a temporary large object

OCI-Lob->write
OCI-Lob->writeToFile
Funções para OCI8
PHP Manual

OCI-Lob->writeTemporary

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->writeTemporary — Writes a temporary large object

Descrição

bool OCI-Lob::writeTemporary ( string $data [, int $lob_type = OCI_TEMP_CLOB ] )

Creates a temporary large object and writes data to it.

You should use OCI-Lob->close when you are done with this object.

Parâmetros

data

The data to write.

lob_type

Can be one of the following:

  • OCI_TEMP_BLOB is used to create temporary BLOBs
  • OCI_TEMP_CLOB is used to create temporary CLOBs

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OCI-Lob->close

OCI-Lob->write
OCI-Lob->writeToFile
Funções para OCI8


Sinônimo de oci_lob_export

OCI-Lob->writeTemporary
oci_new_collection
Funções para OCI8
PHP Manual

OCI-Lob->writeToFile

(PHP 5, PECL OCI8 >= 1.1.0)

OCI-Lob->writeToFile — Sinônimo de oci_lob_export()

Descrição

Esta função é um apelido para: oci_lob_export().

OCI-Lob->writeTemporary
oci_new_collection
Funções para OCI8


Allocates new collection object

OCI-Lob->writeToFile
oci_new_connect
Funções para OCI8
PHP Manual

oci_new_collection

(PHP 5, PECL OCI8 >= 1.1.0)

oci_new_collection — Allocates new collection object

Descrição

OCI-Collection oci_new_collection ( resource $connection , string $tdo [, string $schema = NULL ] )

Allocates a new collection object.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect() or oci_pconnect().

tdo

Should be a valid named type (uppercase).

schema

Should point to the scheme, where the named type was created. The name of the current user is the default value.

Valor Retornado

Returns a new OCICollection object or FALSE on error.

Notas

Nota:

In PHP versions before 5.0.0 you must use ocinewcollection() instead. This name still can be used, it was left as alias of oci_new_collection() for downwards compatability. This, however, is deprecated and not recommended.

OCI-Lob->writeToFile
oci_new_connect
Funções para OCI8


Connect to the Oracle server using a unique connection

oci_new_collection
oci_new_cursor
Funções para OCI8
PHP Manual

oci_new_connect

(PHP 5, PECL OCI8 >= 1.1.0)

oci_new_connect — Connect to the Oracle server using a unique connection

Descrição

resource oci_new_connect ( string $username , string $password [, string $connection_string [, string $character_set [, int $session_mode ]]] )

Establishes a new connection to an Oracle server and logs on.

Unlike oci_connect() and oci_pconnect(), oci_new_connect() does not cache connections and will always return a brand-new freshly opened connection handle. This is useful if your application needs transactional isolation between two sets of queries.

Parâmetros

username

The Oracle user name.

password

The password for username.

connection_string

Contains the Oracle instance to connect to. It can be an » Easy Connect string, or a Connect Name from the tnsnames.ora file, or the name of a local Oracle instance.

If not specified, PHP uses environment variables such as TWO_TASK (on Linux) or LOCAL (on Windows) and ORACLE_SID to determine the Oracle instance to connect to.

To use the Easy Connect naming method, PHP must be linked with Oracle 10g or greater Client libraries. The Easy Connect string for Oracle 10g is of the form: [//]host_name[:port][/service_name]. With Oracle 11g, the syntax is: [//]host_name[:port][/service_name][:server_type][/instance_name]. Service names can be found by running the Oracle utility lsnrctl status on the database server machine.

The tnsnames.ora file can be in the Oracle Net search path, which includes $ORACLE_HOME/network/admin and /etc. Alternatively set TNS_ADMIN so that $TNS_ADMIN/tnsnames.ora is read. Make sure the web daemon has read access to the file.

character_set

Com o Oracle server 9.2 e seguintes, você pode indicar o parâmetro charset, que será utilizado na nova conexão. Se você estiver utilizando Oracle server < 9.2, este parâmetro será ignorado e a variável de ambiente NLS_LANG deverá ser utilizada.

session_mode

This parameter is available since version PHP 5 (PECL OCI8 1.1) and accepts the following values: OCI_DEFAULT, OCI_SYSOPER and OCI_SYSDBA. If either OCI_SYSOPER or OCI_SYSDBA were specified, this function will try to establish privileged connection using external credentials. Privileged connections are disabled by default. To enable them you need to set oci8.privileged_connect to On.

PHP 5.3 (PECL OCI8 1.3.4) introduced the OCI_CRED_EXT mode value. This tells Oracle to use External or OS authentication, which must be configured in the database. The OCI_CRED_EXT flag can only be used with username of "/" and a empty password. oci8.privileged_connect may be On or Off.

OCI_CRED_EXT may be combined with the OCI_SYSOPER or OCI_SYSDBA modes.

OCI_CRED_EXT is not supported on Windows for security reasons.

Valor Retornado

Returns a connection identifier or FALSE on error.

Exemplos

The following demonstrates how you can separate connections.

Exemplo #1 oci_new_connect() example

<?php
echo "<html><pre>";
$db = "";

$c1 = oci_connect("scott", "tiger", $db);
$c2 = oci_new_connect("scott", "tiger", $db);

function create_table($conn)
{
  $stmt = oci_parse($conn, "create table scott.hallo (test
varchar2(64))");
  oci_execute($stmt);
  echo $conn . " created table\n\n";
}

function drop_table($conn)
{
  $stmt = oci_parse($conn, "drop table scott.hallo");
  oci_execute($stmt);
  echo $conn . " dropped table\n\n";
}

function insert_data($conn)
{
  $stmt = oci_parse($conn, "insert into scott.hallo
            values('$conn' || ' ' || to_char(sysdate,'DD-MON-YY HH24:MI:SS'))");
  oci_execute($stmt, OCI_DEFAULT);
  echo $conn . " inserted hallo\n\n";
}

function delete_data($conn)
{
  $stmt = oci_parse($conn, "delete from scott.hallo");
  oci_execute($stmt, OCI_DEFAULT);
  echo $conn . " deleted hallo\n\n";
}

function commit($conn)
{
  oci_commit($conn);
  echo $conn . " committed\n\n";
}

function rollback($conn)
{
  oci_rollback($conn);
  echo $conn . " rollback\n\n";
}

function select_data($conn)
{
  $stmt = oci_parse($conn, "select * from scott.hallo");
  oci_execute($stmt, OCI_DEFAULT);
  echo $conn . "----selecting\n\n";
  while (oci_fetch($stmt)) {
    echo $conn . " <" . oci_result($stmt, "TEST") . ">\n\n";
  }
  echo $conn . "----done\n\n";
}

create_table($c1);
insert_data($c1);

select_data($c1);
select_data($c2);

rollback($c1);

select_data($c1);
select_data($c2);

insert_data($c2);
commit($c2);

select_data($c1);

delete_data($c1);
select_data($c1);
select_data($c2);
commit($c1);

select_data($c1);
select_data($c2);

drop_table($c1);
echo "</pre></html>";
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocinlogon() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_connect() - Connect to an Oracle database
  • oci_pconnect() - Connect to an Oracle database using a persistent connection

oci_new_collection
oci_new_cursor
Funções para OCI8


Allocates and returns a new cursor (statement handle)

oci_new_connect
oci_new_descriptor
Funções para OCI8
PHP Manual

oci_new_cursor

(PHP 5, PECL OCI8 >= 1.1.0)

oci_new_cursor — Allocates and returns a new cursor (statement handle)

Descrição

resource oci_new_cursor ( resource $connection )

Allocates a new statement handle on the specified connection.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect() or oci_pconnect().

Valor Retornado

Returns a new statement handle, or FALSE on error.

Exemplos

Exemplo #1 Using REF CURSOR in an Oracle's stored procedure

<?php
// suppose your stored procedure info.output returns a ref cursor in :data

$conn = oci_connect("scott", "tiger");
$curs = oci_new_cursor($conn);
$stmt = oci_parse($conn, "begin info.output(:data); end;");

oci_bind_by_name($stmt, "data", $curs, -1, OCI_B_CURSOR);
oci_execute($stmt);
oci_execute($curs);

while ($data = oci_fetch_row($curs)) {
    var_dump($data);
}

oci_free_statement($stmt);
oci_free_statement($curs);
oci_close($conn);
?>

Exemplo #2 Using REF CURSOR in an Oracle's select statement

<?php
echo "<html><body>";
$conn = oci_connect("scott", "tiger");
$count_cursor = "CURSOR(select count(empno) num_emps from emp " .
                "where emp.deptno = dept.deptno) as EMPCNT from dept";
$stmt = oci_parse($conn, "select deptno,dname,$count_cursor");

oci_execute($stmt);
echo "<table border=\"1\">";
echo "<tr>";
echo "<th>DEPT NAME</th>";
echo "<th>DEPT #</th>";
echo "<th># EMPLOYEES</th>";
echo "</tr>";

while ($data = oci_fetch_assoc($stmt)) {
    echo "<tr>";
    $dname  = $data["DNAME"];
    $deptno = $data["DEPTNO"];
    echo "<td>$dname</td>";
    echo "<td>$deptno</td>";
    oci_execute($data["EMPCNT"]);
    while ($subdata = oci_fetch_assoc($data["EMPCNT"])) {
        $num_emps = $subdata["NUM_EMPS"];
        echo  "<td>$num_emps</td>";
    }
    echo "</tr>";
}
echo "</table>";
echo "</body></html>";
oci_free_statement($stmt);
oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocinewcursor() instead. This name still can be used, it was left as alias of oci_new_cursor() for downwards compatability. This, however, is deprecated and not recommended.

oci_new_connect
oci_new_descriptor
Funções para OCI8


Initializes a new empty LOB or FILE descriptor

oci_new_cursor
oci_num_fields
Funções para OCI8
PHP Manual

oci_new_descriptor

(PHP 5, PECL OCI8 >= 1.1.0)

oci_new_descriptor — Initializes a new empty LOB or FILE descriptor

Descrição

OCI-Lob oci_new_descriptor ( resource $connection [, int $type = OCI_DTYPE_LOB ] )

Allocates resources to hold descriptor or LOB locator.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect() or oci_pconnect().

type

Valid values for type are: OCI_DTYPE_FILE, OCI_DTYPE_LOB and OCI_DTYPE_ROWID.

Valor Retornado

Returns a new LOB or FILE descriptor on success, FALSE on error.

Exemplos

Exemplo #1 oci_new_descriptor() example

<?php
/* This script is designed to be called from a HTML form.
 * It expects $user, $password, $table, $where, and $commitsize
 * to be passed in from the form.  The script then deletes
 * the selected rows using the ROWID and commits after each
 * set of $commitsize rows. (Use with care, there is no rollback)
 */
$conn = oci_connect($user, $password);
$stmt = oci_parse($conn, "select rowid from $table $where");
$rowid = oci_new_descriptor($conn, OCI_D_ROWID);
oci_define_by_name($stmt, "ROWID", $rowid);
oci_execute($stmt);
while (oci_fetch($stmt)) {
    $nrows = oci_num_rows($stmt);
    $delete = oci_parse($conn, "delete from $table where ROWID = :rid");
    oci_bind_by_name($delete, ":rid", $rowid, -1, OCI_B_ROWID);
    oci_execute($delete);
    echo "$nrows\n";
    if (($nrows % $commitsize) == 0) {
        oci_commit($conn);
    }
}
$nrows = oci_num_rows($stmt);
echo "$nrows deleted...\n";
oci_free_statement($stmt);
oci_close($conn);
?>
<?php
    /* This script demonstrates file upload to LOB columns
     * The formfield used for this example looks like this
     * <form action="upload.php" method="post" enctype="multipart/form-data">
     * <input type="file" name="lob_upload" />
     * ...
     */
  if (!isset($lob_upload) || $lob_upload == 'none'){
?>
<form action="upload.php" method="post" enctype="multipart/form-data">
Upload file: <input type="file" name="lob_upload" /><br />
<input type="submit" value="Upload" /> - <input type="reset" value="Reset" />
</form>
<?php
  } else {

     // $lob_upload contains the temporary filename of the uploaded file

     // see also the features section on file upload,
     // if you would like to use secure uploads

     $conn = oci_connect($user, $password);
     $lob = oci_new_descriptor($conn, OCI_D_LOB);
     $stmt = oci_parse($conn, "insert into $table (id, the_blob)
               values(my_seq.NEXTVAL, EMPTY_BLOB()) returning the_blob into :the_blob");
     oci_bind_by_name($stmt, ':the_blob', $lob, -1, OCI_B_BLOB);
     oci_execute($stmt, OCI_DEFAULT);
     if ($lob->savefile($lob_upload)){
        oci_commit($conn);
        echo "Blob successfully uploaded\n";
     }else{
        echo "Couldn't upload Blob\n";
     }
     oci_free_descriptor($lob);
     oci_free_statement($stmt);
     oci_close($conn);
  }
?>

Exemplo #2 oci_new_descriptor() example

<?php
/* Calling PL/SQL stored procedures which contain clobs as input
 * parameters (PHP 4 >= 4.0.6).
 * Example PL/SQL stored procedure signature is:
 *
 * PROCEDURE save_data
 *   Argument Name                  Type                    In/Out Default?
 *   ------------------------------ ----------------------- ------ --------
 *   KEY                            NUMBER(38)              IN
 *   DATA                           CLOB                    IN
 *
 */

$conn = oci_connect($user, $password);
$stmt = oci_parse($conn, "begin save_data(:key, :data); end;");
$clob = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stmt, ':key', $key);
oci_bind_by_name($stmt, ':data', $clob, -1, OCI_B_CLOB);
$clob->write($data);
oci_execute($stmt, OCI_DEFAULT);
oci_commit($conn);
$clob->free();
oci_free_statement($stmt);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocinewdescriptor() instead. This name still can be used, it was left as alias of oci_new_descriptor() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_bind_by_name() - Binds a PHP variable to an Oracle placeholder

oci_new_cursor
oci_num_fields
Funções para OCI8


Returns the number of result columns in a statement

oci_new_descriptor
oci_num_rows
Funções para OCI8
PHP Manual

oci_num_fields

(PHP 5, PECL OCI8 >= 1.1.0)

oci_num_fields — Returns the number of result columns in a statement

Descrição

int oci_num_fields ( resource $statement )

Gets the number of columns in the given statement.

Parâmetros

statement

A valid OCI statement identifier.

Valor Retornado

Returns the number of columns as an integer, or FALSE on errors.

Exemplos

Exemplo #1 oci_num_fields() example

<?php
$conn = oci_connect("scott", "tiger");
$stmt = oci_parse($conn, "select * from emp");

oci_execute($stmt);

while (oci_fetch($stmt)) {
    echo "\n";
    $ncols = oci_num_fields($stmt);
    for ($i = 1; $i <= $ncols; $i++) {
        $column_name  = oci_field_name($stmt, $i);
        $column_value = oci_result($stmt, $i);
        echo $column_name . ': ' . $column_value . "\n";
    }
    echo "\n";
}

oci_free_statement($stmt);
oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocinumcols() instead. This name still can be used, it was left as alias of oci_num_fields() for downwards compatability. This, however, is deprecated and not recommended.

oci_new_descriptor
oci_num_rows
Funções para OCI8


Returns number of rows affected during statement execution

oci_num_fields
oci_parse
Funções para OCI8
PHP Manual

oci_num_rows

(PHP 5, PECL OCI8 >= 1.1.0)

oci_num_rows — Returns number of rows affected during statement execution

Descrição

int oci_num_rows ( resource $statement )

Gets the number of rows affected during statement execution.

Parâmetros

statement

A valid OCI statement identifier.

Valor Retornado

Returns the number of rows affected as an integer, or FALSE on errors.

Exemplos

Exemplo #1 oci_num_rows() example

<?php
$conn = oci_connect("scott", "tiger");

$stmt = oci_parse($conn, "create table emp2 as select * from emp");
oci_execute($stmt);
echo oci_num_rows($stmt) . " rows inserted.<br />";
oci_free_statement($stmt);

$stmt = oci_parse($conn, "delete from emp2");
oci_execute($stmt, OCI_DEFAULT);
echo oci_num_rows($stmt) . " rows deleted.<br />";
oci_commit($conn);
oci_free_statement($stmt);

$stmt = oci_parse($conn, "drop table emp2");
oci_execute($stmt);
oci_free_statement($stmt);

oci_close($conn);
?>

Notas

Nota:

This function does not return number of rows selected! For SELECT statements this function will return the number of rows, that were fetched to the buffer with oci_fetch*() functions.

Nota:

In PHP versions before 5.0.0 you must use ocirowcount() instead. This name still can be used, it was left as alias of oci_num_rows() for downwards compatability. This, however, is deprecated and not recommended.

oci_num_fields
oci_parse
Funções para OCI8


Prepares an Oracle statement for execution

oci_num_rows
oci_password_change
Funções para OCI8
PHP Manual

oci_parse

(PHP 5, PECL OCI8 >= 1.1.0)

oci_parse — Prepares an Oracle statement for execution

Descrição

resource oci_parse ( resource $connection , string $sql_text )

Prepares sql_text using connection and returns the statement identifier, which can be used with oci_bind_by_name(), oci_execute() and other functions.

Statement identifiers can be freed with oci_free_statement() or by setting the variable to null.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

sql_text

The SQL or PL/SQL statement.

SQL statements should not end with a semi-colon (";"). PL/SQL statements should end with a semi-colon (";").

Valor Retornado

Returns a statement handle on success, or FALSE on error.

Exemplos

Exemplo #1 oci_parse() example for SQL statements

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

// Parse the statement. Note there is no final semi-colon in the SQL statement
$stid = oci_parse($conn, 'SELECT * FROM employees');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

?>

Exemplo #2 oci_parse() example for PL/SQL statements

<?php

/*
  Before running the PHP program, create a stored procedure in
  SQL*Plus or SQL Developer:

  CREATE OR REPLACE PROCEDURE myproc(p1 IN NUMBER, p2 OUT NUMBER) AS
  BEGIN
      p2 := p1 * 2;
  END;

*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
    $e = oci_error();
    trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$p1 = 8;

// When parsing PL/SQL programs, there should be a final semi-colon in the string
$stid = oci_parse($conn, 'begin myproc(:p1, :p2); end;');
oci_bind_by_name($stid, ':p1', $p1);
oci_bind_by_name($stid, ':p2', $p2, 40);

oci_execute($stid);

print "$p2\n";   // prints 16

oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

This function does not validate sql_text. The only way to find out if sql_text is a valid SQL or PL/SQL statement is to execute it.

Nota:

In PHP versions before 5.0.0 use ociparse() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_execute() - Executes a statement
  • oci_free_statement() - Frees all resources associated with statement or cursor

oci_num_rows
oci_password_change
Funções para OCI8


Changes password of Oracle's user

oci_parse
oci_pconnect
Funções para OCI8
PHP Manual

oci_password_change

(PHP 5, PECL OCI8 >= 1.1.0)

oci_password_change — Changes password of Oracle's user

Descrição

bool oci_password_change ( resource $connection , string $username , string $old_password , string $new_password )
resource oci_password_change ( string $dbname , string $username , string $old_password , string $new_password )

Changes password for user with username.

The oci_password_change() function is most useful for PHP command-line scripts, or when non-persistent connections are used throughout the PHP application.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect() or oci_pconnect().

username

The Oracle user name.

old_password

The old password.

new_password

The new password to be set.

dbname

The database name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Changing the password either with this function or directly in Oracle should be done carefully. This is because PHP applications may continue to successfully reuse persistent connections by authenticating with the old password. The best practice is to restart all web servers whenever the user password is changed.

Nota: The second oci_password_change() syntax is available since OCI8 version 1.1.

Nota:

In PHP versions before 5.0.0 you must use ocipasswordchange() instead. This name still can be used, it was left as alias of oci_password_change() for downwards compatability. This, however, is deprecated and not recommended.

oci_parse
oci_pconnect
Funções para OCI8


Connect to an Oracle database using a persistent connection

oci_password_change
oci_result
Funções para OCI8
PHP Manual

oci_pconnect

(PHP 5, PECL OCI8 >= 1.1.0)

oci_pconnect — Connect to an Oracle database using a persistent connection

Descrição

resource oci_pconnect ( string $username , string $password [, string $connection_string [, string $character_set [, int $session_mode ]]] )

Creates a persistent connection to an Oracle server and logs on.

Persistent connections are cached and re-used between requests, resulting in reduced overhead on each page load; a typical PHP application will have a single persistent connection open against an Oracle server per Apache child process (or PHP FastCGI/CGI process). See the Persistent Database Connections section for more information.

Parâmetros

username

The Oracle user name.

password

The password for username.

connection_string

Contains the Oracle instance to connect to. It can be an » Easy Connect string, or a Connect Name from the tnsnames.ora file, or the name of a local Oracle instance.

If not specified, PHP uses environment variables such as TWO_TASK (on Linux) or LOCAL (on Windows) and ORACLE_SID to determine the Oracle instance to connect to.

To use the Easy Connect naming method, PHP must be linked with Oracle 10g or greater Client libraries. The Easy Connect string for Oracle 10g is of the form: [//]host_name[:port][/service_name]. With Oracle 11g, the syntax is: [//]host_name[:port][/service_name][:server_type][/instance_name]. Service names can be found by running the Oracle utility lsnrctl status on the database server machine.

The tnsnames.ora file can be in the Oracle Net search path, which includes $ORACLE_HOME/network/admin and /etc. Alternatively set TNS_ADMIN so that $TNS_ADMIN/tnsnames.ora is read. Make sure the web daemon has read access to the file.

character_set

Com o Oracle server 9.2 e seguintes, você pode indicar o parâmetro charset, que será utilizado na nova conexão. Se você estiver utilizando Oracle server < 9.2, este parâmetro será ignorado e a variável de ambiente NLS_LANG deverá ser utilizada.

session_mode

This parameter is available since version PHP 5 (PECL OCI8 1.1) and accepts the following values: OCI_DEFAULT, OCI_SYSOPER and OCI_SYSDBA. If either OCI_SYSOPER or OCI_SYSDBA were specified, this function will try to establish privileged connection using external credentials. Privileged connections are disabled by default. To enable them you need to set oci8.privileged_connect to On.

PHP 5.3 (PECL OCI8 1.3.4) introduced the OCI_CRED_EXT mode value. This tells Oracle to use External or OS authentication, which must be configured in the database. The OCI_CRED_EXT flag can only be used with username of "/" and a empty password. oci8.privileged_connect may be On or Off.

OCI_CRED_EXT may be combined with the OCI_SYSOPER or OCI_SYSDBA modes.

OCI_CRED_EXT is not supported on Windows for security reasons.

Valor Retornado

Returns a connection identifier or FALSE on error.

Notas

Nota: Starting with PHP 5.1.2 and PECL oci8 1.1, the lifetime and maximum number of persistent Oracle connections can be tuned by setting the following configuration values: oci8.persistent_timeout, oci8.ping_interval and oci8.max_persistent.

Nota:

In PHP versions before 5.0.0 you must use ociplogon() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_connect() - Connect to an Oracle database
  • oci_new_connect() - Connect to the Oracle server using a unique connection

oci_password_change
oci_result
Funções para OCI8


Returns field's value from the fetched row

oci_pconnect
oci_rollback
Funções para OCI8
PHP Manual

oci_result

(PHP 5, PECL OCI8 >= 1.1.0)

oci_result — Returns field's value from the fetched row

Descrição

mixed oci_result ( resource $statement , mixed $field )

Returns the data from field in the current row, fetched by oci_fetch().

Para detalhes sobre o mapeamento dos tipos de dados realizado pelo driver oci8, veja tipos de dados suportados pelo driver

Parâmetros

statement

field

Can be either use the column number (1-based) or the column name (in uppercase).

Valor Retornado

Returns everything as strings except for abstract types (ROWIDs, LOBs and FILEs). Returns FALSE on error.

Notas

Nota:

In PHP versions before 5.0.0 you must use ociresult() instead. This name still can be used, it was left as alias of oci_result() for downwards compatability. This, however, is deprecated and not recommended.

Veja Também

  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array
  • oci_fetch_all() - Fetches multiple rows from a query into a two-dimensional array

oci_pconnect
oci_rollback
Funções para OCI8


Rolls back the outstanding database transaction

oci_result
oci_server_version
Funções para OCI8
PHP Manual

oci_rollback

(PHP 5, PECL OCI8 >= 1.1.0)

oci_rollback — Rolls back the outstanding database transaction

Descrição

bool oci_rollback ( resource $connection )

Reverts all uncommitted changes for the Oracle connection and ends the transaction. It releases all locks held. All Oracle SAVEPOINTS are erased.

A transaction begins when the first SQL statement that changes data is executed with oci_execute() using the OCI_NO_AUTO_COMMIT flag. Further data changes made by other statements become part of the same transaction. Data changes made in a transaction are temporary until the transaction is committed or rolled back. Other users of the database will not see the changes until they are committed.

When inserting or updating data, using transactions is recommended for relational data consistency and for performance reasons.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect() or oci_new_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 oci_rollback() example

<?php

// Insert into several tables, rolling back the changes if an error occurs

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, "INSERT INTO mysalary (id, name) VALUES (1, 'Chris')");

// The OCI_NO_AUTO_COMMIT flag tells Oracle not to commit the INSERT immediately
// Use OCI_DEFAULT as the flag for PHP <= 5.3.1.  The two flags are equivalent
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
    $e = oci_error($stid);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, 'INSERT INTO myschedule (startday) VALUES (12)');
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {
    $e = oci_error($stid);
    oci_rollback($conn);  // rollback changes to both tables
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

// Commit the changes to both tables
$r = oci_commit($conn);
if (!r) {
    $e = oci_error($conn);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

?>

Exemplo #2 Rolling back to a SAVEPOINT example

<?php
$stid = oci_parse($conn, 'UPDATE mytab SET id = 1111');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

// Create the savepoint
$stid = oci_parse($conn, 'SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

$stid = oci_parse($conn, 'UPDATE mytab SET id = 2222');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

// Use an explicit SQL statement to rollback to the savepoint
$stid = oci_parse($conn, 'ROLLBACK TO SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

oci_commit($conn);  // mytab now has id of 1111
?>

Notas

Nota:

Transactions are automatically rolled back when you close the connection, or when the script ends, whichever is soonest. You need to explicitly call oci_commit() to commit the transaction.

Any call to oci_execute() that uses OCI_COMMIT_ON_SUCCESS mode explicitly or by default will commit any previous uncommitted transaction.

Any Oracle DDL statement such as CREATE or DROP will automatically commit any uncommitted transaction.

Nota:

In PHP versions before 5.0.0 you must use ocirollback() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci_commit() - Commits the outstanding database transaction
  • oci_execute() - Executes a statement

oci_result
oci_server_version
Funções para OCI8


Returns server version

oci_rollback
oci_set_action
Funções para OCI8
PHP Manual

oci_server_version

(PHP 5, PECL OCI8 >= 1.1.0)

oci_server_version — Returns server version

Descrição

string oci_server_version ( resource $connection )

Returns a string with version information of the Oracle server, which uses the provided connection.

Parâmetros

connection

Valor Retornado

Returns the version information as a string or FALSE on error.

Exemplos

Exemplo #1 oci_server_version() example

<?php
    $conn = oci_connect("scott", "tiger");
    echo "Server Version: " . oci_server_version($conn);
    oci_close($conn);
?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ociserverversion() instead. This name still can be used, it was left as alias of oci_server_version() for downwards compatability. This, however, is deprecated and not recommended.

oci_rollback
oci_set_action
Funções para OCI8


Sets the action name

oci_server_version
oci_set_client_identifier
Funções para OCI8
PHP Manual

oci_set_action

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_action — Sets the action name

Descrição

bool oci_set_action ( resource $connection , string $action_name )

Sets the action name for Oracle tracing.

The action name is registered with the database when the next 'roundtrip' from PHP to the database occurs, typically when an SQL statement is executed.

The action name can subsequently be queried from database administration views such as V$SESSION. It can be used for tracing and monitoring such as with V$SQLAREA and DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE.

The value may be retained across persistent connections.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

action_name

User chosen string up to 32 bytes long.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting the action

<?php

$c = oci_connect('hr', 'welcome', 'localhost/XE');

// Record the action
oci_set_action($c, 'Friend Lookup');

// Code that causes a roundtrip, for example a query:
$s = oci_parse($c, 'select * from dual');
oci_execute($s);
oci_fetch_all($s, $res);

sleep(30);

?>
// While the script is running, the administrator can see the actions
// being performed:

sqlplus system/welcome
SQL> select action from v$session;

Notas

Nota: Oracle version requirement

This function is available when PHP is linked with Oracle Database libraries from version 10g onwards.

Dica

Performance

With older versions of OCI8 or the Oracle Database, the client information can be set using the Oracle DBMS_APPLICATION_INFO package. This is less efficient than using oci_set_client_info().

Cuidado

Roundtrip Gotcha

Some but not all OCI8 functions cause roundtrips. Roundtrips to the database may not occur with queries when result caching is enabled.

Veja Também

  • oci_set_module_name() - Sets the module name
  • oci_set_client_info() - Sets the client information
  • oci_set_client_identifier() - Sets the client identifier

oci_server_version
oci_set_client_identifier
Funções para OCI8


Sets the client identifier

oci_set_action
oci_set_client_info
Funções para OCI8
PHP Manual

oci_set_client_identifier

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_client_identifier — Sets the client identifier

Descrição

bool oci_set_client_identifier ( resource $connection , string $client_identifier )

Sets the client identifier used by various database components to identify lightweight application users who authenticate as the same database user.

The client identifier is registered with the database when the next 'roundtrip' from PHP to the database occurs, typically when an SQL statement is executed.

The identifier can subsequently be queried from database administration views such as V$SESSION. It can be used with DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE for tracing. It can be used for auditing.

The value may be retained across persistent connections.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

client_identifier

User chosen string up to 64 bytes long.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting the client identifier to the application user

<?php

// Find the application user's login name
session_start();
$un = my_validate_session($_SESSION['username']);
$c = oci_connect('myschema', 'welcome', 'localhost/XE');

// Tell Oracle who that user is
oci_set_client_identifier($c, $un);

// The next roundtrip to the database will piggyback the identifier
$s = oci_parse($c, 'select mydata from mytable');
oci_execute($s);

// ...

?>

Notas

Cuidado

Roundtrip Gotcha

Some but not all OCI8 functions cause roundtrips. Roundtrips to the database may not occur with queries when result caching is enabled.

Veja Também

  • oci_set_module_name() - Sets the module name
  • oci_set_action() - Sets the action name
  • oci_set_client_info() - Sets the client information

oci_set_action
oci_set_client_info
Funções para OCI8


Sets the client information

oci_set_client_identifier
oci_set_edition
Funções para OCI8
PHP Manual

oci_set_client_info

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_client_info — Sets the client information

Descrição

bool oci_set_client_info ( resource $connection , string $client_info )

Sets the client information for Oracle tracing.

The client information is registered with the database when the next 'roundtrip' from PHP to the database occurs, typically when an SQL statement is executed.

The client information can subsequently be queried from database administration views such as V$SESSION.

The value may be retained across persistent connections.

Parâmetros

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

User chosen string up to 64 bytes long.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting the client information

<?php

$c = oci_connect('hr', 'welcome', 'localhost/XE');

// Record the client information
oci_set_client_info($c, 'My Application Version 2');

// Code that causes a roundtrip, for example a query:
$s = oci_parse($c, 'select * from dual');
oci_execute($s);
oci_fetch_all($s, $res);

sleep(30);

?>
// While the script is running, the administrator can see the client
// information:

sqlplus system/welcome
SQL> select client_info from v$session;

Notas

Nota: Oracle version requirement

This function is available when PHP is linked with Oracle Database libraries from version 10g onwards.

Dica

Performance

With older versions of OCI8 or the Oracle Database, the client information can be set using the Oracle DBMS_APPLICATION_INFO package. This is less efficient than using oci_set_client_info().

Cuidado

Roundtrip Gotcha

Some but not all OCI8 functions cause roundtrips. Roundtrips to the database may not occur with queries when result caching is enabled.

Veja Também

  • oci_set_module_name() - Sets the module name
  • oci_set_action() - Sets the action name
  • oci_set_client_identifier() - Sets the client identifier

oci_set_client_identifier
oci_set_edition
Funções para OCI8


Sets the database edition

oci_set_client_info
oci_set_module_name
Funções para OCI8
PHP Manual

oci_set_edition

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_edition — Sets the database edition

Descrição

bool oci_set_edition ( string $edition )

Sets the database "edition" of objects to be used by a subsequent connections.

Oracle Editions allow concurrent versions of applications to run using the same schema and object names. This is useful for upgrading live systems.

Call oci_set_edition() before calling
oci_connect(), oci_pconnect()
or oci_new_connect().

If an edition is set that is not valid in the database, connection will fail even if oci_set_edition() returns success.

When using persistent connections, if a connection with the requested edition setting already exists, it is reused. Otherwise, a different persistent connection is created

Parâmetros

edition

Oracle Database edition name previously created with the SQL "CREATE EDITION" command.

Notas

Nota: Oracle version requirement

This function is available from Oracle 11gR2 onwards.

Cuidado

Persistent connections

To avoid inconsistencies and unexpected errors, do not use ALTER SESSION SET EDITION to change the edition on persistent connections.

Cuidado

DRCP Connection Pooling

To avoid inconsistencies and unexpected errors when using editions and DRCP with Oracle 11.2.0.1, keep a one-to-one correspondence between the oci8.connection_class and the edition name used by applications. Each pooled server of a given connection class should only be used with one edition. This restriction has been removed with Oracle 11.2.0.2.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Two scripts can use different versions of myfunc() at the same time

<?php

// File 1

echo "Version 1 of application\n";

oci_set_edition('ORA$BASE');
$c = oci_connect('hr', 'welcome', 'localhost/XE');

$s = oci_parse($c, "begin :r := myfunc(); end;");
oci_bind_by_name($s, ":r", $r, 20);
oci_execute($s);
echo "The result is $r\n";

?>
<?php

// File 2

echo "Version 2 of application\n";

oci_set_edition('E1');
$c = oci_connect('hr', 'welcome', 'localhost/XE');

$s = oci_parse($c, "begin :r := myfunc(); end;");
oci_bind_by_name($s, ":r", $r, 20);
oci_execute($s);
echo "The result is $r\n";

?>

oci_set_client_info
oci_set_module_name
Funções para OCI8


Sets the module name

oci_set_edition
oci_set_prefetch
Funções para OCI8
PHP Manual

oci_set_module_name

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_module_name — Sets the module name

Descrição

bool oci_set_module_name ( resource $connection , string $module_name )

Sets the module name for Oracle tracing.

The module name is registered with the database when the next 'roundtrip' from PHP to the database occurs, typically when an SQL statement is executed.

The name can subsequently be queried from database administration views such as V$SESSION. It can be used for tracing and monitoring such as with V$SQLAREA and DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE.

The value may be retained across persistent connections.

Parâmetros

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

module_name

User chosen string up to 48 bytes long.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Oracle version requirement

This function is available when PHP is linked with Oracle Database libraries from version 10g onwards.

Dica

Performance

With older versions of OCI8 or the Oracle Database, the client information can be set using the Oracle DBMS_APPLICATION_INFO package. This is less efficient than using oci_set_client_info().

Cuidado

Roundtrip Gotcha

Some but not all OCI8 functions cause roundtrips. Roundtrips to the database may not occur with queries when result caching is enabled.

Exemplos

Exemplo #1 Setting the module name

<?php

$c = oci_connect('hr', 'welcome', 'localhost/XE');

// Record the module
oci_set_module_name($c, 'Home Page');

// Code that causes a roundtrip, for example a query:
$s = oci_parse($c, 'select * from dual');
oci_execute($s);
oci_fetch_all($s, $res);

sleep(30);
?>
// While the script is running, the administrator can see the
// modules in use:

sqlplus system/welcome
SQL> select module from v$session;

Veja Também

  • oci_set_action() - Sets the action name
  • oci_set_client_info() - Sets the client information
  • oci_set_client_identifier() - Sets the client identifier

oci_set_edition
oci_set_prefetch
Funções para OCI8


Sets number of rows to be prefetched by queries

oci_set_module_name
oci_statement_type
Funções para OCI8
PHP Manual

oci_set_prefetch

(PHP 5, PECL OCI8 >= 1.1.0)

oci_set_prefetch — Sets number of rows to be prefetched by queries

Descrição

bool oci_set_prefetch ( resource $statement , int $rows )

Sets the number of rows to be buffered by the Oracle Client libraries after a successful query call to oci_execute() and for each subsequent internal fetch request to the database. For queries returning a large number of rows, performance can be significantly improved by increasing the prefetch count above the default oci8.default_prefetch value.

Prefetching is Oracle's efficient way of returning more than one data row from the database in each network request. This can result in better network and CPU utilization. The buffering of rows is internal to OCI8 and the behavior of OCI8 fetching functions is unchanged regardless of the prefetch count. For example, oci_fetch_row() will always return one row. The prefetch buffer is per-statement and is not used by re-executed statements or by other connections.

Call oci_set_prefetch() before calling oci_execute().

A tuning goal is to set the prefetch value to a reasonable size for the network and database to handle. For queries returning a very large number of rows, overall system efficiency might be better if rows are retrieved from the database in several chunks (i.e set the prefetch value smaller than the number of rows). This allows the database to handle other users' statements while the PHP script is processing the current set of rows.

Query prefetching was introduced in Oracle 8i. REF CURSOR prefetching was introduced in Oracle 11gR2 and occurs when PHP is linked with Oracle 11gR2 Client libraries and connected to 11gR2 or previous versions of the database. Nested cursor prefetching was introduced in Oracle 11gR2 and requires both the Oracle Client libraries and the database to be version 11gR2.

Prefetching is not supported when queries contain LONG or LOB columns. The prefetch value is ignored and single-row fetches will be used in all the situations when prefetching is not supported.

Parâmetros

statement

A valid OCI8 statement identifier created by oci_parse() and executed by oci_execute(), or a REF CURSOR statement identifier.

rows

The number of rows to be prefetched, >= 0

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
PHP 5.3.2 (PECL OCI8 1.4) | Before this release, rows must be >= 1.
PHP 5.3 (PECL OCI8 1.3.4) | Before this release, prefetching was limited to the lesser of rows rows and 1024 * rows bytes. The byte size restriction has now been removed.

Exemplos

Exemplo #1 Changing the default prefetch value for a query

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'SELECT * FROM myverybigtable');
oci_set_prefetch($stid, 300);  // Set before calling oci_execute()
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>".($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;")."</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

oci_free_statement($stid);
oci_close($conn);

?>

Exemplo #2 Changing the default prefetch for a REF CURSOR fetch

<?php
/*
  Create the PL/SQL stored procedure as:

  CREATE OR REPLACE PROCEDURE myproc(p1 OUT SYS_REFCURSOR) AS
  BEGIN
    OPEN p1 FOR SELECT * FROM all_objects WHERE ROWNUM < 5000;
  END;
*/

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'BEGIN myproc(:rc); END;');
$refcur = oci_new_cursor($conn);
oci_bind_by_name($stid, ':rc', $refcur, -1, OCI_B_CURSOR);
oci_execute($stid);

// Change the prefetch before executing the cursor.
// REF CURSOR prefetching works when PHP is linked with Oracle 11gR2 Client libraries
oci_set_prefetch($refcur, 200);
oci_execute($refcur);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($refcur, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>".($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;")."</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";

oci_free_statement($refcur);
oci_free_statement($stid);
oci_close($conn);

?>

If PHP OCI8 fetches from a REF CURSOR and then passes the REF CURSOR back to a second PL/SQL procedure for further processing, then set the REF CURSOR prefetch count to 0 to avoid rows being "lost" from the result set. The prefetch value is the number of extra rows fetched in each OCI8 internal request to the database, so setting it to 0 means only fetch one row at a time.

Exemplo #3 Setting the prefetch value when passing a REF CURSOR back to Oracle

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/orcl');

// get the REF CURSOR
$stid = oci_parse($conn, 'BEGIN myproc(:rc_out); END;');
$refcur = oci_new_cursor($conn);
oci_bind_by_name($stid, ':rc_out', $refcur, -1, OCI_B_CURSOR);
oci_execute($stid);

// Display two rows, but don't prefetch any extra rows otherwise
// those extra rows would not be passed back to myproc_use_rc().
// A prefetch value of 0 is allowed in PHP 5.3.2 and PECL OCI8 1.4
oci_set_prefetch($refcur, 0);
oci_execute($refcur);
$row = oci_fetch_array($refcur);
var_dump($row);
$row = oci_fetch_array($refcur);
var_dump($row);

// pass the REF CURSOR to myproc_use_rc() to do more data processing
// with the result set
$stid = oci_parse($conn, 'begin myproc_use_rc(:rc_in); end;');
oci_bind_by_name($stid, ':rc_in', $refcur, -1, OCI_B_CURSOR);
oci_execute($stid);

?>

Notas

Nota:

In PHP versions before 5.0.0 use ocisetprefetch() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

Veja Também

  • oci8.default_prefetch ini option

oci_set_module_name
oci_statement_type
Funções para OCI8


Returns the type of a statement

oci_set_prefetch
Ovrimos SQL
Funções para OCI8
PHP Manual

oci_statement_type

(PHP 5, PECL OCI8 >= 1.1.0)

oci_statement_type — Returns the type of a statement

Descrição

string oci_statement_type ( resource $statement )

Returns a keyword identifying the type of the OCI8 statement.

Parâmetros

statement

A valid OCI8 statement identifier from oci_parse().

Valor Retornado

Returns the type of statement as one of the following strings.

Statement type
Return String | Notes
ALTER |
BEGIN |
CALL | Introduced in PHP 5.2.1 (PECL OCI8 1.2.3)
CREATE |
DECLARE |
DELETE |
DROP |
INSERT |
SELECT |
UPDATE |
UNKNOWN |

Returns FALSE on error.

Exemplos

Exemplo #1 oci_statement_type() example

<?php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'DELETE FROM departments WHERE department_id = 130;');
if (oci_statement_type($stid) == "DELETE") {
    trigger_error('You are not allowed to delete from this table', E_USER_ERROR);
}
else {
    oci_execute($stid);  // delete the row
}

oci_free_statement($stid);
oci_close($conn);

?>

Notas

Nota:

In PHP versions before 5.0.0 you must use ocistatementtype() instead. The old function name can still be used in current versions, however it is deprecated and not recommended.

oci_set_prefetch
Ovrimos SQL
Funções para OCI8


Ovrimos SQL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções do Ovrimos SQL
    • ovrimos_close — Fecha o conexão com o ovrimos
    • ovrimos_commit — Grava a transação
    • ovrimos_connect — Conecta com o banco de dados especificado
    • ovrimos_cursor — Retorna o nome do cursor
    • ovrimos_exec — Executa um comando SQL
    • ovrimos_execute — Executa um comando SQL preparado
    • ovrimos_fetch_into — Obtem uma linha de um conjunto de resultados
    • ovrimos_fetch_row — Obtém uma linha do conjuto de resultados
    • ovrimos_field_len — Retorna o tamanho da coluna
    • ovrimos_field_name — Retorna o nome da coluna
    • ovrimos_field_num — Retorna o índice da coluna (baseado em 1)
    • ovrimos_field_type — Retorna o tipo da coluna
    • ovrimos_free_result — Libera o result_id especificado
    • ovrimos_longreadlen — Especifica quantos bytes são obtidos dos tipos de dados long
    • ovrimos_num_fields — Retorna o número de colunas
    • ovrimos_num_rows — Retorna o número de linhas afetadas por uma operação update
    • ovrimos_prepare — Prepara um comando SQL
    • ovrimos_result_all — Mostra todo o conjunto de resultados como uma tabela HTML
    • ovrimos_result — Obtém a coluna da saída
    • ovrimos_rollback — Desfaz a transação
oci_statement_type
Introdução
Vendor Specific Database Extensions


Introdução

Ovrimos SQL Server, é um cliente/servidor, RDBMS transacional combinado com capacidades Web e transações rápidas.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 4.4.5 e PHP 5.1.0.

Nota: Esta extensão não está disponível na plataforma Windows.

Ovrimos SQL
Instalação/Configuração
Ovrimos SQL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Ovrimos SQL


Dependências

Você precisa instalar a biblioteca sqlcli disponível na distribuição do Ovrimos SQL Server.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para ativar o suporte Ovrimos no PHP apenas compile o PHP com o parâmetro --with-ovrimos[=DIR] na sua linha do configure. DIR é o diretório de instalação da libsqlcli do Ovrimos.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Ovrimos SQL


Exemplos

Índice

Constantes pré-definidas
Ovrimos SQL


Exemplos
Funções do Ovrimos SQL
Exemplos
PHP Manual

Exemplo #1 Conectando ao Ovrimos SQL Server e selecionando de uma tabela do sistema

<?php
$conn = ovrimos_connect("server.domain.com", "8001", "admin", "password");
if ($conn != 0) {
    echo "Connection ok!";
    $res = ovrimos_exec($conn, "select table_id, table_name from sys.tables");
    if ($res != 0) {
        echo "Statement ok!";
        ovrimos_result_all($res);
        ovrimos_free_result($res);
    }
    ovrimos_close($conn);
}
?>

Exemplos
Funções do Ovrimos SQL
Exemplos


Funções do Ovrimos SQL

Índice

  • ovrimos_close — Fecha o conexão com o ovrimos
  • ovrimos_commit — Grava a transação
  • ovrimos_connect — Conecta com o banco de dados especificado
  • ovrimos_cursor — Retorna o nome do cursor
  • ovrimos_exec — Executa um comando SQL
  • ovrimos_execute — Executa um comando SQL preparado
  • ovrimos_fetch_into — Obtem uma linha de um conjunto de resultados
  • ovrimos_fetch_row — Obtém uma linha do conjuto de resultados
  • ovrimos_field_len — Retorna o tamanho da coluna
  • ovrimos_field_name — Retorna o nome da coluna
  • ovrimos_field_num — Retorna o índice da coluna (baseado em 1)
  • ovrimos_field_type — Retorna o tipo da coluna
  • ovrimos_free_result — Libera o result_id especificado
  • ovrimos_longreadlen — Especifica quantos bytes são obtidos dos tipos de dados long
  • ovrimos_num_fields — Retorna o número de colunas
  • ovrimos_num_rows — Retorna o número de linhas afetadas por uma operação update
  • ovrimos_prepare — Prepara um comando SQL
  • ovrimos_result_all — Mostra todo o conjunto de resultados como uma tabela HTML
  • ovrimos_result — Obtém a coluna da saída
  • ovrimos_rollback — Desfaz a transação
ovrimos_close
Ovrimos SQL


Fecha o conexão com o ovrimos

Funções do Ovrimos SQL
ovrimos_commit
Funções do Ovrimos SQL
PHP Manual

ovrimos_close

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_close — Fecha o conexão com o ovrimos

Descrição

void ovrimos_close ( int $connection )

Fechar a especificada connection com o Ovrimos. Isto tem o efeito de desfazer as transações que não foram gravadas.

Parâmetros

connection

O identificador de conexão do Ovrimos, retornado pela ovrimos_connect().

Valor Retornado

Não há valor retornado.

Veja Também

  • ovrimos_connect() - Conecta com o banco de dados especificado

Funções do Ovrimos SQL
ovrimos_commit
Funções do Ovrimos SQL


Grava a transação

ovrimos_close
ovrimos_connect
Funções do Ovrimos SQL
PHP Manual

ovrimos_commit

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_commit — Grava a transação

Descrição

bool ovrimos_commit ( int $connection_id )

Gravar a transação.

Parâmetros

connection_id

O identificador de conexão do Ovrimos, retornado pela ovrimos_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ovrimos_rollback() - Desfaz a transação

ovrimos_close
ovrimos_connect
Funções do Ovrimos SQL


Conecta com o banco de dados especificado

ovrimos_commit
ovrimos_cursor
Funções do Ovrimos SQL
PHP Manual

ovrimos_connect

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_connect — Conecta com o banco de dados especificado

Descrição

int ovrimos_connect ( string $host , string $db , string $user , string $password )

ovrimos_connect() é usado para conectar com o banco de dados especificado.

ovrimos_connect() retorna um id de conexão (maior do que 0) ou 0 em caso de falha. O funcionamento de host e db são aqueles usados em todos os lugares da API do Ovrimos. host é o nome de um servidor ou o endereço IP e db é ou o nome do banco de dados, ou uma string contendo o número da porta.

Exemplo #1 Exemplo ovrimos_connect()

<?php
$conn = ovrimos_connect("server.domain.com", "8001", "admin", "password");
if ($conn != 0) {
    echo "Connection ok!";
    $res=ovrimos_exec($conn, "select table_id, table_name from sys.tables");
    if ($res != 0) {
        echo "Statement ok!";
        ovrimos_result_all($res);
        ovrimos_free_result($res);
    }
    ovrimos_close($conn);
}
?>
O exemplo acima irá conectar com o banco de dados e mostrar a tabela especificada.

ovrimos_commit
ovrimos_cursor
Funções do Ovrimos SQL


Retorna o nome do cursor

ovrimos_connect
ovrimos_exec
Funções do Ovrimos SQL
PHP Manual

ovrimos_cursor

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_cursor — Retorna o nome do cursor

Descrição

string ovrimos_cursor ( int $result_id )

Obtém o nome do cursor. Útil quando você quer fazer updates ou deletes posicionados.

Parâmetros

result_id

Um identificador de resultado, retornado pela ovrimos_execute() ou ovrimos_exec().

Valor Retornado

Retorna o nome como uma string, ou FALSE em erro.

ovrimos_connect
ovrimos_exec
Funções do Ovrimos SQL


Executa um comando SQL

ovrimos_cursor
ovrimos_execute
Funções do Ovrimos SQL
PHP Manual

ovrimos_exec

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_exec — Executa um comando SQL

Descrição

int ovrimos_exec ( int $connection_id , string $query )

ovrimos_exec() executa um comando SQL (query ou update) e retorna um result_id ou FALSE. Evidentemente o comando SQL não deve conter parâmetros.

ovrimos_cursor
ovrimos_execute
Funções do Ovrimos SQL


Executa um comando SQL preparado

ovrimos_exec
ovrimos_fetch_into
Funções do Ovrimos SQL
PHP Manual

ovrimos_execute

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_execute — Executa um comando SQL preparado

Descrição

bool ovrimos_execute ( int $result_id [, array $parameters_array ] )

ovrimos_execute() executa um comando preparado. Retorna TRUE em caso de sucesso ou FALSE em falhas. Se o comando preparado conter parâmetros (pontos de interogação no comando), o número correto de parâmetros deve ser passado em uma matriz. Veja que eu não acompanho a convenção do PHP em colocar o nome do parâmetro opcional entre conchetes. Eu não gosto disso.

ovrimos_exec
ovrimos_fetch_into
Funções do Ovrimos SQL


Obtem uma linha de um conjunto de resultados

ovrimos_execute
ovrimos_fetch_row
Funções do Ovrimos SQL
PHP Manual

ovrimos_fetch_into

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_fetch_into — Obtem uma linha de um conjunto de resultados

Descrição

bool ovrimos_fetch_into ( int $result_id , array $result_array [, string $how [, int $rownumber ]] )

ovrimos_fetch_into() obtém uma linha do conjunto de resultados em result_array, a qual deve ser passada por referencia. A linha a ser obtida é determinada pelos dois últimos parâmetros. how é um de Next (padrão), Prev, First, Last, Absolute, corespondendo ao próximo da posição atual, a anterior a posição atual, o primeiro resultado, aúltima posição e uma posição absoluta a partir do início (essencialmente equivalente a 'first' mas precisa de 'rownumber'). Não é importante a diferença entre maiúsculas e minúsculas. rownumber é opcional exceto para posicionamento absoluto. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo #1 Um exemplo

<?php
$conn=ovrimos_connect("neptune", "8001", "admin", "password");
if ($conn!=0) {
    echo "Connection ok!";
    $res=ovrimos_exec($conn, "select table_id, table_name from sys.tables");
    if ($res != 0) {
        echo "Statement ok!";
        if (ovrimos_fetch_into($res, &$row)) {
            list($table_id, $table_name) = $row;
            echo "table_id=" . $table_id . ", table_name=" . $table_name . "\n";
            if (ovrimos_fetch_into($res, &$row)) {
                list($table_id, $table_name) = $row;
                echo "table_id=" . $table_id . ", table_name=" . $table_name . "\n";
            } else {
                echo "Next: error\n";
            }
        } else {
            echo "First: error\n";
        }
        ovrimos_free_result($res);
    }
    ovrimos_close($conn);
}
?>
Este exemplo irá obter uma linha.

ovrimos_execute
ovrimos_fetch_row
Funções do Ovrimos SQL


Obtém uma linha do conjuto de resultados

ovrimos_fetch_into
ovrimos_field_len
Funções do Ovrimos SQL
PHP Manual

ovrimos_fetch_row

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_fetch_row — Obtém uma linha do conjuto de resultados

Descrição

bool ovrimos_fetch_row ( int $result_id [, int $how [, int $row_number ]] )

ovrimos_fetch_row() obtém uma linha do conjunto de resultados. Valores de colunas devem ser obtidos com outras chamadas. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo #1 Um exemplo fetch row

<?php
$conn = ovrimos_connect("remote.host", "8001", "admin", "password");
if ($conn != 0) {
    echo "Connection ok!";
    $res=ovrimos_exec($conn, "select table_id, table_name from sys.tables");
    if ($res != 0) {
        echo "Statement ok!";
        if (ovrimos_fetch_row($res, "First")) {
            $table_id = ovrimos_result($res, 1);
            $table_name = ovrimos_result($res, 2);
            echo "table_id=" . $table_id . ", table_name=" . $table_name . "\n";
            if (ovrimos_fetch_row($res, "Next")) {
                $table_id = ovrimos_result($res, "table_id");
                $table_name = ovrimos_result($res, "table_name");
                echo "table_id=" . $table_id . ", table_name=" . $table_name . "\n";
            } else {
                echo "Next: error\n";
            }
        } else {
            echo "First: error\n";
        }
        ovrimos_free_result($res);
    }
    ovrimos_close($conn);
}
?>
Isto obtém uma linha e mostra o resultado.

ovrimos_fetch_into
ovrimos_field_len
Funções do Ovrimos SQL


Retorna o tamanho da coluna

ovrimos_fetch_row
ovrimos_field_name
Funções do Ovrimos SQL
PHP Manual

ovrimos_field_len

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_field_len — Retorna o tamanho da coluna

Descrição

int ovrimos_field_len ( int $result_id , int $field_number )

Obtém o tamanho da coluna especificada.

Parâmetros

result_id

Um identificador de resultado, retornado por ovrimos_execute() ou ovrimos_exec().

field_number

O número do campo. Inicia em 1.

Valor Retornado

Retorna o tamanho como um inteiro, ou FALSE em erro.

Veja Também

  • ovrimos_field_name() - Retorna o nome da coluna
  • ovrimos_field_num() - Retorna o índice da coluna (baseado em 1)
  • ovrimos_field_type() - Retorna o tipo da coluna

ovrimos_fetch_row
ovrimos_field_name
Funções do Ovrimos SQL


Retorna o nome da coluna

ovrimos_field_len
ovrimos_field_num
Funções do Ovrimos SQL
PHP Manual

ovrimos_field_name

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_field_name — Retorna o nome da coluna

Descrição

string ovrimos_field_name ( int $result_id , int $field_number )

Retorna o nome da coluna no índice especificado.

Parâmetros

result_id

Um identificador de resultado, retornado por ovrimos_execute() ou ovrimos_exec().

field_number

O número do campo. Inicia em 1.

Valor Retornado

Retorna o nome do campo como uma string, ou FALSE em erro.

Veja Também

  • ovrimos_field_len() - Retorna o tamanho da coluna
  • ovrimos_field_num() - Retorna o índice da coluna (baseado em 1)
  • ovrimos_field_type() - Retorna o tipo da coluna

ovrimos_field_len
ovrimos_field_num
Funções do Ovrimos SQL


Retorna o índice da coluna (baseado em 1)

ovrimos_field_name
ovrimos_field_type
Funções do Ovrimos SQL
PHP Manual

ovrimos_field_num

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_field_num — Retorna o índice da coluna (baseado em 1)

Descrição

int ovrimos_field_num ( int $result_id , string $field_name )

ovrimos_field_num() retorna o índice (baseado em 1) da coluna especificada por field_name, ou FALSE.

ovrimos_field_name
ovrimos_field_type
Funções do Ovrimos SQL


Retorna o tipo da coluna

ovrimos_field_num
ovrimos_free_result
Funções do Ovrimos SQL
PHP Manual

ovrimos_field_type

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_field_type — Retorna o tipo da coluna

Descrição

int ovrimos_field_type ( int $result_id , int $field_number )

Retorna o tipo da coluna.

Parâmetros

result_id

O identificador de resultado, retornado por ovrimos_execute() ou ovrimos_exec().

field_number

Um índice.

Valor Retornado

Retorna o tipo do campo como um inteiro, ou FALSE em erro.

Veja Também

  • ovrimos_field_len() - Retorna o tamanho da coluna
  • ovrimos_field_name() - Retorna o nome da coluna
  • ovrimos_field_num() - Retorna o índice da coluna (baseado em 1)

ovrimos_field_num
ovrimos_free_result
Funções do Ovrimos SQL


Libera o result_id especificado

ovrimos_field_type
ovrimos_longreadlen
Funções do Ovrimos SQL
PHP Manual

ovrimos_free_result

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_free_result — Libera o result_id especificado

Descrição

bool ovrimos_free_result ( int $result_id )

Libera o especificado identificador de resultado.

Parâmetros

result_id

Um identificador de resultado, retornado pela ovrimos_execute() ou ovrimos_exec().

Valor Retornado

Retorna TRUE.

ovrimos_field_type
ovrimos_longreadlen
Funções do Ovrimos SQL


Especifica quantos bytes são obtidos dos tipos de dados long

ovrimos_free_result
ovrimos_num_fields
Funções do Ovrimos SQL
PHP Manual

ovrimos_longreadlen

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_longreadlen — Especifica quantos bytes são obtidos dos tipos de dados long

Descrição

bool ovrimos_longreadlen ( int $result_id , int $length )

Especifica quantos bytes serão obtidos dos tipos de dados long (long varchar e long varbinary).

Parâmetros

result_id

Um identificador de resultado, retornado por ovrimos_execute() ou ovrimos_exec().

length

O número de bytes para receber. O padrão é zero.

Valor Retornado

Retorna TRUE.

ovrimos_free_result
ovrimos_num_fields
Funções do Ovrimos SQL


Retorna o número de colunas

ovrimos_longreadlen
ovrimos_num_rows
Funções do Ovrimos SQL
PHP Manual

ovrimos_num_fields

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_num_fields — Retorna o número de colunas

Descrição

int ovrimos_num_fields ( int $result_id )

Retorna o número de colunas no especificado identificador de resultado.

Parâmetros

result_id

Um identificador de resultado, retornado pela ovrimos_execute() ou ovrimos_exec().

Valor Retornado

Retorna o número de colunas como um inteiro, ou FALSE em erro.

Veja Também

  • ovrimos_num_rows() - Retorna o número de linhas afetadas por uma operação update

ovrimos_longreadlen
ovrimos_num_rows
Funções do Ovrimos SQL


Retorna o número de linhas afetadas por uma operação update

ovrimos_num_fields
ovrimos_prepare
Funções do Ovrimos SQL
PHP Manual

ovrimos_num_rows

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_num_rows — Retorna o número de linhas afetadas por uma operação update

Descrição

int ovrimos_num_rows ( int $result_id )

Obtém o número de linhas afetadas por uma operação de atualização.

Parâmetros

result_id

Um identificador de resultado, retornado pela ovrimos_execute() ou ovrimos_exec().

Valor Retornado

Retorna o número de linhas como um inteiro, ou FALSE em erro.

Veja Também

  • ovrimos_num_fields() - Retorna o número de colunas

ovrimos_num_fields
ovrimos_prepare
Funções do Ovrimos SQL


Prepara um comando SQL

ovrimos_num_rows
ovrimos_result_all
Funções do Ovrimos SQL
PHP Manual

ovrimos_prepare

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_prepare — Prepara um comando SQL

Descrição

int ovrimos_prepare ( int $connection_id , string $query )

Prepara um comando SQL.

Parâmetros

connection_id

O identificador de conexão do Ovrimos, retornado pela ovrimos_connect().

query

O comando SQL.

Valor Retornado

Retorna um identificador de resultado em sucesso, ou FALSE em erro.

Exemplos

Exemplo #1 Exemplo da ovrimos_prepare()

<?php
$conn=ovrimos_connect("db_host", "8001", "admin", "password");
if ($conn!=0) {
    echo "Connection ok!";
    // Prepare the statement
    $res=ovrimos_prepare($conn, "select table_id, table_name
                                  from sys.tables where table_id=1");
    if ($res != 0) {
        echo "Prepare ok!";
        // Execute the prepared statement
        if (ovrimos_execute($res)) {
            echo "Execute ok!\n";
            ovrimos_result_all($res);
        } else {
            echo "Execute not ok!";
        }
        ovrimos_free_result($res);
    } else {
        echo "Prepare not ok!\n";
    }
    ovrimos_close($conn);
}
?>

ovrimos_num_rows
ovrimos_result_all
Funções do Ovrimos SQL


Mostra todo o conjunto de resultados como uma tabela HTML

ovrimos_prepare
ovrimos_result
Funções do Ovrimos SQL
PHP Manual

ovrimos_result_all

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_result_all — Mostra todo o conjunto de resultados como uma tabela HTML

Descrição

int ovrimos_result_all ( int $result_id [, string $format ] )

Mostra todo o conjunto de resultados como uma tabela HTML.

Parâmetros

result_id

Um identificador de resultado, retornado por ovrimos_execute() ou ovrimos_exec().

format

Opcionais atributos HTML para o gerado elemento da tabela.

Valor Retornado

Retorna o número de linhas em uma tabela gerada.

Exemplos

Isto executará um comando SQL e imprimirá o resultado em uma tabela HTML.

Exemplo #1 Prepara um comando, executa e mostra o resultado

<?php
$conn = ovrimos_connect("db_host", "8001", "admin", "password");
if ($conn != 0) {
    echo "Connection ok!";
    $res = ovrimos_prepare($conn, "select table_id, table_name
                                    from sys.tables where table_id = 7");
    if ($res != 0) {
        echo "Prepare ok!";
        if (ovrimos_execute($res, array(3))) {
            echo "Execute ok!\n";
            ovrimos_result_all($res);
        } else {
            echo "Execute not ok!";
        }
        ovrimos_free_result($res);
    } else {
        echo "Prepare not ok!\n";
    }
    ovrimos_close($conn);
}
?>

Exemplo #2 ovrimos_result_all() com meta-informação

<?php
$conn = ovrimos_connect("db_host", "8001", "admin", "password");
if ($conn != 0) {
    echo "Connection ok!";
    $res = ovrimos_exec($conn, "select table_id, table_name
                                 from sys.tables where table_id = 1");
    if ($res != 0) {
        echo "Statement ok! cursor=" . ovrimos_cursor($res) . "\n";
        $colnb = ovrimos_num_fields($res);
        echo "Output columns=" . $colnb . "\n";
        for ($i=1; $i <= $colnb; $i++) {
            $name = ovrimos_field_name($res, $i);
            $type = ovrimos_field_type($res, $i);
            $len = ovrimos_field_len($res, $i);
            echo "Column " . $i . " name=" . $name . " type=" . $type . " len=" . $len . "\n";
        }
        ovrimos_result_all($res);
        ovrimos_free_result($res);
    }
    ovrimos_close($conn);
}
?>

ovrimos_prepare
ovrimos_result
Funções do Ovrimos SQL


Obtém a coluna da saída

ovrimos_result_all
ovrimos_rollback
Funções do Ovrimos SQL
PHP Manual

ovrimos_result

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_result — Obtém a coluna da saída

Descrição

string ovrimos_result ( int $result_id , mixed $field )

Obtém a saída da coluna especificada por field.

Parâmetros

result_id

Um identificador de resultado, retornado pela ovrimos_execute() ou ovrimos_exec().

field

Uma string com o nome do campo ou um índice.

Valor Retornado

Retorna a coluna como uma string, FALSE em falha.

ovrimos_result_all
ovrimos_rollback
Funções do Ovrimos SQL


Desfaz a transação

ovrimos_result
Paradox
Funções do Ovrimos SQL
PHP Manual

ovrimos_rollback

(PHP 4 >= 4.0.3, PHP 5 <= 5.0.5)

ovrimos_rollback — Desfaz a transação

Descrição

bool ovrimos_rollback ( int $connection_id )

Desfaz a transação.

Parâmetros

connection_id

O identificador de conexão do Ovrimos, retornado pela ovrimos_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ovrimos_commit() - Grava a transação

ovrimos_result
Paradox
Funções do Ovrimos SQL


Paradox File Access

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Paradox Funções
    • px_close — Closes a paradox database
    • px_create_fp — Create a new paradox database
    • px_date2string — Converts a date into a string.
    • px_delete_record — Deletes record from paradox database
    • px_delete — Deletes resource of paradox database
    • px_get_field — Returns the specification of a single field
    • px_get_info — Return lots of information about a paradox file
    • px_get_parameter — Gets a parameter
    • px_get_record — Returns record of paradox database
    • px_get_schema — Returns the database schema
    • px_get_value — Gets a value
    • px_insert_record — Inserts record into paradox database
    • px_new — Create a new paradox object
    • px_numfields — Returns number of fields in a database
    • px_numrecords — Returns number of records in a database
    • px_open_fp — Open paradox database
    • px_put_record — Stores record into paradox database
    • px_retrieve_record — Returns record of paradox database
    • px_set_blob_file — Sets the file where blobs are read from
    • px_set_parameter — Sets a parameter
    • px_set_tablename — Sets the name of a table (deprecated)
    • px_set_targetencoding — Sets the encoding for character fields (deprecated)
    • px_set_value — Sets a value
    • px_timestamp2string — Converts the timestamp into a string.
    • px_update_record — Updates record in paradox database
ovrimos_rollback
Introdução
Vendor Specific Database Extensions


Introdução

This module allows to read and write Paradox databases, primary index files and blob files. Write support has been proven to be quite reliable, though due to lack of documentation the produced files may not in any case be readable by other applications. Encrypted databases can be read without specifying a password if pxlib >= 0.5.0 is used.

Nota:

This module is also in development and may change, though major changes to the API are not expected.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Paradox
Instalação/Configuração
Paradox


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Paradox


Dependências

You need at least PHP 5.0.0 and pxlib >= 0.4.4 for the basic set of functions. Some newer functions are only available with pxlib >= 0.6.0. Reading and writing of encrypted databases requires at least pxlib >= 0.5.0. The paradox library (pxlib) is available at » http://pxlib.sourceforge.net.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/paradox

Make sure you have pxlib installed before. If you install pxlib from an rpm or debian package, do not forget to install the development package as well.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

px_new() creates a new Paradox object required by all Paradox functions.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The following two tables lists all constants defined by the paradox extension.

Contants for field types
Name | Meaning
PX_FIELD_ALPHA | Character data with fixed length
PX_FIELD_DATE | Date, number of days since 1.1.0000
PX_FIELD_SHORT | Short integer (2 Bytes)
PX_FIELD_LONG | Long integer (4 Bytes)
PX_FIELD_CURRENCY | same as PX_FIELD_NUMBER
PX_FIELD_NUMBER | Double
PX_FIELD_LOGICAL | Boolean
PX_FIELD_MEMOBLOB | Binary large object
PX_FIELD_BLOB | Binary large object (not supported)
PX_FIELD_FMTMEMOBLOB | Binary large object
PX_FIELD_OLE | OLE object (basically a blob, not supported)
PX_FIELD_GRAPHIC | Graphic (basically a blob, not supported)
PX_FIELD_TIME | time, number of milli seconds since midnight
PX_FIELD_TIMESTAMP | timestamp, number of milli seconds since 1.1.0000
PX_FIELD_AUTOINC | Auto incrementing interger (like PX_FIELD_LONG)
PX_FIELD_BCD | Decimal number stored in bcd format (not supported)
PX_FIELD_BYTES | Array of Bytes with not more than 255 bytes (not supported)
PX_KEYTOLOWER | Turn all field names into lower case
PX_KEYTOUPPER | Turn all field names into upper case
Contants for file types
Name | Meaning
PX_FILE_INDEX_DB | Indexed database
PX_FILE_PRIM_INDEX | Primary index
PX_FILE_NON_INDEX_DB | None indexed database
PX_FILE_NON_INC_SEC_INDEX | None incremental secondary index
PX_FILE_SEC_INDEX | Secondary index
PX_FILE_INC_SEC_INDEX | Incremental secondary index
PX_FILE_NON_INC_SEC_INDEX_G | Non incremental secondary index
PX_FILE_SEC_INDEX_G | Secondary index
PX_FILE_INC_SEC_INDEX_G | Non incremental secondary index

Tipos Resource
Paradox Funções
Paradox


Paradox Funções

Object oriented API

The paradox extension provides also an object oriented API. It consists of only one class called paradox_db. Its methods only differ from the functions in its name and of course the missing first parameter. The following table will list all methods and its equivalent functions.

Methods of class paradox_db
Name of method | Equivalent function
Constructor | px_new()
Destructor | px_delete()
open_fp() | px_open_fp()
create_fp() | px_create_fp()
close() | px_close()
numrecords() | px_numrecords()
numfields() | px_numfields()
get_record() | px_get_record()
put_record() | px_put_record()
retrieve_record() | px_retrieve_record()
delete_record() | px_delete_record()
insert_record() | px_insert_record()
update_record() | px_update_record()
get_field() | px_get_field()
get_schema() | px_get_schema()
get_info() | px_get_info()
set_parameter() | px_set_parameter()
get_parameter() | px_get_parameter()
set_value() | px_set_value()
get_value() | px_get_value()
get_info() | px_get_info()
set_targetencoding() | px_set_targetencoding()
set_tablename() | px_set_tablename()
set_blob_file() | px_set_blob_file()
date2string() | px_date2string()
timestamp2string() | px_timestamp2string()

Índice

  • px_close — Closes a paradox database
  • px_create_fp — Create a new paradox database
  • px_date2string — Converts a date into a string.
  • px_delete_record — Deletes record from paradox database
  • px_delete — Deletes resource of paradox database
  • px_get_field — Returns the specification of a single field
  • px_get_info — Return lots of information about a paradox file
  • px_get_parameter — Gets a parameter
  • px_get_record — Returns record of paradox database
  • px_get_schema — Returns the database schema
  • px_get_value — Gets a value
  • px_insert_record — Inserts record into paradox database
  • px_new — Create a new paradox object
  • px_numfields — Returns number of fields in a database
  • px_numrecords — Returns number of records in a database
  • px_open_fp — Open paradox database
  • px_put_record — Stores record into paradox database
  • px_retrieve_record — Returns record of paradox database
  • px_set_blob_file — Sets the file where blobs are read from
  • px_set_parameter — Sets a parameter
  • px_set_tablename — Sets the name of a table (deprecated)
  • px_set_targetencoding — Sets the encoding for character fields (deprecated)
  • px_set_value — Sets a value
  • px_timestamp2string — Converts the timestamp into a string.
  • px_update_record — Updates record in paradox database
Constantes pré-definidas
px_close
Paradox


Closes a paradox database

Paradox Funções
px_create_fp
Paradox Funções
PHP Manual

px_close

(PECL paradox >= 1.0.0)

px_close — Closes a paradox database

Descrição

bool px_close ( resource $pxdoc )

Closes the paradox database. This function will not close the file. You will have to call fclose() afterwards.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • px_open_fp() - Open paradox database
  • The example at px_new() - Create a new paradox object

Paradox Funções
px_create_fp
Paradox Funções


Create a new paradox database

px_close
px_date2string
Paradox Funções
PHP Manual

px_create_fp

(PECL paradox >= 1.0.0)

px_create_fp — Create a new paradox database

Descrição

bool px_create_fp ( resource $pxdoc , resource $file , array $fielddesc )

Create a new paradox database file. The actual file has to be opened before with fopen(). Make sure the file is writable.

Nota:

Calling this functions issues a warning about an empty tablename which can be safely ignored. Just set the tablename afterwards with px_set_parameter().

Nota:

This function is highly experimental, due to insufficient documentation of the paradox file format. Database files created with this function can be opened by px_open_fp() and has been successfully opened by the Paradox software, but your milage may vary.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

file

File handle as returned by fopen().

fielddesc

fielddesc is an array containing one element for each field specification. A field specification is an array itself with either two or three elements.The first element is always a string value used as the name of the field. It may not be larger than ten characters. The second element contains the field type which is one of the constants listed in the table Constants for field types. In the case of a character field or bcd field, you will have to provide a third element specifying the length respectively the precesion of the field. If your field specification contains blob fields, you will have to make sure to either make the field large enough for all field values to fit or specify a blob file with px_set_blob_file() for storing the blobs. If this is not done the field data is truncated.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Creating a Paradox database with two fields

<?php
if(!$pxdoc = px_new()) {
  /* Error handling */
}
$fp = fopen("test.db", "w+");
$fields = array(array("col1", "S"), array("col2", "I"));
if(!px_create_fp($pxdoc, $fp, $fields)) {
  /* Error handling */
}
px_set_parameter($pxdoc, "tablename", "testtable");
for($i=-50; $i<50; $i++) {
  $rec = array($i, -$i);
  px_put_record($pxdoc, $rec);
}
px_close($pxdoc);
px_delete($pxdoc);
fclose($fp);
?>

Veja Também

  • px_new() - Create a new paradox object
  • px_put_record() - Stores record into paradox database
  • fopen() - Abre um arquivo ou URL

px_close
px_date2string
Paradox Funções


Converts a date into a string.

px_create_fp
px_delete_record
Paradox Funções
PHP Manual

px_date2string

(PECL paradox >= 1.4.0)

px_date2string — Converts a date into a string.

Descrição

string px_date2string ( resource $pxdoc , int $value , string $format )

Turns a date as it stored in the paradox file into human readable format. Paradox dates are the number of days since 1.1.0000. This function is just for convenience. It can be easily replaced by some math and the calendar functions as demonstrated in the example below.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

value

Value as stored in paradox database field of type PX_FIELD_DATE.

format

String format similar to the format used by date(). The placeholders support by this function is a subset of those supported by date() (Y, y, m, n, d, j, L).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Turn a paradox date into a human readable form

<?php
$px = px_new();

/* make up a date as it could be stored in */
/* a date field of a paradox db. */
/* 700000 days since 1.1.0000. */
$days = 700000;

/* Use the calendar functions to print a */
/* human readable format of the date */
echo jdtogregorian($days+1721425)."\n";
/* px_date2string() outputs the same */
echo px_date2string($px, $days, "n/d/Y")."\n";

px_delete($px);
?>

O exemplo acima irá imprimir:

7/15/1917
7/15/1917

Veja Também

  • px_timestamp2string() - Converts the timestamp into a string.
  • jdtogregorian() - Converte uma data no formato "Julian Day Count" para o formato Gregoriano

px_create_fp
px_delete_record
Paradox Funções


Deletes record from paradox database

px_date2string
px_delete
Paradox Funções
PHP Manual

px_delete_record

(PECL paradox >= 1.4.0)

px_delete_record — Deletes record from paradox database

Descrição

bool px_delete_record ( resource $pxdoc , int $num )

This function deletes a record from the database. It does not free the space in the database file but just marks it as deleted. Inserting a new record afterwards will reuse the space.

Nota:

This function is only available if pxlib >= 0.6.0 is used.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

num

The record number is an artificial number counting records in the order as they are stored in the database. The first record has number 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

px_date2string
px_delete
Paradox Funções


Deletes resource of paradox database

px_delete_record
px_get_field
Paradox Funções
PHP Manual

px_delete

(PECL paradox >= 1.0.0)

px_delete — Deletes resource of paradox database

Descrição

bool px_delete ( resource $pxdoc )

Deletes the resource of the paradox file and frees all memory.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

px_delete_record
px_get_field
Paradox Funções


Returns the specification of a single field

px_delete
px_get_info
Paradox Funções
PHP Manual

px_get_field

(PECL paradox >= 1.0.0)

px_get_field — Returns the specification of a single field

Descrição

array px_get_field ( resource $pxdoc , int $fieldno )

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

fieldno

Number of the field. The first field has number 0. Specifying a field number less than 0 and greater or equal the number of fields will trigger an error.

Valor Retornado

Returns the specification of the fieldno 'th database field as an associated array. The array contains three fields named name, type, and size.

px_delete
px_get_info
Paradox Funções


Return lots of information about a paradox file

px_get_field
px_get_parameter
Paradox Funções
PHP Manual

px_get_info

(PECL paradox >= 1.0.0)

px_get_info — Return lots of information about a paradox file

Descrição

array px_get_info ( resource $pxdoc )

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

Valor Retornado

Returns an associated array with lots of information about a paradox file. This array is likely to be extended in the future.

fileversion

Version of file multiplied by 10, e.g. 70.

tablename

Name of table as stored in the file. If the database was created by pxlib, then this will be the name of the file without the extension.

numrecords

Number of records in this table.

numfields

Number of fields in this table.

headersize

Number of bytes used for the header. This is usually 0x800.

recordsize

Number of bytes used for each record. This is the sum of all field sizes (available since version 1.4.2).

maxtablesize

This value multiplied by 0x400 is the size of a data block in bytes. The maximum number of records in a datablock is the integer part of (maxtablesize * 0x400 - 8) / recordsize.

numdatablocks

The number of data blocks in the file. Each data block contains a certain number of records which depends on the record size and the data block size (maxtablesize). Data blocks may not necessarily be completely filled.

numindexfields

Number of fields used for the primary index. The fields do always start with field number 1.

codepage

The DOS codepage which was used for encoding fields with character data. If the target encoding is not set with px_set_targetencoding() this will be the encoding for character fields when records are being accessed with px_get_record() or px_retrieve_record().

Veja Também

  • px_numfields() - Returns number of fields in a database
  • px_numrecords() - Returns number of records in a database

px_get_field
px_get_parameter
Paradox Funções


Gets a parameter

px_get_info
px_get_record
Paradox Funções
PHP Manual

px_get_parameter

(PECL paradox >= 1.1.0)

px_get_parameter — Gets a parameter

Descrição

string px_get_parameter ( resource $pxdoc , string $name )

Gets various parameters.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

name

The name can be one of the following:

tablename

The name of the table as it will be stored in the database header.

targetencoding

The encoding for the output. Data which is being read from character fields with px_get_record() or px_retrieve_record() is recoded into the targetencoding. If it is not set, then the data will be delivered as stored in the database file.

inputencoding

The encoding of the input data which is to be stored into the database. When storing data of character fields in the database, the data is expected to be delivered in this encoding.

Valor Retornado

Returns the value of the parameter or FALSE on failure.

px_get_info
px_get_record
Paradox Funções


Returns record of paradox database

px_get_parameter
px_get_schema
Paradox Funções
PHP Manual

px_get_record

(PECL paradox >= 1.0.0)

px_get_record — Returns record of paradox database

Descrição

array px_get_record ( resource $pxdoc , int $num [, int $mode = 0 ] )

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

num

The record number is an artificial number counting records in the order as they are stored in the database. The first record has number 0.

mode

The optional mode can be PX_KEYTOLOWER or PX_KEYTOUPPER in order to convert the keys of the returned array into lower or upper case. If mode is not passed or is 0, then the key will be exactly like the field name. The element values will contain the field values. NULL values will be retained and are different from 0.0, 0 or the empty string. Fields of type PX_FIELD_TIME will be returned as an integer counting the number of milliseconds starting at midnight. A timestamp (PX_FIELD_TIMESTAMP) and date (PX_FIELD_DATE) are floating point respectively int values counting milliseconds respectively days starting at the beginning of julian calendar. Use the functions px-timestamp2string() and px-date2string() to convert them into a character representation.

Valor Retornado

Returns the num'th record from the paradox database. The record is returned as an associated array with its keys being the field names.

Veja Também

  • px_retrieve_record() - Returns record of paradox database

px_get_parameter
px_get_schema
Paradox Funções


Returns the database schema

px_get_record
px_get_value
Paradox Funções
PHP Manual

px_get_schema

(PECL paradox >= 1.0.0)

px_get_schema — Returns the database schema

Descrição

array px_get_schema ( resource $pxdoc [, int $mode = 0 ] )

px_get_schema() returns the database schema.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

mode

If the optional mode is PX_KEYTOLOWER or PX_KEYTOUPPER the keys of the returned array will be converted to lower or upper case. If mode is 0 or not passed at all, then the key name will be identical to the field name.

Valor Retornado

Returns the schema of a database file as an associated array. The key name is equal to the field name. Each array element is itself an associated array containing the two fields type and size. type is one of the constants in table Constants for field types. size is the number of bytes this field consumes in the record. The total of all field sizes is equal to the record size as it can be retrieved with px-get-info().

px_get_record
px_get_value
Paradox Funções


Gets a value

px_get_schema
px_insert_record
Paradox Funções
PHP Manual

px_get_value

(PECL paradox >= 1.1.0)

px_get_value — Gets a value

Descrição

float px_get_value ( resource $pxdoc , string $name )

Gets various values.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

name

name can be one of the following.

numprimkeys

The number of primary keys. Paradox databases always use the first numprimkeys fields for the primary index.

Valor Retornado

Returns the value of the parameter or FALSE on failure.

px_get_schema
px_insert_record
Paradox Funções


Inserts record into paradox database

px_get_value
px_new
Paradox Funções
PHP Manual

px_insert_record

(PECL paradox >= 1.4.0)

px_insert_record — Inserts record into paradox database

Descrição

int px_insert_record ( resource $pxdoc , array $data )

Inserts a new record into the database. The record is not necessarily inserted at the end of the database, but may be inserted at any position depending on where the first free slot is found.

The record data is passed as an array of field values. The elements in the array must correspond to the fields in the database. If the array has less elements than fields in the database, the remaining fields will be set to null.

Most field values can be passed as its equivalent php type e.g. a long value is used for fields of type PX_FIELD_LONG, PX_FIELD_SHORT and PX_FIELD_AUTOINC, a double values is used for fields of type PX_FIELD_CURRENCY and PX_FIELD_NUMBER. Field values for blob and alpha fields are passed as strings.

Fields of type PX_FIELD_TIME and PX_FIELD_DATE both require a long value. In the first case this is the number of milliseconds since midnight. In the second case this is the number of days since 1.1.0000. Below there are two examples to convert the current date or timestamp into a value suitable for one of paradox's date/time fields.

Nota:

This function is only available if pxlib >= 0.6.0 is used.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

data

Associated or indexed array containing the field values as e.g. returned by px_retrieve_record().

Valor Retornado

Returns FALSE on failure or the record number in case of success.

Exemplos

Exemplo #1 Set the date/time fields in a paradox database to the current date/time

<?php
$px = px_new();
$fp = fopen("test.db", "w+");
px_create_fp($px, $fp, array(array("timestamp", "@"), array("time", "T"), array("date", "D")));

$curdate = getdate();
$jd = gregoriantojd($curdate["mon"], $curdate["mday"], $curdate["year"]);
$days = $jd - 1721425; /* Number of days between 1.1.4714 b.c. and 1.1.0000 */
$secs = $curdate["hours"]*3600 + $curdate["minutes"]*60 + $curdate["seconds"];
px_insert_record($px, array($days*86400000.0 + $secs*1000.0, $secs*1000.0, $days));

$curtimestamp = microtime(true);
$days = (int) ($curtimestamp/86400);
$secs = $curtimestamp - ($days * 86400.0);
$days += 2440588; /* Number of days between 1.1.4714 b.c. and 1.1.1970 */
$days -= 1721425; /* Number of days between 1.1.4714 b.c. and 1.1.0000 */
px_insert_record($px, array($days*86400000.0 + $secs*1000.0, $secs*1000.0, $days));
for($i=0; $i<2; $i++) {
    $rec = px_retrieve_record($px, $i);
    echo px_timestamp2string($px, $rec["timestamp"], "n/d/Y H:i:s")."\n";
    echo px_date2string($px, $rec["date"], "n/d/Y")."\n";
}
px_close($px);
px_delete($px);
?>

O exemplo acima irá imprimir:

2/21/2006 21:42:30
2/21/2006
2/21/2006 20:42:30
2/21/2006

The Julian day count as passed to jdtogregorian() has a different base of 1.1.4714 b.c. and must therefore be calculated by adding 1721425 to the day count used in the paradox file. Turning the day count into a timestamp is easily done by multiplying with 86400000.0 to obtain milli seconds.

Veja Também

px_update_record() - Updates record in paradox database

px_get_value
px_new
Paradox Funções


Create a new paradox object

px_insert_record
px_numfields
Paradox Funções
PHP Manual

px_new

(PECL paradox >= 1.0.0)

px_new — Create a new paradox object

Descrição

resource px_new ( void )

Create a new paradox object. You will have to call this function before any further functions. px_new() does not create any file on the disk, it just creates an instance of a paradox object. This function must not be called if the object oriented interface is used. Use new paradox_db() instead.

Valor Retornado

Returns FALSE on failure.

Exemplos

Exemplo #1 Opening a Paradox database

<?php
if(!$pxdoc = px_new()) {
  /* Error handling */
}
$fp = fopen("test.db", "r");
if(!px_open_fp($pxdoc, $fp)) {
  /* Error handling */
}
// ...
px_close($pxdoc);
px_delete($pxdoc);
fclose($fp);
?>

If you prefer the object oriented API, then the above example will look like the following.

Exemplo #2 Opening a Paradox database

<?php
$fp = fopen("test.db", "r");
$pxdoc = new paradox_db();
if(!$pxdoc->open_fp($fp)) {
  /* Error handling */
}
// ...
$pxdoc->close();
fclose($fp);
?>

Veja Também

  • px_delete() - Deletes resource of paradox database
  • px_open_fp() - Open paradox database

px_insert_record
px_numfields
Paradox Funções


Returns number of fields in a database

px_new
px_numrecords
Paradox Funções
PHP Manual

px_numfields

(PECL paradox >= 1.0.0)

px_numfields — Returns number of fields in a database

Descrição

int px_numfields ( resource $pxdoc )

Get the number of fields in a database file.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

Valor Retornado

Returns the number of fields in a database file. The return value of this function is identical to the element numfields in the array returned by px_get_info().

px_new
px_numrecords
Paradox Funções


Returns number of records in a database

px_numfields
px_open_fp
Paradox Funções
PHP Manual

px_numrecords

(PECL paradox >= 1.0.0)

px_numrecords — Returns number of records in a database

Descrição

int px_numrecords ( resource $pxdoc )

Get the number of records in a database file.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

Valor Retornado

Returns the number of records in a database file. The return value of this function is identical to the element numrecords in the array returned by px_get_info().

px_numfields
px_open_fp
Paradox Funções


Open paradox database

px_numrecords
px_put_record
Paradox Funções
PHP Manual

px_open_fp

(PECL paradox >= 1.0.0)

px_open_fp — Open paradox database

Descrição

bool px_open_fp ( resource $pxdoc , resource $file )

Open an existing paradox database file. The actual file has to be opened before with fopen(). This function can also be used to open primary index files and tread them like a paradox database. This is supported for those who would like to investigate a primary index. It cannot be used to accelerate access to a database file.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

file

file is the return value from fopen() with the actual database file as parameter. Make sure the database is writable if you plan to update or insert records.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fopen() - Abre um arquivo ou URL
  • The example at px_new() - Create a new paradox object

px_numrecords
px_put_record
Paradox Funções


Stores record into paradox database

px_open_fp
px_retrieve_record
Paradox Funções
PHP Manual

px_put_record

(PECL paradox >= 1.0.0)

px_put_record — Stores record into paradox database

Descrição

bool px_put_record ( resource $pxdoc , array $record [, int $recpos = -1 ] )

Stores a record into a paradox database. The record is always added at the end of the database, regardless of any free slots. Use px_insert_record() to add a new record into the first free slot found in the database.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

record

Associated or indexed array containing the field values as e.g. returned by px_retrieve_record().

recpos

This optional parameter may be used to specify a record number greater than the current number of records in the database. The function will add as many empty records as needed. There is hardly any need for this parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

px_open_fp
px_retrieve_record
Paradox Funções


Returns record of paradox database

px_put_record
px_set_blob_file
Paradox Funções
PHP Manual

px_retrieve_record

(PECL paradox >= 1.4.0)

px_retrieve_record — Returns record of paradox database

Descrição

array px_retrieve_record ( resource $pxdoc , int $num [, int $mode = 0 ] )

This function is very similar to px_get_record() but uses internally a different approach to retrieve the data. It relies on pxlib for reading each single field value, which usually results in support for more field types.

Nota:

This function is only available if pxlib >= 0.6.0 is used.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

num

The record number is an artificial number counting records in the order as they are stored in the database. The first record has number 0.

mode

The optional mode can be PX_KEYTOLOWER or PX_KEYTOUPPER in order to convert the keys into lower or upper case. If mode is not passed or is 0, then the key will be exactly like the field name. The element values will contain the field values. NULL values will be retained and are different from 0.0, 0 or the empty string. Fields of type PX_FIELD_TIME will be returned as an integer counting the number of milliseconds starting at midnight. A timestamp is a floating point value also counting milliseconds starting at the beginning of julian calendar.

Valor Retornado

Returns the num'th record from the paradox database. The record is returned as an associated array with its keys being the field names.

Veja Também

  • px_get_record() - Returns record of paradox database

px_put_record
px_set_blob_file
Paradox Funções


Sets the file where blobs are read from

px_retrieve_record
px_set_parameter
Paradox Funções
PHP Manual

px_set_blob_file

(PECL paradox >= 1.3.0)

px_set_blob_file — Sets the file where blobs are read from

Descrição

bool px_set_blob_file ( resource $pxdoc , string $filename )

Sets the name of the file where blobs are going to be read from or written into. Without calling this function, px_get_record() or px_retrieve_record() will only return data in blob fields if the data is part of the record and not stored in the blob file. Blob data is stored in the record if it is small enough to fit in the size of the blob field.

Calling px_put_record(),
px_insert_record(), or
px_update_record() without calling
px_set_blob_file() will result in truncated blob fields
unless the data fits into the database file.

Calling this function twice will close the first blob file and open the new one.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

filename

The name of the file. Its extension should be .MB.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

px_retrieve_record
px_set_parameter
Paradox Funções


Sets a parameter

px_set_blob_file
px_set_tablename
Paradox Funções
PHP Manual

px_set_parameter

(PECL paradox >= 1.1.0)

px_set_parameter — Sets a parameter

Descrição

bool px_set_parameter ( resource $pxdoc , string $name , string $value )

Sets various parameters.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

name

Depending on the parameter you want to set, name can be one of the following.

tablename

The name of the table as it will be stored in the database header.

targetencoding

The encoding for the output. Data which is being read from character fields is recoded into the targetencoding.

inputencoding

The encoding of the input data which is to be stored into the database.

value

The value of parameter to set. For inputencoding and targetencoding this must be the name of the encoding as understood by iconv or recode, e.g. iso-8859-1, utf-8, cp850.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • px_get_info() - Return lots of information about a paradox file to determine the DOS code page.

px_set_blob_file
px_set_tablename
Paradox Funções


Sets the name of a table (deprecated)

px_set_parameter
px_set_targetencoding
Paradox Funções
PHP Manual

px_set_tablename

(PECL paradox >= 1.0.0)

px_set_tablename — Sets the name of a table (deprecated)

Descrição

void px_set_tablename ( resource $pxdoc , string $name )

Sets the table name of a paradox database, which was created with px_create_fp(). This function is deprecated use px_set_parameter() instead.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

tablename

The name of the table. If it is not set explicitly it will be set to the name of the database file.

Valor Retornado

Returns NULL on success or FALSE on failure.

Veja Também

px_set_parameter() - Sets a parameter

px_set_parameter
px_set_targetencoding
Paradox Funções


Sets the encoding for character fields (deprecated)

px_set_tablename
px_set_value
Paradox Funções
PHP Manual

px_set_targetencoding

(PECL paradox >= 1.0.0)

px_set_targetencoding — Sets the encoding for character fields (deprecated)

Descrição

bool px_set_targetencoding ( resource $pxdoc , string $encoding )

Set the encoding for data retrieved from a character field. All character fields will be recoded to the encoding set by this function. If the encoding is not set, the character data will be returned in the DOS code page encoding as specified in the database file. The encoding can be any string identifier known to iconv or recode. On Unix systems run iconv -l for a list of available encodings.

This function is deprecated and should be replaced by calling px_set_parameter().

See also px_get_info() to determine the DOS code page as stored in the database file.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

encoding

The encoding for the output. Data which is being read from character fields is recoded into the targetencoding.

Valor Retornado

Returns FALSE if the encoding could not be set, e.g. the encoding is unknown, or pxlib does not support recoding at all. In the second case a warning will be issued.

Veja Também

px_set_parameter() - Sets a parameter

px_set_tablename
px_set_value
Paradox Funções


Sets a value

px_set_targetencoding
px_timestamp2string
Paradox Funções
PHP Manual

px_set_value

(PECL paradox >= 1.1.0)

px_set_value — Sets a value

Descrição

bool px_set_value ( resource $pxdoc , string $name , float $value )

Sets various values.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

name

name can be one of the following.

numprimkeys

The number of primary keys. Paradox databases always use the first numprimkeys fields for the primary index.

value

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

px_set_parameter() - Sets a parameter

px_set_targetencoding
px_timestamp2string
Paradox Funções


Converts the timestamp into a string.

px_set_value
px_update_record
Paradox Funções
PHP Manual

px_timestamp2string

(PECL paradox >= 1.4.0)

px_timestamp2string — Converts the timestamp into a string.

Descrição

string px_timestamp2string ( resource $pxdoc , float $value , string $format )

Turns a timestamp as it stored in the paradox file into human readable format. Paradox timestamps are the number of miliseconds since 0001-01-02. This function is just for convenience. It can be easily replaced by some math and the calendar functions as demonstrated in the following example.

Parâmetros

pxdoc

Resource identifier of the paradox database.

value

Value as stored in paradox database field of type PX_FIELD_TIME, or PX_FIELD_TIMESTAMP.

format

String format similar to the format used by date(). The placeholders support by this function is a subset of those supported by date() (Y, y, m, n, d, j, H, h, G, g, i, s, A, a, L).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Turn a paradox timestamp into a human readable form

<?php
$px = px_new();

/* make up a date as it could be stored in */
/* a date field of a paradox db. */
/* 700000 days since 1.1.0000. */
$days = 700000;

/* Use the calendar functions to print a */
/* human readable format of the date */
echo jdtogregorian($days+1721425)."\n";

/* Turn it into a timestamp as it stored in a paradox database */
/* Timestamps are stored in miliseconds since 0001-01-02 */
$stamp = $days * 86400.0 * 1000.0;
/* Add one hour */
$stamp += 3600000.0;
/* The following will output '7/15/1917 01:00:00'. */
echo px_timestamp2string($px, $stamp, "n/d/Y H:i:s")."\n";

px_delete($px);
?>

O exemplo acima irá imprimir:

7/15/1917
7/15/1917 01:00:00

The Julian day count as passed to jdtogregorian() has a different base of 1.1.4714 b.c. and must therefore be calculated by adding 1721425 to the day count used in the paradox file. Turning the day count into a timestamp is easily done by multiplying with 86400000.0 to obtain miliseconds.

Veja Também

  • px_date2string() - Converts a date into a string.
  • jdtogregorian() - Converte uma data no formato "Julian Day Count" para o formato Gregoriano

px_set_value
px_update_record
Paradox Funções


Updates record in paradox database

px_timestamp2string
PostgreSQL
Paradox Funções
PHP Manual

px_update_record

(PECL paradox >= 1.4.0)

px_update_record — Updates record in paradox database

Descrição

bool px_update_record ( resource $pxdoc , array $data , int $num )

Updates an exiting record in the database. The record starts at 0.

The record data is passed as an array of field values. The elements in the array must correspond to the fields in the database. If the array has less elements than fields in the database, the remaining fields will be set to null.

Nota:

This function is only available if pxlib >= 0.6.0 is used.

Parâmetros

pxdoc

Resource identifier of the paradox database as returned by px_new().

data

Associated array containing the field values as returned by px_retrieve_record().

num

The record number is an artificial number counting records in the order as they are stored in the database. The first record has number 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

px_insert_record() - Inserts record into paradox database

px_timestamp2string
PostgreSQL
Paradox Funções


PostgreSQL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • PostgreSQL Funções
    • pg_affected_rows — Retorna o número de registros afetados (linhas)
    • pg_cancel_query — Cancela uma consulta (query) assíncrona
    • pg_client_encoding — Retorna a codificação do cliente
    • pg_close — Fecha uma conexão PostgreSQL
    • pg_connect — Abre uma conexão PostgreSQL
    • pg_connection_busy — Verifica se a conexão está ocupada ou não
    • pg_connection_reset — Reinicia uma conexão (reconecta)
    • pg_connection_status — Retorna o status da conexão
    • pg_convert — Converte os valores de um array associativo em uma declaração SQL apropriada.
    • pg_copy_from — Insere registros em uma tabela a partir de um array
    • pg_copy_to — Copia uma tabela em um array
    • pg_dbname — Retorna o nome do banco de dados
    • pg_delete — Remove registros.
    • pg_end_copy — Sincroniza com o backend PostgreSQL
    • pg_escape_bytea — Gera binários para o tipo bytea
    • pg_escape_string — Gera string para o tipo text/char
    • pg_execute — Sends a request to execute a prepared statement with given parameters, and waits for the result.
    • pg_fetch_all_columns — Fetches all rows in a particular result column as an array
    • pg_fetch_all — Retorna todas as linhas (registros) como um array
    • pg_fetch_array — Retorna uma linha (registro) como um array
    • pg_fetch_assoc — Retorna uma linha (registro) como uma matriz associativa
    • pg_fetch_object — Retorna uma linha (registro) como um objeto
    • pg_fetch_result — Retorna valores a partir de um recurso (resource) de resultado
    • pg_fetch_row — Retorna uma linha como um array enumerado
    • pg_field_is_null — Testa se o campo é NULL
    • pg_field_name — Retorna o nome de um campo
    • pg_field_num — Retorna o número do campo referido
    • pg_field_prtlen — Retorna o comprimento impresso
    • pg_field_size — Retorna o tamanho de armazenamento interno de um campo
    • pg_field_table — Returns the name or oid of the tables field
    • pg_field_type_oid — Returns the type ID (OID) for the corresponding field number
    • pg_field_type — Retorna o nome do tipo para o campo de nome correspondente
    • pg_free_result — Libera a memória usada pelo resultado
    • pg_get_notify — Gets SQL NOTIFY message
    • pg_get_pid — Gets the backend's process ID
    • pg_get_result — Retorna o resultado de uma consulta (query) assíncrona
    • pg_host — Retorna o nome da máquina associada a uma conexão
    • pg_insert — Insere um array na tabela
    • pg_last_error — Retorna a string da última mensagem de erro de uma conexão
    • pg_last_notice — Retorna a última notificação do servidor PostgreSQL
    • pg_last_oid — Retorna o último oid do objeto
    • pg_lo_close — Fecha um objeto grande (large object)
    • pg_lo_create — Cria um objeto grande (large object)
    • pg_lo_export — Exporta um objeto grande (large object) para um arquivo
    • pg_lo_import — Importa um objeto grande (large object) a partir de um arquivo
    • pg_lo_open — Abre um objeto grande (large object)
    • pg_lo_read_all — Lê um objeto grande (large object) inteiro e o envia diretamente para o navegador
    • pg_lo_read — Lê um objeto grande (large object)
    • pg_lo_seek — Procura uma posição em um objeto grande (large object)
    • pg_lo_tell — Retorna a posição atual de um objeto grande (large object)
    • pg_lo_unlink — Remove um objeto grande (large object)
    • pg_lo_write — Escreve em um objeto grande (large object)
    • pg_meta_data — Retorna os metadados da tabela.
    • pg_num_fields — Retorna o número de campos
    • pg_num_rows — Retorna o número de linhas
    • pg_options — Retorna as opções associadas com a conexão
    • pg_parameter_status — Looks up a current parameter setting of the server.
    • pg_pconnect — Abre uma conexão PostgreSQL persistente
    • pg_ping — Faz um ping na conexão com o banco de dados
    • pg_port — Retorna o número da porta associada com a conexão.
    • pg_prepare — Submits a request to create a prepared statement with the given parameters, and waits for completion.
    • pg_put_line — Envia uma string terminada em NULL para o backend PostgreSQL
    • pg_query_params — Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.
    • pg_query — Executa uma consulta (query)
    • pg_result_error_field — Returns an individual field of an error report.
    • pg_result_error — Retorna a mensagem de erro associada a um resultado
    • pg_result_seek — Altera a posição do ponteiro interno de um recurso (resource) de resultado
    • pg_result_status — Retorna o status do resultado da consulta (query)
    • pg_select — Seleciona registros.
    • pg_send_execute — Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).
    • pg_send_prepare — Sends a request to create a prepared statement with the given parameters, without waiting for completion.
    • pg_send_query_params — Submits a command and separate parameters to the server without waiting for the result(s).
    • pg_send_query — Envia uma consulta (query) assincrona
    • pg_set_client_encoding — Define a codificação do cliente
    • pg_set_error_verbosity — Determines the verbosity of messages returned by pg_last_error and pg_result_error.
    • pg_trace — Habilita rastreamento em uma conexão PostgreSQL
    • pg_transaction_status — Returns the current in-transaction status of the server.
    • pg_tty — Retorna o nome da tty associada com a conexão
    • pg_unescape_bytea — Faz escape binário para o tipo bytea
    • pg_untrace — Desabilita o rastreamento de uma conexão PostgreSQL
    • pg_update — Atualiza uma tabela.
    • pg_version — Returns an array with client, protocol and server version (when available)
px_update_record
Introdução
Vendor Specific Database Extensions


Introdução

O banco de dados PostgreSQL é um produto de código aberto e disponível gratuitamente. O Postgres, desenvolvido originalmente no Departamento de Ciência de Computação da Universidade de Berkeley, foi pioneiro em muitos dos conceitos objeto-relacionais que agora estão disponíveis em alguns bancos de dados comerciais. Fornece suporte a linguagem SQL92/SQL99, integridade de transações e extensibilidade de tipos. O PostgreSQL é um descendente com código aberto do código original desenvolvido em Berkeley.

PostgreSQL
Instalação/Configuração
PostgreSQL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PostgreSQL


Dependências

Para usar usar as funções para PostgreSQL, você precisa do PostgreSQL 6.5 ou superior e PostgreSQL 7.0 ou superior para habilitar todos os recursos deste módulo. PostgreSQL suporta inúmeros tipos de codificação de caracteres incluindo a codificação de caracteres multibyte. A versão mais atual e mais informações sobre PostgreSQL estão disponíveis em » http://www.postgresql.org/ e » Documentação do PostgreSQL.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

In order to enable PostgreSQL support, --with-pgsql[=DIR] is required when you compile PHP. DIR is the PostgreSQL base install directory, defaults to /usr/local/pgsql. If shared object module is available, PostgreSQL module may be loaded using extension directive in php.ini or dl() function.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do PostgreSQL
Nome | Padrão | Alterável | Changelog
pgsql.allow_persistent | "1" | PHP_INI_SYSTEM |
pgsql.max_persistent | "-1" | PHP_INI_SYSTEM |
pgsql.max_links | "-1" | PHP_INI_SYSTEM |
pgsql.auto_reset_persistent | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0.
pgsql.ignore_notice | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
pgsql.log_notice | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

pgsql.allow_persistent boolean

Se quer ou não permitir conexões persistentes com o PostgreSQL.

pgsql.max_persistent integer

O número máximo de conexões persistentes com PostgreSQL por processo.

pgsql.max_links integer

O número máximo de conexões PostgreSQL por processo, incluindo as persistentes.

pgsql.auto_reset_persistent integer

Detecta conexões permantentes quebradas pg_pconnect(). Causa uma pequena sobrecarga.

pgsql.ignore_notice integer

Quando ignorar ou não os avisos do PostgreSQL.

pgsql.log_notice integer

Quando ou não realizar ou não o log de avisos do PostgreSQL. A diretiva pgsql.ignore_notice deve estar em off para poder fazer o log dos avisos.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Há dois tipos de resource usados no módulo PostgreSQL. O primeiro é o identificador do link para a conexão com o banco de dados, o segundo um resource que guarda o resultado de uma query.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PGSQL_ASSOC (integer)
Usada em pg_fetch_array(). Retorna um array associativo contendo nomes dos campos e valores.
PGSQL_NUM (integer)
Usada em pg_fetch_array(). Retorna um array com índice numérico contendo números dos campos e valores.
PGSQL_BOTH (integer)
Usada em pg_fetch_array(). Retorna um array dos valores do campos com índice numérico (por número do campo) e associativo (por nome do campo).
PGSQL_CONNECT_FORCE_NEW (integer)
Usado em pg_connect() para forçar a criação de nova conexão, ao invés de reutilizar um idêntica existente conexão.
PGSQL_CONNECTION_BAD (integer)
Retornado pela pg_connection_status() indicando que a conexão com o banco de dados está em um estado inválido.
PGSQL_CONNECTION_OK (integer)
Retornado pela pg_connection_status() indicando que a conexão com o banco de dados está em um estado válido.
PGSQL_SEEK_SET (integer)
Usada na pg_lo_seek(). Encontra a operação que foi iniciada no início do objeto.
PGSQL_SEEK_CUR (integer)
Usada na pg_lo_seek(). Encontra a operação que foi iniciada na posição atual.
PGSQL_SEEK_END (integer)
Usada na pg_lo_seek(). Encontra a operação que foi iniciada no final do objeto.
PGSQL_EMPTY_QUERY (integer)
Retornado pela pg_result_status(). A string enviada para o servidor como vazia.
PGSQL_COMMAND_OK (integer)
Retornado pela pg_result_status(). Sucesso completo de um comando não retornando dados.
PGSQL_TUPLES_OK (integer)
Retornado pela pg_result_status(). Sucesso completo de um comando retornando dados (como um SELECT ou SHOW).
PGSQL_COPY_OUT (integer)
Retornado pela pg_result_status(). Copia (do servidor) dados da transferência iniciada.
PGSQL_COPY_IN (integer)
Retornado pela pg_result_status(). Copia (para o servidor) dados da transferência iniciada.
PGSQL_BAD_RESPONSE (integer)
Retornado pela pg_result_status(). A resposta do servidor que não foi entendida.
PGSQL_NONFATAL_ERROR (integer)
Retornado pela pg_result_status(). Um erro não fatal (um notice ou warning) ocorrido.
PGSQL_FATAL_ERROR (integer)
Retornado pela pg_result_status(). Um erro fatal ocorrido.
PGSQL_TRANSACTION_IDLE (integer)
Retornado pela pg_transaction_status(). Conexão está atualmente sem resposta, não em uma transação.
PGSQL_TRANSACTION_ACTIVE (integer)
Retornado pela pg_transaction_status(). Um comando está em progresso na conexão. Um query foi enviada pela conexão e ainda não foi completada.
PGSQL_TRANSACTION_INTRANS (integer)
Retornado pela pg_transaction_status(). A conexão está sem resposta, em um bloco da transação.
PGSQL_TRANSACTION_INERROR (integer)
Retornado pela pg_transaction_status(). A conexão está sem resposta, em uma falha no bloco da transação.
PGSQL_TRANSACTION_UNKNOWN (integer)
Retornado pela pg_transaction_status(). A conexão está ruim.
PGSQL_DIAG_SEVERITY (integer)
Usada na pg_result_error_field(). O conteúdo dos campos são ERROR, FATAL, ou PANIC (em uma mensagem de erro), ou WARNING, NOTICE, DEBUG, INFO, ou LOG (em uma mensagem do tipo notice), ou uma certa tradução de uma dessas. Sempre presente.
PGSQL_DIAG_SQLSTATE (integer)
Usada na pg_result_error_field(). O código SQLSTATE do erro. O código SQLSTATE identifica o tipo do erro ocorrido; ele pode ser usado por aplicações front-end para executar específicas operações (como um manipulador de erro) em resposta para a um particular erro do banco de dados. Esta campo não é localizado, e está sempre presente.
PGSQL_DIAG_MESSAGE_PRIMARY (integer)
Usada pela pg_result_error_field(). A mensagem de erro primário legível (tipicamente em uma linha). Sempre presente.
PGSQL_DIAG_MESSAGE_DETAIL (integer)
Usada pela pg_result_error_field(). Detalhe: uma mensagem de erro secundário carregando mais detalhes sobre o problema. Pode executar múltiplas linhas.
PGSQL_DIAG_MESSAGE_HINT (integer)
Usada pela pg_result_error_field(). Dica: um sugestão opcional sobre o que fazer em relação ao problema. Tem a intenção de fornecer informações (potencialmente inadequadas) ao invés de fatos concretos. Pode retornar múltiplas linhas.
PGSQL_DIAG_STATEMENT_POSITION (integer)
Usado pela pg_result_error_field(). Uma string contendo um inteiro decimal indicando um erro na posição do cursor como um índice para a string do comando. O primeiro caractere tem o índice 1, e posições são medidas em caracteres, não em bytes.
PGSQL_DIAG_INTERNAL_POSITION (integer)
Usado pela pg_result_error_field(). Esta é definida da mesma forma que o campo PG_DIAG_STATEMENT_POSITION, mas ela é usado quando a posição do cursor refere-se a um comando internamente gerado melhor que o enviado pelo client. O campo PG_DIAG_INTERNAL_QUERY irá sempre aparecer quando este campo aparecer.
PGSQL_DIAG_INTERNAL_QUERY (integer)
Usado na pg_result_error_field(). O texto do comando que falhou gerado internamente. Poderá ser, por exemplo, uma query SQL emitindo por uma função PL/pgSQL.
PGSQL_DIAG_CONTEXT (integer)
Usada na pg_result_error_field(). Um indicador de contexto no qual o erro ocorreu. Atualmente isto inclui a call stack da ativa função da linguagem procedural e queries internamentes geradas. O trace é uma entrada por linha, mais recente primeiro.
PGSQL_DIAG_SOURCE_FILE (integer)
Usada na pg_result_error_field(). O nome do arquivo do código-fonte PostgreSQL localiazdo onde o erro foi reportado.
PGSQL_DIAG_SOURCE_LINE (integer)
Usado na pg_result_error_field(). O número da linha do código-fonte PostgreSQL source-code localizado onde o erro foi reportado.
PGSQL_DIAG_SOURCE_FUNCTION (integer)
Usado na pg_result_error_field(). O nome da função the PostgreSQL source-code que reportou o erro.
PGSQL_ERRORS_TERSE (integer)
Usada na pg_set_error_verbosity(). Especifica qual o tipo da mensagem incluida, texto primário, e posição somente; normalmente em uma única linha.
PGSQL_ERRORS_DEFAULT (integer)
Usada na pg_set_error_verbosity(). O modo padrão de mensagem incluidas acima mais alguns detalhe, sugestão, ou contexto do campo (estes podem ter múltiplas linhas).
PGSQL_ERRORS_VERBOSE (integer)
Usada na pg_set_error_verbosity(). O modo verbose inclui todos os campos disponíveis.
PGSQL_STATUS_LONG (integer)
Usada na pg_result_status(). Indica que código de resultado numério é desejado.
PGSQL_STATUS_STRING (integer)
Usada na pg_result_status(). Indica que resultado texto de comando é desejado.
PGSQL_CONV_IGNORE_DEFAULT (integer)
Usado na pg_convert(). Ignora valores padrão na tabela durante a conversão.
PGSQL_CONV_FORCE_NULL (integer)
Usada na pg_convert(). Usa NULL da SQL no lugar de uma string vazia.
PGSQL_CONV_IGNORE_DEFAULT (integer)
Usada na pg_convert(). Ignora conversão de NULL em colunas SQL NOT NULL.
Tipos Resource
Exemplos
PostgreSQL


Exemplos

Índice

Constantes pré-definidas
PostgreSQL


Exemplos
PostgreSQL Funções
Exemplos
PHP Manual

Este simples exemple mostra como conectar, executar uma query, mostrar linhas de resultado e desconectar de um banco de dados PostgreSQL.

Exemplo #1 Exemplo de visão geral da extensão PostgreSQL

<?php
// Connecting, selecting database
$dbconn = pg_connect("host=localhost dbname=publishing user=www password=foo")
    or die('Could not connect: ' . pg_last_error());

// Performing SQL query
$query = 'SELECT * FROM authors';
$result = pg_query($query) or die('Query failed: ' . pg_last_error());

// Printing results in HTML
echo "<table>\n";
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

// Free resultset
pg_free_result($result);

// Closing connection
pg_close($dbconn);
?>

Exemplos
PostgreSQL Funções
Exemplos


PostgreSQL Funções

Notas

Nota:

Nem todas as funções são suportadas por todas as compilações. Isso vai depender da versão da libpq (A interface cliente em C para PostgreSQL) e como esta foi compilada. Se há alguma função ausente, é porque a libpq não suporta a característica exigida por esta função.

Nota:

Muitas funções do PostgreSQL aceitam connection como o primeiro parâmetro opcional. Se ele não é fornecido, a última conexão aberta é usada. Se não existir, a função retorna FALSE.

Nota:

PostgreSQL automaticamente converte todos identificadores (e.g. nomes de tabela/coluna) para minúsculo na criação do objeto e na query. Para força o uso misto de maiúsculo ou minúsculo, você precisa usar escape no identificador usando aspas dupla ("").

Nota:

PostgreSQL não tem comandos especiais para obter informação dos dados do banco de dados (dicionário de dados) (eg. todas as tabelas do banco de dados atual). Ao invés, há um schema padrão chamado information_schema no PostgreSQL 7.4 e superior contendo views do sistema com todas as informações necessárias, em um form fácil de acessá-las. Veja a » Documentação do PostgreSQL para maiores detalhes.

Índice

  • pg_affected_rows — Retorna o número de registros afetados (linhas)
  • pg_cancel_query — Cancela uma consulta (query) assíncrona
  • pg_client_encoding — Retorna a codificação do cliente
  • pg_close — Fecha uma conexão PostgreSQL
  • pg_connect — Abre uma conexão PostgreSQL
  • pg_connection_busy — Verifica se a conexão está ocupada ou não
  • pg_connection_reset — Reinicia uma conexão (reconecta)
  • pg_connection_status — Retorna o status da conexão
  • pg_convert — Converte os valores de um array associativo em uma declaração SQL apropriada.
  • pg_copy_from — Insere registros em uma tabela a partir de um array
  • pg_copy_to — Copia uma tabela em um array
  • pg_dbname — Retorna o nome do banco de dados
  • pg_delete — Remove registros.
  • pg_end_copy — Sincroniza com o backend PostgreSQL
  • pg_escape_bytea — Gera binários para o tipo bytea
  • pg_escape_string — Gera string para o tipo text/char
  • pg_execute — Sends a request to execute a prepared statement with given parameters, and waits for the result.
  • pg_fetch_all_columns — Fetches all rows in a particular result column as an array
  • pg_fetch_all — Retorna todas as linhas (registros) como um array
  • pg_fetch_array — Retorna uma linha (registro) como um array
  • pg_fetch_assoc — Retorna uma linha (registro) como uma matriz associativa
  • pg_fetch_object — Retorna uma linha (registro) como um objeto
  • pg_fetch_result — Retorna valores a partir de um recurso (resource) de resultado
  • pg_fetch_row — Retorna uma linha como um array enumerado
  • pg_field_is_null — Testa se o campo é NULL
  • pg_field_name — Retorna o nome de um campo
  • pg_field_num — Retorna o número do campo referido
  • pg_field_prtlen — Retorna o comprimento impresso
  • pg_field_size — Retorna o tamanho de armazenamento interno de um campo
  • pg_field_table — Returns the name or oid of the tables field
  • pg_field_type_oid — Returns the type ID (OID) for the corresponding field number
  • pg_field_type — Retorna o nome do tipo para o campo de nome correspondente
  • pg_free_result — Libera a memória usada pelo resultado
  • pg_get_notify — Gets SQL NOTIFY message
  • pg_get_pid — Gets the backend's process ID
  • pg_get_result — Retorna o resultado de uma consulta (query) assíncrona
  • pg_host — Retorna o nome da máquina associada a uma conexão
  • pg_insert — Insere um array na tabela
  • pg_last_error — Retorna a string da última mensagem de erro de uma conexão
  • pg_last_notice — Retorna a última notificação do servidor PostgreSQL
  • pg_last_oid — Retorna o último oid do objeto
  • pg_lo_close — Fecha um objeto grande (large object)
  • pg_lo_create — Cria um objeto grande (large object)
  • pg_lo_export — Exporta um objeto grande (large object) para um arquivo
  • pg_lo_import — Importa um objeto grande (large object) a partir de um arquivo
  • pg_lo_open — Abre um objeto grande (large object)
  • pg_lo_read_all — Lê um objeto grande (large object) inteiro e o envia diretamente para o navegador
  • pg_lo_read — Lê um objeto grande (large object)
  • pg_lo_seek — Procura uma posição em um objeto grande (large object)
  • pg_lo_tell — Retorna a posição atual de um objeto grande (large object)
  • pg_lo_unlink — Remove um objeto grande (large object)
  • pg_lo_write — Escreve em um objeto grande (large object)
  • pg_meta_data — Retorna os metadados da tabela.
  • pg_num_fields — Retorna o número de campos
  • pg_num_rows — Retorna o número de linhas
  • pg_options — Retorna as opções associadas com a conexão
  • pg_parameter_status — Looks up a current parameter setting of the server.
  • pg_pconnect — Abre uma conexão PostgreSQL persistente
  • pg_ping — Faz um ping na conexão com o banco de dados
  • pg_port — Retorna o número da porta associada com a conexão.
  • pg_prepare — Submits a request to create a prepared statement with the given parameters, and waits for completion.
  • pg_put_line — Envia uma string terminada em NULL para o backend PostgreSQL
  • pg_query_params — Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.
  • pg_query — Executa uma consulta (query)
  • pg_result_error_field — Returns an individual field of an error report.
  • pg_result_error — Retorna a mensagem de erro associada a um resultado
  • pg_result_seek — Altera a posição do ponteiro interno de um recurso (resource) de resultado
  • pg_result_status — Retorna o status do resultado da consulta (query)
  • pg_select — Seleciona registros.
  • pg_send_execute — Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).
  • pg_send_prepare — Sends a request to create a prepared statement with the given parameters, without waiting for completion.
  • pg_send_query_params — Submits a command and separate parameters to the server without waiting for the result(s).
  • pg_send_query — Envia uma consulta (query) assincrona
  • pg_set_client_encoding — Define a codificação do cliente
  • pg_set_error_verbosity — Determines the verbosity of messages returned by pg_last_error and pg_result_error.
  • pg_trace — Habilita rastreamento em uma conexão PostgreSQL
  • pg_transaction_status — Returns the current in-transaction status of the server.
  • pg_tty — Retorna o nome da tty associada com a conexão
  • pg_unescape_bytea — Faz escape binário para o tipo bytea
  • pg_untrace — Desabilita o rastreamento de uma conexão PostgreSQL
  • pg_update — Atualiza uma tabela.
  • pg_version — Returns an array with client, protocol and server version (when available)
pg_affected_rows
PostgreSQL


Retorna o número de registros afetados (linhas)

PostgreSQL Funções
pg_cancel_query
PostgreSQL Funções
PHP Manual

pg_affected_rows

(PHP 4 >= 4.2.0, PHP 5)

pg_affected_rows — Retorna o número de registros afetados (linhas)

Descrição

int pg_affected_rows ( resource $result )

pg_affected_rows() retorna o número de linhas (instâncias/registros/linhas) afetados por consultas (queries) INSERT, UPDATE e DELETE executados por pg_query(). Se nenhuma linha foi afetada, ela retornará 0.

Exemplo #1 pg_affected_rows()

<?php
     $result = pg_query($conn, "INSERT INTO authors VALUES ('Orwell', 2002, 'Animal Farm')");
     $cmdtuples = pg_affected_rows($result);
     echo $cmdtuples . " tuples are affected.\n";
?>

Nota:

Esta função costumava ser chamada de pg_cmdtuples().

Veja também pg_query() e pg_num_rows().

PostgreSQL Funções
pg_cancel_query
PostgreSQL Funções


Cancela uma consulta (query) assíncrona

pg_affected_rows
pg_client_encoding
PostgreSQL Funções
PHP Manual

pg_cancel_query

(PHP 4 >= 4.2.0, PHP 5)

pg_cancel_query — Cancela uma consulta (query) assíncrona

Descrição

bool pg_cancel_query ( resource $connection )

pg_cancel_query() cancela uma consulta (query) assíncrona enviada por pg_send_query(). Você não pode cancelar uma consulta executada por pg_query().

Veja também pg_send_query() e pg_connection_busy().

pg_affected_rows
pg_client_encoding
PostgreSQL Funções


Retorna a codificação do cliente

pg_cancel_query
pg_close
PostgreSQL Funções
PHP Manual

pg_client_encoding

(PHP 4 >= 4.0.3, PHP 5)

pg_client_encoding — Retorna a codificação do cliente

Descrição

string pg_client_encoding ([ resource $connection ] )

pg_client_encoding() retorna a codificação do cliente como uma string. A string de retorno pode ser SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, SJIS, BIG5, WIN1250.

Nota:

Esta função requer PHP 4.0.3 ou maior e PostgreSQL 7.0 ou maior Se a libpq foi compilada sem suporte a codificação multibyte, pg_set_client_encoding() sempre retornará "SQL_ASCII". As codificações suportadas dependem da versão do PostgreSQL. Vide o manual do PostgreSQL para mais detalhes sobre como habilitar o suporte a multibyte e outras codificações.

Esta função costumava ser chamada pg_clientencoding().

Veja também pg_set_client_encoding().

pg_cancel_query
pg_close
PostgreSQL Funções


Fecha uma conexão PostgreSQL

pg_client_encoding
pg_connect
PostgreSQL Funções
PHP Manual

pg_close

(PHP 4, PHP 5)

pg_close — Fecha uma conexão PostgreSQL

Descrição

bool pg_close ( resource $connection )

pg_close() fecha a conexão não persistente com servidor de banco de dados PostgreSQL associado ao recurso (resource) connection dado. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

Normalmente, o uso de pg_close() não é necessário já que conexões não persistentes abertas são automaticamente fechadas ao final do processamento do script.

Exemplo #1 pg_close() example

<?php
      $dbconn = pg_connect("host=localhost port=5432 dbname=mary")
          or die("Não foi possível conectar");
      print("Conexão bem sucedida");
      pg_close($dbconn);
  ?>

Se existem recursos (resource) de objetos grandes (large objects) abertos na conexão, não feche a conexão antes de fechar todos os recursos relacionados com estes objetos.

pg_client_encoding
pg_connect
PostgreSQL Funções


Abre uma conexão PostgreSQL

pg_close
pg_connection_busy
PostgreSQL Funções
PHP Manual

pg_connect

(PHP 4, PHP 5)

pg_connect — Abre uma conexão PostgreSQL

Descrição

resource pg_connect ( string $connection_string )

pg_connect() retorna um recurso (resource) de conexão que é necessário para outras funções para PostgreSQL.

pg_connect() abre uma conexão com um servidor de banco de dados PostgreSQL especificado por connection_string. Retorna um recurso (resource) de conexão em caso de sucesso. Retorna FALSE se a conexão não pôde ser estabelecida. connection_string deve ser uma string entre aspas duplas.

Exemplo #1 Usando pg_connect()

<?php
$bdcon = pg_connect("dbname=flavia");
//conecta a um banco de dados chamado "flavia"

$bdcon2 = pg_connect("host=localhost port=5432 dbname=flavia");
// conecta a um banco de dados chamado "flavia" em "localhost" na porta "5432"

$bdcon3 = pg_connect("host=ovelha port=5432 dbname=flavia user=ze password=buu");
//conecta a um banco de dados chamado "flavia" na máquina "ovelha" com um usuário e senha

$con_string = "host=ovelha port=5432 dbname=flavia user=ze password=buu";
$bdcon4 = pg_connect($con_string);
//coneta a um banco de dados chamado "flavia" na máquina "ovelha" com um usuário e senha
?>
Os argumentos disponíveis para connection_string incluem host, port, tty, options, dbname, user e password.

Se uma segunda chamada é feita para pg_connect() com a mesma connection_string, nenhuma nova conexão será estabelecida, ao invés disso, o recurso (resource) de conexão da conexão que já está aberta será retornado. Você pode ter multiplas conexões para o mesmo banco de dados se você usar diferentes strings de conexão.

A sintaxe antiga com parâmetros múltiplos $con = pg_connect("host", "port", "options", "tty", "dbname") se tornou obsoleta.

Veja também pg_pconnect(),
pg_close(), pg_host(),
pg_port(), pg_tty(),
pg_options() e pg_dbname().

pg_close
pg_connection_busy
PostgreSQL Funções


Verifica se a conexão está ocupada ou não

pg_connect
pg_connection_reset
PostgreSQL Funções
PHP Manual

pg_connection_busy

(PHP 4 >= 4.2.0, PHP 5)

pg_connection_busy — Verifica se a conexão está ocupada ou não

Descrição

bool pg_connection_busy ( resource $connection )

pg_connection_busy() retorna TRUE se a conexão está ocupada. Se estiver ocupada, significa que uma consulta (query) anterior ainda está sendo executada. Se pg_get_result() for chamada, será bloqueada.

Exemplo #1 pg_connection_busy() example

<?php
      $dbconn = pg_connect("dbname=publisher") or die("Could not connect");
      $bs = pg_connection_busy($dbconn);
      if ($bs) {
          echo 'a conexão esta ocupada';
      }
      else {
         echo 'a conexão não esta ocupada';
      }
  ?>

Veja também pg_connection_status() e pg_get_result().

pg_connect
pg_connection_reset
PostgreSQL Funções


Reinicia uma conexão (reconecta)

pg_connection_busy
pg_connection_status
PostgreSQL Funções
PHP Manual

pg_connection_reset

(PHP 4 >= 4.2.0, PHP 5)

pg_connection_reset — Reinicia uma conexão (reconecta)

Descrição

bool pg_connection_reset ( resource $connection )

pg_connection_reset() reinicia uma conexão. É útil para recuperação de erros. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo #1 pg_connection_reset() example

<?php
      $dbconn = pg_connect("dbname=publisher") or die("Could not connect");
      $dbconn2 = pg_connection_reset($dbconn);
      if ($dbconn2) {
          echo "reset successful\n";
      }
      else {
          echo "reset failed\n";
      }
  ?>

Veja também pg_connect(),
pg_pconnect() e
pg_connection_status().

pg_connection_busy
pg_connection_status
PostgreSQL Funções


Retorna o status da conexão

pg_connection_reset
pg_convert
PostgreSQL Funções
PHP Manual

pg_connection_status

(PHP 4 >= 4.2.0, PHP 5)

pg_connection_status — Retorna o status da conexão

Descrição

int pg_connection_status ( resource $connection )

pg_connection_status() retorna o status da conexão. Os status possíveis são PGSQL_CONNECTION_OK e PGSQL_CONNECTION_BAD. O valor de retorno 0 inteiro indica uma conexão bem sucedida.

Exemplo #1 pg_connection_status() example

<?php
    $dbconn = pg_connect("dbname=publisher") or die("Não foi possível conectar");
    $stat = pg_connection_status($dbconn);
    if ($stat === 0) {
        echo 'Connection status ok';
    } else {
        echo 'Connection status bad';
    }
?>

Veja também pg_connection_busy().

pg_connection_reset
pg_convert
PostgreSQL Funções


Converte os valores de um array associativo em uma declaração SQL apropriada.

pg_connection_status
pg_copy_from
PostgreSQL Funções
PHP Manual

pg_convert

(PHP 4 >= 4.3.0, PHP 5)

pg_convert — Converte os valores de um array associativo em uma declaração SQL apropriada.

Descrição

array pg_convert ( resource $connection , string $table_name , array $assoc_array [, int $options ] )

pg_convert() checa e converte assoc_array em uma declaração SQL apropriada. Pré-condição para pg_convert() é a existencia de uma tabela table_name a qual teve ter tantos campos quantos os elementos em assoc_array. Os nomes dos campos em e os valores em table_name devem ser iguais aos índices e valores em assoc_array. Retorna uma matriz com os valores convertidos em caso de sucesso ou se não, FALSE.

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_meta_data().

pg_connection_status
pg_copy_from
PostgreSQL Funções


Insere registros em uma tabela a partir de um array

pg_convert
pg_copy_to
PostgreSQL Funções
PHP Manual

pg_copy_from

(PHP 4 >= 4.2.0, PHP 5)

pg_copy_from — Insere registros em uma tabela a partir de um array

Descrição

bool pg_copy_from ( resource $connection , string $table_name , array $rows [, string $delimiter [, string $null_as ]] )

pg_copy_from() insere registros em uma tabela a partir de rows. Usa o comando interno COPY FROM para inserir registros. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja também pg_copy_to().

pg_convert
pg_copy_to
PostgreSQL Funções


Copia uma tabela em um array

pg_copy_from
pg_dbname
PostgreSQL Funções
PHP Manual

pg_copy_to

(PHP 4 >= 4.2.0, PHP 5)

pg_copy_to — Copia uma tabela em um array

Descrição

int pg_copy_to ( resource $connection , string $table_name [, string $delimiter [, string $null_as ]] )

pg_copy_to() copia uma tabela em um array. Utiliza internamente o comando SQL COPY TO para inserir os registros. Seu retorno é o array resultante. Caso haja falhas, FALSE é retornado.

Veja também pg_copy_from().

pg_copy_from
pg_dbname
PostgreSQL Funções


Retorna o nome do banco de dados

pg_copy_to
pg_delete
PostgreSQL Funções
PHP Manual

pg_dbname

(PHP 4, PHP 5)

pg_dbname — Retorna o nome do banco de dados

Descrição

string pg_dbname ( resource $connection )

pg_dbname() retorna o nome do banco de dados para um dado recurso (resource) de conexão connection. Retorna FALSE, se connection não é um recurso de conexão PostgreSQL válido.

Exemplo #1 pg_dbname() example

<?php
    error_reporting(E_ALL);

    pg_connect("host=localhost port=5432 dbname=mary");
    echo pg_dbname(); // mary
?>

pg_copy_to
pg_delete
PostgreSQL Funções


Remove registros.

pg_dbname
pg_end_copy
PostgreSQL Funções
PHP Manual

pg_delete

(PHP 4 >= 4.3.0, PHP 5)

pg_delete — Remove registros.

Descrição

mixed pg_delete ( resource $connection , string $table_name , array $assoc_array [, int $options ] )

pg_delete() remove registros que seguem a condição especificada por assoc_array que tem o formato campo => valor. Se options for especificado, pg_convert() é aplicada a assoc_array com a opção especificada.

Exemplo #1 pg_delete

<?php
    $db = pg_connect ('dbname=flavia');
    // Isto é seguro, já que $_POST é convertido automaticamente
    $res = pg_delete($db, 'post_log', $_POST);
    if ($res) {
        echo "Dados de POST foram removidos: $res\n";
    } else {
        echo "O usuário deve ter enviado parâmetros inválidos\n";
    }
?>

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_convert().

pg_dbname
pg_end_copy
PostgreSQL Funções


Sincroniza com o backend PostgreSQL

pg_delete
pg_escape_bytea
PostgreSQL Funções
PHP Manual

pg_end_copy

(PHP 4 >= 4.0.3, PHP 5)

pg_end_copy — Sincroniza com o backend PostgreSQL

Descrição

bool pg_end_copy ([ resource $connection ] )

pg_end_copy() sincroniza o frontend PostgreSQL (geralmente um processo de servidor HTTP) com o servidor PostgreSQL depois de fazer uma operação de cópia usando pg_put_line(). pg_end_copy() deve ser chamada, caso contrário o servidor PostgreSQL pode perder a sincronia com o frontend fazendo com que o servidor gere um erro. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Para maiores detalhes e um exemplo, veja também pg_put_line().

pg_delete
pg_escape_bytea
PostgreSQL Funções


Gera binários para o tipo bytea

pg_end_copy
pg_escape_string
PostgreSQL Funções
PHP Manual

pg_escape_bytea

(PHP 4 >= 4.2.0, PHP 5)

pg_escape_bytea — Gera binários para o tipo bytea

Descrição

string pg_escape_bytea ( string $data )

pg_escape_bytea() gera uma string do tipo bytea. Retorna uma string com escapes.

Nota:

Quando você usa SELECT bytea type, o PostgreSQL retorna valores de byte octais prefixados por \ (ex.: \032). Usuários devem converter de volta para binários por si mesmos.

Esta função exige PostgreSQL 7.2 ou superior. Com PostgreSQL 7.2.0 e 7.2.1, o tipo de dados bytea deve ser criado quando você habilita o suporte a multi-byte. Por exemplo, INSERT INTO tabela_teste (imagem) VALUES ('$imagem_escaped'::bytea); PostgreSQL 7.2.2 ou superior não precisa de coerção (cast). A exceção é quando a codificação de caracteres do cliente e do backend não combinam, então pode haver erro de fluxo de multi-byte. O usuário deve fazer a coerção (cast) para bytea para evitar este erro.

Veja também: pg_unescape_bytea() e pg_escape_string().

pg_end_copy
pg_escape_string
PostgreSQL Funções


Gera string para o tipo text/char

pg_escape_bytea
pg_execute
PostgreSQL Funções
PHP Manual

pg_escape_string

(PHP 4 >= 4.2.0, PHP 5)

pg_escape_string — Gera string para o tipo text/char

Descrição

string pg_escape_string ( string $data )

pg_escape_string() gera strings do tipo text/chat. Retorna uma string com escapes para PostgreSQL. O uso desta função é recomendado no lugar de addslashes().

Nota:

Esta função exige PostgreSQL 7.2 ou superior.

Veja também pg_escape_bytea()

pg_escape_bytea
pg_execute
PostgreSQL Funções


Sends a request to execute a prepared statement with given parameters, and waits for the result.

pg_escape_string
pg_fetch_all_columns
PostgreSQL Funções
PHP Manual

pg_execute

(PHP 5 >= 5.1.0)

pg_execute — Sends a request to execute a prepared statement with given parameters, and waits for the result.

Descrição

resource pg_execute ([ resource $connection ], string $stmtname , array $params )

Sends a request to execute a prepared statement with given parameters, and waits for the result.

pg_execute() is like pg_query_params(), but the command to be executed is specified by naming a previously-prepared statement, instead of giving a query string. This feature allows commands that will be used repeatedly to be parsed and planned just once, rather than each time they are executed. The statement must have been prepared previously in the current session. pg_execute() is supported only against PostgreSQL 7.4 or higher connections; it will fail when using earlier versions.

The parameters are identical to pg_query_params(), except that the name of a prepared statement is given instead of a query string.

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

stmtname

The name of the prepared statement to execute. if "" is specified, then the unnamed statement is executed. The name must have been previously prepared using pg_prepare(), pg_send_prepare() or a PREPARE SQL command.

params

An array of parameter values to substitute for the $1, $2, etc. placeholders in the original prepared query string. The number of elements in the array must match the number of placeholders.

Aviso

Elements are converted to strings by calling this function.

Valor Retornado

A query result resource on success or FALSE on failure.

Exemplos

Exemplo #1 Using pg_execute()

<?php
// Connect to a database named "mary"
$dbconn = pg_connect("dbname=mary");

// Prepare a query for execution
$result = pg_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');

// Execute the prepared query.  Note that it is not necessary to escape
// the string "Joe's Widgets" in any way
$result = pg_execute($dbconn, "my_query", array("Joe's Widgets"));

// Execute the same prepared query, this time with a different parameter
$result = pg_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));

?>

Veja Também

  • pg_prepare() - Submits a request to create a prepared statement with the given parameters, and waits for completion.
  • pg_send_prepare() - Sends a request to create a prepared statement with the given parameters, without waiting for completion.
  • pg_query_params() - Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.

pg_escape_string
pg_fetch_all_columns
PostgreSQL Funções


Fetches all rows in a particular result column as an array

pg_execute
pg_fetch_all
PostgreSQL Funções
PHP Manual

pg_fetch_all_columns

(PHP 5 >= 5.1.0)

pg_fetch_all_columns — Fetches all rows in a particular result column as an array

Descrição

array pg_fetch_all_columns ( resource $result [, int $column = 0 ] )

pg_fetch_all_columns() returns an array that contains all rows (records) in a particular column of the result resource.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Parâmetros

result

PostgreSQL query result resource, returned by pg_query(), pg_query_params() or pg_execute() (among others).

column

Column number, zero-based, to be retrieved from the result resource. Defaults to the first column if not specified.

Valor Retornado

An array with all values in the result column.

FALSE is returned if column is larger than the number of columns in the result, or on any other error.

Exemplos

Exemplo #1 pg_fetch_all_columns() example

<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
  echo "An error occured.\n";
  exit;
}

$result = pg_query($conn, "SELECT title, name, address FROM authors");
if (!$result) {
  echo "An error occured.\n";
  exit;
}

// Get an array of all author names
$arr = pg_fetch_all_columns($result, 1);

var_dump($arr);

?>

Veja Também

  • pg_fetch_all() - Retorna todas as linhas (registros) como um array

pg_execute
pg_fetch_all
PostgreSQL Funções


Retorna todas as linhas (registros) como um array

pg_fetch_all_columns
pg_fetch_array
PostgreSQL Funções
PHP Manual

pg_fetch_all

(PHP 4 >= 4.3.0, PHP 5)

pg_fetch_all — Retorna todas as linhas (registros) como um array

Descrição

array pg_fetch_all ( resource $result )

pg_fetch_all() retorna uma array que contém todas as linhas (registros) do recurso (resourse) de resultado. Retorna FALSE, se não existem mais registros.

Exemplo #1 Retornando linhas (registros) no PostgreSQL

<?php
$conn = pg_pconnect("dbname=escritor");
if (!$conn) {
    echo "Ocorreu um erro!\n";
    exit;
}

$result = pg_query($conn, "SELECT * FROM authors");
if (!$result) {
    echo "Ocorreu um erro!\n";
    exit;
}

$arr = pg_fetch_all($result, 0, PGSQL_NUM);

var_dump($arr);

?>

 Veja também pg_fetch_row(),
pg_fetch_array(),
pg_fetch_object() e
pg_fetch_result().

pg_fetch_all_columns
pg_fetch_array
PostgreSQL Funções


Retorna uma linha (registro) como um array

pg_fetch_all
pg_fetch_assoc
PostgreSQL Funções
PHP Manual

pg_fetch_array

(PHP 4, PHP 5)

pg_fetch_array — Retorna uma linha (registro) como um array

Descrição

array pg_fetch_array ( resource $result [, int $row [, int $result_type ]] )

pg_fetch_array() retorna um array que corresponde à linha (registro). Retorna FALSE se não existem mais linhas.

pg_fetch_array() é uma versão extendida de pg_fetch_row(). Além de armazenar os dados em índices numéricos (índice) no array resultante, também armazena os dados em chaves associativas (nome do campo) por padrão.

row é o número da linha (registro) a ser recuperado. A primeira linha é 0.

result_type é um parâmetro opcional que controla como o valor de retorno é iniciado. result_type é uma constante e pode ter os seguintes valores: PGSQL_ASSOC, PGSQL_NUM, e PGSQL_BOTH. pg_fetch_array() retorna um array associativo que tem o nome de campo como chave para PGSQL_ASSOC. Índice de campo como chave com PGSQL_NUM e ambos nome/índice numérico como chave com PGSQL_BOTH. O valor padrão é PGSQL_BOTH.

Nota:

O parâmetro result_type foi adicionado no PHP 4.0.

pg_fetch_array() NÃO é significativamente mais lenta que pg_fetch_row(), e ainda fornece uma significativa facilidade de uso.

Exemplo #1 Retornando linhas (registros) no PostgreSQL

<?php
$conn = pg_pconnect("dbname=publicar");
if (!$conn) {
    echo "Um erro ocorreu.\n";
    exit;
}

$result = pg_query($conn, "SELECT * FROM autores");
if (!$result) {
    echo "Um erro ororreu.\n";
    exit;
}

$arr = pg_fetch_array($result, 0, PGSQL_NUM);
echo $arr[0] . " <- array\n";

$arr = pg_fetch_array($result, 1, PGSQL_ASSOC);
echo $arr["autor"] . " <- array\n";

?>

Nota:

A partir do PHP 4.1.0, row tornou-se opcional. A chamada pg_fetch_array() irá incrementar o contador de linha interno em 1.

Veja também pg_fetch_row(), pg_fetch_object() e pg_fetch_result().

pg_fetch_all
pg_fetch_assoc
PostgreSQL Funções


Retorna uma linha (registro) como uma matriz associativa

pg_fetch_array
pg_fetch_object
PostgreSQL Funções
PHP Manual

pg_fetch_assoc

(PHP 4 >= 4.3.0, PHP 5)

pg_fetch_assoc — Retorna uma linha (registro) como uma matriz associativa

Descrição

array pg_fetch_assoc ( resource $result [, int $row ] )

pg_fetch_assoc() retorna um array associativo que corresponde à linha (registro) recuperado. Retorna FALSE, se não houver mais registros.

pg_fetch_assoc() é equivalente a usar pg_fetch_row() com PGSQL_ASSOC para o terceiro parâmetro. Ela guarda dados em matrizes com chaves associativas (nome do campo). Se você precisar utilizar os índices numéricos use pg_fetch_row().

row é o número da linha (registro) a ser recuperado. A primeira linha é 0.

pg_fetch_assoc() NÃO é significativamente mais lenta que pg_fetch_row(), e ainda fornece uma significativa facilidade de uso.

Exemplo #1 Retornando linhas (registros) no PostgreSQL

<?php
$conn = pg_pconnect("dbname=revista");
if (!$conn) {
    echo "Ocorreu um erro.\n";
    exit;
}

$result = pg_query($conn, "SELECT * FROM authors");
if (!$result) {
    echo "Ocorreu um erro.\n";
    exit;
}

while ($row = pg_fetch_assoc($result)) {
      echo $row['id'];
      echo $row['author'];
      echo $row['email'];
}

?>

Veja também pg_fetch_row(),
pg_fetch_array(),
pg_fetch_object() e
pg_fetch_result().

pg_fetch_array
pg_fetch_object
PostgreSQL Funções


Retorna uma linha (registro) como um objeto

pg_fetch_assoc
pg_fetch_result
PostgreSQL Funções
PHP Manual

pg_fetch_object

(PHP 4, PHP 5)

pg_fetch_object — Retorna uma linha (registro) como um objeto

Descrição

objeto pg_fetch_object ( resource $result , int $row [, int $result_type ] )

pg_fetch_object() retorna um objeto com propriedades que correspondem à linha recuperada. Retorna FALSE se não existem mais linhas ou no caso de erro.

pg_fetch_object() é similar a pg_fetch_array(), com uma diferença - um objeto é retornado, ao invés de um array. Indiretamente, isto significa que você pode acessar os dados somente através dos nomes de campos, e não por seus índices (números são nomes inválidos de propriedades).

row é o número da linha (registro) a ser recuperada. A primeira linha é 0.

Em termos de performance, a função é idêntica a pg_fetch_array(), e quase tão rápida quanto pg_fetch_row() (a diferença é insignificante).

Nota:

A partir do PHP 4.1.0, row é opcional.

A partir do PHP 4.3.0, result_type tem PGSQL_ASSOC como valor padrão, enquanto em outras versões mais antigas o padrão é PGSQL_BOTH. Não há utilidade para a propriedade numérica, já que nomes de propriedades numéricas são inválidas em PHP.

O parâmetro result_type deverá ser removido em versões futuras.

Exemplo #1 Postgres fetch object

<?php

$database = "store";

$db_conn = pg_connect("host=localhost port=5432 dbname=$database");
if (!$db_conn) {
    echo "Failed connecting to postgres database $database\n";
    exit;
}

$qu = pg_query($db_conn, "SELECT * FROM books ORDER BY author");

$row = 0; // postgres needs a row counter

while ($data = pg_fetch_object($qu, $row)) {
    echo $data->author . " (";
    echo $data->year . "): ";
    echo $data->title . "<br />";
    $row++;
}

pg_free_result ($qu);
pg_close ($db_conn);
?>

Nota:

A partir do PHP 4.1.0, row tornou-se opcional. Ao chamar pg_fetch_object() o contador de linhas interno será acrescentado de 1.

Veja também
pg_query(),
pg_fetch_array(),
pg_fetch_row() e
pg_fetch_result().

pg_fetch_assoc
pg_fetch_result
PostgreSQL Funções


Retorna valores a partir de um recurso (resource) de resultado

pg_fetch_object
pg_fetch_row
PostgreSQL Funções
PHP Manual

pg_fetch_result

(PHP 4 >= 4.2.0, PHP 5)

pg_fetch_result — Retorna valores a partir de um recurso (resource) de resultado

Descrição

misto pg_fetch_result ( resource $result , int $row , mixed $field )

pg_fetch_result() retorna valores a partir de um recurso (resource) de resultado result criado por pg_query(). row é um inteiro. field é um nome de campo (string) ou um índice de campo (inteiro). row e field especificam que célula da tabela deve ser recuperada. A numeração de linhas começa de 0. Ao invés de nomear o campo, você pode usar o índice numérico de campo sem aspas. Índices de campo iniciam-se em 0.

PostgreSQL tem muitos tipos internos mas apenas os tipos básicos são suportados. Todas as formas de tipo integer são retornadas como valores integer. Todas as formas de tipos reais (ponto flutuante) são retornados como valores float. Boolean é retornado como "t" ou "f". Todos os outros tipos, incluindo arrays, são retornados como strings formatadas na mesma maneira padrão que o PostgreSQL retornaria com o programa psql.

pg_fetch_object
pg_fetch_row
PostgreSQL Funções


Retorna uma linha como um array enumerado

pg_fetch_result
pg_field_is_null
PostgreSQL Funções
PHP Manual

pg_fetch_row

(PHP 4, PHP 5)

pg_fetch_row — Retorna uma linha como um array enumerado

Descrição

array pg_fetch_row ( resource $result , int $row )

pg_fetch_row() retorna uma linha de dados a partir do resultado associado com o recurso (resource) de resultado result. A linha (registro) é recuperada como um array. Cada coluna do resultado é armazenada em um índice do array, iniciando-se no índice 0.

Retorna um array que corresponde à linha carregada, ou FALSE se não existem mais linhas.

Exemplo #1 Retornando linhas (registros) no PostgreSQL

<?php
$conn = pg_pconnect("dbname=editora");
if (!$conn) {
    echo "Um erro ocorreu.\n";
    exit;
}

$result = pg_query($conn, "SELECT * FROM autores");
if (!$result) {
    echo "Um erro ocorreu.\n";
    exit;
}

while ($row=pg_fetch_row($result,$i)) {
  for($j=0; $j < count($row); $j++) {
     echo $row[$j] . "&nbsp;";
  }

  echo "<br />\n";

}

?>

Nota:

A partir do PHP 4.1.0, row tornou-se opcional. Ao chamar pg_fetch_row(), o contador de linha interno será incrementado em 1.

Veja também pg_query(),
pg_fetch_array(),
pg_fetch_object() e
pg_fetch_result().

pg_fetch_result
pg_field_is_null
PostgreSQL Funções


Testa se o campo é NULL

pg_fetch_row
pg_field_name
PostgreSQL Funções
PHP Manual

pg_field_is_null

(PHP 4 >= 4.2.0, PHP 5)

pg_field_is_null — Testa se o campo é NULL

Descrição

int pg_field_is_null ( resource $result , int $row , mixed $field )

pg_field_is_null() testa se um campo é NULL ou não. Retorna 1 se o campo na linha dada é NULL. Retorna 0 se o campo na linha dada NÃO é NULL. O campo pode ser especificado como um índice de coluna (número) ou como o nome de um campo (string). A numeração de linhas inicia-se em 0.

Exemplo #1 pg_field_is_null() example

<?php
    $dbconn = pg_connect("dbname=publisher") or die ("Não foi possível conectar");
    $res = pg_query($dbconn, "select * from authors where author = 'Orwell'");
    if ($res) {
        if (pg_field_is_null($res, 0, "ano") == 1) {
            echo "O valor do campo ano é null.\n";
        }
        if (pg_field_is_null($res, 0, "ano") == 0) {
            echo "O valor do campo ano não é null.\n";
      }
   }
?>

Nota:

Esta função era chamada pg_fieldisnull().

pg_fetch_row
pg_field_name
PostgreSQL Funções


Retorna o nome de um campo

pg_field_is_null
pg_field_num
PostgreSQL Funções
PHP Manual

pg_field_name

(PHP 4 >= 4.2.0, PHP 5)

pg_field_name — Retorna o nome de um campo

Descrição

string pg_field_name ( resource $result , int $field_number )

pg_field_name() retorna o nome do campo ocupando o campo de número igual a field_number no recurso (resource) de resultado result. A numeração de campo inicia-se em 0.

Exemplo #1 Getting informations about fields

<?php
    $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

    $res = pg_query($dbconn, "select * from authors where author = 'Orwell'");
    $i = pg_num_fields($res);
    for ($j = 0; $j < $i; $j++) {
        echo "column $j\n";
        $fieldname = pg_field_name($res, $j);
        echo "fieldname: $fieldname\n";
        echo "printed length: ".pg_field_prtlen($res, $fieldname)." characters\n";
        echo "storage length: ".pg_field_size($res, $j)." bytes\n";
        echo "field type: ".pg_field_type($res, $j)." \n\n";
}
?>

The above example would produce the following output:

column 0
fieldname: author
printed length: 6 characters
storage length: -1 bytes
field type: varchar

column 1
fieldname: year
printed length: 4 characters
storage length: 2 bytes
field type: int2

column 2
fieldname: title
printed length: 24 characters
storage length: -1 bytes
field type: varchar

Nota:

Esta função era chamada pg_fieldname().

Veja também pg_field_num().

pg_field_is_null
pg_field_num
PostgreSQL Funções


Retorna o número do campo referido

pg_field_name
pg_field_prtlen
PostgreSQL Funções
PHP Manual

pg_field_num

(PHP 4 >= 4.2.0, PHP 5)

pg_field_num — Retorna o número do campo referido

Descrição

int pg_field_num ( resource $result , string $field_name )

pg_field_num() irá retornar o número da vaga (slot) da coluna (campo) que corresponde a field_name no recurso (resource) de resultado result. A numeração de campo inicia-se em 0. Esta função retornará -1 em caso de erro.

Veja o exemplo dado na pagina pg_field_name().

Nota:

Esta função era chamada pg_fieldnum().

Veja também pg_field_name().

pg_field_name
pg_field_prtlen
PostgreSQL Funções


Retorna o comprimento impresso

pg_field_num
pg_field_size
PostgreSQL Funções
PHP Manual

pg_field_prtlen

(PHP 4 >= 4.2.0, PHP 5)

pg_field_prtlen — Retorna o comprimento impresso

Descrição

int pg_field_prtlen ( resource $result , int $row_number , string $field_name )

pg_field_prtlen() retorna o comprimento atual impresso (número de caracteres) de um valor especificado em um recurso (resource) de resultado result. A numeração de linha inicia-se em 0. Esta função retornará -1 em caso de erro.

Veja o exemplo dado na pagina pg_field_name().

Nota:

Esta função era chamada pg_fieldprtlen().

Veja também pg_field_size().

pg_field_num
pg_field_size
PostgreSQL Funções


Retorna o tamanho de armazenamento interno de um campo

pg_field_prtlen
pg_field_table
PostgreSQL Funções
PHP Manual

pg_field_size

(PHP 4 >= 4.2.0, PHP 5)

pg_field_size — Retorna o tamanho de armazenamento interno de um campo

Descrição

int pg_field_size ( resource $result , int $field_number )

pg_field_size() retorna o tamanho de armazenamento interno (em bytes) do número de campo do recurso (resource) de resultado result. A numeração de campo inicia-se em 0. Um campo de tamanho -1 indica um campo de tamanho variável. Esta função retornará FALSE em caso de erro.

Veja o exemplo dado na pagina pg_field_name().

Nota:

Esta função era chamada pg_fieldsize().

Veja também pg_field_prtlen() e pg_field_type().

pg_field_prtlen
pg_field_table
PostgreSQL Funções


Returns the name or oid of the tables field

pg_field_size
pg_field_type_oid
PostgreSQL Funções
PHP Manual

pg_field_table

(PHP 5 >= 5.2.0)

pg_field_table — Returns the name or oid of the tables field

Descrição

mixed pg_field_table ( resource $result , int $field_number [, bool $oid_only = false ] )

pg_field_table() returns the name of the table that field belongs to, or the table's oid if oid_only is TRUE.

Parâmetros

result

PostgreSQL query result resource, returned by pg_query(), pg_query_params() or pg_execute() (among others).

field_number

Field number, starting from 0.

oid_only

By default the tables name that field belongs to is returned but if oid_only is set to TRUE, then the oid will instead be returned.

Valor Retornado

On success either the fields table name or oid. Or, FALSE on failure.

Exemplos

Exemplo #1 Getting table information about a field

<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");

$res = pg_query($dbconn, "SELECT bar FROM foo");

echo pg_field_table($res, 0);
echo pg_field_table($res, 0, true);

$res = pg_query($dbconn, "SELECT version()");
var_dump(pg_field_table($res, 0));
?>

O exemplo acima irá imprimir algo similar a:

foo
14379580

bool(false)

Notas

Nota:

Returning the oid is much faster than returning the table name because fetching the table name requires a query to the database system table.

Veja Também

  • pg_field_name() - Retorna o nome de um campo
  • pg_field_type() - Retorna o nome do tipo para o campo de nome correspondente

pg_field_size
pg_field_type_oid
PostgreSQL Funções


Returns the type ID (OID) for the corresponding field number

pg_field_table
pg_field_type
PostgreSQL Funções
PHP Manual

pg_field_type_oid

(PHP 5 >= 5.1.0)

pg_field_type_oid — Returns the type ID (OID) for the corresponding field number

Descrição

int pg_field_type_oid ( resource $result , int $field_number )

pg_field_type_oid() returns an integer containing the OID of the base type of the given field_number in the given PostgreSQL result resource.

You can get more information about the field type by querying PostgreSQL's pg_type system table using the OID obtained with this function. The PostgreSQL format_type() function will convert a type OID into an SQL standard type name.

Nota:

If the field uses a PostgreSQL domain (rather than a basic type), it is the OID of the domain's underlying type that is returned, rather than the OID of the domain itself.

Parâmetros

result

PostgreSQL query result resource, returned by pg_query(), pg_query_params() or pg_execute() (among others).

field_number

Field number, starting from 0.

Valor Retornado

The OID of the field's base type. FALSE is returned on error.

Exemplos

Exemplo #1 Getting information about fields

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  // Assume 'title' is a varchar type
  $res = pg_query($dbconn, "select title from authors where author = 'Orwell'");

  echo "Title field type OID: ", pg_field_type_oid($res, 0);
?>

O exemplo acima irá imprimir:

Title field type OID: 1043

Veja Também

  • pg_field_type() - Retorna o nome do tipo para o campo de nome correspondente
  • pg_field_prtlen() - Retorna o comprimento impresso
  • pg_field_name() - Retorna o nome de um campo

pg_field_table
pg_field_type
PostgreSQL Funções


Retorna o nome do tipo para o campo de nome correspondente

pg_field_type_oid
pg_free_result
PostgreSQL Funções
PHP Manual

pg_field_type

(PHP 4 >= 4.2.0, PHP 5)

pg_field_type — Retorna o nome do tipo para o campo de nome correspondente

Descrição

string pg_field_type ( resource $result , int $field_number )

pg_field_type() retorna uma string contendo o nome do tipo do campo de número field_number dado no recurso (resource) de resultado result. A numeração de campo inicia-se em 0.

Veja o exemplo dado na pagina pg_field_name().

Nota:

Esta função era chamada pg_fieldtype().

Veja também pg_field_prtlen() e pg_field_type().

pg_field_type_oid
pg_free_result
PostgreSQL Funções


Libera a memória usada pelo resultado

pg_field_type
pg_get_notify
PostgreSQL Funções
PHP Manual

pg_free_result

(PHP 4 >= 4.2.0, PHP 5)

pg_free_result — Libera a memória usada pelo resultado

Descrição

bool pg_free_result ( resource $result )

pg_free_result() precisa ser usada apenas se você está preocupado em usar muita memória enquanto seu script está rodando. Todos os resultados serão liberados da memória automaticamente assim que o script terminar de executar. Mas, se você tem certeza que não precisará mais dos dados do resultado em um script, você pode chamar pg_free_result() com o recurso (resource) de resultado result como argumento e a memória ocupada pelo resultado associado será liberada. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

Esta função era chamada pg_field_len().

Veja também pg_query().

pg_field_type
pg_get_notify
PostgreSQL Funções


Gets SQL NOTIFY message

pg_free_result
pg_get_pid
PostgreSQL Funções
PHP Manual

pg_get_notify

(PHP 4 >= 4.3.0, PHP 5)

pg_get_notify — Gets SQL NOTIFY message

Descrição

array pg_get_notify ( resource $connection [, int $result_type ] )

pg_get_notify() gets notifications generated by a NOTIFY SQL command. To receive notifications, the LISTEN SQL command must be issued.

Parâmetros

connection

PostgreSQL database connection resource.

result_type

An optional parameter that controls how the returned array is indexed. result_type is a constant and can take the following values: PGSQL_ASSOC, PGSQL_NUM and PGSQL_BOTH. Using PGSQL_NUM, pg_get_notify() will return an array with numerical indices, using PGSQL_ASSOC it will return only associative indices while PGSQL_BOTH, the default, will return both numerical and associative indices.

Valor Retornado

An array containing the NOTIFY message name and backend PID. Otherwise if no NOTIFY is waiting, then FALSE is returned.

Exemplos

Exemplo #1 PostgreSQL NOTIFY message

<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
  echo "An error occured.\n";
  exit;
}

// Listen 'author_updated' message from other processes
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!$notify) {
  echo "No messages\n";
} else {
  print_r($notify);
}
?>

Veja Também

  • pg_get_pid() - Gets the backend's process ID

pg_free_result
pg_get_pid
PostgreSQL Funções


Gets the backend's process ID

pg_get_notify
pg_get_result
PostgreSQL Funções
PHP Manual

pg_get_pid

(PHP 4 >= 4.3.0, PHP 5)

pg_get_pid — Gets the backend's process ID

Descrição

int pg_get_pid ( resource $connection )

pg_get_pid() gets the backend's (database server process) PID. The PID is useful to determine whether or not a NOTIFY message received via pg_get_notify() is sent from another process or not.

Parâmetros

connection

PostgreSQL database connection resource.

Valor Retornado

The backend database process ID.

Exemplos

Exemplo #1 PostgreSQL backend PID

<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
  echo "An error occured.\n";
  exit;
}

// Backend process PID. Use PID with pg_get_notify()
$pid = pg_get_pid($conn);
?>

Veja Também

  • pg_get_notify() - Gets SQL NOTIFY message

pg_get_notify
pg_get_result
PostgreSQL Funções


Retorna o resultado de uma consulta (query) assíncrona

pg_get_pid
pg_host
PostgreSQL Funções
PHP Manual

pg_get_result

(PHP 4 >= 4.2.0, PHP 5)

pg_get_result — Retorna o resultado de uma consulta (query) assíncrona

Descrição

resource pg_get_result ([ resource $connection ] )

pg_get_result() retorna o recurso (resource) de resultado de uma consulta (query) executada por ps_send_query(). pg_send_query() pode enviar múltiplas consultas (queries) ao servidor PostgreSQL e pg_get_result() é usada para carregar os resultados das consultas, um por um. Retorna o recurso (resource) de resultado. Se não houverem mais resultados, retorna FALSE.

pg_get_pid
pg_host
PostgreSQL Funções


Retorna o nome da máquina associada a uma conexão

pg_get_result
pg_insert
PostgreSQL Funções
PHP Manual

pg_host

(PHP 4, PHP 5)

pg_host — Retorna o nome da máquina associada a uma conexão

Descrição

string pg_host ( resource $connection )

pg_host() retorna o nome da máquina com a qual o recurso (resource) de conexão connection está conectado.

Veja também pg_connect() e pg_pconnect().

pg_get_result
pg_insert
PostgreSQL Funções


Insere um array na tabela

pg_host
pg_last_error
PostgreSQL Funções
PHP Manual

pg_insert

(PHP 4 >= 4.3.0, PHP 5)

pg_insert — Insere um array na tabela

Descrição

bool pg_insert ( resource $connection , string $table_name , array $assoc_array [, int $options ] )

pg_insert() insere os valores de assoc_array na tabela especificada por table_name. table_name deve ter no mínimo tantas colunas quanto forem os elementos em assoc_array. Os nomes dos campos assim como os valores em table_name devem ser iguais aos índices e valores de assoc_array. Retorna TRUE em caso de sucesso ou FALSE em falhas. Se o parâmetro options for especificado, pg_insert() é aplicado em assoc_array com a opção especificada.

Exemplo #1 pg_insert

<?php
    $db = pg_connect ('dbname=meubanco');
    // Isto é seguro uma vez que $_POST é convertido automaticamente
    $res = pg_insert($db, 'post_log', $_POST);
    if ($res) {
        echo "Dados POST arquivados com sucesso\n";
    }
    else {
        echo "O usuário deve ter inserido entradas inválidas\n";
    }
?>

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_convert().

pg_host
pg_last_error
PostgreSQL Funções


Retorna a string da última mensagem de erro de uma conexão

pg_insert
pg_last_notice
PostgreSQL Funções
PHP Manual

pg_last_error

(PHP 4 >= 4.2.0, PHP 5)

pg_last_error — Retorna a string da última mensagem de erro de uma conexão

Descrição

string pg_last_error ( resource $connection )

pg_last_error() retorna a última mensagem de erro para a conexão representada por connection.

As mensagens de erro podem ser sobrescritas por chamadas internas ao PostgreSQL(libpq). Se múltiplos erros ocorrerem dentro de um módulo de função do PostgreSQL, pode não retornar a mensagem de erro correta.

Use pg_result_error(),
pg_result_status() e
pg_connection_status() para um melhor tratamento de
erros.

Nota:

Esta função era chamada pg_errormessage().

Veja também pg_result_error().

pg_insert
pg_last_notice
PostgreSQL Funções


Retorna a última notificação do servidor PostgreSQL

pg_last_error
pg_last_oid
PostgreSQL Funções
PHP Manual

pg_last_notice

(PHP 4 >= 4.0.6, PHP 5)

pg_last_notice — Retorna a última notificação do servidor PostgreSQL

Descrição

string pg_last_notice ( resource $connection )

pg_last_notice() retorna a última notificação do servidor PostgreSQL especificada por connection. O servidor PostgreSQL envia notificações em diversas situações, por exemplo, se as transações não puderem continuar. Com pg_last_notice() você pode evitar a chamada de consultas (queries) inúteis, checando quando a notificação está relacionada ou não com a transação.

Aviso

Esta função é EXPERIMENTAL e ainda não está completamente implementada. pg_last_notice() foi adicionada no PHP 4.0.6. Entretanto o PHP 4.0.6 tem problemas com a manipulação de mensagens. O uso do módulo PostgreSQL com o PHP 4.0.6 não é recomendada, mesmo se você não estiver usando pg_last_notice().

Esta função está totalmente implementada no PHP 4.3.0. Versões do PHP mais recentes que a 4.3.0 ignoram o parâmetro de conexão com o banco de dados.

O rastreamento de notificações pode ser definido como opcional definindo 1 para a diretiva pgsql.ignore_notice no php.ini do PHP 4.3.0.

O arquivamento (log) de mensagems pode ser pode ser definido como opcional mudando para 0 a diretiva pgsql.log_notice no php.ini do PHP 4.3.0. A não ser que pgsql.ignore_notice estiver definida para 0, notificações não podem ser arquivadas.

Veja também pg_query() e pg_last_error().

pg_last_error
pg_last_oid
PostgreSQL Funções


Retorna o último oid do objeto

pg_last_notice
pg_lo_close
PostgreSQL Funções
PHP Manual

pg_last_oid

(PHP 4 >= 4.2.0, PHP 5)

pg_last_oid — Retorna o último oid do objeto

Descrição

int pg_last_oid ( resource $result )

pg_last_oid() é usado para recuperar o oid designado a uma linha (registro) se o recurso (resource) de resultado é usado a partir do último comando enviado através de pq_query() se este comando era um INSERT do SQL. Retorna um inteiro positivo se havia um oid válido. Retorna FALSE se um erro ocorrer ou o último comando enviado através de pg_query() não foi INSERT ou se o INSERT falhou.

O campo OID tornou-se opcional a partir do PostgreSQL 7.2. Quando um campo OID não é definido em uma tabela, o programador deve usar pg_result_status() para checar se o registro foi inserido com sucesso ou não.

Nota:

Esta função era chamada pg_getlastoid().

Veja também pg_query() e pg_result_status()

pg_last_notice
pg_lo_close
PostgreSQL Funções


Fecha um objeto grande (large object)

pg_last_oid
pg_lo_create
PostgreSQL Funções
PHP Manual

pg_lo_close

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_close — Fecha um objeto grande (large object)

Descrição

bool pg_lo_close ( resource $large_object )

pg_lo_close() fecha um Objeto Grande (Large Object, daí vem o "lo" que integra o nome da função). large_object é um recurso (resource) para o objeto grande gerado a partir de pg_lo_open().

Para usar a interface de objetos grandes (lo), é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_loclose().

Veja também pg_lo_open(),
pg_lo_create() e
pg_lo_import().

pg_last_oid
pg_lo_create
PostgreSQL Funções


Cria um objeto grande (large object)

pg_lo_close
pg_lo_export
PostgreSQL Funções
PHP Manual

pg_lo_create

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_create — Cria um objeto grande (large object)

Descrição

int pg_lo_create ( resource $connection )

pg_lo_create() cria um Objeto Grande (Large Object) e retorna o seu oid. connection especifica uma conexão a um banco de dados válida aberta por pg_connect() ou pg_pconnect(). Os modos de acesso INV_READ, INV_WRITE e INV_ARCHIVE não são suportados, o objeto é criado sempre com acesso a leitura e escrita. INV_ARCHIVE foi removido do próprio PostgreSQL (a partir da 6.3). Retorna o oid do objeto. Retorna FALSE se um erro ocorrer.

Para usar a interface de objetos grandes (lo), é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_locreate().

pg_lo_close
pg_lo_export
PostgreSQL Funções


Exporta um objeto grande (large object) para um arquivo

pg_lo_create
pg_lo_import
PostgreSQL Funções
PHP Manual

pg_lo_export

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_export — Exporta um objeto grande (large object) para um arquivo

Descrição

bool pg_lo_export ( int $oid , string $pathname [, resource $connection ] )

O argumento oid especifica o oid do objeto grande (large object) a exportar e o argumento pathname especifica o caminho até o arquivo. Retorna FALSE se um erro ocorrer, caso contrário retorna TRUE.

Para usar a interface de objetos grandes (lo), é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_loexport().

Veja também pg_lo_import().

pg_lo_create
pg_lo_import
PostgreSQL Funções


Importa um objeto grande (large object) a partir de um arquivo

pg_lo_export
pg_lo_open
PostgreSQL Funções
PHP Manual

pg_lo_import

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_import — Importa um objeto grande (large object) a partir de um arquivo

Descrição

int pg_lo_import ([ resource $connection ], string $pathname )

Em versões anteriores a 4.2.0, a sintaxe desta função é diferente, veja a seguinte definição:

int pg_lo_import ( string $pathname [, resource $connection ] )

O argumento pathname especifica o caminho do arquivo a ser importado como um objeto grande (large object). Retorna FALSE se um erro ocorrer, caso contrário, retorna o oid do objeto recém criado.

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Nota:

Esta função era chamada pg_loimport().

Veja também pg_lo_export() e pg_lo_open().

pg_lo_export
pg_lo_open
PostgreSQL Funções


Abre um objeto grande (large object)

pg_lo_import
pg_lo_read_all
PostgreSQL Funções
PHP Manual

pg_lo_open

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_open — Abre um objeto grande (large object)

Descrição

resource pg_lo_open ( resource $connection , int $oid , string $mode )

pg_lo_open() abre um Objeto Grande (Large Object em inglês, daí o "lo"). O recurso (resource) encapsula informações sobre a conexão. oid especifica um oid de objeto grande válido e o parâmetro mode pode ser "r", "w" ou "rw". A função retorna FALSE se houver algum erro.

Aviso

Não feche a conexão com o banco de dados sem antes fechar a conexão com o objeto grande.

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_loopen().

Veja também pg_lo_close() e pg_lo_create().

pg_lo_import
pg_lo_read_all
PostgreSQL Funções


Lê um objeto grande (large object) inteiro e o envia diretamente para o navegador

pg_lo_open
pg_lo_read
PostgreSQL Funções
PHP Manual

pg_lo_read_all

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_read_all — Lê um objeto grande (large object) inteiro e o envia diretamente para o navegador

Descrição

int pg_lo_read_all ( resource $large_object )

pg_lo_read_all() lê um objeto grande (large object) e passa-o diretamente para o navegador depois de enviar todos os cabeçalhos pendentes. A intenção principal é enviar dados binários como imagens ou som. Retorna o número de bytes lidos ou FALSE se ocorrer algum erro.

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_loreadall().

Veja também pg_lo_read().

pg_lo_open
pg_lo_read
PostgreSQL Funções


Lê um objeto grande (large object)

pg_lo_read_all
pg_lo_seek
PostgreSQL Funções
PHP Manual

pg_lo_read

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_read — Lê um objeto grande (large object)

Descrição

string pg_lo_read ( resource $large_object , int $len )

pg_lo_read() lê o número de bytes equivalente ao valor de len de um objeto grande (large object) e retorna-o como uma string. large_object especifica um recurso (resource) válido de objeto e len especifica o tamanho máximo permitido do segmento do objeto grande. Retorna FALSE se algum erro acontecer.

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_loread().

Veja também pg_lo_read_all().

pg_lo_read_all
pg_lo_seek
PostgreSQL Funções


Procura uma posição em um objeto grande (large object)

pg_lo_read
pg_lo_tell
PostgreSQL Funções
PHP Manual

pg_lo_seek

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_seek — Procura uma posição em um objeto grande (large object)

Descrição

bool pg_lo_seek ( resource $large_object , int $offset [, int $whence ] )

pg_lo_seek() procura uma posição em um recurso (resource) de um objeto grande (large objet). whence pode ser PGSQL_SEEK_SET, PGSQL_SSEK_CUR ou PGSQL_SEEK_END.

Veja também pg_lo_tell().

pg_lo_read
pg_lo_tell
PostgreSQL Funções


Retorna a posição atual de um objeto grande (large object)

pg_lo_seek
pg_lo_unlink
PostgreSQL Funções
PHP Manual

pg_lo_tell

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_tell — Retorna a posição atual de um objeto grande (large object)

Descrição

int pg_lo_tell ( resource $large_object )

pg_lo_tell() retorna a posição atual (deslocamento a partir do início do objeto grande).

Veja também pg_lo_seek().

pg_lo_seek
pg_lo_unlink
PostgreSQL Funções


Remove um objeto grande (large object)

pg_lo_tell
pg_lo_write
PostgreSQL Funções
PHP Manual

pg_lo_unlink

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_unlink — Remove um objeto grande (large object)

Descrição

bool pg_lo_unlink ( resource $connection , int $oid )

pg_lo_unlink() remove um objeto grande (large object) com um determinado oid. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_lo_unlink().

Veja também pg_lo_create() e pg_lo_import().

pg_lo_tell
pg_lo_write
PostgreSQL Funções


Escreve em um objeto grande (large object)

pg_lo_unlink
pg_meta_data
PostgreSQL Funções
PHP Manual

pg_lo_write

(PHP 4 >= 4.2.0, PHP 5)

pg_lo_write — Escreve em um objeto grande (large object)

Descrição

int pg_lo_write ( resource $large_object , string $data )

pg_lo_write() escreve em um objeto grande (large object) a partir de uma variável data e retorna o número de bytes escritos, ou FALSE em caso de erro. large_object é um recurso (resource) de objeto grande criado a partir de pg_lo_open().

Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.

Nota:

Esta função era chamada pg_lowrite().

Veja também pg_lo_create() e pg_lo_open().

pg_lo_unlink
pg_meta_data
PostgreSQL Funções


Retorna os metadados da tabela.

pg_lo_write
pg_num_fields
PostgreSQL Funções
PHP Manual

pg_meta_data

(PHP 4 >= 4.3.0, PHP 5)

pg_meta_data — Retorna os metadados da tabela.

Descrição

array pg_meta_data ( resource $connection , string $table_name )

pg_metadata() retorna a definição da tabela com o nome igual ao valor de table_name como um array. Se houver algum erro, retorna FALSE.

Exemplo #1 Obtendo os dados da tabela

<?php
    $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

    $meta = pg_meta_data($dbconn,'authors');
    if (is_array ($meta)) {
        echo '<pre>';
        var_dump ($meta);
        echo '</pre>';
    }
?>

O exemplo acima irá mostar a seguinte saída:

array(3) {
  ["author"]=>
  array(5) {
    ["num"]=>
    int(1)
    ["type"]=>
    string(7) "varchar"
    ["len"]=>
    int(-1)
    ["not null"]=>
    bool(false)
    ["has default"]=>
    bool(false)
  }
  ["year"]=>
  array(5) {
    ["num"]=>
    int(2)
    ["type"]=>
    string(4) "int2"
    ["len"]=>
    int(2)
    ["not null"]=>
    bool(false)
    ["has default"]=>
    bool(false)
  }
  ["title"]=>
  array(5) {
    ["num"]=>
    int(3)
    ["type"]=>
    string(7) "varchar"
    ["len"]=>
    int(-1)
    ["not null"]=>
    bool(false)
    ["has default"]=>
    bool(false)
  }
}

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_convert()

pg_lo_write
pg_num_fields
PostgreSQL Funções


Retorna o número de campos

pg_meta_data
pg_num_rows
PostgreSQL Funções
PHP Manual

pg_num_fields

(PHP 4 >= 4.2.0, PHP 5)

pg_num_fields — Retorna o número de campos

Descrição

int pg_num_fields ( resource $result )

pg_num_fields() retorna o número de campos (colunas) do recurso (resource) de resultado result. O argumento é um recurso (resource) de resultado criado a partir de pg_query(). Esta função irá retornar -1 em caso de erro.

Nota:

Esta função era chamada pg_numfields().

Veja também pg_num_rows() e pg_affected_rows().

pg_meta_data
pg_num_rows
PostgreSQL Funções


Retorna o número de linhas

pg_num_fields
pg_options
PostgreSQL Funções
PHP Manual

pg_num_rows

(PHP 4 >= 4.2.0, PHP 5)

pg_num_rows — Retorna o número de linhas

Descrição

int pg_num_rows ( resource $result )

pg_num_rows() irá retornar o número de linhas do recurso de resultado result. result é um recurso (resource) de resultado de consulta (query) feito por pg_query(). Esta função retornará -1 em caso de erro.

Nota:

Use pg_affected_rows() para obter o número de linhas afetadas por consultas do tipo INSERT, UPDATE e DELETE.

Nota:

Esta função era chamada pg_numrows().

Veja também pg_num_fields() e pg_affected_rows().

pg_num_fields
pg_options
PostgreSQL Funções


Retorna as opções associadas com a conexão

pg_num_rows
pg_parameter_status
PostgreSQL Funções
PHP Manual

pg_options

(PHP 4, PHP 5)

pg_options — Retorna as opções associadas com a conexão

Descrição

string pg_options ( resource $connection )

pg_options() retornará uma string contendo as opções especificadas no recurso (resource) de conexão PostgreSQL connection.

pg_num_rows
pg_parameter_status
PostgreSQL Funções


Looks up a current parameter setting of the server.

pg_options
pg_pconnect
PostgreSQL Funções
PHP Manual

pg_parameter_status

(PHP 5)

pg_parameter_status — Looks up a current parameter setting of the server.

Descrição

string pg_parameter_status ([ resource $connection ], string $param_name )

Looks up a current parameter setting of the server.

Certain parameter values are reported by the server automatically at connection startup or whenever their values change. pg_parameter_status() can be used to interrogate these settings. It returns the current value of a parameter if known, or FALSE if the parameter is not known.

Parameters reported as of PostgreSQL 8.0 include server_version, server_encoding, client_encoding, is_superuser, session_authorization, DateStyle, TimeZone, and integer_datetimes. (server_encoding, TimeZone, and integer_datetimes were not reported by releases before 8.0.) Note that server_version, server_encoding and integer_datetimes cannot change after PostgreSQL startup.

PostgreSQL 7.3 or lower servers do not report parameter settings, pg_parameter_status() includes logic to obtain values for server_version and client_encoding anyway. Applications are encouraged to use pg_parameter_status() rather than ad hoc code to determine these values.

Cuidado

On a pre-7.4 PostgreSQL server, changing client_encoding via SET after connection startup will not be reflected by pg_parameter_status().

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

param_name

Possible param_name values include server_version, server_encoding, client_encoding, is_superuser, session_authorization, DateStyle, TimeZone, and integer_datetimes.

Valor Retornado

A string containing the value of the parameter, FALSE on failure or invalid param_name.

Exemplos

Exemplo #1 pg_parameter_status() example

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  echo "Server encoding: ", pg_parameter_status($dbconn, "server_encoding");
?>

O exemplo acima irá imprimir:

Server encoding: SQL_ASCII

pg_options
pg_pconnect
PostgreSQL Funções


Abre uma conexão PostgreSQL persistente

pg_parameter_status
pg_ping
PostgreSQL Funções
PHP Manual

pg_pconnect

(PHP 4, PHP 5)

pg_pconnect — Abre uma conexão PostgreSQL persistente

Descrição

int pg_pconnect ( string $connection_string )

pg_pconnect() abre uma conexão a um banco de dados PostgreSQL. Retorna um recurso (resource) de conexão que é necessário para outras funções PostgreSQL.

Para uma descrição do parâmetro connection_string veja pg_connect().

Para habilitar uma conexão persistente, a diretiva pgsql.allow_persistent do php.ini deve ser definida como "On" (que é o padrão). O número máximo de conexões persistentes pode ser definida com a diretiva pgsql.max_persistent do php.ini (o padrão é -1 para sem limite). O número total de conexões pode ser definido com a diretiva pgsql.max_links do php.ini.

pg_close() não fechará links persistentes gerados por pg_pconnect().

Veja também pg_connect() e a seção sobre Conexões Persistentes para maiores informações.

pg_parameter_status
pg_ping
PostgreSQL Funções


Faz um ping na conexão com o banco de dados

pg_pconnect
pg_port
PostgreSQL Funções
PHP Manual

pg_ping

(PHP 4 >= 4.3.0, PHP 5)

pg_ping — Faz um ping na conexão com o banco de dados

Descrição

bool pg_ping ( resource $connection )

pg_ping() faz um ping na conexão com o banco de dados, tenta reconectar se a conexão foi quebrada. Retorna TRUE se a conexão está ativa, do contrário, retorna FALSE.

Exemplo #1 Exemplo pg_ping()

<?php
$conn = pg_pconnect ("dbname=publicacao");
if (!$conn) {
    echo "Ocorreu um erro.\n";
    exit;
}

if (!pg_ping($conn))
    die("Conexão quebrada\n");
?>

Veja também pg_connection_status() e pg_connection_reset().

pg_pconnect
pg_port
PostgreSQL Funções


Retorna o número da porta associada com a conexão.

pg_ping
pg_prepare
PostgreSQL Funções
PHP Manual

pg_port

(PHP 4, PHP 5)

pg_port — Retorna o número da porta associada com a conexão.

Descrição

int pg_port ( resource $connection )

pg_port() retorna o número da porta a qual o recurso de conexão PostgreSQL connection está conectado.

pg_ping
pg_prepare
PostgreSQL Funções


Submits a request to create a prepared statement with the given parameters, and waits for completion.

pg_port
pg_put_line
PostgreSQL Funções
PHP Manual

pg_prepare

(PHP 5 >= 5.1.0)

pg_prepare — Submits a request to create a prepared statement with the given parameters, and waits for completion.

Descrição

resource pg_prepare ([ resource $connection ], string $stmtname , string $query )

pg_prepare() creates a prepared statement for later execution with pg_execute() or pg_send_execute(). This feature allows commands that will be used repeatedly to be parsed and planned just once, rather than each time they are executed. pg_prepare() is supported only against PostgreSQL 7.4 or higher connections; it will fail when using earlier versions.

The function creates a prepared statement named stmtname from the query string, which must contain a single SQL command. stmtname may be "" to create an unnamed statement, in which case any pre-existing unnamed statement is automatically replaced; otherwise it is an error if the statement name is already defined in the current session. If any parameters are used, they are referred to in the query as $1, $2, etc.

Prepared statements for use with pg_prepare() can also be created by executing SQL PREPARE statements. (But pg_prepare() is more flexible since it does not require parameter types to be pre-specified.) Also, although there is no PHP function for deleting a prepared statement, the SQL DEALLOCATE statement can be used for that purpose.

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

stmtname

The name to give the prepared statement. Must be unique per-connection. If "" is specified, then an unnamed statement is created, overwriting any previously defined unnamed statement.

query

The parameterized SQL statement. Must contain only a single statement. (multiple statements separated by semi-colons are not allowed.) If any parameters are used, they are referred to as $1, $2, etc.

Valor Retornado

A query result resource on success or FALSE on failure.

Exemplos

Exemplo #1 Using pg_prepare()

<?php
// Connect to a database named "mary"
$dbconn = pg_connect("dbname=mary");

// Prepare a query for execution
$result = pg_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');

// Execute the prepared query.  Note that it is not necessary to escape
// the string "Joe's Widgets" in any way
$result = pg_execute($dbconn, "my_query", array("Joe's Widgets"));

// Execute the same prepared query, this time with a different parameter
$result = pg_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));

?>

Veja Também

  • pg_execute() - Sends a request to execute a prepared statement with given parameters, and waits for the result.
  • pg_send_execute() - Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).

pg_port
pg_put_line
PostgreSQL Funções


Envia uma string terminada em NULL para o backend PostgreSQL

pg_prepare
pg_query_params
PostgreSQL Funções
PHP Manual

pg_put_line

(PHP 4 >= 4.0.3, PHP 5)

pg_put_line — Envia uma string terminada em NULL para o backend PostgreSQL

Descrição

bool pg_put_line ([ resource $connection ], string $data )

pg_put_line() envia uma string terminada em NULL para o servidor backend PostgreSQL. Isso é útil, por exemplo, para a inserção de dados em uma tabela em alta velocidade, iniciada através de uma operação de cópia PostgreSQL. O caractere NULL final é adicionado automaticamente. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

A aplicação deve enviar os dois caracteres "\." explicitamente na última linha para indicar ao backend que ela terminou de enviar seus dados.

Exemplo #1 Inserção de dados na tabela em alta velocidade

<?php
    $conn = pg_pconnect("nomebd=meubanco");
    pg_query($conn, "create table bar (a int4, b char(16), d float8)");
    pg_query($conn, "copy bar from stdin");
    pg_put_line($conn, "3\tola mundo\t4.5\n");
    pg_put_line($conn, "4\ttchau mundo\t7.11\n");
    pg_put_line($conn, "\\.\n");
    pg_end_copy($conn);
?>

Veja também pg_end_copy().

pg_prepare
pg_query_params
PostgreSQL Funções


Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.

pg_put_line
pg_query
PostgreSQL Funções
PHP Manual

pg_query_params

(PHP 5 >= 5.1.0)

pg_query_params — Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.

Descrição

resource pg_query_params ([ resource $connection ], string $query , array $params )

Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.

pg_query_params() is like pg_query(), but offers additional functionality: parameter values can be specified separately from the command string proper. pg_query_params() is supported only against PostgreSQL 7.4 or higher connections; it will fail when using earlier versions.

If parameters are used, they are referred to in the query string as $1, $2, etc. params specifies the actual values of the parameters. A NULL value in this array means the corresponding parameter is SQL NULL.

The primary advantage of pg_query_params() over pg_query() is that parameter values may be separated from the query string, thus avoiding the need for tedious and error-prone quoting and escaping. Unlike pg_query(), pg_query_params() allows at most one SQL command in the given string. (There can be semicolons in it, but not more than one nonempty command.)

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

query

The parameterized SQL statement. Must contain only a single statement. (multiple statements separated by semi-colons are not allowed.) If any parameters are used, they are referred to as $1, $2, etc.

params

An array of parameter values to substitute for the $1, $2, etc. placeholders in the original prepared query string. The number of elements in the array must match the number of placeholders.

Valor Retornado

A query result resource on success or FALSE on failure.

Exemplos

Exemplo #1 Using pg_query_params()

<?php
// Connect to a database named "mary"
$dbconn = pg_connect("dbname=mary");

// Find all shops named Joe's Widgets.  Note that it is not necessary to
// escape "Joe's Widgets"
$result = pg_query_params($dbconn, 'SELECT * FROM shops WHERE name = $1', array("Joe's Widgets"));

// Compare against just using pg_query
$str = pg_escape_string("Joe's Widgets");
$result = pg_query($dbconn, "SELECT * FROM shops WHERE name = '{$str}'");

?>

Veja Também

  • pg_query() - Executa uma consulta (query)

pg_put_line
pg_query
PostgreSQL Funções


Executa uma consulta (query)

pg_query_params
pg_result_error_field
PostgreSQL Funções
PHP Manual

pg_query

(PHP 4 >= 4.2.0, PHP 5)

pg_query — Executa uma consulta (query)

Descrição

resource pg_query ( resource $connection , string $query )

pg_query() retorna um recurso (resource) de resultado da consulta (query) se a consulta pôde ser executada. Retorna FALSE em caso de falha ou se a conexão não é uma conexão válida. Detalhes sobre os erros podem ser recuperados usando a função pg_last_error() se a conexão é válida. pg_query() envia uma declaração SQL para o banco de dados PostgreSQL especificado pelo recurso de conexão connection. connection deve ser uma conexão válida que foi criado por pg_connect(). O valor de retorno dessa função é um recurso (resource) de resultado de consulta (query) para ser usado para acessar os resultados de outras funções PostgreSQL como pg_fetch_array().

Nota: connection é um parâmetro opcional para pg_query(). Se connection não for definido, a conexão padrão será usada. A conexão padrão é a última conexão feita por pg_connect() ou pg_pconnect(). Apesar de connection poder ser omitido, isso não é recomendado já que pode ser uma causa de erros difíceis de encontrar no seu script.

Nota:

Esta função era chamada pg_exec(). pg_exec() ainda está disponível por razões de compatibilidade, mas os usuários são encorajados a usar o novo nome.

Veja também pg_connect(),
pg_pconnect(),
pg_fetch_array(),
pg_fetch_object(),
pg_num_rows()
e pg_affected_rows().

pg_query_params
pg_result_error_field
PostgreSQL Funções


Returns an individual field of an error report.

pg_query
pg_result_error
PostgreSQL Funções
PHP Manual

pg_result_error_field

(PHP 5 >= 5.1.0)

pg_result_error_field — Returns an individual field of an error report.

Descrição

string pg_result_error_field ( resource $result , int $fieldcode )

pg_result_error_field() returns one of the detailed error message fields associated with result resource. It is only available against a PostgreSQL 7.4 or above server. The error field is specified by the fieldcode.

Because pg_query() and pg_query_params() return FALSE if the query fails, you must use pg_send_query() and pg_get_result() to get the result handle.

If you need to get additional error information from failed pg_query() queries, use pg_set_error_verbosity() and pg_last_error() and then parse the result.

Parâmetros

result

A PostgreSQL query result resource from a previously executed statement.

fieldcode

Possible fieldcode values are: PGSQL_DIAG_SEVERITY, PGSQL_DIAG_SQLSTATE, PGSQL_DIAG_MESSAGE_PRIMARY, PGSQL_DIAG_MESSAGE_DETAIL, PGSQL_DIAG_MESSAGE_HINT, PGSQL_DIAG_STATEMENT_POSITION, PGSQL_DIAG_INTERNAL_POSITION (PostgreSQL 8.0+ only), PGSQL_DIAG_INTERNAL_QUERY (PostgreSQL 8.0+ only), PGSQL_DIAG_CONTEXT, PGSQL_DIAG_SOURCE_FILE, PGSQL_DIAG_SOURCE_LINE or PGSQL_DIAG_SOURCE_FUNCTION.

Valor Retornado

A string containing the contents of the error field, NULL if the field does not exist or FALSE on failure.

Exemplos

Exemplo #1 pg_result_error_field() example

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  if (!pg_connection_busy($dbconn)) {
      pg_send_query($dbconn, "select * from doesnotexist;");
  }

  $res1 = pg_get_result($dbconn);
  echo pg_result_error_field($res1, PGSQL_DIAG_SQLSTATE);
?>

Veja Também

  • pg_result_error() - Retorna a mensagem de erro associada a um resultado

pg_query
pg_result_error
PostgreSQL Funções


Retorna a mensagem de erro associada a um resultado

pg_result_error_field
pg_result_seek
PostgreSQL Funções
PHP Manual

pg_result_error

(PHP 4 >= 4.2.0, PHP 5)

pg_result_error — Retorna a mensagem de erro associada a um resultado

Descrição

string pg_result_error ( resource $result )

pg_result_error() retorna a mensagem de erro associada ao recurso (resource) de resultado result. Deste modo, o usuário tem melhores chances de ter uma mensagem de erro melhor que a retornada por pg_last_error().

Veja também pg_query(),
pg_send_query(),
pg_get_result(),
pg_last_error() e
pg_last_notice()

pg_result_error_field
pg_result_seek
PostgreSQL Funções


Altera a posição do ponteiro interno de um recurso (resource) de resultado

pg_result_error
pg_result_status
PostgreSQL Funções
PHP Manual

pg_result_seek

(PHP 4 >= 4.3.0, PHP 5)

pg_result_seek — Altera a posição do ponteiro interno de um recurso (resource) de resultado

Descrição

array pg_result_seek ( resource $result , int $offset )

pg_result_seek() altera a posição do ponteiro interno de um recurso (resource) de resultado. Retorna FALSE em caso de erro.

 Veja também pg_fetch_row(),
pg_fetch_assoc(),
pg_fetch_array(),
pg_fetch_object() e
pg_fetch_result().

pg_result_error
pg_result_status
PostgreSQL Funções


Retorna o status do resultado da consulta (query)

pg_result_seek
pg_select
PostgreSQL Funções
PHP Manual

pg_result_status

(PHP 4 >= 4.2.0, PHP 5)

pg_result_status — Retorna o status do resultado da consulta (query)

Descrição

int pg_result_status ( resource $result )

pg_result_status() retorna o status do recurso (resource) de resultado. Os valores de retorno possíveis são: PGSQL_EMPTY_QUERY, PGSQL_COMMAND_OK, PGSQL_TUPLES_OK, PGSQL_COPY_TO, PGSQL_COPY_FROM, PGSQL_BAD_RESPONSE, PGSQL_NONFATAL_ERROR e PGSQL_FATAL_ERROR.

Veja também pg_connection_status().

pg_result_seek
pg_select
PostgreSQL Funções


Seleciona registros.

pg_result_status
pg_send_execute
PostgreSQL Funções
PHP Manual

pg_select

(PHP 4 >= 4.3.0, PHP 5)

pg_select — Seleciona registros.

Descrição

array pg_select ( resource $connection , string $table_name , array $assoc_array [, int $options ] )

pg_select() seleciona registros especificados por assoc_array, que contém pares do tipo campo=>valor. Para uma consulta (query) válida, retorna um array que contém todos os registros e campos que combinam com a condição especificada por assoc_array. Se options for especificado, pg_convert() será aplicada à assoc_array com as opções especificadas.

Exemplo #1 pg_select

<?php
    $db = pg_connect('nomebd=meubanco');
    // Isto é seguro já que $_POST é convertida automaticamente
    $rec = pg_select($bd, 'post_log', $_POST);
    if ($rec) {
        echo "Registros selecionados\n";
        var_dump($rec);
    }
    else {
    echo "O usuário deve ter inserido dados errados\n";
    }
?>

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_convert()

pg_result_status
pg_send_execute
PostgreSQL Funções


Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).

pg_select
pg_send_prepare
PostgreSQL Funções
PHP Manual

pg_send_execute

(PHP 5 >= 5.1.0)

pg_send_execute — Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).

Descrição

bool pg_send_execute ( resource $connection , string $stmtname , array $params )

Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).

This is similar to pg_send_query_params(), but the command to be executed is specified by naming a previously-prepared statement, instead of giving a query string. The function's parameters are handled identically to pg_execute(). Like pg_execute(), it will not work on pre-7.4 versions of PostgreSQL.

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

stmtname

The name of the prepared statement to execute. if "" is specified, then the unnamed statement is executed. The name must have been previously prepared using pg_prepare(), pg_send_prepare() or a PREPARE SQL command.

params

An array of parameter values to substitute for the $1, $2, etc. placeholders in the original prepared query string. The number of elements in the array must match the number of placeholders.

Valor Retornado

Returns TRUE on success, FALSE on failure. Use pg_get_result() to determine the query result.

Exemplos

Exemplo #1 Using pg_send_execute()

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  // Prepare a query for execution
  if (!pg_connection_busy($dbconn)) {
    pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
    $res1 = pg_get_result($dbconn);
  }

  // Execute the prepared query.  Note that it is not necessary to escape
  // the string "Joe's Widgets" in any way
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
    $res2 = pg_get_result($dbconn);
  }

  // Execute the same prepared query, this time with a different parameter
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
    $res3 = pg_get_result($dbconn);
  }

?>

Veja Também

  • pg_prepare() - Submits a request to create a prepared statement with the given parameters, and waits for completion.
  • pg_send_prepare() - Sends a request to create a prepared statement with the given parameters, without waiting for completion.
  • pg_execute() - Sends a request to execute a prepared statement with given parameters, and waits for the result.

pg_select
pg_send_prepare
PostgreSQL Funções


Sends a request to create a prepared statement with the given parameters, without waiting for completion.

pg_send_execute
pg_send_query_params
PostgreSQL Funções
PHP Manual

pg_send_prepare

(PHP 5 >= 5.1.0)

pg_send_prepare — Sends a request to create a prepared statement with the given parameters, without waiting for completion.

Descrição

bool pg_send_prepare ( resource $connection , string $stmtname , string $query )

Sends a request to create a prepared statement with the given parameters, without waiting for completion.

This is an asynchronous version of pg_prepare(): it returns TRUE if it was able to dispatch the request, and FALSE if not. After a successful call, call pg_get_result() to determine whether the server successfully created the prepared statement. The function's parameters are handled identically to pg_prepare(). Like pg_prepare(), it will not work on pre-7.4 versions of PostgreSQL.

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

stmtname

The name to give the prepared statement. Must be unique per-connection. If "" is specified, then an unnamed statement is created, overwriting any previously defined unnamed statement.

query

The parameterized SQL statement. Must contain only a single statement. (multiple statements separated by semi-colons are not allowed.) If any parameters are used, they are referred to as $1, $2, etc.

Valor Retornado

Returns TRUE on success, FALSE on failure. Use pg_get_result() to determine the query result.

Exemplos

Exemplo #1 Using pg_send_prepare()

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  // Prepare a query for execution
  if (!pg_connection_busy($dbconn)) {
    pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
    $res1 = pg_get_result($dbconn);
  }

  // Execute the prepared query.  Note that it is not necessary to escape
  // the string "Joe's Widgets" in any way
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
    $res2 = pg_get_result($dbconn);
  }

  // Execute the same prepared query, this time with a different parameter
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
    $res3 = pg_get_result($dbconn);
  }

?>

Veja Também

  • pg_connect() - Abre uma conexão PostgreSQL
  • pg_pconnect() - Abre uma conexão PostgreSQL persistente
  • pg_execute() - Sends a request to execute a prepared statement with given parameters, and waits for the result.
  • pg_send_execute() - Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).
  • pg_send_query_params() - Submits a command and separate parameters to the server without waiting for the result(s).

pg_send_execute
pg_send_query_params
PostgreSQL Funções


Submits a command and separate parameters to the server without waiting for the result(s).

pg_send_prepare
pg_send_query
PostgreSQL Funções
PHP Manual

pg_send_query_params

(PHP 5 >= 5.1.0)

pg_send_query_params — Submits a command and separate parameters to the server without waiting for the result(s).

Descrição

bool pg_send_query_params ( resource $connection , string $query , array $params )

Submits a command and separate parameters to the server without waiting for the result(s).

This is equivalent to pg_send_query() except that query parameters can be specified separately from the query string. The function's parameters are handled identically to pg_query_params(). Like pg_query_params(), it will not work on pre-7.4 PostgreSQL connections, and it allows only one command in the query string.

Parâmetros

connection

PostgreSQL database connection resource.

query

The parameterized SQL statement. Must contain only a single statement. (multiple statements separated by semi-colons are not allowed.) If any parameters are used, they are referred to as $1, $2, etc.

params

An array of parameter values to substitute for the $1, $2, etc. placeholders in the original prepared query string. The number of elements in the array must match the number of placeholders.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Use pg_get_result() to determine the query result.

Exemplos

Exemplo #1 Using pg_send_query_params()

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  // Using parameters.  Note that it is not necessary to quote or escape
  // the parameter.
  pg_send_query_params($dbconn, 'select count(*) from authors where city = $1', array('Perth'));

  // Compare against basic pg_send_query usage
  $str = pg_escape_string('Perth');
  pg_send_query($dbconn, "select count(*) from authors where city = '${str}'");
?>

Veja Também

  • pg_send_query() - Envia uma consulta (query) assincrona

pg_send_prepare
pg_send_query
PostgreSQL Funções


Envia uma consulta (query) assincrona

pg_send_query_params
pg_set_client_encoding
PostgreSQL Funções
PHP Manual

pg_send_query

(PHP 4 >= 4.2.0, PHP 5)

pg_send_query — Envia uma consulta (query) assincrona

Descrição

bool pg_send_query ( resource $connection , string $query )
bool pg_send_query ( string $query )

pg_send_query() envia uma consulta (query) assíncrona para connection. Diferente de pg_query(), ela pode enviar consultas múltiplas para o PostgreSQL e carregar os resultados, um por um, usando pg_get_result(). A execução do script não é bloqueada enquanto as consultas estão sendo executadas. Use pg_connection_busy() para checar se a conexão está ocupada. (por exemplo, se uma consulta está sendo executada). A consulta pode ser cancelada chamando pg_cancel_query().

Apesar de ser possível enviar multiplas consultas de uma vez, você não pode enviar múltiplas consultas para uma conexão ocupada. Se a consulta é enviada enquando a conexão está ocupada ela espera até que a última cosulta seja finalizada e descarta todos os resultados.

Exemplo #1 Asynchronous Queries

<?php
    $dbconn = pg_connect("dbname=publisher") or die("Could not connect");
    if (!pg_connection_busy($dbconn)) {
        pg_send_query($dbconn,"select * from authors; select count(*) from authors;");
    }

    $res1 = pg_get_result($dbconn);
    echo "First call to pg_get_result(): $res1\n";
    $rows1 = pg_num_rows($res1);
    echo "$res1 has $rows1 records\n\n";

    $res2 = pg_get_result($dbconn);
    echo "second call to pg_get_result(): $res2\n";
    $rows2 = pg_num_rows($res2);
     echo "$res2 has $rows2 records\n";
?>

O exemplo acima deve mostrar a seguinte saída:

first call to pg_get_result(): Resource id #3
Resource id #3 has 3 records

second call to pg_get_result(): Resource id #4
Resource id #4 has 1 records

Veja também pg_query(),
pg_cancel_query(),
pg_get_result() e
pg_connection_busy().

pg_send_query_params
pg_set_client_encoding
PostgreSQL Funções


Define a codificação do cliente

pg_send_query
pg_set_error_verbosity
PostgreSQL Funções
PHP Manual

pg_set_client_encoding

(PHP 4 >= 4.0.3, PHP 5)

pg_set_client_encoding — Define a codificação do cliente

Descrição

int pg_set_client_encoding ([ resource $connection ], string $encoding )

pg_set_client_encoding() define a codificação do cliente e retorna 0 caso haja sucesso e -1 se houver erro.

encoding é a codificação do cliente e pode ter os valores: SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, MULE_INTERNAL, LATINX (X=1...9), KOI8, WIN, ALT, SJIS, BIG5, WIN1250. As codificações disponíveis dependem da versão do PostgreSQL e libpq. Vide o manual PostgreSQL para saber das codificações disponíveis para o seu PostgreSQL.

Nota:

Esta função exige o PHP 4.0.3 ou maior e PostgreSQL 7.0 ou maior. As codificações suportadas dependem da versão do PostgreSQL. Vide o manual PostgreSQL para detalhes.

Esta função era chamada pg_setclientencoding()().

Veja também pg_client_encoding().

pg_send_query
pg_set_error_verbosity
PostgreSQL Funções


Determines the verbosity of messages returned by pg_last_error and pg_result_error.

pg_set_client_encoding
pg_trace
PostgreSQL Funções
PHP Manual

pg_set_error_verbosity

(PHP 5 >= 5.1.0)

pg_set_error_verbosity — Determines the verbosity of messages returned by pg_last_error() and pg_result_error().

Descrição

int pg_set_error_verbosity ([ resource $connection ], int $verbosity )

Determines the verbosity of messages returned by pg_last_error() and pg_result_error().

pg_set_error_verbosity() sets the verbosity mode, returning the connection's previous setting. In PGSQL_ERRORS_TERSE mode, returned messages include severity, primary text, and position only; this will normally fit on a single line. The default mode (PGSQL_ERRORS_DEFAULT) produces messages that include the above plus any detail, hint, or context fields (these may span multiple lines). The PGSQL_ERRORS_VERBOSE mode includes all available fields. Changing the verbosity does not affect the messages available from already-existing result objects, only subsequently-created ones.

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

verbosity

The required verbosity: PGSQL_ERRORS_TERSE, PGSQL_ERRORS_DEFAULT or PGSQL_ERRORS_VERBOSE.

Valor Retornado

The previous verbosity level: PGSQL_ERRORS_TERSE, PGSQL_ERRORS_DEFAULT or PGSQL_ERRORS_VERBOSE.

Exemplos

Exemplo #1 pg_set_error_verbosity() example

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");

  if (!pg_connection_busy($dbconn)) {
      pg_send_query($dbconn, "select * from doesnotexist;");
  }

  pg_set_error_verbosity($dbconn, PGSQL_ERRORS_VERBOSE);
  $res1 = pg_get_result($dbconn);
  echo pg_result_error($res1);
?>

Veja Também

  • pg_last_error() - Retorna a string da última mensagem de erro de uma conexão
  • pg_result_error() - Retorna a mensagem de erro associada a um resultado

pg_set_client_encoding
pg_trace
PostgreSQL Funções


Habilita rastreamento em uma conexão PostgreSQL

pg_set_error_verbosity
pg_transaction_status
PostgreSQL Funções
PHP Manual

pg_trace

(PHP 4 >= 4.0.1, PHP 5)

pg_trace — Habilita rastreamento em uma conexão PostgreSQL

Descrição

bool pg_trace ( string $pathname [, string $mode [, resource $connection ]] )

pg_trace() habilita o rastreamento da comunicação frontend/backend do PostgreSQL para um arquivo de depuração especificado pelo parâmetro pathname. Para entender completamente estes resultados, você deve estar familiarizado com o protocolo de comunicação interno do PostgreSQL. Para aqueles que não estão, isso ainda pode ser útil para rastrear erros em consultas (queries) enviadas ao servidor, você poderia fazer por exemplo grep '^Para backend' rastro.log. Para maiores informações vide o manual PostgreSQL.

pathname e mode são os mesmos que na função fopen() (o mode padrão é 'w'), connection especifica a conexão a ser rastreada e seu padrão é a última conexão aberta.

Retorna TRUE se o pathname pode ser aberto para escrita, FALSE caso contrário.

Veja também fopen() e pg_untrace().

pg_set_error_verbosity
pg_transaction_status
PostgreSQL Funções


Returns the current in-transaction status of the server.

pg_trace
pg_tty
PostgreSQL Funções
PHP Manual

pg_transaction_status

(PHP 5 >= 5.1.0)

pg_transaction_status — Returns the current in-transaction status of the server.

Descrição

int pg_transaction_status ( resource $connection )

Returns the current in-transaction status of the server.

Cuidado

pg_transaction_status() will give incorrect results when using a PostgreSQL 7.3 server that has the parameter autocommit set to off. The server-side autocommit feature has been deprecated and does not exist in later server versions.

Parâmetros

connection

PostgreSQL database connection resource.

Valor Retornado

The status can be PGSQL_TRANSACTION_IDLE (currently idle), PGSQL_TRANSACTION_ACTIVE (a command is in progress), PGSQL_TRANSACTION_INTRANS (idle, in a valid transaction block), or PGSQL_TRANSACTION_INERROR (idle, in a failed transaction block). PGSQL_TRANSACTION_UNKNOWN is reported if the connection is bad. PGSQL_TRANSACTION_ACTIVE is reported only when a query has been sent to the server and not yet completed.

Exemplos

Exemplo #1 pg_transaction_status() example

<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");
  $stat = pg_transaction_status($dbconn);
  if ($stat === PGSQL_TRANSACTION_UNKNOWN) {
      echo 'Connection is bad';
  } else if ($stat === PGSQL_TRANSACTION_IDLE) {
      echo 'Connection is currently idle';
  } else {
      echo 'Connection is in a transaction state';
  }
?>

pg_trace
pg_tty
PostgreSQL Funções


Retorna o nome da tty associada com a conexão

pg_transaction_status
pg_unescape_bytea
PostgreSQL Funções
PHP Manual

pg_tty

(PHP 4, PHP 5)

pg_tty — Retorna o nome da tty associada com a conexão

Descrição

string pg_tty ( resource $connection )

pg_tty() retorna o nome da tty que a saída do lado do servidor é enviada no recurso (resource) de conexão connection.

pg_transaction_status
pg_unescape_bytea
PostgreSQL Funções


Faz escape binário para o tipo bytea

pg_tty
pg_untrace
PostgreSQL Funções
PHP Manual

pg_unescape_bytea

(PHP 4 >= 4.3.0, PHP 5)

pg_unescape_bytea — Faz escape binário para o tipo bytea

Descrição

string pg_unescape_bytea ( string $data )

pg_unescape_bytea() faz uma versão binária da string do tipo bytea. Retorna a string em binário(binary).

Nota:

Quando você faz SELECT bytea type, PostgreSQL returna um valor em octal prefixado por \ (por exemplo: \032). Usuários devem fazer a transformação em binário por si próprios.

Esta função exige PostgreSQL 7.2 ou superior. Com PostgreSQL 7.2.0 e 7.2.1, o tipo de dados bytea deve ser criado quando você habilita o suporte a multi-byte. Por exemplo, INSERT INTO tabela_teste (imagem) VALUES ('$imagem_escaped'::bytea); PostgreSQL 7.2.2 ou superior não precisa de coerção (cast). A exceção é quando a codificação de caracteres do cliente e do backend não combinam, então pode haver erro de fluxo de multi-byte. O usuário deve fazer a coerção (cast) para bytea para evitar este erro.

Veja também pg_escape_bytea() e pg_escape_string()

pg_tty
pg_untrace
PostgreSQL Funções


Desabilita o rastreamento de uma conexão PostgreSQL

pg_unescape_bytea
pg_update
PostgreSQL Funções
PHP Manual

pg_untrace

(PHP 4 >= 4.0.1, PHP 5)

pg_untrace — Desabilita o rastreamento de uma conexão PostgreSQL

Descrição

bool pg_untrace ([ resource $connection ] )

Pára o rastreamento iniciado por pg_trace(). connection especifica a conexão que está sendo rastreada e seu padrão é a última conexão aberta.

Sempre retorna TRUE.

Veja também pg_trace().

pg_unescape_bytea
pg_update
PostgreSQL Funções


Atualiza uma tabela.

pg_untrace
pg_version
PostgreSQL Funções
PHP Manual

pg_update

(PHP 4 >= 4.3.0, PHP 5)

pg_update — Atualiza uma tabela.

Descrição

mixed pg_update ( resource $connection , string $table_name , array $data , array $condition [, int $options ] )

pg_update() atualiza registros que combinam com a condição especificada pelo argumento condition com os dados do parâmetro data. Se options for especificado, pg_convert() será aplicada a data com as opções especificadas.

Exemplo #1 pg_update

<?php
    $bd = pg_connect('dbname=meubanco');
    $dados = array('campo1'=>'AA', 'campo2'=>'BB');
    // Isto é seguro já que $_POST é convertido automaticamente
    $res = pg_update($bd, 'post_log', $_POST, $dados);
    if ($res) {
        echo "Dados atualizados: $res\n";
    }
    else {
        echo "Usuário deve ter enviado entradas inválidas\n";
    }
?>

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja também pg_convert()

pg_untrace
pg_version
PostgreSQL Funções


Returns an array with client, protocol and server version (when available)

pg_update
SQLite
PostgreSQL Funções
PHP Manual

pg_version

(PHP 5)

pg_version — Returns an array with client, protocol and server version (when available)

Descrição

array pg_version ([ resource $connection ] )

pg_version() returns an array with the client, protocol and server version. Protocol and server versions are only available if PHP was compiled with PostgreSQL 7.4 or later.

For more detailed server information, use pg_parameter_status().

Parâmetros

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

Valor Retornado

Returns an array with client, protocol and server keys and values (if available). Returns FALSE on error or invalid connection.

Exemplos

Exemplo #1 pg_version() example

<?php
  $dbconn = pg_connect("host=localhost port=5432 dbname=mary")
     or die("Could not connect");

  $v = pg_version($dbconn);

  echo $v['client'];
?>

O exemplo acima irá imprimir:

7.4

Veja Também

  • pg_parameter_status() - Looks up a current parameter setting of the server.

pg_update
SQLite
PostgreSQL Funções


SQLite

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • SQLite Funções
    • sqlite_array_query — Executa uma query ao banco de dados e retorna uma matriz
    • sqlite_busy_timeout — Define o tempo de espera quando o banco de dados estiver ocupado
    • sqlite_changes — Retorna o número de linhas que foram alteradas pela SQL mais recente.
    • sqlite_close — Fecha um banco de dados SQLite que esteja aberto.
    • sqlite_column — Retorna uma coluna da linha atual do conjunto de resultados.
    • sqlite_create_aggregate — Registra uma função agregada UDF para usar em SQLs
    • sqlite_create_function — Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
    • sqlite_current — Retorna a linha atual do resultado como uma matriz.
    • sqlite_error_string — Retorna a descrição textual de um código de erro
    • sqlite_escape_string — Escapa uma string para ser usada como um parâmetro em uma query
    • sqlite_exec — Executes a result-less query against a given database
    • sqlite_factory — Opens an SQLite database and returns an SQLiteDatabase object
    • sqlite_fetch_all — Fetches all rows from a result set as an array of arrays
    • sqlite_fetch_array — Obtém a próxima linha de um resultado como uma matriz.
    • sqlite_fetch_column_types — Return an array of column types from a particular table
    • sqlite_fetch_object — Fetches the next row from a result set as an object
    • sqlite_fetch_single — Retorna o resultado da primeira coluna como string.
    • sqlite_fetch_string — Sinônimo de sqlite_fetch_single
    • sqlite_field_name — Retorna o nome de um campo em particular.
    • sqlite_has_more — Retorna quando existem ou não mais linhas disponíveis
    • sqlite_has_prev — Returns whether or not a previous row is available
    • sqlite_key — Returns the current row index
    • sqlite_last_error — Retorna o código de erro para o último erro em um banco de dados
    • sqlite_last_insert_rowid — Retorna o rowid da ultima linha inserida.
    • sqlite_libencoding — Retorna a codificação da biblioteca SQLite
    • sqlite_libversion — Retorna a versão da biblioteca SQLite
    • sqlite_next — Move para a próxima linha.
    • sqlite_num_fields — Retorna o número de campos no conjunto de resultados.
    • sqlite_num_rows — Retorna o número de linhas em um conjunto de resultados.
    • sqlite_open — Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir
    • sqlite_popen — Abre uma conexão persistente com um banco de dados SQLite. Irá criar um se ele não existir.
    • sqlite_prev — Seek to the previous row number of a result set
    • sqlite_query — Executa uma query em um banco de dados e retorna o manipulador de resultados
    • sqlite_rewind — Vai para a primeira linha.
    • sqlite_seek — Move o ponteiro interno para uma linha em um conjunto de resultados
    • sqlite_single_query — Executes a query and returns either an array for one single column or the value of the first row
    • sqlite_udf_decode_binary — Decodifica dados binários passados como parâmetros para uma UDF
    • sqlite_udf_encode_binary — Codifica dados binários para utilizar com uma UDF
    • sqlite_unbuffered_query — Executa uma query que não guarda em buffer os resultados
    • sqlite_valid — Returns whether more rows are available
pg_version
Introdução
Vendor Specific Database Extensions


Introdução

Esta é uma extensão para a Ferramenta de Banco de Dados Embutível SQL. SQLite é uma biblioteca em C que implementa um banco de dados embutível SQL. Programas que são ligados com a biblioteca SQLite podem ter acesso SQL a um banco de dados SQL sem executar um processo RDBMS separado.

SQLite não é uma biblioteca de cliente usado para conectar em um grande servidor de banco de dados. SQLite é o servidor. A biblioteca SQLite lê e escreve diretamente para e de os arquivos do banco de dados no disco.

Nota:

Para maiores informações veja o website do SQLite (» http://sqlite.org/).

SQLite
Instalação/Configuração
SQLite


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SQLite


Dependências

Para poder ter estas funções disponíveis, você deve compilar o PHP com suporte SQLite, ou carregar a extensão SQLite dinamicamente no seu php.ini.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Leia o arquivo INSTALL, o qual vem com o pacote. Ou apenas use o instalador PEAR com pecl install sqlite. SQLite em sí já esta incluído. Você não precisa instalar qualquer software adicional.

Usuários do Windows precisará habilitar php_sqlite.dll dentro do php.ini para usar estas funções. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

No PHP 5, a extensão SQLite e a engine em sí são embutidos e compilados por padrão. Entretanto, desde PHP 5.1.0 você precisa ativar manualmente a extensão no php.ini (porque agora é embutido como compartilhado). Entretanto, desde o PHP 5.1.0 o SQLite depende de PDO, ele deve ser ativado também, adicionando as seguintes linhas no php.ini (em ordem):

extension=php_pdo.dll
extension=php_sqlite.dll
Em sistemas operacionais Linux ou Unix, se você fizer o PDO como uma extensão compartilhada, você deve fazer o SQLite como uma extensão compartilhada usando a opção de configuração --with-sqlite=shared.

SQLite 3 é suportado atráves de PDO SQLite.

Nota: Instalação em Windows para contas sem privilégio

Em sistemas operacionais Windows, contas sem privilégios não tem a variável de ambiente TMP definida pro padrão. Isto irá fazer o SQLite criar arquivos temporários no diretório do windows, o que não é desejável. Assim, você deve definir a variável de ambiente TMP para o servidor web ou para a conta de usuário sobre a qual o servidor web esta sendo utilizado. Se o Apache for o seu servidor WEB, você pode fazer isto com uma diretiva SetEnv no seu arquivo httpd.conf. Por exemplo:

SetEnv TMP c:/temp
Se você não pode fazer isto definindo a nível de servidor, você pode implementar isso no seu script:
putenv('TMP=C:/temp');
Esta configuração deve se referir a um diretório que o servidor web tem permissão para criar arquivos e subsequentemente escrever e excluir arquivos que criou. Se não, você vai receber o seguinte mensagem de erro: malformed database schema - unable to open a temporary database file for storing temporary tables

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração do SQLite
Nome | Padrão | Modificável | Changelog
sqlite.assoc_case | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

sqlite.assoc_case int

Aonde usar maiúsculas/minúsculas juntas (0), maiúsculas (1) ou minúsculas (2) nos índices.

Esta opção é útil principalmente quando você necessita compatibilidade com outros sistemas de banco de dados, aonde os nomes das colunas são sempre retornados como maiúsculas ou minúsculas, sem importar como estão os nomes atualmente no banco de dados.

A biblioteca SQLite retorna os nomes das colunas na sua letra atual ( que é o usado ao criar a tabela ). Quando sqlite.assoc_case for 0 a letra atual vai ser preservada. Quando for 1 ou 2, o PHP irá converter para maiúsculas ou minúsculas, respectivamente.

O uso desta opção incorre em uma pequena penalidade de performance, mas é MUITO mais rápido do que você faze-lo no script PHP.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Existem dois resources usados na Interface SQLite. O primeiro é a conexão com banco de dados, o segundo é um conjunto de resultados.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

As funções sqlite_fetch_array() e sqlite_current() usam uma constante para os diferentes tipos de matrizes de resultado:

Constantes de tipo de resultado do SQLite
SQLITE_ASSOC (int)
As colunas são retornadas na matriz tendo o nome do campo como índice.
SQLITE_BOTH (int)
As colunas são retornadas na matriz tendo ambos índices, numérico e o nome do campo.
SQLITE_NUM (int)
As colunas são retornadas na matriz tendo um índice numérico para os campos. Este índice começa no 0, o primeiro campo no resultado.

Várias funções podem retornar códigos de status. As seguintes constantes são definidas:

Constantes de códigos de status do SQLite
SQLITE_OK (int)
Resultado com sucesso.
SQLITE_ERROR (int)
Erro de SQL ou faltando banco de dados.
SQLITE_INTERNAL (int)
Um erro lógico interno no SQLite.
SQLITE_PERM (int)
Sem permissão de acesso.
SQLITE_ABORT (int)
Callback routine requested an abort.
SQLITE_BUSY (int)
O arquivo do banco de dados está travado.
SQLITE_LOCKED (int)
A tabela no banco de dados está travada.
SQLITE_NOMEM (int)
Falha na alocação de memória.
SQLITE_READONLY (int)
Tentativa de escrita em banco de dados somente leitura.
SQLITE_INTERRUPT (int)
Operação terminada internamente.
SQLITE_IOERR (int)
Erro ocorrindo em Disk I/O.
SQLITE_CORRUPT (int)
The database disk image is malformed.
SQLITE_NOTFOUND (int)
(Interno) Tabela ou registro não encontrado.
SQLITE_FULL (int)
Insertion failed because database is full.
SQLITE_CANTOPEN (int)
Não foi possível abrir o arquivo de banco de dados.
SQLITE_PROTOCOL (int)
Database lock protocol error.
SQLITE_EMPTY (int)
(Interno) Tabela do banco de dados está vazia.
SQLITE_SCHEMA (int)
O schema do banco de dados foi modificado.
SQLITE_TOOBIG (int)
Too much data for one row of a table.
SQLITE_CONSTRAINT (int)
Abort due to constraint violation.
SQLITE_MISMATCH (int)
Tipo de dado incompatível.
SQLITE_MISUSE (int)
Biblioteca usada incorretamente.
SQLITE_NOLFS (int)
Uso de característica não suportada no host.
SQLITE_AUTH (int)
Falha de autorização.
SQLITE_ROW (int)
Internal process has another row ready.
SQLITE_DONE (int)
Internal process has finished executing.
Tipos Resource
SQLite Funções
SQLite


SQLite Funções

Classes pré-definidas

SQLiteDatabase

Representa um banco de dados SQLite aberto.

Construtor

  • __construct - constrói um novo objeto SQLiteDatabase

Métodos

  • query - Executa uma query

  • queryExec - Executa uma query sem resultado

  • arrayQuery - Executa uma query e retorna o resultado em um array

  • singleQuery - Executa uma query e retorna um array para uma única coluna ou valor da primeira linha

  • unbufferedQuery - Executa uma query sem buffer

  • lastInsertRowid - Retorna o rowid da linha mais recente inserida

  • changes - Retorna o número de linhas modificadas pelo comando mais recente

  • createAggregate - Registra uma função UDF agregada para usar em comandos SQL

  • createFunction - Registra uma função UDF para usar em comandos SQL

  • busyTimeout - Define ou desativa o limite de tempo de ocupado

  • lastError - Retorna o código de erro mais recente do erro mais recente encontrado

  • fetchColumnTypes - Retorna um array dos tipos das colunas de uma tabela em particular

SQLiteResult

Representa um conjunto de resultados guardado em buffer.

Métodos

  • fetch - Obtém a próxima linha de um conjunto de resultados em uma matriz

  • fetchObject - Obtém a próxima linha de um conjunto de resultados como um objeto

  • fetchSingle - Obtém a primeira coluna do conjunto de resultados como uma string

  • fetchAll - Obtém todas as linhas de um conjunto de resultados como um array de arrays

  • column - Obtém uma coluna da linha atual do conjunto de resultados

  • numFields - Retorna o número de campos no conjunto de resultados

  • fieldName - Retorna o nome de um campo em particular do conjunto de resultados

  • current - Obtém a linha atual do conjunto de resultados como um array

  • key - Retorna o índice da linha atual

  • next - Vai para o próximo número de linha

  • valid - Retorna quando mais linhas estão disponíveis

  • rewind - Vai para a primeira linha do conjunto de resultados

  • prev - Vai para a linha anterior do conjunto de resultados

  • hasPrev - Retorna quando a linha anterior no conjunto de resultados é valida

  • numRows - Retorna o número de linhas no conjunto de resultados

  • seek - Vai para uma linha em particular

SQLiteUnbuffered

Representa uma conjunto de resultados de uma consulta SQLite não salva em buffer. Conjuntos de resultados não salvos em buffer são sequenciais, apenas para a frente.

Métodos

  • fetch - Obtém a próxima linha do conjunto de resultados como um array

  • fetchObject - Obtém a próxima linha de um conjuntpo de resultados como um objeto

  • fetchSingle - Obtém a primeira coluna do conjunto de resultados como uma string

  • fetchAll - Obtém todoas as linhas do conjunto de resultados como um array de arrays

  • column - Obtém uma coluna da linha atual do conjunto de resultados

  • numFields - Retorna o número de campos do conjunto de resultados

  • fieldName - Retorna o nome de um campo em particular no conjunto de resultados

  • current - Obtém a linha atual do conjunto de resultados como um array

  • next - Vai para a próxima linha

  • valid - Retorna se tem mais linhas disponíveis

Índice

  • sqlite_array_query — Executa uma query ao banco de dados e retorna uma matriz
  • sqlite_busy_timeout — Define o tempo de espera quando o banco de dados estiver ocupado
  • sqlite_changes — Retorna o número de linhas que foram alteradas pela SQL mais recente.
  • sqlite_close — Fecha um banco de dados SQLite que esteja aberto.
  • sqlite_column — Retorna uma coluna da linha atual do conjunto de resultados.
  • sqlite_create_aggregate — Registra uma função agregada UDF para usar em SQLs
  • sqlite_create_function — Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
  • sqlite_current — Retorna a linha atual do resultado como uma matriz.
  • sqlite_error_string — Retorna a descrição textual de um código de erro
  • sqlite_escape_string — Escapa uma string para ser usada como um parâmetro em uma query
  • sqlite_exec — Executes a result-less query against a given database
  • sqlite_factory — Opens an SQLite database and returns an SQLiteDatabase object
  • sqlite_fetch_all — Fetches all rows from a result set as an array of arrays
  • sqlite_fetch_array — Obtém a próxima linha de um resultado como uma matriz.
  • sqlite_fetch_column_types — Return an array of column types from a particular table
  • sqlite_fetch_object — Fetches the next row from a result set as an object
  • sqlite_fetch_single — Retorna o resultado da primeira coluna como string.
  • sqlite_fetch_string — Sinônimo de sqlite_fetch_single
  • sqlite_field_name — Retorna o nome de um campo em particular.
  • sqlite_has_more — Retorna quando existem ou não mais linhas disponíveis
  • sqlite_has_prev — Returns whether or not a previous row is available
  • sqlite_key — Returns the current row index
  • sqlite_last_error — Retorna o código de erro para o último erro em um banco de dados
  • sqlite_last_insert_rowid — Retorna o rowid da ultima linha inserida.
  • sqlite_libencoding — Retorna a codificação da biblioteca SQLite
  • sqlite_libversion — Retorna a versão da biblioteca SQLite
  • sqlite_next — Move para a próxima linha.
  • sqlite_num_fields — Retorna o número de campos no conjunto de resultados.
  • sqlite_num_rows — Retorna o número de linhas em um conjunto de resultados.
  • sqlite_open — Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir
  • sqlite_popen — Abre uma conexão persistente com um banco de dados SQLite. Irá criar um se ele não existir.
  • sqlite_prev — Seek to the previous row number of a result set
  • sqlite_query — Executa uma query em um banco de dados e retorna o manipulador de resultados
  • sqlite_rewind — Vai para a primeira linha.
  • sqlite_seek — Move o ponteiro interno para uma linha em um conjunto de resultados
  • sqlite_single_query — Executes a query and returns either an array for one single column or the value of the first row
  • sqlite_udf_decode_binary — Decodifica dados binários passados como parâmetros para uma UDF
  • sqlite_udf_encode_binary — Codifica dados binários para utilizar com uma UDF
  • sqlite_unbuffered_query — Executa uma query que não guarda em buffer os resultados
  • sqlite_valid — Returns whether more rows are available
Constantes pré-definidas
sqlite_array_query
SQLite


Executa uma query ao banco de dados e retorna uma matriz

SQLite Funções
sqlite_busy_timeout
SQLite Funções
PHP Manual

sqlite_array_query

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_array_query — Executa uma query ao banco de dados e retorna uma matriz

Descrição

array sqlite_array_query ( resource $dbhandle , string $query [, int $result_type [, bool $decode_binary ]] )
array sqlite_array_query ( string $query , resource $dbhandle [, int $result_type [, bool $decode_binary ]] )

sqlite_array_query() é similar a usar sqlite_query() e então sqlite_fetch_array() para cada linha do conjunto de resultados e coloca-lo em uma matriz, como mostrado no exemplo abaixo. Usar sqlite_array_query() é significativamente mais rápido do que usar um script como este.

Exemplo #1 sqlite_array_query() implementado por você mesmo

<?php
$q = sqlite_query($database, "SELECT * from foo LIMIT 100");
$rows = array();
while ($r = sqlite_fetch_array($q)) {
    $rows[] = $r;
}
?>
Dica

sqlite_array_query() é melhor utilizado para queries que retornam 45 linhas ou menos. Se você tem mais dados do que isto, é recomendado que você escreva os seus script para usar sqlite_unbuffered_query() para ter uma performance melhor.

Veja também sqlite_query(),
sqlite_fetch_array() e
sqlite_fetch_string().

SQLite Funções
sqlite_busy_timeout
SQLite Funções


Define o tempo de espera quando o banco de dados estiver ocupado

sqlite_array_query
sqlite_changes
SQLite Funções
PHP Manual

sqlite_busy_timeout

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_busy_timeout — Define o tempo de espera quando o banco de dados estiver ocupado

Descrição

void sqlite_busy_timeout ( resource $dbhandle , int $milésimos )

Define o limite de tempo que o sqlite irá esperar para um banco de dados (dbhandle) se tornar disponível para uso em milésimos. Se o parâmetro milésimos for 0, os gerenciadores de ocupado serão desabilitados e o sqlite irá retornar imediatamente com um código SQLITE_BUSY se outro processo/thread tiver o banco de dados travado para uma atualização.

O PHP define o tempo padrão de espera em 60 segundos quando o banco de dados é aberto.

Nota:

Existem mil (1000) milésimos em um segundo.

Veja também sqlite_open().

sqlite_array_query
sqlite_changes
SQLite Funções


Retorna o número de linhas que foram alteradas pela SQL mais recente.

sqlite_busy_timeout
sqlite_close
SQLite Funções
PHP Manual

sqlite_changes

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_changes — Retorna o número de linhas que foram alteradas pela SQL mais recente.

Descrição

int sqlite_changes ( resource $dbhandle )

Retorna o numero de linhas que foram modificadas pela mais recente SQL executada no banco de dados dbhandle.

Veja também sqlite_num_rows().

sqlite_busy_timeout
sqlite_close
SQLite Funções


Fecha um banco de dados SQLite que esteja aberto.

sqlite_changes
sqlite_column
SQLite Funções
PHP Manual

sqlite_close

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_close — Fecha um banco de dados SQLite que esteja aberto.

Descrição

void sqlite_close ( resource $dbhandle )

Fecha o banco de dados indicado por database. Se o banco de dados for persistente, ele será fechado e removido da lista dos persistentes.

Veja também sqlite_open() e sqlite_popen().

sqlite_changes
sqlite_column
SQLite Funções


Retorna uma coluna da linha atual do conjunto de resultados.

sqlite_close
sqlite_create_aggregate
SQLite Funções
PHP Manual

sqlite_column

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_column — Retorna uma coluna da linha atual do conjunto de resultados.

Descrição

mixed sqlite_column ( resource $result , mixed $indice_ou_nome [, bool $decode_binary ] )

Retorna o valor da coluna nomeada indice_ou_nome (se for uma string), ou a coluna numerada indice_ou_nome (se for um inteiro) apartir da linha atual do cunjunto de resultados result. O parâmetro decode_binary funciona da mesma maneira que a descrita na função sqlite_fetch_array().

Use esta função quando você esta interagindo com um conjunto de resultados grande com muitas colunas, ou com colunas que contém grande quantidades de dados.

Veja também sqlite_fetch_string().

sqlite_close
sqlite_create_aggregate
SQLite Funções


Registra uma função agregada UDF para usar em SQLs

sqlite_column
sqlite_create_function
SQLite Funções
PHP Manual

sqlite_create_aggregate

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_create_aggregate — Registra uma função agregada UDF para usar em SQLs

Descrição

bool sqlite_create_aggregate ( resource $dbhandle , string $function_name , mixed $step_func , mixed $finalize_func [, int $num_args ] )

sqlite_create_aggregate() é similar a sqlite_create_function() com a diferença que registra funções que podem ser usadas para calcular um resultado através de todas as linhas de uma query.

A diferença chave entre esta função e sqlite_create_function() é que duas funções são requeridas para gerenciar a agregada; step_func é executada para cada linha do conjunto de resultados. Sua função PHP deve acumular o resultado e guardar no contexto da agregação. Uma vez que todas as linhas tenham sido processadas, finalize_func será chamada e deve então pegar os dados do contexto de agregação e então retornar o resultado.

Exemplo #1 Exemplo de agregação

<?php
$data = array(
   'one',
   'two',
   'three',
   'four',
   'five',
   'six',
   'seven',
   'eight',
   'nine',
   'ten',
   );
$dbhandle = sqlite_open(':memory:');
sqlite_query($dbhandle, "CREATE TABLE strings(a)");
foreach ($data as $str) {
    $str = sqlite_escape_string($str);
    sqlite_query($dbhandle, "INSERT INTO strings VALUES ('$str')");
}

function max_len_step(&$context, $string)
{
    if (strlen($string) > $context) {
        $context = strlen($string);
    }
}

function max_len_finalize(&$context)
{
    return $context;
}

sqlite_create_aggregate($dbhandle, 'max_len', 'max_len_step', 'max_len_finalize');

var_dump(sqlite_array_query($dbhandle, 'SELECT max_len(a) from strings'));

?>

Neste exemplo, nós estamos criando uma função agregada que irá calcular o tamanho da maior string de uma das colunas da tabela. Para cada linha, max_len_step é executada e passado o parâmetro context. O parâmetro contexto é igual a qualquer outra variavel PHP e pode guardar uma matriz ou um objeto. Neste exemplo, nós estamos usando simplesmente para guardar o tamanho da maior string que nós vimos até aqui, se string tiver um tamanho maior do que o máximo atual, nós atualizamos o contexto para guardar este novo tamanho máximo.

Depois que todas as linhas tiverem sido processadas, SQLite chama a função max_len_finalize para determinar o resultado agregado. Aqui você pode fazer algum tipo de calculo baseado nos dados encontrados em context. No nosso exemplo simples, nós já calculamos o resultado de acordo com o progresso da query, então nós precisamos apenas retornar o valor de contexto.

Nota:

O exemplo acima não irá funcionar corretamente se a coluna conter dados binários. De uma olhada na pagina do manual para a função sqlite_udf_decode_binary() para uma explicação do porque é assim, e um exemplo de como fazer respeitar a codificação binária.

Dica

NÃO é recomendado que você guarde uma copia dos valores no contexto e então processe no final, já que você pode fazer com que o SQLite use uma grande quantidade de memória para processar a query - pense quanta memória você vai necessitar se tiver um milhão de linhas, cada uma contendo uma string de 32 bytes de tamanho.

Dica

Você pode usar sqlite_create_function() e sqlite_create_aggregate() para sobrescrever as funções nativas de SQL do SQLite.

Veja também sqlite_create_function(),
sqlite_udf_encode_binary() e
sqlite_udf_decode_binary().

sqlite_column
sqlite_create_function
SQLite Funções


Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.

sqlite_create_aggregate
sqlite_current
SQLite Funções
PHP Manual

sqlite_create_function

(PHP 5, sqlite >= 1.0.0)

sqlite_create_function — Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.

Descrição

bool sqlite_create_function ( resource $dbhandle , string $function_name , mixed $callback [, int $numero_de_argumentos ] )

sqlite_create_function() permite a você registrar uma função do PHP para usar com o SQLite como uma UDF (Função Definida pelo Usuário), assim ela pode ser usada apartir de suas SQLs.

O parâmetro dbhandle especifica o banco de dados que você quer estender, function_name especifica no nome da função que você quer usar em seus SQL, callback é qualquer função valida(função criada com function) que deve ser chamada para cuidar da função SQL. O parâmetro opcional numero_de_argumentos é usado como uma dica pelo interpretador do SQLite. É recomendado que você especifique um valor apenas se sua função aceitar sempre um numero fixo de parâmetros.

A UDF pode ser usada em qualquer SQL que possa chamar funções, como SELECT e UPDATE, também em triggers.

Exemplo #1 Exemplo de sqlite_create_function()

<?php
function md5_and_reverse($string)
{
    return strrev(md5($string));
}

if ($dbhandle = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {

    sqlite_create_function($dbhandle, 'md5rev', 'md5_and_reverse', 1);

    $sql  = 'SELECT md5rev(filename) FROM files';
    $rows = sqlite_array_query($dbhandle, $sql);
} else {
    echo 'Erro ao abrir o banco de dados sqlite: ' . $sqliteerror;
    exit;
}
?>

Neste exemplo, nós temos uma função que calcula a soma md5 de uma string e a reverte. Quando a SQL é executada, retorna o valor de filename transformado pela nossa função. Os dados retornados em $rows contém o resultado processado.

A beleza desta tecnica é que você não precisa processar o resultado usando um loop foreach() depois de ter feito a query na tabela.

O PHP registra uma função chamada php quando o banco de dados é aberto. A função php pode ser usada para chamar qualquer função do PHP sem precisar registrar ela antes.

Exemplo #2 Exemplo de como usar a função php

<?php
$rows = sqlite_array_query($dbhandle, "SELECT php('md5', filename) from files");
?>

Esta função irá chamar a função md5() para cada coluna filename na tabela e retornar o resultado em $rows

Nota:

Por razões de velocidade, O PHP não irá codificar/decodificar dados binários passados para e das UDF´s. Você precisa manualmente codificar/decodificar os parâmetros e valores de retorno de precisar lidar com dados binários desta maneira. De uma olhada em sqlite_udf_encode_binary() e sqlite_udf_decode_binary() para maiores detalhes.

Dica

Não é recomendado usar UDF's para procassar dados binários, a menos que velocidade não seja um requerimento para a sua aplicação.

Dica

Você pode usar sqlite_create_function() e sqlite_create_aggregate() para sobrescrever as funções nativas de SQL do SQLite.

Veja também sqlite_create_aggregate().

sqlite_create_aggregate
sqlite_current
SQLite Funções


Retorna a linha atual do resultado como uma matriz.

sqlite_create_function
sqlite_error_string
SQLite Funções
PHP Manual

sqlite_current

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_current — Retorna a linha atual do resultado como uma matriz.

Descrição

array sqlite_current ( resource $result [, int $result_type [, bool $decode_binary ]] )

sqlite_current() é identico a sqlite_fetch_array() só que não avança para a próxima linha antes de retornar os dados, retorna os dados apenas da posição atual.

Se a posição atual for após a ultima linha, esta função retorna FALSE

Nota:

Esta função não irá funcionar com resultados de query sem buffer.

Veja também sqlite_seek(),
sqlite_next(), e
sqlite_fetch_array().

sqlite_create_function
sqlite_error_string
SQLite Funções


Retorna a descrição textual de um código de erro

sqlite_current
sqlite_escape_string
SQLite Funções
PHP Manual

sqlite_error_string

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_error_string — Retorna a descrição textual de um código de erro

Descrição

string sqlite_error_string ( int $error_code )

Retorna uma descrição legível de um código de erro (error_code) retornado por sqlite_last_error().

Veja Também

  • sqlite_last_error() - Retorna o código de erro para o último erro em um banco de dados

sqlite_current
sqlite_escape_string
SQLite Funções


Escapa uma string para ser usada como um parâmetro em uma query

sqlite_error_string
sqlite_exec
SQLite Funções
PHP Manual

sqlite_escape_string

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_escape_string — Escapa uma string para ser usada como um parâmetro em uma query

Descrição

string sqlite_escape_string ( string $item )

sqlite_escape_string() irá corretamente marcar a string especificada por item para usar em uma SQL com o SQLite. Isto inclui dobrar as aspas simples (') e verificar os caracteres binários que não sejam seguros na query.

Se item contém um caractere NULL, ou se começa com um caractere cujo o valor ordinal seja 0x01, o PHP irá aplicar um tema para codificar binários então você pode de modo seguro guardar e recuperar dados binários.

Mesmo que a codificação faça ser seguro inserir os dados, ela fará com que comparações simples de texto e clausulas LIKE nas suas queries não possam ser usadas para as colunas que contém dados binários. Na prática, isto não deve ser um problema, já que seu tema deve ser algo que você não utiliza coisas assim em colunas binárias ( de fato, deve ser melhor guardar dados binários usando outros meios, como em arquivos).

Aviso

addslashes() NÃO deve ser usada para as suas queries com o SQLite; ela irá levar a resultados estranhos quando você recuperar os seus dados.

Nota: Não utilize esta função para codificar retornados por uma UDF( Função Definida pelo Usuário) criada usando sqlite_create_function() ou sqlite_create_aggregate() - use ao invés sqlite_udf_encode_binary().

Veja Também

  • sqlite_udf_encode_binary() - Codifica dados binários para utilizar com uma UDF

sqlite_error_string
sqlite_exec
SQLite Funções


Executes a result-less query against a given database

sqlite_escape_string
sqlite_factory
SQLite Funções
PHP Manual

sqlite_exec

SQLiteDatabase->exec

(PHP 5, PECL sqlite >= 1.0.3)

sqlite_exec -- SQLiteDatabase->exec — Executes a result-less query against a given database

Descrição

bool sqlite_exec ( resource $dbhandle , string $query [, string &$error_msg ] )
bool sqlite_exec ( string $query , resource $dbhandle )

Object oriented style (method):

bool SQLiteDatabase::queryExec ( string $query [, string &$error_msg ] )

Executes an SQL statement given by the query against a given database handle (specified by the dbhandle parameter).

Aviso

SQLite will execute multiple queries separated by semicolons, so you can use it to execute a batch of SQL that you have loaded from a file or have embedded in a script.

Parâmetros

dbhandle

The SQLite Database resource; returned from sqlite_open() when used procedurally. This parameter is not required when using the object-oriented method.

query

The query to be executed.

Data inside the query should be properly escaped.

error_msg

The specified variable will be filled if an error occurs. This is specially important because SQL syntax errors can't be fetched using the sqlite_last_error() function.

Nota: Duas sintaxes alternativas são suportaas para compatibilidade com outras extensões de banco de dados( como o MySQL). A forma preferida é a primeira, aonde o parâmetro dbhandle é o primeiro parãmetro da função.

Valor Retornado

This function will return a boolean result; TRUE for success or FALSE for failure. If you need to run a query that returns rows, see sqlite_query().

Os nomes de colunas retornados por SQLITE_ASSOC e SQLITE_BOTH serão serão modificados para maiúsculas/minúsculas de acordo com o valor da opção de configuração sqlite.assoc_case .

Histórico

Versão | Descrição
5.1.0 | Added the error_msg parameter

Exemplos

Exemplo #1 Procedural example

<?php
$dbhandle = sqlite_open('mysqlitedb');
$query = sqlite_exec($dbhandle, "UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
    exit("Error in query: '$error'");
} else {
    echo 'Number of rows modified: ', sqlite_changes($dbhandle);
}
?>

Exemplo #2 Object-oriented example

<?php
$dbhandle = new SQLiteDatabase('mysqlitedb');
$query = $dbhandle->queryExec("UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
    exit("Error in query: '$error'");
} else {
    echo 'Number of rows modified: ', $dbhandle->changes();
}
?>

Veja Também

  • sqlite_query() - Executa uma query em um banco de dados e retorna o manipulador de resultados
  • sqlite_unbuffered_query() - Executa uma query que não guarda em buffer os resultados
  • sqlite_array_query() - Executa uma query ao banco de dados e retorna uma matriz

sqlite_escape_string
sqlite_factory
SQLite Funções


Opens an SQLite database and returns an SQLiteDatabase object

sqlite_exec
sqlite_fetch_all
SQLite Funções
PHP Manual

sqlite_factory

(PHP 5)

sqlite_factory — Opens an SQLite database and returns an SQLiteDatabase object

Descrição

SQLiteDatabase sqlite_factory ( string $filename [, int $mode = 0666 [, string &$error_message ]] )

sqlite_factory() behaves similarly to sqlite_open() in that it opens an SQLite database or attempts to create it if it does not exist. However, a SQLiteDatabase object is returned rather than a resource. Please see the sqlite_open() reference page for further usage and caveats.

Parâmetros

filename

The filename of the SQLite database.

mode

The mode of the file. Intended to be used to open the database in read-only mode. Presently, this parameter is ignored by the sqlite library. The default value for mode is the octal value 0666 and this is the recommended value.

error_message

Passed by reference and is set to hold a descriptive error message explaining why the database could not be opened if there was an error.

Valor Retornado

Returns an SQLiteDatabase object on success, NULL on error.

Exemplos

Exemplo #1 sqlite_factory() example

<?php
$dbhandle = sqlite_factory('sqlitedb');
$dbhandle->query('SELECT user_id, username FROM users');

/* functionally equivalent to: */

$dbhandle = new SQLiteDatabase('sqlitedb');
$dbhandle->query('SELECT user_id, username FROM users');

?>

Veja Também

  • sqlite_open() - Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir
  • sqlite_popen() - Abre uma conexão persistente com um banco de dados SQLite. Irá criar um se ele não existir.

sqlite_exec
sqlite_fetch_all
SQLite Funções


Fetches all rows from a result set as an array of arrays

sqlite_factory
sqlite_fetch_array
SQLite Funções
PHP Manual

sqlite_fetch_all

SQLiteResult->fetchAll

SQLiteUnbuffered->fetchAll

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_fetch_all -- SQLiteResult->fetchAll -- SQLiteUnbuffered->fetchAll — Fetches all rows from a result set as an array of arrays

Descrição

array sqlite_fetch_all ( resource $result [, int $result_type = SQLITE_BOTH [, bool $decode_binary = true ]] )

Object oriented style (method):

array SQLiteResult::fetchAll ([ int $result_type = SQLITE_BOTH [, bool $decode_binary = true ]] )
array SQLiteUnbuffered::fetchAll ([ int $result_type = SQLITE_BOTH [, bool $decode_binary = true ]] )

sqlite_fetch_all() returns an array of the entire result set from the result resource. It is similar to calling sqlite_query() (or sqlite_unbuffered_query()) and then sqlite_fetch_array() for each row in the result set.

Parâmetros

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

result_type

O parâmetro opcional result_type aceita uma constante e determina como a matriz retornada será indexada. Usando SQLITE_ASSOC irá retornar apenas os índices associativos (campos com nomes) enquanto SQLITE_NUM irá retornar apenas os índices numéricos (campos com números). SQLITE_BOTH irá retornar ambos os índices, numérico e associativo. SQLITE_BOTH é o padrão para esta função.

decode_binary

Quando o parâmetro decode_binary for definido como TRUE (o padrão), o PHP irá decodificar a codificão binária aplicada aos dados como se eles tenham sido codificados usando sqlite_escape_string(). Você normalmente deve deixar este valor como o seu padrão, a menos que esteja operando com banco de dados criados por outras aplicações capazes de usar o sqlite.

Valor Retornado

Returns an array of the remaining rows in a result set. If called right after sqlite_query(), it returns all rows. If called after sqlite_fetch_array(), it returns the rest. If there are no rows in a result set, it returns an empty array.

Os nomes de colunas retornados por SQLITE_ASSOC e SQLITE_BOTH serão serão modificados para maiúsculas/minúsculas de acordo com o valor da opção de configuração sqlite.assoc_case .

Exemplos

Exemplo #1 Procedural example

<?php
$dbhandle = sqlite_open('sqlitedb');
$query = sqlite_query($dbhandle, 'SELECT name, email FROM users LIMIT 25');
$result = sqlite_fetch_all($query, SQLITE_ASSOC);
foreach ($result as $entry) {
    echo 'Name: ' . $entry['name'] . '  E-mail: ' . $entry['email'];
}
?>

Exemplo #2 Object-oriented example

<?php
$dbhandle = new SQLiteDatabase('sqlitedb');

$query = $dbhandle->query('SELECT name, email FROM users LIMIT 25'); // buffered result set
$query = $dbhandle->unbufferedQuery('SELECT name, email FROM users LIMIT 25'); // unbuffered result set

$result = $query->fetchAll(SQLITE_ASSOC);
foreach ($result as $entry) {
    echo 'Name: ' . $entry['name'] . '  E-mail: ' . $entry['email'];
}
?>

Veja Também

  • sqlite_fetch_array() - Obtém a próxima linha de um resultado como uma matriz.

sqlite_factory
sqlite_fetch_array
SQLite Funções


Obtém a próxima linha de um resultado como uma matriz.

sqlite_fetch_all
sqlite_fetch_column_types
SQLite Funções
PHP Manual

sqlite_fetch_array

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_fetch_array — Obtém a próxima linha de um resultado como uma matriz.

Descrição

array sqlite_fetch_array ( resource $result [, int $result_type [, bool $decode_binary ]] )

Obtém a próxima linha do result indicado. Se não houverem mais linhas, retorna FALSE, em outro caso retorna uma matriz associativa representando os dados da linha.

result_type pode ser usado para especificar como você quer que os resultados sejam retornados. O valor padrão é SQLITE_BOTH o qual retorna as colunas com ambos os índices, numérico e pelo nome da coluna. SQLITE_ASSOC faz com que a matriz tenha apenas o índice dos nomes das colunas, e SQLITE_NUM tenha apenas o índice numérico.

Os nomes das colunas retornados por SQLITE_ASSOC e SQLITE_BOTH irão diferenciar maiúsculas e minúsculas de acordo com o valor da opção de configuração sqlite.assoc_case.

Quando decode_binary for TRUE (o padrão), o PHP irá decodificar a codificação binária que foi aplicada aos dados se eles foram codificados usando sqlite_escape_string(). Você irá normalmente deixar este valor como o seu padrão, a menos que você esteja interagindo com banco de dados de outras aplicações que usem o sqlite.

Veja também sqlite_array_query() e sqlite_fetch_string().

sqlite_fetch_all
sqlite_fetch_column_types
SQLite Funções


Return an array of column types from a particular table

sqlite_fetch_array
sqlite_fetch_object
SQLite Funções
PHP Manual

sqlite_fetch_column_types

SQLiteDatabase->fetchColumnTypes

(PHP 5)

sqlite_fetch_column_types -- SQLiteDatabase->fetchColumnTypes — Return an array of column types from a particular table

Descrição

array sqlite_fetch_column_types ( string $table_name , resource $dbhandle [, int $result_type ] )

Object oriented style (method):

array SQLiteDatabase::fetchColumnTypes ( string $table_name [, int $result_type ] )

sqlite_fetch_column_types() returns an array of column data types from the specified table_name table.

Parâmetros

table_name

The table name to query.

dbhandle

The SQLite Database resource; returned from sqlite_open() when used procedurally. This parameter is not required when using the object-oriented method.

result_type

The optional result_type parameter accepts a constant and determines how the returned array will be indexed. Using SQLITE_ASSOC will return only associative indices (named fields) while SQLITE_NUM will return only numerical indices (ordinal field numbers). SQLITE_BOTH will return both associative and numerical indices. SQLITE_ASSOC is the default for this function.

Valor Retornado

Returns an array of column data types; FALSE on error.

Os nomes de colunas retornados por SQLITE_ASSOC e SQLITE_BOTH serão serão modificados para maiúsculas/minúsculas de acordo com o valor da opção de configuração sqlite.assoc_case .

Histórico

Versão | Descrição
5.1.0 | Added result_type

Exemplos

Exemplo #1 Procedural example

<?php
$db = sqlite_open('mysqlitedb');
sqlite_query($db, 'CREATE TABLE foo (bar varchar(10), arf text)');
$cols = sqlite_fetch_column_types('foo', $db, SQLITE_ASSOC);

foreach ($cols as $column => $type) {
    echo "Column: $column  Type: $type\n";
}
?>

Exemplo #2 Object-oriented example

<?php
$db = new SQLiteDatabase('mysqlitedb');
$db->query('CREATE TABLE foo (bar varchar(10), arf text)');
$cols = $db->fetchColumnTypes('foo', SQLITE_ASSOC);

foreach ($cols as $column => $type) {
    echo "Column: $column  Type: $type\n";
}
?>

O exemplo acima irá imprimir:

Column: bar  Type: VARCHAR
Column: arf  Type: TEXT

sqlite_fetch_array
sqlite_fetch_object
SQLite Funções


Fetches the next row from a result set as an object

sqlite_fetch_column_types
sqlite_fetch_single
SQLite Funções
PHP Manual

sqlite_fetch_object

SQLiteResult->fetchObject

SQLiteUnbuffered->fetchObject

(PHP 5)

sqlite_fetch_object -- SQLiteResult->fetchObject -- SQLiteUnbuffered->fetchObject — Fetches the next row from a result set as an object

Descrição

object sqlite_fetch_object ( resource $result [, string $class_name [, array $ctor_params [, bool $decode_binary = true ]]] )

Object oriented style (method):

object SQLiteResult::fetchObject ([ string $class_name [, array $ctor_params [, bool $decode_binary = true ]]] )
object SQLiteUnbuffered::fetchObject ([ string $class_name [, array $ctor_params [, bool $decode_binary = true ]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

sqlite_fetch_column_types
sqlite_fetch_single
SQLite Funções


Retorna o resultado da primeira coluna como string.

sqlite_fetch_object
sqlite_fetch_string
SQLite Funções
PHP Manual

sqlite_fetch_single

(PHP 5, PECL sqlite >= 1.0.1)

sqlite_fetch_single — Retorna o resultado da primeira coluna como string.

Descrição

string sqlite_fetch_single ( resource $result [, int $result_type [, bool $decode_binary ]] )

sqlite_fetch_single() é identica a sqlite_fetch_array() só que retorna o valor da primeira coluna no conjunto de resultados.

Este é o melhor meio de recuperar dados quando você esta interessado em valores de apenas uma coluna.

Exemplo #1 Exemplo sqlite_fetch_single()

<?php
if ($dbhandle = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {

    $sql = "SELECT id FROM sometable WHERE id = 42";
    $res = sqlite_query($dbhandle, $sql);

    if (sqlite_num_rows($res) > 0) {
        echo sqlite_fetch_single($res); // 42
    }

    sqlite_close($dbhandle);
}
?>

Veja também sqlite_fetch_array().

sqlite_fetch_object
sqlite_fetch_string
SQLite Funções


Sinônimo de sqlite_fetch_single

sqlite_fetch_single
sqlite_field_name
SQLite Funções
PHP Manual

sqlite_fetch_string

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_fetch_string — Sinônimo de sqlite_fetch_single()

Descrição

Esta função é um apelido para: sqlite_fetch_single().

sqlite_fetch_single
sqlite_field_name
SQLite Funções


Retorna o nome de um campo em particular.

sqlite_fetch_string
sqlite_has_more
SQLite Funções
PHP Manual

sqlite_field_name

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_field_name — Retorna o nome de um campo em particular.

Descrição

string sqlite_field_name ( resource $result , int $indice_campo )

Dado um numero de coluna, indice_campo, retorna o nome do campo no resultado result.

sqlite_fetch_string
sqlite_has_more
SQLite Funções


Retorna quando existem ou não mais linhas disponíveis

sqlite_field_name
sqlite_has_prev
SQLite Funções
PHP Manual

sqlite_has_more

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_has_more — Retorna quando existem ou não mais linhas disponíveis

Descrição

bool sqlite_has_more ( resource $result )

Verifica se mais linhas estão disponíveis para um dado conjunto de resultados.

Parâmetros

result

O resource de resultado do SQLite.

Valor Retornado

Retorna TRUE se há mais linhas disponíveis para o manipultador result, ou FALSE caso contrário.

Veja Também

  • sqlite_num_rows() - Retorna o número de linhas em um conjunto de resultados.
  • sqlite_changes() - Retorna o número de linhas que foram alteradas pela SQL mais recente.

sqlite_field_name
sqlite_has_prev
SQLite Funções


Returns whether or not a previous row is available

sqlite_has_more
sqlite_key
SQLite Funções
PHP Manual

sqlite_has_prev

SQLiteResult->hasPrev

(PHP 5)

sqlite_has_prev -- SQLiteResult->hasPrev — Returns whether or not a previous row is available

Descrição

bool sqlite_has_prev ( resource $result )

Object oriented style (method):

bool SQLiteResult::hasPrev ( void )

Find whether there are more previous rows from the given result handle.

Parâmetros

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

Nota:

Esta função não pode ser utilizada com manipuladores de resultados sem buffer.

Valor Retornado

Returns TRUE if there are more previous rows available from the result handle, or FALSE otherwise.

Veja Também

  • sqlite_prev() - Seek to the previous row number of a result set
  • sqlite_has_more() - Retorna quando existem ou não mais linhas disponíveis
  • sqlite_num_rows() - Retorna o número de linhas em um conjunto de resultados.

sqlite_has_more
sqlite_key
SQLite Funções


Returns the current row index

sqlite_has_prev
sqlite_last_error
SQLite Funções
PHP Manual

sqlite_key

SQLiteResult->key

(PHP 5 >= 5.1.0)

sqlite_key -- SQLiteResult->key — Returns the current row index

Descrição

int sqlite_key ( resource $result )

Object oriented style (method):

int SQLiteResult::key ( void )

sqlite_key() returns the current row index of the buffered result set result.

Parâmetros

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

Nota:

Esta função não pode ser utilizada com manipuladores de resultados sem buffer.

Valor Retornado

Returns the current row index of the buffered result set result.

Histórico

Versão | Descrição
5.0.4 | Prior to PHP 5.0.4, sqlite_key() was only able to be called as a method on a SQLiteResult object, not procedurally.

Veja Também

  • sqlite_next() - Move para a próxima linha.
  • sqlite_current() - Retorna a linha atual do resultado como uma matriz.
  • sqlite_rewind() - Vai para a primeira linha.

sqlite_has_prev
sqlite_last_error
SQLite Funções


Retorna o código de erro para o último erro em um banco de dados

sqlite_key
sqlite_last_insert_rowid
SQLite Funções
PHP Manual

sqlite_last_error

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_last_error — Retorna o código de erro para o último erro em um banco de dados

Descrição

int sqlite_last_error ( resource $dbhandle )

Retorna o código de erro da última operação realizada no banco de dados db. Uma descrição do código de erro pode ser obtida usando-se a função sqlite_error_string().

Veja também sqlite_error_string().

sqlite_key
sqlite_last_insert_rowid
SQLite Funções


Retorna o rowid da ultima linha inserida.

sqlite_last_error
sqlite_libencoding
SQLite Funções
PHP Manual

sqlite_last_insert_rowid

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_last_insert_rowid — Retorna o rowid da ultima linha inserida.

Descrição

int sqlite_last_insert_rowid ( resource $dbhandle )

Retorna o rowid da ultima linha inserida no banco de dados dbhandle, se ele foi criado com um campo de auto-incremento.

Dica

Você pode criar campos de auto-incremento no SQLite declarando eles como INTEGER PRIMARY KEY ao criar a sua tabela.

sqlite_last_error
sqlite_libencoding
SQLite Funções


Retorna a codificação da biblioteca SQLite

sqlite_last_insert_rowid
sqlite_libversion
SQLite Funções
PHP Manual

sqlite_libencoding

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_libencoding — Retorna a codificação da biblioteca SQLite

Descrição

string sqlite_libencoding ( void )

A biblioteca SQLite deve ser compilada ou com o ISO-8859-1 ou UTF-8. Esta função permite a você determinar qual codificação é usada em sua versão da biblioteca.

Aviso

A distribuição padrão do PHP constroi a libsqlite na codificação ISO-8859-1. Entretanto, ao invés de usar o ISO-8859-1, ela opera de acordo com as suas configurações de local atual para comparações e ordenação. Então, ao invés de ISO-8859-1, você deve pensar nela como sendo '8-bit'.

Quando compilada com suporte UTF-8, sqlite manuseia a codificação e decodificação de caracteres multi-byte UTF-8, mas ainda não faz um trabalho completo quando trabalhando com os dados (não é feita a normalização por exemplo), e alguma operações de comparação não são feitas corretamente ainda.

Aviso

Não é recomendado que você use o PHP em um servidor web com uma versão da biblioteca SQLite compilada com suporte UTF-8, já que a libsqlite irá abortar o processo se detectar um problema com a codificação UTF-8.

Veja Também

  • sqlite_lib_version()

sqlite_last_insert_rowid
sqlite_libversion
SQLite Funções


Retorna a versão da biblioteca SQLite

sqlite_libencoding
sqlite_next
SQLite Funções
PHP Manual

sqlite_libversion

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_libversion — Retorna a versão da biblioteca SQLite

Descrição

string sqlite_libversion ( void )

Retorna a versão da biblioteca SQLite.

Veja Também

  • sqlite_libencoding() - Retorna a codificação da biblioteca SQLite

sqlite_libencoding
sqlite_next
SQLite Funções


Move para a próxima linha.

sqlite_libversion
sqlite_num_fields
SQLite Funções
PHP Manual

sqlite_next

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_next — Move para a próxima linha.

Descrição

bool sqlite_next ( resource $result )

sqlite_next() avança o conjunto de resultados result para a próxima linha. Retorna FALSE se não houverem mais linhas, TRUE em outro caso.

Nota:

Esta função não pode ser usada com query sem buffer.

Veja também sqlite_seek(),
sqlite_current() e
sqlite_rewind().

sqlite_libversion
sqlite_num_fields
SQLite Funções


Retorna o número de campos no conjunto de resultados.

sqlite_next
sqlite_num_rows
SQLite Funções
PHP Manual

sqlite_num_fields

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_num_fields — Retorna o número de campos no conjunto de resultados.

Descrição

int sqlite_num_fields ( resource $result )

Retorna o numero de campos no conjunto de resultados result.

Veja também sqlite_column() e sqlite_num_rows().

sqlite_next
sqlite_num_rows
SQLite Funções


Retorna o número de linhas em um conjunto de resultados.

sqlite_num_fields
sqlite_open
SQLite Funções
PHP Manual

sqlite_num_rows

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_num_rows — Retorna o número de linhas em um conjunto de resultados.

Descrição

int sqlite_num_rows ( resource $result )

Retorna o numero de linhas no conjunto de resultados result.

Nota:

Esta função não pode ser usada com query sem buffer.

Veja também sqlite_changes() e sqlite_query().

sqlite_num_fields
sqlite_open
SQLite Funções


Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir

sqlite_num_rows
sqlite_popen
SQLite Funções
PHP Manual

sqlite_open

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_open — Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir

Descrição

resource sqlite_open ( string $filename [, int $mode [, string $&error_message ]] )

Retorna um recurso(conexão com o banco de dados) se funcionar, FALSE on error.

O parâmetro filename é o nome do banco de dados. Pode ser um caminho relativo ou absoluto para o arquivo que o sqlite irá usar para guardar os seus dados. Se o arquivo não existir, o sqlite tentará cria-lo. Você DEVE ter permissões de escrita para o arquivo caso você queira inserir dados ou modificar o seu banco de dados.

O parâmetro mode especifica o modo que o arquivo será aberto. A intenção é para ser usado para abrir o banco de dados em modo somente-leitura. Atualmente, este parâmetro é ignorado pela biblioteca sqlite. O valor padrão é o valor octal 0666 e este é o valor recomendado se você precisa usar o parâmetro errmessage.

errmessage é passado por referencia para conter uma mensagem de erro descritiva explicando porque o banco de dados não pôde ser aberto se houver um erro.

Exemplo #1 Exemplo sqlite_open()

<?php
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {
  sqlite_query('CREATE TABLE foo (bar varchar(10))');
  sqlite_query("INSERT INTO foo VALUES ('fnord')");
  $result = sqlite_query('select bar from foo');
  var_dump(sqlite_fetch_array($result));
} else {
  die ($sqliteerror);
}
?>

Dica

Em plataformas Unix, SQLite é sensível a scripts que usam a chamada do sistema fork(). Se você tem um script como esse, é recomendavel que você feche o banco de dados antes de usar o fork() e abra-o novamente no outro processo. Para maiores informações sobre isto, veja » The C language interface to the SQLite library na seção entitulada Multi-Threading And SQLite.

Dica

Não é recomentado trabalhar com banco de dados SQLite sobre partições NFS. Desde que NFS é notoriamente ruim quando se usa travas você vai achar que não pode abrir o banco de dados, e se abrir, o funcionamento das travas será indefinido.

Nota: Apartir da versão 2.8.2 da biblioteca do SQLite, você pode especificar :memory: como o parâmetro filename para criar um banco de dados que vive somente na memória do computador. Isto é útil principalmente para processar algo temporário, já que o banco de dados na memória será destruidoas ao final do processo. Também pode ser útil quando usado com o SQL ATTACH DATABASE para abrir outros banco de dados e realizar uma query entre eles.

Nota: SQLite é safe mode e a par do open_basedir.

Veja também sqlite_popen(),
sqlite_close() e
sqlite_query().

sqlite_num_rows
sqlite_popen
SQLite Funções


Abre uma conexão persistente com um banco de dados SQLite. Irá criar um se ele não existir.

sqlite_open
sqlite_prev
SQLite Funções
PHP Manual

sqlite_popen

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_popen — Abre uma conexão persistente com um banco de dados SQLite. Irá criar um se ele não existir.

Descrição

resource sqlite_popen ( string $nome_de_arquivo [, int $mode [, string $&error_message ]] )

Esta função funciona igualmente a sqlite_open() só que ela usa o mecanismo de recurso persistente do PHP. Para informações sobre os parâmetros, leia a pagina sobre sqlite_open().

sqlite_popen() irá primeiro conferir se já não existe uma conexão permanente já não esta aberta para o nome_de_arquivo indicado. Se encontrar, retorna esta conexão para o script, se não irá ciar uma nova conexão para o banco de dados.

O beneficio deste uso é que melhora a velocidade por não perder tempo lendo novamente o banco de dados e os indices para cada pagina servida por um servidor web via SAPI(qualquer SAPI com a exceção de CGI ou CLI).

Nota: Se você usa conexões persistentes e tem o seu banco de dados atualizado por um processo em segundo plano (talvés pelo crontab), e este processo re-cria o banco de dados sobrescrevendo-o (apagando e reconstruindo, ou movendo uma versão atualizada para sobrescrever a versão atual), você pode experimentar coisas estranhas quando uma conexão persistente com a versão antiga do banco de dados é reciclada. Para previnir esta situação, seu processo em segundo plano deve abrir o mesmo banco de dados e fazer as suas atualizações em uma transação.

Veja também sqlite_open(),
sqlite_close() e
sqlite_query().

sqlite_open
sqlite_prev
SQLite Funções


Seek to the previous row number of a result set

sqlite_popen
sqlite_query
SQLite Funções
PHP Manual

sqlite_prev

SQLiteResult->prev

(PHP 5)

sqlite_prev -- SQLiteResult->prev — Seek to the previous row number of a result set

Descrição

bool sqlite_prev ( resource $result )

Object oriented style (method):

bool SQLiteResult::prev ( void )

sqlite_prev() seeks back the result handle to the previous row.

Parâmetros

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

Nota:

Esta função não pode ser utilizada com manipuladores de resultados sem buffer.

Valor Retornado

Returns TRUE on success, or FALSE if there are no more previous rows.

Veja Também

  • sqlite_has_prev() - Returns whether or not a previous row is available
  • sqlite_rewind() - Vai para a primeira linha.
  • sqlite_next() - Move para a próxima linha.

sqlite_popen
sqlite_query
SQLite Funções


Executa uma query em um banco de dados e retorna o manipulador de resultados

sqlite_prev
sqlite_rewind
SQLite Funções
PHP Manual

sqlite_query

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_query — Executa uma query em um banco de dados e retorna o manipulador de resultados

Descrição

resource sqlite_query ( resource $dbhandle , string $query [, int $result_type [, string &$error_msg ]] )
resource sqlite_query ( string $query , resource $dbhandle [, int $result_type [, string &$error_msg ]] )

Modo orientado a objeto (método):

SQLiteResult SQLiteDatabase::query ( string $query [, int $result_type [, string &$error_msg ]] )

Executa uma SQL indicada pelo parâmetro query com um banco de dados.

Parâmetros

dbhandle

O resource do banco de dados SQLite; retornado da sqlite_open() quando usado no modo procedural. Este parâmetro não é requerido quando usado o método no modo orientado a objeto.

query

A query a ser executada.

result_type

O parâmetro opcional result_type aceita uma constante e determina como a matriz retornada será indexada. Usando SQLITE_ASSOC irá retornar apenas os índices associativos (campos com nomes) enquanto SQLITE_NUM irá retornar apenas os índices numéricos (campos com números). SQLITE_BOTH irá retornar ambos os índices, numérico e associativo. SQLITE_BOTH é o padrão para esta função.

error_msg

A especificada variável que será preenchida se um erro ocorrer. Isto é especialmente importante porque a os erros de sintaxe SQL não podem ser obtidos usando a função sqlite_last_error().

Nota: Duas sintaxes alternativas são suportaas para compatibilidade com outras extensões de banco de dados( como o MySQL). A forma preferida é a primeira, aonde o parâmetro dbhandle é o primeiro parãmetro da função.

Valor Retornado

Esta função irá retornar um manipulador de resultado ou FALSE em falha. Para queries que retornam linhas, o manipulador de resultado pode então ser usado com funções como sqlite_fetch_array() e sqlite_seek().

Qualquer que seja o tipo da query, esta função irá retornar FALSE se houver uma falha.

sqlite_query() retorna um resultado guardado em buffer e navegavel. Isto é util para query pequenas aonde você necessita acessar de forma aleatória as linhas. Resultados guardados em buffer irão alocar memoria para guardar todo o resultado e não irão retornar até que todo o resultado tenha sido retornado. Se você necessita apenas acesso sequencial aos dados, é recomendado que você use ao invés a função sqlite_unbuffered_query() que é muito mais rapida.

Histórico

Versão | Descrição
5.1.0 | Adicionado o parâmetro error_msg

Notas

Aviso

SQLite irá executar multiplas query separadas por ponto e virgula, assimvocê pode executar um lote de SQL que você tenha carregado de um arquivo ou colocado em um script. Entretando, isto funciona apenas quando o resultado de uma função não é usado - se for usado, apenas o primeiro comando SQL será executado. A função sqlite_exec() irá sempre executar multiplos comandos SQL.

Quando executar multiplas query o valor de retorno desta função será FALSE se houver um erro, mas indefinido em outro caso (pode ser TRUE para sucesso ou retornar um conjunto de resultados).

Veja Também

  • sqlite_unbuffered_query() - Executa uma query que não guarda em buffer os resultados
  • sqlite_array_query() - Executa uma query ao banco de dados e retorna uma matriz

sqlite_prev
sqlite_rewind
SQLite Funções


Vai para a primeira linha.

sqlite_query
sqlite_seek
SQLite Funções
PHP Manual

sqlite_rewind

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_rewind — Vai para a primeira linha.

Descrição

bool sqlite_rewind ( resource $result )

sqlite_rewind() volta para a primeira linha no conjunto de resultados. Retorna FALSE se não houverem mais linhas no conjunto de resultados ou, TRUE em outro caso.

Nota:

Esta função não pode ser usada com query sem buffer.

Veja também sqlite_next(),
sqlite_current() e
sqlite_seek().

sqlite_query
sqlite_seek
SQLite Funções


Move o ponteiro interno para uma linha em um conjunto de resultados

sqlite_rewind
sqlite_single_query
SQLite Funções
PHP Manual

sqlite_seek

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_seek — Move o ponteiro interno para uma linha em um conjunto de resultados

Descrição

bool sqlite_seek ( resource $result , int $rownum )

sqlite_seek() move o ponteiro interno para a linha idicada pelo parâmetro rownum. O numero da linha é baseado em zero (0 é a primeira linha). Retorna FALSE se a linha não existir, TRUE em outro caso.

Nota:

Esta função não pode ser usada com query sem buffer.

Veja também sqlite_next(),
sqlite_current() e
sqlite_rewind().

sqlite_rewind
sqlite_single_query
SQLite Funções


Executes a query and returns either an array for one single column or the value of the first row

sqlite_seek
sqlite_udf_decode_binary
SQLite Funções
PHP Manual

sqlite_single_query

SQLiteDatabase->singleQuery

(PHP 5, PECL sqlite >= 1.0.1)

sqlite_single_query -- SQLiteDatabase->singleQuery — Executes a query and returns either an array for one single column or the value of the first row

Descrição

array sqlite_single_query ( resource $db , string $query [, bool $first_row_only [, bool $decode_binary ]] )

Object oriented style (method):

array SQLiteDatabase::singleQuery ( string $query [, bool $first_row_only [, bool $decode_binary ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

sqlite_seek
sqlite_udf_decode_binary
SQLite Funções


Decodifica dados binários passados como parâmetros para uma UDF

sqlite_single_query
sqlite_udf_encode_binary
SQLite Funções
PHP Manual

sqlite_udf_decode_binary

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_udf_decode_binary — Decodifica dados binários passados como parâmetros para uma UDF

Descrição

string sqlite_udf_decode_binary ( string $data )

sqlite_udf_decode_binary() decodifica dados binários que foram codificados antes por sqlite_udf_encode_binary() ou sqlite_escape_string().

Você deve usar esta função em parâmetros passados para a sua UDF se você precisar usar dados binários, esta função irá retornar os seus dados para a sua forma natural, não codificada.

O PHP não faz esta codificação/decodificação automaticamente já que certamente haveria um impacto na performance se ele fizesse.

Exemplos

Exemplo #1 Exemplo de função binary-safe max_length

<?php
$data = array(
   'one',
   'two',
   'three',
   'four',
   'five',
   'six',
   'seven',
   'eight',
   'nine',
   'ten',
   );
$db = sqlite_open(':memory:');
sqlite_query($db, "CREATE TABLE strings(a)");
foreach ($data as $str) {
    $str = sqlite_escape_string($str);
    sqlite_query($db, "INSERT INTO strings VALUES ('$str')");
}

function max_len_step(&$context, $string)
{
    $string = sqlite_udf_decode_binary($string);
    if (strlen($string) > $context) {
        $context = strlen($string);
    }
}

function max_len_finalize(&$context)
{
    return $context;
}

sqlite_create_aggregate($db, 'max_len', 'max_len_step', 'max_len_finalize');

var_dump(sqlite_array_query($db, 'SELECT max_len(a) from strings'));

?>

Veja Também

  • sqlite_udf_encode_binary() - Codifica dados binários para utilizar com uma UDF
  • sqlite_create_function() - Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
  • sqlite_create_aggregate() - Registra uma função agregada UDF para usar em SQLs

sqlite_single_query
sqlite_udf_encode_binary
SQLite Funções


Codifica dados binários para utilizar com uma UDF

sqlite_udf_decode_binary
sqlite_unbuffered_query
SQLite Funções
PHP Manual

sqlite_udf_encode_binary

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_udf_encode_binary — Codifica dados binários para utilizar com uma UDF

Descrição

string sqlite_udf_encode_binary ( string $data )

sqlite_udf_encode_binary() aplica uma codificação binária codificando data assim pode ser seguramente retornado apartir de queries (desde que a API da libsqlite não é binary safe).

Se houver uma chance de seus dados não sejam seguros para binários (por exemplo contenham um NULL no meio ao invés de no final, ou se tiver um 0x01 como primeiro caractere) então você deve chamar esta função para codificar os dados que vem da sua UDF.

O PHP não faz esta codificação/decodificação automaticamente já que certamente haveria um impacto na performance se ele fizesse.

Nota:

Não use sqlite_escape_string() para escapar as strings retornadas de uma UDF já que isso vai levar a issso ser feito duas vezes. Ao invés use sqlite_udf_encode_binary()!

Veja Também

  • sqlite_udf_decode_binary() - Decodifica dados binários passados como parâmetros para uma UDF
  • sqlite_escape_string() - Escapa uma string para ser usada como um parâmetro em uma query
  • sqlite_create_function() - Registra uma Função Definida pelo Usuário (UDF) para usar em SQL.
  • sqlite_create_aggregate() - Registra uma função agregada UDF para usar em SQLs

sqlite_udf_decode_binary
sqlite_unbuffered_query
SQLite Funções


Executa uma query que não guarda em buffer os resultados

sqlite_udf_encode_binary
sqlite_valid
SQLite Funções
PHP Manual

sqlite_unbuffered_query

(PHP 5, PECL sqlite >= 1.0.0)

sqlite_unbuffered_query — Executa uma query que não guarda em buffer os resultados

Descrição

resource sqlite_unbuffered_query ( resource $dbhandle , string $query )
resource sqlite_unbuffered_query ( string $query , resource $dbhandle )

sqlite_unbuffered_query() é identica a sqlite_query() exceto que o resultado é retornado de uma maneira sequencial de acesso somente para frente, so pode ser usado para ler cada linha, uma após a outra.

Esta função é ideal para gerar coisas como tabelas em HTML aonde você só precisa processar uma linha de cada vez e não necessita de acesso aleatório aos dados.

Nota:

Funções como sqlite_seek(),
sqlite_rewind(), sqlite_next(),
sqlite_current() e
sqlite_num_rows() não funcionam com conjunto de resultados
retornados por sqlite_unbuffered_query().

Veja também sqlite_query().

sqlite_udf_encode_binary
sqlite_valid
SQLite Funções


Returns whether more rows are available

sqlite_unbuffered_query
SQLite3
SQLite Funções
PHP Manual

sqlite_valid

SQLiteResult->valid

SQLiteUnbuffered->valid

(PHP 5)

sqlite_valid -- SQLiteResult->valid -- SQLiteUnbuffered->valid — Returns whether more rows are available

Descrição

bool sqlite_valid ( resource $result )

Object oriented style (method):

bool SQLiteResult::valid ( void )
bool SQLiteUnbuffered::valid ( void )

Finds whether more rows are available from the given result handle.

Parâmetros

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

Nota:

Esta função não pode ser utilizada com manipuladores de resultados sem buffer.

Valor Retornado

Returns TRUE if there are more rows available from the result handle, or FALSE otherwise.

Veja Também

  • sqlite_num_rows() - Retorna o número de linhas em um conjunto de resultados.
  • sqlite_changes() - Retorna o número de linhas que foram alteradas pela SQL mais recente.

sqlite_unbuffered_query
SQLite3
SQLite Funções


SQLite3

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • SQLite3 — The SQLite3 class
    • SQLite3::busyTimeout — Sets the busy connection handler
    • SQLite3::changes — Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement
    • SQLite3::close — Closes the database connection
    • SQLite3::__construct — Instantiates an SQLite3 object and opens an SQLite 3 database
    • SQLite3::createAggregate — Registers a PHP function for use as an SQL aggregate function
    • SQLite3::createFunction — Registers a PHP function for use as an SQL scalar function
    • SQLite3::escapeString — Returns a string that has been properly escaped
    • SQLite3::exec — Executes a result-less query against a given database
    • SQLite3::lastErrorCode — Returns the numeric result code of the most recent failed SQLite request
    • SQLite3::lastErrorMsg — Returns English text describing the most recent failed SQLite request
    • SQLite3::lastInsertRowID — Returns the row ID of the most recent INSERT into the database
    • SQLite3::loadExtension — Attempts to load an SQLite extension library
    • SQLite3::open — Opens an SQLite database
    • SQLite3::prepare — Prepares an SQL statement for execution
    • SQLite3::query — Executes an SQL query
    • SQLite3::querySingle — Executes a query and returns a single result
    • SQLite3::version — Returns the SQLite3 library version as a string constant and as a number
  • SQLite3Stmt — The SQLite3Stmt class
    • SQLite3Stmt::bindParam — Binds a parameter to a statement variable
    • SQLite3Stmt::bindValue — Binds the value of a parameter to a statement variable
    • SQLite3Stmt::clear — Clears all current bound parameters
    • SQLite3Stmt::close — Closes the prepared statement
    • SQLite3Stmt::execute — Executes a prepared statement and returns a result set object
    • SQLite3Stmt::paramCount — Returns the number of parameters within the prepared statement
    • SQLite3Stmt::reset — Resets the prepared statement
  • SQLite3Result — The SQLite3Result class
    • SQLite3Result::columnName — Returns the name of the nth column
    • SQLite3Result::columnType — Returns the type of the nth column
    • SQLite3Result::fetchArray — Fetches a result row as an associative or numerically indexed array or both
    • SQLite3Result::finalize — Closes the result set
    • SQLite3Result::numColumns — Returns the number of columns in the result set
    • SQLite3Result::reset — Resets the result set back to the first row
sqlite_valid
Introdução
Vendor Specific Database Extensions


Introdução

Support for SQLite version 3 databases.

SQLite3
Instalação/Configuração
SQLite3


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SQLite3


Instalação

The SQLite3 extension is enabled by default as of PHP 5.3.0. It's possible to disable it by using --without-sqlite3 at compile time.

Windows users must enable php_sqlite3.dll in order to use this extension. This DLL is included with Windows distributions of PHP as of PHP 5.3.0.

Nota:

This extension was briefly a PECL extension but that version is only recommended for experimental use.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

SQLite3 Opções de Configuração
Nome | Padrão | Modificável | Changelog
sqlite3.extension_dir | NULL | PHP_INI_SYSTEM |

Breve descrição das diretivas de configuração.

sqlite3.extension_dir string

Path to the directory where the loadable extensions for SQLite reside.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SQLITE3_ASSOC (integer)
Specifies that the Sqlite3Result::fetchArray() method shall return an array indexed by column name as returned in the corresponding result set.
SQLITE3_NUM (integer)
Specifies that the Sqlite3Result::fetchArray() method shall return an array indexed by column number as returned in the corresponding result set, starting at column 0.
SQLITE3_BOTH (integer)
Specifies that the Sqlite3Result::fetchArray() method shall return an array indexed by both column name and number as returned in the corresponding result set, starting at column 0.
SQLITE3_INTEGER (integer)
Represents the SQLite3 INTEGER storage class.
SQLITE3_FLOAT (integer)
Represents the SQLite3 REAL (FLOAT) storage class.
SQLITE3_TEXT (integer)
Represents the SQLite3 TEXT storage class.
SQLITE3_BLOB (integer)
Represents the SQLite3 BLOB storage class.
SQLITE3_NULL (integer)
Represents the SQLite3 NULL storage class.
SQLITE3_OPEN_READONLY (integer)
Specifies that the SQLite3 database be opened for reading only.
SQLITE3_OPEN_READWRITE (integer)
Specifies that the SQLite3 database be opened for reading and writing.
SQLITE3_OPEN_CREATE (integer)
Specifies that the SQLite3 database be created if it does not already exist.

Tipos Resource
SQLite3
SQLite3


The SQLite3 class

Introdução

A class that interfaces SQLite 3 databases.

Sinopse da classe

SQLite3 {
/* Methods */
public bool busyTimeout ( int $msecs )
public int changes ( void )
public bool close ( void )
__construct ( string $filename [, int $flags [, string $encryption_key ]] )
public bool createAggregate ( string $name , mixed $step_callback , mixed $final_callback [, int $argument_count = -1 ] )
public bool createFunction ( string $name , mixed $callback [, int $argument_count = -1 ] )
public string escapeString ( string $value )
public bool exec ( string $query )
public int lastErrorCode ( void )
public string lastErrorMsg ( void )
public int lastInsertRowID ( void )
public bool loadExtension ( string $shared_library )
public bool open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] )
public SQLite3Stmt prepare ( string $query )
public SQLite3Result query ( string $query )
public mixed querySingle ( string $query [, bool $entire_row = false ] )
public array version ( void )
}

Índice

  • SQLite3::busyTimeout — Sets the busy connection handler
  • SQLite3::changes — Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement
  • SQLite3::close — Closes the database connection
  • SQLite3::__construct — Instantiates an SQLite3 object and opens an SQLite 3 database
  • SQLite3::createAggregate — Registers a PHP function for use as an SQL aggregate function
  • SQLite3::createFunction — Registers a PHP function for use as an SQL scalar function
  • SQLite3::escapeString — Returns a string that has been properly escaped
  • SQLite3::exec — Executes a result-less query against a given database
  • SQLite3::lastErrorCode — Returns the numeric result code of the most recent failed SQLite request
  • SQLite3::lastErrorMsg — Returns English text describing the most recent failed SQLite request
  • SQLite3::lastInsertRowID — Returns the row ID of the most recent INSERT into the database
  • SQLite3::loadExtension — Attempts to load an SQLite extension library
  • SQLite3::open — Opens an SQLite database
  • SQLite3::prepare — Prepares an SQL statement for execution
  • SQLite3::query — Executes an SQL query
  • SQLite3::querySingle — Executes a query and returns a single result
  • SQLite3::version — Returns the SQLite3 library version as a string constant and as a number
Constantes pré-definidas
SQLite3::busyTimeout
SQLite3


Sets the busy connection handler

SQLite3
SQLite3::changes
SQLite3
PHP Manual

SQLite3::busyTimeout

(PHP 5 >= 5.3.3)

SQLite3::busyTimeout — Sets the busy connection handler

Descrição

public bool SQLite3::busyTimeout ( int $msecs )

Sets a busy handler that will sleep until the database is not locked or the timeout is reached.

Parâmetros

msecs

The milliseconds to sleep. Setting this value to a value less than or equal to zero, will turn off an already set timeout handler.

Valor Retornado

Returns TRUE on success, FALSE on failure.

SQLite3
SQLite3::changes
SQLite3


Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement

SQLite3::busyTimeout
SQLite3::close
SQLite3
PHP Manual

SQLite3::changes

(PHP 5 >= 5.3.0)

SQLite3::changes — Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement

Descrição

public int SQLite3::changes ( void )

Returns the number of database rows that were changed (or inserted or deleted) by the most recent SQL statement.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer value corresponding to the number of database rows changed (or inserted or deleted) by the most recent SQL statement.

Exemplos

Exemplo #1 SQLite3::changes() example

<?php
$db = new SQLite3('mysqlitedb.db');

$query = $db->exec('UPDATE counter SET views=0 WHERE page="test"');
if ($query) {
    echo 'Number of rows modified: ', $db->changes();
}
?>

SQLite3::busyTimeout
SQLite3::close
SQLite3


Closes the database connection

SQLite3::changes
SQLite3::__construct
SQLite3
PHP Manual

SQLite3::close

(PHP 5 >= 5.3.0)

SQLite3::close — Closes the database connection

Descrição

public bool SQLite3::close ( void )

Closes the database connection.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success, FALSE on failure.

Exemplos

Exemplo #1 SQLite3::close() example

<?php
$db = new SQLite3('mysqlitedb.db');
$db->close();
?>

SQLite3::changes
SQLite3::__construct
SQLite3


Instantiates an SQLite3 object and opens an SQLite 3 database

SQLite3::close
SQLite3::createAggregate
SQLite3
PHP Manual

SQLite3::__construct

(PHP 5 >= 5.3.0)

SQLite3::__construct — Instantiates an SQLite3 object and opens an SQLite 3 database

Descrição

SQLite3::__construct ( string $filename [, int $flags [, string $encryption_key ]] )

Instantiates an SQLite3 object and opens a connection to an SQLite 3 database. If the build includes encryption, then it will attempt to use the key.

Parâmetros

filename

Path to the SQLite database.

flags

Optional flags used to determine how to open the SQLite database. By default, open uses SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE.

  • SQLITE3_OPEN_READONLY: Open the database for reading only.

  • SQLITE3_OPEN_READWRITE: Open the database for reading and writing.

  • SQLITE3_OPEN_CREATE: Create the database if it does not exist.

encryption_key

An optional encryption key used when encrypting and decrypting an SQLite database.

Valor Retornado

Returns an SQLite3 object on success.

Exemplos

Exemplo #1 SQLite3::__construct() example

<?php
$db = new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('This is a test')");

$result = $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>

SQLite3::close
SQLite3::createAggregate
SQLite3


Registers a PHP function for use as an SQL aggregate function

SQLite3::__construct
SQLite3::createFunction
SQLite3
PHP Manual

SQLite3::createAggregate

(PHP 5 >= 5.3.0)

SQLite3::createAggregate — Registers a PHP function for use as an SQL aggregate function

Descrição

public bool SQLite3::createAggregate ( string $name , mixed $step_callback , mixed $final_callback [, int $argument_count = -1 ] )

Registers a PHP function or user-defined function for use as an SQL aggregate function for use within SQL statements.

Parâmetros

name

Name of the SQL aggregate to be created or redefined.

step_callback

The name of a PHP function or user-defined function to apply as a callback for every item in the aggregate.

final_callback

The name of a PHP function or user-defined function to apply as a callback at the end of the aggregate data.

argument_count

The number of arguments that the SQL aggregate takes. If this parameter is negative, then the SQL aggregate may take any number of arguments.

Valor Retornado

Returns TRUE upon successful creation of the aggregate, FALSE on failure.

SQLite3::__construct
SQLite3::createFunction
SQLite3


Registers a PHP function for use as an SQL scalar function

SQLite3::createAggregate
SQLite3::escapeString
SQLite3
PHP Manual

SQLite3::createFunction

(PHP 5 >= 5.3.0)

SQLite3::createFunction — Registers a PHP function for use as an SQL scalar function

Descrição

public bool SQLite3::createFunction ( string $name , mixed $callback [, int $argument_count = -1 ] )

Registers a PHP function or user-defined function for use as an SQL scalar function for use within SQL statements.

Parâmetros

name

Name of the SQL function to be created or redefined.

callback

The name of a PHP function or user-defined function to apply as a callback, defining the behavior of the SQL function.

argument_count

The number of arguments that the SQL function takes. If this parameter is negative, then the SQL function may take any number of arguments.

Valor Retornado

Returns TRUE upon successful creation of the function, FALSE on failure.

Exemplos

Exemplo #1 SQLite3::createFunction() example

<?php
function my_udf_md5($string) {
    return md5($string);
}

$db = new SQLite3('mysqlitedb.db');
$db->createFunction('my_udf_md5', 'my_udf_md5');

var_dump($db->querySingle('SELECT my_udf_md5("test")'));
?>

O exemplo acima irá imprimir algo similar a:

string(32) "098f6bcd4621d373cade4e832627b4f6"

SQLite3::createAggregate
SQLite3::escapeString
SQLite3


Returns a string that has been properly escaped

SQLite3::createFunction
SQLite3::exec
SQLite3
PHP Manual

SQLite3::escapeString

(PHP 5 >= 5.3.0)

SQLite3::escapeString — Returns a string that has been properly escaped

Descrição

public string SQLite3::escapeString ( string $value )

Returns a string that has been properly escaped for safe inclusion in an SQL statement.

Parâmetros

value

The string to be escaped.

Valor Retornado

Returns a properly escaped string that may be used safely in an SQL statement.

Notas

Aviso

addslashes() should NOT be used to quote your strings for SQLite queries; it will lead to strange results when retrieving your data.

SQLite3::createFunction
SQLite3::exec
SQLite3


Executes a result-less query against a given database

SQLite3::escapeString
SQLite3::lastErrorCode
SQLite3
PHP Manual

SQLite3::exec

(PHP 5 >= 5.3.0)

SQLite3::exec — Executes a result-less query against a given database

Descrição

public bool SQLite3::exec ( string $query )

Executes a result-less query against a given database.

Parâmetros

query

The SQL query to execute (typically an INSERT, UPDATE, or DELETE query).

Valor Retornado

Returns TRUE if the query succeeded, FALSE on failure.

Exemplos

Exemplo #1 SQLite3::exec() example

<?php
$db = new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE bar (bar STRING)');
?>

SQLite3::escapeString
SQLite3::lastErrorCode
SQLite3


Returns the numeric result code of the most recent failed SQLite request

SQLite3::exec
SQLite3::lastErrorMsg
SQLite3
PHP Manual

SQLite3::lastErrorCode

(PHP 5 >= 5.3.0)

SQLite3::lastErrorCode — Returns the numeric result code of the most recent failed SQLite request

Descrição

public int SQLite3::lastErrorCode ( void )

Returns the numeric result code of the most recent failed SQLite request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer value representing the numeric result code of the most recent failed SQLite request.

SQLite3::exec
SQLite3::lastErrorMsg
SQLite3


Returns English text describing the most recent failed SQLite request

SQLite3::lastErrorCode
SQLite3::lastInsertRowID
SQLite3
PHP Manual

SQLite3::lastErrorMsg

(PHP 5 >= 5.3.0)

SQLite3::lastErrorMsg — Returns English text describing the most recent failed SQLite request

Descrição

public string SQLite3::lastErrorMsg ( void )

Returns English text describing the most recent failed SQLite request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an English string describing the most recent failed SQLite request.

SQLite3::lastErrorCode
SQLite3::lastInsertRowID
SQLite3


Returns the row ID of the most recent INSERT into the database

SQLite3::lastErrorMsg
SQLite3::loadExtension
SQLite3
PHP Manual

SQLite3::lastInsertRowID

(PHP 5 >= 5.3.0)

SQLite3::lastInsertRowID — Returns the row ID of the most recent INSERT into the database

Descrição

public int SQLite3::lastInsertRowID ( void )

Returns the row ID of the most recent INSERT into the database.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the row ID of the most recent INSERT into the database

SQLite3::lastErrorMsg
SQLite3::loadExtension
SQLite3


Attempts to load an SQLite extension library

SQLite3::lastInsertRowID
SQLite3::open
SQLite3
PHP Manual

SQLite3::loadExtension

(PHP 5 >= 5.3.0)

SQLite3::loadExtension — Attempts to load an SQLite extension library

Descrição

public bool SQLite3::loadExtension ( string $shared_library )

Attempts to load an SQLite extension library.

Parâmetros

shared_library

The name of the library to load. The library must be located in the directory specified in the configure option sqlite3.extension_dir.

Valor Retornado

Returns TRUE if the extension is successfully loaded, FALSE on failure.

Exemplos

Exemplo #1 SQLite3::loadExtension() example

<?php
$db = new SQLite3('mysqlitedb.db');
$db->loadExtension('libagg.so');
?>

SQLite3::lastInsertRowID
SQLite3::open
SQLite3


Opens an SQLite database

SQLite3::loadExtension
SQLite3::prepare
SQLite3
PHP Manual

SQLite3::open

(PHP 5 >= 5.3.0)

SQLite3::open — Opens an SQLite database

Descrição

public bool SQLite3::open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] )

Opens an SQLite 3 Database. If the build includes encryption, then it will attempt to use the key.

Parâmetros

filename

Path to the SQLite database.

flags

Optional flags used to determine how to open the SQLite database. By default, open uses SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE.

  • SQLITE3_OPEN_READONLY: Open the database for reading only.

  • SQLITE3_OPEN_READWRITE: Open the database for reading and writing.

  • SQLITE3_OPEN_CREATE: Create the database if it does not exist.

encryption_key

An optional encryption key used when encrypting and decrypting an SQLite database.

Valor Retornado

Returns TRUE on success, FALSE on failure to open the database.

Exemplos

Exemplo #1 SQLite3::open() example

<?php
/**
 * Simple example of extending the SQLite3 class and changing the __construct
 * parameters, then using the open method to initialize the DB.
 */
class MyDB extends SQLite3
{
    function __construct()
    {
        $this->open('mysqlitedb.db');
    }
}

$db = new MyDB();

$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('This is a test')");

$result = $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>

SQLite3::loadExtension
SQLite3::prepare
SQLite3


Prepares an SQL statement for execution

SQLite3::open
SQLite3::query
SQLite3
PHP Manual

SQLite3::prepare

(PHP 5 >= 5.3.0)

SQLite3::prepare — Prepares an SQL statement for execution

Descrição

public SQLite3Stmt SQLite3::prepare ( string $query )

Prepares an SQL statement for execution and returns an SQLite3Stmt object.

Parâmetros

query

The SQL query to prepare.

Valor Retornado

Returns an SQLite3Stmt object on success or FALSE on failure.

Exemplos

Exemplo #1 SQLite3::prepare() example

<?php
unlink('mysqlitedb.db');
$db = new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (id INTEGER, bar STRING)');
$db->exec("INSERT INTO foo (id, bar) VALUES (1, 'This is a test')");

$stmt = $db->prepare('SELECT bar FROM foo WHERE id=:id');
$stmt->bindValue(':id', 1, SQLITE3_INTEGER);

$result = $stmt->execute();
var_dump($result->fetchArray());
?>

SQLite3::open
SQLite3::query
SQLite3


Executes an SQL query

SQLite3::prepare
SQLite3::querySingle
SQLite3
PHP Manual

SQLite3::query

(PHP 5 >= 5.3.0)

SQLite3::query — Executes an SQL query

Descrição

public SQLite3Result SQLite3::query ( string $query )

Executes an SQL query, returning an SQLite3Result object if the query returns results.

Parâmetros

query

The SQL query to execute.

Valor Retornado

Returns an SQLite3Result object if the query returns results. Otherwise, returns TRUE if the query succeeded, FALSE on failure.

Exemplos

Exemplo #1 SQLite3::query() example

<?php
$db = new SQLite3('mysqlitedb.db');

$results = $db->query('SELECT bar FROM foo');
while ($row = $results->fetchArray()) {
    var_dump($row);
}
?>

SQLite3::prepare
SQLite3::querySingle
SQLite3


Executes a query and returns a single result

SQLite3::query
SQLite3::version
SQLite3
PHP Manual

SQLite3::querySingle

(PHP 5 >= 5.3.0)

SQLite3::querySingle — Executes a query and returns a single result

Descrição

public mixed SQLite3::querySingle ( string $query [, bool $entire_row = false ] )

Executes a query and returns a single result.

Parâmetros

query

The SQL query to execute.

entire_row

By default, querySingle() returns the value of the first column returned by the query. If entire_row is TRUE, then it returns an array of the entire first row.

Valor Retornado

Returns the value of the first column of results or an array of the entire first row (if entire_row is TRUE).

If the query is valid but no results are returned, then NULL will be returned if entire_row is FALSE, otherwise an empty array is returned.

Invalid or failing queries will return FALSE.

Exemplos

Exemplo #1 SQLite3::querySingle() example

<?php
$db = new SQLite3('mysqlitedb.db');

var_dump($db->querySingle('SELECT username FROM user WHERE userid=1'));
print_r($db->querySingle('SELECT username, email FROM user WHERE userid=1', true));
?>

O exemplo acima irá imprimir algo similar a:

string(5) "Scott"
Array
(
    [username] => Scott
    [email] => scott@example.com
)

SQLite3::query
SQLite3::version
SQLite3


Returns the SQLite3 library version as a string constant and as a number

SQLite3::querySingle
SQLite3Stmt
SQLite3
PHP Manual

SQLite3::version

(PHP 5 >= 5.3.0)

SQLite3::version — Returns the SQLite3 library version as a string constant and as a number

Descrição

public array SQLite3::version ( void )

Returns the SQLite3 library version as a string constant and as a number.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an associative array with the keys "versionString" and "versionNumber".

Exemplos

Exemplo #1 SQLite3::version() example

<?php
print_r(SQLite3::version());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [versionString] => 3.5.9
    [versionNumber] => 3005009
)

SQLite3::querySingle
SQLite3Stmt
SQLite3


The SQLite3Stmt class

Introdução

A class that handles prepared statements for the SQLite 3 extension.

Sinopse da classe

SQLite3Stmt {
/* Methods */
public bool bindParam ( string $sql_param , mixed &$param [, int $type ] )
public bool bindValue ( string $sql_param , mixed $value [, int $type ] )
public bool clear ( void )
public bool close ( void )
public SQLite3Result execute ( void )
public int paramCount ( void )
public bool reset ( void )
}

Índice

  • SQLite3Stmt::bindParam — Binds a parameter to a statement variable
  • SQLite3Stmt::bindValue — Binds the value of a parameter to a statement variable
  • SQLite3Stmt::clear — Clears all current bound parameters
  • SQLite3Stmt::close — Closes the prepared statement
  • SQLite3Stmt::execute — Executes a prepared statement and returns a result set object
  • SQLite3Stmt::paramCount — Returns the number of parameters within the prepared statement
  • SQLite3Stmt::reset — Resets the prepared statement
SQLite3::version
SQLite3Stmt::bindParam
SQLite3


Binds a parameter to a statement variable

SQLite3Stmt
SQLite3Stmt::bindValue
SQLite3Stmt
PHP Manual

SQLite3Stmt::bindParam

(PHP 5 >= 5.3.0)

SQLite3Stmt::bindParam — Binds a parameter to a statement variable

Descrição

public bool SQLite3Stmt::bindParam ( string $sql_param , mixed &$param [, int $type ] )

Binds a parameter to a statement variable.

Parâmetros

sql_param

An string identifying the statement variable to which the parameter should be bound.

param

The parameter to bind to a statement variable.

type

The data type of the parameter to bind.

  • SQLITE3_INTEGER: The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.

  • SQLITE3_FLOAT: The value is a floating point value, stored as an 8-byte IEEE floating point number.

  • SQLITE3_TEXT: The value is a text string, stored using the database encoding (UTF-8, UTF-16BE or UTF-16-LE).

  • SQLITE3_BLOB: The value is a blob of data, stored exactly as it was input.

  • SQLITE3_NULL: The value is a NULL value.

Valor Retornado

Returns TRUE if the parameter is bound to the statement variable, FALSE on failure.

SQLite3Stmt
SQLite3Stmt::bindValue
SQLite3Stmt


Binds the value of a parameter to a statement variable

SQLite3Stmt::bindParam
SQLite3Stmt::clear
SQLite3Stmt
PHP Manual

SQLite3Stmt::bindValue

(PHP 5 >= 5.3.0)

SQLite3Stmt::bindValue — Binds the value of a parameter to a statement variable

Descrição

public bool SQLite3Stmt::bindValue ( string $sql_param , mixed $value [, int $type ] )

Binds the value of a parameter to a statement variable.

Parâmetros

sql_param

An string identifying the statement variable to which the value should be bound.

value

The value to bind to a statement variable.

type

The data type of the value to bind.

  • SQLITE3_INTEGER: The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.

  • SQLITE3_FLOAT: The value is a floating point value, stored as an 8-byte IEEE floating point number.

  • SQLITE3_TEXT: The value is a text string, stored using the database encoding (UTF-8, UTF-16BE or UTF-16-LE).

  • SQLITE3_BLOB: The value is a blob of data, stored exactly as it was input.

  • SQLITE3_NULL: The value is a NULL value.

Valor Retornado

Returns TRUE if the value is bound to the statement variable, FALSE on failure.

Exemplos

Exemplo #1 SQLite3Stmt::bindValue() example

<?php
unlink('mysqlitedb.db');
$db = new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (id INTEGER, bar STRING)');
$db->exec("INSERT INTO foo (id, bar) VALUES (1, 'This is a test')");

$stmt = $db->prepare('SELECT bar FROM foo WHERE id=:id');
$stmt->bindValue(':id', 1, SQLITE3_INTEGER);

$result = $stmt->execute();
var_dump($result->fetchArray());
?>

SQLite3Stmt::bindParam
SQLite3Stmt::clear
SQLite3Stmt


Clears all current bound parameters

SQLite3Stmt::bindValue
SQLite3Stmt::close
SQLite3Stmt
PHP Manual

SQLite3Stmt::clear

(PHP 5 >= 5.3.0)

SQLite3Stmt::clear — Clears all current bound parameters

Descrição

public bool SQLite3Stmt::clear ( void )

Clears all current bound parameters.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on successful clearing of bound parameters, FALSE on failure.

SQLite3Stmt::bindValue
SQLite3Stmt::close
SQLite3Stmt


Closes the prepared statement

SQLite3Stmt::clear
SQLite3Stmt::execute
SQLite3Stmt
PHP Manual

SQLite3Stmt::close

(PHP 5 >= 5.3.0)

SQLite3Stmt::close — Closes the prepared statement

Descrição

public bool SQLite3Stmt::close ( void )

Closes the prepared statement.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE

SQLite3Stmt::clear
SQLite3Stmt::execute
SQLite3Stmt


Executes a prepared statement and returns a result set object

SQLite3Stmt::close
SQLite3Stmt::paramCount
SQLite3Stmt
PHP Manual

SQLite3Stmt::execute

(PHP 5 >= 5.3.0)

SQLite3Stmt::execute — Executes a prepared statement and returns a result set object

Descrição

public SQLite3Result SQLite3Stmt::execute ( void )

Executes a prepared statement and returns a result set object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an SQLite3Result object on successful execution of the prepared statement, FALSE on failure.

SQLite3Stmt::close
SQLite3Stmt::paramCount
SQLite3Stmt


Returns the number of parameters within the prepared statement

SQLite3Stmt::execute
SQLite3Stmt::reset
SQLite3Stmt
PHP Manual

SQLite3Stmt::paramCount

(PHP 5 >= 5.3.0)

SQLite3Stmt::paramCount — Returns the number of parameters within the prepared statement

Descrição

public int SQLite3Stmt::paramCount ( void )

Returns the number of parameters within the prepared statement.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of parameters within the prepared statement.

SQLite3Stmt::execute
SQLite3Stmt::reset
SQLite3Stmt


Resets the prepared statement

SQLite3Stmt::paramCount
SQLite3Result
SQLite3Stmt
PHP Manual

SQLite3Stmt::reset

(PHP 5 >= 5.3.0)

SQLite3Stmt::reset — Resets the prepared statement

Descrição

public bool SQLite3Stmt::reset ( void )

Resets the prepared statement to its state prior to execution. All bindings remain intact after reset.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the statement is successfully reset, FALSE on failure.

SQLite3Stmt::paramCount
SQLite3Result
SQLite3Stmt


The SQLite3Result class

Introdução

A class that handles result sets for the SQLite 3 extension.

Sinopse da classe

SQLite3Result {
/* Methods */
public string columnName ( int $column_number )
public int columnType ( int $column_number )
public array fetchArray ([ int $mode = SQLITE3_BOTH ] )
public bool finalize ( void )
public int numColumns ( void )
public bool reset ( void )
}

Índice

  • SQLite3Result::columnName — Returns the name of the nth column
  • SQLite3Result::columnType — Returns the type of the nth column
  • SQLite3Result::fetchArray — Fetches a result row as an associative or numerically indexed array or both
  • SQLite3Result::finalize — Closes the result set
  • SQLite3Result::numColumns — Returns the number of columns in the result set
  • SQLite3Result::reset — Resets the result set back to the first row
SQLite3Stmt::reset
SQLite3Result::columnName
SQLite3


Returns the name of the nth column

SQLite3Result
SQLite3Result::columnType
SQLite3Result
PHP Manual

SQLite3Result::columnName

(PHP 5 >= 5.3.0)

SQLite3Result::columnName — Returns the name of the nth column

Descrição

public string SQLite3Result::columnName ( int $column_number )

Returns the name of the column specified by the column_number.

Parâmetros

column_number

The numeric zero-based index of the column.

Valor Retornado

Returns the string name of the column identified by column_number.

SQLite3Result
SQLite3Result::columnType
SQLite3Result


Returns the type of the nth column

SQLite3Result::columnName
SQLite3Result::fetchArray
SQLite3Result
PHP Manual

SQLite3Result::columnType

(PHP 5 >= 5.3.0)

SQLite3Result::columnType — Returns the type of the nth column

Descrição

public int SQLite3Result::columnType ( int $column_number )

Returns the type of the column identified by column_number.

Parâmetros

column_number

The numeric zero-based index of the column.

Valor Retornado

Returns the data type index of the column identified by column_number (one of SQLITE3_INTEGER, SQLITE3_FLOAT, SQLITE3_TEXT, SQLITE3_BLOB, or SQLITE3_NULL).

SQLite3Result::columnName
SQLite3Result::fetchArray
SQLite3Result


Fetches a result row as an associative or numerically indexed array or both

SQLite3Result::columnType
SQLite3Result::finalize
SQLite3Result
PHP Manual

SQLite3Result::fetchArray

(PHP 5 >= 5.3.0)

SQLite3Result::fetchArray — Fetches a result row as an associative or numerically indexed array or both

Descrição

public array SQLite3Result::fetchArray ([ int $mode = SQLITE3_BOTH ] )

Fetches a result row as an associative or numerically indexed array or both. By default, fetches as both.

Parâmetros

mode

Controls how the next row will be returned to the caller. This value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or SQLITE3_BOTH.

  • SQLITE3_ASSOC: returns an array indexed by column name as returned in the corresponding result set

  • SQLITE3_NUM: returns an array indexed by column number as returned in the corresponding result set, starting at column 0

  • SQLITE3_BOTH: returns an array indexed by both column name and number as returned in the corresponding result set, starting at column 0

Valor Retornado

Returns a result row as an associatively or numerically indexed array or both.

SQLite3Result::columnType
SQLite3Result::finalize
SQLite3Result


Closes the result set

SQLite3Result::fetchArray
SQLite3Result::numColumns
SQLite3Result
PHP Manual

SQLite3Result::finalize

(PHP 5 >= 5.3.0)

SQLite3Result::finalize — Closes the result set

Descrição

public bool SQLite3Result::finalize ( void )

Closes the result set.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE.

SQLite3Result::fetchArray
SQLite3Result::numColumns
SQLite3Result


Returns the number of columns in the result set

SQLite3Result::finalize
SQLite3Result::reset
SQLite3Result
PHP Manual

SQLite3Result::numColumns

(PHP 5 >= 5.3.0)

SQLite3Result::numColumns — Returns the number of columns in the result set

Descrição

public int SQLite3Result::numColumns ( void )

Returns the number of columns in the result set.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of columns in the result set.

SQLite3Result::finalize
SQLite3Result::reset
SQLite3Result


Resets the result set back to the first row

SQLite3Result::numColumns
Sybase
SQLite3Result
PHP Manual

SQLite3Result::reset

(PHP 5 >= 5.3.0)

SQLite3Result::reset — Resets the result set back to the first row

Descrição

public bool SQLite3Result::reset ( void )

Resets the result set back to the first row.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the result set is successfully reset back to the first row, FALSE on failure.

SQLite3Result::numColumns
Sybase
SQLite3Result


Sybase

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Sybase
    • sybase_affected_rows — Informa o número de linhas afetadas pela última consulta
    • sybase_close — Fecha uma conexão Sybase
    • sybase_connect — Abre uma conexão Sybase
    • sybase_data_seek — Move o ponteiro interno das linhas
    • sybase_deadlock_retry_count — Define o número de tentativas em caso de travamento
    • sybase_fetch_array — Obtém uma linha como uma matriz
    • sybase_fetch_assoc — Obtém uma linha do resultado como uma matriz associativa
    • sybase_fetch_field — Obtém informações de um campo do resultado
    • sybase_fetch_object — Obtém uma linha como um objeto
    • sybase_fetch_row — Obtém uma linha do resultado em uma matriz numérica
    • sybase_field_seek — Define o índice do campo
    • sybase_free_result — Libera um resultado da memória
    • sybase_get_last_message — Retorna a última mensagem do servidor
    • sybase_min_client_severity — Define a severidade miníma do cliente
    • sybase_min_error_severity — Define o aseveridade mínima de erro
    • sybase_min_message_severity — Define a severidade mínima para mensagens
    • sybase_min_server_severity — Define a severidade mínima do servidor
    • sybase_num_fields — Obtém o número de campos em um conjunto de resultados
    • sybase_num_rows — Obtém o número de linhas em um conjunto de resultados
    • sybase_pconnect — Abre uma conexão Sybase persistente
    • sybase_query — Envia uma consulta Sybase
    • sybase_result — Obtém dados do resultado
    • sybase_select_db — Seleciona um banco de dados Sybase
    • sybase_set_message_handler — Define um manipulador para quando uma mensagem do servidor é enviada
    • sybase_unbuffered_query — Envia uma consulta Sybase e não bloqueia
SQLite3Result::reset
Introdução
Vendor Specific Database Extensions


Introdução

Sybase
Instalação/Configuração
Sybase


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Sybase


Instalação

Para ativar o suporte a Sybase configure o PHP --with-sybase[=DIR] . DIR é o diretório home do Sybase, o padrão é /home/sybase. Para ativar o suporte o Sybase-CT configure o PHP --with-sybase-ct[=DIR] . DIR é o diretório home do Sybase, o padrão é /home/sybase.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do Sybase
Nome | Padrão | Modificável | Changelog
sybase.allow_persistent | "On" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. PHP_INI_SYSTEM em PHP <= 4.0.3.
sybase.max_persistent | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. PHP_INI_SYSTEM em PHP <= 4.0.3.
sybase.max_links | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. PHP_INI_SYSTEM em PHP <= 4.0.3.
sybase.interface_file | "/usr/sybase/interfaces" | PHP_INI_SYSTEM |
sybase.min_error_severity | "10" | PHP_INI_ALL |
sybase.min_message_severity | "10" | PHP_INI_ALL |
sybase.compatability_mode | "0" | PHP_INI_ALL |
magic_quotes_sybase | "0" | PHP_INI_ALL | Removido no PHP 6.0.0.

Breve descrição das diretivas de configuração.

sybase.allow_persistent boolean

Quando permitir conexões Sybase permanentes.

sybase.max_persistent integer

O número máximo de conexões Sybase persistentes por processo. -1 indica sem limite.

sybase.max_links integer

O número máximo de conexões Sybase por processo, incluindo as conexões persistentes. -1 indica sem limite.

sybase.min_error_severity integer

Severidade minima de erros a serem mostrados.

sybase.min_message_severity integer

Severidade minima de mensagem a mostrar.

magic_quotes_sybase boolean

Se magic_quotes_sybase estiver, uma aspa simples é escapada com uma aspa simples ao invés de uma barra invertida se magic_quotes_gpc ou magic_quotes_runtime estiverem ativados.

Nota:

Note que quando magic_quotes_sybase esta ON ele sobrescreve completamente magic_quotes_gpc . Neste caso mesmo quando magic_quotes_gpc esta ativado as aspas duplas, barras invertidas e NULL's não serão escapados.

Opções de configuração do Sybase-CT
Nome | Padrão | Modificável | Changelog
sybct.allow_persistent | "1" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.max_persistent | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.max_links | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL em PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.min_server_severity | "10" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.min_client_severity | "10" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.hostname | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.deadlock_retry_count | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.

Breve descrição das diretivas de configuração.

sybct.allow_persistent boolean

Quando permitir conexões Sybase-CT persistentes. O padrão é on.

sybct.max_persistent integer

O número máximo de conexões Sybase-CT persistentes por processo. O padrão é -1 indicando ilimitado.

sybct.max_links integer

O número máximo de conexões Sybase-CT por processo, incluindo as conexões persistentes. O padrão é -1 indicando ilimitado.

sybct.min_server_severity integer

Mensagens do servidor com severidade maior ou igual a sybct.min_server_severity serão reportados como warnings. Este valor também pode ser definido em um script usando sybase_min_server_severity(). O padrão é 10 o qual reporta erros de severidade informação ou maiores.

sybct.min_client_severity integer

Mensagens da biblioteca de cliente com severidade maior ou igual a sybct.min_client_severity serão repotados como warnings. Este valor também pode ser definido em um script usando sybase_min_client_severity(). O padrão é 10 o que efetivamente desativa os avisos.

sybct.login_timeout integer

O tempo máximo em segundos para esperar por uma tentativa de conexão aconteça antes de retorne falha. Note que se o max_execution_time for excedido quando uma tentativa de conexão expira, seu script será terminado antes que tenha alguma ação em falha. O padrão é um minuto.

sybct.timeout integer

O tempo máximo em segundos para esperar por uma operação select_db ou query aconteça antes de retornar falha. Note que se max_execution_time for excedido quando uma operação ultrapassar o limite de tempo, seu script será terminado antes que tenha alguma ação em falha. O padrão é sem limite.

sybct.hostname string

O nome do servidor apartir do qual você diz estar se conectando, para mostrar com sp_who. O padrão é none.

sybct.deadlock_retry_count int

Permite a você definir quão seguidamente os travamentos serão tentados novamente. O padrão é -1, ou "forever" (para sempre).

Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da Sybase
Sybase


Funções da Sybase

Índice

  • sybase_affected_rows — Informa o número de linhas afetadas pela última consulta
  • sybase_close — Fecha uma conexão Sybase
  • sybase_connect — Abre uma conexão Sybase
  • sybase_data_seek — Move o ponteiro interno das linhas
  • sybase_deadlock_retry_count — Define o número de tentativas em caso de travamento
  • sybase_fetch_array — Obtém uma linha como uma matriz
  • sybase_fetch_assoc — Obtém uma linha do resultado como uma matriz associativa
  • sybase_fetch_field — Obtém informações de um campo do resultado
  • sybase_fetch_object — Obtém uma linha como um objeto
  • sybase_fetch_row — Obtém uma linha do resultado em uma matriz numérica
  • sybase_field_seek — Define o índice do campo
  • sybase_free_result — Libera um resultado da memória
  • sybase_get_last_message — Retorna a última mensagem do servidor
  • sybase_min_client_severity — Define a severidade miníma do cliente
  • sybase_min_error_severity — Define o aseveridade mínima de erro
  • sybase_min_message_severity — Define a severidade mínima para mensagens
  • sybase_min_server_severity — Define a severidade mínima do servidor
  • sybase_num_fields — Obtém o número de campos em um conjunto de resultados
  • sybase_num_rows — Obtém o número de linhas em um conjunto de resultados
  • sybase_pconnect — Abre uma conexão Sybase persistente
  • sybase_query — Envia uma consulta Sybase
  • sybase_result — Obtém dados do resultado
  • sybase_select_db — Seleciona um banco de dados Sybase
  • sybase_set_message_handler — Define um manipulador para quando uma mensagem do servidor é enviada
  • sybase_unbuffered_query — Envia uma consulta Sybase e não bloqueia
Constantes pré-definidas
sybase_affected_rows
Sybase


Informa o número de linhas afetadas pela última consulta

Funções da Sybase
sybase_close
Funções da Sybase
PHP Manual

sybase_affected_rows

(PHP 4, PHP 5)

sybase_affected_rows — Informa o número de linhas afetadas pela última consulta

Descrição

int sybase_affected_rows ([ resource $link_identifier ] )

sybase_affected_rows() retorna o número de linhas afetadas pelo último INSERT, UPDATE ou DELETE no servidor associado com o identificador de recurso especificado.

Este comando não tem efeito para comandos SELECT, somente em comando que modificam registros. Para recuperar o número de linhas retornadas de um SELECT, use sybase_num_rows().

Parâmetros

link_identifier

Se o identificador do link não é especificado, o último link aberto é usado.

Valor Retornado

Retorna o número de linhas afetadas, como um inteiro.

Exemplos

Exemplo #1 Delete-Query

<?php
    /* connect to database */
    sybase_connect('SYBASE', '', '') or
        die("Could not connect");
    sybase_select_db("db");

    sybase_query("DELETE FROM sometable WHERE id < 10");
    printf ("Records deleted: %d\n", sybase_affected_rows());
?>

O exemplo acima irá imprimir:

    Records deleted: 10

Veja Também

  • sybase_num_rows() - Obtém o número de linhas em um conjunto de resultados

Funções da Sybase
sybase_close
Funções da Sybase


Fecha uma conexão Sybase

sybase_affected_rows
sybase_connect
Funções da Sybase
PHP Manual

sybase_close

(PHP 4, PHP 5)

sybase_close — Fecha uma conexão Sybase

Descrição

bool sybase_close ([ resource $link_identifier ] )

sybase_close() fecha a conexão com um banco de dados Sybase, o qual está associado ao identificador de recurso (link_identifier) especificado. Se o identificador de recurso não for especificado, a última conexão aberta é utilizada.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Note que isto não é normalmente necessário, já que as conexões não-persistentes abertas não automaticamente são fechadas ao final da execução do script.

sybase_close() não fechará conexões persistentes geradas pelo sybase_pconnect().

Veja também: sybase_connect() e sybase_pconnect().

sybase_affected_rows
sybase_connect
Funções da Sybase


Abre uma conexão Sybase

sybase_close
sybase_data_seek
Funções da Sybase
PHP Manual

sybase_connect

(PHP 4, PHP 5)

sybase_connect — Abre uma conexão Sybase

Descrição

resource sybase_connect ([ string $servername [, string $username [, string $password [, string $charset [, string $appname ]]]]] )

Retorna: um identificador de recurso Sybase positivo em caso de sucesso ou um FALSE em caso de falha.

sybase_connect() estabelece uma conexão com um servidor Sybase. O argumento servername tem que ser um nome de servidor que é definido no arquivo 'interfaces'.

Se uma segunda chamada é feita ao sybase_connect() com os mesmos argumentos nenhum novo recurso será estabelecido. Ao invés disto, o identificador de recurso do recurso já aberto será retornado.

O recurso com o servidor será fechado tão logo a execução do script termine, a não ser que ele seja fechado anteriormente ao se chamar explicitamente o sybase_close().

Exemplo #1 Exemplo sybase_connect()

<?php
    $link = sybase_connect('SYBASE', '', '')
            or die("Could not connect !");
    print ("Connected successfully");
    sybase_close($link);
?>

Veja também sybase_pconnect() e sybase_close().

sybase_close
sybase_data_seek
Funções da Sybase


Move o ponteiro interno das linhas

sybase_connect
sybase_deadlock_retry_count
Funções da Sybase
PHP Manual

sybase_data_seek

(PHP 4, PHP 5)

sybase_data_seek — Move o ponteiro interno das linhas

Descrição

bool sybase_data_seek ( resource $result_identifier , int $row_number )

sybase_data_seek() move o ponteiro interno das linhas do resultado Sybase associado ao identificador de resultado indicado para apontar para a linha de número especificado. A próxima chamada a sybase_fetch_row() irá retornar esta linha.

Parâmetros

result_identifier

row_number

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • sybase_fetch_row() - Obtém uma linha do resultado em uma matriz numérica

sybase_connect
sybase_deadlock_retry_count
Funções da Sybase


Define o número de tentativas em caso de travamento

sybase_data_seek
sybase_fetch_array
Funções da Sybase
PHP Manual

sybase_deadlock_retry_count

(PHP 4 >= 4.3.0, PHP 5)

sybase_deadlock_retry_count — Define o número de tentativas em caso de travamento

Descrição

void sybase_deadlock_retry_count ( int $retry_count )

Usando sybase_deadlock_retry_count(), o número de tentativas pode ser definido em caso de travamentos. Por padrão, cada travamento é tentado novamente um número infinito de vezes ou até que o processo seja morto pelo Sybase, o script em execução é morto (por exemplo, por set_time_limit()) ou a consulta seja bem sucedida.

Parâmetros

retry_count

Valores para retry_count
-1 | Tentar novamente para sempre (padrão)
0 | Não tentar novamente
n | Tentar novamente n vezes

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

sybase_data_seek
sybase_fetch_array
Funções da Sybase


Obtém uma linha como uma matriz

sybase_deadlock_retry_count
sybase_fetch_assoc
Funções da Sybase
PHP Manual

sybase_fetch_array

(PHP 4, PHP 5)

sybase_fetch_array — Obtém uma linha como uma matriz

Descrição

array sybase_fetch_array ( resource $result )

Retorna uma matriz que corresponde a linha obtida, ou FALSE se não houverem mais linhas.

sybase_fetch_array() é uma versão extendida de sybase_fetch_row(). Além de guardar os dados em índices numericos na matriz resultante, também guarda os dados em índices associativos, usando os nomes dos campos como chaves.

Algo importante para notar é que usar sybase_fetch_array() NÃO é significativamente mais lento do que usar sybase_fetch_row(), enquanto provê um valor adicional significante.

Nota:

Quando estiver selecionando campos com nomes identicos (por exemplo, em um join), os índices associativos terão um número sequencial adicionado. Veja o exemplo para detalhes.

Exemplo #1 Nomes de campos identicos

<?php
    $dbh = sybase_connect('SYBASE', '', '');
    $q = sybase_query('SELECT * FROM p, a WHERE p.person_id= a.person_id');
    var_dump(sybase_fetch_array($q));
    sybase_close($dbh);
?>

O exemplo acima deve produzir a seguinte saída (assumindo que as duas tabelas apenas tenham uma coluna chamada "person_id" em cada uma):

array(4) {
  [0]=>
  int(1)
  ["person_id"]=>
  int(1)
  [1]=>
  int(1)
  ["person_id1"]=>
  int(1)
}

Veja também
sybase_fetch_row(),
sybase_fetch_assoc() e
sybase_fetch_object().

sybase_deadlock_retry_count
sybase_fetch_assoc
Funções da Sybase


Obtém uma linha do resultado como uma matriz associativa

sybase_fetch_array
sybase_fetch_field
Funções da Sybase
PHP Manual

sybase_fetch_assoc

(PHP 4 >= 4.3.0, PHP 5)

sybase_fetch_assoc — Obtém uma linha do resultado como uma matriz associativa

Descrição

array sybase_fetch_assoc ( resource $result )

Retorna uma matriz que corresponde a linha obtida, ou FALSE se não houverem mais linhas.

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

sybase_fetch_assoc() é uma versão de sybase_fetch_row() que usa os nomes de colunas ao invés de integers para os índices na matriz resultante. Colunas de tabelas diferentes com os mesmos nomes são retornadas como name, name1, name2, ..., nameN.

Algo importante para notar é que usar sybase_fetch_array() NÃO é significativamente mais lento do que usar sybase_fetch_row(), enquanto provê um valor adicional significante.

Veja também
sybase_fetch_array(),
sybase_fetch_object() e
sybase_fetch_row().

sybase_fetch_array
sybase_fetch_field
Funções da Sybase


Obtém informações de um campo do resultado

sybase_fetch_assoc
sybase_fetch_object
Funções da Sybase
PHP Manual

sybase_fetch_field

(PHP 4, PHP 5)

sybase_fetch_field — Obtém informações de um campo do resultado

Descrição

object sybase_fetch_field ( resource $result [, int $field_offset ] )

sybase_fetch_field() pode ser usado para obter informação sobre campos em um certo resultado da query.

Parâmetros

result

field_offset

Se o índice do campo não é especificado, o próximo campo que não foi obtido por sybase_fetch_field() é retornado.

Valor Retornado

Retorna um objeto contendo informação do campo.

As proprieaddes do objeto são:

  • name - Nome da colona. Se a coluna é resultado de uma função, esta propriedade é definida como computed#N, aonde #N é um número de série.
  • column_source - A tabela apartir da qual a coluna foi tirada.
  • max_length - O tamanho máximo da coluna.
  • numeric - 1 se a coluna é numerica.
  • type - O tipo de dados da coluna.

Veja Também

  • sybase_field_seek() - Define o índice do campo

sybase_fetch_assoc
sybase_fetch_object
Funções da Sybase


Obtém uma linha como um objeto

sybase_fetch_field
sybase_fetch_row
Funções da Sybase
PHP Manual

sybase_fetch_object

(PHP 4, PHP 5)

sybase_fetch_object — Obtém uma linha como um objeto

Descrição

object sybase_fetch_object ( resource $result [, mixed $object ] )

sybase_fetch_object() é similar a sybase_fetch_assoc(), com uma diferença - um objeto é retornado, ao invés de uma matriz.

Em termos de velocidade, a função é idêntica a sybase_fetch_array(), e um pouco mais rápida que sybase_fetch_row() (a diferença é insignificante).

Parâmetros

result

object

Use o segundo parâmetro object para especificar o tipo de objeto que você quer. Se o parâmetro for omitido, o objeto será do tipo stdClass.

Valor Retornado

Retorna um objeto com propriedades que correspondem a linha obtida, ou FALSE se não houver mais linhas.

Histórico

Versão Descrição
4.3.0

Esta função não retornará mais membros númericos de objetos. Funcionamento antigo:

object(stdclass)(3) {
  [0]=>
  string(3) "foo"
  ["foo"]=>
  string(3) "foo"
  [1]=>
  string(3) "bar"
  ["bar"]=>
  string(3) "bar"
}
Funcionamento novo:
object(stdclass)(3) {
  ["foo"]=>
  string(3) "foo"
  ["bar"]=>
  string(3) "bar"
}

Exemplos

Exemplo #1 sybase_fetch_object() retornado como Foo

<?php
    class Foo {
        var $foo, $bar, $baz;
    }

    // {...]
    $qrh= sybase_query('SELECT foo, bar, baz FROM example');
    $foo= sybase_fetch_object($qrh, 'Foo');
    $bar= sybase_fetch_object($qrh, new Foo());
    // {...]
?>

Veja Também

  • sybase_fetch_array() - Obtém uma linha como uma matriz
  • sybase_fetch_row() - Obtém uma linha do resultado em uma matriz numérica

sybase_fetch_field
sybase_fetch_row
Funções da Sybase


Obtém uma linha do resultado em uma matriz numérica

sybase_fetch_object
sybase_field_seek
Funções da Sybase
PHP Manual

sybase_fetch_row

(PHP 4, PHP 5)

sybase_fetch_row — Obtém uma linha do resultado em uma matriz numérica

Descrição

array sybase_fetch_row ( resource $result )

sybase_fetch_row() obtém uma linha de dados do resultado associado ao identificador de resultado especificado.

As próximas chamadas a sybase_fetch_row() devem retornar a próxima linha no conjunto de resultados, ou FALSE se não houverem mais linhas.

Parâmetros

result

Valor Retornado

Retorna um array que corresponde a linha obtida, ou FALSE se houver mais linhas. Cada coluna de resultado é armazenada em um índice do array, iniciando em 0.

Tipos de dados
PHP | Sybase
string | VARCHAR, TEXT, CHAR, IMAGE, BINARY, VARBINARY, DATETIME
int | NUMERIC (c/ ou s/ precision), DECIMAL (c/ o s/ precisão), INT, BIT, TINYINT, SMALLINT
float | NUMERIC (c/ precisão), DECIMAL (c/ precisão), REAL, FLOAT, MONEY
NULL | NULL

Veja Também

  • sybase_fetch_array() - Obtém uma linha como uma matriz
  • sybase_fetch_assoc() - Obtém uma linha do resultado como uma matriz associativa
  • sybase_fetch_object() - Obtém uma linha como um objeto
  • sybase_data_seek() - Move o ponteiro interno das linhas
  • sybase_result() - Obtém dados do resultado

sybase_fetch_object
sybase_field_seek
Funções da Sybase


Define o índice do campo

sybase_fetch_row
sybase_free_result
Funções da Sybase
PHP Manual

sybase_field_seek

(PHP 4, PHP 5)

sybase_field_seek — Define o índice do campo

Descrição

bool sybase_field_seek ( resource $result , int $field_offset )

Muda para o índice de campo especificado. Se a próxima chamada a sybase_fetch_field() não incluir um índice de campo, este campo será retornado.

Parâmetros

result

field_offset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • sybase_fetch_field() - Obtém informações de um campo do resultado

sybase_fetch_row
sybase_free_result
Funções da Sybase


Libera um resultado da memória

sybase_field_seek
sybase_get_last_message
Funções da Sybase
PHP Manual

sybase_free_result

(PHP 4, PHP 5)

sybase_free_result — Libera um resultado da memória

Descrição

bool sybase_free_result ( resource $result )

sybase_free_result() só precisa ser usado se você esta preocupado em usar muita memória enquando o seu script esta sendo executado. Toda a memória do resultado será automaticamente liberada quando o script terminar. Você pode utilizar sybase_free_result() com um identificador de resultado como argumento e a memória usada por este resultado será liberada.

Parâmetros

result

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

sybase_field_seek
sybase_get_last_message
Funções da Sybase


Retorna a última mensagem do servidor

sybase_free_result
sybase_min_client_severity
Funções da Sybase
PHP Manual

sybase_get_last_message

(PHP 4, PHP 5)

sybase_get_last_message — Retorna a última mensagem do servidor

Descrição

string sybase_get_last_message ( void )

sybase_get_last_message() retorna a última mensagem reportada pelo servidor.

Valor Retornado

Returns the message as a string.

Veja Também

  • sybase_min_message_severity() - Define a severidade mínima para mensagens

sybase_free_result
sybase_min_client_severity
Funções da Sybase


Define a severidade miníma do cliente

sybase_get_last_message
sybase_min_error_severity
Funções da Sybase
PHP Manual

sybase_min_client_severity

(PHP 4, PHP 5)

sybase_min_client_severity — Define a severidade miníma do cliente

Descrição

void sybase_min_client_severity ( int $severity )

sybase_min_client_severity() defini a severidade mínima do cliente.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

Veja Também

  • sybase_min_server_severity() - Define a severidade mínima do servidor

sybase_get_last_message
sybase_min_error_severity
Funções da Sybase


Define o aseveridade mínima de erro

sybase_min_client_severity
sybase_min_message_severity
Funções da Sybase
PHP Manual

sybase_min_error_severity

(PHP 4, PHP 5)

sybase_min_error_severity — Define o aseveridade mínima de erro

Descrição

void sybase_min_error_severity ( int $severity )

sybase_min_error_severity() define a severidade mínima de erro.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

Veja Também

  • sybase_min_message_severity() - Define a severidade mínima para mensagens

sybase_min_client_severity
sybase_min_message_severity
Funções da Sybase


Define a severidade mínima para mensagens

sybase_min_error_severity
sybase_min_server_severity
Funções da Sybase
PHP Manual

sybase_min_message_severity

(PHP 4, PHP 5)

sybase_min_message_severity — Define a severidade mínima para mensagens

Descrição

void sybase_min_message_severity ( int $severity )

sybase_min_message_severity() define a severidade mínima de mensagem.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente está disponível quabdi utilizando a biblioteca DB library como interface para o Sybase, e não com a biblioteca CT.

Veja Também

  • sybase_min_error_severity() - Define o aseveridade mínima de erro

sybase_min_error_severity
sybase_min_server_severity
Funções da Sybase


Define a severidade mínima do servidor

sybase_min_message_severity
sybase_num_fields
Funções da Sybase
PHP Manual

sybase_min_server_severity

(PHP 4, PHP 5)

sybase_min_server_severity — Define a severidade mínima do servidor

Descrição

void sybase_min_server_severity ( int $severity )

sybase_min_server_severity() define a severidade mínima do servidor.

Parâmetros

severity

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

Veja Também

  • sybase_min_client_severity() - Define a severidade miníma do cliente

sybase_min_message_severity
sybase_num_fields
Funções da Sybase


Obtém o número de campos em um conjunto de resultados

sybase_min_server_severity
sybase_num_rows
Funções da Sybase
PHP Manual

sybase_num_fields

(PHP 4, PHP 5)

sybase_num_fields — Obtém o número de campos em um conjunto de resultados

Descrição

int sybase_num_fields ( resource $result )

sybase_num_fields() retorna o número de campos em um conjunto de resultados.

Parâmetros

result

Valor Retornado

Retorna o número de campos como um inteiro.

Veja Também

  • sybase_query() - Envia uma consulta Sybase
  • sybase_fetch_field() - Obtém informações de um campo do resultado
  • sybase_num_rows() - Obtém o número de linhas em um conjunto de resultados

sybase_min_server_severity
sybase_num_rows
Funções da Sybase


Obtém o número de linhas em um conjunto de resultados

sybase_num_fields
sybase_pconnect
Funções da Sybase
PHP Manual

sybase_num_rows

(PHP 4, PHP 5)

sybase_num_rows — Obtém o número de linhas em um conjunto de resultados

Descrição

int sybase_num_rows ( resource $result )

sybase_num_rows() retorna o número de linhas em um conjunto de resultados.

Parâmetros

result

Valor Retornado

Retorna o número de linhas com um inteiro.

Veja Também

  • sybase_num_fields() - Obtém o número de campos em um conjunto de resultados
  • sybase_query() - Envia uma consulta Sybase
  • sybase_fetch_row() - Obtém uma linha do resultado em uma matriz numérica

sybase_num_fields
sybase_pconnect
Funções da Sybase


Abre uma conexão Sybase persistente

sybase_num_rows
sybase_query
Funções da Sybase
PHP Manual

sybase_pconnect

(PHP 4, PHP 5)

sybase_pconnect — Abre uma conexão Sybase persistente

Descrição

resource sybase_pconnect ([ string $servername [, string $username [, string $password [, string $charset [, string $appname ]]]]] )

Retorna um identificador de conexão persistente Sybase positivo em caso de sucesso, ou FALSE em caso de erro.

sybase_pconnect() funciona muito parecido com sybase_connect() com duas diferenças maiores.

Primeiro, ao conectar, a função tenta encontrar uma conexão (persistente) que já esteja aberta com o mesmo servidor, nome de usuário e senha, Se for encontrada uma, um identificador para ela será retornado ao invés de abrir uma nova conexão.

Segundo, a conexão para o servidor SQL não será fechada quando a execução do script terminar. Ao invés, a conexão permanecerá aberta para para uso futuro (sybase_close() não irá fechar conexões estabelecidas por sybase_pconnect()()).

Este tipo de conexão é portanto chamada 'persistente'.

Veja também sybase_connect().

sybase_num_rows
sybase_query
Funções da Sybase


Envia uma consulta Sybase

sybase_pconnect
sybase_result
Funções da Sybase
PHP Manual

sybase_query

(PHP 4, PHP 5)

sybase_query — Envia uma consulta Sybase

Descrição

resource sybase_query ( string $query , resource $link_identifier )

Retorna um identificador de reultado Sybase positivo em caso de sucesso, ou FALSE em caso de erro.

sybase_query() envia uma consulta para o banco de dados ativo no servidor que esta associado ao identificador de conexão especificado. Se o identificador de conexão não for especificado, a última conexão aberta é usada. Se não houver conexão aberta, a função tenta estabelecer uma como se sybase_connect() fosse utilizada, e a utiliza.

Veja também sybase_select_db() e sybase_connect().

sybase_pconnect
sybase_result
Funções da Sybase


Obtém dados do resultado

sybase_query
sybase_select_db
Funções da Sybase
PHP Manual

sybase_result

(PHP 4, PHP 5)

sybase_result — Obtém dados do resultado

Descrição

string sybase_result ( resource $result , int $row , mixed $field )

Retorna o conteúdo da célula na linha e índice no conjunto de resultados especificado.

sybase_result() retorna o conteúdo de uma célula de um conjunto de resultados Sybase. O argumento field pode ser o índice do campo, o nome do campo, ou a tabela do campo ponto o nome do campo (tabela.campo). Se o nome da coluna for apelidada ('select foo as bar from...'), use o apelido ao invés do nome da coluna.

Quando estiver trabalhando com grandes conjuntos de resultados, você deve considerar usar uma das funções que obtém uma linha inteira (especificadas abaixo). Já que estas funções retornam o conteúdo de multiplas células em uma chamada de função, elas são MUITO mais rápidas do que sybase_result(). Também, note que especificar um índice numérico para o argumento field e é muito mais rápido do que especificar o nome do campo ou campo.tabela.

Alternativas de alta performance recomendadas:
sybase_fetch_row(),
sybase_fetch_array() e
sybase_fetch_object().

sybase_query
sybase_select_db
Funções da Sybase


Seleciona um banco de dados Sybase

sybase_result
sybase_set_message_handler
Funções da Sybase
PHP Manual

sybase_select_db

(PHP 4, PHP 5)

sybase_select_db — Seleciona um banco de dados Sybase

Descrição

bool sybase_select_db ( string $database_name [, resource $link_identifier ] )

sybase_select_db() define o banco de dados ativo que é associado ao identificador de conexão especificado. Se não for especificado um identificador de conexão, a última conexão aberta é assumida. Se não houver conexão aberta, a função tentará establecer uma conexão como se sybase_connect() fosse utilizada, e irá usa-la.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Todas as próximas chamadas a sybase_query() serão feitas no banco de dados ativo.

Veja também
sybase_connect(),
sybase_pconnect() e
sybase_query()

sybase_result
sybase_set_message_handler
Funções da Sybase


Define um manipulador para quando uma mensagem do servidor é enviada

sybase_select_db
sybase_unbuffered_query
Funções da Sybase
PHP Manual

sybase_set_message_handler

(PHP 4 >= 4.3.0, PHP 5)

sybase_set_message_handler — Define um manipulador para quando uma mensagem do servidor é enviada

Descrição

bool sybase_set_message_handler ( callback $handler [, resource $connection ] )

sybase_set_message_handler() define uma função do usuário para manipular as funções do usuário geradas pelo servidor. Você deve o nome de uma função global, ou usar uma matriz para especificar um objeto e o nome de um método.

Parâmetros

handler

O manipulador espera cinco argumentos na seguinte ordem: número da mensagem, severidde, estado, número da linha e descrição. Os quatro primeiros são inteiros. O último é uma string. Se a função retornar FALSE, o PHP gera uma mensagem de erro comum.

connection

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.5 | O parâmetro connection foi adicionado.

Exemplos

Exemplo #1 Exemplo da sybase_set_message_handler()

<?php
    function msg_handler($msgnumber, $severity, $state, $line, $text)
    {
        var_dump($msgnumber, $severity, $state, $line, $text);
    }

    sybase_set_message_handler('msg_handler');
?>

Exemplo #2 Exemplo de sybase_set_message_handler() usando uma classe

<?php
    class Sybase {
        function handler($msgnumber, $severity, $state, $line, $text)
        {
            var_dump($msgnumber, $severity, $state, $line, $text);
        }
    }

    $sybase= new Sybase();
    sybase_set_message_handler(array($sybase, 'handler'));
?>

Exemplo #3 Exemplo de sybase_set_message_handler() com mensagens não manipuladas

<?php
    // Return FALSE from this function to indicate you can't handle
    // this. The error is printed out as a warning, the way you're used
    // to it if there is no handler installed.
    function msg_handler($msgnumber, $severity, $state, $line, $text)
    {
        if (257 == $msgnumber) {
            return false;
        }
        var_dump($msgnumber, $severity, $state, $line, $text);
    }

    sybase_set_message_handler('msg_handler');
?>

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

sybase_select_db
sybase_unbuffered_query
Funções da Sybase


Envia uma consulta Sybase e não bloqueia

sybase_set_message_handler
tokyo_tyrant
Funções da Sybase
PHP Manual

sybase_unbuffered_query

(PHP 4 >= 4.3.0, PHP 5)

sybase_unbuffered_query — Envia uma consulta Sybase e não bloqueia

Descrição

resource sybase_unbuffered_query ( string $query , resource $link_identifier [, bool $store_result ] )

Retorna um identificador de resultado Sybase positivo em caso de sucesso, ou FALSE em caso de erro.

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.

sybase_unbuffered_query() envia uma consulta para o banco de dados ativo no servidor que esta associado ao identificador de conexão especificado. Se o identificador de conexão não for especificado, a última conexão aberta é assumida. Se não houver conexão aberta, a função tenta estabelecer uma conexão como se sybase_connect() fosse chamada, e a utiliza.

Diferentemente de sybase_query(), sybase_unbuffered_query() lê apenas a primeira linha do conjunto de resultados . sybase_fetch_array() e as funções similares lêem mais linhas caso necessário. sybase_data_seek() lê até a linha desejada. este funcionamento deve produzir melhor velocidade para grandes conjuntos de resultados.

sybase_num_rows() irá retornar apenas o número coreto de linhas se todo o conjunto de resultados já foi lido. Para o Sybase, o número de linhas não é conhecido e portanto não é computado pela implementação do cliente.

Nota:

Se você não ler todo o conjunto de resultados antes de executar a próxima consulta, o PHP irá emitir um aviso e cancelar todos os resultados pendentes. Para eliminar isto, use sybase_free_result() o qual cancela os reaultados pendentes de uma consulta sem buffer.

O parâmetro opcional store_result pode ser FALSE para indicar que os conjuntos de resultados não devem ser obtidos para a memória, assim minimizando a utilização de memoria, o que é particularmente interessante para conjuntos muito grandes de resultados.

Exemplo #1 Exemplo sybase_unbuffered_query()

<?php

$dbh = sybase_connect('SYBASE', '', '');
$q = sybase_unbuffered_query('select firstname, lastname from huge_table', $dbh, false);
sybase_data_seek($q, 10000);
$i = 0;

while ($row = sybase_fetch_row($q)) {
    echo $row[0], ' ', $row[1], '<br />';
    if ($i++ > 40000) {
        break;
    }
}

sybase_free_result($q);
sybase_close($dbh);

?>

Veja também sybase_query().

sybase_set_message_handler
tokyo_tyrant
Funções da Sybase


tokyo_tyrant

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • TokyoTyrant — The TokyoTyrant class
    • TokyoTyrant::add — Adds to a numeric key
    • TokyoTyrant::connect — Connect to a database
    • TokyoTyrant::connectUri — Connects to a database
    • TokyoTyrant::__construct — Construct a new TokyoTyrant object
    • TokyoTyrant::copy — Copies the database
    • TokyoTyrant::ext — Execute a remote script
    • TokyoTyrant::fwmKeys — Returns the forward matching keys
    • TokyoTyrant::get — The get purpose
    • TokyoTyrant::getIterator — Get an iterator
    • TokyoTyrant::num — Number of records in the database
    • TokyoTyrant::out — Removes records
    • TokyoTyrant::put — Puts values
    • TokyoTyrant::putCat — Concatenates to a record
    • TokyoTyrant::putKeep — Puts a record
    • TokyoTyrant::putNr — Puts value
    • TokyoTyrant::putShl — Concatenates to a record
    • TokyoTyrant::restore — Restore the database
    • TokyoTyrant::setMaster — Set the replication master
    • TokyoTyrant::size — Returns the size of the value
    • TokyoTyrant::stat — Get statistics
    • TokyoTyrant::sync — Synchronize the database
    • TokyoTyrant::tune — Tunes connection values
    • TokyoTyrant::vanish — Empties the database
  • TokyoTyrantTable — The TokyoTyrantTable class
    • TokyoTyrantTable::add — Adds a record
    • TokyoTyrantTable::genUid — Generate unique id
    • TokyoTyrantTable::get — Get a row
    • TokyoTyrantTable::getIterator — Get an iterator
    • TokyoTyrantTable::getQuery — Get a query object
    • TokyoTyrantTable::out — Remove records
    • TokyoTyrantTable::put — Store a row
    • TokyoTyrantTable::putCat — Concatenates to a row
    • TokyoTyrantTable::putKeep — Put a new record
    • TokyoTyrantTable::putNr — Puts value
    • TokyoTyrantTable::putShl — Concatenates to a record
    • TokyoTyrantTable::setIndex — Sets index
  • TokyoTyrantQuery — The TokyoTyrantQuery class
    • TokyoTyrantQuery::addCond — Adds a condition to the query
    • TokyoTyrantQuery::__construct — Construct a new query
    • TokyoTyrantQuery::count — Counts records
    • TokyoTyrantQuery::current — Returns the current element
    • TokyoTyrantQuery::hint — Get the hint string of the query
    • TokyoTyrantQuery::key — Returns the current key
    • TokyoTyrantQuery::metaSearch — Retrieve records with multiple queries
    • TokyoTyrantQuery::next — Moves the iterator to next entry
    • TokyoTyrantQuery::out — Removes records based on query
    • TokyoTyrantQuery::rewind — Rewinds the iterator
    • TokyoTyrantQuery::search — Searches records
    • TokyoTyrantQuery::setLimit — Limit results
    • TokyoTyrantQuery::setOrder — Orders results
    • TokyoTyrantQuery::valid — Checks the validity of current item
sybase_unbuffered_query
Introdução
Vendor Specific Database Extensions


Introdução

tokyo_tyrant extension provides a wrapper for Tokyo Tyrant client libraries. The extension contains the normal key-value API and the table API.

"Tokyo Tyrant is a package of network interface to the DBM called Tokyo Cabinet. Though the DBM has high performance, you might bother in case that multiple processes share the same database, or remote processes access the database. Thus, Tokyo Tyrant is provided for concurrent and remote connections to Tokyo Cabinet. It is composed of the server process managing a database and its access library for client applications." --Tokyo Tyrant documentation

Tokyo Tyrant is written by Mikio Hirabayashi and is licensed under GNU Lesser General Public License.

tokyo_tyrant
Instalação/Configuração
tokyo_tyrant


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
tokyo_tyrant


Dependências

Before using this extension Tokyo Cabinet and Tokyo Tyrant must be installed.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/tokyo_tyrant

Configure options

  • --with-tokyo-tyrant[=DIR] DIR is the prefix to the Tokyo Tyrant installation
  • --with-tokyo-cabinet-dir[=DIR] DIR is the prefix to the Tokyo Cabinet installation
  • --disable-tokyo-tyrant-session Disable Tokyo Tyrant session handler support

Enabling the extension

The extension can be enabled by adding extension=tokyo_tyrant.so to the INI-configuration

Running Tokyo Tyrant for the session handler

ttserver -port 2000 -ext /path/to/expire.lua -extpc expire 30.0 '/tmp/sessions.tct#idx=ts:dec'

Nota: expire.lua is included in the tokyo_tyrant extension source distribution

Configuring session handler

  • tokyo_tyrant.session_salt="randomlongstring"
  • session.save_handler=tokyo_tyrant
  • session.save_path="tcp://hostname1:2000,tcp://hostname2:2000"

Nota: It is important to make sure that tokyo_tyrant.session_salt matches on all servers.

How it works?

The session handler creates a session id like the following: 8b0e27a823fa4a6cf7246945b82c1d51-a5eadbbed1f2075952900628456bfd6830541629-0-5460

The parts from left to right:

  • Session id - Generated session id
  • Checksum - Checksum of session salt, session id, node id and primary key
  • Node id - The id of the node where the session maps to
  • Primary key - The primary key of the row where the session is stored

The checksum contains SHA1 sum of the node id, primary key, session id and the salt which is known only on the server side. This allows quick mapping of session id to node and primary key since there is no need to do an additional search. During session id regeneration only the parts 1 and 2 change but the mapping to the node and primary key stays constant.

In case some of the nodes fail tokyo_tyrant.allow_failover, tokyo_tyrant.fail_threshold and tokyo_tyrant.health_check_divisor INI-settings control the behavior during failover. If failover is allowed the session handler will map the session to a healthy node and creates a new empty session.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

tokyo_tyrant Opções de Configuração
Nome | Padrão | Modificável | Histórico
tokyo_tyrant.default_timeout | 2.0 | PHP_INI_ALL |
tokyo_tyrant.session_salt | NULL | PHP_INI_ALL |
tokyo_tyrant.key_prefix | NULL | PHP_INI_ALL |
tokyo_tyrant.allow_failover | 1 | PHP_INI_ALL |
tokyo_tyrant.fail_threshold | 5 | PHP_INI_ALL |
tokyo_tyrant.health_check_divisor | 1000 | PHP_INI_ALL |
tokyo_tyrant.php_expiration | 0 | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

tokyo_tyrant.default_timeout integer

Default timeout when connecting to databases

tokyo_tyrant.session_salt string

The secret that is used to salt session id

tokyo_tyrant.key_prefix string

Prefix all keys with this string. The prefix is transparent to the developer but helps making sure that keys won't collide if multiple applications are using the same database.

tokyo_tyrant.allow_failover integer

Whether to allow session failover in case a server dies.

tokyo_tyrant.fail_threshold integer

How many read/write or connection failures is allowed before server is marked as failed.

tokyo_tyrant.health_check_divisor integer

Defines the divisor for the health check probability. If there are failed servers and the probability matches, the servers are health checked and in case the server seems healthy, it will be added back to the pool.

tokyo_tyrant.php_expiration integer

Whether to use built in session expiration mechanism or delegate the expiration to a lua-script on the server-side.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

TokyoTyrant constants

Tipos Resource
Exemplos
tokyo_tyrant


Exemplos

Basic usage

Exemplo #1 Putting and getting a key-value pair

<?php
$tt = new TokyoTyrant("localhost");
$tt->put("key", "value");
echo $tt->get("key");
?>

O exemplo acima irá imprimir:

value
Constantes pré-definidas
TokyoTyrant
tokyo_tyrant


The TokyoTyrant class

Introdução

The main Tokyo Tyrant class

Sinopse da classe

TokyoTyrant {
/* Constants */
const integer TokyoTyrant::RDBDEF_PORT = 1978 ;
const integer TokyoTyrant::RDBQC_STREQ = 0 ;
const integer TokyoTyrant::RDBQC_STRINC = 1 ;
const integer TokyoTyrant::RDBQC_STRBW = 2 ;
const integer TokyoTyrant::RDBQC_STREW = 3 ;
const integer TokyoTyrant::RDBQC_STRAND = 4 ;
const integer TokyoTyrant::RDBQC_STROR = 5 ;
const integer TokyoTyrant::RDBQC_STROREQ = 6 ;
const integer TokyoTyrant::RDBQC_STRRX = 7 ;
const integer TokyoTyrant::RDBQC_NUMEQ = 8 ;
const integer TokyoTyrant::RDBQC_NUMGT = 9 ;
const integer TokyoTyrant::RDBQC_NUMGE = 10 ;
const integer TokyoTyrant::RDBQC_NUMLT = 11 ;
const integer TokyoTyrant::RDBQC_NUMLE = 12 ;
const integer TokyoTyrant::RDBQC_NUMBT = 13 ;
const integer TokyoTyrant::RDBQC_NUMOREQ = 14 ;
const integer TokyoTyrant::RDBQC_NEGATE = 16777216 ;
const integer TokyoTyrant::RDBQC_NOIDX = 33554432 ;
const integer TokyoTyrant::RDBQO_STRASC = 0 ;
const integer TokyoTyrant::RDBQO_STRDESC = 1 ;
const integer TokyoTyrant::RDBQO_NUMASC = 2 ;
const integer TokyoTyrant::RDBQO_NUMDESC = 3 ;
const integer TokyoTyrant::RDBIT_LEXICAL = 0 ;
const integer TokyoTyrant::RDBIT_DECIMAL = 1 ;
const integer TokyoTyrant::RDBIT_TOKEN = 2 ;
const integer TokyoTyrant::RDBIT_QGRAM = 3 ;
const integer TokyoTyrant::RDBIT_OPT = 9998 ;
const integer TokyoTyrant::RDBIT_VOID = 9999 ;
const integer TokyoTyrant::RDBIT_KEEP = 16777216 ;
const integer TokyoTyrant::RDBQCFTS_PH = 15 ;
const integer TokyoTyrant::RDBQCFTS_AND = 16 ;
const integer TokyoTyrant::RDBQCFTS_OR = 17 ;
const integer TokyoTyrant::RDBQCFTS_EX = 18 ;
const integer TokyoTyrant::RDBXO_LCKREC = 1 ;
const integer TokyoTyrant::RDBXOLCK_GLB = 2 ;
const integer TokyoTyrant::RDBREC_INT = 1 ;
const integer TokyoTyrant::RDBREC_DBL = 2 ;
const integer TokyoTyrant::RDBMS_UNION = 0 ;
const integer TokyoTyrant::RDBMS_ISECT = 1 ;
const integer TokyoTyrant::RDBMS_DIFF = 2 ;
const integer TokyoTyrant::RDBT_RECON = 1 ;
/* Methods */
public number add ( string $key , number $increment [, int $type = 0 ] )
public TokyoTyrant connect ( string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]] )
public TokyoTyrant connectUri ( string $uri )
__construct ([ string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]]] )
public TokyoTyrant copy ( string $path )
public string ext ( string $name , int $options , string $key , string $value )
public array fwmKeys ( string $prefix , int $max_recs )
public mixed get ( mixed $keys )
public TokyoTyrantIterator getIterator ( void )
public int num ( void )
public TokyoTyrant out ( mixed $keys )
public TokyoTyrant put ( mixed $keys [, string $value = NULL ] )
public TokyoTyrant putCat ( mixed $keys [, string $value ] )
public TokyoTyrant putKeep ( mixed $keys [, string $value ] )
public TokyoTyrant putNr ( mixed $keys [, string $value = NULL ] )
public mixed putShl ( string $key , string $value , int $width )
public mixed restore ( string $log_dir , int $timestamp [, bool $check_consistency = true ] )
public mixed setMaster ( string $host , int $port , int $timestamp [, bool $check_consistency = true ] )
public int size ( string $key )
public array stat ( void )
public mixed sync ( void )
public TokyoTyrant tune ( float $timeout [, int $options = TokyoTyrant::RDBT_RECON ] )
public mixed vanish ( void )
}

Constantes pré-definidas

TokyoTyrant Constants

TokyoTyrant::RDBDEF_PORT

The default port of the Tokyo Tyrant database

TokyoTyrant::RDBQC_STREQ

string is equal to

TokyoTyrant::RDBQC_STRINC

string is included in

TokyoTyrant::RDBQC_STRBW

string begins with

TokyoTyrant::RDBQC_STREW

string ends with

TokyoTyrant::RDBQC_STRAND

string includes all tokens in

TokyoTyrant::RDBQC_STROR

string includes at least one token in

TokyoTyrant::RDBQC_STROREQ

string is equal to at least one token in

TokyoTyrant::RDBQC_STRRX

string matches regular expressions of

TokyoTyrant::RDBQC_NUMEQ

number is equal to

TokyoTyrant::RDBQC_NUMGT

number is greater than

TokyoTyrant::RDBQC_NUMGE

number is greater than or equal to

TokyoTyrant::RDBQC_NUMLT

number is less than

TokyoTyrant::RDBQC_NUMLE

number is less than or equal to

TokyoTyrant::RDBQC_NUMBT

number is between two tokens of

TokyoTyrant::RDBQC_NUMOREQ

number is equal to at least one token in

TokyoTyrant::RDBQC_NEGATE

negation flag

TokyoTyrant::RDBQC_NOIDX

no index flag

TokyoTyrant::RDBQO_STRASC

string ascending

TokyoTyrant::RDBQO_STRDESC

string descending

TokyoTyrant::RDBQO_NUMASC

number ascending

TokyoTyrant::RDBQO_NUMDESC

number descending

TokyoTyrant::RDBIT_LEXICAL

lexical string

TokyoTyrant::RDBIT_DECIMAL

decimal string

TokyoTyrant::RDBIT_TOKEN

token inverted index (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBIT_QGRAM

QGRAM inverted index (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBIT_OPT

optimize

TokyoTyrant::RDBIT_VOID

void

TokyoTyrant::RDBIT_KEEP

keep existing index

TokyoTyrant::RDBQCFTS_PH

full-text search with the phrase of (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBQCFTS_AND

full-text search with all tokens in (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBQCFTS_OR

full-text search with at least one token in (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBQCFTS_EX

full-text search with the compound expression of (Tokyo Tyrant >= 1.1.29)

TokyoTyrant::RDBQCFTS_AND

Metasearch union between records (Tokyo Tyrant >= 1.1.33)

TokyoTyrant::RDBQCFTS_OR

Metasearch intersection between records (Tokyo Tyrant >= 1.1.33)

TokyoTyrant::RDBQCFTS_EX

Metasearch difference between records (Tokyo Tyrant >= 1.1.33)

TokyoTyrant::RDBT_RECON

Whether to reconnect on connection failure. It is recommended to have this parameter on for persistent connections

TokyoTyrant::RDBXOLCK_REC

record locking

TokyoTyrant::RDBXOLCK_GLB

global locking

TokyoTyrant::RDBREC_INT

record type int

TokyoTyrant::RDBREC_DBL

record type float (double)

TokyoTyrant::TTE_SUCCESS

success

TokyoTyrant::TTE_INVALID

invalid operation

TokyoTyrant::TTE_NOHOST

host not found

TokyoTyrant::TTE_REFUSED

connection refused

TokyoTyrant::TTE_SEND

send error

TokyoTyrant::TTE_RECV

recv error

TokyoTyrant::TTE_KEEP

record exist

TokyoTyrant::TTE_NOREC

no record found

TokyoTyrant::TTE_MISC

miscellaneous error

Índice

  • TokyoTyrant::add — Adds to a numeric key
  • TokyoTyrant::connect — Connect to a database
  • TokyoTyrant::connectUri — Connects to a database
  • TokyoTyrant::__construct — Construct a new TokyoTyrant object
  • TokyoTyrant::copy — Copies the database
  • TokyoTyrant::ext — Execute a remote script
  • TokyoTyrant::fwmKeys — Returns the forward matching keys
  • TokyoTyrant::get — The get purpose
  • TokyoTyrant::getIterator — Get an iterator
  • TokyoTyrant::num — Number of records in the database
  • TokyoTyrant::out — Removes records
  • TokyoTyrant::put — Puts values
  • TokyoTyrant::putCat — Concatenates to a record
  • TokyoTyrant::putKeep — Puts a record
  • TokyoTyrant::putNr — Puts value
  • TokyoTyrant::putShl — Concatenates to a record
  • TokyoTyrant::restore — Restore the database
  • TokyoTyrant::setMaster — Set the replication master
  • TokyoTyrant::size — Returns the size of the value
  • TokyoTyrant::stat — Get statistics
  • TokyoTyrant::sync — Synchronize the database
  • TokyoTyrant::tune — Tunes connection values
  • TokyoTyrant::vanish — Empties the database
Exemplos
TokyoTyrant::add
tokyo_tyrant


Adds to a numeric key

TokyoTyrant
TokyoTyrant::connect
TokyoTyrant
PHP Manual

TokyoTyrant::add

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::add — Adds to a numeric key

Descrição

public number TokyoTyrant::add ( string $key , number $increment [, int $type = 0 ] )

Adds to an int or double value. This increments the value by the given amount and returns the new value. If the key does not exist a new key is created with initial value of the increment parameter.

Parâmetros

key

The string key

increment

The amount to increment

type

TokyoTyrant::RDBREC_INT or TokyoTyrant::RDBREC_DBL constant. If this parameter is omitted the type is guessed from the increment parameters type.

Valor Retornado

Returns the new value on success

Exemplos

Exemplo #1 TokyoTyrant::add() example

<?php
$tt = new TokyoTyrant("localhost", TokyoTyrant::RDBDEF_PORT);
/* Adds integer 3 to key and creates a new key */
$tt->add("test", 3);

/* String value is converted to double */
echo $tt->add("test", "3.5", TokyoTyrant::RDBREC_DBL);
?>

O exemplo acima irá imprimir algo similar a:

6.5

Veja Também

  • TokyoTyrant::put() - Puts values
  • TokyoTyrant::putcat() - Concatenates to a record
  • TokyoTyrant::putkeep() - Puts a record

TokyoTyrant
TokyoTyrant::connect
TokyoTyrant


Connect to a database

TokyoTyrant::add
TokyoTyrant::connectUri
TokyoTyrant
PHP Manual

TokyoTyrant::connect

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::connect — Connect to a database

Descrição

public TokyoTyrant TokyoTyrant::connect ( string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]] )

Connects to a remote database

Parâmetros

host

The hostname

port

The port. Default: 1978

options

Connection options: timeout (default: 5.0), reconnect (default: TRUE) and persistent (default: TRUE)

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::connect() example

<?php
$tt = new TokyoTyrant();
$tt->connect("localhost", TokyoTyrant::RDBDEF_PORT)->put("test", "value");
?>

Veja Também

  • TokyoTyrant::connectUri() - Connects to a database

TokyoTyrant::add
TokyoTyrant::connectUri
TokyoTyrant


Connects to a database

TokyoTyrant::connect
TokyoTyrant::__construct
TokyoTyrant
PHP Manual

TokyoTyrant::connectUri

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::connectUri — Connects to a database

Descrição

public TokyoTyrant TokyoTyrant::connectUri ( string $uri )

Connects to a database using an uri

Parâmetros

uri

An URI to the database. For example tcp://localhost:1979/

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::connectUri() example

<?php
$tt = new TokyoTyrant();
$tt->connectUri("tcp://localhost:1978/")->put("test", "hi");
?>

Veja Também

  • TokyoTyrant::connect() - Connect to a database

TokyoTyrant::connect
TokyoTyrant::__construct
TokyoTyrant


Construct a new TokyoTyrant object

TokyoTyrant::connectUri
TokyoTyrant::copy
TokyoTyrant
PHP Manual

TokyoTyrant::__construct

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::__construct — Construct a new TokyoTyrant object

Descrição

TokyoTyrant::__construct ([ string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]]] )

Constructs a new TokyoTyrant object and optionally connects to the database

Parâmetros

host

The hostname. Default: NULL

port

port number. Default: 1978

options

Connection options: timeout (default: 5.0), reconnect (default: TRUE) and persistent (default: TRUE)

Valor Retornado

Throws TokyoTyrantException if connection to database fails

Veja Também

  • TokyoTyrant::connect() - Connect to a database
  • TokyoTyrant::connectUri() - Connects to a database

TokyoTyrant::connectUri
TokyoTyrant::copy
TokyoTyrant


Copies the database

TokyoTyrant::__construct
TokyoTyrant::ext
TokyoTyrant
PHP Manual

TokyoTyrant::copy

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::copy — Copies the database

Descrição

public TokyoTyrant TokyoTyrant::copy ( string $path )

Makes a copy of the current database

Parâmetros

path

Path to where to copy the database. The user running the remote database must have a write access to the directory.

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::copy() example

<?php
$tt = new TokyoTyrant("localhost", 1978);
$tt->copy("/tmp/foobar.tct");
?>

Veja Também

  • TokyoTyrant::restore() - Restore the database

TokyoTyrant::__construct
TokyoTyrant::ext
TokyoTyrant


Execute a remote script

TokyoTyrant::copy
TokyoTyrant::fwmKeys
TokyoTyrant
PHP Manual

TokyoTyrant::ext

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::ext — Execute a remote script

Descrição

public string TokyoTyrant::ext ( string $name , int $options , string $key , string $value )

Executes a remote script extension.

Parâmetros

name

Name of the function to execute

options

Either TokyoTyrant::RDBXO_LCKREC for record locking and TokyoTyrant::RDBXO_LCKGLB for global locking.

key

The key to pass to the function

value

The value to pass to the function

Valor Retornado

Returns the result of the script function

Exemplos

Exemplo #1 TokyoTyrant::ext() example

<?php
$tt = new TokyoTyrant("localhost", 1978);
echo $tt->ext("somefunc", TokyoTyrant::RDBXO_LCKREC, "some_key", "some_value");
?>

TokyoTyrant::copy
TokyoTyrant::fwmKeys
TokyoTyrant


Returns the forward matching keys

TokyoTyrant::ext
TokyoTyrant::get
TokyoTyrant
PHP Manual

TokyoTyrant::fwmKeys

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::fwmKeys — Returns the forward matching keys

Descrição

public array TokyoTyrant::fwmKeys ( string $prefix , int $max_recs )

Returns the forward matching keys from the database

Parâmetros

prefix

Prefix of the keys

max_recs

Maximum records to return

Valor Retornado

Returns an array of matching keys. The values are not returned

Exemplos

Exemplo #1 TokyoTyrant::fwmKeys() example

<?php

$tt = new TokyoTyrant("localhost");

/* Create 20 macthing keys */
for ($i = 0; $i < 20; $i++) {
    $tt->put("key_" . $i, "value_" . $i);
}

/* Create 20 non-macthing keys */
for ($i = 0; $i < 20; $i++) {
    $tt->put("something_" . $i, "data_" . $i);
}

/* Get five matching keys */
var_dump($tt->fwmKeys("key_", 5));
?>

O exemplo acima irá imprimir algo similar a:

array(5) {
  [0]=>
  string(5) "key_5"
  [1]=>
  string(6) "key_14"
  [2]=>
  string(5) "key_6"
  [3]=>
  string(6) "key_15"
  [4]=>
  string(5) "key_7"
}

TokyoTyrant::ext
TokyoTyrant::get
TokyoTyrant


The get purpose

TokyoTyrant::fwmKeys
TokyoTyrant::getIterator
TokyoTyrant
PHP Manual

TokyoTyrant::get

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::get — The get purpose

Descrição

public mixed TokyoTyrant::get ( mixed $keys )

This method is used to return a value or multiple values. This method accepts a string or an array as a value.

Parâmetros

keys

A string key or an array of string keys

Valor Retornado

Returns a string or an array based on the given parameters. Throws a TokyoTyrantException on error. If string is passed null is returned if the key is not found. In case an array is given as an parameter only existing keys will be returned. It is not an error to pass a key that does not exist.

Exemplos

Exemplo #1 TokyoTyrant::get() example

<?php
$tt = new TokyoTyrant("localhost", 1978);
$tt->put("key1", "value1");
$tt->put("key2", "value2");
var_dump($tt->get(array("key1", "key2")));
var_dump($tt->get("key1"));
?>

O exemplo acima irá imprimir:

array(2) {
  ["key1"]=>
  string(6) "value1"
  ["key2"]=>
  string(6) "value2"
}
string(6) "value1"

Veja Também

  • TokyoTyrant::put() - Puts values

TokyoTyrant::fwmKeys
TokyoTyrant::getIterator
TokyoTyrant


Get an iterator

TokyoTyrant::get
TokyoTyrant::num
TokyoTyrant
PHP Manual

TokyoTyrant::getIterator

(No version information available, might only be in SVN)

TokyoTyrant::getIterator — Get an iterator

Descrição

public TokyoTyrantIterator TokyoTyrant::getIterator ( void )

Gets an iterator for iterating all keys / values in the database.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method returns TokyoTyrantIterator object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::getIterator() example

<?php
$tt = new TokyoTyrant("localhost");
$it = $tt->getIterator();

foreach ($it as $k => $v) {

}
?>

Veja Também

  • TokyoTyrantTable::getQuery() - Get a query object
  • TokyoTyrantTable::getIterator() - Get an iterator

TokyoTyrant::get
TokyoTyrant::num
TokyoTyrant


Number of records in the database

TokyoTyrant::getIterator
TokyoTyrant::out
TokyoTyrant
PHP Manual

TokyoTyrant::num

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::num — Number of records in the database

Descrição

public int TokyoTyrant::num ( void )

Returns the number of records in the database

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns number of records in the database

Exemplos

Exemplo #1 TokyoTyrant::num() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Echo the number of records */
echo $tt->num();
?>

O exemplo acima irá imprimir algo similar a:

1234

Veja Também

  • TokyoTyrant::stat() - Get statistics

TokyoTyrant::getIterator
TokyoTyrant::out
TokyoTyrant


Removes records

TokyoTyrant::num
TokyoTyrant::put
TokyoTyrant
PHP Manual

TokyoTyrant::out

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::out — Removes records

Descrição

public TokyoTyrant TokyoTyrant::out ( mixed $keys )

Removes a record or multiple records. This method accepts a string for a single key or an array of keys for multiple records.

Parâmetros

keys

A string key or an array of string keys

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::out() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

$tt->put("test1", "value1");
$tt->put("test2", "value2");

$tt->out(array("test1", "test2"));
?>

Veja Também

  • TokyoTyrant::put() - Puts values

TokyoTyrant::num
TokyoTyrant::put
TokyoTyrant


Puts values

TokyoTyrant::out
TokyoTyrant::putCat
TokyoTyrant
PHP Manual

TokyoTyrant::put

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::put — Puts values

Descrição

public TokyoTyrant TokyoTyrant::put ( mixed $keys [, string $value = NULL ] )

Puts a key-value pair into the database or multiple key-value pairs. If keys is string then the second parameter value defines the value. The second parameter is mandatory if keys is a string. If the key exists the value will be replaced with new value.

Parâmetros

keys

A string key or an array of key-value pairs

value

The value in case a string key is used

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::put() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Put single key-value pair */
$tt->put("key", "value");

/* Put key-value pairs, new value overwrites the old */
$tt->put(array("key1" => "value1", "key" => "value2"));

/* Get back one key */
echo $tt->get("key");
?>

O exemplo acima irá imprimir:

value2

Veja Também

  • TokyoTyrant::putKeep() - Puts a record
  • TokyoTyrant::putCat() - Concatenates to a record

TokyoTyrant::out
TokyoTyrant::putCat
TokyoTyrant


Concatenates to a record

TokyoTyrant::put
TokyoTyrant::putKeep
TokyoTyrant
PHP Manual

TokyoTyrant::putCat

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::putCat — Concatenates to a record

Descrição

public TokyoTyrant TokyoTyrant::putCat ( mixed $keys [, string $value ] )

Appends a value into existing key or multiple values if keys is an array. The second parameter is mandatory if keys is a string. If the record does not exist a new record is created.

Parâmetros

keys

A string key or an array of key-value pairs

value

The value in case a string key is used

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::putCat() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Create a new key */
$tt->put("key", "value");

/* Concatenate single key-value pair */
$tt->putCat("key", " has more data");

/* Echo the key */
echo $tt->get("key");
?>

O exemplo acima irá imprimir:

value has more data

Veja Também

  • TokyoTyrant::put() - Puts values
  • TokyoTyrant::putKeep() - Puts a record

TokyoTyrant::put
TokyoTyrant::putKeep
TokyoTyrant


Puts a record

TokyoTyrant::putCat
TokyoTyrant::putNr
TokyoTyrant
PHP Manual

TokyoTyrant::putKeep

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::putKeep — Puts a record

Descrição

public TokyoTyrant TokyoTyrant::putKeep ( mixed $keys [, string $value ] )

Puts a key-value pair into the database or multiple key-value pairs. If keys is string then the second parameter value defines the value. The second parameter is mandatory if keys is a string. If the key already exists this method throws an exception indicating that the records exists.

Parâmetros

keys

A string key or an array of key-value pairs

value

The string value

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 tokyotyrant::putKeep() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Create a new key */
$tt->put("key", "value");

try {
    $tt->putKeep("key", "new value");
} catch (TokyoTyrantException $e) {
    if ($e->getCode() === TokyoTyrant::TTE_KEEP) {
        echo "Existing record! Not modified\n";
    } else {
        echo "Error: " , $e->getMessage() , "\n";
    }
}
echo $tt->get("key");
?>

O exemplo acima irá imprimir:

Existing record! Not modified
value

Veja Também

  • TokyoTyrant::put() - Puts values
  • TokyoTyrant::putCat() - Concatenates to a record

TokyoTyrant::putCat
TokyoTyrant::putNr
TokyoTyrant


Puts value

TokyoTyrant::putKeep
TokyoTyrant::putShl
TokyoTyrant
PHP Manual

TokyoTyrant::putNr

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::putNr — Puts value

Descrição

public TokyoTyrant TokyoTyrant::putNr ( mixed $keys [, string $value = NULL ] )

Puts a key-value pair into the database or multiple key-value pairs. If keys is string then the second parameter value defines the value. The second parameter is mandatory if keys is a string. This method does not wait for the response from the server.

Parâmetros

keys

A string key or an array of key-value pairs

value

The value in case a string key is used

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::putNr() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Put single key-value pair */
$tt->putNr("key", "value");

/* Put key-value pairs */
$tt->putNr(array("key1" => "value1", "key2" => "value2"));

/* Get back one key */
echo $tt->get("key1");
?>

O exemplo acima irá imprimir:

value1

Veja Também

  • TokyoTyrant::putNr()
  • TokyoTyrant::putKeep() - Puts a record
  • TokyoTyrant::putCat() - Concatenates to a record

TokyoTyrant::putKeep
TokyoTyrant::putShl
TokyoTyrant


Concatenates to a record

TokyoTyrant::putNr
TokyoTyrant::restore
TokyoTyrant
PHP Manual

TokyoTyrant::putShl

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::putShl — Concatenates to a record

Descrição

public mixed TokyoTyrant::putShl ( string $key , string $value , int $width )

Concatenate to a record and shift to left.

Parâmetros

key

A string key

value

The value to concatenate

width

The width of the record

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::putShl() example

<?php
/* Connect to a database on default port */
$tt = new TokyoTyrant("localhost");

/* Create a new key */
$tt->put("key", "just a long piece of data");

/* Concatenate and shift to left */
$tt->putShl("key", " and string", 15);

/* Echo the key */
echo $tt->get("key");
?>

O exemplo acima irá imprimir:

data and string

Veja Também

  • TokyoTyrant::put() - Puts values
  • TokyoTyrant::putKeep() - Puts a record
  • TokyoTyrant::putCat() - Concatenates to a record

TokyoTyrant::putNr
TokyoTyrant::restore
TokyoTyrant


Restore the database

TokyoTyrant::putShl
TokyoTyrant::setMaster
TokyoTyrant
PHP Manual

TokyoTyrant::restore

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::restore — Restore the database

Descrição

public mixed TokyoTyrant::restore ( string $log_dir , int $timestamp [, bool $check_consistency = true ] )

Restore the database from the update log.

Aviso

This method is not supported on 32bit platforms.

Parâmetros

log_dir

Directory where the log is

timestamp

Beginning timestamp with microseconds

check_consistency

Whether to check consistency: Default: TRUE

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

TokyoTyrant::putShl
TokyoTyrant::setMaster
TokyoTyrant


Set the replication master

TokyoTyrant::restore
TokyoTyrant::size
TokyoTyrant
PHP Manual

TokyoTyrant::setMaster

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::setMaster — Set the replication master

Descrição

public mixed TokyoTyrant::setMaster ( string $host , int $port , int $timestamp [, bool $check_consistency = true ] )

Sets the replication master of the database

Aviso

This method is not supported on 32bit platforms.

Parâmetros

host

Hostname of the replication master. If NULL the replication is disabled.

port

Port of the replication master

timestamp

Beginning timestamp with microseconds

check_consistency

Whether to check consistency.

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::setMaster() example

<?php
/* Connect to a database */
$tt = new TokyoTyrant("tokyotyrant.example.com");

/* Disable the replication */
$tt->setMaster(NULL, 0, 0);
?>

Veja Também

  • Classname::Method()

TokyoTyrant::restore
TokyoTyrant::size
TokyoTyrant


Returns the size of the value

TokyoTyrant::setMaster
TokyoTyrant::stat
TokyoTyrant
PHP Manual

TokyoTyrant::size

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::size — Returns the size of the value

Descrição

public int TokyoTyrant::size ( string $key )

Returns the size of a value by key

Parâmetros

key

The key of which size to fetch

Valor Retornado

Returns the size of the key or throw TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrant::size() example

<?php
$tt = new TokyoTyrant("localhost");

$tt->put("test_key", "12345");

echo $tt->size("test_key");
?>

O exemplo acima irá imprimir:

5

TokyoTyrant::setMaster
TokyoTyrant::stat
TokyoTyrant


Get statistics

TokyoTyrant::size
TokyoTyrant::sync
TokyoTyrant
PHP Manual

TokyoTyrant::stat

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::stat — Get statistics

Descrição

public array TokyoTyrant::stat ( void )

Returns statistics of the remote database

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of key value pairs describing the statistics

Exemplos

Exemplo #1 TokyoTyrant::stat() example

<?php
$tt = new TokyoTyrant("localhost");

var_dump($tt->stat());
?>

O exemplo acima irá imprimir algo similar a:

array(19) {
  ["version"]=>
  string(6) "1.1.28"
  ["libver"]=>
  string(3) "311"
  ["protver"]=>
  string(4) "0.91"
  ["os"]=>
  string(5) "Linux"
  ["time"]=>
  string(17) "1247358357.665630"
  ["pid"]=>
  string(5) "14348"
  ["sid"]=>
  string(8) "59025947"
  ["type"]=>
  string(9) "on-memory"
  ["path"]=>
  string(1) "*"
  ["rnum"]=>
  string(1) "4"
  ["size"]=>
  string(6) "262856"
  ["bigend"]=>
  string(1) "0"
  ["fd"]=>
  string(1) "5"
  ["loadavg"]=>
  string(8) "0.000000"
  ["memsize"]=>
  string(8) "77328384"
  ["memrss"]=>
  string(7) "1183744"
  ["ru_real"]=>
  string(13) "162776.042152"
  ["ru_user"]=>
  string(8) "0.476029"
  ["ru_sys"]=>
  string(8) "8.652540"
}

Veja Também

  • Classname::Method()

TokyoTyrant::size
TokyoTyrant::sync
TokyoTyrant


Synchronize the database

TokyoTyrant::stat
TokyoTyrant::tune
TokyoTyrant
PHP Manual

TokyoTyrant::sync

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::sync — Synchronize the database

Descrição

public mixed TokyoTyrant::sync ( void )

Synchronizes the database on to the physical device

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

TokyoTyrant::stat
TokyoTyrant::tune
TokyoTyrant


Tunes connection values

TokyoTyrant::sync
TokyoTyrant::vanish
TokyoTyrant
PHP Manual

TokyoTyrant::tune

(PECL tokyo_tyrant >= 0.2.0)

TokyoTyrant::tune — Tunes connection values

Descrição

public TokyoTyrant TokyoTyrant::tune ( float $timeout [, int $options = TokyoTyrant::RDBT_RECON ] )

Tunes database connection options.

Parâmetros

timeout

The objects timeout value (default: 5.0)

options

Bitmask of options to tune. This can be either 0 or TokyoTyrant::RDBT_RECON. It is recommended not to change the second parameter.

Valor Retornado

This method returns a reference to the current object and throws TokyoTyrantException on failure.

TokyoTyrant::sync
TokyoTyrant::vanish
TokyoTyrant


Empties the database

TokyoTyrant::tune
TokyoTyrantTable
TokyoTyrant
PHP Manual

TokyoTyrant::vanish

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrant::vanish — Empties the database

Descrição

public mixed TokyoTyrant::vanish ( void )

Empties a remote database

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrant::vanish() example

<?php
$tt = new TokyoTyrant("localhost");
$tt->vanish();
?>

Veja Também

  • TokyoTyrant::out() - Removes records

TokyoTyrant::tune
TokyoTyrantTable
TokyoTyrant


The TokyoTyrantTable class

Introdução

Provides an API to the table databases. A table database can be create using the following command: ttserver -port 1979 /tmp/tt_table.tct. In Tokyo Tyrant the table API is a schemaless database which can store arbitrary amount of key-value pairs under a single primary key.

Sinopse da classe

TokyoTyrantTable extends TokyoTyrant {
/* Methods */
public void add ( string $key , mixed $increment [, string $type ] )
public int genUid ( void )
public void get ( mixed $keys )
public TokyoTyrantIterator getIterator ( void )
public TokyoTyrantQuery getQuery ( void )
public void out ( mixed $keys )
public int put ( string $key , array $columns )
public void putCat ( string $key , array $columns )
public void putKeep ( string $key , array $columns )
public void putNr ( mixed $keys [, string $value ] )
public void putShl ( string $key , string $value , int $width )
public mixed setIndex ( string $column , int $type )
/* Inherited methods */
public number TokyoTyrant::add ( string $key , number $increment [, int $type = 0 ] )
public TokyoTyrant TokyoTyrant::connect ( string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]] )
public TokyoTyrant TokyoTyrant::connectUri ( string $uri )
TokyoTyrant::__construct ([ string $host [, int $port = TokyoTyrant::RDBDEF_PORT [, array $options ]]] )
public TokyoTyrant TokyoTyrant::copy ( string $path )
public string TokyoTyrant::ext ( string $name , int $options , string $key , string $value )
public array TokyoTyrant::fwmKeys ( string $prefix , int $max_recs )
public mixed TokyoTyrant::get ( mixed $keys )
public TokyoTyrantIterator TokyoTyrant::getIterator ( void )
public int TokyoTyrant::num ( void )
public TokyoTyrant TokyoTyrant::out ( mixed $keys )
public TokyoTyrant TokyoTyrant::put ( mixed $keys [, string $value = NULL ] )
public TokyoTyrant TokyoTyrant::putCat ( mixed $keys [, string $value ] )
public TokyoTyrant TokyoTyrant::putKeep ( mixed $keys [, string $value ] )
public TokyoTyrant TokyoTyrant::putNr ( mixed $keys [, string $value = NULL ] )
public mixed TokyoTyrant::putShl ( string $key , string $value , int $width )
public mixed TokyoTyrant::restore ( string $log_dir , int $timestamp [, bool $check_consistency = true ] )
public mixed TokyoTyrant::setMaster ( string $host , int $port , int $timestamp [, bool $check_consistency = true ] )
public int TokyoTyrant::size ( string $key )
public array TokyoTyrant::stat ( void )
public mixed TokyoTyrant::sync ( void )
public TokyoTyrant TokyoTyrant::tune ( float $timeout [, int $options = TokyoTyrant::RDBT_RECON ] )
public mixed TokyoTyrant::vanish ( void )
}

Índice

  • TokyoTyrantTable::add — Adds a record
  • TokyoTyrantTable::genUid — Generate unique id
  • TokyoTyrantTable::get — Get a row
  • TokyoTyrantTable::getIterator — Get an iterator
  • TokyoTyrantTable::getQuery — Get a query object
  • TokyoTyrantTable::out — Remove records
  • TokyoTyrantTable::put — Store a row
  • TokyoTyrantTable::putCat — Concatenates to a row
  • TokyoTyrantTable::putKeep — Put a new record
  • TokyoTyrantTable::putNr — Puts value
  • TokyoTyrantTable::putShl — Concatenates to a record
  • TokyoTyrantTable::setIndex — Sets index
TokyoTyrant::vanish
TokyoTyrantTable::add
tokyo_tyrant


Adds a record

TokyoTyrantTable
TokyoTyrantTable::genUid
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::add

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::add — Adds a record

Descrição

public void TokyoTyrantTable::add ( string $key , mixed $increment [, string $type ] )

This method is not supported with table databases.

Parâmetros

key

The string key

increment

The amount to increment

type

TokyoTyrant::RDB_RECINT or TokyoTyrant::RDB_RECDBL constant. If this parameter is omitted the type is guessed from the increment parameters type.

Valor Retornado

This method throws an TokyoTyrantException if used through this class.

Veja Também

  • TokyoTyrant::add() - Adds to a numeric key

TokyoTyrantTable
TokyoTyrantTable::genUid
TokyoTyrantTable


Generate unique id

TokyoTyrantTable::add
TokyoTyrantTable::get
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::genUid

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::genUid — Generate unique id

Descrição

public int TokyoTyrantTable::genUid ( void )

Generates an unique id inside the table database. In table databases rows are referenced using a numeric primary key.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an unique id or throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantTable::genUid() example

<?php
$tt = new TokyoTyrantTable("localhost", 1122);

echo $tt->genUid();
?>

O exemplo acima irá imprimir algo similar a:

4

Veja Também

  • TokyoTyrantTable::put() - Store a row

TokyoTyrantTable::add
TokyoTyrantTable::get
TokyoTyrantTable


Get a row

TokyoTyrantTable::genUid
TokyoTyrantTable::getIterator
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::get

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::get — Get a row

Descrição

public void TokyoTyrantTable::get ( mixed $keys )

Gets a row from table database. keys is a single integer for the primary key of the row or an array of integers for multiple rows.

Parâmetros

keys

The primary key, can be a string or an integer

Valor Retornado

Returns the row as an array

Exemplos

Exemplo #1 TokyoTyrantTable::get() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passing null to put generates a new uid */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Get the row back */
var_dump($tt->get($index));
?>

O exemplo acima irá imprimir:

array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}

Notas

Nota:

Starting from version 0.3.0 this method accepts array as parameter. Please note that multi-get on tables is not binary-safe.

Veja Também

  • TokyoTyrantTable::put() - Store a row

TokyoTyrantTable::genUid
TokyoTyrantTable::getIterator
TokyoTyrantTable


Get an iterator

TokyoTyrantTable::get
TokyoTyrantTable::getQuery
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::getIterator

(No version information available, might only be in SVN)

TokyoTyrantTable::getIterator — Get an iterator

Descrição

public TokyoTyrantIterator TokyoTyrantTable::getIterator ( void )

Gets an iterator for iterating all keys / values in the database.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method returns TokyoTyrantIterator object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrantTable::getIterator() example

<?php
$tt = new TokyoTyrantTable("localhost");
$it = $tt->getIterator();

foreach ($it as $k => $v) {
  var_dump($k, $v);
}
?>

Veja Também

  • TokyoTyrantTable::getQuery() - Get a query object
  • TokyoTyrant::getIterator() - Get an iterator

TokyoTyrantTable::get
TokyoTyrantTable::getQuery
TokyoTyrantTable


Get a query object

TokyoTyrantTable::getIterator
TokyoTyrantTable::out
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::getQuery

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::getQuery — Get a query object

Descrição

public TokyoTyrantQuery TokyoTyrantTable::getQuery ( void )

Get a query object to execute searches on the database

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TokyoTyrantQuery on success and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantTable::getQuery() example

<?php
/* Connect to a table database */
$table = new TokyoTyrantTable("localhost", 1979);

/* Put a few rows */
$table->put(null, array("column1" => "some data", "column2" => "more data"));
$table->put(null, array("something" => "value", "data" => "good data"));

/* Get query object */
$query = $table->getQuery();

/* Add condition to query */
$query->addCond('data', TokyoTyrant::RDBQC_STREQ, 'good data');

/* Get matching rows */
var_dump($query->search());
?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [11]=>
  array(2) {
    ["something"]=>
    string(5) "value"
    ["data"]=>
    string(9) "good data"
  }
}

Veja Também

  • TokyoTyrantQuery::search() - Searches records
  • TokyoTyrantQuery::out() - Removes records based on query

TokyoTyrantTable::getIterator
TokyoTyrantTable::out
TokyoTyrantTable


Remove records

TokyoTyrantTable::getQuery
TokyoTyrantTable::put
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::out

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::out — Remove records

Descrição

public void TokyoTyrantTable::out ( mixed $keys )

Removes records from a table database.

Parâmetros

keys

A single integer key or an array of integers

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrantTable::out() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passing null to put generates a new uid */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Delete the row */
$tt->out($index);
?>

Veja Também

  • TokyoTyrantTable::put() - Store a row

TokyoTyrantTable::getQuery
TokyoTyrantTable::put
TokyoTyrantTable


Store a row

TokyoTyrantTable::out
TokyoTyrantTable::putCat
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::put

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::put — Store a row

Descrição

public int TokyoTyrantTable::put ( string $key , array $columns )

Puts a new row into the database. This method parameters are key which is the primary key of the row, passing NULL will generate a new unique id. value is an array containing the row contents which is usually key value pairs.

Parâmetros

key

The primary key of the row

columns

The row contents

Valor Retornado

Returns the primary key on success and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantTable::put() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passing null to put generates a new uid */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Get the row back */
var_dump($tt->get($index));

/* Modify an existing row */
$tt->put($index, array("column1" => "other data", "column2" => "better data"));

/* Get the row back */
var_dump($tt->get($index));
?>

O exemplo acima irá imprimir:

array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}
array(2) {
  ["column1"]=>
  string(10) "other data"
  ["column2"]=>
  string(11) "better data"
}

Veja Também

  • TokyoTyrantTable::get() - Get a row

TokyoTyrantTable::out
TokyoTyrantTable::putCat
TokyoTyrantTable


Concatenates to a row

TokyoTyrantTable::put
TokyoTyrantTable::putKeep
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::putCat

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::putCat — Concatenates to a row

Descrição

public void TokyoTyrantTable::putCat ( string $key , array $columns )

This method can be used to add new columns to existing records. Existing keys will be left unmodified but any new columns will be appended to the row. Passing null as key will generate a new row.

Parâmetros

key

The primary key of the row or NULL

columns

Array of row contents

Valor Retornado

Returns the primary key and throws TokyoTyrantException on error.

Exemplos

Exemplo #1 TokyoTyrantTable::putCat() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passing null to put generates a new uid */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Get the row back */
var_dump($tt->get($index));

/* Modify an existing row */
$tt->putcat($index, array("column1" => "something new", "new_column" => "other data"));

/* Get the row back */
var_dump($tt->get($index));
?>

O exemplo acima irá imprimir:

array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}
array(3) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
  ["new_column"]=>
  string(10) "other data"
}

Veja Também

  • TokyoTyrantTable::put() - Store a row

TokyoTyrantTable::put
TokyoTyrantTable::putKeep
TokyoTyrantTable


Put a new record

TokyoTyrantTable::putCat
TokyoTyrantTable::putNr
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::putKeep

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::putKeep — Put a new record

Descrição

public void TokyoTyrantTable::putKeep ( string $key , array $columns )

Puts a new record into the database. If the key already exists this method throws an exception indicating that the records exists.

Parâmetros

key

The primary key of the row or NULL

columns

Array of the row contents

Valor Retornado

Returns the primary key and throws TokyoTyrantException on error.

Exemplos

Exemplo #1 TokyoTyrantTable::putKeep() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Passing null to put generates a new uid */
$index = $tt->put(null, array("column1" => "some data", "column2" => "more data"));

/* Get the row back */
var_dump($tt->get($index));

try {
    $tt->putKeep($index, array("column1" => "something new", "new_column" => "other data"));
} catch (TokyoTyrantException $e) {
    if ($e->getCode() === TokyoTyrant::TTE_KEEP) {
        echo "Existing record! Not modified\n";
    } else {
        echo "Error: " , $e->getMessage() , "\n";
    }
}

/* Get the row back */
var_dump($tt->get($index));
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}
Existing record! Not modified
array(2) {
  ["column1"]=>
  string(9) "some data"
  ["column2"]=>
  string(9) "more data"
}

Veja Também

  • TokyoTyrantTable::put() - Store a row

TokyoTyrantTable::putCat
TokyoTyrantTable::putNr
TokyoTyrantTable


Puts value

TokyoTyrantTable::putKeep
TokyoTyrantTable::putShl
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::putNr

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::putNr — Puts value

Descrição

public void TokyoTyrantTable::putNr ( mixed $keys [, string $value ] )

This method is not supported on table databases. Calling this method through TokyoTyrantTable is considered an error and an TokyoTyrantException will be thrown.

Parâmetros

keys

A string key or an array of key-value pairs

value

The value in case a string key is used

Valor Retornado

This method is not supported on table databases. Calling this method through TokyoTyrantTable is considered an error and an TokyoTyrantException will be thrown.

Veja Também

  • TokyoTyrant::putNr() - Puts value
  • TokyoTyrant::putKeep() - Puts a record
  • TokyoTyrant::putCat() - Concatenates to a record

TokyoTyrantTable::putKeep
TokyoTyrantTable::putShl
TokyoTyrantTable


Concatenates to a record

TokyoTyrantTable::putNr
TokyoTyrantTable::setIndex
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::putShl

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::putShl — Concatenates to a record

Descrição

public void TokyoTyrantTable::putShl ( string $key , string $value , int $width )

This method is not supported on table databases. Calling this method through TokyoTyrantTable is considered an error and an TokyoTyrantException will be thrown.

Parâmetros

key

A string key

value

The value to concatenate

width

The width of the record

Valor Retornado

This method is not supported on table databases.

Veja Também

  • TokyoTyrant::put() - Puts values
  • TokyoTyrant::putKeep() - Puts a record
  • TokyoTyrant::putCat() - Concatenates to a record
  • TokyoTyrantTable::put() - Store a row
  • TokyoTyrantTable::putKeep() - Put a new record
  • TokyoTyrantTable::putCat() - Concatenates to a row

TokyoTyrantTable::putNr
TokyoTyrantTable::setIndex
TokyoTyrantTable


Sets index

TokyoTyrantTable::putShl
TokyoTyrantQuery
TokyoTyrantTable
PHP Manual

TokyoTyrantTable::setIndex

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantTable::setIndex — Sets index

Descrição

public mixed TokyoTyrantTable::setIndex ( string $column , int $type )

Sets an index on a specified column. The index type is one of the TokyoTyrant::RDBIT_* constants. Passing TokyoTyrant::RDBIT_VOID removes the index.

Parâmetros

column

The name of the column

type

The index type

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

TokyoTyrantTable::putShl
TokyoTyrantQuery
TokyoTyrantTable


The TokyoTyrantQuery class

Introdução

This class is used to query the table databases

Sinopse da classe

TokyoTyrantQuery implements Iterator , Traversable {
/* Methods */
public mixed addCond ( string $name , int $op , string $expr )
__construct ( TokyoTyrantTable $table )
public int count ( void )
public array current ( void )
public string hint ( void )
public string key ( void )
public array metaSearch ( array $queries , int $type )
public array next ( void )
public TokyoTyrantQuery out ( void )
public bool rewind ( void )
public array search ( void )
public mixed setLimit ([ int $max [, int $skip ]] )
public mixed setOrder ( string $name , int $type )
public bool valid ( void )
}

Índice

  • TokyoTyrantQuery::addCond — Adds a condition to the query
  • TokyoTyrantQuery::__construct — Construct a new query
  • TokyoTyrantQuery::count — Counts records
  • TokyoTyrantQuery::current — Returns the current element
  • TokyoTyrantQuery::hint — Get the hint string of the query
  • TokyoTyrantQuery::key — Returns the current key
  • TokyoTyrantQuery::metaSearch — Retrieve records with multiple queries
  • TokyoTyrantQuery::next — Moves the iterator to next entry
  • TokyoTyrantQuery::out — Removes records based on query
  • TokyoTyrantQuery::rewind — Rewinds the iterator
  • TokyoTyrantQuery::search — Searches records
  • TokyoTyrantQuery::setLimit — Limit results
  • TokyoTyrantQuery::setOrder — Orders results
  • TokyoTyrantQuery::valid — Checks the validity of current item
TokyoTyrantTable::setIndex
TokyoTyrantQuery::addCond
tokyo_tyrant


Adds a condition to the query

TokyoTyrantQuery
TokyoTyrantQuery::__construct
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::addCond

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::addCond — Adds a condition to the query

Descrição

public mixed TokyoTyrantQuery::addCond ( string $name , int $op , string $expr )

Adds a condition to the query. Condition can be something like: get all keys which value matches expr.

Parâmetros

name

Name of the column in the condition

op

The operator. One of the TokyoTyrant::RDBQC_* constants

expr

The expression

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrantQuery::addCond() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "not here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Dump the search results */
var_dump($query->search());
?>

O exemplo acima irá imprimir:

array(2) {
  [1]=>
  array(2) {
    ["column1"]=>
    string(9) "some data"
    ["column2"]=>
    string(14) "something here"
  }
  [4]=>
  array(2) {
    ["column45"]=>
    string(11) "random data"
    ["column2"]=>
    string(25) "something along the lines"
  }
}

Veja Também

  • Classname::Method()

TokyoTyrantQuery
TokyoTyrantQuery::__construct
TokyoTyrantQuery


Construct a new query

TokyoTyrantQuery::addCond
TokyoTyrantQuery::count
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::__construct

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::__construct — Construct a new query

Descrição

TokyoTyrantQuery::__construct ( TokyoTyrantTable $table )

Construct a new query object

Parâmetros

table

TokyoTyrantTable object with active database connection

Valor Retornado

Returns a new TokyoTyrantQuery object and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantQuery::__construct() example

<?php
$tt = new TokyoTyrantTable("localhost", 1979);

$query = new TokyoTyrantQuery($tt);

/* Work with $query */
?>

Veja Também

  • TokyoTyrantTable::getQuery() - Get a query object

TokyoTyrantQuery::addCond
TokyoTyrantQuery::count
TokyoTyrantQuery


Counts records

TokyoTyrantQuery::__construct
TokyoTyrantQuery::current
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::count

(No version information available, might only be in SVN)

TokyoTyrantQuery::count — Counts records

Descrição

public int TokyoTyrantQuery::count ( void )

Returns a count of how many records a query returns.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a count of matching rows and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantQuery::count() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "not here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Count the results */
var_dump($query->count());
?>

O exemplo acima irá imprimir:

int(2)

Veja Também

  • TokyoTyrantQuery::out() - Removes records based on query
  • TokyoTyrantQuery::search() - Searches records
  • TokyoTyrantQuery::metaSearch() - Retrieve records with multiple queries

TokyoTyrantQuery::__construct
TokyoTyrantQuery::current
TokyoTyrantQuery


Returns the current element

TokyoTyrantQuery::count
TokyoTyrantQuery::hint
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::current

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::current — Returns the current element

Descrição

public array TokyoTyrantQuery::current ( void )

Returns the current element. Part of Iterator interface

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current row

Exemplos

Exemplo #1 TokyoTyrantQuery iterator example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Iterate the results */
foreach ($query as $key => $value) {
    echo "pk: $key, columns: ", count($value) ,"\n";
}
?>

O exemplo acima irá imprimir algo similar a:

pk: 1, columns: 2
pk: 4, columns: 2

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::count
TokyoTyrantQuery::hint
TokyoTyrantQuery


Get the hint string of the query

TokyoTyrantQuery::current
TokyoTyrantQuery::key
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::hint

(No version information available, might only be in SVN)

TokyoTyrantQuery::hint — Get the hint string of the query

Descrição

public string TokyoTyrantQuery::hint ( void )

Get the hint string of the query. The hint string contains information about an executed query and it could be compared to for example MySQL EXPLAIN statement.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method always returns a string

Exemplos

Exemplo #1 TokyoTyrantQuery::hint example

<?php
$tt = new TokyoTyrantTable("localhost", 1979);
$tt->vanish();

for ($i = 0; $i < 11; $i++) {
     $tt->put(null, array('a_col' => 'a' . $i, 'b_col' => 'b' . $i));
}

$query = $tt->getQuery();
$query->addCond('a_col', TokyoTyrant::RDBQC_STRBW, 'a');

$query->search();
var_dump($query->hint());
?>

O exemplo acima irá imprimir algo similar a:

string(72) "
scanning the whole table
result set size: 11
leaving the natural order
"

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::current
TokyoTyrantQuery::key
TokyoTyrantQuery


Returns the current key

TokyoTyrantQuery::hint
TokyoTyrantQuery::metaSearch
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::key

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::key — Returns the current key

Descrição

public string TokyoTyrantQuery::key ( void )

Returns the current key. Part of the Iterator interface

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current key and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantQuery iterator example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Iterate the results */
foreach ($query as $key => $value) {
    echo "pk: $key, columns: ", count($value) ,"\n";
}
?>

O exemplo acima irá imprimir algo similar a:

pk: 1, columns: 2
pk: 4, columns: 2

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::hint
TokyoTyrantQuery::metaSearch
TokyoTyrantQuery


Retrieve records with multiple queries

TokyoTyrantQuery::key
TokyoTyrantQuery::next
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::metaSearch

(No version information available, might only be in SVN)

TokyoTyrantQuery::metaSearch — Retrieve records with multiple queries

Descrição

public array TokyoTyrantQuery::metaSearch ( array $queries , int $type )

Executes multiple queries on a database and returns matching records. The current object is always the left most object in the search.

Parâmetros

queries

Array of TokyoTyrantQuery objects

type

One of the TokyoTyrant::RDBMS_* constants

Valor Retornado

Returns the matching rows and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantQuery::metaSearch() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add test data */
$tt->put('cherry',     array('color' => 'red'));
$tt->put('strawberry', array('color' => 'red'));
$tt->put('apple',      array('color' => 'green'));
$tt->put('lemon',      array('color' => 'yellow'));

/* First query */
$query = $tt->getQuery();
$query->addCond('color', TokyoTyrant::RDBQC_STREQ, 'red')->setOrder('color', TokyoTyrant::RDBQO_STRASC);

/* Second query */
$query1 = $tt->getQuery();
$query1->addCond('color', TokyoTyrant::RDBQC_STREQ, 'yellow');

/* Get union between the queries */
var_dump($query->metaSearch(array($query1), TokyoTyrant::RDBMS_UNION));
?>

O exemplo acima irá imprimir:

array(3) {
  ["cherry"]=>
  array(1) {
    ["color"]=>
    string(3) "red"
  }
  ["strawberry"]=>
  array(1) {
    ["color"]=>
    string(3) "red"
  }
  ["lemon"]=>
  array(1) {
    ["color"]=>
    string(6) "yellow"
  }
}

Veja Também

  • TokyoTyrantQuery::search() - Searches records

TokyoTyrantQuery::key
TokyoTyrantQuery::next
TokyoTyrantQuery


Moves the iterator to next entry

TokyoTyrantQuery::metaSearch
TokyoTyrantQuery::out
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::next

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::next — Moves the iterator to next entry

Descrição

public array TokyoTyrantQuery::next ( void )

Returns the next result in the resultset. Part of the Iterator interface.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the next row and throws TokyoTyrantException on error.

Exemplos

Exemplo #1 TokyoTyrantQuery iterator example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Iterate the results */
foreach ($query as $key => $value) {
    echo "pk: $key, columns: ", count($value) ,"\n";
}
?>

O exemplo acima irá imprimir algo similar a:

pk: 1, columns: 2
pk: 4, columns: 2

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::metaSearch
TokyoTyrantQuery::out
TokyoTyrantQuery


Removes records based on query

TokyoTyrantQuery::next
TokyoTyrantQuery::rewind
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::out

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::out — Removes records based on query

Descrição

public TokyoTyrantQuery TokyoTyrantQuery::out ( void )

Removes all records that match the query. Works exactly like search but removes the records instead of returning them.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

Exemplos

Exemplo #1 TokyoTyrantQuery::out() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Remove matching records */
$query->out();
?>

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::next
TokyoTyrantQuery::rewind
TokyoTyrantQuery


Rewinds the iterator

TokyoTyrantQuery::out
TokyoTyrantQuery::search
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::rewind

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::rewind — Rewinds the iterator

Descrição

public bool TokyoTyrantQuery::rewind ( void )

Rewind the resultset and executes the query if it has not been executed. Part of the Iterator interface.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE

Exemplos

Exemplo #1 TokyoTyrantQuery iterator example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Iterate the results */
foreach ($query as $key => $value) {
    echo "pk: $key, columns: ", count($value) ,"\n";
}
?>

O exemplo acima irá imprimir algo similar a:

pk: 1, columns: 2
pk: 4, columns: 2

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::out
TokyoTyrantQuery::search
TokyoTyrantQuery


Searches records

TokyoTyrantQuery::rewind
TokyoTyrantQuery::setLimit
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::search

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::search — Searches records

Descrição

public array TokyoTyrantQuery::search ( void )

Executes a search on the table database. Returns an array of arrays containing the matching records. In the returned array the first level is the primary key of the data and the second level is the row data.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the matching rows and throws TokyoTyrantException on error

Exemplos

Exemplo #1 TokyoTyrantQuery::search() example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "not here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Dump the search results */
var_dump($query->search());
?>

O exemplo acima irá imprimir:

array(2) {
  [1]=>
  array(2) {
    ["column1"]=>
    string(9) "some data"
    ["column2"]=>
    string(14) "something here"
  }
  [4]=>
  array(2) {
    ["column45"]=>
    string(11) "random data"
    ["column2"]=>
    string(25) "something along the lines"
  }
}

Veja Também

  • TokyoTyrantQuery::out() - Removes records based on query
  • TokyoTyrantQuery::metaSearch() - Retrieve records with multiple queries

TokyoTyrantQuery::rewind
TokyoTyrantQuery::setLimit
TokyoTyrantQuery


Limit results

TokyoTyrantQuery::search
TokyoTyrantQuery::setOrder
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::setLimit

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::setLimit — Limit results

Descrição

public mixed TokyoTyrantQuery::setLimit ([ int $max [, int $skip ]] )

Set the maximum amount of records to return on a query.

Parâmetros

max

Maximum amount of records. Default: -1

skip

How many records to skip from the start. Default: -1

Valor Retornado

This method returns the current object and throws TokyoTyrantException on failure.

TokyoTyrantQuery::search
TokyoTyrantQuery::setOrder
TokyoTyrantQuery


Orders results

TokyoTyrantQuery::setLimit
TokyoTyrantQuery::valid
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::setOrder

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::setOrder — Orders results

Descrição

public mixed TokyoTyrantQuery::setOrder ( string $name , int $type )

Sets the order of a query

Parâmetros

name

The column name to apply the ordering on.

type

The type can be one of the following constants:

  • TokyoTyrant::RDBQO_STRASC - String ascending
  • TokyoTyrant::RDBQO_STRDESC - String descending
  • TokyoTyrant::RDBQO_NUMASC - Numberic ascending
  • TokyoTyrant::RDBQO_NUMDESC - String descending

Valor Retornado

This method returns the current object.

TokyoTyrantQuery::setLimit
TokyoTyrantQuery::valid
TokyoTyrantQuery


Checks the validity of current item

TokyoTyrantQuery::setOrder
Extensões Relacionadas a Sistema de Arquivo
TokyoTyrantQuery
PHP Manual

TokyoTyrantQuery::valid

(PECL tokyo_tyrant >= 0.1.0)

TokyoTyrantQuery::valid — Checks the validity of current item

Descrição

public bool TokyoTyrantQuery::valid ( void )

Checks if the current item is valid. Part of the Iterator interface

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the current item is valid and FALSE if not.

Exemplos

Exemplo #1 TokyoTyrantQuery iterator example

<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);

/* Add rows */
$tt->put(null, array("column1" => "some data", "column2" => "something here"));
$tt->put(null, array("column1" => "more data", "column2" => "best data this far"));
$tt->put(null, array("column1" => "again data", "column3" => "foobar here"));
$tt->put(null, array("column45" => "random data", "column2" => "something along the lines"));
$tt->put(null, array("column21" => "test data", "column2" => "generating.."));
$tt->put(null, array("column1" => "foobar data", "column2" => "value here"));

/* Get a new query object */
$query = $tt->getQuery();

/* Add a search condition */
$query->addCond("column2", TokyoTyrant::RDBQC_STROR, "something");

/* Iterate the results */
foreach ($query as $key => $value) {
    echo "pk: $key, columns: ", count($value) ,"\n";
}
?>

O exemplo acima irá imprimir algo similar a:

pk: 1, columns: 2
pk: 4, columns: 2

Veja Também

  • TokyoTyrantQuery::addCond() - Adds a condition to the query

TokyoTyrantQuery::setOrder
Extensões Relacionadas a Sistema de Arquivo
TokyoTyrantQuery


Extensões Relacionadas a Sistema de Arquivo

  • Direct IO
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Direct IO Funções
  • Diretórios
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções de Diretórios
  • Fileinfo — File Information
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Fileinfo Funções
  • Filesystem
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Sistema de arquivo
  • Inotify
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Inotify Funções
  • Mimetype
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
  • xattr
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da xattr
  • xdiff
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • xdiff Funções
TokyoTyrantQuery::valid
Direct IO
Referência das Funções


Direct IO

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Direct IO Funções
    • dio_close — Closes the file descriptor given by fd
    • dio_fcntl — Performs a c library fcntl on fd
    • dio_open — Opens a file (creating it if necessary) at a lower level than the C library input/ouput stream functions allow.
    • dio_read — Reads bytes from a file descriptor
    • dio_seek — Seeks to pos on fd from whence
    • dio_stat — Gets stat information about the file descriptor fd
    • dio_tcsetattr — Sets terminal attributes and baud rate for a serial port
    • dio_truncate — Truncates file descriptor fd to offset bytes
    • dio_write — Writes data to fd with optional truncation at length
Extensões Relacionadas a Sistema de Arquivo
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

PHP supports the direct io functions as described in the Posix Standard (Section 6) for performing I/O functions at a lower level than the C-Language stream I/O functions (fopen(), fread(),..). The use of the DIO functions should be considered only when direct control of a device is needed. In all other cases, the standard filesystem functions are more than adequate.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

This extension is only available on Windows Platforms as of PHP 5.0.0

Direct IO
Instalação/Configuração
Direct IO


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Direct IO


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/dio.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

One resource type is defined by this extension: a file descriptor returned by dio_open().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

F_DUPFD (integer)

F_GETFD (integer)

F_GETFL (integer)

F_GETLK (integer)

F_GETOWN (integer)

F_RDLCK (integer)

F_SETFL (integer)

F_SETLK (integer)

F_SETLKW (integer)

F_SETOWN (integer)

F_UNLCK (integer)

F_WRLCK (integer)

O_APPEND (integer)

O_ASYNC (integer)

O_CREAT (integer)

O_EXCL (integer)

O_NDELAY (integer)

O_NOCTTY (integer)

O_NONBLOCK (integer)

O_RDONLY (integer)

O_RDWR (integer)

O_SYNC (integer)

O_TRUNC (integer)

O_WRONLY (integer)

S_IRGRP (integer)

S_IROTH (integer)

S_IRUSR (integer)

S_IRWXG (integer)

S_IRWXO (integer)

S_IRWXU (integer)

S_IWGRP (integer)

S_IWOTH (integer)

S_IWUSR (integer)

S_IXGRP (integer)

S_IXOTH (integer)

S_IXUSR (integer)

Tipos Resource
Direct IO Funções
Direct IO


Direct IO Funções

Índice

  • dio_close — Closes the file descriptor given by fd
  • dio_fcntl — Performs a c library fcntl on fd
  • dio_open — Opens a file (creating it if necessary) at a lower level than the C library input/ouput stream functions allow.
  • dio_read — Reads bytes from a file descriptor
  • dio_seek — Seeks to pos on fd from whence
  • dio_stat — Gets stat information about the file descriptor fd
  • dio_tcsetattr — Sets terminal attributes and baud rate for a serial port
  • dio_truncate — Truncates file descriptor fd to offset bytes
  • dio_write — Writes data to fd with optional truncation at length
Constantes pré-definidas
dio_close
Direct IO


Closes the file descriptor given by fd

Direct IO Funções
dio_fcntl
Direct IO Funções
PHP Manual

dio_close

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_close — Closes the file descriptor given by fd

Descrição

void dio_close ( resource $fd )

The function dio_close() closes the file descriptor fd.

Parâmetros

fd

The file descriptor returned by dio_open().

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Closing an open file descriptor

<?php
$fd = dio_open('/dev/ttyS0', O_RDWR);

dio_close($fd);
?>

Veja Também

  • dio_open() - Opens a file (creating it if necessary) at a lower level than the C library input/ouput stream functions allow.

Direct IO Funções
dio_fcntl
Direct IO Funções


Performs a c library fcntl on fd

dio_close
dio_open
Direct IO Funções
PHP Manual

dio_fcntl

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_fcntl — Performs a c library fcntl on fd

Descrição

mixed dio_fcntl ( resource $fd , int $cmd [, mixed $args ] )

The dio_fcntl() function performs the operation specified by cmd on the file descriptor fd. Some commands require additional arguments args to be supplied.

Parâmetros

fd

The file descriptor returned by dio_open().

cmd

Can be one of the following operations:

  • F_SETLK - Lock is set or cleared. If the lock is held by someone else dio_fcntl() returns -1.

  • F_SETLKW - like F_SETLK, but in case the lock is held by someone else, dio_fcntl() waits until the lock is released.

  • F_GETLK - dio_fcntl() returns an associative array (as described above) if someone else prevents lock. If there is no obstruction key "type" will set to F_UNLCK.

  • F_DUPFD - finds the lowest numbered available file descriptor greater than or equal to args and returns them.

  • F_SETFL - Sets the file descriptors flags to the value specified by args, which can be O_APPEND, O_NONBLOCK or O_ASYNC. To use O_ASYNC you will need to use the PCNTL extension.

args

args is an associative array, when cmd is F_SETLK or F_SETLLW, with the following keys:

  • "start" - offset where lock begins

  • "length" - size of locked area. zero means to end of file

  • "wenth" - Where l_start is relative to: can be SEEK_SET, SEEK_END and SEEK_CUR

  • "type" - type of lock: can be F_RDLCK (read lock), F_WRLCK (write lock) or F_UNLCK (unlock)

Valor Retornado

Returns the result of the C call.

Exemplos

Exemplo #1 Setting and clearing a lock

<?php

$fd = dio_open('/dev/ttyS0', O_RDWR);

if (dio_fcntl($fd, F_SETLK, Array("type"=>F_WRLCK)) == -1) {
   // the file descriptor appears locked
   echo "The lock can not be cleared. It is held by someone else.";
} else {
   echo "Lock succesfully set/cleared";
}

dio_close($fd);
?>

Notas

Nota: esta função não é implementada na plataforma Windows

dio_close
dio_open
Direct IO Funções


Opens a file (creating it if necessary) at a lower level than the C library input/ouput stream functions allow.

dio_fcntl
dio_read
Direct IO Funções
PHP Manual

dio_open

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_open — Opens a file (creating it if necessary) at a lower level than the C library input/ouput stream functions allow.

Descrição

resource dio_open ( string $filename , int $flags [, int $mode = 0 ] )

dio_open() opens a file and returns a new file descriptor for it.

Parâmetros

filename

The pathname of the file to open.

flags

The flags parameter is a bitwise-ORed value comprising flags from the following list. This value must include one of O_RDONLY, O_WRONLY, or O_RDWR. Additionally, it may include any combination of the other flags from this list.

  • O_RDONLY - opens the file for read access.

  • O_WRONLY - opens the file for write access.

  • O_RDWR - opens the file for both reading and writing.

  • O_CREAT - creates the file, if it doesn't already exist.

  • O_EXCL - if both O_CREAT and O_EXCL are set and the file already exists, causes dio_open() to fail.

  • O_TRUNC - if the file exists and is opened for write access, the file will be truncated to zero length.

  • O_APPEND - write operations write data at the end of the file.

  • O_NONBLOCK - sets non blocking mode.

  • O_NOCTTY - prevent the OS from assigning the opened file as the process's controlling terminal when opening a TTY device file.

mode

If flags contains O_CREAT, mode will set the permissions of the file (creation permissions). Mode is required for correct operation when O_CREAT is specified in mode and is ignored otherwise.

The actual permissions assigned to the created file will be affected by the process's umask setting as per usual.

Valor Retornado

A file descriptor or FALSE on error.

Exemplos

Exemplo #1 Opening a file descriptor

<?php

$fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK);

dio_close($fd);
?>

Veja Também

  • dio_close() - Closes the file descriptor given by fd

dio_fcntl
dio_read
Direct IO Funções


Reads bytes from a file descriptor

dio_open
dio_seek
Direct IO Funções
PHP Manual

dio_read

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_read — Reads bytes from a file descriptor

Descrição

string dio_read ( resource $fd [, int $len = 1024 ] )

The function dio_read() reads and returns len bytes from file with descriptor fd.

Parâmetros

fd

The file descriptor returned by dio_open().

len

The number of bytes to read. If not specified, dio_read() reads 1K sized block.

Valor Retornado

The bytes read from fd.

Veja Também

  • dio_write() - Writes data to fd with optional truncation at length

dio_open
dio_seek
Direct IO Funções


Seeks to pos on fd from whence

dio_read
dio_stat
Direct IO Funções
PHP Manual

dio_seek

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_seek — Seeks to pos on fd from whence

Descrição

int dio_seek ( resource $fd , int $pos [, int $whence = SEEK_SET ] )

The function dio_seek() is used to change the file position of the given file descriptor.

Parâmetros

fd

The file descriptor returned by dio_open().

pos

The new position.

whence

Specifies how the position pos should be interpreted:

  • SEEK_SET (default) - specifies that pos is specified from the beginning of the file.

  • SEEK_CUR - Specifies that pos is a count of characters from the current file position. This count may be positive or negative.

  • SEEK_END - Specifies that pos is a count of characters from the end of the file. A negative count specifies a position within the current extent of the file; a positive count specifies a position past the current end. If you set the position past the current end, and actually write data, you will extend the file with zeros up to that position.

Valor Retornado

Exemplos

Exemplo #1 Positioning in a file

<?php

$fd = dio_open('/dev/ttyS0', O_RDWR);

dio_seek($fd, 10, SEEK_SET);
// position is now at 10 characters from the start of the file

dio_seek($fd, -2, SEEK_CUR);
// position is now at 8 characters from the start of the file

dio_seek($fd, -5, SEEK_END);
// position is now at 5 characters from the end of the file

dio_seek($fd, 10, SEEK_END);
// position is now at 10 characters past the end of the file.
// The 10 characters between the end of the file and the current
// position are filled with zeros.

dio_close($fd);
?>

dio_read
dio_stat
Direct IO Funções


Gets stat information about the file descriptor fd

dio_seek
dio_tcsetattr
Direct IO Funções
PHP Manual

dio_stat

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_stat — Gets stat information about the file descriptor fd

Descrição

array dio_stat ( resource $fd )

dio_stat() returns information about the given file descriptor.

Parâmetros

fd

The file descriptor returned by dio_open().

Valor Retornado

Returns an associative array with the following keys:

  • "device" - device

  • "inode" - inode

  • "mode" - mode

  • "nlink" - number of hard links

  • "uid" - user id

  • "gid" - group id

  • "device_type" - device type (if inode device)

  • "size" - total size in bytes

  • "blocksize" - blocksize

  • "blocks" - number of blocks allocated

  • "atime" - time of last access

  • "mtime" - time of last modification

  • "ctime" - time of last change

On error dio_stat() returns NULL.

dio_seek
dio_tcsetattr
Direct IO Funções


Sets terminal attributes and baud rate for a serial port

dio_stat
dio_truncate
Direct IO Funções
PHP Manual

dio_tcsetattr

(PHP 4 >= 4.3.0, PHP 5 <= 5.0.5)

dio_tcsetattr — Sets terminal attributes and baud rate for a serial port

Descrição

bool dio_tcsetattr ( resource $fd , array $options )

dio_tcsetattr() sets the terminal attributes and baud rate of the open fd.

Parâmetros

fd

The file descriptor returned by dio_open().

options

The currently available options are:

  • 'baud' - baud rate of the port - can be 38400,19200,9600,4800,2400,1800, 1200,600,300,200,150,134,110,75 or 50, default value is 9600.

  • 'bits' - data bits - can be 8,7,6 or 5. Default value is 8.

  • 'stop' - stop bits - can be 1 or 2. Default value is 1.

  • 'parity' - can be 0,1 or 2. Default value is 0.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Setting the baud rate on a serial port

<?php

$fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK);

dio_fcntl($fd, F_SETFL, O_SYNC);

dio_tcsetattr($fd, array(
  'baud' => 9600,
  'bits' => 8,
  'stop'  => 1,
  'parity' => 0
));

while (1) {

  $data = dio_read($fd, 256);

  if ($data) {
      echo $data;
  }
}

?>

Notas

Nota: esta função não é implementada na plataforma Windows

dio_stat
dio_truncate
Direct IO Funções


Truncates file descriptor fd to offset bytes

dio_tcsetattr
dio_write
Direct IO Funções
PHP Manual

dio_truncate

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_truncate — Truncates file descriptor fd to offset bytes

Descrição

bool dio_truncate ( resource $fd , int $offset )

dio_truncate() truncates a file to at most offset bytes in size.

If the file previously was larger than this size, the extra data is lost. If the file previously was shorter, it is unspecified whether the file is left unchanged or is extended. In the latter case the extended part reads as zero bytes.

Parâmetros

fd

The file descriptor returned by dio_open().

offset

The offset in bytes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: esta função não é implementada na plataforma Windows

dio_tcsetattr
dio_write
Direct IO Funções


Writes data to fd with optional truncation at length

dio_truncate
Diretórios
Direct IO Funções
PHP Manual

dio_write

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5)

dio_write — Writes data to fd with optional truncation at length

Descrição

int dio_write ( resource $fd , string $data [, int $len = 0 ] )

dio_write() writes up to len bytes from data to file fd.

Parâmetros

fd

The file descriptor returned by dio_open().

data

The written data.

len

The length of data to write in bytes. If not specified, the function writes all the data to the specified file.

Valor Retornado

Returns the number of bytes written to fd.

Veja Também

  • dio_read() - Reads bytes from a file descriptor

dio_truncate
Diretórios
Direct IO Funções


Diretórios

  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções de Diretórios
    • chdir — Muda o diretório
    • chroot — Muda o diretório raiz (root)
    • dir — classe diretório
    • closedir — Fecha o manipulador do diretório
    • getcwd — Obtém o diretório atual
    • opendir — Abre um manipulador de diretório
    • readdir — Lê os campos do manipulador do diretório
    • rewinddir — Voltar (rewind) o manipulador de diretório
    • scandir — Lista os arquivos e diretórios que estão no caminho especificado
dio_write
Instalação/Configuração
Extensões Relacionadas a Sistema de Arquivo


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Diretórios
Dependências
Diretórios


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

DIRECTORY_SEPARATOR (string)
PATH_SEPARATOR (string)

Nota: A PATH_SEPARATOR foi introduzida com PHP 4.3.0-RC2.

Tipos Resource
Funções de Diretórios
Diretórios


Funções de Diretórios

Veja Também

Para funções relacionadas como dirname(),
is_dir(), mkdir() e
rmdir(), veja a seção
Filesystem.

Índice

  • chdir — Muda o diretório
  • chroot — Muda o diretório raiz (root)
  • dir — classe diretório
  • closedir — Fecha o manipulador do diretório
  • getcwd — Obtém o diretório atual
  • opendir — Abre um manipulador de diretório
  • readdir — Lê os campos do manipulador do diretório
  • rewinddir — Voltar (rewind) o manipulador de diretório
  • scandir — Lista os arquivos e diretórios que estão no caminho especificado
Constantes pré-definidas
chdir
Diretórios


Muda o diretório

Funções de Diretórios
chroot
Funções de Diretórios
PHP Manual

chdir

(PHP 4, PHP 5)

chdir — Muda o diretório

Descrição

bool chdir ( string $directory )

Muda o diretório atual do PHP para diretorio.

Parâmetros

directory

The new current directory

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 chdir() example

<?php

// diretório atual
echo getcwd() . "\n";

chdir('public_html');

// diretório atual
echo getcwd() . "\n";

?>

O exemplo acima irá imprimir algo similar a:

/home/vincent
/home/vincent/public_html

Notas

Nota: Quando o safe-mode está ativo, o PHP verifica se o diretório no qual o script está em operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • getcwd() - Obtém o diretório atual

Funções de Diretórios
chroot
Funções de Diretórios


Muda o diretório raiz (root)

chdir
dir
Funções de Diretórios
PHP Manual

chroot

(PHP 4 >= 4.0.5, PHP 5)

chroot — Muda o diretório raiz (root)

Descrição

bool chroot ( string $directory )

Muda o diretório raiz (root) do processo atual para o diretorio.

Esta função somente está disponível se seu sistema suportá-la e se você estiver utilizando o modo CLI, CGI ou SAPI Embutida. Também, esta função requer privilégio root.

Parâmetros

directory

O novo diretório

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: esta função não é implementada na plataforma Windows

chdir
dir
Funções de Diretórios


classe diretório

chroot
closedir
Funções de Diretórios
PHP Manual

dir

(PHP 4, PHP 5)

dir — classe diretório

Descrição

Directory {
string $path ;
resource $handle ;
string read ( void )
void rewind ( void )
void close ( void )
}

Um mecanismo pseudo-orientado a objeto para ler um diretório. O parâmetro dado directory é aberto. Duas propriedades são disponíveis uma vez que o diretório foi aberto: A propriedade handle pode ser usada com outras funções de diretório como readdir(), rewinddir() e closedir(). A propriedade path é configurada para o caminho que o diretório foi aberto. Três métodos disponibilizados são: read, rewind e close.

Exemplos

Exemplo #1 Exemplo da dir()

Repare nos detalhes de como o valor retornado de dir::read() é verificado no exemplo abaixo. Nós explicitamente testamos se valor de retorno é idêntico (igual e do mesmo tipo que - veja operadores de comparação para mais detalhes) a FALSE, desde que, de outra forma, qualquer entrada de diretório que seja avaliada para FALSE fará parar o loop.

<?php
$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
   echo $entry."\n";
}
$d->close();
?>

O exemplo acima irá imprimir algo similar a:

Handle: Resource id #2
Path: /etc/php5
.
..
apache
cgi
cli

Notas

Nota:

A ordem em que os diretórios são retornadas pelo método é dependente do sistema.

chroot
closedir
Funções de Diretórios


Fecha o manipulador do diretório

dir
getcwd
Funções de Diretórios
PHP Manual

closedir

(PHP 4, PHP 5)

closedir — Fecha o manipulador do diretório

Descrição

void closedir ( resource $dir_handle )

Fecha o stream do diretório indicado por dir_handle. O stream deve ter sido previamente aberto por opendir().

Parâmetros

dir_handle

O manipulador de diretório resource aberto com opendir().

Exemplos

Exemplo #1 Exemplo da closedir()

<?php
$dir = "/etc/php5/";

// Open a known directory, read directory into variable and then close
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        $directory = readdir($dh);
        closedir($dh);
    }
}
?>

dir
getcwd
Funções de Diretórios


Obtém o diretório atual

closedir
opendir
Funções de Diretórios
PHP Manual

getcwd

(PHP 4, PHP 5)

getcwd — Obtém o diretório atual

Descrição

string getcwd ( void )

Obtém o diretório atual.

Valor Retornado

Retorna o diretório atual em sucesso, ou FALSE em falha.

Em alguns variantes Unix, getcwd() irá retornar FALSE se um dos diretórios pai não for legível ou no modo busca, até mesmo se o diretório atual for. Veja chmod() para mais informação sobre modos e permissões.

Exemplos

Exemplo #1 Exemplo da getcwd()

<?php

// current directory
echo getcwd() . "\n";

chdir('cvs');

// current directory
echo getcwd() . "\n";

?>

O exemplo acima irá imprimir algo similar a:

/home/didou
/home/didou/cvs

Veja Também

  • chdir() - Muda o diretório
  • chmod() - Modifica as permissões do arquivo

closedir
opendir
Funções de Diretórios


Abre um manipulador de diretório

getcwd
readdir
Funções de Diretórios
PHP Manual

opendir

(PHP 4, PHP 5)

opendir — Abre um manipulador de diretório

Descrição

resource opendir ( string $path [, resource $context ] )

Abre um manipulador de diretório para ser usado em chamadas subsequentes a closedir(), readdir(), e rewinddir().

Parâmetros

path

O caminho do diretório a ser aberto

context

Para descrição do parâmetro context, consulte a seção sobre streams do manual.

Valor Retornado

Retorna um manipulador de diretório resource em sucesso, ou FALSE em falha.

Se path não é um diretório válido ou se o diretório não pode ser aberto devi a restrições de permissões ou ainda por erro no sistema de arquivos, opendir() retorna FALSE e gera um erro PHP de nível E_WARNING. Você pode suprimir a exibição da mensagem de erro de opendir() acrecentando um '@' na frente do nome da função.

Histórico

Versão | Descrição
5.0.0 | path suporta ftp:// URL wrapper.
4.3.0 | path pode também ser uma URL que suporte listagem de diretório, contudo somente o file:// URL wrapper suporta isto no PHP 4

Exemplos

Exemplo #1 exemplo de opendir()

<?php
$dir = "/etc/php5/";

// Abre um diretorio conhecido, e faz a leitura de seu conteudo
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
        }
        closedir($dh);
    }
}
?>

O exemplo acima irá imprimir algo similar a:

filename: . : filetype: dir
filename: .. : filetype: dir
filename: apache : filetype: dir
filename: cgi : filetype: dir
filename: cli : filetype: dir

Veja Também

  • is_dir() - Diz se o caminho é um diretório
  • readdir() - Lê os campos do manipulador do diretório
  • Dir

getcwd
readdir
Funções de Diretórios


Lê os campos do manipulador do diretório

opendir
rewinddir
Funções de Diretórios
PHP Manual

readdir

(PHP 4, PHP 5)

readdir — Lê os campos do manipulador do diretório

Descrição

string readdir ( resource $dir_handle )

Retorna o nome de arquivo do próximo arquivo do diretório. Os nomes de arquivos são retornados na ordem informada pelo sistema de arquivos.

Parâmetros

dir_handle

O manipulador de diretório resource previamente aberto com opendir().

Valor Retornado

Retorna o nome do arquivo em sucesso, ou FALSE em falha.

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 Listando todos os arquivos de um diretório

Verifique cuidadosamente o estilo de checagem dos valores retornados por readdir() nos exemplos abaixo. Nós explicitamente testamos se o valor retornado é idêntico a (igual e do mesmo tipo que FALSE --- veja Operadores de Comparação para maiores detalhes). De outra forma, qualquer entrada de diretório que seja avaliada para FALSE irá parar o loop (por exemplo, um diretório nomeado "0").

<?php
// Note que !== não existia antes do PHP 4.0.0-RC2

if ($handle = opendir('/path/to/files')) {
    echo "Manipulador de diretório: $handle\n";
    echo "Arquivos:\n";

    /* Esta é a forma correta de varrer o diretório */
    while (false !== ($file = readdir($handle))) {
        echo "$file\n";
    }

    /* Esta é a forma INCORRETA de varrer o diretório */
    while ($file = readdir($handle)) {
        echo "$file\n";
    }

    closedir($handle);
}
?>

Exemplo #2 Listar todos os arquivos no diretório atual e retirar . e ..

<?php
if ($handle = opendir('.')) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != "..") {
            echo "$file\n";
        }
    }
    closedir($handle);
}
?>

Veja Também

  • is_dir() - Diz se o caminho é um diretório
  • glob() - Acha caminhos que combinam com um padrão

opendir
rewinddir
Funções de Diretórios


Voltar (rewind) o manipulador de diretório

readdir
scandir
Funções de Diretórios
PHP Manual

rewinddir

(PHP 4, PHP 5)

rewinddir — Voltar (rewind) o manipulador de diretório

Descrição

void rewinddir ( resource $dir_handle )

Reinicia o stream do diretório indicado por dir_handle para o início do diretório.

Parâmetros

dir_handle

O manipulador de diretório resource aberto com opendir().

readdir
scandir
Funções de Diretórios


Lista os arquivos e diretórios que estão no caminho especificado

rewinddir
Fileinfo
Funções de Diretórios
PHP Manual

scandir

(PHP 5)

scandir — Lista os arquivos e diretórios que estão no caminho especificado

Descrição

array scandir ( string $directory [, int $sorting_order [, resource $context ]] )

Retorna um array de arquivos e diretórios dentro de directory.

Parâmetros

directory

O diretório que será pesquisado.

sorting_order

Por padrão, a lista está em ordem alfabética ascendente (menor para maior). Se o parâmetro opcional sorting_order for usado (com o valor 1), então a lista será ordenada de maneira descendente.

context

Para uma descrição do parâmetro context veja a seção de streams do manual.

Valor Retornado

Retorna umarray com nomes de arquivos se tiver sucesso, ou FALSE em caso de erro. Se directory não for um diretório, então FALSE é retornado e um erro de nível E_WARNING é gerado.

Exemplos

Exemplo #1 Um exemplo simples de scandir()

<?php
$dir    = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);

print_r($files1);
print_r($files2);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Exemplo #2 Alternativas do PHP 4 para scandir()

<?php
$dir = "/tmp";
$dh  = opendir($dir);
while (false !== ($filename = readdir($dh))) {
    $files[] = $filename;
}

sort($files);

print_r($files);

rsort($files);

print_r($files);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Notas

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Veja Também

  • opendir() - Abre um manipulador de diretório
  • readdir() - Lê os campos do manipulador do diretório
  • glob() - Acha caminhos que combinam com um padrão
  • is_dir() - Diz se o caminho é um diretório
  • sort() - Ordena um array

rewinddir
Fileinfo
Funções de Diretórios


File Information

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Fileinfo Funções
    • finfo_buffer — Return information about a string buffer
    • finfo_close — Close fileinfo resource
    • finfo_file — Return information about a file
    • finfo_open — Create a new fileinfo resource
    • finfo_set_flags — Set libmagic configuration options
    • mime_content_type — Detect MIME Content-type for a file (deprecated)
scandir
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

The functions in this module try to guess the content type and encoding of a file by looking for certain magic byte sequences at specific positions within the file. While this is not a bullet proof approach the heuristics used do a very good job.

Fileinfo
Instalação/Configuração
Fileinfo


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Fileinfo


Dependências

Before PHP 5.3.0, the magic_open library is needed to build this extension.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is enabled by default as of PHP 5.3.0. Before this time, fileinfo was a PECL extension but is no longer maintained there. However, versions prior to 5.3+ may use the » discontinued PECL extension.

Windows users must include the bundled php_fileinfo.dll DLL file in php.ini to enable this extension.

The libmagic library is bundled with PHP, but includes PHP specific changes. A patch against libmagic named libmagic.patch is maintained and may be found within the PHP fileinfo extensions source.

Upgrade history of the bundled libmagic library
PHP Versão | Updated libmagic Versão | Notes
5.3.2 | 5.03 |
5.3.0 | 5.02 |

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

There is one resource used in Fileinfo extension: a magic database descriptor returned by finfo_open().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FILEINFO_NONE (integer)
No special handling.
FILEINFO_SYMLINK (integer)
Follow symlinks.
FILEINFO_MIME_TYPE (integer)
Return the mime type. Available since PHP 5.3.0.
FILEINFO_MIME_ENCODING (integer)
Return the mime encoding of the file. Available since PHP 5.3.0.
FILEINFO_MIME (integer)
Return the mime type and mime encoding as defined by RFC 2045.
FILEINFO_COMPRESS (integer)
Decompress compressed files. Disabled since PHP 5.3.0 due to thread safety issues.
FILEINFO_DEVICES (integer)
Look at the contents of blocks or character special devices.
FILEINFO_CONTINUE (integer)
Return all matches, not just the first.
FILEINFO_PRESERVE_ATIME (integer)
If possible preserve the original access time.
FILEINFO_RAW (integer)
Don't translate unprintable characters to a \ooo octal representation.
Tipos Resource
Fileinfo Funções
Fileinfo


Fileinfo Funções

Índice

  • finfo_buffer — Return information about a string buffer
  • finfo_close — Close fileinfo resource
  • finfo_file — Return information about a file
  • finfo_open — Create a new fileinfo resource
  • finfo_set_flags — Set libmagic configuration options
  • mime_content_type — Detect MIME Content-type for a file (deprecated)
Constantes pré-definidas
finfo_buffer
Fileinfo


Return information about a string buffer

Fileinfo Funções
finfo_close
Fileinfo Funções
PHP Manual

finfo_buffer

(PHP 5 >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_buffer — Return information about a string buffer

Descrição

Estilo de procedimentos

string finfo_buffer ( resource $finfo , string $string = NULL [, int $options = FILEINFO_NONE [, resource $context = NULL ]] )

Estilo orientado a objetos

string finfo::buffer ( string $string = NULL [, int $options = FILEINFO_NONE [, resource $context = NULL ]] )

This function is used to get information about binary data in a string.

Parâmetros

finfo

Fileinfo resource returned by finfo_open().

string

Content of a file to be checked.

options

One or disjunction of more Fileinfo constants.

context

Valor Retornado

Returns a textual description of the string argument, or FALSE if an error occurred.

Exemplos

Exemplo #1 A finfo_buffer() example

<?php
$finfo = new finfo(FILEINFO_MIME);
echo $finfo->buffer($_POST["script"]) . "\n";
?>

O exemplo acima irá imprimir algo similar a:

application/x-sh; charset=us-ascii

Veja Também

  • finfo_file() - Return information about a file

Fileinfo Funções
finfo_close
Fileinfo Funções


Close fileinfo resource

finfo_buffer
finfo_file
Fileinfo Funções
PHP Manual

finfo_close

(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_close — Close fileinfo resource

Descrição

Estilo de procedimentos

bool finfo_close ( resource $finfo )

Estilo orientado a objetos

finfo::__destruct ( void )

This function closes the resource opened by finfo_open().

Parâmetros

finfo

Fileinfo resource returned by finfo_open().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

finfo_buffer
finfo_file
Fileinfo Funções


Return information about a file

finfo_close
finfo_open
Fileinfo Funções
PHP Manual

finfo_file

(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_file — Return information about a file

Descrição

Estilo de procedimentos

string finfo_file ( resource $finfo , string $file_name = NULL [, int $options = FILEINFO_NONE [, resource $context = NULL ]] )

Estilo orientado a objetos

string finfo::file ( string $file_name = NULL [, int $options = FILEINFO_NONE [, resource $context = NULL ]] )

This function is used to get information about a file.

Parâmetros

finfo

Fileinfo resource returned by finfo_open().

file_name

Name of a file to be checked.

options

One or disjunction of more Fileinfo constants.

context

For a description of contexts, refer to Stream Funções.

Valor Retornado

Returns a textual description of the contents of the filename argument, or FALSE if an error occurred.

Exemplos

Exemplo #1 A finfo_file() example

<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>

O exemplo acima irá imprimir algo similar a:

text/html
image/gif
application/vnd.ms-excel

Veja Também

  • finfo_buffer() - Return information about a string buffer

finfo_close
finfo_open
Fileinfo Funções


Create a new fileinfo resource

finfo_file
finfo_set_flags
Fileinfo Funções
PHP Manual

finfo_open

finfo->__construct

(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_open -- finfo->__construct — Create a new fileinfo resource

Descrição

Estilo de procedimentos

resource finfo_open ([ int $options = FILEINFO_NONE [, string $magic_file = NULL ]] )

Estilo orientado a objetos (constructor):

finfo::__construct ([ int $options = FILEINFO_NONE [, string $magic_file = NULL ]] )

This function opens a magic database and returns its resource.

Parâmetros

options

One or disjunction of more Fileinfo constants.

magic_file

Name of a magic database file, usually something like /path/to/magic.mime. If not specified, the MAGIC environment variable is used. If this variable is not set either, /usr/share/misc/magic is used by default. A .mime and/or .mgc suffix is added if needed.

Passing NULL or an empty string will be equivalent to the default value.

Valor Retornado

Returns a magic database resource on success or FALSE on failure.

Exemplos

Exemplo #1 Object oriented style

<?php
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // return mime type ala mimetype extension

if (!$finfo) {
    echo "Opening fileinfo database failed";
    exit();
}

/* get mime-type for a specific file */
$filename = "/usr/local/something.txt";
echo $finfo->file($filename);

?>

Exemplo #2 Procedural style

<?php
$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // return mime type ala mimetype extension

if (!$finfo) {
    echo "Opening fileinfo database failed";
    exit();
}

/* get mime-type for a specific file */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);

/* close connection */
finfo_close($finfo);
?>

O exemplo acima irá imprimir:

text/plain; charset=us-ascii

Veja Também

  • finfo_close() - Close fileinfo resource

finfo_file
finfo_set_flags
Fileinfo Funções


Set libmagic configuration options

finfo_open
mime_content_type
Fileinfo Funções
PHP Manual

finfo_set_flags

(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_set_flags — Set libmagic configuration options

Descrição

Estilo de procedimentos

bool finfo_set_flags ( resource $finfo , int $options )

Estilo orientado a objetos

bool finfo::set_flags ( int $options )

This function sets various Fileinfo options. Options can be set also directly in finfo_open() or other Fileinfo functions.

Parâmetros

finfo

Fileinfo resource returned by finfo_open().

options

One or disjunction of more Fileinfo constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

finfo_open
mime_content_type
Fileinfo Funções


Detect MIME Content-type for a file (deprecated)

finfo_set_flags
Filesystem
Fileinfo Funções
PHP Manual

mime_content_type

(PHP 4 >= 4.3.0, PHP 5)

mime_content_type — Detect MIME Content-type for a file (deprecated)

Descrição

string mime_content_type ( string $filename )

Returns the MIME content type for a file as determined by using information from the magic.mime file.

Parâmetros

filename

Path to the tested file.

Valor Retornado

Returns the content type in MIME format, like text/plain or application/octet-stream.

Notas

Aviso

This function has been deprecated as the PECL extension Fileinfo provides the same functionality (and more) in a much cleaner way.

Exemplos

Exemplo #1 mime_content_type() Example

<?php
echo mime_content_type('php.gif') . "\n";
echo mime_content_type('test.php');
?>

O exemplo acima irá imprimir:

image/gif
text/plain

Veja Também

  • Fileinfo for a replacement

finfo_set_flags
Filesystem
Fileinfo Funções


Filesystem

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Sistema de arquivo
    • basename — Retorna a parte nome do arquivo do caminho/path
    • chgrp — Modifica o grupo do arquivo
    • chmod — Modifica as permissões do arquivo
    • chown — Modifica o dono do arquivo
    • clearstatcache — Limpa as informações em cache sobre arquivos
    • copy — Copia arquivo
    • delete — Veja unlink ou unset
    • dirname — Retorna o componente diretório de um caminho/path
    • disk_free_space — Retorna o espaço disponível no diretório
    • disk_total_space — Retorna o tamanho total do diretório
    • diskfreespace — Sinônimo de disk_free_space
    • fclose — Fecha um ponteiro de arquivo aberto
    • feof — Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
    • fflush — Força a liberação do buffer para um arquivo
    • fgetc — Lê um caracter do ponteiro de arquivo
    • fgetcsv — Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV
    • fgets — Lê uma linha de um ponteiro de arquivo
    • fgetss — Ler uma linha de um ponteiro de arquivo e retira as tags HTML
    • file_exists — Checa se um arquivo ou diretório existe
    • file_get_contents — Lê todo o conteúdo de um arquivo para uma string
    • file_put_contents — Escreve uma string para um arquivo
    • file — Lê todo o arquivo para um array
    • fileatime — Obtém o último horário de acesso do arquivo
    • filectime — Obtém o tempo de modificação do inode do arquivo
    • filegroup — Lê o grupo do arquivo
    • fileinode — Lê o inode do arquivo
    • filemtime — Obtém o tempo de modificação do arquivo
    • fileowner — Lê o dono (owner) do arquivo
    • fileperms — Lê as permissões do arquivo
    • filesize — Lê o tamanho do arquivo
    • filetype — Lê o tipo do arquivo
    • flock — Monitor de travamento de arquivos portátil
    • fnmatch — Compara nome de arquivo com um padrão
    • fopen — Abre um arquivo ou URL
    • fpassthru — Imprime todo os dados restantes de um ponteiro de arquivo
    • fputcsv — Formata a linha como CSV e a escreve em um ponteiro de arquivo
    • fputs — Sinônimo de fwrite
    • fread — Leitura binary-safe de arquivo
    • fscanf — Interpreta a leitura de um arquivo de acordo com um formato
    • fseek — Procura (seeks) em um ponteiro de arquivo
    • fstat — Lê informações sobre um arquivo usando um ponteiro de arquivo aberto
    • ftell — Retorna a posição de leitura/gravação do ponteiro do arquivo
    • ftruncate — Reduz um arquivo a um tamanho especificado
    • fwrite — Escrita binary-safe em arquivos
    • glob — Acha caminhos que combinam com um padrão
    • is_dir — Diz se o caminho é um diretório
    • is_executable — Diz se um arquivo é executável
    • is_file — Informa se o arquivo é um arquivo comum (não é diretório)
    • is_link — Diz se o arquivo é um link simbólico (symbolic link)
    • is_readable — Diz se o arquivo pode ser lido
    • is_uploaded_file — Diz se o arquivo foi enviado por POST HTTP
    • is_writable — Diz se o arquivo pode ser modificado
    • is_writeable — Sinônimo de is_writable
    • lchgrp — Changes group ownership of symlink
    • lchown — Changes user ownership of symlink
    • link — Criando um hard link
    • linkinfo — Ler informações sobre um link
    • lstat — Obtém informações sobre um arquivo ou link simbólico
    • mkdir — Cria um diretório
    • move_uploaded_file — Move um arquivo enviado para uma nova localização
    • parse_ini_file — Interpreta um arquivo de configuração
    • parse_ini_string — Parse a configuration string
    • pathinfo — Retorna informações sobre um caminho de arquivo
    • pclose — Fecha um processo de um ponteiro de arquivo
    • popen — Abre um processo como ponteiro de arquivo
    • readfile — Lê e exibe o conteúdo de um arquivo
    • readlink — Retornar o alvo de um link simbólico
    • realpath_cache_get — Get realpath cache entries
    • realpath_cache_size — Get realpath cache size
    • realpath — Retorna o path absoluto canonicalizado
    • rename — Renomeia um arquivo ou diretório
    • rewind — Reinicializa a posição do ponteiro de arquivos para o início
    • rmdir — Remove um diretório
    • set_file_buffer — Sinônimo de stream_set_write_buffer
    • stat — Obtem informações sobre um arquivo
    • symlink — Cria um link simbólico
    • tempnam — Cria um nome de arquivo único
    • tmpfile — Cria um arquivo temporário
    • touch — Muda o tempo de modificação do arquivo
    • umask — Modificar a umask atual
    • unlink — Apaga um arquivo
mime_content_type
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

Não são necessárias bibliotecas externas para compilar esta extensão, mas se você que que o PHP suporte LFS (Arquivos Grandes) no Linux, então você precisa ter uma versão recente da glibc e você precisa compilar o PHP com as seguintes opções do compilador: -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64.

Filesystem
Instalação/Configuração
Filesystem


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Filesystem


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do Filesystem e Streams
Nome | Padrão | Modificável | Changelog
allow_url_fopen | "1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.3.4. PHP_INI_SYSTEM no PHP < 6. Disponível desde o PHP 4.0.4.
allow_url_include | "0" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP 5. Disponível desde o PHP 5.2.0.
user_agent | NULL | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
default_socket_timeout | "60" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
from | "" | PHP_INI_ALL |
auto_detect_line_endings | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.

Breve descrição das diretivas de configuração.

allow_url_fopen boolean

Esta opção ativa o dispositivo URL fopen wrappers que permite o acesso a objetos URL como arquivos. São disponibilizados por padrão wrappers para acesso de arquivos remotos utilizando os protocolos FTP ou HTTP, e algumas estensões como a zlib podem registar wrappers adicionais.

Nota:

Esta definição pode ser definida apenas no php.ini devido a motivos de segurança.

Nota:

Esta opção foi introduzida imediatamente antes da liberação da versão 4.0.3. Até essa versão e incluindo a 4.0.3, você somente podia desabilitar este recurso na compilação, usando a opção --disable-url-fopen-wrapper.

Aviso

Nas versões Windows anterioes a PHP 4.3.0, as funções seguintes não
suportavam acesso de arquivos remotos: include(),
include_once(), require(),
require_once() e as funções imagecreatefromXXX
da extensão Funções da GD.

allow_url_include boolean

Esta função permite o uso de wrappers URL com as seguintes funções include(), include_once(), require(), require_once().

Nota:

Esta definição requer que allow_url_fopen esteja on.

user_agent string

Define o user agent que o PHP irá enviar.

default_socket_timeout integer

Timeout padrão (em segundos) para streams baseados em socket.

Nota: Esta opção de configuração foi incluida no PHP 4.3.0.

from string

Define a senha do FTP anonimo (seu endereço de e-mail).

auto_detect_line_endings boolean

Quando ativo, o PHP irá examinar os dados lidos por fgets() e file() para verificar se está sendo utilizado a convensão de fim de linha Unix, MS-DOS ou Macintosh.

Isto ativa a interoperabilidade do PHP com sistemas Macintosh, mas seu padrão é Off, porque isso causa uma pequena perda de performance na detecção da convenção de fim de linha num primeiro momento e porque as pessoas que utilizam o fim de linha como separadores de itens sob sistemas Unix podem experimentar problemas de falta de compatibilidade.

Nota: Esta opção de configuração foi introduzida no PHP 4.3.0.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

GLOB_BRACE (integer)
GLOB_ONLYDIR (integer)
GLOB_MARK (integer)
GLOB_NOSORT (integer)
GLOB_NOCHECK (integer)
GLOB_NOESCAPE (integer)
PATHINFO_DIRNAME (integer)
PATHINFO_BASENAME (integer)
PATHINFO_EXTENSION (integer)
PATHINFO_FILENAME (integer)
Desde o PHP 5.2.0.
FILE_USE_INCLUDE_PATH (integer)
Procura por filename em include_path (desde o PHP 5).
FILE_APPEND (integer)
Adiciona conteúdo ao arquivo existente.
FILE_IGNORE_NEW_LINES (integer)
Remove caracteres EOL (desde o PHP 5).
FILE_SKIP_EMPTY_LINES (integer)
Pula linhas em branco (desde o PHP 5).
FILE_BINARY (integer)
Modo binário (desde o PHP 6).
FILE_TEXT (integer)
Modo texto (desde o PHP 6).
Tipos Resource
Funções para Sistema de arquivo
Filesystem


Funções para Sistema de arquivo

Veja Também

Para funções relacionadas, veja também as seções Deritório e Execução de Programas.

Para uma lista e descrição dos vários wrappers URL que podem ser utilizados como arquivos remotos, veja em Supported Protocols and Wrappers.

Índice

  • basename — Retorna a parte nome do arquivo do caminho/path
  • chgrp — Modifica o grupo do arquivo
  • chmod — Modifica as permissões do arquivo
  • chown — Modifica o dono do arquivo
  • clearstatcache — Limpa as informações em cache sobre arquivos
  • copy — Copia arquivo
  • delete — Veja unlink ou unset
  • dirname — Retorna o componente diretório de um caminho/path
  • disk_free_space — Retorna o espaço disponível no diretório
  • disk_total_space — Retorna o tamanho total do diretório
  • diskfreespace — Sinônimo de disk_free_space
  • fclose — Fecha um ponteiro de arquivo aberto
  • feof — Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
  • fflush — Força a liberação do buffer para um arquivo
  • fgetc — Lê um caracter do ponteiro de arquivo
  • fgetcsv — Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV
  • fgets — Lê uma linha de um ponteiro de arquivo
  • fgetss — Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • file_exists — Checa se um arquivo ou diretório existe
  • file_get_contents — Lê todo o conteúdo de um arquivo para uma string
  • file_put_contents — Escreve uma string para um arquivo
  • file — Lê todo o arquivo para um array
  • fileatime — Obtém o último horário de acesso do arquivo
  • filectime — Obtém o tempo de modificação do inode do arquivo
  • filegroup — Lê o grupo do arquivo
  • fileinode — Lê o inode do arquivo
  • filemtime — Obtém o tempo de modificação do arquivo
  • fileowner — Lê o dono (owner) do arquivo
  • fileperms — Lê as permissões do arquivo
  • filesize — Lê o tamanho do arquivo
  • filetype — Lê o tipo do arquivo
  • flock — Monitor de travamento de arquivos portátil
  • fnmatch — Compara nome de arquivo com um padrão
  • fopen — Abre um arquivo ou URL
  • fpassthru — Imprime todo os dados restantes de um ponteiro de arquivo
  • fputcsv — Formata a linha como CSV e a escreve em um ponteiro de arquivo
  • fputs — Sinônimo de fwrite
  • fread — Leitura binary-safe de arquivo
  • fscanf — Interpreta a leitura de um arquivo de acordo com um formato
  • fseek — Procura (seeks) em um ponteiro de arquivo
  • fstat — Lê informações sobre um arquivo usando um ponteiro de arquivo aberto
  • ftell — Retorna a posição de leitura/gravação do ponteiro do arquivo
  • ftruncate — Reduz um arquivo a um tamanho especificado
  • fwrite — Escrita binary-safe em arquivos
  • glob — Acha caminhos que combinam com um padrão
  • is_dir — Diz se o caminho é um diretório
  • is_executable — Diz se um arquivo é executável
  • is_file — Informa se o arquivo é um arquivo comum (não é diretório)
  • is_link — Diz se o arquivo é um link simbólico (symbolic link)
  • is_readable — Diz se o arquivo pode ser lido
  • is_uploaded_file — Diz se o arquivo foi enviado por POST HTTP
  • is_writable — Diz se o arquivo pode ser modificado
  • is_writeable — Sinônimo de is_writable
  • lchgrp — Changes group ownership of symlink
  • lchown — Changes user ownership of symlink
  • link — Criando um hard link
  • linkinfo — Ler informações sobre um link
  • lstat — Obtém informações sobre um arquivo ou link simbólico
  • mkdir — Cria um diretório
  • move_uploaded_file — Move um arquivo enviado para uma nova localização
  • parse_ini_file — Interpreta um arquivo de configuração
  • parse_ini_string — Parse a configuration string
  • pathinfo — Retorna informações sobre um caminho de arquivo
  • pclose — Fecha um processo de um ponteiro de arquivo
  • popen — Abre um processo como ponteiro de arquivo
  • readfile — Lê e exibe o conteúdo de um arquivo
  • readlink — Retornar o alvo de um link simbólico
  • realpath_cache_get — Get realpath cache entries
  • realpath_cache_size — Get realpath cache size
  • realpath — Retorna o path absoluto canonicalizado
  • rename — Renomeia um arquivo ou diretório
  • rewind — Reinicializa a posição do ponteiro de arquivos para o início
  • rmdir — Remove um diretório
  • set_file_buffer — Sinônimo de stream_set_write_buffer
  • stat — Obtem informações sobre um arquivo
  • symlink — Cria um link simbólico
  • tempnam — Cria um nome de arquivo único
  • tmpfile — Cria um arquivo temporário
  • touch — Muda o tempo de modificação do arquivo
  • umask — Modificar a umask atual
  • unlink — Apaga um arquivo
Constantes pré-definidas
basename
Filesystem


Retorna a parte nome do arquivo do caminho/path

Funções para Sistema de arquivo
chgrp
Funções para Sistema de arquivo
PHP Manual

basename

(PHP 4, PHP 5)

basename — Retorna a parte nome do arquivo do caminho/path

Descrição

string basename ( string $path [, string $suffix ] )

Dado uma string contendo um caminho para um arquivo, essa função irá retornar o nome base do arquivo.

Parâmetros

path

A path.

No Windows, tanto a barra (/) quanto a barra invertida (\) são usadas como caracter de separacao do caminho. Em outros ambientes, somente a barra (/).

suffix

Se o nome do arquivo termina em suffix ele será removido.

Valor Retornado

Retorna o nome base de um dado path.

Histórico

Versão | Descrição
4.1.0 | O parâmetro suffix foi adicionado

Exemplos

Exemplo #1 Exemplo da basename()

<?php
$caminho = "/home/httpd/html/index.php";
$arquivo = basename ($caminho);        // $arquivo = "index.php"
$arquivo = basename ($caminho,".php"); // $arquivo = "index"
?>

Veja Também

  • dirname() - Retorna o componente diretório de um caminho/path
  • pathinfo() - Retorna informações sobre um caminho de arquivo

Funções para Sistema de arquivo
chgrp
Funções para Sistema de arquivo


Modifica o grupo do arquivo

basename
chmod
Funções para Sistema de arquivo
PHP Manual

chgrp

(PHP 4, PHP 5)

chgrp — Modifica o grupo do arquivo

Descrição

bool chgrp ( string $filename , mixed $group )

Tenta modificar o grupo do arquivo para o grupo.

Somente o superusuário pode mudar o grupo de um arquivo arbitrário; outros usuários somente podem mudar o grupo de um arquivo para qualquer grupo qual o usuário pertença.

Parâmetros

filename

Caminho para o arquivo.

group

O nome do grupo ou número.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • chown() - Modifica o dono do arquivo
  • chmod() - Modifica as permissões do arquivo

basename
chmod
Funções para Sistema de arquivo


Modifica as permissões do arquivo

chgrp
chown
Funções para Sistema de arquivo
PHP Manual

chmod

(PHP 4, PHP 5)

chmod — Modifica as permissões do arquivo

Descrição

bool chmod ( string $filename , int $mode )

Tenta mudar as permissões do arquivo especificado do arquivo para o dado em modo.

Parâmetros

filename

O caminho para o arquivo.

mode

Note que modo não é necessariamente um número octal, então strings (como "g+w") não funcionarão. Para garantir que a operação seja bem sucedida é necessário prefixar modo com zero (0):

<?php
chmod ("/arquivo/diretorio", 755);   // decimal; provavelmente incorreto
chmod ("/arquivo/diretorio", "u+rwx,go+rx"); // string; incorreto
chmod ("/arquivo/diretorio", 0755);  // octal; representação correta do modo
?>

O parâmetro modo consiste em três números em octal especificando as restrições de acesso para o proprietário, grupo de usuário do proprietário e finalmente qualquer outro, nessa ordem. Cada número pode ser calculado pela adição das permissões necessárias para o alvo. O número 1 significa direito de execução, 2 significa direito de escrita, 4 significa direito de leitura. Some esses números para ter os direitos desejados. Você pode ler mais sobre os modos em sistemas UNIX com 'man 1 chmod' e 'man 2 chmod'.

<?php
// Escrita e leitura para o proprietario, nada ninguem mais
chmod ("/somedir/somefile", 0600);

// Escrita e leitura para o proprietario, leitura para todos os outros
chmod ("/somedir/somefile", 0644);

// Tudo para o proprietario, leitura e execucao para os outros
chmod ("/somedir/somefile", 0755);

// Tudo para o proprietario, leitura e execucao para o grupo do prop
chmod ("/somedir/somefile", 0750);
?>

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

O usuário atual é aquela sob o qual o PHP é executado. Provavelmente não é o mesmo usuário que você normalmente usa quande acessa uma conta shell ou FTP. O modo pode ser modificado apenas pelo usuário dono do arquivo na maioria dos sistemas.

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota:

Quando safe mode esta ativado, o PHP confere se os arquivos e diretórios os quais você vai operar tem o mesmo UID (proprietário) do que o script que esta sendo executado. Em adição, você não pode definir SUID, SGID e sticky bits.

Veja Também

  • chown() - Modifica o dono do arquivo
  • chgrp() - Modifica o grupo do arquivo

chgrp
chown
Funções para Sistema de arquivo


Modifica o dono do arquivo

chmod
clearstatcache
Funções para Sistema de arquivo
PHP Manual

chown

(PHP 4, PHP 5)

chown — Modifica o dono do arquivo

Descrição

bool chown ( string $arquivo , mixed $usuario )

Tenta modificar o dono do arquivo para o usuario. Somente o superusuário pode modificar o dono de um arquivo.

Parâmetros

filename

Caminho para o arquivo.

user

O nome do usuário ou número.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • chmod() - Modifica as permissões do arquivo

chmod
clearstatcache
Funções para Sistema de arquivo


Limpa as informações em cache sobre arquivos

chown
copy
Funções para Sistema de arquivo
PHP Manual

clearstatcache

(PHP 4, PHP 5)

clearstatcache — Limpa as informações em cache sobre arquivos

Descrição

void clearstatcache ( void )

Quando você chama stat(), lstat() ou qualquer uma das funções afetadas (listadas abaixo), o PHP mantém em cache as informações que essas funções retornam para melhoria de performance. Entretanto, em certos casos você pode precisar limpar as informações cacheadas. Por exemplo, se um mesmo arquivo é verificado várias vezes em um único script, e esse arquivo corre o risco de ser apagado ou modificado durante a operação do script, você precisa limpar os dados do cache. Nesses casos, você pode utilizar a função clearstatcache() para limpar todas as informações que o PHP mantém sobre um arquivo.

Você deve notar também que o PHP não guarda informação de cache sobre arquivos que não existem. Assim, se você chamar file_exists() em um arquivo que não existe, ele irá retornar FALSE até que você crie o arquivo. Se você criar o arquivo, ele irá retornar true mesmo que você exclua o arquivo. Entretanto, unlink() limpa o cache automaticamente.

Nota:

Esta função guarda infomações sobre arquivos específicos, de forma que você somente precisa chamar clearstatcache() se você estiver realizando várias operações sobre o mesmo arquivo e necessita que a informação sobre esse arquivo em particular não seja cacheada.

As funções afetadas são stat(),
lstat(),
file_exists(),
is_writable(),
is_readable(),
is_executable(),
is_file(),
is_dir(),
is_link(),
filectime(),
fileatime(),
filemtime(),
fileinode(),
filegroup(),
fileowner(),
filesize(),
filetype(), e
fileperms().

Valor Retornado

Não há valor retornado.

chown
copy
Funções para Sistema de arquivo


Copia arquivo

clearstatcache
delete
Funções para Sistema de arquivo
PHP Manual

copy

(PHP 4, PHP 5)

copy — Copia arquivo

Descrição

bool copy ( string $source , string $dest [, resource $context ] )

Faz uma cópia do arquivo source para dest.

Se você quiser mover um arquivo, utilize a função rename().

Parâmetros

source

Caminho para o arquivo de origem.

dest

O caminho de destino. Se o dest for uma URL, a cópia pode falhar se o wrapper não suportar a sobrescrita de arquivos existentes.

Aviso

Se o arquivo de destino já existir, ele será sobrescrito.

context

Um válido resource de contexto criado com stream_context_create().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.3.0 | Adicionado suporte à contexto.
4.3.0 | Ambos source e dest podem ser URLs se "fopen wrappers" tenham sido habilitados. Veja fopen() para mais detalhes.

Exemplos

Exemplo #1 exemplo do copy()

<?php
$file = 'example.txt';
$newfile = 'example.txt.bak';

if (!copy($file, $newfile)) {
    echo "falha ao copiar $file...\n";
}
?>

Veja Também

  • move_uploaded_file() - Move um arquivo enviado para uma nova localização
  • rename() - Renomeia um arquivo ou diretório
  • A seção do manual sobre Gerenciar o upload de arquivos

clearstatcache
delete
Funções para Sistema de arquivo


Veja unlink ou unset

copy
dirname
Funções para Sistema de arquivo
PHP Manual

delete

(None)

delete — Veja unlink() ou unset()

Descrição

void delete ( void )

Esta é uma seção falsa do manual, criada para satisfazer as pessoas que estão procurando por unlink() ou unset() no lugar errado.

Valor Retornado

Não há valor retornado.

Veja Também

  • unlink() - Apaga um arquivo para deletar arquivos
  • unset() - Destrói a variável especificada para deletar variáveis

copy
dirname
Funções para Sistema de arquivo


Retorna o componente diretório de um caminho/path

delete
disk_free_space
Funções para Sistema de arquivo
PHP Manual

dirname

(PHP 4, PHP 5)

dirname — Retorna o componente diretório de um caminho/path

Descrição

string dirname ( string $path )

Dada uma string contendo um caminho para um arquivo, esta função irá retornar o nome do diretório.

Parâmetros

path

Um caminho.

No Windows, tanto barra (/) quanto a barra invertida (\) são usadas como caracter separador no path. Em outros ambientes é utilizado a barra (/).

Valor Retornado

Retorna o nome do diretório. Se não houver nenhuma barra no path, um ponto ('.') é retornado, indicando o diretório atual. Do contrário, a string retornada é o path com qualquer /componente adjacente removido.

Histórico

Versão | Descrição
5.0.0 | dirname() passou a ser segura para binários
4.0.3 | dirname() foi corrigida para estar em conformidade com a POSIX.

Exemplos

Exemplo #1 exemplo do dirname()

<?php
$path = "/etc/passwd";
$file = dirname ($path); // $file = "/etc"
?>

Notas

Nota:

A partir do PHP 4.0.3, você receberá uma barra ou um ponto da dirname() em situações onde a funcionalidade anterior devolveria uma string vazia.

Confira o exemplo da mudança a seguir:

<?php

//antes do PHP 4.3.0
dirname('c:/'); // retornava '.'

//a partir do PHP 4.3.0
dirname('c:/'); // retorna 'c:'
dirname('c:/Temp/x'); // retorna 'c:/Temp'
dirname('/x'); // retorna '\'

?>

Veja Também

  • basename() - Retorna a parte nome do arquivo do caminho/path
  • pathinfo() - Retorna informações sobre um caminho de arquivo
  • realpath() - Retorna o path absoluto canonicalizado

delete
disk_free_space
Funções para Sistema de arquivo


Retorna o espaço disponível no diretório

dirname
disk_total_space
Funções para Sistema de arquivo
PHP Manual

disk_free_space

(PHP 4 >= 4.1.0, PHP 5)

disk_free_space — Retorna o espaço disponível no diretório

Descrição

float disk_free_space ( string $directory )

Dado uma string contendo um diretório, esta função retornará o numero de bytes disponíveis no sistema de arquivos ou partição de disco.

Parâmetros

directory

Um diretório do sistema de arquivo ou partição de disco.

Nota:

Dado um nome de arquivo ao invés de um diretório, o comportamento da função não é especificado a pode diferir entre sistemas operacionais e versões do PHP.

Valor Retornado

Retorna o número de bytes disponíveis como um float.

Exemplos

Exemplo #1 Exemplo da disk_free_space()

<?php
// $df contém o número de bytes disponível em "/"
$df = disk_free_space("/");
?>

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Veja Também

  • disk_total_space() - Retorna o tamanho total do diretório

dirname
disk_total_space
Funções para Sistema de arquivo


Retorna o tamanho total do diretório

disk_free_space
diskfreespace
Funções para Sistema de arquivo
PHP Manual

disk_total_space

(PHP 4 >= 4.1.0, PHP 5)

disk_total_space — Retorna o tamanho total do diretório

Descrição

float disk_total_space ( string $directory )

Dado uma string contendo um diretório, esta função retornará o numero total de bytes do sistema de arquivos ou a partição de disco.

Parâmetros

directory

Um diretório do sistema de arquivo ou partição de disco.

Valor Retornado

Retorna o número total de bytes como um float.

Exemplos

Exemplo #1 Exemplo da disk_total_space()

<?php
// $df contém o numero total de bytes disponíveis em "/"
$df = disk_total_space("/");

// On Windows:
disk_total_space("C:");
disk_total_space("D:");
?>

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Veja Também

  • disk_free_space() - Retorna o espaço disponível no diretório

disk_free_space
diskfreespace
Funções para Sistema de arquivo


Sinônimo de disk_free_space

disk_total_space
fclose
Funções para Sistema de arquivo
PHP Manual

diskfreespace

(PHP 4, PHP 5)

diskfreespace — Sinônimo de disk_free_space()

Descrição

Esta função é um apelido para: disk_free_space().

disk_total_space
fclose
Funções para Sistema de arquivo


Fecha um ponteiro de arquivo aberto

diskfreespace
feof
Funções para Sistema de arquivo
PHP Manual

fclose

(PHP 4, PHP 5)

fclose — Fecha um ponteiro de arquivo aberto

Descrição

bool fclose ( resource $handle )

O arquivo apontado por handle é fechado.

Parâmetros

handle

O ponteiro para o arquivo tem que ser válido e tem que apontar para um arquivo aberto por fopen() ou fsockopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da fclose()

<?php

  $handle = fopen('qualquerarquivo.txt', 'r');

  fclose($handle);

?>

Veja Também

  • fopen() - Abre um arquivo ou URL
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix

diskfreespace
feof
Funções para Sistema de arquivo


Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo

fclose
fflush
Funções para Sistema de arquivo
PHP Manual

feof

(PHP 4, PHP 5)

feof — Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo

Descrição

bool feof ( resource $handle )

Testa pelo fim-do-arquivo em um 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 TRUE se o ponteiro estiver no fim do arquivo (eof) ou um erro ocorrer (incluindo um limite de tempo de socket). Caso contrário retorna FALSE.

Notas

Aviso

Se uma conexão aberta por fsockopen() não foi fechada pelo servidor, feof() irá esperar até que seja atingido o limite de tempo para retornar TRUE. O limite de tempo padrão é 60 segundos. Você pode usar stream_set_timeout() para mudar este valor.

Aviso

Se o ponteiro de arquivo passado não for valido você pode ter um loop infinito, porque EOF irá falhar em retornar TRUE.

Exemplo #1 Exemplo de feof() com um ponteiro de arquivo inválido

<?php
// se o arquivo não pode ser lido ou nao existe a função fopen retorna FALSE
$file = @fopen("no_such_file", "r");

// FALSE a partir do fopen irá causar um warning(aviso) e resultar em um loop infinito aqui
while (!feof($file)) {
}

fclose($file);
?>

fclose
fflush
Funções para Sistema de arquivo


Força a liberação do buffer para um arquivo

feof
fgetc
Funções para Sistema de arquivo
PHP Manual

fflush

(PHP 4 >= 4.0.1, PHP 5)

fflush — Força a liberação do buffer para um arquivo

Descrição

bool fflush ( resource $handle )

Esta função força a escrita de toda saída cacheada no buffer do arquivo apontado pelo recurso handle.

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 TRUE em caso de sucesso ou FALSE em falhas.

feof
fgetc
Funções para Sistema de arquivo


Lê um caracter do ponteiro de arquivo

fflush
fgetcsv
Funções para Sistema de arquivo
PHP Manual

fgetc

(PHP 4, PHP 5)

fgetc — Lê 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

fflush
fgetcsv
Funções para Sistema de arquivo


Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV

fgetc
fgets
Funções para Sistema de arquivo
PHP Manual

fgetcsv

(PHP 4, PHP 5)

fgetcsv — Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV

Descrição

array fgetcsv ( resource $handle [, int $length [, string $delimiter [, string $enclosure [, string $escape ]]]] )

Similar à função fgets(), exceto que a fgetcsv() interpreta a linha em busca de campos no formato CSV e retorna um array contendo os campos lidos.

Parâmetros

handle

Um ponteiro de arquivo válido para um arquivo aberto com sucesso por fopen(), popen() ou fsockopen().

length

Deve ser maior do que a maior linha (em caracteres) a ser encontrada no arquivo CSV (permitindo caracteres de fim-de-linha). Se tornou opcional no PHP 5. Omitir este parâmetro (ou defini-lo como 0 no PHP 5.0.4 e posterior) o tamanho da linha não é limitado, o que é levemente mais lento.

delimiter

Define o delimitador de campo (somente um caractere). O padrão é uma vírgula.

enclosure

Define o caractere que cerca um campo (somente um caractere). O padrão é aspas duplas.

escape

Define o caractere de escape (somente um caractere). O padrão é barra invertida (\)

Valor Retornado

Retorna um array numérico contendo os campos lidos.

Nota:

Uma linha em branco em um arquivo CSV será retornada como um array contendo um único campo nulo (null), e não será tratada como um erro.

Nota: Se PHP não está apropriadamente reconhecendo o final de linha quando lendo arquivos ou criando por um computador Macintosh, habilitando a opção auto_detect_line_endings em tempo de execução pode ajudar a resolver o problema.

fgetcsv() returna FALSE em caso de erro, inclusive no final do arquivo.

Histórico

Versão | Descrição
5.3.0 | O parâmetro escape foi adicionado
4.3.5 | fgetcsv() passou a ser segura para binários
4.3.0 | O parâmetro enclosure foi adicionado

Exemplos

Exemplo #1 Lê e imprime todo o conteúdo de um arquivo CSV

<?php
$row = 1;
$handle = fopen ("teste.csv","r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $num = count ($data);
    echo "<p> $num campos na linha $row: <br /></p>\n";
    $row++;
    for ($c=0; $c < $num; $c++) {
        echo $data[$c] . "<br />\n";
    }
}
fclose ($handle);
?>

Notas

Nota:

A definição de localidade é levada em conta por esta função. Se LANG é por exemplo en_US.UTF-8, arquivos em codificação de um byte são lidos de maneira errada por esta função.

Veja Também

  • str_getcsv() - Analisa uma string CSV e retorna os dados em um array
  • explode() - Divide uma string em strings
  • file() - Lê todo o arquivo para um array
  • pack() - Pack data into binary string
  • fputcsv() - Formata a linha como CSV e a escreve em um ponteiro de arquivo

fgetc
fgets
Funções para Sistema de arquivo


Lê uma linha de um ponteiro de arquivo

fgetcsv
fgetss
Funções para Sistema de arquivo
PHP Manual

fgets

(PHP 4, PHP 5)

fgets — Lê uma linha de um ponteiro de arquivo

Descrição

string fgets ( resource $handle [, int $length ] )

Retorna uma linha do ponteiro do 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()).

length

A leitura termina quando length - 1 bytes tenham sido lidos, em uma quebra de linha (que é incluída no retorno), ou no final do arquivo (EOF), o que acontecer primeiro. Se nenhum comprimento for especificado, a leitura do stream continuará até chegar ao final da linha.

Nota:

Até o PHP 4.3.0, era assumido 1024 como o comprimento da linha, quando omitido. Se a maioria das linhas no arquivo for maior que 8KB, é mais eficiente para seu script especificar o comprimento máximo de linha.

Valor Retornado

Retorna uma string de até length - 1 bytes lida do arquivo apontado por handle.

Se um erro ocorrer, retorna FALSE.

Histórico

Versão | Descrição
4.3.0 | fgets() passou a ser segura para binários
4.2.0 | O parâmetro length tornou-se opcional

Exemplos

Exemplo #1 Lendo um arquivo linha por linha

<?php
$handle = @fopen("/tmp/arquivodeentrada.txt", "r");
if ($handle) {
    while (!feof($handle)) {
        $buffer = fgets($handle, 4096);
        echo $buffer;
    }
    fclose($handle);
}
?>

Notas

Nota: Se PHP não está apropriadamente reconhecendo o final de linha quando lendo arquivos ou criando por um computador Macintosh, habilitando a opção auto_detect_line_endings em tempo de execução pode ajudar a resolver o problema.

Nota:

Pessoas acostumadas à semântica do fgets em 'C' devem notar a diferença em como o fim do arquivo (EOF) é retornado.

Veja Também

  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fread() - Leitura binary-safe de arquivo
  • fgetc() - Lê um caracter do ponteiro de arquivo
  • stream_get_line() - Gets line from stream resource up to a given delimiter
  • 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
  • stream_set_timeout() - Set timeout period on a stream

fgetcsv
fgetss
Funções para Sistema de arquivo


Ler uma linha de um ponteiro de arquivo e retira as tags HTML

fgets
file_exists
Funções para Sistema de arquivo
PHP Manual

fgetss

(PHP 4, PHP 5)

fgetss — Ler uma linha de um ponteiro de arquivo e retira as tags HTML

Descrição

string fgetss ( resource $handle [, int $length [, string $allowable_tags ]] )

Idêntico a fgets(), exceto que fgetss() tenta retirar qualquer tag HTML ou PHP do texto que ele lê.

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()).

length

Tamanho da informação a ser recebida.

allowable_tags

Você pode usar o terceiro parâmetro opcional para especificar as tags que não devem ser removidas.

Valor Retornado

Retorna uma stirng de até length - 1 bytes lidos do ponteiro do arquivo por handle, com todo HTML e código PHP removidos.

Se um erro ocorrer, retorna FALSE.

Histórico

Versão | Descrição
5.0.0 | O parâmetro length é opcional.
3.0.13 e 4.0.0 | O parâmetro allowable_tags foi adicionado.

Notas

Nota: Se PHP não está apropriadamente reconhecendo o final de linha quando lendo arquivos ou criando por um computador Macintosh, habilitando a opção auto_detect_line_endings em tempo de execução pode ajudar a resolver o problema.

Veja Também

  • fgets() - Lê uma linha de um ponteiro 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
  • strip_tags() - Retira as tags HTML e PHP de uma string

fgets
file_exists
Funções para Sistema de arquivo


Checa se um arquivo ou diretório existe

fgetss
file_get_contents
Funções para Sistema de arquivo
PHP Manual

file_exists

(PHP 4, PHP 5)

file_exists — Checa se um arquivo ou diretório existe

Descrição

bool file_exists ( string $filename )

Verifica se um arquivo ou diretório existe.

Parâmetros

filename

Caminho para o arquivo ou diretório.

No Windows, use //computername/share/filename ou \\\\computername\share\filename para checar arquivos em compartilhamentos de rede.

Valor Retornado

Retorna TRUE se o arquivo ou diretório especificado por filename existe; FALSE caso contrário.

Nota:

Esta função retornará FALSE para links simbólicos apontando para arquivos inexistentes.

Aviso

Esta função retorna FALSE para arquivos inacessíveis devido à restrições do safe mode. Contudo, estes arquivos ainda podem ser incluídos se eles estão localizado no safe_mode_include_dir.

Nota:

A verificação é feita usando o real UID/GID ao invés do efetivo.

Exemplos

Exemplo #1 Testando se um arquivo existe

<?php
$filename = '/caminho/para/qualquer.txt';

if (file_exists($filename)) {
    echo "O arquivo $filename existe";
} else {
    echo "O arquivo $filename não existe";
}
?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_readable() - Diz se o arquivo pode ser lido
  • is_writable() - Diz se o arquivo pode ser modificado
  • is_file() - Informa se o arquivo é um arquivo comum (não é diretório)
  • file() - Lê todo o arquivo para um array

fgetss
file_get_contents
Funções para Sistema de arquivo


Lê todo o conteúdo de um arquivo para uma string

file_exists
file_put_contents
Funções para Sistema de arquivo
PHP Manual

file_get_contents

(PHP 4 >= 4.3.0, PHP 5)

file_get_contents — Lê todo o conteúdo de um arquivo para uma string

Descrição

string file_get_contents ( string $filename [, int $flags [, resource $context [, int $offset [, int $maxlen ]]]] )

Esta função é semelhante à file(), exceto que file_get_contents() retorna o arquivo em uma string, começando a partir de offset até maxlen bytes. Em caso de falha, file_get_contents() retornará FALSE.

file_get_contents() é o método preferível para ler o conteúdo de um arquivo em uma string. Ela usa técnicas de mapeamento de memória suportadas pelo seu SO para melhorar a performance.

Nota:

Se você estiver abrindo uma URI com caracteres especiais, como espaços, você precisa codificar a URI com urlencode().

Parâmetros

filename

Nome do arquivo para ler.

flags
Aviso

Para todas as versões anteriores ao PHP 6, este parâmetro é chamado use_include_path e é um bool. O parâmetro flags está disponível somente a partir do PHP 6. Se você estiver usando uma versão anterior e quiser buscar o arquivo filename no include_path, este parâmetro deve ser TRUE. A partir do PHP 6, você deve usar a flag FILE_USE_INCLUDE_PATH.

O valor de flags pode ser qualquer combinação das seguintes flags (com algumas restrições), unidas com o operador binário OR (|).

Flags disponíveis
Flag | Descrição
FILE_USE_INCLUDE_PATH | Procura o arquivo filename nos diretórios de include. Veja include_path para mais informações.
FILE_TEXT | Se a semântica unicode estiver habilitada, o encoding padrão dos dados lidos é UTF-8. Você pode especificar um encoding diferente criando um contexto personalizado ou alterando o encoding padrão utilizando stream_default_encoding(). Esta flag não pode ser usada com FILE_BINARY.
FILE_BINARY | Com esta flag, o arquivo é lido em modo binário. Esta é a opção padrão e não pode ser usada com FILE_TEXT.

context

Um recurso de contexto válido, criado com stream_context_create(). Se você não precisa usar um contexto personalizado, você pode ignorar este parâmetro passando NULL.

offset

O ponto onde a leitura deve começar.

maxlen

Comprimento máximo dos dados lidos.

Valor Retornado

A função retorna os dados lidos ou FALSE em caso de falha.

Histórico

Versão | Descrição
5.0.0 | Adicionado suporte a contexto.
5.1.0 | Adicionados os parâmetros offset e maxlen.
6.0.0 | O parâmetro use_include_path foi substituído pelo parâmetro flags.

Notas

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

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Aviso

Quando usando SSL, o Microsoft IIS irá violar o protocolo fechando a conexão sem enviar uma notificação close_notify. O PHP acusará isso como sendo "SSL: Fatal Protocol Error" quando tentar ler os dados. Para prevenir isso, o valor de error_reporting deve ser reduzido para um nível que não inclui avisos. para o nível que não emita warnings. O PHP 4.3.7 e seguintes conseguem detectar servidores IIS defeituosos quando você abre um stream utilizando o wrapper https:// e suprimirá os avisos. Se você está usando fsockopen() para criar um socket ssl://, a responsabilidade de detectar e suprimir esse aviso passa para você.

Veja Também

  • file() - Lê todo o arquivo para um array
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fread() - Leitura binary-safe de arquivo
  • readfile() - Lê e exibe o conteúdo de um arquivo
  • file_put_contents() - Escreve uma string para um arquivo
  • stream_get_contents() - Reads remainder of a stream into a string
  • stream_context_create() - Create a streams context

file_exists
file_put_contents
Funções para Sistema de arquivo


Escreve uma string para um arquivo

file_get_contents
file
Funções para Sistema de arquivo
PHP Manual

file_put_contents

(PHP 5)

file_put_contents — Escreve uma string para um arquivo

Descrição

int file_put_contents ( string $filename , mixed $data [, int $flags [, resource $context ]] )

Esta função é idêntica à chamar fopen(), fwrite() e fclose() sucessivamente para escrever dados em um arquivo.

Se filename não existir, o arquivo é criado. Do contrário, o arquivo existente é sobrescrito, a não ser que a flag FILE_APPEND seja definida.

Parâmetros

filename

O caminho para o arquivo onde escrever os dados.

data

Os dados a serem escritos. Pode ser uma string, um array ou um recurso stream (explicado abaixo).

Se data for um recurso stream, o buffer restante desse stream será copiado para o arquivo especificado, semelhante à utilização da stream_copy_to_stream().

Você também pode especificar o parâmetro data como um array unidimensional. Isso é equivalente a file_put_contents($filename, implode('', $array)).

flags

O valor de flags pode ser qualquer combinação das seguintes flags (com algumas restrições), unidas com o operador binário OR (|).

Flags disponíveis
Flag | Descrição
FILE_USE_INCLUDE_PATH | Procura o arquivo filename nos diretórios de include. Veja include_path para mais informações.
FILE_APPEND | Se o arquivo filename já existir, acrescenta os dados ao arquivo ao invés de sobrescrevê-lo.
LOCK_EX | Adquire um bloqueio exclusivo enquanto estiver escrevendo.
FILE_TEXT | Os dados de data são escritos em modo texto. Se a semântica unicode estiver habilitada, o encoding padrão é UTF-8. Você pode especificar um encoding diferente criando um contexto personalizado ou alterando o encoding padrão utilizando stream_default_encoding(). Esta flag não pode ser usada com FILE_BINARY e está disponível apenas a partir do PHP 6.
FILE_BINARY | Os dados de data serão escritos em modo binário. Esta é a opção padrão e não pode ser utilizada com FILE_TEXT. Esta flag está disponível apenas a partir do PHP 6.

context

Um recurso de contexto válido criado com stream_context_create().

Valor Retornado

A função retorna a quantidade de bytes que foi escrita no arquivo ou FALSE em caso de falha.

Histórico

Versão | Descrição
5.0.0 | Adicionado suporte a contexto
5.1.0 | Adicionado suporte a LOCK_EX e a possibilidade de passar um recurso de stream para o parâmetro data
6.0.0 | Adicionado suporte às flags FILE_TEXT e FILE_BINARY

Notas

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

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Veja Também

  • fopen() - Abre um arquivo ou URL
  • fwrite() - Escrita binary-safe em arquivos
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string
  • stream_context_create() - Create a streams context

file_get_contents
file
Funções para Sistema de arquivo


Lê todo o arquivo para um array

file_put_contents
fileatime
Funções para Sistema de arquivo
PHP Manual

file

(PHP 4, PHP 5)

file — Lê todo o arquivo para um array

Descrição

array file ( string $filename [, int $flags [, resource $context ]] )

Carrega todo um arquivo em um array.

Nota:

Você pode utilizar file_get_contents() para ler o conteúdo de um arquivo como string.

Parâmetros

filename

Caminho até o arquivo

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

flags

O parâmetro opcional flags pode ser uma ou mais das seguintes constantes:

FILE_USE_INCLUDE_PATH
Procurar pelo arquivo no include_path.
FILE_IGNORE_NEW_LINES
Não acrescentar a quebra de linha no final de cada elemento do array
FILE_SKIP_EMPTY_LINES
Ignorar linhas vazias
FILE_TEXT
O arquivo é retornado na codificação UTF-8. Você pode especificar uma codificação diferente criando um contexto personalizado. Esta constante não pode ser utilizada com FILE_BINARY. Esta flag está disponível apenas a partir do PHP 6.
FILE_BINARY
O conteúdo é lido como binário. Esta é a opção padrão e não pode ser utilizada com FILE_TEXT. Esta flag está disponível apenas a partir do PHP 6.

context

Um recurso de contexto criado com a função stream_context_create().

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna o arquivo em um array. Cada elemento do array corresponde a uma linha no arquivo, ainda com a quebra de linha. Em caso de falha, file() retorna FALSE

Nota:

Cada linha no array incluirá a quebra de linha, a não ser que FILE_IGNORE_NEW_LINES seja usado, então você ainda deve usar rtrim() se não desejar ter as quebras de linha presentes.

Nota: Se PHP não está apropriadamente reconhecendo o final de linha quando lendo arquivos ou criando por um computador Macintosh, habilitando a opção auto_detect_line_endings em tempo de execução pode ajudar a resolver o problema.

Histórico

Versão | Descrição
6.0.0 | Adicionado suporte às flags FILE_TEXT e FILE_BINARY.
5.0.0 | O parâmetro context foi adicionado
5.0.0 | Até o PHP 5.0.0, o parâmetro flags suportava apenas include_path e era habilitado com 1
4.3.0 | file() tornou-se segura para binários

Exemplos

Exemplo #1 Exemplo de file()

<?php
// Lê um arquivo em um array.  Nesse exemplo nós obteremos o código fonte de
// uma URL via HTTP
$lines = file ('http://www.example.com/');

// Percorre o array, mostrando o fonte HTML com numeração de linhas.
foreach ($lines as $line_num => $line) {
    echo "Linha #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}

// Outro exemplo, onde obtemos a página web inteira como uma string. Veja também file_get_contents().
$html = implode ('', file ('http://www.example.com/'));

// Usando o parâmetro de flags opcionais disponíveis desde o PHP 5
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
?>

Notas

Aviso

Quando usando SSL, o Microsoft IIS irá violar o protocolo fechando a conexão sem enviar uma notificação close_notify. O PHP acusará isso como sendo "SSL: Fatal Protocol Error" quando tentar ler os dados. Para prevenir isso, o valor de error_reporting deve ser reduzido para um nível que não inclui avisos. para o nível que não emita warnings. O PHP 4.3.7 e seguintes conseguem detectar servidores IIS defeituosos quando você abre um stream utilizando o wrapper https:// e suprimirá os avisos. Se você está usando fsockopen() para criar um socket ssl://, a responsabilidade de detectar e suprimir esse aviso passa para você.

Veja Também

  • readfile() - Lê e exibe o conteúdo de um arquivo
  • fopen() - Abre um arquivo ou URL
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • popen() - Abre um processo como ponteiro de arquivo
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string
  • include() - include
  • stream_context_create() - Create a streams context

file_put_contents
fileatime
Funções para Sistema de arquivo


Obtém o último horário de acesso do arquivo

file
filectime
Funções para Sistema de arquivo
PHP Manual

fileatime

(PHP 4, PHP 5)

fileatime — Obtém o último horário de acesso do arquivo

Descrição

int fileatime ( string $nomedoarquivo )

Obtém o último horário de acesso de um dado arquivo.

Parâmetros

filename

Path to the file.

Valor Retornado

Returns the time the file was last accessed, or FALSE in case of an error. The time is returned as a Unix timestamp.

Exemplos

Exemplo #1 Exemplo de fileatime()

<?php

// Exibe algo como: arquivo.txt teve o ultimo acesso em: December 29 2002 22:16:23.

$filename = 'arquivo.txt';
if (file_exists($filename)) {
    echo "$filename teve o ultimo acesso em: " . date ("F d Y H:i:s.", fileatime($filename));
}

?>

Notas

Nota:

O atime de um arquivo é modificado sempre que blocos de dados de um arquivo são lidos. Isto pode ser performance custosa quando uma aplicação regularmente acessa um grande número de arquivos ou diretórios.

Alguns sistemas de arquivos Unix podem ser montados com atualização de atime desabilitada para aumentar a peformance de cada aplicação; USENET news spools é um exemplo comum. Nestes sistemas de arquivos esta função é inútil.

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • filemtime() - Obtém o tempo de modificação do arquivo
  • fileinode() - Lê o inode do arquivo
  • date() - Formata a data e a hora local

file
filectime
Funções para Sistema de arquivo


Obtém o tempo de modificação do inode do arquivo

fileatime
filegroup
Funções para Sistema de arquivo
PHP Manual

filectime

(PHP 4, PHP 5)

filectime — Obtém o tempo de modificação do inode do arquivo

Descrição

int filectime ( string $nomedoarquivo )

Obtém o tempo de modificação do inode do arquivo.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna o tempo que o arquivo foi modificado, ou FALSE no caso de um erro. O tempo é retornado como um Unix timestamp.

Exemplos

Exemplo #1 Exemplo da filectime()

<?php

// Exibe algo como: arquivo.txt foi modificado em: December 29 2002 22:16:23.

$filename = 'arquivo.txt';
if (file_exists($filename)) {
    echo "$filename foi modificado em: " . date ("F d Y H:i:s.", filectime($filename));
}

?>

Notas

Nota:

Nota: Em muitos sistemas de arquivos Unix, um arquivo é considerado modificado quando seus dados de inode é modificado; isto é, quando as permissões, proprietário, grupo ou outras metadata do inode é atualizada. Veja também filemtime() (que é o que você quer usar quando você quer criar rodapé "Last Modified" em páginas web) e fileatime().

Nota:

Note também que em alguns textos de Unix o ctime de um arquivo é referenciado como sendo o tempo de criação do arquivo. Isto é errado. Não há tempo de criação para arquivos Unix em muitos sistemas de arquivos Unix.

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • filemtime() - Obtém o tempo de modificação do arquivo

fileatime
filegroup
Funções para Sistema de arquivo


Lê o grupo do arquivo

filectime
fileinode
Funções para Sistema de arquivo
PHP Manual

filegroup

(PHP 4, PHP 5)

filegroup — Lê o grupo do arquivo

Descrição

int filegroup ( string $nomedoarquivo )

Obtém o grupo do arquivo. O ID do grupo é retornado no formato numérico, use posix_getgrgid() para resolvê-lo para um nome do grupo.

Parâmetros

filename

Path to the file.

Valor Retornado

Retorna o group ID do arquivo, ou FALSE no caso de um erro. O group ID é retornado em um formato numérico. Use posix_getgrgid() para resolver para o nome do grupo. Em caso de falha, FALSE é retornado.

Erros

Em caso de falha. um E_WARNING é emitido.

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • fileowner() - Lê o dono (owner) do arquivo
  • safe_mode_gid

filectime
fileinode
Funções para Sistema de arquivo


Lê o inode do arquivo

filegroup
filemtime
Funções para Sistema de arquivo
PHP Manual

fileinode

(PHP 4, PHP 5)

fileinode — Lê o inode do arquivo

Descrição

int fileinode ( string $nomedoarquivo )

Obtém o inode do arquivo.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna o número do inode do arquivo, ou FALSE em caso de um erro.

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • stat() - Obtem informações sobre um arquivo

filegroup
filemtime
Funções para Sistema de arquivo


Obtém o tempo de modificação do arquivo

fileinode
fileowner
Funções para Sistema de arquivo
PHP Manual

filemtime

(PHP 4, PHP 5)

filemtime — Obtém o tempo de modificação do arquivo

Descrição

int filemtime ( string $nomedoarquivo )

Esta função retorna o tempo quando o bloco de informação de um arquivo foi inicialmente escrito, isto é, o tempo quando o conteúdo do arquivo foi modificado.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna o tempo da última modificação do arquivo, ou FALSE em caso de um erro. O tempo é retornado como um Unix timestamp, que é apropriado para função date().

Exemplos

Exemplo #1 Exemplo da filemtime()

<?php
// exibe algo como: arquivo.txt foi modificado em December 29 2002 22:16:23.

$filename = 'arquivo.txt';
if (file_exists($filename)) {
    echo "$filename foi modificado em " . date ("F d Y H:i:s.", filemtime($filename));
}
?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • filectime() - Obtém o tempo de modificação do inode do arquivo
  • stat() - Obtem informações sobre um arquivo
  • touch() - Muda o tempo de modificação do arquivo
  • getlastmod() - Obtém o tempo da última modificação na pagina

fileinode
fileowner
Funções para Sistema de arquivo


Lê o dono (owner) do arquivo

filemtime
fileperms
Funções para Sistema de arquivo
PHP Manual

fileowner

(PHP 4, PHP 5)

fileowner — Lê o dono (owner) do arquivo

Descrição

int fileowner ( string $nomedoarquivo )

Obtém o proprietário do arquivo.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna o ID do usuário (user ID) do dono (owner) do arquivo, ou FALSE caso um erro. O ID do usuário é retornado no formato numérico, use posix_getpwuid() para obter o username do usuário.

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • stat() - Obtem informações sobre um arquivo

filemtime
fileperms
Funções para Sistema de arquivo


Lê as permissões do arquivo

fileowner
filesize
Funções para Sistema de arquivo
PHP Manual

fileperms

(PHP 4, PHP 5)

fileperms — Lê as permissões do arquivo

Descrição

int fileperms ( string $filename )

Retorna as permissões do arquivo.

Parâmetros

filename

Caminho até o arquivo.

Valor Retornado

Retornas as permissões do arquivo, ou FALSE em caso de erro.

Exemplos

Exemplo #1 Mostra as permissões na forma octal

<?php
echo substr(sprintf('%o', fileperms('/tmp')), -4);
echo substr(sprintf('%o', fileperms('/etc/passwd')), -4);
?>

O exemplo acima irá imprimir:

1777
0644

Exemplo #2 Mostra as permissões completas

<?php
$perms = fileperms('/etc/passwd');

if (($perms & 0xC000) == 0xC000) {
    // Socket
    $info = 's';
} elseif (($perms & 0xA000) == 0xA000) {
    // Link simbólico
    $info = 'l';
} elseif (($perms & 0x8000) == 0x8000) {
    // Regular
    $info = '-';
} elseif (($perms & 0x6000) == 0x6000) {
    // Bloco especial
    $info = 'b';
} elseif (($perms & 0x4000) == 0x4000) {
    // Diretório
    $info = 'd';
} elseif (($perms & 0x2000) == 0x2000) {
    // Caractere especial
    $info = 'c';
} elseif (($perms & 0x1000) == 0x1000) {
    // FIFO pipe
    $info = 'p';
} else {
    // Desconhecido
    $info = 'u';
}

// Proprietário
$info .= (($perms & 0x0100) ? 'r' : '-');
$info .= (($perms & 0x0080) ? 'w' : '-');
$info .= (($perms & 0x0040) ?
            (($perms & 0x0800) ? 's' : 'x' ) :
            (($perms & 0x0800) ? 'S' : '-'));

// Grupo
$info .= (($perms & 0x0020) ? 'r' : '-');
$info .= (($perms & 0x0010) ? 'w' : '-');
$info .= (($perms & 0x0008) ?
            (($perms & 0x0400) ? 's' : 'x' ) :
            (($perms & 0x0400) ? 'S' : '-'));

// Outros
$info .= (($perms & 0x0004) ? 'r' : '-');
$info .= (($perms & 0x0002) ? 'w' : '-');
$info .= (($perms & 0x0001) ?
            (($perms & 0x0200) ? 't' : 'x' ) :
            (($perms & 0x0200) ? 'T' : '-'));

echo $info;
?>

O exemplo acima irá imprimir:

-rw-r--r--

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_readable() - Diz se o arquivo pode ser lido
  • stat() - Obtem informações sobre um arquivo

fileowner
filesize
Funções para Sistema de arquivo


Lê o tamanho do arquivo

fileperms
filetype
Funções para Sistema de arquivo
PHP Manual

filesize

(PHP 4, PHP 5)

filesize — Lê o tamanho do arquivo

Descrição

int filesize ( string $filename )

Obtém o tamanho do dado arquivo.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna o tamanho do arquivo em bytes, ou FALSE (e gera um erro de nível E_WARNING) no caso de um erro.

Nota: Como o tipo inteiro do PHP é sinalizado e muitas plataformas utilizam inteiros de 32 bits, filesize() pode retornar resultados inesperados para arquivos que sejam maiores que 2 Gb. Para arquivos entre 2 Gb e 4 Gb você pode resolver esse problema utilizando sprintf("%u", filesize($file)).

Exemplos

Exemplo #1 Exemplo de filesize()

<?php

// Exibe algo como: arquivo.txt: 1024 bytes

$filename = 'arquivo.txt';
echo $filename . ': ' . filesize($filename) . ' bytes';

?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • file_exists() - Checa se um arquivo ou diretório existe

fileperms
filetype
Funções para Sistema de arquivo


Lê o tipo do arquivo

filesize
flock
Funções para Sistema de arquivo
PHP Manual

filetype

(PHP 4, PHP 5)

filetype — Lê o tipo do arquivo

Descrição

string filetype ( string $filename )

Retorna o tipo do arquivo.

Parâmetros

filename

Caminho até o arquivo.

Valor Retornado

Retorna o tipo do arquivo. Os valores possíveis são fifo, char, dir, block, link, file, socket e unknown (desconhecido).

Retorna FALSE se ocorrer algum erro. filetype() também produzirá uma mensagem E_NOTICE se a chamada stat falhar ou se o tipo do arquivo for desconhecido.

Exemplos

Exemplo #1 Exemplo de filetype()

<?php

echo filetype('/etc/passwd');  // file
echo filetype('/etc/');        // dir

?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_dir() - Diz se o caminho é um diretório
  • is_file() - Informa se o arquivo é um arquivo comum (não é diretório)
  • is_link() - Diz se o arquivo é um link simbólico (symbolic link)
  • file_exists() - Checa se um arquivo ou diretório existe
  • stat() - Obtem informações sobre um arquivo
  • mime_content_type() - Detect MIME Content-type for a file (deprecated)

filesize
flock
Funções para Sistema de arquivo


Monitor de travamento de arquivos portátil

filetype
fnmatch
Funções para Sistema de arquivo
PHP Manual

flock

(PHP 4, PHP 5)

flock — Monitor de travamento de arquivos portátil

Descrição

bool flock ( resource $handle , int $operation [, int &$wouldblock ] )

flock() permite você executar um simples modelo reader/writer que pode ser usado virtualmente cada plataforma (incluindo muitos derivados do Unix e até mesmo Windows).

A trava é liberada também por fclose() (que é também chamada automaticamente quando o script é finalizado).

PHP suporta uma maneira portável de travamento completo de arquivos de forma consultiva (que significa que todos programas acessados tem que usar a mesma forma de travamento ou não irá funcionar).

Parâmetros

handle

Um ponteiro de arquivo aberto.

operation

operation é uma das seguintes:

  • LOCK_SH para obter trava compartilhada (reader).
  • LOCK_EX para obter trava exclusiva (writer).
  • LOCK_UN para liberar uma trava (compartilhada ou exclusiva).
  • LOCK_NB se você não quer flock() para bloquear quando está travando. (não suportado em Windows)

wouldblock

O terceiro argumento opcional é usado como TRUE se a lock irá bloquear (EWOULDBLOCK errno condition).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.0.1 | As constantes LOCK_XXX foram adicionadas. Ao invés de você precisa usar 1 para LOCK_SH, 2 LOCK_EX, 3 para LOCK_UN e 4 para LOCK_NB

Exemplos

Exemplo #1 Exemplo da flock()

<?php

$fp = fopen("/tmp/lock.txt", "w+");

if (flock($fp, LOCK_EX)) { // faca um lock exclusivo
    fwrite($fp, "escrevemos algo aqui\n");
    flock($fp, LOCK_UN); // libera o lock
} else {
    echo "Não pude travar o arquivo !";
}

fclose($fp);

?>

Notas

Nota:

flock() trava obrigatoriamente em Windows.

Nota:

Uma vez que flock() requer um ponteiro de arquivo, você precisa utilizar um lock de arquivo especial para proteger i acessi a um arquivo ao qual você pretende truncar quando abrindo no modo de escrita (com um argumento "w" ou "w+" em fopen()).

Aviso

flock() não funcionará em NFS ou em qualquer outro sistema de arquivos em rede. Verifique a documentação do seu sistema operacional para mais detalhes.

Na maior parte dos sistemas operacionais flock() é implementada no nível do processo. Quando utilizando um servidor com uma API de multiprocessamento (como ISAPI), você não pode confiar em flock() para proteger os arquivos contra outros scripts PHP rodando em threads paralelas da mesma instância do servidor!

flock() não é suportado em sistemas de arquivos antiquados como a FAT e seus derivados, e sempre retornará FALSE sob esses ambientes (especialmente para usuários do Windows 98).

filetype
fnmatch
Funções para Sistema de arquivo


Compara nome de arquivo com um padrão

flock
fopen
Funções para Sistema de arquivo
PHP Manual

fnmatch

(PHP 4 >= 4.3.0, PHP 5)

fnmatch — Compara nome de arquivo com um padrão

Descrição

bool fnmatch ( string $pattern , string $string [, int $flags ] )

fnmatch() verifica se a string passada combina com o padrão de curingas shell pattern.

Parâmetros

pattern

Padrão de curingas shell

string

A string testada. Esta função é especialmente útil para nomes de arquivo, mas também pode ser usada em strings normais.

O usuário comum pode estar acostumado com padrões shell ou pelo menos, na sua forma mais simples, aos curingas '?' e '*'. Então usar fnmatch() ao invés de ereg() ou preg_match() para pesquisas pela interface pode ser muito mais conveniente para usuários não programadores.

flags

Veja a manpage Unix de fnmatch(3) para nomes de flags (contanto que não estejam documentadas aqui).

Valor Retornado

Retorna TRUE se combinar, FALSE do contrário.

Exemplos

Exemplo #1 Comparando uma cor com um padrão de curingas shell

<?php
if (fnmatch("*gr[ae]y", $color)) {
  echo "alguma forma da cor gray (cinza) ...";
}
?>

Notas

Aviso

Por enquanto esta função não está disponível no Windows ou outros sistemas não POSIX.

Veja Também

  • glob() - Acha caminhos que combinam com um padrão
  • ereg() - Casando expressões regulares
  • preg_match() - Perform a regular expression match
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada

flock
fopen
Funções para Sistema de arquivo


Abre um arquivo ou URL

fnmatch
fpassthru
Funções para Sistema de arquivo
PHP Manual

fopen

(PHP 4, PHP 5)

fopen — Abre um arquivo ou URL

Descrição

resource fopen ( string $filename , string $mode [, bool $use_include_path [, resource $context ]] )

fopen() conecta um recurso nomeado, especificado por filename, a um stream.

Parâmetros

filename

Se filename estiver na forma de "scheme://...", é assumido que seja uma URL, e o PHP buscará por um manipulador de protocolo (também conhecido como wrapper) para aquele scheme. Se nenhum wrapper para aquele protocolo estiver registrado, o PHP emitirá um aviso para ajudá-lo a rastrear potenciais problemas no seu script, e então continuará presumindo que filename especifica um nome de arquivo.

Se o PHP decidiu que filename se refere a um arquivo local, então ele tentará abrir um stream para aquele arquivo. O arquivo precisa ser acessível pelo PHP, então você precisa assegurar que as permissões de acesso do arquivo permitem este acesso. Se você tiver ativado safe mode ou open_basedir, outras restrições podem se aplicar.

Se o PHP decidiu que filename se refere a um protocolo registrado e esse protocolo estiver registrado como um protocolo de rede, o PHP irá verificar para ter certeza que allow_url_fopen está ativado. Se estiver desligado, o PHP emitirá um alerta e a chamada ao fopen irá falhar.

Nota:

A lista de protocolos suportados pode ser encontrada em Supported Protocols and Wrappers. Alguns protocolos (também mencionados como wrappers) suportam context e/ou opções do php.ini. Recorra à página específica do protocolo em uso para uma lista das opções que podem ser definidas. (ex.: o valor php.ini user_agent utilizado pelo wrapper http).

Na plataforma Windows, tenha cuidado de escapar qualquer barra invertida usada no caminho do arquivo, ou use barras normais.

<?php
$handle = fopen("c:\\data\\info.txt", "r");
?>

mode

O parâmetro mode especifica o tipo de acesso que você precisa ao stream. Pode ser um dos seguintes:

Lista dos possíveis modos de fopen() utilizando mode
mode | Descrição
'r' | Abre somente para leitura; coloca o ponteiro do arquivo no começo do arquivo.
'r+' | Abre para leitura e escrita; coloca o ponteiro do arquivo no começo do arquivo.
'w' | Abre somente para escrita; coloca o ponteiro do arquivo no começo do arquivo e reduz o comprimento do arquivo para zero. Se o arquivo não existir, tenta criá-lo.
'w+' | Abre para leitura e escrita; coloca o ponteiro do arquivo no começo do arquivo e reduz o comprimento do arquivo para zero. Se o arquivo não existir, tenta criá-lo.
'a' | Abre somente para escrita; coloca o ponteiro do arquivo no final do arquivo. Se o arquivo não existir, tenta criá-lo.
'a+' | Abre para leitura e escrita; coloca o ponteiro do arquivo no final do arquivo. Se o arquivo não existir, tenta criá-lo.
'x' | Cria e abre o arquivo somente para escrita; coloca o ponteiro no começo do arquivo. Se o arquivo já existir, a chamada a fopen() falhará, retornando FALSE e gerando um erro de nível E_WARNING. Se o arquivo não existir, tenta criá-lo. Isto é equivalente a especificar as flags O_EXCL|O_CREAT para a chamada de sistema open(2).
'x+' | Cria e abre o arquivo para leitura e escrita; coloca o ponteiro no começo do arquivo. Se o arquivo já existir, a chamada a fopen() falhará, retornando FALSE e gerando um erro de nível E_WARNING. Se o arquivo não existir, tenta criá-lo. Isto é equivalente a especificar as flags O_EXCL|O_CREAT para a chamada de sistema open(2).

Nota:

Famílias de sistemas operacionais diferentes têm convenções de delimitação de linhas diferentes. Quando você escreve um arquivo texto e quer inserir uma quebra de linha, você precisa utilizar o(s) caractere(s) de fim de linha adequado(s) ao seu sistema operacional. Sistemas baseados no Unix utilizam \n como caractere de final de linha, sistemas baseados no Windows utilizam \r\n e sistemas baseados no Macintosh utilizam \r.

Se escrever caracteres de fim de linha inadequados em seus arquivos, eles deverão "parecer engraçados" quando você os abrir em outras aplicações.

O Windows oferece uma flag de tradução do modo texto ('t') que traduz, transparentemente, \n para \r\n quando trabalhando no arquivo. Em contraste, você também pode utilizar 'b' para forçar o modo binário, que não irá traduzir o arquivo. Para usar essas flags, informe ou 'b' ou 't' como o último caractere no parâmetro mode.

O modo de tradução padrão depende da SAPI e da versão do PHP que você estiver usando, então você é encorajado a sempre utilizar a flag apropriada por razões de portabilidade. Você deve usar o modo 't' se estiver trabalhando em arquivos texto simples e utilizar \n para delimitar as linhas em seu script, de forma que você pode esperar que eles sejam lidos em outras aplicações como o Notepad. Você deve usar 'b' em todos os outros casos.

Se você não especificar a flag 'b' quando trabalhar com arquivos binários, você pode passar por problemas estranhos com seus dados, incluindo arquivos de imagens danificados e problemas estranhos com os caracteres \r\n.

Nota:

Para portabilidade, é fortemente recomendado que você sempre utilize a flag 'b' quando abrir arquivos com fopen().

Nota:

Novamente para portabilidade, também é fortemente recomendado que você reescreva códigos que utilizem ou confiem no modo 't', de forma que passem a utilizar os fins de linha corretos e o modo 'b'.

use_include_path

O terceiro parâmetro opcional use_include_path pode ser definido para '1' ou TRUE se você quiser buscar o arquivo também no include_path.

context

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna um recurso de ponteiro de arquivo em caso de sucesso, ou FALSE em caso de erro.

Erros

Se a abertura falhar, um erro nível E_WARNING é gerado. Você pode utilizar @ para suprimir esse alerta.

Histórico

Versão | Descrição
4.3.2 | A partir do PHP 4.3.2, o modo padrão é definido para binário em todas as plataformas que distinguem entre modo texto e binário. Se você estiver tendo problemas com seus scripts depois de uma atualização, tente acrescentar a flag 't' como um paliativo até que você tenha tornado seus scripts portáveis como mencionado acima.
4.3.2 | As opções 'x' e 'x+' foram adicionadas

Exemplos

Exemplo #1 Exemplos de fopen()

<?php
$handle = fopen("/home/rasmus/file.txt", "r");
$handle = fopen("/home/rasmus/file.gif", "wb");
$handle = fopen("http://www.example.com/", "r");
$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
?>

Notas

Aviso

Quando usando SSL, o Microsoft IIS irá violar o protocolo fechando a conexão sem enviar uma notificação close_notify. O PHP acusará isso como sendo "SSL: Fatal Protocol Error" quando tentar ler os dados. Para prevenir isso, o valor de error_reporting deve ser reduzido para um nível que não inclui avisos. para o nível que não emita warnings. O PHP 4.3.7 e seguintes conseguem detectar servidores IIS defeituosos quando você abre um stream utilizando o wrapper https:// e suprimirá os avisos. Se você está usando fsockopen() para criar um socket ssl://, a responsabilidade de detectar e suprimir esse aviso passa para você.

Nota: Quando o safe-mode está ativo, o PHP verifica se o diretório no qual o script está em operação tem o mesmo UID (proprietário) do script que está sendo executado.

Se você está tendo problemas com a leitura e gravação para arquivos e você está usando a versão de módulo de servidor do PHP, lembre-se de que os arquivos e diretórios que você está usando precisam ser acessíveis ao processo do servidor HTTP.

Veja Também

  • Supported Protocols and Wrappers
  • fclose() - Fecha um ponteiro de arquivo aberto
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fread() - Leitura binary-safe de arquivo
  • fwrite() - Escrita binary-safe em arquivos
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • file() - Lê todo o arquivo para um array
  • file_exists() - Checa se um arquivo ou diretório existe
  • is_readable() - Diz se o arquivo pode ser lido
  • stream_set_timeout() - Set timeout period on a stream
  • popen() - Abre um processo como ponteiro de arquivo
  • stream_context_create() - Create a streams context

fnmatch
fpassthru
Funções para Sistema de arquivo


Imprime todo os dados restantes de um ponteiro de arquivo

fopen
fputcsv
Funções para Sistema de arquivo
PHP Manual

fpassthru

(PHP 4, PHP 5)

fpassthru — Imprime todo os dados restantes de um ponteiro de arquivo

Descrição

int fpassthru ( resource $handle )

Lê até o fim do arquivo (EOF) do ponteiro de arquivo dado e imprime os resultados para a buffer de saída.

Se você precisa chamar rewind() para resetar o ponteiro do arquivo para início do arquivo se você já escreveu dados para o arquivo.

Se você somente quiser jogar o conteúdo de um arquivo para o buffer de saída, sem primeiro modificar ou procurar por um detalhe qualquer, você pode querer usar a função readfile(), que vai economizar uma chamada a função fopen().

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

Se um error ocorrer, a função fpassthru() retorna FALSE. No sucesso, fpassthru() retorna o número de caracteres lidos do handle e passado para a exibição.

Exemplos

Exemplo #1 Usando fpassthru() com arquivo binário

<?php

// abre o arquivo em modo binário
$name = './img/ok.png';
$fp = fopen($name, 'rb');

// envia os headers
header("Content-Type: image/png");
header("Content-Length: ".filesize($name));

// manda a imagem e pára o script
fpassthru($fp);
exit;

?>

Notas

Nota:

Quando utilizando fpassthru() em um arquivo binário em sistemas Windows, você precisa verificar se abriu o arquivo em modo binário, acrescentando um b no modo informado na chamada de fopen().

Você é encorajado a utilizar o modo b quando trabalhando com arquivos binários, mesmo que seu sistema não requira isso, de forma que seus scripts se tornem mais portáveis.

Veja Também

  • readfile() - Lê e exibe o conteúdo de um 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

fopen
fputcsv
Funções para Sistema de arquivo


Formata a linha como CSV e a escreve em um ponteiro de arquivo

fpassthru
fputs
Funções para Sistema de arquivo
PHP Manual

fputcsv

(PHP 5 >= 5.1.0)

fputcsv — Formata a linha como CSV e a escreve em um ponteiro de arquivo

Descrição

int fputcsv ( resource $handle , array $fields [, string $delimiter [, string $enclosure ]] )

fputcsv() formata uma linha (passada como um array de campos fields) como CSV e a escreve (terminando com uma nova linha) no manipulador de arquivo especificado por handle.

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()).

fields

Um array de valores.

delimiter

O parâmetro opcional delimiter configura o caracter delimitador (apenas um caracter). Por padrão é a vírgula: ,.

enclosure

O parâmetro opcional enclosure configura o caracter que envolve os dados (apenas um caracter) e tem como valor padrão aspas duplas: ".

Valor Retornado

Retorna o comprimento da string escrita, ou FALSE em caso de falha.

Exemplos

Exemplo #1 Exemplo de fputcsv()

<?php

$lista = array (
    'aaa,bbb,ccc,dddd',
    '123,456,789',
    '"aaa","bbb"'
);

$fp = fopen('arquivo.csv', 'w');

foreach ($lista as $linha) {
    fputcsv($fp, split(',', $linha));
}

fclose($fp);
?>

Notas

Nota: Se PHP não está apropriadamente reconhecendo o final de linha quando lendo arquivos ou criando por um computador Macintosh, habilitando a opção auto_detect_line_endings em tempo de execução pode ajudar a resolver o problema.

Veja Também

  • fgetcsv() - Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV

fpassthru
fputs
Funções para Sistema de arquivo


Sinônimo de fwrite

fputcsv
fread
Funções para Sistema de arquivo
PHP Manual

fputs

(PHP 4, PHP 5)

fputs — Sinônimo de fwrite()

Descrição

Esta função é um apelido para: fwrite().

fputcsv
fread
Funções para Sistema de arquivo


Leitura binary-safe de arquivo

fputs
fscanf
Funções para Sistema de arquivo
PHP Manual

fread

(PHP 4, PHP 5)

fread — Leitura binary-safe de arquivo

Descrição

string fread ( resource $handle , int $length )

fread() lê até length bytes do ponteiro de arquivo informado em handle. A leitura é interrompida quando uma das seguintes condições são satisfeitas:

  • length bytes foram lidos
  • EOF (end of file - final do arquivo) é alcançado
  • um pacote tornou-se disponível (para network streams)
  • 8192 bytes foram lidos (depois de abrir um stream)

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

length

Até length número de bytes lidos.

Valor Retornado

Retorna a string lida ou FALSE em caso de erro.

Exemplos

Exemplo #1 Um simples exemplo de fread()

<?php
// lê o conteúdo do arquivo para uma string
$filename = "/usr/local/qualquer.txt";
$handle = fopen ($filename, "r");
$conteudo = fread ($handle, filesize ($filename));
fclose ($handle);
?>

Exemplo #2 Exemplo de fread() binário

Aviso

Em sistemas que diferenciam entre arquivos binários e texto (por exemplo Windows) o arquivo tem que ser aberto com 'b' incluído no parâmetro 'mode' na fopen().

<?php
$filename = "c:\\files\\figura.gif";
$handle = fopen ($filename, "rb");
$conteudo = fread ($handle, filesize ($filename));
fclose ($handle);
?>

Exemplo #3 Exemplos de fread() remoto

Aviso

Ao ler de qualquer coisa que não seja um arquivo local comum, tal como de streams retornados ao ler arquivos remotos, ou de popen() e fsockopen(), a leitura irá parar depois que um pacote esteja disponível. Isto significa que você deve juntar os dados em blocos como demonstrado nos exemplos abaixo.

<?php
// Para o PHP 5 e superior
$handle = fopen("http://www.example.com/", "rb");
$contents = stream_get_contents($handle);
fclose($handle);
?>
<?php
$handle = fopen("http://www.example.com/", "rb");
$contents = '';
while (!feof($handle)) {
  $contents .= fread($handle, 8192);
}
fclose($handle);
?>

Notas

Nota:

Se você quer apenas pegar o conteúdo de um arquivo para uma string, utilize file_get_contents() que tem uma performance ainda melhor que o código acima.

Veja Também

  • fwrite() - Escrita binary-safe em arquivos
  • fopen() - Abre um arquivo ou URL
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • popen() - Abre um processo como ponteiro de arquivo
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato
  • file() - Lê todo o arquivo para um array
  • fpassthru() - Imprime todo os dados restantes de um ponteiro de arquivo

fputs
fscanf
Funções para Sistema de arquivo


Interpreta a leitura de um arquivo de acordo com um formato

fread
fseek
Funções para Sistema de arquivo
PHP Manual

fscanf

(PHP 4 >= 4.0.1, PHP 5)

fscanf — Interpreta a leitura de um arquivo de acordo com um formato

Descrição

mixed fscanf ( resource $handle , string $formato [, mixed &$... ] )

A função fscanf() é semelhante à sscanf(), mas usa como entrada um arquivo associado com o handle e interpreta a entrada de acordo com o formato especificado, o qual é descrito na documentação da sprintf().

Qualquer espaço em branco na string do formato combina com quaisquer outros espaços no stream de entrada. Isto significa que até uma tabulação \t na string do formato combina com um caracter de espaço simples no stream de entrada.

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

formato

O formato especificado como descrito na documentação de sprintf().

...

Variáveis opcionais onde definir os valores.

Valor Retornado

Se somente dois parâmetros forem passados pra essa função, os valores interpretados serão retornados como um array. Do contrário, se parâmetros opcionais forem passados, a função retornará o número de valores definidos. Os parâmetros opcionais devem ser passados por referência.

Histórico

Versão | Descrição
4.3.0 | Antes do PHP 4.3.0, o maior número de caracteres lidos do arquivo era 512 (ou o primeiro \n, o que viesse primeiro). Agora, linhas de qualquer comprimento são lidas e interpretadas.

Exemplos

Exemplo #1 Exemplo de fscanf()

<?php
$handle = fopen("users.txt", "r");
while ($userinfo = fscanf($handle, "%s\t%s\t%s\n")) {
    list ($name, $profession, $countrycode) = $userinfo;
    //... fazer algo com os valores
}
fclose($handle);
?>

Exemplo #2 Conteúdo de users.txt

javier  argonaut        pe
hiroshi sculptor        jp
robert  slacker us
luigi   florist it

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada

fread
fseek
Funções para Sistema de arquivo


Procura (seeks) em um ponteiro de arquivo

fscanf
fstat
Funções para Sistema de arquivo
PHP Manual

fseek

(PHP 4, PHP 5)

fseek — Procura (seeks) em um ponteiro de arquivo

Descrição

int fseek ( resource $handle , int $offset [, int $whence ] )

Modifica o indicador de posição do arquivo referenciado por handle. A nova posição, medida em bytes a partir do início do arquivo, é obtida ao adicionar offset à posição especificada por whence.

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

offset

A posição.

Para mover até uma posição anterior ao final do arquivo, você precisa passar um valor negativo no offset.

whence

Valores de whence são:

  • SEEK_SET - Define a posição igual ao offset bytes.
  • SEEK_CUR - Define a posição para a atual localização mais offset.
  • SEEK_END - Define a posição para o final do arquivo mais offset.

Se whence não for especificado, é assumido que seja SEEK_SET.

Valor Retornado

Em caso de sucesso, retorna 0; caso contrário, retorna -1. Observe que fazer um seek depois do fim do arquivo (EOF) não é considerado um erro.

Exemplos

Exemplo #1 Exemplo de fseek()

<?php

$fp = fopen('arquivo.txt');

// lê alguns dados
$data = fgets($fp, 4096);

// move de volta para o inicio do arquivo
// o mesmo que rewind($fp);
fseek($fp, 0);

?>

Notas

Nota:

Se você abriu o arquivo em modo de adição ("a" ou "a+"), quaisquer dados que você escreva no arquivo serão sempre acrescentados ao final, independente da posição do arquivo.

Nota:

Não pode ser usado em ponteiros de arquivo retornados por fopen() se eles usarem os formatos "http://" ou "ftp://". fseek() dá resultados indefinidos se usados em streams de somente adição (abertos com a flag "a").

Veja Também

  • ftell() - Retorna a posição de leitura/gravação do ponteiro do arquivo
  • rewind() - Reinicializa a posição do ponteiro de arquivos para o início

fscanf
fstat
Funções para Sistema de arquivo


Lê informações sobre um arquivo usando um ponteiro de arquivo aberto

fseek
ftell
Funções para Sistema de arquivo
PHP Manual

fstat

(PHP 4, PHP 5)

fstat — Lê informações sobre um arquivo usando um ponteiro de arquivo aberto

Descrição

array fstat ( resource $handle )

Obtêm estatísticas do arquivo aberto pelo ponteiro de arquivos handle. Esta função é similar à função stat() exceto que ela opera em um ponteiro de arquivo aberto ao invés de um nome de arquivo.

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

Valor Retornado

Retorna um array com as estatísticas de um arquivo. O formato do array é descrito em detalhes na página do manual sobre stat().

Exemplos

Exemplo #1 Exemplo fstat()

<?php

// abre um arquivo
$fp = fopen("/etc/passwd", "r");

// colhe as estatísticas
$fstat = fstat($fp);

// fecha o arquivo
fclose($fp);

// imprime somente a parte de índices associativos
print_r(array_slice($fstat, 13));

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [dev] => 771
    [ino] => 488704
    [mode] => 33188
    [nlink] => 1
    [uid] => 0
    [gid] => 0
    [rdev] => 0
    [size] => 1114
    [atime] => 1061067181
    [mtime] => 1056136526
    [ctime] => 1056136526
    [blksize] => 4096
    [blocks] => 8
)

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

fseek
ftell
Funções para Sistema de arquivo


Retorna a posição de leitura/gravação do ponteiro do arquivo

fstat
ftruncate
Funções para Sistema de arquivo
PHP Manual

ftell

(PHP 4, PHP 5)

ftell — Retorna a posição de leitura/gravação do ponteiro do arquivo

Descrição

int ftell ( resource $handle )

Informa a posição do ponteiro do arquivo de leitura/escrita.

Parâmetros

handle

O ponteiro de arquivo precisa ser válido, e precisa apontar para um arquivo aberto com sucesso por fopen() ou popen(). ftell() dá resultados indefinidos para streams no modo append (aberto com flag "a").

Valor Retornado

Retorna a posição do ponteiro do arquivo referenciado por handle; i.e., sua posição no stream do arquivo.

Se um erro ocorrer, retorna FALSE.

Exemplos

Exemplo #1 Exemplo da ftell()

<?php

// abre o arquivo e lê alguns dados
$fp = fopen("/etc/passwd", "r");
$data = fgets($fp, 12);

// onde nós estamos ?
echo ftell($fp); // 11

fclose($fp);

?>

Veja Também

  • fopen() - Abre um arquivo ou URL
  • popen() - Abre um processo como ponteiro de arquivo
  • fseek() - Procura (seeks) em um ponteiro de arquivo
  • rewind() - Reinicializa a posição do ponteiro de arquivos para o início

fstat
ftruncate
Funções para Sistema de arquivo


Reduz um arquivo a um tamanho especificado

ftell
fwrite
Funções para Sistema de arquivo
PHP Manual

ftruncate

(PHP 4, PHP 5)

ftruncate — Reduz um arquivo a um tamanho especificado

Descrição

bool ftruncate ( resource $handle , int $size )

Pega o ponteiro de arquivo handle e reduz o arquivo ao comprimento size.

Parâmetros

handle

O ponteiro do arquivo.

Nota:

O ponteiro handle deve estar aberto para escrita.

size

O tamanho pro qual reduzir.

Nota:

Se size for maior que o arquivo, o arquivo será estendido com bytes nulos.

Se size for menor, os dados extras serão perdidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
PHP 4.3.3 | Antes desta versão, ftruncate() retornava integer no valor 1 no caso de sucesso, ao invés de boolean TRUE.

Notas

Nota:

O ponteiro do arquivo não é alterado.

Veja Também

  • fopen() - Abre um arquivo ou URL
  • fseek() - Procura (seeks) em um ponteiro de arquivo

ftell
fwrite
Funções para Sistema de arquivo


Escrita binary-safe em arquivos

ftruncate
glob
Funções para Sistema de arquivo
PHP Manual

fwrite

(PHP 4, PHP 5)

fwrite — Escrita binary-safe em arquivos

Descrição

int fwrite ( resource $handle , string $string [, int $length ] )

fwrite() escreve o conteúdo da string para o stream de arquivo apontado por handle.

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

string

A string a ser escrita.

length

Se o argumento comprimento for dado, a escrita irá parar depois que comprimento bytes tenham sido escritos ou o final da string seja alcançado, o que vier primeiro.

Observe que se o argumento comprimento for dado, a opção de configuração magic_quotes_runtime será ignorada e nenhuma barra será removida da string.

Valor Retornado

fwrite() retorna o número de bytes escritos, ou FALSE em caso de erro.

Notas

Nota:

Em sistemas que diferenciam entre arquivos binários e texto (por exemplo Windows) o arquivo tem que ser aberto com 'b' incluído no parâmetro 'mode' na fopen().

Nota:

Se o handle foi aberto com fopen() em modo de adição, escritas com fwrite() são atômicas (a não ser que o tamanho da string exceda o tamanho de bloco do sistema de arquivos, em algumas plataformas, e contanto que o arquivo esteja em um sistema de arquivos local). Sendo assim, não há necessidade de bloquear um recurso com flock() antes de chamar fwrite(); todos os dados serão escritos sem interrupção.

Nota:

Se escrevendo duas vezes para o ponteiro do arquivo, então a informação será adicionado ao final do contéudo do arquivo, significando que o exemplo abaixo não funcionaria como esperado:

<?php
$fp = fopen('data.txt', 'w');
fwrite($fp, '1');
fwrite($fp, '23');
fclose($fp);

// o conteúdo de 'data.txt' agora é 123 e não 23!
?>

Exemplos

Exemplo #1 Um simples exemplo de fwrite()

<?php
$filename = 'teste.txt';
$conteudo = "Acrescentar isso ao arquivo\n";

// Primeiro vamos ter certeza de que o arquivo existe e pode ser alterado
if (is_writable($filename)) {

 // Em nosso exemplo, nós vamos abrir o arquivo $filename
 // em modo de adição. O ponteiro do arquivo estará no final
 // do arquivo, e é pra lá que $conteudo irá quando o
 // escrevermos com fwrite().
    if (!$handle = fopen($filename, 'a')) {
         echo "Não foi possível abrir o arquivo ($filename)";
         exit;
    }

    // Escreve $conteudo no nosso arquivo aberto.
    if (fwrite($handle, $conteudo) === FALSE) {
        echo "Não foi possível escrever no arquivo ($filename)";
        exit;
    }

    echo "Sucesso: Escrito ($conteudo) no arquivo ($filename)";

    fclose($handle);

} else {
    echo "O arquivo $filename não pode ser alterado";
}
?>

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fopen() - Abre um arquivo ou URL
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • popen() - Abre um processo como ponteiro de arquivo
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string

ftruncate
glob
Funções para Sistema de arquivo


Acha caminhos que combinam com um padrão

fwrite
is_dir
Funções para Sistema de arquivo
PHP Manual

glob

(PHP 4 >= 4.3.0, PHP 5)

glob — Acha caminhos que combinam com um padrão

Descrição

array glob ( string $pattern [, int $flags ] )

A função glob() procura por todos os caminhos que combinem com o padrão pattern de acordo com as regras usadas pela função glob() da libc, que é semelhante às regras usadas por shells comuns.

Parâmetros

pattern

O padrão. Não é feita nenhuma expansão de til ou substituição de parâmetros.

flags

Flags válidas:

  • GLOB_MARK - Acrescenta uma barra a cada item retornado
  • GLOB_NOSORT - Retorna os arquivos conforme eles aparecem no diretório (sem ordenação)
  • GLOB_NOCHECK - Retorna o padrão da busca se nenhuma combinação de arquivo for encontrada
  • GLOB_NOESCAPE - Barras invertidas não escapam metacaracteres.
  • GLOB_BRACE - Expande {a,b,c} para combinar com 'a', 'b' ou 'c'
  • GLOB_ONLYDIR - Retorna apenas diretórios que combinem com o padrão
  • GLOB_ERR - Pára em erros de leitura (como diretórios que não podem ser lidos), por padrão os erros são ignorados.

Valor Retornado

Retorna um array contendo os arquivos/diretórios que combinaram, um array vazio se nenhum arquivo combinou ou FALSE em caso de erro.

Nota:

Em alguns sistemas é impossível distinguir entre resultado vazio ou um errro.

Histórico

Versão | Descrição
5.1.0 | GLOB_ERR foi adicionado
4.3.3 | GLOB_ONLYDIR tornou-se disponível no Windows e em outros sistemas que não utilizam a biblioteca GNU C

Exemplos

Exemplo #1 Modo conveniente de como glob() pode susbstituir opendir() e companhia.

<?php
foreach (glob("*.txt") as $arquivo) {
    echo "tamanho de $arquivo " . filesize($arquivo) . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

tamanho de funclist.txt 44686
tamanho de funcsummary.txt 267625
tamanho de quickref.txt 137820

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: Esta função não está disponível em alguns sistemas (ex.: antigo Sun OS).

Nota: A flag GLOB_BRACE não está disponível em alguns sistemas não GNU, como Solaris.

Veja Também

  • opendir() - Abre um manipulador de diretório
  • readdir() - Lê os campos do manipulador do diretório
  • closedir() - Fecha o manipulador do diretório
  • fnmatch() - Compara nome de arquivo com um padrão

fwrite
is_dir
Funções para Sistema de arquivo


Diz se o caminho é um diretório

glob
is_executable
Funções para Sistema de arquivo
PHP Manual

is_dir

(PHP 4, PHP 5)

is_dir — Diz se o caminho é um diretório

Descrição

bool is_dir ( string $filename )

Informa se o dado nome de arquivo é um diretório.

Parâmetros

filename

Caminho para o arquivo. Se filename é um nome de arquivo relativo, irá ser verificado relativamente ao atual diretório.

Valor Retornado

Retorna TRUE se o nome do arquivo existe e é um diretório, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_dir()

<?php
var_dump(is_dir('a_file.txt'));
var_dump(is_dir('bogus_dir/abc'));

var_dump(is_dir('..')); // um diretório acima
?>

O exemplo acima irá imprimir:

bool(false)
bool(false)
bool(true)

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • chdir() - Muda o diretório
  • dir
  • opendir() - Abre um manipulador de diretório
  • is_file() - Informa se o arquivo é um arquivo comum (não é diretório)
  • is_link() - Diz se o arquivo é um link simbólico (symbolic link)

glob
is_executable
Funções para Sistema de arquivo


Diz se um arquivo é executável

is_dir
is_file
Funções para Sistema de arquivo
PHP Manual

is_executable

(PHP 4, PHP 5)

is_executable — Diz se um arquivo é executável

Descrição

bool is_executable ( string $filename )

Diz se no nomedoarquivo existe e é executável.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna TRUE se o nome do arquivo existe e é executável, ou FALSE em erro.

Histórico

Versão | Descrição
5.0.0 | is_executable() tornou-se disponível em Windows

Exemplos

Exemplo #1 Exemplo da is_executable()

<?php

$file = '/home/vincent/arquivo.sh';

if(is_executable($file)) {
    echo $file.' é executável';
} else {
    echo $file.' não é executável';
}

?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_file() - Informa se o arquivo é um arquivo comum (não é diretório)
  • is_link() - Diz se o arquivo é um link simbólico (symbolic link)

is_dir
is_file
Funções para Sistema de arquivo


Informa se o arquivo é um arquivo comum (não é diretório)

is_executable
is_link
Funções para Sistema de arquivo
PHP Manual

is_file

(PHP 4, PHP 5)

is_file — Informa se o arquivo é um arquivo comum (não é diretório)

Descrição

bool is_file ( string $filename )

Informa se o dado arquivo é um arquivo regular.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Retorna TRUE se o nome do arquivo existe e é um arquivo regular, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_file()

<?php
var_dump(is_file('a_file.txt')) . "\n";
var_dump(is_file('/usr/bin/')) . "\n";
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_dir() - Diz se o caminho é um diretório
  • is_link() - Diz se o arquivo é um link simbólico (symbolic link)

is_executable
is_link
Funções para Sistema de arquivo


Diz se o arquivo é um link simbólico (symbolic link)

is_file
is_readable
Funções para Sistema de arquivo
PHP Manual

is_link

(PHP 4, PHP 5)

is_link — Diz se o arquivo é um link simbólico (symbolic link)

Descrição

bool is_link ( string $arquivo )

Informa se um dado arquivo é um link simbólico (symbolic link).

Parâmetros

filename

O caminho para o arquivo.

Valor Retornado

Retorna TRUE se o nome do arquivo existe e se é um link simbólico, FALSE caso contrário.

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_dir() - Diz se o caminho é um diretório
  • is_file() - Informa se o arquivo é um arquivo comum (não é diretório)
  • readlink() - Retornar o alvo de um link simbólico

is_file
is_readable
Funções para Sistema de arquivo


Diz se o arquivo pode ser lido

is_link
is_uploaded_file
Funções para Sistema de arquivo
PHP Manual

is_readable

(PHP 4, PHP 5)

is_readable — Diz se o arquivo pode ser lido

Descrição

bool is_readable ( string $filename )

Diz se o arquivo pode ser lido.

Parâmetros

filename

Caminho do arquivo.

Valor Retornado

Retorna TRUE se o arquivo ou diretório especificado por filename existe e pode ser lido, FALSE do contrário.

Exemplos

Exemplo #1 Exemplo de is_readable()

<?php
$filename = 'teste.txt';
if (is_readable($filename)) {
    echo 'O arquivo pode ser lido.';
} else {
    echo 'O arquivo não pode ser lido.';
}
?>

Notas

Lembre-se que o PHP pode acessar o arquivo como o usuário com o qual o servidor web é executado (geralmente 'nobody'). Limitações de Safe Mode não são levadas em conta antes do PHP 5.1.5.

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Nota:

A verificação é feita usando os UID/GID reais ao invés dos efetivos.

Veja Também

  • is_writable() - Diz se o arquivo pode ser modificado
  • file_exists() - Checa se um arquivo ou diretório existe
  • fgets() - Lê uma linha de um ponteiro de arquivo

is_link
is_uploaded_file
Funções para Sistema de arquivo


Diz se o arquivo foi enviado por POST HTTP

is_readable
is_writable
Funções para Sistema de arquivo
PHP Manual

is_uploaded_file

(PHP 4 >= 4.0.3, PHP 5)

is_uploaded_file — Diz se o arquivo foi enviado por POST HTTP

Descrição

bool is_uploaded_file ( string $filename )

Retorna TRUE se o arquivo com o nome filename foi enviado por POST HTTP. Isto é útil para ter certeza que um usuário malicioso não está tentando levar o script a trabalhar em arquivos que não deve estar trabalhando --- por exemplo, /etc/passwd.

Este tipo de confirmação é importante principalmente se existe alguma chance que qualquer coisa feita com os arquivos carregados possa revelar seu conteúdo para o usuário, ou mesmo para outros usuários no mesmo sistema.

Para o funcionamento apropriado, a função is_uploaded_file() precisa de um argumento como $_FILES['userfile']['tmp_name'], - o nome do arquivo enviado na máquina do cliente $_FILES['userfile']['name'] não funciona.

Parâmetros

filename

O nome do arquivo sendo checado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de is_uploaded_file()

<?php

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
   echo "O arquivo ". $_FILES['userfile']['name'] ." foi enviado com sucesso.\n";
   echo "Mostrando o conteúdo\n";
   readfile($_FILES['userfile']['tmp_name']);
} else {
   echo "Possível ataque de envio de arquivo: ";
   echo "nome do arquivo '". $_FILES['userfile']['tmp_name'] . "'.";
}

?>

Veja Também

  • move_uploaded_file() - Move um arquivo enviado para uma nova localização
  • Veja Gerenciar upload de arquivo para um simples exemplo de uso.

is_readable
is_writable
Funções para Sistema de arquivo


Diz se o arquivo pode ser modificado

is_uploaded_file
is_writeable
Funções para Sistema de arquivo
PHP Manual

is_writable

(PHP 4, PHP 5)

is_writable — Diz se o arquivo pode ser modificado

Descrição

bool is_writable ( string $filename )

Retorna TRUE se o arquivo em filename existe e pode ser modificado. O argumento filename pode ser um diretório, permitindo que você verifique se o diretório tem permissão de escrita.

Lembre-se que o PHP pode acessar o arquivo como o usuário com o qual o servidor web é executado (geralmente 'nobody'). Limitações de Safe Mode não são levadas em conta antes do PHP 5.1.5.

Parâmetros

filename

O arquivo sendo verificado.

Valor Retornado

Retorna TRUE se o arquivo em filename existe e pode ser modificado.

Exemplos

Exemplo #1 Exemplo de is_writable()

<?php
$filename = 'teste.txt';
if (is_writable($filename)) {
    echo 'O arquivo possui permissão de escrita';
} else {
    echo 'O arquivo não possui permissão de escrita';
}
?>

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • is_readable() - Diz se o arquivo pode ser lido
  • file_exists() - Checa se um arquivo ou diretório existe
  • fwrite() - Escrita binary-safe em arquivos

is_uploaded_file
is_writeable
Funções para Sistema de arquivo


Sinônimo de is_writable

is_writable
lchgrp
Funções para Sistema de arquivo
PHP Manual

is_writeable

(PHP 4, PHP 5)

is_writeable — Sinônimo de is_writable()

Descrição

Esta função é um apelido para: is_writable().

is_writable
lchgrp
Funções para Sistema de arquivo


Changes group ownership of symlink

is_writeable
lchown
Funções para Sistema de arquivo
PHP Manual

lchgrp

(PHP 5 >= 5.1.2)

lchgrp — Changes group ownership of symlink

Descrição

bool lchgrp ( string $filename , mixed $group )

Attempts to change the group of the symlink filename to group.

Only the superuser may change the group of a symlink arbitrarily; other users may change the group of a symlink to any group of which that user is a member.

Parâmetros

filename

Path to the symlink.

group

The group specified by name or number.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Changing the group of a symbolic link

<?php
$target = 'output.php';
$link = 'output.html';
symlink($target, $link);

lchgrp($link, 8);
?>

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • chgrp() - Modifica o grupo do arquivo
  • lchown() - Changes user ownership of symlink
  • chown() - Modifica o dono do arquivo
  • chmod() - Modifica as permissões do arquivo

is_writeable
lchown
Funções para Sistema de arquivo


Changes user ownership of symlink

lchgrp
link
Funções para Sistema de arquivo
PHP Manual

lchown

(PHP 5 >= 5.1.2)

lchown — Changes user ownership of symlink

Descrição

bool lchown ( string $filename , mixed $user )

Attempts to change the owner of the symlink filename to user user.

Only the superuser may change the owner of a symlink.

Parâmetros

filename

Path to the file.

user

User name or number.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Changing the owner of a symbolic link

<?php
$target = 'output.php';
$link = 'output.html';
symlink($target, $link);

lchown($link, 8);
?>

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • chown() - Modifica o dono do arquivo
  • lchgrp() - Changes group ownership of symlink
  • chgrp() - Modifica o grupo do arquivo
  • chmod() - Modifica as permissões do arquivo

lchgrp
link
Funções para Sistema de arquivo


Criando um hard link

lchown
linkinfo
Funções para Sistema de arquivo
PHP Manual

link

(PHP 4, PHP 5)

link — Criando um hard link

Descrição

bool link ( string $target , string $link )

link() cria um link físico.

Parâmetros

target

Alvo do link.

link

O nome do link.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função não trabalha com arquivos remotos, de forma que o arquivo a ser examinado precisa ser acessível pelo sistema de arquivos do servidor.

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • symlink() - Cria um link simbólico
  • readlink() - Retornar o alvo de um link simbólico
  • linkinfo() - Ler informações sobre um link

lchown
linkinfo
Funções para Sistema de arquivo


Ler informações sobre um link

link
lstat
Funções para Sistema de arquivo
PHP Manual

linkinfo

(PHP 4, PHP 5)

linkinfo — Ler informações sobre um link

Descrição

int linkinfo ( string $path )

Obtém informação sobre um link.

Esta função é usada para verificar se um link (apontado por path) realmente existe (usando o mesmo método como a macro S_ISLNK definida em stat.h).

Parâmetros

path

Caminho para o link.

Valor Retornado

linkinfo() retorna o campo st_dev da estrutura stat do Unix C retornado pela chamada do sistema (system call) lstat. Retorna 0 ou FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo da linkinfo()

<?php

echo linkinfo('/vmlinuz'); // 835

?>

Notas

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • symlink() - Cria um link simbólico
  • link() - Criando um hard link
  • readlink() - Retornar o alvo de um link simbólico

link
lstat
Funções para Sistema de arquivo


Obtém informações sobre um arquivo ou link simbólico

linkinfo
mkdir
Funções para Sistema de arquivo
PHP Manual

lstat

(PHP 4, PHP 5)

lstat — Obtém informações sobre um arquivo ou link simbólico

Descrição

array lstat ( string $filename )

Pega as estatísticas do arquivo ou link simbólico com o nome de filename.

Parâmetros

filename

Path to a file or a symbolic link.

Valor Retornado

Veja a página do manual para stat() para informações sobre a estrutura do array retornado que lstat() retorna. Esta função é identica a stat() exceto que se o parâmetro filename é um link simbólico, e o status do link simbólico é retornado e não o status do arquivo apontando pelo link simbólico.

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • stat() - Obtem informações sobre um arquivo

linkinfo
mkdir
Funções para Sistema de arquivo


Cria um diretório

lstat
move_uploaded_file
Funções para Sistema de arquivo
PHP Manual

mkdir

(PHP 4, PHP 5)

mkdir — Cria um diretório

Descrição

bool mkdir ( string $pathname [, int $mode [, bool $recursive [, resource $context ]]] )

Tenta criar o diretório especificado pelo caminho pathname.

Parâmetros

pathname

O caminho do diretório.

mode

O modo padrão é 0777, que significa o acesso mais abrangente possível. Para mais informações sobre os modos, leia os detalhes na página da chmod().

Nota:

O parâmetro mode é ignorado no Windows.

Note que você provavelmente quer especificar o mode como um número octal, o que significa que ele deve ter o zero inicial. O mode é também modificado pela umaks atual, que você pode mudar usando umask().

recursive

O padrão é FALSE.

context

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | O parâmetro recursive foi adicionado
5.0.0 | A partir do PHP 5.0.0, mkdir() também pode ser usada com alguns wrappers de URL. Veja em Supported Protocols and Wrappers uma lista de quais wrappers suportam mkdir()
4.2.0 | O parâmetro mode tornou-se opcional.

Exemplos

Exemplo #1 Exemplo de mkdir()

<?php
mkdir("/path/to/my/dir", 0700);
?>

Notas

Nota: Quando o safe-mode está ativo, o PHP verifica se o diretório no qual o script está em operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • rmdir() - Remove um diretório

lstat
move_uploaded_file
Funções para Sistema de arquivo


Move um arquivo enviado para uma nova localização

mkdir
parse_ini_file
Funções para Sistema de arquivo
PHP Manual

move_uploaded_file

(PHP 4 >= 4.0.3, PHP 5)

move_uploaded_file — Move um arquivo enviado para uma nova localização

Descrição

bool move_uploaded_file ( string $filename , string $destination )

Esta função verifica para ter certeza de que o arquivo designado por filename é um arquivo de upload válido (que tenha sido enviado pelo mecanismo PHP de envio por POST HTTP). Se o arquivo for válido, ele será movido para o nome de arquivo dado por destination.

Este tipo de verificação é especialmente imporante se existir alguma change que qualquer coisa feita com os arquivos enviados possa revelar seu conteúdo ao usuário, ou mesmo para outros usuários no memo sistema.

Parâmetros

filename

O nome do arquivo enviado.

destination

O destino do arquivo movido.

Valor Retornado

Se filename não for um arquivo enviado válido, então nenhuma ação ocorrerá e move_uploaded_file() retornará FALSE.

Se filename for um arquivo enviado válido, mas não puder ser movido por alguma razão, nenhuma ação ocorrerá e move_uploaded_file() retornará FALSE. Adicionalmente, um alerta será emitido.

Notas

Nota:

move_uploaded_file() é afetado tanto por safe mode quanto por open_basedir. Entretanto, restrições são aplicadas apenas no caminho de destination para permitir que arquivos onde filename venha a conflitar com tais restrições possam ser movidos. move_uploaded_file() assegura a segurança desta operação permitindo que apenas arquivos carregados pelo PHP possam ser movidos.

Aviso

Se o arquivo de destino já existir, ele será sobrescrito.

Veja Também

  • is_uploaded_file() - Diz se o arquivo foi enviado por POST HTTP
  • Veja Gerenciar o upload de arquivos para um exemplo de uso simples

mkdir
parse_ini_file
Funções para Sistema de arquivo


Interpreta um arquivo de configuração

move_uploaded_file
parse_ini_string
Funções para Sistema de arquivo
PHP Manual

parse_ini_file

(PHP 4, PHP 5)

parse_ini_file — Interpreta um arquivo de configuração

Descrição

array parse_ini_file ( string $filename [, bool $process_sections ] )

parse_ini_file() carrega o arquivo INI especificado em filename e retorna as configurações contidas nele em um array associativo.

A estrutura do arquivo INI é a mesma do php.ini.

Parâmetros

filename

O nome do arquivo INI sendo interpretado.

process_sections

Definindo o último parâmetro process_sections como TRUE, você recupera um array multidimensional com o nome das seções e configurações inclusas. O padrão para process_sections é FALSE

Valor Retornado

As configurações são retornadas como um array associativo.

Histórico

Versão | Descrição
5.2.4 | Chaves e nomes de seção que consistem de números, agora são interpretados como inteiros, de forma que números iniciados por 0 são interpretados como octais e números iniciados por 0x são interpretados como hexadecimais.
5.0.0 | Valores envolvidos em aspas duplas podem conter novas linhas.
4.2.1 | Esta função agora é afetada por safe mode e open_basedir.

Exemplos

Exemplo #1 Conteúdo de sample.ini

; Este é um arquivo de configuração de exemplo
; Comentários iniciam com ';', como no php.ini

[primeira_secao]
um = 1
cinco = 5
animal = PASSARO

[segunda_secao]
path = "/usr/local/bin"
URL = "http://www.example.com/~username"

Exemplo #2 Exemplo de parse_ini_file()

Constantes também podem ser interpretadas no arquivo INI, então se você definir uma constante como um valor INI antes de executar parse_ini_file(), ela será integrada ao resultado. Somente valores INI são avaliados. Por exemplo:

<?php

define('PASSARO', 'Pássaro Dodo');

// Interpreta sem as seções
$ini_array = parse_ini_file("sample.ini");
print_r($ini_array);

// Interpreta com as seções
$ini_array = parse_ini_file("sample.ini", true);
print_r($ini_array);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [um] => 1
    [cinco] => 5
    [animal] => Pássaro Dodo
    [path] => /usr/local/bin
    [URL] => http://www.example.com/~username
)
Array
(
    [primeira_secao] => Array
        (
            [um] => 1
            [cinco] => 5
            [animal] = Dodo bird
        )

    [segunda_secao] => Array
        (
            [path] => /usr/local/bin
            [URL] => http://www.example.com/~username
        )

)

Notas

Nota:

Essa função não tem nada a ver com o arquivo php.ini. Ele já está processado no momento em que você executa seu script. Esta função pode ser usada para ler os arquivos de configuração da sua própria aplicação.

Nota:

Se um valor no arquivo INI tiver algum caractere não alfanumérico, ele precisará ser envolvido em aspas duplas (").

Nota: Existem algumas palavras reservadas que não podem ser usadas como chaves em arquivos INI. Elas incluem: null, yes, no, true e false. Valores null, no e false retornam como "", yes e true retormam como "1". Os caracteres {}|&~![()" não podem ser usados em lugar algum na chave e têm significado especial no valor.

move_uploaded_file
parse_ini_string
Funções para Sistema de arquivo


Parse a configuration string

parse_ini_file
pathinfo
Funções para Sistema de arquivo
PHP Manual

parse_ini_string

(PHP 5 >= 5.3.0)

parse_ini_string — Parse a configuration string

Descrição

array parse_ini_string ( string $ini [, bool $process_sections = false [, int $scanner_mode = INI_SCANNER_NORMAL ]] )

parse_ini_string() returns the settings in string ini in an associative array.

The structure of the ini string is the same as the php.ini's.

Parâmetros

ini

The contents of the ini file being parsed.

process_sections

By setting the process_sections parameter to TRUE, you get a multidimensional array, with the section names and settings included. The default for process_sections is FALSE

scanner_mode

Can either be INI_SCANNER_NORMAL (default) or INI_SCANNER_RAW. If INI_SCANNER_RAW is supplied, then option values will not be parsed.

Valor Retornado

The settings are returned as an associative array on success, and FALSE on failure.

Notas

Nota: There are reserved words which must not be used as keys for ini files. These include: null, yes, no, true, false, on, off, none. Values null, no and false results in "", yes and true results in "1". Characters ?{}|&~![()^" must not be used anywhere in the key and have a special meaning in the value.

Veja Também

  • parse_ini_file() - Interpreta um arquivo de configuração

parse_ini_file
pathinfo
Funções para Sistema de arquivo


Retorna informações sobre um caminho de arquivo

parse_ini_string
pclose
Funções para Sistema de arquivo
PHP Manual

pathinfo

(PHP 4 >= 4.0.3, PHP 5)

pathinfo — Retorna informações sobre um caminho de arquivo

Descrição

mixed pathinfo ( string $path [, int $options ] )

pathinfo() retorna um array associativo contendo inforamações sobre o caminho em path.

Parâmetros

path

O caminho sendo verificado.

options

Você pode especificar quais elementos são retornados com o parâmetro opcional options. Ele é composto de PATHINFO_DIRNAME, PATHINFO_BASENAME, PATHINFO_EXTENSION e PATHINFO_FILENAME. O padrão é retornar todos os elementos.

Valor Retornado

Os seguintes elementos do array associativo são retornados: dirname, basename, extension (se alguma) e filename.

Se options for utilizada, esta função retornará uma string se todos os elementos não forem solicitados.

Histórico

Versão | Descrição
5.2.0 | A constante PATHINFO_FILENAME foi adicionada.

Exemplos

Exemplo #1 Exemplo de pathinfo()

<?php
$path_parts = pathinfo('/www/htdocs/index.html');

echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // desde o PHP 5.2.0
?>

O exemplo acima irá imprimir:

/www/htdocs
index.html
html
index

Notas

Nota:

Para informações de como resgatar informações do caminho atual, leia a seção de varíaveis reservadas pré-definidas.

Veja Também

  • dirname() - Retorna o componente diretório de um caminho/path
  • basename() - Retorna a parte nome do arquivo do caminho/path
  • parse_url() - Interpreta uma URL e retorna os seus componentes
  • realpath() - Retorna o path absoluto canonicalizado

parse_ini_string
pclose
Funções para Sistema de arquivo


Fecha um processo de um ponteiro de arquivo

pathinfo
popen
Funções para Sistema de arquivo
PHP Manual

pclose

(PHP 4, PHP 5)

pclose — Fecha um processo de um ponteiro de arquivo

Descrição

int pclose ( resource $handle )

Fecha um ponteiro de arquivo a uma pipe aberta por popen().

Parâmetros

handle

O ponteiro de arquivo tem que ser válido e tem que ser retornado por uma chamada bem sucedida a função popen().

Valor Retornado

Retorna o status da finalização do processo que estava executando.

Veja Também

  • popen() - Abre um processo como ponteiro de arquivo

pathinfo
popen
Funções para Sistema de arquivo


Abre um processo como ponteiro de arquivo

pclose
readfile
Funções para Sistema de arquivo
PHP Manual

popen

(PHP 4, PHP 5)

popen — Abre um processo como ponteiro de arquivo

Descrição

resource popen ( string $command , string $mode )

Abre uma pipe para um processo executado ao se dar um fork para o comando dado por command.

Parâmetros

command

O comando

mode

O modo

Valor Retornado

Retorna um ponteiro de arquivo idêntico ao retornado por fopen(), exceto que ele é unidirecional (somente pode ser usado para leitura ou gravação) e tem que ser fechado com pclose. Este ponteiro pode ser usado com fgets(), fgetss() e fwrite().

Caso um erro ocorra retorna FALSE.

Exemplos

Exemplo #1 Exemplo de popen()

<?php
$handle = popen ("/bin/ls", "r");
?>

Se o comando a ser executado não for encontrado um recurso válido será retornado. Isso pode parecer esquisito, mas tem sentido: permite que você acesse a mensagem de erro retornado pelo sistema operacional.

Exemplo #2 Exemplo da popen()

<?php
error_reporting(E_ALL);

/* Add redirection so we can get stderr. */
$handle = popen('/path/to/spooge 2>&1', 'r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);
?>

Notas

Nota:

Se você precisa de suporte bidirecional (dois caminhos), use proc_open().

Nota: Quando o safe mode estiver ativo, você só pode chamar executáveis dentro de safe_mode_exec_dir. Por razões práticas não é permitido haver .. no caminho do executável.

Aviso

Com safe mode ativado, a string do comando é escapada com escapeshellcmd(). Então, echo y | echo x vira echo y \| echo x.

Veja Também

  • pclose() - Fecha um processo de um ponteiro de arquivo
  • fopen() - Abre um arquivo ou URL
  • proc_open() - Executa um comando e abre ponteiros para entrada e saída

pclose
readfile
Funções para Sistema de arquivo


Lê e exibe o conteúdo de um arquivo

popen
readlink
Funções para Sistema de arquivo
PHP Manual

readfile

(PHP 4, PHP 5)

readfile — Lê e exibe o conteúdo de um arquivo

Descrição

int readfile ( string $nomedoarquivo [, bool $use_include_path [, resource $context ]] )

Lê um arquivo e escreve o seu conteúdo para o buffer de saída (output buffer).

Parâmetros

filename

O nome do arquivo a ser lido.

use_include_path

Você pode usar o segundo parâmetro opcional e o configurar para TRUE, se você quiser procurar o arquivo no include_path também.

context

A context stream resource.

Valor Retornado

Retorna o número de bytes lidos do arquivo. Se um erro ocorrer, FALSE é retornado a menos que a função seja chamada com @readfile(), um erro é imprimido.

Notas

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Veja Também

  • fpassthru() - Imprime todo os dados restantes de um ponteiro de arquivo
  • file() - Lê todo o arquivo para um array
  • fopen() - Abre um arquivo ou URL
  • include() - include
  • require() - require
  • virtual() - Realiza uma sub-requisição no Apache
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string
  • Supported Protocols and Wrappers

popen
readlink
Funções para Sistema de arquivo


Retornar o alvo de um link simbólico

readfile
realpath_cache_get
Funções para Sistema de arquivo
PHP Manual

readlink

(PHP 4, PHP 5)

readlink — Retornar o alvo de um link simbólico

Descrição

string readlink ( string $path )

readlink() faz o mesmo que a função do C.

Parâmetros

path

O caminho para o link simbólico.

Valor Retornado

Retorna o conteúdo do caminho do link simbólico ou FALSE em erro.

Exemplos

Exemplo #1 Exemplo de readlink()

<?php

// Exibe algo como /boot/vmlinux-2.4.20-xfs
echo readlink('/vmlinuz');

?>

Notas

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • is_link() - Diz se o arquivo é um link simbólico (symbolic link)
  • symlink() - Cria um link simbólico
  • linkinfo() - Ler informações sobre um link

readfile
realpath_cache_get
Funções para Sistema de arquivo


Get realpath cache entries

readlink
realpath_cache_size
Funções para Sistema de arquivo
PHP Manual

realpath_cache_get

(PHP 5 >= 5.3.2)

realpath_cache_get — Get realpath cache entries

Descrição

array realpath_cache_get ( void )

Get the contents of the realpath cache.

Valor Retornado

Returns an array of realpath cache entries. The keys are original path entries, and the values are arrays of data items, containing the resolved path, expiration date, and other options kept in the cache.

Exemplos

Exemplo #1 realpath_cache_get() example

<?php
var_dump(realpath_cache_get());
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["/test"]=>
  array(4) {
    ["key"]=>
    int(123456789)
    ["is_dir"]=>
    bool(true)
    ["realpath"]=>
    string(5) "/test"
    ["expires"]=>
    int(1260318939)
  }
  ["/test/test.php"]=>
  array(4) {
    ["key"]=>
    int(987654321)
    ["is_dir"]=>
    bool(false)
    ["realpath"]=>
    string(12) "/root/test.php"
    ["expires"]=>
    int(1260318939)
  }
}

Veja Também

  • realpath_cache_size() - Get realpath cache size

readlink
realpath_cache_size
Funções para Sistema de arquivo


Get realpath cache size

realpath_cache_get
realpath
Funções para Sistema de arquivo
PHP Manual

realpath_cache_size

(PHP 5 >= 5.3.2)

realpath_cache_size — Get realpath cache size

Descrição

int realpath_cache_size ( void )

Get the amount of memory used by the realpath cache.

Valor Retornado

Returns how much memory realpath cache is using.

Exemplos

Exemplo #1 realpath_cache_size() example

<?php
var_dump(realpath_cache_size());
?>

O exemplo acima irá imprimir algo similar a:

int(412)

Veja Também

  • realpath_cache_get() - Get realpath cache entries

realpath_cache_get
realpath
Funções para Sistema de arquivo


Retorna o path absoluto canonicalizado

realpath_cache_size
rename
Funções para Sistema de arquivo
PHP Manual

realpath

(PHP 4, PHP 5)

realpath — Retorna o path absoluto canonicalizado

Descrição

string realpath ( string $path )

realpath() expande todos os links simbólicos e resolve referências para '/./', '/../' e extra caracteres '/' na entrada pelo path, e retorna o path absoluto canonicalizado.

Parâmetros

path

O caminho a ser verificado.

Valor Retornado

Retorna o path absoluto em sucesso. O path resultante não conterá nenhum link simbólico ou componentes '/./' e '/../'.

realpath() retorna FALSE em caso de falha, por exemplo, se o caminho não existir. Em sistemas BSD realpath() não falha se somente o último componente do path não existe, quando em outro sistema irá retornar FALSE.

Exemplos

Exemplo #1 Exemplo da realpath()

<?php
chdir('/var/www/');
echo realpath('./../../etc/passwd');
?>

O exemplo acima irá imprimir:

/etc/passwd

Exemplo #2 realpath() em Windows

Em Windows, realpath() modificará o estilo unix de diretórios para o estilo Windows.

<?php
echo realpath('/windows/system32');
?>

O exemplo acima irá imprimir:

C:\WINDOWS\System32

Veja Também

  • basename() - Retorna a parte nome do arquivo do caminho/path
  • dirname() - Retorna o componente diretório de um caminho/path
  • pathinfo() - Retorna informações sobre um caminho de arquivo

realpath_cache_size
rename
Funções para Sistema de arquivo


Renomeia um arquivo ou diretório

realpath
rewind
Funções para Sistema de arquivo
PHP Manual

rename

(PHP 4, PHP 5)

rename — Renomeia um arquivo ou diretório

Descrição

bool rename ( string $oldname , string $newname [, resource $context ] )

Tenta renomear oldname para newname.

Parâmetros

oldname

Nota:

O nome antigo. O wrapper usado em oldname precisa combinar com o wrapper usado em newname.

newname

O novo nome.

context

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | rename() pode agora também ser usada com algum URL wrappers. Consulte Supported Protocols and Wrappers para uma lista de wrappers que rename() suporta.
4.3.3 | rename() agora pode renomear arquivos de diferente partições em sistemas baseados em *nix.

Exemplos

Exemplo #1 Exemplo da rename()

<?php
  rename("/tmp/tmp_file.txt", "/home/user/login/docs/my_file.txt");
?>

Veja Também

  • copy() - Copia arquivo
  • unlink() - Apaga um arquivo
  • move_uploaded_file() - Move um arquivo enviado para uma nova localização

realpath
rewind
Funções para Sistema de arquivo


Reinicializa a posição do ponteiro de arquivos para o início

rename
rmdir
Funções para Sistema de arquivo
PHP Manual

rewind

(PHP 4, PHP 5)

rewind — Reinicializa a posição do ponteiro de arquivos para o início

Descrição

bool rewind ( resource $handle )

Muda o indicador de ponteiro de arquivo handle para o início do stream do arquivo.

Nota:

Se você abriu arquivo no modo append ("a" ou "a+"), qualquer informação que você escrever para o arquivo será sempre adicionada, desconsiderando a posição no arquivo.

Parâmetros

handle

O ponteiro de arquivo tem que ser válido e tem que apontar para um arquivo aberto com sucesso por fopen().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fseek() - Procura (seeks) em um ponteiro de arquivo
  • ftell() - Retorna a posição de leitura/gravação do ponteiro do arquivo

rename
rmdir
Funções para Sistema de arquivo


Remove um diretório

rewind
set_file_buffer
Funções para Sistema de arquivo
PHP Manual

rmdir

(PHP 4, PHP 5)

rmdir — Remove um diretório

Descrição

bool rmdir ( string $dirname [, resource $context ] )

Tenta remover o diretório com o nome de dirname. O diretório tem que estar vazio e as permissões relevantes autorizarem a esta operação.

Parâmetros

dirname

Caminho para o diretório.

context

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | No PHP 5.0.0 rmdir() pode também ser usada com alguns URL wrappers. Consulte Supported Protocols and Wrappers para uma listagem de wrappers suportados pela rmdir().

Notas

Nota: Quando o safe-mode está ativo, o PHP verifica se o diretório no qual o script está em operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • mkdir() - Cria um diretório
  • unlink() - Apaga um arquivo

rewind
set_file_buffer
Funções para Sistema de arquivo


Sinônimo de stream_set_write_buffer

rmdir
stat
Funções para Sistema de arquivo
PHP Manual

set_file_buffer

(PHP 4, PHP 5)

set_file_buffer — Sinônimo de stream_set_write_buffer()

Descrição

Esta função é um apelido para: stream_set_write_buffer().

rmdir
stat
Funções para Sistema de arquivo


Obtem informações sobre um arquivo

set_file_buffer
symlink
Funções para Sistema de arquivo
PHP Manual

stat

(PHP 4, PHP 5)

stat — Obtem informações sobre um arquivo

Descrição

array stat ( string $filename )

Coleta estatísticas do arquivo informado em filename. Se filename for um link simbólico, estatísticas serão do próprio arquivo, não do link.

lstat() é idêntica a stat() exceto que ela foi baseada no status de links simbólicos.

Parâmetros

filename

Caminho para o arquivo.

Valor Retornado

Formato de retorno de stat() e fstat()
Índice Numérico | Índice Associativo (desde o PHP 4.0.6) | Descrição
0 | dev | número do dispositivo
1 | ino | número do inode
2 | mode | modo de proteção do inode
3 | nlink | número de links
4 | uid | userid do proprietário
5 | gid | groupid do proprietário
6 | rdev | tipo de dispositivo
7 | size | tamanho em bytes
8 | atime | hora do último acesso (Unix timestamp)
9 | mtime | hora da última modificação (Unix timestamp)
10 | ctime | hora da última modificação do inode (Unix timestamp)
11 | blksize | tamanho do bloco no sistema de arquivos
12 | blocks | número de blocos alocados
* Somente válido em sistemas suportando o tipo st_blksize - outros sistemas (e.g. Windows) retorna -1.

Em caso de erro, stat() retorna FALSE.

Erros

Em caso de falha, um E_WARNING é emitido.

Histórico

Versão | Descrição
4.0.6 | Além de retornar estes atributos em um array numérico, eles podem ser acessados com índices associativos, como notado para cada parâmetro

Notas

Nota: O resultado desta função é cacheada. Veja clearstatcache() para mais detalhes.

Dica

A partir do PHP 5.0.0, esta função também pode ser utilizada com alguns wrappers URL. Veja Supported Protocols and Wrappers para uma lista de quais wrappers são suportados pela família de funções stat().

Veja Também

  • lstat() - Obtém informações sobre um arquivo ou link simbólico
  • fstat() - Lê informações sobre um arquivo usando um ponteiro de arquivo aberto
  • filemtime() - Obtém o tempo de modificação do arquivo
  • filegroup() - Lê o grupo do arquivo

set_file_buffer
symlink
Funções para Sistema de arquivo


Cria um link simbólico

stat
tempnam
Funções para Sistema de arquivo
PHP Manual

symlink

(PHP 4, PHP 5)

symlink — Cria um link simbólico

Descrição

bool symlink ( string $alvo , string $link )

symlink() cria um link simbólico do alvo existente com o nome especificado em link.

Parâmetros

target

Alvo do link.

link

O nome do link.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • link() - Criando um hard link para criar links físicos
  • readlink() - Retornar o alvo de um link simbólico de acordo com linkinfo() - Ler informações sobre um link

stat
tempnam
Funções para Sistema de arquivo


Cria um nome de arquivo único

symlink
tmpfile
Funções para Sistema de arquivo
PHP Manual

tempnam

(PHP 4, PHP 5)

tempnam — Cria um nome de arquivo único

Descrição

string tempnam ( string $dir , string $prefix )

Cria um arquivo, com permissão de acesso definida para 0600, no diretório especificado. Se o diretório não existe, tempnam() pode gerar o nome de arquivo no diretório temporário do sistema. Retorna o nome gerado.

Parâmetros

dir

O diretório onde o arquivo temporário será criado.

prefix

O prefixo do nome do arquivo temporário gerado.

Valor Retornado

Retorna o novo nome do arquivo temporário, ou FALSE em falha.

Histórico

Versão | Descrição
4.0.6 | Antes do PHP 4.0.6 o comportamento da função tempnam() era dependente do sistema. No Windows a váriavel de ambiente do sistema TMP irá sobreescrever o parâmetro dir; no Linux a váriavel de ambiente TMPDIR tem precedência, enquanto SVR4 irá sempre usar o parâmetro dir se o diretório para o qual ele aponta existe. Consulte a documentação do seu sistema para a função tempnam(3) na dúvida.
4.0.3 | O comportamento desta função mudou na versão 4.0.3. O arquivo temporário é também criado para evitar uma condição de corrida (race) onde o arquivo pode aparecer no filesystem entre o tempo que a string foi gerada e antes que o script tem tempo para criar o arquivo. Note que você precisa remover o arquivo caso não vá mais utilizá-lo, pois isso não é feito automaticamente.

Exemplos

Exemplo #1 Exemplo da tempnam()

<?php
$tmpfname = tempnam ("/tmp", "FOO");

$handle = fopen($tmpfname, "w");
fwrite($handle, "writing to tempfile");
fclose($handle);

// fazer alguma coisa

unlink($tmpfname);
?>

Notas

Nota: Se o PHP não conseguir criar um arquivo informado em dir, deve ser por causa de um erro no default do sistema.

Veja Também

  • tmpfile() - Cria um arquivo temporário
  • sys_get_temp_dir() - Returns directory path used for temporary files
  • unlink() - Apaga um arquivo

symlink
tmpfile
Funções para Sistema de arquivo


Cria um arquivo temporário

tempnam
touch
Funções para Sistema de arquivo
PHP Manual

tmpfile

(PHP 4, PHP 5)

tmpfile — Cria um arquivo temporário

Descrição

resource tmpfile ( void )

Cria um arquivo temporário com um nome único em modo de leitura-gravação (w+) e retorna o manipulador do arquivo.

Para detalhes consulte a documentação do seu sistem na função tmpfile(3), assim como o header stdio.h.

Valor Retornado

Retorna o manipulador de arquivo, similar ao retornado pela fopen(), para o novo arquivo, ou FALSE em falha.

Exemplos

Exemplo #1 Exemplo da tmpfile()

<?php
$temp = tmpfile();
fwrite($temp, "escrevendo no arquivo temporario");
fseek($temp, 0);
echo fread($temp, 1024);
fclose($temp); // isto remove o arquivo
?>

O exemplo acima irá imprimir:

writing to tempfile

Veja Também

  • tempnam() - Cria um nome de arquivo único
  • sys_get_temp_dir() - Returns directory path used for temporary files

tempnam
touch
Funções para Sistema de arquivo


Muda o tempo de modificação do arquivo

tmpfile
umask
Funções para Sistema de arquivo
PHP Manual

touch

(PHP 4, PHP 5)

touch — Muda o tempo de modificação do arquivo

Descrição

bool touch ( string $filename [, int $time [, int $atime ]] )

Tenta mudar o tempo de acesso e modificação do arquivo filename para o valor informado em time. Note que a data/hora do último acesso do arquivo sempre é alterado, independentemente do número de parâmetros.

Se o arquivo não existe, ele será criado.

Parâmetros

filename

O nome do arquivo a ser atualizado.

time

Hora da atualização. Se time não é fornecido, o tempo atual do sistema é usado.

atime

Se informado, o tempo do acesso do dado arquivo é definido para o valor de atime

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da função touch()

<?php
if (touch ($nomedoarquivo)) {
    print "o tempo do $nomedoarquivo foi modificado para o dia e hora atual";
} else {
    print "Desculpe, não foi possivel modificar o tempo de $nomedoarquivo";
}
?>

Notas

Aviso

Não é atualmente possível modificar a hora de modificação de um diretório com esta função no Windows.

tmpfile
umask
Funções para Sistema de arquivo


Modificar a umask atual

touch
unlink
Funções para Sistema de arquivo
PHP Manual

umask

(PHP 4, PHP 5)

umask — Modificar a umask atual

Descrição

int umask ([ int $mask ] )

umask() modifica o umask do PHP para a mask & 0777 e retorna o umask antigo. Quando o PHP está sendo utilizado como um módulo do servidor, o umask é restaurado ao final de cada pedido.

Parâmetros

mask

A nova máscara.

Valor Retornado

umask() sem argumentos simplesmente retorna o umask atual caso contrário a velha umask é retornada.

Exemplos

Exemplo #1 Exemplo da umask()

<?php
$old = umask(0);
chmod("/path/some_dir/some_file.txt", 0755);
umask($old);

// Checking
if ($old != umask()) {
    die('An error occured while changing back the umask');
}
?>

Notas

Nota:

Evite usar esta função em servidores web multithreaded. É melhoer modificar as permissões do arquivo com chmod() depois de criar o arquivo. Usando umask() pode levar a comportamento inesperado de scripts executados concorrentemente e do próprio webserver por causa deles usarem a mesma umask.

touch
unlink
Funções para Sistema de arquivo


Apaga um arquivo

umask
Inotify
Funções para Sistema de arquivo
PHP Manual

unlink

(PHP 4, PHP 5)

unlink — Apaga um arquivo

Descrição

int unlink ( string $filename [, resource $context ] )

Deleta filename. Similar a função do C no Unix unlink().

Parâmetros

filename

Caminho para o arquivo.

context

Nota: O suporte ao contexto foi adicionado com o PHP 5.0.0. Para uma descrição de contextos, veja Stream Funções

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | No PHP 5.0.0 unlink() pode também ser usada com alguns URL wrappers. Consulte Supported Protocols and Wrappers para uma listagem de wrappers que são suportados na unlink().

Veja Também

  • rmdir() - Remove um diretório for removing directories

umask
Inotify
Funções para Sistema de arquivo


Inotify

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação/Configuração
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Inotify Funções
    • inotify_add_watch — Add a watch to an initialized inotify instance
    • inotify_init — Initialize an inotify instance
    • inotify_queue_len — Return a number upper than zero if there are pending events
    • inotify_read — Read events from an inotify instance
    • inotify_rm_watch — Remove an existing watch from an inotify instance
unlink
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

The inotify extension exposes the inotify functions inotify_init(), inotify_add_watch() and inotify_rm_watch().

As the C inotify_init() function returns a file descriptor, PHP's inotify_init() returns a stream resource, usable with standard stream functions, like stream_select(), stream_set_blocking() and fclose(). inotify_read() replaces the C way of reading inotify events.

Inotify
Instalação/Configuração
Inotify


Instalação/Configuração

Índice

  • Dependências
  • Instalação/Configuração
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Inotify


Dependências

This extension requires Linux 2.6.13 or newer, and a recent libC.

Instalação/Configuração
Instalação/Configuração
Instalação/Configuração


Instalação/Configuração
PHP Manual

Instalação/Configuração

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/inotify.

Dependências
Configurações em Execução
Instalação/Configuração
PHP Manual


Configurações em Execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Instalação/Configuração
Tipos Resource
Instalação/Configuração


Tipos Resource

This extension defines a stream resource returned by inotify_init().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Inotify constants usable with inotify_add_watch() and/or returned by inotify_read()
IN_ACCESS (integer)
File was accessed (read) (*)
IN_MODIFY (integer)
File was modified (*)
IN_ATTRIB (integer)
Metadata changed (e.g. permissions, mtime, etc.) (*)
IN_CLOSE_WRITE (integer)
File opened for writing was closed (*)
IN_CLOSE_NOWRITE (integer)
File not opened for writing was closed (*)
IN_OPEN (integer)
File was opened (*)
IN_MOVED_TO (integer)
File moved into watched directory (*)
IN_MOVED_FROM (integer)
File moved out of watched directory (*)
IN_CREATE (integer)
File or directory created in watched directory (*)
IN_DELETE (integer)
File or directory deleted in watched directory (*)
IN_DELETE_SELF (integer)
Watched file or directory was deleted
IN_MOVE_SELF (integer)
Watch file or directory was moved
IN_CLOSE (integer)
Equals to IN_CLOSE_WRITE | IN_CLOSE_NOWRITE
IN_MOVE (integer)
Equals to IN_MOVED_FROM | IN_MOVED_TO
IN_ALL_EVENTS (integer)
Bitmask of all the above constants
IN_UNMOUNT (integer)
File system containing watched object was unmounted
IN_Q_OVERFLOW (integer)
Event queue overflowed (wd is -1 for this event)
IN_IGNORED (integer)
Watch was removed (explicitly by inotify_rm_watch() or because file was removed or filesystem unmounted
IN_ISDIR (integer)
Subject of this event is a directory
IN_ONLYDIR (integer)
Only watch pathname if it is a directory (Since Linux 2.6.15)
IN_DONT_FOLLOW (integer)
Do not dereference pathname if it is a symlink (Since Linux 2.6.15)
IN_MASK_ADD (integer)
Add events to watch mask for this pathname if it already exists (instead of replacing mask).
IN_ONESHOT (integer)
Monitor pathname for one event, then remove from watch list.

Nota: The events marked with an asterisk (*) above can occur for files in watched directories.

Tipos Resource
Inotify Funções
Inotify


Inotify Funções

Índice

  • inotify_add_watch — Add a watch to an initialized inotify instance
  • inotify_init — Initialize an inotify instance
  • inotify_queue_len — Return a number upper than zero if there are pending events
  • inotify_read — Read events from an inotify instance
  • inotify_rm_watch — Remove an existing watch from an inotify instance
Constantes pré-definidas
inotify_add_watch
Inotify


Add a watch to an initialized inotify instance

Inotify Funções
inotify_init
Inotify Funções
PHP Manual

inotify_add_watch

(PECL inotify >= 0.1.2)

inotify_add_watch — Add a watch to an initialized inotify instance

Descrição

int inotify_add_watch ( resource $inotify_instance , string $pathname , int $mask )

inotify_add_watch() adds a new watch or modify an existing watch for the file or directory specified in pathname.

Using inotify_add_watch() on a watched object replaces the existing watch. Using the IN_MASK_ADD constant adds (OR) events to the existing watch.

Parâmetros

inotify_instance

Resource retornado pela inotify_init()

pathname

File or directory to watch

mask

Events to watch for. See Constantes Pré-definidas.

Valor Retornado

The return value is a unique (inotify instance wide) watch descriptor.

Veja Também

  • inotify_init() - Initialize an inotify instance

Inotify Funções
inotify_init
Inotify Funções


Initialize an inotify instance

inotify_add_watch
inotify_queue_len
Inotify Funções
PHP Manual

inotify_init

(PECL inotify >= 0.1.2)

inotify_init — Initialize an inotify instance

Descrição

resource inotify_init ( void )

Initialize an inotify instance for use with inotify_add_watch()

Valor Retornado

A stream resource or FALSE on error.

Exemplos

Exemplo #1 Example usage of inotify

<?php
// Open an inotify instance
$fd = inotify_init();

// Watch __FILE__ for metadata changes (e.g. mtime)
$watch_descriptor = inotify_add_watch($fd, __FILE__, IN_ATTRIB);

// generate an event
touch(__FILE__);

// Read events
$events = inotify_read($fd);
print_r($events);

// The following methods allows to use inotify functions without blocking on inotify_read():

// - Using stream_select() on $fd:
$read = array($fd);
$write = null;
$except = null;
stream_select($read,$write,$except,0);

// - Using stream_set_blocking() on $fd
stream_set_blocking($fd, 0);
inotify_read($fd); // Does no block, and return false if no events are pending

// - Using inotify_queue_len() to check if event queue is not empty
$queue_len = inotify_queue_len($fd); // If > 0, inotify_read() will not block

// Stop watching __FILE__ for metadata changes
inotify_rm_watch($fd, $watch_descriptor);

// Close the inotify instance
// This may have closed all watches if this was not already done
fclose($fd);

?>

O exemplo acima irá imprimir algo similar a:

array(
  array(
    'wd' => 1,     // Equals $watch_descriptor
    'mask' => 4,   // IN_ATTRIB bit is set
    'cookie' => 0, // unique id to connect related events (e.g.
                   // IN_MOVE_FROM and IN_MOVE_TO events)
    'name' => '',  // the name of a file (e.g. if we monitored changes
                   // in a directory)
  ),
);

Veja Também

  • inotify_add_watch() - Add a watch to an initialized inotify instance
  • inotify_rm_watch() - Remove an existing watch from an inotify instance
  • inotify_queue_len() - Return a number upper than zero if there are pending events
  • inotify_read() - Read events from an inotify instance
  • fclose() - Fecha um ponteiro de arquivo aberto

inotify_add_watch
inotify_queue_len
Inotify Funções


Return a number upper than zero if there are pending events

inotify_init
inotify_read
Inotify Funções
PHP Manual

inotify_queue_len

(PECL inotify >= 0.1.2)

inotify_queue_len — Return a number upper than zero if there are pending events

Descrição

int inotify_queue_len ( resource $inotify_instance )

This function allows to know if inotify_read() will block or not. If a number upper than zero is returned, there are pending events and inotify_read() will not block.

Parâmetros

inotify_instance

Resource retornado pela inotify_init()

Valor Retornado

Returns a number upper than zero if there are pending events.

Veja Também

  • inotify_init() - Initialize an inotify instance
  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream

inotify_init
inotify_read
Inotify Funções


Read events from an inotify instance

inotify_queue_len
inotify_rm_watch
Inotify Funções
PHP Manual

inotify_read

(PECL inotify >= 0.1.2)

inotify_read — Read events from an inotify instance

Descrição

array inotify_read ( resource $inotify_instance )

Read inotify events from an inotify instance.

Parâmetros

inotify_instance

Resource retornado pela inotify_init()

Valor Retornado

An array of inotify events or FALSE if no events was pending and inotify_instance is non-blocking. Each event is an array with the following keys:

  • wd is a watch descriptor returned by inotify_add_watch()
  • mask is a bit mask of events
  • cookie is a unique id to connect related events (e.g. IN_MOVE_FROM and IN_MOVE_TO)
  • name is the name of a file (e.g. if a file was modified in a watched directory)

Veja Também

  • inotify_init() - Initialize an inotify instance
  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • inotify_queue_len() - Return a number upper than zero if there are pending events

inotify_queue_len
inotify_rm_watch
Inotify Funções


Remove an existing watch from an inotify instance

inotify_read
Mimetype
Inotify Funções
PHP Manual

inotify_rm_watch

(PECL inotify >= 0.1.2)

inotify_rm_watch — Remove an existing watch from an inotify instance

Descrição

bool inotify_rm_watch ( resource $inotify_instance , int $watch_descriptor )

inotify_rm_watch() removes the watch watch_descriptor from the inotify instance inotify_instance.

Parâmetros

inotify_instance

Resource retornado pela inotify_init()

watch_descriptor

Watch to remove from the instance

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • inotify_init() - Initialize an inotify instance

inotify_read
Mimetype
Inotify Funções


Mimetype

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
inotify_rm_watch
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

Aviso

Esta extensão tornou-se obsoleta pela extensão PECL Fileinfo que fornece a mesma funcionalidade (e mais) de uma forma mais limpa.

As funções deste módulo tentam achar o tipo de arquivo e codificação do arquivo olhando certa seqüência mágica de bytes em especificada posição dentro do arquivo. Enquanto não é interessante aprofundar na heurística usada, faça um bom uso disso.

Essa extensão é derivada do Apache mod_mime_magic, que por si mesmo é baseado no comando file mantido por Ian F. Darwin. Veja o código fonte para maiores informações e informações sobre copyright.

Mimetype
Instalação/Configuração
Mimetype


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mimetype


Instalação

Você deve compilar seu PHP com o configure --with-mime-magic para ter suporte às funções mime-type. A extensão necessita de uma cópia simplificada do arquivo magic que é distribuído com o Apache httpd.

Nota:

A opção de configuração foi alterada de --enable-mime-magic para --with-mime-magic desde o PHP 4.3.2

Nota:

Essa extensão não é capaz de manusear completamente o arquivo magic que geralmente vem com distribuições Linux e serão supostamente usadas com recentes versões do comando file.

Nota: Nota para usuários Win32

Para usar este módulo em um ambiente Windows, você deve setar o path para o arquivo magic.mime no seu php.ini.

Exemplo #1 Setando o path para magic.mime

     mime_magic.magicfile ="$PHP_INSTALL_DIR\magic.mime"

Lembre-se de substituir o $PHP_INSTALL_DIR para o seu path atual do PHP no exemplo acima. e.g. c:\php

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração do Mimetype
Name | Default | Changeable | Changelog
mime_magic.debug | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
mime_magic.magicfile | "/path/to/php/magic.mime" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mime_magic.debug bool

Ativa/desativa debugging.

mime_magic.magicfile string

O caminho para o arquivo magic.mime.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
xattr
Mimetype


xattr

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da xattr
    • xattr_get — Retorna um atributo extendido
    • xattr_list — Retorna uma lista dos atributos extendidos
    • xattr_remove — Remove um atributo extendido
    • xattr_set — Edita um atributo extendido
    • xattr_supported — Checa se o sistema de arquivos suporta atributos extendidos.
Constantes pré-definidas
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

A extensão xattr permite a manipulação de atributos extendidos em um sistema de arquivos.

xattr
Instalação/Configuração
xattr


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
xattr


Dependências

Para usar xattr, você precisará ter a biblioteca libattr instalada no seu sistema. Ela está disponível em » http://oss.sgi.com/projects/xfs/.

Nota:

Essas funções só funcionarão em sistemas de arquivos que suportam atributos extendidos, e os quais tenham esses atributos habilitados no momento da montagem. Alguns sistemas de arquivos que suportam atributos extendidos são ext2, ext3, reiserfs, jfs, e xfs.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

xattr está atualmente disponível através da PECL » http://pecl.php.net/package/xattr.

Se » PEAR estiver disponível no seu sistema *nix-like (Linux, BSDs, etc), você pode usar o instalador do PEAR para instalar a extensão xattr, pelo seguinte comando: pear -v install xattr.

Você sempre pode baixar o pacote tar.gz e instalar o xatter manualmente:

Exemplo #1 Instalação manuao do xattr

gunzip xattr-xxx.tgz
tar -xvf xattr-xxx.tar
cd xattr-xxx
phpize
./configure && make && make install

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XATTR_ROOT (integer)
Edita atributo no namespace do administrador. Requer privilégios de root.
XATTR_DONTFOLLOW (integer)
Não segue o link simbólico mas opera no link em si.
XATTR_CREATE (integer)
Função falhará se o atributo extendido já existir.
XATTR_REPLACE (integer)
Função falhará se atributo extendido não existir.
Tipos Resource
Funções da xattr
xattr


Funções da xattr

Índice

  • xattr_get — Retorna um atributo extendido
  • xattr_list — Retorna uma lista dos atributos extendidos
  • xattr_remove — Remove um atributo extendido
  • xattr_set — Edita um atributo extendido
  • xattr_supported — Checa se o sistema de arquivos suporta atributos extendidos.
Constantes pré-definidas
xattr_get
xattr


Retorna um atributo extendido

Funções da xattr
xattr_list
Funções da xattr
PHP Manual

xattr_get

(PECL xattr >= 0.9.0)

xattr_get — Retorna um atributo extendido

Descrição

string xattr_get ( string $filename , string $name [, int $flags ] )

Essa função retorna o valor de um atributo extendido de um arquivo.

Atributos estendidos tem dois namespaces diferentes: usuário e root. O namespace de usuário esta disponível para todos os usuários enquanto o namespace de root esta disponível apenas para o usuario com privilégios de root. xattr opera no namespace de usuário por padrão, mas você pode mudar isso usando o argumento flags.

Parâmetros

filename

O arquivo do qual será pego o atributo.

name

O nome do atributo.

flags

Opções (flags) suportadas por xattr
XATTR_DONTFOLLOW | Não segue o link simbólico mas opera no link em si.
XATTR_ROOT | Edita o atributo no namespace do administrador. Requer privilégios de root.

Valor Retornado

Retorna uma string contento o valor ou FALSE se o atributo não existir.

Exemplos

Exemplo #1 Checa se o adminitrador dos sistema assinou o arquivo

<?php
$file = '/usr/local/sbin/some_binary';
$signature = xattr_get($file, 'Root signature', XATTR_ROOT);

/* ... checa se $signature é válida ... */

?>

Veja Também

  • xattr_list() - Retorna uma lista dos atributos extendidos
  • xattr_set() - Edita um atributo extendido
  • xattr_remove() - Remove um atributo extendido

Funções da xattr
xattr_list
Funções da xattr


Retorna uma lista dos atributos extendidos

xattr_get
xattr_remove
Funções da xattr
PHP Manual

xattr_list

(PECL xattr >= 0.9.0)

xattr_list — Retorna uma lista dos atributos extendidos

Descrição

array xattr_list ( string $filename [, int $flags ] )

Essa função retorna uma lista de nomes dos atributos extendidos de um arquivo.

Atributos estendidos tem dois namespaces diferentes: usuário e root. O namespace de usuário esta disponível para todos os usuários enquanto o namespace de root esta disponível apenas para o usuario com privilégios de root. xattr opera no namespace de usuário por padrão, mas você pode mudar isso usando o argumento flags.

Parâmetros

filename

O caminho do arquivo.

flags

Opções (flags) suportadas por xattr
XATTR_DONTFOLLOW | Não segue o link simbólico mas opera no link em si.
XATTR_ROOT | Trabalho no namespace do adminitrador. Requer privilégios de root.

Valor Retornado

Essa função retorna um array com os nomes do atributos extendidos.

Exemplos

Exemplo #1 Imprime o nome de todos os atributos extendidos do arquivo

<?php
$arquivo = 'algum_arquivo';
$atributos_de_root = xattr_list($arquivo, XATTR_ROOT);
$atributos_de_usuario = xattr_list($arquivo);

echo "Atributos de Root: \n";
foreach ($atributos_de_usuario as $nome_do_atributo) {
    printf("%s\n", $nome_do_atributo);
}

echo "\nAtributos de Usuário: \n";
foreach ($atributos_de_usuario as $nome_do_atributo) {
    printf("%s\n", $nome_do_atributo);
}

?>

Veja Também

  • xattr_get() - Retorna um atributo extendido

xattr_get
xattr_remove
Funções da xattr


Remove um atributo extendido

xattr_list
xattr_set
Funções da xattr
PHP Manual

xattr_remove

(PECL xattr >= 0.9.0)

xattr_remove — Remove um atributo extendido

Descrição

bool xattr_remove ( string $filename , string $name [, int $flags ] )

Essa função remove um atributo extendido de um arquivo.

Atributos estendidos tem dois namespaces diferentes: usuário e root. O namespace de usuário esta disponível para todos os usuários enquanto o namespace de root esta disponível apenas para o usuario com privilégios de root. xattr opera no namespace de usuário por padrão, mas você pode mudar isso usando o argumento flags.

Parâmetros

filename

O arquivo do qual será removido o atributo.

name

O nome do atributo a ser removido.

flags

Opções (flags) Suportadas por xattr
XATTR_DONTFOLLOW | Não segue o link simbólico mas opera no link simbólico em si.
XATTR_ROOT | Muda no namespace para o namespace de root. Requer privilégio de administrador (root).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Remove todos os atributos extendidos de um arquivo

<?php
$arquivo = 'algum_arquivo';
$atributos = xattr_list($arquivo);

foreach ($atributos as $nome_do_atributo) {
    xattr_remove($arquivo, $nome_do_atributo);
}
?>

Veja Também

  • xattr_list() - Retorna uma lista dos atributos extendidos
  • xattr_set() - Edita um atributo extendido
  • xattr_get() - Retorna um atributo extendido

xattr_list
xattr_set
Funções da xattr


Edita um atributo extendido

xattr_remove
xattr_supported
Funções da xattr
PHP Manual

xattr_set

(PECL xattr >= 0.9.0)

xattr_set — Edita um atributo extendido

Descrição

bool xattr_set ( string $filename , string $name , string $value [, int $flags ] )

Essa função edita o valor de um atributo extendido de um arquivo.

Atributos estendidos tem dois namespaces diferentes: usuário e root. O namespace de usuário esta disponível para todos os usuários enquanto o namespace de root esta disponível apenas para o usuario com privilégios de root. xattr opera no namespace de usuário por padrão, mas você pode mudar isso usando o argumento flags.

Parâmetros

filename

O arquivo no qual o atributo será editado.

name

O nome do atributo extendido. Esse atributo será criado se não existir ou substituído caso contrário. Você pode mudar esse comportamento usando o parâmetro flags.

value

O valor do atributo.

flags

Opções (flags) Suportadas por xattr
XATTR_CREATE | Função falhará se o atributo extendido já existir.
XATTR_REPLACE | Função falhará se atributo extendido não existir.
XATTR_DONTFOLLOW | Não segue o link simbólico mas opera no link em si.
XATTR_ROOT | Edita atributo no namespace do administrador. Requer privilégios de root.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Edita atributos extendidos em um arquivo .wav

<?php
$arquivo = 'minha_música_favorita.wav';
xattr_set($arquivo, 'Artista', 'Alguém');
xattr_set($arquivo, 'Minha avaliação', 'Boa');
xattr_set($arquivo, 'Escutei quantas vezes', '34');

/* ... outro código ... */

printf("Você ouviu essa música %d vezes", xattr_get($arquivo, 'Escutei quantas vezes'));
?>

Veja Também

  • xattr_get() - Retorna um atributo extendido
  • xattr_remove() - Remove um atributo extendido

xattr_remove
xattr_supported
Funções da xattr


Checa se o sistema de arquivos suporta atributos extendidos.

xattr_set
xdiff
Funções da xattr
PHP Manual

xattr_supported

(PECL xattr >= 1.0.0)

xattr_supported — Checa se o sistema de arquivos suporta atributos extendidos.

Descrição

bool xattr_supported ( string $filename [, int $flags ] )

Essa função checa se o sistema de arquivos que guarda o arquivo passado por parâmetro suporta atributos extendidos. Permissão de leitura ao arquivo é necessária.

Parâmetros

filename

Caminho para o arquivo testado.

flags

Opções (Flags) Suportadas por xattr
XATTR_DONTFOLLOW Não segue o link simbólico mas opera no link em si.

Valor Retornado

Essa função retorna TRUE se o sistema de arquivos suporta atributos extendidos, FALSE se não suporta e NULL se não poder ser determinado (por exemplo caminho incorreto ou falta de permissão de leitura para o arquivo).

Exemplos

Exemplo #1 Exemplo de chamada de xattr_supported()

O código a seguir checa se pode usar atributos extendidos.

<?php
$arquivo = "algum_arquivo";

if (xattr_supported($arquivo)) {
    /* ... Aproveite e use as outras funções xattr_* ... */
}

?>

Veja Também

  • xattr_get() - Retorna um atributo extendido
  • xattr_list() - Retorna uma lista dos atributos extendidos

xattr_set
xdiff
Funções da xattr


xdiff

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • xdiff Funções
    • xdiff_file_bdiff_size — Read a size of file created by applying a binary diff
    • xdiff_file_bdiff — Make binary diff of two files
    • xdiff_file_bpatch — Patch a file with a binary diff
    • xdiff_file_diff_binary — Alias of xdiff_file_bdiff
    • xdiff_file_diff — Make unified diff of two files
    • xdiff_file_merge3 — Merge 3 files into one
    • xdiff_file_patch_binary — Alias of xdiff_file_bpatch
    • xdiff_file_patch — Patch a file with an unified diff
    • xdiff_file_rabdiff — Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm
    • xdiff_string_bdiff_size — Read a size of file created by applying a binary diff
    • xdiff_string_bdiff — Make binary diff of two strings
    • xdiff_string_bpatch — Patch a string with a binary diff
    • xdiff_string_diff_binary — Alias of xdiff_string_bdiff
    • xdiff_string_diff — Make unified diff of two strings
    • xdiff_string_merge3 — Merge 3 strings into one
    • xdiff_string_patch_binary — Alias of xdiff_string_bpatch
    • xdiff_string_patch — Patch a string with an unified diff
    • xdiff_string_rabdiff — Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm
xattr_supported
Introdução
Extensões Relacionadas a Sistema de Arquivo


Introdução

xdiff extension enables you to create and apply patch files containing differences between different revisions of files.

This extension supports two modes of operation - on strings and on files, as well as two different patch formats - unified and binary. Unified patches are excellent for text files as they are human-readable and easy to review. For binary files like archives or images, binary patches will be adequate choice as they are binary safe and handle non-printable characters well.

Starting from version 1.5.0 there are two different sets of functions for generating binary patches. New functions - xdiff_string_rabdiff() and xdiff_file_rabdiff() generate output compatible with older functions but are typically faster and generate smaller results. For more details about methods of generating binary patches and differences between them, please check » libxdiff website.

This extension uses libxdiff to implement these functions. Please see » http://www.xmailserver.org/xdiff-lib.html for more information.

xdiff
Instalação/Configuração
xdiff


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
xdiff


Dependências

To use xdiff, you will need libxdiff installed, available on the libxdiff homepage » http://www.xmailserver.org/xdiff-lib.html.

Nota:

You'll need at least libxdiff 0.7 for these functions to be aware of memory_limit.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/xdiff.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XDIFF_PATCH_NORMAL (integer)
This flag indicates that xdiff_string_patch() and xdiff_file_patch() functions should create result by applying patch to original content thus creating newer version of file. This is the default mode of operation.
XDIFF_PATCH_REVERSE (integer)
This flag indicated that xdiff_string_patch() and xdiff_file_patch() functions should create result by reversing patch changed from newer content thus creating original version.
Tipos Resource
xdiff Funções
xdiff


xdiff Funções

Índice

  • xdiff_file_bdiff_size — Read a size of file created by applying a binary diff
  • xdiff_file_bdiff — Make binary diff of two files
  • xdiff_file_bpatch — Patch a file with a binary diff
  • xdiff_file_diff_binary — Alias of xdiff_file_bdiff
  • xdiff_file_diff — Make unified diff of two files
  • xdiff_file_merge3 — Merge 3 files into one
  • xdiff_file_patch_binary — Alias of xdiff_file_bpatch
  • xdiff_file_patch — Patch a file with an unified diff
  • xdiff_file_rabdiff — Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm
  • xdiff_string_bdiff_size — Read a size of file created by applying a binary diff
  • xdiff_string_bdiff — Make binary diff of two strings
  • xdiff_string_bpatch — Patch a string with a binary diff
  • xdiff_string_diff_binary — Alias of xdiff_string_bdiff
  • xdiff_string_diff — Make unified diff of two strings
  • xdiff_string_merge3 — Merge 3 strings into one
  • xdiff_string_patch_binary — Alias of xdiff_string_bpatch
  • xdiff_string_patch — Patch a string with an unified diff
  • xdiff_string_rabdiff — Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm
Constantes pré-definidas
xdiff_file_bdiff_size
xdiff


Read a size of file created by applying a binary diff

xdiff Funções
xdiff_file_bdiff
xdiff Funções
PHP Manual

xdiff_file_bdiff_size

(PECL xdiff >= 0.2.0)

xdiff_file_bdiff_size — Read a size of file created by applying a binary diff

Descrição

int xdiff_file_bdiff_size ( string $file )

Returns a size of a result file that would be created after applying binary patch from file file to the original file.

Parâmetros

file

The path to the binary patch created by xdiff_string_bdiff() or xdiff_string_rabdiff() function.

Valor Retornado

Returns the size of file that would be created.

Exemplos

Exemplo #1 xdiff_file_bdiff_size() example

The following code applies reads a size of file that would be created after applying a binary diff.

<?php
$length = xdiff_string_bdiff_size('file.bdiff');
echo "Resulting file will be $length bytes long";
?>

Veja Também

  • xdiff_file_bdiff() - Make binary diff of two files
  • xdiff_file_rabdiff() - Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm
  • xdiff_file_bpatch() - Patch a file with a binary diff

xdiff Funções
xdiff_file_bdiff
xdiff Funções


Make binary diff of two files

xdiff_file_bdiff_size
xdiff_file_bpatch
xdiff Funções
PHP Manual

xdiff_file_bdiff

(PECL xdiff >= 0.2.0)

xdiff_file_bdiff — Make binary diff of two files

Descrição

bool xdiff_file_bdiff ( string $old_file , string $new_file , string $dest )

Makes a binary diff of two files and stores the result in a patch file. This function works with both text and binary files. Resulting patch file can be later applied using xdiff_file_bpatch()/xdiff_string_bpatch().

Parâmetros

old_file

Path to the first file. This file acts as "old" file.

new_file

Path to the second file. This file acts as "new" file.

dest

Path of the resulting patch file. Resulting file contains differences between "old" and "new" files. It is in binary format and is human-unreadable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_bdiff() example

The following code makes binary diff of two archives.

<?php
$old_version = 'my_script_1.0.tgz';
$new_version = 'my_script_1.1.tgz';

xdiff_file_bdiff($old_version, $new_version, 'my_script.bdiff');
?>

Notas

Nota:

Both files will be loaded into memory so ensure that your memory_limit is set high enough.

Veja Também

  • xdiff_file_bpatch() - Patch a file with a binary diff

xdiff_file_bdiff_size
xdiff_file_bpatch
xdiff Funções


Patch a file with a binary diff

xdiff_file_bdiff
xdiff_file_diff_binary
xdiff Funções
PHP Manual

xdiff_file_bpatch

(PECL xdiff >= 0.2.0)

xdiff_file_bpatch — Patch a file with a binary diff

Descrição

bool xdiff_file_bpatch ( string $file , string $patch , string $dest )

Patches a file with a binary patch and stores the result in a file dest. This function accepts patches created both via xdiff_file_bdiff() and xdiff_file_rabdiff() functions or their string counterparts.

Parâmetros

file

The original file.

patch

The binary patch file.

dest

Path of the resulting file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_bpatch() example

The following code applies binary diff to a file.

<?php
$old_version = 'archive-1.0.tgz';
$patch = 'archive.bpatch';

$result = xdiff_file_bpatch($old_version, $patch, 'archive-1.1.tgz');
if ($result) {
   echo "File patched";
} else {
   echo "File couldn't be patched";
}

?>

Notas

Nota:

Both files (file and patch) will be loaded into memory so ensure that your memory_limit is set high enough.

Veja Também

  • xdiff_file_bdiff() - Make binary diff of two files
  • xdiff_file_rabdiff() - Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm

xdiff_file_bdiff
xdiff_file_diff_binary
xdiff Funções


Alias of xdiff_file_bdiff

xdiff_file_bpatch
xdiff_file_diff
xdiff Funções
PHP Manual

xdiff_file_diff_binary

(PECL xdiff >= 0.2.0)

xdiff_file_diff_binary — Alias of xdiff_file_bdiff

Descrição

bool xdiff_file_diff_binary ( string $old_file , string $new_file , string $dest )

Makes a binary diff of two files and stores the result in a patch file. This function works with both text and binary files. Resulting patch file can be later applied using xdiff_file_bpatch().

Starting with version 1.5.0 this function is an alias of xdiff_file_bdiff().

Parâmetros

old_file

Path to the first file. This file acts as "old" file.

new_file

Path to the second file. This file acts as "new" file.

dest

Path of the resulting patch file. Resulting file contains differences between "old" and "new" files. It is in binary format and is human-unreadable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_diff_binary() example

The following code makes binary diff of two archives.

<?php
$old_version = 'my_script_1.0.tgz';
$new_version = 'my_script_1.1.tgz';

xdiff_file_diff_binary($old_version, $new_version, 'my_script.bdiff');
?>

Notas

Nota:

Both files will be loaded into memory so ensure that your memory_limit is set high enough.

Veja Também

  • xdiff_file_bdiff() - Make binary diff of two files
  • xdiff_file_bpatch() - Patch a file with a binary diff

xdiff_file_bpatch
xdiff_file_diff
xdiff Funções


Make unified diff of two files

xdiff_file_diff_binary
xdiff_file_merge3
xdiff Funções
PHP Manual

xdiff_file_diff

(PECL xdiff >= 0.2.0)

xdiff_file_diff — Make unified diff of two files

Descrição

bool xdiff_file_diff ( string $old_file , string $new_file , string $dest [, int $context = 3 [, bool $minimal = false ]] )

Makes an unified diff containing differences between old_file and new_file and stores it in dest file. The resulting file is human-readable. An optional context parameter specifies how many lines of context should be added around each change. Setting minimal parameter to true will result in outputting the shortest patch file possible (can take a long time).

Parâmetros

old_file

Path to the first file. This file acts as "old" file.

new_file

Path to the second file. This file acts as "new" file.

dest

Path of the resulting patch file.

context

Indicates how many lines of context you want to include in diff result.

minimal

Set this parameter to TRUE if you want to minimalize size of the result (can take a long time).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_diff() example

The following code makes unified diff of two php files with context length of 2.

<?php
$old_version = 'my_script.php';
$new_version = 'my_new_script.php';

xdiff_file_diff($old_version, $new_version, 'my_script.diff', 2);
?>

Notas

Nota:

This function doesn't work well with binary files. To make diff of binary files use xdiff_file_bdiff()/xdiff_file_rabdiff() function.

Veja Também

  • xdiff_file_patch() - Patch a file with an unified diff

xdiff_file_diff_binary
xdiff_file_merge3
xdiff Funções


Merge 3 files into one

xdiff_file_diff
xdiff_file_patch_binary
xdiff Funções
PHP Manual

xdiff_file_merge3

(PECL xdiff >= 0.2.0)

xdiff_file_merge3 — Merge 3 files into one

Descrição

mixed xdiff_file_merge3 ( string $old_file , string $new_file1 , string $new_file2 , string $dest )

Merges three files into one and stores the result in a file dest. The old_file is an original version while new_file1 and new_file2 are modified versions of an original.

Parâmetros

old_file

Path to the first file. It acts as "old" file.

new_file1

Path to the second file. It acts as modified version of old_file.

new_file2

Path to the third file. It acts as modified version of old_file.

dest

Path of the resulting file, containing merged changed from both new_file1 and new_file2.

Valor Retornado

Returns TRUE if merge was successful, string with rejected chunks if it was not or FALSE if an internal error happened.

Exemplos

Exemplo #1 xdiff_file_merge3() example

The following code merges three files into one.

<?php
$old_version = 'original_script.php';
$fix1 = 'script_with_fix1.php';
$fix2 = 'script_with_fix2.php';

$errors = xdiff_file_merge3($old_version, $fix1, $fix2, 'fixed_script.php');
if (is_string($errors)) {
    echo "Rejects:\n";
    echo $errors;
}
?>

Veja Também

  • xdiff_string_merge3() - Merge 3 strings into one

xdiff_file_diff
xdiff_file_patch_binary
xdiff Funções


Alias of xdiff_file_bpatch

xdiff_file_merge3
xdiff_file_patch
xdiff Funções
PHP Manual

xdiff_file_patch_binary

(PECL xdiff >= 0.2.0)

xdiff_file_patch_binary — Alias of xdiff_file_bpatch

Descrição

bool xdiff_file_patch_binary ( string $file , string $patch , string $dest )

Patches a file with a binary patch and stores the result in a file dest. This function accepts patches created both via xdiff_file_bdiff() or xdiff_file_rabdiff() functions or their string counterparts.

Starting with version 1.5.0 this function is an alias of xdiff_file_bpatch().

Parâmetros

file

The original file.

patch

The binary patch file.

dest

Path of the resulting file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_patch_binary() example

The following code applies binary diff to a file.

<?php
$old_version = 'archive-1.0.tgz';
$patch = 'archive.bpatch';

$result = xdiff_file_patch_binary($old_version, $patch, 'archive-1.1.tgz');
if ($result) {
   echo "File patched";
} else {
   echo "File couldn't be patched";
}

?>

Notas

Nota:

Both files (file and patch) will be loaded into memory so ensure that your memory_limit is set high enough.

Veja Também

  • xdiff_string_patch_binary() - Alias of xdiff_string_bpatch

xdiff_file_merge3
xdiff_file_patch
xdiff Funções


Patch a file with an unified diff

xdiff_file_patch_binary
xdiff_file_rabdiff
xdiff Funções
PHP Manual

xdiff_file_patch

(PECL xdiff >= 0.2.0)

xdiff_file_patch — Patch a file with an unified diff

Descrição

mixed xdiff_file_patch ( string $file , string $patch , string $dest [, int $flags = DIFF_PATCH_NORMAL ] )

Patches a file with a patch and stores the result in a file. patch has to be an unified diff created by xdiff_file_diff()/xdiff_string_diff() function. An optional flags parameter specifies mode of operation.

Parâmetros

file

The original file.

patch

The unified patch file. It has to be created using xdiff_string_diff(), xdiff_file_diff() functions or compatible tools.

dest

Path of the resulting file.

flags

Can be either XDIFF_PATCH_NORMAL (default mode, normal patch) or XDIFF_PATCH_REVERSE (reversed patch).

Starting from version 1.5.0, you can also use binary OR to enable XDIFF_PATCH_IGNORESPACE flag.

Valor Retornado

Returns FALSE if an internal error happened, string with rejected chunks if patch couldn't be applied or TRUE if patch has been successfully applied.

Exemplos

Exemplo #1 xdiff_file_patch() example

The following code applies unified diff to a file.

<?php
$old_version = 'my_script-1.0.php';
$patch = 'my_script.patch';

$errors = xdiff_file_patch($old_version, $patch, 'my_script-1.1.php');
if (is_string($errors)) {
   echo "Rejects:\n";
   echo $errors;
}

?>

Exemplo #2 Patch reversing example

The following code reverses a patch.

<?php
$new_version = 'my_script-1.1.php';
$patch = 'my_script.patch';

$errors = xdiff_file_patch($new_version, $patch, 'my_script-1.0.php', XDIFF_PATCH_REVERSE);
if (is_string($errors)) {
   echo "Rejects:\n";
   echo $errors;
}

?>

Veja Também

  • xdiff_file_diff() - Make unified diff of two files

xdiff_file_patch_binary
xdiff_file_rabdiff
xdiff Funções


Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm

xdiff_file_patch
xdiff_string_bdiff_size
xdiff Funções
PHP Manual

xdiff_file_rabdiff

(PECL xdiff >= 0.2.0)

xdiff_file_rabdiff — Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm

Descrição

bool xdiff_file_rabdiff ( string $old_file , string $new_file , string $dest )

Makes a binary diff of two files and stores the result in a patch file. The difference between this function and xdiff_file_bdiff() is different algorithm used which should result in faster execution and smaller diff produced. This function works with both text and binary files. Resulting patch file can be later applied using xdiff_file_bpatch()/xdiff_string_bpatch().

For more details about differences between algorithm used please check » libxdiff website.

Parâmetros

old_file

Path to the first file. This file acts as "old" file.

new_file

Path to the second file. This file acts as "new" file.

dest

Path of the resulting patch file. Resulting file contains differences between "old" and "new" files. It is in binary format and is human-unreadable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xdiff_file_rabdiff() example

The following code makes binary diff of two archives.

<?php
$old_version = 'my_script_1.0.tgz';
$new_version = 'my_script_1.1.tgz';

xdiff_file_rabdiff($old_version, $new_version, 'my_script.bdiff');
?>

Notas

Nota:

Both files will be loaded into memory so ensure that your memory_limit is set high enough.

Veja Também

  • xdiff_file_bpatch() - Patch a file with a binary diff

xdiff_file_patch
xdiff_string_bdiff_size
xdiff Funções


Read a size of file created by applying a binary diff

xdiff_file_rabdiff
xdiff_string_bdiff
xdiff Funções
PHP Manual

xdiff_string_bdiff_size

(PECL xdiff >= 0.2.0)

xdiff_string_bdiff_size — Read a size of file created by applying a binary diff

Descrição

int xdiff_string_bdiff_size ( string $patch )

Returns a size of a result file that would be created after applying binary patch to the original file.

Parâmetros

patch

The binary patch created by xdiff_string_bdiff() or xdiff_string_rabdiff() function.

Valor Retornado

Returns the size of file that would be created.

Exemplos

Exemplo #1 xdiff_string_bdiff_size() example

The following code applies reads a size of file that would be created after applying a binary diff.

<?php
$binary_patch = file_get_contents('file.bdiff');
$length = xdiff_string_bdiff_size($binary_patch);
echo "Resulting file will be $length bytes long";
?>

Veja Também

  • xdiff_string_bdiff() - Make binary diff of two strings
  • xdiff_string_rabdiff() - Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm
  • xdiff_string_bpatch() - Patch a string with a binary diff

xdiff_file_rabdiff
xdiff_string_bdiff
xdiff Funções


Make binary diff of two strings

xdiff_string_bdiff_size
xdiff_string_bpatch
xdiff Funções
PHP Manual

xdiff_string_bdiff

(PECL xdiff >= 0.2.0)

xdiff_string_bdiff — Make binary diff of two strings

Descrição

string xdiff_string_bdiff ( string $old_data , string $new_data )

Makes a binary diff of two strings and returns the result. This function works with both text and binary data. Resulting patch can be later applied using xdiff_string_bpatch()/xdiff_file_bpatch().

Parâmetros

old_data

First string with binary data. It acts as "old" data.

new_data

Second string with binary data. It acts as "new" data.

Valor Retornado

Returns string with binary diff containing differences between "old" and "new" data or FALSE if an internal error occurred.

Veja Também

  • xdiff_string_bpatch() - Patch a string with a binary diff

xdiff_string_bdiff_size
xdiff_string_bpatch
xdiff Funções


Patch a string with a binary diff

xdiff_string_bdiff
xdiff_string_diff_binary
xdiff Funções
PHP Manual

xdiff_string_bpatch

(PECL xdiff >= 0.2.0)

xdiff_string_bpatch — Patch a string with a binary diff

Descrição

string xdiff_string_bpatch ( string $str , string $patch )

Patches a string str with a binary patch. This function accepts patches created both via xdiff_string_bdiff() and xdiff_string_rabdiff() functions or their file counterparts.

Parâmetros

str

The original binary string.

patch

The binary patch string.

Valor Retornado

Returns the patched string, or FALSE on error.

Veja Também

  • xdiff_string_bdiff() - Make binary diff of two strings
  • xdiff_string_rabdiff() - Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm

xdiff_string_bdiff
xdiff_string_diff_binary
xdiff Funções


Alias of xdiff_string_bdiff

xdiff_string_bpatch
xdiff_string_diff
xdiff Funções
PHP Manual

xdiff_string_diff_binary

(PECL xdiff >= 0.2.0)

xdiff_string_diff_binary — Alias of xdiff_string_bdiff

Descrição

string xdiff_string_bdiff ( string $old_data , string $new_data )

Makes a binary diff of two strings and returns the result. This function works with both text and binary data. Resulting patch can be later applied using xdiff_string_bpatch()/xdiff_file_bpatch().

Starting with version 1.5.0 this function is an alias of xdiff_string_bdiff().

Parâmetros

old_data

First string with binary data. It acts as "old" data.

new_data

Second string with binary data. It acts as "new" data.

Valor Retornado

Returns string with result or FALSE if an internal error happened.

Veja Também

  • xdiff_string_bdiff() - Make binary diff of two strings
  • xdiff_string_bpatch() - Patch a string with a binary diff

xdiff_string_bpatch
xdiff_string_diff
xdiff Funções


Make unified diff of two strings

xdiff_string_diff_binary
xdiff_string_merge3
xdiff Funções
PHP Manual

xdiff_string_diff

(PECL xdiff >= 0.2.0)

xdiff_string_diff — Make unified diff of two strings

Descrição

string xdiff_string_diff ( string $old_data , string $new_data [, int $context = 3 [, bool $minimal = false ]] )

Makes an unified diff containing differences between old_data string and new_data string and returns it. The resulting diff is human-readable. An optional context parameter specifies how many lines of context should be added around each change. Setting minimal parameter to true will result in outputting the shortest patch file possible (can take a long time).

Parâmetros

old_data

First string with data. It acts as "old" data.

new_data

Second string with data. It acts as "new" data.

context

Indicates how many lines of context you want to include in the diff result.

minimal

Set this parameter to TRUE if you want to minimalize the size of the result (can take a long time).

Valor Retornado

Returns string with resulting diff or FALSE if an internal error happened.

Exemplos

Exemplo #1 xdiff_string_diff() example

The following code makes unified diff of two articles.

<?php
$old_article = file_get_contents('./old_article.txt');
$new_article = $_REQUEST['article']; /* Let's say that someone pasted a new article to html form */

$diff = xdiff_string_diff($old_article, $new_article, 1);
if (is_string($diff)) {
    echo "Differences between two articles:\n";
    echo $diff;
}

?>

Notas

Nota:

This function doesn't work well with binary strings. To make diff of binary strings use xdiff_string_bdiff()/xdiff_string_rabdiff().

Veja Também

  • xdiff_string_patch() - Patch a string with an unified diff

xdiff_string_diff_binary
xdiff_string_merge3
xdiff Funções


Merge 3 strings into one

xdiff_string_diff
xdiff_string_patch_binary
xdiff Funções
PHP Manual

xdiff_string_merge3

(PECL xdiff >= 0.2.0)

xdiff_string_merge3 — Merge 3 strings into one

Descrição

mixed xdiff_string_merge3 ( string $old_data , string $new_data1 , string $new_data2 [, string &$error ] )

Merges three strings into one and returns the result. The old_data is an original version of data while new_file1 and new_file2 are modified versions of an original. An optional error is used to pass any rejected parts during merging process.

Parâmetros

old_data

First string with data. It acts as "old" data.

new_data1

Second string with data. It acts as modified version of old_data.

new_data2

Third string with data. It acts as modified version of old_data.

error

If provided then rejected parts are stored inside this variable.

Valor Retornado

Returns the merged string, FALSE if an internal error happened, or TRUE if merged string is empty.

Veja Também

  • xdiff_file_merge3() - Merge 3 files into one

xdiff_string_diff
xdiff_string_patch_binary
xdiff Funções


Alias of xdiff_string_bpatch

xdiff_string_merge3
xdiff_string_patch
xdiff Funções
PHP Manual

xdiff_string_patch_binary

(PECL xdiff >= 0.2.0)

xdiff_string_patch_binary — Alias of xdiff_string_bpatch

Descrição

string xdiff_string_patch_binary ( string $str , string $patch )

Patches a string str with a binary patch. This function accepts patches created both via xdiff_string_bdiff() and xdiff_string_rabdiff() functions or their file counterparts.

Starting with version 1.5.0 this function is an alias of xdiff_string_bpatch().

Parâmetros

str

The original binary string.

patch

The binary patch string.

Valor Retornado

Returns the patched string, or FALSE on error.

Veja Também

  • xdiff_string_bpatch() - Patch a string with a binary diff
  • xdiff_string_bdiff() - Make binary diff of two strings
  • xdiff_string_rabdiff() - Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm

xdiff_string_merge3
xdiff_string_patch
xdiff Funções


Patch a string with an unified diff

xdiff_string_patch_binary
xdiff_string_rabdiff
xdiff Funções
PHP Manual

xdiff_string_patch

(PECL xdiff >= 0.2.0)

xdiff_string_patch — Patch a string with an unified diff

Descrição

string xdiff_string_patch ( string $str , string $patch [, int $flags [, string &$error ]] )

Patches a str string with an unified patch in patch parameter and returns the result. patch has to be an unified diff created by xdiff_file_diff()/xdiff_string_diff() function. An optional flags parameter specifies mode of operation. Any rejected parts of the patch will be stored inside error variable if it is provided.

Parâmetros

str

The original string.

patch

The unified patch string. It has to be created using xdiff_string_diff(), xdiff_file_diff() functions or compatible tools.

flags

flags can be either XDIFF_PATCH_NORMAL (default mode, normal patch) or XDIFF_PATCH_REVERSE (reversed patch).

Starting from version 1.5.0, you can also use binary OR to enable XDIFF_PATCH_IGNORESPACE flag.

error

If provided then rejected parts are stored inside this variable.

Valor Retornado

Returns the patched string, or FALSE on error.

Exemplos

Exemplo #1 xdiff_string_patch() example

The following code applies changes to some article.

<?php
$old_article = file_get_contents('./old_article.txt');
$diff = $_SERVER['patch']; /* Let's say that someone pasted a patch to html form */

$errors = '';

$new_article = xdiff_string_patch($old_article, $diff, XDIFF_PATCH_NORMAL, $errors);
if (is_string($new_article)) {
    echo "New article:\n";
    echo $new_article;
}

if (strlen($errors)) {
    echo "Rejects: \n";
    echo $errors;
}

?>

Veja Também

  • xdiff_string_diff() - Make unified diff of two strings

xdiff_string_patch_binary
xdiff_string_rabdiff
xdiff Funções


Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm

xdiff_string_patch
Linguagem Humana e Suporte a Codificação de Caracteres
xdiff Funções
PHP Manual

xdiff_string_rabdiff

(PECL xdiff >= 0.2.0)

xdiff_string_rabdiff — Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm

Descrição

string xdiff_string_bdiff ( string $old_data , string $new_data )

Makes a binary diff of two strings and returns the result. The difference between this function and xdiff_string_bdiff() is different algorithm used which should result in faster execution and smaller diff produced. This function works with both text and binary data. Resulting patch can be later applied using xdiff_string_bpatch()/xdiff_file_bpatch().

For more details about differences between algorithm used please check » libxdiff website.

Parâmetros

old_data

First string with binary data. It acts as "old" data.

new_data

Second string with binary data. It acts as "new" data.

Valor Retornado

Returns string with binary diff containing differences between "old" and "new" data or FALSE if an internal error occurred.

Veja Também

  • xdiff_string_bpatch() - Patch a string with a binary diff

xdiff_string_patch
Linguagem Humana e Suporte a Codificação de Caracteres
xdiff Funções


Linguagem Humana e Suporte a Codificação de Caracteres

  • Enchant — Enchant spelling library
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Enchant Funções
  • FriBiDi
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da FriBiDi
  • Gettext
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Gettext
  • iconv
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • iconv Funções
  • intl — Internationalization Functions
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Collator — The Collator class
    • NumberFormatter — The NumberFormatter class
    • Locale — The Locale class
    • Normalizer — The Normalizer class
    • MessageFormatter — The MessageFormatter class
    • IntlDateFormatter — The IntlDateFormatter class
    • ResourceBundle — The ResourceBundle class
    • Transliterator — The Transliterator class
    • Grapheme Funções
    • IDN Funções
    • intl Funções
  • Multibyte String
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Summaries of supported encodings
    • Basics of Japanese multi-byte encodings
    • HTTP Input and Output
    • Supported Character Encodings
    • Function Overloading Feature
    • PHP Character Encoding Requirements
    • Multibyte String Funções
  • Pspell
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Pspell Funções
  • Recode — GNU Recode
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Recode Funções
xdiff_string_rabdiff
Enchant
Referência das Funções


Enchant spelling library

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Enchant Funções
    • enchant_broker_describe — Enumerates the Enchant providers
    • enchant_broker_dict_exists — Whether a dictionary exists or not. Using non-empty tag
    • enchant_broker_free_dict — Free a dictionary resource
    • enchant_broker_free — Free the broker resource and its dictionnaries
    • enchant_broker_get_error — Returns the last error of the broker
    • enchant_broker_init — create a new broker object capable of requesting
    • enchant_broker_list_dicts — Returns a list of available dictionaries
    • enchant_broker_request_dict — create a new dictionary using a tag
    • enchant_broker_request_pwl_dict — creates a dictionary using a PWL file
    • enchant_broker_set_ordering — Declares a preference of dictionaries to use for the language
    • enchant_dict_add_to_personal — add a word to personal word list
    • enchant_dict_add_to_session — add 'word' to this spell-checking session
    • enchant_dict_check — Check whether a word is correctly spelled or not
    • enchant_dict_describe — Describes an individual dictionary
    • enchant_dict_get_error — Returns the last error of the current spelling-session
    • enchant_dict_is_in_session — whether or not 'word' exists in this spelling-session
    • enchant_dict_quick_check — Check the word is correctly spelled and provide suggestions
    • enchant_dict_store_replacement — Add a correction for a word
    • enchant_dict_suggest — Will return a list of values if any of those pre-conditions are not met
Linguagem Humana e Suporte a Codificação de Caracteres
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

Enchant is the PHP binding for the » Enchant library. Enchant steps in to provide uniformity and conformity on top of all spelling libraries, and implement certain features that may be lacking in any individual provider library. Everything should "just work" for any and every definition of "just working."

Enchat supports the following backends:

  • Aspell/Pspell (intends to replace Ispell)

  • Ispell (old as sin, could be interpreted as a defacto standard)

  • MySpell/Hunspell (an OOo projects, also used by Mozilla)

  • Uspell (primarily Yiddish, Hebrew, and Eastern European languages - hosted in AbiWord's CVS under the module "uspell")

  • Hspell (Hebrew)

  • AppleSpell (Mac OSX)

Enchant
Instalação/Configuração
Enchant


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Enchant


Dependências

This version uses the functions of the » Enchant library by Dom Lachowicz. You need Enchant 1.2.4 or later.

Enchant also requires » Glib 2.6 or greater. Pre-compiled Windows libraries are available from » http://ftp.gnome.org/pub/gnome/binaries/win32/glib/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is bundled with PHP as of PHP 5.3.0. Before this time, enchant was a PECL extension. Users of versions prior to 5.3.0 may use the » PECL extension.

Provided the required libraries are installed, users of PHP 5.3.0 or later may enable enchant by adding the --with-enchant[=dir] option when compiling PHP.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

There are two types of resources in this extension. The first one is the broker (backends manager) and the second is for the dictionary.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Enchant


Exemplos

Exemplo #1 Enchant Usage Example

<?php
$tag = 'en_US';
$r = enchant_broker_init();
$bprovides = enchant_broker_describe($r);
echo "Current broker provides the following backend(s):\n";
print_r($bprovides);

$dicts = enchant_broker_list_dicts($r);
print_r($dicts);
if (enchant_broker_dict_exists($r,$tag)) {
    $d = enchant_broker_request_dict($r, $tag);
    $dprovides = enchant_dict_describe($d);
    echo "dictionary $tag provides:\n";
    $wordcorrect = enchant_dict_check($d, "soong");
    print_r($dprovides);
    if (!$wordcorrect) {
        $suggs = enchant_dict_suggest($d, "soong");
        echo "Suggestions for 'soong':";
        print_r($suggs);
    }
    enchant_broker_free_dict($d);
} else {
}
enchant_broker_free($r);
?>
Constantes pré-definidas
Enchant Funções
Enchant


Enchant Funções

Índice

  • enchant_broker_describe — Enumerates the Enchant providers
  • enchant_broker_dict_exists — Whether a dictionary exists or not. Using non-empty tag
  • enchant_broker_free_dict — Free a dictionary resource
  • enchant_broker_free — Free the broker resource and its dictionnaries
  • enchant_broker_get_error — Returns the last error of the broker
  • enchant_broker_init — create a new broker object capable of requesting
  • enchant_broker_list_dicts — Returns a list of available dictionaries
  • enchant_broker_request_dict — create a new dictionary using a tag
  • enchant_broker_request_pwl_dict — creates a dictionary using a PWL file
  • enchant_broker_set_ordering — Declares a preference of dictionaries to use for the language
  • enchant_dict_add_to_personal — add a word to personal word list
  • enchant_dict_add_to_session — add 'word' to this spell-checking session
  • enchant_dict_check — Check whether a word is correctly spelled or not
  • enchant_dict_describe — Describes an individual dictionary
  • enchant_dict_get_error — Returns the last error of the current spelling-session
  • enchant_dict_is_in_session — whether or not 'word' exists in this spelling-session
  • enchant_dict_quick_check — Check the word is correctly spelled and provide suggestions
  • enchant_dict_store_replacement — Add a correction for a word
  • enchant_dict_suggest — Will return a list of values if any of those pre-conditions are not met
Exemplos
enchant_broker_describe
Enchant


Enumerates the Enchant providers

Enchant Funções
enchant_broker_dict_exists
Enchant Funções
PHP Manual

enchant_broker_describe

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0)

enchant_broker_describe — Enumerates the Enchant providers

Descrição

array enchant_broker_describe ( resource $broker )

Enumerates the Enchant providers and tells you some rudimentary information about them. The same info is provided through phpinfo().

Parâmetros

broker

Broker resource

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 List the backends provided by the given broker

<?php
$r = enchant_broker_init();
$bprovides = enchant_broker_describe($r);
echo "Current broker provides the following backend(s):\n";
print_r($bprovides);

?>

O exemplo acima irá imprimir algo similar a:

Current broker provides the following backend(s):
Array
(
    [0] => Array
        (
            [name] => aspell
            [desc] => Aspell Provider
            [file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [1] => Array
        (
            [name] => hspell
            [desc] => Hspell Provider
            [file] => /usr/lib/enchant/libenchant_hspell.so
        )

    [2] => Array
        (
            [name] => ispell
            [desc] => Ispell Provider
            [file] => /usr/lib/enchant/libenchant_ispell.so
        )

    [3] => Array
        (
            [name] => myspell
            [desc] => Myspell Provider
            [file] => /usr/lib/enchant/libenchant_myspell.so
        )

)

Enchant Funções
enchant_broker_dict_exists
Enchant Funções


Whether a dictionary exists or not. Using non-empty tag

enchant_broker_describe
enchant_broker_free_dict
Enchant Funções
PHP Manual

enchant_broker_dict_exists

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_dict_exists — Whether a dictionary exists or not. Using non-empty tag

Descrição

bool enchant_broker_dict_exists ( resource $broker , string $tag )

Tells if a dictionary exists or not, using a non-empty tags

Parâmetros

broker

Broker resource

tag

non-empty tag in the LOCALE format, ex: us_US, ch_DE, etc.

Valor Retornado

Returns TRUE when the tag exist or FALSE when not.

Exemplos

Exemplo #1 A enchant_broker_dict_exists() example

<?php
$tag = 'en_US';
$r = enchant_broker_init();
if (enchant_broker_dict_exists($r,$tag)) {
    echo $tag . " dictionary found.\n";
}
?>

Veja Também

  • enchant_broker_describe() - Enumerates the Enchant providers

enchant_broker_describe
enchant_broker_free_dict
Enchant Funções


Free a dictionary resource

enchant_broker_dict_exists
enchant_broker_free
Enchant Funções
PHP Manual

enchant_broker_free_dict

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_free_dict — Free a dictionary resource

Descrição

bool enchant_broker_free_dict ( resource $dict )

Free a dictionary resource.

Parâmetros

dict

Dictionary resource.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • enchant_broker_request_dict() - create a new dictionary using a tag
  • enchant_broker_request_pwl_dict() - creates a dictionary using a PWL file

enchant_broker_dict_exists
enchant_broker_free
Enchant Funções


Free the broker resource and its dictionnaries

enchant_broker_free_dict
enchant_broker_get_error
Enchant Funções
PHP Manual

enchant_broker_free

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_free — Free the broker resource and its dictionnaries

Descrição

bool enchant_broker_free ( resource $broker )

Free a broker resource with all its dictionaries.

Parâmetros

broker

Broker resource

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • enchant_broker_init() - create a new broker object capable of requesting

enchant_broker_free_dict
enchant_broker_get_error
Enchant Funções


Returns the last error of the broker

enchant_broker_free
enchant_broker_init
Enchant Funções
PHP Manual

enchant_broker_get_error

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_get_error — Returns the last error of the broker

Descrição

string enchant_broker_get_error ( resource $broker )

Returns the last error which occurred in this broker.

Parâmetros

broker

Broker resource.

Valor Retornado

Return the msg string if an error was found or FALSE

enchant_broker_free
enchant_broker_init
Enchant Funções


create a new broker object capable of requesting

enchant_broker_get_error
enchant_broker_list_dicts
Enchant Funções
PHP Manual

enchant_broker_init

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_init — create a new broker object capable of requesting

Descrição

resource enchant_broker_init ( void )

Parâmetros

Valor Retornado

Returns a broker resource on success or FALSE.

Veja Também

  • enchant_broker_free() - Free the broker resource and its dictionnaries

enchant_broker_get_error
enchant_broker_list_dicts
Enchant Funções


Returns a list of available dictionaries

enchant_broker_init
enchant_broker_request_dict
Enchant Funções
PHP Manual

enchant_broker_list_dicts

(PHP 5 >= 5.3.0, PECL enchant >= 1.0.1)

enchant_broker_list_dicts — Returns a list of available dictionaries

Descrição

mixed enchant_broker_list_dicts ( resource $broker )

Returns a list of available dictionaries with their details.

Parâmetros

broker

Broker resource

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 List all available dictionaries for one broker

<?php
$r = enchant_broker_init();
$dicts = enchant_broker_list_dicts($r);
print_r($dicts);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Array
        (
            [lang_tag] => de
            [provider_name] => aspell
            [provider_desc] => Aspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [1] => Array
        (
            [lang_tag] => de_DE
            [provider_name] => aspell
            [provider_desc] => Aspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [3] => Array
        (
            [lang_tag] => en
            [provider_name] => aspell
            [provider_desc] => Aspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [4] => Array
        (
            [lang_tag] => en_GB
            [provider_name] => aspell
            [provider_desc] => Aspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [5] => Array
        (
            [lang_tag] => en_US
            [provider_name] => aspell
            [provider_desc] => Aspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_aspell.so
        )

    [6] => Array
        (
            [lang_tag] => hi_IN
            [provider_name] => myspell
            [provider_desc] => Myspell Provider
            [provider_file] => /usr/lib/enchant/libenchant_myspell.so
        )

)

Veja Também

  • enchant_broker_describe() - Enumerates the Enchant providers

enchant_broker_init
enchant_broker_request_dict
Enchant Funções


create a new dictionary using a tag

enchant_broker_list_dicts
enchant_broker_request_pwl_dict
Enchant Funções
PHP Manual

enchant_broker_request_dict

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_request_dict — create a new dictionary using a tag

Descrição

resource enchant_broker_request_dict ( resource $broker , string $tag )

create a new dictionary using tag, the non-empty language tag you wish to request a dictionary for ("en_US", "de_DE", ...)

Parâmetros

broker

Broker resource

tag

A tag describing the locale, for example en_US, de_DE

Valor Retornado

Returns a dictionary resource on success or FALSE on failure.

Exemplos

Exemplo #1 A enchant_broker_request_dict() example

Check if a dictionary exists using enchant_broker_dict_exists() and request it.

<?php
$tag = 'en_US';
$broker = enchant_broker_init();
if (enchant_broker_dict_exists($broker,$tag)) {
    $dict = enchant_broker_request_dict($r, $tag);
}
?>

Veja Também

  • enchant_dict_describe() - Describes an individual dictionary
  • enchant_broker_dict_exists() - Whether a dictionary exists or not. Using non-empty tag
  • enchant_broker_free_dict() - Free a dictionary resource

enchant_broker_list_dicts
enchant_broker_request_pwl_dict
Enchant Funções


creates a dictionary using a PWL file

enchant_broker_request_dict
enchant_broker_set_ordering
Enchant Funções
PHP Manual

enchant_broker_request_pwl_dict

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_request_pwl_dict — creates a dictionary using a PWL file

Descrição

resource enchant_broker_request_pwl_dict ( resource $broker , string $filename )

Creates a dictionary using a PWL file. A PWL file is personal word file one word per line.

Parâmetros

broker

Broker resource

filename

Path to the PWL file.

Valor Retornado

Returns a dictionary resource on success or FALSE on failure.

Veja Também

  • enchant_dict_describe() - Describes an individual dictionary
  • enchant_broker_dict_exists() - Whether a dictionary exists or not. Using non-empty tag
  • enchant_broker_free_dict() - Free a dictionary resource

enchant_broker_request_dict
enchant_broker_set_ordering
Enchant Funções


Declares a preference of dictionaries to use for the language

enchant_broker_request_pwl_dict
enchant_dict_add_to_personal
Enchant Funções
PHP Manual

enchant_broker_set_ordering

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_broker_set_ordering — Declares a preference of dictionaries to use for the language

Descrição

bool enchant_broker_set_ordering ( resource $broker , string $tag , string $ordering )

Declares a preference of dictionaries to use for the language described/referred to by 'tag'. The ordering is a comma delimited list of provider names. As a special exception, the "*" tag can be used as a language tag to declare a default ordering for any language that does not explicitly declare an ordering.

Parâmetros

broker

Broker resource

tag

Language tag. The special "*" tag can be used as a language tag to declare a default ordering for any language that does not explicitly declare an ordering.

ordering

Comma delimited list of provider names

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

enchant_broker_request_pwl_dict
enchant_dict_add_to_personal
Enchant Funções


add a word to personal word list

enchant_broker_set_ordering
enchant_dict_add_to_session
Enchant Funções
PHP Manual

enchant_dict_add_to_personal

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_add_to_personal — add a word to personal word list

Descrição

void enchant_dict_add_to_personal ( resource $dict , string $word )

Add a word to personal word list of the given dictionary.

Parâmetros

dict

Dictionary resource

word

The word to add

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • enchant_broker_request_pwl_dict() - creates a dictionary using a PWL file
  • enchant_broker_request_dict() - create a new dictionary using a tag

enchant_broker_set_ordering
enchant_dict_add_to_session
Enchant Funções


add 'word' to this spell-checking session

enchant_dict_add_to_personal
enchant_dict_check
Enchant Funções
PHP Manual

enchant_dict_add_to_session

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_add_to_session — add 'word' to this spell-checking session

Descrição

void enchant_dict_add_to_session ( resource $dict , string $word )

Add a word to the given dictionary. It will be added only for the active spell-checking session.

Parâmetros

dict

Dictionary resource

word

The word to add

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • enchant_broker_request_dict() - create a new dictionary using a tag

enchant_dict_add_to_personal
enchant_dict_check
Enchant Funções


Check whether a word is correctly spelled or not

enchant_dict_add_to_session
enchant_dict_describe
Enchant Funções
PHP Manual

enchant_dict_check

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_check — Check whether a word is correctly spelled or not

Descrição

bool enchant_dict_check ( resource $dict , string $word )

If the word is correctly spelled return TRUE, otherwise return FALSE

Parâmetros

dict

Dictionary resource

word

The word to check

Valor Retornado

Returns TRUE if the word is spelled correctly, FALSE if not.

enchant_dict_add_to_session
enchant_dict_describe
Enchant Funções


Describes an individual dictionary

enchant_dict_check
enchant_dict_get_error
Enchant Funções
PHP Manual

enchant_dict_describe

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_describe — Describes an individual dictionary

Descrição

mixed enchant_dict_describe ( resource $dict )

Returns the details of the dictionary.

Parâmetros

dict

Dictinaray resource

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A enchant_dict_describe() example

Check if a dictionary exists using enchant_broker_dict_exists() and show the detail of it.

<?php
$tag = 'en_US';
$broker = enchant_broker_init();
if (enchant_broker_dict_exists($broker,$tag)) {
    $dict = enchant_broker_request_dict($r, $tag);
    $dict_details = enchant_dict_describe($dict);
    print_r($dict_details);
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [lang] => en_US
    [name] => aspell
    [desc] => Aspell Provider
    [file] => /usr/lib/enchant/libenchant_aspell.so
)

enchant_dict_check
enchant_dict_get_error
Enchant Funções


Returns the last error of the current spelling-session

enchant_dict_describe
enchant_dict_is_in_session
Enchant Funções
PHP Manual

enchant_dict_get_error

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_get_error — Returns the last error of the current spelling-session

Descrição

string enchant_dict_get_error ( resource $dict )

Returns the last error of the current spelling-session

Parâmetros

dict

Dictinaray resource

Valor Retornado

Returns the error message as string or FALSE if no error occurred.

enchant_dict_describe
enchant_dict_is_in_session
Enchant Funções


whether or not 'word' exists in this spelling-session

enchant_dict_get_error
enchant_dict_quick_check
Enchant Funções
PHP Manual

enchant_dict_is_in_session

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_is_in_session — whether or not 'word' exists in this spelling-session

Descrição

bool enchant_dict_is_in_session ( resource $dict , string $word )

Tells whether or not a word already exists in the current session.

Parâmetros

dict

Dictionary resource

word

The word to lookup

Valor Retornado

Returns TRUE if the word exists or FALSE

Veja Também

  • enchant_dict_add_to_session() - add 'word' to this spell-checking session

enchant_dict_get_error
enchant_dict_quick_check
Enchant Funções


Check the word is correctly spelled and provide suggestions

enchant_dict_is_in_session
enchant_dict_store_replacement
Enchant Funções
PHP Manual

enchant_dict_quick_check

(PHP 5 >= 5.3.0, PECL enchant:0.2.0-1.0.1)

enchant_dict_quick_check — Check the word is correctly spelled and provide suggestions

Descrição

bool enchant_dict_quick_check ( resource $dict , string $word [, array &$suggestions ] )

If the word is correctly spelled return TRUE, otherwise return FALSE, if suggestions variable is provided, fill it with spelling alternatives.

Parâmetros

dict

Dictionary resource

word

The word to check

suggestions

If the word is not correctly spelled, this variable will contain an array of suggestions.

Valor Retornado

Returns TRUE if the word is correctly spelled or FALSE

Exemplos

Exemplo #1 A enchant_dict_quick_check() example

<?php
$tag = 'en_US';
$r = enchant_broker_init();

if (enchant_broker_dict_exists($r,$tag)) {
    $d = enchant_broker_request_dict($r, $tag);
    enchant_dict_quick_check($d, 'soong', $suggs);
    print_r($suggs);
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => song
    [1] => snog
    [2] => soon
    [3] => Sang
    [4] => Sung
    [5] => sang
    [6] => sung
    [7] => sponge
    [8] => spongy
    [9] => snag
    [10] => snug
    [11] => sonic
    [12] => sing
    [13] => songs
    [14] => Son
    [15] => Sonja
    [16] => Synge
    [17] => son
    [18] => Sejong
    [19] => sarong
    [20] => sooner
    [21] => Sony
    [22] => sown
    [23] => scone
    [24] => song's
)

Veja Também

  • enchant_dict_check() - Check whether a word is correctly spelled or not
  • enchant_dict_suggest() - Will return a list of values if any of those pre-conditions are not met

enchant_dict_is_in_session
enchant_dict_store_replacement
Enchant Funções


Add a correction for a word

enchant_dict_quick_check
enchant_dict_suggest
Enchant Funções
PHP Manual

enchant_dict_store_replacement

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_store_replacement — Add a correction for a word

Descrição

void enchant_dict_store_replacement ( resource $dict , string $mis , string $cor )

Add a correction for 'mis' using 'cor'. Notes that you replaced @mis with @cor, so it's possibly more likely that future occurrences of @mis will be replaced with @cor. So it might bump @cor up in the suggestion list.

Parâmetros

dict

Dictionary resource

mis

The work to fix

cor

The correct word

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

enchant_dict_quick_check
enchant_dict_suggest
Enchant Funções


Will return a list of values if any of those pre-conditions are not met

enchant_dict_store_replacement
FriBiDi
Enchant Funções
PHP Manual

enchant_dict_suggest

(PHP 5 >= 5.3.0, PECL enchant >= 0.1.0 )

enchant_dict_suggest — Will return a list of values if any of those pre-conditions are not met

Descrição

array enchant_dict_suggest ( resource $dict , string $word )

Parâmetros

dict

Dictionary resource

word

Word to use for the suggestions.

Valor Retornado

Will returns an array of suggestions if the word is bad spelled.

Exemplos

Exemplo #1 A enchant_dict_suggest() example

<?php
$tag = 'en_US';
$r = enchant_broker_init();
if (enchant_broker_dict_exists($r,$tag)) {
    $d = enchant_broker_request_dict($r, $tag);

    $wordcorrect = enchant_dict_check($d, "soong");
    if (!$wordcorrect) {
        $suggs = enchant_dict_suggest($d, "soong");
        echo "Suggestions for 'soong':";
        print_r($suggs);
    }
    enchant_broker_free_dict($d);
}
enchant_broker_free($r);
?>

Veja Também

  • enchant_dict_check() - Check whether a word is correctly spelled or not
  • enchant_dict_quick_check() - Check the word is correctly spelled and provide suggestions

enchant_dict_store_replacement
FriBiDi
Enchant Funções


FriBiDi

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da FriBiDi
    • fribidi_log2vis — Converte uma string lógica para uma visual
enchant_dict_suggest
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

FriBiDi é uma implementação livre de » Unicode Bidirectional Algorithm.

FriBiDi
Instalação/Configuração
FriBiDi


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
FriBiDi


Dependências

Você precisa fazer download e instalar o » pacote FriBiDi.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/fribidi.

Para poder usar estas funções você deve compilar o PHP com suporte Fribidi usando a opção de configuração --with-fribidi[=DIR] .

usuários do Windows irão ativar php_fribidi.dll dentro do php.ini para poder usar estas funções. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FRIBIDI_CHARSET_UTF8 (integer)
Unicode
FRIBIDI_CHARSET_8859_6 (integer)
Arabic
FRIBIDI_CHARSET_8859_8 (integer)
Hebrew
FRIBIDI_CHARSET_CP1255 (integer)
Hebrew/Yiddish
FRIBIDI_CHARSET_CP1256 (integer)
Arabic
FRIBIDI_CHARSET_ISIRI_3342 (integer)
Persian
FRIBIDI_CHARSET_CAP_RTL (integer)
Usado para fim de teste, irá tratar CAPS como letras não Inglesas
FRIBIDI_RTL (integer)
Right to left
FRIBIDI_LTR (integer)
Left to right
FRIBIDI_AUTO (integer)
Autodetecta a direção base.
Tipos Resource
Funções da FriBiDi
FriBiDi


Funções da FriBiDi

Índice

  • fribidi_log2vis — Converte uma string lógica para uma visual
Constantes pré-definidas
fribidi_log2vis
FriBiDi


Converte uma string lógica para uma visual

Funções da FriBiDi
Gettext
Funções da FriBiDi
PHP Manual

fribidi_log2vis

(PHP 4 >= 4.0.4 and PHP 4 <= 4.1.0, PECL fribidi >= 1.0)

fribidi_log2vis — Converte uma string lógica para uma visual

Descrição

string fribidi_log2vis ( string $str , string $direction , int $charset )

Converte uma string lógica para uma visual.

Parâmetros

str

A string lógica.

direction

Uma de FRIBIDI_RTL, FRIBIDI_LTR or FRIBIDI_AUTO.

charset

Uma das constantes FRIBIDI_CHARSET_XXX.

Valor Retornado

Retorna a string visual em caso de sucesso FALSE em caso de falha.

Funções da FriBiDi
Gettext
Funções da FriBiDi


Gettext

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Gettext
    • bind_textdomain_codeset — Define qual codificação de caractere será retornado pelas mensagens do catálogo do DOMÍNIO especificado.
    • bindtextdomain — Configura o caminho para um domínio
    • dcgettext — Substitui o domínio por um lookup
    • dcngettext — O mesmo que dcgettext, porém permite que você especifique mais de uma mensagem
    • dgettext — Sobreescreve o domínio atual
    • dngettext — O mesmo que dgettext, porém você pode escrever mais de uma mensagem
    • gettext — Procura por uma mensagem no domínio atual
    • ngettext — O mesmo que gettext, mas você pode especificar mais de uma mensagem
    • textdomain — Seta o domínio padrão
fribidi_log2vis
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

As funções gettext implementa uma API NLS (Native Language Support) que pode ser usada para internacionalizar suas aplicações PHP. Veja a documentação da gettext para seu sistema para uma maior explicação destas funções ou veja a documentação em » http://www.gnu.org/software/gettext/manual/gettext.html.

Gettext
Instalação/Configuração
Gettext


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Gettext


Dependências

Para usar estas funções você precisa fazer download e instalar o pacote GNU gettext de » http://www.gnu.org/software/gettext/gettext.html

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para incluir o suporte ao GNU gettext na sua instalação PHP você deve adicionar a opção --with-gettext[=DIR] onde DIR é o diretório de instalação do gettext, o diretório padrão é /usr/local.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da Gettext
Gettext


Funções da Gettext

Índice

  • bind_textdomain_codeset — Define qual codificação de caractere será retornado pelas mensagens do catálogo do DOMÍNIO especificado.
  • bindtextdomain — Configura o caminho para um domínio
  • dcgettext — Substitui o domínio por um lookup
  • dcngettext — O mesmo que dcgettext, porém permite que você especifique mais de uma mensagem
  • dgettext — Sobreescreve o domínio atual
  • dngettext — O mesmo que dgettext, porém você pode escrever mais de uma mensagem
  • gettext — Procura por uma mensagem no domínio atual
  • ngettext — O mesmo que gettext, mas você pode especificar mais de uma mensagem
  • textdomain — Seta o domínio padrão
Constantes pré-definidas
bind_textdomain_codeset
Gettext


Define qual codificação de caractere será retornado pelas mensagens do catálogo do DOMÍNIO especificado.

Funções da Gettext
bindtextdomain
Funções da Gettext
PHP Manual

bind_textdomain_codeset

(PHP 4 >= 4.2.0, PHP 5)

bind_textdomain_codeset — Define qual codificação de caractere será retornado pelas mensagens do catálogo do DOMÍNIO especificado.

Descrição

string bind_textdomain_codeset ( string $domain , string $codeset )

Com bind_textdomain_codeset(), você pode definir em qual codificação será retornado a mensagem domain pela gettext() e funções similares.

Parâmetros

domain

O domínio

codeset

O conjunto de caracteres

Valor Retornado

Uma string em sucesso.

Funções da Gettext
bindtextdomain
Funções da Gettext


Configura o caminho para um domínio

bind_textdomain_codeset
dcgettext
Funções da Gettext
PHP Manual

bindtextdomain

(PHP 4, PHP 5)

bindtextdomain — Configura o caminho para um domínio

Descrição

string bindtextdomain ( string $domain , string $directory )

A função bindtextdomain() configura um caminho para um domínio.

Parâmetros

domain

O domínio

directory

O caminho do diretório

Valor Retornado

O caminho completo para o domain que foi definido.

Exemplos

Exemplo #1 Exemplo da bindtextdomain()

<?php

$domain = 'myapp';
echo bindtextdomain($domain, '/usr/share/myapp/locale');

?>

O exemplo acima irá imprimir:

/usr/share/myapp/locale

bind_textdomain_codeset
dcgettext
Funções da Gettext


Substitui o domínio por um lookup

bindtextdomain
dcngettext
Funções da Gettext
PHP Manual

dcgettext

(PHP 4, PHP 5)

dcgettext — Substitui o domínio por um lookup

Descrição

string dcgettext ( string $domain , string $message , int $category )

Esta função permite que você sobreescreva o domínio atual por uma simples mensagem de lookup.

Parâmetros

domain

O domínio

message

A mensagem

category

A categoria

Valor Retornado

Uma string em sucesso.

Veja Também

  • gettext() - Procura por uma mensagem no domínio atual

bindtextdomain
dcngettext
Funções da Gettext


O mesmo que dcgettext, porém permite que você especifique mais de uma mensagem

dcgettext
dgettext
Funções da Gettext
PHP Manual

dcngettext

(PHP 4 >= 4.2.0, PHP 5)

dcngettext — O mesmo que dcgettext, porém permite que você especifique mais de uma mensagem

Descrição

string dcngettext ( string $domínio , string $msgid1 , string $msgid2 , int $n , int $categoria )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

dcgettext
dgettext
Funções da Gettext


Sobreescreve o domínio atual

dcngettext
dngettext
Funções da Gettext
PHP Manual

dgettext

(PHP 4, PHP 5)

dgettext — Sobreescreve o domínio atual

Descrição

string dgettext ( string $domínio , string $mensagem )

A função dgettext() permite que você sobreescreva o domínio atual por uma simples mensagem de lookup.

dcngettext
dngettext
Funções da Gettext


O mesmo que dgettext, porém você pode escrever mais de uma mensagem

dgettext
gettext
Funções da Gettext
PHP Manual

dngettext

(PHP 4 >= 4.2.0, PHP 5)

dngettext — O mesmo que dgettext, porém você pode escrever mais de uma mensagem

Descrição

string dngettext ( string $domínio , string $msgid1 , string $msgid2 , int $n )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

dgettext
gettext
Funções da Gettext


Procura por uma mensagem no domínio atual

dngettext
ngettext
Funções da Gettext
PHP Manual

gettext

(PHP 4, PHP 5)

gettext — Procura por uma mensagem no domínio atual

Descrição

string gettext ( string $mensagem )

Esta função retorna uma string traduzida se ela for encontrada na tabela de traduções, ou envia uma mensagem se a string não for encontrada. Você pode usar o caracter '_' como um alias para esta função.

Exemplo #1 gettext()-checa

<?php
// Seta o local para Português
setlocale(LC_ALL, 'pt');

// Especifica o local onde estão as tabelas de traduções
bindtextdomain("meuAplicativoPHP", "./diretorio");

// Escolhe um domínio
textdomain("meuAplicativoPHP");

// Envia uma mensagem de teste
print gettext("Bem vindo ao meu Aplicativo PHP");

// Ou use o alias _() do gettext()
print _("Tenha um bom dia");
?>
dngettext
ngettext
Funções da Gettext


O mesmo que gettext, mas você pode especificar mais de uma mensagem

gettext
textdomain
Funções da Gettext
PHP Manual

ngettext

(PHP 4 >= 4.2.0, PHP 5)

ngettext — O mesmo que gettext, mas você pode especificar mais de uma mensagem

Descrição

string ngettext ( string $msgid1 , string $msgid2 , int $n )

A versão de plural da gettext(). Algumas linguagens tem mais de uma forma para mensagens no plural dependendo da quantidade.

Parâmetros

msgid1

msgid2

n

Valor Retornado

Retorna o plural na forma correta para uma identificada mensagem por msgid1 e msgid2 para quantidade n.

Exemplos

Exemplo #1 Exemplo da ngettext()

<?php

setlocale(LC_ALL, 'cs_CZ');
printf(ngettext("%d window", "%d windows", 1), 1); // 1 okno
printf(ngettext("%d window", "%d windows", 2), 2); // 2 okna
printf(ngettext("%d window", "%d windows", 5), 5); // 5 oken

?>

gettext
textdomain
Funções da Gettext


Seta o domínio padrão

ngettext
iconv
Funções da Gettext
PHP Manual

textdomain

(PHP 4, PHP 5)

textdomain — Seta o domínio padrão

Descrição

string textdomain ( string $text_domain )

Esta função permite à você confiugrar o domínio padrão pelo qual as chamadas são feitas usando a função gettext(), geralmente o nomeado após a aplicação. O domínio padrão é retornado. Chame ela com o parâmetro NULL para pegar as configurações atuais sem alterar isto.

ngettext
iconv
Funções da Gettext


iconv

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • iconv Funções
    • iconv_get_encoding — Retrieve internal configuration variables of iconv extension
    • iconv_mime_decode_headers — Decodes multiple MIME header fields at once
    • iconv_mime_decode — Decodes a MIME header field
    • iconv_mime_encode — Composes a MIME header field
    • iconv_set_encoding — Set current setting for character encoding conversion
    • iconv_strlen — Returns the character count of string
    • iconv_strpos — Finds position of first occurrence of a needle within a haystack
    • iconv_strrpos — Finds the last occurrence of a needle within a haystack
    • iconv_substr — Cut out part of a string
    • iconv — Convert string to requested character encoding
    • ob_iconv_handler — Convert character encoding as output buffer handler
textdomain
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

This module contains an interface to iconv character set conversion facility. With this module, you can turn a string represented by a local character set into the one represented by another character set, which may be the Unicode character set. Supported character sets depend on the iconv implementation of your system. Note that the iconv function on some systems may not work as you expect. In such case, it'd be a good idea to install the » GNU libiconv library. It will most likely end up with more consistent results.

Since PHP 5.0.0, this extension comes with various utility functions that help you to write multilingual scripts. Let's have a look at the following sections to explore the new features.

iconv
Instalação/Configuração
iconv


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
iconv


Dependências

You will need nothing if the system you are using is one of the recent POSIX-compliant systems because standard C libraries that are supplied in them must provide iconv facility. Otherwise, you have to get the » libiconv library installed in your system.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is enabled by default, although it may be disabled by compiling with --without-iconv .

The optional --with-iconv-dir directive is used to specify the location of iconv on the system that PHP is being compiled on, otherwise only the default locations are scanned.

Nota: Note to PHP 4 users
Enabling this extension requires building with --with-iconv=[DIR] , or Windows users may enable by having iconv.dll available in the systems PATH, and php_iconv.dll enabled in php.ini.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Iconv configuration options
Name | Default | Changeable | Changelog
iconv.input_encoding | "ISO-8859-1" | PHP_INI_ALL | Available since PHP 4.0.5.
iconv.output_encoding | "ISO-8859-1" | PHP_INI_ALL | Available since PHP 4.0.5.
iconv.internal_encoding | "ISO-8859-1" | PHP_INI_ALL | Available since PHP 4.0.5.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Aviso

Some systems (like IBM AIX) use "ISO8859-1" instead of "ISO-8859-1" so this value has to be used in configuration options and function parameters.

Nota:

Configuration option iconv.input_encoding is currently not used for anything.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Since PHP 4.3.0 it is possible to identify at runtime which iconv implementation is adopted by this extension.

iconv constants
Name | Type | Description
ICONV_IMPL | string | The implementation name
ICONV_VERSION | string | The implementation version

Nota:

Writing implementation-dependent scripts with these constants is strongly discouraged.

Since PHP 5.0.0, the following constants are also available:

iconv constants available since PHP 5.0.0
Name | Type | Description
ICONV_MIME_DECODE_STRICT | integer | A bitmask used for iconv_mime_decode()
ICONV_MIME_DECODE_CONTINUE_ON_ERROR | integer | A bitmask used for iconv_mime_decode()

Tipos Resource
iconv Funções
iconv


iconv Funções

Veja Também

See also GNU Recode functions.

Índice

  • iconv_get_encoding — Retrieve internal configuration variables of iconv extension
  • iconv_mime_decode_headers — Decodes multiple MIME header fields at once
  • iconv_mime_decode — Decodes a MIME header field
  • iconv_mime_encode — Composes a MIME header field
  • iconv_set_encoding — Set current setting for character encoding conversion
  • iconv_strlen — Returns the character count of string
  • iconv_strpos — Finds position of first occurrence of a needle within a haystack
  • iconv_strrpos — Finds the last occurrence of a needle within a haystack
  • iconv_substr — Cut out part of a string
  • iconv — Convert string to requested character encoding
  • ob_iconv_handler — Convert character encoding as output buffer handler
Constantes pré-definidas
iconv_get_encoding
iconv


Retrieve internal configuration variables of iconv extension

iconv Funções
iconv_mime_decode_headers
iconv Funções
PHP Manual

iconv_get_encoding

(PHP 4 >= 4.0.5, PHP 5)

iconv_get_encoding — Retrieve internal configuration variables of iconv extension

Descrição

mixed iconv_get_encoding ([ string $type = "all" ] )

Retrieve internal configuration variables of iconv extension.

Parâmetros

type

The value of the optional type can be:

  • all
  • input_encoding
  • output_encoding
  • internal_encoding

Valor Retornado

Returns the current value of the internal configuration variable if successful or FALSE on failure.

If type is omitted or set to "all", iconv_get_encoding() returns an array that stores all these variables.

Exemplos

Exemplo #1 iconv_get_encoding() example

<pre>
<?php
iconv_set_encoding("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "ISO-8859-1");
var_dump(iconv_get_encoding('all'));
?>
</pre>

O exemplo acima irá imprimir:

Array
(
    [input_encoding] => ISO-8859-1
    [output_encoding] => ISO-8859-1
    [internal_encoding] => UTF-8
)

Veja Também

  • iconv_set_encoding() - Set current setting for character encoding conversion
  • ob_iconv_handler() - Convert character encoding as output buffer handler

iconv Funções
iconv_mime_decode_headers
iconv Funções


Decodes multiple MIME header fields at once

iconv_get_encoding
iconv_mime_decode
iconv Funções
PHP Manual

iconv_mime_decode_headers

(PHP 5)

iconv_mime_decode_headers — Decodes multiple MIME header fields at once

Descrição

array iconv_mime_decode_headers ( string $encoded_headers [, int $mode = 0 [, string $charset = ini_get("iconv.internal_encoding") ]] )

Decodes multiple MIME header fields at once.

Parâmetros

encoded_headers

The encoded headers, as a string.

mode

mode determines the behaviour in the event iconv_mime_decode_headers() encounters a malformed MIME header field. You can specify any combination of the following bitmasks.

Bitmasks acceptable to iconv_mime_decode_headers()
Value | Constant | Description
1 | ICONV_MIME_DECODE_STRICT | If set, the given header is decoded in full conformance with the standards defined in » RFC2047. This option is disabled by default because there are a lot of broken mail user agents that don't follow the specification and don't produce correct MIME headers.
2 | ICONV_MIME_DECODE_CONTINUE_ON_ERROR | If set, iconv_mime_decode_headers() attempts to ignore any grammatical errors and continue to process a given header.

charset

The optional charset parameter specifies the character set to represent the result by. If omitted, iconv.internal_encoding will be used.

Valor Retornado

Returns an associative array that holds a whole set of MIME header fields specified by encoded_headers on success, or FALSE if an error occurs during the decoding.

Each key of the return value represents an individual field name and the corresponding element represents a field value. If more than one field of the same name are present, iconv_mime_decode_headers() automatically incorporates them into a numerically indexed array in the order of occurrence.

Exemplos

Exemplo #1 iconv_mime_decode_headers() example

<?php
$headers_string = <<<EOF
Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=
To: example@example.com
Date: Thu, 1 Jan 1970 00:00:00 +0000
Message-Id: <example@example.com>
Received: from localhost (localhost [127.0.0.1]) by localhost
    with SMTP id example for <example@example.com>;
    Thu, 1 Jan 1970 00:00:00 +0000 (UTC)
    (envelope-from example-return-0000-example=example.com@example.com)
Received: (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000

EOF;

$headers =  iconv_mime_decode_headers($headers_string, 0, "ISO-8859-1");
print_r($headers);
?>

O exemplo acima irá imprimir:

Array
(
    [Subject] => Prüfung Prüfung
    [To] => example@example.com
    [Date] => Thu, 1 Jan 1970 00:00:00 +0000
    [Message-Id] => <example@example.com>
    [Received] => Array
        (
            [0] => from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)
            [1] => (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
        )

)

Veja Também

  • iconv_mime_decode() - Decodes a MIME header field
  • mb_decode_mimeheader() - Decode string in MIME header field
  • imap_mime_header_decode() - Decode MIME header elements
  • imap_base64() - Decode BASE64 encoded text
  • imap_qprint() - Convert a quoted-printable string to an 8 bit string

iconv_get_encoding
iconv_mime_decode
iconv Funções


Decodes a MIME header field

iconv_mime_decode_headers
iconv_mime_encode
iconv Funções
PHP Manual

iconv_mime_decode

(PHP 5)

iconv_mime_decode — Decodes a MIME header field

Descrição

string iconv_mime_decode ( string $encoded_header [, int $mode = 0 [, string $charset = ini_get("iconv.internal_encoding") ]] )

Decodes a MIME header field.

Parâmetros

encoded_header

The encoded header, as a string.

mode

mode determines the behaviour in the event iconv_mime_decode() encounters a malformed MIME header field. You can specify any combination of the following bitmasks.

Bitmasks acceptable to iconv_mime_decode()
Value | Constant | Description
1 | ICONV_MIME_DECODE_STRICT | If set, the given header is decoded in full conformance with the standards defined in » RFC2047. This option is disabled by default because there are a lot of broken mail user agents that don't follow the specification and don't produce correct MIME headers.
2 | ICONV_MIME_DECODE_CONTINUE_ON_ERROR | If set, iconv_mime_decode_headers() attempts to ignore any grammatical errors and continue to process a given header.

charset

The optional charset parameter specifies the character set to represent the result by. If omitted, iconv.internal_encoding will be used.

Valor Retornado

Returns a decoded MIME field on success, or FALSE if an error occurs during the decoding.

Exemplos

Exemplo #1 iconv_mime_decode() example

<?php
// This yields "Subject: Prüfung Prüfung"
echo iconv_mime_decode("Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=",
                       0, "ISO-8859-1");
?>

Veja Também

  • iconv_mime_decode_headers() - Decodes multiple MIME header fields at once
  • mb_decode_mimeheader() - Decode string in MIME header field
  • imap_mime_header_decode() - Decode MIME header elements
  • imap_base64() - Decode BASE64 encoded text
  • imap_qprint() - Convert a quoted-printable string to an 8 bit string

iconv_mime_decode_headers
iconv_mime_encode
iconv Funções


Composes a MIME header field

iconv_mime_decode
iconv_set_encoding
iconv Funções
PHP Manual

iconv_mime_encode

(PHP 5)

iconv_mime_encode — Composes a MIME header field

Descrição

string iconv_mime_encode ( string $field_name , string $field_value [, array $preferences = NULL ] )

Composes and returns a string that represents a valid MIME header field, which looks like the following:

Subject: =?ISO-8859-1?Q?Pr=FCfung_f=FCr?= Entwerfen von einer MIME kopfzeile
In the above example, "Subject" is the field name and the portion that begins with "=?ISO-8859-1?..." is the field value.

Parâmetros

field_name

The field name.

field_value

The field value.

preferences

You can control the behaviour of iconv_mime_encode() by specifying an associative array that contains configuration items to the optional third parameter preferences. The items supported by iconv_mime_encode() are listed below. Note that item names are treated case-sensitive.

Configuration items supported by iconv_mime_encode()
Item | Type | Description | Default value | Example
scheme | string | Specifies the method to encode a field value by. The value of this item may be either "B" or "Q", where "B" stands for base64 encoding scheme and "Q" stands for quoted-printable encoding scheme. | B | B
input-charset | string | Specifies the character set in which the first parameter field_name and the second parameter field_value are presented. If not given, iconv_mime_encode() assumes those parameters are presented to it in the iconv.internal_encoding ini setting. | iconv.internal_encoding | ISO-8859-1
output-charset | string | Specifies the character set to use to compose the MIME header. | iconv.internal_encoding | UTF-8
line-length | integer | Specifies the maximum length of the header lines. The resulting header is "folded" to a set of multiple lines in case the resulting header field would be longer than the value of this parameter, according to » RFC2822 - Internet Message Format. If not given, the length will be limited to 76 characters. | 76 | 996
line-break-chars | string | Specifies the sequence of characters to append to each line as an end-of-line sign when "folding" is performed on a long header field. If not given, this defaults to "\r\n" (CR LF). Note that this parameter is always treated as an ASCII string regardless of the value of input-charset. | \r\n | \n

Valor Retornado

Returns an encoded MIME field on success, or FALSE if an error occurs during the encoding.

Exemplos

Exemplo #1 iconv_mime_encode() example

<?php
$preferences = array(
    "input-charset" => "ISO-8859-1",
    "output-charset" => "UTF-8",
    "line-length" => 76,
    "line-break-chars" => "\n"
);
$preferences["scheme"] = "Q";
// This yields "Subject: =?UTF-8?Q?Pr=C3=BCfung=20Pr=C3=BCfung?="
echo iconv_mime_encode("Subject", "Prüfung Prüfung", $preferences);

$preferences["scheme"] = "B";
// This yields "Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?="
echo iconv_mime_encode("Subject", "Prüfung Prüfung", $preferences);
?>

Veja Também

  • imap_binary() - Convert an 8bit string to a base64 string
  • mb_encode_mimeheader() - Encode string for MIME header
  • imap_8bit() - Convert an 8bit string to a quoted-printable string
  • quoted_printable_encode() - Converte uma string de 8 bits em uma string quoted-printable

iconv_mime_decode
iconv_set_encoding
iconv Funções


Set current setting for character encoding conversion

iconv_mime_encode
iconv_strlen
iconv Funções
PHP Manual

iconv_set_encoding

(PHP 4 >= 4.0.5, PHP 5)

iconv_set_encoding — Set current setting for character encoding conversion

Descrição

bool iconv_set_encoding ( string $type , string $charset )

Changes the value of the internal configuration variable specified by type to charset.

Parâmetros

type

The value of type can be any one of those:

  • input_encoding
  • output_encoding
  • internal_encoding

charset

The character set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 iconv_set_encoding() example

<?php
iconv_set_encoding("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "ISO-8859-1");
?>

Veja Também

  • iconv_get_encoding() - Retrieve internal configuration variables of iconv extension
  • ob_iconv_handler() - Convert character encoding as output buffer handler

iconv_mime_encode
iconv_strlen
iconv Funções


Returns the character count of string

iconv_set_encoding
iconv_strpos
iconv Funções
PHP Manual

iconv_strlen

(PHP 5)

iconv_strlen — Returns the character count of string

Descrição

int iconv_strlen ( string $str [, string $charset = ini_get("iconv.internal_encoding") ] )

In contrast to strlen(), iconv_strlen() counts the occurrences of characters in the given byte sequence str on the basis of the specified character set, the result of which is not necessarily identical to the length of the string in byte.

Parâmetros

str

The string.

charset

If charset parameter is omitted, str is assumed to be encoded in iconv.internal_encoding.

Valor Retornado

Returns the character count of str, as an integer.

Veja Também

  • strlen() - Retorna o tamanho de uma string
  • mb_strlen() - Get string length

iconv_set_encoding
iconv_strpos
iconv Funções


Finds position of first occurrence of a needle within a haystack

iconv_strlen
iconv_strrpos
iconv Funções
PHP Manual

iconv_strpos

(PHP 5)

iconv_strpos — Finds position of first occurrence of a needle within a haystack

Descrição

int iconv_strpos ( string $haystack , string $needle [, int $offset = 0 [, string $charset = ini_get("iconv.internal_encoding") ]] )

Finds position of first occurrence of a needle within a haystack.

In contrast to strpos(), the return value of iconv_strpos() is the number of characters that appear before the needle, rather than the offset in bytes to the position where the needle has been found. The characters are counted on the basis of the specified character set charset.

Parâmetros

haystack

The entire string.

needle

The searched substring.

offset

The optional offset parameter specifies the position from which the search should be performed.

charset

If charset parameter is omitted, string are assumed to be encoded in iconv.internal_encoding.

If haystack or needle is not a string, it is converted to a string and applied as the ordinal value of a character.

Valor Retornado

Returns the numeric position of the first occurrence of needle in haystack.

If needle is not found, iconv_strpos() will return FALSE.

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.

Veja Também

  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • iconv_strrpos() - Finds the last occurrence of a needle within a haystack
  • mb_strpos() - Find position of first occurrence of string in a string

iconv_strlen
iconv_strrpos
iconv Funções


Finds the last occurrence of a needle within a haystack

iconv_strpos
iconv_substr
iconv Funções
PHP Manual

iconv_strrpos

(PHP 5)

iconv_strrpos — Finds the last occurrence of a needle within a haystack

Descrição

int iconv_strrpos ( string $haystack , string $needle [, string $charset = ini_get("iconv.internal_encoding") ] )

In contrast to strpos(), the return value of iconv_strrpos() is the number of characters that appear before the needle, rather than the offset in bytes to the position where the needle has been found.

Parâmetros

haystack

The entire string.

needle

The searched substring.

charset

If charset parameter is omitted, string are assumed to be encoded in iconv.internal_encoding.

If haystack or needle is not a string, it is converted to a string and applied as the ordinal value of a character.

Valor Retornado

Returns the numeric position of the last occurrence of needle in haystack. The characters are counted on the basis of the specified character set charset.

If needle is not found, iconv_strrpos() will return FALSE.

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.

Veja Também

  • strrpos() - Encontra a posição da última ocorrência de um caractere em uma string
  • iconv_strpos() - Finds position of first occurrence of a needle within a haystack
  • mb_strrpos() - Find position of last occurrence of a string in a string

iconv_strpos
iconv_substr
iconv Funções


Cut out part of a string

iconv_strrpos
iconv
iconv Funções
PHP Manual

iconv_substr

(PHP 5)

iconv_substr — Cut out part of a string

Descrição

string iconv_substr ( string $str , int $offset [, int $length = iconv_strlen($str, $charset) [, string $charset = ini_get("iconv.internal_encoding") ]] )

Cuts a portion of str specified by the offset and length parameters.

Parâmetros

str

The original string.

offset

If offset is non-negative, iconv_substr() cuts the portion out of str beginning at offset'th character, counting from zero.

If offset is negative, iconv_substr() cuts out the portion beginning at the position, offset characters away from the end of str.

length

If length is given and is positive, the return value will contain at most length characters of the portion that begins at offset (depending on the length of string).

If negative length is passed, iconv_substr() cuts the portion out of str from the offset'th character up to the character that is length characters away from the end of the string. In case offset is also negative, the start position is calculated beforehand according to the rule explained above.

charset

If charset parameter is omitted, string are assumed to be encoded in iconv.internal_encoding.

Note that offset and length parameters are always deemed to represent offsets that are calculated on the basis of the character set determined by charset, whilst the counterpart substr() always takes these for byte offsets.

Valor Retornado

Returns the portion of str specified by the offset and length parameters.

If str is shorter than offset characters long, FALSE will be returned.

Veja Também

  • substr() - Retorna uma parte de uma string
  • mb_substr() - Get part of string
  • mb_strcut() - Get part of string

iconv_strrpos
iconv
iconv Funções


Convert string to requested character encoding

iconv_substr
ob_iconv_handler
iconv Funções
PHP Manual

iconv

(PHP 4 >= 4.0.5, PHP 5)

iconv — Convert string to requested character encoding

Descrição

string iconv ( string $in_charset , string $out_charset , string $str )

Performs a character set conversion on the string str from in_charset to out_charset.

Parâmetros

in_charset

The input charset.

out_charset

The output charset.

If you append the string //TRANSLIT to out_charset transliteration is activated. This means that when a character can't be represented in the target charset, it can be approximated through one or several similarly looking characters. If you append the string //IGNORE, characters that cannot be represented in the target charset are silently discarded. Otherwise, str is cut from the first illegal character and an E_NOTICE is generated.

str

The string to be converted.

Valor Retornado

Returns the converted string or FALSE on failure.

Exemplos

Exemplo #1 iconv() example

<?php
$text = "This is the Euro symbol '€'.";

echo 'Original : ', $text, PHP_EOL;
echo 'TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;
echo 'IGNORE   : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;
echo 'Plain    : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;

?>

O exemplo acima irá imprimir algo similar a:

Original : This is the Euro symbol '€'.
TRANSLIT : This is the Euro symbol 'EUR'.
IGNORE   : This is the Euro symbol ''.
Plain    :
Notice: iconv(): Detected an illegal character in input string in .\iconv-example.php on line 7
This is the Euro symbol '

iconv_substr
ob_iconv_handler
iconv Funções


Convert character encoding as output buffer handler

iconv
intl
iconv Funções
PHP Manual

ob_iconv_handler

(PHP 4 >= 4.0.5, PHP 5)

ob_iconv_handler — Convert character encoding as output buffer handler

Descrição

string ob_iconv_handler ( string $contents , int $status )

Converts the string encoded in internal_encoding to output_encoding.

internal_encoding and output_encoding should be defined in the php.ini file or in iconv_set_encoding().

Parâmetros

See ob_start() for information about this handler parameters.

Valor Retornado

See ob_start() for information about this handler return values.

Exemplos

Exemplo #1 ob_iconv_handler() example:

<?php
iconv_set_encoding("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "ISO-8859-1");
ob_start("ob_iconv_handler"); // start output buffering
?>

Veja Também

  • iconv_get_encoding() - Retrieve internal configuration variables of iconv extension
  • iconv_set_encoding() - Set current setting for character encoding conversion
  • output-control functions

iconv
intl
iconv Funções


Internationalization Functions

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic usage of this extension
  • Collator — The Collator class
    • Collator::asort — Sort array maintaining index association
    • Collator::compare — Compare two Unicode strings
    • Collator::__construct — Create a collator
    • Collator::create — Create a collator
    • Collator::getAttribute — Get collation attribute value
    • Collator::getErrorCode — Get collator's last error code
    • Collator::getErrorMessage — Get text for collator's last error code
    • Collator::getLocale — Get the locale name of the collator
    • Collator::getSortKey — Get sorting key for a string
    • Collator::getStrength — Get current collation strength
    • Collator::setAttribute — Set collation attribute
    • Collator::setStrength — Set collation strength
    • Collator::sortWithSortKeys — Sort array using specified collator and sort keys
    • Collator::sort — Sort array using specified collator
  • NumberFormatter — The NumberFormatter class
    • NumberFormatter::create — Create a number formatter
    • NumberFormatter::formatCurrency — Format a currency value
    • NumberFormatter::format — Format a number
    • NumberFormatter::getAttribute — Get an attribute
    • NumberFormatter::getErrorCode — Get formatter's last error code.
    • NumberFormatter::getErrorMessage — Get formatter's last error message.
    • NumberFormatter::getLocale — Get formatter locale
    • NumberFormatter::getPattern — Get formatter pattern
    • NumberFormatter::getSymbol — Get a symbol value
    • NumberFormatter::getTextAttribute — Get a text attribute
    • NumberFormatter::parseCurrency — Parse a currency number
    • NumberFormatter::parse — Parse a number
    • NumberFormatter::setAttribute — Set an attribute
    • NumberFormatter::setPattern — Set formatter pattern
    • NumberFormatter::setSymbol — Set a symbol value
    • NumberFormatter::setTextAttribute — Set a text attribute
  • Locale — The Locale class
    • Locale::acceptFromHttp — Tries to find out best available locale based on HTTP "Accept-Language" header
    • Locale::composeLocale — Returns a correctly ordered and delimited locale ID
    • Locale::filterMatches — Checks if a language tag filter matches with locale
    • Locale::getAllVariants — Gets the variants for the input locale
    • Locale::getDefault — Gets the default locale value from the INTL global 'default_locale'
    • Locale::getDisplayLanguage — Returns an appropriately localized display name for language of the inputlocale
    • Locale::getDisplayName — Returns an appropriately localized display name for the input locale
    • Locale::getDisplayRegion — Returns an appropriately localized display name for region of the input locale
    • Locale::getDisplayScript — Returns an appropriately localized display name for script of the input locale
    • Locale::getDisplayVariant — Returns an appropriately localized display name for variants of the input locale
    • Locale::getKeywords — Gets the keywords for the input locale
    • Locale::getPrimaryLanguage — Gets the primary language for the input locale
    • Locale::getRegion — Gets the region for the input locale
    • Locale::getScript — Gets the script for the input locale
    • Locale::lookup — Searches the language tag list for the best match to the language
    • Locale::parseLocale — Returns a key-value array of locale ID subtag elements.
    • Locale::setDefault — sets the default runtime locale
  • Normalizer — The Normalizer class
    • Normalizer::isNormalized — Checks if the provided string is already in the specified normalization form.
    • Normalizer::normalize — Normalizes the input provided and returns the normalized string
  • MessageFormatter — The MessageFormatter class
    • MessageFormatter::create — Constructs a new Message Formatter
    • MessageFormatter::formatMessage — Quick format message
    • MessageFormatter::format — Format the message
    • MessageFormatter::getErrorCode — Get the error code from last operation
    • MessageFormatter::getErrorMessage — Get the error text from the last operation
    • MessageFormatter::getLocale — Get the locale for which the formatter was created.
    • MessageFormatter::getPattern — Get the pattern used by the formatter
    • MessageFormatter::parseMessage — Quick parse input string
    • MessageFormatter::parse — Parse input string according to pattern
    • MessageFormatter::setPattern — Set the pattern used by the formatter
  • IntlDateFormatter — The IntlDateFormatter class
    • IntlDateFormatter::create — Create a date formatter
    • IntlDateFormatter::format — Format the date/time value as a string
    • IntlDateFormatter::getCalendar — Get the calendar used for the IntlDateFormatter
    • IntlDateFormatter::getDateType — Get the datetype used for the IntlDateFormatter
    • IntlDateFormatter::getErrorCode — Get the error code from last operation
    • IntlDateFormatter::getErrorMessage — Get the error text from the last operation.
    • IntlDateFormatter::getLocale — Get the locale used by formatter
    • IntlDateFormatter::getPattern — Get the pattern used for the IntlDateFormatter
    • IntlDateFormatter::getTimeType — Get the timetype used for the IntlDateFormatter
    • IntlDateFormatter::getTimeZoneId — Get the timezone-id used for the IntlDateFormatter
    • IntlDateFormatter::isLenient — Get the lenient used for the IntlDateFormatter
    • IntlDateFormatter::localtime — Parse string to a field-based time value
    • IntlDateFormatter::parse — Parse string to a timestamp value
    • IntlDateFormatter::setCalendar — sets the calendar used to the appropriate calendar, which must be
    • IntlDateFormatter::setLenient — Set the leniency of the parser
    • IntlDateFormatter::setPattern — Set the pattern used for the IntlDateFormatter
    • IntlDateFormatter::setTimeZoneId — Sets the time zone to use
  • ResourceBundle — The ResourceBundle class
    • ResourceBundle::count — Get number of elements in the bundle
    • ResourceBundle::create — Create a resource bundle
    • ResourceBundle::getErrorCode — Get bundle's last error code.
    • ResourceBundle::getErrorMessage — Get bundle's last error message.
    • ResourceBundle::get — Get data from the bundle
    • ResourceBundle::getLocales — Get supported locales
  • Transliterator — The Transliterator class
    • Transliterator::__construct — Construct a Transliterator object
    • Transliterator::create — Create a transliterator
    • Transliterator::createFromRules — Create transliterator from rules
    • Transliterator::createInverse — Create an inverse transliterator
    • Transliterator::getErrorCode — Get last error code
    • Transliterator::getErrorMessage — Get last error message
    • Transliterator::listIDs — Get transliterator IDs
    • Transliterator::transliterate — Transliterate a string
  • Grapheme Funções
    • grapheme_extract — Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.
    • grapheme_stripos — Find position (in grapheme units) of first occurrence of a case-insensitive string
    • grapheme_stristr — Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
    • grapheme_strlen — Get string length in grapheme units
    • grapheme_strpos — Find position (in grapheme units) of first occurrence of a string
    • grapheme_strripos — Find position (in grapheme units) of last occurrence of a case-insensitive string
    • grapheme_strrpos — Find position (in grapheme units) of last occurrence of a string
    • grapheme_strstr — Returns part of haystack string from the first occurrence of needle to the end of haystack.
    • grapheme_substr — Return part of a string
  • IDN Funções
    • idn_to_ascii — Convert domain name to IDNA ASCII form.
    • idn_to_unicode — Sinônimo de idn_to_utf8
    • idn_to_utf8 — Convert domain name from IDNA ASCII to Unicode.
  • intl Funções
    • intl_error_name — Get symbolic name for a given error code
    • intl_get_error_code — Get the last error code
    • intl_get_error_message — Get description of the last error
    • intl_is_failure — Check whether the given error code indicates failure
ob_iconv_handler
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

Internationalization extension (further is referred as Intl) is a wrapper for » ICU library, enabling PHP programmers to perform UCA-conformant collation and date/time/number/currency formatting in their scripts.

It tends to closely follow ICU APIs, so that people having experience working with ICU in either C/C++ or Java could easily use the PHP API. Also, this way ICU documentation would be useful to understand various ICU functions.

Intl consists of several modules, each of them exposes the corresponding ICU API:

  • Collator: provides string comparison capability with support for appropriate locale-sensitive sort orderings.
  • Number Formatter: allows to display number according to the localized format or given pattern or set of rules, and to parse strings into numbers.
  • Message Formatter: allows to create messages incorporating data (such as numbers or dates) formatted according to given pattern and locale rules, and parse messages extracting data from them.
  • Normalizer: provides a function to transform text into one of the Unicode normalization forms, and provides a routine to test if a given string is already normalized.
  • Locale: provides interaction with locale identifiers in the form of functions to get subtags from locale identifier; parse, compose, match(lookup and filter) locale identifiers.

Links

  • » Miscellaneous ICU docs

  • » ICU User Guide

  • » Unicode Collation Algorithm

intl
Instalação/Configuração
intl


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
intl


Dependências

To build the extension you need to install the » ICU library of version 3.6+.

This extension is bundled with PHP as of PHP version 5.3.0. Alternatively, the PECL version of this extension may be used with all PHP versions greater than 5.2.0 (5.2.4+ recommended).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension may be installed using the bundled version as of PHP 5.3.0, or as a PECL extension as of PHP 5.2.0. In other words, there are two methods to install the intl extension.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/intl.

Alternatively, --enable-intl will enable the bundled version while compiling PHP.

If your ICU is installed to a non-standard directory then you might want to specify its location in LD_LIBRARY_PATH environment variable so that dynamic linker can find it:

$ export LD_LIBRARY_PATH=/opt/icu/lib

Otherwise, if PHP and ICU are installed to their default locations, then the additional options to `configure' are not needed.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Intl Opções de Configuração
Nome | Padrão | Modificável | Histórico
intl.default_locale |  | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

intl.default_locale string

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

INTL_MAX_LOCALE_LEN (integer)
Limit on locale length, set to 80 in PHP code. Locale names longer than this limit will not be accepted.
IDNA_DEFAULT (integer)
Prohibit processing of unassigned codepoints in the input for IDN functions and do not check if the input conforms to domain name ASCII rules.
IDNA_ALLOW_UNASSIGNED (integer)
Allow processing of unassigned codepoints in the input for IDN functions.
IDNA_USE_STD3_RULES (integer)
Check if the input for IDN functions conforms to domain name ASCII rules.

Tipos Resource
Exemplos
intl


Exemplos

Índice

  • Basic usage of this extension
Constantes pré-definidas
Basic usage of this extension
intl


Basic usage of this extension

Each module provides two kind of APIs: a procedural one and an object oriented one. Both are actually identical and described in the corresponding document.

Nota:

All input strings must be in UTF-8 encoding. All output strings are also in UTF-8.

Exemplo #1 Example of using the procedural API

<?php
$coll  = collator_create('en_US');
$result = collator_compare($coll, "string#1", "string#2");
?>

Exemplo #2 Example of using the object-oriented API

<?php
$coll = new Collator('en_US');
$al   = $coll->getLocale(Locale::ACTUAL_LOCALE);
echo "Actual locale: $al\n";

$formatter = new NumberFormatter('en_US', NumberFormatter::DECIMAL);
echo $formatter->format(1234567);
?>
Exemplos
Collator
Exemplos


The Collator class

Introdução

Provides string comparison capability with support for appropriate locale-sensitive sort orderings.

Sinopse da classe

Collator {
/* Methods */
__construct ( string $locale )
bool asort ( array &$arr [, int $sort_flag ] )
int compare ( string $str1 , string $str2 )
static Collator create ( string $locale )
int getAttribute ( int $attr )
int getErrorCode ( void )
string getErrorMessage ( void )
string getLocale ([ int $type ] )
string getSortKey ( string $str )
int getStrength ( void )
bool setAttribute ( int $attr , int $val )
bool setStrength ( int $strength )
bool sortWithSortKeys ( array &$arr )
bool sort ( array &$arr [, int $sort_flag ] )
}

Constantes pré-definidas

Collator::FRENCH_COLLATION (integer)

Sort strings with different accents from the back of the string. This attribute is automatically set to On for the French locales and a few others. Users normally would not need to explicitly set this attribute. There is a string comparison performance cost when it is set On, but sort key length is unaffected. Possible values are:

  • Collator::ON
  • Collator::OFF(default)
  • Collator::DEFAULT_VALUE

Exemplo #3 FRENCH_COLLATION rules

  • F=OFF cote < coté < côte < côté
  • F=ON cote < côte < coté < côté

Collator::ALTERNATE_HANDLING (integer)

The Alternate attribute is used to control the handling of the so called variable characters in the UCA: whitespace, punctuation and symbols. If Alternate is set to NonIgnorable (N), then differences among these characters are of the same importance as differences among letters. If Alternate is set to Shifted (S), then these characters are of only minor importance. The Shifted value is often used in combination with Strength set to Quaternary. In such a case, whitespace, punctuation, and symbols are considered when comparing strings, but only if all other aspects of the strings (base letters, accents, and case) are identical. If Alternate is not set to Shifted, then there is no difference between a Strength of 3 and a Strength of 4. For more information and examples, see Variable_Weighting in the » UCA. The reason the Alternate values are not simply On and Off is that additional Alternate values may be added in the future. The UCA option Blanked is expressed with Strength set to 3, and Alternate set to Shifted. The default for most locales is NonIgnorable. If Shifted is selected, it may be slower if there are many strings that are the same except for punctuation; sort key length will not be affected unless the strength level is also increased.

Possible values are:

  • Collator::NON_IGNORABLE(default)
  • Collator::SHIFTED
  • Collator::DEFAULT_VALUE

Exemplo #4 ALTERNATE_HANDLING rules

  • S=3, A=N di Silva < Di Silva < diSilva < U.S.A. < USA
  • S=3, A=S di Silva = diSilva < Di Silva < U.S.A. = USA
  • S=4, A=S di Silva < diSilva < Di Silva < U.S.A. < USA

Collator::CASE_FIRST (integer)

The Case_First attribute is used to control whether uppercase letters come before lowercase letters or vice versa, in the absence of other differences in the strings. The possible values are Uppercase_First (U) and Lowercase_First (L), plus the standard Default and Off. There is almost no difference between the Off and Lowercase_First options in terms of results, so typically users will not use Lowercase_First: only Off or Uppercase_First. (People interested in the detailed differences between X and L should consult the Collation Customization). Specifying either L or U won't affect string comparison performance, but will affect the sort key length.

Possible values are:

  • Collator::OFF(default)
  • Collator::LOWER_FIRST
  • Collator::UPPER_FIRST
  • Collator:DEFAULT

Exemplo #5 CASE_FIRST rules

  • C=X or C=L "china" < "China" < "denmark" < "Denmark"
  • C=U "China" < "china" < "Denmark" < "denmark"

Collator::CASE_LEVEL (integer)

The Case_Level attribute is used when ignoring accents but not case. In such a situation, set Strength to be Primary, and Case_Level to be On. In most locales, this setting is Off by default. There is a small string comparison performance and sort key impact if this attribute is set to be On.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Exemplo #6 CASE_LEVEL rules

  • S=1, E=X role = Role = rôle
  • S=1, E=O role = rôle < Role

Collator::NORMALIZATION_MODE (integer)

The Normalization setting determines whether text is thoroughly normalized or not in comparison. Even if the setting is off (which is the default for many locales), text as represented in common usage will compare correctly (for details, see UTN #5). Only if the accent marks are in noncanonical order will there be a problem. If the setting is On, then the best results are guaranteed for all possible text input. There is a medium string comparison performance cost if this attribute is On, depending on the frequency of sequences that require normalization. There is no significant effect on sort key length. If the input text is known to be in NFD or NFKD normalization forms, there is no need to enable this Normalization option.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::STRENGTH (integer)

The ICU Collation Service supports many levels of comparison (named "Levels", but also known as "Strengths"). Having these categories enables ICU to sort strings precisely according to local conventions. However, by allowing the levels to be selectively employed, searching for a string in text can be performed with various matching conditions. For more detailed information, see collator_set_strength() chapter.

Possible values are:

  • Collator::PRIMARY
  • Collator::SECONDARY
  • Collator::TERTIARY(default)
  • Collator::QUATERNARY
  • Collator::IDENTICAL
  • Collator::DEFAULT_VALUE

Collator::HIRAGANA_QUATERNARY_MODE (integer)

Compatibility with JIS x 4061 requires the introduction of an additional level to distinguish Hiragana and Katakana characters. If compatibility with that standard is required, then this attribute should be set On, and the strength set to Quaternary. This will affect sort key length and string comparison string comparison performance.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::NUMERIC_COLLATION (integer)

When turned on, this attribute generates a collation key for the numeric value of substrings of digits. This is a way to get '100' to sort AFTER '2'.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::DEFAULT_VALUE (integer)
Collator::PRIMARY (integer)
Collator::SECONDARY (integer)
Collator::TERTIARY (integer)
Collator::DEFAULT_STRENGTH (integer)
Collator::QUATERNARY (integer)
Collator::IDENTICAL (integer)
Collator::OFF (integer)
Collator::ON (integer)
Collator::SHIFTED (integer)
Collator::NON_IGNORABLE (integer)
Collator::LOWER_FIRST (integer)
Collator::UPPER_FIRST (integer)

Índice

  • Collator::asort — Sort array maintaining index association
  • Collator::compare — Compare two Unicode strings
  • Collator::__construct — Create a collator
  • Collator::create — Create a collator
  • Collator::getAttribute — Get collation attribute value
  • Collator::getErrorCode — Get collator's last error code
  • Collator::getErrorMessage — Get text for collator's last error code
  • Collator::getLocale — Get the locale name of the collator
  • Collator::getSortKey — Get sorting key for a string
  • Collator::getStrength — Get current collation strength
  • Collator::setAttribute — Set collation attribute
  • Collator::setStrength — Set collation strength
  • Collator::sortWithSortKeys — Sort array using specified collator and sort keys
  • Collator::sort — Sort array using specified collator
Basic usage of this extension
Collator::asort
intl


Sort array maintaining index association

Collator
Collator::compare
Collator
PHP Manual

Collator::asort

collator_asort

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::asort -- collator_asort — Sort array maintaining index association

Descrição

Object oriented style

bool Collator::asort ( array &$arr [, int $sort_flag ] )

Procedural style

bool collator_asort ( Collator $coll , array &$arr [, int $sort_flag ] )

This function sorts an array such that array indices maintain their correlation with the array elements they are associated with. This is used mainly when sorting associative arrays where the actual element order is significant. Array elements will have sort order according to current locale rules.

Equivalent to standard PHP asort().

Parâmetros

coll

Collator object.

arr

Array of strings to sort.

sort_flag

Optional sorting type, one of the following:

  • Collator::SORT_REGULAR - compare items normally (don't change types)

  • Collator::SORT_NUMERIC - compare items numerically

  • Collator::SORT_STRING - compare items as strings

Default $sort_flag value is Collator::SORT_REGULAR. It is also used if an invalid $sort_flag value has been specified.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 collator_asort()example

<?php
$coll = collator_create( 'en_US' );
$arr = array(
     'a' => '100',
     'b' => '50',
     'c' => '7'
);
collator_asort( $coll, $arr, Collator::SORT_NUMERIC );
var_export( $arr );

collator_asort( $coll, $arr, Collator::SORT_STRING );
var_export( $arr );
?>

O exemplo acima irá imprimir:

array (
  'c' => '7',
  'b' => '50',
  'a' => '100',
)array (
  'a' => '100',
  'b' => '50',
  'c' => '7',
)

Veja Também

  • Collator constants
  • collator_sort() - Sort array using specified collator
  • collator_sort_with_sort_keys() - Sort array using specified collator and sort keys

Collator
Collator::compare
Collator


Compare two Unicode strings

Collator::asort
Collator::__construct
Collator
PHP Manual

Collator::compare

collator_compare

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::compare -- collator_compare — Compare two Unicode strings

Descrição

Object oriented style

int Collator::compare ( string $str1 , string $str2 )

Procedural style

int collator_compare ( Collator $coll , string $str1 , string $str2 )

Compare two Unicode strings according to collation rules.

Parâmetros

coll

Collator object.

str1

The first string to compare.

str2

The second string to compare.

Valor Retornado

Return comparison result:

  • 1 if str1 is greater than str2 ;

  • 0 if str1 is equal to str2;

  • -1 if str1 is less than str2 .

On error boolean FALSE is returned.

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 collator_compare()example

<?php
$s1 = 'Hello';
$s2 = 'hello';

$coll = collator_create( 'en_US' );
$res  = collator_compare( $coll, $s1, $s2 );

if ($res === false) {
    echo collator_get_error_message( $coll );
} else if( $res > 0 ) {
    echo "s1 is greater than s2\n";
} else if( $res < 0 ) {
    echo "s1 is less than s2\n";
} else {
    echo "s1 is equal to s2\n";
}
?>

O exemplo acima irá imprimir:

s1 is greater than s2

Veja Também

  • collator_sort() - Sort array using specified collator

Collator::asort
Collator::__construct
Collator


Create a collator

Collator::compare
Collator::create
Collator
PHP Manual

Collator::__construct

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::__construct — Create a collator

Descrição

Collator::__construct() ( string $locale )

Creates a new instance of Collator.

Parâmetros

locale

The locale whose collation rules should be used. Special values for locales can be passed in - if null is passed for the locale, the default locale collation rules will be used. If empty string ("") or "root" are passed, UCA rules will be used.

The Locale attribute is typically the most important attribute for correct sorting and matching, according to the user expectations in different countries and regions. The default » UCA ordering will only sort a few languages such as Dutch and Portuguese correctly ("correctly" meaning according to the normal expectations for users of the languages). Otherwise, you need to supply the locale to UCA in order to properly collate text for a given language. Thus a locale needs to be supplied so as to choose a collator that is correctly tailored for that locale. The choice of a locale will automatically preset the values for all of the attributes to something that is reasonable for that locale. Thus most of the time the other attributes do not need to be explicitly set. In some cases, the choice of locale will make a difference in string comparison performance and/or sort key length.

Valor Retornado

Returns Collator instance.

Erros

Returns an "empty" object on error. You can use intl_get_error_code() and/or intl_get_error_message() to know what happened.

Exemplos

Exemplo #1 Collator::__construct() example

<?php
$coll = new Collator( 'en_CA' );
?>

Veja Também

  • Collator::create() - Create a collator
  • collator_create() - Create a collator

Collator::compare
Collator::create
Collator


Create a collator

Collator::__construct
Collator::getAttribute
Collator
PHP Manual

Collator::create

collator_create

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::create -- collator_create — Create a collator

Descrição

Object oriented style

static Collator Collator::create ( string $locale )

Procedural style

Collator collator_create ( string $locale )

The strings will be compared using the options already specified.

Parâmetros

locale

The locale containing the required collation rules. Special values for locales can be passed in - if null is passed for the locale, the default locale collation rules will be used. If empty string ("") or "root" are passed, UCA rules will be used.

Valor Retornado

Return new instance of Collator object, or NULL on error.

Exemplos

Exemplo #1 collator_create() example

<?php
$coll = collator_create( 'en_US' );

if( !isset( $coll ) ) {
    printf( "Collator creation failed: %s\n", intl_get_error_message() );
    exit( 1 );
}
?>

Veja Também

  • Collator::__construct() - Create a collator

Collator::__construct
Collator::getAttribute
Collator


Get collation attribute value

Collator::create
Collator::getErrorCode
Collator
PHP Manual

Collator::getAttribute

collator_get_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::getAttribute -- collator_get_attribute — Get collation attribute value

Descrição

Object oriented style

int Collator::getAttribute ( int $attr )

Procedural style

int collator_get_attribute ( Collator $coll , int $attr )

Get a value of an integer collator attribute.

Parâmetros

coll

Collator object.

attr

Attribute to get value for.

Valor Retornado

Attribute value, or boolean FALSE on error.

Exemplos

Exemplo #1 collator_get_attribute() example

<?php
$coll = collator_create( 'en_CA' );
$val = collator_get_attribute( $coll, Collator::NUMERIC_COLLATION );
if( $val === false )
{
    // Handle error.
}
?>

Veja Também

  • Collator constants
  • collator_set_attribute() - Set collation attribute
  • collator_get_strength() - Get current collation strength

Collator::create
Collator::getErrorCode
Collator


Get collator's last error code

Collator::getAttribute
Collator::getErrorMessage
Collator
PHP Manual

Collator::getErrorCode

collator_get_error_code

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::getErrorCode -- collator_get_error_code — Get collator's last error code

Descrição

Object oriented style

int Collator::getErrorCode ( void )

Procedural style

int collator_get_error_code ( Collator $coll )

Parâmetros

coll

Collator object.

Valor Retornado

Error code returned by the last Collator API function call.

Exemplos

Exemplo #1 collator_get_error_code() example

<?php
$coll = collator_create( 'en_US' );
if( collator_get_attribute( $coll, Collator::FRENCH_COLLATION ) === false )
        handle_error( collator_get_error_code() );
?>

Veja Também

  • collator_get_error_message() - Get text for collator's last error code

Collator::getAttribute
Collator::getErrorMessage
Collator


Get text for collator's last error code

Collator::getErrorCode
Collator::getLocale
Collator
PHP Manual

Collator::getErrorMessage

collator_get_error_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::getErrorMessage -- collator_get_error_message — Get text for collator's last error code

Descrição

Object oriented style

string Collator::getErrorMessage ( void )

Procedural style

string collator_get_error_message ( Collator $coll )

Retrieves the message for the last error.

Parâmetros

coll

Collator object.

Valor Retornado

Description of an error occurred in the last Collator API function call.

Exemplos

Exemplo #1 collator_get_error_message() example

<?php
$coll = collator_create( 'lt' );
if( collator_compare( $coll, 'y', 'k' ) === false ) {
    echo collator_get_error_message( $coll );
}
?>

Veja Também

  • collator_get_error_code() - Get collator's last error code

Collator::getErrorCode
Collator::getLocale
Collator


Get the locale name of the collator

Collator::getErrorMessage
Collator::getSortKey
Collator
PHP Manual

Collator::getLocale

collator_get_locale

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::getLocale -- collator_get_locale — Get the locale name of the collator

Descrição

Object oriented style

string Collator::getLocale ([ int $type ] )

Procedural style

string collator_get_locale ( Collator $coll , int $type )

Get collector locale name.

Parâmetros

coll

Collator object.

type

You can choose between valid and actual locale ( Locale::VALID_LOCALE and Locale::ACTUAL_LOCALE, respectively). The default is the actual locale.

Valor Retornado

Real locale name from which the collation data comes. If the collator was instantiated from rules or an error occurred, returns boolean FALSE.

Exemplos

Exemplo #1 collator_get_locale() example

<?php
$coll    = collator_create( 'en_US_California' );
$res_val = collator_get_locale( $coll, Locale::VALID_LOCALE );
$res_act = collator_get_locale( $coll, Locale::ACTUAL_LOCALE );
printf( "Valid locale name: %s\nActual locale name: %s\n",
         $res_req, $res_val, $res_act );
?>

O exemplo acima irá imprimir:

Requested locale name: en_US_California
Valid locale name: en_US
Actual locale name: en

Veja Também

  • collator_create() - Create a collator

Collator::getErrorMessage
Collator::getSortKey
Collator


Get sorting key for a string

Collator::getLocale
Collator::getStrength
Collator
PHP Manual

Collator::getSortKey

collator_get_sort_key

(No version information available, might only be in SVN)

Collator::getSortKey -- collator_get_sort_key — Get sorting key for a string

Descrição

Object oriented style

string Collator::getSortKey ( string $str )

Procedural style

string collator_get_sort_key ( Collator $coll , string $str )

Return collation key for a string.

Parâmetros

coll

Collator object.

str

The string to produce the key from.

Valor Retornado

Returns the collation key for the string. Collation keys can be compared directly instead of strings.

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 collator_get_sort_key()example

<?php
$s1 = 'Hello';

$coll = collator_create( 'en_US' );
$res  = collator_get_sort_key( $coll, $s1);

echo urlencode($res);
?>

O exemplo acima irá imprimir:

71%3F%3FE%01%09%01%8F%08%00

Veja Também

  • collator_sort() - Sort array using specified collator
  • collator_sort_with_sort_keys() - Sort array using specified collator and sort keys

Collator::getLocale
Collator::getStrength
Collator


Get current collation strength

Collator::getSortKey
Collator::setAttribute
Collator
PHP Manual

Collator::getStrength

collator_get_strength

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::getStrength -- collator_get_strength — Get current collation strength

Descrição

Object oriented style

int Collator::getStrength ( void )

Procedural style

int collator_get_strength ( Collator $coll )

Parâmetros

coll

Collator object.

Valor Retornado

Returns current collation strength, or boolean FALSE on error.

Exemplos

Exemplo #1 collator_get_strength() example

<?php
$coll     = collator_create( 'en_US' );
$strength = collator_get_strength( $coll );
?>

Veja Também

  • Collator constants
  • collator_set_strength() - Set collation strength
  • collator_get_attribute() - Get collation attribute value

Collator::getSortKey
Collator::setAttribute
Collator


Set collation attribute

Collator::getStrength
Collator::setStrength
Collator
PHP Manual

Collator::setAttribute

collator_set_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::setAttribute -- collator_set_attribute — Set collation attribute

Descrição

Object oriented style

bool Collator::setAttribute ( int $attr , int $val )

Procedural style

bool collator_set_attribute ( Collator $coll , int $attr , int $val )

Parâmetros

coll

Collator object.

attr

Attribute.

val

Attribute value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 collator_set_attribute() example

<?php
$coll = collator_create( 'en_CA' );
$val  = collator_get_attribute( $coll, Collator::NUMERIC_COLLATION );
if ($val === false) {
    // Handle error.
} elseif ($val === Collator::ON) {
    // Do something useful.
}
?>

Veja Também

  • Collator constants
  • collator_get_attribute() - Get collation attribute value
  • collator_set_strength() - Set collation strength

Collator::getStrength
Collator::setStrength
Collator


Set collation strength

Collator::setAttribute
Collator::sortWithSortKeys
Collator
PHP Manual

Collator::setStrength

collator_set_strength

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::setStrength -- collator_set_strength — Set collation strength

Descrição

Object oriented style

bool Collator::setStrength ( int $strength )

Procedural style

bool collator_set_strength ( Collator $coll , int $strength )

The » ICU Collation Service supports many levels of comparison (named "Levels", but also known as "Strengths"). Having these categories enables ICU to sort strings precisely according to local conventions. However, by allowing the levels to be selectively employed, searching for a string in text can be performed with various matching conditions.

  1. Primary Level: Typically, this is used to denote differences between base characters (for example, "a" < "b"). It is the strongest difference. For example, dictionaries are divided into different sections by base character. This is also called the level1 strength.

  2. Secondary Level: Accents in the characters are considered secondary differences (for example, "as" < "às" < "at"). Other differences between letters can also be considered secondary differences, depending on the language. A secondary difference is ignored when there is a primary difference anywhere in the strings. This is also called the level2 strength.

    Nota:

    Note: In some languages (such as Danish), certain accented letters are considered to be separate base characters. In most languages, however, an accented letter only has a secondary difference from the unaccented version of that letter.

  3. Tertiary Level: Upper and lower case differences in characters are distinguished at the tertiary level (for example, "ao" < "Ao" < "aò"). In addition, a variant of a letter differs from the base form on the tertiary level (such as "A" and " "). Another example is the difference between large and small Kana. A tertiary difference is ignored when there is a primary or secondary difference anywhere in the strings. This is also called the level3 strength.

  4. Quaternary Level: When punctuation is ignored (see Ignoring Punctuations ) at level 13, an additional level can be used to distinguish words with and without punctuation (for example, "ab" < "a-b" < "aB"). This difference is ignored when there is a primary, secondary or tertiary difference. This is also known as the level4 strength. The quaternary level should only be used if ignoring punctuation is required or when processing Japanese text (see Hiragana processing).

  5. Identical Level: When all other levels are equal, the identical level is used as a tiebreaker. The Unicode code point values of the NFD form of each string are compared at this level, just in case there is no difference at levels 14. For example, Hebrew cantillation marks are only distinguished at this level. This level should be used sparingly, as only code point values differences between two strings is an extremely rare occurrence. Using this level substantially decreases the performance for both incremental comparison and sort key generation (as well as increasing the sort key length). It is also known as level 5 strength.

For example, people may choose to ignore accents or ignore accents and case when searching for text. Almost all characters are distinguished by the first three levels, and in most locales the default value is thus Tertiary. However, if Alternate is set to be Shifted, then the Quaternary strength can be used to break ties among whitespace, punctuation, and symbols that would otherwise be ignored. If very fine distinctions among characters are required, then the Identical strength can be used (for example, Identical Strength distinguishes between the Mathematical Bold Small A and the Mathematical Italic Small A.). However, using levels higher than Tertiary the Identical strength result in significantly longer sort keys, and slower string comparison performance for equal strings.

Parâmetros

coll

Collator object.

strength

Strength to set.

Possible values are:

  • Collator::PRIMARY

  • Collator::SECONDARY

  • Collator::TERTIARY

  • Collator::QUATERNARY

  • Collator::IDENTICAL

  • Collator::DEFAULT

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 collator_set_strength() example

<?php
$arr  = array( 'aò', 'Ao', 'ao' );
$coll = collator_create( 'en_US' );

// Sort array using default strength.
collator_sort( $coll, $arr );
var_export( $arr );

// Sort array using primary strength.
collator_set_strength( $coll, Collator::PRIMARY );
collator_sort( $coll, $arr );
var_export( $arr );
?>

O exemplo acima irá imprimir:

array (
  0 => 'ao',
  1 => 'Ao',
  2 => 'aò',
)
array (
  0 => 'aò',
  1 => 'Ao',
  2 => 'ao',
)

Veja Também

  • Collator constants
  • collator_get_strength() - Get current collation strength

Collator::setAttribute
Collator::sortWithSortKeys
Collator


Sort array using specified collator and sort keys

Collator::setStrength
Collator::sort
Collator
PHP Manual

Collator::sortWithSortKeys

collator_sort_with_sort_keys

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::sortWithSortKeys -- collator_sort_with_sort_keys — Sort array using specified collator and sort keys

Descrição

Object oriented style

bool Collator::sortWithSortKeys ( array &$arr )

Procedural style

bool collator_sort_with_sort_keys ( Collator $coll , array &$arr )

Similar to collator_sort() but uses ICU sorting keys produced by ucol_getSortKey() to gain more speed on large arrays.

Parâmetros

coll

Collator object.

arr

Array of strings to sort

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 collator_sort_with_sort_keys() example

<?php
$arr  = array( 'Köpfe', 'Kypper', 'Kopfe' );
$coll = collator_create( 'sv' );

collator_sort_with_sort_keys( $coll, $arr );
var_export( $arr );
?>

O exemplo acima irá imprimir:

array (
  0 => 'Kopfe',
  1 => 'Kypper',
  2 => 'Köpfe',
)

Veja Também

  • Collator constants
  • collator_sort() - Sort array using specified collator
  • collator_asort() - Sort array maintaining index association

Collator::setStrength
Collator::sort
Collator


Sort array using specified collator

Collator::sortWithSortKeys
NumberFormatter
Collator
PHP Manual

Collator::sort

collator_sort

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Collator::sort -- collator_sort — Sort array using specified collator

Descrição

Object oriented style

bool Collator::sort ( array &$arr [, int $sort_flag ] )

Procedural style

bool collator_sort ( Collator $coll , array &$arr [, int $sort_flag ] )

This function sorts an array according to current locale rules.

Equivalent to standard PHP sort() .

Parâmetros

coll

Collator object.

arr

Array of strings to sort.

sort_flag

Optional sorting type, one of the following:

  • Collator::SORT_REGULAR - compare items normally (don't change types)

  • Collator::SORT_NUMERIC - compare items numerically

  • Collator::SORT_STRING - compare items as strings

Default sorting type is Collator::SORT_REGULAR.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 collator_sort() example

<?php
$coll = collator_create( 'en_US' );
$arr  = array( 'at', 'às', 'as' );

var_export( $arr );
collator_sort( $coll, $arr );
var_export( $arr );
?>

O exemplo acima irá imprimir:

array (
  0 => 'at',
  1 => 'às',
  2 => 'as',
)array (
  0 => 'as',
  1 => 'às',
  2 => 'at',
)

Veja Também

  • Collator constants
  • collator_asort() - Sort array maintaining index association
  • collator_sort_with_sort_keys() - Sort array using specified collator and sort keys

Collator::sortWithSortKeys
NumberFormatter
Collator


The NumberFormatter class

Introdução

Programs store and operate on numbers using a locale-independent binary representation. When displaying or printing a number it is converted to a locale-specific string. For example, the number 12345.67 is "12,345.67" in the US, "12 345,67" in France and "12.345,67" in Germany.

By invoking the methods provided by the NumberFormatter class, you can format numbers, currencies, and percentages according to the specified or default locale. NumberFormatter is locale-sensitive so you need to create a new NumberFormatter for each locale. NumberFormatter methods format primitive-type numbers, such as double and output the number as a locale-specific string.

For currencies you can use currency format type to create a formatter that returns a string with the formatted number and the appropriate currency sign. Of course, the NumberFormatter class is unaware of exchange rates so, the number output is the same regardless of the specified currency. This means that the same number has different monetary values depending on the currency locale. If the number is 9988776.65 the results will be:

  • 9 988 776,65 € in France
  • 9.988.776,65 € in Germany
  • $9,988,776.65 in the United States

In order to format percentages, create a locale-specific formatter with percentage format type. With this formatter, a decimal fraction such as 0.75 is displayed as 75%.

For more complex formatting, like spelled-out numbers, the rule-based number formatters are used.

Sinopse da classe

NumberFormatter {
/* Methods */
__construct ( string $locale , int $style [, string $pattern ] )
static NumberFormatter create ( string $locale , int $style [, string $pattern ] )
string formatCurrency ( float $value , string $currency )
string format ( number $value [, int $type ] )
int getAttribute ( int $attr )
int getErrorCode ( void )
string getErrorMessage ( void )
string getLocale ([ int $type ] )
string getPattern ( void )
string getSymbol ( int $attr )
string getTextAttribute ( int $attr )
float parseCurrency ( string $value , string &$currency [, int &$position ] )
mixed parse ( string $value [, int $type [, int &$position ]] )
bool setAttribute ( int $attr , int $value )
bool setPattern ( string $pattern )
bool setSymbol ( int $attr , string $value )
bool setTextAttribute ( int $attr , string $value )
}

Constantes pré-definidas

These styles are used by the numfmt_create() to define the type of the formatter.

NumberFormatter::PATTERN_DECIMAL (integer)
Decimal format defined by pattern
NumberFormatter::DECIMAL (integer)
Decimal format
NumberFormatter::CURRENCY (integer)
Currency format
NumberFormatter::PERCENT (integer)
Percent format
NumberFormatter::SCIENTIFIC (integer)
Scientific format
NumberFormatter::SPELLOUT (integer)
Spellout rule-based format
NumberFormatter::ORDINAL (integer)
Ordinal rule-based format
NumberFormatter::DURATION (integer)
Duration rule-based format
NumberFormatter::PATTERN_RULEBASED (integer)
Rule-based format defined by pattern
NumberFormatter::DEFAULT_STYLE (integer)
Default format for the locale
NumberFormatter::IGNORE (integer)
Alias for PATTERN_DECIMAL

These constants define how the numbers are parsed or formatted. They should be used as arguments to numfmt_format() and numfmt_parse().

NumberFormatter::TYPE_DEFAULT (integer)
Derive the type from variable type
NumberFormatter::TYPE_INT32 (integer)
Format/parse as 32-bit integer
NumberFormatter::TYPE_INT64 (integer)
Format/parse as 64-bit integer
NumberFormatter::TYPE_DOUBLE (integer)
Format/parse as floating point value
NumberFormatter::TYPE_CURRENCY (integer)
Format/parse as currency value

Number format attribute used by numfmt_get_attribute() and numfmt_set_attribute().

NumberFormatter::PARSE_INT_ONLY (integer)
Parse integers only.
NumberFormatter::GROUPING_USED (integer)
Use grouping separator.
NumberFormatter::DECIMAL_ALWAYS_SHOWN (integer)
Always show decimal point.
NumberFormatter::MAX_INTEGER_DIGITS (integer)
Maximum integer digits.
NumberFormatter::MIN_INTEGER_DIGITS (integer)
Minimum integer digits.
NumberFormatter::INTEGER_DIGITS (integer)
Integer digits.
NumberFormatter::MAX_FRACTION_DIGITS (integer)
Maximum fraction digits.
NumberFormatter::MIN_FRACTION_DIGITS (integer)
Minimum fraction digits.
NumberFormatter::FRACTION_DIGITS (integer)
Fraction digits.
NumberFormatter::MULTIPLIER (integer)
Multiplier.
NumberFormatter::GROUPING_SIZE (integer)
Grouping size.
NumberFormatter::ROUNDING_MODE (integer)
Rounding Mode.
NumberFormatter::ROUNDING_INCREMENT (integer)
Rounding increment.
NumberFormatter::FORMAT_WIDTH (integer)
The width to which the output of format() is padded.
NumberFormatter::PADDING_POSITION (integer)
The position at which padding will take place. See pad position constants for possible argument values.
NumberFormatter::SECONDARY_GROUPING_SIZE (integer)
Secondary grouping size.
NumberFormatter::SIGNIFICANT_DIGITS_USED (integer)
Use significant digits.
NumberFormatter::MIN_SIGNIFICANT_DIGITS (integer)
Minimum significant digits.
NumberFormatter::MAX_SIGNIFICANT_DIGITS (integer)
Maximum significant digits.
NumberFormatter::LENIENT_PARSE (integer)
Lenient parse mode used by rule-based formats.

Number format text attribute used by numfmt_get_text_attribute() and numfmt_set_text_attribute().

NumberFormatter::POSITIVE_PREFIX (integer)
Positive prefix.
NumberFormatter::POSITIVE_SUFFIX (integer)
Positive suffix.
NumberFormatter::NEGATIVE_PREFIX (integer)
Negative prefix.
NumberFormatter::NEGATIVE_SUFFIX (integer)
Negative suffix.
NumberFormatter::PADDING_CHARACTER (integer)
The character used to pad to the format width.
NumberFormatter::CURRENCY_CODE (integer)
The ISO currency code.
NumberFormatter::DEFAULT_RULESET (integer)
The default rule set. This is only available with rule-based formatters.
NumberFormatter::PUBLIC_RULESETS (integer)
The public rule sets. This is only available with rule-based formatters. This is a read-only attribute. The public rulesets are returned as a single string, with each ruleset name delimited by ';' (semicolon).

Number format symbols used by numfmt_get_symbol() and numfmt_set_symbol().

NumberFormatter::DECIMAL_SEPARATOR_SYMBOL (integer)
The decimal separator.
NumberFormatter::GROUPING_SEPARATOR_SYMBOL (integer)
The grouping separator.
NumberFormatter::PATTERN_SEPARATOR_SYMBOL (integer)
The pattern separator.
NumberFormatter::PERCENT_SYMBOL (integer)
The percent sign.
NumberFormatter::ZERO_DIGIT_SYMBOL (integer)
Zero.
NumberFormatter::DIGIT_SYMBOL (integer)
Character representing a digit in the pattern.
NumberFormatter::MINUS_SIGN_SYMBOL (integer)
The minus sign.
NumberFormatter::PLUS_SIGN_SYMBOL (integer)
The plus sign.
NumberFormatter::CURRENCY_SYMBOL (integer)
The currency symbol.
NumberFormatter::INTL_CURRENCY_SYMBOL (integer)
The international currency symbol.
NumberFormatter::MONETARY_SEPARATOR_SYMBOL (integer)
The monetary separator.
NumberFormatter::EXPONENTIAL_SYMBOL (integer)
The exponential symbol.
NumberFormatter::PERMILL_SYMBOL (integer)
Per mill symbol.
NumberFormatter::PAD_ESCAPE_SYMBOL (integer)
Escape padding character.
NumberFormatter::INFINITY_SYMBOL (integer)
Infinity symbol.
NumberFormatter::NAN_SYMBOL (integer)
Not-a-number symbol.
NumberFormatter::SIGNIFICANT_DIGIT_SYMBOL (integer)
Significant digit symbol.
NumberFormatter::MONETARY_GROUPING_SEPARATOR_SYMBOL (integer)
The monetary grouping separator.

Rounding mode values used by numfmt_get_attribute()
and numfmt_set_attribute() with
NumberFormatter::ROUNDING_MODE attribute.

NumberFormatter::ROUND_CEILING (integer)
Rounding mode to round towards positive infinity.
NumberFormatter::ROUND_DOWN (integer)
Rounding mode to round towards zero.
NumberFormatter::ROUND_FLOOR (integer)
Rounding mode to round towards negative infinity.
NumberFormatter::ROUND_HALFDOWN (integer)
Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round down.
NumberFormatter::ROUND_HALFEVEN (integer)
Rounding mode to round towards the "nearest neighbor" unless both neighbors are equidistant, in which case, round towards the even neighbor.
NumberFormatter::ROUND_HALFUP (integer)
Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round up.
NumberFormatter::ROUND_UP (integer)
Rounding mode to round away from zero.

Pad position values used by numfmt_get_attribute()
and numfmt_set_attribute() with
NumberFormatter::PADDING_POSITION attribute.

NumberFormatter::PAD_AFTER_PREFIX (integer)
Pad characters inserted after the prefix.
NumberFormatter::PAD_AFTER_SUFFIX (integer)
Pad characters inserted after the suffix.
NumberFormatter::PAD_BEFORE_PREFIX (integer)
Pad characters inserted before the prefix.
NumberFormatter::PAD_BEFORE_SUFFIX (integer)
Pad characters inserted before the suffix.

Veja Também

  • » ICU formatting documentation
  • » ICU number formatters
  • » ICU decimal formatters
  • » ICU rule-based number formatters

Índice

  • NumberFormatter::create — Create a number formatter
  • NumberFormatter::formatCurrency — Format a currency value
  • NumberFormatter::format — Format a number
  • NumberFormatter::getAttribute — Get an attribute
  • NumberFormatter::getErrorCode — Get formatter's last error code.
  • NumberFormatter::getErrorMessage — Get formatter's last error message.
  • NumberFormatter::getLocale — Get formatter locale
  • NumberFormatter::getPattern — Get formatter pattern
  • NumberFormatter::getSymbol — Get a symbol value
  • NumberFormatter::getTextAttribute — Get a text attribute
  • NumberFormatter::parseCurrency — Parse a currency number
  • NumberFormatter::parse — Parse a number
  • NumberFormatter::setAttribute — Set an attribute
  • NumberFormatter::setPattern — Set formatter pattern
  • NumberFormatter::setSymbol — Set a symbol value
  • NumberFormatter::setTextAttribute — Set a text attribute
Collator::sort
NumberFormatter::create
intl


Create a number formatter

NumberFormatter
NumberFormatter::formatCurrency
NumberFormatter
PHP Manual

NumberFormatter::create

numfmt_create

NumberFormatter::__construct

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::create -- numfmt_create -- NumberFormatter::__construct — Create a number formatter

Descrição

Object oriented style (method)

static NumberFormatter NumberFormatter::create ( string $locale , int $style [, string $pattern ] )

Procedural style

NumberFormatter numfmt_create ( string $locale , int $style [, string $pattern ] )

Object oriented style (constructor):

NumberFormatter::__construct() ( string $locale , int $style [, string $pattern ] )

Creates a number formatter.

Parâmetros

locale

Locale in which the number would be formatted (locale name, e.g. en_CA).

style

Style of the formatting, one of the format style constants. If NumberFormatter::PATTERN_DECIMAL or NumberFormatter::PATTERN_RULEBASED is passed then the number format is opened using the given pattern, which must conform to the syntax described in » ICU DecimalFormat documentation or » ICU RuleBasedNumberFormat documentation, respectively.

pattern

Pattern string in case chosen style requires pattern.

Valor Retornado

Returns NumberFormatter object or FALSE on error.

Exemplos

Exemplo #1 numfmt_create() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
$fmt = numfmt_create( 'it', NumberFormatter::SPELLOUT );
echo numfmt_format($fmt, 1142)."\n";
?>

Exemplo #2 NumberFormatter::create() example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo $fmt->format(1234567.891234567890000)."\n";
$fmt = new NumberFormatter( 'it', NumberFormatter::SPELLOUT );
echo $fmt->format(1142)."\n";
?>

O exemplo acima irá imprimir:

1.234.567,891
millicentoquarantadue

Veja Também

  • numfmt_format() - Format a number
  • numfmt_parse() - Parse a number

NumberFormatter
NumberFormatter::formatCurrency
NumberFormatter


Format a currency value

NumberFormatter::create
NumberFormatter::format
NumberFormatter
PHP Manual

NumberFormatter::formatCurrency

numfmt_format_currency

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::formatCurrency -- numfmt_format_currency — Format a currency value

Descrição

Object oriented style

string NumberFormatter::formatCurrency ( float $value , string $currency )

Procedural style

string numfmt_format_currency ( NumberFormatter $fmt , float $value , string $currency )

Format the currency value according to the formatter rules.

Parâmetros

fmt

NumberFormatter object.

value

The numeric currency value.

currency

The 3-letter ISO 4217 currency code indicating the currency to use.

Valor Retornado

String representing the formatted currency value.

Exemplos

Exemplo #1 numfmt_format_currency() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::CURRENCY );
echo numfmt_format_currency($fmt, 1234567.891234567890000, "EUR")."\n";
echo numfmt_format_currency($fmt, 1234567.891234567890000, "RUR")."\n";
$fmt = numfmt_create( 'ru_RU', NumberFormatter::CURRENCY );
echo numfmt_format_currency($fmt, 1234567.891234567890000, "EUR")."\n";
echo numfmt_format_currency($fmt, 1234567.891234567890000, "RUR")."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";
$fmt = new NumberFormatter( 'ru_RU', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";
?>

O exemplo acima irá imprimir:

1.234.567,89 €
1.234.567,89 RUR
1 234 567,89€
1 234 567,89р.

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_format() - Format a number
  • numfmt_parse_currency() - Parse a currency number

NumberFormatter::create
NumberFormatter::format
NumberFormatter


Format a number

NumberFormatter::formatCurrency
NumberFormatter::getAttribute
NumberFormatter
PHP Manual

NumberFormatter::format

numfmt_format

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::format -- numfmt_format — Format a number

Descrição

Object oriented style

string NumberFormatter::format ( number $value [, int $type ] )

Procedural style

string numfmt_format ( NumberFormatter $fmt , number $value [, int $type ] )

Format a numeric value according to the formatter rules.

Parâmetros

fmt

NumberFormatter object.

value

The value to format. Can be integer or double, other values will be converted to a numeric value.

type

The formatting type to use.

Valor Retornado

Returns the string containing formatted value, or FALSE on error.

Exemplos

Exemplo #1 numfmt_format() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$data = numfmt_format($fmt, 1234567.891234567890000);
if(intl_is_failure(numfmt_format($fmt))) {
    report_error("Formatter error");
}
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$fmt->format(1234567.891234567890000);
if(intl_is_failure($fmt->getErrorCode())) {
    report_error("Formatter error");
}
?>

O exemplo acima irá imprimir:

1.234.567,891

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_format_currency() - Format a currency value
  • numfmt_parse() - Parse a number

NumberFormatter::formatCurrency
NumberFormatter::getAttribute
NumberFormatter


Get an attribute

NumberFormatter::format
NumberFormatter::getErrorCode
NumberFormatter
PHP Manual

NumberFormatter::getAttribute

numfmt_get_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getAttribute -- numfmt_get_attribute — Get an attribute

Descrição

Object oriented style

int NumberFormatter::getAttribute ( int $attr )

Procedural style

int numfmt_get_attribute ( NumberFormatter $fmt , int $attr )

Get a numeric attribute associated with the formatter. An example of a numeric attribute is the number of integer digits the formatter will produce.

Parâmetros

fmt

NumberFormatter object.

attr

Attribute specifier - one of the numeric attribute constants.

Valor Retornado

Return attribute value on success, or FALSE on error.

Exemplos

Exemplo #1 numfmt_get_attribute() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Digits: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Digits: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Digits: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Digits: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Digits: 3
1.234.567,891
Digits: 2
1.234.567,89

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_get_text_attribute() - Get a text attribute
  • numfmt_set_attribute() - Set an attribute

NumberFormatter::format
NumberFormatter::getErrorCode
NumberFormatter


Get formatter's last error code.

NumberFormatter::getAttribute
NumberFormatter::getErrorMessage
NumberFormatter
PHP Manual

NumberFormatter::getErrorCode

numfmt_get_error_code

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getErrorCode -- numfmt_get_error_code — Get formatter's last error code.

Descrição

Object oriented style

int NumberFormatter::getErrorCode ( void )

Procedural style

int numfmt_get_error_code ( NumberFormatter $fmt )

Get error code from the last function performed by the formatter.

Parâmetros

fmt

NumberFormatter object.

Valor Retornado

Returns error code from last formatter call.

Exemplos

Exemplo #1 numfmt_get_error_code() example

<?php
$fmt  = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$data = numfmt_format($fmt, 1234567.891234567890000);
if(intl_is_failure(numfmt_get_error_code($fmt))) {
    report_error("Formatter error");
}
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$fmt->format(1234567.891234567890000);
if(intl_is_failure($fmt->getErrorCode())) {
    report_error("Formatter error");
}
?>

Veja Também

  • numfmt_get_error_message() - Get formatter's last error message.
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

NumberFormatter::getAttribute
NumberFormatter::getErrorMessage
NumberFormatter


Get formatter's last error message.

NumberFormatter::getErrorCode
NumberFormatter::getLocale
NumberFormatter
PHP Manual

NumberFormatter::getErrorMessage

numfmt_get_error_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getErrorMessage -- numfmt_get_error_message — Get formatter's last error message.

Descrição

Object oriented style

string NumberFormatter::getErrorMessage ( void )

Procedural style

string numfmt_get_error_message ( NumberFormatter $fmt )

Get error message from the last function performed by the formatter.

Parâmetros

fmt

NumberFormatter object.

Valor Retornado

Returns error message from last formatter call.

Exemplos

Exemplo #1 numfmt_get_error_message() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$data = numfmt_format($fmt, 1234567.891234567890000);
if(intl_is_failure(numfmt_get_error_code($fmt))) {
    report_error("Formatter error");
}
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$fmt->format(1234567.891234567890000);
if(intl_is_failure($fmt->getErrorCode())) {
    report_error("Formatter error");
}
?>

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

NumberFormatter::getErrorCode
NumberFormatter::getLocale
NumberFormatter


Get formatter locale

NumberFormatter::getErrorMessage
NumberFormatter::getPattern
NumberFormatter
PHP Manual

NumberFormatter::getLocale

numfmt_get_locale

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getLocale -- numfmt_get_locale — Get formatter locale

Descrição

Object oriented style

string NumberFormatter::getLocale ([ int $type ] )

Procedural style

string numfmt_get_locale ( NumberFormatter $fmt [, int $type ] )

Get formatter locale name.

Parâmetros

fmt

NumberFormatter object.

type

You can choose between valid and actual locale ( Locale::VALID_LOCALE, Locale::ACTUAL_LOCALE, respectively). The default is the actual locale.

Valor Retornado

The locale name used to create the formatter.

Exemplos

Exemplo #1 numfmt_get_locale() example

<?php
$req     = 'fr_FR_PARIS';
$fmt     = numfmt_create( $req,  NumberFormatter::DECIMAL);
$res_val = numfmt_get_locale( $fmt, Locale::VALID_LOCALE );
$res_act = numfmt_get_locale( $fmt, Locale::ACTUAL_LOCALE );
printf( "Requested locale name: %s\nValid locale name: %s\nActual locale name: %s\n",
         $req, $res_val, $res_act );
?>

O exemplo acima irá imprimir:

Requested locale name: fr_FR_PARIS
Valid locale name: fr_FR
Actual locale name: fr

Veja Também

  • numfmt_create() - Create a number formatter
  • numfmt_get_error_code() - Get formatter's last error code.

NumberFormatter::getErrorMessage
NumberFormatter::getPattern
NumberFormatter


Get formatter pattern

NumberFormatter::getLocale
NumberFormatter::getSymbol
NumberFormatter
PHP Manual

NumberFormatter::getPattern

numfmt_get_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getPattern -- numfmt_get_pattern — Get formatter pattern

Descrição

Object oriented style

string NumberFormatter::getPattern ( void )

Procedural style

string numfmt_get_pattern ( NumberFormatter $fmt )

Extract pattern used by the formatter.

Parâmetros

fmt

NumberFormatter object.

Valor Retornado

Pattern string that is used by the formatter, or FALSE if an error happens.

Exemplos

Exemplo #1 numfmt_get_pattern() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Pattern: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_pattern($fmt, "#0.# kg");
echo "Pattern: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Pattern: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setPattern("#0.# kg");
echo "Pattern: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Pattern: #,##0.###
1.234.567,891
Pattern: #0.# kg
1234567,9 kg

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_set_pattern() - Set formatter pattern
  • numfmt_create() - Create a number formatter

NumberFormatter::getLocale
NumberFormatter::getSymbol
NumberFormatter


Get a symbol value

NumberFormatter::getPattern
NumberFormatter::getTextAttribute
NumberFormatter
PHP Manual

NumberFormatter::getSymbol

numfmt_get_symbol

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getSymbol -- numfmt_get_symbol — Get a symbol value

Descrição

Object oriented style

string NumberFormatter::getSymbol ( int $attr )

Procedural style

string numfmt_get_symbol ( NumberFormatter $fmt , int $attr )

Get a symbol associated with the formatter. The formatter uses symbols to represent the special locale-dependent characters in a number, for example the percent sign. This API is not supported for rule-based formatters.

Parâmetros

fmt

NumberFormatter object.

attr

Symbol specifier, one of the format symbol constants.

Valor Retornado

The symbol string or FALSE on error.

Exemplos

Exemplo #1 numfmt_get_symbol() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Sep: ".numfmt_get_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL, "*");
echo "Sep: ".numfmt_get_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Sep: ".$fmt->getSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, "*");
echo "Sep: ".$fmt->getSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Sep: .
1.234.567,891
Sep: *
1*234*567,891

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_set_symbol() - Set a symbol value

NumberFormatter::getPattern
NumberFormatter::getTextAttribute
NumberFormatter


Get a text attribute

NumberFormatter::getSymbol
NumberFormatter::parseCurrency
NumberFormatter
PHP Manual

NumberFormatter::getTextAttribute

numfmt_get_text_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::getTextAttribute -- numfmt_get_text_attribute — Get a text attribute

Descrição

Object oriented style

string NumberFormatter::getTextAttribute ( int $attr )

Procedural style

string numfmt_get_text_attribute ( NumberFormatter $fmt , int $attr )

Get a text attribute associated with the formatter. An example of a text attribute is the suffix for positive numbers. If the formatter does not understand the attribute, U_UNSUPPORTED_ERROR error is produced. Rule-based formatters only understand NumberFormatter::DEFAULT_RULESET and NumberFormatter::PUBLIC_RULESETS.

Parâmetros

fmt

NumberFormatter object.

attr

Attribute specifier - one of the text attribute constants.

Valor Retornado

Return attribute value on success, or FALSE on error.

Exemplos

Exemplo #1 numfmt_get_text_attribute() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefix: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
numfmt_set_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefix: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefix: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
$fmt->setTextAttribute(NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefix: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Prefix: -
-1.234.567,891
Prefix: MINUS
MINUS1.234.567,891

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_get_attribute() - Get an attribute
  • numfmt_set_text_attribute() - Set a text attribute

NumberFormatter::getSymbol
NumberFormatter::parseCurrency
NumberFormatter


Parse a currency number

NumberFormatter::getTextAttribute
NumberFormatter::parse
NumberFormatter
PHP Manual

NumberFormatter::parseCurrency

numfmt_parse_currency

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::parseCurrency -- numfmt_parse_currency — Parse a currency number

Descrição

Object oriented style

float NumberFormatter::parseCurrency ( string $value , string &$currency [, int &$position ] )

Procedural style

float numfmt_parse_currency ( NumberFormatter $fmt , string $value , string &$currency [, int &$position ] )

Parse a string into a double and a currency using the current formatter.

Parâmetros

fmt

NumberFormatter object.

currency

Parameter to receive the currency name (3-letter ISO 4217 currency code).

position

Offset in the string at which to begin parsing. On return, this value will hold the offset at which parsing ended.

Valor Retornado

The parsed numeric value or FALSE on error.

Exemplos

Exemplo #1 numfmt_parse_currency() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::CURRENCY );
$num = "1.234.567,89 $";
echo "We have ".numfmt_parse_currency($fmt, $num, $curr)." in $curr\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::CURRENCY );
$num = "1.234.567,89 $";
echo "We have ".$fmt->parseCurrency($num, $curr)." in $curr\n";
?>

O exemplo acima irá imprimir:

We have 1234567.89 in USD

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_parse() - Parse a number
  • numfmt_format_currency() - Format a currency value

NumberFormatter::getTextAttribute
NumberFormatter::parse
NumberFormatter


Parse a number

NumberFormatter::parseCurrency
NumberFormatter::setAttribute
NumberFormatter
PHP Manual

NumberFormatter::parse

numfmt_parse

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::parse -- numfmt_parse — Parse a number

Descrição

Object oriented style

mixed NumberFormatter::parse ( string $value [, int $type [, int &$position ]] )

Procedural style

mixed numfmt_parse ( NumberFormatter $fmt , string $value [, int $type [, int &$position ]] )

Parse a string into a number using the current formatter rules.

Parâmetros

fmt

NumberFormatter object.

type

The formatting type to use. By default, NumberFormatter::TYPE_DOUBLE is used.

position

Offset in the string at which to begin parsing. On return, this value will hold the offset at which parsing ended.

Valor Retornado

The value of the parsed number or FALSE on error.

Exemplos

Exemplo #1 numfmt_parse() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$num = "1.234.567,891";
echo numfmt_parse($fmt, $num)."\n";
echo numfmt_parse($fmt, $num, NumberFormatter::TYPE_INT32)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$num = "1.234.567,891";
echo $fmt->parse($num)."\n";
echo $fmt->parse($num, NumberFormatter::TYPE_INT32)."\n";
?>

O exemplo acima irá imprimir:

1234567.891
1234567

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_format() - Format a number
  • numfmt_parse_currency() - Parse a currency number

NumberFormatter::parseCurrency
NumberFormatter::setAttribute
NumberFormatter


Set an attribute

NumberFormatter::parse
NumberFormatter::setPattern
NumberFormatter
PHP Manual

NumberFormatter::setAttribute

numfmt_set_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::setAttribute -- numfmt_set_attribute — Set an attribute

Descrição

Object oriented style

bool NumberFormatter::setAttribute ( int $attr , int $value )

Procedural style

bool numfmt_set_attribute ( NumberFormatter $fmt , int $attr , int $value )

Set a numeric attribute associated with the formatter. An example of a numeric attribute is the number of integer digits the formatter will produce.

Parâmetros

fmt

NumberFormatter object.

attr

Attribute specifier - one of the numeric attribute constants.

value

The attribute value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 numfmt_set_attribute() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Digits: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Digits: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Digits: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Digits: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Digits: 3
1.234.567,891
Digits: 2
1.234.567,89

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_get_attribute() - Get an attribute
  • numfmt_set_text_attribute() - Set a text attribute

NumberFormatter::parse
NumberFormatter::setPattern
NumberFormatter


Set formatter pattern

NumberFormatter::setAttribute
NumberFormatter::setSymbol
NumberFormatter
PHP Manual

NumberFormatter::setPattern

numfmt_set_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::setPattern -- numfmt_set_pattern — Set formatter pattern

Descrição

Object oriented style

bool NumberFormatter::setPattern ( string $pattern )

Procedural style

bool numfmt_set_pattern ( NumberFormatter $fmt , string $pattern )

Set the pattern used by the formatter. Can not be used on a rule-based formatter.

Parâmetros

fmt

NumberFormatter object.

pattern

Pattern in syntax described in » ICU DecimalFormat documentation.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 numfmt_set_pattern() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Pattern: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_pattern($fmt, "#0.# kg");
echo "Pattern: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Pattern: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setPattern("#0.# kg");
echo "Pattern: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Pattern: #,##0.###
1.234.567,891
Pattern: #0.# kg
1234567,9 kg

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_create() - Create a number formatter
  • numfmt_get_pattern() - Get formatter pattern

NumberFormatter::setAttribute
NumberFormatter::setSymbol
NumberFormatter


Set a symbol value

NumberFormatter::setPattern
NumberFormatter::setTextAttribute
NumberFormatter
PHP Manual

NumberFormatter::setSymbol

numfmt_set_symbol

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::setSymbol -- numfmt_set_symbol — Set a symbol value

Descrição

Object oriented style

bool NumberFormatter::setSymbol ( int $attr , string $value )

Procedural style

bool numfmt_set_symbol ( NumberFormatter $fmt , int $attr , string $value )

Set a symbol associated with the formatter. The formatter uses symbols to represent the special locale-dependent characters in a number, for example the percent sign. This API is not supported for rule-based formatters.

Parâmetros

fmt

NumberFormatter object.

attr

Symbol specifier, one of the format symbol constants.

value

Text for the symbol.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 numfmt_set_symbol() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Sep: ".numfmt_get_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL, "*");
echo "Sep: ".numfmt_get_symbol($fmt, NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Sep: ".$fmt->getSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, "*");
echo "Sep: ".$fmt->getSymbol(NumberFormatter::GROUPING_SEPARATOR_SYMBOL)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Sep: .
1.234.567,891
Sep: *
1*234*567,891

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_get_symbol() - Get a symbol value

NumberFormatter::setPattern
NumberFormatter::setTextAttribute
NumberFormatter


Set a text attribute

NumberFormatter::setSymbol
Locale
NumberFormatter
PHP Manual

NumberFormatter::setTextAttribute

numfmt_set_text_attribute

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

NumberFormatter::setTextAttribute -- numfmt_set_text_attribute — Set a text attribute

Descrição

Object oriented style

bool NumberFormatter::setTextAttribute ( int $attr , string $value )

Procedural style

bool numfmt_set_text_attribute ( NumberFormatter $fmt , int $attr , string $value )

Set a text attribute associated with the formatter. An example of a text attribute is the suffix for positive numbers. If the formatter does not understand the attribute, U_UNSUPPORTED_ERROR error is produced. Rule-based formatters only understand NumberFormatter::DEFAULT_RULESET and NumberFormatter::PUBLIC_RULESETS.

Parâmetros

fmt

NumberFormatter object.

attr

Attribute specifier - one of the text attribute constants.

value

Text for the attribute value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 numfmt_set_text_attribute() example

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefix: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
numfmt_set_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefix: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
?>

Exemplo #2 OO example

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefix: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
$fmt->setTextAttribute(NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefix: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
?>

O exemplo acima irá imprimir:

Prefix: -
-1.234.567,891
Prefix: MINUS
MINUS1.234.567,891

Veja Também

  • numfmt_get_error_code() - Get formatter's last error code.
  • numfmt_get_text_attribute() - Get a text attribute
  • numfmt_set_attribute() - Set an attribute

NumberFormatter::setSymbol
Locale
NumberFormatter


The Locale class

Introdução

A "Locale" is an identifier used to get language, culture, or regionally-specific behavior from an API. PHP locales are organized and identified the same way that the CLDR locales used by ICU (and many vendors of Unix-like operating systems, the Mac, Java, and so forth) use. Locales are identified using RFC 4646 language tags (which use hyphen, not underscore) in addition to the more traditional underscore-using identifiers. Unless otherwise noted the functions in this class are tolerant of both formats.

Examples of identifiers include:

  • en-US (English, United States)
  • zh-Hant-TW (Chinese, Traditional Script, Taiwan)
  • fr-CA, fr-FR (French for Canada and France respectively)

The Locale class (and related procedural functions) are used to interact with locale identifiers--to verify that an ID is well-formed, valid, etc. The extensions used by CLDR in UAX #35 (and inherited by ICU) are valid and used wherever they would be in ICU normally.

Locales cannot be instantiated as objects. All of the functions/methods provided are static.

The null or empty string obtains the "root" locale. The "root" locale is equivalent to "en_US_POSIX" in CLDR. Language tags (and thus locale identifiers) are case insensitive. There exists a canonicalization function to make case match the specification.

Sinopse da classe

Locale {
/* Methods */
static string acceptFromHttp ( string $header )
static string composeLocale ( array $subtags )
static bool filterMatches ( string $langtag , string $locale [, bool $canonicalize = false ] )
static array getAllVariants ( string $locale )
static string getDefault ( void )
static string getDisplayLanguage ( string $locale [, string $in_locale ] )
static string getDisplayName ( string $locale [, string $in_locale ] )
static string getDisplayRegion ( string $locale [, string $in_locale ] )
static string getDisplayScript ( string $locale [, string $in_locale ] )
static string getDisplayVariant ( string $locale [, string $in_locale ] )
static array getKeywords ( string $locale )
static string getPrimaryLanguage ( string $locale )
static string getRegion ( string $locale )
static string getScript ( string $locale )
static string lookup ( array $langtag , string $locale [, bool $canonicalize = false [, string $default ]] )
static array parseLocale ( string $locale )
static bool setDefault ( string $locale )
}

Constantes pré-definidas

Locale::DEFAULT_LOCALE (null)
Used as locale parameter with the methods of the various locale affected classes, such as NumberFormatter. This constant would make the methods to use default locale.

These constants describe the choice of the locale for getLocalte method of different classes.

Locale::ACTUAL_LOCALE (string)
This is locale the data actually comes from.
Locale::VALID_LOCALE (string)
This is the most specific locale supported by ICU.

These constants define how the Locales are parsed or composed. They should be used as keys in the argument array to locale_compose() and are returned from locale_parse() as keys of the returned associative array.

Locale::LANG_TAG (string)
Language subtag
Locale::EXTLANG_TAG (string)
Extended language subtag
Locale::SCRIPT_TAG (string)
Script subtag
Locale::REGION_TAG (string)
Region subtag
Locale::VARIANT_TAG (string)
Variant subtag
Locale::GRANDFATHERED_LANG_TAG (string)
Grandfathered Language subtag
Locale::PRIVATE_TAG (string)
Private subtag

Veja Também

  • » RFC 4646 - Tags for Identifying Languages
  • » RFC 4647 - Matching of Language Tags
  • » Unicode CLDR Project:Common Locale Data Repository
  • » IANA Language Subtags Registry
  • » ICU User Guide - Locale
  • » ICU Locale api

Índice

  • Locale::acceptFromHttp — Tries to find out best available locale based on HTTP "Accept-Language" header
  • Locale::composeLocale — Returns a correctly ordered and delimited locale ID
  • Locale::filterMatches — Checks if a language tag filter matches with locale
  • Locale::getAllVariants — Gets the variants for the input locale
  • Locale::getDefault — Gets the default locale value from the INTL global 'default_locale'
  • Locale::getDisplayLanguage — Returns an appropriately localized display name for language of the inputlocale
  • Locale::getDisplayName — Returns an appropriately localized display name for the input locale
  • Locale::getDisplayRegion — Returns an appropriately localized display name for region of the input locale
  • Locale::getDisplayScript — Returns an appropriately localized display name for script of the input locale
  • Locale::getDisplayVariant — Returns an appropriately localized display name for variants of the input locale
  • Locale::getKeywords — Gets the keywords for the input locale
  • Locale::getPrimaryLanguage — Gets the primary language for the input locale
  • Locale::getRegion — Gets the region for the input locale
  • Locale::getScript — Gets the script for the input locale
  • Locale::lookup — Searches the language tag list for the best match to the language
  • Locale::parseLocale — Returns a key-value array of locale ID subtag elements.
  • Locale::setDefault — sets the default runtime locale
NumberFormatter::setTextAttribute
Locale::acceptFromHttp
intl


Tries to find out best available locale based on HTTP "Accept-Language" header

Locale
Locale::composeLocale
Locale
PHP Manual

Locale::acceptFromHttp

locale_accept_from_http

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::acceptFromHttp -- locale_accept_from_http — Tries to find out best available locale based on HTTP "Accept-Language" header

Descrição

Object oriented style

static string Locale::acceptFromHttp ( string $header )

Procedural style

string locale_accept_from_http ( string $header )

Tries to find locale that can satisfy the language list that is requested by the HTTP "Accept-Language" header.

Parâmetros

header

The string containing the "Accept-Language" header according to format in RFC 2616.

Valor Retornado

The corresponding locale identifier.

Exemplos

Exemplo #1 locale_accept_from_http() example

<?php
$locale = locale_accept_from_http($_SERVER['HTTP_ACCEPT_LANGUAGE']);
echo $locale;
?>

Exemplo #2 OO example

<?php
$locale = Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']);
echo $locale;
?>

O exemplo acima irá imprimir:

en_US

Veja Também

  • locale_lookup() - Searches the language tag list for the best match to the language

Locale
Locale::composeLocale
Locale


Returns a correctly ordered and delimited locale ID

Locale::acceptFromHttp
Locale::filterMatches
Locale
PHP Manual

Locale::composeLocale

locale_compose

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::composeLocale -- locale_compose — Returns a correctly ordered and delimited locale ID

Descrição

Object oriented style

static string Locale::composeLocale ( array $subtags )

Procedural style

string locale_compose ( array $subtags )

Returns a correctly ordered and delimited locale ID the keys identify the particular locale ID subtags, and the values are the associated subtag values.

Parâmetros

subtags

an array containing a list of key-value pairs, where the keys identify the particular locale ID subtags, and the values are the associated subtag values.

Nota:

The 'variant' and 'private' subtags can take maximum 15 values whereas 'extlang' can take maximum 3 values.e.g. Variants are allowed with the suffix ranging from 0-14. Hence the keys for the input array can be variant0, variant1, ...,variant14. In the returned locale id, the subtag is ordered by suffix resulting in variant0 followed by variant1 followed by variant2 and so on.

The 'variant', 'private' and 'extlang' multiple values can be specified both as array under specific key (e.g. 'variant') and as multiple numbered keys (e.g. 'variant0', 'variant1', etc.).

Valor Retornado

The corresponding locale identifier.

Exemplos

Exemplo #1 locale_compose() example

<?php
$arr = array(
    'language'=>'en' ,
    'script'  =>'Hans' ,
    'region'  =>'CN',
    'variant2'=>'rozaj' ,
    'variant1'=>'nedis' ,
    'private1'=>'prv1' ,
    'private2'=>'prv2'
);
echo locale_compose( $arr );
?>

Exemplo #2 OO example

<?php
$arr = array(
    'language'=>'en' ,
    'script'  =>'Hans' ,
    'region'  =>'CN',
    'variant2'=>'rozaj' ,
    'variant1'=>'nedis' ,
    'private1'=>'prv1' ,
    'private2'=>'prv2'
);
echo Locale::composeLocale( $arr );
?>

O exemplo acima irá imprimir:

Locale: en_Hans_CN_nedis_rozaj_x_prv1_prv2

Veja Também

  • locale_parse() - Returns a key-value array of locale ID subtag elements.

Locale::acceptFromHttp
Locale::filterMatches
Locale


Checks if a language tag filter matches with locale

Locale::composeLocale
Locale::getAllVariants
Locale
PHP Manual

Locale::filterMatches

locale_filter_matches

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::filterMatches -- locale_filter_matches — Checks if a language tag filter matches with locale

Descrição

Object oriented style

static bool Locale::filterMatches ( string $langtag , string $locale [, bool $canonicalize = false ] )

Procedural style

bool locale_filter_matches ( string $langtag , string $locale [, bool $canonicalize = false ] )

Checks if a $langtag filter matches with $locale according to RFC 4647's basic filtering algorithm

Parâmetros

langtag

The language tag to check

locale

The language range to check against

canonicalize

If true, the arguments will be converted to canonical form before matching.

Valor Retornado

TRUE if $locale matches $langtag FALSE otherwise.

Exemplos

Exemplo #1 locale_filter_matches() example

<?php
echo (locale_filter_matches('de-DEVA','de-DE', false)) ? "Matches" : "Does not match";
echo '; ';
echo (locale_filter_matches('de-DE_1996','de-DE', false)) ? "Matches" : "Does not match";
?>

Exemplo #2 OO example

<?php
echo (Locale::filterMatches('de-DEVA','de-DE', false)) ? "Matches" : "Does not match";
echo '; ';
echo (Locale::filterMatches('de-DE-1996','de-DE', false)) ? "Matches" : "Does not match";
?>

O exemplo acima irá imprimir:

Does not match; Matches

Veja Também

  • locale_lookup() - Searches the language tag list for the best match to the language

Locale::composeLocale
Locale::getAllVariants
Locale


Gets the variants for the input locale

Locale::filterMatches
Locale::getDefault
Locale
PHP Manual

Locale::getAllVariants

locale_get_all_variants

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getAllVariants -- locale_get_all_variants — Gets the variants for the input locale

Descrição

Object oriented style

static array Locale::getAllVariants ( string $locale )

Procedural style

array locale_get_all_variants ( string $locale )

Gets the variants for the input locale

Parâmetros

locale

The locale to extract the variants from

Valor Retornado

The array containing the list of all variants subtag for the locale or NULL if not present

Exemplos

Exemplo #1 locale_get_all_variants() example

<?php
$arr = locale_get_all_variants('sl_IT_NEDIS_ROJAZ_1901');
var_export( $arr );
?>

Exemplo #2 OO example

<?php
 $arr = Locale::getAllVariants('sl_IT_NEDIS_ROJAZ_1901');
 var_export( $arr );
?>

O exemplo acima irá imprimir:

array (
    0 => 'NEDIS',
    1 => 'ROJAZ',
    2 => '1901',
)

Veja Também

  • locale_get_primary_language() - Gets the primary language for the input locale
  • locale_get_script() - Gets the script for the input locale
  • locale_get_region() - Gets the region for the input locale

Locale::filterMatches
Locale::getDefault
Locale


Gets the default locale value from the INTL global 'default_locale'

Locale::getAllVariants
Locale::getDisplayLanguage
Locale
PHP Manual

Locale::getDefault

locale_get_default

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDefault -- locale_get_default — Gets the default locale value from the INTL global 'default_locale'

Descrição

Object oriented style

static string Locale::getDefault ( void )

Procedural style

string locale_get_default ( void )

Gets the default locale value. At the PHP initialization this value is set to 'intl.default_locale' value from php.ini if that value exists or from ICU's function uloc_getDefault().

Parâmetros

Valor Retornado

The current runtime locale

Exemplos

Exemplo #1 locale_get_default() example

<?php
ini_set('intl.default_locale', 'de-DE');
echo locale_get_default();
echo '; ';
locale_set_default('fr');
echo locale_get_default();
?>

Exemplo #2 OO example

<?php
ini_set('intl.default_locale', 'de-DE');
echo Locale::getDefault();
echo '; ';
Locale::setDefault('fr');
echo Locale::getDefault();
?>

O exemplo acima irá imprimir:

de-DE; fr

Veja Também

  • locale_set_default() - sets the default runtime locale

Locale::getAllVariants
Locale::getDisplayLanguage
Locale


Returns an appropriately localized display name for language of the inputlocale

Locale::getDefault
Locale::getDisplayName
Locale
PHP Manual

Locale::getDisplayLanguage

locale_get_display_language

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDisplayLanguage -- locale_get_display_language — Returns an appropriately localized display name for language of the inputlocale

Descrição

Object oriented style

static string Locale::getDisplayLanguage ( string $locale [, string $in_locale ] )

Procedural style

string locale_get_display_language ( string $locale [, string $in_locale ] )

Returns an appropriately localized display name for language of the input locale. If is NULL then the default locale is used.

Parâmetros

locale

The locale to return a display language for

in_locale

Optional format locale to use to display the language name

Valor Retornado

display name of the language for the $locale in the format appropriate for $in_locale.

Exemplos

Exemplo #1 locale_get_display_language() example

<?php
echo locale_get_display_language('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo locale_get_display_language('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo locale_get_display_language('sl-Latn-IT-nedis', 'de');
?>

Exemplo #2 OO example

<?php
echo Locale::getDisplayLanguage('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo Locale::getDisplayLanguage('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo Locale::getDisplayLanguage('sl-Latn-IT-nedis', 'de');
?>

O exemplo acima irá imprimir:

Slovenian;
slov\xc3\xa8ne;
Slowenisch

Veja Também

  • locale_get_display_name() - Returns an appropriately localized display name for the input locale
  • locale_get_display_script() - Returns an appropriately localized display name for script of the input locale
  • locale_get_display_region() - Returns an appropriately localized display name for region of the input locale
  • locale_get_display_variant() - Returns an appropriately localized display name for variants of the input locale

Locale::getDefault
Locale::getDisplayName
Locale


Returns an appropriately localized display name for the input locale

Locale::getDisplayLanguage
Locale::getDisplayRegion
Locale
PHP Manual

Locale::getDisplayName

locale_get_display_name

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDisplayName -- locale_get_display_name — Returns an appropriately localized display name for the input locale

Descrição

Object oriented style

static string Locale::getDisplayName ( string $locale [, string $in_locale ] )

Procedural style

string locale_get_display_name ( string $locale [, string $in_locale ] )

Returns an appropriately localized display name for the input locale. If is NULL then the default locale is used.

Parâmetros

locale

The locale to return a display name for.

in_locale

optional format locale

Valor Retornado

Display name of the locale in the format appropriate for $in_locale.

Exemplos

Exemplo #1 locale_get_display_name() example

<?php
echo locale_get_display_name('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo locale_get_display_name('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo locale_get_display_name('sl-Latn-IT-nedis', 'de');
?>

Exemplo #2 OO example

<?php
echo Locale::getDisplayName('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo Locale::getDisplayName('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo Locale::getDisplayName('sl-Latn-IT-nedis', 'de');
?>

O exemplo acima irá imprimir:

Slovenian (Latin, Italy, Natisone dialect);
slov\xc3\xa8ne (latin, Italie, dialecte de Natisone;
Slowenisch (Lateinisch, Italien, NEDIS)

Veja Também

  • locale_get_display_language() - Returns an appropriately localized display name for language of the inputlocale
  • locale_get_display_script() - Returns an appropriately localized display name for script of the input locale
  • locale_get_display_region() - Returns an appropriately localized display name for region of the input locale
  • locale_get_display_variant() - Returns an appropriately localized display name for variants of the input locale

Locale::getDisplayLanguage
Locale::getDisplayRegion
Locale


Returns an appropriately localized display name for region of the input locale

Locale::getDisplayName
Locale::getDisplayScript
Locale
PHP Manual

Locale::getDisplayRegion

locale_get_display_region

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDisplayRegion -- locale_get_display_region — Returns an appropriately localized display name for region of the input locale

Descrição

Object oriented style

static string Locale::getDisplayRegion ( string $locale [, string $in_locale ] )

Procedural style

string locale_get_display_region ( string $locale [, string $in_locale ] )

Returns an appropriately localized display name for region of the input locale. If is NULL then the default locale is used.

Parâmetros

locale

The locale to return a display region for.

in_locale

Optional format locale to use to display the region name

Valor Retornado

display name of the region for the $locale in the format appropriate for $in_locale.

Exemplos

Exemplo #1 locale_get_display_region() example

<?php
echo locale_get_display_region('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo locale_get_display_region('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo locale_get_display_region('sl-Latn-IT-nedis', 'de');
?>

Exemplo #2 OO example

<?php
echo Locale::getDisplayRegion('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo Locale::getDisplayRegion('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo Locale::getDisplayRegion('sl-Latn-IT-nedis', 'de');
?>

O exemplo acima irá imprimir:

Italy;
Italie;
Italien

Veja Também

  • locale_get_display_name() - Returns an appropriately localized display name for the input locale
  • locale_get_display_language() - Returns an appropriately localized display name for language of the inputlocale
  • locale_get_display_script() - Returns an appropriately localized display name for script of the input locale
  • locale_get_display_variant() - Returns an appropriately localized display name for variants of the input locale

Locale::getDisplayName
Locale::getDisplayScript
Locale


Returns an appropriately localized display name for script of the input locale

Locale::getDisplayRegion
Locale::getDisplayVariant
Locale
PHP Manual

Locale::getDisplayScript

locale_get_display_script

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDisplayScript -- locale_get_display_script — Returns an appropriately localized display name for script of the input locale

Descrição

Object oriented style

static string Locale::getDisplayScript ( string $locale [, string $in_locale ] )

Procedural style

string locale_get_display_script ( string $locale [, string $in_locale ] )

Returns an appropriately localized display name for script of the input locale. If is NULL then the default locale is used.

Parâmetros

locale

The locale to return a display script for

in_locale

Optional format locale to use to display the script name

Valor Retornado

Display name of the script for the $locale in the format appropriate for $in_locale.

Exemplos

Exemplo #1 locale_get_display_script() example

<?php
echo locale_get_display_script('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo locale_get_display_script('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo locale_get_display_script('sl-Latn-IT-nedis', 'de');
?>

Exemplo #2 OO example

<?php
echo Locale::getDisplayScript('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo Locale::getDisplayScript('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo Locale::getDisplayScript('sl-Latn-IT-nedis', 'de');
?>

O exemplo acima irá imprimir:

Latin;
latin;
Lateinisch

Veja Também

  • locale_get_display_name() - Returns an appropriately localized display name for the input locale
  • locale_get_display_language() - Returns an appropriately localized display name for language of the inputlocale
  • locale_get_display_region() - Returns an appropriately localized display name for region of the input locale
  • locale_get_display_variant() - Returns an appropriately localized display name for variants of the input locale

Locale::getDisplayRegion
Locale::getDisplayVariant
Locale


Returns an appropriately localized display name for variants of the input locale

Locale::getDisplayScript
Locale::getKeywords
Locale
PHP Manual

Locale::getDisplayVariant

locale_get_display_variant

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getDisplayVariant -- locale_get_display_variant — Returns an appropriately localized display name for variants of the input locale

Descrição

Object oriented style

static string Locale::getDisplayVariant ( string $locale [, string $in_locale ] )

Procedural style

string locale_get_display_variant ( string $locale [, string $in_locale ] )

Returns an appropriately localized display name for variants of the input locale. If is NULL then the default locale is used.

Parâmetros

locale

The locale to return a display variant for

in_locale

Optional format locale to use to display the variant name

Valor Retornado

Display name of the variant for the $locale in the format appropriate for $in_locale.

Exemplos

Exemplo #1 locale_get_display_variant() example

<?php
echo locale_get_display_variant('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo locale_get_display_variant('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo locale_get_display_variant('sl-Latn-IT-nedis', 'de');
?>

Exemplo #2 OO example

<?php
echo Locale::getDisplayVariant('sl-Latn-IT-nedis', 'en');
echo ";\n";
echo Locale::getDisplayVariant('sl-Latn-IT-nedis', 'fr');
echo ";\n";
echo Locale::getDisplayVariant('sl-Latn-IT-nedis', 'de');
?>

O exemplo acima irá imprimir:

Natisone dialect;
dialecte de Natisone;
NEDIS

Veja Também

  • locale_get_display_name() - Returns an appropriately localized display name for the input locale
  • locale_get_display_language() - Returns an appropriately localized display name for language of the inputlocale
  • locale_get_display_script() - Returns an appropriately localized display name for script of the input locale
  • locale_get_display_region() - Returns an appropriately localized display name for region of the input locale

Locale::getDisplayScript
Locale::getKeywords
Locale


Gets the keywords for the input locale

Locale::getDisplayVariant
Locale::getPrimaryLanguage
Locale
PHP Manual

Locale::getKeywords

locale_get_keywords

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getKeywords -- locale_get_keywords — Gets the keywords for the input locale

Descrição

Object oriented style

static array Locale::getKeywords ( string $locale )

Procedural style

array locale_get_keywords ( string $locale )

Gets the keywords for the input locale.

Parâmetros

locale

The locale to extract the keywords from

Valor Retornado

Associative array containing the keyword-value pairs for this locale

Exemplos

Exemplo #1 locale_get_keywords() example

<?php
$keywords_arr = locale_get_keywords( 'de_DE@currency=EUR;collation=PHONEBOOK' );
if ($keywords_arr) {
    foreach ($keywords_arr as $key => $value) {
        echo "$key = $value\n";
    }
}
?>

Exemplo #2 OO example

<?php
$keywords_arr = Locale::getKeywords( 'de_DE@currency=EUR;collation=PHONEBOOK' );
if ($keywords_arr) {
    foreach( $keywords_arr as $key => $value){
        echo "$key = $value\n";
    }
}
?>

O exemplo acima irá imprimir:

collation = PHONEBOOK
currency = EUR

Veja Também

  • locale_get_all_variants() - Gets the variants for the input locale

Locale::getDisplayVariant
Locale::getPrimaryLanguage
Locale


Gets the primary language for the input locale

Locale::getKeywords
Locale::getRegion
Locale
PHP Manual

Locale::getPrimaryLanguage

locale_get_primary_language

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getPrimaryLanguage -- locale_get_primary_language — Gets the primary language for the input locale

Descrição

Object oriented style

static string Locale::getPrimaryLanguage ( string $locale )

Procedural style

string locale_get_primary_language ( string $locale )

Gets the primary language for the input locale

Parâmetros

locale

The locale to extract the primary language code from

Valor Retornado

The language code associated with the language or NULL in case of error.

Exemplos

Exemplo #1 locale_get_primary_language() example

<?php
echo locale_get_primary_language('zh-Hant');
?>

Exemplo #2 OO example

<?php
echo Locale::getPrimaryLanguage('zh-Hant');
?>

O exemplo acima irá imprimir:

zh

Veja Também

  • locale_get_script() - Gets the script for the input locale
  • locale_get_region() - Gets the region for the input locale
  • locale_get_all_variants() - Gets the variants for the input locale

Locale::getKeywords
Locale::getRegion
Locale


Gets the region for the input locale

Locale::getPrimaryLanguage
Locale::getScript
Locale
PHP Manual

Locale::getRegion

locale_get_region

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getRegion -- locale_get_region — Gets the region for the input locale

Descrição

Object oriented style

static string Locale::getRegion ( string $locale )

Procedural style

string locale_get_region ( string $locale )

Gets the region for the input locale.

Parâmetros

locale

The locale to extract the region code from

Valor Retornado

The region subtag for the locale or NULL if not present

Exemplos

Exemplo #1 locale_get_region() example

<?php
echo locale_get_region('de-CH-1901');
?>

Exemplo #2 OO example

<?php
echo Locale::getRegion('de-CH-1901');
?>

O exemplo acima irá imprimir:

CH

Veja Também

  • locale_get_primary_language() - Gets the primary language for the input locale
  • locale_get_script() - Gets the script for the input locale
  • locale_get_all_variants() - Gets the variants for the input locale

Locale::getPrimaryLanguage
Locale::getScript
Locale


Gets the script for the input locale

Locale::getRegion
Locale::lookup
Locale
PHP Manual

Locale::getScript

locale_get_script

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::getScript -- locale_get_script — Gets the script for the input locale

Descrição

Object oriented style

static string Locale::getScript ( string $locale )

Procedural style

string locale_get_script ( string $locale )

Gets the script for the input locale.

Parâmetros

locale

The locale to extract the script code from

Valor Retornado

The script subtag for the locale or NULL if not present

Exemplos

Exemplo #1 locale_get_script() example

<?php
echo locale_get_script('sr-Cyrl');
?>

Exemplo #2 OO example

<?php
echo Locale::getScript('sr-Cyrl');
?>

O exemplo acima irá imprimir:

Cyrl

Veja Também

  • locale_get_primary_language() - Gets the primary language for the input locale
  • locale_get_region() - Gets the region for the input locale
  • locale_get_all_variants() - Gets the variants for the input locale

Locale::getRegion
Locale::lookup
Locale


Searches the language tag list for the best match to the language

Locale::getScript
Locale::parseLocale
Locale
PHP Manual

Locale::lookup

locale_lookup

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::lookup -- locale_lookup — Searches the language tag list for the best match to the language

Descrição

Object oriented style

static string Locale::lookup ( array $langtag , string $locale [, bool $canonicalize = false [, string $default ]] )

Procedural style

string locale_lookup ( array $langtag , string $locale [, bool $canonicalize = false [, string $default ]] )

Searches the items in langtag for the best match to the language range specified in locale according to RFC 4647's lookup algorithm.

Parâmetros

langtag

An array containing a list of language tags to compare to locale. Maximum 100 items allowed.

locale

The locale to use as the language range when matching.

canonicalize

If true, the arguments will be converted to canonical form before matching.

default

The locale to use if no match is found.

Valor Retornado

The closest matching language tag or default value.

Exemplos

Exemplo #1 locale_lookup() example

<?php
$arr = array(
    'de-DEVA',
    'de-DE-1996',
    'de',
    'de-De'
);
echo locale_lookup($arr, 'de-DE-1996-x-prv1-prv2', 'en_US');
?>

Exemplo #2 OO example

<?php
$arr = array(
    'de-DEVA',
    'de-DE-1996',
    'de',
    'de-De'
);
echo Locale::lookup($arr, 'de-DE-1996-x-prv1-prv2', 'en_US');
?>

O exemplo acima irá imprimir:

de_de_1996

Veja Também

  • locale_filter_matches() - Checks if a language tag filter matches with locale

Locale::getScript
Locale::parseLocale
Locale


Returns a key-value array of locale ID subtag elements.

Locale::lookup
Locale::setDefault
Locale
PHP Manual

Locale::parseLocale

locale_parse

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::parseLocale -- locale_parse — Returns a key-value array of locale ID subtag elements.

Descrição

Object oriented style

static array Locale::parseLocale ( string $locale )

Procedural style

array locale_parse ( string $locale )

Returns a key-value array of locale ID subtag elements.

Parâmetros

locale

The locale to extract the subtag array from. Note: The 'variant' and 'private' subtags can take maximum 15 values whereas 'extlang' can take maximum 3 values.

Valor Retornado

Returns an array containing a list of key-value pairs, where the keys identify the particular locale ID subtags, and the values are the associated subtag values. The array will be ordered as the locale id subtags e.g. in the locale id if variants are '-varX-varY-varZ' then the returned array will have variant0=>varX , variant1=>varY , variant2=>varZ

Exemplos

Exemplo #1 locale_parse() example

<?php
$arr = locale_parse('sl-Latn-IT-nedis');
if ($arr) {
    foreach ($arr as $key => $value) {
        echo "$key : $value , ";
    }
}
?>

Exemplo #2 OO example

<?php
$arr = Locale::parseLocale('sl-Latn-IT-nedis');
if ($arr) {
    foreach ($arr as $key => $value) {
        echo "$key : $value , ";
    }
}
?>

O exemplo acima irá imprimir:

language : sl , script : Latn , region : IT , variant0 : NEDIS ,

Veja Também

  • locale_compose() - Returns a correctly ordered and delimited locale ID

Locale::lookup
Locale::setDefault
Locale


sets the default runtime locale

Locale::parseLocale
Normalizer
Locale
PHP Manual

Locale::setDefault

locale_set_default

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Locale::setDefault -- locale_set_default — sets the default runtime locale

Descrição

Object oriented style

static bool Locale::setDefault ( string $locale )

Procedural style

bool locale_set_default ( string $locale )

Sets the default runtime locale to $locale. This changes the value of INTL global 'default_locale' locale identifier. UAX #35 extensions are accepted.

Parâmetros

locale

Is a BCP 47 compliant language tag containing the

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 locale_set_default() example

<?php
locale_set_default('de-DE');
echo locale_get_default();
?>

Exemplo #2 OO example

<?php
Locale::setDefault('de-DE');
echo Locale::getDefault();
?>

O exemplo acima irá imprimir:

de-DE

Veja Também

  • locale_get_default() - Gets the default locale value from the INTL global 'default_locale'

Locale::parseLocale
Normalizer
Locale


The Normalizer class

Introdução

Normalization is a process that involves transforming characters and sequences of characters into a formally-defined underlying representation. This process is most important when text needs to be compared for sorting and searching, but it is also used when storing text to ensure that the text is stored in a consistent representation.

The Unicode Consortium has defined a number of normalization forms reflecting the various needs of applications:

  • Normalization Form D (NFD) - Canonical Decomposition
  • Normalization Form C (NFC) - Canonical Decomposition followed by Canonical Composition
  • Normalization Form KD (NFKD) - Compatibility Decomposition
  • Normalization Form KC (NFKC) - Compatibility Decomposition followed by Canonical Composition
The different forms are defined in terms of a set of transformations on the text, transformations that are expressed by both an algorithm and a set of data files.

Sinopse da classe

Normalizer {
/* Methods */
static bool isNormalized ( string $input [, string $form = Normalizer::FORM_C ] )
static string normalize ( string $input [, string $form = Normalizer::FORM_C ] )
}

Constantes pré-definidas

The following constants define the normalization form used by the normalizer:

Normalizer::FORM_C (string)
Normalization Form C (NFC) - Canonical Decomposition followed by Canonical Composition
Normalizer::FORM_D (string)
Normalization Form D (NFD) - Canonical Decomposition
Normalizer::FORM_KC (string)
Normalization Form KC (NFKC) - Compatibility Decomposition, followed by Canonical Composition
Normalizer::FORM_KD (string)
Normalization Form KD (NFKD) - Compatibility Decomposition
Normalizer::NONE (string)
No decomposition/composition
Normalizer::OPTION_DEFAULT (string)
Default normalization options

Veja Também

  • » Unicode Normalization
  • » Unicode Normalization FAQ
  • » ICU User Guide - Normalization
  • » ICU API Reference - Normalization

Índice

  • Normalizer::isNormalized — Checks if the provided string is already in the specified normalization form.
  • Normalizer::normalize — Normalizes the input provided and returns the normalized string
Locale::setDefault
Normalizer::isNormalized
intl


Checks if the provided string is already in the specified normalization form.

Normalizer
Normalizer::normalize
Normalizer
PHP Manual

Normalizer::isNormalized

normalizer_is_normalized

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Normalizer::isNormalized -- normalizer_is_normalized — Checks if the provided string is already in the specified normalization form.

Descrição

Object oriented style

static bool Normalizer::isNormalized ( string $input [, string $form = Normalizer::FORM_C ] )

Procedural style

bool normalizer_is_normalized ( string $input [, string $form = Normalizer::FORM_C ] )

Checks if the provided string is already in the specified normalization form.

Parâmetros

input

The input string to normalize

form

One of the normalization forms.

Valor Retornado

TRUE if normalized, FALSE otherwise or if there an error

Exemplos

Exemplo #1 normalizer_is_normalized() example

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_orig = 'A' . $char_combining_ring_above;
$char_norm = normalizer_normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo ( normalizer_is_normalized($char_orig, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
echo '; ';
echo ( normalizer_is_normalized($char_norm, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
?>

Exemplo #2 OO example

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_orig = 'A' . $char_combining_ring_above;
$char_norm = Normalizer::normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo ( Normalizer::isNormalized($char_orig, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
echo '; ';
echo ( Normalizer::isNormalized($char_norm, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
?>

O exemplo acima irá imprimir:

not normalized; normalized

Veja Também

  • normalizer_normalize() - Normalizes the input provided and returns the normalized string

Normalizer
Normalizer::normalize
Normalizer


Normalizes the input provided and returns the normalized string

Normalizer::isNormalized
MessageFormatter
Normalizer
PHP Manual

Normalizer::normalize

normalizer_normalize

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

Normalizer::normalize -- normalizer_normalize — Normalizes the input provided and returns the normalized string

Descrição

Object oriented style

static string Normalizer::normalize ( string $input [, string $form = Normalizer::FORM_C ] )

Procedural style

string normalizer_normalize ( string $input [, string $form = Normalizer::FORM_C ] )

Normalizes the input provided and returns the normalized string

Parâmetros

input

The input string to normalize

form

One of the normalization forms.

Valor Retornado

The normalized string or NULL if an error occurred.

Exemplos

Exemplo #1 normalizer_normalize() example

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_1 = normalizer_normalize( $char_A_ring, Normalizer::FORM_C );
$char_2 = normalizer_normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo urlencode($char_1);
echo ' ';
echo urlencode($char_2);
?>

Exemplo #2 OO example

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_1 = Normalizer::normalize( $char_A_ring, Normalizer::FORM_C );
$char_2 = Normalizer::normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo urlencode($char_1);
echo ' ';
echo urlencode($char_2);
?>

O exemplo acima irá imprimir:

%C3%85 %C3%85

Veja Também

  • normalizer_is_normalized() - Checks if the provided string is already in the specified normalization form.

Normalizer::isNormalized
MessageFormatter
Normalizer


The MessageFormatter class

Introdução

MessageFormatter is a concrete class that enables users to produce concatenated, language-neutral messages. The methods supplied in this class are used to build all the messages that are seen by end users.

The MessageFormatter class assembles messages from various fragments (such as text fragments, numbers, and dates) supplied by the program. Because of the MessageFormatter class, the program does not need to know the order of the fragments. The class uses the formatting specifications for the fragments to assemble them into a message that is contained in a single string within a resource bundle. For example, MessageFormatter enables you to print the phrase "Finished printing x out of y files..." in a manner that still allows for flexibility in translation.

Previously, an end user message was created as a sentence and handled as a string. This procedure created problems for localizers because the sentence structure, word order, number format and so on are very different from language to language. The language-neutral way to create messages keeps each part of the message separate and provides keys to the data. Using these keys, the MessageFormatter class can concatenate the parts of the message, localize them, and display a well-formed string to the end user.

MessageFormatter takes a set of objects, formats them, and then inserts the formatted strings into the pattern at the appropriate places. Choice formats can be used in conjunction with MessageFormatter to handle plurals, match numbers, and select from an array of items. Typically, the message format will come from resources and the arguments will be dynamically set at runtime.

Sinopse da classe

MessageFormatter {
/* Methods */
__construct ( string $locale , string $pattern )
MessageFormatter create ( string $locale , string $pattern )
static string formatMessage ( string $locale , string $pattern , array $args )
string format ( array $args )
int getErrorCode ( void )
string getErrorMessage ( void )
string getLocale ( void )
string getPattern ( void )
static array parseMessage ( string $locale , string $pattern , string $source )
array parse ( string $value )
bool setPattern ( string $pattern )
}

Veja Também

  • » ICU formatting documentation
  • » ICU message formatting description
  • » ICU message formatters
  • » ICU choice formatters

Índice

  • MessageFormatter::create — Constructs a new Message Formatter
  • MessageFormatter::formatMessage — Quick format message
  • MessageFormatter::format — Format the message
  • MessageFormatter::getErrorCode — Get the error code from last operation
  • MessageFormatter::getErrorMessage — Get the error text from the last operation
  • MessageFormatter::getLocale — Get the locale for which the formatter was created.
  • MessageFormatter::getPattern — Get the pattern used by the formatter
  • MessageFormatter::parseMessage — Quick parse input string
  • MessageFormatter::parse — Parse input string according to pattern
  • MessageFormatter::setPattern — Set the pattern used by the formatter
Normalizer::normalize
MessageFormatter::create
intl


Constructs a new Message Formatter

MessageFormatter
MessageFormatter::formatMessage
MessageFormatter
PHP Manual

MessageFormatter::create

MessageFormatter::__construct

msgfmt_create

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::create -- MessageFormatter::__construct -- msgfmt_create — Constructs a new Message Formatter

Descrição

Object oriented style (method)

MessageFormatter MessageFormatter::create ( string $locale , string $pattern )

Object oriented style (constructor):

MessageFormatter::__construct() ( string $locale , string $pattern )

Procedural style

MessageFormatter msgfmt_create ( string $locale , string $pattern )

Constructs a new Message Formatter

Parâmetros

locale

The locale to use when formatting arguments

pattern

The pattern string to stick arguments into. The pattern uses an 'apostrophe-friendly' syntax; it is run through » umsg_autoQuoteApostrophe before being interpreted.

Valor Retornado

The formatter object

Exemplos

Exemplo #1 msgfmt_create() example

<?php
$fmt = msgfmt_create("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
$fmt = msgfmt_create("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo $fmt->format(array(4560, 123, 4560/123));
$fmt = new MessageFormatter("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo $fmt->format(array(4560, 123, 4560/123));
?>

O exemplo acima irá imprimir:

4,560 monkeys on 123 trees make 37.073 monkeys per tree
4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

Veja Também

  • msgfmt_format() - Format the message
  • msgfmt_parse() - Parse input string according to pattern
  • msgfmt_get_error_code() - Get the error code from last operation
  • msgfmt_get_error_message() - Get the error text from the last operation

MessageFormatter
MessageFormatter::formatMessage
MessageFormatter


Quick format message

MessageFormatter::create
MessageFormatter::format
MessageFormatter
PHP Manual

MessageFormatter::formatMessage

msgfmt_format_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::formatMessage -- msgfmt_format_message — Quick format message

Descrição

Object oriented style

static string MessageFormatter::formatMessage ( string $locale , string $pattern , array $args )

Procedural style

string msgfmt_format_message ( string $locale , string $pattern , array $args )

Quick formatting function that formats the string without having to explicitly create the formatter object. Use this function when the format operation is done only once and does not need and parameters or state to be kept.

Parâmetros

locale

The locale to use for formatting locale-dependent parts

pattern

The pattern string to insert things into. The pattern uses an 'apostrophe-friendly' syntax; it is run through » umsg_autoQuoteApostrophe before being interpreted.

args

The array of values to insert into the format string

Valor Retornado

The formatted pattern string or FALSE if an error occurred

Exemplos

Exemplo #1 msgfmt_format_message() example

<?php
echo msgfmt_format_message("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree", array(4560, 123, 4560/123));
echo msgfmt_format_message("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", array(4560, 123, 4560/123));
?>

Exemplo #2 OO example

<?php
echo msgfmt_format_message("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree", array(4560, 123, 4560/123));
echo msgfmt_format_message("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", array(4560, 123, 4560/123));
?>

O exemplo acima irá imprimir:

4,560 monkeys on 123 trees make 37.073 monkeys per tree
4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_parse() - Parse input string according to pattern
  • msgfmt_get_error_code() - Get the error code from last operation
  • msgfmt_get_error_message() - Get the error text from the last operation

MessageFormatter::create
MessageFormatter::format
MessageFormatter


Format the message

MessageFormatter::formatMessage
MessageFormatter::getErrorCode
MessageFormatter
PHP Manual

MessageFormatter::format

msgfmt_format

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::format -- msgfmt_format — Format the message

Descrição

Object oriented style

string MessageFormatter::format ( array $args )

Procedural style

string msgfmt_format ( MessageFormatter $fmt , array $args )

Format the message by substituting the data into the format string according to the locale rules

Parâmetros

fmt

The message formatter

args

Arguments to insert into the format string

Valor Retornado

The formatted string, or FALSE if an error occurred

Exemplos

Exemplo #1 msgfmt_format() example

<?php
$fmt = msgfmt_create("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
$fmt = msgfmt_create("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo $fmt->format(array(4560, 123, 4560/123));
$fmt = new MessageFormatter("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo $fmt->format(array(4560, 123, 4560/123));
?>

O exemplo acima irá imprimir:

4,560 monkeys on 123 trees make 37.073 monkeys per tree
4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_parse() - Parse input string according to pattern
  • msgfmt_format_message() - Quick format message
  • msgfmt_get_error_code() - Get the error code from last operation
  • msgfmt_get_error_message() - Get the error text from the last operation

MessageFormatter::formatMessage
MessageFormatter::getErrorCode
MessageFormatter


Get the error code from last operation

MessageFormatter::format
MessageFormatter::getErrorMessage
MessageFormatter
PHP Manual

MessageFormatter::getErrorCode

msgfmt_get_error_code

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::getErrorCode -- msgfmt_get_error_code — Get the error code from last operation

Descrição

Object oriented style

int MessageFormatter::getErrorCode ( void )

Procedural style

int msgfmt_get_error_code ( MessageFormatter $fmt )

Get the error code from last operation.

Parâmetros

fmt

The message formatter

Valor Retornado

The error code, one of UErrorCode values. Initial value is U_ZERO_ERROR.

Exemplos

Exemplo #1 msgfmt_get_error_code() example

<?php
$fmt = msgfmt_create("en_US", "{0, number} monkeys on {1, number} trees");
$str = msgfmt_format($fmt, array());
if(!$str) {
    echo "ERROR: ".msgfmt_get_error_message($fmt) . " (" . msgfmt_get_error_code($fmt) . ")\n";
}
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter("en_US", "{0, number} monkeys on {1, number} trees");
$str = $fmt->format(array());
if(!$str) {
    echo "ERROR: ".$fmt->getErrorMessage() . " (" . $fmt->getErrorCode() . ")\n";
}
?>

O exemplo acima irá imprimir:

ERROR: msgfmt_format: not enough parameters: U_ILLEGAL_ARGUMENT_ERROR (1)

Veja Também

  • msgfmt_get_error_message() - Get the error text from the last operation
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

MessageFormatter::format
MessageFormatter::getErrorMessage
MessageFormatter


Get the error text from the last operation

MessageFormatter::getErrorCode
MessageFormatter::getLocale
MessageFormatter
PHP Manual

MessageFormatter::getErrorMessage

msgfmt_get_error_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::getErrorMessage -- msgfmt_get_error_message — Get the error text from the last operation

Descrição

Object oriented style

string MessageFormatter::getErrorMessage ( void )

Procedural style

string msgfmt_get_error_message ( MessageFormatter $fmt )

Get the error text from the last operation.

Parâmetros

fmt

The message formatter

Valor Retornado

Description of the last error.

Exemplos

Exemplo #1 msgfmt_get_error_message() example

<?php
$fmt = msgfmt_create("en_US", "{0, number} monkeys on {1, number} trees");
$str = msgfmt_format($fmt, array());
if(!$str) {
    echo "ERROR: ".msgfmt_get_error_message($fmt) . " (" . msgfmt_get_error_code($fmt) . ")\n";
}
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter("en_US", "{0, number} monkeys on {1, number} trees");
$str = $fmt->format(array());
if(!$str) {
    echo "ERROR: ".$fmt->getErrorMessage() . " (" . $fmt->getErrorCode() . ")\n";
}
?>

O exemplo acima irá imprimir:

ERROR: msgfmt_format: not enough parameters: U_ILLEGAL_ARGUMENT_ERROR (1)

Veja Também

  • msgfmt_get_error_code() - Get the error code from last operation
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

MessageFormatter::getErrorCode
MessageFormatter::getLocale
MessageFormatter


Get the locale for which the formatter was created.

MessageFormatter::getErrorMessage
MessageFormatter::getPattern
MessageFormatter
PHP Manual

MessageFormatter::getLocale

msgfmt_get_locale

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::getLocale -- msgfmt_get_locale — Get the locale for which the formatter was created.

Descrição

Object oriented style

string MessageFormatter::getLocale ( void )

Procedural style

string msgfmt_get_locale ( NumberFormatter $formatter )

Get the locale for which the formatter was created.

Parâmetros

formatter

The formatter resource

Valor Retornado

The locale name

Exemplos

Exemplo #1 msgfmt_get_locale() example

<?php
$fmt = msgfmt_create('en_US', "Number {0,number}");
echo msgfmt_get_locale($fmt);
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter('en_US', "Number {0,number}");
echo $fmt->getLocale();
?>

O exemplo acima irá imprimir:

en_US

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter

MessageFormatter::getErrorMessage
MessageFormatter::getPattern
MessageFormatter


Get the pattern used by the formatter

MessageFormatter::getLocale
MessageFormatter::parseMessage
MessageFormatter
PHP Manual

MessageFormatter::getPattern

msgfmt_get_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::getPattern -- msgfmt_get_pattern — Get the pattern used by the formatter

Descrição

Object oriented style

string MessageFormatter::getPattern ( void )

Procedural style

string msgfmt_get_pattern ( MessageFormatter $fmt )

Get the pattern used by the formatter

Parâmetros

fmt

The message formatter

Valor Retornado

The pattern string for this message formatter

Exemplos

Exemplo #1 msgfmt_get_pattern() example

<?php
$fmt = msgfmt_create( "en_US", "{0, number} monkeys on {1, number} trees" );
echo "Default pattern: '" . msgfmt_get_pattern( $fmt ) . "'\n";
echo "Formatting result: " . msgfmt_format( $fmt, array(123, 456) ) . "\n";

msgfmt_set_pattern( $fmt, "{0, number} trees hosting {1, number} monkeys" );
echo "New pattern: '" . msgfmt_get_pattern( $fmt ) . "'\n";
echo "Formatted number: " . msgfmt_format( $fmt, array(123, 456) ) . "\n";
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter( "en_US", "{0, number} monkeys on {1, number} trees" );
echo "Default pattern: '" . $fmt->getPattern() . "'\n";
echo "Formatting result: " . $fmt->format(array(123, 456)) . "\n";

$fmt->setPattern("{0, number} trees hosting {1, number} monkeys" );
echo "New pattern: '" . $fmt->getPattern() . "'\n";
echo "Formatted number: " . $fmt->format(array(123, 456)) . "\n";
?>

O exemplo acima irá imprimir:

Default pattern: '{0,number} monkeys on {1,number} trees'
Formatting result: 123 monkeys on 456 trees
New pattern: '{0,number} trees hosting {1,number} monkeys'
Formatted number: 123 trees hosting 456 monkeys

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_set_pattern() - Set the pattern used by the formatter

MessageFormatter::getLocale
MessageFormatter::parseMessage
MessageFormatter


Quick parse input string

MessageFormatter::getPattern
MessageFormatter::parse
MessageFormatter
PHP Manual

MessageFormatter::parseMessage

msgfmt_parse_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::parseMessage -- msgfmt_parse_message — Quick parse input string

Descrição

Object oriented style

static array MessageFormatter::parseMessage ( string $locale , string $pattern , string $source )

Procedural style

array msgfmt_parse_message ( string $locale , string $pattern , string $value )

Parses input string without explicitly creating the formatter object. Use this function when the format operation is done only once and does not need and parameters or state to be kept.

Parâmetros

locale

The locale to use for parsing locale-dependent parts

pattern

The pattern with which to parse the value.

source

The string to parse, conforming to the pattern.

Valor Retornado

An array containing items extracted, or FALSE on error

Exemplos

Exemplo #1 msgfmt_parse_message() example

<?php
$fmt = msgfmt_parse_message('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                            "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);

$fmt = msgfmt_parse_message('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
                            "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>

Exemplo #2 OO example

<?php
$fmt = MessageFormatter::parseMessage('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                            "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);

$fmt = MessageFormatter::parseMessage('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
                            "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>

O exemplo acima irá imprimir:

array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)
array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_format_message() - Quick format message
  • msgfmt_parse() - Parse input string according to pattern

MessageFormatter::getPattern
MessageFormatter::parse
MessageFormatter


Parse input string according to pattern

MessageFormatter::parseMessage
MessageFormatter::setPattern
MessageFormatter
PHP Manual

MessageFormatter::parse

msgfmt_parse

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::parse -- msgfmt_parse — Parse input string according to pattern

Descrição

Object oriented style

array MessageFormatter::parse ( string $value )

Procedural style

array msgfmt_parse ( MessageFormatter $fmt , string $value )

Parses input string and return any extracted items as an array.

Parâmetros

fmt

The message formatter

value

The string to parse

Valor Retornado

An array containing the items extracted, or FALSE on error

Exemplos

Exemplo #1 msgfmt_parse() example

<?php
$fmt = msgfmt_create('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
$res = msgfmt_parse($fmt, "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($res);

$fmt = msgfmt_create('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
$res = msgfmt_parse($fmt, "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($res);
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
$res = $fmt->parse("4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($res);

$fmt = new MessageFormatter('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
$res = $fmt->parse("4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($res);
?>

O exemplo acima irá imprimir:

array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)
array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_format() - Format the message
  • msgfmt_parse_message() - Quick parse input string

MessageFormatter::parseMessage
MessageFormatter::setPattern
MessageFormatter


Set the pattern used by the formatter

MessageFormatter::parse
IntlDateFormatter
MessageFormatter
PHP Manual

MessageFormatter::setPattern

msgfmt_set_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::setPattern -- msgfmt_set_pattern — Set the pattern used by the formatter

Descrição

Object oriented style

bool MessageFormatter::setPattern ( string $pattern )

Procedural style

bool msgfmt_set_pattern ( MessageFormatter $fmt , string $pattern )

Set the pattern used by the formatter

Parâmetros

fmt

The message formatter

pattern

The pattern string to use in this message formatter. The pattern uses an 'apostrophe-friendly' syntax; it is run through » umsg_autoQuoteApostrophe before being interpreted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 msgfmt_set_pattern() example

<?php
$fmt = msgfmt_create( "en_US", "{0, number} monkeys on {1, number} trees" );
echo "Default pattern: '" . msgfmt_get_pattern( $fmt ) . "'\n";
echo "Formatting result: " . msgfmt_format( $fmt, array(123, 456) ) . "\n";

msgfmt_set_pattern( $fmt, "{0, number} trees hosting {1, number} monkeys" );
echo "New pattern: '" . msgfmt_get_pattern( $fmt ) . "'\n";
echo "Formatted number: " . msgfmt_format( $fmt, array(123, 456) ) . "\n";
?>

Exemplo #2 OO example

<?php
$fmt = new MessageFormatter( "en_US", "{0, number} monkeys on {1, number} trees" );
echo "Default pattern: '" . $fmt->getPattern() . "'\n";
echo "Formatting result: " . $fmt->format(array(123, 456)) . "\n";

$fmt->setPattern("{0, number} trees hosting {1, number} monkeys" );
echo "New pattern: '" . $fmt->getPattern() . "'\n";
echo "Formatted number: " . $fmt->format(array(123, 456)) . "\n";
?>

O exemplo acima irá imprimir:

Default pattern: '{0,number} monkeys on {1,number} trees'
Formatting result: 123 monkeys on 456 trees
New pattern: '{0,number} trees hosting {1,number} monkeys'
Formatted number: 123 trees hosting 456 monkeys

Veja Também

  • msgfmt_create() - Constructs a new Message Formatter
  • msgfmt_get_pattern() - Get the pattern used by the formatter

MessageFormatter::parse
IntlDateFormatter
MessageFormatter


The IntlDateFormatter class

Introdução

Date Formatter is a concrete class that enables locale-dependent formatting/parsing of dates using pattern strings and/or canned patterns.

This class represents the ICU date formatting functionality. It allows users to display dates in a localized format or to parse strings into PHP date values using pattern strings and/or canned patterns.

Class synopsis

IntlDateFormatter {
/* Methods */
__construct ( string $locale , int $datetype , int $timetype [, string $timezone [, int $calendar [, string $pattern ]]] )
static IntlDateFormatter create ( string $locale , int $datetype , int $timetype [, string $timezone [, int $calendar [, string $pattern ]]] )
string format ( mixed $value )
int getCalendar ( void )
int getDateType ( void )
int getErrorCode ( void )
string getErrorMessage ( void )
string getLocale ([ int $which ] )
string getPattern ( void )
int getTimeType ( void )
string getTimeZoneId ( void )
bool isLenient ( void )
array localtime ( string $value [, int &$position ] )
int parse ( string $value [, int &$position ] )
bool setCalendar ( int $which )
bool setLenient ( bool $lenient )
bool setPattern ( string $pattern )
bool setTimeZoneId ( string $zone )
}

Veja Também

  • » ICU Date formatter
  • » ICU Date formats

Constantes pré-definidas

These constants are used to specify different formats in the constructor for DateType and TimeType.

IntlDateFormatter::NONE (integer)
Do not include this element
IntlDateFormatter::FULL (integer)
Completely specified style (Tuesday, April 12, 1952 AD or 3:30:42pm PST)
IntlDateFormatter::LONG (integer)
Long style (January 12, 1952 or 3:30:32pm)
IntlDateFormatter::MEDIUM (integer)
Medium style (Jan 12, 1952)
IntlDateFormatter::SHORT (integer)
Most abbreviated style, only essential data (12/13/52 or 3:30pm)

The following int constants are used to specify the calendar. These calendars are all based directly on the Gregorian calendar. Non-Gregorian calendars need to be specified in locale. Examples might include locale="hi@calendar=BUDDHIST".

IntlDateFormatter::TRADITIONAL (integer)
Non-Gregorian Calendar
IntlDateFormatter::GREGORIAN (integer)
Gregorian Calendar

Índice

  • IntlDateFormatter::create — Create a date formatter
  • IntlDateFormatter::format — Format the date/time value as a string
  • IntlDateFormatter::getCalendar — Get the calendar used for the IntlDateFormatter
  • IntlDateFormatter::getDateType — Get the datetype used for the IntlDateFormatter
  • IntlDateFormatter::getErrorCode — Get the error code from last operation
  • IntlDateFormatter::getErrorMessage — Get the error text from the last operation.
  • IntlDateFormatter::getLocale — Get the locale used by formatter
  • IntlDateFormatter::getPattern — Get the pattern used for the IntlDateFormatter
  • IntlDateFormatter::getTimeType — Get the timetype used for the IntlDateFormatter
  • IntlDateFormatter::getTimeZoneId — Get the timezone-id used for the IntlDateFormatter
  • IntlDateFormatter::isLenient — Get the lenient used for the IntlDateFormatter
  • IntlDateFormatter::localtime — Parse string to a field-based time value
  • IntlDateFormatter::parse — Parse string to a timestamp value
  • IntlDateFormatter::setCalendar — sets the calendar used to the appropriate calendar, which must be
  • IntlDateFormatter::setLenient — Set the leniency of the parser
  • IntlDateFormatter::setPattern — Set the pattern used for the IntlDateFormatter
  • IntlDateFormatter::setTimeZoneId — Sets the time zone to use
MessageFormatter::setPattern
IntlDateFormatter::create
intl


Create a date formatter

IntlDateFormatter
IntlDateFormatter::format
IntlDateFormatter
PHP Manual

IntlDateFormatter::create

datefmt_create

IntlDateFormatter::__construct

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Create a date formatter

Descrição

Object oriented style

static IntlDateFormatter IntlDateFormatter::create ( string $locale , int $datetype , int $timetype [, string $timezone [, int $calendar [, string $pattern ]]] )

Object oriented style (constructor)

IntlDateFormatter::__construct() ( string $locale , int $datetype , int $timetype [, string $timezone [, int $calendar [, string $pattern ]]] )

Procedural style

IntlDateFormatter datefmt_create ( string $locale , int $datetype , int $timetype [, string $timezone [, int $calendar [, string $pattern ]]] )

Create a date formatter

Parâmetros

locale

Locale to use when formatting or parsing.

datetype

Date type to use (none, short, medium, long, full). This is one of the IntlDateFormatter constants.

timetype

Time type to use (none, short, medium, long, full). This is one of the IntlDateFormatter constants.

timezone

Time zone ID, default is system default.

calendar

Calendar to use for formatting or parsing; default is Gregorian. This is one of the IntlDateFormatter calendar constants.

pattern

Optional pattern to use when formatting or parsing. Possible patterns are documented at » http://userguide.icu-project.org/formatparse/datetime.

Valor Retornado

Exemplos

Exemplo #1 datefmt_create() example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
    'America/Los_Angeles', IntlDateFormatter::GREGORIAN  );
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
    'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
     'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "First Formatted output with pattern is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
     'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "Second Formatted output with pattern is ".datefmt_format( $fmt , 0);
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
    'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "First Formatted output is ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
    'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second Formatted output is ".$fmt->format(0);

$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
     'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "First Formatted output with pattern is ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
      'America/Los_Angeles',IntlDateFormatter::GREGORIAN , "MM/dd/yyyy");
echo "Second Formatted output with pattern is ".$fmt->format(0);
?>

O exemplo acima irá imprimir:

First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT
Second Formatted output is Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00
First Formatted output with pattern is 12/31/1969
Second Formatted output with pattern is 12/31/1969

Veja Também

  • datefmt_format() - Format the date/time value as a string
  • datefmt_parse() - Parse string to a timestamp value
  • datefmt_get_error_code() - Get the error code from last operation
  • datefmt_get_error_message() - Get the error text from the last operation.

IntlDateFormatter
IntlDateFormatter::format
IntlDateFormatter


Format the date/time value as a string

IntlDateFormatter::create
IntlDateFormatter::getCalendar
IntlDateFormatter
PHP Manual

IntlDateFormatter::format

datefmt_format

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::format -- datefmt_format — Format the date/time value as a string

Descrição

Object oriented style

string IntlDateFormatter::format ( mixed $value )

Procedural style

string datefmt_format ( IntlDateFormatter $fmt , mixed $value )

Formats the time value as a string.

Parâmetros

fmt

The date formatter resource.

value

Value to format. This may be a DateTime object, an integer representing a Unix timestamp value (seconds since epoch, UTC) or an array in the format output by localtime().

Valor Retornado

The formatted string or, if an error occurred, FALSE.

Histórico

Versão | Descrição
5.3.4 | Support for providing DateTime objects to the value parameter was added.

Exemplos

Exemplo #1 datefmt_format() example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "First Formatted output with pattern is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "Second Formatted output with pattern is ".datefmt_format( $fmt , 0);
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "First Formatted output is ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second Formatted output is ".$fmt->format(0);

$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "First Formatted output with pattern is ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN , "MM/dd/yyyy");
echo "Second Formatted output with pattern is ".$fmt->format(0);
?>

O exemplo acima irá imprimir:

First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT
Second Formatted output is Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00
First Formatted output with pattern is 12/31/1969
Second Formatted output with pattern is 12/31/1969

Veja Também

  • datefmt_create() - Create a date formatter
  • datefmt_parse() - Parse string to a timestamp value
  • datefmt_get_error_code() - Get the error code from last operation
  • datefmt_get_error_message() - Get the error text from the last operation.

IntlDateFormatter::create
IntlDateFormatter::getCalendar
IntlDateFormatter


Get the calendar used for the IntlDateFormatter

IntlDateFormatter::format
IntlDateFormatter::getDateType
IntlDateFormatter
PHP Manual

IntlDateFormatter::getCalendar

datefmt_get_calendar

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getCalendar -- datefmt_get_calendar — Get the calendar used for the IntlDateFormatter

Descrição

Object oriented style

int IntlDateFormatter::getCalendar ( void )

Procedural style

int datefmt_get_calendar ( IntlDateFormatter $fmt )

Parâmetros

fmt

The formatter resource

Valor Retornado

The calendar being used by the formatter.

Exemplos

Exemplo #1 datefmt_get_calendar() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "calendar of the formatter is : ".datefmt_get_calendar($fmt);
datefmt_set_calendar($fmt,IntlDateFormatter::TRADITIONAL);
echo "Now calendar of the formatter is : ".datefmt_get_calendar($fmt);
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "calendar of the formatter is : ".$fmt->getCalendar();
$fmt->setCalendar(IntlDateFormatter::TRADITIONAL);
echo "Now calendar of the formatter is : ".$fmt->getCalendar();

?>

O exemplo acima irá imprimir:

calendar of the formatter is : 1
Now calendar of the formatter is : 0

Veja Também

  • datefmt_set_calendar() - sets the calendar used to the appropriate calendar, which must be
  • datefmt_create() - Create a date formatter

IntlDateFormatter::format
IntlDateFormatter::getDateType
IntlDateFormatter


Get the datetype used for the IntlDateFormatter

IntlDateFormatter::getCalendar
IntlDateFormatter::getErrorCode
IntlDateFormatter
PHP Manual

IntlDateFormatter::getDateType

datefmt_get_datetype

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getDateType -- datefmt_get_datetype — Get the datetype used for the IntlDateFormatter

Descrição

Object oriented style

int IntlDateFormatter::getDateType ( void )

Procedural style

int datefmt_get_datetype ( IntlDateFormatter $fmt )

Returns date type used by the formatter.

Parâmetros

fmt

The formatter resource.

Valor Retornado

The current date type value of the formatter.

Exemplos

Exemplo #1 datefmt_get_datetype() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "datetype of the formatter is : ".datefmt_get_datetype($fmt);
echo "First Formatted output with datetype is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::SHORT,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Now datetype of the formatter is : ".datefmt_get_datetype($fmt);
echo "Second Formatted output with datetype is ".datefmt_format( $fmt , 0);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN);
echo "datetype of the formatter is : ".$fmt->getDateType();
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::SHORT,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN);
echo "Now datetype of the formatter is : ".$fmt->getDateType();
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

?>

O exemplo acima irá imprimir:

datetype of the formatter is : 0
First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT
Now datetype of the formatter is : 2
Second Formatted output is 12/31/69 4:00:00 PM PT

Veja Também

  • datefmt_get_timetype() - Get the timetype used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::getCalendar
IntlDateFormatter::getErrorCode
IntlDateFormatter


Get the error code from last operation

IntlDateFormatter::getDateType
IntlDateFormatter::getErrorMessage
IntlDateFormatter
PHP Manual

IntlDateFormatter::getErrorCode

datefmt_get_error_code

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getErrorCode -- datefmt_get_error_code — Get the error code from last operation

Descrição

Object oriented style

int IntlDateFormatter::getErrorCode ( void )

Procedural style

int datefmt_get_error_code ( IntlDateFormatter $fmt )

Get the error code from last operation. Returns error code from the last number formatting operation.

Parâmetros

fmt

The formatter resource.

Valor Retornado

The error code, one of UErrorCode values. Initial value is U_ZERO_ERROR.

Exemplos

Exemplo #1 datefmt_get_error_code() example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$str = datefmt_format($fmt);
if(!$str) {
    echo "ERROR: ".datefmt_get_error_message($fmt) . " (" . datefmt_get_error_code($fmt) . ")\n";
}
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$str = $fmt->format();
if(!$str) {
    echo "ERROR: ".$fmt->getErrorMessage() . " (" . $fmt->getErrorCode() . ")\n";
}
?>

O exemplo acima irá imprimir:

ERROR: U_ZERO_ERROR (0)

Veja Também

  • datefmt_get_error_message() - Get the error text from the last operation.
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

IntlDateFormatter::getDateType
IntlDateFormatter::getErrorMessage
IntlDateFormatter


Get the error text from the last operation.

IntlDateFormatter::getErrorCode
IntlDateFormatter::getLocale
IntlDateFormatter
PHP Manual

IntlDateFormatter::getErrorMessage

datefmt_get_error_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getErrorMessage -- datefmt_get_error_message — Get the error text from the last operation.

Descrição

Object oriented style

string IntlDateFormatter::getErrorMessage ( void )

Procedural style

string datefmt_get_error_message ( IntlDateFormatter $fmt )

Get the error text from the last operation.

Parâmetros

fmt

The formatter resource.

Valor Retornado

Description of the last error.

Exemplos

Exemplo #1 datefmt_get_error_message() example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$str = datefmt_format($fmt);
if(!$str) {
    echo "ERROR: ".datefmt_get_error_message($fmt) . " (" . datefmt_get_error_code($fmt) . ")\n";
}
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$str = $fmt->format();
if(!$str) {
    echo "ERROR: ".$fmt->getErrorMessage() . " (" . $fmt->getErrorCode() . ")\n";
}

?>

O exemplo acima irá imprimir:

ERROR: U_ZERO_ERROR (0)

Veja Também

  • datefmt_get_error_code() - Get the error code from last operation
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

IntlDateFormatter::getErrorCode
IntlDateFormatter::getLocale
IntlDateFormatter


Get the locale used by formatter

IntlDateFormatter::getErrorMessage
IntlDateFormatter::getPattern
IntlDateFormatter
PHP Manual

IntlDateFormatter::getLocale

datefmt_get_locale

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getLocale -- datefmt_get_locale — Get the locale used by formatter

Descrição

Object oriented style

string IntlDateFormatter::getLocale ([ int $which ] )

Procedural style

string datefmt_get_locale ( IntlDateFormatter $fmt [, int $which ] )

Get locale used by the formatter.

Parâmetros

fmt

The formatter resource

hich

You can choose between valid and actual locale ( Locale::VALID_LOCALE, Locale::ACTUAL_LOCALE, respectively). The default is the actual locale.

Valor Retornado

the locale of this formatter or 'false' if error

Exemplos

Exemplo #1 datefmt_get_locale() example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "locale of the formatter is : ".datefmt_get_locale($fmt);
echo "First Formatted output is ".datefmt_format( $fmt , 0);
echo "locale of the formatter is : ".datefmt_get_locale($fmt);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "locale of the formatter is : ".$fmt->getLocale();
echo "First Formatted output is ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "locale of the formatter is : ".$fmt->getLocale();
echo "Second Formatted output is ".$fmt->format(0);

?>

O exemplo acima irá imprimir:

locale of the formatter is : en
First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT
locale of the formatter is : de
Second Formatted output is Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00

Veja Também

  • datefmt_create() - Create a date formatter

IntlDateFormatter::getErrorMessage
IntlDateFormatter::getPattern
IntlDateFormatter


Get the pattern used for the IntlDateFormatter

IntlDateFormatter::getLocale
IntlDateFormatter::getTimeType
IntlDateFormatter
PHP Manual

IntlDateFormatter::getPattern

datefmt_get_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getPattern -- datefmt_get_pattern — Get the pattern used for the IntlDateFormatter

Descrição

Object oriented style

string IntlDateFormatter::getPattern ( void )

Procedural style

string datefmt_get_pattern ( IntlDateFormatter $fmt )

Get pattern used by the formatter.

Parâmetros

fmt

The formatter resource.

Valor Retornado

The pattern string being used to format/parse.

Exemplos

Exemplo #1 datefmt_get_pattern() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "pattern of the formatter is : ".datefmt_get_pattern($fmt);
echo "First Formatted output with pattern is ".datefmt_format( $fmt , 0);
datefmt_set_pattern($fmt,'yyyymmdd hh:mm:ss z');
echo "Now pattern of the formatter is : ".datefmt_get_pattern($fmt);
echo "Second Formatted output with pattern is ".datefmt_format( $fmt , 0);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN,"MM/dd/yyyy"  );
echo "pattern of the formatter is : ".$fmt->getPattern();
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt->setPattern('yyyymmdd hh:mm:ss z');
echo "Now pattern of the formatter is : ".$fmt->getPattern();
echo "Second Formatted output is ".datefmt_format( $fmt , 0);
?>

O exemplo acima irá imprimir:

pattern of the formatter is : MM/dd/yyyy
First Formatted output is 12/31/1969
Now pattern of the formatter is : yyyymmdd hh:mm:ss z
Second Formatted output is 19690031 04:00:00 PST

Veja Também

  • datefmt_set_pattern() - Set the pattern used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::getLocale
IntlDateFormatter::getTimeType
IntlDateFormatter


Get the timetype used for the IntlDateFormatter

IntlDateFormatter::getPattern
IntlDateFormatter::getTimeZoneId
IntlDateFormatter
PHP Manual

IntlDateFormatter::getTimeType

datefmt_get_timetype

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getTimeType -- datefmt_get_timetype — Get the timetype used for the IntlDateFormatter

Descrição

Object oriented style

int IntlDateFormatter::getTimeType ( void )

Procedural style

int datefmt_get_timetype ( IntlDateFormatter $fmt )

Return time type used by the formatter.

Parâmetros

fmt

The formatter resource.

Valor Retornado

The current date type value of the formatter.

Exemplos

Exemplo #1 datefmt_get_timetype() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "timetype of the formatter is : ".datefmt_get_timetype($fmt);
echo "First Formatted output with timetype is ".datefmt_format( $fmt , 0);
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::SHORT,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Now timetype of the formatter is : ".datefmt_get_timetype($fmt);
echo "Second Formatted output with timetype is ".datefmt_format( $fmt , 0);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN);
echo "timetype of the formatter is : ".$fmt->getTimeType();
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::SHORT,'America/Los_Angeles',IntlDateFormatter::GREGORIAN);
echo "Now timetype of the formatter is : ".$fmt->getTimeType();
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

?>

O exemplo acima irá imprimir:

timetype of the formatter is : 0
First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT
Now timetype of the formatter is : 3
Second Formatted output is Wednesday, December 31, 1969 4:00 PM

Veja Também

  • datefmt_get_datetype() - Get the datetype used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::getPattern
IntlDateFormatter::getTimeZoneId
IntlDateFormatter


Get the timezone-id used for the IntlDateFormatter

IntlDateFormatter::getTimeType
IntlDateFormatter::isLenient
IntlDateFormatter
PHP Manual

IntlDateFormatter::getTimeZoneId

datefmt_get_timezone_id

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::getTimeZoneId -- datefmt_get_timezone_id — Get the timezone-id used for the IntlDateFormatter

Descrição

Object oriented style

string IntlDateFormatter::getTimeZoneId ( void )

Procedural style

string datefmt_get_timezone_id ( IntlDateFormatter $fmt )

Get the timezone-id used for the IntlDateFormatter.

Parâmetros

fmt

The formatter resource.

Valor Retornado

ID string for the time zone used by this formatter.

Exemplos

Exemplo #1 datefmt_get_timezone_id() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "timezone_id of the formatter is : ".datefmt_get_timezone_id($fmt);
datefmt_set_timezone_id($fmt,'CN');
echo "Now timezone_id of the formatter is : ".datefmt_get_timezone_id($fmt);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "timezone_id of the formatter is : ".$fmt->getTimezoneId();
$fmt->setTimezoneId('CN');
echo "Now timezone_id of the formatter is : ".$fmt->getTimezoneId();

?>

O exemplo acima irá imprimir:

timezone_id of the formatter is : America/Los_Angeles
Now timezone_id of the formatter is : CN

Veja Também

  • datefmt_set_timezone_id() - Sets the time zone to use
  • datefmt_create() - Create a date formatter

IntlDateFormatter::getTimeType
IntlDateFormatter::isLenient
IntlDateFormatter


Get the lenient used for the IntlDateFormatter

IntlDateFormatter::getTimeZoneId
IntlDateFormatter::localtime
IntlDateFormatter
PHP Manual

IntlDateFormatter::isLenient

datefmt_is_lenient

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::isLenient -- datefmt_is_lenient — Get the lenient used for the IntlDateFormatter

Descrição

Object oriented style

bool IntlDateFormatter::isLenient ( void )

Procedural style

bool datefmt_is_lenient ( IntlDateFormatter $fmt )

Check if the parser is strict or lenient in interpreting inputs that do not match the pattern exactly.

Parâmetros

fmt

The formatter resource.

Valor Retornado

TRUE if parser is lenient, FALSE if parser is strict. By default the parser is strict.

Exemplos

Exemplo #1 datefmt_is_lenient() example

<?php
$fmt = datefmt_create( "en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/mm/yyyy");
echo "lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}
datefmt_set_lenient($fmt,false);
echo "Now lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter("en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/mm/yyyy"  );
echo "lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
$fmt->parse("35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

$fmt->setLenient(FALSE);
echo "Now lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
$fmt->parse("35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

?>

O exemplo acima irá imprimir:

lenient of the formatter is : TRUE
Trying to do parse('35/13/1971').
Result is : -2147483
Now lenient of the formatter is : FALSE
Trying to do parse('35/13/1971').
Result is : Error_msg is : Date parsing failed: U_PARSE_ERROR Error_code is : 9

Veja Também

  • datefmt_set_lenient() - Set the leniency of the parser
  • datefmt_create() - Create a date formatter

IntlDateFormatter::getTimeZoneId
IntlDateFormatter::localtime
IntlDateFormatter


Parse string to a field-based time value

IntlDateFormatter::isLenient
IntlDateFormatter::parse
IntlDateFormatter
PHP Manual

IntlDateFormatter::localtime

datefmt_localtime

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::localtime -- datefmt_localtime — Parse string to a field-based time value

Descrição

Object oriented style

array IntlDateFormatter::localtime ( string $value [, int &$position ] )

Procedural style

array datefmt_localtime ( IntlDateFormatter $fmt , string $value [, int &$position ] )

Converts string $value to a field-based time value ( an array of various fields), starting at $parse_pos and consuming as much of the input value as possible.

Parâmetros

fmt

The formatter resource

value

string to convert to a time

position

Position at which to start the parsing in $value (zero-based). If no error occurs before $value is consumed, $parse_pos will contain -1 otherwise it will contain the position at which parsing ended . If $parse_pos > strlen($value), the parse fails immediately.

Valor Retornado

Localtime compatible array of integers : contains 24 hour clock value in tm_hour field

Exemplos

Exemplo #1 datefmt_localtime() example

<?php

$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$arr = datefmt_localtime( $fmt, "Wednesday, December 31, 1969 4:00:00 PM PT",0);
echo "First parsed output is ";
if ($arr) {
    foreach ($arr as $key => $value) {
        echo "$key : $value , ";
    }
}

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
$arr = $fmt->localtime( "Wednesday, December 31, 1969 4:00:00 PM PT",0);
echo "First parsed output is ";
if ($arr) {
    foreach ($arr as $key => $value) {
        echo "$key : $value , ";
    }
}

?>

O exemplo acima irá imprimir:

First parsed output is tm_sec : 0 , tm_min : 0 , tm_hour : 16 , tm_year : 1969 ,
tm_mday : 31 , tm_wday : 4 , tm_yday : 365 , tm_mon : 11 , tm_isdst : 0 ,

Veja Também

  • datefmt_create() - Create a date formatter
  • datefmt_format() - Format the date/time value as a string
  • datefmt_parse() - Parse string to a timestamp value
  • datefmt_get_error_code() - Get the error code from last operation
  • datefmt_get_error_message() - Get the error text from the last operation.

IntlDateFormatter::isLenient
IntlDateFormatter::parse
IntlDateFormatter


Parse string to a timestamp value

IntlDateFormatter::localtime
IntlDateFormatter::setCalendar
IntlDateFormatter
PHP Manual

IntlDateFormatter::parse

datefmt_parse

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::parse -- datefmt_parse — Parse string to a timestamp value

Descrição

Object oriented style

int IntlDateFormatter::parse ( string $value [, int &$position ] )

Procedural style

int datefmt_parse ( IntlDateFormatter $fmt , string $value [, int &$position ] )

Converts string $value to an incremental time value, starting at $parse_pos and consuming as much of the input value as possible.

Parâmetros

fmt

The formatter resource

value

string to convert to a time

position

Position at which to start the parsing in $value (zero-based). If no error occurs before $value is consumed, $parse_pos will contain -1 otherwise it will contain the position at which parsing ended (and the error occurred). This variable will contain the end position if the parse fails. If $parse_pos > strlen($value), the parse fails immediately.

Valor Retornado

timestamp parsed value

Exemplos

Exemplo #1 datefmt_parse() example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "First parsed output is ".$fmt->parse("Wednesday, December 31, 1969 4:00:00 PM PT");
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second parsed output is ".$fmt->parse("Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00");
?>

Exemplo #2 OO example

<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "First parsed output is ".datefmt_parse( $fmt ,  "Wednesday, December 20, 1989 4:00:00 PM PT");
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "Second parsed output is ".datefmt_parse( $fmt , "Mittwoch, 20. Dezember 1989 16:00 Uhr GMT-08:00");
?>

O exemplo acima irá imprimir:

First parsed output is 630201600
Second parsed output is 630201600

Veja Também

  • datefmt_create() - Create a date formatter
  • datefmt_format() - Format the date/time value as a string
  • datefmt_localtime() - Parse string to a field-based time value
  • datefmt_get_error_code() - Get the error code from last operation
  • datefmt_get_error_message() - Get the error text from the last operation.

IntlDateFormatter::localtime
IntlDateFormatter::setCalendar
IntlDateFormatter


sets the calendar used to the appropriate calendar, which must be

IntlDateFormatter::parse
IntlDateFormatter::setLenient
IntlDateFormatter
PHP Manual

IntlDateFormatter::setCalendar

datefmt_set_calendar

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::setCalendar -- datefmt_set_calendar — sets the calendar used to the appropriate calendar, which must be

Descrição

Object oriented style

bool IntlDateFormatter::setCalendar ( int $which )

Procedural style

bool datefmt_set_calendar ( IntlDateFormatter $fmt , int $which )

Sets the calendar used by the formatter.

Parâmetros

fmt

The formatter resource.

which

The calendar to use. Default is IntlDateFormatter::GREGORIAN.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 datefmt_set_calendar() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "calendar of the formatter is : ".datefmt_get_calendar($fmt);
datefmt_set_calendar($fmt,IntlDateFormatter::TRADITIONAL);
echo "Now calendar of the formatter is : ".datefmt_get_calendar($fmt);
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "calendar of the formatter is : ".$fmt->getCalendar();
$fmt->setCalendar(IntlDateFormatter::TRADITIONAL);
echo "Now calendar of the formatter is : ".$fmt->getCalendar();
?>

O exemplo acima irá imprimir:

calendar of the formatter is : 1
Now calendar of the formatter is : 0

Veja Também

  • datefmt_get_calendar() - Get the calendar used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::parse
IntlDateFormatter::setLenient
IntlDateFormatter


Set the leniency of the parser

IntlDateFormatter::setCalendar
IntlDateFormatter::setPattern
IntlDateFormatter
PHP Manual

IntlDateFormatter::setLenient

datefmt_set_lenient

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::setLenient -- datefmt_set_lenient — Set the leniency of the parser

Descrição

Object oriented style

bool IntlDateFormatter::setLenient ( bool $lenient )

Procedural style

bool datefmt_set_lenient ( IntlDateFormatter $fmt , bool $lenient )

Define if the parser is strict or lenient in interpreting inputs that do not match the pattern exactly. Enabling lenient parsing allows the parser to accept otherwise flawed date or time patterns, parsing as much as possible to obtain a value. Extra space, unrecognized tokens, or invalid values ("February 30th") are not accepted.

Parâmetros

fmt

The formatter resource

lenient

Sets whether the parser is lenient or not, default is FALSE (strict).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 datefmt_set_lenient() example

<?php
$fmt = datefmt_create("en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/mm/yyyy");
echo "lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}
datefmt_set_lenient($fmt,false);
echo "Now lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
datefmt_parse($fmt,"35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .datefmt_parse($fmt,"35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter("en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/mm/yyyy");
echo "lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
$fmt->parse("35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

$fmt->setLenient(FALSE);
echo "Now lenient of the formatter is : ";
if( $fmt->isLenient() ){
        echo('TRUE');
}else{
        echo('FALSE');
}
$fmt->parse("35/13/1971");
echo "\n Trying to do parse('35/13/1971').Result is : " .$fmt->parse("35/13/1971");
if( intl_get_error_code() !=0 ){
        echo "Error_msg is : ".intl_get_error_message();
        echo "Error_code is : ".intl_get_error_code();
}

?>

O exemplo acima irá imprimir:

lenient of the formatter is : TRUE
Trying to do parse('35/13/1971').
Result is : -2147483
Now lenient of the formatter is : FALSE
Trying to do parse('35/13/1971').
Result is : Error_msg is : Date parsing failed: U_PARSE_ERROR Error_code is : 9

Veja Também

  • datefmt_is_lenient() - Get the lenient used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::setCalendar
IntlDateFormatter::setPattern
IntlDateFormatter


Set the pattern used for the IntlDateFormatter

IntlDateFormatter::setLenient
IntlDateFormatter::setTimeZoneId
IntlDateFormatter
PHP Manual

IntlDateFormatter::setPattern

datefmt_set_pattern

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::setPattern -- datefmt_set_pattern — Set the pattern used for the IntlDateFormatter

Descrição

Object oriented style

bool IntlDateFormatter::setPattern ( string $pattern )

Procedural style

bool datefmt_set_pattern ( IntlDateFormatter $fmt , string $pattern )

Set the pattern used for the IntlDateFormatter.

Parâmetros

fmt

The formatter resource.

pattern

New pattern string to use. Possible patterns are documented at » http://userguide.icu-project.org/formatparse/datetime.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Bad formatstrings are usually the cause of the failure.

Exemplos

Exemplo #1 datefmt_set_pattern() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  ,"MM/dd/yyyy");
echo "pattern of the formatter is : ".datefmt_get_pattern($fmt);
echo "First Formatted output with pattern is ".datefmt_format( $fmt , 0);
datefmt_set_pattern($fmt,'yyyymmdd hh:mm:ss z');
echo "Now pattern of the formatter is : ".datefmt_get_pattern($fmt);
echo "Second Formatted output with pattern is ".datefmt_format( $fmt , 0);

?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN,"MM/dd/yyyy"  );
echo "pattern of the formatter is : ".$fmt->getPattern();
echo "First Formatted output is ".datefmt_format( $fmt , 0);
$fmt->setPattern('yyyymmdd hh:mm:ss z');
echo "Now pattern of the formatter is : ".$fmt->getPattern();
echo "Second Formatted output is ".datefmt_format( $fmt , 0);

?>

O exemplo acima irá imprimir:

pattern of the formatter is : MM/dd/yyyy
First Formatted output with pattern is 12/31/1969
Now pattern of the formatter is : yyyymmdd hh:mm:ss z
Second Formatted output with pattern is 19690031 04:00:00 PST

Veja Também

  • datefmt_get_pattern() - Get the pattern used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::setLenient
IntlDateFormatter::setTimeZoneId
IntlDateFormatter


Sets the time zone to use

IntlDateFormatter::setPattern
ResourceBundle
IntlDateFormatter
PHP Manual

IntlDateFormatter::setTimeZoneId

datefmt_set_timezone_id

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

IntlDateFormatter::setTimeZoneId -- datefmt_set_timezone_id — Sets the time zone to use

Descrição

Object oriented style

bool IntlDateFormatter::setTimeZoneId ( string $zone )

Procedural style

bool datefmt_set_timezone_id ( IntlDateFormatter $fmt , string $zone )

Sets the time zone to use.

Parâmetros

fmt

The formatter resource.

zone

The time zone ID string of the time zone to use. If NULL or the empty string, the default time zone for the runtime is used.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 datefmt_set_timezone_id() example

<?php
$fmt = datefmt_create(  "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "timezone_id of the formatter is : ".datefmt_get_timezone_id($fmt);
datefmt_set_timezone_id($fmt,'CN');
echo "Now timezone_id of the formatter is : ".datefmt_get_timezone_id($fmt);
?>

Exemplo #2 OO example

<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL,IntlDateFormatter::FULL,'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo "timezone_id of the formatter is : ".$fmt->getTimezoneId();
$fmt->setTimezoneId('CN');
echo "Now timezone_id of the formatter is : ".$fmt->getTimezoneId();

?>

O exemplo acima irá imprimir:

timezone_id of the formatter is : America/Los_Angeles
Now timezone_id of the formatter is : CN

Veja Também

  • datefmt_get_timezone_id() - Get the timezone-id used for the IntlDateFormatter
  • datefmt_create() - Create a date formatter

IntlDateFormatter::setPattern
ResourceBundle
IntlDateFormatter


The ResourceBundle class

Introdução

Localized software products often require sets of data that are to be customized depending on current locale, e.g.: messages, labels, formatting patterns. ICU resource mechanism allows to define sets of resources that the application can load on locale basis, while accessing them in unified locale-independent fashion.

This class implements access to ICU resource data files. These files are binary data arrays which ICU uses to store the localized data.

ICU resource bundle can hold simple resources and complex resources. Complex resources are containers which can be either integer-indexed or string-indexed (just like PHP arrays). Simple resources can be of the following typos: string, integer, binary data field or integer array.

ResourceBundle supports direct access to the data through array access pattern and iteration via foreach, as well as access via class methods. The result will be PHP value for simple resources and ResourceBundle object for complex ones. All resources are read-only.

Sinopse da classe

ResourceBundle {
/* Methods */
__construct ( string $locale , string $bundlename [, bool $fallback ] )
int count ( void )
static ResourceBundle create ( string $locale , string $bundlename [, bool $fallback ] )
int getErrorCode ( void )
string getErrorMessage ( void )
mixed get ( string|int $index )
array getLocales ( void )
}

Veja Também

  • » ICU Resource Management
  • » ICU Data

Índice

  • ResourceBundle::count — Get number of elements in the bundle
  • ResourceBundle::create — Create a resource bundle
  • ResourceBundle::getErrorCode — Get bundle's last error code.
  • ResourceBundle::getErrorMessage — Get bundle's last error message.
  • ResourceBundle::get — Get data from the bundle
  • ResourceBundle::getLocales — Get supported locales
IntlDateFormatter::setTimeZoneId
ResourceBundle::count
intl


Get number of elements in the bundle

ResourceBundle
ResourceBundle::create
ResourceBundle
PHP Manual

ResourceBundle::count

resourcebundle_count

(No version information available, might only be in SVN)

ResourceBundle::count -- resourcebundle_count — Get number of elements in the bundle

Descrição

Object oriented style

int ResourceBundle::count ( void )

Procedural style

int resourcebundle_count ( ResourceBundle $r )

Get the number of elements in the bundle.

Parâmetros

r

ResourceBundle object.

Valor Retornado

Returns number of elements in the bundle.

Exemplos

Exemplo #1 resourcebundle_count() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo resourcebundle_count($r);
?>

Exemplo #2 OO example

<?php
$r = new ResourceBundle( 'es', "/usr/share/data/myapp");
echo $r->count();
?>

O exemplo acima irá imprimir:

42

Veja Também

  • resourcebundle_get() - Get data from the bundle

ResourceBundle
ResourceBundle::create
ResourceBundle


Create a resource bundle

ResourceBundle::count
ResourceBundle::getErrorCode
ResourceBundle
PHP Manual

ResourceBundle::create

resourcebundle_create

ResourceBundle::__construct

(No version information available, might only be in SVN)

ResourceBundle::create -- resourcebundle_create -- ResourceBundle::__construct — Create a resource bundle

Descrição

Object oriented style (method)

static ResourceBundle ResourceBundle::create ( string $locale , string $bundlename [, bool $fallback ] )

Procedural style

ResourceBundle resourcebundle_create ( string $locale , string $bundlename [, bool $fallback ] )

Object oriented style (constructor):

ResourceBundle::__construct() ( string $locale , string $bundlename [, bool $fallback ] )

Creates a resource bundle.

Parâmetros

locale

Locale for which the resources should be loaded (locale name, e.g. en_CA).

bundlename

The directory where the data is stored or the name of the .dat file.

fallback

Whether locale should match exactly or fallback to parent locale is allowed.

Valor Retornado

Returns ResourceBundle object or FALSE on error.

Exemplos

Exemplo #1 resourcebundle_create() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo $r['teststring'];
?>

Exemplo #2 ResourceBundle::create() example

<?php
$r = ResourceBundle::create( 'es', "/usr/share/data/myapp");
echo $r['teststring'];
?>

O exemplo acima irá imprimir:

¡Hola, mundo!

Veja Também

  • resourcebundle_get() - Get data from the bundle

ResourceBundle::count
ResourceBundle::getErrorCode
ResourceBundle


Get bundle's last error code.

ResourceBundle::create
ResourceBundle::getErrorMessage
ResourceBundle
PHP Manual

ResourceBundle::getErrorCode

resourcebundle_get_error_code

(No version information available, might only be in SVN)

ResourceBundle::getErrorCode -- resourcebundle_get_error_code — Get bundle's last error code.

Descrição

Object oriented style

int ResourceBundle::getErrorCode ( void )

Procedural style

int resourcebundle_get_error_code ( ResourceBundle $r )

Get error code from the last function performed by the bundle object.

Parâmetros

r

ResourceBundle object.

Valor Retornado

Returns error code from last bundle object call.

Exemplos

Exemplo #1 resourcebundle_get_error_code() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo $r['somestring'];
if(intl_is_failure(resourcebundle_get_error_code($r))) {
    report_error("Bundle error");
}
?>

Exemplo #2 OO example

<?php
$r = new ResourceBundle( 'es', "/usr/share/data/myapp");
echo $r['somestring'];
if(intl_is_failure(ResourceBundle::getErrorCode($r))) {
    report_error("Bundle error");
}
?>

Veja Também

  • resourcebundle_get_error_message() - Get bundle's last error message.
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

ResourceBundle::create
ResourceBundle::getErrorMessage
ResourceBundle


Get bundle's last error message.

ResourceBundle::getErrorCode
ResourceBundle::get
ResourceBundle
PHP Manual

ResourceBundle::getErrorMessage

resourcebundle_get_error_message

(No version information available, might only be in SVN)

ResourceBundle::getErrorMessage -- resourcebundle_get_error_message — Get bundle's last error message.

Descrição

Object oriented style

string ResourceBundle::getErrorMessage ( void )

Procedural style

string resourcebundle_get_error_message ( ResourceBundle $r )

Get error message from the last function performed by the bundle object.

Parâmetros

r

ResourceBundle object.

Valor Retornado

Returns error message from last bundle object's call.

Exemplos

Exemplo #1 resourcebundle_get_error_message() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo $r['somestring'];
if(intl_is_failure(resourcebundle_get_error_code($r))) {
    report_error("Bundle error: ".resourcebundle_get_error_message($r));
}
?>

Exemplo #2 OO example

<?php
$r = new ResourceBundle( 'es', "/usr/share/data/myapp");
echo $r['somestring'];
if(intl_is_failure(ResourceBundle::getErrorCode($r))) {
    report_error("Bundle error: ".ResourceBundle::getErrorMessage($r));
}
?>

Veja Também

  • resourcebundle_get_error_code() - Get bundle's last error code.
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure

ResourceBundle::getErrorCode
ResourceBundle::get
ResourceBundle


Get data from the bundle

ResourceBundle::getErrorMessage
ResourceBundle::getLocales
ResourceBundle
PHP Manual

ResourceBundle::get

resourcebundle_get

(No version information available, might only be in SVN)

ResourceBundle::get -- resourcebundle_get — Get data from the bundle

Descrição

Object oriented style

mixed ResourceBundle::get ( string|int $index )

Procedural style

mixed resourcebundle_get ( ResourceBundle $r , string|int $index )

Get the data from the bundle by index or string key.

Parâmetros

r

ResourceBundle object.

index

Data index, must be string or integer.

Valor Retornado

Returns the data located at the index or NULL on error. Strings, integers and binary data strings are returned as corresponding PHP types, integer array is returned as PHP array. Complex types are returned as ResourceBundle object.

Exemplos

Exemplo #1 resourcebundle_get() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo resourcebundle_get($r, 'somestring');
?>

Exemplo #2 OO example

<?php
$r = new ResourceBundle( 'es', "/usr/share/data/myapp");
echo $r->get('somestring');
?>

O exemplo acima irá imprimir:

?Hola, mundo!

Veja Também

  • resourcebundle_count() - Get number of elements in the bundle

ResourceBundle::getErrorMessage
ResourceBundle::getLocales
ResourceBundle


Get supported locales

ResourceBundle::get
Transliterator
ResourceBundle
PHP Manual

ResourceBundle::getLocales

resourcebundle_locales

(No version information available, might only be in SVN)

ResourceBundle::getLocales -- resourcebundle_locales — Get supported locales

Descrição

Object oriented style

array ResourceBundle::getLocales ( void )

Procedural style

array resourcebundle_locales ( ResourceBundle $r )

Get the list of locales supported by the bundle. The list is taken from the bundle table named res_index which should contain a table named InstalledLocales, which contains locales as keys. This bundle should be either in data directory as .res file or part of the .dat file for this function to work.

Parâmetros

r

ResourceBundle object.

Valor Retornado

Returns the list of locales supported by the bundle.

Exemplos

Exemplo #1 resourcebundle_locales() example

<?php
$r = resourcebundle_create( 'es', "/usr/share/data/myapp");
echo join("\n", resourcebundle_locales($r));
?>

Exemplo #2 OO example

<?php
$r = new ResourceBundle( 'es', "/usr/share/data/myapp");
echo join("\n", $r->getLocales());
?>

O exemplo acima irá imprimir:

es
root

Veja Também

  • resourcebundle_get() - Get data from the bundle

ResourceBundle::get
Transliterator
ResourceBundle


The Transliterator class

Introdução

Transliterator provides transliteration of strings.

Sinopse da classe

Transliterator {
/* Constants */
const integer Transliterator::FORWARD = 0 ;
const integer Transliterator::REVERSE = 1 ;
/* Properties */
public $id ;
/* Methods */
__construct ( void )
public static Transliterator create ( string $id [, int $direction ] )
public static Transliterator createFromRules ( string $rules [, string $direction ] )
public Transliterator createInverse ( void )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public static array listIDs ( void )
public void transliterate ( string $subject [, string $start [, string $end ]] )
}

Propriedades

id

Constantes pré-definidas

Transliterator Node Types

Transliterator::FORWARD

Transliterator::REVERSE

Índice

  • Transliterator::__construct — Construct a Transliterator object
  • Transliterator::create — Create a transliterator
  • Transliterator::createFromRules — Create transliterator from rules
  • Transliterator::createInverse — Create an inverse transliterator
  • Transliterator::getErrorCode — Get last error code
  • Transliterator::getErrorMessage — Get last error message
  • Transliterator::listIDs — Get transliterator IDs
  • Transliterator::transliterate — Transliterate a string
ResourceBundle::getLocales
Transliterator::__construct
intl


Construct a Transliterator object

Transliterator
Transliterator::create
Transliterator
PHP Manual

Transliterator::__construct

(No version information available, might only be in SVN)

Transliterator::__construct — Construct a Transliterator object

Descrição

Transliterator::__construct() ( void )

Constructs a transliterator object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A transliterator object.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::create() - Create a transliterator

Transliterator
Transliterator::create
Transliterator


Create a transliterator

Transliterator::__construct
Transliterator::createFromRules
Transliterator
PHP Manual

Transliterator::create

transliterator_create

(No version information available, might only be in SVN)

Transliterator::create -- transliterator_create — Create a transliterator

Descrição

Estilo orientado a objetos

public static Transliterator Transliterator::create ( string $id [, int $direction ] )

Estilo de procedimentos

Transliterator transliterator_create ( string $id [, int $direction ] )

Opens a Transliterator by id.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

id

The id.

direction

The direction, defaults to >Transliterator::FORWARD. May also be set to Transliterator::REVERSE.

Valor Retornado

Returns a Transliterator object on success, or NULL on failure.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::__construct() - Construct a Transliterator object

Transliterator::__construct
Transliterator::createFromRules
Transliterator


Create transliterator from rules

Transliterator::create
Transliterator::createInverse
Transliterator
PHP Manual

Transliterator::createFromRules

transliterator_create_from_rules

(No version information available, might only be in SVN)

Transliterator::createFromRules -- transliterator_create_from_rules — Create transliterator from rules

Descrição

Estilo orientado a objetos

public static Transliterator Transliterator::createFromRules ( string $rules [, string $direction ] )

Estilo de procedimentos

Transliterator transliterator_create_from_rules ( string $id [, int $direction ] )

Creates a Transliterator from rules.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

rules

The rules.

direction

The direction, defaults to >Transliterator::FORWARD. May also be set to Transliterator::REVERSE.

Valor Retornado

Returns a Transliterator object on success, or NULL on failure.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::create() - Create a transliterator

Transliterator::create
Transliterator::createInverse
Transliterator


Create an inverse transliterator

Transliterator::createFromRules
Transliterator::getErrorCode
Transliterator
PHP Manual

Transliterator::createInverse

transliterator_create_inverse

(No version information available, might only be in SVN)

Transliterator::createInverse -- transliterator_create_inverse — Create an inverse transliterator

Descrição

Estilo orientado a objetos

public Transliterator Transliterator::createInverse ( void )

Estilo de procedimentos

Transliterator transliterator_create_inverse ( void )

Opens the inverse transliterator transliterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a Transliterator object on success, or NULL on failure

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::create() - Create a transliterator

Transliterator::createFromRules
Transliterator::getErrorCode
Transliterator


Get last error code

Transliterator::createInverse
Transliterator::getErrorMessage
Transliterator
PHP Manual

Transliterator::getErrorCode

transliterator_get_error_code

(No version information available, might only be in SVN)

Transliterator::getErrorCode -- transliterator_get_error_code — Get last error code

Descrição

Estilo orientado a objetos

public int Transliterator::getErrorCode ( void )

Estilo de procedimentos

int transliterator_get_error_code ( void )

Gets the last error code for this transliterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The error code on success, or FALSE if none exists, or on failure.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::listIDs() - Get transliterator IDs

Transliterator::createInverse
Transliterator::getErrorMessage
Transliterator


Get last error message

Transliterator::getErrorCode
Transliterator::listIDs
Transliterator
PHP Manual

Transliterator::getErrorMessage

transliterator_get_error_message

(No version information available, might only be in SVN)

Transliterator::getErrorMessage -- transliterator_get_error_message — Get last error message

Descrição

Estilo orientado a objetos

public string Transliterator::getErrorMessage ( void )

Estilo de procedimentos

string transliterator_get_error_message ( void )

Gets the last error message for this transliterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The error code on success, or FALSE if none exists, or on failure.

Veja Também

  • Transliterator::getErrorCode() - Get last error code
  • Transliterator::listIDs() - Get transliterator IDs

Transliterator::getErrorCode
Transliterator::listIDs
Transliterator


Get transliterator IDs

Transliterator::getErrorMessage
Transliterator::transliterate
Transliterator
PHP Manual

Transliterator::listIDs

transliterator_list_ids

(No version information available, might only be in SVN)

Transliterator::listIDs -- transliterator_list_ids — Get transliterator IDs

Descrição

Estilo orientado a objetos

public static array Transliterator::listIDs ( void )

Estilo de procedimentos

array transliterator_list_ids ( void )

Returns an array with the registered transliterator IDs.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of registered transliterator IDs on success, or FALSE on failure.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::transliterate() - Transliterate a string

Transliterator::getErrorMessage
Transliterator::transliterate
Transliterator


Transliterate a string

Transliterator::listIDs
Grapheme Funções
Transliterator
PHP Manual

Transliterator::transliterate

transliterator_transliterate

(No version information available, might only be in SVN)

Transliterator::transliterate -- transliterator_transliterate — Transliterate a string

Descrição

Estilo orientado a objetos

public void Transliterator::transliterate ( string $subject [, string $start [, string $end ]] )

Estilo de procedimentos

transliterator_transliterate ( string $subject [, string $start [, string $end ]] )

Transliterates a string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

subject

The string to be transliterated.

start

end

Valor Retornado

The transliterated string on success, or FALSE on failure.

Veja Também

  • Transliterator::getErrorMessage() - Get last error message
  • Transliterator::__construct() - Construct a Transliterator object

Transliterator::listIDs
Grapheme Funções
Transliterator


Grapheme Funções

Índice

  • grapheme_extract — Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.
  • grapheme_stripos — Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_stristr — Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_strlen — Get string length in grapheme units
  • grapheme_strpos — Find position (in grapheme units) of first occurrence of a string
  • grapheme_strripos — Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strrpos — Find position (in grapheme units) of last occurrence of a string
  • grapheme_strstr — Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • grapheme_substr — Return part of a string
Transliterator::transliterate
grapheme_extract
intl


Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.

Grapheme Funções
grapheme_stripos
Grapheme Funções
PHP Manual

grapheme_extract

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_extract — Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.

Descrição

Procedural style

string grapheme_extract ( string $haystack , int $size [, int $extract_type [, int $start = 0 [, int &$next ]]] )

Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.

Parâmetros

haystack

String to search.

size

Maximum number items - based on the $extract_type - to return.

extract_type

Defines the type of units referred to by the $size parameter:

  • GRAPHEME_EXTR_COUNT (default) - $size is the number of default grapheme clusters to extract.
  • GRAPHEME_EXTR_MAXBYTES - $size is the maximum number of bytes returned.
  • GRAPHEME_EXTR_MAXCHARS - $size is the maximum number of UTF-8 characters returned.

start

Starting position in $haystack in bytes - if given, it must be zero or a positive value that is less than or equal to the length of $haystack in bytes. If $start does not point to the first byte of a UTF-8 character, the start position is moved to the next character boundary.

next

Reference to a value that will be set to the next starting position. When the call returns, this may point to the first byte position past the end of the string.

Valor Retornado

A string starting at offset $start and ending on a default grapheme cluster boundary that conforms to the $size and $extract_type specified.

Exemplos

Exemplo #1 grapheme_extract() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print urlencode(grapheme_extract( $char_a_ring_nfd . $char_o_diaeresis_nfd, 1, GRAPHEME_EXTR_COUNT, 2));

?>

O exemplo acima irá imprimir:

o%CC%88

Veja Também

  • grapheme_substr() - Return part of a string
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

Grapheme Funções
grapheme_stripos
Grapheme Funções


Find position (in grapheme units) of first occurrence of a case-insensitive string

grapheme_extract
grapheme_stristr
Grapheme Funções
PHP Manual

grapheme_stripos

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_stripos — Find position (in grapheme units) of first occurrence of a case-insensitive string

Descrição

Procedural style

int grapheme_stripos ( string $haystack , string $needle [, int $offset = 0 ] )

Find position (in grapheme units) of first occurrence of a case-insensitive string

Parâmetros

haystack

The string to look in. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

offset

The optional $offset parameter allows you to specify where in haystack to start searching as an offset in grapheme units (not bytes or characters). The position returned is still relative to the beginning of haystack regardless of the value of $offset.

Valor Retornado

Returns the position as an integer. If needle is not found, grapheme_stripos() will return boolean FALSE.

Exemplos

Exemplo #1 grapheme_stripos() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'LATIN CAPITAL LETTER O WITH DIAERESIS' (U+00D6) normalization form "D"

print grapheme_stripos( $char_a_ring_nfd . $char_a_ring_nfd . $char_o_diaeresis_nfd, $char_O_diaeresis_nfd);

?>

O exemplo acima irá imprimir:

2

Veja Também

  • grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
  • grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strrpos() - Find position (in grapheme units) of last occurrence of a string
  • grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_extract
grapheme_stristr
Grapheme Funções


Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.

grapheme_stripos
grapheme_strlen
Grapheme Funções
PHP Manual

grapheme_stristr

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_stristr — Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.

Descrição

Procedural style

string grapheme_stristr ( string $haystack , string $needle [, bool $before_needle = false ] )

Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.

Parâmetros

haystack

The input string. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

before_needle

If TRUE, grapheme_strstr() returns the part of the haystack before the first occurrence of the needle.

Valor Retornado

Returns the portion of $haystack, or FALSE if $needle is not found.

Exemplos

Exemplo #1 grapheme_stristr() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'LATIN CAPITAL LETTER O WITH DIAERESIS' (U+00D6) normalization form "D"

print urlencode(grapheme_stristr( $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_a_ring_nfd, $char_O_diaeresis_nfd));

?>

O exemplo acima irá imprimir:

o%CC%88a%CC%8A

Veja Também

  • grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
  • grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strrpos() - Find position (in grapheme units) of last occurrence of a string
  • grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_stripos
grapheme_strlen
Grapheme Funções


Get string length in grapheme units

grapheme_stristr
grapheme_strpos
Grapheme Funções
PHP Manual

grapheme_strlen

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_strlen — Get string length in grapheme units

Descrição

Procedural style

int grapheme_strlen ( string $input )

Get string length in grapheme units (not bytes or characters)

Parâmetros

input

The string being measured for length. It must be a valid UTF-8 string.

Valor Retornado

The length of the string on success, and 0 if the string is empty.

Exemplos

Exemplo #1 grapheme_strlen() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print grapheme_strlen( 'abc' . $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_a_ring_nfd);

?>

O exemplo acima irá imprimir:

6

Veja Também

  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_stristr
grapheme_strpos
Grapheme Funções


Find position (in grapheme units) of first occurrence of a string

grapheme_strlen
grapheme_strripos
Grapheme Funções
PHP Manual

grapheme_strpos

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_strpos — Find position (in grapheme units) of first occurrence of a string

Descrição

Procedural style

int grapheme_strpos ( string $haystack , string $needle [, int $offset = 0 ] )

Find position (in grapheme units) of first occurrence of a string

Parâmetros

haystack

The string to look in. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

offset

The optional $offset parameter allows you to specify where in $haystack to start searching as an offset in grapheme units (not bytes or characters). The position returned is still relative to the beginning of haystack regardless of the value of $offset.

Valor Retornado

Returns the position as an integer. If needle is not found, strpos() will return boolean FALSE.

Exemplos

Exemplo #1 grapheme_strpos() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print grapheme_strpos( $char_a_ring_nfd . $char_a_ring_nfd . $char_o_diaeresis_nfd, $char_o_diaeresis_nfd);

?>

O exemplo acima irá imprimir:

2

Veja Também

  • grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strrpos() - Find position (in grapheme units) of last occurrence of a string
  • grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_strlen
grapheme_strripos
Grapheme Funções


Find position (in grapheme units) of last occurrence of a case-insensitive string

grapheme_strpos
grapheme_strrpos
Grapheme Funções
PHP Manual

grapheme_strripos

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_strripos — Find position (in grapheme units) of last occurrence of a case-insensitive string

Descrição

Procedural style

int grapheme_strripos ( string $haystack , string $needle [, int $offset = 0 ] )

Find position (in grapheme units) of last occurrence of a case-insensitive string

Parâmetros

haystack

The string to look in. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

offset

The optional $offset parameter allows you to specify where in $haystack to start searching as an offset in grapheme units (not bytes or characters). The position returned is still relative to the beginning of haystack regardless of the value of $offset.

Valor Retornado

Returns the position as an integer. If needle is not found, grapheme_strripos() will return boolean FALSE.

Exemplos

Exemplo #1 grapheme_strripos() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'LATIN CAPITAL LETTER O WITH DIAERESIS' (U+00D6) normalization form "D"

print grapheme_strripos( $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_o_diaeresis_nfd, $char_O_diaeresis_nfd);

?>

O exemplo acima irá imprimir:

2

Veja Também

  • grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
  • grapheme_strrpos() - Find position (in grapheme units) of last occurrence of a string
  • grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_strpos
grapheme_strrpos
Grapheme Funções


Find position (in grapheme units) of last occurrence of a string

grapheme_strripos
grapheme_strstr
Grapheme Funções
PHP Manual

grapheme_strrpos

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_strrpos — Find position (in grapheme units) of last occurrence of a string

Descrição

Procedural style

int grapheme_strrpos ( string $haystack , string $needle [, int $offset = 0 ] )

Find position (in grapheme units) of last occurrence of a string

Parâmetros

haystack

The string to look in. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

offset

The optional $offset parameter allows you to specify where in $haystack to start searching as an offset in grapheme units (not bytes or characters). The position returned is still relative to the beginning of haystack regardless of the value of $offset.

Valor Retornado

Returns the position as an integer. If needle is not found, grapheme_strrpos() will return boolean FALSE.

Exemplos

Exemplo #1 grapheme_strrpos() example

<?php
$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print grapheme_strrpos( $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_o_diaeresis_nfd, $char_o_diaeresis_nfd);
?>

O exemplo acima irá imprimir:

2

Veja Também

  • grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
  • grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_strripos
grapheme_strstr
Grapheme Funções


Returns part of haystack string from the first occurrence of needle to the end of haystack.

grapheme_strrpos
grapheme_substr
Grapheme Funções
PHP Manual

grapheme_strstr

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_strstr — Returns part of haystack string from the first occurrence of needle to the end of haystack.

Descrição

Procedural style

string grapheme_strstr ( string $haystack , string $needle [, bool $before_needle = false ] )

Returns part of haystack string from the first occurrence of needle to the end of haystack.

Parâmetros

haystack

The input string. Must be valid UTF-8.

needle

The string to look for. Must be valid UTF-8.

before_needle

If TRUE, grapheme_strstr() returns the part of the haystack before the first occurrence of the needle.

Valor Retornado

Returns the portion of string, or FALSE if needle is not found.

Exemplos

Exemplo #1 grapheme_strstr() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print urlencode(grapheme_stristr( $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_a_ring_nfd, $char_o_diaeresis_nfd));

?>

O exemplo acima irá imprimir:

o%CC%88a%CC%8A

Veja Também

  • grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack.
  • grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
  • grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
  • grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
  • grapheme_strrpos() - Find position (in grapheme units) of last occurrence of a string
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_strrpos
grapheme_substr
Grapheme Funções


Return part of a string

grapheme_strstr
IDN Funções
Grapheme Funções
PHP Manual

grapheme_substr

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

grapheme_substr — Return part of a string

Descrição

Procedural style

int grapheme_substr ( string $string , int $start [, int $length ] )

Return part of a string

Parâmetros

string

The input string. Must be valid UTF-8.

start

Start position in default grapheme units. If $start is non-negative, the returned string will start at the $start'th position in $string, counting from zero. If $start is negative, the returned string will start at the $start'th grapheme unit from the end of string.

length

Length in grapheme units. If $length is given and is positive, the string returned will contain at most $length grapheme units beginning from $start (depending on the length of string). If $string is less than or equal to $start grapheme units long, FALSE will be returned. If $length is given and is negative, then that many grapheme units will be omitted from the end of string (after the start position has been calculated when a start is negative). If $start denotes a position beyond this truncation, an empty string will be returned.

Valor Retornado

Returns the extracted part of $string.

Exemplos

Exemplo #1 grapheme_substr() example

<?php

$char_a_ring_nfd = "a\xCC\x8A";  // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"

print urlencode(grapheme_substr( "ao" . $char_a_ring_nfd . "bc" . $char_o_diaeresis_nfd . "O", 2, -1 ));
?>

O exemplo acima irá imprimir:

a%CC%8Abco%CC%88

Veja Também

  • grapheme_extract() - Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8.
  • » Unicode Text Segmentation: Grapheme Cluster Boundaries

grapheme_strstr
IDN Funções
Grapheme Funções


IDN Funções

Índice

  • idn_to_ascii — Convert domain name to IDNA ASCII form.
  • idn_to_unicode — Sinônimo de idn_to_utf8
  • idn_to_utf8 — Convert domain name from IDNA ASCII to Unicode.
grapheme_substr
idn_to_ascii
intl


Convert domain name to IDNA ASCII form.

IDN Funções
idn_to_unicode
IDN Funções
PHP Manual

idn_to_ascii

(PHP 5 >= 5.3.0, PECL intl >= 1.0.2, PECL idn >= 0.1)

idn_to_ascii — Convert domain name to IDNA ASCII form.

Descrição

Procedural style

string idn_to_ascii ( string $domain [, int $options ] )

This function converts Unicode domain name to IDNA ASCII-compatible format.

Parâmetros

domain

Domain to convert. In PHP 5 must be UTF-8 encoded.

options

Conversion options - combination of IDNA_* constants.

Valor Retornado

Domain name encoded in ASCII-compatible form. or FALSE on failure

Exemplos

Exemplo #1 idn_to_ascii() example

<?php

echo idn_to_ascii('täst.de');

?>

O exemplo acima irá imprimir:

xn--tst-qla.de

Veja Também

  • idn_to_unicode() - Sinônimo de idn_to_utf8

IDN Funções
idn_to_unicode
IDN Funções


Sinônimo de idn_to_utf8

idn_to_ascii
idn_to_utf8
IDN Funções
PHP Manual

idn_to_unicode

(No version information available, might only be in SVN)

idn_to_unicode — Sinônimo de idn_to_utf8()

Descrição

Esta função é um apelido para: idn_to_utf8().

idn_to_ascii
idn_to_utf8
IDN Funções


Convert domain name from IDNA ASCII to Unicode.

idn_to_unicode
intl Funções
IDN Funções
PHP Manual

idn_to_utf8

(PHP 5 >= 5.3.0, PECL intl >= 1.0.2, PECL idn >= 0.1)

idn_to_utf8 — Convert domain name from IDNA ASCII to Unicode.

Descrição

Procedural style

string idn_to_utf8 ( string $domain [, int $options ] )

This function converts Unicode domain name from IDNA ASCII-compatible format to plain Unicode.

Parâmetros

domain

Domain to convert in IDNA ASCII-compatible format.

options

Conversion options - combination of IDNA_* constants.

Valor Retornado

Domain name in Unicode. In PHP5, domain name will be in UTF-8. or FALSE on failure

Exemplos

Exemplo #1 idn_to_utf8() example

<?php

echo idn_to_utf8('xn--tst-qla.de');

?>

O exemplo acima irá imprimir:

täst.de

Veja Também

  • idn_to_unicode() - Sinônimo de idn_to_utf8

idn_to_unicode
intl Funções
IDN Funções


intl Funções

Índice

  • intl_error_name — Get symbolic name for a given error code
  • intl_get_error_code — Get the last error code
  • intl_get_error_message — Get description of the last error
  • intl_is_failure — Check whether the given error code indicates failure
idn_to_utf8
intl_error_name
intl


Get symbolic name for a given error code

intl Funções
intl_get_error_code
intl Funções
PHP Manual

intl_error_name

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

intl_error_name — Get symbolic name for a given error code

Descrição

string intl_error_name ( int $error_code )

Return ICU error code name.

Parâmetros

error_code

ICU error code.

Valor Retornado

The returned string will be the same as the name of the error code constant.

Exemplos

Exemplo #1 intl_error_name() example

<?php
$coll     = collator_create( 'en_RU' );
$err_code = collator_get_error_code( $coll );

printf( "Symbolic name for %d is %s\n.", $err_code, intl_error_name( $err_code ) );
?>

O exemplo acima irá imprimir algo similar a:

Symbolic name for -128 is U_USING_FALLBACK_WARNING.

Veja Também

  • intl_is_failure() - Check whether the given error code indicates failure
  • intl_get_error_code() - Get the last error code
  • intl_get_error_message() - Get description of the last error

intl Funções
intl_get_error_code
intl Funções


Get the last error code

intl_error_name
intl_get_error_message
intl Funções
PHP Manual

intl_get_error_code

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

intl_get_error_code — Get the last error code

Descrição

int intl_get_error_code ( void )

Useful to handle errors occurred in static methods when there's no object to get error code from.

Valor Retornado

Error code returned by the last API function call.

Exemplos

Exemplo #1 intl_get_error_code() example

<?php
$coll = collator_create( '<bad_param>' );
if( !$coll ) {
    handle_error( intl_get_error_code() );
}
?>

Veja Também

  • intl_is_failure() - Check whether the given error code indicates failure
  • intl_error_name() - Get symbolic name for a given error code
  • intl_get_error_message() - Get description of the last error
  • collator_get_error_code() - Get collator's last error code
  • numfmt_get_error_code() - Get formatter's last error code.

intl_error_name
intl_get_error_message
intl Funções


Get description of the last error

intl_get_error_code
intl_is_failure
intl Funções
PHP Manual

intl_get_error_message

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

intl_get_error_message — Get description of the last error

Descrição

string intl_get_error_message ( void )

Get error message from last internationalization function called.

Valor Retornado

Description of an error occurred in the last API function call.

Exemplos

Exemplo #1 intl_get_error_message() example

<?php
if( Collator::getAvailableLocales() === false ) {
    show_error( intl_get_error_message() );
}
?>

Veja Também

  • intl_error_name() - Get symbolic name for a given error code
  • intl_get_error_code() - Get the last error code
  • intl_is_failure() - Check whether the given error code indicates failure
  • collator_get_error_message() - Get text for collator's last error code
  • numfmt_get_error_message() - Get formatter's last error message.

intl_get_error_code
intl_is_failure
intl Funções


Check whether the given error code indicates failure

intl_get_error_message
Multibyte String
intl Funções
PHP Manual

intl_is_failure

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

intl_is_failure — Check whether the given error code indicates failure

Descrição

bool intl_is_failure ( int $error_code )

Parâmetros

error_code

is a value that returned by functions: intl_get_error_code(), collator_get_error_code() .

Valor Retornado

TRUE if it the code indicates some failure, and FALSE in case of success or a warning.

Exemplos

Exemplo #1 intl_is_failure() example

<?php
function check( $err_code )
{
    var_export( intl_is_failure( $err_code ) );
    echo "\n";
}

check( U_ZERO_ERROR );
check( U_USING_FALLBACK_WARNING );
check( U_ILLEGAL_ARGUMENT_ERROR );
?>

O exemplo acima irá imprimir algo similar a:

false
false
true

Veja Também

  • intl_get_error_code() - Get the last error code
  • collator_get_error_code() - Get collator's last error code
  • Collator-getErrorCode() - Get collator's last error code

intl_get_error_message
Multibyte String
intl Funções


Multibyte String

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Summaries of supported encodings
  • Basics of Japanese multi-byte encodings
  • HTTP Input and Output
  • Supported Character Encodings
  • Function Overloading Feature
  • PHP Character Encoding Requirements
  • Multibyte String Funções
    • mb_check_encoding — Check if the string is valid for the specified encoding
    • mb_convert_case — Perform case folding on a string
    • mb_convert_encoding — Convert character encoding
    • mb_convert_kana — Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
    • mb_convert_variables — Convert character code in variable(s)
    • mb_decode_mimeheader — Decode string in MIME header field
    • mb_decode_numericentity — Decode HTML numeric string reference to character
    • mb_detect_encoding — Detect character encoding
    • mb_detect_order — Set/Get character encoding detection order
    • mb_encode_mimeheader — Encode string for MIME header
    • mb_encode_numericentity — Encode character to HTML numeric string reference
    • mb_encoding_aliases — Get aliases of a known encoding type
    • mb_ereg_match — Regular expression match for multibyte string
    • mb_ereg_replace — Replace regular expression with multibyte support
    • mb_ereg_search_getpos — Returns start point for next regular expression match
    • mb_ereg_search_getregs — Retrieve the result from the last multibyte regular expression match
    • mb_ereg_search_init — Setup string and regular expression for a multibyte regular expression match
    • mb_ereg_search_pos — Returns position and length of a matched part of the multibyte regular expression for a predefined multibyte string
    • mb_ereg_search_regs — Returns the matched part of a multibyte regular expression
    • mb_ereg_search_setpos — Set start point of next regular expression match
    • mb_ereg_search — Multibyte regular expression match for predefined multibyte string
    • mb_ereg — Regular expression match with multibyte support
    • mb_eregi_replace — Replace regular expression with multibyte support ignoring case
    • mb_eregi — Regular expression match ignoring case with multibyte support
    • mb_get_info — Get internal settings of mbstring
    • mb_http_input — Detect HTTP input character encoding
    • mb_http_output — Set/Get HTTP output character encoding
    • mb_internal_encoding — Set/Get internal character encoding
    • mb_language — Set/Get current language
    • mb_list_encodings — Returns an array of all supported encodings
    • mb_output_handler — Callback function converts character encoding in output buffer
    • mb_parse_str — Parse GET/POST/COOKIE data and set global variable
    • mb_preferred_mime_name — Get MIME charset string
    • mb_regex_encoding — Returns current encoding for multibyte regex as string
    • mb_regex_set_options — Set/Get the default options for mbregex functions
    • mb_send_mail — Send encoded mail
    • mb_split — Split multibyte string using regular expression
    • mb_strcut — Get part of string
    • mb_strimwidth — Get truncated string with specified width
    • mb_stripos — Finds position of first occurrence of a string within another, case insensitive
    • mb_stristr — Finds first occurrence of a string within another, case insensitive
    • mb_strlen — Get string length
    • mb_strpos — Find position of first occurrence of string in a string
    • mb_strrchr — Finds the last occurrence of a character in a string within another
    • mb_strrichr — Finds the last occurrence of a character in a string within another, case insensitive
    • mb_strripos — Finds position of last occurrence of a string within another, case insensitive
    • mb_strrpos — Find position of last occurrence of a string in a string
    • mb_strstr — Finds first occurrence of a string within another
    • mb_strtolower — Make a string lowercase
    • mb_strtoupper — Make a string uppercase
    • mb_strwidth — Return width of string
    • mb_substitute_character — Set/Get substitution character
    • mb_substr_count — Count the number of substring occurrences
    • mb_substr — Get part of string
intl_is_failure
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

While there are many languages in which every necessary character can be represented by a one-to-one mapping to an 8-bit value, there are also several languages which require so many characters for written communication that they cannot be contained within the range a mere byte can code (A byte is made up of eight bits. Each bit can contain only two distinct values, one or zero. Because of this, a byte can only represent 256 unique values (two to the power of eight)). Multibyte character encoding schemes were developed to express more than 256 characters in the regular bytewise coding system.

When you manipulate (trim, split, splice, etc.) strings encoded in a multibyte encoding, you need to use special functions since two or more consecutive bytes may represent a single character in such encoding schemes. Otherwise, if you apply a non-multibyte-aware string function to the string, it probably fails to detect the beginning or ending of the multibyte character and ends up with a corrupted garbage string that most likely loses its original meaning.

mbstring provides multibyte specific string functions that help you deal with multibyte encodings in PHP. In addition to that, mbstring handles character encoding conversion between the possible encoding pairs. mbstring is designed to handle Unicode-based encodings such as UTF-8 and UCS-2 and many single-byte encodings for convenience (listed below).

Multibyte String
Instalação/Configuração
Multibyte String


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Multibyte String


Instalação

mbstring is a non-default extension. This means it is not enabled by default. You must explicitly enable the module with the configure option. See the Install section for details.

The following configure options are related to the mbstring module.

  • --enable-mbstring : Enable mbstring functions. This option is required to use mbstring functions.

    libmbfl is necesarry for mbstring. libmbfl is bundled with mbstring. If libmbfl is already installed on the system, --with-libmbfl[=DIR] can be specified to use the installed library.

    As of PHP 4.3.0, mbstring extension provides enhanced support for Simplified Chinese, Traditional Chinese, Korean, and Russian in addition to Japanese.

    For PHP 4.3.3 or before, To enable that feature, you will have to supply either one of the following options to the LANG parameter of --enable-mbstring=LANG ; --enable-mbstring=cn for Simplified Chinese support, --enable-mbstring=tw for Traditional Chinese support, --enable-mbstring=kr for Korean support, --enable-mbstring=ru for Russian support, and --enable-mbstring=ja for Japanese support (default). To enable all supported encoding, use --enable-mbstring=all .

    Nota:

    As of PHP 4.3.4, all supported encoding by libmbfl is enabled with --enable-mbstring .

  • --enable-mbstr-enc-trans : Enable HTTP input character encoding conversion using mbstring conversion engine. If this feature is enabled, HTTP input character encoding may be converted to mbstring.internal_encoding automatically.

    Nota:

    As of PHP 4.3.0, the option --enable-mbstr-enc-trans was eliminated and replaced with the runtime setting mbstring.encoding_translation. HTTP input character encoding conversion is enabled when this is set to On (the default is Off).

  • --disable-mbregex : Disable regular expression functions with multibyte character support.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

mbstring configuration options
Name | Default | Changeable | Changelog
mbstring.language | "neutral" | PHP_INI_ALL | Available since PHP 4.3.0.; PHP_INI_PERDIR in PHP <= 5.2.6
mbstring.detect_order | NULL | PHP_INI_ALL | Available since PHP 4.0.6.
mbstring.http_input | "pass" | PHP_INI_ALL | Available since PHP 4.0.6.
mbstring.http_output | "pass" | PHP_INI_ALL | Available since PHP 4.0.6.
mbstring.internal_encoding | NULL | PHP_INI_ALL | Available since PHP 4.0.6.
mbstring.script_encoding | NULL | PHP_INI_ALL | Available since PHP 4.3.0.
mbstring.substitute_character | NULL | PHP_INI_ALL | Available since PHP 4.0.6.
mbstring.func_overload | "0" | PHP_INI_SYSTEM | PHP_INI_SYSTEM in PHP <= 4.2.3; PHP_INI_SYSTEM | PHP_INI_PERDIR from PHP 4.3 through 5.2.6. Available since PHP 4.2.0.
mbstring.encoding_translation | "0" | PHP_INI_PERDIR | Available since PHP 4.3.0.
mbstring.strict_detection | "0" | PHP_INI_ALL | Available since PHP 5.1.2.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

mbstring.language string

The default national language setting (NLS) used in mbstring. Note that this option automagically defines mbstring.internal_encoding and mbstring.internal_encoding should be placed after mbstring.language in php.ini

mbstring.encoding_translation boolean

Enables the transparent character encoding filter for the incoming HTTP queries, which performs detection and conversion of the input encoding to the internal character encoding.

mbstring.internal_encoding string

Defines the default internal character encoding.

mbstring.http_input string

Defines the default HTTP input character encoding.

mbstring.http_output string

Defines the default HTTP output character encoding.

mbstring.detect_order string

Defines default character code detection order. See also mb_detect_order().

mbstring.substitute_character string

Defines character to substitute for invalid character encoding.

mbstring.func_overload string

Overloads a set of single byte functions by the mbstring counterparts. See Function overloading for more information.

mbstring.strict_detection boolean

Enables the strict encoding detection.

According to the » HTML 4.01 specification, Web browsers are allowed to encode a form being submitted with a character encoding different from the one used for the page. See mb_http_input() to detect character encoding used by browsers.

Although popular browsers are capable of giving a reasonably accurate guess to the character encoding of a given HTML document, it would be better to set the charset parameter in the Content-Type HTTP header to the appropriate value by header() or default_charset ini setting.

Exemplo #1 php.ini setting examples

; Set default language
mbstring.language        = Neutral; Set default language to Neutral(UTF-8) (default)
mbstring.language        = English; Set default language to English
mbstring.language        = Japanese; Set default language to Japanese

;; Set default internal encoding
;; Note: Make sure to use character encoding works with PHP
mbstring.internal_encoding    = UTF-8  ; Set internal encoding to UTF-8

;; HTTP input encoding translation is enabled.
mbstring.encoding_translation = On

;; Set default HTTP input character encoding
;; Note: Script cannot change http_input setting.
mbstring.http_input           = pass    ; No conversion.
mbstring.http_input           = auto    ; Set HTTP input to auto
                                ; "auto" is expanded according to mbstring.language
mbstring.http_input           = SJIS    ; Set HTTP2 input to  SJIS
mbstring.http_input           = UTF-8,SJIS,EUC-JP ; Specify order

;; Set default HTTP output character encoding
mbstring.http_output          = pass    ; No conversion
mbstring.http_output          = UTF-8   ; Set HTTP output encoding to UTF-8

;; Set default character encoding detection order
mbstring.detect_order         = auto    ; Set detect order to auto
mbstring.detect_order         = ASCII,JIS,UTF-8,SJIS,EUC-JP ; Specify order

;; Set default substitute character
mbstring.substitute_character = 12307   ; Specify Unicode value
mbstring.substitute_character = none    ; Do not print character
mbstring.substitute_character = long    ; Long Example: U+3000,JIS+7E7E

Exemplo #2 php.ini setting for EUC-JP users

;; Disable Output Buffering
output_buffering      = Off

;; Set HTTP header charset
default_charset       = EUC-JP

;; Set default language to Japanese
mbstring.language = Japanese

;; HTTP input encoding translation is enabled.
mbstring.encoding_translation = On

;; Set HTTP input encoding conversion to auto
mbstring.http_input   = auto

;; Convert HTTP output to EUC-JP
mbstring.http_output  = EUC-JP

;; Set internal encoding to EUC-JP
mbstring.internal_encoding = EUC-JP

;; Do not print invalid characters
mbstring.substitute_character = none

Exemplo #3 php.ini setting for SJIS users

;; Enable Output Buffering
output_buffering     = On

;; Set mb_output_handler to enable output conversion
output_handler       = mb_output_handler

;; Set HTTP header charset
default_charset      = Shift_JIS

;; Set default language to Japanese
mbstring.language = Japanese

;; Set http input encoding conversion to auto
mbstring.http_input  = auto

;; Convert to SJIS
mbstring.http_output = SJIS

;; Set internal encoding to EUC-JP
mbstring.internal_encoding = EUC-JP

;; Do not print invalid characters
mbstring.substitute_character = none

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MB_OVERLOAD_MAIL (integer)
MB_OVERLOAD_STRING (integer)
MB_OVERLOAD_REGEX (integer)
MB_CASE_UPPER (integer)
MB_CASE_LOWER (integer)
MB_CASE_TITLE (integer)
Tipos Resource
Summaries of supported encodings
Multibyte String


Summaries of supported encodings

Summaries of supported encodings
Name in the IANA character set registry:ISO-10646-UCS-4
Underlying character set:ISO 10646
Description: The Universal Character Set with 31-bit code space, standardized as UCS-4 by ISO/IEC 10646. It is kept synchronized with the latest version of the Unicode code map.
Additional note: If this name is used in the encoding conversion facility, the converter attempts to identify by the preceding BOM (byte order mark)in which endian the subsequent bytes are represented.
Name in the IANA character set registry:ISO-10646-UCS-4
Underlying character set:UCS-4
Description: See above.
Additional note: In contrast to UCS-4, strings are always assumed to be in big endian form.
Name in the IANA character set registry:ISO-10646-UCS-4
Underlying character set:UCS-4
Description: See above.
Additional note: In contrast to UCS-4, strings are always assumed to be in little endian form.
Name in the IANA character set registry:ISO-10646-UCS-2
Underlying character set:UCS-2
Description: The Universal Character Set with 16-bit code space, standardized as UCS-2 by ISO/IEC 10646. It is kept synchronized with the latest version of the unicode code map.
Additional note: If this name is used in the encoding conversion facility, the converter attempts to identify by the preceding BOM (byte order mark)in which endian the subsequent bytes are represented.
Name in the IANA character set registry:ISO-10646-UCS-2
Underlying character set:UCS-2
Description: See above.
Additional note: In contrast to UCS-2, strings are always assumed to be in big endian form.
Name in the IANA character set registry:ISO-10646-UCS-2
Underlying character set:UCS-2
Description: See above.
Additional note: In contrast to UCS-2, strings are always assumed to be in little endian form.
Name in the IANA character set registry:UTF-32
Underlying character set:Unicode
Description: Unicode Transformation Format of 32-bit unit width, whose encoding space refers to the Unicode's codeset standard. This encoding scheme wasn't identical to UCS-4 because the code space of Unicode were limited to a 21-bit value.
Additional note: If this name is used in the encoding conversion facility, the converter attempts to identify by the preceding BOM (byte order mark)in which endian the subsequent bytes are represented.
Name in the IANA character set registry:UTF-32BE
Underlying character set:Unicode
Description:See above
Additional note: In contrast to UTF-32, strings are always assumed to be in big endian form.
Name in the IANA character set registry:UTF-32LE
Underlying character set:Unicode
Description:See above
Additional note: In contrast to UTF-32, strings are always assumed to be in little endian form.
Name in the IANA character set registry:UTF-16
Underlying character set:Unicode
Description: Unicode Transformation Format of 16-bit unit width. It's worth a note that UTF-16 is no longer the same specification as UCS-2 because the surrogate mechanism has been introduced since Unicode 2.0 and UTF-16 now refers to a 21-bit code space.
Additional note: If this name is used in the encoding conversion facility, the converter attempts to identify by the preceding BOM (byte order mark)in which endian the subsequent bytes are represented.
Name in the IANA character set registry:UTF-16BE
Underlying character set:Unicode
Description: See above.
Additional note: In contrast to UTF-16, strings are always assumed to be in big endian form.
Name in the IANA character set registry:UTF-16LE
Underlying character set:Unicode
Description: See above.
Additional note: In contrast to UTF-16, strings are always assumed to be in little endian form.
Name in the IANA character set registry:UTF-8
Underlying character set:Unicode / UCS
Description: Unicode Transformation Format of 8-bit unit width.
Additional note:none
Name in the IANA character set registry:UTF-7
Underlying character set:Unicode
Description: A mail-safe transformation format of Unicode, specified in » RFC2152.
Additional note:none
Name in the IANA character set registry:(none)
Underlying character set:Unicode
Description: A variant of UTF-7 which is specialized for use in the » IMAP protocol.
Additional note:none
Name in the IANA character set registry: US-ASCII (preferred MIME name) / iso-ir-6 / ANSI_X3.4-1986 / ISO_646.irv:1991 / ASCII / ISO646-US / us / IBM367 / CP367 / csASCII
Underlying character set:ASCII / ISO 646
Description: American Standard Code for Information Interchange is a commonly-used 7-bit encoding. Also standardized as an international standard, ISO 646.
Additional note:(none)
Name in the IANA character set registry: EUC-JP (preferred MIME name) / Extended_UNIX_Code_Packed_Format_for_Japanese / csEUCPkdFmtJapanese
Underlying character set: Compound of US-ASCII / JIS X0201:1997 (hankaku kana part) / JIS X0208:1990 / JIS X0212:1990
Description: As you see the name is derived from an abbreviation of Extended UNIX Code Packed Format for Japanese, this encoding is mostly used on UNIX or alike platforms. The original encoding scheme, Extended UNIX Code, is designed on the basis of ISO 2022.
Additional note: The character set referred to by EUC-JP is different to IBM932 / CP932, which are used by OS/2® and Microsoft® Windows®. For information interchange with those platforms, use EUCJP-WIN instead.
Name in the IANA character set registry:Shift_JIS (preferred MIME name) / MS_Kanji / csShift_JIS
Underlying character set:Compound of JIS X0201:1997 / JIS X0208:1997
Description: Shift_JIS was developed in early 80's, at the time personal Japanese word processors were brought into the market, in order to maintain compatiblities with the legacy encoding scheme JIS X 0201:1976. According to the IANA definition the codeset of Shift_JIS is slightly different to IBM932 / CP932. However, the names "SJIS" / "Shift_JIS" are often wrongly used to refer to these codesets.
Additional note:For the CP932 codemap, use SJIS-WIN instead.
Name in the IANA character set registry:(none)
Underlying character set: Compound of JIS X0201:1997 / JIS X0208:1997 / IBM extensions / NEC extensions
Description: While this "encoding" uses the same encoding scheme as EUC-JP, the underlying character set is different. That is, some code points map to different characters than EUC-JP.
Additional note:none
Name in the IANA character set registry:Windows-31J / csWindows31J
Underlying character set: Compound of JIS X0201:1997 / JIS X0208:1997 / IBM extensions / NEC extensions
Description: While this "encoding" uses the same encoding scheme as Shift_JIS, the underlying character set is different. That means some code points map to different characters than Shift_JIS.
Additional note:(none)
Name in the IANA character set registry:ISO-2022-JP (preferred MIME name) / csISO2022JP
Underlying character set: US-ASCII / JIS X0201:1976 / JIS X0208:1978 / JIS X0208:1983
Description: » RFC1468
Additional note:(none)
Name in the IANA character set registry:JIS
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-1
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-2
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-3
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-4
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-5
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-6
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-7
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-8
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-9
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-10
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-13
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-14
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-8859-15
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:byte2be
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:byte2le
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:byte4be
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:byte4le
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:BASE64
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:HTML-ENTITIES
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:7bit
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:8bit
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:EUC-CN
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:CP936
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:HZ
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:EUC-TW
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:CP950
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:BIG-5
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:EUC-KR
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:UHC (CP949)
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:ISO-2022-KR
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:Windows-1251 (CP1251)
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:Windows-1252 (CP1252)
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:CP866 (IBM866)
Underlying character set:
Description:
Additional note:
Name in the IANA character set registry:KOI8-R
Underlying character set:
Description:
Additional note:
Constantes pré-definidas
Basics of Japanese multi-byte encodings
Multibyte String


Basics of Japanese multi-byte encodings

Japanese characters can only be represented by multibyte encodings, and multiple encoding standards are used depending on platform and text purpose. To make matters worse, these encoding standards differ slightly from one another. In order to create a web application which would be usable in a Japanese environment, a developer has to keep these complexities in mind to ensure that the proper character encodings are used.

  • Storage for a character can be up to six bytes
  • Most Japanese multibyte characters appear twice as wide as single-byte characters. These characters are called "zen-kaku" in Japanese, which means "full width". Other, narrower, characters are called "han-kaku", which means "half width". The graphical properties of the characters, however, depends upon the type faces used to display them.
  • Some character encodings use shift(escape) sequences defined in ISO-2022 to switch the code map of the specific code area (00h to 7fh).
  • ISO-2022-JP should be used in SMTP/NNTP, and headers and entities should be reencoded as per RFC requirements. Although those are not requisites, it's still a good idea because several popular user agents cannot recognize any other encoding methods.
  • Web pages created for mobile phone services such as » i-mode or » EZweb are supposed to use Shift_JIS.

Summaries of supported encodings
HTTP Input and Output
Multibyte String


HTTP Input and Output

HTTP input/output character encoding conversion may convert binary data also. Users are supposed to control character encoding conversion if binary data is used for HTTP input/output.

Nota:

In PHP 4.3.2 or earlier versions, there was a limitation in this functionality that mbstring does not perform character encoding conversion in POST data if the enctype attribute in the form element is set to multipart/form-data. So you have to convert the incoming data by yourself in this case if necessary.

Beginning with PHP 4.3.3, if enctype for HTML form is set to multipart/form-data and mbstring.encoding_translation is set to On in php.ini the POST'ed variables and the names of uploaded files will be converted to the internal character encoding as well. However, the conversion isn't applied to the query keys.

  • HTTP Input

    There is no way to control HTTP input character conversion from a PHP script. To disable HTTP input character conversion, it has to be done in php.ini.

    Exemplo #1 Disable HTTP input conversion in php.ini

    ;; Disable HTTP Input conversion
mbstring.http_input = pass
;; Disable HTTP Input conversion (PHP 4.3.0 or higher)
mbstring.encoding_translation = Off

    When using PHP as an Apache module, it is possible to override those settings in each Virtual Host directive in httpd.conf or per directory with .htaccess. Refer to the Configuration section and Apache Manual for details.

  • HTTP Output

    There are several ways to enable output character encoding conversion. One is using php.ini, another is using ob_start() with mb_output_handler() as the ob_start callback function.

Exemplo #2 php.ini setting example

;; Enable output character encoding conversion for all PHP pages

;; Enable Output Buffering
output_buffering    = On

;; Set mb_output_handler to enable output conversion
output_handler      = mb_output_handler

Exemplo #3 Script example

<?php

// Enable output character encoding conversion only for this page

// Set HTTP output character encoding to SJIS
mb_http_output('SJIS');

// Start buffering and specify "mb_output_handler" as
// callback function
ob_start('mb_output_handler');

?>

Basics of Japanese multi-byte encodings
Supported Character Encodings
Multibyte String


Supported Character Encodings

Currently the following character encodings are supported by the mbstring module. Any of those Character encodings can be specified in the encoding parameter of mbstring functions.

The following character encodings are supported in this PHP extension:

  • UCS-4*
  • UCS-4BE
  • UCS-4LE*
  • UCS-2
  • UCS-2BE
  • UCS-2LE
  • UTF-32*
  • UTF-32BE*
  • UTF-32LE*
  • UTF-16*
  • UTF-16BE*
  • UTF-16LE*
  • UTF-7
  • UTF7-IMAP
  • UTF-8*
  • ASCII*
  • EUC-JP*
  • SJIS*
  • eucJP-win*
  • SJIS-win*
  • ISO-2022-JP
  • JIS
  • ISO-8859-1*
  • ISO-8859-2*
  • ISO-8859-3*
  • ISO-8859-4*
  • ISO-8859-5*
  • ISO-8859-6*
  • ISO-8859-7*
  • ISO-8859-8*
  • ISO-8859-9*
  • ISO-8859-10*
  • ISO-8859-13*
  • ISO-8859-14*
  • ISO-8859-15*
  • byte2be
  • byte2le
  • byte4be
  • byte4le
  • BASE64
  • HTML-ENTITIES
  • 7bit
  • 8bit
  • EUC-CN*
  • CP936
  • HZ
  • EUC-TW*
  • CP950
  • BIG-5*
  • EUC-KR*
  • UHC (CP949)
  • ISO-2022-KR
  • Windows-1251 (CP1251)
  • Windows-1252 (CP1252)
  • CP866 (IBM866)
  • KOI8-R*

* denotes encodings usable also in regular expressions.

Any php.ini entry which accepts an encoding name can also use the values "auto" and "pass". mbstring functions which accept an encoding name can also use the value "auto".

If "pass" is set, no character encoding conversion is performed.

If "auto" is set, it is expanded to the list of encodings defined per the NLS. For instance, if the NLS is set to Japanese, the value is assumed to be "ASCII,JIS,UTF-8,EUC-JP,SJIS".

See also mb_detect_order()

HTTP Input and Output
Function Overloading Feature
Multibyte String


Function Overloading Feature

You might often find it difficult to get an existing PHP application to work in a given multibyte environment. This happens because most PHP applications out there are written with the standard string functions such as substr(), which are known to not properly handle multibyte-encoded strings.

mbstring supports a 'function overloading' feature which enables you to add multibyte awareness to such an application without code modification by overloading multibyte counterparts on the standard string functions. For example, mb_substr() is called instead of substr() if function overloading is enabled. This feature makes it easy to port applications that only support single-byte encodings to a multibyte environment in many cases.

To use function overloading, set mbstring.func_overload in php.ini to a positive value that represents a combination of bitmasks specifying the categories of functions to be overloaded. It should be set to 1 to overload the mail() function. 2 for string functions, 4 for regular expression functions. For example, if it is set to 7, mail, strings and regular expression functions will be overloaded. The list of overloaded functions are shown below.

Functions to be overloaded
value of mbstring.func_overload | original function | overloaded function
1 | mail() | mb_send_mail()
2 | strlen() | mb_strlen()
2 | strpos() | mb_strpos()
2 | strrpos() | mb_strrpos()
2 | substr() | mb_substr()
2 | strtolower() | mb_strtolower()
2 | strtoupper() | mb_strtoupper()
2 | stripos() | mb_stripos()
2 | strripos() | mb_strripos()
2 | strstr() | mb_strstr()
2 | stristr() | mb_stristr()
2 | strrchr() | mb_strrchr()
2 | substr_count() | mb_substr_count()
4 | ereg() | mb_ereg()
4 | eregi() | mb_eregi()
4 | ereg_replace() | mb_ereg_replace()
4 | eregi_replace() | mb_eregi_replace()
4 | split() | mb_split()

Nota:

It is not recommended to use the function overloading option in the per-directory context, because it's not confirmed yet to be stable enough in a production environment and may lead to undefined behaviour.

Supported Character Encodings
PHP Character Encoding Requirements
Multibyte String


PHP Character Encoding Requirements

Encodings of the following types are safely used with PHP.

  • A singlebyte encoding,

    • which has ASCII-compatible (ISO646 compatible) mappings for the characters in range of 00h to 7fh.

  • A multibyte encoding,

    • which has ASCII-compatible mappings for the characters in range of 00h to 7fh.
    • which don't use ISO2022 escape sequences.
    • which don't use a value from 00h to 7fh in any of the compounded bytes that represents a single character.

These are examples of character encodings that are unlikely to work with PHP.

JIS, SJIS, ISO-2022-JP, BIG-5

Although PHP scripts written in any of those encodings might not work, especially in the case where encoded strings appear as identifiers or literals in the script, you can almost avoid using these encodings by setting up the mbstring's transparent encoding filter function for incoming HTTP queries.

Nota:

It's highly discouraged to use SJIS, BIG5, CP936, CP949 and GB18030 for the internal encoding unless you are familiar with the parser, the scanner and the character encoding.

Nota:

If you are connecting to a database with PHP, it is recommended that you use the same character encoding for both the database and the internal encoding for ease of use and better performance.

If you are using PostgreSQL, the character encoding used in the database and the one used in PHP may differ as it supports automatic character set conversion between the backend and the frontend.

Function Overloading Feature
Multibyte String Funções
Multibyte String


Multibyte String Funções

References

Multibyte character encoding schemes and their related issues are fairly complicated, and are beyond the scope of this documentation. Please refer to the following URLs and other resources for further information regarding these topics.

  • Unicode materials

    » http://www.unicode.org/

  • Japanese/Korean/Chinese character information

    » http://examples.oreilly.com/cjkvinfo/doc/cjk.inf

Índice

  • mb_check_encoding — Check if the string is valid for the specified encoding
  • mb_convert_case — Perform case folding on a string
  • mb_convert_encoding — Convert character encoding
  • mb_convert_kana — Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
  • mb_convert_variables — Convert character code in variable(s)
  • mb_decode_mimeheader — Decode string in MIME header field
  • mb_decode_numericentity — Decode HTML numeric string reference to character
  • mb_detect_encoding — Detect character encoding
  • mb_detect_order — Set/Get character encoding detection order
  • mb_encode_mimeheader — Encode string for MIME header
  • mb_encode_numericentity — Encode character to HTML numeric string reference
  • mb_encoding_aliases — Get aliases of a known encoding type
  • mb_ereg_match — Regular expression match for multibyte string
  • mb_ereg_replace — Replace regular expression with multibyte support
  • mb_ereg_search_getpos — Returns start point for next regular expression match
  • mb_ereg_search_getregs — Retrieve the result from the last multibyte regular expression match
  • mb_ereg_search_init — Setup string and regular expression for a multibyte regular expression match
  • mb_ereg_search_pos — Returns position and length of a matched part of the multibyte regular expression for a predefined multibyte string
  • mb_ereg_search_regs — Returns the matched part of a multibyte regular expression
  • mb_ereg_search_setpos — Set start point of next regular expression match
  • mb_ereg_search — Multibyte regular expression match for predefined multibyte string
  • mb_ereg — Regular expression match with multibyte support
  • mb_eregi_replace — Replace regular expression with multibyte support ignoring case
  • mb_eregi — Regular expression match ignoring case with multibyte support
  • mb_get_info — Get internal settings of mbstring
  • mb_http_input — Detect HTTP input character encoding
  • mb_http_output — Set/Get HTTP output character encoding
  • mb_internal_encoding — Set/Get internal character encoding
  • mb_language — Set/Get current language
  • mb_list_encodings — Returns an array of all supported encodings
  • mb_output_handler — Callback function converts character encoding in output buffer
  • mb_parse_str — Parse GET/POST/COOKIE data and set global variable
  • mb_preferred_mime_name — Get MIME charset string
  • mb_regex_encoding — Returns current encoding for multibyte regex as string
  • mb_regex_set_options — Set/Get the default options for mbregex functions
  • mb_send_mail — Send encoded mail
  • mb_split — Split multibyte string using regular expression
  • mb_strcut — Get part of string
  • mb_strimwidth — Get truncated string with specified width
  • mb_stripos — Finds position of first occurrence of a string within another, case insensitive
  • mb_stristr — Finds first occurrence of a string within another, case insensitive
  • mb_strlen — Get string length
  • mb_strpos — Find position of first occurrence of string in a string
  • mb_strrchr — Finds the last occurrence of a character in a string within another
  • mb_strrichr — Finds the last occurrence of a character in a string within another, case insensitive
  • mb_strripos — Finds position of last occurrence of a string within another, case insensitive
  • mb_strrpos — Find position of last occurrence of a string in a string
  • mb_strstr — Finds first occurrence of a string within another
  • mb_strtolower — Make a string lowercase
  • mb_strtoupper — Make a string uppercase
  • mb_strwidth — Return width of string
  • mb_substitute_character — Set/Get substitution character
  • mb_substr_count — Count the number of substring occurrences
  • mb_substr — Get part of string
PHP Character Encoding Requirements
mb_check_encoding
Multibyte String


Check if the string is valid for the specified encoding

Multibyte String Funções
mb_convert_case
Multibyte String Funções
PHP Manual

mb_check_encoding

(PHP 4 >= 4.4.3, PHP 5 >= 5.1.3)

mb_check_encoding — Check if the string is valid for the specified encoding

Descrição

bool mb_check_encoding ([ string $var = NULL [, string $encoding = mb_internal_encoding() ]] )

Checks if the specified byte stream is valid for the specified encoding. It is useful to prevent so-called "Invalid Encoding Attack".

Parâmetros

var

The byte stream to check. If it is omitted, this function checks all the input from the beginning of the request.

encoding

The expected encoding.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Multibyte String Funções
mb_convert_case
Multibyte String Funções


Perform case folding on a string

mb_check_encoding
mb_convert_encoding
Multibyte String Funções
PHP Manual

mb_convert_case

(PHP 4 >= 4.3.0, PHP 5)

mb_convert_case — Perform case folding on a string

Descrição

string mb_convert_case ( string $str , int $mode = MB_CASE_UPPER [, string $encoding = mb_internal_encoding() ] )

Performs case folding on a string, converted in the way specified by mode.

Parâmetros

str

The string being converted.

mode

The mode of the conversion. It can be one of MB_CASE_UPPER, MB_CASE_LOWER, or MB_CASE_TITLE.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

A case folded version of string converted in the way specified by mode.

Unicode

By contrast to the standard case folding functions such as strtolower() and strtoupper(), case folding is performed on the basis of the Unicode character properties. Thus the behaviour of this function is not affected by locale settings and it can convert any characters that have 'alphabetic' property, such as A-umlaut (Ä).

For more information about the Unicode properties, please see » http://www.unicode.org/unicode/reports/tr21/.

Exemplos

Exemplo #1 mb_convert_case() example

<?php
$str = "mary had a Little lamb and she loved it so";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str; // Prints MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str; // Prints Mary Had A Little Lamb And She Loved It So
?>

Exemplo #2 mb_convert_case() example with non-Latin UTF-8 text

<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str; // Prints ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str; // Prints Τάχιστη Αλώπηξ Βαφήσ Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνόσ
?>

Veja Também

  • mb_strtolower() - Make a string lowercase
  • mb_strtoupper() - Make a string uppercase
  • strtolower() - Converte uma string para minúsculas
  • strtoupper() - Converte uma string para maiúsculas
  • ucfirst() - Converte para maiúscula o primeiro caractere de uma string
  • ucwords() - Converte para maiúsculas o primeiro caractere de cada palavra

mb_check_encoding
mb_convert_encoding
Multibyte String Funções


Convert character encoding

mb_convert_case
mb_convert_kana
Multibyte String Funções
PHP Manual

mb_convert_encoding

(PHP 4 >= 4.0.6, PHP 5)

mb_convert_encoding — Convert character encoding

Descrição

string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding ] )

Converts the character encoding of string str to to_encoding from optionally from_encoding.

Parâmetros

str

The string being encoded.

to_encoding

The type of encoding that str is being converted to.

from_encoding

Is specified by character code names before conversion. It is either an array, or a comma separated enumerated list. If from_encoding is not specified, the internal encoding will be used.

See supported encodings.

Valor Retornado

The encoded string.

Exemplos

Exemplo #1 mb_convert_encoding() example

<?php
/* Convert internal character encoding to SJIS */
$str = mb_convert_encoding($str, "SJIS");

/* Convert EUC-JP to UTF-7 */
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP");

/* Auto detect encoding from JIS, eucjp-win, sjis-win, then convert str to UCS-2LE */
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");

/* "auto" is expanded to "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
$str = mb_convert_encoding($str, "EUC-JP", "auto");
?>

Veja Também

  • mb_detect_order() - Set/Get character encoding detection order

mb_convert_case
mb_convert_kana
Multibyte String Funções


Convert "kana" one from another ("zen-kaku", "han-kaku" and more)

mb_convert_encoding
mb_convert_variables
Multibyte String Funções
PHP Manual

mb_convert_kana

(PHP 4 >= 4.0.6, PHP 5)

mb_convert_kana — Convert "kana" one from another ("zen-kaku", "han-kaku" and more)

Descrição

string mb_convert_kana ( string $str [, string $option = "KV" [, string $encoding ]] )

Performs a "han-kaku" - "zen-kaku" conversion for string str. This function is only useful for Japanese.

Parâmetros

str

The string being converted.

option

The conversion option.

Specify with a combination of following options.

Applicable Conversion Options
Option | Meaning
r | Convert "zen-kaku" alphabets to "han-kaku"
R | Convert "han-kaku" alphabets to "zen-kaku"
n | Convert "zen-kaku" numbers to "han-kaku"
N | Convert "han-kaku" numbers to "zen-kaku"
a | Convert "zen-kaku" alphabets and numbers to "han-kaku"
A | Convert "han-kaku" alphabets and numbers to "zen-kaku" (Characters included in "a", "A" options are U+0021 - U+007E excluding U+0022, U+0027, U+005C, U+007E)
s | Convert "zen-kaku" space to "han-kaku" (U+3000 -> U+0020)
S | Convert "han-kaku" space to "zen-kaku" (U+0020 -> U+3000)
k | Convert "zen-kaku kata-kana" to "han-kaku kata-kana"
K | Convert "han-kaku kata-kana" to "zen-kaku kata-kana"
h | Convert "zen-kaku hira-gana" to "han-kaku kata-kana"
H | Convert "han-kaku kata-kana" to "zen-kaku hira-gana"
c | Convert "zen-kaku kata-kana" to "zen-kaku hira-gana"
C | Convert "zen-kaku hira-gana" to "zen-kaku kata-kana"
V | Collapse voiced sound notation and convert them into a character. Use with "K","H"

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The converted string.

Exemplos

Exemplo #1 mb_convert_kana() example

<?php
/* Convert all "kana" to "zen-kaku" "kata-kana" */
$str = mb_convert_kana($str, "KVC");

/* Convert "han-kaku" "kata-kana" to "zen-kaku" "kata-kana"
   and "zen-kaku" alpha-numeric to "han-kaku" */
$str = mb_convert_kana($str, "KVa");
?>

mb_convert_encoding
mb_convert_variables
Multibyte String Funções


Convert character code in variable(s)

mb_convert_kana
mb_decode_mimeheader
Multibyte String Funções
PHP Manual

mb_convert_variables

(PHP 4 >= 4.0.6, PHP 5)

mb_convert_variables — Convert character code in variable(s)

Descrição

string mb_convert_variables ( string $to_encoding , mixed $from_encoding , mixed &$vars [, mixed &$... ] )

Converts character encoding of variables vars in encoding from_encoding to encoding to_encoding.

mb_convert_variables() join strings in Array or Object to detect encoding, since encoding detection tends to fail for short strings. Therefore, it is impossible to mix encoding in single array or object.

Parâmetros

to_encoding

The encoding that the string is being converted to.

from_encoding

from_encoding is specified as an array or comma separated string, it tries to detect encoding from from-coding. When from_encoding is omitted, detect_order is used.

vars

vars is the reference to the variable being converted. String, Array and Object are accepted. mb_convert_variables() assumes all parameters have the same encoding.

...

Additional vars.

Valor Retornado

The character encoding before conversion for success, or FALSE for failure.

Exemplos

Exemplo #1 mb_convert_variables() example

<?php
/* Convert variables $post1, $post2 to internal encoding */
$interenc = mb_internal_encoding();
$inputenc = mb_convert_variables($interenc, "ASCII,UTF-8,SJIS-win", $post1, $post2);
?>

mb_convert_kana
mb_decode_mimeheader
Multibyte String Funções


Decode string in MIME header field

mb_convert_variables
mb_decode_numericentity
Multibyte String Funções
PHP Manual

mb_decode_mimeheader

(PHP 4 >= 4.0.6, PHP 5)

mb_decode_mimeheader — Decode string in MIME header field

Descrição

string mb_decode_mimeheader ( string $str )

Decodes encoded-word string str in MIME header.

Parâmetros

str

The string being decoded.

Valor Retornado

The decoded string in internal character encoding.

Veja Também

  • mb_encode_mimeheader() - Encode string for MIME header

mb_convert_variables
mb_decode_numericentity
Multibyte String Funções


Decode HTML numeric string reference to character

mb_decode_mimeheader
mb_detect_encoding
Multibyte String Funções
PHP Manual

mb_decode_numericentity

(PHP 4 >= 4.0.6, PHP 5)

mb_decode_numericentity — Decode HTML numeric string reference to character

Descrição

string mb_decode_numericentity ( string $str , array $convmap , string $encoding )

Convert numeric string reference of string str in a specified block to character.

Parâmetros

str

The string being decoded.

convmap

convmap is an array that specifies the code area to convert.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The converted string.

Exemplos

Exemplo #1 convmap example

$convmap = array (
   int start_code1, int end_code1, int offset1, int mask1,
   int start_code2, int end_code2, int offset2, int mask2,
   ........
   int start_codeN, int end_codeN, int offsetN, int maskN );
// Specify Unicode value for start_codeN and end_codeN
// Add offsetN to value and take bit-wise 'AND' with maskN,
// then convert value to numeric string reference.

Veja Também

  • mb_encode_numericentity() - Encode character to HTML numeric string reference

mb_decode_mimeheader
mb_detect_encoding
Multibyte String Funções


Detect character encoding

mb_decode_numericentity
mb_detect_order
Multibyte String Funções
PHP Manual

mb_detect_encoding

(PHP 4 >= 4.0.6, PHP 5)

mb_detect_encoding — Detect character encoding

Descrição

string mb_detect_encoding ( string $str [, mixed $encoding_list = mb_detect_order() [, bool $strict = false ]] )

Detects character encoding in string str.

Parâmetros

str

The string being detected.

encoding_list

encoding_list is list of character encoding. Encoding order may be specified by array or comma separated list string.

If encoding_list is omitted, detect_order is used.

strict

strict specifies whether to use the strict encoding detection or not. Default is FALSE.

Valor Retornado

The detected character encoding or FALSE if the encoding cannot be detected from the given string.

Exemplos

Exemplo #1 mb_detect_encoding() example

<?php
/* Detect character encoding with current detect_order */
echo mb_detect_encoding($str);

/* "auto" is expanded according to mbstring.language */
echo mb_detect_encoding($str, "auto");

/* Specify encoding_list character encoding by comma separated list */
echo mb_detect_encoding($str, "JIS, eucjp-win, sjis-win");

/* Use array to specify encoding_list  */
$ary[] = "ASCII";
$ary[] = "JIS";
$ary[] = "EUC-JP";
echo mb_detect_encoding($str, $ary);
?>

Veja Também

  • mb_detect_order() - Set/Get character encoding detection order

mb_decode_numericentity
mb_detect_order
Multibyte String Funções


Set/Get character encoding detection order

mb_detect_encoding
mb_encode_mimeheader
Multibyte String Funções
PHP Manual

mb_detect_order

(PHP 4 >= 4.0.6, PHP 5)

mb_detect_order — Set/Get character encoding detection order

Descrição

mixed mb_detect_order ([ mixed $encoding_list ] )

Sets the automatic character encoding detection order to encoding_list.

Parâmetros

encoding_list

encoding_list is an array or comma separated list of character encoding. See supported encodings.

If encoding_list is omitted, it returns the current character encoding detection order as array.

This setting affects mb_detect_encoding() and mb_send_mail().

mbstring currently implements the following encoding detection filters. If there is an invalid byte sequence for the following encodings, encoding detection will fail.

UTF-8, UTF-7, ASCII, EUC-JP,SJIS, eucJP-win, SJIS-win, JIS, ISO-2022-JP

For ISO-8859-*, mbstring always detects as ISO-8859-*.

For UTF-16, UTF-32, UCS2 and UCS4, encoding detection will fail always.

Exemplo #1 Useless detect order example

; Always detect as ISO-8859-1
detect_order = ISO-8859-1, UTF-8

; Always detect as UTF-8, since ASCII/UTF-7 values are
; valid for UTF-8
detect_order = UTF-8, ASCII, UTF-7

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #2 mb_detect_order() examples

<?php
/* Set detection order by enumerated list */
mb_detect_order("eucjp-win,sjis-win,UTF-8");

/* Set detection order by array */
$ary[] = "ASCII";
$ary[] = "JIS";
$ary[] = "EUC-JP";
mb_detect_order($ary);

/* Display current detection order */
echo implode(", ", mb_detect_order());
?>

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • mb_http_input() - Detect HTTP input character encoding
  • mb_http_output() - Set/Get HTTP output character encoding
  • mb_send_mail() - Send encoded mail

mb_detect_encoding
mb_encode_mimeheader
Multibyte String Funções


Encode string for MIME header

mb_detect_order
mb_encode_numericentity
Multibyte String Funções
PHP Manual

mb_encode_mimeheader

(PHP 4 >= 4.0.6, PHP 5)

mb_encode_mimeheader — Encode string for MIME header

Descrição

string mb_encode_mimeheader ( string $str [, string $charset [, string $transfer_encoding [, string $linefeed [, int $indent ]]]] )

Encodes a given string str by the MIME header encoding scheme.

Parâmetros

str

The string being encoded.

charset

charset specifies the name of the character set in which str is represented in. The default value is determined by the current NLS setting (mbstring.language). mb_internal_encoding() should be set to same encoding.

transfer_encoding

transfer_encoding specifies the scheme of MIME encoding. It should be either "B" (Base64) or "Q" (Quoted-Printable). Falls back to "B" if not given.

linefeed

linefeed specifies the EOL (end-of-line) marker with which mb_encode_mimeheader() performs line-folding (a » RFC term, the act of breaking a line longer than a certain length into multiple lines. The length is currently hard-coded to 74 characters). Falls back to "\r\n" (CRLF) if not given.

indent

Indentation of the first line (number of characters in the header before str).

Valor Retornado

A converted version of the string represented in ASCII.

Histórico

Versão | Descrição
5.0.0 | The indent parameter was added.

Exemplos

Exemplo #1 mb_encode_mimeheader() example

<?php
$name = ""; // kanji
$mbox = "kru";
$doma = "gtinn.mon";
$addr = mb_encode_mimeheader($name, "UTF-7", "Q") . " <" . $mbox . "@" . $doma . ">";
echo $addr;
?>

Notas

Nota:

This function isn't designed to break lines at higher-level contextual break points (word boundaries, etc.). This behaviour may clutter up the original string with unexpected spaces.

Veja Também

  • mb_decode_mimeheader() - Decode string in MIME header field

mb_detect_order
mb_encode_numericentity
Multibyte String Funções


Encode character to HTML numeric string reference

mb_encode_mimeheader
mb_encoding_aliases
Multibyte String Funções
PHP Manual

mb_encode_numericentity

(PHP 4 >= 4.0.6, PHP 5)

mb_encode_numericentity — Encode character to HTML numeric string reference

Descrição

string mb_encode_numericentity ( string $str , array $convmap , string $encoding )

Converts specified character codes in string str from HTML numeric character reference to character code.

Parâmetros

str

The string being encoded.

convmap

convmap is array specifies code area to convert.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The converted string.

Exemplos

Exemplo #1 convmap example

$convmap = array (
 int start_code1, int end_code1, int offset1, int mask1,
 int start_code2, int end_code2, int offset2, int mask2,
 ........
 int start_codeN, int end_codeN, int offsetN, int maskN );
// Specify Unicode value for start_codeN and end_codeN
// Add offsetN to value and take bit-wise 'AND' with maskN, then
// it converts value to numeric string reference.

Exemplos

Exemplo #2 mb_encode_numericentity() example

<?php
/* Convert Left side of ISO-8859-1 to HTML numeric character reference */
$convmap = array(0x80, 0xff, 0, 0xff);
$str = mb_encode_numericentity($str, $convmap, "ISO-8859-1");

/* Convert user defined SJIS-win code in block 95-104 to numeric
   string reference */
$convmap = array(
       0xe000, 0xe03e, 0x1040, 0xffff,
       0xe03f, 0xe0bb, 0x1041, 0xffff,
       0xe0bc, 0xe0fa, 0x1084, 0xffff,
       0xe0fb, 0xe177, 0x1085, 0xffff,
       0xe178, 0xe1b6, 0x10c8, 0xffff,
       0xe1b7, 0xe233, 0x10c9, 0xffff,
       0xe234, 0xe272, 0x110c, 0xffff,
       0xe273, 0xe2ef, 0x110d, 0xffff,
       0xe2f0, 0xe32e, 0x1150, 0xffff,
       0xe32f, 0xe3ab, 0x1151, 0xffff );
$str = mb_encode_numericentity($str, $convmap, "sjis-win");
?>

Veja Também

  • mb_decode_numericentity() - Decode HTML numeric string reference to character

mb_encode_mimeheader
mb_encoding_aliases
Multibyte String Funções


Get aliases of a known encoding type

mb_encode_numericentity
mb_ereg_match
Multibyte String Funções
PHP Manual

mb_encoding_aliases

(PHP 5 >= 5.3.0)

mb_encoding_aliases — Get aliases of a known encoding type

Descrição

array mb_encoding_aliases ( string $encoding )

Returns an array of aliases for a known encoding type.

Parâmetros

encoding

The encoding type being checked, for aliases.

Valor Retornado

Returns a numerically indexed array of encoding aliases on success, or FALSE on failure

Erros

Emits an E_WARNING level error if encoding is unknown.

Exemplos

Exemplo #1 mb_encoding_aliases() example

<?php
$encoding        = 'ASCII';
$known_encodings = mb_list_encodings();

if (in_array($encoding, $known_encodings)) {

    $aliases = mb_encoding_aliases($encoding);
    print_r($aliases);

} else {

    echo "Unknown ($encoding) encoding.\n";

}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => ANSI_X3.4-1968
    [1] => iso-ir-6
    [2] => ANSI_X3.4-1986
    [3] => ISO_646.irv:1991
    [4] => US-ASCII
    [5] => ISO646-US
    [6] => us
    [7] => IBM367
    [8] => cp367
    [9] => csASCII
)

Veja Também

  • mb_list_encodings() - Returns an array of all supported encodings

mb_encode_numericentity
mb_ereg_match
Multibyte String Funções


Regular expression match for multibyte string

mb_encoding_aliases
mb_ereg_replace
Multibyte String Funções
PHP Manual

mb_ereg_match

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_match — Regular expression match for multibyte string

Descrição

bool mb_ereg_match ( string $pattern , string $string [, string $option = "msr" ] )

A regular expression match for a multibyte string

Parâmetros

pattern

The regular expression pattern.

string

The string being evaluated.

option

Valor Retornado

Returns TRUE if string matches the regular expression pattern, FALSE if not.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg() - Regular expression match with multibyte support

mb_encoding_aliases
mb_ereg_replace
Multibyte String Funções


Replace regular expression with multibyte support

mb_ereg_match
mb_ereg_search_getpos
Multibyte String Funções
PHP Manual

mb_ereg_replace

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_replace — Replace regular expression with multibyte support

Descrição

string mb_ereg_replace ( string $pattern , string $replacement , string $string [, string $option = "msr" ] )

Scans string for matches to pattern, then replaces the matched text with replacement

Parâmetros

pattern

The regular expression pattern.

Multibyte characters may be used in pattern.

replacement

The replacement text.

string

The string being checked.

option
Matching condition can be set by option parameter. If i is specified for this parameter, the case will be ignored. If x is specified, white space will be ignored. If m is specified, match will be executed in multiline mode and line break will be included in '.'. If p is specified, match will be executed in POSIX mode, line break will be considered as normal character. If e is specified, replacement string will be evaluated as PHP expression.

Valor Retornado

The resultant string on success, or FALSE on error.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Aviso

Jamais use o modificador e ao usar com entrada não confiavel. Não será escapado automaticamente (como conhecido da função preg_replace()). Não ter cuidado com isso irá provavelmente criar vulnerabilidades de execução remota de código na sua aplicação.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_eregi_replace() - Replace regular expression with multibyte support ignoring case

mb_ereg_match
mb_ereg_search_getpos
Multibyte String Funções


Returns start point for next regular expression match

mb_ereg_replace
mb_ereg_search_getregs
Multibyte String Funções
PHP Manual

mb_ereg_search_getpos

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_getpos — Returns start point for next regular expression match

Descrição

int mb_ereg_search_getpos ( void )

Returns the start point for the next regular expression match.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

mb_ereg_search_getpos() returns
the point to start regular expression match for
mb_ereg_search(),
mb_ereg_search_pos(),
mb_ereg_search_regs(). The position is
represented by bytes from the head of string.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_setpos() - Set start point of next regular expression match

mb_ereg_replace
mb_ereg_search_getregs
Multibyte String Funções


Retrieve the result from the last multibyte regular expression match

mb_ereg_search_getpos
mb_ereg_search_init
Multibyte String Funções
PHP Manual

mb_ereg_search_getregs

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_getregs — Retrieve the result from the last multibyte regular expression match

Descrição

array mb_ereg_search_getregs ( void )

Retrieve the result from the last multibyte regular expression match

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array including the sub-string of matched part by last mb_ereg_search(), mb_ereg_search_pos(), mb_ereg_search_regs(). If there are some matches, the first element will have the matched sub-string, the second element will have the first part grouped with brackets, the third element will have the second part grouped with brackets, and so on. It returns FALSE on error;

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_init() - Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_getpos
mb_ereg_search_init
Multibyte String Funções


Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_getregs
mb_ereg_search_pos
Multibyte String Funções
PHP Manual

mb_ereg_search_init

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_init — Setup string and regular expression for a multibyte regular expression match

Descrição

bool mb_ereg_search_init ( string $string [, string $pattern [, string $option = "msr" ]] )

mb_ereg_search_init() sets
string and pattern
for a multibyte regular expression. These values are used for
mb_ereg_search(),
mb_ereg_search_pos(), and
mb_ereg_search_regs().

Parâmetros

string

The search string.

pattern

The search pattern.

option

The search option.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_regs() - Returns the matched part of a multibyte regular expression

mb_ereg_search_getregs
mb_ereg_search_pos
Multibyte String Funções


Returns position and length of a matched part of the multibyte regular expression for a predefined multibyte string

mb_ereg_search_init
mb_ereg_search_regs
Multibyte String Funções
PHP Manual

mb_ereg_search_pos

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_pos — Returns position and length of a matched part of the multibyte regular expression for a predefined multibyte string

Descrição

array mb_ereg_search_pos ([ string $pattern [, string $option = "ms" ]] )

Returns position and length of a matched part of the multibyte regular expression for a predefined multibyte string

The string for match is specified by mb_ereg_search_init(). If it is not specified, the previous one will be used.

Parâmetros

pattern

The search pattern.

option

The search option.

Valor Retornado

An array including the position of a matched part for a multibyte regular expression. The first element of the array will be the beginning of matched part, the second element will be length (bytes) of matched part. It returns FALSE on error.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_init() - Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_init
mb_ereg_search_regs
Multibyte String Funções


Returns the matched part of a multibyte regular expression

mb_ereg_search_pos
mb_ereg_search_setpos
Multibyte String Funções
PHP Manual

mb_ereg_search_regs

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_regs — Returns the matched part of a multibyte regular expression

Descrição

array mb_ereg_search_regs ([ string $pattern [, string $option = "ms" ]] )

Returns the matched part of a multibyte regular expression.

Parâmetros

pattern

The search pattern.

option

The search option.

Valor Retornado

mb_ereg_search_regs() executes the multibyte regular expression match, and if there are some matched part, it returns an array including substring of matched part as first element, the first grouped part with brackets as second element, the second grouped part as third element, and so on. It returns FALSE on error.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_init() - Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_pos
mb_ereg_search_setpos
Multibyte String Funções


Set start point of next regular expression match

mb_ereg_search_regs
mb_ereg_search
Multibyte String Funções
PHP Manual

mb_ereg_search_setpos

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search_setpos — Set start point of next regular expression match

Descrição

bool mb_ereg_search_setpos ( int $position )

mb_ereg_search_setpos() sets the starting point of a match for mb_ereg_search().

Parâmetros

position

The position to set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_init() - Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_regs
mb_ereg_search
Multibyte String Funções


Multibyte regular expression match for predefined multibyte string

mb_ereg_search_setpos
mb_ereg
Multibyte String Funções
PHP Manual

mb_ereg_search

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg_search — Multibyte regular expression match for predefined multibyte string

Descrição

bool mb_ereg_search ([ string $pattern [, string $option = "ms" ]] )

Performs a multibyte regular expression match for a predefined multibyte string.

Parâmetros

pattern

The search pattern.

option

The search option.

Valor Retornado

mb_ereg_search() returns TRUE if the multibyte string matches with the regular expression, or FALSE otherwise. The string for matching is set by mb_ereg_search_init(). If pattern is not specified, the previous one is used.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_search_init() - Setup string and regular expression for a multibyte regular expression match

mb_ereg_search_setpos
mb_ereg
Multibyte String Funções


Regular expression match with multibyte support

mb_ereg_search
mb_eregi_replace
Multibyte String Funções
PHP Manual

mb_ereg

(PHP 4 >= 4.2.0, PHP 5)

mb_ereg — Regular expression match with multibyte support

Descrição

int mb_ereg ( string $pattern , string $string [, array $regs ] )

Executes the regular expression match with multibyte support.

Parâmetros

pattern

The search pattern.

string

The search string.

regs

Contains a substring of the matched string.

Valor Retornado

Executes the regular expression match with multibyte support, and returns 1 if matches are found. If the optional regs parameter was specified, the function returns the byte length of matched part, and the array regs will contain the substring of matched string. The function returns 1 if it matches with the empty string. If no matches are found or an error happens, FALSE will be returned.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_eregi() - Regular expression match ignoring case with multibyte support

mb_ereg_search
mb_eregi_replace
Multibyte String Funções


Replace regular expression with multibyte support ignoring case

mb_ereg
mb_eregi
Multibyte String Funções
PHP Manual

mb_eregi_replace

(PHP 4 >= 4.2.0, PHP 5)

mb_eregi_replace — Replace regular expression with multibyte support ignoring case

Descrição

string mb_eregi_replace ( string $pattern , string $replace , string $string [, string $option = "msri" ] )

Scans string for matches to pattern, then replaces the matched text with replacement.

Parâmetros

pattern

The regular expression pattern. Multibyte characters may be used. The case will be ignored.

replace

The replacement text.

string

The searched string.

option
option has the same meaning as in mb_ereg_replace().

Valor Retornado

The resultant string or FALSE on error.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Aviso

Jamais use o modificador e ao usar com entrada não confiavel. Não será escapado automaticamente (como conhecido da função preg_replace()). Não ter cuidado com isso irá provavelmente criar vulnerabilidades de execução remota de código na sua aplicação.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg_replace() - Replace regular expression with multibyte support

mb_ereg
mb_eregi
Multibyte String Funções


Regular expression match ignoring case with multibyte support

mb_eregi_replace
mb_get_info
Multibyte String Funções
PHP Manual

mb_eregi

(PHP 4 >= 4.2.0, PHP 5)

mb_eregi — Regular expression match ignoring case with multibyte support

Descrição

int mb_eregi ( string $pattern , string $string [, array $regs ] )

Executes the case insensitive regular expression match with multibyte support.

Parâmetros

pattern

The regular expression pattern.

string

The string being searched.

regs

Contains a substring of the matched string.

Valor Retornado

Executes the regular expression match with multibyte support, and returns 1 if matches are found. If the optional regs parameter was specified, the function returns the byte length of matched part, and the array regs will contain the substring of matched string. The function returns 1 if it matches with the empty string. If no matches are found or an error happens, FALSE will be returned.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg() - Regular expression match with multibyte support

mb_eregi_replace
mb_get_info
Multibyte String Funções


Get internal settings of mbstring

mb_eregi
mb_http_input
Multibyte String Funções
PHP Manual

mb_get_info

(PHP 4 >= 4.2.0, PHP 5)

mb_get_info — Get internal settings of mbstring

Descrição

mixed mb_get_info ([ string $type = "all" ] )

mb_get_info() returns the internal setting parameters of mbstring.

Parâmetros

type

If type isn't specified or is specified to "all", an array having the elements "internal_encoding", "http_output", "http_input", "func_overload", "mail_charset", "mail_header_encoding", "mail_body_encoding" will be returned.

If type is specified as "http_output", "http_input", "internal_encoding", "func_overload", the specified setting parameter will be returned.

Valor Retornado

An array of type information if type is not specified, otherwise a specific type.

Histórico

Versão | Descrição
5.1.3 | The entries "mail_charset", "mail_header_encoding", and "mail_body_encoding" were made available.
5.3.0 | The entry "http_output_conv_mimetypes" was made available.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_http_output() - Set/Get HTTP output character encoding

mb_eregi
mb_http_input
Multibyte String Funções


Detect HTTP input character encoding

mb_get_info
mb_http_output
Multibyte String Funções
PHP Manual

mb_http_input

(PHP 4 >= 4.0.6, PHP 5)

mb_http_input — Detect HTTP input character encoding

Descrição

mixed mb_http_input ([ string $type = "" ] )

Detects the HTTP input character encoding.

Parâmetros

type

Input string specifies the input type. "G" for GET, "P" for POST, "C" for COOKIE, "S" for string, "L" for list, and "I" for the whole list (will return array). If type is omitted, it returns the last input type processed.

Valor Retornado

The character encoding name, as per the type. If mb_http_input() does not process specified HTTP input, it returns FALSE.

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • mb_http_output() - Set/Get HTTP output character encoding
  • mb_detect_order() - Set/Get character encoding detection order

mb_get_info
mb_http_output
Multibyte String Funções


Set/Get HTTP output character encoding

mb_http_input
mb_internal_encoding
Multibyte String Funções
PHP Manual

mb_http_output

(PHP 4 >= 4.0.6, PHP 5)

mb_http_output — Set/Get HTTP output character encoding

Descrição

mixed mb_http_output ([ string $encoding ] )

Set/Get the HTTP output character encoding. Output after this function is converted to encoding.

Parâmetros

encoding

If encoding is set, mb_http_output() sets the HTTP output character encoding to encoding.

If encoding is omitted, mb_http_output() returns the current HTTP output character encoding.

Valor Retornado

If encoding is omitted, mb_http_output() returns the current HTTP output character encoding. Otherwise, Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • mb_http_input() - Detect HTTP input character encoding
  • mb_detect_order() - Set/Get character encoding detection order

mb_http_input
mb_internal_encoding
Multibyte String Funções


Set/Get internal character encoding

mb_http_output
mb_language
Multibyte String Funções
PHP Manual

mb_internal_encoding

(PHP 4 >= 4.0.6, PHP 5)

mb_internal_encoding — Set/Get internal character encoding

Descrição

mixed mb_internal_encoding ([ string $encoding = mb_internal_encoding() ] )

Set/Get the internal character encoding

Parâmetros

encoding

encoding is the character encoding name used for the HTTP input character encoding conversion, HTTP output character encoding conversion, and the default character encoding for string functions defined by the mbstring module.

Valor Retornado

If encoding is set, then Retorna TRUE em caso de sucesso ou FALSE em falhas. If encoding is omitted, then the current character encoding name is returned.

Exemplos

Exemplo #1 mb_internal_encoding() example

<?php
/* Set internal character encoding to UTF-8 */
mb_internal_encoding("UTF-8");

/* Display current internal character encoding */
echo mb_internal_encoding();
?>

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_http_input() - Detect HTTP input character encoding
  • mb_http_output() - Set/Get HTTP output character encoding
  • mb_detect_order() - Set/Get character encoding detection order

mb_http_output
mb_language
Multibyte String Funções


Set/Get current language

mb_internal_encoding
mb_list_encodings
Multibyte String Funções
PHP Manual

mb_language

(PHP 4 >= 4.0.6, PHP 5)

mb_language — Set/Get current language

Descrição

mixed mb_language ([ string $language ] )

Set/Get the current language.

Parâmetros

language

Used for encoding e-mail messages. Valid languages are "Japanese", "ja","English","en" and "uni" (UTF-8). mb_send_mail() uses this setting to encode e-mail.

Language and its setting is ISO-2022-JP/Base64 for Japanese, UTF-8/Base64 for uni, ISO-8859-1/quoted printable for English.

Valor Retornado

If language is set and language is valid, it returns TRUE. Otherwise, it returns FALSE. When language is omitted, it returns the language name as a string. If no language is set previously, it then returns FALSE.

Veja Também

  • mb_send_mail() - Send encoded mail

mb_internal_encoding
mb_list_encodings
Multibyte String Funções


Returns an array of all supported encodings

mb_language
mb_output_handler
Multibyte String Funções
PHP Manual

mb_list_encodings

(PHP 5)

mb_list_encodings — Returns an array of all supported encodings

Descrição

array mb_list_encodings ( void )

Returns an array containing all supported encodings.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a numerically indexed array.

Erros

This function does not emit any errors.

Exemplos

Exemplo #1 mb_list_encodings() example

<?php

print_r(mb_list_encodings());

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => pass
    [1] => auto
    [2] => wchar
    [3] => byte2be
    [4] => byte2le
    [5] => byte4be
    [6] => byte4le
    [7] => BASE64
    [8] => UUENCODE
    [9] => HTML-ENTITIES
    [10] => Quoted-Printable
    [11] => 7bit
    [12] => 8bit
    [13] => UCS-4
    [14] => UCS-4BE
    [15] => UCS-4LE
    [16] => UCS-2
    [17] => UCS-2BE
    [18] => UCS-2LE
    [19] => UTF-32
    [20] => UTF-32BE
    [21] => UTF-32LE
    [22] => UTF-16
    [23] => UTF-16BE
    [24] => UTF-16LE
    [25] => UTF-8
    [26] => UTF-7
    [27] => UTF7-IMAP
    [28] => ASCII
    [29] => EUC-JP
    [30] => SJIS
    [31] => eucJP-win
    [32] => SJIS-win
    [33] => JIS
    [34] => ISO-2022-JP
    [35] => Windows-1252
    [36] => ISO-8859-1
    [37] => ISO-8859-2
    [38] => ISO-8859-3
    [39] => ISO-8859-4
    [40] => ISO-8859-5
    [41] => ISO-8859-6
    [42] => ISO-8859-7
    [43] => ISO-8859-8
    [44] => ISO-8859-9
    [45] => ISO-8859-10
    [46] => ISO-8859-13
    [47] => ISO-8859-14
    [48] => ISO-8859-15
    [49] => EUC-CN
    [50] => CP936
    [51] => HZ
    [52] => EUC-TW
    [53] => BIG-5
    [54] => EUC-KR
    [55] => UHC
    [56] => ISO-2022-KR
    [57] => Windows-1251
    [58] => CP866
    [59] => KOI8-R
)

mb_language
mb_output_handler
Multibyte String Funções


Callback function converts character encoding in output buffer

mb_list_encodings
mb_parse_str
Multibyte String Funções
PHP Manual

mb_output_handler

(PHP 4 >= 4.0.6, PHP 5)

mb_output_handler — Callback function converts character encoding in output buffer

Descrição

string mb_output_handler ( string $contents , int $status )

mb_output_handler() is
ob_start() callback
function. mb_output_handler() converts
characters in the output buffer from internal character encoding to
HTTP output character encoding.

Parâmetros

contents

The contents of the output buffer.

status

The status of the output buffer.

Valor Retornado

The converted string.

Histórico

Versão Descrição
4.1.0

This handler now adds the charset HTTP header when the following conditions are met:

  • Does not set Content-Type, using header().
  • The default MIME type begins with text/.
  • The mbstring.http_input setting is something other than pass.

Exemplos

Exemplo #1 mb_output_handler() example

<?php
mb_http_output("UTF-8");
ob_start("mb_output_handler");
?>

Notas

Nota:

If you want to output some binary data such as image from PHP script with PHP 4.3.0 or later, Content-Type: header must be send using header() before any binary data was send to client (e.g. header("Content-Type: image/png")). If Content-Type: header was send, output character encoding conversion will not be performed.

Note that if 'Content-Type: text/*' was send using header(), the sending data is regarded as text, encoding conversion will be performed using character encoding settings.

If you want to output some binary data such as image from PHP script with PHP 4.2.x or earlier, you must set output encoding to "pass" using mb_http_output().

Veja Também

  • ob_start() - Ativa o buffer de saída

mb_list_encodings
mb_parse_str
Multibyte String Funções


Parse GET/POST/COOKIE data and set global variable

mb_output_handler
mb_preferred_mime_name
Multibyte String Funções
PHP Manual

mb_parse_str

(PHP 4 >= 4.0.6, PHP 5)

mb_parse_str — Parse GET/POST/COOKIE data and set global variable

Descrição

bool mb_parse_str ( string $encoded_string [, array &$result ] )

Parses GET/POST/COOKIE data and sets global variables. Since PHP does not provide raw POST/COOKIE data, it can only be used for GET data for now. It parses URL encoded data, detects encoding, converts coding to internal encoding and set values to the result array or global variables.

Parâmetros

encoded_string

The URL encoded data.

result

An array containing decoded and character encoded converted values.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mb_detect_order() - Set/Get character encoding detection order
  • mb_internal_encoding() - Set/Get internal character encoding

mb_output_handler
mb_preferred_mime_name
Multibyte String Funções


Get MIME charset string

mb_parse_str
mb_regex_encoding
Multibyte String Funções
PHP Manual

mb_preferred_mime_name

(PHP 4 >= 4.0.6, PHP 5)

mb_preferred_mime_name — Get MIME charset string

Descrição

string mb_preferred_mime_name ( string $encoding )

Get a MIME charset string for a specific encoding.

Parâmetros

encoding

The encoding being checked.

Valor Retornado

The MIME charset string for character encoding encoding.

Exemplos

Exemplo #1 mb_preferred_mime_name() example

<?php
$outputenc = "sjis-win";
mb_http_output($outputenc);
ob_start("mb_output_handler");
header("Content-Type: text/html; charset=" . mb_preferred_mime_name($outputenc));
?>

mb_parse_str
mb_regex_encoding
Multibyte String Funções


Returns current encoding for multibyte regex as string

mb_preferred_mime_name
mb_regex_set_options
Multibyte String Funções
PHP Manual

mb_regex_encoding

(PHP 4 >= 4.2.0, PHP 5)

mb_regex_encoding — Returns current encoding for multibyte regex as string

Descrição

mixed mb_regex_encoding ([ string $encoding ] )

Returns the current encoding for a multibyte regex as a string.

Parâmetros

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

Returns the character encoding used by multibyte regex functions.

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • mb_ereg() - Regular expression match with multibyte support

mb_preferred_mime_name
mb_regex_set_options
Multibyte String Funções


Set/Get the default options for mbregex functions

mb_regex_encoding
mb_send_mail
Multibyte String Funções
PHP Manual

mb_regex_set_options

(PHP 4 >= 4.3.0, PHP 5)

mb_regex_set_options — Set/Get the default options for mbregex functions

Descrição

string mb_regex_set_options ([ string $options = "msr" ] )

Sets the default options described by options for multibyte regex functions.

Parâmetros

options

The options to set. This is a a string where each character is an option. To set a mode, the mode character must be the last one set, however there can only be set one mode but multiple options.

Regex options
Option | Meaning
i | Ambiguity match on
x | Enables extended pattern form
m | '.' matches with newlines
s | '^' -> '\A', '$' -> '\Z'
p | Same as both the m and s options
l | Finds longest matches
n | Ignores empty matches
e | eval() resulting code
Regex syntax modes
Mode | Meaning
j | Java (Sun java.util.regex)
u | GNU regex
g | grep
c | Emacs
r | Ruby
z | Perl
b | POSIX Basic regex
d | POSIX Extended regex

Valor Retornado

The previous options. If options is omitted, it returns the string that describes the current options.

Veja Também

  • mb_split() - Split multibyte string using regular expression
  • mb_ereg() - Regular expression match with multibyte support
  • mb_eregi() - Regular expression match ignoring case with multibyte support

mb_regex_encoding
mb_send_mail
Multibyte String Funções


Send encoded mail

mb_regex_set_options
mb_split
Multibyte String Funções
PHP Manual

mb_send_mail

(PHP 4 >= 4.0.6, PHP 5)

mb_send_mail — Send encoded mail

Descrição

bool mb_send_mail ( string $to , string $subject , string $message [, string $additional_headers = NULL [, string $additional_parameter = NULL ]] )

Sends email. Headers and messages are converted and encoded according to the mb_language() setting. It's a wrapper function for mail(), so see also mail() for details.

Parâmetros

to

The mail addresses being sent to. Multiple recipients may be specified by putting a comma between each address in to. This parameter is not automatically encoded.

subject

The subject of the mail.

message

The message of the mail.

additional_headers

additional_headers is inserted at the end of the header. This is typically used to add extra headers. Multiple extra headers are separated with a newline ("\n").

additional_parameter

additional_parameter is a MTA command line parameter. It is useful when setting the correct Return-Path header when using sendmail.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.0.0 | The Content-Type and Content-Transfer-Encoding headers may be redefined as of PHP 5.0.0. Before this time, the values defined by mb_language() are always used.

Veja Também

  • mail() - Envia email
  • mb_encode_mimeheader() - Encode string for MIME header
  • mb_language() - Set/Get current language

mb_regex_set_options
mb_split
Multibyte String Funções


Split multibyte string using regular expression

mb_send_mail
mb_strcut
Multibyte String Funções
PHP Manual

mb_split

(PHP 4 >= 4.2.0, PHP 5)

mb_split — Split multibyte string using regular expression

Descrição

array mb_split ( string $pattern , string $string [, int $limit = -1 ] )

Split a multibyte string using regular expression pattern and returns the result as an array.

Parâmetros

pattern

The regular expression pattern.

string

The string being split.

limit
If optional parameter limit is specified, it will be split in limit elements as maximum.

Valor Retornado

The result as an array.

Notas

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_regex_encoding() - Returns current encoding for multibyte regex as string
  • mb_ereg() - Regular expression match with multibyte support

mb_send_mail
mb_strcut
Multibyte String Funções


Get part of string

mb_split
mb_strimwidth
Multibyte String Funções
PHP Manual

mb_strcut

(PHP 4 >= 4.0.6, PHP 5)

mb_strcut — Get part of string

Descrição

string mb_strcut ( string $str , int $start [, int $length [, string $encoding ]] )

mb_strcut() performs equivalent operation as mb_substr() with different method. If start position is multi-byte character's second byte or larger, it starts from first byte of multi-byte character.

It subtracts string from str that is shorter than length AND character that is not part of multi-byte string or not being middle of shift sequence.

Parâmetros

str

The string being cut.

start

The position that begins the cut.

length

The string being decoded.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

mb_strcut() returns the portion of str specified by the start and length parameters.

Veja Também

  • mb_substr() - Get part of string
  • mb_internal_encoding() - Set/Get internal character encoding

mb_split
mb_strimwidth
Multibyte String Funções


Get truncated string with specified width

mb_strcut
mb_stripos
Multibyte String Funções
PHP Manual

mb_strimwidth

(PHP 4 >= 4.0.6, PHP 5)

mb_strimwidth — Get truncated string with specified width

Descrição

string mb_strimwidth ( string $str , int $start , int $width [, string $trimmarker [, string $encoding ]] )

Truncates string str to specified width.

Parâmetros

str

The string being decoded.

start

The start position offset. Number of characters from the beginning of string. (First character is 0)

width

The width of the desired trim.

trimmarker

A string that is added to the end of string when string is truncated.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The truncated string. If trimmarker is set, trimmarker is appended to the return value.

Exemplos

Exemplo #1 mb_strimwidth() example

<?php
echo mb_strimwidth("Hello World", 0, 10, "...");
// outputs Hello W...
?>

Veja Também

  • mb_strwidth() - Return width of string
  • mb_internal_encoding() - Set/Get internal character encoding

mb_strcut
mb_stripos
Multibyte String Funções


Finds position of first occurrence of a string within another, case insensitive

mb_strimwidth
mb_stristr
Multibyte String Funções
PHP Manual

mb_stripos

(PHP 5 >= 5.2.0)

mb_stripos — Finds position of first occurrence of a string within another, case insensitive

Descrição

int mb_stripos ( string $haystack , string $needle [, int $offset [, string $encoding ]] )

mb_stripos() returns the numeric position of the first occurrence of needle in the haystack string. Unlike mb_strpos(), mb_stripos() is case-insensitive. If needle is not found, it returns FALSE.

Parâmetros

haystack

The string from which to get the position of the first occurrence of needle

needle

The string to find in haystack

offset

The position in haystack to start searching

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Return the numeric position of the first occurrence of needle in the haystack string, or FALSE if needle is not found.

Veja Também

  • stripos() - Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas
  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • mb_strpos() - Find position of first occurrence of string in a string

mb_strimwidth
mb_stristr
Multibyte String Funções


Finds first occurrence of a string within another, case insensitive

mb_stripos
mb_strlen
Multibyte String Funções
PHP Manual

mb_stristr

(PHP 5 >= 5.2.0)

mb_stristr — Finds first occurrence of a string within another, case insensitive

Descrição

string mb_stristr ( string $haystack , string $needle [, bool $part = false [, string $encoding ]] )

mb_stristr() finds the first occurrence of needle in haystack and returns the portion of haystack. Unlike mb_strstr(), mb_stristr() is case-insensitive. If needle is not found, it returns FALSE.

Parâmetros

haystack

The string from which to get the first occurrence of needle

needle

The string to find in haystack

part

Determines which portion of haystack this function returns. If set to TRUE, it returns all of haystack from the beginning to the first occurrence of needle. If set to FALSE, it returns all of haystack from the first occurrence of needle to the end,

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Returns the portion of haystack, or FALSE if needle is not found.

Veja Também

  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strstr() - Encontra a primeira ocorrencia de uma string
  • mb_strstr() - Finds first occurrence of a string within another

mb_stripos
mb_strlen
Multibyte String Funções


Get string length

mb_stristr
mb_strpos
Multibyte String Funções
PHP Manual

mb_strlen

(PHP 4 >= 4.0.6, PHP 5)

mb_strlen — Get string length

Descrição

int mb_strlen ( string $str [, string $encoding ] )

Gets the length of a string.

Parâmetros

str

The string being checked for length.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

Returns the number of characters in string str having character encoding encoding. A multi-byte character is counted as 1.

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • strlen() - Retorna o tamanho de uma string

mb_stristr
mb_strpos
Multibyte String Funções


Find position of first occurrence of string in a string

mb_strlen
mb_strrchr
Multibyte String Funções
PHP Manual

mb_strpos

(PHP 4 >= 4.0.6, PHP 5)

mb_strpos — Find position of first occurrence of string in a string

Descrição

int mb_strpos ( string $haystack , string $needle [, int $offset = 0 [, string $encoding ]] )

Finds position of the first occurrence of a string in a string.

Performs a multi-byte safe strpos() operation based on number of characters. The first character's position is 0, the second character position is 1, and so on.

Parâmetros

haystack

The string being checked.

needle

The string to find in haystack. In contrast with strpos(), numeric values are not applied as the ordinal value of a character.

offset

The search offset. If it is not specified, 0 is used.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

Returns the numeric position of the first occurrence of needle in the haystack string. If needle is not found, it returns FALSE.

Veja Também

  • mb_internal_encoding() - Set/Get internal character encoding
  • strpos() - Encontra a posição da primeira ocorrência de uma string

mb_strlen
mb_strrchr
Multibyte String Funções


Finds the last occurrence of a character in a string within another

mb_strpos
mb_strrichr
Multibyte String Funções
PHP Manual

mb_strrchr

(PHP 5 >= 5.2.0)

mb_strrchr — Finds the last occurrence of a character in a string within another

Descrição

string mb_strrchr ( string $haystack , string $needle [, bool $part = false [, string $encoding ]] )

mb_strrchr() finds the last occurrence of needle in haystack and returns the portion of haystack. If needle is not found, it returns FALSE.

Parâmetros

haystack

The string from which to get the last occurrence of needle

needle

The string to find in haystack

part

Determines which portion of haystack this function returns. If set to TRUE, it returns all of haystack from the beginning to the last occurrence of needle. If set to FALSE, it returns all of haystack from the last occurrence of needle to the end,

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Returns the portion of haystack. or FALSE if needle is not found.

Veja Também

  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • mb_strstr() - Finds first occurrence of a string within another
  • mb_strrichr() - Finds the last occurrence of a character in a string within another, case insensitive

mb_strpos
mb_strrichr
Multibyte String Funções


Finds the last occurrence of a character in a string within another, case insensitive

mb_strrchr
mb_strripos
Multibyte String Funções
PHP Manual

mb_strrichr

(PHP 5 >= 5.2.0)

mb_strrichr — Finds the last occurrence of a character in a string within another, case insensitive

Descrição

string mb_strrichr ( string $haystack , string $needle [, bool $part = false [, string $encoding ]] )

mb_strrichr() finds the last occurrence of needle in haystack and returns the portion of haystack. Unlike mb_strrchr(), mb_strrichr() is case-insensitive. If needle is not found, it returns FALSE.

Parâmetros

haystack

The string from which to get the last occurrence of needle

needle

The string to find in haystack

part

Determines which portion of haystack this function returns. If set to TRUE, it returns all of haystack from the beginning to the last occurrence of needle. If set to FALSE, it returns all of haystack from the last occurrence of needle to the end,

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Returns the portion of haystack. or FALSE if needle is not found.

Veja Também

  • mb_stristr() - Finds first occurrence of a string within another, case insensitive
  • mb_strrchr() - Finds the last occurrence of a character in a string within another

mb_strrchr
mb_strripos
Multibyte String Funções


Finds position of last occurrence of a string within another, case insensitive

mb_strrichr
mb_strrpos
Multibyte String Funções
PHP Manual

mb_strripos

(PHP 5 >= 5.2.0)

mb_strripos — Finds position of last occurrence of a string within another, case insensitive

Descrição

int mb_strripos ( string $haystack , string $needle [, int $offset = 0 [, string $encoding ]] )

mb_strripos() performs multi-byte safe strripos() operation based on number of characters. needle position is counted from the beginning of haystack. First character's position is 0. Second character position is 1. Unlike mb_strrpos(), mb_strripos() is case-insensitive.

Parâmetros

haystack

The string from which to get the position of the last occurrence of needle

needle

The string to find in haystack

offset

The position in haystack to start searching

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Return the numeric position of the last occurrence of needle in the haystack string, or FALSE if needle is not found.

Veja Também

  • strripos() - Encontra a posição da última ocorrência de uma string case-insensitive em uma string
  • strrpos() - Encontra a posição da última ocorrência de um caractere em uma string
  • mb_strrpos() - Find position of last occurrence of a string in a string

mb_strrichr
mb_strrpos
Multibyte String Funções


Find position of last occurrence of a string in a string

mb_strripos
mb_strstr
Multibyte String Funções
PHP Manual

mb_strrpos

(PHP 4 >= 4.0.6, PHP 5)

mb_strrpos — Find position of last occurrence of a string in a string

Descrição

int mb_strrpos ( string $haystack , string $needle [, int $offset = 0 [, string $encoding ]] )

Performs a multibyte safe strrpos() operation based on the number of characters. needle position is counted from the beginning of haystack. First character's position is 0. Second character position is 1.

Parâmetros

haystack

The string being checked, for the last occurrence of needle

needle

The string to find in haystack.

offset
May be specified to begin searching an arbitrary number of characters into the string. Negative values will stop searching at an arbitrary point prior to the end of the string.
encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

Returns the numeric position of the last occurrence of needle in the haystack string. If needle is not found, it returns FALSE.

Histórico

Versão | Descrição
5.2.0 | Added the optional parameter offset.

Notas

Nota: The encoding parameter was moved from the third position to the fourth in PHP 5.2.0. For backward compatibility, encoding can be specified as the third parameter, but doing so is deprecated and will be removed in the future.

Nota:

A codificação interna ou a codificação de caractere especificado por mb_regex_encoding() será usado como a codificação de caractere para esta função.

Veja Também

  • mb_strpos() - Find position of first occurrence of string in a string
  • mb_internal_encoding() - Set/Get internal character encoding
  • strrpos() - Encontra a posição da última ocorrência de um caractere em uma string

mb_strripos
mb_strstr
Multibyte String Funções


Finds first occurrence of a string within another

mb_strrpos
mb_strtolower
Multibyte String Funções
PHP Manual

mb_strstr

(PHP 5 >= 5.2.0)

mb_strstr — Finds first occurrence of a string within another

Descrição

string mb_strstr ( string $haystack , string $needle [, bool $part = false [, string $encoding ]] )

mb_strstr() finds the first occurrence of needle in haystack and returns the portion of haystack. If needle is not found, it returns FALSE.

Parâmetros

haystack

The string from which to get the first occurrence of needle

needle

The string to find in haystack

part

Determines which portion of haystack this function returns. If set to TRUE, it returns all of haystack from the beginning to the first occurrence of needle. If set to FALSE, it returns all of haystack from the first occurrence of needle to the end,

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Valor Retornado

Returns the portion of haystack, or FALSE if needle is not found.

Veja Também

  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strstr() - Encontra a primeira ocorrencia de uma string
  • mb_stristr() - Finds first occurrence of a string within another, case insensitive

mb_strrpos
mb_strtolower
Multibyte String Funções


Make a string lowercase

mb_strstr
mb_strtoupper
Multibyte String Funções
PHP Manual

mb_strtolower

(PHP 4 >= 4.3.0, PHP 5)

mb_strtolower — Make a string lowercase

Descrição

string mb_strtolower ( string $str [, string $encoding = mb_internal_encoding() ] )

Returns str with all alphabetic characters converted to lowercase.

Parâmetros

str

The string being lowercased.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

str with all alphabetic characters converted to lowercase.

Unicode

For more information about the Unicode properties, please see » http://www.unicode.org/unicode/reports/tr21/.

By contrast to strtolower(), 'alphabetic' is determined by the Unicode character properties. Thus the behaviour of this function is not affected by locale settings and it can convert any characters that have 'alphabetic' property, such as A-umlaut (Ä).

Exemplos

Exemplo #1 mb_strtolower() example

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = mb_strtolower($str);
echo $str; // Prints mary had a little lamb and she loved it so
?>

Exemplo #2 mb_strtolower() example with non-Latin UTF-8 text

<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_strtolower($str, 'UTF-8');
echo $str; // Prints τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός
?>

Veja Também

  • mb_strtoupper() - Make a string uppercase
  • mb_convert_case() - Perform case folding on a string
  • strtolower() - Converte uma string para minúsculas

mb_strstr
mb_strtoupper
Multibyte String Funções


Make a string uppercase

mb_strtolower
mb_strwidth
Multibyte String Funções
PHP Manual

mb_strtoupper

(PHP 4 >= 4.3.0, PHP 5)

mb_strtoupper — Make a string uppercase

Descrição

string mb_strtoupper ( string $str [, string $encoding = mb_internal_encoding() ] )

Returns str with all alphabetic characters converted to uppercase.

Parâmetros

str

The string being uppercased.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

str with all alphabetic characters converted to uppercase.

Unicode

For more information about the Unicode properties, please see » http://www.unicode.org/unicode/reports/tr21/.

By contrast to strtoupper(), 'alphabetic' is determined by the Unicode character properties. Thus the behaviour of this function is not affected by locale settings and it can convert any characters that have 'alphabetic' property, such as a-umlaut (ä).

Exemplos

Exemplo #1 mb_strtoupper() example

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = mb_strtoupper($str);
echo $str; // Prints MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
?>

Exemplo #2 mb_strtoupper() example with non-Latin UTF-8 text

<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_strtoupper($str, 'UTF-8');
echo $str; // Prints ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ
?>

Veja Também

  • mb_strtolower() - Make a string lowercase
  • mb_convert_case() - Perform case folding on a string
  • strtoupper() - Converte uma string para maiúsculas

mb_strtolower
mb_strwidth
Multibyte String Funções


Return width of string

mb_strtoupper
mb_substitute_character
Multibyte String Funções
PHP Manual

mb_strwidth

(PHP 4 >= 4.0.6, PHP 5)

mb_strwidth — Return width of string

Descrição

int mb_strwidth ( string $str [, string $encoding ] )

Returns the width of string str.

Multi-byte characters are usually twice the width of single byte characters.

Characters width
Chars | Width
U+0000 - U+0019 | 0
U+0020 - U+1FFF | 1
U+2000 - U+FF60 | 2
U+FF61 - U+FF9F | 1
U+FFA0 - | 2

Parâmetros

str

The string being decoded.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The width of string str.

Veja Também

  • mb_strimwidth() - Get truncated string with specified width
  • mb_internal_encoding() - Set/Get internal character encoding

mb_strtoupper
mb_substitute_character
Multibyte String Funções


Set/Get substitution character

mb_strwidth
mb_substr_count
Multibyte String Funções
PHP Manual

mb_substitute_character

(PHP 4 >= 4.0.6, PHP 5)

mb_substitute_character — Set/Get substitution character

Descrição

mixed mb_substitute_character ([ mixed $substrchar ] )

Specifies a substitution character when input character encoding is invalid or character code does not exist in output character encoding. Invalid characters may be substituted NULL (no output), string or integer value (Unicode character code value).

This setting affects mb_convert_encoding(),
mb_convert_variables(),
mb_output_handler(),
and mb_send_mail().

Parâmetros

substrchar

Specify the Unicode value as an integer, or as one of the following strings:

  • "none" : no output
  • "long" : Output character code value (Example: U+3000, JIS+7E7E)
  • "entity" : Output character entity (Example: Ȁ)

Valor Retornado

If substchar is set, it returns TRUE for success, otherwise returns FALSE. If substchar is not set, it returns the Unicode value, or "none" or "long".

Exemplos

Exemplo #1 mb_substitute_character() example

<?php
/* Set with Unicode U+3013 (GETA MARK) */
mb_substitute_character(0x3013);

/* Set hex format */
mb_substitute_character("long");

/* Display current setting */
echo mb_substitute_character();
?>

mb_strwidth
mb_substr_count
Multibyte String Funções


Count the number of substring occurrences

mb_substitute_character
mb_substr
Multibyte String Funções
PHP Manual

mb_substr_count

(PHP 4 >= 4.3.0, PHP 5)

mb_substr_count — Count the number of substring occurrences

Descrição

int mb_substr_count ( string $haystack , string $needle [, string $encoding ] )

Counts the number of times the needle substring occurs in the haystack string.

Parâmetros

haystack

The string being checked.

needle

The string being found.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

The number of times the needle substring occurs in the haystack string.

Exemplos

Exemplo #1 mb_substr_count() example

<?php
echo mb_substr_count("This is a test", "is"); // prints out 2
?>

Veja Também

  • mb_strpos() - Find position of first occurrence of string in a string
  • mb_substr() - Get part of string
  • substr_count() - Conta o número de ocorrências de uma substring

mb_substitute_character
mb_substr
Multibyte String Funções


Get part of string

mb_substr_count
Pspell
Multibyte String Funções
PHP Manual

mb_substr

(PHP 4 >= 4.0.6, PHP 5)

mb_substr — Get part of string

Descrição

string mb_substr ( string $str , int $start [, int $length [, string $encoding ]] )

Performs a multi-byte safe substr() operation based on number of characters. Position is counted from the beginning of str. First character's position is 0. Second character position is 1, and so on.

Parâmetros

str

The string being checked.

start

The first position used in str.

length

The maximum length of the returned string.

encoding

O parâmetro encoding é a codificação de caractere. Se ele é omitido, o valor da codificação de caractere interna é usado.

Valor Retornado

mb_substr() returns the portion of str specified by the start and length parameters.

Veja Também

  • mb_strcut() - Get part of string
  • mb_internal_encoding() - Set/Get internal character encoding

mb_substr_count
Pspell
Multibyte String Funções


Pspell

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Pspell Funções
    • pspell_add_to_personal — Add the word to a personal wordlist
    • pspell_add_to_session — Add the word to the wordlist in the current session
    • pspell_check — Check a word
    • pspell_clear_session — Clear the current session
    • pspell_config_create — Create a config used to open a dictionary
    • pspell_config_data_dir — location of language data files
    • pspell_config_dict_dir — Location of the main word list
    • pspell_config_ignore — Ignore words less than N characters long
    • pspell_config_mode — Change the mode number of suggestions returned
    • pspell_config_personal — Set a file that contains personal wordlist
    • pspell_config_repl — Set a file that contains replacement pairs
    • pspell_config_runtogether — Consider run-together words as valid compounds
    • pspell_config_save_repl — Determine whether to save a replacement pairs list along with the wordlist
    • pspell_new_config — Load a new dictionary with settings based on a given config
    • pspell_new_personal — Load a new dictionary with personal wordlist
    • pspell_new — Load a new dictionary
    • pspell_save_wordlist — Save the personal wordlist to a file
    • pspell_store_replacement — Store a replacement pair for a word
    • pspell_suggest — Suggest spellings of a word
mb_substr
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

These functions allow you to check the spelling of a word and offer suggestions.

Pspell
Instalação/Configuração
Pspell


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Pspell


Dependências

To compile PHP with pspell support, you need the aspell library, available from » http://aspell.net/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

If you have the libraries needed add the --with-pspell[=dir] option when compiling PHP.

Nota: Note to Win32 Users

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: aspell-15.dll from the bin folder of the aspell installation.

Win32 support is available only in PHP 4.3.3 and later versions. Also, at least aspell version 0.50 is required.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PSPELL_FAST (integer)
PSPELL_NORMAL (integer)
PSPELL_BAD_SPELLERS (integer)
PSPELL_RUN_TOGETHER (integer)
Tipos Resource
Pspell Funções
Pspell


Pspell Funções

Índice

  • pspell_add_to_personal — Add the word to a personal wordlist
  • pspell_add_to_session — Add the word to the wordlist in the current session
  • pspell_check — Check a word
  • pspell_clear_session — Clear the current session
  • pspell_config_create — Create a config used to open a dictionary
  • pspell_config_data_dir — location of language data files
  • pspell_config_dict_dir — Location of the main word list
  • pspell_config_ignore — Ignore words less than N characters long
  • pspell_config_mode — Change the mode number of suggestions returned
  • pspell_config_personal — Set a file that contains personal wordlist
  • pspell_config_repl — Set a file that contains replacement pairs
  • pspell_config_runtogether — Consider run-together words as valid compounds
  • pspell_config_save_repl — Determine whether to save a replacement pairs list along with the wordlist
  • pspell_new_config — Load a new dictionary with settings based on a given config
  • pspell_new_personal — Load a new dictionary with personal wordlist
  • pspell_new — Load a new dictionary
  • pspell_save_wordlist — Save the personal wordlist to a file
  • pspell_store_replacement — Store a replacement pair for a word
  • pspell_suggest — Suggest spellings of a word
Constantes pré-definidas
pspell_add_to_personal
Pspell


Add the word to a personal wordlist

Pspell Funções
pspell_add_to_session
Pspell Funções
PHP Manual

pspell_add_to_personal

(PHP 4 >= 4.0.2, PHP 5)

pspell_add_to_personal — Add the word to a personal wordlist

Descrição

bool pspell_add_to_personal ( int $dictionary_link , string $word )

pspell_add_to_personal() adds a word to the personal wordlist. If you used pspell_new_config() with pspell_config_personal() to open the dictionary, you can save the wordlist later with pspell_save_wordlist().

Parâmetros

dictionary_link

word

The added word.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_add_to_personal()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
$pspell_link = pspell_new_config($pspell_config);

pspell_add_to_personal($pspell_link, "Vlad");
pspell_save_wordlist($pspell_link);
?>

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

Pspell Funções
pspell_add_to_session
Pspell Funções


Add the word to the wordlist in the current session

pspell_add_to_personal
pspell_check
Pspell Funções
PHP Manual

pspell_add_to_session

(PHP 4 >= 4.0.2, PHP 5)

pspell_add_to_session — Add the word to the wordlist in the current session

Descrição

bool pspell_add_to_session ( int $dictionary_link , string $word )

pspell_add_to_session() adds a word to the wordlist associated with the current session. It is very similar to pspell_add_to_personal()

Parâmetros

dictionary_link

word

The added word.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

pspell_add_to_personal
pspell_check
Pspell Funções


Check a word

pspell_add_to_session
pspell_clear_session
Pspell Funções
PHP Manual

pspell_check

(PHP 4 >= 4.0.2, PHP 5)

pspell_check — Check a word

Descrição

bool pspell_check ( int $dictionary_link , string $word )

pspell_check() checks the spelling of a word.

Parâmetros

dictionary_link

word

The tested word.

Valor Retornado

Returns TRUE if the spelling is correct, FALSE if not.

Exemplos

Exemplo #1 pspell_check() Example

<?php
$pspell_link = pspell_new("en");

if (pspell_check($pspell_link, "testt")) {
    echo "This is a valid spelling";
} else {
    echo "Sorry, wrong spelling";
}
?>

pspell_add_to_session
pspell_clear_session
Pspell Funções


Clear the current session

pspell_check
pspell_config_create
Pspell Funções
PHP Manual

pspell_clear_session

(PHP 4 >= 4.0.2, PHP 5)

pspell_clear_session — Clear the current session

Descrição

bool pspell_clear_session ( int $dictionary_link )

pspell_clear_session() clears the current session. The current wordlist becomes blank, and, for example, if you try to save it with pspell_save_wordlist(), nothing happens.

Parâmetros

dictionary_link

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_add_to_personal() Example

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
$pspell_link = pspell_new_config($pspell_config);

pspell_add_to_personal($pspell_link, "Vlad");
pspell_clear_session($pspell_link);
pspell_save_wordlist($pspell_link);    //"Vlad" will not be saved
?>

pspell_check
pspell_config_create
Pspell Funções


Create a config used to open a dictionary

pspell_clear_session
pspell_config_data_dir
Pspell Funções
PHP Manual

pspell_config_create

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_create — Create a config used to open a dictionary

Descrição

int pspell_config_create ( string $language [, string $spelling [, string $jargon [, string $encoding ]]] )

Create a config used to open a dictionary.

pspell_config_create() has a very similar syntax to pspell_new(). In fact, using pspell_config_create() immediately followed by pspell_new_config() will produce the exact same result. However, after creating a new config, you can also use pspell_config_*() functions before calling pspell_new_config() to take advantage of some advanced functionality.

For more information and examples, check out inline manual pspell website:» http://aspell.net/.

Parâmetros

language

The language parameter is the language code which consists of the two letter ISO 639 language code and an optional two letter ISO 3166 country code after a dash or underscore.

spelling

The spelling parameter is the requested spelling for languages with more than one spelling such as English. Known values are 'american', 'british', and 'canadian'.

jargon

The jargon parameter contains extra information to distinguish two different words lists that have the same language and spelling parameters.

encoding

The encoding parameter is the encoding that words are expected to be in. Valid values are 'utf-8', 'iso8859-*', 'koi8-r', 'viscii', 'cp1252', 'machine unsigned 16', 'machine unsigned 32'. This parameter is largely untested, so be careful when using.

Valor Retornado

Retuns a pspell config identifier, or FALSE on error.

Exemplos

Exemplo #1 pspell_config_create()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
pspell_config_repl($pspell_config, "/var/dictionaries/custom.repl");
$pspell_link = pspell_new_personal($pspell_config, "en");
?>

pspell_clear_session
pspell_config_data_dir
Pspell Funções


location of language data files

pspell_config_create
pspell_config_dict_dir
Pspell Funções
PHP Manual

pspell_config_data_dir

(PHP 5)

pspell_config_data_dir — location of language data files

Descrição

bool pspell_config_data_dir ( int $conf , string $directory )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

pspell_config_create
pspell_config_dict_dir
Pspell Funções


Location of the main word list

pspell_config_data_dir
pspell_config_ignore
Pspell Funções
PHP Manual

pspell_config_dict_dir

(PHP 5)

pspell_config_dict_dir — Location of the main word list

Descrição

bool pspell_config_dict_dir ( int $conf , string $directory )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

pspell_config_data_dir
pspell_config_ignore
Pspell Funções


Ignore words less than N characters long

pspell_config_dict_dir
pspell_config_mode
Pspell Funções
PHP Manual

pspell_config_ignore

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_ignore — Ignore words less than N characters long

Descrição

bool pspell_config_ignore ( int $dictionary_link , int $n )

pspell_config_ignore() should be used on a config before calling pspell_new_config(). This function allows short words to be skipped by the spell checker.

Parâmetros

dictionary_link

n

Words less than n characters will be skipped.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_config_ignore()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_ignore($pspell_config, 5);
$pspell_link = pspell_new_config($pspell_config);
pspell_check($pspell_link, "abcd");    //will not result in an error
?>

pspell_config_dict_dir
pspell_config_mode
Pspell Funções


Change the mode number of suggestions returned

pspell_config_ignore
pspell_config_personal
Pspell Funções
PHP Manual

pspell_config_mode

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_mode — Change the mode number of suggestions returned

Descrição

bool pspell_config_mode ( int $dictionary_link , int $mode )

pspell_config_mode() should be used on a config before calling pspell_new_config(). This function determines how many suggestions will be returned by pspell_suggest().

Parâmetros

dictionary_link

mode

The mode parameter is the mode in which spellchecker will work. There are several modes available:

  • PSPELL_FAST - Fast mode (least number of suggestions)
  • PSPELL_NORMAL - Normal mode (more suggestions)
  • PSPELL_BAD_SPELLERS - Slow mode (a lot of suggestions)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_config_mode() Example

<?php
$pspell_config = pspell_config_create("en");
pspell_config_mode($pspell_config, PSPELL_FAST);
$pspell_link = pspell_new_config($pspell_config);
pspell_check($pspell_link, "thecat");
?>

pspell_config_ignore
pspell_config_personal
Pspell Funções


Set a file that contains personal wordlist

pspell_config_mode
pspell_config_repl
Pspell Funções
PHP Manual

pspell_config_personal

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_personal — Set a file that contains personal wordlist

Descrição

bool pspell_config_personal ( int $dictionary_link , string $file )

Set a file that contains personal wordlist. The personal wordlist will be loaded and used in addition to the standard one after you call pspell_new_config(). The file is also the file where pspell_save_wordlist() will save personal wordlist to.

pspell_config_personal() should be used on a config before calling pspell_new_config().

Parâmetros

dictionary_link

file

The personal wordlist. If the file does not exist, it will be created. The file should be writable by whoever PHP runs as (e.g. nobody).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_config_personal()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
$pspell_link = pspell_new_config($pspell_config);
pspell_check($pspell_link, "thecat");
?>

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

pspell_config_mode
pspell_config_repl
Pspell Funções


Set a file that contains replacement pairs

pspell_config_personal
pspell_config_runtogether
Pspell Funções
PHP Manual

pspell_config_repl

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_repl — Set a file that contains replacement pairs

Descrição

bool pspell_config_repl ( int $dictionary_link , string $file )

Set a file that contains replacement pairs.

The replacement pairs improve the quality of the spellchecker. When a word is misspelled, and a proper suggestion was not found in the list, pspell_store_replacement() can be used to store a replacement pair and then pspell_save_wordlist() to save the wordlist along with the replacement pairs.

pspell_config_repl() should be used on a config before calling pspell_new_config().

Parâmetros

dictionary_link

file

The file should be writable by whoever PHP runs as (e.g. nobody).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_config_repl()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
pspell_config_repl($pspell_config, "/var/dictionaries/custom.repl");
$pspell_link = pspell_new_config($pspell_config);
pspell_check($pspell_link, "thecat");
?>

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

pspell_config_personal
pspell_config_runtogether
Pspell Funções


Consider run-together words as valid compounds

pspell_config_repl
pspell_config_save_repl
Pspell Funções
PHP Manual

pspell_config_runtogether

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_runtogether — Consider run-together words as valid compounds

Descrição

bool pspell_config_runtogether ( int $dictionary_link , bool $flag )

This function determines whether run-together words will be treated as legal compounds. That is, "thecat" will be a legal compound, although there should be a space between the two words. Changing this setting only affects the results returned by pspell_check(); pspell_suggest() will still return suggestions.

pspell_config_runtogether() should be used on a config before calling pspell_new_config().

Parâmetros

dictionary_link

flag

TRUE if run-together words should be treated as legal compounds, FALSE otherwise.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_config_runtogether()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_runtogether($pspell_config, true);
$pspell_link = pspell_new_config($pspell_config);
pspell_check($pspell_link, "thecat");
?>

pspell_config_repl
pspell_config_save_repl
Pspell Funções


Determine whether to save a replacement pairs list along with the wordlist

pspell_config_runtogether
pspell_new_config
Pspell Funções
PHP Manual

pspell_config_save_repl

(PHP 4 >= 4.0.2, PHP 5)

pspell_config_save_repl — Determine whether to save a replacement pairs list along with the wordlist

Descrição

bool pspell_config_save_repl ( int $dictionary_link , bool $flag )

pspell_config_save_repl() determines whether pspell_save_wordlist() will save the replacement pairs along with the wordlist. Usually there is no need to use this function because if pspell_config_repl() is used, the replacement pairs will be saved by pspell_save_wordlist() anyway, and if it is not, the replacement pairs will not be saved.

pspell_config_save_repl() should be used on a config before calling pspell_new_config().

Parâmetros

dictionary_link

flag

TRUE if replacement pairs should be saved, FALSE otherwise.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

pspell_config_runtogether
pspell_new_config
Pspell Funções


Load a new dictionary with settings based on a given config

pspell_config_save_repl
pspell_new_personal
Pspell Funções
PHP Manual

pspell_new_config

(PHP 4 >= 4.0.2, PHP 5)

pspell_new_config — Load a new dictionary with settings based on a given config

Descrição

int pspell_new_config ( int $config )

pspell_new_config() opens up a new dictionary with settings specified in a config, created with pspell_config_create() and modified with pspell_config_*() functions. This method provides you with the most flexibility and has all the functionality provided by pspell_new() and pspell_new_personal().

Parâmetros

config

The config parameter is the one returned by pspell_config_create() when the config was created.

Valor Retornado

Returns a dictionary link identifier on success.

Exemplos

Exemplo #1 pspell_new_config()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
pspell_config_repl($pspell_config, "/var/dictionaries/custom.repl");
$pspell_link = pspell_new_config($pspell_config);
?>

pspell_config_save_repl
pspell_new_personal
Pspell Funções


Load a new dictionary with personal wordlist

pspell_new_config
pspell_new
Pspell Funções
PHP Manual

pspell_new_personal

(PHP 4 >= 4.0.2, PHP 5)

pspell_new_personal — Load a new dictionary with personal wordlist

Descrição

int pspell_new_personal ( string $personal , string $language [, string $spelling [, string $jargon [, string $encoding [, int $mode = 0 ]]]] )

pspell_new_personal() opens up a new dictionary with a personal wordlist. The wordlist can be modified and saved with pspell_save_wordlist(), if desired. However, the replacement pairs are not saved. In order to save replacement pairs, you should create a config using pspell_config_create(), set the personal wordlist file with pspell_config_personal(), set the file for replacement pairs with pspell_config_repl(), and open a new dictionary with pspell_new_config().

For more information and examples, check out inline manual pspell website:» http://aspell.net/.

Parâmetros

personal

The file where words added to the personal list will be stored. It should be an absolute filename beginning with '/' because otherwise it will be relative to $HOME, which is "/root" for most systems, and is probably not what you want.

language

The language code which consists of the two letter ISO 639 language code and an optional two letter ISO 3166 country code after a dash or underscore.

spelling

The requested spelling for languages with more than one spelling such as English. Known values are 'american', 'british', and 'canadian'.

jargon

Extra information to distinguish two different words lists that have the same language and spelling parameters.

encoding

The encoding that words are expected to be in. Valid values are utf-8, iso8859-*, koi8-r, viscii, cp1252, machine unsigned 16, machine unsigned 32.

mode

The mode in which spellchecker will work. There are several modes available:

  • PSPELL_FAST - Fast mode (least number of suggestions)
  • PSPELL_NORMAL - Normal mode (more suggestions)
  • PSPELL_BAD_SPELLERS - Slow mode (a lot of suggestions)
  • PSPELL_RUN_TOGETHER - Consider run-together words as legal compounds. That is, "thecat" will be a legal compound, although there should be a space between the two words. Changing this setting only affects the results returned by pspell_check(); pspell_suggest() will still return suggestions.
Mode is a bitmask constructed from different constants listed above. However, PSPELL_FAST, PSPELL_NORMAL and PSPELL_BAD_SPELLERS are mutually exclusive, so you should select only one of them.

Valor Retornado

Returns the dictionary link identifier for use in other pspell functions.

Exemplos

Exemplo #1 pspell_new_personal()

<?php
$pspell_link = pspell_new_personal ("/var/dictionaries/custom.pws",
        "en", "", "", "", PSPELL_FAST|PSPELL_RUN_TOGETHER);
?>

pspell_new_config
pspell_new
Pspell Funções


Load a new dictionary

pspell_new_personal
pspell_save_wordlist
Pspell Funções
PHP Manual

pspell_new

(PHP 4 >= 4.0.2, PHP 5)

pspell_new — Load a new dictionary

Descrição

int pspell_new ( string $language [, string $spelling [, string $jargon [, string $encoding [, int $mode = 0 ]]]] )

pspell_new() opens up a new dictionary and returns the dictionary link identifier for use in other pspell functions.

For more information and examples, check out inline manual pspell website:» http://aspell.net/.

Parâmetros

language

The language parameter is the language code which consists of the two letter ISO 639 language code and an optional two letter ISO 3166 country code after a dash or underscore.

spelling

The spelling parameter is the requested spelling for languages with more than one spelling such as English. Known values are 'american', 'british', and 'canadian'.

jargon

The jargon parameter contains extra information to distinguish two different words lists that have the same language and spelling parameters.

encoding

The encoding parameter is the encoding that words are expected to be in. Valid values are 'utf-8', 'iso8859-*', 'koi8-r', 'viscii', 'cp1252', 'machine unsigned 16', 'machine unsigned 32'. This parameter is largely untested, so be careful when using.

mode

The mode parameter is the mode in which spellchecker will work. There are several modes available:

  • PSPELL_FAST - Fast mode (least number of suggestions)
  • PSPELL_NORMAL - Normal mode (more suggestions)
  • PSPELL_BAD_SPELLERS - Slow mode (a lot of suggestions)
  • PSPELL_RUN_TOGETHER - Consider run-together words as legal compounds. That is, "thecat" will be a legal compound, although there should be a space between the two words. Changing this setting only affects the results returned by pspell_check(); pspell_suggest() will still return suggestions.
Mode is a bitmask constructed from different constants listed above. However, PSPELL_FAST, PSPELL_NORMAL and PSPELL_BAD_SPELLERS are mutually exclusive, so you should select only one of them.

Valor Retornado

Returns the dictionary link identifier on success or FALSE on failure.

Exemplos

Exemplo #1 pspell_new()

<?php
$pspell_link = pspell_new("en", "", "", "",
                           (PSPELL_FAST|PSPELL_RUN_TOGETHER));
?>

pspell_new_personal
pspell_save_wordlist
Pspell Funções


Save the personal wordlist to a file

pspell_new
pspell_store_replacement
Pspell Funções
PHP Manual

pspell_save_wordlist

(PHP 4 >= 4.0.2, PHP 5)

pspell_save_wordlist — Save the personal wordlist to a file

Descrição

bool pspell_save_wordlist ( int $dictionary_link )

pspell_save_wordlist() saves the personal wordlist from the current session. The location of files to be saved specified with pspell_config_personal() and (optionally) pspell_config_repl().

Parâmetros

dictionary_link

A dictionary link identifier opened with pspell_new_personal().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_add_to_personal()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/tmp/dicts/newdict");
$pspell_link = pspell_new_config($pspell_config);

pspell_add_to_personal($pspell_link, "Vlad");
pspell_save_wordlist($pspell_link);
?>

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

pspell_new
pspell_store_replacement
Pspell Funções


Store a replacement pair for a word

pspell_save_wordlist
pspell_suggest
Pspell Funções
PHP Manual

pspell_store_replacement

(PHP 4 >= 4.0.2, PHP 5)

pspell_store_replacement — Store a replacement pair for a word

Descrição

bool pspell_store_replacement ( int $dictionary_link , string $misspelled , string $correct )

pspell_store_replacement() stores a replacement pair for a word, so that replacement can be returned by pspell_suggest() later. In order to be able to take advantage of this function, you have to use pspell_new_personal() to open the dictionary. In order to permanently save the replacement pair, you have to use pspell_config_personal() and pspell_config_repl() to set the path where to save your custom wordlists, and then use pspell_save_wordlist() for the changes to be written to disk.

Parâmetros

dictionary_link

A dictionary link identifier, opened with pspell_new_personal()

misspelled

The misspelled word.

correct

The fixed spelling for the misspelled word.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pspell_store_replacement()

<?php
$pspell_config = pspell_config_create("en");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
pspell_config_repl($pspell_config, "/var/dictionaries/custom.repl");
$pspell_link = pspell_new_config($pspell_config);

pspell_store_replacement($pspell_link, $misspelled, $correct);
pspell_save_wordlist($pspell_link);
?>

Notas

Nota:

This function will not work unless you have pspell .11.2 and aspell .32.5 or later.

pspell_save_wordlist
pspell_suggest
Pspell Funções


Suggest spellings of a word

pspell_store_replacement
Recode
Pspell Funções
PHP Manual

pspell_suggest

(PHP 4 >= 4.0.2, PHP 5)

pspell_suggest — Suggest spellings of a word

Descrição

array pspell_suggest ( int $dictionary_link , string $word )

pspell_suggest() returns an array of possible spellings for the given word.

Parâmetros

dictionary_link

word

The tested word.

Valor Retornado

Returns an array of possible spellings.

Exemplos

Exemplo #1 pspell_suggest() example

<?php
$pspell_link = pspell_new("en");

if (!pspell_check($pspell_link, "testt")) {
    $suggestions = pspell_suggest($pspell_link, "testt");

    foreach ($suggestions as $suggestion) {
        echo "Possible spelling: $suggestion<br />";
    }
}
?>

pspell_store_replacement
Recode
Pspell Funções


GNU Recode

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Recode Funções
    • recode_file — Recode from file to file according to recode request
    • recode_string — Recode a string according to a recode request
    • recode — Sinônimo de recode_string
pspell_suggest
Introdução
Linguagem Humana e Suporte a Codificação de Caracteres


Introdução

This module contains an interface to the GNU Recode library. The GNU Recode library converts files between various coded character sets and surface encodings. When this cannot be achieved exactly, it may get rid of the offending characters or fall back on approximations. The library recognises or produces nearly 150 different character sets and is able to convert files between almost any pair. Most » RFC 1345 character sets are supported.

Nota: Esta extensão não está disponível na plataforma Windows.

Recode
Instalação/Configuração
Recode


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Recode


Dependências

You must have GNU Recode 3.5 or higher installed on your system. You can download the package from » http://directory.fsf.org/All_GNU_Packages/recode.html.

Aviso

The Recode library version 3.6 adds weird characters behind converted strings under certain circumstances. Thus it's safer to use Recode v3.5 or one of the available alternatives like the iconv or mbstring extension.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To be able to use the functions defined in this module you must compile your PHP interpreter using the --with-recode[=DIR] option.

Aviso

Crashes and startup problems of PHP may be encountered when loading the recode as extension after loading any extension of mysql or imap. Loading the recode before those extension has proved to fix the problem. This is due a technical problem that both the c-client library used by imap and recode have their own hash_lookup() function and both mysql and recode have their own hash_insert function.

Aviso

A extensão IMAP não pode ser utilizada em conjunto com as extensões recode, YAZ ou Cyrus. Isto ocorre pelo fato de elas compartilharem os mesmos símbolos internos.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Recode Funções
Recode


Recode Funções

Índice

  • recode_file — Recode from file to file according to recode request
  • recode_string — Recode a string according to a recode request
  • recode — Sinônimo de recode_string
Constantes pré-definidas
recode_file
Recode


Recode from file to file according to recode request

Recode Funções
recode_string
Recode Funções
PHP Manual

recode_file

(PHP 4, PHP 5)

recode_file — Recode from file to file according to recode request

Descrição

bool recode_file ( string $request , resource $input , resource $output )

Recode the file referenced by file handle input into the file referenced by file handle output according to the recode request.

Parâmetros

request

The desired recode request type

input

A local file handle resource for the input

output

A local file handle resource for the output

Valor Retornado

Returns FALSE, if unable to comply, TRUE otherwise.

Exemplos

Exemplo #1 Basic recode_file() example

<?php
$input = fopen('input.txt', 'r');
$output = fopen('output.txt', 'w');
recode_file("us..flat", $input, $output);
?>

Notas

This function does not currently process file handles referencing remote files (URLs). Both file handles must refer to local files.

Veja Também

  • fopen() - Abre um arquivo ou URL

Recode Funções
recode_string
Recode Funções


Recode a string according to a recode request

recode_file
recode
Recode Funções
PHP Manual

recode_string

(PHP 4, PHP 5)

recode_string — Recode a string according to a recode request

Descrição

string recode_string ( string $request , string $string )

Recode the string string according to the recode request request.

Parâmetros

request

The desired recode request type

string

The string to be recoded

Valor Retornado

Returns the recoded string or FALSE, if unable to perform the recode request.

Exemplos

Exemplo #1 Basic recode_string() example

<?php
echo recode_string("us..flat", "The following character has a diacritical mark: &aacute;");
?>

Notas

A simple recode request may be "lat1..iso646-de".

Veja Também

  • The GNU Recode documentation of your installation for detailed instructions about recode requests.

recode_file
recode
Recode Funções


Sinônimo de recode_string

recode_string
Processamento de Imagem e Geração
Recode Funções
PHP Manual

recode

(PHP 4, PHP 5)

recode — Sinônimo de recode_string()

Descrição

Esta função é um apelido para: recode_string().

recode_string
Processamento de Imagem e Geração
Recode Funções


Processamento de Imagem e Geração

  • Exif — Exchangeable image information
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Exif
  • GD — Processamento de Imagem (GD)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da GD
  • ImageMagick — Image Processing (ImageMagick)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • The Imagick class
    • The ImagickDraw class
    • The ImagickPixel class
    • The ImagickPixelIterator class
  • Gmagick
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Gmagick — The Gmagick class
    • GmagickDraw — The GmagickDraw class
    • GmagickPixel — The GmagickPixel class
  • Cairo
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Cairo Funções
    • Cairo — The Cairo class
    • CairoContext — The CairoContext class
    • CairoException — The CairoException class
    • CairoStatus — The CairoStatus class
    • CairoSurface — The CairoSurface class
    • CairoSvgSurface — Svg Surface Backend
    • CairoImageSurface — The CairoImageSurface class
    • CairoPdfSurface — The CairoPdfSurface class
    • CairoPsSurface — The CairoPsSurface class
    • CairoSurfaceType — The CairoSurfaceType class
    • CairoFontFace — The CairoFontFace class
    • CairoFontOptions — The CairoFontOptions class
    • CairoFontSlant — The CairoFontSlant class
    • CairoFontType — The CairoFontType class
    • CairoFontWeight — The CairoFontWeight class
    • CairoScaledFont — The CairoScaledFont class
    • CairoToyFontFace — The CairoToyFontFace class
    • CairoPatternType — The CairoPatternType class
    • CairoPattern — The CairoPattern class
    • CairoGradientPattern — The CairoGradientPattern class
    • CairoSolidPattern — The CairoSolidPattern class
    • CairoSurfacePattern — The CairoSurfacePattern class
    • CairoLinearGradient — The CairoLinearGradient class
    • CairoRadialGradient — The CairoRadialGradient class
    • CairoAntialias — The CairoAntialias class
    • CairoContent — The CairoContent class
    • CairoExtend — The CairoExtend class
    • CairoFormat — The CairoFormat class
    • CairoFillRule — The CairoFillRule class
    • CairoFilter — The CairoFilter class
    • CairoHintMetrics — The CairoHintMetrics class
    • CairoHintStyle — The CairoHintStyle class
    • CairoLineCap — The CairoLineCap class
    • CairoLineJoin — The CairoLineJoin class
    • CairoMatrix — The CairoMatrix class
    • CairoOperator — The CairoOperator class
    • CairoPath — The CairoPath class
    • CairoPsLevel — The CairoPsLevel class
    • CairoSubpixelOrder — The CairoSubpixelOrder class
    • CairoSvgVersion — The CairoSvgVersion class
recode
Exif
Referência das Funções


Exchangeable image information

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Exif
    • exif_imagetype — Verifica o tipo de uma imagem
    • exif_read_data — Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.
    • exif_tagname — Obtém o nome do cabeçalho para um índice
    • exif_thumbnail — Recupera a miniatura embutida de uma imagem TIFF ou JPEG
    • read_exif_data — Sinônimo de exif_read_data
Processamento de Imagem e Geração
Introdução
Processamento de Imagem e Geração


Introdução

Com a extensão exif você pode trabalhar com meta dados de imagem. Por exemplo, você pode usar funçõe exif para ler meta dados de figuras obtendo a câmera digital com informações armazenadas no cabeçalho de imagens JPEG e TIFF.

Exif
Instalação/Configuração
Exif


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Exif


Dependências

Seu PHP precisa ser compilado com --enable-exif. PHP não requer biblioteca adicional para o módulo exif. Usuários Windows precisam também ter a extensão mbstring habilitada.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para habilitar suporte a exif configure o PHP com --enable-exif

Usuários Windows precisam habilitar as DLLs php_mbstring.dll e php_exif.dll no php.ini. A DLL php_mbstring.dll precisa ser carregada antes da php_exif.dll então ajuste seu php.ini corretamente.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Exif supports automatically conversion for Unicode and JIS character encodings of user comments when module mbstring is available. This is done by first decoding the comment using the specified characterset. The result is then encoded with another characterset which should match your HTTP output.

Exif configuration options
Name | Default | Changeable | Changelog
exif.encode_unicode | "ISO-8859-15" | PHP_INI_ALL | Available since PHP 4.3.0.
exif.decode_unicode_motorola | "UCS-2BE" | PHP_INI_ALL | Available since PHP 4.3.0.
exif.decode_unicode_intel | "UCS-2LE" | PHP_INI_ALL | Available since PHP 4.3.0.
exif.encode_jis | "" | PHP_INI_ALL | Available since PHP 4.3.0.
exif.decode_jis_motorola | "JIS" | PHP_INI_ALL | Available since PHP 4.3.0.
exif.decode_jis_intel | "JIS" | PHP_INI_ALL | Available since PHP 4.3.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

exif.encode_unicode string

exif.encode_unicode defines the characterset UNICODE user comments are handled. This defaults to ISO-8859-15 which should work for most non Asian countries. The setting can be empty or must be an encoding supported by mbstring. If it is empty the current internal encoding of mbstring is used.

exif.decode_unicode_motorola string

exif.decode_unicode_motorola defines the image internal characterset for Unicode encoded user comments if image is in motorola byte order (big-endian). This setting cannot be empty but you can specify a list of encodings supported by mbstring. The default is UCS-2BE.

exif.decode_unicode_intel string

exif.decode_unicode_intel defines the image internal characterset for Unicode encoded user comments if image is in intel byte order (little-endian). This setting cannot be empty but you can specify a list of encodings supported by mbstring. The default is UCS-2LE.

exif.encode_jis string

exif.encode_jis defines the characterset JIS user comments are handled. This defaults to an empty value which forces the functions to use the current internal encoding of mbstring.

exif.decode_jis_motorola string

exif.decode_jis_motorola defines the image internal characterset for JIS encoded user comments if image is in motorola byte order (big-endian). This setting cannot be empty but you can specify a list of encodings supported by mbstring. The default is JIS.

exif.decode_jis_intel string

exif.decode_jis_intel defines the image internal characterset for JIS encoded user comments if image is in intel byte order (little-endian). This setting cannot be empty but you can specify a list of encodings supported by mbstring. The default is JIS.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

EXIF_USE_MBSTRING (integer)

A exif_imagetype() lista várias contantes internas relacionadas.

Tipos Resource
Funções da Exif
Exif


Funções da Exif

Índice

  • exif_imagetype — Verifica o tipo de uma imagem
  • exif_read_data — Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.
  • exif_tagname — Obtém o nome do cabeçalho para um índice
  • exif_thumbnail — Recupera a miniatura embutida de uma imagem TIFF ou JPEG
  • read_exif_data — Sinônimo de exif_read_data
Constantes pré-definidas
exif_imagetype
Exif


Verifica o tipo de uma imagem

Funções da Exif
exif_read_data
Funções da Exif
PHP Manual

exif_imagetype

(PHP 4 >= 4.3.0, PHP 5)

exif_imagetype — Verifica o tipo de uma imagem

Descrição

int exif_imagetype ( string $filename )

exif_imagetype() lê os primeiros bytes de uma imagem e verifica sua assinatura.

exif_imagetype() pode ser usada para evitar chamadas para outra função exif que não tem suporte a tipos de arquivos ou um conjunção cin $_SERVER['HTTP_ACCEPT'] para verificar se pode ou não visualizar uma específica imagem no browser.

Parâmetros

filename
A imagem a ser verificada.

Valor Retornado

Quando uma correta assinatura é encontrada, o valor da constante apropriada será retornado caso contrário é retornado FALSE. O valor retornado é o mesmo valor que getimagesize() retorna no índice 2, mas exif_imagetype() é mais rápida.

Histórico

Versão | Descrição
4.3.2 | Suporte para JPC, JP2, JPX, JB2, XBM, e WBMP
4.3.0 | Suporte para SWC

Constantes pré-definidas

As seguintes constantes são definidas, e representam um possível valor retornado pela exif_imagetype():

Constantes Imagetype
Valor | Constante
1 | IMAGETYPE_GIF
2 | IMAGETYPE_JPEG
3 | IMAGETYPE_PNG
4 | IMAGETYPE_SWF
5 | IMAGETYPE_PSD
6 | IMAGETYPE_BMP
7 | IMAGETYPE_TIFF_II (intel byte order)
8 | IMAGETYPE_TIFF_MM (motorola byte order)
9 | IMAGETYPE_JPC
10 | IMAGETYPE_JP2
11 | IMAGETYPE_JPX
12 | IMAGETYPE_JB2
13 | IMAGETYPE_SWC
14 | IMAGETYPE_IFF
15 | IMAGETYPE_WBMP
16 | IMAGETYPE_XBM

Exemplos

Exemplo #1 Exemplo da exif_imagetype()

<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
    echo 'The picture is not a gif';
}
?>

Veja Também

  • getimagesize() - Obtém o tamanho de uma imagem

Funções da Exif
exif_read_data
Funções da Exif


Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.

exif_imagetype
exif_tagname
Funções da Exif
PHP Manual

exif_read_data

(PHP 4 >= 4.2.0, PHP 5)

exif_read_data — Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.

Descrição

array exif_read_data ( string $filename [, string $sections [, bool $arrays [, bool $thumbnail ]]] )

A função exif_read_data() lê os cabeçalhos EXIF de um arquivo de imagem JPEG ou TIFF. Retorna uma matriz associativa aonde os índices são os nomes dos cabeçalhos e os valores são os valores associados a estes cabeçalhos. Se nenhum dado puder ser retornado, então o resultado é FALSE.

filename é o nome do arquivo a ser lido. Este não pode ser um URL.

sections é uma lista das seções separadas por vírgula que devem estar presentes em um arquivo para produzir a matriz com os resultados. Se nenhuma das seções não puder ser encontradas, o valor de retorno será FALSE.

FILE | FileName, FileSize, FileDateTime, SectionsFound
COMPUTED | html, Width, Height, IsColor e algo mais se disponível.
ANY_TAG | Qualquer informação que tenha uma Tag ex. IFD0, EXIF, ...
IFD0 | Todas as informações marcadas de IFD0. Em arquivos de imagens normais isto contém o tamanho e assim por diante.
THUMBNAIL | Supostamente um arquivo contém uma miniatura de tver um segundo IFD. Toda a informação marcada sobre esta miniatura embutida é guardada nesta seção.
COMMENT | Cabeçalhos de comentários de imagens JPEG.
EXIF | A seção EXIF é uma subseção de IFD0. Ela contém informação mais detalhada sobre uma imagem. A maioria destas é relacionada a camêras digitais.

arrays especifica quando cada seção se torna ou não uma matriz. As seções COMPUTED, THUMBNAIL e COMMENT sempre se tornam matrizes já que podem conter valores os quais os nomes conflitem com outras seções.

thumbnail quando ler ou não a miniatura em sí ou apenas os dados marcados.

Nota:

Cabeçalhos Exif tendem a estar presentes em imagens JPEG/TIFF geradas por camêras digitais, mas infelizmente, cada fabricante de camêra digital tem uma idéia diferente de como marcar as suas imagens, então você não pode confiar em um cabeçalho EXIF especifico estar presente.

Windows ME/XP podem limpar os cabeçalhos Exif quando estiverem conectados a uma camêra. Maiores informações estão disponíveis em » http://www.canon.co.jp/Imaging/NOTICE/011214-e.html.

Exemplo #1 Exemplo exif_read_data()

<?php

echo "test1.jpg:<br />\n";
$exif = exif_read_data('tests/test1.jpg', 'IFD0');
echo $exif===false ? "No header data found.<br />\n" : "Image contains headers<br />";

$exif = exif_read_data('tests/test2.jpg', 0, true);
echo "test2.jpg:<br />\n";
foreach ($exif as $key => $section) {
    foreach ($section as $name => $val) {
        echo "$key.$name: $val<br />\n";
    }
}
?>

A primeira chamada falha porque a imagem não tem informações no cabeçalho.

test1.jpg:
No header data found.
test2.jpg:
FILE.FileName: test2.jpg
FILE.FileDateTime: 1017666176
FILE.FileSize: 1240
FILE.FileType: 2
FILE.SectionsFound: ANY_TAG, IFD0, THUMBNAIL, COMMENT
COMPUTED.html: width="1" height="1"
COMPUTED.Height: 1
COMPUTED.Width: 1
COMPUTED.IsColor: 1
COMPUTED.ByteOrderMotorola: 1
COMPUTED.UserComment: Exif test image.
COMPUTED.UserCommentEncoding: ASCII
COMPUTED.Copyright: Photo (c) M.Boerger, Edited by M.Boerger.
COMPUTED.Copyright.Photographer: Photo (c) M.Boerger
COMPUTED.Copyright.Editor: Edited by M.Boerger.
IFD0.Copyright: Photo (c) M.Boerger
IFD0.UserComment: ASCII
THUMBNAIL.JPEGInterchangeFormat: 134
THUMBNAIL.JPEGInterchangeFormatLength: 523
COMMENT.0: Comment #1.
COMMENT.1: Comment #2.
COMMENT.2: Comment #3end
THUMBNAIL.JPEGInterchangeFormat: 134
THUMBNAIL.Thumbnail.Height: 1
THUMBNAIL.Thumbnail.Height: 1

Nota:

Se a imagem conter qualquer dado IFDO então COMPUTED contém a entrada ByteOrderMotorola a qual é 0 para little-endian (intel) e 1 para big-endian (motorola), relativo a ordem dos byte. Isto foi adicionado no PHP 4.3.

Quando um cabeçalho Exif contém uma nota de Copyright pode conter dois valores. Como a solução é inconsistente no padrão Exif 2.10 a seção COMPUTED irá retornar ambas as entradas Copyright.Photographer e Copyright.Editor enquando as seções IFD0 contém uma matriz de byte onde o caractere NULL separa as duas entradas. Ou apenas a primeira entrada se o tipo de dados estiver errado (funcionamento normal do Exif). O COMPUTED irá conter também uma entrada Copyright a qual será a string original do copyright ou uma lista separada por vírgula da foto e do copyright do editor.

Nota:

A tag UserComment tem o mesmo problema que a tag de Copyright. Ela pode guardar dois valores, primeiro a codificação usada e em segundo o valor em sí. Então a seção IFD contém somente a codificação ou uma matriz de byte. A seção COMPUTED irá guardar ambos nas entradas UserCommentEncoding e UserComment. A entrada UserComment esta disponível em ambos os casos então deve ser usada em preferencia ao valor da seção IFD0.

Se o comentário do usuário usar Unicode ou codificação JIS e o módulo mbstring estiver disponível esta codificação será automaticamente modificada de acordo com a definição do exif que estiver no php.ini. Isto foi adicionado no PHP 4.3.

Nota:

Height e Width(altura e largura) são compudados da mesma maneira que getimagesize() faz, então seus valores não devem ser parte de nenhum cabeçalhor retornado. Também html é uma height/width de textopara ser usado dentro de um HTML normal.

Nota:

A partir do PHP 4.3 a função pode ler dodos os dados IFD embutidos, incluindo matrizes (retornadas assim). Também o tamanho da miniatura embutida retornada na submatriz THUMBNAIL e a função exif_read_data() pode retornar miniaturas no formato TIFF. Último, mas não menos importante, não existe limite de tamanho para os valores retornados (não enquanto o limite de memória não é atingido).

Nota: Esta função esta disponível apenas no PHP 4 compilado usando --enable-exif . Sua funcionalidade e comportamento mudou no PHP 4.2. Versões anteriores são muito instaveis. A partir do PHP 4.3 comentários do usuário podem mudar a codificação automaticamente se o PHP 4 foi compilado usando --enable-mbstring . Esta função não requer a biblioteca de imagem GD. Veja também exif_thumbnail() e getimagesize().

exif_imagetype
exif_tagname
Funções da Exif


Obtém o nome do cabeçalho para um índice

exif_read_data
exif_thumbnail
Funções da Exif
PHP Manual

exif_tagname

(PHP 4 >= 4.2.0, PHP 5)

exif_tagname — Obtém o nome do cabeçalho para um índice

Descrição

string exif_tagname ( string $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

O índice da imagem

Valor Retornado

Retorna o nome do cabeçalho, ou FALSE se index é indefinido.

Veja Também

  • exif_imagetype() - Verifica o tipo de uma imagem

exif_read_data
exif_thumbnail
Funções da Exif


Recupera a miniatura embutida de uma imagem TIFF ou JPEG

exif_tagname
read_exif_data
Funções da Exif
PHP Manual

exif_thumbnail

(PHP 4 >= 4.2.0, PHP 5)

exif_thumbnail — Recupera a miniatura embutida de uma imagem TIFF ou JPEG

Descrição

string exif_thumbnail ( string $filename [, int &$width [, int &$height [, int &$imagetype ]]] )

exif_thumbnail() lê a miniatura embutida de uma imagem TIFF ou JPEG.

Se você quer exibir miniaturas através desta função, você pode enviar a informação do mimetype usando a função header().

É possível que exif_thumbnail() não crie uma imagem mas pode terminar o tamanho. Neste caso, o valor retornado é FALSE mas width e height são definidos.

Parâmetros

filename

O nome do arquivo da imagem a ser lido. Esta imagem contém uma miniatura embutida.

width

A largura da miniatura retornada.

height

A altura da miniatura retornada.

imagetype

O tipo da imagem da miniatura retornada. Pode ser TIFF ou JPEG.

Valor Retornado

Retorna a miniatura embutida, our FALSE se a imagem não contém miniatura.

Histórico

Versão | Descrição
4.3.0 | O parâmetro opcional width, height, e imagetype tornaram-se disponíveis.
4.3.0 | Pode retornar miniatura no formato TIFF.

Exemplos

Exemplo #1 Exemplo da exif_thumbnail()

<?php
if (array_key_exists('file', $_REQUEST)) {
    $image = exif_thumbnail($_REQUEST['file'], $width, $height, $type);
} else {
    $image = false;
}
if ($image!==false) {
    header('Content-type: ' .image_type_to_mime_type($type));
    echo $image;
    exit;
} else {
    // no thumbnail available, handle the error here
    echo 'No thumbnail available';
}
?>

Veja Também

  • exif_read_data() - Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.
  • image_type_to_mime_type() - Obtém o Mime-Type para um tipo de imagem retornado por getimagesize, exif_read_data, exif_thumbnail, exif_imagetype

exif_tagname
read_exif_data
Funções da Exif


Sinônimo de exif_read_data

exif_thumbnail
GD
Funções da Exif
PHP Manual

read_exif_data

(PHP 4 >= 4.0.1, PHP 5)

read_exif_data — Sinônimo de exif_read_data()

Descrição

Esta função é um apelido para: exif_read_data().

exif_thumbnail
GD
Funções da Exif


Processamento de Imagem (GD)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da GD
    • gd_info — Obtém informações sobre a biblioteca GD instalada atualmente
    • getimagesize — Obtém o tamanho de uma imagem
    • image_type_to_extension — Get file extension for image type
    • image_type_to_mime_type — Obtém o Mime-Type para um tipo de imagem retornado por getimagesize, exif_read_data, exif_thumbnail, exif_imagetype
    • image2wbmp — Envia uma imagem para o browser ou arquivo
    • imagealphablending — Set the blending mode for an image
    • imageantialias — Indica se as funções de antialias devem ser usadas ou não
    • imagearc — Desenha um elipse parcial
    • imagechar — Desenha um caractere horizontalmente
    • imagecharup — Desenha um caractere verticalmente
    • imagecolorallocate — Aloca uma cor para uma imagem
    • imagecolorallocatealpha — Aloca cor para uma imagem
    • imagecolorat — Retorna o índice da cor de um pixel
    • imagecolorclosest — Retorna o índice da cor mais próxima da cor especificada
    • imagecolorclosestalpha — Retorna o índice da cor mais próxima da cor especificada + transparencia
    • imagecolorclosesthwb — Get the index of the color which has the hue, white and blackness
    • imagecolordeallocate — Desaloca uma cor para uma imagem
    • imagecolorexact — Retorna o índice da cor especificada
    • imagecolorexactalpha — Retorna o índice da cor especificada + transparencia
    • imagecolormatch — Faz com que a versão das cores da paleta sejam mais próximas da versão truecolor
    • imagecolorresolve — Retorna o índice da cor especificada ou a alternativa mais próxima possível
    • imagecolorresolvealpha — Retorna o índice da cor especificada + transparência ou a sua alternativa mais próxima
    • imagecolorset — Set the color for the specified palette index
    • imagecolorsforindex — Retorna as cores de um índice
    • imagecolorstotal — Retorna o número de cores na paleta de uma imagem
    • imagecolortransparent — Define uma cor como tansparente
    • imageconvolution — Apply a 3x3 convolution matrix, using coefficient and offset
    • imagecopy — Copia parte de uma imagem
    • imagecopymerge — Copia e combina uma parte de uma imagem
    • imagecopymergegray — Copy and merge part of an image with gray scale
    • imagecopyresampled — Copy and resize part of an image with resampling
    • imagecopyresized — Copy and resize part of an image
    • imagecreate — Cria uma nova imagem baseada em paleta
    • imagecreatefromgd2 — Cria uma nova imagem apartir de um arquivo GD2 ou URL
    • imagecreatefromgd2part — Cria uma nova imagem apartir de uma parte de um arquivo GD ou URL
    • imagecreatefromgd — Cria uma nova imagem apartir de um arquivo GD ou URL
    • imagecreatefromgif — Cria uma nova imagem a partir de um arquivo ou URL
    • imagecreatefromjpeg — Cria uma nova imagem a a partir de um arquivo ou URL
    • imagecreatefrompng — Cria uma nova imagem a apratir de um arquivo ou URL
    • imagecreatefromstring — Cria uma nova imagem a apartir da imagem na string
    • imagecreatefromwbmp — Cria uma nova imagem a apratir de um arquivo ou URL
    • imagecreatefromxbm — Cria uma nova imagem a a partir de um arquivo ou URL
    • imagecreatefromxpm — Cria uma nova imagem a apratir de um arquivo ou URL
    • imagecreatetruecolor — Cria uma nova imagem true color
    • imagedashedline — Desenha uma linha pontilhada
    • imagedestroy — Destrói uma imagem
    • imageellipse — Desenha um elipse
    • imagefill — Flood fill
    • imagefilledarc — Draw a partial arc and fill it
    • imagefilledellipse — Desenha um elipse prenchido
    • imagefilledpolygon — Desenha um poligono prenchido
    • imagefilledrectangle — Desenha um retângulo prenchido
    • imagefilltoborder — Flood fill to specific color
    • imagefilter — Applies a filter to an image
    • imagefontheight — Retorna a altura da fonte
    • imagefontwidth — Retorna a largura da fonte
    • imageftbbox — Give the bounding box of a text using fonts via freetype2
    • imagefttext — Escreve texto na imagem usando fontes FreeType 2
    • imagegammacorrect — Apply a gamma correction to a GD image
    • imagegd2 — Envia uma imagem GD2
    • imagegd — Envia a imagem GD para o browser ou um arquivo
    • imagegif — Envia uma imagem para o browser ou arquivo
    • imagegrabscreen — Captures the whole screen
    • imagegrabwindow — Captures a window
    • imageinterlace — Ativa ou desativa o entrelaçamento
    • imageistruecolor — Indica quando uma imagem é uma imagem truecolor
    • imagejpeg — Envia a imagem para o borwser ou arquivo
    • imagelayereffect — Set the alpha blending flag to use the bundled libgd layering effects
    • imageline — Desenha uma linha
    • imageloadfont — Carrega uma nova fonte
    • imagepalettecopy — Copia a paleta de uma imagem para a outra
    • imagepng — Envia uma imagem PNG para o browser ou para um arquivo
    • imagepolygon — Desenha um poligono
    • imagepsbbox — Give the bounding box of a text rectangle using PostScript Type1 fonts
    • imagepsencodefont — Change the character encoding vector of a font
    • imagepsextendfont — Extend or condense a font
    • imagepsfreefont — Libera a memória usada por uma fonte PostScript Type
    • imagepsloadfont — Carrega uma fonte PostScript Type 1 a partir de um arquivo
    • imagepsslantfont — Slant a font
    • imagepstext — Draws a text over an image using PostScript Type1 fonts
    • imagerectangle — Desenha um retângulo
    • imagerotate — Gira uma imagem com o ângulo dado
    • imagesavealpha — Define a opção para salvar a informação completa do alpha channel (ao invés de a transparencia de uma cor só) quando estiver salvando imagens PNG.
    • imagesetbrush — Set the brush image for line drawing
    • imagesetpixel — Define um único pixel
    • imagesetstyle — Set the style for line drawing
    • imagesetthickness — Define a espessura para o desenho de linhas
    • imagesettile — Set the tile image for filling
    • imagestring — Desenha uma string horizontalmente
    • imagestringup — Desenha uma string verticalmente
    • imagesx — Obtem a largura da imagem
    • imagesy — Obtém a altura da imagem
    • imagetruecolortopalette — Converte uma imagem true color para uma imagem de paleta
    • imagettfbbox — Retorna uma caixa com o limites de um texto usando fontes TrueType
    • imagettftext — Escreve texto na imagem usando fontes TrueType
    • imagetypes — Retorna os tipos de imagens suportados por esta instalação do PHP
    • imagewbmp — Envia uma imagem para o browser ou arquivo
    • imagexbm — Output XBM image to browser or file
    • iptcembed — Embute dados binários IPTC em uma imagem JPEG
    • iptcparse — Analisa um bloco binário IPTC em tags simples.
    • jpeg2wbmp — Converte um arquivo de imagem JPEG para um arquivo de imagem WBMP
    • png2wbmp — Converte um arquivo de imagem PNG para um arquivo de imagem WBMP
read_exif_data
Introdução
Processamento de Imagem e Geração


Introdução

O PHP não esta limitado a criar apenas saída em HTML. Ele também pode ser usado para criar e manipular arquivos de imagem em uma diversidade de formatos, incluindo gif, png, jpg, wbmp, e xpm. E ainda mais convenietemente, o PHP pode enviar streams de saída de imagem diratamente para o browser. Você precisará compilar o PHP com a biblioteca GD de imagens de funções para isto funcionar. O PHP e GD também podem requerer outras bibliotecas, dependendo dos formatos de imagens com os quais você queira trabalhar.

Você pode usar as funções de imagem no PHP para obter o tamanho de imagens JPEG, GIF, PNG, SWF, TIFF and JPEG2000.

Com a extensão exif, você estará hábil para trabalhar com informações armazenadas nos cabeçalhos de imagens JPEG e TIFF. Desta forma você pode ler meta data gerada por câmeras digitais. As funções exif não requerem a biblioteca GD.

Nota: Leia a seção de requerimentos sobre como expandir a capacidade de leitura, escrita e modificação de imagens. Para ler meta data de imagens de uma câmera digital você precisa da acima mencionada, extensão exif.

GD
Instalação/Configuração
GD


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
GD


Dependências

Se você tiver a biblioteca GD (disponível em » http://www.libgd.org/) você poderá também criar e manipular imagens.

O formato das imagens que você pode manipilar dependem da versão da GD que você instalou, e de quaisquer outras bibliotecas que o GD possa precisar para acessar estes formatos de imagens. Versões do GD anteriores a gd-1.6 suportam imagens GIF, e não suportam PNG, enquanto versões posteriores a gd-1.6 e menor que gd-2.0.28 suportam PNG, não GIF. Suporte a GIF foi reabilitado na gd-2.0.28.

Nota: Apartir do PHP 4.3 existe uma versão empacotada da biblioteca GD. Esta versão empacotada tem algumas melhorias como alpha blending, e deve ser usada em preferência da biblioteca externa, já que seu código-fonte é melhor mantido e mais estável.

Nota:

Support for GD 1.x has been removed as of PHP 6.0.0, which requires GD 2.0.33 or later.

You may wish to enhance GD to handle more image formats.

Supported image formats
Formato de imagem | Bibliotece para download | Notas
gif |  | Suportado apenas em versões do GD anteriores a gd-1.6. Suporte Apenas para leitura esta disponível com o PHP 4.3.0 e a biblioteca GD empacotada. Suporte para Escrita esta disponível desde o PHP 4.3.9 e PHP 5.0.1.
jpeg-6b | » http://pecl2.php.net/downloads/php-windows-builds/source/ | Quando compilando a biblioteca jpeg-v6b (antes de compilar o PHP) você precisa usar a opção --enable-shared no passo de configuração. Se você não fizer, irá receber um erro dizendo libjpeg.(a|so) not found quando você estiver no passo de configuração para compilar o PHP.
png | » http://www.libpng.org/pub/png/libpng.html | Apenas suportados em versões do GD maiores do que gd-1.6.
xpm | » ftp://metalab.unc.edu/pub/Linux/libs/X/!INDEX.html | É provavel que você já tenha esta biblioteca disponível, se o seu sistema tiver um ambiênte X instalado.

Voce pode querer melhorar o GD para lidar com fontes diferentes. As seguintes bibliotecas de fontes são suportadas:

Bibliotes de fontes suportadas
Biblioteca de fonte | Download | Notas
FreeType 1.x | » http://www.freetype.org/ | Suporte removido no PHP 6.0.0
FreeType 2 | » http://www.freetype.org/ |
T1lib | » ftp://sunsite.unc.edu/pub/Linux/libs/graphics/) | Suporte para fontes Postscript Type 1.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para ativar suporte ao GD, configure o PHP com --with-gd[=DIR] , aonde DIR é o diretório de instalação. Para usar a versão recomendada da biblioteca GD que acompanha o PHP (a qual foi embutida pela primeira vez no PHP 4.3.0), use a opção de configuração --with-gd . Biblioteca GD requer libpng e libjpeg para compilar.

No Windows, você irá incluir a DLL do GD2 php_gd2.dll como uma extensão no php.ini. A DLL GD1 php_gd.dll foi removida a partir do PHP 4.3.2. Também note que as funções de imagens truecolor, como imagecreatetruecolor(), requerem GD2.

Melhore as capacidades do GD para manipular mais formatos de imagens especificando a opção --with-XXXX na sua linha de configuração do PHP.

Formatos de imagens suportados
Formato de Imagem | Opção de Configuração
jpeg-6b | Para ativar suporte a jpeg-6b adicione --with-jpeg-dir=DIR .
png | Para ativar suporte para png adicione --with-png-dir=DIR . Note que, libpng precisa de zlib library, portanto adicione a opção --with-zlib-dir[=DIR] na sua linha de configuração.
xpm | Para ativar suporte a xpm adicione --with-xpm-dir=DIR . Se o configure não for capaz de encontrar as bibliotecas necessárias, você deverá adicionar o caminho até as suas bibliotecas X11.

Nota: Ao compilar o PHP com a libpng, você deve usar a mesma versão que foi ligada com a biblioteca GD.

Melhore as capacidades do GD para lidar com fontes diferentes especificando a opção de configuração --with-XXXX na linha de configuração do PHP.

Bibliotecas de Fontes Suportadas
Biblioteca de Fonte | Opção de Configuração
FreeType 1.x | Para ativar suporte a FreeType 1.x adicione --with-ttf[=DIR] .
FreeType 2 | Para ativar suporte a FreeType 2 adicione --with-freetype-dir=DIR .
T1lib | Para ativar suporte a T1lib (Postscript Type 1 fonts) adicione --with-t1lib[=DIR] .
Native TrueType string function | Para ativar suporte a native TrueType string function adicione --enable-gd-native-ttf .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Image Opções de Configuração
Nome | Padrão | Modificável | Changelog
gd.jpeg_ignore_warning | "0" | PHP_INI_ALL | Disponível desde o PHP 5.1.3.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

gd.jpeg_ignore_warning bool

Ignora avisos criados por jpeg2wbmp() e imagecreatefromjpeg()

Veja também as diretivas de configuração exif.

Aviso

As funções para imagem usam bastante memória. Certifique-se de definir memory_limit grande o bastante.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão define dois tipos de resource: um identificador de imagem e um identificador de fonte.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

GD_VERSION (string)
A versão da biblioteca GD que foi compilada com o PHP. (Disponível no PHP 5.2.4)
GD_MAJOR_VERSION (integer)
A maior versão da biblioteca GD compilada com o PHP. (Disponível no PHP 5.2.4)
GD_MINOR_VERSION (integer)
A menor versão da biblioteca GD compilada com o PHP. (Disponível no PHP 5.2.4)
GD_RELEASE_VERSION (integer)
A versão release da biblioteca GD compilada com o PHP. (Disponível no PHP 5.2.4)
GD_EXTRA_VERSION (string)
A versão "extra" da biblioteca GD (beta/rc..) compilada com o PHP. (Disponível no PHP 5.2.4)
IMG_GIF (integer)
Usado como um valor de retorno para imagetypes()
IMG_JPG (integer)
Usado como um valor de retorno para imagetypes()
IMG_JPEG (integer)
Usado como um valor de retorno para imagetypes()

Nota:

Esta constante tem o mesmo valor que IMG_JPG

IMG_PNG (integer)
Usado como um valor de retorno para imagetypes()
IMG_WBMP (integer)
Usado como um valor de retorno para imagetypes()
IMG_XPM (integer)
Usado como um valor de retorno para imagetypes()
IMG_COLOR_TILED (integer)
Opção de cor especial que pode ser usada em imagecolorallocate() ou imagecolorallocatealpha()
IMG_COLOR_STYLED (integer)
Opção de cor especial que pode ser usada em imagecolorallocate() ou imagecolorallocatealpha()
IMG_COLOR_BRUSHED (integer)
Opção de cor especial que pode ser usada em imagecolorallocate() ou imagecolorallocatealpha()
IMG_COLOR_STYLEDBRUSHED (integer)
Opção de cor especial que pode ser usada em imagecolorallocate() ou imagecolorallocatealpha()
IMG_COLOR_TRANSPARENT (integer)
Opção de cor especial que pode ser usada em imagecolorallocate() ou imagecolorallocatealpha()
IMG_ARC_ROUNDED (integer)
Uma constante de estilo usada pela função imagefilledarc().

Nota:

Esta constante tem o mesmo valor que IMG_ARC_PIE

IMG_ARC_PIE (integer)
Uma constante de estilo usada pela função imagefilledarc().
IMG_ARC_CHORD (integer)
Uma constante de estilo usada pela função imagefilledarc().
IMG_ARC_NOFILL (integer)
Uma constante de estilo usada pela função imagefilledarc().
IMG_ARC_EDGED (integer)
Uma constante de estilo usada pela função imagefilledarc().
IMG_GD2_RAW (integer)
Uma constante de tipo usada pela função imagegd2().
IMG_GD2_COMPRESSED (integer)
Uma constante de tipo usada pela função imagegd2() function.
IMG_EFFECT_REPLACE (integer)
Efeito Alpha blending usado pela função imagelayereffect().
IMG_EFFECT_ALPHABLEND (integer)
Efeito Alpha blending usado pela função imagelayereffect().
IMG_EFFECT_NORMAL (integer)
Efeito Alpha blending usado pela função imagelayereffect().
IMG_EFFECT_OVERLAY (integer)
Efeito Alpha blending usado pela função imagelayereffect().
IMG_FILTER_NEGATE (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_GRAYSCALE (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_BRIGHTNESS (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_CONTRAST (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_COLORIZE (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_EDGEDETECT (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_GAUSSIAN_BLUR (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_SELECTIVE_BLUR (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_EMBOSS (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_MEAN_REMOVAL (integer)
Filtro especial da GD usado pela função imagefilter().
IMG_FILTER_SMOOTH (integer)
Filtro especial da GD usado pela função imagefilter().
IMAGETYPE_GIF (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_JPEG (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_PNG (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_SWF (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_PSD (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_BMP (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_WBMP (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_XBM (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_TIFF_II (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_TIFF_MM (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_IFF (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_JB2 (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_JPC (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_JP2 (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_JPX (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_SWC (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension().
IMAGETYPE_ICO (integer)
Constante de tipo de imagem usado pelas função image_type_to_mime_type() e image_type_to_extension(). (Available as of PHP 5.3.0)
PNG_NO_FILTER (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_FILTER_NONE (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_FILTER_SUB (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_FILTER_UP (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_FILTER_AVG (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_FILTER_PAETH (integer)
Um filtro especial de PNG, usado pela função imagepng().
PNG_ALL_FILTERS (integer)
Um filtro especial de PNG, usado pela função imagepng().
Tipos Resource
Exemplos
GD


Exemplos

Índice

Constantes pré-definidas
GD


Exemplos
Funções da GD
Exemplos
PHP Manual

Exemplo #1 Criação de PNG com PHP

<?php

header("Content-type: image/png");
$string = $_GET['text'];
$im     = imagecreatefrompng("images/button1.png");
$orange = imagecolorallocate($im, 220, 210, 60);
$px     = (imagesx($im) - 7.5 * strlen($string)) / 2;
imagestring($im, 3, $px, 9, $string, $orange);
imagepng($im);
imagedestroy($im);

?>
Este exemplo podia ser chamada por uma página com uma tag como: <img src="button.php?text=text">. O script button.php acima então tem esta string "text" e coloca-a por cima da base da imagem que no caso é "images/button1.png" a saída resultante da imagem. Esta é uma forma muito comum para evitar ter que desenhar um nova imagem de botão cada vez que você quer modificar o texto de um botão. Com este método teremos ele dinamicamente gerado.

Exemplos
Funções da GD
Exemplos


Funções da GD

Índice

  • gd_info — Obtém informações sobre a biblioteca GD instalada atualmente
  • getimagesize — Obtém o tamanho de uma imagem
  • image_type_to_extension — Get file extension for image type
  • image_type_to_mime_type — Obtém o Mime-Type para um tipo de imagem retornado por getimagesize, exif_read_data, exif_thumbnail, exif_imagetype
  • image2wbmp — Envia uma imagem para o browser ou arquivo
  • imagealphablending — Set the blending mode for an image
  • imageantialias — Indica se as funções de antialias devem ser usadas ou não
  • imagearc — Desenha um elipse parcial
  • imagechar — Desenha um caractere horizontalmente
  • imagecharup — Desenha um caractere verticalmente
  • imagecolorallocate — Aloca uma cor para uma imagem
  • imagecolorallocatealpha — Aloca cor para uma imagem
  • imagecolorat — Retorna o índice da cor de um pixel
  • imagecolorclosest — Retorna o índice da cor mais próxima da cor especificada
  • imagecolorclosestalpha — Retorna o índice da cor mais próxima da cor especificada + transparencia
  • imagecolorclosesthwb — Get the index of the color which has the hue, white and blackness
  • imagecolordeallocate — Desaloca uma cor para uma imagem
  • imagecolorexact — Retorna o índice da cor especificada
  • imagecolorexactalpha — Retorna o índice da cor especificada + transparencia
  • imagecolormatch — Faz com que a versão das cores da paleta sejam mais próximas da versão truecolor
  • imagecolorresolve — Retorna o índice da cor especificada ou a alternativa mais próxima possível
  • imagecolorresolvealpha — Retorna o índice da cor especificada + transparência ou a sua alternativa mais próxima
  • imagecolorset — Set the color for the specified palette index
  • imagecolorsforindex — Retorna as cores de um índice
  • imagecolorstotal — Retorna o número de cores na paleta de uma imagem
  • imagecolortransparent — Define uma cor como tansparente
  • imageconvolution — Apply a 3x3 convolution matrix, using coefficient and offset
  • imagecopy — Copia parte de uma imagem
  • imagecopymerge — Copia e combina uma parte de uma imagem
  • imagecopymergegray — Copy and merge part of an image with gray scale
  • imagecopyresampled — Copy and resize part of an image with resampling
  • imagecopyresized — Copy and resize part of an image
  • imagecreate — Cria uma nova imagem baseada em paleta
  • imagecreatefromgd2 — Cria uma nova imagem apartir de um arquivo GD2 ou URL
  • imagecreatefromgd2part — Cria uma nova imagem apartir de uma parte de um arquivo GD ou URL
  • imagecreatefromgd — Cria uma nova imagem apartir de um arquivo GD ou URL
  • imagecreatefromgif — Cria uma nova imagem a partir de um arquivo ou URL
  • imagecreatefromjpeg — Cria uma nova imagem a a partir de um arquivo ou URL
  • imagecreatefrompng — Cria uma nova imagem a apratir de um arquivo ou URL
  • imagecreatefromstring — Cria uma nova imagem a apartir da imagem na string
  • imagecreatefromwbmp — Cria uma nova imagem a apratir de um arquivo ou URL
  • imagecreatefromxbm — Cria uma nova imagem a a partir de um arquivo ou URL
  • imagecreatefromxpm — Cria uma nova imagem a apratir de um arquivo ou URL
  • imagecreatetruecolor — Cria uma nova imagem true color
  • imagedashedline — Desenha uma linha pontilhada
  • imagedestroy — Destrói uma imagem
  • imageellipse — Desenha um elipse
  • imagefill — Flood fill
  • imagefilledarc — Draw a partial arc and fill it
  • imagefilledellipse — Desenha um elipse prenchido
  • imagefilledpolygon — Desenha um poligono prenchido
  • imagefilledrectangle — Desenha um retângulo prenchido
  • imagefilltoborder — Flood fill to specific color
  • imagefilter — Applies a filter to an image
  • imagefontheight — Retorna a altura da fonte
  • imagefontwidth — Retorna a largura da fonte
  • imageftbbox — Give the bounding box of a text using fonts via freetype2
  • imagefttext — Escreve texto na imagem usando fontes FreeType 2
  • imagegammacorrect — Apply a gamma correction to a GD image
  • imagegd2 — Envia uma imagem GD2
  • imagegd — Envia a imagem GD para o browser ou um arquivo
  • imagegif — Envia uma imagem para o browser ou arquivo
  • imagegrabscreen — Captures the whole screen
  • imagegrabwindow — Captures a window
  • imageinterlace — Ativa ou desativa o entrelaçamento
  • imageistruecolor — Indica quando uma imagem é uma imagem truecolor
  • imagejpeg — Envia a imagem para o borwser ou arquivo
  • imagelayereffect — Set the alpha blending flag to use the bundled libgd layering effects
  • imageline — Desenha uma linha
  • imageloadfont — Carrega uma nova fonte
  • imagepalettecopy — Copia a paleta de uma imagem para a outra
  • imagepng — Envia uma imagem PNG para o browser ou para um arquivo
  • imagepolygon — Desenha um poligono
  • imagepsbbox — Give the bounding box of a text rectangle using PostScript Type1 fonts
  • imagepsencodefont — Change the character encoding vector of a font
  • imagepsextendfont — Extend or condense a font
  • imagepsfreefont — Libera a memória usada por uma fonte PostScript Type
  • imagepsloadfont — Carrega uma fonte PostScript Type 1 a partir de um arquivo
  • imagepsslantfont — Slant a font
  • imagepstext — Draws a text over an image using PostScript Type1 fonts
  • imagerectangle — Desenha um retângulo
  • imagerotate — Gira uma imagem com o ângulo dado
  • imagesavealpha — Define a opção para salvar a informação completa do alpha channel (ao invés de a transparencia de uma cor só) quando estiver salvando imagens PNG.
  • imagesetbrush — Set the brush image for line drawing
  • imagesetpixel — Define um único pixel
  • imagesetstyle — Set the style for line drawing
  • imagesetthickness — Define a espessura para o desenho de linhas
  • imagesettile — Set the tile image for filling
  • imagestring — Desenha uma string horizontalmente
  • imagestringup — Desenha uma string verticalmente
  • imagesx — Obtem a largura da imagem
  • imagesy — Obtém a altura da imagem
  • imagetruecolortopalette — Converte uma imagem true color para uma imagem de paleta
  • imagettfbbox — Retorna uma caixa com o limites de um texto usando fontes TrueType
  • imagettftext — Escreve texto na imagem usando fontes TrueType
  • imagetypes — Retorna os tipos de imagens suportados por esta instalação do PHP
  • imagewbmp — Envia uma imagem para o browser ou arquivo
  • imagexbm — Output XBM image to browser or file
  • iptcembed — Embute dados binários IPTC em uma imagem JPEG
  • iptcparse — Analisa um bloco binário IPTC em tags simples.
  • jpeg2wbmp — Converte um arquivo de imagem JPEG para um arquivo de imagem WBMP
  • png2wbmp — Converte um arquivo de imagem PNG para um arquivo de imagem WBMP
gd_info
GD


Obtém informações sobre a biblioteca GD instalada atualmente

Funções da GD
getimagesize
Funções da GD
PHP Manual

gd_info

(PHP 4 >= 4.3.0, PHP 5)

gd_info — Obtém informações sobre a biblioteca GD instalada atualmente

Descrição

array gd_info ( void )

Obtém informação sobre a versão e as capacidades da biblioteca GD instalada.

Valor Retornado

Retorna um array associativo.

Elementos da matriz retornados por gd_info()
Atributo | Significado
GD Version | Valor string descrevendo a versão da libgd instalada.
Freetype Support | Valor boolean. TRUE se o suporte Freetype esta instalado.
Freetype Linkage | Valor string dewscrevendo a maneira que Freetype foi linkado. Os valores esperados são: 'with freetype', 'with TTF library', e 'with unknown library'. Este elemento será definido apenas se Freetype Support for TRUE.
T1Lib Support | Valor boolean. TRUE se o suporte a T1Lib estiver incluso.
GIF Read Support | Valor boolean. TRUE se o suporte para ler imagens GIF estiver incluso.
GIF Create Support | Valor boolean. TRUE se o suporte para criação de imagens GIF estiver incluso.
JPG Support | Valor boolean. TRUE se o suporte a JPG estiver incluso.
PNG Support | Valor boolean. TRUE se o suporte a PNG estiver incluso.
WBMP Support | Valor boolean. TRUE se o suporte a WBMP estiver incluso.
XBM Support | Valor boolean. TRUE se o suporte a XBM estiver incluso.

Exemplos

Exemplo #1 Usando a gd_info()

<?php
var_dump(gd_info());
?>

O exemplo acima irá imprimir algo similar a:

array(9) {
  ["GD Version"]=>
  string(24) "bundled (2.0 compatible)"
  ["FreeType Support"]=>
  bool(false)
  ["T1Lib Support"]=>
  bool(false)
  ["GIF Read Support"]=>
  bool(true)
  ["GIF Create Support"]=>
  bool(false)
  ["JPG Support"]=>
  bool(false)
  ["PNG Support"]=>
  bool(true)
  ["WBMP Support"]=>
  bool(true)
  ["XBM Support"]=>
  bool(false)
}

Veja Também

  • imagepng() - Envia uma imagem PNG para o browser ou para um arquivo
  • imagejpeg() - Envia a imagem para o borwser ou arquivo
  • imagegif() - Envia uma imagem para o browser ou arquivo
  • imagewbmp() - Envia uma imagem para o browser ou arquivo
  • imagetypes() - Retorna os tipos de imagens suportados por esta instalação do PHP

Funções da GD
getimagesize
Funções da GD


Obtém o tamanho de uma imagem

gd_info
image_type_to_extension
Funções da GD
PHP Manual

getimagesize

(PHP 4, PHP 5)

getimagesize — Obtém o tamanho de uma imagem

Descrição

array getimagesize ( string $filename [, array $&imageinfo ] )

A função getimagesize() irá determinar o tamanho de qualquer arquivo de imagem GIF, JPG, PNG, SWF, SWC, PSD, TIFF, BMP, IFF, JP2, JPX, JB2, JPC, XBM, ou WBMP e retornar as dimensões juntamente com o tipo de arquivo e a altura/largura para usar dentro de uma tag HTML IMG.

Se for impossível acessar a imagem filename, ou se não for uma imagem válida, getimagesize() irá retornar FALSE e gerar um erro de nível E_WARNING.

Nota:

Suporte para JPC, JP2, JPX, JB2, XBM, e WBMP tornou-se disponível no PHP 4.3.2. Supporte para SWC a partir do PHP 4.3.0 e o suporte a TIFF foi adicionado no PHP 4.2.0

Nota: Suporte a JPEG 2000 foi adicionado no PHP 4.3.2. Note que JPC e JP2 são capazes de ter componentes com profundidades diferentes de bit. Neste caso o valor para 'bits' é a maior profundidade de bits encontrada. Também, arquivos JP2 podem conter múltiplos JPEG 2000 codestreams. Neste caso, getimagesize() retorna o valor para o primeiro codestream que encontrar na raíz do arquivo.

Nota: A função getimagesize() não requer a biblioteca de imagem GD.

Retorna uma matriz com 4 elementos. O índice 0 contém a largura da imagem em pixels. O índice 1 contém a altura. O índice 2 é uma indicação do tipo de imagem: 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(intel byte order), 8 = TIFF(motorola byte order), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF, 15 = WBMP, 16 = XBM. Estes valores correspondem as constantes IMAGETYPE que foram adicionadas no PHP 4.3. O índice 3 é uma string com o height="yyy" width="xxx" correto que pode ser usado diretamente numa tag IMG.

Exemplo #1 getimagesize (file)

<?php
list($width, $height, $type, $attr) = getimagesize("img/flag.jpg");
echo "<img src=\"img/flag.jpg\" $attr alt=\"getimagesize() example\" />";
?>

Suporte para URL foi adicionado PHP 4.0.5

Exemplo #2 getimagesize (URL)

<?php
$size = getimagesize("http://www.example.com/gifs/logo.gif");

// se o nome do arquivo tiver um espaço, codifique-o corretamente
$size = getimagesize("http://www.example.com/gifs/lo%20go.gif");

?>

Com imagens JPG dois indices extras são retornados: channels e bits. channels será 3 para imagens RGB e 4 para imagens CMYK. bits é o número de bits para cada cor.

Começando no PHP 4.3.0, bits e channels estão presentes para outros tipos de imagens também. Entretanto, a presença desses valores pode ser um pouco confusa. Por exemplo, GIF sempre usa 3 channels por pixel, mas o número de bits por pixel não pode ser calculado para um GIF animado com uma tabela de cores global.

Alguns formatos podem não conter imagens ou conter múltiplas imagens. Nestes casos, getimagesize() não será capaz de determinar o tamanho da imagem. getimagesize() retornará zero para a altura e largura nestes casos.

Começando no PHP 4.3.0, getimagesize() também retorna um parâmetro adicional, mime, que corresponde ao tipo MIME da imagem. Esta informação pode ser usada para enviar imagens com o cabeçalho HTTP Content-type correto:

Exemplo #3 getimagesize() e tipos MIME

<?php
$size = getimagesize($filename);
$fp=fopen($filename, "rb");
if ($size && $fp) {
  header("Content-type: {$size['mime']}");
  fpassthru($fp);
  exit;
} else {
  // error
}
?>

O parâmetro opcional imageinfo permite a você extrair alguma informação extendida do arquivo de imagem. Atualmente, irá retornar os diferentes JPG APP markers como uma matriz associativa. Alguns programas usam estes APP markers para embutir textos com informações na imagem. Um uso muito comum é embutir informação IPTC » http://www.iptc.org/ no APP13 marker. Você poderá usar a função iptcparse() para interpretar o binário APP13 marker em algo legível.

Exemplo #4 getimagesize() retornando IPTC

<?php
$size = getimagesize("testimg.jpg", $info);
if (isset($info["APP13"])) {
    $iptc = iptcparse($info["APP13"]);
    var_dump($iptc);
}
?>

Veja também image_type_to_mime_type(),
exif_imagetype(),
exif_read_data() e
exif_thumbnail().

gd_info
image_type_to_extension
Funções da GD


Get file extension for image type

getimagesize
image_type_to_mime_type
Funções da GD
PHP Manual

image_type_to_extension

(PHP 5)

image_type_to_extension — Get file extension for image type

Descrição

string image_type_to_extension ( int $imagetype [, bool $include_dot ] )

Returns the extension for the given IMAGETYPE_XXX constant.

Parâmetros

imagetype

One of the IMAGETYPE_XXX constant.

include_dot

Whether to prepend a dot to the extension or not. Default to TRUE.

Valor Retornado

A string with the extension corresponding to the given image type.

Exemplos

Exemplo #1 image_type_to_extension() example

<?php
// Create image instance
$im = imagecreatetruecolor(100, 100);

// Save image
imagepng($im, './test' . image_type_to_extension(IMAGETYPE_PNG));
imagedestroy($im);
?>

Notas

Nota:

Esta função não requer a biblioteca de funções de imagem GD.

getimagesize
image_type_to_mime_type
Funções da GD


Obtém o Mime-Type para um tipo de imagem retornado por getimagesize, exif_read_data, exif_thumbnail, exif_imagetype

image_type_to_extension
image2wbmp
Funções da GD
PHP Manual

image_type_to_mime_type

(PHP 4 >= 4.3.0, PHP 5)

image_type_to_mime_type — Obtém o Mime-Type para um tipo de imagem retornado por getimagesize, exif_read_data, exif_thumbnail, exif_imagetype

Descrição

string image_type_to_mime_type ( int $imagetype )

A função image_type_to_mime_type() irá determinar o tipo Mime para uma constante IMAGETYPE.

Parâmetros

imagetype

Uma das constantes IMAGETYPE_XXX

Valor Retornado

Os valores retornado são como a seguir

Constantes de valores retornados
imagetype | Returned value
IMAGETYPE_GIF | image/gif
IMAGETYPE_JPEG | image/jpeg
IMAGETYPE_PNG | image/png
IMAGETYPE_SWF | application/x-shockwave-flash
IMAGETYPE_PSD | image/psd
IMAGETYPE_BMP | image/bmp
IMAGETYPE_TIFF_II (intel byte order) | image/tiff
IMAGETYPE_TIFF_MM (motorola byte order) | image/tiff
IMAGETYPE_JPC | application/octet-stream
IMAGETYPE_JP2 | image/jp2
IMAGETYPE_JPX | application/octet-stream
IMAGETYPE_JB2 | application/octet-stream
IMAGETYPE_SWC | application/x-shockwave-flash
IMAGETYPE_IFF | image/iff
IMAGETYPE_WBMP | image/vnd.wap.wbmp
IMAGETYPE_XBM | image/xbm
IMAGETYPE_ICO | image/vnd.microsoft.icon

Exemplos

Exemplo #1 image_type_to_mime_type (arquivo)

<?php
header("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG));
?>

Notas

Nota:

Esta função não precisa da biblioteca de imagem GD.

Veja Também

  • getimagesize() - Obtém o tamanho de uma imagem
  • exif_imagetype() - Verifica o tipo de uma imagem
  • exif_read_data() - Lê os cabeçalhos EXIF de imagens JPEG ou TIFF. Deste modo você poderá ler meta dados gerados por camêras digitais.
  • exif_thumbnail() - Recupera a miniatura embutida de uma imagem TIFF ou JPEG

image_type_to_extension
image2wbmp
Funções da GD


Envia uma imagem para o browser ou arquivo

image_type_to_mime_type
imagealphablending
Funções da GD
PHP Manual

image2wbmp

(PHP 4 >= 4.0.5, PHP 5)

image2wbmp — Envia uma imagem para o browser ou arquivo

Descrição

bool image2wbmp ( resource $image [, string $filename [, int $threshold ]] )

image2wbmp() mostra ou salva uma versão WBMP de uma dada image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filename

Caminho para salvar o arquivo. Se não informado, a imagem será mostrada diretamente.

threshold

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo image2wbmp()

<?php

$file = 'php.png';
$image = imagecreatefrompng($file);

header('Content-type: ' . image_type_to_mime_type(IMAGETYPE_WBMP));
image2wbmp($image); // output the stream directly

?>

Notas

Nota:

Suporte a WBMP esta disponível somente se o PHP foi compilado com a GD-1.8 ou posterior.

Veja Também

  • imagewbmp() - Envia uma imagem para o browser ou arquivo

image_type_to_mime_type
imagealphablending
Funções da GD


Set the blending mode for an image

image2wbmp
imageantialias
Funções da GD
PHP Manual

imagealphablending

(PHP 4 >= 4.0.6, PHP 5)

imagealphablending — Set the blending mode for an image

Descrição

bool imagealphablending ( resource $image , bool $blendmode )

imagealphablending() allows for two different modes of drawing on truecolor images. In blending mode, the alpha channel component of the color supplied to all drawing function, such as imagesetpixel() determines how much of the underlying color should be allowed to shine through. As a result, gd automatically blends the existing color at that point with the drawing color, and stores the result in the image. The resulting pixel is opaque. In non-blending mode, the drawing color is copied literally with its alpha channel information, replacing the destination pixel. Blending mode is not available when drawing on palette images.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

blendmode

Whether to enable the blending mode or not. On true color images the default value is TRUE otherwise the default value is FALSE

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagealphablending() usage example

<?php
// Create image
$im = imagecreatetruecolor(100, 100);

// Set alphablending to on
imagealphablending($im, true);

// Draw a square
imagefilledrectangle($im, 30, 30, 70, 70, imagecolorallocate($im, 255, 0, 0));

// Output
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

image2wbmp
imageantialias
Funções da GD


Indica se as funções de antialias devem ser usadas ou não

imagealphablending
imagearc
Funções da GD
PHP Manual

imageantialias

(PHP 4 >= 4.3.2, PHP 5)

imageantialias — Indica se as funções de antialias devem ser usadas ou não

Description

bool imageantialias ( resource $im , bool $on )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Veja também imagecreatetruecolor().

imagealphablending
imagearc
Funções da GD


Desenha um elipse parcial

imageantialias
imagechar
Funções da GD
PHP Manual

imagearc

(PHP 4, PHP 5)

imagearc — Desenha um elipse parcial

Descrição

int imagearc ( resource $image , int $cx , int $cy , int $w , int $h , int $s , int $e , int $color )

imagearc() desenha um elipse parcial centrado em cx, cy (o canto superior esquerdo é 0, 0) na imagem representada por image. W e h representa respectivamente a largura e altura enquanto os pontos de início e final são representados em graus pelos parâmetros s e e. 0° esta localizado na posição de três horas, e o arco é desenhado no sentido horário.

Exemplo #1 Desenhando um círculo com imagearc()

<?php

// cria uma imagem de 200 * 200
$img = imagecreate(200, 200);

// aloca algumas cores
$white = imagecolorallocate($img, 255, 255, 255);
$black = imagecolorallocate($img, 0, 0, 0);
// desenha um círculo preto
imagearc($img, 100, 100, 150, 150, 0, 360, $black);

// envia a imagem para o browser
header("Content-type: image/png");
imagepng($img);

// libera a mémoria
imagedestroy($img);

?>

Veja também imageellipse(),
imagefilledellipse(), e
imagefilledarc().

imageantialias
imagechar
Funções da GD


Desenha um caractere horizontalmente

imagearc
imagecharup
Funções da GD
PHP Manual

imagechar

(PHP 4, PHP 5)

imagechar — Desenha um caractere horizontalmente

Descrição

int imagechar ( resource $image , int $font , int $x , int $y , string $c , int $color )

imagechar() desenha o primeiro caractere de c na imagem identificada por image com o canto superior esquerdo em x,y (em cima a esquerda é 0, 0) com a cor color. Se font for 1, 2, 3, 4 or 5, uma fonte interna é usada (onde os números mais altos correspondem a fonter maiores).

Exemplo #1 Exemplo imagechar()

<?php

$im = imagecreate(100, 100);

$string = 'PHP';

$bg = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);

// mostra um "P" preto no canto superior esquerdo
imagechar($im, 1, 0, 0, $string, $black);

header('Content-type: image/png');
imagepng($im);

?>

Veja também imagecharup() e imageloadfont().

imagearc
imagecharup
Funções da GD


Desenha um caractere verticalmente

imagechar
imagecolorallocate
Funções da GD
PHP Manual

imagecharup

(PHP 4, PHP 5)

imagecharup — Desenha um caractere verticalmente

Descrição

int imagecharup ( resource $image , int $font , int $x , int $y , string $c , int $color )

imagecharup() desenha o caractere c verticalmente na imagem identificada por image nas coordenadas x, y (em cima na esquerda é 0, 0) com a cor color. Se font for 1, 2, 3, 4 ou 5, uam fonte interna é usada.

Exemplo #1 Exemplo imagecharup()

<?php

$im = imagecreate(100, 100);

$string = 'Note that the first letter is a N';

$bg = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);

// mostra um "Z" preto num fundo branco
// na realidade um "N" de lado
imagecharup($im, 3, 10, 10, $string, $black);

header('Content-type: image/png');
imagepng($im);

?>

Veja também imagechar() e imageloadfont().

imagechar
imagecolorallocate
Funções da GD


Aloca uma cor para uma imagem

imagecharup
imagecolorallocatealpha
Funções da GD
PHP Manual

imagecolorallocate

(PHP 4, PHP 5)

imagecolorallocate — Aloca uma cor para uma imagem

Descrição

int imagecolorallocate ( resource $image , int $red , int $green , int $blue )

imagecolorallocate() retorna um identificador de cor representando a cor composta pelos componentes RGB. Os argumentos image é o retorno da função imagecreate(). red, green and blue são os valores de vermelho, azul e verde, respectivamente da cor solicitada. Estes parâmetros são inteiros entre 0 e 255 ou hexadecimais entre 0x00 e 0xFF. imagecolorallocate() deve ser utilizada para cada cor que será usada na imagem representada por image.

Nota:

A primeira utilização da função imagecolorallocate() prenche a cor do fundo.

<?php

// define o fundo como vermelho
$background = imagecolorallocate($im, 255, 0, 0);

// define algumas cores
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);

// do jeito hexadecimal
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);

?>

Retorna -1 se falhar.

Veja também imagecolorallocatealpha() e imagecolordeallocate().

imagecharup
imagecolorallocatealpha
Funções da GD


Aloca cor para uma imagem

imagecolorallocate
imagecolorat
Funções da GD
PHP Manual

imagecolorallocatealpha

(PHP 4 >= 4.3.2, PHP 5)

imagecolorallocatealpha — Aloca cor para uma imagem

Descrição

int imagecolorallocatealpha ( resource $image , int $red , int $green , int $blue , int $alpha )

imagecolorallocatealpha() funciona identicamente a imagecolorallocate() com a adição do parâmetro de transparencia alpha o qual deve ter um valor entre 0 e 127. 0 indica completamente opaco enquanto 127 indica completamente transparente.

Retorna FALSE se falhar.

Exemplo #1 Exemplo de uso de imagecolorallocatealpha()

<?php
$size = 300;
$image=imagecreatetruecolor($size, $size);

// something to get a white background with black border
$back = imagecolorallocate($image, 255, 255, 255);
$border = imagecolorallocate($image, 0, 0, 0);
imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);
imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);

$yellow_x = 100;
$yellow_y = 75;
$red_x    = 120;
$red_y    = 165;
$blue_x   = 187;
$blue_y   = 125;
$radius   = 150;

// allocate colors with alpha values
$yellow = imagecolorallocatealpha($image, 255, 255, 0, 75);
$red    = imagecolorallocatealpha($image, 255, 0, 0, 75);
$blue   = imagecolorallocatealpha($image, 0, 0, 255, 75);

// drawing 3 overlapped circle
imagefilledellipse($image, $yellow_x, $yellow_y, $radius, $radius, $yellow);
imagefilledellipse($image, $red_x, $red_y, $radius, $radius, $red);
imagefilledellipse($image, $blue_x, $blue_y, $radius, $radius, $blue);

// don't forget to output a correct header!
header('Content-type: image/png');

// and finally, output the result
imagepng($image);
imagedestroy($image);
?>

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagecolorallocate() e imagecolordeallocate().

imagecolorallocate
imagecolorat
Funções da GD


Retorna o índice da cor de um pixel

imagecolorallocatealpha
imagecolorclosest
Funções da GD
PHP Manual

imagecolorat

(PHP 4, PHP 5)

imagecolorat — Retorna o índice da cor de um pixel

Descrição

int imagecolorat ( resource $image , int $x , int $y )

Retorna o índice da cor de um pixel no local especificado da imagem image.

Se o PHP foi compilado com a biblioteca GD 2.0 ou superior e a imagem for truecolor, esta função retorna o valor RGB deste pixel como um inteiro. Use bitshifting e masking para acessar os valores distintos dos componentes vermelho, verde e azul:

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

x

Coordenada x do ponto

y

Coordenada y do ponto

Valor Retornado

Returns the index of the color.

Exemplos

Exemplo #1 Acessando os valores RGB distintos

<?php
$im = imagecreatefrompng("php.png");
$rgb = imagecolorat($im, 10, 15);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
?>

O exemplo acima irá imprimir algo similar a:

int(119)
int(123)
int(180)

Veja Também

  • imagecolorset() - Set the color for the specified palette index
  • imagecolorsforindex() - Retorna as cores de um índice

imagecolorallocatealpha
imagecolorclosest
Funções da GD


Retorna o índice da cor mais próxima da cor especificada

imagecolorat
imagecolorclosestalpha
Funções da GD
PHP Manual

imagecolorclosest

(PHP 4, PHP 5)

imagecolorclosest — Retorna o índice da cor mais próxima da cor especificada

Descrição

int imagecolorclosest ( resource $image , int $red , int $green , int $blue )

Retorna o índice da cor na paleta da imagem que seja mais "próxima" do valor RGB especificado.

A "distancia" entre a cor desejada e cada cor da paleta é calculada como se os valores RGB representassem pontos em um espaço tridimencional.

Se você criou a imagem a partir de um arquivo, apenas as cores usadas na imagem são resolvidas. Cores presentes apenas na paleta não são resolvidas.

Veja também imagecolorexact().

imagecolorat
imagecolorclosestalpha
Funções da GD


Retorna o índice da cor mais próxima da cor especificada + transparencia

imagecolorclosest
imagecolorclosesthwb
Funções da GD
PHP Manual

imagecolorclosestalpha

(PHP 4 >= 4.0.6, PHP 5)

imagecolorclosestalpha — Retorna o índice da cor mais próxima da cor especificada + transparencia

Descrição

int imagecolorclosestalpha ( resource $image , int $red , int $green , int $blue , int $alpha )

Retorna o índice da cor da paleta da imagem o qual seja mais "próximo" do valor RGB e de alpha level.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagecolorexactalpha().

imagecolorclosest
imagecolorclosesthwb
Funções da GD


Get the index of the color which has the hue, white and blackness

imagecolorclosestalpha
imagecolordeallocate
Funções da GD
PHP Manual

imagecolorclosesthwb

(PHP 4 >= 4.0.1, PHP 5)

imagecolorclosesthwb — Get the index of the color which has the hue, white and blackness

Descrição

int imagecolorclosesthwb ( resource $image , int $red , int $green , int $blue )

Get the index of the color which has the hue, white and blackness nearest the given color.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

red

Value of red component.

green

Value of green component.

blue

Value of blue component.

Valor Retornado

Returns an integer with the index of the color which has the hue, white and blackness nearest the given color.

Exemplos

Exemplo #1 Example of using imagecolorclosesthwb()

<?php
$im = imagecreatefromgif('php.gif');

echo 'HWB: ' . imagecolorclosesthwb($im, 116, 115, 152);

imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

HWB: 33

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows

Veja Também

  • imagecolorclosest() - Retorna o índice da cor mais próxima da cor especificada

imagecolorclosestalpha
imagecolordeallocate
Funções da GD


Desaloca uma cor para uma imagem

imagecolorclosesthwb
imagecolorexact
Funções da GD
PHP Manual

imagecolordeallocate

(PHP 4, PHP 5)

imagecolordeallocate — Desaloca uma cor para uma imagem

Descrição

int imagecolordeallocate ( resource $image , int $color )

A função imagecolordeallocate() desaloca uma cor previamente alocada com imagecolorallocate() ou imagecolorallocatealpha().

<?php
$white = imagecolorallocate($im, 255, 255, 255);
imagecolordeallocate($im, $white);
?>

Veja também imagecolorallocate() e imagecolorallocatealpha().

imagecolorclosesthwb
imagecolorexact
Funções da GD


Retorna o índice da cor especificada

imagecolordeallocate
imagecolorexactalpha
Funções da GD
PHP Manual

imagecolorexact

(PHP 4, PHP 5)

imagecolorexact — Retorna o índice da cor especificada

Descrição

int imagecolorexact ( resource $image , int $red , int $green , int $blue )

Retorna o índice da cor especificada na paleta da imagem.

Se a cor não existir na paleta de imagem, é retornado -1.

Se você criou a imagem a partir de um arquivo, apenas as cores usadas na imagem são resolvidas. Cores presentes apenas na paleta não são resolvidas.

Veja também imagecolorclosest().

imagecolordeallocate
imagecolorexactalpha
Funções da GD


Retorna o índice da cor especificada + transparencia

imagecolorexact
imagecolormatch
Funções da GD
PHP Manual

imagecolorexactalpha

(PHP 4 >= 4.0.6, PHP 5)

imagecolorexactalpha — Retorna o índice da cor especificada + transparencia

Descrição

int imagecolorexactalpha ( resource $image , int $red , int $green , int $blue , int $alpha )

Retorna o índice da cor especificada + transparencia na paleta da imagem especificada.

Se a cor não existir na paleta de imagem, é retornado -1.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagecolorclosestalpha().

imagecolorexact
imagecolormatch
Funções da GD


Faz com que a versão das cores da paleta sejam mais próximas da versão truecolor

imagecolorexactalpha
imagecolorresolve
Funções da GD
PHP Manual

imagecolormatch

(PHP 4 >= 4.3.0, PHP 5)

imagecolormatch — Faz com que a versão das cores da paleta sejam mais próximas da versão truecolor

Descrição

bool imagecolormatch ( resource $image1 , resource $image2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

image1 deve ser Truecolor, image2 deve ser uma paleta, e ambas image1 e image2 devem ter o mesmo tamanho.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagecreatetruecolor().

imagecolorexactalpha
imagecolorresolve
Funções da GD


Retorna o índice da cor especificada ou a alternativa mais próxima possível

imagecolormatch
imagecolorresolvealpha
Funções da GD
PHP Manual

imagecolorresolve

(PHP 4, PHP 5)

imagecolorresolve — Retorna o índice da cor especificada ou a alternativa mais próxima possível

Descrição

int imagecolorresolve ( resource $image , int $red , int $green , int $blue )

Esta função é garantida para retornar um índice de cor para a cor solicitada, ou a cor exata, ou a alternativa mais próxima possível.

Se você criou a imagem a partir de um arquivo, apenas as cores usadas na imagem são resolvidas. Cores presentes apenas na paleta não são resolvidas.

Veja também imagecolorclosest().

imagecolormatch
imagecolorresolvealpha
Funções da GD


Retorna o índice da cor especificada + transparência ou a sua alternativa mais próxima

imagecolorresolve
imagecolorset
Funções da GD
PHP Manual

imagecolorresolvealpha

(PHP 4 >= 4.0.6, PHP 5)

imagecolorresolvealpha — Retorna o índice da cor especificada + transparência ou a sua alternativa mais próxima

Descrição

int imagecolorresolvealpha ( resource $image , int $red , int $green , int $blue , int $alpha )

Esta função é garantida para retornar um índice de cor para a cor solicitada, ou a cor exata, ou a alternativa mais próxima possível.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagecolorclosestalpha().

imagecolorresolve
imagecolorset
Funções da GD


Set the color for the specified palette index

imagecolorresolvealpha
imagecolorsforindex
Funções da GD
PHP Manual

imagecolorset

(PHP 4, PHP 5)

imagecolorset — Set the color for the specified palette index

Descrição

void imagecolorset ( resource $image , int $index , int $red , int $green , int $blue [, int $alpha = 0 ] )

This sets the specified index in the palette to the specified color. This is useful for creating flood-fill-like effects in palleted images without the overhead of performing the actual flood-fill.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

index

An index in the palette.

red

Value of red component.

green

Value of green component.

blue

Value of blue component.

alpha

Value of alpha component.

This change exists in the development version of PHP, and will probably exist after 5.3.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
Future | The alpha parameter was added.

Exemplos

Exemplo #1 imagecolorset() example

<?php
// Create a 300x100 image
$im = imagecreate(300, 100);

// Set the background to be red
imagecolorallocate($im, 255, 0, 0);

// Get the color index for the background
$bg = imagecolorat($im, 0, 0);

// Set the backgrund to be blue
imagecolorset($im, $bg, 0, 0, 255);

// Output the image to the browser
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
?>

Veja Também

  • imagecolorat() - Retorna o índice da cor de um pixel

imagecolorresolvealpha
imagecolorsforindex
Funções da GD


Retorna as cores de um índice

imagecolorset
imagecolorstotal
Funções da GD
PHP Manual

imagecolorsforindex

(PHP 4, PHP 5)

imagecolorsforindex — Retorna as cores de um índice

Descrição

array imagecolorsforindex ( resource $image , int $index )

Obtém a cor de um especificado índice.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

index

Valor Retornado

Retorna um array associativo com as chaves vermelho, verde, azul e alpha que contém os apropriados valores para o especificado índice de cor.

Exemplos

Exemplo #1 Exemplo imagecolorsforindex()

<?php

// abre uma imagem
$im = imagecreatefrompng('nexen.png');

// obtém uma cor
$start_x = 40;
$start_y = 50;
$color_index = imagecolorat($im, $start_x, $start_y);

// torna legível
$color_tran = imagecolorsforindex($im, $color_index);

// Qual é?
print_r($color_tran);

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [red] => 226
    [green] => 222
    [blue] => 252
    [alpha] => 0
)

Veja Também

  • imagecolorat() - Retorna o índice da cor de um pixel
  • imagecolorexact() - Retorna o índice da cor especificada

imagecolorset
imagecolorstotal
Funções da GD


Retorna o número de cores na paleta de uma imagem

imagecolorsforindex
imagecolortransparent
Funções da GD
PHP Manual

imagecolorstotal

(PHP 4, PHP 5)

imagecolorstotal — Retorna o número de cores na paleta de uma imagem

Descrição

int imagecolorstotal ( resource $image )

Retorna o número de cores na paleta da imagem.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

Valor Retornado

Retorna o número de cores na especificada paleta da imagem ou 0 para imagens truecolor.

Veja Também

  • imagecolorat() - Retorna o índice da cor de um pixel
  • imagecolorsforindex() - Retorna as cores de um índice
  • imageistruecolor() - Indica quando uma imagem é uma imagem truecolor

imagecolorsforindex
imagecolortransparent
Funções da GD


Define uma cor como tansparente

imagecolorstotal
imageconvolution
Funções da GD
PHP Manual

imagecolortransparent

(PHP 4, PHP 5)

imagecolortransparent — Define uma cor como tansparente

Descrição

int imagecolortransparent ( resource $image [, int $color ] )

Define a cor transparente na dada image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

color

Um identificador de cor criado com imagecolorallocate()

Valor Retornado

O identificador da nova (ou atual, se nenhuma for especificada) cor transparente é retornado.

Notas

Nota:

A transparência é copiada apenas com imagecopymerged() e imagens true color, não com imagecopy() ou imagens de paleta.

Nota:

A cor transparente é uma propriedade da imagem, a transparencia não é uma propriedade da cor. Uma vez que você definiu uma cor para ser a cor de transparência, todas as regiões da imagem que eram desenhadas com esta cor anteriormente serão transparentes.

imagecolorstotal
imageconvolution
Funções da GD


Apply a 3x3 convolution matrix, using coefficient and offset

imagecolortransparent
imagecopy
Funções da GD
PHP Manual

imageconvolution

(PHP 5 >= 5.1.0)

imageconvolution — Apply a 3x3 convolution matrix, using coefficient and offset

Descrição

bool imageconvolution ( resource $image , array $matrix , float $div , float $offset )

Applies a convolution matrix on the image, using the given coefficient and offset.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

matrix

A 3x3 matrix: an array of three arrays of three floats.

div

The divisor of the result of the convolution, used for normalization.

offset

Color offset.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Embossing the PHP.net logo

<?php
$image = imagecreatefromgif('http://www.php.net/images/php.gif');

$emboss = array(array(2, 0, 0), array(0, -1, 0), array(0, 0, -1));
imageconvolution($image, $emboss, 1, 127);

header('Content-Type: image/png');
imagepng($image, null, 9);
?>

O exemplo acima irá imprimir:

Output of example : Embossing the PHP.net logo

Exemplo #2 Gaussian blur

<?php
$image = imagecreatetruecolor(180,40);

// Writes the text and apply a gaussian blur on the image
imagestring($image, 5, 10, 8, 'Gaussian Blur Text', 0x00ff00);
$gaussian = array(array(1.0, 2.0, 1.0), array(2.0, 4.0, 2.0), array(1.0, 2.0, 1.0));
imageconvolution($image, $gaussian, 16, 0);

// Rewrites the text for comparison
imagestring($image, 5, 10, 18, 'Gaussian Blur Text', 0x00ff00);

header('Content-Type: image/png');
imagepng($image, null, 9);
?>

O exemplo acima irá imprimir:

Output of example : Gaussian blur

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Veja Também

  • imagefilter() - Applies a filter to an image

imagecolortransparent
imagecopy
Funções da GD


Copia parte de uma imagem

imageconvolution
imagecopymerge
Funções da GD
PHP Manual

imagecopy

(PHP 4, PHP 5)

imagecopy — Copia parte de uma imagem

Descrição

int imagecopy ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h )

Copia parte de src_im em dst_im começando nas coordenadas x,y src_x, src_y com a largura de src_w e altura de src_h. A porção definida será copiada nas coordenadas x,y, dst_x e dst_y.

imageconvolution
imagecopymerge
Funções da GD


Copia e combina uma parte de uma imagem

imagecopy
imagecopymergegray
Funções da GD
PHP Manual

imagecopymerge

(PHP 4 >= 4.0.1, PHP 5)

imagecopymerge — Copia e combina uma parte de uma imagem

Descrição

int imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )

Copia parte de src_im em dst_im começando nas coordenadas src_x, src_y com a largura de src_w e altura de src_h. A porção definida será copiada nas coordenadas x,y, dst_x e dst_y. As duas imagens serão combinadas de acordo com pct o qual pode variar de 0 a 100. Quando pct = 0, não haverá modificação, quando 100 esta função funciona de modo identico a imagecopy() para imagens de paleta, enquanto implemente transparencia alpha para imagens true colour.

Nota:

Esta função foi adicionada no PHP 4.0.6

imagecopy
imagecopymergegray
Funções da GD


Copy and merge part of an image with gray scale

imagecopymerge
imagecopyresampled
Funções da GD
PHP Manual

imagecopymergegray

(PHP 4 >= 4.0.6, PHP 5)

imagecopymergegray — Copy and merge part of an image with gray scale

Descrição

bool imagecopymergegray ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )

imagecopymergegray() copy a part of src_im onto dst_im starting at the x,y coordinates src_x, src_y with a width of src_w and a height of src_h. The portion defined will be copied onto the x,y coordinates, dst_x and dst_y.

This function is identical to imagecopymerge() except that when merging it preserves the hue of the source by converting the destination pixels to gray scale before the copy operation.

Parâmetros

dst_im

Destination image link resource.

src_im

Source image link resource.

dst_x

x-coordinate of destination point.

dst_y

y-coordinate of destination point.

src_x

x-coordinate of source point.

src_y

y-coordinate of source point.

src_w

Source width.

src_h

Source height.

pct

The src_im will be changed to grayscale according to pct where 0 is fully grayscale and 100 is unchanged. When pct = 100 this function behaves identically to imagecopy() for pallete images, while it implements alpha transparency for true colour images.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagecopymergegray() usage

<?php
// Create image instances
$dest = imagecreatefromgif('php.gif');
$src = imagecreatefromgif('php.gif');

// Copy and merge - Gray = 20%
imagecopymergegray($dest, $src, 10, 10, 0, 0, 100, 47, 20);

// Output and free from memory
header('Content-Type: image/gif');
imagegif($dest);

imagedestroy($dest);
imagedestroy($src);
?>

imagecopymerge
imagecopyresampled
Funções da GD


Copy and resize part of an image with resampling

imagecopymergegray
imagecopyresized
Funções da GD
PHP Manual

imagecopyresampled

(PHP 4 >= 4.0.6, PHP 5)

imagecopyresampled — Copy and resize part of an image with resampling

Descrição

bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )

imagecopyresampled() copies a rectangular portion of one image to another image, smoothly interpolating pixel values so that, in particular, reducing the size of an image still retains a great deal of clarity.

In other words, imagecopyresampled() will take an rectangular area from src_image of width src_w and height src_h at position (src_x,src_y) and place it in a rectangular area of dst_image of width dst_w and height dst_h at position (dst_x,dst_y).

If the source and destination coordinates and width and heights differ, appropriate stretching or shrinking of the image fragment will be performed. The coordinates refer to the upper left corner. This function can be used to copy regions within the same image (if dst_image is the same as src_image) but if the regions overlap the results will be unpredictable.

Parâmetros

dst_image

Destination image link resource.

src_image

Source image link resource.

dst_x

x-coordinate of destination point.

dst_y

y-coordinate of destination point.

src_x

x-coordinate of source point.

src_y

y-coordinate of source point.

dst_w

Destination width.

dst_h

Destination height.

src_w

Source width.

src_h

Source height.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Simple example

This example will resample an image to half its original size.

<?php
// The file
$filename = 'test.jpg';
$percent = 0.5;

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = $width * $percent;
$new_height = $height * $percent;

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

// Output
imagejpeg($image_p, null, 100);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Simple example

Exemplo #2 Resampling an image proportionally

This example will display an image with the maximum width, or height, of 200 pixels.

<?php
// The file
$filename = 'test.jpg';

// Set a maximum height and width
$width = 200;
$height = 200;

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);

$ratio_orig = $width_orig/$height_orig;

if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
} else {
   $height = $width/$ratio_orig;
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
imagejpeg($image_p, null, 100);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Resampling an image proportionally

Notas

Nota:

There is a problem due to palette image limitations (255+1 colors). Resampling or filtering an image commonly needs more colors than 255, a kind of approximation is used to calculate the new resampled pixel and its color. With a palette image we try to allocate a new color, if that failed, we choose the closest (in theory) computed color. This is not always the closest visual color. That may produce a weird result, like blank (or visually blank) images. To skip this problem, please use a truecolor image as a destination image, such as one created by imagecreatetruecolor().

Veja Também

imagecopyresized() - Copy and resize part of an image

imagecopymergegray
imagecopyresized
Funções da GD


Copy and resize part of an image

imagecopyresampled
imagecreate
Funções da GD
PHP Manual

imagecopyresized

(PHP 4, PHP 5)

imagecopyresized — Copy and resize part of an image

Descrição

bool imagecopyresized ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )

imagecopyresized() copies a rectangular portion of one image to another image. dst_image is the destination image, src_image is the source image identifier.

In other words, imagecopyresized() will take an rectangular area from src_image of width src_w and height src_h at position (src_x,src_y) and place it in a rectangular area of dst_image of width dst_w and height dst_h at position (dst_x,dst_y).

If the source and destination coordinates and width and heights differ, appropriate stretching or shrinking of the image fragment will be performed. The coordinates refer to the upper left corner. This function can be used to copy regions within the same image (if dst_image is the same as src_image) but if the regions overlap the results will be unpredictable.

Parâmetros

dst_image

Destination image link resource.

src_image

Source image link resource.

dst_x

x-coordinate of destination point.

dst_y

y-coordinate of destination point.

src_x

x-coordinate of source point.

src_y

y-coordinate of source point.

dst_w

Destination width.

dst_h

Destination height.

src_w

Source width.

src_h

Source height.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Resizing an image

This example will display the image at half size.

<?php
// File and new size
$filename = 'test.jpg';
$percent = 0.5;

// Content type
header('Content-Type: image/jpeg');

// Get new sizes
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;

// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);

// Resize
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

// Output
imagejpeg($thumb);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Resizing an image

The image will be output at half size, though better quality could be obtained using imagecopyresampled().

Notas

Nota:

There is a problem due to palette image limitations (255+1 colors). Resampling or filtering an image commonly needs more colors than 255, a kind of approximation is used to calculate the new resampled pixel and its color. With a palette image we try to allocate a new color, if that failed, we choose the closest (in theory) computed color. This is not always the closest visual color. That may produce a weird result, like blank (or visually blank) images. To skip this problem, please use a truecolor image as a destination image, such as one created by imagecreatetruecolor().

Veja Também

imagecopyresampled() - Copy and resize part of an image with resampling

imagecopyresampled
imagecreate
Funções da GD


Cria uma nova imagem baseada em paleta

imagecopyresized
imagecreatefromgd2
Funções da GD
PHP Manual

imagecreate

(PHP 4, PHP 5)

imagecreate — Cria uma nova imagem baseada em paleta

Descrição

resource imagecreate ( int $width , int $height )

imagecreate() retorna um identificadir de imagem representando uma imagem em branco do tamanho especificado.

Nós recomendamos o uso de imagecreatetruecolor().

Parâmetros

width

A largura da imagem

height

A altura da imagem

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erros.

Exemplos

Exemplo #1 Criando um novo stream de imagem GD e mostrando uma imagem.

<?php
header("Content-type: image/png");
$im = @imagecreate(110, 20)
    or die("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate($im, 0, 0, 0);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  "A Simple Text String", $text_color);
imagepng($im);
imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • imagedestroy() - Destrói uma imagem
  • imagecreatetruecolor() - Cria uma nova imagem true color

imagecopyresized
imagecreatefromgd2
Funções da GD


Cria uma nova imagem apartir de um arquivo GD2 ou URL

imagecreate
imagecreatefromgd2part
Funções da GD
PHP Manual

imagecreatefromgd2

(PHP 4 >= 4.0.7, PHP 5)

imagecreatefromgd2 — Cria uma nova imagem apartir de um arquivo GD2 ou URL

Descrição

resource imagecreatefromgd2 ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreate
imagecreatefromgd2part
Funções da GD


Cria uma nova imagem apartir de uma parte de um arquivo GD ou URL

imagecreatefromgd2
imagecreatefromgd
Funções da GD
PHP Manual

imagecreatefromgd2part

(PHP 4 >= 4.0.7, PHP 5)

imagecreatefromgd2part — Cria uma nova imagem apartir de uma parte de um arquivo GD ou URL

Descrição

resource imagecreatefromgd2part ( string $filename , int $srcX , int $srcY , int $width , int $height )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromgd2
imagecreatefromgd
Funções da GD


Cria uma nova imagem apartir de um arquivo GD ou URL

imagecreatefromgd2part
imagecreatefromgif
Funções da GD
PHP Manual

imagecreatefromgd

(PHP 4 >= 4.0.7, PHP 5)

imagecreatefromgd — Cria uma nova imagem apartir de um arquivo GD ou URL

Descrição

resource imagecreatefromgd ( string $filename )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Notas

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromgd2part
imagecreatefromgif
Funções da GD


Cria uma nova imagem a partir de um arquivo ou URL

imagecreatefromgd
imagecreatefromjpeg
Funções da GD
PHP Manual

imagecreatefromgif

(PHP 4, PHP 5)

imagecreatefromgif — Cria uma nova imagem a partir de um arquivo ou URL

Descrição

resource imagecreatefromgif ( string $filename )

imagecreatefromgif() retorna um identificador de imagem representando a imagem obtida a partir de um nome de arquivo dado.

Para facilmente debugar o seguinte exemplo irá produzir um GIF errado:

Exemplo #1 Exemplo de como manipular um erro durante a criação

<?php
function LoadGif ($imgname)
{
    $im = @imagecreatefromgif ($imgname); /* Attempt to open */
    if (!$im) { /* See if it failed */
        $im = imagecreatetruecolor (150, 30); /* Create a blank image */
        $bgc = imagecolorallocate ($im, 255, 255, 255);
        $tc = imagecolorallocate ($im, 0, 0, 0);
        imagefilledrectangle ($im, 0, 0, 150, 30, $bgc);
        /* Output an errmsg */
        imagestring ($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    return $im;
}
header("Content-Type: image/gif");
$img = LoadGif("bogus.image");
imagegif($img);
?>

O exemplo acima irá imprimir algo similar a:

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Caminho para a imagem GIF

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erro.

Notas

Nota:

O suporte a GIF foi removido da biblioteca GD na versão 1.6, e adicionado novamente na versão 2.0.28. Esta função não está disponível entre essas versões.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromgd
imagecreatefromjpeg
Funções da GD


Cria uma nova imagem a a partir de um arquivo ou URL

imagecreatefromgif
imagecreatefrompng
Funções da GD
PHP Manual

imagecreatefromjpeg

(PHP 4, PHP 5)

imagecreatefromjpeg — Cria uma nova imagem a a partir de um arquivo ou URL

Descrição

resource imagecreatefromjpeg ( string $filename )

imagecreatefromjpeg() retorna um identificador de imagem representando a imagem obtida através do nome de arquivo dado.

Em falha imagecreatefromjpeg() exibe mensagem de erro. A qual infelizmente aparece como um link quebrado no browser. Para facilitar o debug, o exemplo asseguir irá prodizir um JPEG de erro:

Exemplo #1 Exemplo de como manipular um erro durante a criação

<?php
function LoadJpeg($imgname)
{
    $im = @imagecreatefromjpeg($imgname); /* Attempt to open */
    if (!$im) { /* See if it failed */
        $im  = imagecreate(150, 30); /* Create a black image */
        $bgc = imagecolorallocate($im, 255, 255, 255);
        $tc  = imagecolorallocate($im, 0, 0, 0);
        imagefilledrectangle($im, 0, 0, 150, 30, $bgc);
        /* Output an errmsg */
        imagestring($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    return $im;
}
header("Content-Type: image/jpeg");
$img = LoadJpeg("bogus.image");
imagejpeg($img);
?>

O exemplo acima irá imprimir algo similar a:

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Caminho da imagem JPEG

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erros.

Notas

Nota: O suporte a JPEG esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromgif
imagecreatefrompng
Funções da GD


Cria uma nova imagem a apratir de um arquivo ou URL

imagecreatefromjpeg
imagecreatefromstring
Funções da GD
PHP Manual

imagecreatefrompng

(PHP 4, PHP 5)

imagecreatefrompng — Cria uma nova imagem a apratir de um arquivo ou URL

Descrição

resource imagecreatefrompng ( string $filename )

imagecreatefrompng() retorna um identificador de imagem representando a imagem obtida através do nome de arquivo dado.

imagecreatefrompng() retorna uma string vazia em caso de falha. Também mostra uma mensagem de erro, a qual infelizmente aparece como um link quebrado no browser. Para facilitar o debug, o exemplo asseguir irá prodizir um PNG de erro:

Exemplo #1 Exemplo de como manipular um erro durante a criação

<?php
function LoadPNG($imgname)
{
    $im = @imagecreatefrompng($imgname); /* Attempt to open */
    if (!$im) { /* See if it failed */
        $im  = imagecreatetruecolor(150, 30); /* Create a blank image */
        $bgc = imagecolorallocate($im, 255, 255, 255);
        $tc  = imagecolorallocate($im, 0, 0, 0);
        imagefilledrectangle($im, 0, 0, 150, 30, $bgc);
        /* Output an errmsg */
        imagestring($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    return $im;
}
header("Content-Type: image/png");
$img = LoadPNG("bogus.image");
imagepng($img);
?>

O exemplo acima irá imprimir algo similar a:

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Caminho para a imagem PNG

Valor Retornado

Retorna um identificador de resource de imagem em sucesso, FALSE em erros.

Notas

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromjpeg
imagecreatefromstring
Funções da GD


Cria uma nova imagem a apartir da imagem na string

imagecreatefrompng
imagecreatefromwbmp
Funções da GD
PHP Manual

imagecreatefromstring

(PHP 4 >= 4.0.4, PHP 5)

imagecreatefromstring — Cria uma nova imagem a apartir da imagem na string

Descrição

resource imagecreatefromstring ( string $image )

imagecreatefromstring() retorna um identificador de imagem representando a imagem obtida a apartir da string dada.

imagecreatefrompng
imagecreatefromwbmp
Funções da GD


Cria uma nova imagem a apratir de um arquivo ou URL

imagecreatefromstring
imagecreatefromxbm
Funções da GD
PHP Manual

imagecreatefromwbmp

(PHP 4 >= 4.0.1, PHP 5)

imagecreatefromwbmp — Cria uma nova imagem a apratir de um arquivo ou URL

Descrição

resource imagecreatefromwbmp ( string $filename )

imagecreatefromwbmp() retorna um identificador de imagem representando a imagem obtida através do nome de arquivo dado.

imagecreatefromwbmp() retorna uma string vazia em caso de falha. Também mostra uma mensagem de erro, a qual infelizmente aparece como um link quebrado no browser. Para facilitar o debug, o exemplo asseguir irá prodizir um WBMP de erro:

Exemplo #1 Exemplo de como manipular um erro durante a criação

<?php
function LoadWBMP($imgname)
{
    $im = @imagecreatefromwbmp($imgname); /* Attempt to open */
    if (!$im) { /* See if it failed */
        $im  = imagecreatetruecolor (20, 20); /* Create a blank image */
        $bgc = imagecolorallocate($im, 255, 255, 255);
        $tc  = imagecolorallocate($im, 0, 0, 0);
        imagefilledrectangle($im, 0, 0, 10, 10, $bgc);
        /* Output an errmsg */
        imagestring($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    return $im;
}
?>

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Caminho para imagem WBMP

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erros.

Notas

Nota: O suporte a WBMP esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromstring
imagecreatefromxbm
Funções da GD


Cria uma nova imagem a a partir de um arquivo ou URL

imagecreatefromwbmp
imagecreatefromxpm
Funções da GD
PHP Manual

imagecreatefromxbm

(PHP 4 >= 4.0.1, PHP 5)

imagecreatefromxbm — Cria uma nova imagem a a partir de um arquivo ou URL

Descrição

resource imagecreatefromxbm ( string $filename )

imagecreatefromxbm() retorna um identificador de imagem representando a imagem obtida através do nome de arquivo dado.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

Parâmetros

filename

Caminho para imagem XBM

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erros.

imagecreatefromwbmp
imagecreatefromxpm
Funções da GD


Cria uma nova imagem a apratir de um arquivo ou URL

imagecreatefromxbm
imagecreatetruecolor
Funções da GD
PHP Manual

imagecreatefromxpm

(PHP 4 >= 4.0.1, PHP 5)

imagecreatefromxpm — Cria uma nova imagem a apratir de um arquivo ou URL

Descrição

resource imagecreatefromxpm ( string $filename )

imagecreatefromxpm() retorna um identificador de imagem representando a imagem obtida através do nome de arquivo dado.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

Parâmetros

filename

Caminho para imagem XPM

Valor Retornado

Retorna um resource identificador da imagem em sucesso, FALSE em erros.

Valor Retornado

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Aviso

A versões Windows do PHP anteriores ao PHP 4.3.0 não suportam acesso a arquivos remotos através desta função, mesmo se allow_url_fopen estiver ativado.

imagecreatefromxbm
imagecreatetruecolor
Funções da GD


Cria uma nova imagem true color

imagecreatefromxpm
imagedashedline
Funções da GD
PHP Manual

imagecreatetruecolor

(PHP 4 >= 4.0.6, PHP 5)

imagecreatetruecolor — Cria uma nova imagem true color

Descrição

resource imagecreatetruecolor ( int $x_size , int $y_size )

imagecreatetruecolor() retorna um identificador de imagem representando uma imagem preta de tamanho x_size por y_size.

Exemplo #1 Criando um novo stream de imagem GD e enviando a imagem.

<?php
header ("Content-type: image/png");
$im = @imagecreatetruecolor(50, 100)
      or die("Cannot Initialize new GD image stream");
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  "A Simple Text String", $text_color);
imagepng($im);
imagedestroy($im);
?>

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Nota:

Esta função não funcionará com arquivos de formato GIF.

Veja também imagedestroy() e imagecreate().

imagecreatefromxpm
imagedashedline
Funções da GD


Desenha uma linha pontilhada

imagecreatetruecolor
imagedestroy
Funções da GD
PHP Manual

imagedashedline

(PHP 4, PHP 5)

imagedashedline — Desenha uma linha pontilhada

Descrição

bool imagedashedline ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )

Esta função está obsoleta. Ao invés use uma combinação de imagesetstyle() e imageline().

imagecreatetruecolor
imagedestroy
Funções da GD


Destrói uma imagem

imagedashedline
imageellipse
Funções da GD
PHP Manual

imagedestroy

(PHP 4, PHP 5)

imagedestroy — Destrói uma imagem

Descrição

bool imagedestroy ( resource $image )

imagedestroy() libera qualquer memória associada com a imagem image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

imagedashedline
imageellipse
Funções da GD


Desenha um elipse

imagedestroy
imagefill
Funções da GD
PHP Manual

imageellipse

(PHP 4 >= 4.0.6, PHP 5)

imageellipse — Desenha um elipse

Descrição

int imageellipse ( resource $image , int $cx , int $cy , int $w , int $h , int $color )

imageellipse() desenha um elipse centrado na posição cx, cy (em cima a esquerda é 0, 0) na imagem representada por image. W e h especifica a largura e altura do elipse, respectivamente. A cor do elipse é especificada por color.

Nota:

Esta função foi adicionada no PHP 4.0.6 e requer GD 2.0.2 ou posterior que pode ser obtida em » http://www.libgd.org/

Exemplo #1 Exemplo imageellipse()

<?php

// cria uma imagem em branco
$image = imagecreate(400, 300);

// prenche a cor do fundo
$bg = imagecolorallocate($image, 0, 0, 0);

// escolhe uma cor para o elipse
$col_ellipse = imagecolorallocate($image, 255, 255, 255);

// desenha o elipse
imageellipse($image, 200, 150, 300, 200, $col_ellipse);

// mostra a imagem
header("Content-type: image/png");
imagepng($image);

?>

Veja também imagefilledellipse() e imagearc().

imagedestroy
imagefill
Funções da GD


Flood fill

imageellipse
imagefilledarc
Funções da GD
PHP Manual

imagefill

(PHP 4, PHP 5)

imagefill — Flood fill

Descrição

bool imagefill ( resource $image , int $x , int $y , int $color )

Performs a flood fill starting at the given coordinate (top left is 0, 0) with the given color in the image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

x

x-coordinate of start point.

y

y-coordinate of start point.

color

The fill color. A color identifier created with imagecolorallocate().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagefill() example

<?php

$im = imagecreatetruecolor(100, 100);

// sets background to red
$red = imagecolorallocate($im, 255, 0, 0);
imagefill($im, 0, 0, $red);

header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagefill()

Veja Também

  • imagecolorallocate() - Aloca uma cor para uma imagem

imageellipse
imagefilledarc
Funções da GD


Draw a partial arc and fill it

imagefill
imagefilledellipse
Funções da GD
PHP Manual

imagefilledarc

(PHP 4 >= 4.0.6, PHP 5)

imagefilledarc — Draw a partial arc and fill it

Descrição

bool imagefilledarc ( resource $image , int $cx , int $cy , int $width , int $height , int $start , int $end , int $color , int $style )

Draws a partial arc centered at the specified coordinate in the given image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

cx

x-coordinate of the center.

cy

y-coordinate of the center.

width

The arc width.

height

The arc height.

start

The arc start angle, in degrees.

end

The arc end angle, in degrees. 0° is located at the three-o'clock position, and the arc is drawn clockwise.

color

A color identifier created with imagecolorallocate().

style

A bitwise OR of the following possibilities:

  1. IMG_ARC_PIE
  2. IMG_ARC_CHORD
  3. IMG_ARC_NOFILL
  4. IMG_ARC_EDGED
IMG_ARC_PIE and IMG_ARC_CHORD are mutually exclusive; IMG_ARC_CHORD just connects the starting and ending angles with a straight line, while IMG_ARC_PIE produces a rounded edge. IMG_ARC_NOFILL indicates that the arc or chord should be outlined, not filled. IMG_ARC_EDGED, used together with IMG_ARC_NOFILL, indicates that the beginning and ending angles should be connected to the center - this is a good way to outline (rather than fill) a 'pie slice'.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Creating a 3D looking pie

<?php

// create image
$image = imagecreatetruecolor(100, 100);

// allocate some colors
$white    = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
$gray     = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);
$darkgray = imagecolorallocate($image, 0x90, 0x90, 0x90);
$navy     = imagecolorallocate($image, 0x00, 0x00, 0x80);
$darknavy = imagecolorallocate($image, 0x00, 0x00, 0x50);
$red      = imagecolorallocate($image, 0xFF, 0x00, 0x00);
$darkred  = imagecolorallocate($image, 0x90, 0x00, 0x00);

// make the 3D effect
for ($i = 60; $i > 50; $i--) {
   imagefilledarc($image, 50, $i, 100, 50, 0, 45, $darknavy, IMG_ARC_PIE);
   imagefilledarc($image, 50, $i, 100, 50, 45, 75 , $darkgray, IMG_ARC_PIE);
   imagefilledarc($image, 50, $i, 100, 50, 75, 360 , $darkred, IMG_ARC_PIE);
}

imagefilledarc($image, 50, 50, 100, 50, 0, 45, $navy, IMG_ARC_PIE);
imagefilledarc($image, 50, 50, 100, 50, 45, 75 , $gray, IMG_ARC_PIE);
imagefilledarc($image, 50, 50, 100, 50, 75, 360 , $red, IMG_ARC_PIE);

// flush image
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Creating a 3D looking pie

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

imagefill
imagefilledellipse
Funções da GD


Desenha um elipse prenchido

imagefilledarc
imagefilledpolygon
Funções da GD
PHP Manual

imagefilledellipse

(PHP 4 >= 4.0.6, PHP 5)

imagefilledellipse — Desenha um elipse prenchido

Descrição

bool imagefilledellipse ( resource $image , int $cx , int $cy , int $w , int $h , int $color )

imagefilledellipse() desenha um elipse centrado em cx, cy (em cima na esquerda é 0, 0) na imagem representada por image. W e h especifica a largura e altura do elipse respectivamente. O elipse é prenchido com a cor color. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

Esta função foi adicionada no PHP 4.0.6 e precisa da GD 2.0.1 ou posterior.

Exemplo #1 Exemplo imagefilledellipse()

<?php

// cria uma imagem em branco
$image = imagecreate(400, 300);

// prenche a cor do fundo
$bg = imagecolorallocate($image, 0, 0, 0);

// escolhe uma cor para o elipse
$col_ellipse = imagecolorallocate($image, 255, 255, 255);

// desenha o elipse branco
imagefilledellipse($image, 200, 150, 300, 200, $col_ellipse);

// mostra a imagem
header("Content-type: image/png");
imagepng($image);

?>

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imageellipse() e imagefilledarc().

imagefilledarc
imagefilledpolygon
Funções da GD


Desenha um poligono prenchido

imagefilledellipse
imagefilledrectangle
Funções da GD
PHP Manual

imagefilledpolygon

(PHP 4, PHP 5)

imagefilledpolygon — Desenha um poligono prenchido

Descrição

int imagefilledpolygon ( resource $image , array $points , int $num_points , int $color )

imagefilledpolygon() cria um poligono prenchido na imagem image. points é uma matriz PHP contendo os vertives do poligono, ex. points[0] = x0, points[1] = y0, points[2] = x1, points[3] = y1, etc. num_points é o número total de vertices.

Exemplo #1 Exemplo imagefilledpolygon()

<?php

// este exemplo foi dado por ecofarm at mullum dot com dot au

// define uma matriz de pontos para o poligono
$values = array(
  0  => 40,    // x1
  1  => 50,    // y1
  2  => 20,    // x2
  3  => 240,   // y2
  4  => 60,    // x3
  5  => 60,    // y3
  6  => 240,   // x4
  7  => 20,    // y4
  8  => 50,    // x5
  9  => 40,    // y5
  10 => 10,    // x6
  11 => 10,    // y6
);

// cria a imagem
$im = imagecreate(250, 250);

// algumas cores
$bg   = imagecolorallocate($im, 255, 255, 255);
$blue = imagecolorallocate($im, 0, 0, 255);

// desenha um poligono
imagefilledpolygon($im, $values, 6, $blue );

// envia a imagem
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);

?>

imagefilledellipse
imagefilledrectangle
Funções da GD


Desenha um retângulo prenchido

imagefilledpolygon
imagefilltoborder
Funções da GD
PHP Manual

imagefilledrectangle

(PHP 4, PHP 5)

imagefilledrectangle — Desenha um retângulo prenchido

Descrição

int imagefilledrectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )

imagefilledrectangle() cria um retângulo prenchido da cor color na imagem image começando nas coordenadas de cima aesquerda x1, y1 e terminando nas coordenadas de baixo a direita x2, y2. 0, 0 é o canto superior esquerdo da imagem.

imagefilledpolygon
imagefilltoborder
Funções da GD


Flood fill to specific color

imagefilledrectangle
imagefilter
Funções da GD
PHP Manual

imagefilltoborder

(PHP 4, PHP 5)

imagefilltoborder — Flood fill to specific color

Descrição

bool imagefilltoborder ( resource $image , int $x , int $y , int $border , int $color )

imagefilltoborder() performs a flood fill whose border color is defined by border. The starting point for the fill is x, y (top left is 0, 0) and the region is filled with color color.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

x

x-coordinate of start.

y

y-coordinate of start.

border

The border color. A color identifier created with imagecolorallocate().

color

The fill color. A color identifier created with imagecolorallocate().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Filling an ellipse with a color

<?php
// Create the image handle, set the background to white
$im = imagecreatetruecolor(100, 100);
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 255, 255, 255));

// Draw an ellipse to fill with a black border
imageellipse($im, 50, 50, 50, 50, imagecolorallocate($im, 0, 0, 0));

// Set the border and fill colors
$border = imagecolorallocate($im, 0, 0, 0);
$fill = imagecolorallocate($im, 255, 0, 0);

// Fill the selection
imagefilltoborder($im, 50, 50, $border, $fill);

// Output and free memory
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Filling an ellipse with a color

imagefilledrectangle
imagefilter
Funções da GD


Applies a filter to an image

imagefilltoborder
imagefontheight
Funções da GD
PHP Manual

imagefilter

(PHP 5)

imagefilter — Applies a filter to an image

Descrição

bool imagefilter ( resource $image , int $filtertype [, int $arg1 [, int $arg2 [, int $arg3 [, int $arg4 ]]]] )

imagefilter() applies the given filter filtertype on the image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filtertype

filtertype can be one of the following:

  • IMG_FILTER_NEGATE: Reverses all colors of the image.
  • IMG_FILTER_GRAYSCALE: Converts the image into grayscale.
  • IMG_FILTER_BRIGHTNESS: Changes the brightness of the image. Use arg1 to set the level of brightness.
  • IMG_FILTER_CONTRAST: Changes the contrast of the image. Use arg1 to set the level of contrast.
  • IMG_FILTER_COLORIZE: Like IMG_FILTER_GRAYSCALE, except you can specify the color. Use arg1, arg2 and arg3 in the form of red, blue, green and arg4 for the alpha channel. The range for each color is 0 to 255.
  • IMG_FILTER_EDGEDETECT: Uses edge detection to highlight the edges in the image.
  • IMG_FILTER_EMBOSS: Embosses the image.
  • IMG_FILTER_GAUSSIAN_BLUR: Blurs the image using the Gaussian method.
  • IMG_FILTER_SELECTIVE_BLUR: Blurs the image.
  • IMG_FILTER_MEAN_REMOVAL: Uses mean removal to achieve a "sketchy" effect.
  • IMG_FILTER_SMOOTH: Makes the image smoother. Use arg1 to set the level of smoothness.
  • IMG_FILTER_PIXELATE: Applies pixelation effect to the image, use arg1 to set the block size and arg2 to set the pixelation effect mode.

arg1

  • IMG_FILTER_BRIGHTNESS: Brightness level.
  • IMG_FILTER_CONTRAST: Contrast level.
  • IMG_FILTER_COLORIZE: Value of red component.
  • IMG_FILTER_SMOOTH: Smoothness level.
  • IMG_FILTER_PIXELATE: Block size in pixels.

arg2

  • IMG_FILTER_COLORIZE: Value of green component.
  • IMG_FILTER_PIXELATE: Whether to use advanced pixelation effect or not (defaults to FALSE).

arg3

  • IMG_FILTER_COLORIZE: Value of blue component.

arg4

  • IMG_FILTER_COLORIZE: Alpha channel, A value between 0 and 127. 0 indicates completely opaque while 127 indicates completely transparent.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.3.0 | Pixelation support (IMG_FILTER_PIXELATE) was added.
5.2.5 | Alpha support for IMG_FILTER_COLORIZE was added.

Exemplos

Exemplo #1 imagefilter() grayscale example

<?php
$im = imagecreatefrompng('dave.png');

if($im && imagefilter($im, IMG_FILTER_GRAYSCALE))
{
    echo 'Image converted to grayscale.';

    imagepng($im, 'dave.png');
}
else
{
    echo 'Conversion to grayscale failed.';
}

imagedestroy($im);
?>

Exemplo #2 imagefilter() brightness example

<?php
$im = imagecreatefrompng('sean.png');

if($im && imagefilter($im, IMG_FILTER_BRIGHTNESS, 20))
{
    echo 'Image brightness changed.';

    imagepng($im, 'sean.png');
    imagedestroy($im);
}
else
{
    echo 'Image brightness change failed.';
}
?>

Exemplo #3 imagefilter() colorize example

<?php
$im = imagecreatefrompng('philip.png');

/* R, G, B, so 0, 255, 0 is green */
if($im && imagefilter($im, IMG_FILTER_COLORIZE, 0, 255, 0))
{
    echo 'Image successfully shaded green.';

    imagepng($im, 'philip.png');
    imagedestroy($im);
}
else
{
    echo 'Green shading failed.';
}
?>

Exemplo #4 imagefilter() negate example

<?php
// Define our negate function so its portable for
// php versions without imagefilter()
function negate($im)
{
    if(function_exists('imagefilter'))
    {
        return imagefilter($im, IMG_FILTER_NEGATE);
    }

    for($x = 0; $x < imagesx($im); ++$x)
    {
        for($y = 0; $y < imagesy($im); ++$y)
        {
            $index = imagecolorat($im, $x, $y);
            $rgb = imagecolorsforindex($index);
            $color = imagecolorallocate($im, 255 - $rgb['red'], 255 - $rgb['green'], 255 - $rgb['blue']);

            imagesetpixel($im, $x, $y, $color);
        }
    }

    return(true);
}

$im = imagecreatefromjpeg('kalle.jpg');

if($im && negate($im))
{
    echo 'Image successfully converted to negative colors.';

    imagejpeg($im, 'kalle.jpg', 100);
    imagedestroy($im);
}
else
{
    echo 'Converting to negative colors failed.';
}
?>

Exemplo #5 imagefilter() pixelate example

<?php
// Load the PHP logo, we need to create two instances
// to show the differences
$logo1 = imagecreatefrompng('./php.png');
$logo2 = imagecreatefrompng('./php.png');

// Create the image instance we want to show the
// differences on
$output = imagecreatetruecolor(imagesx($logo1) * 2, imagesy($logo1));

// Apply pixelation to each instance, with a block
// size of 3
imagefilter($logo1, IMG_FILTER_PIXELATE, 3);
imagefilter($logo2, IMG_FILTER_PIXELATE, 3, true);

// Merge the differences onto the output image
imagecopy($output, $logo1, 0, 0, 0, 0, imagesx($logo1) - 1, imagesy($logo1) - 1);
imagecopy($output, $logo2, imagesx($logo2), 0, 0, 0, imagesx($logo2) - 1, imagesy($logo2) - 1);
imagedestroy($logo1);
imagedestroy($logo2);

// Output the differences
header('Content-Type: image/png');
imagepng($output);
imagedestroy($output);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagefilter() pixelate

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Veja Também

  • imageconvolution() - Apply a 3x3 convolution matrix, using coefficient and offset

imagefilltoborder
imagefontheight
Funções da GD


Retorna a altura da fonte

imagefilter
imagefontwidth
Funções da GD
PHP Manual

imagefontheight

(PHP 4, PHP 5)

imagefontheight — Retorna a altura da fonte

Descrição

int imagefontheight ( int $font )

Retorna a altura em pixel de um caractere na fonte especificada.

Parâmetros

font

Pode ser 1, 2, 3, 4, 5 para as fontes embutidas na codificação latin2 (aonde números maiores correspondem a fontes mais largas) ou qualquer um dos seus própios identificadores de fonte registrado com imageloadfont().

Valor Retornado

Retorna a altura do pixel.

Veja Também

  • imagefontwidth() - Retorna a largura da fonte
  • imageloadfont() - Carrega uma nova fonte

imagefilter
imagefontwidth
Funções da GD


Retorna a largura da fonte

imagefontheight
imageftbbox
Funções da GD
PHP Manual

imagefontwidth

(PHP 4, PHP 5)

imagefontwidth — Retorna a largura da fonte

Descrição

int imagefontwidth ( int $font )

Retorna a largura em pixel de um caractere da fonte.

Parâmetros

font

Pode ser 1, 2, 3, 4, 5 para as fontes embutidas na codificação latin2 (aonde números maiores correspondem a fontes mais largas) ou qualquer um dos seus própios identificadores de fonte registrado com imageloadfont().

Valor Retornado

Retorna a largura do pixel.

Veja Também

  • imagefontheight() - Retorna a altura da fonte
  • imageloadfont() - Carrega uma nova fonte

imagefontheight
imageftbbox
Funções da GD


Give the bounding box of a text using fonts via freetype2

imagefontwidth
imagefttext
Funções da GD
PHP Manual

imageftbbox

(PHP 4 >= 4.0.7, PHP 5)

imageftbbox — Give the bounding box of a text using fonts via freetype2

Descrição

array imageftbbox ( float $size , float $angle , string $fontfile , string $text [, array $extrainfo ] )

This function calculates and returns the bounding box in pixels for a FreeType text.

Parâmetros

size

The font size. Depending on your version of GD, this should be specified as the pixel size (GD1) or point size (GD2).

angle

Angle in degrees in which text will be measured.

fontfile

The name of the TrueType font file (can be a URL). Depending on which version of the GD library that PHP is using, it may attempt to search for files that do not begin with a leading '/' by appending '.ttf' to the filename and searching along a library-defined font path.

text

The string to be measured.

extrainfo

Possible array indexes for extrainfo
Key | Type | Meaning
linespacing | float | Defines drawing linespacing

Valor Retornado

imageftbbox() returns an array with 8 elements representing four points making the bounding box of the text:

0 | lower left corner, X position
1 | lower left corner, Y position
2 | lower right corner, X position
3 | lower right corner, Y position
4 | upper right corner, X position
5 | upper right corner, Y position
6 | upper left corner, X position
7 | upper left corner, Y position

The points are relative to the text regardless of the angle, so "upper left" means in the top left-hand corner seeing the text horizontally.

Exemplos

Exemplo #1 imageftbbox() example

<?php
// Create a 300x150 image
$im = imagecreatetruecolor(300, 150);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);

// Set the background to be white
imagefilledrectangle($im, 0, 0, 299, 299, $white);

// Path to our font file
$font = './arial.ttf';

// First we create our bounding box
$bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group');

// This is our cordinates for X and Y
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;

imagefttext($im, 10, 0, $x, $y, $black, $font, 'The PHP Documentation Group');

// Output to browser
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Nota: Esta função esta disponível apenas se o PHP for compilado com suporte a freetype (--with-freetype-dir=DIR )

Histórico

Versão | Descrição
4.3.5 | extrainfo was made optional.

imagefontwidth
imagefttext
Funções da GD


Escreve texto na imagem usando fontes FreeType 2

imageftbbox
imagegammacorrect
Funções da GD
PHP Manual

imagefttext

(PHP 4 >= 4.0.7, PHP 5)

imagefttext — Escreve texto na imagem usando fontes FreeType 2

Descrição

array imagefttext ( resource $image , float $size , float $angle , int $x , int $y , int $col , string $font_file , string $text [, array $extrainfo ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

size

angle

x

y

col

font_file

text

extrainfo

Valor Retornado

Esta função retorna um array contendo os seguintes elementos:

0 | coordenada x inferior à esquerda
1 | coordenada y inferior à esquerda
2 | coordenada x inferior à direita
3 | coordenada y inferior à direita
4 | coordenada x superior à direita
5 | coordenada y superior à direita
6 | coordenada x superior à esquerda
7 | coordenada y superior à esquerda

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Nota: Esta função esta disponível apenas se o PHP for compilado com suporte a freetype (--with-freetype-dir=DIR )

Histórico

Versão | Descrição
4.3.5 | extrainfo tornou-se opcional.

imageftbbox
imagegammacorrect
Funções da GD


Apply a gamma correction to a GD image

imagefttext
imagegd2
Funções da GD
PHP Manual

imagegammacorrect

(PHP 4, PHP 5)

imagegammacorrect — Apply a gamma correction to a GD image

Descrição

bool imagegammacorrect ( resource $image , float $inputgamma , float $outputgamma )

Applies gamma correction to the given gd image given an input and an output gamma.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

inputgamma

The input gamma.

outputgamma

The output gamma.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagegammacorrect() usage

<?php
// Create image instance
$im = imagecreatefromgif('php.gif');

// Correct gamma, out = 1.537
imagegammacorrect($im, 1.0, 1.537);

// Save and free image
imagegif($im, './php_gamma_corrected.gif');
imagedestroy($im);
?>

imagefttext
imagegd2
Funções da GD


Envia uma imagem GD2

imagegammacorrect
imagegd
Funções da GD
PHP Manual

imagegd2

(PHP 4 >= 4.0.7, PHP 5)

imagegd2 — Envia uma imagem GD2

Descrição

bool imagegd2 ( resource $image [, string $filename [, int $chunk_size [, int $type ]]] )

imagegd2() envia uma imagem GD2 para o browser ou um arquivo.

O parâmetro opcional type pode ser IMG_GD2_RAW ou IMG_GD2_COMPRESSED. O padrão é IMG_GD2_RAW.

Nota:

Os parâmetros opcionais chunk_size e type tornaram-se disponíveis no PHP 4.3.2.

imagegammacorrect
imagegd
Funções da GD


Envia a imagem GD para o browser ou um arquivo

imagegd2
imagegif
Funções da GD
PHP Manual

imagegd

(PHP 4 >= 4.0.7, PHP 5)

imagegd — Envia a imagem GD para o browser ou um arquivo

Descrição

bool imagegd ( resource $image [, string $filename ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

imagegd2
imagegif
Funções da GD


Envia uma imagem para o browser ou arquivo

imagegd
imagegrabscreen
Funções da GD
PHP Manual

imagegif

(PHP 4, PHP 5)

imagegif — Envia uma imagem para o browser ou arquivo

Descrição

bool imagegif ( resource $image [, string $filename ] )

imagegif() cria um arquivo GIF em filename a partir da imagem image. O parâmetro image é o retorno da função imagecreate() ou imagecreatefrom*.

O formato da imagem será GIF87a a menos que a imagem tenha sido feita transparente com imagecolortransparent(), neste caso o formato da imagem será GIF89a.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filename

O caminho para salvar o arquivo. Se não definido ou NULL, o stream da imagem será mostrado diretamente.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Já que todo o suporte GIF foi removido da biblioteca GD na versão 1.6, esta função não esta disponível se você esta usando esta versão da biblioteca GD. O suporte é esperado para retornar em uma versão subsequente ao lançamento do suporte GIF na biblioteca GD no meio de 2004. Para maiores informações veja o site do projeto » GD Project.

O seguinte pedaço de código permite a você criar aplicações PHP mais portáveis auto-detectando o tipo de suporte GD que esta disponível. Substitua a sequencia header ("Content-type: image/gif"); imagegif ($im); por uma sequencia mais flexível:

<?php
if (function_exists("imagegif")) {
    header("Content-type: image/gif");
    imagegif($im);
} elseif (function_exists("imagejpeg")) {
    header("Content-type: image/jpeg");
    imagejpeg($im, "", 0.5);
} elseif (function_exists("imagepng")) {
    header("Content-type: image/png");
    imagepng($im);
} elseif (function_exists("imagewbmp")) {
    header("Content-type: image/vnd.wap.wbmp");
    imagewbmp($im);
} else {
    die("No image support in this PHP server");
}
?>

Nota:

A partir das versões 3.0.18 e 4.0.2 você pode usar a função imagetypes() no lugar de function_exists() para conferir a presença dos vários formatos de imagem suportados:

<?php
if (imagetypes() & IMG_GIF) {
    header ("Content-type: image/gif");
    imagegif ($im);
} elseif (imagetypes() & IMG_JPG) {
    /* ... etc. */
}
?>

Veja Também

  • imagepng() - Envia uma imagem PNG para o browser ou para um arquivo
  • imagewbmp() - Envia uma imagem para o browser ou arquivo
  • imagejpeg() - Envia a imagem para o borwser ou arquivo
  • imagetypes() - Retorna os tipos de imagens suportados por esta instalação do PHP

imagegd
imagegrabscreen
Funções da GD


Captures the whole screen

imagegif
imagegrabwindow
Funções da GD
PHP Manual

imagegrabscreen

(PHP 5 >= 5.2.2)

imagegrabscreen — Captures the whole screen

Descrição

resource imagegrabscreen ( void )

Grabs a screenshot of the whole screen.

Valor Retornado

Returns an image resource identifier on success, FALSE on failure.

Exemplos

Exemplo #1 imagegrabscreen() example

This example demonstrates how to take a screenshot of the current screen and save it as a png image.

<?php
$im = imagegrabscreen();
imagepng($im, "myscreenshot.png");
imagedestroy($im);
?>

Notas

Nota:

This function is only available on Windows.

Veja Também

  • imagegrabwindow() - Captures a window

imagegif
imagegrabwindow
Funções da GD


Captures a window

imagegrabscreen
imageinterlace
Funções da GD
PHP Manual

imagegrabwindow

(PHP 5 >= 5.2.2)

imagegrabwindow — Captures a window

Descrição

resource imagegrabwindow ( int $window_handle [, int $client_area = 0 ] )

Grabs a window or its client area using a windows handle (HWND property in COM instance)

Parâmetros

window_handle

The HWND window ID.

client_area

Include the client area of the application window.

Valor Retornado

Returns an image resource identifier on success, FALSE on failure.

Erros

E_NOTICE is issued if window_handle is invalid window handle. E_WARNING is issued if the Windows API is too old.

Exemplos

Exemplo #1 imagegrabwindow() example

Capture a window (IE for example)

<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$im = imagegrabwindow($handle);
$browser->Quit();
imagepng($im, "iesnap.png");
imagedestroy($im);
?>

Capture a window (IE for example) but with its content

<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://www.libgd.org");

/* Still working? */
while ($browser->Busy) {
    com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
imagedestroy($im);
?>

Notas

Nota:

This function is only available on Windows.

Veja Também

  • imagegrabscreen() - Captures the whole screen

imagegrabscreen
imageinterlace
Funções da GD


Ativa ou desativa o entrelaçamento

imagegrabwindow
imageistruecolor
Funções da GD
PHP Manual

imageinterlace

(PHP 4, PHP 5)

imageinterlace — Ativa ou desativa o entrelaçamento

Descrição

int imageinterlace ( resource $image [, int $interlace ] )

imageinterlace() muda o bit de entrelaçamento para on ou off.

Se o bit de entrelace for definido e a imagem usada for uma imagem JPEG, a imagem será criada como um JPEG progressivo.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

interlace

Se diferente de zero, a imagem será entrelaçada, então o bit de entrelace é desativado.

Valor Retornado

Retorna 1 se o bit de entrelace é definido para a imagem, 0 caso contrário.

imagegrabwindow
imageistruecolor
Funções da GD


Indica quando uma imagem é uma imagem truecolor

imageinterlace
imagejpeg
Funções da GD
PHP Manual

imageistruecolor

(PHP 4 >= 4.3.2, PHP 5)

imageistruecolor — Indica quando uma imagem é uma imagem truecolor

Descrição

bool imageistruecolor ( resource $image )

imageistruecolor() indica quando a imagem image é uma imagem truecolor.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

Valor Retornado

Retorna TRUE se o image é truecolor, FALSE caso contrário.

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja Também

  • imagecreatetruecolor() - Cria uma nova imagem true color

imageinterlace
imagejpeg
Funções da GD


Envia a imagem para o borwser ou arquivo

imageistruecolor
imagelayereffect
Funções da GD
PHP Manual

imagejpeg

(PHP 4, PHP 5)

imagejpeg — Envia a imagem para o borwser ou arquivo

Descrição

bool imagejpeg ( resource $image [, string $filename [, int $quality ]] )

imagejpeg() cria um arquivo JPEG em a partir da image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filename

O caminho para salvar o arquivo. Se não definido ou NULL, o stream da imagem será mostrado diretamente.

Para pular este argumento para fornecer o parâmetro quality, use NULL.

quality

quality é opcional, e vai de 0 (pior qualidade, menor arquivo) a 100 (melhor qualidade, maior arquivo). O padrão é a qualidade IJG (aproximadamente 75).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: O suporte a JPEG esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Nota:

Se você quiser criar JPEGs progressivos, voce precisa definir o interlace com a função imageinterlace().

Veja Também

  • imagepng() - Envia uma imagem PNG para o browser ou para um arquivo
  • imagegif() - Envia uma imagem para o browser ou arquivo
  • imagewbmp() - Envia uma imagem para o browser ou arquivo
  • imageinterlace() - Ativa ou desativa o entrelaçamento
  • imagetypes() - Retorna os tipos de imagens suportados por esta instalação do PHP

imageistruecolor
imagelayereffect
Funções da GD


Set the alpha blending flag to use the bundled libgd layering effects

imagejpeg
imageline
Funções da GD
PHP Manual

imagelayereffect

(PHP 4 >= 4.3.0, PHP 5)

imagelayereffect — Set the alpha blending flag to use the bundled libgd layering effects

Descrição

bool imagelayereffect ( resource $image , int $effect )

Set the alpha blending flag to use the bundled libgd layering effects.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

effect

One of the following constants:

IMG_EFFECT_REPLACE
Use pixel replacement (equivalent of passing TRUE to imagealphablending())
IMG_EFFECT_ALPHABLEND
Use normal pixel blending (equivalent of passing FALSE to imagealphablending())
IMG_EFFECT_NORMAL
Same as IMG_EFFECT_ALPHABLEND.
IMG_EFFECT_OVERLAY
Overlay has the effect that black background pixels will remain black, white background pixels will remain white, but grey background pixels will take the colour of the foreground pixel.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagelayereffect() example

<?php
// Setup an image
$im = imagecreatetruecolor(100, 100);

// Set a background
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 220, 220, 220));

// Apply the overlay alpha blending flag
imagelayereffect($im, IMG_EFFECT_OVERLAY);

// Draw two grey ellipses
imagefilledellipse($im, 50, 50, 40, 40, imagecolorallocate($im, 100, 255, 100));
imagefilledellipse($im, 50, 50, 50, 80, imagecolorallocate($im, 100, 100, 255));
imagefilledellipse($im, 50, 50, 80, 50, imagecolorallocate($im, 255, 100, 100));

// Output
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagelayereffect()

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

imagejpeg
imageline
Funções da GD


Desenha uma linha

imagelayereffect
imageloadfont
Funções da GD
PHP Manual

imageline

(PHP 4, PHP 5)

imageline — Desenha uma linha

Descrição

int imageline ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )

imageline() desenha uma linha de x1, y1 até x2, y2 (o canto superior esquerdo é 0, 0) na imagem image de cor color.

Exemplo #1 Desenhando uma linha

<?php

function imagelinethick($image, $x1, $y1, $x2, $y2, $color, $thick = 1)
{
    /* this way it works well only for orthogonal lines
    imagesetthickness($image, $thick);
    return imageline($image, $x1, $y1, $x2, $y2, $color);
    */
    if ($thick == 1) {
        return imageline($image, $x1, $y1, $x2, $y2, $color);
    }
    $t = $thick / 2 - 0.5;
    if ($x1 == $x2 || $y1 == $y2) {
        return imagefilledrectangle($image, round(min($x1, $x2) - $t), round(min($y1, $y2) - $t), round(max($x1, $x2) + $t), round(max($y1, $y2) + $t), $color);
    }
    $k = ($y2 - $y1) / ($x2 - $x1); //y = kx + q
    $a = $t / sqrt(1 + pow($k, 2));
    $points = array(
        round($x1 - (1+$k)*$a), round($y1 + (1-$k)*$a),
        round($x1 - (1-$k)*$a), round($y1 - (1+$k)*$a),
        round($x2 + (1+$k)*$a), round($y2 - (1-$k)*$a),
        round($x2 + (1-$k)*$a), round($y2 + (1+$k)*$a),
    );
    imagefilledpolygon($image, $points, 4, $color);
    return imagepolygon($image, $points, 4, $color);
}

?>

veja também imagecreate() e imagecolorallocate().

imagelayereffect
imageloadfont
Funções da GD


Carrega uma nova fonte

imageline
imagepalettecopy
Funções da GD
PHP Manual

imageloadfont

(PHP 4, PHP 5)

imageloadfont — Carrega uma nova fonte

Descrição

int imageloadfont ( string $file )

imageloadfont() carrega uma fonte bitmap do usuário e retorna um identificador.

Parâmetros

file

O formato do arquivo de fonte é atualmente binário e dependente da arquitetura. Isto indica que você deverá gerar os arquivos de fonte no mesmo tipo de CPU no qual esta executando o PHP.

Formato do arquivo de fonte
Posição do byte | Tipo de dados C | Descrição
byte 0-3 | int | Número de caracteres na fonte
byte 4-7 | int | Valor do primeiro caractere na fonte (normalmente 32 para o espaço)
byte 8-11 | int | A largura em pixel de cada caractere
byte 12-15 | int | A altura em pixel de cada caractere
byte 16- | char | Matriz com os dados dos caracteres, um byte por pixel em cada caractere para um total de (caracteres*largura*altura).

Valor Retornado

The font identifier which is always bigger than 5 to avoid conflicts with built-in fonts or FALSE on errors.

Exemplos

Exemplo #1 Usando imageloadfont

<?php
header("Content-type: image/png");
$im = imagecreatetruecolor(50, 20);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 49, 19, $white);
$font = imageloadfont("04b.gdf");
imagestring($im, $font, 0, 0, "Hello", $black);
imagepng($im);
?>

Veja Também

  • imagefontwidth() - Retorna a largura da fonte
  • imagefontheight() - Retorna a altura da fonte

imageline
imagepalettecopy
Funções da GD


Copia a paleta de uma imagem para a outra

imageloadfont
imagepng
Funções da GD
PHP Manual

imagepalettecopy

(PHP 4 >= 4.0.1, PHP 5)

imagepalettecopy — Copia a paleta de uma imagem para a outra

Descrição

void imagepalettecopy ( resource $destination , resource $source )

imagepalettecopy() copia a paleta da imagem de source para a imagem destination.

Parâmetros

destination

O resource da imagem de destino

source

O resource do fonte da imagem

Valor Retornado

Não há valor retornado.

imageloadfont
imagepng
Funções da GD


Envia uma imagem PNG para o browser ou para um arquivo

imagepalettecopy
imagepolygon
Funções da GD
PHP Manual

imagepng

(PHP 4, PHP 5)

imagepng — Envia uma imagem PNG para o browser ou para um arquivo

Descrição

bool imagepng ( resource $image [, string $filename ] )

A função imagepng() envia um stream GD de imagem (image) no formato PNG para a saída padrão (normalmente o browser) ou, se for dado um nome de arquivo no parâmetro filename ele envia a imagem para um arquivo.

<?php
$im = imagecreatefrompng("test.png");
imagepng($im);
?>

Veja também imagegif(), imagewbmp(), imagejpeg() e imagetypes().

imagepalettecopy
imagepolygon
Funções da GD


Desenha um poligono

imagepng
imagepsbbox
Funções da GD
PHP Manual

imagepolygon

(PHP 4, PHP 5)

imagepolygon — Desenha um poligono

Descrição

int imagepolygon ( resource $image , array $points , int $num_points , int $color )

imagepolygon() cria um poligono em uma imagem. points é uma matriz PHP contendo os vértices do poligono, ex. points[0] = x0, points[1] = y0, points[2] = x1, points[3] = y1, etc. num_points é o número total de pontos(vértices).

Exemplo #1 Exemplo imagepolygon()

<?php
// cria uma imagem em branco
$image = imagecreate(400, 300);

// prenche a cor do fundo
$bg = imagecolorallocate($image, 0, 0, 0);

// escolhe uma cor para o poligono
$col_poly = imagecolorallocate($image, 255, 255, 255);

// desenha o poligono
imagepolygon($image,
             array (
                    0, 0,
                    100, 200,
                    300, 200
             ),
             3,
             $col_poly);

// envia a imagem
header("Content-type: image/png");
imagepng($image);

?>

Veja também imagecreate() e imagecreatetruecolor().

imagepng
imagepsbbox
Funções da GD


Give the bounding box of a text rectangle using PostScript Type1 fonts

imagepolygon
imagepsencodefont
Funções da GD
PHP Manual

imagepsbbox

(PHP 4, PHP 5)

imagepsbbox — Give the bounding box of a text rectangle using PostScript Type1 fonts

Descrição

array imagepsbbox ( string $text , resource $font , int $size )
array imagepsbbox ( string $text , resource $font , int $size , int $space , int $tightness , float $angle )

Gives the bounding box of a text rectangle using PostScript Type1 fonts.

The bounding box is calculated using information available from character metrics, and unfortunately tends to differ slightly from the results achieved by actually rasterizing the text. If the angle is 0 degrees, you can expect the text to need 1 pixel more to every direction.

Parâmetros

text

The text to be written.

font_index

A font resource, returned by imagepsloadfont().

size

size is expressed in pixels.

space

Allows you to change the default value of a space in a font. This amount is added to the normal value and can also be negative. Expressed in character space units, where 1 unit is 1/1000th of an em-square.

tightness

tightness allows you to control the amount of white space between characters. This amount is added to the normal character width and can also be negative. Expressed in character space units, where 1 unit is 1/1000th of an em-square.

angle

angle is in degrees.

Valor Retornado

Returns an array containing the following elements:

0 | left x-coordinate
1 | upper y-coordinate
2 | right x-coordinate
3 | lower y-coordinate

Exemplos

Exemplo #1 imagepsbbox() usage

<?php
// Create image handle
$im = imagecreatetruecolor(200, 200);

// Allocate colors
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);

// Load the PostScript Font
$font = imagepsloadfont('font.pfm');

// Make a bounding box for the font
$bbox = imagepsbbox('Sample text is simple', $font, 12);

// Define our X and Y cordinates
$x = ($bbox[2] / 2) - 10;
$y = ($bbox[3] / 2) - 10;

// Write the font to the image
imagepstext($im, 'Sample text is simple', $font, 12, $black, $white, $x, $y);

// Output and free memory
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

Veja Também

  • imagepstext() - Draws a text over an image using PostScript Type1 fonts

imagepolygon
imagepsencodefont
Funções da GD


Change the character encoding vector of a font

imagepsbbox
imagepsextendfont
Funções da GD
PHP Manual

imagepsencodefont

(PHP 4, PHP 5)

imagepsencodefont — Change the character encoding vector of a font

Descrição

bool imagepsencodefont ( resource $font_index , string $encodingfile )

Loads a character encoding vector from a file and changes the fonts encoding vector to it. As a PostScript fonts default vector lacks most of the character positions above 127, you'll definitely want to change this if you use an other language than English.

If you find yourself using this function all the time, a much better way to define the encoding is to set ps.default_encoding in the configuration file to point to the right encoding file and all fonts you load will automatically have the right encoding.

Parâmetros

font_index

A font resource, returned by imagepsloadfont().

encodingfile

The exact format of this file is described in T1libs documentation. T1lib comes with two ready-to-use files, IsoLatin1.enc and IsoLatin2.enc.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagepsencodefont() example

<?php
// Load a .pfb font file
$font = imagepsloadfont('./px3l.pfb');

// Tell T1lib to use ISO Latin 1 encoding
imagepsencode($font, './IsoLatin1.enc');

// Do any operations with the font here

// Free the font from memory
imagepsfreefont($font);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

imagepsbbox
imagepsextendfont
Funções da GD


Extend or condense a font

imagepsencodefont
imagepsfreefont
Funções da GD
PHP Manual

imagepsextendfont

(PHP 4, PHP 5)

imagepsextendfont — Extend or condense a font

Descrição

bool imagepsextendfont ( resource $font_index , float $extend )

Extend or condense a font (font_index), if the value of the extend parameter is less than one you will be condensing the font.

Parâmetros

font_index

A font resource, returned by imagepsloadfont().

extend

Extension value, must be greater than 0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagepsextendfont() example

<?php
// Load a .pfb font file
$font = imagepsloadfont('./px3l.pfb');

// Extend the font by 2.5
imagepsextendfont($font, 2.5);

// Do any operations with the font here

// Free the font from memory
imagepsfreefont($font);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

imagepsencodefont
imagepsfreefont
Funções da GD


Libera a memória usada por uma fonte PostScript Type

imagepsextendfont
imagepsloadfont
Funções da GD
PHP Manual

imagepsfreefont

(PHP 4, PHP 5)

imagepsfreefont — Libera a memória usada por uma fonte PostScript Type

Descrição

bool imagepsfreefont ( resource $fontindex )

imagepsfreefont() libera a memória usada por uma fonte PostScript Type 1.

Parâmetros

fontindex

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

Veja Também

  • imagepsloadfont() - Carrega uma fonte PostScript Type 1 a partir de um arquivo

imagepsextendfont
imagepsloadfont
Funções da GD


Carrega uma fonte PostScript Type 1 a partir de um arquivo

imagepsfreefont
imagepsslantfont
Funções da GD
PHP Manual

imagepsloadfont

(PHP 4, PHP 5)

imagepsloadfont — Carrega uma fonte PostScript Type 1 a partir de um arquivo

Descrição

resource imagepsloadfont ( string $filename )

Carrega uma fonte PostScript Type 1 do dado filename.

Parâmetros

filename

Valor Retornado

Se tudo for feito corretamente, um índice de fonte válida será retornado e poderá ser usado para vários propósitos. Caso contrário a função retorna FALSE.

Exemplos

Exemplo #1 Exemplo da imagepsloadfont()

<?php
header("Content-type: image/png");
$im = imagecreatetruecolor(350, 45);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 349, 44, $white);
$font = imagepsloadfont("bchbi.pfb"); // or locate your .pfb files on your machine
imagepstext($im, "Testing... It worked!", $font, 32, $white, $black, 32, 32);
imagepsfreefont($font);
imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

Veja Também

  • imagepsfreefont() - Libera a memória usada por uma fonte PostScript Type

imagepsfreefont
imagepsslantfont
Funções da GD


Slant a font

imagepsloadfont
imagepstext
Funções da GD
PHP Manual

imagepsslantfont

(PHP 4, PHP 5)

imagepsslantfont — Slant a font

Descrição

bool imagepsslantfont ( resource $font_index , float $slant )

Slant a given font given.

Parâmetros

font_index

A font resource, returned by imagepsloadfont().

slant

Slant level.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagepsslantfont() example

<?php
// Load a .pfb font file
$font = imagepsloadfont('./px3l.pfb');

// Slant the font by 22.5
imagepsslantfont($font, 22.5);

// Do any operations with the font here

// Free the font from memory
imagepsfreefont($font);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

imagepsloadfont
imagepstext
Funções da GD


Draws a text over an image using PostScript Type1 fonts

imagepsslantfont
imagerectangle
Funções da GD
PHP Manual

imagepstext

(PHP 4, PHP 5)

imagepstext — Draws a text over an image using PostScript Type1 fonts

Descrição

array imagepstext ( resource $image , string $text , resource $font_index , int $size , int $foreground , int $background , int $x , int $y [, int $space = 0 [, int $tightness = 0 [, float $angle = 0.0 [, int $antialias_steps = 4 ]]]] )

Draws a text on an image using PostScript Type1 fonts.

Refer to PostScript documentation about fonts and their measuring system if you have trouble understanding how this works.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

text

The text to be written.

font_index

A font resource, returned by imagepsloadfont().

size

size is expressed in pixels.

foreground

The color in which the text will be painted.

background

The color to which the text will try to fade in with antialiasing. No pixels with the color background are actually painted, so the background image does not need to be of solid color.

x

x-coordinate for the lower-left corner of the first character.

y

y-coordinate for the lower-left corner of the first character.

space

Allows you to change the default value of a space in a font. This amount is added to the normal value and can also be negative. Expressed in character space units, where 1 unit is 1/1000th of an em-square.

tightness

tightness allows you to control the amount of white space between characters. This amount is added to the normal character width and can also be negative. Expressed in character space units, where 1 unit is 1/1000th of an em-square.

angle

angle is in degrees.

antialias_steps

Allows you to control the number of colours used for antialiasing text. Allowed values are 4 and 16. The higher value is recommended for text sizes lower than 20, where the effect in text quality is quite visible. With bigger sizes, use 4. It's less computationally intensive.

Valor Retornado

This function returns an array containing the following elements:

0 | lower left x-coordinate
1 | lower left y-coordinate
2 | upper right x-coordinate
3 | upper right y-coordinate

Exemplos

Exemplo #1 imagepstext() usage

<?php
// Create image handle
$im = imagecreatetruecolor(200, 200);

// Allocate colors
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);

// Load the PostScript Font
$font = imagepsloadfont('font.pfm');

// Write the font to the image
imagepstext($im, 'Sample text is simple', $font, 12, $black, $white, 50, 50);

// Output and free memory
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com --with-t1lib[=DIR] .

Veja Também

  • imagepsbbox() - Give the bounding box of a text rectangle using PostScript Type1 fonts

imagepsslantfont
imagerectangle
Funções da GD


Desenha um retângulo

imagepstext
imagerotate
Funções da GD
PHP Manual

imagerectangle

(PHP 4, PHP 5)

imagerectangle — Desenha um retângulo

Descrição

int imagerectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $col )

imagerectangle() cria um retângulo de cor col na imagem image começando na coordenada superior esquerda x1, y1 e terminando na coordenada inferior direita x2, y2. 0, 0 é o canto superior esquerdo da imagem.

imagepstext
imagerotate
Funções da GD


Gira uma imagem com o ângulo dado

imagerectangle
imagesavealpha
Funções da GD
PHP Manual

imagerotate

(PHP 4 >= 4.3.0, PHP 5)

imagerotate — Gira uma imagem com o ângulo dado

Descrição

resource imagerotate ( resource $src_im , float $angle , int $bgd_color )

Gira a imagem src_im usando o ângulo angle dado em graus. bgd_color especifica a cor da zona descoberta após a rotação.

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

imagerectangle
imagesavealpha
Funções da GD


Define a opção para salvar a informação completa do alpha channel (ao invés de a transparencia de uma cor só) quando estiver salvando imagens PNG.

imagerotate
imagesetbrush
Funções da GD
PHP Manual

imagesavealpha

(PHP 4 >= 4.3.2, PHP 5)

imagesavealpha — Define a opção para salvar a informação completa do alpha channel (ao invés de a transparencia de uma cor só) quando estiver salvando imagens PNG.

Descrição

bool imagesavealpha ( resource $image , bool $saveflag )

imagesavealpha() define a opção para tentas salvar toda a informação de alpha channel (ao invés de a trnaparencia de uma cor só) quando estiver salvando imagens PNG.

Você deve desabilitar o alphablending (imagealphablending($im, false)), para poder usa-la.

Alpha channel não é suportado por todos os browsers, se você tiver problema com o seu browser, tente carregar o seu script em um browser com suporte ao alpha channel browser, ex. a versão mais recente do Mozilla.

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

Veja também imagealphablending().

imagerotate
imagesetbrush
Funções da GD


Set the brush image for line drawing

imagesavealpha
imagesetpixel
Funções da GD
PHP Manual

imagesetbrush

(PHP 4 >= 4.0.6, PHP 5)

imagesetbrush — Set the brush image for line drawing

Descrição

bool imagesetbrush ( resource $image , resource $brush )

imagesetbrush() sets the brush image to be used by all line drawing functions (such as imageline() and imagepolygon()) when drawing with the special colors IMG_COLOR_BRUSHED or IMG_COLOR_STYLEDBRUSHED.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

brush

An image resource.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagesetbrush() example

<?php
// Load a mini php logo
$php = imagecreatefrompng('./php.png');

// Create the main image, 100x100
$im = imagecreatetruecolor(100, 100);

// Fill the background with white
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 299, 99, $white);

// Set the brush
imagesetbrush($im, $php);

// Draw a couple of brushes, each overlaying each
imageline($im, 50, 50, 50, 60, IMG_COLOR_BRUSHED);

// Output image to the browser
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
imagedestroy($php);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagesetbrush()

Notas

Nota:

You need not take special action when you are finished with a brush, but if you destroy the brush image, you must not use the IMG_COLOR_BRUSHED or IMG_COLOR_STYLEDBRUSHED colors until you have set a new brush image!

imagesavealpha
imagesetpixel
Funções da GD


Define um único pixel

imagesetbrush
imagesetstyle
Funções da GD
PHP Manual

imagesetpixel

(PHP 4, PHP 5)

imagesetpixel — Define um único pixel

Descrição

int imagesetpixel ( resource $image , int $x , int $y , int $color )

imagesetpixel() desenha um pixel em x, y (em cima na esquerda é 0, 0) na imagem image com a cor color.

Veja também imagecreate() e imagecolorallocate().

imagesetbrush
imagesetstyle
Funções da GD


Set the style for line drawing

imagesetpixel
imagesetthickness
Funções da GD
PHP Manual

imagesetstyle

(PHP 4 >= 4.0.6, PHP 5)

imagesetstyle — Set the style for line drawing

Descrição

bool imagesetstyle ( resource $image , array $style )

imagesetstyle() sets the style to be used by all line drawing functions (such as imageline() and imagepolygon()) when drawing with the special color IMG_COLOR_STYLED or lines of images with color IMG_COLOR_STYLEDBRUSHED.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

style

An array of pixel colors. You can use the IMG_COLOR_TRANSPARENT constant to add a transparent pixel.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Following example script draws a dashed line from upper left to lower right corner of the canvas:

Exemplo #1 imagesetstyle() example

<?php
header("Content-type: image/jpeg");
$im  = imagecreatetruecolor(100, 100);
$w   = imagecolorallocate($im, 255, 255, 255);
$red = imagecolorallocate($im, 255, 0, 0);

/* Draw a dashed line, 5 red pixels, 5 white pixels */
$style = array($red, $red, $red, $red, $red, $w, $w, $w, $w, $w);
imagesetstyle($im, $style);
imageline($im, 0, 0, 100, 100, IMG_COLOR_STYLED);

/* Draw a line of happy faces using imagesetbrush() with imagesetstyle */
$style = array($w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $red);
imagesetstyle($im, $style);

$brush = imagecreatefrompng("http://www.libpng.org/pub/png/images/smile.happy.png");
$w2 = imagecolorallocate($brush, 255, 255, 255);
imagecolortransparent($brush, $w2);
imagesetbrush($im, $brush);
imageline($im, 100, 0, 0, 100, IMG_COLOR_STYLEDBRUSHED);

imagejpeg($im);
imagedestroy($im);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagesetstyle()

Veja Também

  • imagesetbrush() - Set the brush image for line drawing
  • imageline() - Desenha uma linha

imagesetpixel
imagesetthickness
Funções da GD


Define a espessura para o desenho de linhas

imagesetstyle
imagesettile
Funções da GD
PHP Manual

imagesetthickness

(PHP 4 >= 4.0.6, PHP 5)

imagesetthickness — Define a espessura para o desenho de linhas

Descrição

bool imagesetthickness ( resource $image , int $thickness )

imagesetthickness() define a espessura das linhas desenhadas quando esta desenhando retangulos, poligonos, elipses, etc. para thickness pixels.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

thickness

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

imagesetstyle
imagesettile
Funções da GD


Set the tile image for filling

imagesetthickness
imagestring
Funções da GD
PHP Manual

imagesettile

(PHP 4 >= 4.0.6, PHP 5)

imagesettile — Set the tile image for filling

Descrição

bool imagesettile ( resource $image , resource $tile )

imagesettile() sets the tile image to be used by all region filling functions (such as imagefill() and imagefilledpolygon()) when filling with the special color IMG_COLOR_TILED.

A tile is an image used to fill an area with a repeated pattern. Any GD image can be used as a tile, and by setting the transparent color index of the tile image with imagecolortransparent(), a tile allows certain parts of the underlying area to shine through can be created.

Nota:

You need not take special action when you are finished with a tile, but if you destroy the tile image, you must not use the IMG_COLOR_TILED color until you have set a new tile image!

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

tile

The image resource to be used as a tile.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imagesettile() example

<?php
// Load an external image
$zend = imagecreatefromgif('./zend.gif');

// Create a 200x200 image
$im = imagecreatetruecolor(200, 200);

// Set the tile
imagesettile($im, $zend);

// Make the image repeat
imagefilledrectangle($im, 0, 0, 199, 199, IMG_COLOR_TILED);

// Output image to the browser
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
imagedestroy($zend);
?>

O exemplo acima irá imprimir algo similar a:

Output of example : imagesettile()

imagesetthickness
imagestring
Funções da GD


Desenha uma string horizontalmente

imagesettile
imagestringup
Funções da GD
PHP Manual

imagestring

(PHP 4, PHP 5)

imagestring — Desenha uma string horizontalmente

Descrição

bool imagestring ( resource $image , int $font , int $x , int $y , string $string , int $color )

Desenha uma string nas dadas coordenadas.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

font

Pode ser 1, 2, 3, 4, 5 para as fontes embutidas na codificação latin2 (aonde números maiores correspondem a fontes mais largas) ou qualquer um dos seus própios identificadores de fonte registrado com imageloadfont().

x

Coordenada x superior à esquerda

y

Coordenada y superior à esquerda

string

A string a ser escrita

color

Um identificador de cor criado com imagecolorallocate()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da imagestring()

<?php
  // cria uma imagem de 100*30
  $im = imagecreate(100, 30);

  // fundo branco e texto azul
  $bg = imagecolorallocate($im, 255, 255, 255);
  $textcolor = imagecolorallocate($im, 0, 0, 255);

  // escreve a string em cima na esquerda
  imagestring($im, 5, 0, 0, "Hello world!", $textcolor);

  // envia a imagem
  header("Content-type: image/png");
  imagepng($im);
?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • imageloadfont() - Carrega uma nova fonte
  • imagettftext() - Escreve texto na imagem usando fontes TrueType

imagesettile
imagestringup
Funções da GD


Desenha uma string verticalmente

imagestring
imagesx
Funções da GD
PHP Manual

imagestringup

(PHP 4, PHP 5)

imagestringup — Desenha uma string verticalmente

Descrição

int imagestringup ( resource $image , int $font , int $x , int $y , string $s , int $col )

imagestringup() desenha a string s verticalmente na imagem identificada por image nas coordenadas x, y (em cima na esquerda é 0, 0) na cor col. Se a fonte for 1, 2, 3, 4 ou 5, uma fonte interna é usada.

Veja também imageloadfont().

imagestring
imagesx
Funções da GD


Obtem a largura da imagem

imagestringup
imagesy
Funções da GD
PHP Manual

imagesx

(PHP 4, PHP 5)

imagesx — Obtem a largura da imagem

Descrição

int imagesx ( resource $image )

Retorna a largura do dado resource image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

Valor Retornado

Retorna a largura da image ou FALSE em erro.

Exemplos

Exemplo #1 Usando imagesx()

<?php

// cria uma imagem de 300*200
$img = imagecreatetruecolor(300, 200);

echo imagesx($img); // 300

?>

Veja Também

  • imagecreatetruecolor() - Cria uma nova imagem true color
  • getimagesize() - Obtém o tamanho de uma imagem
  • imagesy() - Obtém a altura da imagem

imagestringup
imagesy
Funções da GD


Obtém a altura da imagem

imagesx
imagetruecolortopalette
Funções da GD
PHP Manual

imagesy

(PHP 4, PHP 5)

imagesy — Obtém a altura da imagem

Descrição

int imagesy ( resource $image )

Retorna a altura do dado resource image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

Valor Retornado

Retorna a altura da image ou FALSE em erro.

Exemplos

Exemplo #1 Usando imagesy()

<?php

// create a 300*200 image
$img = imagecreatetruecolor(300, 200);

echo imagesy($img); // 200

?>

Veja Também

  • imagecreatetruecolor() - Cria uma nova imagem true color
  • getimagesize() - Obtém o tamanho de uma imagem
  • imagesx() - Obtem a largura da imagem

imagesx
imagetruecolortopalette
Funções da GD


Converte uma imagem true color para uma imagem de paleta

imagesy
imagettfbbox
Funções da GD
PHP Manual

imagetruecolortopalette

(PHP 4 >= 4.0.6, PHP 5)

imagetruecolortopalette — Converte uma imagem true color para uma imagem de paleta

Descrição

bool imagetruecolortopalette ( resource $image , bool $dither , int $ncolors )

imagetruecolortopalette() converte uma imagem truecolor para uma imagem de paleta. O código para esta função foi escrito originalmente pelo Independent JPEG Group library code, o qual é excelente. O código foi modificado para preservar tanta informação do alpha channel quanto possível na paleta de resultado, em adição a preservar as cores tão bem quanto possível. Isto não funciona tão bem quanto podia ser esperado. Normalmente é melhor simplesmente produzir e enviar uma imagem truecolor, a qual tem garantidamente uma qualidade de saída melhor.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

dither

dither indica se a imagem deve ser estremecida - se ele é TRUE então o estremecimento será usado, o que resulta em uma imagem mais manchada mas com melhor aproximação da cor.

ncolors

Define o número máximo de cores que devem ser retidos na paleta.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função precisa do GD 2.0.1 ou posterior (2.0.28 ou posterior é recomendado).

imagesy
imagettfbbox
Funções da GD


Retorna uma caixa com o limites de um texto usando fontes TrueType

imagetruecolortopalette
imagettftext
Funções da GD
PHP Manual

imagettfbbox

(PHP 4, PHP 5)

imagettfbbox — Retorna uma caixa com o limites de um texto usando fontes TrueType

Descrição

array imagettfbbox ( float $size , float $angle , string $fontfile , string $text )

Esta função calcula e retorna uma caixa com os limites de um texto para uma fonte TrueType.

Parâmetros

size

O tamanho da fonte em pixels

angle

O ângulo em graus no qual text será medido

fontfile

O nome do arquivo de fonte TrueType (Também pode ser uma URL). Dependendo de qual versão da biblioteca GD que o PHP esta usando, ele pode tentar procurar por arquivos que não comecem com '/' adicionando '.ttf' ao nome do arquivo e procurando nos caminhos definidos pela biblioteca de fonte

text

A string a ser medida

Valor Retornado

imagettfbbox() retorna uma matriz com 8 elementos representando os quatro pontos fazendo o contorno do texto:

0 | Canto inferior esquerdo, posição X
1 | Canto inferior esquerdo, posição Y
2 | Canto inferior direito, posição X
3 | Canto inferior direito, posição Y
4 | Canto superior direito, posição X
5 | Canto superior direito, posição Y
6 | Canto superior esquerdo, posição X
7 | Canto superior esquerdo, posição Y

Os pontos são relativos ao text sem importar o ângulo, assim "superior esquerdo" indica o canto superior esquerdo quando se vê o texto horizontalmente.

Veja Também

Nota:

Esta função requer tanto biblioteca GD e a biblioteca » FreeType.

Veja Também

  • imagettftext() - Escreve texto na imagem usando fontes TrueType

imagetruecolortopalette
imagettftext
Funções da GD


Escreve texto na imagem usando fontes TrueType

imagettfbbox
imagetypes
Funções da GD
PHP Manual

imagettftext

(PHP 4, PHP 5)

imagettftext — Escreve texto na imagem usando fontes TrueType

Descrição

array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )

imagettftext() desenha a string text na imagem identificada por image, começando nas coordenadas x, y (o canto superior esquerdo é 0, 0), em um ângulo de angle na cor color, usando o arquivo de fonte TrueType identificado por fontfile. Dependendo de qual versão da biblioteca GD o PHP estiver usando o fontfile não começa com '/', '.ttf' será adicionado ao nome do arquivo e a biblioteca tentará encontrar o nome do arquivo entre o caminho de fonte definido na biblioteca.

As coordenadas dadas por x, y irão definir o ponto base para o primeiro caractere (o canto inferior esquerdo do caractere). Isto é diferente de imagestring(), aonde x, y definem o canto superior direito do primeiro caractere.

angle é em graus, sendo 0 graus da esqueda para a direita (direção de 3 horas no relógio), e valores maiores representando um rotação anti-horária. (ex. um valor de 90 irá resultar em um exto de baixo para cima).

fontfile é o caminho para a TrueType que você quer usar.

text é a string com o texto que pode incluir caracteres UTF-8 (na forma de: &#123;) para acessar caracteres na fonte alem do 255.

color é o índice da cor. Usando um índice de cor negativo tem o efeito de desativar o antialiasing.

imagettftext() retorna uma matriz com 8 elementos representando quatro pontos fazendo uma caixa em torno do texto. A ordem dos pontos é inferior esquerdo, inferior direito, superior direito, superior esquerdo. Os pontos são relativos ao texto, sem se importar com o ângulo, assim "superior esquerdo" indica o canto superior esquerdo quando você vê o texto horizontalmente.

Este script de exemplo irá produzir um JPEG predo de 400x30 pixels, com as palavras "Testing..." em branco na fonte Arial.

Exemplo #1 Exemplo imagettftext()

<?php
  header("Content-type: image/jpeg");
  $im = imagecreate(400, 30);
  $white = imagecolorallocate($im, 255, 255, 255);
  $black = imagecolorallocate($im, 0, 0, 0);

  // Replace path by your own font path
  imagettftext($im, 20, 0, 10, 20, $black, "/path/arial.ttf",
  "Testing... Omega: &amp;#937;");
  imagejpeg($im);
  imagedestroy($im);
?>

Esta função requer a biblioteca GD e a biblioteca » FreeType.

Veja também imagettfbbox().

imagettfbbox
imagetypes
Funções da GD


Retorna os tipos de imagens suportados por esta instalação do PHP

imagettftext
imagewbmp
Funções da GD
PHP Manual

imagetypes

(PHP 4 >= 4.0.2, PHP 5)

imagetypes — Retorna os tipos de imagens suportados por esta instalação do PHP

Descrição

int imagetypes ( void )

Retorna os tipos de imagens suportados pela instalação atual do PHP.

Valor Retornado

Retorna o bit-field correspondendo o formato de imagem suportado pela versão da GD linkada no PHP. Os seguintes bits são retornados, IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP | IMG_XPM.

Exemplos

Exemplo #1 Verificando o suporte a PNG

<?php
if (imagetypes() & IMG_PNG) {
    echo "O suporte a PNG esta ativado";
}
?>

imagettftext
imagewbmp
Funções da GD


Envia uma imagem para o browser ou arquivo

imagetypes
imagexbm
Funções da GD
PHP Manual

imagewbmp

(PHP 4 >= 4.0.1, PHP 5)

imagewbmp — Envia uma imagem para o browser ou arquivo

Descrição

bool imagewbmp ( resource $image [, string $filename [, int $foreground ]] )

imagewbmp() mostra ou salva uma versão WBMP da dada image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filename

O caminho para salvar o arquivo. Se não definido ou NULL, o stream da imagem será mostrado diretamente.

foreground

Você pode definir a cor de primeiro plano com este parâmetro passando um identificador de cor obtido a partir de imagecolorallocate(). A cor padrão é preto.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Suporte a WBMP está somente disponível se o PHP foi compilado com GD-1.8 ou superior.

Veja Também

  • image2wbmp() - Envia uma imagem para o browser ou arquivo
  • imagepng() - Envia uma imagem PNG para o browser ou para um arquivo
  • imagegif() - Envia uma imagem para o browser ou arquivo
  • imagejpeg() - Envia a imagem para o borwser ou arquivo
  • imagetypes() - Retorna os tipos de imagens suportados por esta instalação do PHP

imagetypes
imagexbm
Funções da GD


Output XBM image to browser or file

imagewbmp
iptcembed
Funções da GD
PHP Manual

imagexbm

(PHP 5)

imagexbm — Output XBM image to browser or file

Descrição

bool imagexbm ( resource $image , string $filename [, int $foreground ] )

Outputs or save an XBM version of the given image.

Parâmetros

image

An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

filename

The path to save the file to. If not set or NULL, the raw image stream will be outputted directly.

foreground

You can set the foreground color with this parameter by setting an identifier obtained from imagecolorallocate(). The default foreground color is black.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Saving an XBM file

<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  'A Simple Text String', $text_color);

// Save the image
imagexbm($im, 'simpletext.xbm');

// Free up memory
imagedestroy($im);
?>

Exemplo #2 Saving an XBM file with a different foreground color

<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  'A Simple Text String', $text_color);

// Set a replacement foreground color
$foreground_color = imagecolorallocate($im, 255, 0, 0);

// Save the image
imagexbm($im, NULL, $foreground_color);

// Free up memory
imagedestroy($im);
?>

Notas

Nota: Esta função somente está disponível se o PHP estiver compilado com a versão embarcada da biblioteca GD.

imagewbmp
iptcembed
Funções da GD


Embute dados binários IPTC em uma imagem JPEG

imagexbm
iptcparse
Funções da GD
PHP Manual

iptcembed

(PHP 4, PHP 5)

iptcembed — Embute dados binários IPTC em uma imagem JPEG

Descrição

mixed iptcembed ( string $iptcdata , string $jpeg_file_name [, int $spool ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iptcdata

jpeg_file_name

spool

imagexbm
iptcparse
Funções da GD


Analisa um bloco binário IPTC em tags simples.

iptcembed
jpeg2wbmp
Funções da GD
PHP Manual

iptcparse

(PHP 4, PHP 5)

iptcparse — Analisa um bloco binário IPTC em tags simples.

Descrição

array iptcparse ( string $iptcblock )

Analisa um bloco » IPTC em tags simples.

Parâmetros

iptcblock

Um bloco binário IPTC

Valor Retornado

Retorna um array usando a tagmarker como um índice e o valor como o valor. Ela retorna FALSE em erro ou se não há informação IPTC encontrada.

Veja Também

  • getimagesize() - Obtém o tamanho de uma imagem para um exemplo

iptcembed
jpeg2wbmp
Funções da GD


Converte um arquivo de imagem JPEG para um arquivo de imagem WBMP

iptcparse
png2wbmp
Funções da GD
PHP Manual

jpeg2wbmp

(PHP 4 >= 4.0.5, PHP 5)

jpeg2wbmp — Converte um arquivo de imagem JPEG para um arquivo de imagem WBMP

Descrição

bool jpeg2wbmp ( string $jpegname , string $wbmpname , int $dest_height , int $dest_width , int $threshold )

Converte o arquivo JPEG em arquivo WBMP.

Parâmetros

jpegname

Caminho para o arquivo JPEG

wbmpname

Caminho de destino do arquivo WBMP

dest_height

Altura da imagem destino

dest_width

Largura da imagem destino

threshold

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: O suporte a WBMP esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Nota: O suporte a JPEG esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Veja Também

  • png2wbmp() - Converte um arquivo de imagem PNG para um arquivo de imagem WBMP

iptcparse
png2wbmp
Funções da GD


Converte um arquivo de imagem PNG para um arquivo de imagem WBMP

jpeg2wbmp
ImageMagick
Funções da GD
PHP Manual

png2wbmp

(PHP 4 >= 4.0.5, PHP 5)

png2wbmp — Converte um arquivo de imagem PNG para um arquivo de imagem WBMP

Descrição

bool png2wbmp ( string $pngname , string $wbmpname , int $dest_height , int $dest_width , int $threshold )

Converte o arquivo PNG em arquivo WBMP.

Parâmetros

pngname

Caminho do arquivo PNG

wbmpname

Caminho para o arquivo de destino WBMP

dest_height

Altura da imagem destino

dest_width

Largura da imagem destino

threshold

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: O suporte a WBMP esta disponível apenas se o PHP for compilado com GD-1.8 ou posterior.

Veja Também

  • jpeg2wbmp() - Converte um arquivo de imagem JPEG para um arquivo de imagem WBMP

jpeg2wbmp
ImageMagick
Funções da GD


Image Processing (ImageMagick)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Exemplos
  • The Imagick class
    • Imagick::adaptiveBlurImage — Adds adaptive blur filter to image
    • Imagick::adaptiveResizeImage — Adaptively resize image with data dependent triangulation
    • Imagick::adaptiveSharpenImage — Adaptively sharpen the image
    • Imagick::adaptiveThresholdImage — Selects a threshold for each pixel based on a range of intensity
    • Imagick::addImage — Adds new image to Imagick object image list
    • Imagick::addNoiseImage — Adds random noise to the image
    • Imagick::affineTransformImage — Transforms an image
    • Imagick::animateImages — Animates an image or images
    • Imagick::annotateImage — Annotates an image with text
    • Imagick::appendImages — Append a set of images
    • Imagick::averageImages — Average a set of images
    • Imagick::blackThresholdImage — Forces all pixels below the threshold into black
    • Imagick::blurImage — Adds blur filter to image
    • Imagick::borderImage — Surrounds the image with a border
    • Imagick::charcoalImage — Simulates a charcoal drawing
    • Imagick::chopImage — Removes a region of an image and trims
    • Imagick::clear — Clears all resources associated to Imagick object
    • Imagick::clipImage — Clips along the first path from the 8BIM profile
    • Imagick::clipPathImage — Clips along the named paths from the 8BIM profile
    • Imagick::clone — Makes an exact copy of the Imagick object
    • Imagick::clutImage — Replaces colors in the image
    • Imagick::coalesceImages — Composites a set of images
    • Imagick::colorFloodfillImage — Changes the color value of any pixel that matches target
    • Imagick::colorizeImage — Blends the fill color with the image
    • Imagick::combineImages — Combines one or more images into a single image
    • Imagick::commentImage — Adds a comment to your image
    • Imagick::compareImageChannels — Returns the difference in one or more images
    • Imagick::compareImageLayers — Returns the maximum bounding region between images
    • Imagick::compareImages — Compares an image to a reconstructed image
    • Imagick::compositeImage — Composite one image onto another
    • Imagick::__construct — The Imagick constructor
    • Imagick::contrastImage — Change the contrast of the image
    • Imagick::contrastStretchImage — Enhances the contrast of a color image
    • Imagick::convolveImage — Applies a custom convolution kernel to the image
    • Imagick::cropImage — Extracts a region of the image
    • Imagick::cropThumbnailImage — Creates a crop thumbnail
    • Imagick::current — Returns a reference to the current Imagick object
    • Imagick::cycleColormapImage — Displaces an image's colormap
    • Imagick::decipherImage — Deciphers an image
    • Imagick::deconstructImages — Returns certain pixel differences between images
    • Imagick::deleteImageArtifact — Delete image artifact
    • Imagick::deskewImage — Removes skew from the image
    • Imagick::despeckleImage — Reduces the speckle noise in an image
    • Imagick::destroy — Destroys the Imagick object
    • Imagick::displayImage — Displays an image
    • Imagick::displayImages — Displays an image or image sequence
    • Imagick::distortImage — Distorts an image using various distortion methods
    • Imagick::drawImage — Renders the ImagickDraw object on the current image
    • Imagick::edgeImage — Enhance edges within the image
    • Imagick::embossImage — Returns a grayscale image with a three-dimensional effect
    • Imagick::encipherImage — Enciphers an image
    • Imagick::enhanceImage — Improves the quality of a noisy image
    • Imagick::equalizeImage — Equalizes the image histogram
    • Imagick::evaluateImage — Applies an expression to an image
    • Imagick::exportImagePixels — Exports raw image pixels
    • Imagick::extentImage — Set image size
    • Imagick::flattenImages — Merges a sequence of images
    • Imagick::flipImage — Creates a vertical mirror image
    • Imagick::floodFillPaintImage — Changes the color value of any pixel that matches target
    • Imagick::flopImage — Creates a horizontal mirror image
    • Imagick::frameImage — Adds a simulated three-dimensional border
    • Imagick::functionImage — Applies a function on the image
    • Imagick::fxImage — Evaluate expression for each pixel in the image
    • Imagick::gammaImage — Gamma-corrects an image
    • Imagick::gaussianBlurImage — Blurs an image
    • Imagick::getColorspace — Gets the colorspace
    • Imagick::getCompression — Gets the object compression type
    • Imagick::getCompressionQuality — Gets the object compression quality
    • Imagick::getCopyright — Returns the ImageMagick API copyright as a string
    • Imagick::getFilename — The filename associated with an image sequence
    • Imagick::getFont — Gets font
    • Imagick::getFormat — Returns the format of the Imagick object
    • Imagick::getGravity — Gets the gravity
    • Imagick::getHomeURL — Returns the ImageMagick home URL
    • Imagick::getImage — Returns a new Imagick object
    • Imagick::getImageAlphaChannel — Gets the image alpha channel
    • Imagick::getImageArtifact — Get image artifact
    • Imagick::getImageBackgroundColor — Returns the image background color
    • Imagick::getImageBlob — Returns the image sequence as a blob
    • Imagick::getImageBluePrimary — Returns the chromaticy blue primary point
    • Imagick::getImageBorderColor — Returns the image border color
    • Imagick::getImageChannelDepth — Gets the depth for a particular image channel
    • Imagick::getImageChannelDistortion — Compares image channels of an image to a reconstructed image
    • Imagick::getImageChannelDistortions — Gets channel distortions
    • Imagick::getImageChannelExtrema — Gets the extrema for one or more image channels
    • Imagick::getImageChannelKurtosis — The getImageChannelKurtosis purpose
    • Imagick::getImageChannelMean — Gets the mean and standard deviation
    • Imagick::getImageChannelRange — Gets channel range
    • Imagick::getImageChannelStatistics — Returns statistics for each channel in the image
    • Imagick::getImageClipMask — Gets image clip mask
    • Imagick::getImageColormapColor — Returns the color of the specified colormap index
    • Imagick::getImageColors — Gets the number of unique colors in the image
    • Imagick::getImageColorspace — Gets the image colorspace
    • Imagick::getImageCompose — Returns the composite operator associated with the image
    • Imagick::getImageCompression — Gets the current image's compression type
    • Imagick::getImageCompressionQuality — Gets the current image's compression quality
    • Imagick::getImageDelay — Gets the image delay
    • Imagick::getImageDepth — Gets the image depth
    • Imagick::getImageDispose — Gets the image disposal method
    • Imagick::getImageDistortion — Compares an image to a reconstructed image
    • Imagick::getImageExtrema — Gets the extrema for the image
    • Imagick::getImageFilename — Returns the filename of a particular image in a sequence
    • Imagick::getImageFormat — Returns the format of a particular image in a sequence
    • Imagick::getImageGamma — Gets the image gamma
    • Imagick::getImageGeometry — Gets the width and height as an associative array
    • Imagick::getImageGravity — Gets the image gravity
    • Imagick::getImageGreenPrimary — Returns the chromaticy green primary point
    • Imagick::getImageHeight — Returns the image height
    • Imagick::getImageHistogram — Gets the image histogram
    • Imagick::getImageIndex — Gets the index of the current active image
    • Imagick::getImageInterlaceScheme — Gets the image interlace scheme
    • Imagick::getImageInterpolateMethod — Returns the interpolation method
    • Imagick::getImageIterations — Gets the image iterations
    • Imagick::getImageLength — Returns the image length in bytes
    • Imagick::getImageMagickLicense — Returns a string containing the ImageMagick license
    • Imagick::getImageMatte — Return if the image has a matte channel
    • Imagick::getImageMatteColor — Returns the image matte color
    • Imagick::getImageOrientation — Gets the image orientation
    • Imagick::getImagePage — Returns the page geometry
    • Imagick::getImagePixelColor — Returns the color of the specified pixel
    • Imagick::getImageProfile — Returns the named image profile
    • Imagick::getImageProfiles — Returns the image profiles
    • Imagick::getImageProperties — Returns the image properties
    • Imagick::getImageProperty — Returns the named image property
    • Imagick::getImageRedPrimary — Returns the chromaticity red primary point
    • Imagick::getImageRegion — Extracts a region of the image
    • Imagick::getImageRenderingIntent — Gets the image rendering intent
    • Imagick::getImageResolution — Gets the image X and Y resolution
    • Imagick::getImagesBlob — Returns all image sequences as a blob
    • Imagick::getImageScene — Gets the image scene
    • Imagick::getImageSignature — Generates an SHA-256 message digest
    • Imagick::getImageSize — Returns the image length in bytes
    • Imagick::getImageTicksPerSecond — Gets the image ticks-per-second
    • Imagick::getImageTotalInkDensity — Gets the image total ink density
    • Imagick::getImageType — Gets the potential image type
    • Imagick::getImageUnits — Gets the image units of resolution
    • Imagick::getImageVirtualPixelMethod — Returns the virtual pixel method
    • Imagick::getImageWhitePoint — Returns the chromaticity white point
    • Imagick::getImageWidth — Returns the image width
    • Imagick::getInterlaceScheme — Gets the object interlace scheme
    • Imagick::getIteratorIndex — Gets the index of the current active image
    • Imagick::getNumberImages — Returns the number of images in the object
    • Imagick::getOption — Returns a value associated with the specified key
    • Imagick::getPackageName — Returns the ImageMagick package name
    • Imagick::getPage — Returns the page geometry
    • Imagick::getPixelIterator — Returns a MagickPixelIterator
    • Imagick::getPixelRegionIterator — Get an ImagickPixelIterator for an image section
    • Imagick::getPointSize — Gets point size
    • Imagick::getQuantumDepth — Gets the quantum depth
    • Imagick::getQuantumRange — Returns the Imagick quantum range
    • Imagick::getReleaseDate — Returns the ImageMagick release date
    • Imagick::getResource — Returns the specified resource's memory usage
    • Imagick::getResourceLimit — Returns the specified resource limit
    • Imagick::getSamplingFactors — Gets the horizontal and vertical sampling factor
    • Imagick::getSize — Returns the size associated with the Imagick object
    • Imagick::getSizeOffset — Returns the size offset
    • Imagick::getVersion — Returns the ImageMagick API version
    • Imagick::haldClutImage — Replaces colors in the image
    • Imagick::hasNextImage — Checks if the object has more images
    • Imagick::hasPreviousImage — Checks if the object has a previous image
    • Imagick::identifyImage — Identifies an image and fetches attributes
    • Imagick::implodeImage — Creates a new image as a copy
    • Imagick::importImagePixels — Imports image pixels
    • Imagick::labelImage — Adds a label to an image
    • Imagick::levelImage — Adjusts the levels of an image
    • Imagick::linearStretchImage — Stretches with saturation the image intensity
    • Imagick::liquidRescaleImage — Animates an image or images
    • Imagick::magnifyImage — Scales an image proportionally 2x
    • Imagick::mapImage — Replaces the colors of an image with the closest color from a reference image.
    • Imagick::matteFloodfillImage — Changes the transparency value of a color
    • Imagick::medianFilterImage — Applies a digital filter
    • Imagick::mergeImageLayers — Merges image layers
    • Imagick::minifyImage — Scales an image proportionally to half its size
    • Imagick::modulateImage — Control the brightness, saturation, and hue
    • Imagick::montageImage — Creates a composite image
    • Imagick::morphImages — Method morphs a set of images
    • Imagick::mosaicImages — Forms a mosaic from images
    • Imagick::motionBlurImage — Simulates motion blur
    • Imagick::negateImage — Negates the colors in the reference image
    • Imagick::newImage — Creates a new image
    • Imagick::newPseudoImage — Creates a new image
    • Imagick::nextImage — Moves to the next image
    • Imagick::normalizeImage — Enhances the contrast of a color image
    • Imagick::oilPaintImage — Simulates an oil painting
    • Imagick::opaquePaintImage — Changes the color value of any pixel that matches target
    • Imagick::optimizeImageLayers — Removes repeated portions of images to optimize
    • Imagick::orderedPosterizeImage — Performs an ordered dither
    • Imagick::paintFloodfillImage — Changes the color value of any pixel that matches target
    • Imagick::paintOpaqueImage — Change any pixel that matches color
    • Imagick::paintTransparentImage — Changes any pixel that matches color with the color defined by fill
    • Imagick::pingImage — Fetch basic attributes about the image
    • Imagick::pingImageBlob — Quickly fetch attributes
    • Imagick::pingImageFile — Get basic image attributes in a lightweight manner
    • Imagick::polaroidImage — Simulates a Polaroid picture
    • Imagick::posterizeImage — Reduces the image to a limited number of color level
    • Imagick::previewImages — Quickly pin-point appropriate parameters for image processing
    • Imagick::previousImage — Move to the previous image in the object
    • Imagick::profileImage — Adds or removes a profile from an image
    • Imagick::quantizeImage — Analyzes the colors within a reference image
    • Imagick::quantizeImages — Analyzes the colors within a sequence of images
    • Imagick::queryFontMetrics — Returns an array representing the font metrics
    • Imagick::queryFonts — Returns the configured fonts
    • Imagick::queryFormats — Returns formats supported by Imagick
    • Imagick::radialBlurImage — Radial blurs an image
    • Imagick::raiseImage — Creates a simulated 3d button-like effect
    • Imagick::randomThresholdImage — Creates a high-contrast, two-color image
    • Imagick::readImage — Reads image from filename
    • Imagick::readImageBlob — Reads image from a binary string
    • Imagick::readImageFile — Reads image from open filehandle
    • Imagick::recolorImage — Recolors image
    • Imagick::reduceNoiseImage — Smooths the contours of an image
    • Imagick::remapImage — Remaps image colors
    • Imagick::removeImage — Removes an image from the image list
    • Imagick::removeImageProfile — Removes the named image profile and returns it
    • Imagick::render — Renders all preceding drawing commands
    • Imagick::resampleImage — Resample image to desired resolution
    • Imagick::resetImagePage — Reset image page
    • Imagick::resizeImage — Scales an image
    • Imagick::rollImage — Offsets an image
    • Imagick::rotateImage — Rotates an image
    • Imagick::roundCorners — Rounds image corners
    • Imagick::sampleImage — Scales an image with pixel sampling
    • Imagick::scaleImage — Scales the size of an image
    • Imagick::segmentImage — Segments an image
    • Imagick::separateImageChannel — Separates a channel from the image
    • Imagick::sepiaToneImage — Sepia tones an image
    • Imagick::setBackgroundColor — Sets the object's default background color
    • Imagick::setColorspace — Set colorspace
    • Imagick::setCompression — Sets the object's default compression type
    • Imagick::setCompressionQuality — Sets the object's default compression quality
    • Imagick::setFilename — Sets the filename before you read or write the image
    • Imagick::setFirstIterator — Sets the Imagick iterator to the first image
    • Imagick::setFont — Sets font
    • Imagick::setFormat — Sets the format of the Imagick object
    • Imagick::setGravity — Sets the gravity
    • Imagick::setImage — Replaces image in the object
    • Imagick::setImageAlphaChannel — Sets image alpha channel
    • Imagick::setImageArtifact — Set image artifact
    • Imagick::setImageBackgroundColor — Sets the image background color
    • Imagick::setImageBias — Sets the image bias for any method that convolves an image
    • Imagick::setImageBluePrimary — Sets the image chromaticity blue primary point
    • Imagick::setImageBorderColor — Sets the image border color
    • Imagick::setImageChannelDepth — Sets the depth of a particular image channel
    • Imagick::setImageClipMask — Sets image clip mask
    • Imagick::setImageColormapColor — Sets the color of the specified colormap index
    • Imagick::setImageColorspace — Sets the image colorspace
    • Imagick::setImageCompose — Sets the image composite operator
    • Imagick::setImageCompression — Sets the image compression
    • Imagick::setImageCompressionQuality — Sets the image compression quality
    • Imagick::setImageDelay — Sets the image delay
    • Imagick::setImageDepth — Sets the image depth
    • Imagick::setImageDispose — Sets the image disposal method
    • Imagick::setImageExtent — Sets the image size
    • Imagick::setImageFilename — Sets the filename of a particular image
    • Imagick::setImageFormat — Sets the format of a particular image
    • Imagick::setImageGamma — Sets the image gamma
    • Imagick::setImageGravity — Sets the image gravity
    • Imagick::setImageGreenPrimary — Sets the image chromaticity green primary point
    • Imagick::setImageIndex — Set the iterator position
    • Imagick::setImageInterlaceScheme — Sets the image compression
    • Imagick::setImageInterpolateMethod — Sets the image interpolate pixel method
    • Imagick::setImageIterations — Sets the image iterations
    • Imagick::setImageMatte — Sets the image matte channel
    • Imagick::setImageMatteColor — Sets the image matte color
    • Imagick::setImageOpacity — Sets the image opacity level
    • Imagick::setImageOrientation — Sets the image orientation
    • Imagick::setImagePage — Sets the page geometry of the image
    • Imagick::setImageProfile — Adds a named profile to the Imagick object
    • Imagick::setImageProperty — Sets an image property
    • Imagick::setImageRedPrimary — Sets the image chromaticity red primary point
    • Imagick::setImageRenderingIntent — Sets the image rendering intent
    • Imagick::setImageResolution — Sets the image resolution
    • Imagick::setImageScene — Sets the image scene
    • Imagick::setImageTicksPerSecond — Sets the image ticks-per-second
    • Imagick::setImageType — Sets the image type
    • Imagick::setImageUnits — Sets the image units of resolution
    • Imagick::setImageVirtualPixelMethod — Sets the image virtual pixel method
    • Imagick::setImageWhitePoint — Sets the image chromaticity white point
    • Imagick::setInterlaceScheme — Sets the image compression
    • Imagick::setIteratorIndex — Set the iterator position
    • Imagick::setLastIterator — Sets the Imagick iterator to the last image
    • Imagick::setOption — Set an option
    • Imagick::setPage — Sets the page geometry of the Imagick object
    • Imagick::setPointSize — Sets point size
    • Imagick::setResolution — Sets the image resolution
    • Imagick::setResourceLimit — Sets the limit for a particular resource in megabytes
    • Imagick::setSamplingFactors — Sets the image sampling factors
    • Imagick::setSize — Sets the size of the Imagick object
    • Imagick::setSizeOffset — Sets the size and offset of the Imagick object
    • Imagick::setType — Sets the image type attribute
    • Imagick::shadeImage — Creates a 3D effect
    • Imagick::shadowImage — Simulates an image shadow
    • Imagick::sharpenImage — Sharpens an image
    • Imagick::shaveImage — Shaves pixels from the image edges
    • Imagick::shearImage — Creating a parallelogram
    • Imagick::sigmoidalContrastImage — Adjusts the contrast of an image
    • Imagick::sketchImage — Simulates a pencil sketch
    • Imagick::solarizeImage — Applies a solarizing effect to the image
    • Imagick::sparseColorImage — Interpolates colors
    • Imagick::spliceImage — Splices a solid color into the image
    • Imagick::spreadImage — Randomly displaces each pixel in a block
    • Imagick::steganoImage — Hides a digital watermark within the image
    • Imagick::stereoImage — Composites two images
    • Imagick::stripImage — Strips an image of all profiles and comments
    • Imagick::swirlImage — Swirls the pixels about the center of the image
    • Imagick::textureImage — Repeatedly tiles the texture image
    • Imagick::thresholdImage — Changes the value of individual pixels based on a threshold
    • Imagick::thumbnailImage — Changes the size of an image
    • Imagick::tintImage — Applies a color vector to each pixel in the image
    • Imagick::transformImage — Convenience method for setting crop size and the image geometry
    • Imagick::transparentPaintImage — Paints pixels transparent
    • Imagick::transposeImage — Creates a vertical mirror image
    • Imagick::transverseImage — Creates a horizontal mirror image
    • Imagick::trimImage — Remove edges from the image
    • Imagick::uniqueImageColors — Discards all but one of any pixel color
    • Imagick::unsharpMaskImage — Sharpens an image
    • Imagick::valid — Checks if the current item is valid
    • Imagick::vignetteImage — Adds vignette filter to the image
    • Imagick::waveImage — Applies wave filter to the image
    • Imagick::whiteThresholdImage — Force all pixels above the threshold into white
    • Imagick::writeImage — Writes an image to the specified filename
    • Imagick::writeImageFile — Writes an image to a filehandle
    • Imagick::writeImages — Writes an image or image sequence
    • Imagick::writeImagesFile — Writes frames to a filehandle
  • The ImagickDraw class
    • ImagickDraw::affine — Adjusts the current affine transformation matrix
    • ImagickDraw::annotation — Draws text on the image
    • ImagickDraw::arc — Draws an arc
    • ImagickDraw::bezier — Draws a bezier curve
    • ImagickDraw::circle — Draws a circle
    • ImagickDraw::clear — Clears the ImagickDraw
    • ImagickDraw::clone — Makes an exact copy of the specified ImagickDraw object
    • ImagickDraw::color — Draws color on image
    • ImagickDraw::comment — Adds a comment
    • ImagickDraw::composite — Composites an image onto the current image
    • ImagickDraw::__construct — The ImagickDraw constructor
    • ImagickDraw::destroy — Frees all associated resources
    • ImagickDraw::ellipse — Draws an ellipse on the image
    • ImagickDraw::getClipPath — Obtains the current clipping path ID
    • ImagickDraw::getClipRule — Returns the current polygon fill rule
    • ImagickDraw::getClipUnits — Returns the interpretation of clip path units
    • ImagickDraw::getFillColor — Returns the fill color
    • ImagickDraw::getFillOpacity — Returns the opacity used when drawing
    • ImagickDraw::getFillRule — Returns the fill rule
    • ImagickDraw::getFont — Returns the font
    • ImagickDraw::getFontFamily — Returns the font family
    • ImagickDraw::getFontSize — Returns the font pointsize
    • ImagickDraw::getFontStyle — Returns the font style
    • ImagickDraw::getFontWeight — Returns the font weight
    • ImagickDraw::getGravity — Returns the text placement gravity
    • ImagickDraw::getStrokeAntialias — Returns the current stroke antialias setting
    • ImagickDraw::getStrokeColor — Returns the color used for stroking object outlines
    • ImagickDraw::getStrokeDashArray — Returns an array representing the pattern of dashes and gaps used to stroke paths
    • ImagickDraw::getStrokeDashOffset — Returns the offset into the dash pattern to start the dash
    • ImagickDraw::getStrokeLineCap — Returns the shape to be used at the end of open subpaths when they are stroked
    • ImagickDraw::getStrokeLineJoin — Returns the shape to be used at the corners of paths when they are stroked
    • ImagickDraw::getStrokeMiterLimit — Returns the stroke miter limit
    • ImagickDraw::getStrokeOpacity — Returns the opacity of stroked object outlines
    • ImagickDraw::getStrokeWidth — Returns the width of the stroke used to draw object outlines
    • ImagickDraw::getTextAlignment — Returns the text alignment
    • ImagickDraw::getTextAntialias — Returns the current text antialias setting
    • ImagickDraw::getTextDecoration — Returns the text decoration
    • ImagickDraw::getTextEncoding — Returns the code set used for text annotations
    • ImagickDraw::getTextUnderColor — Returns the text under color
    • ImagickDraw::getVectorGraphics — Returns a string containing vector graphics
    • ImagickDraw::line — Draws a line
    • ImagickDraw::matte — Paints on the image's opacity channel
    • ImagickDraw::pathClose — Adds a path element to the current path
    • ImagickDraw::pathCurveToAbsolute — Draws a cubic Bezier curve
    • ImagickDraw::pathCurveToQuadraticBezierAbsolute — Draws a quadratic Bezier curve
    • ImagickDraw::pathCurveToQuadraticBezierRelative — Draws a quadratic Bezier curve
    • ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute — Draws a quadratic Bezier curve
    • ImagickDraw::pathCurveToQuadraticBezierSmoothRelative — Draws a quadratic Bezier curve
    • ImagickDraw::pathCurveToRelative — Draws a cubic Bezier curve
    • ImagickDraw::pathCurveToSmoothAbsolute — Draws a cubic Bezier curve
    • ImagickDraw::pathCurveToSmoothRelative — Draws a cubic Bezier curve
    • ImagickDraw::pathEllipticArcAbsolute — Draws an elliptical arc
    • ImagickDraw::pathEllipticArcRelative — Draws an elliptical arc
    • ImagickDraw::pathFinish — Terminates the current path
    • ImagickDraw::pathLineToAbsolute — Draws a line path
    • ImagickDraw::pathLineToHorizontalAbsolute — Draws a horizontal line path
    • ImagickDraw::pathLineToHorizontalRelative — Draws a horizontal line
    • ImagickDraw::pathLineToRelative — Draws a line path
    • ImagickDraw::pathLineToVerticalAbsolute — Draws a vertical line
    • ImagickDraw::pathLineToVerticalRelative — Draws a vertical line path
    • ImagickDraw::pathMoveToAbsolute — Starts a new sub-path
    • ImagickDraw::pathMoveToRelative — Starts a new sub-path
    • ImagickDraw::pathStart — Declares the start of a path drawing list
    • ImagickDraw::point — Draws a point
    • ImagickDraw::polygon — Draws a polygon
    • ImagickDraw::polyline — Draws a polyline
    • ImagickDraw::pop — Destroys the current ImagickDraw in the stack, and returns to the previously pushed ImagickDraw
    • ImagickDraw::popClipPath — Terminates a clip path definition
    • ImagickDraw::popDefs — Terminates a definition list
    • ImagickDraw::popPattern — Terminates a pattern definition
    • ImagickDraw::push — Clones the current ImagickDraw and pushes it to the stack
    • ImagickDraw::pushClipPath — Starts a clip path definition
    • ImagickDraw::pushDefs — Indicates that following commands create named elements for early processing
    • ImagickDraw::pushPattern — Indicates that subsequent commands up to a ImagickDraw::opPattern() command comprise the definition of a named pattern
    • ImagickDraw::rectangle — Draws a rectangle
    • ImagickDraw::render — Renders all preceding drawing commands onto the image
    • ImagickDraw::rotate — Applies the specified rotation to the current coordinate space
    • ImagickDraw::roundRectangle — Draws a rounded rectangle
    • ImagickDraw::scale — Adjusts the scaling factor
    • ImagickDraw::setClipPath — Associates a named clipping path with the image
    • ImagickDraw::setClipRule — Set the polygon fill rule to be used by the clipping path
    • ImagickDraw::setClipUnits — Sets the interpretation of clip path units
    • ImagickDraw::setFillAlpha — Sets the opacity to use when drawing using the fill color or fill texture
    • ImagickDraw::setFillColor — Sets the fill color to be used for drawing filled objects
    • ImagickDraw::setFillOpacity — Sets the opacity to use when drawing using the fill color or fill texture
    • ImagickDraw::setFillPatternURL — Sets the URL to use as a fill pattern for filling objects
    • ImagickDraw::setFillRule — Sets the fill rule to use while drawing polygons
    • ImagickDraw::setFont — Sets the fully-specified font to use when annotating with text
    • ImagickDraw::setFontFamily — Sets the font family to use when annotating with text
    • ImagickDraw::setFontSize — Sets the font pointsize to use when annotating with text
    • ImagickDraw::setFontStretch — Sets the font stretch to use when annotating with text
    • ImagickDraw::setFontStyle — Sets the font style to use when annotating with text
    • ImagickDraw::setFontWeight — Sets the font weight
    • ImagickDraw::setGravity — Sets the text placement gravity
    • ImagickDraw::setStrokeAlpha — Specifies the opacity of stroked object outlines
    • ImagickDraw::setStrokeAntialias — Controls whether stroked outlines are antialiased
    • ImagickDraw::setStrokeColor — Sets the color used for stroking object outlines
    • ImagickDraw::setStrokeDashArray — Specifies the pattern of dashes and gaps used to stroke paths
    • ImagickDraw::setStrokeDashOffset — Specifies the offset into the dash pattern to start the dash
    • ImagickDraw::setStrokeLineCap — Specifies the shape to be used at the end of open subpaths when they are stroked
    • ImagickDraw::setStrokeLineJoin — Specifies the shape to be used at the corners of paths when they are stroked
    • ImagickDraw::setStrokeMiterLimit — Specifies the miter limit
    • ImagickDraw::setStrokeOpacity — Specifies the opacity of stroked object outlines
    • ImagickDraw::setStrokePatternURL — Sets the pattern used for stroking object outlines
    • ImagickDraw::setStrokeWidth — Sets the width of the stroke used to draw object outlines
    • ImagickDraw::setTextAlignment — Specifies a text alignment
    • ImagickDraw::setTextAntialias — Controls whether text is antialiased
    • ImagickDraw::setTextDecoration — Specifies a decoration
    • ImagickDraw::setTextEncoding — Specifies specifies the text code set
    • ImagickDraw::setTextUnderColor — Specifies the color of a background rectangle
    • ImagickDraw::setVectorGraphics — Sets the vector graphics
    • ImagickDraw::setViewbox — Sets the overall canvas size
    • ImagickDraw::skewX — Skews the current coordinate system in the horizontal direction
    • ImagickDraw::skewY — Skews the current coordinate system in the vertical direction
    • ImagickDraw::translate — Applies a translation to the current coordinate system
  • The ImagickPixel class
    • ImagickPixel::clear — Clears resources associated with this object
    • ImagickPixel::__construct — The ImagickPixel constructor
    • ImagickPixel::destroy — Deallocates resources associated with this object
    • ImagickPixel::getColor — Returns the color
    • ImagickPixel::getColorAsString — Returns the color as a string
    • ImagickPixel::getColorCount — Returns the color count associated with this color
    • ImagickPixel::getColorValue — Gets the normalized value of the provided color channel
    • ImagickPixel::getHSL — Returns the normalized HSL color of the ImagickPixel object
    • ImagickPixel::isSimilar — Check the distance between this color and another
    • ImagickPixel::setColor — Sets the color
    • ImagickPixel::setColorValue — Sets the normalized value of one of the channels
    • ImagickPixel::setHSL — Sets the normalized HSL color
  • The ImagickPixelIterator class
    • ImagickPixelIterator::clear — Clear resources associated with a PixelIterator
    • ImagickPixelIterator::__construct — The ImagickPixelIterator constructor
    • ImagickPixelIterator::destroy — Deallocates resources associated with a PixelIterator
    • ImagickPixelIterator::getCurrentIteratorRow — Returns the current row of ImagickPixel objects
    • ImagickPixelIterator::getIteratorRow — Returns the current pixel iterator row
    • ImagickPixelIterator::getNextIteratorRow — Returns the next row of the pixel iterator
    • ImagickPixelIterator::getPreviousIteratorRow — Returns the previous row
    • ImagickPixelIterator::newPixelIterator — Returns a new pixel iterator
    • ImagickPixelIterator::newPixelRegionIterator — Returns a new pixel iterator
    • ImagickPixelIterator::resetIterator — Resets the pixel iterator
    • ImagickPixelIterator::setIteratorFirstRow — Sets the pixel iterator to the first pixel row
    • ImagickPixelIterator::setIteratorLastRow — Sets the pixel iterator to the last pixel row
    • ImagickPixelIterator::setIteratorRow — Set the pixel iterator row
    • ImagickPixelIterator::syncIterator — Syncs the pixel iterator
png2wbmp
Introdução
Processamento de Imagem e Geração


Introdução

Imagick is a native php extension to create and modify images using the ImageMagick API.

ImageMagick® is a software suite to create, edit, and compose bitmap images.. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF.

Copyright 1999-2007 ImageMagick Studio LLC, a non-profit organization dedicated to making software imaging solutions freely available.

ImageMagick
Instalação/Configuração
ImageMagick


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
ImageMagick


Dependências

Installation requirements on Windows

Version information does not differ from that above. There are binaries available from http://www.imagemagick.org/ so that you can load this extension on Windows without need for a compiler.

Installation requirements on other platforms

PHP >= 5.1.3 and ImageMagick >= 6.2.4 is required. The amount of formats supported is by Imagick is entirely dependent upon the amount of formats supported by your ImageMagick installation. For example, Imagemagick requires ghostscript to conduct PDF operations.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/imagick.

Nota: The official name of this extension is imagick.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Imagick configuration options
Name | Default | Changeable | Changelog
imagick.locale_fix | FALSE | PHP_INI_ALL | Available since Imagick 2.1.0
imagick.progress_monitor | FALSE | PHP_INI_SYSTEM | Available since Imagick 2.2.2
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

imagick.locale_fix boolean

Fixes a drawing bug with locales that use ',' as float separators.

imagick.progress_monitor boolean

Used to enable the image progress monitor.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

COLOR_* constants

Colortype constants. These constants are mainly used with ImagickPixel.

imagick::COLOR_BLACK (integer)
Black color
imagick::COLOR_BLUE (integer)
Blue color
imagick::COLOR_CYAN (integer)
Cyan color
imagick::COLOR_GREEN (integer)
Green color
imagick::COLOR_RED (integer)
Red color
imagick::COLOR_YELLOW (integer)
Yellow color
imagick::COLOR_MAGENTA (integer)
Magenta color
imagick::COLOR_OPACITY (integer)
Color's opacity
imagick::COLOR_ALPHA (integer)
Color's alpha
imagick::COLOR_FUZZ (integer)
Color's fuzz
DISPOSE constants

Dispose type constants

imagick::DISPOSE_UNRECOGNIZED (integer)
Unrecognized dispose type
imagick::DISPOSE_UNDEFINED (integer)
Undefined dispose type
imagick::DISPOSE_NONE (integer)
No dispose type defined
imagick::DISPOSE_BACKGROUND (integer)
Dispose background
imagick::DISPOSE_PREVIOUS (integer)
Dispose previous
Composite Operator Constants
imagick::COMPOSITE_DEFAULT (integer)
The default composite operator
imagick::COMPOSITE_UNDEFINED (integer)
Undefined composite operator
imagick::COMPOSITE_NO (integer)
No composite operator defined
imagick::COMPOSITE_ADD (integer)
The result of image + image
imagick::COMPOSITE_ATOP (integer)
The result is the same shape as image, with composite image obscuring image where the image shapes overlap
imagick::COMPOSITE_BLEND (integer)
Blends the image
imagick::COMPOSITE_BUMPMAP (integer)
The same as COMPOSITE_MULTIPLY, except the source is converted to grayscale first.
imagick::COMPOSITE_CLEAR (integer)
Makes the target image transparent
imagick::COMPOSITE_COLORBURN (integer)
Darkens the destination image to reflect the source image
imagick::COMPOSITE_COLORDODGE (integer)
Brightens the destination image to reflect the source image
imagick::COMPOSITE_COLORIZE (integer)
Colorizes the target image using the composite image
imagick::COMPOSITE_COPYBLACK (integer)
Copies black from the source to target
imagick::COMPOSITE_COPYBLUE (integer)
Copies blue from the source to target
imagick::COMPOSITE_COPY (integer)
Copies the source image on the target image
imagick::COMPOSITE_COPYCYAN (integer)
Copies cyan from the source to target
imagick::COMPOSITE_COPYGREEN (integer)
Copies green from the source to target
imagick::COMPOSITE_COPYMAGENTA (integer)
Copies magenta from the source to target
imagick::COMPOSITE_COPYOPACITY (integer)
Copies opacity from the source to target
imagick::COMPOSITE_COPYRED (integer)
Copies red from the source to target
imagick::COMPOSITE_COPYYELLOW (integer)
Copies yellow from the source to target
imagick::COMPOSITE_DARKEN (integer)
Darkens the target image
imagick::COMPOSITE_DSTATOP (integer)
The part of the destination lying inside of the source is composited over the source and replaces the destination
imagick::COMPOSITE_DST (integer)
The target is left untouched
imagick::COMPOSITE_DSTIN (integer)
The parts inside the source replace the target
imagick::COMPOSITE_DSTOUT (integer)
The parts outside the source replace the target
imagick::COMPOSITE_DSTOVER (integer)
Target replaces the source
imagick::COMPOSITE_DIFFERENCE (integer)
Subtracts the darker of the two constituent colors from the lighter
imagick::COMPOSITE_DISPLACE (integer)
Shifts target image pixels as defined by the source
imagick::COMPOSITE_DISSOLVE (integer)
Dissolves the source in to the target
imagick::COMPOSITE_EXCLUSION (integer)
Produces an effect similar to that of imagick::COMPOSITE_DIFFERENCE, but appears as lower contrast
imagick::COMPOSITE_HARDLIGHT (integer)
Multiplies or screens the colors, dependent on the source color value
imagick::COMPOSITE_HUE (integer)
Modifies the hue of the target as defined by source
imagick::COMPOSITE_IN (integer)
Composites source into the target
imagick::COMPOSITE_LIGHTEN (integer)
Lightens the target as defined by source
imagick::COMPOSITE_LUMINIZE (integer)
Luminizes the target as defined by source
imagick::COMPOSITE_MINUS (integer)
Substracts the source from the target
imagick::COMPOSITE_MODULATE (integer)
Modulates the target brightness, saturation and hue as defined by source
imagick::COMPOSITE_MULTIPLY (integer)
Multiplies the target to the source
imagick::COMPOSITE_OUT (integer)
Composites outer parts of the source on the target
imagick::COMPOSITE_OVER (integer)
Composites source over the target
imagick::COMPOSITE_OVERLAY (integer)
Overlays the source on the target
imagick::COMPOSITE_PLUS (integer)
Adds the source to the target
imagick::COMPOSITE_REPLACE (integer)
Replaces the target with the source
imagick::COMPOSITE_SATURATE (integer)
Saturates the target as defined by the source
imagick::COMPOSITE_SCREEN (integer)
The source and destination are complemented and then multiplied and then replace the destination
imagick::COMPOSITE_SOFTLIGHT (integer)
Darkens or lightens the colors, dependent on the source
imagick::COMPOSITE_SRCATOP (integer)
The part of the source lying inside of the destination is composited onto the destination
imagick::COMPOSITE_SRC (integer)
The source is copied to the destination
imagick::COMPOSITE_SRCIN (integer)
The part of the source lying inside of the destination replaces the destination
imagick::COMPOSITE_SRCOUT (integer)
The part of the source lying outside of the destination replaces the destination
imagick::COMPOSITE_SRCOVER (integer)
The source replaces the destination
imagick::COMPOSITE_SUBTRACT (integer)
Subtract the colors in the source image from the destination image
imagick::COMPOSITE_THRESHOLD (integer)
The source is composited on the target as defined by source threshold
imagick::COMPOSITE_XOR (integer)
The part of the source that lies outside of the destination is combined with the part of the destination that lies outside of the source
MONTAGEMODE constants

imagick::MONTAGEMODE_FRAME (integer)
imagick::MONTAGEMODE_UNFRAME (integer)
imagick::MONTAGEMODE_CONCATENATE (integer)
STYLE constants

imagick::STYLE_NORMAL (integer)
imagick::STYLE_ITALIC (integer)
imagick::STYLE_OBLIQUE (integer)
imagick::STYLE_ANY (integer)
FILTER constants

imagick::FILTER_UNDEFINED (integer)
imagick::FILTER_POINT (integer)
imagick::FILTER_BOX (integer)
imagick::FILTER_TRIANGLE (integer)
imagick::FILTER_HERMITE (integer)
imagick::FILTER_HANNING (integer)
imagick::FILTER_HAMMING (integer)
imagick::FILTER_BLACKMAN (integer)
imagick::FILTER_GAUSSIAN (integer)
imagick::FILTER_QUADRATIC (integer)
imagick::FILTER_CUBIC (integer)
imagick::FILTER_CATROM (integer)
imagick::FILTER_MITCHELL (integer)
imagick::FILTER_LANCZOS (integer)
imagick::FILTER_BESSEL (integer)
imagick::FILTER_SINC (integer)
IMGTYPE constants

imagick::IMGTYPE_UNDEFINED (integer)
imagick::IMGTYPE_BILEVEL (integer)
imagick::IMGTYPE_GRAYSCALE (integer)
imagick::IMGTYPE_GRAYSCALEMATTE (integer)
imagick::IMGTYPE_PALETTE (integer)
imagick::IMGTYPE_PALETTEMATTE (integer)
imagick::IMGTYPE_TRUECOLOR (integer)
imagick::IMGTYPE_TRUECOLORMATTE (integer)
imagick::IMGTYPE_COLORSEPARATION (integer)
imagick::IMGTYPE_COLORSEPARATIONMATTE (integer)
imagick::IMGTYPE_OPTIMIZE (integer)
RESOLUTION constants

imagick::RESOLUTION_UNDEFINED (integer)
imagick::RESOLUTION_PIXELSPERINCH (integer)
imagick::RESOLUTION_PIXELSPERCENTIMETER (integer)
COMPRESSION constants

imagick::COMPRESSION_UNDEFINED (integer)
imagick::COMPRESSION_NO (integer)
imagick::COMPRESSION_BZIP (integer)
imagick::COMPRESSION_FAX (integer)
imagick::COMPRESSION_GROUP4 (integer)
imagick::COMPRESSION_JPEG (integer)
imagick::COMPRESSION_JPEG2000 (integer)
imagick::COMPRESSION_LOSSLESSJPEG (integer)
imagick::COMPRESSION_LZW (integer)
imagick::COMPRESSION_RLE (integer)
imagick::COMPRESSION_ZIP (integer)
imagick::COMPRESSION_DXT1 (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.0 or higher.
imagick::COMPRESSION_DXT3 (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.0 or higher.
imagick::COMPRESSION_DXT5 (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.0 or higher.
PAINT constants

imagick::PAINT_POINT (integer)
imagick::PAINT_REPLACE (integer)
imagick::PAINT_FLOODFILL (integer)
imagick::PAINT_FILLTOBORDER (integer)
imagick::PAINT_RESET (integer)
GRAVITY constants

imagick::GRAVITY_NORTHWEST (integer)
imagick::GRAVITY_NORTH (integer)
imagick::GRAVITY_NORTHEAST (integer)
imagick::GRAVITY_WEST (integer)
imagick::GRAVITY_CENTER (integer)
imagick::GRAVITY_EAST (integer)
imagick::GRAVITY_SOUTHWEST (integer)
imagick::GRAVITY_SOUTH (integer)
imagick::GRAVITY_SOUTHEAST (integer)
STRETCH constants

imagick::STRETCH_NORMAL (integer)
imagick::STRETCH_ULTRACONDENSED (integer)
imagick::STRETCH_CONDENSED (integer)
imagick::STRETCH_SEMICONDENSED (integer)
imagick::STRETCH_SEMIEXPANDED (integer)
imagick::STRETCH_EXPANDED (integer)
imagick::STRETCH_EXTRAEXPANDED (integer)
imagick::STRETCH_ULTRAEXPANDED (integer)
imagick::STRETCH_ANY (integer)
ALIGN constants

imagick::ALIGN_UNDEFINED (integer)
imagick::ALIGN_LEFT (integer)
imagick::ALIGN_CENTER (integer)
imagick::ALIGN_RIGHT (integer)
DECORATION constants

imagick::DECORATION_NO (integer)
imagick::DECORATION_UNDERLINE (integer)
imagick::DECORATION_OVERLINE (integer)
imagick::DECORATION_LINETROUGH (integer)
NOISE constants

imagick::NOISE_UNIFORM (integer)
imagick::NOISE_GAUSSIAN (integer)
imagick::NOISE_MULTIPLICATIVEGAUSSIAN (integer)
imagick::NOISE_IMPULSE (integer)
imagick::NOISE_LAPLACIAN (integer)
imagick::NOISE_POISSON (integer)
imagick::NOISE_RANDOM (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
CHANNEL constants

imagick::CHANNEL_UNDEFINED (integer)
imagick::CHANNEL_RED (integer)
imagick::CHANNEL_GRAY (integer)
imagick::CHANNEL_CYAN (integer)
imagick::CHANNEL_GREEN (integer)
imagick::CHANNEL_MAGENTA (integer)
imagick::CHANNEL_BLUE (integer)
imagick::CHANNEL_YELLOW (integer)
imagick::CHANNEL_ALPHA (integer)
imagick::CHANNEL_OPACITY (integer)
imagick::CHANNEL_MATTE (integer)
imagick::CHANNEL_BLACK (integer)
imagick::CHANNEL_INDEX (integer)
imagick::CHANNEL_ALL (integer)
imagick::CHANNEL_DEFAULT (integer)
METRIC constants

imagick::METRIC_UNDEFINED (integer)
imagick::METRIC_MEANABSOLUTEERROR (integer)
imagick::METRIC_MEANSQUAREERROR (integer)
imagick::METRIC_PEAKABSOLUTEERROR (integer)
imagick::METRIC_PEAKSIGNALTONOISERATIO (integer)
imagick::METRIC_ROOTMEANSQUAREDERROR (integer)
PIXEL constants

imagick::PIXEL_CHAR (integer)
imagick::PIXEL_DOUBLE (integer)
imagick::PIXEL_FLOAT (integer)
imagick::PIXEL_INTEGER (integer)
imagick::PIXEL_LONG (integer)
imagick::PIXEL_QUANTUM (integer)
imagick::PIXEL_SHORT (integer)
EVALUATE constants

imagick::EVALUATE_UNDEFINED (integer)
imagick::EVALUATE_ADD (integer)
imagick::EVALUATE_AND (integer)
imagick::EVALUATE_DIVIDE (integer)
imagick::EVALUATE_LEFTSHIFT (integer)
imagick::EVALUATE_MAX (integer)
imagick::EVALUATE_MIN (integer)
imagick::EVALUATE_MULTIPLY (integer)
imagick::EVALUATE_OR (integer)
imagick::EVALUATE_RIGHTSHIFT (integer)
imagick::EVALUATE_SET (integer)
imagick::EVALUATE_SUBTRACT (integer)
imagick::EVALUATE_XOR (integer)
imagick::EVALUATE_POW (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_LOG (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_THRESHOLD (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_THRESHOLDBLACK (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_THRESHOLDWHITE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_GAUSSIANNOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_IMPULSENOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_LAPLACIANNOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_MULTIPLICATIVENOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_POISSONNOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_UNIFORMNOISE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_COSINE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_SINE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
imagick::EVALUATE_ADDMODULUS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.4 or higher.
COLORSPACE constants

imagick::COLORSPACE_UNDEFINED (integer)
imagick::COLORSPACE_RGB (integer)
imagick::COLORSPACE_GRAY (integer)
imagick::COLORSPACE_TRANSPARENT (integer)
imagick::COLORSPACE_OHTA (integer)
imagick::COLORSPACE_LAB (integer)
imagick::COLORSPACE_XYZ (integer)
imagick::COLORSPACE_YCBCR (integer)
imagick::COLORSPACE_YCC (integer)
imagick::COLORSPACE_YIQ (integer)
imagick::COLORSPACE_YPBPR (integer)
imagick::COLORSPACE_YUV (integer)
imagick::COLORSPACE_CMYK (integer)
imagick::COLORSPACE_SRGB (integer)
imagick::COLORSPACE_HSB (integer)
imagick::COLORSPACE_HSL (integer)
imagick::COLORSPACE_HWB (integer)
imagick::COLORSPACE_REC601LUMA (integer)
imagick::COLORSPACE_REC709LUMA (integer)
imagick::COLORSPACE_LOG (integer)
imagick::COLORSPACE_CMY (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.2 or higher.
VIRTUALPIXELMETHOD constants

imagick::VIRTUALPIXELMETHOD_UNDEFINED (integer)
imagick::VIRTUALPIXELMETHOD_BACKGROUND (integer)
imagick::VIRTUALPIXELMETHOD_CONSTANT (integer)
imagick::VIRTUALPIXELMETHOD_EDGE (integer)
imagick::VIRTUALPIXELMETHOD_MIRROR (integer)
imagick::VIRTUALPIXELMETHOD_TILE (integer)
imagick::VIRTUALPIXELMETHOD_TRANSPARENT (integer)
imagick::VIRTUALPIXELMETHOD_MASK (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.2 or higher.
imagick::VIRTUALPIXELMETHOD_BLACK (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.2 or higher.
imagick::VIRTUALPIXELMETHOD_GRAY (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.2 or higher.
imagick::VIRTUALPIXELMETHOD_WHITE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.2 or higher.
imagick::VIRTUALPIXELMETHOD_HORIZONTALTILE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.3 or higher.
imagick::VIRTUALPIXELMETHOD_VERTICALTILE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.3 or higher.
PREVIEW constants

imagick::PREVIEW_UNDEFINED (integer)
imagick::PREVIEW_ROTATE (integer)
imagick::PREVIEW_SHEAR (integer)
imagick::PREVIEW_ROLL (integer)
imagick::PREVIEW_HUE (integer)
imagick::PREVIEW_SATURATION (integer)
imagick::PREVIEW_BRIGHTNESS (integer)
imagick::PREVIEW_GAMMA (integer)
imagick::PREVIEW_SPIFF (integer)
imagick::PREVIEW_DULL (integer)
imagick::PREVIEW_GRAYSCALE (integer)
imagick::PREVIEW_QUANTIZE (integer)
imagick::PREVIEW_DESPECKLE (integer)
imagick::PREVIEW_REDUCENOISE (integer)
imagick::PREVIEW_ADDNOISE (integer)
imagick::PREVIEW_SHARPEN (integer)
imagick::PREVIEW_BLUR (integer)
imagick::PREVIEW_THRESHOLD (integer)
imagick::PREVIEW_EDGEDETECT (integer)
imagick::PREVIEW_SPREAD (integer)
imagick::PREVIEW_SOLARIZE (integer)
imagick::PREVIEW_SHADE (integer)
imagick::PREVIEW_RAISE (integer)
imagick::PREVIEW_SEGMENT (integer)
imagick::PREVIEW_SWIRL (integer)
imagick::PREVIEW_IMPLODE (integer)
imagick::PREVIEW_WAVE (integer)
imagick::PREVIEW_OILPAINT (integer)
imagick::PREVIEW_CHARCOALDRAWING (integer)
imagick::PREVIEW_JPEG (integer)
RENDERINGINTENT constants

imagick::RENDERINGINTENT_UNDEFINED (integer)
imagick::RENDERINGINTENT_SATURATION (integer)
imagick::RENDERINGINTENT_PERCEPTUAL (integer)
imagick::RENDERINGINTENT_ABSOLUTE (integer)
imagick::RENDERINGINTENT_RELATIVE (integer)
INTERLACE constants

imagick::INTERLACE_UNDEFINED (integer)
imagick::INTERLACE_NO (integer)
imagick::INTERLACE_LINE (integer)
imagick::INTERLACE_PLANE (integer)
imagick::INTERLACE_PARTITION (integer)
imagick::INTERLACE_GIF (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.4 or higher.
imagick::INTERLACE_JPEG (integer)
imagick::INTERLACE_PNG (integer)
FILLRULE constants

imagick::FILLRULE_UNDEFINED (integer)
imagick::FILLRULE_EVENODD (integer)
imagick::FILLRULE_NONZERO (integer)
PATHUNITS constants

imagick::PATHUNITS_UNDEFINED (integer)
imagick::PATHUNITS_USERSPACE (integer)
imagick::PATHUNITS_USERSPACEONUSE (integer)
imagick::PATHUNITS_OBJECTBOUNDINGBOX (integer)
LINECAP constants

imagick::LINECAP_UNDEFINED (integer)
imagick::LINECAP_BUTT (integer)
imagick::LINECAP_ROUND (integer)
imagick::LINECAP_SQUARE (integer)
LINEJOIN constants

imagick::LINEJOIN_UNDEFINED (integer)
imagick::LINEJOIN_MITER (integer)
imagick::LINEJOIN_ROUND (integer)
imagick::LINEJOIN_BEVEL (integer)
RESOURCETYPE constants

imagick::RESOURCETYPE_UNDEFINED (integer)
imagick::RESOURCETYPE_AREA (integer)
imagick::RESOURCETYPE_DISK (integer)
imagick::RESOURCETYPE_FILE (integer)
imagick::RESOURCETYPE_MAP (integer)
imagick::RESOURCETYPE_MEMORY (integer)
LAYERMETHOD constants

imagick::LAYERMETHOD_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_COALESCE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_COMPAREANY (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_COMPARECLEAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_COMPAREOVERLAY (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_DISPOSE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_OPTIMIZE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_OPTIMIZEPLUS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.2.9 or higher.
imagick::LAYERMETHOD_OPTIMIZEIMAGE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::LAYERMETHOD_OPTIMIZETRANS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::LAYERMETHOD_REMOVEDUPS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::LAYERMETHOD_REMOVEZERO (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::LAYERMETHOD_COMPOSITE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::LAYERMETHOD_MERGE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.7 or higher.
imagick::LAYERMETHOD_FLATTEN (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.7 or higher.
imagick::LAYERMETHOD_MOSAIC (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.7 or higher.
ORIENTATION constants

imagick::ORIENTATION_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_TOPLEFT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_TOPRIGHT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_BOTTOMRIGHT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_BOTTOMLEFT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_LEFTTOP (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_RIGHTTOP (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_RIGHTBOTTOM (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
imagick::ORIENTATION_LEFTBOTTOM (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.0 or higher.
DISTORTION constants

imagick::DISTORTION_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_AFFINE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_AFFINEPROJECTION (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_ARC (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_BILINEAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_PERSPECTIVE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_PERSPECTIVEPROJECTION (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_SCALEROTATETRANSLATE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.6 or higher.
imagick::DISTORTION_POLYNOMIAL (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_POLAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_DEPOLAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_BARREL (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_BARRELINVERSE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_SHEPARDS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DISTORTION_SENTINEL (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
ALPHACHANNEL constants

imagick::ALPHACHANNEL_ACTIVATE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.8 or higher.
imagick::ALPHACHANNEL_DEACTIVATE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.8 or higher.
imagick::ALPHACHANNEL_RESET (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.8 or higher.
imagick::ALPHACHANNEL_SET (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.8 or higher.
imagick::ALPHACHANNEL_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::ALPHACHANNEL_COPY (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::ALPHACHANNEL_EXTRACT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::ALPHACHANNEL_OPAQUE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::ALPHACHANNEL_SHAPE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::ALPHACHANNEL_TRANSPARENT (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
SPARSECOLORMETHOD constants

imagick::SPARSECOLORMETHOD_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::SPARSECOLORMETHOD_BARYCENTRIC (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::SPARSECOLORMETHOD_BILINEAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::SPARSECOLORMETHOD_POLYNOMIAL (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::SPARSECOLORMETHOD_SPEPARDS (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::SPARSECOLORMETHOD_VORONOI (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
FUNCTION constants

imagick::FUNCTION_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.9 or higher.
imagick::FUNCTION_POLYNOMIAL (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.9 or higher.
imagick::FUNCTION_SINUSOID (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.9 or higher.
INTERPOLATE constants

imagick::INTERPOLATE_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_AVERAGE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_BICUBIC (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_BILINEAR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_FILTER (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_INTEGER (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_MESH (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_NEARESTNEIGHBOR (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.2 or higher.
imagick::INTERPOLATE_SPLINE (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.3.4 or higher.
DITHERMETHOD constants

imagick::DITHERMETHOD_UNDEFINED (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DITHERMETHOD_NO (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DITHERMETHOD_RIEMERSMA (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
imagick::DITHERMETHOD_FLOYDSTEINBERG (integer)
This constant is available if Imagick has been compiled against ImageMagick version 6.4.6 or higher.
Tipos Resource
Exemplos
ImageMagick


Exemplos
ImageMagick
PHP Manual

Exemplos

Índice

  • Exemplos
Constantes pré-definidas
Exemplos
ImageMagick


Exemplos
The Imagick class
Exemplos
PHP Manual

Exemplos

Imagick makes image manipulation in PHP extremely easy through an OO interface. Here is a quick example on how to make a thumbnail:

Exemplo #1 Creating a thumbnail in Imagick

<?php

header('Content-type: image/jpeg');

$image = new Imagick('image.jpg');

// If 0 is provided as a width or height parameter,
// aspect ratio is maintained
$image->thumbnailImage(100, 0);

echo $image;

?>

Using SPL and other OO features supported in Imagick, it can be simple to resize all files in a directory (useful for batch resizing large digital camera images to be web viewable). Here we use resize, as we might want to retain certain meta-data:

Exemplo #2 Make a thumbnail of all JPG files in a directory

<?php

$images = new Imagick(glob('images/*.JPG'));

foreach($images as $image) {

    // Providing 0 forces thumbnailImage to maintain aspect ratio
    $image->thumbnailImage(1024,0);

}

$images->writeImages();

?>

This is an example of creating a reflection of an image. The reflection is created by flipping the image and overlaying a gradient on it. Then both, the original image and the reflection is overlayed on a canvas.

Exemplo #3 Creating a reflection of an image

<?php
/* Read the image */
$im = new Imagick("test.png");

/* Thumbnail the image */
$im->thumbnailImage(200, null);

/* Create a border for the image */
$im->borderImage(new ImagickPixel("white"), 5, 5);

/* Clone the image and flip it */
$reflection = $im->clone();
$reflection->flipImage();

/* Create gradient. It will be overlayd on the reflection */
$gradient = new Imagick();

/* Gradient needs to be large enough for the image and the borders */
$gradient->newPseudoImage($reflection->getImageWidth() + 10, $reflection->getImageHeight() + 10, "gradient:transparent-black");

/* Composite the gradient on the reflection */
$reflection->compositeImage($gradient, imagick::COMPOSITE_OVER, 0, 0);

/* Add some opacity. Requires ImageMagick 6.2.9 or later */
$reflection->setImageOpacity( 0.3 );

/* Create an empty canvas */
$canvas = new Imagick();

/* Canvas needs to be large enough to hold the both images */
$width = $im->getImageWidth() + 40;
$height = ($im->getImageHeight() * 2) + 30;
$canvas->newImage($width, $height, new ImagickPixel("black"));
$canvas->setImageFormat("png");

/* Composite the original image and the reflection on the canvas */
$canvas->compositeImage($im, imagick::COMPOSITE_OVER, 20, 10);
$canvas->compositeImage($reflection, imagick::COMPOSITE_OVER, 20, $im->getImageHeight() + 10);

/* Output the image*/
header("Content-Type: image/png");
echo $canvas;
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Creating a reflection of an image

This example illustrates how to use fill patterns during drawing.

Exemplo #4 Filling text with gradient

<?php

/* Create a new imagick object */
$im = new Imagick();

/* Create new image. This will be used as fill pattern */
$im->newPseudoImage(50, 50, "gradient:red-black");

/* Create imagickdraw object */
$draw = new ImagickDraw();

/* Start a new pattern called "gradient" */
$draw->pushPattern('gradient', 0, 0, 50, 50);

/* Composite the gradient on the pattern */
$draw->composite(Imagick::COMPOSITE_OVER, 0, 0, 50, 50, $im);

/* Close the pattern */
$draw->popPattern();

/* Use the pattern called "gradient" as the fill */
$draw->setFillPatternURL('#gradient');

/* Set font size to 52 */
$draw->setFontSize(52);

/* Annotate some text */
$draw->annotation(20, 50, "Hello World!");

/* Create a new canvas object and a white image */
$canvas = new Imagick();
$canvas->newImage(350, 70, "white");

/* Draw the ImagickDraw on to the canvas */
$canvas->drawImage($draw);

/* 1px black border around the image */
$canvas->borderImage('black', 1, 1);

/* Set the format to PNG */
$canvas->setImageFormat('png');

/* Output the image */
header("Content-Type: image/png");
echo $canvas;
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Filling text with gradient

Working with animated GIF images

Exemplo #5 Read in GIF image and resize all frames

<?php

/* Create a new imagick object and read in GIF */
$im = new Imagick("example.gif");

/* Resize all frames */
foreach ($im as $frame) {
    /* 50x50 frames */
    $frame->thumbnailImage(50, 50);

    /* Set the virtual canvas to correct size */
    $frame->setImagePage(50, 50, 0, 0);
}

/* Notice writeImages instead of writeImage */
$im->writeImages("example_small.gif", true);
?>

Exemplos
The Imagick class
Exemplos
PHP Manual


The Imagick class

Sinopse da classe

Imagick implements Iterator , Traversable {
bool adaptiveBlurImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool adaptiveResizeImage ( int $columns , int $rows [, bool $bestfit = false ] )
bool adaptiveSharpenImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool adaptiveThresholdImage ( int $width , int $height , int $offset )
bool addImage ( Imagick $source )
bool addNoiseImage ( int $noise_type [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool affineTransformImage ( ImagickDraw $matrix )
bool animateImages ( string $x_server )
bool annotateImage ( ImagickDraw $draw_settings , float $x , float $y , float $angle , string $text )
Imagick appendImages ( bool $stack )
Imagick averageImages ( void )
bool blackThresholdImage ( mixed $threshold )
bool blurImage ( float $radius , float $sigma [, int $channel ] )
bool borderImage ( mixed $bordercolor , int $width , int $height )
bool charcoalImage ( float $radius , float $sigma )
bool chopImage ( int $width , int $height , int $x , int $y )
bool clear ( void )
bool clipImage ( void )
bool clipPathImage ( string $pathname , bool $inside )
Imagick clone ( void )
bool clutImage ( Imagick $lookup_table [, float $channel = Imagick::CHANNEL_DEFAULT ] )
Imagick coalesceImages ( void )
bool colorFloodfillImage ( mixed $fill , float $fuzz , mixed $bordercolor , int $x , int $y )
bool colorizeImage ( mixed $colorize , mixed $opacity )
Imagick combineImages ( int $channelType )
bool commentImage ( string $comment )
array compareImageChannels ( Imagick $image , int $channelType , int $metricType )
Imagick compareImageLayers ( int $method )
array compareImages ( Imagick $compare , int $metric )
bool compositeImage ( Imagick $composite_object , int $composite , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )
Imagick __construct ([ mixed $files ] )
bool contrastImage ( bool $sharpen )
bool contrastStretchImage ( float $black_point , float $white_point [, int $channel = Imagick::CHANNEL_ALL ] )
bool convolveImage ( array $kernel [, int $channel = Imagick::CHANNEL_ALL ] )
bool cropImage ( int $width , int $height , int $x , int $y )
bool cropThumbnailImage ( int $width , int $height )
Imagick current ( void )
bool cycleColormapImage ( int $displace )
bool decipherImage ( string $passphrase )
Imagick deconstructImages ( void )
bool deleteImageArtifact ( string $artifact )
public bool deskewImage ( float $threshold )
bool despeckleImage ( void )
bool destroy ( void )
bool displayImage ( string $servername )
bool displayImages ( string $servername )
bool distortImage ( int $method , array $arguments , bool $bestfit )
bool drawImage ( ImagickDraw $draw )
bool edgeImage ( float $radius )
bool embossImage ( float $radius , float $sigma )
bool encipherImage ( string $passphrase )
bool enhanceImage ( void )
bool equalizeImage ( void )
bool evaluateImage ( int $op , float $constant [, int $channel = Imagick::CHANNEL_ALL ] )
public array exportImagePixels ( int $x , int $y , int $width , int $height , string $map , int $STORAGE )
bool extentImage ( int $width , int $height , int $x , int $y )
Imagick flattenImages ( void )
bool flipImage ( void )
bool floodFillPaintImage ( mixed $fill , float $fuzz , mixed $target , int $x , int $y , bool $invert [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool flopImage ( void )
bool frameImage ( mixed $matte_color , int $width , int $height , int $inner_bevel , int $outer_bevel )
public bool functionImage ( int $function , array $arguments [, int $channel = Imagick::CHANNEL_DEFAULT ] )
Imagick fxImage ( string $expression [, int $channel = Imagick::CHANNEL_ALL ] )
bool gammaImage ( float $gamma [, int $channel = Imagick::CHANNEL_ALL ] )
bool gaussianBlurImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_ALL ] )
int getColorspace ( void )
int getCompression ( void )
int getCompressionQuality ( void )
string getCopyright ( void )
string getFilename ( void )
string getFont ( void )
string getFormat ( void )
int getGravity ( void )
string getHomeURL ( void )
Imagick getImage ( void )
int getImageAlphaChannel ( void )
string getImageArtifact ( string $artifact )
ImagickPixel getImageBackgroundColor ( void )
string getImageBlob ( void )
array getImageBluePrimary ( void )
ImagickPixel getImageBorderColor ( void )
int getImageChannelDepth ( int $channel )
float getImageChannelDistortion ( Imagick $reference , int $channel , int $metric )
float getImageChannelDistortions ( Imagick $reference , int $metric [, int $channel = Imagick::CHANNEL_DEFAULT ] )
array getImageChannelExtrema ( int $channel )
public array getImageChannelKurtosis ([ int $channel = Imagick::CHANNEL_DEFAULT ] )
array getImageChannelMean ( int $channel )
array getImageChannelRange ( int $channel )
array getImageChannelStatistics ( void )
Imagick getImageClipMask ( void )
ImagickPixel getImageColormapColor ( int $index )
int getImageColors ( void )
int getImageColorspace ( void )
int getImageCompose ( void )
int getImageCompression ( void )
int getCompressionQuality ( void )
int getImageDelay ( void )
int getImageDepth ( void )
int getImageDispose ( void )
float getImageDistortion ( MagickWand $reference , int $metric )
array getImageExtrema ( void )
string getImageFilename ( void )
string getImageFormat ( void )
float getImageGamma ( void )
array getImageGeometry ( void )
int getImageGravity ( void )
array getImageGreenPrimary ( void )
int getImageHeight ( void )
array getImageHistogram ( void )
int getImageIndex ( void )
int getImageInterlaceScheme ( void )
int getImageInterpolateMethod ( void )
int getImageIterations ( void )
int getImageLength ( void )
string getImageMagickLicense ( void )
bool getImageMatte ( void )
ImagickPixel getImageMatteColor ( void )
int getImageOrientation ( void )
array getImagePage ( void )
ImagickPixel getImagePixelColor ( int $x , int $y )
string getImageProfile ( string $name )
array getImageProfiles ([ string $pattern = "*" [, bool $only_names = true ]] )
array getImageProperties ([ string $pattern = "*" [, bool $only_names = true ]] )
string getImageProperty ( string $name )
array getImageRedPrimary ( void )
Imagick getImageRegion ( int $width , int $height , int $x , int $y )
int getImageRenderingIntent ( void )
array getImageResolution ( void )
string getImagesBlob ( void )
int getImageScene ( void )
string getImageSignature ( void )
int getImageSize ( void )
int getImageTicksPerSecond ( void )
float getImageTotalInkDensity ( void )
int getImageType ( void )
int getImageUnits ( void )
int getImageVirtualPixelMethod ( void )
array getImageWhitePoint ( void )
int getImageWidth ( void )
int getInterlaceScheme ( void )
int getIteratorIndex ( void )
int getNumberImages ( void )
string getOption ( string $key )
string getPackageName ( void )
array getPage ( void )
ImagickPixelIterator getPixelIterator ( void )
ImagickPixelIterator getPixelRegionIterator ( int $x , int $y , int $columns , int $rows )
float getPointSize ( void )
array getQuantumDepth ( void )
array getQuantumRange ( void )
string getReleaseDate ( void )
int getResource ( int $type )
int getResourceLimit ( int $type )
array getSamplingFactors ( void )
array getSize ( void )
int getSizeOffset ( void )
array getVersion ( void )
public bool haldClutImage ( Imagick $clut [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool hasNextImage ( void )
bool hasPreviousImage ( void )
array identifyImage ([ bool $appendRawOutput = false ] )
bool implodeImage ( float $radius )
public bool importImagePixels ( int $x , int $y , int $width , int $height , string $map , int $storage , array $pixels )
bool labelImage ( string $label )
bool levelImage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Imagick::CHANNEL_ALL ] )
bool linearStretchImage ( float $blackPoint , float $whitePoint )
bool liquidRescaleImage ( int $width , int $height , float $delta_x , float $rigidity )
bool magnifyImage ( void )
bool mapImage ( Imagick $map , bool $dither )
bool matteFloodfillImage ( float $alpha , float $fuzz , mixed $bordercolor , int $x , int $y )
bool medianFilterImage ( float $radius )
bool mergeImageLayers ( int $layer_method )
bool minifyImage ( void )
bool modulateImage ( float $brightness , float $saturation , float $hue )
Imagick montageImage ( ImagickDraw $draw , string $tile_geometry , string $thumbnail_geometry , int $mode , string $frame )
Imagick morphImages ( int $number_frames )
Imagick mosaicImages ( void )
bool motionBlurImage ( float $radius , float $sigma , float $angle [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool negateImage ( bool $gray [, int $channel = Imagick::CHANNEL_ALL ] )
bool newImage ( int $cols , int $rows , mixed $background [, string $format ] )
bool newPseudoImage ( int $columns , int $rows , string $pseudoString )
bool nextImage ( void )
bool normalizeImage ([ int $channel = Imagick::CHANNEL_ALL ] )
bool oilPaintImage ( float $radius )
bool opaquePaintImage ( mixed $target , mixed $fill , float $fuzz , bool $invert [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool optimizeImageLayers ( void )
bool orderedPosterizeImage ( string $threshold_map [, int $channel = Imagick::CHANNEL_ALL ] )
bool paintFloodfillImage ( mixed $fill , float $fuzz , mixed $bordercolor , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )
bool paintOpaqueImage ( mixed $target , mixed $fill , float $fuzz [, int $channel = Imagick::CHANNEL_ALL ] )
bool paintTransparentImage ( mixed $target , float $alpha , float $fuzz )
bool pingImage ( string $filename )
bool pingImageBlob ( string $image )
bool pingImageFile ( resource $filehandle [, string $fileName ] )
bool polaroidImage ( ImagickDraw $properties , float $angle )
bool posterizeImage ( int $levels , bool $dither )
bool previewImages ( int $preview )
bool previousImage ( void )
bool profileImage ( string $name , string $profile )
bool quantizeImage ( int $numberColors , int $colorspace , int $treedepth , bool $dither , bool $measureError )
bool quantizeImages ( int $numberColors , int $colorspace , int $treedepth , bool $dither , bool $measureError )
array queryFontMetrics ( ImagickDraw $properties , string $text [, bool $multiline ] )
array queryFonts ([ string $pattern = "*" ] )
array queryFormats ([ string $pattern = "*" ] )
bool radialBlurImage ( float $angle [, int $channel = Imagick::CHANNEL_ALL ] )
bool raiseImage ( int $width , int $height , int $x , int $y , bool $raise )
bool randomThresholdImage ( float $low , float $high [, int $channel = Imagick::CHANNEL_ALL ] )
bool readImage ( string $filename )
bool readImageBlob ( string $image [, string $filename ] )
bool readImageFile ( resource $filehandle [, string $fileName = null ] )
bool recolorImage ( array $matrix )
bool reduceNoiseImage ( float $radius )
public bool remapImage ( Imagick $replacement , int $DITHER )
bool removeImage ( void )
string removeImageProfile ( string $name )
bool render ( void )
bool resampleImage ( float $x_resolution , float $y_resolution , int $filter , float $blur )
bool resetImagePage ( string $page )
bool resizeImage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )
bool rollImage ( int $x , int $y )
bool rotateImage ( mixed $background , float $degrees )
bool roundCorners ( float $x_rounding , float $y_rounding [, float $stroke_width = 10 [, float $displace = 5 [, float $size_correction = -6 ]]] )
bool sampleImage ( int $columns , int $rows )
bool scaleImage ( int $cols , int $rows [, bool $bestfit = false ] )
public bool segmentImage ( int $COLORSPACE , float $cluster_threshold , float $smooth_threshold [, bool $verbose = false ] )
bool separateImageChannel ( int $channel )
bool sepiaToneImage ( float $threshold )
bool setBackgroundColor ( mixed $background )
bool setColorspace ( int $COLORSPACE )
bool setCompression ( int $compression )
bool setCompressionQuality ( int $quality )
bool setFilename ( string $filename )
bool setFirstIterator ( void )
bool setFont ( string $font )
bool setFormat ( string $format )
bool setGravity ( int $gravity )
bool setImage ( Imagick $replace )
bool setImageAlphaChannel ( int $mode )
bool setImageArtifact ( string $artifact , string $value )
bool setImageBackgroundColor ( mixed $background )
bool setImageBias ( float $bias )
bool setImageBluePrimary ( float $x , float $y )
bool setImageBorderColor ( mixed $border )
bool setImageChannelDepth ( int $channel , int $depth )
bool setImageClipMask ( Imagick $clip_mask )
bool setImageColormapColor ( int $index , ImagickPixel $color )
bool setImageColorspace ( int $colorspace )
bool setImageCompose ( int $compose )
bool setImageCompression ( int $compression )
bool setImageCompressionQuality ( int $quality )
bool setImageDelay ( int $delay )
bool setImageDepth ( int $depth )
bool setImageDispose ( int $dispose )
bool setImageExtent ( int $columns , int $rows )
bool setImageFilename ( string $filename )
bool setImageFormat ( string $format )
bool setImageGamma ( float $gamma )
bool setImageGravity ( int $gravity )
bool setImageGreenPrimary ( float $x , float $y )
bool setImageIndex ( int $index )
bool setImageInterlaceScheme ( int $interlace_scheme )
bool setImageInterpolateMethod ( int $method )
bool setImageIterations ( int $iterations )
bool setImageMatte ( bool $matte )
bool setImageMatteColor ( mixed $matte )
bool setImageOpacity ( float $opacity )
bool setImageOrientation ( int $orientation )
bool setImagePage ( int $width , int $height , int $x , int $y )
bool setImageProfile ( string $name , string $profile )
bool setImageProperty ( string $name , string $value )
bool setImageRedPrimary ( float $x , float $y )
bool setImageRenderingIntent ( int $rendering_intent )
bool setImageResolution ( float $x_resolution , float $y_resolution )
bool setImageScene ( int $scene )
bool setImageTicksPerSecond ( int $ticks_per-second )
bool setImageType ( int $image_type )
bool setImageUnits ( int $units )
bool setImageVirtualPixelMethod ( int $method )
bool setImageWhitePoint ( float $x , float $y )
bool setInterlaceScheme ( int $interlace_scheme )
bool setIteratorIndex ( int $index )
bool setLastIterator ( void )
bool setOption ( string $key , string $value )
bool setPage ( int $width , int $height , int $x , int $y )
bool setPointSize ( float $point_size )
bool setResolution ( float $x_resolution , float $y_resolution )
bool setResourceLimit ( int $type , int $limit )
bool setSamplingFactors ( array $factors )
bool setSize ( int $columns , int $rows )
bool setSizeOffset ( int $columns , int $rows , int $offset )
bool setType ( int $image_type )
bool shadeImage ( bool $gray , float $azimuth , float $elevation )
bool shadowImage ( float $opacity , float $sigma , int $x , int $y )
bool sharpenImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_ALL ] )
bool shaveImage ( int $columns , int $rows )
bool shearImage ( mixed $background , float $x_shear , float $y_shear )
bool sigmoidalContrastImage ( bool $sharpen , float $alpha , float $beta [, int $channel = Imagick::CHANNEL_ALL ] )
bool sketchImage ( float $radius , float $sigma , float $angle )
bool solarizeImage ( int $threshold )
public bool sparseColorImage ( int $SPARSE_METHOD , array $arguments [, int $channel = Imagick::CHANNEL_DEFAULT ] )
bool spliceImage ( int $width , int $height , int $x , int $y )
bool spreadImage ( float $radius )
Imagick steganoImage ( Imagick $watermark_wand , int $offset )
bool stereoImage ( Imagick $offset_wand )
bool stripImage ( void )
bool swirlImage ( float $degrees )
bool textureImage ( Imagick $texture_wand )
bool thresholdImage ( float $threshold [, int $channel = Imagick::CHANNEL_ALL ] )
bool thumbnailImage ( int $columns , int $rows [, bool $bestfit = false [, bool $fill = false ]] )
bool tintImage ( mixed $tint , mixed $opacity )
Imagick transformImage ( string $crop , string $geometry )
bool transparentPaintImage ( mixed $target , float $alpha , float $fuzz , bool $invert )
bool transposeImage ( void )
bool transverseImage ( void )
bool trimImage ( float $fuzz )
bool uniqueImageColors ( void )
bool unsharpMaskImage ( float $radius , float $sigma , float $amount , float $threshold [, int $channel = Imagick::CHANNEL_ALL ] )
bool valid ( void )
bool vignetteImage ( float $blackPoint , float $whitePoint , int $x , int $y )
bool waveImage ( float $amplitude , float $length )
bool whiteThresholdImage ( mixed $threshold )
bool writeImage ([ string $filename ] )
bool writeImageFile ( resource $filehandle )
bool writeImages ( string $filename , bool $adjoin )
bool writeImagesFile ( resource $filehandle )
}

Image methods and global methods

The Imagick class has the ability to hold and operate on multiple images simultaneously. This is achieved through an internal stack. There is always an internal pointer that points at the current image. Some functions operate on all images in the Imagick class, but most operate only on the current image in the internal stack. As a convention, method names can contain the word Image to denote they affect only the current image in the stack.

Class Methods

Because there are so many methods, here is a handy list of methods, somewhat reduced to their general purpose:

Class methods by purpose
Image effects | Get methods | Set methods | Read/write images | Other
Imagick::adaptiveBlurImage() | Imagick::getCompression() | Imagick::setBackgroundColor() | Imagick::__construct() | Imagick::clear()
Imagick::adaptiveResizeImage() | Imagick::getFilename() | Imagick::setCompressionQuality() | Imagick::addImage() | Imagick::clone()
Imagick::adaptiveSharpenImage() | Imagick::getFormat() | Imagick::setCompression() | Imagick::appendImages() | Imagick::current()
Imagick::adaptiveTresholdImage() | Imagick::getImageBackgroundColor() | Imagick::setFilename() | Imagick::getFilename() | Imagick::destroy()
Imagick::addNoiseImage() | Imagick::getImageBlob() | Imagick::getImagesBlob() | Imagick::setFormat() | Imagick::getFormat() | Imagick::getCopyright()
Imagick::affinetransformimage() | Imagick::getImageBluePrimary() | Imagick::setImageBackgroundColor() | Imagick::getImageFilename() | Imagick::getHomeURL()
Imagick::annotateImage() | Imagick::getImageBorderColor() | Imagick::setFirstIterator() | Imagick::getImageFormat() | Imagick::commentImage()
Imagick::averageImages() | Imagick::getImageChannelDepth() | Imagick::setImageBias() | Imagick::getImage() | Imagick::getNumberImages()
Imagick::blackThresholdImage() | Imagick::getImageChannelDistortion() | Imagick::setImageBluePrimary() | Imagick::setImageFilename() | Imagick::getReleaseDate()
Imagick::blurImage() | Imagick::getImageChannelExtrema() | Imagick::setImageBorderColor() | Imagick::setImageFormat() | Imagick::getVersion()
Imagick::borderImage() | Imagick::getImageChannelMean() | Imagick::setImageChannelDepth() | Imagick::readImageFile() | Imagick::hasNextImage()
Imagick::charcoalImage() | Imagick::getImageChannelStatistics() | Imagick::setImageColormapColor() | Imagick::readImage() | Imagick::hasPreviousImage()
Imagick::chopImage() | Imagick::getImageColormapColor() | Imagick::setImageColorSpace() | Imagick::writeImages() | Imagick::labelImage()
Imagick::clipImage() | Imagick::getImageColorspace() | Imagick::setImageCompose() | Imagick::writeImage() | Imagick::newImage()
Imagick::clipPathImage() | Imagick::getImageColors() | Imagick::setImageCompression() |  | Imagick::newPseudoImage()
Imagick::coalesceImages() | Imagick::getImageCompose() | Imagick::setImageDelay() |  | Imagick::nextImage()
Imagick::colorFloodFillImage() | Imagick::getImageDelay() | Imagick::setImageDepth() |  | Imagick::pingImageBlob()
Imagick::colorizeImage() | Imagick::getImageDepth() | Imagick::setImageDispose() |  | Imagick::pingImageFile()
Imagick::combineImages() | Imagick::getImageDispose() | Imagick::setImageDispose() |  | Imagick::pingImage()
Imagick::compareImageChannels() | Imagick::getImageDistortion() | Imagick::setImageExtent() |  | Imagick::previousImage()
Imagick::compareImageLayers() | Imagick::getImageExtrema() | Imagick::setImageFilename() |  | Imagick::profileImage()
Imagick::compositeImage() | Imagick::getImageFilename() | Imagick::setImageFormat() |  | Imagick::queryFormats()
Imagick::contrastImage() | Imagick::getImageFormat() | Imagick::setImageGamma() |  | Imagick::removeImageProfile()
Imagick::constrastStretchImage() | Imagick::getImageGamma() | Imagick::setImageGreenPrimary() |  | Imagick::removeImage()
Imagick::convolveImage() | Imagick::getImageGeometry() | Imagick::setImageIndex() |  | Imagick::setFirstIterator()
Imagick::cropImage() | Imagick::getImageGreenPrimary() | Imagick::setImageInterpolateMethod() |  | Imagick::setImageIndex()
Imagick::cycleColormapImage() | Imagick::getImageHeight() | Imagick::setImageIterations() |  | Imagick::valid()
Imagick::deconstructImages() | Imagick::getImageHistogram() | Imagick::setImageMatteColor() |  |
Imagick::drawImage() | Imagick::getImageIndex() | Imagick::setImageMatte() |  |
Imagick::edgeImage() | Imagick::getImageInterlaceScheme() | Imagick::setImagePage() |  |
Imagick::embossImage() | Imagick::getImageInterpolateMethod() | Imagick::setImageProfile() |  |
Imagick::enhanceImage() | Imagick::getImageIterations() | Imagick::setImageProperty() |  |
Imagick::equalizeImage() | Imagick::getImageMatteColor() | Imagick::setImageRedPrimary() |  |
Imagick::evaluateImage() | Imagick::getImageMatte() | Imagick::setImageRenderingIntent() |  |
Imagick::flattenImages() | Imagick::getImagePage() | Imagick::setImageResolution() |  |
Imagick::flipImage() | Imagick::getImagePixelColor() | Imagick::setImageScene() |  |
Imagick::flopImage() | Imagick::getImageProfile() | Imagick::setImageTicksPerSecond() |  |
Imagick::imageImage() | Imagick::getImageProperty() | Imagick::setImageType() |  |
Imagick::fxImage() | Imagick::getImageRedPrimary() | Imagick::setImageUnits() |  |
Imagick::gammaImage() | Imagick::getImageRegion() | Imagick::setImageVirtualPixelMethod() |  |
Imagick::gaussianBlurImage() | Imagick::getImageRenderingIntent() | Imagick::setImageWhitepoint() |  |
Imagick::implodeImage() | Imagick::getImageResolution() | Imagick::setInterlaceScheme() |  |
Imagick::levelImage() | Imagick::getImageScene() | Imagick::setOption() |  |
Imagick::linearStretchImage() | Imagick::getImageSignature() | Imagick::setPage() |  |
Imagick::magnifyImage() | Imagick::getImageTicksPerSecond() | Imagick::setResolution() |  |
Imagick::matteFloodFilleImage() | Imagick::getImageTotalInkDensity() | Imagick::setResourceLimit() |  |
Imagick::medianFilterImage() | Imagick::getImageType() | Imagick::setSamplingFactors() |  |
Imagick::minifyImage() | Imagick::getImageUnits() | Imagick::setSizeOffset() |  |
Imagick::modulateImage() | Imagick::getImageVirtualPixelMethod() | Imagick::setSize() |  |
Imagick::montageImage() | Imagick::getImageWhitepoint() | Imagick::setType() |  |
Imagick::morphImages() | Imagick::getImageWidth() |  |  |
Imagick::mosaicImages() | Imagick::getImage() |  |  |
Imagick::motionBlurImage() | Imagick::getInterlaceScheme() |  |  |
Imagick::negateImage() | Imagick::getNumberImages() |  |  |
Imagick::normalizeImage() | Imagick::getOption() |  |  |
Imagick::oilPaintImage() | Imagick::getPackageName() |  |  |
Imagick::optimizeImageLayers() | Imagick::getPage() |  |  |
Imagick::paintOpaqueImage() | Imagick::getPixelIterator() |  |  |
Imagick::paintTransparentImage() | Imagick::getPixelRegionIterator() |  |  |
Imagick::posterizeImage() | Imagick::getQuantumDepth() |  |  |
Imagick::radialBlurImage() | Imagick::getQuantumRange() |  |  |
Imagick::raiseImage() | Imagick::getResourceLimit() |  |  |
Imagick::randomThresholdImage() | Imagick::getResource() |  |  |
Imagick::reduceNoiseImage() | Imagick::getSamplingFactors() |  |  |
Imagick::render() | Imagick::getSizeOffset() |  |  |
Imagick::resampleImage() | Imagick::getSize() |  |  |
Imagick::resizeImage() | Imagick::identifyImage() |  |  |
Imagick::rollImage() | Imagick::getImageSize() |  |  |
Imagick::rotateImage() |  |  |  |
Imagick::sampleImage() |  |  |  |
Imagick::scaleImage() |  |  |  |
Imagick::separateImageChannel() |  |  |  |
Imagick::sepiaToneImage() |  |  |  |
Imagick::shadeImage() |  |  |  |
Imagick::shadowImage() |  |  |  |
Imagick::sharpenImage() |  |  |  |
Imagick::shaveImage() |  |  |  |
Imagick::shearImage() |  |  |  |
Imagick::sigmoidalContrastImage() |  |  |  |
Imagick::sketchImage() |  |  |  |
Imagick::solarizeImage() |  |  |  |
Imagick::spliceImage() |  |  |  |
Imagick::spreadImage() |  |  |  |
Imagick::steganoImage() |  |  |  |
Imagick::stereoImage() |  |  |  |
Imagick::stripImage() |  |  |  |
Imagick::swirlImage() |  |  |  |
Imagick::textureImage() |  |  |  |
Imagick::thresholdImage() |  |  |  |
Imagick::thumbnailImage() |  |  |  |
Imagick::tintImage() |  |  |  |
Imagick::transverseImage() |  |  |  |
Imagick::trimImage() |  |  |  |
Imagick::uniqueImageColors() |  |  |  |
Imagick::unsharpMaskImage() |  |  |  |
Imagick::vignetteImage() |  |  |  |
Imagick::waveImage() |  |  |  |
Imagick::whiteThresholdImage() |  |  |  |

Índice

  • Imagick::adaptiveBlurImage — Adds adaptive blur filter to image
  • Imagick::adaptiveResizeImage — Adaptively resize image with data dependent triangulation
  • Imagick::adaptiveSharpenImage — Adaptively sharpen the image
  • Imagick::adaptiveThresholdImage — Selects a threshold for each pixel based on a range of intensity
  • Imagick::addImage — Adds new image to Imagick object image list
  • Imagick::addNoiseImage — Adds random noise to the image
  • Imagick::affineTransformImage — Transforms an image
  • Imagick::animateImages — Animates an image or images
  • Imagick::annotateImage — Annotates an image with text
  • Imagick::appendImages — Append a set of images
  • Imagick::averageImages — Average a set of images
  • Imagick::blackThresholdImage — Forces all pixels below the threshold into black
  • Imagick::blurImage — Adds blur filter to image
  • Imagick::borderImage — Surrounds the image with a border
  • Imagick::charcoalImage — Simulates a charcoal drawing
  • Imagick::chopImage — Removes a region of an image and trims
  • Imagick::clear — Clears all resources associated to Imagick object
  • Imagick::clipImage — Clips along the first path from the 8BIM profile
  • Imagick::clipPathImage — Clips along the named paths from the 8BIM profile
  • Imagick::clone — Makes an exact copy of the Imagick object
  • Imagick::clutImage — Replaces colors in the image
  • Imagick::coalesceImages — Composites a set of images
  • Imagick::colorFloodfillImage — Changes the color value of any pixel that matches target
  • Imagick::colorizeImage — Blends the fill color with the image
  • Imagick::combineImages — Combines one or more images into a single image
  • Imagick::commentImage — Adds a comment to your image
  • Imagick::compareImageChannels — Returns the difference in one or more images
  • Imagick::compareImageLayers — Returns the maximum bounding region between images
  • Imagick::compareImages — Compares an image to a reconstructed image
  • Imagick::compositeImage — Composite one image onto another
  • Imagick::__construct — The Imagick constructor
  • Imagick::contrastImage — Change the contrast of the image
  • Imagick::contrastStretchImage — Enhances the contrast of a color image
  • Imagick::convolveImage — Applies a custom convolution kernel to the image
  • Imagick::cropImage — Extracts a region of the image
  • Imagick::cropThumbnailImage — Creates a crop thumbnail
  • Imagick::current — Returns a reference to the current Imagick object
  • Imagick::cycleColormapImage — Displaces an image's colormap
  • Imagick::decipherImage — Deciphers an image
  • Imagick::deconstructImages — Returns certain pixel differences between images
  • Imagick::deleteImageArtifact — Delete image artifact
  • Imagick::deskewImage — Removes skew from the image
  • Imagick::despeckleImage — Reduces the speckle noise in an image
  • Imagick::destroy — Destroys the Imagick object
  • Imagick::displayImage — Displays an image
  • Imagick::displayImages — Displays an image or image sequence
  • Imagick::distortImage — Distorts an image using various distortion methods
  • Imagick::drawImage — Renders the ImagickDraw object on the current image
  • Imagick::edgeImage — Enhance edges within the image
  • Imagick::embossImage — Returns a grayscale image with a three-dimensional effect
  • Imagick::encipherImage — Enciphers an image
  • Imagick::enhanceImage — Improves the quality of a noisy image
  • Imagick::equalizeImage — Equalizes the image histogram
  • Imagick::evaluateImage — Applies an expression to an image
  • Imagick::exportImagePixels — Exports raw image pixels
  • Imagick::extentImage — Set image size
  • Imagick::flattenImages — Merges a sequence of images
  • Imagick::flipImage — Creates a vertical mirror image
  • Imagick::floodFillPaintImage — Changes the color value of any pixel that matches target
  • Imagick::flopImage — Creates a horizontal mirror image
  • Imagick::frameImage — Adds a simulated three-dimensional border
  • Imagick::functionImage — Applies a function on the image
  • Imagick::fxImage — Evaluate expression for each pixel in the image
  • Imagick::gammaImage — Gamma-corrects an image
  • Imagick::gaussianBlurImage — Blurs an image
  • Imagick::getColorspace — Gets the colorspace
  • Imagick::getCompression — Gets the object compression type
  • Imagick::getCompressionQuality — Gets the object compression quality
  • Imagick::getCopyright — Returns the ImageMagick API copyright as a string
  • Imagick::getFilename — The filename associated with an image sequence
  • Imagick::getFont — Gets font
  • Imagick::getFormat — Returns the format of the Imagick object
  • Imagick::getGravity — Gets the gravity
  • Imagick::getHomeURL — Returns the ImageMagick home URL
  • Imagick::getImage — Returns a new Imagick object
  • Imagick::getImageAlphaChannel — Gets the image alpha channel
  • Imagick::getImageArtifact — Get image artifact
  • Imagick::getImageBackgroundColor — Returns the image background color
  • Imagick::getImageBlob — Returns the image sequence as a blob
  • Imagick::getImageBluePrimary — Returns the chromaticy blue primary point
  • Imagick::getImageBorderColor — Returns the image border color
  • Imagick::getImageChannelDepth — Gets the depth for a particular image channel
  • Imagick::getImageChannelDistortion — Compares image channels of an image to a reconstructed image
  • Imagick::getImageChannelDistortions — Gets channel distortions
  • Imagick::getImageChannelExtrema — Gets the extrema for one or more image channels
  • Imagick::getImageChannelKurtosis — The getImageChannelKurtosis purpose
  • Imagick::getImageChannelMean — Gets the mean and standard deviation
  • Imagick::getImageChannelRange — Gets channel range
  • Imagick::getImageChannelStatistics — Returns statistics for each channel in the image
  • Imagick::getImageClipMask — Gets image clip mask
  • Imagick::getImageColormapColor — Returns the color of the specified colormap index
  • Imagick::getImageColors — Gets the number of unique colors in the image
  • Imagick::getImageColorspace — Gets the image colorspace
  • Imagick::getImageCompose — Returns the composite operator associated with the image
  • Imagick::getImageCompression — Gets the current image's compression type
  • Imagick::getImageCompressionQuality — Gets the current image's compression quality
  • Imagick::getImageDelay — Gets the image delay
  • Imagick::getImageDepth — Gets the image depth
  • Imagick::getImageDispose — Gets the image disposal method
  • Imagick::getImageDistortion — Compares an image to a reconstructed image
  • Imagick::getImageExtrema — Gets the extrema for the image
  • Imagick::getImageFilename — Returns the filename of a particular image in a sequence
  • Imagick::getImageFormat — Returns the format of a particular image in a sequence
  • Imagick::getImageGamma — Gets the image gamma
  • Imagick::getImageGeometry — Gets the width and height as an associative array
  • Imagick::getImageGravity — Gets the image gravity
  • Imagick::getImageGreenPrimary — Returns the chromaticy green primary point
  • Imagick::getImageHeight — Returns the image height
  • Imagick::getImageHistogram — Gets the image histogram
  • Imagick::getImageIndex — Gets the index of the current active image
  • Imagick::getImageInterlaceScheme — Gets the image interlace scheme
  • Imagick::getImageInterpolateMethod — Returns the interpolation method
  • Imagick::getImageIterations — Gets the image iterations
  • Imagick::getImageLength — Returns the image length in bytes
  • Imagick::getImageMagickLicense — Returns a string containing the ImageMagick license
  • Imagick::getImageMatte — Return if the image has a matte channel
  • Imagick::getImageMatteColor — Returns the image matte color
  • Imagick::getImageOrientation — Gets the image orientation
  • Imagick::getImagePage — Returns the page geometry
  • Imagick::getImagePixelColor — Returns the color of the specified pixel
  • Imagick::getImageProfile — Returns the named image profile
  • Imagick::getImageProfiles — Returns the image profiles
  • Imagick::getImageProperties — Returns the image properties
  • Imagick::getImageProperty — Returns the named image property
  • Imagick::getImageRedPrimary — Returns the chromaticity red primary point
  • Imagick::getImageRegion — Extracts a region of the image
  • Imagick::getImageRenderingIntent — Gets the image rendering intent
  • Imagick::getImageResolution — Gets the image X and Y resolution
  • Imagick::getImagesBlob — Returns all image sequences as a blob
  • Imagick::getImageScene — Gets the image scene
  • Imagick::getImageSignature — Generates an SHA-256 message digest
  • Imagick::getImageSize — Returns the image length in bytes
  • Imagick::getImageTicksPerSecond — Gets the image ticks-per-second
  • Imagick::getImageTotalInkDensity — Gets the image total ink density
  • Imagick::getImageType — Gets the potential image type
  • Imagick::getImageUnits — Gets the image units of resolution
  • Imagick::getImageVirtualPixelMethod — Returns the virtual pixel method
  • Imagick::getImageWhitePoint — Returns the chromaticity white point
  • Imagick::getImageWidth — Returns the image width
  • Imagick::getInterlaceScheme — Gets the object interlace scheme
  • Imagick::getIteratorIndex — Gets the index of the current active image
  • Imagick::getNumberImages — Returns the number of images in the object
  • Imagick::getOption — Returns a value associated with the specified key
  • Imagick::getPackageName — Returns the ImageMagick package name
  • Imagick::getPage — Returns the page geometry
  • Imagick::getPixelIterator — Returns a MagickPixelIterator
  • Imagick::getPixelRegionIterator — Get an ImagickPixelIterator for an image section
  • Imagick::getPointSize — Gets point size
  • Imagick::getQuantumDepth — Gets the quantum depth
  • Imagick::getQuantumRange — Returns the Imagick quantum range
  • Imagick::getReleaseDate — Returns the ImageMagick release date
  • Imagick::getResource — Returns the specified resource's memory usage
  • Imagick::getResourceLimit — Returns the specified resource limit
  • Imagick::getSamplingFactors — Gets the horizontal and vertical sampling factor
  • Imagick::getSize — Returns the size associated with the Imagick object
  • Imagick::getSizeOffset — Returns the size offset
  • Imagick::getVersion — Returns the ImageMagick API version
  • Imagick::haldClutImage — Replaces colors in the image
  • Imagick::hasNextImage — Checks if the object has more images
  • Imagick::hasPreviousImage — Checks if the object has a previous image
  • Imagick::identifyImage — Identifies an image and fetches attributes
  • Imagick::implodeImage — Creates a new image as a copy
  • Imagick::importImagePixels — Imports image pixels
  • Imagick::labelImage — Adds a label to an image
  • Imagick::levelImage — Adjusts the levels of an image
  • Imagick::linearStretchImage — Stretches with saturation the image intensity
  • Imagick::liquidRescaleImage — Animates an image or images
  • Imagick::magnifyImage — Scales an image proportionally 2x
  • Imagick::mapImage — Replaces the colors of an image with the closest color from a reference image.
  • Imagick::matteFloodfillImage — Changes the transparency value of a color
  • Imagick::medianFilterImage — Applies a digital filter
  • Imagick::mergeImageLayers — Merges image layers
  • Imagick::minifyImage — Scales an image proportionally to half its size
  • Imagick::modulateImage — Control the brightness, saturation, and hue
  • Imagick::montageImage — Creates a composite image
  • Imagick::morphImages — Method morphs a set of images
  • Imagick::mosaicImages — Forms a mosaic from images
  • Imagick::motionBlurImage — Simulates motion blur
  • Imagick::negateImage — Negates the colors in the reference image
  • Imagick::newImage — Creates a new image
  • Imagick::newPseudoImage — Creates a new image
  • Imagick::nextImage — Moves to the next image
  • Imagick::normalizeImage — Enhances the contrast of a color image
  • Imagick::oilPaintImage — Simulates an oil painting
  • Imagick::opaquePaintImage — Changes the color value of any pixel that matches target
  • Imagick::optimizeImageLayers — Removes repeated portions of images to optimize
  • Imagick::orderedPosterizeImage — Performs an ordered dither
  • Imagick::paintFloodfillImage — Changes the color value of any pixel that matches target
  • Imagick::paintOpaqueImage — Change any pixel that matches color
  • Imagick::paintTransparentImage — Changes any pixel that matches color with the color defined by fill
  • Imagick::pingImage — Fetch basic attributes about the image
  • Imagick::pingImageBlob — Quickly fetch attributes
  • Imagick::pingImageFile — Get basic image attributes in a lightweight manner
  • Imagick::polaroidImage — Simulates a Polaroid picture
  • Imagick::posterizeImage — Reduces the image to a limited number of color level
  • Imagick::previewImages — Quickly pin-point appropriate parameters for image processing
  • Imagick::previousImage — Move to the previous image in the object
  • Imagick::profileImage — Adds or removes a profile from an image
  • Imagick::quantizeImage — Analyzes the colors within a reference image
  • Imagick::quantizeImages — Analyzes the colors within a sequence of images
  • Imagick::queryFontMetrics — Returns an array representing the font metrics
  • Imagick::queryFonts — Returns the configured fonts
  • Imagick::queryFormats — Returns formats supported by Imagick
  • Imagick::radialBlurImage — Radial blurs an image
  • Imagick::raiseImage — Creates a simulated 3d button-like effect
  • Imagick::randomThresholdImage — Creates a high-contrast, two-color image
  • Imagick::readImage — Reads image from filename
  • Imagick::readImageBlob — Reads image from a binary string
  • Imagick::readImageFile — Reads image from open filehandle
  • Imagick::recolorImage — Recolors image
  • Imagick::reduceNoiseImage — Smooths the contours of an image
  • Imagick::remapImage — Remaps image colors
  • Imagick::removeImage — Removes an image from the image list
  • Imagick::removeImageProfile — Removes the named image profile and returns it
  • Imagick::render — Renders all preceding drawing commands
  • Imagick::resampleImage — Resample image to desired resolution
  • Imagick::resetImagePage — Reset image page
  • Imagick::resizeImage — Scales an image
  • Imagick::rollImage — Offsets an image
  • Imagick::rotateImage — Rotates an image
  • Imagick::roundCorners — Rounds image corners
  • Imagick::sampleImage — Scales an image with pixel sampling
  • Imagick::scaleImage — Scales the size of an image
  • Imagick::segmentImage — Segments an image
  • Imagick::separateImageChannel — Separates a channel from the image
  • Imagick::sepiaToneImage — Sepia tones an image
  • Imagick::setBackgroundColor — Sets the object's default background color
  • Imagick::setColorspace — Set colorspace
  • Imagick::setCompression — Sets the object's default compression type
  • Imagick::setCompressionQuality — Sets the object's default compression quality
  • Imagick::setFilename — Sets the filename before you read or write the image
  • Imagick::setFirstIterator — Sets the Imagick iterator to the first image
  • Imagick::setFont — Sets font
  • Imagick::setFormat — Sets the format of the Imagick object
  • Imagick::setGravity — Sets the gravity
  • Imagick::setImage — Replaces image in the object
  • Imagick::setImageAlphaChannel — Sets image alpha channel
  • Imagick::setImageArtifact — Set image artifact
  • Imagick::setImageBackgroundColor — Sets the image background color
  • Imagick::setImageBias — Sets the image bias for any method that convolves an image
  • Imagick::setImageBluePrimary — Sets the image chromaticity blue primary point
  • Imagick::setImageBorderColor — Sets the image border color
  • Imagick::setImageChannelDepth — Sets the depth of a particular image channel
  • Imagick::setImageClipMask — Sets image clip mask
  • Imagick::setImageColormapColor — Sets the color of the specified colormap index
  • Imagick::setImageColorspace — Sets the image colorspace
  • Imagick::setImageCompose — Sets the image composite operator
  • Imagick::setImageCompression — Sets the image compression
  • Imagick::setImageCompressionQuality — Sets the image compression quality
  • Imagick::setImageDelay — Sets the image delay
  • Imagick::setImageDepth — Sets the image depth
  • Imagick::setImageDispose — Sets the image disposal method
  • Imagick::setImageExtent — Sets the image size
  • Imagick::setImageFilename — Sets the filename of a particular image
  • Imagick::setImageFormat — Sets the format of a particular image
  • Imagick::setImageGamma — Sets the image gamma
  • Imagick::setImageGravity — Sets the image gravity
  • Imagick::setImageGreenPrimary — Sets the image chromaticity green primary point
  • Imagick::setImageIndex — Set the iterator position
  • Imagick::setImageInterlaceScheme — Sets the image compression
  • Imagick::setImageInterpolateMethod — Sets the image interpolate pixel method
  • Imagick::setImageIterations — Sets the image iterations
  • Imagick::setImageMatte — Sets the image matte channel
  • Imagick::setImageMatteColor — Sets the image matte color
  • Imagick::setImageOpacity — Sets the image opacity level
  • Imagick::setImageOrientation — Sets the image orientation
  • Imagick::setImagePage — Sets the page geometry of the image
  • Imagick::setImageProfile — Adds a named profile to the Imagick object
  • Imagick::setImageProperty — Sets an image property
  • Imagick::setImageRedPrimary — Sets the image chromaticity red primary point
  • Imagick::setImageRenderingIntent — Sets the image rendering intent
  • Imagick::setImageResolution — Sets the image resolution
  • Imagick::setImageScene — Sets the image scene
  • Imagick::setImageTicksPerSecond — Sets the image ticks-per-second
  • Imagick::setImageType — Sets the image type
  • Imagick::setImageUnits — Sets the image units of resolution
  • Imagick::setImageVirtualPixelMethod — Sets the image virtual pixel method
  • Imagick::setImageWhitePoint — Sets the image chromaticity white point
  • Imagick::setInterlaceScheme — Sets the image compression
  • Imagick::setIteratorIndex — Set the iterator position
  • Imagick::setLastIterator — Sets the Imagick iterator to the last image
  • Imagick::setOption — Set an option
  • Imagick::setPage — Sets the page geometry of the Imagick object
  • Imagick::setPointSize — Sets point size
  • Imagick::setResolution — Sets the image resolution
  • Imagick::setResourceLimit — Sets the limit for a particular resource in megabytes
  • Imagick::setSamplingFactors — Sets the image sampling factors
  • Imagick::setSize — Sets the size of the Imagick object
  • Imagick::setSizeOffset — Sets the size and offset of the Imagick object
  • Imagick::setType — Sets the image type attribute
  • Imagick::shadeImage — Creates a 3D effect
  • Imagick::shadowImage — Simulates an image shadow
  • Imagick::sharpenImage — Sharpens an image
  • Imagick::shaveImage — Shaves pixels from the image edges
  • Imagick::shearImage — Creating a parallelogram
  • Imagick::sigmoidalContrastImage — Adjusts the contrast of an image
  • Imagick::sketchImage — Simulates a pencil sketch
  • Imagick::solarizeImage — Applies a solarizing effect to the image
  • Imagick::sparseColorImage — Interpolates colors
  • Imagick::spliceImage — Splices a solid color into the image
  • Imagick::spreadImage — Randomly displaces each pixel in a block
  • Imagick::steganoImage — Hides a digital watermark within the image
  • Imagick::stereoImage — Composites two images
  • Imagick::stripImage — Strips an image of all profiles and comments
  • Imagick::swirlImage — Swirls the pixels about the center of the image
  • Imagick::textureImage — Repeatedly tiles the texture image
  • Imagick::thresholdImage — Changes the value of individual pixels based on a threshold
  • Imagick::thumbnailImage — Changes the size of an image
  • Imagick::tintImage — Applies a color vector to each pixel in the image
  • Imagick::transformImage — Convenience method for setting crop size and the image geometry
  • Imagick::transparentPaintImage — Paints pixels transparent
  • Imagick::transposeImage — Creates a vertical mirror image
  • Imagick::transverseImage — Creates a horizontal mirror image
  • Imagick::trimImage — Remove edges from the image
  • Imagick::uniqueImageColors — Discards all but one of any pixel color
  • Imagick::unsharpMaskImage — Sharpens an image
  • Imagick::valid — Checks if the current item is valid
  • Imagick::vignetteImage — Adds vignette filter to the image
  • Imagick::waveImage — Applies wave filter to the image
  • Imagick::whiteThresholdImage — Force all pixels above the threshold into white
  • Imagick::writeImage — Writes an image to the specified filename
  • Imagick::writeImageFile — Writes an image to a filehandle
  • Imagick::writeImages — Writes an image or image sequence
  • Imagick::writeImagesFile — Writes frames to a filehandle
Exemplos
Imagick::adaptiveBlurImage
ImageMagick


Adds adaptive blur filter to image

The Imagick class
Imagick::adaptiveResizeImage
The Imagick class
PHP Manual

Imagick::adaptiveBlurImage

(PECL imagick 2.0.0)

Imagick::adaptiveBlurImage — Adds adaptive blur filter to image

Descrição

bool Imagick::adaptiveBlurImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Adds an adaptive blur filter to image. The intensity of an adaptive blur depends is dramatically decreased at edge of the image, whereas a standard blur is uniform across the image. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel. Provide a value of 0 and the radius will be chosen automagically.

sigma

The standard deviation of the Gaussian, in pixels.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::adaptiveBlurImage():

Adaptively blur an image, then display to the browser.

<?php

header('Content-type: image/jpeg');

$image = new Imagick('test.jpg');

$image->adaptiveBlurImage(5,3);
echo $image;

?>

O exemplo acima irá imprimir algo similar a:

Output of example : Using Imagick::adaptiveBlurImage()

Veja Também

  • Imagick::blurImage() - Adds blur filter to image
  • Imagick::motionBlurImage() - Simulates motion blur
  • Imagick::radialBlurImage() - Radial blurs an image

The Imagick class
Imagick::adaptiveResizeImage
The Imagick class


Adaptively resize image with data dependent triangulation

Imagick::adaptiveBlurImage
Imagick::adaptiveSharpenImage
The Imagick class
PHP Manual

Imagick::adaptiveResizeImage

(PECL imagick 2.0.0)

Imagick::adaptiveResizeImage — Adaptively resize image with data dependent triangulation

Descrição

bool Imagick::adaptiveResizeImage ( int $columns , int $rows [, bool $bestfit = false ] )

Adaptively resize image with data-dependent triangulation. Avoids blurring across sharp color changes. Most useful when used to shrink images slightly to a slightly smaller "web size"; may not look good when a full-sized image is adaptively resized to a thumbnail. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Nota: The behavior of the parameter bestfit changed in Imagick 3.0.0. Before this version given dimensions 400x400 an image of dimensions 200x150 would be left untouched. In Imagick 3.0.0 and later the image would be scaled up to size 400x300 as this is the "best fit" for the given dimensions. If bestfit parameter is used both width and height must be given.

Parâmetros

columns

The number of columns in the scaled image.

rows

The number of rows in the scaled image.

bestfit

Whether to fit the image inside a bounding box.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Added optional fit parameter.
2.1.0 | This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

Exemplos

Exemplo #1 Using Imagick::adaptiveResizeImage()

Resize an image to a standard size for the web. This method works best when resizing to a size only slightly smaller than the previous image size.

<?php
header('Content-type: image/jpeg');

$image = new Imagick('image.jpg');
$image->adaptiveResizeImage(1024,768);

echo $image;
?>

Veja Também

  • Imagick::chopImage() - Removes a region of an image and trims
  • Imagick::cropImage() - Extracts a region of the image
  • Imagick::magnifyImage() - Scales an image proportionally 2x
  • Imagick::minifyImage() - Scales an image proportionally to half its size
  • Imagick::resizeImage() - Scales an image
  • Imagick::scaleImage() - Scales the size of an image
  • Imagick::shaveImage() - Shaves pixels from the image edges
  • Imagick::thumbnailImage() - Changes the size of an image
  • Imagick::trimImage() - Remove edges from the image

Imagick::adaptiveBlurImage
Imagick::adaptiveSharpenImage
The Imagick class


Adaptively sharpen the image

Imagick::adaptiveResizeImage
Imagick::adaptiveThresholdImage
The Imagick class
PHP Manual

Imagick::adaptiveSharpenImage

(PECL imagick 2.0.0)

Imagick::adaptiveSharpenImage — Adaptively sharpen the image

Descrição

bool Imagick::adaptiveSharpenImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Adaptively sharpen the image by sharpening more intensely near image edges and less intensely far from edges. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel. Use 0 for auto-select.

sigma

The standard deviation of the Gaussian, in pixels.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 A Imagick::adaptiveSharpenImage() example

Adaptively sharpen the image with radius 2 and sigma 1.

<?php
try {
    $image = new Imagick('image.png');
    $image->adaptiveSharpenImage(2,1);
} catch(ImagickException $e) {
    echo 'Error: ' , $e->getMessage();
    die();
}
header('Content-type: image/png');
echo $image;
?>

Veja Também

  • Imagick::sharpenImage() - Sharpens an image

Imagick::adaptiveResizeImage
Imagick::adaptiveThresholdImage
The Imagick class


Selects a threshold for each pixel based on a range of intensity

Imagick::adaptiveSharpenImage
Imagick::addImage
The Imagick class
PHP Manual

Imagick::adaptiveThresholdImage

(PECL imagick 2.0.0)

Imagick::adaptiveThresholdImage — Selects a threshold for each pixel based on a range of intensity

Descrição

bool Imagick::adaptiveThresholdImage ( int $width , int $height , int $offset )

Selects an individual threshold for each pixel based on the range of intensity values in its local neighborhood. This allows for thresholding of an image whose global intensity histogram doesn't contain distinctive peaks.

Parâmetros

width

Width of the local neighborhood.

height

Height of the local neighborhood.

offset

The mean offset

Valor Retornado

Retorna TRUE em sucesso.

Imagick::adaptiveSharpenImage
Imagick::addImage
The Imagick class


Adds new image to Imagick object image list

Imagick::adaptiveThresholdImage
Imagick::addNoiseImage
The Imagick class
PHP Manual

Imagick::addImage

(PECL imagick 2.0.0)

Imagick::addImage — Adds new image to Imagick object image list

Descrição

bool Imagick::addImage ( Imagick $source )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds new image to Imagick object from the current position of the source object. After the operation iterator position is moved at the end of the list.

Parâmetros

source

The source Imagick object

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::adaptiveThresholdImage
Imagick::addNoiseImage
The Imagick class


Adds random noise to the image

Imagick::addImage
Imagick::affineTransformImage
The Imagick class
PHP Manual

Imagick::addNoiseImage

(PECL imagick 2.0.0)

Imagick::addNoiseImage — Adds random noise to the image

Descrição

bool Imagick::addNoiseImage ( int $noise_type [, int $channel = Imagick::CHANNEL_DEFAULT ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds random noise to the image.

Parâmetros

noise_type

The type of the noise. Refer to this list of noise constants.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::addImage
Imagick::affineTransformImage
The Imagick class


Transforms an image

Imagick::addNoiseImage
Imagick::animateImages
The Imagick class
PHP Manual

Imagick::affineTransformImage

(PECL imagick 2.0.0)

Imagick::affineTransformImage — Transforms an image

Descrição

bool Imagick::affineTransformImage ( ImagickDraw $matrix )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Transforms an image as dictated by the affine matrix.

Parâmetros

matrix

The affine matrix

Valor Retornado

Retorna TRUE em sucesso.

Imagick::addNoiseImage
Imagick::animateImages
The Imagick class


Animates an image or images

Imagick::affineTransformImage
Imagick::annotateImage
The Imagick class
PHP Manual

Imagick::animateImages

(No version information available, might only be in SVN)

Imagick::animateImages — Animates an image or images

Descrição

bool Imagick::animateImages ( string $x_server )

This method animates the image onto a local or remote X server. This method is not available on Windows. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

x_server

X server address

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::displayImage() - Displays an image

Imagick::affineTransformImage
Imagick::annotateImage
The Imagick class


Annotates an image with text

Imagick::animateImages
Imagick::appendImages
The Imagick class
PHP Manual

Imagick::annotateImage

(PECL imagick 2.0.0)

Imagick::annotateImage — Annotates an image with text

Descrição

bool Imagick::annotateImage ( ImagickDraw $draw_settings , float $x , float $y , float $angle , string $text )

Annotates an image with text.

Parâmetros

draw_settings

The ImagickDraw object that contains settings for drawing the text

x

Horizontal offset in pixels to the left of text

y

Vertical offset in pixels to the baseline of text

angle

The angle at which to write the text

text

The string to draw

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::annotateImage():

Annotate text on an empty image

<?php
/* Create some objects */
$image = new Imagick();
$draw = new ImagickDraw();
$pixel = new ImagickPixel( 'gray' );

/* New image */
$image->newImage(800, 75, $pixel);

/* Black text */
$draw->setFillColor('black');

/* Font properties */
$draw->setFont('Bookman-DemiItalic');
$draw->setFontSize( 30 );

/* Create text */
$image->annotateImage($draw, 10, 45, 0, 'The quick brown fox jumps over the lazy dog');

/* Give image a format */
$image->setImageFormat('png');

/* Output the image with headers */
header('Content-type: image/png');
echo $image;

?>

Veja Também

  • ImagickDraw::annotation() - Draws text on the image
  • ImagickDraw::setFont() - Sets the fully-specified font to use when annotating with text

Imagick::animateImages
Imagick::appendImages
The Imagick class


Append a set of images

Imagick::annotateImage
Imagick::averageImages
The Imagick class
PHP Manual

Imagick::appendImages

(PECL imagick 2.0.0)

Imagick::appendImages — Append a set of images

Descrição

Imagick Imagick::appendImages ( bool $stack )

Append a set of images into one larger image.

Parâmetros

stack

The direction of the stack (top to bottom or bottom to top)

Valor Retornado

Returns Imagick instance on success. Joga uma ImagickException em erro.

Exemplos

Exemplo #1 Imagick::appendImages() example

<?php

/* Create new imagick object */
$im = new Imagick();

/* create red, green and blue images */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");

/* Append the images into one */
$im->resetIterator();
$combined = $im->appendImages(true);

/* Output the image */
$combined->setImageFormat("png");
header("Content-Type: image/png");
echo $combined;
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Imagick::appendImages()

Imagick::annotateImage
Imagick::averageImages
The Imagick class


Average a set of images

Imagick::appendImages
Imagick::blackThresholdImage
The Imagick class
PHP Manual

Imagick::averageImages

(PECL imagick 2.0.0)

Imagick::averageImages — Average a set of images

Descrição

Imagick Imagick::averageImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Average a set of images.

Valor Retornado

Returns a new Imagick object on success. Joga uma ImagickException em erro.

Imagick::appendImages
Imagick::blackThresholdImage
The Imagick class


Forces all pixels below the threshold into black

Imagick::averageImages
Imagick::blurImage
The Imagick class
PHP Manual

Imagick::blackThresholdImage

(PECL imagick 2.0.0)

Imagick::blackThresholdImage — Forces all pixels below the threshold into black

Descrição

bool Imagick::blackThresholdImage ( mixed $threshold )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Is like Imagick::thresholdImage() but forces all pixels below the threshold into black while leaving all pixels above the threshold unchanged.

Parâmetros

threshold

The threshold below which everything turns black

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as a parameter. Previous versions allow only an ImagickPixel object.

Imagick::averageImages
Imagick::blurImage
The Imagick class


Adds blur filter to image

Imagick::blackThresholdImage
Imagick::borderImage
The Imagick class
PHP Manual

Imagick::blurImage

(PECL imagick 2.0.0)

Imagick::blurImage — Adds blur filter to image

Descrição

bool Imagick::blurImage ( float $radius , float $sigma [, int $channel ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds blur filter to image. Optional third parameter to blur a specific channel.

Parâmetros

radius

Blur radius

sigma

Standard deviation

channel

The Channeltype constant. When not supplied, all channels are blurred.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::blurImage():

Blur an image, then display to the browser.

<?php

header('Content-type: image/jpeg');

$image = new Imagick('test.jpg');

$image->blurImage(5,3);
echo $image;

?>

Veja Também

  • Imagick::adaptiveBlurImage() - Adds adaptive blur filter to image
  • Imagick::motionBlurImage() - Simulates motion blur
  • Imagick::radialBlurImage() - Radial blurs an image

Imagick::blackThresholdImage
Imagick::borderImage
The Imagick class


Surrounds the image with a border

Imagick::blurImage
Imagick::charcoalImage
The Imagick class
PHP Manual

Imagick::borderImage

(PECL imagick 2.0.0)

Imagick::borderImage — Surrounds the image with a border

Descrição

bool Imagick::borderImage ( mixed $bordercolor , int $width , int $height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Surrounds the image with a border of the color defined by the bordercolor ImagickPixel object.

Parâmetros

bordercolor

ImagickPixel object or a string containing the border color

width

Border width

height

Border height

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter. Previous versions allow only an ImagickPixel object.

Imagick::blurImage
Imagick::charcoalImage
The Imagick class


Simulates a charcoal drawing

Imagick::borderImage
Imagick::chopImage
The Imagick class
PHP Manual

Imagick::charcoalImage

(PECL imagick 2.0.0)

Imagick::charcoalImage — Simulates a charcoal drawing

Descrição

bool Imagick::charcoalImage ( float $radius , float $sigma )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Simulates a charcoal drawing.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel

sigma

The standard deviation of the Gaussian, in pixels

Valor Retornado

Retorna TRUE em sucesso.

Imagick::borderImage
Imagick::chopImage
The Imagick class


Removes a region of an image and trims

Imagick::charcoalImage
Imagick::clear
The Imagick class
PHP Manual

Imagick::chopImage

(PECL imagick 2.0.0)

Imagick::chopImage — Removes a region of an image and trims

Descrição

bool Imagick::chopImage ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Removes a region of an image and collapses the image to occupy the removed portion.

Parâmetros

width

Width of the chopped area

height

Height of the chopped area

x

X origo of the chopped area

y

Y origo of the chopped area

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::chopImage():

Example of using Imagick::chopImage

<?php
/* Create some objects */
$image = new Imagick();
$pixel = new ImagickPixel( 'gray' );

/* New image */
$image->newImage(400, 200, $pixel);

/* Chop image */
$image->chopImage(200, 200, 0, 0);

/* Give image a format */
$image->setImageFormat('png');

/* Output the image with headers */
header('Content-type: image/png');
echo $image;

?>

Veja Também

  • Imagick::cropImage() - Extracts a region of the image

Imagick::charcoalImage
Imagick::clear
The Imagick class


Clears all resources associated to Imagick object

Imagick::chopImage
Imagick::clipImage
The Imagick class
PHP Manual

Imagick::clear

(PECL imagick 2.0.0)

Imagick::clear — Clears all resources associated to Imagick object

Descrição

bool Imagick::clear ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clears all resources associated to Imagick object

Valor Retornado

Retorna TRUE em sucesso.

Imagick::chopImage
Imagick::clipImage
The Imagick class


Clips along the first path from the 8BIM profile

Imagick::clear
Imagick::clipPathImage
The Imagick class
PHP Manual

Imagick::clipImage

(PECL imagick 2.0.0)

Imagick::clipImage — Clips along the first path from the 8BIM profile

Descrição

bool Imagick::clipImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clips along the first path from the 8BIM profile, if present.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::clear
Imagick::clipPathImage
The Imagick class


Clips along the named paths from the 8BIM profile

Imagick::clipImage
Imagick::clone
The Imagick class
PHP Manual

Imagick::clipPathImage

(PECL imagick 2.0.0)

Imagick::clipPathImage — Clips along the named paths from the 8BIM profile

Descrição

bool Imagick::clipPathImage ( string $pathname , bool $inside )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clips along the named paths from the 8BIM profile, if present. Later operations take effect inside the path. It may be a number if preceded with #, to work on a numbered path, e.g., "#1" to use the first path.

Parâmetros

pathname

The name of the path

inside

If TRUE later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::clipImage
Imagick::clone
The Imagick class


Makes an exact copy of the Imagick object

Imagick::clipPathImage
Imagick::clutImage
The Imagick class
PHP Manual

Imagick::clone

(PECL imagick 2.0.0)

Imagick::clone — Makes an exact copy of the Imagick object

Descrição

Imagick Imagick::clone ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Makes an exact copy of the Imagick object.

Valor Retornado

Não há valor retornado.

Imagick::clipPathImage
Imagick::clutImage
The Imagick class


Replaces colors in the image

Imagick::clone
Imagick::coalesceImages
The Imagick class
PHP Manual

Imagick::clutImage

(PECL imagick 2.0.0)

Imagick::clutImage — Replaces colors in the image

Descrição

bool Imagick::clutImage ( Imagick $lookup_table [, float $channel = Imagick::CHANNEL_DEFAULT ] )

Replaces colors in the image from a color lookup table. Optional second parameter to replace colors in a specific channel. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

lookup_table

Imagick object containing the color lookup table

channel

The Channeltype constant. When not supplied, default channels are replaced.

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::clutImage():

Replace colors in the image from a color lookup table.

<?php
$image = new Imagick('test.jpg');
$clut = new Imagick();
$clut->newImage(1, 1, new ImagickPixel('black'));
$image->clutImage($clut);
$image->writeImage('test_out.jpg');
?>

Veja Também

  • Imagick::adaptiveBlurImage() - Adds adaptive blur filter to image
  • Imagick::motionBlurImage() - Simulates motion blur
  • Imagick::radialBlurImage() - Radial blurs an image

Imagick::clone
Imagick::coalesceImages
The Imagick class


Composites a set of images

Imagick::clutImage
Imagick::colorFloodfillImage
The Imagick class
PHP Manual

Imagick::coalesceImages

(PECL imagick 2.0.0)

Imagick::coalesceImages — Composites a set of images

Descrição

Imagick Imagick::coalesceImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Composites a set of images while respecting any page offsets and disposal methods. GIF, MIFF, and MNG animation sequences typically start with an image background and each subsequent image varies in size and offset. Returns a new Imagick object where each image in the sequence is the same size as the first and composited with the next image in the sequence.

Valor Retornado

Returns a new Imagick object on success. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::clutImage
Imagick::colorFloodfillImage
The Imagick class


Changes the color value of any pixel that matches target

Imagick::coalesceImages
Imagick::colorizeImage
The Imagick class
PHP Manual

Imagick::colorFloodfillImage

(PECL imagick 2.0.0)

Imagick::colorFloodfillImage — Changes the color value of any pixel that matches target

Descrição

bool Imagick::colorFloodfillImage ( mixed $fill , float $fuzz , mixed $bordercolor , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes the color value of any pixel that matches target and is an immediate neighbor.

Parâmetros

fill

ImagickPixel object containing the fill color

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.

bordercolor

ImagickPixel object containing the border color

x

X start position of the floodfill

y

Y start position of the floodfill

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as first and third parameter. Previous versions allow only an ImagickPixel object.

Imagick::coalesceImages
Imagick::colorizeImage
The Imagick class


Blends the fill color with the image

Imagick::colorFloodfillImage
Imagick::combineImages
The Imagick class
PHP Manual

Imagick::colorizeImage

(PECL imagick 2.0.0)

Imagick::colorizeImage — Blends the fill color with the image

Descrição

bool Imagick::colorizeImage ( mixed $colorize , mixed $opacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Blends the fill color with each pixel in the image.

Parâmetros

colorize

ImagickPixel object or a string containing the colorize color

opacity

ImagickPixel object or an float containing the opacity value. 1.0 is fully opaque and 0.0 is fully transparent.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter and a float representing the opacity value as the second parameter. Previous versions allow only an ImagickPixel objects.

Imagick::colorFloodfillImage
Imagick::combineImages
The Imagick class


Combines one or more images into a single image

Imagick::colorizeImage
Imagick::commentImage
The Imagick class
PHP Manual

Imagick::combineImages

(PECL imagick 2.0.0)

Imagick::combineImages — Combines one or more images into a single image

Descrição

Imagick Imagick::combineImages ( int $channelType )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Combines one or more images into a single image. The grayscale value of the pixels of each image in the sequence is assigned in order to the specified channels of the combined image. The typical ordering would be image 1 => Red, 2 => Green, 3 => Blue, etc.

Parâmetros

channelType

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::colorizeImage
Imagick::commentImage
The Imagick class


Adds a comment to your image

Imagick::combineImages
Imagick::compareImageChannels
The Imagick class
PHP Manual

Imagick::commentImage

(PECL imagick 2.0.0)

Imagick::commentImage — Adds a comment to your image

Descrição

bool Imagick::commentImage ( string $comment )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a comment to your image.

Parâmetros

comment

The comment to add

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::commentImage():

Commenting an image and retrieving the comment:

<?php

/* Create new Imagick object */
$im = new imagick();

/* Create an empty image */
$im->newImage(100, 100, new ImagickPixel("red"));

/* Add comment to the image */
$im->commentImage("Hello World!");

/* Display the comment */
echo $im->getImageProperty("comment");

?>

Imagick::combineImages
Imagick::compareImageChannels
The Imagick class


Returns the difference in one or more images

Imagick::commentImage
Imagick::compareImageLayers
The Imagick class
PHP Manual

Imagick::compareImageChannels

(PECL imagick 2.0.0)

Imagick::compareImageChannels — Returns the difference in one or more images

Descrição

array Imagick::compareImageChannels ( Imagick $image , int $channelType , int $metricType )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Compares one or more images and returns the difference image.

Parâmetros

image

Imagick object containing the image to compare.

channelType

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

metricType

One of the metric type constants.

Valor Retornado

Array consisting of new_wand and distortion.

Erros

Dispara ImagickException em erro.

Imagick::commentImage
Imagick::compareImageLayers
The Imagick class


Returns the maximum bounding region between images

Imagick::compareImageChannels
Imagick::compareImages
The Imagick class
PHP Manual

Imagick::compareImageLayers

(PECL imagick 2.0.0)

Imagick::compareImageLayers — Returns the maximum bounding region between images

Descrição

Imagick Imagick::compareImageLayers ( int $method )

Compares each image with the next in a sequence and returns the maximum bounding region of any pixel differences it discovers. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

method

One of the layer method constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::compareImageLayers()

Comparing image layers

<?php
/* create new imagick object */
$im = new Imagick("test.gif");

/* optimize the image layers */
$result = $im->compareImageLayers(imagick::LAYERMETHOD_COALESCE);

/* work on the $result */
?>

Veja Também

  • Imagick::optimizeImageLayers() - Removes repeated portions of images to optimize
  • Imagick::writeImages() - Writes an image or image sequence
  • Imagick::writeImage() - Writes an image to the specified filename

Imagick::compareImageChannels
Imagick::compareImages
The Imagick class


Compares an image to a reconstructed image

Imagick::compareImageLayers
Imagick::compositeImage
The Imagick class
PHP Manual

Imagick::compareImages

(PECL imagick 2.0.0)

Imagick::compareImages — Compares an image to a reconstructed image

Descrição

array Imagick::compareImages ( Imagick $compare , int $metric )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns an array containing a reconstructed image and the difference between images.

Parâmetros

compare

An image to compare to.

metric

Provide a valid metric type constant. Refer to this list of metric constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::compareImages():

Compare images and display the reconstructed image

<?php

$image1 = new imagick("image1.png");
$image2 = new imagick("image2.png");

$result = $image1->compareImages($image2, Imagick::METRIC_MEANSQUAREERROR);
$result[0]->setImageFormat("png");

header("Content-Type: image/png");
echo $result[0];

?>

Imagick::compareImageLayers
Imagick::compositeImage
The Imagick class


Composite one image onto another

Imagick::compareImages
Imagick::__construct
The Imagick class
PHP Manual

Imagick::compositeImage

(PECL imagick 2.0.0)

Imagick::compositeImage — Composite one image onto another

Descrição

bool Imagick::compositeImage ( Imagick $composite_object , int $composite , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Composite one image onto another at the specified offset.

Parâmetros

composite_object

Imagick object which holds the composite image

compose

Composite operator. See Composite Operator Constants

x

The column offset of the composited image

y

The row offset of the composited image

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::compareImages
Imagick::__construct
The Imagick class


The Imagick constructor

Imagick::compositeImage
Imagick::contrastImage
The Imagick class
PHP Manual

Imagick::__construct

(PECL imagick 2.0.0)

Imagick::__construct — The Imagick constructor

Descrição

Imagick Imagick::__construct ([ mixed $files ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

The Imagick constructor

Parâmetros

files

The path to an image to load or array of paths

Valor Retornado

Returns a new Imagick object on success. Joga uma ImagickException em erro.

Imagick::compositeImage
Imagick::contrastImage
The Imagick class


Change the contrast of the image

Imagick::__construct
Imagick::contrastStretchImage
The Imagick class
PHP Manual

Imagick::contrastImage

(PECL imagick 2.0.0)

Imagick::contrastImage — Change the contrast of the image

Descrição

bool Imagick::contrastImage ( bool $sharpen )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Enhances the intensity differences between the lighter and darker elements of the image. Set sharpen to a value other than 0 to increase the image contrast otherwise the contrast is reduced.

Parâmetros

sharpen

The sharpen value

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::__construct
Imagick::contrastStretchImage
The Imagick class


Enhances the contrast of a color image

Imagick::contrastImage
Imagick::convolveImage
The Imagick class
PHP Manual

Imagick::contrastStretchImage

(PECL imagick 2.0.0)

Imagick::contrastStretchImage — Enhances the contrast of a color image

Descrição

bool Imagick::contrastStretchImage ( float $black_point , float $white_point [, int $channel = Imagick::CHANNEL_ALL ] )

Enhances the contrast of a color image by adjusting the pixels color to span the entire range of colors available. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

black_point

The black point.

white_point

The white point.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Imagick::CHANNEL_ALL. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::contrastImage
Imagick::convolveImage
The Imagick class


Applies a custom convolution kernel to the image

Imagick::contrastStretchImage
Imagick::cropImage
The Imagick class
PHP Manual

Imagick::convolveImage

(PECL imagick 2.0.0)

Imagick::convolveImage — Applies a custom convolution kernel to the image

Descrição

bool Imagick::convolveImage ( array $kernel [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a custom convolution kernel to the image.

Parâmetros

kernel

The convolution kernel

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::contrastStretchImage
Imagick::cropImage
The Imagick class


Extracts a region of the image

Imagick::convolveImage
Imagick::cropThumbnailImage
The Imagick class
PHP Manual

Imagick::cropImage

(PECL imagick 2.0.0)

Imagick::cropImage — Extracts a region of the image

Descrição

bool Imagick::cropImage ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Extracts a region of the image.

Parâmetros

width

The width of the crop

height

The height of the crop

x

The X coordinate of the cropped region's top left corner

y

The Y coordinate of the cropped region's top left corner

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::convolveImage
Imagick::cropThumbnailImage
The Imagick class


Creates a crop thumbnail

Imagick::cropImage
Imagick::current
The Imagick class
PHP Manual

Imagick::cropThumbnailImage

(PECL imagick 2.0.0)

Imagick::cropThumbnailImage — Creates a crop thumbnail

Descrição

bool Imagick::cropThumbnailImage ( int $width , int $height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a fixed size thumbnail by first scaling the image up or down and cropping a specified area from the center.

Parâmetros

width

The width of the thumbnail

height

The Height of the thumbnail

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::cropImage
Imagick::current
The Imagick class


Returns a reference to the current Imagick object

Imagick::cropThumbnailImage
Imagick::cycleColormapImage
The Imagick class
PHP Manual

Imagick::current

(PECL imagick 2.0.0)

Imagick::current — Returns a reference to the current Imagick object

Descrição

Imagick Imagick::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns reference to the current imagick object with image pointer at the correct sequence.

Valor Retornado

Returns self on success. Joga uma ImagickException em erro.

Imagick::cropThumbnailImage
Imagick::cycleColormapImage
The Imagick class


Displaces an image's colormap

Imagick::current
Imagick::decipherImage
The Imagick class
PHP Manual

Imagick::cycleColormapImage

(PECL imagick 2.0.0)

Imagick::cycleColormapImage — Displaces an image's colormap

Descrição

bool Imagick::cycleColormapImage ( int $displace )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Displaces an image's colormap by a given number of positions. If you cycle the colormap a number of times you can produce a psychedelic effect.

Parâmetros

displace

The amount to displace the colormap.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::current
Imagick::decipherImage
The Imagick class


Deciphers an image

Imagick::cycleColormapImage
Imagick::deconstructImages
The Imagick class
PHP Manual

Imagick::decipherImage

(No version information available, might only be in SVN)

Imagick::decipherImage — Deciphers an image

Descrição

bool Imagick::decipherImage ( string $passphrase )

Deciphers image that has been enciphered before. The image must be enciphered using Imagick::encipherImage(). This method is available if Imagick has been compiled against ImageMagick version 6.3.9 or newer.

Parâmetros

passphrase

The passphrase

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::encipherImage() - Enciphers an image

Imagick::cycleColormapImage
Imagick::deconstructImages
The Imagick class


Returns certain pixel differences between images

Imagick::decipherImage
Imagick::deleteImageArtifact
The Imagick class
PHP Manual

Imagick::deconstructImages

(PECL imagick 2.0.0)

Imagick::deconstructImages — Returns certain pixel differences between images

Descrição

Imagick Imagick::deconstructImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Compares each image with the next in a sequence and returns the maximum bounding region of any pixel differences it discovers.

Valor Retornado

Returns a new Imagick object on success. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::decipherImage
Imagick::deleteImageArtifact
The Imagick class


Delete image artifact

Imagick::deconstructImages
Imagick::deskewImage
The Imagick class
PHP Manual

Imagick::deleteImageArtifact

(No version information available, might only be in SVN)

Imagick::deleteImageArtifact — Delete image artifact

Descrição

bool Imagick::deleteImageArtifact ( string $artifact )

Deletes an artifact associated with the image. The difference between image properties and image artifacts is that properties are public and artifacts are private. This method is available if Imagick has been compiled against ImageMagick version 6.5.7 or newer.

Parâmetros

artifact

The name of the artifact

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Veja Também

  • Imagick::setImageArtifact() - Set image artifact
  • Imagick::getImageArtifact() - Get image artifact

Imagick::deconstructImages
Imagick::deskewImage
The Imagick class


Removes skew from the image

Imagick::deleteImageArtifact
Imagick::despeckleImage
The Imagick class
PHP Manual

Imagick::deskewImage

(No version information available, might only be in SVN)

Imagick::deskewImage — Removes skew from the image

Descrição

public bool Imagick::deskewImage ( float $threshold )

This method can be used to remove skew from for example scanned images where the paper was not properly placed on the scanning surface. This method is available if Imagick has been compiled against ImageMagick version 6.4.5 or newer.

Parâmetros

threshold

Deskew threshold

Valor Retornado

Imagick::deleteImageArtifact
Imagick::despeckleImage
The Imagick class


Reduces the speckle noise in an image

Imagick::deskewImage
Imagick::destroy
The Imagick class
PHP Manual

Imagick::despeckleImage

(PECL imagick 2.0.0)

Imagick::despeckleImage — Reduces the speckle noise in an image

Descrição

bool Imagick::despeckleImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Reduces the speckle noise in an image while preserving the edges of the original image.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::deskewImage
Imagick::destroy
The Imagick class


Destroys the Imagick object

Imagick::despeckleImage
Imagick::displayImage
The Imagick class
PHP Manual

Imagick::destroy

(PECL imagick 2.0.0)

Imagick::destroy — Destroys the Imagick object

Descrição

bool Imagick::destroy ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Destroys the Imagick object and frees all resources associated with it.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::despeckleImage
Imagick::displayImage
The Imagick class


Displays an image

Imagick::destroy
Imagick::displayImages
The Imagick class
PHP Manual

Imagick::displayImage

(PECL imagick 2.0.0)

Imagick::displayImage — Displays an image

Descrição

bool Imagick::displayImage ( string $servername )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

This method displays an image on a X server.

Parâmetros

servername

The X server name

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::destroy
Imagick::displayImages
The Imagick class


Displays an image or image sequence

Imagick::displayImage
Imagick::distortImage
The Imagick class
PHP Manual

Imagick::displayImages

(PECL imagick 2.0.0)

Imagick::displayImages — Displays an image or image sequence

Descrição

bool Imagick::displayImages ( string $servername )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Displays an image or image sequence on a X server.

Parâmetros

servername

The X server name

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::displayImage
Imagick::distortImage
The Imagick class


Distorts an image using various distortion methods

Imagick::displayImages
Imagick::drawImage
The Imagick class
PHP Manual

Imagick::distortImage

(PECL imagick 2.0.1)

Imagick::distortImage — Distorts an image using various distortion methods

Descrição

bool Imagick::distortImage ( int $method , array $arguments , bool $bestfit )

Distorts an image using various distortion methods, by mapping color lookups of the source image to a new destination image usually of the same size as the source image, unless 'bestfit' is set to TRUE.

If 'bestfit' is enabled, and distortion allows it, the destination image is adjusted to ensure the whole source 'image' will just fit within the final destination image, which will be sized and offset accordingly. Also in many cases the virtual offset of the source image will be taken into account in the mapping.

This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

method

The method of image distortion. See distortion constants

arguments

The arguments for this distortion method

bestfit

Attempt to resize destination to fit distorted source

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::distortImage():

Distort an image and display to the browser.

<?php
/* Create new object */
$im = new Imagick();

/* Create new checkerboard pattern */
$im->newPseudoImage(100, 100, "pattern:checkerboard");

/* Set the image format to png */
$im->setImageFormat('png');

/* Fill new visible areas with transparent */
$im->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);

/* Activate matte */
$im->setImageMatte(true);

/* Control points for the distortion */
$controlPoints = array( 10, 10,
                        10, 5,

                        10, $im->getImageHeight() - 20,
                        10, $im->getImageHeight() - 5,

                        $im->getImageWidth() - 10, 10,
                        $im->getImageWidth() - 10, 20,

                        $im->getImageWidth() - 10, $im->getImageHeight() - 10,
                        $im->getImageWidth() - 10, $im->getImageHeight() - 30);

/* Perform the distortion */
$im->distortImage(Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);

/* Ouput the image */
header("Content-Type: image/png");
echo $im;
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Using Imagick::distortImage()

Veja Também

  • Imagick::blurImage() - Adds blur filter to image
  • Imagick::motionBlurImage() - Simulates motion blur
  • Imagick::radialBlurImage() - Radial blurs an image

Imagick::displayImages
Imagick::drawImage
The Imagick class


Renders the ImagickDraw object on the current image

Imagick::distortImage
Imagick::edgeImage
The Imagick class
PHP Manual

Imagick::drawImage

(PECL imagick 2.0.0)

Imagick::drawImage — Renders the ImagickDraw object on the current image

Descrição

bool Imagick::drawImage ( ImagickDraw $draw )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Renders the ImagickDraw object on the current image.

Parâmetros

draw

The drawing operations to render on the image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::distortImage
Imagick::edgeImage
The Imagick class


Enhance edges within the image

Imagick::drawImage
Imagick::embossImage
The Imagick class
PHP Manual

Imagick::edgeImage

(PECL imagick 2.0.0)

Imagick::edgeImage — Enhance edges within the image

Descrição

bool Imagick::edgeImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Enhance edges within the image with a convolution filter of the given radius. Use radius 0 and it will be auto-selected.

Parâmetros

radius

The radius of the operation.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::drawImage
Imagick::embossImage
The Imagick class


Returns a grayscale image with a three-dimensional effect

Imagick::edgeImage
Imagick::encipherImage
The Imagick class
PHP Manual

Imagick::embossImage

(PECL imagick 2.0.0)

Imagick::embossImage — Returns a grayscale image with a three-dimensional effect

Descrição

bool Imagick::embossImage ( float $radius , float $sigma )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a grayscale image with a three-dimensional effect. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and it will choose a suitable radius for you.

Parâmetros

radius

The radius of the effect

sigma

The sigma of the effect

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::edgeImage
Imagick::encipherImage
The Imagick class


Enciphers an image

Imagick::embossImage
Imagick::enhanceImage
The Imagick class
PHP Manual

Imagick::encipherImage

(No version information available, might only be in SVN)

Imagick::encipherImage — Enciphers an image

Descrição

bool Imagick::encipherImage ( string $passphrase )

Converts plain pixels to enciphered pixels. The image is not readable until it has been deciphered using Imagick::decipherImage() This method is available if Imagick has been compiled against ImageMagick version 6.3.9 or newer.

Parâmetros

passphrase

The passphrase

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::decipherImage() - Deciphers an image

Imagick::embossImage
Imagick::enhanceImage
The Imagick class


Improves the quality of a noisy image

Imagick::encipherImage
Imagick::equalizeImage
The Imagick class
PHP Manual

Imagick::enhanceImage

(PECL imagick 2.0.0)

Imagick::enhanceImage — Improves the quality of a noisy image

Descrição

bool Imagick::enhanceImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a digital filter that improves the quality of a noisy image.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::encipherImage
Imagick::equalizeImage
The Imagick class


Equalizes the image histogram

Imagick::enhanceImage
Imagick::evaluateImage
The Imagick class
PHP Manual

Imagick::equalizeImage

(PECL imagick 2.0.0)

Imagick::equalizeImage — Equalizes the image histogram

Descrição

bool Imagick::equalizeImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Equalizes the image histogram.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::enhanceImage
Imagick::evaluateImage
The Imagick class


Applies an expression to an image

Imagick::equalizeImage
Imagick::exportImagePixels
The Imagick class
PHP Manual

Imagick::evaluateImage

(PECL imagick 2.0.0)

Imagick::evaluateImage — Applies an expression to an image

Descrição

bool Imagick::evaluateImage ( int $op , float $constant [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applys an arithmetic, relational, or logical expression to an image. Use these operators to lighten or darken an image, to increase or decrease contrast in an image, or to produce the "negative" of an image.

Parâmetros

op

The operator

constant

The value of the operator

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::equalizeImage
Imagick::exportImagePixels
The Imagick class


Exports raw image pixels

Imagick::evaluateImage
Imagick::extentImage
The Imagick class
PHP Manual

Imagick::exportImagePixels

(No version information available, might only be in SVN)

Imagick::exportImagePixels — Exports raw image pixels

Descrição

public array Imagick::exportImagePixels ( int $x , int $y , int $width , int $height , string $map , int $STORAGE )

Exports image pixels into an array. The map defines the ordering of the exported pixels. The size of the returned array is width * height * strlen(map). This method is available if Imagick has been compiled against ImageMagick version 6.4.7 or newer.

Parâmetros

x

X-coordinate of the exported area

y

Y-coordinate of the exported area

width

Width of the exported aread

height

Height of the exported area

map

Ordering of the exported pixels. For example "RGB". Valid characters for the map are R, G, B, A, O, C, Y, M, K, I and P.

STORAGE

Refer to this list of pixel type constants

Exemplos

Exemplo #1 Using Imagick::exportImagePixels()

Export image pixels into an array

<?php

/* Create new object */
$im = new Imagick();

/* Create new image */
$im->newPseudoImage(0, 0, "magick:rose");

/* Export the image pixels */
$pixels = $im->exportImagePixels(10, 10, 2, 2, "RGB", Imagick::PIXEL_CHAR);

/* Output */
var_dump($pixels);
?>

O exemplo acima irá imprimir:

array(12) {
  [0]=>
  int(72)
  [1]=>
  int(64)
  [2]=>
  int(57)
  [3]=>
  int(69)
  [4]=>
  int(59)
  [5]=>
  int(43)
  [6]=>
  int(124)
  [7]=>
  int(120)
  [8]=>
  int(-96)
  [9]=>
  int(91)
  [10]=>
  int(84)
  [11]=>
  int(111)
}

Valor Retornado

Returns an array containing the pixels values.

Erros

Dispara ImagickException em erro.

Imagick::evaluateImage
Imagick::extentImage
The Imagick class


Set image size

Imagick::exportImagePixels
Imagick::flattenImages
The Imagick class
PHP Manual

Imagick::extentImage

(No version information available, might only be in SVN)

Imagick::extentImage — Set image size

Descrição

bool Imagick::extentImage ( int $width , int $height , int $x , int $y )

Comfortability method for setting image size. The method sets the image size and allows setting x,y coordinates where the new area begins. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.1 ou mais nova.

Parâmetros

width

The new width

height

The new height

x

X position for the new size

y

Y position for the new size

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::resizeImage() - Scales an image
  • Imagick::thumbnailImage() - Changes the size of an image
  • Imagick::cropImage() - Extracts a region of the image

Imagick::exportImagePixels
Imagick::flattenImages
The Imagick class


Merges a sequence of images

Imagick::extentImage
Imagick::flipImage
The Imagick class
PHP Manual

Imagick::flattenImages

(PECL imagick 2.0.0)

Imagick::flattenImages — Merges a sequence of images

Descrição

Imagick Imagick::flattenImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Merges a sequence of images. This is useful for combining Photoshop layers into a single image.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::extentImage
Imagick::flipImage
The Imagick class


Creates a vertical mirror image

Imagick::flattenImages
Imagick::floodFillPaintImage
The Imagick class
PHP Manual

Imagick::flipImage

(PECL imagick 2.0.0)

Imagick::flipImage — Creates a vertical mirror image

Descrição

bool Imagick::flipImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a vertical mirror image by reflecting the pixels around the central x-axis.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::flattenImages
Imagick::floodFillPaintImage
The Imagick class


Changes the color value of any pixel that matches target

Imagick::flipImage
Imagick::flopImage
The Imagick class
PHP Manual

Imagick::floodFillPaintImage

(No version information available, might only be in SVN)

Imagick::floodFillPaintImage — Changes the color value of any pixel that matches target

Descrição

bool Imagick::floodFillPaintImage ( mixed $fill , float $fuzz , mixed $target , int $x , int $y , bool $invert [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Changes the color value of any pixel that matches target and is an immediate neighbor. This method is a replacement for deprecated Imagick::paintFloodFillImage(). This method is available if Imagick has been compiled against ImageMagick version 6.3.8 or newer.

Parâmetros

fill

ImagickPixel object or a string containing the fill color

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.

target

ImagickPixel object or a string containing the target color to paint

x

X start position of the floodfill

y

Y start position of the floodfill

invert

If TRUE paints any pixel that does not match the target color.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Imagick::floodfillPaintImage() example

<?php

/* Create new imagick object */
$im = new Imagick();

/* create red, green and blue images */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");

/* Append the images into one */
$im->resetIterator();
$combined = $im->appendImages(true);

/* Save the intermediate image for comparison */
$combined->writeImage("floodfillpaint_intermediate.png");

/* The target pixel to paint */
$x = 1;
$y = 1;

/* Get the color we are painting */
$target = $combined->getImagePixelColor($x, $y);

/* Paints pixel in position 1,1 black and all neighboring
   pixels that match the target color */
$combined->floodfillPaintImage("black", 1, $target, $x, $y, false);

/* Save the result */
$combined->writeImage("floodfillpaint_result.png");
?>

O exemplo acima irá imprimir algo similar a:

Output of example : Imagick::floodfillPaintImage()
Output of example : Imagick::floodfillPaintImage()

Imagick::flipImage
Imagick::flopImage
The Imagick class


Creates a horizontal mirror image

Imagick::floodFillPaintImage
Imagick::frameImage
The Imagick class
PHP Manual

Imagick::flopImage

(PECL imagick 2.0.0)

Imagick::flopImage — Creates a horizontal mirror image

Descrição

bool Imagick::flopImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a horizontal mirror image by reflecting the pixels around the central y-axis.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::floodFillPaintImage
Imagick::frameImage
The Imagick class


Adds a simulated three-dimensional border

Imagick::flopImage
Imagick::functionImage
The Imagick class
PHP Manual

Imagick::frameImage

(PECL imagick 2.0.0)

Imagick::frameImage — Adds a simulated three-dimensional border

Descrição

bool Imagick::frameImage ( mixed $matte_color , int $width , int $height , int $inner_bevel , int $outer_bevel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a simulated three-dimensional border around the image. The width and height specify the border width of the vertical and horizontal sides of the frame. The inner and outer bevels indicate the width of the inner and outer shadows of the frame.

Parâmetros

matte_color

ImagickPixel object or a string representing the matte color

width

The width of the border

height

The height of the border

inner_bevel

The inner bevel width

outer_bevel

The outer bevel width

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter. Previous versions allow only an ImagickPixel object.

Imagick::flopImage
Imagick::functionImage
The Imagick class


Applies a function on the image

Imagick::frameImage
Imagick::fxImage
The Imagick class
PHP Manual

Imagick::functionImage

(No version information available, might only be in SVN)

Imagick::functionImage — Applies a function on the image

Descrição

public bool Imagick::functionImage ( int $function , array $arguments [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Applies an arithmetic, relational, or logical expression to an image. Use these operators to create lighter or darker versions of an image, to increase or decrease contrast in an image, or to negate the image colors. This method is available if Imagick has been compiled against ImageMagick version 6.4.9 or newer.

Parâmetros

function

Refer to this list of function constants

arguments

Array of arguments to pass to this function.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::frameImage
Imagick::fxImage
The Imagick class


Evaluate expression for each pixel in the image

Imagick::functionImage
Imagick::gammaImage
The Imagick class
PHP Manual

Imagick::fxImage

(PECL imagick 2.0.0)

Imagick::fxImage — Evaluate expression for each pixel in the image

Descrição

Imagick Imagick::fxImage ( string $expression [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Evaluate expression for each pixel in the image. Consult » The Fx Special Effects Image Operator for more information.

Parâmetros

expression

The expression.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::functionImage
Imagick::gammaImage
The Imagick class


Gamma-corrects an image

Imagick::fxImage
Imagick::gaussianBlurImage
The Imagick class
PHP Manual

Imagick::gammaImage

(PECL imagick 2.0.0)

Imagick::gammaImage — Gamma-corrects an image

Descrição

bool Imagick::gammaImage ( float $gamma [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gamma-corrects an image. The same image viewed on different devices will have perceptual differences in the way the image's intensities are represented on the screen. Specify individual gamma levels for the red, green, and blue channels, or adjust all three with the gamma parameter. Values typically range from 0.8 to 2.3.

Parâmetros

gamma

The amount of gamma-correction.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::fxImage
Imagick::gaussianBlurImage
The Imagick class


Blurs an image

Imagick::gammaImage
Imagick::getColorspace
The Imagick class
PHP Manual

Imagick::gaussianBlurImage

(PECL imagick 2.0.0)

Imagick::gaussianBlurImage — Blurs an image

Descrição

bool Imagick::gaussianBlurImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Blurs an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma. Use a radius of 0 and selects a suitable radius for you.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel.

sigma

The standard deviation of the Gaussian, in pixels.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::gammaImage
Imagick::getColorspace
The Imagick class


Gets the colorspace

Imagick::gaussianBlurImage
Imagick::getCompression
The Imagick class
PHP Manual

Imagick::getColorspace

(PECL imagick 0.9.10-0.9.9)

Imagick::getColorspace — Gets the colorspace

Descrição

int Imagick::getColorspace ( void )

Gets the global colorspace value. This method is available if Imagick has been compiled against ImageMagick version 6.5.7 or newer.

Valor Retornado

Returns an integer which can be compared against COLORSPACE constants.

Imagick::gaussianBlurImage
Imagick::getCompression
The Imagick class


Gets the object compression type

Imagick::getColorspace
Imagick::getCompressionQuality
The Imagick class
PHP Manual

Imagick::getCompression

(PECL imagick 2.0.0)

Imagick::getCompression — Gets the object compression type

Descrição

int Imagick::getCompression ( void )

Gets the object compression type.

Valor Retornado

Returns the compression constant

Imagick::getColorspace
Imagick::getCompressionQuality
The Imagick class


Gets the object compression quality

Imagick::getCompression
Imagick::getCopyright
The Imagick class
PHP Manual

Imagick::getCompressionQuality

(PECL imagick 2.0.0)

Imagick::getCompressionQuality — Gets the object compression quality

Descrição

int Imagick::getCompressionQuality ( void )

Gets the object compression quality.

Valor Retornado

Returns integer describing the compression quality

Imagick::getCompression
Imagick::getCopyright
The Imagick class


Returns the ImageMagick API copyright as a string

Imagick::getCompressionQuality
Imagick::getFilename
The Imagick class
PHP Manual

Imagick::getCopyright

(PECL imagick 2.0.0)

Imagick::getCopyright — Returns the ImageMagick API copyright as a string

Descrição

string Imagick::getCopyright ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the ImageMagick API copyright as a string.

Valor Retornado

Returns a string containing the copyright notice of Imagemagick and Magickwand C API.

Imagick::getCompressionQuality
Imagick::getFilename
The Imagick class


The filename associated with an image sequence

Imagick::getCopyright
Imagick::getFont
The Imagick class
PHP Manual

Imagick::getFilename

(PECL imagick 2.0.0)

Imagick::getFilename — The filename associated with an image sequence

Descrição

string Imagick::getFilename ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the filename associated with an image sequence.

Valor Retornado

Returns a string on success. Joga uma ImagickException em erro.

Imagick::getCopyright
Imagick::getFont
The Imagick class


Gets font

Imagick::getFilename
Imagick::getFormat
The Imagick class
PHP Manual

Imagick::getFont

(PECL imagick 2.1.0)

Imagick::getFont — Gets font

Descrição

string Imagick::getFont ( void )

Returns the objects font property. This method is available if Imagick has been compiled against ImageMagick version 6.3.7 or newer.

Valor Retornado

Returns the string containing the font name or FALSE if not font is set.

Veja Também

  • Imagick::setFont() - Sets font
  • ImagickDraw::setFont() - Sets the fully-specified font to use when annotating with text
  • ImagickDraw::getFont() - Returns the font

Imagick::getFilename
Imagick::getFormat
The Imagick class


Returns the format of the Imagick object

Imagick::getFont
Imagick::getGravity
The Imagick class
PHP Manual

Imagick::getFormat

(PECL imagick 2.0.0)

Imagick::getFormat — Returns the format of the Imagick object

Descrição

string Imagick::getFormat ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the format of the Imagick object.

Valor Retornado

Returns the format of the image. Joga uma ImagickException em erro.

Imagick::getFont
Imagick::getGravity
The Imagick class


Gets the gravity

Imagick::getFormat
Imagick::getHomeURL
The Imagick class
PHP Manual

Imagick::getGravity

(No version information available, might only be in SVN)

Imagick::getGravity — Gets the gravity

Descrição

int Imagick::getGravity ( void )

Gets the global gravity property for the Imagick object. This method is available if Imagick has been compiled against ImageMagick version 6.4.0 or newer.

Valor Retornado

Returns the gravity property. Refer to the list of gravity constants.

Imagick::getFormat
Imagick::getHomeURL
The Imagick class


Returns the ImageMagick home URL

Imagick::getGravity
Imagick::getImage
The Imagick class
PHP Manual

Imagick::getHomeURL

(PECL imagick 2.0.0)

Imagick::getHomeURL — Returns the ImageMagick home URL

Descrição

string Imagick::getHomeURL ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the ImageMagick home URL.

Valor Retornado

Returns a link to the imagemagick homepage.

Imagick::getGravity
Imagick::getImage
The Imagick class


Returns a new Imagick object

Imagick::getHomeURL
Imagick::getImageAlphaChannel
The Imagick class
PHP Manual

Imagick::getImage

(PECL imagick 2.0.0)

Imagick::getImage — Returns a new Imagick object

Descrição

Imagick Imagick::getImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a new Imagick object with the current image sequence.

Valor Retornado

Returns a new Imagick object with the current image sequence. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getHomeURL
Imagick::getImageAlphaChannel
The Imagick class


Gets the image alpha channel

Imagick::getImage
Imagick::getImageArtifact
The Imagick class
PHP Manual

Imagick::getImageAlphaChannel

(No version information available, might only be in SVN)

Imagick::getImageAlphaChannel — Gets the image alpha channel

Descrição

int Imagick::getImageAlphaChannel ( void )

Gets the image alpha channel value. The returned value is one of the alpha channel constants. This method is available if Imagick has been compiled against ImageMagick version 6.4.0 or newer.

Valor Retornado

Returns a constant defining the current alpha channel value. Refer to this list of alpha channel constants.

Erros

Dispara ImagickException em erro.

Imagick::getImage
Imagick::getImageArtifact
The Imagick class


Get image artifact

Imagick::getImageAlphaChannel
Imagick::getImageBackgroundColor
The Imagick class
PHP Manual

Imagick::getImageArtifact

(No version information available, might only be in SVN)

Imagick::getImageArtifact — Get image artifact

Descrição

string Imagick::getImageArtifact ( string $artifact )

Gets an artifact associated with the image. The difference between image properties and image artifacts is that properties are public and artifacts are private. This method is available if Imagick has been compiled against ImageMagick version 6.5.7 or newer.

Parâmetros

artifact

The name of the artifact

Valor Retornado

Returns the artifact value on success. Joga uma ImagickException em erro.

Veja Também

  • Imagick::setImageArtifact() - Set image artifact
  • Imagick::deleteImageArtifact() - Delete image artifact

Imagick::getImageAlphaChannel
Imagick::getImageBackgroundColor
The Imagick class


Returns the image background color

Imagick::getImageArtifact
Imagick::getImageBlob
The Imagick class
PHP Manual

Imagick::getImageBackgroundColor

(PECL imagick 2.0.0)

Imagick::getImageBackgroundColor — Returns the image background color

Descrição

ImagickPixel Imagick::getImageBackgroundColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image background color.

Valor Retornado

Returns an ImagickPixel set to the background color of the image. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageArtifact
Imagick::getImageBlob
The Imagick class


Returns the image sequence as a blob

Imagick::getImageBackgroundColor
Imagick::getImageBluePrimary
The Imagick class
PHP Manual

Imagick::getImageBlob

(PECL imagick 2.0.0)

Imagick::getImageBlob — Returns the image sequence as a blob

Descrição

string Imagick::getImageBlob ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Implements direct to memory image formats. It returns the image sequence as a string. The format of the image determines the format of the returned blob (GIF, JPEG, PNG, etc.). To return a different image format, use Imagick::setImageFormat().

Valor Retornado

Returns a string containing the image. Joga uma ImagickException em erro.

Imagick::getImageBackgroundColor
Imagick::getImageBluePrimary
The Imagick class


Returns the chromaticy blue primary point

Imagick::getImageBlob
Imagick::getImageBorderColor
The Imagick class
PHP Manual

Imagick::getImageBluePrimary

(PECL imagick 2.0.0)

Imagick::getImageBluePrimary — Returns the chromaticy blue primary point

Descrição

array Imagick::getImageBluePrimary ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the chromaticity blue primary point for the image.

Parâmetros

x

The chromaticity blue primary x-point.

y

The chromaticity blue primary y-point.

Valor Retornado

Array consisting of "x" and "y" coordinates of point.

Erros

Dispara ImagickException em erro.

Imagick::getImageBlob
Imagick::getImageBorderColor
The Imagick class


Returns the image border color

Imagick::getImageBluePrimary
Imagick::getImageChannelDepth
The Imagick class
PHP Manual

Imagick::getImageBorderColor

(PECL imagick 2.0.0)

Imagick::getImageBorderColor — Returns the image border color

Descrição

ImagickPixel Imagick::getImageBorderColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image border color.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getImageBluePrimary
Imagick::getImageChannelDepth
The Imagick class


Gets the depth for a particular image channel

Imagick::getImageBorderColor
Imagick::getImageChannelDistortion
The Imagick class
PHP Manual

Imagick::getImageChannelDepth

(PECL imagick 2.0.0)

Imagick::getImageChannelDepth — Gets the depth for a particular image channel

Descrição

int Imagick::getImageChannelDepth ( int $channel )

Gets the depth for a particular image channel.

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::getImageBorderColor
Imagick::getImageChannelDistortion
The Imagick class


Compares image channels of an image to a reconstructed image

Imagick::getImageChannelDepth
Imagick::getImageChannelDistortions
The Imagick class
PHP Manual

Imagick::getImageChannelDistortion

(PECL imagick 2.0.0)

Imagick::getImageChannelDistortion — Compares image channels of an image to a reconstructed image

Descrição

float Imagick::getImageChannelDistortion ( Imagick $reference , int $channel , int $metric )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Compares one or more image channels of an image to a reconstructed image and returns the specified distortion metric.

Parâmetros

reference

Imagick object to compare to.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

metric

One of the metric type constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelDepth
Imagick::getImageChannelDistortions
The Imagick class


Gets channel distortions

Imagick::getImageChannelDistortion
Imagick::getImageChannelExtrema
The Imagick class
PHP Manual

Imagick::getImageChannelDistortions

(No version information available, might only be in SVN)

Imagick::getImageChannelDistortions — Gets channel distortions

Descrição

float Imagick::getImageChannelDistortions ( Imagick $reference , int $metric [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Compares one or more image channels of an image to a reconstructed image and returns the specified distortion metrics This method is available if Imagick has been compiled against ImageMagick version 6.4.4 or newer.

Parâmetros

reference

Imagick object containing the reference image

metric

Refer to this list of metric type constants.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Returns a double describing the channel distortion.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelDistortion
Imagick::getImageChannelExtrema
The Imagick class


Gets the extrema for one or more image channels

Imagick::getImageChannelDistortions
Imagick::getImageChannelKurtosis
The Imagick class
PHP Manual

Imagick::getImageChannelExtrema

(PECL imagick 2.0.0)

Imagick::getImageChannelExtrema — Gets the extrema for one or more image channels

Descrição

array Imagick::getImageChannelExtrema ( int $channel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the extrema for one or more image channels. Return value is an associative array with the keys "minima" and "maxima".

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelDistortions
Imagick::getImageChannelKurtosis
The Imagick class


The getImageChannelKurtosis purpose

Imagick::getImageChannelExtrema
Imagick::getImageChannelMean
The Imagick class
PHP Manual

Imagick::getImageChannelKurtosis

(No version information available, might only be in SVN)

Imagick::getImageChannelKurtosis — The getImageChannelKurtosis purpose

Descrição

public array Imagick::getImageChannelKurtosis ([ int $channel = Imagick::CHANNEL_DEFAULT ] )

Get the kurtosis and skewness of a specific channel. This method is available if Imagick has been compiled against ImageMagick version 6.4.9 or newer.

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Returns an array with kurtosis and skewness members.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelExtrema
Imagick::getImageChannelMean
The Imagick class


Gets the mean and standard deviation

Imagick::getImageChannelKurtosis
Imagick::getImageChannelRange
The Imagick class
PHP Manual

Imagick::getImageChannelMean

(PECL imagick 2.0.0)

Imagick::getImageChannelMean — Gets the mean and standard deviation

Descrição

array Imagick::getImageChannelMean ( int $channel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the mean and standard deviation of one or more image channels. Return value is an associative array with the keys "mean" and "standardDeviation".

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelKurtosis
Imagick::getImageChannelRange
The Imagick class


Gets channel range

Imagick::getImageChannelMean
Imagick::getImageChannelStatistics
The Imagick class
PHP Manual

Imagick::getImageChannelRange

(PECL imagick 2.2.1)

Imagick::getImageChannelRange — Gets channel range

Descrição

array Imagick::getImageChannelRange ( int $channel )

Gets the range for one or more image channels. This method is available if Imagick has been compiled against ImageMagick version 6.4.0 or newer.

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Returns an array containing minima and maxima values of the channel(s).

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelMean
Imagick::getImageChannelStatistics
The Imagick class


Returns statistics for each channel in the image

Imagick::getImageChannelRange
Imagick::getImageClipMask
The Imagick class
PHP Manual

Imagick::getImageChannelStatistics

(PECL imagick 2.0.0)

Imagick::getImageChannelStatistics — Returns statistics for each channel in the image

Descrição

array Imagick::getImageChannelStatistics ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns statistics for each channel in the image. The statistics include the channel depth, its minima and maxima, the mean, and the standard deviation. You can access the red channel mean, for example, like this:

Valor Retornado

Retorna TRUE em sucesso.

Imagick::getImageChannelRange
Imagick::getImageClipMask
The Imagick class


Gets image clip mask

Imagick::getImageChannelStatistics
Imagick::getImageColormapColor
The Imagick class
PHP Manual

Imagick::getImageClipMask

(No version information available, might only be in SVN)

Imagick::getImageClipMask — Gets image clip mask

Descrição

Imagick Imagick::getImageClipMask ( void )

Returns the image clip mask. The clip mask is an Imagick object containing the clip mask. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Valor Retornado

Returns an Imagick object containing the clip mask. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageChannelStatistics
Imagick::getImageColormapColor
The Imagick class


Returns the color of the specified colormap index

Imagick::getImageClipMask
Imagick::getImageColors
The Imagick class
PHP Manual

Imagick::getImageColormapColor

(PECL imagick 2.0.0)

Imagick::getImageColormapColor — Returns the color of the specified colormap index

Descrição

ImagickPixel Imagick::getImageColormapColor ( int $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color of the specified colormap index.

Parâmetros

index

The offset into the image colormap.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getImageClipMask
Imagick::getImageColors
The Imagick class


Gets the number of unique colors in the image

Imagick::getImageColormapColor
Imagick::getImageColorspace
The Imagick class
PHP Manual

Imagick::getImageColors

(PECL imagick 2.0.0)

Imagick::getImageColors — Gets the number of unique colors in the image

Descrição

int Imagick::getImageColors ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the number of unique colors in the image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::getImageColormapColor
Imagick::getImageColorspace
The Imagick class


Gets the image colorspace

Imagick::getImageColors
Imagick::getImageCompose
The Imagick class
PHP Manual

Imagick::getImageColorspace

(PECL imagick 2.0.0)

Imagick::getImageColorspace — Gets the image colorspace

Descrição

int Imagick::getImageColorspace ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image colorspace.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::getImageColors
Imagick::getImageCompose
The Imagick class


Returns the composite operator associated with the image

Imagick::getImageColorspace
Imagick::getImageCompression
The Imagick class
PHP Manual

Imagick::getImageCompose

(PECL imagick 2.0.0)

Imagick::getImageCompose — Returns the composite operator associated with the image

Descrição

int Imagick::getImageCompose ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the composite operator associated with the image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::getImageColorspace
Imagick::getImageCompression
The Imagick class


Gets the current image's compression type

Imagick::getImageCompose
Imagick::getImageCompressionQuality
The Imagick class
PHP Manual

Imagick::getImageCompression

(PECL imagick 2.2.2)

Imagick::getImageCompression — Gets the current image's compression type

Descrição

int Imagick::getImageCompression ( void )

Gets the current image's compression type.

Valor Retornado

Returns the compression constant

Imagick::getImageCompose
Imagick::getImageCompressionQuality
The Imagick class


Gets the current image's compression quality

Imagick::getImageCompression
Imagick::getImageDelay
The Imagick class
PHP Manual

Imagick::getImageCompressionQuality

(PECL imagick 2.2.2)

Imagick::getImageCompressionQuality — Gets the current image's compression quality

Descrição

int Imagick::getCompressionQuality ( void )

Gets the current image's compression quality

Valor Retornado

Returns integer describing the images compression quality

Imagick::getImageCompression
Imagick::getImageDelay
The Imagick class


Gets the image delay

Imagick::getImageCompressionQuality
Imagick::getImageDepth
The Imagick class
PHP Manual

Imagick::getImageDelay

(PECL imagick 2.0.0)

Imagick::getImageDelay — Gets the image delay

Descrição

int Imagick::getImageDelay ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image delay.

Valor Retornado

Returns the image delay. Joga uma ImagickException em erro.

Imagick::getImageCompressionQuality
Imagick::getImageDepth
The Imagick class


Gets the image depth

Imagick::getImageDelay
Imagick::getImageDispose
The Imagick class
PHP Manual

Imagick::getImageDepth

(PECL imagick 0.9.1-0.9.9)

Imagick::getImageDepth — Gets the image depth

Descrição

int Imagick::getImageDepth ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image depth.

Valor Retornado

The image depth.

Imagick::getImageDelay
Imagick::getImageDispose
The Imagick class


Gets the image disposal method

Imagick::getImageDepth
Imagick::getImageDistortion
The Imagick class
PHP Manual

Imagick::getImageDispose

(PECL imagick 2.0.0)

Imagick::getImageDispose — Gets the image disposal method

Descrição

int Imagick::getImageDispose ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image disposal method.

Valor Retornado

Returns the dispose method on success. Joga uma ImagickException em erro.

Imagick::getImageDepth
Imagick::getImageDistortion
The Imagick class


Compares an image to a reconstructed image

Imagick::getImageDispose
Imagick::getImageExtrema
The Imagick class
PHP Manual

Imagick::getImageDistortion

(PECL imagick 2.0.0)

Imagick::getImageDistortion — Compares an image to a reconstructed image

Descrição

float Imagick::getImageDistortion ( MagickWand $reference , int $metric )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Compares an image to a reconstructed image and returns the specified distortion metric.

Parâmetros

reference

Imagick object to compare to.

metric

One of the metric type constants.

Valor Retornado

Returns the distortion metric used on the image (or the best guess thereof). Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageDispose
Imagick::getImageExtrema
The Imagick class


Gets the extrema for the image

Imagick::getImageDistortion
Imagick::getImageFilename
The Imagick class
PHP Manual

Imagick::getImageExtrema

(PECL imagick 2.0.0)

Imagick::getImageExtrema — Gets the extrema for the image

Descrição

array Imagick::getImageExtrema ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the extrema for the image. Returns an associative array with the keys "min" and "max".

Valor Retornado

Returns an associative array with the keys "min" and "max". Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageDistortion
Imagick::getImageFilename
The Imagick class


Returns the filename of a particular image in a sequence

Imagick::getImageExtrema
Imagick::getImageFormat
The Imagick class
PHP Manual

Imagick::getImageFilename

(PECL imagick 2.0.0)

Imagick::getImageFilename — Returns the filename of a particular image in a sequence

Descrição

string Imagick::getImageFilename ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the filename of a particular image in a sequence.

Valor Retornado

Returns a string with the filename of the image. Joga uma ImagickException em erro.

Imagick::getImageExtrema
Imagick::getImageFormat
The Imagick class


Returns the format of a particular image in a sequence

Imagick::getImageFilename
Imagick::getImageGamma
The Imagick class
PHP Manual

Imagick::getImageFormat

(PECL imagick 2.0.0)

Imagick::getImageFormat — Returns the format of a particular image in a sequence

Descrição

string Imagick::getImageFormat ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the format of a particular image in a sequence.

Valor Retornado

Returns a string containing the image format on success. Joga uma ImagickException em erro.

Imagick::getImageFilename
Imagick::getImageGamma
The Imagick class


Gets the image gamma

Imagick::getImageFormat
Imagick::getImageGeometry
The Imagick class
PHP Manual

Imagick::getImageGamma

(PECL imagick 2.0.0)

Imagick::getImageGamma — Gets the image gamma

Descrição

float Imagick::getImageGamma ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image gamma.

Valor Retornado

Returns the image gamma on success. Joga uma ImagickException em erro.

Imagick::getImageFormat
Imagick::getImageGeometry
The Imagick class


Gets the width and height as an associative array

Imagick::getImageGamma
Imagick::getImageGravity
The Imagick class
PHP Manual

Imagick::getImageGeometry

(PECL imagick 2.0.0)

Imagick::getImageGeometry — Gets the width and height as an associative array

Descrição

array Imagick::getImageGeometry ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the width and height as an associative array.

Valor Retornado

Returns an array with the width/height of the image. Joga uma ImagickException em erro.

Imagick::getImageGamma
Imagick::getImageGravity
The Imagick class


Gets the image gravity

Imagick::getImageGeometry
Imagick::getImageGreenPrimary
The Imagick class
PHP Manual

Imagick::getImageGravity

(No version information available, might only be in SVN)

Imagick::getImageGravity — Gets the image gravity

Descrição

int Imagick::getImageGravity ( void )

Gets the current gravity value of the image. Unlike Imagick::getGravity(), this method returns the gravity defined for the current image sequence. This method is available if Imagick has been compiled against ImageMagick version 6.4.4 or newer.

Valor Retornado

Returns the images gravity property. Refer to the list of gravity constants.

Imagick::getImageGeometry
Imagick::getImageGreenPrimary
The Imagick class


Returns the chromaticy green primary point

Imagick::getImageGravity
Imagick::getImageHeight
The Imagick class
PHP Manual

Imagick::getImageGreenPrimary

(PECL imagick 2.0.0)

Imagick::getImageGreenPrimary — Returns the chromaticy green primary point

Descrição

array Imagick::getImageGreenPrimary ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the chromaticity green primary point. Returns an array with the keys "x" and "y".

Valor Retornado

Returns an array with the keys "x" and "y" on success, throws an ImagickException on failure.

Erros

Dispara ImagickException em erro.

Imagick::getImageGravity
Imagick::getImageHeight
The Imagick class


Returns the image height

Imagick::getImageGreenPrimary
Imagick::getImageHistogram
The Imagick class
PHP Manual

Imagick::getImageHeight

(PECL imagick 2.0.0)

Imagick::getImageHeight — Returns the image height

Descrição

int Imagick::getImageHeight ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image height.

Valor Retornado

Returns the image height in pixels. Joga uma ImagickException em erro.

Imagick::getImageGreenPrimary
Imagick::getImageHistogram
The Imagick class


Gets the image histogram

Imagick::getImageHeight
Imagick::getImageIndex
The Imagick class
PHP Manual

Imagick::getImageHistogram

(PECL imagick 2.0.0)

Imagick::getImageHistogram — Gets the image histogram

Descrição

array Imagick::getImageHistogram ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image histogram as an array of ImagickPixel objects.

Valor Retornado

Returns the image histogram as an array of ImagickPixel objects. Joga uma ImagickException em erro.

Imagick::getImageHeight
Imagick::getImageIndex
The Imagick class


Gets the index of the current active image

Imagick::getImageHistogram
Imagick::getImageInterlaceScheme
The Imagick class
PHP Manual

Imagick::getImageIndex

(PECL imagick 2.0.0)

Imagick::getImageIndex — Gets the index of the current active image

Descrição

int Imagick::getImageIndex ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the index of the current active image within the Imagick object. This method has been deprecated. See Imagick::getIteratorIndex

Valor Retornado

Returns an integer containing the index of the image in the stack. Joga uma ImagickException em erro.

Imagick::getImageHistogram
Imagick::getImageInterlaceScheme
The Imagick class


Gets the image interlace scheme

Imagick::getImageIndex
Imagick::getImageInterpolateMethod
The Imagick class
PHP Manual

Imagick::getImageInterlaceScheme

(PECL imagick 2.0.0)

Imagick::getImageInterlaceScheme — Gets the image interlace scheme

Descrição

int Imagick::getImageInterlaceScheme ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image interlace scheme.

Valor Retornado

Returns the interlace scheme as an integer on success. Joga uma ImagickException em erro.

Imagick::getImageIndex
Imagick::getImageInterpolateMethod
The Imagick class


Returns the interpolation method

Imagick::getImageInterlaceScheme
Imagick::getImageIterations
The Imagick class
PHP Manual

Imagick::getImageInterpolateMethod

(PECL imagick 2.0.0)

Imagick::getImageInterpolateMethod — Returns the interpolation method

Descrição

int Imagick::getImageInterpolateMethod ( void )

Returns the interpolation method for the specified image. The method is one of the Imagick::INTERPOLATE_* constants.

Valor Retornado

Returns the interpolate method on success. Joga uma ImagickException em erro.

Imagick::getImageInterlaceScheme
Imagick::getImageIterations
The Imagick class


Gets the image iterations

Imagick::getImageInterpolateMethod
Imagick::getImageLength
The Imagick class
PHP Manual

Imagick::getImageIterations

(PECL imagick 2.0.0)

Imagick::getImageIterations — Gets the image iterations

Descrição

int Imagick::getImageIterations ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image iterations.

Valor Retornado

Returns the image iterations as an integer. Joga uma ImagickException em erro.

Imagick::getImageInterpolateMethod
Imagick::getImageLength
The Imagick class


Returns the image length in bytes

Imagick::getImageIterations
Imagick::getImageMagickLicense
The Imagick class
PHP Manual

Imagick::getImageLength

(PECL imagick 2.0.0)

Imagick::getImageLength — Returns the image length in bytes

Descrição

int Imagick::getImageLength ( void )

Returns the image length in bytes

Valor Retornado

Returns an int containing the current image size.

Exemplos

Exemplo #1 Using Imagick::getImageLength():

Getting image length in bytes

<?php
$image = new Imagick('test.jpg');
echo $image->getImageLength() . ' bytes';
?>

Imagick::getImageIterations
Imagick::getImageMagickLicense
The Imagick class


Returns a string containing the ImageMagick license

Imagick::getImageLength
Imagick::getImageMatte
The Imagick class
PHP Manual

Imagick::getImageMagickLicense

(PECL imagick 2.0.0)

Imagick::getImageMagickLicense — Returns a string containing the ImageMagick license

Descrição

string Imagick::getImageMagickLicense ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a string containing the ImageMagick license

Valor Retornado

Returns a string containing the ImageMagick license.

Imagick::getImageLength
Imagick::getImageMatte
The Imagick class


Return if the image has a matte channel

Imagick::getImageMagickLicense
Imagick::getImageMatteColor
The Imagick class
PHP Manual

Imagick::getImageMatte

(PECL imagick 2.0.0)

Imagick::getImageMatte — Return if the image has a matte channel

Descrição

bool Imagick::getImageMatte ( void )

Returns TRUE if the image has a matte channel otherwise false. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Imagick::getImageMagickLicense
Imagick::getImageMatteColor
The Imagick class


Returns the image matte color

Imagick::getImageMatte
Imagick::getImageOrientation
The Imagick class
PHP Manual

Imagick::getImageMatteColor

(PECL imagick 2.0.0)

Imagick::getImageMatteColor — Returns the image matte color

Descrição

ImagickPixel Imagick::getImageMatteColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image matte color.

Valor Retornado

Returns ImagickPixel object on success. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageMatte
Imagick::getImageOrientation
The Imagick class


Gets the image orientation

Imagick::getImageMatteColor
Imagick::getImagePage
The Imagick class
PHP Manual

Imagick::getImageOrientation

(PECL imagick 2.0.0)

Imagick::getImageOrientation — Gets the image orientation

Descrição

int Imagick::getImageOrientation ( void )

Gets the image orientation. The return value is one of the orientation constants.

Valor Retornado

Returns an int on success. Joga uma ImagickException em erro.

Imagick::getImageMatteColor
Imagick::getImagePage
The Imagick class


Returns the page geometry

Imagick::getImageOrientation
Imagick::getImagePixelColor
The Imagick class
PHP Manual

Imagick::getImagePage

(PECL imagick 2.0.0)

Imagick::getImagePage — Returns the page geometry

Descrição

array Imagick::getImagePage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the page geometry associated with the image in an array with the keys "width", "height", "x", and "y".

Valor Retornado

Returns the page geometry associated with the image in an array with the keys "width", "height", "x", and "y".

Erros

Dispara ImagickException em erro.

Imagick::getImageOrientation
Imagick::getImagePixelColor
The Imagick class


Returns the color of the specified pixel

Imagick::getImagePage
Imagick::getImageProfile
The Imagick class
PHP Manual

Imagick::getImagePixelColor

(PECL imagick 2.0.0)

Imagick::getImagePixelColor — Returns the color of the specified pixel

Descrição

ImagickPixel Imagick::getImagePixelColor ( int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color of the specified pixel.

Parâmetros

x

The x-coordinate of the pixel

y

The y-coordinate of the pixel

Valor Retornado

Returns an ImagickPixel instance for the color at the coordinates given. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImagePage
Imagick::getImageProfile
The Imagick class


Returns the named image profile

Imagick::getImagePixelColor
Imagick::getImageProfiles
The Imagick class
PHP Manual

Imagick::getImageProfile

(PECL imagick 2.0.0)

Imagick::getImageProfile — Returns the named image profile

Descrição

string Imagick::getImageProfile ( string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the named image profile.

Parâmetros

name

The name of the profile to return.

Valor Retornado

Returns a string containing the image profile. Joga uma ImagickException em erro.

Imagick::getImagePixelColor
Imagick::getImageProfiles
The Imagick class


Returns the image profiles

Imagick::getImageProfile
Imagick::getImageProperties
The Imagick class
PHP Manual

Imagick::getImageProfiles

(PECL imagick 2.0.0)

Imagick::getImageProfiles — Returns the image profiles

Descrição

array Imagick::getImageProfiles ([ string $pattern = "*" [, bool $only_names = true ]] )

Returns all associated profiles that match the pattern. If TRUE is passed as second parameter only the profile names are returned. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

pattern

The pattern for profile names.

only_names

Whether to return only profile names. If FALSE then values are returned as well

Valor Retornado

Returns an array containing the image profiles or profile names.

Imagick::getImageProfile
Imagick::getImageProperties
The Imagick class


Returns the image properties

Imagick::getImageProfiles
Imagick::getImageProperty
The Imagick class
PHP Manual

Imagick::getImageProperties

(PECL imagick 2.0.0)

Imagick::getImageProperties — Returns the image properties

Descrição

array Imagick::getImageProperties ([ string $pattern = "*" [, bool $only_names = true ]] )

Returns all associated properties that match the pattern. If TRUE is passed as second parameter only the property names are returned. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

pattern

The pattern for property names.

only_names

Whether to return only property names. If FALSE then also the values are returned

Valor Retornado

Returns an array containing the image properties or property names.

Exemplos

Exemplo #1 Using Imagick::getImageProperties():

An example of extracting EXIF information.

<?php

/* Create the object */
$im = new imagick("/path/to/example.jpg");

/* Get the EXIF information */
$exifArray = $im->getImageProperties("exif:*");

/* Loop trough the EXIF properties */
foreach ($exifArray as $name => $property)
{
    echo "{$name} => {$property}<br />\n";
}

?>

Imagick::getImageProfiles
Imagick::getImageProperty
The Imagick class


Returns the named image property

Imagick::getImageProperties
Imagick::getImageRedPrimary
The Imagick class
PHP Manual

Imagick::getImageProperty

(PECL imagick 2.0.0)

Imagick::getImageProperty — Returns the named image property

Descrição

string Imagick::getImageProperty ( string $name )

Returns the named image property. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.2 ou mais nova.

Parâmetros

name

name of the property (for example Exif:DateTime)

Exemplos

Exemplo #1 Using Imagick::getImageProperty():

Setting and getting image property

<?php
$image = new Imagick();
$image->newImage(300, 200, "black");

$image->setImageProperty('Exif:Make', 'Imagick');
echo $image->getImageProperty('Exif:Make');
?>

Veja Também

  • Imagick::setImageProperty() - Sets an image property

Valor Retornado

Returns a string containing the image property, false if a property with the given name does not exist.

Imagick::getImageProperties
Imagick::getImageRedPrimary
The Imagick class


Returns the chromaticity red primary point

Imagick::getImageProperty
Imagick::getImageRegion
The Imagick class
PHP Manual

Imagick::getImageRedPrimary

(PECL imagick 2.0.0)

Imagick::getImageRedPrimary — Returns the chromaticity red primary point

Descrição

array Imagick::getImageRedPrimary ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the chromaticity red primary point as an array with the keys "x" and "y".

Valor Retornado

Returns the chromaticity red primary point as an array with the keys "x" and "y". Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageProperty
Imagick::getImageRegion
The Imagick class


Extracts a region of the image

Imagick::getImageRedPrimary
Imagick::getImageRenderingIntent
The Imagick class
PHP Manual

Imagick::getImageRegion

(PECL imagick 2.0.0)

Imagick::getImageRegion — Extracts a region of the image

Descrição

Imagick Imagick::getImageRegion ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Extracts a region of the image and returns it as a new Imagick object.

Parâmetros

width

The width of the extracted region.

height

The height of the extracted region.

x

X-coordinate of the top-left corner of the extracted region.

y

Y-coordinate of the top-left corner of the extracted region.

Valor Retornado

Extracts a region of the image and returns it as a new wand. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageRedPrimary
Imagick::getImageRenderingIntent
The Imagick class


Gets the image rendering intent

Imagick::getImageRegion
Imagick::getImageResolution
The Imagick class
PHP Manual

Imagick::getImageRenderingIntent

(PECL imagick 2.0.0)

Imagick::getImageRenderingIntent — Gets the image rendering intent

Descrição

int Imagick::getImageRenderingIntent ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image rendering intent.

Valor Retornado

Returns the image rendering intent. Joga uma ImagickException em erro.

Imagick::getImageRegion
Imagick::getImageResolution
The Imagick class


Gets the image X and Y resolution

Imagick::getImageRenderingIntent
Imagick::getImagesBlob
The Imagick class
PHP Manual

Imagick::getImageResolution

(PECL imagick 2.0.0)

Imagick::getImageResolution — Gets the image X and Y resolution

Descrição

array Imagick::getImageResolution ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image X and Y resolution.

Valor Retornado

Returns the resolution as an array. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageRenderingIntent
Imagick::getImagesBlob
The Imagick class


Returns all image sequences as a blob

Imagick::getImageResolution
Imagick::getImageScene
The Imagick class
PHP Manual

Imagick::getImagesBlob

(PECL imagick 2.0.0)

Imagick::getImagesBlob — Returns all image sequences as a blob

Descrição

string Imagick::getImagesBlob ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Implements direct to memory image formats. It returns all image sequences as a string. The format of the image determines the format of the returned blob (GIF, JPEG, PNG, etc.). To return a different image format, use Imagick::setImageFormat().

Valor Retornado

Returns a string containing the images. On failure, throws ImagickException.

Imagick::getImageResolution
Imagick::getImageScene
The Imagick class


Gets the image scene

Imagick::getImagesBlob
Imagick::getImageSignature
The Imagick class
PHP Manual

Imagick::getImageScene

(PECL imagick 2.0.0)

Imagick::getImageScene — Gets the image scene

Descrição

int Imagick::getImageScene ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image scene.

Valor Retornado

Returns the image scene. Joga uma ImagickException em erro.

Imagick::getImagesBlob
Imagick::getImageSignature
The Imagick class


Generates an SHA-256 message digest

Imagick::getImageScene
Imagick::getImageSize
The Imagick class
PHP Manual

Imagick::getImageSignature

(PECL imagick 2.0.0)

Imagick::getImageSignature — Generates an SHA-256 message digest

Descrição

string Imagick::getImageSignature ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Generates an SHA-256 message digest for the image pixel stream.

Valor Retornado

Returns a string containing the SHA-256 hash of the file. Joga uma ImagickException em erro.

Imagick::getImageScene
Imagick::getImageSize
The Imagick class


Returns the image length in bytes

Imagick::getImageSignature
Imagick::getImageTicksPerSecond
The Imagick class
PHP Manual

Imagick::getImageSize

(PECL imagick 2.0.0)

Imagick::getImageSize — Returns the image length in bytes

Descrição

int Imagick::getImageSize ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image length in bytes

Valor Retornado

Returns an int containing the current image size.

Imagick::getImageSignature
Imagick::getImageTicksPerSecond
The Imagick class


Gets the image ticks-per-second

Imagick::getImageSize
Imagick::getImageTotalInkDensity
The Imagick class
PHP Manual

Imagick::getImageTicksPerSecond

(PECL imagick 2.0.0)

Imagick::getImageTicksPerSecond — Gets the image ticks-per-second

Descrição

int Imagick::getImageTicksPerSecond ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image ticks-per-second.

Valor Retornado

Returns the image ticks-per-second. Joga uma ImagickException em erro.

Imagick::getImageSize
Imagick::getImageTotalInkDensity
The Imagick class


Gets the image total ink density

Imagick::getImageTicksPerSecond
Imagick::getImageType
The Imagick class
PHP Manual

Imagick::getImageTotalInkDensity

(PECL imagick 2.0.0)

Imagick::getImageTotalInkDensity — Gets the image total ink density

Descrição

float Imagick::getImageTotalInkDensity ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image total ink density.

Valor Retornado

Returns the image total ink density of the image. Joga uma ImagickException em erro.

Imagick::getImageTicksPerSecond
Imagick::getImageType
The Imagick class


Gets the potential image type

Imagick::getImageTotalInkDensity
Imagick::getImageUnits
The Imagick class
PHP Manual

Imagick::getImageType

(PECL imagick 0.9.10-0.9.9)

Imagick::getImageType — Gets the potential image type

Descrição

int Imagick::getImageType ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the potential image type.

Valor Retornado

Returns the potential image type. Joga uma ImagickException em erro.

Imagick::getImageTotalInkDensity
Imagick::getImageUnits
The Imagick class


Gets the image units of resolution

Imagick::getImageType
Imagick::getImageVirtualPixelMethod
The Imagick class
PHP Manual

Imagick::getImageUnits

(PECL imagick 2.0.0)

Imagick::getImageUnits — Gets the image units of resolution

Descrição

int Imagick::getImageUnits ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the image units of resolution.

Valor Retornado

Returns the image units of resolution. Joga uma ImagickException em erro.

Imagick::getImageType
Imagick::getImageVirtualPixelMethod
The Imagick class


Returns the virtual pixel method

Imagick::getImageUnits
Imagick::getImageWhitePoint
The Imagick class
PHP Manual

Imagick::getImageVirtualPixelMethod

(PECL imagick 2.0.0)

Imagick::getImageVirtualPixelMethod — Returns the virtual pixel method

Descrição

int Imagick::getImageVirtualPixelMethod ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the virtual pixel method for the specified image.

Valor Retornado

Returns the virtual pixel method on success. Joga uma ImagickException em erro.

Imagick::getImageUnits
Imagick::getImageWhitePoint
The Imagick class


Returns the chromaticity white point

Imagick::getImageVirtualPixelMethod
Imagick::getImageWidth
The Imagick class
PHP Manual

Imagick::getImageWhitePoint

(PECL imagick 2.0.0)

Imagick::getImageWhitePoint — Returns the chromaticity white point

Descrição

array Imagick::getImageWhitePoint ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the chromaticity white point as an associative array with the keys "x" and "y".

Valor Retornado

Returns the chromaticity white point as an associative array with the keys "x" and "y". Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::getImageVirtualPixelMethod
Imagick::getImageWidth
The Imagick class


Returns the image width

Imagick::getImageWhitePoint
Imagick::getInterlaceScheme
The Imagick class
PHP Manual

Imagick::getImageWidth

(PECL imagick 2.0.0)

Imagick::getImageWidth — Returns the image width

Descrição

int Imagick::getImageWidth ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the image width.

Valor Retornado

Returns the image width. Joga uma ImagickException em erro.

Imagick::getImageWhitePoint
Imagick::getInterlaceScheme
The Imagick class


Gets the object interlace scheme

Imagick::getImageWidth
Imagick::getIteratorIndex
The Imagick class
PHP Manual

Imagick::getInterlaceScheme

(PECL imagick 2.0.0)

Imagick::getInterlaceScheme — Gets the object interlace scheme

Descrição

int Imagick::getInterlaceScheme ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the object interlace scheme.

Valor Retornado

Gets the wand interlace scheme. Joga uma ImagickException em erro.

Imagick::getImageWidth
Imagick::getIteratorIndex
The Imagick class


Gets the index of the current active image

Imagick::getInterlaceScheme
Imagick::getNumberImages
The Imagick class
PHP Manual

Imagick::getIteratorIndex

(PECL imagick 2.0.0)

Imagick::getIteratorIndex — Gets the index of the current active image

Descrição

int Imagick::getIteratorIndex ( void )

Returns the index of the current active image within the Imagick object. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Returns an integer containing the index of the image in the stack. Joga uma ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::getIteratorIndex():

Create images, set and get the iterator index

<?php
$im = new Imagick();
$im->newImage(100, 100, new ImagickPixel("red"));
$im->newImage(100, 100, new ImagickPixel("green"));
$im->newImage(100, 100, new ImagickPixel("blue"));

$im->setIteratorIndex(1);
echo $im->getIteratorIndex();
?>

Veja Também

  • Imagick::setIteratorIndex() - Set the iterator position
  • Imagick::getImageIndex() - Gets the index of the current active image
  • Imagick::setImageIndex() - Set the iterator position

Imagick::getInterlaceScheme
Imagick::getNumberImages
The Imagick class


Returns the number of images in the object

Imagick::getIteratorIndex
Imagick::getOption
The Imagick class
PHP Manual

Imagick::getNumberImages

(PECL imagick 2.0.0)

Imagick::getNumberImages — Returns the number of images in the object

Descrição

int Imagick::getNumberImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the number of images associated with Imagick object.

Valor Retornado

Returns the number of images associated with Imagick object. Joga uma ImagickException em erro.

Imagick::getIteratorIndex
Imagick::getOption
The Imagick class


Returns a value associated with the specified key

Imagick::getNumberImages
Imagick::getPackageName
The Imagick class
PHP Manual

Imagick::getOption

(PECL imagick 2.0.0)

Imagick::getOption — Returns a value associated with the specified key

Descrição

string Imagick::getOption ( string $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a value associated within the object for the specified key.

Parâmetros

key

The name of the option

Valor Retornado

Returns a value associated with a wand and the specified key. Joga uma ImagickException em erro.

Imagick::getNumberImages
Imagick::getPackageName
The Imagick class


Returns the ImageMagick package name

Imagick::getOption
Imagick::getPage
The Imagick class
PHP Manual

Imagick::getPackageName

(PECL imagick 2.0.0)

Imagick::getPackageName — Returns the ImageMagick package name

Descrição

string Imagick::getPackageName ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the ImageMagick package name.

Valor Retornado

Returns the ImageMagick package name as a string. Joga uma ImagickException em erro.

Imagick::getOption
Imagick::getPage
The Imagick class


Returns the page geometry

Imagick::getPackageName
Imagick::getPixelIterator
The Imagick class
PHP Manual

Imagick::getPage

(PECL imagick 2.0.0)

Imagick::getPage — Returns the page geometry

Descrição

array Imagick::getPage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the page geometry associated with the Imagick object in an associative array with the keys "width", "height", "x", and "y".

Valor Retornado

Returns the page geometry associated with the Imagick object in an associative array with the keys "width", "height", "x", and "y", throwing ImagickException on error.

Imagick::getPackageName
Imagick::getPixelIterator
The Imagick class


Returns a MagickPixelIterator

Imagick::getPage
Imagick::getPixelRegionIterator
The Imagick class
PHP Manual

Imagick::getPixelIterator

(PECL imagick 2.0.0)

Imagick::getPixelIterator — Returns a MagickPixelIterator

Descrição

ImagickPixelIterator Imagick::getPixelIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a MagickPixelIterator.

Valor Retornado

Returns an ImagickPixelIterator on success. Joga uma ImagickException em erro.

Imagick::getPage
Imagick::getPixelRegionIterator
The Imagick class


Get an ImagickPixelIterator for an image section

Imagick::getPixelIterator
Imagick::getPointSize
The Imagick class
PHP Manual

Imagick::getPixelRegionIterator

(PECL imagick 2.0.0)

Imagick::getPixelRegionIterator — Get an ImagickPixelIterator for an image section

Descrição

ImagickPixelIterator Imagick::getPixelRegionIterator ( int $x , int $y , int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Get an ImagickPixelIterator for an image section.

Parâmetros

x

The x-coordinate of the region.

y

The y-coordinate of the region.

columns

The width of the region.

rows

The height of the region.

Valor Retornado

Returns an ImagickPixelIterator for an image section. Joga uma ImagickException em erro.

Imagick::getPixelIterator
Imagick::getPointSize
The Imagick class


Gets point size

Imagick::getPixelRegionIterator
Imagick::getQuantumDepth
The Imagick class
PHP Manual

Imagick::getPointSize

(No version information available, might only be in SVN)

Imagick::getPointSize — Gets point size

Descrição

float Imagick::getPointSize ( void )

Returns the objects point size property. This method is available if Imagick has been compiled against ImageMagick version 6.3.7 or newer.

Valor Retornado

Returns a float containing the point size.

Veja Também

  • Imagick::setPointSize() - Sets point size

Imagick::getPixelRegionIterator
Imagick::getQuantumDepth
The Imagick class


Gets the quantum depth

Imagick::getPointSize
Imagick::getQuantumRange
The Imagick class
PHP Manual

Imagick::getQuantumDepth

(PECL imagick 2.0.0)

Imagick::getQuantumDepth — Gets the quantum depth

Descrição

array Imagick::getQuantumDepth ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the Imagick quantum depth as a string.

Valor Retornado

Returns the Imagick quantum depth as a string. Joga uma ImagickException em erro.

Imagick::getPointSize
Imagick::getQuantumRange
The Imagick class


Returns the Imagick quantum range

Imagick::getQuantumDepth
Imagick::getReleaseDate
The Imagick class
PHP Manual

Imagick::getQuantumRange

(PECL imagick 2.0.0)

Imagick::getQuantumRange — Returns the Imagick quantum range

Descrição

array Imagick::getQuantumRange ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the Imagick quantum range as a string.

Valor Retornado

Returns the Imagick quantum range as a string. Joga uma ImagickException em erro.

Imagick::getQuantumDepth
Imagick::getReleaseDate
The Imagick class


Returns the ImageMagick release date

Imagick::getQuantumRange
Imagick::getResource
The Imagick class
PHP Manual

Imagick::getReleaseDate

(PECL imagick 2.0.0)

Imagick::getReleaseDate — Returns the ImageMagick release date

Descrição

string Imagick::getReleaseDate ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the ImageMagick release date as a string.

Valor Retornado

Returns the ImageMagick release date as a string. Joga uma ImagickException em erro.

Imagick::getQuantumRange
Imagick::getResource
The Imagick class


Returns the specified resource's memory usage

Imagick::getReleaseDate
Imagick::getResourceLimit
The Imagick class
PHP Manual

Imagick::getResource

(PECL imagick 2.0.0)

Imagick::getResource — Returns the specified resource's memory usage

Descrição

int Imagick::getResource ( int $type )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the specified resource's memory usage in megabytes.

Parâmetros

type

Refer to the list of resourcetype constants.

Valor Retornado

Returns the specified resource's memory usage in megabytes. Joga uma ImagickException em erro.

Imagick::getReleaseDate
Imagick::getResourceLimit
The Imagick class


Returns the specified resource limit

Imagick::getResource
Imagick::getSamplingFactors
The Imagick class
PHP Manual

Imagick::getResourceLimit

(PECL imagick 2.0.0)

Imagick::getResourceLimit — Returns the specified resource limit

Descrição

int Imagick::getResourceLimit ( int $type )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the specified resource limit in megabytes.

Parâmetros

type

Refer to the list of resourcetype constants.

Valor Retornado

Returns the specified resource limit in megabytes. Joga uma ImagickException em erro.

Imagick::getResource
Imagick::getSamplingFactors
The Imagick class


Gets the horizontal and vertical sampling factor

Imagick::getResourceLimit
Imagick::getSize
The Imagick class
PHP Manual

Imagick::getSamplingFactors

(PECL imagick 2.0.0)

Imagick::getSamplingFactors — Gets the horizontal and vertical sampling factor

Descrição

array Imagick::getSamplingFactors ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets the horizontal and vertical sampling factor.

Valor Retornado

Returns an associative array with the horizontal and vertical sampling factors of the image. Joga uma ImagickException em erro.

Imagick::getResourceLimit
Imagick::getSize
The Imagick class


Returns the size associated with the Imagick object

Imagick::getSamplingFactors
Imagick::getSizeOffset
The Imagick class
PHP Manual

Imagick::getSize

(PECL imagick 2.0.0)

Imagick::getSize — Returns the size associated with the Imagick object

Descrição

array Imagick::getSize ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the size associated with the Imagick object as an array with the keys "columns" and "rows".

Valor Retornado

Returns the size associated with the Imagick object as an array with the keys "columns" and "rows".

Imagick::getSamplingFactors
Imagick::getSizeOffset
The Imagick class


Returns the size offset

Imagick::getSize
Imagick::getVersion
The Imagick class
PHP Manual

Imagick::getSizeOffset

(PECL imagick 2.0.0)

Imagick::getSizeOffset — Returns the size offset

Descrição

int Imagick::getSizeOffset ( void )

Returns the size offset associated with the Imagick object. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Returns the size offset associated with the Imagick object. Joga uma ImagickException em erro.

Imagick::getSize
Imagick::getVersion
The Imagick class


Returns the ImageMagick API version

Imagick::getSizeOffset
Imagick::haldClutImage
The Imagick class
PHP Manual

Imagick::getVersion

(PECL imagick 2.0.0)

Imagick::getVersion — Returns the ImageMagick API version

Descrição

array Imagick::getVersion ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the ImageMagick API version as a string and as a number.

Valor Retornado

Returns the ImageMagick API version as a string and as a number. Joga uma ImagickException em erro.

Imagick::getSizeOffset
Imagick::haldClutImage
The Imagick class


Replaces colors in the image

Imagick::getVersion
Imagick::hasNextImage
The Imagick class
PHP Manual

Imagick::haldClutImage

(No version information available, might only be in SVN)

Imagick::haldClutImage — Replaces colors in the image

Descrição

public bool Imagick::haldClutImage ( Imagick $clut [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Replaces colors in the image using a Hald lookup table. Hald images can be created using HALD color coder.

Parâmetros

clut

Imagick object containing the Hald lookup image.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::getVersion
Imagick::hasNextImage
The Imagick class


Checks if the object has more images

Imagick::haldClutImage
Imagick::hasPreviousImage
The Imagick class
PHP Manual

Imagick::hasNextImage

(PECL imagick 2.0.0)

Imagick::hasNextImage — Checks if the object has more images

Descrição

bool Imagick::hasNextImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns TRUE if the object has more images when traversing the list in the forward direction.

Valor Retornado

Returns TRUE if the object has more images when traversing the list in the forward direction, returns FALSE if there are none.

Imagick::haldClutImage
Imagick::hasPreviousImage
The Imagick class


Checks if the object has a previous image

Imagick::hasNextImage
Imagick::identifyImage
The Imagick class
PHP Manual

Imagick::hasPreviousImage

(PECL imagick 2.0.0)

Imagick::hasPreviousImage — Checks if the object has a previous image

Descrição

bool Imagick::hasPreviousImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns TRUE if the object has more images when traversing the list in the reverse direction

Valor Retornado

Returns TRUE if the object has more images when traversing the list in the reverse direction, returns FALSE if there are none.

Imagick::hasNextImage
Imagick::identifyImage
The Imagick class


Identifies an image and fetches attributes

Imagick::hasPreviousImage
Imagick::implodeImage
The Imagick class
PHP Manual

Imagick::identifyImage

(PECL imagick 2.0.0)

Imagick::identifyImage — Identifies an image and fetches attributes

Descrição

array Imagick::identifyImage ([ bool $appendRawOutput = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Identifies an image and returns the attributes. Attributes include the image width, height, size, and others.

Parâmetros

appendRawOutput

Valor Retornado

Identifies an image and returns the attributes. Attributes include the image width, height, size, and others. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Imagick::hasPreviousImage
Imagick::implodeImage
The Imagick class


Creates a new image as a copy

Imagick::identifyImage
Imagick::importImagePixels
The Imagick class
PHP Manual

Imagick::implodeImage

(PECL imagick 2.0.0)

Imagick::implodeImage — Creates a new image as a copy

Descrição

bool Imagick::implodeImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a new image that is a copy of an existing one with the image pixels "imploded" by the specified percentage.

Parâmetros

radius

The radius of the implode

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::identifyImage
Imagick::importImagePixels
The Imagick class


Imports image pixels

Imagick::implodeImage
Imagick::labelImage
The Imagick class
PHP Manual

Imagick::importImagePixels

(No version information available, might only be in SVN)

Imagick::importImagePixels — Imports image pixels

Descrição

public bool Imagick::importImagePixels ( int $x , int $y , int $width , int $height , string $map , int $storage , array $pixels )

Imports pixels from an array into an image. The map is usually 'RGB'. This method imposes the following constraints for the parameters: amount of pixels in the array must match width x height x length of the map. This method is available if Imagick has been compiled against ImageMagick version 6.4.5 or newer.

Parâmetros

x

The image x position

y

The image y position

width

The image width

height

The image height

map

Map of pixel ordering as a string. This can be for example RGB. The value can be any combination or order of R = red, G = green, B = blue, A = alpha (0 is transparent), O = opacity (0 is opaque), C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for grayscale), P = pad.

storage

The pixel storage method. Refer to this list of pixel constants.

pixels

The array of pixels

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Imagick::importImagePixels() example

<?php

/* Generate array of pixels. 2000 pixels per color stripe */
$count = 2000 * 3;

$pixels =
   array_merge(array_pad(array(), $count, 0),
               array_pad(array(), $count, 255),
               array_pad(array(), $count, 0),
               array_pad(array(), $count, 255),
               array_pad(array(), $count, 0));

/* Width and height. The area is amount of pixels divided
   by three. Three comes from 'RGB', three values per pixel */
$width = $height = pow((count($pixels) / 3), 0.5);

/* Create empty image */
$im = new Imagick();
$im->newImage($width, $height, 'gray');

/* Import the pixels into image.
   width * height * strlen("RGB") must match count($pixels) */
$im->importImagePixels(0, 0, $width, $height, "RGB", Imagick::PIXEL_CHAR, $pixels);

/* output as jpeg image */
$im->setImageFormat('jpg');
header("Content-Type: image/jpg");
echo $im;

?>

O exemplo acima irá imprimir algo similar a:

Output of example : Imagick::importImagePixels()

Imagick::implodeImage
Imagick::labelImage
The Imagick class


Adds a label to an image

Imagick::importImagePixels
Imagick::levelImage
The Imagick class
PHP Manual

Imagick::labelImage

(PECL imagick 2.0.0)

Imagick::labelImage — Adds a label to an image

Descrição

bool Imagick::labelImage ( string $label )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a label to an image.

Parâmetros

label

The label to add

Valor Retornado

Retorna TRUE em sucesso.

Imagick::importImagePixels
Imagick::levelImage
The Imagick class


Adjusts the levels of an image

Imagick::labelImage
Imagick::linearStretchImage
The Imagick class
PHP Manual

Imagick::levelImage

(PECL imagick 2.0.0)

Imagick::levelImage — Adjusts the levels of an image

Descrição

bool Imagick::levelImage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adjusts the levels of an image by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. Mid point specifies a gamma correction to apply to the image. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.

Parâmetros

blackPoint

The image black point

gamma

The gamma value

whitePoint

The image white point

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::labelImage
Imagick::linearStretchImage
The Imagick class


Stretches with saturation the image intensity

Imagick::levelImage
Imagick::liquidRescaleImage
The Imagick class
PHP Manual

Imagick::linearStretchImage

(PECL imagick 2.0.0)

Imagick::linearStretchImage — Stretches with saturation the image intensity

Descrição

bool Imagick::linearStretchImage ( float $blackPoint , float $whitePoint )

Stretches with saturation the image intensity.

Parâmetros

blackPoint

The image black point

whitePoint

The image white point

Valor Retornado

Retorna TRUE em sucesso.

Imagick::levelImage
Imagick::liquidRescaleImage
The Imagick class


Animates an image or images

Imagick::linearStretchImage
Imagick::magnifyImage
The Imagick class
PHP Manual

Imagick::liquidRescaleImage

(No version information available, might only be in SVN)

Imagick::liquidRescaleImage — Animates an image or images

Descrição

bool Imagick::liquidRescaleImage ( int $width , int $height , float $delta_x , float $rigidity )

This method scales the images using liquid rescaling method. This method is an implementation of a technique called seam carving. In order for this method to work as expected ImageMagick must be compiled with liblqr support. This method is available if Imagick has been compiled against ImageMagick version 6.3.9 or newer.

Parâmetros

width

The width of the target size

height

The height of the target size

delta_x

How much the seam can traverse on x-axis. Passing 0 causes the seams to be straight.

rigidity

Introduces a bias for non-straight seams. This parameter is typically 0.

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::resizeImage() - Scales an image

Imagick::linearStretchImage
Imagick::magnifyImage
The Imagick class


Scales an image proportionally 2x

Imagick::liquidRescaleImage
Imagick::mapImage
The Imagick class
PHP Manual

Imagick::magnifyImage

(PECL imagick 2.0.0)

Imagick::magnifyImage — Scales an image proportionally 2x

Descrição

bool Imagick::magnifyImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Is a convenience method that scales an image proportionally to twice its original size.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::liquidRescaleImage
Imagick::mapImage
The Imagick class


Replaces the colors of an image with the closest color from a reference image.

Imagick::magnifyImage
Imagick::matteFloodfillImage
The Imagick class
PHP Manual

Imagick::mapImage

(PECL imagick 2.0.0)

Imagick::mapImage — Replaces the colors of an image with the closest color from a reference image.

Descrição

bool Imagick::mapImage ( Imagick $map , bool $dither )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

map

dither

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::magnifyImage
Imagick::matteFloodfillImage
The Imagick class


Changes the transparency value of a color

Imagick::mapImage
Imagick::medianFilterImage
The Imagick class
PHP Manual

Imagick::matteFloodfillImage

(PECL imagick 2.0.0)

Imagick::matteFloodfillImage — Changes the transparency value of a color

Descrição

bool Imagick::matteFloodfillImage ( float $alpha , float $fuzz , mixed $bordercolor , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes the transparency value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the transparency value is changed for any neighbor pixel that does not match the bordercolor member of image.

Parâmetros

alpha

The level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.

fuzz

The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same.

bordercolor

An ImagickPixel object or string representing the border color.

x

The starting x coordinate of the operation.

y

The starting y coordinate of the operation.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the third parameter. Previous versions allow only an ImagickPixel object.

Imagick::mapImage
Imagick::medianFilterImage
The Imagick class


Applies a digital filter

Imagick::matteFloodfillImage
Imagick::mergeImageLayers
The Imagick class
PHP Manual

Imagick::medianFilterImage

(PECL imagick 2.0.0)

Imagick::medianFilterImage — Applies a digital filter

Descrição

bool Imagick::medianFilterImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a digital filter that improves the quality of a noisy image. Each pixel is replaced by the median in a set of neighboring pixels as defined by radius.

Parâmetros

radius

The radius of the pixel neighborhood.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::matteFloodfillImage
Imagick::mergeImageLayers
The Imagick class


Merges image layers

Imagick::medianFilterImage
Imagick::minifyImage
The Imagick class
PHP Manual

Imagick::mergeImageLayers

(PECL imagick 2.1.0)

Imagick::mergeImageLayers — Merges image layers

Descrição

bool Imagick::mergeImageLayers ( int $layer_method )

Merges image layers into one. This method is useful when working with image formats that use multiple layers such as PSD. The merging is controlled using the layer_method which defines how the layers are merged. This method is available if Imagick has been compiled against ImageMagick version 6.3.7 or newer.

Parâmetros

layer_method

One of the Imagick::LAYERMETHOD_* constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Veja Também

  • Imagick::flattenImages() - Merges a sequence of images

Imagick::medianFilterImage
Imagick::minifyImage
The Imagick class


Scales an image proportionally to half its size

Imagick::mergeImageLayers
Imagick::modulateImage
The Imagick class
PHP Manual

Imagick::minifyImage

(PECL imagick 2.0.0)

Imagick::minifyImage — Scales an image proportionally to half its size

Descrição

bool Imagick::minifyImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Is a convenience method that scales an image proportionally to one-half its original size

Valor Retornado

Retorna TRUE em sucesso.

Imagick::mergeImageLayers
Imagick::modulateImage
The Imagick class


Control the brightness, saturation, and hue

Imagick::minifyImage
Imagick::montageImage
The Imagick class
PHP Manual

Imagick::modulateImage

(PECL imagick 2.0.0)

Imagick::modulateImage — Control the brightness, saturation, and hue

Descrição

bool Imagick::modulateImage ( float $brightness , float $saturation , float $hue )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Lets you control the brightness, saturation, and hue of an image. Hue is the percentage of absolute rotation from the current position. For example 50 results in a counter-clockwise rotation of 90 degrees, 150 results in a clockwise rotation of 90 degrees, with 0 and 200 both resulting in a rotation of 180 degrees.

Parâmetros

brightness

saturation

hue

Valor Retornado

Retorna TRUE em sucesso.

Imagick::minifyImage
Imagick::montageImage
The Imagick class


Creates a composite image

Imagick::modulateImage
Imagick::morphImages
The Imagick class
PHP Manual

Imagick::montageImage

(PECL imagick 2.0.0)

Imagick::montageImage — Creates a composite image

Descrição

Imagick Imagick::montageImage ( ImagickDraw $draw , string $tile_geometry , string $thumbnail_geometry , int $mode , string $frame )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a composite image by combining several separate images. The images are tiled on the composite image with the name of the image optionally appearing just below the individual tile.

Parâmetros

draw

The font name, size, and color are obtained from this object.

tile_geometry

The number of tiles per row and page (e.g. 6x4+0+0).

thumbnail_geometry

Preferred image size and border size of each thumbnail (e.g. 120x120+4+3>).

mode

Thumbnail framing mode, see Montage Mode constants.

frame

Surround the image with an ornamental border (e.g. 15x15+3+3). The frame color is that of the thumbnail's matte color.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::modulateImage
Imagick::morphImages
The Imagick class


Method morphs a set of images

Imagick::montageImage
Imagick::mosaicImages
The Imagick class
PHP Manual

Imagick::morphImages

(PECL imagick 2.0.0)

Imagick::morphImages — Method morphs a set of images

Descrição

Imagick Imagick::morphImages ( int $number_frames )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Method morphs a set of images. Both the image pixels and size are linearly interpolated to give the appearance of a meta-morphosis from one image to the next.

Parâmetros

number_frames

The number of in-between images to generate.

Valor Retornado

This method returns a new Imagick object on success. Joga uma ImagickException em erro.

Imagick::montageImage
Imagick::mosaicImages
The Imagick class


Forms a mosaic from images

Imagick::morphImages
Imagick::motionBlurImage
The Imagick class
PHP Manual

Imagick::mosaicImages

(PECL imagick 2.0.0)

Imagick::mosaicImages — Forms a mosaic from images

Descrição

Imagick Imagick::mosaicImages ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Inlays an image sequence to form a single coherent picture. It returns a wand with each image in the sequence composited at the location defined by the page offset of the image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::morphImages
Imagick::motionBlurImage
The Imagick class


Simulates motion blur

Imagick::mosaicImages
Imagick::negateImage
The Imagick class
PHP Manual

Imagick::motionBlurImage

(PECL imagick 2.0.0)

Imagick::motionBlurImage — Simulates motion blur

Descrição

bool Imagick::motionBlurImage ( float $radius , float $sigma , float $angle [, int $channel = Imagick::CHANNEL_DEFAULT ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Simulates motion blur. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and MotionBlurImage() selects a suitable radius for you. Angle gives the angle of the blurring motion.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel.

sigma

The standard deviation of the Gaussian, in pixels.

angle

Apply the effect along this angle.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants. The channel argument affects only if Imagick is compiled against ImageMagick version 6.4.4 or greater.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::mosaicImages
Imagick::negateImage
The Imagick class


Negates the colors in the reference image

Imagick::motionBlurImage
Imagick::newImage
The Imagick class
PHP Manual

Imagick::negateImage

(PECL imagick 2.0.0)

Imagick::negateImage — Negates the colors in the reference image

Descrição

bool Imagick::negateImage ( bool $gray [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Negates the colors in the reference image. The Grayscale option means that only grayscale values within the image are negated.

Parâmetros

gray

Whether to only negate grayscale pixels within the image.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::motionBlurImage
Imagick::newImage
The Imagick class


Creates a new image

Imagick::negateImage
Imagick::newPseudoImage
The Imagick class
PHP Manual

Imagick::newImage

(PECL imagick 2.0.0)

Imagick::newImage — Creates a new image

Descrição

bool Imagick::newImage ( int $cols , int $rows , mixed $background [, string $format ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a new image and associates ImagickPixel value as background color

Parâmetros

cols

Columns in the new image

rows

Rows in the new image

background

The background color used for this image

format

Image format. This parameter was added in Imagick version 2.0.1.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the third parameter. Previous versions allow only an ImagickPixel object.

Exemplos

Exemplo #1 Using Imagick::newImage():

Create a new image and display it.

<?php

$image = new Imagick();
$image->newImage(100, 100, new ImagickPixel('red'));
$image->setImageFormat('png');

header('Content-type: image/png');
echo $image;

?>

Imagick::negateImage
Imagick::newPseudoImage
The Imagick class


Creates a new image

Imagick::newImage
Imagick::nextImage
The Imagick class
PHP Manual

Imagick::newPseudoImage

(PECL imagick 2.0.0)

Imagick::newPseudoImage — Creates a new image

Descrição

bool Imagick::newPseudoImage ( int $columns , int $rows , string $pseudoString )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a new image using ImageMagick pseudo-formats.

Parâmetros

columns

columns in the new image

rows

rows in the new image

pseudoString

string containing pseudo image definition.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::newImage
Imagick::nextImage
The Imagick class


Moves to the next image

Imagick::newPseudoImage
Imagick::normalizeImage
The Imagick class
PHP Manual

Imagick::nextImage

(PECL imagick 2.0.0)

Imagick::nextImage — Moves to the next image

Descrição

bool Imagick::nextImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Associates the next image in the image list with an Imagick object.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::newPseudoImage
Imagick::normalizeImage
The Imagick class


Enhances the contrast of a color image

Imagick::nextImage
Imagick::oilPaintImage
The Imagick class
PHP Manual

Imagick::normalizeImage

(PECL imagick 2.0.0)

Imagick::normalizeImage — Enhances the contrast of a color image

Descrição

bool Imagick::normalizeImage ([ int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Enhances the contrast of a color image by adjusting the pixels color to span the entire range of colors available.

Parâmetros

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::nextImage
Imagick::oilPaintImage
The Imagick class


Simulates an oil painting

Imagick::normalizeImage
Imagick::opaquePaintImage
The Imagick class
PHP Manual

Imagick::oilPaintImage

(PECL imagick 2.0.0)

Imagick::oilPaintImage — Simulates an oil painting

Descrição

bool Imagick::oilPaintImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a special effect filter that simulates an oil painting. Each pixel is replaced by the most frequent color occurring in a circular region defined by radius.

Parâmetros

radius

The radius of the circular neighborhood.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::normalizeImage
Imagick::opaquePaintImage
The Imagick class


Changes the color value of any pixel that matches target

Imagick::oilPaintImage
Imagick::optimizeImageLayers
The Imagick class
PHP Manual

Imagick::opaquePaintImage

(No version information available, might only be in SVN)

Imagick::opaquePaintImage — Changes the color value of any pixel that matches target

Descrição

bool Imagick::opaquePaintImage ( mixed $target , mixed $fill , float $fuzz , bool $invert [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Changes any pixel that matches color with the color defined by fill. This method is available if Imagick has been compiled against ImageMagick version 6.3.8 or newer.

Parâmetros

target

ImagickPixel object or a string containing the color to change

fill

The replacement color

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.

invert

If TRUE paints any pixel that does not match the target color.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::oilPaintImage
Imagick::optimizeImageLayers
The Imagick class


Removes repeated portions of images to optimize

Imagick::opaquePaintImage
Imagick::orderedPosterizeImage
The Imagick class
PHP Manual

Imagick::optimizeImageLayers

(PECL imagick 2.0.0)

Imagick::optimizeImageLayers — Removes repeated portions of images to optimize

Descrição

bool Imagick::optimizeImageLayers ( void )

Compares each image the GIF disposed forms of the previous image in the sequence. From this it attempts to select the smallest cropped image to replace each frame, while preserving the results of the animation. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::optimizeImageLayers()

Reading, optimizing and writing a GIF image

<?php
/* create new imagick object */
$im = new Imagick("test.gif");

/* optimize the image layers */
$im->optimizeImageLayers();

/* write the image back */
$im->writeImages("test_optimized.gif", true);
?>

Veja Também

  • Imagick::compareImageLayers() - Returns the maximum bounding region between images
  • Imagick::writeImages() - Writes an image or image sequence
  • Imagick::writeImage() - Writes an image to the specified filename

Imagick::opaquePaintImage
Imagick::orderedPosterizeImage
The Imagick class


Performs an ordered dither

Imagick::optimizeImageLayers
Imagick::paintFloodfillImage
The Imagick class
PHP Manual

Imagick::orderedPosterizeImage

(PECL imagick 2.2.2)

Imagick::orderedPosterizeImage — Performs an ordered dither

Descrição

bool Imagick::orderedPosterizeImage ( string $threshold_map [, int $channel = Imagick::CHANNEL_ALL ] )

Performs an ordered dither based on a number of pre-defined dithering threshold maps, but over multiple intensity levels, which can be different for different channels, according to the input arguments. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.1 ou mais nova.

Parâmetros

threshold_map

A string containing the name of the threshold dither map to use

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::optimizeImageLayers
Imagick::paintFloodfillImage
The Imagick class


Changes the color value of any pixel that matches target

Imagick::orderedPosterizeImage
Imagick::paintOpaqueImage
The Imagick class
PHP Manual

Imagick::paintFloodfillImage

(PECL imagick 2.1.0)

Imagick::paintFloodfillImage — Changes the color value of any pixel that matches target

Descrição

bool Imagick::paintFloodfillImage ( mixed $fill , float $fuzz , mixed $bordercolor , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )

Changes the color value of any pixel that matches target and is an immediate neighbor. As of ImageMagick 6.3.8 this method has been deprecated and Imagick::floodfillPaintImage() should be used instead.

Parâmetros

fill

ImagickPixel object or a string containing the fill color

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.

bordercolor

ImagickPixel object or a string containing the border color

x

X start position of the floodfill

y

Y start position of the floodfill

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::orderedPosterizeImage
Imagick::paintOpaqueImage
The Imagick class


Change any pixel that matches color

Imagick::paintFloodfillImage
Imagick::paintTransparentImage
The Imagick class
PHP Manual

Imagick::paintOpaqueImage

(PECL imagick 2.0.0)

Imagick::paintOpaqueImage — Change any pixel that matches color

Descrição

bool Imagick::paintOpaqueImage ( mixed $target , mixed $fill , float $fuzz [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes any pixel that matches color with the color defined by fill.

Parâmetros

target

Change this target color to the fill color within the image. An ImagickPixel object or a string representing the target color.

fill

An ImagickPixel object or a string representing the fill color.

fuzz

The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same.

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as first and second parameter. Previous versions allow only an ImagickPixel object.

Imagick::paintFloodfillImage
Imagick::paintTransparentImage
The Imagick class


Changes any pixel that matches color with the color defined by fill

Imagick::paintOpaqueImage
Imagick::pingImage
The Imagick class
PHP Manual

Imagick::paintTransparentImage

(PECL imagick 2.0.0)

Imagick::paintTransparentImage — Changes any pixel that matches color with the color defined by fill

Descrição

bool Imagick::paintTransparentImage ( mixed $target , float $alpha , float $fuzz )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes any pixel that matches color with the color defined by fill.

Parâmetros

target

Change this target color to specified opacity value within the image.

alpha

The level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.

fuzz

The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter. Previous versions allow only an ImagickPixel object.

Imagick::paintOpaqueImage
Imagick::pingImage
The Imagick class


Fetch basic attributes about the image

Imagick::paintTransparentImage
Imagick::pingImageBlob
The Imagick class
PHP Manual

Imagick::pingImage

(PECL imagick 2.0.0)

Imagick::pingImage — Fetch basic attributes about the image

Descrição

bool Imagick::pingImage ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

This method can be used to query image width, height, size, and format without reading the whole image in to memory.

Parâmetros

filename

The filename to read the information from.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::paintTransparentImage
Imagick::pingImageBlob
The Imagick class


Quickly fetch attributes

Imagick::pingImage
Imagick::pingImageFile
The Imagick class
PHP Manual

Imagick::pingImageBlob

(PECL imagick 2.0.0)

Imagick::pingImageBlob — Quickly fetch attributes

Descrição

bool Imagick::pingImageBlob ( string $image )

This method can be used to query image width, height, size, and format without reading the whole image to memory. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

image

A string containing the image.

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::pingImageBlob()

Pinging an image from a string

<?php
/* read image contents */
$image = file_get_contents("test.jpg");

/* create new imagick object */
$im = new Imagick();

/* pass the string to the imagick object */
$im->pingImageBlob($image);

/* output image width and height */
echo $im->getImageWidth() . 'x' . $im->getImageHeight();
?>

Veja Também

  • Imagick::pingImage() - Fetch basic attributes about the image
  • Imagick::pingImageFile() - Get basic image attributes in a lightweight manner
  • Imagick::readImage() - Reads image from filename
  • Imagick::readImageBlob() - Reads image from a binary string
  • Imagick::readImageFile() - Reads image from open filehandle

Imagick::pingImage
Imagick::pingImageFile
The Imagick class


Get basic image attributes in a lightweight manner

Imagick::pingImageBlob
Imagick::polaroidImage
The Imagick class
PHP Manual

Imagick::pingImageFile

(PECL imagick 2.0.0)

Imagick::pingImageFile — Get basic image attributes in a lightweight manner

Descrição

bool Imagick::pingImageFile ( resource $filehandle [, string $fileName ] )

This method can be used to query image width, height, size, and format without reading the whole image to memory. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

filehandle

An open filehandle to the image.

fileName

Optional filename for this image.

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::pingImageFile()

Opening a remote location

<?php
/* fopen a remote location */
$fp = fopen("http://example.com/test.jpg");

/* create new imagick object */
$im = new Imagick();

/* pass the handle to imagick */
$im->pingImageFile($fp);
?>

Veja Também

  • Imagick::pingImage() - Fetch basic attributes about the image
  • Imagick::pingImageBlob() - Quickly fetch attributes
  • Imagick::readImage() - Reads image from filename
  • Imagick::readImageBlob() - Reads image from a binary string
  • Imagick::readImageFile() - Reads image from open filehandle

Imagick::pingImageBlob
Imagick::polaroidImage
The Imagick class


Simulates a Polaroid picture

Imagick::pingImageFile
Imagick::posterizeImage
The Imagick class
PHP Manual

Imagick::polaroidImage

(PECL imagick 2.0.0)

Imagick::polaroidImage — Simulates a Polaroid picture

Descrição

bool Imagick::polaroidImage ( ImagickDraw $properties , float $angle )

Simulates a Polaroid picture. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.2 ou mais nova.

Parâmetros

properties

The polaroid properties

angle

The polaroid angle

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 A Imagick::polaroidImage() example

An example of using Imagick::polaroidImage()

<?php
/* Create the object */
$image = new Imagick('source.png');

/* Set the opacity */
$image->polaroidImage(new ImagickDraw(), 25);

/* output the image */
header('Content-type: image/png');
echo $image;

?>

Imagick::pingImageFile
Imagick::posterizeImage
The Imagick class


Reduces the image to a limited number of color level

Imagick::polaroidImage
Imagick::previewImages
The Imagick class
PHP Manual

Imagick::posterizeImage

(PECL imagick 2.0.0)

Imagick::posterizeImage — Reduces the image to a limited number of color level

Descrição

bool Imagick::posterizeImage ( int $levels , bool $dither )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Reduces the image to a limited number of color level.

Parâmetros

levels

dither

Valor Retornado

Retorna TRUE em sucesso.

Imagick::polaroidImage
Imagick::previewImages
The Imagick class


Quickly pin-point appropriate parameters for image processing

Imagick::posterizeImage
Imagick::previousImage
The Imagick class
PHP Manual

Imagick::previewImages

(PECL imagick 2.0.0)

Imagick::previewImages — Quickly pin-point appropriate parameters for image processing

Descrição

bool Imagick::previewImages ( int $preview )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Tiles 9 thumbnails of the specified image with an image processing operation applied at varying strengths. This is helpful to quickly pin-point an appropriate parameter for an image processing operation.

Parâmetros

preview

Preview type. See Preview type constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::posterizeImage
Imagick::previousImage
The Imagick class


Move to the previous image in the object

Imagick::previewImages
Imagick::profileImage
The Imagick class
PHP Manual

Imagick::previousImage

(PECL imagick 2.0.0)

Imagick::previousImage — Move to the previous image in the object

Descrição

bool Imagick::previousImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Assocates the previous image in an image list with the Imagick object.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::previewImages
Imagick::profileImage
The Imagick class


Adds or removes a profile from an image

Imagick::previousImage
Imagick::quantizeImage
The Imagick class
PHP Manual

Imagick::profileImage

(PECL imagick 2.0.0)

Imagick::profileImage — Adds or removes a profile from an image

Descrição

bool Imagick::profileImage ( string $name , string $profile )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds or removes a ICC, IPTC, or generic profile from an image. If the profile is NULL, it is removed from the image otherwise added. Use a name of '*' and a profile of NULL to remove all profiles from the image.

Parâmetros

name

profile

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::previousImage
Imagick::quantizeImage
The Imagick class


Analyzes the colors within a reference image

Imagick::profileImage
Imagick::quantizeImages
The Imagick class
PHP Manual

Imagick::quantizeImage

(PECL imagick 2.0.0)

Imagick::quantizeImage — Analyzes the colors within a reference image

Descrição

bool Imagick::quantizeImage ( int $numberColors , int $colorspace , int $treedepth , bool $dither , bool $measureError )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

numberColors

colorspace

treedepth

dither

measureError

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::profileImage
Imagick::quantizeImages
The Imagick class


Analyzes the colors within a sequence of images

Imagick::quantizeImage
Imagick::queryFontMetrics
The Imagick class
PHP Manual

Imagick::quantizeImages

(PECL imagick 2.0.0)

Imagick::quantizeImages — Analyzes the colors within a sequence of images

Descrição

bool Imagick::quantizeImages ( int $numberColors , int $colorspace , int $treedepth , bool $dither , bool $measureError )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

numberColors

colorspace

treedepth

dither

measureError

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::quantizeImage
Imagick::queryFontMetrics
The Imagick class


Returns an array representing the font metrics

Imagick::quantizeImages
Imagick::queryFonts
The Imagick class
PHP Manual

Imagick::queryFontMetrics

(PECL imagick 2.0.0)

Imagick::queryFontMetrics — Returns an array representing the font metrics

Descrição

array Imagick::queryFontMetrics ( ImagickDraw $properties , string $text [, bool $multiline ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a multi-dimensional array representing the font metrics.

Parâmetros

properties

ImagickDraw object containing font properties

text

The text

multiline

Multiline parameter. If left empty it is autodetected

Valor Retornado

Returns a multi-dimensional array representing the font metrics. Joga uma ImagickException em erro.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::queryFontMetrics():

Query the metrics for the text and dump the results on the screen.

<?php
/* Create a new Imagick object */
$im = new Imagick();

/* Create an ImagickDraw object */
$draw = new ImagickDraw();

/* Set the font */
$draw->setFont('/path/to/font.ttf');

/* Dump the font metrics, autodetect multiline */
var_dump($im->queryFontMetrics($draw, "Hello World!"));
?>

Imagick::quantizeImages
Imagick::queryFonts
The Imagick class


Returns the configured fonts

Imagick::queryFontMetrics
Imagick::queryFormats
The Imagick class
PHP Manual

Imagick::queryFonts

(PECL imagick 2.0.0)

Imagick::queryFonts — Returns the configured fonts

Descrição

array Imagick::queryFonts ([ string $pattern = "*" ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the configured fonts.

Parâmetros

pattern

The query pattern

Valor Retornado

Returns an array containing the configured fonts. Joga uma ImagickException em erro.

Imagick::queryFontMetrics
Imagick::queryFormats
The Imagick class


Returns formats supported by Imagick

Imagick::queryFonts
Imagick::radialBlurImage
The Imagick class
PHP Manual

Imagick::queryFormats

(PECL imagick 2.0.0)

Imagick::queryFormats — Returns formats supported by Imagick

Descrição

array Imagick::queryFormats ([ string $pattern = "*" ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns formats supported by Imagick.

Parâmetros

pattern

Valor Retornado

Returns an array containing the formats supported by Imagick. Joga uma ImagickException em erro.

Imagick::queryFonts
Imagick::radialBlurImage
The Imagick class


Radial blurs an image

Imagick::queryFormats
Imagick::raiseImage
The Imagick class
PHP Manual

Imagick::radialBlurImage

(PECL imagick 2.0.0)

Imagick::radialBlurImage — Radial blurs an image

Descrição

bool Imagick::radialBlurImage ( float $angle [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Radial blurs an image.

Parâmetros

angle

channel

Valor Retornado

Retorna TRUE em sucesso.

Imagick::queryFormats
Imagick::raiseImage
The Imagick class


Creates a simulated 3d button-like effect

Imagick::radialBlurImage
Imagick::randomThresholdImage
The Imagick class
PHP Manual

Imagick::raiseImage

(PECL imagick 2.0.0)

Imagick::raiseImage — Creates a simulated 3d button-like effect

Descrição

bool Imagick::raiseImage ( int $width , int $height , int $x , int $y , bool $raise )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a simulated three-dimensional button-like effect by lightening and darkening the edges of the image. Members width and height of raise_info define the width of the vertical and horizontal edge of the effect.

Parâmetros

width

height

x

y

raise

Valor Retornado

Retorna TRUE em sucesso.

Imagick::radialBlurImage
Imagick::randomThresholdImage
The Imagick class


Creates a high-contrast, two-color image

Imagick::raiseImage
Imagick::readImage
The Imagick class
PHP Manual

Imagick::randomThresholdImage

(PECL imagick 2.0.0)

Imagick::randomThresholdImage — Creates a high-contrast, two-color image

Descrição

bool Imagick::randomThresholdImage ( float $low , float $high [, int $channel = Imagick::CHANNEL_ALL ] )

Changes the value of individual pixels based on the intensity of each pixel compared to threshold. The result is a high-contrast, two color image. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

low

The low point

high

The high point

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::raiseImage
Imagick::readImage
The Imagick class


Reads image from filename

Imagick::randomThresholdImage
Imagick::readImageBlob
The Imagick class
PHP Manual

Imagick::readImage

(PECL imagick 0.9.0-0.9.9)

Imagick::readImage — Reads image from filename

Descrição

bool Imagick::readImage ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Reads image from filename

Parâmetros

filename

Valor Retornado

Retorna TRUE em sucesso.

Imagick::randomThresholdImage
Imagick::readImageBlob
The Imagick class


Reads image from a binary string

Imagick::readImage
Imagick::readImageFile
The Imagick class
PHP Manual

Imagick::readImageBlob

(PECL imagick 2.0.0)

Imagick::readImageBlob — Reads image from a binary string

Descrição

bool Imagick::readImageBlob ( string $image [, string $filename ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Reads image from a binary string

Parâmetros

image

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::readImage
Imagick::readImageFile
The Imagick class


Reads image from open filehandle

Imagick::readImageBlob
Imagick::recolorImage
The Imagick class
PHP Manual

Imagick::readImageFile

(PECL imagick 2.0.0)

Imagick::readImageFile — Reads image from open filehandle

Descrição

bool Imagick::readImageFile ( resource $filehandle [, string $fileName = null ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Reads image from open filehandle

Parâmetros

filehandle

fileName

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::readImageBlob
Imagick::recolorImage
The Imagick class


Recolors image

Imagick::readImageFile
Imagick::reduceNoiseImage
The Imagick class
PHP Manual

Imagick::recolorImage

(No version information available, might only be in SVN)

Imagick::recolorImage — Recolors image

Descrição

bool Imagick::recolorImage ( array $matrix )

Translate, scale, shear, or rotate image colors. This method supports variable sized matrices but normally 5x5 matrix is used for RGBA and 6x6 is used for CMYK. The last row should contain the normalized values. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

matrix

The matrix containing the color values

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::displayImage() - Displays an image

Imagick::readImageFile
Imagick::reduceNoiseImage
The Imagick class


Smooths the contours of an image

Imagick::recolorImage
Imagick::remapImage
The Imagick class
PHP Manual

Imagick::reduceNoiseImage

(PECL imagick 2.0.0)

Imagick::reduceNoiseImage — Smooths the contours of an image

Descrição

bool Imagick::reduceNoiseImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Smooths the contours of an image while still preserving edge information. The algorithm works by replacing each pixel with its neighbor closest in value. A neighbor is defined by radius. Use a radius of 0 and Imagick::reduceNoiseImage() selects a suitable radius for you.

Parâmetros

radius

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::recolorImage
Imagick::remapImage
The Imagick class


Remaps image colors

Imagick::reduceNoiseImage
Imagick::removeImage
The Imagick class
PHP Manual

Imagick::remapImage

(No version information available, might only be in SVN)

Imagick::remapImage — Remaps image colors

Descrição

public bool Imagick::remapImage ( Imagick $replacement , int $DITHER )

Replaces colors an image with those defined by replacement. The colors are replaced with the closest possible color. This method is available if Imagick has been compiled against ImageMagick version 6.4.5 or newer.

Parâmetros

replacement

An Imagick object containing the replacement colors

DITHER

Refer to this list of dither method constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::reduceNoiseImage
Imagick::removeImage
The Imagick class


Removes an image from the image list

Imagick::remapImage
Imagick::removeImageProfile
The Imagick class
PHP Manual

Imagick::removeImage

(PECL imagick 2.0.0)

Imagick::removeImage — Removes an image from the image list

Descrição

bool Imagick::removeImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Removes an image from the image list.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::remapImage
Imagick::removeImageProfile
The Imagick class


Removes the named image profile and returns it

Imagick::removeImage
Imagick::render
The Imagick class
PHP Manual

Imagick::removeImageProfile

(PECL imagick 2.0.0)

Imagick::removeImageProfile — Removes the named image profile and returns it

Descrição

string Imagick::removeImageProfile ( string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Removes the named image profile and returns it.

Parâmetros

name

Valor Retornado

Returns a string containing the profile of the image. Joga uma ImagickException em erro.

Imagick::removeImage
Imagick::render
The Imagick class


Renders all preceding drawing commands

Imagick::removeImageProfile
Imagick::resampleImage
The Imagick class
PHP Manual

Imagick::render

(PECL imagick 2.0.0)

Imagick::render — Renders all preceding drawing commands

Descrição

bool Imagick::render ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Renders all preceding drawing commands.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::removeImageProfile
Imagick::resampleImage
The Imagick class


Resample image to desired resolution

Imagick::render
Imagick::resetImagePage
The Imagick class
PHP Manual

Imagick::resampleImage

(PECL imagick 2.0.0)

Imagick::resampleImage — Resample image to desired resolution

Descrição

bool Imagick::resampleImage ( float $x_resolution , float $y_resolution , int $filter , float $blur )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Resample image to desired resolution.

Parâmetros

x_resolution

y_resolution

filter

blur

Valor Retornado

Retorna TRUE em sucesso.

Imagick::render
Imagick::resetImagePage
The Imagick class


Reset image page

Imagick::resampleImage
Imagick::resizeImage
The Imagick class
PHP Manual

Imagick::resetImagePage

(No version information available, might only be in SVN)

Imagick::resetImagePage — Reset image page

Descrição

bool Imagick::resetImagePage ( string $page )

The page definition as a string. The string is in format WxH+x+y. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

page

The page definition. For example 7168x5147+0+0

Valor Retornado

Retorna TRUE em sucesso.

Imagick::resampleImage
Imagick::resizeImage
The Imagick class


Scales an image

Imagick::resetImagePage
Imagick::rollImage
The Imagick class
PHP Manual

Imagick::resizeImage

(PECL imagick 2.0.0)

Imagick::resizeImage — Scales an image

Descrição

bool Imagick::resizeImage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Scales an image to the desired dimensions with a filter.

Nota: The behavior of the parameter bestfit changed in Imagick 3.0.0. Before this version given dimensions 400x400 an image of dimensions 200x150 would be left untouched. In Imagick 3.0.0 and later the image would be scaled up to size 400x300 as this is the "best fit" for the given dimensions. If bestfit parameter is used both width and height must be given.

Parâmetros

columns

Width of the image

rows

Height of the image

filter

Refer to the list of filter constants.

blur

The blur factor where > 1 is blurry, < 1 is sharp.

bestfit

Optional fit parameter.

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Added optional fit parameter. This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

Imagick::resetImagePage
Imagick::rollImage
The Imagick class


Offsets an image

Imagick::resizeImage
Imagick::rotateImage
The Imagick class
PHP Manual

Imagick::rollImage

(PECL imagick 2.0.0)

Imagick::rollImage — Offsets an image

Descrição

bool Imagick::rollImage ( int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Offsets an image as defined by x and y.

Parâmetros

x

The X offset.

y

The Y offset.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::resizeImage
Imagick::rotateImage
The Imagick class


Rotates an image

Imagick::rollImage
Imagick::roundCorners
The Imagick class
PHP Manual

Imagick::rotateImage

(PECL imagick 2.0.0)

Imagick::rotateImage — Rotates an image

Descrição

bool Imagick::rotateImage ( mixed $background , float $degrees )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Rotates an image the specified number of degrees. Empty triangles left over from rotating the image are filled with the background color.

Parâmetros

background

The background color

degrees

The number of degrees to rotate the image

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter. Previous versions allow only an ImagickPixel object.

Imagick::rollImage
Imagick::roundCorners
The Imagick class


Rounds image corners

Imagick::rotateImage
Imagick::sampleImage
The Imagick class
PHP Manual

Imagick::roundCorners

(PECL imagick 2.0.0)

Imagick::roundCorners — Rounds image corners

Descrição

bool Imagick::roundCorners ( float $x_rounding , float $y_rounding [, float $stroke_width = 10 [, float $displace = 5 [, float $size_correction = -6 ]]] )

Rounds image corners. The first two parameters control the amount of rounding and the three last parameters can be used to fine-tune the rounding process. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

x_rounding

x rounding

y_rounding

y rounding

stroke_width

stroke width

displace

image displace

size_correction

size correction

Exemplos

Exemplo #1 Using Imagick::roundCorners():

Rounds the image corners

<?php

$image = new Imagick();
$image->newPseudoImage(100, 100, "magick:rose");
$image->setImageFormat("png");

$image->roundCorners(5,3);
$image->writeImage("rounded.png");
?>

Valor Retornado

Retorna TRUE em sucesso.

Imagick::rotateImage
Imagick::sampleImage
The Imagick class


Scales an image with pixel sampling

Imagick::roundCorners
Imagick::scaleImage
The Imagick class
PHP Manual

Imagick::sampleImage

(PECL imagick 2.0.0)

Imagick::sampleImage — Scales an image with pixel sampling

Descrição

bool Imagick::sampleImage ( int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Scales an image to the desired dimensions with pixel sampling. Unlike other scaling methods, this method does not introduce any additional color into the scaled image.

Parâmetros

columns

rows

Valor Retornado

Retorna TRUE em sucesso.

Imagick::roundCorners
Imagick::scaleImage
The Imagick class


Scales the size of an image

Imagick::sampleImage
Imagick::segmentImage
The Imagick class
PHP Manual

Imagick::scaleImage

(PECL imagick 2.0.0)

Imagick::scaleImage — Scales the size of an image

Descrição

bool Imagick::scaleImage ( int $cols , int $rows [, bool $bestfit = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Scales the size of an image to the given dimensions. The other parameter will be calculated if 0 is passed as either param.

Nota: The behavior of the parameter bestfit changed in Imagick 3.0.0. Before this version given dimensions 400x400 an image of dimensions 200x150 would be left untouched. In Imagick 3.0.0 and later the image would be scaled up to size 400x300 as this is the "best fit" for the given dimensions. If bestfit parameter is used both width and height must be given.

Parâmetros

cols

rows

bestfit

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Added optional fit parameter. This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

Imagick::sampleImage
Imagick::segmentImage
The Imagick class


Segments an image

Imagick::scaleImage
Imagick::separateImageChannel
The Imagick class
PHP Manual

Imagick::segmentImage

(No version information available, might only be in SVN)

Imagick::segmentImage — Segments an image

Descrição

public bool Imagick::segmentImage ( int $COLORSPACE , float $cluster_threshold , float $smooth_threshold [, bool $verbose = false ] )

Analyses the image and identifies units that are similar. This method is available if Imagick has been compiled against ImageMagick version 6.4.5 or newer.

Parâmetros

COLORSPACE

One of the COLORSPACE constants.

cluster_threshold

A percentage describing minimum number of pixels contained in hexedra before it is considered valid.

smooth_threshold

Eliminates noise from the histogram.

verbose

Whether to output detailed information about recognised classes.

Valor Retornado

Imagick::scaleImage
Imagick::separateImageChannel
The Imagick class


Separates a channel from the image

Imagick::segmentImage
Imagick::sepiaToneImage
The Imagick class
PHP Manual

Imagick::separateImageChannel

(PECL imagick 2.0.0)

Imagick::separateImageChannel — Separates a channel from the image

Descrição

bool Imagick::separateImageChannel ( int $channel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Separates a channel from the image and returns a grayscale image. A channel is a particular color component of each pixel in the image.

Parâmetros

channel

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::segmentImage
Imagick::sepiaToneImage
The Imagick class


Sepia tones an image

Imagick::separateImageChannel
Imagick::setBackgroundColor
The Imagick class
PHP Manual

Imagick::sepiaToneImage

(PECL imagick 2.0.0)

Imagick::sepiaToneImage — Sepia tones an image

Descrição

bool Imagick::sepiaToneImage ( float $threshold )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a special effect to the image, similar to the effect achieved in a photo darkroom by sepia toning. Threshold ranges from 0 to QuantumRange and is a measure of the extent of the sepia toning. A threshold of 80 is a good starting point for a reasonable tone.

Parâmetros

threshold

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::separateImageChannel
Imagick::setBackgroundColor
The Imagick class


Sets the object's default background color

Imagick::sepiaToneImage
Imagick::setColorspace
The Imagick class
PHP Manual

Imagick::setBackgroundColor

(PECL imagick 2.0.0)

Imagick::setBackgroundColor — Sets the object's default background color

Descrição

bool Imagick::setBackgroundColor ( mixed $background )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the object's default background color.

Parâmetros

background

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as a parameter. Previous versions allow only an ImagickPixel object.

Imagick::sepiaToneImage
Imagick::setColorspace
The Imagick class


Set colorspace

Imagick::setBackgroundColor
Imagick::setCompression
The Imagick class
PHP Manual

Imagick::setColorspace

(No version information available, might only be in SVN)

Imagick::setColorspace — Set colorspace

Descrição

bool Imagick::setColorspace ( int $COLORSPACE )

Sets the global colorspace value for the object. This method is available if Imagick has been compiled against ImageMagick version 6.5.7 or newer.

Parâmetros

COLORSPACE

One of the COLORSPACE constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setBackgroundColor
Imagick::setCompression
The Imagick class


Sets the object's default compression type

Imagick::setColorspace
Imagick::setCompressionQuality
The Imagick class
PHP Manual

Imagick::setCompression

(PECL imagick 2.0.0)

Imagick::setCompression — Sets the object's default compression type

Descrição

bool Imagick::setCompression ( int $compression )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the object's default compression type

Parâmetros

compression

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setColorspace
Imagick::setCompressionQuality
The Imagick class


Sets the object's default compression quality

Imagick::setCompression
Imagick::setFilename
The Imagick class
PHP Manual

Imagick::setCompressionQuality

(PECL imagick 0.9.10-0.9.9)

Imagick::setCompressionQuality — Sets the object's default compression quality

Descrição

bool Imagick::setCompressionQuality ( int $quality )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the object's default compression quality.

Parâmetros

quality

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setCompression
Imagick::setFilename
The Imagick class


Sets the filename before you read or write the image

Imagick::setCompressionQuality
Imagick::setFirstIterator
The Imagick class
PHP Manual

Imagick::setFilename

(PECL imagick 2.0.0)

Imagick::setFilename — Sets the filename before you read or write the image

Descrição

bool Imagick::setFilename ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the filename before you read or write an image file.

Parâmetros

filename

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setCompressionQuality
Imagick::setFirstIterator
The Imagick class


Sets the Imagick iterator to the first image

Imagick::setFilename
Imagick::setFont
The Imagick class
PHP Manual

Imagick::setFirstIterator

(PECL imagick 2.0.0)

Imagick::setFirstIterator — Sets the Imagick iterator to the first image

Descrição

bool Imagick::setFirstIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the Imagick iterator to the first image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setFilename
Imagick::setFont
The Imagick class


Sets font

Imagick::setFirstIterator
Imagick::setFormat
The Imagick class
PHP Manual

Imagick::setFont

(PECL imagick 2.1.0)

Imagick::setFont — Sets font

Descrição

bool Imagick::setFont ( string $font )

Sets object's font property. This method can be used for example to set font for caption: pseudo-format. The font needs to be configured in ImageMagick confiration or a file by the name of font must exist. This method should not be confused with ImagickDraw::setFont() which sets the font for a specific ImagickDraw object. This method is available if Imagick has been compiled against ImageMagick version 6.3.7 or newer.

Parâmetros

font

Font name or a filename

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::getFont() - Gets font
  • ImagickDraw::setFont() - Sets the fully-specified font to use when annotating with text
  • ImagickDraw::getFont() - Returns the font

Exemplos

Exemplo #1 A Imagick::setFont() example

Example of using Imagick::setFont

<?php
/* Create new imagick object */
$im = new Imagick();

/* Set the font for the object */
$im->setFont("example.ttf");

/* Create new caption */
$im->newPseudoImage(100, 100, "caption:Hello");

/* Do something with the image */
?>

Imagick::setFirstIterator
Imagick::setFormat
The Imagick class


Sets the format of the Imagick object

Imagick::setFont
Imagick::setGravity
The Imagick class
PHP Manual

Imagick::setFormat

(PECL imagick 2.0.0)

Imagick::setFormat — Sets the format of the Imagick object

Descrição

bool Imagick::setFormat ( string $format )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the format of the Imagick object.

Parâmetros

format

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setFont
Imagick::setGravity
The Imagick class


Sets the gravity

Imagick::setFormat
Imagick::setImage
The Imagick class
PHP Manual

Imagick::setGravity

(No version information available, might only be in SVN)

Imagick::setGravity — Sets the gravity

Descrição

bool Imagick::setGravity ( int $gravity )

Sets the global gravity property for the Imagick object. This method is available if Imagick has been compiled against ImageMagick version 6.4.0 or newer.

Parâmetros

gravity

The gravity property. Refer to the list of gravity constants.

Valor Retornado

Não há valor retornado.

Imagick::setFormat
Imagick::setImage
The Imagick class


Replaces image in the object

Imagick::setGravity
Imagick::setImageAlphaChannel
The Imagick class
PHP Manual

Imagick::setImage

(PECL imagick 2.0.0)

Imagick::setImage — Replaces image in the object

Descrição

bool Imagick::setImage ( Imagick $replace )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Replaces the current image sequence with the image from replace object.

Parâmetros

replace

The replace Imagick object

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 A Imagick::setImage() example

An example of using Imagick::setImage()

<?php
/* Create the objects */
$image = new Imagick('source.jpg');
$replace = new Imagick('replace.jpg');

/* source.jpg is replaced with replace.jpg */
$image->setImage($replace);

/* output the image */
header('Content-type: image/jpeg');
echo $image;

?>

Imagick::setGravity
Imagick::setImageAlphaChannel
The Imagick class


Sets image alpha channel

Imagick::setImage
Imagick::setImageArtifact
The Imagick class
PHP Manual

Imagick::setImageAlphaChannel

(No version information available, might only be in SVN)

Imagick::setImageAlphaChannel — Sets image alpha channel

Descrição

bool Imagick::setImageAlphaChannel ( int $mode )

Activate or deactivate image alpha channel. The mode is one of the Imagick::ALPHACHANNEL_* constants. This method is available if Imagick has been compiled against ImageMagick version 6.3.8 or newer.

Parâmetros

mode

One of the Imagick::ALPHACHANNEL_* constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Veja Também

  • Imagick::setImageMatte() - Sets the image matte channel

Imagick::setImage
Imagick::setImageArtifact
The Imagick class


Set image artifact

Imagick::setImageAlphaChannel
Imagick::setImageBackgroundColor
The Imagick class
PHP Manual

Imagick::setImageArtifact

(No version information available, might only be in SVN)

Imagick::setImageArtifact — Set image artifact

Descrição

bool Imagick::setImageArtifact ( string $artifact , string $value )

Associates an artifact with the image. The difference between image properties and image artifacts is that properties are public and artifacts are private. This method is available if Imagick has been compiled against ImageMagick version 6.5.7 or newer.

Parâmetros

artifact

The name of the artifact

value

The value of the artifact

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Veja Também

  • Imagick::getImageArtifact() - Get image artifact
  • Imagick::deleteImageArtifact() - Delete image artifact

Imagick::setImageAlphaChannel
Imagick::setImageBackgroundColor
The Imagick class


Sets the image background color

Imagick::setImageArtifact
Imagick::setImageBias
The Imagick class
PHP Manual

Imagick::setImageBackgroundColor

(PECL imagick 2.0.0)

Imagick::setImageBackgroundColor — Sets the image background color

Descrição

bool Imagick::setImageBackgroundColor ( mixed $background )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image background color.

Parâmetros

background

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the parameter. Previous versions allow only an ImagickPixel object.

Imagick::setImageArtifact
Imagick::setImageBias
The Imagick class


Sets the image bias for any method that convolves an image

Imagick::setImageBackgroundColor
Imagick::setImageBluePrimary
The Imagick class
PHP Manual

Imagick::setImageBias

(PECL imagick 2.0.0)

Imagick::setImageBias — Sets the image bias for any method that convolves an image

Descrição

bool Imagick::setImageBias ( float $bias )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image bias for any method that convolves an image (e.g. Imagick::ConvolveImage()).

Parâmetros

bias

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageBackgroundColor
Imagick::setImageBluePrimary
The Imagick class


Sets the image chromaticity blue primary point

Imagick::setImageBias
Imagick::setImageBorderColor
The Imagick class
PHP Manual

Imagick::setImageBluePrimary

(PECL imagick 2.0.0)

Imagick::setImageBluePrimary — Sets the image chromaticity blue primary point

Descrição

bool Imagick::setImageBluePrimary ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image chromaticity blue primary point.

Parâmetros

x

y

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageBias
Imagick::setImageBorderColor
The Imagick class


Sets the image border color

Imagick::setImageBluePrimary
Imagick::setImageChannelDepth
The Imagick class
PHP Manual

Imagick::setImageBorderColor

(PECL imagick 2.0.0)

Imagick::setImageBorderColor — Sets the image border color

Descrição

bool Imagick::setImageBorderColor ( mixed $border )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image border color.

Parâmetros

border

The border color

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as a parameter. Previous versions allow only an ImagickPixel object.

Imagick::setImageBluePrimary
Imagick::setImageChannelDepth
The Imagick class


Sets the depth of a particular image channel

Imagick::setImageBorderColor
Imagick::setImageClipMask
The Imagick class
PHP Manual

Imagick::setImageChannelDepth

(PECL imagick 2.0.0)

Imagick::setImageChannelDepth — Sets the depth of a particular image channel

Descrição

bool Imagick::setImageChannelDepth ( int $channel , int $depth )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the depth of a particular image channel.

Parâmetros

channel

depth

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageBorderColor
Imagick::setImageClipMask
The Imagick class


Sets image clip mask

Imagick::setImageChannelDepth
Imagick::setImageColormapColor
The Imagick class
PHP Manual

Imagick::setImageClipMask

(No version information available, might only be in SVN)

Imagick::setImageClipMask — Sets image clip mask

Descrição

bool Imagick::setImageClipMask ( Imagick $clip_mask )

Sets image clip mask from another Imagick object. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

clip_mask

The Imagick object containing the clip mask

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageChannelDepth
Imagick::setImageColormapColor
The Imagick class


Sets the color of the specified colormap index

Imagick::setImageClipMask
Imagick::setImageColorspace
The Imagick class
PHP Manual

Imagick::setImageColormapColor

(PECL imagick 2.0.0)

Imagick::setImageColormapColor — Sets the color of the specified colormap index

Descrição

bool Imagick::setImageColormapColor ( int $index , ImagickPixel $color )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the color of the specified colormap index.

Parâmetros

index

color

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageClipMask
Imagick::setImageColorspace
The Imagick class


Sets the image colorspace

Imagick::setImageColormapColor
Imagick::setImageCompose
The Imagick class
PHP Manual

Imagick::setImageColorspace

(PECL imagick 2.0.0)

Imagick::setImageColorspace — Sets the image colorspace

Descrição

bool Imagick::setImageColorspace ( int $colorspace )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image colorspace.

Parâmetros

colorspace

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageColormapColor
Imagick::setImageCompose
The Imagick class


Sets the image composite operator

Imagick::setImageColorspace
Imagick::setImageCompression
The Imagick class
PHP Manual

Imagick::setImageCompose

(PECL imagick 2.0.0)

Imagick::setImageCompose — Sets the image composite operator

Descrição

bool Imagick::setImageCompose ( int $compose )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image composite operator, useful for specifying how to composite the image thumbnail when using the Imagick::montageImage() method.

Parâmetros

compose

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageColorspace
Imagick::setImageCompression
The Imagick class


Sets the image compression

Imagick::setImageCompose
Imagick::setImageCompressionQuality
The Imagick class
PHP Manual

Imagick::setImageCompression

(PECL imagick 2.0.0)

Imagick::setImageCompression — Sets the image compression

Descrição

bool Imagick::setImageCompression ( int $compression )

Parâmetros

compression

One of the COMPRESSION constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageCompose
Imagick::setImageCompressionQuality
The Imagick class


Sets the image compression quality

Imagick::setImageCompression
Imagick::setImageDelay
The Imagick class
PHP Manual

Imagick::setImageCompressionQuality

(No version information available, might only be in SVN)

Imagick::setImageCompressionQuality — Sets the image compression quality

Descrição

bool Imagick::setImageCompressionQuality ( int $quality )

Sets the image compression quality.

Parâmetros

quality

The image compression quality as an integer

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageCompression
Imagick::setImageDelay
The Imagick class


Sets the image delay

Imagick::setImageCompressionQuality
Imagick::setImageDepth
The Imagick class
PHP Manual

Imagick::setImageDelay

(PECL imagick 2.0.0)

Imagick::setImageDelay — Sets the image delay

Descrição

bool Imagick::setImageDelay ( int $delay )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image delay.

Parâmetros

delay

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageCompressionQuality
Imagick::setImageDepth
The Imagick class


Sets the image depth

Imagick::setImageDelay
Imagick::setImageDispose
The Imagick class
PHP Manual

Imagick::setImageDepth

(PECL imagick 2.0.0)

Imagick::setImageDepth — Sets the image depth

Descrição

bool Imagick::setImageDepth ( int $depth )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image depth.

Parâmetros

depth

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageDelay
Imagick::setImageDispose
The Imagick class


Sets the image disposal method

Imagick::setImageDepth
Imagick::setImageExtent
The Imagick class
PHP Manual

Imagick::setImageDispose

(PECL imagick 2.0.0)

Imagick::setImageDispose — Sets the image disposal method

Descrição

bool Imagick::setImageDispose ( int $dispose )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image disposal method.

Parâmetros

dispose

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageDepth
Imagick::setImageExtent
The Imagick class


Sets the image size

Imagick::setImageDispose
Imagick::setImageFilename
The Imagick class
PHP Manual

Imagick::setImageExtent

(PECL imagick 2.0.0)

Imagick::setImageExtent — Sets the image size

Descrição

bool Imagick::setImageExtent ( int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image size (i.e. columns & rows).

Parâmetros

columns

rows

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageDispose
Imagick::setImageFilename
The Imagick class


Sets the filename of a particular image

Imagick::setImageExtent
Imagick::setImageFormat
The Imagick class
PHP Manual

Imagick::setImageFilename

(PECL imagick 2.0.0)

Imagick::setImageFilename — Sets the filename of a particular image

Descrição

bool Imagick::setImageFilename ( string $filename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the filename of a particular image in a sequence.

Parâmetros

filename

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageExtent
Imagick::setImageFormat
The Imagick class


Sets the format of a particular image

Imagick::setImageFilename
Imagick::setImageGamma
The Imagick class
PHP Manual

Imagick::setImageFormat

(PECL imagick 2.0.0)

Imagick::setImageFormat — Sets the format of a particular image

Descrição

bool Imagick::setImageFormat ( string $format )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the format of a particular image in a sequence.

Parâmetros

format

String presentation of the image format. Format support depends on the ImageMagick installation.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageFilename
Imagick::setImageGamma
The Imagick class


Sets the image gamma

Imagick::setImageFormat
Imagick::setImageGravity
The Imagick class
PHP Manual

Imagick::setImageGamma

(PECL imagick 2.0.0)

Imagick::setImageGamma — Sets the image gamma

Descrição

bool Imagick::setImageGamma ( float $gamma )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image gamma.

Parâmetros

gamma

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageFormat
Imagick::setImageGravity
The Imagick class


Sets the image gravity

Imagick::setImageGamma
Imagick::setImageGreenPrimary
The Imagick class
PHP Manual

Imagick::setImageGravity

(No version information available, might only be in SVN)

Imagick::setImageGravity — Sets the image gravity

Descrição

bool Imagick::setImageGravity ( int $gravity )

Sets the gravity property for the current image. This method can be used to set the gravity property for a single image sequence. This method is available if Imagick has been compiled against ImageMagick version 6.4.4 or newer.

Parâmetros

gravity

The gravity property. Refer to the list of gravity constants.

Valor Retornado

Não há valor retornado.

Imagick::setImageGamma
Imagick::setImageGreenPrimary
The Imagick class


Sets the image chromaticity green primary point

Imagick::setImageGravity
Imagick::setImageIndex
The Imagick class
PHP Manual

Imagick::setImageGreenPrimary

(PECL imagick 2.0.0)

Imagick::setImageGreenPrimary — Sets the image chromaticity green primary point

Descrição

bool Imagick::setImageGreenPrimary ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image chromaticity green primary point.

Parâmetros

x

y

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageGravity
Imagick::setImageIndex
The Imagick class


Set the iterator position

Imagick::setImageGreenPrimary
Imagick::setImageInterlaceScheme
The Imagick class
PHP Manual

Imagick::setImageIndex

(PECL imagick 2.0.0)

Imagick::setImageIndex — Set the iterator position

Descrição

bool Imagick::setImageIndex ( int $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Set the iterator to the position in the image list specified with the index parameter.

This method has been deprecated. See Imagick::setIteratorIndex

Parâmetros

index

The position to set the iterator to

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageGreenPrimary
Imagick::setImageInterlaceScheme
The Imagick class


Sets the image compression

Imagick::setImageIndex
Imagick::setImageInterpolateMethod
The Imagick class
PHP Manual

Imagick::setImageInterlaceScheme

(PECL imagick 2.0.0)

Imagick::setImageInterlaceScheme — Sets the image compression

Descrição

bool Imagick::setImageInterlaceScheme ( int $interlace_scheme )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image compression.

Parâmetros

interlace_scheme

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageIndex
Imagick::setImageInterpolateMethod
The Imagick class


Sets the image interpolate pixel method

Imagick::setImageInterlaceScheme
Imagick::setImageIterations
The Imagick class
PHP Manual

Imagick::setImageInterpolateMethod

(PECL imagick 2.0.0)

Imagick::setImageInterpolateMethod — Sets the image interpolate pixel method

Descrição

bool Imagick::setImageInterpolateMethod ( int $method )

Sets the image interpolate pixel method.

Parâmetros

method

The method is one of the Imagick::INTERPOLATE_* constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageInterlaceScheme
Imagick::setImageIterations
The Imagick class


Sets the image iterations

Imagick::setImageInterpolateMethod
Imagick::setImageMatte
The Imagick class
PHP Manual

Imagick::setImageIterations

(PECL imagick 2.0.0)

Imagick::setImageIterations — Sets the image iterations

Descrição

bool Imagick::setImageIterations ( int $iterations )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image iterations.

Parâmetros

iterations

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageInterpolateMethod
Imagick::setImageMatte
The Imagick class


Sets the image matte channel

Imagick::setImageIterations
Imagick::setImageMatteColor
The Imagick class
PHP Manual

Imagick::setImageMatte

(PECL imagick 2.0.0)

Imagick::setImageMatte — Sets the image matte channel

Descrição

bool Imagick::setImageMatte ( bool $matte )

Sets the image matte channel. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

matte

True activates the matte channel and false disables it.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageIterations
Imagick::setImageMatteColor
The Imagick class


Sets the image matte color

Imagick::setImageMatte
Imagick::setImageOpacity
The Imagick class
PHP Manual

Imagick::setImageMatteColor

(PECL imagick 2.0.0)

Imagick::setImageMatteColor — Sets the image matte color

Descrição

bool Imagick::setImageMatteColor ( mixed $matte )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image matte color.

Parâmetros

matte

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the parameter. Previous versions allow only an ImagickPixel object.

Imagick::setImageMatte
Imagick::setImageOpacity
The Imagick class


Sets the image opacity level

Imagick::setImageMatteColor
Imagick::setImageOrientation
The Imagick class
PHP Manual

Imagick::setImageOpacity

(PECL imagick 2.0.0)

Imagick::setImageOpacity — Sets the image opacity level

Descrição

bool Imagick::setImageOpacity ( float $opacity )

Sets the image to the specified opacity level. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.1 ou mais nova.

Parâmetros

opacity

The level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 A Imagick::setImageOpacity() example

An example of using Imagick::setImageOpacity()

<?php
/* Create the object */
$image = new Imagick('source.png');

/* Set the opacity */
$image->setImageOpacity(0.7);

/* output the image */
header('Content-type: image/png');
echo $image;

?>

Imagick::setImageMatteColor
Imagick::setImageOrientation
The Imagick class


Sets the image orientation

Imagick::setImageOpacity
Imagick::setImagePage
The Imagick class
PHP Manual

Imagick::setImageOrientation

(PECL imagick 2.0.0)

Imagick::setImageOrientation — Sets the image orientation

Descrição

bool Imagick::setImageOrientation ( int $orientation )

Sets the image orientation.

Parâmetros

orientation

One of the orientation constants

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageOpacity
Imagick::setImagePage
The Imagick class


Sets the page geometry of the image

Imagick::setImageOrientation
Imagick::setImageProfile
The Imagick class
PHP Manual

Imagick::setImagePage

(PECL imagick 2.0.0)

Imagick::setImagePage — Sets the page geometry of the image

Descrição

bool Imagick::setImagePage ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the page geometry of the image.

Parâmetros

width

height

x

y

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageOrientation
Imagick::setImageProfile
The Imagick class


Adds a named profile to the Imagick object

Imagick::setImagePage
Imagick::setImageProperty
The Imagick class
PHP Manual

Imagick::setImageProfile

(PECL imagick 2.0.0)

Imagick::setImageProfile — Adds a named profile to the Imagick object

Descrição

bool Imagick::setImageProfile ( string $name , string $profile )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a named profile to the Imagick object. If a profile with the same name already exists, it is replaced. This method differs from the Imagick::ProfileImage() method in that it does not apply any CMS color profiles.

Parâmetros

name

profile

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImagePage
Imagick::setImageProperty
The Imagick class


Sets an image property

Imagick::setImageProfile
Imagick::setImageRedPrimary
The Imagick class
PHP Manual

Imagick::setImageProperty

(PECL imagick 2.0.0)

Imagick::setImageProperty — Sets an image property

Descrição

bool Imagick::setImageProperty ( string $name , string $value )

Sets a named property to the image. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.3.2 ou mais nova.

Parâmetros

name

value

Exemplos

Exemplo #1 Using Imagick::setImageProperty():

Setting and getting image properties

<?php
$image = new Imagick();
$image->newImage(300, 200, "black");

$image->setImageProperty('Exif:Make', 'Imagick');
echo $image->getImageProperty('Exif:Make');
?>

Veja Também

  • Imagick::getImageProperty() - Returns the named image property

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageProfile
Imagick::setImageRedPrimary
The Imagick class


Sets the image chromaticity red primary point

Imagick::setImageProperty
Imagick::setImageRenderingIntent
The Imagick class
PHP Manual

Imagick::setImageRedPrimary

(PECL imagick 2.0.0)

Imagick::setImageRedPrimary — Sets the image chromaticity red primary point

Descrição

bool Imagick::setImageRedPrimary ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image chromaticity red primary point.

Parâmetros

x

y

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageProperty
Imagick::setImageRenderingIntent
The Imagick class


Sets the image rendering intent

Imagick::setImageRedPrimary
Imagick::setImageResolution
The Imagick class
PHP Manual

Imagick::setImageRenderingIntent

(PECL imagick 2.0.0)

Imagick::setImageRenderingIntent — Sets the image rendering intent

Descrição

bool Imagick::setImageRenderingIntent ( int $rendering_intent )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image rendering intent.

Parâmetros

rendering_intent

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageRedPrimary
Imagick::setImageResolution
The Imagick class


Sets the image resolution

Imagick::setImageRenderingIntent
Imagick::setImageScene
The Imagick class
PHP Manual

Imagick::setImageResolution

(PECL imagick 2.0.0)

Imagick::setImageResolution — Sets the image resolution

Descrição

bool Imagick::setImageResolution ( float $x_resolution , float $y_resolution )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image resolution.

Parâmetros

x_resolution

y_resolution

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageRenderingIntent
Imagick::setImageScene
The Imagick class


Sets the image scene

Imagick::setImageResolution
Imagick::setImageTicksPerSecond
The Imagick class
PHP Manual

Imagick::setImageScene

(PECL imagick 2.0.0)

Imagick::setImageScene — Sets the image scene

Descrição

bool Imagick::setImageScene ( int $scene )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image scene.

Parâmetros

scene

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageResolution
Imagick::setImageTicksPerSecond
The Imagick class


Sets the image ticks-per-second

Imagick::setImageScene
Imagick::setImageType
The Imagick class
PHP Manual

Imagick::setImageTicksPerSecond

(PECL imagick 2.0.0)

Imagick::setImageTicksPerSecond — Sets the image ticks-per-second

Descrição

bool Imagick::setImageTicksPerSecond ( int $ticks_per-second )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image ticks-per-second.

Parâmetros

ticks_per-second

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageScene
Imagick::setImageType
The Imagick class


Sets the image type

Imagick::setImageTicksPerSecond
Imagick::setImageUnits
The Imagick class
PHP Manual

Imagick::setImageType

(PECL imagick 2.0.0)

Imagick::setImageType — Sets the image type

Descrição

bool Imagick::setImageType ( int $image_type )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image type.

Parâmetros

image_type

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageTicksPerSecond
Imagick::setImageUnits
The Imagick class


Sets the image units of resolution

Imagick::setImageType
Imagick::setImageVirtualPixelMethod
The Imagick class
PHP Manual

Imagick::setImageUnits

(PECL imagick 2.0.0)

Imagick::setImageUnits — Sets the image units of resolution

Descrição

bool Imagick::setImageUnits ( int $units )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image units of resolution.

Parâmetros

units

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageType
Imagick::setImageVirtualPixelMethod
The Imagick class


Sets the image virtual pixel method

Imagick::setImageUnits
Imagick::setImageWhitePoint
The Imagick class
PHP Manual

Imagick::setImageVirtualPixelMethod

(PECL imagick 2.0.0)

Imagick::setImageVirtualPixelMethod — Sets the image virtual pixel method

Descrição

bool Imagick::setImageVirtualPixelMethod ( int $method )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image virtual pixel method.

Parâmetros

method

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageUnits
Imagick::setImageWhitePoint
The Imagick class


Sets the image chromaticity white point

Imagick::setImageVirtualPixelMethod
Imagick::setInterlaceScheme
The Imagick class
PHP Manual

Imagick::setImageWhitePoint

(PECL imagick 2.0.0)

Imagick::setImageWhitePoint — Sets the image chromaticity white point

Descrição

bool Imagick::setImageWhitePoint ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image chromaticity white point.

Parâmetros

x

y

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::setImageVirtualPixelMethod
Imagick::setInterlaceScheme
The Imagick class


Sets the image compression

Imagick::setImageWhitePoint
Imagick::setIteratorIndex
The Imagick class
PHP Manual

Imagick::setInterlaceScheme

(PECL imagick 2.0.0)

Imagick::setInterlaceScheme — Sets the image compression

Descrição

bool Imagick::setInterlaceScheme ( int $interlace_scheme )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image compression.

Parâmetros

interlace_scheme

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setImageWhitePoint
Imagick::setIteratorIndex
The Imagick class


Set the iterator position

Imagick::setInterlaceScheme
Imagick::setLastIterator
The Imagick class
PHP Manual

Imagick::setIteratorIndex

(PECL imagick 2.0.0)

Imagick::setIteratorIndex — Set the iterator position

Descrição

bool Imagick::setIteratorIndex ( int $index )

Set the iterator to the position in the image list specified with the index parameter. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

index

The position to set the iterator to

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::setIteratorIndex():

Create images, set and get the iterator index

<?php
$im = new Imagick();
$im->newImage(100, 100, new ImagickPixel("red"));
$im->newImage(100, 100, new ImagickPixel("green"));
$im->newImage(100, 100, new ImagickPixel("blue"));

$im->setIteratorIndex(1);
echo $im->getIteratorIndex();
?>

Veja Também

  • Imagick::getIteratorIndex() - Gets the index of the current active image
  • Imagick::getImageIndex() - Gets the index of the current active image
  • Imagick::setImageIndex() - Set the iterator position

Imagick::setInterlaceScheme
Imagick::setLastIterator
The Imagick class


Sets the Imagick iterator to the last image

Imagick::setIteratorIndex
Imagick::setOption
The Imagick class
PHP Manual

Imagick::setLastIterator

(PECL imagick 2.0.1)

Imagick::setLastIterator — Sets the Imagick iterator to the last image

Descrição

bool Imagick::setLastIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the Imagick iterator to the last image.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setIteratorIndex
Imagick::setOption
The Imagick class


Set an option

Imagick::setLastIterator
Imagick::setPage
The Imagick class
PHP Manual

Imagick::setOption

(PECL imagick 2.0.0)

Imagick::setOption — Set an option

Descrição

bool Imagick::setOption ( string $key , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Associates one or more options with the wand.

Parâmetros

key

value

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setLastIterator
Imagick::setPage
The Imagick class


Sets the page geometry of the Imagick object

Imagick::setOption
Imagick::setPointSize
The Imagick class
PHP Manual

Imagick::setPage

(PECL imagick 2.0.0)

Imagick::setPage — Sets the page geometry of the Imagick object

Descrição

bool Imagick::setPage ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the page geometry of the Imagick object.

Parâmetros

width

height

x

y

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setOption
Imagick::setPointSize
The Imagick class


Sets point size

Imagick::setPage
Imagick::setResolution
The Imagick class
PHP Manual

Imagick::setPointSize

(PECL imagick 2.1.0)

Imagick::setPointSize — Sets point size

Descrição

bool Imagick::setPointSize ( float $point_size )

Sets object's point size property. This method can be used for example to set font size for caption: pseudo-format. This method is available if Imagick has been compiled against ImageMagick version 6.3.7 or newer.

Parâmetros

point_size

Point size

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::getPointSize() - Gets point size

Exemplos

Exemplo #1 A Imagick::setPointSize() example

Example of using Imagick::setPointSize

<?php
/* Create new imagick object */
$im = new Imagick();

/* Set the font for the object */
$im->setFont("example.ttf");

/* Set the point size */
$im->setPointSize(12);

/* Create new caption */
$im->newPseudoImage(100, 100, "caption:Hello");

/* Do something with the image */
?>

Imagick::setPage
Imagick::setResolution
The Imagick class


Sets the image resolution

Imagick::setPointSize
Imagick::setResourceLimit
The Imagick class
PHP Manual

Imagick::setResolution

(PECL imagick 2.0.0)

Imagick::setResolution — Sets the image resolution

Descrição

bool Imagick::setResolution ( float $x_resolution , float $y_resolution )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image resolution.

Parâmetros

x_resolution

y_resolution

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setPointSize
Imagick::setResourceLimit
The Imagick class


Sets the limit for a particular resource in megabytes

Imagick::setResolution
Imagick::setSamplingFactors
The Imagick class
PHP Manual

Imagick::setResourceLimit

(PECL imagick 2.0.0)

Imagick::setResourceLimit — Sets the limit for a particular resource in megabytes

Descrição

bool Imagick::setResourceLimit ( int $type , int $limit )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the limit for a particular resource in megabytes.

Parâmetros

type

limit

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setResolution
Imagick::setSamplingFactors
The Imagick class


Sets the image sampling factors

Imagick::setResourceLimit
Imagick::setSize
The Imagick class
PHP Manual

Imagick::setSamplingFactors

(PECL imagick 2.0.0)

Imagick::setSamplingFactors — Sets the image sampling factors

Descrição

bool Imagick::setSamplingFactors ( array $factors )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image sampling factors.

Parâmetros

factors

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setResourceLimit
Imagick::setSize
The Imagick class


Sets the size of the Imagick object

Imagick::setSamplingFactors
Imagick::setSizeOffset
The Imagick class
PHP Manual

Imagick::setSize

(PECL imagick 2.0.0)

Imagick::setSize — Sets the size of the Imagick object

Descrição

bool Imagick::setSize ( int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the size of the Imagick object. Set it before you read a raw image format such as RGB, GRAY, or CMYK.

Parâmetros

columns

rows

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setSamplingFactors
Imagick::setSizeOffset
The Imagick class


Sets the size and offset of the Imagick object

Imagick::setSize
Imagick::setType
The Imagick class
PHP Manual

Imagick::setSizeOffset

(PECL imagick 2.0.0)

Imagick::setSizeOffset — Sets the size and offset of the Imagick object

Descrição

bool Imagick::setSizeOffset ( int $columns , int $rows , int $offset )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the size and offset of the Imagick object. Set it before you read a raw image format such as RGB, GRAY, or CMYK. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

columns

The width in pixels.

rows

The height in pixels.

offset

The image offset.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setSize
Imagick::setType
The Imagick class


Sets the image type attribute

Imagick::setSizeOffset
Imagick::shadeImage
The Imagick class
PHP Manual

Imagick::setType

(PECL imagick 2.0.0)

Imagick::setType — Sets the image type attribute

Descrição

bool Imagick::setType ( int $image_type )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the image type attribute.

Parâmetros

image_type

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setSizeOffset
Imagick::shadeImage
The Imagick class


Creates a 3D effect

Imagick::setType
Imagick::shadowImage
The Imagick class
PHP Manual

Imagick::shadeImage

(PECL imagick 2.0.0)

Imagick::shadeImage — Creates a 3D effect

Descrição

bool Imagick::shadeImage ( bool $gray , float $azimuth , float $elevation )

Shines a distant light on an image to create a three-dimensional effect. You control the positioning of the light with azimuth and elevation; azimuth is measured in degrees off the x axis and elevation is measured in pixels above the Z axis. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

gray

A value other than zero shades the intensity of each pixel.

azimuth

Defines the light source direction.

elevation

Defines the light source direction.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::setType
Imagick::shadowImage
The Imagick class


Simulates an image shadow

Imagick::shadeImage
Imagick::sharpenImage
The Imagick class
PHP Manual

Imagick::shadowImage

(PECL imagick 2.0.0)

Imagick::shadowImage — Simulates an image shadow

Descrição

bool Imagick::shadowImage ( float $opacity , float $sigma , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Simulates an image shadow.

Parâmetros

opacity

sigma

x

y

Valor Retornado

Retorna TRUE em sucesso.

Imagick::shadeImage
Imagick::sharpenImage
The Imagick class


Sharpens an image

Imagick::shadowImage
Imagick::shaveImage
The Imagick class
PHP Manual

Imagick::sharpenImage

(PECL imagick 2.0.0)

Imagick::sharpenImage — Sharpens an image

Descrição

bool Imagick::sharpenImage ( float $radius , float $sigma [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sharpens an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma. Use a radius of 0 and selects a suitable radius for you.

Parâmetros

radius

sigma

channel

Valor Retornado

Retorna TRUE em sucesso.

Imagick::shadowImage
Imagick::shaveImage
The Imagick class


Shaves pixels from the image edges

Imagick::sharpenImage
Imagick::shearImage
The Imagick class
PHP Manual

Imagick::shaveImage

(PECL imagick 2.0.0)

Imagick::shaveImage — Shaves pixels from the image edges

Descrição

bool Imagick::shaveImage ( int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Shaves pixels from the image edges. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.

Parâmetros

columns

rows

Valor Retornado

Retorna TRUE em sucesso.

Imagick::sharpenImage
Imagick::shearImage
The Imagick class


Creating a parallelogram

Imagick::shaveImage
Imagick::sigmoidalContrastImage
The Imagick class
PHP Manual

Imagick::shearImage

(PECL imagick 2.0.0)

Imagick::shearImage — Creating a parallelogram

Descrição

bool Imagick::shearImage ( mixed $background , float $x_shear , float $y_shear )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Slides one edge of an image along the X or Y axis, creating a parallelogram. An X direction shear slides an edge along the X axis, while a Y direction shear slides an edge along the Y axis. The amount of the shear is controlled by a shear angle. For X direction shears, x_shear is measured relative to the Y axis, and similarly, for Y direction shears y_shear is measured relative to the X axis. Empty triangles left over from shearing the image are filled with the background color.

Parâmetros

background

The background color

x_shear

The number of degrees to shear on the x axis

y_shear

The number of degrees to shear on the y axis

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter. Previous versions allow only an ImagickPixel object.

Imagick::shaveImage
Imagick::sigmoidalContrastImage
The Imagick class


Adjusts the contrast of an image

Imagick::shearImage
Imagick::sketchImage
The Imagick class
PHP Manual

Imagick::sigmoidalContrastImage

(PECL imagick 2.0.0)

Imagick::sigmoidalContrastImage — Adjusts the contrast of an image

Descrição

bool Imagick::sigmoidalContrastImage ( bool $sharpen , float $alpha , float $beta [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adjusts the contrast of an image with a non-linear sigmoidal contrast algorithm. Increase the contrast of the image using a sigmoidal transfer function without saturating highlights or shadows. Contrast indicates how much to increase the contrast (0 is none; 3 is typical; 20 is pushing it); mid-point indicates where midtones fall in the resultant image (0 is white; 50 is middle-gray; 100 is black). Set sharpen to TRUE to increase the image contrast otherwise the contrast is reduced.

Parâmetros

sharpen

alpha

beta

channel

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::shearImage
Imagick::sketchImage
The Imagick class


Simulates a pencil sketch

Imagick::sigmoidalContrastImage
Imagick::solarizeImage
The Imagick class
PHP Manual

Imagick::sketchImage

(PECL imagick 2.0.0)

Imagick::sketchImage — Simulates a pencil sketch

Descrição

bool Imagick::sketchImage ( float $radius , float $sigma , float $angle )

Simulates a pencil sketch. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and Imagick::sketchImage() selects a suitable radius for you. Angle gives the angle of the blurring motion. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel

sigma

The standard deviation of the Gaussian, in pixels.

angle

Apply the effect along this angle.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::sigmoidalContrastImage
Imagick::solarizeImage
The Imagick class


Applies a solarizing effect to the image

Imagick::sketchImage
Imagick::sparseColorImage
The Imagick class
PHP Manual

Imagick::solarizeImage

(PECL imagick 2.0.0)

Imagick::solarizeImage — Applies a solarizing effect to the image

Descrição

bool Imagick::solarizeImage ( int $threshold )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a special effect to the image, similar to the effect achieved in a photo darkroom by selectively exposing areas of photo sensitive paper to light. Threshold ranges from 0 to QuantumRange and is a measure of the extent of the solarization.

Parâmetros

threshold

Valor Retornado

Retorna TRUE em sucesso.

Imagick::sketchImage
Imagick::sparseColorImage
The Imagick class


Interpolates colors

Imagick::solarizeImage
Imagick::spliceImage
The Imagick class
PHP Manual

Imagick::sparseColorImage

(No version information available, might only be in SVN)

Imagick::sparseColorImage — Interpolates colors

Descrição

public bool Imagick::sparseColorImage ( int $SPARSE_METHOD , array $arguments [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Given the arguments array containing numeric values this method interpolates the colors found at those coordinates across the whole image using sparse_method. This method is available if Imagick has been compiled against ImageMagick version 6.4.5 or newer.

Parâmetros

SPARSE_METHOD

Refer to this list of sparse method constants

arguments

An array containing the coordinates. The array is in format array(1,1, 2,45)

CHANNEL

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. Defaults to Imagick::CHANNEL_DEFAULT. Refer to this list of channel constants

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::solarizeImage
Imagick::spliceImage
The Imagick class


Splices a solid color into the image

Imagick::sparseColorImage
Imagick::spreadImage
The Imagick class
PHP Manual

Imagick::spliceImage

(PECL imagick 2.0.0)

Imagick::spliceImage — Splices a solid color into the image

Descrição

bool Imagick::spliceImage ( int $width , int $height , int $x , int $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Splices a solid color into the image.

Parâmetros

width

height

x

y

Valor Retornado

Retorna TRUE em sucesso.

Imagick::sparseColorImage
Imagick::spreadImage
The Imagick class


Randomly displaces each pixel in a block

Imagick::spliceImage
Imagick::steganoImage
The Imagick class
PHP Manual

Imagick::spreadImage

(PECL imagick 2.0.0)

Imagick::spreadImage — Randomly displaces each pixel in a block

Descrição

bool Imagick::spreadImage ( float $radius )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Special effects method that randomly displaces each pixel in a block defined by the radius parameter.

Parâmetros

radius

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::spliceImage
Imagick::steganoImage
The Imagick class


Hides a digital watermark within the image

Imagick::spreadImage
Imagick::stereoImage
The Imagick class
PHP Manual

Imagick::steganoImage

(PECL imagick 2.0.0)

Imagick::steganoImage — Hides a digital watermark within the image

Descrição

Imagick Imagick::steganoImage ( Imagick $watermark_wand , int $offset )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Hides a digital watermark within the image. Recover the hidden watermark later to prove that the authenticity of an image. Offset defines the start position within the image to hide the watermark.

Parâmetros

watermark_wand

offset

Valor Retornado

Retorna TRUE em sucesso.

Imagick::spreadImage
Imagick::stereoImage
The Imagick class


Composites two images

Imagick::steganoImage
Imagick::stripImage
The Imagick class
PHP Manual

Imagick::stereoImage

(PECL imagick 2.0.0)

Imagick::stereoImage — Composites two images

Descrição

bool Imagick::stereoImage ( Imagick $offset_wand )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Composites two images and produces a single image that is the composite of a left and right image of a stereo pair.

Parâmetros

offset_wand

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::steganoImage
Imagick::stripImage
The Imagick class


Strips an image of all profiles and comments

Imagick::stereoImage
Imagick::swirlImage
The Imagick class
PHP Manual

Imagick::stripImage

(PECL imagick 2.0.0)

Imagick::stripImage — Strips an image of all profiles and comments

Descrição

bool Imagick::stripImage ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Strips an image of all profiles and comments.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::stereoImage
Imagick::swirlImage
The Imagick class


Swirls the pixels about the center of the image

Imagick::stripImage
Imagick::textureImage
The Imagick class
PHP Manual

Imagick::swirlImage

(PECL imagick 2.0.0)

Imagick::swirlImage — Swirls the pixels about the center of the image

Descrição

bool Imagick::swirlImage ( float $degrees )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Swirls the pixels about the center of the image, where degrees indicates the sweep of the arc through which each pixel is moved. You get a more dramatic effect as the degrees move from 1 to 360.

Parâmetros

degrees

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::stripImage
Imagick::textureImage
The Imagick class


Repeatedly tiles the texture image

Imagick::swirlImage
Imagick::thresholdImage
The Imagick class
PHP Manual

Imagick::textureImage

(PECL imagick 2.0.0)

Imagick::textureImage — Repeatedly tiles the texture image

Descrição

bool Imagick::textureImage ( Imagick $texture_wand )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Repeatedly tiles the texture image across and down the image canvas.

Parâmetros

texture_wand

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::swirlImage
Imagick::thresholdImage
The Imagick class


Changes the value of individual pixels based on a threshold

Imagick::textureImage
Imagick::thumbnailImage
The Imagick class
PHP Manual

Imagick::thresholdImage

(PECL imagick 2.0.0)

Imagick::thresholdImage — Changes the value of individual pixels based on a threshold

Descrição

bool Imagick::thresholdImage ( float $threshold [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes the value of individual pixels based on the intensity of each pixel compared to threshold. The result is a high-contrast, two color image.

Parâmetros

threshold

channel

Valor Retornado

Retorna TRUE em sucesso.

Imagick::textureImage
Imagick::thumbnailImage
The Imagick class


Changes the size of an image

Imagick::thresholdImage
Imagick::tintImage
The Imagick class
PHP Manual

Imagick::thumbnailImage

(PECL imagick 2.0.0)

Imagick::thumbnailImage — Changes the size of an image

Descrição

bool Imagick::thumbnailImage ( int $columns , int $rows [, bool $bestfit = false [, bool $fill = false ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Changes the size of an image to the given dimensions and removes any associated profiles. The goal is to produce small low cost thumbnail images suited for display on the Web. If TRUE is given as a third parameter then columns and rows parameters are used as maximums for each side. Both sides will be scaled down until the match or are smaller than the parameter given for the side.

Nota: The behavior of the parameter bestfit changed in Imagick 3.0.0. Before this version given dimensions 400x400 an image of dimensions 200x150 would be left untouched. In Imagick 3.0.0 and later the image would be scaled up to size 400x300 as this is the "best fit" for the given dimensions. If bestfit parameter is used both width and height must be given.

Parâmetros

columns

Image width

rows

Image height

bestfit

Whether to force maximum values

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::thresholdImage
Imagick::tintImage
The Imagick class


Applies a color vector to each pixel in the image

Imagick::thumbnailImage
Imagick::transformImage
The Imagick class
PHP Manual

Imagick::tintImage

(PECL imagick 2.0.0)

Imagick::tintImage — Applies a color vector to each pixel in the image

Descrição

bool Imagick::tintImage ( mixed $tint , mixed $opacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a color vector to each pixel in the image. The length of the vector is 0 for black and white and at its maximum for the midtones. The vector weighing function is f(x)=(1-(4.0*((x-0.5)*(x-0.5)))).

Parâmetros

tint

opacity

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as the first parameter and a float representing the opacity value as the second parameter. Previous versions allow only an ImagickPixel objects.

Imagick::thumbnailImage
Imagick::transformImage
The Imagick class


Convenience method for setting crop size and the image geometry

Imagick::tintImage
Imagick::transparentPaintImage
The Imagick class
PHP Manual

Imagick::transformImage

(PECL imagick 2.0.0)

Imagick::transformImage — Convenience method for setting crop size and the image geometry

Descrição

Imagick Imagick::transformImage ( string $crop , string $geometry )

A convenience method for setting crop size and the image geometry from strings. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

crop

A crop geometry string. This geometry defines a subregion of the image to crop.

geometry

An image geometry string. This geometry defines the final size of the image.

Valor Retornado

Retorna TRUE em sucesso.

Exemplos

Exemplo #1 Using Imagick::transformImage():

The example creates a 100x100 black image.

<?php
$image = new Imagick();
$image->newImage(300, 200, "black");
$new_image = $image->transformImage("100x100", "100x100");
$new_image->writeImage('test_out.jpg');
?>

Veja Também

  • Imagick::cropImage() - Extracts a region of the image
  • Imagick::resizeImage() - Scales an image
  • Imagick::thumbnailImage() - Changes the size of an image

Imagick::tintImage
Imagick::transparentPaintImage
The Imagick class


Paints pixels transparent

Imagick::transformImage
Imagick::transposeImage
The Imagick class
PHP Manual

Imagick::transparentPaintImage

(No version information available, might only be in SVN)

Imagick::transparentPaintImage — Paints pixels transparent

Descrição

bool Imagick::transparentPaintImage ( mixed $target , float $alpha , float $fuzz , bool $invert )

Paints pixels matching the target color transparent. This method is available if Imagick has been compiled against ImageMagick version 6.3.8 or newer.

Parâmetros

target

The target color to paint

alpha

The level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.

invert

If TRUE paints any pixel that does not match the target color.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::transformImage
Imagick::transposeImage
The Imagick class


Creates a vertical mirror image

Imagick::transparentPaintImage
Imagick::transverseImage
The Imagick class
PHP Manual

Imagick::transposeImage

(PECL imagick 2.0.0)

Imagick::transposeImage — Creates a vertical mirror image

Descrição

bool Imagick::transposeImage ( void )

Creates a vertical mirror image by reflecting the pixels around the central x-axis while rotating them 90-degrees. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::transverseImage() - Creates a horizontal mirror image

Imagick::transparentPaintImage
Imagick::transverseImage
The Imagick class


Creates a horizontal mirror image

Imagick::transposeImage
Imagick::trimImage
The Imagick class
PHP Manual

Imagick::transverseImage

(PECL imagick 2.0.0)

Imagick::transverseImage — Creates a horizontal mirror image

Descrição

bool Imagick::transverseImage ( void )

Creates a horizontal mirror image by reflecting the pixels around the central y-axis while rotating them 270-degrees. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::transposeImage() - Creates a vertical mirror image

Imagick::transposeImage
Imagick::trimImage
The Imagick class


Remove edges from the image

Imagick::transverseImage
Imagick::uniqueImageColors
The Imagick class
PHP Manual

Imagick::trimImage

(PECL imagick 2.0.0)

Imagick::trimImage — Remove edges from the image

Descrição

bool Imagick::trimImage ( float $fuzz )

Remove edges that are the background color from the image. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

fuzz

By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. This parameter represents the variation on the quantum range.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Exemplos

Exemplo #1 Using Imagick::trimImage():

Trim an image, then display to the browser.

<?php
/* Create the object and read the image in */
$im = new Imagick("image.jpg");

/* Trim the image. */
$im->trimImage(0);

/* Ouput the image */
header("Content-Type: image/" . $im->getImageFormat());
echo $im;
?>

Veja Também

  • Imagick::getQuantumDepth() - Gets the quantum depth
  • Imagick::getQuantumRange() - Returns the Imagick quantum range

Imagick::transverseImage
Imagick::uniqueImageColors
The Imagick class


Discards all but one of any pixel color

Imagick::trimImage
Imagick::unsharpMaskImage
The Imagick class
PHP Manual

Imagick::uniqueImageColors

(PECL imagick 2.0.0)

Imagick::uniqueImageColors — Discards all but one of any pixel color

Descrição

bool Imagick::uniqueImageColors ( void )

Discards all but one of any pixel color. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::trimImage
Imagick::unsharpMaskImage
The Imagick class


Sharpens an image

Imagick::uniqueImageColors
Imagick::valid
The Imagick class
PHP Manual

Imagick::unsharpMaskImage

(PECL imagick 2.0.0)

Imagick::unsharpMaskImage — Sharpens an image

Descrição

bool Imagick::unsharpMaskImage ( float $radius , float $sigma , float $amount , float $threshold [, int $channel = Imagick::CHANNEL_ALL ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sharpens an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and Imagick::UnsharpMaskImage() selects a suitable radius for you.

Parâmetros

radius

sigma

amount

threshold

channel

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Imagick::uniqueImageColors
Imagick::valid
The Imagick class


Checks if the current item is valid

Imagick::unsharpMaskImage
Imagick::vignetteImage
The Imagick class
PHP Manual

Imagick::valid

(PECL imagick 2.0.0)

Imagick::valid — Checks if the current item is valid

Descrição

bool Imagick::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Checks if the current item is valid.

Valor Retornado

Retorna TRUE em sucesso.

Imagick::unsharpMaskImage
Imagick::vignetteImage
The Imagick class


Adds vignette filter to the image

Imagick::valid
Imagick::waveImage
The Imagick class
PHP Manual

Imagick::vignetteImage

(PECL imagick 2.0.0)

Imagick::vignetteImage — Adds vignette filter to the image

Descrição

bool Imagick::vignetteImage ( float $blackPoint , float $whitePoint , int $x , int $y )

Softens the edges of the image in vignette style. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

blackPoint

The black point.

whitePoint

The white point

x

X offset of the ellipse

y

Y offset of the ellipse

Valor Retornado

Retorna TRUE em sucesso.

Veja Também

  • Imagick::waveImage() - Applies wave filter to the image
  • Imagick::swirlImage() - Swirls the pixels about the center of the image

Imagick::valid
Imagick::waveImage
The Imagick class


Applies wave filter to the image

Imagick::vignetteImage
Imagick::whiteThresholdImage
The Imagick class
PHP Manual

Imagick::waveImage

(PECL imagick 2.0.0)

Imagick::waveImage — Applies wave filter to the image

Descrição

bool Imagick::waveImage ( float $amplitude , float $length )

Applies a wave filter to the image. Este método esta disponível apenas se Imagick foi compilado com ImageMagick versão 6.2.9 ou mais nova.

Parâmetros

amplitude

The amplitude of the wave.

length

The length of the wave.

Valor Retornado

Retorna TRUE em sucesso.

Erros

Dispara ImagickException em erro.

Veja Também

  • Imagick::solarizeImage() - Applies a solarizing effect to the image
  • Imagick::oilpaintImage() - Simulates an oil painting
  • Imagick::embossImage() - Returns a grayscale image with a three-dimensional effect
  • Imagick::addNoiseImage() - Adds random noise to the image
  • Imagick::swirlImage() - Swirls the pixels about the center of the image

Imagick::vignetteImage
Imagick::whiteThresholdImage
The Imagick class


Force all pixels above the threshold into white

Imagick::waveImage
Imagick::writeImage
The Imagick class
PHP Manual

Imagick::whiteThresholdImage

(PECL imagick 2.0.0)

Imagick::whiteThresholdImage — Force all pixels above the threshold into white

Descrição

bool Imagick::whiteThresholdImage ( mixed $threshold )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Is like Imagick::ThresholdImage() but force all pixels above the threshold into white while leaving all pixels below the threshold unchanged.

Parâmetros

threshold

Valor Retornado

Retorna TRUE em sucesso.

Histórico

Versão | Descrição
2.1.0 | Now allows a string representing the color as a parameter. Previous versions allow only an ImagickPixel object.

Imagick::waveImage
Imagick::writeImage
The Imagick class


Writes an image to the specified filename

Imagick::whiteThresholdImage
Imagick::writeImageFile
The Imagick class
PHP Manual

Imagick::writeImage

(PECL imagick 0.9.0-0.9.9)

Imagick::writeImage — Writes an image to the specified filename

Descrição

bool Imagick::writeImage ([ string $filename ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Writes an image to the specified filename. If the filename parameter is NULL, the image is written to the filename set by Imagick::ReadImage() or Imagick::SetImageFilename().

Parâmetros

filename

Valor Retornado

Retorna TRUE em sucesso.

Imagick::whiteThresholdImage
Imagick::writeImageFile
The Imagick class


Writes an image to a filehandle

Imagick::writeImage
Imagick::writeImages
The Imagick class
PHP Manual

Imagick::writeImageFile

(No version information available, might only be in SVN)

Imagick::writeImageFile — Writes an image to a filehandle

Descrição

bool Imagick::writeImageFile ( resource $filehandle )

Writes the image sequence to an open filehandle. The handle must be opened with for example fopen. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

filehandle

Filehandle where to write the image

Valor Retornado

Retorna TRUE em sucesso.

Imagick::writeImage
Imagick::writeImages
The Imagick class


Writes an image or image sequence

Imagick::writeImageFile
Imagick::writeImagesFile
The Imagick class
PHP Manual

Imagick::writeImages

(PECL imagick 0.9.0-0.9.9)

Imagick::writeImages — Writes an image or image sequence

Descrição

bool Imagick::writeImages ( string $filename , bool $adjoin )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Writes an image or image sequence.

Parâmetros

filename

adjoin

Valor Retornado

Retorna TRUE em sucesso.

Imagick::writeImageFile
Imagick::writeImagesFile
The Imagick class


Writes frames to a filehandle

Imagick::writeImages
The ImagickDraw class
The Imagick class
PHP Manual

Imagick::writeImagesFile

(No version information available, might only be in SVN)

Imagick::writeImagesFile — Writes frames to a filehandle

Descrição

bool Imagick::writeImagesFile ( resource $filehandle )

Writes all image frames into an open filehandle. This method can be used to write animated gifs or other multiframe images into open filehandle. This method is available if Imagick has been compiled against ImageMagick version 6.3.6 or newer.

Parâmetros

filehandle

Filehandle where to write the images

Valor Retornado

Retorna TRUE em sucesso.

Imagick::writeImages
The ImagickDraw class
The Imagick class


The ImagickDraw class

Sinopse da classe

ImagickDraw {
bool affine ( array $affine )
bool annotation ( float $x , float $y , string $text )
bool arc ( float $sx , float $sy , float $ex , float $ey , float $sd , float $ed )
bool bezier ( array $coordinates )
bool circle ( float $ox , float $oy , float $px , float $py )
bool clear ( void )
ImagickDraw clone ( void )
bool color ( float $x , float $y , int $paintMethod )
bool comment ( string $comment )
bool composite ( int $compose , float $x , float $y , float $width , float $height , Imagick $compositeWand )
ImagickDraw __construct ( void )
bool destroy ( void )
bool ellipse ( float $ox , float $oy , float $rx , float $ry , float $start , float $end )
string getClipPath ( void )
int getClipRule ( void )
int getClipUnits ( void )
ImagickPixel getFillColor ( void )
float getFillOpacity ( void )
int getFillRule ( void )
string getFont ( void )
string getFontFamily ( void )
float getFontSize ( void )
int getFontStyle ( void )
int getFontWeight ( void )
int getGravity ( void )
bool getStrokeAntialias ( void )
ImagickPixel getStrokeColor ( void )
array getStrokeDashArray ( void )
float getStrokeDashOffset ( void )
int getStrokeLineCap ( void )
int getStrokeLineJoin ( void )
int getStrokeMiterLimit ( void )
float getStrokeOpacity ( void )
float getStrokeWidth ( void )
int getTextAlignment ( void )
bool getTextAntialias ( void )
int getTextDecoration ( void )
string getTextEncoding ( void )
ImagickPixel getTextUnderColor ( void )
string getVectorGraphics ( void )
bool line ( float $sx , float $sy , float $ex , float $ey )
bool matte ( float $x , float $y , int $paintMethod )
bool pathClose ( void )
bool pathCurveToAbsolute ( float $x1 , float $y1 , float $x2 , float $y2 , float $x , float $y )
bool pathCurveToQuadraticBezierAbsolute ( float $x1 , float $y1 , float $x , float $y )
bool pathCurveToQuadraticBezierRelative ( float $x1 , float $y1 , float $x , float $y )
bool pathCurveToQuadraticBezierSmoothAbsolute ( float $x , float $y )
bool pathCurveToQuadraticBezierSmoothRelative ( float $x , float $y )
bool pathCurveToRelative ( float $x1 , float $y1 , float $x2 , float $y2 , float $x , float $y )
bool pathCurveToSmoothAbsolute ( float $x2 , float $y2 , float $x , float $y )
bool pathCurveToSmoothRelative ( float $x2 , float $y2 , float $x , float $y )
bool pathEllipticArcAbsolute ( float $rx , float $ry , float $x_axis_rotation , bool $large_arc_flag , bool $sweep_flag , float $x , float $y )
bool pathEllipticArcRelative ( float $rx , float $ry , float $x_axis_rotation , bool $large_arc_flag , bool $sweep_flag , float $x , float $y )
bool pathFinish ( void )
bool pathLineToAbsolute ( float $x , float $y )
bool pathLineToHorizontalAbsolute ( float $x )
bool pathLineToHorizontalRelative ( float $x )
bool pathLineToRelative ( float $x , float $y )
bool pathLineToVerticalAbsolute ( float $y )
bool pathLineToVerticalRelative ( float $y )
bool pathMoveToAbsolute ( float $x , float $y )
bool pathMoveToRelative ( float $x , float $y )
bool pathStart ( void )
bool point ( float $x , float $y )
bool polygon ( array $coordinates )
bool polyline ( array $coordinates )
bool pop ( void )
bool popClipPath ( void )
bool popDefs ( void )
bool popPattern ( void )
bool push ( void )
bool pushClipPath ( string $clip_mask_id )
bool pushDefs ( void )
bool pushPattern ( string $pattern_id , float $x , float $y , float $width , float $height )
bool rectangle ( float $x1 , float $y1 , float $x2 , float $y2 )
bool render ( void )
bool rotate ( float $degrees )
bool roundRectangle ( float $x1 , float $y1 , float $x2 , float $y2 , float $rx , float $ry )
bool scale ( float $x , float $y )
bool setClipPath ( string $clip_mask )
bool setClipRule ( int $fill_rule )
bool setClipUnits ( int $clip_units )
bool setFillAlpha ( float $opacity )
bool setFillColor ( ImagickPixel $fill_pixel )
bool setFillOpacity ( float $fillOpacity )
bool setFillPatternURL ( string $fill_url )
bool setFillRule ( int $fill_rule )
bool setFont ( string $font_name )
bool setFontFamily ( string $font_family )
bool setFontSize ( float $pointsize )
bool setFontStretch ( int $fontStretch )
bool setFontStyle ( int $style )
bool setFontWeight ( int $font_weight )
bool setGravity ( int $gravity )
bool setStrokeAlpha ( float $opacity )
bool setStrokeAntialias ( bool $stroke_antialias )
bool setStrokeColor ( ImagickPixel $stroke_pixel )
bool setStrokeDashArray ( array $dashArray )
bool setStrokeDashOffset ( float $dash_offset )
bool setStrokeLineCap ( int $linecap )
bool setStrokeLineJoin ( int $linejoin )
bool setStrokeMiterLimit ( int $miterlimit )
bool setStrokeOpacity ( float $stroke_opacity )
bool setStrokePatternURL ( string $stroke_url )
bool setStrokeWidth ( float $stroke_width )
bool setTextAlignment ( int $alignment )
bool setTextAntialias ( bool $antiAlias )
bool setTextDecoration ( int $decoration )
bool setTextEncoding ( string $encoding )
bool setTextUnderColor ( ImagickPixel $under_color )
bool setVectorGraphics ( string $xml )
bool setViewbox ( int $x1 , int $y1 , int $x2 , int $y2 )
bool skewX ( float $degrees )
bool skewY ( float $degrees )
bool translate ( float $x , float $y )
}

Índice

  • ImagickDraw::affine — Adjusts the current affine transformation matrix
  • ImagickDraw::annotation — Draws text on the image
  • ImagickDraw::arc — Draws an arc
  • ImagickDraw::bezier — Draws a bezier curve
  • ImagickDraw::circle — Draws a circle
  • ImagickDraw::clear — Clears the ImagickDraw
  • ImagickDraw::clone — Makes an exact copy of the specified ImagickDraw object
  • ImagickDraw::color — Draws color on image
  • ImagickDraw::comment — Adds a comment
  • ImagickDraw::composite — Composites an image onto the current image
  • ImagickDraw::__construct — The ImagickDraw constructor
  • ImagickDraw::destroy — Frees all associated resources
  • ImagickDraw::ellipse — Draws an ellipse on the image
  • ImagickDraw::getClipPath — Obtains the current clipping path ID
  • ImagickDraw::getClipRule — Returns the current polygon fill rule
  • ImagickDraw::getClipUnits — Returns the interpretation of clip path units
  • ImagickDraw::getFillColor — Returns the fill color
  • ImagickDraw::getFillOpacity — Returns the opacity used when drawing
  • ImagickDraw::getFillRule — Returns the fill rule
  • ImagickDraw::getFont — Returns the font
  • ImagickDraw::getFontFamily — Returns the font family
  • ImagickDraw::getFontSize — Returns the font pointsize
  • ImagickDraw::getFontStyle — Returns the font style
  • ImagickDraw::getFontWeight — Returns the font weight
  • ImagickDraw::getGravity — Returns the text placement gravity
  • ImagickDraw::getStrokeAntialias — Returns the current stroke antialias setting
  • ImagickDraw::getStrokeColor — Returns the color used for stroking object outlines
  • ImagickDraw::getStrokeDashArray — Returns an array representing the pattern of dashes and gaps used to stroke paths
  • ImagickDraw::getStrokeDashOffset — Returns the offset into the dash pattern to start the dash
  • ImagickDraw::getStrokeLineCap — Returns the shape to be used at the end of open subpaths when they are stroked
  • ImagickDraw::getStrokeLineJoin — Returns the shape to be used at the corners of paths when they are stroked
  • ImagickDraw::getStrokeMiterLimit — Returns the stroke miter limit
  • ImagickDraw::getStrokeOpacity — Returns the opacity of stroked object outlines
  • ImagickDraw::getStrokeWidth — Returns the width of the stroke used to draw object outlines
  • ImagickDraw::getTextAlignment — Returns the text alignment
  • ImagickDraw::getTextAntialias — Returns the current text antialias setting
  • ImagickDraw::getTextDecoration — Returns the text decoration
  • ImagickDraw::getTextEncoding — Returns the code set used for text annotations
  • ImagickDraw::getTextUnderColor — Returns the text under color
  • ImagickDraw::getVectorGraphics — Returns a string containing vector graphics
  • ImagickDraw::line — Draws a line
  • ImagickDraw::matte — Paints on the image's opacity channel
  • ImagickDraw::pathClose — Adds a path element to the current path
  • ImagickDraw::pathCurveToAbsolute — Draws a cubic Bezier curve
  • ImagickDraw::pathCurveToQuadraticBezierAbsolute — Draws a quadratic Bezier curve
  • ImagickDraw::pathCurveToQuadraticBezierRelative — Draws a quadratic Bezier curve
  • ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute — Draws a quadratic Bezier curve
  • ImagickDraw::pathCurveToQuadraticBezierSmoothRelative — Draws a quadratic Bezier curve
  • ImagickDraw::pathCurveToRelative — Draws a cubic Bezier curve
  • ImagickDraw::pathCurveToSmoothAbsolute — Draws a cubic Bezier curve
  • ImagickDraw::pathCurveToSmoothRelative — Draws a cubic Bezier curve
  • ImagickDraw::pathEllipticArcAbsolute — Draws an elliptical arc
  • ImagickDraw::pathEllipticArcRelative — Draws an elliptical arc
  • ImagickDraw::pathFinish — Terminates the current path
  • ImagickDraw::pathLineToAbsolute — Draws a line path
  • ImagickDraw::pathLineToHorizontalAbsolute — Draws a horizontal line path
  • ImagickDraw::pathLineToHorizontalRelative — Draws a horizontal line
  • ImagickDraw::pathLineToRelative — Draws a line path
  • ImagickDraw::pathLineToVerticalAbsolute — Draws a vertical line
  • ImagickDraw::pathLineToVerticalRelative — Draws a vertical line path
  • ImagickDraw::pathMoveToAbsolute — Starts a new sub-path
  • ImagickDraw::pathMoveToRelative — Starts a new sub-path
  • ImagickDraw::pathStart — Declares the start of a path drawing list
  • ImagickDraw::point — Draws a point
  • ImagickDraw::polygon — Draws a polygon
  • ImagickDraw::polyline — Draws a polyline
  • ImagickDraw::pop — Destroys the current ImagickDraw in the stack, and returns to the previously pushed ImagickDraw
  • ImagickDraw::popClipPath — Terminates a clip path definition
  • ImagickDraw::popDefs — Terminates a definition list
  • ImagickDraw::popPattern — Terminates a pattern definition
  • ImagickDraw::push — Clones the current ImagickDraw and pushes it to the stack
  • ImagickDraw::pushClipPath — Starts a clip path definition
  • ImagickDraw::pushDefs — Indicates that following commands create named elements for early processing
  • ImagickDraw::pushPattern — Indicates that subsequent commands up to a ImagickDraw::opPattern() command comprise the definition of a named pattern
  • ImagickDraw::rectangle — Draws a rectangle
  • ImagickDraw::render — Renders all preceding drawing commands onto the image
  • ImagickDraw::rotate — Applies the specified rotation to the current coordinate space
  • ImagickDraw::roundRectangle — Draws a rounded rectangle
  • ImagickDraw::scale — Adjusts the scaling factor
  • ImagickDraw::setClipPath — Associates a named clipping path with the image
  • ImagickDraw::setClipRule — Set the polygon fill rule to be used by the clipping path
  • ImagickDraw::setClipUnits — Sets the interpretation of clip path units
  • ImagickDraw::setFillAlpha — Sets the opacity to use when drawing using the fill color or fill texture
  • ImagickDraw::setFillColor — Sets the fill color to be used for drawing filled objects
  • ImagickDraw::setFillOpacity — Sets the opacity to use when drawing using the fill color or fill texture
  • ImagickDraw::setFillPatternURL — Sets the URL to use as a fill pattern for filling objects
  • ImagickDraw::setFillRule — Sets the fill rule to use while drawing polygons
  • ImagickDraw::setFont — Sets the fully-specified font to use when annotating with text
  • ImagickDraw::setFontFamily — Sets the font family to use when annotating with text
  • ImagickDraw::setFontSize — Sets the font pointsize to use when annotating with text
  • ImagickDraw::setFontStretch — Sets the font stretch to use when annotating with text
  • ImagickDraw::setFontStyle — Sets the font style to use when annotating with text
  • ImagickDraw::setFontWeight — Sets the font weight
  • ImagickDraw::setGravity — Sets the text placement gravity
  • ImagickDraw::setStrokeAlpha — Specifies the opacity of stroked object outlines
  • ImagickDraw::setStrokeAntialias — Controls whether stroked outlines are antialiased
  • ImagickDraw::setStrokeColor — Sets the color used for stroking object outlines
  • ImagickDraw::setStrokeDashArray — Specifies the pattern of dashes and gaps used to stroke paths
  • ImagickDraw::setStrokeDashOffset — Specifies the offset into the dash pattern to start the dash
  • ImagickDraw::setStrokeLineCap — Specifies the shape to be used at the end of open subpaths when they are stroked
  • ImagickDraw::setStrokeLineJoin — Specifies the shape to be used at the corners of paths when they are stroked
  • ImagickDraw::setStrokeMiterLimit — Specifies the miter limit
  • ImagickDraw::setStrokeOpacity — Specifies the opacity of stroked object outlines
  • ImagickDraw::setStrokePatternURL — Sets the pattern used for stroking object outlines
  • ImagickDraw::setStrokeWidth — Sets the width of the stroke used to draw object outlines
  • ImagickDraw::setTextAlignment — Specifies a text alignment
  • ImagickDraw::setTextAntialias — Controls whether text is antialiased
  • ImagickDraw::setTextDecoration — Specifies a decoration
  • ImagickDraw::setTextEncoding — Specifies specifies the text code set
  • ImagickDraw::setTextUnderColor — Specifies the color of a background rectangle
  • ImagickDraw::setVectorGraphics — Sets the vector graphics
  • ImagickDraw::setViewbox — Sets the overall canvas size
  • ImagickDraw::skewX — Skews the current coordinate system in the horizontal direction
  • ImagickDraw::skewY — Skews the current coordinate system in the vertical direction
  • ImagickDraw::translate — Applies a translation to the current coordinate system
Imagick::writeImagesFile
ImagickDraw::affine
ImageMagick


Adjusts the current affine transformation matrix

The ImagickDraw class
ImagickDraw::annotation
The ImagickDraw class
PHP Manual

ImagickDraw::affine

(PECL imagick 2.0.0)

ImagickDraw::affine — Adjusts the current affine transformation matrix

Descrição

bool ImagickDraw::affine ( array $affine )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adjusts the current affine transformation matrix with the specified affine transformation matrix.

Parâmetros

affine

Affine matrix parameters

Valor Retornado

Não há valor retornado.

The ImagickDraw class
ImagickDraw::annotation
The ImagickDraw class


Draws text on the image

ImagickDraw::affine
ImagickDraw::arc
The ImagickDraw class
PHP Manual

ImagickDraw::annotation

(PECL imagick 2.0.0)

ImagickDraw::annotation — Draws text on the image

Descrição

bool ImagickDraw::annotation ( float $x , float $y , string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws text on the image.

Parâmetros

x

The x coordinate where text is drawn

y

The y coordinate where text is drawn

text

The text to draw on the image

Valor Retornado

Não há valor retornado.

ImagickDraw::affine
ImagickDraw::arc
The ImagickDraw class


Draws an arc

ImagickDraw::annotation
ImagickDraw::bezier
The ImagickDraw class
PHP Manual

ImagickDraw::arc

(PECL imagick 2.0.0)

ImagickDraw::arc — Draws an arc

Descrição

bool ImagickDraw::arc ( float $sx , float $sy , float $ex , float $ey , float $sd , float $ed )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws an arc falling within a specified bounding rectangle on the image.

Parâmetros

sx

Starting x ordinate of bounding rectangle

sy

starting y ordinate of bounding rectangle

ex

ending x ordinate of bounding rectangle

ey

ending y ordinate of bounding rectangle

sd

starting degrees of rotation

ed

ending degrees of rotation

Valor Retornado

Não há valor retornado.

ImagickDraw::annotation
ImagickDraw::bezier
The ImagickDraw class


Draws a bezier curve

ImagickDraw::arc
ImagickDraw::circle
The ImagickDraw class
PHP Manual

ImagickDraw::bezier

(PECL imagick 2.0.0)

ImagickDraw::bezier — Draws a bezier curve

Descrição

bool ImagickDraw::bezier ( array $coordinates )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a bezier curve through a set of points on the image.

Parâmetros

coordinates

Multidimensional array like array( array( 'x' => 1, 'y' => 2 ), array( 'x' => 3, 'y' => 4 ) )

Valor Retornado

Não há valor retornado.

ImagickDraw::arc
ImagickDraw::circle
The ImagickDraw class


Draws a circle

ImagickDraw::bezier
ImagickDraw::clear
The ImagickDraw class
PHP Manual

ImagickDraw::circle

(PECL imagick 2.0.0)

ImagickDraw::circle — Draws a circle

Descrição

bool ImagickDraw::circle ( float $ox , float $oy , float $px , float $py )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a circle on the image.

Parâmetros

ox

origin x coordinate

oy

origin y coordinate

px

perimeter x coordinate

py

perimeter y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::bezier
ImagickDraw::clear
The ImagickDraw class


Clears the ImagickDraw

ImagickDraw::circle
ImagickDraw::clone
The ImagickDraw class
PHP Manual

ImagickDraw::clear

(PECL imagick 2.0.0)

ImagickDraw::clear — Clears the ImagickDraw

Descrição

bool ImagickDraw::clear ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clears the ImagickDraw object of any accumulated commands, and resets the settings it contains to their defaults.

Valor Retornado

Returns an ImagickDraw object.

ImagickDraw::circle
ImagickDraw::clone
The ImagickDraw class


Makes an exact copy of the specified ImagickDraw object

ImagickDraw::clear
ImagickDraw::color
The ImagickDraw class
PHP Manual

ImagickDraw::clone

(PECL imagick 2.0.0)

ImagickDraw::clone — Makes an exact copy of the specified ImagickDraw object

Descrição

ImagickDraw ImagickDraw::clone ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Makes an exact copy of the specified ImagickDraw object.

Valor Retornado

What the function returns, first on success, then on failure. See also the &return.success; entity

ImagickDraw::clear
ImagickDraw::color
The ImagickDraw class


Draws color on image

ImagickDraw::clone
ImagickDraw::comment
The ImagickDraw class
PHP Manual

ImagickDraw::color

(PECL imagick 2.0.0)

ImagickDraw::color — Draws color on image

Descrição

bool ImagickDraw::color ( float $x , float $y , int $paintMethod )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws color on image using the current fill color, starting at specified position, and using specified paint method.

Parâmetros

x

x coordinate of the paint

y

y coordinate of the paint

paintMethod

one of the PAINT_ constants

Valor Retornado

Não há valor retornado.

ImagickDraw::clone
ImagickDraw::comment
The ImagickDraw class


Adds a comment

ImagickDraw::color
ImagickDraw::composite
The ImagickDraw class
PHP Manual

ImagickDraw::comment

(PECL imagick 2.0.0)

ImagickDraw::comment — Adds a comment

Descrição

bool ImagickDraw::comment ( string $comment )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a comment to a vector output stream.

Parâmetros

comment

The comment string to add to vector output stream

Valor Retornado

Não há valor retornado.

ImagickDraw::color
ImagickDraw::composite
The ImagickDraw class


Composites an image onto the current image

ImagickDraw::comment
ImagickDraw::__construct
The ImagickDraw class
PHP Manual

ImagickDraw::composite

(PECL imagick 2.0.0)

ImagickDraw::composite — Composites an image onto the current image

Descrição

bool ImagickDraw::composite ( int $compose , float $x , float $y , float $width , float $height , Imagick $compositeWand )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Composites an image onto the current image, using the specified composition operator, specified position, and at the specified size.

Parâmetros

compose

composition operator. One of COMPOSITE_ constants

x

x coordinate of the top left corner

y

y coordinate of the top left corner

width

width of the composition image

height

height of the composition image

compositeWand

the Imagick object where composition image is taken from

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::comment
ImagickDraw::__construct
The ImagickDraw class


The ImagickDraw constructor

ImagickDraw::composite
ImagickDraw::destroy
The ImagickDraw class
PHP Manual

ImagickDraw::__construct

(PECL imagick 2.0.0)

ImagickDraw::__construct — The ImagickDraw constructor

Descrição

ImagickDraw ImagickDraw::__construct ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

The ImagickDraw constructor

Valor Retornado

Não há valor retornado.

ImagickDraw::composite
ImagickDraw::destroy
The ImagickDraw class


Frees all associated resources

ImagickDraw::__construct
ImagickDraw::ellipse
The ImagickDraw class
PHP Manual

ImagickDraw::destroy

(PECL imagick 2.0.0)

ImagickDraw::destroy — Frees all associated resources

Descrição

bool ImagickDraw::destroy ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Frees all resources associated with the ImagickDraw object.

Valor Retornado

Não há valor retornado.

ImagickDraw::__construct
ImagickDraw::ellipse
The ImagickDraw class


Draws an ellipse on the image

ImagickDraw::destroy
ImagickDraw::getClipPath
The ImagickDraw class
PHP Manual

ImagickDraw::ellipse

(PECL imagick 2.0.0)

ImagickDraw::ellipse — Draws an ellipse on the image

Descrição

bool ImagickDraw::ellipse ( float $ox , float $oy , float $rx , float $ry , float $start , float $end )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws an ellipse on the image.

Parâmetros

ox

oy

rx

ry

start

end

Valor Retornado

Não há valor retornado.

ImagickDraw::destroy
ImagickDraw::getClipPath
The ImagickDraw class


Obtains the current clipping path ID

ImagickDraw::ellipse
ImagickDraw::getClipRule
The ImagickDraw class
PHP Manual

ImagickDraw::getClipPath

(PECL imagick 2.0.0)

ImagickDraw::getClipPath — Obtains the current clipping path ID

Descrição

string ImagickDraw::getClipPath ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtains the current clipping path ID.

Valor Retornado

Returns a string containing the clip path ID or false if no clip path exists.

ImagickDraw::ellipse
ImagickDraw::getClipRule
The ImagickDraw class


Returns the current polygon fill rule

ImagickDraw::getClipPath
ImagickDraw::getClipUnits
The ImagickDraw class
PHP Manual

ImagickDraw::getClipRule

(PECL imagick 2.0.0)

ImagickDraw::getClipRule — Returns the current polygon fill rule

Descrição

int ImagickDraw::getClipRule ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the current polygon fill rule to be used by the clipping path.

Valor Retornado

Returns one of the FILLRULE_ constants.

ImagickDraw::getClipPath
ImagickDraw::getClipUnits
The ImagickDraw class


Returns the interpretation of clip path units

ImagickDraw::getClipRule
ImagickDraw::getFillColor
The ImagickDraw class
PHP Manual

ImagickDraw::getClipUnits

(PECL imagick 2.0.0)

ImagickDraw::getClipUnits — Returns the interpretation of clip path units

Descrição

int ImagickDraw::getClipUnits ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the interpretation of clip path units.

Valor Retornado

Returns an int on success.

ImagickDraw::getClipRule
ImagickDraw::getFillColor
The ImagickDraw class


Returns the fill color

ImagickDraw::getClipUnits
ImagickDraw::getFillOpacity
The ImagickDraw class
PHP Manual

ImagickDraw::getFillColor

(PECL imagick 2.0.0)

ImagickDraw::getFillColor — Returns the fill color

Descrição

ImagickPixel ImagickDraw::getFillColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the fill color used for drawing filled objects.

Valor Retornado

Returns an ImagickPixel object.

ImagickDraw::getClipUnits
ImagickDraw::getFillOpacity
The ImagickDraw class


Returns the opacity used when drawing

ImagickDraw::getFillColor
ImagickDraw::getFillRule
The ImagickDraw class
PHP Manual

ImagickDraw::getFillOpacity

(PECL imagick 2.0.0)

ImagickDraw::getFillOpacity — Returns the opacity used when drawing

Descrição

float ImagickDraw::getFillOpacity ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the opacity used when drawing using the fill color or fill texture. Fully opaque is 1.0.

Valor Retornado

The opacity.

ImagickDraw::getFillColor
ImagickDraw::getFillRule
The ImagickDraw class


Returns the fill rule

ImagickDraw::getFillOpacity
ImagickDraw::getFont
The ImagickDraw class
PHP Manual

ImagickDraw::getFillRule

(PECL imagick 2.0.0)

ImagickDraw::getFillRule — Returns the fill rule

Descrição

int ImagickDraw::getFillRule ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the fill rule used while drawing polygons.

Valor Retornado

Returns a FILLRULE_ constant

ImagickDraw::getFillOpacity
ImagickDraw::getFont
The ImagickDraw class


Returns the font

ImagickDraw::getFillRule
ImagickDraw::getFontFamily
The ImagickDraw class
PHP Manual

ImagickDraw::getFont

(PECL imagick 2.0.0)

ImagickDraw::getFont — Returns the font

Descrição

string ImagickDraw::getFont ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a string specifying the font used when annotating with text.

Valor Retornado

Returns a string on success and false if no font is set.

ImagickDraw::getFillRule
ImagickDraw::getFontFamily
The ImagickDraw class


Returns the font family

ImagickDraw::getFont
ImagickDraw::getFontSize
The ImagickDraw class
PHP Manual

ImagickDraw::getFontFamily

(PECL imagick 2.0.0)

ImagickDraw::getFontFamily — Returns the font family

Descrição

string ImagickDraw::getFontFamily ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the font family to use when annotating with text.

Valor Retornado

Returns the font family currently selected or false if font family is not set.

ImagickDraw::getFont
ImagickDraw::getFontSize
The ImagickDraw class


Returns the font pointsize

ImagickDraw::getFontFamily
ImagickDraw::getFontStyle
The ImagickDraw class
PHP Manual

ImagickDraw::getFontSize

(PECL imagick 2.0.0)

ImagickDraw::getFontSize — Returns the font pointsize

Descrição

float ImagickDraw::getFontSize ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the font pointsize used when annotating with text.

Valor Retornado

Returns the font size associated with the current ImagickDraw object.

ImagickDraw::getFontFamily
ImagickDraw::getFontStyle
The ImagickDraw class


Returns the font style

ImagickDraw::getFontSize
ImagickDraw::getFontWeight
The ImagickDraw class
PHP Manual

ImagickDraw::getFontStyle

(PECL imagick 2.0.0)

ImagickDraw::getFontStyle — Returns the font style

Descrição

int ImagickDraw::getFontStyle ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the font style used when annotating with text.

Valor Retornado

Returns the font style constant (STYLE_) associated with the ImagickDraw object or 0 if no style is set.

ImagickDraw::getFontSize
ImagickDraw::getFontWeight
The ImagickDraw class


Returns the font weight

ImagickDraw::getFontStyle
ImagickDraw::getGravity
The ImagickDraw class
PHP Manual

ImagickDraw::getFontWeight

(PECL imagick 2.0.0)

ImagickDraw::getFontWeight — Returns the font weight

Descrição

int ImagickDraw::getFontWeight ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the font weight used when annotating with text.

Valor Retornado

Returns an int on success and 0 if no weight is set.

ImagickDraw::getFontStyle
ImagickDraw::getGravity
The ImagickDraw class


Returns the text placement gravity

ImagickDraw::getFontWeight
ImagickDraw::getStrokeAntialias
The ImagickDraw class
PHP Manual

ImagickDraw::getGravity

(PECL imagick 2.0.0)

ImagickDraw::getGravity — Returns the text placement gravity

Descrição

int ImagickDraw::getGravity ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the text placement gravity used when annotating with text.

Valor Retornado

Returns a GRAVITY_ constant on success and 0 if no gravity is set.

ImagickDraw::getFontWeight
ImagickDraw::getStrokeAntialias
The ImagickDraw class


Returns the current stroke antialias setting

ImagickDraw::getGravity
ImagickDraw::getStrokeColor
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeAntialias

(PECL imagick 2.0.0)

ImagickDraw::getStrokeAntialias — Returns the current stroke antialias setting

Descrição

bool ImagickDraw::getStrokeAntialias ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the current stroke antialias setting. Stroked outlines are antialiased by default. When antialiasing is disabled stroked pixels are thresholded to determine if the stroke color or underlying canvas color should be used.

Valor Retornado

Returns TRUE if antialiasing is on and false if it is off.

ImagickDraw::getGravity
ImagickDraw::getStrokeColor
The ImagickDraw class


Returns the color used for stroking object outlines

ImagickDraw::getStrokeAntialias
ImagickDraw::getStrokeDashArray
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeColor

(PECL imagick 2.0.0)

ImagickDraw::getStrokeColor — Returns the color used for stroking object outlines

Descrição

ImagickPixel ImagickDraw::getStrokeColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color used for stroking object outlines.

Parâmetros

stroke_color

Valor Retornado

Returns an ImagickPixel object which describes the color.

ImagickDraw::getStrokeAntialias
ImagickDraw::getStrokeDashArray
The ImagickDraw class


Returns an array representing the pattern of dashes and gaps used to stroke paths

ImagickDraw::getStrokeColor
ImagickDraw::getStrokeDashOffset
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeDashArray

(PECL imagick 2.0.0)

ImagickDraw::getStrokeDashArray — Returns an array representing the pattern of dashes and gaps used to stroke paths

Descrição

array ImagickDraw::getStrokeDashArray ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns an array representing the pattern of dashes and gaps used to stroke paths.

Valor Retornado

Returns an array on success and empty array if not set.

ImagickDraw::getStrokeColor
ImagickDraw::getStrokeDashOffset
The ImagickDraw class


Returns the offset into the dash pattern to start the dash

ImagickDraw::getStrokeDashArray
ImagickDraw::getStrokeLineCap
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeDashOffset

(PECL imagick 2.0.0)

ImagickDraw::getStrokeDashOffset — Returns the offset into the dash pattern to start the dash

Descrição

float ImagickDraw::getStrokeDashOffset ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the offset into the dash pattern to start the dash.

Valor Retornado

Returns a float representing the offset and 0 if it's not set.

ImagickDraw::getStrokeDashArray
ImagickDraw::getStrokeLineCap
The ImagickDraw class


Returns the shape to be used at the end of open subpaths when they are stroked

ImagickDraw::getStrokeDashOffset
ImagickDraw::getStrokeLineJoin
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeLineCap

(PECL imagick 2.0.0)

ImagickDraw::getStrokeLineCap — Returns the shape to be used at the end of open subpaths when they are stroked

Descrição

int ImagickDraw::getStrokeLineCap ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the shape to be used at the end of open subpaths when they are stroked.

Valor Retornado

Returns one of the LINECAP_ constants or 0 if stroke linecap is not set.

ImagickDraw::getStrokeDashOffset
ImagickDraw::getStrokeLineJoin
The ImagickDraw class


Returns the shape to be used at the corners of paths when they are stroked

ImagickDraw::getStrokeLineCap
ImagickDraw::getStrokeMiterLimit
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeLineJoin

(PECL imagick 2.0.0)

ImagickDraw::getStrokeLineJoin — Returns the shape to be used at the corners of paths when they are stroked

Descrição

int ImagickDraw::getStrokeLineJoin ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the shape to be used at the corners of paths (or other vector shapes) when they are stroked.

Valor Retornado

Returns one of the LINEJOIN_ constants or 0 if stroke line join is not set.

ImagickDraw::getStrokeLineCap
ImagickDraw::getStrokeMiterLimit
The ImagickDraw class


Returns the stroke miter limit

ImagickDraw::getStrokeLineJoin
ImagickDraw::getStrokeOpacity
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeMiterLimit

(PECL imagick 2.0.0)

ImagickDraw::getStrokeMiterLimit — Returns the stroke miter limit

Descrição

int ImagickDraw::getStrokeMiterLimit ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the miter limit. When two line segments meet at a sharp angle and miter joins have been specified for 'lineJoin', it is possible for the miter to extend far beyond the thickness of the line stroking the path. The 'miterLimit' imposes a limit on the ratio of the miter length to the 'lineWidth'.

Valor Retornado

Returns an int describing the miter limit and 0 if no miter limit is set.

ImagickDraw::getStrokeLineJoin
ImagickDraw::getStrokeOpacity
The ImagickDraw class


Returns the opacity of stroked object outlines

ImagickDraw::getStrokeMiterLimit
ImagickDraw::getStrokeWidth
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeOpacity

(PECL imagick 2.0.0)

ImagickDraw::getStrokeOpacity — Returns the opacity of stroked object outlines

Descrição

float ImagickDraw::getStrokeOpacity ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the opacity of stroked object outlines.

Valor Retornado

Returns a double describing the opacity.

ImagickDraw::getStrokeMiterLimit
ImagickDraw::getStrokeWidth
The ImagickDraw class


Returns the width of the stroke used to draw object outlines

ImagickDraw::getStrokeOpacity
ImagickDraw::getTextAlignment
The ImagickDraw class
PHP Manual

ImagickDraw::getStrokeWidth

(PECL imagick 2.0.0)

ImagickDraw::getStrokeWidth — Returns the width of the stroke used to draw object outlines

Descrição

float ImagickDraw::getStrokeWidth ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the width of the stroke used to draw object outlines.

Valor Retornado

Returns a double describing the stroke width.

ImagickDraw::getStrokeOpacity
ImagickDraw::getTextAlignment
The ImagickDraw class


Returns the text alignment

ImagickDraw::getStrokeWidth
ImagickDraw::getTextAntialias
The ImagickDraw class
PHP Manual

ImagickDraw::getTextAlignment

(PECL imagick 2.0.0)

ImagickDraw::getTextAlignment — Returns the text alignment

Descrição

int ImagickDraw::getTextAlignment ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the alignment applied when annotating with text.

Valor Retornado

Returns one of the ALIGN_ constants and 0 if no align is set.

ImagickDraw::getStrokeWidth
ImagickDraw::getTextAntialias
The ImagickDraw class


Returns the current text antialias setting

ImagickDraw::getTextAlignment
ImagickDraw::getTextDecoration
The ImagickDraw class
PHP Manual

ImagickDraw::getTextAntialias

(PECL imagick 2.0.0)

ImagickDraw::getTextAntialias — Returns the current text antialias setting

Descrição

bool ImagickDraw::getTextAntialias ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the current text antialias setting, which determines whether text is antialiased. Text is antialiased by default.

Valor Retornado

Returns TRUE if text is antialiased and false if not.

ImagickDraw::getTextAlignment
ImagickDraw::getTextDecoration
The ImagickDraw class


Returns the text decoration

ImagickDraw::getTextAntialias
ImagickDraw::getTextEncoding
The ImagickDraw class
PHP Manual

ImagickDraw::getTextDecoration

(PECL imagick 2.0.0)

ImagickDraw::getTextDecoration — Returns the text decoration

Descrição

int ImagickDraw::getTextDecoration ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the decoration applied when annotating with text.

Valor Retornado

Returns one of the DECORATION_ constants and 0 if no decoration is set.

ImagickDraw::getTextAntialias
ImagickDraw::getTextEncoding
The ImagickDraw class


Returns the code set used for text annotations

ImagickDraw::getTextDecoration
ImagickDraw::getTextUnderColor
The ImagickDraw class
PHP Manual

ImagickDraw::getTextEncoding

(PECL imagick 2.0.0)

ImagickDraw::getTextEncoding — Returns the code set used for text annotations

Descrição

string ImagickDraw::getTextEncoding ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a string which specifies the code set used for text annotations.

Valor Retornado

Returns a string specifying the code set or false if text encoding is not set.

ImagickDraw::getTextDecoration
ImagickDraw::getTextUnderColor
The ImagickDraw class


Returns the text under color

ImagickDraw::getTextEncoding
ImagickDraw::getVectorGraphics
The ImagickDraw class
PHP Manual

ImagickDraw::getTextUnderColor

(PECL imagick 2.0.0)

ImagickDraw::getTextUnderColor — Returns the text under color

Descrição

ImagickPixel ImagickDraw::getTextUnderColor ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color of a background rectangle to place under text annotations.

Valor Retornado

Returns an ImagickPixel object describing the color.

ImagickDraw::getTextEncoding
ImagickDraw::getVectorGraphics
The ImagickDraw class


Returns a string containing vector graphics

ImagickDraw::getTextUnderColor
ImagickDraw::line
The ImagickDraw class
PHP Manual

ImagickDraw::getVectorGraphics

(PECL imagick 2.0.0)

ImagickDraw::getVectorGraphics — Returns a string containing vector graphics

Descrição

string ImagickDraw::getVectorGraphics ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a string which specifies the vector graphics generated by any graphics calls made since the ImagickDraw object was instantiated.

Valor Retornado

Returns a string containing the vector graphics.

ImagickDraw::getTextUnderColor
ImagickDraw::line
The ImagickDraw class


Draws a line

ImagickDraw::getVectorGraphics
ImagickDraw::matte
The ImagickDraw class
PHP Manual

ImagickDraw::line

(PECL imagick 2.0.0)

ImagickDraw::line — Draws a line

Descrição

bool ImagickDraw::line ( float $sx , float $sy , float $ex , float $ey )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a line on the image using the current stroke color, stroke opacity, and stroke width.

Parâmetros

sx

starting x coordinate

sy

starting y coordinate

ex

ending x coordinate

ey

ending y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::getVectorGraphics
ImagickDraw::matte
The ImagickDraw class


Paints on the image's opacity channel

ImagickDraw::line
ImagickDraw::pathClose
The ImagickDraw class
PHP Manual

ImagickDraw::matte

(PECL imagick 2.0.0)

ImagickDraw::matte — Paints on the image's opacity channel

Descrição

bool ImagickDraw::matte ( float $x , float $y , int $paintMethod )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Paints on the image's opacity channel in order to set effected pixels to transparent, to influence the opacity of pixels.

Parâmetros

x

x coordinate of the matte

y

y coordinate of the matte

paintMethod

PAINT_ constant

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::line
ImagickDraw::pathClose
The ImagickDraw class


Adds a path element to the current path

ImagickDraw::matte
ImagickDraw::pathCurveToAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathClose

(PECL imagick 2.0.0)

ImagickDraw::pathClose — Adds a path element to the current path

Descrição

bool ImagickDraw::pathClose ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adds a path element to the current path which closes the current subpath by drawing a straight line from the current point to the current subpath's most recent starting point (usually, the most recent moveto point).

Valor Retornado

Não há valor retornado.

ImagickDraw::matte
ImagickDraw::pathCurveToAbsolute
The ImagickDraw class


Draws a cubic Bezier curve

ImagickDraw::pathClose
ImagickDraw::pathCurveToQuadraticBezierAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToAbsolute — Draws a cubic Bezier curve

Descrição

bool ImagickDraw::pathCurveToAbsolute ( float $x1 , float $y1 , float $x2 , float $y2 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a cubic Bezier curve from the current point to (x,y) using (x1,y1) as the control point at the beginning of the curve and (x2,y2) as the control point at the end of the curve using absolute coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x1

x coordinate of the first control point

y1

y coordinate of the first control point

x2

x coordinate of the second control point

y2

y coordinate of the first control point

x

x coordinate of the curve end

y

y coordinate of the curve end

Valor Retornado

Não há valor retornado.

ImagickDraw::pathClose
ImagickDraw::pathCurveToQuadraticBezierAbsolute
The ImagickDraw class


Draws a quadratic Bezier curve

ImagickDraw::pathCurveToAbsolute
ImagickDraw::pathCurveToQuadraticBezierRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToQuadraticBezierAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToQuadraticBezierAbsolute — Draws a quadratic Bezier curve

Descrição

bool ImagickDraw::pathCurveToQuadraticBezierAbsolute ( float $x1 , float $y1 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a quadratic Bezier curve from the current point to (x,y) using (x1,y1) as the control point using absolute coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x1

x coordinate of the control point

y1

y coordinate of the control point

x

x coordinate of the end point

y

y coordinate of the end point

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToAbsolute
ImagickDraw::pathCurveToQuadraticBezierRelative
The ImagickDraw class


Draws a quadratic Bezier curve

ImagickDraw::pathCurveToQuadraticBezierAbsolute
ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToQuadraticBezierRelative

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToQuadraticBezierRelative — Draws a quadratic Bezier curve

Descrição

bool ImagickDraw::pathCurveToQuadraticBezierRelative ( float $x1 , float $y1 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a quadratic Bezier curve from the current point to (x,y) using (x1,y1) as the control point using relative coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x1

starting x coordinate

y1

starting y coordinate

x

ending x coordinate

y

ending y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToQuadraticBezierAbsolute
ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute
The ImagickDraw class


Draws a quadratic Bezier curve

ImagickDraw::pathCurveToQuadraticBezierRelative
ImagickDraw::pathCurveToQuadraticBezierSmoothRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute — Draws a quadratic Bezier curve

Descrição

bool ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a quadratic Bezier curve (using absolute coordinates) from the current point to (x,y). The control point is assumed to be the reflection of the control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not a DrawPathCurveToQuadraticBezierAbsolute, DrawPathCurveToQuadraticBezierRelative, DrawPathCurveToQuadraticBezierSmoothAbsolut or DrawPathCurveToQuadraticBezierSmoothRelative, assume the control point is coincident with the current point.). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x

ending x coordinate

y

ending y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToQuadraticBezierRelative
ImagickDraw::pathCurveToQuadraticBezierSmoothRelative
The ImagickDraw class


Draws a quadratic Bezier curve

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute
ImagickDraw::pathCurveToRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToQuadraticBezierSmoothRelative

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToQuadraticBezierSmoothRelative — Draws a quadratic Bezier curve

Descrição

bool ImagickDraw::pathCurveToQuadraticBezierSmoothRelative ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a quadratic Bezier curve (using relative coordinates) from the current point to (x, y). The control point is assumed to be the reflection of the control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not a DrawPathCurveToQuadraticBezierAbsolute, DrawPathCurveToQuadraticBezierRelative, DrawPathCurveToQuadraticBezierSmoothAbsolut or DrawPathCurveToQuadraticBezierSmoothRelative, assume the control point is coincident with the current point). At the end of the command, the new current point becomes the final (x, y) coordinate pair used in the polybezier.

Parâmetros

x

ending x coordinate

y

ending y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute
ImagickDraw::pathCurveToRelative
The ImagickDraw class


Draws a cubic Bezier curve

ImagickDraw::pathCurveToQuadraticBezierSmoothRelative
ImagickDraw::pathCurveToSmoothAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToRelative

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToRelative — Draws a cubic Bezier curve

Descrição

bool ImagickDraw::pathCurveToRelative ( float $x1 , float $y1 , float $x2 , float $y2 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a cubic Bezier curve from the current point to (x,y) using (x1,y1) as the control point at the beginning of the curve and (x2,y2) as the control point at the end of the curve using relative coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x1

x coordinate of starting control point

y1

y coordinate of starting control point

x2

x coordinate of ending control point

y2

y coordinate of ending control point

x

ending x coordinate

y

ending y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToQuadraticBezierSmoothRelative
ImagickDraw::pathCurveToSmoothAbsolute
The ImagickDraw class


Draws a cubic Bezier curve

ImagickDraw::pathCurveToRelative
ImagickDraw::pathCurveToSmoothRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToSmoothAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToSmoothAbsolute — Draws a cubic Bezier curve

Descrição

bool ImagickDraw::pathCurveToSmoothAbsolute ( float $x2 , float $y2 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a cubic Bezier curve from the current point to (x,y) using absolute coordinates. The first control point is assumed to be the reflection of the second control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not an DrawPathCurveToAbsolute, DrawPathCurveToRelative, DrawPathCurveToSmoothAbsolute or DrawPathCurveToSmoothRelative, assume the first control point is coincident with the current point.) (x2,y2) is the second control point (i.e., the control point at the end of the curve). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x2

x coordinate of the second control point

y2

y coordinate of the second control point

x

x coordinate of the ending point

y

y coordinate of the ending point

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToRelative
ImagickDraw::pathCurveToSmoothRelative
The ImagickDraw class


Draws a cubic Bezier curve

ImagickDraw::pathCurveToSmoothAbsolute
ImagickDraw::pathEllipticArcAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathCurveToSmoothRelative

(PECL imagick 2.0.0)

ImagickDraw::pathCurveToSmoothRelative — Draws a cubic Bezier curve

Descrição

bool ImagickDraw::pathCurveToSmoothRelative ( float $x2 , float $y2 , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a cubic Bezier curve from the current point to (x,y) using relative coordinates. The first control point is assumed to be the reflection of the second control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not an DrawPathCurveToAbsolute, DrawPathCurveToRelative, DrawPathCurveToSmoothAbsolute or DrawPathCurveToSmoothRelative, assume the first control point is coincident with the current point.) (x2,y2) is the second control point (i.e., the control point at the end of the curve). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.

Parâmetros

x2

x coordinate of the second control point

y2

y coordinate of the second control point

x

x coordinate of the ending point

y

y coordinate of the ending point

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToSmoothAbsolute
ImagickDraw::pathEllipticArcAbsolute
The ImagickDraw class


Draws an elliptical arc

ImagickDraw::pathCurveToSmoothRelative
ImagickDraw::pathEllipticArcRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathEllipticArcAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathEllipticArcAbsolute — Draws an elliptical arc

Descrição

bool ImagickDraw::pathEllipticArcAbsolute ( float $rx , float $ry , float $x_axis_rotation , bool $large_arc_flag , bool $sweep_flag , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws an elliptical arc from the current point to (x, y) using absolute coordinates. The size and orientation of the ellipse are defined by two radii (rx, ry) and an xAxisRotation, which indicates how the ellipse as a whole is rotated relative to the current coordinate system. The center (cx, cy) of the ellipse is calculated automatically to satisfy the constraints imposed by the other parameters. largeArcFlag and sweepFlag contribute to the automatic calculations and help determine how the arc is drawn. If largeArcFlag is TRUE then draw the larger of the available arcs. If sweepFlag is true, then draw the arc matching a clock-wise rotation.

Parâmetros

rx

x radius

ry

y radius

x_axis_rotation

x axis rotation

large_arc_flag

large arc flag

sweep_flag

sweep flag

x

x coordinate

y

y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathCurveToSmoothRelative
ImagickDraw::pathEllipticArcRelative
The ImagickDraw class


Draws an elliptical arc

ImagickDraw::pathEllipticArcAbsolute
ImagickDraw::pathFinish
The ImagickDraw class
PHP Manual

ImagickDraw::pathEllipticArcRelative

(PECL imagick 2.0.0)

ImagickDraw::pathEllipticArcRelative — Draws an elliptical arc

Descrição

bool ImagickDraw::pathEllipticArcRelative ( float $rx , float $ry , float $x_axis_rotation , bool $large_arc_flag , bool $sweep_flag , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws an elliptical arc from the current point to (x, y) using relative coordinates. The size and orientation of the ellipse are defined by two radii (rx, ry) and an xAxisRotation, which indicates how the ellipse as a whole is rotated relative to the current coordinate system. The center (cx, cy) of the ellipse is calculated automatically to satisfy the constraints imposed by the other parameters. largeArcFlag and sweepFlag contribute to the automatic calculations and help determine how the arc is drawn. If largeArcFlag is TRUE then draw the larger of the available arcs. If sweepFlag is true, then draw the arc matching a clock-wise rotation.

Parâmetros

rx

x radius

ry

y radius

x_axis_rotation

x axis rotation

large_arc_flag

large arc flag

sweep_flag

sweep flag

x

x coordinate

y

y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathEllipticArcAbsolute
ImagickDraw::pathFinish
The ImagickDraw class


Terminates the current path

ImagickDraw::pathEllipticArcRelative
ImagickDraw::pathLineToAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathFinish

(PECL imagick 2.0.0)

ImagickDraw::pathFinish — Terminates the current path

Descrição

bool ImagickDraw::pathFinish ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Terminates the current path.

Valor Retornado

Não há valor retornado.

ImagickDraw::pathEllipticArcRelative
ImagickDraw::pathLineToAbsolute
The ImagickDraw class


Draws a line path

ImagickDraw::pathFinish
ImagickDraw::pathLineToHorizontalAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathLineToAbsolute — Draws a line path

Descrição

bool ImagickDraw::pathLineToAbsolute ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a line path from the current point to the given coordinate using absolute coordinates. The coordinate then becomes the new current point.

Parâmetros

x

starting x coordinate

y

ending x coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathFinish
ImagickDraw::pathLineToHorizontalAbsolute
The ImagickDraw class


Draws a horizontal line path

ImagickDraw::pathLineToAbsolute
ImagickDraw::pathLineToHorizontalRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToHorizontalAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathLineToHorizontalAbsolute — Draws a horizontal line path

Descrição

bool ImagickDraw::pathLineToHorizontalAbsolute ( float $x )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a horizontal line path from the current point to the target point using absolute coordinates. The target point then becomes the new current point.

Parâmetros

x

x coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToAbsolute
ImagickDraw::pathLineToHorizontalRelative
The ImagickDraw class


Draws a horizontal line

ImagickDraw::pathLineToHorizontalAbsolute
ImagickDraw::pathLineToRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToHorizontalRelative

(PECL imagick 2.0.0)

ImagickDraw::pathLineToHorizontalRelative — Draws a horizontal line

Descrição

bool ImagickDraw::pathLineToHorizontalRelative ( float $x )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a horizontal line path from the current point to the target point using relative coordinates. The target point then becomes the new current point.

Parâmetros

x

x coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToHorizontalAbsolute
ImagickDraw::pathLineToRelative
The ImagickDraw class


Draws a line path

ImagickDraw::pathLineToHorizontalRelative
ImagickDraw::pathLineToVerticalAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToRelative

(PECL imagick 2.0.0)

ImagickDraw::pathLineToRelative — Draws a line path

Descrição

bool ImagickDraw::pathLineToRelative ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a line path from the current point to the given coordinate using relative coordinates. The coordinate then becomes the new current point.

Parâmetros

x

starting x coordinate

y

starting y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToHorizontalRelative
ImagickDraw::pathLineToVerticalAbsolute
The ImagickDraw class


Draws a vertical line

ImagickDraw::pathLineToRelative
ImagickDraw::pathLineToVerticalRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToVerticalAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathLineToVerticalAbsolute — Draws a vertical line

Descrição

bool ImagickDraw::pathLineToVerticalAbsolute ( float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a vertical line path from the current point to the target point using absolute coordinates. The target point then becomes the new current point.

Parâmetros

y

y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToRelative
ImagickDraw::pathLineToVerticalRelative
The ImagickDraw class


Draws a vertical line path

ImagickDraw::pathLineToVerticalAbsolute
ImagickDraw::pathMoveToAbsolute
The ImagickDraw class
PHP Manual

ImagickDraw::pathLineToVerticalRelative

(PECL imagick 2.0.0)

ImagickDraw::pathLineToVerticalRelative — Draws a vertical line path

Descrição

bool ImagickDraw::pathLineToVerticalRelative ( float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a vertical line path from the current point to the target point using relative coordinates. The target point then becomes the new current point.

Parâmetros

y

y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToVerticalAbsolute
ImagickDraw::pathMoveToAbsolute
The ImagickDraw class


Starts a new sub-path

ImagickDraw::pathLineToVerticalRelative
ImagickDraw::pathMoveToRelative
The ImagickDraw class
PHP Manual

ImagickDraw::pathMoveToAbsolute

(PECL imagick 2.0.0)

ImagickDraw::pathMoveToAbsolute — Starts a new sub-path

Descrição

bool ImagickDraw::pathMoveToAbsolute ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Starts a new sub-path at the given coordinate using absolute coordinates. The current point then becomes the specified coordinate.

Parâmetros

x

x coordinate of the starting point

y

y coordinate of the starting point

Valor Retornado

Não há valor retornado.

ImagickDraw::pathLineToVerticalRelative
ImagickDraw::pathMoveToRelative
The ImagickDraw class


Starts a new sub-path

ImagickDraw::pathMoveToAbsolute
ImagickDraw::pathStart
The ImagickDraw class
PHP Manual

ImagickDraw::pathMoveToRelative

(PECL imagick 2.0.0)

ImagickDraw::pathMoveToRelative — Starts a new sub-path

Descrição

bool ImagickDraw::pathMoveToRelative ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Starts a new sub-path at the given coordinate using relative coordinates. The current point then becomes the specified coordinate.

Parâmetros

x

target x coordinate

y

target y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathMoveToAbsolute
ImagickDraw::pathStart
The ImagickDraw class


Declares the start of a path drawing list

ImagickDraw::pathMoveToRelative
ImagickDraw::point
The ImagickDraw class
PHP Manual

ImagickDraw::pathStart

(PECL imagick 2.0.0)

ImagickDraw::pathStart — Declares the start of a path drawing list

Descrição

bool ImagickDraw::pathStart ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Declares the start of a path drawing list which is terminated by a matching DrawPathFinish() command. All other DrawPath commands must be enclosed between a and a DrawPathFinish() command. This is because path drawing commands are subordinate commands and they do not function by themselves.

Valor Retornado

Não há valor retornado.

ImagickDraw::pathMoveToRelative
ImagickDraw::point
The ImagickDraw class


Draws a point

ImagickDraw::pathStart
ImagickDraw::polygon
The ImagickDraw class
PHP Manual

ImagickDraw::point

(PECL imagick 2.0.0)

ImagickDraw::point — Draws a point

Descrição

bool ImagickDraw::point ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a point using the current stroke color and stroke thickness at the specified coordinates.

Parâmetros

x

point's x coordinate

y

point's y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::pathStart
ImagickDraw::polygon
The ImagickDraw class


Draws a polygon

ImagickDraw::point
ImagickDraw::polyline
The ImagickDraw class
PHP Manual

ImagickDraw::polygon

(PECL imagick 2.0.0)

ImagickDraw::polygon — Draws a polygon

Descrição

bool ImagickDraw::polygon ( array $coordinates )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a polygon using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.

Parâmetros

coordinates

multidimensional array like array( array( 'x' => 3, 'y' => 4 ), array( 'x' => 2, 'y' => 6 ) );

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::point
ImagickDraw::polyline
The ImagickDraw class


Draws a polyline

ImagickDraw::polygon
ImagickDraw::pop
The ImagickDraw class
PHP Manual

ImagickDraw::polyline

(PECL imagick 2.0.0)

ImagickDraw::polyline — Draws a polyline

Descrição

bool ImagickDraw::polyline ( array $coordinates )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a polyline using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.

Parâmetros

coordinates

array of x and y coordinates: array( array( 'x' => 4, 'y' => 6 ), array( 'x' => 8, 'y' => 10 ) )

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::polygon
ImagickDraw::pop
The ImagickDraw class


Destroys the current ImagickDraw in the stack, and returns to the previously pushed ImagickDraw

ImagickDraw::polyline
ImagickDraw::popClipPath
The ImagickDraw class
PHP Manual

ImagickDraw::pop

(PECL imagick 2.0.0)

ImagickDraw::pop — Destroys the current ImagickDraw in the stack, and returns to the previously pushed ImagickDraw

Descrição

bool ImagickDraw::pop ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Destroys the current ImagickDraw in the stack, and returns to the previously pushed ImagickDraw. Multiple ImagickDraws may exist. It is an error to attempt to pop more ImagickDraws than have been pushed, and it is proper form to pop all ImagickDraws which have been pushed.

Valor Retornado

Returns TRUE on success and false on failure.

ImagickDraw::polyline
ImagickDraw::popClipPath
The ImagickDraw class


Terminates a clip path definition

ImagickDraw::pop
ImagickDraw::popDefs
The ImagickDraw class
PHP Manual

ImagickDraw::popClipPath

(PECL imagick 2.0.0)

ImagickDraw::popClipPath — Terminates a clip path definition

Descrição

bool ImagickDraw::popClipPath ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Terminates a clip path definition.

Valor Retornado

Não há valor retornado.

ImagickDraw::pop
ImagickDraw::popDefs
The ImagickDraw class


Terminates a definition list

ImagickDraw::popClipPath
ImagickDraw::popPattern
The ImagickDraw class
PHP Manual

ImagickDraw::popDefs

(PECL imagick 2.0.0)

ImagickDraw::popDefs — Terminates a definition list

Descrição

bool ImagickDraw::popDefs ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Terminates a definition list.

Valor Retornado

Não há valor retornado.

ImagickDraw::popClipPath
ImagickDraw::popPattern
The ImagickDraw class


Terminates a pattern definition

ImagickDraw::popDefs
ImagickDraw::push
The ImagickDraw class
PHP Manual

ImagickDraw::popPattern

(PECL imagick 2.0.0)

ImagickDraw::popPattern — Terminates a pattern definition

Descrição

bool ImagickDraw::popPattern ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Terminates a pattern definition.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::popDefs
ImagickDraw::push
The ImagickDraw class


Clones the current ImagickDraw and pushes it to the stack

ImagickDraw::popPattern
ImagickDraw::pushClipPath
The ImagickDraw class
PHP Manual

ImagickDraw::push

(PECL imagick 2.0.0)

ImagickDraw::push — Clones the current ImagickDraw and pushes it to the stack

Descrição

bool ImagickDraw::push ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clones the current ImagickDraw to create a new ImagickDraw, which is then added to the ImagickDraw stack. The original drawing ImagickDraw(s) may be returned to by invoking pop(). The ImagickDraws are stored on a ImagickDraw stack. For every Pop there must have already been an equivalent Push.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::popPattern
ImagickDraw::pushClipPath
The ImagickDraw class


Starts a clip path definition

ImagickDraw::push
ImagickDraw::pushDefs
The ImagickDraw class
PHP Manual

ImagickDraw::pushClipPath

(PECL imagick 2.0.0)

ImagickDraw::pushClipPath — Starts a clip path definition

Descrição

bool ImagickDraw::pushClipPath ( string $clip_mask_id )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Starts a clip path definition which is comprised of any number of drawing commands and terminated by a ImagickDraw::popClipPath() command.

Parâmetros

clip_mask_id

Clip mask Id

Valor Retornado

Não há valor retornado.

ImagickDraw::push
ImagickDraw::pushDefs
The ImagickDraw class


Indicates that following commands create named elements for early processing

ImagickDraw::pushClipPath
ImagickDraw::pushPattern
The ImagickDraw class
PHP Manual

ImagickDraw::pushDefs

(PECL imagick 2.0.0)

ImagickDraw::pushDefs — Indicates that following commands create named elements for early processing

Descrição

bool ImagickDraw::pushDefs ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Indicates that commands up to a terminating ImagickDraw::popDefs() command create named elements (e.g. clip-paths, textures, etc.) which may safely be processed earlier for the sake of efficiency.

Valor Retornado

Não há valor retornado.

ImagickDraw::pushClipPath
ImagickDraw::pushPattern
The ImagickDraw class


Indicates that subsequent commands up to a ImagickDraw::opPattern() command comprise the definition of a named pattern

ImagickDraw::pushDefs
ImagickDraw::rectangle
The ImagickDraw class
PHP Manual

ImagickDraw::pushPattern

(PECL imagick 2.0.0)

ImagickDraw::pushPattern — Indicates that subsequent commands up to a ImagickDraw::opPattern() command comprise the definition of a named pattern

Descrição

bool ImagickDraw::pushPattern ( string $pattern_id , float $x , float $y , float $width , float $height )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Indicates that subsequent commands up to a DrawPopPattern() command comprise the definition of a named pattern. The pattern space is assigned top left corner coordinates, a width and height, and becomes its own drawing space. Anything which can be drawn may be used in a pattern definition. Named patterns may be used as stroke or brush definitions.

Parâmetros

pattern_id

the pattern Id

x

x coordinate of the top-left corner

y

y coordinate of the top-left corner

width

width of the pattern

height

height of the pattern

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::pushDefs
ImagickDraw::rectangle
The ImagickDraw class


Draws a rectangle

ImagickDraw::pushPattern
ImagickDraw::render
The ImagickDraw class
PHP Manual

ImagickDraw::rectangle

(PECL imagick 2.0.0)

ImagickDraw::rectangle — Draws a rectangle

Descrição

bool ImagickDraw::rectangle ( float $x1 , float $y1 , float $x2 , float $y2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a rectangle given two coordinates and using the current stroke, stroke width, and fill settings.

Parâmetros

x1

x coordinate of the top left corner

y1

y coordinate of the top left corner

x2

x coordinate of the bottom right corner

y2

y coordinate of the bottom right corner

Valor Retornado

Não há valor retornado.

ImagickDraw::pushPattern
ImagickDraw::render
The ImagickDraw class


Renders all preceding drawing commands onto the image

ImagickDraw::rectangle
ImagickDraw::rotate
The ImagickDraw class
PHP Manual

ImagickDraw::render

(PECL imagick 2.0.0)

ImagickDraw::render — Renders all preceding drawing commands onto the image

Descrição

bool ImagickDraw::render ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Renders all preceding drawing commands onto the image.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::rectangle
ImagickDraw::rotate
The ImagickDraw class


Applies the specified rotation to the current coordinate space

ImagickDraw::render
ImagickDraw::roundRectangle
The ImagickDraw class
PHP Manual

ImagickDraw::rotate

(PECL imagick 2.0.0)

ImagickDraw::rotate — Applies the specified rotation to the current coordinate space

Descrição

bool ImagickDraw::rotate ( float $degrees )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies the specified rotation to the current coordinate space.

Parâmetros

degrees

degrees to rotate

Valor Retornado

Não há valor retornado.

ImagickDraw::render
ImagickDraw::roundRectangle
The ImagickDraw class


Draws a rounded rectangle

ImagickDraw::rotate
ImagickDraw::scale
The ImagickDraw class
PHP Manual

ImagickDraw::roundRectangle

(PECL imagick 2.0.0)

ImagickDraw::roundRectangle — Draws a rounded rectangle

Descrição

bool ImagickDraw::roundRectangle ( float $x1 , float $y1 , float $x2 , float $y2 , float $rx , float $ry )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Draws a rounded rectangle given two coordinates, x & y corner radiuses and using the current stroke, stroke width, and fill settings.

Parâmetros

x1

x coordinate of the top left corner

y1

y coordinate of the top left corner

x2

x coordinate of the bottom right

y2

y coordinate of the bottom right

rx

x rounding

ry

y rounding

Valor Retornado

Não há valor retornado.

ImagickDraw::rotate
ImagickDraw::scale
The ImagickDraw class


Adjusts the scaling factor

ImagickDraw::roundRectangle
ImagickDraw::setClipPath
The ImagickDraw class
PHP Manual

ImagickDraw::scale

(PECL imagick 2.0.0)

ImagickDraw::scale — Adjusts the scaling factor

Descrição

bool ImagickDraw::scale ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Adjusts the scaling factor to apply in the horizontal and vertical directions to the current coordinate space.

Parâmetros

x

horizontal factor

y

vertical factor

Valor Retornado

Não há valor retornado.

ImagickDraw::roundRectangle
ImagickDraw::setClipPath
The ImagickDraw class


Associates a named clipping path with the image

ImagickDraw::scale
ImagickDraw::setClipRule
The ImagickDraw class
PHP Manual

ImagickDraw::setClipPath

(PECL imagick 2.0.0)

ImagickDraw::setClipPath — Associates a named clipping path with the image

Descrição

bool ImagickDraw::setClipPath ( string $clip_mask )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Associates a named clipping path with the image. Only the areas drawn on by the clipping path will be modified as long as it remains in effect.

Parâmetros

clip_mask

the clipping path name

Valor Retornado

Não há valor retornado.

ImagickDraw::scale
ImagickDraw::setClipRule
The ImagickDraw class


Set the polygon fill rule to be used by the clipping path

ImagickDraw::setClipPath
ImagickDraw::setClipUnits
The ImagickDraw class
PHP Manual

ImagickDraw::setClipRule

(PECL imagick 2.0.0)

ImagickDraw::setClipRule — Set the polygon fill rule to be used by the clipping path

Descrição

bool ImagickDraw::setClipRule ( int $fill_rule )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Set the polygon fill rule to be used by the clipping path.

Parâmetros

fill_rule

FILLRULE_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setClipPath
ImagickDraw::setClipUnits
The ImagickDraw class


Sets the interpretation of clip path units

ImagickDraw::setClipRule
ImagickDraw::setFillAlpha
The ImagickDraw class
PHP Manual

ImagickDraw::setClipUnits

(PECL imagick 2.0.0)

ImagickDraw::setClipUnits — Sets the interpretation of clip path units

Descrição

bool ImagickDraw::setClipUnits ( int $clip_units )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the interpretation of clip path units.

Parâmetros

clip_units

the number of clip units

Valor Retornado

Não há valor retornado.

ImagickDraw::setClipRule
ImagickDraw::setFillAlpha
The ImagickDraw class


Sets the opacity to use when drawing using the fill color or fill texture

ImagickDraw::setClipUnits
ImagickDraw::setFillColor
The ImagickDraw class
PHP Manual

ImagickDraw::setFillAlpha

(PECL imagick 2.0.0)

ImagickDraw::setFillAlpha — Sets the opacity to use when drawing using the fill color or fill texture

Descrição

bool ImagickDraw::setFillAlpha ( float $opacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the opacity to use when drawing using the fill color or fill texture. Fully opaque is 1.0.

Parâmetros

opacity

fill alpha

Valor Retornado

Não há valor retornado.

ImagickDraw::setClipUnits
ImagickDraw::setFillColor
The ImagickDraw class


Sets the fill color to be used for drawing filled objects

ImagickDraw::setFillAlpha
ImagickDraw::setFillOpacity
The ImagickDraw class
PHP Manual

ImagickDraw::setFillColor

(PECL imagick 2.0.0)

ImagickDraw::setFillColor — Sets the fill color to be used for drawing filled objects

Descrição

bool ImagickDraw::setFillColor ( ImagickPixel $fill_pixel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the fill color to be used for drawing filled objects.

Parâmetros

fill_pixel

ImagickPixel to use to set the color

Valor Retornado

Não há valor retornado.

ImagickDraw::setFillAlpha
ImagickDraw::setFillOpacity
The ImagickDraw class


Sets the opacity to use when drawing using the fill color or fill texture

ImagickDraw::setFillColor
ImagickDraw::setFillPatternURL
The ImagickDraw class
PHP Manual

ImagickDraw::setFillOpacity

(PECL imagick 2.0.0)

ImagickDraw::setFillOpacity — Sets the opacity to use when drawing using the fill color or fill texture

Descrição

bool ImagickDraw::setFillOpacity ( float $fillOpacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the opacity to use when drawing using the fill color or fill texture. Fully opaque is 1.0.

Parâmetros

fillOpacity

the fill opacity

Valor Retornado

Não há valor retornado.

ImagickDraw::setFillColor
ImagickDraw::setFillPatternURL
The ImagickDraw class


Sets the URL to use as a fill pattern for filling objects

ImagickDraw::setFillOpacity
ImagickDraw::setFillRule
The ImagickDraw class
PHP Manual

ImagickDraw::setFillPatternURL

(PECL imagick 2.0.0)

ImagickDraw::setFillPatternURL — Sets the URL to use as a fill pattern for filling objects

Descrição

bool ImagickDraw::setFillPatternURL ( string $fill_url )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the URL to use as a fill pattern for filling objects. Only local URLs ("#identifier") are supported at this time. These local URLs are normally created by defining a named fill pattern with DrawPushPattern/DrawPopPattern.

Parâmetros

fill_url

URL to use to obtain fill pattern.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::setFillOpacity
ImagickDraw::setFillRule
The ImagickDraw class


Sets the fill rule to use while drawing polygons

ImagickDraw::setFillPatternURL
ImagickDraw::setFont
The ImagickDraw class
PHP Manual

ImagickDraw::setFillRule

(PECL imagick 2.0.0)

ImagickDraw::setFillRule — Sets the fill rule to use while drawing polygons

Descrição

bool ImagickDraw::setFillRule ( int $fill_rule )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the fill rule to use while drawing polygons.

Parâmetros

fill_rule

FILLRULE_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setFillPatternURL
ImagickDraw::setFont
The ImagickDraw class


Sets the fully-specified font to use when annotating with text

ImagickDraw::setFillRule
ImagickDraw::setFontFamily
The ImagickDraw class
PHP Manual

ImagickDraw::setFont

(PECL imagick 2.0.0)

ImagickDraw::setFont — Sets the fully-specified font to use when annotating with text

Descrição

bool ImagickDraw::setFont ( string $font_name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the fully-specified font to use when annotating with text.

Parâmetros

font_name

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::setFillRule
ImagickDraw::setFontFamily
The ImagickDraw class


Sets the font family to use when annotating with text

ImagickDraw::setFont
ImagickDraw::setFontSize
The ImagickDraw class
PHP Manual

ImagickDraw::setFontFamily

(PECL imagick 2.0.0)

ImagickDraw::setFontFamily — Sets the font family to use when annotating with text

Descrição

bool ImagickDraw::setFontFamily ( string $font_family )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the font family to use when annotating with text.

Parâmetros

font_family

the font family

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::setFont
ImagickDraw::setFontSize
The ImagickDraw class


Sets the font pointsize to use when annotating with text

ImagickDraw::setFontFamily
ImagickDraw::setFontStretch
The ImagickDraw class
PHP Manual

ImagickDraw::setFontSize

(PECL imagick 2.0.0)

ImagickDraw::setFontSize — Sets the font pointsize to use when annotating with text

Descrição

bool ImagickDraw::setFontSize ( float $pointsize )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the font pointsize to use when annotating with text.

Parâmetros

pointsize

the point size

Valor Retornado

Não há valor retornado.

ImagickDraw::setFontFamily
ImagickDraw::setFontStretch
The ImagickDraw class


Sets the font stretch to use when annotating with text

ImagickDraw::setFontSize
ImagickDraw::setFontStyle
The ImagickDraw class
PHP Manual

ImagickDraw::setFontStretch

(PECL imagick 2.0.0)

ImagickDraw::setFontStretch — Sets the font stretch to use when annotating with text

Descrição

bool ImagickDraw::setFontStretch ( int $fontStretch )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the font stretch to use when annotating with text. The AnyStretch enumeration acts as a wild-card "don't care" option.

Parâmetros

fontStretch

STRETCH_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setFontSize
ImagickDraw::setFontStyle
The ImagickDraw class


Sets the font style to use when annotating with text

ImagickDraw::setFontStretch
ImagickDraw::setFontWeight
The ImagickDraw class
PHP Manual

ImagickDraw::setFontStyle

(PECL imagick 2.0.0)

ImagickDraw::setFontStyle — Sets the font style to use when annotating with text

Descrição

bool ImagickDraw::setFontStyle ( int $style )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the font style to use when annotating with text. The AnyStyle enumeration acts as a wild-card "don't care" option.

Parâmetros

style

STYLETYPE_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setFontStretch
ImagickDraw::setFontWeight
The ImagickDraw class


Sets the font weight

ImagickDraw::setFontStyle
ImagickDraw::setGravity
The ImagickDraw class
PHP Manual

ImagickDraw::setFontWeight

(PECL imagick 2.0.0)

ImagickDraw::setFontWeight — Sets the font weight

Descrição

bool ImagickDraw::setFontWeight ( int $font_weight )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the font weight to use when annotating with text.

Parâmetros

font_weight

Valor Retornado

ImagickDraw::setFontStyle
ImagickDraw::setGravity
The ImagickDraw class


Sets the text placement gravity

ImagickDraw::setFontWeight
ImagickDraw::setStrokeAlpha
The ImagickDraw class
PHP Manual

ImagickDraw::setGravity

(PECL imagick 2.0.0)

ImagickDraw::setGravity — Sets the text placement gravity

Descrição

bool ImagickDraw::setGravity ( int $gravity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the text placement gravity to use when annotating with text.

Parâmetros

gravity

GRAVITY_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setFontWeight
ImagickDraw::setStrokeAlpha
The ImagickDraw class


Specifies the opacity of stroked object outlines

ImagickDraw::setGravity
ImagickDraw::setStrokeAntialias
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeAlpha

(PECL imagick 2.0.0)

ImagickDraw::setStrokeAlpha — Specifies the opacity of stroked object outlines

Descrição

bool ImagickDraw::setStrokeAlpha ( float $opacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the opacity of stroked object outlines.

Parâmetros

opacity

opacity

Valor Retornado

Não há valor retornado.

ImagickDraw::setGravity
ImagickDraw::setStrokeAntialias
The ImagickDraw class


Controls whether stroked outlines are antialiased

ImagickDraw::setStrokeAlpha
ImagickDraw::setStrokeColor
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeAntialias

(PECL imagick 2.0.0)

ImagickDraw::setStrokeAntialias — Controls whether stroked outlines are antialiased

Descrição

bool ImagickDraw::setStrokeAntialias ( bool $stroke_antialias )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Controls whether stroked outlines are antialiased. Stroked outlines are antialiased by default. When antialiasing is disabled stroked pixels are thresholded to determine if the stroke color or underlying canvas color should be used.

Parâmetros

stroke_antialias

the antialias setting

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeAlpha
ImagickDraw::setStrokeColor
The ImagickDraw class


Sets the color used for stroking object outlines

ImagickDraw::setStrokeAntialias
ImagickDraw::setStrokeDashArray
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeColor

(PECL imagick 2.0.0)

ImagickDraw::setStrokeColor — Sets the color used for stroking object outlines

Descrição

bool ImagickDraw::setStrokeColor ( ImagickPixel $stroke_pixel )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the color used for stroking object outlines.

Parâmetros

stroke_pixel

the stroke color

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeAntialias
ImagickDraw::setStrokeDashArray
The ImagickDraw class


Specifies the pattern of dashes and gaps used to stroke paths

ImagickDraw::setStrokeColor
ImagickDraw::setStrokeDashOffset
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeDashArray

(PECL imagick 2.0.0)

ImagickDraw::setStrokeDashArray — Specifies the pattern of dashes and gaps used to stroke paths

Descrição

bool ImagickDraw::setStrokeDashArray ( array $dashArray )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the pattern of dashes and gaps used to stroke paths. The strokeDashArray represents an array of numbers that specify the lengths of alternating dashes and gaps in pixels. If an odd number of values is provided, then the list of values is repeated to yield an even number of values. To remove an existing dash array, pass a zero number_elements argument and null dash_array. A typical strokeDashArray_ array might contain the members 5 3 2.

Parâmetros

dashArray

array of floats

Valor Retornado

Retorna TRUE em sucesso.

ImagickDraw::setStrokeColor
ImagickDraw::setStrokeDashOffset
The ImagickDraw class


Specifies the offset into the dash pattern to start the dash

ImagickDraw::setStrokeDashArray
ImagickDraw::setStrokeLineCap
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeDashOffset

(PECL imagick 2.0.0)

ImagickDraw::setStrokeDashOffset — Specifies the offset into the dash pattern to start the dash

Descrição

bool ImagickDraw::setStrokeDashOffset ( float $dash_offset )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the offset into the dash pattern to start the dash.

Parâmetros

dash_offset

dash offset

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeDashArray
ImagickDraw::setStrokeLineCap
The ImagickDraw class


Specifies the shape to be used at the end of open subpaths when they are stroked

ImagickDraw::setStrokeDashOffset
ImagickDraw::setStrokeLineJoin
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeLineCap

(PECL imagick 2.0.0)

ImagickDraw::setStrokeLineCap — Specifies the shape to be used at the end of open subpaths when they are stroked

Descrição

bool ImagickDraw::setStrokeLineCap ( int $linecap )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the shape to be used at the end of open subpaths when they are stroked.

Parâmetros

linecap

LINECAP_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeDashOffset
ImagickDraw::setStrokeLineJoin
The ImagickDraw class


Specifies the shape to be used at the corners of paths when they are stroked

ImagickDraw::setStrokeLineCap
ImagickDraw::setStrokeMiterLimit
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeLineJoin

(PECL imagick 2.0.0)

ImagickDraw::setStrokeLineJoin — Specifies the shape to be used at the corners of paths when they are stroked

Descrição

bool ImagickDraw::setStrokeLineJoin ( int $linejoin )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the shape to be used at the corners of paths (or other vector shapes) when they are stroked.

Parâmetros

linejoin

LINEJOIN_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeLineCap
ImagickDraw::setStrokeMiterLimit
The ImagickDraw class


Specifies the miter limit

ImagickDraw::setStrokeLineJoin
ImagickDraw::setStrokeOpacity
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeMiterLimit

(PECL imagick 2.0.0)

ImagickDraw::setStrokeMiterLimit — Specifies the miter limit

Descrição

bool ImagickDraw::setStrokeMiterLimit ( int $miterlimit )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the miter limit. When two line segments meet at a sharp angle and miter joins have been specified for 'lineJoin', it is possible for the miter to extend far beyond the thickness of the line stroking the path. The miterLimit' imposes a limit on the ratio of the miter length to the 'lineWidth'.

Parâmetros

miterlimit

the miter limit

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeLineJoin
ImagickDraw::setStrokeOpacity
The ImagickDraw class


Specifies the opacity of stroked object outlines

ImagickDraw::setStrokeMiterLimit
ImagickDraw::setStrokePatternURL
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeOpacity

(PECL imagick 2.0.0)

ImagickDraw::setStrokeOpacity — Specifies the opacity of stroked object outlines

Descrição

bool ImagickDraw::setStrokeOpacity ( float $stroke_opacity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the opacity of stroked object outlines.

Parâmetros

stroke_opacity

stroke opacity. 1.0 is fully opaque

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeMiterLimit
ImagickDraw::setStrokePatternURL
The ImagickDraw class


Sets the pattern used for stroking object outlines

ImagickDraw::setStrokeOpacity
ImagickDraw::setStrokeWidth
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokePatternURL

(PECL imagick 2.0.0)

ImagickDraw::setStrokePatternURL — Sets the pattern used for stroking object outlines

Descrição

bool ImagickDraw::setStrokePatternURL ( string $stroke_url )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the pattern used for stroking object outlines.

Parâmetros

stroke_url

stroke URL

Valor Retornado

imagick.imagickdraw.return.success;

ImagickDraw::setStrokeOpacity
ImagickDraw::setStrokeWidth
The ImagickDraw class


Sets the width of the stroke used to draw object outlines

ImagickDraw::setStrokePatternURL
ImagickDraw::setTextAlignment
The ImagickDraw class
PHP Manual

ImagickDraw::setStrokeWidth

(PECL imagick 2.0.0)

ImagickDraw::setStrokeWidth — Sets the width of the stroke used to draw object outlines

Descrição

bool ImagickDraw::setStrokeWidth ( float $stroke_width )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the width of the stroke used to draw object outlines.

Parâmetros

stroke_width

stroke width

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokePatternURL
ImagickDraw::setTextAlignment
The ImagickDraw class


Specifies a text alignment

ImagickDraw::setStrokeWidth
ImagickDraw::setTextAntialias
The ImagickDraw class
PHP Manual

ImagickDraw::setTextAlignment

(PECL imagick 2.0.0)

ImagickDraw::setTextAlignment — Specifies a text alignment

Descrição

bool ImagickDraw::setTextAlignment ( int $alignment )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies a text alignment to be applied when annotating with text.

Parâmetros

alignment

ALIGN_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setStrokeWidth
ImagickDraw::setTextAntialias
The ImagickDraw class


Controls whether text is antialiased

ImagickDraw::setTextAlignment
ImagickDraw::setTextDecoration
The ImagickDraw class
PHP Manual

ImagickDraw::setTextAntialias

(PECL imagick 2.0.0)

ImagickDraw::setTextAntialias — Controls whether text is antialiased

Descrição

bool ImagickDraw::setTextAntialias ( bool $antiAlias )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Controls whether text is antialiased. Text is antialiased by default.

Parâmetros

antiAlias

Valor Retornado

Não há valor retornado.

ImagickDraw::setTextAlignment
ImagickDraw::setTextDecoration
The ImagickDraw class


Specifies a decoration

ImagickDraw::setTextAntialias
ImagickDraw::setTextEncoding
The ImagickDraw class
PHP Manual

ImagickDraw::setTextDecoration

(PECL imagick 2.0.0)

ImagickDraw::setTextDecoration — Specifies a decoration

Descrição

bool ImagickDraw::setTextDecoration ( int $decoration )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies a decoration to be applied when annotating with text.

Parâmetros

decoration

DECORATION_ constant

Valor Retornado

Não há valor retornado.

ImagickDraw::setTextAntialias
ImagickDraw::setTextEncoding
The ImagickDraw class


Specifies specifies the text code set

ImagickDraw::setTextDecoration
ImagickDraw::setTextUnderColor
The ImagickDraw class
PHP Manual

ImagickDraw::setTextEncoding

(PECL imagick 2.0.0)

ImagickDraw::setTextEncoding — Specifies specifies the text code set

Descrição

bool ImagickDraw::setTextEncoding ( string $encoding )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies specifies the code set to use for text annotations. The only character encoding which may be specified at this time is "UTF-8" for representing Unicode as a sequence of bytes. Specify an empty string to set text encoding to the system's default. Successful text annotation using Unicode may require fonts designed to support Unicode.

Parâmetros

encoding

the encoding name

Valor Retornado

Não há valor retornado.

ImagickDraw::setTextDecoration
ImagickDraw::setTextUnderColor
The ImagickDraw class


Specifies the color of a background rectangle

ImagickDraw::setTextEncoding
ImagickDraw::setVectorGraphics
The ImagickDraw class
PHP Manual

ImagickDraw::setTextUnderColor

(PECL imagick 2.0.0)

ImagickDraw::setTextUnderColor — Specifies the color of a background rectangle

Descrição

bool ImagickDraw::setTextUnderColor ( ImagickPixel $under_color )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Specifies the color of a background rectangle to place under text annotations.

Parâmetros

under_color

the under color

Valor Retornado

Não há valor retornado.

ImagickDraw::setTextEncoding
ImagickDraw::setVectorGraphics
The ImagickDraw class


Sets the vector graphics

ImagickDraw::setTextUnderColor
ImagickDraw::setViewbox
The ImagickDraw class
PHP Manual

ImagickDraw::setVectorGraphics

(PECL imagick 2.0.0)

ImagickDraw::setVectorGraphics — Sets the vector graphics

Descrição

bool ImagickDraw::setVectorGraphics ( string $xml )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the vector graphics associated with the specified ImagickDraw object. Use this method with ImagickDraw::getVectorGraphics() as a method to persist the vector graphics state.

Parâmetros

xml

xml containing the vector graphics

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ImagickDraw::setTextUnderColor
ImagickDraw::setViewbox
The ImagickDraw class


Sets the overall canvas size

ImagickDraw::setVectorGraphics
ImagickDraw::skewX
The ImagickDraw class
PHP Manual

ImagickDraw::setViewbox

(PECL imagick 2.0.0)

ImagickDraw::setViewbox — Sets the overall canvas size

Descrição

bool ImagickDraw::setViewbox ( int $x1 , int $y1 , int $x2 , int $y2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the overall canvas size to be recorded with the drawing vector data. Usually this will be specified using the same size as the canvas image. When the vector data is saved to SVG or MVG formats, the viewbox is use to specify the size of the canvas image that a viewer will render the vector data on.

Parâmetros

x1

left x coordinate

y1

left y coordinate

x2

right x coordinate

y2

right y coordinate

Valor Retornado

Não há valor retornado.

ImagickDraw::setVectorGraphics
ImagickDraw::skewX
The ImagickDraw class


Skews the current coordinate system in the horizontal direction

ImagickDraw::setViewbox
ImagickDraw::skewY
The ImagickDraw class
PHP Manual

ImagickDraw::skewX

(PECL imagick 2.0.0)

ImagickDraw::skewX — Skews the current coordinate system in the horizontal direction

Descrição

bool ImagickDraw::skewX ( float $degrees )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Skews the current coordinate system in the horizontal direction.

Parâmetros

degrees

degrees to skew

Valor Retornado

Não há valor retornado.

ImagickDraw::setViewbox
ImagickDraw::skewY
The ImagickDraw class


Skews the current coordinate system in the vertical direction

ImagickDraw::skewX
ImagickDraw::translate
The ImagickDraw class
PHP Manual

ImagickDraw::skewY

(PECL imagick 2.0.0)

ImagickDraw::skewY — Skews the current coordinate system in the vertical direction

Descrição

bool ImagickDraw::skewY ( float $degrees )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Skews the current coordinate system in the vertical direction.

Parâmetros

degrees

degrees to skew

Valor Retornado

Não há valor retornado.

ImagickDraw::skewX
ImagickDraw::translate
The ImagickDraw class


Applies a translation to the current coordinate system

ImagickDraw::skewY
The ImagickPixel class
The ImagickDraw class
PHP Manual

ImagickDraw::translate

(PECL imagick 2.0.0)

ImagickDraw::translate — Applies a translation to the current coordinate system

Descrição

bool ImagickDraw::translate ( float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Applies a translation to the current coordinate system which moves the coordinate system origin to the specified coordinate.

Parâmetros

x

horizontal translation

y

vertical translation

Valor Retornado

Não há valor retornado.

ImagickDraw::skewY
The ImagickPixel class
The ImagickDraw class


The ImagickPixel class

Sinopse da classe

ImagickPixel {
bool clear ( void )
ImagickPixel __construct ([ string $color ] )
bool destroy ( void )
array getColor ([ bool $normalized = false ] )
string getColorAsString ( void )
int getColorCount ( void )
float getColorValue ( int $color )
array getHSL ( void )
bool isSimilar ( ImagickPixel $color , float $fuzz )
bool setColor ( string $color )
bool setColorValue ( int $color , float $value )
bool setHSL ( float $hue , float $saturation , float $luminosity )
}

Índice

  • ImagickPixel::clear — Clears resources associated with this object
  • ImagickPixel::__construct — The ImagickPixel constructor
  • ImagickPixel::destroy — Deallocates resources associated with this object
  • ImagickPixel::getColor — Returns the color
  • ImagickPixel::getColorAsString — Returns the color as a string
  • ImagickPixel::getColorCount — Returns the color count associated with this color
  • ImagickPixel::getColorValue — Gets the normalized value of the provided color channel
  • ImagickPixel::getHSL — Returns the normalized HSL color of the ImagickPixel object
  • ImagickPixel::isSimilar — Check the distance between this color and another
  • ImagickPixel::setColor — Sets the color
  • ImagickPixel::setColorValue — Sets the normalized value of one of the channels
  • ImagickPixel::setHSL — Sets the normalized HSL color
ImagickDraw::translate
ImagickPixel::clear
ImageMagick


Clears resources associated with this object

The ImagickPixel class
ImagickPixel::__construct
The ImagickPixel class
PHP Manual

ImagickPixel::clear

(PECL imagick 2.0.0)

ImagickPixel::clear — Clears resources associated with this object

Descrição

bool ImagickPixel::clear ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clears the ImagickPixel object, leaving it in a fresh state. This also unsets any color associated with the object.

Valor Retornado

Retorna TRUE em sucesso.

The ImagickPixel class
ImagickPixel::__construct
The ImagickPixel class


The ImagickPixel constructor

ImagickPixel::clear
ImagickPixel::destroy
The ImagickPixel class
PHP Manual

ImagickPixel::__construct

(PECL imagick 2.0.0)

ImagickPixel::__construct — The ImagickPixel constructor

Descrição

ImagickPixel ImagickPixel::__construct ([ string $color ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Constructs an ImagickPixel object. If a color is specified, the object is constructed and then initialised with that color before being returned.

Parâmetros

color

The optional color string to use as the initial value of this object.

Valor Retornado

Returns an ImagickPixel object on success, throwing ImagickPixelException on failure.

ImagickPixel::clear
ImagickPixel::destroy
The ImagickPixel class


Deallocates resources associated with this object

ImagickPixel::__construct
ImagickPixel::getColor
The ImagickPixel class
PHP Manual

ImagickPixel::destroy

(PECL imagick 2.0.0)

ImagickPixel::destroy — Deallocates resources associated with this object

Descrição

bool ImagickPixel::destroy ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Deallocates any resources used by the ImagickPixel object, and unsets any associated color. The object should not be used after the destroy function has been called.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixel::__construct
ImagickPixel::getColor
The ImagickPixel class


Returns the color

ImagickPixel::destroy
ImagickPixel::getColorAsString
The ImagickPixel class
PHP Manual

ImagickPixel::getColor

(PECL imagick 2.0.0)

ImagickPixel::getColor — Returns the color

Descrição

array ImagickPixel::getColor ([ bool $normalized = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color described by the ImagickPixel object, as an array. If the color has an opacity channel set, this is provided as a fourth value in the list.

Parâmetros

normalized

Normalize the color values

Valor Retornado

An array of channel values, each normalized if TRUE is given as param. Throws ImagickPixelException on error.

ImagickPixel::destroy
ImagickPixel::getColorAsString
The ImagickPixel class


Returns the color as a string

ImagickPixel::getColor
ImagickPixel::getColorCount
The ImagickPixel class
PHP Manual

ImagickPixel::getColorAsString

(PECL imagick 2.1.0)

ImagickPixel::getColorAsString — Returns the color as a string

Descrição

string ImagickPixel::getColorAsString ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color of the ImagickPixel object as a string.

Parâmetros

Valor Retornado

Returns the color of the ImagickPixel object as a string.

ImagickPixel::getColor
ImagickPixel::getColorCount
The ImagickPixel class


Returns the color count associated with this color

ImagickPixel::getColorAsString
ImagickPixel::getColorValue
The ImagickPixel class
PHP Manual

ImagickPixel::getColorCount

(PECL imagick 2.0.0)

ImagickPixel::getColorCount — Returns the color count associated with this color

Descrição

int ImagickPixel::getColorCount ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the color count associated with this color.

Valor Retornado

Returns the color count as an integer on success, throws ImagickPixelException on failure.

ImagickPixel::getColorAsString
ImagickPixel::getColorValue
The ImagickPixel class


Gets the normalized value of the provided color channel

ImagickPixel::getColorCount
ImagickPixel::getHSL
The ImagickPixel class
PHP Manual

ImagickPixel::getColorValue

(PECL imagick 2.0.0)

ImagickPixel::getColorValue — Gets the normalized value of the provided color channel

Descrição

float ImagickPixel::getColorValue ( int $color )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Retrieves the value of the color channel specified, as a floating-point number between 0 and 1.

Parâmetros

color

The channel to check, specified as one of the Imagick channel constants.

Valor Retornado

The value of the channel, as a normalized floating-point number, throwing ImagickPixelException on error.

ImagickPixel::getColorCount
ImagickPixel::getHSL
The ImagickPixel class


Returns the normalized HSL color of the ImagickPixel object

ImagickPixel::getColorValue
ImagickPixel::isSimilar
The ImagickPixel class
PHP Manual

ImagickPixel::getHSL

(PECL imagick 2.0.0)

ImagickPixel::getHSL — Returns the normalized HSL color of the ImagickPixel object

Descrição

array ImagickPixel::getHSL ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the normalized HSL color described by the ImagickPixel object, with each of the three values as floating point numbers between 0.0 and 1.0.

Valor Retornado

Returns the HSL value in an array with the keys "hue", "saturation", and "luminosity". Throws ImagickPixelException on failure.

Notas

Nota:

Available with ImageMagick library version 6.2.9 and higher.

ImagickPixel::getColorValue
ImagickPixel::isSimilar
The ImagickPixel class


Check the distance between this color and another

ImagickPixel::getHSL
ImagickPixel::setColor
The ImagickPixel class
PHP Manual

ImagickPixel::isSimilar

(PECL imagick 2.0.0)

ImagickPixel::isSimilar — Check the distance between this color and another

Descrição

bool ImagickPixel::isSimilar ( ImagickPixel $color , float $fuzz )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Checks the distance between the color described by this ImagickPixel object and that of the provided object, by plotting their RGB values on the color cube. If the distance between the two points is less than the fuzz value given, the colors are similar.

Parâmetros

color

The ImagickPixel object to compare this object against.

fuzz

The maximum distance within which to consider these colors as similar. The theoretical maximum for this value is the square root of three (1.732).

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixel::getHSL
ImagickPixel::setColor
The ImagickPixel class


Sets the color

ImagickPixel::isSimilar
ImagickPixel::setColorValue
The ImagickPixel class
PHP Manual

ImagickPixel::setColor

(PECL imagick 2.0.0)

ImagickPixel::setColor — Sets the color

Descrição

bool ImagickPixel::setColor ( string $color )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the color described by the ImagickPixel object, with a string (e.g. "blue", "#0000ff", "rgb(0,0,255)", "cmyk(100,100,100,10)", etc.).

Parâmetros

color

The color definition to use in order to initialise the ImagickPixel object.

Valor Retornado

Returns TRUE if the specified color was set, FALSE otherwise.

ImagickPixel::isSimilar
ImagickPixel::setColorValue
The ImagickPixel class


Sets the normalized value of one of the channels

ImagickPixel::setColor
ImagickPixel::setHSL
The ImagickPixel class
PHP Manual

ImagickPixel::setColorValue

(PECL imagick 2.0.0)

ImagickPixel::setColorValue — Sets the normalized value of one of the channels

Descrição

bool ImagickPixel::setColorValue ( int $color , float $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the value of the specified channel of this object to the provided value, which should be between 0 and 1. This function can be used to provide an opacity channel to an ImagickPixel object.

Parâmetros

color

One of the Imagick channel color constants.

value

The value to set this channel to, ranging from 0 to 1.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixel::setColor
ImagickPixel::setHSL
The ImagickPixel class


Sets the normalized HSL color

ImagickPixel::setColorValue
The ImagickPixelIterator class
The ImagickPixel class
PHP Manual

ImagickPixel::setHSL

(PECL imagick 2.0.0)

ImagickPixel::setHSL — Sets the normalized HSL color

Descrição

bool ImagickPixel::setHSL ( float $hue , float $saturation , float $luminosity )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the color described by the ImagickPixel object using normalized values for hue, saturation and luminosity.

Parâmetros

hue

The normalized value for hue, described as a fractional arc (between 0 and 1) of the hue circle, where the zero value is red.

saturation

The normalized value for saturation, with 1 as full saturation.

luminosity

The normalized value for luminosity, on a scale from black at 0 to white at 1, with the full HS value at 0.5 luminosity.

Valor Retornado

Retorna TRUE em sucesso.

Notas

Nota:

Available with ImageMagick library version 6.2.9 and higher.

ImagickPixel::setColorValue
The ImagickPixelIterator class
The ImagickPixel class


The ImagickPixelIterator class

Sinopse da classe

ImagickPixelIterator {
bool clear ( void )
ImagickPixelIterator __construct ( Imagick $wand )
bool destroy ( void )
array getCurrentIteratorRow ( void )
int getIteratorRow ( void )
array getNextIteratorRow ( void )
array getPreviousIteratorRow ( void )
bool newPixelIterator ( Imagick $wand )
bool newPixelRegionIterator ( Imagick $wand , int $x , int $y , int $columns , int $rows )
bool resetIterator ( void )
bool setIteratorFirstRow ( void )
bool setIteratorLastRow ( void )
bool setIteratorRow ( int $row )
bool syncIterator ( void )
}

Índice

  • ImagickPixelIterator::clear — Clear resources associated with a PixelIterator
  • ImagickPixelIterator::__construct — The ImagickPixelIterator constructor
  • ImagickPixelIterator::destroy — Deallocates resources associated with a PixelIterator
  • ImagickPixelIterator::getCurrentIteratorRow — Returns the current row of ImagickPixel objects
  • ImagickPixelIterator::getIteratorRow — Returns the current pixel iterator row
  • ImagickPixelIterator::getNextIteratorRow — Returns the next row of the pixel iterator
  • ImagickPixelIterator::getPreviousIteratorRow — Returns the previous row
  • ImagickPixelIterator::newPixelIterator — Returns a new pixel iterator
  • ImagickPixelIterator::newPixelRegionIterator — Returns a new pixel iterator
  • ImagickPixelIterator::resetIterator — Resets the pixel iterator
  • ImagickPixelIterator::setIteratorFirstRow — Sets the pixel iterator to the first pixel row
  • ImagickPixelIterator::setIteratorLastRow — Sets the pixel iterator to the last pixel row
  • ImagickPixelIterator::setIteratorRow — Set the pixel iterator row
  • ImagickPixelIterator::syncIterator — Syncs the pixel iterator
ImagickPixel::setHSL
ImagickPixelIterator::clear
ImageMagick


Clear resources associated with a PixelIterator

The ImagickPixelIterator class
ImagickPixelIterator::__construct
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::clear

(PECL imagick 2.0.0)

ImagickPixelIterator::clear — Clear resources associated with a PixelIterator

Descrição

bool ImagickPixelIterator::clear ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Clear resources associated with a PixelIterator.

Valor Retornado

Retorna TRUE em sucesso.

The ImagickPixelIterator class
ImagickPixelIterator::__construct
The ImagickPixelIterator class


The ImagickPixelIterator constructor

ImagickPixelIterator::clear
ImagickPixelIterator::destroy
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::__construct

(PECL imagick 2.0.0)

ImagickPixelIterator::__construct — The ImagickPixelIterator constructor

Descrição

ImagickPixelIterator ImagickPixelIterator::__construct ( Imagick $wand )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

The ImagickPixelIterator constructor

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::clear
ImagickPixelIterator::destroy
The ImagickPixelIterator class


Deallocates resources associated with a PixelIterator

ImagickPixelIterator::__construct
ImagickPixelIterator::getCurrentIteratorRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::destroy

(PECL imagick 2.0.0)

ImagickPixelIterator::destroy — Deallocates resources associated with a PixelIterator

Descrição

bool ImagickPixelIterator::destroy ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Deallocates resources associated with a PixelIterator.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::__construct
ImagickPixelIterator::getCurrentIteratorRow
The ImagickPixelIterator class


Returns the current row of ImagickPixel objects

ImagickPixelIterator::destroy
ImagickPixelIterator::getIteratorRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::getCurrentIteratorRow

(PECL imagick 2.0.0)

ImagickPixelIterator::getCurrentIteratorRow — Returns the current row of ImagickPixel objects

Descrição

array ImagickPixelIterator::getCurrentIteratorRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the current row as an array of ImagickPixel objects from the pixel iterator.

Valor Retornado

Returns a row as an array of ImagickPixel objects that can themselves be iterated.

ImagickPixelIterator::destroy
ImagickPixelIterator::getIteratorRow
The ImagickPixelIterator class


Returns the current pixel iterator row

ImagickPixelIterator::getCurrentIteratorRow
ImagickPixelIterator::getNextIteratorRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::getIteratorRow

(PECL imagick 2.0.0)

ImagickPixelIterator::getIteratorRow — Returns the current pixel iterator row

Descrição

int ImagickPixelIterator::getIteratorRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the current pixel iterator row.

Valor Retornado

Returns the integer offset of the row, throwing ImagickPixelIteratorException on error.

ImagickPixelIterator::getCurrentIteratorRow
ImagickPixelIterator::getNextIteratorRow
The ImagickPixelIterator class


Returns the next row of the pixel iterator

ImagickPixelIterator::getIteratorRow
ImagickPixelIterator::getPreviousIteratorRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::getNextIteratorRow

(PECL imagick 2.0.0)

ImagickPixelIterator::getNextIteratorRow — Returns the next row of the pixel iterator

Descrição

array ImagickPixelIterator::getNextIteratorRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the next row as an array of pixel wands from the pixel iterator.

Valor Retornado

Returns the next row as an array of ImagickPixel objects, throwing ImagickPixelIteratorException on error.

ImagickPixelIterator::getIteratorRow
ImagickPixelIterator::getPreviousIteratorRow
The ImagickPixelIterator class


Returns the previous row

ImagickPixelIterator::getNextIteratorRow
ImagickPixelIterator::newPixelIterator
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::getPreviousIteratorRow

(PECL imagick 2.0.0)

ImagickPixelIterator::getPreviousIteratorRow — Returns the previous row

Descrição

array ImagickPixelIterator::getPreviousIteratorRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the previous row as an array of pixel wands from the pixel iterator.

Valor Retornado

Returns the previous row as an array of ImagickPixelWand objects from the ImagickPixelIterator, throwing ImagickPixelIteratorException on error.

ImagickPixelIterator::getNextIteratorRow
ImagickPixelIterator::newPixelIterator
The ImagickPixelIterator class


Returns a new pixel iterator

ImagickPixelIterator::getPreviousIteratorRow
ImagickPixelIterator::newPixelRegionIterator
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::newPixelIterator

(PECL imagick 2.0.0)

ImagickPixelIterator::newPixelIterator — Returns a new pixel iterator

Descrição

bool ImagickPixelIterator::newPixelIterator ( Imagick $wand )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a new pixel iterator.

Valor Retornado

Retorna TRUE em sucesso. Throwing ImagickPixelIteratorException.

ImagickPixelIterator::getPreviousIteratorRow
ImagickPixelIterator::newPixelRegionIterator
The ImagickPixelIterator class


Returns a new pixel iterator

ImagickPixelIterator::newPixelIterator
ImagickPixelIterator::resetIterator
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::newPixelRegionIterator

(PECL imagick 2.0.0)

ImagickPixelIterator::newPixelRegionIterator — Returns a new pixel iterator

Descrição

bool ImagickPixelIterator::newPixelRegionIterator ( Imagick $wand , int $x , int $y , int $columns , int $rows )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a new pixel iterator.

Parâmetros

wand

x

y

columns

rows

Valor Retornado

Returns a new ImagickPixelIterator on success; on failure, throws ImagickPixelIteratorException.

ImagickPixelIterator::newPixelIterator
ImagickPixelIterator::resetIterator
The ImagickPixelIterator class


Resets the pixel iterator

ImagickPixelIterator::newPixelRegionIterator
ImagickPixelIterator::setIteratorFirstRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::resetIterator

(PECL imagick 2.0.0)

ImagickPixelIterator::resetIterator — Resets the pixel iterator

Descrição

bool ImagickPixelIterator::resetIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Resets the pixel iterator. Use it in conjunction with ImagickPixelIterator::getNextIteratorRow() to iterate over all the pixels in a pixel container.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::newPixelRegionIterator
ImagickPixelIterator::setIteratorFirstRow
The ImagickPixelIterator class


Sets the pixel iterator to the first pixel row

ImagickPixelIterator::resetIterator
ImagickPixelIterator::setIteratorLastRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::setIteratorFirstRow

(PECL imagick 2.0.0)

ImagickPixelIterator::setIteratorFirstRow — Sets the pixel iterator to the first pixel row

Descrição

bool ImagickPixelIterator::setIteratorFirstRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the pixel iterator to the first pixel row.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::resetIterator
ImagickPixelIterator::setIteratorLastRow
The ImagickPixelIterator class


Sets the pixel iterator to the last pixel row

ImagickPixelIterator::setIteratorFirstRow
ImagickPixelIterator::setIteratorRow
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::setIteratorLastRow

(PECL imagick 2.0.0)

ImagickPixelIterator::setIteratorLastRow — Sets the pixel iterator to the last pixel row

Descrição

bool ImagickPixelIterator::setIteratorLastRow ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the pixel iterator to the last pixel row.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::setIteratorFirstRow
ImagickPixelIterator::setIteratorRow
The ImagickPixelIterator class


Set the pixel iterator row

ImagickPixelIterator::setIteratorLastRow
ImagickPixelIterator::syncIterator
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::setIteratorRow

(PECL imagick 2.0.0)

ImagickPixelIterator::setIteratorRow — Set the pixel iterator row

Descrição

bool ImagickPixelIterator::setIteratorRow ( int $row )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Set the pixel iterator row.

Parâmetros

row

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::setIteratorLastRow
ImagickPixelIterator::syncIterator
The ImagickPixelIterator class


Syncs the pixel iterator

ImagickPixelIterator::setIteratorRow
Gmagick
The ImagickPixelIterator class
PHP Manual

ImagickPixelIterator::syncIterator

(PECL imagick 2.0.0)

ImagickPixelIterator::syncIterator — Syncs the pixel iterator

Descrição

bool ImagickPixelIterator::syncIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Syncs the pixel iterator.

Valor Retornado

Retorna TRUE em sucesso.

ImagickPixelIterator::setIteratorRow
Gmagick
The ImagickPixelIterator class


Gmagick

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
  • Constantes pré-definidas
  • Exemplos
  • Gmagick — The Gmagick class
    • Gmagick::addimage — Adds new image to Gmagick object image list
    • Gmagick::addnoiseimage — Adds random noise to the image
    • Gmagick::annotateimage — Annotates an image with text
    • Gmagick::blurimage — Adds blur filter to image
    • Gmagick::borderimage — Surrounds the image with a border
    • Gmagick::charcoalimage — Simulates a charcoal drawing
    • Gmagick::chopimage — Removes a region of an image and trims
    • Gmagick::clear — Clears all resources associated to Gmagick object
    • Gmagick::commentimage — Adds a comment to your image
    • Gmagick::compositeimage — Composite one image onto another
    • Gmagick::__construct — The Gmagick constructor
    • Gmagick::cropimage — Extracts a region of the image
    • Gmagick::cropthumbnailimage — Creates a crop thumbnail
    • Gmagick::current — The current purpose
    • Gmagick::cyclecolormapimage — Displaces an image's colormap
    • Gmagick::deconstructimages — Returns certain pixel differences between images
    • Gmagick::despeckleimage — The despeckleimage purpose
    • Gmagick::destroy — The destroy purpose
    • Gmagick::drawimage — Renders the GmagickDraw object on the current image
    • Gmagick::edgeimage — Enhance edges within the image
    • Gmagick::embossimage — Returns a grayscale image with a three-dimensional effect
    • Gmagick::enhanceimage — Improves the quality of a noisy image
    • Gmagick::equalizeimage — Equalizes the image histogram
    • Gmagick::flipimage — Creates a vertical mirror image
    • Gmagick::flopimage — The flopimage purpose
    • Gmagick::frameimage — Adds a simulated three-dimensional border
    • Gmagick::gammaimage — Gamma-corrects an image
    • Gmagick::getcopyright — Returns the GraphicsMagick API copyright as a string
    • Gmagick::getfilename — The filename associated with an image sequence
    • Gmagick::getimagebackgroundcolor — Returns the image background color
    • Gmagick::getimageblueprimary — Returns the chromaticy blue primary point
    • Gmagick::getimagebordercolor — Returns the image border color
    • Gmagick::getimagechanneldepth — Gets the depth for a particular image channel
    • Gmagick::getimagecolors — Returns the color of the specified colormap index
    • Gmagick::getimagecolorspace — Gets the image colorspace
    • Gmagick::getimagecompose — Returns the composite operator associated with the image
    • Gmagick::getimagedelay — Gets the image delay
    • Gmagick::getimagedepth — Gets the depth of the image
    • Gmagick::getimagedispose — Gets the image disposal method
    • Gmagick::getimageextrema — Gets the extrema for the image
    • Gmagick::getimagefilename — Returns the filename of a particular image in a sequence
    • Gmagick::getimageformat — Returns the format of a particular image in a sequence
    • Gmagick::getimagegamma — Gets the image gamma
    • Gmagick::getimagegreenprimary — Returns the chromaticy green primary point
    • Gmagick::getimageheight — Returns the image height
    • Gmagick::getimagehistogram — Gets the image histogram
    • Gmagick::getimageindex — Gets the index of the current active image
    • Gmagick::getimageinterlacescheme — Gets the image interlace scheme
    • Gmagick::getimageiterations — Gets the image iterations
    • Gmagick::getimagematte — Return if the image has a matte channel
    • Gmagick::getimagemattecolor — Returns the image matte color
    • Gmagick::getimageprofile — Returns the named image profile.
    • Gmagick::getimageredprimary — Returns the chromaticity red primary point
    • Gmagick::getimagerenderingintent — Gets the image rendering intent
    • Gmagick::getimageresolution — Gets the image X and Y resolution
    • Gmagick::getimagescene — Gets the image scene
    • Gmagick::getimagesignature — Generates an SHA-256 message digest
    • Gmagick::getimagetype — Gets the potential image type.
    • Gmagick::getimageunits — Gets the image units of resolution
    • Gmagick::getimagewhitepoint — Returns the chromaticity white point
    • Gmagick::getimagewidth — Returns the width of the image
    • Gmagick::getpackagename — Returns the GraphicsMagick package name.
    • Gmagick::getquantumdepth — Returns the Gmagick quantum depth as a string.
    • Gmagick::getreleasedate — Returns the GraphicsMagick release date as a string.
    • Gmagick::getsamplingfactors — Gets the horizontal and vertical sampling factor.
    • Gmagick::getsize — Returns the size associated with the Gmagick object
    • Gmagick::getversion — Returns the GraphicsMagick API version
    • Gmagick::hasnextimage — Checks if the object has more images
    • Gmagick::haspreviousimage — Checks if the object has a previous image
    • Gmagick::implodeimage — Creates a new image as a copy
    • Gmagick::labelimage — Adds a label to an image.
    • Gmagick::levelimage — Adjusts the levels of an image
    • Gmagick::magnifyimage — Scales an image proportionally 2x
    • Gmagick::mapimage — Replaces the colors of an image with the closest color from a reference image.
    • Gmagick::medianfilterimage — Applies a digital filter
    • Gmagick::minifyimage — Scales an image proportionally to half its size
    • Gmagick::modulateimage — Control the brightness, saturation, and hue
    • Gmagick::motionblurimage — Simulates motion blur
    • Gmagick::newimage — Creates a new image
    • Gmagick::nextimage — Moves to the next image
    • Gmagick::normalizeimage — Enhances the contrast of a color image
    • Gmagick::oilpaintimage — Simulates an oil painting
    • Gmagick::previousimage — Move to the previous image in the object
    • Gmagick::profileimage — Adds or removes a profile from an image
    • Gmagick::quantizeimage — Analyzes the colors within a reference image
    • Gmagick::quantizeimages — The quantizeimages purpose
    • Gmagick::queryfontmetrics — Returns an array representing the font metrics
    • Gmagick::queryfonts — Returns the configured fonts
    • Gmagick::queryformats — Returns formats supported by Gmagick.
    • Gmagick::radialblurimage — Radial blurs an image
    • Gmagick::raiseimage — Creates a simulated 3d button-like effect
    • Gmagick::read — Reads image from filename
    • Gmagick::readimage — Reads image from filename
    • Gmagick::readimageblob — Reads image from a binary string
    • Gmagick::readimagefile — The readimagefile purpose
    • Gmagick::reducenoiseimage — Smooths the contours of an image
    • Gmagick::removeimage — Removes an image from the image list
    • Gmagick::removeimageprofile — Removes the named image profile and returns it
    • Gmagick::resampleimage — Resample image to desired resolution
    • Gmagick::resizeimage — Scales an image
    • Gmagick::rollimage — Offsets an image
    • Gmagick::rotateimage — Rotates an image
    • Gmagick::scaleimage — Scales the size of an image
    • Gmagick::separateimagechannel — Separates a channel from the image
    • Gmagick::setfilename — Sets the filename before you read or write the image
    • Gmagick::setimagebackgroundcolor — Sets the image background color.
    • Gmagick::setimageblueprimary — Sets the image chromaticity blue primary point.
    • Gmagick::setimagebordercolor — Sets the image border color.
    • Gmagick::setimagechanneldepth — Sets the depth of a particular image channel
    • Gmagick::setimagecolorspace — Sets the image colorspace
    • Gmagick::setimagecompose — Sets the image composite operator
    • Gmagick::setimagedelay — Sets the image delay
    • Gmagick::setimagedepth — Sets the image depth
    • Gmagick::setimagedispose — Sets the image disposal method
    • Gmagick::setimagefilename — Sets the filename of a particular image in a sequence
    • Gmagick::setimageformat — Sets the format of a particular image
    • Gmagick::setimagegamma — Sets the image gamma
    • Gmagick::setimagegreenprimary — TSets the image chromaticity green primary point.
    • Gmagick::setimageindex — Set the iterator to the position in the image list specified with the index parameter
    • Gmagick::setimageinterlacescheme — Sets the interlace scheme of the image.
    • Gmagick::setimageiterations — Sets the image iterations.
    • Gmagick::setimageprofile — Adds a named profile to the Gmagick object
    • Gmagick::setimageredprimary — Sets the image chromaticity red primary point.
    • Gmagick::setimagerenderingintent — Sets the image rendering intent
    • Gmagick::setimageresolution — Sets the image resolution
    • Gmagick::setimagescene — Sets the image scene
    • Gmagick::setimagetype — Sets the image type
    • Gmagick::setimageunits — Sets the image units of resolution.
    • Gmagick::setimagewhitepoint — Sets the image chromaticity white point.
    • Gmagick::setsamplingfactors — Sets the image sampling factors.
    • Gmagick::setsize — Sets the size of the Gmagick object
    • Gmagick::shearimage — Creating a parallelogram
    • Gmagick::solarizeimage — Applies a solarizing effect to the image
    • Gmagick::spreadimage — Randomly displaces each pixel in a block
    • Gmagick::stripimage — Strips an image of all profiles and comments
    • Gmagick::swirlimage — Swirls the pixels about the center of the image
    • Gmagick::thumbnailimage — Changes the size of an image
    • Gmagick::trimimage — Remove edges from the image
    • Gmagick::write — Writes an image to the specified filename
    • Gmagick::writeimage — Writes an image to the specified filename
  • GmagickDraw — The GmagickDraw class
    • GmagickDraw::annotate — Draws text on the image
    • GmagickDraw::arc — Draws an arc
    • GmagickDraw::bezier — Draws a bezier curve
    • GmagickDraw::ellipse — Draws an ellipse on the image
    • GmagickDraw::getfillcolor — Returns the fill color
    • GmagickDraw::getfillopacity — Returns the opacity used when drawing
    • GmagickDraw::getfont — Returns the font
    • GmagickDraw::getfontsize — Returns the font pointsize
    • GmagickDraw::getfontstyle — Returns the font style
    • GmagickDraw::getfontweight — Returns the font weight
    • GmagickDraw::getstrokecolor — Returns the color used for stroking object outlines
    • GmagickDraw::getstrokeopacity — Returns the opacity of stroked object outlines
    • GmagickDraw::getstrokewidth — Returns the width of the stroke used to draw object outlines
    • GmagickDraw::gettextdecoration — Returns the text decoration
    • GmagickDraw::gettextencoding — Returns the code set used for text annotations
    • GmagickDraw::line — The line purpose
    • GmagickDraw::point — Draws a point
    • GmagickDraw::polygon — Draws a polygon
    • GmagickDraw::polyline — Draws a polyline
    • GmagickDraw::rectangle — Draws a rectangle
    • GmagickDraw::rotate — Applies the specified rotation to the current coordinate space
    • GmagickDraw::roundrectangle — Draws a rounded rectangle
    • GmagickDraw::scale — Adjusts the scaling factor
    • GmagickDraw::setfillcolor — Sets the fill color to be used for drawing filled objects.
    • GmagickDraw::setfillopacity — The setfillopacity purpose
    • GmagickDraw::setfont — Sets the fully-specified font to use when annotating with text.
    • GmagickDraw::setfontsize — Sets the font pointsize to use when annotating with text.
    • GmagickDraw::setfontstyle — Sets the font style to use when annotating with text
    • GmagickDraw::setfontweight — Sets the font weight
    • GmagickDraw::setstrokecolor — Sets the color used for stroking object outlines.
    • GmagickDraw::setstrokeopacity — Specifies the opacity of stroked object outlines.
    • GmagickDraw::setstrokewidth — Sets the width of the stroke used to draw object outlines.
    • GmagickDraw::settextdecoration — Specifies a decoration
    • GmagickDraw::settextencoding — Specifies specifies the text code set
  • GmagickPixel — The GmagickPixel class
    • GmagickPixel::__construct — The GmagickPixel constructor
    • GmagickPixel::getcolor — Returns the color
    • GmagickPixel::getcolorcount — Returns the color count associated with this color
    • GmagickPixel::getcolorvalue — Gets the normalized value of the provided color channel
    • GmagickPixel::setcolor — Sets the color
    • GmagickPixel::setcolorvalue — Sets the normalized value of one of the channels
ImagickPixelIterator::syncIterator
Introdução
Processamento de Imagem e Geração


Introdução

Gmagick is a php extension to create, modify and obtain meta information of images using the GraphicsMagick API.

GraphicsMagick prides itself as the swiss army knife of image processing. It works with over 88 major formats including important formats like DPX, GIF, JPEG, JPEG-2000, PNG, PDF, PNM, and TIFF.

Gmagick consists of a main Gmagick class, a GmagickDraw class which is in effect a drawing wand and a GmagickPixel class of which instances represent a single pixel of an image (color, opacity).

Gmagick
Instalação/Configuração
Gmagick


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
Introdução
Dependências
Gmagick


Dependências

This extension works best with GraphicsMagick version 1.4+ and PHP 5.1.3+. Gmagick should work with earlier versions up to GraphicsMagick 1.2.6 but some features and formats are not supported for these versions. Windows version of GraphicsMagick is available from the GraphicsMagick website. To read about the difference between ImageMagick and GraphicsMagick, check this out: » FAQ .

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/gmagick.

Nota: The official name of this extension is gmagick.

For Windows, the build of the Gmagick extension is available » here

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Instalação
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Colortype constants
Gmagick::COLOR_BLACK (integer)
Black
Gmagick::COLOR_BLUE (integer)
Blue
Gmagick::COLOR_CYAN (integer)
Cyan
Gmagick::COLOR_GREEN (integer)
Green
Gmagick::COLOR_RED (integer)
Red
Gmagick::COLOR_YELLOW (integer)
Yellow
Gmagick::COLOR_MAGENTA (integer)
Magenta
Gmagick::COLOR_OPACITY (integer)
Opacity
Gmagick::COLOR_ALPHA (integer)
Alpha
Gmagick::COLOR_FUZZ (integer)
Fuzz
Composite Operator Constants
Gmagick::COMPOSITE_DEFAULT (integer)
The default composite operator
Gmagick::COMPOSITE_UNDEFINED (integer)
Undefined composite operator
Gmagick::COMPOSITE_NO (integer)
No composite operator defined
Gmagick::COMPOSITE_ADD (integer)
The result of image + image
Gmagick::COMPOSITE_ATOP (integer)
The result is the same shape as image, with composite image obscuring image where the image shapes overlap
Gmagick::COMPOSITE_BLEND (integer)
Blends the image
Gmagick::COMPOSITE_BUMPMAP (integer)
The same as COMPOSITE_MULTIPLY, except the source is converted to grayscale first.
Gmagick::COMPOSITE_CLEAR (integer)
Makes the target image transparent
Gmagick::COMPOSITE_COLORBURN (integer)
Darkens the destination image to reflect the source image
Gmagick::COMPOSITE_COLORDODGE (integer)
Brightens the destination image to reflect the source image
Gmagick::COMPOSITE_COLORIZE (integer)
Colorizes the target image using the composite image
Gmagick::COMPOSITE_COPYBLACK (integer)
Copies black from the source to target
Gmagick::COMPOSITE_COPYBLUE (integer)
Copies blue from the source to target
Gmagick::COMPOSITE_COPY (integer)
Copies the source image on the target image
Gmagick::COMPOSITE_COPYCYAN (integer)
Copies cyan from the source to target
Gmagick::COMPOSITE_COPYGREEN (integer)
Copies green from the source to target
Gmagick::COMPOSITE_COPYMAGENTA (integer)
Copies magenta from the source to target
Gmagick::COMPOSITE_COPYOPACITY (integer)
Copies opacity from the source to target
Gmagick::COMPOSITE_COPYRED (integer)
Copies red from the source to target
Gmagick::COMPOSITE_COPYYELLOW (integer)
Copies yellow from the source to target
Gmagick::COMPOSITE_DARKEN (integer)
Darkens the target image
Gmagick::COMPOSITE_DSTATOP (integer)
The part of the destination lying inside of the source is composited over the source and replaces the destination
Gmagick::COMPOSITE_DST (integer)
The target is left untouched
Gmagick::COMPOSITE_DSTIN (integer)
The parts inside the source replace the target
Gmagick::COMPOSITE_DSTOUT (integer)
The parts outside the source replace the target
Gmagick::COMPOSITE_DSTOVER (integer)
Target replaces the source
Gmagick::COMPOSITE_DIFFERENCE (integer)
Subtracts the darker of the two constituent colors from the lighter
Gmagick::COMPOSITE_DISPLACE (integer)
Shifts target image pixels as defined by the source
Gmagick::COMPOSITE_DISSOLVE (integer)
Dissolves the source in to the target
Gmagick::COMPOSITE_EXCLUSION (integer)
Produces an effect similar to that of Gmagick::COMPOSITE_DIFFERENCE, but appears as lower contrast
Gmagick::COMPOSITE_HARDLIGHT (integer)
Multiplies or screens the colors, dependent on the source color value
Gmagick::COMPOSITE_HUE (integer)
Modifies the hue of the target as defined by source
Gmagick::COMPOSITE_IN (integer)
Composites source into the target
Gmagick::COMPOSITE_LIGHTEN (integer)
Lightens the target as defined by source
Gmagick::COMPOSITE_LUMINIZE (integer)
Luminizes the target as defined by source
Gmagick::COMPOSITE_MINUS (integer)
Substracts the source from the target
Gmagick::COMPOSITE_MODULATE (integer)
Modulates the target brightness, saturation and hue as defined by source
Gmagick::COMPOSITE_MULTIPLY (integer)
Multiplies the target to the source
Gmagick::COMPOSITE_OUT (integer)
Composites outer parts of the source on the target
Gmagick::COMPOSITE_OVER (integer)
Composites source over the target
Gmagick::COMPOSITE_OVERLAY (integer)
Overlays the source on the target
Gmagick::COMPOSITE_PLUS (integer)
Adds the source to the target
Gmagick::COMPOSITE_REPLACE (integer)
Replaces the target with the source
Gmagick::COMPOSITE_SATURATE (integer)
Saturates the target as defined by the source
Gmagick::COMPOSITE_SCREEN (integer)
The source and destination are complemented and then multiplied and then replace the destination
Gmagick::COMPOSITE_SOFTLIGHT (integer)
Darkens or lightens the colors, dependent on the source
Gmagick::COMPOSITE_SRCATOP (integer)
The part of the source lying inside of the destination is composited onto the destination
Gmagick::COMPOSITE_SRC (integer)
The source is copied to the destination
Gmagick::COMPOSITE_SRCIN (integer)
The part of the source lying inside of the destination replaces the destination
Gmagick::COMPOSITE_SRCOUT (integer)
The part of the source lying outside of the destination replaces the destination
Gmagick::COMPOSITE_SRCOVER (integer)
The source replaces the destination
Gmagick::COMPOSITE_SUBTRACT (integer)
Subtract the colors in the source image from the destination image
Gmagick::COMPOSITE_THRESHOLD (integer)
The source is composited on the target as defined by source threshold
Gmagick::COMPOSITE_XOR (integer)
The part of the source that lies outside of the destination is combined with the part of the destination that lies outside of the source
Montage Mode constants
Gmagick::MONTAGEMODE_FRAME (integer)
Gmagick::MONTAGEMODE_UNFRAME (integer)
Gmagick::MONTAGEMODE_CONCATENATE (integer)
Style constants
Gmagick::STYLE_NORMAL (integer)
Gmagick::STYLE_ITALIC (integer)
Gmagick::STYLE_OBLIQUE (integer)
Gmagick::STYLE_ANY (integer)
Filter constants
Gmagick::FILTER_UNDEFINED (integer)
Gmagick::FILTER_POINT (integer)
Gmagick::FILTER_BOX (integer)
Gmagick::FILTER_TRIANGLE (integer)
Gmagick::FILTER_HERMITE (integer)
Gmagick::FILTER_HANNING (integer)
Gmagick::FILTER_HAMMING (integer)
Gmagick::FILTER_BLACKMAN (integer)
Gmagick::FILTER_GAUSSIAN (integer)
Gmagick::FILTER_QUADRATIC (integer)
Gmagick::FILTER_CUBIC (integer)
Gmagick::FILTER_CATROM (integer)
Gmagick::FILTER_MITCHELL (integer)
Gmagick::FILTER_LANCZOS (integer)
Gmagick::FILTER_BESSEL (integer)
Gmagick::FILTER_SINC (integer)
Image type constants
Gmagick::IMGTYPE_UNDEFINED (integer)
Gmagick::IMGTYPE_BILEVEL (integer)
Gmagick::IMGTYPE_GRAYSCALE (integer)
Gmagick::IMGTYPE_GRAYSCALEMATTE (integer)
Gmagick::IMGTYPE_PALETTE (integer)
Gmagick::IMGTYPE_PALETTEMATTE (integer)
Gmagick::IMGTYPE_TRUECOLOR (integer)
Gmagick::IMGTYPE_TRUECOLORMATTE (integer)
Gmagick::IMGTYPE_COLORSEPARATION (integer)
Gmagick::IMGTYPE_COLORSEPARATIONMATTE (integer)
Gmagick::IMGTYPE_OPTIMIZE (integer)
Resolution constants
Gmagick::RESOLUTION_UNDEFINED (integer)
Gmagick::RESOLUTION_PIXELSPERINCH (integer)
Gmagick::RESOLUTION_PIXELSPERCENTIMETER (integer)
Compression constants
Gmagick::COMPRESSION_UNDEFINED (integer)
Gmagick::COMPRESSION_NO (integer)
Gmagick::COMPRESSION_BZIP (integer)
Gmagick::COMPRESSION_FAX (integer)
Gmagick::COMPRESSION_GROUP4 (integer)
Gmagick::COMPRESSION_JPEG (integer)
Gmagick::COMPRESSION_JPEG2000 (integer)
Gmagick::COMPRESSION_LOSSLESSJPEG (integer)
Gmagick::COMPRESSION_LZW (integer)
Gmagick::COMPRESSION_RLE (integer)
Gmagick::COMPRESSION_ZIP (integer)
Paint constants
Gmagick::PAINT_POINT (integer)
Gmagick::PAINT_REPLACE (integer)
Gmagick::PAINT_FLOODFILL (integer)
Gmagick::PAINT_FILLTOBORDER (integer)
Gmagick::PAINT_RESET (integer)
Gravity constants
Gmagick::GRAVITY_NORTHWEST (integer)
Gmagick::GRAVITY_NORTH (integer)
Gmagick::GRAVITY_NORTHEAST (integer)
Gmagick::GRAVITY_WEST (integer)
Gmagick::GRAVITY_CENTER (integer)
Gmagick::GRAVITY_EAST (integer)
Gmagick::GRAVITY_SOUTHWEST (integer)
Gmagick::GRAVITY_SOUTH (integer)
Gmagick::GRAVITY_SOUTHEAST (integer)
Stretch constants
Gmagick::STRETCH_NORMAL (integer)
Gmagick::STRETCH_ULTRACONDENSED (integer)
Gmagick::STRETCH_CONDENSED (integer)
Gmagick::STRETCH_SEMICONDENSED (integer)
Gmagick::STRETCH_SEMIEXPANDED (integer)
Gmagick::STRETCH_EXPANDED (integer)
Gmagick::STRETCH_EXTRAEXPANDED (integer)
Gmagick::STRETCH_ULTRAEXPANDED (integer)
Gmagick::STRETCH_ANY (integer)
Align constants
Gmagick::ALIGN_UNDEFINED (integer)
Gmagick::ALIGN_LEFT (integer)
Gmagick::ALIGN_CENTER (integer)
Gmagick::ALIGN_RIGHT (integer)
Decoration constants
Gmagick::DECORATION_NO (integer)
Gmagick::DECORATION_UNDERLINE (integer)
Gmagick::DECORATION_OVERLINE (integer)
Gmagick::DECORATION_LINETROUGH (integer)
Noise constants
Gmagick::NOISE_UNIFORM (integer)
Gmagick::NOISE_GAUSSIAN (integer)
Gmagick::NOISE_MULTIPLICATIVEGAUSSIAN (integer)
Gmagick::NOISE_IMPULSE (integer)
Gmagick::NOISE_LAPLACIAN (integer)
Gmagick::NOISE_POISSON (integer)
Channel constants
Gmagick::CHANNEL_UNDEFINED (integer)
Gmagick::CHANNEL_RED (integer)
Gmagick::CHANNEL_GRAY (integer)
Gmagick::CHANNEL_CYAN (integer)
Gmagick::CHANNEL_GREEN (integer)
Gmagick::CHANNEL_MAGENTA (integer)
Gmagick::CHANNEL_BLUE (integer)
Gmagick::CHANNEL_YELLOW (integer)
Gmagick::CHANNEL_ALPHA (integer)
Gmagick::CHANNEL_OPACITY (integer)
Gmagick::CHANNEL_MATTE (integer)
Gmagick::CHANNEL_BLACK (integer)
Gmagick::CHANNEL_INDEX (integer)
Gmagick::CHANNEL_ALL (integer)
Metric constants
Gmagick::METRIC_UNDEFINED (integer)
Gmagick::METRIC_MEANABSOLUTEERROR (integer)
Gmagick::METRIC_MEANSQUAREERROR (integer)
Gmagick::METRIC_PEAKABSOLUTEERROR (integer)
Gmagick::METRIC_PEAKSIGNALTONOISERATIO (integer)
Gmagick::METRIC_ROOTMEANSQUAREDERROR (integer)
Pixel constants
Gmagick::PIXEL_CHAR (integer)
Gmagick::PIXEL_DOUBLE (integer)
Gmagick::PIXEL_FLOAT (integer)
Gmagick::PIXEL_INTEGER (integer)
Gmagick::PIXEL_LONG (integer)
Gmagick::PIXEL_QUANTUM (integer)
Gmagick::PIXEL_SHORT (integer)
Colorspace constants
Gmagick::COLORSPACE_UNDEFINED (integer)
Gmagick::COLORSPACE_RGB (integer)
Gmagick::COLORSPACE_GRAY (integer)
Gmagick::COLORSPACE_TRANSPARENT (integer)
Gmagick::COLORSPACE_OHTA (integer)
Gmagick::COLORSPACE_LAB (integer)
Gmagick::COLORSPACE_XYZ (integer)
Gmagick::COLORSPACE_YCBCR (integer)
Gmagick::COLORSPACE_YCC (integer)
Gmagick::COLORSPACE_YIQ (integer)
Gmagick::COLORSPACE_YPBPR (integer)
Gmagick::COLORSPACE_YUV (integer)
Gmagick::COLORSPACE_CMYK (integer)
Gmagick::COLORSPACE_SRGB (integer)
Gmagick::COLORSPACE_HSB (integer)
Gmagick::COLORSPACE_HSL (integer)
Gmagick::COLORSPACE_HWB (integer)
Gmagick::COLORSPACE_REC601LUMA (integer)
Gmagick::COLORSPACE_REC709LUMA (integer)
Gmagick::COLORSPACE_LOG (integer)
Virtual Pixel Method constants
Gmagick::VIRTUALPIXELMETHOD_UNDEFINED (integer)
Gmagick::VIRTUALPIXELMETHOD_BACKGROUND (integer)
Gmagick::VIRTUALPIXELMETHOD_CONSTANT (integer)
Gmagick::VIRTUALPIXELMETHOD_EDGE (integer)
Gmagick::VIRTUALPIXELMETHOD_MIRROR (integer)
Gmagick::VIRTUALPIXELMETHOD_TILE (integer)
Gmagick::VIRTUALPIXELMETHOD_TRANSPARENT (integer)
Preview constants
Gmagick::PREVIEW_UNDEFINED (integer)
Gmagick::PREVIEW_ROTATE (integer)
Gmagick::PREVIEW_SHEAR (integer)
Gmagick::PREVIEW_ROLL (integer)
Gmagick::PREVIEW_HUE (integer)
Gmagick::PREVIEW_SATURATION (integer)
Gmagick::PREVIEW_BRIGHTNESS (integer)
Gmagick::PREVIEW_GAMMA (integer)
Gmagick::PREVIEW_SPIFF (integer)
Gmagick::PREVIEW_DULL (integer)
Gmagick::PREVIEW_GRAYSCALE (integer)
Gmagick::PREVIEW_QUANTIZE (integer)
Gmagick::PREVIEW_DESPECKLE (integer)
Gmagick::PREVIEW_REDUCENOISE (integer)
Gmagick::PREVIEW_ADDNOISE (integer)
Gmagick::PREVIEW_SHARPEN (integer)
Gmagick::PREVIEW_BLUR (integer)
Gmagick::PREVIEW_THRESHOLD (integer)
Gmagick::PREVIEW_EDGEDETECT (integer)
Gmagick::PREVIEW_SPREAD (integer)
Gmagick::PREVIEW_SOLARIZE (integer)
Gmagick::PREVIEW_SHADE (integer)
Gmagick::PREVIEW_RAISE (integer)
Gmagick::PREVIEW_SEGMENT (integer)
Gmagick::PREVIEW_SWIRL (integer)
Gmagick::PREVIEW_IMPLODE (integer)
Gmagick::PREVIEW_WAVE (integer)
Gmagick::PREVIEW_OILPAINT (integer)
Gmagick::PREVIEW_CHARCOALDRAWING (integer)
Gmagick::PREVIEW_JPEG (integer)
Rendering Intent constants
Gmagick::RENDERINGINTENT_UNDEFINED (integer)
Gmagick::RENDERINGINTENT_SATURATION (integer)
Gmagick::RENDERINGINTENT_PERCEPTUAL (integer)
Gmagick::RENDERINGINTENT_ABSOLUTE (integer)
Gmagick::RENDERINGINTENT_RELATIVE (integer)
Fillrule constants
Gmagick::FILLRULE_UNDEFINED (integer)
Gmagick::FILLRULE_EVENODD (integer)
Gmagick::FILLRULE_NONZERO (integer)
Pathunit constants
Gmagick::PATHUNITS_UNDEFINED (integer)
Gmagick::PATHUNITS_USERSPACE (integer)
Gmagick::PATHUNITS_USERSPACEONUSE (integer)
Gmagick::PATHUNITS_OBJECTBOUNDINGBOX (integer)
Linecap constants
Gmagick::LINECAP_UNDEFINED (integer)
Gmagick::LINECAP_BUTT (integer)
Gmagick::LINECAP_ROUND (integer)
Gmagick::LINECAP_SQUARE (integer)
Line Join constants
Gmagick::LINEJOIN_UNDEFINED (integer)
Gmagick::LINEJOIN_MITER (integer)
Gmagick::LINEJOIN_ROUND (integer)
Gmagick::LINEJOIN_BEVEL (integer)
Resourcetype constants
Gmagick::RESOURCETYPE_UNDEFINED (integer)
Gmagick::RESOURCETYPE_AREA (integer)
Gmagick::RESOURCETYPE_DISK (integer)
Gmagick::RESOURCETYPE_FILE (integer)
Gmagick::RESOURCETYPE_MAP (integer)
Gmagick::RESOURCETYPE_MEMORY (integer)
Orientation constants
Gmagick::ORIENTATION_UNDEFINED (integer)
Gmagick::ORIENTATION_TOPLEFT (integer)
Gmagick::ORIENTATION_TOPRIGHT (integer)
Gmagick::ORIENTATION_BOTTOMRIGHT (integer)
Gmagick::ORIENTATION_BOTTOMLEFT (integer)
Gmagick::ORIENTATION_LEFTTOP (integer)
Gmagick::ORIENTATION_RIGHTTOP (integer)
Gmagick::ORIENTATION_RIGHTBOTTOM (integer)
Gmagick::ORIENTATION_LEFTBOTTOM (integer)
Configurações em Execução
Exemplos
Gmagick


Exemplos

The following shows some common Gmagick image operations.

Exemplo #1 Gmagick Example

<?php
//Instantiate a new Gmagick object
$image = new Gmagick('example.jpg');

//Make thumbnail from image loaded. 0 for either axes preserves aspect ratio
$image->thumbnailImage(100, 0);

//Create a border around the image, then simulate how the image will look like as an oil painting
//Notice the chaining of mutator methods which is supported in gmagick
$image->borderImage("yellow", 8, 8)->oilPaintImage(0.3);

//Write the current image at the current state to a file
$image->write('example_thumbnail.jpg');
?>
Constantes pré-definidas
Gmagick
Gmagick


The Gmagick class

Introdução

Description of the class.

Sinopse da classe

Gmagick {
/* Methods */
public Gmagick addimage ( Gmagick $Gmagick )
public Gmagick addnoiseimage ( int $NOISE )
public Gmagick annotateimage ( GmagickDraw $GmagickDraw , float $x , float $y , float $angle , string $text )
public Gmagick blurimage ( float $radius , float $sigma [, int $channel ] )
public Gmagick borderimage ( GmagickPixel $color , int $width , int $height )
public Gmagick charcoalimage ( float $radius , float $sigma )
public Gmagick chopimage ( int $width , int $height , int $x , int $y )
public Gmagick clear ( void )
public Gmagick commentimage ( string $comment )
public Gmagick compositeimage ( Gmagick $source , int $COMPOSE , int $x , int $y )
__construct ([ string $filename ] )
public Gmagick cropimage ( int $width , int $height , int $x , int $y )
public Gmagick cropthumbnailimage ( int $width , int $height )
public Gmagick current ( void )
public Gmagick cyclecolormapimage ( int $displace )
public void deconstructimages ( void )
public Gmagick despeckleimage ( void )
public Gmagick destroy ( void )
public Gmagick drawimage ( GmagickDraw $GmagickDraw )
public Gmagick edgeimage ( float $radius )
public Gmagick embossimage ( float $radius , float $sigma )
public Gmagick enhanceimage ( void )
public Gmagick equalizeimage ( void )
public Gmagick flipimage ( void )
public Gmagick flopimage ( void )
public Gmagick frameimage ( GmagickPixel $color , int $width , int $height , int $inner_bevel , int $outer_bevel )
public Gmagick gammaimage ( float $gamma )
public string getcopyright ( void )
public string getfilename ( void )
public void getimagebackgroundcolor ( void )
public array getimageblueprimary ( void )
public void getimagebordercolor ( void )
public int getimagechanneldepth ( int $channel_type )
public int getimagecolors ( void )
public int getimagecolorspace ( void )
public int getimagecompose ( void )
public int getimagedelay ( void )
public int getimagedepth ( void )
public int getimagedispose ( void )
public array getimageextrema ( void )
public string getimagefilename ( void )
public string getimageformat ( void )
public float getimagegamma ( void )
public array getimagegreenprimary ( void )
public int getimageheight ( void )
public array getimagehistogram ( void )
public int getimageindex ( void )
public int getimageinterlacescheme ( void )
public int getimageiterations ( void )
public int getimagematte ( void )
public void getimagemattecolor ( void )
public string getimageprofile ( string $name )
public array getimageredprimary ( void )
public int getimagerenderingintent ( void )
public array getimageresolution ( void )
public int getimagescene ( void )
public string getimagesignature ( void )
public int getimagetype ( void )
public int getimageunits ( void )
public array getimagewhitepoint ( void )
public int getimagewidth ( void )
public string getpackagename ( void )
public array getquantumdepth ( void )
public string getreleasedate ( void )
public array getsamplingfactors ( void )
public array getsize ( void )
public array getversion ( void )
public mixed hasnextimage ( void )
public mixed haspreviousimage ( void )
public mixed implodeimage ( float $radius )
public mixed labelimage ( string $label )
public mixed levelimage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Gmagick::CHANNEL_DEFAULT ] )
public mixed magnifyimage ( void )
public Gmagick mapimage ( gmagick $gmagick , bool $dither )
public void medianfilterimage ( float $radius )
public void minifyimage ( void )
public void modulateimage ( float $brightness , float $saturation , float $hue )
public void motionblurimage ( float $radius , float $sigma , float $angle )
public void newimage ( int $width , int $height , string $background [, string $format ] )
public bool nextimage ( void )
public void normalizeimage ([ int $channel ] )
public void oilpaintimage ( float $radius )
public bool previousimage ( void )
public void profileimage ( string $name , string $profile )
public void quantizeimage ( int $numColors , int $colorspace , int $treeDepth , bool $dither , bool $measureError )
public void quantizeimages ( int $numColors , int $colorspace , int $treeDepth , bool $dither , bool $measureError )
public array queryfontmetrics ( GmagickDraw $draw , string $text )
public array queryfonts ([ string $pattern = "*" ] )
public array queryformats ([ string $pattern = "*" ] )
public void radialblurimage ( float $angle [, int $channel = Gmagick::CHANNEL_DEFAULT ] )
public void raiseimage ( int $width , int $height , int $x , int $y , bool $raise )
public void read ( string $filename )
public void readimage ( string $filename )
public void readimageblob ( string $imageContents [, string $filename ] )
public void readimagefile ( resource $fp [, string $filename ] )
public void reducenoiseimage ( float $radius )
public void removeimage ( void )
public string removeimageprofile ( string $name )
public void resampleimage ( float $xResolution , float $yResolution , int $filter , float $blur )
public void resizeimage ( int $width , int $height , int $filter , float $blur [, bool $fit = false ] )
public void rollimage ( int $x , int $y )
public Gmagick rotateimage ( mixed $color , float $degrees )
public Gmagick scaleimage ( int $width , int $height [, bool $fit = false ] )
public Gmagick separateimagechannel ( int $channel )
public Gmagick setfilename ( string $filename )
public Gmagick setimagebackgroundcolor ( GmagickPixel $color )
public Gmagick setimageblueprimary ( float $x , float $y )
public Gmagick setimagebordercolor ( GmagickPixel $color )
public Gmagick setimagechanneldepth ( int $channel , int $depth )
public Gmagick setimagecolorspace ( int $colorspace )
public Gmagick setimagecompose ( int $composite )
public Gmagick setimagedelay ( int $delay )
public Gmagick setimagedepth ( int $depth )
public Gmagick setimagedispose ( int $disposeType )
public Gmagick setimagefilename ( string $filename )
public Gmagick setimageformat ( string $imageFormat )
public Gmagick setimagegamma ( float $gamma )
public Gmagick setimagegreenprimary ( float $x , float $y )
public Gmagick setimageindex ( int $index )
public Gmagick setimageinterlacescheme ( int $interlace )
public Gmagick setimageiterations ( int $iterations )
public Gmagick setimageprofile ( string $name , string $profile )
public Gmagick setimageredprimary ( float $x , float $y )
public Gmagick setimagerenderingintent ( int $rendering_intent )
public Gmagick setimageresolution ( float $xResolution , float $yResolution )
public Gmagick setimagescene ( int $scene )
public Gmagick setimagetype ( int $imgType )
public Gmagick setimageunits ( int $resolution )
public Gmagick setimagewhitepoint ( float $x , float $y )
public Gmagick setsamplingfactors ( array $factors )
public Gmagick setsize ( int $columns , int $rows )
public Gmagick shearimage ( mixed $color , float $xShear , float $yShear )
public Gmagick solarizeimage ( int $threshold )
public Gmagick spreadimage ( float $radius )
public Gmagick stripimage ( void )
public Gmagick swirlimage ( float $degrees )
public Gmagick thumbnailimage ( int $width , int $height [, bool $fit = false ] )
public Gmagick trimimage ( float $fuzz )
public void write ( string $filename )
public Gmagick writeimage ( string $filename [, bool $all_frames = false ] )
}

Índice

  • Gmagick::addimage — Adds new image to Gmagick object image list
  • Gmagick::addnoiseimage — Adds random noise to the image
  • Gmagick::annotateimage — Annotates an image with text
  • Gmagick::blurimage — Adds blur filter to image
  • Gmagick::borderimage — Surrounds the image with a border
  • Gmagick::charcoalimage — Simulates a charcoal drawing
  • Gmagick::chopimage — Removes a region of an image and trims
  • Gmagick::clear — Clears all resources associated to Gmagick object
  • Gmagick::commentimage — Adds a comment to your image
  • Gmagick::compositeimage — Composite one image onto another
  • Gmagick::__construct — The Gmagick constructor
  • Gmagick::cropimage — Extracts a region of the image
  • Gmagick::cropthumbnailimage — Creates a crop thumbnail
  • Gmagick::current — The current purpose
  • Gmagick::cyclecolormapimage — Displaces an image's colormap
  • Gmagick::deconstructimages — Returns certain pixel differences between images
  • Gmagick::despeckleimage — The despeckleimage purpose
  • Gmagick::destroy — The destroy purpose
  • Gmagick::drawimage — Renders the GmagickDraw object on the current image
  • Gmagick::edgeimage — Enhance edges within the image
  • Gmagick::embossimage — Returns a grayscale image with a three-dimensional effect
  • Gmagick::enhanceimage — Improves the quality of a noisy image
  • Gmagick::equalizeimage — Equalizes the image histogram
  • Gmagick::flipimage — Creates a vertical mirror image
  • Gmagick::flopimage — The flopimage purpose
  • Gmagick::frameimage — Adds a simulated three-dimensional border
  • Gmagick::gammaimage — Gamma-corrects an image
  • Gmagick::getcopyright — Returns the GraphicsMagick API copyright as a string
  • Gmagick::getfilename — The filename associated with an image sequence
  • Gmagick::getimagebackgroundcolor — Returns the image background color
  • Gmagick::getimageblueprimary — Returns the chromaticy blue primary point
  • Gmagick::getimagebordercolor — Returns the image border color
  • Gmagick::getimagechanneldepth — Gets the depth for a particular image channel
  • Gmagick::getimagecolors — Returns the color of the specified colormap index
  • Gmagick::getimagecolorspace — Gets the image colorspace
  • Gmagick::getimagecompose — Returns the composite operator associated with the image
  • Gmagick::getimagedelay — Gets the image delay
  • Gmagick::getimagedepth — Gets the depth of the image
  • Gmagick::getimagedispose — Gets the image disposal method
  • Gmagick::getimageextrema — Gets the extrema for the image
  • Gmagick::getimagefilename — Returns the filename of a particular image in a sequence
  • Gmagick::getimageformat — Returns the format of a particular image in a sequence
  • Gmagick::getimagegamma — Gets the image gamma
  • Gmagick::getimagegreenprimary — Returns the chromaticy green primary point
  • Gmagick::getimageheight — Returns the image height
  • Gmagick::getimagehistogram — Gets the image histogram
  • Gmagick::getimageindex — Gets the index of the current active image
  • Gmagick::getimageinterlacescheme — Gets the image interlace scheme
  • Gmagick::getimageiterations — Gets the image iterations
  • Gmagick::getimagematte — Return if the image has a matte channel
  • Gmagick::getimagemattecolor — Returns the image matte color
  • Gmagick::getimageprofile — Returns the named image profile.
  • Gmagick::getimageredprimary — Returns the chromaticity red primary point
  • Gmagick::getimagerenderingintent — Gets the image rendering intent
  • Gmagick::getimageresolution — Gets the image X and Y resolution
  • Gmagick::getimagescene — Gets the image scene
  • Gmagick::getimagesignature — Generates an SHA-256 message digest
  • Gmagick::getimagetype — Gets the potential image type.
  • Gmagick::getimageunits — Gets the image units of resolution
  • Gmagick::getimagewhitepoint — Returns the chromaticity white point
  • Gmagick::getimagewidth — Returns the width of the image
  • Gmagick::getpackagename — Returns the GraphicsMagick package name.
  • Gmagick::getquantumdepth — Returns the Gmagick quantum depth as a string.
  • Gmagick::getreleasedate — Returns the GraphicsMagick release date as a string.
  • Gmagick::getsamplingfactors — Gets the horizontal and vertical sampling factor.
  • Gmagick::getsize — Returns the size associated with the Gmagick object
  • Gmagick::getversion — Returns the GraphicsMagick API version
  • Gmagick::hasnextimage — Checks if the object has more images
  • Gmagick::haspreviousimage — Checks if the object has a previous image
  • Gmagick::implodeimage — Creates a new image as a copy
  • Gmagick::labelimage — Adds a label to an image.
  • Gmagick::levelimage — Adjusts the levels of an image
  • Gmagick::magnifyimage — Scales an image proportionally 2x
  • Gmagick::mapimage — Replaces the colors of an image with the closest color from a reference image.
  • Gmagick::medianfilterimage — Applies a digital filter
  • Gmagick::minifyimage — Scales an image proportionally to half its size
  • Gmagick::modulateimage — Control the brightness, saturation, and hue
  • Gmagick::motionblurimage — Simulates motion blur
  • Gmagick::newimage — Creates a new image
  • Gmagick::nextimage — Moves to the next image
  • Gmagick::normalizeimage — Enhances the contrast of a color image
  • Gmagick::oilpaintimage — Simulates an oil painting
  • Gmagick::previousimage — Move to the previous image in the object
  • Gmagick::profileimage — Adds or removes a profile from an image
  • Gmagick::quantizeimage — Analyzes the colors within a reference image
  • Gmagick::quantizeimages — The quantizeimages purpose
  • Gmagick::queryfontmetrics — Returns an array representing the font metrics
  • Gmagick::queryfonts — Returns the configured fonts
  • Gmagick::queryformats — Returns formats supported by Gmagick.
  • Gmagick::radialblurimage — Radial blurs an image
  • Gmagick::raiseimage — Creates a simulated 3d button-like effect
  • Gmagick::read — Reads image from filename
  • Gmagick::readimage — Reads image from filename
  • Gmagick::readimageblob — Reads image from a binary string
  • Gmagick::readimagefile — The readimagefile purpose
  • Gmagick::reducenoiseimage — Smooths the contours of an image
  • Gmagick::removeimage — Removes an image from the image list
  • Gmagick::removeimageprofile — Removes the named image profile and returns it
  • Gmagick::resampleimage — Resample image to desired resolution
  • Gmagick::resizeimage — Scales an image
  • Gmagick::rollimage — Offsets an image
  • Gmagick::rotateimage — Rotates an image
  • Gmagick::scaleimage — Scales the size of an image
  • Gmagick::separateimagechannel — Separates a channel from the image
  • Gmagick::setfilename — Sets the filename before you read or write the image
  • Gmagick::setimagebackgroundcolor — Sets the image background color.
  • Gmagick::setimageblueprimary — Sets the image chromaticity blue primary point.
  • Gmagick::setimagebordercolor — Sets the image border color.
  • Gmagick::setimagechanneldepth — Sets the depth of a particular image channel
  • Gmagick::setimagecolorspace — Sets the image colorspace
  • Gmagick::setimagecompose — Sets the image composite operator
  • Gmagick::setimagedelay — Sets the image delay
  • Gmagick::setimagedepth — Sets the image depth
  • Gmagick::setimagedispose — Sets the image disposal method
  • Gmagick::setimagefilename — Sets the filename of a particular image in a sequence
  • Gmagick::setimageformat — Sets the format of a particular image
  • Gmagick::setimagegamma — Sets the image gamma
  • Gmagick::setimagegreenprimary — TSets the image chromaticity green primary point.
  • Gmagick::setimageindex — Set the iterator to the position in the image list specified with the index parameter
  • Gmagick::setimageinterlacescheme — Sets the interlace scheme of the image.
  • Gmagick::setimageiterations — Sets the image iterations.
  • Gmagick::setimageprofile — Adds a named profile to the Gmagick object
  • Gmagick::setimageredprimary — Sets the image chromaticity red primary point.
  • Gmagick::setimagerenderingintent — Sets the image rendering intent
  • Gmagick::setimageresolution — Sets the image resolution
  • Gmagick::setimagescene — Sets the image scene
  • Gmagick::setimagetype — Sets the image type
  • Gmagick::setimageunits — Sets the image units of resolution.
  • Gmagick::setimagewhitepoint — Sets the image chromaticity white point.
  • Gmagick::setsamplingfactors — Sets the image sampling factors.
  • Gmagick::setsize — Sets the size of the Gmagick object
  • Gmagick::shearimage — Creating a parallelogram
  • Gmagick::solarizeimage — Applies a solarizing effect to the image
  • Gmagick::spreadimage — Randomly displaces each pixel in a block
  • Gmagick::stripimage — Strips an image of all profiles and comments
  • Gmagick::swirlimage — Swirls the pixels about the center of the image
  • Gmagick::thumbnailimage — Changes the size of an image
  • Gmagick::trimimage — Remove edges from the image
  • Gmagick::write — Writes an image to the specified filename
  • Gmagick::writeimage — Writes an image to the specified filename
Exemplos
Gmagick::addimage
Gmagick


Adds new image to Gmagick object image list

Gmagick
Gmagick::addnoiseimage
Gmagick
PHP Manual

Gmagick::addimage

(PECL gmagick >= Unknown)

Gmagick::addimage — Adds new image to Gmagick object image list

Descrição

public Gmagick Gmagick::addimage ( Gmagick $Gmagick )

Adds new image to Gmagick object from the current position of the source object. After the operation iterator position is moved at the end of the list.

Parâmetros

source

The source Gmagick object

Valor Retornado

The Gmagick object with image added

Erros

Throws an GmagickException on error.

Gmagick
Gmagick::addnoiseimage
Gmagick


Adds random noise to the image

Gmagick::addimage
Gmagick::annotateimage
Gmagick
PHP Manual

Gmagick::addnoiseimage

(PECL gmagick >= Unknown)

Gmagick::addnoiseimage — Adds random noise to the image

Descrição

public Gmagick Gmagick::addnoiseimage ( int $NOISE )

Adds random noise to the image.

Parâmetros

noise_type

The type of the noise. Refer to this list of noise constants.

Valor Retornado

The Gmagick object with noise added.

Erros

Throws an GmagickException on error.

Gmagick::addimage
Gmagick::annotateimage
Gmagick


Annotates an image with text

Gmagick::addnoiseimage
Gmagick::blurimage
Gmagick
PHP Manual

Gmagick::annotateimage

(PECL gmagick >= Unknown)

Gmagick::annotateimage — Annotates an image with text

Descrição

public Gmagick Gmagick::annotateimage ( GmagickDraw $GmagickDraw , float $x , float $y , float $angle , string $text )

Annotates an image with text.

Parâmetros

GmagickDraw

The GmagickDraw object that contains settings for drawing the text

x

Horizontal offset in pixels to the left of text

y

Vertical offset in pixels to the baseline of text

angle

The angle at which to write the text

text

The string to draw

Valor Retornado

The Gmagick object with annotation made.

Erros

Throws an GmagickException on error.

Gmagick::addnoiseimage
Gmagick::blurimage
Gmagick


Adds blur filter to image

Gmagick::annotateimage
Gmagick::borderimage
Gmagick
PHP Manual

Gmagick::blurimage

(PECL gmagick >= Unknown)

Gmagick::blurimage — Adds blur filter to image

Descrição

public Gmagick Gmagick::blurimage ( float $radius , float $sigma [, int $channel ] )

Adds blur filter to image.

Parâmetros

radius

Blur radius

sigma

Standard deviation

Valor Retornado

The blurred Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::annotateimage
Gmagick::borderimage
Gmagick


Surrounds the image with a border

Gmagick::blurimage
Gmagick::charcoalimage
Gmagick
PHP Manual

Gmagick::borderimage

(PECL gmagick >= Unknown)

Gmagick::borderimage — Surrounds the image with a border

Descrição

public Gmagick Gmagick::borderimage ( GmagickPixel $color , int $width , int $height )

Surrounds the image with a border of the color defined by the bordercolor GmagickPixel object or a color string.

Parâmetros

color

GmagickPixel object or a string containing the border color

width

Border width

height

Border height

Valor Retornado

The Gmagick object with border defined

Erros

Throws an GmagickException on error.

Gmagick::blurimage
Gmagick::charcoalimage
Gmagick


Simulates a charcoal drawing

Gmagick::borderimage
Gmagick::chopimage
Gmagick
PHP Manual

Gmagick::charcoalimage

(PECL gmagick >= Unknown)

Gmagick::charcoalimage — Simulates a charcoal drawing

Descrição

public Gmagick Gmagick::charcoalimage ( float $radius , float $sigma )

Simulates a charcoal drawing.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel

sigma

The standard deviation of the Gaussian, in pixels

Valor Retornado

The Gmagick object with charcoal simulation

Erros

Throws an GmagickException on error.

Gmagick::borderimage
Gmagick::chopimage
Gmagick


Removes a region of an image and trims

Gmagick::charcoalimage
Gmagick::clear
Gmagick
PHP Manual

Gmagick::chopimage

(PECL gmagick >= Unknown)

Gmagick::chopimage — Removes a region of an image and trims

Descrição

public Gmagick Gmagick::chopimage ( int $width , int $height , int $x , int $y )

Removes a region of an image and collapses the image to occupy the removed portion.

Parâmetros

width

Width of the chopped area

height

Height of the chopped area

x

X origo of the chopped area

y

Y origo of the chopped area

Valor Retornado

The chopped Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::charcoalimage
Gmagick::clear
Gmagick


Clears all resources associated to Gmagick object

Gmagick::chopimage
Gmagick::commentimage
Gmagick
PHP Manual

Gmagick::clear

(PECL gmagick >= Unknown)

Gmagick::clear — Clears all resources associated to Gmagick object

Descrição

public Gmagick Gmagick::clear ( void )

Clears all resources associated to Gmagick object

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The cleared Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::chopimage
Gmagick::commentimage
Gmagick


Adds a comment to your image

Gmagick::clear
Gmagick::compositeimage
Gmagick
PHP Manual

Gmagick::commentimage

(PECL gmagick >= Unknown)

Gmagick::commentimage — Adds a comment to your image

Descrição

public Gmagick Gmagick::commentimage ( string $comment )

Adds a comment to your image.

Parâmetros

comment

The comment to add

Valor Retornado

The Gmagick object with comment added.

Erros

Throws an GmagickException on error.

Gmagick::clear
Gmagick::compositeimage
Gmagick


Composite one image onto another

Gmagick::commentimage
Gmagick::__construct
Gmagick
PHP Manual

Gmagick::compositeimage

(PECL gmagick >= Unknown)

Gmagick::compositeimage — Composite one image onto another

Descrição

public Gmagick Gmagick::compositeimage ( Gmagick $source , int $COMPOSE , int $x , int $y )

Composite one image onto another at the specified offset.

Parâmetros

source

Gmagick object which holds the composite image

compose

Composite operator.

x

The column offset of the composited image

y

The row offset of the composited image

Valor Retornado

The Gmagick object with compositions.

Erros

Throws an GmagickException on error.

Gmagick::commentimage
Gmagick::__construct
Gmagick


The Gmagick constructor

Gmagick::compositeimage
Gmagick::cropimage
Gmagick
PHP Manual

Gmagick::__construct

(PECL gmagick >= Unknown)

Gmagick::__construct — The Gmagick constructor

Descrição

Gmagick::__construct ([ string $filename ] )

The Gmagick constructor.

Parâmetros

filename

The path to an image to load or array of paths

Valor Retornado

Returns a new Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::compositeimage
Gmagick::cropimage
Gmagick


Extracts a region of the image

Gmagick::__construct
Gmagick::cropthumbnailimage
Gmagick
PHP Manual

Gmagick::cropimage

(PECL gmagick >= Unknown)

Gmagick::cropimage — Extracts a region of the image

Descrição

public Gmagick Gmagick::cropimage ( int $width , int $height , int $x , int $y )

Extracts a region of the image.

Parâmetros

width

The width of the crop

height

The height of the crop

x

The X coordinate of the cropped region's top left corner

y

The Y coordinate of the cropped region's top left corner

Valor Retornado

The cropped Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::__construct
Gmagick::cropthumbnailimage
Gmagick


Creates a crop thumbnail

Gmagick::cropimage
Gmagick::current
Gmagick
PHP Manual

Gmagick::cropthumbnailimage

(PECL gmagick >= Unknown)

Gmagick::cropthumbnailimage — Creates a crop thumbnail

Descrição

public Gmagick Gmagick::cropthumbnailimage ( int $width , int $height )

Creates a fixed size thumbnail by first scaling the image down and cropping a specified area from the center.

Parâmetros

width

The width of the thumbnail

height

The Height of the thumbnail

Valor Retornado

The cropped Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::cropimage
Gmagick::current
Gmagick


The current purpose

Gmagick::cropthumbnailimage
Gmagick::cyclecolormapimage
Gmagick
PHP Manual

Gmagick::current

(PECL gmagick >= Unknown)

Gmagick::current — The current purpose

Descrição

public Gmagick Gmagick::current ( void )

Returns reference to the current gmagick object with image pointer at the correct sequence.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns self on success.

Erros

Throws an GmagickException on error.

Gmagick::cropthumbnailimage
Gmagick::cyclecolormapimage
Gmagick


Displaces an image's colormap

Gmagick::current
Gmagick::deconstructimages
Gmagick
PHP Manual

Gmagick::cyclecolormapimage

(PECL gmagick >= Unknown)

Gmagick::cyclecolormapimage — Displaces an image's colormap

Descrição

public Gmagick Gmagick::cyclecolormapimage ( int $displace )

Displaces an image's colormap by a given number of positions. If you cycle the colormap a number of times you can produce a psychedelic effect.

Parâmetros

displace

The amount to displace the colormap.

Valor Retornado

Returns self on success.

Erros

Throws an GmagickException on error.

Gmagick::current
Gmagick::deconstructimages
Gmagick


Returns certain pixel differences between images

Gmagick::cyclecolormapimage
Gmagick::despeckleimage
Gmagick
PHP Manual

Gmagick::deconstructimages

(PECL gmagick >= Unknown)

Gmagick::deconstructimages — Returns certain pixel differences between images

Descrição

public void Gmagick::deconstructimages ( void )

Compares each image with the next in a sequence and returns the maximum bounding region of any pixel differences it discovers.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns self on success.

Erros

Throws an GmagickException on error.

Gmagick::cyclecolormapimage
Gmagick::despeckleimage
Gmagick


The despeckleimage purpose

Gmagick::deconstructimages
Gmagick::destroy
Gmagick
PHP Manual

Gmagick::despeckleimage

(PECL gmagick >= Unknown)

Gmagick::despeckleimage — The despeckleimage purpose

Descrição

public Gmagick Gmagick::despeckleimage ( void )

Reduces the speckle noise in an image while preserving the edges of the original image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The despeckled Gmagick object on success.

Erros

Throws an GmagickException on error.

Exemplos

Exemplo #1 Gmagick::despeckleimage() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

Gmagick::deconstructimages
Gmagick::destroy
Gmagick


The destroy purpose

Gmagick::despeckleimage
Gmagick::drawimage
Gmagick
PHP Manual

Gmagick::destroy

(PECL gmagick >= Unknown)

Gmagick::destroy — The destroy purpose

Descrição

public Gmagick Gmagick::destroy ( void )

Destroys the Gmagick object and frees all resources associated with it

Valor Retornado

Returns TRUE on success.

Erros

Throws an GmagickException on error.

Gmagick::despeckleimage
Gmagick::drawimage
Gmagick


Renders the GmagickDraw object on the current image

Gmagick::destroy
Gmagick::edgeimage
Gmagick
PHP Manual

Gmagick::drawimage

(PECL gmagick >= Unknown)

Gmagick::drawimage — Renders the GmagickDraw object on the current image

Descrição

public Gmagick Gmagick::drawimage ( GmagickDraw $GmagickDraw )

Renders the GmagickDraw object on the current image

Parâmetros

GmagickDraw

The drawing operations to render on the image.

Valor Retornado

The drawn Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::destroy
Gmagick::edgeimage
Gmagick


Enhance edges within the image

Gmagick::drawimage
Gmagick::embossimage
Gmagick
PHP Manual

Gmagick::edgeimage

(PECL gmagick >= Unknown)

Gmagick::edgeimage — Enhance edges within the image

Descrição

public Gmagick Gmagick::edgeimage ( float $radius )

Enhance edges within the image with a convolution filter of the given radius. Use radius 0 and it will be auto-selected.

Parâmetros

radius

The radius of the operation.

Valor Retornado

The Gmagick object with edges enhanced.

Erros

Throws an GmagickException on error.

Gmagick::drawimage
Gmagick::embossimage
Gmagick


Returns a grayscale image with a three-dimensional effect

Gmagick::edgeimage
Gmagick::enhanceimage
Gmagick
PHP Manual

Gmagick::embossimage

(PECL gmagick >= Unknown)

Gmagick::embossimage — Returns a grayscale image with a three-dimensional effect

Descrição

public Gmagick Gmagick::embossimage ( float $radius , float $sigma )

Returns a grayscale image with a three-dimensional effect. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and it will choose a suitable radius for you.

Parâmetros

radius

The radius of the effect

sigma

The sigma of the effect

Valor Retornado

The embossed Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::edgeimage
Gmagick::enhanceimage
Gmagick


Improves the quality of a noisy image

Gmagick::embossimage
Gmagick::equalizeimage
Gmagick
PHP Manual

Gmagick::enhanceimage

(PECL gmagick >= Unknown)

Gmagick::enhanceimage — Improves the quality of a noisy image

Descrição

public Gmagick Gmagick::enhanceimage ( void )

Applies a digital filter that improves the quality of a noisy image.

Valor Retornado

The enhanced Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::embossimage
Gmagick::equalizeimage
Gmagick


Equalizes the image histogram

Gmagick::enhanceimage
Gmagick::flipimage
Gmagick
PHP Manual

Gmagick::equalizeimage

(PECL gmagick >= Unknown)

Gmagick::equalizeimage — Equalizes the image histogram

Descrição

public Gmagick Gmagick::equalizeimage ( void )

Equalizes the image histogram.

Valor Retornado

The equalized Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::enhanceimage
Gmagick::flipimage
Gmagick


Creates a vertical mirror image

Gmagick::equalizeimage
Gmagick::flopimage
Gmagick
PHP Manual

Gmagick::flipimage

(PECL gmagick >= Unknown)

Gmagick::flipimage — Creates a vertical mirror image

Descrição

public Gmagick Gmagick::flipimage ( void )

Creates a vertical mirror image by reflecting the pixels around the central x-axis.

Valor Retornado

The flipped Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::equalizeimage
Gmagick::flopimage
Gmagick


The flopimage purpose

Gmagick::flipimage
Gmagick::frameimage
Gmagick
PHP Manual

Gmagick::flopimage

(PECL gmagick >= Unknown)

Gmagick::flopimage — The flopimage purpose

Descrição

public Gmagick Gmagick::flopimage ( void )

Creates a horizontal mirror image by reflecting the pixels around the central y-axis.

Valor Retornado

The flopped Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::flipimage
Gmagick::frameimage
Gmagick


Adds a simulated three-dimensional border

Gmagick::flopimage
Gmagick::gammaimage
Gmagick
PHP Manual

Gmagick::frameimage

(PECL gmagick >= Unknown)

Gmagick::frameimage — Adds a simulated three-dimensional border

Descrição

public Gmagick Gmagick::frameimage ( GmagickPixel $color , int $width , int $height , int $inner_bevel , int $outer_bevel )

Adds a simulated three-dimensional border around the image. The width and height specify the border width of the vertical and horizontal sides of the frame. The inner and outer bevels indicate the width of the inner and outer shadows of the frame.

Parâmetros

color

GmagickPixel object or a float representing the matte color

width

The width of the border

height

The height of the border

inner_bevel

The inner bevel width

outer_bevel

The outer bevel width

Valor Retornado

The framed Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::flopimage
Gmagick::gammaimage
Gmagick


Gamma-corrects an image

Gmagick::frameimage
Gmagick::getcopyright
Gmagick
PHP Manual

Gmagick::gammaimage

(PECL gmagick >= Unknown)

Gmagick::gammaimage — Gamma-corrects an image

Descrição

public Gmagick Gmagick::gammaimage ( float $gamma )

Gamma-corrects an image. The same image viewed on different devices will have perceptual differences in the way the image's intensities are represented on the screen. Specify individual gamma levels for the red, green, and blue channels, or adjust all three with the gamma parameter. Values typically range from 0.8 to 2.3.

Parâmetros

gamma

The amount of gamma-correction.

Valor Retornado

The gamma corrected Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::frameimage
Gmagick::getcopyright
Gmagick


Returns the GraphicsMagick API copyright as a string

Gmagick::gammaimage
Gmagick::getfilename
Gmagick
PHP Manual

Gmagick::getcopyright

(PECL gmagick >= Unknown)

Gmagick::getcopyright — Returns the GraphicsMagick API copyright as a string

Descrição

public string Gmagick::getcopyright ( void )

Returns the GraphicsMagick API copyright as a string.

Valor Retornado

Returns a string containing the copyright notice of GraphicsMagick and Magickwand C API.

Erros

Throws an GmagickException on error.

Gmagick::gammaimage
Gmagick::getfilename
Gmagick


The filename associated with an image sequence

Gmagick::getcopyright
Gmagick::getimagebackgroundcolor
Gmagick
PHP Manual

Gmagick::getfilename

(PECL gmagick >= Unknown)

Gmagick::getfilename — The filename associated with an image sequence

Descrição

public string Gmagick::getfilename ( void )

Returns the filename associated with an image sequence.

Valor Retornado

Returns a string on success.

Erros

Throws an GmagickException on error.

Gmagick::getcopyright
Gmagick::getimagebackgroundcolor
Gmagick


Returns the image background color

Gmagick::getfilename
Gmagick::getimageblueprimary
Gmagick
PHP Manual

Gmagick::getimagebackgroundcolor

(PECL gmagick >= Unknown)

Gmagick::getimagebackgroundcolor — Returns the image background color

Descrição

public void Gmagick::getimagebackgroundcolor ( void )

Returns the image background color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an GmagickPixel set to the background color of the image.

Erros

Throws an GmagickException on error.

Gmagick::getfilename
Gmagick::getimageblueprimary
Gmagick


Returns the chromaticy blue primary point

Gmagick::getimagebackgroundcolor
Gmagick::getimagebordercolor
Gmagick
PHP Manual

Gmagick::getimageblueprimary

(PECL gmagick >= Unknown)

Gmagick::getimageblueprimary — Returns the chromaticy blue primary point

Descrição

public array Gmagick::getimageblueprimary ( void )

Returns the chromaticity blue primary point for the image.

Parâmetros

x

The chromaticity blue primary x-point.

y

The chromaticity blue primary y-point.

Valor Retornado

Array consisting of "x" and "y" coordinates of point.

Erros

Throws an GmagickException on error.

Gmagick::getimagebackgroundcolor
Gmagick::getimagebordercolor
Gmagick


Returns the image border color

Gmagick::getimageblueprimary
Gmagick::getimagechanneldepth
Gmagick
PHP Manual

Gmagick::getimagebordercolor

(PECL gmagick >= Unknown)

Gmagick::getimagebordercolor — Returns the image border color

Descrição

public void Gmagick::getimagebordercolor ( void )

Returns the image border color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

GmagickPixel object representing the color of the border

Erros

Throws an GmagickException on error.

Gmagick::getimageblueprimary
Gmagick::getimagechanneldepth
Gmagick


Gets the depth for a particular image channel

Gmagick::getimagebordercolor
Gmagick::getimagecolors
Gmagick
PHP Manual

Gmagick::getimagechanneldepth

(PECL gmagick >= Unknown)

Gmagick::getimagechanneldepth — Gets the depth for a particular image channel

Descrição

public int Gmagick::getimagechanneldepth ( int $channel_type )

Gets the depth for a particular image channel.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Depth of image channel

Erros

Throws an GmagickException on error.

Gmagick::getimagebordercolor
Gmagick::getimagecolors
Gmagick


Returns the color of the specified colormap index

Gmagick::getimagechanneldepth
Gmagick::getimagecolorspace
Gmagick
PHP Manual

Gmagick::getimagecolors

(PECL gmagick >= Unknown)

Gmagick::getimagecolors — Returns the color of the specified colormap index

Descrição

public int Gmagick::getimagecolors ( void )

Returns the color of the specified colormap index.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of colors in image.

Erros

Throws an GmagickException on error.

Gmagick::getimagechanneldepth
Gmagick::getimagecolorspace
Gmagick


Gets the image colorspace

Gmagick::getimagecolors
Gmagick::getimagecompose
Gmagick
PHP Manual

Gmagick::getimagecolorspace

(PECL gmagick >= Unknown)

Gmagick::getimagecolorspace — Gets the image colorspace

Descrição

public int Gmagick::getimagecolorspace ( void )

Gets the image colorspace.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Colorspace

Erros

Throws an GmagickException on error.

Gmagick::getimagecolors
Gmagick::getimagecompose
Gmagick


Returns the composite operator associated with the image

Gmagick::getimagecolorspace
Gmagick::getimagedelay
Gmagick
PHP Manual

Gmagick::getimagecompose

(PECL gmagick >= Unknown)

Gmagick::getimagecompose — Returns the composite operator associated with the image

Descrição

public int Gmagick::getimagecompose ( void )

Returns the composite operator associated with the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the composite operator associated with the image.

Erros

Throws an GmagickException on error.

Gmagick::getimagecolorspace
Gmagick::getimagedelay
Gmagick


Gets the image delay

Gmagick::getimagecompose
Gmagick::getimagedepth
Gmagick
PHP Manual

Gmagick::getimagedelay

(PECL gmagick >= Unknown)

Gmagick::getimagedelay — Gets the image delay

Descrição

public int Gmagick::getimagedelay ( void )

Gets the image delay

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the composite operator associated with the image.

Erros

Throws an GmagickException on error.

Gmagick::getimagecompose
Gmagick::getimagedepth
Gmagick


Gets the depth of the image

Gmagick::getimagedelay
Gmagick::getimagedispose
Gmagick
PHP Manual

Gmagick::getimagedepth

(PECL gmagick >= Unknown)

Gmagick::getimagedepth — Gets the depth of the image

Descrição

public int Gmagick::getimagedepth ( void )

Gets the depth of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Image depth

Erros

Throws an GmagickException on error.

Gmagick::getimagedelay
Gmagick::getimagedispose
Gmagick


Gets the image disposal method

Gmagick::getimagedepth
Gmagick::getimageextrema
Gmagick
PHP Manual

Gmagick::getimagedispose

(PECL gmagick >= Unknown)

Gmagick::getimagedispose — Gets the image disposal method

Descrição

public int Gmagick::getimagedispose ( void )

Gets the image disposal method

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the dispose method on success.

Erros

Throws an GmagickException on error.

Gmagick::getimagedepth
Gmagick::getimageextrema
Gmagick


Gets the extrema for the image

Gmagick::getimagedispose
Gmagick::getimagefilename
Gmagick
PHP Manual

Gmagick::getimageextrema

(PECL gmagick >= Unknown)

Gmagick::getimageextrema — Gets the extrema for the image

Descrição

public array Gmagick::getimageextrema ( void )

Returns an associative array with the keys "min" and "max". Throws an GmagickException on error.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an associative array with the keys "min" and "max".

Erros

Throws an GmagickException on error.

Gmagick::getimagedispose
Gmagick::getimagefilename
Gmagick


Returns the filename of a particular image in a sequence

Gmagick::getimageextrema
Gmagick::getimageformat
Gmagick
PHP Manual

Gmagick::getimagefilename

(PECL gmagick >= Unknown)

Gmagick::getimagefilename — Returns the filename of a particular image in a sequence

Descrição

public string Gmagick::getimagefilename ( void )

Returns the filename of a particular image in a sequence

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string with the filename of the image

Erros

Throws an GmagickException on error.

Gmagick::getimageextrema
Gmagick::getimageformat
Gmagick


Returns the format of a particular image in a sequence

Gmagick::getimagefilename
Gmagick::getimagegamma
Gmagick
PHP Manual

Gmagick::getimageformat

(PECL gmagick >= Unknown)

Gmagick::getimageformat — Returns the format of a particular image in a sequence

Descrição

public string Gmagick::getimageformat ( void )

Returns the format of a particular image in a sequence.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the image format on success.

Erros

Throws an GmagickException on error.

Gmagick::getimagefilename
Gmagick::getimagegamma
Gmagick


Gets the image gamma

Gmagick::getimageformat
Gmagick::getimagegreenprimary
Gmagick
PHP Manual

Gmagick::getimagegamma

(PECL gmagick >= Unknown)

Gmagick::getimagegamma — Gets the image gamma

Descrição

public float Gmagick::getimagegamma ( void )

Gets the image gamma

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image gamma on success

Erros

Throws an GmagickException on error.

Gmagick::getimageformat
Gmagick::getimagegreenprimary
Gmagick


Returns the chromaticy green primary point

Gmagick::getimagegamma
Gmagick::getimageheight
Gmagick
PHP Manual

Gmagick::getimagegreenprimary

(PECL gmagick >= Unknown)

Gmagick::getimagegreenprimary — Returns the chromaticy green primary point

Descrição

public array Gmagick::getimagegreenprimary ( void )

Returns the chromaticity green primary point. Returns an array with the keys "x" and "y".

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array with the keys "x" and "y" on success.

Erros

Throws an GmagickException on error.

Gmagick::getimagegamma
Gmagick::getimageheight
Gmagick


Returns the image height

Gmagick::getimagegreenprimary
Gmagick::getimagehistogram
Gmagick
PHP Manual

Gmagick::getimageheight

(PECL gmagick >= Unknown)

Gmagick::getimageheight — Returns the image height

Descrição

public int Gmagick::getimageheight ( void )

Returns the image height

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image height in pixels.

Erros

Throws an GmagickException on error.

Gmagick::getimagegreenprimary
Gmagick::getimagehistogram
Gmagick


Gets the image histogram

Gmagick::getimageheight
Gmagick::getimageindex
Gmagick
PHP Manual

Gmagick::getimagehistogram

(PECL gmagick >= Unknown)

Gmagick::getimagehistogram — Gets the image histogram

Descrição

public array Gmagick::getimagehistogram ( void )

Returns the image histogram as an array of GmagickPixel objects. Throw an GmagickException on error.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image histogram as an array of GmagickPixel objects.

Erros

Throws an GmagickException on error.

Gmagick::getimageheight
Gmagick::getimageindex
Gmagick


Gets the index of the current active image

Gmagick::getimagehistogram
Gmagick::getimageinterlacescheme
Gmagick
PHP Manual

Gmagick::getimageindex

(PECL gmagick >= Unknown)

Gmagick::getimageindex — Gets the index of the current active image

Descrição

public int Gmagick::getimageindex ( void )

Returns the index of the current active image within the Gmagick object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Index of current active image

Erros

Throws an GmagickException on error.

Gmagick::getimagehistogram
Gmagick::getimageinterlacescheme
Gmagick


Gets the image interlace scheme

Gmagick::getimageindex
Gmagick::getimageiterations
Gmagick
PHP Manual

Gmagick::getimageinterlacescheme

(PECL gmagick >= Unknown)

Gmagick::getimageinterlacescheme — Gets the image interlace scheme

Descrição

public int Gmagick::getimageinterlacescheme ( void )

Gets the image interlace scheme.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the interlace scheme as an integer on success

Erros

Throws an GmagickException on error.

Gmagick::getimageindex
Gmagick::getimageiterations
Gmagick


Gets the image iterations

Gmagick::getimageinterlacescheme
Gmagick::getimagematte
Gmagick
PHP Manual

Gmagick::getimageiterations

(PECL gmagick >= Unknown)

Gmagick::getimageiterations — Gets the image iterations

Descrição

public int Gmagick::getimageiterations ( void )

Gets the image iterations.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image iterations as an integer.

Erros

Throws an GmagickException on error.

Gmagick::getimageinterlacescheme
Gmagick::getimagematte
Gmagick


Return if the image has a matte channel

Gmagick::getimageiterations
Gmagick::getimagemattecolor
Gmagick
PHP Manual

Gmagick::getimagematte

(PECL gmagick >= Unknown)

Gmagick::getimagematte — Return if the image has a matte channel

Descrição

public int Gmagick::getimagematte ( void )

Returns TRUE if the image has a matte channel otherwise false.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the image has a matte channel otherwise false.

Erros

Throws an GmagickException on error.

Gmagick::getimageiterations
Gmagick::getimagemattecolor
Gmagick


Returns the image matte color

Gmagick::getimagematte
Gmagick::getimageprofile
Gmagick
PHP Manual

Gmagick::getimagemattecolor

(PECL gmagick >= Unknown)

Gmagick::getimagemattecolor — Returns the image matte color

Descrição

public void Gmagick::getimagemattecolor ( void )

Returns GmagickPixel object on success. Throw an GmagickException on error.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns GmagickPixel object on success.

Erros

Throws an GmagickException on error.

Gmagick::getimagematte
Gmagick::getimageprofile
Gmagick


Returns the named image profile.

Gmagick::getimagemattecolor
Gmagick::getimageredprimary
Gmagick
PHP Manual

Gmagick::getimageprofile

(PECL gmagick >= Unknown)

Gmagick::getimageprofile — Returns the named image profile.

Descrição

public string Gmagick::getimageprofile ( string $name )

Returns the named image profile.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the image profile.

Erros

Throws an GmagickException on error.

Gmagick::getimagemattecolor
Gmagick::getimageredprimary
Gmagick


Returns the chromaticity red primary point

Gmagick::getimageprofile
Gmagick::getimagerenderingintent
Gmagick
PHP Manual

Gmagick::getimageredprimary

(PECL gmagick >= Unknown)

Gmagick::getimageredprimary — Returns the chromaticity red primary point

Descrição

public array Gmagick::getimageredprimary ( void )

Returns the chromaticity red primary point as an array with the keys "x" and "y".

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the chromaticity red primary point as an array with the keys "x" and "y".

Erros

Throws an GmagickException on error.

Gmagick::getimageprofile
Gmagick::getimagerenderingintent
Gmagick


Gets the image rendering intent

Gmagick::getimageredprimary
Gmagick::getimageresolution
Gmagick
PHP Manual

Gmagick::getimagerenderingintent

(PECL gmagick >= Unknown)

Gmagick::getimagerenderingintent — Gets the image rendering intent

Descrição

public int Gmagick::getimagerenderingintent ( void )

Gets the image rendering intent

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Extracts a region of the image and returns it as a a new wand

Erros

Throws an GmagickException on error.

Gmagick::getimageredprimary
Gmagick::getimageresolution
Gmagick


Gets the image X and Y resolution

Gmagick::getimagerenderingintent
Gmagick::getimagescene
Gmagick
PHP Manual

Gmagick::getimageresolution

(PECL gmagick >= Unknown)

Gmagick::getimageresolution — Gets the image X and Y resolution

Descrição

public array Gmagick::getimageresolution ( void )

Returns the resolution as an array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the resolution as an array.

Erros

Throws an GmagickException on error.

Gmagick::getimagerenderingintent
Gmagick::getimagescene
Gmagick


Gets the image scene

Gmagick::getimageresolution
Gmagick::getimagesignature
Gmagick
PHP Manual

Gmagick::getimagescene

(PECL gmagick >= Unknown)

Gmagick::getimagescene — Gets the image scene

Descrição

public int Gmagick::getimagescene ( void )

Gets the image scene.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image scene.

Erros

Throws an GmagickException on error.

Gmagick::getimageresolution
Gmagick::getimagesignature
Gmagick


Generates an SHA-256 message digest

Gmagick::getimagescene
Gmagick::getimagetype
Gmagick
PHP Manual

Gmagick::getimagesignature

(PECL gmagick >= Unknown)

Gmagick::getimagesignature — Generates an SHA-256 message digest

Descrição

public string Gmagick::getimagesignature ( void )

Generates an SHA-256 message digest for the image pixel stream.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the SHA-256 hash of the file.

Erros

Throws an GmagickException on error.

Gmagick::getimagescene
Gmagick::getimagetype
Gmagick


Gets the potential image type.

Gmagick::getimagesignature
Gmagick::getimageunits
Gmagick
PHP Manual

Gmagick::getimagetype

(PECL gmagick >= Unknown)

Gmagick::getimagetype — Gets the potential image type.

Descrição

public int Gmagick::getimagetype ( void )

Gets the potential image type.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the potential image type.

Erros

Throws an GmagickException on error.

Gmagick::getimagesignature
Gmagick::getimageunits
Gmagick


Gets the image units of resolution

Gmagick::getimagetype
Gmagick::getimagewhitepoint
Gmagick
PHP Manual

Gmagick::getimageunits

(PECL gmagick >= Unknown)

Gmagick::getimageunits — Gets the image units of resolution

Descrição

public int Gmagick::getimageunits ( void )

Gets the image units of resolution.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image units of resolution.

Gmagick::getimagetype
Gmagick::getimagewhitepoint
Gmagick


Returns the chromaticity white point

Gmagick::getimageunits
Gmagick::getimagewidth
Gmagick
PHP Manual

Gmagick::getimagewhitepoint

(PECL gmagick >= Unknown)

Gmagick::getimagewhitepoint — Returns the chromaticity white point

Descrição

public array Gmagick::getimagewhitepoint ( void )

Returns the chromaticity white point as an associative array with the keys "x" and "y".

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the chromaticity white point as an associative array with the keys "x" and "y".

Erros

Throws an GmagickException on error.

Gmagick::getimageunits
Gmagick::getimagewidth
Gmagick


Returns the width of the image

Gmagick::getimagewhitepoint
Gmagick::getpackagename
Gmagick
PHP Manual

Gmagick::getimagewidth

(PECL gmagick >= Unknown)

Gmagick::getimagewidth — Returns the width of the image

Descrição

public int Gmagick::getimagewidth ( void )

Returns the width of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the image width.

Erros

Throws an GmagickException on error.

Gmagick::getimagewhitepoint
Gmagick::getpackagename
Gmagick


Returns the GraphicsMagick package name.

Gmagick::getimagewidth
Gmagick::getquantumdepth
Gmagick
PHP Manual

Gmagick::getpackagename

(PECL gmagick >= Unknown)

Gmagick::getpackagename — Returns the GraphicsMagick package name.

Descrição

public string Gmagick::getpackagename ( void )

Returns the GraphicsMagick package name.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the GraphicsMagick package name as a string.

Erros

Throws an GmagickException on error.

Gmagick::getimagewidth
Gmagick::getquantumdepth
Gmagick


Returns the Gmagick quantum depth as a string.

Gmagick::getpackagename
Gmagick::getreleasedate
Gmagick
PHP Manual

Gmagick::getquantumdepth

(PECL gmagick >= Unknown)

Gmagick::getquantumdepth — Returns the Gmagick quantum depth as a string.

Descrição

public array Gmagick::getquantumdepth ( void )

Returns the Gmagick quantum depth as a string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the Gmagick quantum depth as a string.

Erros

Throws an GmagickException on error.

Gmagick::getpackagename
Gmagick::getreleasedate
Gmagick


Returns the GraphicsMagick release date as a string.

Gmagick::getquantumdepth
Gmagick::getsamplingfactors
Gmagick
PHP Manual

Gmagick::getreleasedate

(PECL gmagick >= Unknown)

Gmagick::getreleasedate — Returns the GraphicsMagick release date as a string.

Descrição

public string Gmagick::getreleasedate ( void )

Returns the GraphicsMagick release date as a string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the GraphicsMagick release date as a string.

Erros

Throws an GmagickException on error.

Gmagick::getquantumdepth
Gmagick::getsamplingfactors
Gmagick


Gets the horizontal and vertical sampling factor.

Gmagick::getreleasedate
Gmagick::getsize
Gmagick
PHP Manual

Gmagick::getsamplingfactors

(PECL gmagick >= Unknown)

Gmagick::getsamplingfactors — Gets the horizontal and vertical sampling factor.

Descrição

public array Gmagick::getsamplingfactors ( void )

Gets the horizontal and vertical sampling factor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an associative array with the horizontal and vertical sampling factors of the image.

Erros

Throws an GmagickException on error.

Gmagick::getreleasedate
Gmagick::getsize
Gmagick


Returns the size associated with the Gmagick object

Gmagick::getsamplingfactors
Gmagick::getversion
Gmagick
PHP Manual

Gmagick::getsize

(PECL gmagick >= Unknown)

Gmagick::getsize — Returns the size associated with the Gmagick object

Descrição

public array Gmagick::getsize ( void )

Returns the size associated with the Gmagick object as an array with the keys "columns" and "rows".

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the size associated with the Gmagick object as an array with the keys "columns" and "rows".

Erros

Throws an GmagickException on error.

Gmagick::getsamplingfactors
Gmagick::getversion
Gmagick


Returns the GraphicsMagick API version

Gmagick::getsize
Gmagick::hasnextimage
Gmagick
PHP Manual

Gmagick::getversion

(PECL gmagick >= Unknown)

Gmagick::getversion — Returns the GraphicsMagick API version

Descrição

public array Gmagick::getversion ( void )

Returns the GraphicsMagick API version as a string and as a number.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the GraphicsMagick API version as a string and as a number.

Erros

Throws an GmagickException on error.

Gmagick::getsize
Gmagick::hasnextimage
Gmagick


Checks if the object has more images

Gmagick::getversion
Gmagick::haspreviousimage
Gmagick
PHP Manual

Gmagick::hasnextimage

(PECL gmagick >= Unknown)

Gmagick::hasnextimage — Checks if the object has more images

Descrição

public mixed Gmagick::hasnextimage ( void )

Returns TRUE if the object has more images when traversing the list in the forward direction.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the object has more images when traversing the list in the forward direction, returns FALSE if there are none.

Erros

Throws an GmagickException on error.

Gmagick::getversion
Gmagick::haspreviousimage
Gmagick


Checks if the object has a previous image

Gmagick::hasnextimage
Gmagick::implodeimage
Gmagick
PHP Manual

Gmagick::haspreviousimage

(PECL gmagick >= Unknown)

Gmagick::haspreviousimage — Checks if the object has a previous image

Descrição

public mixed Gmagick::haspreviousimage ( void )

Returns TRUE if the object has more images when traversing the list in the reverse direction

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the object has more images when traversing the list in the reverse direction, returns FALSE if there are none.

Erros

Throws an GmagickException on error.

Gmagick::hasnextimage
Gmagick::implodeimage
Gmagick


Creates a new image as a copy

Gmagick::haspreviousimage
Gmagick::labelimage
Gmagick
PHP Manual

Gmagick::implodeimage

(PECL gmagick >= Unknown)

Gmagick::implodeimage — Creates a new image as a copy

Descrição

public mixed Gmagick::implodeimage ( float $radius )

Creates a new image that is a copy of an existing one with the image pixels "imploded" by the specified percentage.

Parâmetros

radius

The radius of the implode

Valor Retornado

Returns imploded Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::haspreviousimage
Gmagick::labelimage
Gmagick


Adds a label to an image.

Gmagick::implodeimage
Gmagick::levelimage
Gmagick
PHP Manual

Gmagick::labelimage

(PECL gmagick >= Unknown)

Gmagick::labelimage — Adds a label to an image.

Descrição

public mixed Gmagick::labelimage ( string $label )

Adds a label to an image.

Parâmetros

label

The label to add

Valor Retornado

Gmagick with label.

Erros

Throws an GmagickException on error.

Gmagick::implodeimage
Gmagick::levelimage
Gmagick


Adjusts the levels of an image

Gmagick::labelimage
Gmagick::magnifyimage
Gmagick
PHP Manual

Gmagick::levelimage

(PECL gmagick >= Unknown)

Gmagick::levelimage — Adjusts the levels of an image

Descrição

public mixed Gmagick::levelimage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Gmagick::CHANNEL_DEFAULT ] )

Adjusts the levels of an image by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. Mid point specifies a gamma correction to apply to the image. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.

Parâmetros

blackPoint

The image black point

gamma

The gamma value

whitePoint

The image white point

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

Valor Retornado

Gmagick object with image levelled.

Erros

Throws an GmagickException on error.

Gmagick::labelimage
Gmagick::magnifyimage
Gmagick


Scales an image proportionally 2x

Gmagick::levelimage
Gmagick::mapimage
Gmagick
PHP Manual

Gmagick::magnifyimage

(PECL gmagick >= Unknown)

Gmagick::magnifyimage — Scales an image proportionally 2x

Descrição

public mixed Gmagick::magnifyimage ( void )

Conveniently scales an image proportionally to twice its original size.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Magnified Gmagick object.

Erros

Throws an GmagickException on error.

Gmagick::levelimage
Gmagick::mapimage
Gmagick


Replaces the colors of an image with the closest color from a reference image.

Gmagick::magnifyimage
Gmagick::medianfilterimage
Gmagick
PHP Manual

Gmagick::mapimage

(PECL gmagick >= Unknown)

Gmagick::mapimage — Replaces the colors of an image with the closest color from a reference image.

Descrição

public Gmagick Gmagick::mapimage ( gmagick $gmagick , bool $dither )

Replaces the colors of an image with the closest color from a reference image.

Parâmetros

gmagick

The reference image

dither

Set this integer value to something other than zero to dither the mapped image

Valor Retornado

Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::magnifyimage
Gmagick::medianfilterimage
Gmagick


Applies a digital filter

Gmagick::mapimage
Gmagick::minifyimage
Gmagick
PHP Manual

Gmagick::medianfilterimage

(PECL gmagick >= Unknown)

Gmagick::medianfilterimage — Applies a digital filter

Descrição

public void Gmagick::medianfilterimage ( float $radius )

Applies a digital filter that improves the quality of a noisy image. Each pixel is replaced by the median in a set of neighboring pixels as defined by radius.

Parâmetros

radius

The radius of the pixel neighborhood.

Valor Retornado

Gmagick object with median filter applied.

Erros

Throws an GmagickException on error.

Gmagick::mapimage
Gmagick::minifyimage
Gmagick


Scales an image proportionally to half its size

Gmagick::medianfilterimage
Gmagick::modulateimage
Gmagick
PHP Manual

Gmagick::minifyimage

(PECL gmagick >= Unknown)

Gmagick::minifyimage — Scales an image proportionally to half its size

Descrição

public void Gmagick::minifyimage ( void )

A convenient method that scales an image proportionally to one-half its original size

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::medianfilterimage
Gmagick::modulateimage
Gmagick


Control the brightness, saturation, and hue

Gmagick::minifyimage
Gmagick::motionblurimage
Gmagick
PHP Manual

Gmagick::modulateimage

(PECL gmagick >= Unknown)

Gmagick::modulateimage — Control the brightness, saturation, and hue

Descrição

public void Gmagick::modulateimage ( float $brightness , float $saturation , float $hue )

Lets you control the brightness, saturation, and hue of an image. Hue is the percentage of absolute rotation from the current position. For example 50 results in a counter-clockwise rotation of 90 degrees, 150 results in a clockwise rotation of 90 degrees, with 0 and 200 both resulting in a rotation of 180 degrees.

Parâmetros

brightness

The percent change in brighness (-100 thru +100).

saturation

The percent change in saturation (-100 thru +100)

hue

The percent change in hue (-100 thru +100)

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::minifyimage
Gmagick::motionblurimage
Gmagick


Simulates motion blur

Gmagick::modulateimage
Gmagick::newimage
Gmagick
PHP Manual

Gmagick::motionblurimage

(PECL gmagick >= Unknown)

Gmagick::motionblurimage — Simulates motion blur

Descrição

public void Gmagick::motionblurimage ( float $radius , float $sigma , float $angle )

Simulates motion blur. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and MotionBlurImage() selects a suitable radius for you. Angle gives the angle of the blurring motion.

Parâmetros

radius

The radius of the Gaussian, in pixels, not counting the center pixel.

sigma

The standard deviation of the Gaussian, in pixels.

angle

Apply the effect along this angle.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::modulateimage
Gmagick::newimage
Gmagick


Creates a new image

Gmagick::motionblurimage
Gmagick::nextimage
Gmagick
PHP Manual

Gmagick::newimage

(PECL gmagick >= Unknown)

Gmagick::newimage — Creates a new image

Descrição

public void Gmagick::newimage ( int $width , int $height , string $background [, string $format ] )

Creates a new image with the specified background color

Parâmetros

width

Width of the new image

height

Height of the new image

background

The background color used for this image (as float)

format

Image format.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::motionblurimage
Gmagick::nextimage
Gmagick


Moves to the next image

Gmagick::newimage
Gmagick::normalizeimage
Gmagick
PHP Manual

Gmagick::nextimage

(PECL gmagick >= Unknown)

Gmagick::nextimage — Moves to the next image

Descrição

public bool Gmagick::nextimage ( void )

Associates the next image in the image list with an Gmagick object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::newimage
Gmagick::normalizeimage
Gmagick


Enhances the contrast of a color image

Gmagick::nextimage
Gmagick::oilpaintimage
Gmagick
PHP Manual

Gmagick::normalizeimage

(PECL gmagick >= Unknown)

Gmagick::normalizeimage — Enhances the contrast of a color image

Descrição

public void Gmagick::normalizeimage ([ int $channel ] )

Enhances the contrast of a color image by adjusting the pixels color to span the entire range of colors available.

Parâmetros

channel

Identify which channel to normalize

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::nextimage
Gmagick::oilpaintimage
Gmagick


Simulates an oil painting

Gmagick::normalizeimage
Gmagick::previousimage
Gmagick
PHP Manual

Gmagick::oilpaintimage

(PECL gmagick >= Unknown)

Gmagick::oilpaintimage — Simulates an oil painting

Descrição

public void Gmagick::oilpaintimage ( float $radius )

Applies a special effect filter that simulates an oil painting. Each pixel is replaced by the most frequent color occurring in a circular region defined by radius.

Parâmetros

radius

The radius of the circular neighborhood.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::normalizeimage
Gmagick::previousimage
Gmagick


Move to the previous image in the object

Gmagick::oilpaintimage
Gmagick::profileimage
Gmagick
PHP Manual

Gmagick::previousimage

(PECL gmagick >= Unknown)

Gmagick::previousimage — Move to the previous image in the object

Descrição

public bool Gmagick::previousimage ( void )

Assocates the previous image in an image list with the Gmagick object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::oilpaintimage
Gmagick::profileimage
Gmagick


Adds or removes a profile from an image

Gmagick::previousimage
Gmagick::quantizeimage
Gmagick
PHP Manual

Gmagick::profileimage

(PECL gmagick >= Unknown)

Gmagick::profileimage — Adds or removes a profile from an image

Descrição

public void Gmagick::profileimage ( string $name , string $profile )

Adds or removes a ICC, IPTC, or generic profile from an image. If the profile is NULL, it is removed from the image otherwise added. Use a name of '*' and a profile of NULL to remove all profiles from the image.

Parâmetros

name

Name of profile to add or remove: ICC, IPTC, or generic profile.

profile

The profile.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::previousimage
Gmagick::quantizeimage
Gmagick


Analyzes the colors within a reference image

Gmagick::profileimage
Gmagick::quantizeimages
Gmagick
PHP Manual

Gmagick::quantizeimage

(PECL gmagick >= Unknown)

Gmagick::quantizeimage — Analyzes the colors within a reference image

Descrição

public void Gmagick::quantizeimage ( int $numColors , int $colorspace , int $treeDepth , bool $dither , bool $measureError )

Analyzes the colors within a reference image and chooses a fixed number of colors to represent the image. The goal of the algorithm is to minimize the color difference between the input and output image while minimizing the processing time.

Parâmetros

numColors

The number of colors.

colorspace

Perform color reduction in this colorspace, typically RGBColorspace.

treeDepth

Normally, this integer value is zero or one. A zero or one tells Quantize to choose a optimal tree depth of Log4(number_colors).% A tree of this depth generally allows the best representation of the reference image with the least amount of memory and the fastest computational speed. In some cases, such as an image with low color dispersion (a few number of colors), a value other than Log4(number_colors) is required. To expand the color tree completely, use a value of 8.

dither

A value other than zero distributes the difference between an original image and the corresponding color reduced algorithm to neighboring pixels along a Hilbert curve.

measureError

A value other than zero measures the difference between the original and quantized images. This difference is the total quantization error. The error is computed by summing over all pixels in an image the distance squared in RGB space between each reference pixel value and its quantized value.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::profileimage
Gmagick::quantizeimages
Gmagick


The quantizeimages purpose

Gmagick::quantizeimage
Gmagick::queryfontmetrics
Gmagick
PHP Manual

Gmagick::quantizeimages

(PECL gmagick >= Unknown)

Gmagick::quantizeimages — The quantizeimages purpose

Descrição

public void Gmagick::quantizeimages ( int $numColors , int $colorspace , int $treeDepth , bool $dither , bool $measureError )

Analyzes the colors within a sequence of images and chooses a fixed number of colors to represent the image. The goal of the algorithm is to minimize the color difference between the input and output image while minimizing the processing time.

Parâmetros

numColors

The number of colors.

colorspace

Perform color reduction in this colorspace, typically RGBColorspace.

treeDepth

Normally, this integer value is zero or one. A zero or one tells Quantize to choose a optimal tree depth of Log4(number_colors).% A tree of this depth generally allows the best representation of the reference image with the least amount of memory and the fastest computational speed. In some cases, such as an image with low color dispersion (a few number of colors), a value other than Log4(number_colors) is required. To expand the color tree completely, use a value of 8.

dither

A value other than zero distributes the difference between an original image and the corresponding color reduced algorithm to neighboring pixels along a Hilbert curve.

measureError

A value other than zero measures the difference between the original and quantized images. This difference is the total quantization error. The error is computed by summing over all pixels in an image the distance squared in RGB space between each reference pixel value and its quantized value.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::quantizeimage
Gmagick::queryfontmetrics
Gmagick


Returns an array representing the font metrics

Gmagick::quantizeimages
Gmagick::queryfonts
Gmagick
PHP Manual

Gmagick::queryfontmetrics

(PECL gmagick >= Unknown)

Gmagick::queryfontmetrics — Returns an array representing the font metrics

Descrição

public array Gmagick::queryfontmetrics ( GmagickDraw $draw , string $text )

MagickQueryFontMetrics() returns an array representing the font metrics.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::quantizeimages
Gmagick::queryfonts
Gmagick


Returns the configured fonts

Gmagick::queryfontmetrics
Gmagick::queryformats
Gmagick
PHP Manual

Gmagick::queryfonts

(PECL gmagick >= Unknown)

Gmagick::queryfonts — Returns the configured fonts

Descrição

public array Gmagick::queryfonts ([ string $pattern = "*" ] )

Returns fonts supported by Gmagick.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::queryfontmetrics
Gmagick::queryformats
Gmagick


Returns formats supported by Gmagick.

Gmagick::queryfonts
Gmagick::radialblurimage
Gmagick
PHP Manual

Gmagick::queryformats

(PECL gmagick >= Unknown)

Gmagick::queryformats — Returns formats supported by Gmagick.

Descrição

public array Gmagick::queryformats ([ string $pattern = "*" ] )

Returns formats supported by Gmagick.

Parâmetros

pattern

Specifies a pointer to a text string containing a pattern.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::queryfonts
Gmagick::radialblurimage
Gmagick


Radial blurs an image

Gmagick::queryformats
Gmagick::raiseimage
Gmagick
PHP Manual

Gmagick::radialblurimage

(PECL gmagick >= Unknown)

Gmagick::radialblurimage — Radial blurs an image

Descrição

public void Gmagick::radialblurimage ( float $angle [, int $channel = Gmagick::CHANNEL_DEFAULT ] )

Radial blurs an image.

Parâmetros

angle

The angle of the blur in degrees.

channel

Related channel

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::queryformats
Gmagick::raiseimage
Gmagick


Creates a simulated 3d button-like effect

Gmagick::radialblurimage
Gmagick::read
Gmagick
PHP Manual

Gmagick::raiseimage

(PECL gmagick >= Unknown)

Gmagick::raiseimage — Creates a simulated 3d button-like effect

Descrição

public void Gmagick::raiseimage ( int $width , int $height , int $x , int $y , bool $raise )

Creates a simulated three-dimensional button-like effect by lightening and darkening the edges of the image. Members width and height of raise_info define the width of the vertical and horizontal edge of the effect.

Parâmetros

width

Width of the area to raise.

height

Height of the area to raise.

x

X coordinate

y

Y coordinate

raise

A value other than zero creates a 3-D raise effect, otherwise it has a lowered effect.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::radialblurimage
Gmagick::read
Gmagick


Reads image from filename

Gmagick::raiseimage
Gmagick::readimage
Gmagick
PHP Manual

Gmagick::read

(PECL gmagick >= Unknown)

Gmagick::read — Reads image from filename

Descrição

public void Gmagick::read ( string $filename )

Reads image from filename.

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::raiseimage
Gmagick::readimage
Gmagick


Reads image from filename

Gmagick::read
Gmagick::readimageblob
Gmagick
PHP Manual

Gmagick::readimage

(PECL gmagick >= Unknown)

Gmagick::readimage — Reads image from filename

Descrição

public void Gmagick::readimage ( string $filename )

Reads image from filename.

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::read
Gmagick::readimageblob
Gmagick


Reads image from a binary string

Gmagick::readimage
Gmagick::readimagefile
Gmagick
PHP Manual

Gmagick::readimageblob

(PECL gmagick >= Unknown)

Gmagick::readimageblob — Reads image from a binary string

Descrição

public void Gmagick::readimageblob ( string $imageContents [, string $filename ] )

Reads image from a binary string.

Parâmetros

imageContents

Content of image

filename

The image filename.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::readimage
Gmagick::readimagefile
Gmagick


The readimagefile purpose

Gmagick::readimageblob
Gmagick::reducenoiseimage
Gmagick
PHP Manual

Gmagick::readimagefile

(PECL gmagick >= Unknown)

Gmagick::readimagefile — The readimagefile purpose

Descrição

public void Gmagick::readimagefile ( resource $fp [, string $filename ] )

Reads an image or image sequence from an open file descriptor.

Parâmetros

fp

The file descriptor.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::readimageblob
Gmagick::reducenoiseimage
Gmagick


Smooths the contours of an image

Gmagick::readimagefile
Gmagick::removeimage
Gmagick
PHP Manual

Gmagick::reducenoiseimage

(PECL gmagick >= Unknown)

Gmagick::reducenoiseimage — Smooths the contours of an image

Descrição

public void Gmagick::reducenoiseimage ( float $radius )

Smooths the contours of an image while still preserving edge information. The algorithm works by replacing each pixel with its neighbor closest in value. A neighbor is defined by radius. Use a radius of 0 and Gmagick::reduceNoiseImage() selects a suitable radius for you.

Parâmetros

radius

The radius of the pixel neighborhood.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::readimagefile
Gmagick::removeimage
Gmagick


Removes an image from the image list

Gmagick::reducenoiseimage
Gmagick::removeimageprofile
Gmagick
PHP Manual

Gmagick::removeimage

(PECL gmagick >= Unknown)

Gmagick::removeimage — Removes an image from the image list

Descrição

public void Gmagick::removeimage ( void )

Removes an image from the image list.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::reducenoiseimage
Gmagick::removeimageprofile
Gmagick


Removes the named image profile and returns it

Gmagick::removeimage
Gmagick::resampleimage
Gmagick
PHP Manual

Gmagick::removeimageprofile

(PECL gmagick >= Unknown)

Gmagick::removeimageprofile — Removes the named image profile and returns it

Descrição

public string Gmagick::removeimageprofile ( string $name )

Removes the named image profile and returns it.

Parâmetros

name

Name of profile to return: ICC, IPTC, or generic profile.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::removeimage
Gmagick::resampleimage
Gmagick


Resample image to desired resolution

Gmagick::removeimageprofile
Gmagick::resizeimage
Gmagick
PHP Manual

Gmagick::resampleimage

(PECL gmagick >= Unknown)

Gmagick::resampleimage — Resample image to desired resolution

Descrição

public void Gmagick::resampleimage ( float $xResolution , float $yResolution , int $filter , float $blur )

Resample image to desired resolution.

Parâmetros

xResolution

The new image x resolution.

yResolution

The new image y resolution.

filter

Image filter to use.

blur

The blur factor where larger than 1 is blurry, smaller than 1 is sharp.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::removeimageprofile
Gmagick::resizeimage
Gmagick


Scales an image

Gmagick::resampleimage
Gmagick::rollimage
Gmagick
PHP Manual

Gmagick::resizeimage

(PECL gmagick >= Unknown)

Gmagick::resizeimage — Scales an image

Descrição

public void Gmagick::resizeimage ( int $width , int $height , int $filter , float $blur [, bool $fit = false ] )

Scales an image to the desired dimensions with a filter.

Parâmetros

width

The number of columns in the scaled image.

height

The number of rows in the scaled image.

filter

Image filter to use.

blur

The blur factor where larger than 1 is blurry, lesser than 1 is sharp.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::resampleimage
Gmagick::rollimage
Gmagick


Offsets an image

Gmagick::resizeimage
Gmagick::rotateimage
Gmagick
PHP Manual

Gmagick::rollimage

(PECL gmagick >= Unknown)

Gmagick::rollimage — Offsets an image

Descrição

public void Gmagick::rollimage ( int $x , int $y )

Offsets an image as defined by x and y.

Parâmetros

x

The x offset.

y

The y offset.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::resizeimage
Gmagick::rotateimage
Gmagick


Rotates an image

Gmagick::rollimage
Gmagick::scaleimage
Gmagick
PHP Manual

Gmagick::rotateimage

(PECL gmagick >= Unknown)

Gmagick::rotateimage — Rotates an image

Descrição

public Gmagick Gmagick::rotateimage ( mixed $color , float $degrees )

Rotates an image the specified number of degrees. Empty triangles left over from rotating the image are filled with the background color.

Parâmetros

color

The background pixel.

degrees

The number of degrees to rotate the image.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::rollimage
Gmagick::scaleimage
Gmagick


Scales the size of an image

Gmagick::rotateimage
Gmagick::separateimagechannel
Gmagick
PHP Manual

Gmagick::scaleimage

(PECL gmagick >= Unknown)

Gmagick::scaleimage — Scales the size of an image

Descrição

public Gmagick Gmagick::scaleimage ( int $width , int $height [, bool $fit = false ] )

Scales the size of an image to the given dimensions. The other parameter will be calculated if 0 is passed as either param.

Parâmetros

width

The number of columns in the scaled image.

height

The number of rows in the scaled image.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::rotateimage
Gmagick::separateimagechannel
Gmagick


Separates a channel from the image

Gmagick::scaleimage
Gmagick::setfilename
Gmagick
PHP Manual

Gmagick::separateimagechannel

(PECL gmagick >= Unknown)

Gmagick::separateimagechannel — Separates a channel from the image

Descrição

public Gmagick Gmagick::separateimagechannel ( int $channel )

Separates a channel from the image and returns a grayscale image. A channel is a particular color component of each pixel in the image.

Parâmetros

channel

Identify which channel to extract: RedChannel, GreenChannel, BlueChannel, OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, BlackChannel.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::scaleimage
Gmagick::setfilename
Gmagick


Sets the filename before you read or write the image

Gmagick::separateimagechannel
Gmagick::setimagebackgroundcolor
Gmagick
PHP Manual

Gmagick::setfilename

(PECL gmagick >= Unknown)

Gmagick::setfilename — Sets the filename before you read or write the image

Descrição

public Gmagick Gmagick::setfilename ( string $filename )

Sets the filename before you read or write an image file.

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::separateimagechannel
Gmagick::setimagebackgroundcolor
Gmagick


Sets the image background color.

Gmagick::setfilename
Gmagick::setimageblueprimary
Gmagick
PHP Manual

Gmagick::setimagebackgroundcolor

(PECL gmagick >= Unknown)

Gmagick::setimagebackgroundcolor — Sets the image background color.

Descrição

public Gmagick Gmagick::setimagebackgroundcolor ( GmagickPixel $color )

Sets the image background color.

Parâmetros

color

The background pixel wand.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setfilename
Gmagick::setimageblueprimary
Gmagick


Sets the image chromaticity blue primary point.

Gmagick::setimagebackgroundcolor
Gmagick::setimagebordercolor
Gmagick
PHP Manual

Gmagick::setimageblueprimary

(PECL gmagick >= Unknown)

Gmagick::setimageblueprimary — Sets the image chromaticity blue primary point.

Descrição

public Gmagick Gmagick::setimageblueprimary ( float $x , float $y )

Sets the image chromaticity blue primary point.

Parâmetros

x

The blue primary x-point.

y

The blue primary y-point.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimagebackgroundcolor
Gmagick::setimagebordercolor
Gmagick


Sets the image border color.

Gmagick::setimageblueprimary
Gmagick::setimagechanneldepth
Gmagick
PHP Manual

Gmagick::setimagebordercolor

(PECL gmagick >= Unknown)

Gmagick::setimagebordercolor — Sets the image border color.

Descrição

public Gmagick Gmagick::setimagebordercolor ( GmagickPixel $color )

Sets the image border color.

Parâmetros

color

The border pixel wand.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimageblueprimary
Gmagick::setimagechanneldepth
Gmagick


Sets the depth of a particular image channel

Gmagick::setimagebordercolor
Gmagick::setimagecolorspace
Gmagick
PHP Manual

Gmagick::setimagechanneldepth

(PECL gmagick >= Unknown)

Gmagick::setimagechanneldepth — Sets the depth of a particular image channel

Descrição

public Gmagick Gmagick::setimagechanneldepth ( int $channel , int $depth )

Sets the depth of a particular image channel.

Parâmetros

channel

Identify which channel to extract: RedChannel, GreenChannel, BlueChannel, OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, BlackChannel.

depth

The image depth in bits.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimagebordercolor
Gmagick::setimagecolorspace
Gmagick


Sets the image colorspace

Gmagick::setimagechanneldepth
Gmagick::setimagecompose
Gmagick
PHP Manual

Gmagick::setimagecolorspace

(PECL gmagick >= Unknown)

Gmagick::setimagecolorspace — Sets the image colorspace

Descrição

public Gmagick Gmagick::setimagecolorspace ( int $colorspace )

Sets the image colorspace.

Parâmetros

colorspace

The image colorspace: UndefinedColorspace, RGBColorspace, GRAYColorspace, TransparentColorspace, OHTAColorspace, XYZColorspace, YCbCrColorspace, YCCColorspace, YIQColorspace, YPbPrColorspace, YPbPrColorspace, YUVColorspace, CMYKColorspace, sRGBColorspace, HSLColorspace, or HWBColorspace.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimagechanneldepth
Gmagick::setimagecompose
Gmagick


Sets the image composite operator

Gmagick::setimagecolorspace
Gmagick::setimagedelay
Gmagick
PHP Manual

Gmagick::setimagecompose

(PECL gmagick >= Unknown)

Gmagick::setimagecompose — Sets the image composite operator

Descrição

public Gmagick Gmagick::setimagecompose ( int $composite )

Sets the image composite operator.

Parâmetros

composite

The image composite operator.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimagecolorspace
Gmagick::setimagedelay
Gmagick


Sets the image delay

Gmagick::setimagecompose
Gmagick::setimagedepth
Gmagick
PHP Manual

Gmagick::setimagedelay

(PECL gmagick >= Unknown)

Gmagick::setimagedelay — Sets the image delay

Descrição

public Gmagick Gmagick::setimagedelay ( int $delay )

Sets the image delay

Parâmetros

delay

The image delay in 1/100th of a second.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagecompose
Gmagick::setimagedepth
Gmagick


Sets the image depth

Gmagick::setimagedelay
Gmagick::setimagedispose
Gmagick
PHP Manual

Gmagick::setimagedepth

(PECL gmagick >= Unknown)

Gmagick::setimagedepth — Sets the image depth

Descrição

public Gmagick Gmagick::setimagedepth ( int $depth )

Sets the image depth

Parâmetros

depth

The image depth in bits: 8, 16, or 32.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagedelay
Gmagick::setimagedispose
Gmagick


Sets the image disposal method

Gmagick::setimagedepth
Gmagick::setimagefilename
Gmagick
PHP Manual

Gmagick::setimagedispose

(PECL gmagick >= Unknown)

Gmagick::setimagedispose — Sets the image disposal method

Descrição

public Gmagick Gmagick::setimagedispose ( int $disposeType )

Sets the image disposal method.

Parâmetros

disposeType

The image disposal type.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimagedepth
Gmagick::setimagefilename
Gmagick


Sets the filename of a particular image in a sequence

Gmagick::setimagedispose
Gmagick::setimageformat
Gmagick
PHP Manual

Gmagick::setimagefilename

(PECL gmagick >= Unknown)

Gmagick::setimagefilename — Sets the filename of a particular image in a sequence

Descrição

public Gmagick Gmagick::setimagefilename ( string $filename )

Sets the filename of a particular image in a sequence.

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagedispose
Gmagick::setimageformat
Gmagick


Sets the format of a particular image

Gmagick::setimagefilename
Gmagick::setimagegamma
Gmagick
PHP Manual

Gmagick::setimageformat

(PECL gmagick >= Unknown)

Gmagick::setimageformat — Sets the format of a particular image

Descrição

public Gmagick Gmagick::setimageformat ( string $imageFormat )

Sets the format of a particular image in a sequence.

Parâmetros

imageFormat

The image format.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagefilename
Gmagick::setimagegamma
Gmagick


Sets the image gamma

Gmagick::setimageformat
Gmagick::setimagegreenprimary
Gmagick
PHP Manual

Gmagick::setimagegamma

(PECL gmagick >= Unknown)

Gmagick::setimagegamma — Sets the image gamma

Descrição

public Gmagick Gmagick::setimagegamma ( float $gamma )

Sets the image gamma.

Parâmetros

gamma

The image gamma.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimageformat
Gmagick::setimagegreenprimary
Gmagick


TSets the image chromaticity green primary point.

Gmagick::setimagegamma
Gmagick::setimageindex
Gmagick
PHP Manual

Gmagick::setimagegreenprimary

(PECL gmagick >= Unknown)

Gmagick::setimagegreenprimary — TSets the image chromaticity green primary point.

Descrição

public Gmagick Gmagick::setimagegreenprimary ( float $x , float $y )

Sets the image chromaticity green primary point.

Parâmetros

x

The chromaticity green primary x-point.

y

The chromaticity green primary y-point.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagegamma
Gmagick::setimageindex
Gmagick


Set the iterator to the position in the image list specified with the index parameter

Gmagick::setimagegreenprimary
Gmagick::setimageinterlacescheme
Gmagick
PHP Manual

Gmagick::setimageindex

(PECL gmagick >= Unknown)

Gmagick::setimageindex — Set the iterator to the position in the image list specified with the index parameter

Descrição

public Gmagick Gmagick::setimageindex ( int $index )

Set the iterator to the position in the image list specified with the index parameter.

Parâmetros

index

The scene number.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagegreenprimary
Gmagick::setimageinterlacescheme
Gmagick


Sets the interlace scheme of the image.

Gmagick::setimageindex
Gmagick::setimageiterations
Gmagick
PHP Manual

Gmagick::setimageinterlacescheme

(PECL gmagick >= Unknown)

Gmagick::setimageinterlacescheme — Sets the interlace scheme of the image.

Descrição

public Gmagick Gmagick::setimageinterlacescheme ( int $interlace )

Sets the interlace scheme of the image.

Parâmetros

interlace

The image interlace scheme: NoInterlace, LineInterlace, PlaneInterlace, PartitionInterlace.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setimageindex
Gmagick::setimageiterations
Gmagick


Sets the image iterations.

Gmagick::setimageinterlacescheme
Gmagick::setimageprofile
Gmagick
PHP Manual

Gmagick::setimageiterations

(PECL gmagick >= Unknown)

Gmagick::setimageiterations — Sets the image iterations.

Descrição

public Gmagick Gmagick::setimageiterations ( int $iterations )

Sets the image iterations.

Parâmetros

iterations

The image delay in 1/100th of a second.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageinterlacescheme
Gmagick::setimageprofile
Gmagick


Adds a named profile to the Gmagick object

Gmagick::setimageiterations
Gmagick::setimageredprimary
Gmagick
PHP Manual

Gmagick::setimageprofile

(PECL gmagick >= Unknown)

Gmagick::setimageprofile — Adds a named profile to the Gmagick object

Descrição

public Gmagick Gmagick::setimageprofile ( string $name , string $profile )

Adds a named profile to the Gmagick object. If a profile with the same name already exists, it is replaced. This method differs from the Gmagick::ProfileImage() method in that it does not apply any CMS color profiles.

Parâmetros

name

Name of profile to add or remove: ICC, IPTC, or generic profile.

profile

The profile.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageiterations
Gmagick::setimageredprimary
Gmagick


Sets the image chromaticity red primary point.

Gmagick::setimageprofile
Gmagick::setimagerenderingintent
Gmagick
PHP Manual

Gmagick::setimageredprimary

(PECL gmagick >= Unknown)

Gmagick::setimageredprimary — Sets the image chromaticity red primary point.

Descrição

public Gmagick Gmagick::setimageredprimary ( float $x , float $y )

Sets the image chromaticity red primary point.

Parâmetros

x

The red primary x-point.

y

The red primary y-point.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageprofile
Gmagick::setimagerenderingintent
Gmagick


Sets the image rendering intent

Gmagick::setimageredprimary
Gmagick::setimageresolution
Gmagick
PHP Manual

Gmagick::setimagerenderingintent

(PECL gmagick >= Unknown)

Gmagick::setimagerenderingintent — Sets the image rendering intent

Descrição

public Gmagick Gmagick::setimagerenderingintent ( int $rendering_intent )

Sets the image rendering intent.

Parâmetros

rendering_intent

The image rendering intent: UndefinedIntent, SaturationIntent, PerceptualIntent, AbsoluteIntent, or RelativeIntent.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageredprimary
Gmagick::setimageresolution
Gmagick


Sets the image resolution

Gmagick::setimagerenderingintent
Gmagick::setimagescene
Gmagick
PHP Manual

Gmagick::setimageresolution

(PECL gmagick >= Unknown)

Gmagick::setimageresolution — Sets the image resolution

Descrição

public Gmagick Gmagick::setimageresolution ( float $xResolution , float $yResolution )

Sets the image resolution.

Parâmetros

xResolution

The image x resolution.

yResolution

The image y resolution.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagerenderingintent
Gmagick::setimagescene
Gmagick


Sets the image scene

Gmagick::setimageresolution
Gmagick::setimagetype
Gmagick
PHP Manual

Gmagick::setimagescene

(PECL gmagick >= Unknown)

Gmagick::setimagescene — Sets the image scene

Descrição

public Gmagick Gmagick::setimagescene ( int $scene )

Sets the image scene.

Parâmetros

scene

The image scene number.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageresolution
Gmagick::setimagetype
Gmagick


Sets the image type

Gmagick::setimagescene
Gmagick::setimageunits
Gmagick
PHP Manual

Gmagick::setimagetype

(PECL gmagick >= Unknown)

Gmagick::setimagetype — Sets the image type

Descrição

public Gmagick Gmagick::setimagetype ( int $imgType )

Sets the image type.

Parâmetros

imgType

The image type: UndefinedType, BilevelType, GrayscaleType, GrayscaleMatteType, PaletteType, PaletteMatteType, TrueColorType, TrueColorMatteType, ColorSeparationType, ColorSeparationMatteType, or OptimizeType.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagescene
Gmagick::setimageunits
Gmagick


Sets the image units of resolution.

Gmagick::setimagetype
Gmagick::setimagewhitepoint
Gmagick
PHP Manual

Gmagick::setimageunits

(PECL gmagick >= Unknown)

Gmagick::setimageunits — Sets the image units of resolution.

Descrição

public Gmagick Gmagick::setimageunits ( int $resolution )

Sets the image units of resolution.

Parâmetros

resolution

The image units of resolution : Undefinedresolution, PixelsPerInchResolution, or PixelsPerCentimeterResolution.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagetype
Gmagick::setimagewhitepoint
Gmagick


Sets the image chromaticity white point.

Gmagick::setimageunits
Gmagick::setsamplingfactors
Gmagick
PHP Manual

Gmagick::setimagewhitepoint

(PECL gmagick >= Unknown)

Gmagick::setimagewhitepoint — Sets the image chromaticity white point.

Descrição

public Gmagick Gmagick::setimagewhitepoint ( float $x , float $y )

Sets the image chromaticity white point.

Parâmetros

x

The white x-point.

y

The white y-point.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimageunits
Gmagick::setsamplingfactors
Gmagick


Sets the image sampling factors.

Gmagick::setimagewhitepoint
Gmagick::setsize
Gmagick
PHP Manual

Gmagick::setsamplingfactors

(PECL gmagick >= Unknown)

Gmagick::setsamplingfactors — Sets the image sampling factors.

Descrição

public Gmagick Gmagick::setsamplingfactors ( array $factors )

Sets the image sampling factors.

Parâmetros

factors

An array of doubles representing the sampling factor for each color component (in RGB order).

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setimagewhitepoint
Gmagick::setsize
Gmagick


Sets the size of the Gmagick object

Gmagick::setsamplingfactors
Gmagick::shearimage
Gmagick
PHP Manual

Gmagick::setsize

(PECL gmagick >= Unknown)

Gmagick::setsize — Sets the size of the Gmagick object

Descrição

public Gmagick Gmagick::setsize ( int $columns , int $rows )

Sets the size of the Gmagick object. Set it before you read a raw image format such as RGB, GRAY, or CMYK.

Parâmetros

columns

The width in pixels.

rows

The height in pixels.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::setsamplingfactors
Gmagick::shearimage
Gmagick


Creating a parallelogram

Gmagick::setsize
Gmagick::solarizeimage
Gmagick
PHP Manual

Gmagick::shearimage

(PECL gmagick >= Unknown)

Gmagick::shearimage — Creating a parallelogram

Descrição

public Gmagick Gmagick::shearimage ( mixed $color , float $xShear , float $yShear )

Slides one edge of an image along the X or Y axis, creating a parallelogram. An X direction shear slides an edge along the X axis, while a Y direction shear slides an edge along the Y axis. The amount of the shear is controlled by a shear angle. For X direction shears, x_shear is measured relative to the Y axis, and similarly, for Y direction shears y_shear is measured relative to the X axis. Empty triangles left over from shearing the image are filled with the background color.

Parâmetros

color

The background pixel wand.

xShear

The number of degrees to shear the image.

yShear

The number of degrees to shear the image.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::setsize
Gmagick::solarizeimage
Gmagick


Applies a solarizing effect to the image

Gmagick::shearimage
Gmagick::spreadimage
Gmagick
PHP Manual

Gmagick::solarizeimage

(PECL gmagick >= Unknown)

Gmagick::solarizeimage — Applies a solarizing effect to the image

Descrição

public Gmagick Gmagick::solarizeimage ( int $threshold )

Applies a special effect to the image, similar to the effect achieved in a photo darkroom by selectively exposing areas of photo sensitive paper to light. Threshold ranges from 0 to QuantumRange and is a measure of the extent of the solarization.

Parâmetros

threshold

Define the extent of the solarization.

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::shearimage
Gmagick::spreadimage
Gmagick


Randomly displaces each pixel in a block

Gmagick::solarizeimage
Gmagick::stripimage
Gmagick
PHP Manual

Gmagick::spreadimage

(PECL gmagick >= Unknown)

Gmagick::spreadimage — Randomly displaces each pixel in a block

Descrição

public Gmagick Gmagick::spreadimage ( float $radius )

Special effects method that randomly displaces each pixel in a block defined by the radius parameter.

Parâmetros

radius

Choose a random pixel in a neighborhood of this extent.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::solarizeimage
Gmagick::stripimage
Gmagick


Strips an image of all profiles and comments

Gmagick::spreadimage
Gmagick::swirlimage
Gmagick
PHP Manual

Gmagick::stripimage

(PECL gmagick >= Unknown)

Gmagick::stripimage — Strips an image of all profiles and comments

Descrição

public Gmagick Gmagick::stripimage ( void )

Strips an image of all profiles and comments.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::spreadimage
Gmagick::swirlimage
Gmagick


Swirls the pixels about the center of the image

Gmagick::stripimage
Gmagick::thumbnailimage
Gmagick
PHP Manual

Gmagick::swirlimage

(PECL gmagick >= Unknown)

Gmagick::swirlimage — Swirls the pixels about the center of the image

Descrição

public Gmagick Gmagick::swirlimage ( float $degrees )

Swirls the pixels about the center of the image, where degrees indicates the sweep of the arc through which each pixel is moved. You get a more dramatic effect as the degrees move from 1 to 360.

Parâmetros

degrees

Define the tightness of the swirling effect.

Valor Retornado

The Gmagick object on success

Erros

Throws an GmagickException on error.

Gmagick::stripimage
Gmagick::thumbnailimage
Gmagick


Changes the size of an image

Gmagick::swirlimage
Gmagick::trimimage
Gmagick
PHP Manual

Gmagick::thumbnailimage

(PECL gmagick >= Unknown)

Gmagick::thumbnailimage — Changes the size of an image

Descrição

public Gmagick Gmagick::thumbnailimage ( int $width , int $height [, bool $fit = false ] )

Changes the size of an image to the given dimensions and removes any associated profiles. The goal is to produce small low cost thumbnail images suited for display on the Web. If TRUE is given as a third parameter then columns and rows parameters are used as maximums for each side. Both sides will be scaled down until the match or are smaller than the parameter given for the side.

Parâmetros

width

Image width

height

Image height

Valor Retornado

The Gmagick object on success.

Erros

Throws an GmagickException on error.

Gmagick::swirlimage
Gmagick::trimimage
Gmagick


Remove edges from the image

Gmagick::thumbnailimage
Gmagick::write
Gmagick
PHP Manual

Gmagick::trimimage

(PECL gmagick >= Unknown)

Gmagick::trimimage — Remove edges from the image

Descrição

public Gmagick Gmagick::trimimage ( float $fuzz )

Remove edges that are the background color from the image.

Parâmetros

fuzz

By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. This parameter represents the variation on the quantum range.

Valor Retornado

The Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::thumbnailimage
Gmagick::write
Gmagick


Writes an image to the specified filename

Gmagick::trimimage
Gmagick::writeimage
Gmagick
PHP Manual

Gmagick::write

(PECL gmagick >= Unknown)

Gmagick::write — Writes an image to the specified filename

Descrição

public void Gmagick::write ( string $filename )

Writes an image to the specified filename. If the filename parameter is NULL, the image is written to the filename set by Gmagick::ReadImage() or Gmagick::SetImageFilename().

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::trimimage
Gmagick::writeimage
Gmagick


Writes an image to the specified filename

Gmagick::write
GmagickDraw
Gmagick
PHP Manual

Gmagick::writeimage

(PECL gmagick >= Unknown)

Gmagick::writeimage — Writes an image to the specified filename

Descrição

public Gmagick Gmagick::writeimage ( string $filename [, bool $all_frames = false ] )

Writes an image to the specified filename. If the filename parameter is NULL, the image is written to the filename set by Gmagick::ReadImage() or Gmagick::SetImageFilename().

Parâmetros

filename

The image filename.

Valor Retornado

The Gmagick object

Erros

Throws an GmagickException on error.

Gmagick::write
GmagickDraw
Gmagick


The GmagickDraw class

Introdução

Description of the class.

Sinopse da classe

GmagickDraw {
/* Methods */
public GmagickDraw annotate ( float $x , float $y , string $text )
public GmagickDraw arc ( float $sx , float $sy , float $ex , float $ey , float $sd , float $ed )
public GmagickDraw bezier ( array $coordinate_array )
public GmagickDraw ellipse ( float $ox , float $oy , float $rx , float $ry , float $start , float $end )
public void getfillcolor ( void )
public float getfillopacity ( void )
public string getfont ( void )
public float getfontsize ( void )
public int getfontstyle ( void )
public int getfontweight ( void )
public void getstrokecolor ( void )
public float getstrokeopacity ( void )
public float getstrokewidth ( void )
public int gettextdecoration ( void )
public string gettextencoding ( void )
public GmagickDraw line ( float $sx , float $sy , float $ex , float $ey )
public GmagickDraw point ( float $x , float $y )
public GmagickDraw polygon ( array $coordinates )
public GmagickDraw polyline ( array $coordinate_array )
public GmagickDraw rectangle ( float $x1 , float $y1 , float $x2 , float $y2 )
public GmagickDraw rotate ( float $degrees )
public GmagickDraw roundrectangle ( float $x1 , float $y1 , float $x2 , float $y2 , float $rx , float $ry )
public GmagickDraw scale ( float $x , float $y )
public GmagickDraw setfillcolor ( string $color )
public GmagickDraw setfillopacity ( float $fill_opacity )
public GmagickDraw setfont ( string $font )
public GmagickDraw setfontsize ( float $pointsize )
public GmagickDraw setfontstyle ( int $style )
public GmagickDraw setfontweight ( int $weight )
public GmagickDraw setstrokecolor ( GmagickPixel $color )
public GmagickDraw setstrokeopacity ( float $stroke_opacity )
public GmagickDraw setstrokewidth ( float $width )
public GmagickDraw settextdecoration ( int $decoration )
public GmagickDraw settextencoding ( string $encoding )
}

Índice

  • GmagickDraw::annotate — Draws text on the image
  • GmagickDraw::arc — Draws an arc
  • GmagickDraw::bezier — Draws a bezier curve
  • GmagickDraw::ellipse — Draws an ellipse on the image
  • GmagickDraw::getfillcolor — Returns the fill color
  • GmagickDraw::getfillopacity — Returns the opacity used when drawing
  • GmagickDraw::getfont — Returns the font
  • GmagickDraw::getfontsize — Returns the font pointsize
  • GmagickDraw::getfontstyle — Returns the font style
  • GmagickDraw::getfontweight — Returns the font weight
  • GmagickDraw::getstrokecolor — Returns the color used for stroking object outlines
  • GmagickDraw::getstrokeopacity — Returns the opacity of stroked object outlines
  • GmagickDraw::getstrokewidth — Returns the width of the stroke used to draw object outlines
  • GmagickDraw::gettextdecoration — Returns the text decoration
  • GmagickDraw::gettextencoding — Returns the code set used for text annotations
  • GmagickDraw::line — The line purpose
  • GmagickDraw::point — Draws a point
  • GmagickDraw::polygon — Draws a polygon
  • GmagickDraw::polyline — Draws a polyline
  • GmagickDraw::rectangle — Draws a rectangle
  • GmagickDraw::rotate — Applies the specified rotation to the current coordinate space
  • GmagickDraw::roundrectangle — Draws a rounded rectangle
  • GmagickDraw::scale — Adjusts the scaling factor
  • GmagickDraw::setfillcolor — Sets the fill color to be used for drawing filled objects.
  • GmagickDraw::setfillopacity — The setfillopacity purpose
  • GmagickDraw::setfont — Sets the fully-specified font to use when annotating with text.
  • GmagickDraw::setfontsize — Sets the font pointsize to use when annotating with text.
  • GmagickDraw::setfontstyle — Sets the font style to use when annotating with text
  • GmagickDraw::setfontweight — Sets the font weight
  • GmagickDraw::setstrokecolor — Sets the color used for stroking object outlines.
  • GmagickDraw::setstrokeopacity — Specifies the opacity of stroked object outlines.
  • GmagickDraw::setstrokewidth — Sets the width of the stroke used to draw object outlines.
  • GmagickDraw::settextdecoration — Specifies a decoration
  • GmagickDraw::settextencoding — Specifies specifies the text code set
Gmagick::writeimage
GmagickDraw::annotate
Gmagick


Draws text on the image

GmagickDraw
GmagickDraw::arc
GmagickDraw
PHP Manual

GmagickDraw::annotate

(PECL gmagick >= Unknown)

GmagickDraw::annotate — Draws text on the image

Descrição

public GmagickDraw GmagickDraw::annotate ( float $x , float $y , string $text )

Draws text on the image.

Parâmetros

x

x ordinate to left of text

y

y ordinate to text baseline

text

text to draw

Valor Retornado

The GmagickDraw object on success.

GmagickDraw
GmagickDraw::arc
GmagickDraw


Draws an arc

GmagickDraw::annotate
GmagickDraw::bezier
GmagickDraw
PHP Manual

GmagickDraw::arc

(PECL gmagick >= Unknown)

GmagickDraw::arc — Draws an arc

Descrição

public GmagickDraw GmagickDraw::arc ( float $sx , float $sy , float $ex , float $ey , float $sd , float $ed )

Draws an arc falling within a specified bounding rectangle on the image.

Parâmetros

sx

starting x ordinate of bounding rectangle

sy

starting y ordinate of bounding rectangle

ex

ending x ordinate of bounding rectangle

ey

ending y ordinate of bounding rectangle

sd

starting degrees of rotation

ed

ending degrees of rotation

Valor Retornado

The GmagickDraw object on success.

GmagickDraw::annotate
GmagickDraw::bezier
GmagickDraw


Draws a bezier curve

GmagickDraw::arc
GmagickDraw::ellipse
GmagickDraw
PHP Manual

GmagickDraw::bezier

(PECL gmagick >= Unknown)

GmagickDraw::bezier — Draws a bezier curve

Descrição

public GmagickDraw GmagickDraw::bezier ( array $coordinate_array )

Draws a bezier curve through a set of points on the image.

Parâmetros

coordinate_array

Coordinates array

Valor Retornado

The GmagickDraw object on success

GmagickDraw::arc
GmagickDraw::ellipse
GmagickDraw


Draws an ellipse on the image

GmagickDraw::bezier
GmagickDraw::getfillcolor
GmagickDraw
PHP Manual

GmagickDraw::ellipse

(PECL gmagick >= Unknown)

GmagickDraw::ellipse — Draws an ellipse on the image

Descrição

public GmagickDraw GmagickDraw::ellipse ( float $ox , float $oy , float $rx , float $ry , float $start , float $end )

Draws an ellipse on the image.

Parâmetros

ox

origin x ordinate

oy

origin y ordinate

rx

radius in x

ry

radius in y

start

starting rotation in degrees

end

ending rotation in degrees

Valor Retornado

The GmagickDraw object on success

GmagickDraw::bezier
GmagickDraw::getfillcolor
GmagickDraw


Returns the fill color

GmagickDraw::ellipse
GmagickDraw::getfillopacity
GmagickDraw
PHP Manual

GmagickDraw::getfillcolor

(PECL gmagick >= Unknown)

GmagickDraw::getfillcolor — Returns the fill color

Descrição

public void GmagickDraw::getfillcolor ( void )

Returns the fill color used for drawing filled objects.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The GmagickPixel fill color used for drawing filled objects.

GmagickDraw::ellipse
GmagickDraw::getfillopacity
GmagickDraw


Returns the opacity used when drawing

GmagickDraw::getfillcolor
GmagickDraw::getfont
GmagickDraw
PHP Manual

GmagickDraw::getfillopacity

(PECL gmagick >= Unknown)

GmagickDraw::getfillopacity — Returns the opacity used when drawing

Descrição

public float GmagickDraw::getfillopacity ( void )

Returns the opacity used when drawing

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the opacity used when drawing using the fill color or fill texture. Fully opaque is 1.0.

GmagickDraw::getfillcolor
GmagickDraw::getfont
GmagickDraw


Returns the font

GmagickDraw::getfillopacity
GmagickDraw::getfontsize
GmagickDraw
PHP Manual

GmagickDraw::getfont

(PECL gmagick >= Unknown)

GmagickDraw::getfont — Returns the font

Descrição

public string GmagickDraw::getfont ( void )

Returns a string specifying the font used when annotating with text.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and false if no font is set.

GmagickDraw::getfillopacity
GmagickDraw::getfontsize
GmagickDraw


Returns the font pointsize

GmagickDraw::getfont
GmagickDraw::getfontstyle
GmagickDraw
PHP Manual

GmagickDraw::getfontsize

(PECL gmagick >= Unknown)

GmagickDraw::getfontsize — Returns the font pointsize

Descrição

public float GmagickDraw::getfontsize ( void )

Returns the font pointsize used when annotating with text.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the font size associated with the current GmagickDraw object.

GmagickDraw::getfont
GmagickDraw::getfontstyle
GmagickDraw


Returns the font style

GmagickDraw::getfontsize
GmagickDraw::getfontweight
GmagickDraw
PHP Manual

GmagickDraw::getfontstyle

(PECL gmagick >= Unknown)

GmagickDraw::getfontstyle — Returns the font style

Descrição

public int GmagickDraw::getfontstyle ( void )

Returns the font style used when annotating with text.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the font style constant (STYLE_) associated with the GmagickDraw object or 0 if no style is set.

GmagickDraw::getfontsize
GmagickDraw::getfontweight
GmagickDraw


Returns the font weight

GmagickDraw::getfontstyle
GmagickDraw::getstrokecolor
GmagickDraw
PHP Manual

GmagickDraw::getfontweight

(PECL gmagick >= Unknown)

GmagickDraw::getfontweight — Returns the font weight

Descrição

public int GmagickDraw::getfontweight ( void )

Returns the font weight used when annotating with text.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an int on success and 0 if no weight is set.

GmagickDraw::getfontstyle
GmagickDraw::getstrokecolor
GmagickDraw


Returns the color used for stroking object outlines

GmagickDraw::getfontweight
GmagickDraw::getstrokeopacity
GmagickDraw
PHP Manual

GmagickDraw::getstrokecolor

(PECL gmagick >= Unknown)

GmagickDraw::getstrokecolor — Returns the color used for stroking object outlines

Descrição

public void GmagickDraw::getstrokecolor ( void )

Returns the color used for stroking object outlines.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an GmagickPixel object which describes the color

GmagickDraw::getfontweight
GmagickDraw::getstrokeopacity
GmagickDraw


Returns the opacity of stroked object outlines

GmagickDraw::getstrokecolor
GmagickDraw::getstrokewidth
GmagickDraw
PHP Manual

GmagickDraw::getstrokeopacity

(PECL gmagick >= Unknown)

GmagickDraw::getstrokeopacity — Returns the opacity of stroked object outlines

Descrição

public float GmagickDraw::getstrokeopacity ( void )

Returns the opacity of stroked object outlines.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a double describing the opacity.

GmagickDraw::getstrokecolor
GmagickDraw::getstrokewidth
GmagickDraw


Returns the width of the stroke used to draw object outlines

GmagickDraw::getstrokeopacity
GmagickDraw::gettextdecoration
GmagickDraw
PHP Manual

GmagickDraw::getstrokewidth

(PECL gmagick >= Unknown)

GmagickDraw::getstrokewidth — Returns the width of the stroke used to draw object outlines

Descrição

public float GmagickDraw::getstrokewidth ( void )

Returns the width of the stroke used to draw object outlines.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a double describing the stroke width.

GmagickDraw::getstrokeopacity
GmagickDraw::gettextdecoration
GmagickDraw


Returns the text decoration

GmagickDraw::getstrokewidth
GmagickDraw::gettextencoding
GmagickDraw
PHP Manual

GmagickDraw::gettextdecoration

(PECL gmagick >= Unknown)

GmagickDraw::gettextdecoration — Returns the text decoration

Descrição

public int GmagickDraw::gettextdecoration ( void )

Returns the decoration applied when annotating with text.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns one of the DECORATION_ constants and 0 if no decoration is set.

GmagickDraw::getstrokewidth
GmagickDraw::gettextencoding
GmagickDraw


Returns the code set used for text annotations

GmagickDraw::gettextdecoration
GmagickDraw::line
GmagickDraw
PHP Manual

GmagickDraw::gettextencoding

(PECL gmagick >= Unknown)

GmagickDraw::gettextencoding — Returns the code set used for text annotations

Descrição

public string GmagickDraw::gettextencoding ( void )

Returns a string which specifies the code set used for text annotations.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string specifying the code set or false if text encoding is not set.

GmagickDraw::gettextdecoration
GmagickDraw::line
GmagickDraw


The line purpose

GmagickDraw::gettextencoding
GmagickDraw::point
GmagickDraw
PHP Manual

GmagickDraw::line

(PECL gmagick >= Unknown)

GmagickDraw::line — The line purpose

Descrição

public GmagickDraw GmagickDraw::line ( float $sx , float $sy , float $ex , float $ey )

Draws a line on the image using the current stroke color, stroke opacity, and stroke width.

Parâmetros

sx

starting x ordinate

sy

starting y ordinate

ex

ending x ordinate

ey

ending y ordinate

Valor Retornado

The GmagickDraw object on success

GmagickDraw::gettextencoding
GmagickDraw::point
GmagickDraw


Draws a point

GmagickDraw::line
GmagickDraw::polygon
GmagickDraw
PHP Manual

GmagickDraw::point

(PECL gmagick >= Unknown)

GmagickDraw::point — Draws a point

Descrição

public GmagickDraw GmagickDraw::point ( float $x , float $y )

Draws a point using the current stroke color and stroke thickness at the specified coordinates.

Parâmetros

x

target x coordinate

y

target y coordinate

Valor Retornado

The GmagickDraw object on success

GmagickDraw::line
GmagickDraw::polygon
GmagickDraw


Draws a polygon

GmagickDraw::point
GmagickDraw::polyline
GmagickDraw
PHP Manual

GmagickDraw::polygon

(PECL gmagick >= Unknown)

GmagickDraw::polygon — Draws a polygon

Descrição

public GmagickDraw GmagickDraw::polygon ( array $coordinates )

Draws a polygon using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.

Parâmetros

coordinates

coordinate array

Valor Retornado

The GmagickDraw object on success

GmagickDraw::point
GmagickDraw::polyline
GmagickDraw


Draws a polyline

GmagickDraw::polygon
GmagickDraw::rectangle
GmagickDraw
PHP Manual

GmagickDraw::polyline

(PECL gmagick >= Unknown)

GmagickDraw::polyline — Draws a polyline

Descrição

public GmagickDraw GmagickDraw::polyline ( array $coordinate_array )

Draws a polyline using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.

Parâmetros

coordinate_array

The array of coordinates

Valor Retornado

The GmagickDraw object on success

GmagickDraw::polygon
GmagickDraw::rectangle
GmagickDraw


Draws a rectangle

GmagickDraw::polyline
GmagickDraw::rotate
GmagickDraw
PHP Manual

GmagickDraw::rectangle

(PECL gmagick >= Unknown)

GmagickDraw::rectangle — Draws a rectangle

Descrição

public GmagickDraw GmagickDraw::rectangle ( float $x1 , float $y1 , float $x2 , float $y2 )

Draws a rectangle given two coordinates and using the current stroke, stroke width, and fill settings.

Parâmetros

x1

x ordinate of first coordinate

y1

y ordinate of first coordinate

x2

x ordinate of second coordinate

y2

y ordinate of second coordinate

Valor Retornado

The GmagickDraw object on success

GmagickDraw::polyline
GmagickDraw::rotate
GmagickDraw


Applies the specified rotation to the current coordinate space

GmagickDraw::rectangle
GmagickDraw::roundrectangle
GmagickDraw
PHP Manual

GmagickDraw::rotate

(PECL gmagick >= Unknown)

GmagickDraw::rotate — Applies the specified rotation to the current coordinate space

Descrição

public GmagickDraw GmagickDraw::rotate ( float $degrees )

Applies the specified rotation to the current coordinate space.

Parâmetros

degrees

degrees of rotation

Valor Retornado

The GmagickDraw object on success

GmagickDraw::rectangle
GmagickDraw::roundrectangle
GmagickDraw


Draws a rounded rectangle

GmagickDraw::rotate
GmagickDraw::scale
GmagickDraw
PHP Manual

GmagickDraw::roundrectangle

(PECL gmagick >= Unknown)

GmagickDraw::roundrectangle — Draws a rounded rectangle

Descrição

public GmagickDraw GmagickDraw::roundrectangle ( float $x1 , float $y1 , float $x2 , float $y2 , float $rx , float $ry )

Draws a rounded rectangle given two coordinates, x and y corner radiuses and using the current stroke, stroke width, and fill settings.

Parâmetros

x1

x ordinate of first coordinate

y1

y ordinate of first coordinate

x2

x ordinate of second coordinate

y2

y ordinate of second coordinate

rx

radius of corner in horizontal direction

ry

radius of corner in vertical direction

Valor Retornado

The GmagickDraw object on success

GmagickDraw::rotate
GmagickDraw::scale
GmagickDraw


Adjusts the scaling factor

GmagickDraw::roundrectangle
GmagickDraw::setfillcolor
GmagickDraw
PHP Manual

GmagickDraw::scale

(PECL gmagick >= Unknown)

GmagickDraw::scale — Adjusts the scaling factor

Descrição

public GmagickDraw GmagickDraw::scale ( float $x , float $y )

Adjusts the scaling factor to apply in the horizontal and vertical directions to the current coordinate space.

Parâmetros

x

horizontal scale factor

y

vertical scale factor

Valor Retornado

The GmagickDraw object on success

GmagickDraw::roundrectangle
GmagickDraw::setfillcolor
GmagickDraw


Sets the fill color to be used for drawing filled objects.

GmagickDraw::scale
GmagickDraw::setfillopacity
GmagickDraw
PHP Manual

GmagickDraw::setfillcolor

(PECL gmagick >= Unknown)

GmagickDraw::setfillcolor — Sets the fill color to be used for drawing filled objects.

Descrição

public GmagickDraw GmagickDraw::setfillcolor ( string $color )

Sets the fill color to be used for drawing filled objects.

Parâmetros

color

GmagickPixel indicating color to use for filling.

Valor Retornado

The GmagickDraw object on success

GmagickDraw::scale
GmagickDraw::setfillopacity
GmagickDraw


The setfillopacity purpose

GmagickDraw::setfillcolor
GmagickDraw::setfont
GmagickDraw
PHP Manual

GmagickDraw::setfillopacity

(PECL gmagick >= Unknown)

GmagickDraw::setfillopacity — The setfillopacity purpose

Descrição

public GmagickDraw GmagickDraw::setfillopacity ( float $fill_opacity )

Sets the opacity to use when drawing using the fill color or fill texture. Setting it to 1.0 will make fill full opaque.

Parâmetros

fill_opacity

Fill opacity

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfillcolor
GmagickDraw::setfont
GmagickDraw


Sets the fully-specified font to use when annotating with text.

GmagickDraw::setfillopacity
GmagickDraw::setfontsize
GmagickDraw
PHP Manual

GmagickDraw::setfont

(PECL gmagick >= Unknown)

GmagickDraw::setfont — Sets the fully-specified font to use when annotating with text.

Descrição

public GmagickDraw GmagickDraw::setfont ( string $font )

Sets the fully-specified font to use when annotating with text

Parâmetros

font

font name

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfillopacity
GmagickDraw::setfontsize
GmagickDraw


Sets the font pointsize to use when annotating with text.

GmagickDraw::setfont
GmagickDraw::setfontstyle
GmagickDraw
PHP Manual

GmagickDraw::setfontsize

(PECL gmagick >= Unknown)

GmagickDraw::setfontsize — Sets the font pointsize to use when annotating with text.

Descrição

public GmagickDraw GmagickDraw::setfontsize ( float $pointsize )

Sets the font pointsize to use when annotating with text.

Parâmetros

pointsize

Text pointsize

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfont
GmagickDraw::setfontstyle
GmagickDraw


Sets the font style to use when annotating with text

GmagickDraw::setfontsize
GmagickDraw::setfontweight
GmagickDraw
PHP Manual

GmagickDraw::setfontstyle

(PECL gmagick >= Unknown)

GmagickDraw::setfontstyle — Sets the font style to use when annotating with text

Descrição

public GmagickDraw GmagickDraw::setfontstyle ( int $style )

Sets the font style to use when annotating with text. The AnyStyle enumeration acts as a wild-card "don't care" option.

Parâmetros

style

Font style (NormalStyle, ItalicStyle, ObliqueStyle, AnyStyle)

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfontsize
GmagickDraw::setfontweight
GmagickDraw


Sets the font weight

GmagickDraw::setfontstyle
GmagickDraw::setstrokecolor
GmagickDraw
PHP Manual

GmagickDraw::setfontweight

(PECL gmagick >= Unknown)

GmagickDraw::setfontweight — Sets the font weight

Descrição

public GmagickDraw GmagickDraw::setfontweight ( int $weight )

Sets the font weight to use when annotating with text.

Parâmetros

weight

Font weight (valid range 100-900)

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfontstyle
GmagickDraw::setstrokecolor
GmagickDraw


Sets the color used for stroking object outlines.

GmagickDraw::setfontweight
GmagickDraw::setstrokeopacity
GmagickDraw
PHP Manual

GmagickDraw::setstrokecolor

(PECL gmagick >= Unknown)

GmagickDraw::setstrokecolor — Sets the color used for stroking object outlines.

Descrição

public GmagickDraw GmagickDraw::setstrokecolor ( GmagickPixel $color )

Sets the color used for stroking object outlines.

Parâmetros

color

GmagickPixel representing the color for the stroke.

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setfontweight
GmagickDraw::setstrokeopacity
GmagickDraw


Specifies the opacity of stroked object outlines.

GmagickDraw::setstrokecolor
GmagickDraw::setstrokewidth
GmagickDraw
PHP Manual

GmagickDraw::setstrokeopacity

(PECL gmagick >= Unknown)

GmagickDraw::setstrokeopacity — Specifies the opacity of stroked object outlines.

Descrição

public GmagickDraw GmagickDraw::setstrokeopacity ( float $stroke_opacity )

Specifies the opacity of stroked object outlines.

Parâmetros

stroke_opacity

Stroke opacity. The value 1.0 is opaque.

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setstrokecolor
GmagickDraw::setstrokewidth
GmagickDraw


Sets the width of the stroke used to draw object outlines.

GmagickDraw::setstrokeopacity
GmagickDraw::settextdecoration
GmagickDraw
PHP Manual

GmagickDraw::setstrokewidth

(PECL gmagick >= Unknown)

GmagickDraw::setstrokewidth — Sets the width of the stroke used to draw object outlines.

Descrição

public GmagickDraw GmagickDraw::setstrokewidth ( float $width )

Sets the width of the stroke used to draw object outlines

Parâmetros

width

Stroke width

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setstrokeopacity
GmagickDraw::settextdecoration
GmagickDraw


Specifies a decoration

GmagickDraw::setstrokewidth
GmagickDraw::settextencoding
GmagickDraw
PHP Manual

GmagickDraw::settextdecoration

(PECL gmagick >= Unknown)

GmagickDraw::settextdecoration — Specifies a decoration

Descrição

public GmagickDraw GmagickDraw::settextdecoration ( int $decoration )

Specifies a decoration to be applied when annotating with text.

Parâmetros

int

Text decoration. One of NoDecoration, UnderlineDecoration, OverlineDecoration, or LineThroughDecoration

Valor Retornado

The GmagickDraw object on success

GmagickDraw::setstrokewidth
GmagickDraw::settextencoding
GmagickDraw


Specifies specifies the text code set

GmagickDraw::settextdecoration
GmagickPixel
GmagickDraw
PHP Manual

GmagickDraw::settextencoding

(PECL gmagick >= Unknown)

GmagickDraw::settextencoding — Specifies specifies the text code set

Descrição

public GmagickDraw GmagickDraw::settextencoding ( string $encoding )

Specifies specifies the code set to use for text annotations. The only character encoding which may be specified at this time is "UTF-8" for representing Unicode as a sequence of bytes. Specify an empty string to set text encoding to the system's default. Successful text annotation using Unicode may require fonts designed to support Unicode.

Parâmetros

encoding

Character string specifying text encoding

Valor Retornado

The GmagickDraw object on success

GmagickDraw::settextdecoration
GmagickPixel
GmagickDraw


The GmagickPixel class

Introdução

Description of the class.

Sinopse da classe

GmagickPixel {
/* Methods */
__construct ([ string $color ] )
public mixed getcolor ([ bool $as_array [, bool $normalize_array ]] )
public int getcolorcount ( void )
public float getcolorvalue ( int $color )
public GmagickPixel setcolor ( string $color )
public GmagickPixel setcolorvalue ( int $color , float $value )
}

Índice

  • GmagickPixel::__construct — The GmagickPixel constructor
  • GmagickPixel::getcolor — Returns the color
  • GmagickPixel::getcolorcount — Returns the color count associated with this color
  • GmagickPixel::getcolorvalue — Gets the normalized value of the provided color channel
  • GmagickPixel::setcolor — Sets the color
  • GmagickPixel::setcolorvalue — Sets the normalized value of one of the channels
GmagickDraw::settextencoding
GmagickPixel::__construct
Gmagick


The GmagickPixel constructor

GmagickPixel
GmagickPixel::getcolor
GmagickPixel
PHP Manual

GmagickPixel::__construct

(PECL gmagick >= Unknown)

GmagickPixel::__construct — The GmagickPixel constructor

Descrição

GmagickPixel::__construct ([ string $color ] )

Constructs an GmagickPixel object. If a color is specified, the object is constructed and then initialised with that color before being returned.

Parâmetros

color

The optional color string to use as the initial value of this object.

Valor Retornado

The GmagickPixel object on success.

GmagickPixel
GmagickPixel::getcolor
GmagickPixel


Returns the color

GmagickPixel::__construct
GmagickPixel::getcolorcount
GmagickPixel
PHP Manual

GmagickPixel::getcolor

(PECL gmagick >= Unknown)

GmagickPixel::getcolor — Returns the color

Descrição

public mixed GmagickPixel::getcolor ([ bool $as_array [, bool $normalize_array ]] )

Returns the color described by the GmagickPixel object, as an array. If the color has an opacity channel set, this is provided as a fourth value in the list.

Parâmetros

as_array

True to indicate return of array instead of string

normalize_array

Normalize the color values

Valor Retornado

An array of channel values, each normalized if TRUE is given as param. Throws GmagickPixelException on error.

GmagickPixel::__construct
GmagickPixel::getcolorcount
GmagickPixel


Returns the color count associated with this color

GmagickPixel::getcolor
GmagickPixel::getcolorvalue
GmagickPixel
PHP Manual

GmagickPixel::getcolorcount

(PECL gmagick >= Unknown)

GmagickPixel::getcolorcount — Returns the color count associated with this color

Descrição

public int GmagickPixel::getcolorcount ( void )

Returns the color count associated with this color

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the color count as an integer on success, throws GmagickPixelException on failure.

GmagickPixel::getcolor
GmagickPixel::getcolorvalue
GmagickPixel


Gets the normalized value of the provided color channel

GmagickPixel::getcolorcount
GmagickPixel::setcolor
GmagickPixel
PHP Manual

GmagickPixel::getcolorvalue

(PECL gmagick >= Unknown)

GmagickPixel::getcolorvalue — Gets the normalized value of the provided color channel

Descrição

public float GmagickPixel::getcolorvalue ( int $color )

Retrieves the value of the color channel specified, as a floating-point number between 0 and 1.

Parâmetros

color

The channel to check, specified as one of the Gmagick channel constants.

Valor Retornado

The value of the channel, as a normalized floating-point number, throwing GmagickPixelException on error.

GmagickPixel::getcolorcount
GmagickPixel::setcolor
GmagickPixel


Sets the color

GmagickPixel::getcolorvalue
GmagickPixel::setcolorvalue
GmagickPixel
PHP Manual

GmagickPixel::setcolor

(PECL gmagick >= Unknown)

GmagickPixel::setcolor — Sets the color

Descrição

public GmagickPixel GmagickPixel::setcolor ( string $color )

Sets the color described by the GmagickPixel object, with a string (e.g. "blue", "#0000ff", "rgb(0,0,255)", "cmyk(100,100,100,10)", etc.).

Parâmetros

color

The color definition to use in order to initialise the GmagickPixel object.

Valor Retornado

The GmagickPixel object on success.

GmagickPixel::getcolorvalue
GmagickPixel::setcolorvalue
GmagickPixel


Sets the normalized value of one of the channels

GmagickPixel::setcolor
Cairo
GmagickPixel
PHP Manual

GmagickPixel::setcolorvalue

(PECL gmagick >= Unknown)

GmagickPixel::setcolorvalue — Sets the normalized value of one of the channels

Descrição

public GmagickPixel GmagickPixel::setcolorvalue ( int $color , float $value )

Sets the value of the specified channel of this object to the provided value, which should be between 0 and 1. This function can be used to provide an opacity channel to a GmagickPixel object.

Parâmetros

color

One of the Gmagick channel color constants.

value

The value to set this channel to, ranging from 0 to 1.

Valor Retornado

The GmagickPixel object on success.

GmagickPixel::setcolor
Cairo
GmagickPixel


Cairo

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Cairo Funções
    • cairo_create — Returns a new CairoContext object on the requested surface.
    • cairo_font_face_get_type — Description
    • cairo_font_face_status — Description
    • cairo_font_options_create — Description
    • cairo_font_options_equal — Description
    • cairo_font_options_get_antialias — Description
    • cairo_font_options_get_hint_metrics — Description
    • cairo_font_options_get_hint_style — Description
    • cairo_font_options_get_subpixel_order — Description
    • cairo_font_options_hash — Description
    • cairo_font_options_merge — Description
    • cairo_font_options_set_antialias — Description
    • cairo_font_options_set_hint_metrics — Description
    • cairo_font_options_set_hint_style — Description
    • cairo_font_options_set_subpixel_order — Description
    • cairo_font_options_status — Description
    • cairo_format_stride_for_width — Description
    • cairo_image_surface_create_for_data — Description
    • cairo_image_surface_create_from_png — Description
    • cairo_image_surface_create — Description
    • cairo_image_surface_get_data — Description
    • cairo_image_surface_get_format — Description
    • cairo_image_surface_get_height — Description
    • cairo_image_surface_get_stride — Description
    • cairo_image_surface_get_width — Description
    • cairo_matrix_create_scale — Sinônimo de CairoMatrix::initScale
    • cairo_matrix_create_translate — Sinônimo de CairoMatrix::initTranslate
    • cairo_matrix_invert — Description
    • cairo_matrix_multiply — Description
    • cairo_matrix_rotate — Description
    • cairo_matrix_transform_distance — Description
    • cairo_matrix_transform_point — Description
    • cairo_matrix_translate — Description
    • cairo_pattern_add_color_stop_rgb — Description
    • cairo_pattern_add_color_stop_rgba — Description
    • cairo_pattern_create_for_surface — Description
    • cairo_pattern_create_linear — Description
    • cairo_pattern_create_radial — Description
    • cairo_pattern_create_rgb — Description
    • cairo_pattern_create_rgba — Description
    • cairo_pattern_get_color_stop_count — Description
    • cairo_pattern_get_color_stop_rgba — Description
    • cairo_pattern_get_extend — Description
    • cairo_pattern_get_filter — Description
    • cairo_pattern_get_linear_points — Description
    • cairo_pattern_get_matrix — Description
    • cairo_pattern_get_radial_circles — Description
    • cairo_pattern_get_rgba — Description
    • cairo_pattern_get_surface — Description
    • cairo_pattern_get_type — Description
    • cairo_pattern_set_extend — Description
    • cairo_pattern_set_filter — Description
    • cairo_pattern_set_matrix — Description
    • cairo_pattern_status — Description
    • cairo_pdf_surface_create — Description
    • cairo_pdf_surface_set_size — Description
    • cairo_ps_get_levels — Description
    • cairo_ps_level_to_string — Description
    • cairo_ps_surface_create — Description
    • cairo_ps_surface_dsc_begin_page_setup — Description
    • cairo_ps_surface_dsc_begin_setup — Description
    • cairo_ps_surface_dsc_comment — Description
    • cairo_ps_surface_get_eps — Description
    • cairo_ps_surface_restrict_to_level — Description
    • cairo_ps_surface_set_eps — Description
    • cairo_ps_surface_set_size — Description
    • cairo_scaled_font_create — Description
    • cairo_scaled_font_extents — Description
    • cairo_scaled_font_get_ctm — Description
    • cairo_scaled_font_get_font_face — Description
    • cairo_scaled_font_get_font_matrix — Description
    • cairo_scaled_font_get_font_options — Description
    • cairo_scaled_font_get_scale_matrix — Description
    • cairo_scaled_font_get_type — Description
    • cairo_scaled_font_glyph_extents — Description
    • cairo_scaled_font_status — Description
    • cairo_scaled_font_text_extents — Description
    • cairo_surface_copy_page — Description
    • cairo_surface_create_similar — Description
    • cairo_surface_finish — Description
    • cairo_surface_flush — Description
    • cairo_surface_get_content — Description
    • cairo_surface_get_device_offset — Description
    • cairo_surface_get_font_options — Description
    • cairo_surface_get_type — Description
    • cairo_surface_mark_dirty_rectangle — Description
    • cairo_surface_mark_dirty — Description
    • cairo_surface_set_device_offset — Description
    • cairo_surface_set_fallback_resolution — Description
    • cairo_surface_show_page — Description
    • cairo_surface_status — Description
    • cairo_surface_write_to_png — Description
    • cairo_svg_surface_create — Description
    • cairo_svg_surface_restrict_to_version — Description
    • cairo_svg_version_to_string — Description
  • Cairo — The Cairo class
    • Cairo::availableFonts — Retrieves the availables font types
    • Cairo::availableSurfaces — Retrieves all available surfaces
    • Cairo::statusToString — Retrieves the current status as string
    • Cairo::version — Retrives cairo's library version
    • Cairo::versionString — Retrieves cairo version as string
  • CairoContext — The CairoContext class
    • CairoContext::appendPath — Appends a path to current path
    • CairoContext::arc — Adds a circular arc
    • CairoContext::arcNegative — Adds a negative arc
    • CairoContext::clip — Establishes a new clip region
    • CairoContext::clipExtents — Computes the area inside the current clip
    • CairoContext::clipPreserve — Establishes a new clip region from the current clip
    • CairoContext::clipRectangleList — Retrieves the current clip as a list of rectangles
    • CairoContext::closePath — Closes the current path
    • CairoContext::__construct — Creates a new CairoContext
    • CairoContext::copyPage — Emits the current page
    • CairoContext::copyPath — Creates a copy of the current path
    • CairoContext::copyPathFlat — Gets a flattened copy of the current path
    • CairoContext::curveTo — Adds a curve
    • CairoContext::deviceToUser — Transform a coordinate
    • CairoContext::deviceToUserDistance — Transform a distance
    • CairoContext::fill — Fills the current path
    • CairoContext::fillExtents — Computes the filled area
    • CairoContext::fillPreserve — Fills and preserve the current path
    • CairoContext::fontExtents — Get the font extents
    • CairoContext::getAntialias — Retrives the current antialias mode
    • CairoContext::getCurrentPoint — The getCurrentPoint purpose
    • CairoContext::getDash — The getDash purpose
    • CairoContext::getDashCount — The getDashCount purpose
    • CairoContext::getFillRule — The getFillRule purpose
    • CairoContext::getFontFace — The getFontFace purpose
    • CairoContext::getFontMatrix — The getFontMatrix purpose
    • CairoContext::getFontOptions — The getFontOptions purpose
    • CairoContext::getGroupTarget — The getGroupTarget purpose
    • CairoContext::getLineCap — The getLineCap purpose
    • CairoContext::getLineJoin — The getLineJoin purpose
    • CairoContext::getLineWidth — The getLineWidth purpose
    • CairoContext::getMatrix — The getMatrix purpose
    • CairoContext::getMiterLimit — The getMiterLimit purpose
    • CairoContext::getOperator — The getOperator purpose
    • CairoContext::getScaledFont — The getScaledFont purpose
    • CairoContext::getSource — The getSource purpose
    • CairoContext::getTarget — The getTarget purpose
    • CairoContext::getTolerance — The getTolerance purpose
    • CairoContext::glyphPath — The glyphPath purpose
    • CairoContext::hasCurrentPoint — The hasCurrentPoint purpose
    • CairoContext::identityMatrix — The identityMatrix purpose
    • CairoContext::inFill — The inFill purpose
    • CairoContext::inStroke — The inStroke purpose
    • CairoContext::lineTo — The lineTo purpose
    • CairoContext::mask — The mask purpose
    • CairoContext::maskSurface — The maskSurface purpose
    • CairoContext::moveTo — The moveTo purpose
    • CairoContext::newPath — The newPath purpose
    • CairoContext::newSubPath — The newSubPath purpose
    • CairoContext::paint — The paint purpose
    • CairoContext::paintWithAlpha — The paintWithAlpha purpose
    • CairoContext::pathExtents — The pathExtents purpose
    • CairoContext::popGroup — The popGroup purpose
    • CairoContext::popGroupToSource — The popGroupToSource purpose
    • CairoContext::pushGroup — The pushGroup purpose
    • CairoContext::pushGroupWithContent — The pushGroupWithContent purpose
    • CairoContext::rectangle — The rectangle purpose
    • CairoContext::relCurveTo — The relCurveTo purpose
    • CairoContext::relLineTo — The relLineTo purpose
    • CairoContext::relMoveTo — The relMoveTo purpose
    • CairoContext::resetClip — The resetClip purpose
    • CairoContext::restore — The restore purpose
    • CairoContext::rotate — The rotate purpose
    • CairoContext::save — The save purpose
    • CairoContext::scale — The scale purpose
    • CairoContext::selectFontFace — The selectFontFace purpose
    • CairoContext::setAntialias — The setAntialias purpose
    • CairoContext::setDash — The setDash purpose
    • CairoContext::setFillRule — The setFillRule purpose
    • CairoContext::setFontFace — The setFontFace purpose
    • CairoContext::setFontMatrix — The setFontMatrix purpose
    • CairoContext::setFontOptions — The setFontOptions purpose
    • CairoContext::setFontSize — The setFontSize purpose
    • CairoContext::setLineCap — The setLineCap purpose
    • CairoContext::setLineJoin — The setLineJoin purpose
    • CairoContext::setLineWidth — The setLineWidth purpose
    • CairoContext::setMatrix — The setMatrix purpose
    • CairoContext::setMiterLimit — The setMiterLimit purpose
    • CairoContext::setOperator — The setOperator purpose
    • CairoContext::setScaledFont — The setScaledFont purpose
    • CairoContext::setSource — The setSource purpose
    • CairoContext::setSourceRGB — The setSourceRGB purpose
    • CairoContext::setSourceRGBA — The setSourceRGBA purpose
    • CairoContext::setSourceSurface — The setSourceSurface purpose
    • CairoContext::setTolerance — The setTolerance purpose
    • CairoContext::showPage — The showPage purpose
    • CairoContext::showText — The showText purpose
    • CairoContext::status — The status purpose
    • CairoContext::stroke — The stroke purpose
    • CairoContext::strokeExtents — The strokeExtents purpose
    • CairoContext::strokePreserve — The strokePreserve purpose
    • CairoContext::textExtents — The textExtents purpose
    • CairoContext::textPath — The textPath purpose
    • CairoContext::transform — The transform purpose
    • CairoContext::translate — The translate purpose
    • CairoContext::userToDevice — The userToDevice purpose
    • CairoContext::userToDeviceDistance — The userToDeviceDistance purpose
  • CairoException — The CairoException class
  • CairoStatus — The CairoStatus class
  • CairoSurface — The CairoSurface class
    • CairoSurface::__construct — The __construct purpose
    • CairoSurface::copyPage — The copyPage purpose
    • CairoSurface::createSimilar — The createSimilar purpose
    • CairoSurface::finish — The finish purpose
    • CairoSurface::flush — The flush purpose
    • CairoSurface::getContent — The getContent purpose
    • CairoSurface::getDeviceOffset — The getDeviceOffset purpose
    • CairoSurface::getFontOptions — The getFontOptions purpose
    • CairoSurface::getType — The getType purpose
    • CairoSurface::markDirty — The markDirty purpose
    • CairoSurface::markDirtyRectangle — The markDirtyRectangle purpose
    • CairoSurface::setDeviceOffset — The setDeviceOffset purpose
    • CairoSurface::setFallbackResolution — The setFallbackResolution purpose
    • CairoSurface::showPage — The showPage purpose
    • CairoSurface::status — The status purpose
    • CairoSurface::writeToPng — The writeToPng purpose
  • CairoSvgSurface — Svg Surface Backend
    • CairoSvgSurface::__construct — The __construct purpose
    • CairoSvgSurface::getVersions — Used to retrieve a list of supported SVG versions
    • CairoSvgSurface::restrictToVersion — The restrictToVersion purpose
    • CairoSvgSurface::versionToString — The versionToString purpose
  • CairoImageSurface — The CairoImageSurface class
    • CairoImageSurface::__construct — Creates a new CairoImageSurface
    • CairoImageSurface::createForData — The createForData purpose
    • CairoImageSurface::createFromPng — Creates a new CairoImageSurface form a png image file
    • CairoImageSurface::getData — Gets the image data as string
    • CairoImageSurface::getFormat — Get the image format
    • CairoImageSurface::getHeight — Retrieves the height of the CairoImageSurface
    • CairoImageSurface::getStride — The getStride purpose
    • CairoImageSurface::getWidth — Retrieves the width of the CairoImageSurface
  • CairoPdfSurface — The CairoPdfSurface class
    • CairoPdfSurface::__construct — The __construct purpose
    • CairoPdfSurface::setSize — The setSize purpose
  • CairoPsSurface — The CairoPsSurface class
    • CairoPsSurface::__construct — The __construct purpose
    • CairoPsSurface::dscBeginPageSetup — The dscBeginPageSetup purpose
    • CairoPsSurface::dscBeginSetup — The dscBeginSetup purpose
    • CairoPsSurface::dscComment — The dscComment purpose
    • CairoPsSurface::getEps — The getEps purpose
    • CairoPsSurface::getLevels — The getLevels purpose
    • CairoPsSurface::levelToString — The levelToString purpose
    • CairoPsSurface::restrictToLevel — The restrictToLevel purpose
    • CairoPsSurface::setEps — The setEps purpose
    • CairoPsSurface::setSize — The setSize purpose
  • CairoSurfaceType — The CairoSurfaceType class
  • CairoFontFace — The CairoFontFace class
    • CairoFontFace::__construct — Creates a new CairoFontFace object
    • CairoFontFace::getType — Retrieves the font face type
    • CairoFontFace::status — Check for CairoFontFace errors
  • CairoFontOptions — The CairoFontOptions class
    • CairoFontOptions::__construct — The __construct purpose
    • CairoFontOptions::equal — The equal purpose
    • CairoFontOptions::getAntialias — The getAntialias purpose
    • CairoFontOptions::getHintMetrics — The getHintMetrics purpose
    • CairoFontOptions::getHintStyle — The getHintStyle purpose
    • CairoFontOptions::getSubpixelOrder — The getSubpixelOrder purpose
    • CairoFontOptions::hash — The hash purpose
    • CairoFontOptions::merge — The merge purpose
    • CairoFontOptions::setAntialias — The setAntialias purpose
    • CairoFontOptions::setHintMetrics — The setHintMetrics purpose
    • CairoFontOptions::setHintStyle — The setHintStyle purpose
    • CairoFontOptions::setSubpixelOrder — The setSubpixelOrder purpose
    • CairoFontOptions::status — The status purpose
  • CairoFontSlant — The CairoFontSlant class
  • CairoFontType — The CairoFontType class
  • CairoFontWeight — The CairoFontWeight class
  • CairoScaledFont — The CairoScaledFont class
    • CairoScaledFont::__construct — The __construct purpose
    • CairoScaledFont::extents — The extents purpose
    • CairoScaledFont::getCtm — The getCtm purpose
    • CairoScaledFont::getFontFace — The getFontFace purpose
    • CairoScaledFont::getFontMatrix — The getFontMatrix purpose
    • CairoScaledFont::getFontOptions — The getFontOptions purpose
    • CairoScaledFont::getScaleMatrix — The getScaleMatrix purpose
    • CairoScaledFont::getType — The getType purpose
    • CairoScaledFont::glyphExtents — The glyphExtents purpose
    • CairoScaledFont::status — The status purpose
    • CairoScaledFont::textExtents — The textExtents purpose
  • CairoToyFontFace — The CairoToyFontFace class
  • CairoPatternType — The CairoPatternType class
  • CairoPattern — The CairoPattern class
    • CairoPattern::__construct — The __construct purpose
    • CairoPattern::getMatrix — The getMatrix purpose
    • CairoPattern::getType — The getType purpose
    • CairoPattern::setMatrix — The setMatrix purpose
    • CairoPattern::status — The status purpose
  • CairoGradientPattern — The CairoGradientPattern class
    • CairoGradientPattern::addColorStopRgb — The addColorStopRgb purpose
    • CairoGradientPattern::addColorStopRgba — The addColorStopRgba purpose
    • CairoGradientPattern::getColorStopCount — The getColorStopCount purpose
    • CairoGradientPattern::getColorStopRgba — The getColorStopRgba purpose
    • CairoGradientPattern::getExtend — The getExtend purpose
    • CairoGradientPattern::setExtend — The setExtend purpose
  • CairoSolidPattern — The CairoSolidPattern class
    • CairoSolidPattern::__construct — The __construct purpose
    • CairoSolidPattern::getRgba — The getRgba purpose
  • CairoSurfacePattern — The CairoSurfacePattern class
    • CairoSurfacePattern::__construct — The __construct purpose
    • CairoSurfacePattern::getExtend — The getExtend purpose
    • CairoSurfacePattern::getFilter — The getFilter purpose
    • CairoSurfacePattern::getSurface — The getSurface purpose
    • CairoSurfacePattern::setExtend — The setExtend purpose
    • CairoSurfacePattern::setFilter — The setFilter purpose
  • CairoLinearGradient — The CairoLinearGradient class
    • CairoLinearGradient::__construct — The __construct purpose
    • CairoLinearGradient::getPoints — The getPoints purpose
  • CairoRadialGradient — The CairoRadialGradient class
    • CairoRadialGradient::__construct — The __construct purpose
    • CairoRadialGradient::getCircles — The getCircles purpose
  • CairoAntialias — The CairoAntialias class
  • CairoContent — The CairoContent class
  • CairoExtend — The CairoExtend class
  • CairoFormat — The CairoFormat class
    • CairoFormat::strideForWidth — Provides an appropiate stride to use
  • CairoFillRule — The CairoFillRule class
  • CairoFilter — The CairoFilter class
  • CairoHintMetrics — The CairoHintMetrics class
  • CairoHintStyle — The CairoHintStyle class
  • CairoLineCap — The CairoLineCap class
  • CairoLineJoin — The CairoLineJoin class
  • CairoMatrix — The CairoMatrix class
    • CairoMatrix::__construct — Creates a new CairoMatrix object
    • CairoMatrix::initIdentity — Creates a new identity matrix
    • CairoMatrix::initRotate — Creates a new rotated matrix
    • CairoMatrix::initScale — Creates a new scaling matrix
    • CairoMatrix::initTranslate — Creates a new translation matrix
    • CairoMatrix::invert — The invert purpose
    • CairoMatrix::multiply — The multiply purpose
    • CairoMatrix::rotate — The rotate purpose
    • CairoMatrix::scale — Applies scaling to a matrix
    • CairoMatrix::transformDistance — The transformDistance purpose
    • CairoMatrix::transformPoint — The transformPoint purpose
    • CairoMatrix::translate — The translate purpose
  • CairoOperator — The CairoOperator class
  • CairoPath — The CairoPath class
  • CairoPsLevel — The CairoPsLevel class
  • CairoSubpixelOrder — The CairoSubpixelOrder class
  • CairoSvgVersion — The CairoSvgVersion class
GmagickPixel::setcolorvalue
Introdução
Processamento de Imagem e Geração


Introdução

Cairo is a native PHP extension to create and modify graphics using the Cairo Graphics Library.

The Cairo Graphics Library is a 2D library written in C with support for multiple output devices. Currently supported output targets include the X Window System, Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL (through glitz), XCB, BeOS, OS/2, and DirectFB. The library also has support for two types of text manipulation and layout. The "toy" API provides demo quality support, and the glyphs API, although full-featured, works best with a helper library such as pango. Font backend support includes FreeType, Quartz, Win32, and User fonts.

There are two types of computer graphics, vector and raster. Raster graphics are the representation of images as an array of pixels. Vector graphics use geometrical primitives such as points, lines, curves or polygons to represent images. The primitives are created using mathematical equations. The Cairo Graphics Library takes a vector approach to graphics, allowing smaller size, infinite zooming, and moving, scaling and rotating without degrading image quality.

Operations in the cairo graphics library including stroking and filling cubic Bézier splines, transforming and compositing translucent images, and antialiased text rendering. All drawing operations can be transformed by any affine transformation (scale, rotation, shear, and others) This is very similiar to drawing operations for PostScript and PDF drawing.

The Cairo PHP Extension aims to provide support for all officially supported font backends and surface backends, as well as expose all available functionality in cairo to PHP users.

Cairo
Instalação/Configuração
Cairo


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Cairo


Dependências

Cairo is only available for PHP 5.2+ and PHP 5.3+ The extension also requires the cairo graphics library version 1.4 or higher. The cairo graphics library uses an even and odd numbering scheme to denote stable and unstable library versions. Both unstable and stable versions can be used with the extension, but conditional support for new features is determined by the stable version below the unstable version in use. The latest cairo release can be found at » http://cairographics.org/.

The binary files used for the windows compiles can be found at » http://cairographics.org/download/ along with the project files used to create them.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/cairo.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Notes specific to installation on Windows

Binary builds of the extension can be found at » http://cairographics.org/download/. Download the correct zip file, place php_cairo.dll in the extensions directory, and enable it via the php.ini file in use. Please be sure the PHP minor version (5.2, 5.3) match, the thread safety (Thread Safe TS or Non-Thread Safe NTS), the architecture (x86 or x64), and the compiler version (VC6 or VC9) match or the extension will not load.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CAIRO_STATUS_SUCCESS (integer)
CAIRO_STATUS_NO_MEMORY (integer)
CAIRO_STATUS_INVALID_RESTORE (integer)
CAIRO_STATUS_INVALID_POP_GROUP (integer)
CAIRO_STATUS_NO_CURRENT_POINT (integer)
CAIRO_STATUS_INVALID_MATRIX (integer)
CAIRO_STATUS_INVALID_STATUS (integer)
CAIRO_STATUS_NULL_POINTER (integer)
CAIRO_STATUS_INVALID_STRING (integer)
CAIRO_STATUS_INVALID_PATH_DATA (integer)
CAIRO_STATUS_READ_ERROR (integer)
CAIRO_STATUS_WRITE_ERROR (integer)
CAIRO_STATUS_SURFACE_FINISHED (integer)
CAIRO_STATUS_SURFACE_TYPE_MISMATCH (integer)
CAIRO_STATUS_PATTERN_TYPE_MISMATCH (integer)
CAIRO_STATUS_INVALID_CONTENT (integer)
CAIRO_STATUS_INVALID_FORMAT (integer)
CAIRO_STATUS_INVALID_VISUAL (integer)
CAIRO_STATUS_FILE_NOT_FOUND (integer)
CAIRO_STATUS_INVALID_DASH (integer)
CAIRO_STATUS_INVALID_DSC_COMMENT (integer)
CAIRO_STATUS_INVALID_INDEX (integer)
CAIRO_STATUS_CLIP_NOT_REPRESENTABLE (integer)
CAIRO_STATUS_TEMP_FILE_ERROR (integer)
CAIRO_STATUS_INVALID_STRIDE (integer)
CAIRO_ANTIALIAS_DEFAULT (integer)
CAIRO_ANTIALIAS_NONE (integer)
CAIRO_ANTIALIAS_GRAY (integer)
CAIRO_ANTIALIAS_SUBPIXEL (integer)
CAIRO_SUBPIXEL_ORDER_DEFAULT (integer)
CAIRO_SUBPIXEL_ORDER_RGB (integer)
CAIRO_SUBPIXEL_ORDER_BGR (integer)
CAIRO_SUBPIXEL_ORDER_VRGB (integer)
CAIRO_SUBPIXEL_ORDER_VBGR (integer)
CAIRO_FILL_RULE_WINDING (integer)
CAIRO_FILL_RULE_EVEN_ODD (integer)
CAIRO_LINE_CAP_BUTT (integer)
CAIRO_LINE_CAP_ROUND (integer)
CAIRO_LINE_CAP_SQUARE (integer)
CAIRO_LINE_JOIN_MITER (integer)
CAIRO_LINE_JOIN_ROUND (integer)
CAIRO_LINE_JOIN_BEVEL (integer)
CAIRO_OPERATOR_CLEAR (integer)
CAIRO_OPERATOR_SOURCE (integer)
CAIRO_OPERATOR_OVER (integer)
CAIRO_OPERATOR_IN (integer)
CAIRO_OPERATOR_OUT (integer)
CAIRO_OPERATOR_ATOP (integer)
CAIRO_OPERATOR_DEST (integer)
CAIRO_OPERATOR_DEST_OVER (integer)
CAIRO_OPERATOR_DEST_IN (integer)
CAIRO_OPERATOR_DEST_OUT (integer)
CAIRO_OPERATOR_DEST_ATOP (integer)
CAIRO_OPERATOR_XOR (integer)
CAIRO_OPERATOR_ADD (integer)
CAIRO_OPERATOR_SATURATE (integer)
CAIRO_PATTERN_TYPE_SOLID (integer)
CAIRO_PATTERN_TYPE_SURFACE (integer)
CAIRO_PATTERN_TYPE_LINEAR (integer)
CAIRO_PATTERN_TYPE_RADIAL (integer)
CAIRO_EXTEND_NONE (integer)
CAIRO_EXTEND_REPEAT (integer)
CAIRO_EXTEND_REFLECT (integer)
CAIRO_EXTEND_PAD (integer)
CAIRO_FILTER_FAST (integer)
CAIRO_FILTER_GOOD (integer)
CAIRO_FILTER_BEST (integer)
CAIRO_FILTER_NEAREST (integer)
CAIRO_FILTER_BILINEAR (integer)
CAIRO_FILTER_GAUSSIAN (integer)
CAIRO_HINT_STYLE_DEFAULT (integer)
CAIRO_HINT_STYLE_NONE (integer)
CAIRO_HINT_STYLE_SLIGHT (integer)
CAIRO_HINT_STYLE_MEDIUM (integer)
CAIRO_HINT_STYLE_FULL (integer)
CAIRO_HINT_METRICS_DEFAULT (integer)
CAIRO_HINT_METRICS_OFF (integer)
CAIRO_HINT_METRICS_ON (integer)
CAIRO_FONT_TYPE_TOY (integer)
CAIRO_FONT_TYPE_FT (integer)
CAIRO_FONT_TYPE_WIN32 (integer)
CAIRO_FONT_TYPE_QUARTZ (integer)
CAIRO_FONT_SLANT_NORMAL (integer)
CAIRO_FONT_SLANT_ITALIC (integer)
CAIRO_FONT_SLANT_OBLIQUE (integer)
CAIRO_FONT_WEIGHT_NORMAL (integer)
CAIRO_FONT_WEIGHT_BOLD (integer)
CAIRO_CONTENT_COLOR (integer)
CAIRO_CONTENT_ALPHA (integer)
CAIRO_CONTENT_COLOR_ALPHA (integer)
CAIRO_SURFACE_TYPE_IMAGE (integer)
CAIRO_SURFACE_TYPE_PDF (integer)
CAIRO_SURFACE_TYPE_PS (integer)
CAIRO_SURFACE_TYPE_XLIB (integer)
CAIRO_SURFACE_TYPE_XCB (integer)
CAIRO_SURFACE_TYPE_GLITZ (integer)
CAIRO_SURFACE_TYPE_QUARTZ (integer)
CAIRO_SURFACE_TYPE_WIN32 (integer)
CAIRO_SURFACE_TYPE_BEOS (integer)
CAIRO_SURFACE_TYPE_DIRECTFB (integer)
CAIRO_SURFACE_TYPE_SVG (integer)
CAIRO_SURFACE_TYPE_OS2 (integer)
CAIRO_SURFACE_TYPE_WIN32_PRINTING (integer)
CAIRO_SURFACE_TYPE_QUARTZ_IMAGE (integer)
CAIRO_FORMAT_ARGB32 (integer)
CAIRO_FORMAT_RGB24 (integer)
CAIRO_FORMAT_A8 (integer)
CAIRO_FORMAT_A1 (integer)
CAIRO_PS_LEVEL_2 (integer)
CAIRO_PS_LEVEL_3 (integer)
CAIRO_SVG_VERSION_1_1 (integer)
CAIRO_SVG_VERSION_1_2 (integer)

Tipos Resource
Exemplos
Cairo


Exemplos

Description here...

Exemplo #1 Cairo Example

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...
Constantes pré-definidas
Cairo Funções
Cairo


Cairo Funções

Índice

  • cairo_create — Returns a new CairoContext object on the requested surface.
  • cairo_font_face_get_type — Description
  • cairo_font_face_status — Description
  • cairo_font_options_create — Description
  • cairo_font_options_equal — Description
  • cairo_font_options_get_antialias — Description
  • cairo_font_options_get_hint_metrics — Description
  • cairo_font_options_get_hint_style — Description
  • cairo_font_options_get_subpixel_order — Description
  • cairo_font_options_hash — Description
  • cairo_font_options_merge — Description
  • cairo_font_options_set_antialias — Description
  • cairo_font_options_set_hint_metrics — Description
  • cairo_font_options_set_hint_style — Description
  • cairo_font_options_set_subpixel_order — Description
  • cairo_font_options_status — Description
  • cairo_format_stride_for_width — Description
  • cairo_image_surface_create_for_data — Description
  • cairo_image_surface_create_from_png — Description
  • cairo_image_surface_create — Description
  • cairo_image_surface_get_data — Description
  • cairo_image_surface_get_format — Description
  • cairo_image_surface_get_height — Description
  • cairo_image_surface_get_stride — Description
  • cairo_image_surface_get_width — Description
  • cairo_matrix_create_scale — Sinônimo de CairoMatrix::initScale
  • cairo_matrix_create_translate — Sinônimo de CairoMatrix::initTranslate
  • cairo_matrix_invert — Description
  • cairo_matrix_multiply — Description
  • cairo_matrix_rotate — Description
  • cairo_matrix_transform_distance — Description
  • cairo_matrix_transform_point — Description
  • cairo_matrix_translate — Description
  • cairo_pattern_add_color_stop_rgb — Description
  • cairo_pattern_add_color_stop_rgba — Description
  • cairo_pattern_create_for_surface — Description
  • cairo_pattern_create_linear — Description
  • cairo_pattern_create_radial — Description
  • cairo_pattern_create_rgb — Description
  • cairo_pattern_create_rgba — Description
  • cairo_pattern_get_color_stop_count — Description
  • cairo_pattern_get_color_stop_rgba — Description
  • cairo_pattern_get_extend — Description
  • cairo_pattern_get_filter — Description
  • cairo_pattern_get_linear_points — Description
  • cairo_pattern_get_matrix — Description
  • cairo_pattern_get_radial_circles — Description
  • cairo_pattern_get_rgba — Description
  • cairo_pattern_get_surface — Description
  • cairo_pattern_get_type — Description
  • cairo_pattern_set_extend — Description
  • cairo_pattern_set_filter — Description
  • cairo_pattern_set_matrix — Description
  • cairo_pattern_status — Description
  • cairo_pdf_surface_create — Description
  • cairo_pdf_surface_set_size — Description
  • cairo_ps_get_levels — Description
  • cairo_ps_level_to_string — Description
  • cairo_ps_surface_create — Description
  • cairo_ps_surface_dsc_begin_page_setup — Description
  • cairo_ps_surface_dsc_begin_setup — Description
  • cairo_ps_surface_dsc_comment — Description
  • cairo_ps_surface_get_eps — Description
  • cairo_ps_surface_restrict_to_level — Description
  • cairo_ps_surface_set_eps — Description
  • cairo_ps_surface_set_size — Description
  • cairo_scaled_font_create — Description
  • cairo_scaled_font_extents — Description
  • cairo_scaled_font_get_ctm — Description
  • cairo_scaled_font_get_font_face — Description
  • cairo_scaled_font_get_font_matrix — Description
  • cairo_scaled_font_get_font_options — Description
  • cairo_scaled_font_get_scale_matrix — Description
  • cairo_scaled_font_get_type — Description
  • cairo_scaled_font_glyph_extents — Description
  • cairo_scaled_font_status — Description
  • cairo_scaled_font_text_extents — Description
  • cairo_surface_copy_page — Description
  • cairo_surface_create_similar — Description
  • cairo_surface_finish — Description
  • cairo_surface_flush — Description
  • cairo_surface_get_content — Description
  • cairo_surface_get_device_offset — Description
  • cairo_surface_get_font_options — Description
  • cairo_surface_get_type — Description
  • cairo_surface_mark_dirty_rectangle — Description
  • cairo_surface_mark_dirty — Description
  • cairo_surface_set_device_offset — Description
  • cairo_surface_set_fallback_resolution — Description
  • cairo_surface_show_page — Description
  • cairo_surface_status — Description
  • cairo_surface_write_to_png — Description
  • cairo_svg_surface_create — Description
  • cairo_svg_surface_restrict_to_version — Description
  • cairo_svg_version_to_string — Description
Exemplos
cairo_create
Cairo


Returns a new CairoContext object on the requested surface.

Cairo Funções
cairo_font_face_get_type
Cairo Funções
PHP Manual

cairo_create

(PECL cairo >= 0.1.0)

cairo_create — Returns a new CairoContext object on the requested surface.

Descrição

CairoContext cairo_create ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

Cairo Funções
cairo_font_face_get_type
Cairo Funções


Description

cairo_create
cairo_font_face_status
Cairo Funções
PHP Manual

cairo_font_face_get_type

(PECL cairo >= 0.1.0)

cairo_font_face_get_type — Description

Descrição

int cairo_font_face_get_type ( CairoFontFace $fontface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

fontface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_face_get_type() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_create
cairo_font_face_status
Cairo Funções


Description

cairo_font_face_get_type
cairo_font_options_create
Cairo Funções
PHP Manual

cairo_font_face_status

(PECL cairo >= 0.1.0)

cairo_font_face_status — Description

Descrição

int cairo_font_face_status ( CairoFontFace $fontface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

fontface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_face_status() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_face_get_type
cairo_font_options_create
Cairo Funções


Description

cairo_font_face_status
cairo_font_options_equal
Cairo Funções
PHP Manual

cairo_font_options_create

(PECL cairo >= 0.1.0)

cairo_font_options_create — Description

Descrição

CairoFontOptions cairo_font_options_create ( void )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_face_status
cairo_font_options_equal
Cairo Funções


Description

cairo_font_options_create
cairo_font_options_get_antialias
Cairo Funções
PHP Manual

cairo_font_options_equal

(PECL cairo >= 0.1.0)

cairo_font_options_equal — Description

Descrição

bool cairo_font_options_equal ( CairoFontOptions $options , CairoFontOptions $other )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

other

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_equal() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_create
cairo_font_options_get_antialias
Cairo Funções


Description

cairo_font_options_equal
cairo_font_options_get_hint_metrics
Cairo Funções
PHP Manual

cairo_font_options_get_antialias

(PECL cairo >= 0.1.0)

cairo_font_options_get_antialias — Description

Descrição

int cairo_font_options_get_antialias ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_get_antialias() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_equal
cairo_font_options_get_hint_metrics
Cairo Funções


Description

cairo_font_options_get_antialias
cairo_font_options_get_hint_style
Cairo Funções
PHP Manual

cairo_font_options_get_hint_metrics

(PECL cairo >= 0.1.0)

cairo_font_options_get_hint_metrics — Description

Descrição

int cairo_font_options_get_hint_metrics ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_get_hint_metrics() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_get_antialias
cairo_font_options_get_hint_style
Cairo Funções


Description

cairo_font_options_get_hint_metrics
cairo_font_options_get_subpixel_order
Cairo Funções
PHP Manual

cairo_font_options_get_hint_style

(PECL cairo >= 0.1.0)

cairo_font_options_get_hint_style — Description

Descrição

int cairo_font_options_get_hint_style ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_get_hint_style() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_get_hint_metrics
cairo_font_options_get_subpixel_order
Cairo Funções


Description

cairo_font_options_get_hint_style
cairo_font_options_hash
Cairo Funções
PHP Manual

cairo_font_options_get_subpixel_order

(PECL cairo >= 0.1.0)

cairo_font_options_get_subpixel_order — Description

Descrição

int cairo_font_options_get_subpixel_order ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_get_subpixel_order() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_get_hint_style
cairo_font_options_hash
Cairo Funções


Description

cairo_font_options_get_subpixel_order
cairo_font_options_merge
Cairo Funções
PHP Manual

cairo_font_options_hash

(PECL cairo >= 0.1.0)

cairo_font_options_hash — Description

Descrição

int cairo_font_options_hash ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_hash() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_get_subpixel_order
cairo_font_options_merge
Cairo Funções


Description

cairo_font_options_hash
cairo_font_options_set_antialias
Cairo Funções
PHP Manual

cairo_font_options_merge

(PECL cairo >= 0.1.0)

cairo_font_options_merge — Description

Descrição

void cairo_font_options_merge ( CairoFontOptions $options , CairoFontOptions $other )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

other

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_merge() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_hash
cairo_font_options_set_antialias
Cairo Funções


Description

cairo_font_options_merge
cairo_font_options_set_hint_metrics
Cairo Funções
PHP Manual

cairo_font_options_set_antialias

(PECL cairo >= 0.1.0)

cairo_font_options_set_antialias — Description

Descrição

void cairo_font_options_set_antialias ( CairoFontOptions $options , int $antialias )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

antialias

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_set_antialias() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_merge
cairo_font_options_set_hint_metrics
Cairo Funções


Description

cairo_font_options_set_antialias
cairo_font_options_set_hint_style
Cairo Funções
PHP Manual

cairo_font_options_set_hint_metrics

(PECL cairo >= 0.1.0)

cairo_font_options_set_hint_metrics — Description

Descrição

void cairo_font_options_set_hint_metrics ( CairoFontOptions $options , int $hint_metrics )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

hint_metrics

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_set_hint_metrics() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_set_antialias
cairo_font_options_set_hint_style
Cairo Funções


Description

cairo_font_options_set_hint_metrics
cairo_font_options_set_subpixel_order
Cairo Funções
PHP Manual

cairo_font_options_set_hint_style

(PECL cairo >= 0.1.0)

cairo_font_options_set_hint_style — Description

Descrição

void cairo_font_options_set_hint_style ( CairoFontOptions $options , int $hint_style )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

hint_style

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_set_hint_style() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_set_hint_metrics
cairo_font_options_set_subpixel_order
Cairo Funções


Description

cairo_font_options_set_hint_style
cairo_font_options_status
Cairo Funções
PHP Manual

cairo_font_options_set_subpixel_order

(PECL cairo >= 0.1.0)

cairo_font_options_set_subpixel_order — Description

Descrição

void cairo_font_options_set_subpixel_order ( CairoFontOptions $options , int $subpixel_order )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

subpixel_order

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_set_subpixel_order() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_set_hint_style
cairo_font_options_status
Cairo Funções


Description

cairo_font_options_set_subpixel_order
cairo_format_stride_for_width
Cairo Funções
PHP Manual

cairo_font_options_status

(PECL cairo >= 0.1.0)

cairo_font_options_status — Description

Descrição

int cairo_font_options_status ( CairoFontOptions $options )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_font_options_status() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_set_subpixel_order
cairo_format_stride_for_width
Cairo Funções


Description

cairo_font_options_status
cairo_image_surface_create_for_data
Cairo Funções
PHP Manual

cairo_format_stride_for_width

(PECL cairo >= 0.1.0)

cairo_format_stride_for_width — Description

Descrição

int cairo_format_stride_for_width ( int $format , int $width )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

format

Description...

width

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_format_stride_for_width() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_font_options_status
cairo_image_surface_create_for_data
Cairo Funções


Description

cairo_format_stride_for_width
cairo_image_surface_create_from_png
Cairo Funções
PHP Manual

cairo_image_surface_create_for_data

(PECL cairo >= 0.1.0)

cairo_image_surface_create_for_data — Description

Descrição

CairoImageSurface cairo_image_surface_create_for_data ( string $data , int $format , int $width , int $height [, int $stride = -1 ] )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

data

Description...

format

Description...

width

Description...

height

Description...

stride

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_create_for_data() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_format_stride_for_width
cairo_image_surface_create_from_png
Cairo Funções


Description

cairo_image_surface_create_for_data
cairo_image_surface_create
Cairo Funções
PHP Manual

cairo_image_surface_create_from_png

(PECL cairo >= 0.1.0)

cairo_image_surface_create_from_png — Description

Descrição

CairoImageSurface cairo_image_surface_create_from_png ( string $file )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_create_from_png() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_create_for_data
cairo_image_surface_create
Cairo Funções


Description

cairo_image_surface_create_from_png
cairo_image_surface_get_data
Cairo Funções
PHP Manual

cairo_image_surface_create

(PECL cairo >= 0.1.0)

cairo_image_surface_create — Description

Descrição

CairoImageSurface cairo_image_surface_create ( int $format , int $width , int $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

format

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_create_from_png
cairo_image_surface_get_data
Cairo Funções


Description

cairo_image_surface_create
cairo_image_surface_get_format
Cairo Funções
PHP Manual

cairo_image_surface_get_data

(PECL cairo >= 0.1.0)

cairo_image_surface_get_data — Description

Descrição

string cairo_image_surface_get_data ( CairoImageSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_get_data() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_create
cairo_image_surface_get_format
Cairo Funções


Description

cairo_image_surface_get_data
cairo_image_surface_get_height
Cairo Funções
PHP Manual

cairo_image_surface_get_format

(PECL cairo >= 0.1.0)

cairo_image_surface_get_format — Description

Descrição

int cairo_image_surface_get_format ( CairoImageSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_get_format() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_get_data
cairo_image_surface_get_height
Cairo Funções


Description

cairo_image_surface_get_format
cairo_image_surface_get_stride
Cairo Funções
PHP Manual

cairo_image_surface_get_height

(PECL cairo >= 0.1.0)

cairo_image_surface_get_height — Description

Descrição

int cairo_image_surface_get_height ( CairoImageSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_get_height() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_get_format
cairo_image_surface_get_stride
Cairo Funções


Description

cairo_image_surface_get_height
cairo_image_surface_get_width
Cairo Funções
PHP Manual

cairo_image_surface_get_stride

(PECL cairo >= 0.1.0)

cairo_image_surface_get_stride — Description

Descrição

int cairo_image_surface_get_stride ( CairoImageSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_get_stride() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_get_height
cairo_image_surface_get_width
Cairo Funções


Description

cairo_image_surface_get_stride
cairo_matrix_create_scale
Cairo Funções
PHP Manual

cairo_image_surface_get_width

(PECL cairo >= 0.1.0)

cairo_image_surface_get_width — Description

Descrição

int cairo_image_surface_get_width ( CairoImageSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_image_surface_get_width() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_image_surface_get_stride
cairo_matrix_create_scale
Cairo Funções


Sinônimo de CairoMatrix::initScale

cairo_image_surface_get_width
cairo_matrix_create_translate
Cairo Funções
PHP Manual

cairo_matrix_create_scale

(PECL cairo >= 0.1.0)

cairo_matrix_create_scale — Sinônimo de CairoMatrix::initScale()

Descrição

Esta função é um apelido para: CairoMatrix::initScale().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

cairo_image_surface_get_width
cairo_matrix_create_translate
Cairo Funções


Sinônimo de CairoMatrix::initTranslate

cairo_matrix_create_scale
cairo_matrix_invert
Cairo Funções
PHP Manual

cairo_matrix_create_translate

(PECL cairo >= 0.1.0)

cairo_matrix_create_translate — Sinônimo de CairoMatrix::initTranslate()

Descrição

Esta função é um apelido para: CairoMatrix::initTranslate().

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

cairo_matrix_create_scale
cairo_matrix_invert
Cairo Funções


Description

cairo_matrix_create_translate
cairo_matrix_multiply
Cairo Funções
PHP Manual

cairo_matrix_invert

(PECL cairo >= 0.1.0)

cairo_matrix_invert — Description

Descrição

void cairo_matrix_invert ( CairoMatrix $matrix )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_invert() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_create_translate
cairo_matrix_multiply
Cairo Funções


Description

cairo_matrix_invert
cairo_matrix_rotate
Cairo Funções
PHP Manual

cairo_matrix_multiply

(PECL cairo >= 0.1.0)

cairo_matrix_multiply — Description

Descrição

CairoMatrix cairo_matrix_multiply ( CairoMatrix $matrix1 , CairoMatrix $matrix2 )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix1

Description...

matrix2

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_multiply() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_invert
cairo_matrix_rotate
Cairo Funções


Description

cairo_matrix_multiply
cairo_matrix_transform_distance
Cairo Funções
PHP Manual

cairo_matrix_rotate

(PECL cairo >= 0.1.0)

cairo_matrix_rotate — Description

Descrição

void cairo_matrix_rotate ( CairoMatrix $matrix , float $radians )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix

Description...

radians

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_rotate() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_multiply
cairo_matrix_transform_distance
Cairo Funções


Description

cairo_matrix_rotate
cairo_matrix_transform_point
Cairo Funções
PHP Manual

cairo_matrix_transform_distance

(PECL cairo >= 0.1.0)

cairo_matrix_transform_distance — Description

Descrição

array cairo_matrix_transform_distance ( CairoMatrix $matrix , float $dx , float $dy )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix

Description...

dx

Description...

dy

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_transform_distance() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_rotate
cairo_matrix_transform_point
Cairo Funções


Description

cairo_matrix_transform_distance
cairo_matrix_translate
Cairo Funções
PHP Manual

cairo_matrix_transform_point

(PECL cairo >= 0.1.0)

cairo_matrix_transform_point — Description

Descrição

array cairo_matrix_transform_point ( CairoMatrix $matrix , float $dx , float $dy )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix

Description...

dx

Description...

dy

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_transform_point() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_transform_distance
cairo_matrix_translate
Cairo Funções


Description

cairo_matrix_transform_point
cairo_pattern_add_color_stop_rgb
Cairo Funções
PHP Manual

cairo_matrix_translate

(PECL cairo >= 0.1.0)

cairo_matrix_translate — Description

Descrição

void cairo_matrix_translate ( CairoMatrix $matrix , float $tx , float $ty )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix

Description...

tx

Description...

ty

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_matrix_translate() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_transform_point
cairo_pattern_add_color_stop_rgb
Cairo Funções


Description

cairo_matrix_translate
cairo_pattern_add_color_stop_rgba
Cairo Funções
PHP Manual

cairo_pattern_add_color_stop_rgb

(PECL cairo >= 0.1.0)

cairo_pattern_add_color_stop_rgb — Description

Descrição

void cairo_pattern_add_color_stop_rgb ( CairoGradientPattern $pattern , float $offset , float $red , float $green , float $blue )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

offset

Description...

red

Description...

green

Description...

blue

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_add_color_stop_rgb() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_matrix_translate
cairo_pattern_add_color_stop_rgba
Cairo Funções


Description

cairo_pattern_add_color_stop_rgb
cairo_pattern_create_for_surface
Cairo Funções
PHP Manual

cairo_pattern_add_color_stop_rgba

(PECL cairo >= 0.1.0)

cairo_pattern_add_color_stop_rgba — Description

Descrição

void cairo_pattern_add_color_stop_rgba ( CairoGradientPattern $pattern , float $offset , float $red , float $green , float $blue , float $alpha )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

offset

Description...

red

Description...

green

Description...

blue

Description...

alpha

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_add_color_stop_rgba() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_add_color_stop_rgb
cairo_pattern_create_for_surface
Cairo Funções


Description

cairo_pattern_add_color_stop_rgba
cairo_pattern_create_linear
Cairo Funções
PHP Manual

cairo_pattern_create_for_surface

(PECL cairo >= 0.1.0)

cairo_pattern_create_for_surface — Description

Descrição

CairoPattern cairo_pattern_create_for_surface ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_create_for_surface() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_add_color_stop_rgba
cairo_pattern_create_linear
Cairo Funções


Description

cairo_pattern_create_for_surface
cairo_pattern_create_radial
Cairo Funções
PHP Manual

cairo_pattern_create_linear

(PECL cairo >= 0.1.0)

cairo_pattern_create_linear — Description

Descrição

CairoPattern cairo_pattern_create_linear ( float $x0 , float $y0 , float $x1 , float $y1 )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x0

Description...

y0

Description...

x1

Description...

y1

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_create_linear() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_create_for_surface
cairo_pattern_create_radial
Cairo Funções


Description

cairo_pattern_create_linear
cairo_pattern_create_rgb
Cairo Funções
PHP Manual

cairo_pattern_create_radial

(PECL cairo >= 0.1.0)

cairo_pattern_create_radial — Description

Descrição

CairoPattern cairo_pattern_create_radial ( float $x0 , float $y0 , float $r0 , float $x1 , float $y1 , float $r1 )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x0

Description...

y0

Description...

r0

Description...

x1

Description...

y1

Description...

r1

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_create_radial() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_create_linear
cairo_pattern_create_rgb
Cairo Funções


Description

cairo_pattern_create_radial
cairo_pattern_create_rgba
Cairo Funções
PHP Manual

cairo_pattern_create_rgb

(PECL cairo >= 0.1.0)

cairo_pattern_create_rgb — Description

Descrição

CairoPattern cairo_pattern_create_rgb ( float $red , float $green , float $blue )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

red

Description...

green

Description...

blue

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_create_rgb() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_create_radial
cairo_pattern_create_rgba
Cairo Funções


Description

cairo_pattern_create_rgb
cairo_pattern_get_color_stop_count
Cairo Funções
PHP Manual

cairo_pattern_create_rgba

(PECL cairo >= 0.1.0)

cairo_pattern_create_rgba — Description

Descrição

CairoPattern cairo_pattern_create_rgba ( float $red , float $green , float $blue , float $alpha )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

red

Description...

green

Description...

blue

Description...

alpha

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_create_rgba() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_create_rgb
cairo_pattern_get_color_stop_count
Cairo Funções


Description

cairo_pattern_create_rgba
cairo_pattern_get_color_stop_rgba
Cairo Funções
PHP Manual

cairo_pattern_get_color_stop_count

(PECL cairo >= 0.1.0)

cairo_pattern_get_color_stop_count — Description

Descrição

int cairo_pattern_get_color_stop_count ( CairoGradientPattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_color_stop_count() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_create_rgba
cairo_pattern_get_color_stop_rgba
Cairo Funções


Description

cairo_pattern_get_color_stop_count
cairo_pattern_get_extend
Cairo Funções
PHP Manual

cairo_pattern_get_color_stop_rgba

(PECL cairo >= 0.1.0)

cairo_pattern_get_color_stop_rgba — Description

Descrição

array cairo_pattern_get_color_stop_rgba ( CairoGradientPattern $pattern , int $index )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

index

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_color_stop_rgba() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_color_stop_count
cairo_pattern_get_extend
Cairo Funções


Description

cairo_pattern_get_color_stop_rgba
cairo_pattern_get_filter
Cairo Funções
PHP Manual

cairo_pattern_get_extend

(PECL cairo >= 0.1.0)

cairo_pattern_get_extend — Description

Descrição

int cairo_pattern_get_extend ( string $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_extend() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_color_stop_rgba
cairo_pattern_get_filter
Cairo Funções


Description

cairo_pattern_get_extend
cairo_pattern_get_linear_points
Cairo Funções
PHP Manual

cairo_pattern_get_filter

(PECL cairo >= 0.1.0)

cairo_pattern_get_filter — Description

Descrição

int cairo_pattern_get_filter ( CairoSurfacePattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_filter() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_extend
cairo_pattern_get_linear_points
Cairo Funções


Description

cairo_pattern_get_filter
cairo_pattern_get_matrix
Cairo Funções
PHP Manual

cairo_pattern_get_linear_points

(PECL cairo >= 0.1.0)

cairo_pattern_get_linear_points — Description

Descrição

array cairo_pattern_get_linear_points ( CairoLinearGradient $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_linear_points() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_filter
cairo_pattern_get_matrix
Cairo Funções


Description

cairo_pattern_get_linear_points
cairo_pattern_get_radial_circles
Cairo Funções
PHP Manual

cairo_pattern_get_matrix

(PECL cairo >= 0.1.0)

cairo_pattern_get_matrix — Description

Descrição

CairoMatrix cairo_pattern_get_matrix ( CairoPattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_matrix() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_linear_points
cairo_pattern_get_radial_circles
Cairo Funções


Description

cairo_pattern_get_matrix
cairo_pattern_get_rgba
Cairo Funções
PHP Manual

cairo_pattern_get_radial_circles

(PECL cairo >= 0.1.0)

cairo_pattern_get_radial_circles — Description

Descrição

array cairo_pattern_get_radial_circles ( CairoRadialGradient $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_radial_circles() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_matrix
cairo_pattern_get_rgba
Cairo Funções


Description

cairo_pattern_get_radial_circles
cairo_pattern_get_surface
Cairo Funções
PHP Manual

cairo_pattern_get_rgba

(PECL cairo >= 0.1.0)

cairo_pattern_get_rgba — Description

Descrição

array cairo_pattern_get_rgba ( CairoSolidPattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_rgba() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_radial_circles
cairo_pattern_get_surface
Cairo Funções


Description

cairo_pattern_get_rgba
cairo_pattern_get_type
Cairo Funções
PHP Manual

cairo_pattern_get_surface

(PECL cairo >= 0.1.0)

cairo_pattern_get_surface — Description

Descrição

CairoSurface cairo_pattern_get_surface ( CairoSurfacePattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_surface() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_rgba
cairo_pattern_get_type
Cairo Funções


Description

cairo_pattern_get_surface
cairo_pattern_set_extend
Cairo Funções
PHP Manual

cairo_pattern_get_type

(PECL cairo >= 0.1.0)

cairo_pattern_get_type — Description

Descrição

int cairo_pattern_get_type ( CairoPattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_get_type() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_surface
cairo_pattern_set_extend
Cairo Funções


Description

cairo_pattern_get_type
cairo_pattern_set_filter
Cairo Funções
PHP Manual

cairo_pattern_set_extend

(PECL cairo >= 0.1.0)

cairo_pattern_set_extend — Description

Descrição

void cairo_pattern_set_extend ( string $pattern , string $extend )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

extend

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_set_extend() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_get_type
cairo_pattern_set_filter
Cairo Funções


Description

cairo_pattern_set_extend
cairo_pattern_set_matrix
Cairo Funções
PHP Manual

cairo_pattern_set_filter

(PECL cairo >= 0.1.0)

cairo_pattern_set_filter — Description

Descrição

void cairo_pattern_set_filter ( CairoSurfacePattern $pattern , int $filter )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

filter

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_set_filter() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_set_extend
cairo_pattern_set_matrix
Cairo Funções


Description

cairo_pattern_set_filter
cairo_pattern_status
Cairo Funções
PHP Manual

cairo_pattern_set_matrix

(PECL cairo >= 0.1.0)

cairo_pattern_set_matrix — Description

Descrição

void cairo_pattern_set_matrix ( CairoPattern $pattern , CairoMatrix $matrix )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

matrix

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_set_matrix() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_set_filter
cairo_pattern_status
Cairo Funções


Description

cairo_pattern_set_matrix
cairo_pdf_surface_create
Cairo Funções
PHP Manual

cairo_pattern_status

(PECL cairo >= 0.1.0)

cairo_pattern_status — Description

Descrição

int cairo_pattern_status ( CairoPattern $pattern )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

pattern

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pattern_status() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_set_matrix
cairo_pdf_surface_create
Cairo Funções


Description

cairo_pattern_status
cairo_pdf_surface_set_size
Cairo Funções
PHP Manual

cairo_pdf_surface_create

(PECL cairo >= 0.1.0)

cairo_pdf_surface_create — Description

Descrição

CairoPdfSurface cairo_pdf_surface_create ( string $file , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pdf_surface_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pattern_status
cairo_pdf_surface_set_size
Cairo Funções


Description

cairo_pdf_surface_create
cairo_ps_get_levels
Cairo Funções
PHP Manual

cairo_pdf_surface_set_size

(PECL cairo >= 0.1.0)

cairo_pdf_surface_set_size — Description

Descrição

void cairo_pdf_surface_set_size ( CairoPdfSurface $surface , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_pdf_surface_set_size() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pdf_surface_create
cairo_ps_get_levels
Cairo Funções


Description

cairo_pdf_surface_set_size
cairo_ps_level_to_string
Cairo Funções
PHP Manual

cairo_ps_get_levels

(PECL cairo >= 0.1.0)

cairo_ps_get_levels — Description

Descrição

array cairo_ps_get_levels ( void )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_get_levels() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_pdf_surface_set_size
cairo_ps_level_to_string
Cairo Funções


Description

cairo_ps_get_levels
cairo_ps_surface_create
Cairo Funções
PHP Manual

cairo_ps_level_to_string

(PECL cairo >= 0.1.0)

cairo_ps_level_to_string — Description

Descrição

string cairo_ps_level_to_string ( int $level )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

level

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_level_to_string() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_get_levels
cairo_ps_surface_create
Cairo Funções


Description

cairo_ps_level_to_string
cairo_ps_surface_dsc_begin_page_setup
Cairo Funções
PHP Manual

cairo_ps_surface_create

(PECL cairo >= 0.1.0)

cairo_ps_surface_create — Description

Descrição

CairoPsSurface cairo_ps_surface_create ( string $file , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_level_to_string
cairo_ps_surface_dsc_begin_page_setup
Cairo Funções


Description

cairo_ps_surface_create
cairo_ps_surface_dsc_begin_setup
Cairo Funções
PHP Manual

cairo_ps_surface_dsc_begin_page_setup

(PECL cairo >= 0.1.0)

cairo_ps_surface_dsc_begin_page_setup — Description

Descrição

void cairo_ps_surface_dsc_begin_page_setup ( CairoPsSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_dsc_begin_page_setup() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_create
cairo_ps_surface_dsc_begin_setup
Cairo Funções


Description

cairo_ps_surface_dsc_begin_page_setup
cairo_ps_surface_dsc_comment
Cairo Funções
PHP Manual

cairo_ps_surface_dsc_begin_setup

(PECL cairo >= 0.1.0)

cairo_ps_surface_dsc_begin_setup — Description

Descrição

void cairo_ps_surface_dsc_begin_setup ( CairoPsSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_dsc_begin_setup() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_dsc_begin_page_setup
cairo_ps_surface_dsc_comment
Cairo Funções


Description

cairo_ps_surface_dsc_begin_setup
cairo_ps_surface_get_eps
Cairo Funções
PHP Manual

cairo_ps_surface_dsc_comment

(PECL cairo >= 0.1.0)

cairo_ps_surface_dsc_comment — Description

Descrição

void cairo_ps_surface_dsc_comment ( CairoPsSurface $surface , string $comment )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

comment

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_dsc_comment() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_dsc_begin_setup
cairo_ps_surface_get_eps
Cairo Funções


Description

cairo_ps_surface_dsc_comment
cairo_ps_surface_restrict_to_level
Cairo Funções
PHP Manual

cairo_ps_surface_get_eps

(PECL cairo >= 0.1.0)

cairo_ps_surface_get_eps — Description

Descrição

bool cairo_ps_surface_get_eps ( CairoPsSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_get_eps() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_dsc_comment
cairo_ps_surface_restrict_to_level
Cairo Funções


Description

cairo_ps_surface_get_eps
cairo_ps_surface_set_eps
Cairo Funções
PHP Manual

cairo_ps_surface_restrict_to_level

(PECL cairo >= 0.1.0)

cairo_ps_surface_restrict_to_level — Description

Descrição

void cairo_ps_surface_restrict_to_level ( CairoPsSurface $surface , int $level )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

level

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_restrict_to_level() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_get_eps
cairo_ps_surface_set_eps
Cairo Funções


Description

cairo_ps_surface_restrict_to_level
cairo_ps_surface_set_size
Cairo Funções
PHP Manual

cairo_ps_surface_set_eps

(PECL cairo >= 0.1.0)

cairo_ps_surface_set_eps — Description

Descrição

void cairo_ps_surface_set_eps ( CairoPsSurface $surface , bool $level )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

level

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_set_eps() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_restrict_to_level
cairo_ps_surface_set_size
Cairo Funções


Description

cairo_ps_surface_set_eps
cairo_scaled_font_create
Cairo Funções
PHP Manual

cairo_ps_surface_set_size

(PECL cairo >= 0.1.0)

cairo_ps_surface_set_size — Description

Descrição

void cairo_ps_surface_set_size ( CairoPsSurface $surface , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_ps_surface_set_size() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_set_eps
cairo_scaled_font_create
Cairo Funções


Description

cairo_ps_surface_set_size
cairo_scaled_font_extents
Cairo Funções
PHP Manual

cairo_scaled_font_create

(PECL cairo >= 0.1.0)

cairo_scaled_font_create — Description

Descrição

CairoScaledFont cairo_scaled_font_create ( CairoFontFace $fontface , CairoMatrix $matrix , CairoMatrix $ctm , CairoFontOptions $fontoptions )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

fontface

Description...

matrix

Description...

ctm

Description...

fontoptions

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_ps_surface_set_size
cairo_scaled_font_extents
Cairo Funções


Description

cairo_scaled_font_create
cairo_scaled_font_get_ctm
Cairo Funções
PHP Manual

cairo_scaled_font_extents

(PECL cairo >= 0.1.0)

cairo_scaled_font_extents — Description

Descrição

array cairo_scaled_font_extents ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_extents() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_create
cairo_scaled_font_get_ctm
Cairo Funções


Description

cairo_scaled_font_extents
cairo_scaled_font_get_font_face
Cairo Funções
PHP Manual

cairo_scaled_font_get_ctm

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_ctm — Description

Descrição

CairoMatrix cairo_scaled_font_get_ctm ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_ctm() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_extents
cairo_scaled_font_get_font_face
Cairo Funções


Description

cairo_scaled_font_get_ctm
cairo_scaled_font_get_font_matrix
Cairo Funções
PHP Manual

cairo_scaled_font_get_font_face

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_font_face — Description

Descrição

CairoFontFace cairo_scaled_font_get_font_face ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_font_face() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_ctm
cairo_scaled_font_get_font_matrix
Cairo Funções


Description

cairo_scaled_font_get_font_face
cairo_scaled_font_get_font_options
Cairo Funções
PHP Manual

cairo_scaled_font_get_font_matrix

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_font_matrix — Description

Descrição

CairoFontOptions cairo_scaled_font_get_font_matrix ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_font_matrix() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_font_face
cairo_scaled_font_get_font_options
Cairo Funções


Description

cairo_scaled_font_get_font_matrix
cairo_scaled_font_get_scale_matrix
Cairo Funções
PHP Manual

cairo_scaled_font_get_font_options

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_font_options — Description

Descrição

CairoFontOptions cairo_scaled_font_get_font_options ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_font_options() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_font_matrix
cairo_scaled_font_get_scale_matrix
Cairo Funções


Description

cairo_scaled_font_get_font_options
cairo_scaled_font_get_type
Cairo Funções
PHP Manual

cairo_scaled_font_get_scale_matrix

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_scale_matrix — Description

Descrição

CairoMatrix cairo_scaled_font_get_scale_matrix ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_scale_matrix() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_font_options
cairo_scaled_font_get_type
Cairo Funções


Description

cairo_scaled_font_get_scale_matrix
cairo_scaled_font_glyph_extents
Cairo Funções
PHP Manual

cairo_scaled_font_get_type

(PECL cairo >= 0.1.0)

cairo_scaled_font_get_type — Description

Descrição

int cairo_scaled_font_get_type ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_get_type() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_scale_matrix
cairo_scaled_font_glyph_extents
Cairo Funções


Description

cairo_scaled_font_get_type
cairo_scaled_font_status
Cairo Funções
PHP Manual

cairo_scaled_font_glyph_extents

(PECL cairo >= 0.1.0)

cairo_scaled_font_glyph_extents — Description

Descrição

array cairo_scaled_font_glyph_extents ( CairoScaledFont $scaledfont , array $glyphs )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

glyphs

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_glyph_extents() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_get_type
cairo_scaled_font_status
Cairo Funções


Description

cairo_scaled_font_glyph_extents
cairo_scaled_font_text_extents
Cairo Funções
PHP Manual

cairo_scaled_font_status

(PECL cairo >= 0.1.0)

cairo_scaled_font_status — Description

Descrição

int cairo_scaled_font_status ( CairoScaledFont $scaledfont )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_status() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_glyph_extents
cairo_scaled_font_text_extents
Cairo Funções


Description

cairo_scaled_font_status
cairo_surface_copy_page
Cairo Funções
PHP Manual

cairo_scaled_font_text_extents

(PECL cairo >= 0.1.0)

cairo_scaled_font_text_extents — Description

Descrição

array cairo_scaled_font_text_extents ( CairoScaledFont $scaledfont , string $text )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

scaledfont

Description...

text

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_scaled_font_text_extents() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_status
cairo_surface_copy_page
Cairo Funções


Description

cairo_scaled_font_text_extents
cairo_surface_create_similar
Cairo Funções
PHP Manual

cairo_surface_copy_page

(PECL cairo >= 0.1.0)

cairo_surface_copy_page — Description

Descrição

void cairo_surface_copy_page ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_copy_page() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_scaled_font_text_extents
cairo_surface_create_similar
Cairo Funções


Description

cairo_surface_copy_page
cairo_surface_finish
Cairo Funções
PHP Manual

cairo_surface_create_similar

(PECL cairo >= 0.1.0)

cairo_surface_create_similar — Description

Descrição

CairoSurface cairo_surface_create_similar ( CairoSurface $surface , int $content , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

content

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_create_similar() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_copy_page
cairo_surface_finish
Cairo Funções


Description

cairo_surface_create_similar
cairo_surface_flush
Cairo Funções
PHP Manual

cairo_surface_finish

(PECL cairo >= 0.1.0)

cairo_surface_finish — Description

Descrição

void cairo_surface_finish ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_finish() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_create_similar
cairo_surface_flush
Cairo Funções


Description

cairo_surface_finish
cairo_surface_get_content
Cairo Funções
PHP Manual

cairo_surface_flush

(PECL cairo >= 0.1.0)

cairo_surface_flush — Description

Descrição

void cairo_surface_flush ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_flush() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_finish
cairo_surface_get_content
Cairo Funções


Description

cairo_surface_flush
cairo_surface_get_device_offset
Cairo Funções
PHP Manual

cairo_surface_get_content

(PECL cairo >= 0.1.0)

cairo_surface_get_content — Description

Descrição

int cairo_surface_get_content ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_get_content() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_flush
cairo_surface_get_device_offset
Cairo Funções


Description

cairo_surface_get_content
cairo_surface_get_font_options
Cairo Funções
PHP Manual

cairo_surface_get_device_offset

(PECL cairo >= 0.1.0)

cairo_surface_get_device_offset — Description

Descrição

array cairo_surface_get_device_offset ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_get_device_offset() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_get_content
cairo_surface_get_font_options
Cairo Funções


Description

cairo_surface_get_device_offset
cairo_surface_get_type
Cairo Funções
PHP Manual

cairo_surface_get_font_options

(PECL cairo >= 0.1.0)

cairo_surface_get_font_options — Description

Descrição

CairoFontOptions cairo_surface_get_font_options ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_get_font_options() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_get_device_offset
cairo_surface_get_type
Cairo Funções


Description

cairo_surface_get_font_options
cairo_surface_mark_dirty_rectangle
Cairo Funções
PHP Manual

cairo_surface_get_type

(PECL cairo >= 0.1.0)

cairo_surface_get_type — Description

Descrição

int cairo_surface_get_type ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_get_type() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_get_font_options
cairo_surface_mark_dirty_rectangle
Cairo Funções


Description

cairo_surface_get_type
cairo_surface_mark_dirty
Cairo Funções
PHP Manual

cairo_surface_mark_dirty_rectangle

(PECL cairo >= 0.1.0)

cairo_surface_mark_dirty_rectangle — Description

Descrição

void cairo_surface_mark_dirty_rectangle ( CairoSurface $surface , float $x , float $y , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

x

Description...

y

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_mark_dirty_rectangle() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_get_type
cairo_surface_mark_dirty
Cairo Funções


Description

cairo_surface_mark_dirty_rectangle
cairo_surface_set_device_offset
Cairo Funções
PHP Manual

cairo_surface_mark_dirty

(PECL cairo >= 0.1.0)

cairo_surface_mark_dirty — Description

Descrição

void cairo_surface_mark_dirty ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_mark_dirty() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_mark_dirty_rectangle
cairo_surface_set_device_offset
Cairo Funções


Description

cairo_surface_mark_dirty
cairo_surface_set_fallback_resolution
Cairo Funções
PHP Manual

cairo_surface_set_device_offset

(PECL cairo >= 0.1.0)

cairo_surface_set_device_offset — Description

Descrição

void cairo_surface_set_device_offset ( CairoSurface $surface , float $x , float $y )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

x

Description...

y

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_set_device_offset() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_mark_dirty
cairo_surface_set_fallback_resolution
Cairo Funções


Description

cairo_surface_set_device_offset
cairo_surface_show_page
Cairo Funções
PHP Manual

cairo_surface_set_fallback_resolution

(PECL cairo >= 0.1.0)

cairo_surface_set_fallback_resolution — Description

Descrição

void cairo_surface_set_fallback_resolution ( CairoSurface $surface , float $x , float $y )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

x

Description...

y

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_set_fallback_resolution() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_set_device_offset
cairo_surface_show_page
Cairo Funções


Description

cairo_surface_set_fallback_resolution
cairo_surface_status
Cairo Funções
PHP Manual

cairo_surface_show_page

(PECL cairo >= 0.1.0)

cairo_surface_show_page — Description

Descrição

void cairo_surface_show_page ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_show_page() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_set_fallback_resolution
cairo_surface_status
Cairo Funções


Description

cairo_surface_show_page
cairo_surface_write_to_png
Cairo Funções
PHP Manual

cairo_surface_status

(PECL cairo >= 0.1.0)

cairo_surface_status — Description

Descrição

int cairo_surface_status ( CairoSurface $surface )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_status() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_show_page
cairo_surface_write_to_png
Cairo Funções


Description

cairo_surface_status
cairo_svg_surface_create
Cairo Funções
PHP Manual

cairo_surface_write_to_png

(PECL cairo >= 0.1.0)

cairo_surface_write_to_png — Description

Descrição

void cairo_surface_write_to_png ( CairoSurface $surface , resource $stream )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

stream

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_surface_write_to_png() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_status
cairo_svg_surface_create
Cairo Funções


Description

cairo_surface_write_to_png
cairo_svg_surface_restrict_to_version
Cairo Funções
PHP Manual

cairo_svg_surface_create

(PECL cairo >= 0.1.0)

cairo_svg_surface_create — Description

Descrição

CairoSvgSurface cairo_svg_surface_create ( string $file , float $width , float $height )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_svg_surface_create() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_surface_write_to_png
cairo_svg_surface_restrict_to_version
Cairo Funções


Description

cairo_svg_surface_create
cairo_svg_version_to_string
Cairo Funções
PHP Manual

cairo_svg_surface_restrict_to_version

(PECL cairo >= 0.1.0)

cairo_svg_surface_restrict_to_version — Description

Descrição

void cairo_svg_surface_restrict_to_version ( CairoSvgSurface $surface , int $version )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

version

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_svg_surface_restrict_to_version() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_svg_surface_create
cairo_svg_version_to_string
Cairo Funções


Description

cairo_svg_surface_restrict_to_version
Cairo
Cairo Funções
PHP Manual

cairo_svg_version_to_string

(PECL cairo >= 0.1.0)

cairo_svg_version_to_string — Description

Descrição

string cairo_svg_version_to_string ( int $version )

The function description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

version

Description...

Valor Retornado

What is returned on success and failure

Erros

When does this function issue E_* level errors, and/or throw exceptions.

Exemplos

Exemplo #1 cairo_svg_version_to_string() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

/* ... */

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • related function name here()

cairo_svg_surface_restrict_to_version
Cairo
Cairo Funções


The Cairo class

Introdução

Simple class with some static helper methods.

Sinopse da classe

Cairo {
/* Methods */
public static array availableFonts ( void )
public static array availableSurfaces ( void )
public static string statusToString ( int $status )
public static int version ( void )
public static string versionString ( void )
}

Índice

  • Cairo::availableFonts — Retrieves the availables font types
  • Cairo::availableSurfaces — Retrieves all available surfaces
  • Cairo::statusToString — Retrieves the current status as string
  • Cairo::version — Retrives cairo's library version
  • Cairo::versionString — Retrieves cairo version as string
cairo_svg_version_to_string
Cairo::availableFonts
Cairo


Retrieves the availables font types

Cairo
Cairo::availableSurfaces
Cairo
PHP Manual

Cairo::availableFonts

cairo_available_fonts

(PECL cairo >= 0.1.0)

Cairo::availableFonts -- cairo_available_fonts — Retrieves the availables font types

Descrição

Object oriented style:

public static array Cairo::availableFonts ( void )

Procedural style:

array cairo_available_fonts ( void )

Returns an array with the available font backends

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A list-type array with all available font backends.

Exemplos

Exemplo #1 Object oriented style

<?php

/* Object Oriented Style */
var_dump(Cairo::availableFonts());

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  string(5) "WIN32"
  [1]=>
  string(4) "USER"
}

Exemplo #2 Procedural style

<?php

/* Procedural style */
var_dump(cairo_available_fonts());

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  string(5) "WIN32"
  [1]=>
  string(4) "USER"
}

Veja Também

  • Cairo::availableSurfaces() - Retrieves all available surfaces

Cairo
Cairo::availableSurfaces
Cairo


Retrieves all available surfaces

Cairo::availableFonts
Cairo::statusToString
Cairo
PHP Manual

Cairo::availableSurfaces

cairo_available_surfaces

(PECL cairo >= 0.1.0)

Cairo::availableSurfaces -- cairo_available_surfaces — Retrieves all available surfaces

Descrição

Object oriented style (method):

public static array Cairo::availableSurfaces ( void )

Procedural style:

array cairo_available_surfaces ( void )

Returns an array with the available surface backends

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A list-type array with all available surface backends.

Exemplos

Exemplo #1 Object oriented style

<?php

/* Object Oriented style */
var_dump(Cairo::availableSurfaces());

?>

O exemplo acima irá imprimir algo similar a:

array(6) {
  [0]=>
  string(5) "IMAGE"
  [1]=>
  string(3) "PNG"
  [2]=>
  string(3) "PDF"
  [3]=>
  string(2) "PS"
  [4]=>
  string(3) "SVG"
  [5]=>
  string(5) "WIN32"
}

Exemplo #2 Procedural style

<?php

/* Procedural style */
var_dump(cairo_available_surfaces());

?>

O exemplo acima irá imprimir algo similar a:

array(6) {
  [0]=>
  string(5) "IMAGE"
  [1]=>
  string(3) "PNG"
  [2]=>
  string(3) "PDF"
  [3]=>
  string(2) "PS"
  [4]=>
  string(3) "SVG"
  [5]=>
  string(5) "WIN32"
}

Veja Também

  • Cairo::availableFonts() - Retrieves the availables font types

Cairo::availableFonts
Cairo::statusToString
Cairo


Retrieves the current status as string

Cairo::availableSurfaces
Cairo::version
Cairo
PHP Manual

Cairo::statusToString

cairo_status_to_string

(PECL cairo >= 0.1.0)

Cairo::statusToString -- cairo_status_to_string — Retrieves the current status as string

Descrição

Object oriented style (method):

public static string Cairo::statusToString ( int $status )

Procedural style:

string cairo_status_to_string ( int $status )

Retrieves the current status as a readable string

Parâmetros

status

A valid status code given by cairo_status() or CairoContext::status()

Valor Retornado

A string containing the current status of a CairoContext object

Exemplos

Exemplo #1 Object oriented style

<?php
$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);
$context = new CairoContext($surface);

var_dump(Cairo::statusToString($context->status()));
?>

O exemplo acima irá imprimir algo similar a:

string(7) "success"

Exemplo #2 Procedural style

<?php
$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);
$context = cairo_create($surface);

var_dump(cairo_status_to_string(cairo_status($context)));
?>

O exemplo acima irá imprimir algo similar a:

string(7) "success"

Veja Também

  • CairoContext::status() - The status purpose

Cairo::availableSurfaces
Cairo::version
Cairo


Retrives cairo's library version

Cairo::statusToString
Cairo::versionString
Cairo
PHP Manual

Cairo::version

cairo_version

(PECL cairo >= 0.1.0)

Cairo::version -- cairo_version — Retrives cairo's library version

Descrição

Object oriented style (method):

public static int Cairo::version ( void )

Procedural style:

int cairo_version ( void )

Retrieves the current version of the cairo library as an integer value

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Current Cairo library version integer

Exemplos

Exemplo #1 Object oriented style

<?php
var_dump(Cairo::version());
?>

O exemplo acima irá imprimir algo similar a:

int(10808)

Exemplo #2 Procedural style

<?php
var_dump(cairo_version());
?>

O exemplo acima irá imprimir algo similar a:

int(10808)

Veja Também

  • Cairo::versionString() - Retrieves cairo version as string

Cairo::statusToString
Cairo::versionString
Cairo


Retrieves cairo version as string

Cairo::version
CairoContext
Cairo
PHP Manual

Cairo::versionString

cairo_version_string

(PECL cairo >= 0.1.0)

Cairo::versionString -- cairo_version_string — Retrieves cairo version as string

Descrição

Object oriented style (method):

public static string Cairo::versionString ( void )

Procedural style:

string cairo_version_string ( void )

Retrieves the current cairo library version as a string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Current Cairo library version string

Exemplos

Exemplo #1 Object oriented style

<?php

var_dump(Cairo::versionString());

?>

O exemplo acima irá imprimir algo similar a:

string(5) "1.8.8"

Exemplo #2 Procedural style

<?php

var_dump(cairo_version_string());

?>

O exemplo acima irá imprimir algo similar a:

string(5) "1.8.8"

Veja Também

  • Cairo::version() - Retrives cairo's library version

Cairo::version
CairoContext
Cairo


The CairoContext class

Introdução

Context is the main object used when drawing with cairo. To draw with cairo, you create a CairoContext, set the target CairoSurface, and drawing options for the CairoContext, create shapes with functions . like CairoContext::moveTo() and CairoContext::lineTo(), and then draw shapes with CairoContext::stroke() or CairoContext::fill(). Contexts can be pushed to a stack via CairoContext::save(). They may then safely be changed, without loosing the current state. Use CairoContext::restore() to restore to the saved state.

Sinopse da classe

CairoContext {
/* Methods */
public void appendPath ( CairoPath $path )
public void arc ( float $x , float $y , float $radius , float $angle1 , float $angle2 )
public void arcNegative ( float $x , float $y , float $radius , float $angle1 , float $angle2 )
public void clip ( void )
public array clipExtents ( void )
public void clipPreserve ( void )
public array clipRectangleList ( void )
public void closePath ( void )
__construct ( CairoSurface $surface )
public void copyPage ( void )
public CairoPath copyPath ( void )
public CairoPath copyPathFlat ( void )
public void curveTo ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )
public array deviceToUser ( float $x , float $y )
public array deviceToUserDistance ( float $x , float $y )
public void fill ( void )
public array fillExtents ( void )
public void fillPreserve ( void )
public array fontExtents ( void )
public int getAntialias ( void )
public array getCurrentPoint ( void )
public array getDash ( void )
public int getDashCount ( void )
public int getFillRule ( void )
public void getFontFace ( void )
public void getFontMatrix ( void )
public void getFontOptions ( void )
public void getGroupTarget ( void )
public int getLineCap ( void )
public int getLineJoin ( void )
public float getLineWidth ( void )
public void getMatrix ( void )
public float getMiterLimit ( void )
public int getOperator ( void )
public void getScaledFont ( void )
public void getSource ( void )
public void getTarget ( void )
public float getTolerance ( void )
public void glyphPath ( array $glyphs )
public bool hasCurrentPoint ( void )
public void identityMatrix ( void )
public bool inFill ( string $x , string $y )
public bool inStroke ( string $x , string $y )
public void lineTo ( string $x , string $y )
public void mask ( string $pattern )
public void maskSurface ( string $surface [, string $x [, string $y ]] )
public void moveTo ( string $x , string $y )
public void newPath ( void )
public void newSubPath ( void )
public void paint ( void )
public void paintWithAlpha ( string $alpha )
public array pathExtents ( void )
public void popGroup ( void )
public void popGroupToSource ( void )
public void pushGroup ( void )
public void pushGroupWithContent ( string $content )
public void rectangle ( string $x , string $y , string $width , string $height )
public void relCurveTo ( string $x1 , string $y1 , string $x2 , string $y2 , string $x3 , string $y3 )
public void relLineTo ( string $x , string $y )
public void relMoveTo ( string $x , string $y )
public void resetClip ( void )
public void restore ( void )
public void rotate ( string $angle )
public void save ( void )
public void scale ( string $x , string $y )
public void selectFontFace ( string $family [, string $slant [, string $weight ]] )
public void setAntialias ([ string $antialias ] )
public void setDash ( string $dashes [, string $offset ] )
public void setFillRule ( string $setting )
public void setFontFace ( CairoFontFace $fontface )
public void setFontMatrix ( string $matrix )
public void setFontOptions ( string $fontoptions )
public void setFontSize ( string $size )
public void setLineCap ( string $setting )
public void setLineJoin ( string $setting )
public void setLineWidth ( string $width )
public void setMatrix ( string $matrix )
public void setMiterLimit ( string $limit )
public void setOperator ( string $setting )
public void setScaledFont ( string $scaledfont )
public void setSource ( string $pattern )
public void setSourceRGB ( string $red , string $green , string $blue )
public void setSourceRGBA ( string $red , string $green , string $blue , string $alpha )
public void setSourceSurface ( string $surface [, string $x [, string $y ]] )
public void setTolerance ( string $tolerance )
public void showPage ( void )
public void showText ( string $text )
public int status ( void )
public void stroke ( void )
public array strokeExtents ( void )
public void strokePreserve ( void )
public array textExtents ( string $text )
public void textPath ( string $string )
public void transform ( string $matrix )
public void translate ( string $x , string $y )
public array userToDevice ( string $x , string $y )
public array userToDeviceDistance ( string $x , string $y )
}

Índice

  • CairoContext::appendPath — Appends a path to current path
  • CairoContext::arc — Adds a circular arc
  • CairoContext::arcNegative — Adds a negative arc
  • CairoContext::clip — Establishes a new clip region
  • CairoContext::clipExtents — Computes the area inside the current clip
  • CairoContext::clipPreserve — Establishes a new clip region from the current clip
  • CairoContext::clipRectangleList — Retrieves the current clip as a list of rectangles
  • CairoContext::closePath — Closes the current path
  • CairoContext::__construct — Creates a new CairoContext
  • CairoContext::copyPage — Emits the current page
  • CairoContext::copyPath — Creates a copy of the current path
  • CairoContext::copyPathFlat — Gets a flattened copy of the current path
  • CairoContext::curveTo — Adds a curve
  • CairoContext::deviceToUser — Transform a coordinate
  • CairoContext::deviceToUserDistance — Transform a distance
  • CairoContext::fill — Fills the current path
  • CairoContext::fillExtents — Computes the filled area
  • CairoContext::fillPreserve — Fills and preserve the current path
  • CairoContext::fontExtents — Get the font extents
  • CairoContext::getAntialias — Retrives the current antialias mode
  • CairoContext::getCurrentPoint — The getCurrentPoint purpose
  • CairoContext::getDash — The getDash purpose
  • CairoContext::getDashCount — The getDashCount purpose
  • CairoContext::getFillRule — The getFillRule purpose
  • CairoContext::getFontFace — The getFontFace purpose
  • CairoContext::getFontMatrix — The getFontMatrix purpose
  • CairoContext::getFontOptions — The getFontOptions purpose
  • CairoContext::getGroupTarget — The getGroupTarget purpose
  • CairoContext::getLineCap — The getLineCap purpose
  • CairoContext::getLineJoin — The getLineJoin purpose
  • CairoContext::getLineWidth — The getLineWidth purpose
  • CairoContext::getMatrix — The getMatrix purpose
  • CairoContext::getMiterLimit — The getMiterLimit purpose
  • CairoContext::getOperator — The getOperator purpose
  • CairoContext::getScaledFont — The getScaledFont purpose
  • CairoContext::getSource — The getSource purpose
  • CairoContext::getTarget — The getTarget purpose
  • CairoContext::getTolerance — The getTolerance purpose
  • CairoContext::glyphPath — The glyphPath purpose
  • CairoContext::hasCurrentPoint — The hasCurrentPoint purpose
  • CairoContext::identityMatrix — The identityMatrix purpose
  • CairoContext::inFill — The inFill purpose
  • CairoContext::inStroke — The inStroke purpose
  • CairoContext::lineTo — The lineTo purpose
  • CairoContext::mask — The mask purpose
  • CairoContext::maskSurface — The maskSurface purpose
  • CairoContext::moveTo — The moveTo purpose
  • CairoContext::newPath — The newPath purpose
  • CairoContext::newSubPath — The newSubPath purpose
  • CairoContext::paint — The paint purpose
  • CairoContext::paintWithAlpha — The paintWithAlpha purpose
  • CairoContext::pathExtents — The pathExtents purpose
  • CairoContext::popGroup — The popGroup purpose
  • CairoContext::popGroupToSource — The popGroupToSource purpose
  • CairoContext::pushGroup — The pushGroup purpose
  • CairoContext::pushGroupWithContent — The pushGroupWithContent purpose
  • CairoContext::rectangle — The rectangle purpose
  • CairoContext::relCurveTo — The relCurveTo purpose
  • CairoContext::relLineTo — The relLineTo purpose
  • CairoContext::relMoveTo — The relMoveTo purpose
  • CairoContext::resetClip — The resetClip purpose
  • CairoContext::restore — The restore purpose
  • CairoContext::rotate — The rotate purpose
  • CairoContext::save — The save purpose
  • CairoContext::scale — The scale purpose
  • CairoContext::selectFontFace — The selectFontFace purpose
  • CairoContext::setAntialias — The setAntialias purpose
  • CairoContext::setDash — The setDash purpose
  • CairoContext::setFillRule — The setFillRule purpose
  • CairoContext::setFontFace — The setFontFace purpose
  • CairoContext::setFontMatrix — The setFontMatrix purpose
  • CairoContext::setFontOptions — The setFontOptions purpose
  • CairoContext::setFontSize — The setFontSize purpose
  • CairoContext::setLineCap — The setLineCap purpose
  • CairoContext::setLineJoin — The setLineJoin purpose
  • CairoContext::setLineWidth — The setLineWidth purpose
  • CairoContext::setMatrix — The setMatrix purpose
  • CairoContext::setMiterLimit — The setMiterLimit purpose
  • CairoContext::setOperator — The setOperator purpose
  • CairoContext::setScaledFont — The setScaledFont purpose
  • CairoContext::setSource — The setSource purpose
  • CairoContext::setSourceRGB — The setSourceRGB purpose
  • CairoContext::setSourceRGBA — The setSourceRGBA purpose
  • CairoContext::setSourceSurface — The setSourceSurface purpose
  • CairoContext::setTolerance — The setTolerance purpose
  • CairoContext::showPage — The showPage purpose
  • CairoContext::showText — The showText purpose
  • CairoContext::status — The status purpose
  • CairoContext::stroke — The stroke purpose
  • CairoContext::strokeExtents — The strokeExtents purpose
  • CairoContext::strokePreserve — The strokePreserve purpose
  • CairoContext::textExtents — The textExtents purpose
  • CairoContext::textPath — The textPath purpose
  • CairoContext::transform — The transform purpose
  • CairoContext::translate — The translate purpose
  • CairoContext::userToDevice — The userToDevice purpose
  • CairoContext::userToDeviceDistance — The userToDeviceDistance purpose
Cairo::versionString
CairoContext::appendPath
Cairo


Appends a path to current path

CairoContext
CairoContext::arc
CairoContext
PHP Manual

CairoContext::appendPath

cairo_append_path

(PECL cairo >= 0.1.0)

CairoContext::appendPath -- cairo_append_path — Appends a path to current path

Descrição

Object oriented style (method):

public void CairoContext::appendPath ( CairoPath $path )

Procedural style:

void cairo_append_path ( CairoContext $context , CairoPath $path )

Appends the path onto the current path. The path may be either the return value from one of CairoContext::copyPath() or CairoContext::copyPathFlat();

if path is not a valid CairoPath instance a CairoException will be thrown

Parâmetros

context

CairoContext object

path

CairoPath object

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

$path = $context->copyPath();

$context->appendPath($path);

?>

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

$path = cairo_copy_path($context);

cairo_append_path($context, $path);

?>

Veja Também

  • CairoPath
  • CairoContext::copyPath() - Creates a copy of the current path
  • CairoContext::copyPathFlat() - Gets a flattened copy of the current path

CairoContext
CairoContext::arc
CairoContext


Adds a circular arc

CairoContext::appendPath
CairoContext::arcNegative
CairoContext
PHP Manual

CairoContext::arc

cairo_arc

(PECL cairo >= 0.1.0)

CairoContext::arc -- cairo_arc — Adds a circular arc

Descrição

Object oriented style (method):

public void CairoContext::arc ( float $x , float $y , float $radius , float $angle1 , float $angle2 )

Procedural style:

void cairo_arc ( CairoContext $context , float $x , float $y , float $radius , float $angle1 , float $angle2 )

Adds a circular arc of the given radius to the current path. The arc is centered at (x, y), begins at angle1 and proceeds in the direction of increasing angles to end at angle2. If angle2 is less than angle1 it will be progressively increased by 2*M_PI until it is greater than angle1. If there is a current point, an initial line segment will be added to the path to connect the current point to the beginning of the arc. If this initial line is undesired, it can be avoided by calling CairoContext::newSubPath() or procedural cairo_new_sub_path() before calling CairoContext::arc() or cairo_arc(). Angles are measured in radians. An angle of 0.0 is in the direction of the positive X axis (in user space). An angle of M_PI/2.0 radians (90 degrees) is in the direction of the positive Y axis (in user space). Angles increase in the direction from the positive X axis toward the positive Y axis. So with the default transformation matrix, angles increase in a clockwise direction. (To convert from degrees to radians, use degrees * (M_PI / 180.).) This function gives the arc in the direction of increasing angles; see CairoContext::arcNegative() or cairo_arc_negative() to get the arc in the direction of decreasing angles.

Parâmetros

context

A valid CairoContext object

x

x position

y

y position

radius

Radius of the arc

angle1

start angle

angle2

end angle

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->setSourceRgb(0, 0, 0);
$c->paint();

$c->setLineWidth(1);
$c->setSourceRgb(1, 1, 1);

for ($r = 50; $r > 0; $r -= 10) {
 $c->arc(50, 50, $r, 0, 2 * M_PI);
 $c->stroke();
 $c->fill();
}

$s->writeToPng(dirname(__FILE__) . '/CairoContext__arc.png');
?>

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_set_source_rgb($c, 0, 0, 0);
cairo_paint($c);

cairo_set_source_rgb($c, 1, 1, 1);
cairo_set_line_width($c, 1);

for ($r = 50; $r > 0; $r -= 10) {
 cairo_arc($c, 50, 50, $r, 0, 2 * M_PI);
 cairo_stroke($c);
 cairo_fill($c);
}

cairo_surface_write_to_png($s, dirname(__FILE__) . '/cairo_arc.png');
?>

Veja Também

  • CairoContext::arcNegative() - Adds a negative arc

CairoContext::appendPath
CairoContext::arcNegative
CairoContext


Adds a negative arc

CairoContext::arc
CairoContext::clip
CairoContext
PHP Manual

CairoContext::arcNegative

cairo_arc_negative

(PECL cairo >= 0.1.0)

CairoContext::arcNegative -- cairo_arc_negative — Adds a negative arc

Descrição

Object oriented style (method):

public void CairoContext::arcNegative ( float $x , float $y , float $radius , float $angle1 , float $angle2 )

Procedural style:

void cairo_arc_negative ( CairoContext $context , float $x , float $y , float $radius , float $angle1 , float $angle2 )

Adds a circular arc of the given radius to the current path. The arc is centered at (x, y), begins at angle1 and proceeds in the direction of decreasing angles to end at angle2. If angle2 is greater than angle1 it will be progressively decreased by 2*M_PI until it is less than angle1. See CairoContext::arc() or cairo_arc() for more details. This function differs only in the direction of the arc between the two angles.

Parâmetros

context

A valid CairoContext object

x

double x position

y

double y position

radius

The radius of the desired negative arc

angle1

Start angle of the arc

angle2

End angle of the arc

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->setSourceRgb(0, 0, 0);
$c->paint();

$c->setLineWidth(1);
$c->setSourceRgb(1, 1, 1);

for ($r = 50; $r > 0; $r -= 10) {
 $c->arcNegative(50, 50, $r, 2 * M_PI, 0);
 $c->stroke();
 $c->fill();
}

$s->writeToPng(dirname(__FILE__) . '/CairoContext__arcNegative.png');
?>

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_set_source_rgb($c, 0, 0, 0);
cairo_paint($c);

cairo_set_source_rgb($c, 1, 1, 1);
cairo_set_line_width($c, 1);

for ($r = 50; $r > 0; $r -= 10) {
 cairo_arc_negative($c, 50, 50, $r, 2 * M_PI, 0);
 cairo_stroke($c);
 cairo_fill($c);
}

cairo_surface_write_to_png($s, dirname(__FILE__) . '/cairo_arc_negative.png');
?>

Veja Também

  • CairoContext::arc() - Adds a circular arc

CairoContext::arc
CairoContext::clip
CairoContext


Establishes a new clip region

CairoContext::arcNegative
CairoContext::clipExtents
CairoContext
PHP Manual

CairoContext::clip

cairo_clip

(PECL cairo >= 0.1.0)

CairoContext::clip -- cairo_clip — Establishes a new clip region

Descrição

Object oriented style (method):

public void CairoContext::clip ( void )

Procedural style:

void cairo_clip ( CairoContext $context )

Establishes a new clip region by intersecting the current clip region with the current path as it would be filled by CairoContext::fill() or cairo_fill() and according to the current fill rule (see CairoContext::setFillRule() or cairo_set_fill_rule()).

After CairoContext::clip() or cairo_clip(), the current path will be cleared from the cairo context.

The current clip region affects all drawing operations by effectively masking out any changes to the surface that are outside the current clip region.

Calling  CairoContext::clip() or cairo_clip()
can only make the clip region smaller, never larger. But the current clip is part of the
graphics state, so a temporary restriction of the clip region can be achieved by calling
 CairoContext::clip() or cairo_clip() within a
 CairoContext::save()/ CairoContext::restore() or
cairo_save()/cairo_restore() pair.
The only other means of increasing the size of the clip region is
 CairoContext::resetClip() or procedural cairo_reset_clip().

Parâmetros

context

A valid CairoContext object

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

$context->clip();

?>

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

cairo_clip($context);

?>

Veja Também

  • CairoContext::resetClip() - The resetClip purpose
  • cairo_reset_clip() - The resetClip purpose

CairoContext::arcNegative
CairoContext::clipExtents
CairoContext


Computes the area inside the current clip

CairoContext::clip
CairoContext::clipPreserve
CairoContext
PHP Manual

CairoContext::clipExtents

cairo_clip_extents

(PECL cairo >= 0.1.0)

CairoContext::clipExtents -- cairo_clip_extents — Computes the area inside the current clip

Descrição

Object oriented style (method):

public array CairoContext::clipExtents ( void )

Procedural style:

array cairo_clip_extents ( CairoContext $context )

Computes a bounding box in user coordinates covering the area inside the current clip.

Parâmetros

context

A valid CairoContext object

Valor Retornado

An array containing the (float)x1, (float)y1, (float)x2, (float)y2, coordinates covering the area inside the current clip

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

var_dump($context->clipExtents());
?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  [0]=>
  float(0)
  [1]=>
  float(0)
  [2]=>
  float(50)
  [3]=>
  float(50)
}

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

var_dump(cairo_clip_extents($context));

?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  [0]=>
  float(0)
  [1]=>
  float(0)
  [2]=>
  float(50)
  [3]=>
  float(50)
}

Veja Também

  • CairoContext::clip() - Establishes a new clip region

CairoContext::clip
CairoContext::clipPreserve
CairoContext


Establishes a new clip region from the current clip

CairoContext::clipExtents
CairoContext::clipRectangleList
CairoContext
PHP Manual

CairoContext::clipPreserve

cairo_clip_preserve

(PECL cairo >= 0.1.0)

CairoContext::clipPreserve -- cairo_clip_preserve — Establishes a new clip region from the current clip

Descrição

Object oriented style (method):

public void CairoContext::clipPreserve ( void )

Procedural style:

void cairo_clip_preserve ( CairoContext $context )

Establishes a new clip region by intersecting the current clip region with the current path as it would be filled by Context.fill() and according to the current FILL RULE (see CairoContext::setFillRule() or cairo_set_fill_rule()).

Unlike CairoContext::clip(), CairoContext::clipPreserve() preserves the path within the Context. The current clip region affects all drawing operations by effectively masking out any changes to the surface that are outside the current clip region.

Calling CairoContext::clipPreserve() can only make the clip region smaller, never larger. But the current clip is part of the graphics state, so a temporary restriction of the clip region can be achieved by calling CairoContext::clipPreserve() within a CairoContext::save()/ CairoContext::restore() pair. The only other means of increasing the size of the clip region is CairoContext::resetClip().

Parâmetros

context

A valid CairoContext object

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

$context->clipPreserve();

?>

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

cairo_clip_preserve($context);

?>

Veja Também

  • CairoContext::save() - The save purpose
  • CairoContext::restore() - The restore purpose
  • CairoContext::resetClip() - The resetClip purpose

CairoContext::clipExtents
CairoContext::clipRectangleList
CairoContext


Retrieves the current clip as a list of rectangles

CairoContext::clipPreserve
CairoContext::closePath
CairoContext
PHP Manual

CairoContext::clipRectangleList

cairo_clip_rectangle_list

(PECL cairo >= 0.1.0)

CairoContext::clipRectangleList -- cairo_clip_rectangle_list — Retrieves the current clip as a list of rectangles

Descrição

Object oriented style (method):

public array CairoContext::clipRectangleList ( void )

Procedural style:

array cairo_clip_rectangle_list ( CairoContext $context )

Returns a list-type array with the current clip region as a list of rectangles in user coordinates

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

An array of user-space represented rectangles for the current clip

(The status in the list may be CAIRO_STATUS_CLIP_NOT_REPRESENTABLE to indicate that the clip region cannot be represented as a list of user-space rectangles. The status may have other values to indicate other errors.)

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

var_dump($context->clipRectangleList());

?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  array(4) {
    ["x"]=>
    float(0)
    ["y"]=>
    float(0)
    ["width"]=>
    float(50)
    ["height"]=>
    float(50)
  }
}

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

var_dump(cairo_clip_rectangle_list($context));

?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  array(4) {
    ["x"]=>
    float(0)
    ["y"]=>
    float(0)
    ["width"]=>
    float(50)
    ["height"]=>
    float(50)
  }
}

Veja Também

  • Classname::Method()

CairoContext::clipPreserve
CairoContext::closePath
CairoContext


Closes the current path

CairoContext::clipRectangleList
CairoContext::__construct
CairoContext
PHP Manual

CairoContext::closePath

cairo_close_path

(PECL cairo >= 0.1.0)

CairoContext::closePath -- cairo_close_path — Closes the current path

Descrição

Object oriented style (method):

public void CairoContext::closePath ( void )

Procedural style:

void cairo_close_path ( CairoContext $context )

Adds a line segment to the path from the current point to the beginning of the current sub-path, (the most recent point passed to CairoContext::moveTo()), and closes this sub-path. After this call the current point will be at the joined endpoint of the sub-path.

The behavior of close_path() is distinct from simply calling CairoContext::lineTo() with the equivalent coordinate in the case of stroking. When a closed sub-path is stroked, there are no caps on the ends of the sub-path. Instead, there is a line join connecting the final and initial segments of the sub-path.

If there is no current point before the call to CairoContext::closePath(), this function will have no effect.

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

$context->closePath();

?>

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

cairo_close_path($context);

?>

Veja Também

  • CairoContext::copyPath() - Creates a copy of the current path

CairoContext::clipRectangleList
CairoContext::__construct
CairoContext


Creates a new CairoContext

CairoContext::closePath
CairoContext::copyPage
CairoContext
PHP Manual

CairoContext::__construct

(PECL cairo >= 0.1.0)

CairoContext::__construct — Creates a new CairoContext

Descrição

CairoContext::__construct ( CairoSurface $surface )

Creates a new CairoContext object to draw

Parâmetros

surface

A valid CairoSurface like CairoImageSurface or CairoPdfSurface

Valor Retornado

A CairoContext

Exemplos

Exemplo #1 CairoContext::__construct() example

<?php
// The surface to work on
$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

// Create a new CairoContext for the CairoSurface
$context = new CairoContext($surface);

?>

Veja Também

  • Cairo::Method()

CairoContext::closePath
CairoContext::copyPage
CairoContext


Emits the current page

CairoContext::__construct
CairoContext::copyPath
CairoContext
PHP Manual

CairoContext::copyPage

cairo_copy_page

(PECL cairo >= 0.1.0)

CairoContext::copyPage -- cairo_copy_page — Emits the current page

Descrição

Object oriented style (method):

public void CairoContext::copyPage ( void )

Procedural style:

void cairo_copy_page ( CairoContext $context )

Emits the current page for backends that support multiple pages, but doesn’t clear it, so, the contents of the current page will be retained for the next page too. Use CairoContext::showPage() if you want to get an empty page after the emission.

This is a convenience function that simply calls CairoSurface::copyPage() on CairoContext’s target.

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

$context->copyPage();

?>

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

cairo_copy_page($context);

?>

Veja Também

  • CairoContext::showPage() - The showPage purpose
  • CairoSurface::copyPage() - The copyPage purpose

CairoContext::__construct
CairoContext::copyPath
CairoContext


Creates a copy of the current path

CairoContext::copyPage
CairoContext::copyPathFlat
CairoContext
PHP Manual

CairoContext::copyPath

cairo_copy_path

(PECL cairo >= 0.1.0)

CairoContext::copyPath -- cairo_copy_path — Creates a copy of the current path

Descrição

Object oriented style (method):

public CairoPath CairoContext::copyPath ( void )

Procedural style:

CairoPath cairo_copy_path ( CairoContext $context )

Creates a copy of the current path and returns it to the user as a CairoPath. See CairoPath for hints on how to iterate over the returned data structure.

This function will always return a valid CairoPath object, but the result will have no data, if either of the following conditions hold:

  • 1. If there is insufficient memory to copy the path. In this case CairoPath->status will be set to CAIRO_STATUS_NO_MEMORY.
  • 2. If context is already in an error state. In this case CairoPath->status will contain the same status that would be returned by cairo_status().
In either case, CairoPath->status will be set to CAIRO_STATUS_NO_MEMORY (regardless of what the error status in cr might have been).

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

A copy of the current CairoPath in the context

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

var_dump($context->copyPath())

?>

O exemplo acima irá imprimir algo similar a:

object(CairoPath)#3 (0) {
}

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

var_dump(cairo_copy_path($context));

?>

O exemplo acima irá imprimir algo similar a:

object(CairoPath)#3 (0) {
}

Veja Também

  • CairoContext::closePath() - Closes the current path

CairoContext::copyPage
CairoContext::copyPathFlat
CairoContext


Gets a flattened copy of the current path

CairoContext::copyPath
CairoContext::curveTo
CairoContext
PHP Manual

CairoContext::copyPathFlat

cairo_copy_path_flat

(PECL cairo >= 0.1.0)

CairoContext::copyPathFlat -- cairo_copy_path_flat — Gets a flattened copy of the current path

Descrição

Object oriented style (method):

public CairoPath CairoContext::copyPathFlat ( void )

Procedural style:

CairoPath cairo_copy_path_flat ( CairoContext $context )

Gets a flattened copy of the current path and returns it to the user as a CairoPath.

This function is like CairoContext::copyPath() except that any curves in the path will be approximated with piecewise-linear approximations, (accurate to within the current tolerance value). That is, the result is guaranteed to not have any elements of type CAIRO_PATH_CURVE_TO which will instead be replaced by a series of CAIRO_PATH_LINE_TO elements.

Parâmetros

context

A CairoContext object

Valor Retornado

A copy of the current path

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

$context = new CairoContext($surface);

var_dump($context->copyPathFlat());

?>

O exemplo acima irá imprimir algo similar a:

object(CairoPath)#3 (0) {
}

Exemplo #2 Procedural style

<?php

$surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);

$context = cairo_create($surface);

var_dump(cairo_copy_path_flat($context));

?>

O exemplo acima irá imprimir algo similar a:

object(CairoPath)#3 (0) {
}

Veja Também

  • CairoContext::copyPath() - Creates a copy of the current path
  • CairoContext::closePath() - Closes the current path

CairoContext::copyPath
CairoContext::curveTo
CairoContext


Adds a curve

CairoContext::copyPathFlat
CairoContext::deviceToUser
CairoContext
PHP Manual

CairoContext::curveTo

cairo_curve_to

(PECL cairo >= 0.1.0)

CairoContext::curveTo -- cairo_curve_to — Adds a curve

Descrição

Object oriented style (method):

public void CairoContext::curveTo ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Procedural style:

void cairo_curve_to ( CairoContext $context , float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Adds a cubic Bezier spline to the path from the current point to position x3 ,y3 in user-space coordinates, using x1, y1 and x2, y2 as the control points. After this call the current point will be x3, y3.

If there is no current point before the call to CairoContext::curveTo() this function will behave as if preceded by a call to CairoContext::moveTo() (x1, y1).

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

x1

First control point in the x axis for the curve

y1

First control point in the y axis for the curve

x2

Second control point in x axis for the curve

y2

Second control point in y axis for the curve

x3

Final point in the x axis for the curve

y3

Final point in the y axis for the curve

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php
$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->setSourceRgb(0, 0, 0);

$c->paint();

$c->moveTo(10, 50);
$c->setLineWidth(5);
$c->setSourceRgb(.1, 0, 1);
$c->curveTo(20, 80, 80, 20, 90, 50);
$c->stroke();

$s->writeToPng(dirname(__FILE__) . '/curveTo.png');
?>

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_set_source_rgb($c, 0, 0, 0);

cairo_paint($c);

cairo_move_to($c, 10, 50);
cairo_set_line_width($c, 5);
cairo_set_source_rgb($c, .1, 0, 1);
cairo_curve_to($c, 20, 80, 80, 20, 90, 50);
cairo_stroke($c);

cairo_surface_write_to_png($s, dirname(__FILE__) . '/curve_to.png');
?>

Veja Também

  • CairoContext::moveTo() - The moveTo purpose

CairoContext::copyPathFlat
CairoContext::deviceToUser
CairoContext


Transform a coordinate

CairoContext::curveTo
CairoContext::deviceToUserDistance
CairoContext
PHP Manual

CairoContext::deviceToUser

cairo_device_to_user

(PECL cairo >= 0.1.0)

CairoContext::deviceToUser -- cairo_device_to_user — Transform a coordinate

Descrição

Object oriented style (method):

public array CairoContext::deviceToUser ( float $x , float $y )

Procedural style:

array cairo_device_to_user ( CairoContext $context , float $x , float $y )

Transform a coordinate from device space to user space by multiplying the given point by the inverse of the current transformation matrix (CTM).

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

x

x value of the coordinate

y

y value of the coordinate

Valor Retornado

An array containing the x and y coordinates in the user-space

Veja Também

  • CairoContext::deviceToUserDistance() - Transform a distance

CairoContext::curveTo
CairoContext::deviceToUserDistance
CairoContext


Transform a distance

CairoContext::deviceToUser
CairoContext::fill
CairoContext
PHP Manual

CairoContext::deviceToUserDistance

cairo_device_to_user_distance

(PECL cairo >= 0.1.0)

CairoContext::deviceToUserDistance -- cairo_device_to_user_distance — Transform a distance

Descrição

Object oriented style (method):

public array CairoContext::deviceToUserDistance ( float $x , float $y )

Procedural style:

array cairo_device_to_user_distance ( CairoContext $context , float $x , float $y )

Transform a distance vector from device space to user space. This function is similar to CairoContext::deviceToUser() or cairo_device_to_user() except that the translation components of the inverse Cairo Transformation Matrix will be ignored when transforming (x,y).

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

x

X component of a distance vector

y

Y component of a distance vector

Valor Retornado

Returns an array with the x and y values of a distance vector in the user-space

Veja Também

  • CairoContext::deviceToUser() - Transform a coordinate

CairoContext::deviceToUser
CairoContext::fill
CairoContext


Fills the current path

CairoContext::deviceToUserDistance
CairoContext::fillExtents
CairoContext
PHP Manual

CairoContext::fill

cairo_fill

(PECL cairo >= 0.1.0)

CairoContext::fill -- cairo_fill — Fills the current path

Descrição

Object oriented style (method):

public void CairoContext::fill ( void )

Procedural style:

void cairo_fill ( CairoContext $context )

A drawing operator that fills the current path according to the current CairoFillRule, (each sub-path is implicitly closed before being filled). After CairoContext::fill() or cairo_fill(), the current path will be cleared from the CairoContext.

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->setSourceRgb(0, 0, 0);
$c->paint();

$c->setSourceRgb(1, 1, 1);
$c->rectangle(0, 0, 50, 50);
$c->fill();
$c->setSourceRgb(0, 1, 0);
$c->rectangle(50, 50, 50, 50);
$c->fill();

$s->writeToPng(dirname(__FILE__) . '/CairoContext_fill.png');

?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_set_source_rgb($c, 0, 0, 0);
cairo_paint($c);

cairo_set_source_rgb($c, 1, 1, 1);
cairo_rectangle($c, 0, 0, 50, 50);
cairo_fill($c);
cairo_set_source_rgb($c, 0, 1, 0);
cairo_rectangle($c, 50, 50, 50, 50);
cairo_fill($c);

cairo_surface_write_to_png($s, dirname(__FILE__) . '/cairo_fill.png');

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoContext::setFillRule() - The setFillRule purpose
  • ContextContext::fillPreserve()
  • CairoFillRule

CairoContext::deviceToUserDistance
CairoContext::fillExtents
CairoContext


Computes the filled area

CairoContext::fill
CairoContext::fillPreserve
CairoContext
PHP Manual

CairoContext::fillExtents

cairo_fill_extents

(PECL cairo >= 0.1.0)

CairoContext::fillExtents -- cairo_fill_extents — Computes the filled area

Descrição

Object oriented style (method):

public array CairoContext::fillExtents ( void )

Procedural style:

array cairo_fill_extents ( CairoContext $context )

Computes a bounding box in user coordinates covering the area that would be affected, (the “inked” area), by a CairoContext::fill() operation given the current path and fill parameters. If the current path is empty, returns an empty rectangle (0,0,0,0). Surface dimensions and clipping are not taken into account.

Contrast with CairoContext::pathExtents(), which is similar, but returns non-zero extents for some paths with no inked area, (such as a simple line segment).

Note that CairoContext::fillExtents() must necessarily do more work to compute the precise inked areas in light of the fill rule, so CairoContext::pathExtents() may be more desirable for sake of performance if the non-inked path extents are desired.

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

An array with the coordinates of the afected area

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoContext::fill() - Fills the current path
  • CairoContext::setFillRule() - The setFillRule purpose
  • CairoContext::fillPreserve() - Fills and preserve the current path

CairoContext::fill
CairoContext::fillPreserve
CairoContext


Fills and preserve the current path

CairoContext::fillExtents
CairoContext::fontExtents
CairoContext
PHP Manual

CairoContext::fillPreserve

cairo_fill_preserve

(PECL cairo >= 0.1.0)

CairoContext::fillPreserve -- cairo_fill_preserve — Fills and preserve the current path

Descrição

Object oriented style (method):

public void CairoContext::fillPreserve ( void )

Procedural style:

void cairo_fill_preserve ( CairoContext $context )

A drawing operator that fills the current path according to the current CairoFillRule, (each sub-path is implicitly closed before being filled). Unlike CairoContext::fill(), CairoContext::fillPreserve() (Procedural cairo_fill(), cairo_fill_preserve(), respectively) preserves the path within the Context.

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoContext::setFillRule() - The setFillRule purpose
  • CairoContext::fill() - Fills the current path

CairoContext::fillExtents
CairoContext::fontExtents
CairoContext


Get the font extents

CairoContext::fillPreserve
CairoContext::getAntialias
CairoContext
PHP Manual

CairoContext::fontExtents

cairo_font_extents

(PECL cairo >= 0.1.0)

CairoContext::fontExtents -- cairo_font_extents — Get the font extents

Descrição

Object oriented style (method):

public array CairoContext::fontExtents ( void )

Procedural style:

array cairo_font_extents ( CairoContext $context )

Gets the font extents for the currently selected font.

Parâmetros

context

Description...

Valor Retornado

An array containing the font extents for the current font.

Exemplos

Exemplo #1 Object oriented style

<?php

$sur = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);
$con = new CairoContext($sur);

var_dump($con->fontExtents());

?>

O exemplo acima irá imprimir algo similar a:

array(5) {
  ["ascent"]=>
  float(10)
  ["descent"]=>
  float(3)
  ["height"]=>
  float(13.3125)
  ["max_x_advance"]=>
  float(26.65625)
  ["max_y_advance"]=>
  float(0)
}

Exemplo #2 Procedural style

<?php

$sur = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);
$con = cairo_create($sur);

var_dump(cairo_font_extents($con));

?>

O exemplo acima irá imprimir algo similar a:

array(5) {
  ["ascent"]=>
  float(10)
  ["descent"]=>
  float(3)
  ["height"]=>
  float(13.3125)
  ["max_x_advance"]=>
  float(26.65625)
  ["max_y_advance"]=>
  float(0)
}

Veja Também

  • Classname::Method()

CairoContext::fillPreserve
CairoContext::getAntialias
CairoContext


Retrives the current antialias mode

CairoContext::fontExtents
CairoContext::getCurrentPoint
CairoContext
PHP Manual

CairoContext::getAntialias

cairo_get_antialias

(PECL cairo >= 0.1.0)

CairoContext::getAntialias -- cairo_get_antialias — Retrives the current antialias mode

Descrição

Object oriented style (method):

public int CairoContext::getAntialias ( void )

Procedural style:

int cairo_get_antialias ( CairoContext $context )

Returns the current CairoAntialias mode, as set by CairoContext::setAntialias().

Parâmetros

context

A valid CairoContext object created with CairoContext::__construct() or cairo_create()

Valor Retornado

The current CairoAntialias mode.

Exemplos

Exemplo #1 Object oriented style

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);
$context = new CairoContext($surface);

$context->setAntialias(CairoAntialias::MODE_SUBPIXEL);

var_dump($context->getAntialias());

?>

O exemplo acima irá imprimir algo similar a:

int(3)

Exemplo #2 Procedural style

<?php

$sur = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 50, 50);
$con = cairo_create($sur);

cairo_set_antialias($con, CAIRO_ANTIALIAS_SUBPIXEL);

var_dump(cairo_get_antialias($con));

?>

O exemplo acima irá imprimir algo similar a:

int(3)

Veja Também

  • CairoContext::setAntialias() - The setAntialias purpose
  • CairoAntialias

CairoContext::fontExtents
CairoContext::getCurrentPoint
CairoContext


The getCurrentPoint purpose

CairoContext::getAntialias
CairoContext::getDash
CairoContext
PHP Manual

CairoContext::getCurrentPoint

cairo_get_current_point

(PECL cairo >= 0.1.0)

CairoContext::getCurrentPoint -- cairo_get_current_point — The getCurrentPoint purpose

Descrição

Estilo orientado a objetos

public array CairoContext::getCurrentPoint ( void )

Estilo de procedimentos

array cairo_get_current_point ( CairoContext $context )

Gets the current point of the current path, which is conceptually the final point reached by the path so far.

The current point is returned in the user-space coordinate system. If there is no defined current point or if cr is in an error status, x and y will both be set to 0.0. It is possible to check this in advance with CairoContext::hasCurrentPoint().

Most path construction functions alter the current point. See the following for details on how they affect the current point:  CairoContext::newPath(),
 CairoContext::newSubPath(),  CairoContext::appendPath(),  CairoContext::closePath(),  CairoContext::moveTo(),
 CairoContext::lineTo(),  CairoContext::curveTo(),  CairoContext::relMoveTo(),
 CairoContext::relLineTo(),  CairoContext::relCurveTo(),
 CairoContext::arc(),  CairoContext::arcNegative(),  CairoContext::rectangle(),
 CairoContext::textPath(),  CairoContext::glyphPath().

Some functions use and alter the current point but do not otherwise change current path: CairoContext::showText().

Some functions unset the current path and as a result, current point: CairoContext::fill(), CairoContext::stroke().

Parâmetros

context

A valid CairoContext object.

Valor Retornado

An array containing the x (index 0) and y (index 1) coordinates of the current point.

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->moveTo(10, 10);

var_dump($c->getCurrentPoint());

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  float(10)
  [1]=>
  float(10)
}

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_move_to($c, 10, 10);

var_dump(cairo_get_current_point($c));

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  float(10)
  [1]=>
  float(10)
}

Veja Também

  • CairoContext::moveTo() - The moveTo purpose
  • CairoContext::hasCurrentPoint() - The hasCurrentPoint purpose

CairoContext::getAntialias
CairoContext::getDash
CairoContext


The getDash purpose

CairoContext::getCurrentPoint
CairoContext::getDashCount
CairoContext
PHP Manual

CairoContext::getDash

cairo_get_dash

(PECL cairo >= 0.1.0)

CairoContext::getDash -- cairo_get_dash — The getDash purpose

Descrição

Object oriented style (method):

public array CairoContext::getDash ( void )

Procedural style:

array cairo_get_dash ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getCurrentPoint
CairoContext::getDashCount
CairoContext


The getDashCount purpose

CairoContext::getDash
CairoContext::getFillRule
CairoContext
PHP Manual

CairoContext::getDashCount

cairo_get_dash_count

(PECL cairo >= 0.1.0)

CairoContext::getDashCount -- cairo_get_dash_count — The getDashCount purpose

Descrição

Object oriented style (method):

public int CairoContext::getDashCount ( void )

Procedural style:

int cairo_get_dash_count ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getDash
CairoContext::getFillRule
CairoContext


The getFillRule purpose

CairoContext::getDashCount
CairoContext::getFontFace
CairoContext
PHP Manual

CairoContext::getFillRule

cairo_get_fill_rule

(PECL cairo >= 0.1.0)

CairoContext::getFillRule -- cairo_get_fill_rule — The getFillRule purpose

Descrição

Object oriented style (method):

public int CairoContext::getFillRule ( void )

Procedural style:

int cairo_get_fill_rule ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getDashCount
CairoContext::getFontFace
CairoContext


The getFontFace purpose

CairoContext::getFillRule
CairoContext::getFontMatrix
CairoContext
PHP Manual

CairoContext::getFontFace

cairo_get_font_face

(PECL cairo >= 0.1.0)

CairoContext::getFontFace -- cairo_get_font_face — The getFontFace purpose

Descrição

Object oriented style (method):

public void CairoContext::getFontFace ( void )

Procedural style:

void cairo_get_font_face ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getFillRule
CairoContext::getFontMatrix
CairoContext


The getFontMatrix purpose

CairoContext::getFontFace
CairoContext::getFontOptions
CairoContext
PHP Manual

CairoContext::getFontMatrix

cairo_get_font_matrix

(PECL cairo >= 0.1.0)

CairoContext::getFontMatrix -- cairo_get_font_matrix — The getFontMatrix purpose

Descrição

Object oriented style (method):

public void CairoContext::getFontMatrix ( void )

Procedural style:

void cairo_get_font_matrix ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getFontFace
CairoContext::getFontOptions
CairoContext


The getFontOptions purpose

CairoContext::getFontMatrix
CairoContext::getGroupTarget
CairoContext
PHP Manual

CairoContext::getFontOptions

cairo_get_font_options

(PECL cairo >= 0.1.0)

CairoContext::getFontOptions -- cairo_get_font_options — The getFontOptions purpose

Descrição

Object oriented style (method):

public void CairoContext::getFontOptions ( void )

Procedural style:

void cairo_get_font_options ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getFontMatrix
CairoContext::getGroupTarget
CairoContext


The getGroupTarget purpose

CairoContext::getFontOptions
CairoContext::getLineCap
CairoContext
PHP Manual

CairoContext::getGroupTarget

cairo_get_group_target

(PECL cairo >= 0.1.0)

CairoContext::getGroupTarget -- cairo_get_group_target — The getGroupTarget purpose

Descrição

Object oriented style (method):

public void CairoContext::getGroupTarget ( void )

Procedural style:

void cairo_get_group_target ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getFontOptions
CairoContext::getLineCap
CairoContext


The getLineCap purpose

CairoContext::getGroupTarget
CairoContext::getLineJoin
CairoContext
PHP Manual

CairoContext::getLineCap

cairo_get_line_cap

(PECL cairo >= 0.1.0)

CairoContext::getLineCap -- cairo_get_line_cap — The getLineCap purpose

Descrição

Object oriented style (method):

public int CairoContext::getLineCap ( void )

Procedural style:

int cairo_get_line_cap ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getGroupTarget
CairoContext::getLineJoin
CairoContext


The getLineJoin purpose

CairoContext::getLineCap
CairoContext::getLineWidth
CairoContext
PHP Manual

CairoContext::getLineJoin

cairo_get_line_join

(PECL cairo >= 0.1.0)

CairoContext::getLineJoin -- cairo_get_line_join — The getLineJoin purpose

Descrição

Object oriented style (method):

public int CairoContext::getLineJoin ( void )

Procedural style:

int cairo_get_line_join ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getLineCap
CairoContext::getLineWidth
CairoContext


The getLineWidth purpose

CairoContext::getLineJoin
CairoContext::getMatrix
CairoContext
PHP Manual

CairoContext::getLineWidth

cairo_get_line_width

(PECL cairo >= 0.1.0)

CairoContext::getLineWidth -- cairo_get_line_width — The getLineWidth purpose

Descrição

Object oriented style (method):

public float CairoContext::getLineWidth ( void )

Procedural style:

float cairo_get_line_width ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getLineJoin
CairoContext::getMatrix
CairoContext


The getMatrix purpose

CairoContext::getLineWidth
CairoContext::getMiterLimit
CairoContext
PHP Manual

CairoContext::getMatrix

cairo_get_matrix

(PECL cairo >= 0.1.0)

CairoContext::getMatrix -- cairo_get_matrix — The getMatrix purpose

Descrição

Object oriented style (method):

public void CairoContext::getMatrix ( void )

Procedural style:

void cairo_get_matrix ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getLineWidth
CairoContext::getMiterLimit
CairoContext


The getMiterLimit purpose

CairoContext::getMatrix
CairoContext::getOperator
CairoContext
PHP Manual

CairoContext::getMiterLimit

cairo_get_miter_limit

(PECL cairo >= 0.1.0)

CairoContext::getMiterLimit -- cairo_get_miter_limit — The getMiterLimit purpose

Descrição

Object oriented style (method):

public float CairoContext::getMiterLimit ( void )

Procedural style:

float cairo_get_miter_limit ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getMatrix
CairoContext::getOperator
CairoContext


The getOperator purpose

CairoContext::getMiterLimit
CairoContext::getScaledFont
CairoContext
PHP Manual

CairoContext::getOperator

cairo_get_operator

(PECL cairo >= 0.1.0)

CairoContext::getOperator -- cairo_get_operator — The getOperator purpose

Descrição

Object oriented style (method):

public int CairoContext::getOperator ( void )

Procedural style:

int cairo_get_operator ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getMiterLimit
CairoContext::getScaledFont
CairoContext


The getScaledFont purpose

CairoContext::getOperator
CairoContext::getSource
CairoContext
PHP Manual

CairoContext::getScaledFont

cairo_get_scaled_font

(PECL cairo >= 0.1.0)

CairoContext::getScaledFont -- cairo_get_scaled_font — The getScaledFont purpose

Descrição

Object oriented style (method):

public void CairoContext::getScaledFont ( void )

Procedural style:

void cairo_get_scaled_font ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getOperator
CairoContext::getSource
CairoContext


The getSource purpose

CairoContext::getScaledFont
CairoContext::getTarget
CairoContext
PHP Manual

CairoContext::getSource

cairo_get_source

(PECL cairo >= 0.1.0)

CairoContext::getSource -- cairo_get_source — The getSource purpose

Descrição

Object oriented style (method):

public void CairoContext::getSource ( void )

Procedural style:

void cairo_get_source ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getScaledFont
CairoContext::getTarget
CairoContext


The getTarget purpose

CairoContext::getSource
CairoContext::getTolerance
CairoContext
PHP Manual

CairoContext::getTarget

cairo_get_target

(PECL cairo >= 0.1.0)

CairoContext::getTarget -- cairo_get_target — The getTarget purpose

Descrição

Object oriented style (method):

public void CairoContext::getTarget ( void )

Procedural style:

void cairo_get_target ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getSource
CairoContext::getTolerance
CairoContext


The getTolerance purpose

CairoContext::getTarget
CairoContext::glyphPath
CairoContext
PHP Manual

CairoContext::getTolerance

cairo_get_tolerance

(PECL cairo >= 0.1.0)

CairoContext::getTolerance -- cairo_get_tolerance — The getTolerance purpose

Descrição

Object oriented style (method):

public float CairoContext::getTolerance ( void )

Procedural style:

float cairo_get_tolerance ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::getTarget
CairoContext::glyphPath
CairoContext


The glyphPath purpose

CairoContext::getTolerance
CairoContext::hasCurrentPoint
CairoContext
PHP Manual

CairoContext::glyphPath

cairo_glyph_path

(PECL cairo >= 0.1.0)

CairoContext::glyphPath -- cairo_glyph_path — The glyphPath purpose

Descrição

Estilo orientado a objetos

public void CairoContext::glyphPath ( array $glyphs )

Estilo de procedimentos

void cairo_glyph_path ( CairoContext $context , array $glyphs )

Adds closed paths for the glyphs to the current path. The generated path if filled, achieves an effect similar to that of CairoContext::showGlyphs().

Parâmetros

context

A CairoContext object

glyphs

Array of glyphs

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

CairoContext::getTolerance
CairoContext::hasCurrentPoint
CairoContext


The hasCurrentPoint purpose

CairoContext::glyphPath
CairoContext::identityMatrix
CairoContext
PHP Manual

CairoContext::hasCurrentPoint

cairo_has_current_point

(PECL cairo >= 0.1.0)

CairoContext::hasCurrentPoint -- cairo_has_current_point — The hasCurrentPoint purpose

Descrição

Object oriented style (method):

public bool CairoContext::hasCurrentPoint ( void )

Procedural style:

bool cairo_has_current_point ( CairoContext $context )

Returns whether a current point is defined on the current path. See CairoContext::getCurrentPoint() for details on the current point.

Parâmetros

context

A valid CairoContext object.

Valor Retornado

Whether a current point is defined

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

var_dump($c->hasCurrentPoint());

$c->moveTo(10, 10);

var_dump($c->hasCurrentPoint());

?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

var_dump(cairo_has_current_point($c));

cairo_move_to($c, 10, 10);

var_dump(cairo_has_current_point($c));

?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • CairoContext::getCurrentPoint() - The getCurrentPoint purpose

CairoContext::glyphPath
CairoContext::identityMatrix
CairoContext


The identityMatrix purpose

CairoContext::hasCurrentPoint
CairoContext::inFill
CairoContext
PHP Manual

CairoContext::identityMatrix

cairo_identity_matrix

(PECL cairo >= 0.1.0)

CairoContext::identityMatrix -- cairo_identity_matrix — The identityMatrix purpose

Descrição

Object oriented style (method):

public void CairoContext::identityMatrix ( void )

Procedural style:

void cairo_identity_matrix ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::hasCurrentPoint
CairoContext::inFill
CairoContext


The inFill purpose

CairoContext::identityMatrix
CairoContext::inStroke
CairoContext
PHP Manual

CairoContext::inFill

cairo_in_fill

(PECL cairo >= 0.1.0)

CairoContext::inFill -- cairo_in_fill — The inFill purpose

Descrição

Object oriented style (method):

public bool CairoContext::inFill ( string $x , string $y )

Procedural style:

bool cairo_in_fill ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::identityMatrix
CairoContext::inStroke
CairoContext


The inStroke purpose

CairoContext::inFill
CairoContext::lineTo
CairoContext
PHP Manual

CairoContext::inStroke

cairo_in_stroke

(PECL cairo >= 0.1.0)

CairoContext::inStroke -- cairo_in_stroke — The inStroke purpose

Descrição

Object oriented style (method):

public bool CairoContext::inStroke ( string $x , string $y )

Procedural style:

bool cairo_in_stroke ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::inFill
CairoContext::lineTo
CairoContext


The lineTo purpose

CairoContext::inStroke
CairoContext::mask
CairoContext
PHP Manual

CairoContext::lineTo

cairo_line_to

(PECL cairo >= 0.1.0)

CairoContext::lineTo -- cairo_line_to — The lineTo purpose

Descrição

Object oriented style (method):

public void CairoContext::lineTo ( string $x , string $y )

Procedural style:

void cairo_line_to ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::inStroke
CairoContext::mask
CairoContext


The mask purpose

CairoContext::lineTo
CairoContext::maskSurface
CairoContext
PHP Manual

CairoContext::mask

cairo_mask

(PECL cairo >= 0.1.0)

CairoContext::mask -- cairo_mask — The mask purpose

Descrição

Object oriented style (method):

public void CairoContext::mask ( string $pattern )

Procedural style:

void cairo_mask ( CairoContext $context , CairoPattern $pattern )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

pattern

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::lineTo
CairoContext::maskSurface
CairoContext


The maskSurface purpose

CairoContext::mask
CairoContext::moveTo
CairoContext
PHP Manual

CairoContext::maskSurface

cairo_mask_surface

(PECL cairo >= 0.1.0)

CairoContext::maskSurface -- cairo_mask_surface — The maskSurface purpose

Descrição

Object oriented style (method):

public void CairoContext::maskSurface ( string $surface [, string $x [, string $y ]] )

Procedural style:

void cairo_mask_surface ( CairoContext $context , CairoSurface $surface [, string $x [, string $y ]] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

surface

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::mask
CairoContext::moveTo
CairoContext


The moveTo purpose

CairoContext::maskSurface
CairoContext::newPath
CairoContext
PHP Manual

CairoContext::moveTo

cairo_move_to

(PECL cairo >= 0.1.0)

CairoContext::moveTo -- cairo_move_to — The moveTo purpose

Descrição

Object oriented style (method):

public void CairoContext::moveTo ( string $x , string $y )

Procedural style:

void cairo_move_to ( CairoContext $context , string $x , string $y )

Begin a new sub-path. After this call the current point will be (x, y).

Parâmetros

context

A valid CairoContext object.

x

The x coordinate of the new position.

y

The y coordinate of the new position

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php

$s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
$c = new CairoContext($s);

$c->setSourceRgb(0, 0, 0);
$c->paint();

// Move 10 pixels across, and 10 pixels down
$c->moveTo(10, 10);
$c->lineTo(90, 90);
$c->setLineWidth(2);
$c->setSourceRgb(1, 1, 1);
$c->stroke();

// Move 90 pixels across, and 10 pixels down
$c->moveTo(90, 10);
$c->lineTo(10, 90);
$c->setLineWidth(2);
$c->setSourceRgb(1, 1, 1);
$c->stroke();

$s->writeToPng(dirname(__FILE__) . '/CairoContext_moveTo.png');
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php

$s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
$c = cairo_create($s);

cairo_set_source_rgb($c, 0, 0, 0);
cairo_paint($c);

// Move 10 pixels across, and 10 pixels down
cairo_move_to($c, 10, 10);
cairo_line_to($c, 90, 90);
cairo_set_line_width($c, 2);
cairo_set_source_rgb($c, 1, 1, 1);
cairo_stroke($c);

// Move 90 pixels across, and 10 pixels down
cairo_move_to($c, 90, 10);
cairo_line_to($c, 10, 90);
cairo_set_line_width($c, 2);
cairo_set_source_rgb($c, 1, 1, 1);
cairo_stroke($c);

cairo_surface_write_to_png($s, dirname(__FILE__) . '/cairo_move_to.png');
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::maskSurface
CairoContext::newPath
CairoContext


The newPath purpose

CairoContext::moveTo
CairoContext::newSubPath
CairoContext
PHP Manual

CairoContext::newPath

cairo_new_path

(PECL cairo >= 0.1.0)

CairoContext::newPath -- cairo_new_path — The newPath purpose

Descrição

Object oriented style (method):

public void CairoContext::newPath ( void )

Procedural style:

void cairo_new_path ( CairoContext $context )

Clears the current path. After this call there will be no path and no current point.

Parâmetros

context

A valid CairoContext object.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Object oriented style

<?php
// [...]
CairoContext::newPath();
?>

Exemplo #2 Procedural style

<?php
// [...]
cairo_new_path($context);
?>

Veja Também

  • CairoContext::appendPath() - Appends a path to current path
  • CairoContext::closePath() - Closes the current path

CairoContext::moveTo
CairoContext::newSubPath
CairoContext


The newSubPath purpose

CairoContext::newPath
CairoContext::paint
CairoContext
PHP Manual

CairoContext::newSubPath

cairo_new_sub_path

(PECL cairo >= 0.1.0)

CairoContext::newSubPath -- cairo_new_sub_path — The newSubPath purpose

Descrição

Object oriented style (method):

public void CairoContext::newSubPath ( void )

Procedural style:

void cairo_new_sub_path ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::newPath
CairoContext::paint
CairoContext


The paint purpose

CairoContext::newSubPath
CairoContext::paintWithAlpha
CairoContext
PHP Manual

CairoContext::paint

cairo_paint

(PECL cairo >= 0.1.0)

CairoContext::paint -- cairo_paint — The paint purpose

Descrição

Object oriented style (method):

public void CairoContext::paint ( void )

Procedural style:

void cairo_paint ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::newSubPath
CairoContext::paintWithAlpha
CairoContext


The paintWithAlpha purpose

CairoContext::paint
CairoContext::pathExtents
CairoContext
PHP Manual

CairoContext::paintWithAlpha

cairo_paint_with_alpha

(PECL cairo >= 0.1.0)

CairoContext::paintWithAlpha -- cairo_paint_with_alpha — The paintWithAlpha purpose

Descrição

Object oriented style (method):

public void CairoContext::paintWithAlpha ( string $alpha )

Procedural style:

void cairo_paint_with_alpha ( CairoContext $context , string $alpha )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

alpha

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::paint
CairoContext::pathExtents
CairoContext


The pathExtents purpose

CairoContext::paintWithAlpha
CairoContext::popGroup
CairoContext
PHP Manual

CairoContext::pathExtents

cairo_path_extents

(PECL cairo >= 0.1.0)

CairoContext::pathExtents -- cairo_path_extents — The pathExtents purpose

Descrição

Object oriented style (method):

public array CairoContext::pathExtents ( void )

Procedural style:

array cairo_path_extents ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::paintWithAlpha
CairoContext::popGroup
CairoContext


The popGroup purpose

CairoContext::pathExtents
CairoContext::popGroupToSource
CairoContext
PHP Manual

CairoContext::popGroup

cairo_pop_group

(PECL cairo >= 0.1.0)

CairoContext::popGroup -- cairo_pop_group — The popGroup purpose

Descrição

Object oriented style (method):

public void CairoContext::popGroup ( void )

Procedural style:

void cairo_pop_group ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::pathExtents
CairoContext::popGroupToSource
CairoContext


The popGroupToSource purpose

CairoContext::popGroup
CairoContext::pushGroup
CairoContext
PHP Manual

CairoContext::popGroupToSource

cairo_pop_group_to_source

(PECL cairo >= 0.1.0)

CairoContext::popGroupToSource -- cairo_pop_group_to_source — The popGroupToSource purpose

Descrição

Object oriented style (method):

public void CairoContext::popGroupToSource ( void )

Procedural style:

void cairo_pop_group_to_source ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::popGroup
CairoContext::pushGroup
CairoContext


The pushGroup purpose

CairoContext::popGroupToSource
CairoContext::pushGroupWithContent
CairoContext
PHP Manual

CairoContext::pushGroup

cairo_push_group

(PECL cairo >= 0.1.0)

CairoContext::pushGroup -- cairo_push_group — The pushGroup purpose

Descrição

Object oriented style (method):

public void CairoContext::pushGroup ( void )

Procedural style:

void cairo_push_group ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::popGroupToSource
CairoContext::pushGroupWithContent
CairoContext


The pushGroupWithContent purpose

CairoContext::pushGroup
CairoContext::rectangle
CairoContext
PHP Manual

CairoContext::pushGroupWithContent

cairo_push_group_with_content

(PECL cairo >= 0.1.0)

CairoContext::pushGroupWithContent -- cairo_push_group_with_content — The pushGroupWithContent purpose

Descrição

Object oriented style (method):

public void CairoContext::pushGroupWithContent ( string $content )

Procedural style:

void cairo_push_group_with_content ( CairoContext $context , string $content )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

content

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::pushGroup
CairoContext::rectangle
CairoContext


The rectangle purpose

CairoContext::pushGroupWithContent
CairoContext::relCurveTo
CairoContext
PHP Manual

CairoContext::rectangle

cairo_rectangle

(PECL cairo >= 0.1.0)

CairoContext::rectangle -- cairo_rectangle — The rectangle purpose

Descrição

Object oriented style (method):

public void CairoContext::rectangle ( string $x , string $y , string $width , string $height )

Procedural style:

void cairo_rectangle ( CairoContext $context , string $x , string $y , string $width , string $height )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::pushGroupWithContent
CairoContext::relCurveTo
CairoContext


The relCurveTo purpose

CairoContext::rectangle
CairoContext::relLineTo
CairoContext
PHP Manual

CairoContext::relCurveTo

cairo_rel_curve_to

(PECL cairo >= 0.1.0)

CairoContext::relCurveTo -- cairo_rel_curve_to — The relCurveTo purpose

Descrição

Object oriented style (method):

public void CairoContext::relCurveTo ( string $x1 , string $y1 , string $x2 , string $y2 , string $x3 , string $y3 )

Procedural style:

void cairo_rel_curve_to ( CairoContext $context , string $x1 , string $y1 , string $x2 , string $y2 , string $x3 , string $y3 )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x1

Description...

y1

Description...

x2

Description...

y2

Description...

x3

Description...

y3

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::rectangle
CairoContext::relLineTo
CairoContext


The relLineTo purpose

CairoContext::relCurveTo
CairoContext::relMoveTo
CairoContext
PHP Manual

CairoContext::relLineTo

cairo_rel_line_to

(PECL cairo >= 0.1.0)

CairoContext::relLineTo -- cairo_rel_line_to — The relLineTo purpose

Descrição

Object oriented style (method):

public void CairoContext::relLineTo ( string $x , string $y )

Procedural style:

void cairo_rel_line_to ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::relCurveTo
CairoContext::relMoveTo
CairoContext


The relMoveTo purpose

CairoContext::relLineTo
CairoContext::resetClip
CairoContext
PHP Manual

CairoContext::relMoveTo

cairo_rel_move_to

(PECL cairo >= 0.1.0)

CairoContext::relMoveTo -- cairo_rel_move_to — The relMoveTo purpose

Descrição

Object oriented style (method):

public void CairoContext::relMoveTo ( string $x , string $y )

Procedural style:

void cairo_rel_move_to ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::relLineTo
CairoContext::resetClip
CairoContext


The resetClip purpose

CairoContext::relMoveTo
CairoContext::restore
CairoContext
PHP Manual

CairoContext::resetClip

cairo_reset_clip

(PECL cairo >= 0.1.0)

CairoContext::resetClip -- cairo_reset_clip — The resetClip purpose

Descrição

Object oriented style (method):

public void CairoContext::resetClip ( void )

Procedural style:

void cairo_reset_clip ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::relMoveTo
CairoContext::restore
CairoContext


The restore purpose

CairoContext::resetClip
CairoContext::rotate
CairoContext
PHP Manual

CairoContext::restore

cairo_restore

(PECL cairo >= 0.1.0)

CairoContext::restore -- cairo_restore — The restore purpose

Descrição

Object oriented style (method):

public void CairoContext::restore ( void )

Procedural style:

void cairo_restore ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::resetClip
CairoContext::rotate
CairoContext


The rotate purpose

CairoContext::restore
CairoContext::save
CairoContext
PHP Manual

CairoContext::rotate

cairo_rotate

(PECL cairo >= 0.1.0)

CairoContext::rotate -- cairo_rotate — The rotate purpose

Descrição

Object oriented style (method):

public void CairoContext::rotate ( string $angle )

Procedural style:

void cairo_rotate ( CairoContext $context , string $angle )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

angle

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::restore
CairoContext::save
CairoContext


The save purpose

CairoContext::rotate
CairoContext::scale
CairoContext
PHP Manual

CairoContext::save

cairo_save

(PECL cairo >= 0.1.0)

CairoContext::save -- cairo_save — The save purpose

Descrição

Object oriented style (method):

public void CairoContext::save ( void )

Procedural style:

void cairo_save ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::rotate
CairoContext::scale
CairoContext


The scale purpose

CairoContext::save
CairoContext::selectFontFace
CairoContext
PHP Manual

CairoContext::scale

cairo_scale

(PECL cairo >= 0.1.0)

CairoContext::scale -- cairo_scale — The scale purpose

Descrição

Object oriented style (method):

public void CairoContext::scale ( string $x , string $y )

Procedural style:

void cairo_scale ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::save
CairoContext::selectFontFace
CairoContext


The selectFontFace purpose

CairoContext::scale
CairoContext::setAntialias
CairoContext
PHP Manual

CairoContext::selectFontFace

cairo_select_font_face

(PECL cairo >= 0.1.0)

CairoContext::selectFontFace -- cairo_select_font_face — The selectFontFace purpose

Descrição

Object oriented style (method):

public void CairoContext::selectFontFace ( string $family [, string $slant [, string $weight ]] )

Procedural style:

void cairo_select_font_face ( CairoContext $context , string $family [, string $slant [, string $weight ]] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

family

Description...

slant

Description...

weight

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::scale
CairoContext::setAntialias
CairoContext


The setAntialias purpose

CairoContext::selectFontFace
CairoContext::setDash
CairoContext
PHP Manual

CairoContext::setAntialias

cairo_set_antialias

(PECL cairo >= 0.1.0)

CairoContext::setAntialias -- cairo_set_antialias — The setAntialias purpose

Descrição

Object oriented style (method):

public void CairoContext::setAntialias ([ string $antialias ] )

Procedural style:

void cairo_set_antialias ( CairoContext $context [, string $antialias ] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

antialias

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::selectFontFace
CairoContext::setDash
CairoContext


The setDash purpose

CairoContext::setAntialias
CairoContext::setFillRule
CairoContext
PHP Manual

CairoContext::setDash

cairo_set_dash

(PECL cairo >= 0.1.0)

CairoContext::setDash -- cairo_set_dash — The setDash purpose

Descrição

Object oriented style (method):

public void CairoContext::setDash ( string $dashes [, string $offset ] )

Procedural style:

void cairo_set_dash ( CairoContext $context , array $dashes [, string $offset ] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

dashes

Description...

offset

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setAntialias
CairoContext::setFillRule
CairoContext


The setFillRule purpose

CairoContext::setDash
CairoContext::setFontFace
CairoContext
PHP Manual

CairoContext::setFillRule

cairo_set_fill_rule

(PECL cairo >= 0.1.0)

CairoContext::setFillRule -- cairo_set_fill_rule — The setFillRule purpose

Descrição

Object oriented style (method):

public void CairoContext::setFillRule ( string $setting )

Procedural style:

void cairo_set_fill_rule ( CairoContext $context , string $setting )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

setting

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setDash
CairoContext::setFontFace
CairoContext


The setFontFace purpose

CairoContext::setFillRule
CairoContext::setFontMatrix
CairoContext
PHP Manual

CairoContext::setFontFace

cairo_set_font_face

(PECL cairo >= 0.1.0)

CairoContext::setFontFace -- cairo_set_font_face — The setFontFace purpose

Descrição

Object oriented style (method):

public void CairoContext::setFontFace ( CairoFontFace $fontface )

Procedural style:

void cairo_set_font_face ( CairoContext $context , CairoFontFace $fontface )

Sets the font-face for a given context.

Parâmetros

context

A CairoContext object to change the font-face for.

fontface

A CairoFontFace object

Valor Retornado

No value is returned

Exemplos

Exemplo #1 Object oriented style

<?php
// New surface with white background
$s = new CairoImageSurface(CairoFormat::ARGB32, 300, 100);
$c = new CairoContext($s);
$c->setSourceRgb(1, 1, 1);
$c->paint();

// Draw some text
$c->setSourceRgb(0, 0, 0);
$c->moveTo(10, 60);
// Create a new font face
$f = new CairoToyFontFace("sans-serif", CairoFontSlant::NORMAL, CairoFontWeight::NORMAL);
$c->setFontFace($f);
$c->setFontSize(30);
$c->showText('Hello, World!');
$s->writeToPng(dirname(__FILE__) . '/setFontFace.png');
?>

Exemplo #2 Procedural style

<?php
/* ... */
?>

Veja Também

  • CairoContext::setFontSize() - The setFontSize purpose
  • CairoContext::showText() - The showText purpose

CairoContext::setFillRule
CairoContext::setFontMatrix
CairoContext


The setFontMatrix purpose

CairoContext::setFontFace
CairoContext::setFontOptions
CairoContext
PHP Manual

CairoContext::setFontMatrix

cairo_set_font_matrix

(PECL cairo >= 0.1.0)

CairoContext::setFontMatrix -- cairo_set_font_matrix — The setFontMatrix purpose

Descrição

Object oriented style (method):

public void CairoContext::setFontMatrix ( string $matrix )

Procedural style:

void cairo_set_font_matrix ( CairoContext $context , CairoMatrix $matrix )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

matrix

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setFontFace
CairoContext::setFontOptions
CairoContext


The setFontOptions purpose

CairoContext::setFontMatrix
CairoContext::setFontSize
CairoContext
PHP Manual

CairoContext::setFontOptions

cairo_set_font_options

(PECL cairo >= 0.1.0)

CairoContext::setFontOptions -- cairo_set_font_options — The setFontOptions purpose

Descrição

Object oriented style (method):

public void CairoContext::setFontOptions ( string $fontoptions )

Procedural style:

void cairo_set_font_options ( CairoContext $context , CairoFontOptions $fontoptions )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

fontoptions

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setFontMatrix
CairoContext::setFontSize
CairoContext


The setFontSize purpose

CairoContext::setFontOptions
CairoContext::setLineCap
CairoContext
PHP Manual

CairoContext::setFontSize

cairo_set_font_size

(PECL cairo >= 0.1.0)

CairoContext::setFontSize -- cairo_set_font_size — The setFontSize purpose

Descrição

Object oriented style (method):

public void CairoContext::setFontSize ( string $size )

Procedural style:

void cairo_set_font_size ( CairoContext $context , string $size )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

size

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setFontOptions
CairoContext::setLineCap
CairoContext


The setLineCap purpose

CairoContext::setFontSize
CairoContext::setLineJoin
CairoContext
PHP Manual

CairoContext::setLineCap

cairo_set_line_cap

(PECL cairo >= 0.1.0)

CairoContext::setLineCap -- cairo_set_line_cap — The setLineCap purpose

Descrição

Object oriented style (method):

public void CairoContext::setLineCap ( string $setting )

Procedural style:

void cairo_set_line_cap ( CairoContext $context , string $setting )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

setting

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setFontSize
CairoContext::setLineJoin
CairoContext


The setLineJoin purpose

CairoContext::setLineCap
CairoContext::setLineWidth
CairoContext
PHP Manual

CairoContext::setLineJoin

cairo_set_line_join

(PECL cairo >= 0.1.0)

CairoContext::setLineJoin -- cairo_set_line_join — The setLineJoin purpose

Descrição

Object oriented style (method):

public void CairoContext::setLineJoin ( string $setting )

Procedural style:

void cairo_set_line_join ( CairoContext $context , string $setting )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

setting

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setLineCap
CairoContext::setLineWidth
CairoContext


The setLineWidth purpose

CairoContext::setLineJoin
CairoContext::setMatrix
CairoContext
PHP Manual

CairoContext::setLineWidth

cairo_set_line_width

(PECL cairo >= 0.1.0)

CairoContext::setLineWidth -- cairo_set_line_width — The setLineWidth purpose

Descrição

Object oriented style (method):

public void CairoContext::setLineWidth ( string $width )

Procedural style:

void cairo_set_line_width ( CairoContext $context , string $width )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

width

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setLineJoin
CairoContext::setMatrix
CairoContext


The setMatrix purpose

CairoContext::setLineWidth
CairoContext::setMiterLimit
CairoContext
PHP Manual

CairoContext::setMatrix

cairo_set_matrix

(PECL cairo >= 0.1.0)

CairoContext::setMatrix -- cairo_set_matrix — The setMatrix purpose

Descrição

Object oriented style (method):

public void CairoContext::setMatrix ( string $matrix )

Procedural style:

void cairo_set_matrix ( CairoContext $context , CairoMatrix $matrix )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

matrix

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setLineWidth
CairoContext::setMiterLimit
CairoContext


The setMiterLimit purpose

CairoContext::setMatrix
CairoContext::setOperator
CairoContext
PHP Manual

CairoContext::setMiterLimit

cairo_set_miter_limit

(PECL cairo >= 0.1.0)

CairoContext::setMiterLimit -- cairo_set_miter_limit — The setMiterLimit purpose

Descrição

Object oriented style (method):

public void CairoContext::setMiterLimit ( string $limit )

Procedural style:

void cairo_set_miter_limit ( CairoContext $context , string $limit )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

limit

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setMatrix
CairoContext::setOperator
CairoContext


The setOperator purpose

CairoContext::setMiterLimit
CairoContext::setScaledFont
CairoContext
PHP Manual

CairoContext::setOperator

cairo_set_operator

(PECL cairo >= 0.1.0)

CairoContext::setOperator -- cairo_set_operator — The setOperator purpose

Descrição

Object oriented style (method):

public void CairoContext::setOperator ( string $setting )

Procedural style:

void cairo_set_operator ( CairoContext $context , string $setting )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

setting

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setMiterLimit
CairoContext::setScaledFont
CairoContext


The setScaledFont purpose

CairoContext::setOperator
CairoContext::setSource
CairoContext
PHP Manual

CairoContext::setScaledFont

cairo_set_scaled_font

(PECL cairo >= 0.1.0)

CairoContext::setScaledFont -- cairo_set_scaled_font — The setScaledFont purpose

Descrição

Object oriented style (method):

public void CairoContext::setScaledFont ( string $scaledfont )

Procedural style:

void cairo_set_scaled_font ( CairoContext $context , CairoScaledFont $scaledfont )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

scaledfont

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setOperator
CairoContext::setSource
CairoContext


The setSource purpose

CairoContext::setScaledFont
CairoContext::setSourceRGB
CairoContext
PHP Manual

CairoContext::setSource

cairo_set_source

(PECL cairo >= 0.1.0)

CairoContext::setSource -- cairo_set_source — The setSource purpose

Descrição

Object oriented style (method):

public void CairoContext::setSource ( string $pattern )

Procedural style:

void cairo_set_source ( CairoContext $context , CairoPattern $pattern )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

pattern

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setScaledFont
CairoContext::setSourceRGB
CairoContext


The setSourceRGB purpose

CairoContext::setSource
CairoContext::setSourceRGBA
CairoContext
PHP Manual

CairoContext::setSourceRGB

cairo_set_source

(PECL cairo >= 0.1.0)

CairoContext::setSourceRGB -- cairo_set_source — The setSourceRGB purpose

Descrição

Object oriented style (method):

public void CairoContext::setSourceRGB ( string $red , string $green , string $blue )

Procedural style:

void cairo_set_source ( CairoContext $context , CairoPattern $pattern )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

pattern

Description...

red

Description...

green

Description...

blue

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setSource
CairoContext::setSourceRGBA
CairoContext


The setSourceRGBA purpose

CairoContext::setSourceRGB
CairoContext::setSourceSurface
CairoContext
PHP Manual

CairoContext::setSourceRGBA

cairo_set_source

(PECL cairo >= 0.1.0)

CairoContext::setSourceRGBA -- cairo_set_source — The setSourceRGBA purpose

Descrição

Object oriented style (method):

public void CairoContext::setSourceRGBA ( string $red , string $green , string $blue , string $alpha )

Procedural style:

void cairo_set_source ( CairoContext $context , CairoPattern $pattern )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

pattern

Description...

red

Description...

green

Description...

blue

Description...

alpha

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setSourceRGB
CairoContext::setSourceSurface
CairoContext


The setSourceSurface purpose

CairoContext::setSourceRGBA
CairoContext::setTolerance
CairoContext
PHP Manual

CairoContext::setSourceSurface

cairo_set_source_surface

(PECL cairo >= 0.1.0)

CairoContext::setSourceSurface -- cairo_set_source_surface — The setSourceSurface purpose

Descrição

Object oriented style (method):

public void CairoContext::setSourceSurface ( string $surface [, string $x [, string $y ]] )

Procedural style:

void cairo_set_source_surface ( CairoContext $context , CairoSurface $surface [, string $x [, string $y ]] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

surface

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setSourceRGBA
CairoContext::setTolerance
CairoContext


The setTolerance purpose

CairoContext::setSourceSurface
CairoContext::showPage
CairoContext
PHP Manual

CairoContext::setTolerance

cairo_set_tolerance

(PECL cairo >= 0.1.0)

CairoContext::setTolerance -- cairo_set_tolerance — The setTolerance purpose

Descrição

Object oriented style (method):

public void CairoContext::setTolerance ( string $tolerance )

Procedural style:

void cairo_set_tolerance ( CairoContext $context , string $tolerance )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

tolerance

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setSourceSurface
CairoContext::showPage
CairoContext


The showPage purpose

CairoContext::setTolerance
CairoContext::showText
CairoContext
PHP Manual

CairoContext::showPage

cairo_show_page

(PECL cairo >= 0.1.0)

CairoContext::showPage -- cairo_show_page — The showPage purpose

Descrição

Object oriented style (method):

public void CairoContext::showPage ( void )

Procedural style:

void cairo_show_page ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::setTolerance
CairoContext::showText
CairoContext


The showText purpose

CairoContext::showPage
CairoContext::status
CairoContext
PHP Manual

CairoContext::showText

cairo_show_text

(PECL cairo >= 0.1.0)

CairoContext::showText -- cairo_show_text — The showText purpose

Descrição

Object oriented style (method):

public void CairoContext::showText ( string $text )

Procedural style:

void cairo_show_text ( CairoContext $context , string $text )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

text

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::showPage
CairoContext::status
CairoContext


The status purpose

CairoContext::showText
CairoContext::stroke
CairoContext
PHP Manual

CairoContext::status

cairo_status

(PECL cairo >= 0.1.0)

CairoContext::status -- cairo_status — The status purpose

Descrição

Object oriented style (method):

public int CairoContext::status ( void )

Procedural style:

int cairo_status ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::showText
CairoContext::stroke
CairoContext


The stroke purpose

CairoContext::status
CairoContext::strokeExtents
CairoContext
PHP Manual

CairoContext::stroke

cairo_stroke

(PECL cairo >= 0.1.0)

CairoContext::stroke -- cairo_stroke — The stroke purpose

Descrição

Object oriented style (method):

public void CairoContext::stroke ( void )

Procedural style:

void cairo_stroke ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::status
CairoContext::strokeExtents
CairoContext


The strokeExtents purpose

CairoContext::stroke
CairoContext::strokePreserve
CairoContext
PHP Manual

CairoContext::strokeExtents

cairo_stroke_extents

(PECL cairo >= 0.1.0)

CairoContext::strokeExtents -- cairo_stroke_extents — The strokeExtents purpose

Descrição

Object oriented style (method):

public array CairoContext::strokeExtents ( void )

Procedural style:

array cairo_stroke_extents ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::stroke
CairoContext::strokePreserve
CairoContext


The strokePreserve purpose

CairoContext::strokeExtents
CairoContext::textExtents
CairoContext
PHP Manual

CairoContext::strokePreserve

cairo_stroke_preserve

(PECL cairo >= 0.1.0)

CairoContext::strokePreserve -- cairo_stroke_preserve — The strokePreserve purpose

Descrição

Object oriented style (method):

public void CairoContext::strokePreserve ( void )

Procedural style:

void cairo_stroke_preserve ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::strokeExtents
CairoContext::textExtents
CairoContext


The textExtents purpose

CairoContext::strokePreserve
CairoContext::textPath
CairoContext
PHP Manual

CairoContext::textExtents

cairo_text_extents

(PECL cairo >= 0.1.0)

CairoContext::textExtents -- cairo_text_extents — The textExtents purpose

Descrição

Object oriented style (method):

public array CairoContext::textExtents ( string $text )

Procedural style:

array cairo_text_extents ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

text

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::strokePreserve
CairoContext::textPath
CairoContext


The textPath purpose

CairoContext::textExtents
CairoContext::transform
CairoContext
PHP Manual

CairoContext::textPath

cairo_text_path

(PECL cairo >= 0.1.0)

CairoContext::textPath -- cairo_text_path — The textPath purpose

Descrição

Estilo orientado a objetos

public void CairoContext::textPath ( string $string )

Estilo de procedimentos

void cairo_text_path ( CairoContext $context , string $text )

Adds closed paths for text to the current path. The generated path, if filled, achieves an effect similar to that of CairoContext::showText().

Text conversion and positioning is done similar to CairoContext::showText().

Like CairoContext::showText(), after this call the current point is moved to the origin of where the next glyph would be placed in this same progression. That is, the current point will be at the origin of the final glyph offset by its advance values. This allows for chaining multiple calls to CairoContext::showText() without having to set current point in between.

Note: The CairoContext::textPath() function call is part of what the cairo designers call the "toy" text API. It is convenient for short demos and simple programs, but it is not expected to be adequate for serious text-using applications. See CairoContext::glyphPath() for the "real" text path API in cairo.

Parâmetros

context

A CairoContext object

text

Description...

string

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::textExtents
CairoContext::transform
CairoContext


The transform purpose

CairoContext::textPath
CairoContext::translate
CairoContext
PHP Manual

CairoContext::transform

cairo_transform

(PECL cairo >= 0.1.0)

CairoContext::transform -- cairo_transform — The transform purpose

Descrição

Object oriented style (method):

public void CairoContext::transform ( string $matrix )

Procedural style:

void cairo_transform ( CairoContext $context , CairoMatrix $matrix )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

matrix

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::textPath
CairoContext::translate
CairoContext


The translate purpose

CairoContext::transform
CairoContext::userToDevice
CairoContext
PHP Manual

CairoContext::translate

cairo_translate

(PECL cairo >= 0.1.0)

CairoContext::translate -- cairo_translate — The translate purpose

Descrição

Object oriented style (method):

public void CairoContext::translate ( string $x , string $y )

Procedural style:

void cairo_translate ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::transform
CairoContext::userToDevice
CairoContext


The userToDevice purpose

CairoContext::translate
CairoContext::userToDeviceDistance
CairoContext
PHP Manual

CairoContext::userToDevice

cairo_user_to_device

(PECL cairo >= 0.1.0)

CairoContext::userToDevice -- cairo_user_to_device — The userToDevice purpose

Descrição

Object oriented style (method):

public array CairoContext::userToDevice ( string $x , string $y )

Procedural style:

array cairo_user_to_device ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::translate
CairoContext::userToDeviceDistance
CairoContext


The userToDeviceDistance purpose

CairoContext::userToDevice
CairoException
CairoContext
PHP Manual

CairoContext::userToDeviceDistance

cairo_user_to_device_distance

(PECL cairo >= 0.1.0)

CairoContext::userToDeviceDistance -- cairo_user_to_device_distance — The userToDeviceDistance purpose

Descrição

Object oriented style (method):

public array CairoContext::userToDeviceDistance ( string $x , string $y )

Procedural style:

array cairo_user_to_device_distance ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoContext::userToDevice
CairoException
CairoContext


The CairoException class

Introdução

Exception class throwed by Cairo functions and methods

Sinopse da classe

CairoException extends Exception {
/* Properties */
/* Inherited methods */
}

Propriedades

message

Prop description

code

Prop description

file

Prop description

line

Prop description

CairoContext::userToDeviceDistance
CairoStatus
Cairo


The CairoStatus class

Introdução

CairoStatus is used to indicate errors that can occur when using Cairo. In some cases it is returned directly by functions. but when using CairoContext, the last error, if any, is stored in the object and can be retrieved with CairoContext::status() or cairo_status(). New entries may be added in future versions.

Use Cairo::statusToString() or cairo_status_to_string() to get a human-readable representation of an error message.

Sinopse da classe

CairoStatus {
/* Constants */
const integer CairoStatus::SUCCESS = 0 ;
const integer CairoStatus::NO_MEMORY = 1 ;
const integer CairoStatus::INVALID_RESTORE = 2 ;
const integer CairoStatus::INVALID_POP_GROUP = 3 ;
const integer CairoStatus::NO_CURRENT_POINT = 4 ;
const integer CairoStatus::INVALID_MATRIX = 5 ;
const integer CairoStatus::INVALID_STATUS = 6 ;
const integer CairoStatus::NULL_POINTER = 7 ;
const integer CairoStatus::INVALID_STRING = 8 ;
const integer CairoStatus::INVALID_PATH_DATA = 9 ;
const integer CairoStatus::READ_ERROR = 10 ;
const integer CairoStatus::WRITE_ERROR = 11 ;
const integer CairoStatus::SURFACE_FINISHED = 12 ;
const integer CairoStatus::SURFACE_TYPE_MISMATCH = 13 ;
const integer CairoStatus::PATTERN_TYPE_MISMATCH = 14 ;
const integer CairoStatus::INVALID_CONTENT = 15 ;
const integer CairoStatus::INVALID_FORMAT = 16 ;
const integer CairoStatus::INVALID_VISUAL = 17 ;
const integer CairoStatus::FILE_NOT_FOUND = 18 ;
const integer CairoStatus::INVALID_DASH = 19 ;
const integer CairoStatus::INVALID_DSC_COMMENT = 20 ;
const integer CairoStatus::INVALID_INDEX = 21 ;
const integer CairoStatus::CLIP_NOT_REPRESENTABLE = 22 ;
const integer CairoStatus::TEMP_FILE_ERROR = 23 ;
const integer CairoStatus::INVALID_STRIDE = 24 ;
}

Constantes pré-definidas

CairoStatus Node Types

CairoStatus::SUCCESS

No error has occurred

CairoStatus::NO_MEMORY

Out of memory

CairoStatus::INVALID_RESTORE

cairo_restore() called without matching cairo_save()

CairoStatus::INVALID_POP_GROUP

No saved group to pop

CairoStatus::NO_CURRENT_POINT

No current point defined

CairoStatus::INVALID_MATRIX

Invalid matrix (not invertible)

CairoStatus::INVALID_STATUS

Invalid value for an input CairoStatus>

CairoStatus::NULL_POINTER

Null pointer

CairoStatus::INVALID_STRING

Input string not valid UTF-8 string

CairoStatus::INVALID_PATH_DATA

Input path data not valid

CairoStatus::READ_ERROR

Error while reading from input stream

CairoStatus::WRITE_ERROR

Error while writing to output stream

CairoStatus::SURFACE_FINISHED

Target surface has been finished

CairoStatus::SURFACE_TYPE_MISMATCH

The surface type is not appropriate for the operation

CairoStatus::PATTERN_TYPE_MISMATCH

The pattern type is not appropriate for the operation

CairoStatus::INVALID_CONTENT

Invalid value for an input CairoContent

CairoStatus::INVALID_FORMAT

Invalid value for an input CairoFormat

CairoStatus::INVALID_VISUAL

Invalid value for an input Visual

CairoStatus::FILE_NOT_FOUND

File not found

CairoStatus::INVALID_DASH

Invalid value for a dash setting

CairoStatus::INVALID_DSC_COMMENT

Invalid value for a DSC comment

CairoStatus::INVALID_INDEX

Invalid index passed to getter

CairoStatus::CLIP_NOT_REPRESENTABLE

Clip region not representable in desired format

CairoStatus::TEMP_FILE_ERROR

Error creating or writing to a temporary file

CairoStatus::INVALID_STRIDE

Invalid value for CairoStride

CairoException
CairoSurface
Cairo


The CairoSurface class

Introdução

This is the base-class for all other Surface types. CairoSurface is the abstract type representing all different drawing targets that cairo can render to. The actual drawings are performed using a CairoContext.

Sinopse da classe

CairoSurface {
/* Methods */
__construct ( void )
public void copyPage ( void )
public void createSimilar ( CairoSurface $other , int $content , string $width , string $height )
public void finish ( void )
public void flush ( void )
public int getContent ( void )
public array getDeviceOffset ( void )
public void getFontOptions ( void )
public int getType ( void )
public void markDirty ( void )
public void markDirtyRectangle ( string $x , string $y , string $width , string $height )
public void setDeviceOffset ( string $x , string $y )
public void setFallbackResolution ( string $x , string $y )
public void showPage ( void )
public int status ( void )
public void writeToPng ( string $file )
}

Índice

  • CairoSurface::__construct — The __construct purpose
  • CairoSurface::copyPage — The copyPage purpose
  • CairoSurface::createSimilar — The createSimilar purpose
  • CairoSurface::finish — The finish purpose
  • CairoSurface::flush — The flush purpose
  • CairoSurface::getContent — The getContent purpose
  • CairoSurface::getDeviceOffset — The getDeviceOffset purpose
  • CairoSurface::getFontOptions — The getFontOptions purpose
  • CairoSurface::getType — The getType purpose
  • CairoSurface::markDirty — The markDirty purpose
  • CairoSurface::markDirtyRectangle — The markDirtyRectangle purpose
  • CairoSurface::setDeviceOffset — The setDeviceOffset purpose
  • CairoSurface::setFallbackResolution — The setFallbackResolution purpose
  • CairoSurface::showPage — The showPage purpose
  • CairoSurface::status — The status purpose
  • CairoSurface::writeToPng — The writeToPng purpose
CairoStatus
CairoSurface::__construct
Cairo


The __construct purpose

CairoSurface
CairoSurface::copyPage
CairoSurface
PHP Manual

CairoSurface::__construct

(PECL cairo >= 0.1.0)

CairoSurface::__construct — The __construct purpose

Descrição

CairoSurface::__construct ( void )

CairoSurface is an abstract type and, as such, should not be instantiated in your PHP scripts.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

No return value

Notas

Nota:

If you're using a PHP version before 5.3, you must destroy the CairoContext associated with a CairoSurface after you destroy the CairoSurface. Otherwise, you're left with a Circular-reference memory leak.

Veja Também

  • CairoImageSurface::__construct() - Creates a new CairoImageSurface

CairoSurface
CairoSurface::copyPage
CairoSurface


The copyPage purpose

CairoSurface::__construct
CairoSurface::createSimilar
CairoSurface
PHP Manual

CairoSurface::copyPage

cairo_copy_page

(PECL cairo >= 0.1.0)

CairoSurface::copyPage -- cairo_copy_page — The copyPage purpose

Descrição

Object oriented style (method):

public void CairoSurface::copyPage ( void )

Procedural style:

void cairo_copy_page ( CairoContext $context )

Emits the current page for backends that support multiple pages, but doesn't clear it, so that the contents of the current page will be retained for the next page. Use CairoSurface::showPage() if you want to get an empty page after the emission.

Parâmetros

context

A CairoContext object

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::__construct
CairoSurface::createSimilar
CairoSurface


The createSimilar purpose

CairoSurface::copyPage
CairoSurface::finish
CairoSurface
PHP Manual

CairoSurface::createSimilar

(PECL cairo >= 0.1.0)

CairoSurface::createSimilar — The createSimilar purpose

Descrição

public void CairoSurface::createSimilar ( CairoSurface $other , int $content , string $width , string $height )

Create a new surface that is as compatible as possible with an existing surface. For example the new surface will have the same fallback resolution and font options as other. Generally, the new surface will also use the same backend as other, unless that is not possible for some reason. The type of the returned surface may be examined with CairoSurface::getType(). Initially the surface contents are all 0 (transparent if contents have transparency, black otherwise.)

Parâmetros

other

An existing surface used to select the backend of the new surface

content

The content for the new surface. See the CairoContent class for possible values.

width

Width of the new surface, (in device-space units).

height

Height of the new surface, (in device-space units).

Valor Retornado

A new CairoSurface

Exemplos

Exemplo #1 CairoSurface::createSimilar() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoContent()

CairoSurface::copyPage
CairoSurface::finish
CairoSurface


The finish purpose

CairoSurface::createSimilar
CairoSurface::flush
CairoSurface
PHP Manual

CairoSurface::finish

(PECL cairo >= 0.1.0)

CairoSurface::finish — The finish purpose

Descrição

public void CairoSurface::finish ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::finish() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::createSimilar
CairoSurface::flush
CairoSurface


The flush purpose

CairoSurface::finish
CairoSurface::getContent
CairoSurface
PHP Manual

CairoSurface::flush

(PECL cairo >= 0.1.0)

CairoSurface::flush — The flush purpose

Descrição

public void CairoSurface::flush ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::flush() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::finish
CairoSurface::getContent
CairoSurface


The getContent purpose

CairoSurface::flush
CairoSurface::getDeviceOffset
CairoSurface
PHP Manual

CairoSurface::getContent

(PECL cairo >= 0.1.0)

CairoSurface::getContent — The getContent purpose

Descrição

public int CairoSurface::getContent ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::getContent() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::flush
CairoSurface::getDeviceOffset
CairoSurface


The getDeviceOffset purpose

CairoSurface::getContent
CairoSurface::getFontOptions
CairoSurface
PHP Manual

CairoSurface::getDeviceOffset

(PECL cairo >= 0.1.0)

CairoSurface::getDeviceOffset — The getDeviceOffset purpose

Descrição

public array CairoSurface::getDeviceOffset ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::getDeviceOffset() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::getContent
CairoSurface::getFontOptions
CairoSurface


The getFontOptions purpose

CairoSurface::getDeviceOffset
CairoSurface::getType
CairoSurface
PHP Manual

CairoSurface::getFontOptions

cairo_get_font_options

(PECL cairo >= 0.1.0)

CairoSurface::getFontOptions -- cairo_get_font_options — The getFontOptions purpose

Descrição

Object oriented style (method):

public void CairoSurface::getFontOptions ( void )

Procedural style:

void cairo_get_font_options ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::getDeviceOffset
CairoSurface::getType
CairoSurface


The getType purpose

CairoSurface::getFontOptions
CairoSurface::markDirty
CairoSurface
PHP Manual

CairoSurface::getType

(PECL cairo >= 0.1.0)

CairoSurface::getType — The getType purpose

Descrição

public int CairoSurface::getType ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::getType() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::getFontOptions
CairoSurface::markDirty
CairoSurface


The markDirty purpose

CairoSurface::getType
CairoSurface::markDirtyRectangle
CairoSurface
PHP Manual

CairoSurface::markDirty

(PECL cairo >= 0.1.0)

CairoSurface::markDirty — The markDirty purpose

Descrição

public void CairoSurface::markDirty ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::markDirty() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::getType
CairoSurface::markDirtyRectangle
CairoSurface


The markDirtyRectangle purpose

CairoSurface::markDirty
CairoSurface::setDeviceOffset
CairoSurface
PHP Manual

CairoSurface::markDirtyRectangle

(PECL cairo >= 0.1.0)

CairoSurface::markDirtyRectangle — The markDirtyRectangle purpose

Descrição

public void CairoSurface::markDirtyRectangle ( string $x , string $y , string $width , string $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

Description...

y

Description...

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::markDirtyRectangle() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::markDirty
CairoSurface::setDeviceOffset
CairoSurface


The setDeviceOffset purpose

CairoSurface::markDirtyRectangle
CairoSurface::setFallbackResolution
CairoSurface
PHP Manual

CairoSurface::setDeviceOffset

(PECL cairo >= 0.1.0)

CairoSurface::setDeviceOffset — The setDeviceOffset purpose

Descrição

public void CairoSurface::setDeviceOffset ( string $x , string $y )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::setDeviceOffset() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::markDirtyRectangle
CairoSurface::setFallbackResolution
CairoSurface


The setFallbackResolution purpose

CairoSurface::setDeviceOffset
CairoSurface::showPage
CairoSurface
PHP Manual

CairoSurface::setFallbackResolution

(PECL cairo >= 0.1.0)

CairoSurface::setFallbackResolution — The setFallbackResolution purpose

Descrição

public void CairoSurface::setFallbackResolution ( string $x , string $y )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

Description...

y

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::setFallbackResolution() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::setDeviceOffset
CairoSurface::showPage
CairoSurface


The showPage purpose

CairoSurface::setFallbackResolution
CairoSurface::status
CairoSurface
PHP Manual

CairoSurface::showPage

cairo_show_page

(PECL cairo >= 0.1.0)

CairoSurface::showPage -- cairo_show_page — The showPage purpose

Descrição

Object oriented style (method):

public void CairoSurface::showPage ( void )

Procedural style:

void cairo_show_page ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::setFallbackResolution
CairoSurface::status
CairoSurface


The status purpose

CairoSurface::showPage
CairoSurface::writeToPng
CairoSurface
PHP Manual

CairoSurface::status

cairo_status

(PECL cairo >= 0.1.0)

CairoSurface::status -- cairo_status — The status purpose

Descrição

Object oriented style (method):

public int CairoSurface::status ( void )

Procedural style:

int cairo_status ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::showPage
CairoSurface::writeToPng
CairoSurface


The writeToPng purpose

CairoSurface::status
CairoSvgSurface
CairoSurface
PHP Manual

CairoSurface::writeToPng

(PECL cairo >= 0.1.0)

CairoSurface::writeToPng — The writeToPng purpose

Descrição

public void CairoSurface::writeToPng ( string $file )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurface::writeToPng() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurface::status
CairoSvgSurface
CairoSurface


Svg Surface Backend

Introdução

Svg specific surface class, uses the SVG (standard vector graphics) surface backend.

Sinopse da classe

CairoSvgSurface extends CairoSurface {
/* Methods */
__construct ( string $file , float $width , float $height )
public static array getVersions ( void )
public void restrictToVersion ( string $version )
public static string versionToString ( int $version )
/* Inherited methods */
CairoSurface::__construct ( void )
public void CairoSurface::copyPage ( void )
public void CairoSurface::createSimilar ( CairoSurface $other , int $content , string $width , string $height )
public void CairoSurface::finish ( void )
public void CairoSurface::flush ( void )
public int CairoSurface::getContent ( void )
public array CairoSurface::getDeviceOffset ( void )
public void CairoSurface::getFontOptions ( void )
public int CairoSurface::getType ( void )
public void CairoSurface::markDirty ( void )
public void CairoSurface::markDirtyRectangle ( string $x , string $y , string $width , string $height )
public void CairoSurface::setDeviceOffset ( string $x , string $y )
public void CairoSurface::setFallbackResolution ( string $x , string $y )
public void CairoSurface::showPage ( void )
public int CairoSurface::status ( void )
public void CairoSurface::writeToPng ( string $file )
}

Índice

  • CairoSvgSurface::__construct — The __construct purpose
  • CairoSvgSurface::getVersions — Used to retrieve a list of supported SVG versions
  • CairoSvgSurface::restrictToVersion — The restrictToVersion purpose
  • CairoSvgSurface::versionToString — The versionToString purpose
CairoSurface::writeToPng
CairoSvgSurface::__construct
Cairo


The __construct purpose

CairoSvgSurface
CairoSvgSurface::getVersions
CairoSvgSurface
PHP Manual

CairoSvgSurface::__construct

(PECL cairo >= 0.1.0)

CairoSvgSurface::__construct — The __construct purpose

Descrição

CairoSvgSurface::__construct ( string $file , float $width , float $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSvgSurface::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSvgSurface
CairoSvgSurface::getVersions
CairoSvgSurface


Used to retrieve a list of supported SVG versions

CairoSvgSurface::__construct
CairoSvgSurface::restrictToVersion
CairoSvgSurface
PHP Manual

CairoSvgSurface::getVersions

cairo_svg_surface_get_versions

(PECL cairo >= 0.1.0)

CairoSvgSurface::getVersions -- cairo_svg_surface_get_versions — Used to retrieve a list of supported SVG versions

Descrição

Object oriented style (method):

public static array CairoSvgSurface::getVersions ( void )

Procedural style:

array cairo_svg_get_versions ( void )

Returns a numerically indexed array of currently available CairoSvgVersion constants. In order to retreive the string values for each item, use CairoSvgSurface::versionToString().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a numerically indexed array of integer values.

Exemplos

Exemplo #1 CairoSvgSurface::getVersions() example

<?php
/* Grab our list of versions */
$versions = CairoSvgSurface::getVersions();
var_dump($versions);

/* echo the string name of each version */
foreach($versions as $id) {
    echo CairoSvgSurface::versionToString($id), PHP_EOL;
}
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  int(0)
  [1]=>
  int(1)
}
SVG 1.1
SVG 1.2

Exemplo #2 Procedural style

<?php
/* Grab our list of versions */
$versions = cairo_svg_surface_get_versions();
var_dump($versions);

/* echo the string name of each version */
foreach($versions as $id) {
    echo cairo_svg_surface_version_to_string($id), PHP_EOL;
}
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  [0]=>
  int(0)
  [1]=>
  int(1)
}
SVG 1.1
SVG 1.2

Veja Também

  • CairoSvgSurface::versionToString() - The versionToString purpose

CairoSvgSurface::__construct
CairoSvgSurface::restrictToVersion
CairoSvgSurface


The restrictToVersion purpose

CairoSvgSurface::getVersions
CairoSvgSurface::versionToString
CairoSvgSurface
PHP Manual

CairoSvgSurface::restrictToVersion

(PECL cairo >= 0.1.0)

CairoSvgSurface::restrictToVersion — The restrictToVersion purpose

Descrição

public void CairoSvgSurface::restrictToVersion ( string $version )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

version

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSvgSurface::restrictToVersion() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSvgSurface::getVersions
CairoSvgSurface::versionToString
CairoSvgSurface


The versionToString purpose

CairoSvgSurface::restrictToVersion
CairoImageSurface
CairoSvgSurface
PHP Manual

CairoSvgSurface::versionToString

(PECL cairo >= 0.1.0)

CairoSvgSurface::versionToString — The versionToString purpose

Descrição

public static string CairoSvgSurface::versionToString ( int $version )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

version

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSvgSurface::versionToString() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSvgSurface::restrictToVersion
CairoImageSurface
CairoSvgSurface


The CairoImageSurface class

Introdução

CairoImageSurface provide the ability to render to memory buffers either allocated by cairo or by the calling code. The supported image formats are those defined in CairoFormat.

Sinopse da classe

CairoImageSurface extends CairoSurface {
/* Methods */
__construct ( int $format , int $width , int $height )
public static void createForData ( string $data , int $format , int $width , int $height [, int $stride = -1 ] )
public staticCairoImageSurface createFromPng ( string $file )
public string getData ( void )
public int getFormat ( void )
public int getHeight ( void )
public int getStride ( void )
public int getWidth ( void )
/* Inherited methods */
CairoSurface::__construct ( void )
public void CairoSurface::copyPage ( void )
public void CairoSurface::createSimilar ( CairoSurface $other , int $content , string $width , string $height )
public void CairoSurface::finish ( void )
public void CairoSurface::flush ( void )
public int CairoSurface::getContent ( void )
public array CairoSurface::getDeviceOffset ( void )
public void CairoSurface::getFontOptions ( void )
public int CairoSurface::getType ( void )
public void CairoSurface::markDirty ( void )
public void CairoSurface::markDirtyRectangle ( string $x , string $y , string $width , string $height )
public void CairoSurface::setDeviceOffset ( string $x , string $y )
public void CairoSurface::setFallbackResolution ( string $x , string $y )
public void CairoSurface::showPage ( void )
public int CairoSurface::status ( void )
public void CairoSurface::writeToPng ( string $file )
}

Índice

  • CairoImageSurface::__construct — Creates a new CairoImageSurface
  • CairoImageSurface::createForData — The createForData purpose
  • CairoImageSurface::createFromPng — Creates a new CairoImageSurface form a png image file
  • CairoImageSurface::getData — Gets the image data as string
  • CairoImageSurface::getFormat — Get the image format
  • CairoImageSurface::getHeight — Retrieves the height of the CairoImageSurface
  • CairoImageSurface::getStride — The getStride purpose
  • CairoImageSurface::getWidth — Retrieves the width of the CairoImageSurface
CairoSvgSurface::versionToString
CairoImageSurface::__construct
Cairo


Creates a new CairoImageSurface

CairoImageSurface
CairoImageSurface::createForData
CairoImageSurface
PHP Manual

CairoImageSurface::__construct

(PECL cairo >= 0.1.0)

CairoImageSurface::__construct — Creates a new CairoImageSurface

Descrição

CairoImageSurface::__construct ( int $format , int $width , int $height )

Creates a new CairoImageSuface object of type format

Parâmetros

format

Can be any defined in CairoFormat

width

The width of the image surface

height

The height of the image surface

Valor Retornado

A new CairoImageSurface

Exemplos

Exemplo #1 CairoImageSurface::__construct() example

<?php

// Creates a image with ARGB32 format of 50 width and 50 height
$surface = new CairoImageSurface(CairoFormat::ARGB32, 50,50);

?>

Veja Também

  • CairoContext::__construct() - Creates a new CairoContext

CairoImageSurface
CairoImageSurface::createForData
CairoImageSurface


The createForData purpose

CairoImageSurface::__construct
CairoImageSurface::createFromPng
CairoImageSurface
PHP Manual

CairoImageSurface::createForData

(PECL cairo >= 0.1.0)

CairoImageSurface::createForData — The createForData purpose

Descrição

public static void CairoImageSurface::createForData ( string $data , int $format , int $width , int $height [, int $stride = -1 ] )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

data

Description...

format

Description...

width

Description...

height

Description...

stride

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoImageSurface::createForData() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoImageSurface::__construct
CairoImageSurface::createFromPng
CairoImageSurface


Creates a new CairoImageSurface form a png image file

CairoImageSurface::createForData
CairoImageSurface::getData
CairoImageSurface
PHP Manual

CairoImageSurface::createFromPng

(PECL cairo >= 0.1.0)

CairoImageSurface::createFromPng — Creates a new CairoImageSurface form a png image file

Descrição

public staticCairoImageSurface CairoImageSurface::createFromPng ( string $file )

Creates a new CairoImageSurface form a png image file

This method should be called static

Parâmetros

file

Path to PNG image file

Valor Retornado

CairoImageSurface object

Exemplos

Exemplo #1 CairoImageSurface::createFromPng() example

<?php

$surface = CairoImageSurface::createFromPng('/path/to/image/file.png');

?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoImageSurface::__construct() - Creates a new CairoImageSurface

CairoImageSurface::createForData
CairoImageSurface::getData
CairoImageSurface


Gets the image data as string

CairoImageSurface::createFromPng
CairoImageSurface::getFormat
CairoImageSurface
PHP Manual

CairoImageSurface::getData

(PECL cairo >= 0.1.0)

CairoImageSurface::getData — Gets the image data as string

Descrição

public string CairoImageSurface::getData ( void )

Returns the image data of this surface or NULL if surface is not an image surface, or if CairoContext::finish(), procedural : cairo_surface_finish(), has been called.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The image data as string

Exemplos

Exemplo #1 CairoImageSurface::getData() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • CairoImageSurface::getStride() - The getStride purpose

CairoImageSurface::createFromPng
CairoImageSurface::getFormat
CairoImageSurface


Get the image format

CairoImageSurface::getData
CairoImageSurface::getHeight
CairoImageSurface
PHP Manual

CairoImageSurface::getFormat

(PECL cairo >= 0.1.0)

CairoImageSurface::getFormat — Get the image format

Descrição

public int CairoImageSurface::getFormat ( void )

Retrieves the image format, as one of the CairoFormat defined

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

One of the CairoFormat enums

Exemplos

Exemplo #1 CairoImageSurface::getFormat() example

<?php

$surface = new CairoImageSurface(CairoFormat::ARGB32, 50, 50);

var_dump($surface->getFormat()); // 0

$surface2 = new CairoImageSurface(CairoFormat::A8, 50, 50);

var_dump($surface2->getFormat()); // 2

?>

O exemplo acima irá imprimir algo similar a:

int(0)
int(2)

Veja Também

  • CairoImageSurface::getHeight() - Retrieves the height of the CairoImageSurface
  • CairoImageSurface::getWidth() - Retrieves the width of the CairoImageSurface

CairoImageSurface::getData
CairoImageSurface::getHeight
CairoImageSurface


Retrieves the height of the CairoImageSurface

CairoImageSurface::getFormat
CairoImageSurface::getStride
CairoImageSurface
PHP Manual

CairoImageSurface::getHeight

(PECL cairo >= 0.1.0)

CairoImageSurface::getHeight — Retrieves the height of the CairoImageSurface

Descrição

public int CairoImageSurface::getHeight ( void )

This methods returns the CairoImageSurface height.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

CairoImageSurface object height

Exemplos

Exemplo #1 CairoImageSurface::getHeight() example

<?php
// creates a new image surface
$surface = new CairoImageSurface(CairoFormat::ARGB32, 80, 50);

//gets the height
var_dump($surface->getHeight());

?>

O exemplo acima irá imprimir algo similar a:

int(50)

Veja Também

  • CairoImageSurface::getWidth() - Retrieves the width of the CairoImageSurface

CairoImageSurface::getFormat
CairoImageSurface::getStride
CairoImageSurface


The getStride purpose

CairoImageSurface::getHeight
CairoImageSurface::getWidth
CairoImageSurface
PHP Manual

CairoImageSurface::getStride

(PECL cairo >= 0.1.0)

CairoImageSurface::getStride — The getStride purpose

Descrição

public int CairoImageSurface::getStride ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoImageSurface::getStride() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoImageSurface::getHeight
CairoImageSurface::getWidth
CairoImageSurface


Retrieves the width of the CairoImageSurface

CairoImageSurface::getStride
CairoPdfSurface
CairoImageSurface
PHP Manual

CairoImageSurface::getWidth

(PECL cairo >= 0.1.0)

CairoImageSurface::getWidth — Retrieves the width of the CairoImageSurface

Descrição

public int CairoImageSurface::getWidth ( void )

Gets the width of the CairoImageSurface

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the width of the CairoImageSurface object

Exemplos

Exemplo #1 CairoImageSurface::getWidth() example

<?php
// creates a new image surface
$surface = new CairoImageSurface(CairoFormat::ARGB32, 80, 50);

//gets the width
var_dump($surface->getWidth());

?>

O exemplo acima irá imprimir algo similar a:

int(80)

Veja Também

  • CairoImageSurface::getHeight() - Retrieves the height of the CairoImageSurface

CairoImageSurface::getStride
CairoPdfSurface
CairoImageSurface


The CairoPdfSurface class

Introdução

Description of the class.

Sinopse da classe

CairoPdfSurface extends CairoSurface {
/* Methods */
__construct ( string $file , float $width , float $height )
public void setSize ( string $width , string $height )
/* Inherited methods */
CairoSurface::__construct ( void )
public void CairoSurface::copyPage ( void )
public void CairoSurface::createSimilar ( CairoSurface $other , int $content , string $width , string $height )
public void CairoSurface::finish ( void )
public void CairoSurface::flush ( void )
public int CairoSurface::getContent ( void )
public array CairoSurface::getDeviceOffset ( void )
public void CairoSurface::getFontOptions ( void )
public int CairoSurface::getType ( void )
public void CairoSurface::markDirty ( void )
public void CairoSurface::markDirtyRectangle ( string $x , string $y , string $width , string $height )
public void CairoSurface::setDeviceOffset ( string $x , string $y )
public void CairoSurface::setFallbackResolution ( string $x , string $y )
public void CairoSurface::showPage ( void )
public int CairoSurface::status ( void )
public void CairoSurface::writeToPng ( string $file )
}

Índice

  • CairoPdfSurface::__construct — The __construct purpose
  • CairoPdfSurface::setSize — The setSize purpose
CairoImageSurface::getWidth
CairoPdfSurface::__construct
Cairo


The __construct purpose

CairoPdfSurface
CairoPdfSurface::setSize
CairoPdfSurface
PHP Manual

CairoPdfSurface::__construct

(PECL cairo >= 0.1.0)

CairoPdfSurface::__construct — The __construct purpose

Descrição

CairoPdfSurface::__construct ( string $file , float $width , float $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPdfSurface::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPdfSurface
CairoPdfSurface::setSize
CairoPdfSurface


The setSize purpose

CairoPdfSurface::__construct
CairoPsSurface
CairoPdfSurface
PHP Manual

CairoPdfSurface::setSize

(PECL cairo >= 0.1.0)

CairoPdfSurface::setSize — The setSize purpose

Descrição

public void CairoPdfSurface::setSize ( string $width , string $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPdfSurface::setSize() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPdfSurface::__construct
CairoPsSurface
CairoPdfSurface


The CairoPsSurface class

Introdução

Description of the class.

Sinopse da classe

CairoPsSurface extends CairoSurface {
/* Methods */
__construct ( string $file , float $width , float $height )
public void dscBeginPageSetup ( void )
public void dscBeginSetup ( void )
public void dscComment ( string $comment )
public bool getEps ( void )
public static array getLevels ( void )
public static string levelToString ( int $level )
public void restrictToLevel ( string $level )
public void setEps ( string $level )
public void setSize ( string $width , string $height )
/* Inherited methods */
CairoSurface::__construct ( void )
public void CairoSurface::copyPage ( void )
public void CairoSurface::createSimilar ( CairoSurface $other , int $content , string $width , string $height )
public void CairoSurface::finish ( void )
public void CairoSurface::flush ( void )
public int CairoSurface::getContent ( void )
public array CairoSurface::getDeviceOffset ( void )
public void CairoSurface::getFontOptions ( void )
public int CairoSurface::getType ( void )
public void CairoSurface::markDirty ( void )
public void CairoSurface::markDirtyRectangle ( string $x , string $y , string $width , string $height )
public void CairoSurface::setDeviceOffset ( string $x , string $y )
public void CairoSurface::setFallbackResolution ( string $x , string $y )
public void CairoSurface::showPage ( void )
public int CairoSurface::status ( void )
public void CairoSurface::writeToPng ( string $file )
}

Índice

  • CairoPsSurface::__construct — The __construct purpose
  • CairoPsSurface::dscBeginPageSetup — The dscBeginPageSetup purpose
  • CairoPsSurface::dscBeginSetup — The dscBeginSetup purpose
  • CairoPsSurface::dscComment — The dscComment purpose
  • CairoPsSurface::getEps — The getEps purpose
  • CairoPsSurface::getLevels — The getLevels purpose
  • CairoPsSurface::levelToString — The levelToString purpose
  • CairoPsSurface::restrictToLevel — The restrictToLevel purpose
  • CairoPsSurface::setEps — The setEps purpose
  • CairoPsSurface::setSize — The setSize purpose
CairoPdfSurface::setSize
CairoPsSurface::__construct
Cairo


The __construct purpose

CairoPsSurface
CairoPsSurface::dscBeginPageSetup
CairoPsSurface
PHP Manual

CairoPsSurface::__construct

(PECL cairo >= 0.1.0)

CairoPsSurface::__construct — The __construct purpose

Descrição

CairoPsSurface::__construct ( string $file , float $width , float $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

file

Description...

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface
CairoPsSurface::dscBeginPageSetup
CairoPsSurface


The dscBeginPageSetup purpose

CairoPsSurface::__construct
CairoPsSurface::dscBeginSetup
CairoPsSurface
PHP Manual

CairoPsSurface::dscBeginPageSetup

(PECL cairo >= 0.1.0)

CairoPsSurface::dscBeginPageSetup — The dscBeginPageSetup purpose

Descrição

public void CairoPsSurface::dscBeginPageSetup ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::dscBeginPageSetup() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::__construct
CairoPsSurface::dscBeginSetup
CairoPsSurface


The dscBeginSetup purpose

CairoPsSurface::dscBeginPageSetup
CairoPsSurface::dscComment
CairoPsSurface
PHP Manual

CairoPsSurface::dscBeginSetup

(PECL cairo >= 0.1.0)

CairoPsSurface::dscBeginSetup — The dscBeginSetup purpose

Descrição

public void CairoPsSurface::dscBeginSetup ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::dscBeginSetup() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::dscBeginPageSetup
CairoPsSurface::dscComment
CairoPsSurface


The dscComment purpose

CairoPsSurface::dscBeginSetup
CairoPsSurface::getEps
CairoPsSurface
PHP Manual

CairoPsSurface::dscComment

(PECL cairo >= 0.1.0)

CairoPsSurface::dscComment — The dscComment purpose

Descrição

public void CairoPsSurface::dscComment ( string $comment )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

comment

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::dscComment() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::dscBeginSetup
CairoPsSurface::getEps
CairoPsSurface


The getEps purpose

CairoPsSurface::dscComment
CairoPsSurface::getLevels
CairoPsSurface
PHP Manual

CairoPsSurface::getEps

(PECL cairo >= 0.1.0)

CairoPsSurface::getEps — The getEps purpose

Descrição

public bool CairoPsSurface::getEps ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::getEps() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::dscComment
CairoPsSurface::getLevels
CairoPsSurface


The getLevels purpose

CairoPsSurface::getEps
CairoPsSurface::levelToString
CairoPsSurface
PHP Manual

CairoPsSurface::getLevels

(PECL cairo >= 0.1.0)

CairoPsSurface::getLevels — The getLevels purpose

Descrição

public static array CairoPsSurface::getLevels ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::getLevels() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::getEps
CairoPsSurface::levelToString
CairoPsSurface


The levelToString purpose

CairoPsSurface::getLevels
CairoPsSurface::restrictToLevel
CairoPsSurface
PHP Manual

CairoPsSurface::levelToString

(PECL cairo >= 0.1.0)

CairoPsSurface::levelToString — The levelToString purpose

Descrição

public static string CairoPsSurface::levelToString ( int $level )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

level

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::levelToString() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::getLevels
CairoPsSurface::restrictToLevel
CairoPsSurface


The restrictToLevel purpose

CairoPsSurface::levelToString
CairoPsSurface::setEps
CairoPsSurface
PHP Manual

CairoPsSurface::restrictToLevel

(PECL cairo >= 0.1.0)

CairoPsSurface::restrictToLevel — The restrictToLevel purpose

Descrição

public void CairoPsSurface::restrictToLevel ( string $level )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

level

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::restrictToLevel() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::levelToString
CairoPsSurface::setEps
CairoPsSurface


The setEps purpose

CairoPsSurface::restrictToLevel
CairoPsSurface::setSize
CairoPsSurface
PHP Manual

CairoPsSurface::setEps

(PECL cairo >= 0.1.0)

CairoPsSurface::setEps — The setEps purpose

Descrição

public void CairoPsSurface::setEps ( string $level )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

level

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::setEps() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::restrictToLevel
CairoPsSurface::setSize
CairoPsSurface


The setSize purpose

CairoPsSurface::setEps
CairoSurfaceType
CairoPsSurface
PHP Manual

CairoPsSurface::setSize

(PECL cairo >= 0.1.0)

CairoPsSurface::setSize — The setSize purpose

Descrição

public void CairoPsSurface::setSize ( string $width , string $height )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

width

Description...

height

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPsSurface::setSize() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPsSurface::setEps
CairoSurfaceType
CairoPsSurface


The CairoSurfaceType class

Introdução

Description of the class.

Sinopse da classe

CairoSurfaceType {
/* Constants */
const integer CairoSurfaceType::IMAGE = 0 ;
const integer CairoSurfaceType::PDF = 1 ;
const integer CairoSurfaceType::PS = 2 ;
const integer CairoSurfaceType::XLIB = 3 ;
const integer CairoSurfaceType::XCB = 4 ;
const integer CairoSurfaceType::GLITZ = 5 ;
const integer CairoSurfaceType::QUARTZ = 6 ;
const integer CairoSurfaceType::WIN32 = 7 ;
const integer CairoSurfaceType::BEOS = 8 ;
const integer CairoSurfaceType::DIRECTFB = 9 ;
const integer CairoSurfaceType::SVG = 10 ;
const integer CairoSurfaceType::OS2 = 11 ;
const integer CairoSurfaceType::WIN32_PRINTING = 12 ;
const integer CairoSurfaceType::QUARTZ_IMAGE = 13 ;
}

Constantes pré-definidas

CairoSurfaceType Node Types

CairoSurfaceType::IMAGE

Description here...

CairoSurfaceType::PDF

Description here...

CairoSurfaceType::PS

Description here...

CairoSurfaceType::XLIB

Description here...

CairoSurfaceType::XCB

Description here...

CairoSurfaceType::GLITZ

Description here...

CairoSurfaceType::QUARTZ

Description here...

CairoSurfaceType::WIN32

Description here...

CairoSurfaceType::BEOS

Description here...

CairoSurfaceType::DIRECTFB

Description here...

CairoSurfaceType::SVG

Description here...

CairoSurfaceType::OS2

Description here...

CairoSurfaceType::WIN32_PRINTING

Description here...

CairoSurfaceType::QUARTZ_IMAGE

Description here...

CairoPsSurface::setSize
CairoFontFace
Cairo


The CairoFontFace class

Introdução

CairoFontFace abstract class represents a particular font at a particular weight, slant, and other characteristic but no transformation or size.

Note: This class can not be instantiated directly, it is created by CairoContext::getFontFace() or cairo_scaled_font_get_font_face().

Sinopse da classe

CairoFontFace {
/* Methods */
__construct ( void )
public int getType ( void )
public int status ( void )
}

Índice

  • CairoFontFace::__construct — Creates a new CairoFontFace object
  • CairoFontFace::getType — Retrieves the font face type
  • CairoFontFace::status — Check for CairoFontFace errors
CairoSurfaceType
CairoFontFace::__construct
Cairo


Creates a new CairoFontFace object

CairoFontFace
CairoFontFace::getType
CairoFontFace
PHP Manual

CairoFontFace::__construct

(PECL cairo >= 0.1.0)

CairoFontFace::__construct — Creates a new CairoFontFace object

Descrição

CairoFontFace::__construct ( void )

CairoFontFace class represents a particular font at a particular weight, slant, and other characteristic but no transformation or size.

Note: This class can't be instantiated directly it is created by CairoContext::getFontFace() or cairo_scaled_font_get_font_face()

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

CairoFontFace

Exemplos

Exemplo #1 CairoFontFace::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Class::Method()

CairoFontFace
CairoFontFace::getType
CairoFontFace


Retrieves the font face type

CairoFontFace::__construct
CairoFontFace::status
CairoFontFace
PHP Manual

CairoFontFace::getType

(PECL cairo >= 0.1.0)

CairoFontFace::getType — Retrieves the font face type

Descrição

public int CairoFontFace::getType ( void )

This function returns the type of the backend used to create a font face. See CairoFontType class constants for available types.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A font type that can be any one defined in CairoFontType

Exemplos

Exemplo #1 CairoFontFace::getType() example

<?php

// Creates the font face
$fontface = new CairoToyFontFace('sans-serif');

// Get the font face type
var_dump($fontface->getType());

?>

O exemplo acima irá imprimir algo similar a:

int(0)

Veja Também

  • Classname::Method()

CairoFontFace::__construct
CairoFontFace::status
CairoFontFace


Check for CairoFontFace errors

CairoFontFace::getType
CairoFontOptions
CairoFontFace
PHP Manual

CairoFontFace::status

cairo_font_face_status

(PECL cairo >= 0.1.0)

CairoFontFace::status -- cairo_font_face_status — Check for CairoFontFace errors

Descrição

Object oriented style (method):

public int CairoFontFace::status ( void )

Procedural style:

int cairo_font_face_status ( CairoFontFace $fontface )

Checks whether an error has previously occurred for this font face

Parâmetros

fontface

A valid CairoFontFace object

Valor Retornado

CAIRO_STATUS_SUCCESS or another error such as CAIRO_STATUS_NO_MEMORY.

Exemplos

Exemplo #1 Object oriented style

<?php

// Creates the font face
$fontface = new CairoToyFontFace('sans-serif');

// Get the font face status
var_dump($fontface->status()); // should be the value of CAIRO_STATUS_SUCCESS

?>

O exemplo acima irá imprimir algo similar a:

int(0)

Exemplo #2 Procedural style

<?php

// Creates the font face
$fontface = new CairoToyFontFace('sans-serif');

// Get the font face status
var_dump(cairo_font_face_status($fontface)); // should be the value of CAIRO_STATUS_SUCCESS

?>

O exemplo acima irá imprimir algo similar a:

int(0)

Veja Também

  • Classname::Method()

CairoFontFace::getType
CairoFontOptions
CairoFontFace


The CairoFontOptions class

Introdução

An opaque structure holding all options that are used when rendering fonts.

Individual features of a cairo_font_options_t can be set or accessed using functions named cairo_font_options_set_feature_name and cairo_font_options_get_feature_name, like cairo_font_options_set_antialias() and cairo_font_options_get_antialias().

New features may be added to CairoFontOptions in the future. For this reason CairoFontOptions::copy(), CairoFontOptions::equal(), CairoFontOptions::merge(), CairoFontOptions::hash() (cairo_font_options_copy(), cairo_font_options_equal(), cairo_font_options_merge(), and cairo_font_options_hash() in procedural way) should be used to copy, check for equality, merge, or compute a hash value of CairoFontOptions objects.

Sinopse da classe

CairoFontOptions {
/* Methods */
__construct ( void )
public bool equal ( string $other )
public int getAntialias ( void )
public int getHintMetrics ( void )
public int getHintStyle ( void )
public int getSubpixelOrder ( void )
public int hash ( void )
public void merge ( string $other )
public void setAntialias ( string $antialias )
public void setHintMetrics ( string $hint_metrics )
public void setHintStyle ( string $hint_style )
public void setSubpixelOrder ( string $subpixel_order )
public int status ( void )
}

Índice

  • CairoFontOptions::__construct — The __construct purpose
  • CairoFontOptions::equal — The equal purpose
  • CairoFontOptions::getAntialias — The getAntialias purpose
  • CairoFontOptions::getHintMetrics — The getHintMetrics purpose
  • CairoFontOptions::getHintStyle — The getHintStyle purpose
  • CairoFontOptions::getSubpixelOrder — The getSubpixelOrder purpose
  • CairoFontOptions::hash — The hash purpose
  • CairoFontOptions::merge — The merge purpose
  • CairoFontOptions::setAntialias — The setAntialias purpose
  • CairoFontOptions::setHintMetrics — The setHintMetrics purpose
  • CairoFontOptions::setHintStyle — The setHintStyle purpose
  • CairoFontOptions::setSubpixelOrder — The setSubpixelOrder purpose
  • CairoFontOptions::status — The status purpose
CairoFontFace::status
CairoFontOptions::__construct
Cairo


The __construct purpose

CairoFontOptions
CairoFontOptions::equal
CairoFontOptions
PHP Manual

CairoFontOptions::__construct

(PECL cairo >= 0.1.0)

CairoFontOptions::__construct — The __construct purpose

Descrição

CairoFontOptions::__construct ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions
CairoFontOptions::equal
CairoFontOptions


The equal purpose

CairoFontOptions::__construct
CairoFontOptions::getAntialias
CairoFontOptions
PHP Manual

CairoFontOptions::equal

(PECL cairo >= 0.1.0)

CairoFontOptions::equal — The equal purpose

Descrição

public bool CairoFontOptions::equal ( string $other )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

other

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::equal() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::__construct
CairoFontOptions::getAntialias
CairoFontOptions


The getAntialias purpose

CairoFontOptions::equal
CairoFontOptions::getHintMetrics
CairoFontOptions
PHP Manual

CairoFontOptions::getAntialias

cairo_get_antialias

(PECL cairo >= 0.1.0)

CairoFontOptions::getAntialias -- cairo_get_antialias — The getAntialias purpose

Descrição

Object oriented style (method):

public int CairoFontOptions::getAntialias ( void )

Procedural style:

int cairo_get_antialias ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::equal
CairoFontOptions::getHintMetrics
CairoFontOptions


The getHintMetrics purpose

CairoFontOptions::getAntialias
CairoFontOptions::getHintStyle
CairoFontOptions
PHP Manual

CairoFontOptions::getHintMetrics

(PECL cairo >= 0.1.0)

CairoFontOptions::getHintMetrics — The getHintMetrics purpose

Descrição

public int CairoFontOptions::getHintMetrics ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::getHintMetrics() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::getAntialias
CairoFontOptions::getHintStyle
CairoFontOptions


The getHintStyle purpose

CairoFontOptions::getHintMetrics
CairoFontOptions::getSubpixelOrder
CairoFontOptions
PHP Manual

CairoFontOptions::getHintStyle

(PECL cairo >= 0.1.0)

CairoFontOptions::getHintStyle — The getHintStyle purpose

Descrição

public int CairoFontOptions::getHintStyle ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::getHintStyle() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::getHintMetrics
CairoFontOptions::getSubpixelOrder
CairoFontOptions


The getSubpixelOrder purpose

CairoFontOptions::getHintStyle
CairoFontOptions::hash
CairoFontOptions
PHP Manual

CairoFontOptions::getSubpixelOrder

(PECL cairo >= 0.1.0)

CairoFontOptions::getSubpixelOrder — The getSubpixelOrder purpose

Descrição

public int CairoFontOptions::getSubpixelOrder ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::getSubpixelOrder() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::getHintStyle
CairoFontOptions::hash
CairoFontOptions


The hash purpose

CairoFontOptions::getSubpixelOrder
CairoFontOptions::merge
CairoFontOptions
PHP Manual

CairoFontOptions::hash

(PECL cairo >= 0.1.0)

CairoFontOptions::hash — The hash purpose

Descrição

public int CairoFontOptions::hash ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::hash() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::getSubpixelOrder
CairoFontOptions::merge
CairoFontOptions


The merge purpose

CairoFontOptions::hash
CairoFontOptions::setAntialias
CairoFontOptions
PHP Manual

CairoFontOptions::merge

(PECL cairo >= 0.1.0)

CairoFontOptions::merge — The merge purpose

Descrição

public void CairoFontOptions::merge ( string $other )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

other

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::merge() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::hash
CairoFontOptions::setAntialias
CairoFontOptions


The setAntialias purpose

CairoFontOptions::merge
CairoFontOptions::setHintMetrics
CairoFontOptions
PHP Manual

CairoFontOptions::setAntialias

cairo_set_antialias

(PECL cairo >= 0.1.0)

CairoFontOptions::setAntialias -- cairo_set_antialias — The setAntialias purpose

Descrição

Object oriented style (method):

public void CairoFontOptions::setAntialias ( string $antialias )

Procedural style:

void cairo_set_antialias ( CairoContext $context [, string $antialias ] )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

antialias

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::merge
CairoFontOptions::setHintMetrics
CairoFontOptions


The setHintMetrics purpose

CairoFontOptions::setAntialias
CairoFontOptions::setHintStyle
CairoFontOptions
PHP Manual

CairoFontOptions::setHintMetrics

(PECL cairo >= 0.1.0)

CairoFontOptions::setHintMetrics — The setHintMetrics purpose

Descrição

public void CairoFontOptions::setHintMetrics ( string $hint_metrics )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

hint_metrics

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::setHintMetrics() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::setAntialias
CairoFontOptions::setHintStyle
CairoFontOptions


The setHintStyle purpose

CairoFontOptions::setHintMetrics
CairoFontOptions::setSubpixelOrder
CairoFontOptions
PHP Manual

CairoFontOptions::setHintStyle

(PECL cairo >= 0.1.0)

CairoFontOptions::setHintStyle — The setHintStyle purpose

Descrição

public void CairoFontOptions::setHintStyle ( string $hint_style )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

hint_style

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::setHintStyle() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::setHintMetrics
CairoFontOptions::setSubpixelOrder
CairoFontOptions


The setSubpixelOrder purpose

CairoFontOptions::setHintStyle
CairoFontOptions::status
CairoFontOptions
PHP Manual

CairoFontOptions::setSubpixelOrder

(PECL cairo >= 0.1.0)

CairoFontOptions::setSubpixelOrder — The setSubpixelOrder purpose

Descrição

public void CairoFontOptions::setSubpixelOrder ( string $subpixel_order )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

subpixel_order

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoFontOptions::setSubpixelOrder() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::setHintStyle
CairoFontOptions::status
CairoFontOptions


The status purpose

CairoFontOptions::setSubpixelOrder
CairoFontSlant
CairoFontOptions
PHP Manual

CairoFontOptions::status

cairo_status

(PECL cairo >= 0.1.0)

CairoFontOptions::status -- cairo_status — The status purpose

Descrição

Object oriented style (method):

public int CairoFontOptions::status ( void )

Procedural style:

int cairo_status ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFontOptions::setSubpixelOrder
CairoFontSlant
CairoFontOptions


The CairoFontSlant class

Introdução

Specifies variants of a font face based on their slant.

Sinopse da classe

CairoFontSlant {
/* Constants */
const integer CairoFontSlant::NORMAL = 0 ;
const integer CairoFontSlant::ITALIC = 1 ;
const integer CairoFontSlant::OBLIQUE = 2 ;
}

Constantes pré-definidas

CairoFontSlant Node Types

CairoFontSlant::NORMAL

Upright font style

CairoFontSlant::ITALIC

Italic font style

CairoFontSlant::OBLIQUE

Oblique font style

CairoFontOptions::status
CairoFontType
Cairo


The CairoFontType class

Introdução

CairoFontType class is an abstract final class that contains constants used to describe the type of a given CairoFontFace or CairoScaledFont. The font types are also known as "font backends" within cairo.

The type of a CairoFontFace is determined by the how it is created, an example would be the CairoToyFontFace::__construct(). The CairoFontFace type can be queried with CairoFontFace::getType() or cairo_font_face_get_type()

The various CairoFontFace functions can be used with a font face of any type.

The type of a CairoScaledFont is determined by the type of the CairoFontFace passed to CairoScaledFont::__construct() or cairo_scaled_font_create(). The scaled font type can be queried with CairoScaledFont::getType() or cairo_scaled_font_get_type().

Sinopse da classe

CairoFontType {
/* Constants */
const integer CairoFontType::TOY = 0 ;
const integer CairoFontType::FT = 1 ;
const integer CairoFontType::WIN32 = 2 ;
const integer CairoFontType::QUARTZ = 3 ;
}

Constantes pré-definidas

CairoFontType Node Types

CairoFontType::TOY

The font was created using CairoToyFont api

CairoFontType::FT

The font is of type CairoFreeType

CairoFontType::WIN32

The font is of type Win32

CairoFontType::QUARTZ

The font is of type Quartz

CairoFontType::USER

The font was create using cairo's user font api

CairoFontSlant
CairoFontWeight
Cairo


The CairoFontWeight class

Introdução

Specifies variants of a font face based on their weight.

Sinopse da classe

CairoFontWeight {
/* Constants */
const integer CairoFontWeight::NORMAL = 0 ;
const integer CairoFontWeight::BOLD = 1 ;
}

Constantes pré-definidas

CairoFontWeight Node Types

CairoFontWeight::NORMAL

Normal font weight

CairoFontWeight::BOLD

Bold font weight

CairoFontType
CairoScaledFont
Cairo


The CairoScaledFont class

Introdução

Description of the class.

Sinopse da classe

CairoScaledFont {
/* Methods */
__construct ( CairoFontFace $font_face , CairoMatrix $matrix , CairoMatrix $ctm , CairoFontOptions $options )
public array extents ( void )
public CairoMatrix getCtm ( void )
public void getFontFace ( void )
public void getFontMatrix ( void )
public void getFontOptions ( void )
public void getScaleMatrix ( void )
public int getType ( void )
public array glyphExtents ( string $glyphs )
public int status ( void )
public array textExtents ( string $text )
}

Índice

  • CairoScaledFont::__construct — The __construct purpose
  • CairoScaledFont::extents — The extents purpose
  • CairoScaledFont::getCtm — The getCtm purpose
  • CairoScaledFont::getFontFace — The getFontFace purpose
  • CairoScaledFont::getFontMatrix — The getFontMatrix purpose
  • CairoScaledFont::getFontOptions — The getFontOptions purpose
  • CairoScaledFont::getScaleMatrix — The getScaleMatrix purpose
  • CairoScaledFont::getType — The getType purpose
  • CairoScaledFont::glyphExtents — The glyphExtents purpose
  • CairoScaledFont::status — The status purpose
  • CairoScaledFont::textExtents — The textExtents purpose
CairoFontWeight
CairoScaledFont::__construct
Cairo


The __construct purpose

CairoScaledFont
CairoScaledFont::extents
CairoScaledFont
PHP Manual

CairoScaledFont::__construct

(PECL cairo >= 0.1.0)

CairoScaledFont::__construct — The __construct purpose

Descrição

CairoScaledFont::__construct ( CairoFontFace $font_face , CairoMatrix $matrix , CairoMatrix $ctm , CairoFontOptions $options )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

font_face

Description...

matrix

Description...

ctm

Description...

options

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont
CairoScaledFont::extents
CairoScaledFont


The extents purpose

CairoScaledFont::__construct
CairoScaledFont::getCtm
CairoScaledFont
PHP Manual

CairoScaledFont::extents

(PECL cairo >= 0.1.0)

CairoScaledFont::extents — The extents purpose

Descrição

public array CairoScaledFont::extents ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::extents() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::__construct
CairoScaledFont::getCtm
CairoScaledFont


The getCtm purpose

CairoScaledFont::extents
CairoScaledFont::getFontFace
CairoScaledFont
PHP Manual

CairoScaledFont::getCtm

(PECL cairo >= 0.1.0)

CairoScaledFont::getCtm — The getCtm purpose

Descrição

public CairoMatrix CairoScaledFont::getCtm ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::getCtm() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::extents
CairoScaledFont::getFontFace
CairoScaledFont


The getFontFace purpose

CairoScaledFont::getCtm
CairoScaledFont::getFontMatrix
CairoScaledFont
PHP Manual

CairoScaledFont::getFontFace

cairo_get_font_face

(PECL cairo >= 0.1.0)

CairoScaledFont::getFontFace -- cairo_get_font_face — The getFontFace purpose

Descrição

Object oriented style (method):

public void CairoScaledFont::getFontFace ( void )

Procedural style:

void cairo_get_font_face ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getCtm
CairoScaledFont::getFontMatrix
CairoScaledFont


The getFontMatrix purpose

CairoScaledFont::getFontFace
CairoScaledFont::getFontOptions
CairoScaledFont
PHP Manual

CairoScaledFont::getFontMatrix

cairo_get_font_matrix

(PECL cairo >= 0.1.0)

CairoScaledFont::getFontMatrix -- cairo_get_font_matrix — The getFontMatrix purpose

Descrição

Object oriented style (method):

public void CairoScaledFont::getFontMatrix ( void )

Procedural style:

void cairo_get_font_matrix ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getFontFace
CairoScaledFont::getFontOptions
CairoScaledFont


The getFontOptions purpose

CairoScaledFont::getFontMatrix
CairoScaledFont::getScaleMatrix
CairoScaledFont
PHP Manual

CairoScaledFont::getFontOptions

cairo_get_font_options

(PECL cairo >= 0.1.0)

CairoScaledFont::getFontOptions -- cairo_get_font_options — The getFontOptions purpose

Descrição

Object oriented style (method):

public void CairoScaledFont::getFontOptions ( void )

Procedural style:

void cairo_get_font_options ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getFontMatrix
CairoScaledFont::getScaleMatrix
CairoScaledFont


The getScaleMatrix purpose

CairoScaledFont::getFontOptions
CairoScaledFont::getType
CairoScaledFont
PHP Manual

CairoScaledFont::getScaleMatrix

(PECL cairo >= 0.1.0)

CairoScaledFont::getScaleMatrix — The getScaleMatrix purpose

Descrição

public void CairoScaledFont::getScaleMatrix ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::getScaleMatrix() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getFontOptions
CairoScaledFont::getType
CairoScaledFont


The getType purpose

CairoScaledFont::getScaleMatrix
CairoScaledFont::glyphExtents
CairoScaledFont
PHP Manual

CairoScaledFont::getType

(PECL cairo >= 0.1.0)

CairoScaledFont::getType — The getType purpose

Descrição

public int CairoScaledFont::getType ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::getType() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getScaleMatrix
CairoScaledFont::glyphExtents
CairoScaledFont


The glyphExtents purpose

CairoScaledFont::getType
CairoScaledFont::status
CairoScaledFont
PHP Manual

CairoScaledFont::glyphExtents

(PECL cairo >= 0.1.0)

CairoScaledFont::glyphExtents — The glyphExtents purpose

Descrição

public array CairoScaledFont::glyphExtents ( string $glyphs )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

glyphs

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoScaledFont::glyphExtents() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::getType
CairoScaledFont::status
CairoScaledFont


The status purpose

CairoScaledFont::glyphExtents
CairoScaledFont::textExtents
CairoScaledFont
PHP Manual

CairoScaledFont::status

cairo_status

(PECL cairo >= 0.1.0)

CairoScaledFont::status -- cairo_status — The status purpose

Descrição

Object oriented style (method):

public int CairoScaledFont::status ( void )

Procedural style:

int cairo_status ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::glyphExtents
CairoScaledFont::textExtents
CairoScaledFont


The textExtents purpose

CairoScaledFont::status
CairoToyFontFace
CairoScaledFont
PHP Manual

CairoScaledFont::textExtents

cairo_text_extents

(PECL cairo >= 0.1.0)

CairoScaledFont::textExtents -- cairo_text_extents — The textExtents purpose

Descrição

Object oriented style (method):

public array CairoScaledFont::textExtents ( string $text )

Procedural style:

array cairo_text_extents ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

text

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoScaledFont::status
CairoToyFontFace
CairoScaledFont


The CairoToyFontFace class

Introdução

The CairoToyFontFace class can be used instead of CairoContext::selectFontFace() to create a toy font independently of a context.

Sinopse da classe

CairoToyFontFace extends CairoFontFace {
/* Inherited methods */
}
CairoScaledFont::textExtents
CairoPatternType
Cairo


The CairoPatternType class

Introdução

CairoPatternType is used to describe the type of a given pattern.

The type of a pattern is determined by the function used to create it. The cairo_pattern_create_rgb() and cairo_pattern_create_rgba() functions create CairoPatternType::SOLID patterns. The remaining cairo_pattern_create_* functions map to pattern types in obvious ways.

Sinopse da classe

CairoPatternType {
/* Constants */
const integer CairoPatternType::SOLID = 0 ;
const integer CairoPatternType::SURFACE = 1 ;
const integer CairoPatternType::LINEAR = 2 ;
const integer CairoPatternType::RADIAL = 3 ;
}

Constantes pré-definidas

CairoPatternType Node Types

CairoPatternType::SOLID

The pattern is a solid (uniform) color. It may be opaque or translucent.

CairoPatternType::SURFACE

The pattern is a based on a surface (an image).

CairoPatternType::LINEAR

The pattern is a linear gradient.

CairoPatternType::RADIAL

The pattern is a radial gradient.

CairoToyFontFace
CairoPattern
Cairo


The CairoPattern class

Introdução

CairoPattern is the abstract base class from which all the other pattern classes derive. It cannot be instantiated directly

Sinopse da classe

CairoPattern {
/* Methods */
__construct ( void )
public void getMatrix ( void )
public int getType ( void )
public void setMatrix ( string $matrix )
public int status ( void )
}

Índice

  • CairoPattern::__construct — The __construct purpose
  • CairoPattern::getMatrix — The getMatrix purpose
  • CairoPattern::getType — The getType purpose
  • CairoPattern::setMatrix — The setMatrix purpose
  • CairoPattern::status — The status purpose
CairoPatternType
CairoPattern::__construct
Cairo


The __construct purpose

CairoPattern
CairoPattern::getMatrix
CairoPattern
PHP Manual

CairoPattern::__construct

(PECL cairo >= 0.1.0)

CairoPattern::__construct — The __construct purpose

Descrição

CairoPattern::__construct ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPattern::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPattern
CairoPattern::getMatrix
CairoPattern


The getMatrix purpose

CairoPattern::__construct
CairoPattern::getType
CairoPattern
PHP Manual

CairoPattern::getMatrix

cairo_get_matrix

(PECL cairo >= 0.1.0)

CairoPattern::getMatrix -- cairo_get_matrix — The getMatrix purpose

Descrição

Object oriented style (method):

public void CairoPattern::getMatrix ( void )

Procedural style:

void cairo_get_matrix ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPattern::__construct
CairoPattern::getType
CairoPattern


The getType purpose

CairoPattern::getMatrix
CairoPattern::setMatrix
CairoPattern
PHP Manual

CairoPattern::getType

(PECL cairo >= 0.1.0)

CairoPattern::getType — The getType purpose

Descrição

public int CairoPattern::getType ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoPattern::getType() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPattern::getMatrix
CairoPattern::setMatrix
CairoPattern


The setMatrix purpose

CairoPattern::getType
CairoPattern::status
CairoPattern
PHP Manual

CairoPattern::setMatrix

cairo_set_matrix

(PECL cairo >= 0.1.0)

CairoPattern::setMatrix -- cairo_set_matrix — The setMatrix purpose

Descrição

Object oriented style (method):

public void CairoPattern::setMatrix ( string $matrix )

Procedural style:

void cairo_set_matrix ( CairoContext $context , CairoMatrix $matrix )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

matrix

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPattern::getType
CairoPattern::status
CairoPattern


The status purpose

CairoPattern::setMatrix
CairoGradientPattern
CairoPattern
PHP Manual

CairoPattern::status

cairo_status

(PECL cairo >= 0.1.0)

CairoPattern::status -- cairo_status — The status purpose

Descrição

Object oriented style (method):

public int CairoPattern::status ( void )

Procedural style:

int cairo_status ( CairoContext $context )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoPattern::setMatrix
CairoGradientPattern
CairoPattern


The CairoGradientPattern class

Introdução

CairoGradientPattern is an abstract base class from which other Pattern classes derive. It cannot be instantiated directly.

Sinopse da classe

CairoGradientPattern extends CairoPattern {
/* Methods */
public void addColorStopRgb ( string $offset , string $red , string $green , string $blue )
public void addColorStopRgba ( string $offset , string $red , string $green , string $blue , string $alpha )
public int getColorStopCount ( void )
public array getColorStopRgba ( string $index )
public int getExtend ( void )
public void setExtend ( int $extend )
/* Inherited methods */
CairoPattern::__construct ( void )
public void CairoPattern::getMatrix ( void )
public int CairoPattern::getType ( void )
public void CairoPattern::setMatrix ( string $matrix )
public int CairoPattern::status ( void )
}

Índice

  • CairoGradientPattern::addColorStopRgb — The addColorStopRgb purpose
  • CairoGradientPattern::addColorStopRgba — The addColorStopRgba purpose
  • CairoGradientPattern::getColorStopCount — The getColorStopCount purpose
  • CairoGradientPattern::getColorStopRgba — The getColorStopRgba purpose
  • CairoGradientPattern::getExtend — The getExtend purpose
  • CairoGradientPattern::setExtend — The setExtend purpose
CairoPattern::status
CairoGradientPattern::addColorStopRgb
Cairo


The addColorStopRgb purpose

CairoGradientPattern
CairoGradientPattern::addColorStopRgba
CairoGradientPattern
PHP Manual

CairoGradientPattern::addColorStopRgb

(PECL cairo >= 0.1.0)

CairoGradientPattern::addColorStopRgb — The addColorStopRgb purpose

Descrição

public void CairoGradientPattern::addColorStopRgb ( string $offset , string $red , string $green , string $blue )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

offset

Description...

red

Description...

green

Description...

blue

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::addColorStopRgb() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern
CairoGradientPattern::addColorStopRgba
CairoGradientPattern


The addColorStopRgba purpose

CairoGradientPattern::addColorStopRgb
CairoGradientPattern::getColorStopCount
CairoGradientPattern
PHP Manual

CairoGradientPattern::addColorStopRgba

(PECL cairo >= 0.1.0)

CairoGradientPattern::addColorStopRgba — The addColorStopRgba purpose

Descrição

public void CairoGradientPattern::addColorStopRgba ( string $offset , string $red , string $green , string $blue , string $alpha )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

offset

Description...

red

Description...

green

Description...

blue

Description...

alpha

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::addColorStopRgba() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern::addColorStopRgb
CairoGradientPattern::getColorStopCount
CairoGradientPattern


The getColorStopCount purpose

CairoGradientPattern::addColorStopRgba
CairoGradientPattern::getColorStopRgba
CairoGradientPattern
PHP Manual

CairoGradientPattern::getColorStopCount

(PECL cairo >= 0.1.0)

CairoGradientPattern::getColorStopCount — The getColorStopCount purpose

Descrição

public int CairoGradientPattern::getColorStopCount ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::getColorStopCount() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern::addColorStopRgba
CairoGradientPattern::getColorStopRgba
CairoGradientPattern


The getColorStopRgba purpose

CairoGradientPattern::getColorStopCount
CairoGradientPattern::getExtend
CairoGradientPattern
PHP Manual

CairoGradientPattern::getColorStopRgba

(PECL cairo >= 0.1.0)

CairoGradientPattern::getColorStopRgba — The getColorStopRgba purpose

Descrição

public array CairoGradientPattern::getColorStopRgba ( string $index )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::getColorStopRgba() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern::getColorStopCount
CairoGradientPattern::getExtend
CairoGradientPattern


The getExtend purpose

CairoGradientPattern::getColorStopRgba
CairoGradientPattern::setExtend
CairoGradientPattern
PHP Manual

CairoGradientPattern::getExtend

(PECL cairo >= 0.1.0)

CairoGradientPattern::getExtend — The getExtend purpose

Descrição

public int CairoGradientPattern::getExtend ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::getExtend() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern::getColorStopRgba
CairoGradientPattern::setExtend
CairoGradientPattern


The setExtend purpose

CairoGradientPattern::getExtend
CairoSolidPattern
CairoGradientPattern
PHP Manual

CairoGradientPattern::setExtend

(PECL cairo >= 0.1.0)

CairoGradientPattern::setExtend — The setExtend purpose

Descrição

public void CairoGradientPattern::setExtend ( int $extend )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

extend

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoGradientPattern::setExtend() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoGradientPattern::getExtend
CairoSolidPattern
CairoGradientPattern


The CairoSolidPattern class

Introdução

Description of the class.

Sinopse da classe

CairoSolidPattern extends CairoPattern {
/* Methods */
__construct ( float $red , float $green , float $blue [, float $alpha = 0 ] )
public array getRgba ( void )
/* Inherited methods */
CairoPattern::__construct ( void )
public void CairoPattern::getMatrix ( void )
public int CairoPattern::getType ( void )
public void CairoPattern::setMatrix ( string $matrix )
public int CairoPattern::status ( void )
}

Índice

  • CairoSolidPattern::__construct — The __construct purpose
  • CairoSolidPattern::getRgba — The getRgba purpose
CairoGradientPattern::setExtend
CairoSolidPattern::__construct
Cairo


The __construct purpose

CairoSolidPattern
CairoSolidPattern::getRgba
CairoSolidPattern
PHP Manual

CairoSolidPattern::__construct

(PECL cairo >= 0.1.0)

CairoSolidPattern::__construct — The __construct purpose

Descrição

CairoSolidPattern::__construct ( float $red , float $green , float $blue [, float $alpha = 0 ] )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

red

Description...

green

Description...

blue

Description...

alpha

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSolidPattern::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSolidPattern
CairoSolidPattern::getRgba
CairoSolidPattern


The getRgba purpose

CairoSolidPattern::__construct
CairoSurfacePattern
CairoSolidPattern
PHP Manual

CairoSolidPattern::getRgba

(PECL cairo >= 0.1.0)

CairoSolidPattern::getRgba — The getRgba purpose

Descrição

public array CairoSolidPattern::getRgba ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSolidPattern::getRgba() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSolidPattern::__construct
CairoSurfacePattern
CairoSolidPattern


The CairoSurfacePattern class

Introdução

Description of the class.

Sinopse da classe

CairoSurfacePattern extends CairoPattern {
/* Methods */
__construct ( CairoSurface $surface )
public int getExtend ( void )
public int getFilter ( void )
public void getSurface ( void )
public void setExtend ( int $extend )
public void setFilter ( string $filter )
/* Inherited methods */
CairoPattern::__construct ( void )
public void CairoPattern::getMatrix ( void )
public int CairoPattern::getType ( void )
public void CairoPattern::setMatrix ( string $matrix )
public int CairoPattern::status ( void )
}

Índice

  • CairoSurfacePattern::__construct — The __construct purpose
  • CairoSurfacePattern::getExtend — The getExtend purpose
  • CairoSurfacePattern::getFilter — The getFilter purpose
  • CairoSurfacePattern::getSurface — The getSurface purpose
  • CairoSurfacePattern::setExtend — The setExtend purpose
  • CairoSurfacePattern::setFilter — The setFilter purpose
CairoSolidPattern::getRgba
CairoSurfacePattern::__construct
Cairo


The __construct purpose

CairoSurfacePattern
CairoSurfacePattern::getExtend
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::__construct

(PECL cairo >= 0.1.0)

CairoSurfacePattern::__construct — The __construct purpose

Descrição

CairoSurfacePattern::__construct ( CairoSurface $surface )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

surface

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern
CairoSurfacePattern::getExtend
CairoSurfacePattern


The getExtend purpose

CairoSurfacePattern::__construct
CairoSurfacePattern::getFilter
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::getExtend

(PECL cairo >= 0.1.0)

CairoSurfacePattern::getExtend — The getExtend purpose

Descrição

public int CairoSurfacePattern::getExtend ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::getExtend() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern::__construct
CairoSurfacePattern::getFilter
CairoSurfacePattern


The getFilter purpose

CairoSurfacePattern::getExtend
CairoSurfacePattern::getSurface
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::getFilter

(PECL cairo >= 0.1.0)

CairoSurfacePattern::getFilter — The getFilter purpose

Descrição

public int CairoSurfacePattern::getFilter ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::getFilter() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern::getExtend
CairoSurfacePattern::getSurface
CairoSurfacePattern


The getSurface purpose

CairoSurfacePattern::getFilter
CairoSurfacePattern::setExtend
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::getSurface

(PECL cairo >= 0.1.0)

CairoSurfacePattern::getSurface — The getSurface purpose

Descrição

public void CairoSurfacePattern::getSurface ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::getSurface() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern::getFilter
CairoSurfacePattern::setExtend
CairoSurfacePattern


The setExtend purpose

CairoSurfacePattern::getSurface
CairoSurfacePattern::setFilter
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::setExtend

(PECL cairo >= 0.1.0)

CairoSurfacePattern::setExtend — The setExtend purpose

Descrição

public void CairoSurfacePattern::setExtend ( int $extend )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

extend

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::setExtend() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern::getSurface
CairoSurfacePattern::setFilter
CairoSurfacePattern


The setFilter purpose

CairoSurfacePattern::setExtend
CairoLinearGradient
CairoSurfacePattern
PHP Manual

CairoSurfacePattern::setFilter

(PECL cairo >= 0.1.0)

CairoSurfacePattern::setFilter — The setFilter purpose

Descrição

public void CairoSurfacePattern::setFilter ( string $filter )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filter

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoSurfacePattern::setFilter() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoSurfacePattern::setExtend
CairoLinearGradient
CairoSurfacePattern


The CairoLinearGradient class

Introdução

Create a new CairoLinearGradient along the line defined

Sinopse da classe

CairoLinearGradient extends CairoGradientPattern {
/* Methods */
__construct ( float $x0 , float $y0 , float $x1 , float $y1 )
public array getPoints ( void )
/* Inherited methods */
public void CairoGradientPattern::addColorStopRgb ( string $offset , string $red , string $green , string $blue )
public void CairoGradientPattern::addColorStopRgba ( string $offset , string $red , string $green , string $blue , string $alpha )
public int CairoGradientPattern::getColorStopCount ( void )
public array CairoGradientPattern::getColorStopRgba ( string $index )
public int CairoGradientPattern::getExtend ( void )
public void CairoGradientPattern::setExtend ( int $extend )
}

Índice

  • CairoLinearGradient::__construct — The __construct purpose
  • CairoLinearGradient::getPoints — The getPoints purpose
CairoSurfacePattern::setFilter
CairoLinearGradient::__construct
Cairo


The __construct purpose

CairoLinearGradient
CairoLinearGradient::getPoints
CairoLinearGradient
PHP Manual

CairoLinearGradient::__construct

(PECL cairo >= 0.1.0)

CairoLinearGradient::__construct — The __construct purpose

Descrição

CairoLinearGradient::__construct ( float $x0 , float $y0 , float $x1 , float $y1 )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x0

Description...

y0

Description...

x1

Description...

y1

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoLinearGradient::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoLinearGradient
CairoLinearGradient::getPoints
CairoLinearGradient


The getPoints purpose

CairoLinearGradient::__construct
CairoRadialGradient
CairoLinearGradient
PHP Manual

CairoLinearGradient::getPoints

(PECL cairo >= 0.1.0)

CairoLinearGradient::getPoints — The getPoints purpose

Descrição

public array CairoLinearGradient::getPoints ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoLinearGradient::getPoints() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoLinearGradient::__construct
CairoRadialGradient
CairoLinearGradient


The CairoRadialGradient class

Introdução

Description of the class.

Sinopse da classe

CairoRadialGradient extends CairoGradientPattern {
/* Methods */
__construct ( float $x0 , float $y0 , float $r0 , float $x1 , float $y1 , float $r1 )
public array getCircles ( void )
/* Inherited methods */
public void CairoGradientPattern::addColorStopRgb ( string $offset , string $red , string $green , string $blue )
public void CairoGradientPattern::addColorStopRgba ( string $offset , string $red , string $green , string $blue , string $alpha )
public int CairoGradientPattern::getColorStopCount ( void )
public array CairoGradientPattern::getColorStopRgba ( string $index )
public int CairoGradientPattern::getExtend ( void )
public void CairoGradientPattern::setExtend ( int $extend )
}

Índice

  • CairoRadialGradient::__construct — The __construct purpose
  • CairoRadialGradient::getCircles — The getCircles purpose
CairoLinearGradient::getPoints
CairoRadialGradient::__construct
Cairo


The __construct purpose

CairoRadialGradient
CairoRadialGradient::getCircles
CairoRadialGradient
PHP Manual

CairoRadialGradient::__construct

(PECL cairo >= 0.1.0)

CairoRadialGradient::__construct — The __construct purpose

Descrição

Object oriented style:

CairoRadialGradient::__construct ( float $x0 , float $y0 , float $r0 , float $x1 , float $y1 , float $r1 )

Procedural style:

Creates a new radial gradient CairoPattern between the two circles defined by (x0, y0, r0) and (x1, y1, r1). Before using the gradient pattern, a number of color stops should be defined using CairoRadialGradient::addColorStopRgb() or CairoRadialGradient::addColorStopRgba().

Note: The coordinates here are in pattern space. For a new pattern, pattern space is identical to user space, but the relationship between the spaces can be changed with CairoRadialGradient::setMatrix().

Parâmetros

x0

x coordinate for the center of the start circle.

y0

y coordinate for the center of the start circle.

r0

radius of the start circle.

x1

x coordinate for the center of the end circle.

y1

y coordinate for the center of the end circle.

r1

radius of the end circle.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoRadialGradient::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoRadialGradient
CairoRadialGradient::getCircles
CairoRadialGradient


The getCircles purpose

CairoRadialGradient::__construct
CairoAntialias
CairoRadialGradient
PHP Manual

CairoRadialGradient::getCircles

(PECL cairo >= 0.1.0)

CairoRadialGradient::getCircles — The getCircles purpose

Descrição

public array CairoRadialGradient::getCircles ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoRadialGradient::getCircles() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoRadialGradient::__construct
CairoAntialias
CairoRadialGradient


The CairoAntialias class

Introdução

Enum class that specifies the type of antialiasing to do when rendering text or shapes.

Sinopse da classe

CairoAntialias {
/* Constants */
const integer CairoAntialias::MODE_DEFAULT = 0 ;
const integer CairoAntialias::MODE_NONE = 1 ;
const integer CairoAntialias::MODE_GRAY = 2 ;
const integer CairoAntialias::MODE_SUBPIXEL = 3 ;
}

Constantes pré-definidas

CairoAntialias Node Types

CairoAntialias::MODE_DEFAULT

Use the default antialiasing for the subsystem and target device

CairoAntialias::MODE_NONE

Use a bilevel alpha mask

CairoAntialias::MODE_GRAY

Perform single-color antialiasing (using shades of gray for black text on a white background, for example).

CairoAntialias::MODE_SUBPIXEL

Perform antialiasing by taking advantage of the order of subpixel elements on devices such as LCD panels.

CairoRadialGradient::getCircles
CairoContent
Cairo


The CairoContent class

Introdução

CairoContent is used to describe the content that a surface will contain, whether color information, alpha information (translucence vs. opacity), or both.

Note: The large values here are designed to keep CairoContent values distinct from CairoContent values so that the implementation can detect the error if users confuse the two types.

Sinopse da classe

CairoContent {
/* Constants */
const integer CairoContent::COLOR = 4096 ;
const integer CairoContent::ALPHA = 8192 ;
const integer CairoContent::COLOR_ALPHA = 12288 ;
}

Constantes pré-definidas

CairoContent Node Types

CairoContent::COLOR

The surface will hold color content only.

CairoContent::ALPHA

The surface will hold alpha content only.

CairoContent::COLOR_ALPHA

The surface will hold color and alpha content.

CairoAntialias
CairoExtend
Cairo


The CairoExtend class

Introdução

Description of the class.

Sinopse da classe

CairoExtend {
/* Constants */
const integer CairoExtend::NONE = 0 ;
const integer CairoExtend::REPEAT = 1 ;
const integer CairoExtend::REFLECT = 2 ;
const integer CairoExtend::PAD = 3 ;
}

Constantes pré-definidas

CairoExtend Node Types

CairoExtend::NONE

Description here...

CairoExtend::REPEAT

Description here...

CairoExtend::REFLECT

Description here...

CairoExtend::PAD

Description here...

CairoContent
CairoFormat
Cairo


The CairoFormat class

Introdução

CairoFormat enums are used to identify the memory format of the image data.

Sinopse da classe

CairoFormat {
/* Constants */
const integer CairoFormat::ARGB32 = 0 ;
const integer CairoFormat::RGB24 = 1 ;
const integer CairoFormat::A8 = 2 ;
const integer CairoFormat::A1 = 3 ;
/* Methods */
public static int strideForWidth ( int $format , int $width )
}

Constantes pré-definidas

CairoFormat Node Types

CairoFormat::ARGB32

Each pixel is a 32-bit quantity, with alpha in the upper 8 bits, then red, then green, then blue. The 32-bit quantities are stored native-endian. Pre-multiplied alpha is used. (That is, 50% transparent red is 0x80800000, not 0x80ff0000.)

CairoFormat::RGB24

Each pixel is a 32-bit quantity, with the upper 8 bits unused. Red, Green, and Blue are stored in the remaining 24 bits in that order.

CairoFormat::A8

Each pixel is a 8-bit quantity holding an alpha value.

CairoFormat::A1

Each pixel is a 1-bit quantity holding an alpha value. Pixels are packed together into 32-bit quantities. The ordering of the bits matches the endianess of the platform. On a big-endian machine, the first pixel is in the uppermost bit, on a little-endian machine the first pixel is in the least-significant bit.

Índice

  • CairoFormat::strideForWidth — Provides an appropiate stride to use
CairoExtend
CairoFormat::strideForWidth
Cairo


Provides an appropiate stride to use

CairoFormat
CairoFillRule
CairoFormat
PHP Manual

CairoFormat::strideForWidth

(PECL cairo >= 0.1.0)

CairoFormat::strideForWidth — Provides an appropiate stride to use

Descrição

public static int CairoFormat::strideForWidth ( int $format , int $width )

This method provides a stride value that will respect all alignment requirements of the accelerated image-rendering code within cairo.

Parâmetros

format

The desired CairoFormat to use

width

The width of the image

Valor Retornado

The appropriate stride to use given the desired format and width, or -1 if either the format is invalid or the width too large.

Exemplos

Exemplo #1 CairoFormat::strideForWidth() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoFormat
CairoFillRule
CairoFormat


The CairoFillRule class

Introdução

A CairoFillRule is used to select how paths are filled. For both fill rules, whether or not a point is included in the fill is determined by taking a ray from that point to infinity and looking at intersections with the path. The ray can be in any direction, as long as it doesn't pass through the end point of a segment or have a tricky intersection such as intersecting tangent to the path. (Note that filling is not actually implemented in this way. This is just a description of the rule that is applied.)

The default fill rule is CairoFillRule::WINDING.

Sinopse da classe

CairoFillRule {
/* Constants */
const integer CairoFillRule::WINDING = 0 ;
const integer CairoFillRule::EVEN_ODD = 1 ;
}

Constantes pré-definidas

CairoFillRule Node Types

CairoFillRule::WINDING

If the path crosses the ray from left-to-right, counts +1. If the path crosses the ray from right to left, counts -1. (Left and right are determined from the perspective of looking along the ray from the starting point.) If the total count is non-zero, the point will be filled.

CairoFillRule::EVEN_ODD

Counts the total number of intersections, without regard to the orientation of the contour. If the total number of intersections is odd, the point will be filled.

CairoFormat::strideForWidth
CairoFilter
Cairo


The CairoFilter class

Introdução

A CairoFilter is used to indicate what filtering should be applied when reading pixel values from patterns. See CairoPattern::setSource() or cairo_pattern_set_source() for indicating the desired filter to be used with a particular pattern.

Sinopse da classe

CairoFilter {
/* Constants */
const integer CairoFilter::FAST = 0 ;
const integer CairoFilter::GOOD = 1 ;
const integer CairoFilter::BEST = 2 ;
const integer CairoFilter::NEAREST = 3 ;
const integer CairoFilter::BILINEAR = 4 ;
const integer CairoFilter::GAUSSIAN = 5 ;
}

Constantes pré-definidas

CairoFilter Node Types

CairoFilter::FAST

A high-performance filter, with quality similar to CairoFilter::NEAREST

CairoFilter::GOOD

A reasonable-performance filter, with quality similar to CairoFilter::BILINEAR

CairoFilter::BEST

The highest-quality available, performance may not be suitable for interactive use.

CairoFilter::NEAREST

Nearest-neighbor filtering

CairoFilter::BILINEAR

Linear interpolation in two dimensions

CairoFilter::GAUSSIAN

This filter value is currently unimplemented, and should not be used in current code.

CairoFillRule
CairoHintMetrics
Cairo


The CairoHintMetrics class

Introdução

Specifies whether to hint font metrics; hinting font metrics means quantizing them so that they are integer values in device space. Doing this improves the consistency of letter and line spacing, however it also means that text will be laid out differently at different zoom factors.

Sinopse da classe

CairoHintMetrics {
/* Constants */
const integer CairoHintMetrics::METRICS_DEFAULT = 0 ;
const integer CairoHintMetrics::METRICS_OFF = 1 ;
const integer CairoHintMetrics::METRICS_ON = 2 ;
}

Constantes pré-definidas

CairoHintMetrics Node Types

CairoHintMetrics::METRICS_DEFAULT

Hint metrics in the default manner for the font backend and target device

CairoHintMetrics::METRICS_OFF

Do not hint font metrics

CairoHintMetrics::METRICS_ON

Hint font metrics

CairoFilter
CairoHintStyle
Cairo


The CairoHintStyle class

Introdução

Specifies the type of hinting to do on font outlines. Hinting is the process of fitting outlines to the pixel grid in order to improve the appearance of the result. Since hinting outlines involves distorting them, it also reduces the faithfulness to the original outline shapes. Not all of the outline hinting styles are supported by all font backends.

Sinopse da classe

CairoHintStyle {
/* Constants */
const integer CairoHintStyle::STYLE_DEFAULT = 0 ;
const integer CairoHintStyle::STYLE_NONE = 1 ;
const integer CairoHintStyle::STYLE_SLIGHT = 2 ;
const integer CairoHintStyle::STYLE_MEDIUM = 3 ;
const integer CairoHintStyle::STYLE_FULL = 4 ;
}

Constantes pré-definidas

CairoHintStyle Node Types

CairoHintStyle::STYLE_DEFAULT

Use the default hint style for font backend and target device

CairoHintStyle::STYLE_NONE

Do not hint outlines

CairoHintStyle::STYLE_SLIGHT

Hint outlines slightly to improve contrast while retaining good fidelity to the original shapes.

CairoHintStyle::STYLE_MEDIUM

Hint outlines with medium strength giving a compromise between fidelity to the original shapes and contrast

CairoHintStyle::STYLE_FULL

Hint outlines to maximize contrast

CairoHintMetrics
CairoLineCap
Cairo


The CairoLineCap class

Introdução

Specifies how to render the endpoints of the path when stroking.

The default line cap style is CairoLineCap::BUTT.

Sinopse da classe

CairoLineCap {
/* Constants */
const integer CairoLineCap::BUTT = 0 ;
const integer CairoLineCap::ROUND = 1 ;
const integer CairoLineCap::SQUARE = 2 ;
}

Constantes pré-definidas

CairoLineCap Node Types

CairoLineCap::BUTT

Start(stop) the line exactly at the start(end) point

CairoLineCap::ROUND

Use a round ending, the center of the circle is the end point

CairoLineCap::SQUARE

Use squared ending, the center of the square is the end point

CairoHintStyle
CairoLineJoin
Cairo


The CairoLineJoin class

Introdução

Description of the class.

Sinopse da classe

CairoLineJoin {
/* Constants */
const integer CairoLineJoin::MITER = 0 ;
const integer CairoLineJoin::ROUND = 1 ;
const integer CairoLineJoin::BEVEL = 2 ;
}

Constantes pré-definidas

CairoLineJoin Node Types

CairoLineJoin::MITER

Description here...

CairoLineJoin::ROUND

Description here...

CairoLineJoin::BEVEL

Description here...

CairoLineCap
CairoMatrix
Cairo


The CairoMatrix class

Introdução

Matrices are used throughout cairo to convert between different coordinate spaces.

Sinopse da classe

CairoMatrix {
/* Methods */
__construct ([ float $xx = 1.0 [, float $yx = 0.0 [, float $xy = 0.0 [, float $yy = 1.0 [, float $x0 = 0.0 [, float $y0 = 0.0 ]]]]]] )
public static void initIdentity ( void )
public static void initRotate ( float $radians )
public static void initScale ( float $sx , float $sy )
public static void initTranslate ( float $tx , float $ty )
public void invert ( void )
public static CairoMatrix multiply ( CairoMatrix $matrix1 , CairoMatrix $matrix2 )
public void rotate ( string $sx , string $sy )
public void scale ( float $sx , float $sy )
public array transformDistance ( string $dx , string $dy )
public array transformPoint ( string $dx , string $dy )
public void translate ( string $tx , string $ty )
}

Índice

  • CairoMatrix::__construct — Creates a new CairoMatrix object
  • CairoMatrix::initIdentity — Creates a new identity matrix
  • CairoMatrix::initRotate — Creates a new rotated matrix
  • CairoMatrix::initScale — Creates a new scaling matrix
  • CairoMatrix::initTranslate — Creates a new translation matrix
  • CairoMatrix::invert — The invert purpose
  • CairoMatrix::multiply — The multiply purpose
  • CairoMatrix::rotate — The rotate purpose
  • CairoMatrix::scale — Applies scaling to a matrix
  • CairoMatrix::transformDistance — The transformDistance purpose
  • CairoMatrix::transformPoint — The transformPoint purpose
  • CairoMatrix::translate — The translate purpose
CairoLineJoin
CairoMatrix::__construct
Cairo


Creates a new CairoMatrix object

CairoMatrix
CairoMatrix::initIdentity
CairoMatrix
PHP Manual

CairoMatrix::__construct

cairo_matrix_init

(PECL cairo >= 0.1.0)

CairoMatrix::__construct -- cairo_matrix_init — Creates a new CairoMatrix object

Descrição

Object oriented style (method):

CairoMatrix::__construct ([ float $xx = 1.0 [, float $yx = 0.0 [, float $xy = 0.0 [, float $yy = 1.0 [, float $x0 = 0.0 [, float $y0 = 0.0 ]]]]]] )

Procedural style:

object cairo_matrix_init ([ float $xx = 1.0 [, float $yx = 0.0 [, float $xy = 0.0 [, float $yy = 1.0 [, float $x0 = 0.0 [, float $y0 = 0.0 ]]]]]] )

Returns new CairoMatrix object. Matrices are used throughout cairo to convert between different coordinate spaces. Sets matrix to be the affine transformation given by xx, yx, xy, yy, x0, y0. The transformation is given by: x_new = xx * x + xy * y + x0; and y_new = yx * x + yy * y + y0;

Parâmetros

xx

xx component of the affine transformation

yx

yx component of the affine transformation

xy

xy component of the affine transformation

yy

yy component of the affine transformation

x0

X translation component of the affine transformation

y0

Y translation component of the affine transformation

Valor Retornado

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Create a new Matrix */
$matrix = new CairoMatrix(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
?>

Exemplo #2 Procedural style

<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
?>

Veja Também

  • CairoMatrix::initIdentity() - Creates a new identity matrix
  • CairoMatrix::initRotate() - Creates a new rotated matrix
  • CairoMatrix::initScale() - Creates a new scaling matrix
  • CairoMatrix::initTranslate() - Creates a new translation matrix

CairoMatrix
CairoMatrix::initIdentity
CairoMatrix


Creates a new identity matrix

CairoMatrix::__construct
CairoMatrix::initRotate
CairoMatrix
PHP Manual

CairoMatrix::initIdentity

cairo_matrix_init_identity

(PECL cairo >= 0.1.0)

CairoMatrix::initIdentity -- cairo_matrix_init_identity — Creates a new identity matrix

Descrição

Object oriented style (method):

public static void CairoMatrix::initIdentity ( void )

Procedural style:

object cairo_matrix_init_identity ( void )

Creates a new matrix that is an identity transformation. An identity transformation means the source data is copied into the destination data without change

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Create a new Matrix */
$matrix = CairoMatrix::initIdentity();
?>

Exemplo #2 Procedural style

<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init_identity();
?>

Veja Também

  • CairoMatrix::__construct() - Creates a new CairoMatrix object
  • CairoMatrix::initRotate() - Creates a new rotated matrix
  • CairoMatrix::initScale() - Creates a new scaling matrix
  • CairoMatrix::initTranslate() - Creates a new translation matrix

CairoMatrix::__construct
CairoMatrix::initRotate
CairoMatrix


Creates a new rotated matrix

CairoMatrix::initIdentity
CairoMatrix::initScale
CairoMatrix
PHP Manual

CairoMatrix::initRotate

cairo_matrix_init_rotate

(PECL cairo >= 0.1.0)

CairoMatrix::initRotate -- cairo_matrix_init_rotate — Creates a new rotated matrix

Descrição

Object oriented style (method):

public static void CairoMatrix::initRotate ( float $radians )

Procedural style:

object cairo_matrix_init_rotate ( float $radians )

Creats a new matrix to a transformation that rotates by radians provided

Parâmetros

radians

angle of rotation, in radians. The direction of rotation is defined such that positive angles rotate in the direction from the positive X axis toward the positive Y axis. With the default axis orientation of cairo, positive angles rotate in a clockwise direction.

Valor Retornado

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Create a new Matrix */
$matrix = CairoMatrix::initRotate(0.3);
?>

Exemplo #2 Procedural style

<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init_rotate(0.3);
?>

Veja Também

  • CairoMatrix::__construct() - Creates a new CairoMatrix object
  • CairoMatrix::initIdentity() - Creates a new identity matrix
  • CairoMatrix::initScale() - Creates a new scaling matrix
  • CairoMatrix::initTranslate() - Creates a new translation matrix

CairoMatrix::initIdentity
CairoMatrix::initScale
CairoMatrix


Creates a new scaling matrix

CairoMatrix::initRotate
CairoMatrix::initTranslate
CairoMatrix
PHP Manual

CairoMatrix::initScale

cairo_matrix_init_scale

cairo_matrix_create_scale

(PECL cairo >= 0.1.0)

CairoMatrix::initScale -- cairo_matrix_init_scale -- cairo_matrix_create_scale — Creates a new scaling matrix

Descrição

Object oriented style (method):

public static void CairoMatrix::initScale ( float $sx , float $sy )

Procedural style:

object cairo_matrix_init_scale ( float $sx , float $sy )

Creates a new matrix to a transformation that scales by sx and sy in the X and Y dimensions, respectively.

Parâmetros

sx

scale factor in the X direction

sy

scale factor in the Y direction

Valor Retornado

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Create a new Matrix */
$matrix = CairoMatrix::initScale(1.0, 2.0);
?>

Exemplo #2 Procedural style

<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init_scale(1.0, 2.0);
?>

Veja Também

  • CairoMatrix::__construct() - Creates a new CairoMatrix object
  • CairoMatrix::initIdentity() - Creates a new identity matrix
  • CairoMatrix::initRotate() - Creates a new rotated matrix
  • CairoMatrix::initTranslate() - Creates a new translation matrix

CairoMatrix::initRotate
CairoMatrix::initTranslate
CairoMatrix


Creates a new translation matrix

CairoMatrix::initScale
CairoMatrix::invert
CairoMatrix
PHP Manual

CairoMatrix::initTranslate

cairo_matrix_init_translate

(PECL cairo >= 0.1.0)

CairoMatrix::initTranslate -- cairo_matrix_init_translate — Creates a new translation matrix

Descrição

Object oriented style (method):

public static void CairoMatrix::initTranslate ( float $tx , float $ty )

Procedural style:

object cairo_matrix_init_translate ( float $tx , float $ty )

Creates a new matrix to a transformation that translates by tx and ty in the X and Y dimensions, respectively.

Parâmetros

tx

amount to translate in the X direction

ty

amount to translate in the Y direction

Valor Retornado

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

Exemplos

Exemplo #1 Object oriented style

<?php
/* Create a new Matrix */
$matrix = CairoMatrix::initTranslate(1.0, 2.0);
?>

Exemplo #2 Procedural style

<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init_translate(1.0, 2.0);
?>

Veja Também

  • CairoMatrix::__construct() - Creates a new CairoMatrix object
  • CairoMatrix::initIdentity() - Creates a new identity matrix
  • CairoMatrix::initRotate() - Creates a new rotated matrix
  • CairoMatrix::initScale() - Creates a new scaling matrix

CairoMatrix::initScale
CairoMatrix::invert
CairoMatrix


The invert purpose

CairoMatrix::initTranslate
CairoMatrix::multiply
CairoMatrix
PHP Manual

CairoMatrix::invert

(PECL cairo >= 0.1.0)

CairoMatrix::invert — The invert purpose

Descrição

public void CairoMatrix::invert ( void )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoMatrix::invert() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::initTranslate
CairoMatrix::multiply
CairoMatrix


The multiply purpose

CairoMatrix::invert
CairoMatrix::rotate
CairoMatrix
PHP Manual

CairoMatrix::multiply

(PECL cairo >= 0.1.0)

CairoMatrix::multiply — The multiply purpose

Descrição

public static CairoMatrix CairoMatrix::multiply ( CairoMatrix $matrix1 , CairoMatrix $matrix2 )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

matrix1

Description...

matrix2

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoMatrix::multiply() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::invert
CairoMatrix::rotate
CairoMatrix


The rotate purpose

CairoMatrix::multiply
CairoMatrix::scale
CairoMatrix
PHP Manual

CairoMatrix::rotate

cairo_rotate

(PECL cairo >= 0.1.0)

CairoMatrix::rotate -- cairo_rotate — The rotate purpose

Descrição

Object oriented style (method):

public void CairoMatrix::rotate ( string $sx , string $sy )

Procedural style:

void cairo_rotate ( CairoContext $context , string $angle )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

angle

Description...

sx

Description...

sy

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::multiply
CairoMatrix::scale
CairoMatrix


Applies scaling to a matrix

CairoMatrix::rotate
CairoMatrix::transformDistance
CairoMatrix
PHP Manual

CairoMatrix::scale

cairo_matrix_scale

(PECL cairo >= 0.1.0)

CairoMatrix::scale -- cairo_matrix_scale — Applies scaling to a matrix

Descrição

Object oriented style (method):

public void CairoMatrix::scale ( float $sx , float $sy )

Procedural style:

void cairo_matrix_scale ( CairoContext $context , float $sx , float $sy )

Applies scaling by sx, sy to the transformation in the matrix. The effect of the new transformation is to first scale the coordinates by sx and sy, then apply the original transformation to the coordinates.

Parâmetros

matrix

Procedural only - CairoMatrix instance

sx

scale factor in the X direction

sy

scale factor in the Y direction

Exemplos

Exemplo #1 Object oriented style

<?php
/* Apply scaling to a matrix */
$matrix = new CairoMatrix(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
$matrix->scale(0.2, 2.0);
?>

Exemplo #2 Procedural style

<?php
/* Apply scaling to a matrix */
$matrix = cairo_matrix_init(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
cairo_matrix_scale($matrix, 0.2, 2.0);
?>

Veja Também

  • CairoMatrix::initScale() - Creates a new scaling matrix

CairoMatrix::rotate
CairoMatrix::transformDistance
CairoMatrix


The transformDistance purpose

CairoMatrix::scale
CairoMatrix::transformPoint
CairoMatrix
PHP Manual

CairoMatrix::transformDistance

(PECL cairo >= 0.1.0)

CairoMatrix::transformDistance — The transformDistance purpose

Descrição

public array CairoMatrix::transformDistance ( string $dx , string $dy )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

dx

Description...

dy

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoMatrix::transformDistance() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::scale
CairoMatrix::transformPoint
CairoMatrix


The transformPoint purpose

CairoMatrix::transformDistance
CairoMatrix::translate
CairoMatrix
PHP Manual

CairoMatrix::transformPoint

(PECL cairo >= 0.1.0)

CairoMatrix::transformPoint — The transformPoint purpose

Descrição

public array CairoMatrix::transformPoint ( string $dx , string $dy )

The method description goes here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

dx

Description...

dy

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 CairoMatrix::transformPoint() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::transformDistance
CairoMatrix::translate
CairoMatrix


The translate purpose

CairoMatrix::transformPoint
CairoOperator
CairoMatrix
PHP Manual

CairoMatrix::translate

cairo_translate

(PECL cairo >= 0.1.0)

CairoMatrix::translate -- cairo_translate — The translate purpose

Descrição

Object oriented style (method):

public void CairoMatrix::translate ( string $tx , string $ty )

Procedural style:

void cairo_translate ( CairoContext $context , string $x , string $y )

Description here.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

context

Description...

x

Description...

y

Description...

tx

Description...

ty

Description...

Valor Retornado

Description...

Exemplos

Exemplo #1 Object oriented style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Exemplo #2 Procedural style

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

CairoMatrix::transformPoint
CairoOperator
CairoMatrix


The CairoOperator class

Introdução

This is used to set the compositing operator for all cairo drawing operations.

The default operator is CairoOperator::OVER

The operators marked as unbounded modify their destination even outside of the mask layer (that is, their effect is not bound by the mask layer). However, their effect can still be limited by way of clipping.

To keep things simple, the operator descriptions here document the behavior for when both source and destination are either fully transparent or fully opaque. The actual implementation works for translucent layers too. For a more detailed explanation of the effects of each operator, including the mathematical definitions, see http://cairographics.org/operators/.

Sinopse da classe

CairoOperator {
/* Constants */
const integer CairoOperator::CLEAR = 0 ;
const integer CairoOperator::SOURCE = 1 ;
const integer CairoOperator::OVER = 2 ;
const integer CairoOperator::IN = 3 ;
const integer CairoOperator::OUT = 4 ;
const integer CairoOperator::ATOP = 5 ;
const integer CairoOperator::DEST = 6 ;
const integer CairoOperator::DEST_OVER = 7 ;
const integer CairoOperator::DEST_IN = 8 ;
const integer CairoOperator::DEST_OUT = 9 ;
const integer CairoOperator::DEST_ATOP = 10 ;
const integer CairoOperator::XOR = 11 ;
const integer CairoOperator::ADD = 12 ;
const integer CairoOperator::SATURATE = 13 ;
}

Constantes pré-definidas

CairoOperator Node Types

CairoOperator::CLEAR

Clear destination layer (bounded)

CairoOperator::SOURCE

Replace destination layer (bounded)

CairoOperator::OVER

Draw source layer on top of destination layer (bounded)

CairoOperator::IN

Draw source where there was destination content (unbounded)

CairoOperator::OUT

Draw source where there was no destination content (unbounded)

CairoOperator::ATOP

Draw source on top of destination content and only there

CairoOperator::DEST

Ignore the source

CairoOperator::DEST_OVER

Draw destination on top of source

CairoOperator::DEST_IN

Leave destination only where there was source content (unbounded)

CairoOperator::DEST_OUT

Leave destination only where there was no source content

CairoOperator::DEST_ATOP

Leave destination on top of source content and only there (unbounded)

CairoOperator::XOR

Source and destination are shown where there is only one of them

CairoOperator::ADD

Source and destination layers are accumulated

CairoOperator::SATURATE

Like CairoOperator::OVER, but assuming source and dest are disjoint geometries

CairoMatrix::translate
CairoPath
Cairo


The CairoPath class

Introdução

Description of the class.

Note: CairoPath class cannot be instantiated directly, doing so will result in Fatal Error if used or passed

Sinopse da classe

CairoPath {
}
CairoOperator
CairoPsLevel
Cairo


The CairoPsLevel class

Introdução

Description of the class.

Sinopse da classe

CairoPsLevel {
/* Constants */
const integer CairoPsLevel::LEVEL_2 = 0 ;
const integer CairoPsLevel::LEVEL_3 = 1 ;
}

Constantes pré-definidas

CairoPsLevel Node Types

CairoPsLevel::LEVEL_2

Description here...

CairoPsLevel::LEVEL_3

Description here...

CairoPath
CairoSubpixelOrder
Cairo


The CairoSubpixelOrder class

Introdução

Description of the class.

Sinopse da classe

CairoSubpixelOrder {
/* Constants */
const integer CairoSubpixelOrder::ORDER_DEFAULT = 0 ;
const integer CairoSubpixelOrder::ORDER_RGB = 1 ;
const integer CairoSubpixelOrder::ORDER_BGR = 2 ;
const integer CairoSubpixelOrder::ORDER_VRGB = 3 ;
const integer CairoSubpixelOrder::ORDER_VBGR = 4 ;
}

Constantes pré-definidas

CairoSubpixelOrder Node Types

CairoSubpixelOrder::ORDER_DEFAULT

Description here...

CairoSubpixelOrder::ORDER_RGB

Description here...

CairoSubpixelOrder::ORDER_BGR

Description here...

CairoSubpixelOrder::ORDER_VRGB

Description here...

CairoSubpixelOrder::ORDER_VBGR

Description here...

CairoPsLevel
CairoSvgVersion
Cairo


The CairoSvgVersion class

Introdução

Description of the class.

Sinopse da classe

CairoSvgVersion {
/* Constants */
const integer CairoSvgVersion::VERSION_1_1 = 0 ;
const integer CairoSvgVersion::VERSION_1_2 = 1 ;
}

Constantes pré-definidas

CairoSvgVersion Node Types

CairoSvgVersion::VERSION_1_1

Description here...

CairoSvgVersion::VERSION_1_2

Description here...

CairoSubpixelOrder
Extensões Relacionadas a Mail
Cairo


Extensões Relacionadas a Mail

  • Cyrus — AdministraÃ§Ã£o de Cyrus IMAP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Cyrus
  • IMAP — IMAP, POP3 and NNTP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • IMAP Funções
  • Mail
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Mail
  • Mailparse
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Mailparse Funções
  • vpopmail
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da vpopmail
CairoSvgVersion
Cyrus
Referência das Funções


AdministraÃ§Ã£o de Cyrus IMAP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Cyrus
    • cyrus_authenticate — Authenticate against a Cyrus IMAP server
    • cyrus_bind — Bind callbacks to a Cyrus IMAP connection
    • cyrus_close — Close connection to a Cyrus IMAP server
    • cyrus_connect — Connect to a Cyrus IMAP server
    • cyrus_query — Send a query to a Cyrus IMAP server
    • cyrus_unbind — Unbind ...
Extensões Relacionadas a Mail
Introdução
Extensões Relacionadas a Mail


Introdução

Nota: Esta extensão não está disponível na plataforma Windows.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

Cyrus
Instalação/Configuração
Cyrus


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Cyrus


Instalação

Para habilitar suporte a Cyrus IMAP e para usar estas funções você tem que compilar o PHP com a opção --with-cyrus .

Aviso

A extensão IMAP não pode ser utilizada em conjunto com as extensões recode, YAZ ou Cyrus. Isto ocorre pelo fato de elas compartilharem os mesmos símbolos internos.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão define um identificador de conexão Cyrus IMAP retornado pela cyrus_connect().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CYRUS_CONN_NONSYNCLITERAL (integer)
CYRUS_CONN_INITIALRESPONSE (integer)
CYRUS_CALLBACK_NUMBERED (integer)
CYRUS_CALLBACK_NOLITERAL (integer)
Tipos Resource
Funções para Cyrus
Cyrus


Funções para Cyrus

Índice

  • cyrus_authenticate — Authenticate against a Cyrus IMAP server
  • cyrus_bind — Bind callbacks to a Cyrus IMAP connection
  • cyrus_close — Close connection to a Cyrus IMAP server
  • cyrus_connect — Connect to a Cyrus IMAP server
  • cyrus_query — Send a query to a Cyrus IMAP server
  • cyrus_unbind — Unbind ...
Constantes pré-definidas
cyrus_authenticate
Cyrus


Authenticate against a Cyrus IMAP server

Funções para Cyrus
cyrus_bind
Funções para Cyrus
PHP Manual

cyrus_authenticate

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_authenticate — Authenticate against a Cyrus IMAP server

Descrição

void cyrus_authenticate ( resource $connection [, string $mechlist [, string $service [, string $user [, int $minssf [, int $maxssf [, string $authname [, string $password ]]]]]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Funções para Cyrus
cyrus_bind
Funções para Cyrus


Bind callbacks to a Cyrus IMAP connection

cyrus_authenticate
cyrus_close
Funções para Cyrus
PHP Manual

cyrus_bind

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_bind — Bind callbacks to a Cyrus IMAP connection

Descrição

bool cyrus_bind ( resource $connection , array $callbacks )

Binds callbacks to a Cyrus IMAP connection.

Parâmetros

connection

The connection handle.

callbacks

An array of callbacks.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

cyrus_authenticate
cyrus_close
Funções para Cyrus


Close connection to a Cyrus IMAP server

cyrus_bind
cyrus_connect
Funções para Cyrus
PHP Manual

cyrus_close

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_close — Close connection to a Cyrus IMAP server

Descrição

bool cyrus_close ( resource $connection )

Closes the connection to a Cyrus IMAP server.

Parâmetros

connection

The connection handle.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

cyrus_bind
cyrus_connect
Funções para Cyrus


Connect to a Cyrus IMAP server

cyrus_close
cyrus_query
Funções para Cyrus
PHP Manual

cyrus_connect

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_connect — Connect to a Cyrus IMAP server

Descrição

resource cyrus_connect ([ string $host [, string $port [, int $flags ]]] )

Connects to a Cyrus IMAP server.

Parâmetros

host

The Cyrus IMAP host name.

port

The port number.

flags

Valor Retornado

Returns a connection handler on success or FALSE on failure.

cyrus_close
cyrus_query
Funções para Cyrus


Send a query to a Cyrus IMAP server

cyrus_connect
cyrus_unbind
Funções para Cyrus
PHP Manual

cyrus_query

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_query — Send a query to a Cyrus IMAP server

Descrição

array cyrus_query ( resource $connection , string $query )

Sends a query to a Cyrus IMAP server.

Parâmetros

connection

The connection handle.

query

The query string.

Valor Retornado

Returns an associative array with the following keys: text, msgno, and keyword.

cyrus_connect
cyrus_unbind
Funções para Cyrus


Unbind ...

cyrus_query
IMAP
Funções para Cyrus
PHP Manual

cyrus_unbind

(PHP 4 >= 4.1.0, PECL cyrus 1.0)

cyrus_unbind — Unbind ...

Descrição

bool cyrus_unbind ( resource $connection , string $trigger_name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

connection

The connection handle.

trigger_name

The trigger name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

cyrus_query
IMAP
Funções para Cyrus


IMAP, POP3 and NNTP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • IMAP Funções
    • imap_8bit — Convert an 8bit string to a quoted-printable string
    • imap_alerts — Returns all IMAP alert messages that have occurred
    • imap_append — Append a string message to a specified mailbox
    • imap_base64 — Decode BASE64 encoded text
    • imap_binary — Convert an 8bit string to a base64 string
    • imap_body — Read the message body
    • imap_bodystruct — Read the structure of a specified body section of a specific message
    • imap_check — Check current mailbox
    • imap_clearflag_full — Clears flags on messages
    • imap_close — Close an IMAP stream
    • imap_createmailbox — Create a new mailbox
    • imap_delete — Mark a message for deletion from current mailbox
    • imap_deletemailbox — Delete a mailbox
    • imap_errors — Returns all of the IMAP errors that have occured
    • imap_expunge — Delete all messages marked for deletion
    • imap_fetch_overview — Read an overview of the information in the headers of the given message
    • imap_fetchbody — Fetch a particular section of the body of the message
    • imap_fetchheader — Returns header for a message
    • imap_fetchmime — Fetch MIME headers for a particular section of the message
    • imap_fetchstructure — Read the structure of a particular message
    • imap_gc — Clears IMAP cache
    • imap_get_quota — Retrieve the quota level settings, and usage statics per mailbox
    • imap_get_quotaroot — Retrieve the quota settings per user
    • imap_getacl — Gets the ACL for a given mailbox
    • imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one
    • imap_getsubscribed — List all the subscribed mailboxes
    • imap_header — Sinônimo de imap_headerinfo
    • imap_headerinfo — Read the header of the message
    • imap_headers — Returns headers for all messages in a mailbox
    • imap_last_error — Gets the last IMAP error that occurred during this page request
    • imap_list — Read the list of mailboxes
    • imap_listmailbox — Sinônimo de imap_list
    • imap_listscan — Returns the list of mailboxes that matches the given text
    • imap_listsubscribed — Sinônimo de imap_lsub
    • imap_lsub — List all the subscribed mailboxes
    • imap_mail_compose — Create a MIME message based on given envelope and body sections
    • imap_mail_copy — Copy specified messages to a mailbox
    • imap_mail_move — Move specified messages to a mailbox
    • imap_mail — Send an email message
    • imap_mailboxmsginfo — Get information about the current mailbox
    • imap_mime_header_decode — Decode MIME header elements
    • imap_msgno — Gets the message sequence number for the given UID
    • imap_num_msg — Gets the number of messages in the current mailbox
    • imap_num_recent — Gets the number of recent messages in current mailbox
    • imap_open — Open an IMAP stream to a mailbox
    • imap_ping — Check if the IMAP stream is still active
    • imap_qprint — Convert a quoted-printable string to an 8 bit string
    • imap_renamemailbox — Rename an old mailbox to new mailbox
    • imap_reopen — Reopen IMAP stream to new mailbox
    • imap_rfc822_parse_adrlist — Parses an address string
    • imap_rfc822_parse_headers — Parse mail headers from a string
    • imap_rfc822_write_address — Returns a properly formatted email address given the mailbox, host, and personal info
    • imap_savebody — Save a specific body section to a file
    • imap_scanmailbox — Sinônimo de imap_listscan
    • imap_search — This function returns an array of messages matching the given search criteria
    • imap_set_quota — Sets a quota for a given mailbox
    • imap_setacl — Sets the ACL for a giving mailbox
    • imap_setflag_full — Sets flags on messages
    • imap_sort — Gets and sort messages
    • imap_status — Returns status information on a mailbox
    • imap_subscribe — Subscribe to a mailbox
    • imap_thread — Returns a tree of threaded message
    • imap_timeout — Set or fetch imap timeout
    • imap_uid — This function returns the UID for the given message sequence number
    • imap_undelete — Unmark the message which is marked deleted
    • imap_unsubscribe — Unsubscribe from a mailbox
    • imap_utf7_decode — Decodes a modified UTF-7 encoded string
    • imap_utf7_encode — Converts ISO-8859-1 string to modified UTF-7 text
    • imap_utf8 — Converts MIME-encoded text to UTF-8
cyrus_unbind
Introdução
Extensões Relacionadas a Mail


Introdução

These functions enable you to operate with the IMAP protocol, as well as the NNTP, POP3 and local mailbox access methods.

Be warned, however, that some IMAP functions will not work correctly with the POP protocol.

IMAP
Instalação/Configuração
IMAP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
IMAP


Dependências

This extension requires the c-client library to be installed. Grab the latest version from » ftp://ftp.cac.washington.edu/imap/ and compile it.

It's important that you do not copy the IMAP source files directly into the system include directory as there may be conflicts. Instead, create a new directory inside the system include directory, such as /usr/local/imap-2000b/ (location and name depend on your setup and IMAP version), and inside this new directory create additional directories named lib/ and include/. From the c-client directory from your IMAP source tree, copy all the *.h files into include/ and all the *.c files into lib/. Additionally when you compiled IMAP, a file named c-client.a was created. Also put this in the lib/ directory but rename it as libc-client.a.

Nota:

To build the c-client library with SSL or/and Kerberos support read the docs supplied with the package.

Nota: In Mandrake Linux, the IMAP library (libc-client.a) is compiled without Kerberos support. A separate version with SSL (client-PHP4.a) is installed. The library must be recompiled in order to add Kerberos support.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To get these functions to work, you have to compile PHP with --with-imap[=DIR] , where DIR is the c-client install prefix. From our example above, you would use --with-imap=/usr/local/imap-2000b . This location depends on where you created this directory according to the description above. Windows users may include the php_imap.dll DLL in php.ini.

IMAP is not supported on systems earlier than Windows 2000. This is because it uses encryption functions in order to enable SSL connections to the mail servers.

Nota: Depending on how the c-client was configured, you might also need to add --with-imap-ssl=/path/to/openssl/ and/or --with-kerberos=/path/to/kerberos to the PHP configure line.

Aviso

A extensão IMAP não pode ser utilizada em conjunto com as extensões recode, YAZ ou Cyrus. Isto ocorre pelo fato de elas compartilharem os mesmos símbolos internos.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

NIL (integer)
OP_DEBUG (integer)
OP_READONLY (integer)
Open mailbox read-only
OP_ANONYMOUS (integer)
Don't use or update a .newsrc for news (NNTP only)
OP_SHORTCACHE (integer)
OP_SILENT (integer)
OP_PROTOTYPE (integer)
OP_HALFOPEN (integer)
For IMAP and NNTP names, open a connection but don't open a mailbox.
OP_EXPUNGE (integer)
OP_SECURE (integer)
CL_EXPUNGE (integer)
silently expunge the mailbox before closing when calling imap_close()
FT_UID (integer)
The parameter is a UID
FT_PEEK (integer)
Do not set the \Seen flag if not already set
FT_NOT (integer)
FT_INTERNAL (integer)
The return string is in internal format, will not canonicalize to CRLF.
FT_PREFETCHTEXT (integer)
ST_UID (integer)
The sequence argument contains UIDs instead of sequence numbers
ST_SILENT (integer)
ST_SET (integer)
CP_UID (integer)
the sequence numbers contain UIDS
CP_MOVE (integer)
Delete the messages from the current mailbox after copying with imap_mail_copy()
SE_UID (integer)
Return UIDs instead of sequence numbers
SE_FREE (integer)
SE_NOPREFETCH (integer)
Don't prefetch searched messages
SO_FREE (integer)
SO_NOSERVER (integer)
SA_MESSAGES (integer)
SA_RECENT (integer)
SA_UNSEEN (integer)
SA_UIDNEXT (integer)
SA_UIDVALIDITY (integer)
SA_ALL (integer)
LATT_NOINFERIORS (integer)
This mailbox has no "children" (there are no mailboxes below this one).
LATT_NOSELECT (integer)
This is only a container, not a mailbox - you cannot open it.
LATT_MARKED (integer)
This mailbox is marked. Only used by UW-IMAPD.
LATT_UNMARKED (integer)
This mailbox is not marked. Only used by UW-IMAPD.
SORTDATE (integer)
Sort criteria for imap_sort(): message Date
SORTARRIVAL (integer)
Sort criteria for imap_sort(): arrival date
SORTFROM (integer)
Sort criteria for imap_sort(): mailbox in first From address
SORTSUBJECT (integer)
Sort criteria for imap_sort(): message subject
SORTTO (integer)
Sort criteria for imap_sort(): mailbox in first To address
SORTCC (integer)
Sort criteria for imap_sort(): mailbox in first cc address
SORTSIZE (integer)
Sort criteria for imap_sort(): size of message in octets
TYPETEXT (integer)
TYPEMULTIPART (integer)
TYPEMESSAGE (integer)
TYPEAPPLICATION (integer)
TYPEAUDIO (integer)
TYPEIMAGE (integer)
TYPEVIDEO (integer)
TYPEOTHER (integer)
ENC7BIT (integer)
ENC8BIT (integer)
ENCBINARY (integer)
ENCBASE64 (integer)
ENCQUOTEDPRINTABLE (integer)
ENCOTHER (integer)
IMAP_OPENTIMEOUT (integer)
IMAP_READTIMEOUT (integer)
IMAP_WRITETIMEOUT (integer)
IMAP_CLOSETIMEOUT (integer)
LATT_REFERRAL (integer)
LATT_HASCHILDREN (integer)
LATT_HASNOCHILDREN (integer)
TYPEMODEL (integer)
IMAP_GC_ELT (integer)
Garbage collector, clear message cache elements.
IMAP_GC_ENV (integer)
Garbage collector, clear envelopes and bodies.
IMAP_GC_TEXTS (integer)
Garbage collector, clear texts.
Tipos Resource
IMAP Funções
IMAP


IMAP Funções

Veja Também

This document can't go into detail on all the topics touched by the provided functions. Further information is provided by the documentation of the c-client library source (docs/internal.txt). and the following RFC documents:

  • » RFC2821: Simple Mail Transfer Protocol (SMTP).
  • » RFC2822: Standard for ARPA internet text messages.
  • » RFC2060: Internet Message Access Protocol (IMAP) Version 4rev1.
  • » RFC1939: Post Office Protocol Version 3 (POP3).
  • » RFC977: Network News Transfer Protocol (NNTP).
  • » RFC2076: Common Internet Message Headers.
  • » RFC2045 , » RFC2046 , » RFC2047 , » RFC2048 & » RFC2049: Multipurpose Internet Mail Extensions (MIME).
A detailed overview is also available in the books » Programming Internet Email by David Wood and » Managing IMAP by Dianna Mullet & Kevin Mullet.

Índice

  • imap_8bit — Convert an 8bit string to a quoted-printable string
  • imap_alerts — Returns all IMAP alert messages that have occurred
  • imap_append — Append a string message to a specified mailbox
  • imap_base64 — Decode BASE64 encoded text
  • imap_binary — Convert an 8bit string to a base64 string
  • imap_body — Read the message body
  • imap_bodystruct — Read the structure of a specified body section of a specific message
  • imap_check — Check current mailbox
  • imap_clearflag_full — Clears flags on messages
  • imap_close — Close an IMAP stream
  • imap_createmailbox — Create a new mailbox
  • imap_delete — Mark a message for deletion from current mailbox
  • imap_deletemailbox — Delete a mailbox
  • imap_errors — Returns all of the IMAP errors that have occured
  • imap_expunge — Delete all messages marked for deletion
  • imap_fetch_overview — Read an overview of the information in the headers of the given message
  • imap_fetchbody — Fetch a particular section of the body of the message
  • imap_fetchheader — Returns header for a message
  • imap_fetchmime — Fetch MIME headers for a particular section of the message
  • imap_fetchstructure — Read the structure of a particular message
  • imap_gc — Clears IMAP cache
  • imap_get_quota — Retrieve the quota level settings, and usage statics per mailbox
  • imap_get_quotaroot — Retrieve the quota settings per user
  • imap_getacl — Gets the ACL for a given mailbox
  • imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one
  • imap_getsubscribed — List all the subscribed mailboxes
  • imap_header — Sinônimo de imap_headerinfo
  • imap_headerinfo — Read the header of the message
  • imap_headers — Returns headers for all messages in a mailbox
  • imap_last_error — Gets the last IMAP error that occurred during this page request
  • imap_list — Read the list of mailboxes
  • imap_listmailbox — Sinônimo de imap_list
  • imap_listscan — Returns the list of mailboxes that matches the given text
  • imap_listsubscribed — Sinônimo de imap_lsub
  • imap_lsub — List all the subscribed mailboxes
  • imap_mail_compose — Create a MIME message based on given envelope and body sections
  • imap_mail_copy — Copy specified messages to a mailbox
  • imap_mail_move — Move specified messages to a mailbox
  • imap_mail — Send an email message
  • imap_mailboxmsginfo — Get information about the current mailbox
  • imap_mime_header_decode — Decode MIME header elements
  • imap_msgno — Gets the message sequence number for the given UID
  • imap_num_msg — Gets the number of messages in the current mailbox
  • imap_num_recent — Gets the number of recent messages in current mailbox
  • imap_open — Open an IMAP stream to a mailbox
  • imap_ping — Check if the IMAP stream is still active
  • imap_qprint — Convert a quoted-printable string to an 8 bit string
  • imap_renamemailbox — Rename an old mailbox to new mailbox
  • imap_reopen — Reopen IMAP stream to new mailbox
  • imap_rfc822_parse_adrlist — Parses an address string
  • imap_rfc822_parse_headers — Parse mail headers from a string
  • imap_rfc822_write_address — Returns a properly formatted email address given the mailbox, host, and personal info
  • imap_savebody — Save a specific body section to a file
  • imap_scanmailbox — Sinônimo de imap_listscan
  • imap_search — This function returns an array of messages matching the given search criteria
  • imap_set_quota — Sets a quota for a given mailbox
  • imap_setacl — Sets the ACL for a giving mailbox
  • imap_setflag_full — Sets flags on messages
  • imap_sort — Gets and sort messages
  • imap_status — Returns status information on a mailbox
  • imap_subscribe — Subscribe to a mailbox
  • imap_thread — Returns a tree of threaded message
  • imap_timeout — Set or fetch imap timeout
  • imap_uid — This function returns the UID for the given message sequence number
  • imap_undelete — Unmark the message which is marked deleted
  • imap_unsubscribe — Unsubscribe from a mailbox
  • imap_utf7_decode — Decodes a modified UTF-7 encoded string
  • imap_utf7_encode — Converts ISO-8859-1 string to modified UTF-7 text
  • imap_utf8 — Converts MIME-encoded text to UTF-8
Constantes pré-definidas
imap_8bit
IMAP


Convert an 8bit string to a quoted-printable string

IMAP Funções
imap_alerts
IMAP Funções
PHP Manual

imap_8bit

(PHP 4, PHP 5)

imap_8bit — Convert an 8bit string to a quoted-printable string

Descrição

string imap_8bit ( string $string )

Convert an 8bit string to a quoted-printable string (according to » RFC2045, section 6.7).

Parâmetros

string

The 8bit string to convert

Valor Retornado

Returns a quoted-printable string.

Veja Também

  • imap_qprint() - Convert a quoted-printable string to an 8 bit string

IMAP Funções
imap_alerts
IMAP Funções


Returns all IMAP alert messages that have occurred

imap_8bit
imap_append
IMAP Funções
PHP Manual

imap_alerts

(PHP 4, PHP 5)

imap_alerts — Returns all IMAP alert messages that have occurred

Descrição

array imap_alerts ( void )

Returns all of the IMAP alert messages generated since the last imap_alerts() call, or the beginning of the page.

When imap_alerts() is called, the alert stack is subsequently cleared. The IMAP specification requires that these messages be passed to the user.

Valor Retornado

Returns an array of all of the IMAP alert messages generated or FALSE if no alert messages are available.

Veja Também

  • imap_errors() - Returns all of the IMAP errors that have occured

imap_8bit
imap_append
IMAP Funções


Append a string message to a specified mailbox

imap_alerts
imap_base64
IMAP Funções
PHP Manual

imap_append

(PHP 4, PHP 5)

imap_append — Append a string message to a specified mailbox

Descrição

bool imap_append ( resource $imap_stream , string $mailbox , string $message [, string $options = NULL [, string $internal_date = NULL ]] )

Appends a string message to the specified mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

message

The message to be append, as a string

When talking to the Cyrus IMAP server, you must use "\r\n" as your end-of-line terminator instead of "\n" or the operation will fail

options

If provided, the options will also be written to the mailbox

internal_date

If this parameter is set, it will set the INTERNALDATE on the appended message. The parameter should be a date string that conforms to the rfc2060 specifications for a date_time value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.3.2 | Added INTERNALDATE support to imap_append.

Exemplos

Exemplo #1 imap_append() example

<?php
$stream = imap_open("{imap.example.org}INBOX.Drafts", "username", "password");

$check = imap_check($stream);
echo "Msg Count before append: ". $check->Nmsgs . "\n";

imap_append($stream, "{imap.example.org}INBOX.Drafts"
                   , "From: me@example.com\r\n"
                   . "To: you@example.com\r\n"
                   . "Subject: test\r\n"
                   . "\r\n"
                   . "this is a test message, please ignore\r\n"
                   );

$check = imap_check($stream);
echo "Msg Count after append : ". $check->Nmsgs . "\n";

imap_close($stream);
?>

imap_alerts
imap_base64
IMAP Funções


Decode BASE64 encoded text

imap_append
imap_binary
IMAP Funções
PHP Manual

imap_base64

(PHP 4, PHP 5)

imap_base64 — Decode BASE64 encoded text

Descrição

string imap_base64 ( string $text )

Decodes the given BASE-64 encoded text.

Parâmetros

text

The encoded text

Valor Retornado

Returns the decoded message as a string.

Veja Também

  • imap_binary() - Convert an 8bit string to a base64 string
  • base64_encode() - Codifica dados com MIME base64
  • base64_decode() - Decodifica dados codificados com MIME base64
  • » RFC2045, Section 6.8

imap_append
imap_binary
IMAP Funções


Convert an 8bit string to a base64 string

imap_base64
imap_body
IMAP Funções
PHP Manual

imap_binary

(PHP 4, PHP 5)

imap_binary — Convert an 8bit string to a base64 string

Descrição

string imap_binary ( string $string )

Convert an 8bit string to a base64 string according to » RFC2045, Section 6.8.

Parâmetros

string

The 8bit string

Valor Retornado

Returns a base64 encoded string.

Veja Também

  • imap_base64() - Decode BASE64 encoded text

imap_base64
imap_body
IMAP Funções


Read the message body

imap_binary
imap_bodystruct
IMAP Funções
PHP Manual

imap_body

(PHP 4, PHP 5)

imap_body — Read the message body

Descrição

string imap_body ( resource $imap_stream , int $msg_number [, int $options = 0 ] )

imap_body() returns the body of the message, numbered msg_number in the current mailbox.

imap_body() will only return a verbatim copy of the message body. To extract single parts of a multipart MIME-encoded message you have to use imap_fetchstructure() to analyze its structure and imap_fetchbody() to extract a copy of a single body component.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

options

The optional options are a bit mask with one or more of the following:

  • FT_UID - The msg_number is a UID
  • FT_PEEK - Do not set the \Seen flag if not already set
  • FT_INTERNAL - The return string is in internal format, will not canonicalize to CRLF.

Valor Retornado

Returns the body of the specified message, as a string.

imap_binary
imap_bodystruct
IMAP Funções


Read the structure of a specified body section of a specific message

imap_body
imap_check
IMAP Funções
PHP Manual

imap_bodystruct

(PHP 4, PHP 5)

imap_bodystruct — Read the structure of a specified body section of a specific message

Descrição

object imap_bodystruct ( resource $imap_stream , int $msg_number , string $section )

Read the structure of a specified body section of a specific message.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

section

The body section to read

Valor Retornado

Returns the information in an object, for a detailed description of the object structure and properties see imap_fetchstructure().

Veja Também

  • imap_fetchstructure() - Read the structure of a particular message

imap_body
imap_check
IMAP Funções


Check current mailbox

imap_bodystruct
imap_clearflag_full
IMAP Funções
PHP Manual

imap_check

(PHP 4, PHP 5)

imap_check — Check current mailbox

Descrição

object imap_check ( resource $imap_stream )

Checks information about the current mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns the information in an object with following properties:

  • Date - current system time formatted according to » RFC2822
  • Driver - protocol used to access this mailbox: POP3, IMAP, NNTP
  • Mailbox - the mailbox name
  • Nmsgs - number of messages in the mailbox
  • Recent - number of recent messages in the mailbox

Returns FALSE on failure.

Exemplos

Exemplo #1 imap_check() example

<?php

$imap_obj = imap_check($imap_stream);
var_dump($imap_obj);

?>

O exemplo acima irá imprimir algo similar a:

object(stdClass)(5) {
  ["Date"]=>
  string(37) "Wed, 10 Dec 2003 17:56:54 +0100 (CET)"
  ["Driver"]=>
  string(4) "imap"
  ["Mailbox"]=>
  string(54)
  "{www.example.com:143/imap/user="foo@example.com"}INBOX"
  ["Nmsgs"]=>
  int(1)
  ["Recent"]=>
  int(0)
}

imap_bodystruct
imap_clearflag_full
IMAP Funções


Clears flags on messages

imap_check
imap_close
IMAP Funções
PHP Manual

imap_clearflag_full

(PHP 4, PHP 5)

imap_clearflag_full — Clears flags on messages

Descrição

bool imap_clearflag_full ( resource $imap_stream , string $sequence , string $flag [, int $options = 0 ] )

This function causes a store to delete the specified flag to the flags set for the messages in the specified sequence.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

sequence

A sequence of message numbers. You can enumerate desired messages with the X,Y syntax, or retrieve all messages within an interval with the X:Y syntax

flag

The flags which you can unset are "\\Seen", "\\Answered", "\\Flagged", "\\Deleted", and "\\Draft" (as defined by » RFC2060)

options

options are a bit mask and may contain the single option:

  • ST_UID - The sequence argument contains UIDs instead of sequence numbers

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_setflag_full() - Sets flags on messages

imap_check
imap_close
IMAP Funções


Close an IMAP stream

imap_clearflag_full
imap_createmailbox
IMAP Funções
PHP Manual

imap_close

(PHP 4, PHP 5)

imap_close — Close an IMAP stream

Descrição

bool imap_close ( resource $imap_stream [, int $flag = 0 ] )

Closes the imap stream.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

flag

If set to CL_EXPUNGE, the function will silently expunge the mailbox before closing, removing all messages marked for deletion. You can achieve the same thing by using imap_expunge()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_open() - Open an IMAP stream to a mailbox

imap_clearflag_full
imap_createmailbox
IMAP Funções


Create a new mailbox

imap_close
imap_delete
IMAP Funções
PHP Manual

imap_createmailbox

(PHP 4, PHP 5)

imap_createmailbox — Create a new mailbox

Descrição

bool imap_createmailbox ( resource $imap_stream , string $mailbox )

Creates a new mailbox specified by mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information. Names containing international characters should be encoded by imap_utf7_encode()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imap_createmailbox() example

<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
     or die("can't connect: " . imap_last_error());

$name1 = "phpnewbox";
$name2 = imap_utf7_encode("phpnewb&ouml;x");

$newname = $name1;

echo "Newname will be '$name1'<br />\n";

// we will now create a new mailbox "phptestbox" in your inbox folder,
// check its status after creation and finaly remove it to restore
// your inbox to its initial state

if (@imap_createmailbox($mbox, imap_utf7_encode("{imap.example.org}INBOX.$newname"))) {
    $status = @imap_status($mbox, "{imap.example.org}INBOX.$newname", SA_ALL);
    if ($status) {
        echo "your new mailbox '$name1' has the following status:<br />\n";
        echo "Messages:   " . $status->messages    . "<br />\n";
        echo "Recent:     " . $status->recent      . "<br />\n";
        echo "Unseen:     " . $status->unseen      . "<br />\n";
        echo "UIDnext:    " . $status->uidnext     . "<br />\n";
        echo "UIDvalidity:" . $status->uidvalidity . "<br />\n";

        if (imap_renamemailbox($mbox, "{imap.example.org}INBOX.$newname", "{imap.example.org}INBOX.$name2")) {
            echo "renamed new mailbox from '$name1' to '$name2'<br />\n";
            $newname = $name2;
        } else {
            echo "imap_renamemailbox on new mailbox failed: " . imap_last_error() . "<br />\n";
        }
    } else {
        echo "imap_status on new mailbox failed: " . imap_last_error() . "<br />\n";
    }

    if (@imap_deletemailbox($mbox, "{imap.example.org}INBOX.$newname")) {
        echo "new mailbox removed to restore initial state<br />\n";
    } else {
        echo "imap_deletemailbox on new mailbox failed: " . implode("<br />\n", imap_errors()) . "<br />\n";
    }

} else {
    echo "could not create new mailbox: " . implode("<br />\n", imap_errors()) . "<br />\n";
}

imap_close($mbox);
?>

Veja Também

  • imap_renamemailbox() - Rename an old mailbox to new mailbox
  • imap_deletemailbox() - Delete a mailbox

imap_close
imap_delete
IMAP Funções


Mark a message for deletion from current mailbox

imap_createmailbox
imap_deletemailbox
IMAP Funções
PHP Manual

imap_delete

(PHP 4, PHP 5)

imap_delete — Mark a message for deletion from current mailbox

Descrição

bool imap_delete ( resource $imap_stream , int $msg_number [, int $options = 0 ] )

Marks messages listed in msg_number for deletion. Messages marked for deletion will stay in the mailbox until either imap_expunge() is called or imap_close() is called with the optional parameter CL_EXPUNGE.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

options

You can set the FT_UID which tells the function to treat the msg_number argument as an UID.

Valor Retornado

Returns TRUE.

Exemplos

Exemplo #1 imap_delete() example

<?php

$mbox = imap_open("{imap.example.org}INBOX", "username", "password")
    or die("Can't connect: " . imap_last_error());

$check = imap_mailboxmsginfo($mbox);
echo "Messages before delete: " . $check->Nmsgs . "<br />\n";

imap_delete($mbox, 1);

$check = imap_mailboxmsginfo($mbox);
echo "Messages after  delete: " . $check->Nmsgs . "<br />\n";

imap_expunge($mbox);

$check = imap_mailboxmsginfo($mbox);
echo "Messages after expunge: " . $check->Nmsgs . "<br />\n";

imap_close($mbox);
?>

Notas

Nota:

POP3 mailboxes do not have their message flags saved between connections, so imap_expunge() must be called during the same connection in order for messages marked for deletion to actually be purged.

Veja Também

  • imap_undelete() - Unmark the message which is marked deleted
  • imap_expunge() - Delete all messages marked for deletion
  • imap_close() - Close an IMAP stream

imap_createmailbox
imap_deletemailbox
IMAP Funções


Delete a mailbox

imap_delete
imap_errors
IMAP Funções
PHP Manual

imap_deletemailbox

(PHP 4, PHP 5)

imap_deletemailbox — Delete a mailbox

Descrição

bool imap_deletemailbox ( resource $imap_stream , string $mailbox )

Deletes the specified mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_createmailbox() - Create a new mailbox
  • imap_renamemailbox() - Rename an old mailbox to new mailbox
  • imap_open() - Open an IMAP stream to a mailbox for the format of mbox

imap_delete
imap_errors
IMAP Funções


Returns all of the IMAP errors that have occured

imap_deletemailbox
imap_expunge
IMAP Funções
PHP Manual

imap_errors

(PHP 4, PHP 5)

imap_errors — Returns all of the IMAP errors that have occured

Descrição

array imap_errors ( void )

Gets all of the IMAP errors (if any) that have occurred during this page request or since the error stack was reset.

When imap_errors() is called, the error stack is subsequently cleared.

Valor Retornado

This function returns an array of all of the IMAP error messages generated since the last imap_errors() call, or the beginning of the page. Returns FALSE if no error messages are available.

Veja Também

  • imap_last_error() - Gets the last IMAP error that occurred during this page request
  • imap_alerts() - Returns all IMAP alert messages that have occurred

imap_deletemailbox
imap_expunge
IMAP Funções


Delete all messages marked for deletion

imap_errors
imap_fetch_overview
IMAP Funções
PHP Manual

imap_expunge

(PHP 4, PHP 5)

imap_expunge — Delete all messages marked for deletion

Descrição

bool imap_expunge ( resource $imap_stream )

Deletes all the messages marked for deletion by imap_delete(), imap_mail_move(), or imap_setflag_full().

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns TRUE.

imap_errors
imap_fetch_overview
IMAP Funções


Read an overview of the information in the headers of the given message

imap_expunge
imap_fetchbody
IMAP Funções
PHP Manual

imap_fetch_overview

(PHP 4, PHP 5)

imap_fetch_overview — Read an overview of the information in the headers of the given message

Descrição

array imap_fetch_overview ( resource $imap_stream , string $sequence [, int $options = 0 ] )

This function fetches mail headers for the given sequence and returns an overview of their contents.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

sequence

A message sequence description. You can enumerate desired messages with the X,Y syntax, or retrieve all messages within an interval with the X:Y syntax

options

sequence will contain a sequence of message indices or UIDs, if this parameter is set to FT_UID.

Valor Retornado

Returns an array of objects describing one message header each. The object will only define a property if it exists. The possible properties are:

  • subject - the messages subject
  • from - who sent it
  • to - recipient
  • date - when was it sent
  • message_id - Message-ID
  • references - is a reference to this message id
  • in_reply_to - is a reply to this message id
  • size - size in bytes
  • uid - UID the message has in the mailbox
  • msgno - message sequence number in the mailbox
  • recent - this message is flagged as recent
  • flagged - this message is flagged
  • answered - this message is flagged as answered
  • deleted - this message is flagged for deletion
  • seen - this message is flagged as already read
  • draft - this message is flagged as being a draft

Exemplos

Exemplo #1 imap_fetch_overview() example

<?php
$mbox = imap_open("{imap.example.org:143}INBOX", "username", "password")
     or die("can't connect: " . imap_last_error());

$MC = imap_check($mbox);

// Fetch an overview for all messages in INBOX
$result = imap_fetch_overview($mbox,"1:{$MC->Nmsgs}",0);
foreach ($result as $overview) {
    echo "#{$overview->msgno} ({$overview->date}) - From: {$overview->from}
    {$overview->subject}\n";
}
imap_close($mbox);
?>

Veja Também

  • imap_fetchheader() - Returns header for a message

imap_expunge
imap_fetchbody
IMAP Funções


Fetch a particular section of the body of the message

imap_fetch_overview
imap_fetchheader
IMAP Funções
PHP Manual

imap_fetchbody

(PHP 4, PHP 5)

imap_fetchbody — Fetch a particular section of the body of the message

Descrição

string imap_fetchbody ( resource $imap_stream , int $msg_number , string $section [, int $options = 0 ] )

Fetch of a particular section of the body of the specified messages. Body parts are not decoded by this function.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

section

The part number. It is a string of integers delimited by period which index into a body part list as per the IMAP4 specification

options

A bitmask with one or more of the following:

  • FT_UID - The msg_number is a UID
  • FT_PEEK - Do not set the \Seen flag if not already set
  • FT_INTERNAL - The return string is in internal format, will not canonicalize to CRLF.

Valor Retornado

Returns a particular section of the body of the specified messages as a text string.

Veja Também

  • imap_savebody() - Save a specific body section to a file
  • imap_fetchstructure() - Read the structure of a particular message

imap_fetch_overview
imap_fetchheader
IMAP Funções


Returns header for a message

imap_fetchbody
imap_fetchmime
IMAP Funções
PHP Manual

imap_fetchheader

(PHP 4, PHP 5)

imap_fetchheader — Returns header for a message

Descrição

string imap_fetchheader ( resource $imap_stream , int $msg_number [, int $options = 0 ] )

This function causes a fetch of the complete, unfiltered » RFC2822 format header of the specified message.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

options

The possible options are:

  • FT_UID - The msgno argument is a UID
  • FT_INTERNAL - The return string is in "internal" format, without any attempt to canonicalize to CRLF newlines
  • FT_PREFETCHTEXT - The RFC822.TEXT should be pre-fetched at the same time. This avoids an extra RTT on an IMAP connection if a full message text is desired (e.g. in a "save to local file" operation)

Valor Retornado

Returns the header of the specified message as a text string.

Veja Também

  • imap_fetch_overview() - Read an overview of the information in the headers of the given message

imap_fetchbody
imap_fetchmime
IMAP Funções


Fetch MIME headers for a particular section of the message

imap_fetchheader
imap_fetchstructure
IMAP Funções
PHP Manual

imap_fetchmime

(PHP 5 >= 5.3.6)

imap_fetchmime — Fetch MIME headers for a particular section of the message

Descrição

string imap_fetchmime ( resource $imap_stream , int $msg_number , string $section [, int $options = 0 ] )

Fetch the MIME headers of a particular section of the body of the specified messages.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

section

The part number. It is a string of integers delimited by period which index into a body part list as per the IMAP4 specification

options

A bitmask with one or more of the following:

  • FT_UID - The msg_number is a UID
  • FT_PEEK - Do not set the \Seen flag if not already set
  • FT_INTERNAL - The return string is in internal format, will not canonicalize to CRLF.

Valor Retornado

Returns the MIME headers of a particular section of the body of the specified messages as a text string.

Veja Também

  • imap_fetchbody() - Fetch a particular section of the body of the message
  • imap_fetchstructure() - Read the structure of a particular message
  • imap_fetchheader() - Returns header for a message

imap_fetchheader
imap_fetchstructure
IMAP Funções


Read the structure of a particular message

imap_fetchmime
imap_gc
IMAP Funções
PHP Manual

imap_fetchstructure

(PHP 4, PHP 5)

imap_fetchstructure — Read the structure of a particular message

Descrição

object imap_fetchstructure ( resource $imap_stream , int $msg_number [, int $options = 0 ] )

Fetches all the structured information for a given message.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

options

This optional parameter only has a single option, FT_UID, which tells the function to treat the msg_number argument as a UID.

Valor Retornado

Returns an object includes the envelope, internal date, size, flags and body structure along with a similar object for each mime attachment. The structure of the returned objects is as follows:

Returned Objects for imap_fetchstructure()
type | Primary body type
encoding | Body transfer encoding
ifsubtype | TRUE if there is a subtype string
subtype | MIME subtype
ifdescription | TRUE if there is a description string
description | Content description string
ifid | TRUE if there is an identification string
id | Identification string
lines | Number of lines
bytes | Number of bytes
ifdisposition | TRUE if there is a disposition string
disposition | Disposition string
ifdparameters | TRUE if the dparameters array exists
dparameters | An array of objects where each object has an "attribute" and a "value" property corresponding to the parameters on the Content-disposition MIME header.
ifparameters | TRUE if the parameters array exists
parameters | An array of objects where each object has an "attribute" and a "value" property.
parts | An array of objects identical in structure to the top-level object, each of which corresponds to a MIME body part.

Primary body type (may vary with used library)
0 | text
1 | multipart
2 | message
3 | application
4 | audio
5 | image
6 | video
7 | other

Transfer encodings (may vary with used library)
0 | 7BIT
1 | 8BIT
2 | BINARY
3 | BASE64
4 | QUOTED-PRINTABLE
5 | OTHER

Veja Também

  • imap_fetchbody() - Fetch a particular section of the body of the message
  • imap_bodystruct() - Read the structure of a specified body section of a specific message

imap_fetchmime
imap_gc
IMAP Funções


Clears IMAP cache

imap_fetchstructure
imap_get_quota
IMAP Funções
PHP Manual

imap_gc

(PHP 5 >= 5.3.0)

imap_gc — Clears IMAP cache

Descrição

bool imap_gc ( resource $imap_stream , int $caches )

Purges the cache of entries of a specific type.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

caches

Specifies the cache to purge. It may one or a combination of the following constants: IMAP_GC_ELT (message cache elements), IMAP_GC_ENV (enveloppe and bodies), IMAP_GC_TEXTS (texts).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imap_gc() example

<?php

$mbox = imap_open("{imap.example.org:143}", "username", "password");

imap_gc($mbox, IMAP_GC_ELT);

?>

imap_fetchstructure
imap_get_quota
IMAP Funções


Retrieve the quota level settings, and usage statics per mailbox

imap_gc
imap_get_quotaroot
IMAP Funções
PHP Manual

imap_get_quota

(PHP 4 >= 4.0.5, PHP 5)

imap_get_quota — Retrieve the quota level settings, and usage statics per mailbox

Descrição

array imap_get_quota ( resource $imap_stream , string $quota_root )

Retrieve the quota level settings, and usage statics per mailbox.

For a non-admin user version of this function, please see the imap_get_quotaroot() function of PHP.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

quota_root

quota_root should normally be in the form of user.name where name is the mailbox you wish to retrieve information about.

Valor Retornado

Returns an array with integer values limit and usage for the given mailbox. The value of limit represents the total amount of space allowed for this mailbox. The usage value represents the mailboxes current level of capacity. Will return FALSE in the case of failure.

As of PHP 4.3, the function more properly reflects the functionality as dictated by the » RFC2087. The array return value has changed to support an unlimited number of returned resources (i.e. messages, or sub-folders) with each named resource receiving an individual array key. Each key value then contains an another array with the usage and limit values within it.

For backwards compatibility reasons, the original access methods are still available for use, although it is suggested to update.

Exemplos

Exemplo #1 imap_get_quota() example

<?php
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$quota_value = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_value)) {
    echo "Usage level is: " . $quota_value['usage'];
    echo "Limit level is: " . $quota_value['limit'];
}

imap_close($mbox);
?>

Exemplo #2 imap_get_quota() 4.3 or greater example

<?php
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_values)) {
   $storage = $quota_values['STORAGE'];
   echo "STORAGE usage level is: " .  $storage['usage'];
   echo "STORAGE limit level is: " .  $storage['limit'];

   $message = $quota_values['MESSAGE'];
   echo "MESSAGE usage level is: " .  $message['usage'];
   echo "MESSAGE limit is: " .  $message['limit'];

   /* ...  */
}

imap_close($mbox);
?>

Notas

This function is currently only available to users of the c-client2000 or greater library.

The given imap_stream must be opened as the mail administrator, otherwise this function will fail.

Veja Também

  • imap_open() - Open an IMAP stream to a mailbox
  • imap_set_quota() - Sets a quota for a given mailbox
  • imap_get_quotaroot() - Retrieve the quota settings per user

imap_gc
imap_get_quotaroot
IMAP Funções


Retrieve the quota settings per user

imap_get_quota
imap_getacl
IMAP Funções
PHP Manual

imap_get_quotaroot

(PHP 4 >= 4.3.0, PHP 5)

imap_get_quotaroot — Retrieve the quota settings per user

Descrição

array imap_get_quotaroot ( resource $imap_stream , string $quota_root )

Retrieve the quota settings per user. The limit value represents the total amount of space allowed for this user's total mailbox usage. The usage value represents the user's current total mailbox capacity.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

quota_root

quota_root should normally be in the form of which mailbox (i.e. INBOX).

Valor Retornado

Returns an array of integer values pertaining to the specified user mailbox. All values contain a key based upon the resource name, and a corresponding array with the usage and limit values within.

This function will return FALSE in the case of call failure, and an array of information about the connection upon an un-parsable response from the server.

Exemplos

Exemplo #1 imap_get_quotaroot() example

<?php
$mbox = imap_open("{imap.example.org}", "kalowsky", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$quota = imap_get_quotaroot($mbox, "INBOX");
if (is_array($quota)) {
   $storage = $quota_values['STORAGE'];
   echo "STORAGE usage level is: " .  $storage['usage'];
   echo "STORAGE limit level is: " .  $storage['limit'];

   $message = $quota_values['MESSAGE'];
   echo "MESSAGE usage level is: " .  $message['usage'];
   echo "MESSAGE limit level is: " .  $message['limit'];

   /* ...  */

}

imap_close($mbox);
?>

Notas

This function is currently only available to users of the c-client2000 or greater library.

The imap_stream should be opened as the user whose mailbox you wish to check.

Veja Também

  • imap_open() - Open an IMAP stream to a mailbox
  • imap_set_quota() - Sets a quota for a given mailbox
  • imap_get_quota() - Retrieve the quota level settings, and usage statics per mailbox

imap_get_quota
imap_getacl
IMAP Funções


Gets the ACL for a given mailbox

imap_get_quotaroot
imap_getmailboxes
IMAP Funções
PHP Manual

imap_getacl

(PHP 5)

imap_getacl — Gets the ACL for a given mailbox

Descrição

array imap_getacl ( resource $imap_stream , string $mailbox )

Gets the ACL for a given mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

Valor Retornado

Returns an associative array of "folder" => "acl" pairs.

Exemplos

Exemplo #1 imap_getacl() example

<?php

print_r(imap_getacl($conn_id, 'user.joecool'));

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [asubfolder] => lrswipcda
    [anothersubfolder] => lrswipcda
)

Notas

This function is currently only available to users of the c-client2000 or greater library.

Veja Também

  • imap_setacl() - Sets the ACL for a giving mailbox

imap_get_quotaroot
imap_getmailboxes
IMAP Funções


Read the list of mailboxes, returning detailed information on each one

imap_getacl
imap_getsubscribed
IMAP Funções
PHP Manual

imap_getmailboxes

(PHP 4, PHP 5)

imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one

Descrição

array imap_getmailboxes ( resource $imap_stream , string $ref , string $pattern )

Gets information on the mailboxes.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

ref

ref should normally be just the server specification as described in imap_open()

pattern

Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.

Existem dois caracteres especiais que você pode passar como parte para o pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passar pattern como '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetro pattern ira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.

Valor Retornado

Returns an array of objects containing mailbox information. Each object has the attributes name, specifying the full name of the mailbox; delimiter, which is the hierarchy delimiter for the part of the hierarchy this mailbox is in; and attributes. Attributes is a bitmask that can be tested against:

  • LATT_NOINFERIORS - This mailbox contains, and may not contain any "children" (there are no mailboxes below this one). Calling imap_createmailbox() will not work on this mailbox.

  • LATT_NOSELECT - This is only a container, not a mailbox - you cannot open it.

  • LATT_MARKED - This mailbox is marked. This means that it may contain new messages since the last time it was checked. Not provided by all IMAP servers.

  • LATT_UNMARKED - This mailbox is not marked, does not contain new messages. If either MARKED or UNMARKED is provided, you can assume the IMAP server supports this feature for this mailbox.

Exemplos

Exemplo #1 imap_getmailboxes() example

<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$list = imap_getmailboxes($mbox, "{imap.example.org}", "*");
if (is_array($list)) {
    foreach ($list as $key => $val) {
        echo "($key) ";
        echo imap_utf7_decode($val->name) . ",";
        echo "'" . $val->delimiter . "',";
        echo $val->attributes . "<br />\n";
    }
} else {
    echo "imap_getmailboxes failed: " . imap_last_error() . "\n";
}

imap_close($mbox);
?>

Veja Também

  • imap_getsubscribed() - List all the subscribed mailboxes

imap_getacl
imap_getsubscribed
IMAP Funções


List all the subscribed mailboxes

imap_getmailboxes
imap_header
IMAP Funções
PHP Manual

imap_getsubscribed

(PHP 4, PHP 5)

imap_getsubscribed — List all the subscribed mailboxes

Descrição

array imap_getsubscribed ( resource $imap_stream , string $ref , string $pattern )

Gets information about the subscribed mailboxes.

Identical to imap_getmailboxes(), except that it only returns mailboxes that the user is subscribed to.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

ref

ref should normally be just the server specification as described in imap_open()

pattern

Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.

Existem dois caracteres especiais que você pode passar como parte para o pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passar pattern como '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetro pattern ira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.

Valor Retornado

Returns an array of objects containing mailbox information. Each object has the attributes name, specifying the full name of the mailbox; delimiter, which is the hierarchy delimiter for the part of the hierarchy this mailbox is in; and attributes. Attributes is a bitmask that can be tested against:

  • LATT_NOINFERIORS - This mailbox has no "children" (there are no mailboxes below this one).
  • LATT_NOSELECT - This is only a container, not a mailbox - you cannot open it.
  • LATT_MARKED - This mailbox is marked. Only used by UW-IMAPD.
  • LATT_UNMARKED - This mailbox is not marked. Only used by UW-IMAPD.

imap_getmailboxes
imap_header
IMAP Funções


Sinônimo de imap_headerinfo

imap_getsubscribed
imap_headerinfo
IMAP Funções
PHP Manual

imap_header

(PHP 4, PHP 5)

imap_header — Sinônimo de imap_headerinfo()

Descrição

Esta função é um apelido para: imap_headerinfo().

imap_getsubscribed
imap_headerinfo
IMAP Funções


Read the header of the message

imap_header
imap_headers
IMAP Funções
PHP Manual

imap_headerinfo

(PHP 4, PHP 5)

imap_headerinfo — Read the header of the message

Descrição

object imap_headerinfo ( resource $imap_stream , int $msg_number [, int $fromlength = 0 [, int $subjectlength = 0 [, string $defaulthost = NULL ]]] )

Gets information about the given message number by reading its headers.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

fromlength

Number of characters for the fetchfrom property. Must be greater than or equal to zero.

subjectlength

Number of characters for the fetchsubject property Must be greater than or equal to zero.

defaulthost

Valor Retornado

Returns the information in an object with following properties:

  • toaddress - full to: line, up to 1024 characters
  • to - an array of objects from the To: line, with the following properties: personal, adl, mailbox, and host
  • fromaddress - full from: line, up to 1024 characters
  • from - an array of objects from the From: line, with the following properties: personal, adl, mailbox, and host
  • ccaddress - full cc: line, up to 1024 characters
  • cc - an array of objects from the Cc: line, with the following properties: personal, adl, mailbox, and host
  • bccaddress - full bcc: line, up to 1024 characters
  • bcc - an array of objects from the Bcc: line, with the following properties: personal, adl, mailbox, and host
  • reply_toaddress - full Reply-To: line, up to 1024 characters
  • reply_to - an array of objects from the Reply-To: line, with the following properties: personal, adl, mailbox, and host
  • senderaddress - full sender: line, up to 1024 characters
  • sender - an array of objects from the Sender: line, with the following properties: personal, adl, mailbox, and host
  • return_pathaddress - full Return-Path: line, up to 1024 characters
  • return_path - an array of objects from the Return-Path: line, with the following properties: personal, adl, mailbox, and host
  • remail -
  • date - The message date as found in its headers
  • Date - Same as date
  • subject - The message subject
  • Subject - Same a subject
  • in_reply_to -
  • message_id -
  • newsgroups -
  • followup_to -
  • references -
  • Recent - R if recent and seen, N if recent and not seen, ' ' if not recent.
  • Unseen - U if not seen AND not recent, ' ' if seen OR not seen and recent
  • Flagged - F if flagged, ' ' if not flagged
  • Answered - A if answered, ' ' if unanswered
  • Deleted - D if deleted, ' ' if not deleted
  • Draft - X if draft, ' ' if not draft
  • Msgno - The message number
  • MailDate -
  • Size - The message size
  • udate - mail message date in Unix time
  • fetchfrom - from line formatted to fit fromlength characters
  • fetchsubject - subject line formatted to fit subjectlength characters

Veja Também

  • imap_fetch_overview() - Read an overview of the information in the headers of the given message

imap_header
imap_headers
IMAP Funções


Returns headers for all messages in a mailbox

imap_headerinfo
imap_last_error
IMAP Funções
PHP Manual

imap_headers

(PHP 4, PHP 5)

imap_headers — Returns headers for all messages in a mailbox

Descrição

array imap_headers ( resource $imap_stream )

Returns headers for all messages in a mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns an array of string formatted with header info. One element per mail message.

imap_headerinfo
imap_last_error
IMAP Funções


Gets the last IMAP error that occurred during this page request

imap_headers
imap_list
IMAP Funções
PHP Manual

imap_last_error

(PHP 4, PHP 5)

imap_last_error — Gets the last IMAP error that occurred during this page request

Descrição

string imap_last_error ( void )

Gets the full text of the last IMAP error message that occurred on the current page. The error stack is untouched; calling imap_last_error() subsequently, with no intervening errors, will return the same error.

Valor Retornado

Returns the full text of the last IMAP error message that occurred on the current page. Returns FALSE if no error messages are available.

Veja Também

  • imap_errors() - Returns all of the IMAP errors that have occured

imap_headers
imap_list
IMAP Funções


Read the list of mailboxes

imap_last_error
imap_listmailbox
IMAP Funções
PHP Manual

imap_list

(PHP 4, PHP 5)

imap_list — Read the list of mailboxes

Descrição

array imap_list ( resource $imap_stream , string $ref , string $pattern )

Read the list of mailboxes.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

ref

ref should normally be just the server specification as described in imap_open().

pattern

Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.

Existem dois caracteres especiais que você pode passar como parte para o pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passar pattern como '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetro pattern ira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.

Valor Retornado

Returns an array containing the names of the mailboxes.

Exemplos

Exemplo #1 imap_list() example

<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$list = imap_list($mbox, "{imap.example.org}", "*");
if (is_array($list)) {
    foreach ($list as $val) {
        echo imap_utf7_decode($val) . "\n";
    }
} else {
    echo "imap_list failed: " . imap_last_error() . "\n";
}

imap_close($mbox);
?>

Veja Também

  • imap_getmailboxes() - Read the list of mailboxes, returning detailed information on each one
  • imap_lsub() - List all the subscribed mailboxes

imap_last_error
imap_listmailbox
IMAP Funções


Sinônimo de imap_list

imap_list
imap_listscan
IMAP Funções
PHP Manual

imap_listmailbox

(PHP 4, PHP 5)

imap_listmailbox — Sinônimo de imap_list()

Descrição

Esta função é um apelido para: imap_list().

imap_list
imap_listscan
IMAP Funções


Returns the list of mailboxes that matches the given text

imap_listmailbox
imap_listsubscribed
IMAP Funções
PHP Manual

imap_listscan

(PHP 4, PHP 5)

imap_listscan — Returns the list of mailboxes that matches the given text

Descrição

array imap_listscan ( resource $imap_stream , string $ref , string $pattern , string $content )

Returns an array containing the names of the mailboxes that have content in the text of the mailbox.

This function is similar to imap_listmailbox(), but it will additionally check for the presence of the string content inside the mailbox data.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

ref

ref should normally be just the server specification as described in imap_open()

pattern

Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.

Existem dois caracteres especiais que você pode passar como parte para o pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passar pattern como '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetro pattern ira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.

content

The searched string

Valor Retornado

Returns an array containing the names of the mailboxes that have content in the text of the mailbox.

Veja Também

  • imap_listmailbox() - Sinônimo de imap_list
  • imap_search() - This function returns an array of messages matching the given search criteria

imap_listmailbox
imap_listsubscribed
IMAP Funções


Sinônimo de imap_lsub

imap_listscan
imap_lsub
IMAP Funções
PHP Manual

imap_listsubscribed

(PHP 4, PHP 5)

imap_listsubscribed — Sinônimo de imap_lsub()

Descrição

Esta função é um apelido para: imap_lsub().

imap_listscan
imap_lsub
IMAP Funções


List all the subscribed mailboxes

imap_listsubscribed
imap_mail_compose
IMAP Funções
PHP Manual

imap_lsub

(PHP 4, PHP 5)

imap_lsub — List all the subscribed mailboxes

Descrição

array imap_lsub ( resource $imap_stream , string $ref , string $pattern )

Gets an array of all the mailboxes that you have subscribed.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

ref

ref should normally be just the server specification as described in imap_open()

pattern

Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.

Existem dois caracteres especiais que você pode passar como parte para o pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passar pattern como '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetro pattern ira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.

Valor Retornado

Returns an array of all the subscribed mailboxes.

Veja Também

  • imap_list() - Read the list of mailboxes
  • imap_getmailboxes() - Read the list of mailboxes, returning detailed information on each one

imap_listsubscribed
imap_mail_compose
IMAP Funções


Create a MIME message based on given envelope and body sections

imap_lsub
imap_mail_copy
IMAP Funções
PHP Manual

imap_mail_compose

(PHP 4, PHP 5)

imap_mail_compose — Create a MIME message based on given envelope and body sections

Descrição

string imap_mail_compose ( array $envelope , array $body )

Create a MIME message based on the given envelope and body sections.

Parâmetros

envelope

An associative array of headers fields. Valid keys are: "remail", "return_path", "date", "from", "reply_to", "in_reply_to", "subject", "to", "cc", "bcc", "message_id" and "custom_headers" (which contains associative array of other headers).

body

An indexed array of bodies

A body is an associative array which can consist of the following keys: "type", "encoding", "charset", "type.parameters", "subtype", "id", "description", "disposition.type", "disposition", "contents.data", "lines", "bytes" and "md5".

Valor Retornado

Returns the MIME message.

Exemplos

Exemplo #1 imap_mail_compose() example

<?php

$envelope["from"]= "joe@example.com";
$envelope["to"]  = "foo@example.com";
$envelope["cc"]  = "bar@example.com";

$part1["type"] = TYPEMULTIPART;
$part1["subtype"] = "mixed";

$filename = "/tmp/imap.c.gz";
$fp = fopen($filename, "r");
$contents = fread($fp, filesize($filename));
fclose($fp);

$part2["type"] = TYPEAPPLICATION;
$part2["encoding"] = ENCBINARY;
$part2["subtype"] = "octet-stream";
$part2["description"] = basename($filename);
$part2["contents.data"] = $contents;

$part3["type"] = TYPETEXT;
$part3["subtype"] = "plain";
$part3["description"] = "description3";
$part3["contents.data"] = "contents.data3\n\n\n\t";

$body[1] = $part1;
$body[2] = $part2;
$body[3] = $part3;

echo nl2br(imap_mail_compose($envelope, $body));

?>

imap_lsub
imap_mail_copy
IMAP Funções


Copy specified messages to a mailbox

imap_mail_compose
imap_mail_move
IMAP Funções
PHP Manual

imap_mail_copy

(PHP 4, PHP 5)

imap_mail_copy — Copy specified messages to a mailbox

Descrição

bool imap_mail_copy ( resource $imap_stream , string $msglist , string $mailbox [, int $options = 0 ] )

Copies mail messages specified by msglist to specified mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msglist

msglist is a range not just message numbers (as described in » RFC2060).

mailbox

The mailbox name, see imap_open() for more information

options

options is a bitmask of one or more of

  • CP_UID - the sequence numbers contain UIDS
  • CP_MOVE - Delete the messages from the current mailbox after copying

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_mail_move() - Move specified messages to a mailbox

imap_mail_compose
imap_mail_move
IMAP Funções


Move specified messages to a mailbox

imap_mail_copy
imap_mail
IMAP Funções
PHP Manual

imap_mail_move

(PHP 4, PHP 5)

imap_mail_move — Move specified messages to a mailbox

Descrição

bool imap_mail_move ( resource $imap_stream , string $msglist , string $mailbox [, int $options = 0 ] )

Moves mail messages specified by msglist to the specified mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msglist

msglist is a range not just message numbers (as described in » RFC2060).

mailbox

The mailbox name, see imap_open() for more information

options

options is a bitmask and may contain the single option:

  • CP_UID - the sequence numbers contain UIDS

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

imap_mail_move() will flag the original mail with a delete flag, to successfully delete it a call to the imap_expunge() function must be made.

Veja Também

  • imap_mail_copy() - Copy specified messages to a mailbox

imap_mail_copy
imap_mail
IMAP Funções


Send an email message

imap_mail_move
imap_mailboxmsginfo
IMAP Funções
PHP Manual

imap_mail

(PHP 4, PHP 5)

imap_mail — Send an email message

Descrição

bool imap_mail ( string $to , string $subject , string $message [, string $additional_headers = NULL [, string $cc = NULL [, string $bcc = NULL [, string $rpath = NULL ]]]] )

This function allows sending of emails with correct handling of Cc and Bcc receivers.

The parameters to, cc and bcc are all strings and are all parsed as » RFC822 address lists.

Parâmetros

to

The receiver

subject

The mail subject

message

The mail body

additional_headers

As string with additional headers to be set on the mail

cc

bcc

The receivers specified in bcc will get the mail, but are excluded from the headers.

rpath

Use this parameter to specify return path upon mail delivery failure. This is useful when using PHP as a mail client for multiple users.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mail() - Envia email

imap_mail_move
imap_mailboxmsginfo
IMAP Funções


Get information about the current mailbox

imap_mail
imap_mime_header_decode
IMAP Funções
PHP Manual

imap_mailboxmsginfo

(PHP 4, PHP 5)

imap_mailboxmsginfo — Get information about the current mailbox

Descrição

object imap_mailboxmsginfo ( resource $imap_stream )

Checks the current mailbox status on the server. It is similar to imap_status(), but will additionally sum up the size of all messages in the mailbox, which will take some additional time to execute.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns the information in an object with following properties:

Mailbox properties
Date | date of last change (current datetime)
Driver | driver
Mailbox | name of the mailbox
Nmsgs | number of messages
Recent | number of recent messages
Unread | number of unread messages
Deleted | number of deleted messages
Size | mailbox size

Returns FALSE on failure.

Exemplos

Exemplo #1 imap_mailboxmsginfo() example

<?php

$mbox = imap_open("{imap.example.org}INBOX", "username", "password")
      or die("can't connect: " . imap_last_error());

$check = imap_mailboxmsginfo($mbox);

if ($check) {
    echo "Date: "     . $check->Date    . "<br />\n" ;
    echo "Driver: "   . $check->Driver  . "<br />\n" ;
    echo "Mailbox: "  . $check->Mailbox . "<br />\n" ;
    echo "Messages: " . $check->Nmsgs   . "<br />\n" ;
    echo "Recent: "   . $check->Recent  . "<br />\n" ;
    echo "Unread: "   . $check->Unread  . "<br />\n" ;
    echo "Deleted: "  . $check->Deleted . "<br />\n" ;
    echo "Size: "     . $check->Size    . "<br />\n" ;
} else {
    echo "imap_check() failed: " . imap_last_error() . "<br />\n";
}

imap_close($mbox);

?>

imap_mail
imap_mime_header_decode
IMAP Funções


Decode MIME header elements

imap_mailboxmsginfo
imap_msgno
IMAP Funções
PHP Manual

imap_mime_header_decode

(PHP 4, PHP 5)

imap_mime_header_decode — Decode MIME header elements

Descrição

array imap_mime_header_decode ( string $text )

Decodes MIME message header extensions that are non ASCII text (see » RFC2047).

Parâmetros

text

The MIME text

Valor Retornado

The decoded elements are returned in an array of objects, where each object has two properties, charset and text.

If the element hasn't been encoded, and in other words is in plain US-ASCII, the charset property of that element is set to default.

Exemplos

Exemplo #1 imap_mime_header_decode() example

<?php
$text = "=?ISO-8859-1?Q?Keld_J=F8rn_Simonsen?= <keld@example.com>";

$elements = imap_mime_header_decode($text);
for ($i=0; $i<count($elements); $i++) {
    echo "Charset: {$elements[$i]->charset}\n";
    echo "Text: {$elements[$i]->text}\n\n";
}
?>

O exemplo acima irá imprimir:

Charset: ISO-8859-1
Text: Keld Jørn Simonsen

Charset: default
Text:  <keld@example.com>

In the above example we would have two elements, whereas the first element had previously been encoded with ISO-8859-1, and the second element would be plain US-ASCII.

Veja Também

  • imap_utf8() - Converts MIME-encoded text to UTF-8

imap_mailboxmsginfo
imap_msgno
IMAP Funções


Gets the message sequence number for the given UID

imap_mime_header_decode
imap_num_msg
IMAP Funções
PHP Manual

imap_msgno

(PHP 4, PHP 5)

imap_msgno — Gets the message sequence number for the given UID

Descrição

int imap_msgno ( resource $imap_stream , int $uid )

Returns the message sequence number for the given uid.

This function is the inverse of imap_uid().

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

uid

The message UID

Valor Retornado

Returns the message sequence number for the given uid.

Veja Também

  • imap_uid() - This function returns the UID for the given message sequence number

imap_mime_header_decode
imap_num_msg
IMAP Funções


Gets the number of messages in the current mailbox

imap_msgno
imap_num_recent
IMAP Funções
PHP Manual

imap_num_msg

(PHP 4, PHP 5)

imap_num_msg — Gets the number of messages in the current mailbox

Descrição

int imap_num_msg ( resource $imap_stream )

Gets the number of messages in the current mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Return the number of messages in the current mailbox, as an integer.

Veja Também

  • imap_num_recent() - Gets the number of recent messages in current mailbox
  • imap_status() - Returns status information on a mailbox

imap_msgno
imap_num_recent
IMAP Funções


Gets the number of recent messages in current mailbox

imap_num_msg
imap_open
IMAP Funções
PHP Manual

imap_num_recent

(PHP 4, PHP 5)

imap_num_recent — Gets the number of recent messages in current mailbox

Descrição

int imap_num_recent ( resource $imap_stream )

Gets the number of recent messages in the current mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns the number of recent messages in the current mailbox, as an integer.

Veja Também

  • imap_num_msg() - Gets the number of messages in the current mailbox
  • imap_status() - Returns status information on a mailbox

imap_num_msg
imap_open
IMAP Funções


Open an IMAP stream to a mailbox

imap_num_recent
imap_ping
IMAP Funções
PHP Manual

imap_open

(PHP 4, PHP 5)

imap_open — Open an IMAP stream to a mailbox

Descrição

resource imap_open ( string $mailbox , string $username , string $password [, int $options = NIL [, int $n_retries = 0 [, array $params = NULL ]]] )

Opens an IMAP stream to a mailbox.

This function can also be used to open streams to POP3 and NNTP servers, but some functions and features are only available on IMAP servers.

Parâmetros

mailbox

A mailbox name consists of a server and a mailbox path on this server. The special name INBOX stands for the current users personal mailbox. Mailbox names that contain international characters besides those in the printable ASCII space have to be encoded width imap_utf7_encode().

The server part, which is enclosed in '{' and '}', consists of the servers name or ip address, an optional port (prefixed by ':'), and an optional protocol specification (prefixed by '/').

The server part is mandatory in all mailbox parameters.

All names which start with { are remote names, and are in the form "{" remote_system_name [":" port] [flags] "}" [mailbox_name] where:

  • remote_system_name - Internet domain name or bracketed IP address of server.
  • port - optional TCP port number, default is the default port for that service
  • flags - optional flags, see following table.
  • mailbox_name - remote mailbox name, default is INBOX

Optional flags for names
Flag | Description
/service=service | mailbox access service, default is "imap"
/user=user | remote user name for login on the server
/authuser=user | remote authentication user; if specified this is the user name whose password is used (e.g. administrator)
/anonymous | remote access as anonymous user
/debug | record protocol telemetry in application's debug log
/secure | do not transmit a plaintext password over the network
/imap, /imap2, /imap2bis, /imap4, /imap4rev1 | equivalent to /service=imap
/pop3 | equivalent to /service=pop3
/nntp | equivalent to /service=nntp
/norsh | do not use rsh or ssh to establish a preauthenticated IMAP session
/ssl | use the Secure Socket Layer to encrypt the session
/validate-cert | validate certificates from TLS/SSL server (this is the default behavior)
/novalidate-cert | do not validate certificates from TLS/SSL server, needed if server uses self-signed certificates
/tls | force use of start-TLS to encrypt the session, and reject connection to servers that do not support it
/notls | do not do start-TLS to encrypt the session, even with servers that support it
/readonly | request read-only mailbox open (IMAP only; ignored on NNTP, and an error with SMTP and POP3)

username

The user name

password

The password associated with the username

options

The options are a bit mask with one or more of the following:

  • OP_READONLY - Open mailbox read-only
  • OP_ANONYMOUS - Don't use or update a .newsrc for news (NNTP only)
  • OP_HALFOPEN - For IMAP and NNTP names, open a connection but don't open a mailbox.
  • CL_EXPUNGE - Expunge mailbox automatically upon mailbox close (see also imap_delete() and imap_expunge())
  • OP_DEBUG - Debug protocol negotiations
  • OP_SHORTCACHE - Short (elt-only) caching
  • OP_SILENT - Don't pass up events (internal use)
  • OP_PROTOTYPE - Return driver prototype
  • OP_SECURE - Don't do non-secure authentication

n_retries

Number of maximum connect attempts

params

Connection parameters, the following (string) keys maybe used to set one or more connection parameters:

  • DISABLE_AUTHENTICATOR - Disable authentication properties

Valor Retornado

Returns an IMAP stream on success or FALSE on error.

Histórico

Versão | Descrição
5.3.2 | params added
5.2.0 | n_retries added

Exemplos

Exemplo #1 Different use of imap_open()

<?php
// To connect to an IMAP server running on port 143 on the local machine,
// do the following:
$mbox = imap_open("{localhost:143}INBOX", "user_id", "password");

// To connect to a POP3 server on port 110 on the local server, use:
$mbox = imap_open ("{localhost:110/pop3}INBOX", "user_id", "password");

// To connect to an SSL IMAP or POP3 server, add /ssl after the protocol
// specification:
$mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password");

// To connect to an SSL IMAP or POP3 server with a self-signed certificate,
// add /ssl/novalidate-cert after the protocol specification:
$mbox = imap_open ("{localhost:995/pop3/ssl/novalidate-cert}", "user_id", "password");

// To connect to an NNTP server on port 119 on the local server, use:
$nntp = imap_open ("{localhost:119/nntp}comp.test", "", "");
// To connect to a remote server replace "localhost" with the name or the
// IP address of the server you want to connect to.
?>

Exemplo #2 imap_open() example

<?php
$mbox = imap_open("{imap.example.org:143}", "username", "password");

echo "<h1>Mailboxes</h1>\n";
$folders = imap_listmailbox($mbox, "{imap.example.org:143}", "*");

if ($folders == false) {
    echo "Call failed<br />\n";
} else {
    foreach ($folders as $val) {
        echo $val . "<br />\n";
    }
}

echo "<h1>Headers in INBOX</h1>\n";
$headers = imap_headers($mbox);

if ($headers == false) {
    echo "Call failed<br />\n";
} else {
    foreach ($headers as $val) {
        echo $val . "<br />\n";
    }
}

imap_close($mbox);
?>

Veja Também

  • imap_close() - Close an IMAP stream

imap_num_recent
imap_ping
IMAP Funções


Check if the IMAP stream is still active

imap_open
imap_qprint
IMAP Funções
PHP Manual

imap_ping

(PHP 4, PHP 5)

imap_ping — Check if the IMAP stream is still active

Descrição

bool imap_ping ( resource $imap_stream )

imap_ping() pings the stream to see if it's still active. It may discover new mail; this is the preferred method for a periodic "new mail check" as well as a "keep alive" for servers which have inactivity timeout.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

Valor Retornado

Returns TRUE if the stream is still alive, FALSE otherwise.

Exemplos

Exemplo #1 imap_ping() Example

<?php

$imap = imap_open("{imap.example.org}", "mailadmin", "password");

// after some sleeping
if (!imap_ping($imap)) {
    // do some stuff to reconnect
}

?>

imap_open
imap_qprint
IMAP Funções


Convert a quoted-printable string to an 8 bit string

imap_ping
imap_renamemailbox
IMAP Funções
PHP Manual

imap_qprint

(PHP 4, PHP 5)

imap_qprint — Convert a quoted-printable string to an 8 bit string

Descrição

string imap_qprint ( string $string )

Convert a quoted-printable string to an 8 bit string according to » RFC2045, section 6.7.

Parâmetros

string

A quoted-printable string

Valor Retornado

Returns an 8 bits string.

Veja Também

  • imap_8bit() - Convert an 8bit string to a quoted-printable string

imap_ping
imap_renamemailbox
IMAP Funções


Rename an old mailbox to new mailbox

imap_qprint
imap_reopen
IMAP Funções
PHP Manual

imap_renamemailbox

(PHP 4, PHP 5)

imap_renamemailbox — Rename an old mailbox to new mailbox

Descrição

bool imap_renamemailbox ( resource $imap_stream , string $old_mbox , string $new_mbox )

This function renames on old mailbox to new mailbox (see imap_open() for the format of mbox names).

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

old_mbox

The old mailbox name, see imap_open() for more information

new_mbox

The new mailbox name, see imap_open() for more information

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_createmailbox() - Create a new mailbox
  • imap_deletemailbox() - Delete a mailbox

imap_qprint
imap_reopen
IMAP Funções


Reopen IMAP stream to new mailbox

imap_renamemailbox
imap_rfc822_parse_adrlist
IMAP Funções
PHP Manual

imap_reopen

(PHP 4, PHP 5)

imap_reopen — Reopen IMAP stream to new mailbox

Descrição

bool imap_reopen ( resource $imap_stream , string $mailbox [, int $options = 0 [, int $n_retries = 0 ]] )

Reopens the specified stream to a new mailbox on an IMAP or NNTP server.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

options

The options are a bit mask with one or more of the following:

  • OP_READONLY - Open mailbox read-only
  • OP_ANONYMOUS - Don't use or update a .newsrc for news (NNTP only)
  • OP_HALFOPEN - For IMAP and NNTP names, open a connection but don't open a mailbox.
  • OP_EXPUNGE - Silently expunge recycle stream
  • CL_EXPUNGE - Expunge mailbox automatically upon mailbox close (see also imap_delete() and imap_expunge())

n_retries

Number of maximum connect attempts

Valor Retornado

Returns TRUE if the stream is reopened, FALSE otherwise.

Histórico

Versão | Descrição
5.2.0 | n_retries added

Exemplos

Exemplo #1 imap_reopen() example

<?php
$mbox = imap_open("{imap.example.org:143}INBOX", "username", "password") or die(implode(", ", imap_errors()));
// ...
imap_reopen($mbox, "{imap.example.org:143}INBOX.Sent") or die(implode(", ", imap_errors()));
// ..
?>

imap_renamemailbox
imap_rfc822_parse_adrlist
IMAP Funções


Parses an address string

imap_reopen
imap_rfc822_parse_headers
IMAP Funções
PHP Manual

imap_rfc822_parse_adrlist

(PHP 4, PHP 5)

imap_rfc822_parse_adrlist — Parses an address string

Descrição

array imap_rfc822_parse_adrlist ( string $address , string $default_host )

Parses the address string as defined in » RFC2822 and for each address.

Parâmetros

address

A string containing addresses

default_host

The default host name

Valor Retornado

Returns an array of objects. The objects properties are:

  • mailbox - the mailbox name (username)
  • host - the host name
  • personal - the personal name
  • adl - at domain source route

Exemplos

Exemplo #1 imap_rfc822_parse_adrlist() example

<?php

$address_string = "Joe Doe <doe@example.com>, postmaster@example.com, root";
$address_array  = imap_rfc822_parse_adrlist($address_string, "example.com");
if (!is_array($address_array) || count($address_array) < 1) {
    die("something is wrong\n");
}

foreach ($address_array as $id => $val) {
    echo "# $id\n";
    echo "  mailbox : " . $val->mailbox . "\n";
    echo "  host    : " . $val->host . "\n";
    echo "  personal: " . $val->personal . "\n";
    echo "  adl     : " . $val->adl . "\n";
}
?>

O exemplo acima irá imprimir:

# 0
  mailbox : doe
  host    : example.com
  personal: Joe Doe
  adl     :
# 1
  mailbox : postmaster
  host    : example.com
  personal:
  adl     :
# 2
  mailbox : root
  host    : example.com
  personal:
  adl     :

Veja Também

  • imap_rfc822_parse_headers() - Parse mail headers from a string

imap_reopen
imap_rfc822_parse_headers
IMAP Funções


Parse mail headers from a string

imap_rfc822_parse_adrlist
imap_rfc822_write_address
IMAP Funções
PHP Manual

imap_rfc822_parse_headers

(PHP 4, PHP 5)

imap_rfc822_parse_headers — Parse mail headers from a string

Descrição

object imap_rfc822_parse_headers ( string $headers [, string $defaulthost = "UNKNOWN" ] )

Gets an object of various header elements, similar to imap_header().

Parâmetros

headers

The parsed headers data

defaulthost

The default host name

Valor Retornado

Returns an object similar to the one returned by imap_header(), except for the flags and other properties that come from the IMAP server.

Veja Também

  • imap_rfc822_parse_adrlist() - Parses an address string

imap_rfc822_parse_adrlist
imap_rfc822_write_address
IMAP Funções


Returns a properly formatted email address given the mailbox, host, and personal info

imap_rfc822_parse_headers
imap_savebody
IMAP Funções
PHP Manual

imap_rfc822_write_address

(PHP 4, PHP 5)

imap_rfc822_write_address — Returns a properly formatted email address given the mailbox, host, and personal info

Descrição

string imap_rfc822_write_address ( string $mailbox , string $host , string $personal )

Returns a properly formatted email address as defined in » RFC2822 given the needed information.

Parâmetros

mailbox

The mailbox name, see imap_open() for more information

host

The email host part

personal

The name of the account owner

Valor Retornado

Returns a string properly formatted email address as defined in » RFC2822.

Exemplos

Exemplo #1 imap_rfc822_write_address() example

<?php
echo imap_rfc822_write_address("hartmut", "example.com", "Hartmut Holzgraefe");
?>

O exemplo acima irá imprimir:

Hartmut Holzgraefe <hartmut@example.com>

imap_rfc822_parse_headers
imap_savebody
IMAP Funções


Save a specific body section to a file

imap_rfc822_write_address
imap_scanmailbox
IMAP Funções
PHP Manual

imap_savebody

(PHP 5 >= 5.1.3)

imap_savebody — Save a specific body section to a file

Descrição

bool imap_savebody ( resource $imap_stream , mixed $file , int $msg_number [, string $part_number = "" [, int $options = 0 ]] )

Saves a part or the whole body of the specified message.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

file

The path to the saved file as a string, or a valid file descriptor returned by fopen().

msg_number

The message number

part_number

The part number. It is a string of integers delimited by period which index into a body part list as per the IMAP4 specification

options

A bitmask with one or more of the following:

  • FT_UID - The msg_number is a UID
  • FT_PEEK - Do not set the \Seen flag if not already set
  • FT_INTERNAL - The return string is in internal format, will not canonicalize to CRLF.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_fetchbody() - Fetch a particular section of the body of the message

imap_rfc822_write_address
imap_scanmailbox
IMAP Funções


Sinônimo de imap_listscan

imap_savebody
imap_search
IMAP Funções
PHP Manual

imap_scanmailbox

(PHP 4, PHP 5)

imap_scanmailbox — Sinônimo de imap_listscan()

Descrição

Esta função é um apelido para: imap_listscan().

imap_savebody
imap_search
IMAP Funções


This function returns an array of messages matching the given search criteria

imap_scanmailbox
imap_set_quota
IMAP Funções
PHP Manual

imap_search

(PHP 4, PHP 5)

imap_search — This function returns an array of messages matching the given search criteria

Descrição

array imap_search ( resource $imap_stream , string $criteria [, int $options = SE_FREE [, string $charset = NIL ]] )

This function performs a search on the mailbox currently opened in the given IMAP stream.

For example, to match all unanswered messages sent by Mom, you'd use: "UNANSWERED FROM mom". Searches appear to be case insensitive. This list of criteria is from a reading of the UW c-client source code and may be incomplete or inaccurate (see also » RFC2060, section 6.4.4).

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

criteria

A string, delimited by spaces, in which the following keywords are allowed. Any multi-word arguments (e.g. FROM "joey smith") must be quoted.

  • ALL - return all messages matching the rest of the criteria
  • ANSWERED - match messages with the \\ANSWERED flag set
  • BCC "string" - match messages with "string" in the Bcc: field
  • BEFORE "date" - match messages with Date: before "date"
  • BODY "string" - match messages with "string" in the body of the message
  • CC "string" - match messages with "string" in the Cc: field
  • DELETED - match deleted messages
  • FLAGGED - match messages with the \\FLAGGED (sometimes referred to as Important or Urgent) flag set
  • FROM "string" - match messages with "string" in the From: field
  • KEYWORD "string" - match messages with "string" as a keyword
  • NEW - match new messages
  • OLD - match old messages
  • ON "date" - match messages with Date: matching "date"
  • RECENT - match messages with the \\RECENT flag set
  • SEEN - match messages that have been read (the \\SEEN flag is set)
  • SINCE "date" - match messages with Date: after "date"
  • SUBJECT "string" - match messages with "string" in the Subject:
  • TEXT "string" - match messages with text "string"
  • TO "string" - match messages with "string" in the To:
  • UNANSWERED - match messages that have not been answered
  • UNDELETED - match messages that are not deleted
  • UNFLAGGED - match messages that are not flagged
  • UNKEYWORD "string" - match messages that do not have the keyword "string"
  • UNSEEN - match messages which have not been read yet

options

Valid values for options are SE_UID, which causes the returned array to contain UIDs instead of messages sequence numbers.

charset

Valor Retornado

Returns an array of message numbers or UIDs.

Return FALSE if it does not understand the search criteria or no messages have been found.

Histórico

Versão | Descrição
4.3.3 | The charset parameter was added

Veja Também

  • imap_listscan() - Returns the list of mailboxes that matches the given text

imap_scanmailbox
imap_set_quota
IMAP Funções


Sets a quota for a given mailbox

imap_search
imap_setacl
IMAP Funções
PHP Manual

imap_set_quota

(PHP 4 >= 4.0.5, PHP 5)

imap_set_quota — Sets a quota for a given mailbox

Descrição

bool imap_set_quota ( resource $imap_stream , string $quota_root , int $quota_limit )

Sets an upper limit quota on a per mailbox basis.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

quota_root

The mailbox to have a quota set. This should follow the IMAP standard format for a mailbox: user.name.

quota_limit

The maximum size (in KB) for the quota_root

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imap_set_quota() example

<?php
$mbox = imap_open("{imap.example.org:143}", "mailadmin", "password");

if (!imap_set_quota($mbox, "user.kalowsky", 3000)) {
    echo "Error in setting quota\n";
    return;
}

imap_close($mbox);
?>

Notas

This function is currently only available to users of the c-client2000 or greater library.

The given imap_stream must be opened as the mail administrator, other wise this function will fail.

Veja Também

  • imap_open() - Open an IMAP stream to a mailbox
  • imap_get_quota() - Retrieve the quota level settings, and usage statics per mailbox

imap_search
imap_setacl
IMAP Funções


Sets the ACL for a giving mailbox

imap_set_quota
imap_setflag_full
IMAP Funções
PHP Manual

imap_setacl

(PHP 4 >= 4.0.7, PHP 5)

imap_setacl — Sets the ACL for a giving mailbox

Descrição

bool imap_setacl ( resource $imap_stream , string $mailbox , string $id , string $rights )

Sets the ACL for a giving mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

id

The user to give the rights to.

rights

The rights to give to the user. Passing an empty string will delete acl.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

This function is currently only available to users of the c-client2000 or greater library.

Veja Também

  • imap_getacl() - Gets the ACL for a given mailbox

imap_set_quota
imap_setflag_full
IMAP Funções


Sets flags on messages

imap_setacl
imap_sort
IMAP Funções
PHP Manual

imap_setflag_full

(PHP 4, PHP 5)

imap_setflag_full — Sets flags on messages

Descrição

bool imap_setflag_full ( resource $imap_stream , string $sequence , string $flag [, int $options = NIL ] )

Causes a store to add the specified flag to the flags set for the messages in the specified sequence.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

sequence

A sequence of message numbers. You can enumerate desired messages with the X,Y syntax, or retrieve all messages within an interval with the X:Y syntax

flag

The flags which you can set are \Seen, \Answered, \Flagged, \Deleted, and \Draft as defined by » RFC2060.

options

A bit mask that may contain the single option:

  • ST_UID - The sequence argument contains UIDs instead of sequence numbers

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 imap_setflag_full() example

<?php
$mbox = imap_open("{imap.example.org:143}", "username", "password")
     or die("can't connect: " . imap_last_error());

$status = imap_setflag_full($mbox, "2,5", "\\Seen \\Flagged");

echo gettype($status) . "\n";
echo $status . "\n";

imap_close($mbox);
?>

Veja Também

  • imap_clearflag_full() - Clears flags on messages

imap_setacl
imap_sort
IMAP Funções


Gets and sort messages

imap_setflag_full
imap_status
IMAP Funções
PHP Manual

imap_sort

(PHP 4, PHP 5)

imap_sort — Gets and sort messages

Descrição

array imap_sort ( resource $imap_stream , int $criteria , int $reverse [, int $options = 0 [, string $search_criteria = NULL [, string $charset = NIL ]]] )

Gets and sorts message numbers by the given parameters.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

criteria

Criteria can be one (and only one) of the following:

  • SORTDATE - message Date
  • SORTARRIVAL - arrival date
  • SORTFROM - mailbox in first From address
  • SORTSUBJECT - message subject
  • SORTTO - mailbox in first To address
  • SORTCC - mailbox in first cc address
  • SORTSIZE - size of message in octets

reverse

Set this to 1 for reverse sorting

options

The options are a bitmask of one or more of the following:

  • SE_UID - Return UIDs instead of sequence numbers
  • SE_NOPREFETCH - Don't prefetch searched messages

search_criteria

charset

Valor Retornado

Returns an array of message numbers sorted by the given parameters.

Histórico

Versão | Descrição
4.3.3 | The charset parameter was added

imap_setflag_full
imap_status
IMAP Funções


Returns status information on a mailbox

imap_sort
imap_subscribe
IMAP Funções
PHP Manual

imap_status

(PHP 4, PHP 5)

imap_status — Returns status information on a mailbox

Descrição

object imap_status ( resource $imap_stream , string $mailbox , int $options )

Gets status information about the given mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

options

Valid flags are:

  • SA_MESSAGES - set $status->messages to the number of messages in the mailbox
  • SA_RECENT - set $status->recent to the number of recent messages in the mailbox
  • SA_UNSEEN - set $status->unseen to the number of unseen (new) messages in the mailbox
  • SA_UIDNEXT - set $status->uidnext to the next uid to be used in the mailbox
  • SA_UIDVALIDITY - set $status->uidvalidity to a constant that changes when uids for the mailbox may no longer be valid
  • SA_ALL - set all of the above

Valor Retornado

This function returns an object containing status information. The object has the following properties: messages, recent, unseen, uidnext, and uidvalidity.

flags is also set, which contains a bitmask which can be checked against any of the above constants.

Exemplos

Exemplo #1 imap_status() example

<?php
$mbox = imap_open("{imap.example.com}", "username", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());

$status = imap_status($mbox, "{imap.example.org}INBOX", SA_ALL);
if ($status) {
  echo "Messages:   " . $status->messages    . "<br />\n";
  echo "Recent:     " . $status->recent      . "<br />\n";
  echo "Unseen:     " . $status->unseen      . "<br />\n";
  echo "UIDnext:    " . $status->uidnext     . "<br />\n";
  echo "UIDvalidity:" . $status->uidvalidity . "<br />\n";
} else {
  echo "imap_status failed: " . imap_last_error() . "\n";
}

imap_close($mbox);
?>

imap_sort
imap_subscribe
IMAP Funções


Subscribe to a mailbox

imap_status
imap_thread
IMAP Funções
PHP Manual

imap_subscribe

(PHP 4, PHP 5)

imap_subscribe — Subscribe to a mailbox

Descrição

bool imap_subscribe ( resource $imap_stream , string $mailbox )

Subscribe to a new mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_unsubscribe() - Unsubscribe from a mailbox

imap_status
imap_thread
IMAP Funções


Returns a tree of threaded message

imap_subscribe
imap_timeout
IMAP Funções
PHP Manual

imap_thread

(PHP 4 >= 4.0.7, PHP 5)

imap_thread — Returns a tree of threaded message

Descrição

array imap_thread ( resource $imap_stream [, int $options = SE_FREE ] )

Gets a tree of a threaded message.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

options

Valor Retornado

imap_thread() returns an associative array containing a tree of messages threaded by REFERENCES, or FALSE on error.

Every message in the current mailbox will be represented by three entries in the resulting array:

  • $thread["XX.num"] - current message number

  • $thread["XX.next"]

  • $thread["XX.branch"]

Exemplos

Exemplo #1 imap_thread() Example

<?php

// Here we're outputting the threads of a newsgroup, in HTML

$nntp = imap_open('{news.example.com:119/nntp}some.newsgroup', '', '');
$threads = imap_thread($nntp);

foreach ($threads as $key => $val) {
  $tree = explode('.', $key);
  if ($tree[1] == 'num') {
    $header = imap_headerinfo($nntp, $val);
    echo "<ul>\n\t<li>" . $header->fromaddress . "\n";
  } elseif ($tree[1] == 'branch') {
    echo "\t</li>\n</ul>\n";
  }
}

imap_close($nntp);

?>

imap_subscribe
imap_timeout
IMAP Funções


Set or fetch imap timeout

imap_thread
imap_uid
IMAP Funções
PHP Manual

imap_timeout

(PHP 4 >= 4.3.3, PHP 5)

imap_timeout — Set or fetch imap timeout

Descrição

mixed imap_timeout ( int $timeout_type [, int $timeout = -1 ] )

Sets or fetches the imap timeout.

Parâmetros

timeout_type

One of the following: IMAP_OPENTIMEOUT, IMAP_READTIMEOUT, IMAP_WRITETIMEOUT, or IMAP_CLOSETIMEOUT.

timeout

The timeout, in seconds.

Valor Retornado

If the timeout parameter is set, this function returns TRUE on success and FALSE on failure.

If timeout is not provided or evaluates to -1, the current timeout value of timeout_type is returned as an integer.

Exemplos

Exemplo #1 imap_timeout() example

<?php

echo "The current read timeout is " . imap_timeout(IMAP_READTIMEOUT) . "\n";

?>

imap_thread
imap_uid
IMAP Funções


This function returns the UID for the given message sequence number

imap_timeout
imap_undelete
IMAP Funções
PHP Manual

imap_uid

(PHP 4, PHP 5)

imap_uid — This function returns the UID for the given message sequence number

Descrição

int imap_uid ( resource $imap_stream , int $msg_number )

This function returns the UID for the given message sequence number. An UID is a unique identifier that will not change over time while a message sequence number may change whenever the content of the mailbox changes.

This function is the inverse of imap_msgno().

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number.

Valor Retornado

The UID of the given message.

Notas

Nota:

This function is not supported by POP3 mailboxes.

Veja Também

  • imap_msgno() - Gets the message sequence number for the given UID

imap_timeout
imap_undelete
IMAP Funções


Unmark the message which is marked deleted

imap_uid
imap_unsubscribe
IMAP Funções
PHP Manual

imap_undelete

(PHP 4, PHP 5)

imap_undelete — Unmark the message which is marked deleted

Descrição

bool imap_undelete ( resource $imap_stream , int $msg_number [, int $flags = 0 ] )

Removes the deletion flag for a specified message, which is set by imap_delete() or imap_mail_move().

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

msg_number

The message number

flags

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_delete() - Mark a message for deletion from current mailbox
  • imap_mail_move() - Move specified messages to a mailbox

imap_uid
imap_unsubscribe
IMAP Funções


Unsubscribe from a mailbox

imap_undelete
imap_utf7_decode
IMAP Funções
PHP Manual

imap_unsubscribe

(PHP 4, PHP 5)

imap_unsubscribe — Unsubscribe from a mailbox

Descrição

bool imap_unsubscribe ( resource $imap_stream , string $mailbox )

Unsubscribe from the specified mailbox.

Parâmetros

imap_stream

Um stream IMAP retornado por imap_open().

mailbox

The mailbox name, see imap_open() for more information

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • imap_subscribe() - Subscribe to a mailbox

imap_undelete
imap_utf7_decode
IMAP Funções


Decodes a modified UTF-7 encoded string

imap_unsubscribe
imap_utf7_encode
IMAP Funções
PHP Manual

imap_utf7_decode

(PHP 4, PHP 5)

imap_utf7_decode — Decodes a modified UTF-7 encoded string

Descrição

string imap_utf7_decode ( string $text )

Decodes modified UTF-7 text into ISO-8859-1 string.

This function is needed to decode mailbox names that contain certain characters which are not in range of printable ASCII characters.

Parâmetros

text

A modified UTF-7 encoding string, as defined in » RFC 2060, section 5.1.3 (original UTF-7 was defined in » RFC1642).

Valor Retornado

Returns a string that is encoded in ISO-8859-1 and consists of the same sequence of characters in text, or FALSE if text contains invalid modified UTF-7 sequence or text contains a character that is not part of ISO-8859-1 character set.

Veja Também

  • imap_utf7_encode() - Converts ISO-8859-1 string to modified UTF-7 text

imap_unsubscribe
imap_utf7_encode
IMAP Funções


Converts ISO-8859-1 string to modified UTF-7 text

imap_utf7_decode
imap_utf8
IMAP Funções
PHP Manual

imap_utf7_encode

(PHP 4, PHP 5)

imap_utf7_encode — Converts ISO-8859-1 string to modified UTF-7 text

Descrição

string imap_utf7_encode ( string $data )

Converts data to modified UTF-7 text.

This is needed to encode mailbox names that contain certain characters which are not in range of printable ASCII characters.

Parâmetros

data

An ISO-8859-1 string.

Valor Retornado

Returns data encoded with the modified UTF-7 encoding as defined in » RFC 2060, section 5.1.3 (original UTF-7 was defined in » RFC1642).

Veja Também

  • imap_utf7_decode() - Decodes a modified UTF-7 encoded string

imap_utf7_decode
imap_utf8
IMAP Funções


Converts MIME-encoded text to UTF-8

imap_utf7_encode
Mail
IMAP Funções
PHP Manual

imap_utf8

(PHP 4, PHP 5)

imap_utf8 — Converts MIME-encoded text to UTF-8

Descrição

string imap_utf8 ( string $mime_encoded_text )

Converts the given mime_encoded_text to UTF-8.

Parâmetros

mime_encoded_text

A MIME encoded string. MIME encoding method and the UTF-8 specification are described in » RFC2047 and » RFC2044 respectively.

Valor Retornado

Returns an UTF-8 encoded string.

Veja Também

  • imap_mime_header_decode() - Decode MIME header elements

imap_utf7_encode
Mail
IMAP Funções


Mail

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Mail
    • ezmlm_hash — Calcula o valor do hash necessário para EZMLM
    • mail — Envia email
imap_utf8
Introdução
Extensões Relacionadas a Mail


Introdução

A função mail() te permite enviar email.

Mail
Instalação/Configuração
Mail


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mail


Dependências

Para as funções de E-mail estarem disponíveis, o PHP deve ter acesso ao binário sendmail de seu sistema durante a compilação. Se você utiliza um outro programa de email, tal como qmail ou postfix, certifique-se de usar os "wrappers" (envelopes) de sendmail apropriados que vêm com eles. O PHP vai procurar primeiro pelo sendmail em seu PATH, e então nos seguintes: /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib. É altamente recomendado ter o sendmail deisponível de seu PATH. Também, osuário que compilou o PHP deve ter permissão para acessar o binário de sendmail.

Instalação/Configuração
Instalação
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da Mail
Nome | Padrão | Modificável | Changelog
SMTP | "localhost" | PHP_INI_ALL |
smtp_port | "25" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
sendmail_from | NULL | PHP_INI_ALL |
sendmail_path | "/usr/sbin/sendmail -t -i" | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

SMTP string

Usado dentro do windows apenas: nome do host ou endereço IP do servidor SMTP que o PHP usaria para emails enviados com a função mail().

smtp_port int

Usado dentro do windows apenas: Número da porta para conectar ao servidor especificado com a configuração do SMTPquando enviando emai com mail(); por definição é 25. Disponível apenas a partir do PHP 4.3.0.

sendmail_from string

Qual "From:" endereço de email deveria ser usado em emails enviados do PHP dentro do Windows. Esta diretiva também define o cabeçalho "Return-Path:".

sendmail_path string

Onde o programa de sendmailpode ser encontrado, normalmente /usr/sbin/sendmail ou /usr/lib/sendmail. configure (configura) uma tentativa correta de localizar ele para você e definir um padrão, mas se ele falha, você pode definir ele aqui.

Sistemas que não usam sendmail deveriam definir esta diretiva para "sendmail wrapper/replacement" que seus sistemas de email oferecem, se algum. Por exemplo, » Qmail usuários podem normalmente, defini-lo para /var/qmail/bin/sendmail ou /var/qmail/bin/qmail-inject.

qmail-injectnão requer nenhuma opção para processar o email corretamente.

Esta diretiva funciona também em Windows. Se definir, smtp, smtp_port e sendmail_from são ignorados e o especificado comando é executado.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da Mail
Mail


Funções da Mail

Índice

  • ezmlm_hash — Calcula o valor do hash necessário para EZMLM
  • mail — Envia email
Constantes pré-definidas
ezmlm_hash
Mail


Calcula o valor do hash necessário para EZMLM

Funções da Mail
mail
Funções da Mail
PHP Manual

ezmlm_hash

(PHP 4 >= 4.0.2, PHP 5)

ezmlm_hash — Calcula o valor do hash necessário para EZMLM

Descrição

int ezmlm_hash ( string $addr )

ezmlm_hash() calcula valor do hash necessário quando mantendo listas de email EZMLM num banco de dados MySQL.

Parâmetros

addr

O endereço de email que está sendo calculado o hash.

Valor Retornado

O valor do hash de addr.

Exemplos

Exemplo #1 Calculando o hash e inscrevendo um usuário

<?php

$user = "joecool@example.com";
$hash = ezmlm_hash($user);
$query = sprintf("INSERT INTO sample VALUES (%s, '%s')", $hash, $user);
$db->query($query); // using PHPLIB db interface

?>

Funções da Mail
mail
Funções da Mail


Envia email

ezmlm_hash
Mailparse
Funções da Mail
PHP Manual

mail

(PHP 4, PHP 5)

mail — Envia email

Descrição

bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

Envia um email.

Parâmetros

to

Receptor, ou receptores do email.

O formato desta string precisa estar de acordo com » RFC 2822. Alguns exemplos:

  • user@example.com
  • user@example.com, anotheruser@example.com
  • User <user@example.com>
  • User <user@example.com>, Another User <anotheruser@example.com>

subject

Assunto do email a ser enviado.

Cuidado

Não deve conter caractere de nova linha, ou o email pode não ser enviado corretamente.

message

Mensagem a ser enviada.

Cada linha deve ser separada com um LF (\n). Linhas não deve ser maiores que 70 caracteres.

Cuidado

(Somente Windows) Quando PHP está usando o servidor SMTP diretamente, e uma parada total é encontrada no início de uma linha, ela é removida. Para se defender disto, substitua estas ocorrência com dois pontos seguindos.

<?php
$text = str_replace("\n.", "\n..", $text);
?>

additional_headers (opcional)

String a ser inserida no final do cabeçalho do email.

Esta é normalmente usada para adicionar cabeçalhos extras (From, Cc, e Bcc). Múltiplos cabeçalhos extra devem ser separados com um CRLF (\r\n).

Nota:

Quando enviando email, o email precisa conter um cabeçalho From. Este pode ser definido com o parâmetro additional_headers, ou um padrão pode ser definido no php.ini.

Um deslize fará com que resulte em uma mensagem de erro similar a Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing. O cabeçalho From define também Return-Path em Windows.

Nota:

Se mensagens não são recebiedas, tente usar somente um LF (\n). Alguns Unix mail transfer agents de má qualidade modificam LF por CRLF automaticamente (que leva a duplicação de CR se CRLF é usado). Este deve ser um último recurso, como não está de acordo com » RFC 2822.

additional_parameters (opcional)

O parâmetro additional_parameters pode ser usado para passar um parâmetro adicional para o programa configurado para usa quando enviando email usando a configuração sendmail_path. Por exemplo, isto pode ser usado para definir o endereço do envelope remetente quando usando sendmail com a opção do sendmail -f.

Você pode precisar adicionar o usuário que seu servidor web executa como para sua configuração de sendmail para evitar que um cabeçalho 'X-Warning' seja adicionado à mensagem quando você define o envelope remetente (-f) usando este método. Para usuários de sendmail, este arquivo é /etc/mail/trusted-users.

Valor Retornado

Retorna TRUE se o email foi aceito com sucesso pelo entregado, FALSE caso contrário.

É importante notar que somente pelo o email ser aceito pelo entregado, não significa que o email alcancará o destino esperado.

Histórico

Versão | Descrição
4.3.0 (Somente Windows) | Todos os cabeçalhos (como From, Cc, Bcc e Date) são suportados, e não são case-sensitive. (Como cabeçalhos customizados não são interpretados pela MTA, são analisados pelo PHP, PHP < 4.3 suportava somente o elemento de cabeçalho Cc e era case-sensitive).
4.2.3 | O parâmetro additional_parameters é desabilitado em safe_mode e a função mail() emitirá uma mensagem de aviso e retornará FALSE quando usada.
4.0.5 | O parâmetro additional_parameters foi adicionado.

Exemplos

Exemplo #1 Enviando email.

Usando mail() para enviar um simples email:

<?php
// The message
$message = "Line 1\nLine 2\nLine 3";

// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70);

// Send
mail('caffinated@example.com', 'My Subject', $message);
?>

Exemplo #2 Enviando email com cabeçalhos extra.

A adição de cabeçalhos básicos, dizendo a MUA os endereços From e Reply-To:

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>

Exemplo #3 Enviando email com um parâmetro adicional da linha de comando.

O parâmetro additional_parameters pode ser usado para passar um parâmetro adicional para o programa configurado para usar quando enviar email usando a definição de configuração sendmail_path.

<?php
mail('nobody@example.com', 'the subject', 'the message', null,
   '-fwebmaster@example.com');
?>

Exemplo #4 Enviando email HTML

É também possível enviar email HTML com mail().

<?php
// multiple recipients
$to  = 'aidan@example.com' . ', '; // note the comma
$to .= 'wez@example.com';

// subject
$subject = 'Birthday Reminders for August';

// message
$message = '
<html>
<head>
 <title>Birthday Reminders for August</title>
</head>
<body>
<p>Here are the birthdays upcoming in August!</p>
<table>
 <tr>
  <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
 </tr>
 <tr>
  <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
 </tr>
 <tr>
  <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
 </tr>
</table>
</body>
</html>
';

/* Atenção se você pretende inserir numa variável uma mensagem html mais
 complexa do que essa sem precisar escapar os carateres
 necessários pode ser feito o uso da sintaxe heredoc, consulte tipos-string-sintaxe-heredoc */

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Additional headers
$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";
$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";
$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n";

// Mail it
mail($to, $subject, $message, $headers);
?>

Nota:

Se a intenção é enviar email HTML ou outro formato complexo, é recomendado usar o pacote PEAR » PEAR::Mail_Mime.

Notas

Nota:

A implentação do Windows de mail() difere bastante da implentação Unix. Primeiro, ele não usa um binary local para compor mensagens mas apenas opera com sockets diretos o que significa que uma MTA é necessária monitorando um socket de rede (que pode ser ou o localhost ou uma máquina remota).

Segundo, cabeçalhos customizados como From:, Cc:, Bcc: e Date: not são interpretados pela MTA, mas são analiados pelo PHP.

Assim como, o parâmetro to não deve ser um endereço na forma de "Algo <alguem@example.com>". O comando de email poderia não analisar isso adequadamente enquanto se comunica com o MTA.

Nota:

Email com anexos e tipos especiais de conteúdo (e.g. HTML) podem ser enviado usando esta função. Isto é melhorado com MIME-encoding - para mais informação, veja este » artigo da Zend ou as classes » PEAR Mime.

Nota:

Vale a pena notar que a função mail() não é apropriada para grande volume de email em um loop. Esta função abre e fecha um socket SMTP para cada email, que não é muito eficiente.

Para enviar uma grande quantidade de email, veja os pacotes » PEAR::Mail, e » PEAR::Mail_Queue.

Nota:

O seguintes RFCs podem ser úteis: » RFC 1896, » RFC 2045, » RFC 2046, » RFC 2047, » RFC 2048, » RFC 2049, e » RFC 2822.

Veja Também

  • imap_mail() - Send an email message
  • » PEAR::Mail
  • » PEAR::Mail_Mime

ezmlm_hash
Mailparse
Funções da Mail


Mailparse

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Mailparse Funções
    • mailparse_determine_best_xfer_encoding — Gets the best way of encoding
    • mailparse_msg_create — Create a mime mail resource
    • mailparse_msg_extract_part_file — Extracts/decodes a message section
    • mailparse_msg_extract_part — Extracts/decodes a message section
    • mailparse_msg_extract_whole_part_file — Extracts a message section including headers without decoding the transfer encoding
    • mailparse_msg_free — Frees a MIME resource
    • mailparse_msg_get_part_data — Returns an associative array of info about the message
    • mailparse_msg_get_part — Returns a handle on a given section in a mimemessage
    • mailparse_msg_get_structure — Returns an array of mime section names in the supplied message
    • mailparse_msg_parse_file — Parses a file
    • mailparse_msg_parse — Incrementally parse data into buffer
    • mailparse_rfc822_parse_addresses — Parse RFC 822 compliant addresses
    • mailparse_stream_encode — Streams data from source file pointer, apply encoding and write to destfp
    • mailparse_uudecode_all — Scans the data from fp and extract each embedded uuencoded file
mail
Introdução
Extensões Relacionadas a Mail


Introdução

Mailparse is an extension for parsing and working with email messages. It can deal with » RFC 822 and » RFC 2045 (MIME) compliant messages.

Mailparse is stream based, which means that it does not keep in-memory copies of the files it processes - so it is very resource efficient when dealing with large messages.

Nota:

Mailparse requires the mbstring extension, and mbstring must be loaded before mailparse.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 4.2.0.

Mailparse
Instalação/Configuração
Mailparse


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Mailparse


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/mailparse.

In order to use these functions you must compile PHP with mailparse support by using the --enable-mailparse configure option.

Windows users will enable php_mailparse.dll inside of php.ini in order to use these functions. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Mailparse configuration options
Name | Default | Changeable | Changelog
mailparse.def_charset | "us-ascii" | PHP_INI_ALL | Available since PHP 4.1.0. Removed in PHP 4.2.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MAILPARSE_EXTRACT_OUTPUT (integer)
MAILPARSE_EXTRACT_STREAM (integer)
MAILPARSE_EXTRACT_RETURN (integer)
Tipos Resource
Mailparse Funções
Mailparse


Mailparse Funções

Índice

  • mailparse_determine_best_xfer_encoding — Gets the best way of encoding
  • mailparse_msg_create — Create a mime mail resource
  • mailparse_msg_extract_part_file — Extracts/decodes a message section
  • mailparse_msg_extract_part — Extracts/decodes a message section
  • mailparse_msg_extract_whole_part_file — Extracts a message section including headers without decoding the transfer encoding
  • mailparse_msg_free — Frees a MIME resource
  • mailparse_msg_get_part_data — Returns an associative array of info about the message
  • mailparse_msg_get_part — Returns a handle on a given section in a mimemessage
  • mailparse_msg_get_structure — Returns an array of mime section names in the supplied message
  • mailparse_msg_parse_file — Parses a file
  • mailparse_msg_parse — Incrementally parse data into buffer
  • mailparse_rfc822_parse_addresses — Parse RFC 822 compliant addresses
  • mailparse_stream_encode — Streams data from source file pointer, apply encoding and write to destfp
  • mailparse_uudecode_all — Scans the data from fp and extract each embedded uuencoded file
Constantes pré-definidas
mailparse_determine_best_xfer_encoding
Mailparse


Gets the best way of encoding

Mailparse Funções
mailparse_msg_create
Mailparse Funções
PHP Manual

mailparse_determine_best_xfer_encoding

(PECL mailparse >= 0.9.0)

mailparse_determine_best_xfer_encoding — Gets the best way of encoding

Descrição

string mailparse_determine_best_xfer_encoding ( resource $fp )

Figures out the best way of encoding the content read from the given file pointer.

Parâmetros

fp

A valid file pointer, which must be seek-able.

Valor Retornado

Returns one of the character encodings supported by the mbstring module.

Exemplos

Exemplo #1 mailparse_determine_best_xfer_encoding() example

<?php

$fp = fopen('somemail.eml', 'r');
echo 'Best encoding: ' . mailparse_determine_best_xfer_encoding($fp);

?>

O exemplo acima irá imprimir algo similar a:

Best encoding: 7bit

Mailparse Funções
mailparse_msg_create
Mailparse Funções


Create a mime mail resource

mailparse_determine_best_xfer_encoding
mailparse_msg_extract_part_file
Mailparse Funções
PHP Manual

mailparse_msg_create

(PECL mailparse >= 0.9.0)

mailparse_msg_create — Create a mime mail resource

Descrição

resource mailparse_msg_create ( void )

Create a MIME mail resource.

Valor Retornado

Returns a handle that can be used to parse a message.

Veja Também

  • mailparse_msg_free() - Frees a MIME resource
  • mailparse_msg_parse_file() - Parses a file

mailparse_determine_best_xfer_encoding
mailparse_msg_extract_part_file
Mailparse Funções


Extracts/decodes a message section

mailparse_msg_create
mailparse_msg_extract_part
Mailparse Funções
PHP Manual

mailparse_msg_extract_part_file

(PECL mailparse >= 0.9.0)

mailparse_msg_extract_part_file — Extracts/decodes a message section

Descrição

string mailparse_msg_extract_part_file ( resource $mimemail , mixed $filename [, callback $callbackfunc ] )

Extracts/decodes a message section from the supplied filename.

The contents of the section will be decoded according to their transfer encoding - base64, quoted-printable and uuencoded text are supported.

Parâmetros

mimemail

A valid MIME resource, created with mailparse_msg_create().

filename

Can be a file name or a valid stream resource.

callbackfunc

If set, this must be either a valid callback that will be passed the extracted section, or NULL to make this function return the extracted section.

If not specified, the contents will be sent to "stdout".

Valor Retornado

If callbackfunc is not NULL returns TRUE on success.

If callbackfunc is set to NULL, returns the extracted section as a string.

Returns FALSE on error.

Veja Também

  • mailparse_msg_extract_part() - Extracts/decodes a message section
  • mailparse_msg_extract_whole_part_file() - Extracts a message section including headers without decoding the transfer encoding

mailparse_msg_create
mailparse_msg_extract_part
Mailparse Funções


Extracts/decodes a message section

mailparse_msg_extract_part_file
mailparse_msg_extract_whole_part_file
Mailparse Funções
PHP Manual

mailparse_msg_extract_part

(PECL mailparse >= 0.9.0)

mailparse_msg_extract_part — Extracts/decodes a message section

Descrição

void mailparse_msg_extract_part ( resource $mimemail , string $msgbody [, callback $callbackfunc ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mimemail

A valid MIME resource.

msgbody

callbackfunc

Valor Retornado

Não há valor retornado.

Veja Também

  • mailparse_msg_extract_part_file() - Extracts/decodes a message section
  • mailparse_msg_extract_whole_part_file() - Extracts a message section including headers without decoding the transfer encoding

mailparse_msg_extract_part_file
mailparse_msg_extract_whole_part_file
Mailparse Funções


Extracts a message section including headers without decoding the transfer encoding

mailparse_msg_extract_part
mailparse_msg_free
Mailparse Funções
PHP Manual

mailparse_msg_extract_whole_part_file

(PECL mailparse >= 0.9.0)

mailparse_msg_extract_whole_part_file — Extracts a message section including headers without decoding the transfer encoding

Descrição

string mailparse_msg_extract_whole_part_file ( resource $mimemail , string $filename [, callback $callbackfunc ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mimemail

A valid MIME resource.

filename

callbackfunc

Valor Retornado

Veja Também

  • mailparse_msg_extract_part() - Extracts/decodes a message section
  • mailparse_msg_extract_part_file() - Extracts/decodes a message section

mailparse_msg_extract_part
mailparse_msg_free
Mailparse Funções


Frees a MIME resource

mailparse_msg_extract_whole_part_file
mailparse_msg_get_part_data
Mailparse Funções
PHP Manual

mailparse_msg_free

(PECL mailparse >= 0.9.0)

mailparse_msg_free — Frees a MIME resource

Descrição

bool mailparse_msg_free ( resource $mimemail )

Frees a MIME resource.

Parâmetros

mimemail

A valid MIME resource allocated by mailparse_msg_create() or mailparse_msg_parse_file().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • mailparse_msg_create() - Create a mime mail resource
  • mailparse_msg_parse_file() - Parses a file

mailparse_msg_extract_whole_part_file
mailparse_msg_get_part_data
Mailparse Funções


Returns an associative array of info about the message

mailparse_msg_free
mailparse_msg_get_part
Mailparse Funções
PHP Manual

mailparse_msg_get_part_data

(PECL mailparse >= 0.9.0)

mailparse_msg_get_part_data — Returns an associative array of info about the message

Descrição

array mailparse_msg_get_part_data ( resource $mimemail )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mimemail

A valid MIME resource.

mailparse_msg_free
mailparse_msg_get_part
Mailparse Funções


Returns a handle on a given section in a mimemessage

mailparse_msg_get_part_data
mailparse_msg_get_structure
Mailparse Funções
PHP Manual

mailparse_msg_get_part

(PECL mailparse >= 0.9.0)

mailparse_msg_get_part — Returns a handle on a given section in a mimemessage

Descrição

resource mailparse_msg_get_part ( resource $mimemail , string $mimesection )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mimemail

A valid MIME resource.

mimesection

mailparse_msg_get_part_data
mailparse_msg_get_structure
Mailparse Funções


Returns an array of mime section names in the supplied message

mailparse_msg_get_part
mailparse_msg_parse_file
Mailparse Funções
PHP Manual

mailparse_msg_get_structure

(PECL mailparse >= 0.9.0)

mailparse_msg_get_structure — Returns an array of mime section names in the supplied message

Descrição

array mailparse_msg_get_structure ( resource $mimemail )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mimemail

A valid MIME resource.

mailparse_msg_get_part
mailparse_msg_parse_file
Mailparse Funções


Parses a file

mailparse_msg_get_structure
mailparse_msg_parse
Mailparse Funções
PHP Manual

mailparse_msg_parse_file

(PECL mailparse >= 0.9.0)

mailparse_msg_parse_file — Parses a file

Descrição

resource mailparse_msg_parse_file ( string $filename )

Parses a file. This is the optimal way of parsing a mail file that you have on disk.

Parâmetros

filename

Path to the file holding the message. The file is opened and streamed through the parser.

Valor Retornado

Returns a MIME resource representing the structure, or FALSE on error.

Veja Também

  • mailparse_msg_free() - Frees a MIME resource
  • mailparse_msg_create() - Create a mime mail resource

mailparse_msg_get_structure
mailparse_msg_parse
Mailparse Funções


Incrementally parse data into buffer

mailparse_msg_parse_file
mailparse_rfc822_parse_addresses
Mailparse Funções
PHP Manual

mailparse_msg_parse

(PECL mailparse >= 0.9.0)

mailparse_msg_parse — Incrementally parse data into buffer

Descrição

bool mailparse_msg_parse ( resource $mimemail , string $data )

Incrementally parse data into the supplied mime mail resource.

This function allow you to stream portions of a file at a time, rather than read and parse the whole thing.

Parâmetros

mimemail

A valid MIME resource.

data

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mailparse_msg_parse_file
mailparse_rfc822_parse_addresses
Mailparse Funções


Parse RFC 822 compliant addresses

mailparse_msg_parse
mailparse_stream_encode
Mailparse Funções
PHP Manual

mailparse_rfc822_parse_addresses

(PECL mailparse >= 0.9.0)

mailparse_rfc822_parse_addresses — Parse RFC 822 compliant addresses

Descrição

array mailparse_rfc822_parse_addresses ( string $addresses )

Parses a » RFC 822 compliant recipient list, such as that found in the To: header.

Parâmetros

addresses

A string containing addresses, like in: Wez Furlong <wez@example.com>, doe@example.com

Nota:

This string must not include the header name.

Valor Retornado

Returns an array of associative arrays with the following keys for each recipient:

display | The recipient name, for display purpose. If this part is not set for a recipient, this key will hold the same value as address.
address | The email address
is_group | TRUE if the recipient is a newsgroup, FALSE otherwise.

Exemplos

Exemplo #1 mailparse_rfc822_parse_addresses() example

<?php

$to = 'Wez Furlong <wez@example.com>, doe@example.com';
var_dump(mailparse_rfc822_parse_addresses($to));

?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  array(3) {
    ["display"]=>
    string(11) "Wez Furlong"
    ["address"]=>
    string(15) "wez@example.com"
    ["is_group"]=>
    bool(false)
  }
  [1]=>
  array(3) {
    ["display"]=>
    string(15) "doe@example.com"
    ["address"]=>
    string(15) "doe@example.com"
    ["is_group"]=>
    bool(false)
  }
}

mailparse_msg_parse
mailparse_stream_encode
Mailparse Funções


Streams data from source file pointer, apply encoding and write to destfp

mailparse_rfc822_parse_addresses
mailparse_uudecode_all
Mailparse Funções
PHP Manual

mailparse_stream_encode

(PECL mailparse >= 0.9.0)

mailparse_stream_encode — Streams data from source file pointer, apply encoding and write to destfp

Descrição

bool mailparse_stream_encode ( resource $sourcefp , resource $destfp , string $encoding )

Streams data from the source file pointer, apply encoding and write to the destination file pointer.

Parâmetros

sourcefp

A valid file handle. The file is streamed through the parser.

destfp

The destination file handle in which the encoded data will be written.

encoding

One of the character encodings supported by the mbstring module.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 mailparse_stream_encode() example

<?php

// email.eml contents: hello, this is some text=hello.
$fp = fopen('email.eml', 'r');

$dest = tmpfile();

mailparse_stream_encode($fp, $dest, "quoted-printable");

rewind($dest);

// Display new file contents
fpassthru($dest);

?>

O exemplo acima irá imprimir:

hello, this is some text=3Dhello.

mailparse_rfc822_parse_addresses
mailparse_uudecode_all
Mailparse Funções


Scans the data from fp and extract each embedded uuencoded file

mailparse_stream_encode
vpopmail
Mailparse Funções
PHP Manual

mailparse_uudecode_all

(PECL mailparse >= 0.9.0)

mailparse_uudecode_all — Scans the data from fp and extract each embedded uuencoded file

Descrição

array mailparse_uudecode_all ( resource $fp )

Scans the data from the given file pointer and extract each embedded uuencoded file into a temporary file.

Parâmetros

fp

A valid file pointer.

Valor Retornado

Returns an array of associative arrays listing filename information.

filename | Path to the temporary file name created
origfilename | The original filename, for uuencoded parts only
The first filename entry is the message body. The next entries are the decoded uuencoded files.

Exemplos

Exemplo #1 mailparse_uudecode_all() example

<?php

$text = <<<EOD
To: fred@example.com

hello, this is some text hello.
blah blah blah.

begin 644 test.txt
/=&AI<R!I<R!A('1E<W0*
`
end

EOD;

$fp = tmpfile();
fwrite($fp, $text);

$data = mailparse_uudecode_all($fp);

echo "BODY\n";
readfile($data[0]["filename"]);
echo "UUE ({$data[1]['origfilename']})\n";
readfile($data[1]["filename"]);

// Clean up
unlink($data[0]["filename"]);
unlink($data[1]["filename"]);

?>

O exemplo acima irá imprimir:

BODY
To: fred@example.com

hello, this is some text hello.
blah blah blah.

UUE (test.txt)
this is a test

mailparse_stream_encode
vpopmail
Mailparse Funções


vpopmail

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da vpopmail
    • vpopmail_add_alias_domain_ex — Add alias to an existing virtual domain
    • vpopmail_add_alias_domain — Add an alias for a virtual domain
    • vpopmail_add_domain_ex — Add a new virtual domain
    • vpopmail_add_domain — Add a new virtual domain
    • vpopmail_add_user — Add a new user to the specified virtual domain
    • vpopmail_alias_add — Insert a virtual alias
    • vpopmail_alias_del_domain — Deletes all virtual aliases of a domain
    • vpopmail_alias_del — Deletes all virtual aliases of a user
    • vpopmail_alias_get_all — Get all lines of an alias for a domain
    • vpopmail_alias_get — Get all lines of an alias for a domain
    • vpopmail_auth_user — Attempt to validate a username/domain/password
    • vpopmail_del_domain_ex — Delete a virtual domain
    • vpopmail_del_domain — Delete a virtual domain
    • vpopmail_del_user — Delete a user from a virtual domain
    • vpopmail_error — Get text message for last vpopmail error
    • vpopmail_passwd — Change a virtual user's password
    • vpopmail_set_user_quota — Sets a virtual user's quota
mailparse_uudecode_all
Introdução
Extensões Relacionadas a Mail


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Esta extensão foi movida do PHP no PHP 4.3.0 e agora vpopmail está no » PECL.

vpopmail
Instalação/Configuração
vpopmail


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
vpopmail


Instalação

No PHP 4, estas função estão somente disponíveis se o PHP foi configurado com --with-vpopmail[=DIR] .

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da vpopmail
vpopmail


Funções da vpopmail

Índice

  • vpopmail_add_alias_domain_ex — Add alias to an existing virtual domain
  • vpopmail_add_alias_domain — Add an alias for a virtual domain
  • vpopmail_add_domain_ex — Add a new virtual domain
  • vpopmail_add_domain — Add a new virtual domain
  • vpopmail_add_user — Add a new user to the specified virtual domain
  • vpopmail_alias_add — Insert a virtual alias
  • vpopmail_alias_del_domain — Deletes all virtual aliases of a domain
  • vpopmail_alias_del — Deletes all virtual aliases of a user
  • vpopmail_alias_get_all — Get all lines of an alias for a domain
  • vpopmail_alias_get — Get all lines of an alias for a domain
  • vpopmail_auth_user — Attempt to validate a username/domain/password
  • vpopmail_del_domain_ex — Delete a virtual domain
  • vpopmail_del_domain — Delete a virtual domain
  • vpopmail_del_user — Delete a user from a virtual domain
  • vpopmail_error — Get text message for last vpopmail error
  • vpopmail_passwd — Change a virtual user's password
  • vpopmail_set_user_quota — Sets a virtual user's quota
Constantes pré-definidas
vpopmail_add_alias_domain_ex
vpopmail


Add alias to an existing virtual domain

Funções da vpopmail
vpopmail_add_alias_domain
Funções da vpopmail
PHP Manual

vpopmail_add_alias_domain_ex

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_alias_domain_ex — Add alias to an existing virtual domain

Descrição

bool vpopmail_add_alias_domain_ex ( string $olddomain , string $newdomain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Funções da vpopmail
vpopmail_add_alias_domain
Funções da vpopmail


Add an alias for a virtual domain

vpopmail_add_alias_domain_ex
vpopmail_add_domain_ex
Funções da vpopmail
PHP Manual

vpopmail_add_alias_domain

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_alias_domain — Add an alias for a virtual domain

Descrição

bool vpopmail_add_alias_domain ( string $domain , string $aliasdomain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_add_alias_domain_ex
vpopmail_add_domain_ex
Funções da vpopmail


Add a new virtual domain

vpopmail_add_alias_domain
vpopmail_add_domain
Funções da vpopmail
PHP Manual

vpopmail_add_domain_ex

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_domain_ex — Add a new virtual domain

Descrição

bool vpopmail_add_domain_ex ( string $domain , string $passwd [, string $quota [, string $bounce [, bool $apop ]]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_add_alias_domain
vpopmail_add_domain
Funções da vpopmail


Add a new virtual domain

vpopmail_add_domain_ex
vpopmail_add_user
Funções da vpopmail
PHP Manual

vpopmail_add_domain

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_domain — Add a new virtual domain

Descrição

bool vpopmail_add_domain ( string $domain , string $dir , int $uid , int $gid )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_add_domain_ex
vpopmail_add_user
Funções da vpopmail


Add a new user to the specified virtual domain

vpopmail_add_domain
vpopmail_alias_add
Funções da vpopmail
PHP Manual

vpopmail_add_user

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_user — Add a new user to the specified virtual domain

Descrição

bool vpopmail_add_user ( string $user , string $domain , string $password [, string $gecos [, bool $apop ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_add_domain
vpopmail_alias_add
Funções da vpopmail


Insert a virtual alias

vpopmail_add_user
vpopmail_alias_del_domain
Funções da vpopmail
PHP Manual

vpopmail_alias_add

(PHP 4 >= 4.0.7, PECL vpopmail >= 0.2)

vpopmail_alias_add — Insert a virtual alias

Descrição

bool vpopmail_alias_add ( string $user , string $domain , string $alias )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_add_user
vpopmail_alias_del_domain
Funções da vpopmail


Deletes all virtual aliases of a domain

vpopmail_alias_add
vpopmail_alias_del
Funções da vpopmail
PHP Manual

vpopmail_alias_del_domain

(PHP 4 >= 4.0.7, PECL vpopmail >= 0.2)

vpopmail_alias_del_domain — Deletes all virtual aliases of a domain

Descrição

bool vpopmail_alias_del_domain ( string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_alias_add
vpopmail_alias_del
Funções da vpopmail


Deletes all virtual aliases of a user

vpopmail_alias_del_domain
vpopmail_alias_get_all
Funções da vpopmail
PHP Manual

vpopmail_alias_del

(PHP 4 >= 4.0.7, PECL vpopmail >= 0.2)

vpopmail_alias_del — Deletes all virtual aliases of a user

Descrição

bool vpopmail_alias_del ( string $user , string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_alias_del_domain
vpopmail_alias_get_all
Funções da vpopmail


Get all lines of an alias for a domain

vpopmail_alias_del
vpopmail_alias_get
Funções da vpopmail
PHP Manual

vpopmail_alias_get_all

(PHP 4 >= 4.0.7, PECL vpopmail >= 0.2)

vpopmail_alias_get_all — Get all lines of an alias for a domain

Descrição

array vpopmail_alias_get_all ( string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_alias_del
vpopmail_alias_get
Funções da vpopmail


Get all lines of an alias for a domain

vpopmail_alias_get_all
vpopmail_auth_user
Funções da vpopmail
PHP Manual

vpopmail_alias_get

(PHP 4 >= 4.0.7, PECL vpopmail >= 0.2)

vpopmail_alias_get — Get all lines of an alias for a domain

Descrição

array vpopmail_alias_get ( string $alias , string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_alias_get_all
vpopmail_auth_user
Funções da vpopmail


Attempt to validate a username/domain/password

vpopmail_alias_get
vpopmail_del_domain_ex
Funções da vpopmail
PHP Manual

vpopmail_auth_user

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_auth_user — Attempt to validate a username/domain/password

Descrição

bool vpopmail_auth_user ( string $user , string $domain , string $password [, string $apop ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_alias_get
vpopmail_del_domain_ex
Funções da vpopmail


Delete a virtual domain

vpopmail_auth_user
vpopmail_del_domain
Funções da vpopmail
PHP Manual

vpopmail_del_domain_ex

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_del_domain_ex — Delete a virtual domain

Descrição

bool vpopmail_del_domain_ex ( string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_auth_user
vpopmail_del_domain
Funções da vpopmail


Delete a virtual domain

vpopmail_del_domain_ex
vpopmail_del_user
Funções da vpopmail
PHP Manual

vpopmail_del_domain

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_del_domain — Delete a virtual domain

Descrição

bool vpopmail_del_domain ( string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_del_domain_ex
vpopmail_del_user
Funções da vpopmail


Delete a user from a virtual domain

vpopmail_del_domain
vpopmail_error
Funções da vpopmail
PHP Manual

vpopmail_del_user

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_del_user — Delete a user from a virtual domain

Descrição

bool vpopmail_del_user ( string $user , string $domain )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_del_domain
vpopmail_error
Funções da vpopmail


Get text message for last vpopmail error

vpopmail_del_user
vpopmail_passwd
Funções da vpopmail
PHP Manual

vpopmail_error

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_error — Get text message for last vpopmail error

Descrição

string vpopmail_error ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_del_user
vpopmail_passwd
Funções da vpopmail


Change a virtual user's password

vpopmail_error
vpopmail_set_user_quota
Funções da vpopmail
PHP Manual

vpopmail_passwd

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_passwd — Change a virtual user's password

Descrição

bool vpopmail_passwd ( string $user , string $domain , string $password [, bool $apop ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_error
vpopmail_set_user_quota
Funções da vpopmail


Sets a virtual user's quota

vpopmail_passwd
Extensões Matemáticas
Funções da vpopmail
PHP Manual

vpopmail_set_user_quota

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_set_user_quota — Sets a virtual user's quota

Descrição

bool vpopmail_set_user_quota ( string $user , string $domain , string $quota )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

vpopmail_passwd
Extensões Matemáticas
Funções da vpopmail


Extensões Matemáticas

  • BC Math — BCMath Funções Matemáticas de Precisão Arbitrária
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • BC Math Funções
  • GMP — GNU Multiple Precision
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da GMP
  • Math — Funções Matemáticas
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções Matemáticas
  • Statistics
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Statistic Funções
vpopmail_set_user_quota
BC Math
Referência das Funções


BCMath Funções Matemáticas de Precisão Arbitrária

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • BC Math Funções
    • bcadd — Adicionar dois números de precisão arbitrária
    • bccomp — Comparar dois números de precisão arbitrária
    • bcdiv — Dividir dois números de precisão arbitrária
    • bcmod — Obtém o módulo de um número com precisão arbitrária
    • bcmul — Multiplicar dois números de precisão arbitrária
    • bcpow — Elevar um número de precisão arbitrária a outro
    • bcpowmod — Aumenta um número de precisão arbitrária para outro, reduzido por um módulo especificado
    • bcscale — Configura o parâmentro escala para todas as funções bc
    • bcsqrt — Obtém a raiz quadrada de um número de precisão arbitrária
    • bcsub — Subtrai um número de precisão arbitrária de outro
Extensões Matemáticas
Introdução
Extensões Matemáticas


Introdução

Para matemática de precisão arbitrária, o PHP oferece a Calculadora Binária com suporte a números de qualquer tamanho e precisão, representados como strings.

BC Math
Instalação/Configuração
BC Math


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
BC Math


Dependências

Desde o PHP 4.0.4, a libbcmath é distribuída junto com o PHP. Você não precisa de nenhuma biblioteca externa para esta extensão.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Essas funções só estão disponíveis se o PHP foi configurado com a opção --enable-bcmath .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da BC Math
Nome | Padrão | Alterável | Changelog
bcmath.scale | "0" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

bcmath.scale integer

Número de casas decimais para todas as funções BC Math. Veja também bcscale().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
BC Math Funções
BC Math


BC Math Funções

Índice

  • bcadd — Adicionar dois números de precisão arbitrária
  • bccomp — Comparar dois números de precisão arbitrária
  • bcdiv — Dividir dois números de precisão arbitrária
  • bcmod — Obtém o módulo de um número com precisão arbitrária
  • bcmul — Multiplicar dois números de precisão arbitrária
  • bcpow — Elevar um número de precisão arbitrária a outro
  • bcpowmod — Aumenta um número de precisão arbitrária para outro, reduzido por um módulo especificado
  • bcscale — Configura o parâmentro escala para todas as funções bc
  • bcsqrt — Obtém a raiz quadrada de um número de precisão arbitrária
  • bcsub — Subtrai um número de precisão arbitrária de outro
Constantes pré-definidas
bcadd
BC Math


Adicionar dois números de precisão arbitrária

BC Math Funções
bccomp
BC Math Funções
PHP Manual

bcadd

(PHP 4, PHP 5)

bcadd — Adicionar dois números de precisão arbitrária

Descrição

string bcadd ( string $left_operand , string $right_operand [, int $scale ] )

Soma left_operand e right_operand.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

A soma de dois operandos, como uma string.

Exemplos

Exemplo #1 Exemplo bcadd()

<?php

$a = '1.234';
$b = '5';

echo bcadd($a, $b);     // 6
echo bcadd($a, $b, 4);  // 6.2340

?>

Veja Também

  • bcsub() - Subtrai um número de precisão arbitrária de outro

BC Math Funções
bccomp
BC Math Funções


Comparar dois números de precisão arbitrária

bcadd
bcdiv
BC Math Funções
PHP Manual

bccomp

(PHP 4, PHP 5)

bccomp — Comparar dois números de precisão arbitrária

Descrição

int bccomp ( string $left_operand , string $right_operand [, int $scale ] )

Compara o left_operand com o right_operand e retorna o resultado como um inteiro.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

O parâmetro opcional scale é usado para definir o número de dígitos depois da parte decimal que será usada na comparação.

Valor Retornado

Retorna 0 se os dois operandos são iguais, 1 se o left_operand é maior que right_operand, -1 caso contrário.

Exemplos

Exemplo #1 Exemplo da bccomp()

<?php

echo bccomp('1', '2') . "\n";   // -1
echo bccomp('1.00001', '1', 3); // 0
echo bccomp('1.00001', '1', 5); // 1

?>
bcadd
bcdiv
BC Math Funções


Dividir dois números de precisão arbitrária

bccomp
bcmod
BC Math Funções
PHP Manual

bcdiv

(PHP 4, PHP 5)

bcdiv — Dividir dois números de precisão arbitrária

Descrição

string bcdiv ( string $left_operand , string $right_operand [, int $scale ] )

Divide o left_operand pelo right_operand e retorna o resultado. O parametro opcional scale.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

Retorna o resultado da divisão como uma string, ou NULL se right_operand é 0.

Exemplos

Exemplo #1 Exemplo da bcdiv()

<?php

echo bcdiv('105', '6.55957', 3);  // 16.007

?>

Veja Também

  • bcmul() - Multiplicar dois números de precisão arbitrária

bccomp
bcmod
BC Math Funções


Obtém o módulo de um número com precisão arbitrária

bcdiv
bcmul
BC Math Funções
PHP Manual

bcmod

(PHP 4, PHP 5)

bcmod — Obtém o módulo de um número com precisão arbitrária

Descrição

string bcmod ( string $left_operand , string $modulus )

Obter o módulo do left_operand usando modulus.

Parâmetros

left_operand

O operando da esquerda, como uma string.

modulus

O módulo, como uma string.

Valor Retornado

Retorna o módulo como uma string, ou NULL se modulus é 0.

Exemplos

Exemplo #1 Exemplo da bcmod()

<?php
echo bcmod('4', '2'); // 0
echo bcmod('2', '4'); // 2
?>

Veja Também

  • bcdiv() - Dividir dois números de precisão arbitrária

bcdiv
bcmul
BC Math Funções


Multiplicar dois números de precisão arbitrária

bcmod
bcpow
BC Math Funções
PHP Manual

bcmul

(PHP 4, PHP 5)

bcmul — Multiplicar dois números de precisão arbitrária

Descrição

string bcmul ( string $left_operand , string $right_operand [, int $scale ] )

Multipica o left_operand pelo right_operand.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

Retorna o resultado como uma string.

Exemplos

Exemplo #1 Exemplo da bcmul()

<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>

Veja Também

  • bcdiv() - Dividir dois números de precisão arbitrária

bcmod
bcpow
BC Math Funções


Elevar um número de precisão arbitrária a outro

bcmul
bcpowmod
BC Math Funções
PHP Manual

bcpow

(PHP 4, PHP 5)

bcpow — Elevar um número de precisão arbitrária a outro

Descrição

string bcpow ( string $left_operand , string $right_operand [, int $scale ] )

Eleva left_operand a potência de right_operand.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

Retorna o resultado como uma string.

Exemplos

Exemplo #1 Exemplo da bcpow()

<?php

echo bcpow('4.2', '3', 2); // 74.08

?>

Veja Também

Exemplo #2 Exemplo de bcpow()

<?php

echo bcpow(4.2, 3, 2); // 74.08

?>

  • bcpowmod()
  • bcsqrt()

bcmul
bcpowmod
BC Math Funções


Aumenta um número de precisão arbitrária para outro, reduzido por um módulo especificado

bcpow
bcscale
BC Math Funções
PHP Manual

bcpowmod

(PHP 5)

bcpowmod — Aumenta um número de precisão arbitrária para outro, reduzido por um módulo especificado

Descrição

string bcpowmod ( string $left_operand , string $right_operand , string $modulus [, int $scale ] )

Use o método de exponenciação rápida para elevar left_operand para a potência right_operand levando em conta o módulo modulus.

Parâmetros

left_operand

O operando da esquerda, do tipo string.

right_operand

O operando da direita, do tipo string.

modulus

O módulo, do tipo string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

Retorna um string com resultado ou NULL se modulus for 0.

Notas

Nota:

Por que esse método usa a operação de módulo, números não-naturais pode dar resultados inexperados. Um número natural é qualquer inteiro positivo diferente de zero.

Exemplos

As seguintes instruções têm funcionalidades idênticas. A versão bcpowmod(), no entanto, executa em menos tempo e pode aceitar parâmetros maiores.

<?php
$a = bcpowmod($x, $y, $mod);

$b = bcmod(bcpow($x, $y), $mod);

// $a and $b are equal to each other.

?>

Veja Também

  • bcpow() - Elevar um número de precisão arbitrária a outro
  • bcmod() - Obtém o módulo de um número com precisão arbitrária

bcpow
bcscale
BC Math Funções


Configura o parâmentro escala para todas as funções bc

bcpowmod
bcsqrt
BC Math Funções
PHP Manual

bcscale

(PHP 4, PHP 5)

bcscale — Configura o parâmentro escala para todas as funções bc

Descrição

bool bcscale ( int $scale )

Configura o parâmetro escala padrão para todas as chamadas subsequentes às funções bcmath que não tenham o parâmatro escala informado explicitamente.

Parâmetros

scale

A escala do fator.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da bcscale()

<?php

// escala default: 3
bcscale(3);
echo bcdiv('105', '6.55957'); // 16.007

// this is the same without bcscale()
echo bcdiv('105', '6.55957', 3); // 16.007

?>

bcpowmod
bcsqrt
BC Math Funções


Obtém a raiz quadrada de um número de precisão arbitrária

bcscale
bcsub
BC Math Funções
PHP Manual

bcsqrt

(PHP 4, PHP 5)

bcsqrt — Obtém a raiz quadrada de um número de precisão arbitrária

Descrição

string bcsqrt ( string $operand [, int $scale ] )

Retorna a raiz quadrada do operador.

Parâmetros

operand

O operando, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

Retorna a raiz quadrada como uma string, ou NULL se operand é negativo.

Exemplos

Exemplo #1 Exemplo de bcsqrt()

<?php

echo bcsqrt('2', 3); // 1.414

?>

Veja Também

  • bcpow() - Elevar um número de precisão arbitrária a outro

bcscale
bcsub
BC Math Funções


Subtrai um número de precisão arbitrária de outro

bcsqrt
GMP
BC Math Funções
PHP Manual

bcsub

(PHP 4, PHP 5)

bcsub — Subtrai um número de precisão arbitrária de outro

Descrição

string bcsub ( string $left_operand , string $right_operand [, int $scale ] )

Subtrair o left_operand do right_operand.

Parâmetros

left_operand

O operando da esquerda, como uma string.

right_operand

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de digitos depois do ponto decimal no resultado. Você pode definir a escala padrão global para todas as funções usando bcscale().

Valor Retornado

O resultado da subtração, como uma string.

Exemplos

Exemplo #1 Exemplo de bcsub()

<?php

$a = '1.234';
$b = '5';

echo bcsub($a, $b);     // -3
echo bcsub($a, $b, 4);  // -3.7660

?>

Veja Também

  • bcadd() - Adicionar dois números de precisão arbitrária

bcsqrt
GMP
BC Math Funções


GNU Multiple Precision

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da GMP
    • gmp_abs — Valor absoluto
    • gmp_add — Adiciona números
    • gmp_and — Operador binário AND
    • gmp_clrbit — Limpa bit
    • gmp_cmp — Compara números
    • gmp_com — Calcula o complemento
    • gmp_div_q — Divide números
    • gmp_div_qr — Divide números e retorna o quociente e o resto da divisão
    • gmp_div_r — Resto da divisão de dois números
    • gmp_div — Sinônimo de gmp_div_q
    • gmp_divexact — Divisão exata de números
    • gmp_fact — Fatorial
    • gmp_gcd — Calcula o MDC
    • gmp_gcdext — Calcula GCD e multiplicadores
    • gmp_hamdist — Distância de Hamming
    • gmp_init — Cria um número GMP
    • gmp_intval — Converte um número GMP para um inteiro
    • gmp_invert — Inverse by modulo
    • gmp_jacobi — Símbolo de Jacobi
    • gmp_legendre — Símbolo de Legendre
    • gmp_mod — Operação Módulo
    • gmp_mul — Multiplica números
    • gmp_neg — Nega o número
    • gmp_nextprime — Busca o próximo número primo
    • gmp_or — Lógico OR
    • gmp_perfect_square — Perfect square check
    • gmp_popcount — Contagem de população
    • gmp_pow — Potenciação
    • gmp_powm — Eleva um nÃºmero a potÃªncia com mÃ³dulo
    • gmp_prob_prime — Verifica se o número é "provavelmente primo"
    • gmp_random — Número randomico
    • gmp_scan0 — Scan for 0
    • gmp_scan1 — Scan for 1
    • gmp_setbit — Set bit
    • gmp_sign — Sinal do número
    • gmp_sqrt — Raíz quadrada
    • gmp_sqrtrem — Raíz quadrada com resto
    • gmp_strval — Converte um número GMP para uma string
    • gmp_sub — Subtrai números
    • gmp_testbit — Tests if a bit is set
    • gmp_xor — Operação binária XOR
bcsub
Introdução
Extensões Matemáticas


Introdução

Estas funções permitem a você trabalhar com inteiros de tamanho arbritário usando a biblioteca GNU MP.

Estas funções foram adicionadas no PHP 4.0.4.

Nota:

A maioria das funções GMP aceitam números GMP comoargumentos, definidos como resource abaixo. Entretanto, a maioria destas funções também aceitam argumentos númericos e strings, dado que é possível converter posteriormente para um número. Também, caso houver uma função mais rápida que possa trabalhar com números inteiros, ela será usada ao invés de uma função mais lenta quando os argumentos forem inteiros. Isto é feito de forma transparente, em resumo, você poderá usar inteiros em qualquer função que espere um número GMP. Veja também a função gmp_init().

Aviso

Se você quiser explicitamente especificar um número inteiro largo, especifique-o como uma string. Se você não fizer isto, o PHP irá interpretar a literal inteira primeiro, possivelmente resultando em perca de precisão, mesmo antes de começar a utilizar o GMP.

Nota: Esta extensão esta disponível na plataforma Windows desde PHP 5.1.0.

GMP
Instalação/Configuração
GMP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
GMP


Dependências

VocÃª pode fazer download da biblioteca GMP em » http://gmplib.org/#DOWNLOAD. Este site tambÃ©m tem disponÃvel o manual da GMP.

VocÃª precisarÃ¡ da versÃ£o 2 ou maior da GMP para usar estas funÃ§Ãµes. Algumas funÃ§Ãµes podem requerir versÃ£o mais recente da biblioteca GMP.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para ter estas funções disponíveis, você deve compilar o PHP com suporte a GMP usando a opção de configuração --with-gmp .

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Muitas funÃ§Ãµes GMP operam em ou retornam resources GMP.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

GMP_ROUND_ZERO (integer)
GMP_ROUND_PLUSINF (integer)
GMP_ROUND_MINUSINF (integer)
GMP_VERSION (string)
A versão da biblioteca GMP
Tipos Resource
Exemplos
GMP


Exemplos

Exemplo #1 Função factorial usando GMP

<?php
function fact($x)
{
    $return = 1;
    for ($i=2; $i < $x; $i++) {
        $return = gmp_mul($return, $i);
    }
    return $return;
}

echo gmp_strval(fact(1000)) . "\n";
?>

Isto irá calcular o fatorial de 1000 (um número grande) muito rápido.

Constantes pré-definidas
Funções da GMP
GMP


Funções da GMP

Veja Também

Mais funções matemáticas podem ser encontradas na seção Extensões Matemáticas

Índice

  • gmp_abs — Valor absoluto
  • gmp_add — Adiciona números
  • gmp_and — Operador binário AND
  • gmp_clrbit — Limpa bit
  • gmp_cmp — Compara números
  • gmp_com — Calcula o complemento
  • gmp_div_q — Divide números
  • gmp_div_qr — Divide números e retorna o quociente e o resto da divisão
  • gmp_div_r — Resto da divisão de dois números
  • gmp_div — Sinônimo de gmp_div_q
  • gmp_divexact — Divisão exata de números
  • gmp_fact — Fatorial
  • gmp_gcd — Calcula o MDC
  • gmp_gcdext — Calcula GCD e multiplicadores
  • gmp_hamdist — Distância de Hamming
  • gmp_init — Cria um número GMP
  • gmp_intval — Converte um número GMP para um inteiro
  • gmp_invert — Inverse by modulo
  • gmp_jacobi — Símbolo de Jacobi
  • gmp_legendre — Símbolo de Legendre
  • gmp_mod — Operação Módulo
  • gmp_mul — Multiplica números
  • gmp_neg — Nega o número
  • gmp_nextprime — Busca o próximo número primo
  • gmp_or — Lógico OR
  • gmp_perfect_square — Perfect square check
  • gmp_popcount — Contagem de população
  • gmp_pow — Potenciação
  • gmp_powm — Eleva um nÃºmero a potÃªncia com mÃ³dulo
  • gmp_prob_prime — Verifica se o número é "provavelmente primo"
  • gmp_random — Número randomico
  • gmp_scan0 — Scan for 0
  • gmp_scan1 — Scan for 1
  • gmp_setbit — Set bit
  • gmp_sign — Sinal do número
  • gmp_sqrt — Raíz quadrada
  • gmp_sqrtrem — Raíz quadrada com resto
  • gmp_strval — Converte um número GMP para uma string
  • gmp_sub — Subtrai números
  • gmp_testbit — Tests if a bit is set
  • gmp_xor — Operação binária XOR
Exemplos
gmp_abs
GMP


Valor absoluto

Funções da GMP
gmp_add
Funções da GMP
PHP Manual

gmp_abs

(PHP 4 >= 4.0.4, PHP 5)

gmp_abs — Valor absoluto

Descrição

resource gmp_abs ( resource $a )

Obtém o valor absoluto de um número.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna o valor absoluto de a, como um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_abs()

<?php
$abs1 = gmp_abs("274982683358");
$abs2 = gmp_abs("-274982683358");

echo gmp_strval($abs1) . "\n";
echo gmp_strval($abs2) . "\n";
?>

O exemplo acima irá imprimir:

274982683358
274982683358

Funções da GMP
gmp_add
Funções da GMP


Adiciona números

gmp_abs
gmp_and
Funções da GMP
PHP Manual

gmp_add

(PHP 4 >= 4.0.4, PHP 5)

gmp_add — Adiciona números

Descrição

resource gmp_add ( resource $a , resource $b )

Adiciona dois números.

Parâmetros

a

Um número que será adicionado.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Um número que será adicionado.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um número GMP representado a soma dos argumentos.

Exemplos

Exemplo #1 Exemplo gmp_add()

<?php
$sum = gmp_add("123456789012345", "76543210987655");
echo gmp_strval($sum) . "\n";
?>

O exemplo acima irá imprimir:

200000000000000

gmp_abs
gmp_and
Funções da GMP


Operador binário AND

gmp_add
gmp_clrbit
Funções da GMP
PHP Manual

gmp_and

(PHP 4 >= 4.0.4, PHP 5)

gmp_and — Operador binário AND

Descrição

resource gmp_and ( resource $a , resource $b )

Faz a operação binária AND de dois números GMP.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um número GMP representando a comparação binária AND.

Exemplos

Exemplo #1 Exemplo da gmp_and()

<?php
$and1 = gmp_and("0xfffffffff4", "0x4");
$and2 = gmp_and("0xfffffffff4", "0x8");
echo gmp_strval($and1) . "\n";
echo gmp_strval($and2) . "\n";
?>

O exemplo acima irá imprimir:

4
0
gmp_add
gmp_clrbit
Funções da GMP


Limpa bit

gmp_and
gmp_cmp
Funções da GMP
PHP Manual

gmp_clrbit

(PHP 4 >= 4.0.4, PHP 5)

gmp_clrbit — Limpa bit

Descrição

void gmp_clrbit ( resource &$a , int $index )

Limpa (define para 0) o bit index em a. O índice começa em 0.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

index

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 gmp_clrbit() example

<?php
$a = gmp_init("0xff");
gmp_clrbit($a, 0); // index starts at 0, least significant bit
echo gmp_strval($a) . "\n";
?>

O exemplo acima irá imprimir:

254

Notas

Nota:

Diferentemente de outras funções GMP, gmp_clrbit() precisa ser chamada como um resource GMP já existente (usando gmp_init() por exemplo). Ele não será automaticamente criado.

Veja Também

  • gmp_setbit() - Set bit
  • gmp_testbit() - Tests if a bit is set

gmp_and
gmp_cmp
Funções da GMP


Compara números

gmp_clrbit
gmp_com
Funções da GMP
PHP Manual

gmp_cmp

(PHP 4 >= 4.0.4, PHP 5)

gmp_cmp — Compara números

Descrição

int gmp_cmp ( resource $a , resource $b )

Compara dois números.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna um valor positivo se a > b, zero se a = b e um valor negativo se a < b.

Exemplos

Exemplo #1 Exemplo da gmp_cmp()

<?php
$cmp1 = gmp_cmp("1234", "1000"); // maior do que
$cmp2 = gmp_cmp("1000", "1234"); // menor do que
$cmp3 = gmp_cmp("1234", "1234"); // igual a

echo "$cmp1 $cmp2 $cmp3\n";
?>

O exemplo acima irá imprimir:

1 -1 0
gmp_clrbit
gmp_com
Funções da GMP


Calcula o complemento

gmp_cmp
gmp_div_q
Funções da GMP
PHP Manual

gmp_com

(PHP 4 >= 4.0.4, PHP 5)

gmp_com — Calcula o complemento

Descrição

resource gmp_com ( resource $a )

Retorna o complemento de a

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna o complemento de a, como um número GMP.

Exemplos

Exemplo #1 Exemplo gmp_com()

<?php
$com = gmp_com("1234");
echo gmp_strval($com) . "\n";
?>

O exemplo acima irá imprimir:

-1235
gmp_cmp
gmp_div_q
Funções da GMP


Divide números

gmp_com
gmp_div_qr
Funções da GMP
PHP Manual

gmp_div_q

(PHP 4 >= 4.0.4, PHP 5)

gmp_div_q — Divide números

Descrição

resource gmp_div_q ( resource $a , resource $b [, int $round ] )

Divide a por b e retorna o resultado inteiro.

Parâmetros

a

O número a ser dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

O número pelo qual a será dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

round

O arredondamento do resultado e definido por round, o qual pode ter os seguintes valores:

  • GMP_ROUND_ZERO: O resultado é truncado em direção a 0.
  • GMP_ROUND_PLUSINF: O resultado é arredondado em direção a +infinito.
  • GMP_ROUND_MINUSINF: O resultado é arredondado em direção a -infinito.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_div_q()

<?php
$div1 = gmp_div_q("100", "5");
echo gmp_strval($div1) . "\n";

$div2 = gmp_div_q("1", "3");
echo gmp_strval($div2) . "\n";

$div3 = gmp_div_q("1", "3", GMP_ROUND_PLUSINF);
echo gmp_strval($div3) . "\n";

$div4 = gmp_div_q("-1", "4", GMP_ROUND_PLUSINF);
echo gmp_strval($div4) . "\n";

$div5 = gmp_div_q("-1", "4", GMP_ROUND_MINUSINF);
echo gmp_strval($div5) . "\n";
?>

O exemplo acima irá imprimir:

20
0
1
0
-1

Notas

Nota:

Esta função pode também ser chamada como gmp_div().

Veja Também

  • gmp_div_r() - Resto da divisão de dois números
  • gmp_div_qr() - Divide números e retorna o quociente e o resto da divisão

gmp_com
gmp_div_qr
Funções da GMP


Divide números e retorna o quociente e o resto da divisão

gmp_div_q
gmp_div_r
Funções da GMP
PHP Manual

gmp_div_qr

(PHP 4 >= 4.0.4, PHP 5)

gmp_div_qr — Divide números e retorna o quociente e o resto da divisão

Descrição

array gmp_div_qr ( resource $n , resource $d [, int $round ] )

Esta função divide n por d.

Parâmetros

n

O número a ser dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

d

O número o qual n é dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

round

Veja a função gmp_div_q() para uma descrição do argumento round.

Valor Retornado

Retorna um array, com o primeiro elemento sendo [n/d] (o resultado inteiro da divisão) e o segundo sendo (n - [n/d] * d) (o resto da divisão).

Exemplos

Exemplo #1 Divisão de números GMP

<?php
$a = gmp_init("0x41682179fbf5");
$res = gmp_div_qr($a, "0xDEFE75");
printf("Result is: q - %s, r - %s",
     gmp_strval ($res[0]), gmp_strval ($res[1]));
?>

Veja Também

  • gmp_div_q() - Divide números
  • gmp_div_r() - Resto da divisão de dois números

gmp_div_q
gmp_div_r
Funções da GMP


Resto da divisão de dois números

gmp_div_qr
gmp_div
Funções da GMP
PHP Manual

gmp_div_r

(PHP 4 >= 4.0.4, PHP 5)

gmp_div_r — Resto da divisão de dois números

Descrição

resource gmp_div_r ( resource $n , resource $d [, int $round ] )

Calcula o resto da divisão inteira de n por d. O resto tem o sinal do argumento n, se não for zero.

Parâmetros

n

O número a ser dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

d

O número o qual n será dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

round

Veja a função gmp_div_q() para descrição do argumento round.

Valor Retornado

O resto, como um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_div_r()

<?php
$div = gmp_div_r("105", "20");
echo gmp_strval($div) . "\n";
?>

O exemplo acima irá imprimir:

5

Veja Também

  • gmp_div_q() - Divide números
  • gmp_div_qr() - Divide números e retorna o quociente e o resto da divisão

gmp_div_qr
gmp_div
Funções da GMP


Sinônimo de gmp_div_q

gmp_div_r
gmp_divexact
Funções da GMP
PHP Manual

gmp_div

(PHP 4 >= 4.0.4, PHP 5)

gmp_div — Sinônimo de gmp_div_q()

Descrição

Esta função é um apelido para: gmp_div_q().

gmp_div_r
gmp_divexact
Funções da GMP


Divisão exata de números

gmp_div
gmp_fact
Funções da GMP
PHP Manual

gmp_divexact

(PHP 4 >= 4.0.4, PHP 5)

gmp_divexact — Divisão exata de números

Descrição

resource gmp_divexact ( resource $n , resource $d )

Divide n por d, usando um algaritimo rápido "exact division". Esta função produz resultados corretos apenas quando sabe anteriormente que d divide n.

Parâmetros

n

O número a ser dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

d

O número o qual a será dividido.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo gmp_divexact()

<?php
$div1 = gmp_divexact("10", "2");
echo gmp_strval($div1) . "\n";

$div2 = gmp_divexact("10", "3"); // resultado errado
echo gmp_strval($div2) . "\n";
?>

O exemplo acima irá imprimir:

5
2863311534

gmp_div
gmp_fact
Funções da GMP


Fatorial

gmp_divexact
gmp_gcd
Funções da GMP
PHP Manual

gmp_fact

(PHP 4 >= 4.0.4, PHP 5)

gmp_fact — Fatorial

Descrição

resource gmp_fact ( int $a )

Calcula o fatorial (a!) de a.

Parâmetros

a

O número fatorial.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo gmp_fact()

<?php
$fact1 = gmp_fact(5); // 5 * 4 * 3 * 2 * 1
echo gmp_strval($fact1) . "\n";

$fact2 = gmp_fact(50); // 50 * 49 * 48, ... etc
echo gmp_strval($fact2) . "\n";
?>

O exemplo acima irá imprimir:

120
30414093201713378043612608166064768844377641568960512000000000000

gmp_divexact
gmp_gcd
Funções da GMP


Calcula o MDC

gmp_fact
gmp_gcdext
Funções da GMP
PHP Manual

gmp_gcd

(PHP 4 >= 4.0.4, PHP 5)

gmp_gcd — Calcula o MDC

Descrição

resource gmp_gcd ( resource $a , resource $b )

Calcula o máximo divisor comum de a e b. O resultado é sempre positivo, mesmo que um, ou ambos os argumentos sejam negativos.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um número positivo GMP que divide a e b.

Exemplos

Exemplo #1 Exemplo da gmp_gcd()

<?php
$gcd = gmp_gcd("12", "21");
echo gmp_strval($gcd) . "\n";
?>

O exemplo acima irá imprimir:

3

gmp_fact
gmp_gcdext
Funções da GMP


Calcula GCD e multiplicadores

gmp_gcd
gmp_hamdist
Funções da GMP
PHP Manual

gmp_gcdext

(PHP 4 >= 4.0.4, PHP 5)

gmp_gcdext — Calcula GCD e multiplicadores

Descrição

array gmp_gcdext ( resource $a , resource $b )

Calcula g, s, e t, como a*s + b*t = g = gcd(a,b), onde gcd é o maior divisor comum. Retorna um array com respectivos elementos g, s e t.

Esta função pode ser usada para resolver equações lineares Diophantine em duas variáveis. Esta equação permite somente soluções inteiras e tem a forma: a*x + b*y = c. Para mais informação, veja » "Diophantine Equation" na página MathWorld

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um array de números GMP.

Exemplos

Exemplo #1 Resolvendo uma equação linear Diophantine

<?php
// Solve the equation a*s + b*t = g
// where a = 12, b = 21, g = gcd(12, 21) = 3
$a = gmp_init(12);
$b = gmp_init(21);
$g = gmp_gcd($a, $b);
$r = gmp_gcdext($a, $b);

$check_gcd = (gmp_strval($g) == gmp_strval($r['g']));
$eq_res = gmp_add(gmp_mul($a, $r['s']), gmp_mul($b, $r['t']));
$check_res = (gmp_strval($g) == gmp_strval($eq_res));

if ($check_gcd && $check_res) {
    $fmt = "Solution: %d*%d + %d*%d = %d\n";
    printf($fmt, gmp_strval($a), gmp_strval($r['s']), gmp_strval($b),
    gmp_strval($r['t']), gmp_strval($r['g']));
} else {
    echo "Error while solving the equation\n";
}

// output: Solution: 12*2 + 21*-1 = 3
?>

gmp_gcd
gmp_hamdist
Funções da GMP


Distância de Hamming

gmp_gcdext
gmp_init
Funções da GMP
PHP Manual

gmp_hamdist

(PHP 4 >= 4.0.4, PHP 5)

gmp_hamdist — Distância de Hamming

Descrição

int gmp_hamdist ( resource $a , resource $b )

Retorna a distância de Hamming entre a e b. Ambos operandos devem ser positivo.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Tem que ser positivo.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Tem que ser positivo.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_hamdist()

<?php
$ham1 = gmp_init("1001010011", 2);
$ham2 = gmp_init("1011111100", 2);
echo gmp_hamdist($ham1, $ham2) . "\n";

/* hamdist is equivilent to: */
echo gmp_popcount(gmp_xor($ham1, $ham2)) . "\n";
?>

O exemplo acima irá imprimir:

6
6

Veja Também

  • gmp_popcount() - Contagem de população
  • gmp_xor() - Operação binária XOR

gmp_gcdext
gmp_init
Funções da GMP


Cria um número GMP

gmp_hamdist
gmp_intval
Funções da GMP
PHP Manual

gmp_init

(PHP 4 >= 4.0.4, PHP 5)

gmp_init — Cria um número GMP

Descrição

resource gmp_init ( mixed $number [, int $base ] )

Cria um número GMP a partir de um inteiro ou uma string.

Parâmetros

number

Um inteiro ou uma string. A string pode representar um decimal, hexadecimal ou octal.

base

A base. O padrão é 0.

A base pode varia de 2 a 36. Se a base for 0 (valor padrão), a base atual é determinada pelos caracteres que vem na frente. Se os dois primeiros caracteres forem 0x ou 0X, é assumido hexadecimal, se não o primeiro caractere for "0", é assumido como octal, se não é assumido como decimal.

Valor Retornado

Um resource de um número GMP.

Histórico

Versão | Descrição
4.1.0 | O parâmetro opcional base foi adicionado.

Exemplos

Exemplo #1 Criando um número GMP

<?php
$a = gmp_init (123456);
$b = gmp_init ("0xFFFFDEBACDFEDF7200");
?>

Notas

Nota:

Não é necessário utilizar esta função se você quer usar um inteiro ou uma string no lugar de um número GMP nas funções GMP, como gmp_add(). Argumentos das funções são automaticamente convertidos para números GMP, se esta conversão é possível e necessária, usando as mesmas regras que gmp_init().

gmp_hamdist
gmp_intval
Funções da GMP


Converte um número GMP para um inteiro

gmp_init
gmp_invert
Funções da GMP
PHP Manual

gmp_intval

(PHP 4 >= 4.0.4, PHP 5)

gmp_intval — Converte um número GMP para um inteiro

Descrição

int gmp_intval ( resource $gmpnumber )

Esta função permite converter um número GMP para um inteiro.

Parâmetros

gmpnumber

Um número GMP.

Valor Retornado

Um valor integer de gmpnumber.

Exemplos

Exemplo #1 Exemplo gmp_intval()

<?php
// Mostra o valor correto
echo gmp_intval("2147483647") . "\n";

// Mostra um resultado errado, acima do limite de intero do PHP
echo gmp_intval("2147483648") . "\n";

// mostra o valor correto
echo gmp_strval("2147483648") . "\n";
?>

O exemplo acima irá imprimir:

2147483647
2147483647
2147483648

Notas

Aviso

Esta função retorna um resultado útil somente se o número se adequa ao inteiro PHP (i.e., tipo long com sinal). Se você quer somente imprimir o número GMP, use gmp_strval().

gmp_init
gmp_invert
Funções da GMP


Inverse by modulo

gmp_intval
gmp_jacobi
Funções da GMP
PHP Manual

gmp_invert

(PHP 4 >= 4.0.4, PHP 5)

gmp_invert — Inverse by modulo

Descrição

resource gmp_invert ( resource $a , resource $b )

Computes the inverse of a modulo b.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

A GMP number on success or FALSE if an inverse does not exist.

Exemplos

Exemplo #1 gmp_invert() example

<?php
echo gmp_invert("5", "10"); // no inverse, outputs nothing, result is FALSE
$invert = gmp_invert("5", "11");
echo gmp_strval($invert) . "\n";
?>

O exemplo acima irá imprimir:

9

gmp_intval
gmp_jacobi
Funções da GMP


Símbolo de Jacobi

gmp_invert
gmp_legendre
Funções da GMP
PHP Manual

gmp_jacobi

(PHP 4 >= 4.0.4, PHP 5)

gmp_jacobi — Símbolo de Jacobi

Descrição

int gmp_jacobi ( resource $a , resource $p )

Computa o » Símbolo de Jacobi de a e p. p deve ser ímpar e positivo.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

p

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Deve ser ímpar e positivo.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo gmp_jacobi()

<?php
echo gmp_jacobi("1", "3") . "\n";
echo gmp_jacobi("2", "3") . "\n";
?>

O exemplo acima irá imprimir:

1

gmp_invert
gmp_legendre
Funções da GMP


Símbolo de Legendre

gmp_jacobi
gmp_mod
Funções da GMP
PHP Manual

gmp_legendre

(PHP 4 >= 4.0.4, PHP 5)

gmp_legendre — Símbolo de Legendre

Descrição

int gmp_legendre ( resource $a , resource $p )

Computa o » Símbolo de Legendre de a e p. p deve ser inteiro e positivo.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

p

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Precisa ser ímpar e positivo.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_legendre()

<?php
echo gmp_legendre("1", "3") . "\n";
echo gmp_legendre("2", "3") . "\n";
?>

O exemplo acima irá imprimir:

1

gmp_jacobi
gmp_mod
Funções da GMP


Operação Módulo

gmp_legendre
gmp_mul
Funções da GMP
PHP Manual

gmp_mod

(PHP 4 >= 4.0.4, PHP 5)

gmp_mod — Operação Módulo

Descrição

resource gmp_mod ( resource $n , resource $d )

Calcula n módulo d. O resultado é sempre positivo, o sinal de d é ignorado.

Parâmetros

n

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

d

O módulo que será calculado.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_mod()

<?php
$mod = gmp_mod("8", "3");
echo gmp_strval($mod) . "\n";
?>

O exemplo acima irá imprimir:

2

gmp_legendre
gmp_mul
Funções da GMP


Multiplica números

gmp_mod
gmp_neg
Funções da GMP
PHP Manual

gmp_mul

(PHP 4 >= 4.0.4, PHP 5)

gmp_mul — Multiplica números

Descrição

resource gmp_mul ( resource $a , resource $b )

Multiplica a por b e retorna o resultado.

Parâmetros

a

Um número que será multiplicado por b.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Um número que será multiplicado por a.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_mul()

<?php
$mul = gmp_mul("12345678", "2000");
echo gmp_strval($mul) . "\n";
?>

O exemplo acima irá imprimir:

24691356000

gmp_mod
gmp_neg
Funções da GMP


Nega o número

gmp_mul
gmp_nextprime
Funções da GMP
PHP Manual

gmp_neg

(PHP 4 >= 4.0.4, PHP 5)

gmp_neg — Nega o número

Descrição

resource gmp_neg ( resource $a )

Retorna o valor negativo de um número.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna -a, como um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_neg()

<?php
$neg1 = gmp_neg("1");
echo gmp_strval($neg1) . "\n";
$neg2 = gmp_neg("-1");
echo gmp_strval($neg2) . "\n";
?>

O exemplo acima irá imprimir:

-1
1

gmp_mul
gmp_nextprime
Funções da GMP


Busca o próximo número primo

gmp_neg
gmp_or
Funções da GMP
PHP Manual

gmp_nextprime

(PHP 5 >= 5.2.0)

gmp_nextprime — Busca o próximo número primo

Descrição

resource gmp_nextprime ( int $a )

Busca o próximo número primo

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna o próximo número primo maior que a, como um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_nextprime()

<?php
$prime1 = gmp_nextprime(10); // next prime number greater than 10
$prime2 = gmp_nextprime(-1000); // next prime number greater than -1000

echo gmp_strval($prime1) . "\n";
echo gmp_strval($prime2) . "\n";
?>

O exemplo acima irá imprimir:

11
-997

Notas

Nota:

Esta função usa um algoritmo probabilístico para identificar primos e chances ter um número composto é extremamente pequena.

gmp_neg
gmp_or
Funções da GMP


Lógico OR

gmp_nextprime
gmp_perfect_square
Funções da GMP
PHP Manual

gmp_or

(PHP 4 >= 4.0.4, PHP 5)

gmp_or — Lógico OR

Descrição

resource gmp_or ( resource $a , resource $b )

Faz a operação binária inclusiva OR de dois números GMP.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_or()

<?php
$or1 = gmp_or("0xfffffff2", "4");
echo gmp_strval($or1, 16) . "\n";
$or2 = gmp_or("0xfffffff2", "2");
echo gmp_strval($or2, 16) . "\n";
?>

O exemplo acima irá imprimir:

fffffff6
fffffff2

gmp_nextprime
gmp_perfect_square
Funções da GMP


Perfect square check

gmp_or
gmp_popcount
Funções da GMP
PHP Manual

gmp_perfect_square

(PHP 4 >= 4.0.4, PHP 5)

gmp_perfect_square — Perfect square check

Descrição

bool gmp_perfect_square ( resource $a )

Check if a number is a perfect square.

Parâmetros

a

The number being checked as a perfect square.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Returns TRUE if a is a perfect square, FALSE otherwise.

Exemplos

Exemplo #1 gmp_perfect_square() example

<?php
// 3 * 3, perfect square
var_dump(gmp_perfect_square("9"));

// not a perfect square
var_dump(gmp_perfect_square("7"));

// 1234567890 * 1234567890, perfect square
var_dump(gmp_perfect_square("1524157875019052100"));
?>

O exemplo acima irá imprimir:

bool(true)
bool(false)
bool(true)

Veja Também

  • gmp_sqrt() - Raíz quadrada
  • gmp_sqrtrem() - Raíz quadrada com resto

gmp_or
gmp_popcount
Funções da GMP


Contagem de população

gmp_perfect_square
gmp_pow
Funções da GMP
PHP Manual

gmp_popcount

(PHP 4 >= 4.0.4, PHP 5)

gmp_popcount — Contagem de população

Descrição

int gmp_popcount ( resource $a )

Obtém a contagem de população.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

A contagem de população de a, como um integer.

Exemplos

Exemplo #1 Exemplo da gmp_popcount()

<?php
$pop1 = gmp_init("10000101", 2); // 3 1's
echo gmp_popcount($pop1) . "\n";
$pop2 = gmp_init("11111110", 2); // 7 1's
echo gmp_popcount($pop2) . "\n";
?>

O exemplo acima irá imprimir:

3
7

gmp_perfect_square
gmp_pow
Funções da GMP


Potenciação

gmp_popcount
gmp_powm
Funções da GMP
PHP Manual

gmp_pow

(PHP 4 >= 4.0.4, PHP 5)

gmp_pow — Potenciação

Descrição

resource gmp_pow ( resource $base , int $exp )

Eleva base na potência exp.

Parâmetros

base

O número da base.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

exp

A positiva potência para elevar a base.

Valor Retornado

O novo (elevado) número, como um número GMP. O caso de 0^0 reproduzir 1.

Exemplos

Exemplo #1 Exemplo gmp_pow()

<?php
$pow1 = gmp_pow("2", 31);
echo gmp_strval($pow1) . "\n";
$pow2 = gmp_pow("0", 0);
echo gmp_strval($pow2) . "\n";
$pow3 = gmp_pow("2", -1); // Expoente negativo, gera um warning
echo gmp_strval($pow3) . "\n";
?>

O exemplo acima irá imprimir:

2147483648
1

gmp_popcount
gmp_powm
Funções da GMP


Eleva um nÃºmero a potÃªncia com mÃ³dulo

gmp_pow
gmp_prob_prime
Funções da GMP
PHP Manual

gmp_powm

(PHP 4 >= 4.0.4, PHP 5)

gmp_powm — Eleva um nÃºmero a potÃªncia com mÃ³dulo

Descrição

resource gmp_powm ( resource $base , resource $exp , resource $mod )

Calcula (base elevado a potÃªncia exp) mÃ³dulo mod. Se exp Ã© negativo, o resultado Ã© indefinido.

Parâmetros

base

O nÃºmero da base.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

exp

A potÃªncia positiva para elevar a base.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

mod

O mÃ³dulo.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

O novo (elevado) nÃºmero, como um nÃºmero GMP.

Exemplos

Exemplo #1 Exemplo da gmp_powm()

<?php
$pow1 = gmp_powm("2", "31", "2147483649");
echo gmp_strval($pow1) . "\n";
?>

O exemplo acima irá imprimir:

2147483648

gmp_pow
gmp_prob_prime
Funções da GMP


Verifica se o número é "provavelmente primo"

gmp_powm
gmp_random
Funções da GMP
PHP Manual

gmp_prob_prime

(PHP 4 >= 4.0.4, PHP 5)

gmp_prob_prime — Verifica se o número é "provavelmente primo"

Descrição

int gmp_prob_prime ( resource $a [, int $reps ] )

A função usa o teste probabilístico de Miller-Rabin para verificar se um número é primo.

Parâmetros

a

O número a ser verificado como um primo.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

reps

Valores razoáveis de reps varia de 5 a 10 (padrão sendo 10); um valor mais alto diminui a probabilidade para um não-primo para passar como um "provável" primo.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Se esta função retorna 0, a é definitivamente não primo. Se ela retorna 1, então a é "provavelmente" primo. Se retorna 2, então a é certamente primo.

Exemplos

Exemplo #1 Exemplo da gmp_prob_prime()

<?php
// definitely not a prime
echo gmp_prob_prime("6") . "\n";

// probably a prime
echo gmp_prob_prime("1111111111111111111") . "\n";

// definitely a prime
echo gmp_prob_prime("11") . "\n";
?>

O exemplo acima irá imprimir:

0
1
2

gmp_powm
gmp_random
Funções da GMP


Número randomico

gmp_prob_prime
gmp_scan0
Funções da GMP
PHP Manual

gmp_random

(PHP 4 >= 4.0.4, PHP 5)

gmp_random — Número randomico

Descrição

resource gmp_random ( int $limiter )

Gera um número randomico. O valor do número será entre zero e o número de bits por limb multiplicado por limiter. Se limiter for negativo, são gerados números negativos.

Um limb é um mecanismo interno do GMP. O número de bits em um limb não é estatico, e pode variar de sistema para sistema. Geralmente, o número de bits em um limb é 16 ou 32, mas isto não é garantido.

Parâmetros

limiter

The limiter.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um número GMP aleatório.

Exemplos

Exemplo #1 Exemplo da gmp_random()

<?php
$rand1 = gmp_random(1); // random number from 0 to 1 * bits per limb
$rand2 = gmp_random(2); // random number from 0 to 2 * bits per limb

echo gmp_strval($rand1) . "\n";
echo gmp_strval($rand2) . "\n";
?>

O exemplo acima irá imprimir:

1915834968
8642564075890328087

gmp_prob_prime
gmp_scan0
Funções da GMP


Scan for 0

gmp_random
gmp_scan1
Funções da GMP
PHP Manual

gmp_scan0

(PHP 4 >= 4.0.4, PHP 5)

gmp_scan0 — Scan for 0

Descrição

int gmp_scan0 ( resource $a , int $start )

Scans a, starting with bit start, towards more significant bits, until the first clear bit is found.

Parâmetros

a

The number to scan.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

start

The starting bit.

Valor Retornado

Returns the index of the found bit, as an integer. The index starts from 0.

Exemplos

Exemplo #1 gmp_scan0() example

<?php
// "0" bit is found at position 3. index starts at 0
$s1 = gmp_init("10111", 2);
echo gmp_scan0($s1, 0) . "\n";

// "0" bit is found at position 7. index starts at 5
$s2 = gmp_init("101110000", 2);
echo gmp_scan0($s2, 5) . "\n";
?>

O exemplo acima irá imprimir:

3
7

gmp_random
gmp_scan1
Funções da GMP


Scan for 1

gmp_scan0
gmp_setbit
Funções da GMP
PHP Manual

gmp_scan1

(PHP 4 >= 4.0.4, PHP 5)

gmp_scan1 — Scan for 1

Descrição

int gmp_scan1 ( resource $a , int $start )

Scans a, starting with bit start, towards more significant bits, until the first set bit is found.

Parâmetros

a

The number to scan.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

start

The starting bit.

Valor Retornado

Returns the index of the found bit, as an integer. If no set bit is found, -1 is returned.

Exemplos

Exemplo #1 gmp_scan1() example

<?php
// "1" bit is found at position 3. index starts at 0
$s1 = gmp_init("01000", 2);
echo gmp_scan1($s1, 0) . "\n";

// "1" bit is found at position 9. index starts at 5
$s2 = gmp_init("01000001111", 2);
echo gmp_scan1($s2, 5) . "\n";
?>

O exemplo acima irá imprimir:

3
9

gmp_scan0
gmp_setbit
Funções da GMP


Set bit

gmp_scan1
gmp_sign
Funções da GMP
PHP Manual

gmp_setbit

(PHP 4 >= 4.0.4, PHP 5)

gmp_setbit — Set bit

Descrição

void gmp_setbit ( resource $a , int $index [, bool $set_clear = true ] )

Sets bit index in a.

Parâmetros

a

The number being set to.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

index

The set bit.

set_clear

Defines if the bit is set to 0 or 1. By default the bit is set to 1. Index starts at 0.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 gmp_setbit() example

<?php
$a = gmp_init("0xfd");
gmp_setbit($a, 1); // index starts at 0
echo gmp_strval($a) . "\n";
?>

O exemplo acima irá imprimir:

255

Notas

Nota:

Unlike most of the other GMP functions, gmp_setbit() must be called with a GMP resource that already exists (using gmp_init() for example). One will not be automatically created.

Veja Também

  • gmp_clrbit() - Limpa bit
  • gmp_testbit() - Tests if a bit is set

gmp_scan1
gmp_sign
Funções da GMP


Sinal do número

gmp_setbit
gmp_sqrt
Funções da GMP
PHP Manual

gmp_sign

(PHP 4 >= 4.0.4, PHP 5)

gmp_sign — Sinal do número

Descrição

int gmp_sign ( resource $a )

Verifica o sinal de um número.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna 1 se a é positivo, -1 se a é negativo, e 0 se a for zero.

Exemplos

Exemplo #1 Exemplo da gmp_sign()

<?php
// positivo
echo gmp_sign("500") . "\n";

// negativo
echo gmp_sign("-500") . "\n";

// zero
echo gmp_sign("0") . "\n";
?>

O exemplo acima irá imprimir:

1
-1
0

gmp_setbit
gmp_sqrt
Funções da GMP


Raíz quadrada

gmp_sign
gmp_sqrtrem
Funções da GMP
PHP Manual

gmp_sqrt

(PHP 4 >= 4.0.4, PHP 5)

gmp_sqrt — Raíz quadrada

Descrição

resource gmp_sqrt ( resource $a )

Calcula a raiz quadrada de a.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

A parte inteira da raiz quadrada, como um número GMP.

Exemplos

Exemplo #1 Exemplo gmp_sqrt()

<?php
$sqrt1 = gmp_sqrt("9");
$sqrt2 = gmp_sqrt("7");
$sqrt3 = gmp_sqrt("1524157875019052100");

echo gmp_strval($sqrt1) . "\n";
echo gmp_strval($sqrt2) . "\n";
echo gmp_strval($sqrt3) . "\n";
?>

O exemplo acima irá imprimir:

3
2
1234567890

gmp_sign
gmp_sqrtrem
Funções da GMP


Raíz quadrada com resto

gmp_sqrt
gmp_strval
Funções da GMP
PHP Manual

gmp_sqrtrem

(PHP 4 >= 4.0.4, PHP 5)

gmp_sqrtrem — Raíz quadrada com resto

Descrição

array gmp_sqrtrem ( resource $a )

Calcula a raiz quadrada de um número, com resto.

Parâmetros

a

O número a ser calculado a raiz quadrada.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Retorna uma matriz onde o primeiro elemento é um inteiro raíz quadrada de a e o segundo é o resto (a diferença entre a e o quadrado do primeiro elemento).

Exemplos

Exemplo #1 Exemplo da gmp_sqrtrem()

<?php
list($sqrt1, $sqrt1rem) = gmp_sqrtrem("9");
list($sqrt2, $sqrt2rem) = gmp_sqrtrem("7");
list($sqrt3, $sqrt3rem) = gmp_sqrtrem("1048576");

echo gmp_strval($sqrt1) . ", " . gmp_strval($sqrt1rem) . "\n";
echo gmp_strval($sqrt2) . ", " . gmp_strval($sqrt2rem) . "\n";
echo gmp_strval($sqrt3) . ", " . gmp_strval($sqrt3rem) . "\n";
?>

O exemplo acima irá imprimir:

3, 0
2, 3
1024, 0

gmp_sqrt
gmp_strval
Funções da GMP


Converte um número GMP para uma string

gmp_sqrtrem
gmp_sub
Funções da GMP
PHP Manual

gmp_strval

(PHP 4 >= 4.0.4, PHP 5)

gmp_strval — Converte um número GMP para uma string

Descrição

string gmp_strval ( resource $gmpnumber [, int $base ] )

Converte o número GMP para a representação de uma string na base base. A base padrão é 10.

Parâmetros

gmpnumber

O número GMP que será convertido para uma string.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

base

A base do número retornado. A base padrão é 10. Valores permitidos para base são de 2 à 36.

Valor Retornado

O número, como uma string.

Exemplos

Exemplo #1 Convertendo um número GMP para uma string

<?php
$a = gmp_init("0x41682179fbf5");
printf("Decimal: %s, 36-based: %s", gmp_strval($a), gmp_strval($a,36));
?>

gmp_sqrtrem
gmp_sub
Funções da GMP


Subtrai números

gmp_strval
gmp_testbit
Funções da GMP
PHP Manual

gmp_sub

(PHP 4 >= 4.0.4, PHP 5)

gmp_sub — Subtrai números

Descrição

resource gmp_sub ( resource $a , resource $b )

Subtrai b de a e retorna o resultado.

Parâmetros

a

The number being subtracted from.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

The number subtracted from a.

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_sub()

<?php
$sub = gmp_sub("281474976710656", "4294967296"); // 2^48 - 2^32
echo gmp_strval($sub) . "\n";
?>

O exemplo acima irá imprimir:

281470681743360

gmp_strval
gmp_testbit
Funções da GMP


Tests if a bit is set

gmp_sub
gmp_xor
Funções da GMP
PHP Manual

gmp_testbit

(PHP 5 >= 5.3.0)

gmp_testbit — Tests if a bit is set

Descrição

bool gmp_testbit ( resource $a , int $index )

Tests if the specified bit is set.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

index

The bit to test

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

E_WARNING is issued when index is less than zero.

Exemplos

Exemplo #1 gmp_testbit() example

<?php
$n = gmp_init("1000000");
var_dump(gmp_testbit($n, 1));
gmp_setbit($n, 1);
var_dump(gmp_testbit($n, 1));
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • gmp_setbit() - Set bit
  • gmp_clrbit() - Limpa bit

gmp_sub
gmp_xor
Funções da GMP


Operação binária XOR

gmp_testbit
Math
Funções da GMP
PHP Manual

gmp_xor

(PHP 4 >= 4.0.4, PHP 5)

gmp_xor — Operação binária XOR

Descrição

resource gmp_xor ( resource $a , resource $b )

Faz a operação binária exclusiva OR (XOR) de dois números GMP.

Parâmetros

a

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

b

Ele pode ser qualquer número GMP resource, ou uma string numérica que é possível convertê-la para um número.

Valor Retornado

Um resource de um número GMP.

Exemplos

Exemplo #1 Exemplo da gmp_xor()

<?php
$xor1 = gmp_init("1101101110011101", 2);
$xor2 = gmp_init("0110011001011001", 2);

$xor3 = gmp_xor($xor1, $xor2);

echo gmp_strval($xor3, 2) . "\n";
?>

O exemplo acima irá imprimir:

1011110111000100

gmp_testbit
Math
Funções da GMP


Funções Matemáticas

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções Matemáticas
    • abs — Valor absoluto
    • acos — Cosseno Inverso (arco cosseno)
    • acosh — Cosseno Hiperbólico Inverso
    • asin — Seno Inverso (arco seno)
    • asinh — Seno Hiperbólico Inverso
    • atan2 — Tangente inversa de duas variáveis
    • atan — Tangente Inversa (arco tangente)
    • atanh — Tangente hiperbólica inversa
    • base_convert — Converte um número entre bases arbitrárias
    • bindec — Binário para decimal
    • ceil — Arredonda frações para cima
    • cos — Coseno
    • cosh — Cosseno hiperbólico
    • decbin — Decimal para binário
    • dechex — Decimal para hexadecimal
    • decoct — Decimal para octal
    • deg2rad — Converte o número em graus ao equivalente em radianos
    • exp — Calcula o expoente de e
    • expm1 — Retorna exp(numero) - 1, computado de forma que é preciso mesmo quando o valor do número é perto de zero.
    • floor — Arredonda frações para baixo
    • fmod — Returns the floating point remainder (modulo) of the division of the arguments
    • getrandmax — Retorna o maior valor aletório possível
    • hexdec — Hexadecimal para decimal
    • hypot — Calcula o tamanho da hipotenusa de um ângulo reto do triângulo Retorna a raiz quadrada de (num1*num1 + num2*num2)
    • is_finite — Verifica se um valor é um número finito
    • is_infinite — Descrição
    • is_nan — Verifica se um valor não é um número
    • lcg_value — Gerador congruente linear combinado
    • log10 — Logaritmo Base-10
    • log1p — Retorna o log(1 + numero), calculado de forma que o valor do número seja próximo de zero.
    • log — Logaritmo natural
    • max — Localiza o maior valor
    • min — Encontra o menor valor
    • mt_getrandmax — Retorna o maior valor aletório possível
    • mt_rand — Gerador melhorado de números aleatórios
    • mt_srand — Semeia o gerador melhorado de números aleatórios
    • octdec — Octal para decimal
    • pi — Obtém o valor de pi
    • pow — Potência
    • rad2deg — Converte o número em radianos para o equivalente em graus
    • rand — Gera um inteiro aleatório
    • round — Arredonda um número
    • sin — Seno
    • sinh — Seno hiperbólico
    • sqrt — Raiz quadrada
    • srand — Semeia o gerador de números aletórios
    • tan — Tangente
    • tanh — Tangente hiperbólica
gmp_xor
Introdução
Extensões Matemáticas


Introdução

Estas funções matemáticas somente suportam valores dentro do tamanho integer and float do seu computador. (estes correspondem atualmente aos tipos do C long e double) Se você precisa manipular números maiores, procure funções de matemática com precisão arbitrária.

Veja também a seção do manual sobre operadores aritméticos.

Math
Instalação/Configuração
Math


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Math


Constantes pré-definidas

As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.

Constantes da Matemáticas
Constante | Valor | Descrição
M_PI | 3.14159265358979323846 | Pi
M_E | 2.7182818284590452354 | e
M_LOG2E | 1.4426950408889634074 | log_2 e
M_LOG10E | 0.43429448190325182765 | log_10 e
M_LN2 | 0.69314718055994530942 | log_e 2
M_LN10 | 2.30258509299404568402 | log_e 10
M_PI_2 | 1.57079632679489661923 | pi/2
M_PI_4 | 0.78539816339744830962 | pi/4
M_1_PI | 0.31830988618379067154 | 1/pi
M_2_PI | 0.63661977236758134308 | 2/pi
M_SQRTPI | 1.77245385090551602729 | sqrt(pi) [5.2.0]
M_2_SQRTPI | 1.12837916709551257390 | 2/sqrt(pi)
M_SQRT2 | 1.41421356237309504880 | sqrt(2)
M_SQRT3 | 1.73205080756887729352 | sqrt(3) [5.2.0]
M_SQRT1_2 | 0.70710678118654752440 | 1/sqrt(2)
M_LNPI | 1.14472988584940017414 | log_e(pi) [5.2.0]
M_EULER | 0.57721566490153286061 | Euler constant [5.2.0]
Somente M_PI está disponível nas versões do PHP anteriores a 4.0.0, inclusive. Todas as outras constantes foram disponibilizadas a partir da 4.0.0. Constantes marcadas com [4.0.2] foram acrescentadas no PHP 5.2.0.

Tipos Resource
Funções Matemáticas
Math


Funções Matemáticas

Índice

  • abs — Valor absoluto
  • acos — Cosseno Inverso (arco cosseno)
  • acosh — Cosseno Hiperbólico Inverso
  • asin — Seno Inverso (arco seno)
  • asinh — Seno Hiperbólico Inverso
  • atan2 — Tangente inversa de duas variáveis
  • atan — Tangente Inversa (arco tangente)
  • atanh — Tangente hiperbólica inversa
  • base_convert — Converte um número entre bases arbitrárias
  • bindec — Binário para decimal
  • ceil — Arredonda frações para cima
  • cos — Coseno
  • cosh — Cosseno hiperbólico
  • decbin — Decimal para binário
  • dechex — Decimal para hexadecimal
  • decoct — Decimal para octal
  • deg2rad — Converte o número em graus ao equivalente em radianos
  • exp — Calcula o expoente de e
  • expm1 — Retorna exp(numero) - 1, computado de forma que é preciso mesmo quando o valor do número é perto de zero.
  • floor — Arredonda frações para baixo
  • fmod — Returns the floating point remainder (modulo) of the division of the arguments
  • getrandmax — Retorna o maior valor aletório possível
  • hexdec — Hexadecimal para decimal
  • hypot — Calcula o tamanho da hipotenusa de um ângulo reto do triângulo Retorna a raiz quadrada de (num1*num1 + num2*num2)
  • is_finite — Verifica se um valor é um número finito
  • is_infinite — Descrição
  • is_nan — Verifica se um valor não é um número
  • lcg_value — Gerador congruente linear combinado
  • log10 — Logaritmo Base-10
  • log1p — Retorna o log(1 + numero), calculado de forma que o valor do número seja próximo de zero.
  • log — Logaritmo natural
  • max — Localiza o maior valor
  • min — Encontra o menor valor
  • mt_getrandmax — Retorna o maior valor aletório possível
  • mt_rand — Gerador melhorado de números aleatórios
  • mt_srand — Semeia o gerador melhorado de números aleatórios
  • octdec — Octal para decimal
  • pi — Obtém o valor de pi
  • pow — Potência
  • rad2deg — Converte o número em radianos para o equivalente em graus
  • rand — Gera um inteiro aleatório
  • round — Arredonda um número
  • sin — Seno
  • sinh — Seno hiperbólico
  • sqrt — Raiz quadrada
  • srand — Semeia o gerador de números aletórios
  • tan — Tangente
  • tanh — Tangente hiperbólica
Constantes pré-definidas
abs
Math


Valor absoluto

Funções Matemáticas
acos
Funções Matemáticas
PHP Manual

abs

(PHP 4, PHP 5)

abs — Valor absoluto

Descrição

number abs ( mixed $number )

Retorna o valor absoluto do number.

Parâmetros

number

O valor numérico para processar

Valor Retornado

O valor absoluto de number. Se o argumento número é do tipo float, o número retornado também é float, em outro caso será inteiro (mas poderá retornar float se o resultado tiver magnitude maior que inteiro).

Exemplos

Exemplo #1 Exemplo da abs()

<?php
$abs = abs(-4.2); // $abs = 4.2; (double/float)
$abs2 = abs(5);   // $abs2 = 5; (inteiro)
$abs3 = abs(-5);  // $abs3 = 5; (inteiro)
?>

Funções Matemáticas
acos
Funções Matemáticas


Cosseno Inverso (arco cosseno)

abs
acosh
Funções Matemáticas
PHP Manual

acos

(PHP 4, PHP 5)

acos — Cosseno Inverso (arco cosseno)

Descrição

float acos ( float $arg )

Retorna o inverso do cosseno de arg em radianos. acos() é a função complementar de cos(), o que significa que a==cos(acos(a)) para qualquer valor de var que esteja dentro dos limites de acos().

Parâmetros

arg

O argumento para processar

Valor Retornado

O arco cosseno do arg em radianos.

Veja Também

  • cos() - Coseno
  • acosh() - Cosseno Hiperbólico Inverso
  • asin() - Seno Inverso (arco seno)
  • atan() - Tangente Inversa (arco tangente)

abs
acosh
Funções Matemáticas


Cosseno Hiperbólico Inverso

acos
asin
Funções Matemáticas
PHP Manual

acosh

(PHP 4 >= 4.1.0, PHP 5)

acosh — Cosseno Hiperbólico Inverso

Descrição

float acosh ( float $arg )

Retorna o cosseno hiperbólico de arg, isto é, o valor cujo coseno hiperbólico é arg.

Nota: esta função não é implementada na plataforma Windows

Parâmetros

arg

O valor para processar

Valor Retornado

O cosseno hiperbólico inverso do arg

Veja Também

  • cosh() - Cosseno hiperbólico
  • acos() - Cosseno Inverso (arco cosseno)
  • asinh ()
  • atanh() - Tangente hiperbólica inversa

acos
asin
Funções Matemáticas


Seno Inverso (arco seno)

acosh
asinh
Funções Matemáticas
PHP Manual

asin

(PHP 4, PHP 5)

asin — Seno Inverso (arco seno)

Descrição

float asin ( float $arg )

Retorna o inverso do seno de arg em radianos. asin() é a função complementar de sin(), o que significa que a==sin(asin(a)) para qualquer valor de var que esteja dentro dos limites de asin().

Parâmetros

arg

O argumento para processar

Valor Retornado

O arco seno de arg em radianos

Veja Também

  • sin() - Seno
  • asinh() - Seno Hiperbólico Inverso
  • acos() - Cosseno Inverso (arco cosseno)
  • atan() - Tangente Inversa (arco tangente)

acosh
asinh
Funções Matemáticas


Seno Hiperbólico Inverso

asin
atan2
Funções Matemáticas
PHP Manual

asinh

(PHP 4 >= 4.1.0, PHP 5)

asinh — Seno Hiperbólico Inverso

Descrição

float asinh ( float $arg )

Retorna o inverso do seno hiperbólico de arg, isto é, o valor cujo seno hiperbólico é arg.

Nota: esta função não é implementada na plataforma Windows

Parâmetros

arg

O argumento para processar

Valor Retornado

O seno hiperbólico inverso de arg

Veja Também

  • sinh() - Seno hiperbólico
  • asin() - Seno Inverso (arco seno)
  • acosh() - Cosseno Hiperbólico Inverso
  • atanh() - Tangente hiperbólica inversa

asin
atan2
Funções Matemáticas


Tangente inversa de duas variáveis

asinh
atan
Funções Matemáticas
PHP Manual

atan2

(PHP 4, PHP 5)

atan2 — Tangente inversa de duas variáveis

Descrição

float atan2 ( float $y , float $x )

Esta função calcula a tangente inversa de duas variaveis x e y. Esta função é o equivalente a calcular a tangente inversa de y / x, exceto que os sinais de ambos os argumentos são usados para determinar o quadrante do resultado.

Esta função retorna o resultado em radianos, estando entre -PI e PI (inclusive).

Parâmetros

y

Dividendo

x

Divisor

Valor Retornado

A tangente inversa de y/x em radianos.

Veja Também

  • atan() - Tangente Inversa (arco tangente)

asinh
atan
Funções Matemáticas


Tangente Inversa (arco tangente)

atan2
atanh
Funções Matemáticas
PHP Manual

atan

(PHP 4, PHP 5)

atan — Tangente Inversa (arco tangente)

Descrição

float atan ( float $arg )

Retorna o inverso da tangente de arg em radianos. atan() é a função complementar de tan(), o que significa que var == tan(atan(var)) para qualquer valor de a que esteja dentro dos limites de atan().

Parâmetros

arg

O argumento para processar

Valor Retornado

O arco tangente de arg em radianos.

Veja Também

  • tan() - Tangente
  • atanh() - Tangente hiperbólica inversa
  • asin() - Seno Inverso (arco seno)
  • acos() - Cosseno Inverso (arco cosseno)

atan2
atanh
Funções Matemáticas


Tangente hiperbólica inversa

atan
base_convert
Funções Matemáticas
PHP Manual

atanh

(PHP 4 >= 4.1.0, PHP 5)

atanh — Tangente hiperbólica inversa

Descrição

float atanh ( float $arg )

Retorna a tangente hiperbólica inversa de arg, isto é, o valor cuja tangente hiperbólica é arg.

Nota: esta função não é implementada na plataforma Windows

Parâmetros

arg

O argumento para processar

Valor Retornado

A tangente hiperbólica inversa de arg

Veja Também

  • tanh() - Tangente hiperbólica
  • atan ()
  • asinh() - Seno Hiperbólico Inverso
  • acosh() - Cosseno Hiperbólico Inverso

atan
base_convert
Funções Matemáticas


Converte um número entre bases arbitrárias

atanh
bindec
Funções Matemáticas
PHP Manual

base_convert

(PHP 4, PHP 5)

base_convert — Converte um número entre bases arbitrárias

Descrição

string base_convert ( string $number , int $frombase , int $tobase )

Retorna uma string contendo number representado na base tobase. A base atual de number é especificada em frombase. Tanto frombase quanto tobase tem que estar entre 2 e 36, inclusive. Digitos em números com base maior do que 10 serão representados com letras a-z, com a significando 10, b significando 11 e z significando 35.

Aviso

base_convert() pode perder precisão com números grandes devido a propriedade relacionada para os tipos interno "double" ou "float" usado. Veja a seção Números de ponto flutuante no manual para informação específica e limitações.

Parâmetros

number

O número para converter

frombase

A base que number está

tobase

A base para converter number

Valor Retornado

number convertido para base tobase

Exemplos

Exemplo #1 base_convert()

<?php
$hexadecimal = 'A37334';
echo base_convert($hexadecimal, 16, 2);
?>

O exemplo acima irá imprimir:

101000110111001100110100

Veja Também

  • intval() - Retorna o valor inteiro da variável

atanh
bindec
Funções Matemáticas


Binário para decimal

base_convert
ceil
Funções Matemáticas
PHP Manual

bindec

(PHP 4, PHP 5)

bindec — Binário para decimal

Descrição

number bindec ( string $binary_string )

Retorna o equivalente decimal do número binário representado pelo argumento binary_string.

bindec() converte um número binário em um integer ou, se precisar por questão de tamanho, float.

Parâmetros

binary_string

The binary string to convert

Valor Retornado

The decimal value of binary_string

Histórico

Versão | Descrição
Desde o 4.1.0 | A função pode agora converter números grandes para se ajustar ao tipo integer da plataforma, valores grandes são retornados como float neste caso.

Exemplos

Exemplo #1 Exemplo da bindec()

<?php
echo bindec('110011') . "\n";
echo bindec('000110011') . "\n";

echo bindec('111');
?>

O exemplo acima irá imprimir:

51
51
7

Veja Também

  • decbin() - Decimal para binário
  • octdec() - Octal para decimal
  • hexdec() - Hexadecimal para decimal
  • base_convert() - Converte um número entre bases arbitrárias

base_convert
ceil
Funções Matemáticas


Arredonda frações para cima

bindec
cos
Funções Matemáticas
PHP Manual

ceil

(PHP 4, PHP 5)

ceil — Arredonda frações para cima

Descrição

float ceil ( float $value )

Retorna o próximo maior valor inteiro arredondando para cima do value, se fracionário.

Parâmetros

value

The value to round

Valor Retornado

value arredondado pra o próximo inteiro. O valor retornado de ceil() é do tipo float porque a dimensão dos valores suportados por float é normalmente maior do que o do tipo int.

Exemplos

Exemplo #1 ceil() example

<?php
echo ceil(4.3);    // 5
echo ceil(9.999);  // 10
echo ceil(-3.14);  // -3
?>

Veja Também

  • floor() - Arredonda frações para baixo
  • round() - Arredonda um número

bindec
cos
Funções Matemáticas


Coseno

ceil
cosh
Funções Matemáticas
PHP Manual

cos

(PHP 4, PHP 5)

cos — Coseno

Descrição

float cos ( float $arg )

cos() retorna o coseno de arg. O parâmetro arg deve estar em radianos.

Parâmetros

arg

Um ângulo em radianos

Valor Retornado

O cosseno de arg

Exemplos

Exemplo #1 Exemplo da cos()

<?php

echo cos(M_PI); // -1

?>

Veja Também

  • acos() - Cosseno Inverso (arco cosseno)
  • sin() - Seno
  • tan() - Tangente
  • deg2rad() - Converte o número em graus ao equivalente em radianos

ceil
cosh
Funções Matemáticas


Cosseno hiperbólico

cos
decbin
Funções Matemáticas
PHP Manual

cosh

(PHP 4 >= 4.1.0, PHP 5)

cosh — Cosseno hiperbólico

Descrição

float cosh ( float $arg )

Retorna o cosseno hiperbólico de arg, definido por (exp(arg) + exp(-arg))/2.

Parâmetros

arg

O argumento para processar

Valor Retornado

O cosseno hiperbólico de arg

Veja Também

  • cos() - Coseno
  • acosh() - Cosseno Hiperbólico Inverso
  • sinh() - Seno hiperbólico
  • cosh()

cos
decbin
Funções Matemáticas


Decimal para binário

cosh
dechex
Funções Matemáticas
PHP Manual

decbin

(PHP 4, PHP 5)

decbin — Decimal para binário

Descrição

string decbin ( int $number )

Retorna uma string contendo a representação binária do parâmetro number. O maior número que pode ser convertido é 4294967295 em decimal, resultando em uma strings de 32 números 1.

Parâmetros

number

Valor decimal para converter

Valor Retornado

String binária representando o number

Exemplos

Exemplo #1 Exemplo da decbin()

<?php
echo decbin(12) . "\n";
echo decbin(26);
?>

O exemplo acima irá imprimir:

1100
11010

Veja Também

  • bindec() - Binário para decimal
  • decoct() - Decimal para octal
  • dechex() - Decimal para hexadecimal
  • base_convert() - Converte um número entre bases arbitrárias

cosh
dechex
Funções Matemáticas


Decimal para hexadecimal

decbin
decoct
Funções Matemáticas
PHP Manual

dechex

(PHP 4, PHP 5)

dechex — Decimal para hexadecimal

Descrição

string dechex ( int $number )

Retorna uma string contendo a representação hexadecimal do argumento number. O maior número que pode ser convertido é 4294967295 em decimal, resultando em "ffffffff".

Parâmetros

number

Valor decimal para converter

Valor Retornado

String hexadecimal representando o number

Exemplos

Exemplo #1 Exemplo da dechex()

<?php
echo dechex(10) . "\n";
echo dechex(47);
?>

O exemplo acima irá imprimir:

a
2f

Veja Também

  • hexdec() - Hexadecimal para decimal
  • decbin() - Decimal para binário
  • decoct() - Decimal para octal
  • base_convert() - Converte um número entre bases arbitrárias

decbin
decoct
Funções Matemáticas


Decimal para octal

dechex
deg2rad
Funções Matemáticas
PHP Manual

decoct

(PHP 4, PHP 5)

decoct — Decimal para octal

Descrição

string decoct ( int $number )

Retorna uma string contendo a representação octal do parâmetro number. O maior número que pode ser convertido é 4294967295 em decimal, resultando em "37777777777".

Parâmetros

number

Valor decimal para converter

Valor Retornado

String octal representando o number

Exemplos

Exemplo #1 Exemplo da decoct()

<?php
echo decoct(15) . "\n";
echo decoct(264);
?>

O exemplo acima irá imprimir:

17
410

Veja Também

  • octdec() - Octal para decimal
  • decbin() - Decimal para binário
  • dechex() - Decimal para hexadecimal
  • base_convert() - Converte um número entre bases arbitrárias

dechex
deg2rad
Funções Matemáticas


Converte o número em graus ao equivalente em radianos

decoct
exp
Funções Matemáticas
PHP Manual

deg2rad

(PHP 4, PHP 5)

deg2rad — Converte o número em graus ao equivalente em radianos

Descrição

float deg2rad ( float $number )

Esta função converte number de graus ao equivalente em radianos.

Parâmetros

number

Valor do ângulo em graus

Valor Retornado

O radiano equivalente ao number

Exemplos

Exemplo #1 Exemplo da deg2rad()

<?php

echo deg2rad(45); // 0.785398163397
var_dump(deg2rad(45) === M_PI_4); // bool(true)

?>

Veja Também

  • rad2deg() - Converte o número em radianos para o equivalente em graus

decoct
exp
Funções Matemáticas


Calcula o expoente de e

deg2rad
expm1
Funções Matemáticas
PHP Manual

exp

(PHP 4, PHP 5)

exp — Calcula o expoente de e

Descrição

float exp ( float $arg )

Retorna e a potência de arg.

Nota:

'e' é a base do sistema natural de logaritmos, ou aproximadamente 2.718282.

Parâmetros

arg

O argumento para processar

Valor Retornado

'e' elevado a potência de arg

Exemplos

Exemplo #1 Exemplo da exp()

<?php
echo exp(12) . "\n";
echo exp(5.7);
?>

O exemplo acima irá imprimir:

1.6275E+005
298.87

Veja Também

  • log() - Logaritmo natural
  • pow() - Potência

deg2rad
expm1
Funções Matemáticas


Retorna exp(numero) - 1, computado de forma que é preciso mesmo quando o valor do número é perto de zero.

exp
floor
Funções Matemáticas
PHP Manual

expm1

(PHP 4 >= 4.1.0, PHP 5)

expm1 — Retorna exp(numero) - 1, computado de forma que é preciso mesmo quando o valor do número é perto de zero.

Descrição

float expm1 ( float $arg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

expm1() retorna o equivalente a 'exp(arg) - 1' computado na forma que é exato mesmo se o valor de arg é próximo de zero, há um caso onde 'exp (arg) - 1' pode ser inexato devido a subtração de dois números que são quase iguais.

Nota: esta função não é implementada na plataforma Windows

Parâmetros

arg

O argumento para processar

Valor Retornado

'e' para potência de arg menos 1

Veja Também

  • log1p() - Retorna o log(1 + numero), calculado de forma que o valor do número seja próximo de zero.
  • exp() - Calcula o expoente de e

exp
floor
Funções Matemáticas


Arredonda frações para baixo

expm1
fmod
Funções Matemáticas
PHP Manual

floor

(PHP 4, PHP 5)

floor — Arredonda frações para baixo

Descrição

float floor ( float $value )

Retorna o próximo menor valor inteiro ao se arredondar para baixo o valor, se necessário.

Parâmetros

number

O valor numérico arredondado

Valor Retornado

value arredondado para o inteiro menor. O valor retornado de floor() é do tipo float porque o tipo float normalmente abrange mais números possíveis do que integer.

Exemplos

Exemplo #1 Exemplos de floor()

<?php
echo floor(4.3);   // 4
echo floor(9.999); // 9
echo floor(-3.14); // -4
?>

Veja Também

  • ceil() - Arredonda frações para cima
  • round() - Arredonda um número

expm1
fmod
Funções Matemáticas


Returns the floating point remainder (modulo) of the division of the arguments

floor
getrandmax
Funções Matemáticas
PHP Manual

fmod

(PHP 4 >= 4.2.0, PHP 5)

fmod — Returns the floating point remainder (modulo) of the division of the arguments

Descrição

float fmod ( float $x , float $y )

Returns the floating point remainder of dividing the dividend (x) by the divisor (y). The reminder (r) is defined as: x = i * y + r, for some integer i. If y is non-zero, r has the same sign as x and a magnitude less than the magnitude of y.

Parâmetros

x

The dividend

y

The divisor

Valor Retornado

The floating point remainder of x/y

Exemplos

Exemplo #1 Using fmod()

<?php
$x = 5.7;
$y = 1.3;
$r = fmod($x, $y);
// $r equals 0.5, because 4 * 1.3 + 0.5 = 5.7
?>

floor
getrandmax
Funções Matemáticas


Retorna o maior valor aletório possível

fmod
hexdec
Funções Matemáticas
PHP Manual

getrandmax

(PHP 4, PHP 5)

getrandmax — Retorna o maior valor aletório possível

Descrição

int getrandmax ( void )

Retorna o valor máximo que pode ser gerado em uma chamada a função rand().

Valor Retornado

O maior possível valor aleatório retornado por rand()

Veja Também

  • rand() - Gera um inteiro aleatório
  • srand() - Semeia o gerador de números aletórios
  • mt_getrandmax() - Retorna o maior valor aletório possível

fmod
hexdec
Funções Matemáticas


Hexadecimal para decimal

getrandmax
hypot
Funções Matemáticas
PHP Manual

hexdec

(PHP 4, PHP 5)

hexdec — Hexadecimal para decimal

Descrição

number hexdec ( string $hex_string )

Retorna o decimal equivalente do número hexadecimal representado pelo argumento hex_string. hexdec() converte uma string hexadecimal para um número decimal.

hexdec() irá ignorar qualquer caracter não hexadecimal que encontrar.

Parâmetros

hex_string

The hexadecimal string to convert

Valor Retornado

The decimal representation of hex_string

Histórico

Versão | Descrição
Since 4.1.0 | A função pode agora converter valores que são maior que o tipo integer da plataforma, retornará o valor como float neste caso.

Exemplos

Exemplo #1 exemplos hexdec()

<?php
var_dump(hexdec("See"));
var_dump(hexdec("ee"));
// ambos exibem "int(238)"

var_dump(hexdec("that")); // print "int(10)"
var_dump(hexdec("a0")); // print "int(160)"
?>

Veja Também

  • dechex() - Decimal para hexadecimal
  • bindec() - Binário para decimal
  • octdec() - Octal para decimal
  • base_convert() - Converte um número entre bases arbitrárias

getrandmax
hypot
Funções Matemáticas


Calcula o tamanho da hipotenusa de um ângulo reto do triângulo Retorna a raiz quadrada de (num1*num1 + num2*num2)

hexdec
is_finite
Funções Matemáticas
PHP Manual

hypot

(PHP 4 >= 4.1.0, PHP 5)

hypot — Calcula o tamanho da hipotenusa de um ângulo reto do triângulo Retorna a raiz quadrada de (num1*num1 + num2*num2)

Descrição

float hypot ( float $x , float $y )

hypot() retorna o tamanho da hipotenusa de um ângulo reto do triângulo com lado de tamanho x e y, ou a distância do ponto (x, y) de uma origem. O equivalente a sqrt(x*x + y*y).

Parâmetros

x

Tamanho do primeiro lado

y

Tamanho do segundo lado

Valor Retornado

Tamanho calculado da hipotenusa

hexdec
is_finite
Funções Matemáticas


Verifica se um valor é um número finito

hypot
is_infinite
Funções Matemáticas
PHP Manual

is_finite

(PHP 4 >= 4.2.0, PHP 5)

is_finite — Verifica se um valor é um número finito

Descrição

bool is_finite ( float $val )

Verifica se val é número finito legal na plataforma.

Parâmetros

val

The value to check

Valor Retornado

TRUE se val é um número finito legal dentro do limite permitido para um float do PHP na plataforma, caso contrário FALSE.

Veja Também

  • is_infinite() - Descrição
  • is_nan() - Verifica se um valor não é um número

hypot
is_infinite
Funções Matemáticas


is_finite
is_nan
Funções Matemáticas
PHP Manual

is_infinite

(PHP 4 >= 4.2.0, PHP 5)

is_infinite —

Descrição

bool is_infinite ( float $val )

Retorna TRUE se val é infinito (positivo ou negativo), como por exemplo o resultado de log(0) ou qualquer outro valor muito grande para caber num float desta plataforma.

Parâmetros

val

O valor para verificar

Valor Retornado

TRUE se val é infinito, caso contrário FALSE.

Veja Também

  • is_finite() - Verifica se um valor é um número finito
  • is_nan() - Verifica se um valor não é um número

is_finite
is_nan
Funções Matemáticas


Verifica se um valor não é um número

is_infinite
lcg_value
Funções Matemáticas
PHP Manual

is_nan

(PHP 4 >= 4.2.0, PHP 5)

is_nan — Verifica se um valor não é um número

Descrição

bool is_nan ( float $val )

Verifica se val é 'não é um número', como o resultado de acos(1.01).

Parâmetros

val

The value to check

Valor Retornado

Retorna TRUE se val é 'não é um numéro', caso contrário FALSE.

Veja Também

  • is_finite() - Verifica se um valor é um número finito
  • is_infinite() - Descrição

is_infinite
lcg_value
Funções Matemáticas


Gerador congruente linear combinado

is_nan
log10
Funções Matemáticas
PHP Manual

lcg_value

(PHP 4, PHP 5)

lcg_value — Gerador congruente linear combinado

Descrição

float lcg_value ( void )

lcg_value() retorna um pseudo número aleatório nos limites de (0, 1). A função combina duas congruências geradas, com períodos de 2^31 - 85 e 2^31 - 249. O período desta função é igual ao produto de ambos os primos.

Valor Retornado

Um pseudo valor float aleatório no intervalo (0, 1)

Veja Também

  • rand() - Gera um inteiro aleatório
  • mt_rand() - Gerador melhorado de números aleatórios

is_nan
log10
Funções Matemáticas


Logaritmo Base-10

lcg_value
log1p
Funções Matemáticas
PHP Manual

log10

(PHP 4, PHP 5)

log10 — Logaritmo Base-10

Descrição

float log10 ( float $arg )

Retorna o logaritmo na base-10 de arg.

Parâmetros

arg

O argumento para processar

Valor Retornado

O logaritmo na base-10 de arg

Veja Também

  • log() - Logaritmo natural

lcg_value
log1p
Funções Matemáticas


Retorna o log(1 + numero), calculado de forma que o valor do número seja próximo de zero.

log10
log
Funções Matemáticas
PHP Manual

log1p

(PHP 4 >= 4.1.0, PHP 5)

log1p — Retorna o log(1 + numero), calculado de forma que o valor do número seja próximo de zero.

Descrição

float log1p ( float $number )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

log1p() retorna log(1 + number) computado na forma que é correta até quando o valor de number é perto de zero. log() pode somente retornar log(1) neste caso devido a falta de precisão.

Parâmetros

number

O argumento para processar

Valor Retornado

log(1 + number)

Histórico

Versão | Descrição
5.3.0 | Esta função está agora disponível em todas plataformas

Veja Também

  • expm1() - Retorna exp(numero) - 1, computado de forma que é preciso mesmo quando o valor do número é perto de zero.
  • log() - Logaritmo natural
  • log10() - Logaritmo Base-10

log10
log
Funções Matemáticas


Logaritmo natural

log1p
max
Funções Matemáticas
PHP Manual

log

(PHP 4, PHP 5)

log — Logaritmo natural

Descrição

float log ( float $arg [, float $base ] )

Se o parâmetro opcional base for informado, log() retorna logbase arg, senão log() retorna o logaritmo natural de arg.

Parâmetros

arg

O valor para calcular o logaritmo

base

O logaritmo base opcional para usar (padrão é 'e' e assim o logaritmo natural).

Valor Retornado

O logarimo de arg na base, se fornecido, ou o logaritmo natural.

Histórico

Versão | Descrição
Since 4.3.0 | O parâmetro opcional base tornou-se disponível. Para antigas versões você pode calcular o logaritmo na base b de um número n pela utilização da identidade matemática: logb(n) = log(n)/log(b), onde log é o logaritmo neperiano (ou natural).

Veja Também

  • log10() - Logaritmo Base-10
  • exp() - Calcula o expoente de e
  • pow() - Potência

log1p
max
Funções Matemáticas


Localiza o maior valor

log
min
Funções Matemáticas
PHP Manual

max

(PHP 4, PHP 5)

max — Localiza o maior valor

Descrição

mixed max ( array $values )
mixed max ( mixed $value1 , mixed $value2 [, mixed $value3... ] )

Se o primeiro e único parâmetro é um array, max() retorna o maior valor do array. Se no mínimo dois parâmetros são fornecidos, max() retornará o maior desses valores.

Nota:

O PHP irá avaliar uma string não numérica como 0 se comparado a integer, mas ainda retorna a string como se ela fosse numericamente o maior valor. Se vários agumentos forem avaliados como 0, max() irá retornar um número 0 se dado, senão o maior alfabético valor string será retornado.

Parâmetros

values

Um array contendo os valores.

Valor Retornado

max() retorna o maior numericalmente dos valores dos parâmetros.

Exemplos

Exemplo #1 Exemplos de max()

<?php
echo max(1, 3, 5, 6, 7);  // 7
echo max(array(2, 4, 5)); // 5

echo max(0, 'hello');     // 0
echo max('hello', 0);     // hello
echo max(-1, 'hello');    // hello

// Com arrays múltiplos, max compara da esquerda para direita,
// assim nesse exemplo: 2 == 2, mas 4 < 5
$val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7)

// Se forem informados um array e um não array, o array
// é sempre retornado como se ele fosse o maior
$val = max('string', array(2, 5, 7), 42);   // array(2, 5, 7)
?>

Veja Também

  • min() - Encontra o menor valor
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto

log
min
Funções Matemáticas


Encontra o menor valor

max
mt_getrandmax
Funções Matemáticas
PHP Manual

min

(PHP 4, PHP 5)

min — Encontra o menor valor

Descrição

mixed min ( array $values )
mixed min ( mixed $value1 , mixed $value2 [, mixed $value3... ] )

Se o primeiro e único argumento é um array, min() retorna o menor valor no array. Se no mínimo dois parâmetros são fornecidos, min() retornará o menor deles.

Nota:

O PHP irá avaliar uma string não numérica como 0 se comparado a integer, mas ainda retorna a string como se ela fosse numericamente o menor valor. Se vários agumentos forem avaliados como 0, min() irá retornar o menor valor alfanumericamente se alguma string é dada, senão um número 0 é retornado.

Parâmetros

values

Um array contendo os valores.

Valor Retornado

min() retorna o menor numericalmente dos valores dos parâmetros.

Exemplos

Exemplo #1 Exemplos de min()

<?php
echo min(2, 3, 1, 6, 7);  // 1
echo min(array(2, 4, 5)); // 2

echo min(0, 'hello');     // 0
echo min('hello', 0);     // hello
echo min('hello', -1);    // -1

// Com arrays múltiplos, min compara da esquerda para direita,
// assim nesse exemplo: 2 == 2, mas 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)

// Se ambos forem um array e um não array, o array
// nunca será retornado porque ele é sempre considerado o maior
$val = min('string', array(2, 5, 7), 42);   // string
?>

Veja Também

  • max() - Localiza o maior valor
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto

max
mt_getrandmax
Funções Matemáticas


Retorna o maior valor aletório possível

min
mt_rand
Funções Matemáticas
PHP Manual

mt_getrandmax

(PHP 4, PHP 5)

mt_getrandmax — Retorna o maior valor aletório possível

Descrição

int mt_getrandmax ( void )

Retorna o maior valor que pode ser obtido numa chamada a mt_rand().

Valor Retornado

Retorna o valor máximo aleatório retornado por mt_rand()

Veja Também

  • mt_rand() - Gerador melhorado de números aleatórios
  • mt_srand() - Semeia o gerador melhorado de números aleatórios
  • getrandmax() - Retorna o maior valor aletório possível

min
mt_rand
Funções Matemáticas


Gerador melhorado de números aleatórios

mt_getrandmax
mt_srand
Funções Matemáticas
PHP Manual

mt_rand

(PHP 4, PHP 5)

mt_rand — Gerador melhorado de números aleatórios

Descrição

int mt_rand ( void )
int mt_rand ( int $min , int $max )

Muitos geradores de números aleatórios das libcs antigas são duvidosos ou com características duvidosas e lentos. Por default, o PHP utiliza o gerador de números aleatórios da libc para a função rand(). A função mt_rand() é um bom substituto para a primeira. Ela utiliza um gerador de números aleatórios com características conhecidas, o » Mersenne Twister, que produzirá números randômicos quatro vezes mais rápido que média provida pela rand() da libc.

Se chamada sem os argumentos opcionais min e max, mt_rand() retorna um pseudo número aletório enrte 0 e mt_getrandmax(). se você precisa de um número randômico entre 5 e 15 (inclusive), por exemplo, utilize mt_rand (5, 15).

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Parâmetros

min

Menor valor opcional para ser retornado (padrão: 0)

max

Maior valor opcional para ser retornado (padrão: mt_getrandmax())

Valor Retornado

Um valor inteiro entre min (ou 0) e max (ou mt_getrandmax(), inclusive)

Histórico

Versão | Descrição
Desde o 3.0.7 | Em versões anteriores a 3.0.7, o significado do parâmetro max era range. Assim, para obter os mesmos resultados do exemplo acima, você precisaria utilizar rand (5, 11) para obter um número aleatório entre 5 e 15.

Exemplos

Exemplo #1 mt_rand() example

<?php
echo mt_rand() . "\n";
echo mt_rand() . "\n";

echo mt_rand(5, 15);
?>

O exemplo acima irá imprimir algo similar a:

1604716014
1478613278
6

Veja Também

  • mt_srand() - Semeia o gerador melhorado de números aleatórios
  • mt_getrandmax() - Retorna o maior valor aletório possível
  • rand() - Gera um inteiro aleatório

mt_getrandmax
mt_srand
Funções Matemáticas


Semeia o gerador melhorado de números aleatórios

mt_rand
octdec
Funções Matemáticas
PHP Manual

mt_srand

(PHP 4, PHP 5)

mt_srand — Semeia o gerador melhorado de números aleatórios

Descrição

void mt_srand ([ int $seed ] )

Semeia o gerador de números aleatórios com seed ou com um valor aleatório se nenhum seed é dado.

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Parâmetros

seed

O opcional valor de seed

Histórico

Versão | Descrição
Desde 4.2.0 | O seed tornou-se opcional e padrão para um valor aleatório se omitido.
Desde 5.2.1 | A implementação Mersenne Twister em PHP agora sua um novo algoritmo de seeding por Richard Wagner. Idênticos seeds não produzem a mesma seqüência de valores que tinham em versões anteriores. Este comportamento não é esperado que seja modificado, mas é considerado não seguro confiar nele.

Exemplos

Exemplo #1 Exemplo da mt_srand()

<?php
// semente de microsegundos
function make_seed()
{
    list($usec, $sec) = explode(' ', microtime());
    return (float) $sec + ((float) $usec * 100000);
}
mt_srand(make_seed());
$randval = mt_rand();
?>

Veja Também

  • mt_rand() - Gerador melhorado de números aleatórios
  • mt_getrandmax() - Retorna o maior valor aletório possível
  • srand() - Semeia o gerador de números aletórios

mt_rand
octdec
Funções Matemáticas


Octal para decimal

mt_srand
pi
Funções Matemáticas
PHP Manual

octdec

(PHP 4, PHP 5)

octdec — Octal para decimal

Descrição

number octdec ( string $octal_string )

Retorna o decimal equivalente do número octal representado pelo argumento octal_string.

Parâmetros

octal_string

A string octal a ser convertida

Valor Retornado

A representação decimal de octal_string

Histórico

Versão | Descrição
Since 4.1.0 | A função pode agora converter números que são maiores que o tipo integer da plataforma, valores maiores são retornados como float neste caso.

Exemplos

Exemplo #1 Exemplo da octdec()

<?php
echo octdec('77') . "\n";
echo octdec(decoct(45));
?>

O exemplo acima irá imprimir:

63
45

Veja Também

  • decoct() - Decimal para octal
  • bindec() - Binário para decimal
  • hexdec() - Hexadecimal para decimal
  • base_convert() - Converte um número entre bases arbitrárias

mt_srand
pi
Funções Matemáticas


Obtém o valor de pi

octdec
pow
Funções Matemáticas
PHP Manual

pi

(PHP 4, PHP 5)

pi — Obtém o valor de pi

Descrição

float pi ( void )

Retorna uma aproximação de pi. O retornado float tem uma precisão baseado na diretiva precision no php.ini, onde o padrão é 14. Também, você pode usar a constante M_PI que tem resultado idêntico a pi().

Valor Retornado

O valor de pi como float.

Exemplos

Exemplo #1 Exemplo da pi()

<?php
echo pi(); // 3.1415926535898
echo M_PI; // 3.1415926535898
?>

octdec
pow
Funções Matemáticas


Potência

pi
rad2deg
Funções Matemáticas
PHP Manual

pow

(PHP 4, PHP 5)

pow — Potência

Descrição

number pow ( number $base , number $exp )

Retorna a base elevada ao expoente exp.

Aviso

No PHP 4.0.6 e anteriores pow() sempre retorna um float, e não emitia avisos.

Parâmetros

base

A base para usar

exp

O expoente

Valor Retornado

base raiz para potência de exp. Se o resultado pode ser representado como inteiro, será retornado como tipo integer, senão retornará como tipo float. Se a potência não pode ser computado, FALSE será retornado.

Histórico

Versão | Descrição
Since 4.0.6 | A função irá agora retornará resultados integer se possível, antes disto sempre retornava um resultado float. Para antigas versões, você pode receber um resultado falso para números complexos.
Since 4.2.0 | PHP parou de emitir um aviso se o valor não pode ser computado, irá agora silenciosamento somente retornar FALSE.

Exemplos

Exemplo #1 Alguns exemplos de pow()

<?php

var_dump( pow(2,8) ); // int(256)
echo pow(-1,20); // 1
echo pow(0, 0); // 1

echo pow(-1, 5.5); // PHP >4.0.6  NAN
echo pow(-1, 5.5); // PHP <=4.0.6 1.#IND
?>

Veja Também

  • exp() - Calcula o expoente de e
  • sqrt() - Raiz quadrada
  • bcpow() - Elevar um número de precisão arbitrária a outro
  • gmp_pow() - Potenciação

pi
rad2deg
Funções Matemáticas


Converte o número em radianos para o equivalente em graus

pow
rand
Funções Matemáticas
PHP Manual

rad2deg

(PHP 4, PHP 5)

rad2deg — Converte o número em radianos para o equivalente em graus

Descrição

float rad2deg ( float $number )

Esta função converte number de radianos para graus.

Parâmetros

number

Um valor radiano

Valor Retornado

O equivalente de number em graus

Exemplos

Exemplo #1 Exemplo da rad2deg()

<?php

echo rad2deg(M_PI_4); // 45

?>

Veja Também

  • deg2rad() - Converte o número em graus ao equivalente em radianos

pow
rand
Funções Matemáticas


Gera um inteiro aleatório

rad2deg
round
Funções Matemáticas
PHP Manual

rand

(PHP 4, PHP 5)

rand — Gera um inteiro aleatório

Descrição

int rand ( void )
int rand ( int $min , int $max )

Se chamado sem os parâmetros opcionais min e max, rand() retornará um pseudo inteiro randômico entre 0 e getrandmax(). Se você precisa de um número aleatório entre 5 e 15 (inclusive), por exemplo, utilize rand (5, 15).

Nota: Em algumas plataformas (como o Windows) getrandmax() é somente 32768. Se você precisa de um número maior que 32768, especificando min e max permitirá você criar um intervalo maior que isso, ou então utilizar mt_rand() ao invés.

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Parâmetros

min

O menor valor para retorna (padrão: 0)

max

O maior valor para retornar (padrão: getrandmax())

Valor Retornado

Um pseudo valor aleatório entre min (ou 0) e max (ou getrandmax(), inclusive).

Histórico

Versão | Descrição
Desde o 3.0.7 | Em versões anteriores a 3.0.7, o significado do parâmetro max era range. Assim, para obter os mesmos resultados do exemplo acima, você precisaria utilizar rand (5, 11) para obter um número aleatório entre 5 e 15.

Exemplos

Exemplo #1 Exemplo da rand()

<?php
echo rand() . "\n";
echo rand() . "\n";

echo rand(5, 15);
?>

O exemplo acima irá imprimir algo similar a:

7771
22264
11

Veja Também

  • srand() - Semeia o gerador de números aletórios
  • getrandmax() - Retorna o maior valor aletório possível
  • mt_rand() - Gerador melhorado de números aleatórios

rad2deg
round
Funções Matemáticas


Arredonda um número

rand
sin
Funções Matemáticas
PHP Manual

round

(PHP 4, PHP 5)

round — Arredonda um número

Descrição

float round ( float $val [, int $precision ] )

Retornar um valor arredondado de val em precision casas decimais. precision pode ser negativo ou zero (padrão).

Nota: o PHP não manipula strings como "12,300.2" corretamente por padrão. Veja convertendo de strings.

Nota: O parâmetro precision foi acrescentado no PHP 4.

Parâmetros

val

O valor para arredondar

precision

O número opcional de dígitos decimais para arredondar, o padrão é 0

Valor Retornado

O valor arredondado

Exemplos

Exemplo #1 Exemplos da round()

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.05
echo round(5.055, 2);    // 5.06
?>

Veja Também

  • ceil() - Arredonda frações para cima
  • floor() - Arredonda frações para baixo
  • number_format() - Formata um número com os milhares agrupados

rand
sin
Funções Matemáticas


Seno

round
sinh
Funções Matemáticas
PHP Manual

sin

(PHP 4, PHP 5)

sin — Seno

Descrição

float sin ( float $arg )

sin() retorna o seno do parâmetro arg. O argumento arg deve estar em radianos.

Parâmetros

arg

O valor em radianos

Valor Retornado

O seno do arg

Exemplos

Exemplo #1 Exemplo da sin()

<?php

// Precisão depende da diretiva precision
echo sin(deg2rad(60));  //  0.866025403 ...
echo sin(60);           // -0.304810621 ...

?>

Veja Também

  • asin() - Seno Inverso (arco seno)
  • sinh() - Seno hiperbólico
  • cos() - Coseno
  • tan() - Tangente
  • deg2rad() - Converte o número em graus ao equivalente em radianos

round
sinh
Funções Matemáticas


Seno hiperbólico

sin
sqrt
Funções Matemáticas
PHP Manual

sinh

(PHP 4 >= 4.1.0, PHP 5)

sinh — Seno hiperbólico

Descrição

float sinh ( float $arg )

Retorna o seno hiperbólico de arg, definido como (exp(arg) - exp(-arg))/2.

Parâmetros

arg

O argumento para processar

Valor Retornado

O seno hiperbólico de arg

Veja Também

  • sin() - Seno
  • asinh() - Seno Hiperbólico Inverso
  • cosh() - Cosseno hiperbólico
  • tanh() - Tangente hiperbólica

sin
sqrt
Funções Matemáticas


Raiz quadrada

sinh
srand
Funções Matemáticas
PHP Manual

sqrt

(PHP 4, PHP 5)

sqrt — Raiz quadrada

Descrição

float sqrt ( float $arg )

Retorna a raiz quadrada de arg.

Parâmetros

arg

O argumento para processar

Valor Retornado

A raiz quadrada de arg ou o valor especial NAN para números negativos.

Exemplos

Exemplo #1 Exemplo da sqrt()

<?php
// Precisão depende de sua diretiva precision
echo sqrt(9); // 3
echo sqrt(10); // 3.16227766 ...
?>

Veja Também

  • pow() - Potência

sinh
srand
Funções Matemáticas


Semeia o gerador de números aletórios

sqrt
tan
Funções Matemáticas
PHP Manual

srand

(PHP 4, PHP 5)

srand — Semeia o gerador de números aletórios

Descrição

void srand ([ int $seed ] )

Semeia o gerador de números aleatórios com seed ou com um valor aleatório se seed não é dado.

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Parâmetros

seed

Valor seed opcional

Histórico

Versão | Descrição
Since 4.2.0 | O seed tornou-se opcional e o padrão é um valor aleatório se omitido.

Exemplos

Exemplo #1 Exemplo da srand()

<?php
// semeira com microsegundos
function make_seed() {
    list($usec, $sec) = explode(' ', microtime());
    return (float) $sec + ((float) $usec * 100000);
}
srand(make_seed());
$randval = rand();
?>

Veja Também

  • rand() - Gera um inteiro aleatório
  • getrandmax() - Retorna o maior valor aletório possível
  • mt_srand() - Semeia o gerador melhorado de números aleatórios

sqrt
tan
Funções Matemáticas


Tangente

srand
tanh
Funções Matemáticas
PHP Manual

tan

(PHP 4, PHP 5)

tan — Tangente

Descrição

float tan ( float $arg )

tan() retorna a tangente do parâmetro arg. O argumento arg deve estar em radianos.

Parâmetros

arg

O argumento para processar em radianos

Valor Retornado

A tangente de arg

Exemplos

Exemplo #1 Exemplo da tan()

<?php

echo tan(M_PI_4); // 1

?>

Veja Também

  • atan() - Tangente Inversa (arco tangente)
  • atan2() - Tangente inversa de duas variáveis
  • sin() - Seno
  • cos() - Coseno
  • tanh() - Tangente hiperbólica
  • deg2rad() - Converte o número em graus ao equivalente em radianos

srand
tanh
Funções Matemáticas


Tangente hiperbólica

tan
Statistics
Funções Matemáticas
PHP Manual

tanh

(PHP 4 >= 4.1.0, PHP 5)

tanh — Tangente hiperbólica

Descrição

float tanh ( float $arg )

Retorna a tangente hiperbólica de arg, definida como sinh(arg)/cosh(arg).

Parâmetros

arg

O argumento para processar

Valor Retornado

A tangente hiperbólica de arg

Veja Também

  • tan() - Tangente
  • atanh() - Tangente hiperbólica inversa
  • sinh() - Seno hiperbólico
  • cosh() - Cosseno hiperbólico

tan
Statistics
Funções Matemáticas


Statistics

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Statistic Funções
    • stats_absolute_deviation — Returns the absolute deviation of an array of values
    • stats_cdf_beta — CDF function for BETA Distribution. Calculates any one parameter of the beta distribution given values for the others.
    • stats_cdf_binomial — Calculates any one parameter of the binomial distribution given values for the others.
    • stats_cdf_cauchy — Not documented
    • stats_cdf_chisquare — Calculates any one parameter of the chi-square distribution given values for the others.
    • stats_cdf_exponential — Not documented
    • stats_cdf_f — Calculates any one parameter of the F distribution given values for the others.
    • stats_cdf_gamma — Calculates any one parameter of the gamma distribution given values for the others.
    • stats_cdf_laplace — Not documented
    • stats_cdf_logistic — Not documented
    • stats_cdf_negative_binomial — Calculates any one parameter of the negative binomial distribution given values for the others.
    • stats_cdf_noncentral_chisquare — Calculates any one parameter of the non-central chi-square distribution given values for the others.
    • stats_cdf_noncentral_f — Calculates any one parameter of the Non-central F distribution given values for the others.
    • stats_cdf_poisson — Calculates any one parameter of the Poisson distribution given values for the others.
    • stats_cdf_t — Calculates any one parameter of the T distribution given values for the others.
    • stats_cdf_uniform — Not documented
    • stats_cdf_weibull — Not documented
    • stats_covariance — Computes the covariance of two data sets
    • stats_den_uniform — Not documented
    • stats_dens_beta — Not documented
    • stats_dens_cauchy — Not documented
    • stats_dens_chisquare — Not documented
    • stats_dens_exponential — Not documented
    • stats_dens_f — Descrição
    • stats_dens_gamma — Not documented
    • stats_dens_laplace — Not documented
    • stats_dens_logistic — Not documented
    • stats_dens_negative_binomial — Not documented
    • stats_dens_normal — Not documented
    • stats_dens_pmf_binomial — Not documented
    • stats_dens_pmf_hypergeometric — Descrição
    • stats_dens_pmf_poisson — Not documented
    • stats_dens_t — Not documented
    • stats_dens_weibull — Not documented
    • stats_harmonic_mean — Returns the harmonic mean of an array of values
    • stats_kurtosis — Computes the kurtosis of the data in the array
    • stats_rand_gen_beta — Generates beta random deviate
    • stats_rand_gen_chisquare — Generates random deviate from the distribution of a chisquare with "df" degrees of freedom random variable.
    • stats_rand_gen_exponential — Generates a single random deviate from an exponential distribution with mean "av"
    • stats_rand_gen_f — Generates a random deviate
    • stats_rand_gen_funiform — Generates uniform float between low (exclusive) and high (exclusive)
    • stats_rand_gen_gamma — Generates random deviates from a gamma distribution
    • stats_rand_gen_ibinomial_negative — Generates a single random deviate from a negative binomial distribution. Arguments : n - the number of trials in the negative binomial distribution from which a random deviate is to be generated (n > 0), p - the probability of an event (0 < p < 1)).
    • stats_rand_gen_ibinomial — Generates a single random deviate from a binomial distribution whose number of trials is "n" (n >= 0) and whose probability of an event in each trial is "pp" ([0;1]). Method : algorithm BTPE
    • stats_rand_gen_int — Generates random integer between 1 and 2147483562
    • stats_rand_gen_ipoisson — Generates a single random deviate from a Poisson distribution with mean "mu" (mu >= 0.0).
    • stats_rand_gen_iuniform — Generates integer uniformly distributed between LOW (inclusive) and HIGH (inclusive)
    • stats_rand_gen_noncenral_chisquare — Generates random deviate from the distribution of a noncentral chisquare with "df" degrees of freedom and noncentrality parameter "xnonc". d must be >= 1.0, xnonc must >= 0.0
    • stats_rand_gen_noncentral_f — Generates a random deviate from the noncentral F (variance ratio) distribution with "dfn" degrees of freedom in the numerator, and "dfd" degrees of freedom in the denominator, and noncentrality parameter "xnonc". Method : directly generates ratio of noncentral numerator chisquare variate to central denominator chisquare variate.
    • stats_rand_gen_noncentral_t — Generates a single random deviate from a noncentral T distribution
    • stats_rand_gen_normal — Generates a single random deviate from a normal distribution with mean, av, and standard deviation, sd (sd >= 0). Method : Renames SNORM from TOMS as slightly modified by BWB to use RANF instead of SUNIF.
    • stats_rand_gen_t — Generates a single random deviate from a T distribution
    • stats_rand_get_seeds — Not documented
    • stats_rand_phrase_to_seeds — generate two seeds for the RGN random number generator
    • stats_rand_ranf — Returns a random floating point number from a uniform distribution over 0 - 1 (endpoints of this interval are not returned) using the current generator
    • stats_rand_setall — Not documented
    • stats_skew — Computes the skewness of the data in the array
    • stats_standard_deviation — Returns the standard deviation
    • stats_stat_binomial_coef — Not documented
    • stats_stat_correlation — Not documented
    • stats_stat_gennch — Not documented
    • stats_stat_independent_t — Not documented
    • stats_stat_innerproduct — Descrição
    • stats_stat_noncentral_t — Calculates any one parameter of the noncentral t distribution give values for the others.
    • stats_stat_paired_t — Not documented
    • stats_stat_percentile — Not documented
    • stats_stat_powersum — Not documented
    • stats_variance — Returns the population variance
tanh
Introdução
Extensões Matemáticas


Introdução

This is the statistics extension. It contains few dozens of functions useful for statistical computations. It is a wrapper around 2 scientific libraries, namely DCDFLIB (Library of C routines for Cumulative Distributions Functions, Inverses, and Other parameters) by B. Brown & J. Lavato and RANDLIB by Barry Brown, James Lavato & Kathy Russell. Includes CD and PD functions.

Statistics
Instalação/Configuração
Statistics


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Statistics


Dependências

No external libraries are needed. The extension comes bundled with the libraries used.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/stats.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Statistic Funções
Statistics


Statistic Funções

Índice

  • stats_absolute_deviation — Returns the absolute deviation of an array of values
  • stats_cdf_beta — CDF function for BETA Distribution. Calculates any one parameter of the beta distribution given values for the others.
  • stats_cdf_binomial — Calculates any one parameter of the binomial distribution given values for the others.
  • stats_cdf_cauchy — Not documented
  • stats_cdf_chisquare — Calculates any one parameter of the chi-square distribution given values for the others.
  • stats_cdf_exponential — Not documented
  • stats_cdf_f — Calculates any one parameter of the F distribution given values for the others.
  • stats_cdf_gamma — Calculates any one parameter of the gamma distribution given values for the others.
  • stats_cdf_laplace — Not documented
  • stats_cdf_logistic — Not documented
  • stats_cdf_negative_binomial — Calculates any one parameter of the negative binomial distribution given values for the others.
  • stats_cdf_noncentral_chisquare — Calculates any one parameter of the non-central chi-square distribution given values for the others.
  • stats_cdf_noncentral_f — Calculates any one parameter of the Non-central F distribution given values for the others.
  • stats_cdf_poisson — Calculates any one parameter of the Poisson distribution given values for the others.
  • stats_cdf_t — Calculates any one parameter of the T distribution given values for the others.
  • stats_cdf_uniform — Not documented
  • stats_cdf_weibull — Not documented
  • stats_covariance — Computes the covariance of two data sets
  • stats_den_uniform — Not documented
  • stats_dens_beta — Not documented
  • stats_dens_cauchy — Not documented
  • stats_dens_chisquare — Not documented
  • stats_dens_exponential — Not documented
  • stats_dens_f — Descrição
  • stats_dens_gamma — Not documented
  • stats_dens_laplace — Not documented
  • stats_dens_logistic — Not documented
  • stats_dens_negative_binomial — Not documented
  • stats_dens_normal — Not documented
  • stats_dens_pmf_binomial — Not documented
  • stats_dens_pmf_hypergeometric — Descrição
  • stats_dens_pmf_poisson — Not documented
  • stats_dens_t — Not documented
  • stats_dens_weibull — Not documented
  • stats_harmonic_mean — Returns the harmonic mean of an array of values
  • stats_kurtosis — Computes the kurtosis of the data in the array
  • stats_rand_gen_beta — Generates beta random deviate
  • stats_rand_gen_chisquare — Generates random deviate from the distribution of a chisquare with "df" degrees of freedom random variable.
  • stats_rand_gen_exponential — Generates a single random deviate from an exponential distribution with mean "av"
  • stats_rand_gen_f — Generates a random deviate
  • stats_rand_gen_funiform — Generates uniform float between low (exclusive) and high (exclusive)
  • stats_rand_gen_gamma — Generates random deviates from a gamma distribution
  • stats_rand_gen_ibinomial_negative — Generates a single random deviate from a negative binomial distribution. Arguments : n - the number of trials in the negative binomial distribution from which a random deviate is to be generated (n > 0), p - the probability of an event (0 < p < 1)).
  • stats_rand_gen_ibinomial — Generates a single random deviate from a binomial distribution whose number of trials is "n" (n >= 0) and whose probability of an event in each trial is "pp" ([0;1]). Method : algorithm BTPE
  • stats_rand_gen_int — Generates random integer between 1 and 2147483562
  • stats_rand_gen_ipoisson — Generates a single random deviate from a Poisson distribution with mean "mu" (mu >= 0.0).
  • stats_rand_gen_iuniform — Generates integer uniformly distributed between LOW (inclusive) and HIGH (inclusive)
  • stats_rand_gen_noncenral_chisquare — Generates random deviate from the distribution of a noncentral chisquare with "df" degrees of freedom and noncentrality parameter "xnonc". d must be >= 1.0, xnonc must >= 0.0
  • stats_rand_gen_noncentral_f — Generates a random deviate from the noncentral F (variance ratio) distribution with "dfn" degrees of freedom in the numerator, and "dfd" degrees of freedom in the denominator, and noncentrality parameter "xnonc". Method : directly generates ratio of noncentral numerator chisquare variate to central denominator chisquare variate.
  • stats_rand_gen_noncentral_t — Generates a single random deviate from a noncentral T distribution
  • stats_rand_gen_normal — Generates a single random deviate from a normal distribution with mean, av, and standard deviation, sd (sd >= 0). Method : Renames SNORM from TOMS as slightly modified by BWB to use RANF instead of SUNIF.
  • stats_rand_gen_t — Generates a single random deviate from a T distribution
  • stats_rand_get_seeds — Not documented
  • stats_rand_phrase_to_seeds — generate two seeds for the RGN random number generator
  • stats_rand_ranf — Returns a random floating point number from a uniform distribution over 0 - 1 (endpoints of this interval are not returned) using the current generator
  • stats_rand_setall — Not documented
  • stats_skew — Computes the skewness of the data in the array
  • stats_standard_deviation — Returns the standard deviation
  • stats_stat_binomial_coef — Not documented
  • stats_stat_correlation — Not documented
  • stats_stat_gennch — Not documented
  • stats_stat_independent_t — Not documented
  • stats_stat_innerproduct — Descrição
  • stats_stat_noncentral_t — Calculates any one parameter of the noncentral t distribution give values for the others.
  • stats_stat_paired_t — Not documented
  • stats_stat_percentile — Not documented
  • stats_stat_powersum — Not documented
  • stats_variance — Returns the population variance
Constantes pré-definidas
stats_absolute_deviation
Statistics


Returns the absolute deviation of an array of values

Statistic Funções
stats_cdf_beta
Statistic Funções
PHP Manual

stats_absolute_deviation

(PECL stats >= 1.0.0)

stats_absolute_deviation — Returns the absolute deviation of an array of values

Descrição

float stats_absolute_deviation ( array $a )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

Valor Retornado

Statistic Funções
stats_cdf_beta
Statistic Funções


CDF function for BETA Distribution. Calculates any one parameter of the beta distribution given values for the others.

stats_absolute_deviation
stats_cdf_binomial
Statistic Funções
PHP Manual

stats_cdf_beta

(PECL stats >= 1.0.0)

stats_cdf_beta — CDF function for BETA Distribution. Calculates any one parameter of the beta distribution given values for the others.

Descrição

float stats_cdf_beta ( float $par1 , float $par2 , float $par3 , int $which )

Method Cumulative distribution function (P) is calculated directly by code associated with the following reference. DiDinato, A. R. and Morris, A. H. Algorithm 708: Significant Digit Computation of the Incomplete Beta Function Ratios. ACM Trans. Math. Softw. 18 (1993), 360-373. Computation of other parameters involve a search for a value that produces the desired value of P. The search relies on the monotonicity of P with the other parameter. Note The beta density is proportional to t^(A-1) * (1-t)^(B-1) Arguments P -- The integral from 0 to X of the chi-square distribution. Input range: [0, 1]. Q -- 1-P. Input range: [0, 1]. P + Q = 1.0. X -- Upper limit of integration of beta density. Input range: [0,1]. Search range: [0,1] Y -- 1-X. Input range: [0,1]. Search range: [0,1] X + Y = 1.0. A -- The first parameter of the beta density. Input range: (0, +infinity). Search range: [1D-100,1D100] B -- The second parameter of the beta density. Input range: (0, +infinity). Search range: [1D-100,1D100] STATUS -- 0 if calculation completed correctly -I if input parameter number I is out of range 1 if answer appears to be lower than lowest search bound 2 if answer appears to be higher than greatest search bound 3 if P + Q .ne. 1 4 if X + Y .ne. 1 BOUND -- Undefined if STATUS is 0 Bound exceeded by parameter number I if STATUS is negative. Lower search bound if STATUS is 1. Upper search bound if STATUS is 2.

Parâmetros

par1

par2

par3

which

Integer indicating which of the next four argument values is to be calculated from the others. Legal range: 1..4 which = 1 : Calculate P and Q from X,Y,A and B which = 2 : Calculate X and Y from P,Q,A and B which = 3 : Calculate A from P,Q,X,Y and B which = 4 : Calculate B from P,Q,X,Y and A

Valor Retornado

STATUS -- 0 if calculation completed correctly -I if input parameter number I is out of range 1 if answer appears to be lower than lowest search bound 2 if answer appears to be higher than greatest search bound 3 if P + Q .ne. 1 4 if X + Y .ne. 1

stats_absolute_deviation
stats_cdf_binomial
Statistic Funções


Calculates any one parameter of the binomial distribution given values for the others.

stats_cdf_beta
stats_cdf_cauchy
Statistic Funções
PHP Manual

stats_cdf_binomial

(PECL stats >= 1.0.0)

stats_cdf_binomial — Calculates any one parameter of the binomial distribution given values for the others.

Descrição

float stats_cdf_binomial ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_beta
stats_cdf_cauchy
Statistic Funções


Not documented

stats_cdf_binomial
stats_cdf_chisquare
Statistic Funções
PHP Manual

stats_cdf_cauchy

(PECL stats >= 1.0.0)

stats_cdf_cauchy — Not documented

Descrição

float stats_cdf_cauchy ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_binomial
stats_cdf_chisquare
Statistic Funções


Calculates any one parameter of the chi-square distribution given values for the others.

stats_cdf_cauchy
stats_cdf_exponential
Statistic Funções
PHP Manual

stats_cdf_chisquare

(PECL stats >= 1.0.0)

stats_cdf_chisquare — Calculates any one parameter of the chi-square distribution given values for the others.

Descrição

float stats_cdf_chisquare ( float $par1 , float $par2 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

which

Valor Retornado

stats_cdf_cauchy
stats_cdf_exponential
Statistic Funções


Not documented

stats_cdf_chisquare
stats_cdf_f
Statistic Funções
PHP Manual

stats_cdf_exponential

(PECL stats >= 1.0.0)

stats_cdf_exponential — Not documented

Descrição

float stats_cdf_exponential ( float $par1 , float $par2 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

which

Valor Retornado

stats_cdf_chisquare
stats_cdf_f
Statistic Funções


Calculates any one parameter of the F distribution given values for the others.

stats_cdf_exponential
stats_cdf_gamma
Statistic Funções
PHP Manual

stats_cdf_f

(PECL stats >= 1.0.0)

stats_cdf_f — Calculates any one parameter of the F distribution given values for the others.

Descrição

float stats_cdf_f ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_exponential
stats_cdf_gamma
Statistic Funções


Calculates any one parameter of the gamma distribution given values for the others.

stats_cdf_f
stats_cdf_laplace
Statistic Funções
PHP Manual

stats_cdf_gamma

(PECL stats >= 1.0.0)

stats_cdf_gamma — Calculates any one parameter of the gamma distribution given values for the others.

Descrição

float stats_cdf_gamma ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_f
stats_cdf_laplace
Statistic Funções


Not documented

stats_cdf_gamma
stats_cdf_logistic
Statistic Funções
PHP Manual

stats_cdf_laplace

(PECL stats >= 1.0.0)

stats_cdf_laplace — Not documented

Descrição

float stats_cdf_laplace ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_gamma
stats_cdf_logistic
Statistic Funções


Not documented

stats_cdf_laplace
stats_cdf_negative_binomial
Statistic Funções
PHP Manual

stats_cdf_logistic

(PECL stats >= 1.0.0)

stats_cdf_logistic — Not documented

Descrição

float stats_cdf_logistic ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_laplace
stats_cdf_negative_binomial
Statistic Funções


Calculates any one parameter of the negative binomial distribution given values for the others.

stats_cdf_logistic
stats_cdf_noncentral_chisquare
Statistic Funções
PHP Manual

stats_cdf_negative_binomial

(PECL stats >= 1.0.0)

stats_cdf_negative_binomial — Calculates any one parameter of the negative binomial distribution given values for the others.

Descrição

float stats_cdf_negative_binomial ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_logistic
stats_cdf_noncentral_chisquare
Statistic Funções


Calculates any one parameter of the non-central chi-square distribution given values for the others.

stats_cdf_negative_binomial
stats_cdf_noncentral_f
Statistic Funções
PHP Manual

stats_cdf_noncentral_chisquare

(PECL stats >= 1.0.0)

stats_cdf_noncentral_chisquare — Calculates any one parameter of the non-central chi-square distribution given values for the others.

Descrição

float stats_cdf_noncentral_chisquare ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_negative_binomial
stats_cdf_noncentral_f
Statistic Funções


Calculates any one parameter of the Non-central F distribution given values for the others.

stats_cdf_noncentral_chisquare
stats_cdf_poisson
Statistic Funções
PHP Manual

stats_cdf_noncentral_f

(PECL stats >= 1.0.0)

stats_cdf_noncentral_f — Calculates any one parameter of the Non-central F distribution given values for the others.

Descrição

float stats_cdf_noncentral_f ( float $par1 , float $par2 , float $par3 , float $par4 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

par4

which

Valor Retornado

stats_cdf_noncentral_chisquare
stats_cdf_poisson
Statistic Funções


Calculates any one parameter of the Poisson distribution given values for the others.

stats_cdf_noncentral_f
stats_cdf_t
Statistic Funções
PHP Manual

stats_cdf_poisson

(PECL stats >= 1.0.0)

stats_cdf_poisson — Calculates any one parameter of the Poisson distribution given values for the others.

Descrição

float stats_cdf_poisson ( float $par1 , float $par2 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

which

Valor Retornado

stats_cdf_noncentral_f
stats_cdf_t
Statistic Funções


Calculates any one parameter of the T distribution given values for the others.

stats_cdf_poisson
stats_cdf_uniform
Statistic Funções
PHP Manual

stats_cdf_t

(PECL stats >= 1.0.0)

stats_cdf_t — Calculates any one parameter of the T distribution given values for the others.

Descrição

float stats_cdf_t ( float $par1 , float $par2 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

which

Valor Retornado

stats_cdf_poisson
stats_cdf_uniform
Statistic Funções


Not documented

stats_cdf_t
stats_cdf_weibull
Statistic Funções
PHP Manual

stats_cdf_uniform

(PECL stats >= 1.0.0)

stats_cdf_uniform — Not documented

Descrição

float stats_cdf_uniform ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_t
stats_cdf_weibull
Statistic Funções


Not documented

stats_cdf_uniform
stats_covariance
Statistic Funções
PHP Manual

stats_cdf_weibull

(PECL stats >= 1.0.0)

stats_cdf_weibull — Not documented

Descrição

float stats_cdf_weibull ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_cdf_uniform
stats_covariance
Statistic Funções


Computes the covariance of two data sets

stats_cdf_weibull
stats_den_uniform
Statistic Funções
PHP Manual

stats_covariance

(PECL stats >= 1.0.0)

stats_covariance — Computes the covariance of two data sets

Descrição

float stats_covariance ( array $a , array $b )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

b

Valor Retornado

stats_cdf_weibull
stats_den_uniform
Statistic Funções


Not documented

stats_covariance
stats_dens_beta
Statistic Funções
PHP Manual

stats_den_uniform

(PECL stats >= 1.0.0)

stats_den_uniform — Not documented

Descrição

float stats_den_uniform ( float $x , float $a , float $b )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

a

b

Valor Retornado

stats_covariance
stats_dens_beta
Statistic Funções


Not documented

stats_den_uniform
stats_dens_cauchy
Statistic Funções
PHP Manual

stats_dens_beta

(PECL stats >= 1.0.0)

stats_dens_beta — Not documented

Descrição

float stats_dens_beta ( float $x , float $a , float $b )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

a

b

Valor Retornado

stats_den_uniform
stats_dens_cauchy
Statistic Funções


Not documented

stats_dens_beta
stats_dens_chisquare
Statistic Funções
PHP Manual

stats_dens_cauchy

(PECL stats >= 1.0.0)

stats_dens_cauchy — Not documented

Descrição

float stats_dens_cauchy ( float $x , float $ave , float $stdev )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

ave

stdev

Valor Retornado

stats_dens_beta
stats_dens_chisquare
Statistic Funções


Not documented

stats_dens_cauchy
stats_dens_exponential
Statistic Funções
PHP Manual

stats_dens_chisquare

(PECL stats >= 1.0.0)

stats_dens_chisquare — Not documented

Descrição

float stats_dens_chisquare ( float $x , float $dfr )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

dfr

Valor Retornado

stats_dens_cauchy
stats_dens_exponential
Statistic Funções


Not documented

stats_dens_chisquare
stats_dens_f
Statistic Funções
PHP Manual

stats_dens_exponential

(PECL stats >= 1.0.0)

stats_dens_exponential — Not documented

Descrição

float stats_dens_exponential ( float $x , float $scale )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

scale

Valor Retornado

stats_dens_chisquare
stats_dens_f
Statistic Funções


stats_dens_exponential
stats_dens_gamma
Statistic Funções
PHP Manual

stats_dens_f

(PECL stats >= 1.0.0)

stats_dens_f —

Descrição

float stats_dens_f ( float $x , float $dfr1 , float $dfr2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

dfr1

dfr2

Valor Retornado

stats_dens_exponential
stats_dens_gamma
Statistic Funções


Not documented

stats_dens_f
stats_dens_laplace
Statistic Funções
PHP Manual

stats_dens_gamma

(PECL stats >= 1.0.0)

stats_dens_gamma — Not documented

Descrição

float stats_dens_gamma ( float $x , float $shape , float $scale )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

shape

scale

Valor Retornado

stats_dens_f
stats_dens_laplace
Statistic Funções


Not documented

stats_dens_gamma
stats_dens_logistic
Statistic Funções
PHP Manual

stats_dens_laplace

(PECL stats >= 1.0.0)

stats_dens_laplace — Not documented

Descrição

float stats_dens_laplace ( float $x , float $ave , float $stdev )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

ave

stdev

Valor Retornado

stats_dens_gamma
stats_dens_logistic
Statistic Funções


Not documented

stats_dens_laplace
stats_dens_negative_binomial
Statistic Funções
PHP Manual

stats_dens_logistic

(PECL stats >= 1.0.0)

stats_dens_logistic — Not documented

Descrição

float stats_dens_logistic ( float $x , float $ave , float $stdev )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

ave

stdev

Valor Retornado

stats_dens_laplace
stats_dens_negative_binomial
Statistic Funções


Not documented

stats_dens_logistic
stats_dens_normal
Statistic Funções
PHP Manual

stats_dens_negative_binomial

(PECL stats >= 1.0.0)

stats_dens_negative_binomial — Not documented

Descrição

float stats_dens_negative_binomial ( float $x , float $n , float $pi )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

n

pi

Valor Retornado

stats_dens_logistic
stats_dens_normal
Statistic Funções


Not documented

stats_dens_negative_binomial
stats_dens_pmf_binomial
Statistic Funções
PHP Manual

stats_dens_normal

(PECL stats >= 1.0.0)

stats_dens_normal — Not documented

Descrição

float stats_dens_normal ( float $x , float $ave , float $stdev )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

ave

stdev

Valor Retornado

stats_dens_negative_binomial
stats_dens_pmf_binomial
Statistic Funções


Not documented

stats_dens_normal
stats_dens_pmf_hypergeometric
Statistic Funções
PHP Manual

stats_dens_pmf_binomial

(PECL stats >= 1.0.0)

stats_dens_pmf_binomial — Not documented

Descrição

float stats_dens_pmf_binomial ( float $x , float $n , float $pi )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

n

pi

Valor Retornado

stats_dens_normal
stats_dens_pmf_hypergeometric
Statistic Funções


stats_dens_pmf_binomial
stats_dens_pmf_poisson
Statistic Funções
PHP Manual

stats_dens_pmf_hypergeometric

(PECL stats >= 1.0.0)

stats_dens_pmf_hypergeometric —

Descrição

float stats_dens_pmf_hypergeometric ( float $n1 , float $n2 , float $N1 , float $N2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

n1

n2

N1

N2

Valor Retornado

stats_dens_pmf_binomial
stats_dens_pmf_poisson
Statistic Funções


Not documented

stats_dens_pmf_hypergeometric
stats_dens_t
Statistic Funções
PHP Manual

stats_dens_pmf_poisson

(PECL stats >= 1.0.0)

stats_dens_pmf_poisson — Not documented

Descrição

float stats_dens_pmf_poisson ( float $x , float $lb )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

lb

Valor Retornado

stats_dens_pmf_hypergeometric
stats_dens_t
Statistic Funções


Not documented

stats_dens_pmf_poisson
stats_dens_weibull
Statistic Funções
PHP Manual

stats_dens_t

(PECL stats >= 1.0.0)

stats_dens_t — Not documented

Descrição

float stats_dens_t ( float $x , float $dfr )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

dfr

Valor Retornado

stats_dens_pmf_poisson
stats_dens_weibull
Statistic Funções


Not documented

stats_dens_t
stats_harmonic_mean
Statistic Funções
PHP Manual

stats_dens_weibull

(PECL stats >= 1.0.0)

stats_dens_weibull — Not documented

Descrição

float stats_dens_weibull ( float $x , float $a , float $b )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

a

b

Valor Retornado

stats_dens_t
stats_harmonic_mean
Statistic Funções


Returns the harmonic mean of an array of values

stats_dens_weibull
stats_kurtosis
Statistic Funções
PHP Manual

stats_harmonic_mean

(PECL stats >= 1.0.0)

stats_harmonic_mean — Returns the harmonic mean of an array of values

Descrição

number stats_harmonic_mean ( array $a )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

Valor Retornado

stats_dens_weibull
stats_kurtosis
Statistic Funções


Computes the kurtosis of the data in the array

stats_harmonic_mean
stats_rand_gen_beta
Statistic Funções
PHP Manual

stats_kurtosis

(PECL stats >= 1.0.0)

stats_kurtosis — Computes the kurtosis of the data in the array

Descrição

float stats_kurtosis ( array $a )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

Valor Retornado

stats_harmonic_mean
stats_rand_gen_beta
Statistic Funções


Generates beta random deviate

stats_kurtosis
stats_rand_gen_chisquare
Statistic Funções
PHP Manual

stats_rand_gen_beta

(PECL stats >= 1.0.0)

stats_rand_gen_beta — Generates beta random deviate

Descrição

float stats_rand_gen_beta ( float $a , float $b )

Returns a random deviate from the beta distribution with parameters A and B. The density of the beta is x^(a-1) * (1-x)^(b-1) / B(a,b) for 0 < x <. Method R. C. H. Cheng.

Parâmetros

a

b

Valor Retornado

stats_kurtosis
stats_rand_gen_chisquare
Statistic Funções


Generates random deviate from the distribution of a chisquare with "df" degrees of freedom random variable.

stats_rand_gen_beta
stats_rand_gen_exponential
Statistic Funções
PHP Manual

stats_rand_gen_chisquare

(PECL stats >= 1.0.0)

stats_rand_gen_chisquare — Generates random deviate from the distribution of a chisquare with "df" degrees of freedom random variable.

Descrição

float stats_rand_gen_chisquare ( float $df )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

df

Valor Retornado

stats_rand_gen_beta
stats_rand_gen_exponential
Statistic Funções


Generates a single random deviate from an exponential distribution with mean "av"

stats_rand_gen_chisquare
stats_rand_gen_f
Statistic Funções
PHP Manual

stats_rand_gen_exponential

(PECL stats >= 1.0.0)

stats_rand_gen_exponential — Generates a single random deviate from an exponential distribution with mean "av"

Descrição

float stats_rand_gen_exponential ( float $av )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

av

Valor Retornado

stats_rand_gen_chisquare
stats_rand_gen_f
Statistic Funções


Generates a random deviate

stats_rand_gen_exponential
stats_rand_gen_funiform
Statistic Funções
PHP Manual

stats_rand_gen_f

(PECL stats >= 1.0.0)

stats_rand_gen_f — Generates a random deviate

Descrição

float stats_rand_gen_f ( float $dfn , float $dfd )

Generates a random deviate from the F (variance ratio) distribution with "dfn" degrees of freedom in the numerator and "dfd" degrees of freedom in the denominator. Method : directly generates ratio of chisquare variates.

Parâmetros

dfn

dfd

Valor Retornado

stats_rand_gen_exponential
stats_rand_gen_funiform
Statistic Funções


Generates uniform float between low (exclusive) and high (exclusive)

stats_rand_gen_f
stats_rand_gen_gamma
Statistic Funções
PHP Manual

stats_rand_gen_funiform

(PECL stats >= 1.0.0)

stats_rand_gen_funiform — Generates uniform float between low (exclusive) and high (exclusive)

Descrição

float stats_rand_gen_funiform ( float $low , float $high )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

low

high

Valor Retornado

stats_rand_gen_f
stats_rand_gen_gamma
Statistic Funções


Generates random deviates from a gamma distribution

stats_rand_gen_funiform
stats_rand_gen_ibinomial_negative
Statistic Funções
PHP Manual

stats_rand_gen_gamma

(PECL stats >= 1.0.0)

stats_rand_gen_gamma — Generates random deviates from a gamma distribution

Descrição

float stats_rand_gen_gamma ( float $a , float $r )

Generates random deviates from the gamma distribution whose density is (A**R)/Gamma(R) * X**(R-1) * Exp(-A*X).

Parâmetros

a

location parameter of Gamma distribution (a > 0).

r

shape parameter of Gamma distribution (r > 0).

Valor Retornado

stats_rand_gen_funiform
stats_rand_gen_ibinomial_negative
Statistic Funções


Generates a single random deviate from a negative binomial distribution. Arguments : n - the number of trials in the negative binomial distribution from which a random deviate is to be generated (n > 0), p - the probability of an event (0 < p < 1)).

stats_rand_gen_gamma
stats_rand_gen_ibinomial
Statistic Funções
PHP Manual

stats_rand_gen_ibinomial_negative

(PECL stats >= 1.0.0)

stats_rand_gen_ibinomial_negative — Generates a single random deviate from a negative binomial distribution. Arguments : n - the number of trials in the negative binomial distribution from which a random deviate is to be generated (n > 0), p - the probability of an event (0 < p < 1)).

Descrição

int stats_rand_gen_ibinomial_negative ( int $n , float $p )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

n

p

Valor Retornado

stats_rand_gen_gamma
stats_rand_gen_ibinomial
Statistic Funções


Generates a single random deviate from a binomial distribution whose number of trials is "n" (n >= 0) and whose probability of an event in each trial is "pp" ([0;1]). Method : algorithm BTPE

stats_rand_gen_ibinomial_negative
stats_rand_gen_int
Statistic Funções
PHP Manual

stats_rand_gen_ibinomial

(PECL stats >= 1.0.0)

stats_rand_gen_ibinomial — Generates a single random deviate from a binomial distribution whose number of trials is "n" (n >= 0) and whose probability of an event in each trial is "pp" ([0;1]). Method : algorithm BTPE

Descrição

int stats_rand_gen_ibinomial ( int $n , float $pp )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

n

pp

Valor Retornado

stats_rand_gen_ibinomial_negative
stats_rand_gen_int
Statistic Funções


Generates random integer between 1 and 2147483562

stats_rand_gen_ibinomial
stats_rand_gen_ipoisson
Statistic Funções
PHP Manual

stats_rand_gen_int

(PECL stats >= 1.0.0)

stats_rand_gen_int — Generates random integer between 1 and 2147483562

Descrição

int stats_rand_gen_int ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

stats_rand_gen_ibinomial
stats_rand_gen_ipoisson
Statistic Funções


Generates a single random deviate from a Poisson distribution with mean "mu" (mu >= 0.0).

stats_rand_gen_int
stats_rand_gen_iuniform
Statistic Funções
PHP Manual

stats_rand_gen_ipoisson

(PECL stats >= 1.0.0)

stats_rand_gen_ipoisson — Generates a single random deviate from a Poisson distribution with mean "mu" (mu >= 0.0).

Descrição

int stats_rand_gen_ipoisson ( float $mu )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

mu

Valor Retornado

stats_rand_gen_int
stats_rand_gen_iuniform
Statistic Funções


Generates integer uniformly distributed between LOW (inclusive) and HIGH (inclusive)

stats_rand_gen_ipoisson
stats_rand_gen_noncenral_chisquare
Statistic Funções
PHP Manual

stats_rand_gen_iuniform

(PECL stats >= 1.0.0)

stats_rand_gen_iuniform — Generates integer uniformly distributed between LOW (inclusive) and HIGH (inclusive)

Descrição

int stats_rand_gen_iuniform ( int $low , int $high )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

low

high

Valor Retornado

stats_rand_gen_ipoisson
stats_rand_gen_noncenral_chisquare
Statistic Funções


Generates random deviate from the distribution of a noncentral chisquare with "df" degrees of freedom and noncentrality parameter "xnonc". d must be >= 1.0, xnonc must >= 0.0

stats_rand_gen_iuniform
stats_rand_gen_noncentral_f
Statistic Funções
PHP Manual

stats_rand_gen_noncenral_chisquare

(PECL stats >= 1.0.0)

stats_rand_gen_noncenral_chisquare — Generates random deviate from the distribution of a noncentral chisquare with "df" degrees of freedom and noncentrality parameter "xnonc". d must be >= 1.0, xnonc must >= 0.0

Descrição

float stats_rand_gen_noncenral_chisquare ( float $df , float $xnonc )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

df

xnonc

Valor Retornado

stats_rand_gen_iuniform
stats_rand_gen_noncentral_f
Statistic Funções


Generates a random deviate from the noncentral F (variance ratio) distribution with "dfn" degrees of freedom in the numerator, and "dfd" degrees of freedom in the denominator, and noncentrality parameter "xnonc". Method : directly generates ratio of noncentral numerator chisquare variate to central 

stats_rand_gen_noncenral_chisquare
stats_rand_gen_noncentral_t
Statistic Funções
PHP Manual

stats_rand_gen_noncentral_f

(PECL stats >= 1.0.0)

stats_rand_gen_noncentral_f — Generates a random deviate from the noncentral F (variance ratio) distribution with "dfn" degrees of freedom in the numerator, and "dfd" degrees of freedom in the denominator, and noncentrality parameter "xnonc". Method : directly generates ratio of noncentral numerator chisquare variate to central denominator chisquare variate.

Descrição

float stats_rand_gen_noncentral_f ( float $dfn , float $dfd , float $xnonc )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

dfn

dfd

xnonc

Valor Retornado

stats_rand_gen_noncenral_chisquare
stats_rand_gen_noncentral_t
Statistic Funções


Generates a single random deviate from a noncentral T distribution

stats_rand_gen_noncentral_f
stats_rand_gen_normal
Statistic Funções
PHP Manual

stats_rand_gen_noncentral_t

(PECL stats >= 1.0.0)

stats_rand_gen_noncentral_t — Generates a single random deviate from a noncentral T distribution

Descrição

float stats_rand_gen_noncentral_t ( float $df , float $xnonc )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

df

xnonc

Valor Retornado

stats_rand_gen_noncentral_f
stats_rand_gen_normal
Statistic Funções


Generates a single random deviate from a normal distribution with mean, av, and standard deviation, sd (sd >= 0). Method : Renames SNORM from TOMS as slightly modified by BWB to use RANF instead of SUNIF.

stats_rand_gen_noncentral_t
stats_rand_gen_t
Statistic Funções
PHP Manual

stats_rand_gen_normal

(PECL stats >= 1.0.0)

stats_rand_gen_normal — Generates a single random deviate from a normal distribution with mean, av, and standard deviation, sd (sd >= 0). Method : Renames SNORM from TOMS as slightly modified by BWB to use RANF instead of SUNIF.

Descrição

float stats_rand_gen_normal ( float $av , float $sd )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

av

sd

Valor Retornado

stats_rand_gen_noncentral_t
stats_rand_gen_t
Statistic Funções


Generates a single random deviate from a T distribution

stats_rand_gen_normal
stats_rand_get_seeds
Statistic Funções
PHP Manual

stats_rand_gen_t

(PECL stats >= 1.0.0)

stats_rand_gen_t — Generates a single random deviate from a T distribution

Descrição

float stats_rand_gen_t ( float $df )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

df

Valor Retornado

stats_rand_gen_normal
stats_rand_get_seeds
Statistic Funções


Not documented

stats_rand_gen_t
stats_rand_phrase_to_seeds
Statistic Funções
PHP Manual

stats_rand_get_seeds

(PECL stats >= 1.0.0)

stats_rand_get_seeds — Not documented

Descrição

array stats_rand_get_seeds ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

stats_rand_gen_t
stats_rand_phrase_to_seeds
Statistic Funções


generate two seeds for the RGN random number generator

stats_rand_get_seeds
stats_rand_ranf
Statistic Funções
PHP Manual

stats_rand_phrase_to_seeds

(PECL stats >= 1.0.0)

stats_rand_phrase_to_seeds — generate two seeds for the RGN random number generator

Descrição

array stats_rand_phrase_to_seeds ( string $phrase )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

phrase

Valor Retornado

stats_rand_get_seeds
stats_rand_ranf
Statistic Funções


Returns a random floating point number from a uniform distribution over 0 - 1 (endpoints of this interval are not returned) using the current generator

stats_rand_phrase_to_seeds
stats_rand_setall
Statistic Funções
PHP Manual

stats_rand_ranf

(PECL stats >= 1.0.0)

stats_rand_ranf — Returns a random floating point number from a uniform distribution over 0 - 1 (endpoints of this interval are not returned) using the current generator

Descrição

float stats_rand_ranf ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Valor Retornado

stats_rand_phrase_to_seeds
stats_rand_setall
Statistic Funções


Not documented

stats_rand_ranf
stats_skew
Statistic Funções
PHP Manual

stats_rand_setall

(PECL stats >= 1.0.0)

stats_rand_setall — Not documented

Descrição

void stats_rand_setall ( int $iseed1 , int $iseed2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iseed1

iseed2

Valor Retornado

stats_rand_ranf
stats_skew
Statistic Funções


Computes the skewness of the data in the array

stats_rand_setall
stats_standard_deviation
Statistic Funções
PHP Manual

stats_skew

(PECL stats >= 1.0.0)

stats_skew — Computes the skewness of the data in the array

Descrição

float stats_skew ( array $a )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

Valor Retornado

stats_rand_setall
stats_standard_deviation
Statistic Funções


Returns the standard deviation

stats_skew
stats_stat_binomial_coef
Statistic Funções
PHP Manual

stats_standard_deviation

(PECL stats >= 1.0.0)

stats_standard_deviation — Returns the standard deviation

Descrição

float stats_standard_deviation ( array $a [, bool $sample = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

sample

Valor Retornado

stats_skew
stats_stat_binomial_coef
Statistic Funções


Not documented

stats_standard_deviation
stats_stat_correlation
Statistic Funções
PHP Manual

stats_stat_binomial_coef

(PECL stats >= 1.0.0)

stats_stat_binomial_coef — Not documented

Descrição

float stats_stat_binomial_coef ( int $x , int $n )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

x

n

Valor Retornado

stats_standard_deviation
stats_stat_correlation
Statistic Funções


Not documented

stats_stat_binomial_coef
stats_stat_gennch
Statistic Funções
PHP Manual

stats_stat_correlation

(PECL stats >= 1.0.0)

stats_stat_correlation — Not documented

Descrição

float stats_stat_correlation ( array $arr1 , array $arr2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

arr1

arr2

Valor Retornado

stats_stat_binomial_coef
stats_stat_gennch
Statistic Funções


Not documented

stats_stat_correlation
stats_stat_independent_t
Statistic Funções
PHP Manual

stats_stat_gennch

(PECL stats >= 1.0.0)

stats_stat_gennch — Not documented

Descrição

float stats_stat_gennch ( int $n )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

n

Valor Retornado

stats_stat_correlation
stats_stat_independent_t
Statistic Funções


Not documented

stats_stat_gennch
stats_stat_innerproduct
Statistic Funções
PHP Manual

stats_stat_independent_t

(PECL stats >= 1.0.0)

stats_stat_independent_t — Not documented

Descrição

float stats_stat_independent_t ( array $arr1 , array $arr2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

arr1

arr2

Valor Retornado

stats_stat_gennch
stats_stat_innerproduct
Statistic Funções


stats_stat_independent_t
stats_stat_noncentral_t
Statistic Funções
PHP Manual

stats_stat_innerproduct

(PECL stats >= 1.0.0)

stats_stat_innerproduct —

Descrição

float stats_stat_innerproduct ( array $arr1 , array $arr2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

arr1

arr2

Valor Retornado

stats_stat_independent_t
stats_stat_noncentral_t
Statistic Funções


Calculates any one parameter of the noncentral t distribution give values for the others.

stats_stat_innerproduct
stats_stat_paired_t
Statistic Funções
PHP Manual

stats_stat_noncentral_t

(PECL stats >= 1.0.0)

stats_stat_noncentral_t — Calculates any one parameter of the noncentral t distribution give values for the others.

Descrição

float stats_stat_noncentral_t ( float $par1 , float $par2 , float $par3 , int $which )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

par1

par2

par3

which

Valor Retornado

stats_stat_innerproduct
stats_stat_paired_t
Statistic Funções


Not documented

stats_stat_noncentral_t
stats_stat_percentile
Statistic Funções
PHP Manual

stats_stat_paired_t

(PECL stats >= 1.0.0)

stats_stat_paired_t — Not documented

Descrição

float stats_stat_paired_t ( array $arr1 , array $arr2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

arr1

arr2

Valor Retornado

stats_stat_noncentral_t
stats_stat_percentile
Statistic Funções


Not documented

stats_stat_paired_t
stats_stat_powersum
Statistic Funções
PHP Manual

stats_stat_percentile

(PECL stats >= 1.0.0)

stats_stat_percentile — Not documented

Descrição

float stats_stat_percentile ( float $df , float $xnonc )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

df

xnonc

Valor Retornado

stats_stat_paired_t
stats_stat_powersum
Statistic Funções


Not documented

stats_stat_percentile
stats_variance
Statistic Funções
PHP Manual

stats_stat_powersum

(PECL stats >= 1.0.0)

stats_stat_powersum — Not documented

Descrição

float stats_stat_powersum ( array $arr , float $power )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

arr

power

Valor Retornado

stats_stat_percentile
stats_variance
Statistic Funções


Returns the population variance

stats_stat_powersum
Saída de MIME Não-Texto
Statistic Funções
PHP Manual

stats_variance

(PECL stats >= 1.0.0)

stats_variance — Returns the population variance

Descrição

float stats_variance ( array $a [, bool $sample = false ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

a

sample

Valor Retornado

stats_stat_powersum
Saída de MIME Não-Texto
Statistic Funções


Saída de MIME Não-Texto

  • FDF — Forms Data Format
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • FDF Funções
  • GnuPG — GNU Privacy Guard
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • GnuPG Funções
  • haru — Haru PDF
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Builtin Fonts And Encodings
    • HaruException — The HaruException class
    • HaruDoc — The HaruDoc class
    • HaruPage — The HaruPage class
    • HaruFont — The HaruFont class
    • HaruImage — The HaruImage class
    • HaruEncoder — The HaruEncoder class
    • HaruOutline — The HaruOutline class
    • HaruAnnotation — The HaruAnnotation class
    • HaruDestination — The HaruDestination class
  • Ming — Ming (flash)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Ming Funções
    • SWFAction — The SWFAction class
    • SWFBitmap — The SWFBitmap class
    • SWFButton — The SWFButton class
    • SWFDisplayItem — The SWFDisplayItem class
    • SWFFill — The SWFFill class
    • SWFFont — The SWFFont class
    • SWFFontChar — The SWFFontChar class
    • SWFGradient — The SWFGradient class
    • SWFMorph — The SWFMorph class
    • SWFMovie — The SWFMovie class
    • SWFPrebuiltClip — The SWFPrebuiltClip class
    • SWFShape — The SWFShape class
    • SWFSound — The SWFSound class
    • SWFSoundInstance — The SWFSoundInstance class
    • SWFSprite — The SWFSprite class
    • SWFText — The SWFText class
    • SWFTextField — The SWFTextField class
    • SWFVideoStream — The SWFVideoStream class
  • PDF
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • PDF Funções
  • PS — PostScript document creation
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • PS Funções
  • RPM Reader — RPM Header Reading
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • RPM Reader Funções
  • SWF — Shockwave Flash
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para SWF
stats_variance
FDF
Referência das Funções


Forms Data Format

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • FDF Funções
    • fdf_add_doc_javascript — Adds javascript code to the FDF document
    • fdf_add_template — Adds a template into the FDF document
    • fdf_close — Close an FDF document
    • fdf_create — Create a new FDF document
    • fdf_enum_values — Call a user defined function for each document value
    • fdf_errno — Return error code for last fdf operation
    • fdf_error — Return error description for FDF error code
    • fdf_get_ap — Get the appearance of a field
    • fdf_get_attachment — Extracts uploaded file embedded in the FDF
    • fdf_get_encoding — Get the value of the /Encoding key
    • fdf_get_file — Get the value of the /F key
    • fdf_get_flags — Gets the flags of a field
    • fdf_get_opt — Gets a value from the opt array of a field
    • fdf_get_status — Get the value of the /STATUS key
    • fdf_get_value — Get the value of a field
    • fdf_get_version — Gets version number for FDF API or file
    • fdf_header — Sets FDF-specific output headers
    • fdf_next_field_name — Get the next field name
    • fdf_open_string — Read a FDF document from a string
    • fdf_open — Open a FDF document
    • fdf_remove_item — Sets target frame for form
    • fdf_save_string — Returns the FDF document as a string
    • fdf_save — Save a FDF document
    • fdf_set_ap — Set the appearance of a field
    • fdf_set_encoding — Sets FDF character encoding
    • fdf_set_file — Set PDF document to display FDF data in
    • fdf_set_flags — Sets a flag of a field
    • fdf_set_javascript_action — Sets an javascript action of a field
    • fdf_set_on_import_javascript — Adds javascript code to be executed when Acrobat opens the FDF
    • fdf_set_opt — Sets an option of a field
    • fdf_set_status — Set the value of the /STATUS key
    • fdf_set_submit_form_action — Sets a submit form action of a field
    • fdf_set_target_frame — Set target frame for form display
    • fdf_set_value — Set the value of a field
    • fdf_set_version — Sets version number for a FDF file
Saída de MIME Não-Texto
Introdução
Saída de MIME Não-Texto


Introdução

Forms Data Format (FDF) is a format for handling forms within PDF documents. You should read the documentation at » http://www.adobe.com/devnet/acrobat/fdftoolkit.html for more information on what FDF is and how it is used in general.

The general idea of FDF is similar to HTML forms. The difference is basically the format how data is transmitted to the server when the submit button is pressed (this is actually the Form Data Format) and the format of the form itself (which is the Portable Document Format, PDF). Processing the FDF data is one of the features provided by the fdf functions. But there is more. One may as well take an existing PDF form and populated the input fields with data without modifying the form itself. In such a case one would create a FDF document (fdf_create()) set the values of each input field (fdf_set_value()) and associate it with a PDF form (fdf_set_file()). Finally it has to be sent to the browser with MimeType application/vnd.fdf. The Acrobat reader plugin of your browser recognizes the MimeType, reads the associated PDF form and fills in the data from the FDF document.

If you look at an FDF-document with a text editor you will find a catalogue object with the name FDF. Such an object may contain a number of entries like Fields, F, Status etc.. The most commonly used entries are Fields which points to a list of input fields, and F which contains the filename of the PDF-document this data belongs to. Those entries are referred to in the FDF documentation as /F-Key or /Status-Key. Modifying this entries is done by functions like fdf_set_file() and fdf_set_status(). Fields are modified with fdf_set_value(), fdf_set_opt() etc..

FDF
Instalação/Configuração
FDF


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
FDF


Dependências

You need the FDF toolkit SDK available from » http://www.adobe.com/devnet/acrobat/fdftoolkit.html. As of PHP 4.3.0 you need at least SDK version 5.0. The FDF toolkit library is available in binary form only, platforms supported by Adobe are Win32, Linux, Solaris and AIX.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/fdf.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0

Nota: If you run into problems configuring PHP with fdftk support, check whether the header file fdftk.h and the library libfdftk.so are at the right place. The configure script supports both the directory structure of the FDF SDK distribution and the usual DIR/include / DIR/lib layout, so you can point it either directly to the unpacked distribution directory or put the header file and the appropriate library for your platform into e.g. /usr/local/include and /usr/local/lib and configure with --with-fdftk=/usr/local .

Nota: Note to Win32 Users

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: fdftk.dll

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Most fdf functions require a fdf resource as their first parameter. A fdf resource is a handle to an opened fdf file. fdf resources may be obtained using fdf_create(), fdf_open() and fdf_open_string().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FDFValue (integer)
FDFStatus (integer)
FDFFile (integer)
FDFID (integer)
FDFFf (integer)
FDFSetFf (integer)
FDFClearFf (integer)
FDFFlags (integer)
FDFSetF (integer)
FDFClrF (integer)
FDFAP (integer)
FDFAS (integer)
FDFAction (integer)
FDFAA (integer)
FDFAPRef (integer)
FDFIF (integer)
FDFEnter (integer)
FDFExit (integer)
FDFDown (integer)
FDFUp (integer)
FDFFormat (integer)
FDFValidate (integer)
FDFKeystroke (integer)
FDFCalculate (integer)
FDFNormalAP (integer)
FDFRolloverAP (integer)
FDFDownAP (integer)
Tipos Resource
Exemplos
FDF


Exemplos

The following examples shows just the evaluation of form data.

Exemplo #1 Evaluating a FDF document

<?php
// Open fdf from input string provided by the extension
// The pdf form contained several input text fields with the names
// volume, date, comment, publisher, preparer, and two checkboxes
// show_publisher and show_preparer.
$fdf = fdf_open_string($HTTP_FDF_DATA);
$volume = fdf_get_value($fdf, "volume");
echo "The volume field has the value '<b>$volume</b>'<br />";

$date = fdf_get_value($fdf, "date");
echo "The date field has the value '<b>$date</b>'<br />";

$comment = fdf_get_value($fdf, "comment");
echo "The comment field has the value '<b>$comment</b>'<br />";

if (fdf_get_value($fdf, "show_publisher") == "On") {
  $publisher = fdf_get_value($fdf, "publisher");
  echo "The publisher field has the value '<b>$publisher</b>'<br />";
} else
  echo "Publisher shall not be shown.<br />";

if (fdf_get_value($fdf, "show_preparer") == "On") {
  $preparer = fdf_get_value($fdf, "preparer");
  echo "The preparer field has the value '<b>$preparer</b>'<br />";
} else
  echo "Preparer shall not be shown.<br />";
fdf_close($fdf);
?>

Constantes pré-definidas
FDF Funções
FDF


FDF Funções

Índice

  • fdf_add_doc_javascript — Adds javascript code to the FDF document
  • fdf_add_template — Adds a template into the FDF document
  • fdf_close — Close an FDF document
  • fdf_create — Create a new FDF document
  • fdf_enum_values — Call a user defined function for each document value
  • fdf_errno — Return error code for last fdf operation
  • fdf_error — Return error description for FDF error code
  • fdf_get_ap — Get the appearance of a field
  • fdf_get_attachment — Extracts uploaded file embedded in the FDF
  • fdf_get_encoding — Get the value of the /Encoding key
  • fdf_get_file — Get the value of the /F key
  • fdf_get_flags — Gets the flags of a field
  • fdf_get_opt — Gets a value from the opt array of a field
  • fdf_get_status — Get the value of the /STATUS key
  • fdf_get_value — Get the value of a field
  • fdf_get_version — Gets version number for FDF API or file
  • fdf_header — Sets FDF-specific output headers
  • fdf_next_field_name — Get the next field name
  • fdf_open_string — Read a FDF document from a string
  • fdf_open — Open a FDF document
  • fdf_remove_item — Sets target frame for form
  • fdf_save_string — Returns the FDF document as a string
  • fdf_save — Save a FDF document
  • fdf_set_ap — Set the appearance of a field
  • fdf_set_encoding — Sets FDF character encoding
  • fdf_set_file — Set PDF document to display FDF data in
  • fdf_set_flags — Sets a flag of a field
  • fdf_set_javascript_action — Sets an javascript action of a field
  • fdf_set_on_import_javascript — Adds javascript code to be executed when Acrobat opens the FDF
  • fdf_set_opt — Sets an option of a field
  • fdf_set_status — Set the value of the /STATUS key
  • fdf_set_submit_form_action — Sets a submit form action of a field
  • fdf_set_target_frame — Set target frame for form display
  • fdf_set_value — Set the value of a field
  • fdf_set_version — Sets version number for a FDF file
Exemplos
fdf_add_doc_javascript
FDF


Adds javascript code to the FDF document

FDF Funções
fdf_add_template
FDF Funções
PHP Manual

fdf_add_doc_javascript

(PHP 4 >= 4.3.0, PHP 5)

fdf_add_doc_javascript — Adds javascript code to the FDF document

Descrição

bool fdf_add_doc_javascript ( resource $fdf_document , string $script_name , string $script_code )

Adds a script to the FDF, which Acrobat then adds to the doc-level scripts of a document, once the FDF is imported into it.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

script_name

The script name.

script_code

The script code. It is strongly suggested to use \r for linebreaks within the script code.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Adding JavaScript code to a FDF

<?php
$fdf = fdf_create();
fdf_add_doc_javascript($fdf, "PlusOne", "function PlusOne(x)\r{\r  return x+1;\r}\r");
fdf_save($fdf);
?>

will create a FDF like this:

%FDF-1.2
%âãÏÓ
1 0 obj
<<
/FDF << /JavaScript << /Doc [ (PlusOne)(function PlusOne\(x\)\r{\r  return x+1;\r}\r)] >> >>
>>
endobj
trailer
<<
/Root 1 0 R

>>
%%EOF

FDF Funções
fdf_add_template
FDF Funções


Adds a template into the FDF document

fdf_add_doc_javascript
fdf_close
FDF Funções
PHP Manual

fdf_add_template

(PHP 4, PHP 5)

fdf_add_template — Adds a template into the FDF document

Descrição

bool fdf_add_template ( resource $fdf_document , int $newpage , string $filename , string $template , int $rename )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

fdf_add_doc_javascript
fdf_close
FDF Funções


Close an FDF document

fdf_add_template
fdf_create
FDF Funções
PHP Manual

fdf_close

(PHP 4, PHP 5)

fdf_close — Close an FDF document

Descrição

void fdf_close ( resource $fdf_document )

Closes the FDF document.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Não há valor retornado.

Veja Também

  • fdf_open() - Open a FDF document

fdf_add_template
fdf_create
FDF Funções


Create a new FDF document

fdf_close
fdf_enum_values
FDF Funções
PHP Manual

fdf_create

(PHP 4, PHP 5)

fdf_create — Create a new FDF document

Descrição

resource fdf_create ( void )

Creates a new FDF document.

This function is needed if one would like to populate input fields in a PDF document with data.

Valor Retornado

Returns a FDF document handle, or FALSE on error.

Exemplos

Exemplo #1 Populating a PDF document

<?php
$outfdf = fdf_create();
fdf_set_value($outfdf, "volume", $volume, 0);

fdf_set_file($outfdf, "http:/testfdf/resultlabel.pdf");
fdf_save($outfdf, "outtest.fdf");
fdf_close($outfdf);
Header("Content-type: application/vnd.fdf");
$fp = fopen("outtest.fdf", "r");
fpassthru($fp);
unlink("outtest.fdf");
?>

Veja Também

  • fdf_close() - Close an FDF document
  • fdf_save() - Save a FDF document
  • fdf_open() - Open a FDF document

fdf_close
fdf_enum_values
FDF Funções


Call a user defined function for each document value

fdf_create
fdf_errno
FDF Funções
PHP Manual

fdf_enum_values

(PHP 4 >= 4.3.0, PHP 5)

fdf_enum_values — Call a user defined function for each document value

Descrição

bool fdf_enum_values ( resource $fdf_document , callback $function [, mixed $userdata ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

fdf_create
fdf_errno
FDF Funções


Return error code for last fdf operation

fdf_enum_values
fdf_error
FDF Funções
PHP Manual

fdf_errno

(PHP 4 >= 4.3.0, PHP 5)

fdf_errno — Return error code for last fdf operation

Descrição

int fdf_errno ( void )

Gets the error code set by the last FDF function call.

A textual description of the error may be obtained using with fdf_error().

Valor Retornado

Returns the error code as an integer, or zero if there was no errors.

Veja Também

  • fdf_error() - Return error description for FDF error code

fdf_enum_values
fdf_error
FDF Funções


Return error description for FDF error code

fdf_errno
fdf_get_ap
FDF Funções
PHP Manual

fdf_error

(PHP 4 >= 4.3.0, PHP 5)

fdf_error — Return error description for FDF error code

Descrição

string fdf_error ([ int $error_code = -1 ] )

Gets a textual description for the FDF error code given in error_code.

Parâmetros

error_code

An error code obtained with fdf_errno(). If not provided, this function uses the internal error code set by the last operation.

Valor Retornado

Returns the error message as a string, or the string no error if nothing went wrong.

Veja Também

  • fdf_errno() - Return error code for last fdf operation

fdf_errno
fdf_get_ap
FDF Funções


Get the appearance of a field

fdf_error
fdf_get_attachment
FDF Funções
PHP Manual

fdf_get_ap

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_ap — Get the appearance of a field

Descrição

bool fdf_get_ap ( resource $fdf_document , string $field , int $face , string $filename )

Gets the appearance of a field (i.e. the value of the /AP key) and stores it in a file.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

field

face

The possible values are FDFNormalAP, FDFRolloverAP and FDFDownAP.

filename

The appearance will be stored in this parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fdf_error
fdf_get_attachment
FDF Funções


Extracts uploaded file embedded in the FDF

fdf_get_ap
fdf_get_encoding
FDF Funções
PHP Manual

fdf_get_attachment

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_attachment — Extracts uploaded file embedded in the FDF

Descrição

array fdf_get_attachment ( resource $fdf_document , string $fieldname , string $savepath )

Extracts a file uploaded by means of the "file selection" field fieldname and stores it under savepath.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

savepath

May be the name of a plain file or an existing directory in which the file is to be created under its original name. Any existing file under the same name will be overwritten.

Nota:

There seems to be no other way to find out the original filename but to store the file using a directory as savepath and check for the basename it was stored under.

Valor Retornado

The returned array contains the following fields:

  • path - path were the file got stored
  • size - size of the stored file in bytes
  • type - mimetype if given in the FDF

Exemplos

Exemplo #1 Storing an uploaded file

<?php
  $fdf = fdf_open_string($HTTP_FDF_DATA);
  $data = fdf_get_attachment($fdf, "filename", "/tmpdir");
  echo "The uploaded file is stored in $data[path]";
?>

fdf_get_ap
fdf_get_encoding
FDF Funções


Get the value of the /Encoding key

fdf_get_attachment
fdf_get_file
FDF Funções
PHP Manual

fdf_get_encoding

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_encoding — Get the value of the /Encoding key

Descrição

string fdf_get_encoding ( resource $fdf_document )

Gets the value of the /Encoding key.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Returns the encoding as a string. An empty string is returned if the default PDFDocEncoding/Unicode scheme is used.

Veja Também

  • fdf_set_encoding() - Sets FDF character encoding

fdf_get_attachment
fdf_get_file
FDF Funções


Get the value of the /F key

fdf_get_encoding
fdf_get_flags
FDF Funções
PHP Manual

fdf_get_file

(PHP 4, PHP 5)

fdf_get_file — Get the value of the /F key

Descrição

string fdf_get_file ( resource $fdf_document )

Gets the value of the /F key.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Returns the key value, as a string.

Veja Também

  • fdf_set_file() - Set PDF document to display FDF data in

fdf_get_encoding
fdf_get_flags
FDF Funções


Gets the flags of a field

fdf_get_file
fdf_get_opt
FDF Funções
PHP Manual

fdf_get_flags

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_flags — Gets the flags of a field

Descrição

int fdf_get_flags ( resource $fdf_document , string $fieldname , int $whichflags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

fdf_get_file
fdf_get_opt
FDF Funções


Gets a value from the opt array of a field

fdf_get_flags
fdf_get_status
FDF Funções
PHP Manual

fdf_get_opt

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_opt — Gets a value from the opt array of a field

Descrição

mixed fdf_get_opt ( resource $fdf_document , string $fieldname [, int $element = -1 ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

fdf_get_flags
fdf_get_status
FDF Funções


Get the value of the /STATUS key

fdf_get_opt
fdf_get_value
FDF Funções
PHP Manual

fdf_get_status

(PHP 4, PHP 5)

fdf_get_status — Get the value of the /STATUS key

Descrição

string fdf_get_status ( resource $fdf_document )

Gets the value of the /STATUS key.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Returns the key value, as a string.

Veja Também

  • fdf_set_status() - Set the value of the /STATUS key

fdf_get_opt
fdf_get_value
FDF Funções


Get the value of a field

fdf_get_status
fdf_get_version
FDF Funções
PHP Manual

fdf_get_value

(PHP 4, PHP 5)

fdf_get_value — Get the value of a field

Descrição

mixed fdf_get_value ( resource $fdf_document , string $fieldname [, int $which = -1 ] )

Gets the value for the requested field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

which

Elements of an array field can be retrieved by passing this optional parameter, starting at zero. For non-array fields, this parameter will be ignored.

Valor Retornado

Returns the field value.

Histórico

Versão | Descrição
4.3.0 | Support for arrays and the which parameter were added.

Veja Também

  • fdf_set_value() - Set the value of a field

fdf_get_status
fdf_get_version
FDF Funções


Gets version number for FDF API or file

fdf_get_value
fdf_header
FDF Funções
PHP Manual

fdf_get_version

(PHP 4 >= 4.3.0, PHP 5)

fdf_get_version — Gets version number for FDF API or file

Descrição

string fdf_get_version ([ resource $fdf_document ] )

Return the FDF version for the given document, or the toolkit API version number if no parameter is given.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Returns the version as a string. For the current FDF toolkit 5.0 the API version number is 5.0 and the document version number is either 1.2, 1.3 or 1.4.

Veja Também

  • fdf_set_version() - Sets version number for a FDF file

fdf_get_value
fdf_header
FDF Funções


Sets FDF-specific output headers

fdf_get_version
fdf_next_field_name
FDF Funções
PHP Manual

fdf_header

(PHP 4 >= 4.3.0, PHP 5)

fdf_header — Sets FDF-specific output headers

Descrição

void fdf_header ( void )

This is a convenience function to set appropriate HTTP headers for FDF output. It sets the Content-type: to application/vnd.fdf.

Valor Retornado

Não há valor retornado.

fdf_get_version
fdf_next_field_name
FDF Funções


Get the next field name

fdf_header
fdf_open_string
FDF Funções
PHP Manual

fdf_next_field_name

(PHP 4, PHP 5)

fdf_next_field_name — Get the next field name

Descrição

string fdf_next_field_name ( resource $fdf_document [, string $fieldname ] )

Gets the name of the field after the given field. This name can be used with several functions.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string. If not given, the first field will be assumed.

Valor Retornado

Returns the field name as a string.

Exemplos

Exemplo #1 Detecting all fieldnames in a FDF

<?php
$fdf = fdf_open($HTTP_FDF_DATA);
for ($field = fdf_next_field_name($fdf);
    $field != "";
    $field = fdf_next_field_name($fdf, $field)) {
    echo "field: $field\n";
}
?>

Veja Também

  • fdf_get_value() - Get the value of a field

fdf_header
fdf_open_string
FDF Funções


Read a FDF document from a string

fdf_next_field_name
fdf_open
FDF Funções
PHP Manual

fdf_open_string

(PHP 4 >= 4.3.0, PHP 5)

fdf_open_string — Read a FDF document from a string

Descrição

resource fdf_open_string ( string $fdf_data )

Reads form data from a string.

You can use fdf_open_string() together with $HTTP_FDF_DATA to process FDF form input from a remote client.

Parâmetros

fdf_data

The data as returned from a PDF form or created using fdf_create() and fdf_save_string().

Valor Retornado

Returns a FDF document handle, or FALSE on error.

Exemplos

Exemplo #1 Accessing the form data

<?php
$fdf = fdf_open_string($HTTP_FDF_DATA);
/* ... */
fdf_close($fdf);
?>

Veja Também

  • fdf_open() - Open a FDF document
  • fdf_close() - Close an FDF document
  • fdf_create() - Create a new FDF document
  • fdf_save_string() - Returns the FDF document as a string

fdf_next_field_name
fdf_open
FDF Funções


Open a FDF document

fdf_open_string
fdf_remove_item
FDF Funções
PHP Manual

fdf_open

(PHP 4, PHP 5)

fdf_open — Open a FDF document

Descrição

resource fdf_open ( string $filename )

Opens a file with form data.

You can also use fdf_open_string() to process the results of a PDF form POST request.

Parâmetros

filename

Path to the FDF file. This file must contain the data as returned from a PDF form or created using fdf_create() and fdf_save().

Valor Retornado

Returns a FDF document handle, or FALSE on error.

Exemplos

Exemplo #1 Accessing the form data

<?php
// Save the FDF data into a temp file
$fdffp = fopen("test.fdf", "w");
fwrite($fdffp, $HTTP_FDF_DATA, strlen($HTTP_FDF_DATA));
fclose($fdffp);

// Open temp file and evaluate data
$fdf = fdf_open("test.fdf");
/* ... */
fdf_close($fdf);
?>

Veja Também

  • fdf_open_string() - Read a FDF document from a string
  • fdf_close() - Close an FDF document
  • fdf_create() - Create a new FDF document
  • fdf_save() - Save a FDF document

fdf_open_string
fdf_remove_item
FDF Funções


Sets target frame for form

fdf_open
fdf_save_string
FDF Funções
PHP Manual

fdf_remove_item

(PHP 4 >= 4.3.0, PHP 5)

fdf_remove_item — Sets target frame for form

Descrição

bool fdf_remove_item ( resource $fdf_document , string $fieldname , int $item )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

fdf_open
fdf_save_string
FDF Funções


Returns the FDF document as a string

fdf_remove_item
fdf_save
FDF Funções
PHP Manual

fdf_save_string

(PHP 4 >= 4.3.0, PHP 5)

fdf_save_string — Returns the FDF document as a string

Descrição

string fdf_save_string ( resource $fdf_document )

Returns the FDF document as a string.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

Valor Retornado

Returns the document as a string, or FALSE on error.

Exemplos

Exemplo #1 Retrieving FDF as a string

<?php
$fdf = fdf_create();
fdf_set_value($fdf, "foo", "bar");
$str = fdf_save_string($fdf);
fdf_close($fdf);
echo $str;
?>

O exemplo acima irá imprimir:

%FDF-1.2
%âãÏÓ
1 0 obj
<<
/FDF << /Fields 2 0 R >>
>>
endobj
2 0 obj
[
<< /T (foo)/V (bar)>>
]
endobj
trailer
<<
/Root 1 0 R

>>
%%EOF

Veja Também

  • fdf_open_string() - Read a FDF document from a string
  • fdf_close() - Close an FDF document
  • fdf_create() - Create a new FDF document
  • fdf_save() - Save a FDF document

fdf_remove_item
fdf_save
FDF Funções


Save a FDF document

fdf_save_string
fdf_set_ap
FDF Funções
PHP Manual

fdf_save

(PHP 4, PHP 5)

fdf_save — Save a FDF document

Descrição

bool fdf_save ( resource $fdf_document [, string $filename ] )

Saves a FDF document.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

filename

If provided, the resulting FDF will be written in this parameter. Otherwise, this function will write the FDF to the default PHP output stream.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_close() - Close an FDF document
  • fdf_create() - Create a new FDF document
  • fdf_save_string() - Returns the FDF document as a string

fdf_save_string
fdf_set_ap
FDF Funções


Set the appearance of a field

fdf_save
fdf_set_encoding
FDF Funções
PHP Manual

fdf_set_ap

(PHP 4, PHP 5)

fdf_set_ap — Set the appearance of a field

Descrição

bool fdf_set_ap ( resource $fdf_document , string $field_name , int $face , string $filename , int $page_number )

Sets the appearance of a field (i.e. the value of the /AP key).

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

field_name

face

The possible values FDFNormalAP, FDFRolloverAP and FDFDownAP.

filename

page_number

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fdf_save
fdf_set_encoding
FDF Funções


Sets FDF character encoding

fdf_set_ap
fdf_set_file
FDF Funções
PHP Manual

fdf_set_encoding

(PHP 4 >= 4.0.7, PHP 5)

fdf_set_encoding — Sets FDF character encoding

Descrição

bool fdf_set_encoding ( resource $fdf_document , string $encoding )

Sets the character encoding for the FDF document.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

encoding

The encoding name. The following values are supported: "Shift-JIS", "UHC", "GBK" and "BigFive".

An empty string resets the encoding to the default PDFDocEncoding/Unicode scheme.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

fdf_set_ap
fdf_set_file
FDF Funções


Set PDF document to display FDF data in

fdf_set_encoding
fdf_set_flags
FDF Funções
PHP Manual

fdf_set_file

(PHP 4, PHP 5)

fdf_set_file — Set PDF document to display FDF data in

Descrição

bool fdf_set_file ( resource $fdf_document , string $url [, string $target_frame ] )

Selects a different PDF document to display the form results in then the form it originated from.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

url

Should be given as an absolute URL.

target_frame

Use this parameter to specify the frame in which the document will be displayed. You can also set the default value for this parameter using fdf_set_target_frame().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Passing FDF data to a second form

<?php
  /* set content type for Adobe FDF */
  fdf_header();

  /* start new fdf */
  $fdf = fdf_create();

  /* set field "foo" to value "bar" */
  fdf_set_value($fdf, "foo", "bar");

  /* tell client to display FDF data using "fdf_form.pdf" */
  fdf_set_file($fdf, "http://www.example.com/fdf_form.pdf");

  /* output fdf */
  fdf_save($fdf);

  /* clean up */
  fdf_close($fdf);
?>

Veja Também

  • fdf_get_file() - Get the value of the /F key
  • fdf_set_target_frame() - Set target frame for form display

fdf_set_encoding
fdf_set_flags
FDF Funções


Sets a flag of a field

fdf_set_file
fdf_set_javascript_action
FDF Funções
PHP Manual

fdf_set_flags

(PHP 4 >= 4.0.2, PHP 5)

fdf_set_flags — Sets a flag of a field

Descrição

bool fdf_set_flags ( resource $fdf_document , string $fieldname , int $whichFlags , int $newFlags )

Sets certain flags of the given field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

whichFlags

newFlags

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_set_opt() - Sets an option of a field

fdf_set_file
fdf_set_javascript_action
FDF Funções


Sets an javascript action of a field

fdf_set_flags
fdf_set_on_import_javascript
FDF Funções
PHP Manual

fdf_set_javascript_action

(PHP 4 >= 4.0.2, PHP 5)

fdf_set_javascript_action — Sets an javascript action of a field

Descrição

bool fdf_set_javascript_action ( resource $fdf_document , string $fieldname , int $trigger , string $script )

Sets a javascript action for the given field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

trigger

script

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_set_submit_form_action() - Sets a submit form action of a field

fdf_set_flags
fdf_set_on_import_javascript
FDF Funções


Adds javascript code to be executed when Acrobat opens the FDF

fdf_set_javascript_action
fdf_set_opt
FDF Funções
PHP Manual

fdf_set_on_import_javascript

(PHP 4 >= 4.3.0, PHP 5)

fdf_set_on_import_javascript — Adds javascript code to be executed when Acrobat opens the FDF

Descrição

bool fdf_set_on_import_javascript ( resource $fdf_document , string $script , bool $before_data_import )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • fdf_add_doc_javascript() - Adds javascript code to the FDF document
  • fdf_set_javascript_action() - Sets an javascript action of a field

fdf_set_javascript_action
fdf_set_opt
FDF Funções


Sets an option of a field

fdf_set_on_import_javascript
fdf_set_status
FDF Funções
PHP Manual

fdf_set_opt

(PHP 4 >= 4.0.2, PHP 5)

fdf_set_opt — Sets an option of a field

Descrição

bool fdf_set_opt ( resource $fdf_document , string $fieldname , int $element , string $str1 , string $str2 )

Sets options of the given field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

element

str1

str2

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_set_flags() - Sets a flag of a field

fdf_set_on_import_javascript
fdf_set_status
FDF Funções


Set the value of the /STATUS key

fdf_set_opt
fdf_set_submit_form_action
FDF Funções
PHP Manual

fdf_set_status

(PHP 4, PHP 5)

fdf_set_status — Set the value of the /STATUS key

Descrição

bool fdf_set_status ( resource $fdf_document , string $status )

Sets the value of the /STATUS key. When a client receives a FDF with a status set it will present the value in an alert box.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

status

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_get_status() - Get the value of the /STATUS key

fdf_set_opt
fdf_set_submit_form_action
FDF Funções


Sets a submit form action of a field

fdf_set_status
fdf_set_target_frame
FDF Funções
PHP Manual

fdf_set_submit_form_action

(PHP 4 >= 4.0.2, PHP 5)

fdf_set_submit_form_action — Sets a submit form action of a field

Descrição

bool fdf_set_submit_form_action ( resource $fdf_document , string $fieldname , int $trigger , string $script , int $flags )

Sets a submit form action for the given field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

trigger

script

flags

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_set_javascript_action() - Sets an javascript action of a field

fdf_set_status
fdf_set_target_frame
FDF Funções


Set target frame for form display

fdf_set_submit_form_action
fdf_set_value
FDF Funções
PHP Manual

fdf_set_target_frame

(PHP 4 >= 4.3.0, PHP 5)

fdf_set_target_frame — Set target frame for form display

Descrição

bool fdf_set_target_frame ( resource $fdf_document , string $frame_name )

Sets the target frame to display a result PDF defined with fdf_save_file() in.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

frame_name

The frame name, as a string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_save_file()

fdf_set_submit_form_action
fdf_set_value
FDF Funções


Set the value of a field

fdf_set_target_frame
fdf_set_version
FDF Funções
PHP Manual

fdf_set_value

(PHP 4, PHP 5)

fdf_set_value — Set the value of a field

Descrição

bool fdf_set_value ( resource $fdf_document , string $fieldname , mixed $value [, int $isName ] )

Sets the value for the given field.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

fieldname

Name of the FDF field, as a string.

value

This parameter will be stored as a string unless it is an array. In this case all array elements will be stored as a value array.

isName

Nota:

In older versions of the FDF toolkit last parameter determined if the field value was to be converted to a PDF Name (= 1) or set to a PDF String (= 0).

The value is no longer used in the current toolkit version 5.0. For compatibility reasons it is still supported as an optional parameter beginning with PHP 4.3, but ignored internally.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.0 | Support for arrays in the value parameter was added.

Veja Também

  • fdf_get_value() - Get the value of a field
  • fdf_remove_item() - Sets target frame for form

fdf_set_target_frame
fdf_set_version
FDF Funções


Sets version number for a FDF file

fdf_set_value
GnuPG
FDF Funções
PHP Manual

fdf_set_version

(PHP 4 >= 4.3.0, PHP 5)

fdf_set_version — Sets version number for a FDF file

Descrição

bool fdf_set_version ( resource $fdf_document , string $version )

Sets the FDF version for the given document.

Some features supported by this extension are only available in newer FDF versions.

Parâmetros

fdf_document

The FDF document handle, returned by fdf_create(), fdf_open() or fdf_open_string().

version

The version number. For the current FDF toolkit 5.0, this may be either 1.2, 1.3 or 1.4.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fdf_get_version() - Gets version number for FDF API or file

fdf_set_value
GnuPG
FDF Funções


GNU Privacy Guard

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Clearsign text
  • GnuPG Funções
    • gnupg_adddecryptkey — Add a key for decryption
    • gnupg_addencryptkey — Add a key for encryption
    • gnupg_addsignkey — Add a key for signing
    • gnupg_cleardecryptkeys — Removes all keys which were set for decryption before
    • gnupg_clearencryptkeys — Removes all keys which were set for encryption before
    • gnupg_clearsignkeys — Removes all keys which were set for signing before
    • gnupg_decrypt — Decrypts a given text
    • gnupg_decryptverify — Decrypts and verifies a given text
    • gnupg_encrypt — Encrypts a given text
    • gnupg_encryptsign — Encrypts and signs a given text
    • gnupg_export — Exports a key
    • gnupg_geterror — Returns the errortext, if a function fails
    • gnupg_getprotocol — Returns the currently active protocol for all operations
    • gnupg_import — Imports a key
    • gnupg_init — Initialize a connection
    • gnupg_keyinfo — Returns an array with information about all keys that matches the given pattern
    • gnupg_setarmor — Toggle armored output
    • gnupg_seterrormode — Sets the mode for error_reporting
    • gnupg_setsignmode — Sets the mode for signing
    • gnupg_sign — Signs a given text
    • gnupg_verify — Verifies a signed text
fdf_set_version
Introdução
Saída de MIME Não-Texto


Introdução

This module allows you to interact with » gnupg.

GnuPG
Instalação/Configuração
GnuPG


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
GnuPG


Dependências

The gnupg extension requires PHP 4.3. To use this extension in an OO style, PHP 5 is required.

This extension requires the » gpgme library

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/gnupg.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

GNUPG_SIG_MODE_NORMAL (integer)
GNUPG_SIG_MODE_DETACH (integer)
GNUPG_SIG_MODE_CLEAR (integer)
GNUPG_VALIDITY_UNKNOWN (integer)
GNUPG_VALIDITY_UNDEFINED (integer)
GNUPG_VALIDITY_NEVER (integer)
GNUPG_VALIDITY_MARGINAL (integer)
GNUPG_VALIDITY_FULL (integer)
GNUPG_VALIDITY_ULTIMATE (integer)
GNUPG_PROTOCOL_OpenPGP (integer)
GNUPG_PROTOCOL_CMS (integer)
GNUPG_SIGSUM_VALID (integer)
GNUPG_SIGSUM_GREEN (integer)
GNUPG_SIGSUM_RED (integer)
GNUPG_SIGSUM_KEY_REVOKED (integer)
GNUPG_SIGSUM_KEY_EXPIRED (integer)
GNUPG_SIGSUM_KEY_MISSING (integer)
GNUPG_SIGSUM_SIG_EXPIRED (integer)
GNUPG_SIGSUM_CRL_MISSING (integer)
GNUPG_SIGSUM_CRL_TOO_OLD (integer)
GNUPG_SIGSUM_BAD_POLICY (integer)
GNUPG_SIGSUM_SYS_ERROR (integer)
GNUPG_ERROR_WARNING (integer)
GNUPG_ERROR_EXCEPTION (integer)
GNUPG_ERROR_SILENT (integer)
Tipos Resource
Exemplos
GnuPG


Exemplos

Índice

  • Clearsign text
Constantes pré-definidas
Clearsign text
GnuPG


Clearsign text

This example will clearsign a given text.

Exemplo #1 gnupg clearsign example (procedural)

<?php
// init gnupg
$res = gnupg_init();
// not really needed. Clearsign is default
gnupg_setsignmode($res,GNUPG_SIG_MODE_CLEAR);
// add key with passphrase 'test' for signing
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
// sign
$signed = gnupg_sign($res,"just a test");
echo $signed;
?>

Exemplo #2 gnupg clearsign example (OO)

<?php
// new class
$gnupg = new gnupg();
// not really needed. Clearsign is default
$gnupg->setsignmode(gnupg::SIG_MODE_CLEAR);
// add key with passphrase 'test' for signing
$gnupg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
// sign
$signed = $gnupg->sign("just a test");
echo $signed;
?>

Exemplo #3 keylistiterator

This extension also comes with an Iterator for your keyring.

<?php
// create a new iterator for listing all public keys that matches 'example'
$iterator = new gnupg_keylistiterator("example");
foreach($iterator as $fingerprint => $userid){
    echo $fingerprint." -> ".$userid."\n";
}
?>
Exemplos
GnuPG Funções
Exemplos


GnuPG Funções

Notas

This extension makes use of the keyring of the current user. This keyring is normally located in ~./.gnupg/. To specify a custom location, store the path to the keyring in the environment variable GNUPGHOME. See putenv for more information how to do this.

Some functions require the specification of a key. This specification can be anything that refers to a unique key (userid, key-id, fingerprint, ...). This documentation uses the fingerprint in all examples.

Índice

  • gnupg_adddecryptkey — Add a key for decryption
  • gnupg_addencryptkey — Add a key for encryption
  • gnupg_addsignkey — Add a key for signing
  • gnupg_cleardecryptkeys — Removes all keys which were set for decryption before
  • gnupg_clearencryptkeys — Removes all keys which were set for encryption before
  • gnupg_clearsignkeys — Removes all keys which were set for signing before
  • gnupg_decrypt — Decrypts a given text
  • gnupg_decryptverify — Decrypts and verifies a given text
  • gnupg_encrypt — Encrypts a given text
  • gnupg_encryptsign — Encrypts and signs a given text
  • gnupg_export — Exports a key
  • gnupg_geterror — Returns the errortext, if a function fails
  • gnupg_getprotocol — Returns the currently active protocol for all operations
  • gnupg_import — Imports a key
  • gnupg_init — Initialize a connection
  • gnupg_keyinfo — Returns an array with information about all keys that matches the given pattern
  • gnupg_setarmor — Toggle armored output
  • gnupg_seterrormode — Sets the mode for error_reporting
  • gnupg_setsignmode — Sets the mode for signing
  • gnupg_sign — Signs a given text
  • gnupg_verify — Verifies a signed text
Clearsign text
gnupg_adddecryptkey
GnuPG


Add a key for decryption

GnuPG Funções
gnupg_addencryptkey
GnuPG Funções
PHP Manual

gnupg_adddecryptkey

(PECL gnupg >= 0.5)

gnupg_adddecryptkey — Add a key for decryption

Descrição

bool gnupg_adddecryptkey ( resource $identifier , string $fingerprint , string $passphrase )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

fingerprint

A chave de fingerprint.

passphrase

The pass phrase.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_adddecryptkey() example

<?php
$res = gnupg_init();
gnupg_adddecryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
?>

Exemplo #2 OO gnupg_adddecryptkey() example

<?php
$gpg = new gnupg();
$gpg -> adddecryptkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
?>

GnuPG Funções
gnupg_addencryptkey
GnuPG Funções


Add a key for encryption

gnupg_adddecryptkey
gnupg_addsignkey
GnuPG Funções
PHP Manual

gnupg_addencryptkey

(PECL gnupg >= 0.5)

gnupg_addencryptkey — Add a key for encryption

Descrição

bool gnupg_addencryptkey ( resource $identifier , string $fingerprint )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

fingerprint

A chave de fingerprint.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_addencryptkey() example

<?php
$res = gnupg_init();
gnupg_addencryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC");
?>

Exemplo #2 OO gnupg_addencryptkey() example

<?php
$gpg = new gnupg();
$gpg -> addencryptkey("8660281B6051D071D94B5B230549F9DC851566DC");
?>

gnupg_adddecryptkey
gnupg_addsignkey
GnuPG Funções


Add a key for signing

gnupg_addencryptkey
gnupg_cleardecryptkeys
GnuPG Funções
PHP Manual

gnupg_addsignkey

(PECL gnupg >= 0.5)

gnupg_addsignkey — Add a key for signing

Descrição

bool gnupg_addsignkey ( resource $identifier , string $fingerprint [, string $passphrase ] )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

fingerprint

A chave de fingerprint.

passphrase

The pass phrase.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_addsignkey() example

<?php
$res = gnupg_init();
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
?>

Exemplo #2 OO gnupg_addsignkey() example

<?php
$gpg = new gnupg();
$gpg -> addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
?>

gnupg_addencryptkey
gnupg_cleardecryptkeys
GnuPG Funções


Removes all keys which were set for decryption before

gnupg_addsignkey
gnupg_clearencryptkeys
GnuPG Funções
PHP Manual

gnupg_cleardecryptkeys

(PECL gnupg >= 0.5)

gnupg_cleardecryptkeys — Removes all keys which were set for decryption before

Descrição

bool gnupg_cleardecryptkeys ( resource $identifier )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_cleardecryptkeys() example

<?php
$res = gnupg_init();
gnupg_cleardecryptkeys($res);
?>

Exemplo #2 OO gnupg_cleardecryptkeys() example

<?php
$gpg = new gnupg();
$gpg -> cleardecryptkeys();
?>

gnupg_addsignkey
gnupg_clearencryptkeys
GnuPG Funções


Removes all keys which were set for encryption before

gnupg_cleardecryptkeys
gnupg_clearsignkeys
GnuPG Funções
PHP Manual

gnupg_clearencryptkeys

(PECL gnupg >= 0.5)

gnupg_clearencryptkeys — Removes all keys which were set for encryption before

Descrição

bool gnupg_clearencryptkeys ( resource $identifier )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_clearencryptkeys() example

<?php
$res = gnupg_init();
gnupg_clearencryptkeys($res);
?>

Exemplo #2 OO gnupg_clearencryptkeys() example

<?php
$gpg = new gnupg();
$gpg -> clearencryptkeys();
?>

gnupg_cleardecryptkeys
gnupg_clearsignkeys
GnuPG Funções


Removes all keys which were set for signing before

gnupg_clearencryptkeys
gnupg_decrypt
GnuPG Funções
PHP Manual

gnupg_clearsignkeys

(PECL gnupg >= 0.5)

gnupg_clearsignkeys — Removes all keys which were set for signing before

Descrição

bool gnupg_clearsignkeys ( resource $identifier )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_clearsignkeys() example

<?php
$res = gnupg_init();
gnupg_clearsignkeys($res);
?>

Exemplo #2 OO gnupg_clearsignkeys() example

<?php
$gpg = new gnupg();
$gpg -> clearsignkeys();
?>

gnupg_clearencryptkeys
gnupg_decrypt
GnuPG Funções


Decrypts a given text

gnupg_clearsignkeys
gnupg_decryptverify
GnuPG Funções
PHP Manual

gnupg_decrypt

(PECL gnupg >= 0.1)

gnupg_decrypt — Decrypts a given text

Descrição

string gnupg_decrypt ( resource $identifier , string $text )

Decrypts the given text with the keys, which were set with gnupg_adddecryptkey before.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

text

The text being decrypted.

Valor Retornado

On success, this function returns the decrypted text. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_decrypt() example

<?php
$res = gnupg_init();
gnupg_adddecryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$plain = gnupg_decrypt($res,$encrypted_text);
echo $plain;
?>

Exemplo #2 OO gnupg_encrypt() example

<?php
$gpg = new gnupg();
$gpg -> adddecryptkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$plain = $gpg -> decrypt($encrypted_text);
echo $plain;
?>

gnupg_clearsignkeys
gnupg_decryptverify
GnuPG Funções


Decrypts and verifies a given text

gnupg_decrypt
gnupg_encrypt
GnuPG Funções
PHP Manual

gnupg_decryptverify

(PECL gnupg >= 0.2)

gnupg_decryptverify — Decrypts and verifies a given text

Descrição

array gnupg_decryptverify ( resource $identifier , string $text , string &$plaintext )

Decrypts and verifies a given text and returns information about the signature.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

text

The text being decrypted.

plaintext

The parameter plaintext gets filled with the decrypted text.

Valor Retornado

On success, this function returns information about the signature and fills the plaintext parameter with the decrypted text. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_decryptverify() example

<?php
$plaintext = "";
$res = gnupg_init();
gnupg_adddecryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$info = gnupg_decryptverify($res,$text,$plaintext);
print_r($info);
?>

Exemplo #2 OO gnupg_decryptverify() example

<?php
$plaintext = "";
$gpg = new gnupg();
$gpg -> adddecryptkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$info = $gpg -> decryptverify($text,$plaintext);
print_r($info);
?>

gnupg_decrypt
gnupg_encrypt
GnuPG Funções


Encrypts a given text

gnupg_decryptverify
gnupg_encryptsign
GnuPG Funções
PHP Manual

gnupg_encrypt

(PECL gnupg >= 0.1)

gnupg_encrypt — Encrypts a given text

Descrição

string gnupg_encrypt ( resource $identifier , string $plaintext )

Encrypts the given plaintext with the keys, which were set with gnupg_addencryptkey before and returns the encrypted text.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

plaintext

The text being encrypted.

Valor Retornado

On success, this function returns the encrypted text. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_encrypt() example

<?php
$res = gnupg_init();
gnupg_addencryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC");
$enc = gnupg_encrypt($res, "just a test");
echo $enc;
?>

Exemplo #2 OO gnupg_encrypt() example

<?php
$gpg = new gnupg();
$gpg -> addencryptkey("8660281B6051D071D94B5B230549F9DC851566DC");
$enc = $gpg -> encrypt("just a test");
echo $enc;
?>

gnupg_decryptverify
gnupg_encryptsign
GnuPG Funções


Encrypts and signs a given text

gnupg_encrypt
gnupg_export
GnuPG Funções
PHP Manual

gnupg_encryptsign

(PECL gnupg >= 0.2)

gnupg_encryptsign — Encrypts and signs a given text

Descrição

string gnupg_encryptsign ( resource $identifier , string $plaintext )

Encrypts and signs the given plaintext with the keys, which were set with gnupg_addsignkey and gnupg_addencryptkey before and returns the encrypted and signed text.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

plaintext

The text being encrypted.

Valor Retornado

On success, this function returns the encrypted and signed text. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_encryptsign() example

<?php
$res = gnupg_init();
gnupg_addencryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC");
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$enc = gnupg_encryptsign($res, "just a test");
echo $enc;
?>

Exemplo #2 OO gnupg_encryptsign() example

<?php
$gpg = new gnupg();
$gpg -> addencryptkey("8660281B6051D071D94B5B230549F9DC851566DC");
$gpg -> addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$enc = $gpg -> encryptsign("just a test");
echo $enc;
?>

gnupg_encrypt
gnupg_export
GnuPG Funções


Exports a key

gnupg_encryptsign
gnupg_geterror
GnuPG Funções
PHP Manual

gnupg_export

(PECL gnupg >= 0.1)

gnupg_export — Exports a key

Descrição

string gnupg_export ( resource $identifier , string $fingerprint )

Exports the key fingerprint.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

fingerprint

A chave de fingerprint.

Valor Retornado

On success, this function returns the keydata. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_export() example

<?php
$res = gnupg_init();
$export = gnupg_export($res,"8660281B6051D071D94B5B230549F9DC851566DC");
echo $export;
?>

Exemplo #2 OO gnupg_export() example

<?php
$gpg = new gnupg();
$export = $gpg -> export("8660281B6051D071D94B5B230549F9DC851566DC");
?>

gnupg_encryptsign
gnupg_geterror
GnuPG Funções


Returns the errortext, if a function fails

gnupg_export
gnupg_getprotocol
GnuPG Funções
PHP Manual

gnupg_geterror

(PECL gnupg >= 0.1)

gnupg_geterror — Returns the errortext, if a function fails

Descrição

string gnupg_geterror ( resource $identifier )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

Valor Retornado

Returns an errortext, if an error has occurred, otherwise FALSE.

Exemplos

Exemplo #1 Procedural gnupg_geterror() example

<?php
$res = gnupg_init();
echo gnupg_geterror($res);
?>

Exemplo #2 OO gnupg_geterror() example

<?php
$gpg = new gnupg();
echo $gpg -> geterror();
?>

gnupg_export
gnupg_getprotocol
GnuPG Funções


Returns the currently active protocol for all operations

gnupg_geterror
gnupg_import
GnuPG Funções
PHP Manual

gnupg_getprotocol

(PECL gnupg >= 0.1)

gnupg_getprotocol — Returns the currently active protocol for all operations

Descrição

int gnupg_getprotocol ( resource $identifier )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

Valor Retornado

Returns the currently active protocol, which can be one of GNUPG_PROTOCOL_OpenPGP or GNUPG_PROTOCOL_CMS.

Exemplos

Exemplo #1 Procedural gnupg_getprotocol() example

<?php
$res = gnupg_init();
echo gnupg_getprotocol($res);
?>

Exemplo #2 OO gnupg_getprotocol() example

<?php
$gpg = new gnupg();
echo $gpg -> getprotocol();
?>

gnupg_geterror
gnupg_import
GnuPG Funções


Imports a key

gnupg_getprotocol
gnupg_init
GnuPG Funções
PHP Manual

gnupg_import

(PECL gnupg >= 0.3)

gnupg_import — Imports a key

Descrição

array gnupg_import ( resource $identifier , string $keydata )

Imports the key keydata and returns an array with information about the importprocess.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

keydata

The data key that is being imported.

Valor Retornado

On success, this function returns and info-array about the importprocess. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_import() example

<?php
$res = gnupg_init();
$info = gnupg_import($res,$keydata);
print_r($info);
?>

Exemplo #2 OO gnupg_import() example

<?php
$gpg = new gnupg();
$info = $gpg -> import($keydata);
print_r($info);
?>

gnupg_getprotocol
gnupg_init
GnuPG Funções


Initialize a connection

gnupg_import
gnupg_keyinfo
GnuPG Funções
PHP Manual

gnupg_init

(PECL gnupg >= 0.4)

gnupg_init — Initialize a connection

Descrição

resource gnupg_init ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GnuPG resource connection used by other GnuPG functions.

Exemplos

Exemplo #1 Procedural gnupg_init() example

<?php
$res = gnupg_init();
?>

Exemplo #2 OO gnupg initializer example

<?php
$gpg = new gnupg();
?>

gnupg_import
gnupg_keyinfo
GnuPG Funções


Returns an array with information about all keys that matches the given pattern

gnupg_init
gnupg_setarmor
GnuPG Funções
PHP Manual

gnupg_keyinfo

(PECL gnupg >= 0.1)

gnupg_keyinfo — Returns an array with information about all keys that matches the given pattern

Descrição

array gnupg_keyinfo ( resource $identifier , string $pattern )

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

pattern

The pattern being checked against the keys.

Valor Retornado

Returns an array with information about all keys that matches the given pattern or FALSE, if an error has occurred.

Exemplos

Exemplo #1 Procedural gnupg_keyinfo() example

<?php
$res = gnupg_init();
$info = gnupg_keyinfo($res, 'test');
print_r($info);
?>

Exemplo #2 OO gnupg_keyinfo() example

<?php
$gpg = new gnupg();
$info = $gpg -> keyinfo("test");
print_r($info);
?>

gnupg_init
gnupg_setarmor
GnuPG Funções


Toggle armored output

gnupg_keyinfo
gnupg_seterrormode
GnuPG Funções
PHP Manual

gnupg_setarmor

(PECL gnupg >= 0.1)

gnupg_setarmor — Toggle armored output

Descrição

bool gnupg_setarmor ( resource $identifier , int $armor )

Toggle the armored output.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

armor

Pass a non-zero integer-value to this function to enable armored-output (default). Pass 0 to disable armored output.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_setarmor() example

<?php
$res = gnupg_init();
gnupg_setarmor($res,1); // enable armored output;
gnupg_setarmor($res,0); // disable armored output;
?>

Exemplo #2 OO gnupg_setarmor() example

<?php
$gpg = new gnupg();
$gpg -> setarmor(1); // enable armored output;
$gpg -> setarmor(0); // disable armored output;
?>

gnupg_keyinfo
gnupg_seterrormode
GnuPG Funções


Sets the mode for error_reporting

gnupg_setarmor
gnupg_setsignmode
GnuPG Funções
PHP Manual

gnupg_seterrormode

(PECL gnupg >= 0.6)

gnupg_seterrormode — Sets the mode for error_reporting

Descrição

void gnupg_seterrormode ( resource $identifier , int $errormode )

Sets the mode for error_reporting.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

errormode

The error mode.

errormode takes a constant indicating what type of error_reporting should be used. The possible values are GNUPG_ERROR_WARNING, GNUPG_ERROR_EXCEPTION and GNUPG_ERROR_SILENT. By default GNUPG_ERROR_SILENT is used.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Procedural gnupg_seterrormode() example

<?php
$res = gnupg_init();
gnupg_seterrormode($res,GNUPG_ERROR_WARNING); // raise a PHP-Warning in case of an error
?>

Exemplo #2 OO gnupg_seterrormode() example

<?php
$gpg = new gnupg();
$gpg -> seterrormode(gnupg::ERROR_EXCEPTION); // throw an exception in case of an error
?>

gnupg_setarmor
gnupg_setsignmode
GnuPG Funções


Sets the mode for signing

gnupg_seterrormode
gnupg_sign
GnuPG Funções
PHP Manual

gnupg_setsignmode

(PECL gnupg >= 0.1)

gnupg_setsignmode — Sets the mode for signing

Descrição

bool gnupg_setsignmode ( resource $identifier , int $signmode )

Sets the mode for signing.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

sigmode

The mode for signing.

signmode takes a constant indicating what type of signature should be produced. The possible values are GNUPG_SIG_MODE_NORMAL, GNUPG_SIG_MODE_DETACH and GNUPG_SIG_MODE_CLEAR. By default GNUPG_SIG_MODE_CLEAR is used.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Procedural gnupg_setsignmode() example

<?php
$res = gnupg_init();
gnupg_setsignmode($res,GNUPG_SIG_MODE_DETACH); // produce a detached signature
?>

Exemplo #2 OO gnupg_setsignmode() example

<?php
$gpg = new gnupg();
$gpg -> setsignmode(gnupg::SIG_MODE_DETACH); // produce a detached signature
?>

gnupg_seterrormode
gnupg_sign
GnuPG Funções


Signs a given text

gnupg_setsignmode
gnupg_verify
GnuPG Funções
PHP Manual

gnupg_sign

(PECL gnupg >= 0.1)

gnupg_sign — Signs a given text

Descrição

string gnupg_sign ( resource $identifier , string $plaintext )

Signs the given plaintext with the keys, which were set with gnupg_addsignkey before and returns the signed text or the signature, depending on what was set with gnupg_setsignmode.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

plaintext

The plain text being signed.

Valor Retornado

On success, this function returns the signed text or the signature. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_sign() example

<?php
$res = gnupg_init();
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$signed = gnupg_sign($res, "just a test");
echo $signed;
?>

Exemplo #2 OO gnupg_sign() example

<?php
$gpg = new gnupg();
$gpg -> setsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$signed = $gpg -> sign("just a test");
echo $signed;
?>

gnupg_setsignmode
gnupg_verify
GnuPG Funções


Verifies a signed text

gnupg_sign
haru
GnuPG Funções
PHP Manual

gnupg_verify

(PECL gnupg >= 0.1)

gnupg_verify — Verifies a signed text

Descrição

array gnupg_verify ( resource $identifier , string $signed_text , string $signature [, string &$plaintext ] )

Verifies the given signed_text and returns information about the signature.

Parâmetros

identifier

O identificador gnupg, de uma chamada à gnupg_init() ou gnupg.

signed_text

The signed text.

signature

The signature. To verify a clearsigned text, set signature to FALSE.

plaintext

The plain text. If this optional parameter is passed, it is filled with the plain text.

Valor Retornado

On success, this function returns information about the signature. On failure, this function returns FALSE.

Exemplos

Exemplo #1 Procedural gnupg_verify() example

<?php
$plaintext = "";
$res = gnupg_init();
// clearsigned
$info = gnupg_verify($res,$signed_text,false,$plaintext);
print_r($info);
// detached signature
$info = gnupg_verify($res,$signed_text,$signature);
print_r($info);
?>

Exemplo #2 OO gnupg_verify() example

<?php
$plaintext = "";
$gpg = new gnupg();
// clearsigned
$info = $gpg -> verify($signed_text,false,$plaintext);
print_r($info);
// detached signature
$info = $gpg -> verify($signed_text,$signature);
print_r($info);
?>

gnupg_sign
haru
GnuPG Funções


Haru PDF

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic PECL/haru example
  • Builtin Fonts And Encodings
    • Builtin Fonts
    • Builtin Encodings
  • HaruException — The HaruException class
  • HaruDoc — The HaruDoc class
    • HaruDoc::addPage — Add new page to the document
    • HaruDoc::addPageLabel — Set the numbering style for the specified range of pages
    • HaruDoc::__construct — Construct new HaruDoc instance
    • HaruDoc::createOutline — Create a HaruOutline instance
    • HaruDoc::getCurrentEncoder — Get HaruEncoder currently used in the document
    • HaruDoc::getCurrentPage — Return current page of the document
    • HaruDoc::getEncoder — Get HaruEncoder instance for the specified encoding
    • HaruDoc::getFont — Get HaruFont instance
    • HaruDoc::getInfoAttr — Get current value of the specified document attribute
    • HaruDoc::getPageLayout — Get current page layout
    • HaruDoc::getPageMode — Get current page mode
    • HaruDoc::getStreamSize — Get the size of the temporary stream
    • HaruDoc::insertPage — Insert new page just before the specified page
    • HaruDoc::loadJPEG — Load a JPEG image
    • HaruDoc::loadPNG — Load PNG image and return HaruImage instance
    • HaruDoc::loadRaw — Load a RAW image
    • HaruDoc::loadTTC — Load the font with the specified index from TTC file
    • HaruDoc::loadTTF — Load TTF font file
    • HaruDoc::loadType1 — Load Type1 font
    • HaruDoc::output — Write the document data to the output buffer
    • HaruDoc::readFromStream — Read data from the temporary stream
    • HaruDoc::resetError — Reset error state of the document handle
    • HaruDoc::resetStream — Rewind the temporary stream
    • HaruDoc::save — Save the document into the specified file
    • HaruDoc::saveToStream — Save the document into a temporary stream
    • HaruDoc::setCompressionMode — Set compression mode for the document
    • HaruDoc::setCurrentEncoder — Set the current encoder for the document
    • HaruDoc::setEncryptionMode — Set encryption mode for the document
    • HaruDoc::setInfoAttr — Set the info attribute of the document
    • HaruDoc::setInfoDateAttr — Set the datetime info attributes of the document
    • HaruDoc::setOpenAction — Define which page is shown when the document is opened
    • HaruDoc::setPageLayout — Set how pages should be displayed
    • HaruDoc::setPageMode — Set how the document should be displayed
    • HaruDoc::setPagesConfiguration — Set the number of pages per set of pages
    • HaruDoc::setPassword — Set owner and user passwords for the document
    • HaruDoc::setPermission — Set permissions for the document
    • HaruDoc::useCNSEncodings — Enable Chinese simplified encodings
    • HaruDoc::useCNSFonts — Enable builtin Chinese simplified fonts
    • HaruDoc::useCNTEncodings — Enable Chinese traditional encodings
    • HaruDoc::useCNTFonts — Enable builtin Chinese traditional fonts
    • HaruDoc::useJPEncodings — Enable Japanese encodings
    • HaruDoc::useJPFonts — Enable builtin Japanese fonts
    • HaruDoc::useKREncodings — Enable Korean encodings
    • HaruDoc::useKRFonts — Enable builtin Korean fonts
  • HaruPage — The HaruPage class
    • HaruPage::arc — Append an arc to the current path
    • HaruPage::beginText — Begin a text object and set the current text position to (0,0)
    • HaruPage::circle — Append a circle to the current path
    • HaruPage::closePath — Append a straight line from the current point to the start point of the path
    • HaruPage::concat — Concatenate current transformation matrix of the page and the specified matrix
    • HaruPage::createDestination — Create new HaruDestination instance
    • HaruPage::createLinkAnnotation — Create new HaruAnnotation instance
    • HaruPage::createTextAnnotation — Create new HaruAnnotation instance
    • HaruPage::createURLAnnotation — Create and return new HaruAnnotation instance
    • HaruPage::curveTo2 — Append a Bezier curve to the current path
    • HaruPage::curveTo3 — Append a Bezier curve to the current path
    • HaruPage::curveTo — Append a Bezier curve to the current path
    • HaruPage::drawImage — Show image at the page
    • HaruPage::ellipse — Append an ellipse to the current path
    • HaruPage::endPath — End current path object without filling and painting operations
    • HaruPage::endText — End current text object
    • HaruPage::eofill — Fill current path using even-odd rule
    • HaruPage::eoFillStroke — Fill current path using even-odd rule, then paint the path
    • HaruPage::fill — Fill current path using nonzero winding number rule
    • HaruPage::fillStroke — Fill current path using nonzero winding number rule, then paint the path
    • HaruPage::getCharSpace — Get the current value of character spacing
    • HaruPage::getCMYKFill — Get the current filling color
    • HaruPage::getCMYKStroke — Get the current stroking color
    • HaruPage::getCurrentFont — Get the currently used font
    • HaruPage::getCurrentFontSize — Get the current font size
    • HaruPage::getCurrentPos — Get the current position for path painting
    • HaruPage::getCurrentTextPos — Get the current position for text printing
    • HaruPage::getDash — Get the current dash pattern
    • HaruPage::getFillingColorSpace — Get the current filling color space
    • HaruPage::getFlatness — Get the flatness of the page
    • HaruPage::getGMode — Get the current graphics mode
    • HaruPage::getGrayFill — Get the current filling color
    • HaruPage::getGrayStroke — Get the current stroking color
    • HaruPage::getHeight — Get the height of the page
    • HaruPage::getHorizontalScaling — Get the current value of horizontal scaling
    • HaruPage::getLineCap — Get the current line cap style
    • HaruPage::getLineJoin — Get the current line join style
    • HaruPage::getLineWidth — Get the current line width
    • HaruPage::getMiterLimit — Get the value of miter limit
    • HaruPage::getRGBFill — Get the current filling color
    • HaruPage::getRGBStroke — Get the current stroking color
    • HaruPage::getStrokingColorSpace — Get the current stroking color space
    • HaruPage::getTextLeading — Get the current value of line spacing
    • HaruPage::getTextMatrix — Get the current text transformation matrix of the page
    • HaruPage::getTextRenderingMode — Get the current text rendering mode
    • HaruPage::getTextRise — Get the current value of text rising
    • HaruPage::getTextWidth — Get the width of the text using current fontsize, character spacing and word spacing
    • HaruPage::getTransMatrix — Get the current transformation matrix of the page
    • HaruPage::getWidth — Get the width of the page
    • HaruPage::getWordSpace — Get the current value of word spacing
    • HaruPage::lineTo — Draw a line from the current point to the specified point
    • HaruPage::measureText — Calculate the number of characters which can be included within the specified width
    • HaruPage::moveTextPos — Move text position to the specified offset
    • HaruPage::moveTo — Set starting point for new drawing path
    • HaruPage::moveToNextLine — Move text position to the start of the next line
    • HaruPage::rectangle — Append a rectangle to the current path
    • HaruPage::setCharSpace — Set character spacing for the page
    • HaruPage::setCMYKFill — Set filling color for the page
    • HaruPage::setCMYKStroke — Set stroking color for the page
    • HaruPage::setDash — Set the dash pattern for the page
    • HaruPage::setFlatness — Set flatness for the page
    • HaruPage::setFontAndSize — Set font and fontsize for the page
    • HaruPage::setGrayFill — Set filling color for the page
    • HaruPage::setGrayStroke — Sets stroking color for the page
    • HaruPage::setHeight — Set height of the page
    • HaruPage::setHorizontalScaling — Set horizontal scaling for the page
    • HaruPage::setLineCap — Set the shape to be used at the ends of lines
    • HaruPage::setLineJoin — Set line join style for the page
    • HaruPage::setLineWidth — Set line width for the page
    • HaruPage::setMiterLimit — Set the current value of the miter limit of the page
    • HaruPage::setRGBFill — Set filling color for the page
    • HaruPage::setRGBStroke — Set stroking color for the page
    • HaruPage::setRotate — Set rotation angle of the page
    • HaruPage::setSize — Set size and direction of the page
    • HaruPage::setSlideShow — Set transition style for the page
    • HaruPage::setTextLeading — Set text leading (line spacing) for the page
    • HaruPage::setTextMatrix — Set the current text transformation matrix of the page
    • HaruPage::setTextRenderingMode — Set text rendering mode for the page
    • HaruPage::setTextRise — Set the current value of text rising
    • HaruPage::setWidth — Set width of the page
    • HaruPage::setWordSpace — Set word spacing for the page
    • HaruPage::showText — Print text at the current position of the page
    • HaruPage::showTextNextLine — Move the current position to the start of the next line and print the text
    • HaruPage::stroke — Paint current path
    • HaruPage::textOut — Print the text on the specified position
    • HaruPage::textRect — Print the text inside the specified region
  • HaruFont — The HaruFont class
    • HaruFont::getAscent — Get the vertical ascent of the font
    • HaruFont::getCapHeight — Get the distance from the baseline of uppercase letters
    • HaruFont::getDescent — Get the vertical descent of the font
    • HaruFont::getEncodingName — Get the name of the encoding
    • HaruFont::getFontName — Get the name of the font
    • HaruFont::getTextWidth — Get the total width of the text, number of characters, number of words and number of spaces
    • HaruFont::getUnicodeWidth — Get the width of the character in the font
    • HaruFont::getXHeight — Get the distance from the baseline of lowercase letters
    • HaruFont::measureText — Calculate the number of characters which can be included within the specified width
  • HaruImage — The HaruImage class
    • HaruImage::getBitsPerComponent — Get the number of bits used to describe each color component of the image
    • HaruImage::getColorSpace — Get the name of the color space
    • HaruImage::getHeight — Get the height of the image
    • HaruImage::getSize — Get size of the image
    • HaruImage::getWidth — Get the width of the image
    • HaruImage::setColorMask — Set the color mask of the image
    • HaruImage::setMaskImage — Set the image mask
  • HaruEncoder — The HaruEncoder class
    • HaruEncoder::getByteType — Get the type of the byte in the text
    • HaruEncoder::getType — Get the type of the encoder
    • HaruEncoder::getUnicode — Convert the specified character to unicode
    • HaruEncoder::getWritingMode — Get the writing mode of the encoder
  • HaruOutline — The HaruOutline class
    • HaruOutline::setDestination — Set the destination for the outline
    • HaruOutline::setOpened — Set the initial state of the outline
  • HaruAnnotation — The HaruAnnotation class
    • HaruAnnotation::setBorderStyle — Set the border style of the annotation
    • HaruAnnotation::setHighlightMode — Set the highlighting mode of the annotation
    • HaruAnnotation::setIcon — Set the icon style of the annotation
    • HaruAnnotation::setOpened — Set the initial state of the annotation
  • HaruDestination — The HaruDestination class
    • HaruDestination::setFit — Set the appearance of the page to fit the window
    • HaruDestination::setFitB — Set the appearance of the page to fit the bounding box of the page within the window
    • HaruDestination::setFitBH — Set the appearance of the page to fit the width of the bounding box
    • HaruDestination::setFitBV — Set the appearance of the page to fit the height of the boudning box
    • HaruDestination::setFitH — Set the appearance of the page to fit the window width
    • HaruDestination::setFitR — Set the appearance of the page to fit the specified rectangle
    • HaruDestination::setFitV — Set the appearance of the page to fit the window height
    • HaruDestination::setXYZ — Set the appearance of the page
gnupg_verify
Introdução
Saída de MIME Não-Texto


Introdução

The PECL/haru extension provides bindings to the libHaru library. libHaru is a free, cross platform, and Open Source library for generating PDF files.

The Haru library (libHaru) may be found here: » http://libharu.org.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

haru
Instalação/Configuração
haru


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
haru


Dependências

You need to install libharu first to be able to use PECL/haru. PECL/haru is tested with libharu 2.0.8, older versions might or might not work for you. PECL/haru also requires PHP 5.1.3 or newer.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/haru.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
haru


Exemplos

Índice

  • Basic PECL/haru example
Constantes pré-definidas
Basic PECL/haru example
haru


Basic PECL/haru example

Exemplo #1 Fancy "Hello world"

<?php

$doc = new HaruDoc;

$doc->setPageMode(HaruDoc::PAGE_MODE_USE_THUMBS); /* show thumbnails */

$page = $doc->addPage(); /* add page to the document */
$page->setSize(HaruPage::SIZE_A4, HaruPage::LANDSCAPE); /* set the page to use A4 landscape format */

$courier = $doc->getFont("Courier-Bold"); /* we'll use the bundled font a few lines below */

$page->setRGBStroke(0, 0, 0); /* set colors */
$page->setRGBFill(0.7, 0.8, 0.9);
$page->rectangle(150, 150, 550, 250); /* draw a rectangle */

$page->fillStroke(); /* fill and stroke it */

$page->setDash(array(3, 3), 0); /* set dash style for lines at this page */
$page->setFontAndSize($courier, 60); /* set font and size */

$page->setRGBStroke(0.5, 0.5, 0.1); /* set line color */
$page->setRGBFill(1, 1, 1); /* set filling color */

$page->setTextRenderingMode(HaruPage::FILL_THEN_STROKE); /* fill and stroke text */

/* print the text */
$page->beginText();
$page->textOut(210, 270, "Hello World!");
$page->endText();

$doc->save("/tmp/test.pdf"); /* save the document into a file */

?>

Open the result document in your favourite PDF viewer and you should see a light-blue rectangle and white "Hello World!" on it.

Exemplos
Builtin Fonts And Encodings
Exemplos


Builtin Fonts And Encodings

Índice

  • Builtin Fonts
  • Builtin Encodings
Basic PECL/haru example
Builtin Fonts
haru


Builtin Fonts

These Base14 fonts are built-in into PDF and all viewers can display them. Using these fonts may decrease the size of the result file and make the processing faster, avoiding loading external fonts. However the fonts support only latin1 character set and you have to load external fonts if you need to use an other character set.

The Base14 fonts:

  • Courier

  • Courier-Bold

  • Courier-Oblique

  • Courier-BoldOblique

  • Helvetica

  • Helvetica-Bold

  • Helvetica-Oblique

  • Helvetica-BoldOblique

  • Times-Roman

  • Times-Bold

  • Times-Italic

  • Times-BoldItalic

  • Symbol

  • ZapfDingbats

Builtin Fonts And Encodings
Builtin Encodings
Builtin Fonts And Encodings


Builtin Encodings

Single-byte character set encodings
Name | Description
StandardEncoding | The default encoding of PDF.
MacRomanEncoding | The standard encoding of Mac OS.
WinAnsiEncoding | The standard encoding of Windows.
FontSpecific | The font built-in encoding.
ISO8859-2 | Latin2 (East European)
ISO8859-3 | Latin3 (South European)
ISO8859-4 | Latin4 (North European)
ISO8859-5 | Cyrillic
ISO8859-6 | Arabic
ISO8859-7 | Greek
ISO8859-8 | Hebrew
ISO8859-9 | Latin5 (Turkish)
ISO8859-10 | Latin6 (Nordic)
ISO8859-11 | Thai
ISO8859-13 | Latin7 (Baltic Rim)
ISO8859-14 | Latin8 (Celtic)
ISO8859-15 | Latin9
ISO8859-16 | Latin10
CP1250 | MS Windows Codepage 1250.
CP1251 | MS Windows Codepage 1251.
CP1252 | MS Windows Codepage 1252.
CP1253 | MS Windows Codepage 1253.
CP1254 | MS Windows Codepage 1254.
CP1255 | MS Windows Codepage 1255.
CP1256 | MS Windows Codepage 1256.
CP1257 | MS Windows Codepage 1257.
CP1258 | MS Windows Codepage 1258.
KOI8-R | Cyrillic character set.
Multi-byte character set encodings
Name | Description
GB-EUC-H | EUC-CN encoding.
GB-EUC-V | Vertical writing version of GB-EUC-H.
GBK-EUC-H | Microsoft Code Page 936 (lfCharSet 0x86) GBK encoding.
GBK-EUC-V | Vertical writing version of GBK-EUC-H.
ETen-B5-H | Microsoft Code Page 950 (lfCharSet 0x88) Big Five character set with ETen extensions.
ETen-B5-V | Vertical writing version of ETen-B5-H.
90ms-RKSJ-H | Microsoft Code Page 932, JIS X 0208 character.
90ms-RKSJ-V | Vertical writing version of 90ms-RKSJ-V.
90msp-RKSJ-H | Microsoft Code Page 932, JIS X 0208 character (proportional).
EUC-H | JIS X 0208 character set, EUC-JP encoding.
EUC-V | Vertical writing version of EUC-H.
KSC-EUC-H | KS X 1001:1992 character set, EUC-KR encoding.
KSC-EUC-V | Vertical writing version of KSC-EUC-V.
KSCms-UHC-H | Microsoft Code Page 949 (lfCharSet 0x81), KS X 1001:1992 character set plus 8822 additional hangul, Unified Hangul Code (UHC) encoding (proportional).
KSCms-UHC-HW-H | Microsoft Code Page 949 (lfCharSet 0x81), KS X 1001:1992 character set plus 8822 additional hangul, Unified Hangul Code (UHC) encoding (fixed width).
KSCms-UHC-HW-V | Vertical writing version of KSCms-UHC-HW-H.
Builtin Fonts
HaruException
Builtin Fonts And Encodings


The HaruException class

Introdução

Haru PDF Exception Class.

Sinopse da classe

HaruException extends Exception {
/* Inherits */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
Builtin Encodings
HaruDoc
haru


The HaruDoc class

Introdução

Haru PDF Document Class.

Sinopse da classe

HaruDoc {
/* Methods */
object addPage ( void )
bool addPageLabel ( int $first_page , int $style , int $first_num [, string $prefix = "" ] )
void __construct ( void )
object createOutline ( string $title [, object $parent_outline [, object $encoder ]] )
object getCurrentEncoder ( void )
object getCurrentPage ( void )
object getEncoder ( string $encoding )
object getFont ( string $fontname [, string $encoding ] )
string getInfoAttr ( int $type )
int getPageLayout ( void )
int getPageMode ( void )
int getStreamSize ( void )
object insertPage ( object $page )
object loadJPEG ( string $filename )
object loadPNG ( string $filename [, bool $deferred = false ] )
object loadRaw ( string $filename , int $width , int $height , int $color_space )
string loadTTC ( string $fontfile , int $index [, bool $embed = false ] )
string loadTTF ( string $fontfile [, bool $embed = false ] )
string loadType1 ( string $afmfile [, string $pfmfile ] )
bool output ( void )
string readFromStream ( int $bytes )
bool resetError ( void )
bool resetStream ( void )
bool save ( string $file )
bool saveToStream ( void )
bool setCompressionMode ( int $mode )
bool setCurrentEncoder ( string $encoding )
bool setEncryptionMode ( int $mode [, int $key_len = 5 ] )
bool setInfoAttr ( int $type , string $info )
bool setInfoDateAttr ( int $type , int $year , int $month , int $day , int $hour , int $min , int $sec , string $ind , int $off_hour , int $off_min )
bool setOpenAction ( object $destination )
bool setPageLayout ( int $layout )
bool setPageMode ( int $mode )
bool setPagesConfiguration ( int $page_per_pages )
bool setPassword ( string $owner_password , string $user_password )
bool setPermission ( int $permission )
bool useCNSEncodings ( void )
bool useCNSFonts ( void )
bool useCNTEncodings ( void )
bool useCNTFonts ( void )
bool useJPEncodings ( void )
bool useJPFonts ( void )
bool useKREncodings ( void )
bool useKRFonts ( void )
}

Constantes pré-definidas

Type | Name | Description
int | HaruDoc::CS_DEVICE_GRAY |
int | HaruDoc::CS_DEVICE_RGB |
int | HaruDoc::CS_DEVICE_CMYK |
int | HaruDoc::CS_CAL_GRAY |
int | HaruDoc::CS_CAL_RGB |
int | HaruDoc::CS_LAB |
int | HaruDoc::CS_ICC_BASED |
int | HaruDoc::CS_SEPARATION |
int | HaruDoc::CS_DEVICE_N |
int | HaruDoc::CS_INDEXED |
int | HaruDoc::CS_PATTERN |
int | HaruDoc::ENABLE_READ |
int | HaruDoc::ENABLE_PRINT |
int | HaruDoc::ENABLE_EDIT_ALL |
int | HaruDoc::ENABLE_COPY |
int | HaruDoc::ENABLE_EDIT |
int | HaruDoc::ENCRYPT_R2 |
int | HaruDoc::ENCRYPT_R3 |
int | HaruDoc::INFO_AUTHOR |
int | HaruDoc::INFO_CREATOR |
int | HaruDoc::INFO_TITLE |
int | HaruDoc::INFO_SUBJECT |
int | HaruDoc::INFO_KEYWORDS |
int | HaruDoc::INFO_CREATION_DATE |
int | HaruDoc::INFO_MOD_DATE |
int | HaruDoc::COMP_NONE |
int | HaruDoc::COMP_TEXT |
int | HaruDoc::COMP_IMAGE |
int | HaruDoc::COMP_METADATA |
int | HaruDoc::COMP_ALL |
int | HaruDoc::PAGE_LAYOUT_SINGLE |
int | HaruDoc::PAGE_LAYOUT_ONE_COLUMN |
int | HaruDoc::PAGE_LAYOUT_TWO_COLUMN_LEFT |
int | HaruDoc::PAGE_LAYOUT_TWO_COLUMN_RIGHT |
int | HaruDoc::PAGE_MODE_USE_NONE |
int | HaruDoc::PAGE_MODE_USE_OUTLINE |
int | HaruDoc::PAGE_MODE_USE_THUMBS |
int | HaruDoc::PAGE_MODE_FULL_SCREEN |

Índice

  • HaruDoc::addPage — Add new page to the document
  • HaruDoc::addPageLabel — Set the numbering style for the specified range of pages
  • HaruDoc::__construct — Construct new HaruDoc instance
  • HaruDoc::createOutline — Create a HaruOutline instance
  • HaruDoc::getCurrentEncoder — Get HaruEncoder currently used in the document
  • HaruDoc::getCurrentPage — Return current page of the document
  • HaruDoc::getEncoder — Get HaruEncoder instance for the specified encoding
  • HaruDoc::getFont — Get HaruFont instance
  • HaruDoc::getInfoAttr — Get current value of the specified document attribute
  • HaruDoc::getPageLayout — Get current page layout
  • HaruDoc::getPageMode — Get current page mode
  • HaruDoc::getStreamSize — Get the size of the temporary stream
  • HaruDoc::insertPage — Insert new page just before the specified page
  • HaruDoc::loadJPEG — Load a JPEG image
  • HaruDoc::loadPNG — Load PNG image and return HaruImage instance
  • HaruDoc::loadRaw — Load a RAW image
  • HaruDoc::loadTTC — Load the font with the specified index from TTC file
  • HaruDoc::loadTTF — Load TTF font file
  • HaruDoc::loadType1 — Load Type1 font
  • HaruDoc::output — Write the document data to the output buffer
  • HaruDoc::readFromStream — Read data from the temporary stream
  • HaruDoc::resetError — Reset error state of the document handle
  • HaruDoc::resetStream — Rewind the temporary stream
  • HaruDoc::save — Save the document into the specified file
  • HaruDoc::saveToStream — Save the document into a temporary stream
  • HaruDoc::setCompressionMode — Set compression mode for the document
  • HaruDoc::setCurrentEncoder — Set the current encoder for the document
  • HaruDoc::setEncryptionMode — Set encryption mode for the document
  • HaruDoc::setInfoAttr — Set the info attribute of the document
  • HaruDoc::setInfoDateAttr — Set the datetime info attributes of the document
  • HaruDoc::setOpenAction — Define which page is shown when the document is opened
  • HaruDoc::setPageLayout — Set how pages should be displayed
  • HaruDoc::setPageMode — Set how the document should be displayed
  • HaruDoc::setPagesConfiguration — Set the number of pages per set of pages
  • HaruDoc::setPassword — Set owner and user passwords for the document
  • HaruDoc::setPermission — Set permissions for the document
  • HaruDoc::useCNSEncodings — Enable Chinese simplified encodings
  • HaruDoc::useCNSFonts — Enable builtin Chinese simplified fonts
  • HaruDoc::useCNTEncodings — Enable Chinese traditional encodings
  • HaruDoc::useCNTFonts — Enable builtin Chinese traditional fonts
  • HaruDoc::useJPEncodings — Enable Japanese encodings
  • HaruDoc::useJPFonts — Enable builtin Japanese fonts
  • HaruDoc::useKREncodings — Enable Korean encodings
  • HaruDoc::useKRFonts — Enable builtin Korean fonts
HaruException
HaruDoc::addPage
haru


Add new page to the document

HaruDoc
HaruDoc::addPageLabel
HaruDoc
PHP Manual

HaruDoc::addPage

(PECL haru >= 0.0.1)

HaruDoc::addPage — Add new page to the document

Descrição

object HaruDoc::addPage ( void )

Adds a new page to the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a new HaruPage instance.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::insertPage() - Insert new page just before the specified page

HaruDoc
HaruDoc::addPageLabel
HaruDoc


Set the numbering style for the specified range of pages

HaruDoc::addPage
HaruDoc::__construct
HaruDoc
PHP Manual

HaruDoc::addPageLabel

(PECL haru >= 0.0.1)

HaruDoc::addPageLabel — Set the numbering style for the specified range of pages

Descrição

bool HaruDoc::addPageLabel ( int $first_page , int $style , int $first_num [, string $prefix = "" ] )

Set the numbering style for the specified range of pages.

Parâmetros

first_page

The first page included into the labeling range.

style

The numbering style. The following values are allowed:

  • HaruPage::NUM_STYLE_DECIMAL - page label is displayed using decimal numerals.
  • HaruPage::NUM_STYLE_UPPER_ROMAN - page label is displayed using uppercase Roman numerals.
  • HaruPage::NUM_STYLE_LOWER_ROMAN - page label is displayed using lowercase Roman numerals.
  • HaruPage::NUM_STYLE_UPPER_LETTER - page label is displayed using uppercase letters (from A to Z).
  • HaruPage::NUM_STYLE_LOWER_LETTERS - page label is displayed using lowercase letters (from a to z).

first_num

The first page number in this range.

prefix

The prefix for the page label.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDoc::addPage
HaruDoc::__construct
HaruDoc


Construct new HaruDoc instance

HaruDoc::addPageLabel
HaruDoc::createOutline
HaruDoc
PHP Manual

HaruDoc::__construct

(PECL haru >= 0.0.1)

HaruDoc::__construct — Construct new HaruDoc instance

Descrição

void HaruDoc::__construct ( void )

Constructs new HaruDoc instance.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Joga um HaruException em erro.

HaruDoc::addPageLabel
HaruDoc::createOutline
HaruDoc


Create a HaruOutline instance

HaruDoc::__construct
HaruDoc::getCurrentEncoder
HaruDoc
PHP Manual

HaruDoc::createOutline

(PECL haru >= 0.0.1)

HaruDoc::createOutline — Create a HaruOutline instance

Descrição

object HaruDoc::createOutline ( string $title [, object $parent_outline [, object $encoder ]] )

Create a HaruOutline instance.

Parâmetros

title

The caption of new outline object.

parent_outline

A valid HaruOutline instance or NULL.

encoder

A valid HaruEncoder instance or NULL.

Valor Retornado

Returns a new HaruOutline instance.

Erros

Joga um HaruException em erro.

HaruDoc::__construct
HaruDoc::getCurrentEncoder
HaruDoc


Get HaruEncoder currently used in the document

HaruDoc::createOutline
HaruDoc::getCurrentPage
HaruDoc
PHP Manual

HaruDoc::getCurrentEncoder

(PECL haru >= 0.0.1)

HaruDoc::getCurrentEncoder — Get HaruEncoder currently used in the document

Descrição

object HaruDoc::getCurrentEncoder ( void )

Get the HaruEncoder currently used in the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns HaruEncoder currently used in the document or FALSE if encoder is not set.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setCurrentEncoder() - Set the current encoder for the document

HaruDoc::createOutline
HaruDoc::getCurrentPage
HaruDoc


Return current page of the document

HaruDoc::getCurrentEncoder
HaruDoc::getEncoder
HaruDoc
PHP Manual

HaruDoc::getCurrentPage

(PECL haru >= 0.0.1)

HaruDoc::getCurrentPage — Return current page of the document

Descrição

object HaruDoc::getCurrentPage ( void )

Get current page of the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns HaruPage instance on success or FALSE if there is no current page at the moment.

Erros

Joga um HaruException em erro.

HaruDoc::getCurrentEncoder
HaruDoc::getEncoder
HaruDoc


Get HaruEncoder instance for the specified encoding

HaruDoc::getCurrentPage
HaruDoc::getFont
HaruDoc
PHP Manual

HaruDoc::getEncoder

(PECL haru >= 0.0.1)

HaruDoc::getEncoder — Get HaruEncoder instance for the specified encoding

Descrição

object HaruDoc::getEncoder ( string $encoding )

Get the HaruEncoder instance for the specified encoding.

Parâmetros

encoding

The encoding name. See Builtin Encodings for the list of allowed values.

Valor Retornado

Returns a HaruEncoder instance for the specified encoding.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setCurrentEncoder() - Set the current encoder for the document
  • HaruDoc::getCurrentEncoder() - Get HaruEncoder currently used in the document

HaruDoc::getCurrentPage
HaruDoc::getFont
HaruDoc


Get HaruFont instance

HaruDoc::getEncoder
HaruDoc::getInfoAttr
HaruDoc
PHP Manual

HaruDoc::getFont

(PECL haru >= 0.0.1)

HaruDoc::getFont — Get HaruFont instance

Descrição

object HaruDoc::getFont ( string $fontname [, string $encoding ] )

Get a HaruFont instance.

Parâmetros

fontname

The name of the font. See Builtin Fonts for the list of builtin fonts. You can also use the name of a font loaded via HaruDoc::loadTTF(), HaruDoc::loadTTC() and HaruDoc::loadType1().

encoding

The encoding to use. See Builtin Encodings for the list of supported encodings.

Valor Retornado

Returns a HaruFont instance with the specified fontname and encoding.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setFontAndSize() - Set font and fontsize for the page
  • HaruPage::setCurrentFont()

HaruDoc::getEncoder
HaruDoc::getInfoAttr
HaruDoc


Get current value of the specified document attribute

HaruDoc::getFont
HaruDoc::getPageLayout
HaruDoc
PHP Manual

HaruDoc::getInfoAttr

(PECL haru >= 0.0.1)

HaruDoc::getInfoAttr — Get current value of the specified document attribute

Descrição

string HaruDoc::getInfoAttr ( int $type )

Get the current value of the specified document attribute.

Parâmetros

type

The type of the attribute. The following values are available:

  • HaruDoc::INFO_AUTHOR
  • HaruDoc::INFO_CREATOR
  • HaruDoc::INFO_TITLE
  • HaruDoc::INFO_SUBJECT
  • HaruDoc::INFO_KEYWORDS
  • HaruDoc::INFO_CREATION_DATE
  • HaruDoc::INFO_MOD_DATE

Valor Retornado

Returns the string value of the specified document attribute.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setInfoAttr() - Set the info attribute of the document
  • HaruDoc::setInfoDateAttr() - Set the datetime info attributes of the document

HaruDoc::getFont
HaruDoc::getPageLayout
HaruDoc


Get current page layout

HaruDoc::getInfoAttr
HaruDoc::getPageMode
HaruDoc
PHP Manual

HaruDoc::getPageLayout

(PECL haru >= 0.0.1)

HaruDoc::getPageLayout — Get current page layout

Descrição

int HaruDoc::getPageLayout ( void )

Get the current page layout. See HaruDoc::setPageLayout() for the list of possible values.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the page layout currently set in the document or FALSE if page layout was not set. See HaruDoc::setPageLayout() for the list of possible values.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setPageLayout() - Set how pages should be displayed

HaruDoc::getInfoAttr
HaruDoc::getPageMode
HaruDoc


Get current page mode

HaruDoc::getPageLayout
HaruDoc::getStreamSize
HaruDoc
PHP Manual

HaruDoc::getPageMode

(PECL haru >= 0.0.1)

HaruDoc::getPageMode — Get current page mode

Descrição

int HaruDoc::getPageMode ( void )

Get the current page mode. See HaruDoc::setPageMode() for the list of possible values.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the page mode currently set in the document. See HaruDoc::setPageMode() for the list of possible values.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setPageMode() - Set how the document should be displayed

HaruDoc::getPageLayout
HaruDoc::getStreamSize
HaruDoc


Get the size of the temporary stream

HaruDoc::getPageMode
HaruDoc::insertPage
HaruDoc
PHP Manual

HaruDoc::getStreamSize

(PECL haru >= 0.0.1)

HaruDoc::getStreamSize — Get the size of the temporary stream

Descrição

int HaruDoc::getStreamSize ( void )

Get the size of the temporary stream.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the size of the data in the temporary stream of the document. The size is zero if the document was not saved to the temporary stream.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::saveToStream() - Save the document into a temporary stream
  • HaruDoc::resetStream() - Rewind the temporary stream
  • HaruDoc::readFromStream() - Read data from the temporary stream

HaruDoc::getPageMode
HaruDoc::insertPage
HaruDoc


Insert new page just before the specified page

HaruDoc::getStreamSize
HaruDoc::loadJPEG
HaruDoc
PHP Manual

HaruDoc::insertPage

(PECL haru >= 0.0.1)

HaruDoc::insertPage — Insert new page just before the specified page

Descrição

object HaruDoc::insertPage ( object $page )

Creates a new page and inserts just before the specified page.

Parâmetros

page

A valid HaruPage instance.

Valor Retornado

Returns a new HaruPage instance.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::addPage() - Add new page to the document

HaruDoc::getStreamSize
HaruDoc::loadJPEG
HaruDoc


Load a JPEG image

HaruDoc::insertPage
HaruDoc::loadPNG
HaruDoc
PHP Manual

HaruDoc::loadJPEG

(PECL haru >= 0.0.1)

HaruDoc::loadJPEG — Load a JPEG image

Descrição

object HaruDoc::loadJPEG ( string $filename )

Loads the specified JPEG image.

Parâmetros

filename

A valid JPEG image file.

Valor Retornado

Returns a new HaruImage instance.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadPNG() - Load PNG image and return HaruImage instance
  • HaruDoc::loadRAW() - Load a RAW image

HaruDoc::insertPage
HaruDoc::loadPNG
HaruDoc


Load PNG image and return HaruImage instance

HaruDoc::loadJPEG
HaruDoc::loadRaw
HaruDoc
PHP Manual

HaruDoc::loadPNG

(PECL haru >= 0.0.1)

HaruDoc::loadPNG — Load PNG image and return HaruImage instance

Descrição

object HaruDoc::loadPNG ( string $filename [, bool $deferred = false ] )

Loads a PNG image.

Libharu might be built without libpng support, in this case each call to this function would result in exception.

Parâmetros

filename

The name of a PNG image file.

deferred

Do not load data immediately. You can set deferred parameter to TRUE for deferred data loading, in this case only size and color are loaded immediately.

Valor Retornado

Returns a HaruImage instance.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadJPEG() - Load a JPEG image
  • HaruDoc::loadRAW() - Load a RAW image

HaruDoc::loadJPEG
HaruDoc::loadRaw
HaruDoc


Load a RAW image

HaruDoc::loadPNG
HaruDoc::loadTTC
HaruDoc
PHP Manual

HaruDoc::loadRaw

(PECL haru >= 0.0.1)

HaruDoc::loadRaw — Load a RAW image

Descrição

object HaruDoc::loadRaw ( string $filename , int $width , int $height , int $color_space )

Loads a RAW image.

Parâmetros

filename

The name of a RAW image file.

width

The width of the image.

height

The height of the image.

color_space

The color space of the image. Can be one of the following values:

  • HaruDoc::CS_DEVICE_GRAY
  • HaruDoc::CS_DEVICE_RGB
  • HaruDoc::CS_DEVICE_CMYK

Valor Retornado

Returns a HaruImage instance.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadJPEG() - Load a JPEG image
  • HaruDoc::loadPNG() - Load PNG image and return HaruImage instance

HaruDoc::loadPNG
HaruDoc::loadTTC
HaruDoc


Load the font with the specified index from TTC file

HaruDoc::loadRaw
HaruDoc::loadTTF
HaruDoc
PHP Manual

HaruDoc::loadTTC

(PECL haru >= 0.0.1)

HaruDoc::loadTTC — Load the font with the specified index from TTC file

Descrição

string HaruDoc::loadTTC ( string $fontfile , int $index [, bool $embed = false ] )

Loads the TrueType font with the specified index from a TrueType collection file.

Parâmetros

fontfile

The TrueType collection file.

index

The index of the font in the collection file.

embed

When set to TRUE, the glyph data of the font is embedded into the PDF file, otherwise only the matrix data is included.

Valor Retornado

Returns the name of the loaded font on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadTTF() - Load TTF font file
  • HaruDoc::loadType1() - Load Type1 font

HaruDoc::loadRaw
HaruDoc::loadTTF
HaruDoc


Load TTF font file

HaruDoc::loadTTC
HaruDoc::loadType1
HaruDoc
PHP Manual

HaruDoc::loadTTF

(PECL haru >= 0.0.1)

HaruDoc::loadTTF — Load TTF font file

Descrição

string HaruDoc::loadTTF ( string $fontfile [, bool $embed = false ] )

Loads the given TTF file and (optionally) embed its data into the document.

Parâmetros

fontfile

The TTF file to load.

embed

When set to TRUE, the glyph data of the font is embedded into the PDF file, otherwise only the matrix data is included.

Valor Retornado

Returns the name of the loaded font on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadTTC() - Load the font with the specified index from TTC file
  • HaruDoc::loadType1() - Load Type1 font

HaruDoc::loadTTC
HaruDoc::loadType1
HaruDoc


Load Type1 font

HaruDoc::loadTTF
HaruDoc::output
HaruDoc
PHP Manual

HaruDoc::loadType1

(PECL haru >= 0.0.1)

HaruDoc::loadType1 — Load Type1 font

Descrição

string HaruDoc::loadType1 ( string $afmfile [, string $pfmfile ] )

Loads Type1 font from the given file and registers it in the PDF document.

Parâmetros

afmfile

Path to an AFM file.

pfmfile

Path to a PFA/PFB file, optional. If it's not set only the glyph data of the font is embedded into the PDF document.

Valor Retornado

Returns the name of the loaded font on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::loadTTC() - Load the font with the specified index from TTC file
  • HaruDoc::loadTTF() - Load TTF font file

HaruDoc::loadTTF
HaruDoc::output
HaruDoc


Write the document data to the output buffer

HaruDoc::loadType1
HaruDoc::readFromStream
HaruDoc
PHP Manual

HaruDoc::output

(PECL haru >= 0.0.1)

HaruDoc::output — Write the document data to the output buffer

Descrição

bool HaruDoc::output ( void )

Writes the document data into standard output.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::save() - Save the document into the specified file

HaruDoc::loadType1
HaruDoc::readFromStream
HaruDoc


Read data from the temporary stream

HaruDoc::output
HaruDoc::resetError
HaruDoc
PHP Manual

HaruDoc::readFromStream

(PECL haru >= 0.0.1)

HaruDoc::readFromStream — Read data from the temporary stream

Descrição

string HaruDoc::readFromStream ( int $bytes )

Read data from the temporary stream.

Parâmetros

bytes

The bytes parameter specifies how many bytes to read, though the stream may contain less bytes than requested.

Valor Retornado

Returns data from the temporary stream.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::saveToStream() - Save the document into a temporary stream
  • HaruDoc::resetStream() - Rewind the temporary stream
  • HaruDoc::getStreamSize() - Get the size of the temporary stream

HaruDoc::output
HaruDoc::resetError
HaruDoc


Reset error state of the document handle

HaruDoc::readFromStream
HaruDoc::resetStream
HaruDoc
PHP Manual

HaruDoc::resetError

(PECL haru >= 0.0.1)

HaruDoc::resetError — Reset error state of the document handle

Descrição

bool HaruDoc::resetError ( void )

Once an error code is set, most of the operations, including I/O processing functions cannot be performed. In case if you want to continue after the cause of the error has been fixed, you have to invoke this function in order to reset the document error state.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Always succeeds and returns TRUE.

HaruDoc::readFromStream
HaruDoc::resetStream
HaruDoc


Rewind the temporary stream

HaruDoc::resetError
HaruDoc::save
HaruDoc
PHP Manual

HaruDoc::resetStream

(PECL haru >= 0.0.1)

HaruDoc::resetStream — Rewind the temporary stream

Descrição

bool HaruDoc::resetStream ( void )

Rewinds the temporary stream of the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::saveToStream() - Save the document into a temporary stream
  • HaruDoc::getStreamSize() - Get the size of the temporary stream
  • HaruDoc::readFromStream() - Read data from the temporary stream

HaruDoc::resetError
HaruDoc::save
HaruDoc


Save the document into the specified file

HaruDoc::resetStream
HaruDoc::saveToStream
HaruDoc
PHP Manual

HaruDoc::save

(PECL haru >= 0.0.1)

HaruDoc::save — Save the document into the specified file

Descrição

bool HaruDoc::save ( string $file )

Saves the document into the specified file.

Parâmetros

file

The file to save the document to.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::output() - Write the document data to the output buffer

HaruDoc::resetStream
HaruDoc::saveToStream
HaruDoc


Save the document into a temporary stream

HaruDoc::save
HaruDoc::setCompressionMode
HaruDoc
PHP Manual

HaruDoc::saveToStream

(PECL haru >= 0.0.1)

HaruDoc::saveToStream — Save the document into a temporary stream

Descrição

bool HaruDoc::saveToStream ( void )

Saves the document data into a temporary stream.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::resetStream() - Rewind the temporary stream
  • HaruDoc::getStreamSize() - Get the size of the temporary stream
  • HaruDoc::readFromStream() - Read data from the temporary stream

HaruDoc::save
HaruDoc::setCompressionMode
HaruDoc


Set compression mode for the document

HaruDoc::saveToStream
HaruDoc::setCurrentEncoder
HaruDoc
PHP Manual

HaruDoc::setCompressionMode

(PECL haru >= 0.0.1)

HaruDoc::setCompressionMode — Set compression mode for the document

Descrição

bool HaruDoc::setCompressionMode ( int $mode )

Defines compression mode for the document. In case when libharu was compiled without Zlib support this function will always throw HaruException.

Parâmetros

mode

The compression mode to use. The value is a combination of the following flags:

  • HaruDoc::COMP_NONE - all contents is not compressed.
  • HaruDoc::COMP_TEXT - compress the text data.
  • HaruDoc::COMP_IMAGE - compress the image data.
  • HaruDoc::COMP_METADATA - compress other data (fonts, cmaps).
  • HaruDoc::COMP_ALL - compress all data.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDoc::saveToStream
HaruDoc::setCurrentEncoder
HaruDoc


Set the current encoder for the document

HaruDoc::setCompressionMode
HaruDoc::setEncryptionMode
HaruDoc
PHP Manual

HaruDoc::setCurrentEncoder

(PECL haru >= 0.0.1)

HaruDoc::setCurrentEncoder — Set the current encoder for the document

Descrição

bool HaruDoc::setCurrentEncoder ( string $encoding )

Defines the encoder currently used in the document.

Parâmetros

encoding

The name of the encoding to use. See Builtin Encodings for the list of allowed values.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDoc::setCompressionMode
HaruDoc::setEncryptionMode
HaruDoc


Set encryption mode for the document

HaruDoc::setCurrentEncoder
HaruDoc::setInfoAttr
HaruDoc
PHP Manual

HaruDoc::setEncryptionMode

(PECL haru >= 0.0.1)

HaruDoc::setEncryptionMode — Set encryption mode for the document

Descrição

bool HaruDoc::setEncryptionMode ( int $mode [, int $key_len = 5 ] )

Defines encryption mode for the document. The encryption mode cannot be set before setting the password.

Parâmetros

mode

The encryption mode to use. Can be one of the following:

  • HaruDoc::ENCRYPT_R2 - use "revision2" algorithm.
  • HaruDoc::ENCRYPT_R3 - use "revision3" algorithm. Using this value bumps the version of PDF to 1.4.

key_len

The encryption key length in bytes. This parameter is optional and used only when mode is HaruDoc::ENCRYPT_R3. The default value is 5 (40bit).

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setPassword() - Set owner and user passwords for the document
  • HaruDoc::setPermission() - Set permissions for the document

HaruDoc::setCurrentEncoder
HaruDoc::setInfoAttr
HaruDoc


Set the info attribute of the document

HaruDoc::setEncryptionMode
HaruDoc::setInfoDateAttr
HaruDoc
PHP Manual

HaruDoc::setInfoAttr

(PECL haru >= 0.0.1)

HaruDoc::setInfoAttr — Set the info attribute of the document

Descrição

bool HaruDoc::setInfoAttr ( int $type , string $info )

Defines an info attribute. Uses the current encoding of the document.

Parâmetros

type

The type of the attribute. Can be one of the following:

  • HaruDoc::INFO_AUTHOR
  • HaruDoc::INFO_CREATOR
  • HaruDoc::INFO_TITLE
  • HaruDoc::INFO_SUBJECT
  • HaruDoc::INFO_KEYWORDS

info

The value of the attribute.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setInfoDateAttr() - Set the datetime info attributes of the document

HaruDoc::setEncryptionMode
HaruDoc::setInfoDateAttr
HaruDoc


Set the datetime info attributes of the document

HaruDoc::setInfoAttr
HaruDoc::setOpenAction
HaruDoc
PHP Manual

HaruDoc::setInfoDateAttr

(PECL haru >= 0.0.1)

HaruDoc::setInfoDateAttr — Set the datetime info attributes of the document

Descrição

bool HaruDoc::setInfoDateAttr ( int $type , int $year , int $month , int $day , int $hour , int $min , int $sec , string $ind , int $off_hour , int $off_min )

Sets the datetime info attributes of the document.

Parâmetros

type

The type of the attribute. Can be one of the following:

  • HaruDoc::INFO_CREATION_DATE
  • HaruDoc::INFO_MOD_DATE

year

month

Between 1 and 12.

day

Between 1 and 31, 30, 29 or 28 (different for each month).

hour

Between 0 and 23.

min

Between 0 and 59.

sec

Between 0 and 59.

ind

The timezone relation to UTC, can be "", " ", "+", "-" and "Z".

off_hour

If ind is not " " or "", values between 0 and 23 are valid. Otherwise, this parameter is ignored.

off_min

If ind is not " " or "", values between 0 and 59 are valid. Otherwise, this parameter is ignored.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setInfoAttr() - Set the info attribute of the document

HaruDoc::setInfoAttr
HaruDoc::setOpenAction
HaruDoc


Define which page is shown when the document is opened

HaruDoc::setInfoDateAttr
HaruDoc::setPageLayout
HaruDoc
PHP Manual

HaruDoc::setOpenAction

(PECL haru >= 0.0.1)

HaruDoc::setOpenAction — Define which page is shown when the document is opened

Descrição

bool HaruDoc::setOpenAction ( object $destination )

Defines which page should be shown when the document is opened.

Parâmetros

destination

A valid HaruDestination instance.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDoc::setInfoDateAttr
HaruDoc::setPageLayout
HaruDoc


Set how pages should be displayed

HaruDoc::setOpenAction
HaruDoc::setPageMode
HaruDoc
PHP Manual

HaruDoc::setPageLayout

(PECL haru >= 0.0.1)

HaruDoc::setPageLayout — Set how pages should be displayed

Descrição

bool HaruDoc::setPageLayout ( int $layout )

Defines how pages should be displayed.

Parâmetros

layout

The following values are accepted:

  • HaruDoc::PAGE_LAYOUT_SINGLE - only one page is displayed.
  • HaruDoc::PAGE_LAYOUT_ONE_COLUMN - display the pages in one column.
  • HaruDoc::PAGE_LAYOUT_TWO_COLUMN_LEFT - display pages in two columns, first page left.
  • HaruDoc::PAGE_LAYOUT_TWO_COLUMN_RIGHT - display pages in two columns, first page right.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::getPageLayout() - Get current page layout

HaruDoc::setOpenAction
HaruDoc::setPageMode
HaruDoc


Set how the document should be displayed

HaruDoc::setPageLayout
HaruDoc::setPagesConfiguration
HaruDoc
PHP Manual

HaruDoc::setPageMode

(PECL haru >= 0.0.1)

HaruDoc::setPageMode — Set how the document should be displayed

Descrição

bool HaruDoc::setPageMode ( int $mode )

Defines how the document should be displayed.

Parâmetros

mode

The following values are accepted:

  • HaruDoc::PAGE_MODE_USE_NONE - display the document with neither outline nor thumbnail.
  • HaruDoc::PAGE_MODE_USE_OUTLINE - display the document with outline pane.
  • HaruDoc::PAGE_MODE_USE_THUMBS - display the document with thumbnail pane.
  • HaruDoc::PAGE_MODE_FULL_SCREEN - display the document with full screen mode.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::getPageMode() - Get current page mode

HaruDoc::setPageLayout
HaruDoc::setPagesConfiguration
HaruDoc


Set the number of pages per set of pages

HaruDoc::setPageMode
HaruDoc::setPassword
HaruDoc
PHP Manual

HaruDoc::setPagesConfiguration

(PECL haru >= 0.0.1)

HaruDoc::setPagesConfiguration — Set the number of pages per set of pages

Descrição

bool HaruDoc::setPagesConfiguration ( int $page_per_pages )

By default the document has one pages object as a root for all pages. All page objects are create as branches of this object. One pages object can contain only 8191, therefore the maximum number of pages per document is 8191. But you can change that fact by setting page_per_pages parameter, so that the root pages object contains 8191 more pages (not page) objects, which in turn contain 8191 pages each. So the maximum number of pages in the document becomes 8191*page_per_pages.

Parâmetros

page_per_pages

The numbers of pages that a pages object can contain.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDoc::setPageMode
HaruDoc::setPassword
HaruDoc


Set owner and user passwords for the document

HaruDoc::setPagesConfiguration
HaruDoc::setPermission
HaruDoc
PHP Manual

HaruDoc::setPassword

(PECL haru >= 0.0.1)

HaruDoc::setPassword — Set owner and user passwords for the document

Descrição

bool HaruDoc::setPassword ( string $owner_password , string $user_password )

Defines owner and user passwords for the document. Setting the passwords makes the document contents encrypted.

Parâmetros

owner_password

The password of the owner, which can change permissions of the document. Empty password is not accepted. Owner's password cannot be the same as the user's password.

user_password

The password of the user. Can be empty.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setEncryptionMode() - Set encryption mode for the document
  • HaruDoc::setPermission() - Set permissions for the document

HaruDoc::setPagesConfiguration
HaruDoc::setPermission
HaruDoc


Set permissions for the document

HaruDoc::setPassword
HaruDoc::useCNSEncodings
HaruDoc
PHP Manual

HaruDoc::setPermission

(PECL haru >= 0.0.1)

HaruDoc::setPermission — Set permissions for the document

Descrição

bool HaruDoc::setPermission ( int $permission )

Defines permissions for the document.

Parâmetros

permission

The values is a combination of these flags:

  • HaruDoc::ENABLE_READ - user can read the document.
  • HaruDoc::ENABLE_PRINT - user can print the document.
  • HaruDoc::ENABLE_EDIT_ALL - user can edit the contents of the document other than annotations and form fields.
  • HaruDoc::ENABLE_COPY - user can copy the text and the graphics of the document.
  • HaruDoc::ENABLE_EDIT - user can add or modify the annotations and form fields of the document.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::setPassword() - Set owner and user passwords for the document
  • HaruDoc::setEncryptionMode() - Set encryption mode for the document

HaruDoc::setPassword
HaruDoc::useCNSEncodings
HaruDoc


Enable Chinese simplified encodings

HaruDoc::setPermission
HaruDoc::useCNSFonts
HaruDoc
PHP Manual

HaruDoc::useCNSEncodings

(PECL haru >= 0.0.1)

HaruDoc::useCNSEncodings — Enable Chinese simplified encodings

Descrição

bool HaruDoc::useCNSEncodings ( void )

Enables Chinese simplified encodings.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useCNSFonts() - Enable builtin Chinese simplified fonts

HaruDoc::setPermission
HaruDoc::useCNSFonts
HaruDoc


Enable builtin Chinese simplified fonts

HaruDoc::useCNSEncodings
HaruDoc::useCNTEncodings
HaruDoc
PHP Manual

HaruDoc::useCNSFonts

(PECL haru >= 0.0.1)

HaruDoc::useCNSFonts — Enable builtin Chinese simplified fonts

Descrição

bool HaruDoc::useCNSFonts ( void )

Enables builtin Chinese simplified fonts.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useCNSEncodings() - Enable Chinese simplified encodings

HaruDoc::useCNSEncodings
HaruDoc::useCNTEncodings
HaruDoc


Enable Chinese traditional encodings

HaruDoc::useCNSFonts
HaruDoc::useCNTFonts
HaruDoc
PHP Manual

HaruDoc::useCNTEncodings

(PECL haru >= 0.0.1)

HaruDoc::useCNTEncodings — Enable Chinese traditional encodings

Descrição

bool HaruDoc::useCNTEncodings ( void )

Enables Chinese traditional encodings.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useCNTFonts() - Enable builtin Chinese traditional fonts

HaruDoc::useCNSFonts
HaruDoc::useCNTFonts
HaruDoc


Enable builtin Chinese traditional fonts

HaruDoc::useCNTEncodings
HaruDoc::useJPEncodings
HaruDoc
PHP Manual

HaruDoc::useCNTFonts

(PECL haru >= 0.0.1)

HaruDoc::useCNTFonts — Enable builtin Chinese traditional fonts

Descrição

bool HaruDoc::useCNTFonts ( void )

Enables builtin Chinese traditional fonts.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useCNTEncodings() - Enable Chinese traditional encodings

HaruDoc::useCNTEncodings
HaruDoc::useJPEncodings
HaruDoc


Enable Japanese encodings

HaruDoc::useCNTFonts
HaruDoc::useJPFonts
HaruDoc
PHP Manual

HaruDoc::useJPEncodings

(PECL haru >= 0.0.1)

HaruDoc::useJPEncodings — Enable Japanese encodings

Descrição

bool HaruDoc::useJPEncodings ( void )

Enables Japanese encodings.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useJPFonts() - Enable builtin Japanese fonts

HaruDoc::useCNTFonts
HaruDoc::useJPFonts
HaruDoc


Enable builtin Japanese fonts

HaruDoc::useJPEncodings
HaruDoc::useKREncodings
HaruDoc
PHP Manual

HaruDoc::useJPFonts

(PECL haru >= 0.0.1)

HaruDoc::useJPFonts — Enable builtin Japanese fonts

Descrição

bool HaruDoc::useJPFonts ( void )

Enables builtin Japanese fonts.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useJPEncodings() - Enable Japanese encodings

HaruDoc::useJPEncodings
HaruDoc::useKREncodings
HaruDoc


Enable Korean encodings

HaruDoc::useJPFonts
HaruDoc::useKRFonts
HaruDoc
PHP Manual

HaruDoc::useKREncodings

(PECL haru >= 0.0.1)

HaruDoc::useKREncodings — Enable Korean encodings

Descrição

bool HaruDoc::useKREncodings ( void )

Enables Korean encodings.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useKRFonts() - Enable builtin Korean fonts

HaruDoc::useJPFonts
HaruDoc::useKRFonts
HaruDoc


Enable builtin Korean fonts

HaruDoc::useKREncodings
HaruPage
HaruDoc
PHP Manual

HaruDoc::useKRFonts

(PECL haru >= 0.0.1)

HaruDoc::useKRFonts — Enable builtin Korean fonts

Descrição

bool HaruDoc::useKRFonts ( void )

Enables builtin Korean fonts.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::useKREncodings() - Enable Korean encodings

HaruDoc::useKREncodings
HaruPage
HaruDoc


The HaruPage class

Introdução

Haru PDF Page Class.

Sinopse da classe

HaruPage {
/* Methods */
bool arc ( float $x , float $y , float $ray , float $ang1 , float $ang2 )
bool beginText ( void )
bool circle ( float $x , float $y , float $ray )
bool closePath ( void )
bool concat ( float $a , float $b , float $c , float $d , float $x , float $y )
object createDestination ( void )
object createLinkAnnotation ( array $rectangle , object $destination )
object createTextAnnotation ( array $rectangle , string $text [, object $encoder ] )
object createURLAnnotation ( array $rectangle , string $url )
bool curveTo2 ( float $x2 , float $y2 , float $x3 , float $y3 )
bool curveTo3 ( float $x1 , float $y1 , float $x3 , float $y3 )
bool curveTo ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )
bool drawImage ( object $image , float $x , float $y , float $width , float $height )
bool ellipse ( float $x , float $y , float $xray , float $yray )
bool endPath ( void )
bool endText ( void )
bool eofill ( void )
bool eoFillStroke ([ bool $close_path = false ] )
bool fill ( void )
bool fillStroke ([ bool $close_path = false ] )
float getCharSpace ( void )
array getCMYKFill ( void )
array getCMYKStroke ( void )
object getCurrentFont ( void )
float getCurrentFontSize ( void )
array getCurrentPos ( void )
array getCurrentTextPos ( void )
array getDash ( void )
int getFillingColorSpace ( void )
float getFlatness ( void )
int getGMode ( void )
float getGrayFill ( void )
float getGrayStroke ( void )
float getHeight ( void )
float getHorizontalScaling ( void )
int getLineCap ( void )
int getLineJoin ( void )
float getLineWidth ( void )
float getMiterLimit ( void )
array getRGBFill ( void )
array getRGBStroke ( void )
int getStrokingColorSpace ( void )
float getTextLeading ( void )
array getTextMatrix ( void )
int getTextRenderingMode ( void )
float getTextRise ( void )
float getTextWidth ( string $text )
array getTransMatrix ( void )
float getWidth ( void )
float getWordSpace ( void )
bool lineTo ( float $x , float $y )
int measureText ( string $text , float $width [, bool $wordwrap = false ] )
bool moveTextPos ( float $x , float $y [, bool $set_leading = false ] )
bool moveTo ( float $x , float $y )
bool moveToNextLine ( void )
bool rectangle ( float $x , float $y , float $width , float $height )
bool setCharSpace ( float $char_space )
bool setCMYKFill ( float $c , float $m , float $y , float $k )
bool setCMYKStroke ( float $c , float $m , float $y , float $k )
bool setDash ( array $pattern , int $phase )
bool setFlatness ( float $flatness )
bool setFontAndSize ( object $font , float $size )
bool setGrayFill ( float $value )
bool setGrayStroke ( float $value )
bool setHeight ( float $height )
bool setHorizontalScaling ( float $scaling )
bool setLineCap ( int $cap )
bool setLineJoin ( int $join )
bool setLineWidth ( float $width )
bool setMiterLimit ( float $limit )
bool setRGBFill ( float $r , float $g , float $b )
bool setRGBStroke ( float $r , float $g , float $b )
bool setRotate ( int $angle )
bool setSize ( int $size , int $direction )
bool setSlideShow ( int $type , float $disp_time , float $trans_time )
bool setTextLeading ( float $text_leading )
bool setTextMatrix ( float $a , float $b , float $c , float $d , float $x , float $y )
bool setTextRenderingMode ( int $mode )
bool setTextRise ( float $rise )
bool setWidth ( float $width )
bool setWordSpace ( float $word_space )
bool showText ( string $text )
bool showTextNextLine ( string $text [, float $word_space = 0 [, float $char_space = 0 ]] )
bool stroke ([ bool $close_path = false ] )
bool textOut ( float $x , float $y , string $text )
bool textRect ( float $left , float $top , float $right , float $bottom , string $text [, int $align = HaruPage::TALIGN_LEFT ] )
}

Constantes pré-definidas

Type | Name | Description
int | HaruPage::GMODE_PAGE_DESCRIPTION |
int | HaruPage::GMODE_TEXT_OBJECT |
int | HaruPage::GMODE_PATH_OBJECT |
int | HaruPage::GMODE_CLIPPING_PATH |
int | HaruPage::GMODE_SHADING |
int | HaruPage::GMODE_INLINE_IMAGE |
int | HaruPage::GMODE_EXTERNAL_OBJECT |
int | HaruPage::BUTT_END |
int | HaruPage::ROUND_END |
int | HaruPage::PROJECTING_SCUARE_END |
int | HaruPage::MITER_JOIN |
int | HaruPage::ROUND_JOIN |
int | HaruPage::BEVEL_JOIN |
int | HaruPage::FILL |
int | HaruPage::STROKE |
int | HaruPage::FILL_THEN_STROKE |
int | HaruPage::INVISIBLE |
int | HaruPage::FILL_CLIPPING |
int | HaruPage::STROKE_CLIPPING |
int | HaruPage::FILL_STROKE_CLIPPING |
int | HaruPage::CLIPPING |
int | HaruPage::TALIGN_LEFT |
int | HaruPage::TALIGN_RIGHT |
int | HaruPage::TALIGN_CENTER |
int | HaruPage::TALIGN_JUSTIFY |
int | HaruPage::SIZE_LETTER |
int | HaruPage::SIZE_LEGAL |
int | HaruPage::SIZE_A3 |
int | HaruPage::SIZE_A4 |
int | HaruPage::SIZE_A5 |
int | HaruPage::SIZE_B4 |
int | HaruPage::SIZE_B5 |
int | HaruPage::SIZE_EXECUTIVE |
int | HaruPage::SIZE_US4x6 |
int | HaruPage::SIZE_US4x8 |
int | HaruPage::SIZE_US5x7 |
int | HaruPage::SIZE_COMM10 |
int | HaruPage::PORTRAIT |
int | HaruPage::LANDSCAPE |
int | HaruPage::TS_WIPE_LIGHT |
int | HaruPage::TS_WIPE_UP |
int | HaruPage::TS_WIPE_LEFT |
int | HaruPage::TS_WIPE_DOWN |
int | HaruPage::TS_BARN_DOORS_HORIZONTAL_OUT |
int | HaruPage::TS_BARN_DOORS_HORIZONTAL_IN |
int | HaruPage::TS_BARN_DOORS_VERTICAL_OUT |
int | HaruPage::TS_BARN_DOORS_VERTICAL_IN |
int | HaruPage::TS_BOX_OUT |
int | HaruPage::TS_BOX_IN |
int | HaruPage::TS_BLINDS_HORIZONTAL |
int | HaruPage::TS_BLINDS_VERTICAL |
int | HaruPage::TS_DISSOLVE |
int | HaruPage::TS_GLITTER_RIGHT |
int | HaruPage::TS_GLITTER_DOWN |
int | HaruPage::TS_GLITTER_TOP_LEFT_TO_BOTTOM_RIGHT |
int | HaruPage::TS_REPLACE |
int | HaruPage::NUM_STYLE_DECIMAL |
int | HaruPage::NUM_STYLE_UPPER_ROMAN |
int | HaruPage::NUM_STYLE_LOWER_ROMAN |
int | HaruPage::NUM_STYLE_UPPER_LETTERS |
int | HaruPage::NUM_STYLE_LOWER_LETTERS |

Índice

  • HaruPage::arc — Append an arc to the current path
  • HaruPage::beginText — Begin a text object and set the current text position to (0,0)
  • HaruPage::circle — Append a circle to the current path
  • HaruPage::closePath — Append a straight line from the current point to the start point of the path
  • HaruPage::concat — Concatenate current transformation matrix of the page and the specified matrix
  • HaruPage::createDestination — Create new HaruDestination instance
  • HaruPage::createLinkAnnotation — Create new HaruAnnotation instance
  • HaruPage::createTextAnnotation — Create new HaruAnnotation instance
  • HaruPage::createURLAnnotation — Create and return new HaruAnnotation instance
  • HaruPage::curveTo2 — Append a Bezier curve to the current path
  • HaruPage::curveTo3 — Append a Bezier curve to the current path
  • HaruPage::curveTo — Append a Bezier curve to the current path
  • HaruPage::drawImage — Show image at the page
  • HaruPage::ellipse — Append an ellipse to the current path
  • HaruPage::endPath — End current path object without filling and painting operations
  • HaruPage::endText — End current text object
  • HaruPage::eofill — Fill current path using even-odd rule
  • HaruPage::eoFillStroke — Fill current path using even-odd rule, then paint the path
  • HaruPage::fill — Fill current path using nonzero winding number rule
  • HaruPage::fillStroke — Fill current path using nonzero winding number rule, then paint the path
  • HaruPage::getCharSpace — Get the current value of character spacing
  • HaruPage::getCMYKFill — Get the current filling color
  • HaruPage::getCMYKStroke — Get the current stroking color
  • HaruPage::getCurrentFont — Get the currently used font
  • HaruPage::getCurrentFontSize — Get the current font size
  • HaruPage::getCurrentPos — Get the current position for path painting
  • HaruPage::getCurrentTextPos — Get the current position for text printing
  • HaruPage::getDash — Get the current dash pattern
  • HaruPage::getFillingColorSpace — Get the current filling color space
  • HaruPage::getFlatness — Get the flatness of the page
  • HaruPage::getGMode — Get the current graphics mode
  • HaruPage::getGrayFill — Get the current filling color
  • HaruPage::getGrayStroke — Get the current stroking color
  • HaruPage::getHeight — Get the height of the page
  • HaruPage::getHorizontalScaling — Get the current value of horizontal scaling
  • HaruPage::getLineCap — Get the current line cap style
  • HaruPage::getLineJoin — Get the current line join style
  • HaruPage::getLineWidth — Get the current line width
  • HaruPage::getMiterLimit — Get the value of miter limit
  • HaruPage::getRGBFill — Get the current filling color
  • HaruPage::getRGBStroke — Get the current stroking color
  • HaruPage::getStrokingColorSpace — Get the current stroking color space
  • HaruPage::getTextLeading — Get the current value of line spacing
  • HaruPage::getTextMatrix — Get the current text transformation matrix of the page
  • HaruPage::getTextRenderingMode — Get the current text rendering mode
  • HaruPage::getTextRise — Get the current value of text rising
  • HaruPage::getTextWidth — Get the width of the text using current fontsize, character spacing and word spacing
  • HaruPage::getTransMatrix — Get the current transformation matrix of the page
  • HaruPage::getWidth — Get the width of the page
  • HaruPage::getWordSpace — Get the current value of word spacing
  • HaruPage::lineTo — Draw a line from the current point to the specified point
  • HaruPage::measureText — Calculate the number of characters which can be included within the specified width
  • HaruPage::moveTextPos — Move text position to the specified offset
  • HaruPage::moveTo — Set starting point for new drawing path
  • HaruPage::moveToNextLine — Move text position to the start of the next line
  • HaruPage::rectangle — Append a rectangle to the current path
  • HaruPage::setCharSpace — Set character spacing for the page
  • HaruPage::setCMYKFill — Set filling color for the page
  • HaruPage::setCMYKStroke — Set stroking color for the page
  • HaruPage::setDash — Set the dash pattern for the page
  • HaruPage::setFlatness — Set flatness for the page
  • HaruPage::setFontAndSize — Set font and fontsize for the page
  • HaruPage::setGrayFill — Set filling color for the page
  • HaruPage::setGrayStroke — Sets stroking color for the page
  • HaruPage::setHeight — Set height of the page
  • HaruPage::setHorizontalScaling — Set horizontal scaling for the page
  • HaruPage::setLineCap — Set the shape to be used at the ends of lines
  • HaruPage::setLineJoin — Set line join style for the page
  • HaruPage::setLineWidth — Set line width for the page
  • HaruPage::setMiterLimit — Set the current value of the miter limit of the page
  • HaruPage::setRGBFill — Set filling color for the page
  • HaruPage::setRGBStroke — Set stroking color for the page
  • HaruPage::setRotate — Set rotation angle of the page
  • HaruPage::setSize — Set size and direction of the page
  • HaruPage::setSlideShow — Set transition style for the page
  • HaruPage::setTextLeading — Set text leading (line spacing) for the page
  • HaruPage::setTextMatrix — Set the current text transformation matrix of the page
  • HaruPage::setTextRenderingMode — Set text rendering mode for the page
  • HaruPage::setTextRise — Set the current value of text rising
  • HaruPage::setWidth — Set width of the page
  • HaruPage::setWordSpace — Set word spacing for the page
  • HaruPage::showText — Print text at the current position of the page
  • HaruPage::showTextNextLine — Move the current position to the start of the next line and print the text
  • HaruPage::stroke — Paint current path
  • HaruPage::textOut — Print the text on the specified position
  • HaruPage::textRect — Print the text inside the specified region
HaruDoc::useKRFonts
HaruPage::arc
haru


Append an arc to the current path

HaruPage
HaruPage::beginText
HaruPage
PHP Manual

HaruPage::arc

(PECL haru >= 0.0.1)

HaruPage::arc — Append an arc to the current path

Descrição

bool HaruPage::arc ( float $x , float $y , float $ray , float $ang1 , float $ang2 )

Appends an arc to the current path.

Parâmetros

x

Horizontal coordinate of the center.

y

Vertical coordinate of the center.

ray

The ray of the arc.

ang1

The angle of the beginning.

ang2

The angle of the end. Must be greater than ang1.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage
HaruPage::beginText
HaruPage


Begin a text object and set the current text position to (0,0)

HaruPage::arc
HaruPage::circle
HaruPage
PHP Manual

HaruPage::beginText

(PECL haru >= 0.0.1)

HaruPage::beginText — Begin a text object and set the current text position to (0,0)

Descrição

bool HaruPage::beginText ( void )

Begins new text object and sets the current text position to (0,0).

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::arc
HaruPage::circle
HaruPage


Append a circle to the current path

HaruPage::beginText
HaruPage::closePath
HaruPage
PHP Manual

HaruPage::circle

(PECL haru >= 0.0.1)

HaruPage::circle — Append a circle to the current path

Descrição

bool HaruPage::circle ( float $x , float $y , float $ray )

Appends a circle to the current path.

Parâmetros

x

Horizontal coordinate of the center point.

y

Vertical coordinate of the center point.

ray

The ray of the circle.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::beginText
HaruPage::closePath
HaruPage


Append a straight line from the current point to the start point of the path

HaruPage::circle
HaruPage::concat
HaruPage
PHP Manual

HaruPage::closePath

(PECL haru >= 0.0.1)

HaruPage::closePath — Append a straight line from the current point to the start point of the path

Descrição

bool HaruPage::closePath ( void )

Appends a straight line from the current point to the start point of the path.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::circle
HaruPage::concat
HaruPage


Concatenate current transformation matrix of the page and the specified matrix

HaruPage::closePath
HaruPage::createDestination
HaruPage
PHP Manual

HaruPage::concat

(PECL haru >= 0.0.1)

HaruPage::concat — Concatenate current transformation matrix of the page and the specified matrix

Descrição

bool HaruPage::concat ( float $a , float $b , float $c , float $d , float $x , float $y )

Concatenates current transformation matrix of the page and the specified matrix.

Parâmetros

a

b

c

d

x

y

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::closePath
HaruPage::createDestination
HaruPage


Create new HaruDestination instance

HaruPage::concat
HaruPage::createLinkAnnotation
HaruPage
PHP Manual

HaruPage::createDestination

(PECL haru >= 0.0.1)

HaruPage::createDestination — Create new HaruDestination instance

Descrição

object HaruPage::createDestination ( void )

Create a new HaruDestination instance.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a new HaruDestination instance.

Erros

Joga um HaruException em erro.

HaruPage::concat
HaruPage::createLinkAnnotation
HaruPage


Create new HaruAnnotation instance

HaruPage::createDestination
HaruPage::createTextAnnotation
HaruPage
PHP Manual

HaruPage::createLinkAnnotation

(PECL haru >= 0.0.1)

HaruPage::createLinkAnnotation — Create new HaruAnnotation instance

Descrição

object HaruPage::createLinkAnnotation ( array $rectangle , object $destination )

Creates a new HaruAnnotation instance.

Parâmetros

rectangle

An array with 4 coordinates of the clickable area.

destination

Valid HaruDestination instance.

Valor Retornado

Returns a new HaruAnnotation instance.

Erros

Joga um HaruException em erro.

HaruPage::createDestination
HaruPage::createTextAnnotation
HaruPage


Create new HaruAnnotation instance

HaruPage::createLinkAnnotation
HaruPage::createURLAnnotation
HaruPage
PHP Manual

HaruPage::createTextAnnotation

(PECL haru >= 0.0.1)

HaruPage::createTextAnnotation — Create new HaruAnnotation instance

Descrição

object HaruPage::createTextAnnotation ( array $rectangle , string $text [, object $encoder ] )

Creates a new HaruAnnotation instance.

Parâmetros

rectangle

An array with 4 coordinates of the annotation area.

text

The text to be displayed.

encoder

Optional HaruEncoder instance.

Valor Retornado

Returns a new HaruAnnotation instance.

Erros

Joga um HaruException em erro.

HaruPage::createLinkAnnotation
HaruPage::createURLAnnotation
HaruPage


Create and return new HaruAnnotation instance

HaruPage::createTextAnnotation
HaruPage::curveTo2
HaruPage
PHP Manual

HaruPage::createURLAnnotation

(PECL haru >= 0.0.1)

HaruPage::createURLAnnotation — Create and return new HaruAnnotation instance

Descrição

object HaruPage::createURLAnnotation ( array $rectangle , string $url )

Creates a new HaruAnnotation instance.

Parâmetros

rectangle

An array with 4 coordinates of the clickable area.

url

The URL to open.

Valor Retornado

Returns a new HaruAnnotation instance.

Erros

Joga um HaruException em erro.

HaruPage::createTextAnnotation
HaruPage::curveTo2
HaruPage


Append a Bezier curve to the current path

HaruPage::createURLAnnotation
HaruPage::curveTo3
HaruPage
PHP Manual

HaruPage::curveTo2

(PECL haru >= 0.0.1)

HaruPage::curveTo2 — Append a Bezier curve to the current path

Descrição

bool HaruPage::curveTo2 ( float $x2 , float $y2 , float $x3 , float $y3 )

Appends a Bezier curve to the current path. The current point and the point (x2, y2) are used as the control points for the Bezier curve and current point is moved to the point (x3, y3).

Parâmetros

x2

A Bezier curve control point.

y2

A Bezier curve control point.

x3

The current point moves here.

x3

The current point moves here.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::createURLAnnotation
HaruPage::curveTo3
HaruPage


Append a Bezier curve to the current path

HaruPage::curveTo2
HaruPage::curveTo
HaruPage
PHP Manual

HaruPage::curveTo3

(PECL haru >= 0.0.1)

HaruPage::curveTo3 — Append a Bezier curve to the current path

Descrição

bool HaruPage::curveTo3 ( float $x1 , float $y1 , float $x3 , float $y3 )

Appends a Bezier curve to the current path. The point (x1, y1) and the point (x3, y3) are used as the control points for a Bezier curve and current point is moved to the point (x3, y3).

Parâmetros

x1

A Bezier curve control point.

y1

A Bezier curve control point.

x3

The current point moves here.

x3

The current point moves here.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::curveTo2
HaruPage::curveTo
HaruPage


Append a Bezier curve to the current path

HaruPage::curveTo3
HaruPage::drawImage
HaruPage
PHP Manual

HaruPage::curveTo

(PECL haru >= 0.0.1)

HaruPage::curveTo — Append a Bezier curve to the current path

Descrição

bool HaruPage::curveTo ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Append a Bezier curve to the current path. The point (x1, y1) and the point (x2, y2) are used as the control points for a Bezier curve and current point is moved to the point (x3, y3).

Parâmetros

x1

A Bezier curve control point.

y1

A Bezier curve control point.

x2

A Bezier curve control point.

y2

A Bezier curve control point.

x3

The current point moves here.

x3

The current point moves here.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::curveTo3
HaruPage::drawImage
HaruPage


Show image at the page

HaruPage::curveTo
HaruPage::ellipse
HaruPage
PHP Manual

HaruPage::drawImage

(PECL haru >= 0.0.1)

HaruPage::drawImage — Show image at the page

Descrição

bool HaruPage::drawImage ( object $image , float $x , float $y , float $width , float $height )

Show image at the page.

Parâmetros

image

Valid HaruImage instance.

x

The left border of the area where the image is displayed.

y

The lower border of the area where the image is displayed.

width

The width of the image area.

height

The height of the image area.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::curveTo
HaruPage::ellipse
HaruPage


Append an ellipse to the current path

HaruPage::drawImage
HaruPage::endPath
HaruPage
PHP Manual

HaruPage::ellipse

(PECL haru >= 0.0.1)

HaruPage::ellipse — Append an ellipse to the current path

Descrição

bool HaruPage::ellipse ( float $x , float $y , float $xray , float $yray )

Appends an ellipse to the current path.

Parâmetros

x

Horizontal coordinate of the center.

y

Vertical coordinate of the center.

xray

The ray of the ellipse in the x direction.

yray

The ray of the ellipse in the y direction.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::drawImage
HaruPage::endPath
HaruPage


End current path object without filling and painting operations

HaruPage::ellipse
HaruPage::endText
HaruPage
PHP Manual

HaruPage::endPath

(PECL haru >= 0.0.1)

HaruPage::endPath — End current path object without filling and painting operations

Descrição

bool HaruPage::endPath ( void )

Ends current path object without performing filling and painting operations.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::ellipse
HaruPage::endText
HaruPage


End current text object

HaruPage::endPath
HaruPage::eofill
HaruPage
PHP Manual

HaruPage::endText

(PECL haru >= 0.0.1)

HaruPage::endText — End current text object

Descrição

bool HaruPage::endText ( void )

Finalizes current text object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::endPath
HaruPage::eofill
HaruPage


Fill current path using even-odd rule

HaruPage::endText
HaruPage::eoFillStroke
HaruPage
PHP Manual

HaruPage::eofill

(PECL haru >= 0.0.1)

HaruPage::eofill — Fill current path using even-odd rule

Descrição

bool HaruPage::eofill ( void )

Fills current path using even-odd rule.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::endText
HaruPage::eoFillStroke
HaruPage


Fill current path using even-odd rule, then paint the path

HaruPage::eofill
HaruPage::fill
HaruPage
PHP Manual

HaruPage::eoFillStroke

(PECL haru >= 0.0.1)

HaruPage::eoFillStroke — Fill current path using even-odd rule, then paint the path

Descrição

bool HaruPage::eoFillStroke ([ bool $close_path = false ] )

Fills current path using even-odd rule, then paints the path.

Parâmetros

close_path

Optional parameter. When set to TRUE, the function closes the current path. Default to FALSE.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::eofill
HaruPage::fill
HaruPage


Fill current path using nonzero winding number rule

HaruPage::eoFillStroke
HaruPage::fillStroke
HaruPage
PHP Manual

HaruPage::fill

(PECL haru >= 0.0.1)

HaruPage::fill — Fill current path using nonzero winding number rule

Descrição

bool HaruPage::fill ( void )

Fills current path using nonzero winding number rule.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::eoFillStroke
HaruPage::fillStroke
HaruPage


Fill current path using nonzero winding number rule, then paint the path

HaruPage::fill
HaruPage::getCharSpace
HaruPage
PHP Manual

HaruPage::fillStroke

(PECL haru >= 0.0.1)

HaruPage::fillStroke — Fill current path using nonzero winding number rule, then paint the path

Descrição

bool HaruPage::fillStroke ([ bool $close_path = false ] )

Fills current path using nonzero winding number rule, then paints the path.

Parâmetros

close_path

Optional parameter. When set to TRUE, the function closes the current path. Default to FALSE.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::fill
HaruPage::getCharSpace
HaruPage


Get the current value of character spacing

HaruPage::fillStroke
HaruPage::getCMYKFill
HaruPage
PHP Manual

HaruPage::getCharSpace

(PECL haru >= 0.0.1)

HaruPage::getCharSpace — Get the current value of character spacing

Descrição

float HaruPage::getCharSpace ( void )

Get the current value of character spacing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current value of character spacing.

Erros

Joga um HaruException em erro.

HaruPage::fillStroke
HaruPage::getCMYKFill
HaruPage


Get the current filling color

HaruPage::getCharSpace
HaruPage::getCMYKStroke
HaruPage
PHP Manual

HaruPage::getCMYKFill

(PECL haru >= 0.0.1)

HaruPage::getCMYKFill — Get the current filling color

Descrição

array HaruPage::getCMYKFill ( void )

Returns the current filling color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current filling color as an array with 4 elements ("c", "m", "y" and "k").

Erros

Joga um HaruException em erro.

HaruPage::getCharSpace
HaruPage::getCMYKStroke
HaruPage


Get the current stroking color

HaruPage::getCMYKFill
HaruPage::getCurrentFont
HaruPage
PHP Manual

HaruPage::getCMYKStroke

(PECL haru >= 0.0.1)

HaruPage::getCMYKStroke — Get the current stroking color

Descrição

array HaruPage::getCMYKStroke ( void )

Get the current stroking color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current stroking color as an array with 4 elements ("c", "m", "y" and "k").

Erros

Joga um HaruException em erro.

HaruPage::getCMYKFill
HaruPage::getCurrentFont
HaruPage


Get the currently used font

HaruPage::getCMYKStroke
HaruPage::getCurrentFontSize
HaruPage
PHP Manual

HaruPage::getCurrentFont

(PECL haru >= 0.0.1)

HaruPage::getCurrentFont — Get the currently used font

Descrição

object HaruPage::getCurrentFont ( void )

Get the currently used font.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the currently used font as an instance of HaruFont.

Erros

Joga um HaruException em erro.

HaruPage::getCMYKStroke
HaruPage::getCurrentFontSize
HaruPage


Get the current font size

HaruPage::getCurrentFont
HaruPage::getCurrentPos
HaruPage
PHP Manual

HaruPage::getCurrentFontSize

(PECL haru >= 0.0.1)

HaruPage::getCurrentFontSize — Get the current font size

Descrição

float HaruPage::getCurrentFontSize ( void )

Get the current font size.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current font size.

Erros

Joga um HaruException em erro.

HaruPage::getCurrentFont
HaruPage::getCurrentPos
HaruPage


Get the current position for path painting

HaruPage::getCurrentFontSize
HaruPage::getCurrentTextPos
HaruPage
PHP Manual

HaruPage::getCurrentPos

(PECL haru >= 0.0.1)

HaruPage::getCurrentPos — Get the current position for path painting

Descrição

array HaruPage::getCurrentPos ( void )

Get the current position for path painting.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current position for path painting as an array of with two elements - "x" and "y".

Erros

Joga um HaruException em erro.

HaruPage::getCurrentFontSize
HaruPage::getCurrentTextPos
HaruPage


Get the current position for text printing

HaruPage::getCurrentPos
HaruPage::getDash
HaruPage
PHP Manual

HaruPage::getCurrentTextPos

(PECL haru >= 0.0.1)

HaruPage::getCurrentTextPos — Get the current position for text printing

Descrição

array HaruPage::getCurrentTextPos ( void )

Get the current position for text printing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current position for text printing as an array with 2 elements - "x" and "y".

Erros

Joga um HaruException em erro.

HaruPage::getCurrentPos
HaruPage::getDash
HaruPage


Get the current dash pattern

HaruPage::getCurrentTextPos
HaruPage::getFillingColorSpace
HaruPage
PHP Manual

HaruPage::getDash

(PECL haru >= 0.0.1)

HaruPage::getDash — Get the current dash pattern

Descrição

array HaruPage::getDash ( void )

Get the current dash pattern. See HaruPage::setDash() for more information on dash patterns.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current dash pattern as an array of two elements - "pattern" and "phase" or FALSE if dash pattern was not set.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setDash() - Set the dash pattern for the page

HaruPage::getCurrentTextPos
HaruPage::getFillingColorSpace
HaruPage


Get the current filling color space

HaruPage::getDash
HaruPage::getFlatness
HaruPage
PHP Manual

HaruPage::getFillingColorSpace

(PECL haru >= 0.0.1)

HaruPage::getFillingColorSpace — Get the current filling color space

Descrição

int HaruPage::getFillingColorSpace ( void )

Get the current filling color space.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current filling color space. The result value is one of the following:

  • HaruDoc::CS_DEVICE_GRAY
  • HaruDoc::CS_DEVICE_RGB
  • HaruDoc::CS_DEVICE_CMYK
  • HaruDoc::CS_CAL_GRAY
  • HaruDoc::CS_CAL_RGB
  • HaruDoc::CS_LAB
  • HaruDoc::CS_ICC_BASED
  • HaruDoc::CS_SEPARATION
  • HaruDoc::CS_DEVICE_N
  • HaruDoc::CS_INDEXED
  • HaruDoc::CS_PATTERN

Erros

Joga um HaruException em erro.

HaruPage::getDash
HaruPage::getFlatness
HaruPage


Get the flatness of the page

HaruPage::getFillingColorSpace
HaruPage::getGMode
HaruPage
PHP Manual

HaruPage::getFlatness

(PECL haru >= 0.0.1)

HaruPage::getFlatness — Get the flatness of the page

Descrição

float HaruPage::getFlatness ( void )

Get the flatness of the page.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the flatness of the page.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setFlatness() - Set flatness for the page

HaruPage::getFillingColorSpace
HaruPage::getGMode
HaruPage


Get the current graphics mode

HaruPage::getFlatness
HaruPage::getGrayFill
HaruPage
PHP Manual

HaruPage::getGMode

(PECL haru >= 0.0.1)

HaruPage::getGMode — Get the current graphics mode

Descrição

int HaruPage::getGMode ( void )

Get the current graphics mode.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current graphics mode. The result value is one of the following:

  • HaruPage::GMODE_PAGE_DESCRIPTION
  • HaruPage::GMODE_TEXT_OBJECT
  • HaruPage::GMODE_PATH_OBJECT
  • HaruPage::GMODE_CLIPPING_PATH
  • HaruPage::GMODE_SHADING
  • HaruPage::GMODE_INLINE_IMAGE
  • HaruPage::GMODE_EXTERNAL_OBJECT

Erros

Joga um HaruException em erro.

HaruPage::getFlatness
HaruPage::getGrayFill
HaruPage


Get the current filling color

HaruPage::getGMode
HaruPage::getGrayStroke
HaruPage
PHP Manual

HaruPage::getGrayFill

(PECL haru >= 0.0.1)

HaruPage::getGrayFill — Get the current filling color

Descrição

float HaruPage::getGrayFill ( void )

Get the current filling color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current filling color.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setGrayFill() - Set filling color for the page

HaruPage::getGMode
HaruPage::getGrayStroke
HaruPage


Get the current stroking color

HaruPage::getGrayFill
HaruPage::getHeight
HaruPage
PHP Manual

HaruPage::getGrayStroke

(PECL haru >= 0.0.1)

HaruPage::getGrayStroke — Get the current stroking color

Descrição

float HaruPage::getGrayStroke ( void )

Get the current stroking color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current stroking color.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setGrayStroke() - Sets stroking color for the page

HaruPage::getGrayFill
HaruPage::getHeight
HaruPage


Get the height of the page

HaruPage::getGrayStroke
HaruPage::getHorizontalScaling
HaruPage
PHP Manual

HaruPage::getHeight

(PECL haru >= 0.0.1)

HaruPage::getHeight — Get the height of the page

Descrição

float HaruPage::getHeight ( void )

Get the height of the page.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the height of the page.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setHeight() - Set height of the page

HaruPage::getGrayStroke
HaruPage::getHorizontalScaling
HaruPage


Get the current value of horizontal scaling

HaruPage::getHeight
HaruPage::getLineCap
HaruPage
PHP Manual

HaruPage::getHorizontalScaling

(PECL haru >= 0.0.1)

HaruPage::getHorizontalScaling — Get the current value of horizontal scaling

Descrição

float HaruPage::getHorizontalScaling ( void )

Get the current value of the horizontal scaling.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current value of horizontal scaling.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setHorizontalScaling() - Set horizontal scaling for the page

HaruPage::getHeight
HaruPage::getLineCap
HaruPage


Get the current line cap style

HaruPage::getHorizontalScaling
HaruPage::getLineJoin
HaruPage
PHP Manual

HaruPage::getLineCap

(PECL haru >= 0.0.1)

HaruPage::getLineCap — Get the current line cap style

Descrição

int HaruPage::getLineCap ( void )

Get the current line cap style.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current line cap style. The result value is one of the following:

  • HaruPage::BUTT_END - the line is squared off at the endpoint of the path.
  • HaruPage::ROUND_END - the end of the line becomes a semicircle with center in the end point of the path.
  • HaruPage::PROJECTING_SCUARE_END - the line continues to the point that exceeds half of the stroke width the end point.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setLineCap() - Set the shape to be used at the ends of lines

HaruPage::getHorizontalScaling
HaruPage::getLineJoin
HaruPage


Get the current line join style

HaruPage::getLineCap
HaruPage::getLineWidth
HaruPage
PHP Manual

HaruPage::getLineJoin

(PECL haru >= 0.0.1)

HaruPage::getLineJoin — Get the current line join style

Descrição

int HaruPage::getLineJoin ( void )

Get the current line join style.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current line join style. The result value is one of the following:

  • HaruPage::MITER_JOIN
  • HaruPage::ROUND_JOIN
  • HaruPage::BEVEL_JOIN

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setLineJoin() - Set line join style for the page

HaruPage::getLineCap
HaruPage::getLineWidth
HaruPage


Get the current line width

HaruPage::getLineJoin
HaruPage::getMiterLimit
HaruPage
PHP Manual

HaruPage::getLineWidth

(PECL haru >= 0.0.1)

HaruPage::getLineWidth — Get the current line width

Descrição

float HaruPage::getLineWidth ( void )

Get the current line width.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current line width.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setLineWidth() - Set line width for the page

HaruPage::getLineJoin
HaruPage::getMiterLimit
HaruPage


Get the value of miter limit

HaruPage::getLineWidth
HaruPage::getRGBFill
HaruPage
PHP Manual

HaruPage::getMiterLimit

(PECL haru >= 0.0.1)

HaruPage::getMiterLimit — Get the value of miter limit

Descrição

float HaruPage::getMiterLimit ( void )

Get the value of the miter limit.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the value of the miter limit.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setMiterLimit() - Set the current value of the miter limit of the page

HaruPage::getLineWidth
HaruPage::getRGBFill
HaruPage


Get the current filling color

HaruPage::getMiterLimit
HaruPage::getRGBStroke
HaruPage
PHP Manual

HaruPage::getRGBFill

(PECL haru >= 0.0.1)

HaruPage::getRGBFill — Get the current filling color

Descrição

array HaruPage::getRGBFill ( void )

Get the current filling color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current filling color as an array with 3 elements: "r", "g" and "b".

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setRGBFill() - Set filling color for the page

HaruPage::getMiterLimit
HaruPage::getRGBStroke
HaruPage


Get the current stroking color

HaruPage::getRGBFill
HaruPage::getStrokingColorSpace
HaruPage
PHP Manual

HaruPage::getRGBStroke

(PECL haru >= 0.0.1)

HaruPage::getRGBStroke — Get the current stroking color

Descrição

array HaruPage::getRGBStroke ( void )

Get the current stroking color.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current stroking color.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setRGBStroke() - Set stroking color for the page

HaruPage::getRGBFill
HaruPage::getStrokingColorSpace
HaruPage


Get the current stroking color space

HaruPage::getRGBStroke
HaruPage::getTextLeading
HaruPage
PHP Manual

HaruPage::getStrokingColorSpace

(PECL haru >= 0.0.1)

HaruPage::getStrokingColorSpace — Get the current stroking color space

Descrição

int HaruPage::getStrokingColorSpace ( void )

Get the current stroking color space.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current stroking color space. The list of return values is the same as for HaruPage::getFillingColorSpace()

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getFillingColorSpace() - Get the current filling color space

HaruPage::getRGBStroke
HaruPage::getTextLeading
HaruPage


Get the current value of line spacing

HaruPage::getStrokingColorSpace
HaruPage::getTextMatrix
HaruPage
PHP Manual

HaruPage::getTextLeading

(PECL haru >= 0.0.1)

HaruPage::getTextLeading — Get the current value of line spacing

Descrição

float HaruPage::getTextLeading ( void )

Get the current value of line spacing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current value of line spacing.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setTextLeading() - Set text leading (line spacing) for the page

HaruPage::getStrokingColorSpace
HaruPage::getTextMatrix
HaruPage


Get the current text transformation matrix of the page

HaruPage::getTextLeading
HaruPage::getTextRenderingMode
HaruPage
PHP Manual

HaruPage::getTextMatrix

(PECL haru >= 0.0.1)

HaruPage::getTextMatrix — Get the current text transformation matrix of the page

Descrição

array HaruPage::getTextMatrix ( void )

Get the current text transformation matrix of the page.

Valor Retornado

Returns the current text transformation matrix of the page as an array of 6 elements: "a", "b", "c", "d", "x" and "y".

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setTextMatrix() - Set the current text transformation matrix of the page

HaruPage::getTextLeading
HaruPage::getTextRenderingMode
HaruPage


Get the current text rendering mode

HaruPage::getTextMatrix
HaruPage::getTextRise
HaruPage
PHP Manual

HaruPage::getTextRenderingMode

(PECL haru >= 0.0.1)

HaruPage::getTextRenderingMode — Get the current text rendering mode

Descrição

int HaruPage::getTextRenderingMode ( void )

Get the current text rendering mode.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current text rendering mode. The result value is one of the following:

  • HaruPage::FILL
  • HaruPage::STROKE
  • HaruPage::FILL_THEN_STROKE
  • HaruPage::INVISIBLE
  • HaruPage::FILL_CLIPPING
  • HaruPage::STROKE_CLIPPING
  • HaruPage::FILL_STROKE_CLIPPING
  • HaruPage::CLIPPING

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setTextRenderingMode() - Set text rendering mode for the page

HaruPage::getTextMatrix
HaruPage::getTextRise
HaruPage


Get the current value of text rising

HaruPage::getTextRenderingMode
HaruPage::getTextWidth
HaruPage
PHP Manual

HaruPage::getTextRise

(PECL haru >= 0.0.1)

HaruPage::getTextRise — Get the current value of text rising

Descrição

float HaruPage::getTextRise ( void )

Get the current value of text rising.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current value of text rising.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setTextRise() - Set the current value of text rising

HaruPage::getTextRenderingMode
HaruPage::getTextWidth
HaruPage


Get the width of the text using current fontsize, character spacing and word spacing

HaruPage::getTextRise
HaruPage::getTransMatrix
HaruPage
PHP Manual

HaruPage::getTextWidth

(PECL haru >= 0.0.1)

HaruPage::getTextWidth — Get the width of the text using current fontsize, character spacing and word spacing

Descrição

float HaruPage::getTextWidth ( string $text )

Get the width of the text using current fontsize, character spacing and word spacing

Parâmetros

text

The text to measure.

Valor Retornado

Returns the width of the text using current fontsize, character spacing and word spacing.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::measureText() - Calculate the number of characters which can be included within the specified width

HaruPage::getTextRise
HaruPage::getTransMatrix
HaruPage


Get the current transformation matrix of the page

HaruPage::getTextWidth
HaruPage::getWidth
HaruPage
PHP Manual

HaruPage::getTransMatrix

(PECL haru >= 0.0.1)

HaruPage::getTransMatrix — Get the current transformation matrix of the page

Descrição

array HaruPage::getTransMatrix ( void )

Get the current transformation matrix of the page.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current transformation matrix of the page as an array of 6 elements: "a", "b", "c", "d", "x" and "y".

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::concat() - Concatenate current transformation matrix of the page and the specified matrix

HaruPage::getTextWidth
HaruPage::getWidth
HaruPage


Get the width of the page

HaruPage::getTransMatrix
HaruPage::getWordSpace
HaruPage
PHP Manual

HaruPage::getWidth

(PECL haru >= 0.0.1)

HaruPage::getWidth — Get the width of the page

Descrição

float HaruPage::getWidth ( void )

Get the width of the page.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the width of the page.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setWidth() - Set width of the page

HaruPage::getTransMatrix
HaruPage::getWordSpace
HaruPage


Get the current value of word spacing

HaruPage::getWidth
HaruPage::lineTo
HaruPage
PHP Manual

HaruPage::getWordSpace

(PECL haru >= 0.0.1)

HaruPage::getWordSpace — Get the current value of word spacing

Descrição

float HaruPage::getWordSpace ( void )

Get the current value of word spacing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current value of word spacing.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setWordSpace() - Set word spacing for the page

HaruPage::getWidth
HaruPage::lineTo
HaruPage


Draw a line from the current point to the specified point

HaruPage::getWordSpace
HaruPage::measureText
HaruPage
PHP Manual

HaruPage::lineTo

(PECL haru >= 0.0.1)

HaruPage::lineTo — Draw a line from the current point to the specified point

Descrição

bool HaruPage::lineTo ( float $x , float $y )

Draws a line from the current point to the specified point.

Parâmetros

x

y

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::curveTo() - Append a Bezier curve to the current path
  • HaruPage::curveTo2() - Append a Bezier curve to the current path
  • HaruPage::curveTo3() - Append a Bezier curve to the current path

HaruPage::getWordSpace
HaruPage::measureText
HaruPage


Calculate the number of characters which can be included within the specified width

HaruPage::lineTo
HaruPage::moveTextPos
HaruPage
PHP Manual

HaruPage::measureText

(PECL haru >= 0.0.1)

HaruPage::measureText — Calculate the number of characters which can be included within the specified width

Descrição

int HaruPage::measureText ( string $text , float $width [, bool $wordwrap = false ] )

Get the number of characters which can be included within the specified width.

Parâmetros

text

The text to measure.

width

The width of the area to put the text to.

wordwrap

When this parameter is set to TRUE the function "emulates" word wrapping and doesn't include the part of the current word if reached the end of the area.

Valor Retornado

Returns the number of characters which can be included within the specified width.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruFont::measureText() - Calculate the number of characters which can be included within the specified width

HaruPage::lineTo
HaruPage::moveTextPos
HaruPage


Move text position to the specified offset

HaruPage::measureText
HaruPage::moveTo
HaruPage
PHP Manual

HaruPage::moveTextPos

(PECL haru >= 0.0.1)

HaruPage::moveTextPos — Move text position to the specified offset

Descrição

bool HaruPage::moveTextPos ( float $x , float $y [, bool $set_leading = false ] )

Moves text position to the specified offset. If the start position of the current line is (x1, y1), the start of the next line is (x1 + x, y1 + y).

Parâmetros

x

The specified text position offset.

y

The specified text position offset.

set_leading

If set to TRUE, the function sets the text leading to -y.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::moveToNextLine() - Move text position to the start of the next line

HaruPage::measureText
HaruPage::moveTo
HaruPage


Set starting point for new drawing path

HaruPage::moveTextPos
HaruPage::moveToNextLine
HaruPage
PHP Manual

HaruPage::moveTo

(PECL haru >= 0.0.1)

HaruPage::moveTo — Set starting point for new drawing path

Descrição

bool HaruPage::moveTo ( float $x , float $y )

Defines starting point for new drawing path.

Parâmetros

x

A new starting point coordinate.

y

A new starting point coordinate.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::moveTextPos
HaruPage::moveToNextLine
HaruPage


Move text position to the start of the next line

HaruPage::moveTo
HaruPage::rectangle
HaruPage
PHP Manual

HaruPage::moveToNextLine

(PECL haru >= 0.0.1)

HaruPage::moveToNextLine — Move text position to the start of the next line

Descrição

bool HaruPage::moveToNextLine ( void )

Moves text position to the start of the next line.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::moveTextPos() - Move text position to the specified offset

HaruPage::moveTo
HaruPage::rectangle
HaruPage


Append a rectangle to the current path

HaruPage::moveToNextLine
HaruPage::setCharSpace
HaruPage
PHP Manual

HaruPage::rectangle

(PECL haru >= 0.0.1)

HaruPage::rectangle — Append a rectangle to the current path

Descrição

bool HaruPage::rectangle ( float $x , float $y , float $width , float $height )

Appends a rectangle to the current drawing path.

Parâmetros

x

The left border of the rectangle.

y

The lower border of the rectangle.

width

The width of the rectangle.

height

The height of the rectangle.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::moveToNextLine
HaruPage::setCharSpace
HaruPage


Set character spacing for the page

HaruPage::rectangle
HaruPage::setCMYKFill
HaruPage
PHP Manual

HaruPage::setCharSpace

(PECL haru >= 0.0.1)

HaruPage::setCharSpace — Set character spacing for the page

Descrição

bool HaruPage::setCharSpace ( float $char_space )

Defines character spacing for the page.

Parâmetros

char_space

The new character spacing for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getCharSpace() - Get the current value of character spacing

HaruPage::rectangle
HaruPage::setCMYKFill
HaruPage


Set filling color for the page

HaruPage::setCharSpace
HaruPage::setCMYKStroke
HaruPage
PHP Manual

HaruPage::setCMYKFill

(PECL haru >= 0.0.1)

HaruPage::setCMYKFill — Set filling color for the page

Descrição

bool HaruPage::setCMYKFill ( float $c , float $m , float $y , float $k )

Defines filling color for the page.

Parâmetros

c

m

y

k

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getCMYKFill() - Get the current filling color

HaruPage::setCharSpace
HaruPage::setCMYKStroke
HaruPage


Set stroking color for the page

HaruPage::setCMYKFill
HaruPage::setDash
HaruPage
PHP Manual

HaruPage::setCMYKStroke

(PECL haru >= 0.0.1)

HaruPage::setCMYKStroke — Set stroking color for the page

Descrição

bool HaruPage::setCMYKStroke ( float $c , float $m , float $y , float $k )

Defines stroking color for the page.

Parâmetros

c

m

y

k

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getCMYKStroke() - Get the current stroking color

HaruPage::setCMYKFill
HaruPage::setDash
HaruPage


Set the dash pattern for the page

HaruPage::setCMYKStroke
HaruPage::setFlatness
HaruPage
PHP Manual

HaruPage::setDash

(PECL haru >= 0.0.1)

HaruPage::setDash — Set the dash pattern for the page

Descrição

bool HaruPage::setDash ( array $pattern , int $phase )

Defines the dash pattern for the page.

Parâmetros

pattern

An array (8 elements max) which contains a pattern of dashes and gaps used for lines on the page.

phase

The phase on which the pattern begins.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getDash() - Get the current dash pattern

HaruPage::setCMYKStroke
HaruPage::setFlatness
HaruPage


Set flatness for the page

HaruPage::setDash
HaruPage::setFontAndSize
HaruPage
PHP Manual

HaruPage::setFlatness

(PECL haru >= 0.0.1)

HaruPage::setFlatness — Set flatness for the page

Descrição

bool HaruPage::setFlatness ( float $flatness )

Defines flatness for the page.

Parâmetros

flatness

The defined flatness for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getFlatness() - Get the flatness of the page

HaruPage::setDash
HaruPage::setFontAndSize
HaruPage


Set font and fontsize for the page

HaruPage::setFlatness
HaruPage::setGrayFill
HaruPage
PHP Manual

HaruPage::setFontAndSize

(PECL haru >= 0.0.1)

HaruPage::setFontAndSize — Set font and fontsize for the page

Descrição

bool HaruPage::setFontAndSize ( object $font , float $size )

Defines current font and its size for the page.

Parâmetros

font

A valid HaruFont instance.

size

The size of the font.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruDoc::getFont() - Get HaruFont instance

HaruPage::setFlatness
HaruPage::setGrayFill
HaruPage


Set filling color for the page

HaruPage::setFontAndSize
HaruPage::setGrayStroke
HaruPage
PHP Manual

HaruPage::setGrayFill

(PECL haru >= 0.0.1)

HaruPage::setGrayFill — Set filling color for the page

Descrição

bool HaruPage::setGrayFill ( float $value )

Defines filling color for the page.

Parâmetros

value

The value of gray level between 0 and 1.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getGrayFill() - Get the current filling color

HaruPage::setFontAndSize
HaruPage::setGrayStroke
HaruPage


Sets stroking color for the page

HaruPage::setGrayFill
HaruPage::setHeight
HaruPage
PHP Manual

HaruPage::setGrayStroke

(PECL haru >= 0.0.1)

HaruPage::setGrayStroke — Sets stroking color for the page

Descrição

bool HaruPage::setGrayStroke ( float $value )

Defines stroking color for the page.

Parâmetros

value

The value of gray level between 0 and 1.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getGrayStroke() - Get the current stroking color

HaruPage::setGrayFill
HaruPage::setHeight
HaruPage


Set height of the page

HaruPage::setGrayStroke
HaruPage::setHorizontalScaling
HaruPage
PHP Manual

HaruPage::setHeight

(PECL haru >= 0.0.1)

HaruPage::setHeight — Set height of the page

Descrição

bool HaruPage::setHeight ( float $height )

Defines height of the page.

Parâmetros

height

The defined height for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getHeight() - Get the height of the page

HaruPage::setGrayStroke
HaruPage::setHorizontalScaling
HaruPage


Set horizontal scaling for the page

HaruPage::setHeight
HaruPage::setLineCap
HaruPage
PHP Manual

HaruPage::setHorizontalScaling

(PECL haru >= 0.0.1)

HaruPage::setHorizontalScaling — Set horizontal scaling for the page

Descrição

bool HaruPage::setHorizontalScaling ( float $scaling )

Set the horizontal scaling for the page.

Parâmetros

scaling

The horizontal scaling for text showing on the page. The initial value is 100.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getHorizontalScaling() - Get the current value of horizontal scaling

HaruPage::setHeight
HaruPage::setLineCap
HaruPage


Set the shape to be used at the ends of lines

HaruPage::setHorizontalScaling
HaruPage::setLineJoin
HaruPage
PHP Manual

HaruPage::setLineCap

(PECL haru >= 0.0.1)

HaruPage::setLineCap — Set the shape to be used at the ends of lines

Descrição

bool HaruPage::setLineCap ( int $cap )

Defines the shape to be used at the ends of lines.

Parâmetros

cap

Must be one of the following values:

  • HaruPage::BUTT_END - the line is squared off at the endpoint of the path.
  • HaruPage::ROUND_END - the end of the line becomes a semicircle with center in the end point of the path.
  • HaruPage::PROJECTING_SCUARE_END - the line continues to the point that exceeds half of the stroke width the end point.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getLineCap() - Get the current line cap style

HaruPage::setHorizontalScaling
HaruPage::setLineJoin
HaruPage


Set line join style for the page

HaruPage::setLineCap
HaruPage::setLineWidth
HaruPage
PHP Manual

HaruPage::setLineJoin

(PECL haru >= 0.0.1)

HaruPage::setLineJoin — Set line join style for the page

Descrição

bool HaruPage::setLineJoin ( int $join )

Defines line join style for the page.

Parâmetros

join

Must be one of the following values:

  • HaruPage::MITER_JOIN
  • HaruPage::ROUND_JOIN
  • HaruPage::BEVEL_JOIN

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getLineJoin() - Get the current line join style

HaruPage::setLineCap
HaruPage::setLineWidth
HaruPage


Set line width for the page

HaruPage::setLineJoin
HaruPage::setMiterLimit
HaruPage
PHP Manual

HaruPage::setLineWidth

(PECL haru >= 0.0.1)

HaruPage::setLineWidth — Set line width for the page

Descrição

bool HaruPage::setLineWidth ( float $width )

Defines line width for the page.

Parâmetros

width

The defined line width for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getLineWidth() - Get the current line width

HaruPage::setLineJoin
HaruPage::setMiterLimit
HaruPage


Set the current value of the miter limit of the page

HaruPage::setLineWidth
HaruPage::setRGBFill
HaruPage
PHP Manual

HaruPage::setMiterLimit

(PECL haru >= 0.0.1)

HaruPage::setMiterLimit — Set the current value of the miter limit of the page

Descrição

bool HaruPage::setMiterLimit ( float $limit )

Set the current value of the miter limit of the page.

Parâmetros

limit

Defines the current value of the miter limit of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getMiterLimit() - Get the value of miter limit

HaruPage::setLineWidth
HaruPage::setRGBFill
HaruPage


Set filling color for the page

HaruPage::setMiterLimit
HaruPage::setRGBStroke
HaruPage
PHP Manual

HaruPage::setRGBFill

(PECL haru >= 0.0.1)

HaruPage::setRGBFill — Set filling color for the page

Descrição

bool HaruPage::setRGBFill ( float $r , float $g , float $b )

Defines filling color for the page. All values must be between 0 and 1.

Parâmetros

r

g

b

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getRGBFill() - Get the current filling color

HaruPage::setMiterLimit
HaruPage::setRGBStroke
HaruPage


Set stroking color for the page

HaruPage::setRGBFill
HaruPage::setRotate
HaruPage
PHP Manual

HaruPage::setRGBStroke

(PECL haru >= 0.0.1)

HaruPage::setRGBStroke — Set stroking color for the page

Descrição

bool HaruPage::setRGBStroke ( float $r , float $g , float $b )

Defines stroking color for the page. All values must be between 0 and 1.

Parâmetros

r

g

b

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getRGBStroke() - Get the current stroking color

HaruPage::setRGBFill
HaruPage::setRotate
HaruPage


Set rotation angle of the page

HaruPage::setRGBStroke
HaruPage::setSize
HaruPage
PHP Manual

HaruPage::setRotate

(PECL haru >= 0.0.1)

HaruPage::setRotate — Set rotation angle of the page

Descrição

bool HaruPage::setRotate ( int $angle )

Defines rotation angle of the page.

Parâmetros

angle

Must be a multiple of 90 degrees.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::setRGBStroke
HaruPage::setSize
HaruPage


Set size and direction of the page

HaruPage::setRotate
HaruPage::setSlideShow
HaruPage
PHP Manual

HaruPage::setSize

(PECL haru >= 0.0.1)

HaruPage::setSize — Set size and direction of the page

Descrição

bool HaruPage::setSize ( int $size , int $direction )

Changes size and direction of the page to a predefined format.

Parâmetros

size

Must be one of the following values:

  • HaruPage::SIZE_LETTER
  • HaruPage::SIZE_LEGAL
  • HaruPage::SIZE_A3
  • HaruPage::SIZE_A4
  • HaruPage::SIZE_A5
  • HaruPage::SIZE_B4
  • HaruPage::SIZE_B5
  • HaruPage::SIZE_EXECUTIVE
  • HaruPage::SIZE_US4x6
  • HaruPage::SIZE_US4x8
  • HaruPage::SIZE_US5x7
  • HaruPage::SIZE_COMM10

direction

Must be one of the following values:

  • HaruPage::PORTRAIT
  • HaruPage::LANDSCAPE

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::setWidth() - Set width of the page
  • HaruPage::setHeight() - Set height of the page

HaruPage::setRotate
HaruPage::setSlideShow
HaruPage


Set transition style for the page

HaruPage::setSize
HaruPage::setTextLeading
HaruPage
PHP Manual

HaruPage::setSlideShow

(PECL haru >= 0.0.1)

HaruPage::setSlideShow — Set transition style for the page

Descrição

bool HaruPage::setSlideShow ( int $type , float $disp_time , float $trans_time )

Defines transition style for the page.

Parâmetros

type

Must be one of the following values:

  • HaruPage::TS_WIPE_RIGHT
  • HaruPage::TS_WIPE_LEFT
  • HaruPage::TS_WIPE_UP
  • HaruPage::TS_WIPE_DOWN
  • HaruPage::TS_BARN_DOORS_HORIZONTAL_OUT
  • HaruPage::TS_BARN_DOORS_HORIZONTAL_IN
  • HaruPage::TS_BARN_DOORS_VERTICAL_OUT
  • HaruPage::TS_BARN_DOORS_VERTICAL_IN
  • HaruPage::TS_BOX_OUT
  • HaruPage::TS_BOX_IN
  • HaruPage::TS_BLINDS_HORIZONTAL
  • HaruPage::TS_BLINDS_VERTICAL
  • HaruPage::TS_DISSOLVE
  • HaruPage::TS_GLITTER_RIGHT
  • HaruPage::TS_GLITTER_DOWN
  • HaruPage::TS_GLITTER_TOP_LEFT_TO_BOTTOM_RIGHT
  • HaruPage::TS_REPLACE

disp_time

The display duration of the page in seconds.

trans_time

The duration of the transition effect in seconds.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::setSize
HaruPage::setTextLeading
HaruPage


Set text leading (line spacing) for the page

HaruPage::setSlideShow
HaruPage::setTextMatrix
HaruPage
PHP Manual

HaruPage::setTextLeading

(PECL haru >= 0.0.1)

HaruPage::setTextLeading — Set text leading (line spacing) for the page

Descrição

bool HaruPage::setTextLeading ( float $text_leading )

Set the text leading (line spacing) for the page.

Parâmetros

text_leading

Defines line spacing for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getTextLeading() - Get the current value of line spacing

HaruPage::setSlideShow
HaruPage::setTextMatrix
HaruPage


Set the current text transformation matrix of the page

HaruPage::setTextLeading
HaruPage::setTextRenderingMode
HaruPage
PHP Manual

HaruPage::setTextMatrix

(PECL haru >= 0.0.1)

HaruPage::setTextMatrix — Set the current text transformation matrix of the page

Descrição

bool HaruPage::setTextMatrix ( float $a , float $b , float $c , float $d , float $x , float $y )

Defines the text transformation matrix of the page.

Parâmetros

a

Width multiplier.

b

Vertical skew in radians.

c

Horizontal skew in radians.

d

Height multiplier.

x

Horizontal position for text.

y

Vertical position for text.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getTextMatrix() - Get the current text transformation matrix of the page

HaruPage::setTextLeading
HaruPage::setTextRenderingMode
HaruPage


Set text rendering mode for the page

HaruPage::setTextMatrix
HaruPage::setTextRise
HaruPage
PHP Manual

HaruPage::setTextRenderingMode

(PECL haru >= 0.0.1)

HaruPage::setTextRenderingMode — Set text rendering mode for the page

Descrição

bool HaruPage::setTextRenderingMode ( int $mode )

Defines text rendering mode for the page.

Parâmetros

mode

Must be one of the following values:

  • HaruPage::FILL
  • HaruPage::STROKE
  • HaruPage::FILL_THEN_STROKE
  • HaruPage::INVISIBLE
  • HaruPage::FILL_CLIPPING
  • HaruPage::STROKE_CLIPPING
  • HaruPage::FILL_STROKE_CLIPPING
  • HaruPage::CLIPPING

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getTextRenderingMode() - Get the current text rendering mode

HaruPage::setTextMatrix
HaruPage::setTextRise
HaruPage


Set the current value of text rising

HaruPage::setTextRenderingMode
HaruPage::setWidth
HaruPage
PHP Manual

HaruPage::setTextRise

(PECL haru >= 0.0.1)

HaruPage::setTextRise — Set the current value of text rising

Descrição

bool HaruPage::setTextRise ( float $rise )

Set the current value of text rising.

Parâmetros

rise

Defines the current value of text rising.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getTextRise() - Get the current value of text rising

HaruPage::setTextRenderingMode
HaruPage::setWidth
HaruPage


Set width of the page

HaruPage::setTextRise
HaruPage::setWordSpace
HaruPage
PHP Manual

HaruPage::setWidth

(PECL haru >= 0.0.1)

HaruPage::setWidth — Set width of the page

Descrição

bool HaruPage::setWidth ( float $width )

Set the width of the page.

Parâmetros

width

Defines width of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getWidth() - Get the width of the page

HaruPage::setTextRise
HaruPage::setWordSpace
HaruPage


Set word spacing for the page

HaruPage::setWidth
HaruPage::showText
HaruPage
PHP Manual

HaruPage::setWordSpace

(PECL haru >= 0.0.1)

HaruPage::setWordSpace — Set word spacing for the page

Descrição

bool HaruPage::setWordSpace ( float $word_space )

Set the word spacing for the page.

Parâmetros

word_space

Defines word spacing for the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::getWordSpace() - Get the current value of word spacing

HaruPage::setWidth
HaruPage::showText
HaruPage


Print text at the current position of the page

HaruPage::setWordSpace
HaruPage::showTextNextLine
HaruPage
PHP Manual

HaruPage::showText

(PECL haru >= 0.0.1)

HaruPage::showText — Print text at the current position of the page

Descrição

bool HaruPage::showText ( string $text )

Prints out the text at the current position of the page.

Parâmetros

text

The text to show.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::showTextNextLine() - Move the current position to the start of the next line and print the text
  • HaruPage::textOut() - Print the text on the specified position

HaruPage::setWordSpace
HaruPage::showTextNextLine
HaruPage


Move the current position to the start of the next line and print the text

HaruPage::showText
HaruPage::stroke
HaruPage
PHP Manual

HaruPage::showTextNextLine

(PECL haru >= 0.0.1)

HaruPage::showTextNextLine — Move the current position to the start of the next line and print the text

Descrição

bool HaruPage::showTextNextLine ( string $text [, float $word_space = 0 [, float $char_space = 0 ]] )

Moves the current position to the start of the next line and print out the text.

Parâmetros

text

The text to show.

word_space

The word spacing.

char_space

The character spacing.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::showText() - Print text at the current position of the page
  • HaruPage::textOut() - Print the text on the specified position

HaruPage::showText
HaruPage::stroke
HaruPage


Paint current path

HaruPage::showTextNextLine
HaruPage::textOut
HaruPage
PHP Manual

HaruPage::stroke

(PECL haru >= 0.0.1)

HaruPage::stroke — Paint current path

Descrição

bool HaruPage::stroke ([ bool $close_path = false ] )

Paints the current path.

Parâmetros

close_path

Closes the current path if set to TRUE.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruPage::showTextNextLine
HaruPage::textOut
HaruPage


Print the text on the specified position

HaruPage::stroke
HaruPage::textRect
HaruPage
PHP Manual

HaruPage::textOut

(PECL haru >= 0.0.1)

HaruPage::textOut — Print the text on the specified position

Descrição

bool HaruPage::textOut ( float $x , float $y , string $text )

Prints the text on the specified position.

Parâmetros

x

y

text

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::showTextNextLine() - Move the current position to the start of the next line and print the text
  • HaruPage::showText() - Print text at the current position of the page

HaruPage::stroke
HaruPage::textRect
HaruPage


Print the text inside the specified region

HaruPage::textOut
HaruFont
HaruPage
PHP Manual

HaruPage::textRect

(PECL haru >= 0.0.1)

HaruPage::textRect — Print the text inside the specified region

Descrição

bool HaruPage::textRect ( float $left , float $top , float $right , float $bottom , string $text [, int $align = HaruPage::TALIGN_LEFT ] )

Prints the text inside the specified region.

Parâmetros

left

Left border of the text area.

top

Top border of the text area.

right

Right border of the text area.

bottom

Lower border of the text area.

text

The text to print.

align

Text alignment. Must be one of the following values:

  • HaruPage::TALIGN_LEFT
  • HaruPage::TALIGN_RIGHT
  • HaruPage::TALIGN_CENTER
  • HaruPage::TALIGN_JUSTIFY

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

Veja Também

  • HaruPage::showTextNextLine() - Move the current position to the start of the next line and print the text
  • HaruPage::showText() - Print text at the current position of the page
  • HaruPage::textOut() - Print the text on the specified position

HaruPage::textOut
HaruFont
HaruPage


The HaruFont class

Introdução

Haru PDF Font Class.

Sinopse da classe

HaruFont {
/* Methods */
int getAscent ( void )
int getCapHeight ( void )
int getDescent ( void )
string getEncodingName ( void )
string getFontName ( void )
array getTextWidth ( string $text )
int getUnicodeWidth ( int $character )
int getXHeight ( void )
int measureText ( string $text , float $width , float $font_size , float $char_space , float $word_space [, bool $word_wrap = false ] )
}

Índice

  • HaruFont::getAscent — Get the vertical ascent of the font
  • HaruFont::getCapHeight — Get the distance from the baseline of uppercase letters
  • HaruFont::getDescent — Get the vertical descent of the font
  • HaruFont::getEncodingName — Get the name of the encoding
  • HaruFont::getFontName — Get the name of the font
  • HaruFont::getTextWidth — Get the total width of the text, number of characters, number of words and number of spaces
  • HaruFont::getUnicodeWidth — Get the width of the character in the font
  • HaruFont::getXHeight — Get the distance from the baseline of lowercase letters
  • HaruFont::measureText — Calculate the number of characters which can be included within the specified width
HaruPage::textRect
HaruFont::getAscent
haru


Get the vertical ascent of the font

HaruFont
HaruFont::getCapHeight
HaruFont
PHP Manual

HaruFont::getAscent

(PECL haru >= 0.0.1)

HaruFont::getAscent — Get the vertical ascent of the font

Descrição

int HaruFont::getAscent ( void )

Get the vertical ascent of the font.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the vertical ascent of the font.

Erros

Joga um HaruException em erro.

HaruFont
HaruFont::getCapHeight
HaruFont


Get the distance from the baseline of uppercase letters

HaruFont::getAscent
HaruFont::getDescent
HaruFont
PHP Manual

HaruFont::getCapHeight

(PECL haru >= 0.0.1)

HaruFont::getCapHeight — Get the distance from the baseline of uppercase letters

Descrição

int HaruFont::getCapHeight ( void )

Get the distance from the baseline of uppercase letters.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the distance from the baseline of uppercase letters.

Erros

Joga um HaruException em erro.

HaruFont::getAscent
HaruFont::getDescent
HaruFont


Get the vertical descent of the font

HaruFont::getCapHeight
HaruFont::getEncodingName
HaruFont
PHP Manual

HaruFont::getDescent

(PECL haru >= 0.0.1)

HaruFont::getDescent — Get the vertical descent of the font

Descrição

int HaruFont::getDescent ( void )

Get the vertical descent of the font.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return the vertical descent of the font.

Erros

Joga um HaruException em erro.

HaruFont::getCapHeight
HaruFont::getEncodingName
HaruFont


Get the name of the encoding

HaruFont::getDescent
HaruFont::getFontName
HaruFont
PHP Manual

HaruFont::getEncodingName

(PECL haru >= 0.0.1)

HaruFont::getEncodingName — Get the name of the encoding

Descrição

string HaruFont::getEncodingName ( void )

Get the name of the font encoding.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the name of the font encoding.

Erros

Joga um HaruException em erro.

HaruFont::getDescent
HaruFont::getFontName
HaruFont


Get the name of the font

HaruFont::getEncodingName
HaruFont::getTextWidth
HaruFont
PHP Manual

HaruFont::getFontName

(PECL haru >= 0.0.1)

HaruFont::getFontName — Get the name of the font

Descrição

string HaruFont::getFontName ( void )

Get the name of the font.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the name of the font.

Erros

Joga um HaruException em erro.

HaruFont::getEncodingName
HaruFont::getTextWidth
HaruFont


Get the total width of the text, number of characters, number of words and number of spaces

HaruFont::getFontName
HaruFont::getUnicodeWidth
HaruFont
PHP Manual

HaruFont::getTextWidth

(PECL haru >= 0.0.1)

HaruFont::getTextWidth — Get the total width of the text, number of characters, number of words and number of spaces

Descrição

array HaruFont::getTextWidth ( string $text )

Get the total width of the text, number of characters, number of words and number of spaces.

Parâmetros

text

The text to measure.

Valor Retornado

Returns the total width of the text, number of characters, number of words and number of spaces in the given text.

Erros

Joga um HaruException em erro.

HaruFont::getFontName
HaruFont::getUnicodeWidth
HaruFont


Get the width of the character in the font

HaruFont::getTextWidth
HaruFont::getXHeight
HaruFont
PHP Manual

HaruFont::getUnicodeWidth

(PECL haru >= 0.0.1)

HaruFont::getUnicodeWidth — Get the width of the character in the font

Descrição

int HaruFont::getUnicodeWidth ( int $character )

Get the width of the character in the font.

Parâmetros

character

The code of the character.

Valor Retornado

Returns the width of the character in the font.

Erros

Joga um HaruException em erro.

HaruFont::getTextWidth
HaruFont::getXHeight
HaruFont


Get the distance from the baseline of lowercase letters

HaruFont::getUnicodeWidth
HaruFont::measureText
HaruFont
PHP Manual

HaruFont::getXHeight

(PECL haru >= 0.0.1)

HaruFont::getXHeight — Get the distance from the baseline of lowercase letters

Descrição

int HaruFont::getXHeight ( void )

Gets the distance from the baseline of lowercase letters.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the distance from the baseline of lowercase letters.

Erros

Joga um HaruException em erro.

HaruFont::getUnicodeWidth
HaruFont::measureText
HaruFont


Calculate the number of characters which can be included within the specified width

HaruFont::getXHeight
HaruImage
HaruFont
PHP Manual

HaruFont::measureText

(PECL haru >= 0.0.1)

HaruFont::measureText — Calculate the number of characters which can be included within the specified width

Descrição

int HaruFont::measureText ( string $text , float $width , float $font_size , float $char_space , float $word_space [, bool $word_wrap = false ] )

Calculate the number of characters which can be included within the specified width.

Parâmetros

text

The text to fit the width.

width

The width of the area to put the text to.

font_size

The size of the font.

char_space

The character spacing.

word_space

The word spacing.

word_wrap

When this parameter is set to TRUE the function "emulates" word wrapping and doesn't include the part of the current word if reached the end of the area.

Valor Retornado

Returns the number of characters which can be included within the specified width.

Erros

Joga um HaruException em erro.

HaruFont::getXHeight
HaruImage
HaruFont


The HaruImage class

Introdução

Haru PDF Image Class.

Sinopse da classe

HaruImage {
/* Methods */
int getBitsPerComponent ( void )
string getColorSpace ( void )
int getHeight ( void )
array getSize ( void )
int getWidth ( void )
bool setColorMask ( int $rmin , int $rmax , int $gmin , int $gmax , int $bmin , int $bmax )
bool setMaskImage ( object $mask_image )
}

Índice

  • HaruImage::getBitsPerComponent — Get the number of bits used to describe each color component of the image
  • HaruImage::getColorSpace — Get the name of the color space
  • HaruImage::getHeight — Get the height of the image
  • HaruImage::getSize — Get size of the image
  • HaruImage::getWidth — Get the width of the image
  • HaruImage::setColorMask — Set the color mask of the image
  • HaruImage::setMaskImage — Set the image mask
HaruFont::measureText
HaruImage::getBitsPerComponent
haru


Get the number of bits used to describe each color component of the image

HaruImage
HaruImage::getColorSpace
HaruImage
PHP Manual

HaruImage::getBitsPerComponent

(PECL haru >= 0.0.1)

HaruImage::getBitsPerComponent — Get the number of bits used to describe each color component of the image

Descrição

int HaruImage::getBitsPerComponent ( void )

Gets the number of bits used to describe each color component of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of bits used to describe each color component of the image.

Erros

Joga um HaruException em erro.

HaruImage
HaruImage::getColorSpace
HaruImage


Get the name of the color space

HaruImage::getBitsPerComponent
HaruImage::getHeight
HaruImage
PHP Manual

HaruImage::getColorSpace

(PECL haru >= 0.0.1)

HaruImage::getColorSpace — Get the name of the color space

Descrição

string HaruImage::getColorSpace ( void )

Get the name of the color space.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the name of the color space of the image. The name is one of the following values:

  • "DeviceGray"
  • "DeviceRGB"
  • "DeviceCMYK"
  • "Indexed"

Erros

Joga um HaruException em erro.

HaruImage::getBitsPerComponent
HaruImage::getHeight
HaruImage


Get the height of the image

HaruImage::getColorSpace
HaruImage::getSize
HaruImage
PHP Manual

HaruImage::getHeight

(PECL haru >= 0.0.1)

HaruImage::getHeight — Get the height of the image

Descrição

int HaruImage::getHeight ( void )

Get the height of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the height of the image.

Erros

Joga um HaruException em erro.

HaruImage::getColorSpace
HaruImage::getSize
HaruImage


Get size of the image

HaruImage::getHeight
HaruImage::getWidth
HaruImage
PHP Manual

HaruImage::getSize

(PECL haru >= 0.0.1)

HaruImage::getSize — Get size of the image

Descrição

array HaruImage::getSize ( void )

Get the size of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array with two elements: width and height, which contain appropriate dimensions of the image.

Erros

Joga um HaruException em erro.

HaruImage::getHeight
HaruImage::getWidth
HaruImage


Get the width of the image

HaruImage::getSize
HaruImage::setColorMask
HaruImage
PHP Manual

HaruImage::getWidth

(PECL haru >= 0.0.1)

HaruImage::getWidth — Get the width of the image

Descrição

int HaruImage::getWidth ( void )

Get the width of the image.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the width of the image.

Erros

Joga um HaruException em erro.

HaruImage::getSize
HaruImage::setColorMask
HaruImage


Set the color mask of the image

HaruImage::getWidth
HaruImage::setMaskImage
HaruImage
PHP Manual

HaruImage::setColorMask

(PECL haru >= 0.0.1)

HaruImage::setColorMask — Set the color mask of the image

Descrição

bool HaruImage::setColorMask ( int $rmin , int $rmax , int $gmin , int $gmax , int $bmin , int $bmax )

Defines the transparent color of the image using the RGB range values. The color within the range is displayed as a transparent color. The color space of the image must be RGB.

Parâmetros

rmin

The lower limit of red. Must be between 0 and 255.

rmax

The upper limit of red. Must be between 0 and 255.

gmin

The lower limit of green. Must be between 0 and 255.

gmax

The upper limit of green. Must be between 0 and 255.

bmin

The lower limit of blue. Must be between 0 and 255.

bmax

The upper limit of blue. Must be between 0 and 255.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruImage::getWidth
HaruImage::setMaskImage
HaruImage


Set the image mask

HaruImage::setColorMask
HaruEncoder
HaruImage
PHP Manual

HaruImage::setMaskImage

(PECL haru >= 0.0.1)

HaruImage::setMaskImage — Set the image mask

Descrição

bool HaruImage::setMaskImage ( object $mask_image )

Sets the image used as image-mask. It must be 1bit gray-scale color image.

Parâmetros

mask_image

A valid HaruImage instance.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruImage::setColorMask
HaruEncoder
HaruImage


The HaruEncoder class

Introdução

Haru PDF Encoder Class.

Sinopse da classe

HaruEncoder {
/* Methods */
int getByteType ( string $text , int $index )
int getType ( void )
int getUnicode ( int $character )
int getWritingMode ( void )
}

Constantes pré-definidas

Type | Name | Description
int | HaruEncoder::TYPE_SINGLE_BYTE |
int | HaruEncoder::TYPE_DOUBLE_BYTE |
int | HaruEncoder::TYPE_UNINITIALIZED |
int | HaruEncoder::UNKNOWN |
int | HaruEncoder::WMODE_HORIZONTAL |
int | HaruEncoder::WMODE_VERTICAL |
int | HaruEncoder::BYTE_TYPE_SINGLE |
int | HaruEncoder::BYTE_TYPE_LEAD |
int | HaruEncoder::BYTE_TYPE_TRAIL |
int | HaruEncoder::BYTE_TYPE_UNKNOWN |

Índice

  • HaruEncoder::getByteType — Get the type of the byte in the text
  • HaruEncoder::getType — Get the type of the encoder
  • HaruEncoder::getUnicode — Convert the specified character to unicode
  • HaruEncoder::getWritingMode — Get the writing mode of the encoder
HaruImage::setMaskImage
HaruEncoder::getByteType
haru


Get the type of the byte in the text

HaruEncoder
HaruEncoder::getType
HaruEncoder
PHP Manual

HaruEncoder::getByteType

(PECL haru >= 0.0.1)

HaruEncoder::getByteType — Get the type of the byte in the text

Descrição

int HaruEncoder::getByteType ( string $text , int $index )

Get the type of the byte in the text.

Parâmetros

text

The text.

index

The position in the text.

Valor Retornado

Returns the type of the byte in the text on the specified position. The result is one of the following values:

  • HaruEncoder::BYTE_TYPE_SINGLE - single byte character.
  • HaruEncoder::BYTE_TYPE_LEAD - lead byte of a double-byte character.
  • HaruEncoder::BYTE_TYPE_TRAIL - trailing byte of a double-byte character.
  • HaruEncoder::BYTE_TYPE_UNKNOWN - invalid encoder or cannot detect the byte type.

Erros

Joga um HaruException em erro.

HaruEncoder
HaruEncoder::getType
HaruEncoder


Get the type of the encoder

HaruEncoder::getByteType
HaruEncoder::getUnicode
HaruEncoder
PHP Manual

HaruEncoder::getType

(PECL haru >= 0.0.1)

HaruEncoder::getType — Get the type of the encoder

Descrição

int HaruEncoder::getType ( void )

Get the type of the encoder.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the type of the encoder. The result is one of the following values:

  • HaruEncoder::TYPE_SINGLE_BYTE - the encoder is for single byte characters.
  • HaruEncoder::TYPE_DOUBLE_BYTE - the encoder is for multibyte characters.
  • HaruEncoder::TYPE_UNINITIALIZED - the encoder is not initialized.
  • HaruEncoder::UNKNOWN - the encoder is invalid.

Erros

Joga um HaruException em erro.

HaruEncoder::getByteType
HaruEncoder::getUnicode
HaruEncoder


Convert the specified character to unicode

HaruEncoder::getType
HaruEncoder::getWritingMode
HaruEncoder
PHP Manual

HaruEncoder::getUnicode

(PECL haru >= 0.0.1)

HaruEncoder::getUnicode — Convert the specified character to unicode

Descrição

int HaruEncoder::getUnicode ( int $character )

Converts the specified character to unicode.

Parâmetros

character

The character code to convert.

Valor Retornado

Erros

Joga um HaruException em erro.

HaruEncoder::getType
HaruEncoder::getWritingMode
HaruEncoder


Get the writing mode of the encoder

HaruEncoder::getUnicode
HaruOutline
HaruEncoder
PHP Manual

HaruEncoder::getWritingMode

(PECL haru >= 0.0.1)

HaruEncoder::getWritingMode — Get the writing mode of the encoder

Descrição

int HaruEncoder::getWritingMode ( void )

Get the writing mode of the encoder.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the writing mode of the encoder. The result value is on of the following:

  • HaruEncoder::WMODE_HORIZONTAL - horizontal writing mode.
  • HaruEncoder::WMODE_VERTICAL - vertical writing mode.

Erros

Joga um HaruException em erro.

HaruEncoder::getUnicode
HaruOutline
HaruEncoder


The HaruOutline class

Introdução

Haru PDF Outline Class.

Sinopse da classe

HaruOutline {
/* Methods */
bool setDestination ( object $destination )
bool setOpened ( bool $opened )
}

Índice

  • HaruOutline::setDestination — Set the destination for the outline
  • HaruOutline::setOpened — Set the initial state of the outline
HaruEncoder::getWritingMode
HaruOutline::setDestination
haru


Set the destination for the outline

HaruOutline
HaruOutline::setOpened
HaruOutline
PHP Manual

HaruOutline::setDestination

(PECL haru >= 0.0.1)

HaruOutline::setDestination — Set the destination for the outline

Descrição

bool HaruOutline::setDestination ( object $destination )

Sets a destination object which becomes a target to jump to when the outline is clicked.

Parâmetros

destination

A valid HaruDestination instance.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruOutline
HaruOutline::setOpened
HaruOutline


Set the initial state of the outline

HaruOutline::setDestination
HaruAnnotation
HaruOutline
PHP Manual

HaruOutline::setOpened

(PECL haru >= 0.0.1)

HaruOutline::setOpened — Set the initial state of the outline

Descrição

bool HaruOutline::setOpened ( bool $opened )

Defines whether this node is opened or not when the outline is displayed for the first time.

Parâmetros

opened

TRUE means open, FALSE - closed.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruOutline::setDestination
HaruAnnotation
HaruOutline


The HaruAnnotation class

Introdução

Haru PDF Annotation Class.

Sinopse da classe

HaruAnnotation {
/* Methods */
bool setBorderStyle ( float $width , int $dash_on , int $dash_off )
bool setHighlightMode ( int $mode )
bool setIcon ( int $icon )
bool setOpened ( bool $opened )
}

Constantes pré-definidas

Type | Name | Description
int | HaruAnnotation::NO_HIGHLIGHT |
int | HaruAnnotation::INVERT_BOX |
int | HaruAnnotation::INVERT_BORDER |
int | HaruAnnotation::DOWN_APPEARANCE |
int | HaruAnnotation::ICON_COMMENT |
int | HaruAnnotation::ICON_KEY |
int | HaruAnnotation::ICON_NOTE |
int | HaruAnnotation::ICON_HELP |
int | HaruAnnotation::ICON_NEW_PARAGRAPH |
int | HaruAnnotation::ICON_PARAGRAPH |
int | HaruAnnotation::ICON_INSERT |

Índice

  • HaruAnnotation::setBorderStyle — Set the border style of the annotation
  • HaruAnnotation::setHighlightMode — Set the highlighting mode of the annotation
  • HaruAnnotation::setIcon — Set the icon style of the annotation
  • HaruAnnotation::setOpened — Set the initial state of the annotation
HaruOutline::setOpened
HaruAnnotation::setBorderStyle
haru


Set the border style of the annotation

HaruAnnotation
HaruAnnotation::setHighlightMode
HaruAnnotation
PHP Manual

HaruAnnotation::setBorderStyle

(PECL haru >= 0.0.1)

HaruAnnotation::setBorderStyle — Set the border style of the annotation

Descrição

bool HaruAnnotation::setBorderStyle ( float $width , int $dash_on , int $dash_off )

Defines the style of the border of the annotation. This function may be used with link annotations only.

Parâmetros

width

The width of the border line.

dash_on

The dash style.

dash_off

The dash style.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruAnnotation
HaruAnnotation::setHighlightMode
HaruAnnotation


Set the highlighting mode of the annotation

HaruAnnotation::setBorderStyle
HaruAnnotation::setIcon
HaruAnnotation
PHP Manual

HaruAnnotation::setHighlightMode

(PECL haru >= 0.0.1)

HaruAnnotation::setHighlightMode — Set the highlighting mode of the annotation

Descrição

bool HaruAnnotation::setHighlightMode ( int $mode )

Defines the appearance of the annotation when clicked. This function may be used with link annotations only.

Parâmetros

mode

The highlighting mode of the annotation. Can take only these values:

  • HaruAnnotation::NO_HIGHLIGHT - no highlighting.
  • HaruAnnotation::INVERT_BOX - invert the contents of the annotation.
  • HaruAnnotation::INVERT_BORDER - invert the border of the annotation.
  • HaruAnnotation::DOWN_APPEARANCE - dent the annotation.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruAnnotation::setBorderStyle
HaruAnnotation::setIcon
HaruAnnotation


Set the icon style of the annotation

HaruAnnotation::setHighlightMode
HaruAnnotation::setOpened
HaruAnnotation
PHP Manual

HaruAnnotation::setIcon

(PECL haru >= 0.0.1)

HaruAnnotation::setIcon — Set the icon style of the annotation

Descrição

bool HaruAnnotation::setIcon ( int $icon )

Defines the style of the annotation icon. This function may be used with text annotations only.

Parâmetros

icon

The style of the icon. Can take only these values:

  • HaruAnnotation::ICON_COMMENT
  • HaruAnnotation::ICON_KEY
  • HaruAnnotation::ICON_NOTE
  • HaruAnnotation::ICON_HELP
  • HaruAnnotation::ICON_NEW_PARAGRAPH
  • HaruAnnotation::ICON_PARAGRAPH
  • HaruAnnotation::ICON_INSERT

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruAnnotation::setHighlightMode
HaruAnnotation::setOpened
HaruAnnotation


Set the initial state of the annotation

HaruAnnotation::setIcon
HaruDestination
HaruAnnotation
PHP Manual

HaruAnnotation::setOpened

(PECL haru >= 0.0.1)

HaruAnnotation::setOpened — Set the initial state of the annotation

Descrição

bool HaruAnnotation::setOpened ( bool $opened )

Defines whether the annotation is initially displayed open. This function may be used with text annotations only.

Parâmetros

opened

TRUE means the annotation is initially displayed open, FALSE - means it's closed.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruAnnotation::setIcon
HaruDestination
HaruAnnotation


The HaruDestination class

Introdução

Haru PDF Destination Class.

Sinopse da classe

HaruDestination {
/* Methods */
bool setFit ( void )
bool setFitB ( void )
bool setFitBH ( float $top )
bool setFitBV ( float $left )
bool setFitH ( float $top )
bool setFitR ( float $left , float $bottom , float $right , float $top )
bool setFitV ( float $left )
bool setXYZ ( float $left , float $top , float $zoom )
}

Índice

  • HaruDestination::setFit — Set the appearance of the page to fit the window
  • HaruDestination::setFitB — Set the appearance of the page to fit the bounding box of the page within the window
  • HaruDestination::setFitBH — Set the appearance of the page to fit the width of the bounding box
  • HaruDestination::setFitBV — Set the appearance of the page to fit the height of the boudning box
  • HaruDestination::setFitH — Set the appearance of the page to fit the window width
  • HaruDestination::setFitR — Set the appearance of the page to fit the specified rectangle
  • HaruDestination::setFitV — Set the appearance of the page to fit the window height
  • HaruDestination::setXYZ — Set the appearance of the page
HaruAnnotation::setOpened
HaruDestination::setFit
haru


Set the appearance of the page to fit the window

HaruDestination
HaruDestination::setFitB
HaruDestination
PHP Manual

HaruDestination::setFit

(PECL haru >= 0.0.1)

HaruDestination::setFit — Set the appearance of the page to fit the window

Descrição

bool HaruDestination::setFit ( void )

Defines the appearance of the page to fit the window.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination
HaruDestination::setFitB
HaruDestination


Set the appearance of the page to fit the bounding box of the page within the window

HaruDestination::setFit
HaruDestination::setFitBH
HaruDestination
PHP Manual

HaruDestination::setFitB

(PECL haru >= 0.0.1)

HaruDestination::setFitB — Set the appearance of the page to fit the bounding box of the page within the window

Descrição

bool HaruDestination::setFitB ( void )

Defines the appearance of the page to fit the bounding box of the page within the window.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFit
HaruDestination::setFitBH
HaruDestination


Set the appearance of the page to fit the width of the bounding box

HaruDestination::setFitB
HaruDestination::setFitBV
HaruDestination
PHP Manual

HaruDestination::setFitBH

(PECL haru >= 0.0.1)

HaruDestination::setFitBH — Set the appearance of the page to fit the width of the bounding box

Descrição

bool HaruDestination::setFitBH ( float $top )

Defines the appearance of the page to magnifying to fit the width of the bounding box and setting the top position of the page to the value of top.

Parâmetros

top

The top coordinates of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitB
HaruDestination::setFitBV
HaruDestination


Set the appearance of the page to fit the height of the boudning box

HaruDestination::setFitBH
HaruDestination::setFitH
HaruDestination
PHP Manual

HaruDestination::setFitBV

(PECL haru >= 0.0.1)

HaruDestination::setFitBV — Set the appearance of the page to fit the height of the boudning box

Descrição

bool HaruDestination::setFitBV ( float $left )

Defines the appearance of the page to magnifying to fit the height of the bounding box and setting the left position of the page to the value of left.

Parâmetros

left

The left coordinates of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitBH
HaruDestination::setFitH
HaruDestination


Set the appearance of the page to fit the window width

HaruDestination::setFitBV
HaruDestination::setFitR
HaruDestination
PHP Manual

HaruDestination::setFitH

(PECL haru >= 0.0.1)

HaruDestination::setFitH — Set the appearance of the page to fit the window width

Descrição

bool HaruDestination::setFitH ( float $top )

Defines the appearance of the page to fit the window width and sets the top position of the page to the value of top.

Parâmetros

top

The top position of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitBV
HaruDestination::setFitR
HaruDestination


Set the appearance of the page to fit the specified rectangle

HaruDestination::setFitH
HaruDestination::setFitV
HaruDestination
PHP Manual

HaruDestination::setFitR

(PECL haru >= 0.0.1)

HaruDestination::setFitR — Set the appearance of the page to fit the specified rectangle

Descrição

bool HaruDestination::setFitR ( float $left , float $bottom , float $right , float $top )

Defines the appearance of the page to fit the rectangle by the parameters.

Parâmetros

left

The left coordinates of the page.

bottom

The bottom coordinates of the page.

right

The right coordinates of the page.

top

The top coordinates of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitH
HaruDestination::setFitV
HaruDestination


Set the appearance of the page to fit the window height

HaruDestination::setFitR
HaruDestination::setXYZ
HaruDestination
PHP Manual

HaruDestination::setFitV

(PECL haru >= 0.0.1)

HaruDestination::setFitV — Set the appearance of the page to fit the window height

Descrição

bool HaruDestination::setFitV ( float $left )

Defines the appearance of the page to fit the window height.

Parâmetros

left

The left position of the page.

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitR
HaruDestination::setXYZ
HaruDestination


Set the appearance of the page

HaruDestination::setFitV
Ming
HaruDestination
PHP Manual

HaruDestination::setXYZ

(PECL haru >= 0.0.1)

HaruDestination::setXYZ — Set the appearance of the page

Descrição

bool HaruDestination::setXYZ ( float $left , float $top , float $zoom )

Defines the appearance of the page using three parameters: left, top and zoom.

Parâmetros

left

The left position of the page.

top

The top position of the page.

zoom

The magnification factor. The value must be between 0.08 (8%) and 32 (3200%).

Valor Retornado

Returns TRUE on success.

Erros

Joga um HaruException em erro.

HaruDestination::setFitV
Ming
HaruDestination


Ming (flash)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • SWFAction Examples
    • SWFSPrite basic examples
  • Ming Funções
    • ming_keypress — Returns the action flag for keyPress(char)
    • ming_setcubicthreshold — Set cubic threshold
    • ming_setscale — Set the global scaling factor.
    • ming_setswfcompression — Sets the SWF output compression
    • ming_useconstants — Use constant pool
    • ming_useswfversion — Sets the SWF version
  • SWFAction — The SWFAction class
    • SWFAction->__construct — Creates a new SWFAction
  • SWFBitmap — The SWFBitmap class
    • SWFBitmap->__construct — Loads Bitmap object
    • SWFBitmap->getHeight — Returns the bitmap's height
    • SWFBitmap->getWidth — Returns the bitmap's width
  • SWFButton — The SWFButton class
    • SWFButton->addAction — Adds an action
    • SWFButton->addASound — Associates a sound with a button transition
    • SWFButton->addShape — Adds a shape to a button
    • SWFButton->__construct — Creates a new Button
    • SWFButton->setAction — Sets the action
    • SWFButton->setDown — Alias for addShape(shape, SWFBUTTON_DOWN)
    • SWFButton->setHit — Alias for addShape(shape, SWFBUTTON_HIT)
    • SWFButton->setMenu — enable track as menu button behaviour
    • SWFButton->setOver — Alias for addShape(shape, SWFBUTTON_OVER)
    • SWFButton->setUp — Alias for addShape(shape, SWFBUTTON_UP)
  • SWFDisplayItem — The SWFDisplayItem class
    • SWFDisplayItem->addAction — Adds this SWFAction to the given SWFSprite instance
    • SWFDisplayItem->addColor — Adds the given color to this item's color transform
    • SWFDisplayItem->endMask — Another way of defining a MASK layer
    • SWFDisplayItem->getRot — Descrição
    • SWFDisplayItem->getX — Descrição
    • SWFDisplayItem->getXScale — Descrição
    • SWFDisplayItem->getXSkew — Descrição
    • SWFDisplayItem->getY — Descrição
    • SWFDisplayItem->getYScale — Descrição
    • SWFDisplayItem->getYSkew — Descrição
    • SWFDisplayItem->move — Moves object in relative coordinates
    • SWFDisplayItem->moveTo — Moves object in global coordinates
    • SWFDisplayItem->multColor — Multiplies the item's color transform
    • SWFDisplayItem->remove — Removes the object from the movie
    • SWFDisplayItem->rotate — Rotates in relative coordinates
    • SWFDisplayItem->rotateTo — Rotates the object in global coordinates
    • SWFDisplayItem->scale — Scales the object in relative coordinates
    • SWFDisplayItem->scaleTo — Scales the object in global coordinates
    • SWFDisplayItem->setDepth — Sets z-order
    • SWFDisplayItem->setMaskLevel — Defines a MASK layer at level
    • SWFDisplayItem->setMatrix — Sets the item's transform matrix
    • SWFDisplayItem->setName — Sets the object's name
    • SWFDisplayItem->setRatio — Sets the object's ratio
    • SWFDisplayItem->skewX — Sets the X-skew
    • SWFDisplayItem->skewXTo — Sets the X-skew
    • SWFDisplayItem->skewY — Sets the Y-skew
    • SWFDisplayItem->skewYTo — Sets the Y-skew
  • SWFFill — The SWFFill class
    • SWFFill->moveTo — Moves fill origin
    • SWFFill->rotateTo — Sets fill's rotation
    • SWFFill->scaleTo — Sets fill's scale
    • SWFFill->skewXTo — Sets fill x-skew
    • SWFFill->skewYTo — Sets fill y-skew
  • SWFFont — The SWFFont class
    • SWFFont->__construct — Loads a font definition
    • SWFFont->getAscent — Returns the ascent of the font, or 0 if not available
    • SWFFont->getDescent — Returns the descent of the font, or 0 if not available
    • SWFFont->getLeading — Returns the leading of the font, or 0 if not available
    • SWFFont->getShape — Returns the glyph shape of a char as a text string
    • SWFFont->getUTF8Width — Calculates the width of the given string in this font at full height
    • SWFFont->getWidth — Returns the string's width
  • SWFFontChar — The SWFFontChar class
    • SWFFontChar->addChars — Adds characters to a font for exporting font
    • SWFFontChar->addUTF8Chars — Adds characters to a font for exporting font
  • SWFGradient — The SWFGradient class
    • SWFGradient->addEntry — Adds an entry to the gradient list
    • SWFGradient->__construct — Creates a gradient object
  • SWFMorph — The SWFMorph class
    • SWFMorph->__construct — Creates a new SWFMorph object
    • SWFMorph->getShape1 — Gets a handle to the starting shape
    • SWFMorph->getShape2 — Gets a handle to the ending shape
  • SWFMovie — The SWFMovie class
    • SWFMovie->add — Adds any type of data to a movie
    • SWFMovie->addExport — Descrição
    • SWFMovie->addFont — Descrição
    • SWFMovie->__construct — Creates a new movie object, representing an SWF version 4 movie
    • SWFMovie->importChar — Descrição
    • SWFMovie->importFont — Descrição
    • SWFMovie->labelFrame — Labels a frame
    • SWFMovie->nextFrame — Moves to the next frame of the animation
    • SWFMovie->output — Dumps your lovingly prepared movie out
    • SWFMovie->remove — Removes the object instance from the display list
    • SWFMovie->save — Saves the SWF movie in a file
    • SWFMovie->saveToFile — Descrição
    • SWFMovie->setbackground — Sets the background color
    • SWFMovie->setDimension — Sets the movie's width and height
    • SWFMovie->setFrames — Sets the total number of frames in the animation
    • SWFMovie->setRate — Sets the animation's frame rate
    • SWFMovie->startSound — Descrição
    • SWFMovie->stopSound — Descrição
    • SWFMovie->streamMP3 — Streams a MP3 file
    • SWFMovie->writeExports — Descrição
  • SWFPrebuiltClip — The SWFPrebuiltClip class
    • SWFPrebuiltClip->__construct — Returns a SWFPrebuiltClip object
  • SWFShape — The SWFShape class
    • SWFShape->addFill — Adds a solid fill to the shape
    • SWFShape->__construct — Creates a new shape object
    • SWFShape->drawArc — Draws an arc of radius r centered at the current location, from angle startAngle to angle endAngle measured clockwise from 12 o'clock
    • SWFShape->drawCircle — Draws a circle of radius r centered at the current location, in a counter-clockwise fashion
    • SWFShape->drawCubic — Draws a cubic bezier curve using the current position and the three given points as control points
    • SWFShape->drawCubicTo — Draws a cubic bezier curve using the current position and the three given points as control points
    • SWFShape->drawCurve — Draws a curve (relative)
    • SWFShape->drawCurveTo — Draws a curve
    • SWFShape->drawGlyph — Draws the first character in the given string into the shape using the glyph definition from the given font
    • SWFShape->drawLine — Draws a line (relative)
    • SWFShape->drawLineTo — Draws a line
    • SWFShape->movePen — Moves the shape's pen (relative)
    • SWFShape->movePenTo — Moves the shape's pen
    • SWFShape->setLeftFill — Sets left rasterizing color
    • SWFShape->setLine — Sets the shape's line style
    • SWFShape->setRightFill — Sets right rasterizing color
  • SWFSound — The SWFSound class
    • SWFSound — Returns a new SWFSound object from given file
  • SWFSoundInstance — The SWFSoundInstance class
    • SWFSoundInstance->loopCount — Descrição
    • SWFSoundInstance->loopInPoint — Descrição
    • SWFSoundInstance->loopOutPoint — Descrição
    • SWFSoundInstance->noMultiple — Descrição
  • SWFSprite — The SWFSprite class
    • SWFSprite->add — Adds an object to a sprite
    • SWFSprite->__construct — Creates a movie clip (a sprite)
    • SWFSprite->labelFrame — Labels frame
    • SWFSprite->nextFrame — Moves to the next frame of the animation
    • SWFSprite->remove — Removes an object to a sprite
    • SWFSprite->setFrames — Sets the total number of frames in the animation
    • SWFSprite->startSound — Descrição
    • SWFSprite->stopSound — Descrição
  • SWFText — The SWFText class
    • SWFText->addString — Draws a string
    • SWFText->addUTF8String — Writes the given text into this SWFText object at the current pen position, using the current font, height, spacing, and color
    • SWFText->__construct — Creates a new SWFText object
    • SWFText->getAscent — Returns the ascent of the current font at its current size, or 0 if not available
    • SWFText->getDescent — Returns the descent of the current font at its current size, or 0 if not available
    • SWFText->getLeading — Returns the leading of the current font at its current size, or 0 if not available
    • SWFText->getUTF8Width — calculates the width of the given string in this text objects current font and size
    • SWFText->getWidth — Computes string's width
    • SWFText->moveTo — Moves the pen
    • SWFText->setColor — Sets the current text color
    • SWFText->setFont — Sets the current font
    • SWFText->setHeight — Sets the current font height
    • SWFText->setSpacing — Sets the current font spacing
  • SWFTextField — The SWFTextField class
    • SWFTextField->addChars — adds characters to a font that will be available within a textfield
    • SWFTextField->addString — Concatenates the given string to the text field
    • SWFTextField->align — Sets the text field alignment
    • SWFTextField->__construct — Creates a text field object
    • SWFTextField->setBounds — Sets the text field width and height
    • SWFTextField->setColor — Sets the color of the text field
    • SWFTextField->setFont — Sets the text field font
    • SWFTextField->setHeight — Sets the font height of this text field font
    • SWFTextField->setIndentation — Sets the indentation of the first line
    • SWFTextField->setLeftMargin — Sets the left margin width of the text field
    • SWFTextField->setLineSpacing — Sets the line spacing of the text field
    • SWFTextField->setMargins — Sets the margins width of the text field
    • SWFTextField->setName — Sets the variable name
    • SWFTextField->setPadding — Sets the padding of this textfield
    • SWFTextField->setRightMargin — Sets the right margin width of the text field
  • SWFVideoStream — The SWFVideoStream class
    • SWFVideoStream->__construct — Returns a SWFVideoStream object
    • SWFVideoStream->getNumFrames — Returns the number of frames in the video
    • SWFVideoStream->setDimension — Sets video dimension
HaruDestination::setXYZ
Introdução
Saída de MIME Não-Texto


Introdução

First of all: Ming is not an acronym. Ming is an open-source (LGPL) library which allows you to create SWF ("Flash") format movies. Ming supports almost all of Flash 4's features, including: shapes, gradients, bitmaps (pngs and jpegs), morphs ("shape tweens"), text, buttons, actions, sprites ("movie clips"), streaming mp3, and color transforms --the only thing that's missing is sound events.

Note that all values specifying length, distance, size, etc. are in "twips", twenty units per pixel. That's pretty much arbitrary, though, since the player scales the movie to whatever pixel size is specified in the embed/object tag, or the entire frame if not embedded.

Ming offers a number of advantages over the existing PHP/libswf module. You can use Ming anywhere you can compile the code, whereas libswf is closed-source and only available for a few platforms, Windows not one of them. Ming provides some insulation from the mundane details of the SWF file format, wrapping the movie elements in PHP objects. Also, Ming is still being maintained; if there's a feature that you want to see, just let us know at » http://www.libming.org/.

Ming was added in PHP 4.0.5.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0.

Ming
Instalação/Configuração
Ming


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Ming


Dependências

To use Ming with PHP, you first need to build and install the Ming library. Source code and installation instructions are available at the Ming home page: » http://www.libming.org/ along with examples, a small tutorial, and the latest news.

Download the ming archive. Unpack the archive. Go in the Ming directory. make. make install.

This will build libming.so and install it into /usr/lib/, and copy ming.h into /usr/include/. Edit the PREFIX= line in the Makefile to change the installation directory.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ming.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MING_NEW (integer)
MING_ZLIB (integer)
SWFBUTTON_HIT (integer)
SWFBUTTON_DOWN (integer)
SWFBUTTON_OVER (integer)
SWFBUTTON_UP (integer)
SWFBUTTON_MOUSEUPOUTSIDE (integer)
SWFBUTTON_DRAGOVER (integer)
SWFBUTTON_DRAGOUT (integer)
SWFBUTTON_MOUSEUP (integer)
SWFBUTTON_MOUSEDOWN (integer)
SWFBUTTON_MOUSEOUT (integer)
SWFBUTTON_MOUSEOVER (integer)
SWFFILL_RADIAL_GRADIENT (integer)
SWFFILL_LINEAR_GRADIENT (integer)
SWFFILL_TILED_BITMAP (integer)
SWFFILL_CLIPPED_BITMAP (integer)
SWFTEXTFIELD_HASLENGTH (integer)
SWFTEXTFIELD_NOEDIT (integer)
SWFTEXTFIELD_PASSWORD (integer)
SWFTEXTFIELD_MULTILINE (integer)
SWFTEXTFIELD_WORDWRAP (integer)
SWFTEXTFIELD_DRAWBOX (integer)
SWFTEXTFIELD_NOSELECT (integer)
SWFTEXTFIELD_HTML (integer)
SWFTEXTFIELD_ALIGN_LEFT (integer)
SWFTEXTFIELD_ALIGN_RIGHT (integer)
SWFTEXTFIELD_ALIGN_CENTER (integer)
SWFTEXTFIELD_ALIGN_JUSTIFY (integer)
SWFACTION_ONLOAD (integer)
SWFACTION_ENTERFRAME (integer)
SWFACTION_UNLOAD (integer)
SWFACTION_MOUSEMOVE (integer)
SWFACTION_MOUSEDOWN (integer)
SWFACTION_MOUSEUP (integer)
SWFACTION_KEYDOWN (integer)
SWFACTION_KEYUP (integer)
SWFACTION_DATA (integer)
Tipos Resource
Exemplos
Ming


Exemplos

Índice

  • SWFAction Examples
  • SWFSPrite basic examples
Constantes pré-definidas
SWFAction Examples
Ming


SWFAction Examples

This simple example will move the red square across the window.

Exemplo #1 swfaction() example

<?php
  $s = new SWFShape();
  $f = $s->addFill(0xff, 0, 0);
  $s->setRightFill($f);

  $s->movePenTo(-500, -500);
  $s->drawLineTo(500, -500);
  $s->drawLineTo(500, 500);
  $s->drawLineTo(-500, 500);
  $s->drawLineTo(-500, -500);

  $p = new SWFSprite();
  $i = $p->add($s);
  $i->setDepth(1);
  $p->nextFrame();

  for ($n=0; $n<5; ++$n) {
    $i->rotate(-15);
    $p->nextFrame();
  }

  $m = new SWFMovie();
  $m->setBackground(0xff, 0xff, 0xff);
  $m->setDimension(6000, 4000);

  $i = $m->add($p);
  $i->setDepth(1);
  $i->moveTo(-500,2000);
  $i->setName("box");

  $m->add(new SWFAction("/box.x += 3;"));
  $m->nextFrame();
  $m->add(new SWFAction("gotoFrame(0); play();"));
  $m->nextFrame();

  header('Content-type: application/x-shockwave-flash');
  $m->output();
?>

This simple example tracks down your mouse on the screen.

Exemplo #2 swfaction() example

<?php

  $m = new SWFMovie();
  $m->setRate(36.0);
  $m->setDimension(1200, 800);
  $m->setBackground(0, 0, 0);

  /* mouse tracking sprite - empty, but follows mouse so we can
     get its x and y coordinates */

  $i = $m->add(new SWFSprite());
  $i->setName('mouse');

  $m->add(new SWFAction("
    startDrag('/mouse', 1); /* '1' means lock sprite to the mouse */
  "));

  /* might as well turn off antialiasing, since these are just squares. */

  $m->add(new SWFAction("
    this.quality = 0;
  "));

  /* morphing box */
  $r = new SWFMorph();
  $s = $r->getShape1();

  /* Note this is backwards from normal shapes.  No idea why. */
  $s->setLeftFill($s->addFill(0xff, 0xff, 0xff));
  $s->movePenTo(-40, -40);
  $s->drawLine(80, 0);
  $s->drawLine(0, 80);
  $s->drawLine(-80, 0);
  $s->drawLine(0, -80);

  $s = $r->getShape2();

  $s->setLeftFill($s->addFill(0x00, 0x00, 0x00));
  $s->movePenTo(-1, -1);
  $s->drawLine(2, 0);
  $s->drawLine(0, 2);
  $s->drawLine(-2, 0);
  $s->drawLine(0, -2);

  /* sprite container for morphing box -
     this is just a timeline w/ the box morphing */

  $box = new SWFSprite();
  $box->add(new SWFAction("
    stop();
  "));
  $i = $box->add($r);

  for ($n=0; $n<=20; ++$n) {
    $i->setRatio($n/20);
    $box->nextFrame();
  }

  /* this container sprite allows us to use the same action code many times */

  $cell = new SWFSprite();
  $i = $cell->add($box);
  $i->setName('box');

  $cell->add(new SWFAction("

    setTarget('box');

    /* ...x means the x coordinate of the parent, i.e. (..).x */
    dx = (/mouse.x + random(6)-3 - ...x)/5;
    dy = (/mouse.y + random(6)-3 - ...y)/5;
    gotoFrame(int(dx*dx + dy*dy));

  "));

  $cell->nextFrame();
  $cell->add(new SWFAction("

    gotoFrame(0);
    play();

  "));

  $cell->nextFrame();

  /* finally, add a bunch of the cells to the movie */

  for ($x=0; $x<12; ++$x) {
    for ($y=0; $y<8; ++$y) {
      $i = $m->add($cell);
      $i->moveTo(100*$x+50, 100*$y+50);
    }
  }

  $m->nextFrame();

  $m->add(new SWFAction("

    gotoFrame(1);
    play();

  "));

  header('Content-type: application/x-shockwave-flash');
  $m->output();
?>

Same as above, but with nice colored balls...

Exemplo #3 swfaction() example

<?php

  $m = new SWFMovie();
  $m->setDimension(11000, 8000);
  $m->setBackground(0x00, 0x00, 0x00);

  $m->add(new SWFAction("

this.quality = 0;
/frames.visible = 0;
startDrag('/mouse', 1);

  "));

  // mouse tracking sprite
  $t = new SWFSprite();
  $i = $m->add($t);
  $i->setName('mouse');

  $g = new SWFGradient();
  $g->addEntry(0, 0xff, 0xff, 0xff, 0xff);
  $g->addEntry(0.1, 0xff, 0xff, 0xff, 0xff);
  $g->addEntry(0.5, 0xff, 0xff, 0xff, 0x5f);
  $g->addEntry(1.0, 0xff, 0xff, 0xff, 0);

  // gradient shape thing
  $s = new SWFShape();
  $f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT);
  $f->scaleTo(0.03);
  $s->setRightFill($f);
  $s->movePenTo(-600, -600);
  $s->drawLine(1200, 0);
  $s->drawLine(0, 1200);
  $s->drawLine(-1200, 0);
  $s->drawLine(0, -1200);

  // need to make this a sprite so we can multColor it
  $p = new SWFSprite();
  $p->add($s);
  $p->nextFrame();

  // put the shape in here, each frame a different color
  $q = new SWFSprite();
  $q->add(new SWFAction("gotoFrame(random(7)+1); stop();"));
  $i = $q->add($p);

  $i->multColor(1.0, 1.0, 1.0);
  $q->nextFrame();
  $i->multColor(1.0, 0.5, 0.5);
  $q->nextFrame();
  $i->multColor(1.0, 0.75, 0.5);
  $q->nextFrame();
  $i->multColor(1.0, 1.0, 0.5);
  $q->nextFrame();
  $i->multColor(0.5, 1.0, 0.5);
  $q->nextFrame();
  $i->multColor(0.5, 0.5, 1.0);
  $q->nextFrame();
  $i->multColor(1.0, 0.5, 1.0);
  $q->nextFrame();

  // finally, this one contains the action code
  $p = new SWFSprite();
  $i = $p->add($q);
  $i->setName('frames');
  $p->add(new SWFAction("

dx = (/:mousex-/:lastx)/3 + random(10)-5;
dy = (/:mousey-/:lasty)/3;
x = /:mousex;
y = /:mousey;
alpha = 100;

  "));
  $p->nextFrame();

  $p->add(new SWFAction("

this.x = x;
this.y = y;
this.alpha = alpha;
x += dx;
y += dy;
dy += 3;
alpha -= 8;

  "));
  $p->nextFrame();

  $p->add(new SWFAction("prevFrame(); play();"));
  $p->nextFrame();

  $i = $m->add($p);
  $i->setName('frames');
  $m->nextFrame();

  $m->add(new SWFAction("

lastx = mousex;
lasty = mousey;
mousex = /mouse.x;
mousey = /mouse.y;

++num;

if (num == 11)
  num = 1;

removeClip('char' & num);
duplicateClip(/frames, 'char' & num, num);

  "));

  $m->nextFrame();
  $m->add(new SWFAction("prevFrame(); play();"));

  header('Content-type: application/x-shockwave-flash');
  $m->output();
?>

Exemplos
SWFSPrite basic examples
Exemplos


SWFSPrite basic examples

This simple example will spin gracefully a big red square.

Exemplo #1 swfsprite() example

<?php
$s = new SWFShape();
$s->setRightFill($s->addFill(0xff, 0, 0));
$s->movePenTo(-500, -500);
$s->drawLineTo(500, -500);
$s->drawLineTo(500, 500);
$s->drawLineTo(-500, 500);
$s->drawLineTo(-500, -500);

$p = new SWFSprite();
$i = $p->add($s);
$p->nextFrame();
$i->rotate(15);
$p->nextFrame();
$i->rotate(15);
$p->nextFrame();
$i->rotate(15);
$p->nextFrame();
$i->rotate(15);
$p->nextFrame();
$i->rotate(15);
$p->nextFrame();

$m = new SWFMovie();
$i = $m->add($p);
$i->moveTo(1500, 1000);
$i->setName("blah");

$m->setBackground(0xff, 0xff, 0xff);
$m->setDimension(3000, 2000);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFAction Examples
Ming Funções
Exemplos


Ming Funções

Índice

  • ming_keypress — Returns the action flag for keyPress(char)
  • ming_setcubicthreshold — Set cubic threshold
  • ming_setscale — Set the global scaling factor.
  • ming_setswfcompression — Sets the SWF output compression
  • ming_useconstants — Use constant pool
  • ming_useswfversion — Sets the SWF version
SWFSPrite basic examples
ming_keypress
Ming


Returns the action flag for keyPress(char)

Ming Funções
ming_setcubicthreshold
Ming Funções
PHP Manual

ming_keypress

(PHP 5 <= 5.3.0, PECL ming SVN)

ming_keypress — Returns the action flag for keyPress(char)

Descrição

int ming_keypress ( string $char )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Ming Funções
ming_setcubicthreshold
Ming Funções


Set cubic threshold

ming_keypress
ming_setscale
Ming Funções
PHP Manual

ming_setcubicthreshold

(PHP 4 >= 4.0.5, PHP 5, PECL ming SVN)

ming_setcubicthreshold — Set cubic threshold

Descrição

void ming_setcubicthreshold ( int $threshold )

Sets the threshold error for drawing cubic beziers.

Parâmetros

threshold

The Threshold. Lower is more accurate, hence larger file size.

Valor Retornado

Não há valor retornado.

ming_keypress
ming_setscale
Ming Funções


Set the global scaling factor.

ming_setcubicthreshold
ming_setswfcompression
Ming Funções
PHP Manual

ming_setscale

(PHP 4 >= 4.0.5, PHP 5, PECL ming SVN)

ming_setscale — Set the global scaling factor.

Descrição

void ming_setscale ( float $scale )

Sets the scale of the output SWF. Inside the SWF file, coordinates are measured in TWIPS, rather than PIXELS. There are 20 TWIPS in 1 pixel.

Parâmetros

scale

The scale to be set.

Valor Retornado

Não há valor retornado.

ming_setcubicthreshold
ming_setswfcompression
Ming Funções


Sets the SWF output compression

ming_setscale
ming_useconstants
Ming Funções
PHP Manual

ming_setswfcompression

(PHP 5.2.1-5.3.0, PECL ming SVN)

ming_setswfcompression — Sets the SWF output compression

Descrição

void ming_setswfcompression ( int $level )

Sets the SWF output compression level.

Parâmetros

level

The new compression level. Should be a value between 1 and 9 inclusive.

Valor Retornado

Não há valor retornado.

ming_setscale
ming_useconstants
Ming Funções


Use constant pool

ming_setswfcompression
ming_useswfversion
Ming Funções
PHP Manual

ming_useconstants

(PHP 5 <= 5.3.0, PECL ming SVN)

ming_useconstants — Use constant pool

Descrição

void ming_useconstants ( int $use )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

ming_setswfcompression
ming_useswfversion
Ming Funções


Sets the SWF version

ming_useconstants
SWFAction
Ming Funções
PHP Manual

ming_useswfversion

(PHP 4 >= 4.2.0, PHP 5 <= 5.3.0, PECL ming SVN)

ming_useswfversion — Sets the SWF version

Descrição

void ming_useswfversion ( int $version )

Sets the SWF version to be used in the movie. This affect the bahaviour of Action Script.

Parâmetros

version

SWF version to use.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ming_useswfversion() example

<?php

$movie = new SWFMovie();
ming_useswfversion(4); // Flash 4

?>

ming_useconstants
SWFAction
Ming Funções


The SWFAction class

Introdução

SWFAction.

Sinopse da classe

SWFAction {
/* Methods */
SWFAction SWFAction::__construct ( string $script )
}

Descrição

The script syntax is based on the C language, but with a lot taken out- the SWF bytecode machine is just too simpleminded to do a lot of things we might like. For instance, we can't implement function calls without a tremendous amount of hackery because the jump bytecode has a hardcoded offset value. No pushing your calling address to the stack and returning- every function would have to know exactly where to return to.

So what's left? The compiler recognises the following tokens:

  • break
  • for
  • continue
  • if
  • else
  • do
  • while

There is no typed data; all values in the SWF action machine are stored as strings. The following functions can be used in expressions:

time()
Returns the number of milliseconds (?) elapsed since the movie started.
random(seed)
Returns a pseudo-random number in the range 0-seed.
length(expr)
Returns the length of the given expression.
int(number)
Returns the given number rounded down to the nearest integer.
concat(expr, expr)
Returns the concatenation of the given expressions.
ord(expr)
Returns the ASCII code for the given character
chr(num)
Returns the character for the given ASCII code
substr(string, location, length)
Returns the substring of length length at location location of the given string string.

Additionally, the following commands may be used:

duplicateClip(clip, name, depth)
Duplicate the named movie clip (aka sprite). The new movie clip has name name and is at depth depth.
removeClip(expr)
Removes the named movie clip.
trace(expr)
Write the given expression to the trace log. Doubtful that the browser plugin does anything with this.
startDrag(target, lock, [left, top, right, bottom])
Start dragging the movie clip target. The lock argument indicates whether to lock the mouse (?)- use 0 (FALSE) or 1 (TRUE). Optional parameters define a bounding area for the dragging.
stopDrag()
Stop dragging my heart around. And this movie clip, too.
callFrame(expr)
Call the named frame as a function.
getURL(url, target, [method])
Load the given URL into the named target. The target argument corresponds to HTML document targets (such as "_top" or "_blank"). The optional method argument can be POST or GET if you want to submit variables back to the server.
loadMovie(url, target)
Load the given URL into the named target. The target argument can be a frame name (I think), or one of the magical values "_level0" (replaces current movie) or "_level1" (loads new movie on top of current movie).
nextFrame()
Go to the next frame.
prevFrame()
Go to the last (or, rather, previous) frame.
play()
Start playing the movie.
stop()
Stop playing the movie.
toggleQuality()
Toggle between high and low quality.
stopSounds()
Stop playing all sounds.
gotoFrame(num)
Go to frame number num. Frame numbers start at 0.
gotoFrame(name)
Go to the frame named name. Which does a lot of good, since I haven't added frame labels yet.
setTarget(expr)
Sets the context for action. Or so they say- I really have no idea what this does.
And there's one weird extra thing. The expression frameLoaded(num) can be used in if statements and while loops to check if the given frame number has been loaded yet. Well, it's supposed to, anyway, but I've never tested it and I seriously doubt it actually works. You can just use /:framesLoaded instead.

Movie clips (all together now- aka sprites) have properties. You can read all of them (or can you?), you can set some of them, and here they are:

  • x
  • y
  • xScale
  • yScale
  • currentFrame - (read-only)
  • totalFrames - (read-only)
  • alpha - transparency level
  • visible - 1=on, 0=off (?)
  • width - (read-only)
  • height - (read-only)
  • rotation
  • target - (read-only) (???)
  • framesLoaded - (read-only)
  • name
  • dropTarget - (read-only) (???)
  • url - (read-only) (???)
  • highQuality - 1=high, 0=low (?)
  • focusRect - (???)
  • soundBufTime - (???)
So, setting a sprite's x position is as simple as /box.x = 100;. Why the slash in front of the box, though? That's how flash keeps track of the sprites in the movie, just like a Unix filesystem- here it shows that box is at the top level. If the sprite named box had another sprite named biff inside of it, you'd set its x position with /box/biff.x = 100;. At least, I think so; correct me if I'm wrong here.

Índice

  • SWFAction->__construct — Creates a new SWFAction
ming_useswfversion
SWFAction->__construct
Ming


Creates a new SWFAction

SWFAction
SWFBitmap
SWFAction
PHP Manual

SWFAction->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFAction->__construct — Creates a new SWFAction

Descrição

SWFAction SWFAction::__construct ( string $script )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new SWFAction and compiles the given script in it.

Parâmetros

script

An ActionScript snippet to associate with the SWFAction. See SWFAction for more details.

SWFAction
SWFBitmap
SWFAction


The SWFBitmap class

Introdução

SWFBitmap.

Sinopse da classe

SWFBitmap {
/* Methods */
SWFBitmap SWFBitmap::__construct ( mixed $file [, mixed $alphafile ] )
float getHeight ( void )
float getWidth ( void )
}

Índice

  • SWFBitmap->__construct — Loads Bitmap object
  • SWFBitmap->getHeight — Returns the bitmap's height
  • SWFBitmap->getWidth — Returns the bitmap's width
SWFAction->__construct
SWFBitmap->__construct
Ming


Loads Bitmap object

SWFBitmap
SWFBitmap->getHeight
SWFBitmap
PHP Manual

SWFBitmap->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFBitmap->__construct — Loads Bitmap object

Descrição

SWFBitmap SWFBitmap::__construct ( mixed $file [, mixed $alphafile ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates the new SWFBitmap object from the given file.

Parâmetros

For both parameters you can provide a file pointer returned by fopen() or the image data, as a binary string.

file

Nota:

We can only deal with baseline (frame 0) jpegs, no baseline optimized or progressive scan jpegs!

You can't import png images directly, though- have to use the png2dbl utility to make a dbl ("define bits lossless") file from the png. The reason for this is that I don't want a dependency on the png library in ming- autoconf should solve this, but that's not set up yet.

alphafile

An MSK file to be used as an alpha mask for a JPEG image.

Exemplos

Exemplo #1 Importing a DBL file

<?php
$s = new SWFShape();
$f = $s->addFill(new SWFBitmap(file_get_contents("image.dbl")));
$s->setRightFill($f);

$s->drawLine(32, 0);
$s->drawLine(0, 32);
$s->drawLine(-32, 0);
$s->drawLine(0, -32);

$m = new SWFMovie();
$m->setDimension(32, 32);
$m->add($s);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

Exemplo #2 Using an alpha mask

<?php

$s = new SWFShape();

// .msk file generated with "gif2mask" utility
$f = $s->addFill(new SWFBitmap(file_get_contents("alphafill.jpg"), file_get_contents("alphafill.msk")));
$s->setRightFill($f);

$s->drawLine(640, 0);
$s->drawLine(0, 480);
$s->drawLine(-640, 0);
$s->drawLine(0, -480);

$c = new SWFShape();
$c->setRightFill($c->addFill(0x99, 0x99, 0x99));
$c->drawLine(40, 0);
$c->drawLine(0, 40);
$c->drawLine(-40, 0);
$c->drawLine(0, -40);

$m = new SWFMovie();
$m->setDimension(640, 480);
$m->setBackground(0xcc, 0xcc, 0xcc);

// draw checkerboard background
for ($y=0; $y<480; $y+=40) {
  for ($x=0; $x<640; $x+=80) {
    $i = $m->add($c);
    $i->moveTo($x, $y);
  }

  $y+=40;

  for ($x=40; $x<640; $x+=80) {
    $i = $m->add($c);
    $i->moveTo($x, $y);
  }
}

$m->add($s);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFBitmap
SWFBitmap->getHeight
SWFBitmap


Returns the bitmap's height

SWFBitmap->__construct
SWFBitmap->getWidth
SWFBitmap
PHP Manual

SWFBitmap->getHeight

(PHP 4 >= 4.0.5)

SWFBitmap->getHeight — Returns the bitmap's height

Descrição

float SWFBitmap::getHeight ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the bitmap's height.

Valor Retornado

Returns the bitmap height in pixels.

Veja Também

  • SWFBitmap->getWidth

SWFBitmap->__construct
SWFBitmap->getWidth
SWFBitmap


Returns the bitmap's width

SWFBitmap->getHeight
SWFButton
SWFBitmap
PHP Manual

SWFBitmap->getWidth

(PHP 4 >= 4.0.5)

SWFBitmap->getWidth — Returns the bitmap's width

Descrição

float SWFBitmap::getWidth ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the bitmap's width.

Valor Retornado

Returns the bitmap width in pixels.

Veja Também

  • SWFBitmap->getHeight

SWFBitmap->getHeight
SWFButton
SWFBitmap


The SWFButton class

Introdução

SWFButton.

Sinopse da classe

SWFButton {
/* Methods */
void SWFButton::addAction ( SWFAction $action , int $flags )
SWFSoundInstance addASound ( SWFSound $sound , int $flags )
void addShape ( SWFShape $shape , int $flags )
SWFButton __construct ( void )
void setAction ( SWFAction $action )
void setDown ( SWFShape $shape )
void setHit ( SWFShape $shape )
void setMenu ( int $flag )
void setOver ( SWFShape $shape )
void setUp ( SWFShape $shape )
}

Índice

  • SWFButton->addAction — Adds an action
  • SWFButton->addASound — Associates a sound with a button transition
  • SWFButton->addShape — Adds a shape to a button
  • SWFButton->__construct — Creates a new Button
  • SWFButton->setAction — Sets the action
  • SWFButton->setDown — Alias for addShape(shape, SWFBUTTON_DOWN)
  • SWFButton->setHit — Alias for addShape(shape, SWFBUTTON_HIT)
  • SWFButton->setMenu — enable track as menu button behaviour
  • SWFButton->setOver — Alias for addShape(shape, SWFBUTTON_OVER)
  • SWFButton->setUp — Alias for addShape(shape, SWFBUTTON_UP)
SWFBitmap->getWidth
SWFButton->addAction
Ming


Adds an action

SWFButton
SWFButton->addASound
SWFButton
PHP Manual

SWFButton->addAction

(PHP 4 >= 4.0.5)

SWFButton->addAction — Adds an action

Descrição

void SWFButton::addAction ( SWFAction $action , int $flags )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Adds the given action to the button for the given conditions.

Parâmetros

action

An SWFAction, returned by SWFAction->__construct.

flags

The following flags are valid: SWFBUTTON_MOUSEOVER, SWFBUTTON_MOUSEOUT, SWFBUTTON_MOUSEUP, SWFBUTTON_MOUSEUPOUTSIDE, SWFBUTTON_MOUSEDOWN, SWFBUTTON_DRAGOUT and SWFBUTTON_DRAGOVER.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addShape
  • SWFAction

SWFButton
SWFButton->addASound
SWFButton


Associates a sound with a button transition

SWFButton->addAction
SWFButton->addShape
SWFButton
PHP Manual

SWFButton->addASound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFButton->addASound — Associates a sound with a button transition

Descrição

SWFSoundInstance SWFButton::addASound ( SWFSound $sound , int $flags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFButton->addAction
SWFButton->addShape
SWFButton


Adds a shape to a button

SWFButton->addASound
SWFButton->__construct
SWFButton
PHP Manual

SWFButton->addShape

(PHP 4 >= 4.0.5)

SWFButton->addShape — Adds a shape to a button

Descrição

void SWFButton::addShape ( SWFShape $shape , int $flags )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Adds the given shape to the button.

Parâmetros

shape

An SWFShape instance

flags

The following flags are valid: SWFBUTTON_UP, SWFBUTTON_OVER, SWFBUTTON_DOWN and SWFBUTTON_HIT.

SWFBUTTON_HIT isn't ever displayed, it defines the hit region for the button. That is, everywhere the hit shape would be drawn is considered a "touchable" part of the button.

Valor Retornado

Não há valor retornado.

SWFButton->addASound
SWFButton->__construct
SWFButton


Creates a new Button

SWFButton->addShape
SWFButton->setAction
SWFButton
PHP Manual

SWFButton->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFButton->__construct — Creates a new Button

Descrição

SWFButton SWFButton::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new Button.

Exemplos

This simple example will show your usual interactions with buttons : rollover, rollon, mouseup, mousedown, noaction.

Exemplo #1 Usual interactions with buttons

<?php

$f = new SWFFont("_serif");

$p = new SWFSprite();

function label($string)
{
  global $f;

  $t = new SWFTextField();
  $t->setFont($f);
  $t->addString($string);
  $t->setHeight(200);
  $t->setBounds(3200, 200);
  return $t;
}

function addLabel($string)
{
  global $p;

  $i = $p->add(label($string));
  $p->nextFrame();
  $p->remove($i);
}

$p->add(new SWFAction("stop();"));
addLabel("NO ACTION");
addLabel("SWFBUTTON_MOUSEUP");
addLabel("SWFBUTTON_MOUSEDOWN");
addLabel("SWFBUTTON_MOUSEOVER");
addLabel("SWFBUTTON_MOUSEOUT");
addLabel("SWFBUTTON_MOUSEUPOUTSIDE");
addLabel("SWFBUTTON_DRAGOVER");
addLabel("SWFBUTTON_DRAGOUT");

function rect($r, $g, $b)
{
  $s = new SWFShape();
  $s->setRightFill($s->addFill($r, $g, $b));
  $s->drawLine(600, 0);
  $s->drawLine(0, 600);
  $s->drawLine(-600, 0);
  $s->drawLine(0, -600);

  return $s;
}

$b = new SWFButton();
$b->addShape(rect(0xff, 0, 0), SWFBUTTON_UP | SWFBUTTON_HIT);
$b->addShape(rect(0, 0xff, 0), SWFBUTTON_OVER);
$b->addShape(rect(0, 0, 0xff), SWFBUTTON_DOWN);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(1);"),
          SWFBUTTON_MOUSEUP);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(2);"),
      SWFBUTTON_MOUSEDOWN);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(3);"),
      SWFBUTTON_MOUSEOVER);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(4);"),
      SWFBUTTON_MOUSEOUT);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(5);"),
      SWFBUTTON_MOUSEUPOUTSIDE);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(6);"),
      SWFBUTTON_DRAGOVER);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(7);"),
      SWFBUTTON_DRAGOUT);

$m = new SWFMovie();
$m->setDimension(4000, 3000);

$i = $m->add($p);
$i->setName("label");
$i->moveTo(400, 1900);

$i = $m->add($b);
$i->moveTo(400, 900);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

This simple example will enables you to drag draw a big red button on the windows. No drag-and-drop, just moving around.

Exemplo #2 Drag example

<?php

$s = new SWFShape();
$s->setRightFill($s->addFill(0xff, 0, 0));
$s->drawLine(1000,0);
$s->drawLine(0,1000);
$s->drawLine(-1000,0);
$s->drawLine(0,-1000);

$b = new SWFButton();
$b->addShape($s, SWFBUTTON_HIT | SWFBUTTON_UP | SWFBUTTON_DOWN | SWFBUTTON_OVER);

$b->addAction(new SWFAction("startDrag('/test', 0);"), // '0' means don't lock to mouse
      SWFBUTTON_MOUSEDOWN);

$b->addAction(new SWFAction("stopDrag();"),
      SWFBUTTON_MOUSEUP | SWFBUTTON_MOUSEUPOUTSIDE);

$p = new SWFSprite();
$p->add($b);
$p->nextFrame();

$m = new SWFMovie();
$i = $m->add($p);
$i->setName('test');
$i->moveTo(1000,1000);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFButton->addShape
SWFButton->setAction
SWFButton


Sets the action

SWFButton->__construct
SWFButton->setDown
SWFButton
PHP Manual

SWFButton->setAction

(PHP 4 >= 4.0.5)

SWFButton->setAction — Sets the action

Descrição

void SWFButton::setAction ( SWFAction $action )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the action to be performed when the button is clicked.

This is a shortcut for SWFButton->addAction called with the SWFBUTTON_MOUSEUP flag.

Parâmetros

action

An SWFAction, returned by SWFAction->__construct.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addAction
  • SWFAction

SWFButton->__construct
SWFButton->setDown
SWFButton


Alias for addShape(shape, SWFBUTTON_DOWN)

SWFButton->setAction
SWFButton->setHit
SWFButton
PHP Manual

SWFButton->setDown

(PHP 4 >= 4.0.5)

SWFButton->setDown — Alias for addShape(shape, SWFBUTTON_DOWN)

Descrição

void SWFButton::setDown ( SWFShape $shape )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfbutton->setdown() alias for addShape(shape, SWFBUTTON_DOWN).

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addShape
  • SWFAction

SWFButton->setAction
SWFButton->setHit
SWFButton


Alias for addShape(shape, SWFBUTTON_HIT)

SWFButton->setDown
SWFButton->setMenu
SWFButton
PHP Manual

SWFButton->setHit

(PHP 4 >= 4.0.5)

SWFButton->setHit — Alias for addShape(shape, SWFBUTTON_HIT)

Descrição

void SWFButton::setHit ( SWFShape $shape )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfbutton->sethit() alias for addShape(shape, SWFBUTTON_HIT).

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addShape
  • SWFAction

SWFButton->setDown
SWFButton->setMenu
SWFButton


enable track as menu button behaviour

SWFButton->setHit
SWFButton->setOver
SWFButton
PHP Manual

SWFButton->setMenu

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFButton->setMenu — enable track as menu button behaviour

Descrição

void SWFButton::setMenu ( int $flag )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flag

This parameter can be used for a slight different behavior of buttons. You can set it to 0 (off) or 1 (on).

Valor Retornado

Não há valor retornado.

SWFButton->setHit
SWFButton->setOver
SWFButton


Alias for addShape(shape, SWFBUTTON_OVER)

SWFButton->setMenu
SWFButton->setUp
SWFButton
PHP Manual

SWFButton->setOver

(PHP 4 >= 4.0.5)

SWFButton->setOver — Alias for addShape(shape, SWFBUTTON_OVER)

Descrição

void SWFButton::setOver ( SWFShape $shape )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfbutton->setover() alias for addShape(shape, SWFBUTTON_OVER).

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addShape
  • SWFAction

SWFButton->setMenu
SWFButton->setUp
SWFButton


Alias for addShape(shape, SWFBUTTON_UP)

SWFButton->setOver
SWFDisplayItem
SWFButton
PHP Manual

SWFButton->setUp

(PHP 4 >= 4.0.5)

SWFButton->setUp — Alias for addShape(shape, SWFBUTTON_UP)

Descrição

void SWFButton::setUp ( SWFShape $shape )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfbutton->setup() alias for addShape(shape, SWFBUTTON_UP).

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFButton->addShape
  • SWFAction

SWFButton->setOver
SWFDisplayItem
SWFButton


The SWFDisplayItem class

Introdução

SWFDisplayItem.

Sinopse da classe

SWFDisplayItem {
/* Methods */
void SWFDisplayItem::addAction ( SWFAction $action , int $flags )
void addColor ( int $red , int $green , int $blue [, int $a ] )
void endMask ( void )
float getRot ( void )
float getX ( void )
float getXScale ( void )
float getXSkew ( void )
float getY ( void )
float getYScale ( void )
float getYSkew ( void )
void move ( float $dx , float $dy )
void moveTo ( float $x , float $y )
void multColor ( float $red , float $green , float $blue [, float $a ] )
void remove ( void )
void rotate ( float $angle )
void rotateTo ( float $angle )
void scale ( float $dx , float $dy )
void scaleTo ( float $x [, float $y ] )
void setDepth ( int $depth )
void setMaskLevel ( int $level )
void setMatrix ( float $a , float $b , float $c , float $d , float $x , float $y )
void setName ( string $name )
void setRatio ( float $ratio )
void skewX ( float $ddegrees )
void skewXTo ( float $degrees )
void skewY ( float $ddegrees )
void skewYTo ( float $degrees )
}

Índice

  • SWFDisplayItem->addAction — Adds this SWFAction to the given SWFSprite instance
  • SWFDisplayItem->addColor — Adds the given color to this item's color transform
  • SWFDisplayItem->endMask — Another way of defining a MASK layer
  • SWFDisplayItem->getRot — Descrição
  • SWFDisplayItem->getX — Descrição
  • SWFDisplayItem->getXScale — Descrição
  • SWFDisplayItem->getXSkew — Descrição
  • SWFDisplayItem->getY — Descrição
  • SWFDisplayItem->getYScale — Descrição
  • SWFDisplayItem->getYSkew — Descrição
  • SWFDisplayItem->move — Moves object in relative coordinates
  • SWFDisplayItem->moveTo — Moves object in global coordinates
  • SWFDisplayItem->multColor — Multiplies the item's color transform
  • SWFDisplayItem->remove — Removes the object from the movie
  • SWFDisplayItem->rotate — Rotates in relative coordinates
  • SWFDisplayItem->rotateTo — Rotates the object in global coordinates
  • SWFDisplayItem->scale — Scales the object in relative coordinates
  • SWFDisplayItem->scaleTo — Scales the object in global coordinates
  • SWFDisplayItem->setDepth — Sets z-order
  • SWFDisplayItem->setMaskLevel — Defines a MASK layer at level
  • SWFDisplayItem->setMatrix — Sets the item's transform matrix
  • SWFDisplayItem->setName — Sets the object's name
  • SWFDisplayItem->setRatio — Sets the object's ratio
  • SWFDisplayItem->skewX — Sets the X-skew
  • SWFDisplayItem->skewXTo — Sets the X-skew
  • SWFDisplayItem->skewY — Sets the Y-skew
  • SWFDisplayItem->skewYTo — Sets the Y-skew
SWFButton->setUp
SWFDisplayItem->addAction
Ming


Adds this SWFAction to the given SWFSprite instance

SWFDisplayItem
SWFDisplayItem->addColor
SWFDisplayItem
PHP Manual

SWFDisplayItem->addAction

(PHP 4 >= 4.2.0)

SWFDisplayItem->addAction — Adds this SWFAction to the given SWFSprite instance

Descrição

void SWFDisplayItem::addAction ( SWFAction $action , int $flags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

action

An SWFAction, returned by SWFAction->__construct.

flags

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFAction

SWFDisplayItem
SWFDisplayItem->addColor
SWFDisplayItem


Adds the given color to this item's color transform

SWFDisplayItem->addAction
SWFDisplayItem->endMask
SWFDisplayItem
PHP Manual

SWFDisplayItem->addColor

(PHP 4 >= 4.0.5)

SWFDisplayItem->addColor — Adds the given color to this item's color transform

Descrição

void SWFDisplayItem::addColor ( int $red , int $green , int $blue [, int $a ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->addcolor() adds the color to this item's color transform. The color is given in its RGB form.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Valor Retornado

Não há valor retornado.

SWFDisplayItem->addAction
SWFDisplayItem->endMask
SWFDisplayItem


Another way of defining a MASK layer

SWFDisplayItem->addColor
SWFDisplayItem->getRot
SWFDisplayItem
PHP Manual

SWFDisplayItem->endMask

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->endMask — Another way of defining a MASK layer

Descrição

void SWFDisplayItem::endMask ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFDisplayItem->addColor
SWFDisplayItem->getRot
SWFDisplayItem


SWFDisplayItem->endMask
SWFDisplayItem->getX
SWFDisplayItem
PHP Manual

SWFDisplayItem->getRot

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getRot —

Descrição

float SWFDisplayItem::getRot ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFDisplayItem->endMask
SWFDisplayItem->getX
SWFDisplayItem


SWFDisplayItem->getRot
SWFDisplayItem->getXScale
SWFDisplayItem
PHP Manual

SWFDisplayItem->getX

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getX —

Descrição

float SWFDisplayItem::getX ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getY

SWFDisplayItem->getRot
SWFDisplayItem->getXScale
SWFDisplayItem


SWFDisplayItem->getX
SWFDisplayItem->getXSkew
SWFDisplayItem
PHP Manual

SWFDisplayItem->getXScale

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getXScale —

Descrição

float SWFDisplayItem::getXScale ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getYScale

SWFDisplayItem->getX
SWFDisplayItem->getXSkew
SWFDisplayItem


SWFDisplayItem->getXScale
SWFDisplayItem->getY
SWFDisplayItem
PHP Manual

SWFDisplayItem->getXSkew

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getXSkew —

Descrição

float SWFDisplayItem::getXSkew ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getYSkew

SWFDisplayItem->getXScale
SWFDisplayItem->getY
SWFDisplayItem


SWFDisplayItem->getXSkew
SWFDisplayItem->getYScale
SWFDisplayItem
PHP Manual

SWFDisplayItem->getY

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getY —

Descrição

float SWFDisplayItem::getY ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getX

SWFDisplayItem->getXSkew
SWFDisplayItem->getYScale
SWFDisplayItem


SWFDisplayItem->getY
SWFDisplayItem->getYSkew
SWFDisplayItem
PHP Manual

SWFDisplayItem->getYScale

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getYScale —

Descrição

float SWFDisplayItem::getYScale ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getXScale

SWFDisplayItem->getY
SWFDisplayItem->getYSkew
SWFDisplayItem


SWFDisplayItem->getYScale
SWFDisplayItem->move
SWFDisplayItem
PHP Manual

SWFDisplayItem->getYSkew

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->getYSkew —

Descrição

float SWFDisplayItem::getYSkew ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFDisplayItem->getXSkew

SWFDisplayItem->getYScale
SWFDisplayItem->move
SWFDisplayItem


Moves object in relative coordinates

SWFDisplayItem->getYSkew
SWFDisplayItem->moveTo
SWFDisplayItem
PHP Manual

SWFDisplayItem->move

(PHP 4 >= 4.0.5)

SWFDisplayItem->move — Moves object in relative coordinates

Descrição

void SWFDisplayItem::move ( float $dx , float $dy )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->move() moves the current object by (dx,dy) from its current position.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->moveTo

SWFDisplayItem->getYSkew
SWFDisplayItem->moveTo
SWFDisplayItem


Moves object in global coordinates

SWFDisplayItem->move
SWFDisplayItem->multColor
SWFDisplayItem
PHP Manual

SWFDisplayItem->moveTo

(PHP 4 >= 4.0.5)

SWFDisplayItem->moveTo — Moves object in global coordinates

Descrição

void SWFDisplayItem::moveTo ( float $x , float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->moveto() moves the current object to (x,y) in global coordinates.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->move

SWFDisplayItem->move
SWFDisplayItem->multColor
SWFDisplayItem


Multiplies the item's color transform

SWFDisplayItem->moveTo
SWFDisplayItem->remove
SWFDisplayItem
PHP Manual

SWFDisplayItem->multColor

(PHP 4 >= 4.0.5)

SWFDisplayItem->multColor — Multiplies the item's color transform

Descrição

void SWFDisplayItem::multColor ( float $red , float $green , float $blue [, float $a ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->multcolor() multiplies the item's color transform by the given values.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Parâmetros

These parameters are floats between 0.0 and 1.0:

red

Value of red component

green

Value of green component

blue

Value of blue component

a

Value of alpha component

Valor Retornado

Não há valor retornado.

Exemplos

This simple example will modify your picture's atmosphere to Halloween (use a landscape or bright picture).

Exemplo #1 swfdisplayitem->multcolor() example

<?php

$b = new SWFBitmap(file_get_contents("backyard.jpg"));
// note use your own picture :-)
$s = new SWFShape();
$s->setRightFill($s->addFill($b));
$s->drawLine($b->getWidth(), 0);
$s->drawLine(0, $b->getHeight());
$s->drawLine(-$b->getWidth(), 0);
$s->drawLine(0, -$b->getHeight());

$m = new SWFMovie();
$m->setDimension($b->getWidth(), $b->getHeight());

$i = $m->add($s);

for ($n=0; $n<=20; ++$n) {
  $i->multColor(1.0-$n/10, 1.0, 1.0);
  $i->addColor(0xff*$n/20, 0, 0);
  $m->nextFrame();
}

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFDisplayItem->moveTo
SWFDisplayItem->remove
SWFDisplayItem


Removes the object from the movie

SWFDisplayItem->multColor
SWFDisplayItem->rotate
SWFDisplayItem
PHP Manual

SWFDisplayItem->remove

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->remove — Removes the object from the movie

Descrição

void SWFDisplayItem::remove ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->remove() removes this object from the movie's display list.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFMovie->add

SWFDisplayItem->multColor
SWFDisplayItem->rotate
SWFDisplayItem


Rotates in relative coordinates

SWFDisplayItem->remove
SWFDisplayItem->rotateTo
SWFDisplayItem
PHP Manual

SWFDisplayItem->rotate

(PHP 4 >= 4.0.5)

SWFDisplayItem->rotate — Rotates in relative coordinates

Descrição

void SWFDisplayItem::rotate ( float $angle )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->rotate() rotates the current object by angle degrees from its current rotation.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->rotateTo

SWFDisplayItem->remove
SWFDisplayItem->rotateTo
SWFDisplayItem


Rotates the object in global coordinates

SWFDisplayItem->rotate
SWFDisplayItem->scale
SWFDisplayItem
PHP Manual

SWFDisplayItem->rotateTo

(PHP 4 >= 4.0.5)

SWFDisplayItem->rotateTo — Rotates the object in global coordinates

Descrição

void SWFDisplayItem::rotateTo ( float $angle )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->rotateto() set the current object rotation to angle degrees in global coordinates.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Exemplos

This example bring three rotating string from the background to the foreground. Pretty nice.

Exemplo #1 swfdisplayitem->rotateto() example

<?php
$thetext =  "ming!";

$f = new SWFFont("Bauhaus 93.fdb");

$m = new SWFMovie();
$m->setRate(24.0);
$m->setDimension(2400, 1600);
$m->setBackground(0xff, 0xff, 0xff);

// functions with huge numbers of arbitrary
// arguments are always a good idea!  Really!

function text($r, $g, $b, $a, $rot, $x, $y, $scale, $string)
{
  global $f, $m;

  $t = new SWFText();
  $t->setFont($f);
  $t->setColor($r, $g, $b, $a);
  $t->setHeight(960);
  $t->moveTo(-($f->getWidth($string))/2, $f->getAscent()/2);
  $t->addString($string);

  // we can add properties just like a normal PHP var,
  // as long as the names aren't already used.
  // e.g., we can't set $i->scale, because that's a function

  $i = $m->add($t);
  $i->x = $x;
  $i->y = $y;
  $i->rot = $rot;
  $i->s = $scale;
  $i->rotateTo($rot);
  $i->scale($scale, $scale);

  // but the changes are local to the function, so we have to
  // return the changed object.  kinda weird..

  return $i;
}

function step($i)
{
  $oldrot = $i->rot;
  $i->rot = 19*$i->rot/20;
  $i->x = (19*$i->x + 1200)/20;
  $i->y = (19*$i->y + 800)/20;
  $i->s = (19*$i->s + 1.0)/20;

  $i->rotateTo($i->rot);
  $i->scaleTo($i->s, $i->s);
  $i->moveTo($i->x, $i->y);

  return $i;
}

// see?  it sure paid off in legibility:

$i1 = text(0xff, 0x33, 0x33, 0xff, 900, 1200, 800, 0.03, $thetext);
$i2 = text(0x00, 0x33, 0xff, 0x7f, -560, 1200, 800, 0.04, $thetext);
$i3 = text(0xff, 0xff, 0xff, 0x9f, 180, 1200, 800, 0.001, $thetext);

for ($i=1; $i<=100; ++$i) {
  $i1 = step($i1);
  $i2 = step($i2);
  $i3 = step($i3);

  $m->nextFrame();
}

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

Veja Também

  • SWFDisplayItem->rotate

SWFDisplayItem->rotate
SWFDisplayItem->scale
SWFDisplayItem


Scales the object in relative coordinates

SWFDisplayItem->rotateTo
SWFDisplayItem->scaleTo
SWFDisplayItem
PHP Manual

SWFDisplayItem->scale

(PHP 4 >= 4.0.5)

SWFDisplayItem->scale — Scales the object in relative coordinates

Descrição

void SWFDisplayItem::scale ( float $dx , float $dy )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->scale() scales the current object by (dx,dy) from its current size.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->scaleTo

SWFDisplayItem->rotateTo
SWFDisplayItem->scaleTo
SWFDisplayItem


Scales the object in global coordinates

SWFDisplayItem->scale
SWFDisplayItem->setDepth
SWFDisplayItem
PHP Manual

SWFDisplayItem->scaleTo

(PHP 4 >= 4.0.5)

SWFDisplayItem->scaleTo — Scales the object in global coordinates

Descrição

void SWFDisplayItem::scaleTo ( float $x [, float $y ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->scaleto() scales the current object to (x,y) in global coordinates.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->scale

SWFDisplayItem->scale
SWFDisplayItem->setDepth
SWFDisplayItem


Sets z-order

SWFDisplayItem->scaleTo
SWFDisplayItem->setMaskLevel
SWFDisplayItem
PHP Manual

SWFDisplayItem->setDepth

(PHP 4 >= 4.0.5)

SWFDisplayItem->setDepth — Sets z-order

Descrição

void SWFDisplayItem::setDepth ( int $depth )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->setdepth() sets the object's z-order to depth. Depth defaults to the order in which instances are created (by adding a shape/text to a movie)- newer ones are on top of older ones. If two objects are given the same depth, only the later-defined one can be moved.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

SWFDisplayItem->scaleTo
SWFDisplayItem->setMaskLevel
SWFDisplayItem


Defines a MASK layer at level

SWFDisplayItem->setDepth
SWFDisplayItem->setMatrix
SWFDisplayItem
PHP Manual

SWFDisplayItem->setMaskLevel

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFDisplayItem->setMaskLevel — Defines a MASK layer at level

Descrição

void SWFDisplayItem::setMaskLevel ( int $level )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFDisplayItem->setDepth
SWFDisplayItem->setMatrix
SWFDisplayItem


Sets the item's transform matrix

SWFDisplayItem->setMaskLevel
SWFDisplayItem->setName
SWFDisplayItem
PHP Manual

SWFDisplayItem->setMatrix

(PHP 4 >= 4.0.5)

SWFDisplayItem->setMatrix — Sets the item's transform matrix

Descrição

void SWFDisplayItem::setMatrix ( float $a , float $b , float $c , float $d , float $x , float $y )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFDisplayItem->setMaskLevel
SWFDisplayItem->setName
SWFDisplayItem


Sets the object's name

SWFDisplayItem->setMatrix
SWFDisplayItem->setRatio
SWFDisplayItem
PHP Manual

SWFDisplayItem->setName

(PHP 4 >= 4.0.5)

SWFDisplayItem->setName — Sets the object's name

Descrição

void SWFDisplayItem::setName ( string $name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->setname() sets the object's name to name, for targetting with action script. Only useful on sprites.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

SWFDisplayItem->setMatrix
SWFDisplayItem->setRatio
SWFDisplayItem


Sets the object's ratio

SWFDisplayItem->setName
SWFDisplayItem->skewX
SWFDisplayItem
PHP Manual

SWFDisplayItem->setRatio

(PHP 4 >= 4.0.5)

SWFDisplayItem->setRatio — Sets the object's ratio

Descrição

void SWFDisplayItem::setRatio ( float $ratio )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->setratio() sets the object's ratio to ratio. Obviously only useful for morphs.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Exemplos

This simple example will morph nicely three concentric circles.

Exemplo #1 swfdisplayitem->setname() example

<?php

$p = new SWFMorph();

$g = new SWFGradient();
$g->addEntry(0.0, 0, 0, 0);
$g->addEntry(0.16, 0xff, 0xff, 0xff);
$g->addEntry(0.32, 0, 0, 0);
$g->addEntry(0.48, 0xff, 0xff, 0xff);
$g->addEntry(0.64, 0, 0, 0);
$g->addEntry(0.80, 0xff, 0xff, 0xff);
$g->addEntry(1.00, 0, 0, 0);

$s = $p->getShape1();
$f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT);
$f->scaleTo(0.05);
$s->setLeftFill($f);
$s->movePenTo(-160, -120);
$s->drawLine(320, 0);
$s->drawLine(0, 240);
$s->drawLine(-320, 0);
$s->drawLine(0, -240);

$g = new SWFGradient();
$g->addEntry(0.0, 0, 0, 0);
$g->addEntry(0.16, 0xff, 0, 0);
$g->addEntry(0.32, 0, 0, 0);
$g->addEntry(0.48, 0, 0xff, 0);
$g->addEntry(0.64, 0, 0, 0);
$g->addEntry(0.80, 0, 0, 0xff);
$g->addEntry(1.00, 0, 0, 0);

$s = $p->getShape2();
$f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT);
$f->scaleTo(0.05);
$f->skewXTo(1.0);
$s->setLeftFill($f);
$s->movePenTo(-160, -120);
$s->drawLine(320, 0);
$s->drawLine(0, 240);
$s->drawLine(-320, 0);
$s->drawLine(0, -240);

$m = new SWFMovie();
$m->setDimension(320, 240);
$i = $m->add($p);
$i->moveTo(160, 120);

for ($n=0; $n<=1.001; $n+=0.01) {
    $i->setRatio($n);
    $m->nextFrame();
}

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFDisplayItem->setName
SWFDisplayItem->skewX
SWFDisplayItem


Sets the X-skew

SWFDisplayItem->setRatio
SWFDisplayItem->skewXTo
SWFDisplayItem
PHP Manual

SWFDisplayItem->skewX

(PHP 4 >= 4.0.5)

SWFDisplayItem->skewX — Sets the X-skew

Descrição

void SWFDisplayItem::skewX ( float $ddegrees )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->skewx() adds ddegrees to current x-skew.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->skewXTo
  • SWFDisplayItem->skewY
  • SWFDisplayItem->skewYTo

SWFDisplayItem->setRatio
SWFDisplayItem->skewXTo
SWFDisplayItem


Sets the X-skew

SWFDisplayItem->skewX
SWFDisplayItem->skewY
SWFDisplayItem
PHP Manual

SWFDisplayItem->skewXTo

(PHP 4 >= 4.0.5)

SWFDisplayItem->skewXTo — Sets the X-skew

Descrição

void SWFDisplayItem::skewXTo ( float $degrees )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->skewxto() sets the x-skew to degrees. For degrees is 1.0, it means a 45-degree forward slant. More is more forward, less is more backward.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->skewX
  • SWFDisplayItem->skewY
  • SWFDisplayItem->skewYTo

SWFDisplayItem->skewX
SWFDisplayItem->skewY
SWFDisplayItem


Sets the Y-skew

SWFDisplayItem->skewXTo
SWFDisplayItem->skewYTo
SWFDisplayItem
PHP Manual

SWFDisplayItem->skewY

(PHP 4 >= 4.0.5)

SWFDisplayItem->skewY — Sets the Y-skew

Descrição

void SWFDisplayItem::skewY ( float $ddegrees )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->skewy() adds ddegrees to current y-skew.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->skewYTo
  • SWFDisplayItem->skewX
  • SWFDisplayItem->skewXTo

SWFDisplayItem->skewXTo
SWFDisplayItem->skewYTo
SWFDisplayItem


Sets the Y-skew

SWFDisplayItem->skewY
SWFFill
SWFDisplayItem
PHP Manual

SWFDisplayItem->skewYTo

(PHP 4 >= 4.0.5)

SWFDisplayItem->skewYTo — Sets the Y-skew

Descrição

void SWFDisplayItem::skewYTo ( float $degrees )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfdisplayitem->skewyto() sets the y-skew to degrees. For degrees is 1.0, it means a 45-degree forward slant. More is more upward, less is more downward.

The object may be a swfshape(), a swfbutton(), a swftext() or a swfsprite() object. It must have been added using the swfmovie->add().

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFDisplayItem->skewY
  • SWFDisplayItem->skewX
  • SWFDisplayItem->skewXTo

SWFDisplayItem->skewY
SWFFill
SWFDisplayItem


The SWFFill class

Introdução

The SWFFill object allows you to transform (scale, skew, rotate) bitmap and gradient fills.

swffill objects are created by the SWFShape->addFill method.

Sinopse da classe

SWFFill {
/* Methods */
void SWFFill::moveTo ( float $x , float $y )
void rotateTo ( float $angle )
void scaleTo ( float $x [, float $y ] )
void skewXTo ( float $x )
void skewYTo ( float $y )
}

Índice

  • SWFFill->moveTo — Moves fill origin
  • SWFFill->rotateTo — Sets fill's rotation
  • SWFFill->scaleTo — Sets fill's scale
  • SWFFill->skewXTo — Sets fill x-skew
  • SWFFill->skewYTo — Sets fill y-skew
SWFDisplayItem->skewYTo
SWFFill->moveTo
Ming


Moves fill origin

SWFFill
SWFFill->rotateTo
SWFFill
PHP Manual

SWFFill->moveTo

(PHP 4 >= 4.0.5)

SWFFill->moveTo — Moves fill origin

Descrição

void SWFFill::moveTo ( float $x , float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Moves the fill origin to the given global coordinates.

Parâmetros

x

X-coordinate

y

Y-coordinate

Valor Retornado

Não há valor retornado.

SWFFill
SWFFill->rotateTo
SWFFill


Sets fill's rotation

SWFFill->moveTo
SWFFill->scaleTo
SWFFill
PHP Manual

SWFFill->rotateTo

(PHP 4 >= 4.0.5)

SWFFill->rotateTo — Sets fill's rotation

Descrição

void SWFFill::rotateTo ( float $angle )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the fill rotation to the given angle.

Parâmetros

angle

The rotation angle, in degrees.

Valor Retornado

Não há valor retornado.

SWFFill->moveTo
SWFFill->scaleTo
SWFFill


Sets fill's scale

SWFFill->rotateTo
SWFFill->skewXTo
SWFFill
PHP Manual

SWFFill->scaleTo

(PHP 4 >= 4.0.5)

SWFFill->scaleTo — Sets fill's scale

Descrição

void SWFFill::scaleTo ( float $x [, float $y ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the fill scale to the given coordinates.

Parâmetros

x

X-coordinate

y

Y-coordinate

Valor Retornado

Não há valor retornado.

SWFFill->rotateTo
SWFFill->skewXTo
SWFFill


Sets fill x-skew

SWFFill->scaleTo
SWFFill->skewYTo
SWFFill
PHP Manual

SWFFill->skewXTo

(PHP 4 >= 4.0.5)

SWFFill->skewXTo — Sets fill x-skew

Descrição

void SWFFill::skewXTo ( float $x )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the fill x-skew to x.

Parâmetros

x

When x is 1.0, it is a 45-degree forward slant. More is more forward, less is more backward.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFFill->skewYTo

SWFFill->scaleTo
SWFFill->skewYTo
SWFFill


Sets fill y-skew

SWFFill->skewXTo
SWFFont
SWFFill
PHP Manual

SWFFill->skewYTo

(PHP 4 >= 4.0.5)

SWFFill->skewYTo — Sets fill y-skew

Descrição

void SWFFill::skewYTo ( float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the fill y-skew to y.

Parâmetros

y

When y is 1.0, it is a 45-degree upward slant. More is more upward, less is more downward.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFFill->skewXTo

SWFFill->skewXTo
SWFFont
SWFFill


The SWFFont class

Introdução

The SWFFont object represent a reference to the font definition, for us with SWFText->setFont and SWFTextField->setFont.

Sinopse da classe

SWFFont {
/* Methods */
SWFFont SWFFont::__construct ( string $filename )
float getAscent ( void )
float getDescent ( void )
float getLeading ( void )
string getShape ( int $code )
float getUTF8Width ( string $string )
float getWidth ( string $string )
}

Índice

  • SWFFont->__construct — Loads a font definition
  • SWFFont->getAscent — Returns the ascent of the font, or 0 if not available
  • SWFFont->getDescent — Returns the descent of the font, or 0 if not available
  • SWFFont->getLeading — Returns the leading of the font, or 0 if not available
  • SWFFont->getShape — Returns the glyph shape of a char as a text string
  • SWFFont->getUTF8Width — Calculates the width of the given string in this font at full height
  • SWFFont->getWidth — Returns the string's width
SWFFill->skewYTo
SWFFont->__construct
Ming


Loads a font definition

SWFFont
SWFFont->getAscent
SWFFont
PHP Manual

SWFFont->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFFont->__construct — Loads a font definition

Descrição

SWFFont SWFFont::__construct ( string $filename )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

If filename is the name of an FDB file (i.e., it ends in ".fdb"), load the font definition found in said file. Otherwise, create a browser-defined font reference.

FDB ("font definition block") is a very simple wrapper for the SWF DefineFont2 block which contains a full description of a font. One may create FDB files from SWT Generator template files with the included makefdb utility- look in the util directory off the main ming distribution directory.

Browser-defined fonts don't contain any information about the font other than its name. It is assumed that the font definition will be provided by the movie player. The fonts _serif, _sans, and _typewriter should always be available. For example:

<?php
$f = newSWFFont("_sans");
?>
will give you the standard sans-serif font, probably the same as what you'd get with <font name="sans-serif"> in HTML.

SWFFont
SWFFont->getAscent
SWFFont


Returns the ascent of the font, or 0 if not available

SWFFont->__construct
SWFFont->getDescent
SWFFont
PHP Manual

SWFFont->getAscent

(PHP 4 >= 4.0.5)

SWFFont->getAscent — Returns the ascent of the font, or 0 if not available

Descrição

float SWFFont::getAscent ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFFont->getDescent

SWFFont->__construct
SWFFont->getDescent
SWFFont


Returns the descent of the font, or 0 if not available

SWFFont->getAscent
SWFFont->getLeading
SWFFont
PHP Manual

SWFFont->getDescent

(PHP 4 >= 4.0.5)

SWFFont->getDescent — Returns the descent of the font, or 0 if not available

Descrição

float SWFFont::getDescent ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFFont->getAscent

SWFFont->getAscent
SWFFont->getLeading
SWFFont


Returns the leading of the font, or 0 if not available

SWFFont->getDescent
SWFFont->getShape
SWFFont
PHP Manual

SWFFont->getLeading

(PHP 4 >= 4.0.5)

SWFFont->getLeading — Returns the leading of the font, or 0 if not available

Descrição

float SWFFont::getLeading ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFFont->getDescent
SWFFont->getShape
SWFFont


Returns the glyph shape of a char as a text string

SWFFont->getLeading
SWFFont->getUTF8Width
SWFFont
PHP Manual

SWFFont->getShape

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFFont->getShape — Returns the glyph shape of a char as a text string

Descrição

string SWFFont::getShape ( int $code )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFFont->getLeading
SWFFont->getUTF8Width
SWFFont


Calculates the width of the given string in this font at full height

SWFFont->getShape
SWFFont->getWidth
SWFFont
PHP Manual

SWFFont->getUTF8Width

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFFont->getUTF8Width — Calculates the width of the given string in this font at full height

Descrição

float SWFFont::getUTF8Width ( string $string )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFFont->getWidth

SWFFont->getShape
SWFFont->getWidth
SWFFont


Returns the string's width

SWFFont->getUTF8Width
SWFFontChar
SWFFont
PHP Manual

SWFFont->getWidth

(PHP 4 >= 4.0.5)

SWFFont->getWidth — Returns the string's width

Descrição

float SWFFont::getWidth ( string $string )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swffont->getwidth() returns the string string's width, using font's default scaling. You'll probably want to use the swftext() version of this method which uses the text object's scale.

Veja Também

  • SWFFont->getUTF8Width

SWFFont->getUTF8Width
SWFFontChar
SWFFont


The SWFFontChar class

Introdução

SWFFontChar.

Sinopse da classe

SWFFontChar {
/* Methods */
void SWFFontChar::addChars ( string $char )
void addUTF8Chars ( string $char )
}

Índice

  • SWFFontChar->addChars — Adds characters to a font for exporting font
  • SWFFontChar->addUTF8Chars — Adds characters to a font for exporting font
SWFFont->getWidth
SWFFontChar->addChars
Ming


Adds characters to a font for exporting font

SWFFontChar
SWFFontChar->addUTF8Chars
SWFFontChar
PHP Manual

SWFFontChar->addChars

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFFontChar->addChars — Adds characters to a font for exporting font

Descrição

void SWFFontChar::addChars ( string $char )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFFontChar->addUTF8Chars

SWFFontChar
SWFFontChar->addUTF8Chars
SWFFontChar


Adds characters to a font for exporting font

SWFFontChar->addChars
SWFGradient
SWFFontChar
PHP Manual

SWFFontChar->addUTF8Chars

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFFontChar->addUTF8Chars — Adds characters to a font for exporting font

Descrição

void SWFFontChar::addUTF8Chars ( string $char )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFFontChar->addChars

SWFFontChar->addChars
SWFGradient
SWFFontChar


The SWFGradient class

Introdução

SWFGradient.

Sinopse da classe

SWFGradient {
/* Methods */
void SWFGradient::addEntry ( float $ratio , int $red , int $green , int $blue [, int $alpha = 255 ] )
SWFGradient __construct ( void )
}

Índice

  • SWFGradient->addEntry — Adds an entry to the gradient list
  • SWFGradient->__construct — Creates a gradient object
SWFFontChar->addUTF8Chars
SWFGradient->addEntry
Ming


Adds an entry to the gradient list

SWFGradient
SWFGradient->__construct
SWFGradient
PHP Manual

SWFGradient->addEntry

(PHP 4 >= 4.3.0)

SWFGradient->addEntry — Adds an entry to the gradient list

Descrição

void SWFGradient::addEntry ( float $ratio , int $red , int $green , int $blue [, int $alpha = 255 ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfgradient->addentry() adds an entry to the gradient list. ratio is a number between 0 and 1 indicating where in the gradient this color appears. Thou shalt add entries in order of increasing ratio.

red, green, blue is a color (RGB mode).

Valor Retornado

Não há valor retornado.

SWFGradient
SWFGradient->__construct
SWFGradient


Creates a gradient object

SWFGradient->addEntry
SWFMorph
SWFGradient
PHP Manual

SWFGradient->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFGradient->__construct — Creates a gradient object

Descrição

SWFGradient SWFGradient::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfgradient() creates a new SWFGradient object.

After you've added the entries to your gradient, you can use the gradient in a shape fill with the swfshape->addfill() method.

SWFGradient has the following methods : swfgradient->addentry().

This simple example will draw a big black-to-white gradient as background, and a reddish disc in its center.

Exemplo #1 swfgradient() example

<?php

  $m = new SWFMovie();
  $m->setDimension(320, 240);

  $s = new SWFShape();

  // first gradient- black to white
  $g = new SWFGradient();
  $g->addEntry(0.0, 0, 0, 0);
  $g->addEntry(1.0, 0xff, 0xff, 0xff);

  $f = $s->addFill($g, SWFFILL_LINEAR_GRADIENT);
  $f->scaleTo(0.01);
  $f->moveTo(160, 120);
  $s->setRightFill($f);
  $s->drawLine(320, 0);
  $s->drawLine(0, 240);
  $s->drawLine(-320, 0);
  $s->drawLine(0, -240);

  $m->add($s);

  $s = new SWFShape();

  // second gradient- radial gradient from red to transparent
  $g = new SWFGradient();
  $g->addEntry(0.0, 0xff, 0, 0, 0xff);
  $g->addEntry(1.0, 0xff, 0, 0, 0);

  $f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT);
  $f->scaleTo(0.005);
  $f->moveTo(160, 120);
  $s->setRightFill($f);
  $s->drawLine(320, 0);
  $s->drawLine(0, 240);
  $s->drawLine(-320, 0);
  $s->drawLine(0, -240);

  $m->add($s);

  header('Content-type: application/x-shockwave-flash');
  $m->output();
?>

SWFGradient->addEntry
SWFMorph
SWFGradient


The SWFMorph class

Introdução

The methods here are sort of weird. It would make more sense to just have newSWFMorph(shape1, shape2);, but as things are now, shape2 needs to know that it's the second part of a morph. (This, because it starts writing its output as soon as it gets drawing commands- if it kept its own description of its shapes and wrote on completion this and some other things would be much easier.)

Sinopse da classe

SWFMorph {
/* Methods */
SWFMorph SWFMorph::__construct ( void )
SWFShape getShape1 ( void )
SWFShape getShape2 ( void )
}

Índice

  • SWFMorph->__construct — Creates a new SWFMorph object
  • SWFMorph->getShape1 — Gets a handle to the starting shape
  • SWFMorph->getShape2 — Gets a handle to the ending shape
SWFGradient->__construct
SWFMorph->__construct
Ming


Creates a new SWFMorph object

SWFMorph
SWFMorph->getShape1
SWFMorph
PHP Manual

SWFMorph->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMorph->__construct — Creates a new SWFMorph object

Descrição

SWFMorph SWFMorph::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new SWFMorph object.

Also called a "shape tween". This thing lets you make those tacky twisting things that make your computer choke. Oh, joy!

Exemplos

This simple example will morph a big red square into a smaller blue black-bordered square.

Exemplo #1 swfmorph() example

<?php
  $p = new SWFMorph();

  $s = $p->getShape1();
  $s->setLine(0, 0, 0, 0);

  /* Note that this is backwards from normal shapes (left instead of right).
     I have no idea why, but this seems to work.. */

  $s->setLeftFill($s->addFill(0xff, 0, 0));
  $s->movePenTo(-1000,-1000);
  $s->drawLine(2000,0);
  $s->drawLine(0,2000);
  $s->drawLine(-2000,0);
  $s->drawLine(0,-2000);

  $s = $p->getShape2();
  $s->setLine(60,0,0,0);
  $s->setLeftFill($s->addFill(0, 0, 0xff));
  $s->movePenTo(0,-1000);
  $s->drawLine(1000,1000);
  $s->drawLine(-1000,1000);
  $s->drawLine(-1000,-1000);
  $s->drawLine(1000,-1000);

  $m = new SWFMovie();
  $m->setDimension(3000,2000);
  $m->setBackground(0xff, 0xff, 0xff);

  $i = $m->add($p);
  $i->moveTo(1500,1000);

  for ($r=0.0; $r<=1.0; $r+=0.1) {
    $i->setRatio($r);
    $m->nextFrame();
  }

  header('Content-type: application/x-shockwave-flash');
  $m->output();
?>

SWFMorph
SWFMorph->getShape1
SWFMorph


Gets a handle to the starting shape

SWFMorph->__construct
SWFMorph->getShape2
SWFMorph
PHP Manual

SWFMorph->getShape1

(PHP 4 >= 4.0.5)

SWFMorph->getShape1 — Gets a handle to the starting shape

Descrição

SWFShape SWFMorph::getShape1 ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Gets the morph's starting shape.

Valor Retornado

Returns a SWFShape object.

Veja Também

  • SWFMorph->getShape2

SWFMorph->__construct
SWFMorph->getShape2
SWFMorph


Gets a handle to the ending shape

SWFMorph->getShape1
SWFMovie
SWFMorph
PHP Manual

SWFMorph->getShape2

(PHP 4 >= 4.0.5)

SWFMorph->getShape2 — Gets a handle to the ending shape

Descrição

SWFShape SWFMorph::getShape2 ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Gets the morph's ending shape.

Valor Retornado

Returns a SWFShape object.

Veja Também

  • SWFMorph->getShape1

SWFMorph->getShape1
SWFMovie
SWFMorph


The SWFMovie class

Introdução

SWFMovie is a movie object representing an SWF movie.

Sinopse da classe

SWFMovie {
/* Methods */
mixed SWFMovie::add ( object $instance )
void addExport ( SWFCharacter $char , string $name )
mixed addFont ( SWFFont $font )
SWFMovie __construct ([ int $version ] )
SWFSprite importChar ( string $libswf , string $name )
SWFFontChar importFont ( string $libswf , string $name )
void labelFrame ( string $label )
void nextFrame ( void )
int output ([ int $compression ] )
void remove ( object $instance )
int save ( string $filename [, int $compression = -1 ] )
int saveToFile ( resource $x [, int $compression = -1 ] )
void setbackground ( int $red , int $green , int $blue )
void setDimension ( float $width , float $height )
void setFrames ( int $number )
void setRate ( float $rate )
SWFSoundInstance startSound ( SWFSound $sound )
void stopSound ( SWFSound $sound )
int streamMP3 ( mixed $mp3file [, float $skip = 0 ] )
void writeExports ( void )
}

Índice

  • SWFMovie->add — Adds any type of data to a movie
  • SWFMovie->addExport — Descrição
  • SWFMovie->addFont — Descrição
  • SWFMovie->__construct — Creates a new movie object, representing an SWF version 4 movie
  • SWFMovie->importChar — Descrição
  • SWFMovie->importFont — Descrição
  • SWFMovie->labelFrame — Labels a frame
  • SWFMovie->nextFrame — Moves to the next frame of the animation
  • SWFMovie->output — Dumps your lovingly prepared movie out
  • SWFMovie->remove — Removes the object instance from the display list
  • SWFMovie->save — Saves the SWF movie in a file
  • SWFMovie->saveToFile — Descrição
  • SWFMovie->setbackground — Sets the background color
  • SWFMovie->setDimension — Sets the movie's width and height
  • SWFMovie->setFrames — Sets the total number of frames in the animation
  • SWFMovie->setRate — Sets the animation's frame rate
  • SWFMovie->startSound — Descrição
  • SWFMovie->stopSound — Descrição
  • SWFMovie->streamMP3 — Streams a MP3 file
  • SWFMovie->writeExports — Descrição
SWFMorph->getShape2
SWFMovie->add
Ming


Adds any type of data to a movie

SWFMovie
SWFMovie->addExport
SWFMovie
PHP Manual

SWFMovie->add

(PHP 4 >= 4.3.3)

SWFMovie->add — Adds any type of data to a movie

Descrição

mixed SWFMovie::add ( object $instance )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Adds an SWF object instance to the current movie.

Parâmetros

instance

Any type of object instance, like SWFShape, SWFText, SWFFont.

Valor Retornado

For displayable types (shape, text, button, sprite), this returns an SWFDisplayItem, a handle to the object in a display list. Thus, you can add the same shape to a movie multiple times and get separate handles back for each separate instance.

Veja Também

  • SWFMovie->remove

SWFMovie
SWFMovie->addExport
SWFMovie


SWFMovie->add
SWFMovie->addFont
SWFMovie
PHP Manual

SWFMovie->addExport

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->addExport —

Descrição

void SWFMovie::addExport ( SWFCharacter $char , string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFMovie->add
SWFMovie->addFont
SWFMovie


SWFMovie->addExport
SWFMovie->__construct
SWFMovie
PHP Manual

SWFMovie->addFont

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->addFont —

Descrição

mixed SWFMovie::addFont ( SWFFont $font )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFMovie->addExport
SWFMovie->__construct
SWFMovie


Creates a new movie object, representing an SWF version 4 movie

SWFMovie->addFont
SWFMovie->importChar
SWFMovie
PHP Manual

SWFMovie->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->__construct — Creates a new movie object, representing an SWF version 4 movie

Descrição

SWFMovie SWFMovie::__construct ([ int $version ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new movie object, representing an SWF movie.

Parâmetros

version

The desired SWF version. Default is 4.

SWFMovie->addFont
SWFMovie->importChar
SWFMovie


SWFMovie->__construct
SWFMovie->importFont
SWFMovie
PHP Manual

SWFMovie->importChar

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->importChar —

Descrição

SWFSprite SWFMovie::importChar ( string $libswf , string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFMovie->importFont

SWFMovie->__construct
SWFMovie->importFont
SWFMovie


SWFMovie->importChar
SWFMovie->labelFrame
SWFMovie
PHP Manual

SWFMovie->importFont

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->importFont —

Descrição

SWFFontChar SWFMovie::importFont ( string $libswf , string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFMovie->importChar

SWFMovie->importChar
SWFMovie->labelFrame
SWFMovie


Labels a frame

SWFMovie->importFont
SWFMovie->nextFrame
SWFMovie
PHP Manual

SWFMovie->labelFrame

(PHP 4 >= 4.3.3)

SWFMovie->labelFrame — Labels a frame

Descrição

void SWFMovie::labelFrame ( string $label )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFMovie->importFont
SWFMovie->nextFrame
SWFMovie


Moves to the next frame of the animation

SWFMovie->labelFrame
SWFMovie->output
SWFMovie
PHP Manual

SWFMovie->nextFrame

(PHP 4 >= 4.3.3)

SWFMovie->nextFrame — Moves to the next frame of the animation

Descrição

void SWFMovie::nextFrame ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Moves to the next frame of the animation.

Valor Retornado

Não há valor retornado.

SWFMovie->labelFrame
SWFMovie->output
SWFMovie


Dumps your lovingly prepared movie out

SWFMovie->nextFrame
SWFMovie->remove
SWFMovie
PHP Manual

SWFMovie->output

(PHP 4 >= 4.3.3)

SWFMovie->output — Dumps your lovingly prepared movie out

Descrição

int SWFMovie::output ([ int $compression ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Dumps the SWFMovie.

Don't forget to send the Content-Type HTTP header file before using this function, in order to display the movie in a browser.

Parâmetros

compression

The compression level can be a value between 0 and 9, defining the SWF compression similar to gzip compression.

This parameter is only available as of Flash MX (6).

Valor Retornado

Return the number of bytes written or FALSE on error.

Exemplos

Exemplo #1 Displaying your $movie in a browser

<?php
header('Content-type: application/x-shockwave-flash');
$movie->output();
?>

Veja Também

  • SWFMovie->save
  • SWFMovie->saveToFile

SWFMovie->nextFrame
SWFMovie->remove
SWFMovie


Removes the object instance from the display list

SWFMovie->output
SWFMovie->save
SWFMovie
PHP Manual

SWFMovie->remove

(PHP 5.2.1-5.3.0, PECL ming SVN)

SWFMovie->remove — Removes the object instance from the display list

Descrição

void SWFMovie::remove ( object $instance )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Removes the given object instance from the display list.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFMovie->add

SWFMovie->output
SWFMovie->save
SWFMovie


Saves the SWF movie in a file

SWFMovie->remove
SWFMovie->saveToFile
SWFMovie
PHP Manual

SWFMovie->save

(PHP 4 >= 4.3.3)

SWFMovie->save — Saves the SWF movie in a file

Descrição

int SWFMovie::save ( string $filename [, int $compression = -1 ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Saves the SWF movie to the specified filename.

Parâmetros

filename

The path to the saved SWF document.

compression

The compression level can be a value between 0 and 9, defining the SWF compression similar to gzip compression.

This parameter is only available as of Flash MX (6).

Valor Retornado

Return the number of bytes written or FALSE on error.

Veja Também

  • SWFMovie->output
  • SWFMovie->saveToFile

SWFMovie->remove
SWFMovie->saveToFile
SWFMovie


SWFMovie->save
SWFMovie->setbackground
SWFMovie
PHP Manual

SWFMovie->saveToFile

(PHP 4 >= 4.3.3)

SWFMovie->saveToFile —

Descrição

int SWFMovie::saveToFile ( resource $x [, int $compression = -1 ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

X

compression

The compression level can be a value between 0 and 9, defining the SWF compression similar to gzip compression.

This parameter is only available as of Flash MX (6).

Valor Retornado

Return the number of bytes written or FALSE on error.

Veja Também

  • SWFMovie->output
  • SWFMovie->save

SWFMovie->save
SWFMovie->setbackground
SWFMovie


Sets the background color

SWFMovie->saveToFile
SWFMovie->setDimension
SWFMovie
PHP Manual

SWFMovie->setbackground

(PHP 4 >= 4.3.3)

SWFMovie->setbackground — Sets the background color

Descrição

void SWFMovie::setbackground ( int $red , int $green , int $blue )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the background color.

Why is there no rgba version? Think about it, you might want to let the HTML background show through. There's a way to do that, but it only works on IE4. Search the » http://www.macromedia.com/ site for details.

Parâmetros

These parameters are integers between 0 and 255 or hexadecimals between 0x00 and 0xFF:

red

Value of red component

green

Value of green component

blue

Value of blue component

Valor Retornado

Não há valor retornado.

SWFMovie->saveToFile
SWFMovie->setDimension
SWFMovie


Sets the movie's width and height

SWFMovie->setbackground
SWFMovie->setFrames
SWFMovie
PHP Manual

SWFMovie->setDimension

(PHP 4 >= 4.3.3)

SWFMovie->setDimension — Sets the movie's width and height

Descrição

void SWFMovie::setDimension ( float $width , float $height )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the movie's dimension to the specified width and height.

Parâmetros

width

The movie width.

height

The movie height.

Valor Retornado

Não há valor retornado.

SWFMovie->setbackground
SWFMovie->setFrames
SWFMovie


Sets the total number of frames in the animation

SWFMovie->setDimension
SWFMovie->setRate
SWFMovie
PHP Manual

SWFMovie->setFrames

(PHP 4 >= 4.3.3)

SWFMovie->setFrames — Sets the total number of frames in the animation

Descrição

void SWFMovie::setFrames ( int $number )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the total number of frames in the animation to the given number.

Parâmetros

number

The number of frames.

Valor Retornado

Não há valor retornado.

SWFMovie->setDimension
SWFMovie->setRate
SWFMovie


Sets the animation's frame rate

SWFMovie->setFrames
SWFMovie->startSound
SWFMovie
PHP Manual

SWFMovie->setRate

(PHP 4 >= 4.3.3)

SWFMovie->setRate — Sets the animation's frame rate

Descrição

void SWFMovie::setRate ( float $rate )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Sets the frame rate to the specified rate.

Animation will slow down if the player can't render frames fast enough- unless there's a streaming sound, in which case display frames are sacrificed to keep sound from skipping.

Parâmetros

rate

The frame rate, in frame per seconds.

Valor Retornado

Não há valor retornado.

SWFMovie->setFrames
SWFMovie->startSound
SWFMovie


SWFMovie->setRate
SWFMovie->stopSound
SWFMovie
PHP Manual

SWFMovie->startSound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->startSound —

Descrição

SWFSoundInstance SWFMovie::startSound ( SWFSound $sound )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFMovie->stopSound

SWFMovie->setRate
SWFMovie->stopSound
SWFMovie


SWFMovie->startSound
SWFMovie->streamMP3
SWFMovie
PHP Manual

SWFMovie->stopSound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->stopSound —

Descrição

void SWFMovie::stopSound ( SWFSound $sound )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFMovie->startSound

SWFMovie->startSound
SWFMovie->streamMP3
SWFMovie


Streams a MP3 file

SWFMovie->stopSound
SWFMovie->writeExports
SWFMovie
PHP Manual

SWFMovie->streamMP3

(PHP 4 >= 4.3.3)

SWFMovie->streamMP3 — Streams a MP3 file

Descrição

int SWFMovie::streamMP3 ( mixed $mp3file [, float $skip = 0 ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Streams the given MP3 file mp3file.

This method is not very robust in dealing with oddities (can skip over an initial ID3 tag, but that's about it).

Note that the movie isn't smart enough to put enough frames in to contain the entire mp3 stream- you'll have to add (length of song * frames per second) frames to get the entire stream in.

Parâmetros

mp3file

Can be a file pointer returned by fopen() or the MP3 data, as a binary string.

skip

Number of seconds to skip.

Valor Retornado

Return number of frames.

Histórico

Versão | Descrição
5.2.0 | skip added

Exemplos

Exemplo #1 Streaming example

<?php
$m = new SWFMovie();
$m->setRate(12.0);
$m->streamMp3(file_get_contents("distortobass.mp3"));
// use your own MP3

// The file is 11.85 seconds at 12.0 fps = 142 frames
$m->setFrames(142);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFMovie->stopSound
SWFMovie->writeExports
SWFMovie


SWFMovie->streamMP3
SWFPrebuiltClip
SWFMovie
PHP Manual

SWFMovie->writeExports

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMovie->writeExports —

Descrição

void SWFMovie::writeExports ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFMovie->streamMP3
SWFPrebuiltClip
SWFMovie


The SWFPrebuiltClip class

Introdução

SWFPrebuiltClip.

Sinopse da classe

SWFPrebuiltClip {
/* Methods */
SWFPrebuiltClip SWFPrebuiltClip::__construct ( mixed $file )
}

Índice

  • SWFPrebuiltClip->__construct — Returns a SWFPrebuiltClip object
SWFMovie->writeExports
SWFPrebuiltClip->__construct
Ming


Returns a SWFPrebuiltClip object

SWFPrebuiltClip
SWFShape
SWFPrebuiltClip
PHP Manual

SWFPrebuiltClip->__construct

(PHP 5.0.5-5.3.0, PECL ming SVN)

SWFPrebuiltClip->__construct — Returns a SWFPrebuiltClip object

Descrição

SWFPrebuiltClip SWFPrebuiltClip::__construct ( mixed $file )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFPrebuiltClip
SWFShape
SWFPrebuiltClip


The SWFShape class

Introdução

SWFShape.

Sinopse da classe

SWFShape {
/* Methods */
SWFFill SWFShape::addFill ( int $red , int $green , int $blue [, int $alpha = 255 ] )
SWFShape __construct ( void )
void drawArc ( float $r , float $startAngle , float $endAngle )
void drawCircle ( float $r )
int drawCubic ( float $bx , float $by , float $cx , float $cy , float $dx , float $dy )
int drawCubicTo ( float $bx , float $by , float $cx , float $cy , float $dx , float $dy )
int drawCurve ( float $controldx , float $controldy , float $anchordx , float $anchordy [, float $targetdx ], float $targetdy )
int drawCurveTo ( float $controlx , float $controly , float $anchorx , float $anchory [, float $targetx ], float $targety )
void drawGlyph ( SWFFont $font , string $character [, int $size ] )
void drawLine ( float $dx , float $dy )
void drawLineTo ( float $x , float $y )
void movePen ( float $dx , float $dy )
void movePenTo ( float $x , float $y )
void setLeftFill ( SWFGradient $fill )
void setLine ( SWFShape $shape )
void setRightFill ( SWFGradient $fill )
}

Índice

  • SWFShape->addFill — Adds a solid fill to the shape
  • SWFShape->__construct — Creates a new shape object
  • SWFShape->drawArc — Draws an arc of radius r centered at the current location, from angle startAngle to angle endAngle measured clockwise from 12 o'clock
  • SWFShape->drawCircle — Draws a circle of radius r centered at the current location, in a counter-clockwise fashion
  • SWFShape->drawCubic — Draws a cubic bezier curve using the current position and the three given points as control points
  • SWFShape->drawCubicTo — Draws a cubic bezier curve using the current position and the three given points as control points
  • SWFShape->drawCurve — Draws a curve (relative)
  • SWFShape->drawCurveTo — Draws a curve
  • SWFShape->drawGlyph — Draws the first character in the given string into the shape using the glyph definition from the given font
  • SWFShape->drawLine — Draws a line (relative)
  • SWFShape->drawLineTo — Draws a line
  • SWFShape->movePen — Moves the shape's pen (relative)
  • SWFShape->movePenTo — Moves the shape's pen
  • SWFShape->setLeftFill — Sets left rasterizing color
  • SWFShape->setLine — Sets the shape's line style
  • SWFShape->setRightFill — Sets right rasterizing color
SWFPrebuiltClip->__construct
SWFShape->addFill
Ming


Adds a solid fill to the shape

SWFShape
SWFShape->__construct
SWFShape
PHP Manual

SWFShape->addFill

(PHP 4 >= 4.0.5)

SWFShape->addFill — Adds a solid fill to the shape

Descrição

SWFFill SWFShape::addFill ( int $red , int $green , int $blue [, int $alpha = 255 ] )
SWFFill addFill ( SWFBitmap $bitmap [, int $flags ] )
SWFFill addFill ( SWFGradient $gradient [, int $flags ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

SWFShape->addFill() adds a solid fill to the shape's list of fill styles. SWFShape->addFill() accepts three different types of arguments.

red, green, blue is a color (RGB mode).

The bitmap argument is an SWFBitmap() object. The flags argument can be one of the following values: SWFFILL_CLIPPED_BITMAP, SWFFILL_TILED_BITMAP, SWFFILL_LINEAR_GRADIENT or SWFFILL_RADIAL_GRADIENT. Default is SWFFILL_TILED_BITMAP for SWFBitmap and SWFFILL_LINEAR_GRADIENT for SWFGradient.

The gradient argument is an SWFGradient() object. The flags argument can be one of the following values : SWFFILL_RADIAL_GRADIENT or SWFFILL_LINEAR_GRADIENT. Default is SWFFILL_LINEAR_GRADIENT. I'm sure about this one. Really.

SWFShape->addFill() returns an SWFFill()
object for use with the SWFShape->setLeftFill()
and SWFShape->setRightFill() functions
described below.

Exemplos

This simple example will draw a frame on a bitmap. Ah, here's another buglet in the flash player- it doesn't seem to care about the second shape's bitmap's transformation in a morph. According to spec, the bitmap should stretch along with the shape in this example..

Exemplo #1 SWFShape->addFill() example

<?php

$p = new SWFMorph();

$b = new SWFBitmap(file_get_contents("alphafill.jpg"));
// use your own bitmap
$width = $b->getWidth();
$height = $b->getHeight();

$s = $p->getShape1();
$f = $s->addFill($b, SWFFILL_TILED_BITMAP);
$f->moveTo(-$width/2, -$height/4);
$f->scaleTo(1.0, 0.5);
$s->setLeftFill($f);
$s->movePenTo(-$width/2, -$height/4);
$s->drawLine($width, 0);
$s->drawLine(0, $height/2);
$s->drawLine(-$width, 0);
$s->drawLine(0, -$height/2);

$s = $p->getShape2();
$f = $s->addFill($b, SWFFILL_TILED_BITMAP);

// these two have no effect!
$f->moveTo(-$width/4, -$height/2);
$f->scaleTo(0.5, 1.0);

$s->setLeftFill($f);
$s->movePenTo(-$width/4, -$height/2);
$s->drawLine($width/2, 0);
$s->drawLine(0, $height);
$s->drawLine(-$width/2, 0);
$s->drawLine(0, -$height);

$m = new SWFMovie();
$m->setDimension($width, $height);
$i = $m->add($p);
$i->moveTo($width/2, $height/2);

for ($n=0; $n<1.001; $n+=0.03) {
    $i->setRatio($n);
    $m->nextFrame();
}

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

Veja Também

  • SWFShape->setLeftFill
  • SWFShape->setRightFill

SWFShape
SWFShape->__construct
SWFShape


Creates a new shape object

SWFShape->addFill
SWFShape->drawArc
SWFShape
PHP Manual

SWFShape->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFShape->__construct — Creates a new shape object

Descrição

SWFShape SWFShape::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Created a new SWFShape object.

Exemplos

This simple example will draw a big red elliptic quadrant.

Exemplo #1 swfshape() example

<?php
$s = new SWFShape();
$s->setLine(40, 0x7f, 0, 0);
$s->setRightFill($s->addFill(0xff, 0, 0));
$s->movePenTo(200, 200);
$s->drawLineTo(6200, 200);
$s->drawLineTo(6200, 4600);
$s->drawCurveTo(200, 4600, 200, 200);

$m = new SWFMovie();
$m->setDimension(6400, 4800);
$m->setRate(12.0);
$m->add($s);
$m->nextFrame();

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFShape->addFill
SWFShape->drawArc
SWFShape


Draws an arc of radius r centered at the current location, from angle startAngle to angle endAngle measured clockwise from 12 o'clock

SWFShape->__construct
SWFShape->drawCircle
SWFShape
PHP Manual

SWFShape->drawArc

(PHP 4 >= 4.0.5)

SWFShape->drawArc — Draws an arc of radius r centered at the current location, from angle startAngle to angle endAngle measured clockwise from 12 o'clock

Descrição

void SWFShape::drawArc ( float $r , float $startAngle , float $endAngle )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->drawCircle

SWFShape->__construct
SWFShape->drawCircle
SWFShape


Draws a circle of radius r centered at the current location, in a counter-clockwise fashion

SWFShape->drawArc
SWFShape->drawCubic
SWFShape
PHP Manual

SWFShape->drawCircle

(PHP 4 >= 4.0.5)

SWFShape->drawCircle — Draws a circle of radius r centered at the current location, in a counter-clockwise fashion

Descrição

void SWFShape::drawCircle ( float $r )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFShape->drawArc
SWFShape->drawCubic
SWFShape


Draws a cubic bezier curve using the current position and the three given points as control points

SWFShape->drawCircle
SWFShape->drawCubicTo
SWFShape
PHP Manual

SWFShape->drawCubic

(PHP 4 >= 4.0.5)

SWFShape->drawCubic — Draws a cubic bezier curve using the current position and the three given points as control points

Descrição

int SWFShape::drawCubic ( float $bx , float $by , float $cx , float $cy , float $dx , float $dy )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFShape->drawCubicTo

SWFShape->drawCircle
SWFShape->drawCubicTo
SWFShape


Draws a cubic bezier curve using the current position and the three given points as control points

SWFShape->drawCubic
SWFShape->drawCurve
SWFShape
PHP Manual

SWFShape->drawCubicTo

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFShape->drawCubicTo — Draws a cubic bezier curve using the current position and the three given points as control points

Descrição

int SWFShape::drawCubicTo ( float $bx , float $by , float $cx , float $cy , float $dx , float $dy )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFShape->drawCubic

SWFShape->drawCubic
SWFShape->drawCurve
SWFShape


Draws a curve (relative)

SWFShape->drawCubicTo
SWFShape->drawCurveTo
SWFShape
PHP Manual

SWFShape->drawCurve

(PHP 4 >= 4.0.5)

SWFShape->drawCurve — Draws a curve (relative)

Descrição

int SWFShape::drawCurve ( float $controldx , float $controldy , float $anchordx , float $anchordy [, float $targetdx ], float $targetdy )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->drawcurve() draws a quadratic curve (using the current line style,set by swfshape->setline()) from the current pen position to the relative position (anchorx,anchory) using relative control point (controlx,controly). That is, head towards the control point, then smoothly turn to the anchor point.

With 6 parameters, it draws a cubic bezier to point (x+targetdx, x+targetdy) with control points (x+controldx, y+controldy) and (x+anchordx, y+anchordy).

Veja Também

  • SWFShape->drawCurve

SWFShape->drawCubicTo
SWFShape->drawCurveTo
SWFShape


Draws a curve

SWFShape->drawCurve
SWFShape->drawGlyph
SWFShape
PHP Manual

SWFShape->drawCurveTo

(PHP 4 >= 4.0.5)

SWFShape->drawCurveTo — Draws a curve

Descrição

int SWFShape::drawCurveTo ( float $controlx , float $controly , float $anchorx , float $anchory [, float $targetx ], float $targety )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->drawcurveto() draws a quadratic curve (using the current line style, set by swfshape->setline()) from the current pen position to (anchorx,anchory) using (controlx,controly) as a control point. That is, head towards the control point, then smoothly turn to the anchor point.

With 6 parameters, it draws a cubic bezier to point (targetx, targety) with control points (controlx, controly) and (anchorx, anchory).

Veja Também

  • SWFShape->drawCurveTo

SWFShape->drawCurve
SWFShape->drawGlyph
SWFShape


Draws the first character in the given string into the shape using the glyph definition from the given font

SWFShape->drawCurveTo
SWFShape->drawLine
SWFShape
PHP Manual

SWFShape->drawGlyph

(PHP 4 >= 4.0.5)

SWFShape->drawGlyph — Draws the first character in the given string into the shape using the glyph definition from the given font

Descrição

void SWFShape::drawGlyph ( SWFFont $font , string $character [, int $size ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFShape->drawCurveTo
SWFShape->drawLine
SWFShape


Draws a line (relative)

SWFShape->drawGlyph
SWFShape->drawLineTo
SWFShape
PHP Manual

SWFShape->drawLine

(PHP 4 >= 4.0.5)

SWFShape->drawLine — Draws a line (relative)

Descrição

void SWFShape::drawLine ( float $dx , float $dy )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->drawline() draws a line (using the current line style set by swfshape->setline()) from the current pen position to displacement (dx,dy).

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->drawLineTo

SWFShape->drawGlyph
SWFShape->drawLineTo
SWFShape


Draws a line

SWFShape->drawLine
SWFShape->movePen
SWFShape
PHP Manual

SWFShape->drawLineTo

(PHP 4 >= 4.0.5)

SWFShape->drawLineTo — Draws a line

Descrição

void SWFShape::drawLineTo ( float $x , float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->setrightfill() draws a line (using the current line style, set by swfshape->setline()) from the current pen position to point (x,y) in the shape's coordinate space.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->drawLine

SWFShape->drawLine
SWFShape->movePen
SWFShape


Moves the shape's pen (relative)

SWFShape->drawLineTo
SWFShape->movePenTo
SWFShape
PHP Manual

SWFShape->movePen

(PHP 4 >= 4.0.5)

SWFShape->movePen — Moves the shape's pen (relative)

Descrição

void SWFShape::movePen ( float $dx , float $dy )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->setrightfill() move the shape's pen from coordinates (current x,current y) to (current x + dx, current y + dy) in the shape's coordinate space.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->movePenTo

SWFShape->drawLineTo
SWFShape->movePenTo
SWFShape


Moves the shape's pen

SWFShape->movePen
SWFShape->setLeftFill
SWFShape
PHP Manual

SWFShape->movePenTo

(PHP 4 >= 4.0.5)

SWFShape->movePenTo — Moves the shape's pen

Descrição

void SWFShape::movePenTo ( float $x , float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->setrightfill() move the shape's pen to (x,y) in the shape's coordinate space.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->movePen

SWFShape->movePen
SWFShape->setLeftFill
SWFShape


Sets left rasterizing color

SWFShape->movePenTo
SWFShape->setLine
SWFShape
PHP Manual

SWFShape->setLeftFill

(PHP 4 >= 4.0.5)

SWFShape->setLeftFill — Sets left rasterizing color

Descrição

void SWFShape::setLeftFill ( SWFGradient $fill )
void setLeftFill ( int $red , int $green , int $blue [, int $a ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

What this nonsense is about is, every edge segment borders at most two fills. When rasterizing the object, it's pretty handy to know what those fills are ahead of time, so the swf format requires these to be specified.

swfshape->setleftfill() sets the fill on the left side of the edge- that is, on the interior if you're defining the outline of the shape in a counter-clockwise fashion. The fill object is an SWFFill object returned from one of the addFill functions above.

This seems to be reversed when you're defining a shape in a morph, though. If your browser crashes, just try setting the fill on the other side.

Shortcut for swfshape->setleftfill($s->addfill($r, $g, $b [, $a]));.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->setRightFill

SWFShape->movePenTo
SWFShape->setLine
SWFShape


Sets the shape's line style

SWFShape->setLeftFill
SWFShape->setRightFill
SWFShape
PHP Manual

SWFShape->setLine

(PHP 4 >= 4.0.5)

SWFShape->setLine — Sets the shape's line style

Descrição

void SWFShape::setLine ( SWFShape $shape )
void setLine ( int $width , int $red , int $green , int $blue [, int $a ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfshape->setline() sets the shape's line style. width is the line's width. If width is 0, the line's style is removed (then, all other arguments are ignored). If width > 0, then line's color is set to red, green, blue. Last parameter a is optional.

You must declare all line styles before you use them (see example).

Valor Retornado

Não há valor retornado.

Exemplos

This simple example will draw a big "!#%*@", in funny colors and gracious style.

Exemplo #1 swfshape->setline() example

<?php
$s = new SWFShape();
$f1 = $s->addFill(0xff, 0, 0);
$f2 = $s->addFill(0xff, 0x7f, 0);
$f3 = $s->addFill(0xff, 0xff, 0);
$f4 = $s->addFill(0, 0xff, 0);
$f5 = $s->addFill(0, 0, 0xff);

// bug: have to declare all line styles before you use them
$s->setLine(40, 0x7f, 0, 0);
$s->setLine(40, 0x7f, 0x3f, 0);
$s->setLine(40, 0x7f, 0x7f, 0);
$s->setLine(40, 0, 0x7f, 0);
$s->setLine(40, 0, 0, 0x7f);

$f = new SWFFont('Techno.fdb');

$s->setRightFill($f1);
$s->setLine(40, 0x7f, 0, 0);
$s->drawGlyph($f, '!');
$s->movePen($f->getWidth('!'), 0);

$s->setRightFill($f2);
$s->setLine(40, 0x7f, 0x3f, 0);
$s->drawGlyph($f, '#');
$s->movePen($f->getWidth('#'), 0);

$s->setRightFill($f3);
$s->setLine(40, 0x7f, 0x7f, 0);
$s->drawGlyph($f, '%');
$s->movePen($f->getWidth('%'), 0);

$s->setRightFill($f4);
$s->setLine(40, 0, 0x7f, 0);
$s->drawGlyph($f, '*');
$s->movePen($f->getWidth('*'), 0);

$s->setRightFill($f5);
$s->setLine(40, 0, 0, 0x7f);
$s->drawGlyph($f, '@');

$m = new SWFMovie();
$m->setDimension(3000,2000);
$m->setRate(12.0);
$i = $m->add($s);
$i->moveTo(1500-$f->getWidth("!#%*@")/2, 1000+$f->getAscent()/2);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

Valor Retornado

Não há valor retornado.

SWFShape->setLeftFill
SWFShape->setRightFill
SWFShape


Sets right rasterizing color

SWFShape->setLine
SWFSound
SWFShape
PHP Manual

SWFShape->setRightFill

(PHP 4 >= 4.0.5)

SWFShape->setRightFill — Sets right rasterizing color

Descrição

void SWFShape::setRightFill ( SWFGradient $fill )
void setRightFill ( int $red , int $green , int $blue [, int $a ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Shortcut for swfshape->setrightfill($s->addfill($r, $g, $b [, $a]));.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFShape->setLeftFill

SWFShape->setLine
SWFSound
SWFShape


The SWFSound class

Introdução

SWFSound.

Sinopse da classe

SWFSound {
/* Methods */
SWFSound SWFSound::__construct ( string $filename [, int $flags = 0 ] )
}

Índice

  • SWFSound — Returns a new SWFSound object from given file
SWFShape->setRightFill
SWFSound
Ming


Returns a new SWFSound object from given file

SWFSound
SWFSoundInstance
SWFSound
PHP Manual

SWFSound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSound — Returns a new SWFSound object from given file

Descrição

SWFSound SWFSound::__construct ( string $filename [, int $flags = 0 ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFSound
SWFSoundInstance
SWFSound
PHP Manual


The SWFSoundInstance class

Introdução

SWFSoundInstance objects are returned by the SWFSprite->startSound and SWFMovie->startSound methods.

Sinopse da classe

SWFSoundInstance {
/* Methods */
void SWFSoundInstance::loopCount ( int $point )
void loopInPoint ( int $point )
void loopOutPoint ( int $point )
void noMultiple ( void )
}

Índice

  • SWFSoundInstance->loopCount — Descrição
  • SWFSoundInstance->loopInPoint — Descrição
  • SWFSoundInstance->loopOutPoint — Descrição
  • SWFSoundInstance->noMultiple — Descrição
SWFSound
SWFSoundInstance->loopCount
Ming


SWFSoundInstance
SWFSoundInstance->loopInPoint
SWFSoundInstance
PHP Manual

SWFSoundInstance->loopCount

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSoundInstance->loopCount —

Descrição

void SWFSoundInstance::loopCount ( int $point )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

point

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFSoundInstance->loopOutPoint

SWFSoundInstance
SWFSoundInstance->loopInPoint
SWFSoundInstance


SWFSoundInstance->loopCount
SWFSoundInstance->loopOutPoint
SWFSoundInstance
PHP Manual

SWFSoundInstance->loopInPoint

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSoundInstance->loopInPoint —

Descrição

void SWFSoundInstance::loopInPoint ( int $point )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

point

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFSoundInstance->loopOutPoint

SWFSoundInstance->loopCount
SWFSoundInstance->loopOutPoint
SWFSoundInstance


SWFSoundInstance->loopInPoint
SWFSoundInstance->noMultiple
SWFSoundInstance
PHP Manual

SWFSoundInstance->loopOutPoint

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSoundInstance->loopOutPoint —

Descrição

void SWFSoundInstance::loopOutPoint ( int $point )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

point

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFSoundInstance->loopInPoint

SWFSoundInstance->loopInPoint
SWFSoundInstance->noMultiple
SWFSoundInstance


SWFSoundInstance->loopOutPoint
SWFSprite
SWFSoundInstance
PHP Manual

SWFSoundInstance->noMultiple

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSoundInstance->noMultiple —

Descrição

void SWFSoundInstance::noMultiple ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFSoundInstance->loopOutPoint
SWFSprite
SWFSoundInstance


The SWFSprite class

Introdução

An SWFSprite is also known as a "movie clip", this allows one to create objects which are animated in their own timelines. Hence, the sprite has most of the same methods as the movie.

Sinopse da classe

SWFSprite {
/* Methods */
void SWFSprite::add ( object $object )
SWFSprite __construct ( void )
void labelFrame ( string $label )
void nextFrame ( void )
void remove ( object $object )
void setFrames ( int $number )
SWFSoundInstance startSound ( SWFSound $sount )
void stopSound ( SWFSound $sount )
}

Índice

  • SWFSprite->add — Adds an object to a sprite
  • SWFSprite->__construct — Creates a movie clip (a sprite)
  • SWFSprite->labelFrame — Labels frame
  • SWFSprite->nextFrame — Moves to the next frame of the animation
  • SWFSprite->remove — Removes an object to a sprite
  • SWFSprite->setFrames — Sets the total number of frames in the animation
  • SWFSprite->startSound — Descrição
  • SWFSprite->stopSound — Descrição
SWFSoundInstance->noMultiple
SWFSprite->add
Ming


Adds an object to a sprite

SWFSprite
SWFSprite->__construct
SWFSprite
PHP Manual

SWFSprite->add

(PHP 4 >= 4.0.5)

SWFSprite->add — Adds an object to a sprite

Descrição

void SWFSprite::add ( object $object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfsprite->add() adds a swfshape(), a
swfbutton(), a swftext(),
a swfaction() or a swfsprite() object.

For displayable types (swfshape(),
swfbutton(), swftext(),
swfaction() or swfsprite()),
this returns a handle  to the object in a display list.

Valor Retornado

Não há valor retornado.

SWFSprite
SWFSprite->__construct
SWFSprite


Creates a movie clip (a sprite)

SWFSprite->add
SWFSprite->labelFrame
SWFSprite
PHP Manual

SWFSprite->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSprite->__construct — Creates a movie clip (a sprite)

Descrição

SWFSprite SWFSprite::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new SWFSprite object.

SWFSprite->add
SWFSprite->labelFrame
SWFSprite


Labels frame

SWFSprite->__construct
SWFSprite->nextFrame
SWFSprite
PHP Manual

SWFSprite->labelFrame

(PHP 4 >= 4.3.3)

SWFSprite->labelFrame — Labels frame

Descrição

void SWFSprite::labelFrame ( string $label )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFSprite->__construct
SWFSprite->nextFrame
SWFSprite


Moves to the next frame of the animation

SWFSprite->labelFrame
SWFSprite->remove
SWFSprite
PHP Manual

SWFSprite->nextFrame

(PHP 4 >= 4.0.5)

SWFSprite->nextFrame — Moves to the next frame of the animation

Descrição

void SWFSprite::nextFrame ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfsprite->setframes() moves to the next frame of the animation.

Valor Retornado

Não há valor retornado.

SWFSprite->labelFrame
SWFSprite->remove
SWFSprite


Removes an object to a sprite

SWFSprite->nextFrame
SWFSprite->setFrames
SWFSprite
PHP Manual

SWFSprite->remove

(PHP 4 >= 4.0.5)

SWFSprite->remove — Removes an object to a sprite

Descrição

void SWFSprite::remove ( object $object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfsprite->remove() remove a swfshape(), a
swfbutton(), a swftext(),
a swfaction() or a swfsprite() object
from the sprite.

Valor Retornado

Não há valor retornado.

SWFSprite->nextFrame
SWFSprite->setFrames
SWFSprite


Sets the total number of frames in the animation

SWFSprite->remove
SWFSprite->startSound
SWFSprite
PHP Manual

SWFSprite->setFrames

(PHP 4 >= 4.0.5)

SWFSprite->setFrames — Sets the total number of frames in the animation

Descrição

void SWFSprite::setFrames ( int $number )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swfsprite->setframes() sets the total number of frames in the animation to numberofframes.

Valor Retornado

Não há valor retornado.

SWFSprite->remove
SWFSprite->startSound
SWFSprite


SWFSprite->setFrames
SWFSprite->stopSound
SWFSprite
PHP Manual

SWFSprite->startSound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSprite->startSound —

Descrição

SWFSoundInstance SWFSprite::startSound ( SWFSound $sount )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFSprite->stopSound

SWFSprite->setFrames
SWFSprite->stopSound
SWFSprite


SWFSprite->startSound
SWFText
SWFSprite
PHP Manual

SWFSprite->stopSound

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFSprite->stopSound —

Descrição

void SWFSprite::stopSound ( SWFSound $sount )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFSprite->startSound

SWFSprite->startSound
SWFText
SWFSprite


The SWFText class

Introdução

SWFText.

Sinopse da classe

SWFText {
/* Methods */
void SWFText::addString ( string $string )
void addUTF8String ( string $text )
void __construct ( void )
float getAscent ( void )
float getDescent ( void )
float getLeading ( void )
float getUTF8Width ( string $string )
float getWidth ( string $string )
void moveTo ( float $x , float $y )
void setColor ( int $red , int $green , int $blue [, int $a = 255 ] )
void setFont ( SWFFont $font )
void setHeight ( float $height )
void setSpacing ( float $spacing )
}

Índice

  • SWFText->addString — Draws a string
  • SWFText->addUTF8String — Writes the given text into this SWFText object at the current pen position, using the current font, height, spacing, and color
  • SWFText->__construct — Creates a new SWFText object
  • SWFText->getAscent — Returns the ascent of the current font at its current size, or 0 if not available
  • SWFText->getDescent — Returns the descent of the current font at its current size, or 0 if not available
  • SWFText->getLeading — Returns the leading of the current font at its current size, or 0 if not available
  • SWFText->getUTF8Width — calculates the width of the given string in this text objects current font and size
  • SWFText->getWidth — Computes string's width
  • SWFText->moveTo — Moves the pen
  • SWFText->setColor — Sets the current text color
  • SWFText->setFont — Sets the current font
  • SWFText->setHeight — Sets the current font height
  • SWFText->setSpacing — Sets the current font spacing
SWFSprite->stopSound
SWFText->addString
Ming


Draws a string

SWFText
SWFText->addUTF8String
SWFText
PHP Manual

SWFText->addString

(PHP 4 >= 4.0.5)

SWFText->addString — Draws a string

Descrição

void SWFText::addString ( string $string )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftext->addstring() draws the string string at the current pen (cursor) location. Pen is at the baseline of the text; i.e., ascending text is in the -y direction.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFText->addUTF8String

SWFText
SWFText->addUTF8String
SWFText


Writes the given text into this SWFText object at the current pen position, using the current font, height, spacing, and color

SWFText->addString
SWFText->__construct
SWFText
PHP Manual

SWFText->addUTF8String

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFText->addUTF8String — Writes the given text into this SWFText object at the current pen position, using the current font, height, spacing, and color

Descrição

void SWFText::addUTF8String ( string $text )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFText->addString

SWFText->addString
SWFText->__construct
SWFText


Creates a new SWFText object

SWFText->addUTF8String
SWFText->getAscent
SWFText
PHP Manual

SWFText->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFText->__construct — Creates a new SWFText object

Descrição

void SWFText::__construct ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Creates a new SWFText object, fresh for manipulating.

Exemplos

This simple example will draw a big yellow "PHP generates Flash with Ming" text, on white background.

Exemplo #1 swftext() example

<?php
$f = new SWFFont("Techno.fdb");
$t = new SWFText();
$t->setFont($f);
$t->moveTo(200, 2400);
$t->setColor(0xff, 0xff, 0);
$t->setHeight(1200);
$t->addString("PHP generates Flash with Ming!!");

$m = new SWFMovie();
$m->setDimension(5400, 3600);

$m->add($t);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

SWFText->addUTF8String
SWFText->getAscent
SWFText


Returns the ascent of the current font at its current size, or 0 if not available

SWFText->__construct
SWFText->getDescent
SWFText
PHP Manual

SWFText->getAscent

(PHP 4 >= 4.0.5)

SWFText->getAscent — Returns the ascent of the current font at its current size, or 0 if not available

Descrição

float SWFText::getAscent ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFText->getDescent

SWFText->__construct
SWFText->getDescent
SWFText


Returns the descent of the current font at its current size, or 0 if not available

SWFText->getAscent
SWFText->getLeading
SWFText
PHP Manual

SWFText->getDescent

(PHP 4 >= 4.0.5)

SWFText->getDescent — Returns the descent of the current font at its current size, or 0 if not available

Descrição

float SWFText::getDescent ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFText->getAscent

SWFText->getAscent
SWFText->getLeading
SWFText


Returns the leading of the current font at its current size, or 0 if not available

SWFText->getDescent
SWFText->getUTF8Width
SWFText
PHP Manual

SWFText->getLeading

(PHP 4 >= 4.0.5)

SWFText->getLeading — Returns the leading of the current font at its current size, or 0 if not available

Descrição

float SWFText::getLeading ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFText->getDescent
SWFText->getUTF8Width
SWFText


calculates the width of the given string in this text objects current font and size

SWFText->getLeading
SWFText->getWidth
SWFText
PHP Manual

SWFText->getUTF8Width

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFText->getUTF8Width — calculates the width of the given string in this text objects current font and size

Descrição

float SWFText::getUTF8Width ( string $string )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • SWFText->getWidth

SWFText->getLeading
SWFText->getWidth
SWFText


Computes string's width

SWFText->getUTF8Width
SWFText->moveTo
SWFText
PHP Manual

SWFText->getWidth

(PHP 4 >= 4.0.5)

SWFText->getWidth — Computes string's width

Descrição

float SWFText::getWidth ( string $string )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the rendered width of the string at the text object's current font, scale, and spacing settings.

Veja Também

  • SWFText->getUTF8Width

SWFText->getUTF8Width
SWFText->moveTo
SWFText


Moves the pen

SWFText->getWidth
SWFText->setColor
SWFText
PHP Manual

SWFText->moveTo

(PHP 4 >= 4.0.5)

SWFText->moveTo — Moves the pen

Descrição

void SWFText::moveTo ( float $x , float $y )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftext->moveto() moves the pen (or cursor, if that makes more sense) to (x,y) in text object's coordinate space. If either is zero, though, value in that dimension stays the same. Annoying, should be fixed.

Valor Retornado

Não há valor retornado.

SWFText->getWidth
SWFText->setColor
SWFText


Sets the current text color

SWFText->moveTo
SWFText->setFont
SWFText
PHP Manual

SWFText->setColor

(PHP 4 >= 4.0.5)

SWFText->setColor — Sets the current text color

Descrição

void SWFText::setColor ( int $red , int $green , int $blue [, int $a = 255 ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Changes the current text color.

Parâmetros

These parameters are integers between 0 and 255 or hexadecimals between 0x00 and 0xFF:

red

Value of red component

green

Value of green component

blue

Value of blue component

a

Value of alpha component

Valor Retornado

Não há valor retornado.

SWFText->moveTo
SWFText->setFont
SWFText


Sets the current font

SWFText->setColor
SWFText->setHeight
SWFText
PHP Manual

SWFText->setFont

(PHP 4 >= 4.0.5)

SWFText->setFont — Sets the current font

Descrição

void SWFText::setFont ( SWFFont $font )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftext->setfont() sets the current font to font.

Valor Retornado

Não há valor retornado.

SWFText->setColor
SWFText->setHeight
SWFText


Sets the current font height

SWFText->setFont
SWFText->setSpacing
SWFText
PHP Manual

SWFText->setHeight

(PHP 4 >= 4.0.5)

SWFText->setHeight — Sets the current font height

Descrição

void SWFText::setHeight ( float $height )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftext->setheight() sets the current font height to height. Default is 240.

Valor Retornado

Não há valor retornado.

SWFText->setFont
SWFText->setSpacing
SWFText


Sets the current font spacing

SWFText->setHeight
SWFTextField
SWFText
PHP Manual

SWFText->setSpacing

(PHP 4 >= 4.0.5)

SWFText->setSpacing — Sets the current font spacing

Descrição

void SWFText::setSpacing ( float $spacing )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftext->setspacing() sets the current font spacing to spacing. Default is 1.0. 0 is all of the letters written at the same point. This doesn't really work that well because it inflates the advance across the letter, doesn't add the same amount of spacing between the letters. I should try and explain that better, prolly. Or just fix the damn thing to do constant spacing. This was really just a way to figure out how letter advances work, anyway.. So nyah.

Valor Retornado

Não há valor retornado.

SWFText->setHeight
SWFTextField
SWFText


The SWFTextField class

Introdução

SWFTextField.

Sinopse da classe

SWFTextField {
/* Methods */
void SWFTextField::addChars ( string $chars )
void addString ( string $string )
void align ( int $alignement )
SWFTextField __construct ([ int $flags ] )
void setBounds ( float $width , float $height )
void setColor ( int $red , int $green , int $blue [, int $a = 255 ] )
void setFont ( SWFFont $font )
void setHeight ( float $height )
void setIndentation ( float $width )
void setLeftMargin ( float $width )
void setLineSpacing ( float $height )
void setMargins ( float $left , float $right )
void setName ( string $name )
void setPadding ( float $padding )
void setRightMargin ( float $width )
}

Índice

  • SWFTextField->addChars — adds characters to a font that will be available within a textfield
  • SWFTextField->addString — Concatenates the given string to the text field
  • SWFTextField->align — Sets the text field alignment
  • SWFTextField->__construct — Creates a text field object
  • SWFTextField->setBounds — Sets the text field width and height
  • SWFTextField->setColor — Sets the color of the text field
  • SWFTextField->setFont — Sets the text field font
  • SWFTextField->setHeight — Sets the font height of this text field font
  • SWFTextField->setIndentation — Sets the indentation of the first line
  • SWFTextField->setLeftMargin — Sets the left margin width of the text field
  • SWFTextField->setLineSpacing — Sets the line spacing of the text field
  • SWFTextField->setMargins — Sets the margins width of the text field
  • SWFTextField->setName — Sets the variable name
  • SWFTextField->setPadding — Sets the padding of this textfield
  • SWFTextField->setRightMargin — Sets the right margin width of the text field
SWFText->setSpacing
SWFTextField->addChars
Ming


adds characters to a font that will be available within a textfield

SWFTextField
SWFTextField->addString
SWFTextField
PHP Manual

SWFTextField->addChars

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFTextField->addChars — adds characters to a font that will be available within a textfield

Descrição

void SWFTextField::addChars ( string $chars )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

Veja Também

  • SWFTextField->addString

SWFTextField
SWFTextField->addString
SWFTextField


Concatenates the given string to the text field

SWFTextField->addChars
SWFTextField->align
SWFTextField
PHP Manual

SWFTextField->addString

(PHP 4 >= 4.0.5)

SWFTextField->addString — Concatenates the given string to the text field

Descrição

void SWFTextField::addString ( string $string )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setname() concatenates the string string to the text field.

Valor Retornado

Não há valor retornado.

SWFTextField->addChars
SWFTextField->align
SWFTextField


Sets the text field alignment

SWFTextField->addString
SWFTextField->__construct
SWFTextField
PHP Manual

SWFTextField->align

(PHP 4 >= 4.0.5)

SWFTextField->align — Sets the text field alignment

Descrição

void SWFTextField::align ( int $alignement )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->align() sets the text field alignment to alignement. Valid values for alignement are : SWFTEXTFIELD_ALIGN_LEFT, SWFTEXTFIELD_ALIGN_RIGHT, SWFTEXTFIELD_ALIGN_CENTER and SWFTEXTFIELD_ALIGN_JUSTIFY.

Valor Retornado

Não há valor retornado.

SWFTextField->addString
SWFTextField->__construct
SWFTextField


Creates a text field object

SWFTextField->align
SWFTextField->setBounds
SWFTextField
PHP Manual

SWFTextField->__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFTextField->__construct — Creates a text field object

Descrição

SWFTextField SWFTextField::__construct ([ int $flags ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield() creates a new text field object. Text Fields are less flexible than swftext() objects- they can't be rotated, scaled non-proportionally, or skewed, but they can be used as form entries, and they can use browser-defined fonts.

The optional flags change the text field's behavior. It has the following possibles values :

  • SWFTEXTFIELD_DRAWBOX draws the outline of the textfield
  • SWFTEXTFIELD_HASLENGTH
  • SWFTEXTFIELD_HTML allows text markup using HTML-tags
  • SWFTEXTFIELD_MULTILINE allows multiple lines
  • SWFTEXTFIELD_NOEDIT indicates that the field shouldn't be user-editable
  • SWFTEXTFIELD_NOSELECT makes the field non-selectable
  • SWFTEXTFIELD_PASSWORD obscures the data entry
  • SWFTEXTFIELD_WORDWRAP allows text to wrap
Flags are combined with the bitwise OR operation. For example,
<?php
$t = newSWFTextField(SWFTEXTFIELD_PASSWORD | SWFTEXTFIELD_NOEDIT);
?>
creates a totally useless non-editable password field.

SWFTextField has the following methods : swftextfield->setfont(),
swftextfield->setbounds(), swftextfield->align(),
swftextfield->setheight(), swftextfield->setleftmargin(),
swftextfield->setrightmargin(), swftextfield->setmargins(),
swftextfield->setindentation(), swftextfield->setlinespacing(),
swftextfield->setcolor(), swftextfield->setname() and
swftextfield->addstring().

SWFTextField->align
SWFTextField->setBounds
SWFTextField


Sets the text field width and height

SWFTextField->__construct
SWFTextField->setColor
SWFTextField
PHP Manual

SWFTextField->setBounds

(PHP 4 >= 4.0.5)

SWFTextField->setBounds — Sets the text field width and height

Descrição

void SWFTextField::setBounds ( float $width , float $height )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setbounds() sets the text field width to width and height to height. If you don't set the bounds yourself, Ming makes a poor guess at what the bounds are.

Valor Retornado

Não há valor retornado.

SWFTextField->__construct
SWFTextField->setColor
SWFTextField


Sets the color of the text field

SWFTextField->setBounds
SWFTextField->setFont
SWFTextField
PHP Manual

SWFTextField->setColor

(PHP 4 >= 4.0.5)

SWFTextField->setColor — Sets the color of the text field

Descrição

void SWFTextField::setColor ( int $red , int $green , int $blue [, int $a = 255 ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setcolor() sets the color of the text field. Default is fully opaque black. Color is represented using RGB system.

Parâmetros

These parameters are integers between 0 and 255 or hexadecimals between 0x00 and 0xFF:

red

Value of red component

green

Value of green component

blue

Value of blue component

a

Value of alpha component

Valor Retornado

Não há valor retornado.

SWFTextField->setBounds
SWFTextField->setFont
SWFTextField


Sets the text field font

SWFTextField->setColor
SWFTextField->setHeight
SWFTextField
PHP Manual

SWFTextField->setFont

(PHP 4 >= 4.2.0)

SWFTextField->setFont — Sets the text field font

Descrição

void SWFTextField::setFont ( SWFFont $font )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setfont() sets the text field font to the [browser-defined?] font font.

Valor Retornado

Não há valor retornado.

SWFTextField->setColor
SWFTextField->setHeight
SWFTextField


Sets the font height of this text field font

SWFTextField->setFont
SWFTextField->setIndentation
SWFTextField
PHP Manual

SWFTextField->setHeight

(PHP 4 >= 4.0.5)

SWFTextField->setHeight — Sets the font height of this text field font

Descrição

void SWFTextField::setHeight ( float $height )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setheight() sets the font height of this text field font to the given height height. Default is 240.

Valor Retornado

Não há valor retornado.

SWFTextField->setFont
SWFTextField->setIndentation
SWFTextField


Sets the indentation of the first line

SWFTextField->setHeight
SWFTextField->setLeftMargin
SWFTextField
PHP Manual

SWFTextField->setIndentation

(PHP 4 >= 4.0.5)

SWFTextField->setIndentation — Sets the indentation of the first line

Descrição

void SWFTextField::setIndentation ( float $width )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setindentation() sets the indentation of the first line in the text field, to width.

Valor Retornado

Não há valor retornado.

SWFTextField->setHeight
SWFTextField->setLeftMargin
SWFTextField


Sets the left margin width of the text field

SWFTextField->setIndentation
SWFTextField->setLineSpacing
SWFTextField
PHP Manual

SWFTextField->setLeftMargin

(PHP 4 >= 4.0.5)

SWFTextField->setLeftMargin — Sets the left margin width of the text field

Descrição

void SWFTextField::setLeftMargin ( float $width )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setleftmargin() sets the left margin width of the text field to width. Default is 0.

Valor Retornado

Não há valor retornado.

SWFTextField->setIndentation
SWFTextField->setLineSpacing
SWFTextField


Sets the line spacing of the text field

SWFTextField->setLeftMargin
SWFTextField->setMargins
SWFTextField
PHP Manual

SWFTextField->setLineSpacing

(PHP 4 >= 4.0.5)

SWFTextField->setLineSpacing — Sets the line spacing of the text field

Descrição

void SWFTextField::setLineSpacing ( float $height )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setlinespacing() sets the line spacing of the text field to the height of height. Default is 40.

Valor Retornado

Não há valor retornado.

SWFTextField->setLeftMargin
SWFTextField->setMargins
SWFTextField


Sets the margins width of the text field

SWFTextField->setLineSpacing
SWFTextField->setName
SWFTextField
PHP Manual

SWFTextField->setMargins

(PHP 4 >= 4.0.5)

SWFTextField->setMargins — Sets the margins width of the text field

Descrição

void SWFTextField::setMargins ( float $left , float $right )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setmargins() set both margins at once, for the man on the go.

Valor Retornado

Não há valor retornado.

SWFTextField->setLineSpacing
SWFTextField->setName
SWFTextField


Sets the variable name

SWFTextField->setMargins
SWFTextField->setPadding
SWFTextField
PHP Manual

SWFTextField->setName

(PHP 4 >= 4.0.5)

SWFTextField->setName — Sets the variable name

Descrição

void SWFTextField::setName ( string $name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setname() sets the variable name of this text field to name, for form posting and action scripting purposes.

Valor Retornado

Não há valor retornado.

SWFTextField->setMargins
SWFTextField->setPadding
SWFTextField


Sets the padding of this textfield

SWFTextField->setName
SWFTextField->setRightMargin
SWFTextField
PHP Manual

SWFTextField->setPadding

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFTextField->setPadding — Sets the padding of this textfield

Descrição

void SWFTextField::setPadding ( float $padding )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Não há valor retornado.

SWFTextField->setName
SWFTextField->setRightMargin
SWFTextField


Sets the right margin width of the text field

SWFTextField->setPadding
SWFVideoStream
SWFTextField
PHP Manual

SWFTextField->setRightMargin

(PHP 4 >= 4.0.5)

SWFTextField->setRightMargin — Sets the right margin width of the text field

Descrição

void SWFTextField::setRightMargin ( float $width )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

swftextfield->setrightmargin() sets the right margin width of the text field to width. Default is 0.

Valor Retornado

Não há valor retornado.

SWFTextField->setPadding
SWFVideoStream
SWFTextField


The SWFVideoStream class

Introdução

SWFVideoStream.

Sinopse da classe

SWFVideoStream {
/* Methods */
SWFVideoStream SWFVideoStream::__construct ([ string $file ] )
int getNumFrames ( void )
void setDimension ( int $x , int $y )
}

Índice

  • SWFVideoStream->__construct — Returns a SWFVideoStream object
  • SWFVideoStream->getNumFrames — Returns the number of frames in the video
  • SWFVideoStream->setDimension — Sets video dimension
SWFTextField->setRightMargin
SWFVideoStream->__construct
Ming


Returns a SWFVideoStream object

SWFVideoStream
SWFVideoStream->getNumFrames
SWFVideoStream
PHP Manual

SWFVideoStream->__construct

(PHP 5.0.5-5.3.0, PECL ming SVN)

SWFVideoStream->__construct — Returns a SWFVideoStream object

Descrição

SWFVideoStream SWFVideoStream::__construct ([ string $file ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

SWFVideoStream
SWFVideoStream->getNumFrames
SWFVideoStream


Returns the number of frames in the video

SWFVideoStream->__construct
SWFVideoStream->setDimension
SWFVideoStream
PHP Manual

SWFVideoStream->getNumFrames

(PHP 5.0.5-5.3.0, PECL ming SVN)

SWFVideoStream->getNumFrames — Returns the number of frames in the video

Descrição

int SWFVideoStream::getNumFrames ( void )

This function returns the number of video-frames of a SWFVideoStream.

Valor Retornado

Returns the number of frames, as an integer

SWFVideoStream->__construct
SWFVideoStream->setDimension
SWFVideoStream


Sets video dimension

SWFVideoStream->getNumFrames
PDF
SWFVideoStream
PHP Manual

SWFVideoStream->setDimension

(PHP 5.0.5-5.3.0, PECL ming SVN)

SWFVideoStream->setDimension — Sets video dimension

Descrição

void SWFVideoStream::setDimension ( int $x , int $y )

Sets the width and height for streamed videos.

Parâmetros

x

Width in pixels.

y

Height in pixels.

Valor Retornado

Não há valor retornado.

SWFVideoStream->getNumFrames
PDF
SWFVideoStream


PDF

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic Usage Examples
  • PDF Funções
    • PDF_activate_item — Activate structure element or other content item
    • PDF_add_annotation — Add annotation [deprecated]
    • PDF_add_bookmark — Add bookmark for current page [deprecated]
    • PDF_add_launchlink — Add launch annotation for current page [deprecated]
    • PDF_add_locallink — Add link annotation for current page [deprecated]
    • PDF_add_nameddest — Create named destination
    • PDF_add_note — Set annotation for current page [deprecated]
    • PDF_add_outline — Add bookmark for current page [deprecated]
    • PDF_add_pdflink — Add file link annotation for current page [deprecated]
    • PDF_add_table_cell — Add a cell to a new or existing table
    • PDF_add_textflow — Create Textflow or add text to existing Textflow
    • PDF_add_thumbnail — Add thumbnail for current page
    • PDF_add_weblink — Add weblink for current page [deprecated]
    • PDF_arc — Draw a counterclockwise circular arc segment
    • PDF_arcn — Draw a clockwise circular arc segment
    • PDF_attach_file — Add file attachment for current page [deprecated]
    • PDF_begin_document — Create new PDF file
    • PDF_begin_font — Start a Type 3 font definition
    • PDF_begin_glyph — Start glyph definition for Type 3 font
    • PDF_begin_item — Open structure element or other content item
    • PDF_begin_layer — Start layer
    • PDF_begin_page_ext — Start new page
    • PDF_begin_page — Start new page [deprecated]
    • PDF_begin_pattern — Start pattern definition
    • PDF_begin_template_ext — Start template definition
    • PDF_begin_template — Start template definition [deprecated]
    • PDF_circle — Draw a circle
    • PDF_clip — Clip to current path
    • PDF_close_image — Close image
    • PDF_close_pdi_page — Close the page handle
    • PDF_close_pdi — Close the input PDF document [deprecated]
    • PDF_close — Close pdf resource [deprecated]
    • PDF_closepath_fill_stroke — Close, fill and stroke current path
    • PDF_closepath_stroke — Close and stroke path
    • PDF_closepath — Close current path
    • PDF_concat — Concatenate a matrix to the CTM
    • PDF_continue_text — Output text in next line
    • PDF_create_3dview — Create 3D view
    • PDF_create_action — Create action for objects or events
    • PDF_create_annotation — Create rectangular annotation
    • PDF_create_bookmark — Create bookmark
    • PDF_create_field — Create form field
    • PDF_create_fieldgroup — Create form field group
    • PDF_create_gstate — Create graphics state object
    • PDF_create_pvf — Create PDFlib virtual file
    • PDF_create_textflow — Create textflow object
    • PDF_curveto — Draw Bezier curve
    • PDF_define_layer — Create layer definition
    • PDF_delete_pvf — Delete PDFlib virtual file
    • PDF_delete_table — Delete table object
    • PDF_delete_textflow — Delete textflow object
    • PDF_delete — Delete PDFlib object
    • PDF_encoding_set_char — Add glyph name and/or Unicode value
    • PDF_end_document — Close PDF file
    • PDF_end_font — Terminate Type 3 font definition
    • PDF_end_glyph — Terminate glyph definition for Type 3 font
    • PDF_end_item — Close structure element or other content item
    • PDF_end_layer — Deactivate all active layers
    • PDF_end_page_ext — Finish page
    • PDF_end_page — Finish page
    • PDF_end_pattern — Finish pattern
    • PDF_end_template — Finish template
    • PDF_endpath — End current path
    • PDF_fill_imageblock — Fill image block with variable data
    • PDF_fill_pdfblock — Fill PDF block with variable data
    • PDF_fill_stroke — Fill and stroke path
    • PDF_fill_textblock — Fill text block with variable data
    • PDF_fill — Fill current path
    • PDF_findfont — Prepare font for later use [deprecated]
    • PDF_fit_image — Place image or template
    • PDF_fit_pdi_page — Place imported PDF page
    • PDF_fit_table — Place table on page
    • PDF_fit_textflow — Format textflow in rectangular area
    • PDF_fit_textline — Place single line of text
    • PDF_get_apiname — Get name of unsuccessfull API function
    • PDF_get_buffer — Get PDF output buffer
    • PDF_get_errmsg — Get error text
    • PDF_get_errnum — Get error number
    • PDF_get_font — Get font [deprecated]
    • PDF_get_fontname — Get font name [deprecated]
    • PDF_get_fontsize — Font handling [deprecated]
    • PDF_get_image_height — Get image height [deprecated]
    • PDF_get_image_width — Get image width [deprecated]
    • PDF_get_majorversion — Get major version number [deprecated]
    • PDF_get_minorversion — Get minor version number [deprecated]
    • PDF_get_parameter — Get string parameter
    • PDF_get_pdi_parameter — Get PDI string parameter [deprecated]
    • PDF_get_pdi_value — Get PDI numerical parameter [deprecated]
    • PDF_get_value — Get numerical parameter
    • PDF_info_font — Query detailed information about a loaded font
    • PDF_info_matchbox — Query matchbox information
    • PDF_info_table — Retrieve table information
    • PDF_info_textflow — Query textflow state
    • PDF_info_textline — Perform textline formatting and query metrics
    • PDF_initgraphics — Reset graphic state
    • PDF_lineto — Draw a line
    • PDF_load_3ddata — Load 3D model
    • PDF_load_font — Search and prepare font
    • PDF_load_iccprofile — Search and prepare ICC profile
    • PDF_load_image — Open image file
    • PDF_makespotcolor — Make spot color
    • PDF_moveto — Set current point
    • PDF_new — Create PDFlib object
    • PDF_open_ccitt — Open raw CCITT image [deprecated]
    • PDF_open_file — Create PDF file [deprecated]
    • PDF_open_gif — Open GIF image [deprecated]
    • PDF_open_image_file — Read image from file [deprecated]
    • PDF_open_image — Use image data [deprecated]
    • PDF_open_jpeg — Open JPEG image [deprecated]
    • PDF_open_memory_image — Open image created with PHP's image functions [not supported]
    • PDF_open_pdi_document — Prepare a pdi document
    • PDF_open_pdi_page — Prepare a page
    • PDF_open_pdi — Open PDF file [deprecated]
    • PDF_open_tiff — Open TIFF image [deprecated]
    • PDF_pcos_get_number — Get value of pCOS path with type number or boolean
    • PDF_pcos_get_stream — Get contents of pCOS path with type stream, fstream, or string
    • PDF_pcos_get_string — Get value of pCOS path with type name, string, or boolean
    • PDF_place_image — Place image on the page [deprecated]
    • PDF_place_pdi_page — Place PDF page [deprecated]
    • PDF_process_pdi — Process imported PDF document
    • PDF_rect — Draw rectangle
    • PDF_restore — Restore graphics state
    • PDF_resume_page — Resume page
    • PDF_rotate — Rotate coordinate system
    • PDF_save — Save graphics state
    • PDF_scale — Scale coordinate system
    • PDF_set_border_color — Set border color of annotations [deprecated]
    • PDF_set_border_dash — Set border dash style of annotations [deprecated]
    • PDF_set_border_style — Set border style of annotations [deprecated]
    • PDF_set_char_spacing — Set character spacing [deprecated]
    • PDF_set_duration — Set duration between pages [deprecated]
    • PDF_set_gstate — Activate graphics state object
    • PDF_set_horiz_scaling — Set horizontal text scaling [deprecated]
    • PDF_set_info_author — Fill the author document info field [deprecated]
    • PDF_set_info_creator — Fill the creator document info field [deprecated]
    • PDF_set_info_keywords — Fill the keywords document info field [deprecated]
    • PDF_set_info_subject — Fill the subject document info field [deprecated]
    • PDF_set_info_title — Fill the title document info field [deprecated]
    • PDF_set_info — Fill document info field
    • PDF_set_layer_dependency — Define relationships among layers
    • PDF_set_leading — Set distance between text lines [deprecated]
    • PDF_set_parameter — Set string parameter
    • PDF_set_text_matrix — Set text matrix [deprecated]
    • PDF_set_text_pos — Set text position
    • PDF_set_text_rendering — Determine text rendering [deprecated]
    • PDF_set_text_rise — Set text rise [deprecated]
    • PDF_set_value — Set numerical parameter
    • PDF_set_word_spacing — Set spacing between words [deprecated]
    • PDF_setcolor — Set fill and stroke color
    • PDF_setdash — Set simple dash pattern
    • PDF_setdashpattern — Set dash pattern
    • PDF_setflat — Set flatness
    • PDF_setfont — Set font
    • PDF_setgray_fill — Set fill color to gray [deprecated]
    • PDF_setgray_stroke — Set stroke color to gray [deprecated]
    • PDF_setgray — Set color to gray [deprecated]
    • PDF_setlinecap — Set linecap parameter
    • PDF_setlinejoin — Set linejoin parameter
    • PDF_setlinewidth — Set line width
    • PDF_setmatrix — Set current transformation matrix
    • PDF_setmiterlimit — Set miter limit
    • PDF_setpolydash — Set complicated dash pattern [deprecated]
    • PDF_setrgbcolor_fill — Set fill rgb color values [deprecated]
    • PDF_setrgbcolor_stroke — Set stroke rgb color values [deprecated]
    • PDF_setrgbcolor — Set fill and stroke rgb color values [deprecated]
    • PDF_shading_pattern — Define shading pattern
    • PDF_shading — Define blend
    • PDF_shfill — Fill area with shading
    • PDF_show_boxed — Output text in a box [deprecated]
    • PDF_show_xy — Output text at given position
    • PDF_show — Output text at current position
    • PDF_skew — Skew the coordinate system
    • PDF_stringwidth — Return width of text
    • PDF_stroke — Stroke path
    • PDF_suspend_page — Suspend page
    • PDF_translate — Set origin of coordinate system
    • PDF_utf16_to_utf8 — Convert string from UTF-16 to UTF-8
    • PDF_utf32_to_utf16 — Convert string from UTF-32 to UTF-16
    • PDF_utf8_to_utf16 — Convert string from UTF-8 to UTF-16
SWFVideoStream->setDimension
Introdução
Saída de MIME Não-Texto


Introdução

The PDF functions in PHP can create PDF files using the PDFlib library which was initially created by Thomas Merz and is now maintained by » PDFlib GmbH.

The documentation in this section is only meant to be an overview of the available functions in the PDFlib library and should not be considered an exhaustive reference. For the full and detailed explanation of each function, consult the PDFlib Reference Manual which is included in all PDFlib packages distributed by PDFlib GmbH. It provides a very good overview of what PDFlib is capable of doing and contains the most up-to-date documentation of all functions.

For a jump start we urge you to take a look at the programming samples which are contained in all PDFlib distribution packages. These samples demonstrate basic text, vector, and graphics output as well as higher-level functions, such as the PDF import facility (PDI).

All of the functions in PDFlib and the PHP module have identical function names and parameters. Unless configured otherwise, all lengths and coordinates are measured in PostScript points. There are generally 72 PostScript points to an inch, but this depends on the output resolution. Please see the PDFlib Reference Manual included in the PDFlib distribution for a more thorough explanation of the coordinate system used.

With version 6, PDFlib offers an object-oriented API for PHP 5 in addition to the function-oriented API for PHP 4. The main difference is the following:

In PHP 4, first a PDF resource has to be retrieved with a function call like

$p = PDF_new().

This PDF resource is used as the first parameter in all further function calls, such as in

PDF_begin_document($p, "", "").

In PHP 5 however, a PDFlib object is created with

$p = new PDFlib().

This object offers all PDFlib API functions as methods, e.g. as with

$p->begin_document("", "").

In addition, exceptions have been introduced in PHP 5 which are supported by PDFlib 6 and later as well.

Please see the examples below for more information.

Nota:

If you're interested in alternative free PDF generators that do not utilize external PDF libraries, see this related FAQ.

PDF
Instalação/Configuração
PDF


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PDF


Dependências

PDFlib Lite is available as open source. However, the PDFlib Lite license allows free use only under certain conditions. PDFlib Lite supports a subset of PDFlib's functionality; please see the PDFlib web site for details. The full version of PDFlib is available for download at » http://www.pdflib.com/products/pdflib-family/, but requires that you purchase a license for commercial use.

Issues with older versions of PDFlib

Any version of PHP 4 after March 9, 2000 does not support versions of PDFlib older than 3.0.

PDFlib 4.0 or greater is supported by PHP 4.3.0 and later.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/pdflib.

To get these functions to work in PHP < 4.3.9, you have to compile PHP with --with-pdflib[=DIR] . DIR is the PDFlib base install directory, defaults to /usr/local.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

PDF_new() creates a new PDFlib object required by most PDF functions.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
PDF


Exemplos

Índice

  • Basic Usage Examples
Constantes pré-definidas
Basic Usage Examples
PDF


Basic Usage Examples

Most of the functions are fairly easy to use. The most difficult part is probably creating your first PDF document. The following example should help to get you started. It is developed for PHP 4 and creates the file hello.pdf with one page. It defines some document info field contents, loads the Helvetica-Bold font and outputs the text "Hello world! (says PHP)".

Exemplo #1 Hello World example from PDFlib distribution for PHP 4

<?php
$p = PDF_new();

/*  open new PDF file; insert a file name to create the PDF on disk */
if (PDF_begin_document($p, "", "") == 0) {
    die("Error: " . PDF_get_errmsg($p));
}

PDF_set_info($p, "Creator", "hello.php");
PDF_set_info($p, "Author", "Rainer Schaaf");
PDF_set_info($p, "Title", "Hello world (PHP)!");

PDF_begin_page_ext($p, 595, 842, "");

$font = PDF_load_font($p, "Helvetica-Bold", "winansi", "");

PDF_setfont($p, $font, 24.0);
PDF_set_text_pos($p, 50, 700);
PDF_show($p, "Hello world!");
PDF_continue_text($p, "(says PHP)");
PDF_end_page_ext($p, "");

PDF_end_document($p, "");

$buf = PDF_get_buffer($p);
$len = strlen($buf);

header("Content-type: application/pdf");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=hello.pdf");
print $buf;

PDF_delete($p);
?>

The following example comes with the PDFlib distribution for PHP 5. It uses the new exception handling and object encapsulation features available in PHP 5. It creates the file hello.pdf with one page. It defines some document info field contents, loads the Helvetica-Bold font and outputs the text "Hello world! (says PHP)".

Exemplo #2 Hello World example from PDFlib distribution for PHP 5

<?php

try {
    $p = new PDFlib();

    /*  open new PDF file; insert a file name to create the PDF on disk */
    if ($p->begin_document("", "") == 0) {
        die("Error: " . $p->get_errmsg());
    }

    $p->set_info("Creator", "hello.php");
    $p->set_info("Author", "Rainer Schaaf");
    $p->set_info("Title", "Hello world (PHP)!");

    $p->begin_page_ext(595, 842, "");

    $font = $p->load_font("Helvetica-Bold", "winansi", "");

    $p->setfont($font, 24.0);
    $p->set_text_pos(50, 700);
    $p->show("Hello world!");
    $p->continue_text("(says PHP)");
    $p->end_page_ext("");

    $p->end_document("");

    $buf = $p->get_buffer();
    $len = strlen($buf);

    header("Content-type: application/pdf");
    header("Content-Length: $len");
    header("Content-Disposition: inline; filename=hello.pdf");
    print $buf;
}
catch (PDFlibException $e) {
    die("PDFlib exception occurred in hello sample:\n" .
    "[" . $e->get_errnum() . "] " . $e->get_apiname() . ": " .
    $e->get_errmsg() . "\n");
}
catch (Exception $e) {
    die($e);
}
$p = 0;
?>

Exemplos
PDF Funções
Exemplos


PDF Funções

Remarks about Deprecated PDFlib Functions

Starting with PHP 4.0.5, the PHP extension for PDFlib is officially supported by PDFlib GmbH. This means that all the functions described in the PDFlib Reference Manual are supported by PHP 4 with exactly the same meaning and the same parameters. However, with PDFlib Version 5.0.4 or higher all parameters have to be specified. For compatibility reasons, this binding for PDFlib still supports most of the deprecated functions, but they should be replaced by their new versions. PDFlib GmbH will not support any problems arising from the use of these deprecated functions. The documentation in this section indicates old functions as "Deprecated" and gives the replacement function to be used instead.

Índice

  • PDF_activate_item — Activate structure element or other content item
  • PDF_add_annotation — Add annotation [deprecated]
  • PDF_add_bookmark — Add bookmark for current page [deprecated]
  • PDF_add_launchlink — Add launch annotation for current page [deprecated]
  • PDF_add_locallink — Add link annotation for current page [deprecated]
  • PDF_add_nameddest — Create named destination
  • PDF_add_note — Set annotation for current page [deprecated]
  • PDF_add_outline — Add bookmark for current page [deprecated]
  • PDF_add_pdflink — Add file link annotation for current page [deprecated]
  • PDF_add_table_cell — Add a cell to a new or existing table
  • PDF_add_textflow — Create Textflow or add text to existing Textflow
  • PDF_add_thumbnail — Add thumbnail for current page
  • PDF_add_weblink — Add weblink for current page [deprecated]
  • PDF_arc — Draw a counterclockwise circular arc segment
  • PDF_arcn — Draw a clockwise circular arc segment
  • PDF_attach_file — Add file attachment for current page [deprecated]
  • PDF_begin_document — Create new PDF file
  • PDF_begin_font — Start a Type 3 font definition
  • PDF_begin_glyph — Start glyph definition for Type 3 font
  • PDF_begin_item — Open structure element or other content item
  • PDF_begin_layer — Start layer
  • PDF_begin_page_ext — Start new page
  • PDF_begin_page — Start new page [deprecated]
  • PDF_begin_pattern — Start pattern definition
  • PDF_begin_template_ext — Start template definition
  • PDF_begin_template — Start template definition [deprecated]
  • PDF_circle — Draw a circle
  • PDF_clip — Clip to current path
  • PDF_close_image — Close image
  • PDF_close_pdi_page — Close the page handle
  • PDF_close_pdi — Close the input PDF document [deprecated]
  • PDF_close — Close pdf resource [deprecated]
  • PDF_closepath_fill_stroke — Close, fill and stroke current path
  • PDF_closepath_stroke — Close and stroke path
  • PDF_closepath — Close current path
  • PDF_concat — Concatenate a matrix to the CTM
  • PDF_continue_text — Output text in next line
  • PDF_create_3dview — Create 3D view
  • PDF_create_action — Create action for objects or events
  • PDF_create_annotation — Create rectangular annotation
  • PDF_create_bookmark — Create bookmark
  • PDF_create_field — Create form field
  • PDF_create_fieldgroup — Create form field group
  • PDF_create_gstate — Create graphics state object
  • PDF_create_pvf — Create PDFlib virtual file
  • PDF_create_textflow — Create textflow object
  • PDF_curveto — Draw Bezier curve
  • PDF_define_layer — Create layer definition
  • PDF_delete_pvf — Delete PDFlib virtual file
  • PDF_delete_table — Delete table object
  • PDF_delete_textflow — Delete textflow object
  • PDF_delete — Delete PDFlib object
  • PDF_encoding_set_char — Add glyph name and/or Unicode value
  • PDF_end_document — Close PDF file
  • PDF_end_font — Terminate Type 3 font definition
  • PDF_end_glyph — Terminate glyph definition for Type 3 font
  • PDF_end_item — Close structure element or other content item
  • PDF_end_layer — Deactivate all active layers
  • PDF_end_page_ext — Finish page
  • PDF_end_page — Finish page
  • PDF_end_pattern — Finish pattern
  • PDF_end_template — Finish template
  • PDF_endpath — End current path
  • PDF_fill_imageblock — Fill image block with variable data
  • PDF_fill_pdfblock — Fill PDF block with variable data
  • PDF_fill_stroke — Fill and stroke path
  • PDF_fill_textblock — Fill text block with variable data
  • PDF_fill — Fill current path
  • PDF_findfont — Prepare font for later use [deprecated]
  • PDF_fit_image — Place image or template
  • PDF_fit_pdi_page — Place imported PDF page
  • PDF_fit_table — Place table on page
  • PDF_fit_textflow — Format textflow in rectangular area
  • PDF_fit_textline — Place single line of text
  • PDF_get_apiname — Get name of unsuccessfull API function
  • PDF_get_buffer — Get PDF output buffer
  • PDF_get_errmsg — Get error text
  • PDF_get_errnum — Get error number
  • PDF_get_font — Get font [deprecated]
  • PDF_get_fontname — Get font name [deprecated]
  • PDF_get_fontsize — Font handling [deprecated]
  • PDF_get_image_height — Get image height [deprecated]
  • PDF_get_image_width — Get image width [deprecated]
  • PDF_get_majorversion — Get major version number [deprecated]
  • PDF_get_minorversion — Get minor version number [deprecated]
  • PDF_get_parameter — Get string parameter
  • PDF_get_pdi_parameter — Get PDI string parameter [deprecated]
  • PDF_get_pdi_value — Get PDI numerical parameter [deprecated]
  • PDF_get_value — Get numerical parameter
  • PDF_info_font — Query detailed information about a loaded font
  • PDF_info_matchbox — Query matchbox information
  • PDF_info_table — Retrieve table information
  • PDF_info_textflow — Query textflow state
  • PDF_info_textline — Perform textline formatting and query metrics
  • PDF_initgraphics — Reset graphic state
  • PDF_lineto — Draw a line
  • PDF_load_3ddata — Load 3D model
  • PDF_load_font — Search and prepare font
  • PDF_load_iccprofile — Search and prepare ICC profile
  • PDF_load_image — Open image file
  • PDF_makespotcolor — Make spot color
  • PDF_moveto — Set current point
  • PDF_new — Create PDFlib object
  • PDF_open_ccitt — Open raw CCITT image [deprecated]
  • PDF_open_file — Create PDF file [deprecated]
  • PDF_open_gif — Open GIF image [deprecated]
  • PDF_open_image_file — Read image from file [deprecated]
  • PDF_open_image — Use image data [deprecated]
  • PDF_open_jpeg — Open JPEG image [deprecated]
  • PDF_open_memory_image — Open image created with PHP's image functions [not supported]
  • PDF_open_pdi_document — Prepare a pdi document
  • PDF_open_pdi_page — Prepare a page
  • PDF_open_pdi — Open PDF file [deprecated]
  • PDF_open_tiff — Open TIFF image [deprecated]
  • PDF_pcos_get_number — Get value of pCOS path with type number or boolean
  • PDF_pcos_get_stream — Get contents of pCOS path with type stream, fstream, or string
  • PDF_pcos_get_string — Get value of pCOS path with type name, string, or boolean
  • PDF_place_image — Place image on the page [deprecated]
  • PDF_place_pdi_page — Place PDF page [deprecated]
  • PDF_process_pdi — Process imported PDF document
  • PDF_rect — Draw rectangle
  • PDF_restore — Restore graphics state
  • PDF_resume_page — Resume page
  • PDF_rotate — Rotate coordinate system
  • PDF_save — Save graphics state
  • PDF_scale — Scale coordinate system
  • PDF_set_border_color — Set border color of annotations [deprecated]
  • PDF_set_border_dash — Set border dash style of annotations [deprecated]
  • PDF_set_border_style — Set border style of annotations [deprecated]
  • PDF_set_char_spacing — Set character spacing [deprecated]
  • PDF_set_duration — Set duration between pages [deprecated]
  • PDF_set_gstate — Activate graphics state object
  • PDF_set_horiz_scaling — Set horizontal text scaling [deprecated]
  • PDF_set_info_author — Fill the author document info field [deprecated]
  • PDF_set_info_creator — Fill the creator document info field [deprecated]
  • PDF_set_info_keywords — Fill the keywords document info field [deprecated]
  • PDF_set_info_subject — Fill the subject document info field [deprecated]
  • PDF_set_info_title — Fill the title document info field [deprecated]
  • PDF_set_info — Fill document info field
  • PDF_set_layer_dependency — Define relationships among layers
  • PDF_set_leading — Set distance between text lines [deprecated]
  • PDF_set_parameter — Set string parameter
  • PDF_set_text_matrix — Set text matrix [deprecated]
  • PDF_set_text_pos — Set text position
  • PDF_set_text_rendering — Determine text rendering [deprecated]
  • PDF_set_text_rise — Set text rise [deprecated]
  • PDF_set_value — Set numerical parameter
  • PDF_set_word_spacing — Set spacing between words [deprecated]
  • PDF_setcolor — Set fill and stroke color
  • PDF_setdash — Set simple dash pattern
  • PDF_setdashpattern — Set dash pattern
  • PDF_setflat — Set flatness
  • PDF_setfont — Set font
  • PDF_setgray_fill — Set fill color to gray [deprecated]
  • PDF_setgray_stroke — Set stroke color to gray [deprecated]
  • PDF_setgray — Set color to gray [deprecated]
  • PDF_setlinecap — Set linecap parameter
  • PDF_setlinejoin — Set linejoin parameter
  • PDF_setlinewidth — Set line width
  • PDF_setmatrix — Set current transformation matrix
  • PDF_setmiterlimit — Set miter limit
  • PDF_setpolydash — Set complicated dash pattern [deprecated]
  • PDF_setrgbcolor_fill — Set fill rgb color values [deprecated]
  • PDF_setrgbcolor_stroke — Set stroke rgb color values [deprecated]
  • PDF_setrgbcolor — Set fill and stroke rgb color values [deprecated]
  • PDF_shading_pattern — Define shading pattern
  • PDF_shading — Define blend
  • PDF_shfill — Fill area with shading
  • PDF_show_boxed — Output text in a box [deprecated]
  • PDF_show_xy — Output text at given position
  • PDF_show — Output text at current position
  • PDF_skew — Skew the coordinate system
  • PDF_stringwidth — Return width of text
  • PDF_stroke — Stroke path
  • PDF_suspend_page — Suspend page
  • PDF_translate — Set origin of coordinate system
  • PDF_utf16_to_utf8 — Convert string from UTF-16 to UTF-8
  • PDF_utf32_to_utf16 — Convert string from UTF-32 to UTF-16
  • PDF_utf8_to_utf16 — Convert string from UTF-8 to UTF-16
Basic Usage Examples
PDF_activate_item
PDF


Activate structure element or other content item

PDF Funções
PDF_add_annotation
PDF Funções
PHP Manual

PDF_activate_item

(PECL pdflib >= 2.0.0)

PDF_activate_item — Activate structure element or other content item

Descrição

bool PDF_activate_item ( resource $pdfdoc , int $id )

Activates a previously created structure element or other content item. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF Funções
PDF_add_annotation
PDF Funções


Add annotation [deprecated]

PDF_activate_item
PDF_add_bookmark
PDF Funções
PHP Manual

PDF_add_annotation

(PHP 4, PECL pdflib >= 1.0.0)

PDF_add_annotation — Add annotation [deprecated]

Descrição

This function is deprecated, use PDF_create_annotation() with type=Text instead.

PDF_activate_item
PDF_add_bookmark
PDF Funções


Add bookmark for current page [deprecated]

PDF_add_annotation
PDF_add_launchlink
PDF Funções
PHP Manual

PDF_add_bookmark

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_add_bookmark — Add bookmark for current page [deprecated]

Descrição

This function is deprecated since PDFlib version 6, use PDF_create_bookmark() instead.

PDF_add_annotation
PDF_add_launchlink
PDF Funções


Add launch annotation for current page [deprecated]

PDF_add_bookmark
PDF_add_locallink
PDF Funções
PHP Manual

PDF_add_launchlink

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_add_launchlink — Add launch annotation for current page [deprecated]

Descrição

bool PDF_add_launchlink ( resource $pdfdoc , float $llx , float $lly , float $urx , float $ury , string $filename )

Adds a link to a web resource.

This function is deprecated since PDFlib version 6,
use PDF_create_action() with
type=Launch and
PDF_create_annotation() with
type=Link instead.

PDF_add_bookmark
PDF_add_locallink
PDF Funções


Add link annotation for current page [deprecated]

PDF_add_launchlink
PDF_add_nameddest
PDF Funções
PHP Manual

PDF_add_locallink

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_add_locallink — Add link annotation for current page [deprecated]

Descrição

bool PDF_add_locallink ( resource $pdfdoc , float $lowerleftx , float $lowerlefty , float $upperrightx , float $upperrighty , int $page , string $dest )

Add a link annotation to a target within the current PDF file. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use
PDF_create_action() with type=GoTo
and PDF_create_annotation() with
type=Link instead.

PDF_add_launchlink
PDF_add_nameddest
PDF Funções


Create named destination

PDF_add_locallink
PDF_add_note
PDF Funções
PHP Manual

PDF_add_nameddest

(PECL pdflib >= 2.0.0)

PDF_add_nameddest — Create named destination

Descrição

bool PDF_add_nameddest ( resource $pdfdoc , string $name , string $optlist )

Creates a named destination on an arbitrary page in the current document. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_add_locallink
PDF_add_note
PDF Funções


Set annotation for current page [deprecated]

PDF_add_nameddest
PDF_add_outline
PDF Funções
PHP Manual

PDF_add_note

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_add_note — Set annotation for current page [deprecated]

Descrição

bool PDF_add_note ( resource $pdfdoc , float $llx , float $lly , float $urx , float $ury , string $contents , string $title , string $icon , int $open )

Sets an annotation for the current page. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use PDF_create_annotation() with type=Text instead.

PDF_add_nameddest
PDF_add_outline
PDF Funções


Add bookmark for current page [deprecated]

PDF_add_note
PDF_add_pdflink
PDF Funções
PHP Manual

PDF_add_outline

(PHP 4, PECL pdflib >= 1.0.0)

PDF_add_outline — Add bookmark for current page [deprecated]

Descrição

This function is deprecated, use PDF_create_bookmark() instead.

PDF_add_note
PDF_add_pdflink
PDF Funções


Add file link annotation for current page [deprecated]

PDF_add_outline
PDF_add_table_cell
PDF Funções
PHP Manual

PDF_add_pdflink

(PHP 4, PECL pdflib >= 1.0.0)

PDF_add_pdflink — Add file link annotation for current page [deprecated]

Descrição

bool PDF_add_pdflink ( resource $pdfdoc , float $bottom_left_x , float $bottom_left_y , float $up_right_x , float $up_right_y , string $filename , int $page , string $dest )

Add a file link annotation to a PDF target. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use
PDF_create_action() with
type=GoToR and
PDF_create_annotation() with
type=Link instead.

PDF_add_outline
PDF_add_table_cell
PDF Funções


Add a cell to a new or existing table

PDF_add_pdflink
PDF_add_textflow
PDF Funções
PHP Manual

PDF_add_table_cell

(PECL pdflib >= 2.1.0)

PDF_add_table_cell — Add a cell to a new or existing table

Descrição

int PDF_add_table_cell ( resource $pdfdoc , int $table , int $column , int $row , string $text , string $optlist )

Adds a cell to a new or existing table.

PDF_add_pdflink
PDF_add_textflow
PDF Funções


Create Textflow or add text to existing Textflow

PDF_add_table_cell
PDF_add_thumbnail
PDF Funções
PHP Manual

PDF_add_textflow

(PECL pdflib >= 2.1.0)

PDF_add_textflow — Create Textflow or add text to existing Textflow

Descrição

int PDF_add_textflow ( resource $pdfdoc , int $textflow , string $text , string $optlist )

Creates a Textflow object, or adds text and explicit options to an existing Textflow.

PDF_add_table_cell
PDF_add_thumbnail
PDF Funções


Add thumbnail for current page

PDF_add_textflow
PDF_add_weblink
PDF Funções
PHP Manual

PDF_add_thumbnail

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_add_thumbnail — Add thumbnail for current page

Descrição

bool PDF_add_thumbnail ( resource $pdfdoc , int $image )

Adds an existing image as thumbnail for the current page. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_add_textflow
PDF_add_weblink
PDF Funções


Add weblink for current page [deprecated]

PDF_add_thumbnail
PDF_arc
PDF Funções
PHP Manual

PDF_add_weblink

(PHP 4, PECL pdflib >= 1.0.0)

PDF_add_weblink — Add weblink for current page [deprecated]

Descrição

bool PDF_add_weblink ( resource $pdfdoc , float $lowerleftx , float $lowerlefty , float $upperrightx , float $upperrighty , string $url )

Adds a weblink annotation to a target url on the Web. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use
PDF_create_action() with type=URI
and PDF_create_annotation() with
type=Link instead.

PDF_add_thumbnail
PDF_arc
PDF Funções


Draw a counterclockwise circular arc segment

PDF_add_weblink
PDF_arcn
PDF Funções
PHP Manual

PDF_arc

(PHP 4, PECL pdflib >= 1.0.0)

PDF_arc — Draw a counterclockwise circular arc segment

Descrição

bool PDF_arc ( resource $p , float $x , float $y , float $r , float $alpha , float $beta )

Adds a counterclockwise circular arc.

PDF_add_weblink
PDF_arcn
PDF Funções


Draw a clockwise circular arc segment

PDF_arc
PDF_attach_file
PDF Funções
PHP Manual

PDF_arcn

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_arcn — Draw a clockwise circular arc segment

Descrição

bool PDF_arcn ( resource $p , float $x , float $y , float $r , float $alpha , float $beta )

Except for the drawing direction, this function behaves exactly like PDF_arc().

PDF_arc
PDF_attach_file
PDF Funções


Add file attachment for current page [deprecated]

PDF_arcn
PDF_begin_document
PDF Funções
PHP Manual

PDF_attach_file

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_attach_file — Add file attachment for current page [deprecated]

Descrição

bool PDF_attach_file ( resource $pdfdoc , float $llx , float $lly , float $urx , float $ury , string $filename , string $description , string $author , string $mimetype , string $icon )

Adds a file attachment annotation. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use PDF_create_annotation() with type=FileAttachment instead.

PDF_arcn
PDF_begin_document
PDF Funções


Create new PDF file

PDF_attach_file
PDF_begin_font
PDF Funções
PHP Manual

PDF_begin_document

(PECL pdflib >= 2.0.0)

PDF_begin_document — Create new PDF file

Descrição

int PDF_begin_document ( resource $pdfdoc , string $filename , string $optlist )

Creates a new PDF file subject to various options.

PDF_attach_file
PDF_begin_font
PDF Funções


Start a Type 3 font definition

PDF_begin_document
PDF_begin_glyph
PDF Funções
PHP Manual

PDF_begin_font

(PECL pdflib >= 2.0.0)

PDF_begin_font — Start a Type 3 font definition

Descrição

bool PDF_begin_font ( resource $pdfdoc , string $filename , float $a , float $b , float $c , float $d , float $e , float $f , string $optlist )

Starts a Type 3 font definition.

PDF_begin_document
PDF_begin_glyph
PDF Funções


Start glyph definition for Type 3 font

PDF_begin_font
PDF_begin_item
PDF Funções
PHP Manual

PDF_begin_glyph

(PECL pdflib >= 2.0.0)

PDF_begin_glyph — Start glyph definition for Type 3 font

Descrição

bool PDF_begin_glyph ( resource $pdfdoc , string $glyphname , float $wx , float $llx , float $lly , float $urx , float $ury )

Starts a glyph definition for a Type 3 font.

PDF_begin_font
PDF_begin_item
PDF Funções


Open structure element or other content item

PDF_begin_glyph
PDF_begin_layer
PDF Funções
PHP Manual

PDF_begin_item

(PECL pdflib >= 2.0.0)

PDF_begin_item — Open structure element or other content item

Descrição

int PDF_begin_item ( resource $pdfdoc , string $tag , string $optlist )

Opens a structure element or other content item with attributes supplied as options.

PDF_begin_glyph
PDF_begin_layer
PDF Funções


Start layer

PDF_begin_item
PDF_begin_page_ext
PDF Funções
PHP Manual

PDF_begin_layer

(PECL pdflib >= 2.0.0)

PDF_begin_layer — Start layer

Descrição

bool PDF_begin_layer ( resource $pdfdoc , int $layer )

Starts a layer for subsequent output on the page. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function requires PDF 1.5.

PDF_begin_item
PDF_begin_page_ext
PDF Funções


Start new page

PDF_begin_layer
PDF_begin_page
PDF Funções
PHP Manual

PDF_begin_page_ext

(PECL pdflib >= 2.0.0)

PDF_begin_page_ext — Start new page

Descrição

bool PDF_begin_page_ext ( resource $pdfdoc , float $width , float $height , string $optlist )

Adds a new page to the document, and specifies various options. The parameters width and height are the dimensions of the new page in points. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Common Page Sizes in Points
name | size
A0 | 2380 x 3368
A1 | 1684 x 2380
A2 | 1190 x 1684
A3 | 842 x 1190
A4 | 595 x 842
A5 | 421 x 595
A6 | 297 x 421
B5 | 501 x 709
letter (8.5" x 11") | 612 x 792
legal (8.5" x 14") | 612 x 1008
ledger (17" x 11") | 1224 x 792
11" x 17" | 792 x 1224

PDF_begin_layer
PDF_begin_page
PDF Funções


Start new page [deprecated]

PDF_begin_page_ext
PDF_begin_pattern
PDF Funções
PHP Manual

PDF_begin_page

(PHP 4, PECL pdflib >= 1.0.0)

PDF_begin_page — Start new page [deprecated]

Descrição

bool PDF_begin_page ( resource $pdfdoc , float $width , float $height )

Adds a new page to the document. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use PDF_begin_page_ext() instead.

PDF_begin_page_ext
PDF_begin_pattern
PDF Funções


Start pattern definition

PDF_begin_page
PDF_begin_template_ext
PDF Funções
PHP Manual

PDF_begin_pattern

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_begin_pattern — Start pattern definition

Descrição

int PDF_begin_pattern ( resource $pdfdoc , float $width , float $height , float $xstep , float $ystep , int $painttype )

Starts a new pattern definition.

PDF_begin_page
PDF_begin_template_ext
PDF Funções


Start template definition

PDF_begin_pattern
PDF_begin_template
PDF Funções
PHP Manual

PDF_begin_template_ext

(PECL pdflib >= 2.1.0)

PDF_begin_template_ext — Start template definition

Descrição

int PDF_begin_template_ext ( resource $pdfdoc , float $width , float $height , string $optlist )

Starts a new template definition.

PDF_begin_pattern
PDF_begin_template
PDF Funções


Start template definition [deprecated]

PDF_begin_template_ext
PDF_circle
PDF Funções
PHP Manual

PDF_begin_template

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_begin_template — Start template definition [deprecated]

Descrição

int PDF_begin_template ( resource $pdfdoc , float $width , float $height )

Starts a new template definition.

This function is deprecated since PDFlib version 7, use PDF_begin_template_ext() instead.

PDF_begin_template_ext
PDF_circle
PDF Funções


Draw a circle

PDF_begin_template
PDF_clip
PDF Funções
PHP Manual

PDF_circle

(PHP 4, PECL pdflib >= 1.0.0)

PDF_circle — Draw a circle

Descrição

bool PDF_circle ( resource $pdfdoc , float $x , float $y , float $r )

Adds a circle. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_begin_template
PDF_clip
PDF Funções


Clip to current path

PDF_circle
PDF_close_image
PDF Funções
PHP Manual

PDF_clip

(PHP 4, PECL pdflib >= 1.0.0)

PDF_clip — Clip to current path

Descrição

bool PDF_clip ( resource $p )

Uses the current path as clipping path, and terminate the path. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_circle
PDF_close_image
PDF Funções


Close image

PDF_clip
PDF_close_pdi_page
PDF Funções
PHP Manual

PDF_close_image

(PHP 4, PECL pdflib >= 1.0.0)

PDF_close_image — Close image

Descrição

bool PDF_close_image ( resource $p , int $image )

Closes an image retrieved with the PDF_open_image() function.

PDF_clip
PDF_close_pdi_page
PDF Funções


Close the page handle

PDF_close_image
PDF_close_pdi
PDF Funções
PHP Manual

PDF_close_pdi_page

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_close_pdi_page — Close the page handle

Descrição

bool PDF_close_pdi_page ( resource $p , int $page )

Closes the page handle, and frees all page-related resources. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_close_image
PDF_close_pdi
PDF Funções


Close the input PDF document [deprecated]

PDF_close_pdi_page
PDF_close
PDF Funções
PHP Manual

PDF_close_pdi

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_close_pdi — Close the input PDF document [deprecated]

Descrição

bool PDF_close_pdi ( resource $p , int $doc )

Closes all open page handles, and closes the input PDF document. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 7, use PDF_close_pdi_document() instead.

PDF_close_pdi_page
PDF_close
PDF Funções


Close pdf resource [deprecated]

PDF_close_pdi
PDF_closepath_fill_stroke
PDF Funções
PHP Manual

PDF_close

(PHP 4, PECL pdflib >= 1.0.0)

PDF_close — Close pdf resource [deprecated]

Descrição

bool PDF_close ( resource $p )

Closes the generated PDF file, and frees all document-related resources. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use PDF_end_document() instead.

PDF_close_pdi
PDF_closepath_fill_stroke
PDF Funções


Close, fill and stroke current path

PDF_close
PDF_closepath_stroke
PDF Funções
PHP Manual

PDF_closepath_fill_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_closepath_fill_stroke — Close, fill and stroke current path

Descrição

bool PDF_closepath_fill_stroke ( resource $p )

Closes the path, fills, and strokes it. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_close
PDF_closepath_stroke
PDF Funções


Close and stroke path

PDF_closepath_fill_stroke
PDF_closepath
PDF Funções
PHP Manual

PDF_closepath_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_closepath_stroke — Close and stroke path

Descrição

bool PDF_closepath_stroke ( resource $p )

Closes the path, and strokes it. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_closepath_fill_stroke
PDF_closepath
PDF Funções


Close current path

PDF_closepath_stroke
PDF_concat
PDF Funções
PHP Manual

PDF_closepath

(PHP 4, PECL pdflib >= 1.0.0)

PDF_closepath — Close current path

Descrição

bool PDF_closepath ( resource $p )

Closes the current path. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_closepath_stroke
PDF_concat
PDF Funções


Concatenate a matrix to the CTM

PDF_closepath
PDF_continue_text
PDF Funções
PHP Manual

PDF_concat

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_concat — Concatenate a matrix to the CTM

Descrição

bool PDF_concat ( resource $p , float $a , float $b , float $c , float $d , float $e , float $f )

Concatenates a matrix to the current transformation matrix (CTM). Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_closepath
PDF_continue_text
PDF Funções


Output text in next line

PDF_concat
PDF_create_3dview
PDF Funções
PHP Manual

PDF_continue_text

(PHP 4, PECL pdflib >= 1.0.0)

PDF_continue_text — Output text in next line

Descrição

bool PDF_continue_text ( resource $p , string $text )

Prints text at the next line. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_concat
PDF_create_3dview
PDF Funções


Create 3D view

PDF_continue_text
PDF_create_action
PDF Funções
PHP Manual

PDF_create_3dview

(PECL pdflib >= 2.1.0)

PDF_create_3dview — Create 3D view

Descrição

int PDF_create_3dview ( resource $pdfdoc , string $username , string $optlist )

Creates a 3D view.

This function requires PDF 1.6.

PDF_continue_text
PDF_create_action
PDF Funções


Create action for objects or events

PDF_create_3dview
PDF_create_annotation
PDF Funções
PHP Manual

PDF_create_action

(PECL pdflib >= 2.0.0)

PDF_create_action — Create action for objects or events

Descrição

int PDF_create_action ( resource $pdfdoc , string $type , string $optlist )

Creates an action which can be applied to various objects and events.

PDF_create_3dview
PDF_create_annotation
PDF Funções


Create rectangular annotation

PDF_create_action
PDF_create_bookmark
PDF Funções
PHP Manual

PDF_create_annotation

(PECL pdflib >= 2.0.0)

PDF_create_annotation — Create rectangular annotation

Descrição

bool PDF_create_annotation ( resource $pdfdoc , float $llx , float $lly , float $urx , float $ury , string $type , string $optlist )

Creates a rectangular annotation on the current page.

PDF_create_action
PDF_create_bookmark
PDF Funções


Create bookmark

PDF_create_annotation
PDF_create_field
PDF Funções
PHP Manual

PDF_create_bookmark

(PECL pdflib >= 2.0.0)

PDF_create_bookmark — Create bookmark

Descrição

int PDF_create_bookmark ( resource $pdfdoc , string $text , string $optlist )

Creates a bookmark subject to various options.

PDF_create_annotation
PDF_create_field
PDF Funções


Create form field

PDF_create_bookmark
PDF_create_fieldgroup
PDF Funções
PHP Manual

PDF_create_field

(PECL pdflib >= 2.0.0)

PDF_create_field — Create form field

Descrição

bool PDF_create_field ( resource $pdfdoc , float $llx , float $lly , float $urx , float $ury , string $name , string $type , string $optlist )

Creates a form field on the current page subject to various options.

PDF_create_bookmark
PDF_create_fieldgroup
PDF Funções


Create form field group

PDF_create_field
PDF_create_gstate
PDF Funções
PHP Manual

PDF_create_fieldgroup

(PECL pdflib >= 2.0.0)

PDF_create_fieldgroup — Create form field group

Descrição

bool PDF_create_fieldgroup ( resource $pdfdoc , string $name , string $optlist )

Creates a form field group subject to various options.

PDF_create_field
PDF_create_gstate
PDF Funções


Create graphics state object

PDF_create_fieldgroup
PDF_create_pvf
PDF Funções
PHP Manual

PDF_create_gstate

(PECL pdflib >= 2.0.0)

PDF_create_gstate — Create graphics state object

Descrição

int PDF_create_gstate ( resource $pdfdoc , string $optlist )

Creates a graphics state object subject to various options.

PDF_create_fieldgroup
PDF_create_pvf
PDF Funções


Create PDFlib virtual file

PDF_create_gstate
PDF_create_textflow
PDF Funções
PHP Manual

PDF_create_pvf

(PECL pdflib >= 2.0.0)

PDF_create_pvf — Create PDFlib virtual file

Descrição

bool PDF_create_pvf ( resource $pdfdoc , string $filename , string $data , string $optlist )

Creates a named virtual read-only file from data provided in memory.

PDF_create_gstate
PDF_create_textflow
PDF Funções


Create textflow object

PDF_create_pvf
PDF_curveto
PDF Funções
PHP Manual

PDF_create_textflow

(PECL pdflib >= 2.0.0)

PDF_create_textflow — Create textflow object

Descrição

int PDF_create_textflow ( resource $pdfdoc , string $text , string $optlist )

Preprocesses text for later formatting and creates a textflow object.

PDF_create_pvf
PDF_curveto
PDF Funções


Draw Bezier curve

PDF_create_textflow
PDF_define_layer
PDF Funções
PHP Manual

PDF_curveto

(PHP 4, PECL pdflib >= 1.0.0)

PDF_curveto — Draw Bezier curve

Descrição

bool PDF_curveto ( resource $p , float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Draws a Bezier curve from the current point, using 3 more control points. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_create_textflow
PDF_define_layer
PDF Funções


Create layer definition

PDF_curveto
PDF_delete_pvf
PDF Funções
PHP Manual

PDF_define_layer

(PECL pdflib >= 2.0.0)

PDF_define_layer — Create layer definition

Descrição

int PDF_define_layer ( resource $pdfdoc , string $name , string $optlist )

Creates a new layer definition.

This function requires PDF 1.5.

PDF_curveto
PDF_delete_pvf
PDF Funções


Delete PDFlib virtual file

PDF_define_layer
PDF_delete_table
PDF Funções
PHP Manual

PDF_delete_pvf

(PECL pdflib >= 2.0.0)

PDF_delete_pvf — Delete PDFlib virtual file

Descrição

int PDF_delete_pvf ( resource $pdfdoc , string $filename )

Deletes a named virtual file and frees its data structures (but not the contents).

PDF_define_layer
PDF_delete_table
PDF Funções


Delete table object

PDF_delete_pvf
PDF_delete_textflow
PDF Funções
PHP Manual

PDF_delete_table

(PECL pdflib >= 2.1.0)

PDF_delete_table — Delete table object

Descrição

bool PDF_delete_table ( resource $pdfdoc , int $table , string $optlist )

Deletes a table and all associated data structures.

PDF_delete_pvf
PDF_delete_textflow
PDF Funções


Delete textflow object

PDF_delete_table
PDF_delete
PDF Funções
PHP Manual

PDF_delete_textflow

(PECL pdflib >= 2.0.0)

PDF_delete_textflow — Delete textflow object

Descrição

bool PDF_delete_textflow ( resource $pdfdoc , int $textflow )

Deletes a textflow and the associated data structures.

PDF_delete_table
PDF_delete
PDF Funções


Delete PDFlib object

PDF_delete_textflow
PDF_encoding_set_char
PDF Funções
PHP Manual

PDF_delete

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_delete — Delete PDFlib object

Descrição

bool PDF_delete ( resource $pdfdoc )

Deletes a PDFlib object, and frees all internal resources. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_delete_textflow
PDF_encoding_set_char
PDF Funções


Add glyph name and/or Unicode value

PDF_delete
PDF_end_document
PDF Funções
PHP Manual

PDF_encoding_set_char

(PECL pdflib >= 2.0.0)

PDF_encoding_set_char — Add glyph name and/or Unicode value

Descrição

bool PDF_encoding_set_char ( resource $pdfdoc , string $encoding , int $slot , string $glyphname , int $uv )

Adds a glyph name and/or Unicode value to a custom encoding.

PDF_delete
PDF_end_document
PDF Funções


Close PDF file

PDF_encoding_set_char
PDF_end_font
PDF Funções
PHP Manual

PDF_end_document

(PECL pdflib >= 2.0.0)

PDF_end_document — Close PDF file

Descrição

bool PDF_end_document ( resource $pdfdoc , string $optlist )

Closes the generated PDF file and applies various options.

PDF_encoding_set_char
PDF_end_font
PDF Funções


Terminate Type 3 font definition

PDF_end_document
PDF_end_glyph
PDF Funções
PHP Manual

PDF_end_font

(PECL pdflib >= 2.0.0)

PDF_end_font — Terminate Type 3 font definition

Descrição

bool PDF_end_font ( resource $pdfdoc )

Terminates a Type 3 font definition.

PDF_end_document
PDF_end_glyph
PDF Funções


Terminate glyph definition for Type 3 font

PDF_end_font
PDF_end_item
PDF Funções
PHP Manual

PDF_end_glyph

(PECL pdflib >= 2.0.0)

PDF_end_glyph — Terminate glyph definition for Type 3 font

Descrição

bool PDF_end_glyph ( resource $pdfdoc )

Terminates a glyph definition for a Type 3 font.

PDF_end_font
PDF_end_item
PDF Funções


Close structure element or other content item

PDF_end_glyph
PDF_end_layer
PDF Funções
PHP Manual

PDF_end_item

(PECL pdflib >= 2.0.0)

PDF_end_item — Close structure element or other content item

Descrição

bool PDF_end_item ( resource $pdfdoc , int $id )

Closes a structure element or other content item.

PDF_end_glyph
PDF_end_layer
PDF Funções


Deactivate all active layers

PDF_end_item
PDF_end_page_ext
PDF Funções
PHP Manual

PDF_end_layer

(PECL pdflib >= 2.0.0)

PDF_end_layer — Deactivate all active layers

Descrição

bool PDF_end_layer ( resource $pdfdoc )

Deactivates all active layers. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function requires PDF 1.5.

PDF_end_item
PDF_end_page_ext
PDF Funções


Finish page

PDF_end_layer
PDF_end_page
PDF Funções
PHP Manual

PDF_end_page_ext

(PECL pdflib >= 2.0.0)

PDF_end_page_ext — Finish page

Descrição

bool PDF_end_page_ext ( resource $pdfdoc , string $optlist )

Finishes a page, and applies various options. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_end_layer
PDF_end_page
PDF Funções


Finish page

PDF_end_page_ext
PDF_end_pattern
PDF Funções
PHP Manual

PDF_end_page

(PHP 4, PECL pdflib >= 1.0.0)

PDF_end_page — Finish page

Descrição

bool PDF_end_page ( resource $p )

Finishes the page. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_end_page_ext
PDF_end_pattern
PDF Funções


Finish pattern

PDF_end_page
PDF_end_template
PDF Funções
PHP Manual

PDF_end_pattern

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_end_pattern — Finish pattern

Descrição

bool PDF_end_pattern ( resource $p )

Finishes the pattern definition. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_end_page
PDF_end_template
PDF Funções


Finish template

PDF_end_pattern
PDF_endpath
PDF Funções
PHP Manual

PDF_end_template

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_end_template — Finish template

Descrição

bool PDF_end_template ( resource $p )

Finishes a template definition. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_end_pattern
PDF_endpath
PDF Funções


End current path

PDF_end_template
PDF_fill_imageblock
PDF Funções
PHP Manual

PDF_endpath

(PHP 4, PECL pdflib >= 1.0.0)

PDF_endpath — End current path

Descrição

bool PDF_endpath ( resource $p )

Ends the current path without filling or stroking it.

PDF_end_template
PDF_fill_imageblock
PDF Funções


Fill image block with variable data

PDF_endpath
PDF_fill_pdfblock
PDF Funções
PHP Manual

PDF_fill_imageblock

(PECL pdflib >= 2.0.0)

PDF_fill_imageblock — Fill image block with variable data

Descrição

int PDF_fill_imageblock ( resource $pdfdoc , int $page , string $blockname , int $image , string $optlist )

Fills an image block with variable data according to its properties.

This function is only available in the PDFlib Personalization Server (PPS).

PDF_endpath
PDF_fill_pdfblock
PDF Funções


Fill PDF block with variable data

PDF_fill_imageblock
PDF_fill_stroke
PDF Funções
PHP Manual

PDF_fill_pdfblock

(PECL pdflib >= 2.0.0)

PDF_fill_pdfblock — Fill PDF block with variable data

Descrição

int PDF_fill_pdfblock ( resource $pdfdoc , int $page , string $blockname , int $contents , string $optlist )

Fills a PDF block with variable data according to its properties.

This function is only available in the PDFlib Personalization Server (PPS).

PDF_fill_imageblock
PDF_fill_stroke
PDF Funções


Fill and stroke path

PDF_fill_pdfblock
PDF_fill_textblock
PDF Funções
PHP Manual

PDF_fill_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_fill_stroke — Fill and stroke path

Descrição

bool PDF_fill_stroke ( resource $p )

Fills and strokes the current path with the current fill and stroke color. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_fill_pdfblock
PDF_fill_textblock
PDF Funções


Fill text block with variable data

PDF_fill_stroke
PDF_fill
PDF Funções
PHP Manual

PDF_fill_textblock

(PECL pdflib >= 2.0.0)

PDF_fill_textblock — Fill text block with variable data

Descrição

int PDF_fill_textblock ( resource $pdfdoc , int $page , string $blockname , string $text , string $optlist )

Fills a text block with variable data according to its properties.

This function is only available in the PDFlib Personalization Server (PPS).

PDF_fill_stroke
PDF_fill
PDF Funções


Fill current path

PDF_fill_textblock
PDF_findfont
PDF Funções
PHP Manual

PDF_fill

(PHP 4, PECL pdflib >= 1.0.0)

PDF_fill — Fill current path

Descrição

bool PDF_fill ( resource $p )

Fills the interior of the current path with the current fill color. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_fill_textblock
PDF_findfont
PDF Funções


Prepare font for later use [deprecated]

PDF_fill
PDF_fit_image
PDF Funções
PHP Manual

PDF_findfont

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_findfont — Prepare font for later use [deprecated]

Descrição

int PDF_findfont ( resource $p , string $fontname , string $encoding , int $embed )

Search for a font and prepare it for later use with PDF_setfont(). The metrics will be loaded, and if embed is nonzero, the font file will be checked, but not yet used. encoding is one of builtin, macroman, winansi, host, a user-defined encoding name or the name of a CMap. Parameter embed is optional before PHP 4.3.5 or with PDFlib less than 5.

This function is deprecated since PDFlib version 5, use PDF_load_font() instead.

PDF_fill
PDF_fit_image
PDF Funções


Place image or template

PDF_findfont
PDF_fit_pdi_page
PDF Funções
PHP Manual

PDF_fit_image

(PECL pdflib >= 2.0.0)

PDF_fit_image — Place image or template

Descrição

bool PDF_fit_image ( resource $pdfdoc , int $image , float $x , float $y , string $optlist )

Places an image or template on the page, subject to various options. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_findfont
PDF_fit_pdi_page
PDF Funções


Place imported PDF page

PDF_fit_image
PDF_fit_table
PDF Funções
PHP Manual

PDF_fit_pdi_page

(PECL pdflib >= 2.0.0)

PDF_fit_pdi_page — Place imported PDF page

Descrição

bool PDF_fit_pdi_page ( resource $pdfdoc , int $page , float $x , float $y , string $optlist )

Places an imported PDF page on the page, subject to various options. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_fit_image
PDF_fit_table
PDF Funções


Place table on page

PDF_fit_pdi_page
PDF_fit_textflow
PDF Funções
PHP Manual

PDF_fit_table

(PECL pdflib >= 2.1.0)

PDF_fit_table — Place table on page

Descrição

string PDF_fit_table ( resource $pdfdoc , int $table , float $llx , float $lly , float $urx , float $ury , string $optlist )

Places a table on the page fully or partially.

PDF_fit_pdi_page
PDF_fit_textflow
PDF Funções


Format textflow in rectangular area

PDF_fit_table
PDF_fit_textline
PDF Funções
PHP Manual

PDF_fit_textflow

(PECL pdflib >= 2.0.0)

PDF_fit_textflow — Format textflow in rectangular area

Descrição

string PDF_fit_textflow ( resource $pdfdoc , int $textflow , float $llx , float $lly , float $urx , float $ury , string $optlist )

Formats the next portion of a textflow into a rectangular area.

PDF_fit_table
PDF_fit_textline
PDF Funções


Place single line of text

PDF_fit_textflow
PDF_get_apiname
PDF Funções
PHP Manual

PDF_fit_textline

(PECL pdflib >= 2.0.0)

PDF_fit_textline — Place single line of text

Descrição

bool PDF_fit_textline ( resource $pdfdoc , string $text , float $x , float $y , string $optlist )

Places a single line of text on the page, subject to various options. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_fit_textflow
PDF_get_apiname
PDF Funções


Get name of unsuccessfull API function

PDF_fit_textline
PDF_get_buffer
PDF Funções
PHP Manual

PDF_get_apiname

(PECL pdflib >= 2.0.0)

PDF_get_apiname — Get name of unsuccessfull API function

Descrição

string PDF_get_apiname ( resource $pdfdoc )

Gets the name of the API function which threw the last exception or failed.

PDF_fit_textline
PDF_get_buffer
PDF Funções


Get PDF output buffer

PDF_get_apiname
PDF_get_errmsg
PDF Funções
PHP Manual

PDF_get_buffer

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_get_buffer — Get PDF output buffer

Descrição

string PDF_get_buffer ( resource $p )

Fetches the buffer containing the generated PDF data.

PDF_get_apiname
PDF_get_errmsg
PDF Funções


Get error text

PDF_get_buffer
PDF_get_errnum
PDF Funções
PHP Manual

PDF_get_errmsg

(PECL pdflib >= 2.0.0)

PDF_get_errmsg — Get error text

Descrição

string PDF_get_errmsg ( resource $pdfdoc )

Gets the text of the last thrown exception or the reason for a failed function call.

PDF_get_buffer
PDF_get_errnum
PDF Funções


Get error number

PDF_get_errmsg
PDF_get_font
PDF Funções
PHP Manual

PDF_get_errnum

(PECL pdflib >= 2.0.0)

PDF_get_errnum — Get error number

Descrição

int PDF_get_errnum ( resource $pdfdoc )

Gets the number of the last thrown exception or the reason for a failed function call.

PDF_get_errmsg
PDF_get_font
PDF Funções


Get font [deprecated]

PDF_get_errnum
PDF_get_fontname
PDF Funções
PHP Manual

PDF_get_font

(PHP 4, PECL pdflib >= 1.0.0)

PDF_get_font — Get font [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_get_value() with the parameter font instead.

PDF_get_errnum
PDF_get_fontname
PDF Funções


Get font name [deprecated]

PDF_get_font
PDF_get_fontsize
PDF Funções
PHP Manual

PDF_get_fontname

(PHP 4, PECL pdflib >= 1.0.0)

PDF_get_fontname — Get font name [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_get_parameter() with the parameter fontname instead.

PDF_get_font
PDF_get_fontsize
PDF Funções


Font handling [deprecated]

PDF_get_fontname
PDF_get_image_height
PDF Funções
PHP Manual

PDF_get_fontsize

(PHP 4, PECL pdflib >= 1.0.0)

PDF_get_fontsize — Font handling [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_get_value() with the parameter fontsizeinstead.

PDF_get_fontname
PDF_get_image_height
PDF Funções


Get image height [deprecated]

PDF_get_fontsize
PDF_get_image_width
PDF Funções
PHP Manual

PDF_get_image_height

(PHP 4, PECL pdflib >= 1.0.0)

PDF_get_image_height — Get image height [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_get_value() with the parameter imageheight instead.

PDF_get_fontsize
PDF_get_image_width
PDF Funções


Get image width [deprecated]

PDF_get_image_height
PDF_get_majorversion
PDF Funções
PHP Manual

PDF_get_image_width

(PHP 4, PECL pdflib >= 1.0.0)

PDF_get_image_width — Get image width [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_get_value() with the parameter imagewidth instead.

PDF_get_image_height
PDF_get_majorversion
PDF Funções


Get major version number [deprecated]

PDF_get_image_width
PDF_get_minorversion
PDF Funções
PHP Manual

PDF_get_majorversion

(PHP 4 >= 4.2.0, PECL pdflib >= 1.0.0)

PDF_get_majorversion — Get major version number [deprecated]

Descrição

int PDF_get_majorversion ( void )

This function is deprecated since PDFlib version 5, use PDF_get_value() with the parameter major instead.

PDF_get_image_width
PDF_get_minorversion
PDF Funções


Get minor version number [deprecated]

PDF_get_majorversion
PDF_get_parameter
PDF Funções
PHP Manual

PDF_get_minorversion

(PHP 4 >= 4.2.0, PECL pdflib >= 1.0.0)

PDF_get_minorversion — Get minor version number [deprecated]

Descrição

int PDF_get_minorversion ( void )

Returns the minor version number of the PDFlib version.

This function is deprecated since PDFlib version 5, use PDF_get_value() with the parameter minor instead.

PDF_get_majorversion
PDF_get_parameter
PDF Funções


Get string parameter

PDF_get_minorversion
PDF_get_pdi_parameter
PDF Funções
PHP Manual

PDF_get_parameter

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_get_parameter — Get string parameter

Descrição

string PDF_get_parameter ( resource $p , string $key , float $modifier )

Gets the contents of some PDFlib parameter with string type.

PDF_get_minorversion
PDF_get_pdi_parameter
PDF Funções


Get PDI string parameter [deprecated]

PDF_get_parameter
PDF_get_pdi_value
PDF Funções
PHP Manual

PDF_get_pdi_parameter

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_get_pdi_parameter — Get PDI string parameter [deprecated]

Descrição

string PDF_get_pdi_parameter ( resource $p , string $key , int $doc , int $page , int $reserved )

Gets the contents of a PDI document parameter with string type.

This function is deprecated since PDFlib version 7, use PDF_pcos_get_string() instead.

PDF_get_parameter
PDF_get_pdi_value
PDF Funções


Get PDI numerical parameter [deprecated]

PDF_get_pdi_parameter
PDF_get_value
PDF Funções
PHP Manual

PDF_get_pdi_value

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_get_pdi_value — Get PDI numerical parameter [deprecated]

Descrição

float PDF_get_pdi_value ( resource $p , string $key , int $doc , int $page , int $reserved )

Gets the contents of a PDI document parameter with numerical type.

This function is deprecated since PDFlib version 7, use PDF_pcos_get_number() instead.

PDF_get_pdi_parameter
PDF_get_value
PDF Funções


Get numerical parameter

PDF_get_pdi_value
PDF_info_font
PDF Funções
PHP Manual

PDF_get_value

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_get_value — Get numerical parameter

Descrição

float PDF_get_value ( resource $p , string $key , float $modifier )

Gets the value of some PDFlib parameter with numerical type.

PDF_get_pdi_value
PDF_info_font
PDF Funções


Query detailed information about a loaded font

PDF_get_value
PDF_info_matchbox
PDF Funções
PHP Manual

PDF_info_font

(PECL pdflib >= 2.1.0)

PDF_info_font — Query detailed information about a loaded font

Descrição

float PDF_info_font ( resource $pdfdoc , int $font , string $keyword , string $optlist )

Queries detailed information about a loaded font.

PDF_get_value
PDF_info_matchbox
PDF Funções


Query matchbox information

PDF_info_font
PDF_info_table
PDF Funções
PHP Manual

PDF_info_matchbox

(PECL pdflib >= 2.1.0)

PDF_info_matchbox — Query matchbox information

Descrição

float PDF_info_matchbox ( resource $pdfdoc , string $boxname , int $num , string $keyword )

Queries information about a matchbox on the current page.

PDF_info_font
PDF_info_table
PDF Funções


Retrieve table information

PDF_info_matchbox
PDF_info_textflow
PDF Funções
PHP Manual

PDF_info_table

(PECL pdflib >= 2.1.0)

PDF_info_table — Retrieve table information

Descrição

float PDF_info_table ( resource $pdfdoc , int $table , string $keyword )

Retrieves table information related to the most recently placed table instance.

PDF_info_matchbox
PDF_info_textflow
PDF Funções


Query textflow state

PDF_info_table
PDF_info_textline
PDF Funções
PHP Manual

PDF_info_textflow

(PECL pdflib >= 2.0.0)

PDF_info_textflow — Query textflow state

Descrição

float PDF_info_textflow ( resource $pdfdoc , int $textflow , string $keyword )

Queries the current state of a textflow.

PDF_info_table
PDF_info_textline
PDF Funções


Perform textline formatting and query metrics

PDF_info_textflow
PDF_initgraphics
PDF Funções
PHP Manual

PDF_info_textline

(PECL pdflib >= 2.1.0)

PDF_info_textline — Perform textline formatting and query metrics

Descrição

float PDF_info_textline ( resource $pdfdoc , string $text , string $keyword , string $optlist )

Performs textline formatting and queries the resulting metrics.

PDF_info_textflow
PDF_initgraphics
PDF Funções


Reset graphic state

PDF_info_textline
PDF_lineto
PDF Funções
PHP Manual

PDF_initgraphics

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_initgraphics — Reset graphic state

Descrição

bool PDF_initgraphics ( resource $p )

Reset all color and graphics state parameters to their defaults. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_info_textline
PDF_lineto
PDF Funções


Draw a line

PDF_initgraphics
PDF_load_3ddata
PDF Funções
PHP Manual

PDF_lineto

(PHP 4, PECL pdflib >= 1.0.0)

PDF_lineto — Draw a line

Descrição

bool PDF_lineto ( resource $p , float $x , float $y )

Draws a line from the current point to another point. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_initgraphics
PDF_load_3ddata
PDF Funções


Load 3D model

PDF_lineto
PDF_load_font
PDF Funções
PHP Manual

PDF_load_3ddata

(PECL pdflib >= 2.1.0)

PDF_load_3ddata — Load 3D model

Descrição

int PDF_load_3ddata ( resource $pdfdoc , string $filename , string $optlist )

Loads a 3D model from a disk-based or virtual file.

This function requires PDF 1.6.

PDF_lineto
PDF_load_font
PDF Funções


Search and prepare font

PDF_load_3ddata
PDF_load_iccprofile
PDF Funções
PHP Manual

PDF_load_font

(PECL pdflib >= 2.0.0)

PDF_load_font — Search and prepare font

Descrição

int PDF_load_font ( resource $pdfdoc , string $fontname , string $encoding , string $optlist )

Searches for a font and prepares it for later use.

PDF_load_3ddata
PDF_load_iccprofile
PDF Funções


Search and prepare ICC profile

PDF_load_font
PDF_load_image
PDF Funções
PHP Manual

PDF_load_iccprofile

(PECL pdflib >= 2.0.0)

PDF_load_iccprofile — Search and prepare ICC profile

Descrição

int PDF_load_iccprofile ( resource $pdfdoc , string $profilename , string $optlist )

Searches for an ICC profile, and prepares it for later use.

PDF_load_font
PDF_load_image
PDF Funções


Open image file

PDF_load_iccprofile
PDF_makespotcolor
PDF Funções
PHP Manual

PDF_load_image

(PECL pdflib >= 2.0.0)

PDF_load_image — Open image file

Descrição

int PDF_load_image ( resource $pdfdoc , string $imagetype , string $filename , string $optlist )

Opens a disk-based or virtual image file subject to various options.

PDF_load_iccprofile
PDF_makespotcolor
PDF Funções


Make spot color

PDF_load_image
PDF_moveto
PDF Funções
PHP Manual

PDF_makespotcolor

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_makespotcolor — Make spot color

Descrição

int PDF_makespotcolor ( resource $p , string $spotname )

Finds a built-in spot color name, or makes a named spot color from the current fill color. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_load_image
PDF_moveto
PDF Funções


Set current point

PDF_makespotcolor
PDF_new
PDF Funções
PHP Manual

PDF_moveto

(PHP 4, PECL pdflib >= 1.0.0)

PDF_moveto — Set current point

Descrição

bool PDF_moveto ( resource $p , float $x , float $y )

Sets the current point for graphics output. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_makespotcolor
PDF_new
PDF Funções


Create PDFlib object

PDF_moveto
PDF_open_ccitt
PDF Funções
PHP Manual

PDF_new

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_new — Create PDFlib object

Descrição

resource PDF_new ( void )

Creates a new PDFlib object with default settings.

PDF_moveto
PDF_open_ccitt
PDF Funções


Open raw CCITT image [deprecated]

PDF_new
PDF_open_file
PDF Funções
PHP Manual

PDF_open_ccitt

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_open_ccitt — Open raw CCITT image [deprecated]

Descrição

int PDF_open_ccitt ( resource $pdfdoc , string $filename , int $width , int $height , int $BitReverse , int $k , int $Blackls1 )

Opens a raw CCITT image.

This function is deprecated since PDFlib version 5, use PDF_load_image() instead.

PDF_new
PDF_open_file
PDF Funções


Create PDF file [deprecated]

PDF_open_ccitt
PDF_open_gif
PDF Funções
PHP Manual

PDF_open_file

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_open_file — Create PDF file [deprecated]

Descrição

bool PDF_open_file ( resource $p , string $filename )

Creates a new PDF file using the supplied file name. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use PDF_begin_document() instead.

PDF_open_ccitt
PDF_open_gif
PDF Funções


Open GIF image [deprecated]

PDF_open_file
PDF_open_image_file
PDF Funções
PHP Manual

PDF_open_gif

(PHP 4, PECL pdflib >= 1.0.0)

PDF_open_gif — Open GIF image [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_load_image() instead.

PDF_open_file
PDF_open_image_file
PDF Funções


Read image from file [deprecated]

PDF_open_gif
PDF_open_image
PDF Funções
PHP Manual

PDF_open_image_file

(PHP 4, PECL pdflib >= 1.0.0)

PDF_open_image_file — Read image from file [deprecated]

Descrição

int PDF_open_image_file ( resource $p , string $imagetype , string $filename , string $stringparam , int $intparam )

Opens an image file.

This function is deprecated since PDFlib version 5, use PDF_load_image() with the colorize, ignoremask, invert, mask, masked, and page options instead.

PDF_open_gif
PDF_open_image
PDF Funções


Use image data [deprecated]

PDF_open_image_file
PDF_open_jpeg
PDF Funções
PHP Manual

PDF_open_image

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_open_image — Use image data [deprecated]

Descrição

int PDF_open_image ( resource $p , string $imagetype , string $source , string $data , int $length , int $width , int $height , int $components , int $bpc , string $params )

Uses image data from a variety of data sources.

This function is deprecated since PDFlib version 5, use virtual files and PDF_load_image() instead.

PDF_open_image_file
PDF_open_jpeg
PDF Funções


Open JPEG image [deprecated]

PDF_open_image
PDF_open_memory_image
PDF Funções
PHP Manual

PDF_open_jpeg

(PHP 4, PECL pdflib >= 1.0.0)

PDF_open_jpeg — Open JPEG image [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_load_image() instead.

PDF_open_image
PDF_open_memory_image
PDF Funções


Open image created with PHP's image functions [not supported]

PDF_open_jpeg
PDF_open_pdi_document
PDF Funções
PHP Manual

PDF_open_memory_image

(PHP 4, PECL pdflib >= 1.0.0)

PDF_open_memory_image — Open image created with PHP's image functions [not supported]

Descrição

int PDF_open_memory_image ( resource $p , resource $image )

This function is not supported by PDFlib GmbH.

PDF_open_jpeg
PDF_open_pdi_document
PDF Funções


Prepare a pdi document

PDF_open_memory_image
PDF_open_pdi_page
PDF Funções
PHP Manual

PDF_open_pdi_document

(PECL pdflib >= 2.1.0)

PDF_open_pdi_document — Prepare a pdi document

Descrição

int PDF_open_pdi_document ( resource $p , string $filename , string $optlist )

Open a disk-based or virtual PDF document and prepare it for later use.

PDF_open_memory_image
PDF_open_pdi_page
PDF Funções


Prepare a page

PDF_open_pdi_document
PDF_open_pdi
PDF Funções
PHP Manual

PDF_open_pdi_page

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_open_pdi_page — Prepare a page

Descrição

int PDF_open_pdi_page ( resource $p , int $doc , int $pagenumber , string $optlist )

Prepares a page for later use with PDF_fit_pdi_page().

PDF_open_pdi_document
PDF_open_pdi
PDF Funções


Open PDF file [deprecated]

PDF_open_pdi_page
PDF_open_tiff
PDF Funções
PHP Manual

PDF_open_pdi

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_open_pdi — Open PDF file [deprecated]

Descrição

int PDF_open_pdi ( resource $pdfdoc , string $filename , string $optlist , int $len )

Opens a disk-based or virtual PDF document and prepares it for later use.

This function is deprecated since PDFlib version 7, use PDF_open_pdi_document() instead.

PDF_open_pdi_page
PDF_open_tiff
PDF Funções


Open TIFF image [deprecated]

PDF_open_pdi
PDF_pcos_get_number
PDF Funções
PHP Manual

PDF_open_tiff

(PHP 4, PECL pdflib >= 1.0.0)

PDF_open_tiff — Open TIFF image [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_load_image() instead.

PDF_open_pdi
PDF_pcos_get_number
PDF Funções


Get value of pCOS path with type number or boolean

PDF_open_tiff
PDF_pcos_get_stream
PDF Funções
PHP Manual

PDF_pcos_get_number

(PECL pdflib >= 2.1.0)

PDF_pcos_get_number — Get value of pCOS path with type number or boolean

Descrição

float PDF_pcos_get_number ( resource $p , int $doc , string $path )

Gets the value of a pCOS path with type number or boolean.

PDF_open_tiff
PDF_pcos_get_stream
PDF Funções


Get contents of pCOS path with type stream, fstream, or string

PDF_pcos_get_number
PDF_pcos_get_string
PDF Funções
PHP Manual

PDF_pcos_get_stream

(PECL pdflib >= 2.1.0)

PDF_pcos_get_stream — Get contents of pCOS path with type stream, fstream, or string

Descrição

string PDF_pcos_get_stream ( resource $p , int $doc , string $optlist , string $path )

Gets the contents of a pCOS path with type stream, fstream, or string.

PDF_pcos_get_number
PDF_pcos_get_string
PDF Funções


Get value of pCOS path with type name, string, or boolean

PDF_pcos_get_stream
PDF_place_image
PDF Funções
PHP Manual

PDF_pcos_get_string

(PECL pdflib >= 2.1.0)

PDF_pcos_get_string — Get value of pCOS path with type name, string, or boolean

Descrição

string PDF_pcos_get_string ( resource $p , int $doc , string $path )

Gets the value of a pCOS path with type name, string, or boolean.

PDF_pcos_get_stream
PDF_place_image
PDF Funções


Place image on the page [deprecated]

PDF_pcos_get_string
PDF_place_pdi_page
PDF Funções
PHP Manual

PDF_place_image

(PHP 4, PECL pdflib >= 1.0.0)

PDF_place_image — Place image on the page [deprecated]

Descrição

bool PDF_place_image ( resource $pdfdoc , int $image , float $x , float $y , float $scale )

Places an image and scales it. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 5, use PDF_fit_image() instead.

PDF_pcos_get_string
PDF_place_pdi_page
PDF Funções


Place PDF page [deprecated]

PDF_place_image
PDF_process_pdi
PDF Funções
PHP Manual

PDF_place_pdi_page

(PHP 4 >= 4.0.6, PECL pdflib >= 1.0.0)

PDF_place_pdi_page — Place PDF page [deprecated]

Descrição

bool PDF_place_pdi_page ( resource $pdfdoc , int $page , float $x , float $y , float $sx , float $sy )

Places a PDF page and scales it. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 5, use PDF_fit_pdi_page() instead.

PDF_place_image
PDF_process_pdi
PDF Funções


Process imported PDF document

PDF_place_pdi_page
PDF_rect
PDF Funções
PHP Manual

PDF_process_pdi

(PECL pdflib >= 2.0.0)

PDF_process_pdi — Process imported PDF document

Descrição

int PDF_process_pdi ( resource $pdfdoc , int $doc , int $page , string $optlist )

Processes certain elements of an imported PDF document.

PDF_place_pdi_page
PDF_rect
PDF Funções


Draw rectangle

PDF_process_pdi
PDF_restore
PDF Funções
PHP Manual

PDF_rect

(PHP 4, PECL pdflib >= 1.0.0)

PDF_rect — Draw rectangle

Descrição

bool PDF_rect ( resource $p , float $x , float $y , float $width , float $height )

Draws a rectangle. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_process_pdi
PDF_restore
PDF Funções


Restore graphics state

PDF_rect
PDF_resume_page
PDF Funções
PHP Manual

PDF_restore

(PHP 4, PECL pdflib >= 1.0.0)

PDF_restore — Restore graphics state

Descrição

bool PDF_restore ( resource $p )

Restores the most recently saved graphics state. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_rect
PDF_resume_page
PDF Funções


Resume page

PDF_restore
PDF_rotate
PDF Funções
PHP Manual

PDF_resume_page

(PECL pdflib >= 2.0.0)

PDF_resume_page — Resume page

Descrição

bool PDF_resume_page ( resource $pdfdoc , string $optlist )

Resumes a page to add more content to it.

PDF_restore
PDF_rotate
PDF Funções


Rotate coordinate system

PDF_resume_page
PDF_save
PDF Funções
PHP Manual

PDF_rotate

(PHP 4, PECL pdflib >= 1.0.0)

PDF_rotate — Rotate coordinate system

Descrição

bool PDF_rotate ( resource $p , float $phi )

Rotates the coordinate system. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_resume_page
PDF_save
PDF Funções


Save graphics state

PDF_rotate
PDF_scale
PDF Funções
PHP Manual

PDF_save

(PHP 4, PECL pdflib >= 1.0.0)

PDF_save — Save graphics state

Descrição

bool PDF_save ( resource $p )

Saves the current graphics state. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_rotate
PDF_scale
PDF Funções


Scale coordinate system

PDF_save
PDF_set_border_color
PDF Funções
PHP Manual

PDF_scale

(PHP 4, PECL pdflib >= 1.0.0)

PDF_scale — Scale coordinate system

Descrição

bool PDF_scale ( resource $p , float $sx , float $sy )

Scales the coordinate system. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_save
PDF_set_border_color
PDF Funções


Set border color of annotations [deprecated]

PDF_scale
PDF_set_border_dash
PDF Funções
PHP Manual

PDF_set_border_color

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_border_color — Set border color of annotations [deprecated]

Descrição

bool PDF_set_border_color ( resource $p , float $red , float $green , float $blue )

Sets the border color for all kinds of annotations. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use the option annotcolor in PDF_create_annotation() instead.

PDF_scale
PDF_set_border_dash
PDF Funções


Set border dash style of annotations [deprecated]

PDF_set_border_color
PDF_set_border_style
PDF Funções
PHP Manual

PDF_set_border_dash

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_set_border_dash — Set border dash style of annotations [deprecated]

Descrição

bool PDF_set_border_dash ( resource $pdfdoc , float $black , float $white )

Sets the border dash style for all kinds of annotations. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use the option dasharray in PDF_create_annotation() instead.

PDF_set_border_color
PDF_set_border_style
PDF Funções


Set border style of annotations [deprecated]

PDF_set_border_dash
PDF_set_char_spacing
PDF Funções
PHP Manual

PDF_set_border_style

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_border_style — Set border style of annotations [deprecated]

Descrição

bool PDF_set_border_style ( resource $pdfdoc , string $style , float $width )

Sets the border style for all kinds of annotations. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 6, use the options borderstyle and linewidth in PDF_create_annotation() instead.

PDF_set_border_dash
PDF_set_char_spacing
PDF Funções


Set character spacing [deprecated]

PDF_set_border_style
PDF_set_duration
PDF Funções
PHP Manual

PDF_set_char_spacing

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_char_spacing — Set character spacing [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with parameter charspacing instead.

PDF_set_border_style
PDF_set_duration
PDF Funções


Set duration between pages [deprecated]

PDF_set_char_spacing
PDF_set_gstate
PDF Funções
PHP Manual

PDF_set_duration

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_duration — Set duration between pages [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use the duration option in PDF_begin_page_ext() or PDF_end_page_ext() instead.

PDF_set_char_spacing
PDF_set_gstate
PDF Funções


Activate graphics state object

PDF_set_duration
PDF_set_horiz_scaling
PDF Funções
PHP Manual

PDF_set_gstate

(PECL pdflib >= 2.0.0)

PDF_set_gstate — Activate graphics state object

Descrição

bool PDF_set_gstate ( resource $pdfdoc , int $gstate )

Activates a graphics state object.

PDF_set_duration
PDF_set_horiz_scaling
PDF Funções


Set horizontal text scaling [deprecated]

PDF_set_gstate
PDF_set_info_author
PDF Funções
PHP Manual

PDF_set_horiz_scaling

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_horiz_scaling — Set horizontal text scaling [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with parameter horizscaling instead.

PDF_set_gstate
PDF_set_info_author
PDF Funções


Fill the author document info field [deprecated]

PDF_set_horiz_scaling
PDF_set_info_creator
PDF Funções
PHP Manual

PDF_set_info_author

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_info_author — Fill the author document info field [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_info() instead.

PDF_set_horiz_scaling
PDF_set_info_creator
PDF Funções


Fill the creator document info field [deprecated]

PDF_set_info_author
PDF_set_info_keywords
PDF Funções
PHP Manual

PDF_set_info_creator

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_info_creator — Fill the creator document info field [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_info() instead.

PDF_set_info_author
PDF_set_info_keywords
PDF Funções


Fill the keywords document info field [deprecated]

PDF_set_info_creator
PDF_set_info_subject
PDF Funções
PHP Manual

PDF_set_info_keywords

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_info_keywords — Fill the keywords document info field [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_info() instead.

PDF_set_info_creator
PDF_set_info_subject
PDF Funções


Fill the subject document info field [deprecated]

PDF_set_info_keywords
PDF_set_info_title
PDF Funções
PHP Manual

PDF_set_info_subject

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_info_subject — Fill the subject document info field [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_info() instead.

PDF_set_info_keywords
PDF_set_info_title
PDF Funções


Fill the title document info field [deprecated]

PDF_set_info_subject
PDF_set_info
PDF Funções
PHP Manual

PDF_set_info_title

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_info_title — Fill the title document info field [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_info() instead.

PDF_set_info_subject
PDF_set_info
PDF Funções


Fill document info field

PDF_set_info_title
PDF_set_layer_dependency
PDF Funções
PHP Manual

PDF_set_info

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_set_info — Fill document info field

Descrição

bool PDF_set_info ( resource $p , string $key , string $value )

Fill document information field key with value. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_set_info_title
PDF_set_layer_dependency
PDF Funções


Define relationships among layers

PDF_set_info
PDF_set_leading
PDF Funções
PHP Manual

PDF_set_layer_dependency

(PECL pdflib >= 2.0.0)

PDF_set_layer_dependency — Define relationships among layers

Descrição

bool PDF_set_layer_dependency ( resource $pdfdoc , string $type , string $optlist )

Defines hierarchical and group relationships among layers. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function requires PDF 1.5.

PDF_set_info
PDF_set_leading
PDF Funções


Set distance between text lines [deprecated]

PDF_set_layer_dependency
PDF_set_parameter
PDF Funções
PHP Manual

PDF_set_leading

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_leading — Set distance between text lines [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with the parameter leading instead.

PDF_set_layer_dependency
PDF_set_parameter
PDF Funções


Set string parameter

PDF_set_leading
PDF_set_text_matrix
PDF Funções
PHP Manual

PDF_set_parameter

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_parameter — Set string parameter

Descrição

bool PDF_set_parameter ( resource $p , string $key , string $value )

Sets some PDFlib parameter with string type. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_set_leading
PDF_set_text_matrix
PDF Funções


Set text matrix [deprecated]

PDF_set_parameter
PDF_set_text_pos
PDF Funções
PHP Manual

PDF_set_text_matrix

(PHP 4 <= 4.0.4)

PDF_set_text_matrix — Set text matrix [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_scale(), PDF_translate(), PDF_rotate(), or PDF_skew() instead.

PDF_set_parameter
PDF_set_text_pos
PDF Funções


Set text position

PDF_set_text_matrix
PDF_set_text_rendering
PDF Funções
PHP Manual

PDF_set_text_pos

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_text_pos — Set text position

Descrição

bool PDF_set_text_pos ( resource $p , float $x , float $y )

Sets the position for text output on the page. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_set_text_matrix
PDF_set_text_rendering
PDF Funções


Determine text rendering [deprecated]

PDF_set_text_pos
PDF_set_text_rise
PDF Funções
PHP Manual

PDF_set_text_rendering

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_text_rendering — Determine text rendering [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with the textrendering parameter instead.

PDF_set_text_pos
PDF_set_text_rise
PDF Funções


Set text rise [deprecated]

PDF_set_text_rendering
PDF_set_value
PDF Funções
PHP Manual

PDF_set_text_rise

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_text_rise — Set text rise [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with the textrise parameter instead.

PDF_set_text_rendering
PDF_set_value
PDF Funções


Set numerical parameter

PDF_set_text_rise
PDF_set_word_spacing
PDF Funções
PHP Manual

PDF_set_value

(PHP 4 >= 4.0.1, PECL pdflib >= 1.0.0)

PDF_set_value — Set numerical parameter

Descrição

bool PDF_set_value ( resource $p , string $key , float $value )

Sets the value of some PDFlib parameter with numerical type. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_set_text_rise
PDF_set_word_spacing
PDF Funções


Set spacing between words [deprecated]

PDF_set_value
PDF_setcolor
PDF Funções
PHP Manual

PDF_set_word_spacing

(PHP 4, PECL pdflib >= 1.0.0)

PDF_set_word_spacing — Set spacing between words [deprecated]

Descrição

This function is deprecated since PDFlib version 3, use PDF_set_value() with the wordspacing parameter instead.

PDF_set_value
PDF_setcolor
PDF Funções


Set fill and stroke color

PDF_set_word_spacing
PDF_setdash
PDF Funções
PHP Manual

PDF_setcolor

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_setcolor — Set fill and stroke color

Descrição

bool PDF_setcolor ( resource $p , string $fstype , string $colorspace , float $c1 , float $c2 , float $c3 , float $c4 )

Sets the current color space and color. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_set_word_spacing
PDF_setdash
PDF Funções


Set simple dash pattern

PDF_setcolor
PDF_setdashpattern
PDF Funções
PHP Manual

PDF_setdash

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setdash — Set simple dash pattern

Descrição

bool PDF_setdash ( resource $pdfdoc , float $b , float $w )

Sets the current dash pattern to b black and w white units. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setcolor
PDF_setdashpattern
PDF Funções


Set dash pattern

PDF_setdash
PDF_setflat
PDF Funções
PHP Manual

PDF_setdashpattern

(PECL pdflib >= 2.0.0)

PDF_setdashpattern — Set dash pattern

Descrição

bool PDF_setdashpattern ( resource $pdfdoc , string $optlist )

Sets a dash pattern defined by an option list. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setdash
PDF_setflat
PDF Funções


Set flatness

PDF_setdashpattern
PDF_setfont
PDF Funções
PHP Manual

PDF_setflat

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setflat — Set flatness

Descrição

bool PDF_setflat ( resource $pdfdoc , float $flatness )

Sets the flatness parameter. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setdashpattern
PDF_setfont
PDF Funções


Set font

PDF_setflat
PDF_setgray_fill
PDF Funções
PHP Manual

PDF_setfont

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_setfont — Set font

Descrição

bool PDF_setfont ( resource $pdfdoc , int $font , float $fontsize )

Sets the current font in the specified size, using a font handle returned by PDF_load_font(). Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setflat
PDF_setgray_fill
PDF Funções


Set fill color to gray [deprecated]

PDF_setfont
PDF_setgray_stroke
PDF Funções
PHP Manual

PDF_setgray_fill

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setgray_fill — Set fill color to gray [deprecated]

Descrição

bool PDF_setgray_fill ( resource $p , float $g )

Sets the current fill color to a gray value between 0 and 1 inclusive. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setfont
PDF_setgray_stroke
PDF Funções


Set stroke color to gray [deprecated]

PDF_setgray_fill
PDF_setgray
PDF Funções
PHP Manual

PDF_setgray_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setgray_stroke — Set stroke color to gray [deprecated]

Descrição

bool PDF_setgray_stroke ( resource $p , float $g )

Sets the current stroke color to a gray value between 0 and 1 inclusive. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setgray_fill
PDF_setgray
PDF Funções


Set color to gray [deprecated]

PDF_setgray_stroke
PDF_setlinecap
PDF Funções
PHP Manual

PDF_setgray

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setgray — Set color to gray [deprecated]

Descrição

bool PDF_setgray ( resource $p , float $g )

Sets the current fill and stroke color to a gray value between 0 and 1 inclusive. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setgray_stroke
PDF_setlinecap
PDF Funções


Set linecap parameter

PDF_setgray
PDF_setlinejoin
PDF Funções
PHP Manual

PDF_setlinecap

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setlinecap — Set linecap parameter

Descrição

bool PDF_setlinecap ( resource $p , int $linecap )

Sets the linecap parameter to control the shape at the end of a path with respect to stroking.

PDF_setgray
PDF_setlinejoin
PDF Funções


Set linejoin parameter

PDF_setlinecap
PDF_setlinewidth
PDF Funções
PHP Manual

PDF_setlinejoin

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setlinejoin — Set linejoin parameter

Descrição

bool PDF_setlinejoin ( resource $p , int $value )

Sets the linejoin parameter to specify the shape at the corners of paths that are stroked. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setlinecap
PDF_setlinewidth
PDF Funções


Set line width

PDF_setlinejoin
PDF_setmatrix
PDF Funções
PHP Manual

PDF_setlinewidth

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setlinewidth — Set line width

Descrição

bool PDF_setlinewidth ( resource $p , float $width )

Sets the current line width. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setlinejoin
PDF_setmatrix
PDF Funções


Set current transformation matrix

PDF_setlinewidth
PDF_setmiterlimit
PDF Funções
PHP Manual

PDF_setmatrix

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_setmatrix — Set current transformation matrix

Descrição

bool PDF_setmatrix ( resource $p , float $a , float $b , float $c , float $d , float $e , float $f )

Explicitly sets the current transformation matrix. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setlinewidth
PDF_setmiterlimit
PDF Funções


Set miter limit

PDF_setmatrix
PDF_setpolydash
PDF Funções
PHP Manual

PDF_setmiterlimit

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setmiterlimit — Set miter limit

Descrição

bool PDF_setmiterlimit ( resource $pdfdoc , float $miter )

Sets the miter limit.Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_setmatrix
PDF_setpolydash
PDF Funções


Set complicated dash pattern [deprecated]

PDF_setmiterlimit
PDF_setrgbcolor_fill
PDF Funções
PHP Manual

PDF_setpolydash

(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)

PDF_setpolydash — Set complicated dash pattern [deprecated]

Descrição

This function is deprecated since PDFlib version 5, use PDF_setdashpattern() instead.

PDF_setmiterlimit
PDF_setrgbcolor_fill
PDF Funções


Set fill rgb color values [deprecated]

PDF_setpolydash
PDF_setrgbcolor_stroke
PDF Funções
PHP Manual

PDF_setrgbcolor_fill

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setrgbcolor_fill — Set fill rgb color values [deprecated]

Descrição

bool PDF_setrgbcolor_fill ( resource $p , float $red , float $green , float $blue )

Sets the current fill color to the supplied RGB values. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setpolydash
PDF_setrgbcolor_stroke
PDF Funções


Set stroke rgb color values [deprecated]

PDF_setrgbcolor_fill
PDF_setrgbcolor
PDF Funções
PHP Manual

PDF_setrgbcolor_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setrgbcolor_stroke — Set stroke rgb color values [deprecated]

Descrição

bool PDF_setrgbcolor_stroke ( resource $p , float $red , float $green , float $blue )

Sets the current stroke color to the supplied RGB values. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setrgbcolor_fill
PDF_setrgbcolor
PDF Funções


Set fill and stroke rgb color values [deprecated]

PDF_setrgbcolor_stroke
PDF_shading_pattern
PDF Funções
PHP Manual

PDF_setrgbcolor

(PHP 4, PECL pdflib >= 1.0.0)

PDF_setrgbcolor — Set fill and stroke rgb color values [deprecated]

Descrição

bool PDF_setrgbcolor ( resource $p , float $red , float $green , float $blue )

Sets the current fill and stroke color to the supplied RGB values. Retorna TRUE em caso de sucesso ou FALSE em falhas.

This function is deprecated since PDFlib version 4, use PDF_setcolor() instead.

PDF_setrgbcolor_stroke
PDF_shading_pattern
PDF Funções


Define shading pattern

PDF_setrgbcolor
PDF_shading
PDF Funções
PHP Manual

PDF_shading_pattern

(PECL pdflib >= 2.0.0)

PDF_shading_pattern — Define shading pattern

Descrição

int PDF_shading_pattern ( resource $pdfdoc , int $shading , string $optlist )

Defines a shading pattern using a shading object.

This function requires PDF 1.4 or above.

PDF_setrgbcolor
PDF_shading
PDF Funções


Define blend

PDF_shading_pattern
PDF_shfill
PDF Funções
PHP Manual

PDF_shading

(PECL pdflib >= 2.0.0)

PDF_shading — Define blend

Descrição

int PDF_shading ( resource $pdfdoc , string $shtype , float $x0 , float $y0 , float $x1 , float $y1 , float $c1 , float $c2 , float $c3 , float $c4 , string $optlist )

Defines a blend from the current fill color to another color.

This function requires PDF 1.4 or above.

PDF_shading_pattern
PDF_shfill
PDF Funções


Fill area with shading

PDF_shading
PDF_show_boxed
PDF Funções
PHP Manual

PDF_shfill

(PECL pdflib >= 2.0.0)

PDF_shfill — Fill area with shading

Descrição

bool PDF_shfill ( resource $pdfdoc , int $shading )

Fills an area with a shading, based on a shading object.

This function requires PDF 1.4 or above.

PDF_shading
PDF_show_boxed
PDF Funções


Output text in a box [deprecated]

PDF_shfill
PDF_show_xy
PDF Funções
PHP Manual

PDF_show_boxed

(PHP 4, PECL pdflib >= 1.0.0)

PDF_show_boxed — Output text in a box [deprecated]

Descrição

int PDF_show_boxed ( resource $p , string $text , float $left , float $top , float $width , float $height , string $mode , string $feature )

This function is deprecated since PDFlib version 6, use PDF_fit_textline() for single lines, or the PDF_*_textflow() functions for multi-line formatting instead.

PDF_shfill
PDF_show_xy
PDF Funções


Output text at given position

PDF_show_boxed
PDF_show
PDF Funções
PHP Manual

PDF_show_xy

(PHP 4, PECL pdflib >= 1.0.0)

PDF_show_xy — Output text at given position

Descrição

bool PDF_show_xy ( resource $p , string $text , float $x , float $y )

Prints text in the current font. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_show_boxed
PDF_show
PDF Funções


Output text at current position

PDF_show_xy
PDF_skew
PDF Funções
PHP Manual

PDF_show

(PHP 4, PECL pdflib >= 1.0.0)

PDF_show — Output text at current position

Descrição

bool PDF_show ( resource $pdfdoc , string $text )

Prints text in the current font and size at the current position. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_show_xy
PDF_skew
PDF Funções


Skew the coordinate system

PDF_show
PDF_stringwidth
PDF Funções
PHP Manual

PDF_skew

(PHP 4, PECL pdflib >= 1.0.0)

PDF_skew — Skew the coordinate system

Descrição

bool PDF_skew ( resource $p , float $alpha , float $beta )

Skews the coordinate system in x and y direction by alpha and beta degrees. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_show
PDF_stringwidth
PDF Funções


Return width of text

PDF_skew
PDF_stroke
PDF Funções
PHP Manual

PDF_stringwidth

(PHP 4, PECL pdflib >= 1.0.0)

PDF_stringwidth — Return width of text

Descrição

float PDF_stringwidth ( resource $p , string $text , int $font , float $fontsize )

Returns the width of text in an arbitrary font.

PDF_skew
PDF_stroke
PDF Funções


Stroke path

PDF_stringwidth
PDF_suspend_page
PDF Funções
PHP Manual

PDF_stroke

(PHP 4, PECL pdflib >= 1.0.0)

PDF_stroke — Stroke path

Descrição

bool PDF_stroke ( resource $p )

Strokes the path with the current color and line width, and clear it. Retorna TRUE em caso de sucesso ou FALSE em falhas.

PDF_stringwidth
PDF_suspend_page
PDF Funções


Suspend page

PDF_stroke
PDF_translate
PDF Funções
PHP Manual

PDF_suspend_page

(PECL pdflib >= 2.0.0)

PDF_suspend_page — Suspend page

Descrição

bool PDF_suspend_page ( resource $pdfdoc , string $optlist )

Suspends the current page so that it can later be resumed with PDF_resume_page().

PDF_stroke
PDF_translate
PDF Funções


Set origin of coordinate system

PDF_suspend_page
PDF_utf16_to_utf8
PDF Funções
PHP Manual

PDF_translate

(PHP 4, PECL pdflib >= 1.0.0)

PDF_translate — Set origin of coordinate system

Descrição

bool PDF_translate ( resource $p , float $tx , float $ty )

Translates the origin of the coordinate system.

PDF_suspend_page
PDF_utf16_to_utf8
PDF Funções


Convert string from UTF-16 to UTF-8

PDF_translate
PDF_utf32_to_utf16
PDF Funções
PHP Manual

PDF_utf16_to_utf8

(PECL pdflib >= 2.0.3)

PDF_utf16_to_utf8 — Convert string from UTF-16 to UTF-8

Descrição

string PDF_utf16_to_utf8 ( resource $pdfdoc , string $utf16string )

Converts a string from UTF-16 format to UTF-8.

PDF_translate
PDF_utf32_to_utf16
PDF Funções


Convert string from UTF-32 to UTF-16

PDF_utf16_to_utf8
PDF_utf8_to_utf16
PDF Funções
PHP Manual

PDF_utf32_to_utf16

(PECL pdflib >= Unknown future)

PDF_utf32_to_utf16 — Convert string from UTF-32 to UTF-16

Descrição

string PDF_utf32_to_utf16 ( resource $pdfdoc , string $utf32string , string $ordering )

Converts a string from UTF-32 format to UTF-16.

PDF_utf16_to_utf8
PDF_utf8_to_utf16
PDF Funções


Convert string from UTF-8 to UTF-16

PDF_utf32_to_utf16
PS
PDF Funções
PHP Manual

PDF_utf8_to_utf16

(PECL pdflib >= 2.0.3)

PDF_utf8_to_utf16 — Convert string from UTF-8 to UTF-16

Descrição

string PDF_utf8_to_utf16 ( resource $pdfdoc , string $utf8string , string $ordering )

Converts a string from UTF-8 format to UTF-16.

PDF_utf32_to_utf16
PS
PDF Funções


PostScript document creation

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • PS Funções
    • ps_add_bookmark — Add bookmark to current page
    • ps_add_launchlink — Adds link which launches file
    • ps_add_locallink — Adds link to a page in the same document
    • ps_add_note — Adds note to current page
    • ps_add_pdflink — Adds link to a page in a second pdf document
    • ps_add_weblink — Adds link to a web location
    • ps_arc — Draws an arc counterclockwise
    • ps_arcn — Draws an arc clockwise
    • ps_begin_page — Start a new page
    • ps_begin_pattern — Start a new pattern
    • ps_begin_template — Start a new template
    • ps_circle — Draws a circle
    • ps_clip — Clips drawing to current path
    • ps_close_image — Closes image and frees memory
    • ps_close — Closes a PostScript document
    • ps_closepath_stroke — Closes and strokes path
    • ps_closepath — Closes path
    • ps_continue_text — Continue text in next line
    • ps_curveto — Draws a curve
    • ps_delete — Deletes all resources of a PostScript document
    • ps_end_page — End a page
    • ps_end_pattern — End a pattern
    • ps_end_template — End a template
    • ps_fill_stroke — Fills and strokes the current path
    • ps_fill — Fills the current path
    • ps_findfont — Loads a font
    • ps_get_buffer — Fetches the full buffer containig the generated PS data
    • ps_get_parameter — Gets certain parameters
    • ps_get_value — Gets certain values
    • ps_hyphenate — Hyphenates a word
    • ps_include_file — Reads an external file with raw PostScript code
    • ps_lineto — Draws a line
    • ps_makespotcolor — Create spot color
    • ps_moveto — Sets current point
    • ps_new — Creates a new PostScript document object
    • ps_open_file — Opens a file for output
    • ps_open_image_file — Opens image from file
    • ps_open_image — Reads an image for later placement
    • ps_open_memory_image — Takes an GD image and returns an image for placement in a PS document
    • ps_place_image — Places image on the page
    • ps_rect — Draws a rectangle
    • ps_restore — Restore previously save context
    • ps_rotate — Sets rotation factor
    • ps_save — Save current context
    • ps_scale — Sets scaling factor
    • ps_set_border_color — Sets color of border for annotations
    • ps_set_border_dash — Sets length of dashes for border of annotations
    • ps_set_border_style — Sets border style of annotations
    • ps_set_info — Sets information fields of document
    • ps_set_parameter — Sets certain parameters
    • ps_set_text_pos — Sets position for text output
    • ps_set_value — Sets certain values
    • ps_setcolor — Sets current color
    • ps_setdash — Sets appearance of a dashed line
    • ps_setflat — Sets flatness
    • ps_setfont — Sets font to use for following output
    • ps_setgray — Sets gray value
    • ps_setlinecap — Sets appearance of line ends
    • ps_setlinejoin — Sets how contected lines are joined
    • ps_setlinewidth — Sets width of a line
    • ps_setmiterlimit — Sets the miter limit
    • ps_setoverprintmode — Sets overprint mode
    • ps_setpolydash — Sets appearance of a dashed line
    • ps_shading_pattern — Creates a pattern based on a shading
    • ps_shading — Creates a shading for later use
    • ps_shfill — Fills an area with a shading
    • ps_show_boxed — Output text in a box
    • ps_show_xy2 — Output text at position
    • ps_show_xy — Output text at given position
    • ps_show2 — Output a text at current position
    • ps_show — Output text
    • ps_string_geometry — Gets geometry of a string
    • ps_stringwidth — Gets width of a string
    • ps_stroke — Draws the current path
    • ps_symbol_name — Gets name of a glyph
    • ps_symbol_width — Gets width of a glyph
    • ps_symbol — Output a glyph
    • ps_translate — Sets translation
PDF_utf8_to_utf16
Introdução
Saída de MIME Não-Texto


Introdução

This module allows to create PostScript documents. It has many similarities with the pdf extension. Actually the API is almost identical and one can in many cases just replace the prefix of each function from pdf_ to ps_. This also works for functions which has no meaning in the PostScript document (like adding hyperlinks) but will have an effect if the document is converted to PDF.

Documents created by this extension are sometimes even superior to documents created with the pdf extension, because pslib's text rendering functions can handle kerning, hyphenation and ligatures which results in much better output of boxed text.

PS
Instalação/Configuração
PS


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PS


Dependências

You need at least PHP 4.3.0 and pslib >= 0.1.12. The ps library (pslib) is available at » http://pslib.sourceforge.net/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ps.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines a PostScript document resource returned by ps_new().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The following two tables lists all constants defined by the ps extension.

Contants for line caps
Name | Meaning
ps_LINECAP_BUTT |
ps_LINECAP_ROUND |
ps_LINECAP_SQUARED |
Contants for line joins
Name | Meaning
ps_LINEJOIN_MITER |
ps_LINEJOIN_ROUND |
ps_LINEJOIN_BEVEL |

Tipos Resource
PS Funções
PS


PS Funções

Contact Information

If you have comments, bugfixes, enhancements for either this extension or pslib then please drop me a mail » steinm@php.net. Any help is very welcome.

Índice

  • ps_add_bookmark — Add bookmark to current page
  • ps_add_launchlink — Adds link which launches file
  • ps_add_locallink — Adds link to a page in the same document
  • ps_add_note — Adds note to current page
  • ps_add_pdflink — Adds link to a page in a second pdf document
  • ps_add_weblink — Adds link to a web location
  • ps_arc — Draws an arc counterclockwise
  • ps_arcn — Draws an arc clockwise
  • ps_begin_page — Start a new page
  • ps_begin_pattern — Start a new pattern
  • ps_begin_template — Start a new template
  • ps_circle — Draws a circle
  • ps_clip — Clips drawing to current path
  • ps_close_image — Closes image and frees memory
  • ps_close — Closes a PostScript document
  • ps_closepath_stroke — Closes and strokes path
  • ps_closepath — Closes path
  • ps_continue_text — Continue text in next line
  • ps_curveto — Draws a curve
  • ps_delete — Deletes all resources of a PostScript document
  • ps_end_page — End a page
  • ps_end_pattern — End a pattern
  • ps_end_template — End a template
  • ps_fill_stroke — Fills and strokes the current path
  • ps_fill — Fills the current path
  • ps_findfont — Loads a font
  • ps_get_buffer — Fetches the full buffer containig the generated PS data
  • ps_get_parameter — Gets certain parameters
  • ps_get_value — Gets certain values
  • ps_hyphenate — Hyphenates a word
  • ps_include_file — Reads an external file with raw PostScript code
  • ps_lineto — Draws a line
  • ps_makespotcolor — Create spot color
  • ps_moveto — Sets current point
  • ps_new — Creates a new PostScript document object
  • ps_open_file — Opens a file for output
  • ps_open_image_file — Opens image from file
  • ps_open_image — Reads an image for later placement
  • ps_open_memory_image — Takes an GD image and returns an image for placement in a PS document
  • ps_place_image — Places image on the page
  • ps_rect — Draws a rectangle
  • ps_restore — Restore previously save context
  • ps_rotate — Sets rotation factor
  • ps_save — Save current context
  • ps_scale — Sets scaling factor
  • ps_set_border_color — Sets color of border for annotations
  • ps_set_border_dash — Sets length of dashes for border of annotations
  • ps_set_border_style — Sets border style of annotations
  • ps_set_info — Sets information fields of document
  • ps_set_parameter — Sets certain parameters
  • ps_set_text_pos — Sets position for text output
  • ps_set_value — Sets certain values
  • ps_setcolor — Sets current color
  • ps_setdash — Sets appearance of a dashed line
  • ps_setflat — Sets flatness
  • ps_setfont — Sets font to use for following output
  • ps_setgray — Sets gray value
  • ps_setlinecap — Sets appearance of line ends
  • ps_setlinejoin — Sets how contected lines are joined
  • ps_setlinewidth — Sets width of a line
  • ps_setmiterlimit — Sets the miter limit
  • ps_setoverprintmode — Sets overprint mode
  • ps_setpolydash — Sets appearance of a dashed line
  • ps_shading_pattern — Creates a pattern based on a shading
  • ps_shading — Creates a shading for later use
  • ps_shfill — Fills an area with a shading
  • ps_show_boxed — Output text in a box
  • ps_show_xy2 — Output text at position
  • ps_show_xy — Output text at given position
  • ps_show2 — Output a text at current position
  • ps_show — Output text
  • ps_string_geometry — Gets geometry of a string
  • ps_stringwidth — Gets width of a string
  • ps_stroke — Draws the current path
  • ps_symbol_name — Gets name of a glyph
  • ps_symbol_width — Gets width of a glyph
  • ps_symbol — Output a glyph
  • ps_translate — Sets translation
Constantes pré-definidas
ps_add_bookmark
PS


Add bookmark to current page

PS Funções
ps_add_launchlink
PS Funções
PHP Manual

ps_add_bookmark

(PECL ps >= 1.1.0)

ps_add_bookmark — Add bookmark to current page

Descrição

int ps_add_bookmark ( resource $psdoc , string $text [, int $parent = 0 [, int $open = 0 ]] )

Adds a bookmark for the current page. Bookmarks usually appear in PDF-Viewers left of the page in a hierarchical tree. Clicking on a bookmark will jump to the given page.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text used for displaying the bookmark.

parent

A bookmark previously created by this function which is used as the parent of the new bookmark.

open

If open is unequal to zero the bookmark will be shown open by the pdf viewer.

Valor Retornado

The returned value is a reference for the bookmark. It is only used if the bookmark shall be used as a parent. The value is greater zero if the function succeeds. In case of an error zero will be returned.

Veja Também

  • ps_add_launchlink() - Adds link which launches file
  • ps_add_pdflink() - Adds link to a page in a second pdf document
  • ps_add_weblink() - Adds link to a web location

PS Funções
ps_add_launchlink
PS Funções


Adds link which launches file

ps_add_bookmark
ps_add_locallink
PS Funções
PHP Manual

ps_add_launchlink

(PECL ps >= 1.1.0)

ps_add_launchlink — Adds link which launches file

Descrição

bool ps_add_launchlink ( resource $psdoc , float $llx , float $lly , float $urx , float $ury , string $filename )

Places a hyperlink at the given position pointing to a file program which is being started when clicked on. The hyperlink's source position is a rectangle with its lower left corner at (llx, lly) and its upper right corner at (urx, ury). The rectangle has by default a thin blue border.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

llx

The x-coordinate of the lower left corner.

lly

The y-coordinate of the lower left corner.

urx

The x-coordinate of the upper right corner.

ury

The y-coordinate of the upper right corner.

filename

The path of the program to be started, when the link is clicked on.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_add_locallink() - Adds link to a page in the same document
  • ps_add_pdflink() - Adds link to a page in a second pdf document
  • ps_add_weblink() - Adds link to a web location

ps_add_bookmark
ps_add_locallink
PS Funções


Adds link to a page in the same document

ps_add_launchlink
ps_add_note
PS Funções
PHP Manual

ps_add_locallink

(PECL ps >= 1.1.0)

ps_add_locallink — Adds link to a page in the same document

Descrição

bool ps_add_locallink ( resource $psdoc , float $llx , float $lly , float $urx , float $ury , int $page , string $dest )

Places a hyperlink at the given position pointing to a page in the same document. Clicking on the link will jump to the given page. The first page in a document has number 1.

The hyperlink's source position is a rectangle with its lower left corner at (llx, lly) and its upper right corner at (urx, ury). The rectangle has by default a thin blue border.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

llx

The x-coordinate of the lower left corner.

lly

The y-coordinate of the lower left corner.

urx

The x-coordinate of the upper right corner.

ury

The y-coordinate of the upper right corner.

page

The number of the page displayed when clicking on the link.

dest

The parameter dest determines how the document is being viewed. It can be fitpage, fitwidth, fitheight, or fitbbox.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_add_launchlink() - Adds link which launches file
  • ps_add_pdflink() - Adds link to a page in a second pdf document
  • ps_add_weblink() - Adds link to a web location

ps_add_launchlink
ps_add_note
PS Funções


Adds note to current page

ps_add_locallink
ps_add_pdflink
PS Funções
PHP Manual

ps_add_note

(PECL ps >= 1.1.0)

ps_add_note — Adds note to current page

Descrição

bool ps_add_note ( resource $psdoc , float $llx , float $lly , float $urx , float $ury , string $contents , string $title , string $icon , int $open )

Adds a note at a certain position on the page. Notes are like little rectangular sheets with text on it, which can be placed anywhere on a page. They are shown either folded or unfolded. If unfolded, the specified icon is used as a placeholder.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

llx

The x-coordinate of the lower left corner.

lly

The y-coordinate of the lower left corner.

urx

The x-coordinate of the upper right corner.

ury

The y-coordinate of the upper right corner.

contents

The text of the note.

title

The title of the note as displayed in the header of the note.

icon

The icon shown if the note is folded. This parameter can be set to comment, insert, note, paragraph, newparagraph, key, or help.

open

If open is unequal to zero the note will be shown unfolded after opening the document with a pdf viewer.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_add_pdflink() - Adds link to a page in a second pdf document
  • ps_add_launchlink() - Adds link which launches file
  • ps_add_locallink() - Adds link to a page in the same document
  • ps_add_weblink() - Adds link to a web location

ps_add_locallink
ps_add_pdflink
PS Funções


Adds link to a page in a second pdf document

ps_add_note
ps_add_weblink
PS Funções
PHP Manual

ps_add_pdflink

(PECL ps >= 1.1.0)

ps_add_pdflink — Adds link to a page in a second pdf document

Descrição

bool ps_add_pdflink ( resource $psdoc , float $llx , float $lly , float $urx , float $ury , string $filename , int $page , string $dest )

Places a hyperlink at the given position pointing to a second pdf document. Clicking on the link will branch to the document at the given page. The first page in a document has number 1.

The hyperlink's source position is a rectangle with its lower left corner at (llx, lly) and its upper right corner at (urx, ury). The rectangle has by default a thin blue border.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

llx

The x-coordinate of the lower left corner.

lly

The y-coordinate of the lower left corner.

urx

The x-coordinate of the upper right corner.

ury

The y-coordinate of the upper right corner.

filename

The name of the pdf document to be opened when clicking on this link.

page

The page number of the destination pdf document

dest

The parameter dest determines how the document is being viewed. It can be fitpage, fitwidth, fitheight, or fitbbox.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_add_launchlink() - Adds link which launches file
  • ps_add_locallink() - Adds link to a page in the same document
  • ps_add_weblink() - Adds link to a web location

ps_add_note
ps_add_weblink
PS Funções


Adds link to a web location

ps_add_pdflink
ps_arc
PS Funções
PHP Manual

ps_add_weblink

(PECL ps >= 1.1.0)

ps_add_weblink — Adds link to a web location

Descrição

bool ps_add_weblink ( resource $psdoc , float $llx , float $lly , float $urx , float $ury , string $url )

Places a hyperlink at the given position pointing to a web page. The hyperlink's source position is a rectangle with its lower left corner at (llx, lly) and its upper right corner at (urx, ury). The rectangle has by default a thin blue border.

A nota não será visível se o documento for impresso ou visualizado mas será mostrado se o documento for convertido para para o pdf pelo Acrobat Distiller™ ou Ghostview.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

llx

The x-coordinate of the lower left corner.

lly

The y-coordinate of the lower left corner.

urx

The x-coordinate of the upper right corner.

ury

The y-coordinate of the upper right corner.

url

The url of the hyperlink to be opened when clicking on this link, e.g. http://www.php.net.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_add_launchlink() - Adds link which launches file
  • ps_add_locallink() - Adds link to a page in the same document
  • ps_add_pdflink() - Adds link to a page in a second pdf document

ps_add_pdflink
ps_arc
PS Funções


Draws an arc counterclockwise

ps_add_weblink
ps_arcn
PS Funções
PHP Manual

ps_arc

(PECL ps >= 1.1.0)

ps_arc — Draws an arc counterclockwise

Descrição

bool ps_arc ( resource $psdoc , float $x , float $y , float $radius , float $alpha , float $beta )

Draws a portion of a circle with at middle point at (x, y). The arc starts at an angle of alpha and ends at an angle of beta. It is drawn counterclockwise (use ps_arcn() to draw clockwise). The subpath added to the current path starts on the arc at angle alpha and ends on the arc at angle beta.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

The x-coordinate of the circle's middle point.

y

The y-coordinate of the circle's middle point.

radius

The radius of the circle

alpha

The start angle given in degrees.

beta

The end angle given in degrees.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_arcn() - Draws an arc clockwise

ps_add_weblink
ps_arcn
PS Funções


Draws an arc clockwise

ps_arc
ps_begin_page
PS Funções
PHP Manual

ps_arcn

(PECL ps >= 1.1.0)

ps_arcn — Draws an arc clockwise

Descrição

bool ps_arcn ( resource $psdoc , float $x , float $y , float $radius , float $alpha , float $beta )

Draws a portion of a circle with at middle point at (x, y). The arc starts at an angle of alpha and ends at an angle of beta. It is drawn clockwise (use ps_arc() to draw counterclockwise). The subpath added to the current path starts on the arc at angle beta and ends on the arc at angle alpha.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

The x-coordinate of the circle's middle point.

y

The y-coordinate of the circle's middle point.

radius

The radius of the circle

alpha

The starting angle given in degrees.

beta

The end angle given in degrees.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_arc() - Draws an arc counterclockwise

ps_arc
ps_begin_page
PS Funções


Start a new page

ps_arcn
ps_begin_pattern
PS Funções
PHP Manual

ps_begin_page

(PECL ps >= 1.1.0)

ps_begin_page — Start a new page

Descrição

bool ps_begin_page ( resource $psdoc , float $width , float $height )

Starts a new page. Although the parameters width and height imply a different page size for each page, this is not possible in PostScript. The first call of ps_begin_page() will set the page size for the whole document. Consecutive calls will have no effect, except for creating a new page. The situation is different if you intent to convert the PostScript document into PDF. This function places pdfmarks into the document which can set the size for each page indiviually. The resulting PDF document will have different page sizes.

Though PostScript does not know different page sizes, pslib places a bounding box for each page into the document. This size is evaluated by some PostScript viewers and will have precedence over the BoundingBox in the Header of the document. This can lead to unexpected results when you set a BoundingBox whose lower left corner is not (0, 0), because the bounding box of the page will always have a lower left corner (0, 0) and overwrites the global setting.

Each page is encapsulated into save/restore. This means, that most of the settings made on one page will not be retained on the next page.

If there is up to the first call of ps_begin_page() no call of ps_findfont(), then the header of the PostScript document will be output and the bounding box will be set to the size of the first page. The lower left corner of the bounding box is set to (0, 0). If ps_findfont() was called before, then the header has been output already, and the document will not have a valid bounding box. In order to prevent this, one should call ps_set_info() to set the info field BoundingBox and possibly Orientation before any ps_findfont() or ps_begin_page() calls.

Nota:

Up to version 0.2.6 of pslib, this function will always overwrite the BoundingBox and Orientation, if it has been set before with ps_set_info() and ps_findfont() has not been called before.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

width

The width of the page in pixel, e.g. 596 for A4 format.

height

The height of the page in pixel, e.g. 842 for A4 format.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_end_page() - End a page
  • ps_findfont() - Loads a font
  • ps_set_info() - Sets information fields of document

ps_arcn
ps_begin_pattern
PS Funções


Start a new pattern

ps_begin_page
ps_begin_template
PS Funções
PHP Manual

ps_begin_pattern

(PECL ps >= 1.2.0)

ps_begin_pattern — Start a new pattern

Descrição

int ps_begin_pattern ( resource $psdoc , float $width , float $height , float $xstep , float $ystep , int $painttype )

Starts a new pattern. A pattern is like a page containing e.g. a drawing which can be used for filling areas. It is used like a color by calling ps_setcolor() and setting the color space to pattern.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

width

The width of the pattern in pixel.

height

The height of the pattern in pixel.

x-step

The distance in pixel of placements of the pattern in horizontal direction.

y-step

The distance in pixel of placements of the pattern in vertical direction.

painttype

Must be 1 or 2.

Valor Retornado

The identifier of the pattern or FALSE on failure.

Exemplos

Exemplo #1 Creating and using a pattern

<?php
$ps = ps_new();

if (!ps_open_file($ps, "pattern.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_parameter($ps, "warning", "true");
ps_set_info($ps, "Creator", "pattern.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Pattern example");

$pspattern = ps_begin_pattern($ps, 10.0, 10.0, 10.0, 10.0, 1);
ps_setlinewidth($ps, 0.2);
ps_setcolor($ps, "stroke", "rgb", 0.0, 0.0, 1.0, 0.0);
ps_moveto($ps, 0, 0);
ps_lineto($ps, 7, 7);
ps_stroke($ps);
ps_moveto($ps, 0, 7);
ps_lineto($ps, 7, 0);
ps_stroke($ps);
ps_end_pattern($ps);

ps_begin_page($ps, 596, 842);
ps_setcolor($ps, "both", "pattern", $pspattern, 0.0, 0.0, 0.0);
ps_rect($ps, 50, 400, 200, 200);
ps_fill($ps);
ps_end_page($ps);

ps_close($ps);
ps_delete($ps);
?>

Veja Também

  • ps_end_pattern() - End a pattern
  • ps_setcolor() - Sets current color
  • ps_shading_pattern() - Creates a pattern based on a shading

ps_begin_page
ps_begin_template
PS Funções


Start a new template

ps_begin_pattern
ps_circle
PS Funções
PHP Manual

ps_begin_template

(PECL ps >= 1.2.0)

ps_begin_template — Start a new template

Descrição

int ps_begin_template ( resource $psdoc , float $width , float $height )

Starts a new template. A template is called a form in the postscript language. It is created similar to a pattern but used like an image. Templates are often used for drawings which are placed several times through out the document, e.g. like a company logo. All drawing functions may be used within a template. The template will not be drawn until it is placed by ps_place_image().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

width

The width of the template in pixel.

height

The height of the template in pixel.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Creating and using a template

<?php
$ps = ps_new();

if (!ps_open_file($ps, "template.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_parameter($ps, "warning", "true");
ps_set_info($ps, "Creator", "template.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Template example");

$pstemplate = ps_begin_template($ps, 30.0, 30.0);
ps_moveto($ps, 0, 0);
ps_lineto($ps, 30, 30);
ps_moveto($ps, 0, 30);
ps_lineto($ps, 30, 0);
ps_stroke($ps);
ps_end_template($ps);

ps_begin_page($ps, 596, 842);
ps_place_image($ps, $pstemplate, 20.0, 20.0, 1.0);
ps_place_image($ps, $pstemplate, 50.0, 30.0, 0.5);
ps_place_image($ps, $pstemplate, 70.0, 70.0, 0.6);
ps_place_image($ps, $pstemplate, 30.0, 50.0, 1.3);
ps_end_page($ps);

ps_close($ps);
ps_delete($ps);
?>

Veja Também

  • ps_end_template() - End a template

ps_begin_pattern
ps_circle
PS Funções


Draws a circle

ps_begin_template
ps_clip
PS Funções
PHP Manual

ps_circle

(PECL ps >= 1.1.0)

ps_circle — Draws a circle

Descrição

bool ps_circle ( resource $psdoc , float $x , float $y , float $radius )

Draws a circle with its middle point at (x, y). The circle starts and ends at position (x+radius, y). If this function is called outside a path it will start a new path. If it is called within a path it will add the circle as a subpath. If the last drawing operation does not end in point (x+radius, y) then there will be a gap in the path.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

The x-coordinate of the circle's middle point.

y

The y-coordinate of the circle's middle point.

radius

The radius of the circle

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_arc() - Draws an arc counterclockwise
  • ps_arcn() - Draws an arc clockwise

ps_begin_template
ps_clip
PS Funções


Clips drawing to current path

ps_circle
ps_close_image
PS Funções
PHP Manual

ps_clip

(PECL ps >= 1.1.0)

ps_clip — Clips drawing to current path

Descrição

bool ps_clip ( resource $psdoc )

Takes the current path and uses it to define the border of a clipping area. Everything drawn outside of that area will not be visible.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_closepath() - Closes path

ps_circle
ps_close_image
PS Funções


Closes image and frees memory

ps_clip
ps_close
PS Funções
PHP Manual

ps_close_image

(PECL ps >= 1.1.0)

ps_close_image — Closes image and frees memory

Descrição

void ps_close_image ( resource $psdoc , int $imageid )

Closes an image and frees its resources. Once an image is closed it cannot be used anymore.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

imageid

Resource identifier of the image as returned by ps_open_image() or ps_open_image_file().

Valor Retornado

Returns NULL on success or FALSE on failure.

Veja Também

  • ps_open_image() - Reads an image for later placement
  • ps_open_image_file() - Opens image from file

ps_clip
ps_close
PS Funções


Closes a PostScript document

ps_close_image
ps_closepath_stroke
PS Funções
PHP Manual

ps_close

(PECL ps >= 1.1.0)

ps_close — Closes a PostScript document

Descrição

bool ps_close ( resource $psdoc )

Closes the PostScript document.

This function writes the trailer of the PostScript document. It also writes the bookmark tree. ps_close() does not free any resources, which is done by ps_delete().

This function is also called by ps_delete() if it has not been called before.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_open_file() - Opens a file for output
  • ps_delete() - Deletes all resources of a PostScript document

ps_close_image
ps_closepath_stroke
PS Funções


Closes and strokes path

ps_close
ps_closepath
PS Funções
PHP Manual

ps_closepath_stroke

(PECL ps >= 1.1.0)

ps_closepath_stroke — Closes and strokes path

Descrição

bool ps_closepath_stroke ( resource $psdoc )

Connects the last point with first point of a path and draws the resulting closed line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_closepath() - Closes path

ps_close
ps_closepath
PS Funções


Closes path

ps_closepath_stroke
ps_continue_text
PS Funções
PHP Manual

ps_closepath

(PECL ps >= 1.1.0)

ps_closepath — Closes path

Descrição

bool ps_closepath ( resource $psdoc )

Connects the last point with the first point of a path. The resulting path can be used for stroking, filling, clipping, etc..

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_clip() - Clips drawing to current path
  • ps_closepath_stroke() - Closes and strokes path

ps_closepath_stroke
ps_continue_text
PS Funções


Continue text in next line

ps_closepath
ps_curveto
PS Funções
PHP Manual

ps_continue_text

(PECL ps >= 1.1.0)

ps_continue_text — Continue text in next line

Descrição

bool ps_continue_text ( resource $psdoc , string $text )

Output a text one line below the last line. The line spacing is taken from the value "leading" which must be set with ps_set_value(). The actual position of the text is determined by the values "textx" and "texty" which can be requested with ps_get_value()

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text to output.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_show() - Output text
  • ps_show_xy() - Output text at given position
  • ps_show_boxed() - Output text in a box

ps_closepath
ps_curveto
PS Funções


Draws a curve

ps_continue_text
ps_delete
PS Funções
PHP Manual

ps_curveto

(PECL ps >= 1.1.0)

ps_curveto — Draws a curve

Descrição

bool ps_curveto ( resource $psdoc , float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Add a section of a cubic Bézier curve described by the three given control points to the current path.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x1

x-coordinate of first control point.

y1

y-coordinate of first control point.

x2

x-coordinate of second control point.

y2

y-coordinate of second control point.

x3

x-coordinate of third control point.

y3

y-coordinate of third control point.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_lineto() - Draws a line

ps_continue_text
ps_delete
PS Funções


Deletes all resources of a PostScript document

ps_curveto
ps_end_page
PS Funções
PHP Manual

ps_delete

(PECL ps >= 1.1.0)

ps_delete — Deletes all resources of a PostScript document

Descrição

bool ps_delete ( resource $psdoc )

Mainly frees memory used by the document. Also closes a file, if it was not closed before with ps_close(). You should in any case close the file with ps_close() before, because ps_close() not just closes the file but also outputs a trailor containing PostScript comments like the number of pages in the document and adding the bookmark hierarchy.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_close() - Closes a PostScript document

ps_curveto
ps_end_page
PS Funções


End a page

ps_delete
ps_end_pattern
PS Funções
PHP Manual

ps_end_page

(PECL ps >= 1.1.0)

ps_end_page — End a page

Descrição

bool ps_end_page ( resource $psdoc )

Ends a page which was started with ps_begin_page(). Ending a page will leave the current drawing context, which e.g. requires to reload fonts if they were loading within the page, and to set many other drawing parameters like the line width, or color..

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_begin_page() - Start a new page

ps_delete
ps_end_pattern
PS Funções


End a pattern

ps_end_page
ps_end_template
PS Funções
PHP Manual

ps_end_pattern

(PECL ps >= 1.2.0)

ps_end_pattern — End a pattern

Descrição

bool ps_end_pattern ( resource $psdoc )

Ends a pattern which was started with ps_begin_pattern(). Once a pattern has been ended, it can be used like a color to fill areas.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_begin_pattern() - Start a new pattern

ps_end_page
ps_end_template
PS Funções


End a template

ps_end_pattern
ps_fill_stroke
PS Funções
PHP Manual

ps_end_template

(PECL ps >= 1.2.0)

ps_end_template — End a template

Descrição

bool ps_end_template ( resource $psdoc )

Ends a template which was started with ps_begin_template(). Once a template has been ended, it can be used like an image.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_begin_template() - Start a new template

ps_end_pattern
ps_fill_stroke
PS Funções


Fills and strokes the current path

ps_end_template
ps_fill
PS Funções
PHP Manual

ps_fill_stroke

(PECL ps >= 1.1.0)

ps_fill_stroke — Fills and strokes the current path

Descrição

bool ps_fill_stroke ( resource $psdoc )

Fills and draws the path constructed with previously called drawing functions like ps_lineto().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_fill() - Fills the current path
  • ps_stroke() - Draws the current path

ps_end_template
ps_fill
PS Funções


Fills the current path

ps_fill_stroke
ps_findfont
PS Funções
PHP Manual

ps_fill

(PECL ps >= 1.1.0)

ps_fill — Fills the current path

Descrição

bool ps_fill ( resource $psdoc )

Fills the path constructed with previously called drawing functions like ps_lineto().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_fill_stroke() - Fills and strokes the current path
  • ps_stroke() - Draws the current path

ps_fill_stroke
ps_findfont
PS Funções


Loads a font

ps_fill
ps_get_buffer
PS Funções
PHP Manual

ps_findfont

(PECL ps >= 1.1.0)

ps_findfont — Loads a font

Descrição

int ps_findfont ( resource $psdoc , string $fontname , string $encoding [, bool $embed = false ] )

Loads a font for later use. Before text is output with a loaded font it must be set with ps_setfont(). This function needs the adobe font metric file in order to calculate the space used up by the characters. A font which is loaded within a page will only be available on that page. Fonts which are to be used in the complete document have to be loaded before the first call of ps_begin_page(). Calling ps_findfont() between pages will make that font available for all following pages.

The name of the afm file must be fontname.afm. If the font shall be embedded the file fontname.pfb containing the font outline must be present as well.

Calling ps_findfont() before the first page requires to output the postscript header which includes the BoundingBox for the whole document. Usually the BoundingBox is set with the first call of ps_begin_page() which now comes after ps_findfont(). Consequently the BoundingBox has not been set and a warning will be issued when ps_findfont() is called. In order to prevent this situation, one should call ps_set_parameter() to set the BoundingBox before ps_findfont() is called.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

fontname

The name of the font.

encoding

ps_findfont() will try to load the file passed in the parameter encoding. Encoding files are of the same syntax as those used by dvips(1). They contain a font encoding vector (which is currently not used but must be present) and a list of extra ligatures to extend the list of ligatures derived from the afm file.

encoding can be NULL or the empty string if the default encoding (TeXBase1) shall be used.

If the encoding is set to builtin then there will be no reencoding and the font specific encoding will be used. This is very useful with symbol fonts.

embed

If set to a value >0 the font will be embedded into the document. This requires the font outline (.pfb file) to be present.

Valor Retornado

Returns the identifier of the font or zero in case of an error. The identifier is a positive number.

Veja Também

  • ps_begin_page() - Start a new page
  • ps_setfont() - Sets font to use for following output

ps_fill
ps_get_buffer
PS Funções


Fetches the full buffer containig the generated PS data

ps_findfont
ps_get_parameter
PS Funções
PHP Manual

ps_get_buffer

(PECL ps >= 1.1.0)

ps_get_buffer — Fetches the full buffer containig the generated PS data

Descrição

string ps_get_buffer ( resource $psdoc )

This function is not implemented yet. It will always return an empty string. The idea for a later implementation is to write the contents of the postscript file into an internal buffer if in memory creation is requested, and retrieve the buffer content with this function. Currently, documents created in memory are send to the browser without buffering.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Veja Também

  • ps_open_file() - Opens a file for output

ps_findfont
ps_get_parameter
PS Funções


Gets certain parameters

ps_get_buffer
ps_get_value
PS Funções
PHP Manual

ps_get_parameter

(PECL ps >= 1.1.0)

ps_get_parameter — Gets certain parameters

Descrição

string ps_get_parameter ( resource $psdoc , string $name [, float $modifier ] )

Gets several parameters which were directly set by ps_set_parameter() or indirectly by one of the other functions. Parameters are by definition string values. This function cannot be used to retrieve resources which were also set by ps_set_parameter().

The parameter name can have the following values.

fontname

The name of the currently active font or the font whose identifier is passed in parameter modifier.

fontencoding

The encoding of the currently active font.

dottedversion

The version of the underlying pslib library in the format <major>.<minor>.<subminor>

scope

The current drawing scope. Can be object, document, null, page, pattern, path, template, prolog, font, glyph.

ligaturedisolvechar

The character which dissolves a ligature. If your are using a font which contains the ligature `ff' and `|' is the char to dissolve the ligature, then `f|f' will result in two `f' instead of the ligature `ff'.

imageencoding

The encoding used for encoding images. Can be either hex or 85. hex encoding uses two bytes in the postscript file each byte in the image. 85 stand for Ascii85 encoding.

linenumbermode

Set to paragraph if lines are numbered within a paragraph or box if they are numbered within the surrounding box.

linebreak

Only used if text is output with ps_show_boxed(). If set to true a carriage return will add a line break.

parbreak

Only used if text is output with ps_show_boxed(). If set to true a carriage return will start a new paragraph.

hyphenation

Only used if text is output with ps_show_boxed(). If set to true the paragraph will be hyphenated if a hypen dictionary is set and exists.

hyphendict

Filename of the dictionary used for hyphenation pattern.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

name

Name of the parameter.

modifier

An identifier needed if a parameter of a resource is requested, e.g. the size of an image. In such a case the resource id is passed.

Valor Retornado

Returns the value of the parameter or FALSE on failure.

Veja Também

  • ps_set_parameter() - Sets certain parameters

ps_get_buffer
ps_get_value
PS Funções


Gets certain values

ps_get_parameter
ps_hyphenate
PS Funções
PHP Manual

ps_get_value

(PECL ps >= 1.1.0)

ps_get_value — Gets certain values

Descrição

float ps_get_value ( resource $psdoc , string $name [, float $modifier ] )

Gets several values which were set by ps_set_value(). Values are by definition float values.

The parameter name can have the following values.

fontsize

The size of the currently active font or the font whose identifier is passed in parameter modifier.

font

The currently active font itself.

imagewidth

The width of the image whose id is passed in the parameter modifier.

imageheight

The height of the image whose id is passed in the parameter modifier.

capheight

The height of a capital M in the currently active font or the font whose identifier is passed in parameter modifier.

ascender

The ascender of the currently active font or the font whose identifier is passed in parameter modifier.

descender

The descender of the currently active font or the font whose identifier is passed in parameter modifier.

italicangle

The italicangle of the currently active font or the font whose identifier is passed in parameter modifier.

underlineposition

The underlineposition of the currently active font or the font whose identifier is passed in parameter modifier.

underlinethickness

The underlinethickness of the currently active font or the font whose identifier is passed in parameter modifier.

textx

The current x-position for text output.

texty

The current y-position for text output.

textrendering

The current mode for text rendering.

textrise

The space by which text is risen above the base line.

leading

The distance between text lines in points.

wordspacing

The space between words as a multiple of the width of a space char.

charspacing

The space between chars. If charspacing is != 0.0 ligatures will always be dissolved.

hyphenminchars

Minimum number of chars hyphenated at the end of a word.

parindent

Indention of the first n line in a paragraph.

numindentlines

Number of line in a paragraph to indent if parindent != 0.0.

parskip

Distance between paragraphs.

linenumberspace

Overall space in front of each line for the line number.

linenumbersep

Space between the line and the line number.

major

The major version number of pslib.

minor

The minor version number of pslib.

subminor, revision

The subminor version number of pslib.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

name

Name of the value.

modifier

The parameter modifier specifies the resource for which the value is to be retrieved. This can be the id of a font or an image.

Valor Retornado

Returns the value of the parameter or FALSE.

Veja Também

  • ps_set_value() - Sets certain values

ps_get_parameter
ps_hyphenate
PS Funções


Hyphenates a word

ps_get_value
ps_include_file
PS Funções
PHP Manual

ps_hyphenate

(PECL ps >= 1.1.1)

ps_hyphenate — Hyphenates a word

Descrição

array ps_hyphenate ( resource $psdoc , string $text )

Hyphenates the passed word. ps_hyphenate() evaluates the value hyphenminchars (set by ps_set_value()) and the parameter hyphendict (set by ps_set_parameter()). hyphendict must be set before calling this function.

This function requires the locale category LC_CTYPE to be set properly. This is done when the extension is initialized by using the environment variables. On Unix systems read the man page of locale for more information.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

text should not contain any non alpha characters. Possible positions for breaks are returned in an array of interger numbers. Each number is the position of the char in text after which a hyphenation can take place.

Valor Retornado

An array of integers indicating the position of possible breaks in the text or FALSE on failure.

Exemplos

Exemplo #1 Hyphennate a text

<?php
$word = "Koordinatensystem";
$psdoc = ps_new();
ps_set_parameter($psdoc, "hyphendict", "hyph_de.dic");
$hyphens = ps_hyphenate($psdoc, $word);
for($i=0; $i<strlen($word); $i++) {
  echo $word[$i];
  if(in_array($i, $hyphens))
    echo "-";
}
ps_delete($psdoc);
?>

O exemplo acima irá imprimir:

Ko-ordi-na-ten-sys-tem

Veja Também

  • ps_show_boxed() - Output text in a box
  • locale(1)

ps_get_value
ps_include_file
PS Funções


Reads an external file with raw PostScript code

ps_hyphenate
ps_lineto
PS Funções
PHP Manual

ps_include_file

(PECL ps >= 1.3.4)

ps_include_file — Reads an external file with raw PostScript code

Descrição

bool ps_include_file ( resource $psdoc , string $file )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

file

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_hyphenate
ps_lineto
PS Funções


Draws a line

ps_include_file
ps_makespotcolor
PS Funções
PHP Manual

ps_lineto

(PECL ps >= 1.1.0)

ps_lineto — Draws a line

Descrição

bool ps_lineto ( resource $psdoc , float $x , float $y )

Adds a straight line from the current point to the given coordinates to the current path. Use ps_moveto() to set the starting point of the line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

x-coordinate of the end point of the line.

y

y-coordinate of the end point of the line.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Drawing a rectangle

<?php
$ps = ps_new();
if (!ps_open_file($ps, "rectangle.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_info($ps, "Creator", "rectangle.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Lineto example");

ps_begin_page($ps, 596, 842);
ps_moveto($ps, 100, 100);
ps_lineto($ps, 100, 200);
ps_lineto($ps, 200, 200);
ps_lineto($ps, 200, 100);
ps_lineto($ps, 100, 100);
ps_stroke($ps);
ps_end_page($ps);

ps_delete($ps);
?>

Veja Também

  • ps_moveto() - Sets current point

ps_include_file
ps_makespotcolor
PS Funções


Create spot color

ps_lineto
ps_moveto
PS Funções
PHP Manual

ps_makespotcolor

(PECL ps >= 1.1.0)

ps_makespotcolor — Create spot color

Descrição

int ps_makespotcolor ( resource $psdoc , string $name [, int $reserved = 0 ] )

Creates a spot color from the current fill color. The fill color must be defined in rgb, cmyk or gray colorspace. The spot color name can be an arbitrary name. A spot color can be set as any color with ps_setcolor(). When the document is not printed but displayed by an postscript viewer the given color in the specified color space is use.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

name

Name of the spot color, e.g. Pantone 5565.

Valor Retornado

The id of the new spot color or 0 in case of an error.

Exemplos

Exemplo #1 Creating and using a spot color

<?php
$ps = ps_new();
if (!ps_open_file($ps, "spotcolor.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_info($ps, "Creator", "spotcolor.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Spot color example");

ps_begin_page($ps, 596, 842);
ps_setcolor($ps, "fill", "cmyk", 0.37, 0.0, 0.34, 0.34);
$spotcolor = ps_makespotcolor($ps, "PANTONE 5565 C", 0);
ps_setcolor($ps, "fill", "spot", $spotcolor, 0.5, 0.0, 0.0);
ps_moveto($ps, 100, 100);
ps_lineto($ps, 100, 200);
ps_lineto($ps, 200, 200);
ps_lineto($ps, 200, 100);
ps_lineto($ps, 100, 100);
ps_fill($ps);
ps_end_page($ps);

ps_delete($ps);
?>

This example creates the spot color "PANTONE 5565 C" which is a darker green (olive) and fills a rectangle with 50% intensity.

Veja Também

  • ps_setcolor() - Sets current color

ps_lineto
ps_moveto
PS Funções


Sets current point

ps_makespotcolor
ps_new
PS Funções
PHP Manual

ps_moveto

(PECL ps >= 1.1.0)

ps_moveto — Sets current point

Descrição

bool ps_moveto ( resource $psdoc , float $x , float $y )

Sets the current point to new coordinates. If this is the first call of ps_moveto() after a previous path has been ended then it will start a new path. If this function is called in the middle of a path it will just set the current point and start a subpath.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

x-coordinate of the point to move to.

y

y-coordinate of the point to move to.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_lineto() - Draws a line

ps_makespotcolor
ps_new
PS Funções


Creates a new PostScript document object

ps_moveto
ps_open_file
PS Funções
PHP Manual

ps_new

(PECL ps >= 1.1.0)

ps_new — Creates a new PostScript document object

Descrição

resource ps_new ( void )

Creates a new document instance. It does not create the file on disk or in memory, it just sets up everything. ps_new() is usually followed by a call of ps_open_file() to actually create the postscript document.

Valor Retornado

Resource of PostScript document or FALSE on failure. The return value is passed to all other functions as the first argument.

Veja Também

  • ps_delete() - Deletes all resources of a PostScript document

ps_moveto
ps_open_file
PS Funções


Opens a file for output

ps_new
ps_open_image_file
PS Funções
PHP Manual

ps_open_file

(PECL ps >= 1.1.0)

ps_open_file — Opens a file for output

Descrição

bool ps_open_file ( resource $psdoc [, string $filename ] )

Creates a new file on disk and writes the PostScript document into it. The file will be closed when ps_close() is called.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

filename

The name of the postscript file. If filename is not passed the document will be created in memory and all output will go straight to the browser.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_close() - Closes a PostScript document

ps_new
ps_open_image_file
PS Funções


Opens image from file

ps_open_file
ps_open_image
PS Funções
PHP Manual

ps_open_image_file

(PECL ps >= 1.1.0)

ps_open_image_file — Opens image from file

Descrição

int ps_open_image_file ( resource $psdoc , string $type , string $filename [, string $stringparam [, int $intparam = 0 ]] )

Loads an image for later use.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The type of the image. Possible values are png, jpeg, or eps.

filename

The name of the file containing the image data.

stringparam

Not used.

intparam

Not used.

Valor Retornado

Returns identifier of image or zero in case of an error. The identifier is a positive number greater than 0.

Veja Também

  • ps_open_image() - Reads an image for later placement
  • ps_place_image() - Places image on the page
  • ps_close_image() - Closes image and frees memory

ps_open_file
ps_open_image
PS Funções


Reads an image for later placement

ps_open_image_file
ps_open_memory_image
PS Funções
PHP Manual

ps_open_image

(PECL ps >= 1.1.0)

ps_open_image — Reads an image for later placement

Descrição

int ps_open_image ( resource $psdoc , string $type , string $source , string $data , int $lenght , int $width , int $height , int $components , int $bpc , string $params )

Reads an image which is already available in memory. The parameter source is currently not evaluated and assumed to be memory. The image data is a sequence of pixels starting in th upper left corner and ending in the lower right corner. Each pixel consists of components color components, and each component has bpc bits.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The type of the image. Possible values are png, jpeg, or eps.

source

Not used.

data

The image data.

length

The length of the image data.

width

The width of the image.

height

The height of the image.

components

The number of components for each pixel. This can be 1 (gray scale images), 3 (rgb images), or 4 (cmyk, rgba images).

bpc

Number of bits per component (quite often 8).

params

Valor Retornado

Returns identifier of image or zero in case of an error. The identifier is a positive number greater than 0.

Veja Também

  • ps_open_image_file() - Opens image from file
  • ps_place_image() - Places image on the page
  • ps_close_image() - Closes image and frees memory

ps_open_image_file
ps_open_memory_image
PS Funções


Takes an GD image and returns an image for placement in a PS document

ps_open_image
ps_place_image
PS Funções
PHP Manual

ps_open_memory_image

(PECL ps >= 1.1.0)

ps_open_memory_image — Takes an GD image and returns an image for placement in a PS document

Descrição

int ps_open_memory_image ( resource $psdoc , int $gd )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

gd

ps_open_image
ps_place_image
PS Funções


Places image on the page

ps_open_memory_image
ps_rect
PS Funções
PHP Manual

ps_place_image

(PECL ps >= 1.1.0)

ps_place_image — Places image on the page

Descrição

bool ps_place_image ( resource $psdoc , int $imageid , float $x , float $y , float $scale )

Places a formerly loaded image on the page. The image can be scaled. If the image shall be rotated as well, you will have to rotate the coordinate system before with ps_rotate().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

imageid

The resource identifier of the image as returned by ps_open_image() or ps_open_image_file().

x

x-coordinate of the lower left corner of the image.

y

y-coordinate of the lower left corner of the image.

scale

The scaling factor for the image. A scale of 1.0 will result in a resolution of 72 dpi, because each pixel is equivalent to 1 point.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_open_image() - Reads an image for later placement
  • ps_open_image_file() - Opens image from file

ps_open_memory_image
ps_rect
PS Funções


Draws a rectangle

ps_place_image
ps_restore
PS Funções
PHP Manual

ps_rect

(PECL ps >= 1.1.0)

ps_rect — Draws a rectangle

Descrição

bool ps_rect ( resource $psdoc , float $x , float $y , float $width , float $height )

Draws a rectangle with its lower left corner at (x, y). The rectangle starts and ends in its lower left corner. If this function is called outside a path it will start a new path. If it is called within a path it will add the rectangle as a subpath. If the last drawing operation does not end in the lower left corner then there will be a gap in the path.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

x-coordinate of the lower left corner of the rectangle.

y

y-coordinate of the lower left corner of the rectangle.

width

The width of the image.

height

The height of the image.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_arc() - Draws an arc counterclockwise
  • ps_cirle()
  • ps_lineto() - Draws a line

ps_place_image
ps_restore
PS Funções


Restore previously save context

ps_rect
ps_rotate
PS Funções
PHP Manual

ps_restore

(PECL ps >= 1.1.0)

ps_restore — Restore previously save context

Descrição

bool ps_restore ( resource $psdoc )

Restores a previously saved graphics context. Any call of ps_save() must be accompanied by a call to ps_restore(). All coordinate transformations, line style settings, color settings, etc. are being restored to the state before the call of ps_save().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_save() - Save current context

ps_rect
ps_rotate
PS Funções


Sets rotation factor

ps_restore
ps_save
PS Funções
PHP Manual

ps_rotate

(PECL ps >= 1.1.0)

ps_rotate — Sets rotation factor

Descrição

bool ps_rotate ( resource $psdoc , float $rot )

Sets the rotation of the coordinate system.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

rot

Angle of rotation in degree.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Rotation of the coordinate system

<?php
function rectangle($ps) {
    ps_moveto($ps, 0, 0);
    ps_lineto($ps, 0, 50);
    ps_lineto($ps, 50, 50);
    ps_lineto($ps, 50, 0);
    ps_lineto($ps, 0, 0);
    ps_stroke($ps);
}

$ps = ps_new();
if (!ps_open_file($ps, "rotation.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_info($ps, "Creator", "rotation.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Rotation example");
ps_set_info($ps, "BoundingBox", "0 0 596 842");

$psfont = ps_findfont($ps, "Helvetica", "", 0);

ps_begin_page($ps, 596, 842);
ps_set_text_pos($ps, 100, 100);
ps_save($ps);
ps_translate($ps, 100, 100);
ps_rotate($ps, 45);
rectangle($ps);
ps_restore($ps);
ps_setfont($ps, $psfont, 8.0);
ps_show($ps, "Text without rotation");
ps_end_page($ps);

ps_delete($ps);
?>

The above example illustrates a very common way of rotating a graphic (in this case just a rectangle) by simply rotating the coordinate system. Since the graphic's coordinate system assumes (0,0) to be the origin, the page coordinate system is also translated to place the graphics not on the edge of the page. Pay attention to the order of ps_translate() and ps_rotate(). In the above case the rectancle is rotated around the point (100, 100) in the untranslated coordinate system. Switching the two statements has a completely different result.

In order to output the following text at the original position, all modifications of the coordinate system are encapsulated in ps_save() and ps_restore().

Veja Também

  • ps_scale() - Sets scaling factor
  • ps_translate() - Sets translation

ps_restore
ps_save
PS Funções


Save current context

ps_rotate
ps_scale
PS Funções
PHP Manual

ps_save

(PECL ps >= 1.1.0)

ps_save — Save current context

Descrição

bool ps_save ( resource $psdoc )

Saves the current graphics context, containing colors, translation and rotation settings and some more. A saved context can be restored with ps_restore().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_restore() - Restore previously save context

ps_rotate
ps_scale
PS Funções


Sets scaling factor

ps_save
ps_set_border_color
PS Funções
PHP Manual

ps_scale

(PECL ps >= 1.1.0)

ps_scale — Sets scaling factor

Descrição

bool ps_scale ( resource $psdoc , float $x , float $y )

Sets horizontal and vertical scaling of the coordinate system.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

Scaling factor in horizontal direction.

y

Scaling factor in vertical direction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_rotate() - Sets rotation factor
  • ps_translate() - Sets translation

ps_save
ps_set_border_color
PS Funções


Sets color of border for annotations

ps_scale
ps_set_border_dash
PS Funções
PHP Manual

ps_set_border_color

(PECL ps >= 1.1.0)

ps_set_border_color — Sets color of border for annotations

Descrição

bool ps_set_border_color ( resource $psdoc , float $red , float $green , float $blue )

Links added with one of the functions ps_add_weblink(), ps_add_pdflink(), etc. will be displayed with a surounded rectangle when the postscript document is converted to pdf and viewed in a pdf viewer. This rectangle is not visible in the postscript document. This function sets the color of the rectangle's border line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

red

The red component of the border color.

green

The green component of the border color.

blue

The blue component of the border color.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_set_border_dash() - Sets length of dashes for border of annotations
  • ps_set_border_style() - Sets border style of annotations

ps_scale
ps_set_border_dash
PS Funções


Sets length of dashes for border of annotations

ps_set_border_color
ps_set_border_style
PS Funções
PHP Manual

ps_set_border_dash

(PECL ps >= 1.1.0)

ps_set_border_dash — Sets length of dashes for border of annotations

Descrição

bool ps_set_border_dash ( resource $psdoc , float $black , float $white )

Links added with one of the functions ps_add_weblink(), ps_add_pdflink(), etc. will be displayed with a surounded rectangle when the postscript document is converted to pdf and viewed in a pdf viewer. This rectangle is not visible in the postscript document. This function sets the length of the black and white portion of a dashed border line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

black

The length of the dash.

white

The length of the gap between dashes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_set_border_color() - Sets color of border for annotations
  • ps_set_border_style() - Sets border style of annotations

ps_set_border_color
ps_set_border_style
PS Funções


Sets border style of annotations

ps_set_border_dash
ps_set_info
PS Funções
PHP Manual

ps_set_border_style

(PECL ps >= 1.1.0)

ps_set_border_style — Sets border style of annotations

Descrição

bool ps_set_border_style ( resource $psdoc , string $style , float $width )

Links added with one of the functions ps_add_weblink(), ps_add_pdflink(), etc. will be displayed with a surounded rectangle when the postscript document is converted to pdf and viewed in a pdf viewer. This rectangle is not visible in the postscript document. This function sets the appearance and width of the border line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

style

style can be solid or dashed.

width

The line width of the border.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_set_border_color() - Sets color of border for annotations
  • ps_set_border_dash() - Sets length of dashes for border of annotations

ps_set_border_dash
ps_set_info
PS Funções


Sets information fields of document

ps_set_border_style
ps_set_parameter
PS Funções
PHP Manual

ps_set_info

(PECL ps >= 1.1.0)

ps_set_info — Sets information fields of document

Descrição

bool ps_set_info ( resource $p , string $key , string $val )

Sets certain information fields of the document. This fields will be shown as a comment in the header of the PostScript file. If the document is converted to pdf this fields will also be used for the document information.

The BoundingBox is usually set to the value given to the first page. This only works if ps_findfont() has not been called before. In such cases the BoundingBox would be left unset unless you set it explicitly with this function.

This function will have no effect anymore when the header of the postscript file has been already written. It must be called before the first page or the first call of ps_findfont().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

key

The name of the information field to set. The values which can be set are Keywords, Subject, Title, Creator, Author, BoundingBox, and Orientation. Be aware that some of them has a meaning to PostScript viewers.

value

The value of the information field. The field Orientation can be set to either Portrait or Landscape. The BoundingBox is a string consisting of four numbers. The first two numbers are the coordinates of the lower left corner of the page. The last two numbers are the coordinates of the upper right corner.

Nota:

Up to version 0.2.6 of pslib, the BoundingBox and Orientation will be overwritten by ps_begin_page(), unless ps_findfont() has been called before.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_findfont() - Loads a font
  • ps_begin_page() - Start a new page

ps_set_border_style
ps_set_parameter
PS Funções


Sets certain parameters

ps_set_info
ps_set_text_pos
PS Funções
PHP Manual

ps_set_parameter

(PECL ps >= 1.1.0)

ps_set_parameter — Sets certain parameters

Descrição

bool ps_set_parameter ( resource $psdoc , string $name , string $value )

Sets several parameters which are used by many functions. Parameters are by definition string values.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

name

For a list of possible names see ps_get_parameter().

value

The value of the parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_get_parameters()
  • ps_set_value() - Sets certain values

ps_set_info
ps_set_text_pos
PS Funções


Sets position for text output

ps_set_parameter
ps_set_value
PS Funções
PHP Manual

ps_set_text_pos

(PECL ps >= 1.1.0)

ps_set_text_pos — Sets position for text output

Descrição

bool ps_set_text_pos ( resource $psdoc , float $x , float $y )

Set the position for the next text output. You may alternatively set the x and y value separately by calling ps_set_value() and choosing textx respectively texty as the value name.

If you want to output text at a certain position it is more convenient to use ps_show_xy() instead of setting the text position and calling ps_show().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

x-coordinate of the new text position.

y

y-coordinate of the new text position.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Placing text at a given position

<?php
$ps = ps_new();
if (!ps_open_file($ps, "text.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_info($ps, "Creator", "rectangle.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Text placement example");

ps_begin_page($ps, 596, 842);
$psfont = ps_findfont($ps, "Helvetica", "", 0);
ps_setfont($ps, $psfont, 8.0);
ps_show_xy($ps, "Some text at (100, 100)", 100, 100);

ps_set_value($ps, "textx", 100);
ps_set_value($ps, "texty", 120);
ps_show($ps, "Some text at (100, 120)");
ps_end_page($ps);

ps_delete($ps);
?>

Veja Também

  • ps_set_value() - Sets certain values
  • ps_show() - Output text

ps_set_parameter
ps_set_value
PS Funções


Sets certain values

ps_set_text_pos
ps_setcolor
PS Funções
PHP Manual

ps_set_value

(PECL ps >= 1.1.0)

ps_set_value — Sets certain values

Descrição

bool ps_set_value ( resource $psdoc , string $name , float $value )

Sets several values which are used by many functions. Parameters are by definition float values.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

name

The name can be one of the following:

textrendering

The way how text is shown.

textx

The x coordinate for text output.

texty

The y coordinate for text output.

wordspacing

The distance between words relative to the width of a space.

leading

The distance between lines in pixels.

value

The value of the parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_get_value() - Gets certain values
  • ps_set_parameter() - Sets certain parameters

ps_set_text_pos
ps_setcolor
PS Funções


Sets current color

ps_set_value
ps_setdash
PS Funções
PHP Manual

ps_setcolor

(PECL ps >= 1.1.0)

ps_setcolor — Sets current color

Descrição

bool ps_setcolor ( resource $psdoc , string $type , string $colorspace , float $c1 , float $c2 , float $c3 , float $c4 )

Sets the color for drawing, filling, or both.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The parameter type can be both, fill, or fillstroke.

colorspace

The colorspace should be one of gray, rgb, cmyk, spot, pattern. Depending on the colorspace either only the first, the first three or all parameters will be used.

c1

Depending on the colorspace this is either the red component (rgb), the cyan component (cmyk), the gray value (gray), the identifier of the spot color or the identifier of the pattern.

c2

Depending on the colorspace this is either the green component (rgb), the magenta component (cmyk).

c3

Depending on the colorspace this is either the blue component (rgb), the yellow component (cmyk).

c4

This must only be set in cmyk colorspace and specifies the black component.

Bugs

The second parameter is currently not always evaluated. The color is sometimes set for filling and drawing just as if fillstroke were passed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_set_value
ps_setdash
PS Funções


Sets appearance of a dashed line

ps_setcolor
ps_setflat
PS Funções
PHP Manual

ps_setdash

(PECL ps >= 1.1.0)

ps_setdash — Sets appearance of a dashed line

Descrição

bool ps_setdash ( resource $psdoc , float $on , float $off )

Sets the length of the black and white portions of a dashed line.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

on

The length of the dash.

off

The length of the gap between dashes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setpolydash() - Sets appearance of a dashed line

ps_setcolor
ps_setflat
PS Funções


Sets flatness

ps_setdash
ps_setfont
PS Funções
PHP Manual

ps_setflat

(PECL ps >= 1.1.0)

ps_setflat — Sets flatness

Descrição

bool ps_setflat ( resource $psdoc , float $value )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

value

The value must be between 0.2 and 1.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_setdash
ps_setfont
PS Funções


Sets font to use for following output

ps_setflat
ps_setgray
PS Funções
PHP Manual

ps_setfont

(PECL ps >= 1.1.0)

ps_setfont — Sets font to use for following output

Descrição

bool ps_setfont ( resource $psdoc , int $fontid , float $size )

Sets a font, which has to be loaded before with ps_findfont(). Outputting text without setting a font results in an error.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

fontid

The font identifier as returned by ps_findfont().

size

The size of the font.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_findfont() - Loads a font
  • ps_set_text_pos() - Sets position for text output for an example.

ps_setflat
ps_setgray
PS Funções


Sets gray value

ps_setfont
ps_setlinecap
PS Funções
PHP Manual

ps_setgray

(PECL ps >= 1.1.0)

ps_setgray — Sets gray value

Descrição

bool ps_setgray ( resource $psdoc , float $gray )

Sets the gray value for all following drawing operations.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

gray

The value must be between 0 (white) and 1 (black).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setcolor() - Sets current color

ps_setfont
ps_setlinecap
PS Funções


Sets appearance of line ends

ps_setgray
ps_setlinejoin
PS Funções
PHP Manual

ps_setlinecap

(PECL ps >= 1.1.0)

ps_setlinecap — Sets appearance of line ends

Descrição

bool ps_setlinecap ( resource $psdoc , int $type )

Sets how line ends look like.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The type of line ends. Possible values are PS_LINECAP_BUTT, PS_LINECAP_ROUND, or PS_LINECAP_SQUARED.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setlinejoin() - Sets how contected lines are joined
  • ps_setlinewidth() - Sets width of a line
  • ps_setmiterlimit() - Sets the miter limit

ps_setgray
ps_setlinejoin
PS Funções


Sets how contected lines are joined

ps_setlinecap
ps_setlinewidth
PS Funções
PHP Manual

ps_setlinejoin

(PECL ps >= 1.1.0)

ps_setlinejoin — Sets how contected lines are joined

Descrição

bool ps_setlinejoin ( resource $psdoc , int $type )

Sets how lines are joined.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The way lines are joined. Possible values are PS_LINEJOIN_MITER, PS_LINEJOIN_ROUND, or PS_LINEJOIN_BEVEL.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setlinecap() - Sets appearance of line ends
  • ps_setlinewidth() - Sets width of a line
  • ps_setmiterlimit() - Sets the miter limit

ps_setlinecap
ps_setlinewidth
PS Funções


Sets width of a line

ps_setlinejoin
ps_setmiterlimit
PS Funções
PHP Manual

ps_setlinewidth

(PECL ps >= 1.1.0)

ps_setlinewidth — Sets width of a line

Descrição

bool ps_setlinewidth ( resource $psdoc , float $width )

Sets the line width for all following drawing operations.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

width

The width of lines in points.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setlinecap() - Sets appearance of line ends
  • ps_setlinejoin() - Sets how contected lines are joined
  • ps_setmiterlimit() - Sets the miter limit

ps_setlinejoin
ps_setmiterlimit
PS Funções


Sets the miter limit

ps_setlinewidth
ps_setoverprintmode
PS Funções
PHP Manual

ps_setmiterlimit

(PECL ps >= 1.1.0)

ps_setmiterlimit — Sets the miter limit

Descrição

bool ps_setmiterlimit ( resource $psdoc , float $value )

If two lines join in a small angle and the line join is set to PS_LINEJOIN_MITER, then the resulting spike will be very long. The miter limit is the maximum ratio of the miter length (the length of the spike) and the line width.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

value

The maximum ratio between the miter length and the line width. Larger values (> 10) will result in very long spikes when two lines meet in a small angle. Keep the default unless you know what you are doing.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_setlinecap() - Sets appearance of line ends
  • ps_setlinejoin() - Sets how contected lines are joined
  • ps_setlinewidth() - Sets width of a line

ps_setlinewidth
ps_setoverprintmode
PS Funções


Sets overprint mode

ps_setmiterlimit
ps_setpolydash
PS Funções
PHP Manual

ps_setoverprintmode

(PECL ps >= 1.3.0)

ps_setoverprintmode — Sets overprint mode

Descrição

bool ps_setoverprintmode ( resource $psdoc , int $mode )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

mode

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_setmiterlimit
ps_setpolydash
PS Funções


Sets appearance of a dashed line

ps_setoverprintmode
ps_shading_pattern
PS Funções
PHP Manual

ps_setpolydash

(PECL ps >= 1.1.0)

ps_setpolydash — Sets appearance of a dashed line

Descrição

bool ps_setpolydash ( resource $psdoc , float $arr )

Sets the length of the black and white portions of a dashed line. ps_setpolydash() is used to set more complicated dash patterns.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

arr

arr is a list of length elements alternately for the black and white portion.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Drawing a dashed line

<?php
$ps = ps_new();
if (!ps_open_file($ps, "polydash.ps")) {
   print "Cannot open PostScript file\n";
     exit;
}

ps_set_info($ps, "Creator", "polydash.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Poly dash example");

ps_begin_page($ps, 596, 842);
ps_setpolydash($ps, array(10, 5, 2, 5));
ps_moveto($ps, 100, 100);
ps_lineto($ps, 200, 200);
ps_stroke($ps);
ps_end_page($ps);

ps_delete($ps);
?>

This example draws a line with a 10 and 2 points long line, and gaps of 5 points inbetween.

Veja Também

  • ps_setdash() - Sets appearance of a dashed line

ps_setoverprintmode
ps_shading_pattern
PS Funções


Creates a pattern based on a shading

ps_setpolydash
ps_shading
PS Funções
PHP Manual

ps_shading_pattern

(PECL ps >= 1.3.0)

ps_shading_pattern — Creates a pattern based on a shading

Descrição

int ps_shading_pattern ( resource $psdoc , int $shadingid , string $optlist )

Creates a pattern based on a shading, which has to be created before with ps_shading(). Shading patterns can be used like regular patterns.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

shadingid

The identifier of a shading previously created with ps_shading().

optlist

This argument is not currently used.

Valor Retornado

The identifier of the pattern or FALSE on failure.

Veja Também

  • ps_shading() - Creates a shading for later use
  • ps_shfill() - Fills an area with a shading

ps_setpolydash
ps_shading
PS Funções


Creates a shading for later use

ps_shading_pattern
ps_shfill
PS Funções
PHP Manual

ps_shading

(PECL ps >= 1.3.0)

ps_shading — Creates a shading for later use

Descrição

int ps_shading ( resource $psdoc , string $type , float $x0 , float $y0 , float $x1 , float $y1 , float $c1 , float $c2 , float $c3 , float $c4 , string $optlist )

Creates a shading, which can be used by ps_shfill() or ps_shading_pattern().

The color of the shading can be in any color space except for pattern.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

type

The type of shading can be either radial or axial. Each shading starts with the current fill color and ends with the given color values passed in the parameters c1 to c4 (see ps_setcolor() for their meaning).

x0, x1, y0, y1

The coordinates x0, y0, x1, y1 are the start and end point of the shading. If the type of shading is radial the two points are the middle points of a starting and ending circle.

c1, c2, c3, c4

See ps_setcolor() for their meaning.

optlist

If the shading is of type radial the optlist must also contain the parameters r0 and r1 with the radius of the start and end circle.

Valor Retornado

Returns the identifier of the pattern or FALSE on failure.

Veja Também

  • ps_shading_pattern() - Creates a pattern based on a shading
  • ps_shfill() - Fills an area with a shading

ps_shading_pattern
ps_shfill
PS Funções


Fills an area with a shading

ps_shading
ps_show_boxed
PS Funções
PHP Manual

ps_shfill

(PECL ps >= 1.3.0)

ps_shfill — Fills an area with a shading

Descrição

bool ps_shfill ( resource $psdoc , int $shadingid )

Fills an area with a shading, which has to be created before with ps_shading(). This is an alternative way to creating a pattern from a shading ps_shading_pattern() and using the pattern as the filling color.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

shadingid

The identifier of a shading previously created with ps_shading().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_shading() - Creates a shading for later use
  • ps_shading_pattern() - Creates a pattern based on a shading

ps_shading
ps_show_boxed
PS Funções


Output text in a box

ps_shfill
ps_show_xy2
PS Funções
PHP Manual

ps_show_boxed

(PECL ps >= 1.1.0)

ps_show_boxed — Output text in a box

Descrição

int ps_show_boxed ( resource $psdoc , string $text , float $left , float $bottom , float $width , float $height , string $hmode [, string $feature ] )

Outputs a text in a given box. The lower left corner of the box is at (left, bottom). Line breaks will be inserted where needed. Multiple spaces are treated as one. Tabulators are treated as spaces.

The text will be hyphenated if the parameter hyphenation is set to true and the parameter hyphendict contains a valid filename for a hyphenation file. The line spacing is taken from the value leading. Paragraphs can be separated by an empty line just like in TeX. If the value parindent is set to value > 0.0 then the first n lines will be indented. The number n of lines is set by the parameter numindentlines. In order to prevent indenting of the first m paragraphs set the value parindentskip to a positive number.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text to be output into the given box.

left

x-coordinate of the lower left corner of the box.

bottom

y-coordinate of the lower left corner of the box.

width

Width of the box.

height

Height of the box.

hmode

The parameter hmode can be "justify", "fulljustify", "right", "left", or "center". The difference of "justify" and "fulljustify" just affects the last line of the box. In fulljustify mode the last line will be left and right justified unless this is also the last line of paragraph. In justify mode it will always be left justified.

feature

Used parameters

The output of ps_show_boxed() can be configured with several parameters and values which must be set with either ps_set_parameter() or ps_set_value(). Beside the parameters and values which affect text output, the following parameters and values are evaluated.

leading (value)

Distance between baselines of two consecutive lines.

linebreak (parameter)

Set to "true" if you want a carriage return to start a new line instead of treating it as a space. Defaults to "false".

parbreak (parameter)

Set to "true" if you want a carriage return on a single line to start a new paragraph instead of treating it as a space. Defaults to "true".

hyphenation (parameter)

Set to "true" in order to turn hyphenation on. This requires a dictionary to be set with the parameter "hyphendict". Defaults to "false".

hyphendict (parameter)

Filename of the dictionary used for hyphenation pattern (see below).

hyphenminchar (value)

The number of chars which must at least be left over before or after the hyphen. This implies that only words of at least two times this value will be hyphenated. The default value is three. Setting a value of zero will result in the default value.

parindent (value)

Set the amount of space in pixel for indenting the first m lines of a paragraph. m can be set with the value "numindentlines".

parskip (value)

Set the amount of extra space in pixel between paragraphs. Defaults to 0 which will result in a normal line distance.

numindentlines (value)

Number of lines from the start of the paragraph which will be indented. Defaults to 1.

parindentskip (value)

Number of paragraphs in the box whose first lines will not be indented. This defaults to 0. This is useful for paragraphs right after a section heading or text being continued in a second box. In both case one would set this to 1.

linenumbermode (parameter)

Set how lines are to be numbered. Possible values are "box" for numbering lines in the whole box or "paragraph" to number lines within each paragraph.

linenumberspace (value)

The space for the column left of the numbered line containing the line number. The line number will be right justified into this column. Defaults to 20.

linenumbersep (value)

The space between the column with line numbers and the line itself. Defaults to 5.

Hyphenation

Text is hyphenated if the parameter hyphenation is set to true and a valid hyphenation dictionary is set. pslib does not ship its own hyphenation dictionary but uses one from openoffice, scribus or koffice. You can find their dictionaries for different languages in one of the following directories if the software is installed:

  • /usr/share/apps/koffice/hyphdicts/
  • /usr/lib/scribus/dicts/
  • /usr/lib/openoffice/share/dict/ooo/
Currently scribus appears to have the most complete hyphenation dictionaries.

Valor Retornado

Number of characters that could not be written.

Veja Também

  • ps_continue_text() - Continue text in next line

ps_shfill
ps_show_xy2
PS Funções


Output text at position

ps_show_boxed
ps_show_xy
PS Funções
PHP Manual

ps_show_xy2

(PECL ps >= 1.1.0)

ps_show_xy2 — Output text at position

Descrição

bool ps_show_xy2 ( resource $psdoc , string $text , int $len , float $xcoor , float $ycoor )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_show_boxed
ps_show_xy
PS Funções


Output text at given position

ps_show_xy2
ps_show2
PS Funções
PHP Manual

ps_show_xy

(PECL ps >= 1.1.0)

ps_show_xy — Output text at given position

Descrição

bool ps_show_xy ( resource $psdoc , string $text , float $x , float $y )

Output a text at the given text position.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text to be output.

x

x-coordinate of the lower left corner of the box surrounding the text.

y

y-coordinate of the lower left corner of the box surrounding the text.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_continue_text() - Continue text in next line
  • ps_show() - Output text

ps_show_xy2
ps_show2
PS Funções


Output a text at current position

ps_show_xy
ps_show
PS Funções
PHP Manual

ps_show2

(PECL ps >= 1.1.0)

ps_show2 — Output a text at current position

Descrição

bool ps_show2 ( resource $psdoc , string $text , int $len )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

len

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ps_show_xy
ps_show
PS Funções


Output text

ps_show2
ps_string_geometry
PS Funções
PHP Manual

ps_show

(PECL ps >= 1.1.0)

ps_show — Output text

Descrição

bool ps_show ( resource $psdoc , string $text )

Output a text at the current text position. The text position can be set by storing the x and y coordinates into the values textx and texty with the function ps_set_value(). The function will issue an error if a font was not set before with ps_setfont().

ps_show() evaluates the following parameters and values as set by ps_set_parameter() and ps_set_value().

charspacing (value)

Distance between two consecutive glyphs. If this value is unequal to zero then all ligatures will be resolved. Values less than zero are allowed.

kerning (parameter)

Setting this parameter to "false" will turn off kerning. Kerning is turned on by default.

ligatures (parameter)

Setting this parameter to "false" will turn off the use of ligatures. Ligatures are turned on by default.

underline (parameter)

Setting this parameter to "true" will turn on underlining. Underlining is turned off by default.

overline (parameter)

Setting this parameter to "true" will turn on overlining. Overlining is turned off by default.

strikeout (parameter)

Setting this parameter to "true" will turn on striking out. Striking out is turned off by default.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text to be output.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_continue_text() - Continue text in next line
  • ps_show_xy() - Output text at given position
  • ps_setfont() - Sets font to use for following output

ps_show2
ps_string_geometry
PS Funções


Gets geometry of a string

ps_show
ps_stringwidth
PS Funções
PHP Manual

ps_string_geometry

(PECL ps >= 1.2.0)

ps_string_geometry — Gets geometry of a string

Descrição

array ps_string_geometry ( resource $psdoc , string $text [, int $fontid = 0 [, float $size = 0.0 ]] )

This function is similar to ps_stringwidth() but returns an array of dimensions containing the width, ascender, and descender of the text.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text for which the geometry is to be calculated.

fontid

The identifier of the font to be used. If not font is specified the current font will be used.

size

The size of the font. If no size is specified the current size is used.

Valor Retornado

An array of the dimensions of a string. The element 'width' contains the width of the string as returned by ps_stringwidth(). The element 'descender' contains the maximum descender and 'ascender' the maximum ascender of the string.

Veja Também

  • ps_continue_text() - Continue text in next line
  • ps_stringwidth() - Gets width of a string

ps_show
ps_stringwidth
PS Funções


Gets width of a string

ps_string_geometry
ps_stroke
PS Funções
PHP Manual

ps_stringwidth

(PECL ps >= 1.1.0)

ps_stringwidth — Gets width of a string

Descrição

float ps_stringwidth ( resource $psdoc , string $text [, int $fontid = 0 [, float $size = 0.0 ]] )

Calculates the width of a string in points if it was output in the given font and font size. This function needs an Adobe font metrics file to calculate the precise width. If kerning is turned on, it will be taken into account.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

text

The text for which the width is to be calculated.

fontid

The identifier of the font to be used. If not font is specified the current font will be used.

size

The size of the font. If no size is specified the current size is used.

Valor Retornado

Width of a string in points.

Veja Também

  • ps_string_geometry() - Gets geometry of a string

ps_string_geometry
ps_stroke
PS Funções


Draws the current path

ps_stringwidth
ps_symbol_name
PS Funções
PHP Manual

ps_stroke

(PECL ps >= 1.1.0)

ps_stroke — Draws the current path

Descrição

bool ps_stroke ( resource $psdoc )

Draws the path constructed with previously called drawing functions like ps_lineto().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_closepath_stroke() - Closes and strokes path
  • ps_fill() - Fills the current path
  • ps_fill_stroke() - Fills and strokes the current path

ps_stringwidth
ps_symbol_name
PS Funções


Gets name of a glyph

ps_stroke
ps_symbol_width
PS Funções
PHP Manual

ps_symbol_name

(PECL ps >= 1.2.0)

ps_symbol_name — Gets name of a glyph

Descrição

string ps_symbol_name ( resource $psdoc , int $ord [, int $fontid = 0 ] )

This function needs an Adobe font metrics file to know which glyphs are available.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

ord

The parameter ord is the position of the glyph in the font encoding vector.

fontid

The identifier of the font to be used. If not font is specified the current font will be used.

Valor Retornado

The name of a glyph in the given font.

Veja Também

  • ps_symbol() - Output a glyph
  • ps_symbol_width() - Gets width of a glyph

ps_stroke
ps_symbol_width
PS Funções


Gets width of a glyph

ps_symbol_name
ps_symbol
PS Funções
PHP Manual

ps_symbol_width

(PECL ps >= 1.2.0)

ps_symbol_width — Gets width of a glyph

Descrição

float ps_symbol_width ( resource $psdoc , int $ord [, int $fontid = 0 [, float $size = 0.0 ]] )

Calculates the width of a glyph in points if it was output in the given font and font size. This function needs an Adobe font metrics file to calculate the precise width.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

ord

The position of the glyph in the font encoding vector.

fontid

The identifier of the font to be used. If not font is specified the current font will be used.

size

The size of the font. If no size is specified the current size is used.

Valor Retornado

The width of a glyph in points.

Veja Também

  • ps_symbol() - Output a glyph
  • ps_symbol_name() - Gets name of a glyph

ps_symbol_name
ps_symbol
PS Funções


Output a glyph

ps_symbol_width
ps_translate
PS Funções
PHP Manual

ps_symbol

(PECL ps >= 1.2.0)

ps_symbol — Output a glyph

Descrição

bool ps_symbol ( resource $psdoc , int $ord )

Output the glyph at position ord in the font encoding vector of the current font. The font encoding for a font can be set when loading the font with ps_findfont().

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

ord

The position of the glyph in the font encoding vector.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ps_symbol_name() - Gets name of a glyph
  • ps_symbol_width() - Gets width of a glyph

ps_symbol_width
ps_translate
PS Funções


Sets translation

ps_symbol
RPM Reader
PS Funções
PHP Manual

ps_translate

(PECL ps >= 1.1.0)

ps_translate — Sets translation

Descrição

bool ps_translate ( resource $psdoc , float $x , float $y )

Sets a new initial point of the coordinate system.

Parâmetros

psdoc

Resource identifier of the postscript file as returned by ps_new().

x

x-coordinate of the origin of the translated coordinate system.

y

y-coordinate of the origin of the translated coordinate system.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Translation of the coordinate system

<?php
function rectangle($ps) {
    ps_moveto($ps, 0, 0);
    ps_lineto($ps, 0, 50);
    ps_lineto($ps, 50, 50);
    ps_lineto($ps, 50, 0);
    ps_lineto($ps, 0, 0);
    ps_stroke($ps);
}

$ps = ps_new();
if (!ps_open_file($ps, "translate.ps")) {
  print "Cannot open PostScript file\n";
  exit;
}

ps_set_info($ps, "Creator", "translate.php");
ps_set_info($ps, "Author", "Uwe Steinmann");
ps_set_info($ps, "Title", "Translated example");
ps_set_info($ps, "BoundingBox", "0 0 596 842");

$psfont = ps_findfont($ps, "Helvetica", "", 0);

ps_begin_page($ps, 596, 842);
ps_set_text_pos($ps, 100, 100);
ps_translate($ps, 500, 750);
rectangle($ps);
ps_translate($ps, -500, -750);
ps_setfont($ps, $psfont, 8.0);
ps_show($ps, "Text at initial position");
ps_end_page($ps);

ps_begin_page($ps, 596, 842);
ps_set_text_pos($ps, 100, 100);
ps_save($ps);
ps_translate($ps, 500, 750);
rectangle($ps);
ps_restore($ps);
ps_setfont($ps, $psfont, 8.0);
ps_show($ps, "Text at initial position");
ps_end_page($ps);

ps_delete($ps);
?>

The above example demonstrates two possible ways to place a graphic (in this case just a rectangle) at any position on the page, while the graphic itself uses its own coordinate system. The trick is to change the origin of the current coordinate system before drawing the rectangle. The translation has to be undone after the graphic has been drawn.

On the second page a slightly different and more elegant approach is applied. Instead of undoing the translation with a second call of ps_translate() the graphics context is saved before modifying the coordinate system and restored after drawing the rectangle.

Veja Também

  • ps_scale() - Sets scaling factor
  • ps_rotate() - Sets rotation factor

ps_symbol
RPM Reader
PS Funções


RPM Header Reading

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic usage
  • RPM Reader Funções
    • rpm_close — Closes an RPM file
    • rpm_get_tag — Retrieves a header tag from an RPM file
    • rpm_is_valid — Tests a filename for validity as an RPM file
    • rpm_open — Opens an RPM file
    • rpm_version — Returns a string representing the current version of the rpmreader extension
ps_translate
Introdução
Saída de MIME Não-Texto


Introdução

This module allows you to read the meta information stored in the headers of a » RedHat Package Manager (» RPM) file.

RPM Reader
Instalação/Configuração
RPM Reader


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
RPM Reader


Dependências

The RPMReader extension requires PHP 5.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/rpmreader.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

There is one resource type used by the RPMReader module. The resource is a file pointer which identifies the RPM file with which to work.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The following list of constants are used to obtain information using the rpm_get_tag() function. These constants represent the tag number to be retrieved from the RPM file's header section. Descriptions are given below as to what data the tag number constants reference.

RPMREADER_MINIMUM (integer)
The minimum valid value of any RPM tag number.
RPMREADER_NAME (integer)
The name of the RPM package.
RPMREADER_VERSION (integer)
The version of the RPM package.
RPMREADER_RELEASE (integer)
The release of the RPM package.
RPMREADER_EPOCH (integer)
RPMREADER_SERIAL (integer)
RPMREADER_SUMMARY (integer)
The summary text of the RPM package.
RPMREADER_DESCRIPTION (integer)
The full description text of the RPM package.
RPMREADER_BUILDTIME (integer)
The date and time when the RPM package was built.
RPMREADER_BUILDHOST (integer)
The name of the host on which the RPM package was built.
RPMREADER_INSTALLTIME (integer)
RPMREADER_SIZE (integer)
The size of the RPM package.
RPMREADER_DISTRIBUTION (integer)
RPMREADER_VENDOR (integer)
RPMREADER_GIF (integer)
RPMREADER_XPM (integer)
RPMREADER_LICENSE (integer)
RPMREADER_COPYRIGHT (integer)
RPMREADER_PACKAGER (integer)
RPMREADER_GROUP (integer)
RPMREADER_SOURCE (integer)
RPMREADER_PATCH (integer)
RPMREADER_URL (integer)
RPMREADER_OS (integer)
RPMREADER_ARCH (integer)
RPMREADER_PREIN (integer)
RPMREADER_POSTIN (integer)
RPMREADER_PREUN (integer)
RPMREADER_POSTUN (integer)
RPMREADER_OLDFILENAMES (integer)
The list of files in an RPM package (deprecated format). The correct way is now to use a combination of 3 tags (RPMREADER_BASENAMES, RPMREADER_DIRINDEXES, RPMREADER_DIRNAMES) in what RPM now calls "CompressedFileNames". This tag is still used in older RPM files that did not use the "CompressedFileNames" method and is maintained for backward compatibility.
RPMREADER_FILESIZES (integer)
RPMREADER_FILESTATES (integer)
RPMREADER_FILEMODES (integer)
RPMREADER_FILERDEVS (integer)
RPMREADER_FILEMTIMES (integer)
RPMREADER_FILEMD5S (integer)
RPMREADER_FILELINKTOS (integer)
RPMREADER_FILEFLAGS (integer)
RPMREADER_FILEUSERNAME (integer)
RPMREADER_FILEGROUPNAME (integer)
RPMREADER_ICON (integer)
RPMREADER_SOURCERPM (integer)
RPMREADER_FILEVERIFYFLAGS (integer)
RPMREADER_ARCHIVESIZE (integer)
RPMREADER_PROVIDENAME (integer)
RPMREADER_PROVIDES (integer)
RPMREADER_REQUIREFLAGS (integer)
RPMREADER_REQUIRENAME (integer)
RPMREADER_REQUIREVERSION (integer)
RPMREADER_CONFLICTFLAGS (integer)
RPMREADER_CONFLICTNAME (integer)
RPMREADER_CONFLICTVERSION (integer)
RPMREADER_EXCLUDEARCH (integer)
RPMREADER_EXCLUDEOS (integer)
RPMREADER_EXCLUSIVEARCH (integer)
RPMREADER_EXCLUSIVEOS (integer)
RPMREADER_RPMVERSION (integer)
RPMREADER_TRIGGERSCRIPTS (integer)
RPMREADER_TRIGGERNAME (integer)
RPMREADER_TRIGGERVERSION (integer)
RPMREADER_TRIGGERFLAGS (integer)
RPMREADER_TRIGGERINDEX (integer)
RPMREADER_VERIFYSCRIPT (integer)
RPMREADER_CHANGELOGTIME (integer)
The list of dates from changelog entries.
RPMREADER_CHANGELOGNAME (integer)
The list of changelog entry names.
RPMREADER_CHANGELOGTEXT (integer)
The list of the text from changelog entries.
RPMREADER_PREINPROG (integer)
RPMREADER_POSTINPROG (integer)
RPMREADER_PREUNPROG (integer)
RPMREADER_POSTUNPROG (integer)
RPMREADER_BUILDARCHS (integer)
RPMREADER_OBSOLETENAME (integer)
RPMREADER_OBSOLETES (integer)
RPMREADER_VERIFYSCRIPTPROG (integer)
RPMREADER_TRIGGERSCRIPTPROG (integer)
RPMREADER_COOKIE (integer)
RPMREADER_FILEDEVICES (integer)
RPMREADER_FILEINODES (integer)
RPMREADER_FILELANGS (integer)
RPMREADER_PREFIXES (integer)
RPMREADER_INSTPREFIXES (integer)
RPMREADER_PROVIDEFLAGS (integer)
RPMREADER_PROVIDEVERSION (integer)
RPMREADER_OBSOLETEFLAGS (integer)
RPMREADER_OBSOLETEVERSION (integer)
RPMREADER_DIRINDEXES (integer)
The list of indices that relate directory names to files in the RPM package. This tag is used in conjunction with RPMREADER_BASENAMES and RPMREADER_DIRNAMES to reconstruct filenames in the RPM package stored with the new "CompressedFileNames" method in RPM.
RPMREADER_BASENAMES (integer)
The list of the names of files in the RPM package without path information. This tag is used in conjunction with RPMREADER_DIRINDEXES and RPMREADER_DIRNAMES to reconstruct filenames in the RPM package stored with the new "CompressedFileNames" method in RPM.
RPMREADER_DIRNAMES (integer)
The list of directory names used by files in the RPM package. This tag is used in conjunction with RPMREADER_BASENAMES and RPMREADER_DIRINDEXES to reconstruct filenames in the RPM package stored with the new "CompressedFileNames" method in RPM.
RPMREADER_OPTFLAGS (integer)
RPMREADER_DISTURL (integer)
RPMREADER_PAYLOADFORMAT (integer)
RPMREADER_PAYLOADCOMPRESSOR (integer)
RPMREADER_PAYLOADFLAGS (integer)
RPMREADER_INSTALLCOLOR (integer)
RPMREADER_INSTALLTID (integer)
RPMREADER_REMOVETID (integer)
RPMREADER_RHNPLATFORM (integer)
RPMREADER_PLATFORM (integer)
RPMREADER_PATCHESNAME (integer)
RPMREADER_PATCHESFLAGS (integer)
RPMREADER_PATCHESVERSION (integer)
RPMREADER_CACHECTIME (integer)
RPMREADER_CACHEPKGPATH (integer)
RPMREADER_CACHEPKGSIZE (integer)
RPMREADER_CACHEPKGMTIME (integer)
RPMREADER_FILECOLORS (integer)
RPMREADER_FILECLASS (integer)
RPMREADER_CLASSDICT (integer)
RPMREADER_FILEDEPENDSX (integer)
RPMREADER_FILEDEPENDSN (integer)
RPMREADER_DEPENDSDICT (integer)
RPMREADER_SOURCEPKGID (integer)
RPMREADER_FILECONTEXTS (integer)
RPMREADER_FSCONTEXTS (integer)
RPMREADER_RECONTEXTS (integer)
RPMREADER_POLICIES (integer)
RPMREADER_MAXIMUM (integer)
The maximum valid value of any RPM tag number.

Tipos Resource
Exemplos
RPM Reader


Exemplos

Índice

  • Basic usage
Constantes pré-definidas
Basic usage
RPM Reader


Basic usage

This example will open an RPM file and read the name, version, and release from the RPM file, echo the results, and close the RPM file.

Exemplo #1 Basic RPMReader Example

<?php

$filename = "/path/to/file.rpm";

// open file
$rpmr = rpm_open($filename);

// get "Name" tag
$name = rpm_get_tag($rpmr, RPMREADER_NAME);

// get "Version" tag
$ver = rpm_get_tag($rpmr, RPMREADER_VERSION);

// get "Release" tag
$rel = rpm_get_tag($rpmr, RPMREADER_RELEASE);

echo "$name-$ver-$rel<br>\n";

// close file
rpm_close($rpmr);

?>
Exemplos
RPM Reader Funções
Exemplos


RPM Reader Funções

Índice

  • rpm_close — Closes an RPM file
  • rpm_get_tag — Retrieves a header tag from an RPM file
  • rpm_is_valid — Tests a filename for validity as an RPM file
  • rpm_open — Opens an RPM file
  • rpm_version — Returns a string representing the current version of the rpmreader extension
Basic usage
rpm_close
RPM Reader


Closes an RPM file

RPM Reader Funções
rpm_get_tag
RPM Reader Funções
PHP Manual

rpm_close

(PECL rpmreader >= 0.1.0)

rpm_close — Closes an RPM file

Descrição

bool rpm_close ( resource $rpmr )

rpm_close() will close an RPM file pointer.

Parâmetros

rpmr

A file pointer resource successfully opened by rpm_open().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 rpm_close() example

<?php

$file = "/path/to/file.rpm";
$rpmr = rpm_open($file);

rpm_close($rpmr);

?>

Veja Também

  • rpm_open() - Opens an RPM file

RPM Reader Funções
rpm_get_tag
RPM Reader Funções


Retrieves a header tag from an RPM file

rpm_close
rpm_is_valid
RPM Reader Funções
PHP Manual

rpm_get_tag

(PECL rpmreader >= 0.1.0)

rpm_get_tag — Retrieves a header tag from an RPM file

Descrição

mixed rpm_get_tag ( resource $rpmr , int $tagnum )

rpm_get_tag() will retrieve a given tag from the RPM file's header and return it.

Parâmetros

rpmr

A file pointer resource successfully opened by rpm_open().

tagnum

The tag number to retrieve from the RPM header. This value can be specified using the list of constants defined by this module.

Valor Retornado

The return value can be of various types depending on the tagnum supplied to the function.

Exemplos

Exemplo #1 rpm_get_tag() example

<?php

$file = "/path/to/file.rpm";
$rpmr = rpm_open($file);

$name = rpm_get_tag($rpmr, RPMREADER_NAME);
echo "$name<br>\n";

rpm_close($rpmr);

?>

Veja Também

  • rpm_open() - Opens an RPM file
  • rpm_close() - Closes an RPM file

rpm_close
rpm_is_valid
RPM Reader Funções


Tests a filename for validity as an RPM file

rpm_get_tag
rpm_open
RPM Reader Funções
PHP Manual

rpm_is_valid

(PECL rpmreader >= 0.1.0)

rpm_is_valid — Tests a filename for validity as an RPM file

Descrição

bool rpm_is_valid ( string $filename )

rpm_is_valid() will test an RPM file for validity as an RPM file. This is not the same as rpm_open() as it only checks the file for validity but does not return a file pointer to be used by further functions.

Parâmetros

filename

The filename of the RPM file you wish to check for validity.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 rpm_is_valid() example

<?php

$file = "/path/to/file.rpm";

if (rpm_is_valid($file)) {
    echo "File is recognized as an RPM file.<br>\n";
}
else {
    echo "File is not recognized as an RPM file.<br>\n";
}

?>

rpm_get_tag
rpm_open
RPM Reader Funções


Opens an RPM file

rpm_is_valid
rpm_version
RPM Reader Funções
PHP Manual

rpm_open

(PECL rpmreader >= 0.1.0)

rpm_open — Opens an RPM file

Descrição

resource rpm_open ( string $filename )

rpm_open() will open an RPM file and will determine if the file is a valid RPM file.

Parâmetros

filename

The filename of the RPM file you wish to open.

Valor Retornado

If the open succeeds, then rpm_open() will return a file pointer resource to the newly opened file. On error, the function will return FALSE.

Exemplos

Exemplo #1 rpm_open() example

<?php

$file = "/path/to/file.rpm";
$rpmr = rpm_open($file);

rpm_close($rpmr);

?>

Veja Também

  • rpm_close() - Closes an RPM file

rpm_is_valid
rpm_version
RPM Reader Funções


Returns a string representing the current version of the rpmreader extension

rpm_open
SWF
RPM Reader Funções
PHP Manual

rpm_version

(PECL rpmreader >= 0.3.0)

rpm_version — Returns a string representing the current version of the rpmreader extension

Descrição

string rpm_version ( void )

rpm_version() will return the current version of the rpmreader extension.

Valor Retornado

rpm_version() will return a string representing the rpmreader version currently loaded in PHP.

Exemplos

Exemplo #1 rpm_version() example

<?php

$rpmr_ver = rpm_version();

echo "$rpmr_ver<br />\n";

?>

rpm_open
SWF
RPM Reader Funções


Shockwave Flash

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic Usage
  • Funções para SWF
    • swf_actiongeturl — Get a URL from a Shockwave Flash movie
    • swf_actiongotoframe — Play a frame and then stop
    • swf_actiongotolabel — Display a frame with the specified label
    • swf_actionnextframe — Go forward one frame
    • swf_actionplay — Start playing the flash movie from the current frame
    • swf_actionprevframe — Go backwards one frame
    • swf_actionsettarget — Set the context for actions
    • swf_actionstop — Stop playing the flash movie at the current frame
    • swf_actiontogglequality — Toggle between low and high quality
    • swf_actionwaitforframe — Skip actions if a frame has not been loaded
    • swf_addbuttonrecord — Controls location, appearance and active area of the current button
    • swf_addcolor — Set the global add color to the rgba value specified
    • swf_closefile — Close the current Shockwave Flash file
    • swf_definebitmap — Define a bitmap
    • swf_definefont — Defines a font
    • swf_defineline — Define a line
    • swf_definepoly — Define a polygon
    • swf_definerect — Define a rectangle
    • swf_definetext — Define a text string
    • swf_endbutton — End the definition of the current button
    • swf_enddoaction — End the current action
    • swf_endshape — Completes the definition of the current shape
    • swf_endsymbol — End the definition of a symbol
    • swf_fontsize — Change the font size
    • swf_fontslant — Set the font slant
    • swf_fonttracking — Set the current font tracking
    • swf_getbitmapinfo — Get information about a bitmap
    • swf_getfontinfo — Gets font information
    • swf_getframe — Get the frame number of the current frame
    • swf_labelframe — Label the current frame
    • swf_lookat — Define a viewing transformation
    • swf_modifyobject — Modify an object
    • swf_mulcolor — Sets the global multiply color to the rgba value specified
    • swf_nextid — Returns the next free object id
    • swf_oncondition — Describe a transition used to trigger an action list
    • swf_openfile — Open a new Shockwave Flash file
    • swf_ortho2 — Defines 2D orthographic mapping of user coordinates onto the current viewport
    • swf_ortho — Defines an orthographic mapping of user coordinates onto the current viewport
    • swf_perspective — Define a perspective projection transformation
    • swf_placeobject — Place an object onto the screen
    • swf_polarview — Define the viewer's position with polar coordinates
    • swf_popmatrix — Restore a previous transformation matrix
    • swf_posround — Enables or Disables the rounding of the translation when objects are placed or moved
    • swf_pushmatrix — Push the current transformation matrix back onto the stack
    • swf_removeobject — Remove an object
    • swf_rotate — Rotate the current transformation
    • swf_scale — Scale the current transformation
    • swf_setfont — Change the current font
    • swf_setframe — Switch to a specified frame
    • swf_shapearc — Draw a circular arc
    • swf_shapecurveto3 — Draw a cubic bezier curve
    • swf_shapecurveto — Draw a quadratic bezier curve between two points
    • swf_shapefillbitmapclip — Set current fill mode to clipped bitmap
    • swf_shapefillbitmaptile — Set current fill mode to tiled bitmap
    • swf_shapefilloff — Turns off filling
    • swf_shapefillsolid — Set the current fill style to the specified color
    • swf_shapelinesolid — Set the current line style
    • swf_shapelineto — Draw a line
    • swf_shapemoveto — Move the current position
    • swf_showframe — Display the current frame
    • swf_startbutton — Start the definition of a button
    • swf_startdoaction — Start a description of an action list for the current frame
    • swf_startshape — Start a complex shape
    • swf_startsymbol — Define a symbol
    • swf_textwidth — Get the width of a string
    • swf_translate — Translate the current transformations
    • swf_viewport — Select an area for future drawing
rpm_version
Introdução
Saída de MIME Não-Texto


Introdução

PHP oferece suporte para criar arquivos Shockwave Flash por meio do módulo libswf, criado por Paul Haeberli.

Nota:

Suporte a SWF foi adicionado no PHP 4 RC2.

A libswf não tem suporte para Windows. O desenvolvimento desta biblioteca foi parado, e o fonte não está disponível para portar para outros sistemas.

Para atualizar o suporte a SWF veja as funções da MING.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

SWF
Instalação/Configuração
SWF


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SWF


Dependências

Você precisa da biblioteca libswf para compilar o PHP com suporte para esta extensão. Você pode fazer download da libswf em » ftp://ftp.sgi.com/sgi/graphics/grafica/flash/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Tendo a libswf, tudo que você precisa fazer é configurar --with-swf[=DIR] onde DIR é o local contendo os diretórios include e lib. O diretório include deve conter o arquivo swf.h e o diretório lib deve conter o arquivo libswf.a. Se você descompactou a distribuição libswf os dois arquivos estarão em um diretório. Conseqüentemente você terá que copiar os arquivos para os locais correto manualmente.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

MOD_COLOR (integer)
MOD_MATRIX (integer)
TYPE_PUSHBUTTON (integer)
TYPE_MENUBUTTON (integer)
BSHitTest (float)
BSDown (float)
BSOver (float)
BSUp (float)
OverDowntoIdle (integer)
IdletoOverDown (integer)
OutDowntoIdle (integer)
OutDowntoOverDown (integer)
OverDowntoOutDown (integer)
OverUptoOverDown (integer)
OverUptoIdle (integer)
IdletoOverUp (integer)
ButtonEnter (integer)
ButtonExit (integer)
MenuEnter (integer)
MenuExit (integer)
Tipos Resource
Exemplos
SWF


Exemplos

Índice

  • Basic Usage
Constantes pré-definidas
Basic Usage
SWF


Basic Usage

Tendo instalado com sucesso o PHP com suporte a Shockwave Flash você pode então criar arquivos Shockwave files pelo PHP. Você deve estar surpreso em como você pode fazer isso, veja o seguinte código:

Exemplo #1 Exemplo da SWF

<?php
swf_openfile("test.swf", 256, 256, 30, 1, 1, 1);
swf_ortho2(-100, 100, -100, 100);
swf_defineline(1, -70, 0, 70, 0, .2);
swf_definerect(4, 60, -10, 70, 0, 0);
swf_definerect(5, -60, 0, -70, 10, 0);
swf_addcolor(0, 0, 0, 0);

swf_definefont(10, "Mod");
swf_fontsize(5);
swf_fontslant(10);
swf_definetext(11, "This be Flash wit PHP!", 1);

swf_pushmatrix();
swf_translate(-50, 80, 0);
swf_placeobject(11, 60);
swf_popmatrix();

for ($i = 0; $i < 30; $i++) {
    $p = $i/(30-1);
    swf_pushmatrix();
    swf_scale(1-($p*.9), 1, 1);
    swf_rotate(60*$p, 'z');
    swf_translate(20+20*$p, $p/1.5, 0);
    swf_rotate(270*$p,  'z');
    swf_addcolor($p, 0, $p/1.2, -$p);
    swf_placeobject(1, 50);
    swf_placeobject(4, 50);
    swf_placeobject(5, 50);
    swf_popmatrix();
    swf_showframe();
}

for ($i = 0; $i < 30; $i++) {
    swf_removeobject(50);
    if (($i%4) == 0) {
        swf_showframe();
    }
}

swf_startdoaction();
swf_actionstop();
swf_enddoaction();

swf_closefile();
?>

Exemplos
Funções para SWF
Exemplos


Funções para SWF

Índice

  • swf_actiongeturl — Get a URL from a Shockwave Flash movie
  • swf_actiongotoframe — Play a frame and then stop
  • swf_actiongotolabel — Display a frame with the specified label
  • swf_actionnextframe — Go forward one frame
  • swf_actionplay — Start playing the flash movie from the current frame
  • swf_actionprevframe — Go backwards one frame
  • swf_actionsettarget — Set the context for actions
  • swf_actionstop — Stop playing the flash movie at the current frame
  • swf_actiontogglequality — Toggle between low and high quality
  • swf_actionwaitforframe — Skip actions if a frame has not been loaded
  • swf_addbuttonrecord — Controls location, appearance and active area of the current button
  • swf_addcolor — Set the global add color to the rgba value specified
  • swf_closefile — Close the current Shockwave Flash file
  • swf_definebitmap — Define a bitmap
  • swf_definefont — Defines a font
  • swf_defineline — Define a line
  • swf_definepoly — Define a polygon
  • swf_definerect — Define a rectangle
  • swf_definetext — Define a text string
  • swf_endbutton — End the definition of the current button
  • swf_enddoaction — End the current action
  • swf_endshape — Completes the definition of the current shape
  • swf_endsymbol — End the definition of a symbol
  • swf_fontsize — Change the font size
  • swf_fontslant — Set the font slant
  • swf_fonttracking — Set the current font tracking
  • swf_getbitmapinfo — Get information about a bitmap
  • swf_getfontinfo — Gets font information
  • swf_getframe — Get the frame number of the current frame
  • swf_labelframe — Label the current frame
  • swf_lookat — Define a viewing transformation
  • swf_modifyobject — Modify an object
  • swf_mulcolor — Sets the global multiply color to the rgba value specified
  • swf_nextid — Returns the next free object id
  • swf_oncondition — Describe a transition used to trigger an action list
  • swf_openfile — Open a new Shockwave Flash file
  • swf_ortho2 — Defines 2D orthographic mapping of user coordinates onto the current viewport
  • swf_ortho — Defines an orthographic mapping of user coordinates onto the current viewport
  • swf_perspective — Define a perspective projection transformation
  • swf_placeobject — Place an object onto the screen
  • swf_polarview — Define the viewer's position with polar coordinates
  • swf_popmatrix — Restore a previous transformation matrix
  • swf_posround — Enables or Disables the rounding of the translation when objects are placed or moved
  • swf_pushmatrix — Push the current transformation matrix back onto the stack
  • swf_removeobject — Remove an object
  • swf_rotate — Rotate the current transformation
  • swf_scale — Scale the current transformation
  • swf_setfont — Change the current font
  • swf_setframe — Switch to a specified frame
  • swf_shapearc — Draw a circular arc
  • swf_shapecurveto3 — Draw a cubic bezier curve
  • swf_shapecurveto — Draw a quadratic bezier curve between two points
  • swf_shapefillbitmapclip — Set current fill mode to clipped bitmap
  • swf_shapefillbitmaptile — Set current fill mode to tiled bitmap
  • swf_shapefilloff — Turns off filling
  • swf_shapefillsolid — Set the current fill style to the specified color
  • swf_shapelinesolid — Set the current line style
  • swf_shapelineto — Draw a line
  • swf_shapemoveto — Move the current position
  • swf_showframe — Display the current frame
  • swf_startbutton — Start the definition of a button
  • swf_startdoaction — Start a description of an action list for the current frame
  • swf_startshape — Start a complex shape
  • swf_startsymbol — Define a symbol
  • swf_textwidth — Get the width of a string
  • swf_translate — Translate the current transformations
  • swf_viewport — Select an area for future drawing
Basic Usage
swf_actiongeturl
SWF


Get a URL from a Shockwave Flash movie

Funções para SWF
swf_actiongotoframe
Funções para SWF
PHP Manual

swf_actiongeturl

(PHP 4)

swf_actiongeturl — Get a URL from a Shockwave Flash movie

Descrição

void swf_actiongeturl ( string $url , string $target )

Gets the URL specified by the parameter url with the given target.

Parâmetros

url

The URL, as a string.

target

The target, as a string.

Valor Retornado

Não há valor retornado.

Funções para SWF
swf_actiongotoframe
Funções para SWF


Play a frame and then stop

swf_actiongeturl
swf_actiongotolabel
Funções para SWF
PHP Manual

swf_actiongotoframe

(PHP 4)

swf_actiongotoframe — Play a frame and then stop

Descrição

void swf_actiongotoframe ( int $framenumber )

The swf_actiongotoframe() function will go to the frame specified by framenumber, play it, and then stop.

Parâmetros

framenumber

The frame number.

Valor Retornado

Não há valor retornado.

swf_actiongeturl
swf_actiongotolabel
Funções para SWF


Display a frame with the specified label

swf_actiongotoframe
swf_actionnextframe
Funções para SWF
PHP Manual

swf_actiongotolabel

(PHP 4)

swf_actiongotolabel — Display a frame with the specified label

Descrição

void swf_actiongotolabel ( string $label )

The swf_actiongotolabel() function displays the frame with the label given by the label parameter and then stops.

Parâmetros

label

The frame label.

Valor Retornado

Não há valor retornado.

swf_actiongotoframe
swf_actionnextframe
Funções para SWF


Go forward one frame

swf_actiongotolabel
swf_actionplay
Funções para SWF
PHP Manual

swf_actionnextframe

(PHP 4)

swf_actionnextframe — Go forward one frame

Descrição

void swf_actionnextframe ( void )

Go forward one frame.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_actionprevframe() - Go backwards one frame

swf_actiongotolabel
swf_actionplay
Funções para SWF


Start playing the flash movie from the current frame

swf_actionnextframe
swf_actionprevframe
Funções para SWF
PHP Manual

swf_actionplay

(PHP 4)

swf_actionplay — Start playing the flash movie from the current frame

Descrição

void swf_actionplay ( void )

Start playing the flash movie from the current frame.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_actionstop() - Stop playing the flash movie at the current frame

swf_actionnextframe
swf_actionprevframe
Funções para SWF


Go backwards one frame

swf_actionplay
swf_actionsettarget
Funções para SWF
PHP Manual

swf_actionprevframe

(PHP 4)

swf_actionprevframe — Go backwards one frame

Descrição

void swf_actionprevframe ( void )

Go backwards one frame.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_actionnextframe() - Go forward one frame

swf_actionplay
swf_actionsettarget
Funções para SWF


Set the context for actions

swf_actionprevframe
swf_actionstop
Funções para SWF
PHP Manual

swf_actionsettarget

(PHP 4)

swf_actionsettarget — Set the context for actions

Descrição

void swf_actionsettarget ( string $target )

Sets the context for all actions. You can use this to control other flash movies that are currently playing.

Parâmetros

target

The target, as a string.

Valor Retornado

Não há valor retornado.

swf_actionprevframe
swf_actionstop
Funções para SWF


Stop playing the flash movie at the current frame

swf_actionsettarget
swf_actiontogglequality
Funções para SWF
PHP Manual

swf_actionstop

(PHP 4)

swf_actionstop — Stop playing the flash movie at the current frame

Descrição

void swf_actionstop ( void )

Stop playing the flash movie at the current frame.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_actionplay() - Start playing the flash movie from the current frame

swf_actionsettarget
swf_actiontogglequality
Funções para SWF


Toggle between low and high quality

swf_actionstop
swf_actionwaitforframe
Funções para SWF
PHP Manual

swf_actiontogglequality

(PHP 4)

swf_actiontogglequality — Toggle between low and high quality

Descrição

void swf_actiontogglequality ( void )

Toggle the flash movie between high and low quality.

Valor Retornado

Não há valor retornado.

swf_actionstop
swf_actionwaitforframe
Funções para SWF


Skip actions if a frame has not been loaded

swf_actiontogglequality
swf_addbuttonrecord
Funções para SWF
PHP Manual

swf_actionwaitforframe

(PHP 4)

swf_actionwaitforframe — Skip actions if a frame has not been loaded

Descrição

void swf_actionwaitforframe ( int $framenumber , int $skipcount )

The swf_actionwaitforframe() function will check to see if the frame, specified by the framenumber parameter has been loaded, if not it will skip the number of actions specified by the skipcount parameter. This can be useful for "Loading..." type animations.

Parâmetros

framenumber

The frame number.

skipcount

The number of actions to skip.

Valor Retornado

Não há valor retornado.

swf_actiontogglequality
swf_addbuttonrecord
Funções para SWF


Controls location, appearance and active area of the current button

swf_actionwaitforframe
swf_addcolor
Funções para SWF
PHP Manual

swf_addbuttonrecord

(PHP 4)

swf_addbuttonrecord — Controls location, appearance and active area of the current button

Descrição

void swf_addbuttonrecord ( int $states , int $shapeid , int $depth )

Allow you to define the specifics of using a button.

Parâmetros

states

Defines what states the button can have, these can be any or all of the following constants: BSHitTest, BSDown, BSOver or BSUp.

shapeid

The second parameter, the shapeid is the look of the button, this is usually the object id of the shape of the button.

depth

This parameter is the placement of the button in the current frame.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 swf_addbuttonrecord() example

<?php
swf_startButton($objid, TYPE_MENUBUTTON);
swf_addButtonRecord(BSDown|BSOver, $buttonImageId, 340);
swf_onCondition(MenuEnter);
swf_actionGetUrl("http://www.example.com", "_level1");
swf_onCondition(MenuExit);
swf_actionGetUrl("", "_level1");
swf_endButton();
?>

swf_actionwaitforframe
swf_addcolor
Funções para SWF


Set the global add color to the rgba value specified

swf_addbuttonrecord
swf_closefile
Funções para SWF
PHP Manual

swf_addcolor

(PHP 4)

swf_addcolor — Set the global add color to the rgba value specified

Descrição

void swf_addcolor ( float $r , float $g , float $b , float $a )

Sets the global add color to the specified color. This color is then
implicitly used by the swf_placeobject(),
swf_modifyobject() and
swf_addbuttonrecord() functions.

The color of the object will be add by the given values when the object is written to the screen.

Parâmetros

r

Red value

g

Green value

b

Blue value

a

Alpha value

These parameters can be either positive or negative.

Valor Retornado

Não há valor retornado.

swf_addbuttonrecord
swf_closefile
Funções para SWF


Close the current Shockwave Flash file

swf_addcolor
swf_definebitmap
Funções para SWF
PHP Manual

swf_closefile

(PHP 4)

swf_closefile — Close the current Shockwave Flash file

Descrição

void swf_closefile ([ int $return_file ] )

Close a file that was opened by the swf_openfile() function.

Parâmetros

return_file

If set then the contents of the SWF file are returned from the function.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Creating a simple flash file based on user input and outputting it and saving it in a database

<?php

// The $text variable is submitted by the
// user

// Global variables for database
// access (used in the swf_savedata() function)
$DBHOST = "localhost";
$DBUSER = "sterling";
$DBPASS = "secret";

swf_openfile("php://stdout", 256, 256, 30, 1, 1, 1);

    swf_definefont(10, "Ligon-Bold");
        swf_fontsize(12);
        swf_fontslant(10);

    swf_definetext(11, $text, 1);

    swf_pushmatrix();
        swf_translate(-50, 80, 0);
        swf_placeobject(11, 60);
    swf_popmatrix();

    swf_showframe();

    swf_startdoaction();
        swf_actionstop();
    swf_enddoaction();

$data = swf_closefile(1);

$data ?
  swf_savedata($data) :
  die("Error could not save SWF file");

// void swf_savedata(string data)
// Save the generated file a database
// for later retrieval
function swf_savedata($data)
{
    global $DBHOST,
           $DBUSER,
           $DBPASS;

    $dbh = @mysql_connect($DBHOST, $DBUSER, $DBPASS);

    if (!$dbh) {
        die (sprintf("Error [%d]: %s",
                      mysql_errno(), mysql_error()));
    }

    $stmt = "INSERT INTO swf_files (file) VALUES ('$data')";

    $sth = @mysql_query($stmt, $dbh);

    if (!$sth) {
        die (sprintf("Error [%d]: %s",
                      mysql_errno(), mysql_error()));
    }

    @mysql_free_result($sth);
    @mysql_close($dbh);
}
?>

Veja Também

  • swf_openfile() - Open a new Shockwave Flash file

swf_addcolor
swf_definebitmap
Funções para SWF


Define a bitmap

swf_closefile
swf_definefont
Funções para SWF
PHP Manual

swf_definebitmap

(PHP 4)

swf_definebitmap — Define a bitmap

Descrição

void swf_definebitmap ( int $objid , string $image_name )

The swf_definebitmap() function defines a bitmap given an image.

Parâmetros

objid

An SWF object id.

image_name

A GIF, JPEG, RGB or FI image. The image will be converted into a Flash JPEG or Flash color map format.

Valor Retornado

Não há valor retornado.

swf_closefile
swf_definefont
Funções para SWF


Defines a font

swf_definebitmap
swf_defineline
Funções para SWF
PHP Manual

swf_definefont

(PHP 4)

swf_definefont — Defines a font

Descrição

void swf_definefont ( int $fontid , string $fontname )

The swf_definefont() function defines a font parameter and gives it the specified id. It then sets the font given by fontname to the current font.

Parâmetros

fontid

The id to be given to the font.

fontname

The font so be set as current font.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_definetext() - Define a text string

swf_definebitmap
swf_defineline
Funções para SWF


Define a line

swf_definefont
swf_definepoly
Funções para SWF
PHP Manual

swf_defineline

(PHP 4)

swf_defineline — Define a line

Descrição

void swf_defineline ( int $objid , float $x1 , float $y1 , float $x2 , float $y2 , float $width )

Defines a line.

Parâmetros

objid

The object id.

x1

x-coordinate of start point.

y1

y-coordinate of start point.

x2

x-coordinate of end point.

y2

y-coordinate of end point.

width

The line width.

Valor Retornado

Não há valor retornado.

swf_definefont
swf_definepoly
Funções para SWF


Define a polygon

swf_defineline
swf_definerect
Funções para SWF
PHP Manual

swf_definepoly

(PHP 4)

swf_definepoly — Define a polygon

Descrição

void swf_definepoly ( int $objid , array $coords , int $npoints , float $width )

Defines a polygon given an array of x, y coordinates.

Parâmetros

objid

The object id.

coords

An array of x, y coordinates.

npoints

The number of overall points that are contained in the array given by coords

width

The width of the polygon's border, if set to 0.0 the polygon is filled.

Valor Retornado

Não há valor retornado.

swf_defineline
swf_definerect
Funções para SWF


Define a rectangle

swf_definepoly
swf_definetext
Funções para SWF
PHP Manual

swf_definerect

(PHP 4)

swf_definerect — Define a rectangle

Descrição

void swf_definerect ( int $objid , float $x1 , float $y1 , float $x2 , float $y2 , float $width )

Defines a rectangle with an upper left hand coordinate and a lower right hand coordinate.

Parâmetros

objid

The object id.

x1

x-coordinate of upper left point.

y1

y-coordinate of upper left point.

x2

x-coordinate of lower right point.

y2

y-coordinate of lower right point.

width

Width of the rectangles border, if the width is 0.0 then the rectangle is filled.

Valor Retornado

Não há valor retornado.

swf_definepoly
swf_definetext
Funções para SWF


Define a text string

swf_definerect
swf_endbutton
Funções para SWF
PHP Manual

swf_definetext

(PHP 4)

swf_definetext — Define a text string

Descrição

void swf_definetext ( int $objid , string $str , int $docenter )

Defines a text string using the current font and font size.

Parâmetros

objid

The object id.

str

The text, as a string.

docenter

The docenter is where the word is centered, if docenter is 1, then the word is centered in x.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Horizontal text example

<?php

$Xposition = 50;
$Yposition = 50;
$Zposition = 0;
$Obj_depth = 1;

$char = 'THIS IS THE TEXT';

swf_pushmatrix();

swf_definefont (swf_nextid(), "Mod");
swf_fontsize(10);

$secondid = swf_nextid();
swf_definetext($secondid, $char, 1);
swf_translate($Xposition, $Yposition, Zposition);
swf_placeobject($secondid, $Obj_depth);
swf_popmatrix();

?>

Veja Também

  • swf_definefont() - Defines a font

swf_definerect
swf_endbutton
Funções para SWF


End the definition of the current button

swf_definetext
swf_enddoaction
Funções para SWF
PHP Manual

swf_endbutton

(PHP 4)

swf_endbutton — End the definition of the current button

Descrição

void swf_endbutton ( void )

The swf_endbutton() function ends the definition of the current button.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_startbutton() - Start the definition of a button

swf_definetext
swf_enddoaction
Funções para SWF


End the current action

swf_endbutton
swf_endshape
Funções para SWF
PHP Manual

swf_enddoaction

(PHP 4)

swf_enddoaction — End the current action

Descrição

void swf_enddoaction ( void )

Ends the current action started by the swf_startdoaction() function.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_startdoaction() - Start a description of an action list for the current frame

swf_endbutton
swf_endshape
Funções para SWF


Completes the definition of the current shape

swf_enddoaction
swf_endsymbol
Funções para SWF
PHP Manual

swf_endshape

(PHP 4)

swf_endshape — Completes the definition of the current shape

Descrição

void swf_endshape ( void )

The swf_endshape() completes the definition of the current shape.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_startshape() - Start a complex shape

swf_enddoaction
swf_endsymbol
Funções para SWF


End the definition of a symbol

swf_endshape
swf_fontsize
Funções para SWF
PHP Manual

swf_endsymbol

(PHP 4)

swf_endsymbol — End the definition of a symbol

Descrição

void swf_endsymbol ( void )

Ends the definition of a symbol that was started by the swf_startsymbol() function.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_startsymbol() - Define a symbol

swf_endshape
swf_fontsize
Funções para SWF


Change the font size

swf_endsymbol
swf_fontslant
Funções para SWF
PHP Manual

swf_fontsize

(PHP 4)

swf_fontsize — Change the font size

Descrição

void swf_fontsize ( float $size )

Changes the font size to the value given by the size parameter.

Parâmetros

size

The font size, as an integer.

Valor Retornado

Não há valor retornado.

swf_endsymbol
swf_fontslant
Funções para SWF


Set the font slant

swf_fontsize
swf_fonttracking
Funções para SWF
PHP Manual

swf_fontslant

(PHP 4)

swf_fontslant — Set the font slant

Descrição

void swf_fontslant ( float $slant )

Set the current font slant to the angle indicated by the slant parameter.

Parâmetros

slant

Positive values create a forward slant, negative values create a negative slant.

Valor Retornado

Não há valor retornado.

swf_fontsize
swf_fonttracking
Funções para SWF


Set the current font tracking

swf_fontslant
swf_getbitmapinfo
Funções para SWF
PHP Manual

swf_fonttracking

(PHP 4)

swf_fonttracking — Set the current font tracking

Descrição

void swf_fonttracking ( float $tracking )

Set the font tracking to the value specified by the tracking parameter. This function is used to increase the spacing between letters and text, positive values increase the space and negative values decrease the space between letters.

Parâmetros

tracking

The font tracking.

Valor Retornado

Não há valor retornado.

swf_fontslant
swf_getbitmapinfo
Funções para SWF


Get information about a bitmap

swf_fonttracking
swf_getfontinfo
Funções para SWF
PHP Manual

swf_getbitmapinfo

(PHP 4)

swf_getbitmapinfo — Get information about a bitmap

Descrição

array swf_getbitmapinfo ( int $bitmapid )

Returns information about a bitmap.

Parâmetros

bitmapid

The bitmap id.

Valor Retornado

Returns an array with the following elements:

  • "size" - The size in bytes of the bitmap.
  • "width" - The width in pixels of the bitmap.
  • "height" - The height in pixels of the bitmap.

swf_fonttracking
swf_getfontinfo
Funções para SWF


Gets font information

swf_getbitmapinfo
swf_getframe
Funções para SWF
PHP Manual

swf_getfontinfo

(PHP 4)

swf_getfontinfo — Gets font information

Descrição

array swf_getfontinfo ( void )

Gets information about the font by giving the height in pixels of a capital A and a lowercase x.

Valor Retornado

Returns an associative array with the following parameters:

  • Aheight - The height in pixels of a capital A.
  • xheight - The height in pixels of a lowercase x.

swf_getbitmapinfo
swf_getframe
Funções para SWF


Get the frame number of the current frame

swf_getfontinfo
swf_labelframe
Funções para SWF
PHP Manual

swf_getframe

(PHP 4)

swf_getframe — Get the frame number of the current frame

Descrição

int swf_getframe ( void )

The swf_getframe() function gets the number of the current frame.

Valor Retornado

Returns the current frame number, as an integer.

Veja Também

  • swf_setframe() - Switch to a specified frame

swf_getfontinfo
swf_labelframe
Funções para SWF


Label the current frame

swf_getframe
swf_lookat
Funções para SWF
PHP Manual

swf_labelframe

(PHP 4)

swf_labelframe — Label the current frame

Descrição

void swf_labelframe ( string $name )

Labels the current frame with the given name.

Parâmetros

name

The frame label.

Valor Retornado

Não há valor retornado.

swf_getframe
swf_lookat
Funções para SWF


Define a viewing transformation

swf_labelframe
swf_modifyobject
Funções para SWF
PHP Manual

swf_lookat

(PHP 4)

swf_lookat — Define a viewing transformation

Descrição

void swf_lookat ( float $view_x , float $view_y , float $view_z , float $reference_x , float $reference_y , float $reference_z , float $twist )

Defines a viewing transformation by giving the viewing position and the coordinates of a reference point in the scene.

Parâmetros

view_x

x-coordinate for the viewing position

view_y

y-coordinate for the viewing position

view_z

z-coordinate for the viewing position

reference_x

x-coordinate for the reference point

reference_y

y-coordinate for the reference point

reference_z

z-coordinate for the reference point

twist

Controls the rotation along with viewer's z axis.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A simple 3D-rotation around a text

<?php

header('Content-type: application/x-shockwave-flash');

swf_openfile("php://stdout", 320, 200, 25, 1, 1, 1);

swf_ortho(-100, 100, -100, 100, -100, 100); // create 3D coordinates

swf_definefont(0, "Pix3");
swf_addcolor(0, 0, 0, 1);
swf_fontsize(10);
swf_fonttracking(0.2);

for ($i = 0; $i < 628; $i += 8) {
    $j = $i / 100;
    swf_pushmatrix();
    swf_translate(0, 0, 0);
    swf_perspective(100, 1, 0, 10);
    swf_lookat(sin($j) * 60, 50, cos($j) * 60, 0, 0, 0, 0);

    swf_definetext (1, 'HotKey@', 0);
    swf_translate(-50,0,0);

    swf_placeobject(1,10);

    swf_definetext(2, 'example.com', 0);
    swf_translate(55, 0, 0);
    swf_placeobject(2, 11);

    swf_showframe();
    swf_removeobject(10);
    swf_removeobject(11);
    swf_popmatrix();
}

swf_closefile();
?>

swf_labelframe
swf_modifyobject
Funções para SWF


Modify an object

swf_lookat
swf_mulcolor
Funções para SWF
PHP Manual

swf_modifyobject

(PHP 4)

swf_modifyobject — Modify an object

Descrição

void swf_modifyobject ( int $depth , int $how )

Updates the position and/or color of the object at the specified depth.

Parâmetros

depth

The depth, as an integer.

how

Determines what is updated. how can either be the constant MOD_MATRIX or MOD_COLOR or it can be a combination of both.

MOD_COLOR uses the current mulcolor (specified by the function swf_mulcolor()) and addcolor (specified by the function swf_addcolor()) to color the object. MOD_MATRIX uses the current matrix to position the object.

Valor Retornado

Não há valor retornado.

swf_lookat
swf_mulcolor
Funções para SWF


Sets the global multiply color to the rgba value specified

swf_modifyobject
swf_nextid
Funções para SWF
PHP Manual

swf_mulcolor

(PHP 4)

swf_mulcolor — Sets the global multiply color to the rgba value specified

Descrição

void swf_mulcolor ( float $r , float $g , float $b , float $a )

Sets the global multiply color to the given one. This color is then
implicitly used by the swf_placeobject(),
swf_modifyobject() and
swf_addbuttonrecord() functions.

The color of the object will be multiplied by the given color values when the object is written to the screen.

Parâmetros

r

Red value

g

Green value

b

Blue value

a

Alpha value

These parameters can be either positive or negative.

Valor Retornado

Não há valor retornado.

swf_modifyobject
swf_nextid
Funções para SWF


Returns the next free object id

swf_mulcolor
swf_oncondition
Funções para SWF
PHP Manual

swf_nextid

(PHP 4)

swf_nextid — Returns the next free object id

Descrição

int swf_nextid ( void )

The swf_nextid() function returns the next available object id.

Valor Retornado

Returns the id, as an integer.

swf_mulcolor
swf_oncondition
Funções para SWF


Describe a transition used to trigger an action list

swf_nextid
swf_openfile
Funções para SWF
PHP Manual

swf_oncondition

(PHP 4)

swf_oncondition — Describe a transition used to trigger an action list

Descrição

void swf_oncondition ( int $transition )

The swf_oncondition() function describes a transition that will trigger an action list.

Parâmetros

transition

There are several types of possible transitions, the following are for buttons defined as TYPE_MENUBUTTON:

  • IdletoOverUp
  • OverUptoIdle
  • OverUptoOverDown
  • OverDowntoOverUp
  • IdletoOverDown
  • OutDowntoIdle
  • MenuEnter (IdletoOverUp|IdletoOverDown)
  • MenuExit (OverUptoIdle|OverDowntoIdle)
For TYPE_PUSHBUTTON there are the following options:
  • IdletoOverUp
  • OverUptoIdle
  • OverUptoOverDown
  • OverDowntoOverUp
  • OverDowntoOutDown
  • OutDowntoOverDown
  • OutDowntoIdle
  • ButtonEnter (IdletoOverUp|OutDowntoOverDown)
  • ButtonExit (OverUptoIdle|OverDowntoOutDown)

Valor Retornado

Não há valor retornado.

swf_nextid
swf_openfile
Funções para SWF


Open a new Shockwave Flash file

swf_oncondition
swf_ortho2
Funções para SWF
PHP Manual

swf_openfile

(PHP 4)

swf_openfile — Open a new Shockwave Flash file

Descrição

void swf_openfile ( string $filename , float $width , float $height , float $framerate , float $r , float $g , float $b )

Opens a new file. This must be the first function you call, otherwise your script will not work.

Parâmetros

filename

The path to the SWF file. If you want to send your output to the screen, set this to php://stdout.

width

The movie width

height

The movie height

framerate

The frame rate.

r

Red value for the background.

g

Green value for the background.

b

Blue value for the background.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
4.0.1 | Support for php://stdout was added.

Veja Também

  • swf_closefile() - Close the current Shockwave Flash file

swf_oncondition
swf_ortho2
Funções para SWF


Defines 2D orthographic mapping of user coordinates onto the current viewport

swf_openfile
swf_ortho
Funções para SWF
PHP Manual

swf_ortho2

(PHP 4)

swf_ortho2 — Defines 2D orthographic mapping of user coordinates onto the current viewport

Descrição

void swf_ortho2 ( float $xmin , float $xmax , float $ymin , float $ymax )

Defines a two dimensional orthographic mapping of user coordinates onto the current viewport, this defaults to one to one mapping of the area of the Flash movie.

If a perspective transformation is desired, swf_perspective() can be used.

Parâmetros

xmin

xmax

ymin

ymax

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_ortho() - Defines an orthographic mapping of user coordinates onto the current viewport

swf_openfile
swf_ortho
Funções para SWF


Defines an orthographic mapping of user coordinates onto the current viewport

swf_ortho2
swf_perspective
Funções para SWF
PHP Manual

swf_ortho

(PHP 4 >= 4.0.1)

swf_ortho — Defines an orthographic mapping of user coordinates onto the current viewport

Descrição

void swf_ortho ( float $xmin , float $xmax , float $ymin , float $ymax , float $zmin , float $zmax )

Defines an 3D orthographic mapping of user coordinates onto the current viewport.

Parâmetros

xmin

xmax

ymin

ymax

zmin

zmax

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_ortho2() - Defines 2D orthographic mapping of user coordinates onto the current viewport

swf_ortho2
swf_perspective
Funções para SWF


Define a perspective projection transformation

swf_ortho
swf_placeobject
Funções para SWF
PHP Manual

swf_perspective

(PHP 4)

swf_perspective — Define a perspective projection transformation

Descrição

void swf_perspective ( float $fovy , float $aspect , float $near , float $far )

Defines a perspective projection transformation.

Nota:

Various distortion artifacts may appear when performing a perspective projection, this is because Flash players only have a two dimensional matrix. Some are not to pretty.

Parâmetros

fovy

A field-of-view angle in the y direction.

aspect

The aspect ratio of the viewport that is being drawn onto.

near

The near clipping plane.

far

The far clipping plane.

Valor Retornado

Não há valor retornado.

swf_ortho
swf_placeobject
Funções para SWF


Place an object onto the screen

swf_perspective
swf_polarview
Funções para SWF
PHP Manual

swf_placeobject

(PHP 4)

swf_placeobject — Place an object onto the screen

Descrição

void swf_placeobject ( int $objid , int $depth )

Places the object in the current frame at a specified depth.

This uses the current mulcolor (specified by swf_mulcolor()) and the current addcolor (specified by swf_addcolor()) to color the object and it uses the current matrix to position the object.

Parâmetros

objid

The object id.

depth

Must be between 1 and 65535.

Valor Retornado

Não há valor retornado.

swf_perspective
swf_polarview
Funções para SWF


Define the viewer's position with polar coordinates

swf_placeobject
swf_popmatrix
Funções para SWF
PHP Manual

swf_polarview

(PHP 4)

swf_polarview — Define the viewer's position with polar coordinates

Descrição

void swf_polarview ( float $dist , float $azimuth , float $incidence , float $twist )

The swf_polarview() function defines the viewer's position in polar coordinates.

Parâmetros

dist

The distance between the viewpoint to the world space origin.

azimuth

Defines the azimuthal angle in the x,y coordinate plane, measured in distance from the y axis.

incidence

Defines the angle of incidence in the y,z plane, measured in distance from the z axis. The incidence angle is defined as the angle of the viewport relative to the z axis.

twist

Specifies the amount that the viewpoint is to be rotated about the line of sight using the right hand rule.

Valor Retornado

Não há valor retornado.

swf_placeobject
swf_popmatrix
Funções para SWF


Restore a previous transformation matrix

swf_polarview
swf_posround
Funções para SWF
PHP Manual

swf_popmatrix

(PHP 4)

swf_popmatrix — Restore a previous transformation matrix

Descrição

void swf_popmatrix ( void )

Restores a previous transformation matrix.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_pushmatrix() - Push the current transformation matrix back onto the stack

swf_polarview
swf_posround
Funções para SWF


Enables or Disables the rounding of the translation when objects are placed or moved

swf_popmatrix
swf_pushmatrix
Funções para SWF
PHP Manual

swf_posround

(PHP 4)

swf_posround — Enables or Disables the rounding of the translation when objects are placed or moved

Descrição

void swf_posround ( int $round )

Enables or disables the rounding of the translation when objects are placed or moved, there are times when text becomes more readable because rounding has been enabled.

Parâmetros

round

Whether to enable rounding or not, if set to the value of 1, then rounding is enabled, if set to 0 then rounding is disabled.

Valor Retornado

Não há valor retornado.

swf_popmatrix
swf_pushmatrix
Funções para SWF


Push the current transformation matrix back onto the stack

swf_posround
swf_removeobject
Funções para SWF
PHP Manual

swf_pushmatrix

(PHP 4)

swf_pushmatrix — Push the current transformation matrix back onto the stack

Descrição

void swf_pushmatrix ( void )

Pushes the current transformation matrix back onto the stack.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_popmatrix() - Restore a previous transformation matrix

swf_posround
swf_removeobject
Funções para SWF


Remove an object

swf_pushmatrix
swf_rotate
Funções para SWF
PHP Manual

swf_removeobject

(PHP 4)

swf_removeobject — Remove an object

Descrição

void swf_removeobject ( int $depth )

Removes the last object drawn at the depth specified by depth.

Parâmetros

depth

The depth, as an integer.

Valor Retornado

Não há valor retornado.

swf_pushmatrix
swf_rotate
Funções para SWF


Rotate the current transformation

swf_removeobject
swf_scale
Funções para SWF
PHP Manual

swf_rotate

(PHP 4)

swf_rotate — Rotate the current transformation

Descrição

void swf_rotate ( float $angle , string $axis )

Rotates the current transformation by a given angle around the given axis.

Parâmetros

angle

The rotation angle.

axis

The axis. Valid values axis are x (the x axis), y (the y axis) or z (the z axis).

Valor Retornado

Não há valor retornado.

swf_removeobject
swf_scale
Funções para SWF


Scale the current transformation

swf_rotate
swf_setfont
Funções para SWF
PHP Manual

swf_scale

(PHP 4)

swf_scale — Scale the current transformation

Descrição

void swf_scale ( float $x , float $y , float $z )

The swf_scale() scales curve coordinates by the given value.

Parâmetros

x

x scale factor.

y

y scale factor.

z

z scale factor.

Valor Retornado

Não há valor retornado.

swf_rotate
swf_setfont
Funções para SWF


Change the current font

swf_scale
swf_setframe
Funções para SWF
PHP Manual

swf_setfont

(PHP 4)

swf_setfont — Change the current font

Descrição

void swf_setfont ( int $fontid )

The swf_setfont() sets the current font to the value given by the fontid parameter.

Parâmetros

fontid

The font identifier.

Valor Retornado

Não há valor retornado.

swf_scale
swf_setframe
Funções para SWF


Switch to a specified frame

swf_setfont
swf_shapearc
Funções para SWF
PHP Manual

swf_setframe

(PHP 4)

swf_setframe — Switch to a specified frame

Descrição

void swf_setframe ( int $framenumber )

Changes the active frame to the specified on.

Parâmetros

framenumber

The frame number to be set.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_getframe() - Get the frame number of the current frame

swf_setfont
swf_shapearc
Funções para SWF


Draw a circular arc

swf_setframe
swf_shapecurveto3
Funções para SWF
PHP Manual

swf_shapearc

(PHP 4)

swf_shapearc — Draw a circular arc

Descrição

void swf_shapearc ( float $x , float $y , float $r , float $ang1 , float $ang2 )

Draws a circular arc.

Parâmetros

x

x-coordinate of the center.

y

y-coordinate of the center.

r

The arc radius.

ang1

The start angle.

ang2

The end angle.

Valor Retornado

Não há valor retornado.

swf_setframe
swf_shapecurveto3
Funções para SWF


Draw a cubic bezier curve

swf_shapearc
swf_shapecurveto
Funções para SWF
PHP Manual

swf_shapecurveto3

(PHP 4)

swf_shapecurveto3 — Draw a cubic bezier curve

Descrição

void swf_shapecurveto3 ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Draw a cubic bezier curve using the given coordinates.

The current position is then set to the x3,y3 coordinate.

Parâmetros

x1

x-coordinate of the first off curve control point.

y1

y-coordinate of the first off curve control point.

x2

x-coordinate of the second off curve control point.

y2

y-coordinate of the second off curve control point.

x3

x-coordinate of the endpoint.

y3

y-coordinate of the endpoint.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_shapecurveto() - Draw a quadratic bezier curve between two points

swf_shapearc
swf_shapecurveto
Funções para SWF


Draw a quadratic bezier curve between two points

swf_shapecurveto3
swf_shapefillbitmapclip
Funções para SWF
PHP Manual

swf_shapecurveto

(PHP 4)

swf_shapecurveto — Draw a quadratic bezier curve between two points

Descrição

void swf_shapecurveto ( float $x1 , float $y1 , float $x2 , float $y2 )

Draws a quadratic bezier curve from the current location, though the two given points.

The current position is then set to the point defined by the x2 and y2 parameters.

Parâmetros

x1

x-coordinate of the first point.

y1

y-coordinate of the first point.

x2

x-coordinate of the second point.

y2

y-coordinate of the second point.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_shapecurveto3() - Draw a cubic bezier curve

swf_shapecurveto3
swf_shapefillbitmapclip
Funções para SWF


Set current fill mode to clipped bitmap

swf_shapecurveto
swf_shapefillbitmaptile
Funções para SWF
PHP Manual

swf_shapefillbitmapclip

(PHP 4)

swf_shapefillbitmapclip — Set current fill mode to clipped bitmap

Descrição

void swf_shapefillbitmapclip ( int $bitmapid )

Sets the fill to bitmap clipped, empty spaces will be filled by the bitmap.

Parâmetros

bitmapid

The bitmap id.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_shapefillbitmaptile() - Set current fill mode to tiled bitmap

swf_shapecurveto
swf_shapefillbitmaptile
Funções para SWF


Set current fill mode to tiled bitmap

swf_shapefillbitmapclip
swf_shapefilloff
Funções para SWF
PHP Manual

swf_shapefillbitmaptile

(PHP 4)

swf_shapefillbitmaptile — Set current fill mode to tiled bitmap

Descrição

void swf_shapefillbitmaptile ( int $bitmapid )

Sets the fill to bitmap tile, empty spaces will be filled by the bitmap.

Parâmetros

bitmapid

The bitmap id.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_shapefillbitmapclip() - Set current fill mode to clipped bitmap

swf_shapefillbitmapclip
swf_shapefilloff
Funções para SWF


Turns off filling

swf_shapefillbitmaptile
swf_shapefillsolid
Funções para SWF
PHP Manual

swf_shapefilloff

(PHP 4)

swf_shapefilloff — Turns off filling

Descrição

void swf_shapefilloff ( void )

Turns off filling for the current shape.

Valor Retornado

Não há valor retornado.

swf_shapefillbitmaptile
swf_shapefillsolid
Funções para SWF


Set the current fill style to the specified color

swf_shapefilloff
swf_shapelinesolid
Funções para SWF
PHP Manual

swf_shapefillsolid

(PHP 4)

swf_shapefillsolid — Set the current fill style to the specified color

Descrição

void swf_shapefillsolid ( float $r , float $g , float $b , float $a )

Sets the current fill style to solid, and then sets the fill color to the given color.

Parâmetros

r

Red value

g

Green value

b

Blue value

a

Alpha value

Valor Retornado

Não há valor retornado.

swf_shapefilloff
swf_shapelinesolid
Funções para SWF


Set the current line style

swf_shapefillsolid
swf_shapelineto
Funções para SWF
PHP Manual

swf_shapelinesolid

(PHP 4)

swf_shapelinesolid — Set the current line style

Descrição

void swf_shapelinesolid ( float $r , float $g , float $b , float $a , float $width )

Sets the current line style to the given color and width.

Parâmetros

r

Red value

g

Green value

b

Blue value

a

Alpha value

width

The line width. If 0.0 is given then no lines are drawn.

Valor Retornado

Não há valor retornado.

swf_shapefillsolid
swf_shapelineto
Funções para SWF


Draw a line

swf_shapelinesolid
swf_shapemoveto
Funções para SWF
PHP Manual

swf_shapelineto

(PHP 4)

swf_shapelineto — Draw a line

Descrição

void swf_shapelineto ( float $x , float $y )

Draws a line to the x and y coordinates. The current position is then set to that point.

Parâmetros

x

x-coordinate of the target.

y

y-coordinate of the target.

Valor Retornado

Não há valor retornado.

swf_shapelinesolid
swf_shapemoveto
Funções para SWF


Move the current position

swf_shapelineto
swf_showframe
Funções para SWF
PHP Manual

swf_shapemoveto

(PHP 4)

swf_shapemoveto — Move the current position

Descrição

void swf_shapemoveto ( float $x , float $y )

Moves the current position to the given point.

Parâmetros

x

x-coordinate of the target.

y

y-coordinate of the target.

Valor Retornado

Não há valor retornado.

swf_shapelineto
swf_showframe
Funções para SWF


Display the current frame

swf_shapemoveto
swf_startbutton
Funções para SWF
PHP Manual

swf_showframe

(PHP 4)

swf_showframe — Display the current frame

Descrição

void swf_showframe ( void )

Outputs the current frame.

Valor Retornado

Não há valor retornado.

swf_shapemoveto
swf_startbutton
Funções para SWF


Start the definition of a button

swf_showframe
swf_startdoaction
Funções para SWF
PHP Manual

swf_startbutton

(PHP 4)

swf_startbutton — Start the definition of a button

Descrição

void swf_startbutton ( int $objid , int $type )

Starts the definition of a button.

Parâmetros

objid

The object id.

type

Can either be TYPE_MENUBUTTON or TYPE_PUSHBUTTON. The TYPE_MENUBUTTON constant allows the focus to travel from the button when the mouse is down, TYPE_PUSHBUTTON does not allow the focus to travel when the mouse is down.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_endbutton() - End the definition of the current button

swf_showframe
swf_startdoaction
Funções para SWF


Start a description of an action list for the current frame

swf_startbutton
swf_startshape
Funções para SWF
PHP Manual

swf_startdoaction

(PHP 4)

swf_startdoaction — Start a description of an action list for the current frame

Descrição

void swf_startdoaction ( void )

Starts the description of an action list for the current frame. This must be called before actions are defined for the current frame.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_enddoaction() - End the current action

swf_startbutton
swf_startshape
Funções para SWF


Start a complex shape

swf_startdoaction
swf_startsymbol
Funções para SWF
PHP Manual

swf_startshape

(PHP 4)

swf_startshape — Start a complex shape

Descrição

void swf_startshape ( int $objid )

Starts a complex shape.

Parâmetros

objid

The object id.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_endshape() - Completes the definition of the current shape

swf_startdoaction
swf_startsymbol
Funções para SWF


Define a symbol

swf_startshape
swf_textwidth
Funções para SWF
PHP Manual

swf_startsymbol

(PHP 4)

swf_startsymbol — Define a symbol

Descrição

void swf_startsymbol ( int $objid )

Defines an object id as a symbol. Symbols are tiny flash movies that can be played simultaneously.

Parâmetros

objid

The object id you want to define as a symbol.

Valor Retornado

Não há valor retornado.

Veja Também

  • swf_endsymbol() - End the definition of a symbol

swf_startshape
swf_textwidth
Funções para SWF


Get the width of a string

swf_startsymbol
swf_translate
Funções para SWF
PHP Manual

swf_textwidth

(PHP 4)

swf_textwidth — Get the width of a string

Descrição

float swf_textwidth ( string $str )

Gives the width of the string in pixels, using the current font and font size.

Parâmetros

str

The string.

Valor Retornado

Returns the line width, as a float.

swf_startsymbol
swf_translate
Funções para SWF


Translate the current transformations

swf_textwidth
swf_viewport
Funções para SWF
PHP Manual

swf_translate

(PHP 4)

swf_translate — Translate the current transformations

Descrição

void swf_translate ( float $x , float $y , float $z )

Translates the current transformation by the given values.

Parâmetros

x

x value.

y

y value.

z

z value.

Valor Retornado

Não há valor retornado.

swf_textwidth
swf_viewport
Funções para SWF


Select an area for future drawing

swf_translate
Extensões para Controle de Processo
Funções para SWF
PHP Manual

swf_viewport

(PHP 4)

swf_viewport — Select an area for future drawing

Descrição

void swf_viewport ( float $xmin , float $xmax , float $ymin , float $ymax )

Selects an area for future drawing for xmin to xmax and ymin to ymax, if this function is not called the area defaults to the size of the screen.

Parâmetros

xmin

xmax

ymin

ymax

Valor Retornado

Não há valor retornado.

swf_translate
Extensões para Controle de Processo
Funções para SWF


Extensões para Controle de Processo

  • Execução de programa — Execução de programa do sistema
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Execução de programas
  • Expect
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Expect Funções
  • Libevent
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Libevent Funções
  • PCNTL — Process Control
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • PCNTL Funções
  • POSIX
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • POSIX Funções
  • Semaphore — Semaphore, Shared Memory and IPC
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Semaphore Funções
  • Memória Compartilhada
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Memória Compartilhada
swf_viewport
Execução de programa
Referência das Funções


Execução de programa do sistema

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Execução de programas
    • escapeshellarg — Escapa uma string para usar como um argumento shell
    • escapeshellcmd — escapa metacaracteres shell
    • exec — Executa um programa externo
    • passthru — Executa um programa externo e mostra a saída crúa
    • proc_close — Fecha um processo aberto por proc_open e retorna o código de saída do processo.
    • proc_get_status — Obtem informação sobre um processo aberto por proc_open
    • proc_nice — Muda a prioridade do processo atual
    • proc_open — Executa um comando e abre ponteiros para entrada e saída
    • proc_terminate — Mata um processo aberto por proc_open
    • shell_exec — Executa um comando via shell e retorna a saída inteira como uma string
    • system — Executa um programa externo e mostra a saída
Extensões para Controle de Processo
Introdução
Extensões para Controle de Processo


Introdução

Estas funções prôvem meios para executar comandos no sistema em si, e meios de tornar seguros estes comandos.

Execução de programa
Instalação/Configuração
Execução de programa


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Execução de programa


Tipos Resource

Esta extensão define um recurso process, retornado por proc_open().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções para Execução de programas
Execução de programa


Funções para Execução de programas

Notas

Aviso

Arquivos abertos com travas (especialmente sessões abertas) devem ser fechados antes de executar um programa em segundo plano.

Veja Também

Estas funções estão muito relacionadas com backtick operator. Também, quando em safe mode você deverá considerar a diretiva safe_mode_exec_dir.

Índice

  • escapeshellarg — Escapa uma string para usar como um argumento shell
  • escapeshellcmd — escapa metacaracteres shell
  • exec — Executa um programa externo
  • passthru — Executa um programa externo e mostra a saída crúa
  • proc_close — Fecha um processo aberto por proc_open e retorna o código de saída do processo.
  • proc_get_status — Obtem informação sobre um processo aberto por proc_open
  • proc_nice — Muda a prioridade do processo atual
  • proc_open — Executa um comando e abre ponteiros para entrada e saída
  • proc_terminate — Mata um processo aberto por proc_open
  • shell_exec — Executa um comando via shell e retorna a saída inteira como uma string
  • system — Executa um programa externo e mostra a saída
Constantes pré-definidas
escapeshellarg
Execução de programa


Escapa uma string para usar como um argumento shell

Funções para Execução de programas
escapeshellcmd
Funções para Execução de programas
PHP Manual

escapeshellarg

(PHP 4 >= 4.0.3, PHP 5)

escapeshellarg — Escapa uma string para usar como um argumento shell

Descrição

string escapeshellarg ( string $arg )

escapeshellarg() adiciona aspas simples em torno de uma string e escapa qualquer as aspas simples existentes permitindo a você passar uma string diretamente para uma função shell e tendo ela tradata como um argumento seguro. Esta função deve ser usado para escapar argumentos para funções shell vindos de dados de usuários. As funções shell incluem exec(), system() e backtick operator.

Parâmetros

arg

O argumento que será escapado.

Valor Retornado

A string escapada.

Exemplos

Exemplo #1 Exemplo escapeshellarg()

<?php
system('ls '.escapeshellarg($dir));
?>

Veja Também

  • escapeshellcmd() - escapa metacaracteres shell
  • exec() - Executa um programa externo
  • popen() - Abre um processo como ponteiro de arquivo
  • system() - Executa um programa externo e mostra a saída
  • backtick operator

Funções para Execução de programas
escapeshellcmd
Funções para Execução de programas


escapa metacaracteres shell

escapeshellarg
exec
Funções para Execução de programas
PHP Manual

escapeshellcmd

(PHP 4, PHP 5)

escapeshellcmd — escapa metacaracteres shell

Descrição

string escapeshellcmd ( string $command )

escapeshellcmd() escapa qualquer caractere em uma string que possa ser utilizado para enganar um comando shell para executar comandos arbritários. Esta função deve ser utilizada para ter certeza que quaisquer dados vindos do usuário é escapado antes que estes dados sejam passados para as funções exec() ou system(), ou para backtick operator.

Os seguintes caracteres são precedidos por uma barra invertida: #&;`|*?~<>^()[]{}$\, \x0A e \xFF. ' e " são escapados apenas se não estiverem em pares. No windows, todos estes caracteres mais % são ao invés substituidos por um espaço.

Parâmetros

command

O comando que será escapado.

Valor Retornado

A string escapada.

Exemplos

Exemplo #1 Exemplo escapeshellcmd()

<?php
$e = escapeshellcmd($userinput);

// Aqui não nos preocupamos se $e tem espaços
system("echo $e");
$f = escapeshellcmd($filename);

// aqui sim
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\"");
?>

Veja Também

  • escapeshellarg() - Escapa uma string para usar como um argumento shell
  • exec() - Executa um programa externo
  • popen() - Abre um processo como ponteiro de arquivo
  • system() - Executa um programa externo e mostra a saída
  • backtick operator

escapeshellarg
exec
Funções para Execução de programas


Executa um programa externo

escapeshellcmd
passthru
Funções para Execução de programas
PHP Manual

exec

(PHP 4, PHP 5)

exec — Executa um programa externo

Descrição

string exec ( string $command [, array &$output [, int &$return_var ]] )

exec() executa o command dado.

Parâmetros

command

O comando que será executado.

output

Se o argumento output estiver presente, então a matriz especificada será prenchida com cada linha da saída do comando. Espaços ao final, como \n, não são incluídos nesta matriz. Note que se a matriz já contiver alguns elementos, exec() irá adicionar ao final da matriz. Se você não quiser que a função adicione elementos, use unset() antes de passar ela para exec().

return_var

Se o argumento return_var esta presente junto com o argumento output, então o status de retorno do comando executado será escrito nesta variável.

Valor Retornado

A ultima linha do resultado do comando. Se você precisa executar um comando e ter todos os dados passados diretamente de volta sem qualquer interferência, use a função passthru().

Para pegar a saída do comando executado, tenha certeza de definir e usar o parâmetro output.

Exemplos

Exemplo #1 Um exemplo exec()

<?php
// Mostra o nome de quem é o dono do processo php/httpd
// (em um sistema com o executável "whoami" no path)
echo exec('whoami');
?>

Notas

Aviso

Quando permitindo dados fornecidos por usuário para ser passado para esta função, use escapeshellarg() ou escapeshellcmd() para se certificar que os usuários não tentarão enganar o sistema com comandos arbitrários.

Nota:

Se um programa é iniciado com esta função, e deseja que ele continue rodando em background, a saída do programa precisa se redirecionada para um arquivo ou outro output stream. Se isso não é feito, o que irá ocorrer é que o PHP ficará esperando até que a execução do programa termine.

Nota: Quando o safe mode estiver ativo, você só pode chamar executáveis dentro de safe_mode_exec_dir. Por razões práticas não é permitido haver .. no caminho do executável.

Aviso

Com safe mode ativado, a string do comando é escapada com escapeshellcmd(). Então, echo y | echo x vira echo y \| echo x.

Veja Também

  • system() - Executa um programa externo e mostra a saída
  • passthru() - Executa um programa externo e mostra a saída crúa
  • escapeshellcmd() - escapa metacaracteres shell
  • pcntl_exec() - Executes specified program in current process space
  • backtick operator

escapeshellcmd
passthru
Funções para Execução de programas


Executa um programa externo e mostra a saída crúa

exec
proc_close
Funções para Execução de programas
PHP Manual

passthru

(PHP 4, PHP 5)

passthru — Executa um programa externo e mostra a saída crúa

Descrição

void passthru ( string $command [, int &$return_var ] )

A função passthru() é similar a a função exec() no que ela executa um command. Esta função deve ser usada no lugar de exec() ou system() quando a saída do comando Unix é dados binários que precisam ser passados diretamente de volta para o browser. Um uso comum para isso é para executar algo como pbmplus que podem enviar um stream com uma imagem diretamente. Definindo o Content-type para image/gif e então chamando o programa para mostrar um gif, você pode criar scripts PHP que mostram imagens diretamente.

Parâmetros

command

O comando que será executado.

return_var

Se o argumento return_var esta presente, o status de retorno do comando Unix será colocado aqui.

Valor Retornado

Não há valor retornado.

Notas

Aviso

Quando permitindo dados fornecidos por usuário para ser passado para esta função, use escapeshellarg() ou escapeshellcmd() para se certificar que os usuários não tentarão enganar o sistema com comandos arbitrários.

Nota:

Se um programa é iniciado com esta função, e deseja que ele continue rodando em background, a saída do programa precisa se redirecionada para um arquivo ou outro output stream. Se isso não é feito, o que irá ocorrer é que o PHP ficará esperando até que a execução do programa termine.

Nota: Quando o safe mode estiver ativo, você só pode chamar executáveis dentro de safe_mode_exec_dir. Por razões práticas não é permitido haver .. no caminho do executável.

Aviso

Com safe mode ativado, a string do comando é escapada com escapeshellcmd(). Então, echo y | echo x vira echo y \| echo x.

Veja Também

  • exec() - Executa um programa externo
  • system() - Executa um programa externo e mostra a saída
  • popen() - Abre um processo como ponteiro de arquivo
  • escapeshellcmd() - escapa metacaracteres shell
  • Operador backtick

exec
proc_close
Funções para Execução de programas


Fecha um processo aberto por proc_open e retorna o código de saída do processo.

passthru
proc_get_status
Funções para Execução de programas
PHP Manual

proc_close

(PHP 4 >= 4.3.0, PHP 5)

proc_close — Fecha um processo aberto por proc_open() e retorna o código de saída do processo.

Descrição

int proc_close ( resource $process )

proc_close() é similar a pclose() exceto que ela só funciona em processos abertos por proc_open(). proc_close() espera pelo processo terminar, e retorna o seu código de saída. Se você tiver pipes abertos para este processo, você deve usar fclose() antes de usar esta função para previnir travamentos - o processo filho não será capaz de sair enquanto pipes estiverem abertos.

Parâmetros

process

O resource proc_open() que será fechado.

Valor Retornado

Retorna o estado do processo ao terminar que foi executado.

passthru
proc_get_status
Funções para Execução de programas


Obtem informação sobre um processo aberto por proc_open

proc_close
proc_nice
Funções para Execução de programas
PHP Manual

proc_get_status

(PHP 5)

proc_get_status — Obtem informação sobre um processo aberto por proc_open()

Descrição

array proc_get_status ( resource $process )

proc_get_status() obtém dados sobre um processo aberto usando proc_open().

Parâmetros

process

O resource proc_open() que será avaliado.

Valor Retornado

Uma array com a informação coletada em caso de sucesso, e FALSE em caso de falha. A array retonada contém os seguintes elementos:

elemento | type | descrição
command | string | A string de comando que foi passado para proc_open().
pid | int | Id do processo
running | bool | TRUE se o processo ainda esta sendo executado, FALSE se ele terminou.
signaled | bool | TRUE se o processo filho terminou por um sinal não capturado. Sempre definido como FALSE no Windows.
stopped | bool | TRUE se o processo filho foi parado por um sinal. Sempre definido como FALSE no Windows.
exitcode | int | O código de saída retornado pelo processo ( o qual só significativo se running é FALSE) Apenas a primeira chamada a esta função retorna o valor real, a próxima chamada retorna -1.
termsig | int | O número do sinal que fez o processo filho terminar a sua execução ( somente significativo se signaled é TRUE)
stopsig | int | O número do sinal que fez o processo filho terminar a sua execução ( somente significativo se stopped é TRUE)

Veja Também

  • proc_open() - Executa um comando e abre ponteiros para entrada e saída

proc_close
proc_nice
Funções para Execução de programas


Muda a prioridade do processo atual

proc_get_status
proc_open
Funções para Execução de programas
PHP Manual

proc_nice

(PHP 5)

proc_nice — Muda a prioridade do processo atual

Descrição

bool proc_nice ( int $increment )

proc_nice() muda a prioridade do processo atual pela quantidade especificada em increment. Um increment positivo irá diminuir a prioridade do processo atual, enquanto um increment negativo irá aumentar a prioridade.

proc_nice() não é relacionada com proc_open() e suas funções associadas de qualquer maneira.

Parâmetros

increment

O valor do incremento da mudança de prioridade.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Se ocorrer um erro, como o usuário não ter permissões suficientes para mudar a prioridade, um erro de nível E_WARNING também é gerado.

Notas

Nota: Disponibilidade

proc_nice() irá existir apenas se o seu sistema tiver capacidades 'nice'. 'nice' conforma com: SVr4, SVID EXT, AT&T, X/OPEN, BSD 4.3. Isto significa que proc_nice() não esta disponível no windows.

proc_get_status
proc_open
Funções para Execução de programas


Executa um comando e abre ponteiros para entrada e saída

proc_nice
proc_terminate
Funções para Execução de programas
PHP Manual

proc_open

(PHP 4 >= 4.3.0, PHP 5)

proc_open — Executa um comando e abre ponteiros para entrada e saída

Descrição

resource proc_open ( string $cmd , array $descriptorspec , array &$pipes [, string $cwd [, array $env [, array $other_options ]]] )

proc_open() é similar a popen() mas provê uma grau de controle muito maior sobre a execução do programa.

Parâmetros

cmd

O comando a executar

descriptorspec

Uma matriz indexada aonde a chave representa o número do descritor e o valor representa como o PHP passará este descritor para o processo filho. 0 é stdin, 1 é stdout, enquanto 2 é stderr.

Os pipes suportados atualmente são file e pipe .

Os números dos descritores de arquivos não estão limitados a 0, 1 e 2 - você pode especificar qualquer número de descritor válido e ele será passado para o processo filho. Isto permiteao seu script interoperar com outros scripts que sejam executados como "co-processos". Em particular, isto é útil para passar senhas para programas como PGP, GPG e openssl de uma maneira mais segura. Também é útil para ler informações do estado providos por esses programas em descritores auxiliares.

pipes

Sera definido como uma matriz indexada de ponteiros de arquivos que corresponde aos pipes do lado do PHP que são criados.

cwd

O diretório inicial de trabalho para o comando. Este deve ser um caminho absoluto, ou NULL se você quer usar o valor padrão (o diretório de trabalho do processo PHP atual)

env

Uma matriz de variáveis de ambiênte para o comando que será executado, ou NULL para usar o mesmo ambiênte que o processo PHP atual.

other_options

Permite a você definir opções adicionais. Opções atualmente suportadas incluem:

  • suppress_errors (apenas windows): suprime os erros gerados por esta função quando estiver definido como TRUE
  • bypass_shell (apenas windows): ignora o shell cmd.exe quando esta definido como TRUE
  • context: contexto de stream usado ao abrir arquivos (criado com stream_context_create())
  • binary_pipes: abre os pipes em modo binário, ao invés de usar o stream_encoding

Valor Retornado

Retorna um recurso representando o processo, o qual deve ser liberado usando proc_close() quando você terminou de utiliza-lo. Em caso de falha retorna FALSE.

Histórico

Versão | Descrição
6.0.0 | Adicionado as opções context e binary_pipes no parâmetro other_options.
5.2.1 | Adicionada a opção bypass_shell ao parâmetro other_options.
5.0.0 | Adicionado os parâmetros cwd, env e other_options.

Exemplos

Exemplo #1 Um exemplo proc_open()

<?php
$descriptorspec = array(
   0 => array("pipe", "r"),  // stdin is a pipe that the child will read from
   1 => array("pipe", "w"),  // stdout is a pipe that the child will write to
   2 => array("file", "/tmp/error-output.txt", "a") // stderr is a file to write to
);

$cwd = '/tmp';
$env = array('some_option' => 'aeiou');

$process = proc_open('php', $descriptorspec, $pipes, $cwd, $env);

if (is_resource($process)) {
    // $pipes now looks like this:
    // 0 => writeable handle connected to child stdin
    // 1 => readable handle connected to child stdout
    // Any error output will be appended to /tmp/error-output.txt

    fwrite($pipes[0], '<?php print_r($_ENV); ?>');
    fclose($pipes[0]);

    echo stream_get_contents($pipes[1]);
    fclose($pipes[1]);

    // It is important that you close any pipes before calling
    // proc_close in order to avoid a deadlock
    $return_value = proc_close($process);

    echo "command returned $return_value\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [some_option] => aeiou
    [PWD] => /tmp
    [SHLVL] => 1
    [_] => /usr/local/bin/php
)
command returned 0

Notas

Nota:

Compatibilidade com Windows: Descritores além do 2(stderr) são tornados disponíveis ao processo filho como manipuladores herdados, mas já que a arquitetura Windows não associa números de descritores de arquivos com os manipuladores de baixo nível, o processo filho (ainda) não tem meios de acessar estes manipuladores. Stdin, stdout e stderr funcionam como esperado.

Nota:

Se você precisa de um pipe de processo de apenas uma direção, use popen() ao invés, já que é muito mais fácil de usar.

Veja Também

  • popen() - Abre um processo como ponteiro de arquivo
  • exec() - Executa um programa externo
  • system() - Executa um programa externo e mostra a saída
  • passthru() - Executa um programa externo e mostra a saída crúa
  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
  • O operador backtick

proc_nice
proc_terminate
Funções para Execução de programas


Mata um processo aberto por proc_open

proc_open
shell_exec
Funções para Execução de programas
PHP Manual

proc_terminate

(PHP 5)

proc_terminate — Mata um processo aberto por proc_open

Descrição

bool proc_terminate ( resource $process [, int $signal ] )

Sinaliza um process (criado usando proc_open()) que ele deve terminar. proc_terminate() retorna imediatamente e não espera pelo processo terminar.

proc_terminate() permite a você terminar o processo e continuar com outras tarefas. Você pode descobrir se o processo já parou usando a função proc_get_status(). Contudo isto é somente possível com PHP 5.2.2 ou superior, como antigas versões destroem o dado processo resource.

Parâmetros

process

O resource proc_open() que será fechado.

signal

O parâmetro opcional é somente útil em sistemas operacionais POSIX, você deve especificar um sinal para enviar para o processo usando a chamada de sistema kill(2). O padrão é SIGTERM.

Valor Retornado

Retorna o status de terminação do processo que estava executando.

Veja Também

  • proc_open() - Executa um comando e abre ponteiros para entrada e saída
  • proc_close() - Fecha um processo aberto por proc_open e retorna o código de saída do processo.
  • proc_get_status() - Obtem informação sobre um processo aberto por proc_open

proc_open
shell_exec
Funções para Execução de programas


Executa um comando via shell e retorna a saída inteira como uma string

proc_terminate
system
Funções para Execução de programas
PHP Manual

shell_exec

(PHP 4, PHP 5)

shell_exec — Executa um comando via shell e retorna a saída inteira como uma string

Descrição

string shell_exec ( string $cmd )

Esta função é identica ao operador backtick.

Parâmetros

cmd

O comando que será executado.

Valor Retornado

A saída do comando executado.

Exemplos

Exemplo #1 Um exemplo da shell_exec()

<?php
$output = shell_exec('ls -lart');
echo "<pre>$output</pre>";
?>

Notas

Nota:

Esta função é desabilitada quando o PHP é executado em safe-mode

Veja Também

  • exec() - Executa um programa externo
  • escapeshellcmd() - escapa metacaracteres shell

proc_terminate
system
Funções para Execução de programas


Executa um programa externo e mostra a saída

shell_exec
Expect
Funções para Execução de programas
PHP Manual

system

(PHP 4, PHP 5)

system — Executa um programa externo e mostra a saída

Descrição

string system ( string $command [, int &$return_var ] )

system() é igual a versão C desta função no que executa o command indicado e mostra o resultado.

A função system() também tenta automaticamente limpar o buffer de saída do servidor mandando os dados para o browser após cada linha de saída se o PHP estiver sendo executado como módulo de servidor.

Se você precisa executar um comando e ter todos os dados do comando passados sem nenhuma interferencia, use a função passthru().

Parâmetros

command

O comando que será executado.

return_var

Se o argumento return_var é fornecido, então o status de retorno do comando executado será escrito para esta variável.

Valor Retornado

Retorna a última linha da saída do comando em sucesso, e FALSE em falha.

Exemplos

Exemplo #1 Exemplo da system()

<?php
echo '<pre>';

// Mostra todo o resultado do comando do shell "ls", e retorna
// a última linha da saída em $last_line. Guarda o valor de retorno
// do comando shell em $retval.
$last_line = system('ls', $retval);

// Mostrando informação adicional
echo '
</pre>
<hr />Última linha da saída: '.$last_line.'
<hr />Valor de Retorno: '.$retval;
?>

Notas

Aviso

Quando permitindo dados fornecidos por usuário para ser passado para esta função, use escapeshellarg() ou escapeshellcmd() para se certificar que os usuários não tentarão enganar o sistema com comandos arbitrários.

Nota:

Se um programa é iniciado com esta função, e deseja que ele continue rodando em background, a saída do programa precisa se redirecionada para um arquivo ou outro output stream. Se isso não é feito, o que irá ocorrer é que o PHP ficará esperando até que a execução do programa termine.

Nota: Quando o safe mode estiver ativo, você só pode chamar executáveis dentro de safe_mode_exec_dir. Por razões práticas não é permitido haver .. no caminho do executável.

Aviso

Com safe mode ativado, a string do comando é escapada com escapeshellcmd(). Então, echo y | echo x vira echo y \| echo x.

Veja Também

  • exec() - Executa um programa externo
  • passthru() - Executa um programa externo e mostra a saída crúa
  • popen() - Abre um processo como ponteiro de arquivo
  • escapeshellcmd() - escapa metacaracteres shell
  • pcntl_exec() - Executes specified program in current process space
  • operador backtick

shell_exec
Expect
Funções para Execução de programas


Expect

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Expect Usage Examples
  • Expect Funções
    • expect_expectl — Waits until the output from a process matches one of the patterns, a specified time period has passed, or an EOF is seen
    • expect_popen — Execute command via Bourne shell, and open the PTY stream to the process
system
Introdução
Extensões para Controle de Processo


Introdução

This extension allows to interact with processes through PTY. You may consider using the expect:// wrapper with the filesystem functions which provide a simpler and more intuitive interface.

Expect
Instalação/Configuração
Expect


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Expect


Dependências

This module uses the functions of the » expect library. You need libexpect version >= 5.43.0.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/expect.

No PHP 4, os fontes desta estensão PECL podem ser encontrados no diretório ext/ ou dentro dos fontes do PHP ou no link PECL acima. In order to use these functions you must compile PHP with expect support by using the --with-expect[=DIR] configure option.

Windows users will enable php_expect.dll inside of php.ini in order to use these functions. No PHP esta DLL reside no diretório extensions/ junto aos binários do PHP para Windows. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

In order to configure expect extension, there are configuration options in the configuration file php.ini.

Expect Opções de Configuração
Nome | Padrão | Modificável | Changelog
expect.timeout | "10" | PHP_INI_ALL |
expect.loguser | "1" | PHP_INI_ALL |
expect.logfile | "" | PHP_INI_ALL |
expect.match_max | "" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

expect.timeout integer

The timeout period for waiting for the data, when using the expect_expectl() function.

A value of "-1" disables a timeout from occurring.

Nota:

A value of "0" causes the expect_expectl() function to return immediately.

expect.loguser boolean

Whether expect should send any output from the spawned process to stdout. Since interactive programs typically echo their input, this usually suffices to show both sides of the conversation.

expect.logfile string

Name of the file, where the output from the spawned process will be written. If this file doesn't exist, it will be created.

Nota:

If this configuration is not empty, the output is written regardless of the value of expect.loguser.

expect.match_max integer

Changes default size (2000 bytes) of the buffer used to match asterisks in patterns.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

expect_popen() returns an open PTY stream used by expect_expectl().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

EXP_GLOB (integer)
Indicates that the pattern is a glob-style string pattern.
EXP_EXACT (integer)
Indicates that the pattern is an exact string.
EXP_REGEXP (integer)
Indicates that the pattern is a regexp-style string pattern.
EXP_EOF (integer)
Value, returned by expect_expectl(), when EOF is reached.
EXP_TIMEOUT (integer)
Value, returned by expect_expectl() upon timeout of seconds, specified in value of expect.timeout
EXP_FULLBUFFER (integer)
Value, returned by expect_expectl() if no pattern have been matched.
Tipos Resource
Exemplos
Expect


Exemplos

Índice

  • Expect Usage Examples
Constantes pré-definidas
Expect Usage Examples
Expect


Expect Usage Examples

Exemplo #1 Expect Usage Example

This example connects to the remote host via SSH, and prints the remote uptime.

<?php
ini_set("expect.loguser", "Off");

$stream = fopen("expect://ssh root@remotehost uptime", "r");

$cases = array (
    array (0 => "password:", 1 => PASSWORD)
);

switch (expect_expectl ($stream, $cases)) {
    case PASSWORD:
        fwrite ($stream, "password\n");
        break;

    default:
        die ("Error was occurred while connecting to the remote host!\n");
}

while ($line = fgets($stream)) {
      print $line;
}
fclose ($stream);
?>

The following example connects to the remote host, determines whether installed OS is for 32 or 64 bit, then runs update for specific package.

Exemplo #2 Another Expect Usage Example

<?php
ini_set("expect.timeout", -1);
ini_set("expect.loguser", "Off");

$stream = expect_popen("ssh root@remotehost");

while (true) {
    switch (expect_expectl ($stream, array (
            array ("password:", PASSWORD), // SSH is asking for password
            array ("yes/no)?", YESNO), // SSH is asking whether to store the host entry
            array ("~$ ", SHELL, EXP_EXACT), // We've got the shell!
    ))) {
        case PASSWORD:
            fwrite ($stream, "secret\n");
            break;

        case YESNO:
            fwrite ($stream, "yes\n");
            break;

        case SHELL:
            fwrite ($stream, "uname -a\n");
            while (true) {
                    switch (expect_expectl ($stream, array (
                            array ("~$ ", SHELL, EXP_EXACT), // We've got the shell!
                            array ("^Linux.*$", UNAME, EXP_REGEXP), // uname -a output
                    ), $match)) {
                        case UNAME:
                            $uname .= $match[0];
                            break;

                        case SHELL:
                            // Run update:
                            if (strstr ($uname, "x86_64")) {
                                    fwrite ($stream, "rpm -Uhv http://mirrorsite/somepath/some_64bit.rpm\n");
                            } else {
                                    fwrite ($stream, "rpm -Uhv http://mirrorsite/somepath/some_32bit.rpm\n");
                            }
                            fwrite ($stream, "exit\n");
                            break 2;

                        case EXP_TIMEOUT:
                        case EXP_EOF:
                            break 2;

                        default:
                            die ("Error has occurred!\n");
                    }
            }
            break 2;

        case EXP_TIMEOUT:
        case EXP_EOF:
            break 2;

        default:
            die ("Error has occurred!\n");
    }
}

fclose ($stream);
?>
Exemplos
Expect Funções
Exemplos


Expect Funções

Índice

  • expect_expectl — Waits until the output from a process matches one of the patterns, a specified time period has passed, or an EOF is seen
  • expect_popen — Execute command via Bourne shell, and open the PTY stream to the process
Expect Usage Examples
expect_expectl
Expect


Waits until the output from a process matches one of the patterns, a specified time period has passed, or an EOF is seen

Expect Funções
expect_popen
Expect Funções
PHP Manual

expect_expectl

(PECL expect >= 0.1.0)

expect_expectl — Waits until the output from a process matches one of the patterns, a specified time period has passed, or an EOF is seen

Descrição

int expect_expectl ( resource $expect , array $cases [, array &$match ] )

Waits until the output from a process matches one of the patterns, a specified time period has passed, or an EOF is seen.

If match is provided, then it is filled with the result of search. The matched string can be found in match[0]. The match substrings (according to the parentheses) in the original pattern can be found in match[1], match[2], and so on, up to match[9] (the limitation of libexpect).

Parâmetros

expect

An Expect stream, previously opened with expect_popen().

cases

An array of expect cases. Each expect case is an indexed array, as described in the following table:

Expect Case Array
Index Key | Value Type | Description | Is Mandatory | Default Value
0 | string | pattern, that will be matched against the output from the stream | yes
1 | mixed | value, that will be returned by this function, if the pattern matches | yes
2 | integer | pattern type, one of: EXP_GLOB, EXP_EXACT or EXP_REGEXP | no | EXP_GLOB

Valor Retornado

Returns value associated with the pattern that was matched.

On failure this function returns: EXP_EOF, EXP_TIMEOUT or EXP_FULLBUFFER

Histórico

Versão | Descrição
0.2.1 | Prior to version 0.2.1, in match parameter a match string was returned, not an array of match substrings.

Exemplos

Exemplo #1 expect_expectl() example

<?php
// Copies file from remote host:
ini_set ("expect.timeout", 30);

$stream = fopen ("expect://scp user@remotehost:/var/log/messages /home/user/messages.txt", "r");

$cases = array (
  array (0 => "password:", 1 => PASSWORD),
  array (0 => "yes/no)?", 1 => YESNO)
);

while (true) {
 switch (expect_expectl ($stream, $cases))
 {
  case PASSWORD:
   fwrite ($stream, "password\n");
   break;

  case YESNO:
   fwrite ($stream, "yes\n");
   break;

  case EXP_TIMEOUT:
  case EXP_EOF:
   break 2;

  default:
   die ("Error has occurred!\n");
 }
}

fclose ($stream);
?>

Veja Também

  • expect_popen() - Execute command via Bourne shell, and open the PTY stream to the process

Expect Funções
expect_popen
Expect Funções


Execute command via Bourne shell, and open the PTY stream to the process

expect_expectl
Libevent
Expect Funções
PHP Manual

expect_popen

(PECL expect >= 0.1.0)

expect_popen — Execute command via Bourne shell, and open the PTY stream to the process

Descrição

resource expect_popen ( string $command )

Execute command via Bourne shell, and open the PTY stream to the process.

Parâmetros

command

Command to execute.

Valor Retornado

Returns an open PTY stream to the processes stdio, stdout, and stderr.

On failure this function returns FALSE.

Exemplos

Exemplo #1 expect_popen() example

<?php
// Login to the PHP.net CVS repository:
$stream = expect_popen ("cvs -d :pserver:anonymous@cvs.php.net:/repository login");
sleep (3);
fwrite ($stream, "phpfi\n");
fclose ($stream);
?>

Veja Também

  • popen() - Abre um processo como ponteiro de arquivo

expect_expectl
Libevent
Expect Funções


Libevent

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Libevent Funções
    • event_add — Add an event to the set of monitored events
    • event_base_free — Destroy event base
    • event_base_loop — Handle events
    • event_base_loopbreak — Abort event loop
    • event_base_loopexit — Exit loop after a time
    • event_base_new — Create and initialize new event base
    • event_base_priority_init — Set the number of event priority levels
    • event_base_set — Associate event base with an event
    • event_buffer_base_set — Associate buffered event with an event base
    • event_buffer_disable — Disable a buffered event
    • event_buffer_enable — Enable a buffered event
    • event_buffer_fd_set — Change a buffered event file descriptor
    • event_buffer_free — Destroy buffered event
    • event_buffer_new — Create new buffered event
    • event_buffer_priority_set — Assign a priority to a buffered event
    • event_buffer_read — Read data from a buffered event
    • event_buffer_set_callback — Set or reset callbacks for a buffered event
    • event_buffer_timeout_set — Set read and write timeouts for a buffered event
    • event_buffer_watermark_set — Set the watermarks for read and write events
    • event_buffer_write — Write data to a buffered event
    • event_del — Remove an event from the set of monitored events
    • event_free — Free event resource
    • event_new — Create new event
    • event_set — Prepare an event
expect_popen
Introdução
Extensões para Controle de Processo


Introdução

Libevent is a library that provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached.

More information about Libevent can be found at » http://www.monkey.org/~provos/libevent/.

Libevent
Instalação/Configuração
Libevent


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Libevent


Dependências

This extension requires » libevent library. Minimal required version is 1.4.0.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/libevent.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

There are several resource types used in the extension. These resources are event, event base and buffered event.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

EV_TIMEOUT (integer)
EV_READ (integer)
EV_WRITE (integer)
EV_SIGNAL (integer)
EV_PERSIST (integer)
EVLOOP_NONBLOCK (integer)
EVLOOP_ONCE (integer)
Tipos Resource
Exemplos
Libevent


Exemplos

Exemplo #1 polling STDIN using basic API

<?php

function print_line($fd, $events, $arg)
{
    static $max_requests = 0;

    $max_requests++;

    if ($max_requests == 10) {
        // exit loop after 10 writes
        event_base_loopexit($arg[1]);
    }

    // print the line
    echo  fgets($fd);
}

// create base and event
$base = event_base_new();
$event = event_new();

$fd = STDIN;

// set event flags
event_set($event, $fd, EV_READ | EV_PERSIST, "print_line", array($event, $base));
// set event base
event_base_set($event, $base);

// enable event
event_add($event);
// start event loop
event_base_loop($base);

?>

Exemplo #2 polling STDIN using buffered event API

<?php

function print_line($buf, $arg)
{
    static $max_requests;

    $max_requests++;

    if ($max_requests == 10) {
        event_base_loopexit($arg);
    }

    // print the line
    echo event_buffer_read($buf, 4096);
}

function error_func($buf, $what, $arg)
{
    // handle errors
}

$base = event_base_new();
$eb = event_buffer_new(STDIN, "print_line", NULL, "error_func", $base);

event_buffer_base_set($eb, $base);
event_buffer_enable($eb, EV_READ);

event_base_loop($base);

?>

Constantes pré-definidas
Libevent Funções
Libevent


Libevent Funções

Índice

  • event_add — Add an event to the set of monitored events
  • event_base_free — Destroy event base
  • event_base_loop — Handle events
  • event_base_loopbreak — Abort event loop
  • event_base_loopexit — Exit loop after a time
  • event_base_new — Create and initialize new event base
  • event_base_priority_init — Set the number of event priority levels
  • event_base_set — Associate event base with an event
  • event_buffer_base_set — Associate buffered event with an event base
  • event_buffer_disable — Disable a buffered event
  • event_buffer_enable — Enable a buffered event
  • event_buffer_fd_set — Change a buffered event file descriptor
  • event_buffer_free — Destroy buffered event
  • event_buffer_new — Create new buffered event
  • event_buffer_priority_set — Assign a priority to a buffered event
  • event_buffer_read — Read data from a buffered event
  • event_buffer_set_callback — Set or reset callbacks for a buffered event
  • event_buffer_timeout_set — Set read and write timeouts for a buffered event
  • event_buffer_watermark_set — Set the watermarks for read and write events
  • event_buffer_write — Write data to a buffered event
  • event_del — Remove an event from the set of monitored events
  • event_free — Free event resource
  • event_new — Create new event
  • event_set — Prepare an event
Exemplos
event_add
Libevent


Add an event to the set of monitored events

Libevent Funções
event_base_free
Libevent Funções
PHP Manual

event_add

(PECL libevent >= 0.0.1)

event_add — Add an event to the set of monitored events

Descrição

bool event_add ( resource $event [, int $timeout = -1 ] )

event_add() schedules the execution of the event when the event specified in event_set() occurs or in at least the time specified by the timeout argument. If timeout was not specified, not timeout is set. The event must be already initalized by event_set() and event_base_set() functions. If the event already has a timeout set, it is replaced by the new one.

Parâmetros

event

Valid event resource.

timeout

Optional timeout (in microseconds).

Valor Retornado

event_add() returns TRUE on success or FALSE on error.

Libevent Funções
event_base_free
Libevent Funções


Destroy event base

event_add
event_base_loop
Libevent Funções
PHP Manual

event_base_free

(PECL libevent >= 0.0.1)

event_base_free — Destroy event base

Descrição

void event_base_free ( resource $event_base )

Destroys the specified event_base and frees all the resources associated. Note that it's not possible to destroy an event base with events attached to it.

Parâmetros

event_base

Valid event base resource.

event_add
event_base_loop
Libevent Funções


Handle events

event_base_free
event_base_loopbreak
Libevent Funções
PHP Manual

event_base_loop

(PECL libevent >= 0.0.1)

event_base_loop — Handle events

Descrição

int event_base_loop ( resource $event_base [, int $flags = 0 ] )

Starts event loop for the specified event base.

Parâmetros

event_base

Valid event base resource.

flags

Optional parameter, which can take any combination of EVLOOP_ONCE and EVLOOP_NONBLOCK.

Valor Retornado

event_base_loop() returns 0 on success, -1 on error and 1 if no events were registered.

event_base_free
event_base_loopbreak
Libevent Funções


Abort event loop

event_base_loop
event_base_loopexit
Libevent Funções
PHP Manual

event_base_loopbreak

(PECL libevent >= 0.0.1)

event_base_loopbreak — Abort event loop

Descrição

bool event_base_loopbreak ( resource $event_base )

Abort the active event loop immediately. The behaviour is similar to break statement.

Parâmetros

event_base

Valid event base resource.

Valor Retornado

event_base_loopbreak() returns TRUE on success or FALSE on error.

event_base_loop
event_base_loopexit
Libevent Funções


Exit loop after a time

event_base_loopbreak
event_base_new
Libevent Funções
PHP Manual

event_base_loopexit

(PECL libevent >= 0.0.1)

event_base_loopexit — Exit loop after a time

Descrição

bool event_base_loopexit ( resource $event_base [, int $timeout = -1 ] )

The next event loop iteration after the given timer expires will complete normally, then exit without blocking for events again.

Parâmetros

event_base

Valid event base resource.

timeout

Optional timeout parameter (in microseconds).

Valor Retornado

event_base_loopexit() returns TRUE on success or FALSE on error.

event_base_loopbreak
event_base_new
Libevent Funções


Create and initialize new event base

event_base_loopexit
event_base_priority_init
Libevent Funções
PHP Manual

event_base_new

(PECL libevent >= 0.0.1)

event_base_new — Create and initialize new event base

Descrição

resource event_base_new ( void )

Returns new event base, which can be used later in event_base_set(), event_base_loop() and other functions.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

event_base_new() returns valid event base resource on success or FALSE on error.

event_base_loopexit
event_base_priority_init
Libevent Funções


Set the number of event priority levels

event_base_new
event_base_set
Libevent Funções
PHP Manual

event_base_priority_init

(PECL libevent >= 0.0.2)

event_base_priority_init — Set the number of event priority levels

Descrição

bool event_base_priority_init ( resource $event_base , int $npriorities )

Sets the number of different event priority levels.

By default all events are scheduled with the same priority (npriorities/2). Using event_base_priority_init() you can change the number of event priority levels and then set a desired priority for each event.

Parâmetros

event_base

Valid event base resource.

npriorities

The number of event priority levels.

Valor Retornado

event_base_priority_init() returns TRUE on success or FALSE on error.

event_base_new
event_base_set
Libevent Funções


Associate event base with an event

event_base_priority_init
event_buffer_base_set
Libevent Funções
PHP Manual

event_base_set

(PECL libevent >= 0.0.1)

event_base_set — Associate event base with an event

Descrição

bool event_base_set ( resource $event , resource $event_base )

Associates the event_base with the event.

Parâmetros

event

Valid event resource.

event_base

Valid event base resource.

Valor Retornado

event_base_set() returns TRUE on success or FALSE on error.

event_base_priority_init
event_buffer_base_set
Libevent Funções


Associate buffered event with an event base

event_base_set
event_buffer_disable
Libevent Funções
PHP Manual

event_buffer_base_set

(PECL libevent >= 0.0.1)

event_buffer_base_set — Associate buffered event with an event base

Descrição

bool event_buffer_base_set ( resource $bevent , resource $event_base )

Assign the specified bevent to the event_base.

Parâmetros

bevent

Valid buffered event resource.

event_base

Valid event base resource.

Valor Retornado

event_buffer_base_set() returns TRUE on success or FALSE on error.

event_base_set
event_buffer_disable
Libevent Funções


Disable a buffered event

event_buffer_base_set
event_buffer_enable
Libevent Funções
PHP Manual

event_buffer_disable

(PECL libevent >= 0.0.1)

event_buffer_disable — Disable a buffered event

Descrição

bool event_buffer_disable ( resource $bevent , int $events )

Disables the specified buffered event.

Parâmetros

bevent

Valid buffered event resource.

events

Any combination of EV_READ and EV_WRITE.

Valor Retornado

event_buffer_disable() returns TRUE on success or FALSE on error.

event_buffer_base_set
event_buffer_enable
Libevent Funções


Enable a buffered event

event_buffer_disable
event_buffer_fd_set
Libevent Funções
PHP Manual

event_buffer_enable

(PECL libevent >= 0.0.1)

event_buffer_enable — Enable a buffered event

Descrição

bool event_buffer_enable ( resource $bevent , int $events )

Enables the specified buffered event.

Parâmetros

bevent

Valid buffered event resource.

events

Any combination of EV_READ and EV_WRITE.

Valor Retornado

event_buffer_enable() returns TRUE on success or FALSE on error.

event_buffer_disable
event_buffer_fd_set
Libevent Funções


Change a buffered event file descriptor

event_buffer_enable
event_buffer_free
Libevent Funções
PHP Manual

event_buffer_fd_set

(PECL libevent >= 0.0.1)

event_buffer_fd_set — Change a buffered event file descriptor

Descrição

void event_buffer_fd_set ( resource $bevent , resource $fd )

Changes the file descriptor on which the buffered event operates.

Parâmetros

bevent

Valid buffered event resource.

fd

Valid PHP stream, must be castable to file descriptor.

event_buffer_enable
event_buffer_free
Libevent Funções


Destroy buffered event

event_buffer_fd_set
event_buffer_new
Libevent Funções
PHP Manual

event_buffer_free

(PECL libevent >= 0.0.1)

event_buffer_free — Destroy buffered event

Descrição

void event_buffer_free ( resource $bevent )

Destroys the specified buffered event and frees all the resources associated.

Parâmetros

bevent

Valid buffered event resource.

event_buffer_fd_set
event_buffer_new
Libevent Funções


Create new buffered event

event_buffer_free
event_buffer_priority_set
Libevent Funções
PHP Manual

event_buffer_new

(PECL libevent >= 0.0.1)

event_buffer_new — Create new buffered event

Descrição

resource event_buffer_new ( resource $stream , mixed $readcb , mixed $writecb , mixed $errorcb [, mixed $arg ] )

Libevent provides an abstraction layer on top of the regular event API. Using buffered event you don't need to deal with the I/O manually, instead it provides input and output buffers that get filled and drained automatically.

Parâmetros

stream

Valid PHP stream resource. Must be castable to file descriptor.

readcb

Callback to invoke where there is data to read, or NULL if no callback is desired.

writecb

Callback to invoke where the descriptor is ready for writing, or NULL if no callback is desired.

errorcb

Callback to invoke where there is an error on the descriptor, cannot be NULL.

arg

An argument that will be passed to each of the callbacks (optional).

Valor Retornado

event_buffer_new() returns new buffered event resource on success or FALSE on error.

event_buffer_free
event_buffer_priority_set
Libevent Funções


Assign a priority to a buffered event

event_buffer_new
event_buffer_read
Libevent Funções
PHP Manual

event_buffer_priority_set

(PECL libevent >= 0.0.1)

event_buffer_priority_set — Assign a priority to a buffered event

Descrição

bool event_buffer_priority_set ( resource $bevent , int $priority )

Assign a priority to the bevent.

Parâmetros

bevent

Valid buffered event resource.

priority

Priority level. Cannot be less than zero and cannot exceed maximum priority level of the event base (see event_base_priority_init()).

Valor Retornado

event_buffer_priority_set() returns TRUE on success or FALSE on error.

event_buffer_new
event_buffer_read
Libevent Funções


Read data from a buffered event

event_buffer_priority_set
event_buffer_set_callback
Libevent Funções
PHP Manual

event_buffer_read

(PECL libevent >= 0.0.1)

event_buffer_read — Read data from a buffered event

Descrição

string event_buffer_read ( resource $bevent , int $data_size )

Reads data from the input buffer of the buffered event.

Parâmetros

bevent

Valid buffered event resource.

data_size

Data size in bytes.

event_buffer_priority_set
event_buffer_set_callback
Libevent Funções


Set or reset callbacks for a buffered event

event_buffer_read
event_buffer_timeout_set
Libevent Funções
PHP Manual

event_buffer_set_callback

(PECL libevent >= 0.0.4)

event_buffer_set_callback — Set or reset callbacks for a buffered event

Descrição

bool event_buffer_set_callback ( resource $event , mixed $readcb , mixed $writecb , mixed $errorcb [, mixed $arg ] )

Sets or changes existing callbacks for the buffered event.

Parâmetros

event

Valid buffered event resource.

readcb

Callback to invoke where there is data to read, or NULL if no callback is desired.

writecb

Callback to invoke where the descriptor is ready for writing, or NULL if no callback is desired.

errorcb

Callback to invoke where there is an error on the descriptor, cannot be NULL.

arg

An argument that will be passed to each of the callbacks (optional).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

event_buffer_read
event_buffer_timeout_set
Libevent Funções


Set read and write timeouts for a buffered event

event_buffer_set_callback
event_buffer_watermark_set
Libevent Funções
PHP Manual

event_buffer_timeout_set

(PECL libevent >= 0.0.1)

event_buffer_timeout_set — Set read and write timeouts for a buffered event

Descrição

void event_buffer_timeout_set ( resource $bevent , int $read_timeout , int $write_timeout )

Sets the read and write timeouts for the specified buffered event.

Parâmetros

bevent

Valid buffered event resource.

read_timeout

Read timeout (in seconds).

write_timeout

Write timeout (in seconds).

event_buffer_set_callback
event_buffer_watermark_set
Libevent Funções


Set the watermarks for read and write events

event_buffer_timeout_set
event_buffer_write
Libevent Funções
PHP Manual

event_buffer_watermark_set

(PECL libevent >= 0.0.1)

event_buffer_watermark_set — Set the watermarks for read and write events

Descrição

void event_buffer_watermark_set ( resource $bevent , int $events , int $lowmark , int $highmark )

Sets the watermarks for read and write events. Libevent does not invoke read callback unless there is at least lowmark bytes in the input buffer; if the read buffer is beyond the highmark, reading is stopped. On output, the write callback is invoked whenever the buffered data falls below the lowmark.

Parâmetros

bevent

Valid buffered event resource.

events

Any combination of EV_READ and EV_WRITE.

lowmark

Low watermark.

highmark

High watermark.

event_buffer_timeout_set
event_buffer_write
Libevent Funções


Write data to a buffered event

event_buffer_watermark_set
event_del
Libevent Funções
PHP Manual

event_buffer_write

(PECL libevent >= 0.0.1)

event_buffer_write — Write data to a buffered event

Descrição

bool event_buffer_write ( resource $bevent , string $data [, int $data_size = -1 ] )

Writes data to the specified buffered event. The data is appended to the output buffer and written to the descriptor when it becomes available for writing.

Parâmetros

bevent

Valid buffered event resource.

data

The data to be written.

data_size

Optional size parameter. event_buffer_write() writes all the data by default.

Valor Retornado

event_buffer_write() returns TRUE on success or FALSE on error.

event_buffer_watermark_set
event_del
Libevent Funções


Remove an event from the set of monitored events

event_buffer_write
event_free
Libevent Funções
PHP Manual

event_del

(PECL libevent >= 0.0.1)

event_del — Remove an event from the set of monitored events

Descrição

bool event_del ( resource $event )

Cancels the event.

Parâmetros

event

Valid event resource.

Valor Retornado

event_del() returns TRUE on success or FALSE on error.

event_buffer_write
event_free
Libevent Funções


Free event resource

event_del
event_new
Libevent Funções
PHP Manual

event_free

(PECL libevent >= 0.0.1)

event_free — Free event resource

Descrição

void event_free ( resource $event )

Frees previously created event resource.

Parâmetros

event

Valid event resource.

event_del
event_new
Libevent Funções


Create new event

event_free
event_set
Libevent Funções
PHP Manual

event_new

(PECL libevent >= 0.0.1)

event_new — Create new event

Descrição

resource event_new ( void )

Creates and returns a new event resource.

Valor Retornado

event_new() returns a new event resource on success or FALSE on error.

event_free
event_set
Libevent Funções


Prepare an event

event_new
PCNTL
Libevent Funções
PHP Manual

event_set

(PECL libevent >= 0.0.1)

event_set — Prepare an event

Descrição

bool event_set ( resource $event , mixed $fd , int $events , mixed $callback [, mixed $arg ] )

Prepares the event to be used in event_add(). The event is prepared to call the function specified by the callback on the events specified in parameter events, which is a set of the following flags: EV_TIMEOUT, EV_SIGNAL, EV_READ, EV_WRITE, EV_PERSIST and EV_SIGNAL.

If EV_SIGNAL bit is set in parameter events, the fd is interpreted as signal number.

After initializing the event, use event_base_set() to associate the event with its event base.

In case of matching event, these three arguments are passed to the callback function:

fd

Signal number or resource indicating the stream.

events

A flag indicating the event. Consists of the following flags: EV_TIMEOUT, EV_SIGNAL, EV_READ, EV_WRITE, EV_PERSIST and EV_SIGNAL.

arg

Optional parameter, previously passed to event_set() as arg.

Parâmetros

event

Valid event resource.

fd

Valid PHP stream resource. The stream must be castable to file descriptor, so you most likely won't be able to use any of filtered streams.

events

A set of flags indicating the desired event, can be EV_READ and/or EV_WRITE. The additional flag EV_PERSIST makes the event to persist until event_del() is called, otherwise the callback is invoked only once.

callback

Callback function to be called when the matching event occurs.

arg

Optional callback parameter.

Valor Retornado

event_set() returns TRUE on success or FALSE on error.

Histórico

Versão | Descrição
0.0.4 | EV_SIGNAL support was added.
event_new
PCNTL
Libevent Funções


Process Control

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • PCNTL Funções
    • pcntl_alarm — Set an alarm clock for delivery of a signal
    • pcntl_exec — Executes specified program in current process space
    • pcntl_fork — Forks the currently running process
    • pcntl_getpriority — Get the priority of any process
    • pcntl_setpriority — Change the priority of any process
    • pcntl_signal_dispatch — Calls signal handlers for pending signals
    • pcntl_signal — Installs a signal handler
    • pcntl_sigprocmask — Sets and retrieves blocked signals
    • pcntl_sigtimedwait — Waits for signals, with a timeout
    • pcntl_sigwaitinfo — Waits for signals
    • pcntl_wait — Waits on or returns the status of a forked child
    • pcntl_waitpid — Waits on or returns the status of a forked child
    • pcntl_wexitstatus — Returns the return code of a terminated child
    • pcntl_wifexited — Checks if status code represents a normal exit
    • pcntl_wifsignaled — Checks whether the status code represents a termination due to a signal
    • pcntl_wifstopped — Checks whether the child process is currently stopped
    • pcntl_wstopsig — Returns the signal which caused the child to stop
    • pcntl_wtermsig — Returns the signal which caused the child to terminate
event_set
Introdução
Extensões para Controle de Processo


Introdução

Process Control support in PHP implements the Unix style of process creation, program execution, signal handling and process termination. Process Control should not be enabled within a web server environment and unexpected results may happen if any Process Control functions are used within a web server environment.

This documentation is intended to explain the general usage of each of the Process Control functions. For detailed information about Unix process control you are encouraged to consult your systems documentation including fork(2), waitpid(2) and signal(2) or a comprehensive reference such as Advanced Programming in the UNIX Environment by W. Richard Stevens (Addison-Wesley).

PCNTL now uses ticks as the signal handle callback mechanism, which is much faster than the previous mechanism. This change follows the same semantics as using "user ticks". You use the declare() statement to specify the locations in your program where callbacks are allowed to occur. This allows you to minimize the overhead of handling asynchronous events. In the past, compiling PHP with pcntl enabled would always incur this overhead, whether or not your script actually used pcntl.

There is one adjustment that all pcntl scripts prior to PHP 4.3.0 must make for them to work which is to either to use declare() on a section where you wish to allow callbacks or to just enable it across the entire script using the new global syntax of declare().

Nota: Esta extensão não está disponível na plataforma Windows.

PCNTL
Instalação/Configuração
PCNTL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PCNTL


Instalação

Process Control support in PHP is not enabled by default. You have to compile the CGI or CLI version of PHP with --enable-pcntl configuration option when compiling PHP to enable Process Control support.

Nota:

Currently, this module will not function on non-Unix platforms (Windows).

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

The following list of signals are supported by the Process Control functions. Please see your systems signal(7) man page for details of the default behavior of these signals.

WNOHANG (integer)
WUNTRACED (integer)
SIG_IGN (integer)
SIG_DFL (integer)
SIG_ERR (integer)
SIGHUP (integer)
SIGINT (integer)
SIGQUIT (integer)
SIGILL (integer)
SIGTRAP (integer)
SIGABRT (integer)
SIGIOT (integer)
SIGBUS (integer)
SIGFPE (integer)
SIGKILL (integer)
SIGUSR1 (integer)
SIGSEGV (integer)
SIGUSR2 (integer)
SIGPIPE (integer)
SIGALRM (integer)
SIGTERM (integer)
SIGSTKFLT (integer)
SIGCLD (integer)
SIGCHLD (integer)
SIGCONT (integer)
SIGSTOP (integer)
SIGTSTP (integer)
SIGTTIN (integer)
SIGTTOU (integer)
SIGURG (integer)
SIGXCPU (integer)
SIGXFSZ (integer)
SIGVTALRM (integer)
SIGPROF (integer)
SIGWINCH (integer)
SIGPOLL (integer)
SIGIO (integer)
SIGPWR (integer)
SIGSYS (integer)
SIGBABY (integer)
SIG_BLOCK (integer)
Available since PHP 5.3.0.
SIG_UNBLOCK (integer)
Available since PHP 5.3.0.
SIG_SETMASK (integer)
Available since PHP 5.3.0.
SI_USER (integer)
Available since PHP 5.3.0.
SI_NOINFO (integer)
Available since PHP 5.3.0.
SI_KERNEL (integer)
Available since PHP 5.3.0.
SI_QUEUE (integer)
Available since PHP 5.3.0.
SI_TIMER (integer)
Available since PHP 5.3.0.
SI_MSGGQ (integer)
Available since PHP 5.3.0.
SI_ASYNCIO (integer)
Available since PHP 5.3.0.
SI_SIGIO (integer)
Available since PHP 5.3.0.
SI_TKILL (integer)
Available since PHP 5.3.0.
CLD_EXITED (integer)
Available since PHP 5.3.0.
CLD_KILLED (integer)
Available since PHP 5.3.0.
CLD_DUMPED (integer)
Available since PHP 5.3.0.
CLD_TRAPPED (integer)
Available since PHP 5.3.0.
CLD_STOPPED (integer)
Available since PHP 5.3.0.
CLD_CONTINUED (integer)
Available since PHP 5.3.0.
TRAP_BRKPT (integer)
Available since PHP 5.3.0.
TRAP_TRACE (integer)
Available since PHP 5.3.0.
POLL_IN (integer)
Available since PHP 5.3.0.
POLL_OUT (integer)
Available since PHP 5.3.0.
POLL_MSG (integer)
Available since PHP 5.3.0.
POLL_ERR (integer)
Available since PHP 5.3.0.
POLL_PRI (integer)
Available since PHP 5.3.0.
POLL_HUP (integer)
Available since PHP 5.3.0.
ILL_ILLOPC (integer)
Available since PHP 5.3.0.
ILL_ILLOPN (integer)
Available since PHP 5.3.0.
ILL_ILLADR (integer)
Available since PHP 5.3.0.
ILL_ILLTRP (integer)
Available since PHP 5.3.0.
ILL_PRVOPC (integer)
Available since PHP 5.3.0.
ILL_PRVREG (integer)
Available since PHP 5.3.0.
ILL_COPROC (integer)
Available since PHP 5.3.0.
ILL_BADSTK (integer)
Available since PHP 5.3.0.
FPE_INTDIV (integer)
Available since PHP 5.3.0.
FPE_INTOVF (integer)
Available since PHP 5.3.0.
FPE_FLTDIV (integer)
Available since PHP 5.3.0.
FPE_FLTOVF (integer)
Available since PHP 5.3.0.
FPE_FLTUND (integer)
Available since PHP 5.3.0.
FPE_FLTRES (integer)
Available since PHP 5.3.0.
FPE_FLTINV (integer)
Available since PHP 5.3.0.
FPE_FLTSUB (integer)
Available since PHP 5.3.0.
SEGV_MAPERR (integer)
Available since PHP 5.3.0.
SEGV_ACCERR (integer)
Available since PHP 5.3.0.
BUS_ADRALN (integer)
Available since PHP 5.3.0.
BUS_ADRERR (integer)
Available since PHP 5.3.0.
BUS_OBJERR (integer)
Available since PHP 5.3.0.
Tipos Resource
Exemplos
PCNTL


Exemplos

Índice

Constantes pré-definidas
PCNTL


Exemplos
PCNTL Funções
Exemplos
PHP Manual

This example forks off a daemon process with a signal handler.

Exemplo #1 Process Control Example

<?php
declare(ticks=1);

$pid = pcntl_fork();
if ($pid == -1) {
     die("could not fork");
} else if ($pid) {
     exit(); // we are the parent
} else {
     // we are the child
}

// detatch from the controlling terminal
if (posix_setsid() == -1) {
    die("could not detach from terminal");
}

// setup signal handlers
pcntl_signal(SIGTERM, "sig_handler");
pcntl_signal(SIGHUP, "sig_handler");

// loop forever performing tasks
while (1) {

    // do something interesting here

}

function sig_handler($signo)
{

     switch ($signo) {
         case SIGTERM:
             // handle shutdown tasks
             exit;
             break;
         case SIGHUP:
             // handle restart tasks
             break;
         default:
             // handle all other signals
     }

}

?>
Exemplos
PCNTL Funções
Exemplos


PCNTL Funções

Veja Também

A look at the section about POSIX functions may be useful.

Índice

  • pcntl_alarm — Set an alarm clock for delivery of a signal
  • pcntl_exec — Executes specified program in current process space
  • pcntl_fork — Forks the currently running process
  • pcntl_getpriority — Get the priority of any process
  • pcntl_setpriority — Change the priority of any process
  • pcntl_signal_dispatch — Calls signal handlers for pending signals
  • pcntl_signal — Installs a signal handler
  • pcntl_sigprocmask — Sets and retrieves blocked signals
  • pcntl_sigtimedwait — Waits for signals, with a timeout
  • pcntl_sigwaitinfo — Waits for signals
  • pcntl_wait — Waits on or returns the status of a forked child
  • pcntl_waitpid — Waits on or returns the status of a forked child
  • pcntl_wexitstatus — Returns the return code of a terminated child
  • pcntl_wifexited — Checks if status code represents a normal exit
  • pcntl_wifsignaled — Checks whether the status code represents a termination due to a signal
  • pcntl_wifstopped — Checks whether the child process is currently stopped
  • pcntl_wstopsig — Returns the signal which caused the child to stop
  • pcntl_wtermsig — Returns the signal which caused the child to terminate
pcntl_alarm
PCNTL


Set an alarm clock for delivery of a signal

PCNTL Funções
pcntl_exec
PCNTL Funções
PHP Manual

pcntl_alarm

(PHP 4 >= 4.3.0, PHP 5)

pcntl_alarm — Set an alarm clock for delivery of a signal

Descrição

int pcntl_alarm ( int $seconds )

Creates a timer that will send a SIGALRM signal to the process after the given number of seconds. Any call to pcntl_alarm() will cancel any previously set alarm.

Parâmetros

seconds

The number of seconds to wait. If seconds is zero, no new alarm is created.

Valor Retornado

Returns the time in seconds that any previously scheduled alarm had remaining before it was to be delivered, or 0 if there was no previously scheduled alarm.

PCNTL Funções
pcntl_exec
PCNTL Funções


Executes specified program in current process space

pcntl_alarm
pcntl_fork
PCNTL Funções
PHP Manual

pcntl_exec

(PHP 4 >= 4.2.0, PHP 5)

pcntl_exec — Executes specified program in current process space

Descrição

void pcntl_exec ( string $path [, array $args [, array $envs ]] )

Executes the program with the given arguments.

Parâmetros

path

path must be the path to a binary executable or a script with a valid path pointing to an executable in the shebang ( #!/usr/local/bin/perl for example) as the first line. See your system's man execve(2) page for additional information.

args

args is an array of argument strings passed to the program.

envs

envs is an array of strings which are passed as environment to the program. The array is in the format of name => value, the key being the name of the environmental variable and the value being the value of that variable.

Valor Retornado

Returns FALSE on error and does not return on success.

pcntl_alarm
pcntl_fork
PCNTL Funções


Forks the currently running process

pcntl_exec
pcntl_getpriority
PCNTL Funções
PHP Manual

pcntl_fork

(PHP 4 >= 4.1.0, PHP 5)

pcntl_fork — Forks the currently running process

Descrição

int pcntl_fork ( void )

The pcntl_fork() function creates a child process that differs from the parent process only in its PID and PPID. Please see your system's fork(2) man page for specific details as to how fork works on your system.

Valor Retornado

On success, the PID of the child process is returned in the parent's thread of execution, and a 0 is returned in the child's thread of execution. On failure, a -1 will be returned in the parent's context, no child process will be created, and a PHP error is raised.

Exemplos

Exemplo #1 pcntl_fork() example

<?php

$pid = pcntl_fork();
if ($pid == -1) {
     die('could not fork');
} else if ($pid) {
     // we are the parent
     pcntl_wait($status); //Protect against Zombie children
} else {
     // we are the child
}

?>

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_signal() - Installs a signal handler

pcntl_exec
pcntl_getpriority
PCNTL Funções


Get the priority of any process

pcntl_fork
pcntl_setpriority
PCNTL Funções
PHP Manual

pcntl_getpriority

(PHP 5)

pcntl_getpriority — Get the priority of any process

Descrição

int pcntl_getpriority ([ int $pid = getmypid() [, int $process_identifier = PRIO_PROCESS ]] )

pcntl_getpriority() gets the priority of pid. Because priority levels can differ between system types and kernel versions, please see your system's getpriority(2) man page for specific details.

Parâmetros

pid

If not specified, the pid of the current process is used.

process_identifier

One of PRIO_PGRP, PRIO_USER or PRIO_PROCESS.

Valor Retornado

pcntl_getpriority() returns the priority of the process or FALSE on error. A lower numerical value causes more favorable scheduling.

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.

Veja Também

  • pcntl_setpriority() - Change the priority of any process

pcntl_fork
pcntl_setpriority
PCNTL Funções


Change the priority of any process

pcntl_getpriority
pcntl_signal_dispatch
PCNTL Funções
PHP Manual

pcntl_setpriority

(PHP 5)

pcntl_setpriority — Change the priority of any process

Descrição

bool pcntl_setpriority ( int $priority [, int $pid = getmypid() [, int $process_identifier = PRIO_PROCESS ]] )

pcntl_setpriority() sets the priority of pid.

Parâmetros

priority

priority is generally a value in the range -20 to 20. The default priority is 0 while a lower numerical value causes more favorable scheduling. Because priority levels can differ between system types and kernel versions, please see your system's setpriority(2) man page for specific details.

pid

If not specified, the pid of the current process is used.

process_identifier

One of PRIO_PGRP, PRIO_USER or PRIO_PROCESS.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • pcntl_getpriority() - Get the priority of any process

pcntl_getpriority
pcntl_signal_dispatch
PCNTL Funções


Calls signal handlers for pending signals

pcntl_setpriority
pcntl_signal
PCNTL Funções
PHP Manual

pcntl_signal_dispatch

(PHP 5 >= 5.3.0)

pcntl_signal_dispatch — Calls signal handlers for pending signals

Descrição

bool pcntl_signal_dispatch ( void )

The pcntl_signal_dispatch() function calls the signal handlers installed by pcntl_signal() for each pending signal.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pcntl_signal_dispatch() example

<?php
echo "Installing signal handler...\n";
pcntl_signal(SIGHUP,  function($signo) {
     echo "signal handler called\n";
});

echo "Generating signal SIGHUP to self...\n";
posix_kill(posix_getpid(), SIGHUP);

echo "Dispatching...\n";
pcntl_signal_dispatch();

echo "Done\n";

?>

O exemplo acima irá imprimir algo similar a:

Installing signal handler...
Generating signal SIGHUP to self...
Dispatching...
signal handler called
Done

Veja Também

  • pcntl_signal() - Installs a signal handler
  • pcntl_sigprocmask() - Sets and retrieves blocked signals
  • pcntl_sigwaitinfo() - Waits for signals
  • pcntl_sigtimedwait() - Waits for signals, with a timeout

pcntl_setpriority
pcntl_signal
PCNTL Funções


Installs a signal handler

pcntl_signal_dispatch
pcntl_sigprocmask
PCNTL Funções
PHP Manual

pcntl_signal

(PHP 4 >= 4.1.0, PHP 5)

pcntl_signal — Installs a signal handler

Descrição

bool pcntl_signal ( int $signo , callback $handler [, bool $restart_syscalls = true ] )

The pcntl_signal() function installs a new signal handler for the signal indicated by signo.

Parâmetros

signo

The signal number.

handler

The signal handler which may be the name of a user created function, or method, or either of the two global constants SIG_IGN or SIG_DFL.

Nota:

Note that when you set a handler to an object method, that object's reference count is increased which makes it persist until you either change the handler to something else, or your script ends.

restart_syscalls

Specifies whether system call restarting should be used when this signal arrives.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.0 | The restart_syscalls parameter was added.
4.3.0 | The ability to use an object method as a callback became available.
4.3.0 | As of PHP 4.3.0 PCNTL uses ticks as the signal handle callback mechanism, which is much faster than the previous mechanism. This change follows the same semantics as using "user ticks". You must use the declare() statement to specify the locations in your program where callbacks are allowed to occur for the signal handler to function properly (as used in the above example).

Exemplos

Exemplo #1 pcntl_signal() example

<?php
// tick use required as of PHP 4.3.0
declare(ticks = 1);

// signal handler function
function sig_handler($signo)
{

     switch ($signo) {
         case SIGTERM:
             // handle shutdown tasks
             exit;
             break;
         case SIGHUP:
             // handle restart tasks
             break;
         case SIGUSR1:
             echo "Caught SIGUSR1...\n";
             break;
         default:
             // handle all other signals
     }

}

echo "Installing signal handler...\n";

// setup signal handlers
pcntl_signal(SIGTERM, "sig_handler");
pcntl_signal(SIGHUP,  "sig_handler");
pcntl_signal(SIGUSR1, "sig_handler");

// or use an object, available as of PHP 4.3.0
// pcntl_signal(SIGUSR1, array($obj, "do_something");

echo"Generating signal SIGTERM to self...\n";

// send SIGUSR1 to current process id
posix_kill(posix_getpid(), SIGUSR1);

echo "Done\n"

?>

Veja Também

  • pcntl_fork() - Forks the currently running process
  • pcntl_waitpid() - Waits on or returns the status of a forked child

pcntl_signal_dispatch
pcntl_sigprocmask
PCNTL Funções


Sets and retrieves blocked signals

pcntl_signal
pcntl_sigtimedwait
PCNTL Funções
PHP Manual

pcntl_sigprocmask

(PHP 5 >= 5.3.0)

pcntl_sigprocmask — Sets and retrieves blocked signals

Descrição

bool pcntl_sigprocmask ( int $how , array $set [, array &$oldset ] )

The pcntl_sigprocmask() function adds, removes or sets blocked signals, depending on the how parameter.

Parâmetros

how

Sets the behavior of pcntl_sigprocmask(). Possible values:

  • SIG_BLOCK: Add the signals to the currently blocked signals.
  • SIG_UNBLOCK: Remove the signals from the currently blocked signals.
  • SIG_SETMASK: Replace the currently blocked signals by the given list of signals.

set

List of signals.

oldset

The oldset parameter is set to an array containing the list of the previously blocked signals.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 pcntl_sigprocmask() example

<?php
pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP));
$oldset = array();
pcntl_sigprocmask(SIG_UNBLOCK, array(SIGHUP), $oldset);
?>

Veja Também

  • pcntl_sigwaitinfo() - Waits for signals
  • pcntl_sigtimedwait() - Waits for signals, with a timeout

pcntl_signal
pcntl_sigtimedwait
PCNTL Funções


Waits for signals, with a timeout

pcntl_sigprocmask
pcntl_sigwaitinfo
PCNTL Funções
PHP Manual

pcntl_sigtimedwait

(PHP 5 >= 5.3.0)

pcntl_sigtimedwait — Waits for signals, with a timeout

Descrição

int pcntl_sigtimedwait ( array $set [, array &$siginfo [, int $seconds = 0 [, int $nanoseconds = 0 ]]] )

The pcntl_sigtimedwait() function operates in exactly the same way as pcntl_sigwaitinfo() except that it takes two additional parameters, seconds and nanoseconds, which enable an upper bound to be placed on the time for which the script is suspended.

Parâmetros

set

Array of signals to wait for.

siginfo

The siginfo is set to an array containing informations about the signal. See pcntl_sigwaitinfo().

seconds

Timeout in seconds.

nanoseconds

Timeout in nanoseconds.

Valor Retornado

On success, pcntl_sigtimedwait() returns a signal number.

Veja Também

  • pcntl_sigprocmask() - Sets and retrieves blocked signals
  • pcntl_sigwaitinfo() - Waits for signals

pcntl_sigprocmask
pcntl_sigwaitinfo
PCNTL Funções


Waits for signals

pcntl_sigtimedwait
pcntl_wait
PCNTL Funções
PHP Manual

pcntl_sigwaitinfo

(PHP 5 >= 5.3.0)

pcntl_sigwaitinfo — Waits for signals

Descrição

int pcntl_sigwaitinfo ( array $set [, array &$siginfo ] )

The pcntl_sigwaitinfo() function suspends execution of the calling script until one of the signals given in set are delivered. If one of the signal is already pending (e.g. blocked by pcntl_sigprocmask()), pcntl_sigwaitinfo() will return immediately.

Parâmetros

set

Array of signals to wait for.

siginfo

The siginfo parameter is set to an array containing informations about the signal.

The following elements are set for all signals:

  • signo: Signal number
  • errno: An error number
  • code: Signal code

The following elements may be set for the SIGCHLD signal:

  • status: Exit value or signal
  • utime: User time consumed
  • stime: System time consumed
  • pid: Sending process ID
  • uid: Real user ID of sending process

The following elements may be set for the SIGILL, SIGFPE, SIGSEGV and SIGBUS signals:

  • addr: Memory location which caused fault

The following element may be set for the SIGPOLL signal:

  • band: Band event
  • fd: File descriptor number

Valor Retornado

On success, pcntl_sigwaitinfo() returns a signal number.

Exemplos

Exemplo #1 pcntl_sigwaitinfo() example

<?php
echo "Blocking SIGHUP signal\n";
pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP));

echo "Sending SIGHUP to self\n";
posix_kill(posix_getpid(), SIGHUP);

echo "Waiting for signals\n";
$info = array();
pcntl_sigwaitinfo(array(SIGHUP), $info);
?>

Veja Também

  • pcntl_sigprocmask() - Sets and retrieves blocked signals
  • pcntl_sigtimedwait() - Waits for signals, with a timeout

pcntl_sigtimedwait
pcntl_wait
PCNTL Funções


Waits on or returns the status of a forked child

pcntl_sigwaitinfo
pcntl_waitpid
PCNTL Funções
PHP Manual

pcntl_wait

(PHP 5)

pcntl_wait — Waits on or returns the status of a forked child

Descrição

int pcntl_wait ( int &$status [, int $options = 0 ] )

The wait function suspends execution of the current process until a child has exited, or until a signal is delivered whose action is to terminate the current process or to call a signal handling function. If a child has already exited by the time of the call (a so-called "zombie" process), the function returns immediately. Any system resources used by the child are freed. Please see your system's wait(2) man page for specific details as to how wait works on your system.

Nota:

This function is equivalent to calling pcntl_waitpid() with a -1 pid and no options.

Parâmetros

status

pcntl_wait() will store status information
in the status parameter which can be
evaluated using the following functions:
pcntl_wifexited(),
pcntl_wifstopped(),
pcntl_wifsignaled(),
pcntl_wexitstatus(),
pcntl_wtermsig() and
pcntl_wstopsig().

options

If wait3 is available on your system (mostly BSD-style systems), you can provide the optional options parameter. If this parameter is not provided, wait will be used for the system call. If wait3 is not available, providing a value for options will have no effect. The value of options is the value of zero or more of the following two constants OR'ed together:

Possible values for options
WNOHANG | Return immediately if no child has exited.
WUNTRACED | Return for children which are stopped, and whose status has not been reported.

Valor Retornado

pcntl_wait() returns the process ID of the child which exited, -1 on error or zero if WNOHANG was provided as an option (on wait3-available systems) and no child was available.

Veja Também

  • pcntl_fork() - Forks the currently running process
  • pcntl_signal() - Installs a signal handler
  • pcntl_wifexited() - Checks if status code represents a normal exit
  • pcntl_wifstopped() - Checks whether the child process is currently stopped
  • pcntl_wifsignaled() - Checks whether the status code represents a termination due to a signal
  • pcntl_wexitstatus() - Returns the return code of a terminated child
  • pcntl_wtermsig() - Returns the signal which caused the child to terminate
  • pcntl_wstopsig() - Returns the signal which caused the child to stop
  • pcntl_waitpid() - Waits on or returns the status of a forked child

pcntl_sigwaitinfo
pcntl_waitpid
PCNTL Funções


Waits on or returns the status of a forked child

pcntl_wait
pcntl_wexitstatus
PCNTL Funções
PHP Manual

pcntl_waitpid

(PHP 4 >= 4.1.0, PHP 5)

pcntl_waitpid — Waits on or returns the status of a forked child

Descrição

int pcntl_waitpid ( int $pid , int &$status [, int $options = 0 ] )

Suspends execution of the current process until a child as specified by the pid argument has exited, or until a signal is delivered whose action is to terminate the current process or to call a signal handling function.

If a child as requested by pid has already exited by the time of the call (a so-called "zombie" process), the function returns immediately. Any system resources used by the child are freed. Please see your system's waitpid(2) man page for specific details as to how waitpid works on your system.

Parâmetros

pid

The value of pid can be one of the following:

possible values for pid
< -1 | wait for any child process whose process group ID is equal to the absolute value of pid.
-1 | wait for any child process; this is the same behaviour that the wait function exhibits.
0 | wait for any child process whose process group ID is equal to that of the calling process.
> 0 | wait for the child whose process ID is equal to the value of pid.

Nota:

Specifying -1 as the pid is equivalent to the functionality pcntl_wait() provides (minus options).

status

pcntl_waitpid() will store status information
in the status parameter which can be
evaluated using the following functions:
pcntl_wifexited(),
pcntl_wifstopped(),
pcntl_wifsignaled(),
pcntl_wexitstatus(),
pcntl_wtermsig() and
pcntl_wstopsig().

options

The value of options is the value of zero or more of the following two global constants OR'ed together:

possible values for options
WNOHANG | return immediately if no child has exited.
WUNTRACED | return for children which are stopped, and whose status has not been reported.

Valor Retornado

pcntl_waitpid() returns the process ID of the child which exited, -1 on error or zero if WNOHANG was used and no child was available

Veja Também

  • pcntl_fork() - Forks the currently running process
  • pcntl_signal() - Installs a signal handler
  • pcntl_wifexited() - Checks if status code represents a normal exit
  • pcntl_wifstopped() - Checks whether the child process is currently stopped
  • pcntl_wifsignaled() - Checks whether the status code represents a termination due to a signal
  • pcntl_wexitstatus() - Returns the return code of a terminated child
  • pcntl_wtermsig() - Returns the signal which caused the child to terminate
  • pcntl_wstopsig() - Returns the signal which caused the child to stop

pcntl_wait
pcntl_wexitstatus
PCNTL Funções


Returns the return code of a terminated child

pcntl_waitpid
pcntl_wifexited
PCNTL Funções
PHP Manual

pcntl_wexitstatus

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wexitstatus — Returns the return code of a terminated child

Descrição

int pcntl_wexitstatus ( int $status )

Returns the return code of a terminated child. This function is only useful if pcntl_wifexited() returned TRUE.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns the return code, as an integer.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_wifexited() - Checks if status code represents a normal exit

pcntl_waitpid
pcntl_wifexited
PCNTL Funções


Checks if status code represents a normal exit

pcntl_wexitstatus
pcntl_wifsignaled
PCNTL Funções
PHP Manual

pcntl_wifexited

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wifexited — Checks if status code represents a normal exit

Descrição

bool pcntl_wifexited ( int $status )

Checks whether the child status code represents a normal exit.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns TRUE if the child status code represents a normal exit, FALSE otherwise.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_wexitstatus() - Returns the return code of a terminated child

pcntl_wexitstatus
pcntl_wifsignaled
PCNTL Funções


Checks whether the status code represents a termination due to a signal

pcntl_wifexited
pcntl_wifstopped
PCNTL Funções
PHP Manual

pcntl_wifsignaled

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wifsignaled — Checks whether the status code represents a termination due to a signal

Descrição

bool pcntl_wifsignaled ( int $status )

Checks whether the child process exited because of a signal which was not caught.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns TRUE if the child process exited because of a signal which was not caught, FALSE otherwise.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_signal() - Installs a signal handler

pcntl_wifexited
pcntl_wifstopped
PCNTL Funções


Checks whether the child process is currently stopped

pcntl_wifsignaled
pcntl_wstopsig
PCNTL Funções
PHP Manual

pcntl_wifstopped

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wifstopped — Checks whether the child process is currently stopped

Descrição

bool pcntl_wifstopped ( int $status )

Checks whether the child process which caused the return is currently stopped; this is only possible if the call to pcntl_waitpid() was done using the option WUNTRACED.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns TRUE if the child process which caused the return is currently stopped, FALSE otherwise.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child

pcntl_wifsignaled
pcntl_wstopsig
PCNTL Funções


Returns the signal which caused the child to stop

pcntl_wifstopped
pcntl_wtermsig
PCNTL Funções
PHP Manual

pcntl_wstopsig

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wstopsig — Returns the signal which caused the child to stop

Descrição

int pcntl_wstopsig ( int $status )

Returns the number of the signal which caused the child to stop. This function is only useful if pcntl_wifstopped() returned TRUE.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns the signal number.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_wifstopped() - Checks whether the child process is currently stopped

pcntl_wifstopped
pcntl_wtermsig
PCNTL Funções


Returns the signal which caused the child to terminate

pcntl_wstopsig
POSIX
PCNTL Funções
PHP Manual

pcntl_wtermsig

(PHP 4 >= 4.1.0, PHP 5)

pcntl_wtermsig — Returns the signal which caused the child to terminate

Descrição

int pcntl_wtermsig ( int $status )

Returns the number of the signal that caused the child process to terminate. This function is only useful if pcntl_wifsignaled() returned TRUE.

Parâmetros

status

O parâmetro status é o parâmetro de status fornecido para uma chamada com sucesso a pcntl_waitpid().

Valor Retornado

Returns the signal number, as an integer.

Veja Também

  • pcntl_waitpid() - Waits on or returns the status of a forked child
  • pcntl_signal() - Installs a signal handler
  • pcntl_wifsignaled() - Checks whether the status code represents a termination due to a signal

pcntl_wstopsig
POSIX
PCNTL Funções


POSIX

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • POSIX Funções
    • posix_access — Determine accessibility of a file
    • posix_ctermid — Get path name of controlling terminal
    • posix_errno — Sinônimo de posix_get_last_error
    • posix_get_last_error — Retrieve the error number set by the last posix function that failed
    • posix_getcwd — Pathname of current directory
    • posix_getegid — Return the effective group ID of the current process
    • posix_geteuid — Return the effective user ID of the current process
    • posix_getgid — Return the real group ID of the current process
    • posix_getgrgid — Return info about a group by group id
    • posix_getgrnam — Return info about a group by name
    • posix_getgroups — Return the group set of the current process
    • posix_getlogin — Return login name
    • posix_getpgid — Get process group id for job control
    • posix_getpgrp — Return the current process group identifier
    • posix_getpid — Return the current process identifier
    • posix_getppid — Return the parent process identifier
    • posix_getpwnam — Return info about a user by username
    • posix_getpwuid — Return info about a user by user id
    • posix_getrlimit — Return info about system resource limits
    • posix_getsid — Get the current sid of the process
    • posix_getuid — Return the real user ID of the current process
    • posix_initgroups — Calculate the group access list
    • posix_isatty — Determine if a file descriptor is an interactive terminal
    • posix_kill — Send a signal to a process
    • posix_mkfifo — Create a fifo special file (a named pipe)
    • posix_mknod — Create a special or ordinary file (POSIX.1)
    • posix_setegid — Set the effective GID of the current process
    • posix_seteuid — Set the effective UID of the current process
    • posix_setgid — Set the GID of the current process
    • posix_setpgid — Set process group id for job control
    • posix_setsid — Make the current process a session leader
    • posix_setuid — Set the UID of the current process
    • posix_strerror — Retrieve the system error message associated with the given errno
    • posix_times — Get process times
    • posix_ttyname — Determine terminal device name
    • posix_uname — Get system name
pcntl_wtermsig
Introdução
Extensões para Controle de Processo


Introdução

This module contains an interface to those functions defined in the IEEE 1003.1 (POSIX.1) standards document which are not accessible through other means.

Aviso

Sensitive data can be retrieved with the POSIX functions, e.g. posix_getpwnam() and friends. None of the POSIX function perform any kind of access checking when safe mode is enabled. It's therefore strongly advised to disable the POSIX extension at all (use --disable-posix in your configure line) if you're operating in such an environment.

Nota: Esta extensão não está disponível na plataforma Windows.

POSIX
Instalação/Configuração
POSIX


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
POSIX


Instalação

POSIX functions are enabled by default. You can disable POSIX-like functions with --disable-posix .

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

POSIX_F_OK (integer)
Check whether the file exists.
POSIX_R_OK (integer)
Check whether the file exists and has read permissions.
POSIX_W_OK (integer)
Check whether the file exists and has write permissions.
POSIX_X_OK (integer)
Check whether the file exists and has execute permissions.
POSIX_S_IFBLK (integer)
Block special file
POSIX_S_IFCHR (integer)
Character special file
POSIX_S_IFIFO (integer)
FIFO (named pipe) special file
POSIX_S_IFREG (integer)
Normal file
POSIX_S_IFSOCK (integer)
Socket

Nota:

These constants are available since PHP 5.1.0. Please also note that some of them may not be available in your system.

Tipos Resource
POSIX Funções
POSIX


POSIX Funções

Veja Também

The section about Process Control Functions maybe of interest for you.

Índice

  • posix_access — Determine accessibility of a file
  • posix_ctermid — Get path name of controlling terminal
  • posix_errno — Sinônimo de posix_get_last_error
  • posix_get_last_error — Retrieve the error number set by the last posix function that failed
  • posix_getcwd — Pathname of current directory
  • posix_getegid — Return the effective group ID of the current process
  • posix_geteuid — Return the effective user ID of the current process
  • posix_getgid — Return the real group ID of the current process
  • posix_getgrgid — Return info about a group by group id
  • posix_getgrnam — Return info about a group by name
  • posix_getgroups — Return the group set of the current process
  • posix_getlogin — Return login name
  • posix_getpgid — Get process group id for job control
  • posix_getpgrp — Return the current process group identifier
  • posix_getpid — Return the current process identifier
  • posix_getppid — Return the parent process identifier
  • posix_getpwnam — Return info about a user by username
  • posix_getpwuid — Return info about a user by user id
  • posix_getrlimit — Return info about system resource limits
  • posix_getsid — Get the current sid of the process
  • posix_getuid — Return the real user ID of the current process
  • posix_initgroups — Calculate the group access list
  • posix_isatty — Determine if a file descriptor is an interactive terminal
  • posix_kill — Send a signal to a process
  • posix_mkfifo — Create a fifo special file (a named pipe)
  • posix_mknod — Create a special or ordinary file (POSIX.1)
  • posix_setegid — Set the effective GID of the current process
  • posix_seteuid — Set the effective UID of the current process
  • posix_setgid — Set the GID of the current process
  • posix_setpgid — Set process group id for job control
  • posix_setsid — Make the current process a session leader
  • posix_setuid — Set the UID of the current process
  • posix_strerror — Retrieve the system error message associated with the given errno
  • posix_times — Get process times
  • posix_ttyname — Determine terminal device name
  • posix_uname — Get system name
Constantes pré-definidas
posix_access
POSIX


Determine accessibility of a file

POSIX Funções
posix_ctermid
POSIX Funções
PHP Manual

posix_access

(PHP 5 >= 5.1.0)

posix_access — Determine accessibility of a file

Descrição

bool posix_access ( string $file [, int $mode = POSIX_F_OK ] )

posix_access() checks the user's permission of a file.

Parâmetros

file

The name of the file to be tested.

mode

A mask consisting of one or more of POSIX_F_OK, POSIX_R_OK, POSIX_W_OK and POSIX_X_OK.

POSIX_R_OK, POSIX_W_OK and POSIX_X_OK request checking whether the file exists and has read, write and execute permissions, respectively. POSIX_F_OK just requests checking for the existence of the file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 posix_access() example

This example will check if the $file is readable and writable, otherwise will print an error message.

<?php

$file = 'some_file';

if (posix_access($file, POSIX_R_OK | POSIX_W_OK)) {
    echo 'The file is readable and writable!';

} else {
    $error = posix_get_last_error();

    echo "Error $error: " . posix_strerror($error);
}

?>

Notas

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

Veja Também

  • posix_get_last_error() - Retrieve the error number set by the last posix function that failed
  • posix_strerror() - Retrieve the system error message associated with the given errno

POSIX Funções
posix_ctermid
POSIX Funções


Get path name of controlling terminal

posix_access
posix_errno
POSIX Funções
PHP Manual

posix_ctermid

(PHP 4, PHP 5)

posix_ctermid — Get path name of controlling terminal

Descrição

string posix_ctermid ( void )

Generates a string which is the pathname for the current controlling terminal for the process. On error this will set errno, which can be checked using posix_get_last_error()

Valor Retornado

Upon successful completion, returns string of the pathname to the current controlling terminal. Otherwise FALSE is returned and errno is set, which can be checked with posix_get_last_error().

Exemplos

Exemplo #1 posix_ctermid() example

This example will display the path to the current TTY.

<?php
echo "I am running from ".posix_ctermid();
?>

Veja Também

  • posix_ttyname() - Determine terminal device name
  • posix_get_last_error() - Retrieve the error number set by the last posix function that failed

posix_access
posix_errno
POSIX Funções


Sinônimo de posix_get_last_error

posix_ctermid
posix_get_last_error
POSIX Funções
PHP Manual

posix_errno

(PHP 4 >= 4.2.0, PHP 5)

posix_errno — Sinônimo de posix_get_last_error()

Descrição

Esta função é um apelido para: posix_get_last_error().

posix_ctermid
posix_get_last_error
POSIX Funções


Retrieve the error number set by the last posix function that failed

posix_errno
posix_getcwd
POSIX Funções
PHP Manual

posix_get_last_error

(PHP 4 >= 4.2.0, PHP 5)

posix_get_last_error — Retrieve the error number set by the last posix function that failed

Descrição

int posix_get_last_error ( void )

Retrieve the error number set by the last posix function that failed. The system error message associated with the errno may be checked with posix_strerror().

Valor Retornado

Returns the errno (error number) set by the last posix function that failed. If no errors exist, 0 is returned.

Exemplos

Exemplo #1 posix_get_last_error() example

This example attempt to kill a bogus process id, which will set the last error. We will then print out the last errno.

<?php
posix_kill(999459,SIGKILL);
echo 'Your error returned was '.posix_get_last_error(); //Your error was ___
?>

Veja Também

  • posix_strerror() - Retrieve the system error message associated with the given errno

posix_errno
posix_getcwd
POSIX Funções


Pathname of current directory

posix_get_last_error
posix_getegid
POSIX Funções
PHP Manual

posix_getcwd

(PHP 4, PHP 5)

posix_getcwd — Pathname of current directory

Descrição

string posix_getcwd ( void )

Gets the absolute pathname of the script's current working directory. On error, it sets errno which can be checked using posix_get_last_error()

Valor Retornado

Returns a string of the absolute pathname on success. On error, returns FALSE and sets errno which can be checked with posix_get_last_error().

Exemplos

Exemplo #1 posix_getcwd() example

This example will return the absolute path of the current working directory of the script.

<?php
echo 'My current working directory is '.posix_getcwd();
?>

Notas

Nota:

This function can fail on

  • Read or Search permission was denied
  • Pathname no longer exists

posix_get_last_error
posix_getegid
POSIX Funções


Return the effective group ID of the current process

posix_getcwd
posix_geteuid
POSIX Funções
PHP Manual

posix_getegid

(PHP 4, PHP 5)

posix_getegid — Return the effective group ID of the current process

Descrição

int posix_getegid ( void )

Return the numeric effective group ID of the current process.

Valor Retornado

Returns an integer of the effective group ID.

Exemplos

Exemplo #1 posix_getegid() example

This example will print out the effective group id, once it is changed with posix_setegid().

<?php
echo 'My real group id is '.posix_getgid(); //20
posix_setegid(40);
echo 'My real group id is '.posix_getgid(); //20
echo 'My effective group id is '.posix_getegid(); //40
?>

Notas

posix_getegid() is different than posix_getgid() because effective group ID can be changed by a calling process using posix_setegid().

Veja Também

  • posix_getgrgid() - Return info about a group by group id
  • posix_getgid() - Return the real group ID of the current process
  • posix_setgid() - Set the GID of the current process

posix_getcwd
posix_geteuid
POSIX Funções


Return the effective user ID of the current process

posix_getegid
posix_getgid
POSIX Funções
PHP Manual

posix_geteuid

(PHP 4, PHP 5)

posix_geteuid — Return the effective user ID of the current process

Descrição

int posix_geteuid ( void )

Return the numeric effective user ID of the current process. See also posix_getpwuid() for information on how to convert this into a useable username.

Valor Retornado

Returns the user id, as an integer

Exemplos

Exemplo #1 posix_geteuid() example

This example will show the current user id then set the effective user id to a separate id using posix_seteuid(), then show the difference between the real id and the effective id.

<?php
echo posix_getuid()."\n"; //10001
echo posix_geteuid()."\n"; //10001
posix_seteuid(10000);
echo posix_getuid()."\n"; //10001
echo posix_geteuid()."\n"; //10000
?>

Veja Também

  • posix_getpwuid() - Return info about a user by user id
  • posix_getuid() - Return the real user ID of the current process
  • posix_setuid() - Set the UID of the current process
  • POSIX man page GETEUID(2)

posix_getegid
posix_getgid
POSIX Funções


Return the real group ID of the current process

posix_geteuid
posix_getgrgid
POSIX Funções
PHP Manual

posix_getgid

(PHP 4, PHP 5)

posix_getgid — Return the real group ID of the current process

Descrição

int posix_getgid ( void )

Return the numeric real group ID of the current process.

Valor Retornado

Returns the real group id, as an integer.

Exemplos

Exemplo #1 posix_getgid() example

This example will print out the real group id, even once the effective group id has been changed.

<?php
echo 'My real group id is '.posix_getgid(); //20
posix_setegid(40);
echo 'My real group id is '.posix_getgid(); //20
echo 'My effective group id is '.posix_getegid(); //40
?>

Veja Também

  • posix_getgrgid() - Return info about a group by group id
  • posix_getegid() - Return the effective group ID of the current process
  • posix_setgid() - Set the GID of the current process
  • POSIX man page GETGID(2)

posix_geteuid
posix_getgrgid
POSIX Funções


Return info about a group by group id

posix_getgid
posix_getgrnam
POSIX Funções
PHP Manual

posix_getgrgid

(PHP 4, PHP 5)

posix_getgrgid — Return info about a group by group id

Descrição

array posix_getgrgid ( int $gid )

Gets information about a group provided its id.

Parâmetros

gid

The group id.

Valor Retornado

The array elements returned are:

The group information array
Element | Description
name | The name element contains the name of the group. This is a short, usually less than 16 character "handle" of the group, not the real, full name.
passwd | The passwd element contains the group's password in an encrypted format. Often, for example on a system employing "shadow" passwords, an asterisk is returned instead.
gid | Group ID, should be the same as the gid parameter used when calling the function, and hence redundant.
members | This consists of an array of string's for all the members in the group.

Histórico

Versão | Descrição
4.2.0 | Prior to this version, members was simply an integer representing the number of members in the group, and the member names were returned with numerical indices.

Exemplos

Exemplo #1 Example use of posix_getgrgid()

<?php

$groupid   = posix_getegid();
$groupinfo = posix_getgrgid($groupid);

print_r($groupinfo);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [name]    => toons
    [passwd]  => x
    [members] => Array
        (
            [0] => tom
            [1] => jerry
        )
    [gid]     => 42
)

Veja Também

  • posix_getegid() - Return the effective group ID of the current process
  • posix_getgrnam() - Return info about a group by name
  • filegroup() - Lê o grupo do arquivo
  • stat() - Obtem informações sobre um arquivo
  • safe_mode_gid
  • POSIX man page GETGRNAM(3)

posix_getgid
posix_getgrnam
POSIX Funções


Return info about a group by name

posix_getgrgid
posix_getgroups
POSIX Funções
PHP Manual

posix_getgrnam

(PHP 4, PHP 5)

posix_getgrnam — Return info about a group by name

Descrição

array posix_getgrnam ( string $name )

Gets information about a group provided its name.

Parâmetros

name

The name of the group

Valor Retornado

The array elements returned are:

The group information array
Element | Description
name | The name element contains the name of the group. This is a short, usually less than 16 character "handle" of the group, not the real, full name. This should be the same as the name parameter used when calling the function, and hence redundant.
passwd | The passwd element contains the group's password in an encrypted format. Often, for example on a system employing "shadow" passwords, an asterisk is returned instead.
gid | Group ID of the group in numeric form.
members | This consists of an array of string's for all the members in the group.

Histórico

Versão | Descrição
4.2.0 | Prior to this version, members was simply an integer representing the number of members in the group, and the member names were returned with numerical indices.

Exemplos

Exemplo #1 Example use of posix_getgrnam()

<?php

$groupinfo = posix_getgrnam("toons");

print_r($groupinfo);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [name]    => toons
    [passwd]  => x
    [members] => Array
        (
            [0] => tom
            [1] => jerry
        )
    [gid]     => 42
)

Veja Também

  • posix_getegid() - Return the effective group ID of the current process
  • posix_getgrgid() - Return info about a group by group id
  • filegroup() - Lê o grupo do arquivo
  • stat() - Obtem informações sobre um arquivo
  • safe_mode_gid
  • POSIX man page GETGRNAM(3)

posix_getgrgid
posix_getgroups
POSIX Funções


Return the group set of the current process

posix_getgrnam
posix_getlogin
POSIX Funções
PHP Manual

posix_getgroups

(PHP 4, PHP 5)

posix_getgroups — Return the group set of the current process

Descrição

array posix_getgroups ( void )

Gets the group set of the current process.

Valor Retornado

Returns an array of integers containing the numeric group ids of the group set of the current process.

Exemplos

Exemplo #1 Example use of posix_getgroups()

<?php

$groups = posix_getgroups();

print_r($groups);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => 4
    [1] => 20
    [2] => 24
    [3] => 25
    [4] => 29
    [5] => 30
    [6] => 33
    [7] => 44
    [8] => 46
    [9] => 104
    [10] => 109
    [11] => 110
    [12] => 1000
)

Veja Também

  • posix_getgrgid() - Return info about a group by group id

posix_getgrnam
posix_getlogin
POSIX Funções


Return login name

posix_getgroups
posix_getpgid
POSIX Funções
PHP Manual

posix_getlogin

(PHP 4, PHP 5)

posix_getlogin — Return login name

Descrição

string posix_getlogin ( void )

Returns the login name of the user owning the current process.

Valor Retornado

Returns the login name of the user, as a string.

Exemplos

Exemplo #1 Example use of posix_getlogin()

<?php
echo posix_getlogin(); //apache
?>

Veja Também

  • posix_getpwnam() - Return info about a user by username
  • POSIX man page GETLOGIN(3)

posix_getgroups
posix_getpgid
POSIX Funções


Get process group id for job control

posix_getlogin
posix_getpgrp
POSIX Funções
PHP Manual

posix_getpgid

(PHP 4, PHP 5)

posix_getpgid — Get process group id for job control

Descrição

int posix_getpgid ( int $pid )

Returns the process group identifier of the process pid or FALSE on failure.

Parâmetros

pid

The process id.

Valor Retornado

Returns the identifier, as an integer.

Exemplos

Exemplo #1 Example use of posix_getpgid()

<?php
$pid = posix_getppid();
echo posix_getpgid($pid); //35
?>

Notas

Nota:

This is a not POSIX function, but is common on BSD and System V systems. If the system does not support this function, then it will not be included at compile time. This may be checked with function_exists().

Veja Também

  • posix_getppid() - Return the parent process identifier
  • man page SETPGID(2)

posix_getlogin
posix_getpgrp
POSIX Funções


Return the current process group identifier

posix_getpgid
posix_getpid
POSIX Funções
PHP Manual

posix_getpgrp

(PHP 4, PHP 5)

posix_getpgrp — Return the current process group identifier

Descrição

int posix_getpgrp ( void )

Return the process group identifier of the current process.

Valor Retornado

Returns the identifier, as an integer.

Veja Também

  • POSIX.1 and the getpgrp(2) manual page on the POSIX system for more information on process groups.

posix_getpgid
posix_getpid
POSIX Funções


Return the current process identifier

posix_getpgrp
posix_getppid
POSIX Funções
PHP Manual

posix_getpid

(PHP 4, PHP 5)

posix_getpid — Return the current process identifier

Descrição

int posix_getpid ( void )

Return the process identifier of the current process.

Valor Retornado

Returns the identifier, as an integer.

Exemplos

Exemplo #1 Example use of posix_getpid()

<?php
echo posix_getpid(); //8805
?>

Veja Também

  • posix_kill() - Send a signal to a process
  • POSIX man page GETPID(2)

posix_getpgrp
posix_getppid
POSIX Funções


Return the parent process identifier

posix_getpid
posix_getpwnam
POSIX Funções
PHP Manual

posix_getppid

(PHP 4, PHP 5)

posix_getppid — Return the parent process identifier

Descrição

int posix_getppid ( void )

Return the process identifier of the parent process of the current process.

Valor Retornado

Returns the identifier, as an integer.

Exemplos

Exemplo #1 Example use of posix_getppid()

<?php
echo posix_getppid(); //8259
?>

posix_getpid
posix_getpwnam
POSIX Funções


Return info about a user by username

posix_getppid
posix_getpwuid
POSIX Funções
PHP Manual

posix_getpwnam

(PHP 4, PHP 5)

posix_getpwnam — Return info about a user by username

Descrição

array posix_getpwnam ( string $username )

Returns an array of information about the given user.

Parâmetros

username

An alphanumeric username.

Valor Retornado

On success an array with the following elements is returned, else FALSE is returned:

The user information array
Element | Description
name | The name element contains the username of the user. This is a short, usually less than 16 character "handle" of the user, not the real, full name. This should be the same as the username parameter used when calling the function, and hence redundant.
passwd | The passwd element contains the user's password in an encrypted format. Often, for example on a system employing "shadow" passwords, an asterisk is returned instead.
uid | User ID of the user in numeric form.
gid | The group ID of the user. Use the function posix_getgrgid() to resolve the group name and a list of its members.
gecos | GECOS is an obsolete term that refers to the finger information field on a Honeywell batch processing system. The field, however, lives on, and its contents have been formalized by POSIX. The field contains a comma separated list containing the user's full name, office phone, office number, and home phone number. On most systems, only the user's full name is available.
dir | This element contains the absolute path to the home directory of the user.
shell | The shell element contains the absolute path to the executable of the user's default shell.

Exemplos

Exemplo #1 Example use of posix_getpwnam()

<?php

$userinfo = posix_getpwnam("tom");

print_r($userinfo);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [name]    => tom
    [passwd]  => x
    [uid]     => 10000
    [gid]     => 42
    [geocs]   => "tom,,,"
    [dir]     => "/home/tom"
    [shell]   => "/bin/bash"
)

Veja Também

  • posix_getpwuid() - Return info about a user by user id
  • POSIX man page GETPWNAM(3)

posix_getppid
posix_getpwuid
POSIX Funções


Return info about a user by user id

posix_getpwnam
posix_getrlimit
POSIX Funções
PHP Manual

posix_getpwuid

(PHP 4, PHP 5)

posix_getpwuid — Return info about a user by user id

Descrição

array posix_getpwuid ( int $uid )

Returns an array of information about the user referenced by the given user ID.

Parâmetros

uid

The user identifier.

Valor Retornado

Returns an associative array with the following elements:

The user information array
Element | Description
name | The name element contains the username of the user. This is a short, usually less than 16 character "handle" of the user, not the real, full name.
passwd | The passwd element contains the user's password in an encrypted format. Often, for example on a system employing "shadow" passwords, an asterisk is returned instead.
uid | User ID, should be the same as the uid parameter used when calling the function, and hence redundant.
gid | The group ID of the user. Use the function posix_getgrgid() to resolve the group name and a list of its members.
gecos | GECOS is an obsolete term that refers to the finger information field on a Honeywell batch processing system. The field, however, lives on, and its contents have been formalized by POSIX. The field contains a comma separated list containing the user's full name, office phone, office number, and home phone number. On most systems, only the user's full name is available.
dir | This element contains the absolute path to the home directory of the user.
shell | The shell element contains the absolute path to the executable of the user's default shell.

Exemplos

Exemplo #1 Example use of posix_getpwuid()

<?php

$userinfo = posix_getpwuid(10000);

print_r($userinfo);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [name]    => tom
    [passwd]  => x
    [uid]     => 10000
    [gid]     => 42
    [geocs]   => "tom,,,"
    [dir]     => "/home/tom"
    [shell]   => "/bin/bash"
)

Veja Também

  • posix_getpwnam() - Return info about a user by username
  • POSIX man page GETPWNAM(3)

posix_getpwnam
posix_getrlimit
POSIX Funções


Return info about system resource limits

posix_getpwuid
posix_getsid
POSIX Funções
PHP Manual

posix_getrlimit

(PHP 4, PHP 5)

posix_getrlimit — Return info about system resource limits

Descrição

array posix_getrlimit ( void )

posix_getrlimit() returns an array of information about the current resource's soft and hard limits.

Each resource has an associated soft and hard limit. The soft limit is the value that the kernel enforces for the corresponding resource. The hard limit acts as a ceiling for the soft limit. An unprivileged process may only set its soft limit to a value from 0 to the hard limit, and irreversibly lower its hard limit.

Valor Retornado

Returns an associative array of elements for each limit that is defined. Each limit has a soft and a hard limit.

List of possible limits returned
Limit name | Limit description
core | The maximum size of the core file. When 0, not core files are created. When core files are larger than this size, they will be truncated at this size.
totalmem | The maximum size of the memory of the process, in bytes.
virtualmem | The maximum size of the virtual memory for the process, in bytes.
data | The maximum size of the data segment for the process, in bytes.
stack | The maximum size of the process stack, in bytes.
rss | The maximum number of virtual pages resident in RAM
maxproc | The maximum number of processes that can be created for the real user ID of the calling process.
memlock | The maximum number of bytes of memory that may be locked into RAM.
cpu | The amount of time the process is allowed to use the CPU.
filesize | The maximum size of the data segment for the process, in bytes.
openfiles | One more than the maximum number of open file descriptors.

Exemplos

Exemplo #1 Example use of posix_getrlimit()

<?php

$limits = posix_getrlimit();

print_r($limits);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [soft core] => 0
    [hard core] => unlimited
    [soft data] => unlimited
    [hard data] => unlimited
    [soft stack] => 8388608
    [hard stack] => unlimited
    [soft totalmem] => unlimited
    [hard totalmem] => unlimited
    [soft rss] => unlimited
    [hard rss] => unlimited
    [soft maxproc] => unlimited
    [hard maxproc] => unlimited
    [soft memlock] => unlimited
    [hard memlock] => unlimited
    [soft cpu] => unlimited
    [hard cpu] => unlimited
    [soft filesize] => unlimited
    [hard filesize] => unlimited
    [soft openfiles] => 1024
    [hard openfiles] => 1024
)

Notas

Nota:

This is a not POSIX function, but is common on BSD and System V systems. If the system does not support this function, then it will not be included at compile time. This may be checked with function_exists().

Veja Também

  • man page GETRLIMIT(2)

posix_getpwuid
posix_getsid
POSIX Funções


Get the current sid of the process

posix_getrlimit
posix_getuid
POSIX Funções
PHP Manual

posix_getsid

(PHP 4, PHP 5)

posix_getsid — Get the current sid of the process

Descrição

int posix_getsid ( int $pid )

Return the session id of the process pid. The session id of a process is the process group id of the session leader.

Parâmetros

pid

The process identifier. If set to 0, the current process is assumed. If an invalid pid is specified, then FALSE is returned and an error is set which can be checked with posix_get_last_error().

Valor Retornado

Returns the identifier, as an integer.

Exemplos

Exemplo #1 Example use of posix_getsid()

<?php
$pid = posix_getpid();
echo posix_getsid($pid); //8805
?>

Veja Também

  • posix_getpgid() - Get process group id for job control
  • posix_setsid() - Make the current process a session leader
  • POSIX man page GETSID(2)

posix_getrlimit
posix_getuid
POSIX Funções


Return the real user ID of the current process

posix_getsid
posix_initgroups
POSIX Funções
PHP Manual

posix_getuid

(PHP 4, PHP 5)

posix_getuid — Return the real user ID of the current process

Descrição

int posix_getuid ( void )

Return the numeric real user ID of the current process.

Valor Retornado

Returns the user id, as an integer

Exemplos

Exemplo #1 Example use of posix_getuid()

<?php
echo posix_getuid(); //10000
?>

Veja Também

  • posix_getpwuid() - Return info about a user by user id
  • POSIX man page GETUID(2)

posix_getsid
posix_initgroups
POSIX Funções


Calculate the group access list

posix_getuid
posix_isatty
POSIX Funções
PHP Manual

posix_initgroups

(PHP 5 >= 5.2.0)

posix_initgroups — Calculate the group access list

Descrição

bool posix_initgroups ( string $name , int $base_group_id )

Calculates the group access list for the user specified in name.

Parâmetros

name

The user to calculate the list for.

base_group_id

Typically the group number from the password file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • The Unix manual page for initgroups(3).

posix_getuid
posix_isatty
POSIX Funções


Determine if a file descriptor is an interactive terminal

posix_initgroups
posix_kill
POSIX Funções
PHP Manual

posix_isatty

(PHP 4, PHP 5)

posix_isatty — Determine if a file descriptor is an interactive terminal

Descrição

bool posix_isatty ( int $fd )

Determines if the file descriptor fd refers to a valid terminal type device.

Parâmetros

fd

The file descriptor.

Valor Retornado

Returns TRUE if fd is an open descriptor connected to a terminal and FALSE otherwise.

Veja Também

  • posix_ttyname() - Determine terminal device name

posix_initgroups
posix_kill
POSIX Funções


Send a signal to a process

posix_isatty
posix_mkfifo
POSIX Funções
PHP Manual

posix_kill

(PHP 4, PHP 5)

posix_kill — Send a signal to a process

Descrição

bool posix_kill ( int $pid , int $sig )

Send the signal sig to the process with the process identifier pid.

Parâmetros

pid

The process identifier.

sig

One of the PCNTL signals constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • The kill(2) manual page of the POSIX system, which contains additional information about negative process identifiers, the special pid 0, the special pid -1, and the signal number 0.

posix_isatty
posix_mkfifo
POSIX Funções


Create a fifo special file (a named pipe)

posix_kill
posix_mknod
POSIX Funções
PHP Manual

posix_mkfifo

(PHP 4, PHP 5)

posix_mkfifo — Create a fifo special file (a named pipe)

Descrição

bool posix_mkfifo ( string $pathname , int $mode )

posix_mkfifo() creates a special FIFO file which exists in the file system and acts as a bidirectional communication endpoint for processes.

Parâmetros

pathname

Path to the FIFO file.

mode

The second parameter mode has to be given in octal notation (e.g. 0644). The permission of the newly created FIFO also depends on the setting of the current umask(). The permissions of the created file are (mode & ~umask).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.

posix_kill
posix_mknod
POSIX Funções


Create a special or ordinary file (POSIX.1)

posix_mkfifo
posix_setegid
POSIX Funções
PHP Manual

posix_mknod

(PHP 5 >= 5.1.0)

posix_mknod — Create a special or ordinary file (POSIX.1)

Descrição

bool posix_mknod ( string $pathname , int $mode [, int $major = 0 [, int $minor = 0 ]] )

Creates a special or ordinary file.

Parâmetros

pathname

The file to create

mode

This parameter is constructed by a bitwise OR between file type (one of the following constants: POSIX_S_IFREG, POSIX_S_IFCHR, POSIX_S_IFBLK, POSIX_S_IFIFO or POSIX_S_IFSOCK) and permissions.

major

The major device kernel identifier (required to pass when using S_IFCHR or S_IFBLK).

minor

The minor device kernel identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A posix_mknod() example

<?php

$file = '/tmp/tmpfile';  // file name
$type = POSIX_S_IFBLK;   // file type
$permissions = 0777;     // octal
$major = 1;
$minor = 8;              // /dev/random

if (!posix_mknod($file, $type | $permissions, $major, $minor)) {
    die('Error ' . posix_get_last_error() . ': ' . posix_strerror(posix_get_last_error()));
}

?>

Veja Também

  • posix_mkfifo() - Create a fifo special file (a named pipe)

posix_mkfifo
posix_setegid
POSIX Funções


Set the effective GID of the current process

posix_mknod
posix_seteuid
POSIX Funções
PHP Manual

posix_setegid

(PHP 4 >= 4.0.2, PHP 5)

posix_setegid — Set the effective GID of the current process

Descrição

bool posix_setegid ( int $gid )

Set the effective group ID of the current process. This is a privileged function and needs appropriate privileges (usually root) on the system to be able to perform this function.

Parâmetros

gid

The group id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 posix_setegid() example

This example will print out the effective group id, once changed.

<?php
echo 'My real group id is '.posix_getgid(); //20
posix_setegid(40);
echo 'My real group id is '.posix_getgid(); //20
echo 'My effective group id is '.posix_getegid(); //40
?>

Veja Também

  • posix_getgrgid() - Return info about a group by group id
  • posix_getgid() - Return the real group ID of the current process
  • posix_setgid() - Set the GID of the current process

posix_mknod
posix_seteuid
POSIX Funções


Set the effective UID of the current process

posix_setegid
posix_setgid
POSIX Funções
PHP Manual

posix_seteuid

(PHP 4 >= 4.0.2, PHP 5)

posix_seteuid — Set the effective UID of the current process

Descrição

bool posix_seteuid ( int $uid )

Set the real user ID of the current process. This is a privileged function and needs appropriate privileges (usually root) on the system to be able to perform this function.

Parâmetros

uid

The user id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • posix_setgid() - Set the GID of the current process

posix_setegid
posix_setgid
POSIX Funções


Set the GID of the current process

posix_seteuid
posix_setpgid
POSIX Funções
PHP Manual

posix_setgid

(PHP 4, PHP 5)

posix_setgid — Set the GID of the current process

Descrição

bool posix_setgid ( int $gid )

Set the real group ID of the current process. This is a privileged function and needs appropriate privileges (usually root) on the system to be able to perform this function. The appropriate order of function calls is posix_setgid() first, posix_setuid() last.

Nota:

If the caller is a super user, this will also set the effective group id.

Parâmetros

gid

The group id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 posix_setgid() example

This example will print out the effective group id, once it is changed.

<?php
echo 'My real group id is '.posix_getgid(); //20
posix_setgid(40);
echo 'My real group id is '.posix_getgid(); //40
echo 'My effective group id is '.posix_getegid(); //40
?>

Veja Também

  • posix_getgrgid() - Return info about a group by group id
  • posix_getgid() - Return the real group ID of the current process

posix_seteuid
posix_setpgid
POSIX Funções


Set process group id for job control

posix_setgid
posix_setsid
POSIX Funções
PHP Manual

posix_setpgid

(PHP 4, PHP 5)

posix_setpgid — Set process group id for job control

Descrição

bool posix_setpgid ( int $pid , int $pgid )

Let the process pid join the process group pgid.

Parâmetros

pid

The process id.

pgid

The process group id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • See POSIX.1 and the setsid(2) manual page on the POSIX system for more informations on process groups and job control.

posix_setgid
posix_setsid
POSIX Funções


Make the current process a session leader

posix_setpgid
posix_setuid
POSIX Funções
PHP Manual

posix_setsid

(PHP 4, PHP 5)

posix_setsid — Make the current process a session leader

Descrição

int posix_setsid ( void )

Make the current process a session leader.

Valor Retornado

Returns the session id, or -1 on errors.

Veja Também

  • The POSIX.1 and the setsid(2) manual page on the POSIX system for more information on process groups and job control.

posix_setpgid
posix_setuid
POSIX Funções


Set the UID of the current process

posix_setsid
posix_strerror
POSIX Funções
PHP Manual

posix_setuid

(PHP 4, PHP 5)

posix_setuid — Set the UID of the current process

Descrição

bool posix_setuid ( int $uid )

Set the real user ID of the current process. This is a privileged function that needs appropriate privileges (usually root) on the system to be able to perform this function.

Parâmetros

uid

The user id.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 posix_setuid() example

This example will show the current user id and then set it to a different value.

<?php
echo posix_getuid()."\n"; //10001
echo posix_geteuid()."\n"; //10001
posix_setuid(10000);
echo posix_getuid()."\n"; //10000
echo posix_geteuid()."\n"; //10000
?>

Veja Também

  • posix_setgid() - Set the GID of the current process
  • posix_seteuid() - Set the effective UID of the current process
  • posix_getuid() - Return the real user ID of the current process
  • posix_geteuid() - Return the effective user ID of the current process

posix_setsid
posix_strerror
POSIX Funções


Retrieve the system error message associated with the given errno

posix_setuid
posix_times
POSIX Funções
PHP Manual

posix_strerror

(PHP 4 >= 4.2.0, PHP 5)

posix_strerror — Retrieve the system error message associated with the given errno

Descrição

string posix_strerror ( int $errno )

Returns the POSIX system error message associated with the given errno. You may get the errno parameter by calling posix_get_last_error().

Parâmetros

errno

A POSIX error number, returned by posix_get_last_error(). If set to 0, then the string "Success" is returned.

Valor Retornado

Returns the error message, as a string.

Exemplos

Exemplo #1 posix_strerror() example

This example will attempt to kill a process which does not exist, then will print out the corresponding error message.

<?php
posix_kill(50,SIGKILL);
echo posix_strerror(posix_get_last_error())."\n";
?>

O exemplo acima irá imprimir algo similar a:

No such process

Veja Também

  • posix_get_last_error() - Retrieve the error number set by the last posix function that failed

posix_setuid
posix_times
POSIX Funções


Get process times

posix_strerror
posix_ttyname
POSIX Funções
PHP Manual

posix_times

(PHP 4, PHP 5)

posix_times — Get process times

Descrição

array posix_times ( void )

Gets information about the current CPU usage.

Valor Retornado

Returns a hash of strings with information about the current process CPU usage. The indices of the hash are:

  • ticks - the number of clock ticks that have elapsed since reboot.
  • utime - user time used by the current process.
  • stime - system time used by the current process.
  • cutime - user time used by current process and children.
  • cstime - system time used by current process and children.

Notas

Aviso

This function isn't reliable to use, it may return negative values for high times.

Exemplos

Exemplo #1 Example use of posix_times()

<?php

$times = posix_times();

print_r($times);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [ticks] => 25814410
    [utime] => 1
    [stime] => 1
    [cutime] => 0
    [cstime] => 0
)

posix_strerror
posix_ttyname
POSIX Funções


Determine terminal device name

posix_times
posix_uname
POSIX Funções
PHP Manual

posix_ttyname

(PHP 4, PHP 5)

posix_ttyname — Determine terminal device name

Descrição

string posix_ttyname ( int $fd )

Returns a string for the absolute path to the current terminal device that is open on the file descriptor fd.

Parâmetros

fd

The file descriptor.

Valor Retornado

On success, returns a string of the absolute path of the fd. On failure, returns FALSE

posix_times
posix_uname
POSIX Funções


Get system name

posix_ttyname
Semaphore
POSIX Funções
PHP Manual

posix_uname

(PHP 4, PHP 5)

posix_uname — Get system name

Descrição

array posix_uname ( void )

Gets information about the system.

Posix requires that assumptions must not be made about the format of the values, e.g. the assumption that a release may contain three digits or anything else returned by this function.

Valor Retornado

Returns a hash of strings with information about the system. The indices of the hash are

  • sysname - operating system name (e.g. Linux)
  • nodename - system name (e.g. valiant)
  • release - operating system release (e.g. 2.2.10)
  • version - operating system version (e.g. #4 Tue Jul 20 17:01:36 MEST 1999)
  • machine - system architecture (e.g. i586)
  • domainname - DNS domainname (e.g. example.com)

domainname is a GNU extension and not part of POSIX.1, so this field is only available on GNU systems or when using the GNU libc.

Exemplos

Exemplo #1 Example use of posix_uname()

<?php
$uname=posix_uname();
print_r($uname);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [sysname] => Linux
    [nodename] => funbox
    [release] => 2.6.20-15-server
    [version] => #2 SMP Sun Apr 15 07:41:34 UTC 2007
    [machine] => i686
)

posix_ttyname
Semaphore
POSIX Funções


Semaphore, Shared Memory and IPC

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Semaphore Funções
    • ftok — Convert a pathname and a project identifier to a System V IPC key
    • msg_get_queue — Create or attach to a message queue
    • msg_queue_exists — Check whether a message queue exists
    • msg_receive — Receive a message from a message queue
    • msg_remove_queue — Destroy a message queue
    • msg_send — Send a message to a message queue
    • msg_set_queue — Set information in the message queue data structure
    • msg_stat_queue — Returns information from the message queue data structure
    • sem_acquire — Acquire a semaphore
    • sem_get — Get a semaphore id
    • sem_release — Release a semaphore
    • sem_remove — Remove a semaphore
    • shm_attach — Creates or open a shared memory segment
    • shm_detach — Disconnects from shared memory segment
    • shm_get_var — Returns a variable from shared memory
    • shm_has_var — Check whether a specific entry exists
    • shm_put_var — Inserts or updates a variable in shared memory
    • shm_remove_var — Removes a variable from shared memory
    • shm_remove — Removes shared memory from Unix systems
posix_uname
Introdução
Extensões para Controle de Processo


Introdução

This module provides wrappers for the System V IPC family of functions. It includes semaphores, shared memory and inter-process messaging (IPC).

Semaphores may be used to provide exclusive access to resources on the current machine, or to limit the number of processes that may simultaneously use a resource.

This module provides also shared memory functions using System V shared memory. Shared memory may be used to provide access to global variables. Different httpd-daemons and even other programs (such as Perl, C, ...) are able to access this data to provide a global data-exchange. Remember, that shared memory is NOT safe against simultaneous access. Use semaphores for synchronization.

Limits of Shared Memory by the Unix OS
SHMMAX | max size of shared memory, normally 131072 bytes
SHMMIN | minimum size of shared memory, normally 1 byte
SHMMNI | max amount of shared memory segments on a system, normally 100
SHMSEG | max amount of shared memory segments per process, normally 6

The messaging functions may be used to send and receive messages to/from other processes. They provide a simple and effective means of exchanging data between processes, without the need for setting up an alternative using Unix domain sockets.

Nota: Esta extensão não está disponível na plataforma Windows.

Semaphore
Instalação/Configuração
Semaphore


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Semaphore


Instalação

Support for this functions are not enabled by default. To enable System V semaphore support compile PHP with the option --enable-sysvsem . To enable the System V shared memory support compile PHP with the option --enable-sysvshm . To enable the System V messages support compile PHP with the option --enable-sysvmsg .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Semaphore Configuration Options
Name | Default | Changeable | Changelog
sysvshm.init_mem | 10000 | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

sysvshm.init_mem int

A default size of the shared memory segment.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

System V message constants
Constant | Type | Changelog
MSG_IPC_NOWAIT | integer |
MSG_EAGAIN | integer | As of 5.2.0
MSG_ENOMSG | integer | As of 5.2.0
MSG_NOERROR | integer |
MSG_EXCEPT | integer |

Tipos Resource
Semaphore Funções
Semaphore


Semaphore Funções

Índice

  • ftok — Convert a pathname and a project identifier to a System V IPC key
  • msg_get_queue — Create or attach to a message queue
  • msg_queue_exists — Check whether a message queue exists
  • msg_receive — Receive a message from a message queue
  • msg_remove_queue — Destroy a message queue
  • msg_send — Send a message to a message queue
  • msg_set_queue — Set information in the message queue data structure
  • msg_stat_queue — Returns information from the message queue data structure
  • sem_acquire — Acquire a semaphore
  • sem_get — Get a semaphore id
  • sem_release — Release a semaphore
  • sem_remove — Remove a semaphore
  • shm_attach — Creates or open a shared memory segment
  • shm_detach — Disconnects from shared memory segment
  • shm_get_var — Returns a variable from shared memory
  • shm_has_var — Check whether a specific entry exists
  • shm_put_var — Inserts or updates a variable in shared memory
  • shm_remove_var — Removes a variable from shared memory
  • shm_remove — Removes shared memory from Unix systems
Constantes pré-definidas
ftok
Semaphore


Convert a pathname and a project identifier to a System V IPC key

Semaphore Funções
msg_get_queue
Semaphore Funções
PHP Manual

ftok

(PHP 4 >= 4.2.0, PHP 5)

ftok — Convert a pathname and a project identifier to a System V IPC key

Descrição

int ftok ( string $pathname , string $proj )

The function converts the pathname of an existing accessible file and a project identifier into an integer for use with for example shmop_open() and other System V IPC keys.

Parâmetros

pathname

Path to an accessible file.

proj

Project identifier. This must be a one character string.

Valor Retornado

On success the return value will be the created key value, otherwise -1 is returned.

Veja Também

  • shmop_open() - Cria ou abre um bloco de memória compartilhada
  • sem_get() - Get a semaphore id

Semaphore Funções
msg_get_queue
Semaphore Funções


Create or attach to a message queue

ftok
msg_queue_exists
Semaphore Funções
PHP Manual

msg_get_queue

(PHP 4 >= 4.3.0, PHP 5)

msg_get_queue — Create or attach to a message queue

Descrição

resource msg_get_queue ( int $key [, int $perms ] )

msg_get_queue() returns an id that can be used to access the System V message queue with the given key. The first call creates the message queue with the optional perms. A second call to msg_get_queue() for the same key will return a different message queue identifier, but both identifiers access the same underlying message queue.

Parâmetros

key

Message queue numeric ID

perms

Queue permissions. Default to 0666. If the message queue already exists, the perms will be ignored.

Valor Retornado

Returns a resource handle that can be used to access the System V message queue.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_send() - Send a message to a message queue
  • msg_stat_queue() - Returns information from the message queue data structure
  • msg_set_queue() - Set information in the message queue data structure

ftok
msg_queue_exists
Semaphore Funções


Check whether a message queue exists

msg_get_queue
msg_receive
Semaphore Funções
PHP Manual

msg_queue_exists

(PHP 5 >= 5.3.0)

msg_queue_exists — Check whether a message queue exists

Descrição

bool msg_queue_exists ( int $key )

Checks whether the message queue key exists.

Parâmetros

key

Queue key.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_stat_queue() - Returns information from the message queue data structure

msg_get_queue
msg_receive
Semaphore Funções


Receive a message from a message queue

msg_queue_exists
msg_remove_queue
Semaphore Funções
PHP Manual

msg_receive

(PHP 4 >= 4.3.0, PHP 5)

msg_receive — Receive a message from a message queue

Descrição

bool msg_receive ( resource $queue , int $desiredmsgtype , int &$msgtype , int $maxsize , mixed &$message [, bool $unserialize = true [, int $flags [, int &$errorcode ]]] )

msg_receive() will receive the first message from the specified queue of the type specified by desiredmsgtype.

Parâmetros

queue

desiredmsgtype

If desiredmsgtype is 0, the message from the front of the queue is returned. If desiredmsgtype is greater than 0, then the first message of that type is returned. If desiredmsgtype is less than 0, the first message on the queue with the lowest type less than or equal to the absolute value of desiredmsgtype will be read. If no messages match the criteria, your script will wait until a suitable message arrives on the queue. You can prevent the script from blocking by specifying MSG_IPC_NOWAIT in the flags parameter.

msgtype

The type of the message that was received will be stored in this parameter.

maxsize

The maximum size of message to be accepted is specified by the maxsize; if the message in the queue is larger than this size the function will fail (unless you set flags as described below).

message

The received message will be stored in message, unless there were errors receiving the message.

unserialize

If set to TRUE, the message is treated as though it was serialized using the same mechanism as the session module. The message will be unserialized and then returned to your script. This allows you to easily receive arrays or complex object structures from other PHP scripts, or if you are using the WDDX serializer, from any WDDX compatible source.

If unserialize is FALSE, the message will be returned as a binary-safe string.

flags

The optional flags allows you to pass flags to the low-level msgrcv system call. It defaults to 0, but you may specify one or more of the following values (by adding or ORing them together).

Flag values for msg_receive
MSG_IPC_NOWAIT | If there are no messages of the desiredmsgtype, return immediately and do not wait. The function will fail and return an integer value corresponding to MSG_ENOMSG.
MSG_EXCEPT | Using this flag in combination with a desiredmsgtype greater than 0 will cause the function to receive the first message that is not equal to desiredmsgtype.
MSG_NOERROR | If the message is longer than maxsize, setting this flag will truncate the message to maxsize and will not signal an error.

errorcode

If the function fails, the optional errorcode will be set to the value of the system errno variable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Upon successful completion the message queue data structure is updated as follows: msg_lrpid is set to the process-ID of the calling process, msg_qnum is decremented by 1 and msg_rtime is set to the current time.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_send() - Send a message to a message queue
  • msg_stat_queue() - Returns information from the message queue data structure
  • msg_set_queue() - Set information in the message queue data structure

msg_queue_exists
msg_remove_queue
Semaphore Funções


Destroy a message queue

msg_receive
msg_send
Semaphore Funções
PHP Manual

msg_remove_queue

(PHP 4 >= 4.3.0, PHP 5)

msg_remove_queue — Destroy a message queue

Descrição

bool msg_remove_queue ( resource $queue )

msg_remove_queue() destroys the message queue specified by the queue. Only use this function when all processes have finished working with the message queue and you need to release the system resources held by it.

Parâmetros

queue

Message queue resource handle

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msg_get_queue() - Create or attach to a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_stat_queue() - Returns information from the message queue data structure
  • msg_set_queue() - Set information in the message queue data structure

msg_receive
msg_send
Semaphore Funções


Send a message to a message queue

msg_remove_queue
msg_set_queue
Semaphore Funções
PHP Manual

msg_send

(PHP 4 >= 4.3.0, PHP 5)

msg_send — Send a message to a message queue

Descrição

bool msg_send ( resource $queue , int $msgtype , mixed $message [, bool $serialize [, bool $blocking [, int &$errorcode ]]] )

msg_send() sends a message of type msgtype (which MUST be greater than 0) to the message queue specified by queue.

Parâmetros

queue

msgtype

message

serialize

The optional serialize controls how the message is sent. serialize defaults to TRUE which means that the message is serialized using the same mechanism as the session module before being sent to the queue. This allows complex arrays and objects to be sent to other PHP scripts, or if you are using the WDDX serializer, to any WDDX compatible client.

blocking

If the message is too large to fit in the queue, your script will wait until another process reads messages from the queue and frees enough space for your message to be sent. This is called blocking; you can prevent blocking by setting the optional blocking parameter to FALSE, in which case msg_send() will immediately return FALSE if the message is too big for the queue, and set the optional errorcode to MSG_EAGAIN, indicating that you should try to send your message again a little later on.

errorcode

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Upon successful completion the message queue data structure is updated as follows: msg_lspid is set to the process-ID of the calling process, msg_qnum is incremented by 1 and msg_stime is set to the current time.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_stat_queue() - Returns information from the message queue data structure
  • msg_set_queue() - Set information in the message queue data structure

msg_remove_queue
msg_set_queue
Semaphore Funções


Set information in the message queue data structure

msg_send
msg_stat_queue
Semaphore Funções
PHP Manual

msg_set_queue

(PHP 4 >= 4.3.0, PHP 5)

msg_set_queue — Set information in the message queue data structure

Descrição

bool msg_set_queue ( resource $queue , array $data )

msg_set_queue() allows you to change the values of the msg_perm.uid, msg_perm.gid, msg_perm.mode and msg_qbytes fields of the underlying message queue data structure.

Changing the data structure will require that PHP be running as the same user that created the queue, owns the queue (as determined by the existing msg_perm.xxx fields), or be running with root privileges. root privileges are required to raise the msg_qbytes values above the system defined limit.

Parâmetros

queue

Message queue resource handle

data

You specify the values you require by setting the value of the keys that you require in the data array.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_stat_queue() - Returns information from the message queue data structure
  • msg_get_queue() - Create or attach to a message queue

msg_send
msg_stat_queue
Semaphore Funções


Returns information from the message queue data structure

msg_set_queue
sem_acquire
Semaphore Funções
PHP Manual

msg_stat_queue

(PHP 4 >= 4.3.0, PHP 5)

msg_stat_queue — Returns information from the message queue data structure

Descrição

array msg_stat_queue ( resource $queue )

msg_stat_queue() returns the message queue meta data for the message queue specified by the queue. This is useful, for example, to determine which process sent the message that was just received.

Parâmetros

queue

Message queue resource handle

Valor Retornado

The return value is an array whose keys and values have the following meanings:

Array structure for msg_stat_queue
msg_perm.uid | The uid of the owner of the queue.
msg_perm.gid | The gid of the owner of the queue.
msg_perm.mode | The file access mode of the queue.
msg_stime | The time that the last message was sent to the queue.
msg_rtime | The time that the last message was received from the queue.
msg_ctime | The time that the queue was last changed.
msg_qnum | The number of messages waiting to be read from the queue.
msg_qbytes | The maximum number of bytes allowed in one message queue. On Linux, this value may be read and modified via /proc/sys/kernel/msgmnb.
msg_lspid | The pid of the process that sent the last message to the queue.
msg_lrpid | The pid of the process that received the last message from the queue.

Veja Também

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_get_queue() - Create or attach to a message queue
  • msg_set_queue() - Set information in the message queue data structure

msg_set_queue
sem_acquire
Semaphore Funções


Acquire a semaphore

msg_stat_queue
sem_get
Semaphore Funções
PHP Manual

sem_acquire

(PHP 4, PHP 5)

sem_acquire — Acquire a semaphore

Descrição

bool sem_acquire ( resource $sem_identifier )

sem_acquire() blocks (if necessary) until the semaphore can be acquired. A process attempting to acquire a semaphore which it has already acquired will block forever if acquiring the semaphore would cause its maximum number of semaphore to be exceeded.

After processing a request, any semaphores acquired by the process but not explicitly released will be released automatically and a warning will be generated.

Parâmetros

sem_identifier

sem_identifier is a semaphore resource, obtained from sem_get().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • sem_get() - Get a semaphore id
  • sem_release() - Release a semaphore

msg_stat_queue
sem_get
Semaphore Funções


Get a semaphore id

sem_acquire
sem_release
Semaphore Funções
PHP Manual

sem_get

(PHP 4, PHP 5)

sem_get — Get a semaphore id

Descrição

resource sem_get ( int $key [, int $max_acquire = 1 [, int $perm = 0666 [, int $auto_release = 1 ]]] )

sem_get() returns an id that can be used to access the System V semaphore with the given key.

A second call to sem_get() for the same key will return a different semaphore identifier, but both identifiers access the same underlying semaphore.

Parâmetros

key

max_acquire

The number of processes that can acquire the semaphore simultaneously is set to max_acquire.

perm

The semaphore permissions. Actually this value is set only if the process finds it is the only process currently attached to the semaphore.

auto_release

Specifies if the semaphore should be automatically released on request shutdown.

Valor Retornado

Returns a positive semaphore identifier on success, or FALSE on error.

Histórico

Versão | Descrição
4.3.0 | The auto_release parameter was added.

Veja Também

  • sem_acquire() - Acquire a semaphore
  • sem_release() - Release a semaphore
  • ftok() - Convert a pathname and a project identifier to a System V IPC key

sem_acquire
sem_release
Semaphore Funções


Release a semaphore

sem_get
sem_remove
Semaphore Funções
PHP Manual

sem_release

(PHP 4, PHP 5)

sem_release — Release a semaphore

Descrição

bool sem_release ( resource $sem_identifier )

sem_release() releases the semaphore if it is currently acquired by the calling process, otherwise a warning is generated.

After releasing the semaphore, sem_acquire() may be called to re-acquire it.

Parâmetros

sem_identifier

A Semaphore resource handle as returned by sem_get().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • sem_get() - Get a semaphore id
  • sem_acquire() - Acquire a semaphore

sem_get
sem_remove
Semaphore Funções


Remove a semaphore

sem_release
shm_attach
Semaphore Funções
PHP Manual

sem_remove

(PHP 4 >= 4.1.0, PHP 5)

sem_remove — Remove a semaphore

Descrição

bool sem_remove ( resource $sem_identifier )

sem_remove() removes the given semaphore.

After removing the semaphore, it is no longer accessible.

Parâmetros

sem_identifier

A semaphore resource identifier as returned by sem_get().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • sem_get() - Get a semaphore id
  • sem_release() - Release a semaphore
  • sem_acquire() - Acquire a semaphore

sem_release
shm_attach
Semaphore Funções


Creates or open a shared memory segment

sem_remove
shm_detach
Semaphore Funções
PHP Manual

shm_attach

(PHP 4, PHP 5)

shm_attach — Creates or open a shared memory segment

Descrição

resource shm_attach ( int $key [, int $memsize [, int $perm ]] )

shm_attach() returns an id that can be used to access the System V shared memory with the given key, the first call creates the shared memory segment with memsize and the optional perm-bits perm.

A second call to shm_attach() for the same key will return a different shared memory identifier, but both identifiers access the same underlying shared memory. memsize and perm will be ignored.

Parâmetros

key

A numeric shared memory segment ID

memsize

The memory size. If not provided, default to the sysvshm.init_mem in the php.ini, otherwise 10000 bytes.

perm

The optional permission bits. Default to 0666.

Valor Retornado

Returns a shared memory segment identifier.

Histórico

Versão | Descrição
5.3.0 | This function now returns a recurso instead of an integer.

Notas

Nota:

This function used to return an integer value prior to PHP 5.3.0. To achieve the same value in a portable manner, the return value can be cast to an integer like:

<?php
// Create a temporary file and return its path
$tmp = tempnam('/tmp', 'PHP');

// Get the file token key
$key = ftok($tmp, 'a');

// Attach the SHM resource, notice the cast afterwards
$id = shm_attach($key);

if ($id === false) {
    die('Unable to create the shared memory segment');
}

// Cast to integer, since prior to PHP 5.3.0 the resource id
// is returned which can be exposed when casting a resource
// to an integer
$id = (integer) $id;
?>

Veja Também

  • shm_detach() - Disconnects from shared memory segment
  • ftok() - Convert a pathname and a project identifier to a System V IPC key

sem_remove
shm_detach
Semaphore Funções


Disconnects from shared memory segment

shm_attach
shm_get_var
Semaphore Funções
PHP Manual

shm_detach

(PHP 4, PHP 5)

shm_detach — Disconnects from shared memory segment

Descrição

bool shm_detach ( resource $shm_identifier )

shm_detach() disconnects from the shared memory given by the shm_identifier created by shm_attach(). Remember, that shared memory still exist in the Unix system and the data is still present.

Parâmetros

shm_identifier

A shared memory resource handle as returned by shm_attach()

Valor Retornado

shm_detach() always returns TRUE.

Veja Também

  • shm_attach() - Creates or open a shared memory segment
  • shm_remove() - Removes shared memory from Unix systems
  • shm_remove_var() - Removes a variable from shared memory

shm_attach
shm_get_var
Semaphore Funções


Returns a variable from shared memory

shm_detach
shm_has_var
Semaphore Funções
PHP Manual

shm_get_var

(PHP 4, PHP 5)

shm_get_var — Returns a variable from shared memory

Descrição

mixed shm_get_var ( resource $shm_identifier , int $variable_key )

shm_get_var() returns the variable with a given variable_key, in the given shared memory segment. The variable is still present in the shared memory.

Parâmetros

shm_identifier

Shared memory segment, obtained from shm_attach().

variable_key

The variable key.

Valor Retornado

Returns the variable with the given key.

Veja Também

  • shm_has_var() - Check whether a specific entry exists
  • shm_put_var() - Inserts or updates a variable in shared memory

shm_detach
shm_has_var
Semaphore Funções


Check whether a specific entry exists

shm_get_var
shm_put_var
Semaphore Funções
PHP Manual

shm_has_var

(PHP 5 >= 5.3.0)

shm_has_var — Check whether a specific entry exists

Descrição

bool shm_has_var ( resource $shm_identifier , int $variable_key )

Checks whether a specific key exists inside a shared memory segment.

Parâmetros

shm_identifier

Shared memory segment, obtained from shm_attach().

variable_key

The variable key.

Valor Retornado

Returns TRUE if the entry exists, otherwise FALSE

Veja Também

  • shm_get_var() - Returns a variable from shared memory
  • shm_put_var() - Inserts or updates a variable in shared memory

shm_get_var
shm_put_var
Semaphore Funções


Inserts or updates a variable in shared memory

shm_has_var
shm_remove_var
Semaphore Funções
PHP Manual

shm_put_var

(PHP 4, PHP 5)

shm_put_var — Inserts or updates a variable in shared memory

Descrição

bool shm_put_var ( resource $shm_identifier , int $variable_key , mixed $variable )

shm_put_var() inserts or updates the variable with the given variable_key.

Warnings (E_WARNING level) will be issued if shm_identifier is not a valid SysV shared memory index or if there was not enough shared memory remaining to complete your request.

Parâmetros

shm_identifier

A shared memory resource handle as returned by shm_attach()

variable_key

The variable key.

variable

The variable. All variable types that serialize() supports may be used: generally this means all types except for resources and some internal objects that cannot be serialized.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • shm_get_var() - Returns a variable from shared memory
  • shm_has_var() - Check whether a specific entry exists

shm_has_var
shm_remove_var
Semaphore Funções


Removes a variable from shared memory

shm_put_var
shm_remove
Semaphore Funções
PHP Manual

shm_remove_var

(PHP 4, PHP 5)

shm_remove_var — Removes a variable from shared memory

Descrição

bool shm_remove_var ( resource $shm_identifier , int $variable_key )

Removes a variable with a given variable_key and frees the occupied memory.

Parâmetros

shm_identifier

The shared memory identifier as returned by shm_attach()

variable_key

The variable key.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • shm_remove() - Removes shared memory from Unix systems

shm_put_var
shm_remove
Semaphore Funções


Removes shared memory from Unix systems

shm_remove_var
Memória Compartilhada
Semaphore Funções
PHP Manual

shm_remove

(PHP 4, PHP 5)

shm_remove — Removes shared memory from Unix systems

Descrição

bool shm_remove ( resource $shm_identifier )

shm_remove() removes the shared memory shm_identifier. All data will be destroyed.

Parâmetros

shm_identifier

The shared memory identifier as returned by shm_attach()

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • shm_remove_var() - Removes a variable from shared memory

shm_remove_var
Memória Compartilhada
Semaphore Funções


Memória Compartilhada

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para Memória Compartilhada
    • shmop_close — Fecha um bloco de memória compartilhada
    • shmop_delete — Deleta um bloco de memória compartilhada
    • shmop_open — Cria ou abre um bloco de memória compartilhada
    • shmop_read — Lê dados de um bloco de memória compartilhada
    • shmop_size — Pega o tamanho do bloco de memória compartilhada
    • shmop_write — Escreve dados em um bloco de memória compartilhada
shm_remove
Introdução
Extensões para Controle de Processo


Introdução

Shmop é um fácil caminho para usar funções que permitem o PHP ler, escrever, criar e deletar segmentos de memória compartilhada UNIX.

Nota: Versões do Windows anteriores ao Windows 2000 não suportam memória compartilhada. Em Windows, Shmop irá somente funcionar quando PHP é executado como um módulo do web server, como Apache ou IIS (CLI e CGI não funcionarão).

Nota: No PHP 4.0.3, estas funções estão prefixadas por shm ao invés de shmop.

Memória Compartilhada
Instalação/Configuração
Memória Compartilhada


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Memória Compartilhada


Instalação

Para usar shmop você precisará compilar o PHP com o parâmetro --enable-shmop na seu configure.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Memória Compartilhada


Exemplos

Índice

Constantes pré-definidas
Memória Compartilhada


Exemplos
Funções para Memória Compartilhada
Exemplos
PHP Manual

Exemplo #1 Visão Geral de Operações de Memória Compartilhada

<?php

// Create 100 byte shared memory block with system id of 0xff3
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if (!$shm_id) {
    echo "Couldn't create shared memory segment\n";
}

// Get shared memory block's size
$shm_size = shmop_size($shm_id);
echo "SHM Block Size: " . $shm_size . " has been created.\n";

// Lets write a test string into shared memory
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if ($shm_bytes_written != strlen("my shared memory block")) {
    echo "Couldn't write the entire length of data\n";
}

// Now lets read the string back
$my_string = shmop_read($shm_id, 0, $shm_size);
if (!$my_string) {
    echo "Couldn't read from shared memory block\n";
}
echo "The data inside shared memory was: " . $my_string . "\n";

//Now lets delete the block and close the shared memory segment
if (!shmop_delete($shm_id)) {
    echo "Couldn't mark shared memory block for deletion.";
}
shmop_close($shm_id);

?>

Exemplos
Funções para Memória Compartilhada
Exemplos


Funções para Memória Compartilhada

Índice

  • shmop_close — Fecha um bloco de memória compartilhada
  • shmop_delete — Deleta um bloco de memória compartilhada
  • shmop_open — Cria ou abre um bloco de memória compartilhada
  • shmop_read — Lê dados de um bloco de memória compartilhada
  • shmop_size — Pega o tamanho do bloco de memória compartilhada
  • shmop_write — Escreve dados em um bloco de memória compartilhada
shmop_close
Memória Compartilhada


Fecha um bloco de memória compartilhada

Funções para Memória Compartilhada
shmop_delete
Funções para Memória Compartilhada
PHP Manual

shmop_close

(PHP 4 >= 4.0.4, PHP 5)

shmop_close — Fecha um bloco de memória compartilhada

Descrição

void shmop_close ( int $shmid )

shmop_close() é usada para fechar um bloco de memória compartilhada.

Parâmetros

shmid

O identificador de bloco de memória compartilhada criado por shmop_open()

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Fechando um bloco de memória compartilhada

<?php
shmop_close($shm_id);
?>

Esse exemplo irá fechar o bloco de memória compartilhada identificado por $shm_id.

Veja Também

  • shmop_open() - Cria ou abre um bloco de memória compartilhada

Funções para Memória Compartilhada
shmop_delete
Funções para Memória Compartilhada


Deleta um bloco de memória compartilhada

shmop_close
shmop_open
Funções para Memória Compartilhada
PHP Manual

shmop_delete

(PHP 4 >= 4.0.4, PHP 5)

shmop_delete — Deleta um bloco de memória compartilhada

Descrição

bool shmop_delete ( int $shmid )

shmop_delete() é usada para deletar um bloco de memória compartilhada.

Parâmetros

shmid

O identificaor de bloco de memória compartilhada criado por shmop_open().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Deletando um bloco de memória compartilhada

<?php
shmop_delete($shm_id);
?>

Esse exemplo irá deletar um bloco de memória compartilhada identificado por $shm_id.

shmop_close
shmop_open
Funções para Memória Compartilhada


Cria ou abre um bloco de memória compartilhada

shmop_delete
shmop_read
Funções para Memória Compartilhada
PHP Manual

shmop_open

(PHP 4 >= 4.0.4, PHP 5)

shmop_open — Cria ou abre um bloco de memória compartilhada

Descrição

int shmop_open ( int $key , string $flags , int $mode , int $size )

shmop_open() pode criar ou abrir um bloco de memória compartilhada.

shmop_open() pega 4 parâmetros: chave, que é usado pelo id do sistema para o bloco de memória compartilhada, esse parâmetro pode ser passado como decimal ou hexadecimal. O segundo parâmetro são flags que você pode usar:

  • "a" para acesso (seta SHM_RDONLY para shmat) use essa flag quando você precisar abrir um bloco de memória compartilhada existente como somente leitura
  • "c" para criar (seta IPC_CREATE) use essa flag quando você precisar criar um novo bloco de memória compartilhada ou se um segmento com a mesma chave existir, tente abrir isso para ler e escrever
  • "w" para ler & acesso à escrita use essa flag quando você precisar ler e escrever para um segmento de bloco de memória compartilhada, use essa flag na maior parte dos casos.
  • "n" cria um novo segmento de memória (seta IPC_CREATE|IPC_EXCL) use essa flag quando você quer criar um novo segmento de memória compartilhada mas se um já existir com a mesma flag, irá falhar. Isso é útil para propósitos de segurança, usando isso você pode previnir rápidos exploits.
O terceiro parâmetro é o modo, que são permissões que você deseja designar para o seu segmento de memória, estas são as mesmas permissões para o arquivo. Permissões precisam ser passadas no formato octal ex. 0644. O último parâmetro é o tamanho do bloco de memória compartilhada que você deseja criar em bytes.

Nota: Nota: o 3rd e 4th devem ser colocados como 0 se você está abrindo um segmento de memória existente. Em caso de sucesso shmop_open() irá retornar um id que você pode usar para acessar o segmento de memória compartilhada que você criou.

Exemplo #1 Cria um novo bloco de memória compartilhada

<?php
$shm_key = ftok(__FILE__,'t');
$shm_id = shmop_open($shm_key, "c", 0644, 100);
?>

Esse exemplo abre um bloco de memória compartilhada com um id do sistema retornado por ftok().

shmop_delete
shmop_read
Funções para Memória Compartilhada


Lê dados de um bloco de memória compartilhada

shmop_open
shmop_size
Funções para Memória Compartilhada
PHP Manual

shmop_read

(PHP 4 >= 4.0.4, PHP 5)

shmop_read — Lê dados de um bloco de memória compartilhada

Descrição

string shmop_read ( int $shmid , int $start , int $count )

shmop_read() irá ler uma string de um bloco de memória compartilhada.

shmop_read() pega 3 parâmetros: shmid, que é o identificador do bloco de memória compartilhada criado por shmop_open(), e o último que começa lendo e contando o número de bytes para ler.

Exemplo #1 Lendo um bloco de memória compartilhada

<?php
$shm_data = shmop_read($shm_id, 0, 50);
?>

Esse exemplo irá ler 50 bytes de um bloco de memória compartilhada e armazenaros dados dentro de $shm_data.

shmop_open
shmop_size
Funções para Memória Compartilhada


Pega o tamanho do bloco de memória compartilhada

shmop_read
shmop_write
Funções para Memória Compartilhada
PHP Manual

shmop_size

(PHP 4 >= 4.0.4, PHP 5)

shmop_size — Pega o tamanho do bloco de memória compartilhada

Descrição

int shmop_size ( int $shmid )

shmop_size() é usada para pegar o tamanho, em bytes do bloco de memória compartilhada.

Parâmetros

shmid

O identificador do bloco de memória compartilhada criado por shmop_open()

Valor Retornado

Retorna um inteiro, que representa o número de bytes de bloco ocupados pela memória compartilhada.

Exemplos

Exemplo #1 Pegando o tamanho do bloco de memória compartilhada

<?php
$shm_size = shmop_size($shm_id);
?>

Isso irá trazer o tamanho de um bloco de memória compartilhada identificado por $shm_id em $shm_size.

shmop_read
shmop_write
Funções para Memória Compartilhada


Escreve dados em um bloco de memória compartilhada

shmop_size
Outras Básicas Extensões
Funções para Memória Compartilhada
PHP Manual

shmop_write

(PHP 4 >= 4.0.4, PHP 5)

shmop_write — Escreve dados em um bloco de memória compartilhada

Descrição

int shmop_write ( int $shmid , string $data , int $offset )

shmop_write() irá escrever uma string em um bloco de memória compartilhada.

shmop_write() pega 3 parâmetros: shmid, que é o identificador do bloco de memória compartilhada criado por shmop_open(), dados, uma string que você quer escrever em um bloco de memória compartilhada e o último, que especifica onde começa a escrita de dados dentro do segmento de memória compartilhada.

Exemplo #1 Escrevendo em um bloco de memória compartilhada

<?php
$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
?>

Esse exemplo irá escrever dados dentro de $my_string em um bloco de memória compartilhada, $shm_bytes_written irá conter o número de bytes escritos.

shmop_size
Outras Básicas Extensões
Funções para Memória Compartilhada


Outras Básicas Extensões

  • GeoIP — Geo IP Location
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • GeoIP Funções
  • Judy — Judy Arrays
    • Introdução
    • Instalação/Configuração
    • Judy — The Judy class
    • Judy Funções
  • JSON — JavaScript Object Notation
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da JSON
  • Misc. — Funções Miscelâneas
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Misc. Funções
  • Parsekit
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Parsekit
  • SPL — Standard PHP Library (SPL)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Datastructures
    • Iterators
    • Interfaces
    • Exceptions
    • Funções da SPL
    • File Handling
    • Miscellaneous Classes and Interfaces
  • SPL Types — SPL Type Handling
    • Introdução
    • Instalação/Configuração
    • SplInt — The SplInt class
    • SplFloat — The SplFloat class
    • SplEnum — The SplEnum class
    • SplBool — The SplBool class
    • SplString — The SplString class
  • Streams
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Stream Filters
    • Stream Contexts
    • Stream Errors
    • Exemplos
    • streamWrapper — The streamWrapper class
    • Stream Funções
  • Tidy
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções do Tidy
  • Tokenizer
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da Tokenizer
  • URLs
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • URL Funções
  • V8js — V8 Javascript Engine Integration
    • Introdução
    • Instalação/Configuração
    • Exemplos
    • V8Js — The V8Js class
    • V8JsException — The V8JsException class
  • Yaml — YAML Data Serialization
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Yaml Funções
shmop_write
GeoIP
Referência das Funções


Geo IP Location

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • GeoIP Funções
    • geoip_continent_code_by_name — Get the two letter continent code
    • geoip_country_code_by_name — Get the two letter country code
    • geoip_country_code3_by_name — Get the three letter country code
    • geoip_country_name_by_name — Get the full country name
    • geoip_database_info — Get GeoIP Database information
    • geoip_db_avail — Determine if GeoIP Database is available
    • geoip_db_filename — Returns the filename of the corresponding GeoIP Database
    • geoip_db_get_all_info — Returns detailed information about all GeoIP database types
    • geoip_id_by_name — Get the Internet connection type
    • geoip_isp_by_name — Get the Internet Service Provider (ISP) name
    • geoip_org_by_name — Get the organization name
    • geoip_record_by_name — Returns the detailed City information found in the GeoIP Database
    • geoip_region_by_name — Get the country code and region
    • geoip_region_name_by_code — Returns the region name for some country and region code combo
    • geoip_time_zone_by_country_and_region — Returns the time zone for some country and region code combo
Outras Básicas Extensões
Introdução
Outras Básicas Extensões


Introdução

The GeoIP extension allows you to find the location of an IP address. City, State, Country, Longitude, Latitude, and other information as all, such as ISP and connection type can be obtained with the help of GeoIP.

GeoIP
Instalação/Configuração
GeoIP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
GeoIP


Dependências

This extension requires the GeoIP C library version 1.4.0 or higher to be installed. You can grab the latest version from » http://www.maxmind.com/app/c and compile it yourself.

By default, you will only have access to the Free GeoIP Country or GeoLite City databases. While this module can work with other types of database, you must buy a commercial license from » Maxmind.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/geoip.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

GEOIP_COUNTRY_EDITION (integer)
GEOIP_REGION_EDITION_REV0 (integer)
GEOIP_CITY_EDITION_REV0 (integer)
GEOIP_ORG_EDITION (integer)
GEOIP_ISP_EDITION (integer)
GEOIP_CITY_EDITION_REV1 (integer)
GEOIP_REGION_EDITION_REV1 (integer)
GEOIP_PROXY_EDITION (integer)
GEOIP_ASNUM_EDITION (integer)
GEOIP_NETSPEED_EDITION (integer)
GEOIP_DOMAIN_EDITION (integer)

The following constants are for net speed:

GEOIP_UNKNOWN_SPEED (integer)
GEOIP_DIALUP_SPEED (integer)
GEOIP_CABLEDSL_SPEED (integer)
GEOIP_CORPORATE_SPEED (integer)
Tipos Resource
GeoIP Funções
GeoIP


GeoIP Funções

Índice

  • geoip_continent_code_by_name — Get the two letter continent code
  • geoip_country_code_by_name — Get the two letter country code
  • geoip_country_code3_by_name — Get the three letter country code
  • geoip_country_name_by_name — Get the full country name
  • geoip_database_info — Get GeoIP Database information
  • geoip_db_avail — Determine if GeoIP Database is available
  • geoip_db_filename — Returns the filename of the corresponding GeoIP Database
  • geoip_db_get_all_info — Returns detailed information about all GeoIP database types
  • geoip_id_by_name — Get the Internet connection type
  • geoip_isp_by_name — Get the Internet Service Provider (ISP) name
  • geoip_org_by_name — Get the organization name
  • geoip_record_by_name — Returns the detailed City information found in the GeoIP Database
  • geoip_region_by_name — Get the country code and region
  • geoip_region_name_by_code — Returns the region name for some country and region code combo
  • geoip_time_zone_by_country_and_region — Returns the time zone for some country and region code combo
Constantes pré-definidas
geoip_continent_code_by_name
GeoIP


Get the two letter continent code

GeoIP Funções
geoip_country_code_by_name
GeoIP Funções
PHP Manual

geoip_continent_code_by_name

(PECL geoip >= 1.0.3)

geoip_continent_code_by_name — Get the two letter continent code

Descrição

string geoip_continent_code_by_name ( string $hostname )

The geoip_continent_code_by_name() function will return the two letter continent code corresponding to a hostname or an IP address.

Parâmetros

hostname

The hostname or IP address whose location is to be looked-up.

Valor Retornado

Returns the two letter continent code on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_continent_code_by_name() example

This will print where the host example.com is located.

<?php
$continent = geoip_continent_code_by_name('www.example.com');
if ($continent) {
    echo 'This host is located in: ' . $continent;
}
?>

O exemplo acima irá imprimir:

 This host is located in: NA

Veja Também

  • geoip_country_code_by_name() - Get the two letter country code

GeoIP Funções
geoip_country_code_by_name
GeoIP Funções


Get the two letter country code

geoip_continent_code_by_name
geoip_country_code3_by_name
GeoIP Funções
PHP Manual

geoip_country_code_by_name

(PECL geoip >= 0.2.0)

geoip_country_code_by_name — Get the two letter country code

Descrição

string geoip_country_code_by_name ( string $hostname )

The geoip_country_code_by_name() function will return the two letter country code corresponding to a hostname or an IP address.

Parâmetros

hostname

The hostname or IP address whose location is to be looked-up.

Valor Retornado

Returns the two letter ISO country code on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_country_code_by_name() example

This will print where the host example.com is located.

<?php
$country = geoip_country_code_by_name('www.example.com');
if ($country) {
    echo 'This host is located in: ' . $country;
}
?>

O exemplo acima irá imprimir:

This host is located in: US

Veja Também

  • geoip_country_code3_by_name() - Get the three letter country code
  • geoip_country_name_by_name() - Get the full country name

geoip_continent_code_by_name
geoip_country_code3_by_name
GeoIP Funções


Get the three letter country code

geoip_country_code_by_name
geoip_country_name_by_name
GeoIP Funções
PHP Manual

geoip_country_code3_by_name

(PECL geoip >= 0.2.0)

geoip_country_code3_by_name — Get the three letter country code

Descrição

string geoip_country_code3_by_name ( string $hostname )

The geoip_country_code3_by_name() function will return the three letter country code corresponding to a hostname or an IP address.

Parâmetros

hostname

The hostname or IP address whose location is to be looked-up.

Valor Retornado

Returns the three letter country code on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_country_code3_by_name() example

This will print where the host example.com is located.

<?php
$country = geoip_country_code3_by_name('www.example.com');
if ($country) {
    echo 'This host is located in: ' . $country;
}
?>

O exemplo acima irá imprimir:

This host is located in: USA

Veja Também

  • geoip_country_code_by_name() - Get the two letter country code
  • geoip_country_name_by_name() - Get the full country name

geoip_country_code_by_name
geoip_country_name_by_name
GeoIP Funções


Get the full country name

geoip_country_code3_by_name
geoip_database_info
GeoIP Funções
PHP Manual

geoip_country_name_by_name

(PECL geoip >= 0.2.0)

geoip_country_name_by_name — Get the full country name

Descrição

string geoip_country_name_by_name ( string $hostname )

The geoip_country_name_by_name() function will return the full country name corresponding to a hostname or an IP address.

Parâmetros

hostname

The hostname or IP address whose location is to be looked-up.

Valor Retornado

Returns the country name on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_country_name_by_name() example

This will print where the host example.com is located.

<?php
$country = geoip_country_name_by_name('www.example.com');
if ($country) {
    echo 'This host is located in: ' . $country;
}
?>

O exemplo acima irá imprimir:

 This host is located in: United States

Veja Também

  • geoip_country_code_by_name() - Get the two letter country code
  • geoip_country_code3_by_name() - Get the three letter country code

geoip_country_code3_by_name
geoip_database_info
GeoIP Funções


Get GeoIP Database information

geoip_country_name_by_name
geoip_db_avail
GeoIP Funções
PHP Manual

geoip_database_info

(PECL geoip >= 0.2.0)

geoip_database_info — Get GeoIP Database information

Descrição

string geoip_database_info ([ int $database = GEOIP_COUNTRY_EDITION ] )

The geoip_database_info() function returns the corresponding GeoIP Database version as it is defined inside the binary file.

If this function is called without arguments, it returns the version of the GeoIP Free Country Edition.

Parâmetros

database

The database type as an integer. You can use the various constants defined with this extension (ie: GEOIP_*_EDITION).

Valor Retornado

Returns the corresponding database version, or NULL on error.

Exemplos

Exemplo #1 A geoip_region_by_name() example

This will output the current database version string.

<?php
print geoip_database_info(GEOIP_COUNTRY_EDITION);
?>

O exemplo acima irá imprimir:

GEO-106FREE 20060801 Build 1 Copyright (c) 2006 MaxMind LLC All Rights Reserved

geoip_country_name_by_name
geoip_db_avail
GeoIP Funções


Determine if GeoIP Database is available

geoip_database_info
geoip_db_filename
GeoIP Funções
PHP Manual

geoip_db_avail

(PECL geoip >= 1.0.1)

geoip_db_avail — Determine if GeoIP Database is available

Descrição

bool geoip_db_avail ( int $database )

The geoip_db_avail() function returns if the corresponding GeoIP Database is available and can be opened on disk.

It does not indicate if the file is a proper database, only if it is readable.

Parâmetros

database

The database type as an integer. You can use the various constants defined with this extension (ie: GEOIP_*_EDITION).

Valor Retornado

Returns TRUE is database exists, FALSE if not found, or NULL on error.

Exemplos

Exemplo #1 A geoip_db_avail() example

This will output the current database version string.

<?php

if (geoip_db_avail(GEOIP_COUNTRY_EDITION))
    print geoip_database_info(GEOIP_COUNTRY_EDITION);
?>

O exemplo acima irá imprimir:

GEO-106FREE 20080801 Build 1 Copyright (c) 2006 MaxMind LLC All Rights Reserved

geoip_database_info
geoip_db_filename
GeoIP Funções


Returns the filename of the corresponding GeoIP Database

geoip_db_avail
geoip_db_get_all_info
GeoIP Funções
PHP Manual

geoip_db_filename

(PECL geoip >= 1.0.1)

geoip_db_filename — Returns the filename of the corresponding GeoIP Database

Descrição

string geoip_db_filename ( int $database )

The geoip_db_filename() function returns the filename of the corresponding GeoIP Database.

It does not indicate if the file exists or not on disk, only where the library is looking for the database.

Parâmetros

database

The database type as an integer. You can use the various constants defined with this extension (ie: GEOIP_*_EDITION).

Valor Retornado

Returns the filename of the corresponding database, or NULL on error.

Exemplos

Exemplo #1 A geoip_db_filename() example

This will output the filename of the corresponding database.

<?php

print geoip_db_filename(GEOIP_COUNTRY_EDITION);

?>

O exemplo acima irá imprimir:

/usr/share/GeoIP/GeoIP.dat

geoip_db_avail
geoip_db_get_all_info
GeoIP Funções


Returns detailed information about all GeoIP database types

geoip_db_filename
geoip_id_by_name
GeoIP Funções
PHP Manual

geoip_db_get_all_info

(PECL geoip >= 1.0.1)

geoip_db_get_all_info — Returns detailed information about all GeoIP database types

Descrição

array geoip_db_get_all_info ( void )

The geoip_db_get_all_info() function will return detailed information as a multi-dimensional array about all the GeoIP database types.

This function is available even if no databases are installed. It will simply list them as non-available.

The names of the different keys of the returning associative array are as follows:

  • "available" -- Boolean, indicate if DB is available (see geoip_db_avail())
  • "description" -- The database description
  • "filename" -- The database filename on disk (see geoip_db_filename())

Valor Retornado

Returns the associative array.

Exemplos

Exemplo #1 A geoip_db_get_all_info() example

This will print the array containing all the information.

<?php
$infos = geoip_db_get_all_info();
if (is_array($infos)) {
    var_dump($infos);
}
?>

O exemplo acima irá imprimir:

array(11) {
  [1]=>
  array(3) {
    ["available"]=>
    bool(true)
    ["description"]=>
    string(21) "GeoIP Country Edition"
    ["filename"]=>
    string(32) "/usr/share/GeoIP/GeoIP.dat"
  }

[ ... ]

  [11]=>
  array(3) {
    ["available"]=>
    bool(false)
    ["description"]=>
    string(25) "GeoIP Domain Name Edition"
    ["filename"]=>
    string(38) "/usr/share/GeoIP/GeoIPDomain.dat"
  }
}

Exemplo #2 A geoip_db_get_all_info() example

You can use the various constants as keys to get only parts of the information.

<?php
$infos = geoip_db_get_all_info();
if ($infos[GEOIP_COUNTRY_EDITION]['available']) {
    echo $infos[GEOIP_COUNTRY_EDITION]['description'];
}
?>

O exemplo acima irá imprimir:

GeoIP Country Edition

geoip_db_filename
geoip_id_by_name
GeoIP Funções


Get the Internet connection type

geoip_db_get_all_info
geoip_isp_by_name
GeoIP Funções
PHP Manual

geoip_id_by_name

(PECL geoip >= 0.2.0)

geoip_id_by_name — Get the Internet connection type

Descrição

int geoip_id_by_name ( string $hostname )

The geoip_id_by_name() function will return the Internet connection type corresponding to a hostname or an IP address.

The return value is numeric and can be compared to the following constants:

  • GEOIP_UNKNOWN_SPEED
  • GEOIP_DIALUP_SPEED
  • GEOIP_CABLEDSL_SPEED
  • GEOIP_CORPORATE_SPEED

Parâmetros

hostname

The hostname or IP address whose connection type is to be looked-up.

Valor Retornado

Returns the connection type.

Exemplos

Exemplo #1 A geoip_id_by_name() example

This will output the connection type of the host example.com.

<?php
$netspeed = geoip_id_by_name('www.example.com');

echo 'The connection type is ';

switch ($netspeed) {
    case GEOIP_DIALUP_SPEED:
        echo 'dial-up';
        break;
    case GEOIP_CABLEDSL_SPEED:
        echo 'cable or DSL';
        break;
    case GEOIP_CORPORATE_SPEED:
        echo 'corporate';
        break;
    case GEOIP_UNKNOWN_SPEED:
    default:
        echo 'unknown';
}
?>

O exemplo acima irá imprimir:

The connection type is corporate

geoip_db_get_all_info
geoip_isp_by_name
GeoIP Funções


Get the Internet Service Provider (ISP) name

geoip_id_by_name
geoip_org_by_name
GeoIP Funções
PHP Manual

geoip_isp_by_name

(PECL geoip >= 1.0.2)

geoip_isp_by_name — Get the Internet Service Provider (ISP) name

Descrição

string geoip_isp_by_name ( string $hostname )

The geoip_isp_by_name() function will return the name of the Internet Service Provider (ISP) that an IP is assigned to.

This function is currently only available to users who have bought a commercial GeoIP ISP Edition. A warning will be issued if the proper database cannot be located.

Parâmetros

hostname

The hostname or IP address.

Valor Retornado

Returns the ISP name on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_isp_by_name() example

This will print the ISP name of host example.com.

<?php
$isp = geoip_isp_by_name('www.example.com');
if ($isp) {
    echo 'This host IP is from ISP: ' . $isp;
}
?>

O exemplo acima irá imprimir:

This host IP is from ISP: ICANN c/o Internet Assigned Numbers Authority

geoip_id_by_name
geoip_org_by_name
GeoIP Funções


Get the organization name

geoip_isp_by_name
geoip_record_by_name
GeoIP Funções
PHP Manual

geoip_org_by_name

(PECL geoip >= 0.2.0)

geoip_org_by_name — Get the organization name

Descrição

string geoip_org_by_name ( string $hostname )

The geoip_org_by_name() function will return the name of the organization that an IP is assigned to.

This function is currently only available to users who have bought a commercial GeoIP Organization, ISP or AS Edition. A warning will be issued if the proper database cannot be located.

Parâmetros

hostname

The hostname or IP address.

Valor Retornado

Returns the organization name on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_org_by_name() example

This will print to whom the host example.com IP is allocated.

<?php
$org = geoip_org_by_name('www.example.com');
if ($org) {
    echo 'This host IP is allocated to: ' . $org;
}
?>

O exemplo acima irá imprimir:

This host IP is allocated to: ICANN c/o Internet Assigned Numbers Authority

geoip_isp_by_name
geoip_record_by_name
GeoIP Funções


Returns the detailed City information found in the GeoIP Database

geoip_org_by_name
geoip_region_by_name
GeoIP Funções
PHP Manual

geoip_record_by_name

(PECL geoip >= 0.2.0)

geoip_record_by_name — Returns the detailed City information found in the GeoIP Database

Descrição

array geoip_record_by_name ( string $hostname )

The geoip_record_by_name() function will return the record information corresponding to a hostname or an IP address.

This function is available for both GeoLite City Edition and commercial GeoIP City Edition. A warning will be issued if the proper database cannot be located.

The names of the different keys of the returning associative array are as follows:

  • "continent_code" -- Two letter continent code (as of version 1.0.4 with libgeoip 1.4.3 or newer)
  • "country_code" -- Two letter country code (see geoip_country_code_by_name())
  • "country_code3" -- Three letter country code (see geoip_country_code3_by_name())
  • "country_name" -- The country name (see geoip_country_name_by_name())
  • "region" -- The region code (ex: CA for California)
  • "city" -- The city.
  • "postal_code" -- The Postal Code, FSA or Zip Code.
  • "latitude" -- The Latitude as signed double.
  • "longitude" -- The Longitude as signed double.
  • "dma_code" -- Designated Market Area code (USA and Canada only)
  • "area_code" -- The PSTN area code (ex: 212)

Parâmetros

hostname

The hostname or IP address whose record is to be looked-up.

Valor Retornado

Returns the associative array on success, or FALSE if the address cannot be found in the database.

Histórico

Versão | Descrição
1.0.4 | Adding the continent_code with GeoIP Library 1.4.3 or newer only
1.0.3 | Adding country_code3 and country_name

Exemplos

Exemplo #1 A geoip_record_by_name() example

This will print the array containing the record of host example.com.

<?php
$record = geoip_record_by_name('www.example.com');
if ($record) {
    print_r($record);
}
?>

O exemplo acima irá imprimir:

Array
(
    [continent_code] => NA
    [country_code] => US
    [country_code3] => USA
    [country_name] => United States
    [region] => CA
    [city] => Marina Del Rey
    [postal_code] =>
    [latitude] => 33.9776992798
    [longitude] => -118.435096741
    [dma_code] => 803
    [area_code] => 310
)

geoip_org_by_name
geoip_region_by_name
GeoIP Funções


Get the country code and region

geoip_record_by_name
geoip_region_name_by_code
GeoIP Funções
PHP Manual

geoip_region_by_name

(PECL geoip >= 0.2.0)

geoip_region_by_name — Get the country code and region

Descrição

array geoip_region_by_name ( string $hostname )

The geoip_region_by_name() function will return the country and region corresponding to a hostname or an IP address.

This function is currently only available to users who have bought a commercial GeoIP Region Edition. A warning will be issued if the proper database cannot be located.

The names of the different keys of the returning associative array are as follows:

  • "country_code" -- Two letter country code (see geoip_country_code_by_name())
  • "region" -- The region code (ex: CA for California)

Parâmetros

hostname

The hostname or IP address whose region is to be looked-up.

Valor Retornado

Returns the associative array on success, or FALSE if the address cannot be found in the database.

Exemplos

Exemplo #1 A geoip_region_by_name() example

This will print the array containing the country code and region of the host example.com.

<?php
$region = geoip_region_by_name('www.example.com');
if ($region) {
    print_r($region);
}
?>

O exemplo acima irá imprimir:

Array
(
    [country_code] => US
    [region] => CA
)

geoip_record_by_name
geoip_region_name_by_code
GeoIP Funções


Returns the region name for some country and region code combo

geoip_region_by_name
geoip_time_zone_by_country_and_region
GeoIP Funções
PHP Manual

geoip_region_name_by_code

(PECL geoip >= 1.0.4)

geoip_region_name_by_code — Returns the region name for some country and region code combo

Descrição

string geoip_region_name_by_code ( string $country_code , string $region_code )

The geoip_region_name_by_code() function will return the region name corresponding to a country and region code combo.

In the United States, the region code corresponds to the two-letter abbreviation of each state. In Canada, the region code corresponds to the two-letter province or territory code as attributed by Canada Post.

For the rest of the world, GeoIP uses FIPS 10-4 codes to represent regions. You can check » http://www.maxmind.com/app/fips10_4 for a detailed list of FIPS 10-4 codes.

This function is always available if using GeoIP Library version 1.4.1 or newer. The data is taken directly from the GeoIP Library and not from any database.

Parâmetros

country_code

The two-letter country code (see geoip_country_code_by_name())

region_code

The two-letter (or digit) region code (see geoip_region_by_name())

Valor Retornado

Returns the region name on success, or FALSE if the country and region code combo cannot be found.

Exemplos

Exemplo #1 A geoip_region_name_by_code() example using region code for US/Canada

This will print the region name for country CA (Canada), region QC (Quebec).

<?php
$region = geoip_region_name_by_code('CA', 'QC');
if ($region) {
    echo 'Region name for CA/QC is: ' . $region;
}
?>

O exemplo acima irá imprimir:

Region name for CA/QC is: Quebec

Exemplo #2 A geoip_region_name_by_code() example using FIPS codes

This will print the region name for country JP (Japan), region 01.

<?php
$region = geoip_region_name_by_code('JP', '01');
if ($region) {
    echo 'Region name for JP/01 is: ' . $region;
}
?>

O exemplo acima irá imprimir:

Region name for JP/01 is: Aichi

geoip_region_by_name
geoip_time_zone_by_country_and_region
GeoIP Funções


Returns the time zone for some country and region code combo

geoip_region_name_by_code
Judy
GeoIP Funções
PHP Manual

geoip_time_zone_by_country_and_region

(PECL geoip >= 1.0.4)

geoip_time_zone_by_country_and_region — Returns the time zone for some country and region code combo

Descrição

string geoip_time_zone_by_country_and_region ( string $country_code [, string $region_code ] )

The geoip_time_zone_by_country_and_region() function will return the time zone corresponding to a country and region code combo.

In the United States, the region code corresponds to the two-letter abbreviation of each state. In Canada, the region code corresponds to the two-letter province or territory code as attributed by Canada Post.

For the rest of the world, GeoIP uses FIPS 10-4 codes to represent regions. You can check » http://www.maxmind.com/app/fips10_4 for a detailed list of FIPS 10-4 codes.

This function is always available if using GeoIP Library version 1.4.1 or newer. The data is taken directly from the GeoIP Library and not from any database.

Parâmetros

country_code

The two-letter country code (see geoip_country_code_by_name())

region_code

The two-letter (or digit) region code (see geoip_region_by_name())

Valor Retornado

Returns the time zone on success, or FALSE if the country and region code combo cannot be found.

Exemplos

Exemplo #1 A geoip_time_zone_by_country_and_region() example using region code for US/Canada

This will print the time zone for country CA (Canada), region QC (Quebec).

<?php
$timezone = geoip_time_zone_by_country_and_region('CA', 'QC');
if ($timezone) {
    echo 'Time zone for CA/QC is: ' . $timezone;
}
?>

O exemplo acima irá imprimir:

Time zone for CA/QC is: America/Montreal

Exemplo #2 A geoip_time_zone_by_country_and_region() example using FIPS codes

This will print the time zone for country JP (Japan), region 01 (Aichi).

<?php
$timezone = geoip_time_zone_by_country_and_region('JP', '01');
if ($timezone) {
    echo 'Time zone for JP/01 is: ' . $timezone;
}
?>

O exemplo acima irá imprimir:

Time zone for JP/01 is: Asia/Tokyo

geoip_region_name_by_code
Judy
GeoIP Funções


Judy Arrays

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Judy — The Judy class
    • Judy::byCount — Locate the Nth index present in the Judy array
    • Judy::__construct — Construct a new Judy object
    • Judy::count — Count the number of elements in the Judy array
    • Judy::__destruct — Destruct a Judy object
    • Judy::first — Search for the first index in the Judy array
    • Judy::firstEmpty — Search for the first absent index in the Judy array
    • Judy::free — Free the entire Judy array
    • Judy::getType — Return the type of the current Judy array
    • Judy::last — Search for the last index in the Judy array
    • Judy::lastEmpty — Search for the last absent index in the Judy array
    • Judy::memoryUsage — Return the memory used by the Judy array
    • Judy::next — Search for the next index in the Judy array
    • Judy::nextEmpty — Search for the next absent index in the Judy array
    • Judy::offsetExists — Whether a offset exists
    • Judy::offsetGet — Offset to retrieve
    • Judy::offsetSet — Offset to set
    • Judy::offsetUnset — Offset to unset
    • Judy::prev — Search for the previous index in the Judy array
    • Judy::prevEmpty — Search for the previous absent index in the Judy array
    • Judy::size — Return the size of the current Judy array
  • Judy Funções
    • judy_type — Return the type of a Judy array
    • judy_version — Return or print the current PHP Judy version
geoip_time_zone_by_country_and_region
Introdução
Outras Básicas Extensões


Introdução

PHP Judy is a PECL extension for the » Judy C library implementing dynamic sparse arrays.

A Judy array is a complex but very fast associative array data structure for storing and looking up values using integer or string keys. Unlike normal arrays, Judy arrays may be sparse; that is, they may have large ranges of unassigned indices.

A Judy array consumes memory only when populated yet can grow to take advantage of all available memory. Judy's key benefits are: scalability, performance, memory efficiency, and ease of use. Judy arrays are designed to grow without tuning into the peta-element range, scaling near O(log-base-256) -- 1 more RAM access at 256 X population.

Judy
Instalação/Configuração
Judy


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Judy


Dependências

This extension require the » Judy C library.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/judy

The latest PECL/judy Win32 DLL is available here: » php_judy.dll

Installation on Linux Systems

From sources

Download and install » libJudy, then :

     phpize
     ./configure --with-judy[=DIR]
     make
     make test
     make install

Ubuntu/Debian

libJudy can be installed with apt-get :

    apt-get install libjudydebian1 libjudy-dev
Then by installing the Judy extension from PECL or from the sources.

Installation on Windows Systems

Download » libJudy, then extract the sources and open the Visual Studio command prompt and navigate to the source directory. Then execute :

build
This creates "Judy.lib", copy this into the php-sdk library folder and name it "libJudy.lib" Then copy the include file "judy.h" into the php-sdk includes folder.

Next, the PHP Judy extension can be installed from PECL or from the sources by extracting the pecl/judy into your build folder where the build scripts will be able to pick it up, e.g.:

    C:\php\pecl\judy\
If your source of PHP is located in:
    C:\php\src\
The rest of the steps is pretty straight forward, like any other external extension:
    buildconf
    configure --with-judy=shared
    nmake

Installation on Mac OS X

Download and install » libJudy. Then install the Judy extension from PECL or from the sources.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
Judy
Instalação/Configuração


The Judy class

Introdução

The Judy class implements the ArrayAccess interface and the Iterator interface. This class, once instantiated, can be accessed like a PHP array.

A PHP Judy object (or Judy Array) can be one of the following type :

  • Judy::BITSET
  • Judy::INT_TO_INT
  • Judy::INT_TO_STRING
  • Judy::STRING_TO_INT
  • Judy::STRING_TO_MIXED

Exemplo #1 Judy array example

<?php
    $judy = new Judy(Judy::INT_TO_MIXED);
    $judy[1] = "one";
    $judy[2] = array('a', 'b', 'c');
    $judy[3] = new Judy(Judy::BITSET);
?>

Sinopse da classe

Judy implements ArrayAccess , Iterator {
/* Constants */
const integer Judy::BITSET = 1 ;
const integer Judy::INT_TO_INT = 2 ;
const integer Judy::INT_TO_MIXED = 3 ;
const integer Judy::STRING_TO_INT = 4 ;
const integer Judy::STRING_TO_MIXED = 5 ;
/* Methods */
public int byCount ( int $nth_index )
public Judy __construct ( int $judy_type )
public int count ([ int $index_start = 0 [, int $index_end = -1 ]] )
public void __destruct ( void )
public mixed first ([ mixed $index ] )
public int firstEmpty ([ mixed $index = 0 ] )
public int free ( void )
public int getType ( void )
public void last ([ string $index ] )
public int lastEmpty ([ int $index = -1 ] )
public int memoryUsage ( void )
public mixed next ( mixed $index )
public int nextEmpty ( int $index )
public bool offsetExists ( mixed $offset )
public mixed offsetGet ( mixed $offset )
public bool offsetSet ( mixed $offset , mixed $value )
public bool offsetUnset ( mixed $offset )
public mixed prev ( mixed $index )
public int prevEmpty ( mixed $index )
public void size ( void )
}

Constantes pré-definidas

Judy Node Types

Judy::BITSET

Define the Judy Array as a Bitset with keys as Integer and Values as a Boolean

Judy::INT_TO_INT

Define the Judy Array with key/values as Integer, and Integer only.

Judy::INT_TO_MIXED

Define the Judy Array with keys as Integer and Values of any type.

Judy::STRING_TO_INT

Define the Judy Array with keys as a String and Values as Integer, and Integer only.

Judy::STRING_TO_MIXED

Define the Judy Array with keys as a String and Values of any type.

Índice

  • Judy::byCount — Locate the Nth index present in the Judy array
  • Judy::__construct — Construct a new Judy object
  • Judy::count — Count the number of elements in the Judy array
  • Judy::__destruct — Destruct a Judy object
  • Judy::first — Search for the first index in the Judy array
  • Judy::firstEmpty — Search for the first absent index in the Judy array
  • Judy::free — Free the entire Judy array
  • Judy::getType — Return the type of the current Judy array
  • Judy::last — Search for the last index in the Judy array
  • Judy::lastEmpty — Search for the last absent index in the Judy array
  • Judy::memoryUsage — Return the memory used by the Judy array
  • Judy::next — Search for the next index in the Judy array
  • Judy::nextEmpty — Search for the next absent index in the Judy array
  • Judy::offsetExists — Whether a offset exists
  • Judy::offsetGet — Offset to retrieve
  • Judy::offsetSet — Offset to set
  • Judy::offsetUnset — Offset to unset
  • Judy::prev — Search for the previous index in the Judy array
  • Judy::prevEmpty — Search for the previous absent index in the Judy array
  • Judy::size — Return the size of the current Judy array
Tipos Resource
Judy::byCount
Judy


Locate the Nth index present in the Judy array

Judy
Judy::__construct
Judy
PHP Manual

Judy::byCount

(PECL judy >= 0.1.1)

Judy::byCount — Locate the Nth index present in the Judy array

Descrição

public int Judy::byCount ( int $nth_index )

Locate the Nth index present in the Judy array.

Parâmetros

nth_index

Nth index to return. If nth_index equal 1, then it will return the first index in the array.

Valor Retornado

Return the index at the given Nth position.

Judy
Judy::__construct
Judy


Construct a new Judy object

Judy::byCount
Judy::count
Judy
PHP Manual

Judy::__construct

(PECL judy >= 0.1.1)

Judy::__construct — Construct a new Judy object

Descrição

public Judy Judy::__construct ( int $judy_type )

Construct a new Judy object. A Judy object can be accessed like a PHP Array.

Parâmetros

judy_type

The Judy type to be used.

Valor Retornado

Return the new Judy instance.

Judy::byCount
Judy::count
Judy


Count the number of elements in the Judy array

Judy::__construct
Judy::__destruct
Judy
PHP Manual

Judy::count

(PECL judy >= 0.1.1)

Judy::count — Count the number of elements in the Judy array

Descrição

public int Judy::count ([ int $index_start = 0 [, int $index_end = -1 ]] )

Count the number of elements in the Judy array.

Parâmetros

index_start

Start counting from the given index. Default is first index.

index_end

Stop counting when reaching this index. Default is last index.

Valor Retornado

Return the number of elements.

Judy::__construct
Judy::__destruct
Judy


Destruct a Judy object

Judy::count
Judy::first
Judy
PHP Manual

Judy::__destruct

(PECL judy >= 0.1.1)

Judy::__destruct — Destruct a Judy object

Descrição

public void Judy::__destruct ( void )

Destruct a Judy object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Judy::count
Judy::first
Judy


Search for the first index in the Judy array

Judy::__destruct
Judy::firstEmpty
Judy
PHP Manual

Judy::first

(PECL judy >= 0.1.1)

Judy::first — Search for the first index in the Judy array

Descrição

public mixed Judy::first ([ mixed $index ] )

Search (inclusive) for the first index present that is equal to or greater than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::__destruct
Judy::firstEmpty
Judy


Search for the first absent index in the Judy array

Judy::first
Judy::free
Judy
PHP Manual

Judy::firstEmpty

(PECL judy >= 0.1.1)

Judy::firstEmpty — Search for the first absent index in the Judy array

Descrição

public int Judy::firstEmpty ([ mixed $index = 0 ] )

Search (inclusive) for the first absent index that is equal to or greater than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::first
Judy::free
Judy


Free the entire Judy array

Judy::firstEmpty
Judy::getType
Judy
PHP Manual

Judy::free

(PECL judy >= 0.1.1)

Judy::free — Free the entire Judy array

Descrição

public int Judy::free ( void )

Free the entire Judy array.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Judy::firstEmpty
Judy::getType
Judy


Return the type of the current Judy array

Judy::free
Judy::last
Judy
PHP Manual

Judy::getType

(PECL judy >= 0.1.1)

Judy::getType — Return the type of the current Judy array

Descrição

public int Judy::getType ( void )

Return an integer corresponding to the Judy type of the current object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return an integer corresponding to a Judy type.

Judy::free
Judy::last
Judy


Search for the last index in the Judy array

Judy::getType
Judy::lastEmpty
Judy
PHP Manual

Judy::last

(PECL judy >= 0.1.1)

Judy::last — Search for the last index in the Judy array

Descrição

public void Judy::last ([ string $index ] )

Search (inclusive) for the last index present that is equal to or less than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::getType
Judy::lastEmpty
Judy


Search for the last absent index in the Judy array

Judy::last
Judy::memoryUsage
Judy
PHP Manual

Judy::lastEmpty

(PECL judy >= 0.1.1)

Judy::lastEmpty — Search for the last absent index in the Judy array

Descrição

public int Judy::lastEmpty ([ int $index = -1 ] )

Search (inclusive) for the last absent index that is equal to or less than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::last
Judy::memoryUsage
Judy


Return the memory used by the Judy array

Judy::lastEmpty
Judy::next
Judy
PHP Manual

Judy::memoryUsage

(PECL judy >= 0.1.1)

Judy::memoryUsage — Return the memory used by the Judy array

Descrição

public int Judy::memoryUsage ( void )

Return the memory used by the Judy array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return the memory used in bytes.

Judy::lastEmpty
Judy::next
Judy


Search for the next index in the Judy array

Judy::memoryUsage
Judy::nextEmpty
Judy
PHP Manual

Judy::next

(PECL judy >= 0.1.1)

Judy::next — Search for the next index in the Judy array

Descrição

public mixed Judy::next ( mixed $index )

Search (exclusive) for the next index present that is greater than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::memoryUsage
Judy::nextEmpty
Judy


Search for the next absent index in the Judy array

Judy::next
Judy::offsetExists
Judy
PHP Manual

Judy::nextEmpty

(PECL judy >= 0.1.1)

Judy::nextEmpty — Search for the next absent index in the Judy array

Descrição

public int Judy::nextEmpty ( int $index )

Search (exclusive) for the next absent index that is greater than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::next
Judy::offsetExists
Judy


Whether a offset exists

Judy::nextEmpty
Judy::offsetGet
Judy
PHP Manual

Judy::offsetExists

(PECL judy >= 0.1.1)

Judy::offsetExists — Whether a offset exists

Descrição

public bool Judy::offsetExists ( mixed $offset )

Whether or not an offset exists.

Parâmetros

offset

An offset to check for.

Valor Retornado

Returns TRUE on success or FALSE on failure.

Judy::nextEmpty
Judy::offsetGet
Judy


Offset to retrieve

Judy::offsetExists
Judy::offsetSet
Judy
PHP Manual

Judy::offsetGet

(PECL judy >= 0.1.1)

Judy::offsetGet — Offset to retrieve

Descrição

public mixed Judy::offsetGet ( mixed $offset )

Returns the value at specified offset.

Parâmetros

offset

The offset to retrieve.

Valor Retornado

Can return all value types.

Judy::offsetExists
Judy::offsetSet
Judy


Offset to set

Judy::offsetGet
Judy::offsetUnset
Judy
PHP Manual

Judy::offsetSet

(PECL judy >= 0.1.1)

Judy::offsetSet — Offset to set

Descrição

public bool Judy::offsetSet ( mixed $offset , mixed $value )

Assigns a value to the specified offset.

Parâmetros

offset

The offset to assign the value to.

value

The value to set.

Valor Retornado

No value is returned.

Judy::offsetGet
Judy::offsetUnset
Judy


Offset to unset

Judy::offsetSet
Judy::prev
Judy
PHP Manual

Judy::offsetUnset

(PECL judy >= 0.1.1)

Judy::offsetUnset — Offset to unset

Descrição

public bool Judy::offsetUnset ( mixed $offset )

Unsets an offset.

Parâmetros

offset

The offset to unset.

Valor Retornado

No value is returned.

Judy::offsetSet
Judy::prev
Judy


Search for the previous index in the Judy array

Judy::offsetUnset
Judy::prevEmpty
Judy
PHP Manual

Judy::prev

(PECL judy >= 0.1.1)

Judy::prev — Search for the previous index in the Judy array

Descrição

public mixed Judy::prev ( mixed $index )

Search (exclusive) for the previous index present that is less than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::offsetUnset
Judy::prevEmpty
Judy


Search for the previous absent index in the Judy array

Judy::prev
Judy::size
Judy
PHP Manual

Judy::prevEmpty

(PECL judy >= 0.1.1)

Judy::prevEmpty — Search for the previous absent index in the Judy array

Descrição

public int Judy::prevEmpty ( mixed $index )

Search (exclusive) for the previous index absent that is less than the passed Index.

Parâmetros

index

The index can be an integer or a string corresponding to the index where to start the search.

Valor Retornado

Return the corresponding index in the array.

Judy::prev
Judy::size
Judy


Return the size of the current Judy array

Judy::prevEmpty
Judy Funções
Judy
PHP Manual

Judy::size

(PECL judy >= 0.1.1)

Judy::size — Return the size of the current Judy array

Descrição

public void Judy::size ( void )

This method is an alias of Judy::count.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return an integer.

Judy::prevEmpty
Judy Funções
Judy


Judy Funções

Índice

  • judy_type — Return the type of a Judy array
  • judy_version — Return or print the current PHP Judy version
Judy::size
judy_type
Judy


Return the type of a Judy array

Judy Funções
judy_version
Judy Funções
PHP Manual

judy_type

(PECL judy >= 0.1.1)

judy_type — Return the type of a Judy array

Descrição

int judy_type ( Judy $array )

judy_type() return an integer corresponding to the Judy type of the specified Judy array.

Parâmetros

array

The Judy Array to test.

Valor Retornado

Return an integer corresponding to a Judy type.

Judy Funções
judy_version
Judy Funções


Return or print the current PHP Judy version

judy_type
JSON
Judy Funções
PHP Manual

judy_version

(PECL judy >= 0.1.1)

judy_version — Return or print the current PHP Judy version

Descrição

string judy_version ( void )

Return a string of the PHP Judy version. If the return value is not used, the string will be printed.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Return a string of the PHP Judy version.

judy_type
JSON
Judy Funções


JavaScript Object Notation

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da JSON
    • json_decode — Decodifica uma string JSON
    • json_encode — Retorna a representação JSON de um valor
    • json_last_error — Returns the last error occurred
judy_version
Introdução
Outras Básicas Extensões


Introdução

Esta extensão implementa o formato de troca de dados » JavaScript Object Notation (JSON). A decodificação é feita por um parser baseado no JSON_checker de Douglas Crockford.

JSON
Instalação/Configuração
JSON


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
JSON


Dependências

No PHP 5.2.0, a extensão JSON foi empacotada e compilada por padrão.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/json

Instalação/Configuração
Instalação
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da JSON
JSON


Funções da JSON

Índice

  • json_decode — Decodifica uma string JSON
  • json_encode — Retorna a representação JSON de um valor
  • json_last_error — Returns the last error occurred
Constantes pré-definidas
json_decode
JSON


Decodifica uma string JSON

Funções da JSON
json_encode
Funções da JSON
PHP Manual

json_decode

(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

json_decode — Decodifica uma string JSON

Descrição

mixed json_decode ( string $json [, bool $assoc ] )

Analisa a string codificada JSON e converte-a em uma variável do PHP.

Parâmetros

json

A string json a ser decodificada.

assoc

Quando TRUE, o object retornado será convertido em array associativo.

Valor Retornado

Retorna um object ou um array associativo se o parâmetro opcional assoc é TRUE.

Exemplos

Exemplo #1 json_decode() exemplos

<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';

var_dump(json_decode($json));
var_dump(json_decode($json, true));

?>

O exemplo acima irá imprimir:

object(stdClass)#1 (5) {
    ["a"] => int(1)
    ["b"] => int(2)
    ["c"] => int(3)
    ["d"] => int(4)
    ["e"] => int(5)
}

array(5) {
    ["a"] => int(1)
    ["b"] => int(2)
    ["c"] => int(3)
    ["d"] => int(4)
    ["e"] => int(5)
}

Exemplo #2 Um outro exemplo

<?php

$json = '{"foo-bar": 12345}';

$obj = json_decode($json);
print $obj->{'foo-bar'}; // 12345

?>

Notas

Cuidado

Esta função irá retorna false se o dado codificado JSON possui mais que 127 elementos.

Histórico

Versão | Descrição
5.2.3 | O limite de aninhamento foi aumentado de 20 para 128

Veja Também

  • json_encode() - Retorna a representação JSON de um valor

Funções da JSON
json_encode
Funções da JSON


Retorna a representação JSON de um valor

json_decode
json_last_error
Funções da JSON
PHP Manual

json_encode

(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

json_encode — Retorna a representação JSON de um valor

Descrição

string json_encode ( mixed $value )

Retorna a string contendo a representação JSON de um value.

Parâmetros

value

O value a ser codificado. Pode ser qualquer tipo, exceto um resource.

Esta função funciona somente com dados com codificação UTF-8.

Valor Retornado

Retorna uma string JSON codificada em caso de sucesso.

Histórico

Versão | Descrição
5.2.1 | Adicionado suporte a tipos básicos JSON

Exemplos

Exemplo #1 Um exemplo da json_encode()

<?php
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);

echo json_encode($arr);
?>

O exemplo acima irá imprimir:

{"a":1,"b":2,"c":3,"d":4,"e":5}

Veja Também

  • json_decode() - Decodifica uma string JSON

json_decode
json_last_error
Funções da JSON


Returns the last error occurred

json_encode
Misc.
Funções da JSON
PHP Manual

json_last_error

(PHP 5 >= 5.3.0)

json_last_error — Returns the last error occurred

Descrição

int json_last_error ( void )

Returns the last error (if any) occurred by last JSON parsing.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer, the value can be one of the following constants:

JSON error codes
Constant | Meaning | Availability
JSON_ERROR_NONE | No error has occurred |
JSON_ERROR_DEPTH | The maximum stack depth has been exceeded |
JSON_ERROR_CTRL_CHAR | Control character error, possibly incorrectly encoded |
JSON_ERROR_STATE_MISMATCH | Invalid or malformed JSON |
JSON_ERROR_SYNTAX | Syntax error |
JSON_ERROR_UTF8 | Malformed UTF-8 characters, possibly incorrectly encoded | PHP 5.3.3

Exemplos

Exemplo #1 json_last_error() example

<?php
// A valid json string
$json[] = '{"Organization": "PHP Documentation Team"}';

// An invalid json string which will cause an syntax
// error, in this case we used ' instead of " for quotation
$json[] = "{'Organization': 'PHP Documentation Team'}";

foreach($json as $string)
{
    echo 'Decoding: ' . $string;
    json_decode($string);

    switch(json_last_error())
    {
        case JSON_ERROR_DEPTH:
            echo ' - Maximum stack depth exceeded';
        break;
        case JSON_ERROR_CTRL_CHAR:
            echo ' - Unexpected control character found';
        break;
        case JSON_ERROR_SYNTAX:
            echo ' - Syntax error, malformed JSON';
        break;
        case JSON_ERROR_NONE:
            echo ' - No errors';
        break;
    }

    echo PHP_EOL;
}
?>

O exemplo acima irá imprimir:

Decoding: {"Organization": "PHP Documentation Team"} - No errors
Decoding: {'Organization': 'PHP Documentation Team'} - Syntax error, malformed JSON

Veja Também

  • json_decode() - Decodifica uma string JSON

json_encode
Misc.
Funções da JSON


Funções Miscelâneas

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Misc. Funções
    • connection_aborted — Verifica se o cliente está desconectado
    • connection_status — Retorna o status da conexão
    • connection_timeout — Verifica se o script ultrapassou o limite de tempo
    • constant — Retorna o valor de uma constante
    • define — Define uma constante
    • defined — Confere se uma constante existe
    • die — Equivalente a exit
    • eval — Executa uma string como código PHP
    • exit — Mostra uma mensagem e termina o script atual
    • get_browser — Diz o que o browser do usuário pode fazer
    • __halt_compiler — Halts the compiler execution
    • highlight_file — Destaca a sintaxe de um arquivo
    • highlight_string — Destaque da sintaxe de uma string
    • ignore_user_abort — Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão
    • pack — Pack data into binary string
    • php_check_syntax — Check the PHP syntax of (and execute) the specified file
    • php_strip_whitespace — Retorna o código com comentários e espaços em branco removidos
    • show_source — Sinônimo de highlight_file
    • sleep — Atrasa a execução do script
    • sys_getloadavg — Gets system load average
    • time_nanosleep — Atrasa para um número de segundos e nanosegundos
    • time_sleep_until — Paralisa o script até um tempo especificado
    • uniqid — Gera um ID unico
    • unpack — Unpack data from binary string
    • usleep — Atrasa a execução em milionésimos de segundo
json_last_error
Introdução
Outras Básicas Extensões


Introdução

Estas funções foram colocadas aqui porque pareciam não caber em nenhuma outra categoria.

Misc.
Instalação/Configuração
Misc.


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Misc.


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração
Nome | Padrão | Modificável | Changelog
ignore_user_abort | "0" | PHP_INI_ALL |
highlight.string | #DD0000 | PHP_INI_ALL |
highlight.comment | #FF9900 | PHP_INI_ALL |
highlight.keyword | #007700 | PHP_INI_ALL |
highlight.bg | #FFFFFF | PHP_INI_ALL | Removido no PHP 6.0.0.
highlight.default | #0000BB | PHP_INI_ALL |
highlight.html | #000000 | PHP_INI_ALL |
browscap | NULL | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

ignore_user_abort boolean

FALSE por padrão. Se modificado para TRUE os scripts terminaram assim que o cliente tiver abortado sua conexão.

Veja também ignore_user_abort().

highlight.bg string
highlight.comment string
highlight.default string
highlight.html string
highlight.keyword string
highlight.string string

Cores para o modo de destaque da sintaxe. Qualquer coisa aceitável em <font color="??????"> deve funcionar.

browscap string

Nome (ex: browscap.ini) e localização do arquivo com as capacidades do browser. Veja também get_browser().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CONNECTION_ABORTED (integer)
CONNECTION_NORMAL (integer)
CONNECTION_TIMEOUT (integer)
__COMPILER_HALT_OFFSET__ (integer)
Added in PHP 5.1.
Tipos Resource
Misc. Funções
Misc.


Misc. Funções

Índice

  • connection_aborted — Verifica se o cliente está desconectado
  • connection_status — Retorna o status da conexão
  • connection_timeout — Verifica se o script ultrapassou o limite de tempo
  • constant — Retorna o valor de uma constante
  • define — Define uma constante
  • defined — Confere se uma constante existe
  • die — Equivalente a exit
  • eval — Executa uma string como código PHP
  • exit — Mostra uma mensagem e termina o script atual
  • get_browser — Diz o que o browser do usuário pode fazer
  • __halt_compiler — Halts the compiler execution
  • highlight_file — Destaca a sintaxe de um arquivo
  • highlight_string — Destaque da sintaxe de uma string
  • ignore_user_abort — Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão
  • pack — Pack data into binary string
  • php_check_syntax — Check the PHP syntax of (and execute) the specified file
  • php_strip_whitespace — Retorna o código com comentários e espaços em branco removidos
  • show_source — Sinônimo de highlight_file
  • sleep — Atrasa a execução do script
  • sys_getloadavg — Gets system load average
  • time_nanosleep — Atrasa para um número de segundos e nanosegundos
  • time_sleep_until — Paralisa o script até um tempo especificado
  • uniqid — Gera um ID unico
  • unpack — Unpack data from binary string
  • usleep — Atrasa a execução em milionésimos de segundo
Constantes pré-definidas
connection_aborted
Misc.


Verifica se o cliente está desconectado

Misc. Funções
connection_status
Misc. Funções
PHP Manual

connection_aborted

(PHP 4, PHP 5)

connection_aborted — Verifica se o cliente está desconectado

Descrição

int connection_aborted ( void )

Verifica se o cliente está desconectado.

Valor Retornado

Retorna 1 se o cliente está desconectado, 0 caso contrário.

Veja Também

  • connection_status() - Retorna o status da conexão
  • ignore_user_abort() - Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão
  • Tratamento de conexões para um descrição completa sobre tratamento de conexões no PHP.

Misc. Funções
connection_status
Misc. Funções


Retorna o status da conexão

connection_aborted
connection_timeout
Misc. Funções
PHP Manual

connection_status

(PHP 4, PHP 5)

connection_status — Retorna o status da conexão

Descrição

int connection_status ( void )

Veja também connection_aborted() e ignore_user_abort().

Valor Retornado

Retorna o bitfield do status da conexão, que pode ser usado com as constantes CONNECTION_XXX para determinar o status da conexão.

Veja Também

  • connection_aborted() - Verifica se o cliente está desconectado
  • ignore_user_abort() - Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão
  • Manuseamento de Conexão para uma descrição completa de manuseamento de conexão no PHP.

connection_aborted
connection_timeout
Misc. Funções


Verifica se o script ultrapassou o limite de tempo

connection_status
constant
Misc. Funções
PHP Manual

connection_timeout

(PHP 4 <= 4.0.4)

connection_timeout — Verifica se o script ultrapassou o limite de tempo

Descrição

int connection_timeout ( void )

Determina se o script ultrapassou o limite de tempo.

Valor Retornado

Retorna 1 se o script ultrapassou o limite de tempo, 0 caso contrário.

Notas

Aviso

Obsoleta

Esta função é obsoleta, e não existe mais desde o PHP 4.0.5.

Veja Também

  • connection_status() - Retorna o status da conexão
  • Tratamento de conexões para uma descrição completa sobre tratamento de conexões no PHP.

connection_status
constant
Misc. Funções


Retorna o valor de uma constante

connection_timeout
define
Misc. Funções
PHP Manual

constant

(PHP 4 >= 4.0.4, PHP 5)

constant — Retorna o valor de uma constante

Descrição

mixed constant ( string $name )

Retorna o valor de uma constante indicada pelo parâmetro name.

A função constant() é útil se você precisa pegar o valor de uma constante, mas não sabe o seu nome. I.e. esta guardada em uma variável ou é retornada por uma função.

Esta função funciona também com constantes de classes.

Parâmetros

name

O nome da constante.

Valor Retornado

Retorna o valor da constante, ou NULL se o constante não é definida.

Exemplos

Exemplo #1 Exemplo da constant()

<?php
define("MAXSIZE", 100);
echo MAXSIZE;
echo constant("MAXSIZE"); // mesma coisa que a linha anterior

interface bar {
    const test = 'foobar!';
}

class foo {
    const test = 'foobar!';
}

$const = 'test';

var_dump(constant('bar::'. $const)); // string(7) "foobar!"
var_dump(constant('foo::'. $const)); // string(7) "foobar!"

?>

Veja Também

  • define() - Define uma constante
  • defined() - Confere se uma constante existe
  • The section on Constants

connection_timeout
define
Misc. Funções


Define uma constante

constant
defined
Misc. Funções
PHP Manual

define

(PHP 4, PHP 5)

define — Define uma constante

Descrição

bool define ( string $name , mixed $value [, bool $case_insensitive ] )

Define uma constante.

Parâmetros

name

O nome da constante.

value

O valor da constante; somente escalar e valores null são permitidos. Valores escalares são integer, float, string ou boolean.

case_insensitive

Se definido para TRUE, a constante será definida case-insensitive. O comportamento padrão é case-sensitive; i.e. CONSTANT e Constant representam valores diferentes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Definindo Constantes

<?php
define("CONSTANTE", "Alô Mundo.");
echo CONSTANTE; // mostra "Alô Mundo."
echo Constante; // mostra "Constante" e dá um aviso.

define("GREETING", "Alô Você.",TRUE);
echo GREETING; // mostra "Alô você."
echo Greeting; // mostra "Alô você."

?>

Veja Também

  • defined() - Confere se uma constante existe
  • constant() - Retorna o valor de uma constante
  • The section on Constants

constant
defined
Misc. Funções


Confere se uma constante existe

define
die
Misc. Funções
PHP Manual

defined

(PHP 4, PHP 5)

defined — Confere se uma constante existe

Descrição

bool defined ( string $name )

Verifica se uma dada constante existe e é definida.

Nota:

Se você quer ver se uma variável existe, use isset() como defined() aplica-se somente para constants. Se você quer ver se uma função existe, use function_exists().

Parâmetros

name

O nome da constante.

Valor Retornado

Retorna TRUE se o nome da constante dado em name foi definida, FALSE caso contrário.

Exemplos

Exemplo #1 Conferindo Constantes

<?php
// Note que deve estar entre apostrofros, este
// exemplo esta conferindo se existe uma constante com o nome de CONSTANT
if (defined('CONSTANT')){
    echo CONSTANT;
    }
?>

Veja Também

  • define() - Define uma constante
  • constant() - Retorna o valor de uma constante
  • get_defined_constants() - Retorna uma matriz associativa com os nomes de todas as constantes e seus valores
  • function_exists() - Retorna TRUE se a função dada está definida
  • The section on Constants

define
die
Misc. Funções


Equivalente a exit

defined
eval
Misc. Funções
PHP Manual

die

(PHP 4, PHP 5)

die — Equivalente a exit()

Descrição

Este construtor da linguagem é equivalente a exit().

Parâmetros

Esta função não contém parâmetros.

defined
eval
Misc. Funções


Executa uma string como código PHP

die
exit
Misc. Funções
PHP Manual

eval

(PHP 4, PHP 5)

eval — Executa uma string como código PHP

Descrição

mixed eval ( string $code_str )

A função eval() executa a string dada no parâmetro code_str como código PHP. Entre outras coisas, isto pode ser útil para guardar código em um campo de texto de um banco de dados para execução posterior.

Há alguns fatores para lembrar quando usar eval(). Lembre-se que a string passada deve ser código PHP valido, incluindo coisas como terminar os comandos com ponto-e-vírgula assim o compilador não morre uma linha após eval(), escapar as coisas propriamente em code_str.

Também se lembre que as variáveis que tenham seus valores em eval() irão reter estes valores para o resto do script.

Um comando return irá terminar a execução do script imediatamente No PHP 4, eval() retorna NULL a menos que return() seja chamado no código executado, caso no qual o valor passado para return() é retornado. No PHP 3, eval() não retorna um valor.

Exemplo #1 Exemplo eval()

<?php
$string = 'taça';
$name = 'café';
$str = 'Esta é uma $string com o meu $name nela.';
echo $str. "\n";
eval("\$str = \"$str\";");
echo $str . "\n";
?>

O exemplo acima irá mostrar

Esta é uma $string com o meu $name nela.
Esta é uma taça com o meu café nela.

Dica

Como toda saída é normalmente enviada direto para o browser, as Funções de Controle de Output podem ser usadas para capturar o resultado e guardá-lo em uma string (por exemplo).

Veja também call_user_func().

die
exit
Misc. Funções


Mostra uma mensagem e termina o script atual

eval
get_browser
Misc. Funções
PHP Manual

exit

(PHP 4, PHP 5)

exit — Mostra uma mensagem e termina o script atual

Descrição

void exit ([ string $status ] )
void exit ( int $status )

Nota: Esta não é uma função real, mas uma construção da linguagem.

A função exit() termina a execução do script. Ela mostra o parâmetro status justamente antes de sair.

Se status é um integer, este valor será usado como estado se saída. Estados de saída deve, estar no intervalo de 0 a 254, o estado de saída 255 é reservado pelo php e não deve ser usado. O estado 0 é usado para terminar o programa de maneira bem sucedida.

Exemplo #1 Exemplo exit()

<?php

$filename = '/caminho/para/arquivo';
$file = fopen ($filename, 'r')
    or exit("Não pude abrir o arquivo ($filename)");

?>

Exemplo #2 Exemplo exit() com código de estado

<?php

//sai normalmente
exit;
exit();
exit(0);

//sai com um código de erro
exit(1);
exit(0376); //octal

?>

Nota: A função die() é um apelido para a função exit().

Veja também: register_shutdown_function().

eval
get_browser
Misc. Funções


Diz o que o browser do usuário pode fazer

exit
__halt_compiler
Misc. Funções
PHP Manual

get_browser

(PHP 4, PHP 5)

get_browser — Diz o que o browser do usuário pode fazer

Descrição

object get_browser ([ string $user_agent ] )

get_browser() tenta determinar as capacidades do browser do usuário. Isto é feito procurando a informação do browser no arquivo browscap.ini. Por padrão, o valor de $_SERVER["HTTP_USER_AGENT"] é usado; em qualquer caso você pode alterar isto (ex., procurar informação de outro browser) passando o parâmetro opcional user_agent para a função get_browser().

A informação é retornada como um objeto, que contém vários elementos com dados representando, por exemplo, os números de versão maior e menor, a string de ID, valores TRUE/FALSE para coisas como frames, JavaScript, e cookies; e assim em diante.

Enquanto browscap.ini contém informações sobre vários browser, ele precisa de atualizações para manter o banco de dados atual. O formato do arquivo é auto-explicatório.

O exemplo a seguir irá mostrar uma possível lista de toda a informação disponível sobre o browser do usuário.

Exemplo #1 Exemplo get_browser()

<?php
echo $_SERVER['HTTP_USER_AGENT'] . "<hr />\n";
$browser = get_browser();
foreach ($browser as $name => $value) {
    echo "<b>$name</b> $value <br />\n";
}
?>

A saída do script acima deve ser algo como isto:

Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)<hr />
<b>browser_name_pattern:</b> Mozilla/4\.5.*<br />
<b>parent:</b> Netscape 4.0<br />
<b>platform:</b> Linux<br />
<b>majorver:</b> 4<br />
<b>minorver:</b> 5<br />
<b>browser:</b> Netscape<br />
<b>version:</b> 4<br />
<b>frames:</b> 1<br />
<b>tables:</b> 1<br />
<b>cookies:</b> 1<br />
<b>backgroundsounds:</b> <br />
<b>vbscript:</b> <br />
<b>javascript:</b> 1<br />
<b>javaapplets:</b> 1<br />
<b>activexcontrols:</b> <br />
<b>beta:</b> <br />
<b>crawler:</b> <br />
<b>authenticodeupdate:</b> <br />
<b>msn:</b> <br />

Para que isto funcione, sua configuração do browscap no php.ini deve apontar para o local correto do arquivo browscap.ini no seu sistema. browscap.ini não vem com o PHP mas você deve encontrar uma versão atualizada » do arquivo browscap.ini. Por padrão,a diretiva browscap esta comentada.

Os valores de cookies simplesmente indicam que que o browser é capaz de receber cookies e não indica que o usuário permite ao browser receber ou não cookies. O unico meio de testar se os cookies são aceitos é criar um com setcookie(), recarregar, e conferir o valor.

Nota: Em versões anteriores ao PHP 4.0.6, você tem que passar o user agent via o parâmetro opcional user_agent se a diretiva do PHP register_globals esta em off. Neste caso, você irá passar $HTTP_SERVER_VARS['HTTP_USER_AGENT'].

exit
__halt_compiler
Misc. Funções


Halts the compiler execution

get_browser
highlight_file
Misc. Funções
PHP Manual

__halt_compiler

(PHP 5 >= 5.1.0)

__halt_compiler — Halts the compiler execution

Descrição

void __halt_compiler ( void )

Halts the execution of the compiler. This can be useful to embed data in PHP scripts, like the installation files.

Byte position of the data start can be determined by the __COMPILER_HALT_OFFSET__ constant which is defined only if there is a __halt_compiler() presented in the file.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 A __halt_compiler() example

<?php

// open this file
$fp = fopen(__FILE__, 'r');

// seek file pointer to data
fseek($fp, __COMPILER_HALT_OFFSET__);

// and output it
var_dump(stream_get_contents($fp));

// the end of the script execution
__halt_compiler(); the installation data (eg. tar, gz, PHP, etc.)

Notas

Nota:

__halt_compiler() can only be used from the outermost scope.

get_browser
highlight_file
Misc. Funções


Destaca a sintaxe de um arquivo

__halt_compiler
highlight_string
Misc. Funções
PHP Manual

highlight_file

(PHP 4, PHP 5)

highlight_file — Destaca a sintaxe de um arquivo

Descrição

mixed highlight_file ( string $filename [, bool $return ] )

A função highlight_file() mostra uma versão do código contido em filename com a sintaxe destacada usando as cores definidas pelo destacador de sintaxe do PHP.

Se o segundo parâmetro return for TRUE então highlight_file() irá retornar o código como uma string ao invés de mostrá-lo. Se o segundo parâmetro não for TRUE então highlight_file() irá retornar TRUE se funcionar, FALSE em caso de falha.

Nota: O parâmetro return tornou-se disponível no PHP 4.2.0. Antes disso é usado como o padrão, que é FALSE.

Cuidado

Deve se tomar cuidado quando usar as funções show_source() e highlight_file() para ter certeza que você não irá inadvertidamente revelar informações sensíveis como senhas ou outros tipos de informação que possam criar um risco de segurança em potencial.

Nota: Desde o PHP 4.2.1 esta função também é afetada por safe_mode e open_basedir.

Para configurar uma url que possa fazer o destaque da sintaxe de qualquer script que você passar para ela, nós iremos fazer uso da diretiva "ForceType" no Apache para gerar um bom modelo de URL, e usar a função highlight_file() para mostrar o código com uma boa aparência.

Exemplo #1 Criando uma URL para destaque da sintaxe

No seu httpd.conf você pode adicionar o seguinte:

<Location /source>
    ForceType application/x-httpd-php
</Location>

E então faça um arquivo chamado source e coloque-o no seu diretório raiz do servidor web.

<html>
<head>
<title>Mostrar Fonte</title>
</head>
<body bgcolor="white">
<?php
    $script = getenv ("PATH_TRANSLATED");
    if(!$script) {
       echo "<br><b>ERRO: Necessário o nome do script</b><br>";
    } else {
      if (ereg("(\\.php|\\.inc)$", $script)) {
      echo "<h1>Source of: " . getenv("PATH_INFO") . "</h1>\n<hr />\n";
      highlight_file($script);
      } else {
        echo "<h1>ERRO: Somente PHP ou script de inclusão(.inc) são permitidos</h1>";
      }
    }
    echo "<hr />Processed: " . date("Y/M/d H:i:s", time());
?>
</body>
</html>

Então você pode usar uma URL como a abaixo para mostrar uma versão colorida do script localizado em "/caminho/para/script.php" no seu site web.

http://www.example.com/source/caminho/para/script.php

Veja também highlight_string().

__halt_compiler
highlight_string
Misc. Funções


Destaque da sintaxe de uma string

highlight_file
ignore_user_abort
Misc. Funções
PHP Manual

highlight_string

(PHP 4, PHP 5)

highlight_string — Destaque da sintaxe de uma string

Descrição

mixed highlight_string ( string $str [, bool $return ] )

A função highlight_string() mostra o destaque da sintaxe para o parâmetro str usando as cores definidas para o destacador de sintaxe do PHP.

Se o segundo parâmetro return for TRUE então a função highlight_string() irá retornar o código com a sintaxe destacada ao invés de mostrá-lo. Se o segundo parâmetro não for TRUE então highlight_string() irá retornar TRUE se funcionar, FALSE se ocorrer falha.

Exemplo #1 Exemplo highlight_string()

<?php
highlight_string('<?php phpinfo(); ?>');
?>

O exemplo acima irá mostrar (no PHP 4):

<code><font color="#000000">
<font color="#0000BB">&lt;?php phpinfo</font><font color="#007700">(); </font><font color="#0000BB">?&gt;</font>
</font>
</code>

O exemplo acima irá mostrar (no PHP 5):

<code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php phpinfo</span><span style="color: #007700">(); </span><span style="color: #0000BB">?&gt;</span>
</span>
</code>

Nota: O parâmetro return tornou-se disponível no PHP 4.2.0. Antes disso é usado como o padrão, que é FALSE

Veja também highlight_file().

highlight_file
ignore_user_abort
Misc. Funções


Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão

highlight_string
pack
Misc. Funções
PHP Manual

ignore_user_abort

(PHP 4, PHP 5)

ignore_user_abort — Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão

Descrição

int ignore_user_abort ([ bool $setting ] )

Estabelece se um cliente desconectado causa abortagem da conexão.

Parâmetros

setting

Se não é definido, a função irá somente retorna a configuração atual.

Valor Retornado

Retorna a configuração anterior, como booleano.

Notas

PHP não irá detectar que o usuário tenha abortado a conexão até tentar enviar alguma informação para o cliente. Simplesmente usando um comando echo não é garantido que a informação seja enviada, veja flush().

Veja Também

  • connection_aborted() - Verifica se o cliente está desconectado
  • connection_status() - Retorna o status da conexão
  • Tratamento de conexões para uma descrição completa do tratamento de conexão no PHP.

highlight_string
pack
Misc. Funções


Pack data into binary string

ignore_user_abort
php_check_syntax
Misc. Funções
PHP Manual

pack

(PHP 4, PHP 5)

pack — Pack data into binary string

Descrição

string pack ( string $format [, mixed $args [, mixed $... ]] )

Pack given arguments into binary string according to format.

The idea for this function was taken from Perl and all formatting codes work the same as in Perl. However, there are some formatting codes that are missing such as Perl's "u" format code.

Note that the distinction between signed and unsigned values only affects the function unpack(), where as function pack() gives the same result for signed and unsigned format codes.

Parâmetros

format

The format string consists of format codes followed by an optional repeater argument. The repeater argument can be either an integer value or * for repeating to the end of the input data. For a, A, h, H the repeat count specifies how many characters of one data argument are taken, for @ it is the absolute position where to put the next data, for everything else the repeat count specifies how many data arguments are consumed and packed into the resulting binary string.

Currently implemented formats are:

pack() format characters
Code | Description
a | NUL-padded string
A | SPACE-padded string
h | Hex string, low nibble first
H | Hex string, high nibble first
c | signed char
C | unsigned char
s | signed short (always 16 bit, machine byte order)
S | unsigned short (always 16 bit, machine byte order)
n | unsigned short (always 16 bit, big endian byte order)
v | unsigned short (always 16 bit, little endian byte order)
i | signed integer (machine dependent size and byte order)
I | unsigned integer (machine dependent size and byte order)
l | signed long (always 32 bit, machine byte order)
L | unsigned long (always 32 bit, machine byte order)
N | unsigned long (always 32 bit, big endian byte order)
V | unsigned long (always 32 bit, little endian byte order)
f | float (machine dependent size and representation)
d | double (machine dependent size and representation)
x | NUL byte
X | Back up one byte
@ NUL-fill to absolute position

args

Valor Retornado

Returns a binary string containing data.

Exemplos

Exemplo #1 pack() example

<?php
$binarydata = pack("nvc*", 0x1234, 0x5678, 65, 66);
?>

The resulting binary string will be 6 bytes long and contain the byte sequence 0x12, 0x34, 0x78, 0x56, 0x41, 0x42.

Notas

Cuidado

Note that PHP internally stores integer values as signed values of a machine-dependent size (C type long). Integer literals and operations that yield numbers outside the bounds of the integer type will be stored as float. When packing these floats as integers, they are first cast into the integer type. This may or may not result in the desired byte pattern.

The most relevant case is when packing unsigned numbers that would be representable with the integer type if it were unsigned. In systems where the integer type has a 32-bit size, the cast usually results in the same byte pattern as if the integer were unsigned (although this relies on implementation-defined unsigned to signed conversions, as per the C standard). In systems where the integer type has 64-bit size, the float most likely does not have a mantissa large enough to hold the value without loss of precision. If those systems also have a native 64-bit C int type (most UNIX-like systems don't), the only way to use the I pack format in the upper range is to create integer negative values with the same byte representation as the desired unsigned value.

Veja Também

  • unpack() - Unpack data from binary string

ignore_user_abort
php_check_syntax
Misc. Funções


Check the PHP syntax of (and execute) the specified file

pack
php_strip_whitespace
Misc. Funções
PHP Manual

php_check_syntax

(PHP 5 <= 5.0.4)

php_check_syntax — Check the PHP syntax of (and execute) the specified file

Descrição

bool php_check_syntax ( string $filename [, string &$error_message ] )

Performs a syntax (lint) check on the specified filename testing for scripting errors.

This is similar to using php -l from the commandline except that this function will execute (but not output) the checked filename.

For example, if a function is defined in filename, this defined function will be available to the file that executed php_check_syntax(), but output from filename will be suppressed.

Nota:

For technical reasons, this function is deprecated and removed from PHP. Instead, use php -l somefile.php from the commandline.

Parâmetros

filename

The name of the file being checked.

error_message

If the error_message parameter is used, it will contain the error message generated by the syntax check. error_message is passed by reference.

Valor Retornado

Returns TRUE if the lint check passed, and FALSE if the link check failed or if filename cannot be opened.

Histórico

Versão | Descrição
5.0.5 | This function was removed from PHP.
5.0.3 | Calling exit() after php_check_syntax() resulted in a Segfault.
5.0.1 | error_message is passed by reference.

Exemplos

php -l somefile.php

O exemplo acima irá imprimir algo similar a:

PHP Parse error: unexpected T_STRING in /tmp/somefile.php on line 81

Veja Também

  • include() - include
  • is_readable() - Diz se o arquivo pode ser lido

pack
php_strip_whitespace
Misc. Funções


Retorna o código com comentários e espaços em branco removidos

php_check_syntax
show_source
Misc. Funções
PHP Manual

php_strip_whitespace

(PHP 5)

php_strip_whitespace — Retorna o código com comentários e espaços em branco removidos

Descrição

string php_strip_whitespace ( string $filename )

Retorna o código-fonte do PHP do arquivo filename com comentários PHP e espaços em branco removidos. Isto pode ser útil para determina a quantidade atual de códigos em seu script comparado com a quantidade de comentários. Similar ao uso de php -w pela linha de comando.

Parâmetros

filename

Caminho para o arquivo PHP.

Valor Retornado

O código-fonte filtrado será retornado em caso de sucesso, ou uma string vazia em falha.

Nota:

Esta função funciona como descrito do PHP 5.0.1. Antes ela poderia retornar somente uma string vazia. Para mais informação sobre este bug e seu comportamento, veja o bug report » #29606.

Exemplos

Exemplo #1 Exemplo da php_strip_whitespace()

<?php
// PHP comment here

/*
 * Another PHP comment
 */

echo        php_strip_whitespace(__FILE__);
// Newlines are considered whitespace, and are removed too:
do_nothing();
?>

O exemplo acima irá imprimir:

<?php
 echo php_strip_whitespace(__FILE__); do_nothing(); ?>

Note que comentários sairam, como espaços em branco e newline depois do primeiro comando echo.

php_check_syntax
show_source
Misc. Funções


Sinônimo de highlight_file

php_strip_whitespace
sleep
Misc. Funções
PHP Manual

show_source

(PHP 4, PHP 5)

show_source — Sinônimo de highlight_file()

Descrição

Esta função é um apelido para: highlight_file().

php_strip_whitespace
sleep
Misc. Funções


Atrasa a execução do script

show_source
sys_getloadavg
Misc. Funções
PHP Manual

sleep

(PHP 4, PHP 5)

sleep — Atrasa a execução do script

Descrição

int sleep ( int $seconds )

Atrasa a execução do programa por um dado número de seconds.

Parâmetros

seconds

Tempo de parada em segundos.

Valor Retornado

Retorna zero em sucesso, ou FALSE em erros.

Erros

Se o número especificado de seconds é negativo, esta função irá gerar um E_WARNING.

Exemplos

Exemplo #1 Exemplo da sleep()

<?php
// Hora atual
echo date('h:i:s') . "\n";

// Dorme por 10 segundos
sleep(10);

// Acorde!
echo date('h:i:s') . "\n";
?>

Este exemplo irá mostrar(depois de 10 segundos)

05:31:23
05:31:33

Veja Também

usleep() - Atrasa a execução em milionésimos de segundo, set_time_limit() - Limita o tempo de execução do script

show_source
sys_getloadavg
Misc. Funções


Gets system load average

sleep
time_nanosleep
Misc. Funções
PHP Manual

sys_getloadavg

(PHP 5 >= 5.1.3)

sys_getloadavg — Gets system load average

Descrição

array sys_getloadavg ( void )

Returns three samples representing the average system load (the number of processes in the system run queue) over the last 1, 5 and 15 minutes, respectively.

Valor Retornado

Returns an array with three samples (last 1, 5 and 15 minutes).

Exemplos

Exemplo #1 A sys_getloadavg() example

<?php
$load = sys_getloadavg();
if ($load[0] > 80) {
    header('HTTP/1.1 503 Too busy, try again later');
    die('Server too busy. Please try again later.');
}
?>

Notas

Nota: esta função não é implementada na plataforma Windows

sleep
time_nanosleep
Misc. Funções


Atrasa para um número de segundos e nanosegundos

sys_getloadavg
time_sleep_until
Misc. Funções
PHP Manual

time_nanosleep

(PHP 5)

time_nanosleep — Atrasa para um número de segundos e nanosegundos

Descrição

mixed time_nanosleep ( int $seconds , int $nanoseconds )

Atrasa a execução do programa por um dado número de seconds e nanoseconds.

Parâmetros

seconds

Precisa ser um inteiro positivo.

nanoseconds

Precisa ser um inteiro positivo menor que 1 bilhão.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Se o atraso é interrompido por um sinal, um array associativo irá ser retornado com os componentes:

  • seconds - número de segundos restantes do atraso
  • nanoseconds - número de nanosegundos restante do atraso

Exemplos

Exemplo #1 Exemplo da time_nanosleep()

<?php
// Careful! This won't work as expected if an array is returned
if (time_nanosleep(0, 500000000)) {
    echo "Slept for half a second.\n";
}

// This is better:
if (time_nanosleep(0, 500000000) === true) {
    echo "Slept for half a second.\n";
}

// And this is the best:
$nano = time_nanosleep(2, 100000);

if ($nano === true) {
    echo "Slept for 2 seconds, 100 milliseconds.\n";
} elseif ($nano === false) {
    echo "Sleeping failed.\n";
} elseif (is_array($nano)) {
    $seconds = $nano['seconds'];
    $nanoseconds = $nano['nanoseconds'];
    echo "Interrupted by a signal.\n";
    echo "Time remaining: $seconds seconds, $nanoseconds nanoseconds.";
}
?>

Notas

Nota: esta função não é implementada na plataforma Windows

Veja Também

sleep() - Atrasa a execução do script, usleep() - Atrasa a execução em milionésimos de segundo, set_time_limit() - Limita o tempo de execução do script

sys_getloadavg
time_sleep_until
Misc. Funções


Paralisa o script até um tempo especificado

time_nanosleep
uniqid
Misc. Funções
PHP Manual

time_sleep_until

(PHP 5 >= 5.1.0)

time_sleep_until — Paralisa o script até um tempo especificado

Descrição

bool time_sleep_until ( float $timestamp )

Paralisa o script até o especificado timestamp.

Parâmetros

timestamp

O timestamp quando o script deve voltar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Se o especificado timestamp é do passado, esta função irá gerar um E_WARNING.

Exemplos

Exemplo #1 Um exemplo da time_sleep_until()

<?php

//returns false and generates a warning
var_dump(time_sleep_until(time()-1));

// may only work on faster computers, will sleep up to 0.2 seconds
var_dump(time_sleep_until(time()+0.2));

?>

Notas

Nota: Todos sinais serão enviados depois do script voltar.

Nota: esta função não é implementada na plataforma Windows

Veja Também

  • sleep() - Atrasa a execução do script
  • usleep() - Atrasa a execução em milionésimos de segundo
  • time_nanosleep() - Atrasa para um número de segundos e nanosegundos

time_nanosleep
uniqid
Misc. Funções


Gera um ID unico

time_sleep_until
unpack
Misc. Funções
PHP Manual

uniqid

(PHP 4, PHP 5)

uniqid — Gera um ID unico

Descrição

string uniqid ( string $prefix [, bool $lcg ] )

uniqid() retorna um identificador unico prefixado baseado no tempo atual em milionésimos de segundo. O Prefixo pode ser usado se você gera identificadores em vários servidores simultaneamente pode acontecer de gerar o identificador no mesmo milionésimo de segundo. Prefix pode ter até 114 caracteres.

Se o parâmetro lcg, que é opcional, for TRUE, uniqid() irá adicionar a entropia "LCG combinada" ao final do valor retornado, o que deve fazer o resultado mais unico.

Com o parâmetro prefix vazio, a string retornada terá 13 caracteres. Se o parâmetro lcg for TRUE, terá 23 caracteres.

Nota: O parâmetro lcg somente esta disponivel no PHP 4 e PHP 3.0.13 e posterior.

Se você precisa um identificador unico e pretende dar o seu identificador via rede(ex. cookies de seção), é recomendado que você use algo como

<?php
// sem prefixo
$token = md5(uniqid(""));

// melhor, dificil de adivinhar
$better_token = md5(uniqid(rand(), true));
?>

Isto irá criar um identificador de 32 caracteres(a 128 bit hex number) que é extremamente dificil de prever.

time_sleep_until
unpack
Misc. Funções


Unpack data from binary string

uniqid
usleep
Misc. Funções
PHP Manual

unpack

(PHP 4, PHP 5)

unpack — Unpack data from binary string

Descrição

array unpack ( string $format , string $data )

Unpacks from a binary string into an array according to the given format.

The unpacked data is stored in an associative array. To accomplish this you have to name the different format codes and separate them by a slash /. If a repeater argument is present, then each of the array keys will have a sequence number behind the given name.

Parâmetros

format

See pack() for an explanation of the format codes.

data

The packed data.

Valor Retornado

Returns an associative array containing unpacked elements of binary string.

Exemplos

Exemplo #1 unpack() example

<?php
$binarydata = "\x04\x00\xa0\x00";
$array = unpack("cchars/nint", $binarydata);
?>

The resulting array will contain the entries "chars" with value 4 and "int" with 160.

Exemplo #2 unpack() example with a repeater

<?php
$binarydata = "\x04\x00\xa0\x00";
$array = unpack("c2chars/nint", $binarydata);
?>

The resulting array will contain the entries "chars1", "chars2" and "int".

Notas

Cuidado

Note that PHP internally stores integral values as signed. If you unpack a large unsigned long and it is of the same size as PHP internally stored values the result will be a negative number even though unsigned unpacking was specified.

Cuidado

Be aware that if you do not name an element, an empty string is used. If you do not name more than one element, this means that some data is overwritten as the keys are the same such as in:

Exemplo #3 unpack() example with unnamed keys

<?php
$binarydata = "\x32\x42\x00\xa0";
$array = unpack("c2/n", $binarydata);
var_dump($array);
?>

The resulting array will contain the entries "1" with value 160 and "2" with 66. The first value from the c specifier is overwritten by the first value from the n specifier.

Veja Também

  • pack() - Pack data into binary string

uniqid
usleep
Misc. Funções


Atrasa a execução em milionésimos de segundo

unpack
Parsekit
Misc. Funções
PHP Manual

usleep

(PHP 4, PHP 5)

usleep — Atrasa a execução em milionésimos de segundo

Descrição

void usleep ( int $micro_seconds )

Atrasa a execução do programa por um dado número de milionésimos de segundos.

Parâmetros

micro_seconds

Tempo de parada em milionésimos de segundos.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
5.0.0 | Esta função agora funciona em sistemas Windows.

Exemplos

Exemplo #1 Exemplo da usleep()

<?php

// hora atual
echo date('h:i:s') . "\n";

// espera dois segundos
usleep(2000000);

// de volta!
echo date('h:i:s') . "\n";

?>

O exemplo acima irá imprimir:

11:13:28
11:13:30

Veja Também

  • sleep() - Atrasa a execução do script
  • set_time_limit() - Limita o tempo de execução do script

unpack
Parsekit
Misc. Funções


Parsekit

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Parsekit
    • parsekit_compile_file — Compila uma string de código PHP e retorna um array com o resultado
    • parsekit_compile_string — Compila uma string de código PHP e retorna um array com o resultado
    • parsekit_func_arginfo — Retorna informação de argumento(s) de uma função
usleep
Introdução
Outras Básicas Extensões


Introdução

Estas funções permitem analise runtime de opcodes compilados de scripts PHP.

Parsekit
Instalação/Configuração
Parsekit


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Parsekit


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/parsekit.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PARSEKIT_QUIET (int)
Retorna todos os detalhes, mas sem entradas desnecessárias NULL.
PARSEKIT_SIMPLE (int)
Retorna um shorthand da notação do opcode.
PARSEKIT_EXTENDED_VALUE (int)
Opnode Flag
PARSEKIT_RESULT_CONST (int)
Opnode Flag
PARSEKIT_RESULT_EA_TYPE (int)
Opnode Flag
PARSEKIT_RESULT_JMP_ADDR (int)
Opnode Flag
PARSEKIT_RESULT_OPARRAY (int)
Opnode Flag
PARSEKIT_RESULT_OPLINE (int)
Opnode Flag
PARSEKIT_RESULT_VAR (int)
Opnode Flag
PARSEKIT_USAGE_UNKNOWN (int)
Opnode Flag
PARSEKIT_ZEND_INTERNAL_CLASS (int)
Class Type
PARSEKIT_ZEND_USER_CLASS (int)
Class Type
PARSEKIT_ZEND_EVAL_CODE (int)
Tipo de função
PARSEKIT_ZEND_INTERNAL_FUNCTION (int)
Tipo de função
PARSEKIT_ZEND_OVERLOADED_FUNCTION (int)
Tipo de função
PARSEKIT_ZEND_OVERLOADED_FUNCTION_TEMPORARY (int) PHP >= 5.0.0
Tipo de função
PARSEKIT_ZEND_USER_FUNCTION (int)
Tipo de função
PARSEKIT_IS_CONST (int)
Tipo de node
PARSEKIT_IS_TMP_VAR (int)
Tipo de node
PARSEKIT_IS_UNUSED (int)
Tipo de node
PARSEKIT_IS_VAR (int)
Tipo de node
PARSEKIT_ZEND_ADD (int)
Opcode
PARSEKIT_ZEND_ADD_ARRAY_ELEMENT (int)
Opcode
PARSEKIT_ZEND_ADD_CHAR (int)
Opcode
PARSEKIT_ZEND_ADD_INTERFACE (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ADD_STRING (int)
Opcode
PARSEKIT_ZEND_ADD_VAR (int)
Opcode
PARSEKIT_ZEND_ASSIGN (int)
Opcode
PARSEKIT_ZEND_ASSIGN_ADD (int)
Opcode
PARSEKIT_ZEND_ASSIGN_BW_AND (int)
Opcode
PARSEKIT_ZEND_ASSIGN_BW_OR (int)
Opcode
PARSEKIT_ZEND_ASSIGN_BW_XOR (int)
Opcode
PARSEKIT_ZEND_ASSIGN_CONCAT (int)
Opcode
PARSEKIT_ZEND_ASSIGN_DIM (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ASSIGN_DIV (int)
Opcode
PARSEKIT_ZEND_ASSIGN_MOD (int)
Opcode
PARSEKIT_ZEND_ASSIGN_MUL (int)
Opcode
PARSEKIT_ZEND_ASSIGN_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ASSIGN_REF (int)
Opcode
PARSEKIT_ZEND_ASSIGN_SL (int)
Opcode
PARSEKIT_ZEND_ASSIGN_SR (int)
Opcode
PARSEKIT_ZEND_ASSIGN_SUB (int)
Opcode
PARSEKIT_ZEND_BEGIN_SILENCE (int)
Opcode
PARSEKIT_ZEND_BOOL (int)
Opcode
PARSEKIT_ZEND_BOOL_NOT (int)
Opcode
PARSEKIT_ZEND_BOOL_XOR (int)
Opcode
PARSEKIT_ZEND_BRK (int)
Opcode
PARSEKIT_ZEND_BW_AND (int)
Opcode
PARSEKIT_ZEND_BW_NOT (int)
Opcode
PARSEKIT_ZEND_BW_OR (int)
Opcode
PARSEKIT_ZEND_BW_XOR (int)
Opcode
PARSEKIT_ZEND_CASE (int)
Opcode
PARSEKIT_ZEND_CAST (int)
Opcode
PARSEKIT_ZEND_CATCH (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_CLONE (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_CONCAT (int)
Opcode
PARSEKIT_ZEND_CONT (int)
Opcode
PARSEKIT_ZEND_DECLARE_CLASS (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_DECLARE_FUNCTION (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_DECLARE_INHERITED_CLASS (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_DIV (int)
Opcode
PARSEKIT_ZEND_DO_FCALL (int)
Opcode
PARSEKIT_ZEND_DO_FCALL_BY_NAME (int)
Opcode
PARSEKIT_ZEND_ECHO (int)
Opcode
PARSEKIT_ZEND_END_SILENCE (int)
Opcode
PARSEKIT_ZEND_EXIT (int)
Opcode
PARSEKIT_ZEND_EXT_FCALL_BEGIN (int)
Opcode
PARSEKIT_ZEND_EXT_FCALL_END (int)
Opcode
PARSEKIT_ZEND_EXT_NOP (int)
Opcode
PARSEKIT_ZEND_EXT_STMT (int)
Opcode
PARSEKIT_ZEND_FETCH_CLASS (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_FETCH_CONSTANT (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_FUNC_ARG (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_IS (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_R (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_RW (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_TMP_VAR (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_UNSET (int)
Opcode
PARSEKIT_ZEND_FETCH_DIM_W (int)
Opcode
PARSEKIT_ZEND_FETCH_FUNC_ARG (int)
Opcode
PARSEKIT_ZEND_FETCH_IS (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_FUNC_ARG (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_IS (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_R (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_RW (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_UNSET (int)
Opcode
PARSEKIT_ZEND_FETCH_OBJ_W (int)
Opcode
PARSEKIT_ZEND_FETCH_R (int)
Opcode
PARSEKIT_ZEND_FETCH_RW (int)
Opcode
PARSEKIT_ZEND_FETCH_UNSET (int)
Opcode
PARSEKIT_ZEND_FETCH_W (int)
Opcode
PARSEKIT_ZEND_FE_FETCH (int)
Opcode
PARSEKIT_ZEND_FE_RESET (int)
Opcode
PARSEKIT_ZEND_FREE (int)
Opcode
PARSEKIT_ZEND_HANDLE_EXCEPTION (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_IMPORT_CLASS (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_IMPORT_CONST (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_IMPORT_FUNCTION (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_INCLUDE_OR_EVAL (int)
Opcode
PARSEKIT_ZEND_INIT_ARRAY (int)
Opcode
PARSEKIT_ZEND_INIT_CTOR_CALL (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_INIT_FCALL_BY_NAME (int)
Opcode
PARSEKIT_ZEND_INIT_METHOD_CALL (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_INIT_STATIC_METHOD_CALL (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_INIT_STRING (int)
Opcode
PARSEKIT_ZEND_INSTANCEOF (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ISSET_ISEMPTY (int) PHP < 5.0.0
Opcode
PARSEKIT_ZEND_ISSET_ISEMPTY_DIM_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ISSET_ISEMPTY_PROP_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_ISSET_ISEMPTY_VAR (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_IS_EQUAL (int)
Opcode
PARSEKIT_ZEND_IS_IDENTICAL (int)
Opcode
PARSEKIT_ZEND_IS_NOT_EQUAL (int)
Opcode
PARSEKIT_ZEND_IS_NOT_IDENTICAL (int)
Opcode
PARSEKIT_ZEND_IS_SMALLER (int)
Opcode
PARSEKIT_ZEND_IS_SMALLER_OR_EQUAL (int)
Opcode
PARSEKIT_ZEND_JMP (int)
Opcode
PARSEKIT_ZEND_JMPNZ (int)
Opcode
PARSEKIT_ZEND_JMPNZ_EX (int)
Opcode
PARSEKIT_ZEND_JMPZ (int)
Opcode
PARSEKIT_ZEND_JMPZNZ (int)
Opcode
PARSEKIT_ZEND_JMPZ_EX (int)
Opcode
PARSEKIT_ZEND_JMP_NO_CTOR (int)
Opcode
PARSEKIT_ZEND_MOD (int)
Opcode
PARSEKIT_ZEND_MUL (int)
Opcode
PARSEKIT_ZEND_NEW (int)
Opcode
PARSEKIT_ZEND_NOP (int)
Opcode
PARSEKIT_ZEND_OP_DATA (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_POST_DEC (int)
Opcode
PARSEKIT_ZEND_POST_DEC_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_POST_INC (int)
Opcode
PARSEKIT_ZEND_POST_INC_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_PRE_DEC (int)
Opcode
PARSEKIT_ZEND_PRE_DEC_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_PRE_INC (int)
Opcode
PARSEKIT_ZEND_PRE_INC_OBJ (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_PRINT (int)
Opcode
PARSEKIT_ZEND_QM_ASSIGN (int)
Opcode
PARSEKIT_ZEND_RAISE_ABSTRACT_ERROR (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_RECV (int)
Opcode
PARSEKIT_ZEND_RECV_INIT (int)
Opcode
PARSEKIT_ZEND_RETURN (int)
Opcode
PARSEKIT_ZEND_SEND_REF (int)
Opcode
PARSEKIT_ZEND_SEND_VAL (int)
Opcode
PARSEKIT_ZEND_SEND_VAR (int)
Opcode
PARSEKIT_ZEND_SEND_VAR_NO_REF (int)
Opcode
PARSEKIT_ZEND_SL (int)
Opcode
PARSEKIT_ZEND_SR (int)
Opcode
PARSEKIT_ZEND_SUB (int)
Opcode
PARSEKIT_ZEND_SWITCH_FREE (int)
Opcode
PARSEKIT_ZEND_THROW (int) PHP >= 5.0.0
Opcode
PARSEKIT_ZEND_TICKS (int)
Opcode
PARSEKIT_ZEND_UNSET_DIM_OBJ (int)
Opcode
PARSEKIT_ZEND_UNSET_VAR (int)
Opcode
PARSEKIT_ZEND_VERIFY_ABSTRACT_CLASS (int) PHP >= 5.0.0
Opcode

Tipos Resource
Funções da Parsekit
Parsekit


Funções da Parsekit

Índice

  • parsekit_compile_file — Compila uma string de código PHP e retorna um array com o resultado
  • parsekit_compile_string — Compila uma string de código PHP e retorna um array com o resultado
  • parsekit_func_arginfo — Retorna informação de argumento(s) de uma função
Constantes pré-definidas
parsekit_compile_file
Parsekit


Compila uma string de código PHP e retorna um array com o resultado

Funções da Parsekit
parsekit_compile_string
Funções da Parsekit
PHP Manual

parsekit_compile_file

(PECL parsekit >= 0.2.0)

parsekit_compile_file — Compila uma string de código PHP e retorna um array com o resultado

Descrição

array parsekit_compile_file ( string $filename [, array &$errors [, int $options ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

filename

Uma string contendo o nome do arquivo compilado. Similar para o argumento para include().

errors

Um hash 2D de erros (incluindo erros fatais) encontrados durante a compilação. Retornado por referência.

options

Uma das constantes PARSEKIT_QUIET ou PARSEKIT_SIMPLE. Pra produzir diferente tipos de avisos na saída retornada.

Valor Retornado

Retorna uma complexa estrutura de array multi-camadas como visto abaixo.

Exemplos

Exemplo #1 Exemplo da parsekit_compile_file()

<?php
var_dump(parsekit_compile_file('hello_world.php', $errors, PARSEKIT_SIMPLE));
?>

O exemplo acima irá imprimir:

array(5) {
  [0]=>
  string(37) "ZEND_ECHO UNUSED 'Hello World' UNUSED"
  [1]=>
  string(30) "ZEND_RETURN UNUSED NULL UNUSED"
  [2]=>
  string(42) "ZEND_HANDLE_EXCEPTION UNUSED UNUSED UNUSED"
  ["function_table"]=>
  NULL
  ["class_table"]=>
  NULL
}

Veja Também

  • parsekit_compile_string() - Compila uma string de código PHP e retorna um array com o resultado

Funções da Parsekit
parsekit_compile_string
Funções da Parsekit


Compila uma string de código PHP e retorna um array com o resultado

parsekit_compile_file
parsekit_func_arginfo
Funções da Parsekit
PHP Manual

parsekit_compile_string

(PECL parsekit >= 0.2.0)

parsekit_compile_string — Compila uma string de código PHP e retorna um array com o resultado

Descrição

array parsekit_compile_string ( string $phpcode [, array &$errors [, int $options ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

phpcode

Uma string contendo phpcode. Similar ao argumento para eval().

errors

Um hash 2D de erros (incluindo erros fatais) encontrados durante a compilação. Retornado por referência.

options

Uma das constantes PARSEKIT_QUIET ou PARSEKIT_SIMPLE. Para produzir vários tipos de avisos na saída retornada.

Valor Retornado

Retorna uma complexa estrutura de array multi-camada como visto abaixo.

Exemplos

Exemplo #1 Exemplo da parsekit_compile_string()

<?php
  $ops = parsekit_compile_string('
echo "Foo\n";
', $errors, PARSEKIT_QUIET);

  var_dump($ops);
?>

O exemplo acima irá imprimir:

array(20) {
  ["type"]=>
  int(4)
  ["type_name"]=>
  string(14) "ZEND_EVAL_CODE"
  ["fn_flags"]=>
  int(0)
  ["num_args"]=>
  int(0)
  ["required_num_args"]=>
  int(0)
  ["pass_rest_by_reference"]=>
  bool(false)
  ["uses_this"]=>
  bool(false)
  ["line_start"]=>
  int(0)
  ["line_end"]=>
  int(0)
  ["return_reference"]=>
  bool(false)
  ["refcount"]=>
  int(1)
  ["last"]=>
  int(3)
  ["size"]=>
  int(3)
  ["T"]=>
  int(0)
  ["last_brk_cont"]=>
  int(0)
  ["current_brk_cont"]=>
  int(-1)
  ["backpatch_count"]=>
  int(0)
  ["done_pass_two"]=>
  bool(true)
  ["filename"]=>
  string(17) "Parsekit Compiler"
  ["opcodes"]=>
  array(3) {
    [8594800]=>
    array(5) {
      ["opcode"]=>
      int(40)
      ["opcode_name"]=>
      string(9) "ZEND_ECHO"
      ["flags"]=>
      int(768)
      ["op1"]=>
      array(3) {
        ["type"]=>
        int(1)
        ["type_name"]=>
        string(8) "IS_CONST"
        ["constant"]=>
        &string(4) "Foo
"
      }
      ["lineno"]=>
      int(2)
    }
    ["859484C"]=>
    array(6) {
      ["opcode"]=>
      int(62)
      ["opcode_name"]=>
      string(11) "ZEND_RETURN"
      ["flags"]=>
      int(16777984)
      ["op1"]=>
      array(3) {
        ["type"]=>
        int(1)
        ["type_name"]=>
        string(8) "IS_CONST"
        ["constant"]=>
        &NULL
      }
      ["extended_value"]=>
      int(0)
      ["lineno"]=>
      int(3)
    }
    [8594898]=>
    array(4) {
      ["opcode"]=>
      int(149)
      ["opcode_name"]=>
      string(21) "ZEND_HANDLE_EXCEPTION"
      ["flags"]=>
      int(0)
      ["lineno"]=>
      int(3)
    }
  }
}

Veja Também

  • parsekit_compile_file() - Compila uma string de código PHP e retorna um array com o resultado

parsekit_compile_file
parsekit_func_arginfo
Funções da Parsekit


Retorna informação de argumento(s) de uma função

parsekit_compile_string
SPL
Funções da Parsekit
PHP Manual

parsekit_func_arginfo

(PECL parsekit >= 0.3.0)

parsekit_func_arginfo — Retorna informação de argumento(s) de uma função

Descrição

array parsekit_func_arginfo ( mixed $function )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

function

Uma string descrevendo uma função, ou um array descrevendo uma classe/método.

Valor Retornado

Retorna um array contendo informação dos argumentos.

Exemplos

Exemplo #1 parsekit_func_arginfo() example

<?php
function foo($bar, stdClass $baz, &$bomb, $bling = false) {
}

var_dump(parsekit_func_arginfo('foo'));
?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  array(3) {
    ["name"]=>
    string(3) "bar"
    ["allow_null"]=>
    bool(true)
    ["pass_by_reference"]=>
    bool(false)
  }
  [1]=>
  array(4) {
    ["name"]=>
    string(3) "baz"
    ["class_name"]=>
    string(8) "stdClass"
    ["allow_null"]=>
    bool(false)
    ["pass_by_reference"]=>
    bool(false)
  }
  [2]=>
  array(3) {
    ["name"]=>
    string(4) "bomb"
    ["allow_null"]=>
    bool(true)
    ["pass_by_reference"]=>
    bool(true)
  }
  [3]=>
  array(3) {
    ["name"]=>
    string(5) "bling"
    ["allow_null"]=>
    bool(true)
    ["pass_by_reference"]=>
    bool(false)
  }
}

parsekit_compile_string
SPL
Funções da Parsekit


Standard PHP Library (SPL)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Datastructures
    • SplDoublyLinkedList — The SplDoublyLinkedList class
    • SplStack — The SplStack class
    • SplQueue — The SplQueue class
    • SplHeap — The SplHeap class
    • SplMaxHeap — The SplMaxHeap class
    • SplMinHeap — The SplMinHeap class
    • SplPriorityQueue — The SplPriorityQueue class
    • SplFixedArray — The SplFixedArray class
    • SplObjectStorage — The SplObjectStorage class
  • Iterators
    • AppendIterator — The AppendIterator class
    • ArrayIterator — A classe ArrayIterator
    • CachingIterator — A classe CachingIterator
    • DirectoryIterator — A classe DirectoryIterator
    • EmptyIterator — The EmptyIterator class
    • FilesystemIterator — The FilesystemIterator class
    • FilterIterator — A classe FilterIterator
    • GlobIterator — The GlobIterator class
    • InfiniteIterator — The InfiniteIterator class
    • IteratorIterator — The IteratorIterator class
    • LimitIterator — A classe LimitIterator
    • MultipleIterator — The MultipleIterator class
    • NoRewindIterator — The NoRewindIterator class
    • ParentIterator — A classe ParentIterator
    • RecursiveArrayIterator — The RecursiveArrayIterator class
    • RecursiveCachingIterator — A classe RecursiveCachingIterator
    • RecursiveDirectoryIterator — A classe RecursiveDirectoryIterator
    • RecursiveFilterIterator — The RecursiveFilterIterator class
    • RecursiveIteratorIterator — A classe RecursiveIteratorIterator
    • RecursiveRegexIterator — The RecursiveRegexIterator class
    • RecursiveTreeIterator — The RecursiveTreeIterator class
    • RegexIterator — The RegexIterator class
    • SimpleXMLIterator — A classe SimpleXMLIterator
  • Interfaces
    • Countable — The Countable interface
    • OuterIterator — The OuterIterator interface
    • RecursiveIterator — The RecursiveIterator interface
    • SeekableIterator — The SeekableIterator interface
  • Exceptions
    • BadFunctionCallException — The BadFunctionCallException class
    • BadMethodCallException — The BadMethodCallException class
    • DomainException — The DomainException class
    • InvalidArgumentException — The InvalidArgumentException class
    • LengthException — The LengthException class
    • LogicException — The LogicException class
    • OutOfBoundsException — The OutOfBoundsException class
    • OutOfRangeException — The OutOfRangeException class
    • OverflowException — The OverflowException class
    • RangeException — The RangeException class
    • RuntimeException — The RuntimeException class
    • UnderflowException — The UnderflowException class
    • UnexpectedValueException — The UnexpectedValueException class
  • Funções da SPL
    • class_implements — Retorna as interfaces que são implementadas pela classe
    • class_parents — Retorna as classes pai de determinada classe
    • iterator_apply — Call a function for every element in an iterator
    • iterator_count — Conta o número de elementos do iterador
    • iterator_to_array — Copia o iterador em um array
    • spl_autoload_call — Tenta todas as funções __autoload() registradas para carregar a classe solicitada
    • spl_autoload_extensions — Registra e retorna as extensões de arquivo padrões para o spl_autoload
    • spl_autoload_functions — Retorna todas as funções __autoload() registradas
    • spl_autoload_register — Registra a função dada como implementação de __autoload()
    • spl_autoload_unregister — Retira a função dada como implementação de __autoload()
    • spl_autoload — Implementação padrão de __autoload()
    • spl_classes — Retorna as classes da SPL disponíveis
    • spl_object_hash — Retorna uma identificação hash do objeto dado
  • File Handling
    • SplFileInfo — The SplFileInfo class
    • SplFileObject — The SplFileObject class
    • SplTempFileObject — The SplTempFileObject class
  • Miscellaneous Classes and Interfaces
    • ArrayObject — A classe ArrayObject
    • SplObserver — The SplObserver interface
    • SplSubject — The SplSubject interface
parsekit_func_arginfo
Introdução
Outras Básicas Extensões


Introdução

SPL é uma coleção de interfaces e classes que servem para resolver problemas padrões.

Nota:

Documentação de legado(antiga) gerada com o "doxygen" pode ser encontrada » aqui.

SPL
Instalação/Configuração
SPL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SPL


Instalação

Esta extensão está disponível e é compilada por padrão no PHP 5.3.0.

Nota:

A partir do PHP 5.3.0 esta extensão não pode mais ser desabilitada, sendo assim, ela estará sempre disponível.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Aviso

A SPL utiliza constantes de classes desde o PHP 5.1. Versões anteriores utilizam constantes globais no formato RIT_LEAVES_ONLY.

RecursiveIteratorIterator::LEAVES_ONLY (integer)
RecursiveIteratorIterator::SELF_FIRST (integer)
RecursiveIteratorIterator::CHILD_FIRST (integer)
CachingIterator::CALL_TOSTRING (integer)
CachingIterator::CATCH_GET_CHILD (integer)
Tipos Resource
Datastructures
SPL


Datastructures

Índice

  • SplDoublyLinkedList
  • SplStack
  • SplQueue
  • SplHeap
  • SplMaxHeap
  • SplMinHeap
  • SplPriorityQueue
  • SplFixedArray
  • SplObjectStorage

SPL provides a set of standard datastructures. They are grouped here by their underlying implementation which usually defines their general field of application.

Doubly Linked Lists

A Doubly Linked List (DLL) is a list of nodes linked in both directions to each others. Iterator's operations, access to both ends, addition or removal of nodes have a cost of O(1) when the underlying structure is a DLL. It hence provides a decent implementation for stacks and queues.

  • SplDoublyLinkedList
    • SplStack
    • SplQueue

Heaps

Heaps are tree-like structures that follow the heap-property: each node is greater than or equal to its children, when compared using the implemented compare method which is global to the heap.

  • SplHeap
    • SplMaxHeap
    • SplMinHeap
  • SplPriorityQueue

Arrays

Arrays are structures that store the data in a continuous way, accessible via indexes. Don't confuse them with PHP arrays: PHP arrays are in fact implemented as ordered hashtables.

  • SplFixedArray

Map

A map is a datastructure holding key-value pairs. PHP arrays can be seen as maps from integers/strings to values. SPL provides a map from objects to data. This map can also be used as an object set.

  • SplObjectStorage
Constantes pré-definidas
SplDoublyLinkedList
SPL


The SplDoublyLinkedList class

Introdução

The SplDoublyLinkedList class provides the main functionalities of a doubly linked list.

Sinopse da classe

SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {
/* Methods */
__construct ( void )
mixed bottom ( void )
int count ( void )
mixed current ( void )
int getIteratorMode ( void )
bool isEmpty ( void )
mixed key ( void )
void next ( void )
bool offsetExists ( mixed $index )
mixed offsetGet ( mixed $index )
void offsetSet ( mixed $index , mixed $newval )
void offsetUnset ( mixed $index )
mixed pop ( void )
void prev ( void )
void push ( mixed $value )
void rewind ( void )
void setIteratorMode ( int $mode )
mixed shift ( void )
mixed top ( void )
void unshift ( mixed $value )
bool valid ( void )
}

Índice

  • SplDoublyLinkedList::bottom — Peeks at the node from the beginning of the doubly linked list
  • SplDoublyLinkedList::__construct — Constructs a new doubly linked list
  • SplDoublyLinkedList::count — Counts the number of elements in the doubly linked list.
  • SplDoublyLinkedList::current — Return current array entry
  • SplDoublyLinkedList::getIteratorMode — Returns the mode of iteration
  • SplDoublyLinkedList::isEmpty — Checks whether the doubly linked list is empty.
  • SplDoublyLinkedList::key — Return current node index
  • SplDoublyLinkedList::next — Move to next entry
  • SplDoublyLinkedList::offsetExists — Returns whether the requested $index exists
  • SplDoublyLinkedList::offsetGet — Returns the value at the specified $index
  • SplDoublyLinkedList::offsetSet — Sets the value at the specified $index to $newval
  • SplDoublyLinkedList::offsetUnset — Unsets the value at the specified $index
  • SplDoublyLinkedList::pop — Pops a node from the end of the doubly linked list
  • SplDoublyLinkedList::prev — Move to previous entry
  • SplDoublyLinkedList::push — Pushes an element at the end of the doubly linked list
  • SplDoublyLinkedList::rewind — Rewind iterator back to the start
  • SplDoublyLinkedList::setIteratorMode — Sets the mode of iteration
  • SplDoublyLinkedList::shift — Shifts a node from the beginning of the doubly linked list
  • SplDoublyLinkedList::top — Peeks at the node from the end of the doubly linked list
  • SplDoublyLinkedList::unshift — Prepends the doubly linked list with an element
  • SplDoublyLinkedList::valid — Check whether the doubly linked list contains more nodes
Datastructures
SplDoublyLinkedList::bottom
Datastructures


Peeks at the node from the beginning of the doubly linked list

SplDoublyLinkedList
SplDoublyLinkedList::__construct
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::bottom

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::bottom — Peeks at the node from the beginning of the doubly linked list

Descrição

mixed SplDoublyLinkedList::bottom ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the first node.

SplDoublyLinkedList
SplDoublyLinkedList::__construct
SplDoublyLinkedList


Constructs a new doubly linked list

SplDoublyLinkedList::bottom
SplDoublyLinkedList::count
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::__construct

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::__construct — Constructs a new doubly linked list

Descrição

SplDoublyLinkedList::__construct() ( void )

This constructs a new empty doubly linked list.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplDoublyLinkedList::__construct() example

<?php
$dll = new SplDoublyLinkedList();

$dll->push(2);
$dll->push(3);
$dll->unshift(5);

var_dump($dll);
?>

O exemplo acima irá imprimir:

object(SplDoublyLinkedList)#1 (2) {
  ["flags":"SplDoublyLinkedList":private]=>
  int(0)
  ["dllist":"SplDoublyLinkedList":private]=>
  array(3) {
    [0]=>
    int(5)
    [1]=>
    int(2)
    [2]=>
    int(3)
  }
}

SplDoublyLinkedList::bottom
SplDoublyLinkedList::count
SplDoublyLinkedList


Counts the number of elements in the doubly linked list.

SplDoublyLinkedList::__construct
SplDoublyLinkedList::current
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::count

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::count — Counts the number of elements in the doubly linked list.

Descrição

int SplDoublyLinkedList::count ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of elements in the doubly linked list.

SplDoublyLinkedList::__construct
SplDoublyLinkedList::current
SplDoublyLinkedList


Return current array entry

SplDoublyLinkedList::count
SplDoublyLinkedList::getIteratorMode
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::current

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::current — Return current array entry

Descrição

mixed SplDoublyLinkedList::current ( void )

Get the current doubly linked list node.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current node value.

SplDoublyLinkedList::count
SplDoublyLinkedList::getIteratorMode
SplDoublyLinkedList


Returns the mode of iteration

SplDoublyLinkedList::current
SplDoublyLinkedList::isEmpty
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::getIteratorMode

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::getIteratorMode — Returns the mode of iteration

Descrição

int SplDoublyLinkedList::getIteratorMode ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the different modes and flags that affect the iteration.

SplDoublyLinkedList::current
SplDoublyLinkedList::isEmpty
SplDoublyLinkedList


Checks whether the doubly linked list is empty.

SplDoublyLinkedList::getIteratorMode
SplDoublyLinkedList::key
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::isEmpty

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::isEmpty — Checks whether the doubly linked list is empty.

Descrição

bool SplDoublyLinkedList::isEmpty ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns whether the doubly linked list is empty.

SplDoublyLinkedList::getIteratorMode
SplDoublyLinkedList::key
SplDoublyLinkedList


Return current node index

SplDoublyLinkedList::isEmpty
SplDoublyLinkedList::next
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::key

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::key — Return current node index

Descrição

mixed SplDoublyLinkedList::key ( void )

This function returns the current node index

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current node index.

SplDoublyLinkedList::isEmpty
SplDoublyLinkedList::next
SplDoublyLinkedList


Move to next entry

SplDoublyLinkedList::key
SplDoublyLinkedList::offsetExists
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::next

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::next — Move to next entry

Descrição

void SplDoublyLinkedList::next ( void )

Move the iterator to the next node.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::key
SplDoublyLinkedList::offsetExists
SplDoublyLinkedList


Returns whether the requested $index exists

SplDoublyLinkedList::next
SplDoublyLinkedList::offsetGet
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::offsetExists

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::offsetExists — Returns whether the requested $index exists

Descrição

bool SplDoublyLinkedList::offsetExists ( mixed $index )

Parâmetros

index

The index being checked.

Valor Retornado

TRUE if the requested index exists, otherwise FALSE

SplDoublyLinkedList::next
SplDoublyLinkedList::offsetGet
SplDoublyLinkedList


Returns the value at the specified $index

SplDoublyLinkedList::offsetExists
SplDoublyLinkedList::offsetSet
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::offsetGet

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::offsetGet — Returns the value at the specified $index

Descrição

mixed SplDoublyLinkedList::offsetGet ( mixed $index )

Parâmetros

index

The index with the value.

Valor Retornado

The value at the specified index.

SplDoublyLinkedList::offsetExists
SplDoublyLinkedList::offsetSet
SplDoublyLinkedList


Sets the value at the specified $index to $newval

SplDoublyLinkedList::offsetGet
SplDoublyLinkedList::offsetUnset
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::offsetSet

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::offsetSet — Sets the value at the specified $index to $newval

Descrição

void SplDoublyLinkedList::offsetSet ( mixed $index , mixed $newval )

Sets the value at the specified index to newval.

Parâmetros

index

The index being set.

newval

The new value for the index.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::offsetGet
SplDoublyLinkedList::offsetUnset
SplDoublyLinkedList


Unsets the value at the specified $index

SplDoublyLinkedList::offsetSet
SplDoublyLinkedList::pop
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::offsetUnset

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::offsetUnset — Unsets the value at the specified $index

Descrição

void SplDoublyLinkedList::offsetUnset ( mixed $index )

Unsets the value at the specified index.

Parâmetros

index

The index being unset.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::offsetSet
SplDoublyLinkedList::pop
SplDoublyLinkedList


Pops a node from the end of the doubly linked list

SplDoublyLinkedList::offsetUnset
SplDoublyLinkedList::prev
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::pop

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::pop — Pops a node from the end of the doubly linked list

Descrição

mixed SplDoublyLinkedList::pop ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the popped node.

SplDoublyLinkedList::offsetUnset
SplDoublyLinkedList::prev
SplDoublyLinkedList


Move to previous entry

SplDoublyLinkedList::pop
SplDoublyLinkedList::push
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::prev

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::prev — Move to previous entry

Descrição

void SplDoublyLinkedList::prev ( void )

Move the iterator to the previous node.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::pop
SplDoublyLinkedList::push
SplDoublyLinkedList


Pushes an element at the end of the doubly linked list

SplDoublyLinkedList::prev
SplDoublyLinkedList::rewind
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::push

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::push — Pushes an element at the end of the doubly linked list

Descrição

void SplDoublyLinkedList::push ( mixed $value )

Pushes value at the end of the doubly linked list.

Parâmetros

value

The value to push.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::prev
SplDoublyLinkedList::rewind
SplDoublyLinkedList


Rewind iterator back to the start

SplDoublyLinkedList::push
SplDoublyLinkedList::setIteratorMode
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::rewind

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::rewind — Rewind iterator back to the start

Descrição

void SplDoublyLinkedList::rewind ( void )

This rewinds the iterator to the beginning.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::push
SplDoublyLinkedList::setIteratorMode
SplDoublyLinkedList


Sets the mode of iteration

SplDoublyLinkedList::rewind
SplDoublyLinkedList::shift
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::setIteratorMode

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::setIteratorMode — Sets the mode of iteration

Descrição

void SplDoublyLinkedList::setIteratorMode ( int $mode )

Parâmetros

mode

There are two orthogonal sets of modes that can be set:

  • The direction of the iteration (either one or the other):
    • SplDoublyLinkedList::IT_MODE_LIFO (Stack style)
    • SplDoublyLinkedList::IT_MODE_FIFO (Queue style)
  • The behavior of the iterator (either one or the other):
    • SplDoublyLinkedList::IT_MODE_DELETE (Elements are deleted by the iterator)
    • SplDoublyLinkedList::IT_MODE_KEEP (Elements are traversed by the iterator)

The default mode is: SplDoublyLinkedList::IT_MODE_FIFO | SplDoublyLinkedList::IT_MODE_KEEP

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::rewind
SplDoublyLinkedList::shift
SplDoublyLinkedList


Shifts a node from the beginning of the doubly linked list

SplDoublyLinkedList::setIteratorMode
SplDoublyLinkedList::top
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::shift

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::shift — Shifts a node from the beginning of the doubly linked list

Descrição

mixed SplDoublyLinkedList::shift ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the shifted node.

SplDoublyLinkedList::setIteratorMode
SplDoublyLinkedList::top
SplDoublyLinkedList


Peeks at the node from the end of the doubly linked list

SplDoublyLinkedList::shift
SplDoublyLinkedList::unshift
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::top

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::top — Peeks at the node from the end of the doubly linked list

Descrição

mixed SplDoublyLinkedList::top ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the last node.

SplDoublyLinkedList::shift
SplDoublyLinkedList::unshift
SplDoublyLinkedList


Prepends the doubly linked list with an element

SplDoublyLinkedList::top
SplDoublyLinkedList::valid
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::unshift

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::unshift — Prepends the doubly linked list with an element

Descrição

void SplDoublyLinkedList::unshift ( mixed $value )

Prepends value at the beginning of the doubly linked list.

Parâmetros

value

The value to unshift.

Valor Retornado

Não há valor retornado.

SplDoublyLinkedList::top
SplDoublyLinkedList::valid
SplDoublyLinkedList


Check whether the doubly linked list contains more nodes

SplDoublyLinkedList::unshift
SplStack
SplDoublyLinkedList
PHP Manual

SplDoublyLinkedList::valid

(PHP 5 >= 5.3.0)

SplDoublyLinkedList::valid — Check whether the doubly linked list contains more nodes

Descrição

bool SplDoublyLinkedList::valid ( void )

Checks if the doubly linked list contains any more nodes.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the doubly linked list contains any more nodes, FALSE otherwise.

SplDoublyLinkedList::unshift
SplStack
SplDoublyLinkedList


The SplStack class

Introdução

The SplStack class provides the main functionalities of a stack implemented using a doubly linked list.

Sinopse da classe

SplStack extends SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {
/* Methods */
__construct ( void )
void setIteratorMode ( int $mode )
/* Inherited methods */
mixed SplDoublyLinkedList::bottom ( void )
int SplDoublyLinkedList::count ( void )
mixed SplDoublyLinkedList::current ( void )
int SplDoublyLinkedList::getIteratorMode ( void )
bool SplDoublyLinkedList::isEmpty ( void )
mixed SplDoublyLinkedList::key ( void )
void SplDoublyLinkedList::next ( void )
bool SplDoublyLinkedList::offsetExists ( mixed $index )
mixed SplDoublyLinkedList::offsetGet ( mixed $index )
void SplDoublyLinkedList::offsetSet ( mixed $index , mixed $newval )
void SplDoublyLinkedList::offsetUnset ( mixed $index )
mixed SplDoublyLinkedList::pop ( void )
void SplDoublyLinkedList::prev ( void )
void SplDoublyLinkedList::push ( mixed $value )
void SplDoublyLinkedList::rewind ( void )
void SplDoublyLinkedList::setIteratorMode ( int $mode )
mixed SplDoublyLinkedList::shift ( void )
mixed SplDoublyLinkedList::top ( void )
void SplDoublyLinkedList::unshift ( mixed $value )
bool SplDoublyLinkedList::valid ( void )
}

Índice

  • SplStack::__construct — Constructs a new stack implemented using a doubly linked list
  • SplStack::setIteratorMode — Sets the mode of iteration
SplDoublyLinkedList::valid
SplStack::__construct
Datastructures


Constructs a new stack implemented using a doubly linked list

SplStack
SplStack::setIteratorMode
SplStack
PHP Manual

SplStack::__construct

(PHP 5 >= 5.3.0)

SplStack::__construct — Constructs a new stack implemented using a doubly linked list

Descrição

SplStack::__construct() ( void )

This constructs a new empty stack.

Nota:

This method automatically sets the iterator mode to SplDoublyLinkedList::IT_MODE_LIFO.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplStack::__construct() example

<?php
$q = new SplStack();

$q[] = 1;
$q[] = 2;
$q[] = 3;

foreach ($q as $elem)  {
 echo $elem."\n";
}
?>

O exemplo acima irá imprimir:

3
2
1

SplStack
SplStack::setIteratorMode
SplStack


Sets the mode of iteration

SplStack::__construct
SplQueue
SplStack
PHP Manual

SplStack::setIteratorMode

(PHP 5 >= 5.3.0)

SplStack::setIteratorMode — Sets the mode of iteration

Descrição

void SplStack::setIteratorMode ( int $mode )

Parâmetros

mode

There is only one iteration parameter you can modify.

  • The behavior of the iterator (either one or the other):
    • SplDoublyLinkedList::IT_MODE_DELETE (Elements are deleted by the iterator)
    • SplDoublyLinkedList::IT_MODE_KEEP (Elements are traversed by the iterator)

The default mode is 0x2 : SplDoublyLinkedList::IT_MODE_LIFO | SplDoublyLinkedList::IT_MODE_KEEP

Aviso

The direction of iteration can no longer be changed for SplStacks. Trying to do so will result in a RuntimeException being thrown.

Valor Retornado

Não há valor retornado.

SplStack::__construct
SplQueue
SplStack


The SplQueue class

Introdução

The SplQueue class provides the main functionalities of a queue implemented using a doubly linked list.

Sinopse da classe

SplQueue extends SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {
/* Methods */
__construct ( void )
mixed dequeue ( void )
void enqueue ( mixed $value )
void setIteratorMode ( int $mode )
/* Inherited methods */
mixed SplDoublyLinkedList::bottom ( void )
int SplDoublyLinkedList::count ( void )
mixed SplDoublyLinkedList::current ( void )
int SplDoublyLinkedList::getIteratorMode ( void )
bool SplDoublyLinkedList::isEmpty ( void )
mixed SplDoublyLinkedList::key ( void )
void SplDoublyLinkedList::next ( void )
bool SplDoublyLinkedList::offsetExists ( mixed $index )
mixed SplDoublyLinkedList::offsetGet ( mixed $index )
void SplDoublyLinkedList::offsetSet ( mixed $index , mixed $newval )
void SplDoublyLinkedList::offsetUnset ( mixed $index )
mixed SplDoublyLinkedList::pop ( void )
void SplDoublyLinkedList::prev ( void )
void SplDoublyLinkedList::push ( mixed $value )
void SplDoublyLinkedList::rewind ( void )
void SplDoublyLinkedList::setIteratorMode ( int $mode )
mixed SplDoublyLinkedList::shift ( void )
mixed SplDoublyLinkedList::top ( void )
void SplDoublyLinkedList::unshift ( mixed $value )
bool SplDoublyLinkedList::valid ( void )
}

Índice

  • SplQueue::__construct — Constructs a new queue implemented using a doubly linked list
  • SplQueue::dequeue — Dequeues a node from the queue
  • SplQueue::enqueue — Adds an element to the queue.
  • SplQueue::setIteratorMode — Sets the mode of iteration
SplStack::setIteratorMode
SplQueue::__construct
Datastructures


Constructs a new queue implemented using a doubly linked list

SplQueue
SplQueue::dequeue
SplQueue
PHP Manual

SplQueue::__construct

(PHP 5 >= 5.3.0)

SplQueue::__construct — Constructs a new queue implemented using a doubly linked list

Descrição

SplQueue::__construct() ( void )

This constructs a new empty queue.

Nota:

This method automatically sets the iterator mode to SplDoublyLinkedList::IT_MODE_FIFO.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplQueue::__construct() example

<?php
$q = new SplQueue();

$q[] = 1;
$q[] = 2;
$q[] = 3;

foreach ($q as $elem)  {
 echo $elem."\n";
}
?>

O exemplo acima irá imprimir:

1
2
3

Exemplo #2 Efficiently handling tasks with SplQueue

<?php
$q = new SplQueue();
$q->setIteratorMode(SplQueue::IT_MODE_DELETE);

// ... enqueue some tasks on the queue ...

// process them
foreach ($q as $task) {
    // ... process $task ...

    // add new tasks on the queue
    $q[] = $newTask;
    // ...
}
?>

SplQueue
SplQueue::dequeue
SplQueue


Dequeues a node from the queue

SplQueue::__construct
SplQueue::enqueue
SplQueue
PHP Manual

SplQueue::dequeue

(PHP 5 >= 5.3.0)

SplQueue::dequeue — Dequeues a node from the queue

Descrição

mixed SplQueue::dequeue ( void )

Dequeues value from the top of the queue.

Nota:

SplQueue::dequeue() is an alias of SplDoublyLinkedList::shift().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the dequeued node.

SplQueue::__construct
SplQueue::enqueue
SplQueue


Adds an element to the queue.

SplQueue::dequeue
SplQueue::setIteratorMode
SplQueue
PHP Manual

SplQueue::enqueue

(PHP 5 >= 5.3.0)

SplQueue::enqueue — Adds an element to the queue.

Descrição

void SplQueue::enqueue ( mixed $value )

Enqueues value at the end of the queue.

Nota:

SplQueue::enqueue() is an alias of SplDoublyLinkedList::push().

Parâmetros

value

The value to enqueue.

Valor Retornado

Não há valor retornado.

SplQueue::dequeue
SplQueue::setIteratorMode
SplQueue


Sets the mode of iteration

SplQueue::enqueue
SplHeap
SplQueue
PHP Manual

SplQueue::setIteratorMode

(PHP 5 >= 5.3.0)

SplQueue::setIteratorMode — Sets the mode of iteration

Descrição

void SplQueue::setIteratorMode ( int $mode )

Parâmetros

mode

There is only one iteration parameter you can modify.

  • The behavior of the iterator (either one or the other):
    • SplDoublyLinkedList::IT_MODE_DELETE (Elements are deleted by the iterator)
    • SplDoublyLinkedList::IT_MODE_KEEP (Elements are traversed by the iterator)

The default mode is: SplDoublyLinkedList::IT_MODE_FIFO | SplDoublyLinkedList::IT_MODE_KEEP

Aviso

The direction of iteration can not be changed for SplQueues, it is always SplDoublyLinkedList::IT_MODE_FIFO.

Valor Retornado

Não há valor retornado.

Erros

Throws a RuntimeException on trying to change the direction of iteration by using SplDoublyLinkedList::IT_MODE_LIFO.

SplQueue::enqueue
SplHeap
SplQueue


The SplHeap class

Introdução

The SplHeap class provides the main functionalities of an Heap.

Sinopse da classe

abstract SplHeap implements Iterator , Countable {
/* Methods */
__construct ( void )
abstract int compare ( mixed $value1 , mixed $value2 )
int count ( void )
mixed current ( void )
mixed extract ( void )
void insert ( mixed $value )
bool isEmpty ( void )
mixed key ( void )
void next ( void )
void recoverFromCorruption ( void )
void rewind ( void )
mixed top ( void )
bool valid ( void )
}

Índice

  • SplHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.
  • SplHeap::__construct — Constructs a new empty heap
  • SplHeap::count — Counts the number of elements in the heap.
  • SplHeap::current — Return current node pointed by the iterator
  • SplHeap::extract — Extracts a node from top of the heap and sift up.
  • SplHeap::insert — Inserts an element in the heap by sifting it up.
  • SplHeap::isEmpty — Checks whether the heap is empty.
  • SplHeap::key — Return current node index
  • SplHeap::next — Move to the next node
  • SplHeap::recoverFromCorruption — Recover from the corrupted state and allow further actions on the heap.
  • SplHeap::rewind — Rewind iterator back to the start (no-op)
  • SplHeap::top — Peeks at the node from the top of the heap
  • SplHeap::valid — Check whether the heap contains more nodes
SplQueue::setIteratorMode
SplHeap::compare
Datastructures


Compare elements in order to place them correctly in the heap while sifting up.

SplHeap
SplHeap::__construct
SplHeap
PHP Manual

SplHeap::compare

(PHP 5 >= 5.3.0)

SplHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.

Descrição

abstract int SplHeap::compare ( mixed $value1 , mixed $value2 )

Compare value1 with value2.

Aviso

Throwing exceptions in SplHeap::compare() can corrupt the Heap and place it in a blocked state. You can unblock it by calling SplHeap::recoverFromCorruption(). However, some elements might not be placed correctly and it may hence break the heap-property.

Parâmetros

value1

The value of the first node being compared.

value2

The value of the second node being compared.

Valor Retornado

Result of the comparison, positive integer if value1 is greater than value2, 0 if they are equal, negative integer otherwise.

Nota:

Having multiple elements with the same value in a Heap is not recommended. They will end up in an arbitrary relative position.

SplHeap
SplHeap::__construct
SplHeap


Constructs a new empty heap

SplHeap::compare
SplHeap::count
SplHeap
PHP Manual

SplHeap::__construct

(PHP 5 >= 5.3.0)

SplHeap::__construct — Constructs a new empty heap

Descrição

SplHeap::__construct() ( void )

This constructs a new empty heap.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplHeap::compare
SplHeap::count
SplHeap


Counts the number of elements in the heap.

SplHeap::__construct
SplHeap::current
SplHeap
PHP Manual

SplHeap::count

(PHP 5 >= 5.3.0)

SplHeap::count — Counts the number of elements in the heap.

Descrição

int SplHeap::count ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of elements in the heap.

SplHeap::__construct
SplHeap::current
SplHeap


Return current node pointed by the iterator

SplHeap::count
SplHeap::extract
SplHeap
PHP Manual

SplHeap::current

(PHP 5 >= 5.3.0)

SplHeap::current — Return current node pointed by the iterator

Descrição

mixed SplHeap::current ( void )

Get the current datastructure node.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current node value.

SplHeap::count
SplHeap::extract
SplHeap


Extracts a node from top of the heap and sift up.

SplHeap::current
SplHeap::insert
SplHeap
PHP Manual

SplHeap::extract

(PHP 5 >= 5.3.0)

SplHeap::extract — Extracts a node from top of the heap and sift up.

Descrição

mixed SplHeap::extract ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the extracted node.

SplHeap::current
SplHeap::insert
SplHeap


Inserts an element in the heap by sifting it up.

SplHeap::extract
SplHeap::isEmpty
SplHeap
PHP Manual

SplHeap::insert

(PHP 5 >= 5.3.0)

SplHeap::insert — Inserts an element in the heap by sifting it up.

Descrição

void SplHeap::insert ( mixed $value )

Insert value in the heap.

Parâmetros

value

The value to insert.

Valor Retornado

Não há valor retornado.

SplHeap::extract
SplHeap::isEmpty
SplHeap


Checks whether the heap is empty.

SplHeap::insert
SplHeap::key
SplHeap
PHP Manual

SplHeap::isEmpty

(PHP 5 >= 5.3.0)

SplHeap::isEmpty — Checks whether the heap is empty.

Descrição

bool SplHeap::isEmpty ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns whether the heap is empty.

SplHeap::insert
SplHeap::key
SplHeap


Return current node index

SplHeap::isEmpty
SplHeap::next
SplHeap
PHP Manual

SplHeap::key

(PHP 5 >= 5.3.0)

SplHeap::key — Return current node index

Descrição

mixed SplHeap::key ( void )

This function returns the current node index

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current node index.

SplHeap::isEmpty
SplHeap::next
SplHeap


Move to the next node

SplHeap::key
SplHeap::recoverFromCorruption
SplHeap
PHP Manual

SplHeap::next

(PHP 5 >= 5.3.0)

SplHeap::next — Move to the next node

Descrição

void SplHeap::next ( void )

Extracts the top node from the heap.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplHeap::key
SplHeap::recoverFromCorruption
SplHeap


Recover from the corrupted state and allow further actions on the heap.

SplHeap::next
SplHeap::rewind
SplHeap
PHP Manual

SplHeap::recoverFromCorruption

(PHP 5 >= 5.3.0)

SplHeap::recoverFromCorruption — Recover from the corrupted state and allow further actions on the heap.

Descrição

void SplHeap::recoverFromCorruption ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplHeap::next
SplHeap::rewind
SplHeap


Rewind iterator back to the start (no-op)

SplHeap::recoverFromCorruption
SplHeap::top
SplHeap
PHP Manual

SplHeap::rewind

(PHP 5 >= 5.3.0)

SplHeap::rewind — Rewind iterator back to the start (no-op)

Descrição

void SplHeap::rewind ( void )

This rewinds the iterator to the beginning. This is a no-op for heaps as the iterator is virtual and in fact never moves from the top of the heap.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplHeap::recoverFromCorruption
SplHeap::top
SplHeap


Peeks at the node from the top of the heap

SplHeap::rewind
SplHeap::valid
SplHeap
PHP Manual

SplHeap::top

(PHP 5 >= 5.3.0)

SplHeap::top — Peeks at the node from the top of the heap

Descrição

mixed SplHeap::top ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the node on the top.

SplHeap::rewind
SplHeap::valid
SplHeap


Check whether the heap contains more nodes

SplHeap::top
SplMaxHeap
SplHeap
PHP Manual

SplHeap::valid

(PHP 5 >= 5.3.0)

SplHeap::valid — Check whether the heap contains more nodes

Descrição

bool SplHeap::valid ( void )

Checks if the heap contains any more nodes.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the heap contains any more nodes, FALSE otherwise.

SplHeap::top
SplMaxHeap
SplHeap


The SplMaxHeap class

Introdução

The SplMaxHeap class provides the main functionalities of a heap, keeping the maximum on the top.

Sinopse da classe

SplMaxHeap extends SplHeap implements Iterator , Countable {
/* Methods */
void compare ( mixed $value1 , mixed $value2 )
/* Inherited methods */
abstract int SplHeap::compare ( mixed $value1 , mixed $value2 )
int SplHeap::count ( void )
mixed SplHeap::current ( void )
mixed SplHeap::extract ( void )
void SplHeap::insert ( mixed $value )
bool SplHeap::isEmpty ( void )
mixed SplHeap::key ( void )
void SplHeap::next ( void )
void SplHeap::recoverFromCorruption ( void )
void SplHeap::rewind ( void )
mixed SplHeap::top ( void )
bool SplHeap::valid ( void )
}

Índice

  • SplMaxHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.
SplHeap::valid
SplMaxHeap::compare
Datastructures


Compare elements in order to place them correctly in the heap while sifting up.

SplMaxHeap
SplMinHeap
SplMaxHeap
PHP Manual

SplMaxHeap::compare

(PHP 5 >= 5.3.0)

SplMaxHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.

Descrição

void SplMaxHeap::compare ( mixed $value1 , mixed $value2 )

Compare value1 with value2.

Parâmetros

value1

The value of the first node being compared.

value2

The value of the second node being compared.

Valor Retornado

Result of the comparison, positive integer if value1 is greater than value2, 0 if they are equal, negative integer otherwise.

Nota:

Having multiple elements with the same value in a Heap is not recommended. They will end up in an arbitrary relative position.

SplMaxHeap
SplMinHeap
SplMaxHeap


The SplMinHeap class

Introdução

The SplMinHeap class provides the main functionalities of a heap, keeping the minimum on the top.

Sinopse da classe

SplMinHeap extends SplHeap implements Iterator , Countable {
/* Methods */
void compare ( mixed $value1 , mixed $value2 )
/* Inherited methods */
abstract int SplHeap::compare ( mixed $value1 , mixed $value2 )
int SplHeap::count ( void )
mixed SplHeap::current ( void )
mixed SplHeap::extract ( void )
void SplHeap::insert ( mixed $value )
bool SplHeap::isEmpty ( void )
mixed SplHeap::key ( void )
void SplHeap::next ( void )
void SplHeap::recoverFromCorruption ( void )
void SplHeap::rewind ( void )
mixed SplHeap::top ( void )
bool SplHeap::valid ( void )
}

Índice

  • SplMinHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.
SplMaxHeap::compare
SplMinHeap::compare
Datastructures


Compare elements in order to place them correctly in the heap while sifting up.

SplMinHeap
SplPriorityQueue
SplMinHeap
PHP Manual

SplMinHeap::compare

(PHP 5 >= 5.3.0)

SplMinHeap::compare — Compare elements in order to place them correctly in the heap while sifting up.

Descrição

void SplMinHeap::compare ( mixed $value1 , mixed $value2 )

Compare value1 with value2.

Parâmetros

value1

The value of the first node being compared.

value2

The value of the second node being compared.

Valor Retornado

Result of the comparison, positive integer if value1 is lower than value2, 0 if they are equal, negative integer otherwise.

Nota:

Having multiple elements with the same value in a Heap is not recommended. They will end up in an arbitrary relative position.

SplMinHeap
SplPriorityQueue
SplMinHeap


The SplPriorityQueue class

Introdução

The SplPriorityQueue class provides the main functionalities of an prioritized queue, implemented using a heap.

Sinopse da classe

SplPriorityQueue implements Iterator , Countable {
/* Methods */
__construct ( void )
int compare ( mixed $priority1 , mixed $priority2 )
int count ( void )
mixed current ( void )
mixed extract ( void )
void insert ( mixed $value , mixed $priority )
bool isEmpty ( void )
mixed key ( void )
void next ( void )
void recoverFromCorruption ( void )
void rewind ( void )
void setExtractFlags ( int $flags )
mixed top ( void )
bool valid ( void )
}

Índice

  • SplPriorityQueue::compare — Compare priorities in order to place elements correctly in the heap while sifting up.
  • SplPriorityQueue::__construct — Constructs a new empty queue
  • SplPriorityQueue::count — Counts the number of elements in the queue.
  • SplPriorityQueue::current — Return current node pointed by the iterator
  • SplPriorityQueue::extract — Extracts a node from top of the heap and sift up.
  • SplPriorityQueue::insert — Inserts an element in the queue by sifting it up.
  • SplPriorityQueue::isEmpty — Checks whether the queue is empty.
  • SplPriorityQueue::key — Return current node index
  • SplPriorityQueue::next — Move to the next node
  • SplPriorityQueue::recoverFromCorruption — Recover from the corrupted state and allow further actions on the queue.
  • SplPriorityQueue::rewind — Rewind iterator back to the start (no-op)
  • SplPriorityQueue::setExtractFlags — Sets the mode of extraction
  • SplPriorityQueue::top — Peeks at the node from the top of the queue
  • SplPriorityQueue::valid — Check whether the queue contains more nodes
SplMinHeap::compare
SplPriorityQueue::compare
Datastructures


Compare priorities in order to place elements correctly in the heap while sifting up.

SplPriorityQueue
SplPriorityQueue::__construct
SplPriorityQueue
PHP Manual

SplPriorityQueue::compare

(PHP 5 >= 5.3.0)

SplPriorityQueue::compare — Compare priorities in order to place elements correctly in the heap while sifting up.

Descrição

int SplPriorityQueue::compare ( mixed $priority1 , mixed $priority2 )

Compare priority1 with priority2.

Parâmetros

priority1

The priority of the first node being compared.

priority2

The priority of the second node being compared.

Valor Retornado

Result of the comparison, positive integer if priority1 is greater than priority2, 0 if they are equal, negative integer otherwise.

Nota:

Multiple elements with the same priority will get dequeued in no particular order.

SplPriorityQueue
SplPriorityQueue::__construct
SplPriorityQueue


Constructs a new empty queue

SplPriorityQueue::compare
SplPriorityQueue::count
SplPriorityQueue
PHP Manual

SplPriorityQueue::__construct

(PHP 5 >= 5.3.0)

SplPriorityQueue::__construct — Constructs a new empty queue

Descrição

SplPriorityQueue::__construct() ( void )

This constructs a new empty queue.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::compare
SplPriorityQueue::count
SplPriorityQueue


Counts the number of elements in the queue.

SplPriorityQueue::__construct
SplPriorityQueue::current
SplPriorityQueue
PHP Manual

SplPriorityQueue::count

(PHP 5 >= 5.3.0)

SplPriorityQueue::count — Counts the number of elements in the queue.

Descrição

int SplPriorityQueue::count ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of elements in the queue.

SplPriorityQueue::__construct
SplPriorityQueue::current
SplPriorityQueue


Return current node pointed by the iterator

SplPriorityQueue::count
SplPriorityQueue::extract
SplPriorityQueue
PHP Manual

SplPriorityQueue::current

(PHP 5 >= 5.3.0)

SplPriorityQueue::current — Return current node pointed by the iterator

Descrição

mixed SplPriorityQueue::current ( void )

Get the current datastructure node.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value or priority (or both) of the current node, depending on the extract flag.

SplPriorityQueue::count
SplPriorityQueue::extract
SplPriorityQueue


Extracts a node from top of the heap and sift up.

SplPriorityQueue::current
SplPriorityQueue::insert
SplPriorityQueue
PHP Manual

SplPriorityQueue::extract

(PHP 5 >= 5.3.0)

SplPriorityQueue::extract — Extracts a node from top of the heap and sift up.

Descrição

mixed SplPriorityQueue::extract ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value or priority (or both) of the extracted node, depending on the extract flag.

SplPriorityQueue::current
SplPriorityQueue::insert
SplPriorityQueue


Inserts an element in the queue by sifting it up.

SplPriorityQueue::extract
SplPriorityQueue::isEmpty
SplPriorityQueue
PHP Manual

SplPriorityQueue::insert

(PHP 5 >= 5.3.0)

SplPriorityQueue::insert — Inserts an element in the queue by sifting it up.

Descrição

void SplPriorityQueue::insert ( mixed $value , mixed $priority )

Insert value with the priority priority in the queue.

Parâmetros

value

The value to insert.

priority

The associated priority.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::extract
SplPriorityQueue::isEmpty
SplPriorityQueue


Checks whether the queue is empty.

SplPriorityQueue::insert
SplPriorityQueue::key
SplPriorityQueue
PHP Manual

SplPriorityQueue::isEmpty

(PHP 5 >= 5.3.0)

SplPriorityQueue::isEmpty — Checks whether the queue is empty.

Descrição

bool SplPriorityQueue::isEmpty ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns whether the queue is empty.

SplPriorityQueue::insert
SplPriorityQueue::key
SplPriorityQueue


Return current node index

SplPriorityQueue::isEmpty
SplPriorityQueue::next
SplPriorityQueue
PHP Manual

SplPriorityQueue::key

(PHP 5 >= 5.3.0)

SplPriorityQueue::key — Return current node index

Descrição

mixed SplPriorityQueue::key ( void )

This function returns the current node index

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current node index.

SplPriorityQueue::isEmpty
SplPriorityQueue::next
SplPriorityQueue


Move to the next node

SplPriorityQueue::key
SplPriorityQueue::recoverFromCorruption
SplPriorityQueue
PHP Manual

SplPriorityQueue::next

(PHP 5 >= 5.3.0)

SplPriorityQueue::next — Move to the next node

Descrição

void SplPriorityQueue::next ( void )

Extracts the top node from the queue.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::key
SplPriorityQueue::recoverFromCorruption
SplPriorityQueue


Recover from the corrupted state and allow further actions on the queue.

SplPriorityQueue::next
SplPriorityQueue::rewind
SplPriorityQueue
PHP Manual

SplPriorityQueue::recoverFromCorruption

(PHP 5 >= 5.3.0)

SplPriorityQueue::recoverFromCorruption — Recover from the corrupted state and allow further actions on the queue.

Descrição

void SplPriorityQueue::recoverFromCorruption ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::next
SplPriorityQueue::rewind
SplPriorityQueue


Rewind iterator back to the start (no-op)

SplPriorityQueue::recoverFromCorruption
SplPriorityQueue::setExtractFlags
SplPriorityQueue
PHP Manual

SplPriorityQueue::rewind

(PHP 5 >= 5.3.0)

SplPriorityQueue::rewind — Rewind iterator back to the start (no-op)

Descrição

void SplPriorityQueue::rewind ( void )

This rewinds the iterator to the beginning. This is a no-op for heaps as the iterator is virtual and in fact never moves from the top of the heap.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::recoverFromCorruption
SplPriorityQueue::setExtractFlags
SplPriorityQueue


Sets the mode of extraction

SplPriorityQueue::rewind
SplPriorityQueue::top
SplPriorityQueue
PHP Manual

SplPriorityQueue::setExtractFlags

(PHP 5 >= 5.3.0)

SplPriorityQueue::setExtractFlags — Sets the mode of extraction

Descrição

void SplPriorityQueue::setExtractFlags ( int $flags )

Parâmetros

flags

Defines what is extracted by  SplPriorityQueue::current(),
 SplPriorityQueue::top() and
 SplPriorityQueue::extract().

  • SplPriorityQueue::EXTR_DATA (0x00000001): Extract the data
  • SplPriorityQueue::EXTR_PRIORITY (0x00000002): Extract the priority
  • SplPriorityQueue::EXTR_BOTH (0x00000003): Extract an array containing both

The default mode is SplPriorityQueue::EXTR_DATA.

Valor Retornado

Não há valor retornado.

SplPriorityQueue::rewind
SplPriorityQueue::top
SplPriorityQueue


Peeks at the node from the top of the queue

SplPriorityQueue::setExtractFlags
SplPriorityQueue::valid
SplPriorityQueue
PHP Manual

SplPriorityQueue::top

(PHP 5 >= 5.3.0)

SplPriorityQueue::top — Peeks at the node from the top of the queue

Descrição

mixed SplPriorityQueue::top ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value or priority (or both) of the top node, depending on the extract flag.

SplPriorityQueue::setExtractFlags
SplPriorityQueue::valid
SplPriorityQueue


Check whether the queue contains more nodes

SplPriorityQueue::top
SplFixedArray
SplPriorityQueue
PHP Manual

SplPriorityQueue::valid

(PHP 5 >= 5.3.0)

SplPriorityQueue::valid — Check whether the queue contains more nodes

Descrição

bool SplPriorityQueue::valid ( void )

Checks if the queue contains any more nodes.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the queue contains any more nodes, FALSE otherwise.

SplPriorityQueue::top
SplFixedArray
SplPriorityQueue


The SplFixedArray class

Introdução

The SplFixedArray class provides the main functionalities of array. The main differences between a SplFixedArray and a normal PHP array is that the SplFixedArray is of fixed length and allows only integers within the range as indexes. The advantage is that it allows a faster array implementation.

Sinopse da classe

SplFixedArray implements Iterator , ArrayAccess , Countable {
/* Methods */
public __construct ([ int $size = 0 ] )
public int count ( void )
public mixed current ( void )
public static SplFixedArray fromArray ( array $array [, bool $save_indexes = true ] )
public int getSize ( void )
public int key ( void )
public void next ( void )
public bool offsetExists ( int $index )
public mixed offsetGet ( int $index )
public void offsetSet ( int $index , mixed $newval )
public void offsetUnset ( int $index )
public void rewind ( void )
public int setSize ( int $size )
public array toArray ( void )
public bool valid ( void )
}

Exemplos

Exemplo #1 SplFixedArray usage example

<?php
// Initialize the array with a fixed length
$array = new SplFixedArray(5);

$array[1] = 2;
$array[4] = "foo";

var_dump($array[0]); // NULL
var_dump($array[1]); // int(2)

var_dump($array["4"]); // string(3) "foo"

// Increase the size of the array to 10
$array->setSize(10);

$array[9] = "asdf";

// Shrink the array to a size of 2
$array->setSize(2);

// The following lines throw a RuntimeException: Index invalid or out of range
try {
    var_dump($array["non-numeric"]);
} catch(RuntimeException $re) {
    echo "RuntimeException: ".$re->getMessage()."\n";
}

try {
    var_dump($array[-1]);
} catch(RuntimeException $re) {
    echo "RuntimeException: ".$re->getMessage()."\n";
}

try {
    var_dump($array[5]);
} catch(RuntimeException $re) {
    echo "RuntimeException: ".$re->getMessage()."\n";
}
?>

O exemplo acima irá imprimir:

NULL
int(2)
string(3) "foo"
RuntimeException: Index invalid or out of range
RuntimeException: Index invalid or out of range
RuntimeException: Index invalid or out of range

Índice

  • SplFixedArray::__construct — Constructs a new fixed array
  • SplFixedArray::count — Returns the size of the array
  • SplFixedArray::current — Return current array entry
  • SplFixedArray::fromArray — Import a PHP array in a SplFixedArray instance
  • SplFixedArray::getSize — Gets the size of the array
  • SplFixedArray::key — Return current array index
  • SplFixedArray::next — Move to next entry
  • SplFixedArray::offsetExists — Returns whether the requested index exists
  • SplFixedArray::offsetGet — Returns the value at the specified index
  • SplFixedArray::offsetSet — Sets a new value at a specified index
  • SplFixedArray::offsetUnset — Unsets the value at the specified $index
  • SplFixedArray::rewind — Rewind iterator back to the start
  • SplFixedArray::setSize — Change the size of an array
  • SplFixedArray::toArray — Returns a PHP array from the fixed array
  • SplFixedArray::valid — Check whether the array contains more elements
SplPriorityQueue::valid
SplFixedArray::__construct
Datastructures


Constructs a new fixed array

SplFixedArray
SplFixedArray::count
SplFixedArray
PHP Manual

SplFixedArray::__construct

(PHP 5 >= 5.3.0)

SplFixedArray::__construct — Constructs a new fixed array

Descrição

public SplFixedArray::__construct() ([ int $size = 0 ] )

Constructs a new empty fixed array.

Parâmetros

size

The size of the fixed array.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFixedArray::__construct() example

<?php
$array = new SplFixedArray(5);

$array[1] = 2;
$array[4] = "foo";

foreach($array as $v) {
  var_dump($v);
}
?>

O exemplo acima irá imprimir:

NULL
int(2)
NULL
NULL
string(3) "foo"

SplFixedArray
SplFixedArray::count
SplFixedArray


Returns the size of the array

SplFixedArray::__construct
SplFixedArray::current
SplFixedArray
PHP Manual

SplFixedArray::count

(PHP 5 >= 5.3.0)

SplFixedArray::count — Returns the size of the array

Descrição

public int SplFixedArray::count ( void )

Returns the size of the array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the size of the array.

SplFixedArray::__construct
SplFixedArray::current
SplFixedArray


Return current array entry

SplFixedArray::count
SplFixedArray::fromArray
SplFixedArray
PHP Manual

SplFixedArray::current

(PHP 5 >= 5.3.0)

SplFixedArray::current — Return current array entry

Descrição

public mixed SplFixedArray::current ( void )

Get the current array element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current element value.

SplFixedArray::count
SplFixedArray::fromArray
SplFixedArray


Import a PHP array in a SplFixedArray instance

SplFixedArray::current
SplFixedArray::getSize
SplFixedArray
PHP Manual

SplFixedArray::fromArray

(PHP 5 >= 5.3.0)

SplFixedArray::fromArray — Import a PHP array in a SplFixedArray instance

Descrição

public static SplFixedArray SplFixedArray::fromArray ( array $array [, bool $save_indexes = true ] )

Import the PHP array array in a new SplFixedArray instance

Parâmetros

array

The array to import.

save_indexes

Try to save the numeric indexes used in the original array.

Valor Retornado

Returns an instance of SplFixedArray containing the array content.

Exemplos

Exemplo #1 SplFixedArray::fromArray() example

<?php
$fa = SplFixedArray::fromArray(array(1 => 1, 0 => 2, 3 => 3));

var_dump($fa);

$fa = SplFixedArray::fromArray(array(1 => 1, 0 => 2, 3 => 3), false);

var_dump($fa);
?>

O exemplo acima irá imprimir:

object(SplFixedArray)#1 (4) {
  [0]=>
  int(2)
  [1]=>
  int(1)
  [2]=>
  NULL
  [3]=>
  int(3)
}
object(SplFixedArray)#2 (3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

SplFixedArray::current
SplFixedArray::getSize
SplFixedArray


Gets the size of the array

SplFixedArray::fromArray
SplFixedArray::key
SplFixedArray
PHP Manual

SplFixedArray::getSize

(PHP 5 >= 5.3.0)

SplFixedArray::getSize — Gets the size of the array

Descrição

public int SplFixedArray::getSize ( void )

Gets the size of the array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the size of the array, as an integer.

Exemplos

Exemplo #1 SplFixedArray::getSize() example

<?php
   $array = new SplFixedArray(5);
   echo $array->getSize()."\n";
   $array->setSize(10);
   echo $array->getSize()."\n";
?>

O exemplo acima irá imprimir:

5
10

SplFixedArray::fromArray
SplFixedArray::key
SplFixedArray


Return current array index

SplFixedArray::getSize
SplFixedArray::next
SplFixedArray
PHP Manual

SplFixedArray::key

(PHP 5 >= 5.3.0)

SplFixedArray::key — Return current array index

Descrição

public int SplFixedArray::key ( void )

Returns the current array index.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current array index.

SplFixedArray::getSize
SplFixedArray::next
SplFixedArray


Move to next entry

SplFixedArray::key
SplFixedArray::offsetExists
SplFixedArray
PHP Manual

SplFixedArray::next

(PHP 5 >= 5.3.0)

SplFixedArray::next — Move to next entry

Descrição

public void SplFixedArray::next ( void )

Move the iterator to the next array entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplFixedArray::key
SplFixedArray::offsetExists
SplFixedArray


Returns whether the requested index exists

SplFixedArray::next
SplFixedArray::offsetGet
SplFixedArray
PHP Manual

SplFixedArray::offsetExists

(PHP 5 >= 5.3.0)

SplFixedArray::offsetExists — Returns whether the requested index exists

Descrição

public bool SplFixedArray::offsetExists ( int $index )

Checks whether the requested index index exists.

Parâmetros

index

The index being checked.

Valor Retornado

TRUE if the requested index exists, otherwise FALSE

SplFixedArray::next
SplFixedArray::offsetGet
SplFixedArray


Returns the value at the specified index

SplFixedArray::offsetExists
SplFixedArray::offsetSet
SplFixedArray
PHP Manual

SplFixedArray::offsetGet

(PHP 5 >= 5.3.0)

SplFixedArray::offsetGet — Returns the value at the specified index

Descrição

public mixed SplFixedArray::offsetGet ( int $index )

Returns the value at the index index.

Parâmetros

index

The index with the value.

Valor Retornado

The value at the specified index.

SplFixedArray::offsetExists
SplFixedArray::offsetSet
SplFixedArray


Sets a new value at a specified index

SplFixedArray::offsetGet
SplFixedArray::offsetUnset
SplFixedArray
PHP Manual

SplFixedArray::offsetSet

(PHP 5 >= 5.3.0)

SplFixedArray::offsetSet — Sets a new value at a specified index

Descrição

public void SplFixedArray::offsetSet ( int $index , mixed $newval )

Sets the value at the specified index to newval.

Parâmetros

index

The index being set.

newval

The new value for the index.

Valor Retornado

Não há valor retornado.

SplFixedArray::offsetGet
SplFixedArray::offsetUnset
SplFixedArray


Unsets the value at the specified $index

SplFixedArray::offsetSet
SplFixedArray::rewind
SplFixedArray
PHP Manual

SplFixedArray::offsetUnset

(PHP 5 >= 5.3.0)

SplFixedArray::offsetUnset — Unsets the value at the specified $index

Descrição

public void SplFixedArray::offsetUnset ( int $index )

Unsets the value at the specified index.

Parâmetros

index

The index being unset.

Valor Retornado

Não há valor retornado.

SplFixedArray::offsetSet
SplFixedArray::rewind
SplFixedArray


Rewind iterator back to the start

SplFixedArray::offsetUnset
SplFixedArray::setSize
SplFixedArray
PHP Manual

SplFixedArray::rewind

(PHP 5 >= 5.3.0)

SplFixedArray::rewind — Rewind iterator back to the start

Descrição

public void SplFixedArray::rewind ( void )

Rewinds the iterator to the beginning.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplFixedArray::offsetUnset
SplFixedArray::setSize
SplFixedArray


Change the size of an array

SplFixedArray::rewind
SplFixedArray::toArray
SplFixedArray
PHP Manual

SplFixedArray::setSize

(PHP 5 >= 5.3.0)

SplFixedArray::setSize — Change the size of an array

Descrição

public int SplFixedArray::setSize ( int $size )

Change the size of an array to the new size of size.

Parâmetros

size

The new array size.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFixedArray::setSize() example

<?php
   $array = new SplFixedArray(5);
   echo $array->getSize()."\n";
   $array->setSize(10);
   echo $array->getSize()."\n";
?>

O exemplo acima irá imprimir:

5
10

SplFixedArray::rewind
SplFixedArray::toArray
SplFixedArray


Returns a PHP array from the fixed array

SplFixedArray::setSize
SplFixedArray::valid
SplFixedArray
PHP Manual

SplFixedArray::toArray

(PHP 5 >= 5.3.0)

SplFixedArray::toArray — Returns a PHP array from the fixed array

Descrição

public array SplFixedArray::toArray ( void )

Returns a PHP array from the fixed array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a PHP array, similar to the fixed array.

Exemplos

Exemplo #1 SplFixedArray::toArray() example

<?php
$fa = new SplFixedArray(3);
$fa[0] = 0;
$fa[2] = 2;
var_dump($fa->toArray());
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  int(0)
  [1]=>
  NULL
  [2]=>
  int(2)
}

SplFixedArray::setSize
SplFixedArray::valid
SplFixedArray


Check whether the array contains more elements

SplFixedArray::toArray
SplObjectStorage
SplFixedArray
PHP Manual

SplFixedArray::valid

(PHP 5 >= 5.3.0)

SplFixedArray::valid — Check whether the array contains more elements

Descrição

public bool SplFixedArray::valid ( void )

Checks if the array contains any more elements.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the array contains any more elements, FALSE otherwise.

SplFixedArray::toArray
SplObjectStorage
SplFixedArray


The SplObjectStorage class

Introdução

The SplObjectStorage class provides a map from objects to data or, by ignoring data, an object set. This dual purpose can be useful in many cases involving the need to uniquely identify objects.

Sinopse da classe

SplObjectStorage implements Countable , Iterator , Traversable , Serializable , ArrayAccess {
/* Methods */
public void addAll ( SplObjectStorage $storage )
public void attach ( object $object [, mixed $data = NULL ] )
public bool contains ( object $object )
public int count ( void )
public object current ( void )
public void detach ( object $object )
public mixed getInfo ( void )
public int key ( void )
public void next ( void )
public bool offsetExists ( object $object )
public mixed offsetGet ( object $object )
public void offsetSet ( object $object [, mixed $data = NULL ] )
public void offsetUnset ( object $object )
public void removeAll ( SplObjectStorage $storage )
public void removeAllExcept ( SplObjectStorage $storage )
public void rewind ( void )
public string serialize ( void )
public void setInfo ( mixed $data )
public void unserialize ( string $serialized )
public bool valid ( void )
}

Exemplos

Exemplo #1 SplObjectStorage as a set

<?php
// As an object set
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;
$o3 = new StdClass;

$s->attach($o1);
$s->attach($o2);

var_dump($s->contains($o1));
var_dump($s->contains($o2));
var_dump($s->contains($o3));

$s->detach($o2);

var_dump($s->contains($o1));
var_dump($s->contains($o2));
var_dump($s->contains($o3));
?>

O exemplo acima irá imprimir:

bool(true)
bool(true)
bool(false)
bool(true)
bool(false)
bool(false)

Exemplo #2 SplObjectStorage as a map

<?php
// As a map from objects to data
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;
$o3 = new StdClass;

$s[$o1] = "data for object 1";
$s[$o2] = array(1,2,3);

if (isset($s[$o2])) {
    var_dump($s[$o2]);
}
?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

Índice

  • SplObjectStorage::addAll — Adds all objects from another storage
  • SplObjectStorage::attach — Adds an object in the storage
  • SplObjectStorage::contains — Checks if the storage contains a specific object
  • SplObjectStorage::count — Returns the number of objects in the storage
  • SplObjectStorage::current — Returns the current storage entry
  • SplObjectStorage::detach — Removes an object from the storage
  • SplObjectStorage::getInfo — Returns the data associated with the current iterator entry
  • SplObjectStorage::key — Returns the index at which the iterator currently is
  • SplObjectStorage::next — Move to the next entry
  • SplObjectStorage::offsetExists — Checks whether an object exists in the storage
  • SplObjectStorage::offsetGet — Returns the data associated with an object
  • SplObjectStorage::offsetSet — Associates data to an object in the storage
  • SplObjectStorage::offsetUnset — Removes an object from the storage
  • SplObjectStorage::removeAll — Removes objects contained in another storage from the current storage
  • SplObjectStorage::removeAllExcept — Removes all objects except for those contained in another storage from the current storage
  • SplObjectStorage::rewind — Rewind the iterator to the first storage element
  • SplObjectStorage::serialize — Serializes the storage
  • SplObjectStorage::setInfo — Sets the data associated with the current iterator entry
  • SplObjectStorage::unserialize — Unserializes a storage from its string representation
  • SplObjectStorage::valid — Returns if the current iterator entry is valid
SplFixedArray::valid
SplObjectStorage::addAll
Datastructures


Adds all objects from another storage

SplObjectStorage
SplObjectStorage::attach
SplObjectStorage
PHP Manual

SplObjectStorage::addAll

(PHP 5 >= 5.3.0)

SplObjectStorage::addAll — Adds all objects from another storage

Descrição

public void SplObjectStorage::addAll ( SplObjectStorage $storage )

Adds all objects-data pairs from a different storage in the current storage.

Parâmetros

storage

The storage you want to import.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::addAll() example

<?php
$o = new StdClass;
$a = new SplObjectStorage();
$a[$o] = "hello";

$b = new SplObjectStorage();
$b->addAll($a);
echo $b[$o]."\n";
?>

O exemplo acima irá imprimir algo similar a:

hello

Veja Também

  • SplObjectStorage::removeAll() - Removes objects contained in another storage from the current storage

SplObjectStorage
SplObjectStorage::attach
SplObjectStorage


Adds an object in the storage

SplObjectStorage::addAll
SplObjectStorage::contains
SplObjectStorage
PHP Manual

SplObjectStorage::attach

(PHP 5 >= 5.1.0)

SplObjectStorage::attach — Adds an object in the storage

Descrição

public void SplObjectStorage::attach ( object $object [, mixed $data = NULL ] )

Adds an object inside the storage, and optionaly associate it to some data.

Parâmetros

object

The object to add.

data

The data to associate with the object.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::attach() example

<?php
$o1 = new StdClass;
$o2 = new StdClass;
$s = new SplObjectStorage();
$s->attach($o1); // similar to $s[$o1] = NULL;
$s->attach($o2, "hello"); // similar to $s[$o2] = "hello";

var_dump($s[$o1]);
var_dump($s[$o2]);

?>

O exemplo acima irá imprimir algo similar a:

NULL
string(5) "hello"

Histórico

Versão | Descrição
5.3.0 | Added the data parameter.

Veja Também

  • SplObjectStorage::detach() - Removes an object from the storage
  • SplObjectStorage::offsetSet() - Associates data to an object in the storage

SplObjectStorage::addAll
SplObjectStorage::contains
SplObjectStorage


Checks if the storage contains a specific object

SplObjectStorage::attach
SplObjectStorage::count
SplObjectStorage
PHP Manual

SplObjectStorage::contains

(PHP 5 >= 5.1.0)

SplObjectStorage::contains — Checks if the storage contains a specific object

Descrição

public bool SplObjectStorage::contains ( object $object )

Checks if the storage contains the object provided.

Parâmetros

object

The object to look for.

Valor Retornado

Returns TRUE if the object is in the storage, FALSE otherwise.

Exemplos

Exemplo #1 SplObjectStorage::contains() example

<?php
$o1 = new StdClass;
$o2 = new StdClass;

$s = new SplObjectStorage();

$s[$o1] = "hello";
var_dump($s->contains($o1));
var_dump($s->contains($o2));
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

Veja Também

  • SplObjectStorage::offsetExists() - Checks whether an object exists in the storage

SplObjectStorage::attach
SplObjectStorage::count
SplObjectStorage


Returns the number of objects in the storage

SplObjectStorage::contains
SplObjectStorage::current
SplObjectStorage
PHP Manual

SplObjectStorage::count

(PHP 5 >= 5.1.0)

SplObjectStorage::count — Returns the number of objects in the storage

Descrição

public int SplObjectStorage::count ( void )

Counts the number of objects in the storage.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of objects in the storage.

Exemplos

Exemplo #1 SplObjectStorage::count() example

<?php
$s = new SplObjectStorage();
$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1);
$s->attach($o2);
$s->attach($o1);
var_dump($s->count());
var_dump(count($s));
?>

O exemplo acima irá imprimir algo similar a:

int(2)
int(2)

Veja Também

  • SplObjectStorage::attach() - Adds an object in the storage
  • SplObjectStorage::detach() - Removes an object from the storage

SplObjectStorage::contains
SplObjectStorage::current
SplObjectStorage


Returns the current storage entry

SplObjectStorage::count
SplObjectStorage::detach
SplObjectStorage
PHP Manual

SplObjectStorage::current

(PHP 5 >= 5.1.0)

SplObjectStorage::current — Returns the current storage entry

Descrição

public object SplObjectStorage::current ( void )

Returns the current storage entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The object at the current iterator position.

Exemplos

Exemplo #1 SplObjectStorage::current() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $index  = $s->key();
    $object = $s->current(); // similar to current($s)
    $data   = $s->getInfo();

    var_dump($object);
    var_dump($data);
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

object(stdClass)#2 (0) {
}
string(2) "d1"
object(stdClass)#3 (0) {
}
string(2) "d2"

Veja Também

  • SplObjectStorage::rewind() - Rewind the iterator to the first storage element
  • SplObjectStorage::key() - Returns the index at which the iterator currently is
  • SplObjectStorage::next() - Move to the next entry
  • SplObjectStorage::valid() - Returns if the current iterator entry is valid
  • SplObjectStorage::getInfo() - Returns the data associated with the current iterator entry

SplObjectStorage::count
SplObjectStorage::detach
SplObjectStorage


Removes an object from the storage

SplObjectStorage::current
SplObjectStorage::getInfo
SplObjectStorage
PHP Manual

SplObjectStorage::detach

(PHP 5 >= 5.1.0)

SplObjectStorage::detach — Removes an object from the storage

Descrição

public void SplObjectStorage::detach ( object $object )

Removes the object from the storage.

Parâmetros

object

The object to remove.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::detach() example

<?php
$o = new StdClass;
$s = new SplObjectStorage();
$s->attach($o);
var_dump(count($s));
$s->detach($o);
var_dump(count($s));
?>

O exemplo acima irá imprimir algo similar a:

int(1)
int(0)

Veja Também

  • SplObjectStorage::attach() - Adds an object in the storage
  • SplObjectStorage::removeAll() - Removes objects contained in another storage from the current storage

SplObjectStorage::current
SplObjectStorage::getInfo
SplObjectStorage


Returns the data associated with the current iterator entry

SplObjectStorage::detach
SplObjectStorage::key
SplObjectStorage
PHP Manual

SplObjectStorage::getInfo

(PHP 5 >= 5.3.0)

SplObjectStorage::getInfo — Returns the data associated with the current iterator entry

Descrição

public mixed SplObjectStorage::getInfo ( void )

Returns the data, or info, associated with the object pointed by the current iterator position.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The data associated with the current iterator position.

Exemplos

Exemplo #1 SplObjectStorage::getInfo() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $index  = $s->key();
    $object = $s->current(); // similar to current($s)
    $data   = $s->getInfo();

    var_dump($object);
    var_dump($data);
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

object(stdClass)#2 (0) {
}
string(2) "d1"
object(stdClass)#3 (0) {
}
string(2) "d2"

Veja Também

  • SplObjectStorage::current() - Returns the current storage entry
  • SplObjectStorage::rewind() - Rewind the iterator to the first storage element
  • SplObjectStorage::key() - Returns the index at which the iterator currently is
  • SplObjectStorage::next() - Move to the next entry
  • SplObjectStorage::valid() - Returns if the current iterator entry is valid
  • SplObjectStorage::setInfo() - Sets the data associated with the current iterator entry

SplObjectStorage::detach
SplObjectStorage::key
SplObjectStorage


Returns the index at which the iterator currently is

SplObjectStorage::getInfo
SplObjectStorage::next
SplObjectStorage
PHP Manual

SplObjectStorage::key

(PHP 5 >= 5.1.0)

SplObjectStorage::key — Returns the index at which the iterator currently is

Descrição

public int SplObjectStorage::key ( void )

Returns the index at which the iterator currently is.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The index corresponding to the position of the iterator.

Exemplos

Exemplo #1 SplObjectStorage::key() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $index  = $s->key();
    $object = $s->current(); // similar to current($s)

    var_dump($index);
    var_dump($object);
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

int(0)
object(stdClass)#2 (0) {
}
int(1)
object(stdClass)#3 (0) {
}

Veja Também

  • SplObjectStorage::rewind() - Rewind the iterator to the first storage element
  • SplObjectStorage::current() - Returns the current storage entry
  • SplObjectStorage::next() - Move to the next entry
  • SplObjectStorage::valid() - Returns if the current iterator entry is valid

SplObjectStorage::getInfo
SplObjectStorage::next
SplObjectStorage


Move to the next entry

SplObjectStorage::key
SplObjectStorage::offsetExists
SplObjectStorage
PHP Manual

SplObjectStorage::next

(PHP 5 >= 5.1.0)

SplObjectStorage::next — Move to the next entry

Descrição

public void SplObjectStorage::next ( void )

Moves the iterator to the next object in the storage.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::next() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $index  = $s->key();
    $object = $s->current(); // similar to current($s)

    var_dump($index);
    var_dump($object);
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

int(0)
object(stdClass)#2 (0) {
}
int(1)
object(stdClass)#3 (0) {
}

Veja Também

  • SPLObjectStorage::rewind() - Rewind the iterator to the first storage element

SplObjectStorage::key
SplObjectStorage::offsetExists
SplObjectStorage


Checks whether an object exists in the storage

SplObjectStorage::next
SplObjectStorage::offsetGet
SplObjectStorage
PHP Manual

SplObjectStorage::offsetExists

(PHP 5 >= 5.3.0)

SplObjectStorage::offsetExists — Checks whether an object exists in the storage

Descrição

public bool SplObjectStorage::offsetExists ( object $object )

Checks whether an object exists in the storage.

Parâmetros

object

The object to look for.

Valor Retornado

Returns TRUE if the object exists in the storage, and FALSE otherwise.

Exemplos

Exemplo #1 SplObjectStorage::offsetExists() example

<?php
$s = new SplObjectStorage;
$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1);

var_dump($s->offsetExists($o1)); // Similar to isset($s[$o1])
var_dump($s->offsetExists($o2)); // Similar to isset($s[$o2])
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

Veja Também

  • SplObjectStorage::offsetSet() - Associates data to an object in the storage
  • SplObjectStorage::offsetGet() - Returns the data associated with an object
  • SplObjectStorage::offsetUnset() - Removes an object from the storage

SplObjectStorage::next
SplObjectStorage::offsetGet
SplObjectStorage


Returns the data associated with an object

SplObjectStorage::offsetExists
SplObjectStorage::offsetSet
SplObjectStorage
PHP Manual

SplObjectStorage::offsetGet

(PHP 5 >= 5.3.0)

SplObjectStorage::offsetGet — Returns the data associated with an object

Descrição

public mixed SplObjectStorage::offsetGet ( object $object )

Returns the data associated with an object in the storage.

Parâmetros

object

The object to look for.

Valor Retornado

The data previously associated with the object in the storage.

Exemplos

Exemplo #1 SplObjectStorage::offsetGet() example

<?php
$s = new SplObjectStorage;

$o1 = new StdClass;
$o2 = new StdClass;

$s[$o1] = "hello";
$s->attach($o2);

var_dump($s->offsetGet($o1)); // Similar to $s[$o1]
var_dump($s->offsetGet($o2)); // Similar to $s[$o2]
?>

O exemplo acima irá imprimir algo similar a:

string(5) "hello"
NULL

Veja Também

  • SplObjectStorage::offsetSet() - Associates data to an object in the storage
  • SplObjectStorage::offsetExists() - Checks whether an object exists in the storage
  • SplObjectStorage::offsetUnset() - Removes an object from the storage

SplObjectStorage::offsetExists
SplObjectStorage::offsetSet
SplObjectStorage


Associates data to an object in the storage

SplObjectStorage::offsetGet
SplObjectStorage::offsetUnset
SplObjectStorage
PHP Manual

SplObjectStorage::offsetSet

(PHP 5 >= 5.3.0)

SplObjectStorage::offsetSet — Associates data to an object in the storage

Descrição

public void SplObjectStorage::offsetSet ( object $object [, mixed $data = NULL ] )

Associate data to an object in the storage.

Nota:

SplObjectStorage::offsetSet() is an alias of SplObjectStorage::attach().

Parâmetros

object

The object to associate data with.

data

The data to associate with the object.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::offsetSet() example

<?php
$s = new SplObjectStorage;

$o1 = new StdClass;

$s->offsetSet($o1, "hello"); // Similar to $s[$o1] = "hello";

var_dump($s[$o1]);
?>

O exemplo acima irá imprimir algo similar a:

string(5) "hello"

Veja Também

  • SplObjectStorage::attach() - Adds an object in the storage
  • SplObjectStorage::offsetGet() - Returns the data associated with an object
  • SplObjectStorage::offsetExists() - Checks whether an object exists in the storage
  • SplObjectStorage::offsetUnset() - Removes an object from the storage

SplObjectStorage::offsetGet
SplObjectStorage::offsetUnset
SplObjectStorage


Removes an object from the storage

SplObjectStorage::offsetSet
SplObjectStorage::removeAll
SplObjectStorage
PHP Manual

SplObjectStorage::offsetUnset

(PHP 5 >= 5.3.0)

SplObjectStorage::offsetUnset — Removes an object from the storage

Descrição

public void SplObjectStorage::offsetUnset ( object $object )

Removes an object from the storage.

Nota:

SplObjectStorage::offsetUnset() is an alias of SplObjectStorage::detach().

Parâmetros

object

The object to remove.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::offsetUnset() example

<?php
$o = new StdClass;
$s = new SplObjectStorage();
$s->attach($o);
var_dump(count($s));
$s->offsetUnset($o); // Similar to unset($s[$o])
var_dump(count($s));
?>

O exemplo acima irá imprimir algo similar a:

int(1)
int(0)

Veja Também

  • SplObjectStorage::offsetGet() - Returns the data associated with an object
  • SplObjectStorage::offsetSet() - Associates data to an object in the storage
  • SplObjectStorage::offsetExists() - Checks whether an object exists in the storage

SplObjectStorage::offsetSet
SplObjectStorage::removeAll
SplObjectStorage


Removes objects contained in another storage from the current storage

SplObjectStorage::offsetUnset
SplObjectStorage::removeAllExcept
SplObjectStorage
PHP Manual

SplObjectStorage::removeAll

(PHP 5 >= 5.3.0)

SplObjectStorage::removeAll — Removes objects contained in another storage from the current storage

Descrição

public void SplObjectStorage::removeAll ( SplObjectStorage $storage )

Removes objects contained in another storage from the current storage.

Parâmetros

storage

The storage containing the elements to remove.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::removeAll() example

<?php
$o1 = new StdClass;
$o2 = new StdClass;
$a = new SplObjectStorage();
$a[$o1] = "foo";

$b = new SplObjectStorage();
$b[$o1] = "bar";
$b[$o2] = "gee";

var_dump(count($b));
$b->removeAll($a);
var_dump(count($b));
?>

O exemplo acima irá imprimir algo similar a:

int(2)
int(1)

Veja Também

  • SplObjectStorage::addAll() - Adds all objects from another storage

SplObjectStorage::offsetUnset
SplObjectStorage::removeAllExcept
SplObjectStorage


Removes all objects except for those contained in another storage from the current storage

SplObjectStorage::removeAll
SplObjectStorage::rewind
SplObjectStorage
PHP Manual

SplObjectStorage::removeAllExcept

(PHP 5 >= 5.3.6)

SplObjectStorage::removeAllExcept — Removes all objects except for those contained in another storage from the current storage

Descrição

public void SplObjectStorage::removeAllExcept ( SplObjectStorage $storage )

Removes all objects except for those contained in another storage from the current storage.

Parâmetros

storage

The storage containing the elements to retain in the current storage.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::removeAllExcept() example

<?php
$a = (object) 'a';
$b = (object) 'b';
$c = (object) 'c';

$foo = new SplObjectStorage;
$foo->attach($a);
$foo->attach($b);

$bar = new SplObjectStorage;
$bar->attach($b);
$bar->attach($c);

$foo->removeAllExcept($bar);
var_dump($foo->contains($a));
var_dump($foo->contains($b));
?>

O exemplo acima irá imprimir algo similar a:

bool(false)
bool(true)

SplObjectStorage::removeAll
SplObjectStorage::rewind
SplObjectStorage


Rewind the iterator to the first storage element

SplObjectStorage::removeAllExcept
SplObjectStorage::serialize
SplObjectStorage
PHP Manual

SplObjectStorage::rewind

(PHP 5 >= 5.1.0)

SplObjectStorage::rewind — Rewind the iterator to the first storage element

Descrição

public void SplObjectStorage::rewind ( void )

Rewind the iterator to the first storage element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::rewind() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $index  = $s->key();
    $object = $s->current(); // similar to current($s)
    $data   = $s->getInfo();

    var_dump($object);
    var_dump($data);
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

int(1)
int(0)

Veja Também

  • SplObjectStorage::next() - Move to the next entry

SplObjectStorage::removeAllExcept
SplObjectStorage::serialize
SplObjectStorage


Serializes the storage

SplObjectStorage::rewind
SplObjectStorage::setInfo
SplObjectStorage
PHP Manual

SplObjectStorage::serialize

(PHP 5 >= 5.2.2)

SplObjectStorage::serialize — Serializes the storage

Descrição

public string SplObjectStorage::serialize ( void )

Returns a string representation of the storage.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string representing the storage.

Exemplos

Exemplo #1 SplObjectStorage::serialize() example

<?php
$s = new SplObjectStorage;
$o = new StdClass;
$s[$o] = "data";

echo $s->serialize()."\n";
?>

O exemplo acima irá imprimir algo similar a:

x:i:1;O:8:"stdClass":0:{},s:4:"data";;m:a:0:{}

Veja Também

  • SplObjectStorage::unserialize() - Unserializes a storage from its string representation

SplObjectStorage::rewind
SplObjectStorage::setInfo
SplObjectStorage


Sets the data associated with the current iterator entry

SplObjectStorage::serialize
SplObjectStorage::unserialize
SplObjectStorage
PHP Manual

SplObjectStorage::setInfo

(PHP 5 >= 5.3.0)

SplObjectStorage::setInfo — Sets the data associated with the current iterator entry

Descrição

public void SplObjectStorage::setInfo ( mixed $data )

Associates data, or info, with the object currently pointed to by the iterator.

Parâmetros

data

The data to associate with the current iterator entry.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::setInfo() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    $s->setInfo("new");
    $s->next();
}
var_dump($s[$o1]);
var_dump($s[$o2]);
?>

O exemplo acima irá imprimir algo similar a:

string(3) "new"
string(3) "new"

Veja Também

  • SplObjectStorage::current() - Returns the current storage entry
  • SplObjectStorage::rewind() - Rewind the iterator to the first storage element
  • SplObjectStorage::key() - Returns the index at which the iterator currently is
  • SplObjectStorage::next() - Move to the next entry
  • SplObjectStorage::valid() - Returns if the current iterator entry is valid
  • SplObjectStorage::getInfo() - Returns the data associated with the current iterator entry

SplObjectStorage::serialize
SplObjectStorage::unserialize
SplObjectStorage


Unserializes a storage from its string representation

SplObjectStorage::setInfo
SplObjectStorage::valid
SplObjectStorage
PHP Manual

SplObjectStorage::unserialize

(PHP 5 >= 5.2.2)

SplObjectStorage::unserialize — Unserializes a storage from its string representation

Descrição

public void SplObjectStorage::unserialize ( string $serialized )

Unserializes storage entries and attach them to the current storage.

Parâmetros

serialized

The serialized representation of a storage.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplObjectStorage::unserialize() example

<?php
$s1 = new SplObjectStorage;
$s2 = new SplObjectStorage;
$o = new StdClass;
$s1[$o] = "data";

$s2->unserialize($s1->serialize());

var_dump(count($s2));
?>

O exemplo acima irá imprimir algo similar a:

int(1)

Veja Também

  • SplObjectStorage::serialize() - Serializes the storage

SplObjectStorage::setInfo
SplObjectStorage::valid
SplObjectStorage


Returns if the current iterator entry is valid

SplObjectStorage::unserialize
Iterators
SplObjectStorage
PHP Manual

SplObjectStorage::valid

(PHP 5 >= 5.1.0)

SplObjectStorage::valid — Returns if the current iterator entry is valid

Descrição

public bool SplObjectStorage::valid ( void )

Returns if the current iterator entry is valid.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the iterator entry is valid, FALSE otherwise.

Exemplos

Exemplo #1 SplObjectStorage::valid() example

<?php
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;

$s->attach($o1, "d1");
$s->attach($o2, "d2");

$s->rewind();
while($s->valid()) {
    echo $s->key()."\n";
    $s->next();
}
?>

O exemplo acima irá imprimir algo similar a:

0
1

Veja Também

  • SplObjectStorage::current() - Returns the current storage entry
  • SplObjectStorage::getInfo() - Returns the data associated with the current iterator entry

SplObjectStorage::unserialize
Iterators
SplObjectStorage


Iterators

Índice

  • AppendIterator
  • ArrayIterator
  • CachingIterator
  • DirectoryIterator
  • EmptyIterator
  • FilesystemIterator
  • FilterIterator
  • GlobIterator
  • InfiniteIterator
  • IteratorIterator
  • LimitIterator
  • MultipleIterator
  • NoRewindIterator
  • ParentIterator
  • RecursiveArrayIterator
  • RecursiveCachingIterator
  • RecursiveDirectoryIterator
  • RecursiveFilterIterator
  • RecursiveIteratorIterator
  • RecursiveRegexIterator
  • RecursiveTreeIterator
  • RegexIterator
  • SimpleXMLIterator

SPL provides a set of iterators to traverse over objects.

Undocumented Iterators

  • RecursiveTreeIterator
SplObjectStorage::valid
AppendIterator
SPL


The AppendIterator class

Introdução

Iterate over multiple collections.

Sinopse da classe

AppendIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator {
/* Methods */
public void append ( Iterator $iterator )
__construct ( void )
public void current ( void )
public void getArrayIterator ( void )
public void getInnerIterator ( void )
public void getIteratorIndex ( void )
public void key ( void )
public void next ( void )
public void rewind ( void )
public void valid ( void )
/* Inherited methods */
IteratorIterator::__construct ( Traversable $iterator )
public void IteratorIterator::current ( void )
public void IteratorIterator::getInnerIterator ( void )
public void IteratorIterator::key ( void )
public void IteratorIterator::next ( void )
public void IteratorIterator::rewind ( void )
public bool IteratorIterator::valid ( void )
}

Índice

  • AppendIterator::append — Appends an iterator
  • AppendIterator::__construct — Constructs an AppendIterator
  • AppendIterator::current — Gets the current value
  • AppendIterator::getArrayIterator — The getArrayIterator method
  • AppendIterator::getInnerIterator — Gets an inner iterator
  • AppendIterator::getIteratorIndex — Gets an index of iterators
  • AppendIterator::key — Gets the current key
  • AppendIterator::next — Moves to the next element
  • AppendIterator::rewind — Rewinds the Iterator
  • AppendIterator::valid — Checks validity of the current element
Iterators
AppendIterator::append
Iterators


Appends an iterator

AppendIterator
AppendIterator::__construct
AppendIterator
PHP Manual

AppendIterator::append

(PHP 5 >= 5.1.0)

AppendIterator::append — Appends an iterator

Descrição

public void AppendIterator::append ( Iterator $iterator )

Appends an iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator to append.

Valor Retornado

Não há valor retornado.

Veja Também

  • AppendIterator::__construct() - Constructs an AppendIterator

AppendIterator
AppendIterator::__construct
AppendIterator


Constructs an AppendIterator

AppendIterator::append
AppendIterator::current
AppendIterator
PHP Manual

AppendIterator::__construct

(PHP 5 >= 5.1.0)

AppendIterator::__construct — Constructs an AppendIterator

Descrição

AppendIterator::__construct ( void )

Constructs an AppendIterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • AppendIterator::append() - Appends an iterator

AppendIterator::append
AppendIterator::current
AppendIterator


Gets the current value

AppendIterator::__construct
AppendIterator::getArrayIterator
AppendIterator
PHP Manual

AppendIterator::current

(PHP 5 >= 5.1.0)

AppendIterator::current — Gets the current value

Descrição

public void AppendIterator::current ( void )

Gets the current value.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current value if it is valid or NULL otherwise.

Veja Também

  • AppendIterator::next() - Moves to the next element

AppendIterator::__construct
AppendIterator::getArrayIterator
AppendIterator


The getArrayIterator method

AppendIterator::current
AppendIterator::getInnerIterator
AppendIterator
PHP Manual

AppendIterator::getArrayIterator

(PHP 5 >= 5.1.0)

AppendIterator::getArrayIterator — The getArrayIterator method

Descrição

public void AppendIterator::getArrayIterator ( void )

The getArrayIterator method

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • AppendIterator::getInnerIterator() - Gets an inner iterator

AppendIterator::current
AppendIterator::getInnerIterator
AppendIterator


Gets an inner iterator

AppendIterator::getArrayIterator
AppendIterator::getIteratorIndex
AppendIterator
PHP Manual

AppendIterator::getInnerIterator

(PHP 5 >= 5.1.0)

AppendIterator::getInnerIterator — Gets an inner iterator

Descrição

public void AppendIterator::getInnerIterator ( void )

Get an inner iterator

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current inner Iterator.

Veja Também

  • AppendIterator::getArrayIterator() - The getArrayIterator method

AppendIterator::getArrayIterator
AppendIterator::getIteratorIndex
AppendIterator


Gets an index of iterators

AppendIterator::getInnerIterator
AppendIterator::key
AppendIterator
PHP Manual

AppendIterator::getIteratorIndex

(PHP 5 >= 5.1.0)

AppendIterator::getIteratorIndex — Gets an index of iterators

Descrição

public void AppendIterator::getIteratorIndex ( void )

Get an index of iterators.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The index of iterators.

Veja Também

  • AppendIterator::getInnerIterator() - Gets an inner iterator

AppendIterator::getInnerIterator
AppendIterator::key
AppendIterator


Gets the current key

AppendIterator::getIteratorIndex
AppendIterator::next
AppendIterator
PHP Manual

AppendIterator::key

(PHP 5 >= 5.1.0)

AppendIterator::key — Gets the current key

Descrição

public void AppendIterator::key ( void )

Get the current key

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current key if it is valid or NULL otherwise.

Veja Também

  • AppendIterator::current() - Gets the current value

AppendIterator::getIteratorIndex
AppendIterator::next
AppendIterator


Moves to the next element

AppendIterator::key
AppendIterator::rewind
AppendIterator
PHP Manual

AppendIterator::next

(PHP 5 >= 5.1.0)

AppendIterator::next — Moves to the next element

Descrição

public void AppendIterator::next ( void )

Moves to the next element. If this means to another Iterator then it rewinds that Iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • AppendIterator::rewind() - Rewinds the Iterator

AppendIterator::key
AppendIterator::rewind
AppendIterator


Rewinds the Iterator

AppendIterator::next
AppendIterator::valid
AppendIterator
PHP Manual

AppendIterator::rewind

(PHP 5 >= 5.1.0)

AppendIterator::rewind — Rewinds the Iterator

Descrição

public void AppendIterator::rewind ( void )

Rewind to the first element of the first inner Iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • AppendIterator::next() - Moves to the next element

AppendIterator::next
AppendIterator::valid
AppendIterator


Checks validity of the current element

AppendIterator::rewind
ArrayIterator
AppendIterator
PHP Manual

AppendIterator::valid

(PHP 5 >= 5.1.0)

AppendIterator::valid — Checks validity of the current element

Descrição

public void AppendIterator::valid ( void )

Checks validity of the current element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • AppendIterator::append() - Appends an iterator

AppendIterator::rewind
ArrayIterator
AppendIterator


A classe ArrayIterator

Introdução

Este iterator permite remover e modificar valores e chaves quando iterando arrays e objetos.

Quando você quiser iterar o mesmo array múltiplas vezes você precisa instanciar ArrayObject e criar instâncias de ArrayIterator que é consultado usando foreach ou chamando o método getIterator() manualmente.

Sinopse da classe

ArrayIterator implements Iterator , Traversable , ArrayAccess , SeekableIterator , Countable {
/* Métodos */
public void append ( mixed $value )
public void asort ( void )
__construct ( mixed $array )
public int count ( void )
mixed current ( void )
public array getArrayCopy ( void )
public void getFlags ( void )
mixed key ( void )
public void ksort ( void )
public void natcasesort ( void )
public void natsort ( void )
void next ( void )
public void offsetExists ( string $index )
public mixed offsetGet ( string $index )
public void offsetSet ( string $index , string $newval )
public void offsetUnset ( string $index )
void rewind ( void )
void seek ( int $position )
public string serialize ( void )
public void setFlags ( string $flags )
public void uasort ( string $cmp_function )
public void uksort ( string $cmp_function )
public string unserialize ( string $serialized )
bool valid ( void )
}

Índice

  • ArrayIterator::append — Append an element
  • ArrayIterator::asort — Sort array by values
  • ArrayIterator::__construct — Construct an ArrayIterator
  • ArrayIterator::count — Count elements
  • ArrayIterator::current — Retorna o valor do elemento atual do array
  • ArrayIterator::getArrayCopy — Get array copy
  • ArrayIterator::getFlags — Get flags
  • ArrayIterator::key — Retorna a chave do elemento atual do array
  • ArrayIterator::ksort — Sort array by keys
  • ArrayIterator::natcasesort — Sort an array naturally, case insensitive
  • ArrayIterator::natsort — Sort an array naturally
  • ArrayIterator::next — Avança para o próximo elemento
  • ArrayIterator::offsetExists — Check if offset exists
  • ArrayIterator::offsetGet — Get value for an offset
  • ArrayIterator::offsetSet — Set value for an offset
  • ArrayIterator::offsetUnset — Unset value for an offset
  • ArrayIterator::rewind — Recoloca o array no início
  • ArrayIterator::seek — Aponta para determinada posição
  • ArrayIterator::serialize — Serialize
  • ArrayIterator::setFlags — Set behaviour flags
  • ArrayIterator::uasort — User defined sort
  • ArrayIterator::uksort — User defined sort
  • ArrayIterator::unserialize — Unserialize
  • ArrayIterator::valid — Verifica se o array possui mais elementos
AppendIterator::valid
ArrayIterator::append
Iterators


Append an element

ArrayIterator
ArrayIterator::asort
ArrayIterator
PHP Manual

ArrayIterator::append

(PHP 5 >= 5.0.0)

ArrayIterator::append — Append an element

Descrição

public void ArrayIterator::append ( mixed $value )

Appends value as the last element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

value

The value to append.

Valor Retornado

Não há valor retornado.

Notas

Nota:

This method cannot be called when the ArrayIterator refers to an object.

Veja Também

  • ArrayIterator::next() - Avança para o próximo elemento

ArrayIterator
ArrayIterator::asort
ArrayIterator


Sort array by values

ArrayIterator::append
ArrayIterator::__construct
ArrayIterator
PHP Manual

ArrayIterator::asort

(PHP 5 >= 5.2.0)

ArrayIterator::asort — Sort array by values

Descrição

public void ArrayIterator::asort ( void )

Sorts an array by values.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::ksort() - Sort array by keys
  • ArrayIterator::natcasesort() - Sort an array naturally, case insensitive
  • ArrayIterator::natsort() - Sort an array naturally

ArrayIterator::append
ArrayIterator::__construct
ArrayIterator


Construct an ArrayIterator

ArrayIterator::asort
ArrayIterator::count
ArrayIterator
PHP Manual

ArrayIterator::__construct

(PHP 5 >= 5.0.0)

ArrayIterator::__construct — Construct an ArrayIterator

Descrição

ArrayIterator::__construct ( mixed $array )

Constructs an ArrayIterator object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

array

The array or object to be iterated on.

Valor Retornado

An ArrayIterator object.

Erros

ArrayIterator::__construct() throws an InvalidArgumentException if anything besides an array or an object is given.

Veja Também

  • ArrayIterator::getArrayCopy() - Get array copy

ArrayIterator::asort
ArrayIterator::count
ArrayIterator


Count elements

ArrayIterator::__construct
ArrayIterator::current
ArrayIterator
PHP Manual

ArrayIterator::count

(PHP 5 >= 5.0.0)

ArrayIterator::count — Count elements

Descrição

public int ArrayIterator::count ( void )

Gets the number of elements in the array, or the number of public properties in the object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of elements or public properties in the associated array or object, respectively.

Veja Também

  • ArrayIterator::getFlags() - Get flags

ArrayIterator::__construct
ArrayIterator::current
ArrayIterator


Retorna o valor do elemento atual do array

ArrayIterator::count
ArrayIterator::getArrayCopy
ArrayIterator
PHP Manual

ArrayIterator::current

(PHP 5 >= 5.0.0)

ArrayIterator::current — Retorna o valor do elemento atual do array

Descrição

mixed ArrayIterator::current ( void )

Obtém o atual elemento do array

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O atual elemento do array.

Exemplos

Exemplo #1 Exemplo de ArrayIterator::current()

<?php
$array = array('1' => 'um',
               '2' => 'dois',
               '3' => 'três');

$arrayobject = new ArrayObject($array);

for($iterator = $arrayobject->getIterator();
    $iterator->valid();
    $iterator->next()) {

    echo $iterator->key() . ' => ' . $iterator->current() . "\n";
}
?>

O exemplo acima irá imprimir:

1 => um
2 => dois
3 => três

ArrayIterator::count
ArrayIterator::getArrayCopy
ArrayIterator


Get array copy

ArrayIterator::current
ArrayIterator::getFlags
ArrayIterator
PHP Manual

ArrayIterator::getArrayCopy

(PHP 5 >= 5.0.0)

ArrayIterator::getArrayCopy — Get array copy

Descrição

public array ArrayIterator::getArrayCopy ( void )

Get a copy of an array.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A copy of the array, or array of public properties if ArrayIterator refers to an object.

Veja Também

  • ArrayIterator::valid() - Verifica se o array possui mais elementos

ArrayIterator::current
ArrayIterator::getFlags
ArrayIterator


Get flags

ArrayIterator::getArrayCopy
ArrayIterator::key
ArrayIterator
PHP Manual

ArrayIterator::getFlags

(PHP 5 >= 5.1.0)

ArrayIterator::getFlags — Get flags

Descrição

public void ArrayIterator::getFlags ( void )

Get the current flags.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current flags.

Veja Também

  • ArrayIterator::valid() - Verifica se o array possui mais elementos

ArrayIterator::getArrayCopy
ArrayIterator::key
ArrayIterator


Retorna a chave do elemento atual do array

ArrayIterator::getFlags
ArrayIterator::ksort
ArrayIterator
PHP Manual

ArrayIterator::key

(PHP 5 >= 5.0.0)

ArrayIterator::key — Retorna a chave do elemento atual do array

Descrição

mixed ArrayIterator::key ( void )

Esta função retorna a chave do elemento atual do array

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A chave do atual elemento do array.

Exemplos

Exemplo #1 Exemplo de ArrayIterator::key()

<?php
$array = array('key' => 'value');

$arrayobject = new ArrayObject($array);
$iterator = $arrayobject->getIterator();

echo $iterator->key(); //key
?>

ArrayIterator::getFlags
ArrayIterator::ksort
ArrayIterator


Sort array by keys

ArrayIterator::key
ArrayIterator::natcasesort
ArrayIterator
PHP Manual

ArrayIterator::ksort

(PHP 5 >= 5.2.0)

ArrayIterator::ksort — Sort array by keys

Descrição

public void ArrayIterator::ksort ( void )

Sorts an array by the keys.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::asort() - Sort array by values
  • ArrayIterator::natcasesort() - Sort an array naturally, case insensitive
  • ArrayIterator::natsort() - Sort an array naturally

ArrayIterator::key
ArrayIterator::natcasesort
ArrayIterator


Sort an array naturally, case insensitive

ArrayIterator::ksort
ArrayIterator::natsort
ArrayIterator
PHP Manual

ArrayIterator::natcasesort

(PHP 5 >= 5.2.0)

ArrayIterator::natcasesort — Sort an array naturally, case insensitive

Descrição

public void ArrayIterator::natcasesort ( void )

Sort the entries by values using a case insensitive "natural order" algorithm.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::asort() - Sort array by values
  • ArrayIterator::ksort() - Sort array by keys
  • ArrayIterator::natsort() - Sort an array naturally
  • natcasesort() - Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas

ArrayIterator::ksort
ArrayIterator::natsort
ArrayIterator


Sort an array naturally

ArrayIterator::natcasesort
ArrayIterator::next
ArrayIterator
PHP Manual

ArrayIterator::natsort

(PHP 5 >= 5.2.0)

ArrayIterator::natsort — Sort an array naturally

Descrição

public void ArrayIterator::natsort ( void )

Sort the entries by values using "natural order" algorithm.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::asort() - Sort array by values
  • ArrayIterator::ksort() - Sort array by keys
  • ArrayIterator::natcasesort() - Sort an array naturally, case insensitive
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"

ArrayIterator::natcasesort
ArrayIterator::next
ArrayIterator


Avança para o próximo elemento

ArrayIterator::natsort
ArrayIterator::offsetExists
ArrayIterator
PHP Manual

ArrayIterator::next

(PHP 5 >= 5.0.0)

ArrayIterator::next — Avança para o próximo elemento

Descrição

void ArrayIterator::next ( void )

O iterador para o próximo elemento do array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo de ArrayIterator::next()

<?php
$arrayobject = new ArrayObject();

$arrayobject[] = 'zero';
$arrayobject[] = 'um';

$iterator = $arrayobject->getIterator();

while($iterator->valid()) {
    echo $iterator->key() . ' => ' . $iterator->current() . "\n";

    $iterator->next();
}
?>

O exemplo acima irá imprimir:

0 => zero
1 => um

ArrayIterator::natsort
ArrayIterator::offsetExists
ArrayIterator


Check if offset exists

ArrayIterator::next
ArrayIterator::offsetGet
ArrayIterator
PHP Manual

ArrayIterator::offsetExists

(PHP 5 >= 5.0.0)

ArrayIterator::offsetExists — Check if offset exists

Descrição

public void ArrayIterator::offsetExists ( string $index )

Checks if the offset exists.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The offset being checked.

Valor Retornado

TRUE if the offset exists, otherwise FALSE

Veja Também

  • ArrayIterator::valid() - Verifica se o array possui mais elementos

ArrayIterator::next
ArrayIterator::offsetGet
ArrayIterator


Get value for an offset

ArrayIterator::offsetExists
ArrayIterator::offsetSet
ArrayIterator
PHP Manual

ArrayIterator::offsetGet

(PHP 5 >= 5.0.0)

ArrayIterator::offsetGet — Get value for an offset

Descrição

public mixed ArrayIterator::offsetGet ( string $index )

Gets the value from the provided offset.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The offset to get the value from.

Valor Retornado

The value at offset index.

Veja Também

  • ArrayIterator::offsetSet() - Set value for an offset
  • ArrayIterator::offsetUnset() - Unset value for an offset

ArrayIterator::offsetExists
ArrayIterator::offsetSet
ArrayIterator


Set value for an offset

ArrayIterator::offsetGet
ArrayIterator::offsetUnset
ArrayIterator
PHP Manual

ArrayIterator::offsetSet

(PHP 5 >= 5.0.0)

ArrayIterator::offsetSet — Set value for an offset

Descrição

public void ArrayIterator::offsetSet ( string $index , string $newval )

Sets a value for a given offset.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The index to set for.

newval

The new value to store at the index.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::offSetGet() - Get value for an offset
  • ArrayIterator::offSetUnset() - Unset value for an offset

ArrayIterator::offsetGet
ArrayIterator::offsetUnset
ArrayIterator


Unset value for an offset

ArrayIterator::offsetSet
ArrayIterator::rewind
ArrayIterator
PHP Manual

ArrayIterator::offsetUnset

(PHP 5 >= 5.0.0)

ArrayIterator::offsetUnset — Unset value for an offset

Descrição

public void ArrayIterator::offsetUnset ( string $index )

Unsets a value for an offset.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The offset to unset.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::offSetGet() - Get value for an offset
  • ArrayIterator::offSetSet() - Set value for an offset

ArrayIterator::offsetSet
ArrayIterator::rewind
ArrayIterator


Recoloca o array no início

ArrayIterator::offsetUnset
ArrayIterator::seek
ArrayIterator
PHP Manual

ArrayIterator::rewind

(PHP 5 >= 5.0.0)

ArrayIterator::rewind — Recoloca o array no início

Descrição

void ArrayIterator::rewind ( void )

Esta função recoloca o iterador no início do array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo de ArrayIterator::rewind()

<?php
$arrayobject = new ArrayObject();

$arrayobject[] = 'zero';
$arrayobject[] = 'um';
$arrayobject[] = 'dois';

$iterator = $arrayobject->getIterator();

$iterator->next();
echo $iterator->key(); //1

$iterator->rewind(); //retornando ao início
echo $iterator->key(); //0
?>

ArrayIterator::offsetUnset
ArrayIterator::seek
ArrayIterator


Aponta para determinada posição

ArrayIterator::rewind
ArrayIterator::serialize
ArrayIterator
PHP Manual

ArrayIterator::seek

(PHP 5 >= 5.0.0)

ArrayIterator::seek — Aponta para determinada posição

Descrição

void ArrayIterator::seek ( int $position )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

position

A posição para qual quer apontar.

Valor Retornado

Não há valor retornado.

ArrayIterator::rewind
ArrayIterator::serialize
ArrayIterator


Serialize

ArrayIterator::seek
ArrayIterator::setFlags
ArrayIterator
PHP Manual

ArrayIterator::serialize

(PHP 5 >= 5.3.0)

ArrayIterator::serialize — Serialize

Descrição

public string ArrayIterator::serialize ( void )

Serialize.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The serialized ArrayIterator.

Veja Também

  • ArrayIterator::unserialize() - Unserialize

ArrayIterator::seek
ArrayIterator::setFlags
ArrayIterator


Set behaviour flags

ArrayIterator::serialize
ArrayIterator::uasort
ArrayIterator
PHP Manual

ArrayIterator::setFlags

(PHP 5 >= 5.1.0)

ArrayIterator::setFlags — Set behaviour flags

Descrição

public void ArrayIterator::setFlags ( string $flags )

Sets behaviour flags.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flags

A bitmask as follows:

  • 0 = Properties of the object have their normal functionality when accessed as list (var_dump, foreach, etc.).
  • 1 = Array indices can be accessed as properties in read/write.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::getFlags() - Get flags

ArrayIterator::serialize
ArrayIterator::uasort
ArrayIterator


User defined sort

ArrayIterator::setFlags
ArrayIterator::uksort
ArrayIterator
PHP Manual

ArrayIterator::uasort

(PHP 5 >= 5.2.0)

ArrayIterator::uasort — User defined sort

Descrição

public void ArrayIterator::uasort ( string $cmp_function )

Sort the entries by values using user defined function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

cmp_function

The compare function used for the sort.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::uksort() - User defined sort
  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário

ArrayIterator::setFlags
ArrayIterator::uksort
ArrayIterator


User defined sort

ArrayIterator::uasort
ArrayIterator::unserialize
ArrayIterator
PHP Manual

ArrayIterator::uksort

(PHP 5 >= 5.2.0)

ArrayIterator::uksort — User defined sort

Descrição

public void ArrayIterator::uksort ( string $cmp_function )

Sort the entries by key using user defined function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

cmp_function

The compare function used for the sort.

Valor Retornado

Não há valor retornado.

Veja Também

  • ArrayIterator::uasort() - User defined sort
  • uksort() - Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.

ArrayIterator::uasort
ArrayIterator::unserialize
ArrayIterator


Unserialize

ArrayIterator::uksort
ArrayIterator::valid
ArrayIterator
PHP Manual

ArrayIterator::unserialize

(PHP 5 >= 5.3.0)

ArrayIterator::unserialize — Unserialize

Descrição

public string ArrayIterator::unserialize ( string $serialized )

Unserialize.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

serialized

The serialized ArrayIterator object to be unserialized.

Valor Retornado

The ArrayIterator.

Veja Também

  • ArrayIterator::serialize() - Serialize

ArrayIterator::uksort
ArrayIterator::valid
ArrayIterator


Verifica se o array possui mais elementos

ArrayIterator::unserialize
CachingIterator
ArrayIterator
PHP Manual

ArrayIterator::valid

(PHP 5 >= 5.0.0)

ArrayIterator::valid — Verifica se o array possui mais elementos

Descrição

bool ArrayIterator::valid ( void )

Verifica se o array possui mais algum elemento.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo de ArrayIterator::valid()

<?php
$array = array('1' => 'um');

$arrayobject = new ArrayObject($array);
$iterator = $arrayobject->getIterator();

var_dump($iterator->valid()); //bool(true)

$iterator->next(); // avança para o próximo item

//bool(false) porque só existe um único elemento no array
var_dump($iterator->valid());
?>

ArrayIterator::unserialize
CachingIterator
ArrayIterator


A classe CachingIterator

Introdução

...

Sinopse da classe

CachingIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator , ArrayAccess , Countable {
/* Métodos */
__construct ( Iterator $iterator [, string $flags ] )
public int count ( void )
public void current ( void )
public void getCache ( void )
public void getFlags ( void )
public void getInnerIterator ( void )
bool hasNext ( void )
public void key ( void )
void next ( void )
public void offsetExists ( string $index )
public void offsetGet ( string $index )
public void offsetSet ( string $index , string $newval )
public void offsetUnset ( string $index )
void rewind ( void )
public void setFlags ( bitmask $flags )
string __toString ( void )
bool valid ( void )
}

Índice

  • CachingIterator::__construct — Construct a new CachingIterator object for the iterator.
  • CachingIterator::count — The number of elements in the iterator
  • CachingIterator::current — Return the current element
  • CachingIterator::getCache — The getCache purpose
  • CachingIterator::getFlags — Get flags used
  • CachingIterator::getInnerIterator — Return the innter iterator
  • CachingIterator::hasNext — Verifica se o iterador interno tem ou não um próximo elemento válido
  • CachingIterator::key — Return the key for the current element
  • CachingIterator::next — Avança o iterador
  • CachingIterator::offsetExists — The offsetExists purpose
  • CachingIterator::offsetGet — The offsetGet purpose
  • CachingIterator::offsetSet — The offsetSet purpose
  • CachingIterator::offsetUnset — The offsetUnset purpose
  • CachingIterator::rewind — Recomeça o iterador
  • CachingIterator::setFlags — The setFlags purpose
  • CachingIterator::__toString — Retorna a representação como string do elemento atual
  • CachingIterator::valid — Verifica se o elemento atual é válido ou não
ArrayIterator::valid
CachingIterator::__construct
Iterators


Construct a new CachingIterator object for the iterator.

CachingIterator
CachingIterator::count
CachingIterator
PHP Manual

CachingIterator::__construct

(PHP 5)

CachingIterator::__construct — Construct a new CachingIterator object for the iterator.

Descrição

CachingIterator::__construct ( Iterator $iterator [, string $flags ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

Iterator to cache

flags

Bitmask of flags.

CachingIterator
CachingIterator::count
CachingIterator


The number of elements in the iterator

CachingIterator::__construct
CachingIterator::current
CachingIterator
PHP Manual

CachingIterator::count

(PHP 5 >= 5.2.2)

CachingIterator::count — The number of elements in the iterator

Descrição

public int CachingIterator::count ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

May return the number of elements in the iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The count of the elements iterated over.

CachingIterator::__construct
CachingIterator::current
CachingIterator


Return the current element

CachingIterator::count
CachingIterator::getCache
CachingIterator
PHP Manual

CachingIterator::current

(PHP 5)

CachingIterator::current — Return the current element

Descrição

public void CachingIterator::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

May return the current element in the iteration.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Mixed

Veja Também

  • Iterator::current() - Return the current element

CachingIterator::count
CachingIterator::getCache
CachingIterator


The getCache purpose

CachingIterator::current
CachingIterator::getFlags
CachingIterator
PHP Manual

CachingIterator::getCache

(PHP 5 >= 5.2.0)

CachingIterator::getCache — The getCache purpose

Descrição

public void CachingIterator::getCache ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

CachingIterator::current
CachingIterator::getFlags
CachingIterator


Get flags used

CachingIterator::getCache
CachingIterator::getInnerIterator
CachingIterator
PHP Manual

CachingIterator::getFlags

(PHP 5 >= 5.2.0)

CachingIterator::getFlags — Get flags used

Descrição

public void CachingIterator::getFlags ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Get the bitmask of the flags used for this CachingIterator instance.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Description...

CachingIterator::getCache
CachingIterator::getInnerIterator
CachingIterator


Return the innter iterator

CachingIterator::getFlags
CachingIterator::hasNext
CachingIterator
PHP Manual

CachingIterator::getInnerIterator

(PHP 5)

CachingIterator::getInnerIterator — Return the innter iterator

Descrição

public void CachingIterator::getInnerIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the iterator sent to the constructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an object implementing the Iterator interface.

CachingIterator::getFlags
CachingIterator::hasNext
CachingIterator


Verifica se o iterador interno tem ou não um próximo elemento válido

CachingIterator::getInnerIterator
CachingIterator::key
CachingIterator
PHP Manual

CachingIterator::hasNext

(PHP 5)

CachingIterator::hasNext — Verifica se o iterador interno tem ou não um próximo elemento válido

Descrição

bool CachingIterator::hasNext ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

CachingIterator::getInnerIterator
CachingIterator::key
CachingIterator


Return the key for the current element

CachingIterator::hasNext
CachingIterator::next
CachingIterator
PHP Manual

CachingIterator::key

(PHP 5)

CachingIterator::key — Return the key for the current element

Descrição

public void CachingIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

This method may return a key for the current element.

Parâmetros

Esta função não contém parâmetros.

CachingIterator::hasNext
CachingIterator::next
CachingIterator


Avança o iterador

CachingIterator::key
CachingIterator::offsetExists
CachingIterator
PHP Manual

CachingIterator::next

(PHP 5)

CachingIterator::next — Avança o iterador

Descrição

void CachingIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Move o iterador à frente.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

CachingIterator::key
CachingIterator::offsetExists
CachingIterator


The offsetExists purpose

CachingIterator::next
CachingIterator::offsetGet
CachingIterator
PHP Manual

CachingIterator::offsetExists

(PHP 5 >= 5.2.0)

CachingIterator::offsetExists — The offsetExists purpose

Descrição

public void CachingIterator::offsetExists ( string $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The index being checked.

Valor Retornado

Returns TRUE if an entry referenced by the offset exists, FALSE otherwise.

CachingIterator::next
CachingIterator::offsetGet
CachingIterator


The offsetGet purpose

CachingIterator::offsetExists
CachingIterator::offsetSet
CachingIterator
PHP Manual

CachingIterator::offsetGet

(PHP 5 >= 5.2.0)

CachingIterator::offsetGet — The offsetGet purpose

Descrição

public void CachingIterator::offsetGet ( string $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

Description...

Valor Retornado

Description...

CachingIterator::offsetExists
CachingIterator::offsetSet
CachingIterator


The offsetSet purpose

CachingIterator::offsetGet
CachingIterator::offsetUnset
CachingIterator
PHP Manual

CachingIterator::offsetSet

(PHP 5 >= 5.2.0)

CachingIterator::offsetSet — The offsetSet purpose

Descrição

public void CachingIterator::offsetSet ( string $index , string $newval )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The index of the element to be set.

newval

The new value for the index.

Valor Retornado

Não há valor retornado.

CachingIterator::offsetGet
CachingIterator::offsetUnset
CachingIterator


The offsetUnset purpose

CachingIterator::offsetSet
CachingIterator::rewind
CachingIterator
PHP Manual

CachingIterator::offsetUnset

(PHP 5 >= 5.2.0)

CachingIterator::offsetUnset — The offsetUnset purpose

Descrição

public void CachingIterator::offsetUnset ( string $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

The index of the element to be unset.

Valor Retornado

Não há valor retornado.

CachingIterator::offsetSet
CachingIterator::rewind
CachingIterator


Recomeça o iterador

CachingIterator::offsetUnset
CachingIterator::setFlags
CachingIterator
PHP Manual

CachingIterator::rewind

(PHP 5)

CachingIterator::rewind — Recomeça o iterador

Descrição

void CachingIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Recomeça o iterador.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

CachingIterator::offsetUnset
CachingIterator::setFlags
CachingIterator


The setFlags purpose

CachingIterator::rewind
CachingIterator::__toString
CachingIterator
PHP Manual

CachingIterator::setFlags

(PHP 5 >= 5.2.0)

CachingIterator::setFlags — The setFlags purpose

Descrição

public void CachingIterator::setFlags ( bitmask $flags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Set the flags for the CachingIterator object.

Parâmetros

flags

Bitmask of the flags to set.

Valor Retornado

Não há valor retornado.

CachingIterator::rewind
CachingIterator::__toString
CachingIterator


Retorna a representação como string do elemento atual

CachingIterator::setFlags
CachingIterator::valid
CachingIterator
PHP Manual

CachingIterator::__toString

(PHP 5)

CachingIterator::__toString — Retorna a representação como string do elemento atual

Descrição

string CachingIterator::__toString ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém a representação string do elemento atual.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A representação string do elemento atual.

CachingIterator::setFlags
CachingIterator::valid
CachingIterator


Verifica se o elemento atual é válido ou não

CachingIterator::__toString
DirectoryIterator
CachingIterator
PHP Manual

CachingIterator::valid

(PHP 5)

CachingIterator::valid — Verifica se o elemento atual é válido ou não

Descrição

bool CachingIterator::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se o atual elemento é válido.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

CachingIterator::__toString
DirectoryIterator
CachingIterator


A classe DirectoryIterator

Introdução

...

Sinopse da classe

DirectoryIterator extends SplFileInfo implements Iterator , Traversable {
/* Métodos */
__construct ( string $path )
DirectoryIterator current ( void )
int getATime ( void )
public string getBasename ([ string $suffix ] )
int getCTime ( void )
string getFilename ( void )
int getGroup ( void )
int getInode ( void )
int getMTime ( void )
int getOwner ( void )
string getPath ( void )
string getPathname ( void )
int getPerms ( void )
int getSize ( void )
string getType ( void )
bool isDir ( void )
bool isDot ( void )
bool isExecutable ( void )
bool isFile ( void )
bool isLink ( void )
bool isReadable ( void )
bool isWritable ( void )
string key ( void )
void next ( void )
void rewind ( void )
public void seek ( int $position )
public string __toString ( void )
string valid ( void )
}

Índice

  • DirectoryIterator::__construct — Constrói um novo iterador de diretório a partir de um caminho
  • DirectoryIterator::current — Retorna $this (necessário para a interface Iterator)
  • DirectoryIterator::getATime — Retorna a data de último acesso do arquivo
  • DirectoryIterator::getBasename — Get base name of current DirectoryIterator item.
  • DirectoryIterator::getCTime — Retorna a data de modificação do inode do arquivo
  • DirectoryIterator::getFilename — Retorna o nome do arquivo do elemento atual do diretÃ³rio
  • DirectoryIterator::getGroup — Retorna o grupo do arquivo
  • DirectoryIterator::getInode — Retorna o inode do arquivo
  • DirectoryIterator::getMTime — Retorna a data da última modificação do arquivo
  • DirectoryIterator::getOwner — Retorna o proprietÃ¡rio do arquivo
  • DirectoryIterator::getPath — Retorna o caminho do diretório
  • DirectoryIterator::getPathname — Retorna o caminho e o nome do arquivo do elemento atual do diretório
  • DirectoryIterator::getPerms — Retorna as permissões do arquivo
  • DirectoryIterator::getSize — Retorna o tamanho do arquivo
  • DirectoryIterator::getType — Retorna o tipo do arquivo
  • DirectoryIterator::isDir — Retorna true se o elemento atual é um diretório
  • DirectoryIterator::isDot — Retorna true se o elemento atual for '.' ou '..'
  • DirectoryIterator::isExecutable — Retorna true se o arquivo for executável
  • DirectoryIterator::isFile — Retorna true se o elemento atual for um arquivo
  • DirectoryIterator::isLink — Retorna true se o elemento atual for um link simbólico
  • DirectoryIterator::isReadable — Retorna true se o arquivo pode ser lido
  • DirectoryIterator::isWritable — Retorna true se o arquivo pode ser modificado
  • DirectoryIterator::key — Retorna o elemento atual do diretório
  • DirectoryIterator::next — Avança para o próximo elemento
  • DirectoryIterator::rewind — Recomeça a iteração do diretório
  • DirectoryIterator::seek — Seek to a DirectoryIterator item
  • DirectoryIterator::__toString — Get file name as a string
  • DirectoryIterator::valid — Verifica se o diretório possui ou não mais elementos
CachingIterator::valid
DirectoryIterator::__construct
Iterators


Constrói um novo iterador de diretório a partir de um caminho

DirectoryIterator
DirectoryIterator::current
DirectoryIterator
PHP Manual

DirectoryIterator::__construct

(PHP 5)

DirectoryIterator::__construct — Constrói um novo iterador de diretório a partir de um caminho

Descrição

DirectoryIterator::__construct() ( string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Constructs a new dir iterator from a path.

Parâmetros

path

O caminho.

Valor Retornado

Não há valor retornado.

DirectoryIterator
DirectoryIterator::current
DirectoryIterator


Retorna $this (necessário para a interface Iterator)

DirectoryIterator::__construct
DirectoryIterator::getATime
DirectoryIterator
PHP Manual

DirectoryIterator::current

(PHP 5)

DirectoryIterator::current — Retorna $this (necessário para a interface Iterator)

Descrição

DirectoryIterator DirectoryIterator::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna $this (necessário para interface Iterator).

DirectoryIterator::__construct
DirectoryIterator::getATime
DirectoryIterator


Retorna a data de último acesso do arquivo

DirectoryIterator::current
DirectoryIterator::getBasename
DirectoryIterator
PHP Manual

DirectoryIterator::getATime

(PHP 5)

DirectoryIterator::getATime — Retorna a data de último acesso do arquivo

Descrição

int DirectoryIterator::getATime ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o último tempo de acesso ao arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O último tempo de acesso ao arquivo.

DirectoryIterator::current
DirectoryIterator::getBasename
DirectoryIterator


Get base name of current DirectoryIterator item.

DirectoryIterator::getATime
DirectoryIterator::getCTime
DirectoryIterator
PHP Manual

DirectoryIterator::getBasename

(PHP 5 >= 5.2.2)

DirectoryIterator::getBasename — Get base name of current DirectoryIterator item.

Descrição

public string DirectoryIterator::getBasename ([ string $suffix ] )

Get the base name of the current DirectoryIterator item.

Parâmetros

suffix

If the base name ends in suffix, this will be cut.

Valor Retornado

The base name of the current DirectoryIterator item.

Exemplos

Exemplo #1 A DirectoryIterator::getBasename() example

This example will list the full base name and the base name with suffix .jpg removed for the files in the directory containing the script.

<?php
$dir = new DirectoryIterator(dirname(__FILE__));
foreach ($dir as $fileinfo) {
    if ($fileinfo->isFile()) {
        echo $fileinfo->getBasename() . "\n";
        echo $fileinfo->getBasename('.jpg') . "\n";
    }
}
?>

O exemplo acima irá imprimir algo similar a:

apple.jpg
apple
banana.jpg
banana
index.php
index.php
pear.jpg
pear

Veja Também

  • DirectoryIterator::getFilename() - Retorna o nome do arquivo do elemento atual do diretÃ³rio
  • DirectoryIterator::getPath() - Retorna o caminho do diretório
  • DirectoryIterator::getPathname() - Retorna o caminho e o nome do arquivo do elemento atual do diretório
  • basename() - Retorna a parte nome do arquivo do caminho/path
  • pathinfo() - Retorna informações sobre um caminho de arquivo

DirectoryIterator::getATime
DirectoryIterator::getCTime
DirectoryIterator


Retorna a data de modificação do inode do arquivo

DirectoryIterator::getBasename
DirectoryIterator::getFilename
DirectoryIterator
PHP Manual

DirectoryIterator::getCTime

(PHP 5)

DirectoryIterator::getCTime — Retorna a data de modificação do inode do arquivo

Descrição

int DirectoryIterator::getCTime ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém a data de modificação de inode do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A última data de modifição do arquivo.

DirectoryIterator::getBasename
DirectoryIterator::getFilename
DirectoryIterator


Retorna o nome do arquivo do elemento atual do diretÃ³rio

DirectoryIterator::getCTime
DirectoryIterator::getGroup
DirectoryIterator
PHP Manual

DirectoryIterator::getFilename

(PHP 5)

DirectoryIterator::getFilename — Retorna o nome do arquivo do elemento atual do diretÃ³rio

Descrição

string DirectoryIterator::getFilename ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ObtÃ©m o nome do arquivo do elemento atual do diretÃ³rio.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O nome do arquivo do elemento atual do diretÃ³rio.

DirectoryIterator::getCTime
DirectoryIterator::getGroup
DirectoryIterator


Retorna o grupo do arquivo

DirectoryIterator::getFilename
DirectoryIterator::getInode
DirectoryIterator
PHP Manual

DirectoryIterator::getGroup

(PHP 5)

DirectoryIterator::getGroup — Retorna o grupo do arquivo

Descrição

int DirectoryIterator::getGroup ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o grupo do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O grupo do arquivo.

DirectoryIterator::getFilename
DirectoryIterator::getInode
DirectoryIterator


Retorna o inode do arquivo

DirectoryIterator::getGroup
DirectoryIterator::getMTime
DirectoryIterator
PHP Manual

DirectoryIterator::getInode

(PHP 5)

DirectoryIterator::getInode — Retorna o inode do arquivo

Descrição

int DirectoryIterator::getInode ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o inode do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O inode do arquivo.

DirectoryIterator::getGroup
DirectoryIterator::getMTime
DirectoryIterator


Retorna a data da última modificação do arquivo

DirectoryIterator::getInode
DirectoryIterator::getOwner
DirectoryIterator
PHP Manual

DirectoryIterator::getMTime

(PHP 5)

DirectoryIterator::getMTime — Retorna a data da última modificação do arquivo

Descrição

int DirectoryIterator::getMTime ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém a data de última modificação do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A data de última modificação do arquivo.

DirectoryIterator::getInode
DirectoryIterator::getOwner
DirectoryIterator


Retorna o proprietÃ¡rio do arquivo

DirectoryIterator::getMTime
DirectoryIterator::getPath
DirectoryIterator
PHP Manual

DirectoryIterator::getOwner

(PHP 5)

DirectoryIterator::getOwner — Retorna o proprietÃ¡rio do arquivo

Descrição

int DirectoryIterator::getOwner ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ObtÃ©m o proprietÃ¡rio do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O proprietÃ¡rio do arquivo.

DirectoryIterator::getMTime
DirectoryIterator::getPath
DirectoryIterator


Retorna o caminho do diretório

DirectoryIterator::getOwner
DirectoryIterator::getPathname
DirectoryIterator
PHP Manual

DirectoryIterator::getPath

(PHP 5)

DirectoryIterator::getPath — Retorna o caminho do diretório

Descrição

string DirectoryIterator::getPath ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o caminho do diretório.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O caminho do diretório.

DirectoryIterator::getOwner
DirectoryIterator::getPathname
DirectoryIterator


Retorna o caminho e o nome do arquivo do elemento atual do diretório

DirectoryIterator::getPath
DirectoryIterator::getPerms
DirectoryIterator
PHP Manual

DirectoryIterator::getPathname

(PHP 5)

DirectoryIterator::getPathname — Retorna o caminho e o nome do arquivo do elemento atual do diretório

Descrição

string DirectoryIterator::getPathname ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o caminho e nome do arquivo do elemento atual do diretório.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O caminho e nome do arquivo do elemento do diretório.

DirectoryIterator::getPath
DirectoryIterator::getPerms
DirectoryIterator


Retorna as permissões do arquivo

DirectoryIterator::getPathname
DirectoryIterator::getSize
DirectoryIterator
PHP Manual

DirectoryIterator::getPerms

(PHP 5)

DirectoryIterator::getPerms — Retorna as permissões do arquivo

Descrição

int DirectoryIterator::getPerms ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém as permissões do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

As permissões do arquivo.

DirectoryIterator::getPathname
DirectoryIterator::getSize
DirectoryIterator


Retorna o tamanho do arquivo

DirectoryIterator::getPerms
DirectoryIterator::getType
DirectoryIterator
PHP Manual

DirectoryIterator::getSize

(PHP 5)

DirectoryIterator::getSize — Retorna o tamanho do arquivo

Descrição

int DirectoryIterator::getSize ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o tamanho do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O tamanho do arquivo.

DirectoryIterator::getPerms
DirectoryIterator::getType
DirectoryIterator


Retorna o tipo do arquivo

DirectoryIterator::getSize
DirectoryIterator::isDir
DirectoryIterator
PHP Manual

DirectoryIterator::getType

(PHP 5)

DirectoryIterator::getType — Retorna o tipo do arquivo

Descrição

string DirectoryIterator::getType ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o tipo do arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O tipo do arquivo.

DirectoryIterator::getSize
DirectoryIterator::isDir
DirectoryIterator


Retorna true se o elemento atual é um diretório

DirectoryIterator::getType
DirectoryIterator::isDot
DirectoryIterator
PHP Manual

DirectoryIterator::isDir

(PHP 5)

DirectoryIterator::isDir — Retorna true se o elemento atual é um diretório

Descrição

bool DirectoryIterator::isDir ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se o arquivo é um diretório.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se é um diretório, FALSE caso contrário

DirectoryIterator::getType
DirectoryIterator::isDot
DirectoryIterator


Retorna true se o elemento atual for '.' ou '..'

DirectoryIterator::isDir
DirectoryIterator::isExecutable
DirectoryIterator
PHP Manual

DirectoryIterator::isDot

(PHP 5)

DirectoryIterator::isDot — Retorna true se o elemento atual for '.' ou '..'

Descrição

bool DirectoryIterator::isDot ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se é um diretório e também . ou ...

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se a entrada é . ou .., FALSE caso contrário

DirectoryIterator::isDir
DirectoryIterator::isExecutable
DirectoryIterator


Retorna true se o arquivo for executável

DirectoryIterator::isDot
DirectoryIterator::isFile
DirectoryIterator
PHP Manual

DirectoryIterator::isExecutable

(PHP 5)

DirectoryIterator::isExecutable — Retorna true se o arquivo for executável

Descrição

bool DirectoryIterator::isExecutable ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se o arquivo é executável.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se a entrada é executável, FALSE caso contrário

DirectoryIterator::isDot
DirectoryIterator::isFile
DirectoryIterator


Retorna true se o elemento atual for um arquivo

DirectoryIterator::isExecutable
DirectoryIterator::isLink
DirectoryIterator
PHP Manual

DirectoryIterator::isFile

(PHP 5)

DirectoryIterator::isFile — Retorna true se o elemento atual for um arquivo

Descrição

bool DirectoryIterator::isFile ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se é um arquivo.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se a entrada é um arquivo, FALSE caso contrário

DirectoryIterator::isExecutable
DirectoryIterator::isLink
DirectoryIterator


Retorna true se o elemento atual for um link simbólico

DirectoryIterator::isFile
DirectoryIterator::isReadable
DirectoryIterator
PHP Manual

DirectoryIterator::isLink

(PHP 5)

DirectoryIterator::isLink — Retorna true se o elemento atual for um link simbólico

Descrição

bool DirectoryIterator::isLink ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se a entrada é um link simbólico.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se a entrada é um link simbólico, FALSE caso contrário

DirectoryIterator::isFile
DirectoryIterator::isReadable
DirectoryIterator


Retorna true se o arquivo pode ser lido

DirectoryIterator::isLink
DirectoryIterator::isWritable
DirectoryIterator
PHP Manual

DirectoryIterator::isReadable

(PHP 5)

DirectoryIterator::isReadable — Retorna true se o arquivo pode ser lido

Descrição

bool DirectoryIterator::isReadable ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se a entrada pode ser lida.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se o arquivo pode ser lido, FALSE caso contrário

DirectoryIterator::isLink
DirectoryIterator::isWritable
DirectoryIterator


Retorna true se o arquivo pode ser modificado

DirectoryIterator::isReadable
DirectoryIterator::key
DirectoryIterator
PHP Manual

DirectoryIterator::isWritable

(PHP 5)

DirectoryIterator::isWritable — Retorna true se o arquivo pode ser modificado

Descrição

bool DirectoryIterator::isWritable ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se a entrada pode ser modificada.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se o arquivo pode ser escrito, FALSE caso contrário

DirectoryIterator::isReadable
DirectoryIterator::key
DirectoryIterator


Retorna o elemento atual do diretório

DirectoryIterator::isWritable
DirectoryIterator::next
DirectoryIterator
PHP Manual

DirectoryIterator::key

(PHP 5)

DirectoryIterator::key — Retorna o elemento atual do diretório

Descrição

string DirectoryIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o elemento atual do diretório.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O elemento atual do diretório.

DirectoryIterator::isWritable
DirectoryIterator::next
DirectoryIterator


Avança para o próximo elemento

DirectoryIterator::key
DirectoryIterator::rewind
DirectoryIterator
PHP Manual

DirectoryIterator::next

(PHP 5)

DirectoryIterator::next — Avança para o próximo elemento

Descrição

void DirectoryIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Move para o próximo elemento.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

DirectoryIterator::key
DirectoryIterator::rewind
DirectoryIterator


Recomeça a iteração do diretório

DirectoryIterator::next
DirectoryIterator::seek
DirectoryIterator
PHP Manual

DirectoryIterator::rewind

(PHP 5)

DirectoryIterator::rewind — Recomeça a iteração do diretório

Descrição

void DirectoryIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Recomeça a iteração do diretório.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

DirectoryIterator::next
DirectoryIterator::seek
DirectoryIterator


Seek to a DirectoryIterator item

DirectoryIterator::rewind
DirectoryIterator::__toString
DirectoryIterator
PHP Manual

DirectoryIterator::seek

(PHP 5 >= 5.3.0)

DirectoryIterator::seek — Seek to a DirectoryIterator item

Descrição

public void DirectoryIterator::seek ( int $position )

Seek to a given position in the DirectoryIterator.

Parâmetros

position

The zero-based numeric position to seek to.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 DirectoryIterator::seek() example

Seek to the fourth item in the directory containing the script. The first two are usually . and ..

<?php
$iterator = new DirectoryIterator(dirname(__FILE__));
$iterator->seek(3);
if ($iterator->valid()) {
    echo $iterator->getFilename();
} else {
    echo 'No file at position 3';
}
?>

Veja Também

  • DirectoryIterator::rewind() - Recomeça a iteração do diretório
  • DirectoryIterator::next() - Avança para o próximo elemento
  • SeekableIterator::seek() - Seeks to a position

DirectoryIterator::rewind
DirectoryIterator::__toString
DirectoryIterator


Get file name as a string

DirectoryIterator::seek
DirectoryIterator::valid
DirectoryIterator
PHP Manual

DirectoryIterator::__toString

(PHP 5)

DirectoryIterator::__toString — Get file name as a string

Descrição

public string DirectoryIterator::__toString ( void )

Get the file name of the current DirectoryIterator item.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the file name of the current DirectoryIterator item.

Exemplos

Exemplo #1 A DirectoryIterator::__toString() example

This example will list the contents of the directory containing the script.

<?php
$dir = new DirectoryIterator(dirname(__FILE__));
foreach ($dir as $fileinfo) {
    echo $fileinfo;
}
?>

O exemplo acima irá imprimir algo similar a:

.
..
apple.jpg
banana.jpg
index.php
pear.jpg

Veja Também

  • DirectoryIterator::getFilename() - Retorna o nome do arquivo do elemento atual do diretÃ³rio
  • The __toString magic method

DirectoryIterator::seek
DirectoryIterator::valid
DirectoryIterator


Verifica se o diretório possui ou não mais elementos

DirectoryIterator::__toString
EmptyIterator
DirectoryIterator
PHP Manual

DirectoryIterator::valid

(PHP 5)

DirectoryIterator::valid — Verifica se o diretório possui ou não mais elementos

Descrição

string DirectoryIterator::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se o diretório contém mais elementos.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

DirectoryIterator::__toString
EmptyIterator
DirectoryIterator


The EmptyIterator class

Introdução

The EmptyIterator class for an empty iterator.

Sinopse da classe

EmptyIterator implements Iterator , Traversable {
/* Methods */
public void current ( void )
public void key ( void )
public void next ( void )
public void rewind ( void )
public void valid ( void )
}

Índice

  • EmptyIterator::current — The current() method
  • EmptyIterator::key — The key() method
  • EmptyIterator::next — The next() method
  • EmptyIterator::rewind — The rewind() method
  • EmptyIterator::valid — The valid() method
DirectoryIterator::valid
EmptyIterator::current
Iterators


The current() method

EmptyIterator
EmptyIterator::key
EmptyIterator
PHP Manual

EmptyIterator::current

(PHP 5 >= 5.1.0)

EmptyIterator::current — The current() method

Descrição

public void EmptyIterator::current ( void )

This function must not be called. It throws an exception upon access.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Erros

Throws an Exception if called.

Valor Retornado

Não há valor retornado.

EmptyIterator
EmptyIterator::key
EmptyIterator


The key() method

EmptyIterator::current
EmptyIterator::next
EmptyIterator
PHP Manual

EmptyIterator::key

(PHP 5 >= 5.1.0)

EmptyIterator::key — The key() method

Descrição

public void EmptyIterator::key ( void )

This function must not be called. It throws an exception upon access.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Erros

Throws an Exception if called.

Valor Retornado

Não há valor retornado.

EmptyIterator::current
EmptyIterator::next
EmptyIterator


The next() method

EmptyIterator::key
EmptyIterator::rewind
EmptyIterator
PHP Manual

EmptyIterator::next

(PHP 5 >= 5.1.0)

EmptyIterator::next — The next() method

Descrição

public void EmptyIterator::next ( void )

No operation, nothing to do.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

EmptyIterator::key
EmptyIterator::rewind
EmptyIterator


The rewind() method

EmptyIterator::next
EmptyIterator::valid
EmptyIterator
PHP Manual

EmptyIterator::rewind

(PHP 5 >= 5.1.0)

EmptyIterator::rewind — The rewind() method

Descrição

public void EmptyIterator::rewind ( void )

No operation, nothing to do.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

EmptyIterator::next
EmptyIterator::valid
EmptyIterator


The valid() method

EmptyIterator::rewind
FilesystemIterator
EmptyIterator
PHP Manual

EmptyIterator::valid

(PHP 5 >= 5.1.0)

EmptyIterator::valid — The valid() method

Descrição

public void EmptyIterator::valid ( void )

The EmptyIterator valid() method.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

FALSE

EmptyIterator::rewind
FilesystemIterator
EmptyIterator


The FilesystemIterator class

Introdução

The Filesystem iterator

Sinopse da classe

FilesystemIterator extends DirectoryIterator implements SeekableIterator , Traversable , Iterator {
/* Constants */
const integer FilesystemIterator::CURRENT_AS_PATHNAME = 32 ;
const integer FilesystemIterator::CURRENT_AS_FILEINFO = 0 ;
const integer FilesystemIterator::CURRENT_AS_SELF = 16 ;
const integer FilesystemIterator::CURRENT_MODE_MASK = 240 ;
const integer FilesystemIterator::KEY_AS_PATHNAME = 0 ;
const integer FilesystemIterator::KEY_AS_FILENAME = 256 ;
const integer FilesystemIterator::FOLLOW_SYMLINKS = 512 ;
const integer FilesystemIterator::KEY_MODE_MASK = 3840 ;
const integer FilesystemIterator::NEW_CURRENT_AND_KEY = 256 ;
const integer FilesystemIterator::SKIP_DOTS = 4096 ;
const integer FilesystemIterator::UNIX_PATHS = 8192 ;
/* Methods */
__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS ] )
public mixed current ( void )
public int getFlags ( void )
public string key ( void )
public void next ( void )
public void rewind ( void )
public void setFlags ([ int $flags ] )
/* Inherited methods */
DirectoryIterator DirectoryIterator::current ( void )
int DirectoryIterator::getATime ( void )
public string DirectoryIterator::getBasename ([ string $suffix ] )
int DirectoryIterator::getCTime ( void )
string DirectoryIterator::getFilename ( void )
int DirectoryIterator::getGroup ( void )
int DirectoryIterator::getInode ( void )
int DirectoryIterator::getMTime ( void )
int DirectoryIterator::getOwner ( void )
string DirectoryIterator::getPath ( void )
string DirectoryIterator::getPathname ( void )
int DirectoryIterator::getPerms ( void )
int DirectoryIterator::getSize ( void )
string DirectoryIterator::getType ( void )
bool DirectoryIterator::isDir ( void )
bool DirectoryIterator::isDot ( void )
bool DirectoryIterator::isExecutable ( void )
bool DirectoryIterator::isFile ( void )
bool DirectoryIterator::isLink ( void )
bool DirectoryIterator::isReadable ( void )
bool DirectoryIterator::isWritable ( void )
string DirectoryIterator::key ( void )
void DirectoryIterator::next ( void )
void DirectoryIterator::rewind ( void )
public void DirectoryIterator::seek ( int $position )
public string DirectoryIterator::__toString ( void )
string DirectoryIterator::valid ( void )
}

Constantes pré-definidas

FilesystemIterator::CURRENT_AS_PATHNAME

Makes FilesystemIterator::current() return the pathname.

FilesystemIterator::CURRENT_AS_FILEINFO

Makes FilesystemIterator::current() return an SplFileInfo instance.

FilesystemIterator::CURRENT_AS_SELF

Makes FilesystemIterator::current() return $this (the FilesystemIterator).

FilesystemIterator::CURRENT_MODE_MASK

Masks FilesystemIterator::current()

FilesystemIterator::KEY_AS_PATHNAME

Makes FilesystemIterator::key() return the pathname.

FilesystemIterator::KEY_AS_FILENAME

Makes FilesystemIterator::key() return the filename.

FilesystemIterator::FOLLOW_SYMLINKS

Makes RecursiveDirectoryIterator::hasChildren() follow symlinks.

FilesystemIterator::KEY_MODE_MASK

Masks FilesystemIterator::key()

FilesystemIterator::NEW_CURRENT_AND_KEY

Same as FilesystemIterator::KEY_AS_FILENAME | FilesystemIterator::CURRENT_AS_FILEINFO.

FilesystemIterator::SKIP_DOTS

Skips dot files (. and ..).

FilesystemIterator::UNIX_PATHS

Makes paths use Unix-style forward slash irrespective of system default.

Histórico

Versão | Descrição
5.3.1 | Added FilesystemIterator::FOLLOW_SYMLINKS

Índice

  • FilesystemIterator::__construct — Constructs a new filesystem iterator
  • FilesystemIterator::current — The current file
  • FilesystemIterator::getFlags — Get the handling flags
  • FilesystemIterator::key — Retrieve the key for the current file
  • FilesystemIterator::next — Move to the next file
  • FilesystemIterator::rewind — Rewinds back to the beginning
  • FilesystemIterator::setFlags — Sets handling flags
EmptyIterator::valid
FilesystemIterator::__construct
Iterators


Constructs a new filesystem iterator

FilesystemIterator
FilesystemIterator::current
FilesystemIterator
PHP Manual

FilesystemIterator::__construct

(PHP 5 >= 5.3.0)

FilesystemIterator::__construct — Constructs a new filesystem iterator

Descrição

FilesystemIterator::__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS ] )

Constructs a new filesystem iterator from the path.

Parâmetros

path

The path of the filesystem item to be iterated over.

flags

Flags may be provided which will affect the behavior of some methods. A list of the flags can found under FilesystemIterator predefined constants. They can also be set later with FilesystemIterator::setFlags()

Valor Retornado

Não há valor retornado.

Erros

Throws an UnexpectedValueException if the path cannot be found.

Exemplos

Exemplo #1 FilesystemIterator::__construct() example

<?php
$it = new FilesystemIterator(dirname(__FILE__));
foreach ($it as $fileinfo) {
    echo $fileinfo->getFilename() . "\n";
}
?>

O exemplo acima irá imprimir:

apples.jpg
banana.jpg
example.php

Veja Também

  • FilesystemIterator::setFlags() - Sets handling flags
  • DirectoryIterator::__construct() - Constrói um novo iterador de diretório a partir de um caminho

FilesystemIterator
FilesystemIterator::current
FilesystemIterator


The current file

FilesystemIterator::__construct
FilesystemIterator::getFlags
FilesystemIterator
PHP Manual

FilesystemIterator::current

(PHP 5 >= 5.3.0)

FilesystemIterator::current — The current file

Descrição

public mixed FilesystemIterator::current ( void )

Get file information of the current element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The filename, file information, or $this depending on the set flags. See the FilesystemIterator constants.

Exemplos

Exemplo #1 FilesystemIterator::current() example

This example will list the contents of the directory containing the script.

<?php
$iterator = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::CURRENT_AS_PATHNAME);
foreach ($iterator as $fileinfo) {
    echo $iterator->current() . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

/www/examples/apple.jpg
/www/examples/banana.jpg
/www/examples/example.php

Veja Também

  • FilesystemIterator constants
  • DirectoryIterator::current() - Retorna $this (necessário para a interface Iterator)
  • DirectoryIterator::getFileName() - Retorna o nome do arquivo do elemento atual do diretÃ³rio

FilesystemIterator::__construct
FilesystemIterator::getFlags
FilesystemIterator


Get the handling flags

FilesystemIterator::current
FilesystemIterator::key
FilesystemIterator
PHP Manual

FilesystemIterator::getFlags

(PHP 5 >= 5.3.0)

FilesystemIterator::getFlags — Get the handling flags

Descrição

public int FilesystemIterator::getFlags ( void )

Gets the handling flags, as set in FilesystemIterator::__construct() or FilesystemIterator::setFlags().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The integer value of the set flags.

Veja Também

  • FilesystemIterator::__construct() - Constructs a new filesystem iterator
  • FilesystemIterator::setFlags() - Sets handling flags

FilesystemIterator::current
FilesystemIterator::key
FilesystemIterator


Retrieve the key for the current file

FilesystemIterator::getFlags
FilesystemIterator::next
FilesystemIterator
PHP Manual

FilesystemIterator::key

(PHP 5 >= 5.3.0)

FilesystemIterator::key — Retrieve the key for the current file

Descrição

public string FilesystemIterator::key ( void )

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the pathname or filename depending on the set flags. See the FilesystemIterator constants.

Exemplos

Exemplo #1 FilesystemIterator::key() example

This example will list the contents of the directory containing the script.

<?php
$iterator = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::KEY_AS_FILENAME);
foreach ($iterator as $fileinfo) {
    echo $iterator->key() . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

apple.jpg
banana.jpg
example.php

Veja Também

  • FilesystemIterator constants
  • DirectoryIterator::key() - Retorna o elemento atual do diretório
  • DirectoryIterator::getFilename() - Retorna o nome do arquivo do elemento atual do diretÃ³rio
  • DirectoryIterator::getPathname() - Retorna o caminho e o nome do arquivo do elemento atual do diretório

FilesystemIterator::getFlags
FilesystemIterator::next
FilesystemIterator


Move to the next file

FilesystemIterator::key
FilesystemIterator::rewind
FilesystemIterator
PHP Manual

FilesystemIterator::next

(PHP 5 >= 5.3.0)

FilesystemIterator::next — Move to the next file

Descrição

public void FilesystemIterator::next ( void )

Move to the next file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 FilesystemIterator::next() example

List the contents of a directory using a while loop.

<?php
$iterator = new FilesystemIterator(dirname(__FILE__));
while($iterator->valid()) {
    echo $iterator->getFilename() . "\n";
    $iterator->next();
}
?>

O exemplo acima irá imprimir algo similar a:

apple.jpg
banana.jpg
example.php

Veja Também

  • DirectoryIterator::next() - Avança para o próximo elemento

FilesystemIterator::key
FilesystemIterator::rewind
FilesystemIterator


Rewinds back to the beginning

FilesystemIterator::next
FilesystemIterator::setFlags
FilesystemIterator
PHP Manual

FilesystemIterator::rewind

(PHP 5 >= 5.3.0)

FilesystemIterator::rewind — Rewinds back to the beginning

Descrição

public void FilesystemIterator::rewind ( void )

Rewinds the directory back to the start.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 FilesystemIterator::rewind() example

<?php
$iterator = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::KEY_AS_FILENAME);

echo $iterator->key() . "\n";

$iterator->next();
echo $iterator->key() . "\n";

$iterator->rewind();
echo $iterator->key() . "\n";
?>

O exemplo acima irá imprimir algo similar a:

apple.jpg
banana.jpg
apple.jpg

Veja Também

  • DirectoryIterator::rewind() - Recomeça a iteração do diretório

FilesystemIterator::next
FilesystemIterator::setFlags
FilesystemIterator


Sets handling flags

FilesystemIterator::rewind
FilterIterator
FilesystemIterator
PHP Manual

FilesystemIterator::setFlags

(PHP 5 >= 5.3.0)

FilesystemIterator::setFlags — Sets handling flags

Descrição

public void FilesystemIterator::setFlags ([ int $flags ] )

Sets handling flags.

Parâmetros

flags

The handling flags to set. See the FilesystemIterator constants.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 FilesystemIterator::key() example

This example demonstrates the difference between the FilesystemIterator::KEY_AS_PATHNAME and FilesystemIterator::KEY_AS_FILENAME flags.

<?php
$iterator = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::KEY_AS_PATHNAME);
echo "Key as Pathname:\n";
foreach ($iterator as $key => $fileinfo) {
    echo $key . "\n";
}

$iterator->setFlags(FilesystemIterator::KEY_AS_FILENAME);
echo "\nKey as Filename:\n";
foreach ($iterator as $key => $fileinfo) {
    echo $key . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Key as Pathname:
/www/examples/apple.jpg
/www/examples/banana.jpg
/www/examples/example.php

Key as Filename:
apple.jpg
banana.jpg
example.php

Veja Também

  • FilesystemIterator::__construct() - Constructs a new filesystem iterator
  • FilesystemIterator::getFlags() - Get the handling flags

FilesystemIterator::rewind
FilterIterator
FilesystemIterator


A classe FilterIterator

Introdução

...

Sinopse da classe

abstract FilterIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator {
/* Métodos */
abstract bool accept ( void )
__construct ( Iterator $iterator )
mixed current ( void )
Iterator getInnerIterator ( void )
mixed key ( void )
void next ( void )
void rewind ( void )
bool valid ( void )
}

Índice

  • FilterIterator::accept — Check whether the current element of the iterator is acceptable
  • FilterIterator::__construct — Construct a filterIterator
  • FilterIterator::current — Retorna o valor do elemento atual
  • FilterIterator::getInnerIterator — Retorna o iterador interno
  • FilterIterator::key — Retorna a chave do elemento atual
  • FilterIterator::next — Avança o iterador
  • FilterIterator::rewind — Recomeça o iterador
  • FilterIterator::valid — Verifica se o elemento atual é válido ou não
FilesystemIterator::setFlags
FilterIterator::accept
Iterators


Check whether the current element of the iterator is acceptable

FilterIterator
FilterIterator::__construct
FilterIterator
PHP Manual

FilterIterator::accept

(PHP 5 >= 5.1.0)

FilterIterator::accept — Check whether the current element of the iterator is acceptable

Descrição

abstract bool FilterIterator::accept ( void )

Returns whether the current element of the iterator is acceptable through this filter.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the current element is acceptable, otherwise FALSE.

Exemplos

Exemplo #1 FilterIterator::accept() example

<?php
// This iterator filters all values with less than 10 characters
class LengthFilterIterator extends FilterIterator {

    public function accept() {
        // Only accept strings with a length of 10 and greater
        return strlen(parent::current()) > 10;
    }

}

$arrayIterator = new ArrayIterator(array('test1', 'more than 10 characters'));
$lengthFilter = new LengthFilterIterator($arrayIterator);

foreach ($lengthFilter as $value) {
    echo $value . "\n";
}
?>

O exemplo acima irá imprimir:

more than 10 characters

FilterIterator
FilterIterator::__construct
FilterIterator


Construct a filterIterator

FilterIterator::accept
FilterIterator::current
FilterIterator
PHP Manual

FilterIterator::__construct

(PHP 5 >= 5.1.0)

FilterIterator::__construct — Construct a filterIterator

Descrição

FilterIterator::__construct ( Iterator $iterator )

Constructs a new FilterIterator, which consists of a passed in iterator with filters applied to it.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator that is being filtered.

Valor Retornado

The FilterIterator.

Veja Também

  • LimitIterator::__construct() - Construct a LimitIterator

FilterIterator::accept
FilterIterator::current
FilterIterator


Retorna o valor do elemento atual

FilterIterator::__construct
FilterIterator::getInnerIterator
FilterIterator
PHP Manual

FilterIterator::current

(PHP 5 >= 5.1.0)

FilterIterator::current — Retorna o valor do elemento atual

Descrição

mixed FilterIterator::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o valor do atual elemento.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O valor do elemento atual.

Veja Também

  • FilterIterator::key() - Retorna a chave do elemento atual
  • FilterIterator::next() - Avança o iterador

FilterIterator::__construct
FilterIterator::getInnerIterator
FilterIterator


Retorna o iterador interno

FilterIterator::current
FilterIterator::key
FilterIterator
PHP Manual

FilterIterator::getInnerIterator

(PHP 5 >= 5.1.0)

FilterIterator::getInnerIterator — Retorna o iterador interno

Descrição

Iterator FilterIterator::getInnerIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém o iterador interno.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O iterador interno.

FilterIterator::current
FilterIterator::key
FilterIterator


Retorna a chave do elemento atual

FilterIterator::getInnerIterator
FilterIterator::next
FilterIterator
PHP Manual

FilterIterator::key

(PHP 5 >= 5.1.0)

FilterIterator::key — Retorna a chave do elemento atual

Descrição

mixed FilterIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Obtém a chave atual.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A chave atual.

Veja Também

  • FilterIterator::next() - Avança o iterador
  • FilterIterator::current() - Retorna o valor do elemento atual

FilterIterator::getInnerIterator
FilterIterator::next
FilterIterator


Avança o iterador

FilterIterator::key
FilterIterator::rewind
FilterIterator
PHP Manual

FilterIterator::next

(PHP 5 >= 5.1.0)

FilterIterator::next — Avança o iterador

Descrição

void FilterIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Avança o iterador.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • FilterIterator::current() - Retorna o valor do elemento atual
  • FilterIterator::next()

FilterIterator::key
FilterIterator::rewind
FilterIterator


Recomeça o iterador

FilterIterator::next
FilterIterator::valid
FilterIterator
PHP Manual

FilterIterator::rewind

(PHP 5 >= 5.1.0)

FilterIterator::rewind — Recomeça o iterador

Descrição

void FilterIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Recomeça o iterador.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • FilterIterator::current() - Retorna o valor do elemento atual
  • FilterIterator::key() - Retorna a chave do elemento atual
  • FilterIterator::next() - Avança o iterador

FilterIterator::next
FilterIterator::valid
FilterIterator


Verifica se o elemento atual é válido ou não

FilterIterator::rewind
GlobIterator
FilterIterator
PHP Manual

FilterIterator::valid

(PHP 5 >= 5.1.0)

FilterIterator::valid — Verifica se o elemento atual é válido ou não

Descrição

bool FilterIterator::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Verifica se o elemento atual é válido.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se o elemento atual é válido, FALSE caso contrário

FilterIterator::rewind
GlobIterator
FilterIterator


The GlobIterator class

Introdução

Iterates through a file system in a similar fashion to glob().

Sinopse da classe

GlobIterator extends FilesystemIterator implements Iterator , Traversable , SeekableIterator , Countable {
/* Methods */
__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO ] )
public int count ( void )
/* Inherited methods */
FilesystemIterator::__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS ] )
public mixed FilesystemIterator::current ( void )
public int FilesystemIterator::getFlags ( void )
public string FilesystemIterator::key ( void )
public void FilesystemIterator::next ( void )
public void FilesystemIterator::rewind ( void )
public void FilesystemIterator::setFlags ([ int $flags ] )
}

Índice

  • GlobIterator::__construct — Construct a directory using glob
  • GlobIterator::count — Get the number of directories and files
FilterIterator::valid
GlobIterator::__construct
Iterators


Construct a directory using glob

GlobIterator
GlobIterator::count
GlobIterator
PHP Manual

GlobIterator::__construct

(PHP 5 >= 5.3.0)

GlobIterator::__construct — Construct a directory using glob

Descrição

GlobIterator::__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO ] )

Constructs a new directory iterator from a glob expression.

Parâmetros

path

The path of the directory.

flags

Option flags, the flags may be a bitmask of the FilesystemIterator constants.

Exemplos

Exemplo #1 GlobIterator example

<?php
$iterator = new GlobIterator('*.dll', FilesystemIterator::KEY_AS_FILENAME);

if(!$iterator->count())
{
    echo 'No matches';
}
else
{
    $n = 0;

    printf("Matched %d item(s)\r\n", $iterator->count());

    foreach($iterator as $item)
    {
        printf("[%d] %s\r\n", ++$n, $iterator->key());
    }
}
?>

O exemplo acima irá imprimir algo similar a:

Matched 2 item(s)
[1] php5ts.dll
[2] php_gd2.dll

Veja Também

  • DirectoryIterator::__construct() - Constrói um novo iterador de diretório a partir de um caminho
  • GlobIterator::count() - Get the number of directories and files
  • glob() - Acha caminhos que combinam com um padrão

GlobIterator
GlobIterator::count
GlobIterator


Get the number of directories and files

GlobIterator::__construct
InfiniteIterator
GlobIterator
PHP Manual

GlobIterator::count

(PHP 5 >= 5.3.0)

GlobIterator::count — Get the number of directories and files

Descrição

public int GlobIterator::count ( void )

Gets the number of directories and files found by the glob expression.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of returned directories and files, as an integer.

Exemplos

Exemplo #1 GlobIterator::count() example

<?php
$iterator = new GlobIterator('*.xml');

printf("Matched %d item(s)\r\n", $iterator->count());
?>

O exemplo acima irá imprimir algo similar a:

Matched 8 item(s)

Veja Também

  • GlobIterator::__construct() - Construct a directory using glob
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto
  • glob() - Acha caminhos que combinam com um padrão

GlobIterator::__construct
InfiniteIterator
GlobIterator


The InfiniteIterator class

Introdução

The InfiniteIterator allows one to infinitely iterate over an iterator without having to manually rewind the iterator upon reaching its end.

Sinopse da classe

InfiniteIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator {
/* Methods */
__construct ( Iterator $iterator )
public void next ( void )
/* Inherited methods */
IteratorIterator::__construct ( Traversable $iterator )
public void IteratorIterator::current ( void )
public void IteratorIterator::getInnerIterator ( void )
public void IteratorIterator::key ( void )
public void IteratorIterator::next ( void )
public void IteratorIterator::rewind ( void )
public bool IteratorIterator::valid ( void )
}

Índice

  • InfiniteIterator::__construct — Constructs an InfiniteIterator
  • InfiniteIterator::next — Moves the inner Iterator forward or rewinds it
GlobIterator::count
InfiniteIterator::__construct
Iterators


Constructs an InfiniteIterator

InfiniteIterator
InfiniteIterator::next
InfiniteIterator
PHP Manual

InfiniteIterator::__construct

(PHP 5 >= 5.1.0)

InfiniteIterator::__construct — Constructs an InfiniteIterator

Descrição

InfiniteIterator::__construct ( Iterator $iterator )

Constructs an InfiniteIterator from an Iterator.

Parâmetros

iterator

The iterator to infinitely iterate over.

Valor Retornado

Não há valor retornado.

Erros

Throws an E_RECOVERABLE_ERROR if the iterator parameter is not an Iterator.

Exemplos

Exemplo #1 InfiniteIterator::__construct() example

<?php
$arrayit  = new ArrayIterator(array('cat','dog'));
$infinite = new InfiniteIterator($arrayit);
$limit    = new LimitIterator($infinite, 0, 7);
foreach($limit as $value)
{
    echo "$value\n";
}
?>

O exemplo acima irá imprimir:

cat
dog
cat
dog
cat
dog
cat

Veja Também

  • InfiniteIterator::next() - Moves the inner Iterator forward or rewinds it

InfiniteIterator
InfiniteIterator::next
InfiniteIterator


Moves the inner Iterator forward or rewinds it

InfiniteIterator::__construct
IteratorIterator
InfiniteIterator
PHP Manual

InfiniteIterator::next

(PHP 5 >= 5.1.0)

InfiniteIterator::next — Moves the inner Iterator forward or rewinds it

Descrição

public void InfiniteIterator::next ( void )

Moves the inner Iterator forward to its next element if there is one, otherwise rewinds the inner Iterator back to the beginning.

Nota:

Even an InfiniteIterator stops if its inner Iterator is empty.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • InfiniteIterator::__construct() - Constructs an InfiniteIterator

InfiniteIterator::__construct
IteratorIterator
InfiniteIterator


The IteratorIterator class

Introdução

This iterator wrapper allows the conversion of anything that is Traversable into an Iterator. It is important to understand that most classes that do not implement Iterators have reasons as most likely they do not allow the full Iterator feature set. If so, techniques should be provided to prevent misuse, otherwise expect exceptions or fatal errors.

Sinopse da classe

IteratorIterator implements Iterator , Traversable , OuterIterator {
/* Methods */
__construct ( Traversable $iterator )
public void current ( void )
public void getInnerIterator ( void )
public void key ( void )
public void next ( void )
public void rewind ( void )
public bool valid ( void )
}

Índice

  • IteratorIterator::__construct — Create an iterator from anything that is traversable
  • IteratorIterator::current — Get the current value
  • IteratorIterator::getInnerIterator — Get the inner iterator
  • IteratorIterator::key — Get the key of the current element
  • IteratorIterator::next — Forward to the next element
  • IteratorIterator::rewind — Rewind to the first element
  • IteratorIterator::valid — Checks if the iterator is valid
InfiniteIterator::next
IteratorIterator::__construct
Iterators


Create an iterator from anything that is traversable

IteratorIterator
IteratorIterator::current
IteratorIterator
PHP Manual

IteratorIterator::__construct

(PHP 5 >= 5.1.0)

IteratorIterator::__construct — Create an iterator from anything that is traversable

Descrição

IteratorIterator::__construct ( Traversable $iterator )

Creates an iterator from anything that is traversable.

Parâmetros

iterator

The traversable iterator.

Valor Retornado

Não há valor retornado.

Veja Também

  • Traversable

IteratorIterator
IteratorIterator::current
IteratorIterator


Get the current value

IteratorIterator::__construct
IteratorIterator::getInnerIterator
IteratorIterator
PHP Manual

IteratorIterator::current

(PHP 5 >= 5.1.0)

IteratorIterator::current — Get the current value

Descrição

public void IteratorIterator::current ( void )

Get the value of the current element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The value of the current element.

Veja Também

  • IteratorIterator::key() - Get the key of the current element

IteratorIterator::__construct
IteratorIterator::getInnerIterator
IteratorIterator


Get the inner iterator

IteratorIterator::current
IteratorIterator::key
IteratorIterator
PHP Manual

IteratorIterator::getInnerIterator

(PHP 5 >= 5.1.0)

IteratorIterator::getInnerIterator — Get the inner iterator

Descrição

public void IteratorIterator::getInnerIterator ( void )

Get the inner iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The inner iterator as passed to IteratorIterator::__construct().

Veja Também

  • Iterator
  • OuterIterator

IteratorIterator::current
IteratorIterator::key
IteratorIterator


Get the key of the current element

IteratorIterator::getInnerIterator
IteratorIterator::next
IteratorIterator
PHP Manual

IteratorIterator::key

(PHP 5 >= 5.1.0)

IteratorIterator::key — Get the key of the current element

Descrição

public void IteratorIterator::key ( void )

Get the key of the current element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The key of the current element.

Veja Também

  • IteratorIterator::current() - Get the current value

IteratorIterator::getInnerIterator
IteratorIterator::next
IteratorIterator


Forward to the next element

IteratorIterator::key
IteratorIterator::rewind
IteratorIterator
PHP Manual

IteratorIterator::next

(PHP 5 >= 5.1.0)

IteratorIterator::next — Forward to the next element

Descrição

public void IteratorIterator::next ( void )

Forward to the next element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • IteratorIterator::rewind() - Rewind to the first element
  • IteratorIterator::valid() - Checks if the iterator is valid

IteratorIterator::key
IteratorIterator::rewind
IteratorIterator


Rewind to the first element

IteratorIterator::next
IteratorIterator::valid
IteratorIterator
PHP Manual

IteratorIterator::rewind

(PHP 5 >= 5.1.0)

IteratorIterator::rewind — Rewind to the first element

Descrição

public void IteratorIterator::rewind ( void )

Rewinds to the first element.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • IteratorIterator::next() - Forward to the next element
  • IteratorIterator::valid() - Checks if the iterator is valid

IteratorIterator::next
IteratorIterator::valid
IteratorIterator


Checks if the iterator is valid

IteratorIterator::rewind
LimitIterator
IteratorIterator
PHP Manual

IteratorIterator::valid

(PHP 5 >= 5.1.0)

IteratorIterator::valid — Checks if the iterator is valid

Descrição

public bool IteratorIterator::valid ( void )

Checks if the iterator is valid.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the iterator is valid, otherwise FALSE

Veja Também

  • iterator_count() - Conta o número de elementos do iterador
  • IteratorIterator::current() - Get the current value

IteratorIterator::rewind
LimitIterator
IteratorIterator


A classe LimitIterator

Introdução

...

Sinopse da classe

LimitIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator {
/* Métodos */
__construct ( Iterator $iterator [, int $offset = 0 [, int $count = -1 ]] )
public mixed current ( void )
public Iterator getInnerIterator ( void )
int getPosition ( void )
public mixed key ( void )
void next ( void )
void rewind ( void )
void seek ( int $position )
bool valid ( void )
}

Exemplos

Exemplo #1 LimitIterator usage example

<?php

// Create an iterator to be limited
$fruits = new ArrayIterator(array(
    'apple',
    'banana',
    'cherry',
    'damson',
    'elderberry'
));

// Loop over first three fruits only
foreach (new LimitIterator($fruits, 0, 3) as $fruit) {
    var_dump($fruit);
}

echo "\n";

// Loop from third fruit until the end
// Note: offset starts from zero for apple
foreach (new LimitIterator($fruits, 2) as $fruit) {
    var_dump($fruit);
}

?>

O exemplo acima irá imprimir:

string(5) "apple"
string(6) "banana"
string(6) "cherry"

string(6) "cherry"
string(6) "damson"
string(10) "elderberry"

Índice

  • LimitIterator::__construct — Construct a LimitIterator
  • LimitIterator::current — Get current element
  • LimitIterator::getInnerIterator — Get inner iterator
  • LimitIterator::getPosition — Retorna a posição atual
  • LimitIterator::key — Get current key
  • LimitIterator::next — Avança o iterador
  • LimitIterator::rewind — Retorna o iterador para o começo especificado no construtor
  • LimitIterator::seek — Aponta para a posição especificada
  • LimitIterator::valid — Verifica se o elemento atual é válido ou não
IteratorIterator::valid
LimitIterator::__construct
Iterators


Construct a LimitIterator

LimitIterator
LimitIterator::current
LimitIterator
PHP Manual

LimitIterator::__construct

(PHP 5 >= 5.1.0)

LimitIterator::__construct — Construct a LimitIterator

Descrição

LimitIterator::__construct ( Iterator $iterator [, int $offset = 0 [, int $count = -1 ]] )

Constructs a new LimitIterator from an iterator with a given starting offset and maximum count.

Parâmetros

iterator

The Iterator to limit.

offset

Optional offset of the limit.

count

Optional count of the limit.

Valor Retornado

The new LimitIterator.

Erros

Throws an OutOfRangeException if the offset is less than 0 or the count is less than -1.

Exemplos

Exemplo #1 LimitIterator::__construct() example

<?php
$ait = new ArrayIterator(array('a', 'b', 'c', 'd', 'e'));
$lit = new LimitIterator($ait, 1, 3);
foreach ($lit as $value) {
    echo $value . "\n";
}
?>

O exemplo acima irá imprimir:

b
c
d

Veja Também

  • LimitIterator examples

LimitIterator
LimitIterator::current
LimitIterator


Get current element

LimitIterator::__construct
LimitIterator::getInnerIterator
LimitIterator
PHP Manual

LimitIterator::current

(PHP 5 >= 5.1.0)

LimitIterator::current — Get current element

Descrição

public mixed LimitIterator::current ( void )

Gets the current element of the inner Iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current element or NULL if there is none.

Veja Também

  • LimitIterator::key() - Get current key
  • LimitIterator::next() - Avança o iterador
  • LimitIterator::rewind() - Retorna o iterador para o começo especificado no construtor
  • LimitIterator::seek() - Aponta para a posição especificada
  • LimitIterator::valid() - Verifica se o elemento atual é válido ou não

LimitIterator::__construct
LimitIterator::getInnerIterator
LimitIterator


Get inner iterator

LimitIterator::current
LimitIterator::getPosition
LimitIterator
PHP Manual

LimitIterator::getInnerIterator

(PHP 5 >= 5.1.0)

LimitIterator::getInnerIterator — Get inner iterator

Descrição

public Iterator LimitIterator::getInnerIterator ( void )

Gets the inner Iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The inner iterator passed to LimitIterator::__construct().

Veja Também

  • LimitIterator::__construct() - Construct a LimitIterator
  • IteratorIterator::getInnerIterator() - Get the inner iterator

LimitIterator::current
LimitIterator::getPosition
LimitIterator


Retorna a posição atual

LimitIterator::getInnerIterator
LimitIterator::key
LimitIterator
PHP Manual

LimitIterator::getPosition

(PHP 5 >= 5.1.0)

LimitIterator::getPosition — Retorna a posição atual

Descrição

int LimitIterator::getPosition ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A posição atual.

LimitIterator::getInnerIterator
LimitIterator::key
LimitIterator


Get current key

LimitIterator::getPosition
LimitIterator::next
LimitIterator
PHP Manual

LimitIterator::key

(PHP 5 >= 5.1.0)

LimitIterator::key — Get current key

Descrição

public mixed LimitIterator::key ( void )

Gets the key for the current item in the inner Iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the key for the current item.

Veja Também

  • LimitIterator::getPosition() - Retorna a posição atual
  • LimitIterator::current() - Get current element
  • LimitIterator::next() - Avança o iterador
  • LimitIterator::rewind() - Retorna o iterador para o começo especificado no construtor
  • LimitIterator::seek() - Aponta para a posição especificada
  • LimitIterator::valid() - Verifica se o elemento atual é válido ou não

LimitIterator::getPosition
LimitIterator::next
LimitIterator


Avança o iterador

LimitIterator::key
LimitIterator::rewind
LimitIterator
PHP Manual

LimitIterator::next

(PHP 5 >= 5.1.0)

LimitIterator::next — Avança o iterador

Descrição

void LimitIterator::next ( void )

Avança o iterador.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

LimitIterator::key
LimitIterator::rewind
LimitIterator


Retorna o iterador para o começo especificado no construtor

LimitIterator::next
LimitIterator::seek
LimitIterator
PHP Manual

LimitIterator::rewind

(PHP 5 >= 5.1.0)

LimitIterator::rewind — Retorna o iterador para o começo especificado no construtor

Descrição

void LimitIterator::rewind ( void )

Retorna o iterador para o começo especificado no construtor.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

LimitIterator::next
LimitIterator::seek
LimitIterator


Aponta para a posição especificada

LimitIterator::rewind
LimitIterator::valid
LimitIterator
PHP Manual

LimitIterator::seek

(PHP 5 >= 5.1.0)

LimitIterator::seek — Aponta para a posição especificada

Descrição

void LimitIterator::seek ( int $position )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

position

A posição a ser procurada.

Valor Retornado

Não há valor retornado.

LimitIterator::rewind
LimitIterator::valid
LimitIterator


Verifica se o elemento atual é válido ou não

LimitIterator::seek
MultipleIterator
LimitIterator
PHP Manual

LimitIterator::valid

(PHP 5 >= 5.1.0)

LimitIterator::valid — Verifica se o elemento atual é válido ou não

Descrição

bool LimitIterator::valid ( void )

Verifica se o elemento atual é válido ou não.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

LimitIterator::seek
MultipleIterator
LimitIterator


The MultipleIterator class

Introdução

An Iterator that iterates over several iterators one after the other.

Sinopse da classe

MultipleIterator implements Iterator , Traversable {
/* Constants */
const integer MultipleIterator::MIT_NEED_ANY = 0 ;
const integer MultipleIterator::MIT_NEED_ALL = 1 ;
const integer MultipleIterator::MIT_KEYS_NUMERIC = 0 ;
const integer MultipleIterator::MIT_KEYS_ASSOC = 2 ;
/* Methods */
public void attachIterator ( Iterator $iterator [, string $infos ] )
__construct ( int $flags )
public void containsIterator ( Iterator $iterator )
public void countIterators ( void )
public void current ( void )
public void detachIterator ( Iterator $iterator )
public void getFlags ( void )
public void key ( void )
public void next ( void )
public void rewind ( void )
public void setFlags ( int $flags )
public void valid ( void )
}

Constantes pré-definidas

MultipleIterator Node Types

MultipleIterator::MIT_NEED_ANY

Do not require all sub iterators to be valid in iteration.

MultipleIterator::MIT_NEED_ALL

Require all sub iterators to be valid in iteration.

MultipleIterator::MIT_KEYS_NUMERIC

Keys are created from the sub iterators position.

MultipleIterator::MIT_KEYS_ASSOC

Keys are created from sub iterators associated information.

Índice

  • MultipleIterator::attachIterator — Attaches iterator information
  • MultipleIterator::__construct — Constructs a new MultipleIterator
  • MultipleIterator::containsIterator — Checks if an iterator is attached
  • MultipleIterator::countIterators — Gets the number of attached iterator instances
  • MultipleIterator::current — Gets the registered iterator instances
  • MultipleIterator::detachIterator — Detaches an iterator
  • MultipleIterator::getFlags — Gets the flag information
  • MultipleIterator::key — Gets the registered iterator instances
  • MultipleIterator::next — Moves all attached iterator instances forward
  • MultipleIterator::rewind — Rewinds all attached iterator instances
  • MultipleIterator::setFlags — Sets flags
  • MultipleIterator::valid — Checks the validity of sub iterators
LimitIterator::valid
MultipleIterator::attachIterator
Iterators


Attaches iterator information

MultipleIterator
MultipleIterator::__construct
MultipleIterator
PHP Manual

MultipleIterator::attachIterator

(PHP 5 >= 5.3.0)

MultipleIterator::attachIterator — Attaches iterator information

Descrição

public void MultipleIterator::attachIterator ( Iterator $iterator [, string $infos ] )

Attaches iterator information.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The new iterator to attach.

infos

The associative information for the Iterator, which must be an integer, a string, or NULL.

Valor Retornado

Description...

Erros

An IllegalValueException if the iterator parameter is invalid, or if infos is already associated information.

Veja Também

  • MultipleIterator::__construct() - Constructs a new MultipleIterator

MultipleIterator
MultipleIterator::__construct
MultipleIterator


Constructs a new MultipleIterator

MultipleIterator::attachIterator
MultipleIterator::containsIterator
MultipleIterator
PHP Manual

MultipleIterator::__construct

(PHP 5 >= 5.3.0)

MultipleIterator::__construct — Constructs a new MultipleIterator

Descrição

MultipleIterator::__construct ( int $flags )

Construct a new MultipleIterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flags

The flags to set, according to the Flag Constants

Valor Retornado

The iterator.

Veja Também

  • Flag Constants
  • MultipleIterator::valid() - Checks the validity of sub iterators

MultipleIterator::attachIterator
MultipleIterator::containsIterator
MultipleIterator


Checks if an iterator is attached

MultipleIterator::__construct
MultipleIterator::countIterators
MultipleIterator
PHP Manual

MultipleIterator::containsIterator

(PHP 5 >= 5.3.0)

MultipleIterator::containsIterator — Checks if an iterator is attached

Descrição

public void MultipleIterator::containsIterator ( Iterator $iterator )

Checks if an iterator is attached or not.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator to check.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • MultipleIterator::valid() - Checks the validity of sub iterators

MultipleIterator::__construct
MultipleIterator::countIterators
MultipleIterator


Gets the number of attached iterator instances

MultipleIterator::containsIterator
MultipleIterator::current
MultipleIterator
PHP Manual

MultipleIterator::countIterators

(PHP 5 >= 5.3.0)

MultipleIterator::countIterators — Gets the number of attached iterator instances

Descrição

public void MultipleIterator::countIterators ( void )

Gets the number of attached iterator instances.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of attached iterator instances (as an integer).

Veja Também

  • MultipleIterator::containsIterator() - Checks if an iterator is attached

MultipleIterator::containsIterator
MultipleIterator::current
MultipleIterator


Gets the registered iterator instances

MultipleIterator::countIterators
MultipleIterator::detachIterator
MultipleIterator
PHP Manual

MultipleIterator::current

(PHP 5 >= 5.3.0)

MultipleIterator::current — Gets the registered iterator instances

Descrição

public void MultipleIterator::current ( void )

Get the registered iterator instances.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of all registered iterator instances, or FALSE if no sub iterator is attached.

Erros

A RuntimeException if mode MIT_NEED_ALL is set and at least one attached iterator is not valid. Or an IllegalValueException if a key is NULL and MIT_KEYS_ASSOC is set.

Veja Também

  • MultipleIterator::valid() - Checks the validity of sub iterators

MultipleIterator::countIterators
MultipleIterator::detachIterator
MultipleIterator


Detaches an iterator

MultipleIterator::current
MultipleIterator::getFlags
MultipleIterator
PHP Manual

MultipleIterator::detachIterator

(PHP 5 >= 5.3.0)

MultipleIterator::detachIterator — Detaches an iterator

Descrição

public void MultipleIterator::detachIterator ( Iterator $iterator )

Detaches an iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator to detach.

Valor Retornado

Não há valor retornado.

Veja Também

  • MultipleIterator::attachIterator() - Attaches iterator information

MultipleIterator::current
MultipleIterator::getFlags
MultipleIterator


Gets the flag information

MultipleIterator::detachIterator
MultipleIterator::key
MultipleIterator
PHP Manual

MultipleIterator::getFlags

(PHP 5 >= 5.3.0)

MultipleIterator::getFlags — Gets the flag information

Descrição

public void MultipleIterator::getFlags ( void )

Gets information about the flags.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Information about the flags, as an integer.

Veja Também

  • Flag Constants
  • MultipleIterator::__construct() - Constructs a new MultipleIterator
  • MultipleIterator::setFlags() - Sets flags

MultipleIterator::detachIterator
MultipleIterator::key
MultipleIterator


Gets the registered iterator instances

MultipleIterator::getFlags
MultipleIterator::next
MultipleIterator
PHP Manual

MultipleIterator::key

(PHP 5 >= 5.3.0)

MultipleIterator::key — Gets the registered iterator instances

Descrição

public void MultipleIterator::key ( void )

Get the registered iterator instances.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of all registered iterator instances, or FALSE if no sub iterator is attached.

Erros

A LogicException if mode MIT_NEED_ALL is set, and at least one attached iterator is not valid.

Veja Também

  • MultipleIterator::current() - Gets the registered iterator instances

MultipleIterator::getFlags
MultipleIterator::next
MultipleIterator


Moves all attached iterator instances forward

MultipleIterator::key
MultipleIterator::rewind
MultipleIterator
PHP Manual

MultipleIterator::next

(PHP 5 >= 5.3.0)

MultipleIterator::next — Moves all attached iterator instances forward

Descrição

public void MultipleIterator::next ( void )

Moves all attached iterator instances forward.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • MultipleIterator::rewind() - Rewinds all attached iterator instances

MultipleIterator::key
MultipleIterator::rewind
MultipleIterator


Rewinds all attached iterator instances

MultipleIterator::next
MultipleIterator::setFlags
MultipleIterator
PHP Manual

MultipleIterator::rewind

(PHP 5 >= 5.3.0)

MultipleIterator::rewind — Rewinds all attached iterator instances

Descrição

public void MultipleIterator::rewind ( void )

Rewinds all attached iterator instances.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • MultipleIterator::next() - Moves all attached iterator instances forward

MultipleIterator::next
MultipleIterator::setFlags
MultipleIterator


Sets flags

MultipleIterator::rewind
MultipleIterator::valid
MultipleIterator
PHP Manual

MultipleIterator::setFlags

(PHP 5 >= 5.3.0)

MultipleIterator::setFlags — Sets flags

Descrição

public void MultipleIterator::setFlags ( int $flags )

Sets flags.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

flags

The flags to set, according to the Flag Constants

Valor Retornado

Não há valor retornado.

Veja Também

  • Flag Constants
  • MultipleIterator::__construct() - Constructs a new MultipleIterator
  • MultipleIterator::getFlags() - Gets the flag information

MultipleIterator::rewind
MultipleIterator::valid
MultipleIterator


Checks the validity of sub iterators

MultipleIterator::setFlags
NoRewindIterator
MultipleIterator
PHP Manual

MultipleIterator::valid

(PHP 5 >= 5.3.0)

MultipleIterator::valid — Checks the validity of sub iterators

Descrição

public void MultipleIterator::valid ( void )

Checks the validity of sub iterators.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if one or all sub iterators are valid depending on flags, otherwise FALSE

Veja Também

  • MultipleIterator::__construct() - Constructs a new MultipleIterator

MultipleIterator::setFlags
NoRewindIterator
MultipleIterator


The NoRewindIterator class

Introdução

This iterator cannot be rewinded.

Sinopse da classe

NoRewindIterator extends IteratorIterator {
/* Methods */
__construct ( Iterator $iterator )
public mixed current ( void )
public iterator getInnerIterator ( void )
public mixed key ( void )
public void next ( void )
public void rewind ( void )
public bool valid ( void )
/* Inherited methods */
IteratorIterator::__construct ( Traversable $iterator )
public void IteratorIterator::current ( void )
public void IteratorIterator::getInnerIterator ( void )
public void IteratorIterator::key ( void )
public void IteratorIterator::next ( void )
public void IteratorIterator::rewind ( void )
public bool IteratorIterator::valid ( void )
}

Índice

  • NoRewindIterator::__construct — Construct a NoRewindIterator
  • NoRewindIterator::current — Get the current value
  • NoRewindIterator::getInnerIterator — Get the inner iterator
  • NoRewindIterator::key — Get the current key
  • NoRewindIterator::next — Forward to the next element
  • NoRewindIterator::rewind — Prevents the rewind operation on the inner iterator.
  • NoRewindIterator::valid — Validates the iterator
MultipleIterator::valid
NoRewindIterator::__construct
Iterators


Construct a NoRewindIterator

NoRewindIterator
NoRewindIterator::current
NoRewindIterator
PHP Manual

NoRewindIterator::__construct

(PHP 5 >= 5.1.0)

NoRewindIterator::__construct — Construct a NoRewindIterator

Descrição

NoRewindIterator::__construct ( Iterator $iterator )

Constructs a NoRewindIterator.

Parâmetros

iterator

The iterator being used.

Valor Retornado

A NoRewindIterator() based on the passed in iterator.

Exemplos

Exemplo #1 NoRewindIterator::__construct() example

The second loop does not output because the iterator is only used once, as it does not rewind.

<?php
$fruit = array('apple', 'banana', 'cranberry');

$arr = new ArrayObject($fruit);
$it  = new NoRewindIterator($arr->getIterator());

echo "Fruit A:\n";
foreach( $it as $item ) {
    echo $item . "\n";
}

echo "Fruit B:\n";
foreach( $it as $item ) {
    echo $item . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Fruit A:
apple
banana
cranberry
Fruit B:

Veja Também

  • NoRewindIterator::valid() - Validates the iterator

NoRewindIterator
NoRewindIterator::current
NoRewindIterator


Get the current value

NoRewindIterator::__construct
NoRewindIterator::getInnerIterator
NoRewindIterator
PHP Manual

NoRewindIterator::current

(PHP 5 >= 5.1.0)

NoRewindIterator::current — Get the current value

Descrição

public mixed NoRewindIterator::current ( void )

Gets the current value.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current value.

Veja Também

  • NoRewindIterator::key() - Get the current key

NoRewindIterator::__construct
NoRewindIterator::getInnerIterator
NoRewindIterator


Get the inner iterator

NoRewindIterator::current
NoRewindIterator::key
NoRewindIterator
PHP Manual

NoRewindIterator::getInnerIterator

(PHP 5 >= 5.1.0)

NoRewindIterator::getInnerIterator — Get the inner iterator

Descrição

public iterator NoRewindIterator::getInnerIterator ( void )

Gets the inner iterator, that was passed in to NoRewindIterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The inner iterator, as passed to NoRewindIterator::__construct().

Veja Também

  • NoRewindIterator::valid() - Validates the iterator

NoRewindIterator::current
NoRewindIterator::key
NoRewindIterator


Get the current key

NoRewindIterator::getInnerIterator
NoRewindIterator::next
NoRewindIterator
PHP Manual

NoRewindIterator::key

(PHP 5 >= 5.1.0)

NoRewindIterator::key — Get the current key

Descrição

public mixed NoRewindIterator::key ( void )

Gets the current key.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current key.

Veja Também

  • NoRewindIterator::next() - Forward to the next element

NoRewindIterator::getInnerIterator
NoRewindIterator::next
NoRewindIterator


Forward to the next element

NoRewindIterator::key
NoRewindIterator::rewind
NoRewindIterator
PHP Manual

NoRewindIterator::next

(PHP 5 >= 5.1.0)

NoRewindIterator::next — Forward to the next element

Descrição

public void NoRewindIterator::next ( void )

Forwards to the next element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • NoRewindIterator::rewind() - Prevents the rewind operation on the inner iterator.

NoRewindIterator::key
NoRewindIterator::rewind
NoRewindIterator


Prevents the rewind operation on the inner iterator.

NoRewindIterator::next
NoRewindIterator::valid
NoRewindIterator
PHP Manual

NoRewindIterator::rewind

(PHP 5 >= 5.1.0)

NoRewindIterator::rewind — Prevents the rewind operation on the inner iterator.

Descrição

public void NoRewindIterator::rewind ( void )

Prevents the rewind operation on the inner iterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 NoRewindIterator::rewind() example

This example demonstrates that calling rewind on a NoRewindIterator object has no effect.

<?php
$fruits = array("lemon", "orange", "apple", "pear");

$noRewindIterator = new NoRewindIterator(new ArrayIterator($fruits));

echo $noRewindIterator->current() . "\n";
$noRewindIterator->next();
// now rewind the iterator (nothing should happen)
$noRewindIterator->rewind();
echo $noRewindIterator->current() . "\n";
?>

O exemplo acima irá imprimir:

lemon
orange

NoRewindIterator::next
NoRewindIterator::valid
NoRewindIterator


Validates the iterator

NoRewindIterator::rewind
ParentIterator
NoRewindIterator
PHP Manual

NoRewindIterator::valid

(PHP 5 >= 5.1.0)

NoRewindIterator::valid — Validates the iterator

Descrição

public bool NoRewindIterator::valid ( void )

Checks whether the iterator is valid.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • NoRewindIterator::getInnerIterator() - Get the inner iterator

NoRewindIterator::rewind
ParentIterator
NoRewindIterator


A classe ParentIterator

Introdução

...

Sinopse da classe

ParentIterator extends RecursiveFilterIterator implements RecursiveIterator , OuterIterator , Traversable , Iterator {
/* Métodos */
public bool accept ( void )
__construct ( RecursiveIterator $iterator )
ParentIterator getChildren ( void )
bool hasChildren ( void )
void next ( void )
void rewind ( void )
}

Índice

  • ParentIterator::accept — Determines acceptability
  • ParentIterator::__construct — Constructs a ParentIterator
  • ParentIterator::getChildren — Retorna os filhos do iterador interno de um ParentIterator
  • ParentIterator::hasChildren — Verifica se o elemento atual do iterador interno tem ou não filhos
  • ParentIterator::next — Avança o iterador
  • ParentIterator::rewind — Recomeça o iterador
NoRewindIterator::valid
ParentIterator::accept
Iterators


Determines acceptability

ParentIterator
ParentIterator::__construct
ParentIterator
PHP Manual

ParentIterator::accept

(PHP 5 >= 5.1.0)

ParentIterator::accept — Determines acceptability

Descrição

public bool ParentIterator::accept ( void )

Determines if the current element has children.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the current element is acceptable, otherwise FALSE.

Veja Também

  • ParentIterator::hasChildren() - Verifica se o elemento atual do iterador interno tem ou não filhos
  • FilterIterator::accept() - Check whether the current element of the iterator is acceptable

ParentIterator
ParentIterator::__construct
ParentIterator


Constructs a ParentIterator

ParentIterator::accept
ParentIterator::getChildren
ParentIterator
PHP Manual

ParentIterator::__construct

(PHP 5 >= 5.1.0)

ParentIterator::__construct — Constructs a ParentIterator

Descrição

ParentIterator::__construct ( RecursiveIterator $iterator )

Constructs a ParentIterator on an iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator being constructed upon.

Valor Retornado

The ParentIterator.

ParentIterator::accept
ParentIterator::getChildren
ParentIterator


Retorna os filhos do iterador interno de um ParentIterator

ParentIterator::__construct
ParentIterator::hasChildren
ParentIterator
PHP Manual

ParentIterator::getChildren

(PHP 5 >= 5.1.0)

ParentIterator::getChildren — Retorna os filhos do iterador interno de um ParentIterator

Descrição

ParentIterator ParentIterator::getChildren ( void )

Retorna os filhos do iterador interno de um ParentIterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Um object.

ParentIterator::__construct
ParentIterator::hasChildren
ParentIterator


Verifica se o elemento atual do iterador interno tem ou não filhos

ParentIterator::getChildren
ParentIterator::next
ParentIterator
PHP Manual

ParentIterator::hasChildren

(PHP 5 >= 5.1.0)

ParentIterator::hasChildren — Verifica se o elemento atual do iterador interno tem ou não filhos

Descrição

bool ParentIterator::hasChildren ( void )

Verifica se o elemento atual do iterador interno tem filhos.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ParentIterator::getChildren
ParentIterator::next
ParentIterator


Avança o iterador

ParentIterator::hasChildren
ParentIterator::rewind
ParentIterator
PHP Manual

ParentIterator::next

(PHP 5 >= 5.1.0)

ParentIterator::next — Avança o iterador

Descrição

void ParentIterator::next ( void )

Avança o iterador.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

ParentIterator::hasChildren
ParentIterator::rewind
ParentIterator


Recomeça o iterador

ParentIterator::next
RecursiveArrayIterator
ParentIterator
PHP Manual

ParentIterator::rewind

(PHP 5 >= 5.1.0)

ParentIterator::rewind — Recomeça o iterador

Descrição

void ParentIterator::rewind ( void )

Recomeça o iterador.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

ParentIterator::next
RecursiveArrayIterator
ParentIterator


The RecursiveArrayIterator class

Introdução

This iterator allows to unset and modify values and keys while iterating over Arrays and Objects in the same way as the ArrayIterator. Additionally it is possible to iterate over the current iterator entry.

Sinopse da classe

RecursiveArrayIterator extends ArrayIterator implements RecursiveIterator {
/* Methods */
public RecursiveArrayIterator getChildren ( void )
public bool hasChildren ( void )
/* Inherits */
public void ArrayIterator::append ( mixed $value )
public void ArrayIterator::asort ( void )
ArrayIterator::__construct ( mixed $array )
public int ArrayIterator::count ( void )
mixed ArrayIterator::current ( void )
public array ArrayIterator::getArrayCopy ( void )
public void ArrayIterator::getFlags ( void )
mixed ArrayIterator::key ( void )
public void ArrayIterator::ksort ( void )
public void ArrayIterator::natcasesort ( void )
public void ArrayIterator::natsort ( void )
void ArrayIterator::next ( void )
public void ArrayIterator::offsetExists ( string $index )
public mixed ArrayIterator::offsetGet ( string $index )
public void ArrayIterator::offsetSet ( string $index , string $newval )
public void ArrayIterator::offsetUnset ( string $index )
void ArrayIterator::rewind ( void )
void ArrayIterator::seek ( int $position )
public string ArrayIterator::serialize ( void )
public void ArrayIterator::setFlags ( string $flags )
public void ArrayIterator::uasort ( string $cmp_function )
public void ArrayIterator::uksort ( string $cmp_function )
public string ArrayIterator::unserialize ( string $serialized )
bool ArrayIterator::valid ( void )
}

Índice

  • RecursiveArrayIterator::getChildren — Returns an iterator for the current entry if it is an array or an object.
  • RecursiveArrayIterator::hasChildren — Returns whether current entry is an array or an object.
ParentIterator::rewind
RecursiveArrayIterator::getChildren
Iterators


Returns an iterator for the current entry if it is an array or an object.

RecursiveArrayIterator
RecursiveArrayIterator::hasChildren
RecursiveArrayIterator
PHP Manual

RecursiveArrayIterator::getChildren

(PHP 5 >= 5.1.0)

RecursiveArrayIterator::getChildren — Returns an iterator for the current entry if it is an array or an object.

Descrição

public RecursiveArrayIterator RecursiveArrayIterator::getChildren ( void )

Returns an iterator for the current iterator entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An iterator for the current entry, if it is an array or object.

Erros

An InvalidArgumentException will be thrown if the current entry does not contain an array or an object.

Exemplos

Exemplo #1 RecursiveArrayIterator::getChildren() example

<?php
$fruits = array("a" => "lemon", "b" => "orange", array("a" => "apple", "p" => "pear"));

$iterator = new RecursiveArrayIterator($fruits);

while ($iterator->valid()) {

    if ($iterator->hasChildren()) {
        // print all children
        foreach ($iterator->getChildren() as $key => $value) {
            echo $key . ' : ' . $value . "\n";
        }
    } else {
        echo "No children.\n";
    }

    $iterator->next();
}
?>

O exemplo acima irá imprimir:

No children.
No children.
a : apple
p : pear

Veja Também

  • RecursiveArrayIterator::hasChildren() - Returns whether current entry is an array or an object.

RecursiveArrayIterator
RecursiveArrayIterator::hasChildren
RecursiveArrayIterator


Returns whether current entry is an array or an object.

RecursiveArrayIterator::getChildren
RecursiveCachingIterator
RecursiveArrayIterator
PHP Manual

RecursiveArrayIterator::hasChildren

(PHP 5 >= 5.1.0)

RecursiveArrayIterator::hasChildren — Returns whether current entry is an array or an object.

Descrição

public bool RecursiveArrayIterator::hasChildren ( void )

Returns whether current entry is an array or an object for which an iterator can be obtained via RecursiveArrayIterator::getChildren().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the current entry is an array or an object, otherwise FALSE is returned.

Exemplos

Exemplo #1 RecursiveArrayIterator::hasChildren() example

<?php
$fruits = array("a" => "lemon", "b" => "orange", array("a" => "apple", "p" => "pear"));

$iterator = new RecursiveArrayIterator($fruits);

while ($iterator->valid()) {

    // Check if there are children
    if ($iterator->hasChildren()) {
        // print all children
        foreach ($iterator->getChildren() as $key => $value) {
            echo $key . ' : ' . $value . "\n";
        }
    } else {
        echo "No children.\n";
    }

    $iterator->next();
}
?>

O exemplo acima irá imprimir:

No children.
No children.
a : apple
p : pear

Veja Também

  • RecursiveArrayIterator::getChildren() - Returns an iterator for the current entry if it is an array or an object.

RecursiveArrayIterator::getChildren
RecursiveCachingIterator
RecursiveArrayIterator


A classe RecursiveCachingIterator

Introdução

...

Sinopse da classe

RecursiveCachingIterator extends CachingIterator implements Countable , ArrayAccess , Iterator , Traversable , OuterIterator , RecursiveIterator {
/* Métodos */
__construct ( Iterator $iterator [, string $flags = self::CALL_TOSTRING ] )
RecursiveCachingIterator getChildren ( void )
bolean hasChildren ( void )
/* Herança */
CachingIterator::__construct ( Iterator $iterator [, string $flags ] )
public int CachingIterator::count ( void )
public void CachingIterator::current ( void )
public void CachingIterator::getCache ( void )
public void CachingIterator::getFlags ( void )
public void CachingIterator::getInnerIterator ( void )
bool CachingIterator::hasNext ( void )
public void CachingIterator::key ( void )
void CachingIterator::next ( void )
public void CachingIterator::offsetExists ( string $index )
public void CachingIterator::offsetGet ( string $index )
public void CachingIterator::offsetSet ( string $index , string $newval )
public void CachingIterator::offsetUnset ( string $index )
void CachingIterator::rewind ( void )
public void CachingIterator::setFlags ( bitmask $flags )
string CachingIterator::__toString ( void )
bool CachingIterator::valid ( void )
}

Índice

  • RecursiveCachingIterator::__construct — Construct
  • RecursiveCachingIterator::getChildren — Retorna os filhos do iterador interno como um RecursiveCachingIterator
  • RecursiveCachingIterator::hasChildren — Verifica se o elemento atual do iterador interno possui filhos ou não
RecursiveArrayIterator::hasChildren
RecursiveCachingIterator::__construct
Iterators


Construct

RecursiveCachingIterator
RecursiveCachingIterator::getChildren
RecursiveCachingIterator
PHP Manual

RecursiveCachingIterator::__construct

(PHP 5 >= 5.1.0)

RecursiveCachingIterator::__construct — Construct

Descrição

RecursiveCachingIterator::__construct ( Iterator $iterator [, string $flags = self::CALL_TOSTRING ] )

Constructs a new RecursiveCachingIterator, which consists of a passed in iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator being used.

flags

The flags. Use CALL_TOSTRING to call RecursiveCachingIterator::__toString() for every element (the default), and/or CATCH_GET_CHILD to catch exceptions when trying to get children.

Valor Retornado

The RecursiveCachingIterator.

Veja Também

  • CachingIterator::__construct() - Construct a new CachingIterator object for the iterator.

RecursiveCachingIterator
RecursiveCachingIterator::getChildren
RecursiveCachingIterator


Retorna os filhos do iterador interno como um RecursiveCachingIterator

RecursiveCachingIterator::__construct
RecursiveCachingIterator::hasChildren
RecursiveCachingIterator
PHP Manual

RecursiveCachingIterator::getChildren

(PHP 5 >= 5.1.0)

RecursiveCachingIterator::getChildren — Retorna os filhos do iterador interno como um RecursiveCachingIterator

Descrição

RecursiveCachingIterator RecursiveCachingIterator::getChildren ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Os filhos do iterador interno, como um RecursiveCachingIterator.

RecursiveCachingIterator::__construct
RecursiveCachingIterator::hasChildren
RecursiveCachingIterator


Verifica se o elemento atual do iterador interno possui filhos ou não

RecursiveCachingIterator::getChildren
RecursiveDirectoryIterator
RecursiveCachingIterator
PHP Manual

RecursiveCachingIterator::hasChildren

(PHP 5 >= 5.1.0)

RecursiveCachingIterator::hasChildren — Verifica se o elemento atual do iterador interno possui filhos ou não

Descrição

bolean RecursiveCachingIterator::hasChildren ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se o iterador interno tem filhos, FALSE caso contrário

RecursiveCachingIterator::getChildren
RecursiveDirectoryIterator
RecursiveCachingIterator


A classe RecursiveDirectoryIterator

Introdução

...

Sinopse da classe

RecursiveDirectoryIterator extends DirectoryIterator implements Traversable , Iterator , RecursiveIterator {
/* Métodos */
__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO ] )
object getChildren ( void )
public string getSubPath ( void )
public string getSubPathname ( void )
bool hasChildren ([ bool $allow_links ] )
string key ( void )
void next ( void )
void rewind ( void )
/* Herança */
DirectoryIterator DirectoryIterator::current ( void )
int DirectoryIterator::getATime ( void )
public string DirectoryIterator::getBasename ([ string $suffix ] )
int DirectoryIterator::getCTime ( void )
string DirectoryIterator::getFilename ( void )
int DirectoryIterator::getGroup ( void )
int DirectoryIterator::getInode ( void )
int DirectoryIterator::getMTime ( void )
int DirectoryIterator::getOwner ( void )
string DirectoryIterator::getPath ( void )
string DirectoryIterator::getPathname ( void )
int DirectoryIterator::getPerms ( void )
int DirectoryIterator::getSize ( void )
string DirectoryIterator::getType ( void )
bool DirectoryIterator::isDir ( void )
bool DirectoryIterator::isDot ( void )
bool DirectoryIterator::isExecutable ( void )
bool DirectoryIterator::isFile ( void )
bool DirectoryIterator::isLink ( void )
bool DirectoryIterator::isReadable ( void )
bool DirectoryIterator::isWritable ( void )
string DirectoryIterator::key ( void )
void DirectoryIterator::next ( void )
void DirectoryIterator::rewind ( void )
public void DirectoryIterator::seek ( int $position )
public string DirectoryIterator::__toString ( void )
string DirectoryIterator::valid ( void )
}

Índice

  • RecursiveDirectoryIterator::__construct — Constructs a RecursiveDirectoryIterator
  • RecursiveDirectoryIterator::getChildren — Retorna um iterador para o elemento atual se ele for um diretório
  • RecursiveDirectoryIterator::getSubPath — Get sub path
  • RecursiveDirectoryIterator::getSubPathname — Get sub path and name
  • RecursiveDirectoryIterator::hasChildren — Retorna se o elemento atual é ou não um diretório que não seja '.' nem '..'
  • RecursiveDirectoryIterator::key — Retorna o caminho e o nome do arquivo do elemento atual do diretório
  • RecursiveDirectoryIterator::next — Avança para o próximo elemento
  • RecursiveDirectoryIterator::rewind — Recomeça a iteração do diretório
RecursiveCachingIterator::hasChildren
RecursiveDirectoryIterator::__construct
Iterators


Constructs a RecursiveDirectoryIterator

RecursiveDirectoryIterator
RecursiveDirectoryIterator::getChildren
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::__construct

(PHP 5 >= 5.1.2)

RecursiveDirectoryIterator::__construct — Constructs a RecursiveDirectoryIterator

Descrição

RecursiveDirectoryIterator::__construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO ] )

Constructs a RecursiveDirectoryIterator() for the provided path.

Parâmetros

path

The path of the directory to be iterated over.

flags

Flags may be provided which will affect the behavior of some methods. A list of the flags can found under FilesystemIterator predefined constants. They can also be set later with FilesystemIterator::setFlags().

Valor Retornado

Returns the newly created RecursiveDirectoryIterator.

Erros

Throws an UnexpectedValueException if the path cannot be found or is not a directory.

Exemplos

Exemplo #1 RecursiveDirectoryIterator example

<?php

$directory = '/tmp';

$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory));

while($it->valid()) {

    if (!$it->isDot()) {
        echo 'SubPathName: ' . $it->getSubPathName() . "\n";
        echo 'SubPath:     ' . $it->getSubPath() . "\n";
        echo 'Key:         ' . $it->key() . "\n\n";
    }

    $it->next();
}

?>

O exemplo acima irá imprimir algo similar a:

SubPathName: fruit/apple.xml
SubPath:     fruit
Key:         /tmp/fruit/apple.xml

SubPathName: stuff.xml
SubPath:
Key:         /tmp/stuff.xml

SubPathName: veggies/carrot.xml
SubPath:     veggies
Key:         /tmp/veggies/carrot.xml

Veja Também

  • FilesystemIterator::__construct() - Constructs a new filesystem iterator
  • RecursiveIteratorIterator::__construct() - Construct a RecursiveIteratorIterator
  • FilesystemIterator predefined constants

RecursiveDirectoryIterator
RecursiveDirectoryIterator::getChildren
RecursiveDirectoryIterator


Retorna um iterador para o elemento atual se ele for um diretório

RecursiveDirectoryIterator::__construct
RecursiveDirectoryIterator::getSubPath
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::getChildren

(PHP 5 >= 5.1.0)

RecursiveDirectoryIterator::getChildren — Retorna um iterador para o elemento atual se ele for um diretório

Descrição

object RecursiveDirectoryIterator::getChildren ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Um iterador para o elemento atual, se ele é um diretório.

RecursiveDirectoryIterator::__construct
RecursiveDirectoryIterator::getSubPath
RecursiveDirectoryIterator


Get sub path

RecursiveDirectoryIterator::getChildren
RecursiveDirectoryIterator::getSubPathname
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::getSubPath

(PHP 5 >= 5.1.0)

RecursiveDirectoryIterator::getSubPath — Get sub path

Descrição

public string RecursiveDirectoryIterator::getSubPath ( void )

Gets the sub path.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The sub path (sub directory).

Veja Também

  • RecursiveDirectoryIterator::getSubPathName() - Get sub path and name
  • RecursiveDirectoryIterator::key() - Retorna o caminho e o nome do arquivo do elemento atual do diretório

RecursiveDirectoryIterator::getChildren
RecursiveDirectoryIterator::getSubPathname
RecursiveDirectoryIterator


Get sub path and name

RecursiveDirectoryIterator::getSubPath
RecursiveDirectoryIterator::hasChildren
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::getSubPathname

(PHP 5 >= 5.1.0)

RecursiveDirectoryIterator::getSubPathname — Get sub path and name

Descrição

public string RecursiveDirectoryIterator::getSubPathname ( void )

Gets the sub path and filename.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The sub path (sub directory) and filename.

Veja Também

  • RecursiveDirectoryIterator::getSubPath() - Get sub path
  • RecursiveDirectoryIterator::key() - Retorna o caminho e o nome do arquivo do elemento atual do diretório

RecursiveDirectoryIterator::getSubPath
RecursiveDirectoryIterator::hasChildren
RecursiveDirectoryIterator


Retorna se o elemento atual é ou não um diretório que não seja '.' nem '..'

RecursiveDirectoryIterator::getSubPathname
RecursiveDirectoryIterator::key
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::hasChildren

(PHP 5)

RecursiveDirectoryIterator::hasChildren — Retorna se o elemento atual é ou não um diretório que não seja '.' nem '..'

Descrição

bool RecursiveDirectoryIterator::hasChildren ([ bool $allow_links ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

allow_links

Valor Retornado

Retorna se o atual elemento é um diretório, mas não '.' ou '..'

RecursiveDirectoryIterator::getSubPathname
RecursiveDirectoryIterator::key
RecursiveDirectoryIterator


Retorna o caminho e o nome do arquivo do elemento atual do diretório

RecursiveDirectoryIterator::hasChildren
RecursiveDirectoryIterator::next
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::key

(PHP 5)

RecursiveDirectoryIterator::key — Retorna o caminho e o nome do arquivo do elemento atual do diretório

Descrição

string RecursiveDirectoryIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O caminho e nome do arquivo do elemento atual do diretório.

RecursiveDirectoryIterator::hasChildren
RecursiveDirectoryIterator::next
RecursiveDirectoryIterator


Avança para o próximo elemento

RecursiveDirectoryIterator::key
RecursiveDirectoryIterator::rewind
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::next

(PHP 5)

RecursiveDirectoryIterator::next — Avança para o próximo elemento

Descrição

void RecursiveDirectoryIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveDirectoryIterator::key
RecursiveDirectoryIterator::rewind
RecursiveDirectoryIterator


Recomeça a iteração do diretório

RecursiveDirectoryIterator::next
RecursiveFilterIterator
RecursiveDirectoryIterator
PHP Manual

RecursiveDirectoryIterator::rewind

(PHP 5)

RecursiveDirectoryIterator::rewind — Recomeça a iteração do diretório

Descrição

void RecursiveDirectoryIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveDirectoryIterator::next
RecursiveFilterIterator
RecursiveDirectoryIterator


The RecursiveFilterIterator class

Introdução

This abstract iterator filters out unwanted values for a RecursiveIterator. This class should be extended to implement custom filters. The RecursiveFilterIterator::accept() must be implemented in the subclass.

Sinopse da classe

RecursiveFilterIterator extends FilterIterator implements Iterator , Traversable , OuterIterator , RecursiveIterator {
/* Methods */
__construct ( RecursiveIterator $iterator )
public void getChildren ( void )
public void hasChildren ( void )
/* Inherited methods */
abstract bool FilterIterator::accept ( void )
FilterIterator::__construct ( Iterator $iterator )
mixed FilterIterator::current ( void )
Iterator FilterIterator::getInnerIterator ( void )
mixed FilterIterator::key ( void )
void FilterIterator::next ( void )
void FilterIterator::rewind ( void )
bool FilterIterator::valid ( void )
}

Índice

  • RecursiveFilterIterator::__construct — Create a RecursiveFilterIterator from a RecursiveIterator
  • RecursiveFilterIterator::getChildren — Return the inner iterator's children contained in a RecursiveFilterIterator
  • RecursiveFilterIterator::hasChildren — Check whether the inner iterator's current element has children
RecursiveDirectoryIterator::rewind
RecursiveFilterIterator::__construct
Iterators


Create a RecursiveFilterIterator from a RecursiveIterator

RecursiveFilterIterator
RecursiveFilterIterator::getChildren
RecursiveFilterIterator
PHP Manual

RecursiveFilterIterator::__construct

(PHP 5 >= 5.1.0)

RecursiveFilterIterator::__construct — Create a RecursiveFilterIterator from a RecursiveIterator

Descrição

RecursiveFilterIterator::__construct ( RecursiveIterator $iterator )

Create a RecursiveFilterIterator from a RecursiveIterator.

Parâmetros

iterator

The RecursiveIterator to be filtered.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic RecursiveFilterIterator() example

<?php
class TestsOnlyFilter extends RecursiveFilterIterator {
    public function accept() {
        // Accept the current item if we can recurse into it
        // or it is a value starting with "test"
        return $this->hasChildren() || (strpos($this->current(), "test") !== FALSE);
    }
}

$arrary   = array("test1", array("taste2", "test3", "test4"), "test5");
$iterator = new RecursiveArrayIterator($array);
$filter   = new TestsOnlyFilter($iterator);

foreach(new RecursiveIteratorIterator($filter) as $key => $value)
{
    echo $value . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

test1
test3
test4
test5

Exemplo #2 RecursiveFilterIterator() example

<?php
class StartsWithFilter extends RecursiveFilterIterator {

    protected $word;

    public function __construct(RecursiveIterator $rit, $word) {
        $this->word = $word;
        parent::__construct($rit);
    }

    public function accept() {
        return $this->hasChildren() OR strpos($this->current(), $this->word) === 0;
    }

    public function getChildren() {
        return new self($this->getInnerIterator()->getChildren(), $this->word);
    }
}

$array    = array("test1", array("taste2", "test3", "test4"), "test5");
$iterator = new RecursiveArrayIterator($array);
$filter   = new StartsWithFilter($iterator, "test");

foreach(new RecursiveIteratorIterator($filter) as $key => $value)
{
    echo $value . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

test1
test3
test4
test5

Veja Também

  • RecursiveFilterIterator::getChildren() - Return the inner iterator's children contained in a RecursiveFilterIterator
  • RecursiveFilterIterator::hasChildren() - Check whether the inner iterator's current element has children
  • FilterIterator::accept() - Check whether the current element of the iterator is acceptable

RecursiveFilterIterator
RecursiveFilterIterator::getChildren
RecursiveFilterIterator


Return the inner iterator's children contained in a RecursiveFilterIterator

RecursiveFilterIterator::__construct
RecursiveFilterIterator::hasChildren
RecursiveFilterIterator
PHP Manual

RecursiveFilterIterator::getChildren

(PHP 5 >= 5.1.0)

RecursiveFilterIterator::getChildren — Return the inner iterator's children contained in a RecursiveFilterIterator

Descrição

public void RecursiveFilterIterator::getChildren ( void )

Return the inner iterator's children contained in a RecursiveFilterIterator.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a RecursiveFilterIterator containing the inner iterator's children.

Veja Também

  • RecursiveFilterIterator::hasChildren() - Check whether the inner iterator's current element has children
  • RecursiveIterator::getChildren() - Returns an iterator for the current entry.

RecursiveFilterIterator::__construct
RecursiveFilterIterator::hasChildren
RecursiveFilterIterator


Check whether the inner iterator's current element has children

RecursiveFilterIterator::getChildren
RecursiveIteratorIterator
RecursiveFilterIterator
PHP Manual

RecursiveFilterIterator::hasChildren

(PHP 5 >= 5.1.0)

RecursiveFilterIterator::hasChildren — Check whether the inner iterator's current element has children

Descrição

public void RecursiveFilterIterator::hasChildren ( void )

Check whether the inner iterator's current element has children.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the inner iterator has children, otherwise FALSE

Veja Também

  • RecursiveFilterIterator::getChildren() - Return the inner iterator's children contained in a RecursiveFilterIterator
  • RecursiveIterator::hasChildren() - Returns if an iterator can be created fot the current entry.

RecursiveFilterIterator::getChildren
RecursiveIteratorIterator
RecursiveFilterIterator


A classe RecursiveIteratorIterator

Introdução

...

Sinopse da classe

RecursiveIteratorIterator implements OuterIterator , Traversable , Iterator {
/* Métodos */
public void beginChildren ( void )
public void beginIteration ( void )
public RecursiveIterator callGetChildren ( void )
public bool callHasChildren ( void )
__construct ( Traversable $iterator [, int $mode = LEAVES_ONLY [, int $flags = 0 ]] )
mixed current ( void )
public void endChildren ( void )
public void endIteration ( void )
int getDepth ( void )
public iterator getInnerIterator ( void )
public mixed getMaxDepth ( void )
RecursiveIterator getSubIterator ( void )
mixed key ( void )
void next ( void )
public void nextElement ( void )
void rewind ( void )
public void setMaxDepth ([ string $max_depth = -1 ] )
bolean valid ( void )
}

Índice

  • RecursiveIteratorIterator::beginChildren — Begin children
  • RecursiveIteratorIterator::beginIteration — Begin Iteration
  • RecursiveIteratorIterator::callGetChildren — Get children
  • RecursiveIteratorIterator::callHasChildren — Has children
  • RecursiveIteratorIterator::__construct — Construct a RecursiveIteratorIterator
  • RecursiveIteratorIterator::current — Retorna o valor do elemento atual
  • RecursiveIteratorIterator::endChildren — End children
  • RecursiveIteratorIterator::endIteration — End Iteration
  • RecursiveIteratorIterator::getDepth — Retorna a profundidade atual da iteração recursiva
  • RecursiveIteratorIterator::getInnerIterator — Get inner iterator
  • RecursiveIteratorIterator::getMaxDepth — Get max depth
  • RecursiveIteratorIterator::getSubIterator — Retorna o sub-iterador ativo atual
  • RecursiveIteratorIterator::key — Retorna a chave atual
  • RecursiveIteratorIterator::next — Avança para o próximo elemento
  • RecursiveIteratorIterator::nextElement — Next element
  • RecursiveIteratorIterator::rewind — Recomeça o iterador no primeiro elemento do primeiro iterador interno
  • RecursiveIteratorIterator::setMaxDepth — Set max depth
  • RecursiveIteratorIterator::valid — Verifica se a posição atual é válida ou não
RecursiveFilterIterator::hasChildren
RecursiveIteratorIterator::beginChildren
Iterators


Begin children

RecursiveIteratorIterator
RecursiveIteratorIterator::beginIteration
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::beginChildren

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::beginChildren — Begin children

Descrição

public void RecursiveIteratorIterator::beginChildren ( void )

Is called after calling RecursiveIteratorIterator::getChildren(), and its associated RecursiveIteratorIterator::rewind().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator
RecursiveIteratorIterator::beginIteration
RecursiveIteratorIterator


Begin Iteration

RecursiveIteratorIterator::beginChildren
RecursiveIteratorIterator::callGetChildren
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::beginIteration

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::beginIteration — Begin Iteration

Descrição

public void RecursiveIteratorIterator::beginIteration ( void )

Called when iteration begins (after the first RecursiveIteratorIterator::rewind() call.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::beginChildren
RecursiveIteratorIterator::callGetChildren
RecursiveIteratorIterator


Get children

RecursiveIteratorIterator::beginIteration
RecursiveIteratorIterator::callHasChildren
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::callGetChildren

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::callGetChildren — Get children

Descrição

public RecursiveIterator RecursiveIteratorIterator::callGetChildren ( void )

Get children of the current element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A RecursiveIterator().

RecursiveIteratorIterator::beginIteration
RecursiveIteratorIterator::callHasChildren
RecursiveIteratorIterator


Has children

RecursiveIteratorIterator::callGetChildren
RecursiveIteratorIterator::__construct
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::callHasChildren

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::callHasChildren — Has children

Descrição

public bool RecursiveIteratorIterator::callHasChildren ( void )

Called for each element to test whether it has children.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the element has children, otherwise FALSE

RecursiveIteratorIterator::callGetChildren
RecursiveIteratorIterator::__construct
RecursiveIteratorIterator


Construct a RecursiveIteratorIterator

RecursiveIteratorIterator::callHasChildren
RecursiveIteratorIterator::current
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::__construct

(PHP 5 >= 5.1.3)

RecursiveIteratorIterator::__construct — Construct a RecursiveIteratorIterator

Descrição

RecursiveIteratorIterator::__construct ( Traversable $iterator [, int $mode = LEAVES_ONLY [, int $flags = 0 ]] )

Creates a RecursiveIteratorIterator from a RecursiveIterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

iterator

The iterator being constructed from, which is from a RecursiveIterator or IteratorAggregate.

mode

The mode. Options are LEAVES_ONLY (default), SELF_FIRST and CHILD_FIRST.

flags

Valor Retornado

RecursiveIteratorIterator::callHasChildren
RecursiveIteratorIterator::current
RecursiveIteratorIterator


Retorna o valor do elemento atual

RecursiveIteratorIterator::__construct
RecursiveIteratorIterator::endChildren
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::current

(PHP 5)

RecursiveIteratorIterator::current — Retorna o valor do elemento atual

Descrição

mixed RecursiveIteratorIterator::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O valor do elemento atual.

RecursiveIteratorIterator::__construct
RecursiveIteratorIterator::endChildren
RecursiveIteratorIterator


End children

RecursiveIteratorIterator::current
RecursiveIteratorIterator::endIteration
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::endChildren

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::endChildren — End children

Descrição

public void RecursiveIteratorIterator::endChildren ( void )

Called when end recursing one level.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::current
RecursiveIteratorIterator::endIteration
RecursiveIteratorIterator


End Iteration

RecursiveIteratorIterator::endChildren
RecursiveIteratorIterator::getDepth
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::endIteration

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::endIteration — End Iteration

Descrição

public void RecursiveIteratorIterator::endIteration ( void )

Called when the iteration ends (when RecursiveIteratorIterator::valid() first returns FALSE.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::endChildren
RecursiveIteratorIterator::getDepth
RecursiveIteratorIterator


Retorna a profundidade atual da iteração recursiva

RecursiveIteratorIterator::endIteration
RecursiveIteratorIterator::getInnerIterator
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::getDepth

(PHP 5)

RecursiveIteratorIterator::getDepth — Retorna a profundidade atual da iteração recursiva

Descrição

int RecursiveIteratorIterator::getDepth ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A atual profundidade da iteração recursiva.

RecursiveIteratorIterator::endIteration
RecursiveIteratorIterator::getInnerIterator
RecursiveIteratorIterator


Get inner iterator

RecursiveIteratorIterator::getDepth
RecursiveIteratorIterator::getMaxDepth
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::getInnerIterator

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::getInnerIterator — Get inner iterator

Descrição

public iterator RecursiveIteratorIterator::getInnerIterator ( void )

Gets the current active sub iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current active sub iterator.

RecursiveIteratorIterator::getDepth
RecursiveIteratorIterator::getMaxDepth
RecursiveIteratorIterator


Get max depth

RecursiveIteratorIterator::getInnerIterator
RecursiveIteratorIterator::getSubIterator
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::getMaxDepth

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::getMaxDepth — Get max depth

Descrição

public mixed RecursiveIteratorIterator::getMaxDepth ( void )

Gets the maximum allowable depth.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The maximum accepted depth, or FALSE if any depth is allowed.

Veja Também

  • RecursiveIteratorIterator::setMaxDepth() - Set max depth

RecursiveIteratorIterator::getInnerIterator
RecursiveIteratorIterator::getSubIterator
RecursiveIteratorIterator


Retorna o sub-iterador ativo atual

RecursiveIteratorIterator::getMaxDepth
RecursiveIteratorIterator::key
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::getSubIterator

(PHP 5)

RecursiveIteratorIterator::getSubIterator — Retorna o sub-iterador ativo atual

Descrição

RecursiveIterator RecursiveIteratorIterator::getSubIterator ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O atual sub-iterador ativo.

RecursiveIteratorIterator::getMaxDepth
RecursiveIteratorIterator::key
RecursiveIteratorIterator


Retorna a chave atual

RecursiveIteratorIterator::getSubIterator
RecursiveIteratorIterator::next
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::key

(PHP 5)

RecursiveIteratorIterator::key — Retorna a chave atual

Descrição

mixed RecursiveIteratorIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A atual chave.

RecursiveIteratorIterator::getSubIterator
RecursiveIteratorIterator::next
RecursiveIteratorIterator


Avança para o próximo elemento

RecursiveIteratorIterator::key
RecursiveIteratorIterator::nextElement
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::next

(PHP 5)

RecursiveIteratorIterator::next — Avança para o próximo elemento

Descrição

void RecursiveIteratorIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::key
RecursiveIteratorIterator::nextElement
RecursiveIteratorIterator


Next element

RecursiveIteratorIterator::next
RecursiveIteratorIterator::rewind
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::nextElement

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::nextElement — Next element

Descrição

public void RecursiveIteratorIterator::nextElement ( void )

Called when the next element is available.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::next
RecursiveIteratorIterator::rewind
RecursiveIteratorIterator


Recomeça o iterador no primeiro elemento do primeiro iterador interno

RecursiveIteratorIterator::nextElement
RecursiveIteratorIterator::setMaxDepth
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::rewind

(PHP 5)

RecursiveIteratorIterator::rewind — Recomeça o iterador no primeiro elemento do primeiro iterador interno

Descrição

void RecursiveIteratorIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveIteratorIterator::nextElement
RecursiveIteratorIterator::setMaxDepth
RecursiveIteratorIterator


Set max depth

RecursiveIteratorIterator::rewind
RecursiveIteratorIterator::valid
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::setMaxDepth

(PHP 5 >= 5.1.0)

RecursiveIteratorIterator::setMaxDepth — Set max depth

Descrição

public void RecursiveIteratorIterator::setMaxDepth ([ string $max_depth = -1 ] )

Set the maximum allowed depth.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

max_depth

The maximum allowed depth. -1 is used for any depth.

Valor Retornado

Não há valor retornado.

Erros

Emits an Exception if max_depth is less than -1.

RecursiveIteratorIterator::rewind
RecursiveIteratorIterator::valid
RecursiveIteratorIterator


Verifica se a posição atual é válida ou não

RecursiveIteratorIterator::setMaxDepth
RecursiveRegexIterator
RecursiveIteratorIterator
PHP Manual

RecursiveIteratorIterator::valid

(PHP 5)

RecursiveIteratorIterator::valid — Verifica se a posição atual é válida ou não

Descrição

bolean RecursiveIteratorIterator::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se a posição atual é válida, FALSE caso contrário

RecursiveIteratorIterator::setMaxDepth
RecursiveRegexIterator
RecursiveIteratorIterator


The RecursiveRegexIterator class

Introdução

This recursive iterator can filter another recursive iterator via a regular expression.

Sinopse da classe

RecursiveRegexIterator extends RegexIterator implements RecursiveIterator {
/* Methods */
public __construct ( RecursiveIterator $iterator , string $regex [, int $mode [, int $flags [, int $preg_flags ]]] )
public RecursiveRegexIterator getChildren ( void )
public bool hasChildren ( void )
/* Inherited methods */
public RecursiveIterator RecursiveIterator::getChildren ( void )
public bool RecursiveIterator::hasChildren ( void )
public bool RegexIterator::accept ( void )
public int RegexIterator::getFlags ( void )
public int RegexIterator::getMode ( void )
public int RegexIterator::getPregFlags ( void )
public void RegexIterator::setFlags ( int $flags )
public void RegexIterator::setMode ( int $mode )
public void RegexIterator::setPregFlags ( int $preg_flags )
}

Índice

  • RecursiveRegexIterator::__construct — Creates a new RecursiveRegexIterator.
  • RecursiveRegexIterator::getChildren — Returns an iterator for the current entry.
  • RecursiveRegexIterator::hasChildren — Returns whether an iterator can be obtained for the current entry.
RecursiveIteratorIterator::valid
RecursiveRegexIterator::__construct
Iterators


Creates a new RecursiveRegexIterator.

RecursiveRegexIterator
RecursiveRegexIterator::getChildren
RecursiveRegexIterator
PHP Manual

RecursiveRegexIterator::__construct

(PHP 5 >= 5.2.0)

RecursiveRegexIterator::__construct — Creates a new RecursiveRegexIterator.

Descrição

public RecursiveRegexIterator::__construct() ( RecursiveIterator $iterator , string $regex [, int $mode [, int $flags [, int $preg_flags ]]] )

Creates a new regular expression iterator.

Parâmetros

iterator

The recursive iterator to apply this regex filter to.

regex

The regular expression to match.

mode

Operation mode, see RegexIterator::setMode() for a list of modes.

flags

Special flags, see RegexIterator::setFlags() for a list of available flags.

preg_flags

The regular expression flags. These flags depend on the operation mode parameter:

RegexIterator preg_flags
operation mode | available flags
RecursiveRegexIterator::ALL_MATCHES | See preg_match_all().
RecursiveRegexIterator::GET_MATCH | See preg_match().
RecursiveRegexIterator::MATCH | See preg_match().
RecursiveRegexIterator::REPLACE | none.
RecursiveRegexIterator::SPLIT | See preg_split().

Exemplos

Exemplo #1 RecursiveRegexIterator::__construct() example

Creates a new RegexIterator that filters all strings that start with 'test'.

<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
    RecursiveRegexIterator::ALL_MATCHES);

foreach ($rRegexIterator as $key1 => $value1) {

    if ($rRegexIterator->hasChildren()) {

        // print all children
        echo "Children: ";
        foreach ($rRegexIterator->getChildren() as $key => $value) {
            echo $value . " ";
        }
        echo "\n";
    } else {
        echo "No children\n";
    }

}
?>

O exemplo acima irá imprimir algo similar a:

No children
Children: test4 test5

Veja Também

  • preg_match() - Perform a regular expression match
  • preg_match_all() - Perform a global regular expression match
  • preg_replace() - Perform a regular expression search and replace
  • preg_split() - Divide a string por uma expressão regular

RecursiveRegexIterator
RecursiveRegexIterator::getChildren
RecursiveRegexIterator


Returns an iterator for the current entry.

RecursiveRegexIterator::__construct
RecursiveRegexIterator::hasChildren
RecursiveRegexIterator
PHP Manual

RecursiveRegexIterator::getChildren

(PHP 5 >= 5.2.0)

RecursiveRegexIterator::getChildren — Returns an iterator for the current entry.

Descrição

public RecursiveRegexIterator RecursiveRegexIterator::getChildren ( void )

Returns an iterator for the current iterator entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An iterator for the current entry, if it can be iterated over by the inner iterator.

Erros

An InvalidArgumentException will be thrown if the current entry does not contain a value that can be iterated over by the inner iterator.

Exemplos

Exemplo #1 RecursiveRegexIterator::getChildren() example

<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
    RecursiveRegexIterator::ALL_MATCHES);

foreach ($rRegexIterator as $key1 => $value1) {

    if ($rRegexIterator->hasChildren()) {

        // print all children
        echo "Children: ";
        foreach ($rRegexIterator->getChildren() as $key => $value) {
            echo $value . " ";
        }
        echo "\n";
    } else {
        echo "No children\n";
    }

}
?>

O exemplo acima irá imprimir:

No children
Children: test4 test5

Veja Também

  • RecursiveRegexIterator::hasChildren() - Returns whether an iterator can be obtained for the current entry.

RecursiveRegexIterator::__construct
RecursiveRegexIterator::hasChildren
RecursiveRegexIterator


Returns whether an iterator can be obtained for the current entry.

RecursiveRegexIterator::getChildren
RecursiveTreeIterator
RecursiveRegexIterator
PHP Manual

RecursiveRegexIterator::hasChildren

(PHP 5 >= 5.2.0)

RecursiveRegexIterator::hasChildren — Returns whether an iterator can be obtained for the current entry.

Descrição

public bool RecursiveRegexIterator::hasChildren ( void )

Returns whether an iterator can be obtained for the current entry. This iterator can be obtained via RecursiveRegexIterator::getChildren().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if an iterator can be obtained for the current entry, otherwise returns FALSE.

Exemplos

Exemplo #1 RecursiveRegexIterator::hasChildren() example

<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
    RecursiveRegexIterator::ALL_MATCHES);

foreach ($rRegexIterator as $value) {
    var_dump($rRegexIterator->hasChildren());
}
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • RecursiveRegexIterator::getChildren() - Returns an iterator for the current entry.

RecursiveRegexIterator::getChildren
RecursiveTreeIterator
RecursiveRegexIterator


The RecursiveTreeIterator class

Introdução

Allows iterating over a RecursiveIterator to generate an ASCII graphic tree.

Sinopse da classe

RecursiveTreeIterator extends RecursiveIteratorIterator implements OuterIterator , Traversable , Iterator {
/* Constants */
const integer RecursiveTreeIterator::BYPASS_CURRENT = 4 ;
const integer RecursiveTreeIterator::BYPASS_KEY = 8 ;
const integer RecursiveTreeIterator::PREFIX_LEFT = 0 ;
const integer RecursiveTreeIterator::PREFIX_MID_HAS_NEXT = 1 ;
const integer RecursiveTreeIterator::PREFIX_MID_LAST = 2 ;
const integer RecursiveTreeIterator::PREFIX_END_HAS_NEXT = 3 ;
const integer RecursiveTreeIterator::PREFIX_END_LAST = 4 ;
const integer RecursiveTreeIterator::PREFIX_RIGHT = 5 ;
/* Methods */
public void beginChildren ( void )
public RecursiveIterator beginIteration ( void )
public RecursiveIterator callGetChildren ( void )
public bool callHasChildren ( void )
__construct ( RecursiveIterator|IteratorAggregate $it [, int $flags = RecursiveTreeIterator::BYPASS_KEY [, int $cit_flags = CachingIterator::CATCH_GET_CHILD [, int $mode = RecursiveIteratorIterator::SELF_FIRST ]]] )
public string current ( void )
public void endChildren ( void )
public void endIteration ( void )
public string getEntry ( void )
public void getPostfix ( void )
public string getPrefix ( void )
public string key ( void )
public void next ( void )
public void nextElement ( void )
public void rewind ( void )
public void setPrefixPart ( int $part , string $value )
public bool valid ( void )
/* Inherited methods */
public void RecursiveIteratorIterator::beginChildren ( void )
public void RecursiveIteratorIterator::beginIteration ( void )
public RecursiveIterator RecursiveIteratorIterator::callGetChildren ( void )
public bool RecursiveIteratorIterator::callHasChildren ( void )
RecursiveIteratorIterator::__construct ( Traversable $iterator [, int $mode = LEAVES_ONLY [, int $flags = 0 ]] )
mixed RecursiveIteratorIterator::current ( void )
public void RecursiveIteratorIterator::endChildren ( void )
public void RecursiveIteratorIterator::endIteration ( void )
int RecursiveIteratorIterator::getDepth ( void )
public iterator RecursiveIteratorIterator::getInnerIterator ( void )
public mixed RecursiveIteratorIterator::getMaxDepth ( void )
RecursiveIterator RecursiveIteratorIterator::getSubIterator ( void )
mixed RecursiveIteratorIterator::key ( void )
void RecursiveIteratorIterator::next ( void )
public void RecursiveIteratorIterator::nextElement ( void )
void RecursiveIteratorIterator::rewind ( void )
public void RecursiveIteratorIterator::setMaxDepth ([ string $max_depth = -1 ] )
bolean RecursiveIteratorIterator::valid ( void )
}

Constantes pré-definidas

RecursiveTreeIterator Node Types

RecursiveTreeIterator::BYPASS_CURRENT

RecursiveTreeIterator::BYPASS_KEY

RecursiveTreeIterator::PREFIX_LEFT

RecursiveTreeIterator::PREFIX_MID_HAS_NEXT

RecursiveTreeIterator::PREFIX_MID_LAST

RecursiveTreeIterator::PREFIX_END_HAS_NEXT

RecursiveTreeIterator::PREFIX_END_LAST

RecursiveTreeIterator::PREFIX_RIGHT

Índice

  • RecursiveTreeIterator::beginChildren — Begin children
  • RecursiveTreeIterator::beginIteration — Begin iteration
  • RecursiveTreeIterator::callGetChildren — Get children
  • RecursiveTreeIterator::callHasChildren — Has children
  • RecursiveTreeIterator::__construct — Construct a RecursiveTreeIterator
  • RecursiveTreeIterator::current — Get current element
  • RecursiveTreeIterator::endChildren — End children
  • RecursiveTreeIterator::endIteration — End iteration
  • RecursiveTreeIterator::getEntry — Get current entry
  • RecursiveTreeIterator::getPostfix — Get the postfix
  • RecursiveTreeIterator::getPrefix — Get the prefix
  • RecursiveTreeIterator::key — Get the key of the current element
  • RecursiveTreeIterator::next — Move to next element
  • RecursiveTreeIterator::nextElement — Next element
  • RecursiveTreeIterator::rewind — Rewind iterator
  • RecursiveTreeIterator::setPrefixPart — Set a part of the prefix
  • RecursiveTreeIterator::valid — Check validity
RecursiveRegexIterator::hasChildren
RecursiveTreeIterator::beginChildren
Iterators


Begin children

RecursiveTreeIterator
RecursiveTreeIterator::beginIteration
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::beginChildren

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::beginChildren — Begin children

Descrição

public void RecursiveTreeIterator::beginChildren ( void )

Called when recursing one level down.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator
RecursiveTreeIterator::beginIteration
RecursiveTreeIterator


Begin iteration

RecursiveTreeIterator::beginChildren
RecursiveTreeIterator::callGetChildren
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::beginIteration

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::beginIteration — Begin iteration

Descrição

public RecursiveIterator RecursiveTreeIterator::beginIteration ( void )

Called when iteration begins (after the first RecursiveTreeIterator::rewind() call).

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A RecursiveIterator.

RecursiveTreeIterator::beginChildren
RecursiveTreeIterator::callGetChildren
RecursiveTreeIterator


Get children

RecursiveTreeIterator::beginIteration
RecursiveTreeIterator::callHasChildren
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::callGetChildren

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::callGetChildren — Get children

Descrição

public RecursiveIterator RecursiveTreeIterator::callGetChildren ( void )

Gets children of the current element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A RecursiveIterator.

RecursiveTreeIterator::beginIteration
RecursiveTreeIterator::callHasChildren
RecursiveTreeIterator


Has children

RecursiveTreeIterator::callGetChildren
RecursiveTreeIterator::__construct
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::callHasChildren

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::callHasChildren — Has children

Descrição

public bool RecursiveTreeIterator::callHasChildren ( void )

Called for each element to test whether it has children.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if there are children, otherwise FALSE

RecursiveTreeIterator::callGetChildren
RecursiveTreeIterator::__construct
RecursiveTreeIterator


Construct a RecursiveTreeIterator

RecursiveTreeIterator::callHasChildren
RecursiveTreeIterator::current
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::__construct

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::__construct — Construct a RecursiveTreeIterator

Descrição

  RecursiveTreeIterator::__construct
  ( RecursiveIterator|IteratorAggregate $it
 [, int $flags = RecursiveTreeIterator::BYPASS_KEY
 [, int $cit_flags = CachingIterator::CATCH_GET_CHILD
 [, int $mode = RecursiveIteratorIterator::SELF_FIRST
]]] )

Constructs a new RecursiveTreeIterator from the supplied recursive iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

it

The RecursiveIterator or IteratorAggregate to iterate over.

flags

Flags may be provided which will affect the behavior of some methods. A list of the flags can found under RecursiveTreeIterator predefined constants.

caching_it_flags

Flags to affect the behavior of the RecursiveCachingIterator used internally.

mode

Flags to affect the behavior of the RecursiveIteratorIterator used internally.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::callHasChildren
RecursiveTreeIterator::current
RecursiveTreeIterator


Get current element

RecursiveTreeIterator::__construct
RecursiveTreeIterator::endChildren
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::current

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::current — Get current element

Descrição

public string RecursiveTreeIterator::current ( void )

Gets the current element prefixed and postfixed.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current element prefixed and postfixed.

RecursiveTreeIterator::__construct
RecursiveTreeIterator::endChildren
RecursiveTreeIterator


End children

RecursiveTreeIterator::current
RecursiveTreeIterator::endIteration
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::endChildren

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::endChildren — End children

Descrição

public void RecursiveTreeIterator::endChildren ( void )

Called when end recursing one level.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::current
RecursiveTreeIterator::endIteration
RecursiveTreeIterator


End iteration

RecursiveTreeIterator::endChildren
RecursiveTreeIterator::getEntry
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::endIteration

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::endIteration — End iteration

Descrição

public void RecursiveTreeIterator::endIteration ( void )

Called when the iteration ends (when RecursiveTreeIterator::valid() first returns FALSE)

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::endChildren
RecursiveTreeIterator::getEntry
RecursiveTreeIterator


Get current entry

RecursiveTreeIterator::endIteration
RecursiveTreeIterator::getPostfix
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::getEntry

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::getEntry — Get current entry

Descrição

public string RecursiveTreeIterator::getEntry ( void )

Gets the part of the tree built for the current element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the part of the tree built for the current element.

RecursiveTreeIterator::endIteration
RecursiveTreeIterator::getPostfix
RecursiveTreeIterator


Get the postfix

RecursiveTreeIterator::getEntry
RecursiveTreeIterator::getPrefix
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::getPostfix

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::getPostfix — Get the postfix

Descrição

public void RecursiveTreeIterator::getPostfix ( void )

Gets the string to place after the current element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string to place after the current element.

RecursiveTreeIterator::getEntry
RecursiveTreeIterator::getPrefix
RecursiveTreeIterator


Get the prefix

RecursiveTreeIterator::getPostfix
RecursiveTreeIterator::key
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::getPrefix

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::getPrefix — Get the prefix

Descrição

public string RecursiveTreeIterator::getPrefix ( void )

Gets the string to place in front of current element

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the string to place in front of current element

RecursiveTreeIterator::getPostfix
RecursiveTreeIterator::key
RecursiveTreeIterator


Get the key of the current element

RecursiveTreeIterator::getPrefix
RecursiveTreeIterator::next
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::key

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::key — Get the key of the current element

Descrição

public string RecursiveTreeIterator::key ( void )

Gets the current key prefixed and postfixed.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current key prefixed and postfixed.

RecursiveTreeIterator::getPrefix
RecursiveTreeIterator::next
RecursiveTreeIterator


Move to next element

RecursiveTreeIterator::key
RecursiveTreeIterator::nextElement
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::next

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::next — Move to next element

Descrição

public void RecursiveTreeIterator::next ( void )

Moves forward to the next element.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::key
RecursiveTreeIterator::nextElement
RecursiveTreeIterator


Next element

RecursiveTreeIterator::next
RecursiveTreeIterator::rewind
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::nextElement

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::nextElement — Next element

Descrição

public void RecursiveTreeIterator::nextElement ( void )

Called when the next element is available.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::next
RecursiveTreeIterator::rewind
RecursiveTreeIterator


Rewind iterator

RecursiveTreeIterator::nextElement
RecursiveTreeIterator::setPrefixPart
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::rewind

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::rewind — Rewind iterator

Descrição

public void RecursiveTreeIterator::rewind ( void )

Rewinds the iterator to the first element of the top level inner iterator.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::nextElement
RecursiveTreeIterator::setPrefixPart
RecursiveTreeIterator


Set a part of the prefix

RecursiveTreeIterator::rewind
RecursiveTreeIterator::valid
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::setPrefixPart

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::setPrefixPart — Set a part of the prefix

Descrição

public void RecursiveTreeIterator::setPrefixPart ( int $part , string $value )

Sets a part of the prefix used in the graphic tree.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

part

One of the RecursiveTreeIterator::PREFIX_* constants.

value

The value to assign to the part of the prefix specified in part.

Valor Retornado

Não há valor retornado.

RecursiveTreeIterator::rewind
RecursiveTreeIterator::valid
RecursiveTreeIterator


Check validity

RecursiveTreeIterator::setPrefixPart
RegexIterator
RecursiveTreeIterator
PHP Manual

RecursiveTreeIterator::valid

(PHP 5 >= 5.3.0)

RecursiveTreeIterator::valid — Check validity

Descrição

public bool RecursiveTreeIterator::valid ( void )

Check whether the current position is valid.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the current position is valid, otherwise FALSE

RecursiveTreeIterator::setPrefixPart
RegexIterator
RecursiveTreeIterator


The RegexIterator class

Introdução

This iterator can be used to filter another iterator based on a regular expression.

Sinopse da classe

RegexIterator extends FilterIterator {
/* Constants */
const integer MATCH = 0 ;
const integer GET_MATCH = 1 ;
const integer ALL_MATCHES = 2 ;
const integer SPLIT = 3 ;
const integer REPLACE = 4 ;
const integer USE_KEY = 1 ;
/* Methods */
__construct ( Iterator $iterator , string $regex [, int $mode [, int $flags [, int $preg_flags ]]] )
public bool accept ( void )
public int getFlags ( void )
public int getMode ( void )
public int getPregFlags ( void )
public void setFlags ( int $flags )
public void setMode ( int $mode )
public void setPregFlags ( int $preg_flags )
/* Inherited methods */
abstract bool FilterIterator::accept ( void )
FilterIterator::__construct ( Iterator $iterator )
mixed FilterIterator::current ( void )
Iterator FilterIterator::getInnerIterator ( void )
mixed FilterIterator::key ( void )
void FilterIterator::next ( void )
void FilterIterator::rewind ( void )
bool FilterIterator::valid ( void )
}

Constantes pré-definidas

RegexIterator operation modes

RegexIterator::ALL_MATCHES

Return all matches for the current entry (see preg_match_all()).

RegexIterator::GET_MATCH

Return the first match for the current entry (see preg_match()).

RegexIterator::MATCH

Only execute match (filter) for the current entry (see preg_match()).

RegexIterator::REPLACE

Replace the current entry (see preg_replace(); Not fully implemented yet)

RegexIterator::SPLIT

Returns the split values for the current entry (see preg_split()).

RegexIterator Flags

RegexIterator::USE_KEY

Special flag: Match the entry key instead of the entry value.

Índice

  • RegexIterator::accept — Get accept status
  • RegexIterator::__construct — Create a new RegexIterator
  • RegexIterator::getFlags — Get flags
  • RegexIterator::getMode — Returns operation mode.
  • RegexIterator::getPregFlags — Returns the regular expression flags.
  • RegexIterator::setFlags — Sets the flags.
  • RegexIterator::setMode — Sets the operation mode.
  • RegexIterator::setPregFlags — Sets the regular expression flags.
RecursiveTreeIterator::valid
RegexIterator::accept
Iterators


Get accept status

RegexIterator
RegexIterator::__construct
RegexIterator
PHP Manual

RegexIterator::accept

(PHP 5 >= 5.2.0)

RegexIterator::accept — Get accept status

Descrição

public bool RegexIterator::accept ( void )

Matches (string)  RegexIterator::current()
(or  RegexIterator::key() if the
RegexIterator::USE_KEY flag is set)
against the regular expression.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if a match, FALSE otherwise.

Exemplos

Exemplo #1 RegexIterator::accept() example

This example shows that only items matching the regular expression are accepted.

<?php
$names = new ArrayIterator(array('Ann', 'Bob', 'Charlie', 'David'));
$filter = new RegexIterator($names, '/^[B-D]/');
foreach ($filter as $name) {
    echo $name . PHP_EOL;
}
?>

O exemplo acima irá imprimir:

Bob
Charlie
David

Veja Também

  • RegexIterator constants
  • RegexIterator::setFlags() - Sets the flags.

RegexIterator
RegexIterator::__construct
RegexIterator


Create a new RegexIterator

RegexIterator::accept
RegexIterator::getFlags
RegexIterator
PHP Manual

RegexIterator::__construct

(PHP 5 >= 5.2.0)

RegexIterator::__construct — Create a new RegexIterator

Descrição

RegexIterator::__construct() ( Iterator $iterator , string $regex [, int $mode [, int $flags [, int $preg_flags ]]] )

Create a new RegexIterator which filters an Iterator using a regular expression.

Parâmetros

iterator

The iterator to apply this regex filter to.

regex

The regular expression to match.

mode

Operation mode, see RegexIterator::setMode() for a list of modes.

flags

Special flags, see RegexIterator::setFlags() for a list of available flags.

preg_flags

The regular expression flags. These flags depend on the operation mode parameter:

RegexIterator preg_flags
operation mode | available flags
RegexIterator::ALL_MATCHES | See preg_match_all().
RegexIterator::GET_MATCH | See preg_match().
RegexIterator::MATCH | See preg_match().
RegexIterator::REPLACE | none.
RegexIterator::SPLIT | See preg_split().

Exemplos

Exemplo #1 RegexIterator::__construct() example

Creates a new RegexIterator that filters all strings that start with 'test'.

<?php
$arrayIterator = new ArrayIterator(array('test 1', 'another test', 'test 123'));
$regexIterator = new RegexIterator($arrayIterator, '/^test/');

foreach ($regexIterator as $value) {
    echo $value . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

test 1
test 123

Veja Também

  • preg_match() - Perform a regular expression match
  • preg_match_all() - Perform a global regular expression match
  • preg_replace() - Perform a regular expression search and replace
  • preg_split() - Divide a string por uma expressão regular

RegexIterator::accept
RegexIterator::getFlags
RegexIterator


Get flags

RegexIterator::__construct
RegexIterator::getMode
RegexIterator
PHP Manual

RegexIterator::getFlags

(PHP 5 >= 5.2.0)

RegexIterator::getFlags — Get flags

Descrição

public int RegexIterator::getFlags ( void )

Returns the flags, see RegexIterator::setFlags() for a list of available flags.

Valor Retornado

Returns the set flags.

Exemplos

Exemplo #1 RegexIterator::getFlags() example

<?php

$test = array ('str1' => 'test 1', 'teststr2' => 'another test', 'str3' => 'test 123');

$arrayIterator = new ArrayIterator($test);
$regexIterator = new RegexIterator($arrayIterator, '/^test/');
$regexIterator->setFlags(RegexIterator::USE_KEY);

if ($regexIterator->getFlags() & RegexIterator::USE_KEY) {
    echo 'Filtering based on the array keys.';
} else {
    echo 'Filtering based on the array values.';
}
?>

O exemplo acima irá imprimir:

Filtering based on the array keys.

Veja Também

  • RegexIterator::setFlags() - Sets the flags.

RegexIterator::__construct
RegexIterator::getMode
RegexIterator


Returns operation mode.

RegexIterator::getFlags
RegexIterator::getPregFlags
RegexIterator
PHP Manual

RegexIterator::getMode

(PHP 5 >= 5.2.0)

RegexIterator::getMode — Returns operation mode.

Descrição

public int RegexIterator::getMode ( void )

Returns the operation mode, see RegexIterator::setMode() for the list of operation modes.

Valor Retornado

Returns the operation mode.

Exemplos

Exemplo #1 RegexIterator::getMode() example

<?php

$test = array ('str1' => 'test 1', 'teststr2' => 'another test', 'str3' => 'test 123');

$arrayIterator = new ArrayIterator($test);
$regexIterator = new RegexIterator($arrayIterator, '/^[a-z]+/', RegexIterator::GET_MATCH);

$mode = $regexIterator->getMode();
if ($mode & RegexIterator::GET_MATCH) {
    echo 'Getting the match for each item.';
} elseif ($mode & RegexIterator::ALL_MATCHES) {
    echo 'Getting all matches for each item.';
} elseif ($mode & RegexIterator::MATCH) {
    echo 'Getting each item if it matches.';
} elseif ($mode & RegexIterator::SPLIT) {
    echo 'Getting split pieces of each.';
}
?>

O exemplo acima irá imprimir:

Getting the match for each item.

Veja Também

  • RegexIterator::setMode() - Sets the operation mode.

RegexIterator::getFlags
RegexIterator::getPregFlags
RegexIterator


Returns the regular expression flags.

RegexIterator::getMode
RegexIterator::setFlags
RegexIterator
PHP Manual

RegexIterator::getPregFlags

(PHP 5 >= 5.2.0)

RegexIterator::getPregFlags — Returns the regular expression flags.

Descrição

public int RegexIterator::getPregFlags ( void )

Returns the regular expression flags, see RegexIterator::__construct() for the list of flags.

Valor Retornado

Returns a bitmask of the regular expression flags.

Exemplos

Exemplo #1 RegexIterator::getPregFlags() example

<?php

$test = array ('str1' => 'test 1', 'teststr2' => 'another test', 'str3' => 'test 123');

$arrayIterator = new ArrayIterator($test);
$regexIterator = new RegexIterator($arrayIterator, '/\s/', RegexIterator::SPLIT);
$regexIterator->setPregFlags(PREG_SPLIT_NO_EMPTY | PREG_SPLIT_OFFSET_CAPTURE);

if ($regexIterator->getPregFlags() & PREG_SPLIT_NO_EMPTY) {
    echo 'Ignoring empty pieces';
} else {
    echo 'Not ignoring empty pieces';
}

?>

O exemplo acima irá imprimir:

Ignoring empty pieces

Veja Também

  • RegexIterator::setPregFlags() - Sets the regular expression flags.

RegexIterator::getMode
RegexIterator::setFlags
RegexIterator


Sets the flags.

RegexIterator::getPregFlags
RegexIterator::setMode
RegexIterator
PHP Manual

RegexIterator::setFlags

(PHP 5 >= 5.2.0)

RegexIterator::setFlags — Sets the flags.

Descrição

public void RegexIterator::setFlags ( int $flags )

Sets the flags.

Parâmetros

flags

The flags to set, a bitmask of class constants.

The available flags are listed below. The actual meanings of these flags are described in the predefined constants.

RegexIterator flags
value | constant
1 | RegexIterator::USE_KEY

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 RegexIterator::setFlags() example

Creates a new RegexIterator that filters all entries whose key starts with 'test'.

<?php
$test = array ('str1' => 'test 1', 'teststr2' => 'another test', 'str3' => 'test 123');

$arrayIterator = new ArrayIterator($test);
$regexIterator = new RegexIterator($arrayIterator, '/^test/');
$regexIterator->setFlags(RegexIterator::USE_KEY);

foreach ($regexIterator as $key => $value) {
    echo $key . ' => ' . $value . "\n";
}
?>

O exemplo acima irá imprimir:

teststr2 => another test

Veja Também

  • RegexIterator::getFlags() - Get flags

RegexIterator::getPregFlags
RegexIterator::setMode
RegexIterator


Sets the operation mode.

RegexIterator::setFlags
RegexIterator::setPregFlags
RegexIterator
PHP Manual

RegexIterator::setMode

(PHP 5 >= 5.2.0)

RegexIterator::setMode — Sets the operation mode.

Descrição

public void RegexIterator::setMode ( int $mode )

Sets the operation mode.

Parâmetros

mode

The operation mode.

The available modes are listed below. The actual meanings of these modes are described in the predefined constants.

RegexIterator modes
value | constant
0 | RegexIterator::MATCH
1 | RegexIterator::GET_MATCH
2 | RegexIterator::ALL_MATCHES
3 | RegexIterator::SPLIT
4 | RegexIterator::REPLACE

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 RegexIterator::setMode() example

<?php
$test = array ('str1' => 'test 1', 'test str2' => 'another test', 'str3' => 'test 123');

$arrayIterator = new ArrayIterator($test);
// Filter everything that starts with 'test ' followed by one or more numbers.
$regexIterator = new RegexIterator($arrayIterator, '/^test (\d+)/');
// Operation mode: Replace actual value with the matches
$regexIterator->setMode(RegexIterator::GET_MATCH);

foreach ($regexIterator as $key => $value) {
    // print out the matched number(s)
    echo $key . ' => ' . $value[1] . PHP_EOL;
}
?>

O exemplo acima irá imprimir algo similar a:

str1 => 1
str3 => 123

Veja Também

  • RegexIterator::getMode() - Returns operation mode.

RegexIterator::setFlags
RegexIterator::setPregFlags
RegexIterator


Sets the regular expression flags.

RegexIterator::setMode
SimpleXMLIterator
RegexIterator
PHP Manual

RegexIterator::setPregFlags

(PHP 5 >= 5.2.0)

RegexIterator::setPregFlags — Sets the regular expression flags.

Descrição

public void RegexIterator::setPregFlags ( int $preg_flags )

Sets the regular expression flags.

Parâmetros

preg_flags

The regular expression flags. See RegexIterator::__construct() for an overview of available flags.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 RegexIterator::setPregFlags() example

Creates a new RegexIterator that filters all entries with where the array key starts with 'test'.

<?php
$test = array ('test 1', 'another test', 'test 123');

$arrayIterator = new ArrayIterator($test);
$regexIterator = new RegexIterator($arrayIterator, '/^test/', RegexIterator::GET_MATCH);

$regexIterator->setPregFlags(PREG_OFFSET_CAPTURE);

foreach ($regexIterator as $key => $value) {
    var_dump($value);
}
?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  array(2) {
    [0]=>
    string(4) "test"
    [1]=>
    int(0)
  }
}
array(1) {
  [0]=>
  array(2) {
    [0]=>
    string(4) "test"
    [1]=>
    int(0)
  }
}

Veja Também

  • RegexIterator::getPregFlags() - Returns the regular expression flags.

RegexIterator::setMode
SimpleXMLIterator
RegexIterator


A classe SimpleXMLIterator

Introdução

...

Sinopse da classe

SimpleXMLIterator extends SimpleXMLElement implements RecursiveIterator , Traversable , Iterator , Countable {
/* Métodos */
mixed current ( void )
object getChildren ( void )
bool hasChildren ( void )
mixed key ( void )
void next ( void )
void rewind ( void )
bool valid ( void )
}

Índice

  • SimpleXMLIterator::current — Retorna o elemento atual do SimpleXML
  • SimpleXMLIterator::getChildren — Retorna um iterador para o elemento atual se ele for um objeto SimpleXML
  • SimpleXMLIterator::hasChildren — Retorna se o elemento atual é um objeto SimpleXML
  • SimpleXMLIterator::key — Retorna a chave atual do SimpleXML
  • SimpleXMLIterator::next — Avança para o próximo elemento
  • SimpleXMLIterator::rewind — Recomeça o SimpleXML
  • SimpleXMLIterator::valid — Verifica se o SimpleXML possui mais elementos
RegexIterator::setPregFlags
SimpleXMLIterator::current
Iterators


Retorna o elemento atual do SimpleXML

SimpleXMLIterator
SimpleXMLIterator::getChildren
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::current

(PHP 5 >= 5.1.0)

SimpleXMLIterator::current — Retorna o elemento atual do SimpleXML

Descrição

mixed SimpleXMLIterator::current ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O atual elemento SimpleXML.

SimpleXMLIterator
SimpleXMLIterator::getChildren
SimpleXMLIterator


Retorna um iterador para o elemento atual se ele for um objeto SimpleXML

SimpleXMLIterator::current
SimpleXMLIterator::hasChildren
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::getChildren

(PHP 5 >= 5.1.0)

SimpleXMLIterator::getChildren — Retorna um iterador para o elemento atual se ele for um objeto SimpleXML

Descrição

object SimpleXMLIterator::getChildren ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Um iterador para o atual elemento, se ele Ã© um simples objeto SimpleXML.

SimpleXMLIterator::current
SimpleXMLIterator::hasChildren
SimpleXMLIterator


Retorna se o elemento atual é um objeto SimpleXML

SimpleXMLIterator::getChildren
SimpleXMLIterator::key
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::hasChildren

(PHP 5 >= 5.1.0)

SimpleXMLIterator::hasChildren — Retorna se o elemento atual é um objeto SimpleXML

Descrição

bool SimpleXMLIterator::hasChildren ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se o atual elemento é um objeto SimpleXML, FALSE caso contrário

SimpleXMLIterator::getChildren
SimpleXMLIterator::key
SimpleXMLIterator


Retorna a chave atual do SimpleXML

SimpleXMLIterator::hasChildren
SimpleXMLIterator::next
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::key

(PHP 5 >= 5.1.0)

SimpleXMLIterator::key — Retorna a chave atual do SimpleXML

Descrição

mixed SimpleXMLIterator::key ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A chave atual do SimpleXML.

SimpleXMLIterator::hasChildren
SimpleXMLIterator::next
SimpleXMLIterator


Avança para o próximo elemento

SimpleXMLIterator::key
SimpleXMLIterator::rewind
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::next

(PHP 5 >= 5.1.0)

SimpleXMLIterator::next — Avança para o próximo elemento

Descrição

void SimpleXMLIterator::next ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SimpleXMLIterator::key
SimpleXMLIterator::rewind
SimpleXMLIterator


Recomeça o SimpleXML

SimpleXMLIterator::next
SimpleXMLIterator::valid
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::rewind

(PHP 5 >= 5.1.0)

SimpleXMLIterator::rewind — Recomeça o SimpleXML

Descrição

void SimpleXMLIterator::rewind ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SimpleXMLIterator::next
SimpleXMLIterator::valid
SimpleXMLIterator


Verifica se o SimpleXML possui mais elementos

SimpleXMLIterator::rewind
Interfaces
SimpleXMLIterator
PHP Manual

SimpleXMLIterator::valid

(PHP 5 >= 5.1.0)

SimpleXMLIterator::valid — Verifica se o SimpleXML possui mais elementos

Descrição

bool SimpleXMLIterator::valid ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE se contÃ©m mais entradas SimpleXML, FALSE caso contrÃ¡rio

SimpleXMLIterator::rewind
Interfaces
SimpleXMLIterator


Interfaces

Índice

  • Countable
  • OuterIterator
  • RecursiveIterator
  • SeekableIterator

SPL provides a set of interfaces.

See also the Predefined Interfaces

Interface list

  • Countable
  • OuterIterator
  • RecursiveIterator
  • SeekableIterator
  • SplObserver
  • SplSubject
SimpleXMLIterator::valid
Countable
SPL


The Countable interface

Introdução

Classes implementing Countable can be used with the count() function.

Resumo da Interface

Countable {
/* Methods */
abstract public int count ( void )
}

Índice

  • Countable::count — Count elements of an object
Interfaces
Countable::count
Interfaces


Count elements of an object

Countable
OuterIterator
Countable
PHP Manual

Countable::count

(PHP 5 >= 5.1.0)

Countable::count — Count elements of an object

Descrição

abstract public int Countable::count ( void )

This method is executed when using the count() function on an object implementing Countable.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The custom count as an integer.

Nota:

The return value is cast to an integer.

Exemplos

Exemplo #1 Countable::count() example

<?php
class myCounter implements Countable {
    public function count() {
        static $count = 0;
        return ++$count;
    }
}

$counter = new myCounter;

for($i=0; $i<10; ++$i) {
    echo "I have been count()ed " . count($counter) . " times\n";
}
?>

O exemplo acima irá imprimir algo similar a:

I have been count()ed 1 times
I have been count()ed 2 times
I have been count()ed 3 times
I have been count()ed 4 times
I have been count()ed 5 times
I have been count()ed 6 times
I have been count()ed 7 times
I have been count()ed 8 times
I have been count()ed 9 times
I have been count()ed 10 times

Countable
OuterIterator
Countable


The OuterIterator interface

Introdução

Classes implementing OuterIterator can be used to iterate over iterators.

Resumo da Interface

OuterIterator extends Iterator {
/* Methods */
public Iterator getInnerIterator ( void )
/* Inherited methods */
abstract public mixed Iterator::current ( void )
abstract public scalar Iterator::key ( void )
abstract public void Iterator::next ( void )
abstract public void Iterator::rewind ( void )
abstract public boolean Iterator::valid ( void )
}

Índice

  • OuterIterator::getInnerIterator — Returns the inner iterator for the current entry.
Countable::count
OuterIterator::getInnerIterator
Interfaces


Returns the inner iterator for the current entry.

OuterIterator
RecursiveIterator
OuterIterator
PHP Manual

OuterIterator::getInnerIterator

(PHP 5 >= 5.1.0)

OuterIterator::getInnerIterator — Returns the inner iterator for the current entry.

Descrição

public Iterator OuterIterator::getInnerIterator ( void )

Returns the inner iterator for the current iterator entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The inner iterator for the current entry.

OuterIterator
RecursiveIterator
OuterIterator


The RecursiveIterator interface

Introdução

Classes implementing RecursiveIterator can be used to iterate over iterators recursively.

Resumo da Interface

RecursiveIterator extends Iterator {
/* Methods */
public RecursiveIterator getChildren ( void )
public bool hasChildren ( void )
/* Inherited methods */
abstract public mixed Iterator::current ( void )
abstract public scalar Iterator::key ( void )
abstract public void Iterator::next ( void )
abstract public void Iterator::rewind ( void )
abstract public boolean Iterator::valid ( void )
}

Índice

  • RecursiveIterator::getChildren — Returns an iterator for the current entry.
  • RecursiveIterator::hasChildren — Returns if an iterator can be created fot the current entry.
OuterIterator::getInnerIterator
RecursiveIterator::getChildren
Interfaces


Returns an iterator for the current entry.

RecursiveIterator
RecursiveIterator::hasChildren
RecursiveIterator
PHP Manual

RecursiveIterator::getChildren

(PHP 5 >= 5.1.0)

RecursiveIterator::getChildren — Returns an iterator for the current entry.

Descrição

public RecursiveIterator RecursiveIterator::getChildren ( void )

Returns an iterator for the current iterator entry.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An iterator for the current entry.

Veja Também

  • RecursiveIterator::hasChildren() - Returns if an iterator can be created fot the current entry.

RecursiveIterator
RecursiveIterator::hasChildren
RecursiveIterator


Returns if an iterator can be created fot the current entry.

RecursiveIterator::getChildren
SeekableIterator
RecursiveIterator
PHP Manual

RecursiveIterator::hasChildren

(PHP 5 >= 5.1.0)

RecursiveIterator::hasChildren — Returns if an iterator can be created fot the current entry.

Descrição

public bool RecursiveIterator::hasChildren ( void )

Returns if an iterator can be created fot the current entry. RecursiveIterator::getChildren().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the current entry can be iterated over, otherwise returns FALSE.

Veja Também

  • RecursiveIterator::getChildren() - Returns an iterator for the current entry.

RecursiveIterator::getChildren
SeekableIterator
RecursiveIterator


The SeekableIterator interface

Introdução

The Seekable iterator.

Resumo da Interface

SeekableIterator extends Iterator {
/* Methods */
abstract public void seek ( int $position )
/* Inherited methods */
abstract public mixed Iterator::current ( void )
abstract public scalar Iterator::key ( void )
abstract public void Iterator::next ( void )
abstract public void Iterator::rewind ( void )
abstract public boolean Iterator::valid ( void )
}

Exemplo #1 Basic usage

This example demonstrates creating a custom SeekableIterator, seeking to a position and handling an invalid position.

<?php
class MySeekableIterator implements SeekableIterator {

    private $position = 0;

    private $array = array(
        "first element",
        "second element",
        "third element",
        "fourth element"
    );

    public function seek($position) {
      $this->position = $position;

      if (!$this->valid()) {
          throw new OutOfBoundsException("invalid seek position ($position)");
      }
    }

    /* Methods required for Iterator interface */

    public function __construct() {
        $this->position = 0;
    }

    public function rewind() {
        $this->position = 0;
    }

    public function current() {
        return $this->array[$this->position];
    }

    public function key() {
        return $this->position;
    }

    public function next() {
        ++$this->position;
    }

    public function valid() {
        return isset($this->array[$this->position]);
    }
}

try {

    $it = new MySeekableIterator;
    echo $it->current(), "\n";

    $it->seek(2);
    echo $it->current(), "\n";

    $it->seek(1);
    echo $it->current(), "\n";

    $it->seek(10);

} catch (OutOfBoundsException $e) {
    echo $e->getMessage();
}
?>

O exemplo acima irá imprimir algo similar a:

first element
third element
second element
invalid seek position (10)

Índice

  • SeekableIterator::seek — Seeks to a position
RecursiveIterator::hasChildren
SeekableIterator::seek
Interfaces


Seeks to a position

SeekableIterator
Exceptions
SeekableIterator
PHP Manual

SeekableIterator::seek

(PHP 5 >= 5.1.0)

SeekableIterator::seek — Seeks to a position

Descrição

abstract public void SeekableIterator::seek ( int $position )

Seeks to a given position in the iterator.

Parâmetros

position

The position to seek to.

Valor Retornado

Não há valor retornado.

Erros

Implementations should throw an OutOfBoundsException if the position is not seekable.

Exemplos

Exemplo #1 SeekableIterator::seek() example

Seek to the item at position 3 in the iterator (ArrayIterator implements SeekableIterator).

<?php
$array = array("apple", "banana", "cherry", "damson", "elderberry");
$iterator = new ArrayIterator($array);
$iterator->seek(3);
echo $iterator->current();
?>

O exemplo acima irá imprimir algo similar a:

damson

Veja Também

  • SeekableIterator
  • Iterator

SeekableIterator
Exceptions
SeekableIterator


Exceptions

Índice

  • BadFunctionCallException
  • BadMethodCallException
  • DomainException
  • InvalidArgumentException
  • LengthException
  • LogicException
  • OutOfBoundsException
  • OutOfRangeException
  • OverflowException
  • RangeException
  • RuntimeException
  • UnderflowException
  • UnexpectedValueException

SPL provides a set of standard Exceptions.

See also the Exceções pré-definidas

SeekableIterator::seek
BadFunctionCallException
SPL


The BadFunctionCallException class

Introdução

Exception thrown if a callback refers to an undefined function or if some arguments are missing.

Sinopse da classe

BadFunctionCallException extends LogicException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
Exceptions
BadMethodCallException
Exceptions


The BadMethodCallException class

Introdução

Exception thrown if a callback refers to an undefined method or if some arguments are missing.

Sinopse da classe

BadMethodCallException extends BadFunctionCallException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
BadFunctionCallException
DomainException
Exceptions


The DomainException class

Introdução

Exception thrown if a value does not adhere to a defined valid data domain.

Sinopse da classe

DomainException extends LogicException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
BadMethodCallException
InvalidArgumentException
Exceptions


The InvalidArgumentException class

Introdução

Exception thrown if an argument does not match with the expected value.

Sinopse da classe

InvalidArgumentException extends LogicException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
DomainException
LengthException
Exceptions


The LengthException class

Introdução

Exception thrown if a length is invalid.

Sinopse da classe

LengthException extends LogicException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
InvalidArgumentException
LogicException
Exceptions


The LogicException class

Introdução

Exception that represents error in the program logic. This kind of exceptions should directly leed to a fix in your code.

Sinopse da classe

LogicException extends Exception {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
LengthException
OutOfBoundsException
Exceptions


The OutOfBoundsException class

Introdução

Exception thrown if a value is not a valid key. This represents errors that cannot be detected at compile time.

Sinopse da classe

OutOfBoundsException extends RuntimeException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
LogicException
OutOfRangeException
Exceptions


The OutOfRangeException class

Introdução

Exception thrown when an illegal index was requested. This represents errors that should be detected at compile time.

Sinopse da classe

OutOfRangeException extends LogicException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
OutOfBoundsException
OverflowException
Exceptions


The OverflowException class

Introdução

Exception thrown when you add an element into a full container.

Sinopse da classe

OverflowException extends RuntimeException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
OutOfRangeException
RangeException
Exceptions


The RangeException class

Introdução

Exception thrown to indicate range errors during program execution. Normally this means there was an arithmetic error other than under/overflow. This is the runtime version of DomainException.

Sinopse da classe

RangeException extends RuntimeException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
OverflowException
RuntimeException
Exceptions


The RuntimeException class

Introdução

Exception thrown if an error which can only be found on runtime occurs.

Sinopse da classe

RuntimeException extends Exception {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
RangeException
UnderflowException
Exceptions


The UnderflowException class

Introdução

Exception thrown when you try to remove an element of an empty container.

Sinopse da classe

UnderflowException extends RuntimeException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
RuntimeException
UnexpectedValueException
Exceptions


The UnexpectedValueException class

Introdução

Exception thrown if a value does not match with a set of values. Typically this happens when a function calls another function and espects the return value to be of a certain type or value not including arithmetic or buffer related errors.

Sinopse da classe

UnexpectedValueException extends RuntimeException {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}
UnderflowException
Funções da SPL
Exceptions


Funções da SPL

Índice

  • class_implements — Retorna as interfaces que são implementadas pela classe
  • class_parents — Retorna as classes pai de determinada classe
  • iterator_apply — Call a function for every element in an iterator
  • iterator_count — Conta o número de elementos do iterador
  • iterator_to_array — Copia o iterador em um array
  • spl_autoload_call — Tenta todas as funções __autoload() registradas para carregar a classe solicitada
  • spl_autoload_extensions — Registra e retorna as extensões de arquivo padrões para o spl_autoload
  • spl_autoload_functions — Retorna todas as funções __autoload() registradas
  • spl_autoload_register — Registra a função dada como implementação de __autoload()
  • spl_autoload_unregister — Retira a função dada como implementação de __autoload()
  • spl_autoload — Implementação padrão de __autoload()
  • spl_classes — Retorna as classes da SPL disponíveis
  • spl_object_hash — Retorna uma identificação hash do objeto dado
UnexpectedValueException
class_implements
SPL


Retorna as interfaces que são implementadas pela classe

Funções da SPL
class_parents
Funções da SPL
PHP Manual

class_implements

(PHP 5 >= 5.1.0)

class_implements — Retorna as interfaces que são implementadas pela classe

Descrição

array class_implements ( mixed $class [, bool $autoload ] )

Esta função retorna um array com os nomes das interfaces que a classe class e seus pais implementam.

Parâmetros

class

Um objeto (instância da classe) ou uma string (nome da classe).

autoload

Permitir ou não que essa função carregue a classe automaticamente pelo método mágico __autoload O padrão é TRUE.

Valor Retornado

Um array em sucesso, ou FALSE em caso de erro.

Histórico

Versão | Descrição
5.1.0 | Adicionada a opção de passar o parâmetro class como uma string. Adicionado o parâmetro autoload.

Exemplos

Exemplo #1 Exemplo de class_implements()

<?php

interface foo { }
class bar implements foo {}

print_r(class_implements(new bar));

// desde o PHP 5.1.0 você também pode especificar o parâmetro como uma string
print_r(class_implements('bar'));

function __autoload($class_name) {
   require_once $class_name . '.php';
}

// utiliza o __autoload para carregar a classe 'not_loaded'
print_r(class_implements('not_loaded', true));

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [foo] => foo
)

Array
(
    [interface_of_not_loaded] => interface_of_not_loaded
)

Veja Também

  • class_parents() - Retorna as classes pai de determinada classe
  • get_declared_interfaces() - Retorna um array com todas as interfaces declaradas

Funções da SPL
class_parents
Funções da SPL


Retorna as classes pai de determinada classe

class_implements
iterator_apply
Funções da SPL
PHP Manual

class_parents

(PHP 5 >= 5.1.0)

class_parents — Retorna as classes pai de determinada classe

Descrição

array class_parents ( mixed $class [, bool $autoload ] )

Esta função retorna um array com o nome das classes pai da class dada.

Parâmetros

class

Um objeto (instância da classe) ou uma string (nome da classe).

autoload

Permitir ou não que essa função carregue a classe automaticamente pelo método mágico __autoload O padrão é TRUE.

Valor Retornado

Um array em sucesso, ou FALSE em caso de erro.

Histórico

Versão | Descrição
5.1.0 | Adicionada a opção de passar o parâmetro class como uma string. Adicionado o parâmetro autoload.

Exemplos

Exemplo #1 Exemplo de class_parents()

<?php

class foo { }
class bar extends foo {}

print_r(class_parents(new bar));

// desde o PHP 5.1.0 você também pode especificar o parâmetro como uma string
print_r(class_parents('bar'));

function __autoload($class_name) {
   require_once $class_name . '.php';
}

// utiliza o __autoload para carregar a classe 'not_loaded'
print_r(class_parents('not_loaded', true));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [foo] => foo
)

Array
(
    [parent_of_not_loaded] => parent_of_not_loaded
)

Veja Também

  • class_implements() - Retorna as interfaces que são implementadas pela classe

class_implements
iterator_apply
Funções da SPL


Call a function for every element in an iterator

class_parents
iterator_count
Funções da SPL
PHP Manual

iterator_apply

(PHP 5 >= 5.1.0)

iterator_apply — Call a function for every element in an iterator

Descrição

int iterator_apply ( Traversable $iterator , callback $function [, array $args ] )

Calls a function for every element in an iterator.

Parâmetros

iterator

The class to iterate over.

function

The callback function to call on every element.

Nota: The function must return TRUE in order to continue iterating over the iterator.

args

Arguments to pass to the callback function.

Valor Retornado

Returns the iteration count.

Exemplos

Exemplo #1 iterator_apply() example

<?php
function print_caps(Iterator $iterator) {
    echo strtoupper($iterator->current()) . "\n";
    return TRUE;
}

$it = new ArrayIterator(array("Apples", "Bananas", "Cherries"));
iterator_apply($it, "print_caps", array($it));
?>

O exemplo acima irá imprimir:

APPLES
BANANAS
CHERRIES

Veja Também

  • array_walk() - Aplica uma determinada funcão em cada elemento de um array

class_parents
iterator_count
Funções da SPL


Conta o número de elementos do iterador

iterator_apply
iterator_to_array
Funções da SPL
PHP Manual

iterator_count

(PHP 5 >= 5.1.0)

iterator_count — Conta o número de elementos do iterador

Descrição

int iterator_count ( IteratorAggregate $iterator )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Conta os elementos em um iterador.

Parâmetros

iterator

O iterador a ser contado.

Valor Retornado

O número de elementos no iterator.

iterator_apply
iterator_to_array
Funções da SPL


Copia o iterador em um array

iterator_count
spl_autoload_call
Funções da SPL
PHP Manual

iterator_to_array

(PHP 5 >= 5.1.0)

iterator_to_array — Copia o iterador em um array

Descrição

array iterator_to_array ( IteratorAggregate $iterator [, bool $use_keys ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Conta os elementos em um iterador.

Parâmetros

iterator

O iterador a ser contado.

use_keys

Valor Retornado

O número de elementos em iterator.

iterator_count
spl_autoload_call
Funções da SPL


Tenta todas as funções __autoload() registradas para carregar a classe solicitada

iterator_to_array
spl_autoload_extensions
Funções da SPL
PHP Manual

spl_autoload_call

(PHP 5 >= 5.1.2)

spl_autoload_call — Tenta todas as funções __autoload() registradas para carregar a classe solicitada

Descrição

void spl_autoload_call ( string $class_name )

Esta função pode ser usada para procurar manualmente por uma classe ou interface usando as funções __autoload registradas.

Parâmetros

class_name

O nome da classe sendo procurada.

Valor Retornado

Não há valor retornado.

iterator_to_array
spl_autoload_extensions
Funções da SPL


Registra e retorna as extensões de arquivo padrões para o spl_autoload

spl_autoload_call
spl_autoload_functions
Funções da SPL
PHP Manual

spl_autoload_extensions

(PHP 5 >= 5.1.2)

spl_autoload_extensions — Registra e retorna as extensões de arquivo padrões para o spl_autoload

Descrição

string spl_autoload_extensions ([ string $file_extensions ] )

Esta função permite modificar e verificar as extensões de arquivo que a função __autoload interna de contingência da spl_autoload usará. Quanto chamada sem nenhum argumento, ela apenas retorna a lista atual de extensões separadas por vírgula. Para modificar a lista de extensões de arquivo, simplesmente chame a função com a nova lista de extensões de arquivos a serem usadas em uma única string, cada extensão separada por vírgula.

spl_autoload_call
spl_autoload_functions
Funções da SPL


Retorna todas as funções __autoload() registradas

spl_autoload_extensions
spl_autoload_register
Funções da SPL
PHP Manual

spl_autoload_functions

(PHP 5 >= 5.1.2)

spl_autoload_functions — Retorna todas as funções __autoload() registradas

Descrição

array spl_autoload_functions ( void )

Esta função retorna um array com todas as funções __autoload registradas. Se a pilha de autoload não estiver ativa, o retorno é false. Se nenhuma função estiver registrada, o retorno será um array vazio.

spl_autoload_extensions
spl_autoload_register
Funções da SPL


Registra a função dada como implementação de __autoload()

spl_autoload_functions
spl_autoload_unregister
Funções da SPL
PHP Manual

spl_autoload_register

(PHP 5 >= 5.1.2)

spl_autoload_register — Registra a função dada como implementação de __autoload()

Descrição

bool spl_autoload_register ([ callback $autoload_function ] )

Registra a função na pilha de __autoload da SPL. Se a pilha ainda não estiver ativa, ela será ativada. Se nenhum parâmetro for passado, a implementação padrão spl_autoload será registrada. Quando o registro for bem sucedido, o retono é true; em caso de falha, será retornado false.

Se o seu código já possuir uma função __autoload, essa função deve ser registrada na pilha de __autoload explicitamente. Isso é necessário porque a spl_autoload_register() irá de fato substituir internamente a função de __autoload por spl_autoload() ou spl_autoload_call().

spl_autoload_functions
spl_autoload_unregister
Funções da SPL


Retira a função dada como implementação de __autoload()

spl_autoload_register
spl_autoload
Funções da SPL
PHP Manual

spl_autoload_unregister

(PHP 5 >= 5.1.2)

spl_autoload_unregister — Retira a função dada como implementação de __autoload()

Descrição

bool spl_autoload_unregister ( mixed $autoload_function )

Retira uma função da pilha de __autoload da SPL. Se a pilha estiver ativa e ficar vazia após retirar a função, ela será desativada. Quando a remoção é bem sucedida, o retorno é true; em caso de falha será retornado false.

Quando essa função faz com que a pilha de autoload seja desativada, a função de __autoload existente não será reativada.

spl_autoload_register
spl_autoload
Funções da SPL


Implementação padrão de __autoload()

spl_autoload_unregister
spl_classes
Funções da SPL
PHP Manual

spl_autoload

(PHP 5 >= 5.1.2)

spl_autoload — Implementação padrão de __autoload()

Descrição

void spl_autoload ( string $class_name [, string $file_extensions ] )

Esta funçao é para ser usada como implementação padrão para __autoload(). Se nenhuma outra função for especificada e a autoload_register() for chamada sem argumentos, esta função será usada para qualquer posterior chamada ao __autoload(). Por padrão, ela verifica todos os caminhos de inclusão por arquivos formados pelo nome da classe em minúsculo acrescido das extensões de arquivo .inc e .php.

spl_autoload_unregister
spl_classes
Funções da SPL


Retorna as classes da SPL disponíveis

spl_autoload
spl_object_hash
Funções da SPL
PHP Manual

spl_classes

(PHP 5)

spl_classes — Retorna as classes da SPL disponíveis

Descrição

array spl_classes ( void )

Esta função retorna um array com as classes da SPL disponíveis atualmente.

Exemplos

Exemplo #1 Exemplo despl_classes()

<?php

print_r(spl_classes());

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [ArrayObject] => ArrayObject
    [ArrayIterator] => ArrayIterator
    [CachingIterator] => CachingIterator
    [RecursiveCachingIterator] => RecursiveCachingIterator
    [DirectoryIterator] => DirectoryIterator
    [FilterIterator] => FilterIterator
    [LimitIterator] => LimitIterator
    [ParentIterator] => ParentIterator
    [RecursiveDirectoryIterator] => RecursiveDirectoryIterator
    [RecursiveIterator] => RecursiveIterator
    [RecursiveIteratorIterator] => RecursiveIteratorIterator
    [SeekableIterator] => SeekableIterator
    [SimpleXMLIterator] => SimpleXMLIterator
)

spl_autoload
spl_object_hash
Funções da SPL


Retorna uma identificação hash do objeto dado

spl_classes
File Handling
Funções da SPL
PHP Manual

spl_object_hash

(PHP 5 >= 5.2.0)

spl_object_hash — Retorna uma identificação hash do objeto dado

Descrição

string spl_object_hash ( object $obj )

Esta função retorna um identificador único para o objeto. Este identificador por ser usado como uma chave hash para guardar objetos ou para identificar um objeto.

Parâmetros

object

Qualquer objeto.

Valor Retornado

Uma string que é única para cada objeto e é sempre a mesma para o mesmo objeto.

Exemplos

Exemplo #1 Exemplo de spl_object_hash()

<?php
$id = spl_object_hash($object);
$storage[$id] = $object;
?>

spl_classes
File Handling
Funções da SPL


File Handling

Índice

  • SplFileInfo
  • SplFileObject
  • SplTempFileObject

SPL provides a number of classes to work with files.

spl_object_hash
SplFileInfo
SPL


The SplFileInfo class

Introdução

The SplFileInfo class offers a high-level object oriented interface to information for an individual file.

Sinopse da classe

SplFileInfo {
/* Methods */
__construct ( string $file_name )
public int getATime ( void )
public string getBasename ([ string $suffix ] )
public int getCTime ( void )
public string getExtension ( void )
public SplFileInfo getFileInfo ([ string $class_name ] )
public string getFilename ( void )
public int getGroup ( void )
public int getInode ( void )
public string getLinkTarget ( void )
public int getMTime ( void )
public int getOwner ( void )
public string getPath ( void )
public SplFileInfo getPathInfo ([ string $class_name ] )
public string getPathname ( void )
public int getPerms ( void )
public string getRealPath ( void )
public int getSize ( void )
public string getType ( void )
public bool isDir ( void )
public bool isExecutable ( void )
public bool isFile ( void )
public bool isLink ( void )
public bool isReadable ( void )
public bool isWritable ( void )
public SplFileObject openFile ([ string $open_mode = r [, bool $use_include_path = false [, resource $context = NULL ]]] )
public void setFileClass ([ string $class_name ] )
public void setInfoClass ([ string $class_name ] )
public void __toString ( void )
}

Índice

  • SplFileInfo::__construct — Construct a new SplFileInfo object
  • SplFileInfo::getATime — Gets last access time of the file
  • SplFileInfo::getBasename — Gets the base name of the file
  • SplFileInfo::getCTime — Gets the inode change time
  • SplFileInfo::getExtension — Gets the file extension
  • SplFileInfo::getFileInfo — Gets an SplFileInfo object for the file
  • SplFileInfo::getFilename — Gets the filename
  • SplFileInfo::getGroup — Gets the file group
  • SplFileInfo::getInode — Gets the inode for the file
  • SplFileInfo::getLinkTarget — Gets the target of a link
  • SplFileInfo::getMTime — Gets the last modified time
  • SplFileInfo::getOwner — Gets the owner of the file
  • SplFileInfo::getPath — Gets the path without filename
  • SplFileInfo::getPathInfo — Gets an SplFileInfo object for the path
  • SplFileInfo::getPathname — Gets the path to the file
  • SplFileInfo::getPerms — Gets file permissions
  • SplFileInfo::getRealPath — Gets absolute path to file
  • SplFileInfo::getSize — Gets file size
  • SplFileInfo::getType — Gets file type
  • SplFileInfo::isDir — Tells if the file is a directory
  • SplFileInfo::isExecutable — Tells if the file is executable
  • SplFileInfo::isFile — Tells if the object references a regular file
  • SplFileInfo::isLink — Tells if the file is a link
  • SplFileInfo::isReadable — Tells if file is readable
  • SplFileInfo::isWritable — Tells if the entry is writable
  • SplFileInfo::openFile — Gets an SplFileObject object for the file
  • SplFileInfo::setFileClass — Sets the class name used with SplFileInfo::openFile
  • SplFileInfo::setInfoClass — Sets the class used with getFileInfo and getPathInfo
  • SplFileInfo::__toString — Returns the path to the file as a string
File Handling
SplFileInfo::__construct
File Handling


Construct a new SplFileInfo object

SplFileInfo
SplFileInfo::getATime
SplFileInfo
PHP Manual

SplFileInfo::__construct

(PHP 5 >= 5.1.2)

SplFileInfo::__construct — Construct a new SplFileInfo object

Descrição

SplFileInfo::__construct ( string $file_name )

Creates a new SplFileInfo object for the file_name specified. The file does not need to exist, or be readable.

Parâmetros

file_name

Path to the file.

Exemplos

Exemplo #1 SplFileInfo::__construct() example

<?php
$info = new SplFileInfo('example.php');
if ($info->isFile()) {
    echo $info->getRealPath();
}
?>

SplFileInfo
SplFileInfo::getATime
SplFileInfo


Gets last access time of the file

SplFileInfo::__construct
SplFileInfo::getBasename
SplFileInfo
PHP Manual

SplFileInfo::getATime

(PHP 5 >= 5.1.2)

SplFileInfo::getATime — Gets last access time of the file

Descrição

public int SplFileInfo::getATime ( void )

Gets the last access time for the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the time the file was last accessed.

Erros

Throws RunTimeException on error.

Veja Também

  • fileatime() - Obtém o último horário de acesso do arquivo

SplFileInfo::__construct
SplFileInfo::getBasename
SplFileInfo


Gets the base name of the file

SplFileInfo::getATime
SplFileInfo::getCTime
SplFileInfo
PHP Manual

SplFileInfo::getBasename

(PHP 5 >= 5.2.2)

SplFileInfo::getBasename — Gets the base name of the file

Descrição

public string SplFileInfo::getBasename ([ string $suffix ] )

This method returns the base name of the file, directory, or link without path info.

Parâmetros

suffix

Optional suffix to omit from the base name returned.

Valor Retornado

Returns the base name without path information.

Exemplos

Exemplo #1 SplFileInfo::getBasename() example

<?php
$info = new SplFileInfo('file.txt');
var_dump($info->getBasename());

$info = new SplFileInfo('/path/to/file.txt');
var_dump($info->getBasename());

$info = new SplFileInfo('/path/to/file.txt');
var_dump($info->getBasename('.txt'));
?>

O exemplo acima irá imprimir algo similar a:

string(8) "file.txt"
string(8) "file.txt"
string(4) "file"

Veja Também

  • SplFileInfo::getFilename() - Gets the filename

SplFileInfo::getATime
SplFileInfo::getCTime
SplFileInfo


Gets the inode change time

SplFileInfo::getBasename
SplFileInfo::getExtension
SplFileInfo
PHP Manual

SplFileInfo::getCTime

(PHP 5 >= 5.1.2)

SplFileInfo::getCTime — Gets the inode change time

Descrição

public int SplFileInfo::getCTime ( void )

Returns the inode change time for the file. The time returned is a Unix timestamp.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The last change time, in a Unix timestamp.

Erros

Throws RunTimeException on error.

Exemplos

Exemplo #1 SplFileInfo::getCTime() example

<?php
$info = new SplFileInfo(__FILE__);
echo 'Last changed at ' . date('g:i a', $info->getCTime());
?>

O exemplo acima irá imprimir algo similar a:

Last changed at 1:49 pm

Veja Também

  • filectime() - Obtém o tempo de modificação do inode do arquivo

SplFileInfo::getBasename
SplFileInfo::getExtension
SplFileInfo


Gets the file extension

SplFileInfo::getCTime
SplFileInfo::getFileInfo
SplFileInfo
PHP Manual

SplFileInfo::getExtension

(PHP 5 >= 5.3.6)

SplFileInfo::getExtension — Gets the file extension

Descrição

public string SplFileInfo::getExtension ( void )

Retrieves the file extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the file extension, or an empty string if the file has no extension.

Exemplos

Exemplo #1 SplFileInfo::getExtension() example

<?php

$info = new SplFileInfo('foo.txt');
var_dump($info->getExtension());

$info = new SplFileInfo('photo.jpg');
var_dump($info->getExtension());

$info = new SplFileInfo('something.tar.gz');
var_dump($info->getExtension());

?>

O exemplo acima irá imprimir:

string(3) "txt"
string(3) "jpg"
string(2) "gz"

Veja Também

  • SplFileInfo::getFilename() - Gets the filename
  • SplFileInfo::getBasename() - Gets the base name of the file
  • pathinfo() - Retorna informações sobre um caminho de arquivo
SplFileInfo::getCTime
SplFileInfo::getFileInfo
SplFileInfo


Gets an SplFileInfo object for the file

SplFileInfo::getExtension
SplFileInfo::getFilename
SplFileInfo
PHP Manual

SplFileInfo::getFileInfo

(PHP 5 >= 5.1.2)

SplFileInfo::getFileInfo — Gets an SplFileInfo object for the file

Descrição

public SplFileInfo SplFileInfo::getFileInfo ([ string $class_name ] )

This method gets an SplFileInfo object for the referenced file.

Parâmetros

class_name

Name of an SplFileInfo derived class to use.

Valor Retornado

An SplFileInfo object created for the file.

Veja Também

  • SplFileInfo::setInfoClass() - Sets the class used with getFileInfo and getPathInfo

SplFileInfo::getExtension
SplFileInfo::getFilename
SplFileInfo


Gets the filename

SplFileInfo::getFileInfo
SplFileInfo::getGroup
SplFileInfo
PHP Manual

SplFileInfo::getFilename

(PHP 5 >= 5.1.2)

SplFileInfo::getFilename — Gets the filename

Descrição

public string SplFileInfo::getFilename ( void )

Gets the filename without any path information.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The filename.

Exemplos

Exemplo #1 SplFileInfo::getFilename() example

<?php
$info = new SplFileInfo('foo.txt');
var_dump($info->getFilename());

$info = new SplFileInfo('/path/to/foo.txt');
var_dump($info->getFilename());

$info = new SplFileInfo('http://www.php.net/');
var_dump($info->getFilename());

$info = new SplFileInfo('http://www.php.net/svn.php');
var_dump($info->getFilename());
?>

O exemplo acima irá imprimir algo similar a:

string(7) "foo.txt"
string(7) "foo.txt"
string(0) ""
string(7) "svn.php"

Veja Também

  • SplFileInfo::getBasename() - Gets the base name of the file

SplFileInfo::getFileInfo
SplFileInfo::getGroup
SplFileInfo


Gets the file group

SplFileInfo::getFilename
SplFileInfo::getInode
SplFileInfo
PHP Manual

SplFileInfo::getGroup

(PHP 5 >= 5.1.2)

SplFileInfo::getGroup — Gets the file group

Descrição

public int SplFileInfo::getGroup ( void )

Gets the file group. The group ID is returned in numerical format.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The group id in numerical format.

Erros

Throws RuntimeException on error.

Exemplos

Exemplo #1 SplFileInfo::getGroup() example

<?php
$info = new SplFileInfo(__FILE__);
print_r(posix_getgrgid($info->getGroup()));
?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • posix_getgrgid() - Return info about a group by group id

SplFileInfo::getFilename
SplFileInfo::getInode
SplFileInfo


Gets the inode for the file

SplFileInfo::getGroup
SplFileInfo::getLinkTarget
SplFileInfo
PHP Manual

SplFileInfo::getInode

(PHP 5 >= 5.1.2)

SplFileInfo::getInode — Gets the inode for the file

Descrição

public int SplFileInfo::getInode ( void )

Gets the inode number for the filesystem object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the inode number for the filesystem object.

Erros

Throws RuntimeException on error.

Veja Também

  • fileinode() - Lê o inode do arquivo

SplFileInfo::getGroup
SplFileInfo::getLinkTarget
SplFileInfo


Gets the target of a link

SplFileInfo::getInode
SplFileInfo::getMTime
SplFileInfo
PHP Manual

SplFileInfo::getLinkTarget

(PHP 5 >= 5.2.2)

SplFileInfo::getLinkTarget — Gets the target of a link

Descrição

public string SplFileInfo::getLinkTarget ( void )

Gets the target of a filesystem link.

Nota:

The target may not be the real path on the filesystem. Use SplFileInfo::getRealPath() to determine the true path on the filesystem.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the target of the filesystem link.

Erros

Throws RuntimeException on error.

Exemplos

Exemplo #1 SplFileInfo::getLinkTarget() example

<?php
$info = new SplFileInfo('/Users/bbieber/workspace');
if ($info->isLink()) {
    var_dump($info->getLinkTarget());
    var_dump($info->getRealPath());
}
?>

O exemplo acima irá imprimir algo similar a:

string(19) "Documents/workspace"
string(34) "/Users/bbieber/Documents/workspace"

Veja Também

  • SplFileInfo::isLink() - Tells if the file is a link
  • SplFileInfo::getRealPath() - Gets absolute path to file

SplFileInfo::getInode
SplFileInfo::getMTime
SplFileInfo


Gets the last modified time

SplFileInfo::getLinkTarget
SplFileInfo::getOwner
SplFileInfo
PHP Manual

SplFileInfo::getMTime

(PHP 5 >= 5.1.2)

SplFileInfo::getMTime — Gets the last modified time

Descrição

public int SplFileInfo::getMTime ( void )

Returns the time when the contents of the file were changed. The time returned is a Unix timestamp.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the last modified time for the file, in a Unix timestamp.

Veja Também

  • filemtime() - Obtém o tempo de modificação do arquivo

SplFileInfo::getLinkTarget
SplFileInfo::getOwner
SplFileInfo


Gets the owner of the file

SplFileInfo::getMTime
SplFileInfo::getPath
SplFileInfo
PHP Manual

SplFileInfo::getOwner

(PHP 5 >= 5.1.2)

SplFileInfo::getOwner — Gets the owner of the file

Descrição

public int SplFileInfo::getOwner ( void )

Gets the file owner. The owner ID is returned in numerical format.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The owner id in numerical format.

Erros

Throws RuntimeException on error.

Exemplos

Exemplo #1 SplFileInfo::getOwner() example

<?php
$info = new SplFileInfo('file.txt');
print_r(posix_getpwuid($info->getOwner()));
?>

Veja Também

  • posix_getpwuid() - Return info about a user by user id
  • SplFileInfo::getGroup() - Gets the file group

SplFileInfo::getMTime
SplFileInfo::getPath
SplFileInfo


Gets the path without filename

SplFileInfo::getOwner
SplFileInfo::getPathInfo
SplFileInfo
PHP Manual

SplFileInfo::getPath

(PHP 5 >= 5.1.2)

SplFileInfo::getPath — Gets the path without filename

Descrição

public string SplFileInfo::getPath ( void )

Returns the path to the file, omitting the filename and any trailing slash.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the path to the file.

Exemplos

Exemplo #1 SplFileInfo::getPath() example

<?php
$info = new SplFileInfo('/usr/bin/php');
var_dump($info->getPath());

$info = new SplFileInfo('/usr/');
var_dump($info->getPath());?>

O exemplo acima irá imprimir algo similar a:

string(8) "/usr/bin"
string(4) "/usr"

Veja Também

  • SplFileInfo::getRealPath() - Gets absolute path to file
  • SplFileInfo::getFilename() - Gets the filename
  • SplFileInfo::getPathInfo() - Gets an SplFileInfo object for the path

SplFileInfo::getOwner
SplFileInfo::getPathInfo
SplFileInfo


Gets an SplFileInfo object for the path

SplFileInfo::getPath
SplFileInfo::getPathname
SplFileInfo
PHP Manual

SplFileInfo::getPathInfo

(PHP 5 >= 5.1.2)

SplFileInfo::getPathInfo — Gets an SplFileInfo object for the path

Descrição

public SplFileInfo SplFileInfo::getPathInfo ([ string $class_name ] )

Gets an SplFileInfo object for the parent of the current file.

Parâmetros

class_name

Name of an SplFileInfo derived class to use.

Valor Retornado

Returns an SplFileInfo object for the parent path of the file.

Exemplos

Exemplo #1 SplFileInfo::getPathInfo() example

<?php
$info = new SplFileInfo('/usr/bin/php');
$parent_info = $info->getPathInfo();
var_dump($parent_info->getRealPath());
?>

O exemplo acima irá imprimir algo similar a:

string(8) "/usr/bin"

Veja Também

  • SplFileInfo::setInfoClass() - Sets the class used with getFileInfo and getPathInfo

SplFileInfo::getPath
SplFileInfo::getPathname
SplFileInfo


Gets the path to the file

SplFileInfo::getPathInfo
SplFileInfo::getPerms
SplFileInfo
PHP Manual

SplFileInfo::getPathname

(PHP 5 >= 5.1.2)

SplFileInfo::getPathname — Gets the path to the file

Descrição

public string SplFileInfo::getPathname ( void )

Returns the path to the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The path to the file.

Exemplos

Exemplo #1 SplFileInfo::getPathname() example

<?php
$info = new SplFileInfo('/usr/bin/php');
var_dump($info->getPathname());
?>

O exemplo acima irá imprimir algo similar a:

string(12) "/usr/bin/php"

Veja Também

  • SplFileInfo::getRealPath() - Gets absolute path to file

SplFileInfo::getPathInfo
SplFileInfo::getPerms
SplFileInfo


Gets file permissions

SplFileInfo::getPathname
SplFileInfo::getRealPath
SplFileInfo
PHP Manual

SplFileInfo::getPerms

(PHP 5 >= 5.1.2)

SplFileInfo::getPerms — Gets file permissions

Descrição

public int SplFileInfo::getPerms ( void )

Gets the file permissions for the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the file permissions.

Exemplos

Exemplo #1 SplFileInfo::getPerms() example

<?php
$info = new SplFileInfo('/tmp');
echo substr(sprintf('%o', $info->getPerms()), -4);

$info = new SplFileInfo(__FILE__);
echo substr(sprintf('%o', $info->getPerms()), -4);
?>

O exemplo acima irá imprimir algo similar a:

1777
0644

SplFileInfo::getPathname
SplFileInfo::getRealPath
SplFileInfo


Gets absolute path to file

SplFileInfo::getPerms
SplFileInfo::getSize
SplFileInfo
PHP Manual

SplFileInfo::getRealPath

(PHP 5 >= 5.2.2)

SplFileInfo::getRealPath — Gets absolute path to file

Descrição

public string SplFileInfo::getRealPath ( void )

This method expands all symbolic links, resolves relative references and returns the real path to the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the path to the file.

Exemplos

Exemplo #1 SplFileInfo::getRealPath() example

<?php
$info = new SplFileInfo('/..//./../../'.__FILE__);
var_dump($info->getRealPath());

$info = new SplFileInfo('/tmp');
var_dump($info->getRealPath());
?>

O exemplo acima irá imprimir algo similar a:

string(28) "/private/tmp/phptempfile.php"
string(12) "/private/tmp"

Veja Também

  • SplFileInfo::isLink() - Tells if the file is a link

SplFileInfo::getPerms
SplFileInfo::getSize
SplFileInfo


Gets file size

SplFileInfo::getRealPath
SplFileInfo::getType
SplFileInfo
PHP Manual

SplFileInfo::getSize

(PHP 5 >= 5.1.2)

SplFileInfo::getSize — Gets file size

Descrição

public int SplFileInfo::getSize ( void )

Returns the filesize in bytes for the file referenced.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The filesize in bytes.

Erros

A RuntimeException will be thrown if the file does not exist or an error occurs.

Veja Também

  • filesize() - Lê o tamanho do arquivo

SplFileInfo::getRealPath
SplFileInfo::getType
SplFileInfo


Gets file type

SplFileInfo::getSize
SplFileInfo::isDir
SplFileInfo
PHP Manual

SplFileInfo::getType

(PHP 5 >= 5.1.2)

SplFileInfo::getType — Gets file type

Descrição

public string SplFileInfo::getType ( void )

Returns the type of the file referenced.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string representing the type of the entry. May be one of file, link, or dir

Erros

Throws a RuntimeException on error.

Exemplos

Exemplo #1 SplFileInfo::getType() example

<?php

$info = new SplFileInfo(__FILE__);
echo $info->getType().PHP_EOL;

$info = new SplFileInfo(dirname(__FILE__));
echo $info->getType();

?>

O exemplo acima irá imprimir algo similar a:

file
dir

SplFileInfo::getSize
SplFileInfo::isDir
SplFileInfo


Tells if the file is a directory

SplFileInfo::getType
SplFileInfo::isExecutable
SplFileInfo
PHP Manual

SplFileInfo::isDir

(PHP 5 >= 5.1.2)

SplFileInfo::isDir — Tells if the file is a directory

Descrição

public bool SplFileInfo::isDir ( void )

This method can be used to determine if the file is a directory.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if a directory, FALSE otherwise.

Exemplos

Exemplo #1 SplFileInfo::isDir() example

<?php
$d = new SplFileInfo(dirname(__FILE__));
var_dump($d->isDir());

$d = new SplFileInfo(__FILE__);
var_dump($d->isDir());
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

SplFileInfo::getType
SplFileInfo::isExecutable
SplFileInfo


Tells if the file is executable

SplFileInfo::isDir
SplFileInfo::isFile
SplFileInfo
PHP Manual

SplFileInfo::isExecutable

(PHP 5 >= 5.1.2)

SplFileInfo::isExecutable — Tells if the file is executable

Descrição

public bool SplFileInfo::isExecutable ( void )

Checks if the file is executable.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if executable, FALSE otherwise.

Exemplos

Exemplo #1 SplFileInfo::isExecutable() example

<?php
$info = new SplFileInfo('/usr/bin/php');
var_dump($info->isExecutable());

$info = new SplFileInfo('/usr/bin');
var_dump($info->isExecutable());

$info = new SplFileInfo('foo');
var_dump($info->isExecutable());
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(true)
bool(false)

SplFileInfo::isDir
SplFileInfo::isFile
SplFileInfo


Tells if the object references a regular file

SplFileInfo::isExecutable
SplFileInfo::isLink
SplFileInfo
PHP Manual

SplFileInfo::isFile

(PHP 5 >= 5.1.2)

SplFileInfo::isFile — Tells if the object references a regular file

Descrição

public bool SplFileInfo::isFile ( void )

Checks if the file referenced by this SplFileInfo object exists and is a regular file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the file exists and is a regular file (not a link), FALSE otherwise.

Exemplos

Exemplo #1 SplFileInfo::isFile() example

<?php
$info = new SplFileInfo(__FILE__);
var_dump($info->isFile());

$info = new SplFileInfo(dirname(__FILE__));
var_dump($info->isFile());
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

SplFileInfo::isExecutable
SplFileInfo::isLink
SplFileInfo


Tells if the file is a link

SplFileInfo::isFile
SplFileInfo::isReadable
SplFileInfo
PHP Manual

SplFileInfo::isLink

(PHP 5 >= 5.1.2)

SplFileInfo::isLink — Tells if the file is a link

Descrição

public bool SplFileInfo::isLink ( void )

Use this method to check if the file referenced by the SplFileInfo object is a link.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if the file is a link, FALSE otherwise.

Exemplos

Exemplo #1 SplFileInfo::isLink() example

<?php
$info = new SplFileInfo('/path/to/symlink');
if ($info->isLink()) {
    echo 'The real path is '.$info->getRealPath();
}
?>

Veja Também

  • SplFileInfo::getRealPath() - Gets absolute path to file

SplFileInfo::isFile
SplFileInfo::isReadable
SplFileInfo


Tells if file is readable

SplFileInfo::isLink
SplFileInfo::isWritable
SplFileInfo
PHP Manual

SplFileInfo::isReadable

(PHP 5 >= 5.1.2)

SplFileInfo::isReadable — Tells if file is readable

Descrição

public bool SplFileInfo::isReadable ( void )

Check if the file is readable.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if readable, FALSE otherwise.

Exemplos

Exemplo #1 SplFileInfo::isReadable() example

<?php
$info = new SplFileInfo(__FILE__);
var_dump($info->isReadable());

$info = new SplFileInfo('foo');
var_dump($info->isReadable());
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

SplFileInfo::isLink
SplFileInfo::isWritable
SplFileInfo


Tells if the entry is writable

SplFileInfo::isReadable
SplFileInfo::openFile
SplFileInfo
PHP Manual

SplFileInfo::isWritable

(PHP 5 >= 5.1.2)

SplFileInfo::isWritable — Tells if the entry is writable

Descrição

public bool SplFileInfo::isWritable ( void )

Checks if the current entry is writable.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if writable, FALSE otherwise;

SplFileInfo::isReadable
SplFileInfo::openFile
SplFileInfo


Gets an SplFileObject object for the file

SplFileInfo::isWritable
SplFileInfo::setFileClass
SplFileInfo
PHP Manual

SplFileInfo::openFile

(PHP 5 >= 5.1.2)

SplFileInfo::openFile — Gets an SplFileObject object for the file

Descrição

public SplFileObject SplFileInfo::openFile ([ string $open_mode = r [, bool $use_include_path = false [, resource $context = NULL ]]] )

Creates an SplFileObject object of the file. This is useful because SplFileObject contains additional methods for manipulating the file whereas SplFileInfo is only useful for gaining information, like whether the file is writable.

Parâmetros

open_mode

The mode for opening the file. See the fopen() documentation for descriptions of possible modes. The default is read only.

use_include_path

Quando mdefinido como TRUE, o nome do arquivo também é procurado no include_path

context

Refira a seção do manual context para uma descrição de contextos.

Valor Retornado

The opened file as an SplFileObject object.

Erros

A RuntimeException if the file cannot be opened (e.g. insufficient access rights).

Exemplos

Exemplo #1 SplFileInfo::openFile() example

<?php
$fileinfo = new SplFileInfo('/tmp/foo.txt');

if ($fileinfo->isWritable()) {

    $fileobj = $fileinfo->openFile('a');

    $fileobj->fwrite("appended this sample text");
}
?>

Veja Também

  • SplFileObject
  • stream_context_create() - Create a streams context
  • fopen() - Abre um arquivo ou URL

SplFileInfo::isWritable
SplFileInfo::setFileClass
SplFileInfo


Sets the class name used with SplFileInfo::openFile

SplFileInfo::openFile
SplFileInfo::setInfoClass
SplFileInfo
PHP Manual

SplFileInfo::setFileClass

(PHP 5 >= 5.1.2)

SplFileInfo::setFileClass — Sets the class name used with SplFileInfo::openFile()

Descrição

public void SplFileInfo::setFileClass ([ string $class_name ] )

Set the class name which SplFileInfo will use to open files with when openFile() is called. The class name passed to this method must be derived from SplFileObject.

Parâmetros

class_name

The class name to use when openFile() is called.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileInfo::setFileClass() example

<?php
// Create a class extending SplFileObject
class MyFoo extends SplFileObject {}

$info = new SplFileInfo(__FILE__);
// Set the class to use
$info->setFileClass('MyFoo');
var_dump($info->openFile());
?>

O exemplo acima irá imprimir algo similar a:

object(MyFoo)#2 (0) { }

Veja Também

  • SplFileInfo::openFile() - Gets an SplFileObject object for the file

SplFileInfo::openFile
SplFileInfo::setInfoClass
SplFileInfo


Sets the class used with getFileInfo and getPathInfo

SplFileInfo::setFileClass
SplFileInfo::__toString
SplFileInfo
PHP Manual

SplFileInfo::setInfoClass

(PHP 5 >= 5.1.2)

SplFileInfo::setInfoClass — Sets the class used with getFileInfo and getPathInfo

Descrição

public void SplFileInfo::setInfoClass ([ string $class_name ] )

Use this method to set a custom class which will be used when getFileInfo and getPathInfo are called. The class name passed to this method must be derived from SplFileInfo.

Parâmetros

class_name

The class name to use.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileInfo::setFileClass() example

<?php
// Define a class which extends SplFileInfo
class MyFoo extends SplFileInfo {}

$info = new SplFileInfo('foo');
// Set the class name to use
$info->setInfoClass('MyFoo');
var_dump($info->getFileInfo());
?>

O exemplo acima irá imprimir algo similar a:

object(MyFoo)#2 (0) { }

Veja Também

  • SplFileInfo::getFileInfo() - Gets an SplFileInfo object for the file

SplFileInfo::setFileClass
SplFileInfo::__toString
SplFileInfo


Returns the path to the file as a string

SplFileInfo::setInfoClass
SplFileObject
SplFileInfo
PHP Manual

SplFileInfo::__toString

(PHP 5 >= 5.1.2)

SplFileInfo::__toString — Returns the path to the file as a string

Descrição

public void SplFileInfo::__toString ( void )

This method will return the file name of the referenced file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the path to the file.

Exemplos

Exemplo #1 SplFileInfo::__toString() example

<?php
$info = new SplFileInfo('foo');
var_dump($info->__toString());
echo $info.PHP_EOL;

$info = new SplFileInfo('/usr/bin/php');
var_dump($info->__toString());
echo $info.PHP_EOL;
?>

O exemplo acima irá imprimir algo similar a:

string(3) "foo"
foo
string(12) "/usr/bin/php"
/usr/bin/php

SplFileInfo::setInfoClass
SplFileObject
SplFileInfo


The SplFileObject class

Introdução

The SplFileObject class offers an object oriented interface for a file.

Sinopse da classe

SplFileObject extends SplFileInfo implements RecursiveIterator , Traversable , Iterator , SeekableIterator {
/* Constants */
const integer SplFileObject::DROP_NEW_LINE = 1 ;
const integer SplFileObject::READ_AHEAD = 2 ;
const integer SplFileObject::SKIP_EMPTY = 6 ;
const integer SplFileObject::READ_CSV = 8 ;
/* Methods */
__construct ( string $filename [, string $open_mode = "r" [, bool $use_include_path = false [, resource $context ]]] )
public string|array current ( void )
public bool eof ( void )
public bool fflush ( void )
public string fgetc ( void )
 public array fgetcsv
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )
public string fgets ( void )
public string fgetss ([ string $allowable_tags ] )
public bool flock ( int $operation [, int &$wouldblock ] )
public int fpassthru ( void )
public mixed fscanf ( string $format [, mixed &$... ] )
public int fseek ( int $offset [, int $whence = SEEK_SET ] )
public array fstat ( void )
public int ftell ( void )
public bool ftruncate ( int $size )
public int fwrite ( string $str [, int $length ] )
public void getChildren ( void )
public array getCsvControl ( void )
public int getFlags ( void )
public int getMaxLineLen ( void )
public bool hasChildren ( void )
public int key ( void )
public void next ( void )
public void rewind ( void )
public void seek ( int $line_pos )
 public void setCsvControl
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )
public void setFlags ( int $flags )
public void setMaxLineLen ( int $max_len )
public bool valid ( void )
/* Inherited methods */
SplFileInfo::__construct ( string $file_name )
public int SplFileInfo::getATime ( void )
public string SplFileInfo::getBasename ([ string $suffix ] )
public int SplFileInfo::getCTime ( void )
public string SplFileInfo::getExtension ( void )
public SplFileInfo SplFileInfo::getFileInfo ([ string $class_name ] )
public string SplFileInfo::getFilename ( void )
public int SplFileInfo::getGroup ( void )
public int SplFileInfo::getInode ( void )
public string SplFileInfo::getLinkTarget ( void )
public int SplFileInfo::getMTime ( void )
public int SplFileInfo::getOwner ( void )
public string SplFileInfo::getPath ( void )
public SplFileInfo SplFileInfo::getPathInfo ([ string $class_name ] )
public string SplFileInfo::getPathname ( void )
public int SplFileInfo::getPerms ( void )
public string SplFileInfo::getRealPath ( void )
public int SplFileInfo::getSize ( void )
public string SplFileInfo::getType ( void )
public bool SplFileInfo::isDir ( void )
public bool SplFileInfo::isExecutable ( void )
public bool SplFileInfo::isFile ( void )
public bool SplFileInfo::isLink ( void )
public bool SplFileInfo::isReadable ( void )
public bool SplFileInfo::isWritable ( void )
public SplFileObject SplFileInfo::openFile ([ string $open_mode = r [, bool $use_include_path = false [, resource $context = NULL ]]] )
public void SplFileInfo::setFileClass ([ string $class_name ] )
public void SplFileInfo::setInfoClass ([ string $class_name ] )
public void SplFileInfo::__toString ( void )
}

Constantes pré-definidas

SplFileObject::DROP_NEW_LINE

Drop newlines at the end of a line.

SplFileObject::READ_AHEAD

Read on rewind/next.

SplFileObject::SKIP_EMPTY

Skips empty lines in the file.

SplFileObject::READ_CSV

Read lines as CSV rows.

Índice

  • SplFileObject::__construct — Construct a new file object.
  • SplFileObject::current — Retrieve current line of file
  • SplFileObject::eof — Reached end of file
  • SplFileObject::fflush — Flushes the output to the file
  • SplFileObject::fgetc — Gets character from file
  • SplFileObject::fgetcsv — Gets line from file and parse as CSV fields
  • SplFileObject::fgets — Gets line from file
  • SplFileObject::fgetss — Gets line from file and strip HTML tags
  • SplFileObject::flock — Portable file locking
  • SplFileObject::fpassthru — Output all remaining data on a file pointer
  • SplFileObject::fscanf — Parses input from file according to a format
  • SplFileObject::fseek — Seek to a position
  • SplFileObject::fstat — Gets information about the file
  • SplFileObject::ftell — Return current file position
  • SplFileObject::ftruncate — Truncates the file to a given length
  • SplFileObject::fwrite — Write to file
  • SplFileObject::getChildren — No purpose
  • SplFileObject::getCsvControl — Get the delimiter and enclosure character for CSV
  • SplFileObject::getCurrentLine — Alias of SplFileObject::fgets
  • SplFileObject::getFlags — Gets flags for the SplFileObject
  • SplFileObject::getMaxLineLen — Get maximum line length
  • SplFileObject::hasChildren — SplFileObject does not have children
  • SplFileObject::key — Get line number
  • SplFileObject::next — Read next line
  • SplFileObject::rewind — Rewind the file to the first line
  • SplFileObject::seek — Seek to specified line
  • SplFileObject::setCsvControl — Set the delimiter and enclosure character for CSV
  • SplFileObject::setFlags — Sets flags for the SplFileObject
  • SplFileObject::setMaxLineLen — Set maximum line length
  • SplFileObject::__toString — Alias of SplFileObject::current
  • SplFileObject::valid — Not at EOF
SplFileInfo::__toString
SplFileObject::__construct
File Handling


Construct a new file object.

SplFileObject
SplFileObject::current
SplFileObject
PHP Manual

SplFileObject::__construct

(PHP 5 >= 5.1.0)

SplFileObject::__construct — Construct a new file object.

Descrição

SplFileObject::__construct ( string $filename [, string $open_mode = "r" [, bool $use_include_path = false [, resource $context ]]] )

Construct a new file object.

Parâmetros

filename

The file to read.

Dica

Você pode usar uma URL como um nome de arquivo nesta função se fopen wrappers estiver habilitado. Veja fopen() para mais detalhes em como especificar o nome do arquivo e Supported Protocols and Wrappers para uma lista de protocolos URL suportados.

open_mode

The mode in which to open the file. See fopen() for a list of allowed modes.

use_include_path

Whether to search in the include_path for filename.

context

A valid context resource created with stream_context_create().

Valor Retornado

Não há valor retornado.

Erros

Throws a RuntimeException if the filename cannot be opened.

Exemplos

Exemplo #1 SplFileObject::__construct() example

This example opens the current file and iterates over its contents line by line.

<?php
$file = new SplFileObject(__FILE__);
foreach ($file as $line) {
    echo $line;
}
?>

O exemplo acima irá imprimir algo similar a:

<?php
$file = new SplFileObject(__FILE__);
foreach ($file as $line) {
    echo $line;
}
?>

Veja Também

  • SplFileInfo::openFile() - Gets an SplFileObject object for the file
  • fopen() - Abre um arquivo ou URL

SplFileObject
SplFileObject::current
SplFileObject


Retrieve current line of file

SplFileObject::__construct
SplFileObject::eof
SplFileObject
PHP Manual

SplFileObject::current

(PHP 5 >= 5.1.0)

SplFileObject::current — Retrieve current line of file

Descrição

public string|array SplFileObject::current ( void )

Retrieves the current line of the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retrieves the current line of the file. If the SplFileObject::READ_CSV flag is set, this method returns an array containing the current line parsed as CSV data.

Exemplos

Exemplo #1 SplFileObject::current() example

<?php
$file = new SplFileObject(__FILE__);
foreach ($file as $k => $line) {
   echo ($file->key() + 1) . ': ' . $file->current();
}
?>

O exemplo acima irá imprimir algo similar a:

1: <?php
2: $file = new SplFileObject(__FILE__);
3: foreach ($file as $line) {
4:     echo ($file->key() + 1) . ': ' . $file->current();
5: }
6: ?>

Veja Também

  • SplFileObject::key() - Get line number
  • SplFileObject::seek() - Seek to specified line
  • SplFileObject::next() - Read next line
  • SplFileObject::rewind() - Rewind the file to the first line
  • SplFileObject::valid() - Not at EOF

SplFileObject::__construct
SplFileObject::eof
SplFileObject


Reached end of file

SplFileObject::current
SplFileObject::fflush
SplFileObject
PHP Manual

SplFileObject::eof

(PHP 5 >= 5.1.0)

SplFileObject::eof — Reached end of file

Descrição

public bool SplFileObject::eof ( void )

Determine whether the end of file has been reached

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if file is at EOF, FALSE otherwise.

Exemplos

Exemplo #1 SplFileObject::eof() example

<?php
$file = new SplFileObject("fruits.txt");
while ( ! $file->eof()) {
    echo $file->fgets();
}
?>

O exemplo acima irá imprimir algo similar a:

apple
banana
cherry
date
elderberry

Veja Também

  • SplFileObject::valid() - Not at EOF
  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo

SplFileObject::current
SplFileObject::fflush
SplFileObject


Flushes the output to the file

SplFileObject::eof
SplFileObject::fgetc
SplFileObject
PHP Manual

SplFileObject::fflush

(PHP 5 >= 5.1.0)

SplFileObject::fflush — Flushes the output to the file

Descrição

public bool SplFileObject::fflush ( void )

Forces a write of all buffered output to the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 SplFileObject::fflush() example

<?php
$file = new SplFileObject('misc.txt', 'r+');
$file->rewind();
$file->fwrite("Foo");
$file->fflush();
$file->ftruncate($file->ftell());
?>

Veja Também

  • SplFileObject::fwrite() - Write to file

SplFileObject::eof
SplFileObject::fgetc
SplFileObject


Gets character from file

SplFileObject::fflush
SplFileObject::fgetcsv
SplFileObject
PHP Manual

SplFileObject::fgetc

(PHP 5 >= 5.1.0)

SplFileObject::fgetc — Gets character from file

Descrição

public string SplFileObject::fgetc ( void )

Gets a character from the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing a single character read from the file or FALSE on 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 SplFileObject::fgetc() example

<?php
$file = new SplFileObject('file.txt');
while (false !== ($char = $file->fgetc())) {
    echo "$char\n";
}
?>

Veja Também

  • SplFileObject::fgets() - Gets line from file

SplFileObject::fflush
SplFileObject::fgetcsv
SplFileObject


Gets line from file and parse as CSV fields

SplFileObject::fgetc
SplFileObject::fgets
SplFileObject
PHP Manual

SplFileObject::fgetcsv

(PHP 5 >= 5.1.0)

SplFileObject::fgetcsv — Gets line from file and parse as CSV fields

Descrição

 public array SplFileObject::fgetcsv
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )

Gets a line from the file which is in CSV format and returns an array containing the fields read.

Parâmetros

delimiter

The field delimiter (one character only). Defaults as a comma or the value set using SplFileObject::setCsvControl().

enclosure

The field enclosure character (one character only). Defaults as a double quotation mark or the value set using SplFileObject::setCsvControl().

escape

The escape character (one character only). Defaults as a backslash (\) or the value set using SplFileObject::setCsvControl().

Valor Retornado

Returns an indexed array containing the fields read, or FALSE on error.

Nota:

A blank line in a CSV file will be returned as an array comprising a single NULL field unless using SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE, in which case empty lines are skipped.

Exemplos

Exemplo #1 SplFileObject::fgetcsv() example

<?php
$file = new SplFileObject("data.csv");
while (!$file->eof()) {
    var_dump($file->fgetcsv());
}
?>

Exemplo #2 SplFileObject::READ_CSV example

<?php
$file = new SplFileObject("animals.csv");
$file->setFlags(SplFileObject::READ_CSV);
foreach ($file as $row) {
    list($animal, $class, $legs) = $row;
    printf("A %s is a %s with %d legs\n", $animal, $class, $legs);
}
?>

Contents of animals.csv

crocodile,reptile,4
dolphin,mammal,0
duck,bird,2
koala,mammal,4
salmon,fish,0

O exemplo acima irá imprimir algo similar a:

A crocodile is a reptile with 4 legs
A dolphin is a mammal with 0 legs
A duck is a bird with 2 legs
A koala is a mammal with 4 legs
A salmon is a fish with 0 legs

Veja Também

  • SplFileObject::setCsvControl() - Set the delimiter and enclosure character for CSV
  • SplFileObject::setFlags() - Sets flags for the SplFileObject
  • SplFileObject::READ_CSV
  • SplFileObject::current() - Retrieve current line of file

SplFileObject::fgetc
SplFileObject::fgets
SplFileObject


Gets line from file

SplFileObject::fgetcsv
SplFileObject::fgetss
SplFileObject
PHP Manual

SplFileObject::fgets

(PHP 5 >= 5.1.0)

SplFileObject::fgets — Gets line from file

Descrição

public string SplFileObject::fgets ( void )

Gets a line from the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the next line from the file, or FALSE on error.

Erros

Throws a RuntimeException if the file cannot be read.

Exemplos

Exemplo #1 SplFileObject::fgets() example

This example simply outputs the contents of file.txt line-by-line.

<?php
$file = new SplFileObject("file.txt");
while (!$file->eof()) {
    echo $file->fgets();
}
?>

Veja Também

  • fgets() - Lê uma linha de um ponteiro de arquivo
  • SplFileObject::fgetss() - Gets line from file and strip HTML tags
  • SplFileObject::fgetc() - Gets character from file
  • SplFileObject::current() - Retrieve current line of file

SplFileObject::fgetcsv
SplFileObject::fgetss
SplFileObject


Gets line from file and strip HTML tags

SplFileObject::fgets
SplFileObject::flock
SplFileObject
PHP Manual

SplFileObject::fgetss

(PHP 5 >= 5.1.0)

SplFileObject::fgetss — Gets line from file and strip HTML tags

Descrição

public string SplFileObject::fgetss ([ string $allowable_tags ] )

Identical to SplFileObject::fgets(), except that SplFileObject::fgetss() attempts to strip any HTML and PHP tags from the text it reads.

Parâmetros

allowable_tags

You can use the optional third parameter to specify tags which should not be stripped.

Valor Retornado

Returns a string containing the next line of the file with HTML and PHP code stripped, or FALSE on error.

Exemplos

Exemplo #1 SplFileObject::fgetss() example

<?php
$str = <<<EOD
<html><body>
 <p>Welcome! Today is the <?php echo(date('jS')); ?> of <?= date('F'); ?>.</p>
</body></html>
Text outside of the HTML block.
EOD;
file_put_contents("sample.php", $str);

$file = new SplFileObject("sample.php");
while (!$file->eof()) {
    echo $file->fgetss();
}
?>

O exemplo acima irá imprimir algo similar a:

 Welcome! Today is the  of .

Text outside of the HTML block.

Veja Também

  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • SplFileObject::fgets() - Gets line from file
  • SplFileObject::fgetc() - Gets character from file
  • SplFileObject::current() - Retrieve current line of file

SplFileObject::fgets
SplFileObject::flock
SplFileObject


Portable file locking

SplFileObject::fgetss
SplFileObject::fpassthru
SplFileObject
PHP Manual

SplFileObject::flock

(PHP 5 >= 5.1.0)

SplFileObject::flock — Portable file locking

Descrição

public bool SplFileObject::flock ( int $operation [, int &$wouldblock ] )

Locks or unlocks the file in the same portable way as flock().

Parâmetros

operation

operation is one of the following:

  • LOCK_SH to acquire a shared lock (reader).
  • LOCK_EX to acquire an exclusive lock (writer).
  • LOCK_UN to release a lock (shared or exclusive).
  • LOCK_NB to not block while locking (not supported on Windows).

wouldblock

Set to TRUE if the lock would block (EWOULDBLOCK errno condition).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 SplFileObject::flock() example

<?php
$file = new SplFileObject("/tmp/lock.txt", "w");
if ($file->flock(LOCK_EX)) { // do an exclusive lock
    $file->ftruncate(0);     // truncate file
    $file->fwrite("Write something here\n");
    $file->flock(LOCK_UN);   // release the lock
} else {
    echo "Couldn't get the lock!";
}
?>

Veja Também

  • flock() - Monitor de travamento de arquivos portátil

SplFileObject::fgetss
SplFileObject::fpassthru
SplFileObject


Output all remaining data on a file pointer

SplFileObject::flock
SplFileObject::fscanf
SplFileObject
PHP Manual

SplFileObject::fpassthru

(PHP 5 >= 5.1.0)

SplFileObject::fpassthru — Output all remaining data on a file pointer

Descrição

public int SplFileObject::fpassthru ( void )

Reads to EOF on the given file pointer from the current position and writes the results to the output buffer.

You may need to call SplFileObject::rewind() to reset the file pointer to the beginning of the file if you have already written data to the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the number of characters read from handle and passed through to the output.

Exemplos

Exemplo #1 SplFileObject::fpassthru() example

<?php

// Open the file in binary mode
$file = new SplFileObject("./img/ok.png", "rb");

// Send the right headers
header("Content-Type: image/png");
header("Content-Length: " . $file->getSize());

// Dump the picture and end script
$file->fpassthru();
exit;

?>

Veja Também

  • fpassthru() - Imprime todo os dados restantes de um ponteiro de arquivo

SplFileObject::flock
SplFileObject::fscanf
SplFileObject


Parses input from file according to a format

SplFileObject::fpassthru
SplFileObject::fseek
SplFileObject
PHP Manual

SplFileObject::fscanf

(PHP 5 >= 5.1.0)

SplFileObject::fscanf — Parses input from file according to a format

Descrição

public mixed SplFileObject::fscanf ( string $format [, mixed &$... ] )

Reads a line from the file and interprets it according to the specified format, which is described in the documentation for sprintf().

Any whitespace in the format string matches any whitespace in the line from the file. This means that even a tab \t in the format string can match a single space character in the input stream.

Parâmetros

format

The specified format as described in the sprintf() documentation.

...

The optional assigned values.

Valor Retornado

If only one parameter is passed to this method, the values parsed will be returned as an array. Otherwise, if optional parameters are passed, the function will return the number of assigned values. The optional parameters must be passed by reference.

Exemplos

Exemplo #1 SplFileObject::fscanf() example

<?php
$file = new SplFileObject("misc.txt");
while ($userinfo = $file->fscanf("%s %s %s")) {
    list ($name, $profession, $countrycode) = $userinfo;
    // Do something with $name $professi
}
?>

Contents of users.txt

javier   argonaut    pe
hiroshi  sculptor    jp
robert   slacker     us
luigi    florist     it

Veja Também

  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato

SplFileObject::fpassthru
SplFileObject::fseek
SplFileObject


Seek to a position

SplFileObject::fscanf
SplFileObject::fstat
SplFileObject
PHP Manual

SplFileObject::fseek

(PHP 5 >= 5.1.0)

SplFileObject::fseek — Seek to a position

Descrição

public int SplFileObject::fseek ( int $offset [, int $whence = SEEK_SET ] )

Seek to a position in the file measured in bytes from the beginning of the file, obtained by adding offset to the position specified by whence.

Parâmetros

offset

The offset. A negative value can be used to move backwards through the file which is useful when SEEK_END is used as the whence value.

whence

whence values are:

  • SEEK_SET - Set position equal to offset bytes.
  • SEEK_CUR - Set position to current location plus offset.
  • SEEK_END - Set position to end-of-file plus offset.

If whence is not specified, it is assumed to be SEEK_SET.

Valor Retornado

Returns 0 if the seek was successful, -1 otherwise. Note that seeking past EOF is not considered an error.

Exemplos

Exemplo #1 SplFileObject::fseek() example

<?php
$file = new SplFileInfo("somefile.txt");

// Read first line
$data = $file->fgets();

// Move back to the beginning of the file
// Same as $file->rewind();
$file->fseek(0);
?>

Veja Também

  • fseek() - Procura (seeks) em um ponteiro de arquivo

SplFileObject::fscanf
SplFileObject::fstat
SplFileObject


Gets information about the file

SplFileObject::fseek
SplFileObject::ftell
SplFileObject
PHP Manual

SplFileObject::fstat

(PHP 5 >= 5.1.0)

SplFileObject::fstat — Gets information about the file

Descrição

public array SplFileObject::fstat ( void )

Gathers the statistics of the file. Behaves identically to fstat().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array with the statistics of the file; the format of the array is described in detail on the stat() manual page.

Exemplos

Exemplo #1 SplFileObject::fstat() example

<?php
$file = new SplFileObject("/etc/passwd");
$stat = $file->fstat();

// Print only the associative part
print_r(array_slice($stat, 13));

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [dev] => 771
    [ino] => 488704
    [mode] => 33188
    [nlink] => 1
    [uid] => 0
    [gid] => 0
    [rdev] => 0
    [size] => 1114
    [atime] => 1061067181
    [mtime] => 1056136526
    [ctime] => 1056136526
    [blksize] => 4096
    [blocks] => 8
)

Veja Também

  • fstat() - Lê informações sobre um arquivo usando um ponteiro de arquivo aberto
  • stat() - Obtem informações sobre um arquivo

SplFileObject::fseek
SplFileObject::ftell
SplFileObject


Return current file position

SplFileObject::fstat
SplFileObject::ftruncate
SplFileObject
PHP Manual

SplFileObject::ftell

(PHP 5 >= 5.1.0)

SplFileObject::ftell — Return current file position

Descrição

public int SplFileObject::ftell ( void )

Returns the position of the file pointer which represents the current offset in the file stream.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the position of the file pointer as an integer, or FALSE on error.

Exemplos

Exemplo #1 SplFileObject::ftell() example

<?php
$file = new SplFileObject("/etc/passwd");

// Read first line
$data = $file->fgets();

// Where are we?
echo $file->ftell();
?>

Veja Também

  • ftell() - Retorna a posição de leitura/gravação do ponteiro do arquivo

SplFileObject::fstat
SplFileObject::ftruncate
SplFileObject


Truncates the file to a given length

SplFileObject::ftell
SplFileObject::fwrite
SplFileObject
PHP Manual

SplFileObject::ftruncate

(PHP 5 >= 5.1.0)

SplFileObject::ftruncate — Truncates the file to a given length

Descrição

public bool SplFileObject::ftruncate ( int $size )

Truncates the file to size bytes.

Parâmetros

size

The size to truncate to.

Nota:

If size is larger than the file it is extended with null bytes.

If size is smaller than the file, the extra data will be lost.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 SplFileObject::ftruncate() example

<?php
// Create file containing "Hello World!"
$file = new SplFileObject("/tmp/ftruncate", "w+");
$file->fwrite("Hello World!");

// Truncate to 5 bytes
$file->ftruncate(5);

// Rewind and read data
$file->rewind();
echo $file->fgets();
?>

O exemplo acima irá imprimir algo similar a:

Hello

Veja Também

  • ftruncate() - Reduz um arquivo a um tamanho especificado

SplFileObject::ftell
SplFileObject::fwrite
SplFileObject


Write to file

SplFileObject::ftruncate
SplFileObject::getChildren
SplFileObject
PHP Manual

SplFileObject::fwrite

(PHP 5 >= 5.1.0)

SplFileObject::fwrite — Write to file

Descrição

public int SplFileObject::fwrite ( string $str [, int $length ] )

Writes the contents of string to the file

Parâmetros

str

The string to be written to the file.

length

If the length argument is given, writing will stop after length bytes have been written or the end of string is reached, whichever comes first.

Valor Retornado

Returns the number of bytes written, or NULL on error.

Exemplos

Exemplo #1 SplFileObject::fwrite() example

<?php
$file = new SplFileObject("fwrite.txt", "w");
$written = $file->fwrite("12345");
echo "Wrote $written bytes to file";
?>

O exemplo acima irá imprimir algo similar a:

Wrote 5 bytes to file

Veja Também

  • fwrite() - Escrita binary-safe em arquivos

SplFileObject::ftruncate
SplFileObject::getChildren
SplFileObject


No purpose

SplFileObject::fwrite
SplFileObject::getCsvControl
SplFileObject
PHP Manual

SplFileObject::getChildren

(PHP 5 >= 5.1.0)

SplFileObject::getChildren — No purpose

Descrição

public void SplFileObject::getChildren ( void )

An SplFileObject does not have children so this method returns NULL.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • RecursiveIterator::getChildren() - Returns an iterator for the current entry.

SplFileObject::fwrite
SplFileObject::getCsvControl
SplFileObject


Get the delimiter and enclosure character for CSV

SplFileObject::getChildren
SplFileObject::getCurrentLine
SplFileObject
PHP Manual

SplFileObject::getCsvControl

(PHP 5 >= 5.2.0)

SplFileObject::getCsvControl — Get the delimiter and enclosure character for CSV

Descrição

public array SplFileObject::getCsvControl ( void )

Gets the delimiter and enclosure character used for parsing CSV fields.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an indexed array containing the delimiter and enclosure character.

Exemplos

Exemplo #1 SplFileObject::getCsvControl() example

<?php
$file = new SplFileObject("data.txt");
print_r($file->getCsvControl());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => ,
    [1] => "
)

Veja Também

  • SplFileObject::setCsvControl() - Set the delimiter and enclosure character for CSV
  • SplFileObject::fgetcsv() - Gets line from file and parse as CSV fields

SplFileObject::getChildren
SplFileObject::getCurrentLine
SplFileObject


Alias of SplFileObject::fgets

SplFileObject::getCsvControl
SplFileObject::getFlags
SplFileObject
PHP Manual

SplFileObject::getCurrentLine

(PHP 5 >= 5.1.2)

SplFileObject::getCurrentLine — Alias of SplFileObject::fgets()

Descrição

This method is an alias of SplFileObject::fgets().

SplFileObject::getCsvControl
SplFileObject::getFlags
SplFileObject


Gets flags for the SplFileObject

SplFileObject::getCurrentLine
SplFileObject::getMaxLineLen
SplFileObject
PHP Manual

SplFileObject::getFlags

(PHP 5 >= 5.1.0)

SplFileObject::getFlags — Gets flags for the SplFileObject

Descrição

public int SplFileObject::getFlags ( void )

Gets the flags set for an instance of SplFileObject as an integer.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer representing the flags.

Exemplos

Exemplo #1 SplFileObject::getFlags() example

<?php
$file = new SplFileObject(__FILE__, "r");

if ($file->getFlags() & SplFileObject::SKIP_EMPTY) {
    echo "Skipping empty lines\n";
} else {
    echo "Not skipping empty lines\n";
}

$file->setFlags(SplFileObject::SKIP_EMPTY);

if ($file->getFlags() & SplFileObject::SKIP_EMPTY) {
    echo "Skipping empty lines\n";
} else {
    echo "Not skipping empty lines\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Not skipping empty lines
Skipping empty lines

Veja Também

  • SplFileObject::setFlags() - Sets flags for the SplFileObject

SplFileObject::getCurrentLine
SplFileObject::getMaxLineLen
SplFileObject


Get maximum line length

SplFileObject::getFlags
SplFileObject::hasChildren
SplFileObject
PHP Manual

SplFileObject::getMaxLineLen

(PHP 5 >= 5.1.0)

SplFileObject::getMaxLineLen — Get maximum line length

Descrição

public int SplFileObject::getMaxLineLen ( void )

Gets the maximum line length as set by SplFileObject::setMaxLineLen().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the maximum line length if one has been set with SplFileObject::setMaxLineLen(), default is 0.

Exemplos

Exemplo #1 SplFileObject::getMaxLineLen() example

<?php
$file = new SplFileObject("file.txt");
var_dump($file->getMaxLineLen());

$file->setMaxLineLen(20);
var_dump($file->getMaxLineLen());
?>

O exemplo acima irá imprimir algo similar a:

int(0)
int(20)

Veja Também

  • Classname::Method()

SplFileObject::getFlags
SplFileObject::hasChildren
SplFileObject


SplFileObject does not have children

SplFileObject::getMaxLineLen
SplFileObject::key
SplFileObject
PHP Manual

SplFileObject::hasChildren

(PHP 5 >= 5.1.2)

SplFileObject::hasChildren — SplFileObject does not have children

Descrição

public bool SplFileObject::hasChildren ( void )

An SplFileObject does not have children so this method always return FALSE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns FALSE

Veja Também

  • RecursiveIterator::hasChildren() - Returns if an iterator can be created fot the current entry.

SplFileObject::getMaxLineLen
SplFileObject::key
SplFileObject


Get line number

SplFileObject::hasChildren
SplFileObject::next
SplFileObject
PHP Manual

SplFileObject::key

(PHP 5 >= 5.1.0)

SplFileObject::key — Get line number

Descrição

public int SplFileObject::key ( void )

Gets the current line number.

Nota:

This number may not reflect the actual line number in the file if SplFileObject::setMaxLineLen() is used to read fixed lengths of the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current line number.

Exemplos

Exemplo #1 SplFileObject::key() example

<?php
$file = new SplFileObject("lipsum.txt");
foreach ($file as $line) {
    echo $file->key() . ". " . $line;
}
?>

O exemplo acima irá imprimir algo similar a:

0. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
1. Duis nec sapien felis, ac sodales nisl.
2. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Exemplo #2 SplFileObject::key() example with SplFileObject::setMaxLineLen()

<?php
$file = new SplFileObject("lipsum.txt");
$file->setMaxLineLen(20);
foreach ($file as $line) {
    echo $file->key() . ". " . $line . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

0. Lorem ipsum dolor s
1. it amet, consectetu
2. r adipiscing elit.
3.

4. Duis nec sapien fel
5. is, ac sodales nisl
6. .

7. Lorem ipsum dolor s
8. it amet, consectetu
9. r adipiscing elit.

Veja Também

  • SplFileObject::current() - Retrieve current line of file
  • SplFileObject::seek() - Seek to specified line
  • SplFileObject::next() - Read next line
  • SplFileObject::rewind() - Rewind the file to the first line
  • SplFileObject::valid() - Not at EOF

SplFileObject::hasChildren
SplFileObject::next
SplFileObject


Read next line

SplFileObject::key
SplFileObject::rewind
SplFileObject
PHP Manual

SplFileObject::next

(PHP 5 >= 5.1.0)

SplFileObject::next — Read next line

Descrição

public void SplFileObject::next ( void )

Moves ahead to the next line in the file.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileObject::next() example

<?php
// Read through file line by line
$file = new SplFileObject("misc.txt");
while (!$file->eof()) {
    echo $file->current();
    $file->next();
}
?>

Veja Também

  • SplFileObject::current() - Retrieve current line of file
  • SplFileObject::key() - Get line number
  • SplFileObject::seek() - Seek to specified line
  • SplFileObject::rewind() - Rewind the file to the first line
  • SplFileObject::valid() - Not at EOF

SplFileObject::key
SplFileObject::rewind
SplFileObject


Rewind the file to the first line

SplFileObject::next
SplFileObject::seek
SplFileObject
PHP Manual

SplFileObject::rewind

(PHP 5 >= 5.1.0)

SplFileObject::rewind — Rewind the file to the first line

Descrição

public void SplFileObject::rewind ( void )

Rewinds the file back to the first line.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Throws a RuntimeException if cannot be rewound.

Exemplos

Exemplo #1 SplFileObject::rewind() example

<?php
$file = new SplFileObject("misc.txt");

// Loop over whole file
foreach ($file as $line) { }

// Rewind to first line
$file->rewind();

// Output first line
echo $file->current();
?>

Veja Também

  • SplFileObject::current() - Retrieve current line of file
  • SplFileObject::key() - Get line number
  • SplFileObject::seek() - Seek to specified line
  • SplFileObject::next() - Read next line
  • SplFileObject::valid() - Not at EOF

SplFileObject::next
SplFileObject::seek
SplFileObject


Seek to specified line

SplFileObject::rewind
SplFileObject::setCsvControl
SplFileObject
PHP Manual

SplFileObject::seek

(PHP 5 >= 5.1.0)

SplFileObject::seek — Seek to specified line

Descrição

public void SplFileObject::seek ( int $line_pos )

Seek to specified line in the file.

Parâmetros

line_pos

The zero-based line number to seek to.

Valor Retornado

Não há valor retornado.

Erros

Throws a LogicException if the line_pos is negative.

Exemplos

Exemplo #1 SplFileObject::seek() example

This example outputs the third line of the script which is found at position 2.

<?php
$file = new SplFileObject(__FILE__);
$file->seek(2);
echo $file->current();
?>

O exemplo acima irá imprimir algo similar a:

$file->seek(2);

Veja Também

  • SplFileObject::current() - Retrieve current line of file
  • SplFileObject::key() - Get line number
  • SplFileObject::next() - Read next line
  • SplFileObject::rewind() - Rewind the file to the first line
  • SplFileObject::valid() - Not at EOF

SplFileObject::rewind
SplFileObject::setCsvControl
SplFileObject


Set the delimiter and enclosure character for CSV

SplFileObject::seek
SplFileObject::setFlags
SplFileObject
PHP Manual

SplFileObject::setCsvControl

(PHP 5 >= 5.2.0)

SplFileObject::setCsvControl — Set the delimiter and enclosure character for CSV

Descrição

 public void SplFileObject::setCsvControl
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )

Sets the delimiter and enclosure character for parsing CSV fields.

Parâmetros

delimiter

The field delimiter (one character only).

enclosure

The field enclosure character (one character only).

escape

The field escape character (one character only).

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileObject::setCsvControl() example

<?php
$file = new SplFileObject("data.csv");
$file->setFlags(SplFileObject::READ_CSV);
$file->setCsvControl('|');
foreach ($file as $row) {
    list ($fruit, $quantity) = $row;
    // Do something with values
}
?>

Contents of data.csv

<?php
apples|20
bananas|14
cherries|87
?>

Veja Também

  • SplFileObject::getCsvControl() - Get the delimiter and enclosure character for CSV
  • SplFileObject::fgetcsv() - Gets line from file and parse as CSV fields

SplFileObject::seek
SplFileObject::setFlags
SplFileObject


Sets flags for the SplFileObject

SplFileObject::setCsvControl
SplFileObject::setMaxLineLen
SplFileObject
PHP Manual

SplFileObject::setFlags

(PHP 5 >= 5.1.0)

SplFileObject::setFlags — Sets flags for the SplFileObject

Descrição

public void SplFileObject::setFlags ( int $flags )

Sets the flags to be used by the SplFileObject.

Parâmetros

flags

Bit mask of the flags to set. See SplFileObject constants for the available flags.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileObject::setFlags() example

<?php
$file = new SplFileObject("data.csv");
$file->setFlags(SplFileObject::READ_CSV);
foreach ($file as $fields) {
    var_dump($fields);
}
?>

Veja Também

  • SplFileObject::getFlags() - Gets flags for the SplFileObject

SplFileObject::setCsvControl
SplFileObject::setMaxLineLen
SplFileObject


Set maximum line length

SplFileObject::setFlags
SplFileObject::__toString
SplFileObject
PHP Manual

SplFileObject::setMaxLineLen

(PHP 5 >= 5.1.0)

SplFileObject::setMaxLineLen — Set maximum line length

Descrição

public void SplFileObject::setMaxLineLen ( int $max_len )

Sets the maximum length of a line to be read.

Parâmetros

max_len

The maximum length of a line.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFileObject::setMaxLineLen() example

<?php
$file = new SplFileObject("lipsum.txt");
$file->setMaxLineLen(20);
foreach ($file as $line) {
    echo $line . "\n";
}
?>

Contents of lipsum.txt

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Duis nec sapien felis, ac sodales nisl.
Nulla vitae magna vitae purus aliquet consequat.

O exemplo acima irá imprimir algo similar a:

Lorem ipsum dolor s
it amet, consectetu
r adipiscing elit.

Duis nec sapien fel
is, ac sodales nisl
.

Nulla vitae magna v
itae purus aliquet
consequat.

Veja Também

  • Classname::Method()

SplFileObject::setFlags
SplFileObject::__toString
SplFileObject


Alias of SplFileObject::current

SplFileObject::setMaxLineLen
SplFileObject::valid
SplFileObject
PHP Manual

SplFileObject::__toString

(PHP 5 >= 5.1.0)

SplFileObject::__toString — Alias of SplFileObject::current()

Descrição

This method is an alias of SplFileObject::current().

SplFileObject::setMaxLineLen
SplFileObject::valid
SplFileObject


Not at EOF

SplFileObject::__toString
SplTempFileObject
SplFileObject
PHP Manual

SplFileObject::valid

(PHP 5 >= 5.1.0)

SplFileObject::valid — Not at EOF

Descrição

public bool SplFileObject::valid ( void )

Check whether EOF has been reached.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if not reached EOF, FALSE otherwise.

Exemplos

Exemplo #1 SplFileObject::valid() example

<?php
// Loop over a file, line by line
$file = new SplFileObject("file.txt");
while ($file->valid()) {
    echo $file->fgets();
}
?>

Veja Também

  • SplFileObject::current() - Retrieve current line of file
  • SplFileObject::key() - Get line number
  • SplFileObject::seek() - Seek to specified line
  • SplFileObject::next() - Read next line
  • SplFileObject::rewind() - Rewind the file to the first line

SplFileObject::__toString
SplTempFileObject
SplFileObject


The SplTempFileObject class

Introdução

The SplTempFileObject class offers an object oriented interface for a temporary file.

Sinopse da classe

SplTempFileObject extends SplFileObject implements SeekableIterator , Iterator , Traversable , RecursiveIterator {
/* Methods */
__construct ([ int $max_memory ] )
/* Inherited methods */
SplFileObject::__construct ( string $filename [, string $open_mode = "r" [, bool $use_include_path = false [, resource $context ]]] )
public string|array SplFileObject::current ( void )
public bool SplFileObject::eof ( void )
public bool SplFileObject::fflush ( void )
public string SplFileObject::fgetc ( void )
 public array SplFileObject::fgetcsv
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )
public string SplFileObject::fgets ( void )
public string SplFileObject::fgetss ([ string $allowable_tags ] )
public bool SplFileObject::flock ( int $operation [, int &$wouldblock ] )
public int SplFileObject::fpassthru ( void )
public mixed SplFileObject::fscanf ( string $format [, mixed &$... ] )
public int SplFileObject::fseek ( int $offset [, int $whence = SEEK_SET ] )
public array SplFileObject::fstat ( void )
public int SplFileObject::ftell ( void )
public bool SplFileObject::ftruncate ( int $size )
public int SplFileObject::fwrite ( string $str [, int $length ] )
public void SplFileObject::getChildren ( void )
public array SplFileObject::getCsvControl ( void )
public int SplFileObject::getFlags ( void )
public int SplFileObject::getMaxLineLen ( void )
public bool SplFileObject::hasChildren ( void )
public int SplFileObject::key ( void )
public void SplFileObject::next ( void )
public void SplFileObject::rewind ( void )
public void SplFileObject::seek ( int $line_pos )
 public void SplFileObject::setCsvControl
  ([ string $delimiter = ","
 [, string $enclosure = "\""
 [, string $escape = "\\"
]]] )
public void SplFileObject::setFlags ( int $flags )
public void SplFileObject::setMaxLineLen ( int $max_len )
public bool SplFileObject::valid ( void )
}

Índice

  • SplTempFileObject::__construct — Construct a new temporary file object
SplFileObject::valid
SplTempFileObject::__construct
File Handling


Construct a new temporary file object

SplTempFileObject
Miscellaneous Classes and Interfaces
SplTempFileObject
PHP Manual

SplTempFileObject::__construct

(PHP 5 >= 5.1.2)

SplTempFileObject::__construct — Construct a new temporary file object

Descrição

SplTempFileObject::__construct ([ int $max_memory ] )

Construct a new temporary file object.

Parâmetros

max_memory

The maximum amount of memory (in bytes, default is 2 MB) for the temporary file to use. If the temporary file exceeds this size, it will be moved to a file in the system's temp directory.

If max_memory is negative, only memory will be used. If max_memory is zero, no memory will be used.

Valor Retornado

Não há valor retornado.

Erros

Throws a RuntimeException if an error occurs.

Exemplos

Exemplo #1 SplTempFileObject() example

This example writes a temporary file in memory which can be written to and read from.

<?php
$temp = new SplTempFileObject();
$temp->fwrite("This is the first line\n");
$temp->fwrite("And this is the second.\n");
echo "Written " . $temp->ftell() . " bytes to temporary file.\n\n";

// Rewind and read what was written
$temp->rewind();
foreach ($temp as $line) {
    echo $line;
}
?>

O exemplo acima irá imprimir algo similar a:

Written 47 bytes to temporary file.

This is the first line
And this is the second.

Veja Também

  • SplFileObject
  • PHP input/output streams (for php://temp and php://memory)

SplTempFileObject
Miscellaneous Classes and Interfaces
SplTempFileObject


Miscellaneous Classes and Interfaces

Índice

  • ArrayObject
  • SplObserver
  • SplSubject

Classes and interfaces which do not fit into the other SPL categories.

SplTempFileObject::__construct
ArrayObject
SPL


A classe ArrayObject

Introdução

...

Sinopse da classe

ArrayObject implements IteratorAggregate , Traversable , ArrayAccess , Countable {
/* Métodos */
__construct ( mixed $input )
void append ( mixed $newval )
void asort ( void )
int count ( void )
array exchangeArray ( mixed $input )
array getArrayCopy ( void )
int getFlags ( void )
ArrayIterator getIterator ( void )
public string getIteratorClass ( void )
void ksort ( void )
void natcasesort ( void )
void natsort ( void )
bool offsetExists ( mixed $index )
mixed offsetGet ( mixed $index )
void offsetSet ( mixed $index , mixed $newval )
void offsetUnset ( mixed $index )
public void serialize ( void )
void setFlags ( int $flags )
void setIteratorClass ( string $iterator_class )
void uasort ( callback $cmp_function )
void uksort ( callback $cmp_function )
public void unserialize ( string $serialized )
}

Constantes pré-definidas

ArrayObject Flags

ArrayObject::STD_PROP_LIST

Properties of the object have their normal functionality when accessed as list (var_dump, foreach, etc.).

ArrayObject::ARRAY_AS_PROPS

Entries can be accessed as properties (read and write).

Índice

  • ArrayObject::append — Acrescenta um valor
  • ArrayObject::asort — Sort the entries by value
  • ArrayObject::__construct — Constrói um novo objeto array
  • ArrayObject::count — Retorna o número de elementos no iterador
  • ArrayObject::exchangeArray — Exchange the array for another one.
  • ArrayObject::getArrayCopy — Creates a copy of the ArrayObject.
  • ArrayObject::getFlags — Gets the behavior flags.
  • ArrayObject::getIterator — Retorna o iterador do ArrayObject
  • ArrayObject::getIteratorClass — Gets the iterator classname for the ArrayObject.
  • ArrayObject::ksort — Sort the entries by key
  • ArrayObject::natcasesort — Sort an array using a case insensitive "natural order" algorithm
  • ArrayObject::natsort — Sort entries using a "natural order" algorithm
  • ArrayObject::offsetExists — Retorna se o índice solicitado existe ou não
  • ArrayObject::offsetGet — Retorna o valor do índice especificado
  • ArrayObject::offsetSet — Define o valor do índice especificado por $index para $newval
  • ArrayObject::offsetUnset — Destrói o elemento no índice especificado
  • ArrayObject::serialize — Serialize an ArrayObject
  • ArrayObject::setFlags — Sets the behavior flags.
  • ArrayObject::setIteratorClass — Sets the iterator classname for the ArrayObject.
  • ArrayObject::uasort — Sort the entries with a user-defined comparison function and maintain key association
  • ArrayObject::uksort — Sort the entries by keys using a user-defined comparison function
  • ArrayObject::unserialize — Unserialize an ArrayObject
Miscellaneous Classes and Interfaces
ArrayObject::append
Miscellaneous Classes and Interfaces


Acrescenta um valor

ArrayObject
ArrayObject::asort
ArrayObject
PHP Manual

ArrayObject::append

(PHP 5 >= 5.0.0)

ArrayObject::append — Acrescenta um valor

Descrição

void ArrayObject::append ( mixed $newval )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

ArrayObject
ArrayObject::asort
ArrayObject


Sort the entries by value

ArrayObject::append
ArrayObject::__construct
ArrayObject
PHP Manual

ArrayObject::asort

(PHP 5 >= 5.2.0)

ArrayObject::asort — Sort the entries by value

Descrição

void ArrayObject::asort ( void )

Sorts the entries such that the keys maintain their correlation with the entries they are associated with. This is used mainly when sorting associative arrays where the actual element order is significant.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::asort() example

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$fruitArrayObject = new ArrayObject($fruits);
$fruitArrayObject->asort();

foreach ($fruitArrayObject as $key => $val) {
    echo "$key = $val\n";
}
?>

O exemplo acima irá imprimir:

c = apple
b = banana
d = lemon
a = orange

The fruits have been sorted in alphabetical order, and the key associated with each entry has been maintained.

ArrayObject::append
ArrayObject::__construct
ArrayObject


Constrói um novo objeto array

ArrayObject::asort
ArrayObject::count
ArrayObject
PHP Manual

ArrayObject::__construct

(PHP 5 >= 5.0.0)

ArrayObject::__construct — Constrói um novo objeto array

Descrição

ArrayObject::__construct() ( mixed $input )

Constrói um novo object array.

Parâmetros

input

O parâmetro input aceita um array ou um outro ArrayObject.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo de ArrayObject::__construct()

<?php
$array = array('1' => 'um',
               '2' => 'dois',
               '3' => 'três');

$arrayobject = new ArrayObject($array);

var_dump($arrayobject);
?>

O exemplo acima irá imprimir:

object(ArrayObject)#1 (3) {
  [1]=>
  string(2) "um"
  [2]=>
  string(4) "dois"
  [3]=>
  string(4) "três"
}

ArrayObject::asort
ArrayObject::count
ArrayObject


Retorna o número de elementos no iterador

ArrayObject::__construct
ArrayObject::exchangeArray
ArrayObject
PHP Manual

ArrayObject::count

(PHP 5 >= 5.0.0)

ArrayObject::count — Retorna o número de elementos no iterador

Descrição

int ArrayObject::count ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

O número de elementos em um iterador.

ArrayObject::__construct
ArrayObject::exchangeArray
ArrayObject


Exchange the array for another one.

ArrayObject::count
ArrayObject::getArrayCopy
ArrayObject
PHP Manual

ArrayObject::exchangeArray

(PHP 5 >= 5.1.0)

ArrayObject::exchangeArray — Exchange the array for another one.

Descrição

array ArrayObject::exchangeArray ( mixed $input )

Exchange the current array with another array or object.

Parâmetros

input

The new array or object to exchange with the current array.

Valor Retornado

Returns the old array.

Exemplos

Exemplo #1 ArrayObject::exchangeArray() example

<?php
// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);
// Array of locations in Europe
$locations = array('Amsterdam', 'Paris', 'London');

$fruitsArrayObject = new ArrayObject($fruits);

// Now exchange fruits for locations
$old = $fruitsArrayObject->exchangeArray($locations);
print_r($old);
print_r($fruitsArrayObject);

?>

O exemplo acima irá imprimir:

Array
(
    [lemons] => 1
    [oranges] => 4
    [bananas] => 5
    [apples] => 10
)
ArrayObject Object
(
    [0] => Amsterdam
    [1] => Paris
    [2] => London
)

ArrayObject::count
ArrayObject::getArrayCopy
ArrayObject


Creates a copy of the ArrayObject.

ArrayObject::exchangeArray
ArrayObject::getFlags
ArrayObject
PHP Manual

ArrayObject::getArrayCopy

(PHP 5 >= 5.0.0)

ArrayObject::getArrayCopy — Creates a copy of the ArrayObject.

Descrição

array ArrayObject::getArrayCopy ( void )

Exports the ArrayObject to an array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a copy of the array. When the ArrayObject refers to an object an array of the public properties of that object will be returned.

Exemplos

Exemplo #1 ArrayObject::getArrayCopy() example

<?php
// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);

$fruitsArrayObject = new ArrayObject($fruits);
$fruitsArrayObject['pears'] = 4;

// create a copy of the array
$copy = $fruitsArrayObject->getArrayCopy();
print_r($copy);

?>

O exemplo acima irá imprimir:

Array
(
    [lemons] => 1
    [oranges] => 4
    [bananas] => 5
    [apples] => 10
    [pears] => 4
)

ArrayObject::exchangeArray
ArrayObject::getFlags
ArrayObject


Gets the behavior flags.

ArrayObject::getArrayCopy
ArrayObject::getIterator
ArrayObject
PHP Manual

ArrayObject::getFlags

(PHP 5 >= 5.1.0)

ArrayObject::getFlags — Gets the behavior flags.

Descrição

int ArrayObject::getFlags ( void )

Gets the behavior flags of the ArrayObject. See the ArrayObject::setFlags method for a list of the available flags.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the behavior flags of the ArrayObject.

Exemplos

Exemplo #1 ArrayObject::getFlags() example

<?php
// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);

$fruitsArrayObject = new ArrayObject($fruits);

// Get the current flags
$flags = $fruitsArrayObject->getFlags();
var_dump($flags);

// Set new flags
$fruitsArrayObject->setFlags(ArrayObject::ARRAY_AS_PROPS);

// Get the new flags
$flags = $fruitsArrayObject->getFlags();
var_dump($flags);
?>

O exemplo acima irá imprimir:

int(0)
int(2)

Veja Também

  • The ArrayObject::setFlags method

ArrayObject::getArrayCopy
ArrayObject::getIterator
ArrayObject


Retorna o iterador do ArrayObject

ArrayObject::getFlags
ArrayObject::getIteratorClass
ArrayObject
PHP Manual

ArrayObject::getIterator

(PHP 5 >= 5.0.0)

ArrayObject::getIterator — Retorna o iterador do ArrayObject

Descrição

ArrayIterator ArrayObject::getIterator ( void )

Cria um novo iterador a partir de uma instância de ArrayObject.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Um iterador de um ArrayObject.

Exemplos

Exemplo #1 Exemplo de ArrayObject::getIterator()

<?php
$array = array('1' => 'um',
               '2' => 'dois',
               '3' => 'três');

$arrayobject = new ArrayObject($array);

$iterator = $arrayobject->getIterator();

while($iterator->valid()) {
    echo $iterator->key() . ' => ' . $iterator->current() . "\n";

    $iterator->next();
}
?>

O exemplo acima irá imprimir:

1 => um
2 => dois
3 => três

ArrayObject::getFlags
ArrayObject::getIteratorClass
ArrayObject


Gets the iterator classname for the ArrayObject.

ArrayObject::getIterator
ArrayObject::ksort
ArrayObject
PHP Manual

ArrayObject::getIteratorClass

(PHP 5 >= 5.1.0)

ArrayObject::getIteratorClass — Gets the iterator classname for the ArrayObject.

Descrição

public string ArrayObject::getIteratorClass ( void )

Gets the class name of the array iterator that is used by ArrayObject::getIterator().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the iterator class name that is used to iterate over this object.

Exemplos

Exemplo #1 ArrayObject::getIteratorClass() example

<?php
// Custom ArrayIterator (inherits from ArrayIterator)
class MyArrayIterator extends ArrayIterator {
    // custom implementation
}

// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);

$fruitsArrayObject = new ArrayObject($fruits);

// Get the current class name
$className = $fruitsArrayObject->getIteratorClass();
var_dump($className);

// Set new classname
$fruitsArrayObject->setIteratorClass('MyArrayIterator');

// Get the new iterator classname
$className = $fruitsArrayObject->getIteratorClass();
var_dump($className);
?>

O exemplo acima irá imprimir:

string(13) "ArrayIterator"
string(15) "MyArrayIterator"

Veja Também

  • The ArrayObject::setIteratorClass method

ArrayObject::getIterator
ArrayObject::ksort
ArrayObject


Sort the entries by key

ArrayObject::getIteratorClass
ArrayObject::natcasesort
ArrayObject
PHP Manual

ArrayObject::ksort

(PHP 5 >= 5.2.0)

ArrayObject::ksort — Sort the entries by key

Descrição

void ArrayObject::ksort ( void )

Sorts the entries by key, maintaining key to entry correlations. This is useful mainly for associative arrays.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::ksort() example

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$fruitArrayObject = new ArrayObject($fruits);
$fruitArrayObject->ksort();

foreach ($fruitArrayObject as $key => $val) {
    echo "$key = $val\n";
}
 ?>

O exemplo acima irá imprimir:

a = orange
b = banana
c = apple
d = lemon

ArrayObject::getIteratorClass
ArrayObject::natcasesort
ArrayObject


Sort an array using a case insensitive "natural order" algorithm

ArrayObject::ksort
ArrayObject::natsort
ArrayObject
PHP Manual

ArrayObject::natcasesort

(PHP 5 >= 5.2.0)

ArrayObject::natcasesort — Sort an array using a case insensitive "natural order" algorithm

Descrição

void ArrayObject::natcasesort ( void )

This method is a case insensitive version of ArrayObject::natsort.

This method implements a sort algorithm that orders alphanumeric strings in the way a human being would while maintaining key/value associations. This is described as a "natural ordering".

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::natcasesort() example

<?php
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');

$arr1 = new ArrayObject($array);
$arr2 = clone $arr1;

$arr1->asort();
echo "Standard sorting\n";
print_r($arr1);

$arr2->natcasesort();
echo "\nNatural order sorting (case-insensitive)\n";
print_r($arr2);
?>

O exemplo acima irá imprimir:

Standard sorting
ArrayObject Object
(
    [0] => IMG0.png
    [5] => IMG3.png
    [4] => img1.png
    [2] => img10.png
    [1] => img12.png
    [3] => img2.png
)

Natural order sorting (case-insensitive)
ArrayObject Object
(
    [0] => IMG0.png
    [4] => img1.png
    [3] => img2.png
    [5] => IMG3.png
    [2] => img10.png
    [1] => img12.png
)

For more information see: Martin Pool's » Natural Order String Comparison page.

ArrayObject::ksort
ArrayObject::natsort
ArrayObject


Sort entries using a "natural order" algorithm

ArrayObject::natcasesort
ArrayObject::offsetExists
ArrayObject
PHP Manual

ArrayObject::natsort

(PHP 5 >= 5.2.0)

ArrayObject::natsort — Sort entries using a "natural order" algorithm

Descrição

void ArrayObject::natsort ( void )

This method implements a sort algorithm that orders alphanumeric strings in the way a human being would while maintaining key/value associations. This is described as a "natural ordering". An example of the difference between this algorithm and the regular computer string sorting algorithms (used in ArrayObject::asort) method can be seen in the example below.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::natsort() example

<?php
$array = array("img12.png", "img10.png", "img2.png", "img1.png");

$arr1 = new ArrayObject($array);
$arr2 = clone $arr1;

$arr1->asort();
echo "Standard sorting\n";
print_r($arr1);

$arr2->natsort();
echo "\nNatural order sorting\n";
print_r($arr2);
?>

O exemplo acima irá imprimir:

Standard sorting
ArrayObject Object
(
    [3] => img1.png
    [1] => img10.png
    [0] => img12.png
    [2] => img2.png
)

Natural order sorting
ArrayObject Object
(
    [3] => img1.png
    [2] => img2.png
    [1] => img10.png
    [0] => img12.png
)

For more information see: Martin Pool's » Natural Order String Comparison page.

ArrayObject::natcasesort
ArrayObject::offsetExists
ArrayObject


Retorna se o índice solicitado existe ou não

ArrayObject::natsort
ArrayObject::offsetGet
ArrayObject
PHP Manual

ArrayObject::offsetExists

(PHP 5 >= 5.0.0)

ArrayObject::offsetExists — Retorna se o índice solicitado existe ou não

Descrição

bool ArrayObject::offsetExists ( mixed $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

O índice a ser verificado.

Valor Retornado

TRUE se o requisitado $index existe, FALSE caso contrário

ArrayObject::natsort
ArrayObject::offsetGet
ArrayObject


Retorna o valor do índice especificado

ArrayObject::offsetExists
ArrayObject::offsetSet
ArrayObject
PHP Manual

ArrayObject::offsetGet

(PHP 5 >= 5.0.0)

ArrayObject::offsetGet — Retorna o valor do índice especificado

Descrição

mixed ArrayObject::offsetGet ( mixed $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

index

O índice com o valor.

Valor Retornado

O valor no especificado $index.

ArrayObject::offsetExists
ArrayObject::offsetSet
ArrayObject


Define o valor do índice especificado por $index para $newval

ArrayObject::offsetGet
ArrayObject::offsetUnset
ArrayObject
PHP Manual

ArrayObject::offsetSet

(PHP 5 >= 5.0.0)

ArrayObject::offsetSet — Define o valor do índice especificado por $index para $newval

Descrição

void ArrayObject::offsetSet ( mixed $index , mixed $newval )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Sets the value at the specified index to newval.

Parâmetros

index

O índice a ser definido.

newval

O novo valor para o index.

Valor Retornado

Não há valor retornado.

ArrayObject::offsetGet
ArrayObject::offsetUnset
ArrayObject


Destrói o elemento no índice especificado

ArrayObject::offsetSet
ArrayObject::serialize
ArrayObject
PHP Manual

ArrayObject::offsetUnset

(PHP 5 >= 5.0.0)

ArrayObject::offsetUnset — Destrói o elemento no índice especificado

Descrição

void ArrayObject::offsetUnset ( mixed $index )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Remove o valor no especificado índice.

Parâmetros

index

O índice a ser desregistrado.

Valor Retornado

Não há valor retornado.

ArrayObject::offsetSet
ArrayObject::serialize
ArrayObject


Serialize an ArrayObject

ArrayObject::offsetUnset
ArrayObject::setFlags
ArrayObject
PHP Manual

ArrayObject::serialize

(PHP 5 >= 5.3.0)

ArrayObject::serialize — Serialize an ArrayObject

Descrição

public void ArrayObject::serialize ( void )

Serializes an ArrayObject.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The serialized representation of the ArrayObject.

Exemplos

Exemplo #1 ArrayObject::serialize() example

<?php
$o = new ArrayObject();

$s1 = serialize($o);
$s2 = $o->serialize();

var_dump($s1);
var_dump($s2);
?>

O exemplo acima irá imprimir:

string(45) "C:11:"ArrayObject":21:{x:i:0;a:0:{};m:a:0:{}}"
string(21) "x:i:0;a:0:{};m:a:0:{}"

Veja Também

  • ArrayObject::unserialize() - Unserialize an ArrayObject
  • serialize() - Generates a storable representation of a value
  • Serializing Objects

ArrayObject::offsetUnset
ArrayObject::setFlags
ArrayObject


Sets the behavior flags.

ArrayObject::serialize
ArrayObject::setIteratorClass
ArrayObject
PHP Manual

ArrayObject::setFlags

(PHP 5 >= 5.1.0)

ArrayObject::setFlags — Sets the behavior flags.

Descrição

void ArrayObject::setFlags ( int $flags )

Set the flags that change the behavior of the ArrayObject.

Parâmetros

flags

The new ArrayObject behavior. It takes on either a bitmask, or named constants. Using named constants is strongly encouraged to ensure compatibility for future versions.

The available behavior flags are listed below. The actual meanings of these flags are described in the predefined constants.

ArrayObject behavior flags
value | constant
1 | ArrayObject::STD_PROP_LIST
2 | ArrayObject::ARRAY_AS_PROPS

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::setFlags() example

<?php
// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);

$fruitsArrayObject = new ArrayObject($fruits);

// Try to use array key as property
var_dump($fruitsArrayObject->lemons);
// Set the flag so that the array keys can be used as properties of the ArrayObject
$fruitsArrayObject->setFlags(ArrayObject::ARRAY_AS_PROPS);
// Try it again
var_dump($fruitsArrayObject->lemons);
?>

O exemplo acima irá imprimir:

NULL
int(1)

ArrayObject::serialize
ArrayObject::setIteratorClass
ArrayObject


Sets the iterator classname for the ArrayObject.

ArrayObject::setFlags
ArrayObject::uasort
ArrayObject
PHP Manual

ArrayObject::setIteratorClass

(PHP 5 >= 5.1.0)

ArrayObject::setIteratorClass — Sets the iterator classname for the ArrayObject.

Descrição

void ArrayObject::setIteratorClass ( string $iterator_class )

Sets the classname of the array iterator that is used by ArrayObject::getIterator().

Parâmetros

iterator_class

The classname of the array iterator to use when iterating over this object.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::setIteratorClass() example

<?php
// Custom ArrayIterator (inherits from ArrayIterator)
class MyArrayIterator extends ArrayIterator {
    // custom implementation
}

// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);

$fruitsArrayObject = new ArrayObject($fruits);

// Set the iterator classname to the newly
$fruitsArrayObject->setIteratorClass('MyArrayIterator');
print_r($fruitsArrayObject->getIterator());

?>

O exemplo acima irá imprimir:

MyArrayIterator Object
(
    [lemons] => 1
    [oranges] => 4
    [bananas] => 5
    [apples] => 10
)

ArrayObject::setFlags
ArrayObject::uasort
ArrayObject


Sort the entries with a user-defined comparison function and maintain key association

ArrayObject::setIteratorClass
ArrayObject::uksort
ArrayObject
PHP Manual

ArrayObject::uasort

(PHP 5 >= 5.2.0)

ArrayObject::uasort — Sort the entries with a user-defined comparison function and maintain key association

Descrição

void ArrayObject::uasort ( callback $cmp_function )

This function sorts the entries such that keys maintain their correlation with the entry that they are associated with, using a user-defined comparison function.

This is used mainly when sorting associative arrays where the actual element order is significant.

Parâmetros

cmp_function

Function cmp_function should accept two parameters which will be filled by pairs of entries. The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::uasort() example

<?php
// Comparison function
function cmp($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// Array to be sorted
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
$arrayObject = new ArrayObject($array);
print_r($arrayObject);

// Sort and print the resulting array
$arrayObject->uasort('cmp');
print_r($arrayObject);
?>

O exemplo acima irá imprimir:

Array
(
    [a] => 4
    [b] => 8
    [c] => -1
    [d] => -9
    [e] => 2
    [f] => 5
    [g] => 3
    [h] => -4
)
Array
(
    [d] => -9
    [h] => -4
    [c] => -1
    [e] => 2
    [g] => 3
    [a] => 4
    [f] => 5
    [b] => 8
)

ArrayObject::setIteratorClass
ArrayObject::uksort
ArrayObject


Sort the entries by keys using a user-defined comparison function

ArrayObject::uasort
ArrayObject::unserialize
ArrayObject
PHP Manual

ArrayObject::uksort

(PHP 5 >= 5.2.0)

ArrayObject::uksort — Sort the entries by keys using a user-defined comparison function

Descrição

void ArrayObject::uksort ( callback $cmp_function )

This function sorts the keys of the entries using a user-supplied comparison function. The key to entry correlations will be maintained.

Parâmetros

cmp_function

The callback comparison function.

Function cmp_function should accept two parameters which will be filled by pairs of entry keys. The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 ArrayObject::uksort() example

<?php
function cmp($a, $b) {
    $a = preg_replace('@^(a|an|the) @', '', $a);
    $b = preg_replace('@^(a|an|the) @', '', $b);
    return strcasecmp($a, $b);
}

$array = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);
$arrayObject = new ArrayObject($array);
$arrayObject->uksort('cmp');

foreach ($arrayObject as $key => $value) {
    echo "$key: $value\n";
}
?>

O exemplo acima irá imprimir:

an apple: 3
a banana: 4
the Earth: 2
John: 1

ArrayObject::uasort
ArrayObject::unserialize
ArrayObject


Unserialize an ArrayObject

ArrayObject::uksort
SplObserver
ArrayObject
PHP Manual

ArrayObject::unserialize

(PHP 5 >= 5.3.0)

ArrayObject::unserialize — Unserialize an ArrayObject

Descrição

public void ArrayObject::unserialize ( string $serialized )

Unserializes a serialized ArrayObject.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

serialized

The serialized ArrayObject.

Valor Retornado

The unserialized ArrayObject.

Veja Também

  • ArrayIterator::serialize() - Serialize
  • unserialize() - Creates a PHP value from a stored representation
  • Serializing Objects

ArrayObject::uksort
SplObserver
ArrayObject


The SplObserver interface

Introdução

The SplObserver interface is used alongside SplSubject to implement the Observer Design Pattern.

Resumo da Interface

SplObserver {
/* Methods */
abstract public void update ( SplSubject $subject )
}

Índice

  • SplObserver::update — Receive update from subject
ArrayObject::unserialize
SplObserver::update
Miscellaneous Classes and Interfaces


Receive update from subject

SplObserver
SplSubject
SplObserver
PHP Manual

SplObserver::update

(PHP 5 >= 5.1.0)

SplObserver::update — Receive update from subject

Descrição

abstract public void SplObserver::update ( SplSubject $subject )

This method is called when any SplSubject to which the observer is attached calls SplSubject::notify().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

subject

The SplSubject notifying the observer of an update.

Valor Retornado

Não há valor retornado.

SplObserver
SplSubject
SplObserver


The SplSubject interface

Introdução

The SplSubject interface is used alongside SplObserver to implement the Observer Design Pattern.

Resumo da Interface

SplSubject {
/* Methods */
abstract public void attach ( SplObserver $observer )
abstract public void detach ( SplObserver $observer )
abstract public void notify ( void )
}

Índice

  • SplSubject::attach — Attach an SplObserver
  • SplSubject::detach — Detach an observer
  • SplSubject::notify — Notify an observer
SplObserver::update
SplSubject::attach
Miscellaneous Classes and Interfaces


Attach an SplObserver

SplSubject
SplSubject::detach
SplSubject
PHP Manual

SplSubject::attach

(PHP 5 >= 5.1.0)

SplSubject::attach — Attach an SplObserver

Descrição

abstract public void SplSubject::attach ( SplObserver $observer )

Attaches an SplObserver so that it can be notified of updates.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

observer

The SplObserver to attach.

Valor Retornado

Não há valor retornado.

SplSubject
SplSubject::detach
SplSubject


Detach an observer

SplSubject::attach
SplSubject::notify
SplSubject
PHP Manual

SplSubject::detach

(PHP 5 >= 5.1.0)

SplSubject::detach — Detach an observer

Descrição

abstract public void SplSubject::detach ( SplObserver $observer )

Detaches an observer from the subject to no longer notify it of updates.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

observer

The SplObserver to detach.

Valor Retornado

Não há valor retornado.

SplSubject::attach
SplSubject::notify
SplSubject


Notify an observer

SplSubject::detach
SPL Types
SplSubject
PHP Manual

SplSubject::notify

(PHP 5 >= 5.1.0)

SplSubject::notify — Notify an observer

Descrição

abstract public void SplSubject::notify ( void )

Notifies all attached observers.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

SplSubject::detach
SPL Types
SplSubject


SPL Type Handling

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • SplInt — The SplInt class
    • SplInt::__construct — Constructs an integer object type
  • SplFloat — The SplFloat class
    • SplFloat::__construct — Constructs a float object type
  • SplEnum — The SplEnum class
    • SplEnum::__construct — Constructs an enumeger object type
  • SplBool — The SplBool class
    • SplBool::__construct — Constructs a bool object type
  • SplString — The SplString class
    • SplString::__construct — Constructs a string object type
SplSubject::notify
Introdução
Outras Básicas Extensões


Introdução

This extension aims at helping people making PHP a stronger typed language and can be a good alternative to scalar type hinting. It provides different typehandling classes as such as integer, float, bool, enum and string

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

SPL Types
Instalação/Configuração
SPL Types


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SPL Types


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/SPL_Types.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
SplInt
Instalação/Configuração


The SplInt class

Introdução

The SplInt class is used to enforce strong typing of the integer type.

Sinopse da classe

SplInt {
/* Methods */
__construct ( integer $input )
}

Índice

  • SplInt::__construct — Constructs an integer object type
Tipos Resource
SplInt::__construct
SPL Types


Constructs an integer object type

SplInt
SplFloat
SplInt
PHP Manual

SplInt::__construct

(PECL spl_types >= 0.1.0)

SplInt::__construct — Constructs an integer object type

Descrição

SplInt::__construct() ( integer $input )

This constructs a new object of type integer.

Parâmetros

input

The input parameter accepts an integer An UnexpectedValueException Exception will be thrown if anything is passed.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplInt::__construct() example

<?php
$int = new SplInt(94);

try {
    $int = 'Try to cast a string value for fun';
} catch (UnexpectedValueException $uve) {
    echo $uve->getMessage() . PHP_EOL;
}

var_dump($int);
echo $int; // Outputs 94
?>

O exemplo acima irá imprimir:

Value not an integer
object(SplInt)#1 (1) {
  ["__default"]=>
  int(94)
}
94

SplInt
SplFloat
SplInt


The SplFloat class

Introdução

The SplFloat class is used to enforce strong typing of the float type.

Sinopse da classe

SplFloat {
/* Methods */
__construct ( float $input )
}

Índice

  • SplFloat::__construct — Constructs a float object type
SplInt::__construct
SplFloat::__construct
SPL Types


Constructs a float object type

SplFloat
SplEnum
SplFloat
PHP Manual

SplFloat::__construct

(PECL spl_types >= 0.1.0)

SplFloat::__construct — Constructs a float object type

Descrição

SplFloat::__construct() ( float $input )

This constructs a new object of type float.

Parâmetros

input

The input parameter accepts a float or an integer. If an integer is passed, it will be converted to float.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplFloat::__construct() example

<?php
$float    = new SplFloat(3.154);
$newFloat = new SplFloat(3);

try {
    $float = 'Try to cast a string value for fun';
} catch (UnexpectedValueException $uve) {
    echo $uve->getMessage() . PHP_EOL;
}

var_dump($float);
var_dump($newFloat);
?>

O exemplo acima irá imprimir:

Value not a float
object(SplFloat)#1 (1) {
  ["__default"]=>
  float(3.154)
}
object(SplFloat)#2 (1) {
  ["__default"]=>
  float(3)
}

SplFloat
SplEnum
SplFloat


The SplEnum class

Introdução

SplEnum gives the ability to emulate and create "Enum" objects natively in PHP.

Sinopse da classe

abstract SplEnum {
/* Methods */
__construct ( void )
}

Índice

  • SplEnum::__construct — Constructs an enumeger object type
SplFloat::__construct
SplEnum::__construct
SPL Types


Constructs an enumeger object type

SplEnum
SplBool
SplEnum
PHP Manual

SplEnum::__construct

(PECL spl_types >= 0.1.0)

SplEnum::__construct — Constructs an enumeger object type

Descrição

SplEnum::__construct() ( void )

This constructor is used to set the value and the strictness of the "Enum" Object.

Parâmetros

input

The input parameter accepts an integer and will throw an UnexpectedValueException if anything else is passed.

strict

A boolean variable to indicate whether the object's strictness should be set or not.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplEnum::__construct() example

<?php

class EnumOne extends SplEnum
{
    const __default = 1;
}

class EnumTwo extends SplEnum
{
    const __default = 2;
}

class EnumThree extends SplEnum
{
    const __default = 3;
}

$enumOne   = new EnumOne();
$enumTwo   = new EnumTwo();
$enumThree = new EnumThree();

echo 'Enum one  : ' . $enumOne   . PHP_EOL;
echo 'Enum two  : ' . $enumTwo   . PHP_EOL;
echo 'Enum three: ' . $enumThree . PHP_EOL;
?>

O exemplo acima irá imprimir:

Enum one  : 1
Enum two  : 2
Enum three: 3

SplEnum
SplBool
SplEnum


The SplBool class

Introdução

The SplBool class is used to enforce strong typing of the bool type.

Sinopse da classe

SplBool {
/* Methods */
__construct ( void )
}

Índice

  • SplBool::__construct — Constructs a bool object type
SplEnum::__construct
SplBool::__construct
SPL Types


Constructs a bool object type

SplBool
SplString
SplBool
PHP Manual

SplBool::__construct

(PECL spl_types >= 0.1.0)

SplBool::__construct — Constructs a bool object type

Descrição

SplBool::__construct() ( void )

This constructs a new object of type bool.

Parâmetros

input

The input parameter accepts a bool.

strict

A boolean variable to indicate whether the object's strictness should be set or not.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplBool::__construct() example

<?php
$one = new SplBool(true);
$two = new SplBool(1);

var_dump($one);
var_dump($two);
?>

O exemplo acima irá imprimir:

object(SplBool)#1 (1) {
  ["__default"]=>
  bool(true)
}
object(SplBool)#1 (1) {
  ["__default"]=>
  bool(true)
}

SplBool
SplString
SplBool


The SplString class

Introdução

The SplString class is used to enforce strong typing of the string type.

Sinopse da classe

SplString {
/* Methods */
__construct ( string $input )
}

Índice

  • SplString::__construct — Constructs a string object type
SplBool::__construct
SplString::__construct
SPL Types


Constructs a string object type

SplString
Streams
SplString
PHP Manual

SplString::__construct

(PECL spl_types >= 0.1.0)

SplString::__construct — Constructs a string object type

Descrição

SplString::__construct() ( string $input )

This constructs a new object of type string.

Parâmetros

input

The input parameter accepts a string An UnexpectedValueException Exception will be thrown if anything else is passed.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SplString::__construct() example

<?php
$string = new SplString("Testing");

try {
    $string = array();
} catch (UnexpectedValueException $uve) {
    echo $uve->getMessage() . PHP_EOL;
}

var_dump($string);
echo $string; // Outputs "Testing"
?>

O exemplo acima irá imprimir:

Value not a string
object(SplString)#1 (1) {
  ["__default"]=>
  string(7) "Testing"
}
Testing

SplString
Streams
SplString


Streams

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Stream Classes
  • Constantes pré-definidas
  • Stream Filters
  • Stream Contexts
  • Stream Errors
  • Exemplos
    • Example class registered as stream wrapper
  • streamWrapper — The streamWrapper class
    • streamWrapper::__construct — Constructs a new stream wrapper
    • streamWrapper::dir_closedir — Close directory handle
    • streamWrapper::dir_opendir — Open directory handle
    • streamWrapper::dir_readdir — Read entry from directory handle
    • streamWrapper::dir_rewinddir — Rewind directory handle
    • streamWrapper::mkdir — Create a directory
    • streamWrapper::rename — Renames a file or directory
    • streamWrapper::rmdir — Removes a directory
    • streamWrapper::stream_cast — Retrieve the underlaying resource
    • streamWrapper::stream_close — Close an resource
    • streamWrapper::stream_eof — Tests for end-of-file on a file pointer
    • streamWrapper::stream_flush — Flushes the output
    • streamWrapper::stream_lock — Advisory file locking
    • streamWrapper::stream_open — Opens file or URL
    • streamWrapper::stream_read — Read from stream
    • streamWrapper::stream_seek — Seeks to specific location in a stream
    • streamWrapper::stream_set_option — Change stream options
    • streamWrapper::stream_stat — Retrieve information about a file resource
    • streamWrapper::stream_tell — Retrieve the current position of a stream
    • streamWrapper::stream_write — Write to stream
    • streamWrapper::unlink — Delete a file
    • streamWrapper::url_stat — Retrieve information about a file
  • Stream Funções
    • set_socket_blocking — Sinônimo de stream_set_blocking
    • stream_bucket_append — Append bucket to brigade
    • stream_bucket_make_writeable — Return a bucket object from the brigade for operating on
    • stream_bucket_new — Create a new bucket for use on the current stream
    • stream_bucket_prepend — Prepend bucket to brigade
    • stream_context_create — Create a streams context
    • stream_context_get_default — Retreive the default streams context
    • stream_context_get_options — Retrieve options for a stream/wrapper/context
    • stream_context_get_params — Retrieves parameters from a context
    • stream_context_set_default — Set the default streams context
    • stream_context_set_option — Sets an option for a stream/wrapper/context
    • stream_context_set_params — Set parameters for a stream/wrapper/context
    • stream_copy_to_stream — Copies data from one stream to another
    • stream_encoding — Set character set for stream encoding
    • stream_filter_append — Attach a filter to a stream
    • stream_filter_prepend — Attach a filter to a stream
    • stream_filter_register — Register a user defined stream filter
    • stream_filter_remove — Remove a filter from a stream
    • stream_get_contents — Reads remainder of a stream into a string
    • stream_get_filters — Retrieve list of registered filters
    • stream_get_line — Gets line from stream resource up to a given delimiter
    • stream_get_meta_data — Retrieves header/meta data from streams/file pointers
    • stream_get_transports — Retrieve list of registered socket transports
    • stream_get_wrappers — Retrieve list of registered streams
    • stream_is_local — Checks if a stream is a local stream
    • stream_notification_callback — A callback function for the notification context paramater
    • stream_register_wrapper — Sinônimo de stream_wrapper_register
    • stream_resolve_include_path — Resolve filename against the include path
    • stream_select — Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
    • stream_set_blocking — Set blocking/non-blocking mode on a stream
    • stream_set_read_buffer — Set read file buffering on the given stream
    • stream_set_timeout — Set timeout period on a stream
    • stream_set_write_buffer — Sets write file buffering on the given stream
    • stream_socket_accept — Accept a connection on a socket created by stream_socket_server
    • stream_socket_client — Open Internet or Unix domain socket connection
    • stream_socket_enable_crypto — Turns encryption on/off on an already connected socket
    • stream_socket_get_name — Retrieve the name of the local or remote sockets
    • stream_socket_pair — Creates a pair of connected, indistinguishable socket streams
    • stream_socket_recvfrom — Receives data from a socket, connected or not
    • stream_socket_sendto — Sends a message to a socket, whether it is connected or not
    • stream_socket_server — Create an Internet or Unix domain server socket
    • stream_socket_shutdown — Shutdown a full-duplex connection
    • stream_supports_lock — Tells whether the stream supports locking.
    • stream_wrapper_register — Register a URL wrapper implemented as a PHP class
    • stream_wrapper_restore — Restores a previously unregistered built-in wrapper
    • stream_wrapper_unregister — Unregister a URL wrapper
SplString::__construct
Introdução
Outras Básicas Extensões


Introdução

Streams were introduced with PHP 4.3.0 as a way of generalizing file, network, data compression, and other operations which share a common set of functions and uses. In its simplest definition, a stream is a resource object which exhibits streamable behavior. That is, it can be read from or written to in a linear fashion, and may be able to fseek() to an arbitrary locations within the stream.

A wrapper is additional code which tells the stream how to handle specific protocols/encodings. For example, the http wrapper knows how to translate a URL into an HTTP/1.0 request for a file on a remote server. There are many wrappers built into PHP by default (See Supported Protocols and Wrappers), and additional, custom wrappers may be added either within a PHP script using stream_wrapper_register(), or directly from an extension using the API Reference in Working with streams. Because any variety of wrapper may be added to PHP, there is no set limit on what can be done with them. To access the list of currently registered wrappers, use stream_get_wrappers().

A stream is referenced as: scheme://target

  • scheme(string) - The name of the wrapper to be used. Examples include: file, http, https, ftp, ftps, compress.zlib, compress.bz2, and php. See Supported Protocols and Wrappers for a list of PHP built-in wrappers. If no wrapper is specified, the function default is used (typically file://).
  • target - Depends on the wrapper used. For filesystem related streams this is typically a path and filename of the desired file. For network related streams this is typically a hostname, often with a path appended. Again, see Supported Protocols and Wrappers for a description of targets for built-in streams.

Nota:

Information on using streams within the PHP source code can be found in the Streams API for PHP Extension Authors reference.

Streams
Instalação/Configuração
Streams


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Stream Classes
Introdução
Dependências
Streams


Instalação

Streams are an integral part of PHP as of version 4.3.0. No steps are required to enable them.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Instalação
Stream Classes
Instalação/Configuração


Stream Classes

User designed wrappers can be registered via stream_wrapper_register(), using the class definition shown on that manual page.

class php_user_filter is predefined and is an abstract baseclass for use with user defined filters. See the manual page for stream_filter_register() for details on implementing user defined filters.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Constant | Description
STREAM_FILTER_READ * | Used with stream_filter_append() and stream_filter_prepend() to indicate that the specified filter should only be applied when reading
STREAM_FILTER_WRITE * | Used with stream_filter_append() and stream_filter_prepend() to indicate that the specified filter should only be applied when writing
STREAM_FILTER_ALL * | This constant is equivalent to STREAM_FILTER_READ | STREAM_FILTER_WRITE
PSFS_PASS_ON * | Return Code indicating that the userspace filter returned buckets in $out.
PSFS_FEED_ME * | Return Code indicating that the userspace filter did not return buckets in $out (i.e. No data available).
PSFS_ERR_FATAL * | Return Code indicating that the userspace filter encountered an unrecoverable error (i.e. Invalid data received).
PSFS_FLAG_NORMAL | Regular read/write.
PSFS_FLAG_FLUSH_INC | An incremental flush.
PSFS_FLAG_FLUSH_CLOSE | Final flush prior to closing.
STREAM_USE_PATH | Flag indicating if the stream used the include path.
STREAM_REPORT_ERRORS | Flag indicating if the wrapper is responsible for raising errors using trigger_error() during opening of the stream. If this flag is not set, you should not raise any errors.
STREAM_CLIENT_ASYNC_CONNECT * | Open client socket asynchronously. This option must be used together with the STREAM_CLIENT_CONNECT flag. Used with stream_socket_client().
STREAM_CLIENT_CONNECT * | Open client socket connection. Client sockets should always include this flag. Used with stream_socket_client().
STREAM_CLIENT_PERSISTENT * | Client socket opened with stream_socket_client() should remain persistent between page loads.
STREAM_SERVER_BIND * | Tells a stream created with stream_socket_server() to bind to the specified target. Server sockets should always include this flag.
STREAM_SERVER_LISTEN * | Tells a stream created with stream_socket_server() and bound using the STREAM_SERVER_BIND flag to start listening on the socket. Connection-orientated transports (such as TCP) must use this flag, otherwise the server socket will not be enabled. Using this flag for connect-less transports (such as UDP) is an error.
STREAM_NOTIFY_RESOLVE * | A remote address required for this stream has been resolved, or the resolution failed. See severity for an indication of which happened.
STREAM_NOTIFY_CONNECT | A connection with an external resource has been established.
STREAM_NOTIFY_AUTH_REQUIRED | Additional authorization is required to access the specified resource. Typical issued with severity level of STREAM_NOTIFY_SEVERITY_ERR.
STREAM_NOTIFY_MIME_TYPE_IS | The mime-type of resource has been identified, refer to message for a description of the discovered type.
STREAM_NOTIFY_FILE_SIZE_IS | The size of the resource has been discovered.
STREAM_NOTIFY_REDIRECTED | The external resource has redirected the stream to an alternate location. Refer to message.
STREAM_NOTIFY_PROGRESS | Indicates current progress of the stream transfer in bytes_transferred and possibly bytes_max as well.
STREAM_NOTIFY_COMPLETED * | There is no more data available on the stream.
STREAM_NOTIFY_FAILURE | A generic error occurred on the stream, consult message and message_code for details.
STREAM_NOTIFY_AUTH_RESULT | Authorization has been completed (with or without success).
STREAM_NOTIFY_SEVERITY_INFO | Normal, non-error related, notification.
STREAM_NOTIFY_SEVERITY_WARN | Non critical error condition. Processing may continue.
STREAM_NOTIFY_SEVERITY_ERR | A critical error occurred. Processing cannot continue.
STREAM_IPPROTO_ICMP + | Provides a ICMP socket.
STREAM_IPPROTO_IP + | Provides a IP socket.
STREAM_IPPROTO_RAW + | Provides a RAW socket.
STREAM_IPPROTO_TCP + | Provides a TCP socket.
STREAM_IPPROTO_UDP + | Provides a UDP socket.
STREAM_PF_INET + | Internet Protocol Version 4 (IPv4).
STREAM_PF_INET6 + | Internet Protocol Version 6 (IPv6).
STREAM_PF_UNIX + | Unix system internal protocols.
STREAM_SOCK_DGRAM + | Provides datagrams, which are connectionless messages (UDP, for example).
STREAM_SOCK_RAW + | Provides a raw socket, which provides access to internal network protocols and interfaces. Usually this type of socket is just available to the root user.
STREAM_SOCK_RDM + | Provides a RDM (Reliably-delivered messages) socket.
STREAM_SOCK_SEQPACKET + | Provides a sequenced packet stream socket.
STREAM_SOCK_STREAM + | Provides sequenced, two-way byte streams with a transmission mechanism for out-of-band data (TCP, for example).
STREAM_SHUT_RD | Used with stream_socket_shutdown() to disable further receptions. Added in PHP 5.2.1.
STREAM_SHUT_WR | Used with stream_socket_shutdown() to disable further transmissions. Added in PHP 5.2.1.
STREAM_SHUT_RDWR | Used with stream_socket_shutdown() to disable further receptions and transmissions. Added in PHP 5.2.1.
STREAM_CAST_FOR_SELECT | Stream casting, for when stream_select() is calling stream_cast().
STREAM_CAST_AS_STREAM | Stream casting, when stream_cast() is called otherwise (see above).

Nota: The constants marked with * are just available since PHP 5.0.0.

Nota: The constants marked with + are available since PHP 5.1.0 and are meant to be used with stream_socket_pair(). Please note that some of these constants might not be available in your system.

Stream Classes
Stream Filters
Streams


Stream Filters

A filter is a final piece of code which may perform operations on data as it is being read from or written to a stream. Any number of filters may be stacked onto a stream. Custom filters can be defined in a PHP script using stream_filter_register() or in an extension using the API Reference in Working with streams. To access the list of currently registered filters, use stream_get_filters().

Constantes pré-definidas
Stream Contexts
Streams


Stream Contexts

A context is a set of parameters and wrapper specific options which modify or enhance the behavior of a stream. Contexts are created using stream_context_create() and can be passed to most filesystem related stream creation functions (i.e. fopen(), file(), file_get_contents(), etc...).

Options can be specified when calling stream_context_create(), or later using stream_context_set_option(). A list of wrapper specific options can be found in the Context options and parameters chapter.

Parameters can be specified for contexts using the stream_context_set_params() function.

Stream Filters
Stream Errors
Streams


Stream Errors

As with any file or socket related function, an operation on a stream may fail for a variety of normal reasons (i.e.: Unable to connect to remote host, file not found, etc...). A stream related call may also fail because the desired stream is not registered on the running system. See the array returned by stream_get_wrappers() for a list of streams supported by your installation of PHP. As with most PHP internal functions if a failure occurs an E_WARNING message will be generated describing the nature of the error.

Stream Contexts
Exemplos
Streams


Exemplos

Índice

  • Example class registered as stream wrapper

Exemplo #1 Using file_get_contents() to retrieve data from multiple sources

<?php
/* Read local file from /home/bar */
$localfile = file_get_contents("/home/bar/foo.txt");

/* Identical to above, explicitly naming FILE scheme */
$localfile = file_get_contents("file:///home/bar/foo.txt");

/* Read remote file from www.example.com using HTTP */
$httpfile  = file_get_contents("http://www.example.com/foo.txt");

/* Read remote file from www.example.com using HTTPS */
$httpsfile = file_get_contents("https://www.example.com/foo.txt");

/* Read remote file from ftp.example.com using FTP */
$ftpfile   = file_get_contents("ftp://user:pass@ftp.example.com/foo.txt");

/* Read remote file from ftp.example.com using FTPS */
$ftpsfile  = file_get_contents("ftps://user:pass@ftp.example.com/foo.txt");
?>

Exemplo #2 Making a POST request to an https server

<?php
/* Send POST request to https://secure.example.com/form_action.php
* Include form elements named "foo" and "bar" with dummy values
*/

$sock = fsockopen("ssl://secure.example.com", 443, $errno, $errstr, 30);
if (!$sock) die("$errstr ($errno)\n");

$data = "foo=" . urlencode("Value for Foo") . "&bar=" . urlencode("Value for Bar");

fwrite($sock, "POST /form_action.php HTTP/1.0\r\n");
fwrite($sock, "Host: secure.example.com\r\n");
fwrite($sock, "Content-type: application/x-www-form-urlencoded\r\n");
fwrite($sock, "Content-length: " . strlen($data) . "\r\n");
fwrite($sock, "Accept: */*\r\n");
fwrite($sock, "\r\n");
fwrite($sock, "$data\r\n");
fwrite($sock, "\r\n");

$headers = "";
while ($str = trim(fgets($sock, 4096)))
$headers .= "$str\n";

echo "\n";

$body = "";
while (!feof($sock))
$body .= fgets($sock, 4096);

fclose($sock);
?>

Exemplo #3 Writing data to a compressed file

<?php
/* Create a compressed file containing an arbitrarty string
* File can be read back using compress.zlib stream or just
* decompressed from the command line using 'gzip -d foo-bar.txt.gz'
*/
$fp = fopen("compress.zlib://foo-bar.txt.gz", "wb");
if (!$fp) die("Unable to create file.");

fwrite($fp, "This is a test.\n");

fclose($fp);
?>

Stream Errors
Example class registered as stream wrapper
Streams


Example class registered as stream wrapper

The example below implements a var:// protocol handler that allows read/write access to a named global variable using standard filesystem stream functions such as fread(). The var:// protocol implemented below, given the URL "var://foo" will read/write data to/from $GLOBALS["foo"].

Exemplo #1 A Stream for reading/writing global variables

<?php

class VariableStream {
    var $position;
    var $varname;

    function stream_open($path, $mode, $options, &$opened_path)
    {
        $url = parse_url($path);
        $this->varname = $url["host"];
        $this->position = 0;

        return true;
    }

    function stream_read($count)
    {
        $ret = substr($GLOBALS[$this->varname], $this->position, $count);
        $this->position += strlen($ret);
        return $ret;
    }

    function stream_write($data)
    {
        $left = substr($GLOBALS[$this->varname], 0, $this->position);
        $right = substr($GLOBALS[$this->varname], $this->position + strlen($data));
        $GLOBALS[$this->varname] = $left . $data . $right;
        $this->position += strlen($data);
        return strlen($data);
    }

    function stream_tell()
    {
        return $this->position;
    }

    function stream_eof()
    {
        return $this->position >= strlen($GLOBALS[$this->varname]);
    }

    function stream_seek($offset, $whence)
    {
        switch ($whence) {
            case SEEK_SET:
                if ($offset < strlen($GLOBALS[$this->varname]) && $offset >= 0) {
                     $this->position = $offset;
                     return true;
                } else {
                     return false;
                }
                break;

            case SEEK_CUR:
                if ($offset >= 0) {
                     $this->position += $offset;
                     return true;
                } else {
                     return false;
                }
                break;

            case SEEK_END:
                if (strlen($GLOBALS[$this->varname]) + $offset >= 0) {
                     $this->position = strlen($GLOBALS[$this->varname]) + $offset;
                     return true;
                } else {
                     return false;
                }
                break;

            default:
                return false;
        }
    }
}

stream_wrapper_register("var", "VariableStream")
    or die("Failed to register protocol");

$myvar = "";

$fp = fopen("var://myvar", "r+");

fwrite($fp, "line1\n");
fwrite($fp, "line2\n");
fwrite($fp, "line3\n");

rewind($fp);
while (!feof($fp)) {
    echo fgets($fp);
}
fclose($fp);
var_dump($myvar);

?>

O exemplo acima irá imprimir:

line1
line2
line3
string(18) "line1
line2
line3
"

Exemplos
streamWrapper
Exemplos


The streamWrapper class

Introdução

Allows you to implement your own protocol handlers and streams for use with all the other filesystem functions (such as fopen(), fread() etc.).

Nota:

This is NOT a real class, only a prototype of how a class defining its own protocol should be.

Nota:

Implementing the methods in other ways then described here can lead to undefined behaviour.

An instance of this class is initialized as soon as a stream function tries to access the protocol it is associated with.

Sinopse da classe

streamWrapper {
/* Properties */
public resource $context ;
/* Methods */
__construct ( void )
public bool dir_closedir ( void )
public bool dir_opendir ( string $path , int $options )
public string dir_readdir ( void )
public bool dir_rewinddir ( void )
public bool mkdir ( string $path , int $mode , int $options )
public bool rename ( string $path_from , string $path_to )
public bool rmdir ( string $path , int $options )
public resource stream_cast ( int $cast_as )
public void stream_close ( void )
public bool stream_eof ( void )
public bool stream_flush ( void )
public bool stream_lock ( mode $operation )
public bool stream_open ( string $path , string $mode , int $options , string &$opened_path )
public string stream_read ( int $count )
public bool stream_seek ( int $offset , int $whence = SEEK_SET )
public bool stream_set_option ( int $option , int $arg1 , int $arg2 )
public array stream_stat ( void )
public int stream_tell ( void )
public int stream_write ( string $data )
public bool unlink ( string $path )
public array url_stat ( string $path , int $flags )
}

Propriedades

resource context

The current context, or NULL if no context was passed to the caller function.

Use the stream_context_get_options() to parse the context.

Nota:

This property must be public so PHP can populate it with the actual context resource.

Histórico

Versão | Descrição
5.0.0 | Added the context property.

Veja Também

  • Example class registered as stream wrapper
  • stream_wrapper_register()
  • stream_wrapper_unregister()
  • stream_wrapper_restore()

Índice

  • streamWrapper::__construct — Constructs a new stream wrapper
  • streamWrapper::dir_closedir — Close directory handle
  • streamWrapper::dir_opendir — Open directory handle
  • streamWrapper::dir_readdir — Read entry from directory handle
  • streamWrapper::dir_rewinddir — Rewind directory handle
  • streamWrapper::mkdir — Create a directory
  • streamWrapper::rename — Renames a file or directory
  • streamWrapper::rmdir — Removes a directory
  • streamWrapper::stream_cast — Retrieve the underlaying resource
  • streamWrapper::stream_close — Close an resource
  • streamWrapper::stream_eof — Tests for end-of-file on a file pointer
  • streamWrapper::stream_flush — Flushes the output
  • streamWrapper::stream_lock — Advisory file locking
  • streamWrapper::stream_open — Opens file or URL
  • streamWrapper::stream_read — Read from stream
  • streamWrapper::stream_seek — Seeks to specific location in a stream
  • streamWrapper::stream_set_option — Change stream options
  • streamWrapper::stream_stat — Retrieve information about a file resource
  • streamWrapper::stream_tell — Retrieve the current position of a stream
  • streamWrapper::stream_write — Write to stream
  • streamWrapper::unlink — Delete a file
  • streamWrapper::url_stat — Retrieve information about a file
Example class registered as stream wrapper
streamWrapper::__construct
Streams


Constructs a new stream wrapper

streamWrapper
streamWrapper::dir_closedir
streamWrapper
PHP Manual

streamWrapper::__construct

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::__construct — Constructs a new stream wrapper

Descrição

streamWrapper::__construct ( void )

Called when opening the stream wrapper, right before streamWrapper::stream_open().

Parâmetros

Esta função não contém parâmetros.

streamWrapper
streamWrapper::dir_closedir
streamWrapper


Close directory handle

streamWrapper::__construct
streamWrapper::dir_opendir
streamWrapper
PHP Manual

streamWrapper::dir_closedir

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::dir_closedir — Close directory handle

Descrição

public bool streamWrapper::dir_closedir ( void )

This method is called in response to closedir().

Any resources which were locked, or allocated, during opening and use of the directory stream should be released.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • closedir() - Fecha o manipulador do diretório
  • streamWrapper::dir_opendir() - Open directory handle

streamWrapper::__construct
streamWrapper::dir_opendir
streamWrapper


Open directory handle

streamWrapper::dir_closedir
streamWrapper::dir_readdir
streamWrapper
PHP Manual

streamWrapper::dir_opendir

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::dir_opendir — Open directory handle

Descrição

public bool streamWrapper::dir_opendir ( string $path , int $options )

This method is called in response to opendir().

Parâmetros

path

Specifies the URL that was passed to opendir().

Nota:

The URL can be broken apart with parse_url().

options

Whether or not to enforce safe_mode (0x04).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • opendir() - Abre um manipulador de diretório
  • streamWrapper::dir_closedir() - Close directory handle
  • parse_url() - Interpreta uma URL e retorna os seus componentes

streamWrapper::dir_closedir
streamWrapper::dir_readdir
streamWrapper


Read entry from directory handle

streamWrapper::dir_opendir
streamWrapper::dir_rewinddir
streamWrapper
PHP Manual

streamWrapper::dir_readdir

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::dir_readdir — Read entry from directory handle

Descrição

public string streamWrapper::dir_readdir ( void )

This method is called in response to readdir().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Should return string representing the next filename, or FALSE if there is no next file.

Nota:

The return value will be casted to string.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Exemplos

Exemplo #1 Listing files from tar archives

<?php
class streamWrapper {
    protected $fp;

    public function dir_opendir($path, $options) {
        $url = parse_url($path);

        $path = $url["host"] . $url["path"];

        if (!is_readable($path)) {
            trigger_error("$path isn't readable for me", E_USER_NOTICE);
            return false;
        }
        if (!is_file($path)) {
            trigger_error("$path isn't a file", E_USER_NOTICE);
            return false;
        }

        $this->fp = fopen($path, "rb");
        return true;
    }

    public function dir_readdir() {
        // Extract the header for this entry
        $header      = fread($this->fp, 512);
        $data = unpack("a100filename/a8mode/a8uid/a8gid/a12size/a12mtime/a8checksum/a1filetype/a100link/a100linkedfile", $header);

        // Trim the filename and filesize
        $filename    = trim($data["filename"]);

        // No filename? We are the end of the archive
        if (!$filename) {
            return false;
        }

        $octal_bytes = trim($data["size"]);
        // Filesize is defined in octects
        $bytes       = octdec($octal_bytes);

        // tar rounds up filesizes up to multiple of 512 bytes (zero filled)
        $rest        = $bytes % 512;
        if ($rest > 0) {
            $bytes      += 512 - $rest;
        }

        // Seek over the file
        fseek($this->fp, $bytes, SEEK_CUR);

        return $filename;
    }

    public function dir_closedir() {
        return fclose($this->fp);
    }

    public function dir_rewinddir() {
        return fseek($this->fp, 0, SEEK_SET);
    }
}

stream_wrapper_register("tar", "streamWrapper");
$handle = opendir("tar://example.tar");
while (false !== ($file = readdir($handle))) {
    var_dump($file);
}

echo "Rewinding..\n";
rewind($handle);
var_dump(readdir($handle));

closedir($handle);
?>

O exemplo acima irá imprimir algo similar a:

string(13) "construct.xml"
string(16) "dir-closedir.xml"
string(15) "dir-opendir.xml"
string(15) "dir-readdir.xml"
string(17) "dir-rewinddir.xml"
string(9) "mkdir.xml"
string(10) "rename.xml"
string(9) "rmdir.xml"
string(15) "stream-cast.xml"
string(16) "stream-close.xml"
string(14) "stream-eof.xml"
string(16) "stream-flush.xml"
string(15) "stream-lock.xml"
string(15) "stream-open.xml"
string(15) "stream-read.xml"
string(15) "stream-seek.xml"
string(21) "stream-set-option.xml"
string(15) "stream-stat.xml"
string(15) "stream-tell.xml"
string(16) "stream-write.xml"
string(10) "unlink.xml"
string(12) "url-stat.xml"
Rewinding..
string(13) "construct.xml"

Veja Também

  • readdir() - Lê os campos do manipulador do diretório

streamWrapper::dir_opendir
streamWrapper::dir_rewinddir
streamWrapper


Rewind directory handle

streamWrapper::dir_readdir
streamWrapper::mkdir
streamWrapper
PHP Manual

streamWrapper::dir_rewinddir

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::dir_rewinddir — Rewind directory handle

Descrição

public bool streamWrapper::dir_rewinddir ( void )

This method is called in response to rewinddir().

Should reset the output generated by streamWrapper::dir_readdir(). i.e.: The next call to streamWrapper::dir_readdir() should return the first entry in the location returned by streamWrapper::dir_opendir().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • rewinddir() - Voltar (rewind) o manipulador de diretório
  • streamWrapper::dir_readdir() - Read entry from directory handle

streamWrapper::dir_readdir
streamWrapper::mkdir
streamWrapper


Create a directory

streamWrapper::dir_rewinddir
streamWrapper::rename
streamWrapper
PHP Manual

streamWrapper::mkdir

(PHP 5)

streamWrapper::mkdir — Create a directory

Descrição

public bool streamWrapper::mkdir ( string $path , int $mode , int $options )

This method is called in response to mkdir().

Nota:

In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support creating directories.

Parâmetros

path

Directory which should be created.

mode

The value passed to mkdir().

options

A bitwise mask of values, such as STREAM_MKDIR_RECURSIVE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • mkdir() - Cria um diretório
  • streamwrapper::rmdir() - Removes a directory

streamWrapper::dir_rewinddir
streamWrapper::rename
streamWrapper


Renames a file or directory

streamWrapper::mkdir
streamWrapper::rmdir
streamWrapper
PHP Manual

streamWrapper::rename

(PHP 5)

streamWrapper::rename — Renames a file or directory

Descrição

public bool streamWrapper::rename ( string $path_from , string $path_to )

This method is called in response to rename().

Should attempt to rename path_from to path_to

Nota:

In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support renaming files.

Parâmetros

path_from

The URL to the current file.

path_to

The URL which the path_from should be renamed to.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • rename() - Renomeia um arquivo ou diretório

streamWrapper::mkdir
streamWrapper::rmdir
streamWrapper


Removes a directory

streamWrapper::rename
streamWrapper::stream_cast
streamWrapper
PHP Manual

streamWrapper::rmdir

(PHP 5)

streamWrapper::rmdir — Removes a directory

Descrição

public bool streamWrapper::rmdir ( string $path , int $options )

This method is called in response to rmdir().

Nota:

In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support removing directories.

Parâmetros

path

The directory URL which should be removed.

options

A bitwise mask of values, such as STREAM_MKDIR_RECURSIVE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • rmdir() - Remove um diretório
  • streamwrapper::mkdir() - Create a directory
  • streamwrapper::unlink() - Delete a file

streamWrapper::rename
streamWrapper::stream_cast
streamWrapper


Retrieve the underlaying resource

streamWrapper::rmdir
streamWrapper::stream_close
streamWrapper
PHP Manual

streamWrapper::stream_cast

(PHP 5 >= 5.3.0)

streamWrapper::stream_cast — Retrieve the underlaying resource

Descrição

public resource streamWrapper::stream_cast ( int $cast_as )

This method is called in response to stream_select().

Parâmetros

cast_as

Can be STREAM_CAST_FOR_SELECT when stream_select() is calling stream_cast() or STREAM_CAST_AS_STREAM when stream_cast() is called for other uses.

Valor Retornado

Should return the underlying stream resource used by the wrapper, or FALSE.

Veja Também

  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec

streamWrapper::rmdir
streamWrapper::stream_close
streamWrapper


Close an resource

streamWrapper::stream_cast
streamWrapper::stream_eof
streamWrapper
PHP Manual

streamWrapper::stream_close

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_close — Close an resource

Descrição

public void streamWrapper::stream_close ( void )

This method is called in response to fclose().

All resources that were locked, or allocated, by the wrapper should be released.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • fclose() - Fecha um ponteiro de arquivo aberto
  • streamWrapper::dir_closedir() - Close directory handle

streamWrapper::stream_cast
streamWrapper::stream_eof
streamWrapper


Tests for end-of-file on a file pointer

streamWrapper::stream_close
streamWrapper::stream_flush
streamWrapper
PHP Manual

streamWrapper::stream_eof

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_eof — Tests for end-of-file on a file pointer

Descrição

public bool streamWrapper::stream_eof ( void )

This method is called in response to feof().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Should return TRUE if the read/write position is at the end of the stream and if no more data is available to be read, or FALSE otherwise.

Veja Também

  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo

streamWrapper::stream_close
streamWrapper::stream_flush
streamWrapper


Flushes the output

streamWrapper::stream_eof
streamWrapper::stream_lock
streamWrapper
PHP Manual

streamWrapper::stream_flush

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_flush — Flushes the output

Descrição

public bool streamWrapper::stream_flush ( void )

This method is called in response to fflush().

If you have cached data in your stream but not yet stored it into the underlying storage, you should do so now.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Should return TRUE if the cached data was successfully stored (or if there was no data to store), or FALSE if the data could not be stored.

Notas

Nota:

If not implemented, FALSE is assumed as the return value.

Veja Também

  • fflush() - Força a liberação do buffer para um arquivo

streamWrapper::stream_eof
streamWrapper::stream_lock
streamWrapper


Advisory file locking

streamWrapper::stream_flush
streamWrapper::stream_open
streamWrapper
PHP Manual

streamWrapper::stream_lock

(PHP 5)

streamWrapper::stream_lock — Advisory file locking

Descrição

public bool streamWrapper::stream_lock ( mode $operation )

This method is called in response to flock(), when file_put_contents() (when flags contains LOCK_EX), stream_set_blocking() and when closing the stream (LOCK_UN).

Parâmetros

operation

operation is one of the following:

  • LOCK_SH to acquire a shared lock (reader).
  • LOCK_EX to acquire an exclusive lock (writer).
  • LOCK_UN to release a lock (shared or exclusive).
  • LOCK_NB if you don't want flock() to block while locking. (not supported on Windows)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emits E_WARNING if call to this method fails (i.e. not implemented).

Veja Também

  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • flock() - Monitor de travamento de arquivos portátil

streamWrapper::stream_flush
streamWrapper::stream_open
streamWrapper


Opens file or URL

streamWrapper::stream_lock
streamWrapper::stream_read
streamWrapper
PHP Manual

streamWrapper::stream_open

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_open — Opens file or URL

Descrição

public bool streamWrapper::stream_open ( string $path , string $mode , int $options , string &$opened_path )

This method is called immediately after the wrapper is initialized (f.e. by fopen() and file_get_contents()).

Parâmetros

path

Specifies the URL that was passed to the original function.

Nota:

The URL can be broken apart with parse_url(). Note that only URLs delimited by :// are supported. : and :/ while technically valid URLs, are not.

mode

The mode used to open the file, as detailed for fopen().

Nota:

Remember to check if the mode is valid for the path requested.

options

Holds additional flags set by the streams API. It can hold one or more of the following values OR'd together.

Flag | Description
STREAM_USE_PATH | If path is relative, search for the resource using the include_path.
STREAM_REPORT_ERRORS | If this flag is set, you are responsible for raising errors using trigger_error() during opening of the stream. If this flag is not set, you should not raise any errors.

opened_path

If the path is opened successfully, and STREAM_USE_PATH is set in options, opened_path should be set to the full path of the file/resource that was actually opened.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • fopen() - Abre um arquivo ou URL
  • parse_url() - Interpreta uma URL e retorna os seus componentes

streamWrapper::stream_lock
streamWrapper::stream_read
streamWrapper


Read from stream

streamWrapper::stream_open
streamWrapper::stream_seek
streamWrapper
PHP Manual

streamWrapper::stream_read

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_read — Read from stream

Descrição

public string streamWrapper::stream_read ( int $count )

This method is called in response to fread() and fgets().

Nota:

Remember to update the read/write position of the stream (by the number of bytes that were successfully read).

Parâmetros

count

How many bytes of data from the current position should be returned.

Valor Retornado

If there are less than count bytes available, return as many as are available. If no more data is available, return either FALSE or an empty string.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Nota:

If the return value is longer then count an E_WARNING error will be emitted, and excess data will be lost.

Notas

Nota:

streamWrapper::stream_eof() is called directly after calling streamWrapper::stream_read() to check if EOF has been reached. If not implemented, EOF is assumed.

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fgets() - Lê uma linha de um ponteiro de arquivo

streamWrapper::stream_open
streamWrapper::stream_seek
streamWrapper


Seeks to specific location in a stream

streamWrapper::stream_read
streamWrapper::stream_set_option
streamWrapper
PHP Manual

streamWrapper::stream_seek

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_seek — Seeks to specific location in a stream

Descrição

public bool streamWrapper::stream_seek ( int $offset , int $whence = SEEK_SET )

This method is called in response to fseek().

The read/write position of the stream should be updated according to the offset and whence.

Parâmetros

offset

The stream offset to seek to.

whence

Possible values:

  • SEEK_SET - Set position equal to offset bytes.
  • SEEK_CUR - Set position to current location plus offset.
  • SEEK_END - Set position to end-of-file plus offset.

Valor Retornado

Return TRUE if the position was updated, FALSE otherwise.

Notas

Nota:

If not implemented, FALSE is assumed as the return value.

Nota:

Upon success,
 streamWrapper::stream_tell() is called directly after
calling  streamWrapper::stream_seek(). If
 streamWrapper::stream_tell() fails, the return
value to the caller function will be set to FALSE

Veja Também

  • fseek() - Procura (seeks) em um ponteiro de arquivo

streamWrapper::stream_read
streamWrapper::stream_set_option
streamWrapper


Change stream options

streamWrapper::stream_seek
streamWrapper::stream_stat
streamWrapper
PHP Manual

streamWrapper::stream_set_option

(PHP 5 >= 5.3.0)

streamWrapper::stream_set_option — Change stream options

Descrição

public bool streamWrapper::stream_set_option ( int $option , int $arg1 , int $arg2 )

This method is called to set options on the stream.

Parâmetros

option

One of:

  • STREAM_OPTION_BLOCKING (The method was called in response to stream_set_blocking())
  • STREAM_OPTION_READ_TIMEOUT (The method was called in response to stream_set_timeout())
  • STREAM_OPTION_WRITE_BUFFER (The method was called in response to stream_set_write_buffer())

arg1

If option is

  • STREAM_OPTION_BLOCKING: requested blocking mode (1 meaning block 0 not blocking).
  • STREAM_OPTION_READ_TIMEOUT: the timeout in seconds.
  • STREAM_OPTION_WRITE_BUFFER: buffer mode (STREAM_BUFFER_NONE or STREAM_BUFFER_FULL).

arg2

If option is

  • STREAM_OPTION_BLOCKING: This option is not set.
  • STREAM_OPTION_READ_TIMEOUT: the timeout in microseconds.
  • STREAM_OPTION_WRITE_BUFFER: the requested buffer size.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If option is not implemented, FALSE should be returned.

Veja Também

  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • stream_set_timeout() - Set timeout period on a stream
  • stream_set_write_buffer() - Sets write file buffering on the given stream

streamWrapper::stream_seek
streamWrapper::stream_stat
streamWrapper


Retrieve information about a file resource

streamWrapper::stream_set_option
streamWrapper::stream_tell
streamWrapper
PHP Manual

streamWrapper::stream_stat

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_stat — Retrieve information about a file resource

Descrição

public array streamWrapper::stream_stat ( void )

This method is called in response to fstat().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

See stat().

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Veja Também

  • stat() - Obtem informações sobre um arquivo
  • streamwrapper::url_stat() - Retrieve information about a file

streamWrapper::stream_set_option
streamWrapper::stream_tell
streamWrapper


Retrieve the current position of a stream

streamWrapper::stream_stat
streamWrapper::stream_write
streamWrapper
PHP Manual

streamWrapper::stream_tell

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_tell — Retrieve the current position of a stream

Descrição

public int streamWrapper::stream_tell ( void )

This method is called in response to ftell().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Should return the current position of the stream.

Veja Também

  • ftell() - Retorna a posição de leitura/gravação do ponteiro do arquivo

streamWrapper::stream_stat
streamWrapper::stream_write
streamWrapper


Write to stream

streamWrapper::stream_tell
streamWrapper::unlink
streamWrapper
PHP Manual

streamWrapper::stream_write

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::stream_write — Write to stream

Descrição

public int streamWrapper::stream_write ( string $data )

This method is called in response to fwrite().

Nota:

Remember to update the current position of the stream by number of bytes that were successfully written.

Parâmetros

data

Should be stored into the underlying stream.

Nota:

If there is not enough room in the underlying stream, store as much as possible.

Valor Retornado

Should return the number of bytes that were successfully stored, or 0 if none could be stored.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Nota:

If the return value is greater the length of data, E_WARNING will be emitted and the return value will truncated to its length.

Veja Também

  • fwrite() - Escrita binary-safe em arquivos

streamWrapper::stream_tell
streamWrapper::unlink
streamWrapper


Delete a file

streamWrapper::stream_write
streamWrapper::url_stat
streamWrapper
PHP Manual

streamWrapper::unlink

(PHP 5)

streamWrapper::unlink — Delete a file

Descrição

public bool streamWrapper::unlink ( string $path )

This method is called in response to unlink().

Nota:

In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support removing files.

Parâmetros

path

The file URL which should be deleted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • unlink() - Apaga um arquivo
  • streamWrapper::rmdir() - Removes a directory

streamWrapper::stream_write
streamWrapper::url_stat
streamWrapper


Retrieve information about a file

streamWrapper::unlink
Stream Funções
streamWrapper
PHP Manual

streamWrapper::url_stat

(PHP 4 >= 4.3.2, PHP 5)

streamWrapper::url_stat — Retrieve information about a file

Descrição

public array streamWrapper::url_stat ( string $path , int $flags )

This method is called in response to all stat() related functions, such as:

  • chmod() (only when safe_mode is enabled)
  • copy()
  • fileperms()
  • fileinode()
  • filesize()
  • fileowner()
  • filegroup()
  • fileatime()
  • filemtime()
  • filectime()
  • filetype()
  • is_writable()
  • is_readable()
  • is_executable()
  • is_file()
  • is_dir()
  • is_link()
  • file_exists()
  • lstat()
  • stat()
  • SplFileInfo::getPerms()
  • SplFileInfo::getInode()
  • SplFileInfo::getSize()
  • SplFileInfo::getOwner()
  • SplFileInfo::getGroup()
  • SplFileInfo::getATime()
  • SplFileInfo::getMTime()
  • SplFileInfo::getCTime()
  • SplFileInfo::getType()
  • SplFileInfo::isWritable()
  • SplFileInfo::isReadable()
  • SplFileInfo::isExecutable()
  • SplFileInfo::isFile()
  • SplFileInfo::isDir()
  • SplFileInfo::isLink()
  • RecursiveDirectoryIterator::hasChildren()

Parâmetros

path

The file path or URL to stat. Note that in the case of a URL, it must be a :// delimited URL. Other URL forms are not supported.

flags

Holds additional flags set by the streams API. It can hold one or more of the following values OR'd together.

Flag | Description
STREAM_URL_STAT_LINK | For resources with the ability to link to other resource (such as an HTTP Location: forward, or a filesystem symlink). This flag specified that only information about the link itself should be returned, not the resource pointed to by the link. This flag is set in response to calls to lstat(), is_link(), or filetype().
STREAM_URL_STAT_QUIET | If this flag is set, your wrapper should not raise any errors. If this flag is not set, you are responsible for reporting errors using the trigger_error() function during stating of the path.

Valor Retornado

Should return as many elements as stat() does. Unknown or unavailable values should be set to a rational value (usually 0).

Erros

Emite E_WARNING se uma chamada a esse método falhar (ex. não implementado).

Notas

Nota:

The a propriedade streamWrapper->context é atualizada se um contexto válido é passado para a função chamadora.

Veja Também

  • stat() - Obtem informações sobre um arquivo
  • streamwrapper::stream_stat() - Retrieve information about a file resource

streamWrapper::unlink
Stream Funções
streamWrapper


Stream Funções

Índice

  • set_socket_blocking — Sinônimo de stream_set_blocking
  • stream_bucket_append — Append bucket to brigade
  • stream_bucket_make_writeable — Return a bucket object from the brigade for operating on
  • stream_bucket_new — Create a new bucket for use on the current stream
  • stream_bucket_prepend — Prepend bucket to brigade
  • stream_context_create — Create a streams context
  • stream_context_get_default — Retreive the default streams context
  • stream_context_get_options — Retrieve options for a stream/wrapper/context
  • stream_context_get_params — Retrieves parameters from a context
  • stream_context_set_default — Set the default streams context
  • stream_context_set_option — Sets an option for a stream/wrapper/context
  • stream_context_set_params — Set parameters for a stream/wrapper/context
  • stream_copy_to_stream — Copies data from one stream to another
  • stream_encoding — Set character set for stream encoding
  • stream_filter_append — Attach a filter to a stream
  • stream_filter_prepend — Attach a filter to a stream
  • stream_filter_register — Register a user defined stream filter
  • stream_filter_remove — Remove a filter from a stream
  • stream_get_contents — Reads remainder of a stream into a string
  • stream_get_filters — Retrieve list of registered filters
  • stream_get_line — Gets line from stream resource up to a given delimiter
  • stream_get_meta_data — Retrieves header/meta data from streams/file pointers
  • stream_get_transports — Retrieve list of registered socket transports
  • stream_get_wrappers — Retrieve list of registered streams
  • stream_is_local — Checks if a stream is a local stream
  • stream_notification_callback — A callback function for the notification context paramater
  • stream_register_wrapper — Sinônimo de stream_wrapper_register
  • stream_resolve_include_path — Resolve filename against the include path
  • stream_select — Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
  • stream_set_blocking — Set blocking/non-blocking mode on a stream
  • stream_set_read_buffer — Set read file buffering on the given stream
  • stream_set_timeout — Set timeout period on a stream
  • stream_set_write_buffer — Sets write file buffering on the given stream
  • stream_socket_accept — Accept a connection on a socket created by stream_socket_server
  • stream_socket_client — Open Internet or Unix domain socket connection
  • stream_socket_enable_crypto — Turns encryption on/off on an already connected socket
  • stream_socket_get_name — Retrieve the name of the local or remote sockets
  • stream_socket_pair — Creates a pair of connected, indistinguishable socket streams
  • stream_socket_recvfrom — Receives data from a socket, connected or not
  • stream_socket_sendto — Sends a message to a socket, whether it is connected or not
  • stream_socket_server — Create an Internet or Unix domain server socket
  • stream_socket_shutdown — Shutdown a full-duplex connection
  • stream_supports_lock — Tells whether the stream supports locking.
  • stream_wrapper_register — Register a URL wrapper implemented as a PHP class
  • stream_wrapper_restore — Restores a previously unregistered built-in wrapper
  • stream_wrapper_unregister — Unregister a URL wrapper
streamWrapper::url_stat
set_socket_blocking
Streams


Sinônimo de stream_set_blocking

Stream Funções
stream_bucket_append
Stream Funções
PHP Manual

set_socket_blocking

(PHP 4, PHP 5)

set_socket_blocking — Sinônimo de stream_set_blocking()

Descrição

Esta função é um apelido para: stream_set_blocking()

Aviso

This alias has been DEPRECATED as of PHP 5.3.0. Relying on this alias is highly discouraged.

Stream Funções
stream_bucket_append
Stream Funções


Append bucket to brigade

set_socket_blocking
stream_bucket_make_writeable
Stream Funções
PHP Manual

stream_bucket_append

(PHP 5)

stream_bucket_append — Append bucket to brigade

Descrição

void stream_bucket_append ( resource $brigade , resource $bucket )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

set_socket_blocking
stream_bucket_make_writeable
Stream Funções


Return a bucket object from the brigade for operating on

stream_bucket_append
stream_bucket_new
Stream Funções
PHP Manual

stream_bucket_make_writeable

(PHP 5)

stream_bucket_make_writeable — Return a bucket object from the brigade for operating on

Descrição

object stream_bucket_make_writeable ( resource $brigade )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

stream_bucket_append
stream_bucket_new
Stream Funções


Create a new bucket for use on the current stream

stream_bucket_make_writeable
stream_bucket_prepend
Stream Funções
PHP Manual

stream_bucket_new

(PHP 5)

stream_bucket_new — Create a new bucket for use on the current stream

Descrição

object stream_bucket_new ( resource $stream , string $buffer )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

stream_bucket_make_writeable
stream_bucket_prepend
Stream Funções


Prepend bucket to brigade

stream_bucket_new
stream_context_create
Stream Funções
PHP Manual

stream_bucket_prepend

(PHP 5)

stream_bucket_prepend — Prepend bucket to brigade

Descrição

void stream_bucket_prepend ( resource $brigade , resource $bucket )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

stream_bucket_new
stream_context_create
Stream Funções


Create a streams context

stream_bucket_prepend
stream_context_get_default
Stream Funções
PHP Manual

stream_context_create

(PHP 4 >= 4.3.0, PHP 5)

stream_context_create — Create a streams context

Descrição

resource stream_context_create ([ array $options [, array $params ]] )

Creates and returns a stream context with any options supplied in options preset.

Parâmetros

options

Must be an associative array of associative arrays in the format $arr['wrapper']['option'] = $value.

Default to an empty array.

params

Must be an associative array in the format $arr['parameter'] = $value. Refer to context parameters for a listing of standard stream parameters.

Valor Retornado

A stream context resource.

Histórico

Versão | Descrição
5.3.0 | Added the optional params argument.

Exemplos

Exemplo #1 Using stream_context_create()

<?php
$opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-language: en\r\n" .
              "Cookie: foo=bar\r\n"
  )
);

$context = stream_context_create($opts);

/* Sends an http request to www.example.com
   with additional headers shown above */
$fp = fopen('http://www.example.com', 'r', false, $context);
fpassthru($fp);
fclose($fp);
?>

Veja Também

  • stream_context_set_option() - Sets an option for a stream/wrapper/context
  • Listing of supported wrappers (Supported Protocols and Wrappers)
  • Context options (Context options and parameters)
stream_bucket_prepend
stream_context_get_default
Stream Funções


Retreive the default streams context

stream_context_create
stream_context_get_options
Stream Funções
PHP Manual

stream_context_get_default

(PHP 5 >= 5.1.0)

stream_context_get_default — Retreive the default streams context

Descrição

resource stream_context_get_default ([ array $options ] )

Returns the default stream context which is used whenever file operations (fopen(), file_get_contents(), etc...) are called without a context parameter. Options for the default context can optionally be specified with this function using the same syntax as stream_context_create().

Parâmetros

options
options must be an associative array of associative arrays in the format $arr['wrapper']['option'] = $value.

Nota:

As of PHP 5.3.0, the stream_context_set_default() function can be used to set the default context.

Valor Retornado

A stream context resource.

Exemplos

Exemplo #1 Using stream_context_get_default()

<?php
$default_opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-language: en\r\n" .
              "Cookie: foo=bar",
    'proxy'=>"tcp://10.54.1.39:8000"
  )
);

$alternate_opts = array(
  'http'=>array(
    'method'=>"POST",
    'header'=>"Content-type: application/x-www-form-urlencoded\r\n" .
              "Content-length: " . strlen("baz=bomb"),
    'content'=>"baz=bomb"
  )
);

$default = stream_context_get_default($default_opts);
$alternate = stream_context_create($alternate_opts);

/* Sends a regular GET request to proxy server at 10.54.1.39
 * For www.example.com using context options specified in $default_opts
 */
readfile('http://www.example.com');

/* Sends a POST request directly to www.example.com
 * Using context options specified in $alternate_opts
 */
readfile('http://www.example.com', false, $alternate);

?>

Veja Também

  • stream_context_create() - Create a streams context
  • Listing of supported wrappers with context options (Supported Protocols and Wrappers).

stream_context_create
stream_context_get_options
Stream Funções


Retrieve options for a stream/wrapper/context

stream_context_get_default
stream_context_get_params
Stream Funções
PHP Manual

stream_context_get_options

(PHP 4 >= 4.3.0, PHP 5)

stream_context_get_options — Retrieve options for a stream/wrapper/context

Descrição

array stream_context_get_options ( resource $stream_or_context )

Returns an array of options on the specified stream or context.

Parâmetros

stream_or_context

The stream or context to get options from

Valor Retornado

Returns an associative array with the options.

Exemplos

Exemplo #1 stream_context_get_options() example

<?php
$params = array("method" => "POST");

stream_context_get_default(array("http" => $params));

var_dump(stream_context_get_options(stream_context_get_default()));

?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  ["http"]=>
  array(1) {
    ["method"]=>
    string(4) "POST"
  }
}

stream_context_get_default
stream_context_get_params
Stream Funções


Retrieves parameters from a context

stream_context_get_options
stream_context_set_default
Stream Funções
PHP Manual

stream_context_get_params

(PHP 5 >= 5.3.0)

stream_context_get_params — Retrieves parameters from a context

Descrição

array stream_context_get_params ( resource $stream_or_context )

Retrieves parameter and options information from the stream or context.

Parâmetros

stream_or_context

A stream resource or a context resource

Valor Retornado

Returns an associate array containing all context options and parameters.

Exemplos

Exemplo #1 stream_context_get_params() example

Basic usage example

<?php
$ctx = stream_context_create();
$params = array("notification" => "stream_notification_callback");
stream_context_set_params($ctx, $params);

var_dump(stream_context_get_params($ctx));
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["notification"]=>
  string(28) "stream_notification_callback"
  ["options"]=>
  array(0) {
  }
}

Veja Também

  • stream_context_set_option() - Sets an option for a stream/wrapper/context
  • stream_context_get_params()
  • stream_context_set_params() - Set parameters for a stream/wrapper/context

stream_context_get_options
stream_context_set_default
Stream Funções


Set the default streams context

stream_context_get_params
stream_context_set_option
Stream Funções
PHP Manual

stream_context_set_default

(PHP 5 >= 5.3.0)

stream_context_set_default — Set the default streams context

Descrição

resource stream_context_set_default ( array $options )

Set the default stream context which will be used whenever file operations (fopen(), file_get_contents(), etc...) are called without a context parameter. Uses the same syntax as stream_context_create().

Parâmetros

options

The options to set for the default context.

Nota:

options must be an associative array of associative arrays in the format $arr['wrapper']['option'] = $value.

Valor Retornado

Returns the default stream context.

Exemplos

Exemplo #1 stream_context_set_default() example

<?php
$default_opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-language: en\r\n" .
              "Cookie: foo=bar",
    'proxy'=>"tcp://10.54.1.39:8000"
  )
);

$default = stream_context_set_default($default_opts);

/* Sends a regular GET request to proxy server at 10.54.1.39
 * For www.example.com using context options specified in $default_opts
 */
readfile('http://www.example.com');
?>

Veja Também

  • stream_context_create() - Create a streams context
  • stream_context_get_default() - Retreive the default streams context
  • Listing of supported wrappers with context options (Supported Protocols and Wrappers).

stream_context_get_params
stream_context_set_option
Stream Funções


Sets an option for a stream/wrapper/context

stream_context_set_default
stream_context_set_params
Stream Funções
PHP Manual

stream_context_set_option

(PHP 4 >= 4.3.0, PHP 5)

stream_context_set_option — Sets an option for a stream/wrapper/context

Descrição

bool stream_context_set_option ( resource $stream_or_context , string $wrapper , string $option , mixed $value )
bool stream_context_set_option ( resource $stream_or_context , array $options )

Sets an option on the specified context. value is set to option for wrapper

Parâmetros

stream_or_context

The stream or context resource to apply the options too.

options

The options to set for the default context.

Nota:

options must be an associative array of associative arrays in the format $arr['wrapper']['option'] = $value.

Refer to context options and parameters for a listing of stream options.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_context_set_default
stream_context_set_params
Stream Funções


Set parameters for a stream/wrapper/context

stream_context_set_option
stream_copy_to_stream
Stream Funções
PHP Manual

stream_context_set_params

(PHP 4 >= 4.3.0, PHP 5)

stream_context_set_params — Set parameters for a stream/wrapper/context

Descrição

bool stream_context_set_params ( resource $stream_or_context , array $params )

Sets parameters on the specified context.

Parâmetros

stream_or_context

The stream or context to apply the parameters too.

params

An array of parameters to set.

Nota:

params should be an associative array of the structure: $params['paramname'] = "paramvalue";.

Supported parameters

Parameters | Purpose
notification | Name of user-defined callback function to be called whenever a stream triggers a notification.
options | Array of options as in context options and parameters.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_context_set_option
stream_copy_to_stream
Stream Funções


Copies data from one stream to another

stream_context_set_params
stream_encoding
Stream Funções
PHP Manual

stream_copy_to_stream

(PHP 5)

stream_copy_to_stream — Copies data from one stream to another

Descrição

int stream_copy_to_stream ( resource $source , resource $dest [, int $maxlength = -1 [, int $offset = 0 ]] )

Makes a copy of up to maxlength bytes of data from the current position (or from the offset position, if specified) in source to dest. If maxlength is not specified, all remaining content in source will be copied.

Parâmetros

source

The source stream

dest

The destination stream

maxlength

Maximum bytes to copy

offset

The offset where to start to copy data

Valor Retornado

Returns the total count of bytes copied.

Histórico

Versão | Descrição
5.1.0 | Added the offset parameter

Exemplos

Exemplo #1 A stream_copy_to_stream() example

<?php
$src = fopen('http://www.example.com', 'r');
$dest1 = fopen('first1k.txt', 'w');
$dest2 = fopen('remainder.txt', 'w');

echo stream_copy_to_stream($src, $dest1, 1024) . " bytes copied to first1k.txt\n";
echo stream_copy_to_stream($src, $dest2) . " bytes copied to remainder.txt\n";

?>

Veja Também

  • copy() - Copia arquivo

stream_context_set_params
stream_encoding
Stream Funções


Set character set for stream encoding

stream_copy_to_stream
stream_filter_append
Stream Funções
PHP Manual

stream_encoding

(No version information available, might only be in SVN)

stream_encoding — Set character set for stream encoding

Descrição

bool stream_encoding ( resource $stream [, string $encoding ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

stream_copy_to_stream
stream_filter_append
Stream Funções


Attach a filter to a stream

stream_encoding
stream_filter_prepend
Stream Funções
PHP Manual

stream_filter_append

(PHP 4 >= 4.3.0, PHP 5)

stream_filter_append — Attach a filter to a stream

Descrição

resource stream_filter_append ( resource $stream , string $filtername [, int $read_write [, mixed $params ]] )

Adds filtername to the list of filters attached to stream.

Parâmetros

stream

The target stream.

filtername

The filter name.

read_write

By default, stream_filter_append() will attach the filter to the read filter chain if the file was opened for reading (i.e. File Mode: r, and/or +). The filter will also be attached to the write filter chain if the file was opened for writing (i.e. File Mode: w, a, and/or +). STREAM_FILTER_READ, STREAM_FILTER_WRITE, and/or STREAM_FILTER_ALL can also be passed to the read_write parameter to override this behavior.

params

This filter will be added with the specified params to the end of the list and will therefore be called last during stream operations. To add a filter to the beginning of the list, use stream_filter_prepend().

Valor Retornado

Returns a resource which can be used to refer to this filter instance during a call to stream_filter_remove().

Histórico

Versão | Descrição
5.1.0 | Prior to PHP 5.1.0, this function returns TRUE on success or FALSE on failure.

Exemplos

Exemplo #1 Controlling where filters are applied

<?php
/* Open a test file for reading and writing */
$fp = fopen('test.txt', 'w+');

/* Apply the ROT13 filter to the
 * write filter chain, but not the
 * read filter chain */
stream_filter_append($fp, "string.rot13", STREAM_FILTER_WRITE);

/* Write a simple string to the file
 * it will be ROT13 transformed on the
 * way out */
fwrite($fp, "This is a test\n");

/* Back up to the beginning of the file */
rewind($fp);

/* Read the contents of the file back out.
 * Had the filter been applied to the
 * read filter chain as well, we would see
 * the text ROT13ed back to its original state */
fpassthru($fp);

fclose($fp);

/* Expected Output
   ---------------

Guvf vf n grfg

 */
?>

Notas

Nota: When using custom (user) filters
stream_filter_register() must be called first in order to register the desired user filter to filtername.

Nota: Stream data is read from resources (both local and remote) in chunks, with any unconsumed data kept in internal buffers. When a new filter is appended to a stream, data in the internal buffers is processed through the new filter at that time. This differs from the behavior of stream_filter_prepend().

Nota: When a filter is added for read and write, two instances of the filter are created. stream_filter_append() must be called twice with STREAM_FILTER_READ and STREAM_FILTER_WRITE to get both filter resources.

Veja Também

  • stream_filter_register() - Register a user defined stream filter
  • stream_filter_prepend() - Attach a filter to a stream
  • stream_get_filters() - Retrieve list of registered filters
stream_encoding
stream_filter_prepend
Stream Funções


Attach a filter to a stream

stream_filter_append
stream_filter_register
Stream Funções
PHP Manual

stream_filter_prepend

(PHP 4 >= 4.3.0, PHP 5)

stream_filter_prepend — Attach a filter to a stream

Descrição

resource stream_filter_prepend ( resource $stream , string $filtername [, int $read_write [, mixed $params ]] )

Adds filtername to the list of filters attached to stream.

Parâmetros

stream

The target stream.

filtername

The filter name.

read_write

By default, stream_filter_prepend() will attach the filter to the read filter chain if the file was opened for reading (i.e. File Mode: r, and/or +). The filter will also be attached to the write filter chain if the file was opened for writing (i.e. File Mode: w, a, and/or +). STREAM_FILTER_READ, STREAM_FILTER_WRITE, and/or STREAM_FILTER_ALL can also be passed to the read_write parameter to override this behavior. See stream_filter_append() for an example of using this parameter.

params

This filter will be added with the specified params to the beginning of the list and will therefore be called first during stream operations. To add a filter to the end of the list, use stream_filter_append().

Valor Retornado

Returns a resource which can be used to refer to this filter instance during a call to stream_filter_remove().

Histórico

Versão | Descrição
5.1.0 | Prior to PHP 5.1.0, this function returns TRUE on success or FALSE on failure.

Notas

Nota: When using custom (user) filters
stream_filter_register() must be called first in order to register the desired user filter to filtername.

Nota: Stream data is read from resources (both local and remote) in chunks, with any unconsumed data kept in internal buffers. When a new filter is prepended to a stream, data in the internal buffers, which has already been processed through other filters will not be reprocessed through the new filter at that time. This differs from the behavior of stream_filter_append().

Nota: When a filter is added for read and write, two instances of the filter are created. stream_filter_prepend() must be called twice with STREAM_FILTER_READ and STREAM_FILTER_WRITE to get both filter resources.

Veja Também

  • stream_filter_register() - Register a user defined stream filter
  • stream_filter_append() - Attach a filter to a stream
stream_filter_append
stream_filter_register
Stream Funções


Register a user defined stream filter

stream_filter_prepend
stream_filter_remove
Stream Funções
PHP Manual

stream_filter_register

(PHP 5)

stream_filter_register — Register a user defined stream filter

Descrição

bool stream_filter_register ( string $filtername , string $classname )

stream_filter_register() allows you to implement your own filter on any registered stream used with all the other filesystem functions (such as fopen(), fread() etc.).

Parâmetros

filtername

The filter name to be registered.

classname

To implement a filter, you need to define a class as an extension of php_user_filter with a number of member functions as defined below. When performing read/write operations on the stream to which your filter is attached, PHP will pass the data through your filter (and any other filters attached to that stream) so that the data may be modified as desired. You must implement the methods exactly as described below - doing otherwise will lead to undefined behaviour.

int filter ( resource $in , resource $out , int &$consumed , bool $closing )

This method is called whenever data is read from or written to the attached stream (such as with fread() or fwrite()). in is a resource pointing to a bucket brigade which contains one or more bucket objects containing data to be filtered. out is a resource pointing to a second bucket brigade into which your modified buckets should be placed. consumed, which must always be declared by reference, should be incremented by the length of the data which your filter reads in and alters. In most cases this means you will increment consumed by $bucket->datalen for each $bucket. If the stream is in the process of closing (and therefore this is the last pass through the filterchain), the closing parameter will be set to TRUE. The filter() method must return one of three values upon completion.

Return Value | Meaning
PSFS_PASS_ON | Filter processed successfully with data available in the out bucket brigade.
PSFS_FEED_ME | Filter processed successfully, however no data was available to return. More data is required from the stream or prior filter.
PSFS_ERR_FATAL (default) | The filter experienced an unrecoverable error and cannot continue.

bool onCreate ( void )
This method is called during instantiation of the filter class object. If your filter allocates or initializes any other resources (such as a buffer), this is the place to do it. Your implementation of this method should return FALSE on failure, or TRUE on success. When your filter is first instantiated, and yourfilter->onCreate() is called, a number of properties will be available as shown in the table below.

Property | Contents
FilterClass->filtername | A string containing the name the filter was instantiated with. Filters may be registered under multiple names or under wildcards. Use this property to determine which name was used.
FilterClass->params | The contents of the params parameter passed to stream_filter_append() or stream_filter_prepend().
FilterClass->stream | The stream resource being filtered. Maybe available only during filter() calls when the closing parameter is set to FALSE.

void onClose ( void )

This method is called upon filter shutdown (typically, this is also during stream shutdown), and is executed after the flush method is called. If any resources were allocated or initialized during onCreate() this would be the time to destroy or dispose of them.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_filter_register() will return FALSE if the filtername is already defined.

Exemplos

Exemplo #1 Filter for capitalizing characters on foo-bar.txt stream

The example below implements a filter named strtoupper on the foo-bar.txt stream which will capitalize all letter characters written to/read from that stream.

<?php

/* Define our filter class */
class strtoupper_filter extends php_user_filter {
  function filter($in, $out, &$consumed, $closing)
  {
    while ($bucket = stream_bucket_make_writeable($in)) {
      $bucket->data = strtoupper($bucket->data);
      $consumed += $bucket->datalen;
      stream_bucket_append($out, $bucket);
    }
    return PSFS_PASS_ON;
  }
}

/* Register our filter with PHP */
stream_filter_register("strtoupper", "strtoupper_filter")
    or die("Failed to register filter");

$fp = fopen("foo-bar.txt", "w");

/* Attach the registered filter to the stream just opened */
stream_filter_append($fp, "strtoupper");

fwrite($fp, "Line1\n");
fwrite($fp, "Word - 2\n");
fwrite($fp, "Easy As 123\n");

fclose($fp);

/* Read the contents back out
 */
readfile("foo-bar.txt");

?>

O exemplo acima irá imprimir:

LINE1
WORD - 2
EASY AS 123

Exemplo #2 Registering a generic filter class to match multiple filter names.

<?php

/* Define our filter class */
class string_filter extends php_user_filter {
  var $mode;

  function filter($in, $out, &$consumed, $closing)
  {
    while ($bucket = stream_bucket_make_writeable($in)) {
      if ($this->mode == 1) {
        $bucket->data = strtoupper($bucket->data);
      } elseif ($this->mode == 0) {
        $bucket->data = strtolower($bucket->data);
      }

      $consumed += $bucket->datalen;
      stream_bucket_append($out, $bucket);
    }
    return PSFS_PASS_ON;
  }

  function onCreate()
  {
    if ($this->filtername == 'str.toupper') {
      $this->mode = 1;
    } elseif ($this->filtername == 'str.tolower') {
      $this->mode = 0;
    } else {
      /* Some other str.* filter was asked for,
         report failure so that PHP will keep looking */
      return false;
    }

    return true;
  }
}

/* Register our filter with PHP */
stream_filter_register("str.*", "string_filter")
    or die("Failed to register filter");

$fp = fopen("foo-bar.txt", "w");

/* Attach the registered filter to the stream just opened
   We could alternately bind to str.tolower here */
stream_filter_append($fp, "str.toupper");

fwrite($fp, "Line1\n");
fwrite($fp, "Word - 2\n");
fwrite($fp, "Easy As 123\n");

fclose($fp);

/* Read the contents back out
 */
readfile("foo-bar.txt");
?>

O exemplo acima irá imprimir:

LINE1
WORD - 2
EASY AS 123

Veja Também

  • stream_wrapper_register() - Register a URL wrapper implemented as a PHP class
  • stream_filter_append() - Attach a filter to a stream
  • stream_filter_prepend() - Attach a filter to a stream

stream_filter_prepend
stream_filter_remove
Stream Funções


Remove a filter from a stream

stream_filter_register
stream_get_contents
Stream Funções
PHP Manual

stream_filter_remove

(PHP 5 >= 5.1.0)

stream_filter_remove — Remove a filter from a stream

Descrição

bool stream_filter_remove ( resource $stream_filter )

Removes a stream filter previously added to a stream with stream_filter_prepend() or stream_filter_append(). Any data remaining in the filter's internal buffer will be flushed through to the next filter before removing it.

Parâmetros

stream_filter

The stream filter to be removed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Dynamicly refiltering a stream

<?php
/* Open a test file for reading and writing */
$fp = fopen("test.txt", "rw");

$rot13_filter = stream_filter_append($fp, "string.rot13", STREAM_FILTER_WRITE);
fwrite($fp, "This is ");
stream_filter_remove($rot13_filter);
fwrite($fp, "a test\n");

rewind($fp);
fpassthru($fp);
fclose($fp);

?>

O exemplo acima irá imprimir:

Guvf vf a test

Veja Também

  • stream_filter_register() - Register a user defined stream filter
  • stream_filter_append() - Attach a filter to a stream
  • stream_filter_prepend() - Attach a filter to a stream

stream_filter_register
stream_get_contents
Stream Funções


Reads remainder of a stream into a string

stream_filter_remove
stream_get_filters
Stream Funções
PHP Manual

stream_get_contents

(PHP 5)

stream_get_contents — Reads remainder of a stream into a string

Descrição

string stream_get_contents ( resource $handle [, int $maxlength = -1 [, int $offset = -1 ]] )

Identical to file_get_contents(), except that stream_get_contents() operates on an already open stream resource and returns the remaining contents in a string, up to maxlength bytes and starting at the specified offset.

Parâmetros

handle (resource)

A stream resource (e.g. returned from fopen())

maxlength (integer)

The maximum bytes to read. Defaults to -1 (read all the remaining buffer).

offset (integer)

Seek to the specified offset before reading. If this number is negative, no seeking will occur and reading will start from the current position.

Valor Retornado

Returns a string or FALSE on failure.

Histórico

Versão | Descrição
5.1.0 | The offset was added.

Exemplos

Exemplo #1 stream_get_contents() example

<?php

if ($stream = fopen('http://www.example.com', 'r')) {
    // print all the page starting at the offset 10
    echo stream_get_contents($stream, -1, 10);

    fclose($stream);
}

if ($stream = fopen('http://www.example.net', 'r')) {
    // print the first 5 bytes
    echo stream_get_contents($stream, 5);

    fclose($stream);
}

?>

Notas

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

Veja Também

  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fread() - Leitura binary-safe de arquivo
  • fpassthru() - Imprime todo os dados restantes de um ponteiro de arquivo

stream_filter_remove
stream_get_filters
Stream Funções


Retrieve list of registered filters

stream_get_contents
stream_get_line
Stream Funções
PHP Manual

stream_get_filters

(PHP 5)

stream_get_filters — Retrieve list of registered filters

Descrição

array stream_get_filters ( void )

Retrieve the list of registered filters on the running system.

Valor Retornado

Returns an indexed array containing the name of all stream filters available.

Exemplos

Exemplo #1 Using stream_get_filters()

<?php
$streamlist = stream_get_filters();
print_r($streamlist);
?>

O exemplo acima irá imprimir algo similar a:

Array (
  [0] => string.rot13
  [1] => string.toupper
  [2] => string.tolower
  [3] => string.base64
  [4] => string.quoted-printable
)

Veja Também

  • stream_filter_register() - Register a user defined stream filter
  • stream_get_wrappers() - Retrieve list of registered streams
stream_get_contents
stream_get_line
Stream Funções


Gets line from stream resource up to a given delimiter

stream_get_filters
stream_get_meta_data
Stream Funções
PHP Manual

stream_get_line

(PHP 5)

stream_get_line — Gets line from stream resource up to a given delimiter

Descrição

string stream_get_line ( resource $handle , int $length [, string $ending ] )

Gets a line from the given handle.

Reading ends when length bytes have been read, when the string specified by ending is found (which is not included in the return value), or on EOF (whichever comes first).

This function is nearly identical to fgets() except in that it allows end of line delimiters other than the standard \n, \r, and \r\n, and does not return the delimiter itself.

Parâmetros

handle

A valid file handle.

length

The number of bytes to read from the handle.

ending

An optional string delimiter.

Valor Retornado

Returns a string of up to length bytes read from the file pointed to by handle.

If an error occurs, returns FALSE.

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetc() - Lê um caracter do ponteiro de arquivo
stream_get_filters
stream_get_meta_data
Stream Funções


Retrieves header/meta data from streams/file pointers

stream_get_line
stream_get_transports
Stream Funções
PHP Manual

stream_get_meta_data

(PHP 4 >= 4.3.0, PHP 5)

stream_get_meta_data — Retrieves header/meta data from streams/file pointers

Descrição

array stream_get_meta_data ( resource $stream )

Returns information about an existing stream.

Parâmetros

stream

The stream can be any stream created by fopen(), fsockopen() and pfsockopen().

Valor Retornado

The result array contains the following items:

  • timed_out (bool) - TRUE if the stream timed out while waiting for data on the last call to fread() or fgets().

  • blocked (bool) - TRUE if the stream is in blocking IO mode. See stream_set_blocking().

  • eof (bool) - TRUE if the stream has reached end-of-file. Note that for socket streams this member can be TRUE even when unread_bytes is non-zero. To determine if there is more data to be read, use feof() instead of reading this item.

  • unread_bytes (int) - the number of bytes currently contained in the PHP's own internal buffer.

    Nota: You shouldn't use this value in a script.

  • stream_type (string) - a label describing the underlying implementation of the stream.

  • wrapper_type (string) - a label describing the protocol wrapper implementation layered over the stream. See Supported Protocols and Wrappers for more information about wrappers.

  • wrapper_data (mixed) - wrapper specific data attached to this stream. See Supported Protocols and Wrappers for more information about wrappers and their wrapper data.

  • filters (array) - and array containing the names of any filters that have been stacked onto this stream. Documentation on filters can be found in the Filters appendix.

  • mode (string) - the type of access required for this stream (see Table 1 of the fopen() reference)

  • seekable (bool) - whether the current stream can be seeked.

  • uri (string) - the URI/filename associated with this stream.

Histórico

Versão | Descrição
5.0.0 | The following entries were added in the returned array: mode, seekable, and uri.
4.3.0 | The following entries were added in the returned array: stream_type, wrapper_type, wrapper_data, and filters.
4.3.0 | socket_get_status() is an alias for this function. Prior to PHP 4.3.0, it was used to retrieve the first four items, for socket based streams only.

Exemplos

Exemplo #1 stream_get_meta_data() example

<?php
$url = 'http://www.example.com/';

if (!$fp = fopen($url, 'r')) {
    trigger_error("Unable to open URL ($url)", E_USER_ERROR);
}

$meta = stream_get_meta_data($fp);

print_r($meta);

fclose($fp);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [wrapper_data] => Array
        (
            [0] => HTTP/1.1 200 OK
            [1] => Server: Apache/2.2.3 (Red Hat)
            [2] => Last-Modified: Tue, 15 Nov 2005 13:24:10 GMT
            [3] => ETag: "b300b4-1b6-4059a80bfd280"
            [4] => Accept-Ranges: bytes
            [5] => Content-Type: text/html; charset=UTF-8
            [6] => Set-Cookie: FOO=BAR; expires=Fri, 21-Dec-2012 12:00:00 GMT; path=/; domain=.example.com
            [6] => Connection: close
            [7] => Date: Fri, 16 Oct 2009 12:00:00 GMT
            [8] => Age: 1164
            [9] => Content-Length: 438
        )

    [wrapper_type] => http
    [stream_type] => tcp_socket/ssl
    [mode] => r
    [unread_bytes] => 438
    [seekable] =>
    [uri] => http://www.example.com/
    [timed_out] =>
    [blocked] => 1
    [eof] =>
)

Notas

Nota:

This function does NOT work on sockets created by the Socket extension.

Veja Também

  • get_headers() - Retorna todos os cabeçalhos enviados pelo servidor em resposta à requisição HTTP
  • $http_response_header

stream_get_line
stream_get_transports
Stream Funções


Retrieve list of registered socket transports

stream_get_meta_data
stream_get_wrappers
Stream Funções
PHP Manual

stream_get_transports

(PHP 5)

stream_get_transports — Retrieve list of registered socket transports

Descrição

array stream_get_transports ( void )

Returns an indexed array containing the name of all socket transports available on the running system.

Valor Retornado

Returns an indexed array of socket transports names.

Exemplos

Exemplo #1 Using stream_get_transports()

<?php
$xportlist = stream_get_transports();
print_r($xportlist);
?>

O exemplo acima irá imprimir algo similar a:

Array (
  [0] => tcp
  [1] => udp
  [2] => unix
  [3] => udg
)

Veja Também

  • stream_get_filters() - Retrieve list of registered filters
  • stream_get_wrappers() - Retrieve list of registered streams
stream_get_meta_data
stream_get_wrappers
Stream Funções


Retrieve list of registered streams

stream_get_transports
stream_is_local
Stream Funções
PHP Manual

stream_get_wrappers

(PHP 5)

stream_get_wrappers — Retrieve list of registered streams

Descrição

array stream_get_wrappers ( void )

Retrieve list of registered streams available on the running system.

Valor Retornado

Returns an indexed array containing the name of all stream wrappers available on the running system.

Exemplos

Exemplo #1 stream_get_wrappers() example

<?php
print_r(stream_get_wrappers());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => php
    [1] => file
    [2] => http
    [3] => ftp
    [4] => compress.bzip2
    [5] => compress.zlib
)

Exemplo #2 Checking for the existence of a stream wrapper

<?php
// check for the existence of the bzip2 stream wrapper
if (in_array('compress.bzip2', stream_get_wrappers())) {
    echo 'compress.bzip2:// support enabled.';
} else {
    echo 'compress.bzip2:// support not enabled.';
}
?>

Veja Também

  • stream_wrapper_register() - Register a URL wrapper implemented as a PHP class
stream_get_transports
stream_is_local
Stream Funções


Checks if a stream is a local stream

stream_get_wrappers
stream_notification_callback
Stream Funções
PHP Manual

stream_is_local

(PHP 5 >= 5.2.4)

stream_is_local — Checks if a stream is a local stream

Descrição

bool stream_is_local ( mixed $stream_or_url )

Checks if a stream, or a URL, is a local one or not.

Parâmetros

stream_or_url

The stream resource or URL to check.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 stream_is_local() example

Basic usage example.

<?php
var_dump(stream_is_local("http://example.com"));
var_dump(stream_is_local("/etc"));
?>

O exemplo acima irá imprimir algo similar a:

bool(false)
bool(true)

stream_get_wrappers
stream_notification_callback
Stream Funções


A callback function for the notification context paramater

stream_is_local
stream_register_wrapper
Stream Funções
PHP Manual

stream_notification_callback

(PHP 5 >= 5.2.0)

stream_notification_callback — A callback function for the notification context paramater

Descrição

void stream_notification_callback ( int $notification_code , int $severity , string $message , int $message_code , int $bytes_transferred , int $bytes_max )

A callback function, used by the notification context parameter, called during an event.

Nota:

This is not a real function, only a prototype of how the function should be.

Parâmetros

notification_code

One of the STREAM_NOTIFY_* notification constants.

severity

One of the STREAM_NOTIFY_SEVERITY_* notification constants.

message

Passed if a descriptive message is available for the event.

message_code

Passed if a descriptive message code is available for the event.

The meaning of this value is dependent on the specific wrapper in use.

bytes_transferred

If applicable, the bytes_transferred will be populated.

bytes_max

If applicable, the bytes_max will be populated.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 stream_notification_callback() example

<?php
function stream_notification_callback($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max) {

    switch($notification_code) {
        case STREAM_NOTIFY_RESOLVE:
        case STREAM_NOTIFY_AUTH_REQUIRED:
        case STREAM_NOTIFY_COMPLETED:
        case STREAM_NOTIFY_FAILURE:
        case STREAM_NOTIFY_AUTH_RESULT:
            var_dump($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max);
            /* Ignore */
            break;

        case STREAM_NOTIFY_REDIRECTED:
            echo "Being redirected to: ", $message;
            break;

        case STREAM_NOTIFY_CONNECT:
            echo "Connected...";
            break;

        case STREAM_NOTIFY_FILE_SIZE_IS:
            echo "Got the filesize: ", $bytes_max;
            break;

        case STREAM_NOTIFY_MIME_TYPE_IS:
            echo "Found the mime-type: ", $message;
            break;

        case STREAM_NOTIFY_PROGRESS:
            echo "Made some progress, downloaded ", $bytes_transferred, " so far";
            break;
    }
    echo "\n";
}

$ctx = stream_context_create();
stream_context_set_params($ctx, array("notification" => "stream_notification_callback"));

file_get_contents("http://php.net/contact", false, $ctx);
?>

O exemplo acima irá imprimir algo similar a:

Connected...
Found the mime-type: text/html; charset=utf-8
Being redirected to: http://no.php.net/contact
Connected...
Got the filesize: 0
Found the mime-type: text/html; charset=utf-8
Being redirected to: http://no.php.net/contact.php
Connected...
Got the filesize: 4589
Found the mime-type: text/html;charset=utf-8
Made some progress, downloaded 0 so far
Made some progress, downloaded 0 so far
Made some progress, downloaded 0 so far
Made some progress, downloaded 1440 so far
Made some progress, downloaded 2880 so far
Made some progress, downloaded 4320 so far
Made some progress, downloaded 5760 so far
Made some progress, downloaded 6381 so far
Made some progress, downloaded 7002 so far

Exemplo #2 Simple progressbar for commandline download client

<?php
function usage($argv) {
    echo "Usage:\n";
    printf("\tphp %s <http://example.com/file> <localfile>\n", $argv[0]);
    exit(1);
}

function stream_notification_callback($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max) {
    static $filesize = null;

    switch($notification_code) {
    case STREAM_NOTIFY_RESOLVE:
    case STREAM_NOTIFY_AUTH_REQUIRED:
    case STREAM_NOTIFY_COMPLETED:
    case STREAM_NOTIFY_FAILURE:
    case STREAM_NOTIFY_AUTH_RESULT:
        /* Ignore */
        break;

    case STREAM_NOTIFY_REDIRECTED:
        echo "Being redirected to: ", $message, "\n";
        break;

    case STREAM_NOTIFY_CONNECT:
        echo "Connected...\n";
        break;

    case STREAM_NOTIFY_FILE_SIZE_IS:
        $filesize = $bytes_max;
        echo "Filesize: ", $filesize, "\n";
        break;

    case STREAM_NOTIFY_MIME_TYPE_IS:
        echo "Mime-type: ", $message, "\n";
        break;

    case STREAM_NOTIFY_PROGRESS:
        if ($bytes_transferred > 0) {
            if (!isset($filesize)) {
                printf("\rUnknown filesize.. %2d kb done..", $bytes_transferred/1024);
            } else {
                $length = (int)(($bytes_transferred/$filesize)*100);
                printf("\r[%-100s] %d%% (%2d/%2d kb)", str_repeat("=", $length). ">", $length, ($bytes_transferred/1024), $filesize/1024);
            }
        }
        break;
    }
}

isset($argv[1], $argv[2]) or usage($argv);

$ctx = stream_context_create();
stream_context_set_params($ctx, array("notification" => "stream_notification_callback"));

$fp = fopen($argv[1], "r", false, $ctx);
if (is_resource($fp) && file_put_contents($argv[2], $fp)) {
    echo "\nDone!\n";
    exit(0);
}

$err = error_get_last();
echo "\nErrrrrorr..\n", $err["message"], "\n";
exit(1);
?>

Executing the example above with: php -n fetch.php http://no2.php.net/get/php-5-LATEST.tar.bz2/from/this/mirror php-latest.tar.bz2 will output something similar too:

Connected...
Mime-type: text/html; charset=utf-8
Being redirected to: http://no2.php.net/distributions/php-5.2.5.tar.bz2
Connected...
Filesize: 7773024
Mime-type: application/octet-stream
[========================================>                                                           ] 40% (3076/7590 kb)

Veja Também

  • Context parameters

stream_is_local
stream_register_wrapper
Stream Funções


Sinônimo de stream_wrapper_register

stream_notification_callback
stream_resolve_include_path
Stream Funções
PHP Manual

stream_register_wrapper

(PHP 4 >= 4.3.0, PHP 5)

stream_register_wrapper — Sinônimo de stream_wrapper_register()

Descrição

Esta função é um apelido para: stream_wrapper_register().

stream_notification_callback
stream_resolve_include_path
Stream Funções


Resolve filename against the include path

stream_register_wrapper
stream_select
Stream Funções
PHP Manual

stream_resolve_include_path

(PHP 5 >= 5.3.2)

stream_resolve_include_path — Resolve filename against the include path

Descrição

string stream_resolve_include_path ( string $filename )

Resolve filename against the include path according to the same rules as fopen()/include().

Parâmetros

filename

The filename to resolve.

Valor Retornado

Returns a string containing the resolved absolute filename, or FALSE on failure.

Exemplos

Exemplo #1 stream_resolve_include_path() example

Basic usage example.

<?php
var_dump(stream_resolve_include_path("test.php"));
?>

O exemplo acima irá imprimir algo similar a:

string(22) "/var/www/html/test.php"

stream_register_wrapper
stream_select
Stream Funções


Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec

stream_resolve_include_path
stream_set_blocking
Stream Funções
PHP Manual

stream_select

(PHP 4 >= 4.3.0, PHP 5)

stream_select — Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec

Descrição

int stream_select ( array &$read , array &$write , array &$except , int $tv_sec [, int $tv_usec = 0 ] )

The stream_select() function accepts arrays of streams and waits for them to change status. Its operation is equivalent to that of the socket_select() function except in that it acts on streams.

Parâmetros

read

The streams listed in the read array will be watched to see if characters become available for reading (more precisely, to see if a read will not block - in particular, a stream resource is also ready on end-of-file, in which case an fread() will return a zero length string).

write

The streams listed in the write array will be watched to see if a write will not block.

except

The streams listed in the except array will be watched for high priority exceptional ("out-of-band") data arriving.

Nota:

When stream_select() returns, the arrays read, write and except are modified to indicate which stream resource(s) actually changed status.

You do not need to pass every array to stream_select(). You can leave it out and use an empty array or NULL instead. Also do not forget that those arrays are passed by reference and will be modified after stream_select() returns.
tv_sec

The tv_sec and tv_usec together form the timeout parameter, tv_sec specifies the number of seconds while tv_usec the number of microseconds. The timeout is an upper bound on the amount of time that stream_select() will wait before it returns. If tv_sec and tv_usec are both set to 0, stream_select() will not wait for data - instead it will return immediately, indicating the current status of the streams.

If tv_sec is NULL stream_select() can block indefinitely, returning only when an event on one of the watched streams occurs (or if a signal interrupts the system call).

Aviso

Using a timeout value of 0 allows you to instantaneously poll the status of the streams, however, it is NOT a good idea to use a 0 timeout value in a loop as it will cause your script to consume too much CPU time.

It is much better to specify a timeout value of a few seconds, although if you need to be checking and running other code concurrently, using a timeout value of at least 200000 microseconds will help reduce the CPU usage of your script.

Remember that the timeout value is the maximum time that will elapse; stream_select() will return as soon as the requested streams are ready for use.

tv_usec

See tv_sec description.

Valor Retornado

On success stream_select() returns the number of stream resources contained in the modified arrays, which may be zero if the timeout expires before anything interesting happens. On error FALSE is returned and a warning raised (this can happen if the system call is interrupted by an incoming signal).

Exemplos

Exemplo #1 stream_select() Example

This example checks to see if data has arrived for reading on either $stream1 or $stream2. Since the timeout value is 0 it will return immediately:

<?php
/* Prepare the read array */
$read   = array($stream1, $stream2);
$write  = NULL;
$except = NULL;
if (false === ($num_changed_streams = stream_select($read, $write, $except, 0))) {
    /* Error handling */
} elseif ($num_changed_streams > 0) {
    /* At least on one of the streams something interesting happened */
}
?>

Notas

Nota:

Due to a limitation in the current Zend Engine it is not possible to pass a constant modifier like NULL directly as a parameter to a function which expects this parameter to be passed by reference. Instead use a temporary variable or an expression with the leftmost member being a temporary variable:

<?php
$e = NULL;
stream_select($r, $w, $e, 0);
?>

Nota:

Be sure to use the === operator when checking for an error. Since the stream_select() may return 0 the comparison with == would evaluate to TRUE:

<?php
$e = NULL;
if (false === stream_select($r, $w, $e, 0)) {
    echo "stream_select() failed\n";
}
?>

Nota:

If you read/write to a stream returned in the arrays be aware that they do not necessarily read/write the full amount of data you have requested. Be prepared to even only be able to read/write a single byte.

Nota:

Some streams (like zlib) cannot be selected by this function.

Nota:

Windows compatibility: stream_select() used on a pipe returned from proc_open() may cause data loss under Windows 98.

Use of stream_select() on file descriptors returned by proc_open() will fail and return FALSE under Windows.

Veja Também

  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
stream_resolve_include_path
stream_set_blocking
Stream Funções


Set blocking/non-blocking mode on a stream

stream_select
stream_set_read_buffer
Stream Funções
PHP Manual

stream_set_blocking

(PHP 4 >= 4.3.0, PHP 5)

stream_set_blocking — Set blocking/non-blocking mode on a stream

Descrição

bool stream_set_blocking ( resource $stream , int $mode )

Sets blocking or non-blocking mode on a stream.

This function works for any stream that supports non-blocking mode (currently, regular files and socket streams).

Parâmetros

stream

The stream.

mode

If mode is 0, the given stream will be switched to non-blocking mode, and if 1, it will be switched to blocking mode. This affects calls like fgets() and fread() that read from the stream. In non-blocking mode an fgets() call will always return right away while in blocking mode it will wait for data to become available on the stream.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.0 | Prior to PHP 4.3.0, this function only worked on socket based streams.

Notas

Nota:

This function was previously called as set_socket_blocking() and later socket_set_blocking() but this usage is deprecated.

Veja Também

  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
stream_select
stream_set_read_buffer
Stream Funções


Set read file buffering on the given stream

stream_set_blocking
stream_set_timeout
Stream Funções
PHP Manual

stream_set_read_buffer

(PHP 5 >= 5.3.3)

stream_set_read_buffer — Set read file buffering on the given stream

Descrição

int stream_set_read_buffer ( resource $stream , int $buffer )

Sets the read buffer. It's the equivalent of stream_set_write_buffer(), but for read operations.

Parâmetros

stream

The file pointer.

buffer

The number of bytes to buffer. If buffer is 0 then read operations are unbuffered. This ensures that all reads with fread() are completed before other processes are allowed to write to that output stream.

Valor Retornado

Returns 0 on success, or EOF if the request cannot be honored.

Veja Também

  • stream_set_write_buffer() - Sets write file buffering on the given stream
stream_set_blocking
stream_set_timeout
Stream Funções


Set timeout period on a stream

stream_set_read_buffer
stream_set_write_buffer
Stream Funções
PHP Manual

stream_set_timeout

(PHP 4 >= 4.3.0, PHP 5)

stream_set_timeout — Set timeout period on a stream

Descrição

bool stream_set_timeout ( resource $stream , int $seconds [, int $microseconds = 0 ] )

Sets the timeout value on stream, expressed in the sum of seconds and microseconds.

When the stream times out, the 'timed_out' key of the array returned by stream_get_meta_data() is set to TRUE, although no error/warning is generated.

Parâmetros

stream

The target stream.

seconds

The seconds part of the timeout to be set.

microseconds

The microseconds part of the timeout to be set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.0 | As of PHP 4.3, this function can (potentially) work on any kind of stream. In PHP 4.3, socket based streams are still the only kind supported in the PHP core, although streams from other extensions may support this function.

Exemplos

Exemplo #1 stream_set_timeout() example

<?php
$fp = fsockopen("www.example.com", 80);
if (!$fp) {
    echo "Unable to open\n";
} else {

    fwrite($fp, "GET / HTTP/1.0\r\n\r\n");
    stream_set_timeout($fp, 2);
    $res = fread($fp, 2000);

    $info = stream_get_meta_data($fp);
    fclose($fp);

    if ($info['timed_out']) {
        echo 'Connection timed out!';
    } else {
        echo $res;
    }

}
?>

Notas

Nota:

This function doesn't work with advanced operations like stream_socket_recvfrom(), use stream_select() with timeout parameter instead.

This function was previously called as set_socket_timeout() and later socket_set_timeout() but this usage is deprecated.

Veja Também

  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • fopen() - Abre um arquivo ou URL
stream_set_read_buffer
stream_set_write_buffer
Stream Funções


Sets write file buffering on the given stream

stream_set_timeout
stream_socket_accept
Stream Funções
PHP Manual

stream_set_write_buffer

(PHP 4 >= 4.3.0, PHP 5)

stream_set_write_buffer — Sets write file buffering on the given stream

Descrição

int stream_set_write_buffer ( resource $stream , int $buffer )

Sets the buffering for write operations on the given stream to buffer bytes.

Output using fwrite() is normally buffered at 8K. This means that if there are two processes wanting to write to the same output stream (a file), each is paused after 8K of data to allow the other to write.

Parâmetros

stream

The file pointer.

buffer

The number of bytes to buffer. If buffer is 0 then write operations are unbuffered. This ensures that all writes with fwrite() are completed before other processes are allowed to write to that output stream.

Valor Retornado

Returns 0 on success, or EOF if the request cannot be honored.

Exemplos

Exemplo #1 stream_set_write_buffer() example

The following example demonstrates how to use stream_set_write_buffer() to create an unbuffered stream.

<?php
$fp = fopen($file, "w");
if ($fp) {
  stream_set_write_buffer($fp, 0);
  fwrite($fp, $output);
  fclose($fp);
}
?>

Veja Também

  • fopen() - Abre um arquivo ou URL
  • fwrite() - Escrita binary-safe em arquivos
stream_set_timeout
stream_socket_accept
Stream Funções


Accept a connection on a socket created by stream_socket_server

stream_set_write_buffer
stream_socket_client
Stream Funções
PHP Manual

stream_socket_accept

(PHP 5)

stream_socket_accept — Accept a connection on a socket created by stream_socket_server()

Descrição

resource stream_socket_accept ( resource $server_socket [, float $timeout = ini_get("default_socket_timeout") [, string &$peername ]] )

Accept a connection on a socket previously created by stream_socket_server().

Parâmetros

server_socket

The server socket to accept a connection from.

timeout

Override the default socket accept timeout. Time should be given in seconds.

peername

Will be set to the name (address) of the client which connected, if included and available from the selected transport.

Nota:

Can also be determined later using stream_socket_get_name().

Valor Retornado

Returns a stream to the accepted socket connection or FALSE on failure.

Notas

Aviso

This function should not be used with UDP server sockets. Instead, use stream_socket_recvfrom() and stream_socket_sendto().

Veja Também

  • stream_socket_server() - Create an Internet or Unix domain server socket
  • stream_socket_get_name() - Retrieve the name of the local or remote sockets
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • stream_set_timeout() - Set timeout period on a stream
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fwrite() - Escrita binary-safe em arquivos
  • fclose() - Fecha um ponteiro de arquivo aberto
  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
  • Funções da cURL

stream_set_write_buffer
stream_socket_client
Stream Funções


Open Internet or Unix domain socket connection

stream_socket_accept
stream_socket_enable_crypto
Stream Funções
PHP Manual

stream_socket_client

(PHP 5)

stream_socket_client — Open Internet or Unix domain socket connection

Descrição

resource stream_socket_client ( string $remote_socket [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") [, int $flags = STREAM_CLIENT_CONNECT [, resource $context ]]]]] )

Initiates a stream or datagram connection to the destination specified by remote_socket. The type of socket created is determined by the transport specified using standard URL formatting: transport://target. For Internet Domain sockets (AF_INET) such as TCP and UDP, the target portion of the remote_socket parameter should consist of a hostname or IP address followed by a colon and a port number. For Unix domain sockets, the target portion should point to the socket file on the filesystem.

Nota:

The stream will by default be opened in blocking mode. You can switch it to non-blocking mode by using stream_set_blocking().

Parâmetros

remote_socket

Address to the socket to connect to.

errno

Will be set to the system level error number if connection fails.

errstr

Will be set to the system level error message if the connection fails.

timeout

Number of seconds until the connect() system call should timeout.

Nota: This parameter only applies when not making asynchronous connection attempts.

Nota:

To set a timeout for reading/writing data over the socket, use the stream_set_timeout(), as the timeout only applies while making connecting the socket.

flags

Bitmask field which may be set to any combination of connection flags. Currently the select of connection flags is limited to STREAM_CLIENT_CONNECT (default), STREAM_CLIENT_ASYNC_CONNECT and STREAM_CLIENT_PERSISTENT.

context

A valid context resource created with stream_context_create().

Valor Retornado

On success a stream resource is returned which may
be used together with the other file functions (such as
fgets(), fgetss(),
fwrite(), fclose(), and
feof()), FALSE on failure.

Erros

On failure the errno and errstr arguments will be populated with the actual system level error that occurred in the system-level connect() call. If the value returned in errno is 0 and the function returned FALSE, it is an indication that the error occurred before the connect() call. This is most likely due to a problem initializing the socket. Note that the errno and errstr arguments will always be passed by reference.

Exemplos

Exemplo #1 stream_socket_client() example

<?php
$fp = stream_socket_client("tcp://www.example.com:80", $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    fwrite($fp, "GET / HTTP/1.0\r\nHost: www.example.com\r\nAccept: */*\r\n\r\n");
    while (!feof($fp)) {
        echo fgets($fp, 1024);
    }
    fclose($fp);
}
?>

Exemplo #2 Using UDP connection

Retrieving the day and time from the UDP service "daytime" (port 13) on localhost.

<?php
$fp = stream_socket_client("udp://127.0.0.1:13", $errno, $errstr);
if (!$fp) {
    echo "ERROR: $errno - $errstr<br />\n";
} else {
    fwrite($fp, "\n");
    echo fread($fp, 26);
    fclose($fp);
}
?>

Notas

Aviso

UDP sockets will sometimes appear to have opened without an error, even if the remote host is unreachable. The error will only become apparent when you read or write data to/from the socket. The reason for this is because UDP is a "connectionless" protocol, which means that the operating system does not try to establish a link for the socket until it actually needs to send or receive data.

Nota: Quando informando endereços IPv6 numéricos (por exemplo, fe80::1), você precisa englobar o IP entre colchetes. Exemplo: tcp://[fe80::1]:80.

Nota:

Depending on the environment, the Unix domain or the optional connect timeout may not be available. A list of available transports can be retrieved using stream_get_transports(). See Lista de Transportes via Socket Suportados for a list of built in transports.

Veja Também

  • stream_socket_server() - Create an Internet or Unix domain server socket
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • stream_set_timeout() - Set timeout period on a stream
  • stream_select() - Runs the equivalent of the select() system call on the given arrays of streams with a timeout specified by tv_sec and tv_usec
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fwrite() - Escrita binary-safe em arquivos
  • fclose() - Fecha um ponteiro de arquivo aberto
  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
  • Funções da cURL

stream_socket_accept
stream_socket_enable_crypto
Stream Funções


Turns encryption on/off on an already connected socket

stream_socket_client
stream_socket_get_name
Stream Funções
PHP Manual

stream_socket_enable_crypto

(PHP 5 >= 5.1.0)

stream_socket_enable_crypto — Turns encryption on/off on an already connected socket

Descrição

mixed stream_socket_enable_crypto ( resource $stream , bool $enable [, int $crypto_type [, resource $session_stream ]] )

Enable or disable encryption on the stream.

Once the crypto settings are established, cryptography can be turned on and off dynamically by passing TRUE or FALSE in the enable parameter.

Parâmetros

stream

The stream resource.

enable

Enable/disable cryptography on the stream.

crypto_type

Setup encryption on the stream. Valid methods are

  • STREAM_CRYPTO_METHOD_SSLv2_CLIENT
  • STREAM_CRYPTO_METHOD_SSLv3_CLIENT
  • STREAM_CRYPTO_METHOD_SSLv23_CLIENT
  • STREAM_CRYPTO_METHOD_TLS_CLIENT
  • STREAM_CRYPTO_METHOD_SSLv2_SERVER
  • STREAM_CRYPTO_METHOD_SSLv3_SERVER
  • STREAM_CRYPTO_METHOD_SSLv23_SERVER
  • STREAM_CRYPTO_METHOD_TLS_SERVER

session_stream

Seed the stream with settings from session_stream.

Valor Retornado

Returns TRUE on success, FALSE if negotiation has failed or 0 if there isn't enough data and you should try again (only for non-blocking sockets).

Exemplos

Exemplo #1 stream_socket_enable_crypto() example

<?php
$fp = stream_socket_client("tcp://myproto.example.com:31337", $errno, $errstr, 30);
if (!$fp) {
    die("Unable to connect: $errstr ($errno)");
}

/* Turn on encryption for login phase */
stream_socket_enable_crypto($fp, true, STREAM_CRYPTO_METHOD_SSLv23_CLIENT);
fwrite($fp, "USER god\r\n");
fwrite($fp, "PASS secret\r\n");

/* Turn off encryption for the rest */
stream_socket_enable_crypto($fp, false);

while ($motd = fgets($fp)) {
    echo $motd;
}

fclose($fp);
?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • OpenSSL Funções
    •

  • Lista de Transportes via Socket Suportados
    •

stream_socket_client

stream_socket_get_name

Stream Funções


Retrieve the name of the local or remote sockets

stream_socket_enable_crypto
stream_socket_pair
Stream Funções
PHP Manual

stream_socket_get_name

(PHP 5)

stream_socket_get_name — Retrieve the name of the local or remote sockets

Descrição

string stream_socket_get_name ( resource $handle , bool $want_peer )

Returns the local or remote name of a given socket connection.

Parâmetros

handle

The socket to get the name of.

want_peer

If set to TRUE the remote socket name will be returned, if set to FALSE the local socket name will be returned.

Valor Retornado

The name of the socket.

Veja Também

  • stream_socket_accept() - Accept a connection on a socket created by stream_socket_server

stream_socket_enable_crypto
stream_socket_pair
Stream Funções


Creates a pair of connected, indistinguishable socket streams

stream_socket_get_name
stream_socket_recvfrom
Stream Funções
PHP Manual

stream_socket_pair

(PHP 5 >= 5.1.0)

stream_socket_pair — Creates a pair of connected, indistinguishable socket streams

Descrição

array stream_socket_pair ( int $domain , int $type , int $protocol )

stream_socket_pair() creates a pair of connected, indistinguishable socket streams. This function is commonly used in IPC (Inter-Process Communication).

Parâmetros

domain

The protocol family to be used: STREAM_PF_INET, STREAM_PF_INET6 or STREAM_PF_UNIX

type

The type of communication to be used: STREAM_SOCK_DGRAM, STREAM_SOCK_RAW, STREAM_SOCK_RDM, STREAM_SOCK_SEQPACKET or STREAM_SOCK_STREAM

protocol

The protocol to be used: STREAM_IPPROTO_ICMP, STREAM_IPPROTO_IP, STREAM_IPPROTO_RAW, STREAM_IPPROTO_TCP or STREAM_IPPROTO_UDP

Nota: Please consult the Streams constant list for further details on each constant.

Valor Retornado

Returns an array with the two socket resources on success, or FALSE on failure.

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows platforms.

Exemplos

Exemplo #1 A stream_socket_pair() example

This example shows the basic usage of stream_socket_pair() in Inter-Process Comunication.

<?php

$sockets = stream_socket_pair(STREAM_PF_UNIX, STREAM_SOCK_STREAM, STREAM_IPPROTO_IP);
$pid     = pcntl_fork();

if ($pid == -1) {
     die('could not fork');

} else if ($pid) {
     /* parent */
    fclose($sockets[0]);

    fwrite($sockets[1], "child PID: $pid\n");
    echo fgets($sockets[1]);

    fclose($sockets[1]);

} else {
    /* child */
    fclose($sockets[1]);

    fwrite($sockets[0], "message from child\n");
    echo fgets($sockets[0]);

    fclose($sockets[0]);
}

?>

O exemplo acima irá imprimir algo similar a:

child PID: 1378
message from child

stream_socket_get_name
stream_socket_recvfrom
Stream Funções


Receives data from a socket, connected or not

stream_socket_pair
stream_socket_sendto
Stream Funções
PHP Manual

stream_socket_recvfrom

(PHP 5)

stream_socket_recvfrom — Receives data from a socket, connected or not

Descrição

string stream_socket_recvfrom ( resource $socket , int $length [, int $flags = 0 [, string &$address ]] )

stream_socket_recvfrom() accepts data from a remote socket up to length bytes.

Parâmetros

socket

The remote socket.

length

The number of bytes to receive from the socket.

flags

The value of flags can be any combination of the following:

Possible values for flags
STREAM_OOB | Process OOB (out-of-band) data.
STREAM_PEEK | Retrieve data from the socket, but do not consume the buffer. Subsequent calls to fread() or stream_socket_recvfrom() will see the same data.

address

If address is provided it will be populated with the address of the remote socket.

Valor Retornado

Returns the read data, as a string

Exemplos

Exemplo #1 stream_socket_recvfrom() example

<?php
/* Open a server socket to port 1234 on localhost */
$server = stream_socket_server('tcp://127.0.0.1:1234');

/* Accept a connection */
$socket = stream_socket_accept($server);

/* Grab a packet (1500 is a typical MTU size) of OOB data */
echo "Received Out-Of-Band: '" . stream_socket_recvfrom($socket, 1500, STREAM_OOB) . "'\n";

/* Take a peek at the normal in-band data, but don't comsume it. */
echo "Data: '" . stream_socket_recvfrom($socket, 1500, STREAM_PEEK) . "'\n";

/* Get the exact same packet again, but remove it from the buffer this time. */
echo "Data: '" . stream_socket_recvfrom($socket, 1500) . "'\n";

/* Close it up */
fclose($socket);
fclose($server);
?>

Notas

Nota:

If a message received is longer than the length parameter, excess bytes may be discarded depending on the type of socket the message is received from (such as UDP).

Nota:

Calls to stream_socket_recvfrom() on socket-based streams, after calls to buffer-based stream functions (like fread() or stream_get_line()) read data directly from the socket and bypass the stream buffer.

Veja Também

  • stream_socket_sendto() - Sends a message to a socket, whether it is connected or not
  • stream_socket_client() - Open Internet or Unix domain socket connection
  • stream_socket_server() - Create an Internet or Unix domain server socket
stream_socket_pair
stream_socket_sendto
Stream Funções


Sends a message to a socket, whether it is connected or not

stream_socket_recvfrom
stream_socket_server
Stream Funções
PHP Manual

stream_socket_sendto

(PHP 5)

stream_socket_sendto — Sends a message to a socket, whether it is connected or not

Descrição

int stream_socket_sendto ( resource $socket , string $data [, int $flags = 0 [, string $address ]] )

Sends the specified data through the socket.

Parâmetros

socket

The socket to send data to.

data

The data to be sent.

flags

The value of flags can be any combination of the following:

possible values for flags
STREAM_OOB Process OOB (out-of-band) data.

address

The address specified when the socket stream was created will be used unless an alternate address is specified in address.

If specified, it must be in dotted quad (or [ipv6]) format.

Valor Retornado

Returns a result code, as an integer.

Exemplos

Exemplo #1 stream_socket_sendto() Example

<?php
/* Open a socket to port 1234 on localhost */
$socket = stream_socket_client('tcp://127.0.0.1:1234');

/* Send ordinary data via ordinary channels. */
fwrite($socket, "Normal data transmit.");

/* Send more data out of band. */
stream_socket_sendto($socket, "Out of Band data.", STREAM_OOB);

/* Close it up */
fclose($socket);
?>

Veja Também

  • stream_socket_recvfrom() - Receives data from a socket, connected or not
  • stream_socket_client() - Open Internet or Unix domain socket connection
  • stream_socket_server() - Create an Internet or Unix domain server socket
stream_socket_recvfrom
stream_socket_server
Stream Funções


Create an Internet or Unix domain server socket

stream_socket_sendto
stream_socket_shutdown
Stream Funções
PHP Manual

stream_socket_server

(PHP 5)

stream_socket_server — Create an Internet or Unix domain server socket

Descrição

resource stream_socket_server ( string $local_socket [, int &$errno [, string &$errstr [, int $flags = STREAM_SERVER_BIND | STREAM_SERVER_LISTEN [, resource $context ]]]] )

Creates a stream or datagram socket on the specified local_socket.

This function only creates a socket, to begin accepting connections use stream_socket_accept().

Parâmetros

local_socket

The type of socket created is determined by the transport specified using standard URL formatting: transport://target.

For Internet Domain sockets (AF_INET) such as TCP and UDP, the target portion of the remote_socket parameter should consist of a hostname or IP address followed by a colon and a port number. For Unix domain sockets, the target portion should point to the socket file on the filesystem.

Depending on the environment, Unix domain sockets may not be available. A list of available transports can be retrieved using stream_get_transports(). See Lista de Transportes via Socket Suportados for a list of bulitin transports.

errno

If the optional errno and errstr arguments are present they will be set to indicate the actual system level error that occurred in the system-level socket(), bind(), and listen() calls. If the value returned in errno is 0 and the function returned FALSE, it is an indication that the error occurred before the bind() call. This is most likely due to a problem initializing the socket. Note that the errno and errstr arguments will always be passed by reference.

errstr

See errno description.

flags

A bitmask field which may be set to any combination of socket creation flags.

Nota:

For UDP sockets, you must use STREAM_SERVER_BIND as the flags parameter.

context

Valor Retornado

Returns the created stream, or FALSE on error.

Exemplos

Exemplo #1 Using TCP server sockets

<?php
$socket = stream_socket_server("tcp://0.0.0.0:8000", $errno, $errstr);
if (!$socket) {
  echo "$errstr ($errno)<br />\n";
} else {
  while ($conn = stream_socket_accept($socket)) {
    fwrite($conn, 'The local time is ' . date('n/j/Y g:i a') . "\n");
    fclose($conn);
  }
  fclose($socket);
}
?>

The example below shows how to act as a time server which can respond to time queries as shown in an example on stream_socket_client().

Nota: Most systems require root access to create a server socket on a port below 1024.

Exemplo #2 Using UDP server sockets

<?php
$socket = stream_socket_server("udp://127.0.0.1:1113", $errno, $errstr, STREAM_SERVER_BIND);
if (!$socket) {
    die("$errstr ($errno)");
}

do {
    $pkt = stream_socket_recvfrom($socket, 1, 0, $peer);
    echo "$peer\n";
    stream_socket_sendto($socket, date("D M j H:i:s Y\r\n"), 0, $peer);
} while ($pkt !== false);

?>

Notas

Nota: Quando informando endereços IPv6 numéricos (por exemplo, fe80::1), você precisa englobar o IP entre colchetes. Exemplo: tcp://[fe80::1]:80.

Veja Também

  • stream_socket_client() - Open Internet or Unix domain socket connection
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • stream_set_timeout() - Set timeout period on a stream
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fwrite() - Escrita binary-safe em arquivos
  • fclose() - Fecha um ponteiro de arquivo aberto
  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
  • Curl extension
stream_socket_sendto
stream_socket_shutdown
Stream Funções


Shutdown a full-duplex connection

stream_socket_server
stream_supports_lock
Stream Funções
PHP Manual

stream_socket_shutdown

(PHP 5 >= 5.2.1)

stream_socket_shutdown — Shutdown a full-duplex connection

Descrição

bool stream_socket_shutdown ( resource $stream , int $how )

Shutdowns (partially or not) a full-duplex connection.

Parâmetros

stream

An open stream (opened with stream_socket_client(), for example)

how

One of the following constants: STREAM_SHUT_RD (disable further receptions), STREAM_SHUT_WR (disable further transmissions) or STREAM_SHUT_RDWR (disable further receptions and transmissions).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A stream_socket_shutdown() example

<?php

$server = stream_socket_server('tcp://127.0.0.1:1337');
$client = stream_socket_client('tcp://127.0.0.1:1337');

var_dump(fputs($client, "hello"));

stream_socket_shutdown($client, STREAM_SHUT_WR);
var_dump(fputs($client, "hello")); // doesn't work now

?>

O exemplo acima irá imprimir algo similar a:

int(5)

Notice: fputs(): send of 5 bytes failed with errno=32 Broken pipe in test.php on line 9
int(0)

Veja Também

  • fclose() - Fecha um ponteiro de arquivo aberto

stream_socket_server
stream_supports_lock
Stream Funções


Tells whether the stream supports locking.

stream_socket_shutdown
stream_wrapper_register
Stream Funções
PHP Manual

stream_supports_lock

(PHP 5 >= 5.3.0)

stream_supports_lock — Tells whether the stream supports locking.

Descrição

bool stream_supports_lock ( resource $stream )

Tells whether the stream supports locking through flock().

Parâmetros

stream

The stream to check.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • flock() - Monitor de travamento de arquivos portátil

stream_socket_shutdown
stream_wrapper_register
Stream Funções


Register a URL wrapper implemented as a PHP class

stream_supports_lock
stream_wrapper_restore
Stream Funções
PHP Manual

stream_wrapper_register

(PHP 4 >= 4.3.2, PHP 5)

stream_wrapper_register — Register a URL wrapper implemented as a PHP class

Descrição

bool stream_wrapper_register ( string $protocol , string $classname [, int $flags = 0 ] )

Allows you to implement your own protocol handlers and streams for use with all the other filesystem functions (such as fopen(), fread() etc.).

Parâmetros

protocol

The wrapper name to be registered.

classname

The classname which implements the protocol.

flags

Should be set to STREAM_IS_URL if protocol is a URL protocol. Default is 0, local stream.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_wrapper_register() will return FALSE if the protocol already has a handler.

Histórico

Versão | Descrição
5.2.4 | Added the flags parameter.

Exemplos

Exemplo #1 How to register a stream wrapper

<?php
$existed = in_array("var", stream_get_wrappers());
if ($existed) {
    stream_wrapper_unregister("var");
}
stream_wrapper_register("var", "VariableStream");
$myvar = "";

$fp = fopen("var://myvar", "r+");

fwrite($fp, "line1\n");
fwrite($fp, "line2\n");
fwrite($fp, "line3\n");

rewind($fp);
while (!feof($fp)) {
    echo fgets($fp);
}
fclose($fp);
var_dump($myvar);

if ($existed) {
    stream_wrapper_restore("var");
}

?>

O exemplo acima irá imprimir:

line1
line2
line3
string(18) "line1
line2
line3
"

Veja Também

  • The streamWrapper prototype class
  • Example class registered as stream wrapper
  • stream_wrapper_unregister() - Unregister a URL wrapper
  • stream_wrapper_restore() - Restores a previously unregistered built-in wrapper
  • stream_get_wrappers() - Retrieve list of registered streams

stream_supports_lock
stream_wrapper_restore
Stream Funções


Restores a previously unregistered built-in wrapper

stream_wrapper_register
stream_wrapper_unregister
Stream Funções
PHP Manual

stream_wrapper_restore

(PHP 5 >= 5.1.0)

stream_wrapper_restore — Restores a previously unregistered built-in wrapper

Descrição

bool stream_wrapper_restore ( string $protocol )

Restores a built-in wrapper previously unregistered with stream_wrapper_unregister().

Parâmetros

protocol

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_wrapper_register
stream_wrapper_unregister
Stream Funções


Unregister a URL wrapper

stream_wrapper_restore
Tidy
Stream Funções
PHP Manual

stream_wrapper_unregister

(PHP 5 >= 5.1.0)

stream_wrapper_unregister — Unregister a URL wrapper

Descrição

bool stream_wrapper_unregister ( string $protocol )

Allows you to disable an already defined stream wrapper. Once the wrapper has been disabled you may override it with a user-defined wrapper using stream_wrapper_register() or reenable it later on with stream_wrapper_restore().

Parâmetros

protocol

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

stream_wrapper_restore
Tidy
Stream Funções


Tidy

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Exemplos
  • Funções do Tidy
    • ob_tidyhandler — ob_start callback function to repair the buffer
    • tidy_access_count — Returns the Number of Tidy accessibility warnings encountered for specified document
    • tidy_config_count — Returns the Number of Tidy configuration errors encountered for specified document
    • tidy_error_count — Returns the Number of Tidy errors encountered for specified document
    • tidy_get_error_buffer — Return warnings and errors which occurred parsing the specified document
    • tidy_get_output — Return a string representing the parsed tidy markup
    • tidy_load_config — Load an ASCII Tidy configuration file with the specified encoding
    • tidy_reset_config — Restore Tidy configuration to default values
    • tidy_save_config — Save current settings to named file
    • tidy_set_encoding — Set the input/output character encoding for parsing markup
    • tidy_setopt — Updates the configuration settings for the specified tidy document
    • tidy_warning_count — Returns the Number of Tidy warnings encountered for specified document
stream_wrapper_unregister
Introdução
Outras Básicas Extensões


Introdução

Tidy é uma implementação do Tidy HTML clean e um utilitário reparador que permite você não somente limpar e manipular documentos HTML, mas também percorrer a árvore do documento.

Tidy
Instalação/Configuração
Tidy


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Tidy


Dependências

Para usar o Tidy, você irá precisar da libtidy instalada, disponível na homepage do tidy » http://tidy.sourceforge.net/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Tidy atualmente é disponível para PHP 4.3.x e PHP 5 como extensão PECL de » http://pecl.php.net/package/tidy.

Nota:

Tidy 1.0 é somente para PHP 4.3.x, e Tidy 2.0 é somente para PHP 5.

Se » PEAR está disponível em seu sistema *nix-like você pode usar o instalador pear para instalar a extensão tidy, pelo seguinte comando: pecl install tidy.

Você sempre pode fazer download do pacote tar.gz e instalar o tidy manualmente:

Exemplo #1 instalação do tidy manualmente no PHP 4.3.x

gunzip tidy-xxx.tgz
tar -xvf tidy-xxx.tar
cd tidy-xxx
phpize
./configure && make && make install

Usuários Windows podem fazer download da extensão DLL de » http://pecl4win.php.net/ext.php/php_tidy.dll.

No PHP 5 você irá precisar somente compilar usando a opção --with-tidy .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração do Tidy
Nome | Padrão | Modificável | Changelog
tidy.default_config | "" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
tidy.clean_output | "0" | PHP_INI_USER | PHP_INI_PERDIR no PHP 5. Disponível desde o PHP 5.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

tidy.default_config string

Caminho padrão para o arquivo de configuração do tidy.

tidy.clean_output boolean

Torna on/off a saída reparada pelo Tidy.

Aviso

Não torne on tidy.clean_output se você está gerando conteúdo não-html como imagens dinâmicas.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Cada TIDY_TAG_XXX representa uma tag HTML. Por exemplo, TIDY_TAG_A representa a tag <a href="XX">link</a>. Cada TIDY_ATTR_XXX representa um atributo HTML. Por exemplo TIDY_ATTR_HREF representaria o atributo href no exemplo anterior.

As seguintes constantes são definidas:

Constantes de tag do Tidy
Constante
TIDY_TAG_UNKNOWN
TIDY_TAG_A
TIDY_TAG_ABBR
TIDY_TAG_ACRONYM
TIDY_TAG_ALIGN
TIDY_TAG_APPLET
TIDY_TAG_AREA
TIDY_TAG_B
TIDY_TAG_BASE
TIDY_TAG_BASEFONT
TIDY_TAG_BDO
TIDY_TAG_BGSOUND
TIDY_TAG_BIG
TIDY_TAG_BLINK
TIDY_TAG_BLOCKQUOTE
TIDY_TAG_BODY
TIDY_TAG_BR
TIDY_TAG_BUTTON
TIDY_TAG_CAPTION
TIDY_TAG_CENTER
TIDY_TAG_CITE
TIDY_TAG_CODE
TIDY_TAG_COL
TIDY_TAG_COLGROUP
TIDY_TAG_COMMENT
TIDY_TAG_DD
TIDY_TAG_DEL
TIDY_TAG_DFN
TIDY_TAG_DIR
TIDY_TAG_DIV
TIDY_TAG_DL
TIDY_TAG_DT
TIDY_TAG_EM
TIDY_TAG_EMBED
TIDY_TAG_FIELDSET
TIDY_TAG_FONT
TIDY_TAG_FORM
TIDY_TAG_FRAME
TIDY_TAG_FRAMESET
TIDY_TAG_H1
TIDY_TAG_H2
TIDY_TAG_H3
TIDY_TAG_H4
TIDY_TAG_H5
TIDY_TAG_H6
TIDY_TAG_HEAD
TIDY_TAG_HR
TIDY_TAG_HTML
TIDY_TAG_I
TIDY_TAG_IFRAME
TIDY_TAG_ILAYER
TIDY_TAG_IMG
TIDY_TAG_INPUT
TIDY_TAG_INS
TIDY_TAG_ISINDEX
TIDY_TAG_KBD
TIDY_TAG_KEYGEN
TIDY_TAG_LABEL
TIDY_TAG_LAYER
TIDY_TAG_LEGEND
TIDY_TAG_LI
TIDY_TAG_LINK
TIDY_TAG_LISTING
TIDY_TAG_MAP
TIDY_TAG_MARQUEE
TIDY_TAG_MENU
TIDY_TAG_META
TIDY_TAG_MULTICOL
TIDY_TAG_NOBR
TIDY_TAG_NOEMBED
TIDY_TAG_NOFRAMES
TIDY_TAG_NOLAYER
TIDY_TAG_NOSAVE
TIDY_TAG_NOSCRIPT
TIDY_TAG_OBJECT
TIDY_TAG_OL
TIDY_TAG_OPTGROUP
TIDY_TAG_OPTION
TIDY_TAG_P
TIDY_TAG_PARAM
TIDY_TAG_PLAINTEXT
TIDY_TAG_PRE
TIDY_TAG_Q
TIDY_TAG_RP
TIDY_TAG_RT
TIDY_TAG_RTC
TIDY_TAG_RUBY
TIDY_TAG_S
TIDY_TAG_SAMP
TIDY_TAG_SCRIPT
TIDY_TAG_SELECT
TIDY_TAG_SERVER
TIDY_TAG_SERVLET
TIDY_TAG_SMALL
TIDY_TAG_SPACER
TIDY_TAG_SPAN
TIDY_TAG_STRIKE
TIDY_TAG_STRONG
TIDY_TAG_STYLE
TIDY_TAG_SUB
TIDY_TAG_TABLE
TIDY_TAG_TBODY
TIDY_TAG_TD
TIDY_TAG_TEXTAREA
TIDY_TAG_TFOOT
TIDY_TAG_TH
TIDY_TAG_THEAD
TIDY_TAG_TITLE
TIDY_TAG_TR
TIDY_TAG_TR
TIDY_TAG_TT
TIDY_TAG_U
TIDY_TAG_UL
TIDY_TAG_VAR
TIDY_TAG_WBR
TIDY_TAG_XMP

Constantes de atributo do Tidy
Constante
TIDY_ATTR_UNKNOWN
TIDY_ATTR_ABBR
TIDY_ATTR_ACCEPT
TIDY_ATTR_ACCEPT_CHARSET
TIDY_ATTR_ACCESSKEY
TIDY_ATTR_ACTION
TIDY_ATTR_ADD_DATE
TIDY_ATTR_ALIGN
TIDY_ATTR_ALINK
TIDY_ATTR_ALT
TIDY_ATTR_ARCHIVE
TIDY_ATTR_AXIS
TIDY_ATTR_BACKGROUND
TIDY_ATTR_BGCOLOR
TIDY_ATTR_BGPROPERTIES
TIDY_ATTR_BORDER
TIDY_ATTR_BORDERCOLOR
TIDY_ATTR_BOTTOMMARGIN
TIDY_ATTR_CELLPADDING
TIDY_ATTR_CELLSPACING
TIDY_ATTR_CHAR
TIDY_ATTR_CHAROFF
TIDY_ATTR_CHARSET
TIDY_ATTR_CHECKED
TIDY_ATTR_CITE
TIDY_ATTR_CLASS
TIDY_ATTR_CLASSID
TIDY_ATTR_CLEAR
TIDY_ATTR_CODE
TIDY_ATTR_CODEBASE
TIDY_ATTR_CODETYPE
TIDY_ATTR_COLOR
TIDY_ATTR_COLS
TIDY_ATTR_COLSPAN
TIDY_ATTR_COMPACT
TIDY_ATTR_CONTENT
TIDY_ATTR_COORDS
TIDY_ATTR_DATA
TIDY_ATTR_DATAFLD
TIDY_ATTR_DATAPAGESIZE
TIDY_ATTR_DATASRC
TIDY_ATTR_DATETIME
TIDY_ATTR_DECLARE
TIDY_ATTR_DEFER
TIDY_ATTR_DIR
TIDY_ATTR_DISABLED
TIDY_ATTR_ENCODING
TIDY_ATTR_ENCTYPE
TIDY_ATTR_FACE
TIDY_ATTR_FOR
TIDY_ATTR_FRAME
TIDY_ATTR_FRAMEBORDER
TIDY_ATTR_FRAMESPACING
TIDY_ATTR_GRIDX
TIDY_ATTR_GRIDY
TIDY_ATTR_HEADERS
TIDY_ATTR_HEIGHT
TIDY_ATTR_HREF
TIDY_ATTR_HREFLANG
TIDY_ATTR_HSPACE
TIDY_ATTR_HTTP_EQUIV
TIDY_ATTR_ID
TIDY_ATTR_ISMAP
TIDY_ATTR_LABEL
TIDY_ATTR_LANG
TIDY_ATTR_LANGUAGE
TIDY_ATTR_LAST_MODIFIED
TIDY_ATTR_LAST_VISIT
TIDY_ATTR_LEFTMARGIN
TIDY_ATTR_LINK
TIDY_ATTR_LONGDESC
TIDY_ATTR_LOWSRC
TIDY_ATTR_MARGINHEIGHT
TIDY_ATTR_MARGINWIDTH
TIDY_ATTR_MAXLENGTH
TIDY_ATTR_MEDIA
TIDY_ATTR_METHOD
TIDY_ATTR_MULTIPLE
TIDY_ATTR_NAME
TIDY_ATTR_NOHREF
TIDY_ATTR_NORESIZE
TIDY_ATTR_NOSHADE
TIDY_ATTR_NOWRAP
TIDY_ATTR_OBJECT
TIDY_ATTR_OnAFTERUPDATE
TIDY_ATTR_OnBEFOREUNLOAD
TIDY_ATTR_OnBEFOREUPDATE
TIDY_ATTR_OnBLUR
TIDY_ATTR_OnCHANGE
TIDY_ATTR_OnCLICK
TIDY_ATTR_OnDATAAVAILABLE
TIDY_ATTR_OnDATASETCHANGED
TIDY_ATTR_OnDATASETCOMPLETE
TIDY_ATTR_OnDBLCLICK
TIDY_ATTR_OnERRORUPDATE
TIDY_ATTR_OnFOCUS
TIDY_ATTR_OnKEYDOWN
TIDY_ATTR_OnKEYPRESS
TIDY_ATTR_OnKEYUP
TIDY_ATTR_OnLOAD
TIDY_ATTR_OnMOUSEDOWN
TIDY_ATTR_OnMOUSEMOVE
TIDY_ATTR_OnMOUSEOUT
TIDY_ATTR_OnMOUSEOVER
TIDY_ATTR_OnMOUSEUP
TIDY_ATTR_OnRESET
TIDY_ATTR_OnROWENTER
TIDY_ATTR_OnROWEXIT
TIDY_ATTR_OnSELECT
TIDY_ATTR_OnSUBMIT
TIDY_ATTR_OnUNLOAD
TIDY_ATTR_PROFILE
TIDY_ATTR_PROMPT
TIDY_ATTR_RBSPAN
TIDY_ATTR_READONLY
TIDY_ATTR_REL
TIDY_ATTR_REV
TIDY_ATTR_RIGHTMARGIN
TIDY_ATTR_ROWS
TIDY_ATTR_ROWSPAN
TIDY_ATTR_RULES
TIDY_ATTR_SCHEME
TIDY_ATTR_SCOPE
TIDY_ATTR_SCROLLING
TIDY_ATTR_SELECTED
TIDY_ATTR_SHAPE
TIDY_ATTR_SHOWGRID
TIDY_ATTR_SHOWGRIDX
TIDY_ATTR_SHOWGRIDY
TIDY_ATTR_SIZE
TIDY_ATTR_SPAN
TIDY_ATTR_SRC
TIDY_ATTR_STANDBY
TIDY_ATTR_START
TIDY_ATTR_STYLE
TIDY_ATTR_SUMMARY
TIDY_ATTR_TABINDEX
TIDY_ATTR_TARGET
TIDY_ATTR_TEXT
TIDY_ATTR_TITLE
TIDY_ATTR_TOPMARGIN
TIDY_ATTR_TYPE
TIDY_ATTR_USEMAP
TIDY_ATTR_VALIGN
TIDY_ATTR_VALUE
TIDY_ATTR_VALUETYPE
TIDY_ATTR_VERSION
TIDY_ATTR_VLINK
TIDY_ATTR_VSPACE
TIDY_ATTR_WIDTH
TIDY_ATTR_WRAP
TIDY_ATTR_XML_LANG
TIDY_ATTR_XML_SPACE
TIDY_ATTR_XMLNS

Constantes de tipo de node do Tidy
Constante | Descrição
TIDY_NODETYPE_ROOT | root node
TIDY_NODETYPE_DOCTYPE | doctype
TIDY_NODETYPE_COMMENT | Comentário HTML
TIDY_NODETYPE_PROCINS | Processamento de instrução
TIDY_NODETYPE_TEXT | Texto
TIDY_NODETYPE_START | Tag inicial
TIDY_NODETYPE_END | Tag final
TIDY_NODETYPE_STARTEND | Tag vazia
TIDY_NODETYPE_CDATA | CDATA
TIDY_NODETYPE_SECTION | Seção XML
TIDY_NODETYPE_ASP | Código ASP
TIDY_NODETYPE_JSTE | Código JSTE
TIDY_NODETYPE_PHP | Código PHP
TIDY_NODETYPE_XMLDECL | Declaração XML

Tipos Resource
Exemplos
Tidy


Exemplos
Tidy
PHP Manual

Exemplos

Índice

  • Exemplos
Constantes pré-definidas
Exemplos
Tidy


Exemplos
Funções do Tidy
Exemplos
PHP Manual

Exemplos

Este exemplo simples mostra o básico do uso do Tidy.

Exemplo #1 Básico uso do Tidy

<?php
ob_start();
?>
<html>a html document</html>
<?php
$html = ob_get_clean();

// Specify configuration
$config = array(
           'indent'         => true,
           'output-xhtml'   => true,
           'wrap'           => 200);

// Tidy
$tidy = new tidy;
$tidy->parseString($html, $config, 'utf8');
$tidy->cleanRepair();

// Output
echo $tidy;
?>

Exemplos
Funções do Tidy
Exemplos
PHP Manual


Funções do Tidy

Classes pré-definidas

tidyNode

Propriedades

  • value - o valor da tag (e.g. the html text)

  • name - o nome da tag (e.g. html, a, etc..)

  • type - o tipo de node (uma das constantes acima, e.g. TIDY_NODETYPE_PHP)

  • line* - a linha onde o node inicia

  • column* - a coluna onde o node inicia

  • proprietary* - TRUE se o node refere-se a uma tag proprietária

  • id - o ID da tag (um das constantes acima, e.g. TIDY_TAG_FRAME)

  • attribute - um array com os atributos do node atual, ou NULL se não existir algum

  • child - um array com o filho do tidyNodes, ou NULL se não existir algum

Nota:

As propriedades marcadas com * estão disponíveis somente a partir do PHP 5.1.0.

Índice

  • ob_tidyhandler — ob_start callback function to repair the buffer
  • tidy_access_count — Returns the Number of Tidy accessibility warnings encountered for specified document
  • tidy_config_count — Returns the Number of Tidy configuration errors encountered for specified document
  • tidy_error_count — Returns the Number of Tidy errors encountered for specified document
  • tidy_get_error_buffer — Return warnings and errors which occurred parsing the specified document
  • tidy_get_output — Return a string representing the parsed tidy markup
  • tidy_load_config — Load an ASCII Tidy configuration file with the specified encoding
  • tidy_reset_config — Restore Tidy configuration to default values
  • tidy_save_config — Save current settings to named file
  • tidy_set_encoding — Set the input/output character encoding for parsing markup
  • tidy_setopt — Updates the configuration settings for the specified tidy document
  • tidy_warning_count — Returns the Number of Tidy warnings encountered for specified document
Exemplos
ob_tidyhandler
Tidy


ob_start callback function to repair the buffer

Funções do Tidy
tidy_access_count
Funções do Tidy
PHP Manual

ob_tidyhandler

(PHP 5)

ob_tidyhandler — ob_start callback function to repair the buffer

Descrição

string ob_tidyhandler ( string $input [, int $mode ] )

Callback function for ob_start() to repair the buffer.

Parâmetros

input

The buffer.

mode

The buffer mode.

Valor Retornado

Returns the modified buffer.

Exemplos

Exemplo #1 ob_tidyhandler() example

<?php
ob_start('ob_tidyhandler');

echo '<p>test</i>';
?>

O exemplo acima irá imprimir:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title></title>
</head>
<body>
<p>test</p>
</body>
</html>

Veja Também

  • ob_start() - Ativa o buffer de saída

Funções do Tidy
tidy_access_count
Funções do Tidy


Returns the Number of Tidy accessibility warnings encountered for specified document

ob_tidyhandler
tidy_config_count
Funções do Tidy
PHP Manual

tidy_access_count

(PHP 5, PECL tidy >= 0.5.2)

tidy_access_count — Returns the Number of Tidy accessibility warnings encountered for specified document

Descrição

int tidy_access_count ( tidy $object )

tidy_access_count() returns the number of accessibility warnings found for the specified document.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the number of warnings.

Exemplos

Exemplo #1 tidy_access_count() example

<?php

$html ='<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html><head><title>Title</title></head>
<body>

<p><img src="img.png"></p>

</body></html>';

// select the accessibility check level: 1, 2 or 3
$config = array('accessibility-check' => 3);

$tidy = new tidy();
$tidy->parseString($html, $config);
$tidy->cleanRepair();

/* Never forget to call this! */
$tidy->diagnose();

echo tidy_access_count($tidy); //5

?>

Notas

Nota:

Due to the design of the TidyLib, you must call tidy_diagnose() before tidy_access_count() or it will return always 0. You must also need to enable the accessibility-check option.

Veja Também

  • tidy_error_count() - Returns the Number of Tidy errors encountered for specified document
  • tidy_warning_count() - Returns the Number of Tidy warnings encountered for specified document

ob_tidyhandler
tidy_config_count
Funções do Tidy


Returns the Number of Tidy configuration errors encountered for specified document

tidy_access_count
tidy_error_count
Funções do Tidy
PHP Manual

tidy_config_count

(PHP 5, PECL tidy >= 0.5.2)

tidy_config_count — Returns the Number of Tidy configuration errors encountered for specified document

Descrição

int tidy_config_count ( tidy $object )

Returns the number of errors encountered in the configuration of the specified tidy object.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the number of errors.

Exemplos

Exemplo #1 tidy_config_count() example

<?php
$html = '<p>test</I>';

$config = array('doctype' => 'bogus');

$tidy = tidy_parse_string($html, $config);

/* This outputs 1, because 'bogus' isn't a valid doctype */
echo tidy_config_count($tidy);
?>

tidy_access_count
tidy_error_count
Funções do Tidy


Returns the Number of Tidy errors encountered for specified document

tidy_config_count
tidy_get_error_buffer
Funções do Tidy
PHP Manual

tidy_error_count

(PHP 5, PECL tidy >= 0.5.2)

tidy_error_count — Returns the Number of Tidy errors encountered for specified document

Descrição

int tidy_error_count ( tidy $object )

Returns the number of Tidy errors encountered for the specified document.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the number of errors.

Exemplos

Exemplo #1 tidy_error_count() example

<?php
$html = '<p>test</i>
<bogustag>bogus</bogustag>';

$tidy = tidy_parse_string($html);

echo tidy_error_count($tidy) . "\n"; //1

echo $tidy->errorBuffer;
?>

O exemplo acima irá imprimir:

1
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 1 column 8 - Warning: discarding unexpected </i>
line 2 column 1 - Error: <bogustag> is not recognized!
line 2 column 1 - Warning: discarding unexpected <bogustag>
line 2 column 16 - Warning: discarding unexpected </bogustag>
line 1 column 1 - Warning: inserting missing 'title' element

Veja Também

  • tidy_access_count() - Returns the Number of Tidy accessibility warnings encountered for specified document
  • tidy_warning_count() - Returns the Number of Tidy warnings encountered for specified document
tidy_config_count
tidy_get_error_buffer
Funções do Tidy


Return warnings and errors which occurred parsing the specified document

tidy_error_count
tidy_get_output
Funções do Tidy
PHP Manual

tidy_get_error_buffer

(PHP 5, PECL tidy >= 0.5.2)

tidy_get_error_buffer — Return warnings and errors which occurred parsing the specified document

Descrição

Procedural style:

string tidy_get_error_buffer ( tidy $object )

Object oriented style (property):

string $errorBuffer;

Returns warnings and errors which occurred parsing the specified document.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the error buffer as a string.

Exemplos

Exemplo #1 tidy_get_error_buffer() example

<?php
$html = '<p>paragraph</p>';

$tidy = tidy_parse_string($html);

echo tidy_get_error_buffer($tidy);
/* or in OO: */
echo $tidy->errorBuffer;
?>

O exemplo acima irá imprimir:

line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 1 column 1 - Warning: inserting missing 'title' element

Veja Também

  • tidy_access_count() - Returns the Number of Tidy accessibility warnings encountered for specified document
  • tidy_error_count() - Returns the Number of Tidy errors encountered for specified document
  • tidy_warning_count() - Returns the Number of Tidy warnings encountered for specified document
tidy_error_count
tidy_get_output
Funções do Tidy


Return a string representing the parsed tidy markup

tidy_get_error_buffer
tidy_load_config
Funções do Tidy
PHP Manual

tidy_get_output

(PHP 5, PECL tidy >= 0.5.2)

tidy_get_output — Return a string representing the parsed tidy markup

Descrição

string tidy_get_output ( tidy $object )

Gets a string with the repaired html.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the parsed tidy markup.

Exemplos

Exemplo #1 tidy_get_output() example

<?php

$html = '<p>paragraph</i>';
$tidy = tidy_parse_string($html);

$tidy->cleanRepair();

echo tidy_get_output($tidy);
?>

O exemplo acima irá imprimir:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title></title>
</head>
<body>
<p>paragraph</p>
</body>
</html>

tidy_get_error_buffer
tidy_load_config
Funções do Tidy


Load an ASCII Tidy configuration file with the specified encoding

tidy_get_output
tidy_reset_config
Funções do Tidy
PHP Manual

tidy_load_config

(PECL tidy >= 0.5.2)

tidy_load_config — Load an ASCII Tidy configuration file with the specified encoding

Descrição

void tidy_load_config ( string $filename , string $encoding )

Loads a Tidy configuration file, with the specified encoding.

Parâmetros

filename

encoding

Valor Retornado

Não há valor retornado.

Notas

Nota: Esta função somente estava disponível com o Tidy 1.0. Ela se tornou obsoleta com o Tidy 2.0, e por isso foi removida.

tidy_get_output
tidy_reset_config
Funções do Tidy


Restore Tidy configuration to default values

tidy_load_config
tidy_save_config
Funções do Tidy
PHP Manual

tidy_reset_config

(PECL tidy >= 0.7.0)

tidy_reset_config — Restore Tidy configuration to default values

Descrição

bool tidy_reset_config ( void )

This function restores the Tidy configuration to the default values.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função somente estava disponível com o Tidy 1.0. Ela se tornou obsoleta com o Tidy 2.0, e por isso foi removida.

tidy_load_config
tidy_save_config
Funções do Tidy


Save current settings to named file

tidy_reset_config
tidy_set_encoding
Funções do Tidy
PHP Manual

tidy_save_config

(PECL tidy >= 0.5.2)

tidy_save_config — Save current settings to named file

Descrição

bool tidy_save_config ( string $filename )

Saves current settings to the specified file. Only non-default values are written.

Parâmetros

filename

Path to the config file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função somente estava disponível com o Tidy 1.0. Ela se tornou obsoleta com o Tidy 2.0, e por isso foi removida.

Veja Também

  • tidy_get_config()
  • tidy_getopt()
  • tidy_reset_config() - Restore Tidy configuration to default values
  • tidy_setopt() - Updates the configuration settings for the specified tidy document

tidy_reset_config
tidy_set_encoding
Funções do Tidy


Set the input/output character encoding for parsing markup

tidy_save_config
tidy_setopt
Funções do Tidy
PHP Manual

tidy_set_encoding

(PECL tidy >= 0.5.2)

tidy_set_encoding — Set the input/output character encoding for parsing markup

Descrição

bool tidy_set_encoding ( string $encoding )

Sets the encoding for input/output documents.

Parâmetros

encoding

The encoding parameter sets the encoding for input/output documents. The possible values for encoding are: ascii, latin0, latin1, raw, utf8, iso2022, mac, win1252, ibm858, utf16, utf16le, utf16be, big5, and shiftjis.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função somente estava disponível com o Tidy 1.0. Ela se tornou obsoleta com o Tidy 2.0, e por isso foi removida.

tidy_save_config
tidy_setopt
Funções do Tidy


Updates the configuration settings for the specified tidy document

tidy_set_encoding
tidy_warning_count
Funções do Tidy
PHP Manual

tidy_setopt

(PECL tidy >= 0.5.2)

tidy_setopt — Updates the configuration settings for the specified tidy document

Descrição

bool tidy_setopt ( string $option , mixed $value )

tidy_setopt() updates the specified option with a new value.

Parâmetros

option

The tidy option name. A list of available configuration options may be found at: » http://tidy.sourceforge.net/docs/quickref.html.

value

The tidy option name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 tidy_setopt() example

<?php
$html = '<p>test</i>';

$tidy = tidy_parse_string($html);

tidy_setopt('indent', FALSE);
?>

Notas

Nota: Esta função somente estava disponível com o Tidy 1.0. Ela se tornou obsoleta com o Tidy 2.0, e por isso foi removida.

Veja Também

  • tidy_getopt()
  • tidy_get_config()
  • tidy_reset_config() - Restore Tidy configuration to default values
  • tidy_save_config() - Save current settings to named file
tidy_set_encoding
tidy_warning_count
Funções do Tidy


Returns the Number of Tidy warnings encountered for specified document

tidy_setopt
Tokenizer
Funções do Tidy
PHP Manual

tidy_warning_count

(PHP 5, PECL tidy >= 0.5.2)

tidy_warning_count — Returns the Number of Tidy warnings encountered for specified document

Descrição

int tidy_warning_count ( tidy $object )

Returns the number of Tidy warnings encountered for the specified document.

Parâmetros

object

O objeto Tidy.

Valor Retornado

Returns the number of warnings.

Exemplos

Exemplo #1 tidy_warning_count() example

<?php
$html = '<p>test</i>
<bogustag>bogus</bogustag>';

$tidy = tidy_parse_string($html);

echo tidy_error_count($tidy) . "\n"; //1
echo tidy_warning_count($tidy) . "\n"; //5
?>

Veja Também

  • tidy_error_count() - Returns the Number of Tidy errors encountered for specified document
  • tidy_access_count() - Returns the Number of Tidy accessibility warnings encountered for specified document

tidy_setopt
Tokenizer
Funções do Tidy


Tokenizer

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da Tokenizer
    • token_get_all — Divide um dado fonte em tokens do PHP
    • token_name — Pega o nome simbólico de um dado token do PHP
tidy_warning_count
Introdução
Outras Básicas Extensões


Introdução

As funções de tokenizer formam uma interface para o tokenizer do PHP imbutido no Engine Zend. Usando essas funções você pode escrever ferramentas próprias para análise e modificação de código PHP sem ter que lidar com a especificação da linguagem em um nível léxico.

Veja também o apêndice sobre tokens.

Tokenizer
Instalação/Configuração
Tokenizer


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Tokenizer


Instalação

Começando no PHP 4.3.0, essas funções estão habilitadas a menos que seja dito o contrário. Para versões anteriores, você tem que configurar e compilar o PHP com --enable-tokenizer . Você pode desabilitar suporte à extensão tokenizer com --disable-tokenizer .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota: Suporte integrado para tokenizer está disponível a partir do PHP 4.3.0.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Quando a extensão for ou compilado no PHP ou carregada dinamicamente em tempo de execução, os tokens listados em List of Parser Tokens são definidos como constantes.

Tipos Resource
Exemplos
Tokenizer


Exemplos

Aqui está um exemplo simples de scripts PHP usando o tokenizer que lerá um arquivo PHP, retirará todos os comentários do fonte e imprimirá apenas o código puro.

Exemplo #1 Retirando os comentários com o tokenizer

<?php
/*
* T_ML_COMMENT does not exist in PHP 5.
* The following three lines define it in order to
* preserve backwards compatibility.
*
* The next two lines define the PHP 5 only T_DOC_COMMENT,
* which we will mask as T_ML_COMMENT for PHP 4.
*/
if (!defined('T_ML_COMMENT')) {
   define('T_ML_COMMENT', T_COMMENT);
} else {
   define('T_DOC_COMMENT', T_ML_COMMENT);
}

$source = file_get_contents('example.php');
$tokens = token_get_all($source);

foreach ($tokens as $token) {
   if (is_string($token)) {
       // simple 1-character token
       echo $token;
   } else {
       // token array
       list($id, $text) = $token;

       switch ($id) {
           case T_COMMENT:
           case T_ML_COMMENT: // we've defined this
           case T_DOC_COMMENT: // and this
               // no action on comments
               break;

           default:
               // anything else -> output "as is"
               echo $text;
               break;
       }
   }
}
?>
Constantes pré-definidas
Funções da Tokenizer
Tokenizer


Funções da Tokenizer

Índice

  • token_get_all — Divide um dado fonte em tokens do PHP
  • token_name — Pega o nome simbólico de um dado token do PHP
Exemplos
token_get_all
Tokenizer


Divide um dado fonte em tokens do PHP

Funções da Tokenizer
token_name
Funções da Tokenizer
PHP Manual

token_get_all

(PHP 4 >= 4.2.0, PHP 5)

token_get_all — Divide um dado fonte em tokens do PHP

Descrição

array token_get_all ( string $source )

token_get_all() avalia do o fonte source em tokens da linguagem PHP usando o avaliador léxico do Zend engine.

Para uma lista dos tokens do avaliador, veja List of Parser Tokens, ou use token_name() para traduzir um valor de um token para sua representação em formato string.

Parâmetros

source

O código-fonte do PHP à ser avaliado.

Valor Retornado

Um array de identificadores de tokens. Cada identificador de token individual ou é um caracter único (ex.: ;, ., >, !, etc...), ou um array com três elementos contendo o índice do token no elemento 0, a string contendo o token original no elemento 1 e o número da linha no elemento 2.

Exemplos

Exemplo #1 Exemplo de uso de token_get_all()

<?php
$tokens = token_get_all('<?php'); // => array(array(T_OPEN_TAG, '<?'));
$tokens = token_get_all('<?php echo; ?>'); /* => array(
                                                  array(T_OPEN_TAG, '<?php'),
                                                  array(T_ECHO, 'echo'),
                                                  ';',
                                                  array(T_CLOSE_TAG, '?>') ); */
/* Note no exemplo a seguir que a string é avaliada com T_INLINE_HTML
   ao invés de esperado T_COMMENT (T_ML_COMMENT no PHP <5).
   Isso é porque nenhuma tag de abertura/fechamento foi usada no "código" provido.
   Isso seria equivalente a coloar comentários fora das tags <?php ?> em um arquivo normal. */
$tokens = token_get_all('/* comment */'); // => array(array(T_INLINE_HTML, '/* comment */'));
?>

Histórico

Versão | Descrição
5.2.2 | Números de linha são retornados no elemento 2

Funções da Tokenizer
token_name
Funções da Tokenizer


Pega o nome simbólico de um dado token do PHP

token_get_all
URLs
Funções da Tokenizer
PHP Manual

token_name

(PHP 4 >= 4.2.0, PHP 5)

token_name — Pega o nome simbólico de um dado token do PHP

Descrição

string token_name ( int $token )

token_name() Pega o nome simbólico para o token do PHP.

Parâmetros

token

O valor do token.

Valor Retornado

O nome simbólico do token passado como parâmetro. O nome retornado é o mesmo nome da constante definida pelo token.

Exemplos

Exemplo #1 Exemplo de token_name()

<?php
// 260 é o valor do token T_REQUIRE
echo token_name(260);        // -> "T_REQUIRE"

// uma constante token é igual ao seu próprio nome
echo token_name(T_FUNCTION); // -> "T_FUNCTION"
?>

Veja Também

  • Lista de Tokens do Avaliador

token_get_all
URLs
Funções da Tokenizer


URLs

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • URL Funções
    • base64_decode — Decodifica dados codificados com MIME base64
    • base64_encode — Codifica dados com MIME base64
    • get_headers — Retorna todos os cabeçalhos enviados pelo servidor em resposta à requisição HTTP
    • get_meta_tags — Extrai as informações das tag meta de um arquivo e retorna como uma matriz
    • http_build_query — Gera a string de consulta (query) em formato URL
    • parse_url — Interpreta uma URL e retorna os seus componentes
    • rawurldecode — Decodifica uma URL
    • rawurlencode — Codifica uma URL de acordo com RFC 1738
    • urldecode — Decodifica uma URL codificada
    • urlencode — Codifica uma URL
token_name
Introdução
Outras Básicas Extensões


Introdução

Lidando com URLs: codificando, decodificando e interpretando.

URLs
Instalação/Configuração
URLs


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
URLs


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

As seguintes constantes são para uso com parse_url() e estão disponíveis desde o PHP 5.1.2.

PHP_URL_SCHEME (integer)
PHP_URL_HOST (integer)
PHP_URL_PORT (integer)
PHP_URL_USER (integer)
PHP_URL_PASS (integer)
PHP_URL_PATH (integer)
PHP_URL_QUERY (integer)
PHP_URL_FRAGMENT (integer)
Tipos Resource
URL Funções
URLs


URL Funções

Índice

  • base64_decode — Decodifica dados codificados com MIME base64
  • base64_encode — Codifica dados com MIME base64
  • get_headers — Retorna todos os cabeçalhos enviados pelo servidor em resposta à requisição HTTP
  • get_meta_tags — Extrai as informações das tag meta de um arquivo e retorna como uma matriz
  • http_build_query — Gera a string de consulta (query) em formato URL
  • parse_url — Interpreta uma URL e retorna os seus componentes
  • rawurldecode — Decodifica uma URL
  • rawurlencode — Codifica uma URL de acordo com RFC 1738
  • urldecode — Decodifica uma URL codificada
  • urlencode — Codifica uma URL
Constantes pré-definidas
base64_decode
URLs


Decodifica dados codificados com MIME base64

URL Funções
base64_encode
URL Funções
PHP Manual

base64_decode

(PHP 4, PHP 5)

base64_decode — Decodifica dados codificados com MIME base64

Descrição

string base64_decode ( string $data [, bool $strict ] )

Decodifica uma informação base64 data.

Parâmetros

data

A informação a ser decodificada.

strict

Retorna FALSE se a entrada contém espaço ou algum outro separador.

Valor Retornado

Retorna a informação original ou FALSE em falha. O dado retornado pode ser binário.

Histórico

Versão | Descrição
5.2.0 | Adicionado strict

Exemplos

Exemplo #1 Exemplo da base64_decode()

<?php
$str = 'VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==';
echo base64_decode($str);
?>

O exemplo acima irá imprimir:

This is an encoded string

Veja Também

  • base64_encode() - Codifica dados com MIME base64
  • » RFC 2045 section 6.8

URL Funções
base64_encode
URL Funções


Codifica dados com MIME base64

base64_decode
get_headers
URL Funções
PHP Manual

base64_encode

(PHP 4, PHP 5)

base64_encode — Codifica dados com MIME base64

Descrição

string base64_encode ( string $data )

Codifica a dada data com base64.

Esta codificação é designada para que dados binários durem no transporte sobre camadas de transorte que não são 8-bit clean, como mensagens de e-mail.

Dados codificados na Base-64 tem aproximadamente 33% mais espaço que dos dados originais.

Parâmetros

data

A informação a ser codificada.

Valor Retornado

A informação codificada, como uma string.

Exemplos

Exemplo #1 Exemplo base64_encode()

<?php
  $str = 'This is an encoded string';
  echo base64_encode($str);
?>

O exemplo acima irá imprimir:

VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==

Veja Também

  • base64_decode() - Decodifica dados codificados com MIME base64
  • chunk_split() - Divide uma string em pequenos pedaços
  • convert_uuencode() - Codifica com uuencode uma string
  • Seção 6.8 do » RFC 2045

base64_decode
get_headers
URL Funções


Retorna todos os cabeçalhos enviados pelo servidor em resposta à requisição HTTP

base64_encode
get_meta_tags
URL Funções
PHP Manual

get_headers

(PHP 5)

get_headers — Retorna todos os cabeçalhos enviados pelo servidor em resposta à requisição HTTP

Descrição

array get_headers ( string $url [, int $format ] )

get_headers() retorna um array com os cabeçalhos enviados pelo servidor em resposta à requisição HTTP.

Parâmetros

url

A URL alvo.

format

Se o parâmetro opcional format tiver valor 1, get_headers() avalia a resposta e configura as chaves do array.

Valor Retornado

Retorna um array indexado ou associativo com os cabeçalhos, ou FALSE em caso de falha.

Histórico

Versão | Descrição
5.1.3 | Essa função agora usa o contexto de streaming padrão, que pode ser alterado com a função stream_context_get_default().

Exemplos

Exemplo #1 Exemplo de uso de get_headers()

<?php
$url = 'http://www.example.com';

print_r(get_headers($url));

print_r(get_headers($url, 1));
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => HTTP/1.1 200 OK
    [1] => Date: Sat, 29 May 2004 12:28:13 GMT
    [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
    [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
    [4] => ETag: "3f80f-1b6-3e1cb03b"
    [5] => Accept-Ranges: bytes
    [6] => Content-Length: 438
    [7] => Connection: close
    [8] => Content-Type: text/html
)

Array
(
    [0] => HTTP/1.1 200 OK
    [Date] => Sat, 29 May 2004 12:28:14 GMT
    [Server] => Apache/1.3.27 (Unix)  (Red-Hat/Linux)
    [Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT
    [ETag] => "3f80f-1b6-3e1cb03b"
    [Accept-Ranges] => bytes
    [Content-Length] => 438
    [Connection] => close
    [Content-Type] => text/html
)

base64_encode
get_meta_tags
URL Funções


Extrai as informações das tag meta de um arquivo e retorna como uma matriz

get_headers
http_build_query
URL Funções
PHP Manual

get_meta_tags

(PHP 4, PHP 5)

get_meta_tags — Extrai as informações das tag meta de um arquivo e retorna como uma matriz

Descrição

array get_meta_tags ( string $filename [, bool $use_include_path ] )

Abre filename e interpreta linha a linha procurando por tags <meta> no arquivo. Este pode ser um arquivo local ou uma URL. A interpretação termina em </head>.

Estabelecendo use_include_path em TRUE fará com que o PHP tente abrir o arquivo dentro do include path como na diretiva include_path. Isto é usado para arquivos locais, não URLs.

Exemplo #1 O que get_meta_tags() interpreta

<meta name="author" content="name">
<meta name="keywords" content="php documentation">
<meta name="DESCRIPTION" content="a php manual">
<meta name="geo.position" content="49.33;-86.59">
</head> <!-- parsing stops here -->
(preste atenção aos finais de linha - PHP usa uma função nativa para interpretar, então um arquivo do Mac não irá funcionar).

O valor da propriedade name se torna a chave, o valor da propriedade content se torna o valor na matriz retornada, então você pode facilmente usar as funções de matriz para trabalhar com os valores. Caracteres especiais na propriedade name são substituidos por "_", o resto é convertido para minúsculas. Se duas tags meta tiverem o mesmo nome, apenas a ultima é retornada.

Exemplo #2 O que get_meta_tags() retorna

<?php
// Assumindo que as tags acima estão em www.example.com
$tags = get_meta_tags('http://www.example.com/');

// Veja que todas as chaves estão agora em minúsculas, e
// que agora o . foi substituido por _ na chave.
echo $tags['author'];       // name
echo $tags['keywords'];     // php documentation
echo $tags['description'];  // a php manual
echo $tags['geo_position']; // 49.33;-86.59
?>

Nota:

Apartir do PHP 4.0.5, get_meta_tags() suporta atributos HTML que não estejam entre aspas.

Veja também htmlentities() e urlencode().

get_headers
http_build_query
URL Funções


Gera a string de consulta (query) em formato URL

get_meta_tags
parse_url
URL Funções
PHP Manual

http_build_query

(PHP 5)

http_build_query — Gera a string de consulta (query) em formato URL

Descrição

string http_build_query ( array $formdata [, string $numeric_prefix [, string $arg_separator ]] )

Gera a string de consulta (query) em formato URL a partir de um array associativo (ou indexado).

Parâmetros

formdata

Pode ser uma array ou objeto contendo propriedades.

O array form pode ser uma estrutura simples, unidimensional, ou um array de arrays (que, por sua vez, pode contar outros array).

numeric_prefix

Se índices numéricos são usados no array base e esse parâmetro for fornecido, o número índice dos elementos será prefixado com seu valor, apenas no array base.

Isso é feito para permitir nomes de variáveis aceitáveis quando os dados forem decodificados pelo PHP ou por outra aplicação CGI posteriormente.

arg_separator

arg_separator.output é usado para separar argumentos, a não que esse parâmetro seja especificado. Nesse caso, o valor passado é usado como separador.

Valor Retornado

Retorna um string no formato de uma URL.

Histórico

Versão | Descrição
5.1.2 | O parâmetro arg_separator foi adicionao.
5.1.3 | colchetes são escapados, ou seja, recebem um caracter de controle.

Exemplos

Exemplo #1 Exemplo de uso de http_build_query()

<?php
$data = array('foo'=>'bar',
              'baz'=>'boom',
              'cow'=>'milk',
              'php'=>'hypertext processor');

echo http_build_query($data); // foo=bar&baz=boom&cow=milk&php=hypertext+processor
echo http_build_query($data, '', '&amp;'); // foo=bar&amp;baz=boom&amp;cow=milk&amp;php=hypertext+processor

?>

Exemplo #2 http_build_query() com elementos indexados numericamente.

<?php
$data = array('foo', 'bar', 'baz', 'boom', 'cow' => 'milk', 'php' =>'hypertext processor');

echo http_build_query($data) . "\n";
echo http_build_query($data, 'myvar_');
?>

O exemplo acima irá imprimir:

0=foo&1=bar&2=baz&3=boom&cow=milk&php=hypertext+processor
myvar_0=foo&myvar_1=bar&myvar_2=baz&myvar_3=boom&cow=milk&php=hypertext+processor

Exemplo #3 http_build_query() com arrays complexos

<?php
$data = array('user'=>array('name'=>'Bob Smith',
                            'age'=>47,
                            'sex'=>'M',
                            'dob'=>'5/12/1956'),
              'pastimes'=>array('golf', 'opera', 'poker', 'rap'),
              'children'=>array('bobby'=>array('age'=>12,
                                               'sex'=>'M'),
                                'sally'=>array('age'=>8,
                                               'sex'=>'F')),
              'CEO');

echo http_build_query($data, 'flags_');
?>

isso resultará : (quebra de linhas para legibilidade)

user%5Bname%5D=Bob+Smith&user%5Bage%5D=47&user%5Bsex%5D=M&
user%5Bdob%5D=5%2F12%2F1956&pastimes%5B0%5D=golf&pastimes%5B1%5D=opera&
pastimes%5B2%5D=poker&pastimes%5B3%5D=rap&children%5Bbobby%5D%5Bage%5D=12&
children%5Bbobby%5D%5Bsex%5D=M&children%5Bsally%5D%5Bage%5D=8&
children%5Bsally%5D%5Bsex%5D=F&flags_0=CEO

Nota:

Apenas o elemento indexado numericamente no array base "CEO" recebeu um prefixo. Os outros índices numéricos, encontrados abaixo de "pastimes", não requerem uma string de prefixo para serem nomes de variáveis aceitáveis.

Exemplo #4 Usando http_build_query() com um objeto

<?php
class myClass {
    var $foo;
    var $baz;

    function myClass() {
        $this->foo = 'bar';
        $this->baz = 'boom';
    }
}

$data = new myClass();

echo http_build_query($data); // foo=bar&baz=boom

?>

Veja Também

  • parse_str() - Converte a string em variáveis
  • parse_url() - Interpreta uma URL e retorna os seus componentes
  • urlencode() - Codifica uma URL
  • array_walk() - Aplica uma determinada funcão em cada elemento de um array

get_meta_tags
parse_url
URL Funções


Interpreta uma URL e retorna os seus componentes

http_build_query
rawurldecode
URL Funções
PHP Manual

parse_url

(PHP 4, PHP 5)

parse_url — Interpreta uma URL e retorna os seus componentes

Descrição

array parse_url ( string $url )

Esta função retorna uma matriz associativa retornando os vários componentes que estão presentes em uma url. Se um dos elementos não estiver presente, não será criada uma entrada para ele. Os componemtes são:

  • scheme - ex. http
  • host
  • port
  • user
  • pass
  • path
  • query - após a interogação ?
  • fragment - após a cancela #

Esta função não é um meio para validar a URL indicada, ela somente quebra nas partes listadas. URLs parciais também são aceitas, parse_url() tenta o melhor para interpreta-las corretamente.

Nota:

Esta função não funciona com URLs relativas.

Exemplo #1 Exemplo parse_url()

$ php -r 'print_r(parse_url("http://username:password@hostname/path?arg=value#anchor"));'
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)

$ php -r 'print_r(parse_url("http://invalid_host..name/"));'
Array
(
[scheme] => http
[host] => invalid_host..name
[path] => /
)

Veja também pathinfo(), parse_str(), dirname(), e basename().

http_build_query
rawurldecode
URL Funções


Decodifica uma URL

parse_url
rawurlencode
URL Funções
PHP Manual

rawurldecode

(PHP 4, PHP 5)

rawurldecode — Decodifica uma URL

Descrição

string rawurldecode ( string $str )

Retorna uma string em que as sequencias com o sinal porcento (%) seguida por dois digitos hexadecimais são substituidas pelos caracteres correspondentes.

Parâmetros

str

A URL a ser decodificada.

Valor Retornado

Retorna a URL decodificada, como uma string.

Exemplos

Exemplo #1 Exemplo da rawurldecode()

<?php

echo rawurldecode('foo%20bar%40baz'); // foo bar@baz

?>

Notas

Nota:

rawurldecode() não decodifica os sinais de adição ('+') em espaços. A função urldecode() faz isto.

Veja Também

  • rawurlencode() - Codifica uma URL de acordo com RFC 1738
  • urldecode() - Decodifica uma URL codificada
  • urlencode() - Codifica uma URL

parse_url
rawurlencode
URL Funções


Codifica uma URL de acordo com RFC 1738

rawurldecode
urldecode
URL Funções
PHP Manual

rawurlencode

(PHP 4, PHP 5)

rawurlencode — Codifica uma URL de acordo com RFC 1738

Descrição

string rawurlencode ( string $str )

Codifica uma dada string de acordo com » RFC 1738.

Parâmetros

str

A URL a ser codificada.

Valor Retornado

Retorna uma string na qual todos os caracteres alfa-numericos com exceção de -_. foram substituidos com um sinal de porcento (%) seguido de dois digitos hexadecimais. Esta codificação esta descrita na » RFC 1738 para proteger caracteres de serem interpretados como delimitadores de URL, e para proteger URLs de serem embaralhadas por transmissão em meios com conversões de caracteres (como alguns sistemas de email).

Exemplos

Exemplo #1 Incluindo uma senha em uma URL de FTP

<?php
echo '<a href="ftp://user:', rawurlencode('foo @+%/'),
     '@ftp.example.com/x.txt">';
?>

O exemplo acima irá imprimir:

<a href="ftp://user:foo%20%40%2B%25%2F@ftp.example.com/x.txt">

Ou, se você quiser passar informação no componente PATH_INFO se uma URL:

Exemplo #2 Exemplo 2 de rawurlencode()

<?php
echo '<a href="http://example.com/department_list_script/',
    rawurlencode('sales and marketing/Miami'), '">';
?>

O exemplo acima irá imprimir:

<a href="http://example.com/department_list_script/sales%20and%20marketing%2FMiami">

Veja Também

  • rawurldecode() - Decodifica uma URL
  • urldecode() - Decodifica uma URL codificada
  • urlencode() - Codifica uma URL
  • » RFC 1738

rawurldecode
urldecode
URL Funções


Decodifica uma URL codificada

rawurlencode
urlencode
URL Funções
PHP Manual

urldecode

(PHP 4, PHP 5)

urldecode — Decodifica uma URL codificada

Descrição

string urldecode ( string $str )

Decodifica qualquer %## codificado na string.

Parâmetros

str

A string a ser decodificada.

Valor Retornado

Retorna a string decodificada.

Exemplos

Exemplo #1 Exemplo da urldecode()

<?php
$a = split ('&amp;', $querystring);
$i = 0;
while ($i &lt; count ($a)) {
    $b = split ('=', $a [$i]);
    echo 'Value for parameter ', htmlspecialchars (urldecode ($b [0])),
         ' is ', htmlspecialchars (urldecode ($b [1])), "&lt;BR>";
    $i++;
}
?>

Veja Também

  • urlencode() - Codifica uma URL
  • rawurlencode() - Codifica uma URL de acordo com RFC 1738
  • rawurldecode() - Decodifica uma URL

rawurlencode
urlencode
URL Funções


Codifica uma URL

urldecode
V8js
URL Funções
PHP Manual

urlencode

(PHP 4, PHP 5)

urlencode — Codifica uma URL

Descrição

string urlencode ( string $str )

Retorna uma string em que todos os caracteres não-alfanuméricos com exceção de -_. são substituidos com um sinal de porcento (%) siguido por dois digitos hexadecimais e espaços codificados como um sinal de (+). É codificada do mesmo jeito que dados vindos de um formulário WWW é codificado, isto é, da mesma maneira que application/x-www-form-urlencoded. Isto é diferente da codificação RFC1738 (veja rawurlencode()) nesta por razões historicas, espaços são codificados como sinais de mais(+). Esta função é conveniente para codificar uma string que será passada como parte de uma URL, como um meio de passar variáveis para a próxima pagina:

Exemplo #1 Exemplo urlencode()

<?php
echo '<a href="mycgi?foo=', urlencode($userinput), '">';
?>

Nota: Seja cuidadoso com variaveis que sejam iguais a entidades HTML. Coisas como &amp, &copy e &pound são interpretados pelo browser e a entidade atual é usada ao invés do nome de variavel desejado. Isto é um problema obvio que o W3C vem falando a todos a anos. A referrência esta aqui: » http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2. O PHP suporta que se mude o separador de argumentos para o ponto e vírgula sugerido pelo W3C através da diretiva de configuração arg_separator. Infelizmente a maior parte dos aplicativos não envia os dados neste formato. Um meio mais portável é usar &amp; ao invés de & como separador. Você não precisa mudar arg_separator para isto. Deixe como &, mas simplesmente codifique as suar URLs usando htmlentities(urlencode($data)).

Exemplo #2 Exemplo urlencode() e htmlentities()

<?php
echo '<a href="mycgi?foo=', htmlentities(urlencode($userinput)), '">';
?>

Veja também urldecode(),
htmlentities(),
rawurldecode() e
rawurlencode().

urldecode
V8js
URL Funções


V8 Javascript Engine Integration

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Exemplos
  • V8Js — The V8Js class
    • V8Js::__construct — Construct a new V8Js object
    • V8Js::executeString — Execute a string as Javascript code
    • V8Js::getExtensions — Return an array of registered extensions
    • V8Js::getPendingException — Return pending uncaught Javascript exception
    • V8Js::registerExtension — Register Javascript extensions for V8Js
  • V8JsException — The V8JsException class
    • V8JsException::getJsFileName — The getJsFileName purpose
    • V8JsException::getJsLineNumber — The getJsLineNumber purpose
    • V8JsException::getJsSourceLine — The getJsSourceLine purpose
    • V8JsException::getJsTrace — The getJsTrace purpose
urlencode
Introdução
Outras Básicas Extensões


Introdução

This extension embeds the » V8 Javascript Engine into PHP.

V8js
Instalação/Configuração
V8js


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
V8js


Dependências

PHP 5.3.3+ and V8 library and headers installed in proper paths.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/v8js

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

V8js Opções de Configuração
Nome | Padrão | Modificável | Histórico
v8js.max_disposed_contexts | 25 | PHP_INI_ALL |
v8js.flags |  | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

v8js.max_disposed_contexts integer

Sets limit for disposed contexts before forcing V8 to do garbage collection.

v8js.flags string

Sets V8 command line flags. The list of available flags can be obtained in CLI mode by setting this parameter to --help. Example:

$ php -r 'ini_set("v8js.flags", "--help"); new V8Js;' | less

Nota:

For these flags to be effective in runtime the ini_set() call has to be done before any V8Js objects are instantiated!

Instalação
Tipos Resource
Instalação/Configuração


Exemplos

Basic usage

Exemplo #1 Basic Javascript execution

<?php

$v8 = new V8Js();

/* basic.js */
$JS = <<< EOT
len = print('Hello' + ' ' + 'World!' + "\\n");
len;
EOT;

try {
  var_dump($v8->executeString($JS, 'basic.js'));
} catch (V8JsException $e) {
  var_dump($e);
}

?>

O exemplo acima irá imprimir:

Hello World!
int(13)
Tipos Resource
V8Js
V8js


The V8Js class

Introdução

This is the core class for V8Js extension. Each instance created from this class has own context in which all Javascript is compiled and executed.

See V8Js::__construct() for more information.

Sinopse da classe

V8Js {
/* Constants */
const string V8Js::V8_VERSION ;
const integer V8Js::FLAG_NONE = 1 ;
const integer V8Js::FLAG_FORCE_ARRAY = 2 ;
/* Methods */
__construct ([ string $object_name = "PHP" [, array $variables = array() [, array $extensions = array() [, bool $report_uncaught_exceptions = TRUE ]]]] )
public mixed executeString ( string $script [, string $identifier = "V8Js::executeString()" [, int $flags = V8Js::FLAG_NONE ]] )
public static array getExtensions ( void )
public V8JsException getPendingException ( void )
public static bool registerExtension ( string $extension_name , string $script [, array $dependencies = array() [, bool $auto_enable = FALSE ]] )
}

Constantes pré-definidas

V8Js Node Types

V8Js::V8_VERSION

The V8 Javascript Engine version.

V8Js::FLAG_NONE

No flags.

V8Js::FLAG_FORCE_ARRAY

Forces all JS objects to be associative arrays in PHP.

Índice

  • V8Js::__construct — Construct a new V8Js object
  • V8Js::executeString — Execute a string as Javascript code
  • V8Js::getExtensions — Return an array of registered extensions
  • V8Js::getPendingException — Return pending uncaught Javascript exception
  • V8Js::registerExtension — Register Javascript extensions for V8Js
Exemplos
V8Js::__construct
V8js


Construct a new V8Js object

V8Js
V8Js::executeString
V8Js
PHP Manual

V8Js::__construct

(PECL v8js >= 0.1.0)

V8Js::__construct — Construct a new V8Js object

Descrição

  V8Js::__construct
  ([ string $object_name = "PHP"
 [, array $variables = array()
 [, array $extensions = array()
 [, bool $report_uncaught_exceptions = TRUE
]]]] )

Constructs a new V8Js object.

Parâmetros

object_name

The name of the object passed to Javascript. Defaults to PHP.

variables

Map of PHP variables that will be available in Javascript. Must be an associative array in format array("name-for-js" => "name-of-php-variable"). Defaults to empty array.

extensions

List of extensions registered using V8Js::registerExtension() which should be available in the Javascript context of the created V8Js object.

Nota:

Extensions registered to be enabled automatically do not need to be listed in this array. Also if an extension has dependencies, those dependencies can be omitted as well. Defaults to empty array.

report_uncaught_exceptions

Controls whether uncaught Javascript exceptions are reported immediately or not. Defaults to TRUE. If set to FALSE the uncaught exception can be accessed using V8Js::getPendingException().

Valor Retornado

Returns a new V8Js context object.

V8Js
V8Js::executeString
V8Js


Execute a string as Javascript code

V8Js::__construct
V8Js::getExtensions
V8Js
PHP Manual

V8Js::executeString

(PECL v8js >= 0.1.0)

V8Js::executeString — Execute a string as Javascript code

Descrição

public mixed V8Js::executeString ( string $script [, string $identifier = "V8Js::executeString()" [, int $flags = V8Js::FLAG_NONE ]] )

Compiles and executes the string passed with script as Javascript code.

Parâmetros

script

The code string to be executed.

identifier

Identifier string for the executed code. Used for debugging.

flags

Execution flags. This value must be one of the V8Js::FLAG_* constants, defaulting to V8Js::FLAG_NONE.

  • V8Js::FLAG_NONE: no flags

  • V8Js::FLAG_FORCE_ARRAY: forces all Javascript objects passed to PHP to be associative arrays

Valor Retornado

Returns the last variable instantiated in the Javascript code converted to matching PHP variable type.

V8Js::__construct
V8Js::getExtensions
V8Js


Return an array of registered extensions

V8Js::executeString
V8Js::getPendingException
V8Js
PHP Manual

V8Js::getExtensions

(PECL v8js >= 0.1.0)

V8Js::getExtensions — Return an array of registered extensions

Descrição

public static array V8Js::getExtensions ( void )

This function returns array of Javascript extensions registered using V8Js::registerExtension().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of registered extensions or an empty array if there are none.

V8Js::executeString
V8Js::getPendingException
V8Js


Return pending uncaught Javascript exception

V8Js::getExtensions
V8Js::registerExtension
V8Js
PHP Manual

V8Js::getPendingException

(PECL v8js >= 0.1.0)

V8Js::getPendingException — Return pending uncaught Javascript exception

Descrição

public V8JsException V8Js::getPendingException ( void )

Returns any pending uncaught Javascript exception as V8JsException left from earlier V8Js::executeString() call(s).

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Either V8JsException or NULL.

V8Js::getExtensions
V8Js::registerExtension
V8Js


Register Javascript extensions for V8Js

V8Js::getPendingException
V8JsException
V8Js
PHP Manual

V8Js::registerExtension

(PECL v8js >= 0.1.0)

V8Js::registerExtension — Register Javascript extensions for V8Js

Descrição

public static bool V8Js::registerExtension ( string $extension_name , string $script [, array $dependencies = array() [, bool $auto_enable = FALSE ]] )

Registers passed Javascript script as extension to be used in V8Js contexts.

Parâmetros

extension_name

Name of the extension to be registered.

script

The Javascript code to be registered.

dependencies

Array of extension names the extension to be registered depends on. Any such extension is enabled automatically when this extension is loaded.

Nota:

All extensions, including the dependencies, must be registered before any V8Js are created which use them.

auto_enable

If set to TRUE, the extension will be enabled automatically in all V8Js contexts. Defaults to FALSE.

Valor Retornado

Returns TRUE if extension was registered succesfully, FALSE otherwise.

V8Js::getPendingException
V8JsException
V8Js


The V8JsException class

Introdução

Sinopse da classe

V8JsException extends Exception {
/* Properties */
protected $JsFileName ;
protected $JsLineNumber ;
protected $JsSourceLine ;
protected $JsTrace ;
/* Methods */
final public string getJsFileName ( void )
final public int getJsLineNumber ( void )
final public int getJsSourceLine ( void )
final public string getJsTrace ( void )
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

message

code

file

line

JsFileName

JsLineNumber

JsSourceLine

JsTrace

Índice

  • V8JsException::getJsFileName — The getJsFileName purpose
  • V8JsException::getJsLineNumber — The getJsLineNumber purpose
  • V8JsException::getJsSourceLine — The getJsSourceLine purpose
  • V8JsException::getJsTrace — The getJsTrace purpose
V8Js::registerExtension
V8JsException::getJsFileName
V8js


The getJsFileName purpose

V8JsException
V8JsException::getJsLineNumber
V8JsException
PHP Manual

V8JsException::getJsFileName

(PECL v8js >= 0.1.0)

V8JsException::getJsFileName — The getJsFileName purpose

Descrição

final public string V8JsException::getJsFileName ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

V8JsException
V8JsException::getJsLineNumber
V8JsException


The getJsLineNumber purpose

V8JsException::getJsFileName
V8JsException::getJsSourceLine
V8JsException
PHP Manual

V8JsException::getJsLineNumber

(PECL v8js >= 0.1.0)

V8JsException::getJsLineNumber — The getJsLineNumber purpose

Descrição

final public int V8JsException::getJsLineNumber ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

V8JsException::getJsFileName
V8JsException::getJsSourceLine
V8JsException


The getJsSourceLine purpose

V8JsException::getJsLineNumber
V8JsException::getJsTrace
V8JsException
PHP Manual

V8JsException::getJsSourceLine

(PECL v8js >= 0.1.0)

V8JsException::getJsSourceLine — The getJsSourceLine purpose

Descrição

final public int V8JsException::getJsSourceLine ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

V8JsException::getJsLineNumber
V8JsException::getJsTrace
V8JsException


The getJsTrace purpose

V8JsException::getJsSourceLine
Yaml
V8JsException
PHP Manual

V8JsException::getJsTrace

(PECL v8js >= 0.1.0)

V8JsException::getJsTrace — The getJsTrace purpose

Descrição

final public string V8JsException::getJsTrace ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

V8JsException::getJsSourceLine
Yaml
V8JsException


YAML Data Serialization

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Yaml Funções
    • yaml_emit_file — Send the YAML representation of a value to a file
    • yaml_emit — Returns the YAML representation of a value
    • yaml_parse_file — Parse a YAML stream from a file
    • yaml_parse_url — Parse a Yaml stream from a URL
    • yaml_parse — Parse a YAML stream
V8JsException::getJsTrace
Introdução
Outras Básicas Extensões


Introdução

This extension implements the » YAML Ain't Markup Language (YAML) data serialization standard. Parsing and emiting are handled by the » LibYAML library.

Yaml
Instalação/Configuração
Yaml


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Yaml


Dependências

This extension requires the » LibYAML C library version 0.1.0 or higher to be installed.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/yaml.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Yaml Opções de Configuração
Nome | Padrão | Modificável | Histórico
yaml.decode_binary | 0 | PHP_INI_ALL |
yaml.decode_timestamp | 0 | PHP_INI_ALL |
yaml.output_canonical | 0 | PHP_INI_ALL |
yaml.output_indent | 2 | PHP_INI_ALL |
yaml.output_width | 80 | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

yaml.decode_binary boolean

Off by default, but can be set to on to cause base64 binary encoded entities which have the explicit tag "tag:yaml.org,2002:binary" to be decoded.

yaml.decode_timestamp integer

Controls the decoding of both implicit and explict "tag:yaml.org,2002:timestamp" scalars in the YAML document stream. The default setting of 0 will not apply any decoding. A setting of 1 will use strtotime() to parse the timestamp value as a Unix timestamp. A setting of 2 will use date_create() to parse the timestamp value as DateTime object.

yaml.output_canonical boolean

Off by default, but can be set to on to cause canonical form output.

yaml.output_indent integer

Number of spaces to indent sections. Value should be between 1 and 10.

yaml.output_width integer

Set the preferred line width. -1 means unlimited.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Scalar entity styles usable by yaml_parse() callback methods.
YAML_ANY_SCALAR_STYLE (integer)
YAML_PLAIN_SCALAR_STYLE (integer)
YAML_SINGLE_QUOTED_SCALAR_STYLE (integer)
YAML_DOUBLE_QUOTED_SCALAR_STYLE (integer)
YAML_LITERAL_SCALAR_STYLE (integer)
YAML_FOLDED_SCALAR_STYLE (integer)
Common tags usable by yaml_parse() callback methods.
YAML_NULL_TAG (string)
"tag:yaml.org,2002:null"
YAML_BOOL_TAG (string)
"tag:yaml.org,2002:bool"
YAML_STR_TAG (string)
"tag:yaml.org,2002:str"
YAML_INT_TAG (string)
"tag:yaml.org,2002:int"
YAML_FLOAT_TAG (string)
"tag:yaml.org,2002:float"
YAML_TIMESTAMP_TAG (string)
"tag:yaml.org,2002:timestamp"
YAML_SEQ_TAG (string)
"tag:yaml.org,2002:seq"
YAML_MAP_TAG (string)
"tag:yaml.org,2002:map"
YAML_PHP_TAG (string)
"!php/object"
Encoding types for yaml_emit()
YAML_ANY_ENCODING (integer)
Let the emitter choose an encoding.
YAML_UTF8_ENCODING (integer)
Encode as UTF8.
YAML_UTF16LE_ENCODING (integer)
Encode as UTF16LE.
YAML_UTF16BE_ENCODING (integer)
Encode as UTF16BE.
Linebreak types for yaml_emit()
YAML_ANY_BREAK (integer)
Let emitter choose linebreak character.
YAML_CR_BREAK (integer)
Use \r as break character (Mac style).
YAML_LN_BREAK (integer)
Use \n as break character (Unix style).
YAML_CRLN_BREAK (integer)
Use \r\n as break character (DOS style).
Tipos Resource
Exemplos
Yaml


Exemplos

Exemplo #1 Yaml Example

<?php
$addr = array(
    "given" => "Chris",
    "family"=> "Dumars",
    "address"=> array(
        "lines"=> "458 Walkman Dr.
        Suite #292",
        "city"=> "Royal Oak",
        "state"=> "MI",
        "postal"=> 48046,
      ),
  );
$invoice = array (
    "invoice"=> 34843,
    "date"=> "2001-01-23",
    "bill-to"=> $addr,
    "ship-to"=> $addr,
    "product"=> array(
        array(
            "sku"=> "BL394D",
            "quantity"=> 4,
            "description"=> "Basketball",
            "price"=> 450,
          ),
        array(
            "sku"=> "BL4438H",
            "quantity"=> 1,
            "description"=> "Super Hoop",
            "price"=> 2392,
          ),
      ),
    "tax"=> 251.42,
    "total"=> 4443.52,
    "comments"=> "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.",
    );

// generate a YAML representation of the invoice
$yaml = yaml_emit($invoice);
var_dump($yaml);

// convert the YAML back into a PHP variable
$parsed = yaml_parse($yaml);

// check that roundtrip conversion produced an equivalent structure
var_dump($parsed == $invoice);
?>

O exemplo acima irá imprimir algo similar a:

string(631) "---
invoice: 34843
date: "2001-01-23"
bill-to:
  given: Chris
  family: Dumars
  address:
    lines: |-
      458 Walkman Dr.
              Suite #292
    city: Royal Oak
    state: MI
    postal: 48046
ship-to:
  given: Chris
  family: Dumars
  address:
    lines: |-
      458 Walkman Dr.
              Suite #292
    city: Royal Oak
    state: MI
    postal: 48046
product:
- sku: BL394D
  quantity: 4
  description: Basketball
  price: 450
- sku: BL4438H
  quantity: 1
  description: Super Hoop
  price: 2392
tax: 251.420000
total: 4443.520000
comments: Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.
...
"
bool(true)
Constantes pré-definidas
Yaml Funções
Yaml


Yaml Funções

Índice

  • yaml_emit_file — Send the YAML representation of a value to a file
  • yaml_emit — Returns the YAML representation of a value
  • yaml_parse_file — Parse a YAML stream from a file
  • yaml_parse_url — Parse a Yaml stream from a URL
  • yaml_parse — Parse a YAML stream
Exemplos
yaml_emit_file
Yaml


Send the YAML representation of a value to a file

Yaml Funções
yaml_emit
Yaml Funções
PHP Manual

yaml_emit_file

(PECL yaml >= 0.5.0)

yaml_emit_file — Send the YAML representation of a value to a file

Descrição

bool yaml_emit_file ( string $filename , mixed $data [, int $encoding = YAML_ANY_ENCODING [, int $linebreak = YAML_ANY_BREAK ]] )

Generate a YAML representation of the provided data in the filename.

Parâmetros

filename

Path to the file.

data

The data being encoded. Can be any type except a resource.

encoding

Output character encoding chosen from YAML_ANY_ENCODING, YAML_UTF8_ENCODING, YAML_UTF16LE_ENCODING, YAML_UTF16BE_ENCODING. Defaults to YAML_ANY_ENCODING.

linebreak

Output linebreak style chosen from YAML_ANY_BREAK, YAML_CR_BREAK, YAML_LN_BREAK, YAML_CRLN_BREAK. Defaults to YAML_ANY_BREAK.

Valor Retornado

Returns TRUE on success.

Veja Também

  • yaml_emit() - Returns the YAML representation of a value
  • yaml_parse() - Parse a YAML stream

Yaml Funções
yaml_emit
Yaml Funções


Returns the YAML representation of a value

yaml_emit_file
yaml_parse_file
Yaml Funções
PHP Manual

yaml_emit

(PECL yaml >= 0.5.0)

yaml_emit — Returns the YAML representation of a value

Descrição

string yaml_emit ( mixed $data [, int $encoding = YAML_ANY_ENCODING [, int $linebreak = YAML_ANY_BREAK ]] )

Generate a YAML representation of the provided data.

Parâmetros

data

The data being encoded. Can be any type except a resource.

encoding

Output character encoding chosen from YAML_ANY_ENCODING, YAML_UTF8_ENCODING, YAML_UTF16LE_ENCODING, YAML_UTF16BE_ENCODING. Defaults to YAML_ANY_ENCODING.

linebreak

Output linebreak style chosen from YAML_ANY_BREAK, YAML_CR_BREAK, YAML_LN_BREAK, YAML_CRLN_BREAK. Defaults to YAML_ANY_BREAK.

Valor Retornado

Returns a YAML encoded string on success.

Exemplos

Exemplo #1 yaml_emit() example

<?php
$addr = array(
    "given" => "Chris",
    "family"=> "Dumars",
    "address"=> array(
        "lines"=> "458 Walkman Dr.
        Suite #292",
        "city"=> "Royal Oak",
        "state"=> "MI",
        "postal"=> 48046,
      ),
  );
$invoice = array (
    "invoice"=> 34843,
    "date"=> 980208000,
    "bill-to"=> $addr,
    "ship-to"=> $addr,
    "product"=> array(
        array(
            "sku"=> "BL394D",
            "quantity"=> 4,
            "description"=> "Basketball",
            "price"=> 450,
          ),
        array(
            "sku"=> "BL4438H",
            "quantity"=> 1,
            "description"=> "Super Hoop",
            "price"=> 2392,
          ),
      ),
    "tax"=> 251.42,
    "total"=> 4443.52,
    "comments"=> "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.",
  );
var_dump(yaml_emit($invoice));
?>

O exemplo acima irá imprimir algo similar a:

string(628) "---
invoice: 34843
date: 980208000
bill-to:
  given: Chris
  family: Dumars
  address:
    lines: |-
      458 Walkman Dr.
              Suite #292
    city: Royal Oak
    state: MI
    postal: 48046
ship-to:
  given: Chris
  family: Dumars
  address:
    lines: |-
      458 Walkman Dr.
              Suite #292
    city: Royal Oak
    state: MI
    postal: 48046
product:
- sku: BL394D
  quantity: 4
  description: Basketball
  price: 450
- sku: BL4438H
  quantity: 1
  description: Super Hoop
  price: 2392
tax: 251.420000
total: 4443.520000
comments: Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.
...
"

Veja Também

  • yaml_emit_file() - Send the YAML representation of a value to a file
  • yaml_parse() - Parse a YAML stream

yaml_emit_file
yaml_parse_file
Yaml Funções


Parse a YAML stream from a file

yaml_emit
yaml_parse_url
Yaml Funções
PHP Manual

yaml_parse_file

(PECL yaml >= 0.4.0)

yaml_parse_file — Parse a YAML stream from a file

Descrição

mixed yaml_parse_file ( string $filename [, int $pos = 0 [, int &$ndocs [, array $callbacks ]]] )

Convert all or part of a YAML document stream read from a file to a PHP variable.

Parâmetros

filename

Path to the file.

pos

Document to extract from stream (-1 for all documents, 0 for first document, ...).

ndocs

If ndocs is provided, then it is filled with the number of documents found in stream.

callbacks

Content handlers for YAML nodes. Associative array of YAML tag => callback mappings.

Valor Retornado

Returns the value encoded in input in appropriate PHP type. NULL is returned if the input cannot be decoded. If pos is -1 an array will be returned with one entry for each document found in the stream.

Veja Também

  • yaml_parse() - Parse a YAML stream
  • yaml_parse_url() - Parse a Yaml stream from a URL
  • yaml_emit() - Returns the YAML representation of a value

yaml_emit
yaml_parse_url
Yaml Funções


Parse a Yaml stream from a URL

yaml_parse_file
yaml_parse
Yaml Funções
PHP Manual

yaml_parse_url

(PECL yaml >= 0.4.0)

yaml_parse_url — Parse a Yaml stream from a URL

Descrição

mixed yaml_parse_url ( string $url [, int $pos = 0 [, int &$ndocs [, array $callbacks ]]] )

Convert all or part of a YAML document stream read from a URL to a PHP variable.

Parâmetros

url

url should be of the form "scheme://...". PHP will search for a protocol handler (also known as a wrapper) for that scheme. If no wrappers for that protocol are registered, PHP will emit a notice to help you track potential problems in your script and then continue as though filename specifies a regular file.

pos

Document to extract from stream (-1 for all documents, 0 for first document, ...).

ndocs

If ndocs is provided, then it is filled with the number of documents found in stream.

callbacks

Content handlers for YAML nodes. Associative array of YAML tag => callback mappings.

Valor Retornado

Returns the value encoded in input in appropriate PHP type. NULL is returned if the input cannot be decoded. If pos is -1 an array will be returned with one entry for each document found in the stream.

Veja Também

  • yaml_parse() - Parse a YAML stream
  • yaml_parse_file() - Parse a YAML stream from a file
  • yaml_emit() - Returns the YAML representation of a value

yaml_parse_file
yaml_parse
Yaml Funções


Parse a YAML stream

yaml_parse_url
Outros Serviços
Yaml Funções
PHP Manual

yaml_parse

(PECL yaml >= 0.4.0)

yaml_parse — Parse a YAML stream

Descrição

mixed yaml_parse ( string $input [, int $pos = 0 [, int &$ndocs [, array $callbacks ]]] )

Convert all or part of a YAML document stream to a PHP variable.

Parâmetros

input

The string to parse as a YAML document stream.

pos

Document to extract from stream (-1 for all documents, 0 for first document, ...).

ndocs

If ndocs is provided, then it is filled with the number of documents found in stream.

callbacks

Content handlers for YAML nodes. Associative array of YAML tag => callback mappings.

Valor Retornado

Returns the value encoded in input in appropriate PHP type. NULL is returned if the input cannot be decoded. If pos is -1 an array will be returned with one entry for each document found in the stream.

Exemplos

Exemplo #1 yaml_parse() example

<?php
$yaml = <<<EOD
---
invoice: 34843
date: "2001-01-23"
bill-to: &id001
  given: Chris
  family: Dumars
  address:
    lines: |-
      458 Walkman Dr.
              Suite #292
    city: Royal Oak
    state: MI
    postal: 48046
ship-to: *id001
product:
- sku: BL394D
  quantity: 4
  description: Basketball
  price: 450
- sku: BL4438H
  quantity: 1
  description: Super Hoop
  price: 2392
tax: 251.420000
total: 4443.520000
comments: Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.
...
EOD;

$parsed = yaml_parse($yaml);
var_dump($parsed);
?>

O exemplo acima irá imprimir algo similar a:

array(8) {
  ["invoice"]=>
  int(34843)
  ["date"]=>
  string(10) "2001-01-23"
  ["bill-to"]=>
  &array(3) {
    ["given"]=>
    string(5) "Chris"
    ["family"]=>
    string(6) "Dumars"
    ["address"]=>
    array(4) {
      ["lines"]=>
      string(34) "458 Walkman Dr.
        Suite #292"
      ["city"]=>
      string(9) "Royal Oak"
      ["state"]=>
      string(2) "MI"
      ["postal"]=>
      int(48046)
    }
  }
  ["ship-to"]=>
  &array(3) {
    ["given"]=>
    string(5) "Chris"
    ["family"]=>
    string(6) "Dumars"
    ["address"]=>
    array(4) {
      ["lines"]=>
      string(34) "458 Walkman Dr.
        Suite #292"
      ["city"]=>
      string(9) "Royal Oak"
      ["state"]=>
      string(2) "MI"
      ["postal"]=>
      int(48046)
    }
  }
  ["product"]=>
  array(2) {
    [0]=>
    array(4) {
      ["sku"]=>
      string(6) "BL394D"
      ["quantity"]=>
      int(4)
      ["description"]=>
      string(10) "Basketball"
      ["price"]=>
      int(450)
    }
    [1]=>
    array(4) {
      ["sku"]=>
      string(7) "BL4438H"
      ["quantity"]=>
      int(1)
      ["description"]=>
      string(10) "Super Hoop"
      ["price"]=>
      int(2392)
    }
  }
  ["tax"]=>
  float(251.42)
  ["total"]=>
  float(4443.52)
  ["comments"]=>
  string(68) "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338."
}

Veja Também

  • yaml_parse_file() - Parse a YAML stream from a file
  • yaml_parse_url() - Parse a Yaml stream from a URL
  • yaml_emit() - Returns the YAML representation of a value

yaml_parse_url
Outros Serviços
Yaml Funções


Outros Serviços

  • AMQP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • AMQPConnection — The AMQPConnection class
    • AMQPExchange — The AMQPExchange class
    • AMQPQueue — The AMQPQueue class
  • chdb — Constant hash database
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • chdb — The chdb class
    • chdb Funções
  • cURL — Cliente da URL Library
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da cURL
  • FAM — File Alteration Monitor
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções de FAM
  • FTP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • FTP Funções
  • Gupnp
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Gupnp Funções
  • Hyperwave
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Integration with Apache
    • Hyperwave Funções
  • Hyperwave API
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Hyperwave API Funções
  • HTTP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Request Options — Options usable with the HttpRequest class and request functions
    • The HttpDeflateStream class
    • The HttpInflateStream class
    • The HttpMessage class
    • The HttpQueryString class
    • The HttpRequest
    • The HttpRequestPool class
    • The HttpResponse
    • Funções para HTTP
  • Java — PHP / IntegraÃ§Ã£o com Java
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Java Servlet SAPI
    • Exemplos
    • Funções para Java
  • LDAP — Lightweight Directory Access Protocol
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Using the PHP LDAP calls
    • Exemplos
    • LDAP Funções
  • Lotus Notes
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções do Lotus Notes
  • Memcache
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Memcache — The Memcache class
    • Memcache Funções
  • Memcached
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Expiration Times
    • Callbacks
    • Sessions support
    • Memcached — The Memcached class
  • Gearman
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • GearmanClient — The GearmanClient class
    • GearmanJob — The GearmanJob class
    • GearmanTask — The GearmanTask class
    • GearmanWorker — The GearmanWorker class
  • mqseries
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • mqseries Funções
  • Gopher — Net Gopher
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Gopher Funções
  • Network
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Network
  • RRD — RRDtool
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • RRD Funções
    • RRDCreator — The RRDCreator class
    • RRDGraph — The RRDGraph class
    • RRDUpdater — The RRDUpdater class
  • SAM — Simple Asynchronous Messaging
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • SAM Funções
  • SNMP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções SNMP
  • Sockets
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Socket Errors
    • Funções para Socket
  • SSH2 — Secure Shell2
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • SSH2 Funções
  • Stomp — Stomp Client
    • Introdução
    • Instalação/Configuração
    • Exemplos
    • Stomp Funções
    • Stomp — The Stomp class
    • StompFrame — The StompFrame class
    • StompException — The StompException class
  • SVN — Subversion
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • SVN Funções
  • TCP — TCP Wrappers
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções de TCP
  • YAZ
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • YAZ Funções
  • YP/NIS
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • YP/NIS Funções
yaml_parse
AMQP
Referência das Funções


AMQP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • AMQPConnection — The AMQPConnection class
    • AMQPConnection::connect — Establish a connection with the AMQP broker.
    • AMQPConnection::__construct — Create an instance of AMQPConnection
    • AMQPConnection::disconnect — Closes the connection with the AMQP broker.
    • AMQPConnection::isConnected — Determine if the AMQPConnection object is connected to the broker.
    • AMQPConnection::reconnect — Closes any open connection and creates a new connection with the AMQP broker.
    • AMQPConnection::setHost — Set the amqp host.
    • AMQPConnection::setLogin — Set the login.
    • AMQPConnection::setPassword — Set the password.
    • AMQPConnection::setPort — Set the port.
    • AMQPConnection::setVhost — Set the amqp virtual host
  • AMQPExchange — The AMQPExchange class
    • AMQPExchange::bind — The bind purpose
    • AMQPExchange::__construct — Create an instance of AMQPExchange
    • AMQPExchange::declare — Declare a new exchange on the broker.
    • AMQPExchange::delete — Delete the exchange from the broker.
    • AMQPExchange::publish — Publish a message to an exchange.
  • AMQPQueue — The AMQPQueue class
    • AMQPQueue::ack — Acknowledge the receipt of a message
    • AMQPQueue::bind — Bind the given queue to a routing key on an exchange.
    • AMQPQueue::cancel — Cancel a queue binding.
    • AMQPQueue::__construct — Create an instance of an AMQPQueue object.
    • AMQPQueue::consume — The consume purpose
    • AMQPQueue::declare — Declare a new queue
    • AMQPQueue::delete — Delete a queue and its contents.
    • AMQPQueue::get — Retrieve the next message from the queue.
    • AMQPQueue::purge — Purge the contents of a queue
    • AMQPQueue::unbind — Unbind the queue from a routing key.
Outros Serviços
Introdução
Outros Serviços


Introdução

» AMQP stands for » Advanced Message Queue Protocol, which is an open standard middleware layer for message routing and queuing. This extension is compatible with any Version 0-8 compatible AMQP broker, such as » RabbitMQ and » OpenAMQ.

This extension relies on the » librabbitmq RPC library for communicating with the AMQP broker. Though named "rabbit", this library is compatible with all Version 0-8 compatible AMQP brokers.

AMQP
Instalação/Configuração
AMQP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
AMQP


Dependências

This extension requires » librabbitmq client library.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To install the AMQP PHP extension, you must first install the » librabbitmq library. Use the following steps to download and install the library:

# Download the rabbitmq-c library
  hg clone http://hg.rabbitmq.com/rabbitmq-c/rev/3c549bb09c16
  cd rabbitmq-c
  # Add the codegen requirement
  hg clone http://hg.rabbitmq.com/rabbitmq-codegen/rev/f8b34141e6cb codegen
  # Configure, compile and install
  autoreconf -i && ./configure && make && sudo make install

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui:

Note to Windows users: This extension does not currently support Windows since the librabbitmq library does not yet support Windows.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Amqp Opções de Configuração
Nome | Padrão | Modificável | Histórico
amqp.host | localhost | PHP_INI_ALL |
amqp.vhost | / | PHP_INI_ALL |
amqp.port | 5672 | PHP_INI_ALL |
amqp.login | guest | PHP_INI_ALL |
amqp.password | guest | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

amqp.host string

The host to which to connect.

amqp.vhost string

The virtual host to which to connect on the host.

amqp.port integer

The port on which to connect.

amqp.login string

The login (username) used for authenticating against the host.

amqp.password string

The password used for authenticating against the host.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

AMQP_DURABLE (integer)
Durable exchanges and queues will survive a broker restart, complete with all of their data.
AMQP_PASSIVE (integer)
Passive exchanges are queues will not be redeclared, but the broker will throw an error if the exchange or queue does not exist.
AMQP_EXCLUSIVE (integer)
Valid for queues only, this flag indicates that only one client can be listening to and consuming from this queue.
AMQP_AUTODELETE (integer)
For exchanges, the auto delete flag indicates that the exchange will be deleted as soon as no more queues are bound to it. If no queues were ever bound the exchange, the exchange will never be deleted. For queues, the auto delete flag indicates that the queue will be deleted as soon as there are no more listeners subscribed to it. If no subscription has ever been active, the queue will never be deleted. Note: Exclusive queues will always be automatically deleted with the client disconnects.
AMQP_INTERNAL (integer)
Clients are not allowed to make specific queue bindings to exchanges defined with this flag.
AMQP_NOLOCAL (integer)
When passed to the consume method for a clustered environment, do not consume from the local node.
AMQP_NOACK (integer)
When passed to the consumer method, the messages will not be marked as delivered.
AMQP_IFEMPTY (integer)
Passed on queue creation, this flag indicates that the queue should be deleted if it becomes empty.
AMQP_IFUNUSED (integer)
Passed on queue or exchange creation, this flag indicates that the queue or exchange should be deleted when no clients are connected to the given queue or exchange.
AMQP_MANDATORY (integer)
When publishing a message, the message must be routed to a valid queue. If it is not, an error will be returned.
AMQP_IMMEDIATE (integer)
When publishing a message, mark this message for immediate processing by the broker. (High priority message.)
AMQP_MULTIPLE (integer)
?
AMQP_EX_TYPE_DIRECT (string)
A direct exchange type.
AMQP_EX_TYPE_FANOUT (string)
A fanout exchange type.
AMQP_EX_TYPE_TOPIC (string)
A topic exchange type.
AMQP_EX_TYPE_HEADER (string)
A header exchange type.

Tipos Resource
Exemplos
AMQP


Exemplos

Exemplo #1 AMQP Example

<?php

// Create a connection
$cnn = new AMQPConnection();
$cnn->connect();

// Declare a new exchange
$ex = new AMQPExchange($cnn);
$ex->declare('exchange1', AMQP_EX_TYPE_FANOUT);

// Create a new queue
$q = new AMQPQueue($cnn);
$q->declare('queue1');

// Bind it on the exchange to routing.key
$ex->bind('queue1', 'routing.key');

// Publish a message to the exchange with a routing key
$ex->publish('message', 'routing.key');

// Read from the queue
$msg = $q->consume();

?>
Constantes pré-definidas
AMQPConnection
AMQP


The AMQPConnection class

Introdução

Represents a connection to an AMQP broker.

Sinopse da classe

AMQPConnection {
/* Methods */
public bool connect ( void )
__construct ([ array $credentials = array() ] )
public bool disconnect ( void )
public bool isConnected ( void )
public bool reconnect ( void )
public bool setHost ( string $host )
public bool setLogin ( string $login )
public bool setPassword ( string $password )
public bool setPort ( int $port )
public bool setVhost ( string $vhost )
}

Índice

  • AMQPConnection::connect — Establish a connection with the AMQP broker.
  • AMQPConnection::__construct — Create an instance of AMQPConnection
  • AMQPConnection::disconnect — Closes the connection with the AMQP broker.
  • AMQPConnection::isConnected — Determine if the AMQPConnection object is connected to the broker.
  • AMQPConnection::reconnect — Closes any open connection and creates a new connection with the AMQP broker.
  • AMQPConnection::setHost — Set the amqp host.
  • AMQPConnection::setLogin — Set the login.
  • AMQPConnection::setPassword — Set the password.
  • AMQPConnection::setPort — Set the port.
  • AMQPConnection::setVhost — Set the amqp virtual host
Exemplos
AMQPConnection::connect
AMQP


Establish a connection with the AMQP broker.

AMQPConnection
AMQPConnection::__construct
AMQPConnection
PHP Manual

AMQPConnection::connect

(No version information available, might only be in SVN)

AMQPConnection::connect — Establish a connection with the AMQP broker.

Descrição

public bool AMQPConnection::connect ( void )

This method will initiate a connection with the AMQP broker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 AMQPConnection::connect() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the login details
$cnn->setLogin('mylogin');
$cnn->setPassword('mypass');

if ($cnn->connect()) {
    echo "Established a connection to the broker";
}
else {
    echo "Cannot connect to the broker";
}

?>

AMQPConnection
AMQPConnection::__construct
AMQPConnection


Create an instance of AMQPConnection

AMQPConnection::connect
AMQPConnection::disconnect
AMQPConnection
PHP Manual

AMQPConnection::__construct

(PECL amqp >= Unknown)

AMQPConnection::__construct — Create an instance of AMQPConnection

Descrição

AMQPConnection::__construct ([ array $credentials = array() ] )

Creates an AMQPConnection instance representing a connection to an AMQP broker.

Parâmetros

credentials

The credentials is an optional array of credential information for connecting to the AMQP broker.

Supported indexes
key | Description | Default value
host The host to connect too

Nota: Max 32 characters

 amqp.host
port | Port on the host | amqp.port
vhost The virtual host on the host

Nota: Max 32 characters

 amqp.vhost
login The login name to use.

Nota: Max 32 characters

 amqp.login
password Password

Nota: Max 32 characters

 amqp.password

All other keys will be ignored.

Valor Retornado

An AMQPConnection object.

Erros

Throws AMQPException exception on parameter parsing failures, and option errors.

Exemplos

Exemplo #1 AMQPConnection::__construct() example

<?php

/* Create a connection using the INI values */
$connection1 = new AMQPConnection();

/* Specifying all keys */
$connection2 = new AMQPConnection(array(
    'host' => 'example.host',
    'vhost' => '/',
    'port' => 5763,
    'login' => 'user',
    'password' => 'password'
));

?>

Notas

Nota:

A connection will not be established untill AMQPConnection::connect() is called.

AMQPConnection::connect
AMQPConnection::disconnect
AMQPConnection


Closes the connection with the AMQP broker.

AMQPConnection::__construct
AMQPConnection::isConnected
AMQPConnection
PHP Manual

AMQPConnection::disconnect

(No version information available, might only be in SVN)

AMQPConnection::disconnect — Closes the connection with the AMQP broker.

Descrição

public bool AMQPConnection::disconnect ( void )

This method will close an open connection with the AMQP broker.

Parâmetros

void

Valor Retornado

Returns true if connection was successfully closed, false otherwise.

Exemplos

Exemplo #1 AMQPConnection::disconnect() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the login details
$cnn->setLogin('mylogin');
$cnn->setPassword('mypass');

if (!$cnn->connect()) {
 throw new Exception('Could not connect');
}

// do something interesting

if (!$cnn->disconnect()) {
 throw new Exception('Could not disconnect');
}

?>

AMQPConnection::__construct
AMQPConnection::isConnected
AMQPConnection


Determine if the AMQPConnection object is connected to the broker.

AMQPConnection::disconnect
AMQPConnection::reconnect
AMQPConnection
PHP Manual

AMQPConnection::isConnected

(PECL amqp >= Unknown)

AMQPConnection::isConnected — Determine if the AMQPConnection object is connected to the broker.

Descrição

public bool AMQPConnection::isConnected ( void )

This method will check whether the connection to the AMQP broker is still valid. It does so by checking the return status of the last command.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns true if connected, false otherwise

Exemplos

Exemplo #1 AMQPConnection::isConnected() example

<?php

/* Create a new connection */
$conn = new AMQPConnection();
$conn->connect();

/* Check that connection is working */
if ($conn->isConnected()) {
    echo "Connected to the broker \o/";
}
else {
    echo "Cannot connect to the broker";
}

?>

AMQPConnection::disconnect
AMQPConnection::reconnect
AMQPConnection


Closes any open connection and creates a new connection with the AMQP broker.

AMQPConnection::isConnected
AMQPConnection::setHost
AMQPConnection
PHP Manual

AMQPConnection::reconnect

(No version information available, might only be in SVN)

AMQPConnection::reconnect — Closes any open connection and creates a new connection with the AMQP broker.

Descrição

public bool AMQPConnection::reconnect ( void )

This method will close any open connections and initiate a new connection with the AMQP broker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 AMQPConnection::reconnect() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the login details
$cnn->setLogin('mylogin');
$cnn->setPassword('mypass');

$cnn->connect();

// do something interesting

// ensure we have a valid connection
if (!$cnn->reconnect()) {
    echo "Could not reconnect to server";
}

?>

AMQPConnection::isConnected
AMQPConnection::setHost
AMQPConnection


Set the amqp host.

AMQPConnection::reconnect
AMQPConnection::setLogin
AMQPConnection
PHP Manual

AMQPConnection::setHost

(No version information available, might only be in SVN)

AMQPConnection::setHost — Set the amqp host.

Descrição

public bool AMQPConnection::setHost ( string $host )

This method will set the hostname used to connect to the AMQP broker.

Parâmetros

host

The hostname of the AMQP broker.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPConnectionException if host is longer then 1024characters.

Exemplos

Exemplo #1 AMQPConnection::setHost() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the hostname
$cnn->setHost('myhost.com');

?>

AMQPConnection::reconnect
AMQPConnection::setLogin
AMQPConnection


Set the login.

AMQPConnection::setHost
AMQPConnection::setPassword
AMQPConnection
PHP Manual

AMQPConnection::setLogin

(No version information available, might only be in SVN)

AMQPConnection::setLogin — Set the login.

Descrição

public bool AMQPConnection::setLogin ( string $login )

This method will set the login string used to connect to the AMQP broker.

Parâmetros

login

The login string used to authenticate with the AMQP broker.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPConnectionException if login is longer then 32characters.

Exemplos

Exemplo #1 AMQPConnection::setLogin() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the login
$cnn->setLogin('myusername');

?>

AMQPConnection::setHost
AMQPConnection::setPassword
AMQPConnection


Set the password.

AMQPConnection::setLogin
AMQPConnection::setPort
AMQPConnection
PHP Manual

AMQPConnection::setPassword

(No version information available, might only be in SVN)

AMQPConnection::setPassword — Set the password.

Descrição

public bool AMQPConnection::setPassword ( string $password )

This method will set the password string used to connect to the AMQP broker.

Parâmetros

password

The password string used to authenticate with the AMQP broker.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPConnectionException if password is longer then 32characters.

Exemplos

Exemplo #1 AMQPConnection::setPassword() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the password
$cnn->setPassword('mypassword');

?>

AMQPConnection::setLogin
AMQPConnection::setPort
AMQPConnection


Set the port.

AMQPConnection::setPassword
AMQPConnection::setVhost
AMQPConnection
PHP Manual

AMQPConnection::setPort

(No version information available, might only be in SVN)

AMQPConnection::setPort — Set the port.

Descrição

public bool AMQPConnection::setPort ( int $port )

This method will set the port used to connect to the AMQP broker.

Parâmetros

port

The port used to connect to the AMQP broker.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPConnectionException if port is longer not between 1 and 65535.

Exemplos

Exemplo #1 AMQPConnection::setPort() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the port
$cnn->setPort(5672);

?>

AMQPConnection::setPassword
AMQPConnection::setVhost
AMQPConnection


Set the amqp virtual host

AMQPConnection::setPort
AMQPExchange
AMQPConnection
PHP Manual

AMQPConnection::setVhost

(No version information available, might only be in SVN)

AMQPConnection::setVhost — Set the amqp virtual host

Descrição

public bool AMQPConnection::setVhost ( string $vhost )

Sets the virtual host to which to connect on the AMQP broker.

Parâmetros

host

The virtual host to use on the AMQP broker.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPConnectionException if host is longer then 32characters.

Exemplos

Exemplo #1 AMQPConnection::setVhost() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();

// set the hostname
$cnn->setVhost('myvhost');

?>

AMQPConnection::setPort
AMQPExchange
AMQPConnection


The AMQPExchange class

Introdução

Represents an AMQP exchange.

Sinopse da classe

AMQPExchange {
/* Methods */
public bool bind ( string $queue_name , string $routing_key )
__construct ( AMQPConnection $connection [, string $exchange_name = "" ] )
public bool declare ([ string $exchange_name = "" [, string $exchange_type = AMQP_EX_TYPE_DIRECT [, int $flags = 0 ]]] )
public bool delete ([ string $exchange_name = NULL [, int $params = 0 ]] )
public bool publish ( string $message , string $routing_key [, int $params = 0 [, array $attributes ]] )
}

Índice

  • AMQPExchange::bind — The bind purpose
  • AMQPExchange::__construct — Create an instance of AMQPExchange
  • AMQPExchange::declare — Declare a new exchange on the broker.
  • AMQPExchange::delete — Delete the exchange from the broker.
  • AMQPExchange::publish — Publish a message to an exchange.
AMQPConnection::setVhost
AMQPExchange::bind
AMQP


The bind purpose

AMQPExchange
AMQPExchange::__construct
AMQPExchange
PHP Manual

AMQPExchange::bind

(PECL amqp >= Unknown)

AMQPExchange::bind — The bind purpose

Descrição

public bool AMQPExchange::bind ( string $queue_name , string $routing_key )

Bind an exchange to a queue using the specified routing key.

Parâmetros

queue_name

The name of the queue to which to bind.

routing_key

The routing key to use as a binding.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws AMQPExchangeException on failure.

AMQPExchange
AMQPExchange::__construct
AMQPExchange


Create an instance of AMQPExchange

AMQPExchange::bind
AMQPExchange::declare
AMQPExchange
PHP Manual

AMQPExchange::__construct

(PECL amqp >= Unknown)

AMQPExchange::__construct — Create an instance of AMQPExchange

Descrição

AMQPExchange::__construct ( AMQPConnection $connection [, string $exchange_name = "" ] )

Returns a new instance of an AMQPExchange object, associated with the given AMQPConnection object. If the exchange_name parameter is specified and the an exchange by that name exists on the broker, an instance of that specific exchange will be returned. Otherwise, the exchange_name is ignored.

Parâmetros

AMQPConnection

A valid AMQPConnection object, connected to a broker.

exchange_name

The name of an existing exchange to represent.

Valor Retornado

An AMQPExchange object.

Erros

Throws AMQPExchangeException when connection is not connect to a broker.

AMQPExchange::bind
AMQPExchange::declare
AMQPExchange


Declare a new exchange on the broker.

AMQPExchange::__construct
AMQPExchange::delete
AMQPExchange
PHP Manual

AMQPExchange::declare

(PECL amqp >= Unknown)

AMQPExchange::declare — Declare a new exchange on the broker.

Descrição

public bool AMQPExchange::declare ([ string $exchange_name = "" [, string $exchange_type = AMQP_EX_TYPE_DIRECT [, int $flags = 0 ]]] )

Declare a new exchange on the broker with the given information. If an exchange by that name already exists and the exchange_type and/or flags are specified, the exchange settings will be updated.

If no exchange_type is specified and the exchange does not exist, the exchange type will default to "direct".

Parâmetros

exchange_name

The name of the exchange.

exchange_type

The type of the exchange. Can be any of AMQP_EX_TYPE_DIRECT, AMQP_EX_TYPE_FANOUT, AMQP_EX_TYPE_TOPIC or AMQP_EX_TYPE_HEADER.

flags

A bitmask of any of the flags: AMQP_PASSIVE, AMQP_DURABLE, AMQP_AUTODELETE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws AMQPExchangeException on failure.

Exemplos

Exemplo #1 AMQPExchange::declare() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();
$cnn->connect();

$ex = new AMQPExchange($cnn);
$ex->declare('new_topic_exchange', AMQP_EX_TYPE_DIRECT, AMQP_DURABLE | AMQP_AUTODELETE);

?>

AMQPExchange::__construct
AMQPExchange::delete
AMQPExchange


Delete the exchange from the broker.

AMQPExchange::declare
AMQPExchange::publish
AMQPExchange
PHP Manual

AMQPExchange::delete

(PECL amqp >= Unknown)

AMQPExchange::delete — Delete the exchange from the broker.

Descrição

public bool AMQPExchange::delete ([ string $exchange_name = NULL [, int $params = 0 ]] )

Delete and exchange from the broker.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

exchange_name

The name of the exchange to delete. If the AMQPExchange object is already bound to an existing exchange and then exchange_name is not specified, the exchange bound to the AMQPExchange object will be deleted.

params

Optionally AMQP_IFUNUSED can be specified to indicate the exchange should not be deleted until no clients are connected to it.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 AMQPExchange::delete() example

<?php

/* Create a new connection */
$cnn = new AMQPConnection();
$cnn->connect();

/* Create a new exchange */
$ex = new AMQPExchange($cnn);
$ex->declare('new_topic_exchange', AMQP_EX_TYPE_DIRECT, AMQP_DURABLE | AMQP_AUTODELETE);

/* Delete the previous exchange */
$ex2 = new AMQPExchange($cnn);
$ex2->delete('new_topic_exchange');

?>

AMQPExchange::declare
AMQPExchange::publish
AMQPExchange


Publish a message to an exchange.

AMQPExchange::delete
AMQPQueue
AMQPExchange
PHP Manual

AMQPExchange::publish

(PECL amqp >= Unknown)

AMQPExchange::publish — Publish a message to an exchange.

Descrição

public bool AMQPExchange::publish ( string $message , string $routing_key [, int $params = 0 [, array $attributes ]] )

Publish a message to the exchange represented by the AMQPExchange object.

Parâmetros

message

The message to publish.

routing_key

The routing key to which to publish.

params

One or more of AMQP_MANDATORY and AMQP_MANDATORY.

Supported indexes
key | Description | Default value
Content-type | text/plain
Content-encoding | NULL
message_id | NULL
user_id | NULL
app_id | NULL
delivery_mode | NULL
priority | NULL
timestamp | NULL
expiration | NULL
type | NULL
reply_to | NULL

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an AMQPExchangeException on failure.

AMQPExchange::delete
AMQPQueue
AMQPExchange


The AMQPQueue class

Introdução

Represents an AMQP queue.

Sinopse da classe

AMQPQueue {
/* Methods */
public bool ack ( int $delivery_tag [, int $flags = NULL ] )
public bool bind ( string $exchange_name , string $routing_key )
public bool cancel ([ string $consumer_tag = "" ] )
__construct ( AMQPConnection $amqp_connection [, string $queue_name = "" ] )
public array consume ([ array $options = array() ] )
public int declare ([ string $queue_name = "" [, int $flags = AMQP_AUTODELETE ]] )
public bool delete ( string $queue_name )
public array get ([ int $flags = AMQP_NOACK ] )
public bool purge ( string $queue_name )
public bool unbind ( string $exchange_name , string $routing_key )
}

Índice

  • AMQPQueue::ack — Acknowledge the receipt of a message
  • AMQPQueue::bind — Bind the given queue to a routing key on an exchange.
  • AMQPQueue::cancel — Cancel a queue binding.
  • AMQPQueue::__construct — Create an instance of an AMQPQueue object.
  • AMQPQueue::consume — The consume purpose
  • AMQPQueue::declare — Declare a new queue
  • AMQPQueue::delete — Delete a queue and its contents.
  • AMQPQueue::get — Retrieve the next message from the queue.
  • AMQPQueue::purge — Purge the contents of a queue
  • AMQPQueue::unbind — Unbind the queue from a routing key.
AMQPExchange::publish
AMQPQueue::ack
AMQP


Acknowledge the receipt of a message

AMQPQueue
AMQPQueue::bind
AMQPQueue
PHP Manual

AMQPQueue::ack

(No version information available, might only be in SVN)

AMQPQueue::ack — Acknowledge the receipt of a message

Descrição

public bool AMQPQueue::ack ( int $delivery_tag [, int $flags = NULL ] )

This method allows the acknowledgement of a message that is retrieved with the AMQP_NOACK flag through AMQPQueue::get() or AMQPQueue::consume()

Parâmetros

delivery_tag

The message delivery tag of which to acknowledge receipt.

flags

The only valid flag that can be passed is AMQP_MULTIPLE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue
AMQPQueue::bind
AMQPQueue


Bind the given queue to a routing key on an exchange.

AMQPQueue::ack
AMQPQueue::cancel
AMQPQueue
PHP Manual

AMQPQueue::bind

(PECL amqp >= Unknown)

AMQPQueue::bind — Bind the given queue to a routing key on an exchange.

Descrição

public bool AMQPQueue::bind ( string $exchange_name , string $routing_key )

The bind method will bind the given queue to the specified routing key on the given exchange.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

exchange_name

The exchange name on which to bind.

routing_key

The routing key to which to bind.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue::ack
AMQPQueue::cancel
AMQPQueue


Cancel a queue binding.

AMQPQueue::bind
AMQPQueue::__construct
AMQPQueue
PHP Manual

AMQPQueue::cancel

(PECL amqp >= Unknown)

AMQPQueue::cancel — Cancel a queue binding.

Descrição

public bool AMQPQueue::cancel ([ string $consumer_tag = "" ] )

Cancel a queue that is already bound to an exchange and routing key.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

consumer_tag

The queue name to cancel, if the queue object is not already representative of a queue.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue::bind
AMQPQueue::__construct
AMQPQueue


Create an instance of an AMQPQueue object.

AMQPQueue::cancel
AMQPQueue::consume
AMQPQueue
PHP Manual

AMQPQueue::__construct

(PECL amqp >= Unknown)

AMQPQueue::__construct — Create an instance of an AMQPQueue object.

Descrição

AMQPQueue::__construct ( AMQPConnection $amqp_connection [, string $queue_name = "" ] )

Creates an AMQPQueue instance representing an AMQP queue on the broker.

Parâmetros

amqp_connection

A valid AMQPConnection object.

queue_name

The name of the queue to construct. If no queue name is specified, the broker will generate one.

Valor Retornado

AMQPQueue::cancel
AMQPQueue::consume
AMQPQueue


The consume purpose

AMQPQueue::__construct
AMQPQueue::declare
AMQPQueue
PHP Manual

AMQPQueue::consume

(PECL amqp >= Unknown)

AMQPQueue::consume — The consume purpose

Descrição

public array AMQPQueue::consume ([ array $options = array() ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

options

options is a an array of consume options. The keys used in the options array are: min, max, and ack. All other keys will be ignored.

For each missing option, the extension will check the ini settings or use the default value.

Valor Retornado

An array containing the messages consumed. The number of returned messages will be at least the number given by min in the options array. But not more than the number given by max.

Exemplos

Exemplo #1 AMQPQueue::consume() example

<?php

/* Create a connection using all default credentials: */
$connection = new AMQPConnection();
$connection->connect();

/* create a queue object */
$queue = new AMQPQueue($connection);

//declare the queue
$queue->declare('myqueue');

$options = array(
 'min' => 1,
 'max' => 10,
 'ack' => true
);

//get the messages
$messages = $queue->consume($options);

foreach ($messages as $message) {
 echo $message['message_body'];
}

?>

AMQPQueue::__construct
AMQPQueue::declare
AMQPQueue


Declare a new queue

AMQPQueue::consume
AMQPQueue::delete
AMQPQueue
PHP Manual

AMQPQueue::declare

(PECL amqp >= Unknown)

AMQPQueue::declare — Declare a new queue

Descrição

public int AMQPQueue::declare ([ string $queue_name = "" [, int $flags = AMQP_AUTODELETE ]] )

Declare a new queue on the broker.

Parâmetros

queue_name

The name of the queue to declare.

flags

A bitmask of any of the flags: AMQP_AUTODELETE, AMQP_PASSIVE, AMQP_DURABLE, AMQP_NOACK.

Valor Retornado

Returns the message count.

AMQPQueue::consume
AMQPQueue::delete
AMQPQueue


Delete a queue and its contents.

AMQPQueue::declare
AMQPQueue::get
AMQPQueue
PHP Manual

AMQPQueue::delete

(PECL amqp >= Unknown)

AMQPQueue::delete — Delete a queue and its contents.

Descrição

public bool AMQPQueue::delete ( string $queue_name )

Delete a queue from the broker, including its entire contents of unread or unacknowledged messages.

Parâmetros

queue_name

The name of the queue to delete.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue::declare
AMQPQueue::get
AMQPQueue


Retrieve the next message from the queue.

AMQPQueue::delete
AMQPQueue::purge
AMQPQueue
PHP Manual

AMQPQueue::get

(PECL amqp >= Unknown)

AMQPQueue::get — Retrieve the next message from the queue.

Descrição

public array AMQPQueue::get ([ int $flags = AMQP_NOACK ] )

Retrieve the next message from the queue.

Parâmetros

flags

A bitmask of any of the flags: AMQP_NOACK.

Valor Retornado

Returns array possibly containing keys routing_key, exchange, delivery_tag, Content-type, Content-encoding, type, timestamp, priority, expiration, user_id, app_id, message_id, Reply-to, count, msg.

AMQPQueue::delete
AMQPQueue::purge
AMQPQueue


Purge the contents of a queue

AMQPQueue::get
AMQPQueue::unbind
AMQPQueue
PHP Manual

AMQPQueue::purge

(PECL amqp >= Unknown)

AMQPQueue::purge — Purge the contents of a queue

Descrição

public bool AMQPQueue::purge ( string $queue_name )

Purge the contents of a queue.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

queue_name

The name of the queue to purge

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue::get
AMQPQueue::unbind
AMQPQueue


Unbind the queue from a routing key.

AMQPQueue::purge
chdb
AMQPQueue
PHP Manual

AMQPQueue::unbind

(PECL amqp >= Unknown)

AMQPQueue::unbind — Unbind the queue from a routing key.

Descrição

public bool AMQPQueue::unbind ( string $exchange_name , string $routing_key )

Remove a routing key binding on an exchange from the given queue.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

exchange_name

The name of the exchange on which the queue is bound.

routing_key

The binding routing key used by the queue.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

AMQPQueue::purge
chdb
AMQPQueue


Constant hash database

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • chdb — The chdb class
    • chdb::__construct — Creates a chdb instance
    • chdb::get — Gets the value associated with a key
  • chdb Funções
    • chdb_create — Creates a chdb file
AMQPQueue::unbind
Introdução
Outros Serviços


Introdução

CHDB (constant hash database) is a fast key-value database for constant data, realized by using a memory-mapped file and thus providing the following functionalities:

  • Extremely fast initial load, regardless of the size of the database.

  • Only the pages of the file which are actually used are loaded from the disk.

  • Once a page is loaded it is shared across multiple processes.

  • Loaded pages are cached across multiple requests and even process recycling.

A typical use of CHDB is as a faster alternative to defining many PHP constants.

CHDB is internally implemented as a hash-table using a » perfect hashing function, thus guaranteeing worst case O(1) lookup time.

chdb
Instalação/Configuração
chdb


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
chdb


Dependências

This module uses » cmph (version 0.9) for providing the » perfect hashing function.

cmph 0.9 is required to install this module.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/chdb

» cmph (version 0.9) is required for installing this extension. If cmph is installed in a non-standard directory, use the --with-libcmph-dir=DIR switch, where DIR is the cmph install prefix.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
chdb


Exemplos

Exemplo #1 Creating a chdb file

<?php

$data = array(
    'key1' => 'value1',
    'key2' => 'value2',
    // ...
);
chdb_create('data.chdb', $data);

?>

The above example will generate a chdb file named data.chdb and containing the key-value pairs defined in $data.

Exemplo #2 Loading and looking up a chdb file

<?php

$chdb = new chdb('data.chdb');
$value1 = $chdb->get('key1');
$value2 = $chdb->get('key2');

echo $value1, PHP_EOL;
echo $value2, PHP_EOL;

?>

O exemplo acima irá imprimir algo similar a:

value1
value2
Constantes pré-definidas
chdb
chdb


The chdb class

Introdução

Represents a loaded chdb file.

Sinopse da classe

chdb {
/* Methods */
__construct ( string $pathname )
public string get ( string $key )
}

Índice

  • chdb::__construct — Creates a chdb instance
  • chdb::get — Gets the value associated with a key
Exemplos
chdb::__construct
chdb


Creates a chdb instance

chdb
chdb::get
chdb
PHP Manual

chdb::__construct

(PECL chdb >= 0.1.0)

chdb::__construct — Creates a chdb instance

Descrição

chdb::__construct ( string $pathname )

Loads a chdb file, by mapping it into memory.

Nota:

While some validity checks are performed on the specified file, they are mostly there to avoid the possibility of common mistakes (for example, loading a file which is not a chdb database, or that is somehow incompatible with the current system). A maliciously crafted chdb file can thus be dangerous if loaded, so chdb files should be trusted and treated with the same security protections used for PHP shared libraries.

Parâmetros

pathname

The name of the file to load.

Erros

Throws an exception in case the chdb file hasn't been successfully loaded.

Nota:

A valid chdb file might fail to load in case it was created on an architecture with a different endianness, with a different version of chdb, or if the file is too big to be mapped into memory (mostly in case of huge files and 32-bit architectures). In these cases the load will fail by throwing an exception, but otherwise not performing any illegal operation.

chdb
chdb::get
chdb


Gets the value associated with a key

chdb::__construct
chdb Funções
chdb
PHP Manual

chdb::get

(PECL chdb >= 0.1.0)

chdb::get — Gets the value associated with a key

Descrição

public string chdb::get ( string $key )

Gets the value associated with a key from a chdb database.

Parâmetros

key

The key for which to get the value.

Valor Retornado

Returns a string containing the value associated with the given key, or NULL if not found.

Exemplos

Exemplo #1 chdb::get() example

<?php

$data = array(
    'key1' => 'value1',
    'key2' => 'value2',
    // ...
);
chdb_create('data.chdb', $data);

$chdb = new chdb('data.chdb');
$value1 = $chdb->get('key1');
$value2 = $chdb->get('key2');

echo $value1, PHP_EOL;
echo $value2, PHP_EOL;

?>

O exemplo acima irá imprimir algo similar a:

value1
value2
chdb::__construct
chdb Funções
chdb


chdb Funções

Índice

  • chdb_create — Creates a chdb file
chdb::get
chdb_create
chdb


Creates a chdb file

chdb Funções
cURL
chdb Funções
PHP Manual

chdb_create

(PECL chdb >= 0.1.0)

chdb_create — Creates a chdb file

Descrição

bool chdb_create ( string $pathname , array $data )

chdb_create() creates a chdb file containing the specified key-value pairs.

Nota:

chdb files are not portable across little-endian and big-endian environments. Except for that, they are portable across different architectures. Also compatibility across different versions of chdb is not guaranteed.

Parâmetros

pathname

The name of the file to create.

If a file with the same name already exists, it is overwritten.

data

An array containing the key-value pairs to store in the chdb file.

Keys and values are converted to strings before being written to the file, as chdb only support the string type. Note that binary strings are supported as well, both as keys and values.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws an exception in case the chdb file hasn't been successfully created.

Exemplos

Exemplo #1 chdb_create() example

<?php

$data = array(
    'key1' => 'value1',
    'key2' => 'value2',
    // ...
);
chdb_create('data.chdb', $data);

?>

The above example will generate a chdb file named data.chdb and containing the key-value pairs defined in $data.

chdb Funções
cURL
chdb Funções


Cliente da URL Library

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da cURL
    • curl_close — Fecha uma sessão cURL
    • curl_copy_handle — Copia o manipulador cURL com todas as suas preferências
    • curl_errno — Retorna o último número de erro
    • curl_error — Retorna uma string contendo o último erro da sessão atual
    • curl_exec — Executa uma sessão CURL
    • curl_getinfo — Obtém uma informação sobre uma transferência específica
    • curl_init — Inicializa uma sessão cURL
    • curl_multi_add_handle — Adiciona um manipulador cURL a um multi manipulador cURL
    • curl_multi_close — Fecha um conjunto de manipuladores cURL
    • curl_multi_exec — Executa a sub-conexão do atual manipulador cURL
    • curl_multi_getcontent — Retorna o conteúdo de um manipulador cURL se CURLOPT_RETURNTRANSFER é usado
    • curl_multi_info_read — Get information about the current transfers
    • curl_multi_init — Retorna um novo multi manipulador cURL
    • curl_multi_remove_handle — Remove a multi handle from a set of cURL handles
    • curl_multi_select — Obtem todas as sockets associadas com a extensão cURL, podendo assim ser "selecionada"
    • curl_setopt_array — Set multiple options for a cURL transfer
    • curl_setopt — Define uma opção para a transferencia cURL
    • curl_version — Obtém informação da versão da cURL
chdb_create
Introdução
Outros Serviços


Introdução

O PHP suporta a libcurl, uma biblioteca criada por Daniel Stenberg, que permite a você conectar e comunicar com vários tipos diferentes de servidor com vários tipos diferentes de protocolos. libcurl atualmente suporta os protocolos http, https, ftp, gopher, telnet, dict, file, e ldap. libcurl também suporta certificados HTTPS, HTTP POST, HTTP PUT, upload com FTP (isto também pode ser feito com a extensão de ftp do PHP), upload baseado em formulário HTTP, proxies, cookies, e autenticação usuário+senha.

Estas funções foram adicionadas no PHP 4.0.2.

cURL
Instalação/Configuração
cURL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
cURL


Dependências

Para poder usar as funções CURL você precisa instalar o pacote » CURL. PHP requer que você use o CURL 7.0.2-beta ou posterior. PHP não irá funcionar com qualquer versão anterior a CURL 7.0.2-beta. No PHP 4.2.3, você precisa do CURL versão 7.9.0 ou posterior. A partir do PHP 4.3.0, você precisa da CURL versão que seja 7.9.8 ou posterior. PHP 5.0.0 requer a libcurl 7.10.5 ou superior.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para usar o suporte a cURL no PHP, você deverá compilar o PHP com --with-curl[=DIR] aonde DIR é a localização do diretório contendo os diretórios lib e include. No diretório "include" deve ter uma pasta chamada "curl" a qual deve conter os arquivos easy.h e curl.h. Deve haver um arquivo chamado libcurl.a localizado no diretório "lib". Começando no PHP 4.3.0 você pode configurar o PHP para usar o cURL para streams URL --with-curlwrappers .

Nota: Nota para usuários de Win32
Para ativar este módulo em um ambiente Windows, você deve copiar libeay32.dll e ssleay32.dll precisa estar presente em seu PATH. Você não precisa da libcurl.dll do site do cURL.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão define 2 tipos resource: um manipulador cURL handle e o multi-manipulador cURL.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Descrição e usos destas constantes são descritos na curl_setopt() and curl_getinfo() documentation.

CURLOPT_AUTOREFERER (integer)
Disponível desde o PHP 5.1.0
CURLOPT_COOKIESESSION (integer)
Disponível desde o PHP 5.1.0
CURLOPT_DNS_USE_GLOBAL_CACHE (integer)
CURLOPT_DNS_CACHE_TIMEOUT (integer)
CURLOPT_FTP_SSL (integer)
Disponível desde o PHP 5.2.0
CURLFTPSSL_TRY (integer)
Disponível desde o PHP 5.2.0
CURLFTPSSL_ALL (integer)
Disponível desde o PHP 5.2.0
CURLFTPSSL_CONTROL (integer)
Disponível desde o PHP 5.2.0
CURLFTPSSL_NONE (integer)
Disponível desde o PHP 5.2.0
CURLOPT_PRIVATE (integer)
Disponível desde o PHP 5.2.4
CURLOPT_FTPSSLAUTH (integer)
Disponível desde o PHP 5.1.0
CURLOPT_PORT (integer)
CURLOPT_FILE (integer)
CURLOPT_INFILE (integer)
CURLOPT_INFILESIZE (integer)
CURLOPT_URL (integer)
CURLOPT_PROXY (integer)
CURLOPT_VERBOSE (integer)
CURLOPT_HEADER (integer)
CURLOPT_HTTPHEADER (integer)
CURLOPT_NOPROGRESS (integer)
CURLOPT_NOBODY (integer)
CURLOPT_FAILONERROR (integer)
CURLOPT_UPLOAD (integer)
CURLOPT_POST (integer)
CURLOPT_FTPLISTONLY (integer)
CURLOPT_FTPAPPEND (integer)
CURLOPT_FTP_CREATE_MISSING_DIRS (integer)
CURLOPT_NETRC (integer)
CURLOPT_FOLLOWLOCATION (integer)
Esta constante não está disponível quando open_basedir or safe_mode está habilitado.
CURLOPT_FTPASCII (integer)
CURLOPT_PUT (integer)
CURLOPT_MUTE (integer)
CURLOPT_USERPWD (integer)
CURLOPT_PROXYUSERPWD (integer)
CURLOPT_RANGE (integer)
CURLOPT_TIMEOUT (integer)
CURLOPT_TIMEOUT_MS (integer)
CURLOPT_TCP_NODELAY (integer)
Available since PHP 5.2.1
CURLOPT_POSTFIELDS (integer)
CURLOPT_REFERER (integer)
CURLOPT_USERAGENT (integer)
CURLOPT_FTPPORT (integer)
CURLOPT_FTP_USE_EPSV (integer)
CURLOPT_LOW_SPEED_LIMIT (integer)
CURLOPT_LOW_SPEED_TIME (integer)
CURLOPT_RESUME_FROM (integer)
CURLOPT_COOKIE (integer)
CURLOPT_SSLCERT (integer)
CURLOPT_SSLCERTPASSWD (integer)
CURLOPT_WRITEHEADER (integer)
CURLOPT_SSL_VERIFYHOST (integer)
CURLOPT_COOKIEFILE (integer)
CURLOPT_SSLVERSION (integer)
CURLOPT_TIMECONDITION (integer)
CURLOPT_TIMEVALUE (integer)
CURLOPT_CUSTOMREQUEST (integer)
CURLOPT_STDERR (integer)
CURLOPT_TRANSFERTEXT (integer)
CURLOPT_RETURNTRANSFER (integer)
CURLOPT_QUOTE (integer)
CURLOPT_POSTQUOTE (integer)
CURLOPT_INTERFACE (integer)
CURLOPT_KRB4LEVEL (integer)
CURLOPT_HTTPPROXYTUNNEL (integer)
CURLOPT_FILETIME (integer)
CURLOPT_WRITEFUNCTION (integer)
CURLOPT_READFUNCTION (integer)
CURLOPT_PASSWDFUNCTION (integer)
CURLOPT_HEADERFUNCTION (integer)
CURLOPT_MAXREDIRS (integer)
CURLOPT_MAXCONNECTS (integer)
CURLOPT_CLOSEPOLICY (integer)
CURLOPT_FRESH_CONNECT (integer)
CURLOPT_FORBID_REUSE (integer)
CURLOPT_RANDOM_FILE (integer)
CURLOPT_EGDSOCKET (integer)
CURLOPT_CONNECTTIMEOUT (integer)
CURLOPT_CONNECTTIMEOUT_MS (integer)
CURLOPT_SSL_VERIFYPEER (integer)
CURLOPT_CAINFO (integer)
CURLOPT_CAPATH (integer)
CURLOPT_COOKIEJAR (integer)
CURLOPT_SSL_CIPHER_LIST (integer)
CURLOPT_BINARYTRANSFER (integer)
CURLOPT_NOSIGNAL (integer)
CURLOPT_PROXYTYPE (integer)
CURLOPT_BUFFERSIZE (integer)
CURLOPT_HTTPGET (integer)
CURLOPT_HTTP_VERSION (integer)
CURLOPT_SSLKEY (integer)
CURLOPT_SSLKEYTYPE (integer)
CURLOPT_SSLKEYPASSWD (integer)
CURLOPT_SSLENGINE (integer)
CURLOPT_SSLENGINE_DEFAULT (integer)
CURLOPT_SSLCERTTYPE (integer)
CURLOPT_CRLF (integer)
CURLOPT_ENCODING (integer)
CURLOPT_PROXYPORT (integer)
CURLOPT_UNRESTRICTED_AUTH (integer)
CURLOPT_FTP_USE_EPRT (integer)
CURLOPT_HTTP200ALIASES (integer)
CURLOPT_HTTPAUTH (integer)
CURLAUTH_BASIC (integer)
CURLAUTH_DIGEST (integer)
CURLAUTH_GSSNEGOTIATE (integer)
CURLAUTH_NTLM (integer)
CURLAUTH_ANY (integer)
CURLAUTH_ANYSAFE (integer)
CURLOPT_PROXYAUTH (integer)
CURLCLOSEPOLICY_LEAST_RECENTLY_USED (integer)
CURLCLOSEPOLICY_LEAST_TRAFFIC (integer)
CURLCLOSEPOLICY_SLOWEST (integer)
CURLCLOSEPOLICY_CALLBACK (integer)
CURLCLOSEPOLICY_OLDEST (integer)
CURLINFO_PRIVATE (integer)
Available since PHP 5.2.4
CURLINFO_EFFECTIVE_URL (integer)
CURLINFO_HTTP_CODE (integer)
CURLINFO_HEADER_OUT (integer)
Available since PHP 5.1.3
CURLINFO_HEADER_SIZE (integer)
CURLINFO_REQUEST_SIZE (integer)
CURLINFO_TOTAL_TIME (integer)
CURLINFO_NAMELOOKUP_TIME (integer)
CURLINFO_CONNECT_TIME (integer)
CURLINFO_PRETRANSFER_TIME (integer)
CURLINFO_SIZE_UPLOAD (integer)
CURLINFO_SIZE_DOWNLOAD (integer)
CURLINFO_SPEED_DOWNLOAD (integer)
CURLINFO_SPEED_UPLOAD (integer)
CURLINFO_FILETIME (integer)
CURLINFO_SSL_VERIFYRESULT (integer)
CURLINFO_CONTENT_LENGTH_DOWNLOAD (integer)
CURLINFO_CONTENT_LENGTH_UPLOAD (integer)
CURLINFO_STARTTRANSFER_TIME (integer)
CURLINFO_CONTENT_TYPE (integer)
CURLINFO_REDIRECT_TIME (integer)
CURLINFO_REDIRECT_COUNT (integer)
CURL_TIMECOND_IFMODSINCE (integer)
CURL_TIMECOND_IFUNMODSINCE (integer)
CURL_TIMECOND_LASTMOD (integer)
CURL_VERSION_IPV6 (integer)
CURL_VERSION_KERBEROS4 (integer)
CURL_VERSION_SSL (integer)
CURL_VERSION_LIBZ (integer)
CURLVERSION_NOW (integer)
CURLE_OK (integer)
CURLE_UNSUPPORTED_PROTOCOL (integer)
CURLE_FAILED_INIT (integer)
CURLE_URL_MALFORMAT (integer)
CURLE_URL_MALFORMAT_USER (integer)
CURLE_COULDNT_RESOLVE_PROXY (integer)
CURLE_COULDNT_RESOLVE_HOST (integer)
CURLE_COULDNT_CONNECT (integer)
CURLE_FTP_WEIRD_SERVER_REPLY (integer)
CURLE_FTP_ACCESS_DENIED (integer)
CURLE_FTP_USER_PASSWORD_INCORRECT (integer)
CURLE_FTP_WEIRD_PASS_REPLY (integer)
CURLE_FTP_WEIRD_USER_REPLY (integer)
CURLE_FTP_WEIRD_PASV_REPLY (integer)
CURLE_FTP_WEIRD_227_FORMAT (integer)
CURLE_FTP_CANT_GET_HOST (integer)
CURLE_FTP_CANT_RECONNECT (integer)
CURLE_FTP_COULDNT_SET_BINARY (integer)
CURLE_PARTIAL_FILE (integer)
CURLE_FTP_COULDNT_RETR_FILE (integer)
CURLE_FTP_WRITE_ERROR (integer)
CURLE_FTP_QUOTE_ERROR (integer)
CURLE_HTTP_NOT_FOUND (integer)
CURLE_WRITE_ERROR (integer)
CURLE_MALFORMAT_USER (integer)
CURLE_FTP_COULDNT_STOR_FILE (integer)
CURLE_READ_ERROR (integer)
CURLE_OUT_OF_MEMORY (integer)
CURLE_OPERATION_TIMEOUTED (integer)
CURLE_FTP_COULDNT_SET_ASCII (integer)
CURLE_FTP_PORT_FAILED (integer)
CURLE_FTP_COULDNT_USE_REST (integer)
CURLE_FTP_COULDNT_GET_SIZE (integer)
CURLE_HTTP_RANGE_ERROR (integer)
CURLE_HTTP_POST_ERROR (integer)
CURLE_SSL_CONNECT_ERROR (integer)
CURLE_FTP_BAD_DOWNLOAD_RESUME (integer)
CURLE_FILE_COULDNT_READ_FILE (integer)
CURLE_LDAP_CANNOT_BIND (integer)
CURLE_LDAP_SEARCH_FAILED (integer)
CURLE_LIBRARY_NOT_FOUND (integer)
CURLE_FUNCTION_NOT_FOUND (integer)
CURLE_ABORTED_BY_CALLBACK (integer)
CURLE_BAD_FUNCTION_ARGUMENT (integer)
CURLE_BAD_CALLING_ORDER (integer)
CURLE_HTTP_PORT_FAILED (integer)
CURLE_BAD_PASSWORD_ENTERED (integer)
CURLE_TOO_MANY_REDIRECTS (integer)
CURLE_UNKNOWN_TELNET_OPTION (integer)
CURLE_TELNET_OPTION_SYNTAX (integer)
CURLE_OBSOLETE (integer)
CURLE_SSL_PEER_CERTIFICATE (integer)
CURLE_GOT_NOTHING (integer)
CURLE_SSL_ENGINE_NOTFOUND (integer)
CURLE_SSL_ENGINE_SETFAILED (integer)
CURLE_SEND_ERROR (integer)
CURLE_RECV_ERROR (integer)
CURLE_SHARE_IN_USE (integer)
CURLE_SSL_CERTPROBLEM (integer)
CURLE_SSL_CIPHER (integer)
CURLE_SSL_CACERT (integer)
CURLE_BAD_CONTENT_ENCODING (integer)
CURLE_LDAP_INVALID_URL (integer)
CURLE_FILESIZE_EXCEEDED (integer)
CURLE_FTP_SSL_FAILED (integer)
CURLFTPAUTH_DEFAULT (integer)
Available since PHP 5.1.0
CURLFTPAUTH_SSL (integer)
Available since PHP 5.1.0
CURLFTPAUTH_TLS (integer)
Available since PHP 5.1.0
CURLPROXY_HTTP (integer)
CURLPROXY_SOCKS5 (integer)
CURL_NETRC_OPTIONAL (integer)
CURL_NETRC_IGNORED (integer)
CURL_NETRC_REQUIRED (integer)
CURL_HTTP_VERSION_NONE (integer)
CURL_HTTP_VERSION_1_0 (integer)
CURL_HTTP_VERSION_1_1 (integer)
CURLM_CALL_MULTI_PERFORM (integer)
CURLM_OK (integer)
CURLM_BAD_HANDLE (integer)
CURLM_BAD_EASY_HANDLE (integer)
CURLM_OUT_OF_MEMORY (integer)
CURLM_INTERNAL_ERROR (integer)
CURLMSG_DONE (integer)
Tipos Resource
Exemplos
cURL


Exemplos

Índice

Constantes pré-definidas
cURL


Exemplos
Funções da cURL
Exemplos
PHP Manual

Após você ter compilado o PHP com suporte a cURL, você pode começar a usar as funções cURL. A idéia basica por trás das funções cURL é que você começa uma sessão cURL usando curl_init(), então você define todas as suas opções para a transferência com curl_setopt(), então você executa a sessão com curl_exec() e você termina a sua sessão usando a função curl_close(). Aqui está um exemplo que usa as funções cURL para obter a homepage example.com em um arquivo:

Exemplo #1 Usando o módulo cURL para obter a homepage example.com

<?php

$ch = curl_init("http://www.example.com/");
$fp = fopen("example_homepage.txt", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);
?>

Exemplos
Funções da cURL
Exemplos


Funções da cURL

Índice

  • curl_close — Fecha uma sessão cURL
  • curl_copy_handle — Copia o manipulador cURL com todas as suas preferências
  • curl_errno — Retorna o último número de erro
  • curl_error — Retorna uma string contendo o último erro da sessão atual
  • curl_exec — Executa uma sessão CURL
  • curl_getinfo — Obtém uma informação sobre uma transferência específica
  • curl_init — Inicializa uma sessão cURL
  • curl_multi_add_handle — Adiciona um manipulador cURL a um multi manipulador cURL
  • curl_multi_close — Fecha um conjunto de manipuladores cURL
  • curl_multi_exec — Executa a sub-conexão do atual manipulador cURL
  • curl_multi_getcontent — Retorna o conteúdo de um manipulador cURL se CURLOPT_RETURNTRANSFER é usado
  • curl_multi_info_read — Get information about the current transfers
  • curl_multi_init — Retorna um novo multi manipulador cURL
  • curl_multi_remove_handle — Remove a multi handle from a set of cURL handles
  • curl_multi_select — Obtem todas as sockets associadas com a extensão cURL, podendo assim ser "selecionada"
  • curl_setopt_array — Set multiple options for a cURL transfer
  • curl_setopt — Define uma opção para a transferencia cURL
  • curl_version — Obtém informação da versão da cURL
curl_close
cURL


Fecha uma sessão cURL

Funções da cURL
curl_copy_handle
Funções da cURL
PHP Manual

curl_close

(PHP 4 >= 4.0.2, PHP 5)

curl_close — Fecha uma sessão cURL

Descrição

void curl_close ( resource $ch )

Fecha uma sessão cURL e libera todos os recursos. O manipulador cURL, ch, é também excluído.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Começando uma sessão cURL e obtendo uma página

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

Veja Também

  • curl_init() - Inicializa uma sessão cURL
  • curl_multi_close() - Fecha um conjunto de manipuladores cURL

Funções da cURL
curl_copy_handle
Funções da cURL


Copia o manipulador cURL com todas as suas preferências

curl_close
curl_errno
Funções da cURL
PHP Manual

curl_copy_handle

(PHP 5)

curl_copy_handle — Copia o manipulador cURL com todas as suas preferências

Descrição

resource curl_copy_handle ( resource $ch )

Copia o manipulador cURL mantendo as mesmas preferências.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna um novo manipulador cURL.

Exemplos

Exemplo #1 Copiando um manipulador cURL

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/');
curl_setopt($ch, CURLOPT_HEADER, 0);

// copy the handle
$ch2 = curl_copy_handle($ch);

// grab URL (http://www.example.com/) and pass it to the browser
curl_exec($ch2);

// close cURL resources, and free up system resources
curl_close($ch2);
curl_close($ch);
?>

curl_close
curl_errno
Funções da cURL


Retorna o último número de erro

curl_copy_handle
curl_error
Funções da cURL
PHP Manual

curl_errno

(PHP 4 >= 4.0.3, PHP 5)

curl_errno — Retorna o último número de erro

Descrição

int curl_errno ( resource $ch )

Retorna o número de erro para a última operação cURL.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna o número do erro ou 0 (zero) se nenhum erro ocorreu.

Veja Também

  • curl_error() - Retorna uma string contendo o último erro da sessão atual
  • » Códigos de erros cURL

curl_copy_handle
curl_error
Funções da cURL


Retorna uma string contendo o último erro da sessão atual

curl_errno
curl_exec
Funções da cURL
PHP Manual

curl_error

(PHP 4 >= 4.0.3, PHP 5)

curl_error — Retorna uma string contendo o último erro da sessão atual

Descrição

string curl_error ( resource $ch )

Retorna uma mensagem de erro para a última operação cURL.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna a mensagem de erro ou '' (a string vazia) se nenhum erro ocorreu.

Exemplos

Exemplo #1 Exemplo da curl_error()

<?php
// Cria um handle para uma url inválida
$ch = curl_init('http://404.php.net/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

if(curl_exec($ch) === false)
{
    echo 'Curl error: ' . curl_error($ch);
}
else
{
    echo 'Operation completed without any errors';
}

// Fecha o handle
curl_close($ch);
?>

Veja Também

  • curl_errno() - Retorna o último número de erro
  • » Códigos de erro cURL

curl_errno
curl_exec
Funções da cURL


Executa uma sessão CURL

curl_error
curl_getinfo
Funções da cURL
PHP Manual

curl_exec

(PHP 4 >= 4.0.2, PHP 5)

curl_exec — Executa uma sessão CURL

Descrição

mixed curl_exec ( resource $ch )

Executa uma dada sessão cURL.

Esta função deve ser chamada após você iniciar uma sessão CURL e todas as opções para a sessão CURL estiverem definidas.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Contudo, se a opção CURLOPT_RETURNTRANSFER é definida, irá retornar o resultado em sucesso, FALSE em falha.

Exemplos

Exemplo #1 Obtendo uma página

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

Veja Também

  • curl_multi_exec() - Executa a sub-conexão do atual manipulador cURL

curl_error
curl_getinfo
Funções da cURL


Obtém uma informação sobre uma transferência específica

curl_exec
curl_init
Funções da cURL
PHP Manual

curl_getinfo

(PHP 4 >= 4.0.4, PHP 5)

curl_getinfo — Obtém uma informação sobre uma transferência específica

Descrição

mixed curl_getinfo ( resource $ch [, int $opt ] )

Obtém informação sobre a última transferência.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

opt

Pode ser uma das seguintes contantes:

  • CURLINFO_EFFECTIVE_URL - Última URL efetiva
  • CURLINFO_HTTP_CODE - Último código HTTP recebido
  • CURLINFO_FILETIME - Tempo remoto do documento obtido, se -1 for retornado, então o tempo do documento é desconhecido
  • CURLINFO_TOTAL_TIME - Tempo total da transação em segundos para a última transferencia
  • CURLINFO_NAMELOOKUP_TIME - Tempo em segundos até que a resolução tenha sido completada
  • CURLINFO_CONNECT_TIME - Tempo em segundos que levou para estabelecer a conexão
  • CURLINFO_PRETRANSFER_TIME - Tempo em segundos do início até que a transferencia esteja a ponto de começar
  • CURLINFO_STARTTRANSFER_TIME - Tempo em segundos até que o primeiro byte esteja a ponto de ser transferido
  • CURLINFO_REDIRECT_TIME - Tempo em segundos de todos os passos de redirecionamento antes que a transação tenha começado
  • CURLINFO_SIZE_UPLOAD - Número total de bytes enviados
  • CURLINFO_SIZE_DOWNLOAD - Número total de bytes baixados
  • CURLINFO_SPEED_DOWNLOAD - Média de tempo do download
  • CURLINFO_SPEED_UPLOAD - Média de tempo do upload
  • CURLINFO_HEADER_SIZE - Tamanho total dos cabeçalhos recebidos
  • CURLINFO_HEADER_OUT - A string da requisição enviada. Disponível desde o PHP 5.1.3
  • CURLINFO_REQUEST_SIZE - Tamanho da requisição emitida, atualmente somente para requisições HTTP
  • CURLINFO_SSL_VERIFYRESULT - Resultado da verificação da certificação SSL requisitada pela opção CURLOPT_SSL_VERIFYPEER
  • CURLINFO_CONTENT_LENGTH_DOWNLOAD - content-length do download, lido do campo Content-Length:.
  • CURLINFO_CONTENT_LENGTH_UPLOAD - Especifica o tamanho do upload
  • CURLINFO_CONTENT_TYPE - Content-type do objeto que foi feito download, NULL indica que o servidor não enviou um válido cabeçalho Content-Type.

Valor Retornado

Se opt é fornecido, retorna o valor como uma string. Caso contrário, retorna um array associativo com os seguintes elementos (que corresponde a opt):

  • "url"
  • "content_type"
  • "http_code"
  • "header_size"
  • "request_size"
  • "filetime"
  • "ssl_verify_result"
  • "redirect_count"
  • "total_time"
  • "namelookup_time"
  • "connect_time"
  • "pretransfer_time"
  • "size_upload"
  • "size_download"
  • "speed_download"
  • "speed_upload"
  • "download_content_length"
  • "upload_content_length"
  • "starttransfer_time"
  • "redirect_time"

curl_exec
curl_init
Funções da cURL


Inicializa uma sessão cURL

curl_getinfo
curl_multi_add_handle
Funções da cURL
PHP Manual

curl_init

(PHP 4 >= 4.0.2, PHP 5)

curl_init — Inicializa uma sessão cURL

Descrição

resource curl_init ([ string $url ] )

Inicilializa uma nova sessão e retorna o manipulador cURL para usar com a curl_setopt(), curl_exec(), e curl_close().

Parâmetros

url

Se informado, a opção CURLOPT_URL será definida para este valor. Você pode manualmente definir usando a função curl_setopt().

Valor Retornado

Retorna um manipulador cURL em sucesso, FALSE em erros.

Exemplos

Exemplo #1 Inicializando uma sessão cURL e obtendo uma página

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

Veja Também

  • curl_close() - Fecha uma sessão cURL
  • curl_multi_init() - Retorna um novo multi manipulador cURL

curl_getinfo
curl_multi_add_handle
Funções da cURL


Adiciona um manipulador cURL a um multi manipulador cURL

curl_init
curl_multi_close
Funções da cURL
PHP Manual

curl_multi_add_handle

(PHP 5)

curl_multi_add_handle — Adiciona um manipulador cURL a um multi manipulador cURL

Descrição

int curl_multi_add_handle ( resource $mh , resource $ch )

Adiciona o manipulador ch ao multi manipulador mh

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna 0 em sucesso, ou um código de erro CURLM_XXX.

Exemplos

Exemplo #1 curl_multi_add_handle() example

Este exemplo irá criar dois manipuladores cURL, e adiciona-os ao multi manipulador, e então executa-os em paralelo.

<?php
// create both cURL resources
$ch1 = curl_init();
$ch2 = curl_init();

// set URL and other appropriate options
curl_setopt($ch1, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);

//create the multiple cURL handle
$mh = curl_multi_init();

//add the two handles
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$running=null;
//execute the handles
do {
    curl_multi_exec($mh,$running);
} while($running > 0);

//close all the handles
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);
?>

Veja Também

  • curl_multi_remove_handle() - Remove a multi handle from a set of cURL handles
  • curl_multi_init() - Retorna um novo multi manipulador cURL
  • curl_init() - Inicializa uma sessão cURL

curl_init
curl_multi_close
Funções da cURL


Fecha um conjunto de manipuladores cURL

curl_multi_add_handle
curl_multi_exec
Funções da cURL
PHP Manual

curl_multi_close

(PHP 5)

curl_multi_close — Fecha um conjunto de manipuladores cURL

Descrição

void curl_multi_close ( resource $mh )

Fecha um conjunto de manipuladores cURL.

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 curl_multi_close() example

Este exemplo irá criar dois manipuladores cURL, e adiciona-os a um multi manipulador, e então executa-is em paralelo,

<?php
// create both cURL resources
$ch1 = curl_init();
$ch2 = curl_init();

// set URL and other appropriate options
curl_setopt($ch1, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);

//create the multiple cURL handle
$mh = curl_multi_init();

//add the two handles
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$running=null;
//execute the handles
do {
    curl_multi_exec($mh,$running);
} while ($running > 0)
//close the handles
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);

?>

Veja Também

  • curl_multi_init() - Retorna um novo multi manipulador cURL
  • curl_close() - Fecha uma sessão cURL

curl_multi_add_handle
curl_multi_exec
Funções da cURL


Executa a sub-conexão do atual manipulador cURL

curl_multi_close
curl_multi_getcontent
Funções da cURL
PHP Manual

curl_multi_exec

(PHP 5)

curl_multi_exec — Executa a sub-conexão do atual manipulador cURL

Descrição

int curl_multi_exec ( resource $mh , int &$still_running )

Processa cada um dos manipuladores da pilha. Este método pode ser chamado ou não se um manipulador precisa ler ou escrever dados.

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

still_running

Uma referência para uma flag indicando se a operação está em execução.

Valor Retornado

Um código cURL definido nas Constantes Pré-definidas cURL.

Nota:

Isto somente retorna erros referentes a toda pilha. Se um problema ocorre em uma transferência individual está função retorna CURLM_OK.

Exemplos

Exemplo #1 curl_multi_exec() example

Este exemplo irá criar dois manipuladores cURL, e adiciona-los ao multi manipulador, e então executá-los em paralelo.

<?php
// create both cURL resources
$ch1 = curl_init();
$ch2 = curl_init();

// set URL and other appropriate options
curl_setopt($ch1, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);

//create the multiple cURL handle
$mh = curl_multi_init();

//add the two handles
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$active = null;
//execute the handles
do {
    $mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);

while ($active && $mrc == CURLM_OK) {
    if (curl_multi_select($mh) != -1) {
        do {
            $mrc = curl_multi_exec($mh, $active);
        } while ($mrc == CURLM_CALL_MULTI_PERFORM);
    }
}

//close the handles
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);

?>

Veja Também

  • curl_multi_init() - Retorna um novo multi manipulador cURL
  • curl_exec() - Executa uma sessão CURL

curl_multi_close
curl_multi_getcontent
Funções da cURL


Retorna o conteúdo de um manipulador cURL se CURLOPT_RETURNTRANSFER é usado

curl_multi_exec
curl_multi_info_read
Funções da cURL
PHP Manual

curl_multi_getcontent

(PHP 5)

curl_multi_getcontent — Retorna o conteúdo de um manipulador cURL se CURLOPT_RETURNTRANSFER é usado

Descrição

string curl_multi_getcontent ( resource $ch )

Se CURLOPT_RETURNTRANSFER é um opção que foi definida para um específico manipulador, então esta função irá retorna o conteúdo do manipulador em forma de uma string.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

Retorna o conteúdo de um manipulador cURL se CURLOPT_RETURNTRANSFER é usado.

Veja Também

  • curl_multi_init() - Retorna um novo multi manipulador cURL

curl_multi_exec
curl_multi_info_read
Funções da cURL


Get information about the current transfers

curl_multi_getcontent
curl_multi_init
Funções da cURL
PHP Manual

curl_multi_info_read

(PHP 5)

curl_multi_info_read — Get information about the current transfers

Descrição

array curl_multi_info_read ( resource $mh [, int &$msgs_in_queue = NULL ] )

Ask the multi handle if there are any messages or information from the individual transfers. Messages may include information such as an error code from the transfer or just the fact that a transfer is completed.

Repeated calls to this function will return a new result each time, until a FALSE is returned as a signal that there is no more to get at this point. The integer pointed to with msgs_in_queue will contain the number of remaining messages after this function was called.

Aviso

The data the returned resource points to will not survive calling curl_multi_remove_handle().

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

msgs_in_queue

Number of messages that are still in the queue

Valor Retornado

On success, returns an associative array for the message, FALSE on failure.

Contents of the returned array
Key: | Value:
msg | The CURLMSG_DONE constant. Other return values are currently not available.
result | One of the CURLE_* constants. If everything is OK, the CURLE_OK will be the result.
handle | Resource of type curl indicates the handle which it concerns.

Exemplos

Exemplo #1 A curl_multi_info_read() example

<?php

$urls = array(
   "http://www.cnn.com/",
   "http://www.bbc.co.uk/",
   "http://www.yahoo.com/"
);

$mh = curl_multi_init();

foreach ($urls as $i => $url) {
    $conn[$i] = curl_init($url);
    curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
    curl_multi_add_handle($mh, $conn[$i]);
}

do {
    $status = curl_multi_exec($mh, $active);
    $info = curl_multi_info_read($mh);
    if (false !== $info) {
        var_dump($info);
    }
} while ($status === CURLM_CALL_MULTI_PERFORM || $active);

foreach ($urls as $i => $url) {
    $res[$i] = curl_multi_getcontent($conn[$i]);
    curl_close($conn[$i]);
}

var_dump(curl_multi_info_read($mh));

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(5) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(7) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(6) of type (curl)
}
bool(false)

Histórico

Versão | Descrição
5.2.0 | msgs_in_queue was added.

Veja Também

  • curl_multi_init() - Retorna um novo multi manipulador cURL

curl_multi_getcontent
curl_multi_init
Funções da cURL


Retorna um novo multi manipulador cURL

curl_multi_info_read
curl_multi_remove_handle
Funções da cURL
PHP Manual

curl_multi_init

(PHP 5)

curl_multi_init — Retorna um novo multi manipulador cURL

Descrição

resource curl_multi_init ( void )

Permite o processamento de múltiplas manipuladores cURL em paralelo.

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

Valor Retornado

Retorna um manipulador cURL em sucesso, FALSE em falha.

Exemplos

Exemplo #1 curl_multi_init() example

Este exemplo irá criar dois manipuladores cURL, e adiciona-os ao multi manipulador, e então executá-os em paralelo.

<?php
// create both cURL resources
$ch1 = curl_init();
$ch2 = curl_init();

// set URL and other appropriate options
curl_setopt($ch1, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);

//create the multiple cURL handle
$mh = curl_multi_init();

//add the two handles
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$running=null;
//execute the handles
do {
    curl_multi_exec($mh,$running);
} while ($running > 0);

//close the handles
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);

?>

Veja Também

  • curl_init() - Inicializa uma sessão cURL
  • curl_multi_close() - Fecha um conjunto de manipuladores cURL

curl_multi_info_read
curl_multi_remove_handle
Funções da cURL


Remove a multi handle from a set of cURL handles

curl_multi_init
curl_multi_select
Funções da cURL
PHP Manual

curl_multi_remove_handle

(PHP 5)

curl_multi_remove_handle — Remove a multi handle from a set of cURL handles

Descrição

int curl_multi_remove_handle ( resource $mh , resource $ch )

Removes a given ch handle from the given mh handle. When the ch handle has been removed, it is again perfectly legal to run curl_exec() on this handle. Removing the ch handle while being used, will effectively halt the transfer in progress involving that handle.

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

ch

Um manipulador cURL retornado por curl_init().

Valor Retornado

On success, returns a cURL handle, FALSE on failure.

Veja Também

  • curl_init() - Inicializa uma sessão cURL
  • curl_multi_init() - Retorna um novo multi manipulador cURL
  • curl_multi_add_handle() - Adiciona um manipulador cURL a um multi manipulador cURL

curl_multi_init
curl_multi_select
Funções da cURL


Obtem todas as sockets associadas com a extensão cURL, podendo assim ser "selecionada"

curl_multi_remove_handle
curl_setopt_array
Funções da cURL
PHP Manual

curl_multi_select

(PHP 5)

curl_multi_select — Obtem todas as sockets associadas com a extensão cURL, podendo assim ser "selecionada"

Descrição

int curl_multi_select ( resource $mh [, float $timeout ] )

Obtem todas as sockets associadas com a extensão cURL, podendo assim ser "selecionada".

Parâmetros

mh

Um manipulador múltiplo cURL retornado por curl_multi_init().

timeout

Tempo, em segundos, para esperar por uma resposta.

Valor Retornado

Em sucesso. retorna um número de descritores contidos na, lista de descritores. Em falha, esta função irá retorna FALSE.

Veja Também

  • curl_multi_init() - Retorna um novo multi manipulador cURL

curl_multi_remove_handle
curl_setopt_array
Funções da cURL


Set multiple options for a cURL transfer

curl_multi_select
curl_setopt
Funções da cURL
PHP Manual

curl_setopt_array

(PHP 5 >= 5.1.3)

curl_setopt_array — Set multiple options for a cURL transfer

Descrição

bool curl_setopt_array ( resource $ch , array $options )

Define múltiplas opções para um sessão cURL. Esta função é útil para definir diversas opções cURL sem repetir a chamada da função curl_setopt().

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

options

Um array especificando quais opções serão definida e seus respectivos valores. As chaves devem ser válidas constantes curl_setopt() ou seu inteiros equivalentes.

Valor Retornado

Retorna TRUE se todas opções foram definididas com sucesso. Se uma opção não foi definida com sucesso, FALSE é imediatamente retornado, ignorando qualquer outra opção da array options.

Exemplos

Exemplo #1 Inicializando uma nova sessão cURL e obtendo o código-fonte de uma página web

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
$options = array(CURLOPT_URL => 'http://www.example.com/',
                 CURLOPT_HEADER => false
                );

curl_setopt_array($ch, $options);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

Antes do PHP 5.1.4 esta função pode ser simulada com:

Exemplo #2 Nossa implementação da curl_setopt_array()

<?php
if (!function_exists('curl_setopt_array')) {
   function curl_setopt_array(&$ch, $curl_options)
   {
       foreach ($curl_options as $option => $value) {
           if (!curl_setopt($ch, $option, $value)) {
               return false;
           }
       }
       return true;
   }
}
?>

Veja Também

  • curl_setopt() - Define uma opção para a transferencia cURL

curl_multi_select
curl_setopt
Funções da cURL


Define uma opção para a transferencia cURL

curl_setopt_array
curl_version
Funções da cURL
PHP Manual

curl_setopt

(PHP 4 >= 4.0.2, PHP 5)

curl_setopt — Define uma opção para a transferencia cURL

Descrição

bool curl_setopt ( resource $ch , int $option , mixed $value )

Define uma opção para o manipulador de sessão cURL indicado.

Parâmetros

ch

Um manipulador cURL retornado por curl_init().

option

A CURLOPT_XXX opção a definir.

value

O valor a ser definido em option.

value deve ser um booleano para os seguintes valores do parâmetro option:

Opção | Definir value para | Notas
CURLOPT_AUTOREFERER | TRUE para definir automaticamente um campo Referer: nas requisições aonde ele segue um redirecionamento Location:. | Disponível desde PHP 5.1.0.
CURLOPT_BINARYTRANSFER | TRUE para retornar a saída crua quando CURLOPT_RETURNTRANSFER é usado.
CURLOPT_COOKIESESSION | TRUE para marcar este como um novo cookie de sessão. Ela irá forçar a libcurl a ignorar todos os cookies que esteja a ponto de carregar que sejam "cookies de sessão" da sessão anterior. Por padrão, libcurl sempre salva e carrega todos os cookies, independente se sejam cookies de sessão ou não. Cookies de sessão são cookies sem data de expiração o que significa que devem estar vivos e existir apenas para essa sesão apenas. | Disponível desde PHP 5.1.0.
CURLOPT_CRLF | TRUE para converter finais de linha Unix para finais de linha CRLF nas transferencias.
CURLOPT_DNS_USE_GLOBAL_CACHE | TRUE para usar um cache de DNS global. Esta opção não é thread-safe e esta ativada por padrão.
CURLOPT_FAILONERROR | TRUE para falhar silenciosamente se o codigo HTTP retornado for maior ou igual a 400. O funcionamento padrão é retornar a pagina normalmente, ignorando o codigo.
CURLOPT_FILETIME | TRUE para tentar obter a data de modificação do documento remoto. Este valor pode ser obtido usando a opção CURLINFO_FILETIME com curl_getinfo().
CURLOPT_FOLLOWLOCATION | TRUE para seguir qualquer cabeçalho "Location: " que o servidor envie como parte do cabeçalho HTTP (note que isto é recursivo, PHP irá seguir tantos cabeçalhos "Location: " quantos sejam enviados, a menos que CURLOPT_MAXREDIRS seja definido).
CURLOPT_FORBID_REUSE | TRUE para forçar a conexão ser fechada explicitamente quando o processamento seja terminado, e não ser guardada para reuso.
CURLOPT_FRESH_CONNECT | TRUE para forçar o uso de uma nova conexão ao invés de uma guardada em cache.
CURLOPT_FTP_USE_EPRT | TRUE para usar EPRT (e LPRT) ao fazer downloads FTP ativos. Use FALSE para desabilitar EPRT e LPRT e usar apenas PORT. | Adicionado no PHP 5.0.0.
CURLOPT_FTP_USE_EPSV | TRUE para tentar primeiro um comando EPSV pára transferencias FTP antes de reverter de volta para PASV. Defina como FALSE para desabilitar EPSV.
CURLOPT_FTPAPPEND | TRUE para adicionar ao arquivo remoto ao invés de sobrescreve-lo.
CURLOPT_FTPASCII | um apelido para CURLOPT_TRANSFERTEXT. Use aquela ao invés.
CURLOPT_FTPLISTONLY | TRUE para listar apenas os nomes de um diretório FTP.
CURLOPT_HEADER | TRUE para incluir o cabeçalho na saída.
CURLOPT_HTTPGET | TRUE para redefinir o metodo de solicitação HTTP para GET. já que GET é o padrão, isto apenas é necessário se o metodo de solicitação foi modificado.
CURLOPT_HTTPPROXYTUNNEL | TRUE para fazer tunel através de um servidor HTTP proxy indicado.
CURLOPT_MUTE | TRUE para ser compeltamente silencioso no que diz respeito as funções cURL.
CURLOPT_NETRC | TRUE para procurar no arquivo ~/.netrc um nome de usuário e senha para o local a qual a conexão remota esta sendo estabelecida.
CURLOPT_NOBODY | TRUE para excluir o corpo da saída. O metodo da solicitação é então definido como HEAD. Mudar isto para FALSE não muda-o para o GET.
CURLOPT_NOPROGRESS

TRUE para desabilitar o medidor de progresso para as transferencias cURL.

Nota:

PHP automaticamente define essa opção como TRUE, isto deve ser modificado apenas para fins de debug.

CURLOPT_NOSIGNAL | TRUE para ignorar qualquer função cURL que faça com que um sinal seja enviado para o processo PHP. Isto é ativado por padrão em servidores multi-tarefa assim opções de limite de tempo ainda podem ser usadas. | Adicionado no cURL 7.10 e PHP 5.0.0.
CURLOPT_POST | TRUE para fazer um HTTP POST normal. Este POST é do tipo normal application/x-www-form-urlencoded, mais comunmente usado pelos formulários HTML.
CURLOPT_PUT | TRUE para enviar um arquivo usando HTTP PUT. O arquivo a enviar deve estar definido com CURLOPT_INFILE e CURLOPT_INFILESIZE.
CURLOPT_RETURNTRANSFER | TRUE para retornar a transferencia como uma string de valor de retorno de curl_exec() ao invés de enviar diretamente para a saída.
CURLOPT_SSL_VERIFYPEER | FALSE para fazer o cURL parar de verificar o certificado do cliente. Certificados alternativos para verificar podem ser definidos com a opção CURLOPT_CAINFO ou um diretório de certificados pode ser definido com a opção CURLOPT_CAPATH. CURLOPT_SSL_VERIFYHOST também precisa ser definido como TRUE ou FALSE se CURLOPT_SSL_VERIFYPEER esta desabilitado (o padrão é 2). | TRUE por padrão a partir do cURL 7.10. Instalado por padrão a partir do cURL 7.10.
CURLOPT_TRANSFERTEXT | TRUE para usar o modo ASCII para transferencias FTP. Para LDAP, ele obtem os datos em texto simples ao invés de HTML. Em Sistemas Windows, ele não irá definir STDOUT para o modo binário.
CURLOPT_UNRESTRICTED_AUTH | TRUE para continuar enviando o nome de usuário e senha ao seguir localizações (usando CURLOPT_FOLLOWLOCATION), mesmo que o nome do servidor tenha mudado. | Adicionado no PHP 5.0.0.
CURLOPT_UPLOAD | TRUE para preparar para o envio de um arquivo.
CURLOPT_VERBOSE | TRUE para enviar muita informação para a saída. Escreve a saída para STDERR, ou para o arquivo especificado usando CURLOPT_STDERR.

value deve ser um inteiro para os seguintes valores do parâmetro option:

Opção | Definir value como | Notas
CURLOPT_BUFFERSIZE | O tamanho do buffer a usar em cada lida. Não há garantia de que este pedido será cumprido, entretando. | Adicionado no cURL 7.10 e PHP 5.0.0.
CURLOPT_CLOSEPOLICY | Ou CURLCLOSEPOLICY_LEAST_RECENTLY_USED ou CURLCLOSEPOLICY_OLDEST. Existem ainda três outras constantes CURLCLOSEPOLICY_, mas cURL ainda não as suporta.
CURLOPT_CONNECTTIMEOUT | O número de segundos para esperar ao tentar se conectar. Use 0 para esperar infinitamente.
CURLOPT_DNS_CACHE_TIMEOUT | O número de segundos para manter entradas DNS na memória. Esta opção é definida para 120 (2 minutos) por padrão.
CURLOPT_FTPSSLAUTH | O método de autenticação FTP (quando é ativado): CURLFTPAUTH_SSL (tentar SSL primeiro), CURLFTPAUTH_TLS (tentar TLS primeiro), ou CURLFTPAUTH_DEFAULT (deixar cURL decidir). | Adicionado no cURL 7.12.2 e PHP 5.1.0.
CURLOPT_HTTP_VERSION | CURL_HTTP_VERSION_NONE (padrão, deixa o CURL decidir qual versão usar), CURL_HTTP_VERSION_1_0 (força HTTP/1.0), ou CURL_HTTP_VERSION_1_1 (força HTTP/1.1).
CURLOPT_HTTPAUTH

O metodo de autenticação HTTP a usar. As opções são: CURLAUTH_BASIC, CURLAUTH_DIGEST, CURLAUTH_GSSNEGOTIATE, CURLAUTH_NTLM, CURLAUTH_ANY, e CURLAUTH_ANYSAFE.

O operador de bits | (ou) pode ser usado para combinar mais de um metodo. Se isso for feito, o cURL irá conversar com o servidor e ver quais métodos ele suporta e escolher o melhor.

CURLAUTH_ANY é um apelido para CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM.

CURLAUTH_ANYSAFE é um apelido para CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM.

Adicionado no PHP 5.0.0.
CURLOPT_INFILESIZE | O tamanho experado, em bytes, do arquivo ao enviar um arquivo para um local remoto.
CURLOPT_LOW_SPEED_LIMIT | A velocidade de transferencia, em bytes por segundos, a qual a transferência deve estar abaixo durante de CURLOPT_LOW_SPEED_TIME segundos para o PHP considerar a transferência muito lenta e abortar.
CURLOPT_LOW_SPEED_TIME | O número de segundos que a transferência deve estar abaixo de CURLOPT_LOW_SPEED_LIMIT para o PHP considerar a transferência lenta de mais e abortar.
CURLOPT_MAXCONNECTS | O número máximo de conexões persistentes que são permitidas. Quando o limite é atingido, CURLOPT_CLOSEPOLICY é usado para determinar qual conexão deve ser fechada.
CURLOPT_MAXREDIRS | O número máximo de redirecionamentos HTTP a seguir. Use esta opção em conjunto com CURLOPT_FOLLOWLOCATION.
CURLOPT_PORT | Um número alternativo de porta para conectar.
CURLOPT_PROXYAUTH | Os métodos HTTP de autenticação usados para conectar ao servidor proxy. Use as mesmas mascaras de bits descritas em CURLOPT_HTTPAUTH. Para autenticação com o proxy, apenas CURLAUTH_BASIC e CURLAUTH_NTLM são suportados atualmente. | Adicionado em cURL 7.10.7 e PHP 5.1.0.
CURLOPT_PROXYPORT | O número de porta para conectar ao proxy. Este número de porta também pode ser definido em CURLOPT_PROXY. | Adicionado no PHP 5.0.0.
CURLOPT_PROXYTYPE | Ou CURLPROXY_HTTP (padrão) ou CURLPROXY_SOCKS5. | Adicionado no cURL 7.10 e PHP 5.0.0.
CURLOPT_RESUME_FROM | O índice, em bytes, a partir do qual continuar a transferencia.
CURLOPT_SSL_VERIFYHOST | 1 para conferir a existencia do nome comum no certificado SSL do cliente. 2 para conferir a existencia de um nome comum e também conferir se combina com o nome de servidor dado.
CURLOPT_SSLVERSION | A versão SSL (2 ou 3) a ser usada. por padrão o PHP tentará determinar isso por sí mesmo, entretando em alguns casos deve ser definido manualmente.
CURLOPT_TIMECONDITION | Como CURLOPT_TIMEVALUE é tratado. Use CURL_TIMECOND_IFMODSINCE para retornar apagina apenas se foi modificada desde o tempo especificado em CURLOPT_TIMEVALUE. Se não foi modificada um cabeçalho "304 Not Modified" assumindo que CURLOPT_HEADER seja TRUE. Use CURL_TIMECOND_IFUNMODSINCE para o efeito reverso. CURL_TIMECOND_IFMODSINCE é o padrão. | Adicionado no PHP 5.1.0.
CURLOPT_TIMEOUT | O número máximo de segundos que uma função cURL pode executar.
CURLOPT_TIMEVALUE | O tempo em segundos desde 1º de Janeiro de 1970. O tempo será usado por CURLOPT_TIMECONDITION. Por padrão, CURL_TIMECOND_IFMODSINCE é usado.

value deve ser uma string para os seguintes valores do parâmetro option:

Opção | Definir o value para | Notas
CURLOPT_CAINFO | O nome do arquivo contendo um ou mais certidicados para verificar o peer. Esta opção apenas tem sentido em conjunto com CURLOPT_SSL_VERIFYPEER.
CURLOPT_CAPATH | Um diretório que contem vários certificados CA. Use este opção em conjunto com CURLOPT_SSL_VERIFYPEER.
CURLOPT_COOKIE | O conteúdo do cabeçalho "Set-Cookie: " a ser utilizado na requisição HTTP.
CURLOPT_COOKIEFILE | O nome do arquivo contendo os dados de cookie. O arquivo de cookie pode estar no formato Netscape, ou apenas no estilo de cabeçalhos HTTP salvos em um arquivo.
CURLOPT_COOKIEJAR | O nome do arquivo para salvar todos os cookies internos quando a conexão fechar.
CURLOPT_CUSTOMREQUEST

Um método de solicitação personalizado para usar ao invés de "GET" ou "HEAD" ao fazer uma solicitação HTTP. Isto é útil para fazer "DELETE" ou outras solicitações HTTP mais obscuras. Valores válidos são coisas como "GET", "POST", "CONNECT" e assim por diante; i.e. Do not enter a whole HTTP request line here. For instance, entrar "GET /index.html HTTP/1.0\r\n\r\n" estaria errado.

Nota:

Não faça isto sem ter certesa que o servidor suporte a requisição personaçlizada primeiro.

CURLOPT_EGDSOCKET | Como CURLOPT_RANDOM_FILE, exceto um nome de arquivo para um Entropy Gathering Daemon socket.
CURLOPT_ENCODING | O conteúdo do cabeçalho "Accept-Encoding: ". Isto ativa a decodificação da resposta. codificações suportadas são "identity", "deflate", e "gzip". Se for definida uma string vazia, "", um cabeçalho contendo todos os tipos de codificações suportados é enviado. | Adicionado no cURL 7.10.
CURLOPT_FTPPORT | O valor o qual vai ser usado para ter o endereço IP para usar com a instrução FTP "POST". A instrução "POST" diz ao servidor remoto conectar com o seu endereço IP especificado. A string deve ser um endereço IP simples, um nome de servidor, um nome de interface de rede (sob o Unix), ou apenas um simples "-" para usar o endereço IP padrão do sistema.
CURLOPT_INTERFACE | O nome da interface de rede de saída a usar. Isto pode ser um nome de interface, um endereço IP ou um nome de servidor.
CURLOPT_KRB4LEVEL | O nível de segurança KRB4 (Kerberos 4). Qualquer un dos seguintes valores (em ordem do menos ao mais poderoso) são válidos: "clear", "safe", "confidential", "private".. Se a string não combinar com um destes, "private" é usado. Definir esta opção como NULL irá desabilitar a segurança KRB4. Atualmente a segurança KRB4 funciona apenas com transações FTP.
CURLOPT_POSTFIELDS | Todos os dados para enviar em uma operação HTTP "POST". Para enviar um arquivo, adicione antes do nome do arquivo um @ e use o caminho completo. Isto pode ser passado como uma string codificada para url como 'para1=val1&para2=val2&...' ou como uma matriz com o nome do campo como índice e o dado do campo como valor.
CURLOPT_PROXY | O servidor HTTP proxy pelo qual passar as requisições.
CURLOPT_PROXYUSERPWD | Um nome de usuário e senha formatados como "[username]:[password]" para usar na conexão com o proxy.
CURLOPT_RANDOM_FILE | Um nome de arquivo para ser usado como semente para o gerador de números aleatórios para SSL.
CURLOPT_RANGE | Intervalo(s) de data para obter no formato "X-Y" aonde X ou Y é opcional. Transferencias HTTP também suportam vários intervalos, separados por vírgulas no formato "X-Y,N-M".
CURLOPT_REFERER | O conteúdo do cabeçalho "Referer: " a ser usado em uma solicitação HTTP.
CURLOPT_SSL_CIPHER_LIST | Uma lista de ciphers para usar com SSL. Por exemplo, RC4-SHA e TLSv1 são listas cipher validas.
CURLOPT_SSLCERT | O nome de um arquivo contendo um certificado formatado PEM.
CURLOPT_SSLCERTPASSWD | A senha necessária para usar o certificado CURLOPT_SSLCERT.
CURLOPT_SSLCERTTYPE | O formato do certificado. Formatos suportados são "PEM" (default), "DER", e "ENG". | Adicionado no cURL 7.9.3 e PHP 5.0.0.
CURLOPT_SSLENGINE | O identificador para o motor de criptografia da chave SSL privada especificada em CURLOPT_SSLKEY.
CURLOPT_SSLENGINE_DEFAULT | O identificador para o motor de criptografia usado para para operações assimétricas.
CURLOPT_SSLKEY | O nome de um arquivo contendo uma chave SSL privada.
CURLOPT_SSLKEYPASSWD

A senha secreta necessária para usar a chave privada SSL especificada em CURLOPT_SSLKEY.

Nota:

Já que esta opção contem uma senha sensível, lembre-se de manter o script PHP que a contem em segurança.

CURLOPT_SSLKEYTYPE | O tipo de chave para a chave SSL privada especificada em CURLOPT_SSLKEY. Tipos de chaves suportados são "PEM" (default), "DER", and "ENG".
CURLOPT_URL | A URL para obter. isto também pode ser definido ao inicializar a sessão com curl_init().
CURLOPT_USERAGENT | O conteúdo do cabeçalho "User-Agent: " a ser usado na solicitação HTTP.
CURLOPT_USERPWD | Um nome de usuário e senha formatado como "[username]:[password]" para usar para a conexão.

value deve ser uma matriz para os seguintes valores do parâmetro option:

Opção | Definir value como | Notas
CURLOPT_HTTP200ALIASES | Um array de respostas HTTP 200 que serão tratadas como respostas válidas e não como erros. | Adicionado no cURL 7.10.3 e PHP 5.0.0.
CURLOPT_HTTPHEADER | Um array de cabeçalhos HTTP a definir.
CURLOPT_POSTQUOTE | Um array de comandos FTP a executar no servidor depois de a requisição FTP ter sido realizada.
CURLOPT_QUOTE | Um array de comandos FTP a serem executados no servidor antes da requesição.

value deve ser um recurso stream (usando fopen(), por exemplo) para os seguintes valores do parâmetro option:

Opção | Define value como | Notas
CURLOPT_FILE | O arquivo na qual a transferencia deve ser escrita. O padrão é STDOUT (a janela do browser).
CURLOPT_INFILE | O arquivo que deve ser lido ao se fazer um upload.
CURLOPT_STDERR | Um local alternativo para se escrever os erros ao invés de STDERR.
CURLOPT_WRITEHEADER | O arquivo em que a parte do cabeçalho da transferencia é escrita.

value dese ser uma string que seja o nome de uma função de callback válida para os seguintes valores do parãmetro option:

Opção | Define value como | Notas
CURLOPT_HEADERFUNCTION | O nome da função de callback aonde a função de callback tem dois parâmetros. O primeiro é o recurso cURL, o segundo é uma string com os ados a serem escritos. Os dados do cabeçalho devem ser escritos usando esta função de callback. Retorna o número de bytes escritos.
CURLOPT_PASSWDFUNCTION | O nome da função de callback aonde a função de callback tem três parâmetros. O primeiro é o recurso cURL, o segundo é uma string contendo uma string para o pronpt da senha, e o terceiro é o limite de tamanho da senha. Retorna a string contendo a senha.
CURLOPT_READFUNCTION | O nome da função de callback aonde a função de callback tem dois parâmetros. O primeiro é o recurso cURL, e so segundo é uma string com os dados a serem lidos. Os dados devem ser lidos atráves dessa função de callback. Retorna o número de bytes lidos. Retorne 0 para indicar EOF (final do arquivo).
CURLOPT_WRITEFUNCTION | O nome da função de callback aonde a função de callback tem dois parâmetros. O primeiro é o recurso resource, e o segundo é a string com os dados a serem escritos. Os dados devem ser escritos usando essa função de callback. Deve retornar o número exato de bytes escritos ou isto irá falhar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 inicializando uma nova sessão cURL e obtendo uma pagina da internet

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, false);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

Exemplo #2 Enviando um arquivo

<?php

/* http://localhost/upload.php:
print_r($_POST);
print_r($_FILES);
*/

$ch = curl_init();

$data = array('name' => 'Foo', 'file' => '@/home/user/test.png');

curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_exec($ch);
?>

O exemplo acima irá imprimir:

Array
(
    [name] => Foo
)
Array
(
    [file] => Array
        (
            [name] => test.png
            [type] => image/png
            [tmp_name] => /tmp/phpcpjNeQ
            [error] => 0
            [size] => 279
        )

)

Veja Também

  • curl_setopt_array() - Set multiple options for a cURL transfer

curl_setopt_array
curl_version
Funções da cURL


Obtém informação da versão da cURL

curl_setopt
FAM
Funções da cURL
PHP Manual

curl_version

(PHP 4 >= 4.0.2, PHP 5)

curl_version — Obtém informação da versão da cURL

Descrição

array curl_version ([ int $age ] )

Retorna informação sobre a versão da cURL.

Parâmetros

age

Valor Retornado

Retorna um array associativo com os seguintes elementos:

version_number | Número da versão cURL 24 bit
version | Número da versão cURL, como string
ssl_version_number | Número da versão OpenSSL 24 bit
ssl_version | Número da versão OpenSSL, como string
libz_version | Número da versão zlib, como string
host | Informação sobre o host onde a cURL foi compilada
age |
features | Um bitmask de constantes CURL_VERSION_XXX
protocols | Um array de nomes de protocolos suportados pela cURL

Exemplos

Exemplo #1 Exemplo da curl_version()

Este exemplo verifica quais features estão disponível na cURL, usando bitmask com o valor retornado pela curl_version() para isso.

<?php
// Obtém o array com os dados da versão da curl
$version = curl_version();

// Esses são bitfields que podem ser usados
// para verificar por features no curl instalado
$bitfields = Array(
            'CURL_VERSION_IPV6',
            'CURL_VERSION_KERBEROS4',
            'CURL_VERSION_SSL',
            'CURL_VERSION_LIBZ'
            );

foreach($bitfields as $feature)
{
    echo $feature . ($version['features'] & constant($feature) ? ' matches' : ' does not match');
    echo PHP_EOL;
}
?>

curl_setopt
FAM
Funções da cURL


File Alteration Monitor

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções de FAM
    • fam_cancel_monitor — Finalizando monitoramento
    • fam_close — Fecha uma conexão FAM
    • fam_monitor_collection — Monitora alterações de uma coleção de arquivos em um diretório
    • fam_monitor_directory — Monitora alterações em diretórios
    • fam_monitor_file — Monitora alterações em um arquivo
    • fam_next_event — Pega o próximo evento FAM pendente
    • fam_open — Abre uma conexão para o daemon FAM
    • fam_pending — Verifica por eventos FAM pendentes
    • fam_resume_monitor — Recomeça um monitoramento suspendido
    • fam_suspend_monitor — Suspende monitoramento temporariamente
curl_version
Introdução
Outros Serviços


Introdução

FAM monitora arquivos e diretórios, notificando alterações relevantes na aplicação. Maiores informações sobre FAM estão disponíveis em » http://oss.sgi.com/projects/fam/.

Um script PHP deve especificar uma lista de arquivos para o monitor FAM, usando as funções disponíveis por essa extensão.

O processo FAM é iniciado quando a primeira conexão de alguma aplicação está aberta. E fecha após todas as conexões feitas por ele terminarem.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Nota: Esta extensão não está disponível na plataforma Windows.

FAM
Instalação/Configuração
FAM


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
FAM


Dependências

Essa extensão usa as funções da biblioteca» FAM, desenvolvida por SGI. Portanto, você deverá fazer o download e instalar a biblioteca FAM.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Para ter suporte ao FAM no php você deve compilar o PHP com --with-fam[=DIR] onde DIR é a localização do diretório contendo a biblioteca e diretório de includes.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Há dois tipos de resource usado no módulo FAM. O primeiro é o da conexão do serviço FAM retornado pela fam_open(), o segundo é o resource de monitoração retornado pelas funções fam_monitor_XXX.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Constantes de eventos FAM
Constante | Descrição
FAMChanged (integer) | Algum valor que pode ser obtido com fstat(1) alterado para um arquivo ou diretório.
FAMDeleted (integer) | Um arquivo que foi deletado ou renomeado.
FAMStartExecuting (integer) | Um arquivo executável que acabou de ser iniciado.
FAMStopExecuting (integer) | Um arquivo executável que foi executado.
FAMCreated (integer) | Um arquivo foi criado no diretório.
FAMMoved (integer) | Esse evento nunca ocorre.
FAMAcknowledge (integer) | Um evento em resposta para fam_cancel_monitor().
FAMExists (integer) | Um evento acima de uma requisição para monitorar um arquivo ou diretório. Quando um diretório é monitorado, um evento para esse diretório e cada arquivo contido nele é usado.
FAMEndExist (integer) | Evento após o último evento FAMEExists.
Tipos Resource
Funções de FAM
FAM


Funções de FAM

Índice

  • fam_cancel_monitor — Finalizando monitoramento
  • fam_close — Fecha uma conexão FAM
  • fam_monitor_collection — Monitora alterações de uma coleção de arquivos em um diretório
  • fam_monitor_directory — Monitora alterações em diretórios
  • fam_monitor_file — Monitora alterações em um arquivo
  • fam_next_event — Pega o próximo evento FAM pendente
  • fam_open — Abre uma conexão para o daemon FAM
  • fam_pending — Verifica por eventos FAM pendentes
  • fam_resume_monitor — Recomeça um monitoramento suspendido
  • fam_suspend_monitor — Suspende monitoramento temporariamente
Constantes pré-definidas
fam_cancel_monitor
FAM


Finalizando monitoramento

Funções de FAM
fam_close
Funções de FAM
PHP Manual

fam_cancel_monitor

(PHP 5 <= 5.0.5)

fam_cancel_monitor — Finalizando monitoramento

Descrição

bool fam_cancel_monitor ( resource $fam , resource $fam_monitor )

Finaliza um monitoramento no recurso.

Além disso um evento FAMAcknowledge ocorre.

Parâmetros

fam

Um resource representando uma conexão para um serviço FAM retornado pela fam_open()

fam_monitor

Um resource retornado por uma das funções fam_monitor_XXX

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fam_monitor_file() - Monitora alterações em um arquivo
  • fam_monitor_directory() - Monitora alterações em diretórios
  • fam_monitor_collection() - Monitora alterações de uma coleção de arquivos em um diretório
  • fam_suspend_monitor() - Suspende monitoramento temporariamente

Funções de FAM
fam_close
Funções de FAM


Fecha uma conexão FAM

fam_cancel_monitor
fam_monitor_collection
Funções de FAM
PHP Manual

fam_close

(PHP 5 <= 5.0.5)

fam_close — Fecha uma conexão FAM

Descrição

void fam_close ( resource $fam )

Fecha uma conexão para um serviço.

Parâmetros

fam

Um resource representando uma conexão para serviço FAM retornado pela fam_open()

Valor Retornado

Não há valor retornado.

Veja Também

  • fam_monitor_open()

fam_cancel_monitor
fam_monitor_collection
Funções de FAM


Monitora alterações de uma coleção de arquivos em um diretório

fam_close
fam_monitor_directory
Funções de FAM
PHP Manual

fam_monitor_collection

(PHP 5 <= 5.0.5)

fam_monitor_collection — Monitora alterações de uma coleção de arquivos em um diretório

Descrição

resource fam_monitor_collection ( resource $fam , string $dirname , int $depth , string $mask )

Requisita monitoramento para uma coleção de arquivos dentro de um diretório.

Um evento FAM irá ser gerado quando o status dos arquivos forem alterados. Os possíveis códigos do evento são descritos em detalhes na parte de constantes dessa seção.

Parâmetros

fam

Um resource representando uma conexão para o serviço FAM retornado pela fam_open()

dirname

Caminho do diretório para monitorar arquivos

depth

O máximo de busca depth iniciando deste diretório

mask

Um padrão shell mask restringido os nomes de arquivos parar serem verificados

Valor Retornado

Retorna um resource de monitoramento ou FALSE em erros.

Veja Também

  • fam_monitor_file() - Monitora alterações em um arquivo
  • fam_monitor_directory() - Monitora alterações em diretórios
  • fam_cancel_monitor() - Finalizando monitoramento
  • fam_suspend_monitor() - Suspende monitoramento temporariamente
  • fam_resume_monitor() - Recomeça um monitoramento suspendido

fam_close
fam_monitor_directory
Funções de FAM


Monitora alterações em diretórios

fam_monitor_collection
fam_monitor_file
Funções de FAM
PHP Manual

fam_monitor_directory

(PHP 5 <= 5.0.5)

fam_monitor_directory — Monitora alterações em diretórios

Descrição

resource fam_monitor_directory ( resource $fam , string $dirname )

Requisita monitoramento para um diretório e todos os arquivos contidos nele.

Um evento FAM irá ser gerado quando o status do diretório (ex.: o resultado da função stat() nesse diretório) ou isso (ex. o resultado de readdir()) acontecerem.

Os possíveis códigos do evento são descritos em detalhes na parte de constantes dessa seção.

Parâmetros

fam

Um resource representando a conexão para o serviço FAM retornado pela fam_open()

dirname

Caminho para o diretório a ser monitorado

Valor Retornado

Retorna um resource de monitoração ou FALSE em erros.

Veja Também

  • fam_monitor_file() - Monitora alterações em um arquivo
  • fam_monitor_collection() - Monitora alterações de uma coleção de arquivos em um diretório
  • fam_cancel_monitor() - Finalizando monitoramento
  • fam_suspend_monitor() - Suspende monitoramento temporariamente
  • fam_resume_monitor() - Recomeça um monitoramento suspendido

fam_monitor_collection
fam_monitor_file
Funções de FAM


Monitora alterações em um arquivo

fam_monitor_directory
fam_next_event
Funções de FAM
PHP Manual

fam_monitor_file

(PHP 5 <= 5.0.5)

fam_monitor_file — Monitora alterações em um arquivo

Descrição

resource fam_monitor_file ( resource $fam , string $filename )

Requisita monitoramento para um único arquivo. Um evento FAM irá ser gerado quando o status do arquivo (ex. o resultado da função stat() no arquivo) for alterado.

Os possíveis códigos do evento são descritos em detalhes na parte de constantes dessa seção.

Parâmetros

fam

Um resource representando a conexão para o serviço FAM retornado pela fam_open()

filename

Caminho para o arquivo a ser monitorado

Valor Retornado

Retorna um resource de monitoramento ou FALSE em erros.

Veja Também

  • fam_monitor_directory() - Monitora alterações em diretórios
  • fam_monitor_collection() - Monitora alterações de uma coleção de arquivos em um diretório
  • fam_cancel_monitor() - Finalizando monitoramento
  • fam_suspend_monitor() - Suspende monitoramento temporariamente
  • fam_resume_monitor() - Recomeça um monitoramento suspendido

fam_monitor_directory
fam_next_event
Funções de FAM


Pega o próximo evento FAM pendente

fam_monitor_file
fam_open
Funções de FAM
PHP Manual

fam_next_event

(PHP 5 <= 5.0.5)

fam_next_event — Pega o próximo evento FAM pendente

Descrição

array fam_next_event ( resource $fam )

Retorna o próximo evento FAM pendente.

A função irá bloquear até que um evento que está disponível possa ser checado usando fam_pending().

Parâmetros

fam

Um resource representando a conexão para o serviço FAM retornado pela fam_open()

Valor Retornado

Retorna um array que contém um código de evento FAM no elemento 'code', o caminho do arquivo deste evento ficam no elemento 'filename' e opcionalmente o hostname no elemento 'hostname'.

Os possíveis códigos do evento são descritos em detalhes na parte de constantes dessa seção.

Veja Também

  • fam_pending() - Verifica por eventos FAM pendentes

fam_monitor_file
fam_open
Funções de FAM


Abre uma conexão para o daemon FAM

fam_next_event
fam_pending
Funções de FAM
PHP Manual

fam_open

(PHP 5 <= 5.0.5)

fam_open — Abre uma conexão para o daemon FAM

Descrição

resource fam_open ([ string $appname ] )

Abre uma conexão para o servidor do FAM.

Parâmetros

appname

Uma string identificando a aplicação para logar

Valor Retornado

Retorna um resource representando a conexão para o serviço FAM em sucesso ou FALSE em erros.

Veja Também

  • fam_close() - Fecha uma conexão FAM

fam_next_event
fam_pending
Funções de FAM


Verifica por eventos FAM pendentes

fam_open
fam_resume_monitor
Funções de FAM
PHP Manual

fam_pending

(PHP 5 <= 5.0.5)

fam_pending — Verifica por eventos FAM pendentes

Descrição

int fam_pending ( resource $fam )

Verifica por eventos FAM pendentes.

Parâmetros

fam

Um resource representando uma conexão para um serviço FAM retornado pela fam_open()

Valor Retornado

Retorna um valor diferente de zero se eventos estão disponíveis para serem obtidos usando fam_next_event(), caso contrário zero.

Veja Também

  • fam_next_event() - Pega o próximo evento FAM pendente

fam_open
fam_resume_monitor
Funções de FAM


Recomeça um monitoramento suspendido

fam_pending
fam_suspend_monitor
Funções de FAM
PHP Manual

fam_resume_monitor

(PHP 5 <= 5.0.5)

fam_resume_monitor — Recomeça um monitoramento suspendido

Descrição

bool fam_resume_monitor ( resource $fam , resource $fam_monitor )

Recomeça o monitoramento de um recurso previamente suspendido usando fam_suspend_monitor().

Parâmetros

fam

Um resource representando a conexão para um serviço FAM retornado pela fam_open()

fam_monitor

Um resource retornado por uma das funções fam_monitor_XXX

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fam_suspend_monitor() - Suspende monitoramento temporariamente

fam_pending
fam_suspend_monitor
Funções de FAM


Suspende monitoramento temporariamente

fam_resume_monitor
FTP
Funções de FAM
PHP Manual

fam_suspend_monitor

(PHP 5 <= 5.0.5)

fam_suspend_monitor — Suspende monitoramento temporariamente

Descrição

bool fam_suspend_monitor ( resource $fam , resource $fam_monitor )

fam_suspend_monitor() temporariamente suspende o monitoramento de um recurso.

O monitoramento pode continuar, usando fam_resume_monitor() sem a necessidade de requisição completa de de um novo monitor.

Parâmetros

fam

Um resource representando a conexão para um serviço FAM retornado pela fam_open()

fam_monitor

Um resource retornado por uma das funções fam_monitor_XXX

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • fam_cancel_monitor() - Finalizando monitoramento
  • fam_resume_monitor() - Recomeça um monitoramento suspendido

fam_resume_monitor
FTP
Funções de FAM


FTP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • FTP Funções
    • ftp_alloc — Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)
    • ftp_cdup — Muda para o diretório acima
    • ftp_chdir — Muda o diretório atual em um servidor FTP
    • ftp_chmod — Estabelece as permissões de um arquivo via FTP
    • ftp_close — Fecha uma conexão FTP
    • ftp_connect — Abre uma conexão FTP
    • ftp_delete — Exclui um arquivo no servidor FTP
    • ftp_exec — Solicita a execução de um comando no servidor FTP
    • ftp_fget — Copia um arquivo do servidor FTP e salva em um arquivo aberto
    • ftp_fput — Envia um arquivo aberto para um servidor php
    • ftp_get_option — Obtém várias opções em tempo de execução da conexão FTP atual
    • ftp_get — Copia um arquivo do servidor FTP
    • ftp_login — Realiza o login em uma conexão FTP
    • ftp_mdtm — Retorna a hora da ultima modificação no arquivo indicado
    • ftp_mkdir — Cria um diretório
    • ftp_nb_continue — Continua a receber/enviar um arquivo (sem bloquear)
    • ftp_nb_fget — Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)
    • ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
    • ftp_nb_get — Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
    • ftp_nb_put — Grava um arquivo no servidor FTP (sem bloquear)
    • ftp_nlist — Retorna a lista dos arquivos em um dado diretório
    • ftp_pasv — Muda o modo passivo em on(ligado) ou off(desligado)
    • ftp_put — Envia um arquivo para o servidor FTP
    • ftp_pwd — Retorna o nome do diretório atual
    • ftp_quit — Sinônimo de ftp_close
    • ftp_raw — Envia um comando arbritário para o servidor FTP
    • ftp_rawlist — Retorna uma lista detalhada dos arquivos em um diretório
    • ftp_rename — Renomeia um arquivo ou diretório no servidor FTP
    • ftp_rmdir — Remove um diretório
    • ftp_set_option — Define opções diversas em tempo de execução
    • ftp_site — Envia o comando SITE para o servidor
    • ftp_size — Retorna o tamanho de um dado arquivo
    • ftp_ssl_connect — Abre uma conexão SSL-FTP segura
    • ftp_systype — Retorna o identificador do tipo do sistema do servidor FTP remoto
fam_suspend_monitor
Introdução
Outros Serviços


Introdução

As funções nesta extenção implementam o acesso de clientes para servidores de arquivos usando o File Transfer Protocol (FTP) como definido em » http://www.faqs.org/rfcs/rfc959. Esta extenção permite acesso detalhado ao servidor FTP provendo um grande controle ao script. Se você quer somente ler ou escrever em um servidor FTP, você pode considerar o uso do wrapper ftp:// com as funções do sistema de arquivo o que prove um meio fácil e intuitivo.

FTP
Instalação/Configuração
FTP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
FTP


Instalação

Para utilizar as funções de FTP na sua configuração do PHP, você deve adicionar a opção --enable-ftp quando estiver instalando o PHP.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Este extenção usa um tipo resource, o qual é o identificador da conexão FTP, retornado por ftp_connect() ou ftp_ssl_connect().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FTP_ASCII (integer)

FTP_TEXT (integer)

FTP_BINARY (integer)

FTP_IMAGE (integer)

FTP_TIMEOUT_SEC (integer)

Veja ftp_set_option() para informação.

As seguintes constantes foram introduzidas no PHP 4.3.0.

FTP_AUTOSEEK (integer)

Veja ftp_set_option() para informações.

FTP_AUTORESUME (integer)

Determina automaticamente a posição de reinício e início para requisições GET e PUT (funciona somente se FTP_AUTOSEEK estiver ativada)

FTP_FAILED (integer)

A transferência assincronoma falhou

FTP_FINISHED (integer)

A transferência assincronoma terminou

FTP_MOREDATA (integer)

A transferência assincronoma ainda esta ativa

Tipos Resource
Exemplos
FTP


Exemplos

Índice

Constantes pré-definidas
FTP


Exemplos
FTP Funções
Exemplos
PHP Manual

Exemplo #1 Exemplo da FTP

<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// check connection
if ((!$conn_id) || (!$login_result)) {
        echo "FTP connection has failed!";
        echo "Attempted to connect to $ftp_server for user $ftp_user_name";
        exit;
    } else {
        echo "Connected to $ftp_server, for user $ftp_user_name";
    }

// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);

// check upload status
if (!$upload) {
        echo "FTP upload has failed!";
    } else {
        echo "Uploaded $source_file to $ftp_server as $destination_file";
    }

// close the FTP stream
ftp_close($conn_id);
?>

Exemplos
FTP Funções
Exemplos


FTP Funções

Índice

  • ftp_alloc — Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)
  • ftp_cdup — Muda para o diretório acima
  • ftp_chdir — Muda o diretório atual em um servidor FTP
  • ftp_chmod — Estabelece as permissões de um arquivo via FTP
  • ftp_close — Fecha uma conexão FTP
  • ftp_connect — Abre uma conexão FTP
  • ftp_delete — Exclui um arquivo no servidor FTP
  • ftp_exec — Solicita a execução de um comando no servidor FTP
  • ftp_fget — Copia um arquivo do servidor FTP e salva em um arquivo aberto
  • ftp_fput — Envia um arquivo aberto para um servidor php
  • ftp_get_option — Obtém várias opções em tempo de execução da conexão FTP atual
  • ftp_get — Copia um arquivo do servidor FTP
  • ftp_login — Realiza o login em uma conexão FTP
  • ftp_mdtm — Retorna a hora da ultima modificação no arquivo indicado
  • ftp_mkdir — Cria um diretório
  • ftp_nb_continue — Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_nb_fget — Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)
  • ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
  • ftp_nb_get — Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
  • ftp_nb_put — Grava um arquivo no servidor FTP (sem bloquear)
  • ftp_nlist — Retorna a lista dos arquivos em um dado diretório
  • ftp_pasv — Muda o modo passivo em on(ligado) ou off(desligado)
  • ftp_put — Envia um arquivo para o servidor FTP
  • ftp_pwd — Retorna o nome do diretório atual
  • ftp_quit — Sinônimo de ftp_close
  • ftp_raw — Envia um comando arbritário para o servidor FTP
  • ftp_rawlist — Retorna uma lista detalhada dos arquivos em um diretório
  • ftp_rename — Renomeia um arquivo ou diretório no servidor FTP
  • ftp_rmdir — Remove um diretório
  • ftp_set_option — Define opções diversas em tempo de execução
  • ftp_site — Envia o comando SITE para o servidor
  • ftp_size — Retorna o tamanho de um dado arquivo
  • ftp_ssl_connect — Abre uma conexão SSL-FTP segura
  • ftp_systype — Retorna o identificador do tipo do sistema do servidor FTP remoto
ftp_alloc
FTP


Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)

FTP Funções
ftp_cdup
FTP Funções
PHP Manual

ftp_alloc

(PHP 5)

ftp_alloc — Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)

Descrição

bool ftp_alloc ( resource $ftp_stream , int $filesize [, string &$result ] )

Envia um commando ALLO para o servidor FTP para alocar espaçõ para que um arquivo seja enviado.

Nota:

Muitos servidores FTP não suportam esse comando. Esses servidores podem retorna um código de falha (FALSE) indicando que o comando não é suportado ou um código de sucesso (TRUE) para indicar que pre-alocação não é necessário e o cliente deve continuar como se a operação tivesse sucedido. Por isso, talvez seja melhor usar essa função apenas em servidores que requerem pre-alocação explicitamente.

Parâmetros

ftp_stream

O link indentificado da conexão FTP.

filezise

O número de bytes a serem alocados.

return

Uma representação textual da resposta dos servidores será retornada por referência em result se uma variável for fornecida.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Um exemplo de ftp_alloc()

<?php

$file = "/home/user/myfile";

/* connect to the server */
$conn_id = ftp_connect('ftp.example.com');
$login_result = ftp_login($conn_id, 'anonymous', 'user@example.com');

if (ftp_alloc($conn_id, filesize($file), $result)) {
  echo "Space successfully allocated on server.  Sending $file.\n";
  ftp_put($conn_id, '/incomming/myfile', $file, FTP_BINARY);
} else {
  echo "Unable to allocate space on server.  Server said: $result\n";
}

ftp_close($conn_id);

?>

Veja Também

  • ftp_put() - Envia um arquivo para o servidor FTP
  • ftp_fput() - Envia um arquivo aberto para um servidor php

FTP Funções
ftp_cdup
FTP Funções


Muda para o diretório acima

ftp_alloc
ftp_chdir
FTP Funções
PHP Manual

ftp_cdup

(PHP 4, PHP 5)

ftp_cdup — Muda para o diretório acima

Descrição

bool ftp_cdup ( resource $ftp_stream )

Muda para o diretório acima.

Parâmetros

ftp_stream

O identificador de link da conexão FTP.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_cdup()

<?php
// define a conexão básica
$conn_id = ftp_connect($ftp_server);

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// muda o diretório atual para html
ftp_chdir($conn_id, 'html');

echo ftp_pwd($conn_id); // /html

// retorna o diretório acima
if (ftp_cdup($conn_id)) {
  echo "cdup bem sucedido\n";
} else {
  echo "cdup não foi bem sucedido\n";
}

echo ftp_pwd($conn_id); // /

ftp_close($conn_id);
?>

Veja Também

  • ftp_chdir() - Muda o diretório atual em um servidor FTP
  • ftp_pwd() - Retorna o nome do diretório atual

ftp_alloc
ftp_chdir
FTP Funções


Muda o diretório atual em um servidor FTP

ftp_cdup
ftp_chmod
FTP Funções
PHP Manual

ftp_chdir

(PHP 4, PHP 5)

ftp_chdir — Muda o diretório atual em um servidor FTP

Descrição

bool ftp_chdir ( resource $ftp_stream , string $directory )

Muda o diretório atual para o especificado.

Parâmetros

ftp_stream

O identificador da conexão FTP.

directory

O diretório de destino.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Se houver falha ao mudar o diretório, o PHP irá também enviar um warning.

Exemplos

Exemplo #1 Exemplo ftp_chdir()

<?php

// estabelece a conexão
$conn_id = ftp_connect($ftp_server);

// login com o nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// confere a conexão
if ((!$conn_id) || (!$login_result)) {
    die("A conexão FTP falhou!");
}

echo "Diretório atual: " . ftp_pwd($conn_id) . "\n";

// tenta mudar para algumDiretorio
if (ftp_chdir($conn_id, "algumDiretorio")) {
    echo "O diretório atual agora é: " . ftp_pwd($conn_id) . "\n";
} else {
    echo "Não foi possível mudar o diretório\n";
}
// fecha a conexão
ftp_close($conn_id);
?>

Veja Também

  • ftp_cdup() - Muda para o diretório acima
  • ftp_pwd() - Retorna o nome do diretório atual

ftp_cdup
ftp_chmod
FTP Funções


Estabelece as permissões de um arquivo via FTP

ftp_chdir
ftp_close
FTP Funções
PHP Manual

ftp_chmod

(PHP 5)

ftp_chmod — Estabelece as permissões de um arquivo via FTP

Descrição

int ftp_chmod ( resource $ftp_stream , int $mode , string $filename )

Estabelece as permissões para o arquivo remoto especificado para modo.

Parâmetros

ftp_stream

O identificador da conexão FTP.

mode

As novas permisões, dadas como um valor octal.

filename

O nome do arquivo remoto.

Valor Retornado

Retorna as novas permissões em caso de sucesso, o FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_chmod()

<?php
$file = 'public_html/index.php';

// define a conexão básica
$conn_id = ftp_connect($ftp_server);

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// tenta usar o chmod em $file para 644
if (ftp_chmod($conn_id, 0644, $file) !== false) {
   echo "Foram mudadas as permissões do arquivo $file para 644\n";
} else {
echo "não foi possível usar o chmod no arquivo $file\n";
}

// fecha a conexão
ftp_close($conn_id);
?>

Veja Também

  • chmod() - Modifica as permissões do arquivo

ftp_chdir
ftp_close
FTP Funções


Fecha uma conexão FTP

ftp_chmod
ftp_connect
FTP Funções
PHP Manual

ftp_close

(PHP 4 >= 4.2.0, PHP 5)

ftp_close — Fecha uma conexão FTP

Descrição

bool ftp_close ( resource $ftp_stream )

ftp_close() fecha o identificador de recurso dado e libera o resource.

Nota:

Após chamar esta função, você não pode mais usar a conexão FTP e deve criar uma nova com ftp_connect().

Parâmetros

ftp_stream

O identificador da conexão FTP.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_close()

<?php

// define a conexão básica
$conn_id = ftp_connect($ftp_server);

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// mostra o diretório atual
echo ftp_pwd($conn_id); // /

// fecha esta conexão
ftp_close($conn_id);
?>

Veja Também

  • ftp_connect() - Abre uma conexão FTP

ftp_chmod
ftp_connect
FTP Funções


Abre uma conexão FTP

ftp_close
ftp_delete
FTP Funções
PHP Manual

ftp_connect

(PHP 4, PHP 5)

ftp_connect — Abre uma conexão FTP

Descrição

resource ftp_connect ( string $host [, int $port [, int $timeout ]] )

ftp_connect() abre uma conexão FTP com o host especificado.

Parâmetros

host

O endereço do servidor de FTP. Este parâmetro não deve ter nenhuma barra ao final e não deve ser prefixado com ftp://.

port

Este parâmetro especifica uma porta alternativa para conectar. Se for omitida ou for definida como zero, então a porta padrão do FTP, 21, será usada.

timeout

Este parâmetro define o limite de tempo para todas as operações de rede subsequentes. Se omitido, o valor padrão é 90 segundos. O limite de tempo pode ser modificado e obtido a qualquer hora com ftp_set_option() e ftp_get_option().

Valor Retornado

Retorna um stream FTP em caso de sucesso, ou FALSE em caso de erro.

Exemplos

Exemplo #1 ftp_connect() example

<?php

$ftp_server = "ftp.example.com";

// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");

?>

Histórico

Versão | Descrição
4.2.0 | timeout foi adicionado.

Veja Também

  • ftp_close() - Fecha uma conexão FTP
  • ftp_ssl_connect() - Abre uma conexão SSL-FTP segura

ftp_close
ftp_delete
FTP Funções


Exclui um arquivo no servidor FTP

ftp_connect
ftp_exec
FTP Funções
PHP Manual

ftp_delete

(PHP 4, PHP 5)

ftp_delete — Exclui um arquivo no servidor FTP

Descrição

bool ftp_delete ( resource $ftp_stream , string $path )

ftp_delete() apaga o arquivo especificado por path no servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

path

O arquivo para excluir.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_delete()

<?php
$file = 'public_html/old.txt';

// Define a conexão básica
$conn_id = ftp_connect($ftp_server);

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// tenta excluir $file
if (ftp_delete($conn_id, $file)) {
   echo "O arquivo $file foi excluído\n";
} else {
   echo "não foi possível excluir $file\n";
}

// fecha a conexão
ftp_close($conn_id);
?>

ftp_connect
ftp_exec
FTP Funções


Solicita a execução de um comando no servidor FTP

ftp_delete
ftp_fget
FTP Funções
PHP Manual

ftp_exec

(PHP 4 >= 4.0.3, PHP 5)

ftp_exec — Solicita a execução de um comando no servidor FTP

Descrição

bool ftp_exec ( resource $ftp_stream , string $command )

Envia uma solicitação SITE EXEC command para o servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

command

O comando a executar.

Valor Retornado

Retorna TRUE se o comando for bem sucedido (o servidor enviou o código de resposta: 200); se não retorna FALSE.

Exemplos

Exemplo #1 Exemplo ftp_exec()

<?php

// variable initialization
$command = 'ls -al >files.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// execute command
if (ftp_exec($conn_id, $command)) {
    echo "$command executed successfully\n";
} else {
    echo "could not execute $command\n";
}

// close the connection
ftp_close($conn_id);

?>

Veja Também

  • ftp_raw() - Envia um comando arbritário para o servidor FTP

ftp_delete
ftp_fget
FTP Funções


Copia um arquivo do servidor FTP e salva em um arquivo aberto

ftp_exec
ftp_fput
FTP Funções
PHP Manual

ftp_fget

(PHP 4, PHP 5)

ftp_fget — Copia um arquivo do servidor FTP e salva em um arquivo aberto

Descrição

bool ftp_fget ( resource $ftp_stream , resource $handle , string $remote_file , int $mode [, int $resumepos ] )

ftp_fget() obtém remote_file do servidor FTP, e escreve-o no ponteiro de arquivo dado.

Parâmetros

ftp_stream

O identificador da conexão FTP.

handle

Um ponteiro de arquivo aberto no qual nós guardaremos os dados.

remote_file

O caminho do arquivo remoto.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

resumepos

A posição no arquivo remoto a partir da qual começar a baixar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_fget()

<?php

// path to remote file
$remote_file = 'somefile.txt';
$local_file = 'localfile.txt';

// open some file to write to
$handle = fopen($local_file, 'w');

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to download $remote_file and save it to $handle
if (ftp_fget($conn_id, $handle, $remote_file, FTP_ASCII, 0)) {
 echo "successfully written to $local_file\n";
} else {
 echo "There was a problem while downloading $remote_file to $local_file\n";
}

// close the connection and the file handler
ftp_close($conn_id);
fclose($handle);
?>

Histórico

Versão | Descrição
4.3.0 | resumepos foi adicionado.

Veja Também

  • ftp_get() - Copia um arquivo do servidor FTP
  • ftp_nb_get() - Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
  • ftp_nb_fget() - Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)

ftp_exec
ftp_fput
FTP Funções


Envia um arquivo aberto para um servidor php

ftp_fget
ftp_get_option
FTP Funções
PHP Manual

ftp_fput

(PHP 4, PHP 5)

ftp_fput — Envia um arquivo aberto para um servidor php

Descrição

bool ftp_fput ( resource $ftp_stream , string $remote_file , resource $handle , int $mode [, int $startpos ] )

ftp_fput() envia os dados a partir do ponteiro de arquivo para um arquivo remoto no servidor ftp.

Parâmetros

ftp_stream

O identificador da conexão FTP.

remote_file

O caminho para o arquivo remoto.

handle

Um ponteiro de arquivo aberto para um arquivo local. A leitura para no final do arquivo.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

startpos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de ftp_fput()

<?php

// open some file for reading
$file = 'somefile.txt';
$fp = fopen($file, 'r');

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to upload $file
if (ftp_fput($conn_id, $file, $fp, FTP_ASCII)) {
    echo "Successfully uploaded $file\n";
} else {
    echo "There was a problem while uploading $file\n";
}

// close the connection and the file handler
ftp_close($conn_id);
fclose($fp);

?>

Histórico

Versão | Descrição
4.3.0 | startpos foi adicionado.

Veja Também

  • ftp_put() - Envia um arquivo para o servidor FTP
  • ftp_nb_fput() - Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
  • ftp_nb_put() - Grava um arquivo no servidor FTP (sem bloquear)

ftp_fget
ftp_get_option
FTP Funções


Obtém várias opções em tempo de execução da conexão FTP atual

ftp_fput
ftp_get
FTP Funções
PHP Manual

ftp_get_option

(PHP 4 >= 4.2.0, PHP 5)

ftp_get_option — Obtém várias opções em tempo de execução da conexão FTP atual

Descrição

mixed ftp_get_option ( resource $ftp_stream , int $option )

Esta função retorna o valor para a option solicitada da conexão FTP especificada.

Parâmetros

ftp_stream

O identificador para a conexão FTP.

option

Atualmente, as seguintes opções são suportadas:

Opções em tempo de execução do FTP suportadas
FTP_TIMEOUT_SEC | Retorna o limite de tempo usado atualmente para as operações de rede.
FTP_AUTOSEEK | Retorna TRUE se esta opção estiver ativa, FALSE se não.

Valor Retornado

Retorna o valor em caso de sucesso ou FALSE se a option indicada não for suportada, neste caso, uma mensagem de aviso também é emitida.

Exemplos

Exemplo #1 Exemplo ftp_get_option()

<?php
// Get the timeout of the given FTP stream
$timeout = ftp_get_option($conn_id, FTP_TIMEOUT_SEC);
?>

Veja Também

  • ftp_set_option() - Define opções diversas em tempo de execução

ftp_fput
ftp_get
FTP Funções


Copia um arquivo do servidor FTP

ftp_get_option
ftp_login
FTP Funções
PHP Manual

ftp_get

(PHP 4, PHP 5)

ftp_get — Copia um arquivo do servidor FTP

Descrição

bool ftp_get ( resource $ftp_stream , string $local_file , string $remote_file , int $mode [, int $resumepos ] )

ftp_get() obtém um arquivo remoto a partir de um servidor FTP, e salva-o em um arquivo local.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

local_file

O caminho para o arquivo local (será sobrescrito se já existir).

remote_file

O caminho para o arquivo remoto.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

resumepos

A posição no arquivo remoto a partir da qual continuar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_get()

<?php

// define some variables
$local_file = 'local.zip';
$server_file = 'server.zip';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to download $server_file and save to $local_file
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
    echo "Successfully written to $local_file\n";
} else {
    echo "There was a problem\n";
}

// close the connection
ftp_close($conn_id);

?>

Histórico

Versão | Descrição
4.3.0 | resumepos foi adicionado.

Veja Também

  • ftp_pasv() - Muda o modo passivo em on(ligado) ou off(desligado)
  • ftp_fget() - Copia um arquivo do servidor FTP e salva em um arquivo aberto
  • ftp_nb_get() - Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
  • ftp_nb_fget() - Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)

ftp_get_option
ftp_login
FTP Funções


Realiza o login em uma conexão FTP

ftp_get
ftp_mdtm
FTP Funções
PHP Manual

ftp_login

(PHP 4, PHP 5)

ftp_login — Realiza o login em uma conexão FTP

Descrição

bool ftp_login ( resource $ftp_stream , string $username , string $password )

Realiza o login em uma conexão FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

username

O nome de usuário (USER).

password

A senha (PASS).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Se o login falhar, o PHP irá escrever um aviso.

Exemplos

Exemplo #1 Exemplo ftp_login()

<?php

$ftp_server = "ftp.example.com";
$ftp_user = "foo";
$ftp_pass = "bar";

// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");

// try to login
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
    echo "Connected as $ftp_user@$ftp_server\n";
} else {
    echo "Couldn't connect as $ftp_user\n";
}

// close the connection
ftp_close($conn_id);
?>

ftp_get
ftp_mdtm
FTP Funções


Retorna a hora da ultima modificação no arquivo indicado

ftp_login
ftp_mkdir
FTP Funções
PHP Manual

ftp_mdtm

(PHP 4, PHP 5)

ftp_mdtm — Retorna a hora da ultima modificação no arquivo indicado

Descrição

int ftp_mdtm ( resource $ftp_stream , string $remote_file )

ftp_mdtm() retorna a hora da ultima modificação em um arquivo remoto.

Nota:

Nem todos os servidores suportam isto!

Nota:

ftp_mdtm() não funciona com diretórios.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

remote_file

O arquivo a partir do qual extrair a hora da ultima modificação.

Valor Retornado

Retorna a hora da ultima modificação como um timestamp Unix em caso de sucesso, -1 em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_mdtm()

<?php

$file = 'somefile.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

//  get the last modified time
$buff = ftp_mdtm($conn_id, $file);

if ($buff != -1) {
    // somefile.txt was last modified on: March 26 2003 14:16:41.
    echo "$file was last modified on : " . date("F d Y H:i:s.", $buff);
} else {
    echo "Couldn't get mdtime";
}

// close the connection
ftp_close($conn_id);

?>

ftp_login
ftp_mkdir
FTP Funções


Cria um diretório

ftp_mdtm
ftp_nb_continue
FTP Funções
PHP Manual

ftp_mkdir

(PHP 4, PHP 5)

ftp_mkdir — Cria um diretório

Descrição

string ftp_mkdir ( resource $ftp_stream , string $directory )

Cria o directory especificado no servidor FTP.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

directory

O nome do diretório que será criado.

Valor Retornado

Retorna o nome do diretório recem criado em caso de sucesso ou FALSE emmcaso de erro.

Exemplos

Exemplo #1 Exemplo ftp_mkdir()

<?php

$dir = 'www';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to create the directory $dir
if (ftp_mkdir($conn_id, $dir)) {
 echo "successfully created $dir\n";
} else {
 echo "There was a problem while creating $dir\n";
}

// close the connection
ftp_close($conn_id);
?>

Veja Também

  • ftp_rmdir() - Remove um diretório

ftp_mdtm
ftp_nb_continue
FTP Funções


Continua a receber/enviar um arquivo (sem bloquear)

ftp_mkdir
ftp_nb_fget
FTP Funções
PHP Manual

ftp_nb_continue

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_continue — Continua a receber/enviar um arquivo (sem bloquear)

Descrição

int ftp_nb_continue ( resource $ftp_stream )

Continua a receber/enviar um arquivo sem bloquear.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

Valor Retornado

Retorna FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.

Exemplos

Exemplo #1 Exemplo ftp_nb_continue()

<?php

// Initate the download
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Continue downloading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error downloading the file...";
   exit(1);
}
?>

ftp_mkdir
ftp_nb_fget
FTP Funções


Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)

ftp_nb_continue
ftp_nb_fput
FTP Funções
PHP Manual

ftp_nb_fget

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_fget — Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)

Descrição

int ftp_nb_fget ( resource $ftp_stream , resource $handle , string $remote_file , int $mode [, int $resumepos ] )

ftp_nb_fget() obtém um arquivo remoto do servidor FTP.

A diferença entre esta função e ftp_fget() é que esta função obtém o arquivo de forma assincronoma, assim seu programa pode realizar outras operações enquanto o arquivo esta sendo copiado.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

handle

Um ponteiro de arquivo aberto para o qual nós guardamos os dados.

remote_file

O caminho para o arquivo remoto.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

resumepos

Valor Retornado

Retorna FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.

Exemplos

Exemplo #1 Exemplo ftp_nb_fget()

<?php

// open some file for reading
$file = 'index.php';
$fp = fopen($file, 'w');

$conn_id = ftp_connect($ftp_server);

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// Initate the download
$ret = ftp_nb_fget($conn_id, $fp, $file, FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue downloading...
   $ret = ftp_nb_continue($conn_id);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error downloading the file...";
   exit(1);
}

// close filepointer
fclose($fp);
?>

Veja Também

  • ftp_nb_get() - Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
  • ftp_nb_continue() - Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_fget() - Copia um arquivo do servidor FTP e salva em um arquivo aberto
  • ftp_get() - Copia um arquivo do servidor FTP

ftp_nb_continue
ftp_nb_fput
FTP Funções


Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)

ftp_nb_fget
ftp_nb_get
FTP Funções
PHP Manual

ftp_nb_fput

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)

Descrição

int ftp_nb_fput ( resource $ftp_stream , string $remote_file , resource $handle , int $mode [, int $startpos ] )

ftp_nb_fput() envia os dados do ponteiro de arquivo para o arquivo remoto no servidor FTP.

A diferença entra esta função e ftp_fput() é que esta função envia o arquivo de forma assimcronoma, assim o seu programa pode realizar outras operações enquanto o arquivo esta sendo carregado.

Parâmetros

ftp_stream

O identificador da conexão FTP.

remote_file

O caminho para o arquivo remoto.

handle

Um ponteiro de arquivo aberto para o arquivo local. A leitura termina ao finbal do arquivo.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

startpos

Valor Retornado

Retorna FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.

Exemplos

Exemplo #1 Exemplo ftp_nb_fput()

<?php

$file = 'index.php';

$fp = fopen($file, 'r');

$conn_id = ftp_connect($ftp_server);

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// Initate the upload
$ret = ftp_nb_fput($conn_id, $file, $fp, FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue upload...
   $ret = ftp_nb_continue($conn_id);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}

fclose($fp);
?>

Veja Também

  • ftp_nb_put() - Grava um arquivo no servidor FTP (sem bloquear)
  • ftp_nb_continue() - Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_put() - Envia um arquivo para o servidor FTP
  • ftp_fput() - Envia um arquivo aberto para um servidor php

ftp_nb_fget
ftp_nb_get
FTP Funções


Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)

ftp_nb_fput
ftp_nb_put
FTP Funções
PHP Manual

ftp_nb_get

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_get — Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)

Descrição

int ftp_nb_get ( resource $ftp_stream , string $local_file , string $remote_file , int $mode [, int $resumepos ] )

ftp_nb_get() obtém um arquivo remoto do servidor FTP e salva-o em um arquivo local.

A diferença entre esta função é ftp_get() é que esta função obtém o arquivo de forma assincronoma, assim o seu programa pode realizar outras operações enquanto o arquivo esta sendo baixado.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

local_file

O caminho para o arquivo local (será sobrescrito se o arquivo local já existir).

remote_file

O caminho para o arquivo remoto.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

resumepos

Valor Retornado

Retorna FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.

Exemplos

Exemplo #1 Exemplo ftp_nb_get()

<?php

// Initate the download
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue downloading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error downloading the file...";
   exit(1);
}
?>

Exemplo #2 Continuando um download com ftp_nb_get()

<?php

// Initate
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY,
                      filesize("test"));
// OR: $ret = ftp_nb_get($my_connection, "test", "README",
//                           FTP_BINARY, FTP_AUTORESUME);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue downloading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error downloading the file...";
   exit(1);
}
?>

Exemplo #3 Continuando um download na posição 100 para um novo arquivo com ftp_nb_get()

<?php

// Disable Autoseek
ftp_set_option($my_connection, FTP_AUTOSEEK, false);

// Initiate
$ret = ftp_nb_get($my_connection, "newfile", "README", FTP_BINARY, 100);
while ($ret == FTP_MOREDATA) {

   /* ... */

   // Continue downloading...
   $ret = ftp_nb_continue($my_connection);
}
?>

No exemplo acima, newfile é 100 bytes menor do que README no servidor FTP porque nós começamos a ler a partir da posição 100. Se nós não disabilitarmos FTP_AUTOSEEK, os primeiros 100 bytes de newfile serão '\0'.

Veja Também

  • ftp_nb_fget() - Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)
  • ftp_nb_continue() - Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_fget() - Copia um arquivo do servidor FTP e salva em um arquivo aberto
  • ftp_get() - Copia um arquivo do servidor FTP

ftp_nb_fput
ftp_nb_put
FTP Funções


Grava um arquivo no servidor FTP (sem bloquear)

ftp_nb_get
ftp_nlist
FTP Funções
PHP Manual

ftp_nb_put

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_put — Grava um arquivo no servidor FTP (sem bloquear)

Descrição

int ftp_nb_put ( resource $ftp_stream , string $remote_file , string $local_file , int $mode [, int $startpos ] )

ftp_nb_put() grava um arquivo local em um servidor FTP.

A diferença entre esta função e ftp_put() é que esta função envia o arquivo de forma assincronoma, assim o seu programa pode realizar outras operações enquanto o seu arquivo esta sendo carregado.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

remote_file

O caminho para o arquivo remoto.

local_file

O caminho para o arquivo local.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

startpos

Valor Retornado

Retorna FTP_FAILED ou FTP_FINISHED ou FTP_MOREDATA.

Exemplos

Exemplo #1 Exemplo ftp_nb_put()

<?php

// Initiate the Upload
$ret = ftp_nb_put($my_connection, "test.remote", "test.local", FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue uploading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>

Exemplo #2 Continuando um upload com ftp_nb_put()

<?php

// Initiate
$ret = ftp_nb_put($my_connection, "test.remote", "test.local",
                      FTP_BINARY, ftp_size("test.remote"));
// OR: $ret = ftp_nb_put($my_connection, "test.remote", "test.local",
//                           FTP_BINARY, FTP_AUTORESUME);

while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue uploading...
   $ret = ftp_nb_continue($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>

Veja Também

  • ftp_nb_fput() - Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
  • ftp_nb_continue() - Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_put() - Envia um arquivo para o servidor FTP
  • ftp_fput() - Envia um arquivo aberto para um servidor php

ftp_nb_get
ftp_nlist
FTP Funções


Retorna a lista dos arquivos em um dado diretório

ftp_nb_put
ftp_pasv
FTP Funções
PHP Manual

ftp_nlist

(PHP 4, PHP 5)

ftp_nlist — Retorna a lista dos arquivos em um dado diretório

Descrição

array ftp_nlist ( resource $ftp_stream , string $directory )

Parâmetros

ftp_stream

O identificador da conexão FTP.

directory

O diretório que será listado. Este parãmetro também pode incluir argumentos, ex: ftp_nlist($conn_id, "-la /your/dir"); Note que este parâmetro não é escapado assim pode haver alguns problemas com nomes de arquivo contendo espaços e outros caracteres.

Valor Retornado

Retorna uma array com os nomes dos arquivos do diretório especificado em caso de sucesso, ou FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_nlist()

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// get contents of the current directory
$contents = ftp_nlist($conn_id, ".");

// output $contents
var_dump($contents);

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  [0]=>
  string(11) "public_html"
  [1]=>
  string(10) "public_ftp"
  [2]=>
  string(3) "www"

Veja Também

  • ftp_rawlist() - Retorna uma lista detalhada dos arquivos em um diretório

ftp_nb_put
ftp_pasv
FTP Funções


Muda o modo passivo em on(ligado) ou off(desligado)

ftp_nlist
ftp_put
FTP Funções
PHP Manual

ftp_pasv

(PHP 4, PHP 5)

ftp_pasv — Muda o modo passivo em on(ligado) ou off(desligado)

Descrição

bool ftp_pasv ( resource $ftp_stream , bool $pasv )

ftp_pasv() muda o modo passivo em on ou off. No modo passivo, as conexões de dados são iniciadas pelo cliente, ao invés do servidor. Pode ser necessário se o cliente estiver atrás de um firewall.

Note que ftp_pasv() pode somente ser chamada depois do login ter sido feito com sucesso, caso contrário irá falhar.

Parâmetros

ftp_stream

O identificador da conexão FTP.

pasv

Se TRUE, o modo passivo esta ligado, se não esta desligado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_pasv()

<?php
$file = 'somefile.txt';
$remote_file = 'readme.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// turn passive mode on
ftp_pasv($conn_id, true);

// upload a file
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
 echo "successfully uploaded $file\n";
} else {
 echo "There was a problem while uploading $file\n";
}

// close the connection
ftp_close($conn_id);
?>

ftp_nlist
ftp_put
FTP Funções


Envia um arquivo para o servidor FTP

ftp_pasv
ftp_pwd
FTP Funções
PHP Manual

ftp_put

(PHP 4, PHP 5)

ftp_put — Envia um arquivo para o servidor FTP

Descrição

bool ftp_put ( resource $ftp_stream , string $remote_file , string $local_file , int $mode [, int $startpos ] )

ftp_put() grava um arquivo local em um servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

remote_file

O caminho para o arquivo remoto.

local_file

O caminho para o arquivo local.

mode

O modo de transferência. Deve ser FTP_ASCII ou FTP_BINARY.

startpos

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_put()

<?php
$file = 'somefile.txt';
$remote_file = 'readme.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// upload a file
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
 echo "successfully uploaded $file\n";
} else {
 echo "There was a problem while uploading $file\n";
}

// close the connection
ftp_close($conn_id);
?>

Histórico

Versão | Descrição
4.3.0 | startpos foi adicionado.

Veja Também

  • ftp_pasv() - Muda o modo passivo em on(ligado) ou off(desligado)
  • ftp_fput() - Envia um arquivo aberto para um servidor php
  • ftp_nb_fput() - Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
  • ftp_nb_put() - Grava um arquivo no servidor FTP (sem bloquear)

ftp_pasv
ftp_pwd
FTP Funções


Retorna o nome do diretório atual

ftp_put
ftp_quit
FTP Funções
PHP Manual

ftp_pwd

(PHP 4, PHP 5)

ftp_pwd — Retorna o nome do diretório atual

Descrição

string ftp_pwd ( resource $ftp_stream )

Parâmetros

ftp_stream

O identificador da conexão FTP.

Valor Retornado

Retorna o nome do diretório atual ou FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_pwd()

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// change directory to public_html
ftp_chdir($conn_id, 'public_html');

// print current directory
echo ftp_pwd($conn_id); // /public_html

// close the connection
ftp_close($conn_id);
?>

Veja Também

  • ftp_chdir() - Muda o diretório atual em um servidor FTP
  • ftp_cdup() - Muda para o diretório acima

ftp_put
ftp_quit
FTP Funções


Sinônimo de ftp_close

ftp_pwd
ftp_raw
FTP Funções
PHP Manual

ftp_quit

(PHP 4, PHP 5)

ftp_quit — Sinônimo de ftp_close()

Descrição

Esta função é um apelido para: ftp_close().

ftp_pwd
ftp_raw
FTP Funções


Envia um comando arbritário para o servidor FTP

ftp_quit
ftp_rawlist
FTP Funções
PHP Manual

ftp_raw

(PHP 5)

ftp_raw — Envia um comando arbritário para o servidor FTP

Descrição

array ftp_raw ( resource $ftp_stream , string $command )

Envia um command arbritário para o servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

command

O comando a executar.

Valor Retornado

Retorna a resposta do servidor como um array de strings. Nenhuma interpretação é realizada na string de resposta, nem ftp_raw() determina se o comando foi bem sucedido

Exemplos

Exemplo #1 Usando ftp_raw() para fazer o login em um servidor FTP manualmente.

<?php
$fp = ftp_connect("ftp.example.com");

/* This is the same as:
   ftp_login($fp, "joeblow", "secret"); */
ftp_raw($fp, "USER joeblow");
ftp_raw($fp, "PASS secret");
?>

Veja Também

  • ftp_exec() - Solicita a execução de um comando no servidor FTP

ftp_quit
ftp_rawlist
FTP Funções


Retorna uma lista detalhada dos arquivos em um diretório

ftp_raw
ftp_rename
FTP Funções
PHP Manual

ftp_rawlist

(PHP 4, PHP 5)

ftp_rawlist — Retorna uma lista detalhada dos arquivos em um diretório

Descrição

array ftp_rawlist ( resource $ftp_stream , string $directory [, bool $recursive ] )

ftp_rawlist() executa o comando LIST do FTP, e retorna o resutado como uma array.

Parâmetros

ftp_stream

O identificador da conexão FTP.

directory

O caminho para o diretório.

recursive

Se for definido como TRUE, o comando executado será LIST -R.

Valor Retornado

Retorna uma array aonde cada elemento corresponde a uma linha de texto.

A saída não é interpretada de maneira nenhuma. O identificador do tipo do sistema retornado por ftp_systype() pode ser usado para determinar como os resultados devem ser interpretados.

Exemplos

Exemplo #1 Exemplo ftp_rawlist()

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// get the file list for /
$buff = ftp_rawlist($conn_id, '/');

// close the connection
ftp_close($conn_id);

// output the buffer
var_dump($buff);
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  [0]=>
  string(65) "drwxr-x---   3 vincent  vincent      4096 Jul 12 12:16 public_ftp"
  [1]=>
  string(66) "drwxr-x---  15 vincent  vincent      4096 Nov  3 21:31 public_html"
  [2]=>
  string(73) "lrwxrwxrwx   1 vincent  vincent        11 Jul 12 12:16 www -> public_html"
}

Histórico

Versão | Descrição
4.3.0 | recursive foi adicionado.

Veja Também

  • ftp_nlist() - Retorna a lista dos arquivos em um dado diretório

ftp_raw
ftp_rename
FTP Funções


Renomeia um arquivo ou diretório no servidor FTP

ftp_rawlist
ftp_rmdir
FTP Funções
PHP Manual

ftp_rename

(PHP 4, PHP 5)

ftp_rename — Renomeia um arquivo ou diretório no servidor FTP

Descrição

bool ftp_rename ( resource $ftp_stream , string $oldname , string $newname )

ftp_rename() renomeia um arquivo ou diretório no servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

oldname

O nome do arquivo/diretório anterior.

newname

O novo nome.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_rename()

<?php
$old_file = 'somefile.txt.bak';
$new_file = 'somefile.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to rename $old_file to $new_file
if (ftp_rename($conn_id, $old_file, $new_file)) {
 echo "successfully renamed $old_file to $new_file\n";
} else {
 echo "There was a problem while renaming $old_file to $new_file\n";
}

// close the connection
ftp_close($conn_id);
?>

ftp_rawlist
ftp_rmdir
FTP Funções


Remove um diretório

ftp_rename
ftp_set_option
FTP Funções
PHP Manual

ftp_rmdir

(PHP 4, PHP 5)

ftp_rmdir — Remove um diretório

Descrição

bool ftp_rmdir ( resource $ftp_stream , string $directory )

Remove o directory especificado no servidor FTP.

Parâmetros

ftp_stream

O identificador da conexão FTP.

directory

O diretório a excluir. Isto deve set um caminho absoluto ou relativo a um diretório vazio.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo ftp_rmdir()

<?php

$dir = 'www/';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to delete the directory $dir
if (ftp_rmdir($conn_id, $dir)) {
    echo "Successfully deleted $dir\n";
} else {
    echo "There was a problem while deleting $dir\n";
}

ftp_close($conn_id);

?>

Veja Também

  • ftp_mkdir() - Cria um diretório

ftp_rename
ftp_set_option
FTP Funções


Define opções diversas em tempo de execução

ftp_rmdir
ftp_site
FTP Funções
PHP Manual

ftp_set_option

(PHP 4 >= 4.2.0, PHP 5)

ftp_set_option — Define opções diversas em tempo de execução

Descrição

bool ftp_set_option ( resource $ftp_stream , int $option , mixed $value )

Esta função controla várias opções em tempo de execução para a conexão FTP especificada.

Parâmetros

ftp_stream

O identificador da conexão FTP.

option

Atualmente, as seguintes opções são suportadas:

Opção em tempo de execução do FTP suportada
FTP_TIMEOUT_SEC | Muda o limite de tempo em segundos usado para todas as operações de rede relacionadas. value deve ser um inteiro que seja maior do que 0. O limite de tempo padrão é 90 segundos.
FTP_AUTOSEEK | Quando ativado, requisições GET ou PUT com um parâmetro resumepos ou startpos irá primeiro procurar a posição especificada no arquivo. Isto esta ativado por padrâo.

value

Este valor depende de qual option foi escolhida para ser alterada.

Valor Retornado

Retorna TRUE se a opção pode ser definida; FALSE se não. Uma mensagem de aviso será emitida se option não for suportada ou se o value passado não for o valor esperado para a option dada.

Exemplos

Exemplo #1 Exemplo ftp_set_option()

<?php
// Set the network timeout to 10 seconds
ftp_set_option($conn_id, FTP_TIMEOUT_SEC, 10);
?>

Veja Também

  • ftp_get_option() - Obtém várias opções em tempo de execução da conexão FTP atual

ftp_rmdir
ftp_site
FTP Funções


Envia o comando SITE para o servidor

ftp_set_option
ftp_size
FTP Funções
PHP Manual

ftp_site

(PHP 4, PHP 5)

ftp_site — Envia o comando SITE para o servidor

Descrição

bool ftp_site ( resource $ftp_stream , string $command )

ftp_site() envia o comando SITE dado para o servidor FTPr.

Comandos SITE não são padronizados, e variam de servidor para servidor. Eles são utéis para manipular coisas como permissões de arquivos e membros de grupos.

Parâmetros

ftp_stream

O identificador da conexão FTP.

command

O comando SITE. Note que este parâmetro não é escapado assim pode ter alguns problemas com nomes de arquivos contendo espações ou outros caracteres.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Enviando um comando SITE para um servidor FTP

<?php
/* Connect to FTP server */
$conn = ftp_connect('ftp.example.com');
if (!$conn) die('Unable to connect to ftp.example.com');

/* Login as "user" with password "pass" */
if (!ftp_login($conn, 'user', 'pass')) die('Error logging into ftp.example.com');

/* Issue: "SITE CHMOD 0600 /home/user/privatefile" command to ftp server */
if (ftp_site($conn, 'CHMOD 0600 /home/user/privatefile')) {
   echo "Command executed successfully.\n";
} else {
   die('Command failed.');
}
?>

Veja Também

  • ftp_raw() - Envia um comando arbritário para o servidor FTP

ftp_set_option
ftp_size
FTP Funções


Retorna o tamanho de um dado arquivo

ftp_site
ftp_ssl_connect
FTP Funções
PHP Manual

ftp_size

(PHP 4, PHP 5)

ftp_size — Retorna o tamanho de um dado arquivo

Descrição

int ftp_size ( resource $ftp_stream , string $remote_file )

ftp_size() retorna o tamanho de um dado arquivo em bytes

Nota:

Nem todos os servidoresw suportam isto.

Parâmetros

ftp_stream

O identificador da conexão FTP.

remote_file

O arquivo remoto.

Valor Retornado

Retorna o nome do arquivo em caso de sucesso, -1 em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_size()

<?php

$file = 'somefile.txt';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// get the size of $file
$res = ftp_size($conn_id, $file);

if ($res != -1) {
    echo "size of $file is $res bytes";
} else {
    echo "couldn't get the size";
}

// close the connection
ftp_close($conn_id);

?>

Veja Também

  • ftp_rawlist() - Retorna uma lista detalhada dos arquivos em um diretório

ftp_site
ftp_ssl_connect
FTP Funções


Abre uma conexão SSL-FTP segura

ftp_size
ftp_systype
FTP Funções
PHP Manual

ftp_ssl_connect

(PHP 4 >= 4.3.0, PHP 5)

ftp_ssl_connect — Abre uma conexão SSL-FTP segura

Descrição

resource ftp_ssl_connect ( string $host [, int $port [, int $timeout ]] )

ftp_ssl_connect() abre uma conexão SSL-FTP com host(servidor) especificado.

Nota: Por que esta função pode não existir

ftp_ssl_connect() esta disponível apenas se o suporte a OpenSSL esta ativado em sua versão do PHP. Se não estiver definido e você compilou o suporte FTP então este é o motivo. Para o Windows, você deve compilar os seus proprios binários para ter suporte a esta função.

Parâmetros

host

O endereço do servidor FTP. Este parâmetro não deve ter barra ao final e não deve ter o prefixo ftp://.

port

Este parâmetro especifica uma porta alternativa para conectar. Se for omitido ou definido como zero, então a porta padrão do FTP, 21 será usada.

timeout

Este parâmetro especifica o limite de tempo para todas as operações de rede subsequentes. Se omitido, o valor padrão é 90 segundos. O limite de tempo pode ser mudado e obtido a qualquer tempo com ftp_set_option() e ftp_get_option().

Valor Retornado

Retorna um stream SSL-FTP em caso de sucesso ou FALSE em caso de erro.

Histórico

Versão | Descrição
5.2.2 | A função foi modificada para retornar FALSE quando ela não pode usar uma conexão SSL, ao invés de usar uma conexão não SSL como anteriormente.

Exemplos

Exemplo #1 Exemplo ftp_ssl_connect()

<?php

// set up basic ssl connection
$conn_id = ftp_ssl_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

echo ftp_pwd($conn_id); // /

// close the ssl connection
ftp_close($conn_id);
?>

Veja Também

  • ftp_connect() - Abre uma conexão FTP

ftp_size
ftp_systype
FTP Funções


Retorna o identificador do tipo do sistema do servidor FTP remoto

ftp_ssl_connect
Gupnp
FTP Funções
PHP Manual

ftp_systype

(PHP 4, PHP 5)

ftp_systype — Retorna o identificador do tipo do sistema do servidor FTP remoto

Descrição

string ftp_systype ( resource $ftp_stream )

Retorna o identificador do tipo do sistema do servidor FTP remoto.

Parâmetros

ftp_stream

O identificador com a conexão FTP.

Valor Retornado

Retorna o tipo do sistema remoto, ou FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo ftp_systype()

<?php

// ftp connection
$ftp = ftp_connect('ftp.example.com');
ftp_login($ftp, 'user', 'password');

// get the system type
if ($type = ftp_systype($ftp)) {
    echo "Example.com is powered by $type\n";
} else {
    echo "Couldn't get the systype";
}

?>

O exemplo acima irá imprimir algo similar a:

Example.com is powered by UNIX

ftp_ssl_connect
Gupnp
FTP Funções


Gupnp

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Browsing devices and services
    • Implementing the BinaryLight device
  • Gupnp Funções
    • gupnp_context_get_host_ip — Get the IP address
    • gupnp_context_get_port — Get the port
    • gupnp_context_get_subscription_timeout — Get the event subscription timeout
    • gupnp_context_host_path — Start hosting
    • gupnp_context_new — Create a new context
    • gupnp_context_set_subscription_timeout — Sets the event subscription timeout
    • gupnp_context_timeout_add — Sets a function to be called at regular intervals
    • gupnp_context_unhost_path — Stop hosting
    • gupnp_control_point_browse_start — Start browsing
    • gupnp_control_point_browse_stop — Stop browsing
    • gupnp_control_point_callback_set — Set control point callback
    • gupnp_control_point_new — Create a new control point
    • gupnp_device_action_callback_set — Set device callback function
    • gupnp_device_info_get_service — Get the service with type
    • gupnp_device_info_get — Get info of root device
    • gupnp_root_device_get_available — Check whether root device is available
    • gupnp_root_device_get_relative_location — Get the relative location of root device.
    • gupnp_root_device_new — Create a new root device
    • gupnp_root_device_set_available — Set whether or not root_device is available
    • gupnp_root_device_start — Start main loop
    • gupnp_root_device_stop — Stop main loop
    • gupnp_service_action_get — Retrieves the specified action arguments
    • gupnp_service_action_return_error — Return error code
    • gupnp_service_action_return — Return succesfully
    • gupnp_service_action_set — Sets the specified action return values
    • gupnp_service_freeze_notify — Freeze new notifications
    • gupnp_service_info_get_introspection — Get resource introspection of service
    • gupnp_service_info_get — Get full info of service
    • gupnp_service_introspection_get_state_variable — Returns the state variable data
    • gupnp_service_notify — Notifies listening clients
    • gupnp_service_proxy_action_get — Send action to the service and get value
    • gupnp_service_proxy_action_set — Send action to the service and set value
    • gupnp_service_proxy_add_notify — Sets up callback for variable change notification
    • gupnp_service_proxy_callback_set — Set service proxy callback for signal
    • gupnp_service_proxy_get_subscribed — Check whether subscription is valid to the service
    • gupnp_service_proxy_remove_notify — Cancels the variable change notification
    • gupnp_service_proxy_send_action — Send action with multiple parameters synchronously
    • gupnp_service_proxy_set_subscribed — (Un)subscribes to the service.
    • gupnp_service_thaw_notify — Sends out any pending notifications and stops queuing of new ones.
ftp_systype
Introdução
Outros Serviços


Introdução

GUPnP is an object-oriented open source framework for creating UPnP devices and control points, written in C using GObject and libsoup. This extension wraps GUPnP and provides similar API. All sources and additional documentation can be obtained from the » official site

Gupnp
Instalação/Configuração
Gupnp


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Gupnp


Dependências

In order to use PECL/Gupnp functions you need to install the » gUPnP library version 0.12.7 or greater. It also requires glib-2.0, gssdp-1.0, libsoup-2.4 or greater for all of them.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/gupnp

Nota: If ./configure is having trouble finding the libgupnp files (for example, it was installed into a custom prefix directory), use ./configure --with-gupnp=$PREFIX, where $PREFIX is installation prefix of libgupnp.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

GUPNP_TYPE_BOOLEAN (integer)
GUPNP_TYPE_INT (integer)
GUPNP_TYPE_LONG (integer)
GUPNP_TYPE_DOUBLE (integer)
GUPNP_TYPE_FLOAT (integer)
GUPNP_TYPE_STRING (integer)
GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE (integer)
GUPNP_SIGNAL_DEVICE_PROXY_UNAVAILABLE (integer)
GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE (integer)
GUPNP_SIGNAL_SERVICE_PROXY_UNAVAILABLE (integer)
GUPNP_SIGNAL_ACTION_INVOKED (integer)
GUPNP_SIGNAL_NOTIFY_FAILED (integer)
GUPNP_SIGNAL_SUBSCRIPTION_LOST (integer)
GUPNP_CONTROL_ERROR_INVALID_ACTION (integer)
GUPNP_CONTROL_ERROR_INVALID_ARGS (integer)
GUPNP_CONTROL_ERROR_OUT_OF_SYNC (integer)
GUPNP_CONTROL_ERROR_ACTION_FAILED (integer)

Tipos Resource
Exemplos
Gupnp


Exemplos

Índice

  • Browsing devices and services
  • Implementing the BinaryLight device
Constantes pré-definidas
Browsing devices and services
Gupnp


Browsing devices and services

This example shows how to obtain information about all devices and services. It starts an infinite loop (use CLI), and if any of available devices or services are found, the proper callback function will be invoked.

Exemplo #1 Search for all UPnP devices and services.

<?php

/* Callback for available device */
function device_proxy_available_cb($proxy, $arg)
{
    $info = gupnp_device_info_get($proxy);

    $type = $info['device_type'];
    $location = $info['location'];

    printf("Device available:\n");
    printf("\ttype:     %s\n", $type);
    printf("\tlocation: %s\n", $location);
}

/* Callback for available service */
function service_proxy_available_cb($proxy, $arg)
{
    $info = gupnp_service_info_get($proxy);

    $type = $info['service_type'];
    $location = $info['location'];

    printf("Service available:\n");
    printf("\ttype:     %s\n", $type);
    printf("\tlocation: %s\n", $location);
}

/* Create the UPnP context */
$context = gupnp_context_new();
if (!$context) {
    printf("Error creating the GUPnP context\n");
    exit(-1);
}

/* We're interested in everything */
$cp = gupnp_control_point_new($context, "ssdp:all");

/* Set callbacks */
gupnp_control_point_callback_set($cp,
    GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE, 'device_proxy_available_cb');
gupnp_control_point_callback_set($cp,
    GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE, 'service_proxy_available_cb');

/* Start for browsing (infinite loop, hit Ctrl-C to interrupt) */
gupnp_control_point_browse_start($cp);

?>

Exemplos
Implementing the BinaryLight device
Exemplos


Implementing the BinaryLight device

This is an example of UPnP device/service, implementing the BinaryLight device and SwitchPower services to emulate a light switch.

The user interface was purposely simplified in order to show basic concepts and methods.

Exemplo #1 Implementing light server

<?php

/* SetTarget */
function set_target_cb($service, $action, $arg)
{
    /* Get the new target value */
    $target = gupnp_service_action_get($action, 'NewTargetValue', GUPNP_TYPE_BOOLEAN);

    /* If the new target doesn't match the current status, change the status and
       emit a notification that the status has changed. */
    if ($target != $GLOBALS['status']) {
        $GLOBALS['status'] = $target;
        gupnp_service_notify($service, 'Status', GUPNP_TYPE_BOOLEAN, $GLOBALS['status']);
        printf("The light is now %s.\n", $GLOBALS['status'] ? "on" : "off");
    }

    /* Return success to the client */
    gupnp_service_action_return($action);
}

/* GetTarget */
function get_target_cb($service, $action, $arg)
{
    gupnp_service_action_set($action, 'RetTargetValue', GUPNP_TYPE_BOOLEAN, $GLOBALS['status']);
    gupnp_service_action_return($action);
}

/* GetStatus */
function get_status_cb($service, $action, $arg)
{
    gupnp_service_action_set($action, 'ResultStatus', GUPNP_TYPE_BOOLEAN, $GLOBALS['status']);
    gupnp_service_action_return($action);
}

/* By default the light is off */
$GLOBALS['status'] = false;
printf("The light is now %s.\n", $GLOBALS['status'] ? "on" : "off");

/* Create the UPnP context */
$context = gupnp_context_new();
if (!$context) {
    printf("Error creating the GUPnP context\n");
    exit(-1);
}

/* Host the directory that contains device and service description files */
gupnp_context_host_path($context, "./web", "");

/* Create root device */
$location = "/BinaryLight.xml";
$dev = gupnp_root_device_new($context, $location);
gupnp_root_device_set_available($dev, true);

/* Get the switch service from the root device */
$service_type = "urn:schemas-upnp-org:service:SwitchPower:1";
$service = gupnp_device_info_get_service($dev, $service_type);
if (!$service) {
    die("Cannot get SwitchPower1 service\n");
}

/* Set callback for action GetStatus */
gupnp_device_action_callback_set($service, GUPNP_SIGNAL_ACTION_INVOKED, "GetStatus",
    "get_status_cb", "action data, GetStatus");

/* Set callback for action GetTarget */
gupnp_device_action_callback_set($service, GUPNP_SIGNAL_ACTION_INVOKED, "GetTarget",
    "get_target_cb", "action data, GetTarget");

/* Set callback for action SetTarget */
gupnp_device_action_callback_set($service, GUPNP_SIGNAL_ACTION_INVOKED, "SetTarget",
    "set_target_cb", "action data, SetTarget");

/* Run the main loop */
gupnp_root_device_start($dev);

?>

Exemplo #2 Implementing light client

<?php

function service_proxy_available_cb($proxy, $arg)
{
    $mode = $arg['mode'];

    printf("Set subscribed\n");
    gupnp_service_proxy_set_subscribed($proxy, true);

    /* Add notify if status will be changed */
    if (!gupnp_service_proxy_add_notify($proxy, "Status",
            GUPNP_TYPE_BOOLEAN, "status_changed_cb", NULL)) {
        printf("Failed to add notify\n");
    }

    if ($mode == 'TOGGLE') {
        /* We're toggling, so first fetch the current status */
        $target = gupnp_service_proxy_action_get($proxy, 'GetStatus', 'ResultStatus', GUPNP_TYPE_BOOLEAN);

        /* And then toggle it */
        $target = ! $target;
    } else {
        /* Mode is a boolean, so the target is the mode thanks to our well chosen
           enumeration values. */
        $target = ($mode == 'ON') ? true : false;
    }

    /* Set the target */
    if (!gupnp_service_proxy_action_set($proxy, 'SetTarget', 'NewTargetValue', $target, GUPNP_TYPE_BOOLEAN)) {
        printf("Cannot set switch\n");
    } else {
        printf("Set switch to %s.\n", $target ? "on" : "off");
    }

    /* Stop browsing */
    gupnp_control_point_browse_stop($arg['cp']);
}

function status_changed_cb($variable, $value, $arg)
{
    printf("Status has been changed\n");
    printf("\tvariable name: %s\n", $variable);
    printf("\tvalue: %s\n", (int)$value);
    printf("\n");
}

/* Check and parse command line arguments */
if (count($argv) != 2) {
    printf("Usage: light-client.php [on|off|toggle]\n");
    exit(-1);
}

if ($argv[1] == "on") {
    $mode = 'ON';
} elseif ($argv[1] == "off") {
    $mode = 'OFF';
} elseif ($argv[1] == "toggle") {
    $mode = 'TOGGLE';
} else {
    usage ();
    exit(-1);
}

/* Create the UPnP context */
$context = gupnp_context_new();
if (!$context) {
    printf("Error creating the GUPnP context\n");
    exit(-1);
}

/* Create the control point, searching for SwitchPower services */
$cp = gupnp_control_point_new ($context,
        "urn:schemas-upnp-org:service:SwitchPower:1");

/* Connect to the service-found callback */
$cb = "service_proxy_available_cb";
$arg = array('mode' => $mode, 'cp' => $cp);
gupnp_control_point_callback_set($cp, GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE, $cb, $arg);

/* Start for browsing */
gupnp_control_point_browse_start($cp);

?>

Browsing devices and services
Gupnp Funções
Exemplos


Gupnp Funções

Índice

  • gupnp_context_get_host_ip — Get the IP address
  • gupnp_context_get_port — Get the port
  • gupnp_context_get_subscription_timeout — Get the event subscription timeout
  • gupnp_context_host_path — Start hosting
  • gupnp_context_new — Create a new context
  • gupnp_context_set_subscription_timeout — Sets the event subscription timeout
  • gupnp_context_timeout_add — Sets a function to be called at regular intervals
  • gupnp_context_unhost_path — Stop hosting
  • gupnp_control_point_browse_start — Start browsing
  • gupnp_control_point_browse_stop — Stop browsing
  • gupnp_control_point_callback_set — Set control point callback
  • gupnp_control_point_new — Create a new control point
  • gupnp_device_action_callback_set — Set device callback function
  • gupnp_device_info_get_service — Get the service with type
  • gupnp_device_info_get — Get info of root device
  • gupnp_root_device_get_available — Check whether root device is available
  • gupnp_root_device_get_relative_location — Get the relative location of root device.
  • gupnp_root_device_new — Create a new root device
  • gupnp_root_device_set_available — Set whether or not root_device is available
  • gupnp_root_device_start — Start main loop
  • gupnp_root_device_stop — Stop main loop
  • gupnp_service_action_get — Retrieves the specified action arguments
  • gupnp_service_action_return_error — Return error code
  • gupnp_service_action_return — Return succesfully
  • gupnp_service_action_set — Sets the specified action return values
  • gupnp_service_freeze_notify — Freeze new notifications
  • gupnp_service_info_get_introspection — Get resource introspection of service
  • gupnp_service_info_get — Get full info of service
  • gupnp_service_introspection_get_state_variable — Returns the state variable data
  • gupnp_service_notify — Notifies listening clients
  • gupnp_service_proxy_action_get — Send action to the service and get value
  • gupnp_service_proxy_action_set — Send action to the service and set value
  • gupnp_service_proxy_add_notify — Sets up callback for variable change notification
  • gupnp_service_proxy_callback_set — Set service proxy callback for signal
  • gupnp_service_proxy_get_subscribed — Check whether subscription is valid to the service
  • gupnp_service_proxy_remove_notify — Cancels the variable change notification
  • gupnp_service_proxy_send_action — Send action with multiple parameters synchronously
  • gupnp_service_proxy_set_subscribed — (Un)subscribes to the service.
  • gupnp_service_thaw_notify — Sends out any pending notifications and stops queuing of new ones.
Implementing the BinaryLight device
gupnp_context_get_host_ip
Gupnp


Get the IP address

Gupnp Funções
gupnp_context_get_port
Gupnp Funções
PHP Manual

gupnp_context_get_host_ip

(PECL gupnp >= 0.1.0)

gupnp_context_get_host_ip — Get the IP address

Descrição

string gupnp_context_get_host_ip ( resource $context )

Get the IP address we advertise ourselves as using.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

Valor Retornado

Returns the IP address for the current context and FALSE on error.

Exemplos

Exemplo #1 Create new UPnP context and get IP address of the host

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Get IP address for the UPnP context */
$ip = gupnp_context_get_host_ip($context);
echo $ip;

?>

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_get_port() - Get the port

Gupnp Funções
gupnp_context_get_port
Gupnp Funções


Get the port

gupnp_context_get_host_ip
gupnp_context_get_subscription_timeout
Gupnp Funções
PHP Manual

gupnp_context_get_port

(PECL gupnp >= 0.1.0)

gupnp_context_get_port — Get the port

Descrição

int gupnp_context_get_port ( resource $context )

Get the port that the SOAP server is running on.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

Valor Retornado

Returns the port number for the current context and FALSE on error.

Exemplos

Exemplo #1 Create new UPnP context and get port number

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Get the port number for the UPnP context */
$port = gupnp_context_get_port($context);
echo $port;

?>

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_get_host_ip() - Get the IP address

gupnp_context_get_host_ip
gupnp_context_get_subscription_timeout
Gupnp Funções


Get the event subscription timeout

gupnp_context_get_port
gupnp_context_host_path
Gupnp Funções
PHP Manual

gupnp_context_get_subscription_timeout

(PECL gupnp >= 0.1.0)

gupnp_context_get_subscription_timeout — Get the event subscription timeout

Descrição

int gupnp_context_get_subscription_timeout ( resource $context )

Get the event subscription timeout (in seconds), or 0 meaning there is no timeout.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

Valor Retornado

The event subscription timeout in seconds.

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_set_subscription_timeout() - Sets the event subscription timeout

gupnp_context_get_port
gupnp_context_host_path
Gupnp Funções


Start hosting

gupnp_context_get_subscription_timeout
gupnp_context_new
Gupnp Funções
PHP Manual

gupnp_context_host_path

(PECL gupnp >= 0.1.0)

gupnp_context_host_path — Start hosting

Descrição

bool gupnp_context_host_path ( resource $context , string $local_path , string $server_path )

Start hosting local_path at server_path. Files with the path local_path.LOCALE (if they exist) will be served up when LOCALE is specified in the request's Accept-Language header.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

local_path

Path to the local file or folder to be hosted.

server_path

Web server path where local_path should be hosted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Create new UPnP context and set host path

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Host current directory */
gupnp_context_host_path($context, "./web", "");

?>

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_unhost_path() - Stop hosting

gupnp_context_get_subscription_timeout
gupnp_context_new
Gupnp Funções


Create a new context

gupnp_context_host_path
gupnp_context_set_subscription_timeout
Gupnp Funções
PHP Manual

gupnp_context_new

(PECL gupnp >= 0.1.0)

gupnp_context_new — Create a new context

Descrição

resource gupnp_context_new ([ string $host_ip [, int $port = 0 ]] )

Create a new context with the specified host_ip and port.

Parâmetros

host_ip

The local host's IP address, or NULL to use the IP address of the first non-loopback network interface.

port

Port to run on, or 0 if you don't care what port is used.

Valor Retornado

A context identifier.

Exemplos

Exemplo #1 Create new UPnP context

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

?>

Erros

Issues E_WARNING with unable to create context.

gupnp_context_host_path
gupnp_context_set_subscription_timeout
Gupnp Funções


Sets the event subscription timeout

gupnp_context_new
gupnp_context_timeout_add
Gupnp Funções
PHP Manual

gupnp_context_set_subscription_timeout

(PECL gupnp >= 0.1.0)

gupnp_context_set_subscription_timeout — Sets the event subscription timeout

Descrição

void gupnp_context_set_subscription_timeout ( resource $context , int $timeout )

Sets the event subscription timeout (in seconds) to time out. Note that any client side subscriptions will automatically be renewed.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

timeout

The event subscription timeout in seconds. Use 0 if you don't want subscriptions to time out.

Valor Retornado

Não há valor retornado.

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_get_subscription_timeout() - Get the event subscription timeout

gupnp_context_new
gupnp_context_timeout_add
Gupnp Funções


Sets a function to be called at regular intervals

gupnp_context_set_subscription_timeout
gupnp_context_unhost_path
Gupnp Funções
PHP Manual

gupnp_context_timeout_add

(PECL gupnp >= 0.1.0)

gupnp_context_timeout_add — Sets a function to be called at regular intervals

Descrição

bool gupnp_context_timeout_add ( resource $context , int $timeout , mixed $callback [, mixed $arg ] )

Sets a function to be called at regular intervals.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

timeout

A timeout in miliseconds.

callback

The callback function calling every timeout period of time. Typically, callback function takes on arg parameter.

arg

User data for callback.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Create new UPnP context and set callback

<?php

$user_data = "user data";

function timeout_cb($arg)
{
    printf("Call timeout_cb, user data: '%s'", $arg);
    return true;
}

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Create root device */
$dev = gupnp_root_device_new($context, "/devicedesc.xml");

/* Set callback for timeout */
gupnp_context_timeout_add($context, 5000, "timeout_cb", $user_data);

/* Run the main loop */
gupnp_root_device_start($dev);

?>

Erros

Issues E_WARNING with not valid callback function.

Veja Também

  • gupnp_context_new() - Create a new context

gupnp_context_set_subscription_timeout
gupnp_context_unhost_path
Gupnp Funções


Stop hosting

gupnp_context_timeout_add
gupnp_control_point_browse_start
Gupnp Funções
PHP Manual

gupnp_context_unhost_path

(PECL gupnp >= 0.1.0)

gupnp_context_unhost_path — Stop hosting

Descrição

bool gupnp_context_unhost_path ( resource $context , string $server_path )

Stop hosting the file or folder at server_path.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

server_path

Web server path where the file or folder is hosted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_context_new() - Create a new context
  • gupnp_context_host_path() - Start hosting

gupnp_context_timeout_add
gupnp_control_point_browse_start
Gupnp Funções


Start browsing

gupnp_context_unhost_path
gupnp_control_point_browse_stop
Gupnp Funções
PHP Manual

gupnp_control_point_browse_start

(PECL gupnp >= 0.1.0)

gupnp_control_point_browse_start — Start browsing

Descrição

bool gupnp_control_point_browse_start ( resource $cpoint )

Start the search and calls user-defined callback.

Parâmetros

cpoint

A control point identifier, returned by gupnp_control_point_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Create new UPnP context and start browsing

<?php

function device_proxy_available_cb($proxy, $arg)
{
    $info = gupnp_device_info_get($proxy);

    $type = $info['device_type'];
    $location = $info['location'];

    printf("Device available:\n");
    printf("type:     %s\n", $type);
    printf("location: %s\n", $location);
}

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* We're interested in everything */
$cp = gupnp_control_point_new($context, "ssdp:all");

gupnp_control_point_callback_set($cp,
    GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE, 'device_proxy_available_cb');

/* Start for browsing */
gupnp_control_point_browse_start($cp);

?>

Veja Também

  • gupnp_control_point_new() - Create a new control point
  • gupnp_control_point_browse_stop() - Stop browsing

gupnp_context_unhost_path
gupnp_control_point_browse_stop
Gupnp Funções


Stop browsing

gupnp_control_point_browse_start
gupnp_control_point_callback_set
Gupnp Funções
PHP Manual

gupnp_control_point_browse_stop

(PECL gupnp >= 0.1.0)

gupnp_control_point_browse_stop — Stop browsing

Descrição

bool gupnp_control_point_browse_stop ( resource $cpoint )

Stop the search and calls user-defined callback.

Parâmetros

cpoint

A control point identifier, returned by gupnp_control_point_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_control_point_new() - Create a new control point
  • gupnp_control_point_browse_start() - Start browsing

gupnp_control_point_browse_start
gupnp_control_point_callback_set
Gupnp Funções


Set control point callback

gupnp_control_point_browse_stop
gupnp_control_point_new
Gupnp Funções
PHP Manual

gupnp_control_point_callback_set

(PECL gupnp >= 0.1.0)

gupnp_control_point_callback_set — Set control point callback

Descrição

bool gupnp_control_point_callback_set ( resource $cpoint , int $signal , mixed $callback [, mixed $arg ] )

Set control point callback function for signal.

Parâmetros

cpoint

A control point identifier, returned by gupnp_control_point_new().

signal

The value of signal. Signal can be one of the following values:

GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE
Emitted whenever a new device has become available.
GUPNP_SIGNAL_DEVICE_PROXY_UNAVAILABLE
Emitted whenever a device is not available any more.
GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE
Emitted whenever a new service has become available.
GUPNP_SIGNAL_SERVICE_PROXY_UNAVAILABLE
Emitted whenever a service is not available any more.

callback

The callback function for the certain signal. Typically, callback function takes on two parameters. The proxy parameter's identifier being the first, and the arg second.

arg

User data for callback.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Create new UPnP context and start browsing

<?php

function device_proxy_available_cb($proxy, $arg)
{
    $info = gupnp_device_info_get($proxy);

    $type = $info['device_type'];
    $location = $info['location'];

    printf("Device available:\n");
    printf("type:     %s\n", $type);
    printf("location: %s\n", $location);
}

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* We're interested in everything */
$cp = gupnp_control_point_new($context, "ssdp:all");

gupnp_control_point_callback_set($cp,
    GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE, 'device_proxy_available_cb');

/* Start for browsing */
gupnp_control_point_browse_start($cp);

?>

Erros

Issues E_WARNING with not valid callback function.

Veja Também

  • gupnp_control_point_new() - Create a new control point
  • gupnp_control_point_browse_start() - Start browsing

gupnp_control_point_browse_stop
gupnp_control_point_new
Gupnp Funções


Create a new control point

gupnp_control_point_callback_set
gupnp_device_action_callback_set
Gupnp Funções
PHP Manual

gupnp_control_point_new

(PECL gupnp >= 0.1.0)

gupnp_control_point_new — Create a new control point

Descrição

resource gupnp_control_point_new ( resource $context , string $target )

Create a new control point with the specified target.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

target

The search target. target should be a service or device name, such as urn:schemas-upnp-org:service:WANIPConnection:1 or urn:schemas-upnp-org:device:MediaRenderer:1.

Valor Retornado

A control point identifier.

gupnp_control_point_callback_set
gupnp_device_action_callback_set
Gupnp Funções


Set device callback function

gupnp_control_point_new
gupnp_device_info_get_service
Gupnp Funções
PHP Manual

gupnp_device_action_callback_set

(PECL gupnp >= 0.1.0)

gupnp_device_action_callback_set — Set device callback function

Descrição

bool gupnp_device_action_callback_set ( resource $root_device , int $signal , string $action_name , mixed $callback [, mixed $arg ] )

Set device callback function for signal and action.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

signal

The value of signal. Signal can be one of the following values:

GUPNP_SIGNAL_ACTION_INVOKED
Emitted whenever an action is invoked. Handler should process action and must call either gupnp_service_action_return() or gupnp_service_action_return_error().
GUPNP_SIGNAL_NOTIFY_FAILED
Emitted whenever notification of a client fails.

action_name

The name of action.

callback

The callback function for the certain signal. Typically, callback function takes on three parameters. The service parameter's identifier being the first, action parameter's identifier (in case GUPNP_SIGNAL_ACTION_INVOKED signal) or error parameter's message (in case GUPNP_SIGNAL_NOTIFY_FAILED signal) being the second, and the arg is third.

arg

User data for callback.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING either with not valid callback function or with not valid signal.

Veja Também

  • gupnp_root_device_new() - Create a new root device

gupnp_control_point_new
gupnp_device_info_get_service
Gupnp Funções


Get the service with type

gupnp_device_action_callback_set
gupnp_device_info_get
Gupnp Funções
PHP Manual

gupnp_device_info_get_service

(PECL gupnp >= 0.1.0)

gupnp_device_info_get_service — Get the service with type

Descrição

resource gupnp_device_info_get_service ( resource $root_device , string $type )

Get the service with type or false if no such device was found.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

type

The type of the service to be retrieved.

Valor Retornado

A service identifier.

Exemplos

Exemplo #1 Create new UPnP context and get device info service

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Create root device */
$location = "/BinaryLight1.xml";
$dev = gupnp_root_device_new($context, $location);

/* Set root device is available */
gupnp_root_device_set_available($dev, true);

/* Get the switch service from the root device */
$service_type = "urn:schemas-upnp-org:service:SwitchPower:1";
$service = gupnp_device_info_get_service($dev, $service_type);
if (!$service) {
    die("Cannot get SwitchPower1 service\n");
}

?>

gupnp_device_action_callback_set
gupnp_device_info_get
Gupnp Funções


Get info of root device

gupnp_device_info_get_service
gupnp_root_device_get_available
Gupnp Funções
PHP Manual

gupnp_device_info_get

(PECL gupnp >= 0.1.0)

gupnp_device_info_get — Get info of root device

Descrição

array gupnp_device_info_get ( resource $root_device )

Get info of root device.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

Valor Retornado

Return array wich contains the information of the root device (like location, url, udn and etc).

gupnp_device_info_get_service
gupnp_root_device_get_available
Gupnp Funções


Check whether root device is available

gupnp_device_info_get
gupnp_root_device_get_relative_location
Gupnp Funções
PHP Manual

gupnp_root_device_get_available

(PECL gupnp >= 0.1.0)

gupnp_root_device_get_available — Check whether root device is available

Descrição

bool gupnp_root_device_get_available ( resource $root_device )

Get whether or not root_device is available (announcing its presence).

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_root_device_set_available() - Set whether or not root_device is available

gupnp_device_info_get
gupnp_root_device_get_relative_location
Gupnp Funções


Get the relative location of root device.

gupnp_root_device_get_available
gupnp_root_device_new
Gupnp Funções
PHP Manual

gupnp_root_device_get_relative_location

(PECL gupnp >= 0.1.0)

gupnp_root_device_get_relative_location — Get the relative location of root device.

Descrição

string gupnp_root_device_get_relative_location ( resource $root_device )

Get the relative location of root device.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

Valor Retornado

The relative location of root device

gupnp_root_device_get_available
gupnp_root_device_new
Gupnp Funções


Create a new root device

gupnp_root_device_get_relative_location
gupnp_root_device_set_available
Gupnp Funções
PHP Manual

gupnp_root_device_new

(PECL gupnp >= 0.1.0)

gupnp_root_device_new — Create a new root device

Descrição

resource gupnp_root_device_new ( resource $context , string $location , string $description_dir )

Create a new root device, automatically downloading and parsing location.

Parâmetros

context

A context identifier, returned by gupnp_context_new().

location

Location of the description file for this device, relative to the HTTP root

Valor Retornado

A root device identifier.

Exemplos

Exemplo #1 Create new UPnP context and get device info service

<?php

/* Create the UPnP context */
$context = gupnp_context_new();

if (!$context) {
 die("Error creating the GUPnP context\n");
}

/* Create root device */
$location = "/BinaryLight1.xml";
$dev = gupnp_root_device_new($context, $location);

?>

Veja Também

  • gupnp_root_device_set_available() - Set whether or not root_device is available
  • gupnp_root_device_start() - Start main loop
  • gupnp_root_device_stop() - Stop main loop

gupnp_root_device_get_relative_location
gupnp_root_device_set_available
Gupnp Funções


Set whether or not root_device is available

gupnp_root_device_new
gupnp_root_device_start
Gupnp Funções
PHP Manual

gupnp_root_device_set_available

(PECL gupnp >= 0.1.0)

gupnp_root_device_set_available — Set whether or not root_device is available

Descrição

bool gupnp_root_device_set_available ( resource $root_device , bool $available )

Controls whether or not root_device is available (announcing its presence).

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

available

Set TRUE if root_device should be available.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_root_device_get_available() - Check whether root device is available

gupnp_root_device_new
gupnp_root_device_start
Gupnp Funções


Start main loop

gupnp_root_device_set_available
gupnp_root_device_stop
Gupnp Funções
PHP Manual

gupnp_root_device_start

(PECL gupnp >= 0.1.0)

gupnp_root_device_start — Start main loop

Descrição

bool gupnp_root_device_start ( resource $root_device )

Start root server's main loop.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_root_device_stop() - Stop main loop

gupnp_root_device_set_available
gupnp_root_device_stop
Gupnp Funções


Stop main loop

gupnp_root_device_start
gupnp_service_action_get
Gupnp Funções
PHP Manual

gupnp_root_device_stop

(PECL gupnp >= 0.1.0)

gupnp_root_device_stop — Stop main loop

Descrição

bool gupnp_root_device_stop ( resource $root_device )

Stop root server's main loop.

Parâmetros

root_device

A root device identifier, returned by gupnp_root_device_new().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_root_device_start() - Start main loop

gupnp_root_device_start
gupnp_service_action_get
Gupnp Funções


Retrieves the specified action arguments

gupnp_root_device_stop
gupnp_service_action_return_error
Gupnp Funções
PHP Manual

gupnp_service_action_get

(PECL gupnp >= 0.1.0)

gupnp_service_action_get — Retrieves the specified action arguments

Descrição

mixed gupnp_service_action_get ( resource $action , string $name , int $type )

Retrieves the specified action arguments.

Parâmetros

action

A service action identifier.

name

The name of the variable to retrieve.

type

The type of the variable to retrieve. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

Valor Retornado

The value of the variable.

Erros

Issues E_WARNING with not correctly defined type of the variable.

Veja Também

  • gupnp_service_action_set() - Sets the specified action return values

gupnp_root_device_stop
gupnp_service_action_return_error
Gupnp Funções


Return error code

gupnp_service_action_get
gupnp_service_action_return
Gupnp Funções
PHP Manual

gupnp_service_action_return_error

(PECL gupnp >= 0.1.0)

gupnp_service_action_return_error — Return error code

Descrição

bool gupnp_service_action_return_error ( resource $action , int $error_code [, string $error_description ] )

Return error code.

Parâmetros

action

A service action identifier.

error_code

The error code. Signal can be one of the following values or user defined:

GUPNP_CONTROL_ERROR_INVALID_ACTION
The action name was invalid.
GUPNP_CONTROL_ERROR_INVALID_ARGS
The action arguments were invalid.
GUPNP_CONTROL_ERROR_OUT_OF_SYNC
Out of sync (deprecated).
GUPNP_CONTROL_ERROR_ACTION_FAILED
The action failed.

error_description

The error description.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_action_return() - Return succesfully

gupnp_service_action_get
gupnp_service_action_return
Gupnp Funções


Return succesfully

gupnp_service_action_return_error
gupnp_service_action_set
Gupnp Funções
PHP Manual

gupnp_service_action_return

(PECL gupnp >= 0.1.0)

gupnp_service_action_return — Return succesfully

Descrição

bool gupnp_service_action_return ( resource $action )

Return succesfully.

Parâmetros

action

A service action identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_action_return_error() - Return error code

gupnp_service_action_return_error
gupnp_service_action_set
Gupnp Funções


Sets the specified action return values

gupnp_service_action_return
gupnp_service_freeze_notify
Gupnp Funções
PHP Manual

gupnp_service_action_set

(PECL gupnp >= 0.1.0)

gupnp_service_action_set — Sets the specified action return values

Descrição

bool gupnp_service_action_set ( resource $action , string $name , int $type , mixed $value )

Sets the specified action return values.

Parâmetros

action

A service action identifier.

name

The name of the variable to retrieve.

type

The type of the variable to retrieve. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

value

The value of the variable to retrieve.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING with neither not correctly defined type of the variable or the value is not corresponding to the defined type.

Veja Também

  • gupnp_service_action_get() - Retrieves the specified action arguments

gupnp_service_action_return
gupnp_service_freeze_notify
Gupnp Funções


Freeze new notifications

gupnp_service_action_set
gupnp_service_info_get_introspection
Gupnp Funções
PHP Manual

gupnp_service_freeze_notify

(PECL gupnp >= 0.1.0)

gupnp_service_freeze_notify — Freeze new notifications

Descrição

bool gupnp_service_freeze_notify ( resource $service )

Causes new notifications to be queued up until gupnp_service_thaw_notify() is called.

Parâmetros

service

A service identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_notify() - Notifies listening clients
  • gupnp_service_thaw_notify() - Sends out any pending notifications and stops queuing of new ones.

gupnp_service_action_set
gupnp_service_info_get_introspection
Gupnp Funções


Get resource introspection of service

gupnp_service_freeze_notify
gupnp_service_info_get
Gupnp Funções
PHP Manual

gupnp_service_info_get_introspection

(PECL gupnp >= 0.1.0)

gupnp_service_info_get_introspection — Get resource introspection of service

Descrição

mixed gupnp_service_info_get_introspection ( resource $proxy [, mixed $callback [, mixed $arg ]] )

Get resource introspection of service or register callback if corresponding parameter was passed.

Parâmetros

proxy

A service proxy identifier.

callback

The callback function to be called when introspection object is ready. Typically, callback function takes on three parameters. The introspection parameter's identifier being the first, error parameter's message being the second, and the arg is third.

arg

User data for callback.

Valor Retornado

Return true if callback function was defined. Return introspection identifier if callback function was omited.

Erros

Issues E_WARNING with not valid callback function.

gupnp_service_freeze_notify
gupnp_service_info_get
Gupnp Funções


Get full info of service

gupnp_service_info_get_introspection
gupnp_service_introspection_get_state_variable
Gupnp Funções
PHP Manual

gupnp_service_info_get

(PECL gupnp >= 0.1.0)

gupnp_service_info_get — Get full info of service

Descrição

array gupnp_service_info_get ( resource $proxy )

Get full info of service.

Parâmetros

proxy

A service proxy identifier.

Valor Retornado

Return array wich contains the information of the service (like location, url, udn and etc).

gupnp_service_info_get_introspection
gupnp_service_introspection_get_state_variable
Gupnp Funções


Returns the state variable data

gupnp_service_info_get
gupnp_service_notify
Gupnp Funções
PHP Manual

gupnp_service_introspection_get_state_variable

(PECL gupnp >= 0.1.0)

gupnp_service_introspection_get_state_variable — Returns the state variable data

Descrição

array gupnp_service_introspection_get_state_variable ( resource $introspection , string $variable_name )

Returns the state variable data by the name variable_name in this service.

Parâmetros

introspection

A introspection identifier.

variable_name

The name of the variable to retreive.

Valor Retornado

Return the state variable data or FALSE.

gupnp_service_info_get
gupnp_service_notify
Gupnp Funções


Notifies listening clients

gupnp_service_introspection_get_state_variable
gupnp_service_proxy_action_get
Gupnp Funções
PHP Manual

gupnp_service_notify

(PECL gupnp >= 0.1.0)

gupnp_service_notify — Notifies listening clients

Descrição

bool gupnp_service_notify ( resource $service , string $name , int $type , mixed $value )

Notifies listening clients that the property have changed to the specified values.

Parâmetros

service

A service identifier.

name

The name of the variable.

type

The type of the variable. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

value

The value of the variable.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING with either not correctly defined type of the variable or the value is not corresponding to the defined type.

Veja Também

  • gupnp_service_freeze_notify() - Freeze new notifications
  • gupnp_service_thaw_notify() - Sends out any pending notifications and stops queuing of new ones.

gupnp_service_introspection_get_state_variable
gupnp_service_proxy_action_get
Gupnp Funções


Send action to the service and get value

gupnp_service_notify
gupnp_service_proxy_action_set
Gupnp Funções
PHP Manual

gupnp_service_proxy_action_get

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_action_get — Send action to the service and get value

Descrição

mixed gupnp_service_proxy_action_get ( resource $proxy , string $action , string $name , int $type )

Send action with parameters to the service exposed by proxy synchronously and get value.

Parâmetros

proxy

A service proxy identifier.

action

An action.

name

The action name.

type

The type of the variable to retrieve. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

Valor Retornado

Return value of the action.

Erros

Issues E_WARNING with either not correctly defined type of the action or unable to send action.

Veja Também

  • gupnp_service_proxy_action_set() - Send action to the service and set value
  • gupnp_service_proxy_send_action() - Send action with multiple parameters synchronously

gupnp_service_notify
gupnp_service_proxy_action_set
Gupnp Funções


Send action to the service and set value

gupnp_service_proxy_action_get
gupnp_service_proxy_add_notify
Gupnp Funções
PHP Manual

gupnp_service_proxy_action_set

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_action_set — Send action to the service and set value

Descrição

bool gupnp_service_proxy_action_set ( resource $proxy , string $action , string $name , mixed $value , int $type )

Send action with parameters to the service exposed by proxy synchronously and set value.

Parâmetros

proxy

A service proxy identifier.

action

An action.

name

The action name.

value

The action value.

type

The type of the action. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING with either not correctly defined type of the action or unable to send action.

Veja Também

  • gupnp_service_proxy_action_get() - Send action to the service and get value
  • gupnp_service_proxy_send_action() - Send action with multiple parameters synchronously

gupnp_service_proxy_action_get
gupnp_service_proxy_add_notify
Gupnp Funções


Sets up callback for variable change notification

gupnp_service_proxy_action_set
gupnp_service_proxy_callback_set
Gupnp Funções
PHP Manual

gupnp_service_proxy_add_notify

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_add_notify — Sets up callback for variable change notification

Descrição

bool gupnp_service_proxy_add_notify ( resource $proxy , string $value , int $type , mixed $callback [, mixed $arg ] )

Sets up callback to be called whenever a change notification for variable is recieved.

Parâmetros

proxy

A service proxy identifier.

value

The variable to add notification for.

type

The type of the variable. Type can be one of the following values:

GUPNP_TYPE_BOOLEAN
Type of the variable is boolean.
GUPNP_TYPE_INT
Type of the variable is integer.
GUPNP_TYPE_LONG
Type of the variable is long.
GUPNP_TYPE_DOUBLE
Type of the variable is double.
GUPNP_TYPE_FLOAT
Type of the variable is float.
GUPNP_TYPE_STRING
Type of the variable is string.

callback

The callback to call when variable changes. Typically, callback function takes on three parameters. The variable parameter being the first, value parameter being the second, and the arg is third.

arg

User data for callback.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_proxy_remove_notify() - Cancels the variable change notification

gupnp_service_proxy_action_set
gupnp_service_proxy_callback_set
Gupnp Funções


Set service proxy callback for signal

gupnp_service_proxy_add_notify
gupnp_service_proxy_get_subscribed
Gupnp Funções
PHP Manual

gupnp_service_proxy_callback_set

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_callback_set — Set service proxy callback for signal

Descrição

bool gupnp_service_proxy_callback_set ( resource $proxy , int $signal , mixed $callback [, mixed $arg ] )

Set service proxy callback for signal.

Parâmetros

proxy

A service proxy identifier.

signal

The value of signal.

GUPNP_SIGNAL_SUBSCRIPTION_LOST
Emitted whenever the subscription to this service has been lost due to an error condition.

callback

The callback function for the certain signal. Typically, callback function takes on two parameters. error parameter's message being the first, and the arg is second.

arg

User data for callback.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING either with not valid callback function or with not valid signal.

gupnp_service_proxy_add_notify
gupnp_service_proxy_get_subscribed
Gupnp Funções


Check whether subscription is valid to the service

gupnp_service_proxy_callback_set
gupnp_service_proxy_remove_notify
Gupnp Funções
PHP Manual

gupnp_service_proxy_get_subscribed

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_get_subscribed — Check whether subscription is valid to the service

Descrição

bool gupnp_service_proxy_get_subscribed ( resource $proxy )

Check whether subscription is valid to the service.

Parâmetros

proxy

A service proxy identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_proxy_set_subscribed() - (Un)subscribes to the service.

gupnp_service_proxy_callback_set
gupnp_service_proxy_remove_notify
Gupnp Funções


Cancels the variable change notification

gupnp_service_proxy_get_subscribed
gupnp_service_proxy_send_action
Gupnp Funções
PHP Manual

gupnp_service_proxy_remove_notify

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_remove_notify — Cancels the variable change notification

Descrição

bool gupnp_service_proxy_remove_notify ( resource $proxy , string $value )

Cancels the variable change notification.

Parâmetros

proxy

A service proxy identifier.

value

The variable to add notification for.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_proxy_add_notify() - Sets up callback for variable change notification

gupnp_service_proxy_get_subscribed
gupnp_service_proxy_send_action
Gupnp Funções


Send action with multiple parameters synchronously

gupnp_service_proxy_remove_notify
gupnp_service_proxy_set_subscribed
Gupnp Funções
PHP Manual

gupnp_service_proxy_send_action

(PECL gupnp >= 0.2.0)

gupnp_service_proxy_send_action — Send action with multiple parameters synchronously

Descrição

array gupnp_service_proxy_send_action ( resource $proxy , string $action , array $in_params , array $out_params )

Send action action with parameters in_params to the service exposed by proxy synchronously and return out_params with values or FALSE on error.

Parâmetros

proxy

A service proxy identifier.

action

An action.

in_params

An array of in parameters. Each entry in in_params is supposed to an array containing name, type and value of the parameters.

out_params

An array of out parameters. Each entry in out_params is supposed to an array containing name and type of the parameters.

Valor Retornado

Return out_params array with values or FALSE on error.

Erros

Issues E_WARNING with either not correctly defined in_params and out_params or unable to send action.

Veja Também

  • gupnp_service_proxy_action_get() - Send action to the service and get value
  • gupnp_service_proxy_action_set() - Send action to the service and set value

gupnp_service_proxy_remove_notify
gupnp_service_proxy_set_subscribed
Gupnp Funções


(Un)subscribes to the service.

gupnp_service_proxy_send_action
gupnp_service_thaw_notify
Gupnp Funções
PHP Manual

gupnp_service_proxy_set_subscribed

(PECL gupnp >= 0.1.0)

gupnp_service_proxy_set_subscribed — (Un)subscribes to the service.

Descrição

bool gupnp_service_proxy_set_subscribed ( resource $proxy , bool $subscribed )

(Un)subscribes to the service.

Parâmetros

proxy

A service proxy identifier.

subscribed

Set TRUE to subscribe to this service.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_proxy_get_subscribed() - Check whether subscription is valid to the service

gupnp_service_proxy_send_action
gupnp_service_thaw_notify
Gupnp Funções


Sends out any pending notifications and stops queuing of new ones.

gupnp_service_proxy_set_subscribed
Hyperwave
Gupnp Funções
PHP Manual

gupnp_service_thaw_notify

(PECL gupnp >= 0.1.0)

gupnp_service_thaw_notify — Sends out any pending notifications and stops queuing of new ones.

Descrição

bool gupnp_service_thaw_notify ( resource $service )

Sends out any pending notifications and stops queuing of new ones.

Parâmetros

service

A service identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • gupnp_service_notify() - Notifies listening clients
  • gupnp_service_freeze_notify() - Freeze new notifications

gupnp_service_proxy_set_subscribed
Hyperwave
Gupnp Funções


Hyperwave

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Integration with Apache
  • Hyperwave Funções
    • hw_Array2Objrec — Convert attributes from object array to object record
    • hw_changeobject — Changes attributes of an object (obsolete)
    • hw_Children — Object ids of children
    • hw_ChildrenObj — Object records of children
    • hw_Close — Closes the Hyperwave connection
    • hw_Connect — Opens a connection
    • hw_connection_info — Prints information about the connection to Hyperwave server
    • hw_cp — Copies objects
    • hw_Deleteobject — Deletes object
    • hw_DocByAnchor — Object id object belonging to anchor
    • hw_DocByAnchorObj — Object record object belonging to anchor
    • hw_Document_Attributes — Object record of hw_document
    • hw_Document_BodyTag — Body tag of hw_document
    • hw_Document_Content — Returns content of hw_document
    • hw_Document_SetContent — Sets/replaces content of hw_document
    • hw_Document_Size — Size of hw_document
    • hw_dummy — Hyperwave dummy function
    • hw_EditText — Retrieve text document
    • hw_Error — Error number
    • hw_ErrorMsg — Returns error message
    • hw_Free_Document — Frees hw_document
    • hw_GetAnchors — Object ids of anchors of document
    • hw_GetAnchorsObj — Object records of anchors of document
    • hw_GetAndLock — Return object record and lock object
    • hw_GetChildColl — Object ids of child collections
    • hw_GetChildCollObj — Object records of child collections
    • hw_GetChildDocColl — Object ids of child documents of collection
    • hw_GetChildDocCollObj — Object records of child documents of collection
    • hw_GetObject — Object record
    • hw_GetObjectByQuery — Search object
    • hw_GetObjectByQueryColl — Search object in collection
    • hw_GetObjectByQueryCollObj — Search object in collection
    • hw_GetObjectByQueryObj — Search object
    • hw_GetParents — Object ids of parents
    • hw_GetParentsObj — Object records of parents
    • hw_getrellink — Get link from source to dest relative to rootid
    • hw_GetRemote — Gets a remote document
    • hw_getremotechildren — Gets children of remote document
    • hw_GetSrcByDestObj — Returns anchors pointing at object
    • hw_GetText — Retrieve text document
    • hw_getusername — Name of currently logged in user
    • hw_Identify — Identifies as user
    • hw_InCollections — Check if object ids in collections
    • hw_Info — Info about connection
    • hw_InsColl — Insert collection
    • hw_InsDoc — Insert document
    • hw_insertanchors — Inserts only anchors into text
    • hw_InsertDocument — Upload any document
    • hw_InsertObject — Inserts an object record
    • hw_mapid — Maps global id on virtual local id
    • hw_Modifyobject — Modifies object record
    • hw_mv — Moves objects
    • hw_New_Document — Create new document
    • hw_objrec2array — Convert attributes from object record to object array
    • hw_Output_Document — Prints hw_document
    • hw_pConnect — Make a persistent database connection
    • hw_PipeDocument — Retrieve any document
    • hw_Root — Root object id
    • hw_setlinkroot — Set the id to which links are calculated
    • hw_stat — Returns status string
    • hw_Unlock — Unlock object
    • hw_Who — List of currently logged in users
gupnp_service_thaw_notify
Introdução
Outros Serviços


Introdução

Hyperwave has been developed at » IICM in Graz. It started with the name Hyper-G and changed to Hyperwave when it was commercialised (in 1996).

Hyperwave is not free software. The current version, 5.5 is available at » http://www.hyperwave.com/. A time limited version can be ordered for free (30 days).

See also the Hyperwave API module.

Hyperwave is an information system similar to a database (HIS, Hyperwave Information Server). Its focus is the storage and management of documents. A document can be any possible piece of data that may as well be stored in file. Each document is accompanied by its object record. The object record contains meta data for the document. The meta data is a list of attributes which can be extended by the user. Certain attributes are always set by the Hyperwave server, other may be modified by the user. An attribute is a name/value pair of the form name=value. The complete object record contains as many of those pairs as the user likes. The name of an attribute does not have to be unique, e.g. a title may appear several times within an object record. This makes sense if you want to specify a title in several languages. In such a case there is a convention, that each title value is preceded by the two letter language abbreviation followed by a colon, e.g. 'en:Title in English' or 'de:Titel in deutsch'. Other attributes like a description or keywords are potential candidates. You may also replace the language abbreviation by any other string as long as it separated by colon from the rest of the attribute value.

Each object record has native a string representation with each name/value pair separated by a newline. The Hyperwave extension also knows a second representation which is an associated array with the attribute name being the key. Multilingual attribute values itself form another associated array with the key being the language abbreviation. Actually any multiple attribute forms an associated array with the string left to the colon in the attribute value being the key. (This is not fully implemented. Only the attributes Title, Description and Keyword are treated properly yet.)

Besides the documents, all hyper links contained in a document are stored as object records as well. Hyper links which are in a document will be removed from it and stored as individual objects, when the document is inserted into the database. The object record of the link contains information about where it starts and where it ends. In order to gain the original document you will have to retrieve the plain document without the links and the list of links and reinsert them. The functions hw_pipedocument() and hw_gettext() do this for you. The advantage of separating links from the document is obvious. Once a document to which a link is pointing to changes its name, the link can easily be modified accordingly. The document containing the link is not affected at all. You may even add a link to a document without modifying the document itself.

Saying that hw_pipedocument() and hw_gettext() do the link insertion automatically is not as simple as it sounds. Inserting links implies a certain hierarchy of the documents. On a web server this is given by the file system, but Hyperwave has its own hierarchy and names do not reflect the position of an object in that hierarchy. Therefore creation of links first of all requires a mapping from the Hyperwave hierarchy and namespace into a web hierarchy respective web namespace. The fundamental difference between Hyperwave and the web is the clear distinction between names and hierarchy in Hyperwave. The name does not contain any information about the objects position in the hierarchy. In the web the name also contains the information on where the object is located in the hierarchy. This leads to two possibles ways of mapping. Either the Hyperwave hierarchy and name of the Hyperwave object is reflected in the URL or the name only. To make things simple the second approach is used. Hyperwave object with name my_object is mapped to http://host/my_object disregarding where it resides in the Hyperwave hierarchy. An object with name parent/my_object could be the child of my_object in the Hyperwave hierarchy, though in a web namespace it appears to be just the opposite and the user might get confused. This can only be prevented by selecting reasonable object names.

Having made this decision a second problem arises. How do you involve PHP? The URL http://host/my_object will not call any PHP script unless you tell your web server to rewrite it to e.g. http://host/php_script/my_object and the script php_script evaluates the $PATH_INFO variable and retrieves the object with name my_object from the Hyperwave server. Their is just one little drawback which can be fixed easily. Rewriting any URL would not allow any access to other document on the web server. A PHP script for searching in the Hyperwave server would be impossible. Therefore you will need at least a second rewriting rule to exclude certain URLs like all e.g. starting with http://host/Hyperwave This is basically sharing of a namespace by the web and Hyperwave server.

Based on the above mechanism links are insert into documents.

It gets more complicated if PHP is not run as a server module or CGI script but as a standalone application e.g. to dump the content of the Hyperwave server on a CD-ROM. In such a case it makes sense to retain the Hyperwave hierarchy and map in onto the file system. This conflicts with the object names if they reflect its own hierarchy (e.g. by choosing names including '/'). Therefore '/' has to be replaced by another character, e.g. '_'.

The network protocol to communicate with the Hyperwave server is called » HG-CSP (Hyper-G Client/Server Protocol). It is based on messages to initiate certain actions, e.g. get object record. In early versions of the Hyperwave Server two native clients (Harmony, Amadeus) were provided for communication with the server. Those two disappeared when Hyperwave was commercialised. As a replacement a so called wavemaster was provided. The wavemaster is like a protocol converter from HTTP to HG-CSP. The idea is to do all the administration of the database and visualisation of documents by a web interface. The wavemaster implements a set of placeholders for certain actions to customise the interface. This set of placeholders is called the PLACE Language. PLACE lacks a lot of features of a real programming language and any extension to it only enlarges the list of placeholders. This has led to the use of JavaScript which IMO does not make life easier.

Adding Hyperwave support to PHP should fill in the gap of a missing programming language for interface customisation. It implements all the messages as defined by the HG-CSP but also provides more powerful commands to e.g. retrieve complete documents.

Hyperwave has its own terminology to name certain pieces of information. This has widely been taken over and extended. Almost all functions operate on one of the following data types.

  • object ID: A unique integer value for each object in the Hyperwave server. It is also one of the attributes of the object record (ObjectID). Object ids are often used as an input parameter to specify an object.
  • object record: A string with attribute-value pairs of the form attribute=value. The pairs are separated by a carriage return from each other. An object record can easily be converted into an object array with hw_object2array(). Several functions return object records. The names of those functions end with obj.
  • object array: An associative array with all attributes of an object. The keys are the attribute names. If an attribute occurs more than once in an object record it will result in another indexed or associative array. Attributes which are language depended (like the title, keyword, description) will form an associative array with the keys set to the language abbreviations. All other multiple attributes will form an indexed array. PHP functions never return object arrays.
  • hw_document: This is a complete new data type which holds the actual document, e.g. HTML, PDF etc. It is somewhat optimized for HTML documents but may be used for any format.

Several functions which return an array of object records do also return an associative array with statistical information about them. The array is the last element of the object record array. The statistical array contains the following entries:

Hidden
Number of object records with attribute PresentationHints set to Hidden.
CollectionHead
Number of object records with attribute PresentationHints set to CollectionHead.
FullCollectionHead
Number of object records with attribute PresentationHints set to FullCollectionHead.
CollectionHeadNr
Index in array of object records with attribute PresentationHints set to CollectionHead.
FullCollectionHeadNr
Index in array of object records with attribute PresentationHints set to FullCollectionHead.
Total
Total: Number of object records.

Hyperwave
Instalação/Configuração
Hyperwave


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Hyperwave


Dependências

This extension needs a Hyperwave server downloadable from » http://www.hyperwave.com/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/hyperwave.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Hyperwave configuration options
Name | Default | Changeable | Changelog
hyperwave.allow_persistent | "0" | PHP_INI_SYSTEM | Available since PHP 4.3.2. Removed in PHP 5.0.0.
hyperwave.default_port | "418" | PHP_INI_ALL | Removed in PHP 5.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

HW_ATTR_LANG (integer)
HW_ATTR_NR (integer)
HW_ATTR_NONE (integer)
Tipos Resource
Integration with Apache
Hyperwave


Integration with Apache

The Hyperwave extension is best used when PHP is compiled as an Apache module. In such a case the underlying Hyperwave server can be hidden from users almost completely if Apache uses its rewriting engine. The following instructions will explain this.

Since PHP with Hyperwave support built into Apache is intended to replace the native Hyperwave solution based on Wavemaster, we will assume that the Apache server will only serve as a Hyperwave web interface for these examples. This is not necessary but it simplifies the configuration. The concept is quite simple. First of all you need a PHP script which evaluates the $_ENV['PATH_INFO'] variable and treats its value as the name of a Hyperwave object. Let's call this script 'Hyperwave'. The URL http://your.hostname/Hyperwave/name_of_object would than return the Hyperwave object with the name 'name_of_object'. Depending on the type of the object the script has to react accordingly. If it is a collection, it will probably return a list of children. If it is a document it will return the mime type and the content. A slight improvement can be achieved if the Apache rewriting engine is used. From the users point of view it would be more straight forward if the URL http://your.hostname/name_of_object would return the object. The rewriting rule is quite easy:

RewriteRule ^/(.*) /usr/local/apache/htdocs/HyperWave/$1 [L]
Now every URL relates to an object in the Hyperwave server. This causes a simple to solve problem. There is no way to execute a different script, e.g. for searching, than the 'Hyperwave' script. This can be fixed with another rewriting rule like the following:
RewriteRule ^/hw/(.*) /usr/local/apache/htdocs/hw/$1 [L]
This will reserve the directory /usr/local/apache/htdocs/hw for additional scripts and other files. Just make sure this rule is evaluated before the one above. There is just a little drawback: all Hyperwave objects whose name starts with 'hw/' will be shadowed. So, make sure you don't use such names. If you need more directories, e.g. for images just add more rules or place them all in one directory. Before you put those instructions, don't forget to turn on the rewriting engine with
RewriteEngine on
You will need scripts:
  • to return the object itself
  • to allow searching
  • to identify yourself
  • to set your profile
  • one for each additional function like to show the object attributes, to show information about users, to show the status of the server, etc.

As an alternative to the Rewrite Engine, you can also consider using the Apache ErrorDocument directive, but be aware, that ErrorDocument redirected pages cannot receive POST data.

Constantes pré-definidas
Hyperwave Funções
Hyperwave


Hyperwave Funções

Todo

There are still some things to do:

  • The hw_InsertDocument has to be split into hw_insertobject() and hw_putdocument().
  • The names of several functions are not fixed, yet.
  • Most functions require the current connection as its first parameter. This leads to a lot of typing, which is quite often not necessary if there is just one open connection. A default connection will improve this.
  • Conversion form object record into object array needs to handle any multiple attribute.

Índice

  • hw_Array2Objrec — Convert attributes from object array to object record
  • hw_changeobject — Changes attributes of an object (obsolete)
  • hw_Children — Object ids of children
  • hw_ChildrenObj — Object records of children
  • hw_Close — Closes the Hyperwave connection
  • hw_Connect — Opens a connection
  • hw_connection_info — Prints information about the connection to Hyperwave server
  • hw_cp — Copies objects
  • hw_Deleteobject — Deletes object
  • hw_DocByAnchor — Object id object belonging to anchor
  • hw_DocByAnchorObj — Object record object belonging to anchor
  • hw_Document_Attributes — Object record of hw_document
  • hw_Document_BodyTag — Body tag of hw_document
  • hw_Document_Content — Returns content of hw_document
  • hw_Document_SetContent — Sets/replaces content of hw_document
  • hw_Document_Size — Size of hw_document
  • hw_dummy — Hyperwave dummy function
  • hw_EditText — Retrieve text document
  • hw_Error — Error number
  • hw_ErrorMsg — Returns error message
  • hw_Free_Document — Frees hw_document
  • hw_GetAnchors — Object ids of anchors of document
  • hw_GetAnchorsObj — Object records of anchors of document
  • hw_GetAndLock — Return object record and lock object
  • hw_GetChildColl — Object ids of child collections
  • hw_GetChildCollObj — Object records of child collections
  • hw_GetChildDocColl — Object ids of child documents of collection
  • hw_GetChildDocCollObj — Object records of child documents of collection
  • hw_GetObject — Object record
  • hw_GetObjectByQuery — Search object
  • hw_GetObjectByQueryColl — Search object in collection
  • hw_GetObjectByQueryCollObj — Search object in collection
  • hw_GetObjectByQueryObj — Search object
  • hw_GetParents — Object ids of parents
  • hw_GetParentsObj — Object records of parents
  • hw_getrellink — Get link from source to dest relative to rootid
  • hw_GetRemote — Gets a remote document
  • hw_getremotechildren — Gets children of remote document
  • hw_GetSrcByDestObj — Returns anchors pointing at object
  • hw_GetText — Retrieve text document
  • hw_getusername — Name of currently logged in user
  • hw_Identify — Identifies as user
  • hw_InCollections — Check if object ids in collections
  • hw_Info — Info about connection
  • hw_InsColl — Insert collection
  • hw_InsDoc — Insert document
  • hw_insertanchors — Inserts only anchors into text
  • hw_InsertDocument — Upload any document
  • hw_InsertObject — Inserts an object record
  • hw_mapid — Maps global id on virtual local id
  • hw_Modifyobject — Modifies object record
  • hw_mv — Moves objects
  • hw_New_Document — Create new document
  • hw_objrec2array — Convert attributes from object record to object array
  • hw_Output_Document — Prints hw_document
  • hw_pConnect — Make a persistent database connection
  • hw_PipeDocument — Retrieve any document
  • hw_Root — Root object id
  • hw_setlinkroot — Set the id to which links are calculated
  • hw_stat — Returns status string
  • hw_Unlock — Unlock object
  • hw_Who — List of currently logged in users
Integration with Apache
hw_Array2Objrec
Hyperwave


Convert attributes from object array to object record

Hyperwave Funções
hw_changeobject
Hyperwave Funções
PHP Manual

hw_Array2Objrec

(PHP 4)

hw_Array2Objrec — Convert attributes from object array to object record

Descrição

string hw_array2objrec ( array $object_array )

Converts an object_array into an object record. Multiple attributes like 'Title' in different languages are treated properly.

Parâmetros

object_array

The array.

Valor Retornado

Returns an object record.

Veja Também

  • hw_objrec2array() - Convert attributes from object record to object array

Hyperwave Funções
hw_changeobject
Hyperwave Funções


Changes attributes of an object (obsolete)

hw_Array2Objrec
hw_Children
Hyperwave Funções
PHP Manual

hw_changeobject

(PHP 4)

hw_changeobject — Changes attributes of an object (obsolete)

Descrição

bool hw_changeobject ( int $link , int $objid , array $attributes )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_Array2Objrec
hw_Children
Hyperwave Funções


Object ids of children

hw_changeobject
hw_ChildrenObj
Hyperwave Funções
PHP Manual

hw_Children

(PHP 4)

hw_Children — Object ids of children

Descrição

array hw_children ( int $connection , int $objectID )

Returns the identifiers of the collection children.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object ids. Each id belongs to a child of the collection with ID objectID. The array contains all children both documents and collections.

hw_changeobject
hw_ChildrenObj
Hyperwave Funções


Object records of children

hw_Children
hw_Close
Hyperwave Funções
PHP Manual

hw_ChildrenObj

(PHP 4)

hw_ChildrenObj — Object records of children

Descrição

array hw_childrenobj ( int $connection , int $objectID )

Returns the object records of the collection children.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object records. Each object record belongs to a child of the collection with ID objectID. The array contains all children both documents and collections.

hw_Children
hw_Close
Hyperwave Funções


Closes the Hyperwave connection

hw_ChildrenObj
hw_Connect
Hyperwave Funções
PHP Manual

hw_Close

(PHP 4)

hw_Close — Closes the Hyperwave connection

Descrição

bool hw_close ( int $connection )

Closes down the connection to a Hyperwave server.

Parâmetros

connection

The connection identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

hw_ChildrenObj
hw_Connect
Hyperwave Funções


Opens a connection

hw_Close
hw_connection_info
Hyperwave Funções
PHP Manual

hw_Connect

(PHP 4)

hw_Connect — Opens a connection

Descrição

int hw_connect ( string $host , int $port [, string $username ], string $password )

Opens a connection to a Hyperwave server. You can have multiple connections open at once.

Parâmetros

host

The server host name.

port

The server port number.

username

The Hyperwave user name. If omitted, no identification with the server will be done. It is similar to identify as user anonymous.

password

The password for username. Keep in mind, that the password is not encrypted.

Valor Retornado

Returns a connection index on success, or FALSE if the connection could not be made.

Veja Também

  • hw_pconnect() - Make a persistent database connection

hw_Close
hw_connection_info
Hyperwave Funções


Prints information about the connection to Hyperwave server

hw_Connect
hw_cp
Hyperwave Funções
PHP Manual

hw_connection_info

(PHP 4)

hw_connection_info — Prints information about the connection to Hyperwave server

Descrição

void hw_connection_info ( int $link )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_Connect
hw_cp
Hyperwave Funções


Copies objects

hw_connection_info
hw_Deleteobject
Hyperwave Funções
PHP Manual

hw_cp

(PHP 4)

hw_cp — Copies objects

Descrição

int hw_cp ( int $connection , array $object_id_array , int $destination_id )

Copies the objects with object ids as specified in the second parameter to the collection with the id destination id.

Parâmetros

connection

The connection identifier.

object_id_array

An array of object ids.

destination_id

The target collection id.

Valor Retornado

Returns the number of copied objects.

Veja Também

  • hw_mv() - Moves objects

hw_connection_info
hw_Deleteobject
Hyperwave Funções


Deletes object

hw_cp
hw_DocByAnchor
Hyperwave Funções
PHP Manual

hw_Deleteobject

(PHP 4)

hw_Deleteobject — Deletes object

Descrição

bool hw_deleteobject ( int $connection , int $object_to_delete )

Deletes the object with the given object id in the second parameter. It will delete all instances of the object.

Parâmetros

connection

The connection identifier.

object_to_delete

The object identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_mv() - Moves objects

hw_cp
hw_DocByAnchor
Hyperwave Funções


Object id object belonging to anchor

hw_Deleteobject
hw_DocByAnchorObj
Hyperwave Funções
PHP Manual

hw_DocByAnchor

(PHP 4)

hw_DocByAnchor — Object id object belonging to anchor

Descrição

int hw_docbyanchor ( int $connection , int $anchorID )

Returns an th object id of the document to which anchorID belongs.

Parâmetros

connection

The connection identifier.

anchorID

The anchor identifier.

Valor Retornado

Returns the document object id.

hw_Deleteobject
hw_DocByAnchorObj
Hyperwave Funções


Object record object belonging to anchor

hw_DocByAnchor
hw_Document_Attributes
Hyperwave Funções
PHP Manual

hw_DocByAnchorObj

(PHP 4)

hw_DocByAnchorObj — Object record object belonging to anchor

Descrição

string hw_docbyanchorobj ( int $connection , int $anchorID )

Returns an th object record of the document to which anchorID belongs.

Parâmetros

connection

The connection identifier.

anchorID

The anchor identifier.

Valor Retornado

Returns an object record.

hw_DocByAnchor
hw_Document_Attributes
Hyperwave Funções


Object record of hw_document

hw_DocByAnchorObj
hw_Document_BodyTag
Hyperwave Funções
PHP Manual

hw_Document_Attributes

(PHP 4)

hw_Document_Attributes — Object record of hw_document

Descrição

string hw_document_attributes ( int $hw_document )

Returns the object record of the document.

For backward compatibility, hw_documentattributes() is also accepted. This is deprecated, however.

Parâmetros

hw_document

The document identifier.

Valor Retornado

Returns the object record of the document.

Veja Também

  • hw_document_bodytag() - Body tag of hw_document
  • hw_document_size() - Size of hw_document

hw_DocByAnchorObj
hw_Document_BodyTag
Hyperwave Funções


Body tag of hw_document

hw_Document_Attributes
hw_Document_Content
Hyperwave Funções
PHP Manual

hw_Document_BodyTag

(PHP 4)

hw_Document_BodyTag — Body tag of hw_document

Descrição

string hw_document_bodytag ( int $hw_document [, string $prefix ] )

Returns the BODY tag of the document. If the document is an HTML document the BODY tag should be printed before the document.

For backward compatibility, hw_documentbodytag() is also accepted. This is deprecated, however.

Parâmetros

hw_document

The document identifier.

prefix

Valor Retornado

Returns the BODY tag as a string.

Veja Também

  • hw_document_attributes() - Object record of hw_document
  • hw_document_size() - Size of hw_document

hw_Document_Attributes
hw_Document_Content
Hyperwave Funções


Returns content of hw_document

hw_Document_BodyTag
hw_Document_SetContent
Hyperwave Funções
PHP Manual

hw_Document_Content

(PHP 4)

hw_Document_Content — Returns content of hw_document

Descrição

string hw_document_content ( int $hw_document )

Gets the content of the document.

Parâmetros

hw_document

The document identifier.

Valor Retornado

Returns the content of the document. If the document is an HTML document the content is everything after the BODY tag. Information from the HEAD and BODY tag is in the stored in the object record.

Veja Também

  • hw_document_attributes() - Object record of hw_document
  • hw_document_size() - Size of hw_document
  • hw_document_setcontent() - Sets/replaces content of hw_document

hw_Document_BodyTag
hw_Document_SetContent
Hyperwave Funções


Sets/replaces content of hw_document

hw_Document_Content
hw_Document_Size
Hyperwave Funções
PHP Manual

hw_Document_SetContent

(PHP 4)

hw_Document_SetContent — Sets/replaces content of hw_document

Descrição

bool hw_document_setcontent ( int $hw_document , string $content )

Sets or replaces the content of the document. If the document is an HTML document the content is everything after the BODY tag. Information from the HEAD and BODY tag is in the stored in the object record. If you provide this information in the content of the document too, the Hyperwave server will change the object record accordingly when the document is inserted. Probably not a very good idea. If this functions fails the document will retain its old content.

Parâmetros

hw_document

The document identifier.

content

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_document_attributes() - Object record of hw_document
  • hw_document_size() - Size of hw_document
  • hw_document_content() - Returns content of hw_document

hw_Document_Content
hw_Document_Size
Hyperwave Funções


Size of hw_document

hw_Document_SetContent
hw_dummy
Hyperwave Funções
PHP Manual

hw_Document_Size

(PHP 4)

hw_Document_Size — Size of hw_document

Descrição

int hw_document_size ( int $hw_document )

Gets the size of the document.

For backward compatibility, hw_documentsize() is also accepted. This is deprecated, however.

Parâmetros

hw_document

The document identifier.

Valor Retornado

Returns the size in bytes of the document.

Veja Também

  • hw_document_attributes() - Object record of hw_document
  • hw_document_bodytag() - Body tag of hw_document

hw_Document_SetContent
hw_dummy
Hyperwave Funções


Hyperwave dummy function

hw_Document_Size
hw_EditText
Hyperwave Funções
PHP Manual

hw_dummy

(PHP 4)

hw_dummy — Hyperwave dummy function

Descrição

string hw_dummy ( int $link , int $id , int $msgid )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_Document_Size
hw_EditText
Hyperwave Funções


Retrieve text document

hw_dummy
hw_Error
Hyperwave Funções
PHP Manual

hw_EditText

(PHP 4)

hw_EditText — Retrieve text document

Descrição

bool hw_edittext ( int $connection , int $hw_document )

Uploads the text document to the server. The object record of the document may not be modified while the document is edited.

This function will only works for pure text documents. It will not open a special data connection and therefore blocks the control connection during the transfer.

Parâmetros

connection

The connection identifier.

hw_document

The document identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_pipedocument() - Retrieve any document
  • hw_free_document() - Frees hw_document
  • hw_document_bodytag() - Body tag of hw_document
  • hw_document_size() - Size of hw_document
  • hw_output_document() - Prints hw_document
  • hw_gettext() - Retrieve text document

hw_dummy
hw_Error
Hyperwave Funções


Error number

hw_EditText
hw_ErrorMsg
Hyperwave Funções
PHP Manual

hw_Error

(PHP 4)

hw_Error — Error number

Descrição

int hw_error ( int $connection )

Returns the last error number, for the last command.

Parâmetros

connection

The connection identifier.

Valor Retornado

Returns the last error number or 0 if no error occurred.

Veja Também

  • hw_errormsg() - Returns error message

hw_EditText
hw_ErrorMsg
Hyperwave Funções


Returns error message

hw_Error
hw_Free_Document
Hyperwave Funções
PHP Manual

hw_ErrorMsg

(PHP 4)

hw_ErrorMsg — Returns error message

Descrição

string hw_errormsg ( int $connection )

Returns a string containing the last error message related to the last command.

Parâmetros

connection

The connection identifier.

Valor Retornado

Returns a string containing the last error message or 'No Error'. If FALSE is returned, this function failed.

Veja Também

  • hw_error() - Error number

hw_Error
hw_Free_Document
Hyperwave Funções


Frees hw_document

hw_ErrorMsg
hw_GetAnchors
Hyperwave Funções
PHP Manual

hw_Free_Document

(PHP 4)

hw_Free_Document — Frees hw_document

Descrição

bool hw_free_document ( int $hw_document )

Frees the memory occupied by the Hyperwave document.

Parâmetros

hw_document

The document identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

hw_ErrorMsg
hw_GetAnchors
Hyperwave Funções


Object ids of anchors of document

hw_Free_Document
hw_GetAnchorsObj
Hyperwave Funções
PHP Manual

hw_GetAnchors

(PHP 4)

hw_GetAnchors — Object ids of anchors of document

Descrição

array hw_getanchors ( int $connection , int $objectID )

Returns an array of object ids with anchors of the specified document.

Parâmetros

connection

The connection identifier.

objectID

The document object id.

Valor Retornado

Returns an array of object ids.

hw_Free_Document
hw_GetAnchorsObj
Hyperwave Funções


Object records of anchors of document

hw_GetAnchors
hw_GetAndLock
Hyperwave Funções
PHP Manual

hw_GetAnchorsObj

(PHP 4)

hw_GetAnchorsObj — Object records of anchors of document

Descrição

array hw_getanchorsobj ( int $connection , int $objectID )

Returns records with anchors of the document with object ID objectID.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object records.

hw_GetAnchors
hw_GetAndLock
Hyperwave Funções


Return object record and lock object

hw_GetAnchorsObj
hw_GetChildColl
Hyperwave Funções
PHP Manual

hw_GetAndLock

(PHP 4)

hw_GetAndLock — Return object record and lock object

Descrição

string hw_getandlock ( int $connection , int $objectID )

Returns the object record for the object with ID objectID. It will also lock the object, so other users cannot access it until it is unlocked.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns the object record for the object with ID objectID.

Veja Também

  • hw_unlock() - Unlock object
  • hw_getobject() - Object record

hw_GetAnchorsObj
hw_GetChildColl
Hyperwave Funções


Object ids of child collections

hw_GetAndLock
hw_GetChildCollObj
Hyperwave Funções
PHP Manual

hw_GetChildColl

(PHP 4)

hw_GetChildColl — Object ids of child collections

Descrição

array hw_getchildcoll ( int $connection , int $objectID )

Returns object ids. Each object ID belongs to a child collection of the collection with ID objectID. The function will not return child documents.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object ids.

Veja Também

  • hw_children() - Object ids of children
  • hw_getchilddoccoll() - Object ids of child documents of collection

hw_GetAndLock
hw_GetChildCollObj
Hyperwave Funções


Object records of child collections

hw_GetChildColl
hw_GetChildDocColl
Hyperwave Funções
PHP Manual

hw_GetChildCollObj

(PHP 4)

hw_GetChildCollObj — Object records of child collections

Descrição

array hw_getchildcollobj ( int $connection , int $objectID )

Returns object records. Each object records belongs to a child collection of the collection with ID objectID. The function will not return child documents.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object records.

Veja Também

  • hw_childrenobj() - Object records of children
  • hw_getchilddoccollobj() - Object records of child documents of collection

hw_GetChildColl
hw_GetChildDocColl
Hyperwave Funções


Object ids of child documents of collection

hw_GetChildCollObj
hw_GetChildDocCollObj
Hyperwave Funções
PHP Manual

hw_GetChildDocColl

(PHP 4)

hw_GetChildDocColl — Object ids of child documents of collection

Descrição

array hw_getchilddoccoll ( int $connection , int $objectID )

Returns array of object ids for child documents of a collection.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object ids.

Veja Também

  • hw_children() - Object ids of children
  • hw_getchildcoll() - Object ids of child collections

hw_GetChildCollObj
hw_GetChildDocCollObj
Hyperwave Funções


Object records of child documents of collection

hw_GetChildDocColl
hw_GetObject
Hyperwave Funções
PHP Manual

hw_GetChildDocCollObj

(PHP 4)

hw_GetChildDocCollObj — Object records of child documents of collection

Descrição

array hw_getchilddoccollobj ( int $connection , int $objectID )

Returns an array of object records for child documents of a collection.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an array of object records.

Veja Também

  • hw_childrenobj() - Object records of children
  • hw_getchildcollobj() - Object records of child collections

hw_GetChildDocColl
hw_GetObject
Hyperwave Funções


Object record

hw_GetChildDocCollObj
hw_GetObjectByQuery
Hyperwave Funções
PHP Manual

hw_GetObject

(PHP 4)

hw_GetObject — Object record

Descrição

mixed hw_getobject ( int $connection , mixed $objectID [, string $query ] )

Gets an object record. If the second parameter is an array of integer the function will

Parâmetros

connection

The connection identifier.

objectID

The object identifier, or an array of identifiers.

query

The query string has the following syntax:

<expr> ::= "(" <expr> ")" |
           "!" &lt;expr> |          /* NOT */
           <expr> "||" <expr> |  /* OR */
           <expr> "&amp;&amp;" <expr> |  /* AND */
           <attribute> <operator> <value>

<attribute> ::= /* any attribute name (Title, Author, DocumentType ...) */

<operator> ::= "=" |    /* equal */
               "<" |    /* less than (string compare) */
               ">" |    /* greater than (string compare) */
               "~"      /* regular expression matching */
The query allows to further select certain objects from the list of given objects. Unlike the other query functions, this query may use not indexed attributes. How many object records are returned depends on the query and if access to the object is allowed.

Valor Retornado

Returns the object record for the given object ID if the second parameter is an integer.

If the second parameter is an array of integer the function will return an array of object records. In such a case the last parameter is also evaluated which is a query string.

Veja Também

  • hw_getandlock() - Return object record and lock object
  • hw_getobjectbyquery() - Search object

hw_GetChildDocCollObj
hw_GetObjectByQuery
Hyperwave Funções


Search object

hw_GetObject
hw_GetObjectByQueryColl
Hyperwave Funções
PHP Manual

hw_GetObjectByQuery

(PHP 4)

hw_GetObjectByQuery — Search object

Descrição

array hw_getobjectbyquery ( int $connection , string $query , int $max_hits )

Searches for objects on the whole server and returns an array of object ids.

Parâmetros

connection

The connection identifier.

query

The query will only work with indexed attributes.

max_hits

The maximum number of matches is limited to max_hits. If max_hits is set to -1 the maximum number of matches is unlimited.

Valor Retornado

Returns an array of object ids.

Veja Também

  • hw_getobjectbyqueryobj() - Search object

hw_GetObject
hw_GetObjectByQueryColl
Hyperwave Funções


Search object in collection

hw_GetObjectByQuery
hw_GetObjectByQueryCollObj
Hyperwave Funções
PHP Manual

hw_GetObjectByQueryColl

(PHP 4)

hw_GetObjectByQueryColl — Search object in collection

Descrição

array hw_getobjectbyquerycoll ( int $connection , int $objectID , string $query , int $max_hits )

Searches for objects in collection with ID objectID and returns an array of object ids.

Parâmetros

connection

The connection identifier.

objectID

The collection id.

query

The query will only work with indexed attributes.

max_hits

The maximum number of matches is limited to max_hits. If max_hits is set to -1 the maximum number of matches is unlimited.

Valor Retornado

Returns an array of object ids.

Veja Também

  • hw_getobjectbyquerycollobj() - Search object in collection

hw_GetObjectByQuery
hw_GetObjectByQueryCollObj
Hyperwave Funções


Search object in collection

hw_GetObjectByQueryColl
hw_GetObjectByQueryObj
Hyperwave Funções
PHP Manual

hw_GetObjectByQueryCollObj

(PHP 4)

hw_GetObjectByQueryCollObj — Search object in collection

Descrição

array hw_getobjectbyquerycollobj ( int $connection , int $objectID , string $query , int $max_hits )

Searches for objects in collection with ID objectID and returns an array of object records.

Parâmetros

connection

The connection identifier.

objectID

The collection id.

query

The query will only work with indexed attributes.

max_hits

The maximum number of matches is limited to max_hits. If max_hits is set to -1 the maximum number of matches is unlimited.

Valor Retornado

Returns an array of object records.

Veja Também

  • hw_getobjectbyquerycoll() - Search object in collection

hw_GetObjectByQueryColl
hw_GetObjectByQueryObj
Hyperwave Funções


Search object

hw_GetObjectByQueryCollObj
hw_GetParents
Hyperwave Funções
PHP Manual

hw_GetObjectByQueryObj

(PHP 4)

hw_GetObjectByQueryObj — Search object

Descrição

array hw_getobjectbyqueryobj ( int $connection , string $query , int $max_hits )

Searches for objects on the whole server and returns an array of object records.

Parâmetros

connection

The connection identifier.

query

The query will only work with indexed attributes.

max_hits

The maximum number of matches is limited to max_hits. If max_hits is set to -1 the maximum number of matches is unlimited.

Valor Retornado

Returns an array of object records.

Veja Também

  • hw_getobjectbyquery() - Search object

hw_GetObjectByQueryCollObj
hw_GetParents
Hyperwave Funções


Object ids of parents

hw_GetObjectByQueryObj
hw_GetParentsObj
Hyperwave Funções
PHP Manual

hw_GetParents

(PHP 4)

hw_GetParents — Object ids of parents

Descrição

array hw_getparents ( int $connection , int $objectID )

Returns the object identifiers of the parents of an object.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an indexed array of object ids. Each object id belongs to a parent of the object with ID objectID.

hw_GetObjectByQueryObj
hw_GetParentsObj
Hyperwave Funções


Object records of parents

hw_GetParents
hw_getrellink
Hyperwave Funções
PHP Manual

hw_GetParentsObj

(PHP 4)

hw_GetParentsObj — Object records of parents

Descrição

array hw_getparentsobj ( int $connection , int $objectID )

Returns object records and statistical information about the object records. Each object record belongs to a parent of the object with ID objectID.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns an indexed array of object records plus an associated array with statistical information about the object records. The associated array is the last entry of the returned array.

hw_GetParents
hw_getrellink
Hyperwave Funções


Get link from source to dest relative to rootid

hw_GetParentsObj
hw_GetRemote
Hyperwave Funções
PHP Manual

hw_getrellink

(PHP 4)

hw_getrellink — Get link from source to dest relative to rootid

Descrição

string hw_getrellink ( int $link , int $rootid , int $sourceid , int $destid )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_GetParentsObj
hw_GetRemote
Hyperwave Funções


Gets a remote document

hw_getrellink
hw_getremotechildren
Hyperwave Funções
PHP Manual

hw_GetRemote

(PHP 4)

hw_GetRemote — Gets a remote document

Descrição

int hw_getremote ( int $connection , int $objectID )

Gets a remote document.

Remote documents in Hyperwave notation are documents retrieved from an external source. Common remote documents are for example external web pages or queries in a database.

In order to be able to access external sources through remote documents Hyperwave introduces the HGI (Hyperwave Gateway Interface) which is similar to the CGI. Currently, only ftp, http-servers and some databases can be accessed by the HGI.

Calling hw_getremote() returns the document from the external source. If you want to use this function you should be very familiar with HGIs. You should also consider to use PHP instead of Hyperwave to access external sources. Adding database support by a Hyperwave gateway should be more difficult than doing it in PHP.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

Valor Retornado

Returns a remote document.

Veja Também

  • hw_getremotechildren() - Gets children of remote document

hw_getrellink
hw_getremotechildren
Hyperwave Funções


Gets children of remote document

hw_GetRemote
hw_GetSrcByDestObj
Hyperwave Funções
PHP Manual

hw_getremotechildren

(PHP 4)

hw_getremotechildren — Gets children of remote document

Descrição

mixed hw_getremotechildren ( int $connection , string $object_record )

Returns the children of a remote document. Children of a remote document are remote documents itself. This makes sense if a database query has to be narrowed and is explained in Hyperwave Programmers' Guide.

If you want to use this function you should be very familiar with HGIs. You should also consider to use PHP instead of Hyperwave to access external sources. Adding database support by a Hyperwave gateway should be more difficult than doing it in PHP.

Parâmetros

connection

The connection identifier.

object_record

The object record.

Valor Retornado

If the number of children is 1 the function will return the document itself formatted by the Hyperwave Gateway Interface (HGI). If the number of children is greater than 1 it will return an array of object record with each maybe the input value for another call to hw_getremotechildren(). Those object records are virtual and do not exist in the Hyperwave server, therefore they do not have a valid object ID. How exactly such an object record looks like is up to the HGI.

Veja Também

  • hw_getremote() - Gets a remote document

hw_GetRemote
hw_GetSrcByDestObj
Hyperwave Funções


Returns anchors pointing at object

hw_getremotechildren
hw_GetText
Hyperwave Funções
PHP Manual

hw_GetSrcByDestObj

(PHP 4)

hw_GetSrcByDestObj — Returns anchors pointing at object

Descrição

array hw_getsrcbydestobj ( int $connection , int $objectID )

Gets the object records of all anchors pointing to the object with ID objectID.

Parâmetros

connection

The connection identifier.

objectID

The object identifier. The object can either be a document or an anchor of type destination.

Valor Retornado

Returns an array of object records.

Veja Também

  • hw_getanchors() - Object ids of anchors of document

hw_getremotechildren
hw_GetText
Hyperwave Funções


Retrieve text document

hw_GetSrcByDestObj
hw_getusername
Hyperwave Funções
PHP Manual

hw_GetText

(PHP 4)

hw_GetText — Retrieve text document

Descrição

int hw_gettext ( int $connection , int $objectID [, mixed $rootID/prefix ] )

Returns the document with object ID objectID. If the document has anchors which can be inserted, they will be inserted already.

This function will only work for pure text documents. It will not open a special data connection and therefore blocks the control connection during the transfer.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

rootID/prefix

The optional parameter rootID/prefix can be a string or an integer. If it is an integer it determines how links are inserted into the document. The default is 0 and will result in links that are constructed from the name of the link's destination object. This is useful for web applications. If a link points to an object with name 'internet_movie' the HTML link will be <A href="/internet_movie">. The actual location of the source and destination object in the document hierarchy is disregarded. You will have to set up your web browser, to rewrite that URL to for example '/my_script.php/internet_movie'. 'my_script.php' will have to evaluate $PATH_INFO and retrieve the document. All links will have the prefix '/my_script.php/'. If you do not want this you can set the optional parameter rootID/prefix to any prefix which is used instead. Is this case it has to be a string.

If rootID/prefix is an integer and unequal to 0 the link is constructed from all the names starting at the object with the id rootID/prefix separated by a slash relative to the current object.

If for example the above document 'internet_movie' is located at 'a-b-c-internet_movie' with '-' being the separator between hierarchy levels on the Hyperwave server and the source document is located at 'a-b-d-source' the resulting HTML link would be: <A HREF="../c/internet_movie">. This is useful if you want to download the whole server content onto disk and map the document hierarchy onto the file system.

Valor Retornado

Returns the text document.

Veja Também

  • hw_pipedocument() - Retrieve any document
  • hw_free_document() - Frees hw_document
  • hw_document_bodytag() - Body tag of hw_document
  • hw_document_size() - Size of hw_document
  • hw_output_document() - Prints hw_document

hw_GetSrcByDestObj
hw_getusername
Hyperwave Funções


Name of currently logged in user

hw_GetText
hw_Identify
Hyperwave Funções
PHP Manual

hw_getusername

(PHP 4)

hw_getusername — Name of currently logged in user

Descrição

string hw_getusername ( int $connection )

Returns the username of the connection.

Parâmetros

connection

The connection identifier.

Valor Retornado

Returns the username as a string.

hw_GetText
hw_Identify
Hyperwave Funções


Identifies as user

hw_getusername
hw_InCollections
Hyperwave Funções
PHP Manual

hw_Identify

(PHP 4)

hw_Identify — Identifies as user

Descrição

string hw_identify ( int $link , string $username , string $password )

Identifies as user with username and password. Identification is only valid for the current session. I do not think this function will be needed very often. In most cases it will be easier to identify with the opening of the connection.

Parâmetros

link

The connection identifier.

username

The username.

password

The password.

Veja Também

  • hw_connect() - Opens a connection

hw_getusername
hw_InCollections
Hyperwave Funções


Check if object ids in collections

hw_Identify
hw_Info
Hyperwave Funções
PHP Manual

hw_InCollections

(PHP 4)

hw_InCollections — Check if object ids in collections

Descrição

array hw_incollections ( int $connection , array $object_id_array , array $collection_id_array , int $return_collections )

Checks whether a set of objects (documents or collections) specified by the object_id_array is part of the collections listed in collection_id_array.

Parâmetros

connection

The connection identifier.

object_id_array

An array of object ids.

collection_id_array

An array of collection ids.

return_collections

When set to 0, the subset of object ids that is part of the collections (i.e., the documents or collections that are children of one or more collections of collection ids or their subcollections, recursively) is returned as an array.

When set to 1, the set of collections that have one or more objects of this subset as children are returned as an array. This option allows a client to, e.g., highlight the part of the collection hierarchy that contains the matches of a previous query, in a graphical overview.

Valor Retornado

Returns an array of object ids.

hw_Identify
hw_Info
Hyperwave Funções


Info about connection

hw_InCollections
hw_InsColl
Hyperwave Funções
PHP Manual

hw_Info

(PHP 4)

hw_Info — Info about connection

Descrição

string hw_info ( int $connection )

Returns information about the current connection.

Parâmetros

connection

The connection identifier.

Valor Retornado

The returned string has the following format: <Serverstring>, <Host>, <Port>, <Username>, <Port of Client>, <Byte swapping>

hw_InCollections
hw_InsColl
Hyperwave Funções


Insert collection

hw_Info
hw_InsDoc
Hyperwave Funções
PHP Manual

hw_InsColl

(PHP 4)

hw_InsColl — Insert collection

Descrição

int hw_inscoll ( int $connection , int $objectID , array $object_array )

Inserts a new collection with attributes as in object_array into collection with object ID objectID.

Parâmetros

connection

The connection identifier.

objectID

object_array

Valor Retornado

hw_Info
hw_InsDoc
Hyperwave Funções


Insert document

hw_InsColl
hw_insertanchors
Hyperwave Funções
PHP Manual

hw_InsDoc

(PHP 4)

hw_InsDoc — Insert document

Descrição

int hw_insdoc ( resource $connection , int $parentID , string $object_record [, string $text ] )

Inserts a new document with attributes as in object_record into acollection.

If you want to insert a general document of any kind use hw_insertdocument() instead.

Parâmetros

connection

The connection identifier.

parentID

The collection id.

object_record

Object attributes.

text

If provided, this ascii text will be inserted too.

Valor Retornado

Veja Também

  • hw_insertdocument() - Upload any document
  • hw_inscoll() - Insert collection

hw_InsColl
hw_insertanchors
Hyperwave Funções


Inserts only anchors into text

hw_InsDoc
hw_InsertDocument
Hyperwave Funções
PHP Manual

hw_insertanchors

(PHP 4 >= 4.0.4)

hw_insertanchors — Inserts only anchors into text

Descrição

bool hw_insertanchors ( int $hwdoc , array $anchorecs , array $dest [, array $urlprefixes ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_InsDoc
hw_InsertDocument
Hyperwave Funções


Upload any document

hw_insertanchors
hw_InsertObject
Hyperwave Funções
PHP Manual

hw_InsertDocument

(PHP 4)

hw_InsertDocument — Upload any document

Descrição

int hw_insertdocument ( int $connection , int $parent_id , int $hw_document )

Uploads a document into the given collection.

The document has to be created before with hw_new_document(). Make sure that the object record of the new document contains at least the attributes: Type, DocumentType, Title and Name. Possibly you also want to set the MimeType.

Parâmetros

connection

The connection identifier.

parent_id

The collection identifier.

hw_document

The document identifier.

Valor Retornado

The functions returns the object id of the new document or FALSE.

Veja Também

  • hw_pipedocument() - Retrieve any document

hw_insertanchors
hw_InsertObject
Hyperwave Funções


Inserts an object record

hw_InsertDocument
hw_mapid
Hyperwave Funções
PHP Manual

hw_InsertObject

(PHP 4)

hw_InsertObject — Inserts an object record

Descrição

int hw_insertobject ( int $connection , string $object_rec , string $parameter )

Inserts an object into the server.

Note: If you want to insert an Anchor, the attribute Position has always been set either to a start/end value or to 'invisible'. Invisible positions are needed if the annotation has no corresponding link in the annotation text.

Parâmetros

connection

The connection identifier.

object_rec

The object can be any valid hyperwave object.

parameter

See the HG-CSP documentation for a detailed information on how the parameters have to be.

Veja Também

  • hw_pipedocument() - Retrieve any document
  • hw_insertdocument() - Upload any document
  • hw_insdoc() - Insert document
  • hw_inscoll() - Insert collection

hw_InsertDocument
hw_mapid
Hyperwave Funções


Maps global id on virtual local id

hw_InsertObject
hw_Modifyobject
Hyperwave Funções
PHP Manual

hw_mapid

(PHP 4)

hw_mapid — Maps global id on virtual local id

Descrição

int hw_mapid ( int $connection , int $server_id , int $object_id )

Maps a global object id on any hyperwave server, even those you did not connect to with hw_connect(), onto a virtual object id.

This virtual object id can then be used as any other object id, e.g. to obtain the object record with hw_getobject().

Note: In order to use this function you will have to set the F_DISTRIBUTED flag, which can currently only be set at compile time in hg_comm.c. It is not set by default. Read the comment at the beginning of hg_comm.c

Parâmetros

connection

The connection identifier.

server_id

The server id is the first part of the global object id (GOid) of the object which is actually the IP number as an integer.

object_id

The object identifier.

Valor Retornado

Returns the virtual object id.

hw_InsertObject
hw_Modifyobject
Hyperwave Funções


Modifies object record

hw_mapid
hw_mv
Hyperwave Funções
PHP Manual

hw_Modifyobject

(PHP 4)

hw_Modifyobject — Modifies object record

Descrição

bool hw_modifyobject ( int $connection , int $object_to_change , array $remove , array $add [, int $mode ] )

This command allows to remove, add, or modify individual attributes of an object record. The object is specified by the Object ID object_to_change. In order to modify an attribute one will have to remove the old one and add a new one. hw_modifyobject() will always remove the attributes before it adds attributes unless the value of the attribute to remove is not a string or array.

The keys of both arrays are the attributes name. The value of each array element can either be an array, a string or anything else. If it is an array each attribute value is constructed by the key of each element plus a colon and the value of each element. If it is a string it is taken as the attribute value. An empty string will result in a complete removal of that attribute. If the value is neither a string nor an array but something else, e.g. an integer, no operation at all will be performed on the attribute. This is necessary if you want to add a completely new attribute not just a new value for an existing attribute. If the remove array contained an empty string for that attribute, the attribute would be tried to be removed which would fail since it doesn't exist. The following addition of a new value for that attribute would also fail. Setting the value for that attribute to e.g. 0 would not even try to remove it and the addition will work.

If you would like to change the attribute 'Name' with the current value 'books' into 'articles' you will have to create two arrays and call hw_modifyobject().

Exemplo #1 modifying an attribute

<?php
       // $connect is an existing connection to the Hyperwave server
       // $objid is the ID of the object to modify
       $remarr = array("Name" => "books");
       $addarr = array("Name" => "articles");
       $hw_modifyobject($connect, $objid, $remarr, $addarr);
?>
In order to delete/add a name=value pair from/to the object record just pass the remove/add array and set the last/third parameter to an empty array. If the attribute is the first one with that name to add, set attribute value in the remove array to an integer.

Exemplo #2 adding a completely new attribute

<?php
       // $connect is an existing connection to the Hyperwave server
       // $objid is the ID of the object to modify
       $remarr = array("Name" => 0);
       $addarr = array("Name" => "articles");
       $hw_modifyobject($connect, $objid, $remarr, $addarr);
?>

Nota: Multilingual attributes, e.g. 'Title', can be modified in two ways. Either by providing the attributes value in its native form 'language':'title' or by providing an array with elements for each language as described above. The above example would than be:

Exemplo #3 modifying Title attribute

<?php
       $remarr = array("Title" => "en:Books");
       $addarr = array("Title" => "en:Articles");
       $hw_modifyobject($connect, $objid, $remarr, $addarr);
?>
or

Exemplo #4 modifying Title attribute

<?php
       $remarr = array("Title" => array("en" => "Books"));
       $addarr = array("Title" => array("en" => "Articles", "ge"=>"Artikel"));
       $hw_modifyobject($connect, $objid, $remarr, $addarr);
?>
This removes the English title 'Books' and adds the English title 'Articles' and the German title 'Artikel'.

Exemplo #5 removing attribute

<?php
       $remarr = array("Title" => "");
       $addarr = array("Title" => "en:Articles");
       $hw_modifyobject($connect, $objid, $remarr, $addarr);
?>

Nota: This will remove all attributes with the name 'Title' and adds a new 'Title' attribute. This comes in handy if you want to remove attributes recursively.

Nota: If you need to delete all attributes with a certain name you will have to pass an empty string as the attribute value.

Nota: Only the attributes 'Title', 'Description' and 'Keyword' will properly handle the language prefix. If those attributes don't carry a language prefix, the prefix 'xx' will be assigned.

Nota: The 'Name' attribute is somewhat special. In some cases it cannot be complete removed. You will get an error message 'Change of base attribute' (not clear when this happens). Therefore you will always have to add a new Name first and than remove the old one.

Nota: You may not surround this function by calls to hw_getandlock() and hw_unlock(). hw_modifyobject() does this internally.

Parâmetros

connection

The connection identifier.

object_to_change

The object to be changed.

remove

An array of attributes to remove.

add

An array of attributes to add.

mode

The last parameter determines if the modification is performed recursively. 1 means recursive modification. If some of the objects cannot be modified they will be skipped without notice. hw_error() may not indicate an error though some of the objects could not be modified.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

hw_mapid
hw_mv
Hyperwave Funções


Moves objects

hw_Modifyobject
hw_New_Document
Hyperwave Funções
PHP Manual

hw_mv

(PHP 4)

hw_mv — Moves objects

Descrição

int hw_mv ( int $connection , array $object_id_array , int $source_id , int $destination_id )

Moves the specified objects from a collection to another.

Parâmetros

connection

The connection identifier.

object_id_array

An array of object ids.

source_id

The source collection id.

destination_id

The target collection id. If set to 0 the objects will be unlinked from the source collection. If this is the last instance of that object it will be deleted. If you want to delete all instances at once, use hw_deleteobject().

Valor Retornado

Returns the number of moved objects.

Veja Também

  • hw_cp() - Copies objects
  • hw_deleteobject() - Deletes object

hw_Modifyobject
hw_New_Document
Hyperwave Funções


Create new document

hw_mv
hw_objrec2array
Hyperwave Funções
PHP Manual

hw_New_Document

(PHP 4)

hw_New_Document — Create new document

Descrição

int hw_new_document ( string $object_record , string $document_data , int $document_size )

Returns a new Hyperwave document with the given document data and object record.

This function does not insert the document into the Hyperwave server.

Parâmetros

object_record

The object record.

document_data

The document data.

document_size

The document size. Must be the length of document_data.

Valor Retornado

Returns the new Hyperwave document.

Veja Também

  • hw_free_document() - Frees hw_document
  • hw_document_size() - Size of hw_document
  • hw_document_bodytag() - Body tag of hw_document
  • hw_output_document() - Prints hw_document
  • hw_insertdocument() - Upload any document

hw_mv
hw_objrec2array
Hyperwave Funções


Convert attributes from object record to object array

hw_New_Document
hw_Output_Document
Hyperwave Funções
PHP Manual

hw_objrec2array

(PHP 4)

hw_objrec2array — Convert attributes from object record to object array

Descrição

array hw_objrec2array ( string $object_record [, array $format ] )

Converts an object_record into an object array.

Parâmetros

object_record

The object record.

format

An associative array with the attribute name as its key and the value being one of HW_ATTR_LANG or HW_ATTR_NONE.

Valor Retornado

Returns an array. The keys of the resulting array are the attributes names. Multi-value attributes like 'Title' in different languages form its own array. The keys of this array are the left part to the colon of the attribute value. This left part must be two characters long.

Other multi-value attributes without a prefix form an indexed array. If the optional parameter is missing the attributes 'Title', 'Description' and 'Keyword' are treated as language attributes and the attributes 'Group', 'Parent' and 'HtmlAttr' as non-prefixed multi-value attributes. By passing an array holding the type for each attribute you can alter this behaviour.

Veja Também

  • hw_array2objrec() - Convert attributes from object array to object record

hw_New_Document
hw_Output_Document
Hyperwave Funções


Prints hw_document

hw_objrec2array
hw_pConnect
Hyperwave Funções
PHP Manual

hw_Output_Document

(PHP 4)

hw_Output_Document — Prints hw_document

Descrição

bool hw_output_document ( int $hw_document )

Prints the document without the BODY tag.

For backward compatibility, hw_outputdocument() is also accepted. This is deprecated, however.

Parâmetros

hw_document

The document identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

hw_objrec2array
hw_pConnect
Hyperwave Funções


Make a persistent database connection

hw_Output_Document
hw_PipeDocument
Hyperwave Funções
PHP Manual

hw_pConnect

(PHP 4)

hw_pConnect — Make a persistent database connection

Descrição

int hw_pconnect ( string $host , int $port [, string $username ], string $password )

Opens a persistent connection to a Hyperwave server. You can have multiple persistent connections open at once.

Parâmetros

host

The server host name.

port

The server port number.

username

The Hyperwave user name. If omitted, no identification with the server will be done. It is similar to identify as user anonymous.

password

The password for username. Keep in mind, that the password is not encrypted.

Valor Retornado

Returns a connection index on success, or FALSE if the connection could not be made.

Veja Também

  • hw_connect() - Opens a connection

hw_Output_Document
hw_PipeDocument
Hyperwave Funções


Retrieve any document

hw_pConnect
hw_Root
Hyperwave Funções
PHP Manual

hw_PipeDocument

(PHP 4)

hw_PipeDocument — Retrieve any document

Descrição

int hw_pipedocument ( int $connection , int $objectID [, array $url_prefixes ] )

Gets the Hyperwave document with the given object ID. If the document has anchors which can be inserted, they will have been inserted already.

The document will be transferred via a special data connection which does not block the control connection.

Parâmetros

connection

The connection identifier.

objectID

The object identifier.

url_prefixes

Valor Retornado

Returns the Hyperwave document.

Veja Também

  • hw_gettext() - Retrieve text document
  • hw_free_document() - Frees hw_document
  • hw_document_size() - Size of hw_document
  • hw_document_bodytag() - Body tag of hw_document
  • hw_output_document() - Prints hw_document

hw_pConnect
hw_Root
Hyperwave Funções


Root object id

hw_PipeDocument
hw_setlinkroot
Hyperwave Funções
PHP Manual

hw_Root

(PHP 4)

hw_Root — Root object id

Descrição

int hw_root ( void )

Returns the object ID of the hyperroot collection. Currently this is always 0. The child collection of the hyperroot is the root collection of the connected server.

Valor Retornado

Returns 0.

hw_PipeDocument
hw_setlinkroot
Hyperwave Funções


Set the id to which links are calculated

hw_Root
hw_stat
Hyperwave Funções
PHP Manual

hw_setlinkroot

(PHP 4)

hw_setlinkroot — Set the id to which links are calculated

Descrição

int hw_setlinkroot ( int $link , int $rootid )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_Root
hw_stat
Hyperwave Funções


Returns status string

hw_setlinkroot
hw_Unlock
Hyperwave Funções
PHP Manual

hw_stat

(PHP 4)

hw_stat — Returns status string

Descrição

string hw_stat ( int $link )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

hw_setlinkroot
hw_Unlock
Hyperwave Funções


Unlock object

hw_stat
hw_Who
Hyperwave Funções
PHP Manual

hw_Unlock

(PHP 4)

hw_Unlock — Unlock object

Descrição

bool hw_unlock ( int $connection , int $objectID )

Unlocks a document, so other users regain access.

Parâmetros

connection

The connection identifier.

objectID

The document object identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_getandlock() - Return object record and lock object

hw_stat
hw_Who
Hyperwave Funções


List of currently logged in users

hw_Unlock
Hyperwave API
Hyperwave Funções
PHP Manual

hw_Who

(PHP 4)

hw_Who — List of currently logged in users

Descrição

array hw_who ( int $connection )

Gets the list of currently logged in users.

Parâmetros

connection

The connection identifier.

Valor Retornado

Returns an array of users currently logged into the Hyperwave server. Each entry in this array is an array itself containing the elements id, name, system, onSinceDate, onSinceTime, TotalTime and self. 'self' is 1 if this entry belongs to the user who initiated the request.

hw_Unlock
Hyperwave API
Hyperwave Funções


Hyperwave API

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Hyperwave API Funções
    • hw_api_attribute->key — Returns key of the attribute
    • hw_api_attribute->langdepvalue — Returns value for a given language
    • hw_api_attribute->value — Returns value of the attribute
    • hw_api_attribute->values — Returns all values of the attribute
    • hw_api_attribute — Creates instance of class hw_api_attribute
    • hw_api->checkin — Checks in an object
    • hw_api->checkout — Checks out an object
    • hw_api->children — Returns children of an object
    • hw_api_content->mimetype — Returns mimetype
    • hw_api_content->read — Read content
    • hw_api->content — Returns content of an object
    • hw_api->copy — Copies physically
    • hw_api->dbstat — Returns statistics about database server
    • hw_api->dcstat — Returns statistics about document cache server
    • hw_api->dstanchors — Returns a list of all destination anchors
    • hw_api->dstofsrcanchor — Returns destination of a source anchor
    • hw_api_error->count — Returns number of reasons
    • hw_api_error->reason — Returns reason of error
    • hw_api->find — Search for objects
    • hw_api->ftstat — Returns statistics about fulltext server
    • hwapi_hgcsp — Returns object of class hw_api
    • hw_api->hwstat — Returns statistics about Hyperwave server
    • hw_api->identify — Log into Hyperwave Server
    • hw_api->info — Returns information about server configuration
    • hw_api->insert — Inserts a new object
    • hw_api->insertanchor — Inserts a new object of type anchor
    • hw_api->insertcollection — Inserts a new object of type collection
    • hw_api->insertdocument — Inserts a new object of type document
    • hw_api->link — Creates a link to an object
    • hw_api->lock — Locks an object
    • hw_api->move — Moves object between collections
    • hw_api_content — Create new instance of class hw_api_content
    • hw_api_object->assign — Clones object
    • hw_api_object->attreditable — Checks whether an attribute is editable
    • hw_api_object->count — Returns number of attributes
    • hw_api_object->insert — Inserts new attribute
    • hw_api_object — Creates a new instance of class hw_api_object
    • hw_api_object->remove — Removes attribute
    • hw_api_object->title — Returns the title attribute
    • hw_api_object->value — Returns value of attribute
    • hw_api->object — Retrieve attribute information
    • hw_api->objectbyanchor — Returns the object an anchor belongs to
    • hw_api->parents — Returns parents of an object
    • hw_api_reason->description — Returns description of reason
    • hw_api_reason->type — Returns type of reason
    • hw_api->remove — Delete an object
    • hw_api->replace — Replaces an object
    • hw_api->setcommittedversion — Commits version other than last version
    • hw_api->srcanchors — Returns a list of all source anchors
    • hw_api->srcsofdst — Returns source of a destination object
    • hw_api->unlock — Unlocks a locked object
    • hw_api->user — Returns the own user object
    • hw_api->userlist — Returns a list of all logged in users
hw_Who
Introdução
Outros Serviços


Introdução

Hyperwave has been developed at » IICM in Graz. It started with the name Hyper-G and changed to Hyperwave when it was commercialised (in 1996).

Hyperwave is not free software. The current version, 5.5, is available at » http://www.hyperwave.com/. A time limited version can be ordered for free (30 days).

See also the Hyperwave module.

Hyperwave is an information system similar to a database (HIS, Hyperwave Information Server). Its focus is the storage and management of documents. A document can be any possible piece of data that may as well be stored in file. Each document is accompanied by its object record. The object record contains meta data for the document. The meta data is a list of attributes which can be extended by the user. Certain attributes are always set by the Hyperwave server, other may be modified by the user.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.2.0.

Hyperwave API
Instalação/Configuração
Hyperwave API


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Hyperwave API


Dependências

Since 2001 there is a Hyperwave SDK available. It supports Java, JavaScript and C++. This PHP Extension is based on the C++ interface. In order to activate the hwapi support in PHP you will have to install the Hyperwave SDK first.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/hwapi.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.2.0

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Hyperwave API configuration options
Name | Default | Changeable | Changelog
hwapi.allow_persistent | "0" | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Hyperwave API Funções
Hyperwave API


Hyperwave API Funções

Integration with Apache

The integration with Apache and possible other servers is already described in the Hyperwave module which has been the first extension to connect a Hyperwave Server.

Classes

The API provided by the HW_API extension is fully object oriented. It is very similar to the C++ interface of the Hyperwave SDK. It consist of the following classes.

  • HW_API
  • HW_API_Object
  • HW_API_Attribute
  • HW_API_Error
  • HW_API_Content
  • HW_API_Reason
Some basic classes like HW_API_String, HW_API_String_Array, etc., which exist in the Hyperwave SDK have not been implemented since PHP has powerful replacements for them.

Each class has certain method, whose names are identical to its counterparts in the Hyperwave SDK. Passing arguments to this function differs from all the other PHP extensions but is close to the C++ API of the HW SDK. Instead of passing several parameters they are all put into an associated array and passed as one parameter. The names of the keys are identical to those documented in the HW SDK. The common parameters are listed below. If other parameters are required they will be documented if needed.

  • objectIdentifier The name or id of an object, e.g. "rootcollection", "0x873A8768 0x00000002".
  • parentIdentifier The name or id of an object which is considered to be a parent.
  • object An instance of class HW_API_Object.
  • parameters An instance of class HW_API_Object.
  • version The version of an object.
  • mode An integer value determine the way an operation is executed.
  • attributeSelector Any array of strings, each containing a name of an attribute. This is used if you retrieve the object record and want to include certain attributes.
  • objectQuery A query to select certain object out of a list of objects. This is used to reduce the number of objects which was delivered by a function like hw_api->children() or hw_api->find().

Nota:

Methods returning boolean can return TRUE, FALSE or HW_API_Error object.

Índice

  • hw_api_attribute->key — Returns key of the attribute
  • hw_api_attribute->langdepvalue — Returns value for a given language
  • hw_api_attribute->value — Returns value of the attribute
  • hw_api_attribute->values — Returns all values of the attribute
  • hw_api_attribute — Creates instance of class hw_api_attribute
  • hw_api->checkin — Checks in an object
  • hw_api->checkout — Checks out an object
  • hw_api->children — Returns children of an object
  • hw_api_content->mimetype — Returns mimetype
  • hw_api_content->read — Read content
  • hw_api->content — Returns content of an object
  • hw_api->copy — Copies physically
  • hw_api->dbstat — Returns statistics about database server
  • hw_api->dcstat — Returns statistics about document cache server
  • hw_api->dstanchors — Returns a list of all destination anchors
  • hw_api->dstofsrcanchor — Returns destination of a source anchor
  • hw_api_error->count — Returns number of reasons
  • hw_api_error->reason — Returns reason of error
  • hw_api->find — Search for objects
  • hw_api->ftstat — Returns statistics about fulltext server
  • hwapi_hgcsp — Returns object of class hw_api
  • hw_api->hwstat — Returns statistics about Hyperwave server
  • hw_api->identify — Log into Hyperwave Server
  • hw_api->info — Returns information about server configuration
  • hw_api->insert — Inserts a new object
  • hw_api->insertanchor — Inserts a new object of type anchor
  • hw_api->insertcollection — Inserts a new object of type collection
  • hw_api->insertdocument — Inserts a new object of type document
  • hw_api->link — Creates a link to an object
  • hw_api->lock — Locks an object
  • hw_api->move — Moves object between collections
  • hw_api_content — Create new instance of class hw_api_content
  • hw_api_object->assign — Clones object
  • hw_api_object->attreditable — Checks whether an attribute is editable
  • hw_api_object->count — Returns number of attributes
  • hw_api_object->insert — Inserts new attribute
  • hw_api_object — Creates a new instance of class hw_api_object
  • hw_api_object->remove — Removes attribute
  • hw_api_object->title — Returns the title attribute
  • hw_api_object->value — Returns value of attribute
  • hw_api->object — Retrieve attribute information
  • hw_api->objectbyanchor — Returns the object an anchor belongs to
  • hw_api->parents — Returns parents of an object
  • hw_api_reason->description — Returns description of reason
  • hw_api_reason->type — Returns type of reason
  • hw_api->remove — Delete an object
  • hw_api->replace — Replaces an object
  • hw_api->setcommittedversion — Commits version other than last version
  • hw_api->srcanchors — Returns a list of all source anchors
  • hw_api->srcsofdst — Returns source of a destination object
  • hw_api->unlock — Unlocks a locked object
  • hw_api->user — Returns the own user object
  • hw_api->userlist — Returns a list of all logged in users
Constantes pré-definidas
hw_api_attribute->key
Hyperwave API


Returns key of the attribute

Hyperwave API Funções
hw_api_attribute->langdepvalue
Hyperwave API Funções
PHP Manual

hw_api_attribute->key

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_attribute->key — Returns key of the attribute

Descrição

string hw_api_attribute::key ( void )

Returns the name of the attribute.

Valor Retornado

Returns the name of the attribute as a string.

Veja Também

  • hw_api_attribute->value

Hyperwave API Funções
hw_api_attribute->langdepvalue
Hyperwave API Funções


Returns value for a given language

hw_api_attribute->key
hw_api_attribute->value
Hyperwave API Funções
PHP Manual

hw_api_attribute->langdepvalue

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_attribute->langdepvalue — Returns value for a given language

Descrição

string hw_api_attribute::langdepvalue ( string $language )

Returns the value in the given language of the attribute.

Parâmetros

language

Valor Retornado

Returns the value of the attribute as a string.

Veja Também

  • hw_api_attribute->value

hw_api_attribute->key
hw_api_attribute->value
Hyperwave API Funções


Returns value of the attribute

hw_api_attribute->langdepvalue
hw_api_attribute->values
Hyperwave API Funções
PHP Manual

hw_api_attribute->value

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_attribute->value — Returns value of the attribute

Descrição

string hw_api_attribute::value ( void )

Gets the value of the attribute.

Valor Retornado

Returns the value, as a string.

Veja Também

  • hw_api_attribute->key
  • hw_api_attribute->values

hw_api_attribute->langdepvalue
hw_api_attribute->values
Hyperwave API Funções


Returns all values of the attribute

hw_api_attribute->value
hw_api_attribute
Hyperwave API Funções
PHP Manual

hw_api_attribute->values

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_attribute->values — Returns all values of the attribute

Descrição

array hw_api_attribute::values ( void )

Gets all values of the attribute.

Valor Retornado

Returns an array of attribute values.

Veja Também

  • hw_api_attribute->value

hw_api_attribute->value
hw_api_attribute
Hyperwave API Funções


Creates instance of class hw_api_attribute

hw_api_attribute->values
hw_api->checkin
Hyperwave API Funções
PHP Manual

hw_api_attribute

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_attribute — Creates instance of class hw_api_attribute

Descrição

HW_API_Attribute hw_api_attribute ([ string $name [, string $value ]] )

Creates a new instance of hw_api_attribute with the given name and value.

Parâmetros

name

The attribute name.

value

The attribute value.

Valor Retornado

Returns an instance of hw_api_attribute.

hw_api_attribute->values
hw_api->checkin
Hyperwave API Funções


Checks in an object

hw_api_attribute
hw_api->checkout
Hyperwave API Funções
PHP Manual

hw_api->checkin

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->checkin — Checks in an object

Descrição

bool hw_api::checkin ( array $parameter )

This function checks in an object or a whole hierarchy of objects. The parameters array contains the required element 'objectIdentifier' and the optional element 'version', 'comment', 'mode' and 'objectQuery'. 'version' sets the version of the object. It consists of the major and minor version separated by a period. If the version is not set, the minor version is incremented. 'mode' can be one of the following values:

HW_API_CHECKIN_NORMAL
Checks in and commits the object. The object must be a document.
HW_API_CHECKIN_RECURSIVE
If the object to check in is a collection, all children will be checked in recursively if they are documents. Trying to check in a collection would result in an error.
HW_API_CHECKIN_FORCE_VERSION_CONTROL
Checks in an object even if it is not under version control.
HW_API_CHECKIN_REVERT_IF_NOT_CHANGED
Check if the new version is different from the last version. Unless this is the case the object will be checked in.
HW_API_CHECKIN_KEEP_TIME_MODIFIED
Keeps the time modified from the most recent object.
HW_API_CHECKIN_NO_AUTO_COMMIT
The object is not automatically committed on check-in.

Parâmetros

parameter

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api->checkout

hw_api_attribute
hw_api->checkout
Hyperwave API Funções


Checks out an object

hw_api->checkin
hw_api->children
Hyperwave API Funções
PHP Manual

hw_api->checkout

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->checkout — Checks out an object

Descrição

bool hw_api::checkout ( array $parameter )

This function checks out an object or a whole hierarchy of objects.

Parâmetros

parameter

The parameters array contains the required element 'objectIdentifier' and the optional element 'version', 'mode' and 'objectQuery'. 'mode' can be one of the following values:

HW_API_CHECKIN_NORMAL
Checks out an object. The object must be a document.
HW_API_CHECKIN_RECURSIVE
If the object to check out is a collection, all children will be checked out recursively if they are documents. Trying to check out a collection would result in an error.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api->checkin

hw_api->checkin
hw_api->children
Hyperwave API Funções


Returns children of an object

hw_api->checkout
hw_api_content->mimetype
Hyperwave API Funções
PHP Manual

hw_api->children

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->children — Returns children of an object

Descrição

array hw_api::children ( array $parameter )

Retrieves the children of a collection or the attributes of a document. The children can be further filtered by specifying an object query.

Parâmetros

parameter

The parameter array contains the required elements 'objectIdentifier' and the optional elements 'attributeSelector' and 'objectQuery'.

Valor Retornado

The return value is an array of objects of type HW_API_Object or HW_API_Error.

Veja Também

  • hw_api->parents

hw_api->checkout
hw_api_content->mimetype
Hyperwave API Funções


Returns mimetype

hw_api->children
hw_api_content->read
Hyperwave API Funções
PHP Manual

hw_api_content->mimetype

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_content->mimetype — Returns mimetype

Descrição

string hw_api_content::mimetype ( void )

Returns the mimetype of the content.

Valor Retornado

Returns the mimetype as a string.

hw_api->children
hw_api_content->read
Hyperwave API Funções


Read content

hw_api_content->mimetype
hw_api->content
Hyperwave API Funções
PHP Manual

hw_api_content->read

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_content->read — Read content

Descrição

string hw_api_content::read ( string $buffer , int $len )

Reads len bytes from the content into the given buffer.

Parâmetros

buffer

len

Number of bytes to read.

Valor Retornado

hw_api_content->mimetype
hw_api->content
Hyperwave API Funções


Returns content of an object

hw_api_content->read
hw_api->copy
Hyperwave API Funções
PHP Manual

hw_api->content

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->content — Returns content of an object

Descrição

HW_API_Content hw_api::content ( array $parameter )

This function returns the content of a document as an object of type hw_api_content.

Parâmetros

parameter

The parameter array contains the required elements 'objectidentifier' and the optional element 'mode'. The mode can be one of the constants HW_API_CONTENT_ALLLINKS, HW_API_CONTENT_REACHABLELINKS or HW_API_CONTENT_PLAIN.

HW_API_CONTENT_ALLLINKS means to insert all anchors even if the destination is not reachable.

HW_API_CONTENT_REACHABLELINKS tells this method to insert only reachable links and HW_API_CONTENT_PLAIN will lead to document without any links.

Valor Retornado

Returns an instance of hw_api_content.

hw_api_content->read
hw_api->copy
Hyperwave API Funções


Copies physically

hw_api->content
hw_api->dbstat
Hyperwave API Funções
PHP Manual

hw_api->copy

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->copy — Copies physically

Descrição

hw_api_content hw_api::copy ( array $parameter )

This function will make a physical copy including the content if it exists and returns the new object or an error object.

Parâmetros

parameter

The parameter array contains the required elements 'objectIdentifier' and 'destinationParentIdentifier'. The optional parameter is 'attributeSelector'`

Valor Retornado

Returns the copied object.

Veja Também

  • hw_api->move
  • hw_api->link

hw_api->content
hw_api->dbstat
Hyperwave API Funções


Returns statistics about database server

hw_api->copy
hw_api->dcstat
Hyperwave API Funções
PHP Manual

hw_api->dbstat

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->dbstat — Returns statistics about database server

Descrição

hw_api_object hw_api::dbstat ( array $parameter )

Returns statistics about database server.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->dcstat
  • hw_api->hwstat
  • hw_api->ftstat

hw_api->copy
hw_api->dcstat
Hyperwave API Funções


Returns statistics about document cache server

hw_api->dbstat
hw_api->dstanchors
Hyperwave API Funções
PHP Manual

hw_api->dcstat

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->dcstat — Returns statistics about document cache server

Descrição

hw_api_object hw_api::dcstat ( array $parameter )

Returns statistics about document cache server.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->dbstat
  • hw_api->hwstat
  • hw_api->ftstat

hw_api->dbstat
hw_api->dstanchors
Hyperwave API Funções


Returns a list of all destination anchors

hw_api->dcstat
hw_api->dstofsrcanchor
Hyperwave API Funções
PHP Manual

hw_api->dstanchors

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->dstanchors — Returns a list of all destination anchors

Descrição

array hw_api::dstanchors ( array $parameter )

Retrieves all destination anchors of an object.

Parâmetros

parameter

The parameter array contains the required element 'objectIdentifier' and the optional elements 'attributeSelector' and 'objectQuery'.

Valor Retornado

Veja Também

  • hw_api->srcanchors

hw_api->dcstat
hw_api->dstofsrcanchor
Hyperwave API Funções


Returns destination of a source anchor

hw_api->dstanchors
hw_api_error->count
Hyperwave API Funções
PHP Manual

hw_api->dstofsrcanchor

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->dstofsrcanchor — Returns destination of a source anchor

Descrição

hw_api_object hw_api::dstofsrcanchor ( array $parameter )

Retrieves the destination object pointed by the specified source anchors. The destination object can either be a destination anchor or a whole document.

Parâmetros

parameter

The parameters array contains the required element 'objectIdentifier' and the optional element 'attributeSelector'.

Valor Retornado

Veja Também

  • hw_api->srcanchors
  • hw_api->dstanchors
  • hw_api->objectbyanchor

hw_api->dstanchors
hw_api_error->count
Hyperwave API Funções


Returns number of reasons

hw_api->dstofsrcanchor
hw_api_error->reason
Hyperwave API Funções
PHP Manual

hw_api_error->count

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_error->count — Returns number of reasons

Descrição

int hw_api_error::count ( void )

Returns the number of error reasons.

Valor Retornado

Returns the number of errors, as an integer.

Veja Também

  • hw_api_error->reason

hw_api->dstofsrcanchor
hw_api_error->reason
Hyperwave API Funções


Returns reason of error

hw_api_error->count
hw_api->find
Hyperwave API Funções
PHP Manual

hw_api_error->reason

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_error->reason — Returns reason of error

Descrição

HW_API_Reason hw_api_error::reason ( void )

Returns the first error reason.

Valor Retornado

Veja Também

  • hw_api_error->count

hw_api_error->count
hw_api->find
Hyperwave API Funções


Search for objects

hw_api_error->reason
hw_api->ftstat
Hyperwave API Funções
PHP Manual

hw_api->find

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->find — Search for objects

Descrição

array hw_api::find ( array $parameter )

This functions searches for objects either by executing a key or/and full text query. The found objects can further be filtered by an optional object query. They are sorted by their importance. The second search operation is relatively slow and its result can be limited to a certain number of hits. This allows to perform an incremental search, each returning just a subset of all found documents, starting at a given index.

Parâmetros

parameter

The parameter array contains the 'keyquery' or/and 'fulltextquery' depending on who you would like to search. Optional parameters are 'objectquery', 'scope', 'languages' and 'attributeselector'. In case of an incremental search the optional parameters 'startIndex', 'numberOfObjectsToGet' and 'exactMatchUnit' can be passed.

Valor Retornado

hw_api_error->reason
hw_api->ftstat
Hyperwave API Funções


Returns statistics about fulltext server

hw_api->find
hwapi_hgcsp
Hyperwave API Funções
PHP Manual

hw_api->ftstat

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->ftstat — Returns statistics about fulltext server

Descrição

hw_api_object hw_api::ftstat ( array $parameter )

Returns statistics about fulltext server.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->dcstat
  • hw_api->dbstat
  • hw_api->hwstat

hw_api->find
hwapi_hgcsp
Hyperwave API Funções


Returns object of class hw_api

hw_api->ftstat
hw_api->hwstat
Hyperwave API Funções
PHP Manual

hwapi_hgcsp

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hwapi_hgcsp — Returns object of class hw_api

Descrição

HW_API hwapi_hgcsp ( string $hostname [, int $port ] )

Opens a connection to the Hyperwave server on host hostname. The protocol used is HGCSP.

Parâmetros

hostname

The host name.

port

If you do not pass a port number, 418 is used.

Valor Retornado

Returns an instance of HW_API.

hw_api->ftstat
hw_api->hwstat
Hyperwave API Funções


Returns statistics about Hyperwave server

hwapi_hgcsp
hw_api->identify
Hyperwave API Funções
PHP Manual

hw_api->hwstat

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->hwstat — Returns statistics about Hyperwave server

Descrição

hw_api_object hw_api::hwstat ( array $parameter )

Returns statistics about Hyperwave server.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->dcstat
  • hw_api->dbstat
  • hw_api->ftstat

hwapi_hgcsp
hw_api->identify
Hyperwave API Funções


Log into Hyperwave Server

hw_api->hwstat
hw_api->info
Hyperwave API Funções
PHP Manual

hw_api->identify

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->identify — Log into Hyperwave Server

Descrição

bool hw_api::identify ( array $parameter )

Logs into the Hyperwave Server.

Parâmetros

parameter

The parameter array must contain the elements 'username' and 'password'.

Valor Retornado

Returns an object of typeHW_API_Error if identification failed or TRUE if it was successful.

hw_api->hwstat
hw_api->info
Hyperwave API Funções


Returns information about server configuration

hw_api->identify
hw_api->insert
Hyperwave API Funções
PHP Manual

hw_api->info

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->info — Returns information about server configuration

Descrição

array hw_api::info ( array $parameter )

Returns information about server configuration.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->dcstat
  • hw_api->dbstat
  • hw_api->ftstat
  • hw_api->hwstat

hw_api->identify
hw_api->insert
Hyperwave API Funções


Inserts a new object

hw_api->info
hw_api->insertanchor
Hyperwave API Funções
PHP Manual

hw_api->insert

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->insert — Inserts a new object

Descrição

hw_api_object hw_api::insert ( array $parameter )

Insert a new object. The object type can be user, group, document or anchor. Depending on the type other object attributes has to be set.

Parâmetros

parameter

The parameter array contains the required elements 'object' and 'content' (if the object is a document) and the optional parameters 'parameters', 'mode' and 'attributeSelector'. The 'object' must contain all attributes of the object. 'parameters' is an object as well holding further attributes like the destination (attribute key is 'Parent'). 'content' is the content of the document. 'mode' can be a combination of the following flags:

HW_API_INSERT_NORMAL
The object in inserted into the server.
HW_API_INSERT_FORCE_VERSION_CONTROL
HW_API_INSERT_AUTOMATIC_CHECKOUT
HW_API_INSERT_PLAIN
HW_API_INSERT_KEEP_TIME_MODIFIED
HW_API_INSERT_DELAY_INDEXING

Valor Retornado

Veja Também

  • hw_api->replace

hw_api->info
hw_api->insertanchor
Hyperwave API Funções


Inserts a new object of type anchor

hw_api->insert
hw_api->insertcollection
Hyperwave API Funções
PHP Manual

hw_api->insertanchor

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->insertanchor — Inserts a new object of type anchor

Descrição

hw_api_object hw_api::insertanchor ( array $parameter )

This function is a shortcut for hwapi_insert(). It inserts an object of type anchor and sets some of the attributes required for an anchor.

Parâmetros

parameter

The parameter array contains the required elements 'object' and 'documentIdentifier' and the optional elements 'destinationIdentifier', 'parameter', 'hint' and 'attributeSelector'. The 'documentIdentifier' specifies the document where the anchor shall be inserted. The target of the anchor is set in 'destinationIdentifier' if it already exists. If the target does not exists the element 'hint' has to be set to the name of object which is supposed to be inserted later. Once it is inserted the anchor target is resolved automatically.

Valor Retornado

Veja Também

  • hw_api->insert
  • hw_api->insertdocument
  • hw_api->insertcollection

hw_api->insert
hw_api->insertcollection
Hyperwave API Funções


Inserts a new object of type collection

hw_api->insertanchor
hw_api->insertdocument
Hyperwave API Funções
PHP Manual

hw_api->insertcollection

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->insertcollection — Inserts a new object of type collection

Descrição

hw_api_object hw_api::insertcollection ( array $parameter )

This function is a shortcut for hwapi_insert(). It inserts an object of type collection and sets some of the attributes required for a collection.

Parâmetros

parameter

The parameter array contains the required elements 'object' and 'parentIdentifier' and the optional elements 'parameter' and 'attributeSelector'. See hwapi_insert() for the meaning of each element.

Valor Retornado

Veja Também

  • hw_api->insert
  • hw_api->insertdocument
  • hw_api->insertanchor

hw_api->insertanchor
hw_api->insertdocument
Hyperwave API Funções


Inserts a new object of type document

hw_api->insertcollection
hw_api->link
Hyperwave API Funções
PHP Manual

hw_api->insertdocument

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->insertdocument — Inserts a new object of type document

Descrição

hw_api_object hw_api::insertdocument ( array $parameter )

This function is a shortcut for hwapi_insert(). It inserts an object with content and sets some of the attributes required for a document.

Parâmetros

parameter

The parameter array contains the required elements 'object', 'parentIdentifier' and 'content' and the optional elements 'mode', 'parameter' and 'attributeSelector'.

See hwapi_insert() for the meaning of each element.

Valor Retornado

Veja Também

  • hw_api->insert
  • hw_api->insertcollection
  • hw_api->insertanchor

hw_api->insertcollection
hw_api->link
Hyperwave API Funções


Creates a link to an object

hw_api->insertdocument
hw_api->lock
Hyperwave API Funções
PHP Manual

hw_api->link

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->link — Creates a link to an object

Descrição

bool hw_api::link ( array $parameter )

Creates a link to an object. Accessing this link is like accessing the object to links points to.

Parâmetros

parameter

The parameter array contains the required elements 'objectIdentifier' and 'destinationParentIdentifier'. 'destinationParentIdentifier' is the target collection.

Valor Retornado

The function returns TRUE on success or an error object.

Veja Também

  • hw_api->copy

hw_api->insertdocument
hw_api->lock
Hyperwave API Funções


Locks an object

hw_api->link
hw_api->move
Hyperwave API Funções
PHP Manual

hw_api->lock

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->lock — Locks an object

Descrição

bool hw_api::lock ( array $parameter )

Locks an object for exclusive editing by the user calling this function. The object can be only unlocked by this user or the system user.

Parâmetros

parameter

The parameter array contains the required element 'objectIdentifier' and the optional parameters 'mode' and 'objectquery'.

'mode' determines how an object is locked. HW_API_LOCK_NORMAL means, an object is locked until it is unlocked. HW_API_LOCK_RECURSIVE is only valid for collection and locks all objects within the collection and possible subcollections. HW_API_LOCK_SESSION means, an object is locked only as long as the session is valid.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api->unlock

hw_api->link
hw_api->move
Hyperwave API Funções


Moves object between collections

hw_api->lock
hw_api_content
Hyperwave API Funções
PHP Manual

hw_api->move

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->move — Moves object between collections

Descrição

bool hw_api::move ( array $parameter )

Moves object between collections.

Parâmetros

parameter

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_objrec2array() - Convert attributes from object record to object array

hw_api->lock
hw_api_content
Hyperwave API Funções


Create new instance of class hw_api_content

hw_api->move
hw_api_object->assign
Hyperwave API Funções
PHP Manual

hw_api_content

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_content — Create new instance of class hw_api_content

Descrição

HW_API_Content hw_api_content ( string $content , string $mimetype )

Creates a new content object from the string content.

Parâmetros

content

mimetype

The mimetype for the contents.

Valor Retornado

hw_api->move
hw_api_object->assign
Hyperwave API Funções


Clones object

hw_api_content
hw_api_object->attreditable
Hyperwave API Funções
PHP Manual

hw_api_object->assign

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->assign — Clones object

Descrição

bool hw_api_object::assign ( array $parameter )

Clones the attributes of an object.

Parâmetros

parameter

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

hw_api_content
hw_api_object->attreditable
Hyperwave API Funções


Checks whether an attribute is editable

hw_api_object->assign
hw_api_object->count
Hyperwave API Funções
PHP Manual

hw_api_object->attreditable

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->attreditable — Checks whether an attribute is editable

Descrição

bool hw_api_object::attreditable ( array $parameter )

Checks whether an attribute is editable.

Parâmetros

parameter

Valor Retornado

Returns TRUE if the attribute is editable, FALSE otherwise.

hw_api_object->assign
hw_api_object->count
Hyperwave API Funções


Returns number of attributes

hw_api_object->attreditable
hw_api_object->insert
Hyperwave API Funções
PHP Manual

hw_api_object->count

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->count — Returns number of attributes

Descrição

int hw_api_object::count ( array $parameter )

Returns the number of attributes.

Parâmetros

parameter

Valor Retornado

Returns the number as an integer.

hw_api_object->attreditable
hw_api_object->insert
Hyperwave API Funções


Inserts new attribute

hw_api_object->count
hw_api_object
Hyperwave API Funções
PHP Manual

hw_api_object->insert

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->insert — Inserts new attribute

Descrição

bool hw_api_object::insert ( HW_API_Attribute $attribute )

Adds an attribute to the object.

Parâmetros

attribute

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api_object->remove

hw_api_object->count
hw_api_object
Hyperwave API Funções


Creates a new instance of class hw_api_object

hw_api_object->insert
hw_api_object->remove
Hyperwave API Funções
PHP Manual

hw_api_object

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object — Creates a new instance of class hw_api_object

Descrição

hw_api_object hw_api_object ( array $parameter )

Creates a new instance of the class hw_api_object.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->lock

hw_api_object->insert
hw_api_object->remove
Hyperwave API Funções


Removes attribute

hw_api_object
hw_api_object->title
Hyperwave API Funções
PHP Manual

hw_api_object->remove

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->remove — Removes attribute

Descrição

bool hw_api_object::remove ( string $name )

Removes the attribute with the given name.

Parâmetros

name

The attribute name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api_object->insert

hw_api_object
hw_api_object->title
Hyperwave API Funções


Returns the title attribute

hw_api_object->remove
hw_api_object->value
Hyperwave API Funções
PHP Manual

hw_api_object->title

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->title — Returns the title attribute

Descrição

string hw_api_object::title ( array $parameter )

Returns the title attribute.

Parâmetros

parameter

Valor Retornado

Returns the title as a string.

hw_api_object->remove
hw_api_object->value
Hyperwave API Funções


Returns value of attribute

hw_api_object->title
hw_api->object
Hyperwave API Funções
PHP Manual

hw_api_object->value

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_object->value — Returns value of attribute

Descrição

string hw_api_object::value ( string $name )

Returns value of an attribute.

Parâmetros

name

The attribute name.

Valor Retornado

Returns the value of the attribute with the given name or FALSE if an error occurred.

hw_api_object->title
hw_api->object
Hyperwave API Funções


Retrieve attribute information

hw_api_object->value
hw_api->objectbyanchor
Hyperwave API Funções
PHP Manual

hw_api->object

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->object — Retrieve attribute information

Descrição

hw_api_object hw_api::object ( array $parameter )

This function retrieves the attribute information of an object of any version. It will not return the document content.

Parâmetros

parameter

The parameter array contains the required elements 'objectIdentifier' and the optional elements 'attributeSelector' and 'version'.

Valor Retornado

The returned object is an instance of class HW_API_Object on success or HW_API_Error if an error occurred.

Exemplos

This simple example retrieves an object and checks for errors.

Exemplo #1 Retrieve an object

<?php
function handle_error($error)
{
  $reason = $error->reason(0);
  echo "Type: <b>";
  switch ($reason->type()) {
    case 0:
      echo "Error";
      break;
    case 1:
      echo "Warning";
      break;
    case 2:
      echo "Message";
      break;
  }
  echo "</b><br />\n";
  echo "Description: " . $reason->description("en") . "<br />\n";
}

function list_attr($obj)
{
  echo "<table>\n";
  $count = $obj->count();
  for ($i=0; $i<$count; $i++) {
    $attr = $obj->attribute($i);
    printf("<tr><td align=\"right\" bgcolor=\"#c0c0c0\"><b>%s</b></td><td bgcolor=\"#F0F0F0\">%s</td></tr>\n",
             $attr->key(), $attr->value());
  }
  echo "</table>\n";
}

$hwapi = hwapi_hgcsp($g_config[HOSTNAME]);
$parms = array("objectIdentifier"=>"rootcollection", "attributeSelector"=>array("Title", "Name", "DocumentType"));
$root = $hwapi->object($parms);
if (get_class($root) == "HW_API_Error") {
  handle_error($root);
  exit;
}
list_attr($root);
?>

Veja Também

  • hw_api->content

hw_api_object->value
hw_api->objectbyanchor
Hyperwave API Funções


Returns the object an anchor belongs to

hw_api->object
hw_api->parents
Hyperwave API Funções
PHP Manual

hw_api->objectbyanchor

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->objectbyanchor — Returns the object an anchor belongs to

Descrição

hw_api_object hw_api::objectbyanchor ( array $parameter )

This function retrieves an object the specified anchor belongs to.

Parâmetros

parameter

The parameter array contains the required element 'objectIdentifier' and the optional element 'attributeSelector'.

Valor Retornado

Veja Também

  • hw_api->dstofsrcanchor
  • hw_api->srcanchors
  • hw_api->dstanchors

hw_api->object
hw_api->parents
Hyperwave API Funções


Returns parents of an object

hw_api->objectbyanchor
hw_api_reason->description
Hyperwave API Funções
PHP Manual

hw_api->parents

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->parents — Returns parents of an object

Descrição

array hw_api::parents ( array $parameter )

Retrieves the parents of an object. The parents can be further filtered by specifying an object query.

Parâmetros

parameter

The parameter array contains the required elements 'objectidentifier' and the optional elements 'attributeselector' and 'objectquery'.

Valor Retornado

The return value is an array of objects of type HW_API_Object or HW_API_Error.

Veja Também

  • hw_api->children

hw_api->objectbyanchor
hw_api_reason->description
Hyperwave API Funções


Returns description of reason

hw_api->parents
hw_api_reason->type
Hyperwave API Funções
PHP Manual

hw_api_reason->description

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_reason->description — Returns description of reason

Descrição

string hw_api_reason::description ( void )

Returns the description of a reason

Valor Retornado

Returns the description, as a string.

hw_api->parents
hw_api_reason->type
Hyperwave API Funções


Returns type of reason

hw_api_reason->description
hw_api->remove
Hyperwave API Funções
PHP Manual

hw_api_reason->type

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api_reason->type — Returns type of reason

Descrição

HW_API_Reason hw_api_reason::type ( void )

Returns the type of a reason.

Valor Retornado

Returns an instance of HW_API_Reason.

hw_api_reason->description
hw_api->remove
Hyperwave API Funções


Delete an object

hw_api_reason->type
hw_api->replace
Hyperwave API Funções
PHP Manual

hw_api->remove

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->remove — Delete an object

Descrição

bool hw_api::remove ( array $parameter )

Removes an object from the specified parent. Collections will be removed recursively.

Parâmetros

parameter

You can pass an optional object query to remove only those objects which match the query. An object will be deleted physically if it is the last instance.

The parameter array contains the required elements 'objectidentifier' and 'parentidentifier'. If you want to remove a user or group 'parentidentifier' can be skipped.

The optional parameter 'mode' determines how the deletion is performed. In normal mode the object will not be removed physically until all instances are removed. In physical mode all instances of the object will be deleted immediately. In removelinks mode all references to and from the objects will be deleted as well. In nonrecursive the deletion is not performed recursive. Removing a collection which is not empty will cause an error.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • hw_api->move

hw_api_reason->type
hw_api->replace
Hyperwave API Funções


Replaces an object

hw_api->remove
hw_api->setcommittedversion
Hyperwave API Funções
PHP Manual

hw_api->replace

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->replace — Replaces an object

Descrição

hw_api_object hw_api::replace ( array $parameter )

Replaces the attributes and the content of an object.

Parâmetros

parameter

The parameter array contains the required elements 'objectIdentifier' and 'object' and the optional parameters 'content', 'parameters', 'mode' and 'attributeSelector'. 'objectIdentifier' contains the object to be replaced. 'object' contains the new object. 'content' contains the new content. 'parameters' contain extra information for HTML documents. HTML_Language is the letter abbreviation of the language of the title. HTML_Base sets the base attribute of the HTML document.

'mode' can be a combination of the following flags:

HW_API_REPLACE_NORMAL
The object on the server is replace with the object passed.
HW_API_REPLACE_FORCE_VERSION_CONTROL
HW_API_REPLACE_AUTOMATIC_CHECKOUT
HW_API_REPLACE_AUTOMATIC_CHECKIN
HW_API_REPLACE_PLAIN
HW_API_REPLACE_REVERT_IF_NOT_CHANGED
HW_API_REPLACE_KEEP_TIME_MODIFIED

Valor Retornado

Veja Também

  • hw_api->insert

hw_api->remove
hw_api->setcommittedversion
Hyperwave API Funções


Commits version other than last version

hw_api->replace
hw_api->srcanchors
Hyperwave API Funções
PHP Manual

hw_api->setcommittedversion

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->setcommittedversion — Commits version other than last version

Descrição

hw_api_object hw_api::setcommittedversion ( array $parameter )

Commits a version of a document. The committed version is the one which is visible to users with read access. By default the last version is the committed version.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->checkin
  • hw_api->checkout

hw_api->replace
hw_api->srcanchors
Hyperwave API Funções


Returns a list of all source anchors

hw_api->setcommittedversion
hw_api->srcsofdst
Hyperwave API Funções
PHP Manual

hw_api->srcanchors

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->srcanchors — Returns a list of all source anchors

Descrição

array hw_api::srcanchors ( array $parameter )

Retrieves all source anchors of an object.

Parâmetros

parameter

The parameter array contains the required element 'objectIdentifier' and the optional elements 'attributeSelector' and 'objectQuery'.

Valor Retornado

Veja Também

  • hw_api->dstanchors

hw_api->setcommittedversion
hw_api->srcsofdst
Hyperwave API Funções


Returns source of a destination object

hw_api->srcanchors
hw_api->unlock
Hyperwave API Funções
PHP Manual

hw_api->srcsofdst

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->srcsofdst — Returns source of a destination object

Descrição

array hw_api::srcsofdst ( array $parameter )

Retrieves all the source anchors pointing to the specified destination. The destination object can either be a destination anchor or a whole document.

Parâmetros

parameter

The parameters array contains the required element 'objectIdentifier' and the optional element 'attributeSelector' and 'objectQuery'. The function returns an array of objects or an error.

Valor Retornado

Veja Também

  • hw_api->dstofsrcanchor

hw_api->srcanchors
hw_api->unlock
Hyperwave API Funções


Unlocks a locked object

hw_api->srcsofdst
hw_api->user
Hyperwave API Funções
PHP Manual

hw_api->unlock

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->unlock — Unlocks a locked object

Descrição

bool hw_api::unlock ( array $parameter )

Unlocks a locked object. Only the user who has locked the object and the system user may unlock an object.

Parâmetros

parameter

The parameter array contains the required element 'objectIdentifier' and the optional parameters 'mode' and 'objectquery'. The meaning of 'mode' is the same as in function hwapi_lock().

Valor Retornado

Returns TRUE on success or an object of class HW_API_Error.

Veja Também

  • hw_api->lock

hw_api->srcsofdst
hw_api->user
Hyperwave API Funções


Returns the own user object

hw_api->unlock
hw_api->userlist
Hyperwave API Funções
PHP Manual

hw_api->user

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->user — Returns the own user object

Descrição

hw_api_object hw_api::user ( array $parameter )

Returns the own user object.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->userlist

hw_api->unlock
hw_api->userlist
Hyperwave API Funções


Returns a list of all logged in users

hw_api->user
HTTP
Hyperwave API Funções
PHP Manual

hw_api->userlist

(PHP 4, PHP 5 < 5.2.0, PECL hwapi SVN)

hw_api->userlist — Returns a list of all logged in users

Descrição

array hw_api::userlist ( array $parameter )

Returns a list of all logged in users.

Parâmetros

parameter

Valor Retornado

Veja Também

  • hw_api->user

hw_api->user
HTTP
Hyperwave API Funções


HTTP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Installing the HTTP extension — Installation/Configuration
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Request Options — Options usable with the HttpRequest class and request functions
  • The HttpDeflateStream class
    • HttpDeflateStream::__construct — HttpDeflateStream class constructor
    • HttpDeflateStream::factory — HttpDeflateStream class factory
    • HttpDeflateStream::finish — Finalize deflate stream
    • HttpDeflateStream::flush — Flush deflate stream
    • HttpDeflateStream::update — Update deflate stream
  • The HttpInflateStream class
    • HttpInflateStream::__construct — HttpInflateStream class constructor
    • HttpInflateStream::factory — HttpInflateStream class factory
    • HttpInflateStream::finish — Finalize inflate stream
    • HttpInflateStream::flush — Flush inflate stream
    • HttpInflateStream::update — Update inflate stream
  • The HttpMessage class
    • HttpMessage::addHeaders — Add headers
    • HttpMessage::__construct — HttpMessage constructor
    • HttpMessage::detach — Detach HttpMessage
    • HttpMessage::factory — Create HttpMessage from string
    • HttpMessage::fromEnv — Create HttpMessage from environment
    • HttpMessage::fromString — Create HttpMessage from string
    • HttpMessage::getBody — Get message body
    • HttpMessage::getHeader — Get header
    • HttpMessage::getHeaders — Get message headers
    • HttpMessage::getHttpVersion — Get HTTP version
    • HttpMessage::getParentMessage — Get parent message
    • HttpMessage::getRequestMethod — Get request method
    • HttpMessage::getRequestUrl — Get request URL
    • HttpMessage::getResponseCode — Get response code
    • HttpMessage::getResponseStatus — Get response status
    • HttpMessage::getType — Get message type
    • HttpMessage::guessContentType — Guess content type
    • HttpMessage::prepend — Prepend message(s)
    • HttpMessage::reverse — Reverse message chain
    • HttpMessage::send — Send message
    • HttpMessage::setBody — Set message body
    • HttpMessage::setHeaders — Set headers
    • HttpMessage::setHttpVersion — Set HTTP version
    • HttpMessage::setRequestMethod — Set request method
    • HttpMessage::setRequestUrl — Set request URL
    • HttpMessage::setResponseCode — Set response code
    • HttpMessage::setResponseStatus — Set response status
    • HttpMessage::setType — Set message type
    • HttpMessage::toMessageTypeObject — Create HTTP object regarding message type
    • HttpMessage::toString — Get string representation
  • The HttpQueryString class
    • HttpQueryString::__construct — HttpQueryString constructor
    • HttpQueryString::get — Get (part of) query string
    • HttpQueryString::mod — Modifiy query string copy
    • HttpQueryString::set — Set query string params
    • HttpQueryString::singleton — HttpQueryString singleton
    • HttpQueryString::toArray — Get query string as array
    • HttpQueryString::toString — Get query string
    • HttpQueryString::xlate — Change query strings charset
  • The HttpRequest
    • HttpRequest::addCookies — Add cookies
    • HttpRequest::addHeaders — Add headers
    • HttpRequest::addPostFields — Add post fields
    • HttpRequest::addPostFile — Add post file
    • HttpRequest::addPutData — Add put data
    • HttpRequest::addQueryData — Add query data
    • HttpRequest::addRawPostData — Add raw post data
    • HttpRequest::addSslOptions — Add ssl options
    • HttpRequest::clearHistory — Clear history
    • HttpRequest::__construct — HttpRequest constructor
    • HttpRequest::enableCookies — Enable cookies
    • HttpRequest::getContentType — Get content type
    • HttpRequest::getCookies — Get cookies
    • HttpRequest::getHeaders — Get headers
    • HttpRequest::getHistory — Get history
    • HttpRequest::getMethod — Get method
    • HttpRequest::getOptions — Get options
    • HttpRequest::getPostFields — Get post fields
    • HttpRequest::getPostFiles — Get post files
    • HttpRequest::getPutData — Get put data
    • HttpRequest::getPutFile — Get put file
    • HttpRequest::getQueryData — Get query data
    • HttpRequest::getRawPostData — Get raw post data
    • HttpRequest::getRawRequestMessage — Get raw request message
    • HttpRequest::getRawResponseMessage — Get raw response message
    • HttpRequest::getRequestMessage — Get request message
    • HttpRequest::getResponseBody — Get response body
    • HttpRequest::getResponseCode — Get response code
    • HttpRequest::getResponseCookies — Get response cookie(s)
    • HttpRequest::getResponseData — Get response data
    • HttpRequest::getResponseHeader — Get response header(s)
    • HttpRequest::getResponseInfo — Get response info
    • HttpRequest::getResponseMessage — Get response message
    • HttpRequest::getResponseStatus — Get response status
    • HttpRequest::getSslOptions — Get ssl options
    • HttpRequest::getUrl — Get url
    • HttpRequest::resetCookies — Reset cookies
    • HttpRequest::send — Send request
    • HttpRequest::setContentType — Set content type
    • HttpRequest::setCookies — Set cookies
    • HttpRequest::setHeaders — Set headers
    • HttpRequest::setMethod — Set method
    • HttpRequest::setOptions — Set options
    • HttpRequest::setPostFields — Set post fields
    • HttpRequest::setPostFiles — Set post files
    • HttpRequest::setPutData — Set put data
    • HttpRequest::setPutFile — Set put file
    • HttpRequest::setQueryData — Set query data
    • HttpRequest::setRawPostData — Set raw post data
    • HttpRequest::setSslOptions — Set ssl options
    • HttpRequest::setUrl — Set URL
  • The HttpRequestPool class
    • HttpRequestPool::attach — Attach HttpRequest
    • HttpRequestPool::__construct — HttpRequestPool constructor
    • HttpRequestPool::__destruct — HttpRequestPool destructor
    • HttpRequestPool::detach — Detach HttpRequest
    • HttpRequestPool::getAttachedRequests — Get attached requests
    • HttpRequestPool::getFinishedRequests — Get finished requests
    • HttpRequestPool::reset — Reset request pool
    • HttpRequestPool::send — Send all requests
    • HttpRequestPool::socketPerform — Perform socket actions
    • HttpRequestPool::socketSelect — Perform socket select
  • The HttpResponse
    • HttpResponse::capture — Capture script output
    • HttpResponse::getBufferSize — Get buffer size
    • HttpResponse::getCache — Get cache
    • HttpResponse::getCacheControl — Get cache control
    • HttpResponse::getContentDisposition — Get content disposition
    • HttpResponse::getContentType — Get content type
    • HttpResponse::getData — Get data
    • HttpResponse::getETag — Get ETag
    • HttpResponse::getFile — Get file
    • HttpResponse::getGzip — Get gzip
    • HttpResponse::getHeader — Get header
    • HttpResponse::getLastModified — Get last modified
    • HttpResponse::getRequestBody — Get request body
    • HttpResponse::getRequestBodyStream — Get request body stream
    • HttpResponse::getRequestHeaders — Get request headers
    • HttpResponse::getStream — Get Stream
    • HttpResponse::getThrottleDelay — Get throttle delay
    • HttpResponse::guessContentType — Guess content type
    • HttpResponse::redirect — Redirect
    • HttpResponse::send — Send response
    • HttpResponse::setBufferSize — Set buffer size
    • HttpResponse::setCache — Set cache
    • HttpResponse::setCacheControl — Set cache control
    • HttpResponse::setContentDisposition — Set content disposition
    • HttpResponse::setContentType — Set content type
    • HttpResponse::setData — Set data
    • HttpResponse::setETag — Set ETag
    • HttpResponse::setFile — Set file
    • HttpResponse::setGzip — Set gzip
    • HttpResponse::setHeader — Set header
    • HttpResponse::setLastModified — Set last modified
    • HttpResponse::setStream — Set stream
    • HttpResponse::setThrottleDelay — Set throttle delay
    • HttpResponse::status — Send HTTP response status
  • Funções para HTTP
    • http_cache_etag — Caching by ETag
    • http_cache_last_modified — Caching by last modification
    • http_chunked_decode — Decode chunked-encoded data
    • http_deflate — Deflate data
    • http_inflate — Inflate data
    • http_build_cookie — Build cookie string
    • http_date — Compose HTTP RFC compliant date
    • http_get_request_body_stream — Get request body as stream
    • http_get_request_body — Get request body as string
    • http_get_request_headers — Get request headers as array
    • http_match_etag — Match ETag
    • http_match_modified — Match last modification
    • http_match_request_header — Match any header
    • http_support — Check built-in HTTP support
    • http_negotiate_charset — Negotiate clients preferred character set
    • http_negotiate_content_type — Negotiate clients preferred content type
    • http_negotiate_language — Negotiate clients preferred language
    • ob_deflatehandler — Deflate output handler
    • ob_etaghandler — ETag output handler
    • ob_inflatehandler — Inflate output handler
    • http_parse_cookie — Parse HTTP cookie
    • http_parse_headers — Parse HTTP headers
    • http_parse_message — Parse HTTP messages
    • http_parse_params — Parse parameter list
    • http_persistent_handles_clean — Clean up persistent handles
    • http_persistent_handles_count — Stat persistent handles
    • http_persistent_handles_ident — Get/set ident of persistent handles
    • http_get — Perform GET request
    • http_head — Perform HEAD request
    • http_post_data — Perform POST request with pre-encoded data
    • http_post_fields — Perform POST request with data to be encoded
    • http_put_data — Perform PUT request with data
    • http_put_file — Perform PUT request with file
    • http_put_stream — Perform PUT request with stream
    • http_request_body_encode — Encode request body
    • http_request_method_exists — Check whether request method exists
    • http_request_method_name — Get request method name
    • http_request_method_register — Register request method
    • http_request_method_unregister — Unregister request method
    • http_request — Perform custom request
    • http_redirect — Issue HTTP redirect
    • http_send_content_disposition — Send Content-Disposition
    • http_send_content_type — Send Content-Type
    • http_send_data — Send arbitrary data
    • http_send_file — Send file
    • http_send_last_modified — Send Last-Modified
    • http_send_status — Send HTTP response status
    • http_send_stream — Send stream
    • http_throttle — HTTP throttling
    • http_build_str — Build query string
    • http_build_url — Build a URL
hw_api->userlist
Introdução
Outros Serviços


Introdução

The HTTP extension aims to provide a convenient and powerful set of functionality for major applications.

The HTTP extension eases handling of HTTP URLs, dates, redirects, headers and messages in a HTTP context (both incoming and outgoing). It also provides means for client negotiation of preferred language and charset, as well as a convenient way to exchange arbitrary data with caching and resuming capabilities.

Also provided is a powerful request and parallel interface (PHP5+), if the extension is built with cURL support.

Additionally to the API reference in this manual you can find information about how to install and configure as well as which global constants are predefined in the following sections:

HTTP
Instalação/Configuração
HTTP


Instalação/Configuração

Índice

  • Dependências
  • Installing the HTTP extension
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
HTTP


Dependências

The HttpResponse class requires at least PHP v5.1. Any other class is available as of PHP v5.0.

Nota: Be aware though, that some methods are not available with PHP v5.0.

Installation requirements on Windows

In order to be able to load this extension on Windows, you additionally need to load the following PHP extensions: hash, iconv e SPL.

Installation requirements on other platforms

The extension must be built with » libcurl support to enable request functionality (--with-http-curl-requests). A library version equal or greater to v7.12.3 is required.

To enable support for sending and receiving compressed responses, the extension must be built with » zlib support (--with-http-zlib-compression). A library version equal or greater than v1.2.2 is required.

Content type quessing can be enabled by building this extension with » libmagic support (--with-http-magic-mime).

Instalação/Configuração
Installing the HTTP extension
Instalação/Configuração


Installation/Configuration

Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/pecl_http.

Nota: The official name of this extension is pecl_http.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

HTTP Configuration Options
Name | Default | Changeable | Description
http.etag.mode | "MD5" | PHP_INI_ALL | The hashing algorithm used to generate the ETag. MD5, SHA1, and CRC32 are always available. If the hash extension is enabled, any hashing algorithms this extension provides are available, too.
http.log.cache | "" | PHP_INI_ALL | The path (or stream wrapper url) to a log file in which to write successful cache hits.
http.log.redirect | "" | PHP_INI_ALL | The path (or stream wrapper url) to a log file in which to write redirects.
http.log.not_found | "" | PHP_INI_ALL | The path (or stream wrapper url) to a log file in which to write "file not found" errors.
http.log.allowed_methods | "" | PHP_INI_ALL | The path (or stream wrapper url) to a log file in which to write "allowed methods" violations.
http.log.composite | "" | PHP_INI_ALL | The path (or stream wrapper url) to a log file in which to write all events.
http.request.methods.allowed | "" | PHP_INI_ALL | Allowed request methods. If a client issues a request with a request method other than listed here, PHP exits with a status of "405 Method not allowed". Veja a Definições INI http.force_exit para saber o que "exits" significa.
http.request.methods.custom | "" | PHP_INI_PERDIR|PHP_INI_SYSTEM | Custom request methods. If you want to use any non-standard request methods, you can register them with this INI setting or http_request_method_register().
http.request.datashare.cookie | "0" | PHP_INI_SYSTEM | Whether the global HttpRequestDataShare should by default share cookie information.
http.request.datashare.dns | "1" | PHP_INI_SYSTEM | Whether the global HttpRequestDataShare should by default share name lookup information.
http.request.datashare.ssl | "0" | PHP_INI_SYSTEM | Whether the global HttpRequestDataShare should by default share SSL session information. This is not yet implemented in libcurl.
http.request.datashare.connect | "0" | PHP_INI_SYSTEM | Whether the global HttpRequestDataShare should by default share connect information. This is not yet implemented in libcurl.
http.persistent.handles.limit | "-1" | PHP_INI_SYSTEM | The maximum amount of persistent handles to keep alive.
http.persistent.handles.ident | "GLOBAL" | PHP_INI_ALL | The ident of persistent handles.
http.send.inflate.start_auto | "0" | PHP_INI_PERDIR|PHP_INI_SYSTEM | Whether to automatically start the inflate output handler.
http.send.inflate.start_flags | "0" | PHP_INI_ALL | Initialization settings for the inflate output handler.
http.send.deflate.start_auto | "0" | PHP_INI_PERDIR|PHP_INI_SYSTEM | Whether to automatically start the deflate output handler.
http.send.deflate.start_flags | "0" | PHP_INI_ALL | Initialization settings for the deflate output handler. See deflate constants.
http.send.not_found_404 | "1" | PHP_INI_ALL | Whether to automatically exit with a status of "404 Not found", if http_send_file() was not able to find the specified file. Veja a Definições INI http.force_exit para saber o que "exits" significa.
http.only_exceptions | "0" | PHP_INI_ALL | Whether all notices/warnings/errors should be thrown as exceptions.
http.force_exit | "1" | PHP_INI_ALL | Each occasion where "exits with a status of..." is mentioned, usually causes the halt of the scripting engine. Disable this option if you alternatively want to start a discarding (dev/null) output handler and continue script execution.

Installing the HTTP extension
Tipos Resource
Instalação/Configuração


Tipos Resource

This extension defines a stream resource returned by http_get_request_body_stream() and (thereafter) HttpResponse::getStream().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Constants usable with http_support()
HTTP_SUPPORT (integer)
querying for this constant will always return TRUE
HTTP_SUPPORT_REQUESTS (integer)
whether support to issue HTTP requests is given, ie. libcurl support was compiled in
HTTP_SUPPORT_MAGICMIME (integer)
whether support to guess the Content-Type of HTTP messages is given, ie. libmagic support was compiled in
HTTP_SUPPORT_ENCODINGS (integer)
whether support for zlib encodings is given, ie. libz support was compiled in
HTTP_SUPPORT_SSLREQUESTS (integer)
whether support to issue HTTP requests over SSL is given, ie. linked libcurl was built with SSL support
Constants usable with http_parse_params()
HTTP_PARAMS_ALLOW_COMMA (integer)
allow commands additionally to semicolons as separator
HTTP_PARAMS_ALLOW_FAILURE (integer)
continue parsing after an error occurred
HTTP_PARAMS_RAISE_ERROR (integer)
raise PHP warnings on parse errors
HTTP_PARAMS_DEFAULT (integer)
all three values above, bitwise or'ed
Constants usable with http_parse_cookie() and its return value
HTTP_COOKIE_PARSE_RAW (integer)
don't urldecode values
HTTP_COOKIE_SECURE (integer)
whether "secure" was found in the cookie's parameters list
HTTP_COOKIE_HTTPONLY (integer)
whether "httpOnly" was found in the cookie's parameter list
Constants usable with http_deflate() and HttpDeflateStream
HTTP_DEFLATE_LEVEL_DEF (integer)
HTTP_DEFLATE_LEVEL_MIN (integer)
HTTP_DEFLATE_LEVEL_MAX (integer)
HTTP_DEFLATE_TYPE_ZLIB (integer)
HTTP_DEFLATE_TYPE_GZIP (integer)
HTTP_DEFLATE_TYPE_RAW (integer)
HTTP_DEFLATE_STRATEGY_DEF (integer)
HTTP_DEFLATE_STRATEGY_FILT (integer)
HTTP_DEFLATE_STRATEGY_HUFF (integer)
HTTP_DEFLATE_STRATEGY_RLE (integer)
HTTP_DEFLATE_STRATEGY_FIXED (integer)
Constants usable with HttpDeflateStream and HttpInflateStream
HTTP_ENCODING_STREAM_FLUSH_NONE (integer)
don't flush
HTTP_ENCODING_STREAM_FLUSH_SYNC (integer)
synchronized flush only
HTTP_ENCODING_STREAM_FLUSH_FULL (integer)
full data flush
Constants used for error reporting and Exceptions
HTTP_E_RUNTIME (integer)
runtime error
HTTP_E_INVALID_PARAM (integer)
an invalid parameter was passed
HTTP_E_HEADER (integer)
header() or similar operation failed
HTTP_E_MALFORMED_HEADERS (integer)
HTTP header parse error
HTTP_E_REQUEST_METHOD (integer)
unknown/invalid request method
HTTP_E_MESSAGE_TYPE (integer)
with operation incompatible message type
HTTP_E_ENCODING (integer)
encoding/decoding error
HTTP_E_REQUEST (integer)
request failure
HTTP_E_REQUEST_POOL (integer)
request pool failure
HTTP_E_SOCKET (integer)
socket exception
HTTP_E_RESPONSE (integer)
response failure
HTTP_E_URL (integer)
invalid URL
HTTP_E_QUERYSTRING (integer)
querystring operation failure
Constants usable with HttpMessage
HTTP_MSG_NONE (integer)
the message is of no specific type
HTTP_MSG_REQUEST (integer)
request style message
HTTP_MSG_RESPONSE (integer)
response style message
Constants usable with HttpQueryString
HTTP_QUERYSTRING_TYPE_BOOL (integer)
HTTP_QUERYSTRING_TYPE_INT (integer)
HTTP_QUERYSTRING_TYPE_FLOAT (integer)
HTTP_QUERYSTRING_TYPE_STRING (integer)
HTTP_QUERYSTRING_TYPE_ARRAY (integer)
HTTP_QUERYSTRING_TYPE_OBJECT (integer)
Constants used for the httpauthtype opção da requisição
HTTP_AUTH_BASIC (integer)
use "basic" authentication
HTTP_AUTH_DIGEST (integer)
use "digest" authentication
HTTP_AUTH_NTLM (integer)
use "NTLM" authentication
HTTP_AUTH_GSSNEG (integer)
use "GSS-NEGOTIATE" authentication
HTTP_AUTH_ANY (integer)
try any authentication scheme
Constants used for the HTTP protocol version opção da requisição
HTTP_VERSION_ANY (integer)
no specific HTTP protocol version
HTTP_VERSION_1_0 (integer)
HTTP version 1.0
HTTP_VERSION_1_1 (integer)
HTTP version 1.1
Constants used for the SSL protocol type and version opção da requisição
HTTP_SSL_VERSION_ANY (integer)
no specific SSL protocol version
HTTP_SSL_VERSION_TLSv1 (integer)
use TLSv1 only
HTTP_SSL_VERSION_SSLv3 (integer)
use SSLv3 only
HTTP_SSL_VERSION_SSLv2 (integer)
use SSLv2 only
Constants used for the proxytype opção da requisição
HTTP_PROXY_SOCKS4 (integer)
the proxy is a SOCKS4 type proxy
HTTP_PROXY_SOCKS5 (integer)
the proxy is a SOCKS5 type proxy
HTTP_PROXY_HTTP (integer)
standard HTTP proxy
Constants used for the ipresolve opção da requisição
HTTP_IPRESOLVE_V4 (integer)
use IPv4 only for name lookups
HTTP_IPRESOLVE_V6 (integer)
use IPv6 only for name lookups
HTTP_IPRESOLVE_ANY (integer)
use any IP mechanism only for name lookups
Predefined HTTP request method constants
HTTP_METH_GET (integer)
HTTP_METH_HEAD (integer)
HTTP_METH_POST (integer)
HTTP_METH_PUT (integer)
HTTP_METH_DELETE (integer)
HTTP_METH_OPTIONS (integer)
HTTP_METH_TRACE (integer)
HTTP_METH_CONNECT (integer)
HTTP_METH_PROPFIND (integer)
HTTP_METH_PROPPATCH (integer)
HTTP_METH_MKCOL (integer)
HTTP_METH_COPY (integer)
HTTP_METH_MOVE (integer)
HTTP_METH_LOCK (integer)
HTTP_METH_UNLOCK (integer)
HTTP_METH_VERSION_CONTROL (integer)
HTTP_METH_REPORT (integer)
HTTP_METH_CHECKOUT (integer)
HTTP_METH_CHECKIN (integer)
HTTP_METH_UNCHECKOUT (integer)
HTTP_METH_MKWORKSPACE (integer)
HTTP_METH_UPDATE (integer)
HTTP_METH_LABEL (integer)
HTTP_METH_MERGE (integer)
HTTP_METH_BASELINE_CONTROL (integer)
HTTP_METH_MKACTIVITY (integer)
HTTP_METH_ACL (integer)
Constants usable with http_redirect()
HTTP_REDIRECT (integer)
guess applicable redirect method
HTTP_REDIRECT_PERM (integer)
permanent redirect (301 Moved permanently)
HTTP_REDIRECT_FOUND (integer)
standard redirect (302 Found)

Nota: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original request method. The status codes 303 and 307 have been added for servers that wish to make unambiguously clear which kind of reaction is expected of the client.

HTTP_REDIRECT_POST (integer)
redirect applicable to POST requests (303 See other)
HTTP_REDIRECT_PROXY (integer)
proxy redirect (305 Use proxy)
HTTP_REDIRECT_TEMP (integer)
temporary redirect (307 Temporary Redirect)
Constants usable with http_build_url()
HTTP_URL_REPLACE (integer)
replace every part of the first URL when there's one of the second URL
HTTP_URL_JOIN_PATH (integer)
join relative paths
HTTP_URL_JOIN_QUERY (integer)
join query strings
HTTP_URL_STRIP_USER (integer)
strip any user authentication information
HTTP_URL_STRIP_PASS (integer)
strip any password authentication information
HTTP_URL_STRIP_AUTH (integer)
strip any authentication information
HTTP_URL_STRIP_PORT (integer)
strip explicit port numbers
HTTP_URL_STRIP_PATH (integer)
strip complete path
HTTP_URL_STRIP_QUERY (integer)
strip query string
HTTP_URL_STRIP_FRAGMENT (integer)
strip any fragments (#identifier)
HTTP_URL_STRIP_ALL (integer)
strip anything but scheme and host
Tipos Resource
Request Options
HTTP


Options usable with the HttpRequest class and request functions

Options related to time outs
timeout (integer)
seconds the whole request may take to complete
connecttimeout (integer)
seconds the connect, including name resolving, may take
dns_cache_timeout (integer)
seconds after an dns cache entry times out
Options related to urls
url (string)
the request url
port (integer)
use another port as specified in the url
redirect (integer)
whether and how many redirects to follow; defaults to 0
unrestrictedauth (bool)
whether to continue sending credentials on redirects to a different host
referer (string)
the referring url to send
Options related to cookies
encodecookies (bool)
whether custom cookies should be urlencode()d prior sending
cookies (array)
list of cookies as associative array like array("cookie" => "value")
cookiestore (string)
path to a file where cookies are/will be stored
cookiesession (bool)
don't load session cookies from cookiestore if TRUE
Options related to headers
useragent (string)
the user agent to send; defaults to PECL::HTTP/x.y.z (PHP/x.y.z); omitted if explicitly set to an empty string
lastmodified (int)
timestamp for If-(Un)Modified-Since header
etag (string)
quoted etag for If-(None-)Match header
headers (array)
list of custom headers as associative array like array("header" => "value")
Options related to authentication
httpauth (string)
http credentials in "user:pass" format
httpauthtype (int)
HTTP authentication type constant
(array)
Options related to proxies
proxyhost (string)
proxy host in "host[:port]" format
proxyport (int)
use another proxy port as specified in proxyhost
proxytype (int)
HTTP proxy type constant
proxyauth (string)
proxy credentials in "user:pass" format
proxyauthtype (int)
HTTP authentication type constant
Options related to the transfer
compress (bool)
whether to request and accept a gzip/deflate content encoded response
resume (int)
start the download at the specified byte offset if server support is given (indicated by a 206 response code)
range (array)
array of arrays, each containing two integers, specifying the ranges to download if server support is given (indicated by a 206 response code); only recognized if the resume option is empty
Options imposing limits
maxfilesize (integer)
maximum file size that should be downloaded; has no effect, if the size of the requested entity is unknown (eg. dynamic pages with chunked transfer encoding etc.)
low_speed_limit (int)
the lowest transfer speed a successful request may have
low_speed_time (int)
the time in which low_speed_limit must be transferred for a successful request
max_send_speed (int)
maximum send speed in bytes per second
max_recv_speed (int)
maximum receive speed in bytes per second
Callback options
onprogress (callback)
progress callback
Network options
interface (string)
outgoing network interface (ifname, ip or hostname)
portrange (array)
2 integers specifying outgoing portrange to try
SSL options
ssl (array)

Nota: SSL options are set through an array with the single "ssl" request option name.

cert (string)
path to certificate
certtype (string)
type of certificate
certpasswd (string)
password for certificate
key (string)
path to key
keytype (string)
type of key
keypasswd (string)
password for key
engine (string)
ssl engine to use
version (int)
ssl version to use
verifypeer (bool)
whether to verify the peer
verifyhost (bool)
whether to verify the host
cipher_list (string)
list of allowed ciphers
cainfo (string)
capath (string)
random_file (string)
egdsocket (string)
Constantes pré-definidas
The HttpDeflateStream class
HTTP


The HttpDeflateStream class

Sinopse da classe

HttpDeflateStream {
public void __construct ([ int $flags = 0 ] )
public HttpDeflateStream factory ([ int $flags = 0 [, string $class_name = "HttpDeflateStream" ]] )
public string finish ([ string $data ] )
public string flush ([ string $data ] )
public string update ( string $data )
}

Class Members

Constantes pré-definidas

Type | Name | Description
int | TYPE_GZIP | gzip encoding
int | TYPE_ZLIB | zlib AKA deflate encoding
int | TYPE_RAW | raw deflate encoding
int | LEVEL_DEF | default compression level
int | LEVEL_MIN | minimum compression level
int | LEVEL_MAX | maximum compression level
int | STRATEGY_DEF | default strategy
int | STRATEGY_FILT | filtered strategy
int | STRATEGY_HUFF | Huffman strategy
int | STRATEGY_RLE | RLE strategy
int | STRATEGY_FIXED | fixed strategy
int | FLUSH_NONE | no forced flush
int | FLUSH_SYNC | synching flush
int | FLUSH_FULL | full flush

Exemplos

Exemplo #1 A HttpDeflateStream example

<?php
$stream = new HttpDeflateStream(
    HttpDeflateStream::TYPE_GZIP |
    HttpDeflateStream::LEVEL_MAX |
    HttpDeflateStream::FLUSH_SYNC);

echo $stream->update($data);
echo $stream->finish();
?>

Índice

  • HttpDeflateStream::__construct — HttpDeflateStream class constructor
  • HttpDeflateStream::factory — HttpDeflateStream class factory
  • HttpDeflateStream::finish — Finalize deflate stream
  • HttpDeflateStream::flush — Flush deflate stream
  • HttpDeflateStream::update — Update deflate stream
Request Options
HttpDeflateStream::__construct
HTTP


HttpDeflateStream class constructor

The HttpDeflateStream class
HttpDeflateStream::factory
The HttpDeflateStream class
PHP Manual

HttpDeflateStream::__construct

(PECL pecl_http >= 0.21.0)

HttpDeflateStream::__construct — HttpDeflateStream class constructor

Descrição

public void HttpDeflateStream::__construct ([ int $flags = 0 ] )

Creates a new HttpDeflateStream object instance.

See the deflate stream constants table for possible flags.

Parâmetros

flags

initialization flags

Veja Também

  • HttpDeflateStream::factory() - HttpDeflateStream class factory

The HttpDeflateStream class
HttpDeflateStream::factory
The HttpDeflateStream class


HttpDeflateStream class factory

HttpDeflateStream::__construct
HttpDeflateStream::finish
The HttpDeflateStream class
PHP Manual

HttpDeflateStream::factory

(PECL pecl_http >= 1.4.0)

HttpDeflateStream::factory — HttpDeflateStream class factory

Descrição

public HttpDeflateStream HttpDeflateStream::factory ([ int $flags = 0 [, string $class_name = "HttpDeflateStream" ]] )

Creates a new HttpDeflateStream object instance.

See the deflate stream constants table for possible flags.

Parâmetros

flags

initialization flags

class_name

name of a subclass of HttpDeflateStream

Veja Também

  • HttpDeflateStream::__construct() - HttpDeflateStream class constructor

HttpDeflateStream::__construct
HttpDeflateStream::finish
The HttpDeflateStream class


Finalize deflate stream

HttpDeflateStream::factory
HttpDeflateStream::flush
The HttpDeflateStream class
PHP Manual

HttpDeflateStream::finish

(PECL pecl_http >= 0.21.0)

HttpDeflateStream::finish — Finalize deflate stream

Descrição

public string HttpDeflateStream::finish ([ string $data ] )

Finalizes the deflate stream. The deflate stream can be reused after finalizing.

Parâmetros

data

data to deflate

Valor Retornado

Returns the final part of deflated data.

HttpDeflateStream::factory
HttpDeflateStream::flush
The HttpDeflateStream class


Flush deflate stream

HttpDeflateStream::finish
HttpDeflateStream::update
The HttpDeflateStream class
PHP Manual

HttpDeflateStream::flush

(PECL pecl_http >= 0.21.0)

HttpDeflateStream::flush — Flush deflate stream

Descrição

public string HttpDeflateStream::flush ([ string $data ] )

Flushes the deflate stream.

Parâmetros

data

more data to deflate

Valor Retornado

Returns some deflated data as string on success or FALSE on failure.

HttpDeflateStream::finish
HttpDeflateStream::update
The HttpDeflateStream class


Update deflate stream

HttpDeflateStream::flush
The HttpInflateStream class
The HttpDeflateStream class
PHP Manual

HttpDeflateStream::update

(PECL pecl_http >= 0.21.0)

HttpDeflateStream::update — Update deflate stream

Descrição

public string HttpDeflateStream::update ( string $data )

Passes more data through the deflate stream.

Parâmetros

data

data to deflate

Valor Retornado

Returns deflated data on success or FALSE on failure.

HttpDeflateStream::flush
The HttpInflateStream class
The HttpDeflateStream class


The HttpInflateStream class

Sinopse da classe

HttpInflateStream {
public void __construct ([ int $flags = 0 ] )
public HttpInflateStream factory ([ int $flags = 0 [, string $class_name = "HttpInflateStream" ]] )
public string finish ([ string $data ] )
public string flush ([ string $data ] )
public string update ( string $data )
}

Class Members

Constants

Type | Name | Description
int | FLUSH_NONE | no forced flush
int | FLUSH_SYNC | synching flush
int | FLUSH_FULL | full flush

Nota:

Flushing usually has no effect on inflate streams.

Exemplos

Exemplo #1 A HttpInflateStream example

<?php
$stream = new HttpInflateStream;
echo $stream->update($data);
echo $stream->finish();
?>

Índice

  • HttpInflateStream::__construct — HttpInflateStream class constructor
  • HttpInflateStream::factory — HttpInflateStream class factory
  • HttpInflateStream::finish — Finalize inflate stream
  • HttpInflateStream::flush — Flush inflate stream
  • HttpInflateStream::update — Update inflate stream
HttpDeflateStream::update
HttpInflateStream::__construct
HTTP


HttpInflateStream class constructor

The HttpInflateStream class
HttpInflateStream::factory
The HttpInflateStream class
PHP Manual

HttpInflateStream::__construct

(PECL pecl_http >= 1.0.0)

HttpInflateStream::__construct — HttpInflateStream class constructor

Descrição

public void HttpInflateStream::__construct ([ int $flags = 0 ] )

Creates a new HttpInflateStream object instance.

See the inflate constants table for possible flags.

Parâmetros

flags

initialization flags

Veja Também

  • HttpInflateStream::factory() - HttpInflateStream class factory

The HttpInflateStream class
HttpInflateStream::factory
The HttpInflateStream class


HttpInflateStream class factory

HttpInflateStream::__construct
HttpInflateStream::finish
The HttpInflateStream class
PHP Manual

HttpInflateStream::factory

(PECL pecl_http >= 1.4.0)

HttpInflateStream::factory — HttpInflateStream class factory

Descrição

public HttpInflateStream HttpInflateStream::factory ([ int $flags = 0 [, string $class_name = "HttpInflateStream" ]] )

Creates a new HttpInflateStream object instance.

See the inflate constants table for possible flags.

Parâmetros

flags

initialization flags

class_name

name of a subclass of HttpInflateStream

Veja Também

  • HttpInflateStream::__construct() - HttpInflateStream class constructor

HttpInflateStream::__construct
HttpInflateStream::finish
The HttpInflateStream class


Finalize inflate stream

HttpInflateStream::factory
HttpInflateStream::flush
The HttpInflateStream class
PHP Manual

HttpInflateStream::finish

(PECL pecl_http >= 0.21.0)

HttpInflateStream::finish — Finalize inflate stream

Descrição

public string HttpInflateStream::finish ([ string $data ] )

Finalizes the inflate stream. The inflate stream can be reused after finalizing.

Parâmetros

data

data to inflate

Valor Retornado

Returns the final part of inflated data.

HttpInflateStream::factory
HttpInflateStream::flush
The HttpInflateStream class


Flush inflate stream

HttpInflateStream::finish
HttpInflateStream::update
The HttpInflateStream class
PHP Manual

HttpInflateStream::flush

(PECL pecl_http >= 0.21.0)

HttpInflateStream::flush — Flush inflate stream

Descrição

public string HttpInflateStream::flush ([ string $data ] )

Flushes the inflate stream.

Nota:

Flushing usually has no effect on inflate streams.

Parâmetros

data

more data to inflate

Valor Retornado

Returns some inflated data as string on success or FALSE on failure.

HttpInflateStream::finish
HttpInflateStream::update
The HttpInflateStream class


Update inflate stream

HttpInflateStream::flush
The HttpMessage class
The HttpInflateStream class
PHP Manual

HttpInflateStream::update

(PECL pecl_http >= 0.21.0)

HttpInflateStream::update — Update inflate stream

Descrição

public string HttpInflateStream::update ( string $data )

Passes more data through the inflate stream.

Parâmetros

data

data to inflate

Valor Retornado

Returns inflated data on success or FALSE on failure.

HttpInflateStream::flush
The HttpMessage class
The HttpInflateStream class


The HttpMessage class

Sinopse da classe

HttpMessage implements Iterator , Countable , Serializable {
public void addHeaders ( array $headers [, bool $append = false ] )
public void __construct ([ string $message ] )
public HttpMessage detach ( void )
static public HttpMessage factory ([ string $raw_message [, string $class_name = "HttpMessage" ]] )
static public HttpMessage fromEnv ( int $message_type [, string $class_name = "HttpMessage" ] )
static public HttpMessage fromString ([ string $raw_message [, string $class_name = "HttpMessage" ]] )
public string getBody ( void )
public string getHeader ( string $header )
public array getHeaders ( void )
public string getHttpVersion ( void )
public HttpMessage getParentMessage ( void )
public string getRequestMethod ( void )
public string getRequestUrl ( void )
public int getResponseCode ( void )
public string getResponseStatus ( void )
public int getType ( void )
public string guessContentType ( string $magic_file [, int $magic_mode = MAGIC_MIME ] )
public void prepend ( HttpMessage $message [, bool $top = true ] )
public HttpMessage reverse ( void )
public bool send ( void )
public void setBody ( string $body )
public void setHeaders ( array $headers )
public bool setHttpVersion ( string $version )
public bool setRequestMethod ( string $method )
public bool setRequestUrl ( string $url )
public bool setResponseCode ( int $code )
public bool setResponseStatus ( string $status )
public void setType ( int $type )
public HttpRequest|HttpResponse toMessageTypeObject ( void )
public string toString ([ bool $include_parent = false ] )
}

Class Members

Propriedades

Instance Properties
Modifiers | Type | Name | Description
protected | int | type | message type
protected | string | body | message body
protected | float | httpVersion | HTTP protocol version
protected | array | headers | message headers
protected | string | requestMethod | request method name
protected | requestUrl | string | request URL
protected | int | responseCode | response code
protected | string | responseStatus | response status message
protected | HttpMessage | parentMessage | reference to parent message

Nota:

None of these default properties can be accessed by reference, array key/index notation nor be used in increment or decrement operations.

Constantes pré-definidas

Type | Name | Description
int | TYPE_NONE | message has is of no specific type
int | TYPE_REQUEST | message is a request style HTTP message
int | TYPE_RESPONSE | message is a response style HTTP message

Índice

  • HttpMessage::addHeaders — Add headers
  • HttpMessage::__construct — HttpMessage constructor
  • HttpMessage::detach — Detach HttpMessage
  • HttpMessage::factory — Create HttpMessage from string
  • HttpMessage::fromEnv — Create HttpMessage from environment
  • HttpMessage::fromString — Create HttpMessage from string
  • HttpMessage::getBody — Get message body
  • HttpMessage::getHeader — Get header
  • HttpMessage::getHeaders — Get message headers
  • HttpMessage::getHttpVersion — Get HTTP version
  • HttpMessage::getParentMessage — Get parent message
  • HttpMessage::getRequestMethod — Get request method
  • HttpMessage::getRequestUrl — Get request URL
  • HttpMessage::getResponseCode — Get response code
  • HttpMessage::getResponseStatus — Get response status
  • HttpMessage::getType — Get message type
  • HttpMessage::guessContentType — Guess content type
  • HttpMessage::prepend — Prepend message(s)
  • HttpMessage::reverse — Reverse message chain
  • HttpMessage::send — Send message
  • HttpMessage::setBody — Set message body
  • HttpMessage::setHeaders — Set headers
  • HttpMessage::setHttpVersion — Set HTTP version
  • HttpMessage::setRequestMethod — Set request method
  • HttpMessage::setRequestUrl — Set request URL
  • HttpMessage::setResponseCode — Set response code
  • HttpMessage::setResponseStatus — Set response status
  • HttpMessage::setType — Set message type
  • HttpMessage::toMessageTypeObject — Create HTTP object regarding message type
  • HttpMessage::toString — Get string representation
HttpInflateStream::update
HttpMessage::addHeaders
HTTP


Add headers

The HttpMessage class
HttpMessage::__construct
The HttpMessage class
PHP Manual

HttpMessage::addHeaders

(PECL pecl_http >= 0.10.0)

HttpMessage::addHeaders — Add headers

Descrição

public void HttpMessage::addHeaders ( array $headers [, bool $append = false ] )

Add headers. If append is true, headers with the same name will be separated, else overwritten.

Parâmetros

headers

associative array containing the additional HTTP headers to add to the messages existing headers

append

if true, and a header with the same name of one to add exists already, this respective header will be converted to an array containing both header values, otherwise it will be overwritten with the new header value

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

The HttpMessage class
HttpMessage::__construct
The HttpMessage class


HttpMessage constructor

HttpMessage::addHeaders
HttpMessage::detach
The HttpMessage class
PHP Manual

HttpMessage::__construct

(PECL pecl_http >= 0.10.0)

HttpMessage::__construct — HttpMessage constructor

Descrição

public void HttpMessage::__construct ([ string $message ] )

Instantiate a new HttpMessage object.

The constructed object will actually represent the last message of the passed string. If there were prior messages, those can be accessed by HttpMessage::getParentMessage().

Parâmetros

message

a single or several consecutive HTTP messages

Erros

Throws HttpMalformedHeaderException.

HttpMessage::addHeaders
HttpMessage::detach
The HttpMessage class


Detach HttpMessage

HttpMessage::__construct
HttpMessage::factory
The HttpMessage class
PHP Manual

HttpMessage::detach

(PECL pecl_http >= 0.22.0)

HttpMessage::detach — Detach HttpMessage

Descrição

public HttpMessage HttpMessage::detach ( void )

Returns a clone of an HttpMessage object detached from any parent messages.

Parâmetros

Valor Retornado

Returns detached HttpMessage object copy.

HttpMessage::__construct
HttpMessage::factory
The HttpMessage class


Create HttpMessage from string

HttpMessage::detach
HttpMessage::fromEnv
The HttpMessage class
PHP Manual

HttpMessage::factory

(PECL pecl_http >= 1.4.0)

HttpMessage::factory — Create HttpMessage from string

Descrição

static public HttpMessage HttpMessage::factory ([ string $raw_message [, string $class_name = "HttpMessage" ]] )

Create an HttpMessage object from a string.

Parâmetros

raw_message

a single or several consecutive HTTP messages

class_name

a class extending HttpMessage

Valor Retornado

Returns an HttpMessage object on success or NULL on failure.

Erros

Throws HttpMalformedHeadersException.

Veja Também

  • HttpMessage::fromEnv() - Create HttpMessage from environment.

HttpMessage::detach
HttpMessage::fromEnv
The HttpMessage class


Create HttpMessage from environment

HttpMessage::factory
HttpMessage::fromString
The HttpMessage class
PHP Manual

HttpMessage::fromEnv

(PECL pecl_http >= 1.5.0)

HttpMessage::fromEnv — Create HttpMessage from environment

Descrição

static public HttpMessage HttpMessage::fromEnv ( int $message_type [, string $class_name = "HttpMessage" ] )

Create an HttpMessage object from script environment.

Parâmetros

message_type

The message type. See HttpMessage type constants.

class_name

a class extending HttpMessage

Valor Retornado

Returns an HttpMessage object on success or NULL on failure.

Veja Também

  • HttpMessage::factory() - Create HttpMessage from string.

HttpMessage::factory
HttpMessage::fromString
The HttpMessage class


Create HttpMessage from string

HttpMessage::fromEnv
HttpMessage::getBody
The HttpMessage class
PHP Manual

HttpMessage::fromString

(PECL pecl_http 0.10.0-1.3.3)

HttpMessage::fromString — Create HttpMessage from string

Descrição

static public HttpMessage HttpMessage::fromString ([ string $raw_message [, string $class_name = "HttpMessage" ]] )

Create an HttpMessage object from a string.

Esta função é um apelido obsoleto e apenas existe para razão de manter a compatibilidade com versões anteriores. É recomendado não usar esta função já que um dia ela deve ser removida do PHP.

Parâmetros

raw_message

a single or several consecutive HTTP messages

class_name

a class extending HttpMessage

Valor Retornado

Returns an HttpMessage object on success or NULL on failure.

Erros

Throws HttpMalformedHeadersException.

Veja Também

  • HttpMessage::factory() - Create HttpMessage from string.

HttpMessage::fromEnv
HttpMessage::getBody
The HttpMessage class


Get message body

HttpMessage::fromString
HttpMessage::getHeader
The HttpMessage class
PHP Manual

HttpMessage::getBody

(PECL pecl_http >= 0.10.0)

HttpMessage::getBody — Get message body

Descrição

public string HttpMessage::getBody ( void )

Get the body of the parsed HttpMessage.

Valor Retornado

Returns the message body as string.

HttpMessage::fromString
HttpMessage::getHeader
The HttpMessage class


Get header

HttpMessage::getBody
HttpMessage::getHeaders
The HttpMessage class
PHP Manual

HttpMessage::getHeader

(PECL pecl_http >= 1.1.0)

HttpMessage::getHeader — Get header

Descrição

public string HttpMessage::getHeader ( string $header )

Get message header.

Parâmetros

header

header name

Valor Retornado

Returns the header value on success or NULL if the header does not exist.

HttpMessage::getBody
HttpMessage::getHeaders
The HttpMessage class


Get message headers

HttpMessage::getHeader
HttpMessage::getHttpVersion
The HttpMessage class
PHP Manual

HttpMessage::getHeaders

(PECL pecl_http >= 0.10.0)

HttpMessage::getHeaders — Get message headers

Descrição

public array HttpMessage::getHeaders ( void )

Get message headers.

Valor Retornado

Returns an associative array containing the messages HTTP headers.

HttpMessage::getHeader
HttpMessage::getHttpVersion
The HttpMessage class


Get HTTP version

HttpMessage::getHeaders
HttpMessage::getParentMessage
The HttpMessage class
PHP Manual

HttpMessage::getHttpVersion

(PECL pecl_http >= 0.10.0)

HttpMessage::getHttpVersion — Get HTTP version

Descrição

public string HttpMessage::getHttpVersion ( void )

Get the HTTP Protocol Version of the Message.

Valor Retornado

Returns the HTTP protocol version as string.

HttpMessage::getHeaders
HttpMessage::getParentMessage
The HttpMessage class


Get parent message

HttpMessage::getHttpVersion
HttpMessage::getRequestMethod
The HttpMessage class
PHP Manual

HttpMessage::getParentMessage

(PECL pecl_http >= 0.10.0)

HttpMessage::getParentMessage — Get parent message

Descrição

public HttpMessage HttpMessage::getParentMessage ( void )

Get parent Message.

Valor Retornado

Returns the parent HttpMessage object.

Erros

Throws HttpRuntimeException.

HttpMessage::getHttpVersion
HttpMessage::getRequestMethod
The HttpMessage class


Get request method

HttpMessage::getParentMessage
HttpMessage::getRequestUrl
The HttpMessage class
PHP Manual

HttpMessage::getRequestMethod

(PECL pecl_http >= 0.10.0)

HttpMessage::getRequestMethod — Get request method

Descrição

public string HttpMessage::getRequestMethod ( void )

Get the Request Method of the Message.

Valor Retornado

Returns the request method name on success, or FALSE if the message is not of type HttpMessage::TYPE_REQUEST.

HttpMessage::getParentMessage
HttpMessage::getRequestUrl
The HttpMessage class


Get request URL

HttpMessage::getRequestMethod
HttpMessage::getResponseCode
The HttpMessage class
PHP Manual

HttpMessage::getRequestUrl

(PECL pecl_http >= 0.21.0)

HttpMessage::getRequestUrl — Get request URL

Descrição

public string HttpMessage::getRequestUrl ( void )

Get the Request URL of the Message.

Parâmetros

Valor Retornado

Returns the request URL as string on success, or FALSE if the message is not of type HttpMessage::TYPE_REQUEST.

HttpMessage::getRequestMethod
HttpMessage::getResponseCode
The HttpMessage class


Get response code

HttpMessage::getRequestUrl
HttpMessage::getResponseStatus
The HttpMessage class
PHP Manual

HttpMessage::getResponseCode

(PECL pecl_http >= 0.10.0)

HttpMessage::getResponseCode — Get response code

Descrição

public int HttpMessage::getResponseCode ( void )

Get the Response Code of the Message.

Valor Retornado

Returns the HTTP response code if the message is of type HttpMessage::TYPE_RESPONSE, else FALSE.

HttpMessage::getRequestUrl
HttpMessage::getResponseStatus
The HttpMessage class


Get response status

HttpMessage::getResponseCode
HttpMessage::getType
The HttpMessage class
PHP Manual

HttpMessage::getResponseStatus

(PECL pecl_http >= 0.23.0)

HttpMessage::getResponseStatus — Get response status

Descrição

public string HttpMessage::getResponseStatus ( void )

Get the Response Status of the message (i.e. the string following the response code).

Valor Retornado

Returns the HTTP response status string if the message is of type HttpMessage::TYPE_RESPONSE, else FALSE.

HttpMessage::getResponseCode
HttpMessage::getType
The HttpMessage class


Get message type

HttpMessage::getResponseStatus
HttpMessage::guessContentType
The HttpMessage class
PHP Manual

HttpMessage::getType

(PECL pecl_http >= 0.10.0)

HttpMessage::getType — Get message type

Descrição

public int HttpMessage::getType ( void )

Get Message Type. Either HTTP_MSG_NONE, HTTP_MSG_REQUEST or HTTP_MSG_RESPONSE.

Valor Retornado

Returns the HttpMessage::TYPE.

HttpMessage::getResponseStatus
HttpMessage::guessContentType
The HttpMessage class


Guess content type

HttpMessage::getType
HttpMessage::prepend
The HttpMessage class
PHP Manual

HttpMessage::guessContentType

(PECL pecl_http >= 1.0.0)

HttpMessage::guessContentType — Guess content type

Descrição

public string HttpMessage::guessContentType ( string $magic_file [, int $magic_mode = MAGIC_MIME ] )

Attempts to guess the content type of the message body through libmagic.

Parâmetros

magic_file

the magic.mime database to use

magic_mode

flags for libmagic

Valor Retornado

Returns the guessed content type on success or FALSE on failure.

Erros

Throws HttpRuntimeException, HttpInvalidParamException.

HttpMessage::getType
HttpMessage::prepend
The HttpMessage class


Prepend message(s)

HttpMessage::guessContentType
HttpMessage::reverse
The HttpMessage class
PHP Manual

HttpMessage::prepend

(PECL pecl_http >= 0.22.0)

HttpMessage::prepend — Prepend message(s)

Descrição

public void HttpMessage::prepend ( HttpMessage $message [, bool $top = true ] )

Prepends message(s) to the HTTP message.

Parâmetros

message

HttpMessage object to prepend

top

whether to prepend to the top most or right this message

Erros

Throws HttpInvalidParamException if the message is located within the same message chain.

HttpMessage::guessContentType
HttpMessage::reverse
The HttpMessage class


Reverse message chain

HttpMessage::prepend
HttpMessage::send
The HttpMessage class
PHP Manual

HttpMessage::reverse

(PECL pecl_http >= 0.23.0)

HttpMessage::reverse — Reverse message chain

Descrição

public HttpMessage HttpMessage::reverse ( void )

Reorders the message chain in reverse order.

Valor Retornado

Returns the most parent HttpMessage object.

HttpMessage::prepend
HttpMessage::send
The HttpMessage class


Send message

HttpMessage::reverse
HttpMessage::setBody
The HttpMessage class
PHP Manual

HttpMessage::send

(PECL pecl_http >= 0.10.0)

HttpMessage::send — Send message

Descrição

public bool HttpMessage::send ( void )

Send the Message according to its type as Response or Request.

This provides limited functionality compared to HttpRequest and HttpResponse.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpMessage::reverse
HttpMessage::setBody
The HttpMessage class


Set message body

HttpMessage::send
HttpMessage::setHeaders
The HttpMessage class
PHP Manual

HttpMessage::setBody

(PECL pecl_http >= 0.14.0)

HttpMessage::setBody — Set message body

Descrição

public void HttpMessage::setBody ( string $body )

Set the body of the HttpMessage.

Nota:

Don't forget to update any headers accordingly.

Parâmetros

body

the new body of the message

HttpMessage::send
HttpMessage::setHeaders
The HttpMessage class


Set headers

HttpMessage::setBody
HttpMessage::setHttpVersion
The HttpMessage class
PHP Manual

HttpMessage::setHeaders

(PECL pecl_http >= 0.10.0)

HttpMessage::setHeaders — Set headers

Descrição

public void HttpMessage::setHeaders ( array $headers )

Sets new headers.

Parâmetros

headers

associative array containing the new HTTP headers, which will replace all previous HTTP headers of the message

HttpMessage::setBody
HttpMessage::setHttpVersion
The HttpMessage class


Set HTTP version

HttpMessage::setHeaders
HttpMessage::setRequestMethod
The HttpMessage class
PHP Manual

HttpMessage::setHttpVersion

(PECL pecl_http >= 0.10.0)

HttpMessage::setHttpVersion — Set HTTP version

Descrição

public bool HttpMessage::setHttpVersion ( string $version )

Set the HTTP Protocol version of the Message.

Parâmetros

version

the HTTP protocol version

Valor Retornado

Returns TRUE on success, or FALSE if supplied version is out of range (1.0/1.1).

HttpMessage::setHeaders
HttpMessage::setRequestMethod
The HttpMessage class


Set request method

HttpMessage::setHttpVersion
HttpMessage::setRequestUrl
The HttpMessage class
PHP Manual

HttpMessage::setRequestMethod

(PECL pecl_http >= 0.10.0)

HttpMessage::setRequestMethod — Set request method

Descrição

public bool HttpMessage::setRequestMethod ( string $method )

Set the Request Method of the HTTP Message.

Parâmetros

method

the request method name

Valor Retornado

Returns TRUE on success, or FALSE if the message is not of type HttpMessage::TYPE_REQUEST or an invalid request method was supplied.

HttpMessage::setHttpVersion
HttpMessage::setRequestUrl
The HttpMessage class


Set request URL

HttpMessage::setRequestMethod
HttpMessage::setResponseCode
The HttpMessage class
PHP Manual

HttpMessage::setRequestUrl

(PECL pecl_http >= 0.21.0)

HttpMessage::setRequestUrl — Set request URL

Descrição

public bool HttpMessage::setRequestUrl ( string $url )

Set the Request URL of the HTTP Message.

Parâmetros

url

the request URL

Valor Retornado

Returns TRUE on success, or FALSE if the message is not of type HttpMessage::TYPE_REQUEST or supplied URL was empty.

HttpMessage::setRequestMethod
HttpMessage::setResponseCode
The HttpMessage class


Set response code

HttpMessage::setRequestUrl
HttpMessage::setResponseStatus
The HttpMessage class
PHP Manual

HttpMessage::setResponseCode

(PECL pecl_http >= 0.10.0)

HttpMessage::setResponseCode — Set response code

Descrição

public bool HttpMessage::setResponseCode ( int $code )

Set the response code of an HTTP Response Message.

Parâmetros

code

HTTP response code

Valor Retornado

Returns TRUE on success, or FALSE if the message is not of type HttpMessage::TYPE_RESPONSE or the response code is out of range (100-510).

HttpMessage::setRequestUrl
HttpMessage::setResponseStatus
The HttpMessage class


Set response status

HttpMessage::setResponseCode
HttpMessage::setType
The HttpMessage class
PHP Manual

HttpMessage::setResponseStatus

(PECL pecl_http >= 0.23.0)

HttpMessage::setResponseStatus — Set response status

Descrição

public bool HttpMessage::setResponseStatus ( string $status )

Set the Response Status of the HTTP message (i.e. the string following the response code).

Parâmetros

status

the response status text

Valor Retornado

Returns TRUE on success or FALSE if the message is not of type HttpMessage::TYPE_RESPONSE.

HttpMessage::setResponseCode
HttpMessage::setType
The HttpMessage class


Set message type

HttpMessage::setResponseStatus
HttpMessage::toMessageTypeObject
The HttpMessage class
PHP Manual

HttpMessage::setType

(PECL pecl_http >= 0.10.0)

HttpMessage::setType — Set message type

Descrição

public void HttpMessage::setType ( int $type )

Set Message Type. Either HTTP_MSG_NONE, HTTP_MSG_REQUEST or HTTP_MSG_RESPONSE.

Parâmetros

type

the HttpMessage::TYPE

HttpMessage::setResponseStatus
HttpMessage::toMessageTypeObject
The HttpMessage class


Create HTTP object regarding message type

HttpMessage::setType
HttpMessage::toString
The HttpMessage class
PHP Manual

HttpMessage::toMessageTypeObject

(PECL pecl_http >= 0.22.0)

HttpMessage::toMessageTypeObject — Create HTTP object regarding message type

Descrição

public HttpRequest|HttpResponse HttpMessage::toMessageTypeObject ( void )

Creates an object regarding to the type of the message.

Parâmetros

Valor Retornado

Returns either an HttpRequest or HttpResponse object on success, or NULL on failure.

Erros

Throws HttpRuntimeException, HttpMessageTypeException, HttpHeaderException.

HttpMessage::setType
HttpMessage::toString
The HttpMessage class


Get string representation

HttpMessage::toMessageTypeObject
The HttpQueryString class
The HttpMessage class
PHP Manual

HttpMessage::toString

(PECL pecl_http >= 0.10.0)

HttpMessage::toString — Get string representation

Descrição

public string HttpMessage::toString ([ bool $include_parent = false ] )

Get the string representation of the Message.

Parâmetros

include_parent

specifies whether the returned string should also contain any parent messages

Valor Retornado

Returns the message as string.

HttpMessage::toMessageTypeObject
The HttpQueryString class
The HttpMessage class


The HttpQueryString class

Sinopse da classe

HttpQueryString implements ArrayAccess , Serializable {
final public void __construct ([ bool $global = true [, mixed $add ]] )
public mixed get ([ string $key [, mixed $type = 0 [, mixed $defval = NULL [, bool $delete = false ]]]] )
public HttpQueryString mod ( mixed $params )
public string set ( mixed $params )
static public HttpQueryString singleton ([ bool $global = true ] )
public array toArray ( void )
public string toString ( void )
public bool xlate ( string $ie , string $oe )
}

Class Members

Propriedades

Instance Properties
Modifiers | Type | Name | Description
private | array | queryArray | query parameters
private | string | queryString | serialized query parameters
Static Properties
Modifiers | Type | Name | Description
private | array | instance | holds singletons

Constantes pré-definidas

Type | Name | Description
int | TYPE_BOOL | retrieve query param as bool
int | TYPE_INT | retrieve query param as int
int | TYPE_FLOAT | retrieve query param as float
int | TYPE_STRING | retrieve query param as string
int | TYPE_ARRAY | retrieve query param as array
int | TYPE_OBJECT | retrieve query param as object

Índice

  • HttpQueryString::__construct — HttpQueryString constructor
  • HttpQueryString::get — Get (part of) query string
  • HttpQueryString::mod — Modifiy query string copy
  • HttpQueryString::set — Set query string params
  • HttpQueryString::singleton — HttpQueryString singleton
  • HttpQueryString::toArray — Get query string as array
  • HttpQueryString::toString — Get query string
  • HttpQueryString::xlate — Change query strings charset
HttpMessage::toString
HttpQueryString::__construct
HTTP


HttpQueryString constructor

The HttpQueryString class
HttpQueryString::get
The HttpQueryString class
PHP Manual

HttpQueryString::__construct

(PECL pecl_http >= 0.22.0)

HttpQueryString::__construct — HttpQueryString constructor

Descrição

final public void HttpQueryString::__construct ([ bool $global = true [, mixed $add ]] )

Creates a new HttpQueryString object instance.

Operates on and modifies $_GET and $_SERVER['QUERY_STRING'] if global is TRUE.

Parâmetros

global

whether to operate on $_GET and $_SERVER['QUERY_STRING']

add

additional/initial query string parameters

Erros

Throws HttpRuntimeException.

The HttpQueryString class
HttpQueryString::get
The HttpQueryString class


Get (part of) query string

HttpQueryString::__construct
HttpQueryString::mod
The HttpQueryString class
PHP Manual

HttpQueryString::get

(PECL pecl_http >= 0.22.0)

HttpQueryString::get — Get (part of) query string

Descrição

public mixed HttpQueryString::get ([ string $key [, mixed $type = 0 [, mixed $defval = NULL [, bool $delete = false ]]]] )

Get (part of) the query string.

The type parameter is either one of the HttpQueryString::TYPE_* constants or a type abbreviation like "b" for bool, "i" for int, "f" for float, "s" for string, "a" for array and "o" for a stdClass object.

Parâmetros

key

key of the query string param to retrieve

type

which variable type to enforce

defval

default value if key does not exist

delete

whether to remove the key/value pair from the query string

Valor Retornado

Returns the value of the query string param or the whole query string if no key was specified on success or defval if key does not exist.

HttpQueryString::__construct
HttpQueryString::mod
The HttpQueryString class


Modifiy query string copy

HttpQueryString::get
HttpQueryString::set
The HttpQueryString class
PHP Manual

HttpQueryString::mod

(PECL pecl_http >= 1.1.0)

HttpQueryString::mod — Modifiy query string copy

Descrição

public HttpQueryString HttpQueryString::mod ( mixed $params )

Copies the query string object and sets provided params at the clone.

Parâmetros

params

query string params to add

Valor Retornado

Returns a new HttpQueryString object

HttpQueryString::get
HttpQueryString::set
The HttpQueryString class


Set query string params

HttpQueryString::mod
HttpQueryString::singleton
The HttpQueryString class
PHP Manual

HttpQueryString::set

(PECL pecl_http >= 0.22.0)

HttpQueryString::set — Set query string params

Descrição

public string HttpQueryString::set ( mixed $params )

Set query string entry/entries. NULL values will unset the variable.

Parâmetros

params

query string params to add

Valor Retornado

Returns the current query string.

HttpQueryString::mod
HttpQueryString::singleton
The HttpQueryString class


HttpQueryString singleton

HttpQueryString::set
HttpQueryString::toArray
The HttpQueryString class
PHP Manual

HttpQueryString::singleton

(PECL pecl_http >= 0.25.0)

HttpQueryString::singleton — HttpQueryString singleton

Descrição

static public HttpQueryString HttpQueryString::singleton ([ bool $global = true ] )

Get a single instance (differentiates between the global setting).

Parâmetros

global

whether to operate on $_GET and $_SERVER['QUERY_STRING']

Valor Retornado

Returns always the same HttpQueryString instance regarding the global setting.

Erros

Throws HttpRuntimeException.

HttpQueryString::set
HttpQueryString::toArray
The HttpQueryString class


Get query string as array

HttpQueryString::singleton
HttpQueryString::toString
The HttpQueryString class
PHP Manual

HttpQueryString::toArray

(PECL pecl_http >= 0.22.0)

HttpQueryString::toArray — Get query string as array

Descrição

public array HttpQueryString::toArray ( void )

Get the query string represented as associative array.

Valor Retornado

Returns the array representation of the query string.

HttpQueryString::singleton
HttpQueryString::toString
The HttpQueryString class


Get query string

HttpQueryString::toArray
HttpQueryString::xlate
The HttpQueryString class
PHP Manual

HttpQueryString::toString

(PECL pecl_http >= 0.22.0)

HttpQueryString::toString — Get query string

Descrição

public string HttpQueryString::toString ( void )

Get the query string.

Parâmetros

Valor Retornado

Returns the string representation of the query string.

HttpQueryString::toArray
HttpQueryString::xlate
The HttpQueryString class


Change query strings charset

HttpQueryString::toString
The HttpRequest
The HttpQueryString class
PHP Manual

HttpQueryString::xlate

(PECL pecl_http >= 0.25.0)

HttpQueryString::xlate — Change query strings charset

Descrição

public bool HttpQueryString::xlate ( string $ie , string $oe )

Converts the query string from the source encoding ie to the target encoding oe.

Aviso

Don't use any character set that can contain NUL bytes like UTF-16.

Nota:

This method requires ext/iconv to be enabled and loaded.

Parâmetros

ie

input encoding

oe

output encoding

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpQueryString::toString
The HttpRequest
The HttpQueryString class


The HttpRequest

Sinopse da classe

HttpRequest {
public bool addCookies ( array $cookies )
public bool addHeaders ( array $headers )
public bool addPostFields ( array $post_data )
public bool addPostFile ( string $name , string $file [, string $content_type = "application/x-octetstream" ] )
public bool addPutData ( string $put_data )
public bool addQueryData ( array $query_params )
public bool addRawPostData ( string $raw_post_data )
public bool addSslOptions ( array $options )
public void clearHistory ( void )
public void __construct ([ string $url [, int $request_method = HTTP_METH_GET [, array $options ]]] )
public bool enableCookies ( void )
public string getContentType ( void )
public array getCookies ( void )
public array getHeaders ( void )
public HttpMessage getHistory ( void )
public int getMethod ( void )
public array getOptions ( void )
public array getPostFields ( void )
public array getPostFiles ( void )
public string getPutData ( void )
public string getPutFile ( void )
public string getQueryData ( void )
public string getRawPostData ( void )
public string getRawRequestMessage ( void )
public string getRawResponseMessage ( void )
public HttpMessage getRequestMessage ( void )
public string getResponseBody ( void )
public int getResponseCode ( void )
public array getResponseCookies ([ int $flags = 0 [, array $allowed_extras ]] )
public array getResponseData ( void )
public mixed getResponseHeader ([ string $name ] )
public mixed getResponseInfo ([ string $name ] )
public HttpMessage getResponseMessage ( void )
public string getResponseStatus ( void )
public array getSslOptions ( void )
public string getUrl ( void )
public bool resetCookies ([ bool $session_only = false ] )
public HttpMessage send ( void )
public bool setContentType ( string $content_type )
public bool setCookies ([ array $cookies ] )
public bool setHeaders ([ array $headers ] )
public bool setMethod ( int $request_method )
public bool setOptions ([ array $options ] )
public bool setPostFields ( array $post_data )
public bool setPostFiles ( array $post_files )
public bool setPutData ([ string $put_data ] )
public bool setPutFile ([ string $file = "" ] )
public bool setQueryData ( mixed $query_data )
public bool setRawPostData ([ string $raw_post_data ] )
public bool setSslOptions ([ array $options ] )
public bool setUrl ( string $url )
}

Class Members

Propriedades

Instance Properties
Modifiers | Type | Name | Description
protected | array | options | request options to configure the request; see opções da requisição
protected array postFields form data:
array("fieldname" => "fieldvalue")
protected array postFiles files to upload:
array(array("name" => "image", "file" => "/home/u/images/u.png", "type" => "image/png"))
protected | array | responseInfo | information (statistical) about the request/response; see Informações de requisição/resposta
protected | HttpMessage | responseMessage | the response message
protected | integer | responseCode | the numerical response code
protected | string | responseStatus | the literal response status text
protected | integer | method | the request method to use
protected | string | url | the request url
protected | string | contentType | the content type to use for raw post requests
protected | string | rawPostData | raw post data
protected | string | queryData | query parameters
protected | string | putFile | the file to upload with a PUT request
protected | string | putData | raw data to upload with a PUT request
protected | HttpMessage | history | the whole request/response history if history logging is enabled
public | boolean | recordHistory | whether to enable history logging

Constantes pré-definidas

Type | Name | Description
integer | METH_GET | GET request method
integer | METH_HEAD | HEAD request method
integer | METH_POST | POST request method
integer | METH_PUT | PUT request method
integer | METH_DELETE | DELETE request method
integer | METH_OPTIONS | OPTIONS request method
integer | METH_TRACE | TRACE request method
integer | METH_CONNECT | CONNECT request method
integer | METH_PROPFIND | PROPFIND request method
integer | METH_PROPPATCH | PROPPATCH request method
integer | METH_MKCOL | MKCOL request method
integer | METH_COPY | COPY request method
integer | METH_MOVE | MOVE request method
integer | METH_LOCK | LOCK request method
integer | METH_UNLOCK | UNLOCK request method
integer | METH_VERSION_CONTROL | VERSION-CONTROL request method
integer | METH_REPORT | REPORT request method
integer | METH_CHECKOUT | CHECKOUT request method
integer | METH_CHECKIN | CHECKIN request method
integer | METH_UNCHECKOUT | UNCHECKOUT request method
integer | METH_MKWORKSPACE | MKWORKSPACE request method
integer | METH_UPDATE | UPDATE request method
integer | METH_LABEL | LABEL request method
integer | METH_MERGE | MERGE request method
integer | METH_BASELINE_CONTROL | BASELINE-CONTROL request method
integer | METH_MKACTIVITY | MKACTIVITY request method
integer | METH_ACL | ACL request method
integer | VERSION_1_0 | HTTP protocol version 1.0
integer | VERSION_1_1 | HTTP protocol version 1.1
integer | VERSION_ANY | any HTTP protocol version
integer | AUTH_BASIC | basic authentication
integer | AUTH_DIGEST | digest authentication
integer | AUTH_NTLM | NTLM authentication
integer | AUTH_GSSNEG | GSS negotiate authentication
integer | AUTH_ANY | any authentication
integer | PROXY_SOCKS4 | SOCKS v4 proxy
integer | PROXY_SOCKS5 | SOCKS v5 proxy
integer | PROXY_HTTP | HTTP proxy
integer | SSL_VERSION_TLSv1 | use TLS v1
integer | SSL_VERSION_SSLv2 | use SSL v2
integer | SSL_VERSION_SSLv3 | use SSL v3
integer | SSL_VERSION_ANY | use any SSL/TLS method
integer | IPRESOLVE_V4 | resolve via IPv4 only
integer | IPRESOLVE_V6 | resolve via IPv6 only
integer | IPRESOLVE_ANY | use any resolving methods

Índice

  • HttpRequest::addCookies — Add cookies
  • HttpRequest::addHeaders — Add headers
  • HttpRequest::addPostFields — Add post fields
  • HttpRequest::addPostFile — Add post file
  • HttpRequest::addPutData — Add put data
  • HttpRequest::addQueryData — Add query data
  • HttpRequest::addRawPostData — Add raw post data
  • HttpRequest::addSslOptions — Add ssl options
  • HttpRequest::clearHistory — Clear history
  • HttpRequest::__construct — HttpRequest constructor
  • HttpRequest::enableCookies — Enable cookies
  • HttpRequest::getContentType — Get content type
  • HttpRequest::getCookies — Get cookies
  • HttpRequest::getHeaders — Get headers
  • HttpRequest::getHistory — Get history
  • HttpRequest::getMethod — Get method
  • HttpRequest::getOptions — Get options
  • HttpRequest::getPostFields — Get post fields
  • HttpRequest::getPostFiles — Get post files
  • HttpRequest::getPutData — Get put data
  • HttpRequest::getPutFile — Get put file
  • HttpRequest::getQueryData — Get query data
  • HttpRequest::getRawPostData — Get raw post data
  • HttpRequest::getRawRequestMessage — Get raw request message
  • HttpRequest::getRawResponseMessage — Get raw response message
  • HttpRequest::getRequestMessage — Get request message
  • HttpRequest::getResponseBody — Get response body
  • HttpRequest::getResponseCode — Get response code
  • HttpRequest::getResponseCookies — Get response cookie(s)
  • HttpRequest::getResponseData — Get response data
  • HttpRequest::getResponseHeader — Get response header(s)
  • HttpRequest::getResponseInfo — Get response info
  • HttpRequest::getResponseMessage — Get response message
  • HttpRequest::getResponseStatus — Get response status
  • HttpRequest::getSslOptions — Get ssl options
  • HttpRequest::getUrl — Get url
  • HttpRequest::resetCookies — Reset cookies
  • HttpRequest::send — Send request
  • HttpRequest::setContentType — Set content type
  • HttpRequest::setCookies — Set cookies
  • HttpRequest::setHeaders — Set headers
  • HttpRequest::setMethod — Set method
  • HttpRequest::setOptions — Set options
  • HttpRequest::setPostFields — Set post fields
  • HttpRequest::setPostFiles — Set post files
  • HttpRequest::setPutData — Set put data
  • HttpRequest::setPutFile — Set put file
  • HttpRequest::setQueryData — Set query data
  • HttpRequest::setRawPostData — Set raw post data
  • HttpRequest::setSslOptions — Set ssl options
  • HttpRequest::setUrl — Set URL
HttpQueryString::xlate
HttpRequest::addCookies
HTTP


Add cookies

The HttpRequest
HttpRequest::addHeaders
The HttpRequest
PHP Manual

HttpRequest::addCookies

(PECL pecl_http >= 0.10.0)

HttpRequest::addCookies — Add cookies

Descrição

public bool HttpRequest::addCookies ( array $cookies )

Add custom cookies.

Nota: The opção da requisição encodecookies controla quando o valor do cookie deve ser urlencode()d.

Nota: Afeta qualquer método de requisição.

Parâmetros

cookies

an associative array containing any cookie name/value pairs to add

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A HttpRequest::addCookies() example

<?php
$r = new HttpRequest;
$r->addCookies(
    array(
        "cookie_name" => "cookie value",
    )
);
?>

Veja Também

  • HttpRequest::setCookies() - Set cookies

The HttpRequest
HttpRequest::addHeaders
The HttpRequest


Add headers

HttpRequest::addCookies
HttpRequest::addPostFields
The HttpRequest
PHP Manual

HttpRequest::addHeaders

(PECL pecl_http >= 0.10.0)

HttpRequest::addHeaders — Add headers

Descrição

public bool HttpRequest::addHeaders ( array $headers )

Add request header name/value pairs.

Parâmetros

headers

an associative array as parameter containing additional header name/value pairs

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addCookies
HttpRequest::addPostFields
The HttpRequest


Add post fields

HttpRequest::addHeaders
HttpRequest::addPostFile
The HttpRequest
PHP Manual

HttpRequest::addPostFields

(PECL pecl_http >= 0.10.0)

HttpRequest::addPostFields — Add post fields

Descrição

public bool HttpRequest::addPostFields ( array $post_data )

Adds POST data entries, leaving previously set unchanged, unless a post entry with the same name already exists.

Affects only POST and custom requests.

Parâmetros

post_data

an associative array as parameter containing the post fields

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addHeaders
HttpRequest::addPostFile
The HttpRequest


Add post file

HttpRequest::addPostFields
HttpRequest::addPutData
The HttpRequest
PHP Manual

HttpRequest::addPostFile

(PECL pecl_http >= 0.10.0)

HttpRequest::addPostFile — Add post file

Descrição

public bool HttpRequest::addPostFile ( string $name , string $file [, string $content_type = "application/x-octetstream" ] )

Add a file to the POST request, leaving previously set files unchanged.

Affects only POST and custom requests. Cannot be used with raw post data.

Parâmetros

name

the form element name

file

the path to the file

content_type

the content type of the file

Valor Retornado

Returns TRUE on success, or FALSE if the content type seems not to contain a primary and a secondary content type part.

HttpRequest::addPostFields
HttpRequest::addPutData
The HttpRequest


Add put data

HttpRequest::addPostFile
HttpRequest::addQueryData
The HttpRequest
PHP Manual

HttpRequest::addPutData

(PECL pecl_http >= 0.25.0)

HttpRequest::addPutData — Add put data

Descrição

public bool HttpRequest::addPutData ( string $put_data )

Add PUT data, leaving previously set PUT data unchanged.

Affects only PUT requests.

Parâmetros

put_data

the data to concatenate

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addPostFile
HttpRequest::addQueryData
The HttpRequest


Add query data

HttpRequest::addPutData
HttpRequest::addRawPostData
The HttpRequest
PHP Manual

HttpRequest::addQueryData

(PECL pecl_http >= 0.10.0)

HttpRequest::addQueryData — Add query data

Descrição

public bool HttpRequest::addQueryData ( array $query_params )

Add parameters to the query parameter list, leaving previously set unchanged.

Affects any request type.

Parâmetros

query_params

an associative array as parameter containing the query fields to add

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addPutData
HttpRequest::addRawPostData
The HttpRequest


Add raw post data

HttpRequest::addQueryData
HttpRequest::addSslOptions
The HttpRequest
PHP Manual

HttpRequest::addRawPostData

(PECL pecl_http 0.14.0-1.4.1)

HttpRequest::addRawPostData — Add raw post data

Descrição

public bool HttpRequest::addRawPostData ( string $raw_post_data )

Add raw post data, leaving previously set raw post data unchanged.

Affects only POST and custom requests.

Parâmetros

raw_post_data

the raw post data to concatenate

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addQueryData
HttpRequest::addSslOptions
The HttpRequest


Add ssl options

HttpRequest::addRawPostData
HttpRequest::clearHistory
The HttpRequest
PHP Manual

HttpRequest::addSslOptions

(PECL pecl_http >= 0.12.0)

HttpRequest::addSslOptions — Add ssl options

Descrição

public bool HttpRequest::addSslOptions ( array $options )

Set additional SSL options.

Parâmetros

options

an associative array as parameter containing additional SSL specific options

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::addRawPostData
HttpRequest::clearHistory
The HttpRequest


Clear history

HttpRequest::addSslOptions
HttpRequest::__construct
The HttpRequest
PHP Manual

HttpRequest::clearHistory

(PECL pecl_http >= 0.15.0)

HttpRequest::clearHistory — Clear history

Descrição

public void HttpRequest::clearHistory ( void )

Clears all history messages.

Nota:

History is only logged if recordHistory was enabled.

HttpRequest::addSslOptions
HttpRequest::__construct
The HttpRequest


HttpRequest constructor

HttpRequest::clearHistory
HttpRequest::enableCookies
The HttpRequest
PHP Manual

HttpRequest::__construct

(PECL pecl_http >= 0.10.0)

HttpRequest::__construct — HttpRequest constructor

Descrição

public void HttpRequest::__construct ([ string $url [, int $request_method = HTTP_METH_GET [, array $options ]]] )

Instantiate a new HttpRequest object.

Parâmetros

url

the target request url

request_method

the request method to use

options

an associative array with request options

Erros

Throws HttpException.

HttpRequest::clearHistory
HttpRequest::enableCookies
The HttpRequest


Enable cookies

HttpRequest::__construct
HttpRequest::getContentType
The HttpRequest
PHP Manual

HttpRequest::enableCookies

(PECL pecl_http >= 1.0.0)

HttpRequest::enableCookies — Enable cookies

Descrição

public bool HttpRequest::enableCookies ( void )

Enable automatic sending of received cookies.

Nota:

Note that custom set cookies will be sent anyway.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::__construct
HttpRequest::getContentType
The HttpRequest


Get content type

HttpRequest::enableCookies
HttpRequest::getCookies
The HttpRequest
PHP Manual

HttpRequest::getContentType

(PECL pecl_http >= 0.10.0)

HttpRequest::getContentType — Get content type

Descrição

public string HttpRequest::getContentType ( void )

Get the previously set content type.

Valor Retornado

Returns the previously set content type as string.

HttpRequest::enableCookies
HttpRequest::getCookies
The HttpRequest


Get cookies

HttpRequest::getContentType
HttpRequest::getHeaders
The HttpRequest
PHP Manual

HttpRequest::getCookies

(PECL pecl_http >= 0.10.0)

HttpRequest::getCookies — Get cookies

Descrição

public array HttpRequest::getCookies ( void )

Get previously set cookies.

Valor Retornado

Returns an associative array containing any previously set cookies.

HttpRequest::getContentType
HttpRequest::getHeaders
The HttpRequest


Get headers

HttpRequest::getCookies
HttpRequest::getHistory
The HttpRequest
PHP Manual

HttpRequest::getHeaders

(PECL pecl_http >= 0.10.0)

HttpRequest::getHeaders — Get headers

Descrição

public array HttpRequest::getHeaders ( void )

Get previously set request headers.

Valor Retornado

Returns an associative array containing all currently set headers.

HttpRequest::getCookies
HttpRequest::getHistory
The HttpRequest


Get history

HttpRequest::getHeaders
HttpRequest::getMethod
The HttpRequest
PHP Manual

HttpRequest::getHistory

(PECL pecl_http >= 0.15.0)

HttpRequest::getHistory — Get history

Descrição

public HttpMessage HttpRequest::getHistory ( void )

Get all sent requests and received responses as an HttpMessage object.

If you want to record history, set the instance variable HttpRequest::recordHistory to TRUE.

The returned object references the last received response, use HttpMessage::getParentMessage() to access the data of previously sent requests and received responses.

Valor Retornado

Returns an HttpMessage object representing the complete request/response history.

Erros

Throws HttpRuntimeException.

HttpRequest::getHeaders
HttpRequest::getMethod
The HttpRequest


Get method

HttpRequest::getHistory
HttpRequest::getOptions
The HttpRequest
PHP Manual

HttpRequest::getMethod

(PECL pecl_http >= 0.10.0)

HttpRequest::getMethod — Get method

Descrição

public int HttpRequest::getMethod ( void )

Get the previously set request method.

Valor Retornado

Returns the currently set request method.

HttpRequest::getHistory
HttpRequest::getOptions
The HttpRequest


Get options

HttpRequest::getMethod
HttpRequest::getPostFields
The HttpRequest
PHP Manual

HttpRequest::getOptions

(PECL pecl_http >= 0.10.0)

HttpRequest::getOptions — Get options

Descrição

public array HttpRequest::getOptions ( void )

Get currently set options.

Valor Retornado

Returns an associative array containing currently set options.

HttpRequest::getMethod
HttpRequest::getPostFields
The HttpRequest


Get post fields

HttpRequest::getOptions
HttpRequest::getPostFiles
The HttpRequest
PHP Manual

HttpRequest::getPostFields

(PECL pecl_http >= 0.10.0)

HttpRequest::getPostFields — Get post fields

Descrição

public array HttpRequest::getPostFields ( void )

Get previously set POST data.

Parâmetros

Valor Retornado

Returns the currently set post fields as associative array.

HttpRequest::getOptions
HttpRequest::getPostFiles
The HttpRequest


Get post files

HttpRequest::getPostFields
HttpRequest::getPutData
The HttpRequest
PHP Manual

HttpRequest::getPostFiles

(PECL pecl_http >= 0.10.0)

HttpRequest::getPostFiles — Get post files

Descrição

public array HttpRequest::getPostFiles ( void )

Get all previously added POST files.

Valor Retornado

Returns an array containing currently set post files.

HttpRequest::getPostFields
HttpRequest::getPutData
The HttpRequest


Get put data

HttpRequest::getPostFiles
HttpRequest::getPutFile
The HttpRequest
PHP Manual

HttpRequest::getPutData

(PECL pecl_http >= 0.25.0)

HttpRequest::getPutData — Get put data

Descrição

public string HttpRequest::getPutData ( void )

Get previously set PUT data.

Valor Retornado

Returns a string containing the currently set PUT data.

HttpRequest::getPostFiles
HttpRequest::getPutFile
The HttpRequest


Get put file

HttpRequest::getPutData
HttpRequest::getQueryData
The HttpRequest
PHP Manual

HttpRequest::getPutFile

(PECL pecl_http >= 0.10.0)

HttpRequest::getPutFile — Get put file

Descrição

public string HttpRequest::getPutFile ( void )

Get previously set put file.

Valor Retornado

Returns a string containing the path to the currently set put file.

HttpRequest::getPutData
HttpRequest::getQueryData
The HttpRequest


Get query data

HttpRequest::getPutFile
HttpRequest::getRawPostData
The HttpRequest
PHP Manual

HttpRequest::getQueryData

(PECL pecl_http >= 0.10.0)

HttpRequest::getQueryData — Get query data

Descrição

public string HttpRequest::getQueryData ( void )

Get the current query data in form of an urlencoded query string.

Valor Retornado

Returns a string containing the urlencoded query.

HttpRequest::getPutFile
HttpRequest::getRawPostData
The HttpRequest


Get raw post data

HttpRequest::getQueryData
HttpRequest::getRawRequestMessage
The HttpRequest
PHP Manual

HttpRequest::getRawPostData

(PECL pecl_http 0.14.0-1.4.1)

HttpRequest::getRawPostData — Get raw post data

Descrição

public string HttpRequest::getRawPostData ( void )

Get previously set raw post data.

Parâmetros

Valor Retornado

Returns a string containing the currently set raw post data.

HttpRequest::getQueryData
HttpRequest::getRawRequestMessage
The HttpRequest


Get raw request message

HttpRequest::getRawPostData
HttpRequest::getRawResponseMessage
The HttpRequest
PHP Manual

HttpRequest::getRawRequestMessage

(PECL pecl_http >= 0.21.0)

HttpRequest::getRawRequestMessage — Get raw request message

Descrição

public string HttpRequest::getRawRequestMessage ( void )

Get sent HTTP message.

Parâmetros

Valor Retornado

Returns an HttpMessage in a form of a string.

HttpRequest::getRawPostData
HttpRequest::getRawResponseMessage
The HttpRequest


Get raw response message

HttpRequest::getRawRequestMessage
HttpRequest::getRequestMessage
The HttpRequest
PHP Manual

HttpRequest::getRawResponseMessage

(PECL pecl_http >= 0.21.0)

HttpRequest::getRawResponseMessage — Get raw response message

Descrição

public string HttpRequest::getRawResponseMessage ( void )

Get the entire HTTP response.

Parâmetros

Valor Retornado

Returns the complete web server response, including the headers in a form of a string.

HttpRequest::getRawRequestMessage
HttpRequest::getRequestMessage
The HttpRequest


Get request message

HttpRequest::getRawResponseMessage
HttpRequest::getResponseBody
The HttpRequest
PHP Manual

HttpRequest::getRequestMessage

(PECL pecl_http >= 0.11.0)

HttpRequest::getRequestMessage — Get request message

Descrição

public HttpMessage HttpRequest::getRequestMessage ( void )

Get sent HTTP message.

If redirects were allowed and several responses were received, the data references the last received response. Use HttpMessage::getParentMessage() to access the data of previously sent requests within this request cycle.

Nota:

Note that the internal request message is immutable, that means that the request message received through HttpRequest::getRequestMessage() will always look the same for the same request, regardless of any changes you may have made to the returned object.

Valor Retornado

Returns an HttpMessage object representing the sent request.

Erros

Throws HttpMalformedHeadersException, HttpEncodingException.

HttpRequest::getRawResponseMessage
HttpRequest::getResponseBody
The HttpRequest


Get response body

HttpRequest::getRequestMessage
HttpRequest::getResponseCode
The HttpRequest
PHP Manual

HttpRequest::getResponseBody

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseBody — Get response body

Descrição

public string HttpRequest::getResponseBody ( void )

Get the response body after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response.

Parâmetros

Valor Retornado

Returns a string containing the response body.

HttpRequest::getRequestMessage
HttpRequest::getResponseCode
The HttpRequest


Get response code

HttpRequest::getResponseBody
HttpRequest::getResponseCookies
The HttpRequest
PHP Manual

HttpRequest::getResponseCode

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseCode — Get response code

Descrição

public int HttpRequest::getResponseCode ( void )

Get the response code after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response.

Valor Retornado

Returns an int representing the response code.

HttpRequest::getResponseBody
HttpRequest::getResponseCookies
The HttpRequest


Get response cookie(s)

HttpRequest::getResponseCode
HttpRequest::getResponseData
The HttpRequest
PHP Manual

HttpRequest::getResponseCookies

(PECL pecl_http >= 0.23.0)

HttpRequest::getResponseCookies — Get response cookie(s)

Descrição

public array HttpRequest::getResponseCookies ([ int $flags = 0 [, array $allowed_extras ]] )

Get response cookie(s) after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response.

Parâmetros

flags

http_parse_cookie() flags

allowed_extras

allowed keys treated as extra information instead of cookie names

Valor Retornado

Returns an array of stdClass objects like http_parse_cookie() would return.

HttpRequest::getResponseCode
HttpRequest::getResponseData
The HttpRequest


Get response data

HttpRequest::getResponseCookies
HttpRequest::getResponseHeader
The HttpRequest
PHP Manual

HttpRequest::getResponseData

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseData — Get response data

Descrição

public array HttpRequest::getResponseData ( void )

* Get all response data after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response.

Valor Retornado

Returns an associative array with the key "headers" containing an associative array holding all response headers, as well as the key "body" containing a string with the response body.

HttpRequest::getResponseCookies
HttpRequest::getResponseHeader
The HttpRequest


Get response header(s)

HttpRequest::getResponseData
HttpRequest::getResponseInfo
The HttpRequest
PHP Manual

HttpRequest::getResponseHeader

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseHeader — Get response header(s)

Descrição

public mixed HttpRequest::getResponseHeader ([ string $name ] )

Get response header(s) after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response.

Parâmetros

name

header to read; if empty, all response headers will be returned

Valor Retornado

Returns either a string with the value of the header matching name if requested, FALSE on failure, or an associative array containing all response headers.

HttpRequest::getResponseData
HttpRequest::getResponseInfo
The HttpRequest


Get response info

HttpRequest::getResponseHeader
HttpRequest::getResponseMessage
The HttpRequest
PHP Manual

HttpRequest::getResponseInfo

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseInfo — Get response info

Descrição

public mixed HttpRequest::getResponseInfo ([ string $name ] )

Get response info after the request has been sent.

See http_get() for a full list of returned info.

If redirects were allowed and several responses were received, the data references the last received response.

Parâmetros

name

the info to read; if empty or omitted, an associative array containing all available info will be returned

Valor Retornado

Returns either a scalar containing the value of the info matching name if requested, FALSE on failure, or an associative array containing all available info.

HttpRequest::getResponseHeader
HttpRequest::getResponseMessage
The HttpRequest


Get response message

HttpRequest::getResponseInfo
HttpRequest::getResponseStatus
The HttpRequest
PHP Manual

HttpRequest::getResponseMessage

(PECL pecl_http >= 0.10.0)

HttpRequest::getResponseMessage — Get response message

Descrição

public HttpMessage HttpRequest::getResponseMessage ( void )

Get the full response as HttpMessage object after the request has been sent.

If redirects were allowed and several responses were received, the data references the last received response. Use HttpMessage::getParentMessage() to access the data of previously received responses within this request cycle.

Valor Retornado

Returns an HttpMessage object of the response.

Erros

Throws HttpException, HttpRuntimeException.

HttpRequest::getResponseInfo
HttpRequest::getResponseStatus
The HttpRequest


Get response status

HttpRequest::getResponseMessage
HttpRequest::getSslOptions
The HttpRequest
PHP Manual

HttpRequest::getResponseStatus

(PECL pecl_http >= 0.23.0)

HttpRequest::getResponseStatus — Get response status

Descrição

public string HttpRequest::getResponseStatus ( void )

Get the response status (i.e. the string after the response code) after the message has been sent.

Valor Retornado

Returns a string containing the response status text.

HttpRequest::getResponseMessage
HttpRequest::getSslOptions
The HttpRequest


Get ssl options

HttpRequest::getResponseStatus
HttpRequest::getUrl
The HttpRequest
PHP Manual

HttpRequest::getSslOptions

(PECL pecl_http >= 0.10.0)

HttpRequest::getSslOptions — Get ssl options

Descrição

public array HttpRequest::getSslOptions ( void )

Get previously set SSL options.

Valor Retornado

Returns an associative array containing any previously set SSL options.

HttpRequest::getResponseStatus
HttpRequest::getUrl
The HttpRequest


Get url

HttpRequest::getSslOptions
HttpRequest::resetCookies
The HttpRequest
PHP Manual

HttpRequest::getUrl

(PECL pecl_http >= 0.10.0)

HttpRequest::getUrl — Get url

Descrição

public string HttpRequest::getUrl ( void )

Get the previously set request URL.

Valor Retornado

Returns the currently set request url as string.

HttpRequest::getSslOptions
HttpRequest::resetCookies
The HttpRequest


Reset cookies

HttpRequest::getUrl
HttpRequest::send
The HttpRequest
PHP Manual

HttpRequest::resetCookies

(PECL pecl_http >= 1.0.0)

HttpRequest::resetCookies — Reset cookies

Descrição

public bool HttpRequest::resetCookies ([ bool $session_only = false ] )

Reset all automatically received/sent cookies.

Nota:

Note that custom set cookies are not affected.

Parâmetros

session_only

whether only session cookies should be reset (needs libcurl >= v7.15.4, else libcurl >= v7.14.1)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::getUrl
HttpRequest::send
The HttpRequest


Send request

HttpRequest::resetCookies
HttpRequest::setContentType
The HttpRequest
PHP Manual

HttpRequest::send

(PECL pecl_http >= 0.10.0)

HttpRequest::send — Send request

Descrição

public HttpMessage HttpRequest::send ( void )

Send the HTTP request.

Nota:

While an exception may be thrown, the transfer could have succeeded at least partially, so you might want to check the return values of various HttpRequest::getResponse*() methods.

Valor Retornado

Returns the received response as HttpMessage object.

Erros

Throws HttpRuntimeException, HttpRequestException, HttpMalformedHeaderException, HttpEncodingException.

Exemplos

Exemplo #1 GET example

<?php
$r = new HttpRequest('http://example.com/feed.rss', HttpRequest::METH_GET);
$r->setOptions(array('lastmodified' => filemtime('local.rss')));
$r->addQueryData(array('category' => 3));
try {
    $r->send();
    if ($r->getResponseCode() == 200) {
        file_put_contents('local.rss', $r->getResponseBody());
    }
} catch (HttpException $ex) {
    echo $ex;
}
?>

Exemplo #2 POST example

<?php
$r = new HttpRequest('http://example.com/form.php', HttpRequest::METH_POST);
$r->setOptions(array('cookies' => array('lang' => 'de')));
$r->addPostFields(array('user' => 'mike', 'pass' => 's3c|r3t'));
$r->addPostFile('image', 'profile.jpg', 'image/jpeg');
try {
    echo $r->send()->getBody();
} catch (HttpException $ex) {
    echo $ex;
}
?>

HttpRequest::resetCookies
HttpRequest::setContentType
The HttpRequest


Set content type

HttpRequest::send
HttpRequest::setCookies
The HttpRequest
PHP Manual

HttpRequest::setContentType

(PECL pecl_http >= 0.10.0)

HttpRequest::setContentType — Set content type

Descrição

public bool HttpRequest::setContentType ( string $content_type )

Set the content type the post request should have.

Parâmetros

content_type

the content type of the request (primary/secondary)

Valor Retornado

Returns TRUE on success, or FALSE if the content type does not seem to contain a primary and a secondary part.

HttpRequest::send
HttpRequest::setCookies
The HttpRequest


Set cookies

HttpRequest::setContentType
HttpRequest::setHeaders
The HttpRequest
PHP Manual

HttpRequest::setCookies

(PECL pecl_http >= 0.12.0)

HttpRequest::setCookies — Set cookies

Descrição

public bool HttpRequest::setCookies ([ array $cookies ] )

Set custom cookies.

Parâmetros

cookies

an associative array as parameter containing cookie name/value pairs; if empty or omitted, all previously set cookies will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setContentType
HttpRequest::setHeaders
The HttpRequest


Set headers

HttpRequest::setCookies
HttpRequest::setMethod
The HttpRequest
PHP Manual

HttpRequest::setHeaders

(PECL pecl_http >= 0.12.0)

HttpRequest::setHeaders — Set headers

Descrição

public bool HttpRequest::setHeaders ([ array $headers ] )

Set request header name/value pairs.

Parâmetros

headers

an associative array as parameter containing header name/value pairs; if empty or omitted, all previously set headers will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setCookies
HttpRequest::setMethod
The HttpRequest


Set method

HttpRequest::setHeaders
HttpRequest::setOptions
The HttpRequest
PHP Manual

HttpRequest::setMethod

(PECL pecl_http >= 0.10.0)

HttpRequest::setMethod — Set method

Descrição

public bool HttpRequest::setMethod ( int $request_method )

Set the request method.

Parâmetros

request_method

the request method to use

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setHeaders
HttpRequest::setOptions
The HttpRequest


Set options

HttpRequest::setMethod
HttpRequest::setPostFields
The HttpRequest
PHP Manual

HttpRequest::setOptions

(PECL pecl_http >= 0.10.0)

HttpRequest::setOptions — Set options

Descrição

public bool HttpRequest::setOptions ([ array $options ] )

Set the request options to use.

Veja a lista completa de opções da requisição.

Parâmetros

options

an associative array, which values will overwrite the currently set request options; if empty or omitted, the options of the HttpRequest object will be reset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setMethod
HttpRequest::setPostFields
The HttpRequest


Set post fields

HttpRequest::setOptions
HttpRequest::setPostFiles
The HttpRequest
PHP Manual

HttpRequest::setPostFields

(PECL pecl_http >= 0.10.0)

HttpRequest::setPostFields — Set post fields

Descrição

public bool HttpRequest::setPostFields ( array $post_data )

Set the POST data entries, overwriting previously set POST data.

Affects only POST and custom requests.

Parâmetros

post_data

an associative array containing the post fields; if empty, the post data will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setOptions
HttpRequest::setPostFiles
The HttpRequest


Set post files

HttpRequest::setPostFields
HttpRequest::setPutData
The HttpRequest
PHP Manual

HttpRequest::setPostFiles

(PECL pecl_http >= 0.10.0)

HttpRequest::setPostFiles — Set post files

Descrição

public bool HttpRequest::setPostFiles ( array $post_files )

Set files to post, overwriting previously set post files.

Affects only POST and requests. Cannot be used with raw post data.

Parâmetros

post_files

an array containing the files to post; if empty, the post files will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setPostFields
HttpRequest::setPutData
The HttpRequest


Set put data

HttpRequest::setPostFiles
HttpRequest::setPutFile
The HttpRequest
PHP Manual

HttpRequest::setPutData

(PECL pecl_http >= 0.25.0)

HttpRequest::setPutData — Set put data

Descrição

public bool HttpRequest::setPutData ([ string $put_data ] )

Set PUT data to send, overwriting previously set PUT data.

Affects only PUT requests.

Only either PUT data or PUT file can be used for each request. PUT data has higher precedence and will be used even if a PUT file is set.

Parâmetros

put_data

the data to upload

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setPostFiles
HttpRequest::setPutFile
The HttpRequest


Set put file

HttpRequest::setPutData
HttpRequest::setQueryData
The HttpRequest
PHP Manual

HttpRequest::setPutFile

(PECL pecl_http >= 0.10.0)

HttpRequest::setPutFile — Set put file

Descrição

public bool HttpRequest::setPutFile ([ string $file = "" ] )

Set file to put. Affects only PUT requests.

Parâmetros

file

the path to the file to send; if empty or omitted the put file will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setPutData
HttpRequest::setQueryData
The HttpRequest


Set query data

HttpRequest::setPutFile
HttpRequest::setRawPostData
The HttpRequest
PHP Manual

HttpRequest::setQueryData

(PECL pecl_http >= 0.10.0)

HttpRequest::setQueryData — Set query data

Descrição

public bool HttpRequest::setQueryData ( mixed $query_data )

Set the URL query parameters to use, overwriting previously set query parameters.

Affects any request types.

Parâmetros

query_data

a string or associative array parameter containing the pre-encoded query string or to be encoded query fields; if empty, the query data will be unset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setPutFile
HttpRequest::setRawPostData
The HttpRequest


Set raw post data

HttpRequest::setQueryData
HttpRequest::setSslOptions
The HttpRequest
PHP Manual

HttpRequest::setRawPostData

(PECL pecl_http 0.14.0-1.4.1)

HttpRequest::setRawPostData — Set raw post data

Descrição

public bool HttpRequest::setRawPostData ([ string $raw_post_data ] )

Set raw post data to send, overwriting previously set raw post data. Don't forget to specify a content type. Affects only POST and custom requests.

Only either post fields or raw post data can be used for each request. Raw post data has higher precedence and will be used even if post fields are set.

Parâmetros

raw_post_data

raw post data

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setQueryData
HttpRequest::setSslOptions
The HttpRequest


Set ssl options

HttpRequest::setRawPostData
HttpRequest::setUrl
The HttpRequest
PHP Manual

HttpRequest::setSslOptions

(PECL pecl_http >= 0.10.0)

HttpRequest::setSslOptions — Set ssl options

Descrição

public bool HttpRequest::setSslOptions ([ array $options ] )

Set SSL options.

Parâmetros

options

an associative array containing any SSL specific options; if empty or omitted, the SSL options will be reset

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setRawPostData
HttpRequest::setUrl
The HttpRequest


Set URL

HttpRequest::setSslOptions
The HttpRequestPool class
The HttpRequest
PHP Manual

HttpRequest::setUrl

(PECL pecl_http >= 0.10.0)

HttpRequest::setUrl — Set URL

Descrição

public bool HttpRequest::setUrl ( string $url )

Set the request URL.

Parâmetros

url

the request url

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequest::setSslOptions
The HttpRequestPool class
The HttpRequest


The HttpRequestPool class

Sinopse da classe

HttpRequestPool implements Iterator , Countable {
public bool attach ( HttpRequest $request )
void __construct ([ HttpRequest $request ] )
void __destruct ( void )
bool detach ( HttpRequest $request )
array getAttachedRequests ( void )
array getFinishedRequests ( void )
void reset ( void )
bool send ( void )
protected bool socketPerform ( void )
protected bool socketSelect ([ float $timeout = 0 ] )
}

Class Members

Propriedades

The HttpRequestPool class does not have any properties.

Constantes pré-definidas

The HttpRequestPool class does not have any constants.

Índice

  • HttpRequestPool::attach — Attach HttpRequest
  • HttpRequestPool::__construct — HttpRequestPool constructor
  • HttpRequestPool::__destruct — HttpRequestPool destructor
  • HttpRequestPool::detach — Detach HttpRequest
  • HttpRequestPool::getAttachedRequests — Get attached requests
  • HttpRequestPool::getFinishedRequests — Get finished requests
  • HttpRequestPool::reset — Reset request pool
  • HttpRequestPool::send — Send all requests
  • HttpRequestPool::socketPerform — Perform socket actions
  • HttpRequestPool::socketSelect — Perform socket select
HttpRequest::setUrl
HttpRequestPool::attach
HTTP


Attach HttpRequest

The HttpRequestPool class
HttpRequestPool::__construct
The HttpRequestPool class
PHP Manual

HttpRequestPool::attach

(PECL pecl_http >= 0.10.0)

HttpRequestPool::attach — Attach HttpRequest

Descrição

public bool HttpRequestPool::attach ( HttpRequest $request )

Attach an HttpRequest object to this HttpRequestPool.

Aviso

Set all options prior attaching!

Parâmetros

request

an HttpRequest object not already attached to any HttpRequestPool object

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws HttpInvalidParamException, HttpRequestException, HttpRequestPoolException, HttpEncodingException.

The HttpRequestPool class
HttpRequestPool::__construct
The HttpRequestPool class


HttpRequestPool constructor

HttpRequestPool::attach
HttpRequestPool::__destruct
The HttpRequestPool class
PHP Manual

HttpRequestPool::__construct

(PECL pecl_http >= 0.10.0)

HttpRequestPool::__construct — HttpRequestPool constructor

Descrição

void HttpRequestPool::__construct ([ HttpRequest $request ] )

Instantiate a new HttpRequestPool object. An HttpRequestPool is able to send several HttpRequests in parallel.

Accepts virtually infinite optional parameters each referencing an HttpRequest object.

Parâmetros

request

HttpRequest object to attach

Erros

Throws HttpRequestPoolException (HttpRequestException, HttpInvalidParamException).

Exemplos

Exemplo #1 A HttpRequestPool example

<?php
try {
    $pool = new HttpRequestPool(
        new HttpRequest('http://www.google.com/', HttpRequest::METH_HEAD),
        new HttpRequest('http://www.php.net/', HttpRequest::METH_HEAD)
    );
    $pool->send();
    foreach($pool as $request) {
        printf("%s is %s (%d)\n",
            $request->getUrl(),
            $request->getResponseCode() ? 'alive' : 'not alive',
            $request->getResponseCode()
        );
    }
} catch (HttpException $e) {
    echo $e;
}
?>

HttpRequestPool::attach
HttpRequestPool::__destruct
The HttpRequestPool class


HttpRequestPool destructor

HttpRequestPool::__construct
HttpRequestPool::detach
The HttpRequestPool class
PHP Manual

HttpRequestPool::__destruct

(PECL pecl_http >= 0.10.0)

HttpRequestPool::__destruct — HttpRequestPool destructor

Descrição

void HttpRequestPool::__destruct ( void )

Clean up HttpRequestPool object.

HttpRequestPool::__construct
HttpRequestPool::detach
The HttpRequestPool class


Detach HttpRequest

HttpRequestPool::__destruct
HttpRequestPool::getAttachedRequests
The HttpRequestPool class
PHP Manual

HttpRequestPool::detach

(PECL pecl_http >= 0.10.0)

HttpRequestPool::detach — Detach HttpRequest

Descrição

bool HttpRequestPool::detach ( HttpRequest $request )

Detach an HttpRequest object from this HttpRequestPool.

Parâmetros

request

an HttpRequest object attached to this HttpRequestPool object

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws HttpInvalidParamException, HttpRequestPoolException.

HttpRequestPool::__destruct
HttpRequestPool::getAttachedRequests
The HttpRequestPool class


Get attached requests

HttpRequestPool::detach
HttpRequestPool::getFinishedRequests
The HttpRequestPool class
PHP Manual

HttpRequestPool::getAttachedRequests

(PECL pecl_http >= 0.16.0)

HttpRequestPool::getAttachedRequests — Get attached requests

Descrição

array HttpRequestPool::getAttachedRequests ( void )

Get attached HttpRequest objects.

Parâmetros

Valor Retornado

Returns an array containing all currently attached HttpRequest objects.

HttpRequestPool::detach
HttpRequestPool::getFinishedRequests
The HttpRequestPool class


Get finished requests

HttpRequestPool::getAttachedRequests
HttpRequestPool::reset
The HttpRequestPool class
PHP Manual

HttpRequestPool::getFinishedRequests

(PECL pecl_http >= 0.16.0)

HttpRequestPool::getFinishedRequests — Get finished requests

Descrição

array HttpRequestPool::getFinishedRequests ( void )

Get attached HttpRequest objects that already have finished their work.

Parâmetros

Valor Retornado

Returns an array containing all attached HttpRequest objects that already have finished their work.

HttpRequestPool::getAttachedRequests
HttpRequestPool::reset
The HttpRequestPool class


Reset request pool

HttpRequestPool::getFinishedRequests
HttpRequestPool::send
The HttpRequestPool class
PHP Manual

HttpRequestPool::reset

(PECL pecl_http >= 0.10.0)

HttpRequestPool::reset — Reset request pool

Descrição

void HttpRequestPool::reset ( void )

Detach all attached HttpRequest objects.

HttpRequestPool::getFinishedRequests
HttpRequestPool::send
The HttpRequestPool class


Send all requests

HttpRequestPool::reset
HttpRequestPool::socketPerform
The HttpRequestPool class
PHP Manual

HttpRequestPool::send

(PECL pecl_http >= 0.10.0)

HttpRequestPool::send — Send all requests

Descrição

bool HttpRequestPool::send ( void )

Send all attached HttpRequest objects in parallel.

Parâmetros

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws HttpRequestPoolException (HttpSocketException, HttpRequestException, HttpMalformedHeaderException).

HttpRequestPool::reset
HttpRequestPool::socketPerform
The HttpRequestPool class


Perform socket actions

HttpRequestPool::send
HttpRequestPool::socketSelect
The HttpRequestPool class
PHP Manual

HttpRequestPool::socketPerform

(PECL pecl_http >= 0.15.0)

HttpRequestPool::socketPerform — Perform socket actions

Descrição

protected bool HttpRequestPool::socketPerform ( void )

Returns TRUE until each request has finished its transaction.

Valor Retornado

Returns TRUE until each request has finished its transaction.

Exemplos

Exemplo #1 A HttpRequestPool::socketPerform() example

<?php
class MyPool extends HttpRequestPool
{
    public function send()
    {
        while ($this->socketPerform()) {
            if (!$this->socketSelect()) {
                throw new HttpSocketExcpetion;
            }
        }
    }

    protected final function socketPerform()
    {
        $result = parent::socketPerform();
        foreach ($this->getFinishedRequests() as $r) {
            $this->detach($r);
            // handle response of finished request
        }
        return $result;
    }
}
?>

HttpRequestPool::send
HttpRequestPool::socketSelect
The HttpRequestPool class


Perform socket select

HttpRequestPool::socketPerform
The HttpResponse
The HttpRequestPool class
PHP Manual

HttpRequestPool::socketSelect

(PECL pecl_http >= 0.10.0)

HttpRequestPool::socketSelect — Perform socket select

Descrição

protected bool HttpRequestPool::socketSelect ([ float $timeout = 0 ] )

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

HttpRequestPool::socketPerform
The HttpResponse
The HttpRequestPool class


The HttpResponse

Sinopse da classe

HttpResponse {
static void capture ( void )
static int getBufferSize ( void )
static bool getCache ( void )
static string getCacheControl ( void )
static string getContentDisposition ( void )
static string getContentType ( void )
static string getData ( void )
static string getETag ( void )
static string getFile ( void )
static bool getGzip ( void )
static mixed getHeader ([ string $name ] )
static int getLastModified ( void )
static string getRequestBody ( void )
static resource getRequestBodyStream ( void )
static array getRequestHeaders ( void )
static resource getStream ( void )
static double getThrottleDelay ( void )
static string guessContentType ( string $magic_file [, int $magic_mode = MAGIC_MIME ] )
static void redirect ([ string $url [, array $params [, bool $session = false [, int $status ]]]] )
static bool send ([ bool $clean_ob = true ] )
static bool setBufferSize ( int $bytes )
static bool setCache ( bool $cache )
static bool setCacheControl ( string $control [, int $max_age = 0 [, bool $must_revalidate = true ]] )
static bool setContentDisposition ( string $filename [, bool $inline = false ] )
static bool setContentType ( string $content_type )
static bool setData ( mixed $data )
static bool setETag ( string $etag )
static bool setFile ( string $file )
static bool setGzip ( bool $gzip )
static bool setHeader ( string $name [, mixed $value [, bool $replace = true ]] )
static bool setLastModified ( int $timestamp )
static bool setStream ( resource $stream )
static bool setThrottleDelay ( float $seconds )
static bool status ( int $status )
}

Class Members

Propriedades

Static Properties
Modifiers | Type | Name | Description
protected | boolean | cache | whether caching the response should be attempted
protected | boolean | gzip | whether the sent entity should be gzip'ed on the fly
protected | string | eTag | the generated or custom ETag
protected | integer | lastModified | the generated or custom timestamp of last modification
protected | string | cacheControl | Cache-Control setting
protected | string | contentType | the Content-Type of the sent entity
protected | string | contentDisposition | the Content-Disposition of the sent entity
protected | integer | bufferSize | the chunk buffer size used for throttling
protected | double | throttleDelay | the seconds to delay when throttling

Constantes pré-definidas

Type | Name | Description
integer | REDIRECT | guess applicable redirect method
integer | REDIRECT_PERM | permanent redirect (301 Moved permanently)
integer | REDIRECT_FOUND | standard redirect (302 Found)
integer | REDIRECT_POST | redirect applicable to POST requests (303 See other)
integer | REDIRECT_PROXY | proxy redirect (305 Use proxy)
integer | REDIRECT_TEMP | temporary redirect (307 Temporary Redirect)

Índice

  • HttpResponse::capture — Capture script output
  • HttpResponse::getBufferSize — Get buffer size
  • HttpResponse::getCache — Get cache
  • HttpResponse::getCacheControl — Get cache control
  • HttpResponse::getContentDisposition — Get content disposition
  • HttpResponse::getContentType — Get content type
  • HttpResponse::getData — Get data
  • HttpResponse::getETag — Get ETag
  • HttpResponse::getFile — Get file
  • HttpResponse::getGzip — Get gzip
  • HttpResponse::getHeader — Get header
  • HttpResponse::getLastModified — Get last modified
  • HttpResponse::getRequestBody — Get request body
  • HttpResponse::getRequestBodyStream — Get request body stream
  • HttpResponse::getRequestHeaders — Get request headers
  • HttpResponse::getStream — Get Stream
  • HttpResponse::getThrottleDelay — Get throttle delay
  • HttpResponse::guessContentType — Guess content type
  • HttpResponse::redirect — Redirect
  • HttpResponse::send — Send response
  • HttpResponse::setBufferSize — Set buffer size
  • HttpResponse::setCache — Set cache
  • HttpResponse::setCacheControl — Set cache control
  • HttpResponse::setContentDisposition — Set content disposition
  • HttpResponse::setContentType — Set content type
  • HttpResponse::setData — Set data
  • HttpResponse::setETag — Set ETag
  • HttpResponse::setFile — Set file
  • HttpResponse::setGzip — Set gzip
  • HttpResponse::setHeader — Set header
  • HttpResponse::setLastModified — Set last modified
  • HttpResponse::setStream — Set stream
  • HttpResponse::setThrottleDelay — Set throttle delay
  • HttpResponse::status — Send HTTP response status
HttpRequestPool::socketSelect
HttpResponse::capture
HTTP


Capture script output

The HttpResponse
HttpResponse::getBufferSize
The HttpResponse
PHP Manual

HttpResponse::capture

(PECL pecl_http >= 0.10.0)

HttpResponse::capture — Capture script output

Descrição

static void HttpResponse::capture ( void )

Capture script output.

Exemplos

Exemplo #1 A HttpResponse::capture() example

<?php
HttpResponse::setCache(true);
HttpResponse::capture();
// script follows
?>

Veja Também

  • HttpResponse::send() - Send response

The HttpResponse
HttpResponse::getBufferSize
The HttpResponse


Get buffer size

HttpResponse::capture
HttpResponse::getCache
The HttpResponse
PHP Manual

HttpResponse::getBufferSize

(PECL pecl_http >= 0.10.0)

HttpResponse::getBufferSize — Get buffer size

Descrição

static int HttpResponse::getBufferSize ( void )

Get current buffer size.

Valor Retornado

Returns an int representing the current buffer size in bytes.

Veja Também

  • HttpResponse::setBufferSize() - Set buffer size
  • HttpResponse::getThrottleDelay() - Get throttle delay
  • HttpResponse::setThrottleDelay() - Set throttle delay

HttpResponse::capture
HttpResponse::getCache
The HttpResponse


Get cache

HttpResponse::getBufferSize
HttpResponse::getCacheControl
The HttpResponse
PHP Manual

HttpResponse::getCache

(PECL pecl_http >= 0.10.0)

HttpResponse::getCache — Get cache

Descrição

static bool HttpResponse::getCache ( void )

Get current caching setting.

Valor Retornado

Returns TRUE if caching should be attempted, else FALSE.

Veja Também

  • HttpResponse::setCacheControl() - Set cache control
  • HttpResponse::getCacheControl() - Get cache control
  • HttpResponse::setCache() - Set cache

HttpResponse::getBufferSize
HttpResponse::getCacheControl
The HttpResponse


Get cache control

HttpResponse::getCache
HttpResponse::getContentDisposition
The HttpResponse
PHP Manual

HttpResponse::getCacheControl

(PECL pecl_http >= 0.10.0)

HttpResponse::getCacheControl — Get cache control

Descrição

static string HttpResponse::getCacheControl ( void )

Get current Cache-Control header setting.

Valor Retornado

Returns the current cache control setting as a string like sent in a header.

Veja Também

  • HttpResponse::setCacheControl() - Set cache control
  • HttpResponse::setCache() - Set cache
  • HttpResponse::getCache() - Get cache

HttpResponse::getCache
HttpResponse::getContentDisposition
The HttpResponse


Get content disposition

HttpResponse::getCacheControl
HttpResponse::getContentType
The HttpResponse
PHP Manual

HttpResponse::getContentDisposition

(PECL pecl_http >= 0.10.0)

HttpResponse::getContentDisposition — Get content disposition

Descrição

static string HttpResponse::getContentDisposition ( void )

Get current Content-Disposition setting.

Valor Retornado

Returns the current content disposition as string like sent in a header.

Veja Também

  • HttpResponse::setContentDisposition() - Set content disposition
  • HttpResponse::getContentType() - Get content type
  • HttpResponse::setContentType() - Set content type

HttpResponse::getCacheControl
HttpResponse::getContentType
The HttpResponse


Get content type

HttpResponse::getContentDisposition
HttpResponse::getData
The HttpResponse
PHP Manual

HttpResponse::getContentType

(PECL pecl_http >= 0.10.0)

HttpResponse::getContentType — Get content type

Descrição

static string HttpResponse::getContentType ( void )

Get current Content-Type header setting.

Valor Retornado

Returns the currently set content type as string.

Veja Também

  • HttpResponse::getContentDisposition() - Get content disposition
  • HttpResponse::setContentDisposition() - Set content disposition
  • HttpResponse::setContentType() - Set content type
  • HttpResponse::guessContentType() - Guess content type

HttpResponse::getContentDisposition
HttpResponse::getData
The HttpResponse


Get data

HttpResponse::getContentType
HttpResponse::getETag
The HttpResponse
PHP Manual

HttpResponse::getData

(PECL pecl_http >= 0.10.0)

HttpResponse::getData — Get data

Descrição

static string HttpResponse::getData ( void )

Get the previously set data to be sent.

Valor Retornado

Returns a string containing the previously set data to send.

Veja Também

  • HttpResponse::setData() - Set data
  • HttpResponse::getFile() - Get file
  • HttpResponse::setFile() - Set file
  • HttpResponse::getStream() - Get Stream
  • HttpResponse::setStream() - Set stream

HttpResponse::getContentType
HttpResponse::getETag
The HttpResponse


Get ETag

HttpResponse::getData
HttpResponse::getFile
The HttpResponse
PHP Manual

HttpResponse::getETag

(PECL pecl_http >= 0.10.0)

HttpResponse::getETag — Get ETag

Descrição

static string HttpResponse::getETag ( void )

Get calculated or previously set custom ETag.

Valor Retornado

Returns the calculated or previously set ETag as unquoted string.

Veja Também

  • HttpResponse::getLastModified() - Get last modified
  • HttpResponse::setLastModified() - Set last modified
  • HttpResponse::setETag() - Set ETag

HttpResponse::getData
HttpResponse::getFile
The HttpResponse


Get file

HttpResponse::getETag
HttpResponse::getGzip
The HttpResponse
PHP Manual

HttpResponse::getFile

(PECL pecl_http >= 0.10.0)

HttpResponse::getFile — Get file

Descrição

static string HttpResponse::getFile ( void )

Get the previously set file to be sent.

Valor Retornado

Returns the previously set path to the file to send as string.

Veja Também

  • HttpResponse::getData() - Get data
  • HttpResponse::setData() - Set data
  • HttpResponse::setFile() - Set file
  • HttpResponse::getStream() - Get Stream
  • HttpResponse::setStream() - Set stream

HttpResponse::getETag
HttpResponse::getGzip
The HttpResponse


Get gzip

HttpResponse::getFile
HttpResponse::getHeader
The HttpResponse
PHP Manual

HttpResponse::getGzip

(PECL pecl_http >= 0.10.0)

HttpResponse::getGzip — Get gzip

Descrição

static bool HttpResponse::getGzip ( void )

Get current gzip'ing setting.

Valor Retornado

Returns TRUE if GZip compression is enabled, else FALSE.

Veja Também

  • HttpResponse::setGzip() - Set gzip

HttpResponse::getFile
HttpResponse::getHeader
The HttpResponse


Get header

HttpResponse::getGzip
HttpResponse::getLastModified
The HttpResponse
PHP Manual

HttpResponse::getHeader

(PECL pecl_http >= 0.12.0)

HttpResponse::getHeader — Get header

Descrição

static mixed HttpResponse::getHeader ([ string $name ] )

Get header(s) about to be sent.

Nota:

Isto não deve funcionar de acordo com o esperado se você esta usando as seguintes SAPI(s): Apache2 w/PHP < 5.1.3.

Parâmetros

name

specifies the name of the header to read; if empty or omitted, an associative array with all headers will be returned

Valor Retornado

Returns either a string containing the value of the header matching name, FALSE on failure, or an associative array with all headers.

Veja Também

  • HttpResponse::setHeader() - Set header

HttpResponse::getGzip
HttpResponse::getLastModified
The HttpResponse


Get last modified

HttpResponse::getHeader
HttpResponse::getRequestBody
The HttpResponse
PHP Manual

HttpResponse::getLastModified

(PECL pecl_http >= 0.12.0)

HttpResponse::getLastModified — Get last modified

Descrição

static int HttpResponse::getLastModified ( void )

Get calculated or previously set custom Last-Modified date.

Valor Retornado

Returns the calculated or previously set Unix timestamp.

Veja Também

  • HttpResponse::setLastModified() - Set last modified
  • HttpResponse::getETag() - Get ETag
  • HttpResponse::setETag() - Set ETag

HttpResponse::getHeader
HttpResponse::getRequestBody
The HttpResponse


Get request body

HttpResponse::getLastModified
HttpResponse::getRequestBodyStream
The HttpResponse
PHP Manual

HttpResponse::getRequestBody

(PECL pecl_http >= 0.10.0)

HttpResponse::getRequestBody — Get request body

Descrição

static string HttpResponse::getRequestBody ( void )

Esta função é um apelido para: http_get_request_body().

HttpResponse::getLastModified
HttpResponse::getRequestBodyStream
The HttpResponse


Get request body stream

HttpResponse::getRequestBody
HttpResponse::getRequestHeaders
The HttpResponse
PHP Manual

HttpResponse::getRequestBodyStream

(PECL pecl_http >= 0.10.0)

HttpResponse::getRequestBodyStream — Get request body stream

Descrição

static resource HttpResponse::getRequestBodyStream ( void )

Esta função é um apelido para: http_get_request_body_stream().

HttpResponse::getRequestBody
HttpResponse::getRequestHeaders
The HttpResponse


Get request headers

HttpResponse::getRequestBodyStream
HttpResponse::getStream
The HttpResponse
PHP Manual

HttpResponse::getRequestHeaders

(PECL pecl_http >= 0.10.0)

HttpResponse::getRequestHeaders — Get request headers

Descrição

static array HttpResponse::getRequestHeaders ( void )

Esta função é um apelido para: http_get_request_headers().

HttpResponse::getRequestBodyStream
HttpResponse::getStream
The HttpResponse


Get Stream

HttpResponse::getRequestHeaders
HttpResponse::getThrottleDelay
The HttpResponse
PHP Manual

HttpResponse::getStream

(PECL pecl_http >= 0.10.0)

HttpResponse::getStream — Get Stream

Descrição

static resource HttpResponse::getStream ( void )

Get the previously set resource to be sent.

Parâmetros

Valor Retornado

Returns the previously set resource.

Veja Também

  • HttpResponse::getData() - Get data
  • HttpResponse::setData() - Set data
  • HttpResponse::getFile() - Get file
  • HttpResponse::setFile() - Set file
  • HttpResponse::setStream() - Set stream

HttpResponse::getRequestHeaders
HttpResponse::getThrottleDelay
The HttpResponse


Get throttle delay

HttpResponse::getStream
HttpResponse::guessContentType
The HttpResponse
PHP Manual

HttpResponse::getThrottleDelay

(PECL pecl_http >= 0.10.0)

HttpResponse::getThrottleDelay — Get throttle delay

Descrição

static double HttpResponse::getThrottleDelay ( void )

Get the current throttle delay.

Valor Retornado

Returns a double representing the throttle delay in seconds.

Veja Também

  • HttpResponse::getBufferSize() - Get buffer size
  • HttpResponse::setBufferSize() - Set buffer size
  • HttpResponse::setThrottleDelay() - Set throttle delay

HttpResponse::getStream
HttpResponse::guessContentType
The HttpResponse


Guess content type

HttpResponse::getThrottleDelay
HttpResponse::redirect
The HttpResponse
PHP Manual

HttpResponse::guessContentType

(PECL pecl_http >= 0.13.0)

HttpResponse::guessContentType — Guess content type

Descrição

static string HttpResponse::guessContentType ( string $magic_file [, int $magic_mode = MAGIC_MIME ] )

Attempts to guess the content type of supplied payload through libmagic.

If the attempt is successful, the guessed Content-Type will automatically be set as response Content-Type.

Parâmetros

magic_file

specifies the magic.mime database to use

magic_mode

flags for libmagic

Valor Retornado

Returns the guessed content type on success or FALSE on failure.

Erros

Throws HttpRuntimeException, HttpInvalidParamException.

Veja Também

  • HttpResponse::getContentType() - Get content type
  • HttpResponse::setContentType() - Set content type

HttpResponse::getThrottleDelay
HttpResponse::redirect
The HttpResponse


Redirect

HttpResponse::guessContentType
HttpResponse::send
The HttpResponse
PHP Manual

HttpResponse::redirect

(PECL pecl_http >= 0.10.0)

HttpResponse::redirect — Redirect

Descrição

static void HttpResponse::redirect ([ string $url [, array $params [, bool $session = false [, int $status ]]]] )

Esta função é um apelido para: http_redirect().

HttpResponse::guessContentType
HttpResponse::send
The HttpResponse


Send response

HttpResponse::redirect
HttpResponse::setBufferSize
The HttpResponse
PHP Manual

HttpResponse::send

(PECL pecl_http >= 0.10.0)

HttpResponse::send — Send response

Descrição

static bool HttpResponse::send ([ bool $clean_ob = true ] )

Finally send the entity.

A successful caching attempt will exit PHP, and write a log entry if the Definições INI http.log.cache is set. Veja a Definições INI http.force_exit para saber o que "exits" significa.

Parâmetros

clean_ob

whether to destroy all previously started output handlers and their buffers

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A HttpResponse::send() example

<?php
HttpResponse::setCache(true);
HttpResponse::setContentType('application/pdf');
HttpResponse::setContentDisposition("$user.pdf", false);
HttpResponse::setFile('sheet.pdf');
HttpResponse::send();
?>

Veja Também

  • HttpResponse::capture() - Capture script output

HttpResponse::redirect
HttpResponse::setBufferSize
The HttpResponse


Set buffer size

HttpResponse::send
HttpResponse::setCache
The HttpResponse
PHP Manual

HttpResponse::setBufferSize

(PECL pecl_http >= 0.10.0)

HttpResponse::setBufferSize — Set buffer size

Descrição

static bool HttpResponse::setBufferSize ( int $bytes )

Sets the send buffer size of the throttling mechanism.

Nota: Provides a basic throttling mechanism, which will yield the current process respectively thread until the entity has been completely sent.

Nota:

Isto não deve funcionar de acordo com o esperado se você esta usando as seguintes SAPI(s): FastCGI.

Parâmetros

bytes

the chunk size in bytes

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getBufferSize() - Get buffer size
  • HttpResponse::getThrottleDelay() - Get throttle delay
  • HttpResponse::setThrottleDelay() - Set throttle delay

HttpResponse::send
HttpResponse::setCache
The HttpResponse


Set cache

HttpResponse::setBufferSize
HttpResponse::setCacheControl
The HttpResponse
PHP Manual

HttpResponse::setCache

(PECL pecl_http >= 0.10.0)

HttpResponse::setCache — Set cache

Descrição

static bool HttpResponse::setCache ( bool $cache )

Whether it should be attempted to cache the entity.

This will result in necessary caching headers and checks of clients If-Modified-Since and If-None-Match headers. If one of those headers matches a 304 Not Modified status code will be issued.

Nota:

If you're using sessions, be sure that you set session.cache_limiter to something more appropriate than "no-cache"!

Parâmetros

cache

whether caching should be attempted

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::setCacheControl() - Set cache control
  • HttpResponse::getCacheControl() - Get cache control
  • HttpResponse::getCachel()

HttpResponse::setBufferSize
HttpResponse::setCacheControl
The HttpResponse


Set cache control

HttpResponse::setCache
HttpResponse::setContentDisposition
The HttpResponse
PHP Manual

HttpResponse::setCacheControl

(PECL pecl_http >= 0.10.0)

HttpResponse::setCacheControl — Set cache control

Descrição

static bool HttpResponse::setCacheControl ( string $control [, int $max_age = 0 [, bool $must_revalidate = true ]] )

Define a custom Cache-Control header, usually being private or public;

Parâmetros

control

the primary cache control setting

max_age

the max-age in seconds, suggesting how long the cache entry is valid on the client side

must_revalidate

whether the cached entity should be revalidated by the client for every request

Valor Retornado

Returns TRUE on success, or FALSE if control does not match one of public, private or no-cache.

Veja Também

  • HttpResponse::getCacheControl() - Get cache control
  • HttpResponse::setCache() - Set cache
  • HttpResponse::getCache() - Get cache

HttpResponse::setCache
HttpResponse::setContentDisposition
The HttpResponse


Set content disposition

HttpResponse::setCacheControl
HttpResponse::setContentType
The HttpResponse
PHP Manual

HttpResponse::setContentDisposition

(PECL pecl_http >= 0.10.0)

HttpResponse::setContentDisposition — Set content disposition

Descrição

static bool HttpResponse::setContentDisposition ( string $filename [, bool $inline = false ] )

Set the Content-Disposition. O cabeçalho Content-Disposition é muito útil se os dados atualmente enviados vem de um arquivo ou algo similar, que possa ser "salvo" pelo cliente/usuário (ex. pelo "Salvar como ..." do navegador).

Parâmetros

filename

the file name the "Save as..." dialog should display

inline

if set to true and the user agent knows how to handle the content type, it will probably not cause the popup window to be shown

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getContentDisposition() - Get content disposition
  • HttpResponse::getContentType() - Get content type
  • HttpResponse::setContentType() - Set content type

HttpResponse::setCacheControl
HttpResponse::setContentType
The HttpResponse


Set content type

HttpResponse::setContentDisposition
HttpResponse::setData
The HttpResponse
PHP Manual

HttpResponse::setContentType

(PECL pecl_http >= 0.10.0)

HttpResponse::setContentType — Set content type

Descrição

static bool HttpResponse::setContentType ( string $content_type )

Set the Content-Type of the sent entity.

Parâmetros

content_type

the content type of the sent entity (primary/secondary)

Valor Retornado

Returns TRUE on success, or FALSE if the content type does not seem to contain a primary and secondary content type part.

Veja Também

  • HttpResponse::getContentDisposition() - Get content disposition
  • HttpResponse::setContentDisposition() - Set content disposition
  • HttpResponse::getContentType() - Get content type
  • HttpResponse::guessContentType() - Guess content type

HttpResponse::setContentDisposition
HttpResponse::setData
The HttpResponse


Set data

HttpResponse::setContentType
HttpResponse::setETag
The HttpResponse
PHP Manual

HttpResponse::setData

(PECL pecl_http >= 0.10.0)

HttpResponse::setData — Set data

Descrição

static bool HttpResponse::setData ( mixed $data )

Set the data to be sent.

Nota: ETag Last-Modified previamente calculado ou definido serão recalculados e redefinidos.

Parâmetros

data

data to send

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getData() - Get data
  • HttpResponse::getFile() - Get file
  • HttpResponse::setFile() - Set file
  • HttpResponse::getStream() - Get Stream
  • HttpResponse::setStream() - Set stream

HttpResponse::setContentType
HttpResponse::setETag
The HttpResponse


Set ETag

HttpResponse::setData
HttpResponse::setFile
The HttpResponse
PHP Manual

HttpResponse::setETag

(PECL pecl_http >= 0.10.0)

HttpResponse::setETag — Set ETag

Descrição

static bool HttpResponse::setETag ( string $etag )

Set a custom ETag. Use this only if you know what you're doing.

Parâmetros

etag

unquoted string as parameter containing the ETag

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getLastModified() - Get last modified
  • HttpResponse::setLastModified() - Set last modified
  • HttpResponse::getETag() - Get ETag

HttpResponse::setData
HttpResponse::setFile
The HttpResponse


Set file

HttpResponse::setETag
HttpResponse::setGzip
The HttpResponse
PHP Manual

HttpResponse::setFile

(PECL pecl_http >= 0.10.0)

HttpResponse::setFile — Set file

Descrição

static bool HttpResponse::setFile ( string $file )

Set the file to be sent.

Nota: ETag Last-Modified previamente calculado ou definido serão recalculados e redefinidos.

Parâmetros

file

the path to the file to send

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getData() - Get data
  • HttpResponse::setData() - Set data
  • HttpResponse::getFile() - Get file
  • HttpResponse::getStream() - Get Stream
  • HttpResponse::setStream() - Set stream

HttpResponse::setETag
HttpResponse::setGzip
The HttpResponse


Set gzip

HttpResponse::setFile
HttpResponse::setHeader
The HttpResponse
PHP Manual

HttpResponse::setGzip

(PECL pecl_http >= 0.10.0)

HttpResponse::setGzip — Set gzip

Descrição

static bool HttpResponse::setGzip ( bool $gzip )

Enable on-thy-fly gzip'ing of the sent entity.

Parâmetros

gzip

whether GZip compression should be enabled

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getGzip() - Get gzip

HttpResponse::setFile
HttpResponse::setHeader
The HttpResponse


Set header

HttpResponse::setGzip
HttpResponse::setLastModified
The HttpResponse
PHP Manual

HttpResponse::setHeader

(PECL pecl_http >= 0.12.0)

HttpResponse::setHeader — Set header

Descrição

static bool HttpResponse::setHeader ( string $name [, mixed $value [, bool $replace = true ]] )

Send an HTTP header.

Parâmetros

name

the name of the header

value

the value of the header; if not set, no header with this name will be sent

replace

whether an existing header should be replaced

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getHeader() - Get header

HttpResponse::setGzip
HttpResponse::setLastModified
The HttpResponse


Set last modified

HttpResponse::setHeader
HttpResponse::setStream
The HttpResponse
PHP Manual

HttpResponse::setLastModified

(PECL pecl_http >= 0.12.0)

HttpResponse::setLastModified — Set last modified

Descrição

static bool HttpResponse::setLastModified ( int $timestamp )

Set a custom Last-Modified date.

Parâmetros

timestamp

Unix timestamp representing the last modification time of the sent entity

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getLastModified() - Get last modified
  • HttpResponse::getETag() - Get ETag
  • HttpResponse::setETag() - Set ETag

HttpResponse::setHeader
HttpResponse::setStream
The HttpResponse


Set stream

HttpResponse::setLastModified
HttpResponse::setThrottleDelay
The HttpResponse
PHP Manual

HttpResponse::setStream

(PECL pecl_http >= 0.10.0)

HttpResponse::setStream — Set stream

Descrição

static bool HttpResponse::setStream ( resource $stream )

Set the resource to be sent.

Nota: ETag Last-Modified previamente calculado ou definido serão recalculados e redefinidos.

Parâmetros

stream

already opened stream from which the data to send will be read

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getData() - Get data
  • HttpResponse::setData() - Set data
  • HttpResponse::getFile() - Get file
  • HttpResponse::setFile() - Set file
  • HttpResponse::getStream() - Get Stream

HttpResponse::setLastModified
HttpResponse::setThrottleDelay
The HttpResponse


Set throttle delay

HttpResponse::setStream
HttpResponse::status
The HttpResponse
PHP Manual

HttpResponse::setThrottleDelay

(PECL pecl_http >= 0.10.0)

HttpResponse::setThrottleDelay — Set throttle delay

Descrição

static bool HttpResponse::setThrottleDelay ( float $seconds )

Sets the throttle delay.

Nota: Provides a basic throttling mechanism, which will yield the current process respectively thread until the entity has been completely sent.

Nota:

Isto não deve funcionar de acordo com o esperado se você esta usando as seguintes SAPI(s): FastCGI.

Parâmetros

seconds

seconds to sleep after each chunk sent

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • HttpResponse::getBufferSize() - Get buffer size
  • HttpResponse::setBufferSize() - Set buffer size
  • HttpResponse::getThrottleDelay() - Get throttle delay

HttpResponse::setStream
HttpResponse::status
The HttpResponse


Send HTTP response status

HttpResponse::setThrottleDelay
Funções para HTTP
The HttpResponse
PHP Manual

HttpResponse::status

(PECL pecl_http >= 0.12.0)

HttpResponse::status — Send HTTP response status

Descrição

static bool HttpResponse::status ( int $status )

Esta função é um apelido para: http_send_status().

HttpResponse::setThrottleDelay
Funções para HTTP
The HttpResponse


Funções para HTTP

Funções nativas relacionadas a HTTP anteriormente listada nesta página podem ser encontradas na categoria networking.

As seguintes funções não precisam do módulo HTTP para estarem presente: header(), headers_list(), headers_sent(), setcookie() e setrawcookie().

Grupo de funções

Caching

  • http_cache_etag()
  • http_cache_last_modified()

Encodings

  • http_chunked_decode()
  • http_deflate()
  • http_inflate()

Miscellaneous

  • http_build_cookie()
  • http_date()
  • http_get_request_body_stream()
  • http_get_request_body()
  • http_get_request_headers()
  • http_match_etag()
  • http_match_modified()
  • http_match_request_header()
  • http_support()

Negotiation

  • http_negotiate_charset()
  • http_negotiate_content_type()
  • http_negotiate_language()

Outputhandlers

  • ob_deflatehandler()
  • ob_etaghandler()
  • ob_inflatehandler()

Parsers

  • http_parse_cookie()
  • http_parse_headers()
  • http_parse_message()
  • http_parse_params()

Requests

  • http_get()
  • http_head()
  • http_post_data()
  • http_post_fields()
  • http_put_data()
  • http_put_file()
  • http_put_stream()
  • http_request_body_encode()
  • http_request_method_exists()
  • http_request_method_name()
  • http_request_method_register()
  • http_request_method_unregister()
  • http_request()

Responses

  • http_redirect()
  • http_send_content_disposition()
  • http_send_content_type()
  • http_send_data()
  • http_send_file()
  • http_send_last_modified()
  • http_send_status()
  • http_send_stream()
  • http_throttle()

URLs

  • http_build_str()
  • http_build_url()

Persistent Handles

  • http_persistent_handles_count()
  • http_persistent_handles_ident()
  • http_persistent_handles_clean()

Índice

  • http_cache_etag — Caching by ETag
  • http_cache_last_modified — Caching by last modification
  • http_chunked_decode — Decode chunked-encoded data
  • http_deflate — Deflate data
  • http_inflate — Inflate data
  • http_build_cookie — Build cookie string
  • http_date — Compose HTTP RFC compliant date
  • http_get_request_body_stream — Get request body as stream
  • http_get_request_body — Get request body as string
  • http_get_request_headers — Get request headers as array
  • http_match_etag — Match ETag
  • http_match_modified — Match last modification
  • http_match_request_header — Match any header
  • http_support — Check built-in HTTP support
  • http_negotiate_charset — Negotiate clients preferred character set
  • http_negotiate_content_type — Negotiate clients preferred content type
  • http_negotiate_language — Negotiate clients preferred language
  • ob_deflatehandler — Deflate output handler
  • ob_etaghandler — ETag output handler
  • ob_inflatehandler — Inflate output handler
  • http_parse_cookie — Parse HTTP cookie
  • http_parse_headers — Parse HTTP headers
  • http_parse_message — Parse HTTP messages
  • http_parse_params — Parse parameter list
  • http_persistent_handles_clean — Clean up persistent handles
  • http_persistent_handles_count — Stat persistent handles
  • http_persistent_handles_ident — Get/set ident of persistent handles
  • http_get — Perform GET request
  • http_head — Perform HEAD request
  • http_post_data — Perform POST request with pre-encoded data
  • http_post_fields — Perform POST request with data to be encoded
  • http_put_data — Perform PUT request with data
  • http_put_file — Perform PUT request with file
  • http_put_stream — Perform PUT request with stream
  • http_request_body_encode — Encode request body
  • http_request_method_exists — Check whether request method exists
  • http_request_method_name — Get request method name
  • http_request_method_register — Register request method
  • http_request_method_unregister — Unregister request method
  • http_request — Perform custom request
  • http_redirect — Issue HTTP redirect
  • http_send_content_disposition — Send Content-Disposition
  • http_send_content_type — Send Content-Type
  • http_send_data — Send arbitrary data
  • http_send_file — Send file
  • http_send_last_modified — Send Last-Modified
  • http_send_status — Send HTTP response status
  • http_send_stream — Send stream
  • http_throttle — HTTP throttling
  • http_build_str — Build query string
  • http_build_url — Build a URL
HttpResponse::status
http_cache_etag
HTTP


Caching by ETag

Funções para HTTP
http_cache_last_modified
Funções para HTTP
PHP Manual

http_cache_etag

(PECL pecl_http >= 0.1.0)

http_cache_etag — Caching by ETag

Descrição

bool http_cache_etag ([ string $etag ] )

Attempts to cache the sent entity by its ETag, either supplied or generated by the hash algorithm specified by the Definições INI http.etag.mode.

If the clients If-None-Match header matches the supplied/calculated ETag, the body is considered cached on the clients side and a 304 Not Modified status code is issued.

A log entry is written to the cache log if the Definições INI http.log.cache is set and the cache attempt was successful.

Nota: Esta função pode ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

If this function is used outside the http_send_*() API, it facilitates the ob_etaghandler().

Parâmetros

etag

custom ETag

Valor Retornado

Retorna FALSE ou exits em caso de sucesso with 304 Not Modified if the entity is cached. Veja a Definições INI http.force_exit para saber o que "exits" significa.

Exemplos

Exemplo #1 A http_cache_etag() example

<?php
http_cache_etag();
http_send_data("data");
?>

Veja Também

  • http_cache_last_modified() - Caching by last modification
  • ob_etaghandler() - ETag output handler
  • http_match_etag() - Match ETag
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

Funções para HTTP
http_cache_last_modified
Funções para HTTP


Caching by last modification

http_cache_etag
http_chunked_decode
Funções para HTTP
PHP Manual

http_cache_last_modified

(PECL pecl_http >= 0.1.0)

http_cache_last_modified — Caching by last modification

Descrição

bool http_cache_last_modified ([ int $timestamp_or_expires ] )

Attempts to cache the sent entity by its last modification date.

If the supplied argument is greater than 0, it is handled as timestamp and will be sent as date of last modification. If it is 0 or omitted, the current time will be sent as Last-Modified date. If it's negative, it is handled as expiration time in seconds, which means that if the requested last modification date is not between the calculated timespan, the Last-Modified header is updated and the actual body will be sent.

A log entry will be written to the cache log if the Definições INI http.log.cache is set and the cache attempt was successful.

Nota: Esta função pode ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

Parâmetros

timestamp_or_expires

Unix timestamp

Valor Retornado

Retorna FALSE ou exits em caso de sucesso with 304 Not Modified if the entity is cached. Veja a Definições INI http.force_exit para saber o que "exits" significa.

Exemplos

Exemplo #1 A http_cache_last_modified() example

Caching for 5 seconds.

<?php
http_cache_last_modified(-5);
printf("%s\n", http_date());
?>

Veja Também

  • http_cache_etag() - Caching by ETag
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_cache_etag
http_chunked_decode
Funções para HTTP


Decode chunked-encoded data

http_cache_last_modified
http_deflate
Funções para HTTP
PHP Manual

http_chunked_decode

(PECL pecl_http >= 0.1.0)

http_chunked_decode — Decode chunked-encoded data

Descrição

string http_chunked_decode ( string $encoded )

Decodes a string which is HTTP-chunked encoded.

Parâmetros

encoded

chunked encoded string

Valor Retornado

Returns the decoded string on success or FALSE on failure.

Exemplos

Exemplo #1 A http_chunked_decode() example

<?php
$string = "".
    "05\r\n".
    "this \r\n".
    "07\r\n".
    "string \r\n".
    "12\r\n".
    "is chunked encoded\r\n".
    "01\n\r\n".
    "00";
echo http_chunked_decode($string);
?>

O exemplo acima irá imprimir:

this string is chunked encoded

http_cache_last_modified
http_deflate
Funções para HTTP


Deflate data

http_chunked_decode
http_inflate
Funções para HTTP
PHP Manual

http_deflate

(PECL pecl_http >= 0.15.0)

http_deflate — Deflate data

Descrição

string http_deflate ( string $data [, int $flags = 0 ] )

Compress data with gzip, zlib AKA deflate or raw deflate encoding.

See the deflate constants table for possible values for the flags parameter.

Parâmetros

data

String containing the data that should be encoded

flags

deflate options

Valor Retornado

Returns the encoded string on success, or NULL on failure.

Veja Também

  • http_inflate() - Inflate data
  • HttpDeflateStream

http_chunked_decode
http_inflate
Funções para HTTP


Inflate data

http_deflate
http_build_cookie
Funções para HTTP
PHP Manual

http_inflate

(PECL pecl_http >= 0.15.0)

http_inflate — Inflate data

Descrição

string http_inflate ( string $data )

Decompress data compressed with either gzip, deflate AKA zlib or raw deflate encoding.

Parâmetros

data

string containing the compressed data

Valor Retornado

Returns the decoded string on success, or NULL on failure.

Veja Também

  • http_deflate() - Deflate data
  • HttpInflateStream

http_deflate
http_build_cookie
Funções para HTTP


Build cookie string

http_inflate
http_date
Funções para HTTP
PHP Manual

http_build_cookie

(PECL pecl_http >= 1.2.0)

http_build_cookie — Build cookie string

Descrição

string http_build_cookie ( array $cookie )

Build a cookie string from an array/object like returned by http_parse_cookie().

Parâmetros

cookie

a cookie list like returned from http_parse_cookie()

Valor Retornado

Returns the cookie(s) as string.

Veja Também

  • http_parse_cookie() - Parse HTTP cookie

http_inflate
http_date
Funções para HTTP


Compose HTTP RFC compliant date

http_build_cookie
http_get_request_body_stream
Funções para HTTP
PHP Manual

http_date

(PECL pecl_http >= 0.1.0)

http_date — Compose HTTP RFC compliant date

Descrição

string http_date ([ int $timestamp ] )

Compose a valid HTTP date regarding RFC 1123 looking like: Wed, 22 Dec 2004 11:34:47 GMT.

Parâmetros

timestamp

Unix timestamp; current time if omitted

Valor Retornado

Returns the HTTP date as string.

Veja Também

  • date() - Formata a data e a hora local

http_build_cookie
http_get_request_body_stream
Funções para HTTP


Get request body as stream

http_date
http_get_request_body
Funções para HTTP
PHP Manual

http_get_request_body_stream

(PECL pecl_http >= 0.22.0)

http_get_request_body_stream — Get request body as stream

Descrição

resource http_get_request_body_stream ( void )

Create a stream to read the raw request body (e.g. POST or PUT data).

This function can only be used once if the request method was another than POST.

Parâmetros

Valor Retornado

Returns the raw request body as stream on success or NULL on failure.

Veja Também

  • http_get_request_body() - Get request body as string
  • http_get_request_headers() - Get request headers as array
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_date
http_get_request_body
Funções para HTTP


Get request body as string

http_get_request_body_stream
http_get_request_headers
Funções para HTTP
PHP Manual

http_get_request_body

(PECL pecl_http >= 0.10.0)

http_get_request_body — Get request body as string

Descrição

string http_get_request_body ( void )

Get the raw request body (e.g. POST or PUT data).

This function can not be used after http_get_request_body_stream() if the request method was another than POST.

Parâmetros

Valor Retornado

Returns the raw request body as string on success or NULL on failure.

Veja Também

  • http_get_request_body_stream() - Get request body as stream
  • http_get_request_headers() - Get request headers as array
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_get_request_body_stream
http_get_request_headers
Funções para HTTP


Get request headers as array

http_get_request_body
http_match_etag
Funções para HTTP
PHP Manual

http_get_request_headers

(PECL pecl_http >= 0.10.0)

http_get_request_headers — Get request headers as array

Descrição

array http_get_request_headers ( void )

Get a list of incoming HTTP headers.

Parâmetros

Valor Retornado

Returns an associative array of incoming request headers.

Veja Também

  • http_get_request_body() - Get request body as string
  • http_get_request_body_stream() - Get request body as stream
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_get_request_body
http_match_etag
Funções para HTTP


Match ETag

http_get_request_headers
http_match_modified
Funções para HTTP
PHP Manual

http_match_etag

(PECL pecl_http >= 0.1.0)

http_match_etag — Match ETag

Descrição

bool http_match_etag ( string $etag [, bool $for_range = false ] )

Matches the given ETag against the clients If-Match resp. If-None-Match HTTP headers.

Parâmetros

etag

the ETag to match

for_range

if set to TRUE, the header usually used to validate HTTP ranges will be checked

Valor Retornado

Returns TRUE if ETag matches or the header contained the asterisk ("*"), else FALSE.

Veja Também

  • http_match_last_modified()
  • http_match_request_header() - Match any header
  • http_cache_etag() - Caching by ETag
  • http_cache_last_modified() - Caching by last modification
  • ob_etaghandler() - ETag output handler

http_get_request_headers
http_match_modified
Funções para HTTP


Match last modification

http_match_etag
http_match_request_header
Funções para HTTP
PHP Manual

http_match_modified

(PECL pecl_http >= 0.1.0)

http_match_modified — Match last modification

Descrição

bool http_match_modified ([ int $timestamp = -1 [, bool $for_range = false ]] )

Matches the given Unix timestamp against the clients If-Modified-Since resp. If-Unmodified-Since HTTP headers.

Parâmetros

timestamp

Unix timestamp; current time, if omitted

for_range

if set to TRUE, the header usually used to validate HTTP ranges will be checked

Valor Retornado

Returns TRUE if timestamp represents an earlier date than the header, else FALSE.

Veja Também

  • http_match_etag() - Match ETag
  • http_match_request_header() - Match any header
  • http_cache_etag() - Caching by ETag
  • http_cache_last_modified() - Caching by last modification

http_match_etag
http_match_request_header
Funções para HTTP


Match any header

http_match_modified
http_support
Funções para HTTP
PHP Manual

http_match_request_header

(PECL pecl_http >= 0.10.0)

http_match_request_header — Match any header

Descrição

bool http_match_request_header ( string $header , string $value [, bool $match_case = false ] )

Match an incoming HTTP header.

Parâmetros

header

the header name (case-insensitive)

value

the header value that should be compared

match_case

whether the value should be compared case sensitively

Valor Retornado

Returns TRUE if header value matches, else FALSE.

Veja Também

  • http_match_etag() - Match ETag
  • http_match_last_modified()

http_match_modified
http_support
Funções para HTTP


Check built-in HTTP support

http_match_request_header
http_negotiate_charset
Funções para HTTP
PHP Manual

http_support

(PECL pecl_http >= 0.15.0)

http_support — Check built-in HTTP support

Descrição

int http_support ([ int $feature = 0 ] )

Check for features that require external libraries.

See the feature support constants table for possible values for the feature argument.

Parâmetros

feature

feature to probe for

Valor Retornado

Returns integer, whether requested feature is supported, or a bitmask with all supported features if feature was omitted.

Exemplos

Exemplo #1 A http_support() example

<?php
if (!http_support(HTTP_SUPPORT_REQUESTS)) {
    die("Need HTTP request support!\n");
}
?>

http_match_request_header
http_negotiate_charset
Funções para HTTP


Negotiate clients preferred character set

http_support
http_negotiate_content_type
Funções para HTTP
PHP Manual

http_negotiate_charset

(PECL pecl_http >= 0.1.0)

http_negotiate_charset — Negotiate clients preferred character set

Descrição

string http_negotiate_charset ( array $supported [, array &$result ] )

This function negotiates the clients preferred charset based on its Accept-Charset HTTP header. The qualifier is recognized and charsets without qualifier are rated highest.

Parâmetros

supported

array containing the supported charsets as values

result

will be filled with an array containing the negotiation results

Valor Retornado

Returns the negotiated charset or the default charset (i.e. first array entry) if none match.

Exemplos

Exemplo #1 Using http_negotiate_charset()

<?php
$charsets = array(
        'iso-8859-1', // default
        'iso-8859-2',
        'iso-8859-15',
        'utf-8'
);

$pref = http_negotiate_charset($charsets, $result);

if (strcmp($pref, 'iso-8859-1')) {
        iconv_set_encoding('internal_encoding', 'iso-8859-1');
        iconv_set_encoding('output_encoding', $pref);
        ob_start('ob_iconv_handler');
}

print_r($result);
?>

http_support
http_negotiate_content_type
Funções para HTTP


Negotiate clients preferred content type

http_negotiate_charset
http_negotiate_language
Funções para HTTP
PHP Manual

http_negotiate_content_type

(PECL pecl_http >= 0.19.0)

http_negotiate_content_type — Negotiate clients preferred content type

Descrição

string http_negotiate_content_type ( array $supported [, array &$result ] )

This function negotiates the clients preferred content type based on its Accept HTTP header. The qualifier is recognized and content types without qualifier are rated highest.

Parâmetros

supported

array containing the supported content types as values

result

will be filled with an array containing the negotiation results

Valor Retornado

Returns the negotiated content type or the default content type (i.e. first array entry) if none match.

Exemplos

Exemplo #1 Using http_negotiate_content_type()

<?php
$content_types = array('application/xhtml+xml', 'text/html');
http_send_content_type(http_negotiate_content_type($content_types));
?>

http_negotiate_charset
http_negotiate_language
Funções para HTTP


Negotiate clients preferred language

http_negotiate_content_type
ob_deflatehandler
Funções para HTTP
PHP Manual

http_negotiate_language

(PECL pecl_http >= 0.1.0)

http_negotiate_language — Negotiate clients preferred language

Descrição

string http_negotiate_language ( array $supported [, array &$result ] )

This function negotiates the clients preferred language based on its Accept-Language HTTP header. The qualifier is recognized and languages without qualifier are rated highest. The qualifier will be decreased by 10% for partial matches (i.e. matching primary language).

Parâmetros

supported

array containing the supported languages as values

result

will be filled with an array containing the negotiation results

Valor Retornado

Returns the negotiated language or the default language (i.e. first array entry) if none match.

Exemplos

Exemplo #1 Using http_negotiate_language()

<?php
$langs = array(
        'en-US',// default
        'fr',
        'fr-FR',
        'de',
        'de-DE',
        'de-AT',
        'de-CH',
);

include './langs/'. http_negotiate_language($langs, $result) .'.php';

print_r($result);
?>

http_negotiate_content_type
ob_deflatehandler
Funções para HTTP


Deflate output handler

http_negotiate_language
ob_etaghandler
Funções para HTTP
PHP Manual

ob_deflatehandler

(PECL pecl_http >= 0.21.0)

ob_deflatehandler — Deflate output handler

Descrição

string ob_deflatehandler ( string $data , int $mode )

Para usar com ob_start().

Nota: Este manipulador de saída só pode ser usado uma vez.

The deflate output buffer handler can only be used once.

It conflicts with ob_gzhandler() and zlib.output_compression as well and should not be used after mbstring extension's mb_output_handler() and session extension's URL-Rewriter (AKA session.use_trans_sid).

Veja Também

  • ob_inflatehandler() - Inflate output handler
  • ob_start() - Ativa o buffer de saída

http_negotiate_language
ob_etaghandler
Funções para HTTP


ETag output handler

ob_deflatehandler
ob_inflatehandler
Funções para HTTP
PHP Manual

ob_etaghandler

(PECL pecl_http >= 0.10.0)

ob_etaghandler — ETag output handler

Descrição

string ob_etaghandler ( string $data , int $mode )

Para usar com ob_start().

Output buffer handler generating an ETag with the hash algorithm specified with the Definições INI http.etag.mode.

This output handler is used by http_cache_etag().

Veja Também

  • http_cache_etag() - Caching by ETag
  • http_match_etag() - Match ETag

ob_deflatehandler
ob_inflatehandler
Funções para HTTP


Inflate output handler

ob_etaghandler
http_parse_cookie
Funções para HTTP
PHP Manual

ob_inflatehandler

(PECL pecl_http >= 0.21.0)

ob_inflatehandler — Inflate output handler

Descrição

string ob_inflatehandler ( string $data , int $mode )

Para usar com ob_start().

Same restrictions as with ob_deflatehandler() apply.

Veja Também

  • ob_deflatehandler() - Deflate output handler
  • ob_start() - Ativa o buffer de saída

ob_etaghandler
http_parse_cookie
Funções para HTTP


Parse HTTP cookie

ob_inflatehandler
http_parse_headers
Funções para HTTP
PHP Manual

http_parse_cookie

(PECL pecl_http >= 0.20.0)

http_parse_cookie — Parse HTTP cookie

Descrição

object http_parse_cookie ( string $cookie [, int $flags [, array $allowed_extras ]] )

Parses HTTP cookies like sent in a response into a struct.

Parâmetros

cookie

string containing the value of a Set-Cookie response header

flags

parse flags (HTTP_COOKIE_PARSE_RAW)

allowed_extras

array containing recognized extra keys; by default all unknown keys will be treated as cookie names

Valor Retornado

Returns a stdClass object on success or FALSE on failure.

Exemplos

Exemplo #1 Using http_parse_cookie()

<?php
print_r(http_parse_cookie("foo=bar; bar=baz; path=/; domain=example.com; comment=; secure", 0, array("comment")));
?>

O exemplo acima irá imprimir:

stdClass Object
(
  [cookies] => Array
  (
    [foo] => bar
    [bar] => baz
  )

  [extras] => Array
  (
    [comment] =>
  )

  [flags] => 16
  [expires] => 0
  [path] => /
  [domain] => example.com
)

Veja Também

  • http_parse_headers() - Parse HTTP headers
  • http_parse_message() - Parse HTTP messages
  • http_build_cookie() - Build cookie string

ob_inflatehandler
http_parse_headers
Funções para HTTP


Parse HTTP headers

http_parse_cookie
http_parse_message
Funções para HTTP
PHP Manual

http_parse_headers

(PECL pecl_http >= 0.10.0)

http_parse_headers — Parse HTTP headers

Descrição

array http_parse_headers ( string $header )

Parses HTTP headers into an associative array.

Parâmetros

header

string containing HTTP headers

Valor Retornado

Returns an array on success or FALSE on failure.

Exemplos

Exemplo #1 Using http_parse_headers()

<?php
$headers = "content-type: text/html; charset=UTF-8\r\n".
  "Server: Funky/1.0\r\n".
  "Set-Cookie: foo=bar\r\n".
  "Set-Cookie: baz=quux\r\n".
  "Folded: works\r\n\ttoo\r\n";
print_r(http_parse_headers($headers));
?>

O exemplo acima irá imprimir:

Array
(
  [Content-Type] => text/html; chatset=UTF-8
  [Server] => Funky/1.0
  [Set-Cookie] => Array
  (
    [0] => foo=bar
    [1] => baz=quux
  )
  [Folded] => works
    too
)

Veja Também

  • http_parse_message() - Parse HTTP messages
  • http_parse_cookie() - Parse HTTP cookie

http_parse_cookie
http_parse_message
Funções para HTTP


Parse HTTP messages

http_parse_headers
http_parse_params
Funções para HTTP
PHP Manual

http_parse_message

(PECL pecl_http >= 0.12.0)

http_parse_message — Parse HTTP messages

Descrição

object http_parse_message ( string $message )

Parses the HTTP message into a simple recursive object.

Parâmetros

message

string containing a single HTTP message or several consecutive HTTP messages

Valor Retornado

Returns a hierarchical object structure of the parsed messages.

Exemplos

Exemplo #1 Using http_parse_message()

<?php
define ('URL', 'http://www.example.com/');
print_r(http_parse_message(http_get(URL, array('redirect' => 3))));
?>

O exemplo acima irá imprimir algo similar a:

stdClass object
(
  [type] => 2
  [httpVersion] => 1.1
  [responseCode] => 200
  [headers] => Array
  (
    [Content-Length] => 3
    [Server] => Apache
  )
  [body] => Hi!
  [parentMessage] => stdClass object
  (
    [type] => 2
    [httpVersion] => 1.1
    [responseCode] => 302
    [headers] => Array
    (
      [Content-Length] => 0
      [Location] => ...
    )
    [body] =>
    [parentMessage] => ...
  )
)

Veja Também

  • http_parse_headers() - Parse HTTP headers
  • the HttpMessage class

http_parse_headers
http_parse_params
Funções para HTTP


Parse parameter list

http_parse_message
http_persistent_handles_clean
Funções para HTTP
PHP Manual

http_parse_params

(PECL pecl_http >= 1.0.0)

http_parse_params — Parse parameter list

Descrição

object http_parse_params ( string $param [, int $flags = HTTP_PARAMS_DEFAULT ] )

Parse parameter list.

See the params parsing constants table for possible values of the flags argument.

Parâmetros

param

Parameters

flags

Parse flags

Valor Retornado

Returns parameter list as stdClass object.

Exemplos

Exemplo #1 A http_parse_params() example

<?php
var_dump(http_parse_params("text/html; charset=\"utf8\""));
?>

O exemplo acima irá imprimir:

object(stdClass)#1 (1) {
  ["params"]=>
  array(2) {
    [0]=>
    string(9) "text/html"
    [1]=>
    array(1) {
      ["charset"]=>
      string(4) "utf8"
    }
  }
}

Veja Também

  • http_parse_headers() - Parse HTTP headers
  • http_parse_cookie() - Parse HTTP cookie
  • http_parse_message() - Parse HTTP messages

http_parse_message
http_persistent_handles_clean
Funções para HTTP


Clean up persistent handles

http_parse_params
http_persistent_handles_count
Funções para HTTP
PHP Manual

http_persistent_handles_clean

(PECL pecl_http >= 1.5.0)

http_persistent_handles_clean — Clean up persistent handles

Descrição

string http_persistent_handles_clean ([ string $ident ] )

Clean up (close) persistent handles, optionally identified with ident.

Parâmetros

clean

the identification string

Valor Retornado

Não há valor retornado.

Veja Também

  • http_persistent_handles_ident() - Get/set ident of persistent handles
  • http_persistent_handles_count() - Stat persistent handles

http_parse_params
http_persistent_handles_count
Funções para HTTP


Stat persistent handles

http_persistent_handles_clean
http_persistent_handles_ident
Funções para HTTP
PHP Manual

http_persistent_handles_count

(PECL pecl_http >= 1.5.0)

http_persistent_handles_count — Stat persistent handles

Descrição

object http_persistent_handles_count ( void )

List statistics about persistent handles usage.

Parâmetros

Valor Retornado

Returns persistent handles statistics as stdClass object on success or FALSE on failure.

Exemplos

Exemplo #1 A http_persistent_handles_count() example

<?php
print_r(http_persistent_handles_count());
?>

O exemplo acima irá imprimir:

stdClass Object
(
    [http_request] => Array
        (
            [GLOBAL] => Array
                (
                    [used] => 0
                    [free] => 1
                )

        )

    [http_request_datashare] => Array
        (
            [GLOBAL] => Array
                (
                    [used] => 1
                    [free] => 0
                )

        )

    [http_request_pool] => Array
        (
        )

)

Veja Também

  • http_persistent_handles_ident() - Get/set ident of persistent handles
  • http_persistent_handles_clean() - Clean up persistent handles

http_persistent_handles_clean
http_persistent_handles_ident
Funções para HTTP


Get/set ident of persistent handles

http_persistent_handles_count
http_get
Funções para HTTP
PHP Manual

http_persistent_handles_ident

(PECL pecl_http >= 1.5.0)

http_persistent_handles_ident — Get/set ident of persistent handles

Descrição

string http_persistent_handles_ident ([ string $ident ] )

Query or define the ident of persistent handles.

Parâmetros

ident

the identification string

Valor Retornado

Returns the prior ident as string on success or FALSE on failure.

Exemplos

Exemplo #1 A http_persistent_handles_ident() example

<?php
echo http_persistent_handles_ident("CUSTOM"), "\n";
echo http_persistent_handles_ident("MyApp1"), "\n";
http_get("http://www.example.com/");
print_r(http_persistent_handles_count());
?>

O exemplo acima irá imprimir:

GLOBAL
CUSTOM
stdClass Object
(
[http_request] => Array
(
[MyApp1] => Array
(
[used] => 0
[free] => 1
)

)

[http_request_datashare] => Array
(
[GLOBAL] => Array
(
[used] => 1
[free] => 0
)

)

[http_request_pool] => Array
(
)

)

Veja Também

  • http_persistent_handles_count() - Stat persistent handles
  • http_persistent_handles_clean() - Clean up persistent handles

http_persistent_handles_count
http_get
Funções para HTTP


Perform GET request

http_persistent_handles_ident
http_head
Funções para HTTP
PHP Manual

http_get

(PECL pecl_http >= 0.1.0)

http_get — Perform GET request

Descrição

string http_get ( string $url [, array $options [, array &$info ]] )

Performs an HTTP GET request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

options

opções da requisição

info

Will be filled with request/response information

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 A http_get() example

<?php
$response = http_get("http://www.example.com/", array("timeout"=>1), $info);
print_r($info);
?>

O exemplo acima irá imprimir:

array (
  'effective_url' => 'http://www.example.com/',
  'response_code' => 302,
  'connect_code' => 0,
  'filetime' => -1,
  'total_time' => 0.212348,
  'namelookup_time' => 0.038296,
  'connect_time' => 0.104144,
  'pretransfer_time' => 0.104307,
  'starttransfer_time' => 0.212077,
  'redirect_time' => 0,
  'redirect_count' => 0,
  'size_upload' => 0,
  'size_download' => 218,
  'speed_download' => 1026,
  'speed_upload' => 0,
  'header_size' => 307,
  'request_size' => 103,
  'ssl_verifyresult' => 0,
  'ssl_engines' =>
  array (
    0 => 'dynamic',
    1 => 'cswift',
    2 => 'chil',
    3 => 'atalla',
    4 => 'nuron',
    5 => 'ubsec',
    6 => 'aep',
    7 => 'sureware',
    8 => '4758cca',
  ),
  'content_length_download' => 218,
  'content_length_upload' => 0,
  'content_type' => 'text/html',
  'httpauth_avail' => 0,
  'proxyauth_avail' => 0,
  'num_connects' => 1,
  'os_errno' => 0,
  'error' => '',
)

http_persistent_handles_ident
http_head
Funções para HTTP


Perform HEAD request

http_get
http_post_data
Funções para HTTP
PHP Manual

http_head

(PECL pecl_http >= 0.1.0)

http_head — Perform HEAD request

Descrição

string http_head ( string $url [, array $options [, array &$info ]] )

Performs an HTTP HEAD request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_get
http_post_data
Funções para HTTP


Perform POST request with pre-encoded data

http_head
http_post_fields
Funções para HTTP
PHP Manual

http_post_data

(PECL pecl_http >= 0.1.0)

http_post_data — Perform POST request with pre-encoded data

Descrição

string http_post_data ( string $url , string $data [, array $options [, array &$info ]] )

Performs an HTTP POST request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

data

String containing the pre-encoded post data

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_head
http_post_fields
Funções para HTTP


Perform POST request with data to be encoded

http_post_data
http_put_data
Funções para HTTP
PHP Manual

http_post_fields

(PECL pecl_http >= 0.10.0)

http_post_fields — Perform POST request with data to be encoded

Descrição

string http_post_fields ( string $url , array $data [, array $files [, array $options [, array &$info ]]] )

Performs an HTTP POST request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

data

Associative array of POST values

files

Array of files to post

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

Exemplos

Exemplo #1 A http_post_fields() example

<?php
$fields = array(
    'name' => 'mike',
    'pass' => 'se_ret'
);
$files = array(
    array(
        'name' => 'uimg',
        'type' => 'image/jpeg',
        'file' => './profile.jpg',
    )
);

$response = http_post_fields("http://www.example.com/", $fields, $files);
?>

http_post_data
http_put_data
Funções para HTTP


Perform PUT request with data

http_post_fields
http_put_file
Funções para HTTP
PHP Manual

http_put_data

(PECL pecl_http >= 0.25.0)

http_put_data — Perform PUT request with data

Descrição

string http_put_data ( string $url , string $data [, array $options [, array &$info ]] )

Performs an HTTP PUT request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

data

PUT request body

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_post_fields
http_put_file
Funções para HTTP


Perform PUT request with file

http_put_data
http_put_stream
Funções para HTTP
PHP Manual

http_put_file

(PECL pecl_http >= 0.10.0)

http_put_file — Perform PUT request with file

Descrição

string http_put_file ( string $url , string $file [, array $options [, array &$info ]] )

Performs an HTTP PUT request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

file

The file to put

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_put_data
http_put_stream
Funções para HTTP


Perform PUT request with stream

http_put_file
http_request_body_encode
Funções para HTTP
PHP Manual

http_put_stream

(PECL pecl_http >= 0.10.0)

http_put_stream — Perform PUT request with stream

Descrição

string http_put_stream ( string $url , resource $stream [, array $options [, array &$info ]] )

Performs an HTTP PUT request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

url

URL

stream

The stream to read the PUT request body from

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_put_file
http_request_body_encode
Funções para HTTP


Encode request body

http_put_stream
http_request_method_exists
Funções para HTTP
PHP Manual

http_request_body_encode

(PECL pecl_http >= 1.0.0)

http_request_body_encode — Encode request body

Descrição

string http_request_body_encode ( array $fields , array $files )

Generate x-www-form-urlencoded resp. form-data encoded request body.

Parâmetros

fields

POST fields

files

POST files

Valor Retornado

Returns encoded string on success or FALSE on failure.

http_put_stream
http_request_method_exists
Funções para HTTP


Check whether request method exists

http_request_body_encode
http_request_method_name
Funções para HTTP
PHP Manual

http_request_method_exists

(PECL pecl_http >= 0.10.0)

http_request_method_exists — Check whether request method exists

Descrição

int http_request_method_exists ( mixed $method )

Check if a request method is registered (or available by default).

Parâmetros

method

request method name or ID

Valor Retornado

Returns TRUE if the request method is known, else FALSE.

http_request_body_encode
http_request_method_name
Funções para HTTP


Get request method name

http_request_method_exists
http_request_method_register
Funções para HTTP
PHP Manual

http_request_method_name

(PECL pecl_http >= 0.10.0)

http_request_method_name — Get request method name

Descrição

string http_request_method_name ( int $method )

Get the literal string representation of a standard or registered request method.

Parâmetros

method

request method ID

Valor Retornado

Returns the request method name as string on success or FALSE on failure.

http_request_method_exists
http_request_method_register
Funções para HTTP


Register request method

http_request_method_name
http_request_method_unregister
Funções para HTTP
PHP Manual

http_request_method_register

(PECL pecl_http >= 0.10.0)

http_request_method_register — Register request method

Descrição

int http_request_method_register ( string $method )

Register a custom request method.

Parâmetros

method

the request method name to register

Valor Retornado

Returns the ID of the request method on success or FALSE on failure.

http_request_method_name
http_request_method_unregister
Funções para HTTP


Unregister request method

http_request_method_register
http_request
Funções para HTTP
PHP Manual

http_request_method_unregister

(PECL pecl_http >= 0.10.0)

http_request_method_unregister — Unregister request method

Descrição

bool http_request_method_unregister ( mixed $method )

Unregister a previously registered custom request method.

Parâmetros

method

The request method name or ID

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

http_request_method_register
http_request
Funções para HTTP


Perform custom request

http_request_method_unregister
http_redirect
Funções para HTTP
PHP Manual

http_request

(PECL pecl_http >= 1.0.0)

http_request — Perform custom request

Descrição

string http_request ( int $method , string $url [, string $body [, array $options [, array &$info ]]] )

Performs a custom HTTP request on the supplied url.

Veja a lista completa de opções da requisição.

Parâmetros

method

Request method

url

URL

body

Request body

options

opções da requisição

info

Informações de requisição/resposta

Valor Retornado

Retorna a(s) resposta(s) HTTP como uma string em caso de sucesso, ou FALSE em caso de falha.

http_request_method_unregister
http_redirect
Funções para HTTP


Issue HTTP redirect

http_request
http_send_content_disposition
Funções para HTTP
PHP Manual

http_redirect

(PECL pecl_http >= 0.1.0)

http_redirect — Issue HTTP redirect

Descrição

bool http_redirect ([ string $url [, array $params [, bool $session = false [, int $status = 0 ]]]] )

Redirect to the given url.

The supplied url will be expanded with http_build_url(), the params array will be treated with http_build_str() and the session identification will be appended if session is true. The HTTP response code will be set according to status. You can use one of the redirect constants for convenience. Please see » RFC 2616 for which redirect response code to use in which situation. By default PHP will decide which response status fits best.

To be RFC compliant, "Redirecting to <a>URL</a>." will be displayed, if the client doesn't redirect immediately, and the request method was another one than HEAD.

A log entry will be written to the redirect log, if the Definições INI http.log.redirect is set and the redirect attempt was successful.

Parâmetros

url

the URL to redirect to

params

associative array of query parameters

session

whether to append session information

status

custom response status code

Valor Retornado

Retorna FALSE ou exits em caso de sucesso with the specified redirection status code. Veja a Definições INI http.force_exit para saber o que "exits" significa.

Exemplos

Exemplo #1 A http_redirect() example

<?php
http_redirect("relpath", array("name" => "value"), true, HTTP_REDIRECT_PERM);
?>

O exemplo acima irá imprimir:

HTTP/1.1 301 Moved Permanently
X-Powered-By: PHP/5.2.2
Content-Type: text/html
Location: http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc

Redirecting to <a href="http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc">http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc</a>.

Veja Também

  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_request
http_send_content_disposition
Funções para HTTP


Send Content-Disposition

http_redirect
http_send_content_type
Funções para HTTP
PHP Manual

http_send_content_disposition

(PECL pecl_http >= 0.10.0)

http_send_content_disposition — Send Content-Disposition

Descrição

bool http_send_content_disposition ( string $filename [, bool $inline = false ] )

Send the Content-Disposition. O cabeçalho Content-Disposition é muito útil se os dados atualmente enviados vem de um arquivo ou algo similar, que possa ser "salvo" pelo cliente/usuário (ex. pelo "Salvar como ..." do navegador).

Nota: Esta função é supostamente para ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

Parâmetros

filename

the file name the "Save as..." dialog should display

inline

if set to TRUE and the user agent knows how to handle the content type, it will probably not cause the popup window to be shown

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • http_send_data() - Send arbitrary data
  • http_send_file() - Send file
  • http_send_stream() - Send stream
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_redirect
http_send_content_type
Funções para HTTP


Send Content-Type

http_send_content_disposition
http_send_data
Funções para HTTP
PHP Manual

http_send_content_type

(PECL pecl_http >= 0.10.0)

http_send_content_type — Send Content-Type

Descrição

bool http_send_content_type ([ string $content_type = "application/x-octetstream" ] )

Send the Content-Type of the sent entity.

Nota: Esta função é supostamente para ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

Parâmetros

content_type

the desired content type (primary/secondary)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Raises an E_WARNING when the content_type doesn't seem to contain a primary and a secondary part.

Veja Também

  • http_send_data() - Send arbitrary data
  • http_send_file() - Send file
  • http_send_stream() - Send stream
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_content_disposition
http_send_data
Funções para HTTP


Send arbitrary data

http_send_content_type
http_send_file
Funções para HTTP
PHP Manual

http_send_data

(PECL pecl_http >= 0.1.0)

http_send_data — Send arbitrary data

Descrição

bool http_send_data ( string $data )

Sends raw data with support for (multiple) range requests.

Parâmetros

data

data to send

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • http_send_file() - Send file
  • http_send_stream() - Send stream
  • http_throttle() - HTTP throttling
  • http_send_content_type() - Send Content-Type
  • http_send_content_disposition() - Send Content-Disposition
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_content_type
http_send_file
Funções para HTTP


Send file

http_send_data
http_send_last_modified
Funções para HTTP
PHP Manual

http_send_file

(PECL pecl_http >= 0.1.0)

http_send_file — Send file

Descrição

bool http_send_file ( string $file )

Sends a file with support for (multiple) range requests.

This functions behaviour and further action is dependent on the following Definições INIs: http.send.not_found_404 e http.log.not_found.

If the Definições INI http.send.not_found_404 is enabled and the Definições INI http.log.not_found points to a writable file, a log message is written when the file was not found.

Parâmetros

file

the file to send

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 A http_send_file() example

<?php
http_send_content_disposition("document.pdf", true);
http_send_content_type("application/pdf");
http_throttle(0.1, 2048);
http_send_file("../report.pdf");
?>

O exemplo acima irá imprimir:

HTTP/1.1 206 Partial Content
X-Powered-By: PHP/5.2.2
Accept-Ranges: bytes
Content-Length: 12345
Content-Range: bytes 0-12344
Content-Type: application/pdf
Content-Disposition: inline; filename="document.pdf"

%PDF...

Veja Também

  • http_send_data() - Send arbitrary data
  • http_send_stream() - Send stream
  • http_throttle() - HTTP throttling
  • http_send_content_type() - Send Content-Type
  • http_send_content_disposition() - Send Content-Disposition
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_data
http_send_last_modified
Funções para HTTP


Send Last-Modified

http_send_file
http_send_status
Funções para HTTP
PHP Manual

http_send_last_modified

(PECL pecl_http >= 0.1.0)

http_send_last_modified — Send Last-Modified

Descrição

bool http_send_last_modified ([ int $timestamp ] )

Send a Last-Modified header with a valid HTTP date.

Nota: Esta função é supostamente para ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

Parâmetros

timestamp

a Unix timestamp, converted to a valid HTTP date; if omitted, the current time will be sent

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_file
http_send_status
Funções para HTTP


Send HTTP response status

http_send_last_modified
http_send_stream
Funções para HTTP
PHP Manual

http_send_status

(PECL pecl_http >= 0.1.0)

http_send_status — Send HTTP response status

Descrição

bool http_send_status ( int $status )

Send HTTP status code.

Parâmetros

status

HTTP status code (100-599)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_last_modified
http_send_stream
Funções para HTTP


Send stream

http_send_status
http_throttle
Funções para HTTP
PHP Manual

http_send_stream

(PECL pecl_http >= 0.1.0)

http_send_stream — Send stream

Descrição

bool http_send_stream ( resource $stream )

Sends an already opened stream with support for (multiple) range requests.

Parâmetros

stream

stream to read from (must be seekable)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • http_send_data() - Send arbitrary data
  • http_send_file() - Send file
  • http_throttle() - HTTP throttling
  • http_send_content_type() - Send Content-Type
  • http_send_content_disposition() - Send Content-Disposition
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_status
http_throttle
Funções para HTTP


HTTP throttling

http_send_stream
http_build_str
Funções para HTTP
PHP Manual

http_throttle

(PECL pecl_http >= 0.10.0)

http_throttle — HTTP throttling

Descrição

void http_throttle ( float $sec [, int $bytes = 40960 ] )

Sets the throttle delay and send buffer size.

Nota: Esta função é supostamente para ser usada em conjunto com http_send_data(), http_send_file() e http_send_stream().

Nota: Provides a basic throttling mechanism, which will yield the current process respectively thread until the entity has been completely sent.

Nota:

Isto não deve funcionar de acordo com o esperado se você esta usando as seguintes SAPI(s): FastCGI.

Parâmetros

sec

seconds to sleep after each chunk sent

bytes

the chunk size in bytes

Exemplos

Exemplo #1 A http_throttle() example

Send file with approximately 20 kbyte/s.

<?php
// ~ 20 kbyte/s
# http_throttle(1, 20000);
# http_throttle(0.5, 10000);
http_throttle(0.1, 2000);
http_send_file('document.pdf');
?>

Veja Também

  • http_send_data() - Send arbitrary data
  • http_send_file() - Send file
  • http_send_stream() - Send stream
  • a classe HttpResponse se você esta usando o PHP 5.1 e acima

http_send_stream
http_build_str
Funções para HTTP


Build query string

http_throttle
http_build_url
Funções para HTTP
PHP Manual

http_build_str

(PECL pecl_http >= 0.23.0)

http_build_str — Build query string

Descrição

string http_build_str ( array $query [, string $prefix [, string $arg_separator = ini_get("arg_separator.output") ]] )

Opponent to parse_str().

Parâmetros

query

associative array of query string parameters

prefix

top level prefix

arg_separator

argument separator to use (by default the INI setting arg_separator.output will be used, or "&" if neither is set

Valor Retornado

Returns the built query as string on success or FALSE on failure.

Veja Também

  • standard http_build_query() - Gera a string de consulta (query) em formato URL
  • http_build_url() - Build a URL

http_throttle
http_build_url
Funções para HTTP


Build a URL

http_build_str
Java
Funções para HTTP
PHP Manual

http_build_url

(PECL pecl_http >= 0.21.0)

http_build_url — Build a URL

Descrição

string http_build_url ([ mixed $url [, mixed $parts [, int $flags = HTTP_URL_REPLACE [, array &$new_url ]]]] )

Build a URL.

The parts of the second URL will be merged into the first according to the flags argument.

Parâmetros

url

(part(s) of) an URL in form of a string or associative array like parse_url() returns

parts

same as the first argument

flags

a bitmask of binary or'ed HTTP_URL constants; HTTP_URL_REPLACE is the default

new_url

if set, it will be filled with the parts of the composed url like parse_url() would return

Valor Retornado

Returns the new URL as string on success or FALSE on failure.

Exemplos

Exemplo #1 A http_build_url() example

<?php
echo http_build_url("http://user@www.example.com/pub/index.php?a=b#files",
    array(
        "scheme" => "ftp",
        "host" => "ftp.example.com",
        "path" => "files/current/",
        "query" => "a=c"
    ),
    HTTP_URL_STRIP_AUTH | HTTP_URL_JOIN_PATH | HTTP_URL_JOIN_QUERY | HTTP_URL_STRIP_FRAGMENT
);
?>

O exemplo acima irá imprimir:

ftp://ftp.example.com/pub/files/current/?a=c

Veja Também

  • parse_url() - Interpreta uma URL e retorna os seus componentes
  • http_build_str() - Build query string

http_build_str
Java
Funções para HTTP


PHP / IntegraÃ§Ã£o com Java

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Java Servlet SAPI
  • Exemplos
  • Funções para Java
    • java_last_exception_clear — Limpa a última exceção Java
    • java_last_exception_get — Pega a última exceção Java
http_build_url
Introdução
Outros Serviços


Introdução

Existem duas maneira possÃveis para integrar PHP com Java: vocÃª pode ou integrar o PHP a um ambiente Java Servlet , que Ã© a soluÃ§Ã£o mais estÃ¡vel e eficiente, ou integrar suporte Java ao PHP. O primeiro estÃ¡ disponÃvel por um mÃ³dulo SAPI que faz a interface com o servidor Servlet, o outro faz isso por meio dessa extensÃ£o Java.

A extensÃ£o Java prove meios simples e eficientes para criar e invocar mÃ©todos em objetos Java a partir do PHP. A JVM Ã© criada usand JNI, e tudo roda no mesmo processo.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Java
Instalação/Configuração
Java


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Java


Dependências

Você precisa de uma Java VM instalada na sua máquina para usar essa extensão.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

No PHP 4, os fontes desta estensão PECL podem ser encontrados no diretório ext/ ou dentro dos fontes do PHP ou no link PECL acima. Para usar essas funções você deve compilar o PHP com suporte à Java usando a opção --with-java[=DIR] onde DIR aponta para o diretório base de onde o JDK está instalado. Essa extensão só pode ser compilada como uma extensão compartilhada. Outras instruções podem ser encontradas em php-src/ext/java/README.

Usuário do Windows devem habilitar php_java.dll no arquivo php.ini para usar essas funções. No PHP esta DLL reside no diretório extensions/ junto aos binários do PHP para Windows. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota:

Para habilitar esse módulo em um ambiente Windows com o PHP <= 4.0.6, você deve colocar o arquivo jvm.dll no PATH do seu sistema. Nenhuma DLL adicional é necessária para versões do PHP > 4.0.6.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração da extensão de Java
Nome | Valor Padrão | Alterável | Changelog
java.class.path | NULL | PHP_INI_ALL |
java.home | NULL | PHP_INI_ALL |
java.library.path | NULL | PHP_INI_ALL |
java.library | JAVALIB | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Java Servlet SAPI
Java


Java Servlet SAPI

O Java Servlet SAPI é montado em um mecanismo definido pela extensão Java que permite que o processador do PHP seja executado como uma servlet. A vantagem principal disso da perspectiva do PHP é que os servidores web que suportam servlet tipicamente tomam mais cuidado com criação e reuso de JVMs. Instruções de configuração para o módulo SAPI do Servlet podem ser encontrados em php4/sapi/README. Notas:

  • Embora esse código seja intencionado para ser capaz de rodar em qualquer engine de servlet, ele só foi testado até hoje no Apache's Jakarta/tomcat. Relatos de bugs, estórias de sucesso e/ou patches necessárias para que esse código funcione em qualquer outro engine seriam apreciados.
  • PHP tem o hábito de mudar o diretório de trabalho. sapi/servlet irá, eventualmente, mudá-lo ao anterior, mas enquanto o PHP estiver executando o engine do servlet ele pode não ser capaz de carregar classes do CLASSPATH especifidao usando caminhos relativos, ou achar o diretório de trabalho usado para administração e tarefas de compilação de JSPs.

Constantes pré-definidas
Exemplos
Java


Exemplos

Índice

Java Servlet SAPI
Java


Exemplos
Funções para Java
Exemplos
PHP Manual

Exemplo #1 Exemplo da Java

<?php
// get instance of Java class java.lang.System in PHP
$system = new Java('java.lang.System');

// demonstrate property access
echo 'Java version=' . $system->getProperty('java.version') . '<br />';
echo 'Java vendor=' . $system->getProperty('java.vendor') . '<br />';
echo 'OS=' . $system->getProperty('os.name') . ' ' .
             $system->getProperty('os.version') . ' on ' .
             $system->getProperty('os.arch') . ' <br />';

// java.util.Date example
$formatter = new Java('java.text.SimpleDateFormat',
                      "EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");

echo $formatter->format(new Java('java.util.Date'));
?>

Exemplo #2 Exemplo da AWT

<?php
// Este exemplo é pretendindo para ser executado em CLI.

$frame  = new Java('java.awt.Frame', 'PHP');
$button = new Java('java.awt.Button', 'Hello Java World!');

$frame->add('North', $button);
$frame->validate();
$frame->pack();
$frame->visible = True;

$thread = new Java('java.lang.Thread');
$thread->sleep(10000);

$frame->dispose();
?>
Notas:
  • new Java() criará uma instância de uma classe se um construtor apropriado estiver disponível. Se nenhum parâmetros for passado e o construtor padrão for utilizável já que prove acesso à classes como java.lang.System que expõe a maior parte de suas funcionalidades através de métodos estáticos.
  • Acessar um membro de uma instância primeiro procurará por uma propriedade bean, depois por campos públicos. Em outras palavras, print $date.time elel primeiro tentará trabalhar com $date.getTime(), depois com $date.time.
  • Tanto membros estáticos como de instância podem ser acessados em um objeto com a mesma sintaxe. Além disso, se o objeto java é do tipo java.lang.Class, membros estáticos da classe (campos e métodos) podem ser acessados.

  • Exceções disparadas resultam em avisos do PHP e em resultados NULL. Os avisos podem ser eliminados prefixando uma chamada de método com um sinal "@". As seguintes APIs podem ser usadas para obter e reniciar o último erro:

    • java_last_exception_get()
    • java_last_exception_clear()

  • Resolução de sobrecarga em geral é um problema complicado dada às diferenças nos tipos entre as duas linguagens. A extensão Java aplica uma métrica simples, mas relativamente eficaz, para determinar qual sobrecarga é a melhor. Além disso, nomes de métodos no PHP não são sensíveis ao caso, potencialmente aumentando o número de sobrecargas a serem escolhidas. Uma vez que um método é escolhido, os parâmetros são alterados se necessário, possivelmente com perda de dados (exemplo: números de ponto flutuante de precisão dupla serão convertidos para booleano).
  • Na tradição do PHP, arrays e hashtables podem ser usados de forma alternada. Perceba que hashtables no PHP só podem ser indexadas por inteiros e strings; e que arrays de tipos primitivos em Java não podem ser esparsos. Também note que essas estruturas são passadas por valor, então pode ter custo em termos de memória e tempo.

Exemplos
Funções para Java
Exemplos


Funções para Java

Índice

  • java_last_exception_clear — Limpa a última exceção Java
  • java_last_exception_get — Pega a última exceção Java
java_last_exception_clear
Java


Limpa a última exceção Java

Funções para Java
java_last_exception_get
Funções para Java
PHP Manual

java_last_exception_clear

(PHP 4 >= 4.0.2)

java_last_exception_clear — Limpa a última exceção Java

Descrição

void java_last_exception_clear ( void )

Limpa a última exceção Java.

Valor Retornado

Não há valor retornado.

Exemplos

Veja java_last_exception_get() para um exemplo de uso .

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Funções para Java
java_last_exception_get
Funções para Java


Pega a última exceção Java

java_last_exception_clear
LDAP
Funções para Java
PHP Manual

java_last_exception_get

(PHP 4 >= 4.0.2)

java_last_exception_get — Pega a última exceção Java

Descrição

object java_last_exception_get ( void )

Pega a última exceção Java.

Valor Retornado

Retorna um objeto de exceção.

Exemplos

O exemplo a seguir demonstra o uso de um tratador de exceção Java dentro do PHP:

Exemplo #1 Tratador de exceção Java

<?php
$stack = new Java('java.util.Stack');
$stack->push(1);

// This should succeed
$result = $stack->pop();
$ex = java_last_exception_get();
if (!$ex) {
  echo "$result\n";
}

// This should fail (error suppressed by @)
$result = @$stack->pop();
$ex = java_last_exception_get();
if ($ex) {
  echo $ex->toString();
}

// Clear last exception
java_last_exception_clear();
?>

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

java_last_exception_clear
LDAP
Funções para Java


Lightweight Directory Access Protocol

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Using the PHP LDAP calls
  • Exemplos
  • LDAP Funções
    • ldap_8859_to_t61 — Translate 8859 characters to t61 characters
    • ldap_add — Add entries to LDAP directory
    • ldap_bind — Bind to LDAP directory
    • ldap_close — Sinônimo de ldap_unbind
    • ldap_compare — Compare value of attribute found in entry specified with DN
    • ldap_connect — Connect to an LDAP server
    • ldap_count_entries — Count the number of entries in a search
    • ldap_delete — Delete an entry from a directory
    • ldap_dn2ufn — Convert DN to User Friendly Naming format
    • ldap_err2str — Convert LDAP error number into string error message
    • ldap_errno — Return the LDAP error number of the last LDAP command
    • ldap_error — Return the LDAP error message of the last LDAP command
    • ldap_explode_dn — Splits DN into its component parts
    • ldap_first_attribute — Return first attribute
    • ldap_first_entry — Return first result id
    • ldap_first_reference — Return first reference
    • ldap_free_result — Free result memory
    • ldap_get_attributes — Get attributes from a search result entry
    • ldap_get_dn — Get the DN of a result entry
    • ldap_get_entries — Get all result entries
    • ldap_get_option — Get the current value for given option
    • ldap_get_values_len — Get all binary values from a result entry
    • ldap_get_values — Get all values from a result entry
    • ldap_list — Single-level search
    • ldap_mod_add — Add attribute values to current attributes
    • ldap_mod_del — Delete attribute values from current attributes
    • ldap_mod_replace — Replace attribute values with new ones
    • ldap_modify — Modify an LDAP entry
    • ldap_next_attribute — Get the next attribute in result
    • ldap_next_entry — Get next result entry
    • ldap_next_reference — Get next reference
    • ldap_parse_reference — Extract information from reference entry
    • ldap_parse_result — Extract information from result
    • ldap_read — Read an entry
    • ldap_rename — Modify the name of an entry
    • ldap_sasl_bind — Bind to LDAP directory using SASL
    • ldap_search — Search LDAP tree
    • ldap_set_option — Set the value of the given option
    • ldap_set_rebind_proc — Set a callback function to do re-binds on referral chasing
    • ldap_sort — Sort LDAP result entries
    • ldap_start_tls — Start TLS
    • ldap_t61_to_8859 — Translate t61 characters to 8859 characters
    • ldap_unbind — Unbind from LDAP directory
java_last_exception_get
Introdução
Outros Serviços


Introdução

LDAP is the Lightweight Directory Access Protocol, and is a protocol used to access "Directory Servers". The Directory is a special kind of database that holds information in a tree structure.

The concept is similar to your hard disk directory structure, except that in this context, the root directory is "The world" and the first level subdirectories are "countries". Lower levels of the directory structure contain entries for companies, organisations or places, while yet lower still we find directory entries for people, and perhaps equipment or documents.

To refer to a file in a subdirectory on your hard disk, you might use something like:

   /usr/local/myapp/docs

The forwards slash marks each division in the reference, and the sequence is read from left to right.

The equivalent to the fully qualified file reference in LDAP is the "distinguished name", referred to simply as "dn". An example dn might be:

   cn=John Smith,ou=Accounts,o=My Company,c=US

The comma marks each division in the reference, and the sequence is read from right to left. You would read this dn as:

   country = US
   organization = My Company
   organizationalUnit = Accounts
   commonName = John Smith

In the same way as there are no hard rules about how you organise the directory structure of a hard disk, a directory server manager can set up any structure that is meaningful for the purpose. However, there are some conventions that are used. The message is that you can not write code to access a directory server unless you know something about its structure, any more than you can use a database without some knowledge of what is available.

Lots of information about LDAP can be found at

  • » Mozilla

  • » OpenLDAP Project

The Netscape SDK contains a helpful » Programmer's Guide in HTML format.

LDAP
Instalação/Configuração
LDAP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
LDAP


Dependências

You will need to get and compile LDAP client libraries from either » OpenLDAP or » Bind9.net in order to compile PHP with LDAP support.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

LDAP support in PHP is not enabled by default. You will need to use the --with-ldap[=DIR] configuration option when compiling PHP to enable LDAP support. DIR is the LDAP base install directory. To enable SASL support, be sure --with-ldap-sasl[=DIR] is used, and that sasl.h exists on the system.

Nota: Note to Win32 Users

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: libeay32.dll and ssleay32.dll

Versions before PHP 4.3.0 additionally require libsasl.dll.

In order to use Oracle LDAP libraries, proper Oracle environment has to be set.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

LDAP configuration options
Name | Default | Changeable | Changelog
ldap.max_links | "-1" | PHP_INI_SYSTEM |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Most LDAP functions operate on or return resources (e.g. ldap_connect() returns a positive LDAP link identifier required by most LDAP functions).

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

LDAP_DEREF_NEVER (integer)
LDAP_DEREF_SEARCHING (integer)
LDAP_DEREF_FINDING (integer)
LDAP_DEREF_ALWAYS (integer)
LDAP_OPT_DEREF (integer)
Specifies alternative rules for following aliases at the server.
LDAP_OPT_SIZELIMIT (integer)

Specifies the maximum number of entries that can be returned on a search operation.

Nota: The actual size limit for operations is also bounded by the server's configured maximum number of return entries. The lesser of these two settings is the actual size limit.

LDAP_OPT_TIMELIMIT (integer)
Specifies the number of seconds to wait for search results.

Nota: The actual time limit for operations is also bounded by the server's configured maximum time. The lesser of these two settings is the actual time limit.

LDAP_OPT_NETWORK_TIMEOUT (integer)
Option for ldap_set_option() to allow setting network timeout. (Available as of PHP 5.3.0)
LDAP_OPT_PROTOCOL_VERSION (integer)
Specifies the LDAP protocol to be used (V2 or V3).
LDAP_OPT_ERROR_NUMBER (integer)
LDAP_OPT_REFERRALS (integer)
Specifies whether to automatically follow referrals returned by the LDAP server.
LDAP_OPT_RESTART (integer)
LDAP_OPT_HOST_NAME (integer)
LDAP_OPT_ERROR_STRING (integer)
LDAP_OPT_MATCHED_DN (integer)
LDAP_OPT_SERVER_CONTROLS (integer)
Specifies a default list of server controls to be sent with each request.
LDAP_OPT_CLIENT_CONTROLS (integer)
Specifies a default list of client controls to be processed with each request.
LDAP_OPT_DEBUG_LEVEL (integer)
Specifies a bitwise level for debug traces.
GSLC_SSL_NO_AUTH (integer)
GSLC_SSL_ONEWAY_AUTH (integer)
GSLC_SSL_TWOWAY_AUTH (integer)
Tipos Resource
Using the PHP LDAP calls
LDAP


Using the PHP LDAP calls

Before you can use the LDAP calls you will need to know ..

  • The name or address of the directory server you will use

  • The "base dn" of the server (the part of the world directory that is held on this server, which could be "o=My Company,c=US")

  • Whether you need a password to access the server (many servers will provide read access for an "anonymous bind" but require a password for anything else)

The typical sequence of LDAP calls you will make in an application will follow this pattern:

  ldap_connect()    // establish connection to server
     |
  ldap_bind()       // anonymous or authenticated "login"
     |
  do something like search or update the directory
  and display the results
     |
  ldap_close()      // "logout"

Constantes pré-definidas
Exemplos
LDAP


Exemplos

Índice

Using the PHP LDAP calls
LDAP


Exemplos
LDAP Funções
Exemplos
PHP Manual

Retrieve information for all entries where the surname starts with "S" from a directory server, displaying an extract with name and email address.

Exemplo #1 LDAP search example

<?php
// basic sequence with LDAP is connect, bind, search, interpret search
// result, close connection

echo "<h3>LDAP query test</h3>";
echo "Connecting ...";
$ds=ldap_connect("localhost");  // must be a valid LDAP server!
echo "connect result is " . $ds . "<br />";

if ($ds) {
    echo "Binding ...";
    $r=ldap_bind($ds);     // this is an "anonymous" bind, typically
                           // read-only access
    echo "Bind result is " . $r . "<br />";

    echo "Searching for (sn=S*) ...";
    // Search surname entry
    $sr=ldap_search($ds, "o=My Company, c=US", "sn=S*");
    echo "Search result is " . $sr . "<br />";

    echo "Number of entires returned is " . ldap_count_entries($ds, $sr) . "<br />";

    echo "Getting entries ...<p>";
    $info = ldap_get_entries($ds, $sr);
    echo "Data for " . $info["count"] . " items returned:<p>";

    for ($i=0; $i<$info["count"]; $i++) {
        echo "dn is: " . $info[$i]["dn"] . "<br />";
        echo "first cn entry is: " . $info[$i]["cn"][0] . "<br />";
        echo "first email entry is: " . $info[$i]["mail"][0] . "<br /><hr />";
    }

    echo "Closing connection";
    ldap_close($ds);

} else {
    echo "<h4>Unable to connect to LDAP server</h4>";
}
?>
Exemplos
LDAP Funções
Exemplos


LDAP Funções

Índice

  • ldap_8859_to_t61 — Translate 8859 characters to t61 characters
  • ldap_add — Add entries to LDAP directory
  • ldap_bind — Bind to LDAP directory
  • ldap_close — Sinônimo de ldap_unbind
  • ldap_compare — Compare value of attribute found in entry specified with DN
  • ldap_connect — Connect to an LDAP server
  • ldap_count_entries — Count the number of entries in a search
  • ldap_delete — Delete an entry from a directory
  • ldap_dn2ufn — Convert DN to User Friendly Naming format
  • ldap_err2str — Convert LDAP error number into string error message
  • ldap_errno — Return the LDAP error number of the last LDAP command
  • ldap_error — Return the LDAP error message of the last LDAP command
  • ldap_explode_dn — Splits DN into its component parts
  • ldap_first_attribute — Return first attribute
  • ldap_first_entry — Return first result id
  • ldap_first_reference — Return first reference
  • ldap_free_result — Free result memory
  • ldap_get_attributes — Get attributes from a search result entry
  • ldap_get_dn — Get the DN of a result entry
  • ldap_get_entries — Get all result entries
  • ldap_get_option — Get the current value for given option
  • ldap_get_values_len — Get all binary values from a result entry
  • ldap_get_values — Get all values from a result entry
  • ldap_list — Single-level search
  • ldap_mod_add — Add attribute values to current attributes
  • ldap_mod_del — Delete attribute values from current attributes
  • ldap_mod_replace — Replace attribute values with new ones
  • ldap_modify — Modify an LDAP entry
  • ldap_next_attribute — Get the next attribute in result
  • ldap_next_entry — Get next result entry
  • ldap_next_reference — Get next reference
  • ldap_parse_reference — Extract information from reference entry
  • ldap_parse_result — Extract information from result
  • ldap_read — Read an entry
  • ldap_rename — Modify the name of an entry
  • ldap_sasl_bind — Bind to LDAP directory using SASL
  • ldap_search — Search LDAP tree
  • ldap_set_option — Set the value of the given option
  • ldap_set_rebind_proc — Set a callback function to do re-binds on referral chasing
  • ldap_sort — Sort LDAP result entries
  • ldap_start_tls — Start TLS
  • ldap_t61_to_8859 — Translate t61 characters to 8859 characters
  • ldap_unbind — Unbind from LDAP directory
ldap_8859_to_t61
LDAP


Translate 8859 characters to t61 characters

LDAP Funções
ldap_add
LDAP Funções
PHP Manual

ldap_8859_to_t61

(PHP 4 >= 4.0.2, PHP 5)

ldap_8859_to_t61 — Translate 8859 characters to t61 characters

Descrição

string ldap_8859_to_t61 ( string $value )

Translate ISO-8859 characters to t61 characters.

This function is useful if you have to talk to a legacy LDAPv2 server.

Parâmetros

value

The text to be translated.

Valor Retornado

Return the t61 translation of value.

Veja Também

  • ldap_t61_to_8859() - Translate t61 characters to 8859 characters

LDAP Funções
ldap_add
LDAP Funções


Add entries to LDAP directory

ldap_8859_to_t61
ldap_bind
LDAP Funções
PHP Manual

ldap_add

(PHP 4, PHP 5)

ldap_add — Add entries to LDAP directory

Descrição

bool ldap_add ( resource $link_identifier , string $dn , array $entry )

Add entries in the LDAP directory.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

entry

An array that specifies the information about the entry. The values in the entries are indexed by individual attributes. In case of multiple values for an attribute, they are indexed using integers starting with 0.

<?php
$entree["attribut1"] = "value";
$entree["attribut2"][0] = "value1";
$entree["attribut2"][1] = "value2";
?>

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Complete example with authenticated bind

<?php
$ds = ldap_connect("localhost");  // assuming the LDAP server is on this host

if ($ds) {
    // bind with appropriate dn to give update access
    $r = ldap_bind($ds, "cn=root, o=My Company, c=US", "secret");

    // prepare data
    $info["cn"] = "John Jones";
    $info["sn"] = "Jones";
    $info["mail"] = "jonj@example.com";
    $info["objectclass"] = "person";

    // add data to directory
    $r = ldap_add($ds, "cn=John Jones, o=My Company, c=US", $info);

    ldap_close($ds);
} else {
    echo "Unable to connect to LDAP server";
}
?>

Notas

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

Veja Também

  • ldap_delete() - Delete an entry from a directory

ldap_8859_to_t61
ldap_bind
LDAP Funções


Bind to LDAP directory

ldap_add
ldap_close
LDAP Funções
PHP Manual

ldap_bind

(PHP 4, PHP 5)

ldap_bind — Bind to LDAP directory

Descrição

bool ldap_bind ( resource $link_identifier [, string $bind_rdn = NULL [, string $bind_password = NULL ]] )

Binds to the LDAP directory with specified RDN and password.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

bind_rdn

bind_password

If bind_rdn and bind_password are not specified, an anonymous bind is attempted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using LDAP Bind

<?php

// using ldap bind
$ldaprdn  = 'uname';     // ldap rdn or dn
$ldappass = 'password';  // associated password

// connect to ldap server
$ldapconn = ldap_connect("ldap.example.com")
    or die("Could not connect to LDAP server.");

if ($ldapconn) {

    // binding to ldap server
    $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);

    // verify binding
    if ($ldapbind) {
        echo "LDAP bind successful...";
    } else {
        echo "LDAP bind failed...";
    }

}

?>

Exemplo #2 Using LDAP Bind Anonymously

<?php

//using ldap bind anonymously

// connect to ldap server
$ldapconn = ldap_connect("ldap.example.com")
    or die("Could not connect to LDAP server.");

if ($ldapconn) {

    // binding anonymously
    $ldapbind = ldap_bind($ldapconn);

    if ($ldapbind) {
        echo "LDAP bind anonymous successful...";
    } else {
        echo "LDAP bind anonymous failed...";
    }

}

?>

Veja Também

  • ldap_unbind() - Unbind from LDAP directory

ldap_add
ldap_close
LDAP Funções


Sinônimo de ldap_unbind

ldap_bind
ldap_compare
LDAP Funções
PHP Manual

ldap_close

(PHP 4, PHP 5)

ldap_close — Sinônimo de ldap_unbind()

Descrição

Esta função é um apelido para: ldap_unbind().

ldap_bind
ldap_compare
LDAP Funções


Compare value of attribute found in entry specified with DN

ldap_close
ldap_connect
LDAP Funções
PHP Manual

ldap_compare

(PHP 4 >= 4.0.2, PHP 5)

ldap_compare — Compare value of attribute found in entry specified with DN

Descrição

mixed ldap_compare ( resource $link_identifier , string $dn , string $attribute , string $value )

Compare value of attribute with value of same attribute in an LDAP directory entry.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

attribute

The attribute name.

value

The compared value.

Valor Retornado

Returns TRUE if value matches otherwise returns FALSE. Returns -1 on error.

Exemplos

The following example demonstrates how to check whether or not given password matches the one defined in DN specified entry.

Exemplo #1 Complete example of password check

<?php

$ds=ldap_connect("localhost");  // assuming the LDAP server is on this host

if ($ds) {

    // bind
    if (ldap_bind($ds)) {

        // prepare data
        $dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
        $value = "secretpassword";
        $attr = "password";

        // compare value
        $r=ldap_compare($ds, $dn, $attr, $value);

        if ($r === -1) {
            echo "Error: " . ldap_error($ds);
        } elseif ($r === true) {
            echo "Password correct.";
        } elseif ($r === false) {
            echo "Wrong guess! Password incorrect.";
        }

    } else {
        echo "Unable to bind to LDAP server.";
    }

    ldap_close($ds);

} else {
    echo "Unable to connect to LDAP server.";
}
?>

Notas

Aviso

ldap_compare() can NOT be used to compare BINARY values!

ldap_close
ldap_connect
LDAP Funções


Connect to an LDAP server

ldap_compare
ldap_count_entries
LDAP Funções
PHP Manual

ldap_connect

(PHP 4, PHP 5)

ldap_connect — Connect to an LDAP server

Descrição

resource ldap_connect ([ string $hostname = NULL [, int $port = 389 ]] )

Establishes a connection to a LDAP server on a specified hostname and port.

Parâmetros

hostname

If you are using OpenLDAP 2.x.x you can specify a URL instead of the hostname. To use LDAP with SSL, compile OpenLDAP 2.x.x with SSL support, configure PHP with SSL, and set this parameter as ldaps://hostname/.

port

The port to connect to. Not used when using URLs.

Valor Retornado

Returns a positive LDAP link identifier on success, or FALSE on error. When OpenLDAP 2.x.x is used, ldap_connect() will always return a resource as it does not actually connect but just initializes the connecting parameters. The actual connect happens with the next calls to ldap_* funcs, usually with ldap_bind().

If no arguments are specified then the link identifier of the already opened link will be returned.

Histórico

Versão | Descrição
4.0.4 | URL and SSL support was added.

Exemplos

Exemplo #1 Example of connecting to LDAP server.

<?php

// LDAP variables
$ldaphost = "ldap.example.com";  // your ldap servers
$ldapport = 389;                 // your ldap server's port number

// Connecting to LDAP
$ldapconn = ldap_connect($ldaphost, $ldapport)
          or die("Could not connect to $ldaphost");

?>

Exemplo #2 Example of connecting securely to LDAP server.

<?php

// make sure your host is the correct one
// that you issued your secure certificate to
$ldaphost = "ldaps://ldap.example.com/";

// Connecting to LDAP
$ldapconn = ldap_connect($ldaphost)
          or die("Could not connect to {$ldaphost}");

?>

Veja Também

  • ldap_bind() - Bind to LDAP directory

ldap_compare
ldap_count_entries
LDAP Funções


Count the number of entries in a search

ldap_connect
ldap_delete
LDAP Funções
PHP Manual

ldap_count_entries

(PHP 4, PHP 5)

ldap_count_entries — Count the number of entries in a search

Descrição

int ldap_count_entries ( resource $link_identifier , resource $result_identifier )

Returns the number of entries stored in the result of previous search operations.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_identifier

The internal LDAP result.

Valor Retornado

Returns number of entries in the result or FALSE on error.

ldap_connect
ldap_delete
LDAP Funções


Delete an entry from a directory

ldap_count_entries
ldap_dn2ufn
LDAP Funções
PHP Manual

ldap_delete

(PHP 4, PHP 5)

ldap_delete — Delete an entry from a directory

Descrição

bool ldap_delete ( resource $link_identifier , string $dn )

Deletes a particular entry in LDAP directory.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ldap_add() - Add entries to LDAP directory

ldap_count_entries
ldap_dn2ufn
LDAP Funções


Convert DN to User Friendly Naming format

ldap_delete
ldap_err2str
LDAP Funções
PHP Manual

ldap_dn2ufn

(PHP 4, PHP 5)

ldap_dn2ufn — Convert DN to User Friendly Naming format

Descrição

string ldap_dn2ufn ( string $dn )

Turns the specified dn, into a more user-friendly form, stripping off type names.

Parâmetros

dn

The distinguished name of an LDAP entity.

Valor Retornado

Returns the user friendly name.

ldap_delete
ldap_err2str
LDAP Funções


Convert LDAP error number into string error message

ldap_dn2ufn
ldap_errno
LDAP Funções
PHP Manual

ldap_err2str

(PHP 4, PHP 5)

ldap_err2str — Convert LDAP error number into string error message

Descrição

string ldap_err2str ( int $errno )

Returns the string error message explaining the error number errno. While LDAP errno numbers are standardized, different libraries return different or even localized textual error messages. Never check for a specific error message text, but always use an error number to check.

Parâmetros

errno

The error number.

Valor Retornado

Returns the error message, as a string.

Exemplos

Exemplo #1 Enumerating all LDAP error messages

<?php
  for ($i=0; $i<100; $i++) {
    printf("Error $i: %s<br />\n", ldap_err2str($i));
  }
?>

Veja Também

  • ldap_errno() - Return the LDAP error number of the last LDAP command
  • ldap_error() - Return the LDAP error message of the last LDAP command

ldap_dn2ufn
ldap_errno
LDAP Funções


Return the LDAP error number of the last LDAP command

ldap_err2str
ldap_error
LDAP Funções
PHP Manual

ldap_errno

(PHP 4, PHP 5)

ldap_errno — Return the LDAP error number of the last LDAP command

Descrição

int ldap_errno ( resource $link_identifier )

Returns the standardized error number returned by the last LDAP command. This number can be converted into a textual error message using ldap_err2str().

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

Valor Retornado

Return the LDAP error number of the last LDAP command for this link.

Exemplos

Unless you lower your warning level in your php.ini sufficiently or prefix your LDAP commands with @ (at) characters to suppress warning output, the errors generated will also show up in your HTML output.

Exemplo #1 Generating and catching an error

<?php
// This example contains an error, which we will catch.
$ld = ldap_connect("localhost");
$bind = ldap_bind($ld);
// syntax error in filter expression (errno 87),
// must be "objectclass=*" to work.
$res =  @ldap_search($ld, "o=Myorg, c=DE", "objectclass");
if (!$res) {
    echo "LDAP-Errno: " . ldap_errno($ld) . "<br />\n";
    echo "LDAP-Error: " . ldap_error($ld) . "<br />\n";
    die("Argh!<br />\n");
}
$info = ldap_get_entries($ld, $res);
echo $info["count"] . " matching entries.<br />\n";
?>

Veja Também

  • ldap_err2str() - Convert LDAP error number into string error message
  • ldap_error() - Return the LDAP error message of the last LDAP command

ldap_err2str
ldap_error
LDAP Funções


Return the LDAP error message of the last LDAP command

ldap_errno
ldap_explode_dn
LDAP Funções
PHP Manual

ldap_error

(PHP 4, PHP 5)

ldap_error — Return the LDAP error message of the last LDAP command

Descrição

string ldap_error ( resource $link_identifier )

Returns the string error message explaining the error generated by the last LDAP command for the given link_identifier. While LDAP errno numbers are standardized, different libraries return different or even localized textual error messages. Never check for a specific error message text, but always use an error number to check.

Unless you lower your warning level in your php.ini sufficiently or prefix your LDAP commands with @ (at) characters to suppress warning output, the errors generated will also show up in your HTML output.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

Valor Retornado

Returns string error message.

Veja Também

  • ldap_err2str() - Convert LDAP error number into string error message
  • ldap_errno() - Return the LDAP error number of the last LDAP command

ldap_errno
ldap_explode_dn
LDAP Funções


Splits DN into its component parts

ldap_error
ldap_first_attribute
LDAP Funções
PHP Manual

ldap_explode_dn

(PHP 4, PHP 5)

ldap_explode_dn — Splits DN into its component parts

Descrição

array ldap_explode_dn ( string $dn , int $with_attrib )

Splits the DN returned by ldap_get_dn() and breaks it up into its component parts. Each part is known as Relative Distinguished Name, or RDN.

Parâmetros

dn

The distinguished name of an LDAP entity.

with_attrib

Used to request if the RDNs are returned with only values or their attributes as well. To get RDNs with the attributes (i.e. in attribute=value format) set with_attrib to 0 and to get only values set it to 1.

Valor Retornado

Returns an array of all DN components. The first element in this array has count key and represents the number of returned values, next elements are numerically indexed DN components.

ldap_error
ldap_first_attribute
LDAP Funções


Return first attribute

ldap_explode_dn
ldap_first_entry
LDAP Funções
PHP Manual

ldap_first_attribute

(PHP 4, PHP 5)

ldap_first_attribute — Return first attribute

Descrição

string ldap_first_attribute ( resource $link_identifier , resource $result_entry_identifier )

Gets the first attribute in the given entry. Remaining attributes are retrieved by calling ldap_next_attribute() successively.

Similar to reading entries, attributes are also read one by one from a particular entry.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

ber_identifier

ber_identifier is the identifier to internal memory location pointer. It is passed by reference. The same ber_identifier is passed to ldap_next_attribute() , which modifies that pointer.

Nota:

This parameter is no longer used as this is now handled automatically by PHP. For backwards compatibility PHP will not throw an error if this parameter is passed.

Valor Retornado

Returns the first attribute in the entry on success and FALSE on error.

Histórico

Versão | Descrição
5.2.4 | The ber_identifier was removed. This is now handled automatically by PHP.

Veja Também

  • ldap_next_attribute() - Get the next attribute in result
  • ldap_get_attributes() - Get attributes from a search result entry

ldap_explode_dn
ldap_first_entry
LDAP Funções


Return first result id

ldap_first_attribute
ldap_first_reference
LDAP Funções
PHP Manual

ldap_first_entry

(PHP 4, PHP 5)

ldap_first_entry — Return first result id

Descrição

resource ldap_first_entry ( resource $link_identifier , resource $result_identifier )

Returns the entry identifier for first entry in the result. This entry identifier is then supplied to ldap_next_entry() routine to get successive entries from the result.

Entries in the LDAP result are read sequentially using the ldap_first_entry() and ldap_next_entry() functions.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_identifier

Valor Retornado

Returns the result entry identifier for the first entry on success and FALSE on error.

Veja Também

  • ldap_get_entries() - Get all result entries

ldap_first_attribute
ldap_first_reference
LDAP Funções


Return first reference

ldap_first_entry
ldap_free_result
LDAP Funções
PHP Manual

ldap_first_reference

(PHP 4 >= 4.0.5, PHP 5)

ldap_first_reference — Return first reference

Descrição

resource ldap_first_reference ( resource $link , resource $result )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_first_entry
ldap_free_result
LDAP Funções


Free result memory

ldap_first_reference
ldap_get_attributes
LDAP Funções
PHP Manual

ldap_free_result

(PHP 4, PHP 5)

ldap_free_result — Free result memory

Descrição

bool ldap_free_result ( resource $result_identifier )

Frees up the memory allocated internally to store the result. All result memory will be automatically freed when the script terminates.

Typically all the memory allocated for the LDAP result gets freed at the end of the script. In case the script is making successive searches which return large result sets, ldap_free_result() could be called to keep the runtime memory usage by the script low.

Parâmetros

result_identifier

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

ldap_first_reference
ldap_get_attributes
LDAP Funções


Get attributes from a search result entry

ldap_free_result
ldap_get_dn
LDAP Funções
PHP Manual

ldap_get_attributes

(PHP 4, PHP 5)

ldap_get_attributes — Get attributes from a search result entry

Descrição

array ldap_get_attributes ( resource $link_identifier , resource $result_entry_identifier )

Reads attributes and values from an entry in the search result.

Having located a specific entry in the directory, you can find out what information is held for that entry by using this call. You would use this call for an application which "browses" directory entries and/or where you do not know the structure of the directory entries. In many applications you will be searching for a specific attribute such as an email address or a surname, and won't care what other data is held.

return_value["count"] = number of attributes in the entry
return_value[0] = first attribute
return_value[n] = nth attribute

return_value["attribute"]["count"] = number of values for attribute
return_value["attribute"][0] = first value of the attribute
return_value["attribute"][i] = (i+1)th value of the attribute

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

Valor Retornado

Returns a complete entry information in a multi-dimensional array on success and FALSE on error.

Exemplos

Exemplo #1 Show the list of attributes held for a particular directory entry

<?php
// $ds is the link identifier for the directory

// $sr is a valid search result from a prior call to
// one of the ldap directory search calls

$entry = ldap_first_entry($ds, $sr);

$attrs = ldap_get_attributes($ds, $entry);

echo $attrs["count"] . " attributes held for this entry:<p>";

for ($i=0; $i < $attrs["count"]; $i++) {
    echo $attrs[$i] . "<br />";
}
?>

Veja Também

  • ldap_first_attribute() - Return first attribute
  • ldap_next_attribute() - Get the next attribute in result

ldap_free_result
ldap_get_dn
LDAP Funções


Get the DN of a result entry

ldap_get_attributes
ldap_get_entries
LDAP Funções
PHP Manual

ldap_get_dn

(PHP 4, PHP 5)

ldap_get_dn — Get the DN of a result entry

Descrição

string ldap_get_dn ( resource $link_identifier , resource $result_entry_identifier )

Finds out the DN of an entry in the result.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

Valor Retornado

Returns the DN of the result entry and FALSE on error.

ldap_get_attributes
ldap_get_entries
LDAP Funções


Get all result entries

ldap_get_dn
ldap_get_option
LDAP Funções
PHP Manual

ldap_get_entries

(PHP 4, PHP 5)

ldap_get_entries — Get all result entries

Descrição

array ldap_get_entries ( resource $link_identifier , resource $result_identifier )

Reads multiple entries from the given result, and then reading the attributes and multiple values.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_identifier

Valor Retornado

Returns a complete result information in a multi-dimensional array on success and FALSE on error.

The structure of the array is as follows. The attribute index is converted to lowercase. (Attributes are case-insensitive for directory servers, but not when used as array indices.)

return_value["count"] = number of entries in the result
return_value[0] : refers to the details of first entry

return_value[i]["dn"] =  DN of the ith entry in the result

return_value[i]["count"] = number of attributes in ith entry
return_value[i][j] = NAME of the jth attribute in the ith entry in the result

return_value[i]["attribute"]["count"] = number of values for
                                        attribute in ith entry
return_value[i]["attribute"][j] = jth value of attribute in ith entry

Veja Também

  • ldap_first_entry() - Return first result id
  • ldap_next_entry() - Get next result entry

ldap_get_dn
ldap_get_option
LDAP Funções


Get the current value for given option

ldap_get_entries
ldap_get_values_len
LDAP Funções
PHP Manual

ldap_get_option

(PHP 4 >= 4.0.4, PHP 5)

ldap_get_option — Get the current value for given option

Descrição

bool ldap_get_option ( resource $link_identifier , int $option , mixed &$retval )

Sets retval to the value of the specified option.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

option

The parameter option can be one of:

Option | Type
LDAP_OPT_DEREF | integer
LDAP_OPT_SIZELIMIT | integer
LDAP_OPT_TIMELIMIT | integer
LDAP_OPT_NETWORK_TIMEOUT | integer
LDAP_OPT_PROTOCOL_VERSION | integer
LDAP_OPT_ERROR_NUMBER | integer
LDAP_OPT_REFERRALS | bool
LDAP_OPT_RESTART | bool
LDAP_OPT_HOST_NAME | string
LDAP_OPT_ERROR_STRING | string
LDAP_OPT_MATCHED_DN | string
LDAP_OPT_SERVER_CONTROLS | array
LDAP_OPT_CLIENT_CONTROLS | array

retval

This will be set to the option value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Check protocol version

<?php
// $ds is a valid link identifier for a directory server
if (ldap_get_option($ds, LDAP_OPT_PROTOCOL_VERSION, $version)) {
    echo "Using protocol version $version\n";
} else {
    echo "Unable to determine protocol version\n";
}
?>

Notas

Nota:

This function is only available when using OpenLDAP 2.x.x OR Netscape Directory SDK x.x.

Veja Também

  • ldap_set_option() - Set the value of the given option

ldap_get_entries
ldap_get_values_len
LDAP Funções


Get all binary values from a result entry

ldap_get_option
ldap_get_values
LDAP Funções
PHP Manual

ldap_get_values_len

(PHP 4, PHP 5)

ldap_get_values_len — Get all binary values from a result entry

Descrição

array ldap_get_values_len ( resource $link_identifier , resource $result_entry_identifier , string $attribute )

Reads all the values of the attribute in the entry in the result.

This function is used exactly like ldap_get_values() except that it handles binary data and not string data.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

attribute

Valor Retornado

Returns an array of values for the attribute on success and FALSE on error. Individual values are accessed by integer index in the array. The first index is 0. The number of values can be found by indexing "count" in the resultant array.

Veja Também

  • ldap_get_values() - Get all values from a result entry

ldap_get_option
ldap_get_values
LDAP Funções


Get all values from a result entry

ldap_get_values_len
ldap_list
LDAP Funções
PHP Manual

ldap_get_values

(PHP 4, PHP 5)

ldap_get_values — Get all values from a result entry

Descrição

array ldap_get_values ( resource $link_identifier , resource $result_entry_identifier , string $attribute )

Reads all the values of the attribute in the entry in the result.

This call needs a result_entry_identifier, so needs to be preceded by one of the ldap search calls and one of the calls to get an individual entry.

You application will either be hard coded to look for certain attributes (such as "surname" or "mail") or you will have to use the ldap_get_attributes() call to work out what attributes exist for a given entry.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

attribute

Valor Retornado

Returns an array of values for the attribute on success and FALSE on error. The number of values can be found by indexing "count" in the resultant array. Individual values are accessed by integer index in the array. The first index is 0.

LDAP allows more than one entry for an attribute, so it can, for example, store a number of email addresses for one person's directory entry all labeled with the attribute "mail"

    return_value["count"] = number of values for attribute
    return_value[0] = first value of attribute
    return_value[i] = ith value of attribute

Exemplos

Exemplo #1 List all values of the "mail" attribute for a directory entry

<?php
// $ds is a valid link identifier for a directory server

// $sr is a valid search result from a prior call to
//     one of the ldap directory search calls

// $entry is a valid entry identifier from a prior call to
//        one of the calls that returns a directory entry

$values = ldap_get_values($ds, $entry, "mail");

echo $values["count"] . " email addresses for this entry.<br />";

for ($i=0; $i < $values["count"]; $i++) {
    echo $values[$i] . "<br />";
}
?>

Veja Também

  • ldap_get_values_len() - Get all binary values from a result entry

ldap_get_values_len
ldap_list
LDAP Funções


Single-level search

ldap_get_values
ldap_mod_add
LDAP Funções
PHP Manual

ldap_list

(PHP 4, PHP 5)

ldap_list — Single-level search

Descrição

resource ldap_list ( resource $link_identifier , string $base_dn , string $filter [, array $attributes [, int $attrsonly [, int $sizelimit [, int $timelimit [, int $deref ]]]]] )

Performs the search for a specified filter on the directory with the scope LDAP_SCOPE_ONELEVEL.

LDAP_SCOPE_ONELEVEL means that the search should only return information that is at the level immediately below the base_dn given in the call. (Equivalent to typing "ls" and getting a list of files and folders in the current working directory.)

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

base_dn

The base DN for the directory.

filter

attributes

An array of the required attributes, e.g. array("mail", "sn", "cn"). Note that the "dn" is always returned irrespective of which attributes types are requested.

Using this parameter is much more efficient than the default action (which is to return all attributes and their associated values). The use of this parameter should therefore be considered good practice.

attrsonly

Should be set to 1 if only attribute types are wanted. If set to 0 both attributes types and attribute values are fetched which is the default behaviour.

sizelimit

Enables you to limit the count of entries fetched. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset sizelimit. You can set it lower though.

Some directory server hosts will be configured to return no more than a preset number of entries. If this occurs, the server will indicate that it has only returned a partial results set. This also occurs if you use this parameter to limit the count of fetched entries.

timelimit

Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset timelimit. You can set it lower though.

deref

Specifies how aliases should be handled during the search. It can be one of the following:

  • LDAP_DEREF_NEVER - (default) aliases are never dereferenced.
  • LDAP_DEREF_SEARCHING - aliases should be dereferenced during the search but not when locating the base object of the search.
  • LDAP_DEREF_FINDING - aliases should be dereferenced when locating the base object but not during the search.
  • LDAP_DEREF_ALWAYS - aliases should be dereferenced always.

Valor Retornado

Returns a search result identifier or FALSE on error.

Histórico

Versão | Descrição
4.0.5 | Parallel searches support was added. See ldap_search() for details.
4.0.2 | The attrsonly, sizelimit, timelimit and deref were added.

Exemplos

Exemplo #1 Produce a list of all organizational units of an organization

<?php
// $ds is a valid link identifier for a directory server

$basedn = "o=My Company, c=US";
$justthese = array("ou");

$sr = ldap_list($ds, $basedn, "ou=*", $justthese);

$info = ldap_get_entries($ds, $sr);

for ($i=0; $i < $info["count"]; $i++) {
    echo $info[$i]["ou"][0];
}
?>

Veja Também

  • ldap_search() - Search LDAP tree

ldap_get_values
ldap_mod_add
LDAP Funções


Add attribute values to current attributes

ldap_list
ldap_mod_del
LDAP Funções
PHP Manual

ldap_mod_add

(PHP 4, PHP 5)

ldap_mod_add — Add attribute values to current attributes

Descrição

bool ldap_mod_add ( resource $link_identifier , string $dn , array $entry )

Adds one or more attributes to the specified dn. It performs the modification at the attribute level as opposed to the object level. Object-level additions are done by the ldap_add() function.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

entry

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

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

Veja Também

  • ldap_mod_del() - Delete attribute values from current attributes
  • ldap_mod_replace() - Replace attribute values with new ones

ldap_list
ldap_mod_del
LDAP Funções


Delete attribute values from current attributes

ldap_mod_add
ldap_mod_replace
LDAP Funções
PHP Manual

ldap_mod_del

(PHP 4, PHP 5)

ldap_mod_del — Delete attribute values from current attributes

Descrição

bool ldap_mod_del ( resource $link_identifier , string $dn , array $entry )

Removes one or more attributes from the specified dn. It performs the modification at the attribute level as opposed to the object level. Object-level deletions are done by the ldap_delete() function.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

entry

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ldap_mod_add() - Add attribute values to current attributes
  • ldap_mod_replace() - Replace attribute values with new ones

ldap_mod_add
ldap_mod_replace
LDAP Funções


Replace attribute values with new ones

ldap_mod_del
ldap_modify
LDAP Funções
PHP Manual

ldap_mod_replace

(PHP 4, PHP 5)

ldap_mod_replace — Replace attribute values with new ones

Descrição

bool ldap_mod_replace ( resource $link_identifier , string $dn , array $entry )

Replaces one or more attributes from the specified dn. It performs the modification at the attribute level as opposed to the object level. Object-level modifications are done by the ldap_modify() function.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

entry

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

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

Veja Também

  • ldap_mod_del() - Delete attribute values from current attributes
  • ldap_mod_add() - Add attribute values to current attributes

ldap_mod_del
ldap_modify
LDAP Funções


Modify an LDAP entry

ldap_mod_replace
ldap_next_attribute
LDAP Funções
PHP Manual

ldap_modify

(PHP 4, PHP 5)

ldap_modify — Modify an LDAP entry

Descrição

bool ldap_modify ( resource $link_identifier , string $dn , array $entry )

Modify the existing entries in the LDAP directory. The structure of the entry is same as in ldap_add().

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

entry

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

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

Veja Também

  • ldap_rename() - Modify the name of an entry

ldap_mod_replace
ldap_next_attribute
LDAP Funções


Get the next attribute in result

ldap_modify
ldap_next_entry
LDAP Funções
PHP Manual

ldap_next_attribute

(PHP 4, PHP 5)

ldap_next_attribute — Get the next attribute in result

Descrição

string ldap_next_attribute ( resource $link_identifier , resource $result_entry_identifier )

Retrieves the attributes in an entry. The first call to ldap_next_attribute() is made with the result_entry_identifier returned from ldap_first_attribute().

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

ber_identifier

The internal state of the pointer is maintained by this parameter.

Nota:

This parameter is no longer used as this is now handled automatically by PHP. For backwards compatibility PHP will not throw an error if this parameter is passed.

Valor Retornado

Returns the next attribute in an entry on success and FALSE on error.

Histórico

Versão | Descrição
5.2.4 | The ber_identifier was removed. This is now handled automatically by PHP.

Veja Também

  • ldap_get_attributes() - Get attributes from a search result entry

ldap_modify
ldap_next_entry
LDAP Funções


Get next result entry

ldap_next_attribute
ldap_next_reference
LDAP Funções
PHP Manual

ldap_next_entry

(PHP 4, PHP 5)

ldap_next_entry — Get next result entry

Descrição

resource ldap_next_entry ( resource $link_identifier , resource $result_entry_identifier )

Retrieve the entries stored in the result. Successive calls to the ldap_next_entry() return entries one by one till there are no more entries. The first call to ldap_next_entry() is made after the call to ldap_first_entry() with the result_entry_identifier as returned from the ldap_first_entry().

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

result_entry_identifier

Valor Retornado

Returns entry identifier for the next entry in the result whose entries are being read starting with ldap_first_entry(). If there are no more entries in the result then it returns FALSE.

Veja Também

  • ldap_get_entries() - Get all result entries

ldap_next_attribute
ldap_next_reference
LDAP Funções


Get next reference

ldap_next_entry
ldap_parse_reference
LDAP Funções
PHP Manual

ldap_next_reference

(PHP 4 >= 4.0.5, PHP 5)

ldap_next_reference — Get next reference

Descrição

resource ldap_next_reference ( resource $link , resource $entry )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_next_entry
ldap_parse_reference
LDAP Funções


Extract information from reference entry

ldap_next_reference
ldap_parse_result
LDAP Funções
PHP Manual

ldap_parse_reference

(PHP 4 >= 4.0.5, PHP 5)

ldap_parse_reference — Extract information from reference entry

Descrição

bool ldap_parse_reference ( resource $link , resource $entry , array &$referrals )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_next_reference
ldap_parse_result
LDAP Funções


Extract information from result

ldap_parse_reference
ldap_read
LDAP Funções
PHP Manual

ldap_parse_result

(PHP 4 >= 4.0.5, PHP 5)

ldap_parse_result — Extract information from result

Descrição

bool ldap_parse_result ( resource $link , resource $result , int &$errcode [, string &$matcheddn [, string &$errmsg [, array &$referrals ]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_parse_reference
ldap_read
LDAP Funções


Read an entry

ldap_parse_result
ldap_rename
LDAP Funções
PHP Manual

ldap_read

(PHP 4, PHP 5)

ldap_read — Read an entry

Descrição

resource ldap_read ( resource $link_identifier , string $base_dn , string $filter [, array $attributes [, int $attrsonly [, int $sizelimit [, int $timelimit [, int $deref ]]]]] )

Performs the search for a specified filter on the directory with the scope LDAP_SCOPE_BASE. So it is equivalent to reading an entry from the directory.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

base_dn

The base DN for the directory.

filter

An empty filter is not allowed. If you want to retrieve absolutely all information for this entry, use a filter of objectClass=*. If you know which entry types are used on the directory server, you might use an appropriate filter such as objectClass=inetOrgPerson.

attributes

An array of the required attributes, e.g. array("mail", "sn", "cn"). Note that the "dn" is always returned irrespective of which attributes types are requested.

Using this parameter is much more efficient than the default action (which is to return all attributes and their associated values). The use of this parameter should therefore be considered good practice.

attrsonly

Should be set to 1 if only attribute types are wanted. If set to 0 both attributes types and attribute values are fetched which is the default behaviour.

sizelimit

Enables you to limit the count of entries fetched. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset sizelimit. You can set it lower though.

Some directory server hosts will be configured to return no more than a preset number of entries. If this occurs, the server will indicate that it has only returned a partial results set. This also occurs if you use this parameter to limit the count of fetched entries.

timelimit

Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset timelimit. You can set it lower though.

deref

Specifies how aliases should be handled during the search. It can be one of the following:

  • LDAP_DEREF_NEVER - (default) aliases are never dereferenced.
  • LDAP_DEREF_SEARCHING - aliases should be dereferenced during the search but not when locating the base object of the search.
  • LDAP_DEREF_FINDING - aliases should be dereferenced when locating the base object but not during the search.
  • LDAP_DEREF_ALWAYS - aliases should be dereferenced always.

Valor Retornado

Returns a search result identifier or FALSE on error.

Histórico

Versão | Descrição
4.0.5 | Parallel searches support was added. See ldap_search() for details.
4.0.2 | The attrsonly, sizelimit, timelimit and deref were added.

ldap_parse_result
ldap_rename
LDAP Funções


Modify the name of an entry

ldap_read
ldap_sasl_bind
LDAP Funções
PHP Manual

ldap_rename

(PHP 4 >= 4.0.5, PHP 5)

ldap_rename — Modify the name of an entry

Descrição

bool ldap_rename ( resource $link_identifier , string $dn , string $newrdn , string $newparent , bool $deleteoldrdn )

The entry specified by dn is renamed/moved.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

newrdn

The new RDN.

newparent

The new parent/superior entry.

deleteoldrdn

If TRUE the old RDN value(s) is removed, else the old RDN value(s) is retained as non-distinguished values of the entry.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

This function currently only works with LDAPv3. You may have to use ldap_set_option() prior to binding to use LDAPv3. This function is only available when using OpenLDAP 2.x.x OR Netscape Directory SDK x.x.

Veja Também

  • ldap_modify() - Modify an LDAP entry

ldap_read
ldap_sasl_bind
LDAP Funções


Bind to LDAP directory using SASL

ldap_rename
ldap_search
LDAP Funções
PHP Manual

ldap_sasl_bind

(PHP 5)

ldap_sasl_bind — Bind to LDAP directory using SASL

Descrição

bool ldap_sasl_bind ( resource $link [, string $binddn = NULL [, string $password = NULL [, string $sasl_mech = NULL [, string $sasl_realm = NULL [, string $sasl_authc_id = NULL [, string $sasl_authz_id = NULL [, string $props = NULL ]]]]]]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Requirement
ldap_sasl_bind() requires SASL support (sasl.h). Be sure --with-ldap-sasl is used when configuring PHP otherwise this function will be undefined.

Histórico

Versão | Descrição
5.3.3 | Support on Windows was added.

ldap_rename
ldap_search
LDAP Funções


Search LDAP tree

ldap_sasl_bind
ldap_set_option
LDAP Funções
PHP Manual

ldap_search

(PHP 4, PHP 5)

ldap_search — Search LDAP tree

Descrição

resource ldap_search ( resource $link_identifier , string $base_dn , string $filter [, array $attributes [, int $attrsonly [, int $sizelimit [, int $timelimit [, int $deref ]]]]] )

Performs the search for a specified filter on the directory with the scope of LDAP_SCOPE_SUBTREE. This is equivalent to searching the entire directory.

From 4.0.5 on it's also possible to do parallel searches. To do this you use an array of link identifiers, rather than a single identifier, as the first argument. If you don't want the same base DN and the same filter for all the searches, you can also use an array of base DNs and/or an array of filters. Those arrays must be of the same size as the link identifier array since the first entries of the arrays are used for one search, the second entries are used for another, and so on. When doing parallel searches an array of search result identifiers is returned, except in case of error, then the entry corresponding to the search will be FALSE. This is very much like the value normally returned, except that a result identifier is always returned when a search was made. There are some rare cases where the normal search returns FALSE while the parallel search returns an identifier.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

base_dn

The base DN for the directory.

filter

The search filter can be simple or advanced, using boolean operators in the format described in the LDAP documentation (see the » Netscape Directory SDK for full information on filters).

attributes

An array of the required attributes, e.g. array("mail", "sn", "cn"). Note that the "dn" is always returned irrespective of which attributes types are requested.

Using this parameter is much more efficient than the default action (which is to return all attributes and their associated values). The use of this parameter should therefore be considered good practice.

attrsonly

Should be set to 1 if only attribute types are wanted. If set to 0 both attributes types and attribute values are fetched which is the default behaviour.

sizelimit

Enables you to limit the count of entries fetched. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset sizelimit. You can set it lower though.

Some directory server hosts will be configured to return no more than a preset number of entries. If this occurs, the server will indicate that it has only returned a partial results set. This also occurs if you use this parameter to limit the count of fetched entries.

timelimit

Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit.

Nota:

This parameter can NOT override server-side preset timelimit. You can set it lower though.

deref

Specifies how aliases should be handled during the search. It can be one of the following:

  • LDAP_DEREF_NEVER - (default) aliases are never dereferenced.
  • LDAP_DEREF_SEARCHING - aliases should be dereferenced during the search but not when locating the base object of the search.
  • LDAP_DEREF_FINDING - aliases should be dereferenced when locating the base object but not during the search.
  • LDAP_DEREF_ALWAYS - aliases should be dereferenced always.

Valor Retornado

Returns a search result identifier or FALSE on error.

Histórico

Versão | Descrição
4.0.5 | Parallel searches support was added.
4.0.2 | The attrsonly, sizelimit, timelimit and deref were added.

Exemplos

The example below retrieves the organizational unit, surname, given name and email address for all people in "My Company" where the surname or given name contains the substring $person. This example uses a boolean filter to tell the server to look for information in more than one attribute.

Exemplo #1 LDAP search

<?php
// $ds is a valid link identifier for a directory server

// $person is all or part of a person's name, eg "Jo"

$dn = "o=My Company, c=US";
$filter="(|(sn=$person*)(givenname=$person*))";
$justthese = array("ou", "sn", "givenname", "mail");

$sr=ldap_search($ds, $dn, $filter, $justthese);

$info = ldap_get_entries($ds, $sr);

echo $info["count"]." entries returned\n";
?>

ldap_sasl_bind
ldap_set_option
LDAP Funções


Set the value of the given option

ldap_search
ldap_set_rebind_proc
LDAP Funções
PHP Manual

ldap_set_option

(PHP 4 >= 4.0.4, PHP 5)

ldap_set_option — Set the value of the given option

Descrição

bool ldap_set_option ( resource $link_identifier , int $option , mixed $newval )

Sets the value of the specified option to be newval.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

option

The parameter option can be one of:

Option | Type | Available since
LDAP_OPT_DEREF | integer
LDAP_OPT_SIZELIMIT | integer
LDAP_OPT_TIMELIMIT | integer
LDAP_OPT_NETWORK_TIMEOUT | integer | PHP 5.3.0
LDAP_OPT_PROTOCOL_VERSION | integer
LDAP_OPT_ERROR_NUMBER | integer
LDAP_OPT_REFERRALS | bool
LDAP_OPT_RESTART | bool
LDAP_OPT_HOST_NAME | string
LDAP_OPT_ERROR_STRING | string
LDAP_OPT_MATCHED_DN | string
LDAP_OPT_SERVER_CONTROLS | array
LDAP_OPT_CLIENT_CONTROLS | array

LDAP_OPT_SERVER_CONTROLS and LDAP_OPT_CLIENT_CONTROLS require a list of controls, this means that the value must be an array of controls. A control consists of an oid identifying the control, an optional value, and an optional flag for criticality. In PHP a control is given by an array containing an element with the key oid and string value, and two optional elements. The optional elements are key value with string value and key iscritical with boolean value. iscritical defaults to FALSE if not supplied. See » draft-ietf-ldapext-ldap-c-api-xx.txt for details. See also the second example below.

newval

The new value for the specified option.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Set protocol version

<?php
// $ds is a valid link identifier for a directory server
if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
    echo "Using LDAPv3";
} else {
    echo "Failed to set protocol version to 3";
}
?>

Exemplo #2 Set server controls

<?php
// $ds is a valid link identifier for a directory server
// control with no value
$ctrl1 = array("oid" => "1.2.752.58.10.1", "iscritical" => true);
// iscritical defaults to FALSE
$ctrl2 = array("oid" => "1.2.752.58.1.10", "value" => "magic");
// try to set both controls
if (!ldap_set_option($ds, LDAP_OPT_SERVER_CONTROLS, array($ctrl1, $ctrl2))) {
    echo "Failed to set server controls";
}
?>

Notas

Nota:

This function is only available when using OpenLDAP 2.x.x OR Netscape Directory SDK x.x.

Veja Também

  • ldap_get_option() - Get the current value for given option

ldap_search
ldap_set_rebind_proc
LDAP Funções


Set a callback function to do re-binds on referral chasing

ldap_set_option
ldap_sort
LDAP Funções
PHP Manual

ldap_set_rebind_proc

(PHP 4 >= 4.2.0, PHP 5)

ldap_set_rebind_proc — Set a callback function to do re-binds on referral chasing

Descrição

bool ldap_set_rebind_proc ( resource $link , callback $callback )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_set_option
ldap_sort
LDAP Funções


Sort LDAP result entries

ldap_set_rebind_proc
ldap_start_tls
LDAP Funções
PHP Manual

ldap_sort

(PHP 4 >= 4.2.0, PHP 5)

ldap_sort — Sort LDAP result entries

Descrição

bool ldap_sort ( resource $link , resource $result , string $sortfilter )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_set_rebind_proc
ldap_start_tls
LDAP Funções


Start TLS

ldap_sort
ldap_t61_to_8859
LDAP Funções
PHP Manual

ldap_start_tls

(PHP 4 >= 4.2.0, PHP 5)

ldap_start_tls — Start TLS

Descrição

bool ldap_start_tls ( resource $link )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_sort
ldap_t61_to_8859
LDAP Funções


Translate t61 characters to 8859 characters

ldap_start_tls
ldap_unbind
LDAP Funções
PHP Manual

ldap_t61_to_8859

(PHP 4 >= 4.0.2, PHP 5)

ldap_t61_to_8859 — Translate t61 characters to 8859 characters

Descrição

string ldap_t61_to_8859 ( string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

ldap_start_tls
ldap_unbind
LDAP Funções


Unbind from LDAP directory

ldap_t61_to_8859
Lotus Notes
LDAP Funções
PHP Manual

ldap_unbind

(PHP 4, PHP 5)

ldap_unbind — Unbind from LDAP directory

Descrição

bool ldap_unbind ( resource $link_identifier )

Unbinds from the LDAP directory.

Parâmetros

link_identifier

An LDAP link identifier, returned by ldap_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ldap_bind() - Bind to LDAP directory

ldap_t61_to_8859
Lotus Notes
LDAP Funções


Lotus Notes

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções do Lotus Notes
    • notes_body — Abre a mensagem msg_number na caixa de e-mail especificado no servidor especificado (leave serv)
    • notes_copy_db — Copia um banco de dados Lotus Notes
    • notes_create_db — Cria um banco de dados Lotus Notes
    • notes_create_note — Cria uma mensagem usando o formulário form_name
    • notes_drop_db — Deleta um banco de dados Lotus Notes
    • notes_find_note — Retorna um id note encontrado no banco de dados database_name
    • notes_header_info — Abre uma mensagem msg_number na caixa de e-mail especificada no servidor especificado (leave serv)
    • notes_list_msgs — Retorna as mensagens do banco de dados selecionado (database_name)
    • notes_mark_read — Marca um note_id como lido para o usuário user_name
    • notes_mark_unread — Marca um note_id como não-lido para o usuário user_name
    • notes_nav_create — Cria um nome de navegação, no banco de dados database_name
    • notes_search — Procura mensagens que contenham palavras que combinem no banco de dados database_name
    • notes_unread — Retorna os id's de mensagens não lidas para o usuário atual user_name
    • notes_version — Retorna a versão do Lotus Notes
ldap_unbind
Introdução
Outros Serviços


Introdução

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/notes.

Aviso

Esta extensão é atualmente não suportada, assim esperando por um mantenedor.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Lotus Notes
Instalação/Configuração
Lotus Notes


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Lotus Notes


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções do Lotus Notes
Lotus Notes


Funções do Lotus Notes

Índice

  • notes_body — Abre a mensagem msg_number na caixa de e-mail especificado no servidor especificado (leave serv)
  • notes_copy_db — Copia um banco de dados Lotus Notes
  • notes_create_db — Cria um banco de dados Lotus Notes
  • notes_create_note — Cria uma mensagem usando o formulário form_name
  • notes_drop_db — Deleta um banco de dados Lotus Notes
  • notes_find_note — Retorna um id note encontrado no banco de dados database_name
  • notes_header_info — Abre uma mensagem msg_number na caixa de e-mail especificada no servidor especificado (leave serv)
  • notes_list_msgs — Retorna as mensagens do banco de dados selecionado (database_name)
  • notes_mark_read — Marca um note_id como lido para o usuário user_name
  • notes_mark_unread — Marca um note_id como não-lido para o usuário user_name
  • notes_nav_create — Cria um nome de navegação, no banco de dados database_name
  • notes_search — Procura mensagens que contenham palavras que combinem no banco de dados database_name
  • notes_unread — Retorna os id's de mensagens não lidas para o usuário atual user_name
  • notes_version — Retorna a versão do Lotus Notes
Constantes pré-definidas
notes_body
Lotus Notes


Abre a mensagem msg_number na caixa de e-mail especificado no servidor especificado (leave serv)

Funções do Lotus Notes
notes_copy_db
Funções do Lotus Notes
PHP Manual

notes_body

(PHP 4 >= 4.0.5)

notes_body — Abre a mensagem msg_number na caixa de e-mail especificado no servidor especificado (leave serv)

Descrição

array notes_body ( string $server , string $mailbox , int $msg_number )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Funções do Lotus Notes
notes_copy_db
Funções do Lotus Notes


Copia um banco de dados Lotus Notes

notes_body
notes_create_db
Funções do Lotus Notes
PHP Manual

notes_copy_db

(PHP 4 >= 4.0.5)

notes_copy_db — Copia um banco de dados Lotus Notes

Descrição

bool notes_copy_db ( string $from_database_name , string $to_database_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_body
notes_create_db
Funções do Lotus Notes


Cria um banco de dados Lotus Notes

notes_copy_db
notes_create_note
Funções do Lotus Notes
PHP Manual

notes_create_db

(PHP 4 >= 4.0.5)

notes_create_db — Cria um banco de dados Lotus Notes

Descrição

bool notes_create_db ( string $database_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_copy_db
notes_create_note
Funções do Lotus Notes


Cria uma mensagem usando o formulário form_name

notes_create_db
notes_drop_db
Funções do Lotus Notes
PHP Manual

notes_create_note

(PHP 4 >= 4.0.5)

notes_create_note — Cria uma mensagem usando o formulário form_name

Descrição

bool notes_create_note ( string $database_name , string $form_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_create_db
notes_drop_db
Funções do Lotus Notes


Deleta um banco de dados Lotus Notes

notes_create_note
notes_find_note
Funções do Lotus Notes
PHP Manual

notes_drop_db

(PHP 4 >= 4.0.5)

notes_drop_db — Deleta um banco de dados Lotus Notes

Descrição

bool notes_drop_db ( string $database_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_create_note
notes_find_note
Funções do Lotus Notes


Retorna um id note encontrado no banco de dados database_name

notes_drop_db
notes_header_info
Funções do Lotus Notes
PHP Manual

notes_find_note

(PHP 4 >= 4.0.5)

notes_find_note — Retorna um id note encontrado no banco de dados database_name

Descrição

int notes_find_note ( string $database_name , string $name [, string $type ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_drop_db
notes_header_info
Funções do Lotus Notes


Abre uma mensagem msg_number na caixa de e-mail especificada no servidor especificado (leave serv)

notes_find_note
notes_list_msgs
Funções do Lotus Notes
PHP Manual

notes_header_info

(PHP 4 >= 4.0.5)

notes_header_info — Abre uma mensagem msg_number na caixa de e-mail especificada no servidor especificado (leave serv)

Descrição

object notes_header_info ( string $server , string $mailbox , int $msg_number )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_find_note
notes_list_msgs
Funções do Lotus Notes


Retorna as mensagens do banco de dados selecionado (database_name)

notes_header_info
notes_mark_read
Funções do Lotus Notes
PHP Manual

notes_list_msgs

(PHP 4 >= 4.0.5)

notes_list_msgs — Retorna as mensagens do banco de dados selecionado (database_name)

Descrição

bool notes_list_msgs ( string $db )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_header_info
notes_mark_read
Funções do Lotus Notes


Marca um note_id como lido para o usuário user_name

notes_list_msgs
notes_mark_unread
Funções do Lotus Notes
PHP Manual

notes_mark_read

(PHP 4 >= 4.0.5)

notes_mark_read — Marca um note_id como lido para o usuário user_name

Descrição

bool notes_mark_read ( string $database_name , string $user_name , string $note_id )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_list_msgs
notes_mark_unread
Funções do Lotus Notes


Marca um note_id como não-lido para o usuário user_name

notes_mark_read
notes_nav_create
Funções do Lotus Notes
PHP Manual

notes_mark_unread

(PHP 4 >= 4.0.5)

notes_mark_unread — Marca um note_id como não-lido para o usuário user_name

Descrição

bool notes_mark_unread ( string $database_name , string $user_name , string $note_id )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_mark_read
notes_nav_create
Funções do Lotus Notes


Cria um nome de navegação, no banco de dados database_name

notes_mark_unread
notes_search
Funções do Lotus Notes
PHP Manual

notes_nav_create

(PHP 4 >= 4.0.5)

notes_nav_create — Cria um nome de navegação, no banco de dados database_name

Descrição

bool notes_nav_create ( string $database_name , string $name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_mark_unread
notes_search
Funções do Lotus Notes


Procura mensagens que contenham palavras que combinem no banco de dados database_name

notes_nav_create
notes_unread
Funções do Lotus Notes
PHP Manual

notes_search

(PHP 4 >= 4.0.5)

notes_search — Procura mensagens que contenham palavras que combinem no banco de dados database_name

Descrição

array notes_search ( string $database_name , string $keywords )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_nav_create
notes_unread
Funções do Lotus Notes


Retorna os id's de mensagens não lidas para o usuário atual user_name

notes_search
notes_version
Funções do Lotus Notes
PHP Manual

notes_unread

(PHP 4 >= 4.0.5)

notes_unread — Retorna os id's de mensagens não lidas para o usuário atual user_name

Descrição

array notes_unread ( string $database_name , string $user_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_search
notes_version
Funções do Lotus Notes


Retorna a versão do Lotus Notes

notes_unread
Memcache
Funções do Lotus Notes
PHP Manual

notes_version

(PHP 4 >= 4.0.5)

notes_version — Retorna a versão do Lotus Notes

Descrição

float notes_version ( string $database_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

notes_unread
Memcache
Funções do Lotus Notes


Memcache

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Memcache — The Memcache class
    • Memcache::add — Add an item to the server
    • Memcache::addServer — Add a memcached server to connection pool
    • Memcache::close — Close memcached server connection
    • Memcache::connect — Open memcached server connection
    • Memcache::decrement — Decrement item's value
    • Memcache::delete — Delete item from the server
    • Memcache::flush — Flush all existing items at the server
    • Memcache::get — Retrieve item from the server
    • Memcache::getExtendedStats — Get statistics from all servers in pool
    • Memcache::getServerStatus — Returns server status
    • Memcache::getStats — Get statistics of the server
    • Memcache::getVersion — Return version of the server
    • Memcache::increment — Increment item's value
    • Memcache::pconnect — Open memcached server persistent connection
    • Memcache::replace — Replace value of the existing item
    • Memcache::set — Store data at the server
    • Memcache::setCompressThreshold — Enable automatic compression of large values
    • Memcache::setServerParams — Changes server parameters and status at runtime
  • Memcache Funções
    • memcache_debug — Turn debug output on/off
notes_version
Introdução
Outros Serviços


Introdução

Memcache module provides handy procedural and object oriented interface to memcached, highly effective caching daemon, which was especially designed to decrease database load in dynamic web applications.

The Memcache module also provides a session handler (memcache).

More information about memcached can be found at » http://www.memcached.org/.

Memcache
Instalação/Configuração
Memcache


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Memcache


Dependências

This module uses functions of » zlib to support on-the-fly data compression. Zlib is required to install this module.

PHP 4.3.3 or newer is required to use the memcache extension.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/memcache.

Nota:

It's possible to disable memcache session handler support. The 'pecl install' option prompts for this (default is enabled) however when compiling statically into PHP the --disable-memcache-session configure option may be used.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Memcache Configuration Options
Name | Default | Changeable | Changelog
memcache.allow_failover | "1" | PHP_INI_ALL | Available since memcache 2.0.2.
memcache.max_failover_attempts | "20" | PHP_INI_ALL | Available since memcache 2.1.0.
memcache.chunk_size | "8192" | PHP_INI_ALL | Available since memcache 2.0.2.
memcache.default_port | "11211" | PHP_INI_ALL | Available since memcache 2.0.2.
memcache.hash_strategy | "standard" | PHP_INI_ALL | Available since memcache 2.2.0.
memcache.hash_function | "crc32" | PHP_INI_ALL | Available since memcache 2.2.0.
session.save_handler | "files" | PHP_INI_ALL | Supported since memcache 2.1.2
session.save_path | "" | PHP_INI_ALL | Supported since memcache 2.1.2
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

memcache.allow_failover boolean

Whether to transparently failover to other servers on errors.

memcache.max_failover_attempts integer

Defines how many servers to try when setting and getting data. Used only in conjunction with memcache.allow_failover.

memcache.chunk_size integer

Data will be transferred in chunks of this size, setting the value lower requires more network writes. Try increasing this value to 32768 if noticing otherwise inexplicable slowdowns.

memcache.default_port string

The default TCP port number to use when connecting to the memcached server if no other port is specified.

memcache.hash_strategy string

Controls which strategy to use when mapping keys to servers. Set this value to consistent to enable consistent hashing which allows servers to be added or removed from the pool without causing keys to be remapped. Setting this value to standard results in the old strategy being used.

memcache.hash_function string

Controls which hash function to apply when mapping keys to servers, crc32 uses the standard CRC32 hash while fnv uses FNV-1a.

session.save_handler string

Use memcache as a session handler by setting this value to memcache.

session.save_path string

Defines a comma separated of server urls to use for session storage, for example "tcp://host1:11211, tcp://host2:11211".

Each url may contain parameters which are applied to that server, they are the same as for the Memcache::addServer() method. For example "tcp://host1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

There is only one resource type used in memcache module - it's the link identifier for a cache server connection.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Memcache Constants
Name | Description
MEMCACHE_COMPRESSED (integer) | Used to turn on-the-fly data compression on with Memcache::set(), Memcache::add() e Memcache::replace().
MEMCACHE_HAVE_SESSION (integer) | 1 if this Memcache session handler is available, 0 otherwise.
Tipos Resource
Exemplos
Memcache


Exemplos

Índice

Constantes pré-definidas
Memcache


Exemplos
Memcache
Exemplos
PHP Manual

Exemplo #1 memcache extension overview example

In this example, an object is being saved in the cache and then retrieved back. Object and other non-scalar types are serialized before saving, so it's impossible to store resources (i.e. connection identifiers and others) in the cache.

<?php

$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");

$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";

$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";

var_dump($get_result);

?>

Exemplo #2 Using memcache session handler

<?php

$session_save_path = "tcp://$host:$port?persistent=1&weight=2&timeout=2&retry_interval=10,  ,tcp://$host:$port  ";
ini_set('session.save_handler', 'memcache');
ini_set('session.save_path', $session_save_path);

?>

Exemplos
Memcache
Exemplos


The Memcache class

Introdução

Represents a connection to a set of memcache servers.

Sinopse da classe

Memcache {
bool add ( string $key , mixed $var [, int $flag [, int $expire ]] )
bool addServer ( string $host [, int $port = 11211 [, bool $persistent [, int $weight [, int $timeout [, int $retry_interval [, bool $status [, callback $failure_callback [, int $timeoutms ]]]]]]]] )
bool close ( void )
bool connect ( string $host [, int $port [, int $timeout ]] )
int decrement ( string $key [, int $value = 1 ] )
bool delete ( string $key [, int $timeout = 0 ] )
bool flush ( void )
string get ( string $key [, int &$flags ] )
array getExtendedStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )
int getServerStatus ( string $host [, int $port = 11211 ] )
array getStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )
string getVersion ( void )
int increment ( string $key [, int $value = 1 ] )
bool pconnect ( string $host [, int $port [, int $timeout ]] )
bool replace ( string $key , mixed $var [, int $flag [, int $expire ]] )
bool set ( string $key , mixed $var [, int $flag [, int $expire ]] )
bool setCompressThreshold ( int $threshold [, float $min_savings ] )
bool setServerParams ( string $host [, int $port = 11211 [, int $timeout [, int $retry_interval = false [, bool $status [, callback $failure_callback ]]]]] )
}

Índice

  • Memcache::add — Add an item to the server
  • Memcache::addServer — Add a memcached server to connection pool
  • Memcache::close — Close memcached server connection
  • Memcache::connect — Open memcached server connection
  • Memcache::decrement — Decrement item's value
  • Memcache::delete — Delete item from the server
  • Memcache::flush — Flush all existing items at the server
  • Memcache::get — Retrieve item from the server
  • Memcache::getExtendedStats — Get statistics from all servers in pool
  • Memcache::getServerStatus — Returns server status
  • Memcache::getStats — Get statistics of the server
  • Memcache::getVersion — Return version of the server
  • Memcache::increment — Increment item's value
  • Memcache::pconnect — Open memcached server persistent connection
  • Memcache::replace — Replace value of the existing item
  • Memcache::set — Store data at the server
  • Memcache::setCompressThreshold — Enable automatic compression of large values
  • Memcache::setServerParams — Changes server parameters and status at runtime
Memcache::add
Memcache


Add an item to the server

Memcache
Memcache::addServer
Memcache
PHP Manual

Memcache::add

(PECL memcache >= 0.2.0)

Memcache::add — Add an item to the server

Descrição

bool Memcache::add ( string $key , mixed $var [, int $flag [, int $expire ]] )

Memcache::add() stores variable var with key only if such key doesn't exist at the server yet. Also you can use memcache_add() function.

Parâmetros

key

The key that will be associated with the item.

var

The variable to store. Strings and integers are stored as is, other types are stored serialized.

flag

Use MEMCACHE_COMPRESSED to store the item compressed (uses zlib).

expire

Expiration time of the item. If it's equal to zero, the item will never expire. You can also use Unix timestamp or a number of seconds starting from current time, but in the latter case the number of seconds may not exceed 2592000 (30 days).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Returns FALSE if such key already exist. For the rest Memcache::add() behaves similarly to Memcache::set().

Exemplos

Exemplo #1 Memcache::add() example

<?php

$memcache_obj = memcache_connect("localhost", 11211);

/* procedural API */
memcache_add($memcache_obj, 'var_key', 'test variable', false, 30);

/* OO API */
$memcache_obj->add('var_key', 'test variable', false, 30);

?>

Veja Também

  • Memcache::set() - Store data at the server
  • Memcache::replace() - Replace value of the existing item

Memcache
Memcache::addServer
Memcache


Add a memcached server to connection pool

Memcache::add
Memcache::close
Memcache
PHP Manual

Memcache::addServer

(PECL memcache >= 2.0.0)

Memcache::addServer — Add a memcached server to connection pool

Descrição

bool Memcache::addServer ( string $host [, int $port = 11211 [, bool $persistent [, int $weight [, int $timeout [, int $retry_interval [, bool $status [, callback $failure_callback [, int $timeoutms ]]]]]]]] )

Memcache::addServer() adds a server to the connection pool. The connection, which was opened using Memcache::addServer() will be automatically closed at the end of script execution, you can also close it manually with Memcache::close(). You can also use the memcache_add_server() function.

When using this method (as opposed to Memcache::connect() and Memcache::pconnect()) the network connection is not established until actually needed. Thus there is no overhead in adding a large number of servers to the pool, even though they might not all be used.

Failover may occur at any stage in any of the methods, as long as other servers are available the request the user won't notice. Any kind of socket or Memcached server level errors (except out-of-memory) may trigger the failover. Normal client errors such as adding an existing key will not trigger a failover.

Nota:

This function has been added to Memcache version 2.0.0.

Parâmetros

host

Point to the host where memcached is listening for connections. This parameter may also specify other transports like unix:///path/to/memcached.sock to use UNIX domain sockets, in this case port must also be set to 0.

port

Point to the port where memcached is listening for connections. Set this parameter to 0 when using UNIX domain sockets.

persistent

Controls the use of a persistent connection. Default to TRUE.

weight

Number of buckets to create for this server which in turn control its probability of it being selected. The probability is relative to the total weight of all servers.

timeout

Value in seconds which will be used for connecting to the daemon. Think twice before changing the default value of 1 second - you can lose all the advantages of caching if your connection is too slow.

retry_interval

Controls how often a failed server will be retried, the default value is 15 seconds. Setting this parameter to -1 disables automatic retry. Neither this nor the persistent parameter has any effect when the extension is loaded dynamically via dl().

Each failed connection struct has its own timeout and before it has expired the struct will be skipped when selecting backends to serve a request. Once expired the connection will be successfully reconnected or marked as failed for another retry_interval seconds. The typical effect is that each web server child will retry the connection about every retry_interval seconds when serving a page.

status

Controls if the server should be flagged as online. Setting this parameter to FALSE and retry_interval to -1 allows a failed server to be kept in the pool so as not to affect the key distribution algorithm. Requests for this server will then failover or fail immediately depending on the memcache.allow_failover setting. Default to TRUE, meaning the server should be considered online.

failure_callback

Allows the user to specify a callback function to run upon encountering an error. The callback is run before failover is attempted. The function takes two parameters, the hostname and port of the failed server.

timeoutms

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::addServer() example

<?php

/* OO API */

$memcache = new Memcache;
$memcache->addServer('memcache_host', 11211);
$memcache->addServer('memcache_host2', 11211);

/* procedural API */

$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_add_server($memcache_obj, 'memcache_host2', 11211);

?>

Veja Também

  • Memcache::connect() - Open memcached server connection
  • Memcache::pconnect() - Open memcached server persistent connection
  • Memcache::close() - Close memcached server connection
  • Memcache::setServerParams() - Changes server parameters and status at runtime
  • Memcache::getServerStatus() - Returns server status

Memcache::add
Memcache::close
Memcache


Close memcached server connection

Memcache::addServer
Memcache::connect
Memcache
PHP Manual

Memcache::close

(PECL memcache >= 0.4.0)

Memcache::close — Close memcached server connection

Descrição

bool Memcache::close ( void )

Memcache::close() closes connection to memcached server. This function doesn't close persistent connections, which are closed only during web-server shutdown/restart. Also you can use memcache_close() function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::close() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
/*
do something here ..
*/
memcache_close($memcache_obj);

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
/*
do something here ..
*/
$memcache_obj->close();

?>

Veja Também

  • Memcache::connect() - Open memcached server connection
  • Memcache::pconnect() - Open memcached server persistent connection

Memcache::addServer
Memcache::connect
Memcache


Open memcached server connection

Memcache::close
Memcache::decrement
Memcache
PHP Manual

Memcache::connect

(PECL memcache >= 0.2.0)

Memcache::connect — Open memcached server connection

Descrição

bool Memcache::connect ( string $host [, int $port [, int $timeout ]] )

Memcache::connect() establishes a connection to the memcached server. The connection, which was opened using Memcache::connect() will be automatically closed at the end of script execution. Also you can close it with Memcache::close(). Also you can use memcache_connect() function.

Parâmetros

host

Point to the host where memcached is listening for connections. This parameter may also specify other transports like unix:///path/to/memcached.sock to use UNIX domain sockets, in this case port must also be set to 0.

port

Point to the port where memcached is listening for connections. Set this parameter to 0 when using UNIX domain sockets.

timeout

Value in seconds which will be used for connecting to the daemon. Think twice before changing the default value of 1 second - you can lose all the advantages of caching if your connection is too slow.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::connect() example

<?php

/* procedural API */

$memcache_obj = memcache_connect('memcache_host', 11211);

/* OO API */

$memcache = new Memcache;
$memcache->connect('memcache_host', 11211);

?>

Veja Também

  • Memcache::pconnect() - Open memcached server persistent connection
  • Memcache::close() - Close memcached server connection

Memcache::close
Memcache::decrement
Memcache


Decrement item's value

Memcache::connect
Memcache::delete
Memcache
PHP Manual

Memcache::decrement

(PECL memcache >= 0.2.0)

Memcache::decrement — Decrement item's value

Descrição

int Memcache::decrement ( string $key [, int $value = 1 ] )

Memcache::decrement() decrements value of the item by value. Similarly to Memcache::increment(), current value of the item is being converted to numerical and after that value is substracted.

Nota:

New item's value will not be less than zero.

Nota:

Do not use Memcache::decrement() with item, which was stored compressed, because consequent call to Memcache::get() will fail.

Memcache::decrement() does not create an item if it didn't exist. Also you can use memcache_decrement() function.

Parâmetros

key

Key of the item do decrement.

value

Decrement the item by value.

Valor Retornado

Returns item's new value on success or FALSE on failure.

Exemplos

Exemplo #1 Memcache::decrement() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
/* decrement item by 2 */
$new_value = memcache_decrement($memcache_obj, 'test_item', 2);

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
/* decrement item by 3 */
$new_value = $memcache_obj->decrement('test_item', 3);
?>

Veja Também

  • Memcache::increment() - Increment item's value
  • Memcache::replace() - Replace value of the existing item

Memcache::connect
Memcache::delete
Memcache


Delete item from the server

Memcache::decrement
Memcache::flush
Memcache
PHP Manual

Memcache::delete

(PECL memcache >= 0.2.0)

Memcache::delete — Delete item from the server

Descrição

bool Memcache::delete ( string $key [, int $timeout = 0 ] )

Memcache::delete() deletes an item with the key.

Parâmetros

key

The key associated with the item to delete.

timeout

This deprecated parameter is not supported, and defaults to 0 seconds. Do not use this parameter.

Histórico

Versão | Descrição
Unknown | It's not recommended to use the timeout parameter. The behavior differs between memcached versions, but setting to 0 is safe. Other values for this deprecated feature may cause the memcache delete to fail.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::delete() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);

/* item will be deleted by the server */
memcache_delete($memcache_obj, 'key_to_delete');

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);

$memcache_obj->delete('key_to_delete');

?>

Veja Também

  • Memcache::set() - Store data at the server
  • Memcache::replace() - Replace value of the existing item

Memcache::decrement
Memcache::flush
Memcache


Flush all existing items at the server

Memcache::delete
Memcache::get
Memcache
PHP Manual

Memcache::flush

(PECL memcache >= 1.0.0)

Memcache::flush — Flush all existing items at the server

Descrição

bool Memcache::flush ( void )

Memcache::flush() immediately invalidates all existing items. Memcache::flush() doesn't actually free any resources, it only marks all the items as expired, so occupied memory will be overwritten by new items. Also you can use memcache_flush() function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::flush() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);

memcache_flush($memcache_obj);

/* OO API */

$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);

$memcache_obj->flush();

?>

Memcache::delete
Memcache::get
Memcache


Retrieve item from the server

Memcache::flush
Memcache::getExtendedStats
Memcache
PHP Manual

Memcache::get

(PECL memcache >= 0.2.0)

Memcache::get — Retrieve item from the server

Descrição

string Memcache::get ( string $key [, int &$flags ] )
array Memcache::get ( array $keys [, array &$flags ] )

Memcache::get() returns previously stored data if an item with such key exists on the server at this moment.

You can pass array of keys to Memcache::get() to get array of values. The result array will contain only found key-value pairs.

Parâmetros

key

The key or array of keys to fetch.

flags

If present, flags fetched along with the values will be written to this parameter. These flags are the same as the ones given to for example Memcache::set(). The lowest byte of the int is reserved for pecl/memcache internal usage (e.g. to indicate compression and serialization status).

Valor Retornado

Returns the string associated with the key or FALSE on failure or if such key was not found.

Exemplos

Exemplo #1 Memcache::get() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
$var = memcache_get($memcache_obj, 'some_key');

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$var = $memcache_obj->get('some_key');

/*
You also can use array of keys as a parameter.
If such item wasn't found at the server, the result
array simply will not include such key.
*/

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
$var = memcache_get($memcache_obj, Array('some_key', 'another_key'));

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$var = $memcache_obj->get(Array('some_key', 'second_key'));

?>

Memcache::flush
Memcache::getExtendedStats
Memcache


Get statistics from all servers in pool

Memcache::get
Memcache::getServerStatus
Memcache
PHP Manual

Memcache::getExtendedStats

(PECL memcache >= 2.0.0)

Memcache::getExtendedStats — Get statistics from all servers in pool

Descrição

array Memcache::getExtendedStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )

Memcache::getExtendedStats() returns a two-dimensional associative array with server statistics. Array keys correspond to host:port of server and values contain the individual server statistics. A failed server will have its corresponding entry set to FALSE. You can also use the memcache_get_extended_stats() function.

Nota:

This function has been added to Memcache version 2.0.0.

Parâmetros

type

The type of statistics to fetch. Valid values are {reset, malloc, maps, cachedump, slabs, items, sizes}. According to the memcached protocol spec these additional arguments "are subject to change for the convenience of memcache developers".

slabid

Used in conjunction with type set to cachedump to identify the slab to dump from. The cachedump command ties up the server and is strictly to be used for debugging purposes.

limit

Used in conjunction with type set to cachedump to limit the number of entries to dump.

Aviso

The cachedump stat type has been removed from the memcached daemon due to security reasons.

Valor Retornado

Returns a two-dimensional associative array of server statistics or FALSE on failure.

Exemplos

Exemplo #1 Memcache::getExtendedStats() example

<?php
    $memcache_obj = new Memcache;
    $memcache_obj->addServer('memcache_host', 11211);
    $memcache_obj->addServer('failed_host', 11211);

    $stats = $memcache_obj->getExtendedStats();
    print_r($stats);
?>

O exemplo acima irá imprimir:

Array
(
    [memcache_host:11211] => Array
        (
            [pid] => 3756
            [uptime] => 603011
            [time] => 1133810435
            [version] => 1.1.12
            [rusage_user] => 0.451931
            [rusage_system] => 0.634903
            [curr_items] => 2483
            [total_items] => 3079
            [bytes] => 2718136
            [curr_connections] => 2
            [total_connections] => 807
            [connection_structures] => 13
            [cmd_get] => 9748
            [cmd_set] => 3096
            [get_hits] => 5976
            [get_misses] => 3772
            [bytes_read] => 3448968
            [bytes_written] => 2318883
            [limit_maxbytes] => 33554432
        )

    [failed_host:11211] => false
)

Veja Também

  • Memcache::getVersion() - Return version of the server
  • Memcache::getStats() - Get statistics of the server

Memcache::get
Memcache::getServerStatus
Memcache


Returns server status

Memcache::getExtendedStats
Memcache::getStats
Memcache
PHP Manual

Memcache::getServerStatus

(PECL memcache >= 2.1.0)

Memcache::getServerStatus — Returns server status

Descrição

int Memcache::getServerStatus ( string $host [, int $port = 11211 ] )

Memcache::getServerStatus() returns a the servers online/offline status. You can also use memcache_get_server_status() function.

Nota:

This function has been added to Memcache version 2.1.0.

Parâmetros

host

Point to the host where memcached is listening for connections.

port

Point to the port where memcached is listening for connections.

Valor Retornado

Returns a the servers status. 0 if server is failed, non-zero otherwise

Exemplos

Exemplo #1 Memcache::getServerStatus() example

<?php

/* OO API */
$memcache = new Memcache;
$memcache->addServer('memcache_host', 11211);
echo $memcache->getServerStatus('memcache_host', 11211);

/* procedural API */
$memcache = memcache_connect('memcache_host', 11211);
echo memcache_get_server_status($memcache, 'memcache_host', 11211);

?>

Veja Também

  • Memcache::addServer() - Add a memcached server to connection pool
  • Memcache::setServerParams() - Changes server parameters and status at runtime

Memcache::getExtendedStats
Memcache::getStats
Memcache


Get statistics of the server

Memcache::getServerStatus
Memcache::getVersion
Memcache
PHP Manual

Memcache::getStats

(PECL memcache >= 0.2.0)

Memcache::getStats — Get statistics of the server

Descrição

array Memcache::getStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )

Memcache::getStats() returns an associative array with server's statistics. Array keys correspond to stats parameters and values to parameter's values. Also you can use memcache_get_stats() function.

Parâmetros

type

The type of statistics to fetch. Valid values are {reset, malloc, maps, cachedump, slabs, items, sizes}. According to the memcached protocol spec these additional arguments "are subject to change for the convenience of memcache developers".

slabid

Used in conjunction with type set to cachedump to identify the slab to dump from. The cachedump command ties up the server and is strictly to be used for debugging purposes.

limit

Used in conjunction with type set to cachedump to limit the number of entries to dump.

Valor Retornado

Returns an associative array of server statistics or FALSE on failure.

Veja Também

  • Memcache::getVersion() - Return version of the server
  • Memcache::getExtendedStats() - Get statistics from all servers in pool

Memcache::getServerStatus
Memcache::getVersion
Memcache


Return version of the server

Memcache::getStats
Memcache::increment
Memcache
PHP Manual

Memcache::getVersion

(PECL memcache >= 0.2.0)

Memcache::getVersion — Return version of the server

Descrição

string Memcache::getVersion ( void )

Memcache::getVersion() returns a string with server's version number. Also you can use memcache_get_version() function.

Valor Retornado

Returns a string of server version number or FALSE on failure.

Exemplos

Exemplo #1 Memcache::getVersion() example

<?php

/* OO API */
$memcache = new Memcache;
$memcache->connect('memcache_host', 11211);
echo $memcache->getVersion();

/* procedural API */
$memcache = memcache_connect('memcache_host', 11211);
echo memcache_get_version($memcache);

?>

Veja Também

  • Memcache::getExtendedStats() - Get statistics from all servers in pool
  • Memcache::getStats() - Get statistics of the server

Memcache::getStats
Memcache::increment
Memcache


Increment item's value

Memcache::getVersion
Memcache::pconnect
Memcache
PHP Manual

Memcache::increment

(PECL memcache >= 0.2.0)

Memcache::increment — Increment item's value

Descrição

int Memcache::increment ( string $key [, int $value = 1 ] )

Memcache::increment() increments value of an item by the specified value. If item specified by key was not numeric and cannot be converted to a number, it will change its value to value. Memcache::increment() does not create an item if it doesn't already exist.

Nota:

Do not use Memcache::increment() with items that have been stored compressed because subsequent calls to Memcache::get() will fail.

Also you can use memcache_increment() function.

Parâmetros

key

Key of the item to increment.

value

Increment the item by value.

Valor Retornado

Returns new items value on success or FALSE on failure.

Exemplos

Exemplo #1 Memcache::increment() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
/* increment counter by 2 */
$current_value = memcache_increment($memcache_obj, 'counter', 2);

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
/* increment counter by 3 */
$current_value = $memcache_obj->increment('counter', 3);

?>

Veja Também

  • Memcache::decrement() - Decrement item's value
  • Memcache::replace() - Replace value of the existing item

Memcache::getVersion
Memcache::pconnect
Memcache


Open memcached server persistent connection

Memcache::increment
Memcache::replace
Memcache
PHP Manual

Memcache::pconnect

(PECL memcache >= 0.4.0)

Memcache::pconnect — Open memcached server persistent connection

Descrição

bool Memcache::pconnect ( string $host [, int $port [, int $timeout ]] )

Memcache::pconnect() is similar to Memcache::connect() with the difference, that the connection it establishes is persistent. This connection is not closed after the end of script execution and by Memcache::close() function. Also you can use memcache_pconnect() function.

Parâmetros

host

Point to the host where memcached is listening for connections. This parameter may also specify other transports like unix:///path/to/memcached.sock to use UNIX domain sockets, in this case port must also be set to 0.

port

Point to the port where memcached is listening for connections. Set this parameter to 0 when using UNIX domain sockets.

timeout

Value in seconds which will be used for connecting to the daemon. Think twice before changing the default value of 1 second - you can lose all the advantages of caching if your connection is too slow.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::pconnect() example

<?php

/* procedural API */
$memcache_obj = memcache_pconnect('memcache_host', 11211);

/* OO API */

$memcache_obj = new Memcache;
$memcache_obj->pconnect('memcache_host', 11211);

?>

Veja Também

  • Memcache::connect() - Open memcached server connection

Memcache::increment
Memcache::replace
Memcache


Replace value of the existing item

Memcache::pconnect
Memcache::set
Memcache
PHP Manual

Memcache::replace

(PECL memcache >= 0.2.0)

Memcache::replace — Replace value of the existing item

Descrição

bool Memcache::replace ( string $key , mixed $var [, int $flag [, int $expire ]] )

Memcache::replace() should be used to replace value of
existing item with key. In case if item with such
key doesn't exists, Memcache::replace() returns
FALSE. For the rest Memcache::replace() behaves
similarly to Memcache::set().
Also you can use memcache_replace() function.

Parâmetros

key

The key that will be associated with the item.

var

The variable to store. Strings and integers are stored as is, other types are stored serialized.

flag

Use MEMCACHE_COMPRESSED to store the item compressed (uses zlib).

expire

Expiration time of the item. If it's equal to zero, the item will never expire. You can also use Unix timestamp or a number of seconds starting from current time, but in the latter case the number of seconds may not exceed 2592000 (30 days).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::replace() example

<?php

$memcache_obj = memcache_connect('memcache_host', 11211);

/* procedural API */
memcache_replace($memcache_obj, "test_key", "some variable", false, 30);

/* OO API */
$memcache_obj->replace("test_key", "some variable", false, 30);

?>

Veja Também

  • Memcache::set() - Store data at the server
  • Memcache::add() - Add an item to the server

Memcache::pconnect
Memcache::set
Memcache


Store data at the server

Memcache::replace
Memcache::setCompressThreshold
Memcache
PHP Manual

Memcache::set

(PECL memcache >= 0.2.0)

Memcache::set — Store data at the server

Descrição

bool Memcache::set ( string $key , mixed $var [, int $flag [, int $expire ]] )

Memcache::set() stores an item var with key on the memcached server. Parameter expire is expiration time in seconds. If it's 0, the item never expires (but memcached server doesn't guarantee this item to be stored all the time, it could be deleted from the cache to make place for other items). You can use MEMCACHE_COMPRESSED constant as flag value if you want to use on-the-fly compression (uses zlib).

Nota:

Remember that resource variables (i.e. file and connection descriptors) cannot be stored in the cache, because they cannot be adequately represented in serialized state.

Also you can use memcache_set() function.

Parâmetros

key

The key that will be associated with the item.

var

The variable to store. Strings and integers are stored as is, other types are stored serialized.

flag

Use MEMCACHE_COMPRESSED to store the item compressed (uses zlib).

expire

Expiration time of the item. If it's equal to zero, the item will never expire. You can also use Unix timestamp or a number of seconds starting from current time, but in the latter case the number of seconds may not exceed 2592000 (30 days).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::set() example

<?php
/* procedural API */

/* connect to memcached server */
$memcache_obj = memcache_connect('memcache_host', 11211);

/*
set value of item with key 'var_key'
using 0 as flag value, compression is not used
expire time is 30 seconds
*/
memcache_set($memcache_obj, 'var_key', 'some variable', 0, 30);

echo memcache_get($memcache_obj, 'var_key');

?>

Exemplo #2 Memcache::set() example

<?php
/* OO API */

$memcache_obj = new Memcache;

/* connect to memcached server */
$memcache_obj->connect('memcache_host', 11211);

/*
set value of item with key 'var_key', using on-the-fly compression
expire time is 50 seconds
*/
$memcache_obj->set('var_key', 'some really big variable', MEMCACHE_COMPRESSED, 50);

echo $memcache_obj->get('var_key');

?>

Veja Também

  • Memcache::add() - Add an item to the server
  • Memcache::replace() - Replace value of the existing item

Memcache::replace
Memcache::setCompressThreshold
Memcache


Enable automatic compression of large values

Memcache::set
Memcache::setServerParams
Memcache
PHP Manual

Memcache::setCompressThreshold

(PECL memcache >= 2.0.0)

Memcache::setCompressThreshold — Enable automatic compression of large values

Descrição

bool Memcache::setCompressThreshold ( int $threshold [, float $min_savings ] )

Memcache::setCompressThreshold() enables automatic compression of large values. You can also use the memcache_set_compress_threshold() function.

Nota:

This function has been added to Memcache version 2.0.0.

Parâmetros

threshold

Controls the minimum value length before attempting to compress automatically.

min_saving

Specifies the minimum amount of savings to actually store the value compressed. The supplied value must be between 0 and 1. Default value is 0.2 giving a minimum 20% compression savings.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::setCompressThreshold() example

<?php

/* OO API */

$memcache_obj = new Memcache;
$memcache_obj->addServer('memcache_host', 11211);
$memcache_obj->setCompressThreshold(20000, 0.2);

/* procedural API */

$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_set_compress_threshold($memcache_obj, 20000, 0.2);

?>

Memcache::set
Memcache::setServerParams
Memcache


Changes server parameters and status at runtime

Memcache::setCompressThreshold
Memcache Funções
Memcache
PHP Manual

Memcache::setServerParams

(PECL memcache >= 2.1.0)

Memcache::setServerParams — Changes server parameters and status at runtime

Descrição

bool Memcache::setServerParams ( string $host [, int $port = 11211 [, int $timeout [, int $retry_interval = false [, bool $status [, callback $failure_callback ]]]]] )

Memcache::setServerParams() changes server parameters at runtime. You can also use the memcache_set_server_params() function.

Nota:

This function has been added to Memcache version 2.1.0.

Parâmetros

host

Point to the host where memcached is listening for connections.

port

Point to the port where memcached is listening for connections.

timeout

Value in seconds which will be used for connecting to the daemon. Think twice before changing the default value of 1 second - you can lose all the advantages of caching if your connection is too slow.

retry_interval

Controls how often a failed server will be retried, the default value is 15 seconds. Setting this parameter to -1 disables automatic retry. Neither this nor the persistent parameter has any effect when the extension is loaded dynamically via dl().

status

Controls if the server should be flagged as online. Setting this parameter to FALSE and retry_interval to -1 allows a failed server to be kept in the pool so as not to affect the key distribution algoritm. Requests for this server will then failover or fail immediately depending on the memcache.allow_failover setting. Default to TRUE, meaning the server should be considered online.

failure_callback

Allows the user to specify a callback function to run upon encountering an error. The callback is run before failover is attempted. The function takes two parameters, the hostname and port of the failed server.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcache::setServerParams() example

<?php

function _callback_memcache_failure($host, $port) {
    print "memcache '$host:$port' failed";
}

/* OO API */

$memcache = new Memcache;

// Add the server in offline mode
$memcache->addServer('memcache_host', 11211, false, 1, 1, -1, false);

// Bring the server back online
$memcache->setServerParams('memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');

/* procedural API */

$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_set_server_params($memcache_obj, 'memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');

?>

Veja Também

  • Memcache::addServer() - Add a memcached server to connection pool
  • Memcache::getServerStatus() - Returns server status

Memcache::setCompressThreshold
Memcache Funções
Memcache


Memcache Funções

Índice

  • memcache_debug — Turn debug output on/off
Memcache::setServerParams
memcache_debug
Memcache


Turn debug output on/off

Memcache Funções
Memcached
Memcache Funções
PHP Manual

memcache_debug

(PECL memcache >= 0.2.0)

memcache_debug — Turn debug output on/off

Descrição

bool memcache_debug ( bool $on_off )

memcache_debug() turns on debug output if parameter on_off is equal to TRUE and turns off if it's FALSE.

Nota:

memcache_debug() is accessible only if PHP was built with --enable-debug option and always returns TRUE in this case. Otherwise, this function has no effect and always returns FALSE.

Parâmetros

on_off

Turns debug output on if equals to TRUE. Turns debug output off if equals to FALSE.

Valor Retornado

Returns TRUE if PHP was built with --enable-debug option, otherwise returns FALSE.

Memcache Funções
Memcached
Memcache Funções


Memcached

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Expiration Times
  • Callbacks
    • Result callbacks
    • Read-through cache callbacks
  • Sessions support
  • Memcached — The Memcached class
    • Memcached::add — Add an item under a new key
    • Memcached::addByKey — Add an item under a new key on a specific server
    • Memcached::addServer — Add a server to the server pool
    • Memcached::addServers — Add multiple servers to the server pool
    • Memcached::append — Append data to an existing item
    • Memcached::appendByKey — Append data to an existing item on a specific server
    • Memcached::cas — Compare and swap an item
    • Memcached::casByKey — Compare and swap an item on a specific server
    • Memcached::__construct — Create a Memcached instance
    • Memcached::decrement — Decrement numeric item's value
    • Memcached::delete — Delete an item
    • Memcached::deleteByKey — Delete an item from a specific server
    • Memcached::fetch — Fetch the next result
    • Memcached::fetchAll — Fetch all the remaining results
    • Memcached::flush — Invalidate all items in the cache
    • Memcached::get — Retrieve an item
    • Memcached::getByKey — Retrieve an item from a specific server
    • Memcached::getDelayed — Request multiple items
    • Memcached::getDelayedByKey — Request multiple items from a specific server
    • Memcached::getMulti — Retrieve multiple items
    • Memcached::getMultiByKey — Retrieve multiple items from a specific server
    • Memcached::getOption — Retrieve a Memcached option value
    • Memcached::getResultCode — Return the result code of the last operation
    • Memcached::getResultMessage — Return the message describing the result of the last operation
    • Memcached::getServerByKey — Map a key to a server
    • Memcached::getServerList — Get the list of the servers in the pool
    • Memcached::getStats — Get server pool statistics
    • Memcached::getVersion — Get server pool version info
    • Memcached::increment — Increment numeric item's value
    • Memcached::prepend — Prepend data to an existing item
    • Memcached::prependByKey — Prepend data to an existing item on a specific server
    • Memcached::replace — Replace the item under an existing key
    • Memcached::replaceByKey — Replace the item under an existing key on a specific server
    • Memcached::set — Store an item
    • Memcached::setByKey — Store an item on a specific server
    • Memcached::setMulti — Store multiple items
    • Memcached::setMultiByKey — Store multiple items on a specific server
    • Memcached::setOption — Set a Memcached option
memcache_debug
Introdução
Outros Serviços


Introdução

» memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.

This extension uses libmemcached library to provide API for communicating with memcached servers. It also provides a session handler (memcached).

Information about libmemcached can be found at » http://libmemcached.org/libMemcached.html.

Memcached
Instalação/Configuração
Memcached


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Memcached


Dependências

This extension requires » libmemcached client library.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/memcached.

If libmemcached is installed in a non-standard location, use --with-libmemcached-dir=DIR switch, where DIR is the libmemcached install prefix. This directory has to contain the include/libmemcached/memcached.h file.

Zlib is required for compression support. To specify non-standard installation of Zlib, use --with-zlib-dir=DIR switch, where DIR is the Zlib install prefix.

Session handler support is enabled by default. To disable it, use --disable-memcached-session switch.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Memcached::OPT_COMPRESSION

Enables or disables payload compression. When enabled, item values longer than a certain threshold (currently 100 bytes) will be compressed during storage and decompressed during retrieval transparently.

Type: boolean, default: TRUE.

Memcached::OPT_SERIALIZER

Specifies the serializer to use for serializing non-scalar values. The valid serializers are Memcached::SERIALIZER_PHP or Memcached::SERIALIZER_IGBINARY. The latter is supported only when memcached is configured with --enable-memcached-igbinary option and the igbinary extension is loaded.

Type: integer, default: Memcached::SERIALIZER_PHP.

Memcached::SERIALIZER_PHP

The default PHP serializer.

Memcached::SERIALIZER_IGBINARY

The » igbinary serializer. Instead of textual representation it stores PHP data structures in a compact binary form, resulting in space and time gains.

Memcached::SERIALIZER_JSON

The JSON serializer. Requires PHP 5.2.10+.

Memcached::OPT_PREFIX_KEY

This can be used to create a "domain" for your item keys. The value specified here will be prefixed to each of the keys. It cannot be longer than 128 characters and will reduce the maximum available key size. The prefix is applied only to the item keys, not to the server keys.

Type: string, default: "".

Memcached::OPT_HASH

Specifies the hashing algorithm used for the item keys. The valid values are supplied via Memcached::HASH_* constants. Each hash algorithm has its advantages and its disadvantages. Go with the default if you don't know or don't care.

Type: integer, default: Memcached::HASH_DEFAULT

Memcached::HASH_DEFAULT

The default (Jenkins one-at-a-time) item key hashing algorithm.

Memcached::HASH_MD5

MD5 item key hashing algorithm.

Memcached::HASH_CRC

CRC item key hashing algorithm.

Memcached::HASH_FNV1_64

FNV1_64 item key hashing algorithm.

Memcached::HASH_FNV1A_64

FNV1_64A item key hashing algorithm.

Memcached::HASH_FNV1_32

FNV1_32 item key hashing algorithm.

Memcached::HASH_FNV1A_32

FNV1_32A item key hashing algorithm.

Memcached::HASH_HSIEH

Hsieh item key hashing algorithm.

Memcached::HASH_MURMUR

Murmur item key hashing algorithm.

Memcached::OPT_DISTRIBUTION

Specifies the method of distributing item keys to the servers. Currently supported methods are modulo and consistent hashing. Consistent hashing delivers better distribution and allows servers to be added to the cluster with minimal cache losses.

Type: integer, default: Memcached::DISTRIBUTION_MODULA.

Memcached::DISTRIBUTION_MODULA

Modulo-based key distribution algorithm.

Memcached::DISTRIBUTION_CONSISTENT

Consistent hashing key distribution algorithm (based on libketama).

Memcached::OPT_LIBKETAMA_COMPATIBLE

Enables or disables compatibility with libketama-like behavior. When enabled, the item key hashing algorithm is set to MD5 and distribution is set to be weighted consistent hashing distribution. This is useful because other libketama-based clients (Python, Ruby, etc.) with the same server configuration will be able to access the keys transparently.

Nota:

It is highly recommended to enable this option if you want to use consistent hashing, and it may be enabled by default in future releases.

Type: boolean, default: FALSE.

Memcached::OPT_BUFFER_WRITES

Enables or disables buffered I/O. Enabling buffered I/O causes storage commands to "buffer" instead of being sent. Any action that retrieves data causes this buffer to be sent to the remote connection. Quitting the connection or closing down the connection will also cause the buffered data to be pushed to the remote connection.

Type: boolean, default: FALSE.

Memcached::OPT_BINARY_PROTOCOL

Enable the use of the binary protocol. Please note that you cannot toggle this option on an open connection.

Type: boolean, default: FALSE.

Memcached::OPT_NO_BLOCK

Enables or disables asynchronous I/O. This is the fastest transport available for storage functions.

Type: boolean, default: FALSE.

Memcached::OPT_TCP_NODELAY

Enables or disables the no-delay feature for connecting sockets (may be faster in some environments).

Type: boolean, default: FALSE.

Memcached::OPT_SOCKET_SEND_SIZE

The maximum socket send buffer in bytes.

Type: integer, default: varies by platform/kernel configuration.

Memcached::OPT_SOCKET_RECV_SIZE

The maximum socket receive buffer in bytes.

Type: integer, default: varies by platform/kernel configuration.

Memcached::OPT_CONNECT_TIMEOUT

In non-blocking mode this set the value of the timeout during socket connection, in milliseconds.

Type: integer, default: 1000.

Memcached::OPT_RETRY_TIMEOUT

The amount of time, in seconds, to wait until retrying a failed connection attempt.

Type: integer, default: 0.

Memcached::OPT_SEND_TIMEOUT

Socket sending timeout, in microseconds. In cases where you cannot use non-blocking I/O this will allow you to still have timeouts on the sending of data.

Type: integer, default: 0.

Memcached::OPT_RECV_TIMEOUT

Socket reading timeout, in microseconds. In cases where you cannot use non-blocking I/O this will allow you to still have timeouts on the reading of data.

Type: integer, default: 0.

Memcached::OPT_POLL_TIMEOUT

Timeout for connection polling, in milliseconds.

Type: integer, default: 1000.

Memcached::OPT_CACHE_LOOKUPS

Enables or disables caching of DNS lookups.

Type: boolean, default: FALSE.

Memcached::OPT_SERVER_FAILURE_LIMIT

Specifies the failure limit for server connection attempts. The server will be removed after this many continuous connection failures.

Type: integer, default: 0.

Memcached::HAVE_IGBINARY

Indicates whether igbinary serializer support is available.

Type: boolean.

Memcached::HAVE_JSON

Indicates whether JSON serializer support is available.

Type: boolean.

Memcached::GET_PRESERVE_ORDER

A flag for Memcached::getMulti() and Memcached::getMultiByKey() to ensure that the keys are returned in the same order as they were requested in. Non-existing keys get a default value of NULL.

Memcached::RES_SUCCESS

The operation was successful.

Memcached::RES_FAILURE

The operation failed in some fashion.

Memcached::RES_HOST_LOOKUP_FAILURE

DNS lookup failed.

Memcached::RES_UNKNOWN_READ_FAILURE

Failed to read network data.

Memcached::RES_PROTOCOL_ERROR

Bad command in memcached protocol.

Memcached::RES_CLIENT_ERROR

Error on the client side.

Memcached::RES_SERVER_ERROR

Error on the server side.

Memcached::RES_WRITE_FAILURE

Failed to write network data.

Memcached::RES_DATA_EXISTS

Failed to do compare-and-swap: item you are trying to store has been modified since you last fetched it.

Memcached::RES_NOTSTORED

Item was not stored: but not because of an error. This normally means that either the condition for an "add" or a "replace" command wasn't met, or that the item is in a delete queue.

Memcached::RES_NOTFOUND

Item with this key was not found (with "get" operation or "cas" operations).

Memcached::RES_PARTIAL_READ

Partial network data read error.

Memcached::RES_SOME_ERRORS

Some errors occurred during multi-get.

Memcached::RES_NO_SERVERS

Server list is empty.

Memcached::RES_END

End of result set.

Memcached::RES_ERRNO

System error.

Memcached::RES_BUFFERED

The operation was buffered.

Memcached::RES_TIMEOUT

The operation timed out.

Memcached::RES_BAD_KEY_PROVIDED

Bad key.

Memcached::RES_CONNECTION_SOCKET_CREATE_FAILURE

Failed to create network socket.

Memcached::RES_PAYLOAD_FAILURE

Payload failure: could not compress/decompress or serialize/unserialize the value.

Tipos Resource
Expiration Times
Memcached


Expiration Times

Some storage commands involve sending an expiration value (relative to an item or to an operation requested by the client) to the server. In all such cases, the actual value sent may either be Unix time (number of seconds since January 1, 1970, as an integer), or a number of seconds starting from current time. In the latter case, this number of seconds may not exceed 60*60*24*30 (number of seconds in 30 days); if the expiration value is larger than that, the server will consider it to be real Unix time value rather than an offset from current time.

If the expiration value is 0 (the default), the item never expires (although it may be deleted from the server to make place for other items).

Constantes pré-definidas
Callbacks
Memcached


Callbacks

Índice

  • Result callbacks
  • Read-through cache callbacks
Expiration Times
Result callbacks
Memcached


Result callbacks

Result callbacks are invoked by Memcached::getDelayed() or Memcached::getDelayedBykey() methods for each item in the result set. The callback is passed the Memcached object and the array with the item information. The callback does not have to return anything.

Exemplo #1 Result callback example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$items = array(
    'key1' => 'value1',
    'key2' => 'value2',
    'key3' => 'value3'
);
$m->setMulti($items);
$m->getDelayed(array('key1', 'key3'), true, 'result_cb');

function result_cb($memc, $item)
{
    var_dump($item);
}
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["key"]=>
  string(4) "key1"
  ["value"]=>
  string(6) "value1"
  ["cas"]=>
  float(49)
}
array(3) {
  ["key"]=>
  string(4) "key3"
  ["value"]=>
  string(6) "value3"
  ["cas"]=>
  float(50)
}
Callbacks
Read-through cache callbacks
Callbacks


Read-through cache callbacks

Read-through cache callbacks are invoked when an item cannot be retrieved from the server. The callback is passed the Memcached object, the requested key, and the by-reference value variable. The callback is responsible for setting the value and returning true or false. If the callback returns true, Memcached will store the populated value on the server and return it to the original calling function. Only Memcached::get() and Memcached::getByKey() support these callbacks, because the memcache protocol does not provide information on which keys were not found in the multi-key request.

Exemplo #1 Read-through callback example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$profile_info = $m->get('user:'.$user_id, 'user_info_cb');

function user_info_cb($memc, $key, &$value)
{
    $user_id = substr($key, 5);
    /* lookup profile info in the DB */
    /* ... */
    $value = $profile_info;
    return true;
}
?>
Result callbacks
Sessions support
Callbacks


Sessions support

Memcached provides a custom session handler that can be used to store user sessions in memcache. A completely separate memcached instance is used for that internally, so you can use a different server pool if necessary. The session keys are stored under the prefix memc.sess.key., so be aware of this if you use the same server pool for sessions and generic caching.

session.save_handler string

Set to memcached to enable sessions support.

session.save_path string

Defines a comma separated of hostname:port entries to use for session server pool, for example "sess1:11211, sess2:11211".

Read-through cache callbacks
Memcached
Memcached


The Memcached class

Introdução

Represents a connection to a set of memcached servers.

Sinopse da classe

Memcached {
__construct ([ string $persistent_id ] )
public bool add ( string $key , mixed $value [, int $expiration ] )
public bool addByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )
public bool addServer ( string $host , int $port [, int $weight = 0 ] )
public bool addServers ( array $servers )
public bool append ( string $key , string $value )
public bool appendByKey ( string $server_key , string $key , string $value )
public bool cas ( float $cas_token , string $key , mixed $value [, int $expiration ] )
public bool casByKey ( float $cas_token , string $server_key , string $key , mixed $value [, int $expiration ] )
public int decrement ( string $key [, int $offset = 1 ] )
public bool delete ( string $key [, int $time = 0 ] )
public bool deleteByKey ( string $server_key , string $key [, int $time = 0 ] )
public array fetch ( void )
public array fetchAll ( void )
public bool flush ([ int $delay = 0 ] )
public mixed get ( string $key [, callback $cache_cb [, float &$cas_token ]] )
public mixed getByKey ( string $server_key , string $key [, callback $cache_cb [, float &$cas_token ]] )
public bool getDelayed ( array $keys [, bool $with_cas [, callback $value_cb ]] )
public bool getDelayedByKey ( string $server_key , array $keys [, bool $with_cas [, callback $value_cb ]] )
public mixed getMulti ( array $keys [, array &$cas_tokens [, int $flags ]] )
public array getMultiByKey ( string $server_key , array $keys [, string &$cas_tokens [, int $flags ]] )
public mixed getOption ( int $option )
public int getResultCode ( void )
public string getResultMessage ( void )
public array getServerByKey ( string $server_key )
public array getServerList ( void )
public array getStats ( void )
public array getVersion ( void )
public int increment ( string $key [, int $offset = 1 ] )
public bool prepend ( string $key , string $value )
public bool prependByKey ( string $server_key , string $key , string $value )
public bool replace ( string $key , mixed $value [, int $expiration ] )
public bool replaceByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )
public bool set ( string $key , mixed $value [, int $expiration ] )
public bool setByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )
public bool setMulti ( array $items [, int $expiration ] )
public bool setMultiByKey ( string $server_key , array $items [, int $expiration ] )
public bool setOption ( int $option , mixed $value )
}

Índice

  • Memcached::add — Add an item under a new key
  • Memcached::addByKey — Add an item under a new key on a specific server
  • Memcached::addServer — Add a server to the server pool
  • Memcached::addServers — Add multiple servers to the server pool
  • Memcached::append — Append data to an existing item
  • Memcached::appendByKey — Append data to an existing item on a specific server
  • Memcached::cas — Compare and swap an item
  • Memcached::casByKey — Compare and swap an item on a specific server
  • Memcached::__construct — Create a Memcached instance
  • Memcached::decrement — Decrement numeric item's value
  • Memcached::delete — Delete an item
  • Memcached::deleteByKey — Delete an item from a specific server
  • Memcached::fetch — Fetch the next result
  • Memcached::fetchAll — Fetch all the remaining results
  • Memcached::flush — Invalidate all items in the cache
  • Memcached::get — Retrieve an item
  • Memcached::getByKey — Retrieve an item from a specific server
  • Memcached::getDelayed — Request multiple items
  • Memcached::getDelayedByKey — Request multiple items from a specific server
  • Memcached::getMulti — Retrieve multiple items
  • Memcached::getMultiByKey — Retrieve multiple items from a specific server
  • Memcached::getOption — Retrieve a Memcached option value
  • Memcached::getResultCode — Return the result code of the last operation
  • Memcached::getResultMessage — Return the message describing the result of the last operation
  • Memcached::getServerByKey — Map a key to a server
  • Memcached::getServerList — Get the list of the servers in the pool
  • Memcached::getStats — Get server pool statistics
  • Memcached::getVersion — Get server pool version info
  • Memcached::increment — Increment numeric item's value
  • Memcached::prepend — Prepend data to an existing item
  • Memcached::prependByKey — Prepend data to an existing item on a specific server
  • Memcached::replace — Replace the item under an existing key
  • Memcached::replaceByKey — Replace the item under an existing key on a specific server
  • Memcached::set — Store an item
  • Memcached::setByKey — Store an item on a specific server
  • Memcached::setMulti — Store multiple items
  • Memcached::setMultiByKey — Store multiple items on a specific server
  • Memcached::setOption — Set a Memcached option
Sessions support
Memcached::add
Memcached


Add an item under a new key

Memcached
Memcached::addByKey
Memcached
PHP Manual

Memcached::add

(PECL memcached >= 0.1.0)

Memcached::add — Add an item under a new key

Descrição

public bool Memcached::add ( string $key , mixed $value [, int $expiration ] )

Memcached::add() is similar to Memcached::set(), but the operation fails if the key already exists on the server.

Parâmetros

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key already exists.

Veja Também

  • Memcached::addByKey() - Add an item under a new key on a specific server
  • Memcached::set() - Store an item
  • Memcached::replace() - Replace the item under an existing key

Memcached
Memcached::addByKey
Memcached


Add an item under a new key on a specific server

Memcached::add
Memcached::addServer
Memcached
PHP Manual

Memcached::addByKey

(PECL memcached >= 0.1.0)

Memcached::addByKey — Add an item under a new key on a specific server

Descrição

public bool Memcached::addByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )

Memcached::addByKey() is functionally equivalent to Memcached::add(), except that the free-form server_key can be used to map the key to a specific server. This is useful if you need to keep a bunch of related keys on a certain server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key already exists.

Veja Também

  • Memcached::add() - Add an item under a new key
  • Memcached::set() - Store an item
  • Memcached::replace() - Replace the item under an existing key

Memcached::add
Memcached::addServer
Memcached


Add a server to the server pool

Memcached::addByKey
Memcached::addServers
Memcached
PHP Manual

Memcached::addServer

(PECL memcached >= 0.1.0)

Memcached::addServer — Add a server to the server pool

Descrição

public bool Memcached::addServer ( string $host , int $port [, int $weight = 0 ] )

Memcached::addServer() adds the specified server to the server pool. No connection is established to the server at this time, but if you are using consistent key distribution option (via Memcached::DISTRIBUTION_CONSISTENT or Memcached::OPT_LIBKETAMA_COMPATIBLE), some of the internal data structures will have to be updated. Thus, if you need to add multiple servers, it is better to use Memcached::addServers() as the update then happens only once.

The same server may appear multiple times in the server pool, because no duplication checks are made. This is not advisable; instead, use the weight option to increase the selection weighting of this server.

Parâmetros

host

The hostname of the memcache server. If the hostname is invalid, data-related operations will set Memcached::RES_HOST_LOOKUP_FAILURE result code.

port

The port on which memcache is running. Usually, this is 11211.

weight

The weight of the server relative to the total weight of all the servers in the pool. This controls the probability of the server being selected for operations. This is used only with consistent distribution option and usually corresponds to the amount of memory available to memcache on that server.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcached::addServer() example

<?php
$m = new Memcached();

/* Add 2 servers, so that the second one
   is twice as likely to be selected. */
$m->addServer('mem1.domain.com', 11211, 33);
$m->addServer('mem2.domain.com', 11211, 67);
?>

Veja Também

  • Memcached::addServers() - Add multiple servers to the server pool

Memcached::addByKey
Memcached::addServers
Memcached


Add multiple servers to the server pool

Memcached::addServer
Memcached::append
Memcached
PHP Manual

Memcached::addServers

(PECL memcached >= 0.1.1)

Memcached::addServers — Add multiple servers to the server pool

Descrição

public bool Memcached::addServers ( array $servers )

Memcached::addServers() adds servers to the server pool. Each entry in servers is supposed to be an array containing hostname, port, and, optionally, weight of the server. No connection is established to the servers at this time.

The same server may appear multiple times in the server pool, because no duplication checks are made. This is not advisable; instead, use the weight option to increase the selection weighting of this server.

Parâmetros

array

Array of the servers to add to the pool.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Memcached::addServers() example

<?php
$m = new Memcached();

$servers = array(
    array('mem1.domain.com', 11211, 33),
    array('mem2.domain.com', 11211, 67)
);
$m->addServers($servers);
?>

Veja Também

  • Memcached::addServer() - Add a server to the server pool

Memcached::addServer
Memcached::append
Memcached


Append data to an existing item

Memcached::addServers
Memcached::appendByKey
Memcached
PHP Manual

Memcached::append

(PECL memcached >= 0.1.0)

Memcached::append — Append data to an existing item

Descrição

public bool Memcached::append ( string $key , string $value )

Memcached::append() appends the given value string to the value of an existing item. The reason that value is forced to be a string is that appending mixed types is not well-defined.

Nota:

If the Memcached::OPT_COMPRESSION is enabled, the operation will fail and a warning will be issued, because appending compressed data to a value that is potentially already compressed is not possible.

Parâmetros

key

A chave sobre a qual guardar o valor.

value

The string to append.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Exemplos

Exemplo #1 Memcached::append() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$m->setOption(Memcached::OPT_COMPRESSION, false);

$m->set('foo', 'abc');
$m->append('foo', 'def');
var_dump($m->get('foo'));
?>

O exemplo acima irá imprimir:

string(6) "abcdef"

Veja Também

  • Memcached::appendByKey() - Append data to an existing item on a specific server
  • Memcached::prepend() - Prepend data to an existing item

Memcached::addServers
Memcached::appendByKey
Memcached


Append data to an existing item on a specific server

Memcached::append
Memcached::cas
Memcached
PHP Manual

Memcached::appendByKey

(PECL memcached >= 0.1.0)

Memcached::appendByKey — Append data to an existing item on a specific server

Descrição

public bool Memcached::appendByKey ( string $server_key , string $key , string $value )

Memcached::appendByKey() is functionally equivalent to Memcached::append(), except that the free-form server_key can be used to map the key to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

A chave sobre a qual guardar o valor.

value

The string to append.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Veja Também

  • Memcached::append() - Append data to an existing item
  • Memcached::prepend() - Prepend data to an existing item

Memcached::append
Memcached::cas
Memcached


Compare and swap an item

Memcached::appendByKey
Memcached::casByKey
Memcached
PHP Manual

Memcached::cas

(PECL memcached >= 0.1.0)

Memcached::cas — Compare and swap an item

Descrição

public bool Memcached::cas ( float $cas_token , string $key , mixed $value [, int $expiration ] )

Memcached::cas() performs a "check and set" operation, so that the item will be stored only if no other client has updated it since it was last fetched by this client. The check is done via the cas_token parameter which is a unique 64-bit value assigned to the existing item by memcache. See the documentation for Memcached::get*() methods for how to obtain this token. Note that the token is represented as a double due to the limitations of PHP's integer space.

Parâmetros

cas_token

Unique value associated with the existing item. Generated by memcache.

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_DATA_EXISTS if the item you are trying to store has been modified since you last fetched it.

Exemplos

Exemplo #1 Memcached::cas() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

do {
    /* fetch IP list and its token */
    $ips = $m->get('ip_block', null, $cas);
    /* if list doesn't exist yet, create it and do
       an atomic add which will fail if someone else already added it */
    if ($m->getResultCode() == Memcached::RES_NOTFOUND) {
        $ips = array($_SERVER['REMOTE_ADDR']);
        $m->add('ip_block', $ips);
    /* otherwise, add IP to the list and store via compare-and-swap
       with the token, which will fail if someone else updated the list */
    } else {
        $ips[] = $_SERVER['REMOTE_ADDR'];
        $m->cas($cas, 'ip_block', $ips);
    }
} while ($m->getResultCode() != Memcached::RES_SUCCESS);

?>

Veja Também

  • Memcached::casByKey() - Compare and swap an item on a specific server

Memcached::appendByKey
Memcached::casByKey
Memcached


Compare and swap an item on a specific server

Memcached::cas
Memcached::__construct
Memcached
PHP Manual

Memcached::casByKey

(PECL memcached >= 0.1.0)

Memcached::casByKey — Compare and swap an item on a specific server

Descrição

public bool Memcached::casByKey ( float $cas_token , string $server_key , string $key , mixed $value [, int $expiration ] )

Memcached::casByKey() is functionally equivalent to Memcached::cas(), except that the free-form server_key can be used to map the key to a specific server. This is useful if you need to keep a bunch of related keys on a certain server.

Parâmetros

cas_token

Unique value associated with the existing item. Generated by memcache.

server_key

A chave identificando o servidor aonde guardar o valor.

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_DATA_EXISTS if the item you are trying to store has been modified since you last fetched it.

Veja Também

  • Memcached::cas() - Compare and swap an item

Memcached::cas
Memcached::__construct
Memcached


Create a Memcached instance

Memcached::casByKey
Memcached::decrement
Memcached
PHP Manual

Memcached::__construct

(PECL memcached >= 0.1.0)

Memcached::__construct — Create a Memcached instance

Descrição

Memcached::__construct() ([ string $persistent_id ] )

Creates a Memcached instance representing the connection to the memcache servers.

Parâmetros

persistent_id

By default the Memcached instances are destroyed at the end of the request. To create an instance that persists between requests, use persistent_id to specify a unique ID for the instance. All instances created with the same persistent_id will share the same connection.

Valor Retornado

A Memcached object.

Exemplos

Exemplo #1 Creating a Memcached object

<?php
/* Create a regular instance */
$m1 = new Memcached();
echo get_class($m);

/* Create a persistent instance */
$m2 = new Memcached('story_pool');
$m3 = new Memcached('story_pool');

/* now $m2 and $m3 share the same connection */
?>

Memcached::casByKey
Memcached::decrement
Memcached


Decrement numeric item's value

Memcached::__construct
Memcached::delete
Memcached
PHP Manual

Memcached::decrement

(PECL memcached >= 0.1.0)

Memcached::decrement — Decrement numeric item's value

Descrição

public int Memcached::decrement ( string $key [, int $offset = 1 ] )

Memcached::decrement() decrements a numeric item's value by the specified offset. If the item's value is not numeric, it is treated as if the value were 0. If the operation would decrease the value below 0, the new value will be 0. Memcached::decrement() will fail if the item does not exist.

Parâmetros

key

The key of the item to decrement.

offset

The amount by which to decrement the item's value.

Valor Retornado

Returns item's new value on success or FALSE on failure. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Exemplos

Exemplo #1 Memcached::decrement() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('counter', 5);
$m->decrement('counter');
var_dump($m->get('counter'));

$m->decrement('counter', 10);
var_dump($m->get('counter'));
?>

O exemplo acima irá imprimir:

int(4)
int(0)

Veja Também

  • Memcached::increment() - Increment numeric item's value

Memcached::__construct
Memcached::delete
Memcached


Delete an item

Memcached::decrement
Memcached::deleteByKey
Memcached
PHP Manual

Memcached::delete

(PECL memcached >= 0.1.0)

Memcached::delete — Delete an item

Descrição

public bool Memcached::delete ( string $key [, int $time = 0 ] )

Memcached::delete() deletes the key from the server. The time parameter is the amount of time in seconds (or Unix time until which) the client wishes the server to refuse add and replace commands for this key. For this amount of time, the item is put into a delete queue, which means that it won't possible to retrieve it by the get command, but add and replace command with this key will also fail (the set command will succeed, however). After the time passes, the item is finally deleted from server memory. The parameter time defaults to 0 (which means that the item will be deleted immediately and further storage commands with this key will succeed).

Parâmetros

key

The key to be deleted.

time

The amount of time the server will wait to delete the item.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Exemplos

Exemplo #1 Memcached::delete() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->delete('key1');
?>

Veja Também

  • Memcached::deleteByKey() - Delete an item from a specific server

Memcached::decrement
Memcached::deleteByKey
Memcached


Delete an item from a specific server

Memcached::delete
Memcached::fetch
Memcached
PHP Manual

Memcached::deleteByKey

(PECL memcached >= 0.1.0)

Memcached::deleteByKey — Delete an item from a specific server

Descrição

public bool Memcached::deleteByKey ( string $server_key , string $key [, int $time = 0 ] )

Memcached::deleteByKey() is functionally equivalent to Memcached::delete(), except that the free-form server_key can be used to map the key to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

The key to be deleted.

time

The amount of time the server will wait to delete the item.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Veja Também

  • Memcached::delete() - Delete an item

Memcached::delete
Memcached::fetch
Memcached


Fetch the next result

Memcached::deleteByKey
Memcached::fetchAll
Memcached
PHP Manual

Memcached::fetch

(PECL memcached >= 0.1.0)

Memcached::fetch — Fetch the next result

Descrição

public array Memcached::fetch ( void )

Memcached::fetch() retrieves the next result from the last request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the next result or FALSE otherwise. The Memcached::getResultCode() will return Memcached::RES_END if result set is exhausted.

Exemplos

Exemplo #1 Memcached::fetch() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));

$m->getDelayed(array('int', 'array'), true);
while ($result = $m->fetch()) {
    var_dump($result);
}
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["key"]=>
  string(3) "int"
  "value"]=>
  int(99)
  ["cas"]=>
  float(2363)
}
array(3) {
  ["key"]=>
  string(5) "array"
  ["value"]=>
  array(2) {
    [0]=>
    int(11)
    [1]=>
    int(12)
  }
  ["cas"]=>
  float(2365)
}

Veja Também

  • Memcached::fetchAll() - Fetch all the remaining results
  • Memcached::getDelayed() - Request multiple items

Memcached::deleteByKey
Memcached::fetchAll
Memcached


Fetch all the remaining results

Memcached::fetch
Memcached::flush
Memcached
PHP Manual

Memcached::fetchAll

(PECL memcached >= 0.1.0)

Memcached::fetchAll — Fetch all the remaining results

Descrição

public array Memcached::fetchAll ( void )

Memcached::fetchAll() retrieves all the remaining results from the last request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the results or FALSE on failure. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::getDelayed() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));

$m->getDelayed(array('int', 'array'), true);
var_dump($m->fetchAll());
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  array(3) {
    ["key"]=>
    string(3) "int"
    ["value"]=>
    int(99)
    ["cas"]=>
    float(2363)
  }
  [1]=>
  array(3) {
    ["key"]=>
    string(5) "array"
    ["value"]=>
    array(2) {
      [0]=>
      int(11)
      [1]=>
      int(12)
    }
    ["cas"]=>
    float(2365)
  }
}

Veja Também

  • Memcached::fetch() - Fetch the next result
  • Memcached::getDelayed() - Request multiple items

Memcached::fetch
Memcached::flush
Memcached


Invalidate all items in the cache

Memcached::fetchAll
Memcached::get
Memcached
PHP Manual

Memcached::flush

(PECL memcached >= 0.1.0)

Memcached::flush — Invalidate all items in the cache

Descrição

public bool Memcached::flush ([ int $delay = 0 ] )

Memcached::flush() invalidates all existing cache items immediately (by default) or after the delay specified. After invalidation none of the items will be returned in response to a retrieval command (unless it's stored again under the same key after Memcached::flush() has invalidated the items). The flush does not actually free all the memory taken up by the existing items; that will happen gradually as new items are stored.

Parâmetros

delay

Numer of seconds to wait before invalidating the items.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::flush() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

/* flush all items in 10 seconds */
$m->flush(10);
?>

Memcached::fetchAll
Memcached::get
Memcached


Retrieve an item

Memcached::flush
Memcached::getByKey
Memcached
PHP Manual

Memcached::get

(PECL memcached >= 0.1.0)

Memcached::get — Retrieve an item

Descrição

public mixed Memcached::get ( string $key [, callback $cache_cb [, float &$cas_token ]] )

Memcached::get() returns the item that was previously stored under the key. If the item is found and cas_token variable is provided, it will contain the CAS token value for the item. See Memcached::cas() for how to use CAS tokens. Read-through caching callback may be specified via cache_cb parameter.

Parâmetros

key

The key of the item to retrieve.

cache_cb

Read-through caching callback or NULL.

cas_token

The variable to store the CAS token in.

Valor Retornado

Returns the value stored in the cache or FALSE otherwise. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Exemplos

Exemplo #1 Memcached::get() example #1

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('foo', 100);
var_dump($m->get('foo'));
?>

O exemplo acima irá imprimir:

int(100)

Exemplo #2 Memcached::get() example #2

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

if (!($ip = $m->get('ip_block'))) {
    if ($m->getResultCode() == Memcached::RES_NOTFOUND) {
        $ip = array();
        $m->set('ip_block', $ip);
    } else {
        /* log error */
        /* ...       */
    }
}
?>

Veja Também

  • Memcached::getByKey() - Retrieve an item from a specific server
  • Memcached::getMulti() - Retrieve multiple items
  • Memcached::getDelayed() - Request multiple items

Memcached::flush
Memcached::getByKey
Memcached


Retrieve an item from a specific server

Memcached::get
Memcached::getDelayed
Memcached
PHP Manual

Memcached::getByKey

(PECL memcached >= 0.1.0)

Memcached::getByKey — Retrieve an item from a specific server

Descrição

public mixed Memcached::getByKey ( string $server_key , string $key [, callback $cache_cb [, float &$cas_token ]] )

Memcached::getByKey() is functionally equivalent to Memcached::get(), except that the free-form server_key can be used to map the key to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

The key of the item to fetch.

cache_cb

Read-through caching callback or NULL

cas_token

The variable to store the CAS token in.

Valor Retornado

Returns the value stored in the cache or FALSE otherwise. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Veja Também

  • Memcached::get() - Retrieve an item
  • Memcached::getMulti() - Retrieve multiple items
  • Memcached::getDelayed() - Request multiple items

Memcached::get
Memcached::getDelayed
Memcached


Request multiple items

Memcached::getByKey
Memcached::getDelayedByKey
Memcached
PHP Manual

Memcached::getDelayed

(PECL memcached >= 0.1.0)

Memcached::getDelayed — Request multiple items

Descrição

public bool Memcached::getDelayed ( array $keys [, bool $with_cas [, callback $value_cb ]] )

Memcached::getDelayed() issues a request to memcache for multiple items the keys of which are specified in the keys array. The method does not wait for response and returns right away. When you are ready to collect the items, call either Memcached::fetch() or Memcached::fetchAll(). If with_cas is true, the CAS token values will also be requested.

Instead of fetching the results explicitly, you can specify a result callback via value_cb parameter.

Parâmetros

keys

Array of keys to request.

with_cas

Whether to request CAS token values also.

value_cb

The result callback or NULL.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::getDelayed() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));

$m->getDelayed(array('int', 'array'), true);
var_dump($m->fetchAll());
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  array(3) {
    ["key"]=>
    string(3) "int"
    ["value"]=>
    int(99)
    ["cas"]=>
    float(2363)
  }
  [1]=>
  array(3) {
    ["key"]=>
    string(5) "array"
    ["value"]=>
    array(2) {
      [0]=>
      int(11)
      [1]=>
      int(12)
    }
    ["cas"]=>
    float(2365)
  }
}

Veja Também

  • Memcached::getDelayedByKey() - Request multiple items from a specific server
  • Memcached::fetch() - Fetch the next result
  • Memcached::fetchAll() - Fetch all the remaining results

Memcached::getByKey
Memcached::getDelayedByKey
Memcached


Request multiple items from a specific server

Memcached::getDelayed
Memcached::getMulti
Memcached
PHP Manual

Memcached::getDelayedByKey

(PECL memcached >= 0.1.0)

Memcached::getDelayedByKey — Request multiple items from a specific server

Descrição

public bool Memcached::getDelayedByKey ( string $server_key , array $keys [, bool $with_cas [, callback $value_cb ]] )

Memcached::getDelayedByKey() is functionally equivalent to Memcached::getDelayed(), except that the free-form server_key can be used to map the keys to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

keys

Array of keys to request.

with_cas

Whether to request CAS token values also.

value_cb

The result callback or NULL.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Veja Também

  • Memcached::getDelayed() - Request multiple items
  • Memcached::fetch() - Fetch the next result
  • Memcached::fetchAll() - Fetch all the remaining results

Memcached::getDelayed
Memcached::getMulti
Memcached


Retrieve multiple items

Memcached::getDelayedByKey
Memcached::getMultiByKey
Memcached
PHP Manual

Memcached::getMulti

(PECL memcached >= 0.1.0)

Memcached::getMulti — Retrieve multiple items

Descrição

public mixed Memcached::getMulti ( array $keys [, array &$cas_tokens [, int $flags ]] )

Memcached::getMulti() is similar to Memcached::get(), but instead of a single key item, it retrieves multiple items the keys of which are specified in the keys array. If cas_tokens variable is provided, it is filled with the CAS token values for the found items.

Nota:

Unlike Memcached::get() it is not possible to specify a read-through cache callback for Memcached::getMulti(), because the memcache protocol does not provide information on which keys were not found in the multi-key request.

The flags parameter can be used to specify additional options for Memcached::getMulti(). Currently, the only available option is Memcached::GET_PRESERVE_ORDER that ensures that the keys are returned in the same order as they were requested in.

Parâmetros

keys

Array of keys to retrieve.

cas_tokens

The variable to store the CAS tokens for the found items.

flags

The flags for the get operation.

Valor Retornado

Returns the array of found items or FALSE on failure. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::getMulti() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$items = array(
    'key1' => 'value1',
    'key2' => 'value2',
    'key3' => 'value3'
);
$m->setMulti($items);
$result = $m->getMulti(array('key1', 'key3', 'badkey'), $cas);
var_dump($result, $cas);
?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["key1"]=>
  string(6) "value1"
  ["key3"]=>
  string(6) "value3"
}
array(2) {
  ["key1"]=>
  float(2360)
  ["key3"]=>
  float(2362)
}

Exemplo #2 Memcached::GET_PRESERVE_ORDER example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$data = array(
    'foo' => 'foo-data',
    'bar' => 'bar-data',
    'baz' => 'baz-data',
    'lol' => 'lol-data',
    'kek' => 'kek-data',
);

$m->setMulti($data, 3600);

$null = null;
$keys = array_keys($data);
$keys[] = 'zoo';
$got = $m->getMulti($keys, $null, Memcached::GET_PRESERVE_ORDER);

foreach ($got as $k => $v) {
    echo "$k $v\n";
}
?>

O exemplo acima irá imprimir algo similar a:

foo foo-data
bar bar-data
baz baz-data
lol lol-data
kek kek-data
zoo

Veja Também

  • Memcached::getMultiByKey() - Retrieve multiple items from a specific server
  • Memcached::get() - Retrieve an item
  • Memcached::getDelayed() - Request multiple items

Memcached::getDelayedByKey
Memcached::getMultiByKey
Memcached


Retrieve multiple items from a specific server

Memcached::getMulti
Memcached::getOption
Memcached
PHP Manual

Memcached::getMultiByKey

(PECL memcached >= 0.1.0)

Memcached::getMultiByKey — Retrieve multiple items from a specific server

Descrição

public array Memcached::getMultiByKey ( string $server_key , array $keys [, string &$cas_tokens [, int $flags ]] )

Memcached::getMultiByKey() is functionally equivalent to Memcached::getMulti(), except that the free-form server_key can be used to map the keys to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

keys

Array of keys to retrieve.

cas_tokens

The variable to store the CAS tokens for the found items.

flags

The flags for the get operation.

Valor Retornado

Returns the array of found items or FALSE on failure. Use Memcached::getResultCode() se necessário.

Veja Também

  • Memcached::getMulti() - Retrieve multiple items
  • Memcached::get() - Retrieve an item
  • Memcached::getDelayed() - Request multiple items

Memcached::getMulti
Memcached::getOption
Memcached


Retrieve a Memcached option value

Memcached::getMultiByKey
Memcached::getResultCode
Memcached
PHP Manual

Memcached::getOption

(PECL memcached >= 0.1.0)

Memcached::getOption — Retrieve a Memcached option value

Descrição

public mixed Memcached::getOption ( int $option )

This method returns the value of a Memcached option. Some options correspond to the ones defined by libmemcached, and some are specific to the extension. See Memcached Constants for more information.

Parâmetros

option

One of the Memcached::OPT_* constants.

Valor Retornado

Returns the value of the requested option, or FALSE on error.

Exemplos

Exemplo #1 Retrieving Memcached options

<?php
$m = new Memcached();
var_dump($m->getOption(Memcached::OPT_COMPRESSION));
var_dump($m->getOption(Memcached::OPT_POLL_TIMEOUT));
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
int(1000)

Veja Também

  • Memcached::setOption() - Set a Memcached option
  • Memcached Constants

Memcached::getMultiByKey
Memcached::getResultCode
Memcached


Return the result code of the last operation

Memcached::getOption
Memcached::getResultMessage
Memcached
PHP Manual

Memcached::getResultCode

(PECL memcached >= 0.1.0)

Memcached::getResultCode — Return the result code of the last operation

Descrição

public int Memcached::getResultCode ( void )

Memcached::getResultCode() returns one of the Memcached::RES_* constants that is the result of the last executed Memcached method.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Result code of the last Memcached operation.

Exemplos

Exemplo #1 Memcached::getResultCode() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->add('foo', 'bar');
if ($m->getResultCode() == Memcached::RES_NOTSTORED) {
    /* ... */
}
?>

Memcached::getOption
Memcached::getResultMessage
Memcached


Return the message describing the result of the last operation

Memcached::getResultCode
Memcached::getServerByKey
Memcached
PHP Manual

Memcached::getResultMessage

(PECL memcached >= 1.0.0)

Memcached::getResultMessage — Return the message describing the result of the last operation

Descrição

public string Memcached::getResultMessage ( void )

Memcached::getResultMessage() returns a string that describes the result code of the last executed Memcached method.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Message describing the result of the last Memcached operation.

Exemplos

Exemplo #1 Memcached::getResultMessage() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->add('foo', 'bar'); // first time should succeed
$m->add('foo', 'bar');
echo $m->getResultMessage(),"\n";
?>

O exemplo acima irá imprimir:

NOT STORED

Memcached::getResultCode
Memcached::getServerByKey
Memcached


Map a key to a server

Memcached::getResultMessage
Memcached::getServerList
Memcached
PHP Manual

Memcached::getServerByKey

(PECL memcached >= 0.1.0)

Memcached::getServerByKey — Map a key to a server

Descrição

public array Memcached::getServerByKey ( string $server_key )

Memcached::getServerByKey() returns the server that would be selected by a particular server_key in all the Memcached::*ByKey() operations.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::getServerByKey() example

<?php
$m = new Memcached();
$m->addServers(array(
    array('mem1.domain.com', 11211, 40),
    array('mem2.domain.com', 11211, 40),
    array('mem3.domain.com', 11211, 20),
));

$m->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);

var_dump($m->getServerByKey('user'));
var_dump($m->getServerByKey('log'));
var_dump($m->getServerByKey('ip'));
?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["host"]=>
  string(15) "mem3.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(20)
}
array(3) {
  ["host"]=>
  string(15) "mem2.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(40)
}
array(3) {
  ["host"]=>
  string(15) "mem2.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(40)
}

Memcached::getResultMessage
Memcached::getServerList
Memcached


Get the list of the servers in the pool

Memcached::getServerByKey
Memcached::getStats
Memcached
PHP Manual

Memcached::getServerList

(PECL memcached >= 0.1.0)

Memcached::getServerList — Get the list of the servers in the pool

Descrição

public array Memcached::getServerList ( void )

Memcached::getServerList() returns the list of all servers that are in its server pool.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The list of all servers in the server pool.

Exemplos

Exemplo #1 Memcached::getServerList() example

<?php
$m = new Memcached();
$m->addServers(array(
    array('mem1.domain.com', 11211, 20),
    array('mem2.domain.com', 11311, 80),
));
var_dump($m->getServerList());
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  array(3) {
    ["host"]=>
    string(15) "mem1.domain.com"
    ["port"]=>
    int(11211)
    ["weight"]=>
    int(20)
  }
  [1]=>
  array(3) {
    ["host"]=>
    string(15) "mem2.domain.com"
    ["port"]=>
    int(11311)
    ["weight"]=>
    int(80)
  }
}

Memcached::getServerByKey
Memcached::getStats
Memcached


Get server pool statistics

Memcached::getServerList
Memcached::getVersion
Memcached
PHP Manual

Memcached::getStats

(PECL memcached >= 0.1.0)

Memcached::getStats — Get server pool statistics

Descrição

public array Memcached::getStats ( void )

Memcached::getStats() returns an array containing the state of all available memcache servers. See » memcache protocol specification for details on these statistics.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Array of server statistics, one entry per server.

Exemplos

Exemplo #1 Memcached::getStats() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

print_r($m->getStats());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [localhost:11211] => Array
        (
            [pid] => 4933
            [uptime] => 786123
            [threads] => 1
            [time] => 1233868010
            [pointer_size] => 32
            [rusage_user_seconds] => 0
            [rusage_user_microseconds] => 140000
            [rusage_system_seconds] => 23
            [rusage_system_microseconds] => 210000
            [curr_items] => 145
            [total_items] => 2374
            [limit_maxbytes] => 67108864
            [curr_connections] => 2
            [total_connections] => 151
            [connection_structures] => 3
            [bytes] => 20345
            [cmd_get] => 213343
            [cmd_set] => 2381
            [get_hits] => 204223
            [get_misses] => 9120
            [evictions] => 0
            [bytes_read] => 9092476
            [bytes_written] => 15420512
            [version] => 1.2.6
        )

)

Memcached::getServerList
Memcached::getVersion
Memcached


Get server pool version info

Memcached::getStats
Memcached::increment
Memcached
PHP Manual

Memcached::getVersion

(PECL memcached >= 0.1.5)

Memcached::getVersion — Get server pool version info

Descrição

public array Memcached::getVersion ( void )

Memcached::getVersion() returns an array containing the version info for all available memcache servers.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Array of server versions, one entry per server.

Exemplos

Exemplo #1 Memcached::getVersion() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

print_r($m->getVersion());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [localhost:11211] => 1.2.6
)

Memcached::getStats
Memcached::increment
Memcached


Increment numeric item's value

Memcached::getVersion
Memcached::prepend
Memcached
PHP Manual

Memcached::increment

(PECL memcached >= 0.1.0)

Memcached::increment — Increment numeric item's value

Descrição

public int Memcached::increment ( string $key [, int $offset = 1 ] )

Memcached::increment() increments a numeric item's value by the specified offset. If the item's value is not numeric, it is treated as if the value were 0. Memcached::increment() will fail if the item does not exist.

Parâmetros

key

The key of the item to increment.

offset

The amount by which to increment the item's value.

Valor Retornado

Returns new item's value on success or FALSE on failure. The Memcached::getResultCode() will return Memcached::RES_NOTFOUND if the key does not exist.

Exemplos

Exemplo #1 Memcached::increment() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('counter', 0);
$m->increment('counter');
$m->increment('counter', 10);
var_dump($m->get('counter'));

$m->set('key', 'abc');
$m->increment('counter');
?>

O exemplo acima irá imprimir:

int(11)
string(1) "1"

Veja Também

  • Memcached::decrement() - Decrement numeric item's value

Memcached::getVersion
Memcached::prepend
Memcached


Prepend data to an existing item

Memcached::increment
Memcached::prependByKey
Memcached
PHP Manual

Memcached::prepend

(PECL memcached >= 0.1.0)

Memcached::prepend — Prepend data to an existing item

Descrição

public bool Memcached::prepend ( string $key , string $value )

Memcached::prepend() prepends the given value string to the value of an existing item. The reason that value is forced to be a string is that prepending mixed types is not well-defined.

Nota:

If the Memcached::OPT_COMPRESSION is enabled, the operation will fail and a warning will be issued, because prepending compressed data to a value that is potentially already compressed is not possible.

Parâmetros

key

The key of the item to prepend the data to.

value

The string to prepend.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Exemplos

Exemplo #1 Memcached::prepend() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$m->setOption(Memcached::OPT_COMPRESSION, false);

$m->set('foo', 'abc');
$m->prepend('foo', 'def');
var_dump($m->get('foo'));
?>

O exemplo acima irá imprimir:

string(6) "defabc"

Veja Também

  • Memcached::prependByKey() - Prepend data to an existing item on a specific server
  • Memcached::append() - Append data to an existing item

Memcached::increment
Memcached::prependByKey
Memcached


Prepend data to an existing item on a specific server

Memcached::prepend
Memcached::replace
Memcached
PHP Manual

Memcached::prependByKey

(PECL memcached >= 0.1.0)

Memcached::prependByKey — Prepend data to an existing item on a specific server

Descrição

public bool Memcached::prependByKey ( string $server_key , string $key , string $value )

Memcached::prependByKey() is functionally equivalent to Memcached::prepend(), except that the free-form server_key can be used to map the key to a specific server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

The key of the item to prepend the data to.

value

The string to prepend.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Veja Também

  • Memcached::prepend() - Prepend data to an existing item
  • Memcached::append() - Append data to an existing item

Memcached::prepend
Memcached::replace
Memcached


Replace the item under an existing key

Memcached::prependByKey
Memcached::replaceByKey
Memcached
PHP Manual

Memcached::replace

(PECL memcached >= 0.1.0)

Memcached::replace — Replace the item under an existing key

Descrição

public bool Memcached::replace ( string $key , mixed $value [, int $expiration ] )

Memcached::replace() is similar to Memcached::set(), but the operation fails if the key does not exist on the server.

Parâmetros

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Veja Também

  • Memcached::replaceByKey() - Replace the item under an existing key on a specific server
  • Memcached::set() - Store an item
  • Memcached::add() - Add an item under a new key

Memcached::prependByKey
Memcached::replaceByKey
Memcached


Replace the item under an existing key on a specific server

Memcached::replace
Memcached::set
Memcached
PHP Manual

Memcached::replaceByKey

(PECL memcached >= 0.1.0)

Memcached::replaceByKey — Replace the item under an existing key on a specific server

Descrição

public bool Memcached::replaceByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )

Memcached::replaceByKey() is functionally equivalent to Memcached::replace(), except that the free-form server_key can be used to map the key to a specific server. This is useful if you need to keep a bunch of related keys on a certain server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. The Memcached::getResultCode() will return Memcached::RES_NOTSTORED if the key does not exist.

Veja Também

  • Memcached::replace() - Replace the item under an existing key
  • Memcached::set() - Store an item
  • Memcached::add() - Add an item under a new key

Memcached::replace
Memcached::set
Memcached


Store an item

Memcached::replaceByKey
Memcached::setByKey
Memcached
PHP Manual

Memcached::set

(PECL memcached >= 0.1.0)

Memcached::set — Store an item

Descrição

public bool Memcached::set ( string $key , mixed $value [, int $expiration ] )

Memcached::set() stores the value on a memcache server under the specified key. The expiration parameter can be used to control when the value is considered expired.

The value can be any valid PHP type except for resources, because those cannot be represented in a serialized form. If the Memcached::OPT_COMPRESSION option is turned on, the serialized value will also be compressed before storage.

Parâmetros

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::set() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));
/* expire 'object' key in 5 minutes */
$m->set('object', new stdclass, time() + 300);

var_dump($m->get('int'));
var_dump($m->get('string'));
var_dump($m->get('array'));
var_dump($m->get('object'));
?>

O exemplo acima irá imprimir algo similar a:

int(99)
string(15) "a simple string"
array(2) {
  [0]=>
  int(11)
  [1]=>
  int(12)
}
object(stdClass)#1 (0) {
}

Veja Também

  • Memcached::setByKey() - Store an item on a specific server
  • Memcached::add() - Add an item under a new key
  • Memcached::replace() - Replace the item under an existing key

Memcached::replaceByKey
Memcached::setByKey
Memcached


Store an item on a specific server

Memcached::set
Memcached::setMulti
Memcached
PHP Manual

Memcached::setByKey

(PECL memcached >= 0.1.0)

Memcached::setByKey — Store an item on a specific server

Descrição

public bool Memcached::setByKey ( string $server_key , string $key , mixed $value [, int $expiration ] )

Memcached::setByKey() is functionally equivalent to Memcached::set(), except that the free-form server_key can be used to map the key to a specific server. This is useful if you need to keep a bunch of related keys on a certain server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

key

A chave sobre a qual guardar o valor.

value

O valor para guardar.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::setByKey() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

/* keep IP blocks on a certain server */
$m->setByKey('api-cache', 'block-ip:169.254.253.252', 1);
$m->setByKey('api-cache', 'block-ip:169.127.127.202', 1);
?>

Veja Também

  • Memcached::set() - Store an item

Memcached::set
Memcached::setMulti
Memcached


Store multiple items

Memcached::setByKey
Memcached::setMultiByKey
Memcached
PHP Manual

Memcached::setMulti

(PECL memcached >= 0.1.0)

Memcached::setMulti — Store multiple items

Descrição

public bool Memcached::setMulti ( array $items [, int $expiration ] )

Memcached::setMulti() is similar to Memcached::set(), but instead of a single key/value item, it works on multiple items specified in items. The expiration time applies to all the items at once.

Parâmetros

items

Um array de pares chave/valor para guardar no servidor.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Exemplos

Exemplo #1 Memcached::setMulti() example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$items = array(
    'key1' => 'value1',
    'key2' => 'value2',
    'key3' => 'value3'
);
$m->setMulti($items, time() + 300);
?>

Veja Também

  • Memcached::setMultiByKey() - Store multiple items on a specific server
  • Memcached::set() - Store an item

Memcached::setByKey
Memcached::setMultiByKey
Memcached


Store multiple items on a specific server

Memcached::setMulti
Memcached::setOption
Memcached
PHP Manual

Memcached::setMultiByKey

(PECL memcached >= 0.1.0)

Memcached::setMultiByKey — Store multiple items on a specific server

Descrição

public bool Memcached::setMultiByKey ( string $server_key , array $items [, int $expiration ] )

Memcached::setMultiByKey() is functionally equivalent to Memcached::setMulti(), except that the free-form server_key can be used to map the keys from items to a specific server. This is useful if you need to keep a bunch of related keys on a certain server.

Parâmetros

server_key

A chave identificando o servidor aonde guardar o valor.

items

Um array de pares chave/valor para guardar no servidor.

expiration

O tempo de expiração, padrão é 0. Veja Tempos de Expiração para maiores informações.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Use Memcached::getResultCode() se necessário.

Veja Também

  • Memcached::setMulti() - Store multiple items
  • Memcached::set() - Store an item

Memcached::setMulti
Memcached::setOption
Memcached


Set a Memcached option

Memcached::setMultiByKey
Gearman
Memcached
PHP Manual

Memcached::setOption

(PECL memcached >= 0.1.0)

Memcached::setOption — Set a Memcached option

Descrição

public bool Memcached::setOption ( int $option , mixed $value )

This method sets the value of a Memcached option. Some options correspond to the ones defined by libmemcached, and some are specific to the extension. See Memcached Constants for more information.

The options listed below require values specified via constants.

  • Memcached::OPT_HASH requires Memcached::HASH_* values.

  • Memcached::OPT_DISTRIBUTION requires Memcached::DISTRIBUTION_* values.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting a Memcached option

<?php
$m = new Memcached();
var_dump($m->getOption(Memcached::OPT_HASH) == Memcached::HASH_DEFAULT);
$m->setOption(Memcached::OPT_HASH, Memcached::HASH_MURMUR);
$m->setOption(Memcached::OPT_PREFIX_KEY, "widgets");
echo "Prefix key is now: ", $m->getOption(Memcached::OPT_PREFIX_KEY), "\n";
?>

O exemplo acima irá imprimir:

bool(true)
Prefix key is now: widgets

Veja Também

  • Memcached::getOption() - Retrieve a Memcached option value

Memcached::setMultiByKey
Gearman
Memcached


Gearman

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • GearmanClient — The GearmanClient class
    • GearmanClient::addOptions — Add client options
    • GearmanClient::addServer — Add a job server to the client
    • GearmanClient::addServers — Add a list of job servers to the client
    • GearmanClient::addTask — Add a task to be run in parallel
    • GearmanClient::addTaskBackground — Add a background task to be run in parallel
    • GearmanClient::addTaskHigh — Add a high priority task to run in parallel
    • GearmanClient::addTaskHighBackground — Add a high priority background task to be run in parallel
    • GearmanClient::addTaskLow — Add a low priority task to run in parallel
    • GearmanClient::addTaskLowBackground — Add a low priority background task to be run in parallel
    • GearmanClient::addTaskStatus — Add a task to get status
    • GearmanClient::clearCallbacks — Clear all task callback functions
    • GearmanClient::clone — Create a copy of a GearmanClient object
    • GearmanClient::__construct — Create a GearmanClient instance
    • GearmanClient::context — Get the application context
    • GearmanClient::data — Get the application data (deprecated)
    • GearmanClient::do — Run a single task and return a result
    • GearmanClient::doBackground — Run a task in the background
    • GearmanClient::doHigh — Run a single high priority task
    • GearmanClient::doHighBackground — Run a high priority task in the background
    • GearmanClient::doJobHandle — Get the job handle for the running task
    • GearmanClient::doLow — Run a single low priority task
    • GearmanClient::doLowBackground — Run a low priority task in the background
    • GearmanClient::doStatus — Get the status for the running task
    • GearmanClient::echo — Send data to all job servers to see if they echo it back
    • GearmanClient::error — Returns an error string for the last error encountered.
    • GearmanClient::getErrno — Get an errno value
    • GearmanClient::jobStatus — Get the status of a background job
    • GearmanClient::removeOptions — Remove client options
    • GearmanClient::returnCode — Get the last Gearman return code
    • GearmanClient::runTasks — Run a list of tasks in parallel
    • GearmanClient::setClientCallback — Callback function when there is a data packet for a task (deprecated)
    • GearmanClient::setCompleteCallback — Set a function to be called on task completion
    • GearmanClient::setContext — Set application context
    • GearmanClient::setCreatedCallback — Set a callback for when a task is queued
    • GearmanClient::setData — Set application data (deprecated)
    • GearmanClient::setDataCallback — Callback function when there is a data packet for a task
    • GearmanClient::setExceptionCallback — Set a callback for worker exceptions
    • GearmanClient::setFailCallback — Set callback for job failure
    • GearmanClient::setOptions — Set client options
    • GearmanClient::setStatusCallback — Set a callback for collecting task status
    • GearmanClient::setTimeout — Set socket I/O activity timeout
    • GearmanClient::setWarningCallback — Set a callback for worker warnings
    • GearmanClient::setWorkloadCallback — Set a callback for accepting incremental data updates
    • GearmanClient::timeout — Get current socket I/O activity timeout value
  • GearmanJob — The GearmanJob class
    • GearmanJob::complete — Send the result and complete status (deprecated)
    • GearmanJob::__construct — Create a GearmanJob instance
    • GearmanJob::data — Send data for a running job (deprecated)
    • GearmanJob::exception — Send exception for running job (deprecated)
    • GearmanJob::fail — Send fail status (deprecated)
    • GearmanJob::functionName — Get function name
    • GearmanJob::handle — Get the job handle
    • GearmanJob::returnCode — Get last return code
    • GearmanJob::sendComplete — Send the result and complete status
    • GearmanJob::sendData — Send data for a running job
    • GearmanJob::sendException — Send exception for running job (exception)
    • GearmanJob::sendFail — Send fail status
    • GearmanJob::sendStatus — Send status
    • GearmanJob::sendWarning — Send a warning
    • GearmanJob::setReturn — Set a return value
    • GearmanJob::status — Send status (deprecated)
    • GearmanJob::unique — Get the unique identifier
    • GearmanJob::warning — Send a warning (deprecated)
    • GearmanJob::workload — Get workload
    • GearmanJob::workloadSize — Get size of work load
  • GearmanTask — The GearmanTask class
    • GearmanTask::__construct — Create a GearmanTask instance
    • GearmanTask::create — Create a task (deprecated)
    • GearmanTask::data — Get data returned for a task
    • GearmanTask::dataSize — Get the size of returned data
    • GearmanTask::function — Get associated function name (deprecated)
    • GearmanTask::functionName — Get associated function name
    • GearmanTask::isKnown — Determine if task is known
    • GearmanTask::isRunning — Test whether the task is currently running
    • GearmanTask::jobHandle — Get the job handle
    • GearmanTask::recvData — Read work or result data into a buffer for a task
    • GearmanTask::returnCode — Get the last return code
    • GearmanTask::sendData — Send data for a task (deprecated)
    • GearmanTask::sendWorkload — Send data for a task
    • GearmanTask::taskDenominator — Get completion percentage denominator
    • GearmanTask::taskNumerator — Get completion percentage numerator
    • GearmanTask::unique — Get the unique identifier for a task
    • GearmanTask::uuid — Get the unique identifier for a task (deprecated)
  • GearmanWorker — The GearmanWorker class
    • GearmanWorker::addFunction — Register and add callback function
    • GearmanWorker::addOptions — Add worker options
    • GearmanWorker::addServer — Add a job server
    • GearmanWorker::addServers — Add job servers
    • GearmanWorker::clone — Create a copy of the worker
    • GearmanWorker::__construct — Create a GearmanWorker instance
    • GearmanWorker::echo — Test job server response
    • GearmanWorker::error — Get the last error encountered
    • GearmanWorker::getErrno — Get errno
    • GearmanWorker::options — Get worker options
    • GearmanWorker::register — Register a function with the job server
    • GearmanWorker::removeOptions — Remove worker options
    • GearmanWorker::returnCode — Get last Gearman return code
    • GearmanWorker::setOptions — Set worker options
    • GearmanWorker::setTimeout — Set socket I/O activity timeout
    • GearmanWorker::timeout — Get socket I/O activity timeout
    • GearmanWorker::unregister — Unregister a function name with the job servers
    • GearmanWorker::unregisterAll — Unregister all function names with the job servers
    • GearmanWorker::wait — Wait for activity from one of the job servers
    • GearmanWorker::work — Wait for and perform jobs
Memcached::setOption
Introdução
Outros Serviços


Introdução

» Gearman is a generic application framework for farming out work to multiple machines or processes. It allows applications to complete tasks in parallel, to load balance processing, and to call functions between languages. The framework can be used in a variety of applications, from high-availability web sites to the transport of database replication events.

This extension provides classes for writing Gearman clients and workers.

Gearman
Instalação/Configuração
Gearman


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Gearman


Dependências

This extension requires the » libgearman library and a running Gearman server.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/gearman

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Return values. Always check GearmanClient::error() or GearmanWorker() for a string error, as it may contain more details:

GEARMAN_SUCCESS (integer)
Whatever action was taken was successful.
GEARMAN_IO_WAIT (integer)
When in non-blocking mode, an event is hit that would have blocked.
GEARMAN_ERRNO (integer)
A system error. Check GearmanClient::errno() or GearmanWorker::errno() for the system error code that was returned.
GEARMAN_NO_ACTIVE_FDS (integer)
GearmanClient::wait() or GearmanWorker() was called with no connections.
GEARMAN_UNEXPECTED_PACKET (integer)
Indicates something going very wrong in gearmand. Applies only to GearmanWorker.
GEARMAN_GETADDRINFO (integer)
DNS resolution failed (invalid host, port, etc).
GEARMAN_NO_SERVERS (integer)
Did not call GearmanClient::addServer() before submitting jobs or tasks.
GEARMAN_LOST_CONNECTION (integer)
Lost a connection during a request.
GEARMAN_MEMORY_ALLOCATION_FAILURE (integer)
Memory allocation failed (ran out of memory).
GEARMAN_SERVER_ERROR (integer)
Something went wrong in the Gearman server and it could not handle the request gracefully.
GEARMAN_WORK_DATA (integer)
Notice return code obtained with GearmanClient::returnCode() when using GearmanClient::do(). Sent to update the client with data from a running job. A worker uses this when it needs to send updates, send partial results, or flush data during long running jobs.
GEARMAN_WORK_WARNING (integer)
Notice return code obtained with GearmanClient::returnCode() when using GearmanClient::do(). Updates the client with a warning. The behavior is just like GEARMAN_WORK_DATA, but should be treated as a warning instead of normal response data.
GEARMAN_WORK_STATUS (integer)
Notice return code obtained with GearmanClient::returnCode() when using GearmanClient::do(). Sent to update the status of a long running job. Use GearmanClient::doStatus() to obtain the percentage complete of the task.
GEARMAN_WORK_EXCEPTION (integer)
Notice return code obtained with GearmanClient::returnCode() when using GearmanClient::do(). Indicates that a job failed with a given exception.
GEARMAN_WORK_FAIL (integer)
Notice return code obtained with GearmanClient::returnCode() when using GearmanClient::do(). Indicates that the job failed.
GEARMAN_COULD_NOT_CONNECT (integer)
Failed to connect to servers.
GEARMAN_INVALID_FUNCTION_NAME (integer)
Trying to register a function name of NULL or using the callback interface without specifying callbacks.
GEARMAN_INVALID_WORKER_FUNCTION (integer)
Trying to register a function with a NULL callback function.
GEARMAN_NO_REGISTERED_FUNCTIONS (integer)
When a worker gets a job for a function it did not register.
GEARMAN_NO_JOBS (integer)
For a non-blocking worker, when GearmanWorker::work() does not have any active jobs.
GEARMAN_ECHO_DATA_CORRUPTION (integer)
After GearmanClient::echo() or GearmanWorker::echo() the data returned doesn't match the data sent.
GEARMAN_NEED_WORKLOAD_FN (integer)
When the client opted to stream the workload of a task, but did not specify a workload callback function.
GEARMAN_PAUSE (integer)
For the non-blocking client task interface, can be returned from the task callback to "pause" the call and return from GearmanClient::runTasks(). Call GearmanClient::runTasks() again to continue.
GEARMAN_UNKNOWN_STATE (integer)
Internal client/worker state error.
GEARMAN_SEND_BUFFER_TOO_SMALL (integer)
Internal error: trying to flush more data in one atomic chunk than is possible due to hard-coded buffer sizes.
GEARMAN_TIMEOUT (integer)
Hit the timeout limit set by the client/worker.

GearmanClient options:

GEARMAN_CLIENT_NON_BLOCKING (integer)
Run the cient in a non-blocking mode.
GEARMAN_CLIENT_UNBUFFERED_RESULT (integer)
Allow the client to read data in chunks rather than have the library buffer the entire data result and pass that back.
GEARMAN_CLIENT_FREE_TASKS (integer)
Automatically free task objects once they are complete. This is the default setting in this extension to prevent memory leaks.

GearmanWorker options:

GEARMAN_WORKER_NON_BLOCKING (integer)
Run the worker in non-blocking mode.
GEARMAN_WORKER_GRAB_UNIQ (integer)
Return the client assigned unique ID in addition to the job handle.

Base Gearman configuration:

GEARMAN_DEFAULT_TCP_HOST (string)
GEARMAN_DEFAULT_TCP_PORT (integer)
GEARMAN_DEFAULT_SOCKET_TIMEOUT (integer)
GEARMAN_DEFAULT_SOCKET_SEND_SIZE (integer)
GEARMAN_DEFAULT_SOCKET_RECV_SIZE (integer)
GEARMAN_MAX_ERROR_SIZE (integer)
GEARMAN_PACKET_HEADER_SIZE (integer)
GEARMAN_JOB_HANDLE_SIZE (integer)
GEARMAN_OPTION_SIZE (integer)
GEARMAN_UNIQUE_SIZE (integer)
GEARMAN_MAX_COMMAND_ARGS (integer)
GEARMAN_ARGS_BUFFER_SIZE (integer)
GEARMAN_SEND_BUFFER_SIZE (integer)
GEARMAN_RECV_BUFFER_SIZE (integer)
GEARMAN_WORKER_WAIT_TIMEOUT (integer)

Tipos Resource
Exemplos
Gearman


Exemplos

Índice

Constantes pré-definidas
Gearman


Exemplos
Exemplos
PHP Manual

Exemplo #1 Basic Gearman client and worker

This example shows a very simple client and worker. The client sends a string to the job server, and the worker reverses the string and sends it back. The job is performed synchronously.

<?php

# Create our client object.
$gmclient= new GearmanClient();

# Add default server (localhost).
$gmclient->addServer();

echo "Sending job\n";

# Send reverse job
do
{
  $result = $gmclient->do("reverse", "Hello!");

  # Check for various return packets and errors.
  switch($gmclient->returnCode())
  {
    case GEARMAN_WORK_DATA:
      echo "Data: $result\n";
      break;
    case GEARMAN_WORK_STATUS:
      list($numerator, $denominator)= $gmclient->doStatus();
      echo "Status: $numerator/$denominator complete\n";
      break;
    case GEARMAN_WORK_FAIL:
      echo "Failed\n";
      exit;
    case GEARMAN_SUCCESS:
      break;
    default:
      echo "RET: " . $gmclient->returnCode() . "\n";
      exit;
  }
}
while($gmclient->returnCode() != GEARMAN_SUCCESS);

?>
<?php

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server. Change the worker function to
# "reverse_fn_fast" for a faster worker with no output.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  echo "Received job: " . $job->handle() . "\n";

  $workload = $job->workload();
  $workload_size = $job->workloadSize();

  echo "Workload: $workload ($workload_size)\n";

  # This status loop is not needed, just showing how it works
  for ($x= 0; $x < $workload_size; $x++)
  {
    echo "Sending status: " . ($x + 1) . "/$workload_size complete\n";
    $job->sendStatus($x, $workload_size);
    sleep(1);
  }

  $result= strrev($workload);
  echo "Result: $result\n";

  # Return what we want to send back to the client.
  return $result;
}

# A much simpler and less verbose version of the above function would be:
function reverse_fn_fast($job)
{
  return strrev($job->workload());
}

?>

O exemplo acima irá imprimir algo similar a:

% php reverse_worker.php
Starting
Waiting for job...
Received job: H:foo.local:36
Workload: Hello! (6)
Sending status: 1/6 complete
Sending status: 2/6 complete
Sending status: 3/6 complete
Sending status: 4/6 complete
Sending status: 5/6 complete
Sending status: 6/6 complete
Result: !olleH

% php reverse_client.php
Starting
Sending job
Status: 1/6 complete
Status: 2/6 complete
Status: 3/6 complete
Status: 4/6 complete
Status: 5/6 complete
Status: 6/6 complete
Success: !olleH

Exemplos
Exemplos


Exemplos
PHP Manual

Exemplo #1 Basic Gearman client and worker, background

This example shows a very simple client and worker. The client sends a string to the job server as a background job, and the worker reverses the string. Note that since the work is performed asynchronously, the client does not wait for the job to complete and exits (and hence the client never receives the results).

<?php

# create our client object
$gmclient= new GearmanClient();

# add the default server (localhost)
$gmclient->addServer();

# run reverse client in the background
$job_handle = $gmclient->doBackground("reverse", "this is a test");

if ($gmclient->returnCode() != GEARMAN_SUCCESS)
{
  echo "bad return code\n";
  exit;
}

echo "done!\n";

?>
<?php

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server. Change the worker function to
# "reverse_fn_fast" for a faster worker with no output.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  echo "Received job: " . $job->handle() . "\n";

  $workload = $job->workload();
  $workload_size = $job->workloadSize();

  echo "Workload: $workload ($workload_size)\n";

  # This status loop is not needed, just showing how it works
  for ($x= 0; $x < $workload_size; $x++)
  {
    echo "Sending status: " . ($x + 1) . "/$workload_size complete\n";
    $job->sendStatus($x, $workload_size);
    sleep(1);
  }

  $result= strrev($workload);
  echo "Result: $result\n";

  # Return what we want to send back to the client.
  return $result;
}

# A much simpler and less verbose version of the above function would be:
function reverse_fn_fast($job)
{
  return strrev($job->workload());
}

?>

O exemplo acima irá imprimir algo similar a:

% php reverse_worker.php
Starting
Waiting for job...
Received job: H:foo.local:41
Workload: this is a test (14)
1/14 complete
2/14 complete
3/14 complete
4/14 complete
5/14 complete
6/14 complete
7/14 complete
8/14 complete
9/14 complete
10/14 complete
11/14 complete
12/14 complete
13/14 complete
14/14 complete
Result: tset a si siht

% php reverse_client_bg.php
done!

Exemplos


GearmanClient
Exemplos
PHP Manual

Exemplo #1 Basic Gearman client and worker, submitting tasks

In this exmple, the basic reverse client extended to run two tasks in parallel. The reverse worker is unchanged except to add sending of data back during processing.

<?php

# create the gearman client
$gmc= new GearmanClient();

# add the default server (localhost)
$gmc->addServer();

# register some callbacks
$gmc->setCreatedCallback("reverse_created");
$gmc->setDataCallback("reverse_data");
$gmc->setStatusCallback("reverse_status");
$gmc->setCompleteCallback("reverse_complete");
$gmc->setFailCallback("reverse_fail");

# set some arbitrary application data
$data['foo'] = 'bar';

# add two tasks
$task= $gmc->addTask("reverse", "foo", $data);
$task2= $gmc->addTaskLow("reverse", "bar", NULL);

# run the tasks in parallel (assuming multiple workers)
if (! $gmc->runTasks())
{
    echo "ERROR " . $gmc->error() . "\n";
    exit;
}

echo "DONE\n";

function reverse_created($task)
{
    echo "CREATED: " . $task->jobHandle() . "\n";
}

function reverse_status($task)
{
    echo "STATUS: " . $task->jobHandle() . " - " . $task->taskNumerator() .
         "/" . $task->taskDenominator() . "\n";
}

function reverse_complete($task)
{
    echo "COMPLETE: " . $task->jobHandle() . ", " . $task->data() . "\n";
}

function reverse_fail($task)
{
    echo "FAILED: " . $task->jobHandle() . "\n";
}

function reverse_data($task)
{
    echo "DATA: " . $task->data() . "\n";
}

?>
<?php

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server. Change the worker function to
# "reverse_fn_fast" for a faster worker with no output.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  echo "Received job: " . $job->handle() . "\n";

  $workload = $job->workload();
  $workload_size = $job->workloadSize();

  echo "Workload: $workload ($workload_size)\n";

  # This status loop is not needed, just showing how it works
  for ($x= 0; $x < $workload_size; $x++)
  {
    echo "Sending status: " . ($x + 1) . "/$workload_size complete\n";
    $job->sendStatus($x+1, $workload_size);
    $job->sendData(substr($workload, $x, 1));
    sleep(1);
  }

  $result= strrev($workload);
  echo "Result: $result\n";

  # Return what we want to send back to the client.
  return $result;
}

# A much simpler and less verbose version of the above function would be:
function reverse_fn_fast($job)
{
  return strrev($job->workload());
}

?>

O exemplo acima irá imprimir algo similar a:

% php reverse_worker.php
Starting
Waiting for job...
Received job: H:foo.local:45
Workload: foo (3)
1/3 complete
2/3 complete
3/3 complete
Result: oof
Received job: H:foo.local:44
Workload: bar (3)
1/3 complete
2/3 complete
3/3 complete
Result: rab

% php reverse_client_task.php
CREATED: H:foo.local:44
CREATED: H:foo.local:45
STATUS: H:foo.local:45 - 1/3
DATA: f
STATUS: H:foo.local:45 - 2/3
DATA: o
STATUS: H:foo.local:45 - 3/3
DATA: o
COMPLETE: H:foo.local:45, oof
STATUS: H:foo.local:44 - 1/3
DATA: b
STATUS: H:foo.local:44 - 2/3
DATA: a
STATUS: H:foo.local:44 - 3/3
DATA: r
COMPLETE: H:foo.local:44, rab
DONE

GearmanClient
Exemplos


The GearmanClient class

Introdução

Represents a class for connecting to a Gearman job server and making requests to perform some function on provided data. The function performed must be one registerd by a Gearman worker and the data passed is opaque to the job server.

Sinopse da classe

GearmanClient {
/* Methods */
public bool addOptions ( int $options )
public bool addServer ([ string $host = 127.0.0.1 [, int $port = 4730 ]] )
public bool addServers ([ string $servers = 127.0.0.1:4730 ] )
public GearmanTask addTask ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskHigh ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskHighBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskLow ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskLowBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )
public GearmanTask addTaskStatus ( string $job_handle [, string &$context ] )
public bool clearCallbacks ( void )
public GearmanClient clone ( void )
__construct ( void )
public string context ( void )
public string data ( void )
public string do ( string $function_name , string $workload [, string $unique ] )
public string doBackground ( string $function_name , string $workload [, string $unique ] )
public string doHigh ( string $function_name , string $workload [, string $unique ] )
public string doHighBackground ( string $function_name , string $workload [, string $unique ] )
public string doJobHandle ( void )
public string doLow ( string $function_name , string $workload [, string $unique ] )
public string doLowBackground ( string $function_name , string $workload [, string $unique ] )
public array doStatus ( void )
public bool echo ( string $workload )
public string error ( void )
public int getErrno ( void )
public array jobStatus ( string $job_handle )
public bool removeOptions ( int $options )
public int returnCode ( void )
public bool runTasks ( void )
public void setClientCallback ( callback $callback )
public bool setCompleteCallback ( callback $callback )
public bool setContext ( string $context )
public bool setCreatedCallback ( string $callback )
public bool setData ( string $data )
public bool setDataCallback ( callback $callback )
public bool setExceptionCallback ( callback $callback )
public bool setFailCallback ( callback $callback )
public bool setOptions ( int $options )
public bool setStatusCallback ( callback $callback )
public bool setTimeout ( int $timeout )
public bool setWarningCallback ( callback $callback )
public bool setWorkloadCallback ( callback $callback )
public int timeout ( void )
}

Índice

  • GearmanClient::addOptions — Add client options
  • GearmanClient::addServer — Add a job server to the client
  • GearmanClient::addServers — Add a list of job servers to the client
  • GearmanClient::addTask — Add a task to be run in parallel
  • GearmanClient::addTaskBackground — Add a background task to be run in parallel
  • GearmanClient::addTaskHigh — Add a high priority task to run in parallel
  • GearmanClient::addTaskHighBackground — Add a high priority background task to be run in parallel
  • GearmanClient::addTaskLow — Add a low priority task to run in parallel
  • GearmanClient::addTaskLowBackground — Add a low priority background task to be run in parallel
  • GearmanClient::addTaskStatus — Add a task to get status
  • GearmanClient::clearCallbacks — Clear all task callback functions
  • GearmanClient::clone — Create a copy of a GearmanClient object
  • GearmanClient::__construct — Create a GearmanClient instance
  • GearmanClient::context — Get the application context
  • GearmanClient::data — Get the application data (deprecated)
  • GearmanClient::do — Run a single task and return a result
  • GearmanClient::doBackground — Run a task in the background
  • GearmanClient::doHigh — Run a single high priority task
  • GearmanClient::doHighBackground — Run a high priority task in the background
  • GearmanClient::doJobHandle — Get the job handle for the running task
  • GearmanClient::doLow — Run a single low priority task
  • GearmanClient::doLowBackground — Run a low priority task in the background
  • GearmanClient::doStatus — Get the status for the running task
  • GearmanClient::echo — Send data to all job servers to see if they echo it back
  • GearmanClient::error — Returns an error string for the last error encountered.
  • GearmanClient::getErrno — Get an errno value
  • GearmanClient::jobStatus — Get the status of a background job
  • GearmanClient::removeOptions — Remove client options
  • GearmanClient::returnCode — Get the last Gearman return code
  • GearmanClient::runTasks — Run a list of tasks in parallel
  • GearmanClient::setClientCallback — Callback function when there is a data packet for a task (deprecated)
  • GearmanClient::setCompleteCallback — Set a function to be called on task completion
  • GearmanClient::setContext — Set application context
  • GearmanClient::setCreatedCallback — Set a callback for when a task is queued
  • GearmanClient::setData — Set application data (deprecated)
  • GearmanClient::setDataCallback — Callback function when there is a data packet for a task
  • GearmanClient::setExceptionCallback — Set a callback for worker exceptions
  • GearmanClient::setFailCallback — Set callback for job failure
  • GearmanClient::setOptions — Set client options
  • GearmanClient::setStatusCallback — Set a callback for collecting task status
  • GearmanClient::setTimeout — Set socket I/O activity timeout
  • GearmanClient::setWarningCallback — Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback — Set a callback for accepting incremental data updates
  • GearmanClient::timeout — Get current socket I/O activity timeout value
GearmanClient::addOptions
Gearman


Add client options

GearmanClient
GearmanClient::addServer
GearmanClient
PHP Manual

GearmanClient::addOptions

(PECL gearman >= 0.6.0)

GearmanClient::addOptions — Add client options

Descrição

public bool GearmanClient::addOptions ( int $options )

Adds one or more options to those already set.

Parâmetros

options

The options to add

Valor Retornado

Always returns TRUE.

GearmanClient
GearmanClient::addServer
GearmanClient


Add a job server to the client

GearmanClient::addOptions
GearmanClient::addServers
GearmanClient
PHP Manual

GearmanClient::addServer

(PECL gearman >= 0.5.0)

GearmanClient::addServer — Add a job server to the client

Descrição

public bool GearmanClient::addServer ([ string $host = 127.0.0.1 [, int $port = 4730 ]] )

Adds a job server to a list of servers that can be used to run a task. No socket I/O happens here; the server is simply added to the list.

Parâmetros

host

The job server host name.

port

The job server port.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Adding two job servers

<?php

# Create our client object.
$gmclient= new GearmanClient();

# Add two job servers, the first on the default 4730 port
$gmclient->addServer("10.0.0.1");
$gmclient->addServer("10.0.0.2", 7003);

?>

Veja Também

  • GearmanClient::addServers() - Add a list of job servers to the client

GearmanClient::addOptions
GearmanClient::addServers
GearmanClient


Add a list of job servers to the client

GearmanClient::addServer
GearmanClient::addTask
GearmanClient
PHP Manual

GearmanClient::addServers

(PECL gearman >= 0.5.0)

GearmanClient::addServers — Add a list of job servers to the client

Descrição

public bool GearmanClient::addServers ([ string $servers = 127.0.0.1:4730 ] )

Adds a list of job servers that can be used to run a task. No socket I/O happens here; the servers are simply added to the full list of servers.

Parâmetros

servers

A comma-separated list of servers, each server specified in the format 'host:port'.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Add two job servers

<?php

# Create our client object.
$gmclient= new GearmanClient();

# Add multiple job servers, the first on the default 4730 port
$gmclient->addServers("10.0.0.1,10.0.0.2:7003");

?>

Veja Também

  • GearmanClient::addServer() - Add a job server to the client

GearmanClient::addServer
GearmanClient::addTask
GearmanClient


Add a task to be run in parallel

GearmanClient::addServers
GearmanClient::addTaskBackground
GearmanClient
PHP Manual

GearmanClient::addTask

(PECL gearman >= 0.5.0)

GearmanClient::addTask — Add a task to be run in parallel

Descrição

public GearmanTask GearmanClient::addTask ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a task to be run in parallel with other tasks. Call this method for all the tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work. Note that enough workers need to be available for the tasks to all run in parallel.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Exemplos

Exemplo #1 Basic submission of two tasks

<?php

# Create our gearman client
$gmclient= new GearmanClient();

# add the default job server
$gmclient->addServer();

# add a task to perform the "reverse" function on the string "Hello World!"
$gmclient->addTask("reverse", "Hello World!", null, "1");

# add another task to perform the "reverse" function on the string "!dlroW olleH"
$gmclient->addTask("reverse", "!dlroW olleH", null, "2");

# set a function to be called when the work is complete
$gmclient->setCompleteCallback("complete");

# run the tasks
$gmclient->runTasks();

function complete($task)
{
  print "COMPLETE: " . $task->unique() . ", " . $task->data() . "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

COMPLETE: 2, Hello World!
COMPLETE: 1, !dlroW olleH

Exemplo #2 Basic submission of two tasks with passing application context

<?php

$client = new GearmanClient();
$client->addServer();

# Add some tasks for a placeholder of where to put the results
$results = array();
$client->addTask("reverse", "Hello World!", &$results, "t1");
$client->addTask("reverse", "!dlroW olleH", &$results, "t2");

$client->setCompleteCallback("reverse_complete");
$client->runTasks();

# The results should now be filled in from the callbacks
foreach ($results as $id => $result)
   echo $id . ": " . $result['handle'] . ", " . $result['data'] . "\n";

function reverse_complete($task, $results)
{
   $results[$task->unique()] = array("handle"=>$task->jobHandle(), "data"=>$task->data());
}

?>

O exemplo acima irá imprimir algo similar a:

t2: H.foo:21, Hello World!
t1: H:foo:22, !dlroW olleH

Veja Também

  • GearmanClient::addTaskHigh() - Add a high priority task to run in parallel
  • GearmanClient::addTaskLow() - Add a low priority task to run in parallel
  • GearmanClient::addTaskBackground() - Add a background task to be run in parallel
  • GearmanClient::addTaskHighBackground() - Add a high priority background task to be run in parallel
  • GearmanClient::addTaskLowBackground() - Add a low priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addServers
GearmanClient::addTaskBackground
GearmanClient


Add a background task to be run in parallel

GearmanClient::addTask
GearmanClient::addTaskHigh
GearmanClient
PHP Manual

GearmanClient::addTaskBackground

(PECL gearman >= 0.5.0)

GearmanClient::addTaskBackground — Add a background task to be run in parallel

Descrição

public GearmanTask GearmanClient::addTaskBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a background task to be run in parallel with other tasks. Call this method for all the tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Exemplos

Exemplo #1 Two tasks, one background and one not

This example illustrates the difference between running a background task and a normal task. The client adds two tasks to execute the same function, but one is added with addTaskBackground(). A callback is set so that progress of the job can be tracked. A simple worker with an artificial delay reports on the job progress and the client picks this up through the callback. Two workers are run for this example. Note that the background task does not show in the client output.

<?php

# The client script

# create our gearman client
$gmc= new GearmanClient();

# add the default job server
$gmc->addServer();

# set a couple of callbacks so we can track progress
$gmc->setCompleteCallback("reverse_complete");
$gmc->setStatusCallback("reverse_status");

# add a task for the "reverse" function
$task= $gmc->addTask("reverse", "Hello World!", null, "1");

# add another task, but this one to run in the background
$task= $gmc->addTaskBackground("reverse", "!dlroW olleH", null, "2");

if (! $gmc->runTasks())
{
    echo "ERROR " . $gmc->error() . "\n";
    exit;
}

echo "DONE\n";

function reverse_status($task)
{
    echo "STATUS: " . $task->unique() . ", " . $task->jobHandle() . " - " . $task->taskNumerator() .
         "/" . $task->taskDenominator() . "\n";
}

function reverse_complete($task)
{
    echo "COMPLETE: " . $task->unique() . ", " . $task->data() . "\n";
}

?>
<?php

# The worker script

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  echo "Received job: " . $job->handle() . "\n";

  $workload = $job->workload();
  $workload_size = $job->workloadSize();

  echo "Workload: $workload ($workload_size)\n";

  # This status loop is not needed, just showing how it works
  for ($x= 0; $x < $workload_size; $x++)
  {
    echo "Sending status: " . ($x + 1) . "/$workload_size complete\n";
    $job->sendStatus($x+1, $workload_size);
    $job->sendData(substr($workload, $x, 1));
    sleep(1);
  }

  $result= strrev($workload);
  echo "Result: $result\n";

  # Return what we want to send back to the client.
  return $result;
}

?>

Worker output for two workers running:

Received job: H:foo.local:65
Workload: !dlroW olleH (12)
1/12 complete
Received job: H:foo.local:66
Workload: Hello World! (12)
1/12 complete
2/12 complete
2/12 complete
3/12 complete
3/12 complete
4/12 complete
4/12 complete
5/12 complete
5/12 complete
6/12 complete
6/12 complete
7/12 complete
7/12 complete
8/12 complete
8/12 complete
9/12 complete
9/12 complete
10/12 complete
10/12 complete
11/12 complete
11/12 complete
12/12 complete
12/12 complete
Result: !dlroW olleH
Result: Hello World!

Client output:

STATUS: 1, H:foo.local:66 - 1/12
STATUS: 1, H:foo.local:66 - 2/12
STATUS: 1, H:foo.local:66 - 3/12
STATUS: 1, H:foo.local:66 - 4/12
STATUS: 1, H:foo.local:66 - 5/12
STATUS: 1, H:foo.local:66 - 6/12
STATUS: 1, H:foo.local:66 - 7/12
STATUS: 1, H:foo.local:66 - 8/12
STATUS: 1, H:foo.local:66 - 9/12
STATUS: 1, H:foo.local:66 - 10/12
STATUS: 1, H:foo.local:66 - 11/12
STATUS: 1, H:foo.local:66 - 12/12
COMPLETE: 1, !dlroW olleH
DONE

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel
  • GearmanClient::addTaskHigh() - Add a high priority task to run in parallel
  • GearmanClient::addTaskLow() - Add a low priority task to run in parallel
  • GearmanClient::addTaskHighBackground() - Add a high priority background task to be run in parallel
  • GearmanClient::addTaskLowBackground() - Add a low priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addTask
GearmanClient::addTaskHigh
GearmanClient


Add a high priority task to run in parallel

GearmanClient::addTaskBackground
GearmanClient::addTaskHighBackground
GearmanClient
PHP Manual

GearmanClient::addTaskHigh

(PECL gearman >= 0.5.0)

GearmanClient::addTaskHigh — Add a high priority task to run in parallel

Descrição

public GearmanTask GearmanClient::addTaskHigh ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a high priority task to be run in parallel with other tasks. Call this method for all the high priority tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work. Tasks with a high priority will be selected from the queue before those of normal or low priority.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Exemplos

Exemplo #1 A high priority task along with two normal tasks

A high priority task is included among two other tasks. A single worker is available, so that tasks are run one at a time, with the high priority task run first.

<?php

# create the gearman client
$gmc= new GearmanClient();

# add the default job server
$gmc->addServer();

# set the callback for when the job is complete
$gmc->setCompleteCallback("reverse_complete");

# add tasks, one of which is high priority
$task= $gmc->addTask("reverse", "Hello World!", null, "1");
$task= $gmc->addTaskHigh("reverse", "!dlroW olleH", null, "2");
$task= $gmc->addTask("reverse", "Hello World!", null, "3");

if (! $gmc->runTasks())
{
    echo "ERROR " . $gmc->error() . "\n";
    exit;
}
echo "DONE\n";

function reverse_complete($task)
{
    echo "COMPLETE: " . $task->unique() . ", " . $task->data() . "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

COMPLETE: 2, Hello World!
COMPLETE: 3, !dlroW olleH
COMPLETE: 1, !dlroW olleH
DONE

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel
  • GearmanClient::addTaskLow() - Add a low priority task to run in parallel
  • GearmanClient::addTaskBackground() - Add a background task to be run in parallel
  • GearmanClient::addTaskHighBackground() - Add a high priority background task to be run in parallel
  • GearmanClient::addTaskLowBackground() - Add a low priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addTaskBackground
GearmanClient::addTaskHighBackground
GearmanClient


Add a high priority background task to be run in parallel

GearmanClient::addTaskHigh
GearmanClient::addTaskLow
GearmanClient
PHP Manual

GearmanClient::addTaskHighBackground

(PECL gearman >= 0.5.0)

GearmanClient::addTaskHighBackground — Add a high priority background task to be run in parallel

Descrição

public GearmanTask GearmanClient::addTaskHighBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a high priority background task to be run in parallel with other tasks. Call this method for all the tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work. Tasks with a high priority will be selected from the queue before those of normal or low priority.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel
  • GearmanClient::addTaskHigh() - Add a high priority task to run in parallel
  • GearmanClient::addTaskLow() - Add a low priority task to run in parallel
  • GearmanClient::addTaskBackground() - Add a background task to be run in parallel
  • GearmanClient::addTaskLowBackground() - Add a low priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addTaskHigh
GearmanClient::addTaskLow
GearmanClient


Add a low priority task to run in parallel

GearmanClient::addTaskHighBackground
GearmanClient::addTaskLowBackground
GearmanClient
PHP Manual

GearmanClient::addTaskLow

(PECL gearman >= 0.5.0)

GearmanClient::addTaskLow — Add a low priority task to run in parallel

Descrição

public GearmanTask GearmanClient::addTaskLow ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a low priority background task to be run in parallel with other tasks. Call this method for all the tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work. Tasks with a low priority will be selected from the queue after those of normal or low priority.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Exemplos

Exemplo #1 A low priority task along with two normal tasks

A low priority task is included among two other tasks. A single worker is available, so that tasks are run one at a time, with the low priority task run last.

<?php

# create the gearman client
$gmc= new GearmanClient();

# add the default job server
$gmc->addServer();

# set the callback for when the job is complete
$gmc->setCompleteCallback("reverse_complete");

# add tasks, one of which is low priority
$task= $gmc->addTask("reverse", "Hello World!", null, "1");
$task= $gmc->addTaskLow("reverse", "!dlroW olleH", null, "2");
$task= $gmc->addTask("reverse", "Hello World!", null, "3");

if (! $gmc->runTasks())
{
    echo "ERROR " . $gmc->error() . "\n";
    exit;
}
echo "DONE\n";

function reverse_complete($task)
{
    echo "COMPLETE: " . $task->unique() . ", " . $task->data() . "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

COMPLETE: 3, !dlroW olleH
COMPLETE: 1, !dlroW olleH
COMPLETE: 2, Hello World!
DONE

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel
  • GearmanClient::addTaskHigh() - Add a high priority task to run in parallel
  • GearmanClient::addTaskBackground() - Add a background task to be run in parallel
  • GearmanClient::addTaskHighBackground() - Add a high priority background task to be run in parallel
  • GearmanClient::addTaskLowBackground() - Add a low priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addTaskHighBackground
GearmanClient::addTaskLowBackground
GearmanClient


Add a low priority background task to be run in parallel

GearmanClient::addTaskLow
GearmanClient::addTaskStatus
GearmanClient
PHP Manual

GearmanClient::addTaskLowBackground

(PECL gearman >= 0.5.0)

GearmanClient::addTaskLowBackground — Add a low priority background task to be run in parallel

Descrição

public GearmanTask GearmanClient::addTaskLowBackground ( string $function_name , string $workload [, mixed &$context [, string $unique ]] )

Adds a low priority background task to be run in parallel with other tasks. Call this method for all the tasks to be run in parallel, then call GearmanClient::runTasks() to perform the work. Tasks with a low priority will be selected from the queue after those of normal or high priority.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

context

Application context to associate with a task

unique

A unique ID used to identify a particular task

Valor Retornado

A GearmanTask object or FALSE if the task could not be added.

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel
  • GearmanClient::addTaskHigh() - Add a high priority task to run in parallel
  • GearmanClient::addTaskLow() - Add a low priority task to run in parallel
  • GearmanClient::addTaskBackground() - Add a background task to be run in parallel
  • GearmanClient::addTaskHighBackground() - Add a high priority background task to be run in parallel
  • GearmanClient::runTasks() - Run a list of tasks in parallel

GearmanClient::addTaskLow
GearmanClient::addTaskStatus
GearmanClient


Add a task to get status

GearmanClient::addTaskLowBackground
GearmanClient::clearCallbacks
GearmanClient
PHP Manual

GearmanClient::addTaskStatus

(PECL gearman >= 0.5.0)

GearmanClient::addTaskStatus — Add a task to get status

Descrição

public GearmanTask GearmanClient::addTaskStatus ( string $job_handle [, string &$context ] )

Used to request status information from the Gearman server, which will call the specified status callback (set using GearmanClient::setStatusCallback()).

Parâmetros

job_handle

The job handle for the task to get status for

context

Data to be passed to the status callback, generally a reference to an array or object

Valor Retornado

A GearmanTask object.

Exemplos

Exemplo #1 Monitor completion of multiple background tasks

An artificial delay is introduced in the worker in this example to simulate a long running process. There is only one worker running for this example.

<?php

/* create our object */
$gmclient= new GearmanClient();

/* add the default server */
$gmclient->addServer();

/* start some background jobs and save the handles */
$handles = array();
$handles[0] = $gmclient->doBackground("reverse", "Hello World!");
$handles[1] = $gmclient->doBackground("reverse", "!dlroW olleH");

$gmclient->setStatusCallback("reverse_status");

/* Poll the server to see when those background jobs finish; */
/* a better method would be to use event callbacks */
do
{
   /* Use the context variable to track how many tasks have completed */
   $done = 0;
   $gmclient->addTaskStatus($handles[0], &$done);
   $gmclient->addTaskStatus($handles[1], &$done);
   $gmclient->runTasks();
   echo "Done: $done\n";
   sleep(1);
}
while ($done != 2);

function reverse_status($task, $done)
{
   if (!$task->isKnown())
      $done++;
}

?>

O exemplo acima irá imprimir algo similar a:

Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 0
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 1
Done: 2

Veja Também

  • GearmanClient::setStatusCallback() - Set a callback for collecting task status

GearmanClient::addTaskLowBackground
GearmanClient::clearCallbacks
GearmanClient


Clear all task callback functions

GearmanClient::addTaskStatus
GearmanClient::clone
GearmanClient
PHP Manual

GearmanClient::clearCallbacks

(PECL gearman >= 0.5.0)

GearmanClient::clearCallbacks — Clear all task callback functions

Descrição

public bool GearmanClient::clearCallbacks ( void )

Clears all the task callback functions that have previously been set.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::addTaskStatus
GearmanClient::clone
GearmanClient


Create a copy of a GearmanClient object

GearmanClient::clearCallbacks
GearmanClient::__construct
GearmanClient
PHP Manual

GearmanClient::clone

(PECL gearman >= 0.5.0)

GearmanClient::clone — Create a copy of a GearmanClient object

Descrição

public GearmanClient GearmanClient::clone ( void )

Creates a copy of a GearmanClient object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanClient on success, FALSE on failure.

GearmanClient::clearCallbacks
GearmanClient::__construct
GearmanClient


Create a GearmanClient instance

GearmanClient::clone
GearmanClient::context
GearmanClient
PHP Manual

GearmanClient::__construct

(PECL gearman >= 0.5.0)

GearmanClient::__construct — Create a GearmanClient instance

Descrição

GearmanClient::__construct ( void )

Creates a GearmanClient instance representing a client that connects to the job server and submits tasks to complete.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanClient object.

Veja Também

  • GearmanClient::clone() - Create a copy of a GearmanClient object

GearmanClient::clone
GearmanClient::context
GearmanClient


Get the application context

GearmanClient::__construct
GearmanClient::data
GearmanClient
PHP Manual

GearmanClient::context

(PECL gearman >= 0.6.0)

GearmanClient::context — Get the application context

Descrição

public string GearmanClient::context ( void )

Get the application context previously set with GearmanClient::setContext().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The same context data structure set with GearmanClient::setContext()

Veja Também

  • GearmanClient::setContext() - Set application context

GearmanClient::__construct
GearmanClient::data
GearmanClient


Get the application data (deprecated)

GearmanClient::context
GearmanClient::do
GearmanClient
PHP Manual

GearmanClient::data

(PECL gearman <= 0.5.0)

GearmanClient::data — Get the application data (deprecated)

Descrição

public string GearmanClient::data ( void )

Get the application data previously set with GearmanClient::setData().

Nota:

This method was replaced by GearmanClient::setContext() in the 0.6.0 release of the Gearman extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The same string data set with GearmanClient::setData()

Veja Também

  • GearmanClient::setData() - Set application data (deprecated)

GearmanClient::context
GearmanClient::do
GearmanClient


Run a single task and return a result

GearmanClient::data
GearmanClient::doBackground
GearmanClient
PHP Manual

GearmanClient::do

(PECL gearman >= 0.5.0)

GearmanClient::do — Run a single task and return a result

Descrição

public string GearmanClient::do ( string $function_name , string $workload [, string $unique ] )

Runs a single task and returns a string representation of the result. It is up to the GearmanClient and GearmanWorker to agree on the format of the result.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

A string representing the results of running a task.

Exemplos

Exemplo #1 Simple job submission with immediate return

<?php

# Client code

echo "Starting\n";

# Create our client object.
$gmclient= new GearmanClient();

# Add default server (localhost).
$gmclient->addServer();

echo "Sending job\n";

$result = $gmclient->do("reverse", "Hello!");

echo "Success: $result\n";

?>
<?php

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server. Change the worker function to
# "reverse_fn_fast" for a faster worker with no output.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  return strrev($job->workload());
}

?>

O exemplo acima irá imprimir algo similar a:

Starting
Sending job
Success: !olleH

Exemplo #2 Submitting a job and retrieving incremental status

A job is submitted and the script loops to retrieve status information. The worker has an artificial delay which results in a long running job and sends status and data as processing occurs. Each subsequent call to GearmanClient::do() produces status information on the running job.

<?php

# Client code

# Create our client object.
$gmclient= new GearmanClient();

# Add default server (localhost).
$gmclient->addServer();

echo "Sending job\n";

# Send reverse job
do
{
  $result = $gmclient->do("reverse", "Hello!");
  # Check for various return packets and errors.

  switch($gmclient->returnCode())
  {
    case GEARMAN_WORK_DATA:
      echo "Data: $result\n";
      break;
    case GEARMAN_WORK_STATUS:
      list($numerator, $denominator)= $gmclient->doStatus();
      echo "Status: $numerator/$denominator complete\n";
      break;
    case GEARMAN_WORK_FAIL:
      echo "Failed\n";
      exit;
    case GEARMAN_SUCCESS:
      break;
    default:
      echo "RET: " . $gmclient->returnCode() . "\n";
      echo "Error: " . $gmclient->error() . "\n";
      echo "Errno: " . $gmclient->getErrno() . "\n";
      exit;
  }
}
while($gmclient->returnCode() != GEARMAN_SUCCESS);

echo "Success: $result\n";

?>
<?php

# Worker code

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server.
$gmworker->addFunction("reverse", "reverse_fn");

print "Waiting for job...\n";
while($gmworker->work())
{
  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

function reverse_fn($job)
{
  echo "Received job: " . $job->handle() . "\n";

  $workload = $job->workload();
  $workload_size = $job->workloadSize();

  echo "Workload: $workload ($workload_size)\n";

  # This status loop is not needed, just showing how it works
  for ($x= 0; $x < $workload_size; $x++)
  {
    echo "Sending status: " + $x + 1 . "/$workload_size complete\n";
    $job->sendStatus($x+1, $workload_size);
    $job->sendData(substr($workload, $x, 1));
    sleep(1);
  }

  $result= strrev($workload);
  echo "Result: $result\n";

  # Return what we want to send back to the client.
  return $result;
}

?>

O exemplo acima irá imprimir algo similar a:

Worker output:

Starting
Waiting for job...
Received job: H:foo.local:106
Workload: Hello! (6)
1/6 complete
2/6 complete
3/6 complete
4/6 complete
5/6 complete
6/6 complete
Result: !olleH

Client output:

Starting
Sending job
Status: 1/6 complete
Data: H
Status: 2/6 complete
Data: e
Status: 3/6 complete
Data: l
Status: 4/6 complete
Data: l
Status: 5/6 complete
Data: o
Status: 6/6 complete
Data: !
Success: !olleH

Veja Também

  • GearmanClient::doHigh() - Run a single high priority task
  • GearmanClient::doLow() - Run a single low priority task
  • GearmanClient::doBackground() - Run a task in the background
  • GearmanClient::doHighBackground() - Run a high priority task in the background
  • GearmanClient::doLowBackground() - Run a low priority task in the background

GearmanClient::data
GearmanClient::doBackground
GearmanClient


Run a task in the background

GearmanClient::do
GearmanClient::doHigh
GearmanClient
PHP Manual

GearmanClient::doBackground

(PECL gearman >= 0.5.0)

GearmanClient::doBackground — Run a task in the background

Descrição

public string GearmanClient::doBackground ( string $function_name , string $workload [, string $unique ] )

Runs a task in the background, returning a job handle which can be used to get the status of the running task.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

The job handle for the submitted task.

Exemplos

Exemplo #1 Submit and monitor a background job

The worker in this example has an artificial delay introduced to mimic a long running job. The client script periodically checks the status of the running job.

<?php

/* create our object */
$gmclient= new GearmanClient();

/* add the default server */
$gmclient->addServer();

/* run reverse client */
$job_handle = $gmclient->doBackground("reverse", "this is a test");

if ($gmclient->returnCode() != GEARMAN_SUCCESS)
{
  echo "bad return code\n";
  exit;
}

$done = false;
do
{
   sleep(3);
   $stat = $gmclient->jobStatus($job_handle);
   if (!$stat[0]) // the job is known so it is not done
      $done = true;
   echo "Running: " . ($stat[1] ? "true" : "false") . ", numerator: " . $stat[2] . ", denomintor: " . $stat[3] . "\n";
}
while(!$done);

echo "done!\n";

?>

O exemplo acima irá imprimir algo similar a:

Running: true, numerator: 3, denomintor: 14
Running: true, numerator: 6, denomintor: 14
Running: true, numerator: 9, denomintor: 14
Running: true, numerator: 12, denomintor: 14
Running: false, numerator: 0, denomintor: 0
done!

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::doHigh() - Run a single high priority task
  • GearmanClient::doLow() - Run a single low priority task
  • GearmanClient::doHighBackground() - Run a high priority task in the background
  • GearmanClient::doLowBackground() - Run a low priority task in the background

GearmanClient::do
GearmanClient::doHigh
GearmanClient


Run a single high priority task

GearmanClient::doBackground
GearmanClient::doHighBackground
GearmanClient
PHP Manual

GearmanClient::doHigh

(PECL gearman >= 0.5.0)

GearmanClient::doHigh — Run a single high priority task

Descrição

public string GearmanClient::doHigh ( string $function_name , string $workload [, string $unique ] )

Runs a single high priority task and returns a string representation of the result. It is up to the GearmanClient and GearmanWorker to agree on the format of the result. High priority tasks will get precedence over normal and low priority tasks in the job queue.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

A string representing the results of running a task.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::doLow() - Run a single low priority task
  • GearmanClient::doBackground() - Run a task in the background
  • GearmanClient::doHighBackground() - Run a high priority task in the background
  • GearmanClient::doLowBackground() - Run a low priority task in the background

GearmanClient::doBackground
GearmanClient::doHighBackground
GearmanClient


Run a high priority task in the background

GearmanClient::doHigh
GearmanClient::doJobHandle
GearmanClient
PHP Manual

GearmanClient::doHighBackground

(PECL gearman >= 0.5.0)

GearmanClient::doHighBackground — Run a high priority task in the background

Descrição

public string GearmanClient::doHighBackground ( string $function_name , string $workload [, string $unique ] )

Runs a high priority task in the background, returning a job handle which can be used to get the status of the running task. High priority tasks take precedence over normal and low priority tasks in the job queue.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

The job handle for the submitted task.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::doHigh() - Run a single high priority task
  • GearmanClient::doLow() - Run a single low priority task
  • GearmanClient::doBackground() - Run a task in the background
  • GearmanClient::doLowBackground() - Run a low priority task in the background

GearmanClient::doHigh
GearmanClient::doJobHandle
GearmanClient


Get the job handle for the running task

GearmanClient::doHighBackground
GearmanClient::doLow
GearmanClient
PHP Manual

GearmanClient::doJobHandle

(PECL gearman >= 0.5.0)

GearmanClient::doJobHandle — Get the job handle for the running task

Descrição

public string GearmanClient::doJobHandle ( void )

Gets that job handle for a running task. This should be used between repeated GearmanClient::do() calls. The job handle can then be used to get information on the task.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The job handle for the running task.

Veja Também

  • GearmanClient::jobStatus() - Get the status of a background job

GearmanClient::doHighBackground
GearmanClient::doLow
GearmanClient


Run a single low priority task

GearmanClient::doJobHandle
GearmanClient::doLowBackground
GearmanClient
PHP Manual

GearmanClient::doLow

(PECL gearman >= 0.5.0)

GearmanClient::doLow — Run a single low priority task

Descrição

public string GearmanClient::doLow ( string $function_name , string $workload [, string $unique ] )

Runs a single low priority task and returns a string representation of the result. It is up to the GearmanClient and GearmanWorker to agree on the format of the result. Normal and high priority tasks will get precedence over low priority tasks in the job queue.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

A string representing the results of running a task.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::doHigh() - Run a single high priority task
  • GearmanClient::doBackground() - Run a task in the background
  • GearmanClient::doHighBackground() - Run a high priority task in the background
  • GearmanClient::doLowBackground() - Run a low priority task in the background

GearmanClient::doJobHandle
GearmanClient::doLowBackground
GearmanClient


Run a low priority task in the background

GearmanClient::doLow
GearmanClient::doStatus
GearmanClient
PHP Manual

GearmanClient::doLowBackground

(PECL gearman >= 0.5.0)

GearmanClient::doLowBackground — Run a low priority task in the background

Descrição

public string GearmanClient::doLowBackground ( string $function_name , string $workload [, string $unique ] )

Runs a low priority task in the background, returning a job handle which can be used to get the status of the running task. Normal and high priority tasks take precedence over low priority tasks in the job queue.

Parâmetros

function_name

A registered function the worker is to execute

workload

Serialized data to be processed

unique

A unique ID used to identify a particular task

Valor Retornado

The job handle for the submitted task.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::doHigh() - Run a single high priority task
  • GearmanClient::doLow() - Run a single low priority task
  • GearmanClient::doBackground() - Run a task in the background
  • GearmanClient::doHighBackground() - Run a high priority task in the background

GearmanClient::doLow
GearmanClient::doStatus
GearmanClient


Get the status for the running task

GearmanClient::doLowBackground
GearmanClient::echo
GearmanClient
PHP Manual

GearmanClient::doStatus

(PECL gearman >= 0.5.0)

GearmanClient::doStatus — Get the status for the running task

Descrição

public array GearmanClient::doStatus ( void )

Returns the status for the running task. This should be used between repeated GearmanClient::do() calls.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array representing the percentage completion given as a fraction, with the first element the numerator and the second element the denomintor.

Exemplos

Exemplo #1 Get the status of a long running job

The worker in this example has an artificial delay added during processing of the string to be reversed. After each delay it calls GearmanJob::status() which the client then picks up.

<?php

echo "Starting\n";

# Create our client object.
$gmclient= new GearmanClient();

# Add default server (localhost).
$gmclient->addServer();

echo "Sending job\n";

# Send reverse job
do
{
  $result = $gmclient->do("reverse", "Hello!");

  # Check for various return packets and errors.
  switch($gmclient->returnCode())
  {
    case GEARMAN_WORK_DATA:
      break;
    case GEARMAN_WORK_STATUS:
      # get the current job status
      list($numerator, $denominator)= $gmclient->doStatus();
      echo "Status: $numerator/$denominator complete\n";
      break;
    case GEARMAN_WORK_FAIL:
      echo "Failed\n";
      exit;
    case GEARMAN_SUCCESS:
      break;
    default:
      echo "RET: " . $gmclient->returnCode() . "\n";
      exit;
  }
}
while($gmclient->returnCode() != GEARMAN_SUCCESS);

echo "Success: $result\n";

?>

O exemplo acima irá imprimir algo similar a:

Starting
Sending job
Status: 1/6 complete
Status: 2/6 complete
Status: 3/6 complete
Status: 4/6 complete
Status: 5/6 complete
Status: 6/6 complete
Success: !olleH

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanJob::status() - Send status (deprecated)

GearmanClient::doLowBackground
GearmanClient::echo
GearmanClient


Send data to all job servers to see if they echo it back

GearmanClient::doStatus
GearmanClient::error
GearmanClient
PHP Manual

GearmanClient::echo

(PECL gearman >= 0.5.0)

GearmanClient::echo — Send data to all job servers to see if they echo it back

Descrição

public bool GearmanClient::echo ( string $workload )

Sends some arbitrary data to all job servers to see if they echo it back. The data sent is not used or processed in any other way. Primarily used for testing and debugging.

Parâmetros

workload

Some arbitrary serialized data to be echo back

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

GearmanClient::doStatus
GearmanClient::error
GearmanClient


Returns an error string for the last error encountered.

GearmanClient::echo
GearmanClient::getErrno
GearmanClient
PHP Manual

GearmanClient::error

(PECL gearman >= 0.5.0)

GearmanClient::error — Returns an error string for the last error encountered.

Descrição

public string GearmanClient::error ( void )

Returns an error string for the last error encountered.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A human readable error string.

Veja Também

  • GearmanClient::getErrno() - Get an errno value

GearmanClient::echo
GearmanClient::getErrno
GearmanClient


Get an errno value

GearmanClient::error
GearmanClient::jobStatus
GearmanClient
PHP Manual

GearmanClient::getErrno

(PECL gearman >= 0.5.0)

GearmanClient::getErrno — Get an errno value

Descrição

public int GearmanClient::getErrno ( void )

Value of errno in the case of a GEARMAN_ERRNO return value.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid Gearman errno.

Veja Também

  • GearmanClient::error() - Returns an error string for the last error encountered.

GearmanClient::error
GearmanClient::jobStatus
GearmanClient


Get the status of a background job

GearmanClient::getErrno
GearmanClient::removeOptions
GearmanClient
PHP Manual

GearmanClient::jobStatus

gearman_job_status

(PECL gearman >= 0.5.0)

GearmanClient::jobStatus -- gearman_job_status — Get the status of a background job

Descrição

Object oriented style (method):

public array GearmanClient::jobStatus ( string $job_handle )

Gets the status for a background job given a job handle. The status information will specify whether the job is known, whether the job is currently running, and the percentage completion.

Parâmetros

job_handle

The job handle assigned by the Gearman server

Valor Retornado

An array containing status information for the job corresponding to the supplied job handle. The first array element is a boolean indicating whether the job is even known, the second is a boolean indicating whether the job is still running, and the third and fourth elements correspond to the numerator and denominator of the fractional completion percentage, respectively.

Exemplos

Exemplo #1 Monitor the status of a long running background job

<?php

/* create our object */
$gmclient= new GearmanClient();

/* add the default server */
$gmclient->addServer();

/* run reverse client */
$job_handle = $gmclient->doBackground("reverse", "this is a test");

if ($gmclient->returnCode() != GEARMAN_SUCCESS)
{
  echo "bad return code\n";
  exit;
}

$done = false;
do
{
   sleep(3);
   $stat = $gmclient->jobStatus($job_handle);
   if (!$stat[0]) // the job is known so it is not done
      $done = true;
   echo "Running: " . ($stat[1] ? "true" : "false") . ", numerator: " . $stat[2] . ", denomintor: " . $stat[3] . "\n";
}
while(!$done);

echo "done!\n";

?>

O exemplo acima irá imprimir algo similar a:

Running: true, numerator: 3, denomintor: 14
Running: true, numerator: 6, denomintor: 14
Running: true, numerator: 9, denomintor: 14
Running: true, numerator: 12, denomintor: 14
Running: false, numerator: 0, denomintor: 0
done!

Veja Também

  • GearmanClient::doStatus() - Get the status for the running task

GearmanClient::getErrno
GearmanClient::removeOptions
GearmanClient


Remove client options

GearmanClient::jobStatus
GearmanClient::returnCode
GearmanClient
PHP Manual

GearmanClient::removeOptions

(PECL gearman >= 0.6.0)

GearmanClient::removeOptions — Remove client options

Descrição

public bool GearmanClient::removeOptions ( int $options )

Removes (unsets) one or more options.

Parâmetros

options

The options to be removed (unset)

Valor Retornado

Always returns TRUE.

GearmanClient::jobStatus
GearmanClient::returnCode
GearmanClient


Get the last Gearman return code

GearmanClient::removeOptions
GearmanClient::runTasks
GearmanClient
PHP Manual

GearmanClient::returnCode

(PECL gearman >= 0.5.0)

GearmanClient::returnCode — Get the last Gearman return code

Descrição

public int GearmanClient::returnCode ( void )

Returns the last Gearman return code.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid Gearman return code.

GearmanClient::removeOptions
GearmanClient::runTasks
GearmanClient


Run a list of tasks in parallel

GearmanClient::returnCode
GearmanClient::setClientCallback
GearmanClient
PHP Manual

GearmanClient::runTasks

(PECL gearman >= 0.5.0)

GearmanClient::runTasks — Run a list of tasks in parallel

Descrição

public bool GearmanClient::runTasks ( void )

For a set of tasks previously added with GearmanClient::addTask(), GearmanClient::addTaskHigh(), GearmanClient::addTaskLow(), GearmanClient::addTaskBackground(), GearmanClient::addTaskHighBackground(), or GearmanClient::addTaskLowBackground(), this call starts running the tasks in parallel.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::addTask() - Add a task to be run in parallel

GearmanClient::returnCode
GearmanClient::setClientCallback
GearmanClient


Callback function when there is a data packet for a task (deprecated)

GearmanClient::runTasks
GearmanClient::setCompleteCallback
GearmanClient
PHP Manual

GearmanClient::setClientCallback

(PECL gearman <= 0.5.0)

GearmanClient::setClientCallback — Callback function when there is a data packet for a task (deprecated)

Descrição

public void GearmanClient::setClientCallback ( callback $callback )

Sets the callback function for accepting data packets for a task. The callback function should take a single argument, a GearmanTask object.

Nota:

This method has been replaced by GearmanClient::setDataCallback() in the 0.6.0 release of the Gearman extension.

Parâmetros

callback

A function or method to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::runTasks
GearmanClient::setCompleteCallback
GearmanClient


Set a function to be called on task completion

GearmanClient::setClientCallback
GearmanClient::setContext
GearmanClient
PHP Manual

GearmanClient::setCompleteCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCompleteCallback — Set a function to be called on task completion

Descrição

public bool GearmanClient::setCompleteCallback ( callback $callback )

Use to set a function to be called when a task is completed. The callback function should accept a single argument, a GearmanTask oject.

Parâmetros

callback

A function to be called

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setClientCallback
GearmanClient::setContext
GearmanClient


Set application context

GearmanClient::setCompleteCallback
GearmanClient::setCreatedCallback
GearmanClient
PHP Manual

GearmanClient::setContext

(PECL gearman >= 0.6.0)

GearmanClient::setContext — Set application context

Descrição

public bool GearmanClient::setContext ( string $context )

Sets an arbitrary string to provide application context that can later be retrieved by GearmanClient::context().

Parâmetros

context

Arbitrary context data

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanClient::context() - Get the application context

GearmanClient::setCompleteCallback
GearmanClient::setCreatedCallback
GearmanClient


Set a callback for when a task is queued

GearmanClient::setContext
GearmanClient::setData
GearmanClient
PHP Manual

GearmanClient::setCreatedCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCreatedCallback — Set a callback for when a task is queued

Descrição

public bool GearmanClient::setCreatedCallback ( string $callback )

Sets a function to be called when a task is received and queued by the Gearman job server. The callback should accept a single argument, a GearmanClient oject.

Parâmetros

callback

A function to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setContext
GearmanClient::setData
GearmanClient


Set application data (deprecated)

GearmanClient::setCreatedCallback
GearmanClient::setDataCallback
GearmanClient
PHP Manual

GearmanClient::setData

(PECL gearman <= 0.5.0)

GearmanClient::setData — Set application data (deprecated)

Descrição

public bool GearmanClient::setData ( string $data )

Sets some arbitrary application data that can later be retrieved by GearmanClient::data().

Nota:

This method has been replaced by GearmanCient::setContext() in the 0.6.0 release of the Gearman extension.

Parâmetros

data

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanClient::data() - Get the application data (deprecated)

GearmanClient::setCreatedCallback
GearmanClient::setDataCallback
GearmanClient


Callback function when there is a data packet for a task

GearmanClient::setData
GearmanClient::setExceptionCallback
GearmanClient
PHP Manual

GearmanClient::setDataCallback

(PECL gearman >= 0.6.0)

GearmanClient::setDataCallback — Callback function when there is a data packet for a task

Descrição

public bool GearmanClient::setDataCallback ( callback $callback )

Sets the callback function for accepting data packets for a task. The callback function should take a single argument, a GearmanTask object.

Parâmetros

callback

A function or method to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setData
GearmanClient::setExceptionCallback
GearmanClient


Set a callback for worker exceptions

GearmanClient::setDataCallback
GearmanClient::setFailCallback
GearmanClient
PHP Manual

GearmanClient::setExceptionCallback

(PECL gearman >= 0.5.0)

GearmanClient::setExceptionCallback — Set a callback for worker exceptions

Descrição

public bool GearmanClient::setExceptionCallback ( callback $callback )

Specifies a function to call when a worker for a task sends an exception.

Parâmetros

callback

Function to call when the worker throws an exception

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setDataCallback
GearmanClient::setFailCallback
GearmanClient


Set callback for job failure

GearmanClient::setExceptionCallback
GearmanClient::setOptions
GearmanClient
PHP Manual

GearmanClient::setFailCallback

(PECL gearman >= 0.5.0)

GearmanClient::setFailCallback — Set callback for job failure

Descrição

public bool GearmanClient::setFailCallback ( callback $callback )

Sets the callback function to be used when a task does not complete successfully. The function should accept a single argument, a GearmanTask object.

Parâmetros

callback

A function to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setExceptionCallback
GearmanClient::setOptions
GearmanClient


Set client options

GearmanClient::setFailCallback
GearmanClient::setStatusCallback
GearmanClient
PHP Manual

GearmanClient::setOptions

(PECL gearman >= 0.5.0)

GearmanClient::setOptions — Set client options

Descrição

public bool GearmanClient::setOptions ( int $options )

Sets one or more client options.

Parâmetros

options

The options to be set

Valor Retornado

Always returns TRUE.

GearmanClient::setFailCallback
GearmanClient::setStatusCallback
GearmanClient


Set a callback for collecting task status

GearmanClient::setOptions
GearmanClient::setTimeout
GearmanClient
PHP Manual

GearmanClient::setStatusCallback

(PECL gearman >= 0.5.0)

GearmanClient::setStatusCallback — Set a callback for collecting task status

Descrição

public bool GearmanClient::setStatusCallback ( callback $callback )

Sets a callback function used for getting updated status information from a worker. The function should accept a single argument, a GearmanTask object.

Parâmetros

callback

A function to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setOptions
GearmanClient::setTimeout
GearmanClient


Set socket I/O activity timeout

GearmanClient::setStatusCallback
GearmanClient::setWarningCallback
GearmanClient
PHP Manual

GearmanClient::setTimeout

(PECL gearman >= 0.6.0)

GearmanClient::setTimeout — Set socket I/O activity timeout

Descrição

public bool GearmanClient::setTimeout ( int $timeout )

Sets the timeout for socket I/O activity.

Parâmetros

timeout

An interval of time in milliseconds

Valor Retornado

Always returns TRUE.

GearmanClient::setStatusCallback
GearmanClient::setWarningCallback
GearmanClient


Set a callback for worker warnings

GearmanClient::setTimeout
GearmanClient::setWorkloadCallback
GearmanClient
PHP Manual

GearmanClient::setWarningCallback

(PECL gearman >= 0.5.0)

GearmanClient::setWarningCallback — Set a callback for worker warnings

Descrição

public bool GearmanClient::setWarningCallback ( callback $callback )

Sets a function to be called when a worker sends a warning. The callback should accept a single argument, a GearmanTask object.

Parâmetros

callback

A function to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

GearmanClient::setTimeout
GearmanClient::setWorkloadCallback
GearmanClient


Set a callback for accepting incremental data updates

GearmanClient::setWarningCallback
GearmanClient::timeout
GearmanClient
PHP Manual

GearmanClient::setWorkloadCallback

(PECL gearman >= 0.5.0)

GearmanClient::setWorkloadCallback — Set a callback for accepting incremental data updates

Descrição

public bool GearmanClient::setWorkloadCallback ( callback $callback )

Sets a function to be called when a worker needs to send back data prior to job completion. A worker can do this when it needs to send updates, send partial results, or flush data during long running jobs. The callback should accept a single argument, a GearmanTask object.

Parâmetros

callback

A function to call

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCompleteCallback() - Set a function to be called on task completion
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings

GearmanClient::setWarningCallback
GearmanClient::timeout
GearmanClient


Get current socket I/O activity timeout value

GearmanClient::setWorkloadCallback
GearmanJob
GearmanClient
PHP Manual

GearmanClient::timeout

(PECL gearman >= 0.6.0)

GearmanClient::timeout — Get current socket I/O activity timeout value

Descrição

public int GearmanClient::timeout ( void )

Returns the timeout in milliseconds to wait for I/O activity.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Timeout in milliseconds to wait for I/O activity. A negative value means an infinite timeout.

Veja Também

  • GearmanClient::setTimeout() - Set socket I/O activity timeout

GearmanClient::setWorkloadCallback
GearmanJob
GearmanClient


The GearmanJob class

Introdução

Description of the class.

Sinopse da classe

GearmanJob {
/* Methods */
public bool complete ( string $result )
__construct ( void )
public bool data ( string $data )
public bool exception ( string $exception )
public bool fail ( void )
public string functionName ( void )
public string handle ( void )
public int returnCode ( void )
public bool sendComplete ( string $result )
public bool sendData ( string $data )
public bool sendException ( string $exception )
public bool sendFail ( void )
public bool sendStatus ( int $numerator , int $denominator )
public bool sendWarning ( string $warning )
public bool setReturn ( string $gearman_return_t )
public bool status ( int $numerator , int $denominator )
public string unique ( void )
public bool warning ( string $warning )
public string workload ( void )
public int workloadSize ( void )
}

Índice

  • GearmanJob::complete — Send the result and complete status (deprecated)
  • GearmanJob::__construct — Create a GearmanJob instance
  • GearmanJob::data — Send data for a running job (deprecated)
  • GearmanJob::exception — Send exception for running job (deprecated)
  • GearmanJob::fail — Send fail status (deprecated)
  • GearmanJob::functionName — Get function name
  • GearmanJob::handle — Get the job handle
  • GearmanJob::returnCode — Get last return code
  • GearmanJob::sendComplete — Send the result and complete status
  • GearmanJob::sendData — Send data for a running job
  • GearmanJob::sendException — Send exception for running job (exception)
  • GearmanJob::sendFail — Send fail status
  • GearmanJob::sendStatus — Send status
  • GearmanJob::sendWarning — Send a warning
  • GearmanJob::setReturn — Set a return value
  • GearmanJob::status — Send status (deprecated)
  • GearmanJob::unique — Get the unique identifier
  • GearmanJob::warning — Send a warning (deprecated)
  • GearmanJob::workload — Get workload
  • GearmanJob::workloadSize — Get size of work load
GearmanClient::timeout
GearmanJob::complete
Gearman


Send the result and complete status (deprecated)

GearmanJob
GearmanJob::__construct
GearmanJob
PHP Manual

GearmanJob::complete

(PECL gearman <= 0.5.0)

GearmanJob::complete — Send the result and complete status (deprecated)

Descrição

public bool GearmanJob::complete ( string $result )

Sends result data and the complete status update for this job.

Nota:

This method has been replaced by GearmanJob::sendComplete() in the 0.6.0 release of the Gearman extension.

Parâmetros

result

Serialized result data.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendFail() - Send fail status
  • GearmanJob::setReturn() - Set a return value

GearmanJob
GearmanJob::__construct
GearmanJob


Create a GearmanJob instance

GearmanJob::complete
GearmanJob::data
GearmanJob
PHP Manual

GearmanJob::__construct

(PECL gearman >= 0.5.0)

GearmanJob::__construct — Create a GearmanJob instance

Descrição

GearmanJob::__construct ( void )

Creates a GearmanJob instance representing a job the worker is to complete.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanJob object.

GearmanJob::complete
GearmanJob::data
GearmanJob


Send data for a running job (deprecated)

GearmanJob::__construct
GearmanJob::exception
GearmanJob
PHP Manual

GearmanJob::data

(PECL gearman <= 0.5.0)

GearmanJob::data — Send data for a running job (deprecated)

Descrição

public bool GearmanJob::data ( string $data )

Sends data to the job server (and any listening clients) for this job.

Nota:

This method has been replaced by GearmanJob::sendData() in the 0.6.0 release of the Gearman extension.

Parâmetros

data

Arbitrary serialized data.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::workload() - Get workload
  • GearmanTask::data() - Get data returned for a task

GearmanJob::__construct
GearmanJob::exception
GearmanJob


Send exception for running job (deprecated)

GearmanJob::data
GearmanJob::fail
GearmanJob
PHP Manual

GearmanJob::exception

(PECL gearman <= 0.5.0)

GearmanJob::exception — Send exception for running job (deprecated)

Descrição

public bool GearmanJob::exception ( string $exception )

Sends the supplied exception when this job is running.

Nota:

This method has been replaced by GearmanJob::sendException() in the 0.6.0 release of the Gearman extension.

Parâmetros

exception

An exception description.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::setReturn() - Set a return value
  • GearmanJob::sendStatus() - Send status
  • GearmanJob::sendWarning() - Send a warning

GearmanJob::data
GearmanJob::fail
GearmanJob


Send fail status (deprecated)

GearmanJob::exception
GearmanJob::functionName
GearmanJob
PHP Manual

GearmanJob::fail

(PECL gearman <= 0.5.0)

GearmanJob::fail — Send fail status (deprecated)

Descrição

public bool GearmanJob::fail ( void )

Sends failure status for this job, indicating that the job failed in a known way (as opposed to failing due to a thrown exception).

Nota:

This method has been replaced by GearmanJob::sendFail() in the 0.6.0 release of the Gearman extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendException() - Send exception for running job (exception)
  • GearmanJob::setReturn() - Set a return value
  • GearmanJob::sendStatus() - Send status
  • GearmanJob::sendWarning() - Send a warning

GearmanJob::exception
GearmanJob::functionName
GearmanJob


Get function name

GearmanJob::fail
GearmanJob::handle
GearmanJob
PHP Manual

GearmanJob::functionName

(PECL gearman >= 0.5.0)

GearmanJob::functionName — Get function name

Descrição

public string GearmanJob::functionName ( void )

Returns the function name for this job. This is the function the work will execute to perform the job.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The name of a function.

Veja Também

  • GearmanTask::function() - Get associated function name (deprecated)

GearmanJob::fail
GearmanJob::handle
GearmanJob


Get the job handle

GearmanJob::functionName
GearmanJob::returnCode
GearmanJob
PHP Manual

GearmanJob::handle

(PECL gearman >= 0.5.0)

GearmanJob::handle — Get the job handle

Descrição

public string GearmanJob::handle ( void )

Returns the opaque job handle assigned by the job server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An opaque job handle.

Veja Também

  • GearmanTask::jobHandle() - Get the job handle

GearmanJob::functionName
GearmanJob::returnCode
GearmanJob


Get last return code

GearmanJob::handle
GearmanJob::sendComplete
GearmanJob
PHP Manual

GearmanJob::returnCode

(PECL gearman >= 0.5.0)

GearmanJob::returnCode — Get last return code

Descrição

public int GearmanJob::returnCode ( void )

Returns the last return code issued by the job server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid Gearman return code.

Veja Também

  • GearmanTask::returnCode() - Get the last return code

GearmanJob::handle
GearmanJob::sendComplete
GearmanJob


Send the result and complete status

GearmanJob::returnCode
GearmanJob::sendData
GearmanJob
PHP Manual

GearmanJob::sendComplete

(PECL gearman >= 0.6.0)

GearmanJob::sendComplete — Send the result and complete status

Descrição

public bool GearmanJob::sendComplete ( string $result )

Sends result data and the complete status update for this job.

Parâmetros

result

Serialized result data.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendFail() - Send fail status
  • GearmanJob::setReturn() - Set a return value

GearmanJob::returnCode
GearmanJob::sendData
GearmanJob


Send data for a running job

GearmanJob::sendComplete
GearmanJob::sendException
GearmanJob
PHP Manual

GearmanJob::sendData

(PECL gearman >= 0.6.0)

GearmanJob::sendData — Send data for a running job

Descrição

public bool GearmanJob::sendData ( string $data )

Sends data to the job server (and any listening clients) for this job.

Parâmetros

data

Arbitrary serialized data.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::workload() - Get workload
  • GearmanTask::data() - Get data returned for a task

GearmanJob::sendComplete
GearmanJob::sendException
GearmanJob


Send exception for running job (exception)

GearmanJob::sendData
GearmanJob::sendFail
GearmanJob
PHP Manual

GearmanJob::sendException

(PECL gearman >= 0.6.0)

GearmanJob::sendException — Send exception for running job (exception)

Descrição

public bool GearmanJob::sendException ( string $exception )

Sends the supplied exception when this job is running.

Parâmetros

exception

An exception description.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::setReturn() - Set a return value
  • GearmanJob::sendStatus() - Send status
  • GearmanJob::sendWarning() - Send a warning

GearmanJob::sendData
GearmanJob::sendFail
GearmanJob


Send fail status

GearmanJob::sendException
GearmanJob::sendStatus
GearmanJob
PHP Manual

GearmanJob::sendFail

(PECL gearman >= 0.6.0)

GearmanJob::sendFail — Send fail status

Descrição

public bool GearmanJob::sendFail ( void )

Sends failure status for this job, indicating that the job failed in a known way (as opposed to failing due to a thrown exception).

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendException() - Send exception for running job (exception)
  • GearmanJob::setReturn() - Set a return value
  • GearmanJob::sendStatus() - Send status
  • GearmanJob::sendWarning() - Send a warning

GearmanJob::sendException
GearmanJob::sendStatus
GearmanJob


Send status

GearmanJob::sendFail
GearmanJob::sendWarning
GearmanJob
PHP Manual

GearmanJob::sendStatus

(PECL gearman >= 0.6.0)

GearmanJob::sendStatus — Send status

Descrição

public bool GearmanJob::sendStatus ( int $numerator , int $denominator )

Sends status information to the job server and any listening clients. Use this to specify what percentage of the job has been completed.

Parâmetros

numerator

The numerator of the precentage completed expressed as a fraction.

denominator

The denominator of the precentage completed expressed as a fraction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::jobStatus() - Get the status of a background job
  • GearmanTask::taskDenominator() - Get completion percentage denominator
  • GearmanTask::taskNumerator() - Get completion percentage numerator

GearmanJob::sendFail
GearmanJob::sendWarning
GearmanJob


Send a warning

GearmanJob::sendStatus
GearmanJob::setReturn
GearmanJob
PHP Manual

GearmanJob::sendWarning

(PECL gearman >= 0.6.0)

GearmanJob::sendWarning — Send a warning

Descrição

public bool GearmanJob::sendWarning ( string $warning )

Sends a warning for this job while it is running.

Parâmetros

warning

A warning messages.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendComplete() - Send the result and complete status
  • GearmanJob::sendException() - Send exception for running job (exception)
  • GearmanJob::sendFail() - Send fail status

GearmanJob::sendStatus
GearmanJob::setReturn
GearmanJob


Set a return value

GearmanJob::sendWarning
GearmanJob::status
GearmanJob
PHP Manual

GearmanJob::setReturn

(PECL gearman >= 0.5.0)

GearmanJob::setReturn — Set a return value

Descrição

public bool GearmanJob::setReturn ( string $gearman_return_t )

Sets the return value for this job, indicates how the job completed.

Parâmetros

gearman_return_t

A valid Gearman return value.

Valor Retornado

Description...

GearmanJob::sendWarning
GearmanJob::status
GearmanJob


Send status (deprecated)

GearmanJob::setReturn
GearmanJob::unique
GearmanJob
PHP Manual

GearmanJob::status

(PECL gearman <= 0.5.0)

GearmanJob::status — Send status (deprecated)

Descrição

public bool GearmanJob::status ( int $numerator , int $denominator )

Sends status information to the job server and any listening clients. Use this to specify what percentage of the job has been completed.

Nota:

This method has been replaced by GearmanJob::sendStatus() in the 0.6.0 release of the Gearman extenstion.

Parâmetros

numerator

The numerator of the precentage completed expressed as a fraction.

denominator

The denominator of the precentage completed expressed as a fraction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanClient::jobStatus() - Get the status of a background job
  • GearmanTask::taskDenominator() - Get completion percentage denominator
  • GearmanTask::taskNumerator() - Get completion percentage numerator

GearmanJob::setReturn
GearmanJob::unique
GearmanJob


Get the unique identifier

GearmanJob::status
GearmanJob::warning
GearmanJob
PHP Manual

GearmanJob::unique

(PECL gearman >= 0.5.0)

GearmanJob::unique — Get the unique identifier

Descrição

public string GearmanJob::unique ( void )

Returns the unique identifiter for this job. The identifier is assigned by the client.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An opaque unique identifier.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanTask::uuid() - Get the unique identifier for a task (deprecated)

GearmanJob::status
GearmanJob::warning
GearmanJob


Send a warning (deprecated)

GearmanJob::unique
GearmanJob::workload
GearmanJob
PHP Manual

GearmanJob::warning

(PECL gearman <= 0.5.0)

GearmanJob::warning — Send a warning (deprecated)

Descrição

public bool GearmanJob::warning ( string $warning )

Sends a warning for this job while it is running.

Nota:

This method has been replaced by GearmanJob::sendWarning() in the 0.6.0 release of the Gearman extension.

Parâmetros

warning

A warning messages.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • GearmanJob::sendComplete() - Send the result and complete status
  • GearmanJob::sendException() - Send exception for running job (exception)
  • GearmanJob::sendFail() - Send fail status

GearmanJob::unique
GearmanJob::workload
GearmanJob


Get workload

GearmanJob::warning
GearmanJob::workloadSize
GearmanJob
PHP Manual

GearmanJob::workload

(PECL gearman >= 0.5.0)

GearmanJob::workload — Get workload

Descrição

public string GearmanJob::workload ( void )

Returns the workload for the job. This is serialized data that is to be processed by the worker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Serialized data.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanJob::workloadSize() - Get size of work load

GearmanJob::warning
GearmanJob::workloadSize
GearmanJob


Get size of work load

GearmanJob::workload
GearmanTask
GearmanJob
PHP Manual

GearmanJob::workloadSize

(PECL gearman >= 0.5.0)

GearmanJob::workloadSize — Get size of work load

Descrição

public int GearmanJob::workloadSize ( void )

Returns the size of the job's work load (the data the worker is to process) in bytes.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The size in bytes.

Veja Também

  • GearmanJob::workload() - Get workload

GearmanJob::workload
GearmanTask
GearmanJob


The GearmanTask class

Introdução

Description of the class.

Sinopse da classe

GearmanTask {
/* Methods */
__construct ( void )
public GearmanTask create ( void )
public string data ( void )
public int dataSize ( void )
public string function ( void )
public string functionName ( void )
public bool isKnown ( void )
public bool isRunning ( void )
public string jobHandle ( void )
public array recvData ( int $data_len )
public int returnCode ( void )
public int sendData ( string $data )
public int sendWorkload ( string $data )
public int taskDenominator ( void )
public int taskNumerator ( void )
public string unique ( void )
public string uuid ( void )
}

Índice

  • GearmanTask::__construct — Create a GearmanTask instance
  • GearmanTask::create — Create a task (deprecated)
  • GearmanTask::data — Get data returned for a task
  • GearmanTask::dataSize — Get the size of returned data
  • GearmanTask::function — Get associated function name (deprecated)
  • GearmanTask::functionName — Get associated function name
  • GearmanTask::isKnown — Determine if task is known
  • GearmanTask::isRunning — Test whether the task is currently running
  • GearmanTask::jobHandle — Get the job handle
  • GearmanTask::recvData — Read work or result data into a buffer for a task
  • GearmanTask::returnCode — Get the last return code
  • GearmanTask::sendData — Send data for a task (deprecated)
  • GearmanTask::sendWorkload — Send data for a task
  • GearmanTask::taskDenominator — Get completion percentage denominator
  • GearmanTask::taskNumerator — Get completion percentage numerator
  • GearmanTask::unique — Get the unique identifier for a task
  • GearmanTask::uuid — Get the unique identifier for a task (deprecated)
GearmanJob::workloadSize
GearmanTask::__construct
Gearman


Create a GearmanTask instance

GearmanTask
GearmanTask::create
GearmanTask
PHP Manual

GearmanTask::__construct

(PECL gearman >= 0.5.0)

GearmanTask::__construct — Create a GearmanTask instance

Descrição

GearmanTask::__construct ( void )

Creates a GearmanTask instance representing a task to be submitted to a job server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanTask object.

GearmanTask
GearmanTask::create
GearmanTask


Create a task (deprecated)

GearmanTask::__construct
GearmanTask::data
GearmanTask
PHP Manual

GearmanTask::create

(PECL gearman <= 0.5.0)

GearmanTask::create — Create a task (deprecated)

Descrição

public GearmanTask GearmanTask::create ( void )

Returns a new GearmanTask object.

Nota:

This method was removed in the 0.6.0 version of the Gearman extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanTask oject or FALSE on failure.

GearmanTask::__construct
GearmanTask::data
GearmanTask


Get data returned for a task

GearmanTask::create
GearmanTask::dataSize
GearmanTask
PHP Manual

GearmanTask::data

(PECL gearman >= 0.5.0)

GearmanTask::data — Get data returned for a task

Descrição

public string GearmanTask::data ( void )

Returns data being returned for a task by a worker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The serialized data, or FALSE if no data is present.

Veja Também

  • GearmanTask::dataSize() - Get the size of returned data

GearmanTask::create
GearmanTask::dataSize
GearmanTask


Get the size of returned data

GearmanTask::data
GearmanTask::function
GearmanTask
PHP Manual

GearmanTask::dataSize

(PECL gearman >= 0.5.0)

GearmanTask::dataSize — Get the size of returned data

Descrição

public int GearmanTask::dataSize ( void )

Returns the size of the data being returned for a task.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The data size, or FALSE if there is no data.

Veja Também

  • GearmanTask::data() - Get data returned for a task

GearmanTask::data
GearmanTask::function
GearmanTask


Get associated function name (deprecated)

GearmanTask::dataSize
GearmanTask::functionName
GearmanTask
PHP Manual

GearmanTask::function

(PECL gearman <= 0.5.0)

GearmanTask::function — Get associated function name (deprecated)

Descrição

public string GearmanTask::function ( void )

Returns the name of the function this task is associated with, i.e., the function the Gearman worker calls.

Nota:

This method has been replaced by GearmanTask::functionName() in the 0.6.0 release of the Gearman extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A function name.

GearmanTask::dataSize
GearmanTask::functionName
GearmanTask


Get associated function name

GearmanTask::function
GearmanTask::isKnown
GearmanTask
PHP Manual

GearmanTask::functionName

(PECL gearman >= 0.6.0)

GearmanTask::functionName — Get associated function name

Descrição

public string GearmanTask::functionName ( void )

Returns the name of the function this task is associated with, i.e., the function the Gearman worker calls.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A function name.

GearmanTask::function
GearmanTask::isKnown
GearmanTask


Determine if task is known

GearmanTask::functionName
GearmanTask::isRunning
GearmanTask
PHP Manual

GearmanTask::isKnown

(PECL gearman >= 0.5.0)

GearmanTask::isKnown — Determine if task is known

Descrição

public bool GearmanTask::isKnown ( void )

Gets the status information for whether or not this task is known to the job server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the task is known, FALSE otherwise.

GearmanTask::functionName
GearmanTask::isRunning
GearmanTask


Test whether the task is currently running

GearmanTask::isKnown
GearmanTask::jobHandle
GearmanTask
PHP Manual

GearmanTask::isRunning

(PECL gearman >= 0.5.0)

GearmanTask::isRunning — Test whether the task is currently running

Descrição

public bool GearmanTask::isRunning ( void )

Indicates whether or not this task is currently running.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the task is running, FALSE otherwise.

GearmanTask::isKnown
GearmanTask::jobHandle
GearmanTask


Get the job handle

GearmanTask::isRunning
GearmanTask::recvData
GearmanTask
PHP Manual

GearmanTask::jobHandle

gearman_job_handle

(PECL gearman >= 0.5.0)

GearmanTask::jobHandle -- gearman_job_handle — Get the job handle

Descrição

public string GearmanTask::jobHandle ( void )

Returns the job handle for this task.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The opaque job handle.

Veja Também

  • GearmanClient::doJobHandle() - Get the job handle for the running task

GearmanTask::isRunning
GearmanTask::recvData
GearmanTask


Read work or result data into a buffer for a task

GearmanTask::jobHandle
GearmanTask::returnCode
GearmanTask
PHP Manual

GearmanTask::recvData

(PECL gearman >= 0.5.0)

GearmanTask::recvData — Read work or result data into a buffer for a task

Descrição

public array GearmanTask::recvData ( int $data_len )

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

data_len

Length of data to be read.

Valor Retornado

An array whose first element is the length of data read and the second is the data buffer. Returns FALSE if the read failed.

Veja Também

  • GearmanTask::sendData() - Send data for a task (deprecated)

GearmanTask::jobHandle
GearmanTask::returnCode
GearmanTask


Get the last return code

GearmanTask::recvData
GearmanTask::sendData
GearmanTask
PHP Manual

GearmanTask::returnCode

(PECL gearman >= 0.5.0)

GearmanTask::returnCode — Get the last return code

Descrição

public int GearmanTask::returnCode ( void )

Returns the last Gearman return code for this task.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid Gearman return code.

Veja Também

  • GearmanClient::returnCode() - Get the last Gearman return code

GearmanTask::recvData
GearmanTask::sendData
GearmanTask


Send data for a task (deprecated)

GearmanTask::returnCode
GearmanTask::sendWorkload
GearmanTask
PHP Manual

GearmanTask::sendData

(PECL gearman <= 0.5.0)

GearmanTask::sendData — Send data for a task (deprecated)

Descrição

public int GearmanTask::sendData ( string $data )

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

data

Data to send to the worker.

Valor Retornado

The length of data sent, or FALSE if the send failed.

Veja Também

  • GearmanTask::recvData() - Read work or result data into a buffer for a task

GearmanTask::returnCode
GearmanTask::sendWorkload
GearmanTask


Send data for a task

GearmanTask::sendData
GearmanTask::taskDenominator
GearmanTask
PHP Manual

GearmanTask::sendWorkload

(PECL gearman >= 0.6.0)

GearmanTask::sendWorkload — Send data for a task

Descrição

public int GearmanTask::sendWorkload ( string $data )

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

data

Data to send to the worker.

Valor Retornado

The length of data sent, or FALSE if the send failed.

Veja Também

  • GearmanTask::recvData() - Read work or result data into a buffer for a task

GearmanTask::sendData
GearmanTask::taskDenominator
GearmanTask


Get completion percentage denominator

GearmanTask::sendWorkload
GearmanTask::taskNumerator
GearmanTask
PHP Manual

GearmanTask::taskDenominator

(PECL gearman >= 0.5.0)

GearmanTask::taskDenominator — Get completion percentage denominator

Descrição

public int GearmanTask::taskDenominator ( void )

Returns the denominator of the percentage of the task that is complete expressed as a fraction.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A number between 0 and 100, or FALSE if cannot be determined.

Veja Também

  • GearmanTask::taskNumerator() - Get completion percentage numerator

GearmanTask::sendWorkload
GearmanTask::taskNumerator
GearmanTask


Get completion percentage numerator

GearmanTask::taskDenominator
GearmanTask::unique
GearmanTask
PHP Manual

GearmanTask::taskNumerator

(PECL gearman >= 0.5.0)

GearmanTask::taskNumerator — Get completion percentage numerator

Descrição

public int GearmanTask::taskNumerator ( void )

Returns the numerator of the percentage of the task that is complete expressed as a fraction.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A number between 0 and 100, or FALSE if cannot be determined.

Veja Também

  • GearmanTask::taskDenominator() - Get completion percentage denominator

GearmanTask::taskDenominator
GearmanTask::unique
GearmanTask


Get the unique identifier for a task

GearmanTask::taskNumerator
GearmanTask::uuid
GearmanTask
PHP Manual

GearmanTask::unique

(PECL gearman >= 0.6.0)

GearmanTask::unique — Get the unique identifier for a task

Descrição

public string GearmanTask::unique ( void )

Returns the unique identifier for this task. This is assigned by the GearmanClient, as opposed to the job handle which is set by the Gearman job server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The unique identifier, or FALSE if no identifier is assigned.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::addTask() - Add a task to be run in parallel

GearmanTask::taskNumerator
GearmanTask::uuid
GearmanTask


Get the unique identifier for a task (deprecated)

GearmanTask::unique
GearmanWorker
GearmanTask
PHP Manual

GearmanTask::uuid

(PECL gearman <= 0.5.0)

GearmanTask::uuid — Get the unique identifier for a task (deprecated)

Descrição

public string GearmanTask::uuid ( void )

Returns the unique identifier for this task. This is assigned by the GearmanClient, as opposed to the job handle which is set by the Gearman job server.

Nota:

This method has been replaced by GearmanTask::unique() in the 0.6.0 release of the Gearman extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The unique identifier, or FALSE if no identifier is assigned.

Veja Também

  • GearmanClient::do() - Run a single task and return a result
  • GearmanClient::addTask() - Add a task to be run in parallel

GearmanTask::unique
GearmanWorker
GearmanTask


The GearmanWorker class

Introdução

Description of the class.

Sinopse da classe

GearmanWorker {
/* Methods */
public bool addFunction ( string $function_name , callback $function [, mixed &$context [, int $timeout ]] )
public bool addOptions ( int $option )
public bool addServer ([ string $host = 127.0.0.1 [, int $port = 4730 ]] )
public bool addServers ( string $servers = 127.0.0.1:4730 )
public void clone ( void )
__construct ( void )
public bool echo ( string $workload )
public string error ( void )
public int getErrno ( void )
public int options ( void )
public bool register ( string $function_name [, int $timeout ] )
public bool removeOptions ( int $option )
public int returnCode ( void )
public bool setOptions ( int $option )
public bool setTimeout ( int $timeout )
public int timeout ( void )
public bool unregister ( string $function_name )
public bool unregisterAll ( void )
public bool wait ( void )
public bool work ( void )
}

Índice

  • GearmanWorker::addFunction — Register and add callback function
  • GearmanWorker::addOptions — Add worker options
  • GearmanWorker::addServer — Add a job server
  • GearmanWorker::addServers — Add job servers
  • GearmanWorker::clone — Create a copy of the worker
  • GearmanWorker::__construct — Create a GearmanWorker instance
  • GearmanWorker::echo — Test job server response
  • GearmanWorker::error — Get the last error encountered
  • GearmanWorker::getErrno — Get errno
  • GearmanWorker::options — Get worker options
  • GearmanWorker::register — Register a function with the job server
  • GearmanWorker::removeOptions — Remove worker options
  • GearmanWorker::returnCode — Get last Gearman return code
  • GearmanWorker::setOptions — Set worker options
  • GearmanWorker::setTimeout — Set socket I/O activity timeout
  • GearmanWorker::timeout — Get socket I/O activity timeout
  • GearmanWorker::unregister — Unregister a function name with the job servers
  • GearmanWorker::unregisterAll — Unregister all function names with the job servers
  • GearmanWorker::wait — Wait for activity from one of the job servers
  • GearmanWorker::work — Wait for and perform jobs
GearmanTask::uuid
GearmanWorker::addFunction
Gearman


Register and add callback function

GearmanWorker
GearmanWorker::addOptions
GearmanWorker
PHP Manual

GearmanWorker::addFunction

(PECL gearman >= 0.5.0)

GearmanWorker::addFunction — Register and add callback function

Descrição

public bool GearmanWorker::addFunction ( string $function_name , callback $function [, mixed &$context [, int $timeout ]] )

Registers a function name with the job server and specifies a callback corresponding to that function. Optionally specify extra application context data to be used when the callback is called and a timeout.

Parâmetros

function_name

The name of a function to register with the job server

function

A callback that gets called when a job for the registered function name is submitted

context

A reference to arbitrary application context data that can be modified by the worker function

timeout

An interval of time in seconds

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Simple worker making use of extra application context data

<?php

# get a gearman worker
$worker= new GearmanWorker();

# add the default server (localhost)
$worker->addServer();

# define a variable to hold application data
$count= 0;

# add the "reverse" function
$worker->addFunction("reverse", "reverse_cb", &$count);

# start the worker
while ($worker->work());

function reverse_cb($job, $count)
{
  $count++;
  return "$count: " . strrev($job->workload());
}

?>

Running a client that submits two jobs for the reverse function would have output similar to the following:

1: olleh
2: dlrow

Veja Também

  • GearmanClient::do() - Run a single task and return a result

GearmanWorker
GearmanWorker::addOptions
GearmanWorker


Add worker options

GearmanWorker::addFunction
GearmanWorker::addServer
GearmanWorker
PHP Manual

GearmanWorker::addOptions

(PECL gearman >= 0.6.0)

GearmanWorker::addOptions — Add worker options

Descrição

public bool GearmanWorker::addOptions ( int $option )

Adds one or more options to the options previously set.

Parâmetros

option

The options to be added

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanWorker::options() - Get worker options
  • GearmanClient::setOptions() - Set client options
  • GearmanClient::removeOptions() - Remove client options

GearmanWorker::addFunction
GearmanWorker::addServer
GearmanWorker


Add a job server

GearmanWorker::addOptions
GearmanWorker::addServers
GearmanWorker
PHP Manual

GearmanWorker::addServer

(PECL gearman >= 0.5.0)

GearmanWorker::addServer — Add a job server

Descrição

public bool GearmanWorker::addServer ([ string $host = 127.0.0.1 [, int $port = 4730 ]] )

Adds a job server to this worker. This goes into a list of servers than can be used to run jobs. No socket I/O happens here.

Parâmetros

host

The job server host name.

port

The job server port.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Add alternate Gearman servers

<?php
$worker= new GearmanWorker();
$worker->addServer("10.0.0.1");
$worker->addServer("10.0.0.2", 7003);
?>

Veja Também

  • GearmanWorker::addServers() - Add job servers

GearmanWorker::addOptions
GearmanWorker::addServers
GearmanWorker


Add job servers

GearmanWorker::addServer
GearmanWorker::clone
GearmanWorker
PHP Manual

GearmanWorker::addServers

(PECL gearman >= 0.5.0)

GearmanWorker::addServers — Add job servers

Descrição

public bool GearmanWorker::addServers ( string $servers = 127.0.0.1:4730 )

Adds one or more job servers to this worker. These go into a list of servers that can be used to run jobs. No socket I/O happens here.

Parâmetros

servers

A comma separated list of job servers in the format host:port. If no port is specified, it defaults to 4730.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Add two job servers

<?php

$worker= new GearmanWorker();
$worker->addServers("10.0.0.1,10.0.0.2:7003");

?>

Veja Também

  • GearmanWorker::addServer() - Add a job server

GearmanWorker::addServer
GearmanWorker::clone
GearmanWorker


Create a copy of the worker

GearmanWorker::addServers
GearmanWorker::__construct
GearmanWorker
PHP Manual

GearmanWorker::clone

(PECL gearman >= 0.5.0)

GearmanWorker::clone — Create a copy of the worker

Descrição

public void GearmanWorker::clone ( void )

Creates a copy of the worker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanWorker object

GearmanWorker::addServers
GearmanWorker::__construct
GearmanWorker


Create a GearmanWorker instance

GearmanWorker::clone
GearmanWorker::echo
GearmanWorker
PHP Manual

GearmanWorker::__construct

(PECL gearman >= 0.5.0)

GearmanWorker::__construct — Create a GearmanWorker instance

Descrição

GearmanWorker::__construct ( void )

Creates a GearmanWorker instance representing a worker that connects to the job server and accepts tasks to run.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A GearmanWorker object

Veja Também

  • GearmanWorker::clone() - Create a copy of the worker

GearmanWorker::clone
GearmanWorker::echo
GearmanWorker


Test job server response

GearmanWorker::__construct
GearmanWorker::error
GearmanWorker
PHP Manual

GearmanWorker::echo

(PECL gearman >= 0.6.0)

GearmanWorker::echo — Test job server response

Descrição

public bool GearmanWorker::echo ( string $workload )

Sends data to all job servers to see if they echo it back. This is a test function to see if job servers are responding properly.

Parâmetros

workload

Arbitrary serialized data

Valor Retornado

Standard Gearman return value.

Veja Também

  • GearmanClient::echo() - Send data to all job servers to see if they echo it back

GearmanWorker::__construct
GearmanWorker::error
GearmanWorker


Get the last error encountered

GearmanWorker::echo
GearmanWorker::getErrno
GearmanWorker
PHP Manual

GearmanWorker::error

(PECL gearman >= 0.5.0)

GearmanWorker::error — Get the last error encountered

Descrição

public string GearmanWorker::error ( void )

Returns an error string for the last error encountered.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An error string.

Veja Também

  • GearmanWorker::getErrno() - Get errno

GearmanWorker::echo
GearmanWorker::getErrno
GearmanWorker


Get errno

GearmanWorker::error
GearmanWorker::options
GearmanWorker
PHP Manual

GearmanWorker::getErrno

(PECL gearman >= 0.5.0)

GearmanWorker::getErrno — Get errno

Descrição

public int GearmanWorker::getErrno ( void )

Returns the value of errno in the case of a GEARMAN_ERRNO return value.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid errno.

Veja Também

  • GearmanWorker::error() - Get the last error encountered

GearmanWorker::error
GearmanWorker::options
GearmanWorker


Get worker options

GearmanWorker::getErrno
GearmanWorker::register
GearmanWorker
PHP Manual

GearmanWorker::options

(PECL gearman >= 0.6.0)

GearmanWorker::options — Get worker options

Descrição

public int GearmanWorker::options ( void )

Gets the options previously set for the worker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The options currently set for the worker.

Veja Também

  • GearmanWorker::setOptions() - Set worker options

GearmanWorker::getErrno
GearmanWorker::register
GearmanWorker


Register a function with the job server

GearmanWorker::options
GearmanWorker::removeOptions
GearmanWorker
PHP Manual

GearmanWorker::register

(PECL gearman >= 0.6.0)

GearmanWorker::register — Register a function with the job server

Descrição

public bool GearmanWorker::register ( string $function_name [, int $timeout ] )

Registers a function name with the job server with an optional timeout. The timeout specifies how many seconds the server will wait before marking a job as failed. If the timeout is set to zero, there is no timeout.

Parâmetros

function_name

The name of a function to register with the job server

timeout

An interval of time in seconds

Valor Retornado

A standard Gearman return value.

Veja Também

  • GearmanWorker::unregister() - Unregister a function name with the job servers
  • GearmanWorker::unregisterAll() - Unregister all function names with the job servers

GearmanWorker::options
GearmanWorker::removeOptions
GearmanWorker


Remove worker options

GearmanWorker::register
GearmanWorker::returnCode
GearmanWorker
PHP Manual

GearmanWorker::removeOptions

(PECL gearman >= 0.6.0)

GearmanWorker::removeOptions — Remove worker options

Descrição

public bool GearmanWorker::removeOptions ( int $option )

Removes (unsets) one or more worker options.

Parâmetros

option

The options to be removed (unset)

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanWorker::options() - Get worker options
  • GearmanWorker::setOptions() - Set worker options
  • GearmanWorker::addOptions() - Add worker options

GearmanWorker::register
GearmanWorker::returnCode
GearmanWorker


Get last Gearman return code

GearmanWorker::removeOptions
GearmanWorker::setOptions
GearmanWorker
PHP Manual

GearmanWorker::returnCode

(PECL gearman >= 0.5.0)

GearmanWorker::returnCode — Get last Gearman return code

Descrição

public int GearmanWorker::returnCode ( void )

Returns the last Gearman return code.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A valid Gearman return code.

Veja Também

  • GearmanWorker::error() - Get the last error encountered
  • GearmanWorker::getErrno() - Get errno

GearmanWorker::removeOptions
GearmanWorker::setOptions
GearmanWorker


Set worker options

GearmanWorker::returnCode
GearmanWorker::setTimeout
GearmanWorker
PHP Manual

GearmanWorker::setOptions

(PECL gearman >= 0.5.0)

GearmanWorker::setOptions — Set worker options

Descrição

public bool GearmanWorker::setOptions ( int $option )

Sets one or more options to the supplied value.

Parâmetros

option

The options to be set

Valor Retornado

Always returns TRUE.

Veja Também

  • GearmanWorker::options() - Get worker options
  • GearmanWorker::addOptions() - Add worker options
  • GearmanWorker::removeOptions() - Remove worker options
  • GearmanClient::setOptions() - Set client options

GearmanWorker::returnCode
GearmanWorker::setTimeout
GearmanWorker


Set socket I/O activity timeout

GearmanWorker::setOptions
GearmanWorker::timeout
GearmanWorker
PHP Manual

GearmanWorker::setTimeout

(PECL gearman >= 0.6.0)

GearmanWorker::setTimeout — Set socket I/O activity timeout

Descrição

public bool GearmanWorker::setTimeout ( int $timeout )

Sets the interval of time to wait for socket I/O activity.

Parâmetros

timeout

An interval of time in milliseconds. A negative value indicates an infinite timeout.

Valor Retornado

Always returns TRUE.

Exemplos

Exemplo #1 A simple worker with a 5 second timeout

<?php

echo "Starting\n";

# Create our worker object.
$gmworker= new GearmanWorker();

# Add default server (localhost).
$gmworker->addServer();

# Register function "reverse" with the server.
$gmworker->addFunction("reverse", "reverse_fn");

# Set the timeout to 5 seconds
$gmworker->setTimeout(5000);

echo "Waiting for job...\n";
while(@$gmworker->work() || $gmworker->returnCode() == GEARMAN_TIMEOUT)
{
  if ($gmworker->returnCode() == GEARMAN_TIMEOUT)
  {
    # Normally one would want to do something useful here ...
    echo "Timeout. Waiting for next job...\n";
    continue;
  }

  if ($gmworker->returnCode() != GEARMAN_SUCCESS)
  {
    echo "return_code: " . $gmworker->returnCode() . "\n";
    break;
  }
}

echo "Done\n";

function reverse_fn($job)
{
  return strrev($job->workload());
}

?>

Running the worker with no submitted jobs will generate output that looks like the following:

Starting
Waiting for job...
Timeout. Waiting for next job...
Timeout. Waiting for next job...
Timeout. Waiting for next job...

Veja Também

  • GearmanWorker::timeout() - Get socket I/O activity timeout

GearmanWorker::setOptions
GearmanWorker::timeout
GearmanWorker


Get socket I/O activity timeout

GearmanWorker::setTimeout
GearmanWorker::unregister
GearmanWorker
PHP Manual

GearmanWorker::timeout

(PECL gearman >= 0.6.0)

GearmanWorker::timeout — Get socket I/O activity timeout

Descrição

public int GearmanWorker::timeout ( void )

Returns the current time to wait, in milliseconds, for socket I/O activity.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A time period is milliseconds. A negative value indicates an infinite timeout.

Veja Também

  • GearmanWorker::setTimeout() - Set socket I/O activity timeout

GearmanWorker::setTimeout
GearmanWorker::unregister
GearmanWorker


Unregister a function name with the job servers

GearmanWorker::timeout
GearmanWorker::unregisterAll
GearmanWorker
PHP Manual

GearmanWorker::unregister

(PECL gearman >= 0.6.0)

GearmanWorker::unregister — Unregister a function name with the job servers

Descrição

public bool GearmanWorker::unregister ( string $function_name )

Unregisters a function name with the job servers ensuring that no more jobs (for that function) are sent to this worker.

Parâmetros

function_name

The name of a function to register with the job server

Valor Retornado

A standard Gearman return value.

Veja Também

  • GearmanWorker::register() - Register a function with the job server
  • GearmanWorker::unregisterAll() - Unregister all function names with the job servers

GearmanWorker::timeout
GearmanWorker::unregisterAll
GearmanWorker


Unregister all function names with the job servers

GearmanWorker::unregister
GearmanWorker::wait
GearmanWorker
PHP Manual

GearmanWorker::unregisterAll

(PECL gearman >= 0.6.0)

GearmanWorker::unregisterAll — Unregister all function names with the job servers

Descrição

public bool GearmanWorker::unregisterAll ( void )

Unregisters all previously registered functions, ensuring that no more jobs are sent to this worker.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A standard Gearman return value.

Veja Também

  • GearmanWorker::register() - Register a function with the job server
  • GearmanWorker::unregister() - Unregister a function name with the job servers

GearmanWorker::unregister
GearmanWorker::wait
GearmanWorker


Wait for activity from one of the job servers

GearmanWorker::unregisterAll
GearmanWorker::work
GearmanWorker
PHP Manual

GearmanWorker::wait

(PECL gearman >= 0.6.0)

GearmanWorker::wait — Wait for activity from one of the job servers

Descrição

public bool GearmanWorker::wait ( void )

Causes the worker to wait for activity from one of the Gearman job servers when operating in non-blocking I/O mode. On failure, issues a E_WARNING with the last Gearman error encountered.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Running worker in non-blocking mode

<?php

echo "Starting\n";

# Create our worker object
$worker= new GearmanWorker();

# Make the worker non-blocking
$worker->addOptions(GEARMAN_WORKER_NON_BLOCKING);

# Add the default server (localhost, port 4730)
$worker->addServer();

# Add our reverse function
$worker->addFunction('reverse', 'reverse_fn');

# Try to grab a job
while (@$worker->work() ||
       $worker->returnCode() == GEARMAN_IO_WAIT ||
       $worker->returnCode() == GEARMAN_NO_JOBS)
{
  if ($worker->returnCode() == GEARMAN_SUCCESS)
    continue;

  echo "Waiting for next job...\n";
  if (!@$worker->wait())
  {
    if ($worker->returnCode() == GEARMAN_NO_ACTIVE_FDS)
    {
      # We are not connected to any servers, so wait a bit before
      # trying to reconnect.
      sleep(5);
      continue;
    }
    break;
  }
}

echo "Worker Error: " . $worker->error() . "\n";

function reverse_fn($job)
{
  return strrev($job->workload());
}

?>

Veja Também

  • GearmanWorker::work() - Wait for and perform jobs

GearmanWorker::unregisterAll
GearmanWorker::work
GearmanWorker


Wait for and perform jobs

GearmanWorker::wait
mqseries
GearmanWorker
PHP Manual

GearmanWorker::work

(PECL gearman >= 0.5.0)

GearmanWorker::work — Wait for and perform jobs

Descrição

public bool GearmanWorker::work ( void )

Waits for a job to be assigned and then calls the appropriate callback function. Issues an E_WARNING with the last Gearman error if the return code is not one of GEARMAN_SUCCESS, GEARMAN_IO_WAIT, or GEARMAN_WORK_FAIL.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 GearmanWorker::work() example

<?php

# create the worker
$worker = new GearmanWorker();

# add the default job server (localhost)
$worker->addServer();

# add the reverse function
$worker->addFunction("reverse", "my_reverse_function");

# start te worker listening for job submissions
while ($worker->work());

function my_reverse_function($job)
{
  return strrev($job->workload());
}

?>

Veja Também

  • GearmanWorker::addFunction() - Register and add callback function

GearmanWorker::wait
mqseries
GearmanWorker


mqseries

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • mqseries Funções
    • mqseries_back — MQSeries MQBACK
    • mqseries_begin — MQseries MQBEGIN
    • mqseries_close — MQSeries MQCLOSE
    • mqseries_cmit — MQSeries MQCMIT
    • mqseries_conn — MQSeries MQCONN
    • mqseries_connx — MQSeries MQCONNX
    • mqseries_disc — MQSeries MQDISC
    • mqseries_get — MQSeries MQGET
    • mqseries_inq — MQSeries MQINQ
    • mqseries_open — MQSeries MQOPEN
    • mqseries_put1 — MQSeries MQPUT1
    • mqseries_put — MQSeries MQPUT
    • mqseries_set — MQSeries MQSET
    • mqseries_strerror — Returns the error message corresponding to a result code (MQRC).
GearmanWorker::work
Introdução
Outros Serviços


Introdução

This extension aims to provide an interface for communicating with IBMs WebSphere MQ series Queue managers.

The interface mimics the C-API client interface of WebSphere MQ Series as close as possible. Using the same naming conventions and possibilities of the C-API. In order to understand the workings of this extension some level of understanding the C-API is required.

For MQ-options, MQ-structures, MQ-results etc. please read the WebSphere MQ Application Programming Guide and WebSphere MQ Application Programming Reference.

mqseries
Instalação/Configuração
mqseries


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
mqseries


Dependências

A working IBM WebSphere MQ installation. If building the extension the SDK for IBM WebSphere MQ is also required.

Nota: Be aware that when running against a IBM WebSphere MQ Client installation some methods are not available. This is not a problem of the extension but just the way the WebSphere MQ Client Interface works.

Installation requirements on non windows platforms

Build the extension and put it in the PHP extension directory.

Installation requirements on Windows

No additional requirements.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/mqseries.

Nota: The official name of this extension is mqseries.

There are two ways to connect to a queue manager. These depend on the way the extension is compiled and linked.

  • First one and also the default one is using the mqic libraries. Compiling and linking the extension against these IBM WebSphere MQSeries libraries allows the extension to connect to the Queue manager using the client interface. Remote connections are possible this way.

  • The other way is to compile and link against the mqm libraries. Using these libraries it is possible to make use of the transaction management of a queue manager.

Currently selecting the libraries to use is done by changing the config.m4 file.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

There are no extra configuration parameters.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

This extension defines a connection and object_handle resources.

The mqseries_conn() and mqseries_connx() define the connectionn handles.

The mqseries_open() defines the object handle.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

For each WebSphere MQ Constant there is a mqseries counterpart.

For definitions and usage see the WebSphere MQ Application Programming Guide and WebSphere MQ Application Programming Reference red books.

The name of the mqseries counterpart is made by appending the WebSphere MQ constant with MQSERIES_, for example the CompletionCode constants are:

mqseries constants
PHP Constant | MQ Constant
MQSERIES_MQCC_OK | MQCC_OK
MQSERIES_MQCC_WARNING | MQCC_WARNING
MQSERIES_MQCC_FAILED | MQCC_FAILED
MQSERIES_MQCC_UNKNOWN | MQCC_UNKNOWN

Tipos Resource
mqseries Funções
mqseries


mqseries Funções

Índice

  • mqseries_back — MQSeries MQBACK
  • mqseries_begin — MQseries MQBEGIN
  • mqseries_close — MQSeries MQCLOSE
  • mqseries_cmit — MQSeries MQCMIT
  • mqseries_conn — MQSeries MQCONN
  • mqseries_connx — MQSeries MQCONNX
  • mqseries_disc — MQSeries MQDISC
  • mqseries_get — MQSeries MQGET
  • mqseries_inq — MQSeries MQINQ
  • mqseries_open — MQSeries MQOPEN
  • mqseries_put1 — MQSeries MQPUT1
  • mqseries_put — MQSeries MQPUT
  • mqseries_set — MQSeries MQSET
  • mqseries_strerror — Returns the error message corresponding to a result code (MQRC).
Constantes pré-definidas
mqseries_back
mqseries


MQSeries MQBACK

mqseries Funções
mqseries_begin
mqseries Funções
PHP Manual

mqseries_back

(PECL mqseries >= 0.10.0)

mqseries_back — MQSeries MQBACK

Descrição

void mqseries_back ( resource $hconn , resource &$compCode , resource &$reason )

The mqseries_back() (MQBACK) call indicates to the queue manager that all the message gets and puts that have occurred since the last syncpoint are to be backed out. Messages put as part of a unit of work are deleted; messages retrieved as part of a unit of work are reinstated on the queue.

Using mqseries_back() only works in conjunction with mqseries_begin() and only function when connecting directly to a Queueu manager. Not via the mqclient interface.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_back() example

<?php
    mqseries_back($conn, $comp_code, $reason);

    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    }
?>

Notas

Nota:

mqseries_back() will not function when using MQSeries Client to connect to a Queueu Manager.

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_begin() - MQseries MQBEGIN

mqseries Funções
mqseries_begin
mqseries Funções


MQseries MQBEGIN

mqseries_back
mqseries_close
mqseries Funções
PHP Manual

mqseries_begin

(PECL mqseries >= 0.10.0)

mqseries_begin — MQseries MQBEGIN

Descrição

void mqseries_begin ( resource $hconn , array $beginOptions , resource &$compCode , resource &$reason )

The mqseries_begin() (MQBEGIN) call begins a unit of work that is coordinated by the queue manager, and that may involve external resource managers.

Using mqseries_begin() starts the unit of work. Either mqseries_back() or mqseries_cmit() ends the unit of work.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_begin() example

<?php
    $mqbo = array();
    mqseries_begin( $conn,
                    $mqbo,
                    $comp_code,
                    $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        /* reason code 2121 is a warning for more information see MQSeries reference manual.*/
        if ($reason !== 2121) {
            printf("CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
        }
    }
?>

Notas

Nota:

mqseries_begin() will not function when using MQSeries Client to connect to a Queueu Manager.

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_back() - MQSeries MQBACK
  • mqseries_cmit() - MQSeries MQCMIT

mqseries_back
mqseries_close
mqseries Funções


MQSeries MQCLOSE

mqseries_begin
mqseries_cmit
mqseries Funções
PHP Manual

mqseries_close

(PECL mqseries >= 0.10.0)

mqseries_close — MQSeries MQCLOSE

Descrição

void mqseries_close ( resource $hconn , resource $hobj , int $options , resource &$compCode , resource &$reason )

The mqseries_close() (MQCLOSE) call relinquishes access to an object, and is the inverse of the mqseries_open() (MQOPEN) call.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

hObj

Object handle.

This handle represents the object to be used.

options

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_close() example

<?php
    mqseries_close($conn, $obj, MQSERIES_MQCO_NONE, $comp_code, $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("close CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    }
?>

Veja Também

  • mqseries_open() - MQSeries MQOPEN
  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX

mqseries_begin
mqseries_cmit
mqseries Funções


MQSeries MQCMIT

mqseries_close
mqseries_conn
mqseries Funções
PHP Manual

mqseries_cmit

(PECL mqseries >= 0.10.0)

mqseries_cmit — MQSeries MQCMIT

Descrição

void mqseries_cmit ( resource $hconn , resource &$compCode , resource &$reason )

The mqseries_cmit() (MQCMIT) call indicates to the queue manager that the application has reached a syncpoint, and that all of the message gets and puts that have occurred since the last syncpoint are to be made permanent. Messages put as part of a unit of work are made available to other applications; messages retrieved as part of a unit of work are deleted.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_cmit() example

<?php
    mqseries_cmit($conn, $comp_code, $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("cmit CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    }
?>

Notas

Nota:

mqseries_back() will not function when using MQSeries Client to connect to a Queueu Manager.

Veja Também

  • mqseries_begin() - MQseries MQBEGIN
  • mqseries_back() - MQSeries MQBACK
  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX

mqseries_close
mqseries_conn
mqseries Funções


MQSeries MQCONN

mqseries_cmit
mqseries_connx
mqseries Funções
PHP Manual

mqseries_conn

(PECL mqseries >= 0.10.0)

mqseries_conn — MQSeries MQCONN

Descrição

void mqseries_conn ( string $qManagerName , resource &$hconn , resource &$compCode , resource &$reason )

The mqseries_conn() (MQCONN) call connects an application program to a queue manager. It provides a queue manager connection handle, which is used by the application on subsequent message queuing calls.

Parâmetros

qManagerName

Name of queue manager.

Name of the queue manager the application wishes to connect.

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_conn() example

<?php
    mqseries_conn('WMQ1', $conn, $comp_code, $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("conn CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
        exit;
    }
?>

Veja Também

  • mqseries_disc() - MQSeries MQDISC

mqseries_cmit
mqseries_connx
mqseries Funções


MQSeries MQCONNX

mqseries_conn
mqseries_disc
mqseries Funções
PHP Manual

mqseries_connx

(PECL mqseries >= 0.10.0)

mqseries_connx — MQSeries MQCONNX

Descrição

void mqseries_connx ( string $qManagerName , array &$connOptions , resource &$hconn , resource &$compCode , resource &$reason )

The mqseries_connx() (MQCONNX) call connects an application program to a queue manager. It provides a queue manager connection handle, which is used by the application on subsequent MQ calls.

Parâmetros

qManagerName

Name of queue manager.

Name of the queue manager the application wishes to connect.

connOps

Options that control the action of function

See also the MQCNO structure.

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_connx() example

<?php
    $mqcno = array(
        'Version' => MQSERIES_MQCNO_VERSION_2,
        'Options' => MQSERIES_MQCNO_STANDARD_BINDING,
        'MQCD' => array('ChannelName' => 'MQNX9420.CLIENT',
        'ConnectionName' => 'localhost',
        'TransportType' => MQSERIES_MQXPT_TCP)
    );

    mqseries_connx('MQNX9420', $mqcno, $conn, $comp_code,$reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("Connx CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
        exit;
    }

?>

Veja Também

  • mqseries_disc() - MQSeries MQDISC

mqseries_conn
mqseries_disc
mqseries Funções


MQSeries MQDISC

mqseries_connx
mqseries_get
mqseries Funções
PHP Manual

mqseries_disc

(PECL mqseries >= 0.10.0)

mqseries_disc — MQSeries MQDISC

Descrição

void mqseries_disc ( resource $hconn , resource &$compCode , resource &$reason )

The mqseries_disc() (MQDISC) call breaks the connection between the queue manager and the application program, and is the inverse of the mqseries_conn() (MQCONN) or mqseries_connx() (MQCONNX) call.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_disc() example

<?php
    mqseries_disc($conn, $comp_code, $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("disc CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    }
?>

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX

mqseries_connx
mqseries_get
mqseries Funções


MQSeries MQGET

mqseries_disc
mqseries_inq
mqseries Funções
PHP Manual

mqseries_get

(PECL mqseries >= 0.10.0)

mqseries_get — MQSeries MQGET

Descrição

void mqseries_get ( resource $hConn , resource $hObj , array &$md , array &$gmo , int &$bufferLength , string &$msg , int &$data_length , resource &$compCode , resource &$reason )

The mqseries_get() (MQGET) call retrieves a message from a local queue that has been opened using the mqseries_open() (MQOPEN) call

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

hObj

Object handle.

This handle represents the object to be used.

md

Message descriptor (MQMD).

gmo

Get message options (MQGMO).

bufferLength

Expected length of the result buffer

msg

Buffer holding the message that was retrieved from the object.

data_length

Actual buffer length

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_get() example

<?php
// open connection to the queue manager
    mqseries_conn('WMQ1', $conn, $comp_code, $reason);
// $conn now hold the reference to the connection to the queue manager.

// open the connection to the testq queue
    mqseries_open(
                $conn,
                array('ObjectName' => 'TESTQ'),
                MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_FAIL_IF_QUIESCING | MQSERIES_MQOO_OUTPUT,
                $obj,
                $comp_code,
                $reason);
// $obj now holds the reference to the object (TESTQ)

// setup empty message descriptor.
    $mdg = array();
// setup get message options
    $gmo = array('Options' => MQSERIES_MQGMO_FAIL_IF_QUIESCING | MQSERIES_MQGMO_WAIT, 'WaitInterval' => 3000);

// get the message from the queueu
    mqseries_get($conn, $obj, $mdg, $gmo, 255, $msg, $data_length, $comp_code, $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("GET CompCode:%d Reason:%d Text:%s<br>", $comp_code, $reason, mqseries_strerror($reason));
    }

 // open connection to the queue manager
    mqseries_conn('WMQ1', $conn, $comp_code, $reason);
// $conn now hold the reference to the connection to the queue manager.

// open the connection to the testq queue
    mqseries_open(
                $conn,
                array('ObjectName' => 'TESTQ'),
                MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_FAIL_IF_QUIESCING | MQSERIES_MQOO_OUTPUT,
                $obj,
                $comp_code,
                $reason);
// $obj now holds the reference to the object (TESTQ)

?>

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_open() - MQSeries MQOPEN
  • mqseries_put() - MQSeries MQPUT

mqseries_disc
mqseries_inq
mqseries Funções


MQSeries MQINQ

mqseries_get
mqseries_open
mqseries Funções
PHP Manual

mqseries_inq

(PECL mqseries >= 0.10.0)

mqseries_inq — MQSeries MQINQ

Descrição

void mqseries_inq ( resource $hconn , resource $hobj , int $selectorCount , array $selectors , int $intAttrCount , resource &$intAttr , int $charAttrLength , resource &$charAttr , resource &$compCode , resource &$reason )

The mqseries_inq() (MQINQ) call returns an array of integers and a set of character strings containing the attributes of an object.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

hObj

Object handle.

This handle represents the object to be used.

selectorCount

Count of selectors.

selectors

Array of attribute selectors.

intAttrLength

Count of integer attributes.

intAttr

Array of integer attributes.

charAttrLength

Length of character attributes buffer.

charAttr

Character attributes.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_inq() example

<?php
    $int_attr = array();
    $char_attr = "";

    mqseries_inq($conn, $obj, 1, array(MQSERIES_MQCA_Q_MGR_NAME), 0, $int_attr, 48, $char_attr, $comp_code, $reason);

    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("INQ CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    } else {
        echo "INQ QManager name result ".$char_attr."<br>\n";
    }
?>

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_open() - MQSeries MQOPEN

mqseries_get
mqseries_open
mqseries Funções


MQSeries MQOPEN

mqseries_inq
mqseries_put1
mqseries Funções
PHP Manual

mqseries_open

(PECL mqseries >= 0.10.0)

mqseries_open — MQSeries MQOPEN

Descrição

void mqseries_open ( resource $hconn , array &$objDesc , int $option , resource &$hobj , resource &$compCode , resource &$reason )

The mqseries_open() (MQOPEN) call establishes access to an object.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

objDesc

Object descriptor. (MQOD)

options

Options that control the action of the function.

hObj

Object handle.

This handle represents the object to be used.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_open() example

<?php
    $mqods = array('ObjectName' => 'TESTQ');
    mqseries_open(
                $conn,
                $mqods,
                MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_FAIL_IF_QUIESCING | MQSERIES_MQOO_OUTPUT,
                $obj,
                $comp_code,
                $reason);
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("open CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
        exit;
    }
?>

Veja Também

  • mqseries_close() - MQSeries MQCLOSE

mqseries_inq
mqseries_put1
mqseries Funções


MQSeries MQPUT1

mqseries_open
mqseries_put
mqseries Funções
PHP Manual

mqseries_put1

(PECL mqseries >= 0.10.0)

mqseries_put1 — MQSeries MQPUT1

Descrição

void mqseries_put1 ( resource $hconn , resource &$objDesc , resource &$msgDesc , resource &$pmo , string $buffer , resource &$compCode , resource &$reason )

The mqseries_put1() (MQPUT1) call puts one message on a queue. The queue need not be open.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

objDesc

Object descriptor. (MQOD)

This is a structure which identifies the queue to which the message is added.

msgDesc

Message descriptor (MQMD).

pmo

Put message options (MQPMO).

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_open() - MQSeries MQOPEN
  • mqseries_get() - MQSeries MQGET

mqseries_open
mqseries_put
mqseries Funções


MQSeries MQPUT

mqseries_put1
mqseries_set
mqseries Funções
PHP Manual

mqseries_put

(PECL mqseries >= 0.10.0)

mqseries_put — MQSeries MQPUT

Descrição

void mqseries_put ( resource $hConn , resource $hObj , array &$md , array &$pmo , string $message , resource &$compCode , resource &$reason )

The mqseries_put() (MQPUT) call puts a message on a queue or distribution list. The queue or distribution list must already be open.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

hObj

Object handle.

This handle represents the object to be used.

md

Message descriptor (MQMD).

pmo

Put message options (MQPMO).

message

The actual message to put onto the queue.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 mqseries_put() example

<?php
// open connection to the queue manager
    mqseries_conn('WMQ1', $conn, $comp_code, $reason);
// $conn now hold the reference to the connection to the queue manager.

// open the connectio to the testq queueu
    mqseries_open(
                $conn,
                array('ObjectName' => 'TESTQ'),
                MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_FAIL_IF_QUIESCING | MQSERIES_MQOO_OUTPUT,
                $obj,
                $comp_code,
                $reason);
// $obj now holds the reference to the object (TESTQ)

// setup the message descriptor array. Check MQSeries reference manuals.
    $md = array(
                'Version' => MQSERIES_MQMD_VERSION_1,
                'Expiry' => MQSERIES_MQEI_UNLIMITED,
                'Report' => MQSERIES_MQRO_NONE,
                'MsgType' => MQSERIES_MQMT_DATAGRAM,
                'Format' => MQSERIES_MQFMT_STRING,
                'Priority' => 1,
                'Persistence' => MQSERIES_MQPER_PERSISTENT);

// setup the put message options.
    $pmo = array('Options' => MQSERIES_MQPMO_NEW_MSG_ID|MQSERIES_MQPMO_SYNCPOINT);

// put the message 'Ping' on the queueu.
    mqseries_put($conn, $obj, $md, $pmo, 'Ping', $comp_code, $reason);

    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("put CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
    }

// close the object reference $obj
    mqseries_close($conn, $obj, MQSERIES_MQCO_NONE, $comp_code, $reason);

// disconnect from the queue manager.
    mqseries_disc($conn, $comp_code, $reason);

?>

Veja Também

  • mqseries_conn() - MQSeries MQCONN
  • mqseries_connx() - MQSeries MQCONNX
  • mqseries_open() - MQSeries MQOPEN
  • mqseries_get() - MQSeries MQGET

mqseries_put1
mqseries_set
mqseries Funções


MQSeries MQSET

mqseries_put
mqseries_strerror
mqseries Funções
PHP Manual

mqseries_set

(PECL mqseries >= 0.10.0)

mqseries_set — MQSeries MQSET

Descrição

void mqseries_set ( resource $hconn , resource $hobj , int $selectorcount , array $selectors , int $intattrcount , array $intattrs , int $charattrlength , array $charattrs , resource &$compCode , resource &$reason )

The mqseries_set() (MQSET) call is used to change the attributes of an object represented by a handle. The object must be a queue.

Parâmetros

hConn

Connection handle.

This handle represents the connection to the queue manager.

compCode

Completion code.

reason

Reason code qualifying the compCode.

Valor Retornado

Não há valor retornado.

Veja Também

  • mqseries_inq() - MQSeries MQINQ

mqseries_put
mqseries_strerror
mqseries Funções


Returns the error message corresponding to a result code (MQRC).

mqseries_set
Gopher
mqseries Funções
PHP Manual

mqseries_strerror

(PECL mqseries >= 0.10.0)

mqseries_strerror — Returns the error message corresponding to a result code (MQRC).

Descrição

string mqseries_strerror ( int $reason )

mqseries_strerror() returns the message that correspond to the reason result code.

Parâmetros

reason

Reason code qualifying the compCode.

Valor Retornado

string representation of the reason code message.

Exemplos

Exemplo #1 mqseries_strerror() example

<?php
    if ($comp_code !== MQSERIES_MQCC_OK) {
        printf("open CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
        exit;
    }
?>

O exemplo acima irá imprimir:

Connx CompCode:2 Reason:2059 Text:Queue manager not available for connection.

mqseries_set
Gopher
mqseries Funções


Net Gopher

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic Example
  • Gopher Funções
    • gopher_parsedir — Translate a gopher formatted directory entry into an associative array.
mqseries_strerror
Introdução
Outros Serviços


Introdução

The gopher protocol, as defined by » RFC 1436, is generally considered the ancestor of the modern HTTP protocol. However, gopher was also intended to provide references to non-gopher resources including telnet, wais, nntp, and even http. This extension adds gopher support to PHP's URL Wrappers, and provides a helper function gopher_parsedir() to make sense of gopher formatted directory listings.

Gopher
Instalação/Configuração
Gopher


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Gopher


Instalação

Prerequisite: PHP 4.3.0 or higher.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/net_gopher

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Net_Gopher constants
Constant | Value | Description
GOPHER_DOCUMENT | 0 | Standard text/plain document.
GOPHER_DIRECTORY | 1 | A resource containing a gopher formatted directory listing.
GOPHER_BINHEX | 4 | A BinHex encoded binary file.
GOPHER_DOSBINARY | 5 | A DOS formatted binary archive.
GOPHER_UUENCODED | 6 | A UUEncoded file.
GOPHER_BINARY | 9 | A generic binary file.
GOPHER_INFO | 255 | An Informational entry
GOPHER_HTTP | 254 | A reference to an HTTP resource.
GOPHER_UNKNOWN | -1 | An unrecognized entry.
Tipos Resource
Exemplos
Gopher


Exemplos

Índice

  • Basic Example
Constantes pré-definidas
Basic Example
Gopher


Basic Example

<?php
readfile("gopher://gopher.example.com/somedocument");
?>
Exemplos
Gopher Funções
Exemplos


Gopher Funções

Índice

  • gopher_parsedir — Translate a gopher formatted directory entry into an associative array.
Basic Example
gopher_parsedir
Gopher


Translate a gopher formatted directory entry into an associative array.

Gopher Funções
Network
Gopher Funções
PHP Manual

gopher_parsedir

(PECL net_gopher >= 0.1)

gopher_parsedir — Translate a gopher formatted directory entry into an associative array.

Descrição

array gopher_parsedir ( string $dirent )

gopher_parsedir() parses a gopher formatted directory entry into an associative array.

While gopher returns text/plain documents for actual document requests. A request to a directory (such as /) will return specially encoded series of lines with each line being one directory entry or information line.

Parâmetros

dirent

The directory entry.

Valor Retornado

Returns an associative array whose components are:

  • type - One of the GOPHER_XXX constants.
  • title - The name of the resource.
  • path - The path of the resource.
  • host - The domain name of the host that has this document (or directory).
  • port - The port at which to connect on host.

Upon failure, the additional data entry of the returned array will hold the parsed line.

Exemplos

Exemplo #1 Hypothetical output from gopher://gopher.example.com/

0All about my gopher site.               /allabout.txt               gopher.example.com    70
9A picture of my cat.                    /pics/cat.png               gopher.example.com    70
1A collection of my writings.            /stories                    gopher.example.com    70
hThe HTTP version of this site.          URL:http://www.example.com  gopher.example.com    70
1Mirror of this site in Spain.           /                           gopher.ejemplo.co.es  70
iWelcome to my gopher site.                                          error.host            1
iPlease select one of the options above                              error.host            1
iSend complaints to /dev/null                                        error.host            1
iLong live gopher!                                                   error.host            1

In the example above, the root directory at gopher.example.com knows about one DOCUMENT identified by 0 located at gopher://gopher.example.com:70/allabout.txt. It also knows about two other directory (which have their own listing files) at gopher://gopher.exmaple.com:70/stories and at gopher://gopher.ejemplo.co.es:70/. In addition there is a binary file, a link to an HTTP url, and several informative lines.

By passing each line of the directory listing into gopher_parsedir(), an associative array is formed containing a parsed out version of the data.

Exemplo #2 Using gopher_parsedir()

<?php
$directory = file("gopher://gopher.example.com");

foreach($directory as $dirent) {
    print_r(gopher_parsedir($dirent));
}
?>

O exemplo acima irá imprimir:

Array (
  [type] => 0
  [title] => All about my gopher site.
  [path] => /allabout.txt
  [host] => gopher.example.com
  [port] => 70
)
Array (
  [type] => 9
  [title] => A picture of my cat.
  [path] => /pics/cat.png
  [host] => gopher.example.com
  [port] => 70
)
Array (
  [type] => 1
  [title] => A collection of my writings.
  [path] => /stories
  [host] => gopher.example.com
  [port] => 70
)
Array (
  [type] => 254
  [title] => The HTTP version of this site.
  [path] => URL:http://www.example.com
  [host] => gopher.example.com
  [port] => 70
)
Array (
  [type] => 1
  [title] => Mirror of this site in Spain.
  [path] => /
  [host] => gopher.ejemplo.co.es
  [port] => 70
)
Array (
  [type] => 255
  [title] => Welcome to my gopher site.
  [path] =>
  [host] => error.host
  [port] => 1
)
Array (
  [type] => 255
  [title] => Please select one of the options above.
  [path] =>
  [host] => error.host
  [port] => 1
)
Array (
  [type] => 255
  [title] => Send complaints to /dev/null
  [path] =>
  [host] => error.host
  [port] => 1
)
Array (
  [type] => 255
  [title] => Long live gopher!
  [path] =>
  [host] => error.host
  [port] => 1
)

Gopher Funções
Network
Gopher Funções


Network

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Network
    • checkdnsrr — Check DNS records corresponding to a given Internet host name or IP address
    • closelog — Close connection to system logger
    • define_syslog_variables — Initializes all syslog related variables
    • dns_check_record — Sinônimo de checkdnsrr
    • dns_get_mx — Sinônimo de getmxrr
    • dns_get_record — Fetch DNS Resource Records associated with a hostname
    • fsockopen — Abre um socket de conexão Internet ou de domínio Unix
    • gethostbyaddr — Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
    • gethostbyname — Get the IPv4 address corresponding to a given Internet host name
    • gethostbynamel — Get a list of IPv4 addresses corresponding to a given Internet host name
    • gethostname — Gets the host name
    • getmxrr — Obtém registros MX correspondendo ao nome do host de Internet fornecido.
    • getprotobyname — Get protocol number associated with protocol name
    • getprotobynumber — Get protocol name associated with protocol number
    • getservbyname — Get port number associated with an Internet service and protocol
    • getservbyport — Get Internet service which corresponds to port and protocol
    • header_remove — Remove previously set headers
    • header — Send a raw HTTP header
    • headers_list — Returns a list of response headers sent (or ready to send)
    • headers_sent — Checks if or where headers have been sent
    • inet_ntop — Converts a packed internet address to a human readable representation
    • inet_pton — Converts a human readable IP address to its packed in_addr representation
    • ip2long — Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address
    • long2ip — Converts an (IPv4) Internet network address into a string in Internet standard dotted format
    • openlog — Open connection to system logger
    • pfsockopen — Open persistent Internet or Unix domain socket connection
    • setcookie — Envia um cookie
    • setrawcookie — Send a cookie without urlencoding the cookie value
    • socket_get_status — Sinônimo de stream_get_meta_data
    • socket_set_blocking — Sinônimo de stream_set_blocking
    • socket_set_timeout — Sinônimo de stream_set_timeout
    • syslog — Generate a system log message
gopher_parsedir
Introdução
Outros Serviços


Introdução

Provê várias funções para rede.

Network
Instalação/Configuração
Network


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Network


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração de Rede
Name | Default | Changeable | Changelog
define_syslog_variables | "0" | PHP_INI_ALL |
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

define_syslog_variables boolean

Se define ou não as várias variáveis de syslog (e.g. $LOG_PID, $LOG_CRON, etc.). Desligá-la é uma boa idéia de sábia performance. No tempo de execução, você pode definir estas variáveis chamando define_syslog_variables().

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão define um resource de ponteiro de arquivo retornado pela fsockopen() e pfsockopen().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.

Opções da openlog()
Constante | Descrição
LOG_CONS | se há um erro enquanto enviando dados para o logger do sistema, escreverá diretamente para o console do sistema
LOG_NDELAY | abre a conexão para o logger imediatamente
LOG_ODELAY | (padrão) atrasa a abertura da conexão até a primeira mensagem está logada
LOG_NOWAIT |
LOG_PERROR | exibe a mensagem de log também para o erro padrão
LOG_PID | inclui PID com cada mensagem
Facilidades da openlog()
Constante | Descrição
LOG_AUTH | mensagens de segurança/autorização (usa LOG_AUTHPRIV no lugar em sistemas onde essa constante está definida)
LOG_AUTHPRIV | mensagens de segurança/autorização (privado)
LOG_CRON | clock daemon (cron and at)
LOG_DAEMON | outros daemons de sistema
LOG_KERN | mensagens de kernel
LOG_LOCAL0 ... LOG_LOCAL7 | reservada para uso local, esta não está disponível em Windows
LOG_LPR | line printer subsystem
LOG_MAIL | mail subsystem
LOG_NEWS | USENET news subsystem
LOG_SYSLOG | mensagens geradas internamente por syslogd
LOG_USER | mensagens de nível-usuário genéricas
LOG_UUCP | UUCP subsystem
Prioridades (em ordem decrescente) de syslog()
Constante | Descrição
LOG_EMERG | sistema está inutilizável
LOG_ALERT | ação deve ser tomada imediatamente
LOG_CRIT | condições críticas
LOG_ERR | condições de erro
LOG_WARNING | condições de alertas
LOG_NOTICE | condição normal, mas significativa
LOG_INFO | mensagem informativa
LOG_DEBUG | mensagem de debug-level
Opções da dns_get_record()
Constante | Descrição
DNS_A | Recurso de Endereço IPv4
DNS_MX | Recurso de cambista de Email
DNS_CNAME | Recurso de Alias (Nome Canônico)
DNS_NS | Recurso de Servidor de Nome Autorizado
DNS_PTR | Recurso de Indicador
DNS_HINFO | Recurso de Host Info (Ver IANA's » Nomes de Sistemas Operacionais para o significado destes valores)
DNS_SOA | Início do Recurso de Autoridade
DNS_TXT | Text Resource
DNS_ANY | Qualquer registro de Recurso. Na maioria dos sistemas retorna todos os registros de recursos, entretadno ele não seria confiado para usos críticos. Tente DNS_ALL no lugar.
DNS_AAAA | Recurso de Endereço de IPv6
DNS_ALL | Iterativamente examina o nome do servidor para cada tipo de gravação disponível.
Tipos Resource
Funções da Network
Network


Funções da Network

Índice

  • checkdnsrr — Check DNS records corresponding to a given Internet host name or IP address
  • closelog — Close connection to system logger
  • define_syslog_variables — Initializes all syslog related variables
  • dns_check_record — Sinônimo de checkdnsrr
  • dns_get_mx — Sinônimo de getmxrr
  • dns_get_record — Fetch DNS Resource Records associated with a hostname
  • fsockopen — Abre um socket de conexão Internet ou de domínio Unix
  • gethostbyaddr — Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • gethostbyname — Get the IPv4 address corresponding to a given Internet host name
  • gethostbynamel — Get a list of IPv4 addresses corresponding to a given Internet host name
  • gethostname — Gets the host name
  • getmxrr — Obtém registros MX correspondendo ao nome do host de Internet fornecido.
  • getprotobyname — Get protocol number associated with protocol name
  • getprotobynumber — Get protocol name associated with protocol number
  • getservbyname — Get port number associated with an Internet service and protocol
  • getservbyport — Get Internet service which corresponds to port and protocol
  • header_remove — Remove previously set headers
  • header — Send a raw HTTP header
  • headers_list — Returns a list of response headers sent (or ready to send)
  • headers_sent — Checks if or where headers have been sent
  • inet_ntop — Converts a packed internet address to a human readable representation
  • inet_pton — Converts a human readable IP address to its packed in_addr representation
  • ip2long — Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address
  • long2ip — Converts an (IPv4) Internet network address into a string in Internet standard dotted format
  • openlog — Open connection to system logger
  • pfsockopen — Open persistent Internet or Unix domain socket connection
  • setcookie — Envia um cookie
  • setrawcookie — Send a cookie without urlencoding the cookie value
  • socket_get_status — Sinônimo de stream_get_meta_data
  • socket_set_blocking — Sinônimo de stream_set_blocking
  • socket_set_timeout — Sinônimo de stream_set_timeout
  • syslog — Generate a system log message
Constantes pré-definidas
checkdnsrr
Network


Check DNS records corresponding to a given Internet host name or IP address

Funções da Network
closelog
Funções da Network
PHP Manual

checkdnsrr

(PHP 4, PHP 5)

checkdnsrr — Check DNS records corresponding to a given Internet host name or IP address

Descrição

bool checkdnsrr ( string $host [, string $type = "MX" ] )

Searches DNS for records of type type corresponding to host.

Parâmetros

host

host may either be the IP address in dotted-quad notation or the host name.

type

type may be any one of: A, MX, NS, SOA, PTR, CNAME, AAAA, A6, SRV, NAPTR, TXT or ANY.

Valor Retornado

Returns TRUE if any records are found; returns FALSE if no records were found or if an error occurred.

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows platforms.
5.2.4 | TXT type was added.
5.0.0 | AAAA type was added.

Notas

Nota:

For compatibility with Windows before this was implemented, then try the » PEAR class » Net_DNS.

Veja Também

  • dns_get_record() - Fetch DNS Resource Records associated with a hostname
  • getmxrr() - Obtém registros MX correspondendo ao nome do host de Internet fornecido.
  • gethostbyaddr() - Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • gethostbyname() - Get the IPv4 address corresponding to a given Internet host name
  • gethostbynamel() - Get a list of IPv4 addresses corresponding to a given Internet host name
  • the named(8) manual page

Funções da Network
closelog
Funções da Network


Close connection to system logger

checkdnsrr
define_syslog_variables
Funções da Network
PHP Manual

closelog

(PHP 4, PHP 5)

closelog — Close connection to system logger

Descrição

bool closelog ( void )

closelog() closes the descriptor being used to write to the system logger. The use of closelog() is optional.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • syslog() - Generate a system log message
  • openlog() - Open connection to system logger

checkdnsrr
define_syslog_variables
Funções da Network


Initializes all syslog related variables

closelog
dns_check_record
Funções da Network
PHP Manual

define_syslog_variables

(PHP 4, PHP 5)

define_syslog_variables — Initializes all syslog related variables

Descrição

void define_syslog_variables ( void )

Initializes all variables used in the syslog functions.

Valor Retornado

Não há valor retornado.

Syslog variables
Variable | Constant equal | Meaning | Notes
$LOG_EMERG | LOG_EMERG | System is unusable |
$LOG_ALERT | LOG_ALERT | Immediate action required |
$LOG_CRIT | LOG_CRIT | Critical conditions |
$LOG_ERR | LOG_ERR |  |
$LOG_WARNING | LOG_WARNING |  |
$LOG_NOTICE | LOG_NOTICE |  |
$LOG_INFO | LOG_INFO |  |
$LOG_DEBUG | LOG_DEBUG |  |
$LOG_KERN | LOG_KERN |  |
$LOG_USER | LOG_USER | Genetic user level |
$LOG_MAIL | LOG_MAIL | Log to email |
$LOG_DAEMON | LOG_DAEMON | Other system daemons |
$LOG_AUTH | LOG_AUTH |  |
$LOG_SYSLOG | LOG_SYSLOG |  | Not available on Netware
$LOG_LPR | LOG_LPR |  |
$LOG_NEWS | LOG_NEWS | Usenet new | Not available on HP-UX
$LOG_CRON | LOG_CRON |  | Not available on all platforms
$LOG_AUTHPRIV | LOG_AUTHPRIV |  | Not available on AIX
$LOG_LOCAL0 | LOG_LOCAL0 |  | Not available on Windows and Netware
$LOG_LOCAL1 | LOG_LOCAL1 |  | Not available on Windows and Netware
$LOG_LOCAL2 | LOG_LOCAL2 |  | Not available on Windows and Netware
$LOG_LOCAL3 | LOG_LOCAL3 |  | Not available on Windows and Netware
$LOG_LOCAL4 | LOG_LOCAL4 |  | Not available on Windows and Netware
$LOG_LOCAL5 | LOG_LOCAL5 |  | Not available on Windows and Netware
$LOG_LOCAL6 | LOG_LOCAL6 |  | Not available on Windows and Netware
$LOG_LOCAL7 | LOG_LOCAL7 |  | Not available on Windows and Netware
$LOG_PID | LOG_PID |  |
$LOG_CONS | LOG_CONS |  |
$LOG_ODELAY | LOG_ODELAY |  |
$LOG_NDELAY | LOG_NDELAY |  |
$LOG_NOWAIT | LOG_NOWAIT |  | Not available on BeOS
$LOG_PERROR | LOG_PERROR |  | Not available on AIX
Aviso

Esta função tornou-se OBSOLETA a partir do PHP 5.3.0 e REMOVIDA a partir do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

Exemplos

Exemplo #1 define_syslog_variables() example

<?php
// Check if syslog variables already is defined
if(!get_cfg_var('define_syslog_variables'))
{
    define_syslog_variables();
}

// Open the log
openlog('', $LOG_ODELAY, $LOG_MAIL | $LOG_USER);

// Continue script ...
?>

Histórico

Versão | Descrição
5.3.0 | This function now throws an E_DEPRECATED notice.

Veja Também

  • openlog() - Open connection to system logger
  • syslog() - Generate a system log message
  • closelog() - Close connection to system logger

closelog
dns_check_record
Funções da Network


Sinônimo de checkdnsrr

define_syslog_variables
dns_get_mx
Funções da Network
PHP Manual

dns_check_record

(PHP 5)

dns_check_record — Sinônimo de checkdnsrr()

Descrição

Esta função é um apelido para: checkdnsrr().

define_syslog_variables
dns_get_mx
Funções da Network


Sinônimo de getmxrr

dns_check_record
dns_get_record
Funções da Network
PHP Manual

dns_get_mx

(PHP 5)

dns_get_mx — Sinônimo de getmxrr()

Descrição

Esta função é um apelido para: getmxrr().

dns_check_record
dns_get_record
Funções da Network


Fetch DNS Resource Records associated with a hostname

dns_get_mx
fsockopen
Funções da Network
PHP Manual

dns_get_record

(PHP 5)

dns_get_record — Fetch DNS Resource Records associated with a hostname

Descrição

array dns_get_record ( string $hostname [, int $type = DNS_ANY [, array &$authns [, array &$addtl ]]] )

Fetch DNS Resource Records associated with the given hostname.

Parâmetros

hostname

hostname should be a valid DNS hostname such as "www.example.com". Reverse lookups can be generated using in-addr.arpa notation, but gethostbyaddr() is more suitable for the majority of reverse lookups.

Nota:

Per DNS standards, email addresses are given in user.host format (for example: hostmaster.example.com as opposed to hostmaster@example.com), be sure to check this value and modify if necessary before using it with a functions such as mail().

type

By default, dns_get_record() will search for any resource records associated with hostname. To limit the query, specify the optional type parameter. May be any one of the following: DNS_A, DNS_CNAME, DNS_HINFO, DNS_MX, DNS_NS, DNS_PTR, DNS_SOA, DNS_TXT, DNS_AAAA, DNS_SRV, DNS_NAPTR, DNS_A6, DNS_ALL or DNS_ANY.

Nota:

Because of eccentricities in the performance of libresolv between platforms, DNS_ANY will not always return every record, the slower DNS_ALL will collect all records more reliably.

authns

Passed by reference and, if given, will be populated with Resource Records for the Authoritative Name Servers.

addtl

Passed by reference and, if given, will be populated with any Additional Records.

Valor Retornado

This function returns an array of associative arrays, or FALSE on failure. Each associative array contains at minimum the following keys:

Basic DNS attributes
Attribute | Meaning
host | The record in the DNS namespace to which the rest of the associated data refers.
class | dns_get_record() only returns Internet class records and as such this parameter will always return IN.
type | String containing the record type. Additional attributes will also be contained in the resulting array dependant on the value of type. See table below.
ttl | "Time To Live" remaining for this record. This will not equal the record's original ttl, but will rather equal the original ttl minus whatever length of time has passed since the authoritative name server was queried.

Other keys in associative arrays dependant on 'type'
Type | Extra Columns
A | ip: An IPv4 addresses in dotted decimal notation.
MX | pri: Priority of mail exchanger. Lower numbers indicate greater priority. target: FQDN of the mail exchanger. See also dns_get_mx().
CNAME | target: FQDN of location in DNS namespace to which the record is aliased.
NS | target: FQDN of the name server which is authoritative for this hostname.
PTR | target: Location within the DNS namespace to which this record points.
TXT | txt: Arbitrary string data associated with this record.
HINFO | cpu: IANA number designating the CPU of the machine referenced by this record. os: IANA number designating the Operating System on the machine referenced by this record. See IANA's » Operating System Names for the meaning of these values.
SOA | mname: FQDN of the machine from which the resource records originated. rname: Email address of the administrative contain for this domain. serial: Serial # of this revision of the requested domain. refresh: Refresh interval (seconds) secondary name servers should use when updating remote copies of this domain. retry: Length of time (seconds) to wait after a failed refresh before making a second attempt. expire: Maximum length of time (seconds) a secondary DNS server should retain remote copies of the zone data without a successful refresh before discarding. minimum-ttl: Minimum length of time (seconds) a client can continue to use a DNS resolution before it should request a new resolution from the server. Can be overridden by individual resource records.
AAAA | ipv6: IPv6 address
A6(PHP >= 5.1.0) | masklen: Length (in bits) to inherit from the target specified by chain. ipv6: Address for this specific record to merge with chain. chain: Parent record to merge with ipv6 data.
SRV | pri: (Priority) lowest priorities should be used first. weight: Ranking to weight which of commonly prioritized targets should be chosen at random. target and port: hostname and port where the requested service can be found. For additional information see: » RFC 2782
NAPTR | order and pref: Equivalent to pri and weight above. flags, services, regex, and replacement: Parameters as defined by » RFC 2915.

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows platforms.
5.3.0 | Prior to this release, if the authns parameter was given, the addtl parameter was also required.

Exemplos

Exemplo #1 Using dns_get_record()

<?php
$result = dns_get_record("php.net");
print_r($result);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => MX
            [pri] => 5
            [target] => pair2.php.net
            [class] => IN
            [ttl] => 6765
        )

    [1] => Array
        (
            [host] => php.net
            [type] => A
            [ip] => 64.246.30.37
            [class] => IN
            [ttl] => 8125
        )

)

Exemplo #2 Using dns_get_record() and DNS_ANY

Since it's very common to want the IP address of a mail server once the MX record has been resolved, dns_get_record() also returns an array in addtl which contains associate records. authns is returned as well containing a list of authoritative name servers.

<?php
/* Request "ANY" record for php.net,
   and create $authns and $addtl arrays
   containing list of name servers and
   any additional records which go with
   them */
$result = dns_get_record("php.net", DNS_ANY, $authns, $addtl);
echo "Result = ";
print_r($result);
echo "Auth NS = ";
print_r($authns);
echo "Additional = ";
print_r($addtl);
?>

O exemplo acima irá imprimir algo similar a:

Result = Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => MX
            [pri] => 5
            [target] => pair2.php.net
            [class] => IN
            [ttl] => 6765
        )

    [1] => Array
        (
            [host] => php.net
            [type] => A
            [ip] => 64.246.30.37
            [class] => IN
            [ttl] => 8125
        )

)
Auth NS = Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => remote1.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [1] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => remote2.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [2] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => ns1.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [3] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => ns2.easydns.com
            [class] => IN
            [ttl] => 10722
        )

)
Additional = Array
(
    [0] => Array
        (
            [host] => pair2.php.net
            [type] => A
            [ip] => 216.92.131.5
            [class] => IN
            [ttl] => 6766
        )

    [1] => Array
        (
            [host] => remote1.easydns.com
            [type] => A
            [ip] => 64.39.29.212
            [class] => IN
            [ttl] => 100384
        )

    [2] => Array
        (
            [host] => remote2.easydns.com
            [type] => A
            [ip] => 212.100.224.80
            [class] => IN
            [ttl] => 81241
        )

    [3] => Array
        (
            [host] => ns1.easydns.com
            [type] => A
            [ip] => 216.220.40.243
            [class] => IN
            [ttl] => 81241
        )

    [4] => Array
        (
            [host] => ns2.easydns.com
            [type] => A
            [ip] => 216.220.40.244
            [class] => IN
            [ttl] => 81241
        )

)

Notas

Nota:

For compatibility with versions before this function was implemented on such platforms as Windows, *BSD and MAC. Try the » PEAR class » Net_DNS.

Veja Também

  • dns_get_mx() - Sinônimo de getmxrr
  • dns_check_record() - Sinônimo de checkdnsrr

dns_get_mx
fsockopen
Funções da Network


Abre um socket de conexão Internet ou de domínio Unix

dns_get_record
gethostbyaddr
Funções da Network
PHP Manual

fsockopen

(PHP 4, PHP 5)

fsockopen — Abre um socket de conexão Internet ou de domínio Unix

Descrição

resource fsockopen ( string $hostname [, int $port [, int &$errno [, string &$errstr [, float $timeout ]]]] )

Inicia uma conexão socket para o recurso especificado em hostname.

O PHP suporta alvos na Internet ou domínios Unix, conforme descrito em Lista de Transportes via Socket Suportados. Uma lista dos transportes suportados pode ser buscada utilizando a função stream_get_transports().

Por padrão o socket será aberto em modo de bloqueio. Você pode mudar para o modo desbloqueado utilizando a função stream_set_blocking().

Parâmetros

hostname

Se você compilou com suporte a OpenSSL, você pode colocar os prefixos ssl:// ou tls:// ao hostname para utilizar SSL ou uma conexão cliente TLS sobre TCP/IP para conectar com o host remoto.

port

O número da porta.

errno

Se informado, guarda o número do nível de erro do sistema quando ocorreu a chamada de connect() pelo sistema.

Se o valor retornado em errno é 0 e a função retornou FALSE, é um indicativo que o erro aconteceu antes da chamada de connect(). É bem provável que isso aconteça por um problema de inicialização de socket.

errstr

A mensagem de erro como string.

timeout

Timeout de conexão, em segundos.

Nota:

Se você precisa de um timeout para ler/escrever dados através do socket, use stream_set_timeout(), já que o parâmetro timeout de fsockopen() somente é aplicado na conexão do socket.

Valor Retornado

fsockopen() retorna um ponteiro de arquivo que pode ser usado em em conjunto com outras funções de arquivo (como fgets(), fgetss(), fwrite(), fclose(), e feof()). Se a chamada falhar, ela retornará FALSE.

Histórico

Versão | Descrição
4.3.0 | Adicionado suporte para o parâmetro timeout no win32.
4.3.0 | Suporte a SSL e TLS sobre TCP/IP foi adicionado.
4.0.0 | Suporte a UDP foi adicionado.
3.0.9 | O parâmetro timeout foi adicionado.

Exemplos

Exemplo #1 fsockopen() Exemplo

<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";

    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>

Exemplo #2 Utilizando conexão UDP

O exemplo abaixo mostra como recuperar o valor de dia e hora do serviço UDP (porta 13) da sua própria máquina.

<?php
$fp = fsockopen("udp://127.0.0.1", 13, $errno, $errstr);
if (!$fp) {
    echo "ERRO: $errno - $errstr<br />\n";
} else {
    fwrite($fp, "\n");
    echo fread($fp, 26);
    fclose($fp);
}
?>

Notas

Nota:

Dependedendo do ambiente, o domínio Unix ou o opcional timeout de conexão não estarão disponíveis.

Aviso

Sockets UDP algumas vezes irão parecer que foram abertos sem erro, mesmo que o host remoto seja inalcançável. O erro só se tornará aparente quando você ler ou escrever dados de/para o socket. A razão disso é porque o UDP é um protocolo "sem conexão", o que significa que o sistema operacional não tenta estabelecer uma ligação para o socket até que ele realmente precise enviar ou receber dados.

Nota: Quando informando endereços IPv6 numéricos (por exemplo, fe80::1), você precisa englobar o IP entre colchetes. Exemplo: tcp://[fe80::1]:80.

Veja Também

  • pfsockopen() - Open persistent Internet or Unix domain socket connection
  • stream_set_blocking() - Set blocking/non-blocking mode on a stream
  • stream_set_timeout() - Set timeout period on a stream
  • fgets() - Lê uma linha de um ponteiro de arquivo
  • fgetss() - Ler uma linha de um ponteiro de arquivo e retira as tags HTML
  • fwrite() - Escrita binary-safe em arquivos
  • fclose() - Fecha um ponteiro de arquivo aberto
  • feof() - Testa pelo fim-de-arquivo (eof) em um ponteiro de arquivo
  • A extensão Curl

dns_get_record
gethostbyaddr
Funções da Network


Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.

fsockopen
gethostbyname
Funções da Network
PHP Manual

gethostbyaddr

(PHP 4, PHP 5)

gethostbyaddr — Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.

Descrição

string gethostbyaddr ( string $ip_address )

Retorna o nome do host do host de Internet especificado por ip_address.

Parâmetros

ip_address

O endereço IP do host.

Valor Retornado

Retorna o nome do host ou o não modificado ip_address em falha.

Exemplos

Exemplo #1 Um simples exemplo de gethostbyaddr()

<?php
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);

echo $hostname;
?>

Veja Também

  • gethostbyname() - Get the IPv4 address corresponding to a given Internet host name
  • gethostbynamel() - Get a list of IPv4 addresses corresponding to a given Internet host name

fsockopen
gethostbyname
Funções da Network


Get the IPv4 address corresponding to a given Internet host name

gethostbyaddr
gethostbynamel
Funções da Network
PHP Manual

gethostbyname

(PHP 4, PHP 5)

gethostbyname — Get the IPv4 address corresponding to a given Internet host name

Descrição

string gethostbyname ( string $hostname )

Returns the IPv4 address of the Internet host specified by hostname.

Parâmetros

hostname

The host name.

Valor Retornado

Returns the IPv4 address or a string containing the unmodified hostname on failure.

Exemplos

Exemplo #1 A simple gethostbyname() example

<?php
$ip = gethostbyname('www.example.com');

echo $ip;
?>

Veja Também

  • gethostbyaddr() - Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • gethostbynamel() - Get a list of IPv4 addresses corresponding to a given Internet host name
  • inet_pton() - Converts a human readable IP address to its packed in_addr representation
  • inet_ntop() - Converts a packed internet address to a human readable representation

gethostbyaddr
gethostbynamel
Funções da Network


Get a list of IPv4 addresses corresponding to a given Internet host name

gethostbyname
gethostname
Funções da Network
PHP Manual

gethostbynamel

(PHP 4, PHP 5)

gethostbynamel — Get a list of IPv4 addresses corresponding to a given Internet host name

Descrição

array gethostbynamel ( string $hostname )

Returns a list of IPv4 addresses to which the Internet host specified by hostname resolves.

Parâmetros

hostname

The host name.

Valor Retornado

Returns an array of IPv4 addresses or FALSE if hostname could not be resolved.

Exemplos

Exemplo #1 gethostbynamel() example

<?php
$hosts = gethostbynamel('www.example.com');
print_r($hosts);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 192.0.34.166
)

Veja Também

  • gethostbyname() - Get the IPv4 address corresponding to a given Internet host name
  • gethostbyaddr() - Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • checkdnsrr() - Check DNS records corresponding to a given Internet host name or IP address
  • getmxrr() - Obtém registros MX correspondendo ao nome do host de Internet fornecido.
  • the named(8) manual page

gethostbyname
gethostname
Funções da Network


Gets the host name

gethostbynamel
getmxrr
Funções da Network
PHP Manual

gethostname

(PHP >= 5.3.0)

gethostname — Gets the host name

Descrição

string gethostname ( void )

gethostname() gets the standard host name for the local machine.

Valor Retornado

Returns a string with the hostname on success, otherwise FALSE is returned.

Exemplos

Exemplo #1 A simple gethostname() example

<?php
echo gethostname(); // may output e.g,: sandie

// Or, an option that also works before PHP 5.3
echo php_uname('n'); // may output e.g,: sandie
?>

Veja Também

  • gethostbyname() - Get the IPv4 address corresponding to a given Internet host name
  • gethostbyaddr() - Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • php_uname() - Retorna informação sobre o sistema operacional que o PHP foi construído

gethostbynamel
getmxrr
Funções da Network


Obtém registros MX correspondendo ao nome do host de Internet fornecido.

gethostname
getprotobyname
Funções da Network
PHP Manual

getmxrr

(PHP 4, PHP 5)

getmxrr — Obtém registros MX correspondendo ao nome do host de Internet fornecido.

Descrição

bool getmxrr ( string $hostname , array &$mxhosts [, array &$weight ] )

Pesquisa DNS para registros MX correspondendo a hostname.

Parâmetros

hostname

The Internet host name.

mxhosts

Uma lista dos registros MX encontrados é colocada dentro de um array mxhosts.

weight

Se o array weight é dado, ele será preenchido com a informação de weight colhida.

Valor Retornado

Retorna TRUE se algum registro foi encontrado; retorna FALSE se nenhum registro foi encontrado ou se um erro ocorreu.

Notas

Nota:

Esta função não seria usada para propósitos de verificação de endereços. Apenas os mailexchangers encontrados no DNS são retornados, entretanto, de acordo com » RFC 2821 quando nenhum mail exchangers está listado, hostname seria usado como apenas mail exchanger com uma prioridade 0.

Nota:

Esta função não é implementada em plataformas Windows. Tente a classe » PEAR » Net_DNS.

Veja Também

  • checkdnsrr() - Check DNS records corresponding to a given Internet host name or IP address
  • dns_get_record() - Fetch DNS Resource Records associated with a hostname
  • gethostbyname() - Get the IPv4 address corresponding to a given Internet host name
  • gethostbynamel() - Get a list of IPv4 addresses corresponding to a given Internet host name
  • gethostbyaddr() - Obtém nome do host de Internet correspondendo ao endereçõ de IP fornecido.
  • the named(8) manual page

gethostname
getprotobyname
Funções da Network


Get protocol number associated with protocol name

getmxrr
getprotobynumber
Funções da Network
PHP Manual

getprotobyname

(PHP 4, PHP 5)

getprotobyname — Get protocol number associated with protocol name

Descrição

int getprotobyname ( string $name )

getprotobyname() returns the protocol number associated with the protocol name as per /etc/protocols.

Parâmetros

name

The protocol name.

Valor Retornado

Returns the protocol number or -1 if the protocol is not found.

Exemplos

Exemplo #1 getprotobyname() example

<?php
$protocol = 'tcp';
$get_prot = getprotobyname($protocol);
if ($get_prot == -1) {
    echo 'Invalid Protocol';
} else {
    echo 'Protocol #' . $get_prot;
}
?>

Veja Também

  • getprotobynumber() - Get protocol name associated with protocol number

getmxrr
getprotobynumber
Funções da Network


Get protocol name associated with protocol number

getprotobyname
getservbyname
Funções da Network
PHP Manual

getprotobynumber

(PHP 4, PHP 5)

getprotobynumber — Get protocol name associated with protocol number

Descrição

string getprotobynumber ( int $number )

getprotobynumber() returns the protocol name associated with protocol number as per /etc/protocols.

Parâmetros

number

The protocol number.

Valor Retornado

Returns the protocol name as a string, or FALSE on failure.

Veja Também

  • getprotobyname() - Get protocol number associated with protocol name

getprotobyname
getservbyname
Funções da Network


Get port number associated with an Internet service and protocol

getprotobynumber
getservbyport
Funções da Network
PHP Manual

getservbyname

(PHP 4, PHP 5)

getservbyname — Get port number associated with an Internet service and protocol

Descrição

int getservbyname ( string $service , string $protocol )

getservbyname() returns the Internet port which corresponds to service for the specified protocol as per /etc/services.

Parâmetros

service

The Internet service name, as a string.

protocol

protocol is either "tcp" or "udp" (in lowercase).

Valor Retornado

Returns the port number, or FALSE if service or protocol is not found.

Exemplos

Exemplo #1 getservbyname() example

<?php
$services = array('http', 'ftp', 'ssh', 'telnet', 'imap',
'smtp', 'nicname', 'gopher', 'finger', 'pop3', 'www');

foreach ($services as $service) {
    $port = getservbyname($service, 'tcp');
    echo $service . ": " . $port . "<br />\n";
}
?>

Veja Também

  • getservbyport() - Get Internet service which corresponds to port and protocol
  • » http://www.iana.org/assignments/port-numbers for a complete list of port numbers.

getprotobynumber
getservbyport
Funções da Network


Get Internet service which corresponds to port and protocol

getservbyname
header_remove
Funções da Network
PHP Manual

getservbyport

(PHP 4, PHP 5)

getservbyport — Get Internet service which corresponds to port and protocol

Descrição

string getservbyport ( int $port , string $protocol )

getservbyport() returns the Internet service associated with port for the specified protocol as per /etc/services.

Parâmetros

port

The port number.

protocol

protocol is either "tcp" or "udp" (in lowercase).

Valor Retornado

Returns the Internet service name as a string.

Veja Também

  • getservbyname() - Get port number associated with an Internet service and protocol

getservbyname
header_remove
Funções da Network


Remove previously set headers

getservbyport
header
Funções da Network
PHP Manual

header_remove

(PHP 5 >= 5.3.0)

header_remove — Remove previously set headers

Descrição

void header_remove ([ string $name ] )

Removes an HTTP header previously set using header().

Parâmetros

name

The header name to be removed.

Nota: This parameter is case-insensitive.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Unsetting specific header.

<?php
header("X-Foo: Bar");
header("X-Bar: Baz");
header_remove("X-Foo");
?>

O exemplo acima irá imprimir algo similar a:

X-Bar: Baz

Exemplo #2 Unsetting all previously set headers.

<?php
header("X-Foo: Bar");
header("X-Bar: Baz");
header_remove();
?>

O exemplo acima irá imprimir algo similar a:

Notas

Cuidado

    This function will remove all headers set by PHP,
    including cookies, session and the X-Powered-By headers.

Veja Também

  • header() - Send a raw HTTP header
    •

  • headers_sent() - Checks if or where headers have been sent
    •

getservbyport

header

Funções da Network


Send a raw HTTP header

header_remove
headers_list
Funções da Network
PHP Manual

header

(PHP 4, PHP 5)

header — Send a raw HTTP header

Descrição

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

header() is used to send a raw HTTP header. See the » HTTP/1.1 specification for more information on HTTP headers.

Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include(), or require(), functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.

<html>
<?php
/* This will give an error. Note the output
 * above, which is before the header() call */
header('Location: http://www.example.com/');
?>

Parâmetros

string

The header string.

There are two special-case header calls. The first is a header that starts with the string "HTTP/" (case is not significant), which will be used to figure out the HTTP status code to send. For example, if you have configured Apache to use a PHP script to handle requests for missing files (using the ErrorDocument directive), you may want to make sure that your script generates the proper status code.

<?php
header("HTTP/1.0 404 Not Found");
?>

For FastCGI you must use the following for a 404 response:

<?php
header("Status: 404 Not Found");
?>

The second special case is the "Location:" header. Not only does it send this header back to the browser, but it also returns a REDIRECT (302) status code to the browser unless the 201 or a 3xx status code has already been set.

<?php
header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;
?>

replace

The optional replace parameter indicates whether the header should replace a previous similar header, or add a second header of the same type. By default it will replace, but if you pass in FALSE as the second argument you can force multiple headers of the same type. For example:

<?php
header('WWW-Authenticate: Negotiate');
header('WWW-Authenticate: NTLM', false);
?>

http_response_code

Forces the HTTP response code to the specified value. Note that this parameter only has an effect if the string is not empty.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
4.4.2 and 5.1.2 | This function now prevents more than one header to be sent at once as a protection against header injection attacks.
4.3.0 | The http_response_code parameter was added.
4.0.4 | The replace parameter was added.

Exemplos

Exemplo #1 Download dialog

If you want the user to be prompted to save the data you are sending, such as a generated PDF file, you can use the » Content-Disposition header to supply a recommended filename and force the browser to display the save dialog.

<?php
// We'll be outputting a PDF
header('Content-type: application/pdf');

// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// The PDF source is in original.pdf
readfile('original.pdf');
?>

Exemplo #2 Caching directives

PHP scripts often generate dynamic content that must not be cached by the client browser or any proxy caches between the server and the client browser. Many proxies and clients can be forced to disable caching with:

<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>

Nota:

You may find that your pages aren't cached even if you don't output all of the headers above. There are a number of options that users may be able to set for their browser that change its default caching behavior. By sending the headers above, you should override any settings that may otherwise cause the output of your script to be cached.

Additionally, session_cache_limiter() and the session.cache_limiter configuration setting can be used to automatically generate the correct caching-related headers when sessions are being used.

Notas

Nota:

You can use output buffering to get around this problem, with the overhead of all of your output to the browser being buffered in the server until you send it. You can do this by calling ob_start() and ob_end_flush() in your script, or setting the output_buffering configuration directive on in your php.ini or server configuration files.

Nota:

The HTTP status header line will always be the first sent to the client, regardless of the actual header() call being the first or not. The status may be overridden by calling header() with a new status line at any time unless the HTTP headers have already been sent.

Nota:

There is a bug in Microsoft Internet Explorer 4.01 that prevents this from working. There is no workaround. There is also a bug in Microsoft Internet Explorer 5.5 that interferes with this, which can be resolved by upgrading to Service Pack 2 or later.

Nota: If safe mode is enabled the uid of the script is added to the realm part of the WWW-Authenticate header if you set this header (used for HTTP Authentication).

Nota:

HTTP/1.1 requires an absolute URI as argument to » Location: including the scheme, hostname and absolute path, but some clients accept relative URIs. You can usually use $_SERVER['HTTP_HOST'], $_SERVER['PHP_SELF'] and dirname() to make an absolute URI from a relative one yourself:

<?php
/* Redirect to a different page in the current directory that was requested */
$host  = $_SERVER['HTTP_HOST'];
$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>

Nota:

Session ID is not passed with Location header even if session.use_trans_sid is enabled. It must by passed manually using SID constant.

Veja Também

  • headers_sent() - Checks if or where headers have been sent
  • setcookie() - Envia um cookie
  • The section on HTTP authentication

header_remove
headers_list
Funções da Network


Returns a list of response headers sent (or ready to send)

header
headers_sent
Funções da Network
PHP Manual

headers_list

(PHP 5)

headers_list — Returns a list of response headers sent (or ready to send)

Descrição

array headers_list ( void )

headers_list() will return a list of headers to be sent to the browser / client. To determine whether or not these headers have been sent yet, use headers_sent().

Valor Retornado

Returns a numerically indexed array of headers.

Exemplos

Exemplo #1 Examples using headers_list()

<?php

/* setcookie() will add a response header on its own */
setcookie('foo', 'bar');

/* Define a custom response header
   This will be ignored by most clients */
header("X-Sample-Test: foo");

/* Specify plain text content in our response */
header('Content-type: text/plain');

/* What headers are going to be sent? */
var_dump(headers_list());

?>

O exemplo acima irá imprimir:

array(4) {
  [0]=>
  string(23) "X-Powered-By: PHP/5.1.3"
  [1]=>
  string(19) "Set-Cookie: foo=bar"
  [2]=>
  string(18) "X-Sample-Test: foo"
  [3]=>
  string(24) "Content-type: text/plain"
}

Veja Também

  • headers_sent() - Checks if or where headers have been sent
  • header() - Send a raw HTTP header
  • setcookie() - Envia um cookie
  • apache_response_headers() - Obtêm todos os cabeçalhos da resposta HTTP

header
headers_sent
Funções da Network


Checks if or where headers have been sent

headers_list
inet_ntop
Funções da Network
PHP Manual

headers_sent

(PHP 4, PHP 5)

headers_sent — Checks if or where headers have been sent

Descrição

bool headers_sent ([ string &$file [, int &$line ]] )

Checks if or where headers have been sent.

You can't add any more header lines using the header() function once the header block has already been sent. Using this function you can at least prevent getting HTTP header related error messages. Another option is to use Output Buffering.

Parâmetros

file

If the optional file and line parameters are set, headers_sent() will put the PHP source file name and line number where output started in the file and line variables.

line

The line number where the output started.

Valor Retornado

headers_sent() will return FALSE if no HTTP headers have already been sent or TRUE otherwise.

Histórico

Versão | Descrição
4.3.0 | The optional file and line parameters were added.

Exemplos

Exemplo #1 Examples using headers_sent()

<?php

// If no headers are sent, send one
if (!headers_sent()) {
    header('Location: http://www.example.com/');
    exit;
}

// An example using the optional file and line parameters, as of PHP 4.3.0
// Note that $filename and $linenum are passed in for later use.
// Do not assign them values beforehand.
if (!headers_sent($filename, $linenum)) {
    header('Location: http://www.example.com/');
    exit;

// You would most likely trigger an error here.
} else {

    echo "Headers already sent in $filename on line $linenum\n" .
          "Cannot redirect, for now please click this <a " .
          "href=\"http://www.example.com\">link</a> instead\n";
    exit;
}

?>

Veja Também

  • ob_start() - Ativa o buffer de saída
  • trigger_error() - Gera uma mensagem a nível de usuário de erro/aviso/notícia
  • headers_list() - Returns a list of response headers sent (or ready to send)
  • header() - Send a raw HTTP header for a more detailed discussion of the matters involved.

headers_list
inet_ntop
Funções da Network


Converts a packed internet address to a human readable representation

headers_sent
inet_pton
Funções da Network
PHP Manual

inet_ntop

(PHP 5 >= 5.1.0)

inet_ntop — Converts a packed internet address to a human readable representation

Descrição

string inet_ntop ( string $in_addr )

This function converts a 32bit IPv4, or 128bit IPv6 address (if PHP was built with IPv6 support enabled) into an address family appropriate string representation.

Parâmetros

in_addr

A 32bit IPv4, or 128bit IPv6 address.

Valor Retornado

Returns a string representation of the address or FALSE on failure.

Exemplos

Exemplo #1 inet_ntop() Example

<?php
$packed = chr(127) . chr(0) . chr(0) . chr(1);
$expanded = inet_ntop($packed);

/* Outputs: 127.0.0.1 */
echo $expanded;

$packed = str_repeat(chr(0), 15) . chr(1);
$expanded = inet_ntop($packed);

/* Outputs: ::1 */
echo $expanded;
?>

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows platforms.

Veja Também

  • long2ip() - Converts an (IPv4) Internet network address into a string in Internet standard dotted format
  • ip2long() - Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address
  • inet_pton() - Converts a human readable IP address to its packed in_addr representation

headers_sent
inet_pton
Funções da Network


Converts a human readable IP address to its packed in_addr representation

inet_ntop
ip2long
Funções da Network
PHP Manual

inet_pton

(PHP 5 >= 5.1.0)

inet_pton — Converts a human readable IP address to its packed in_addr representation

Descrição

string inet_pton ( string $address )

This function converts a human readable IPv4 or IPv6 address (if PHP was built with IPv6 support enabled) into an address family appropriate 32bit or 128bit binary structure.

Parâmetros

address

A human readable IPv4 or IPv6 address.

Valor Retornado

Returns the in_addr representation of the given address

Exemplos

Exemplo #1 inet_pton() Example

<?php
$in_addr = inet_pton('127.0.0.1');

$in6_addr = inet_pton('::1');
?>

Histórico

Versão | Descrição
5.3.0 | This function is now available on Windows platforms.

Veja Também

  • ip2long() - Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address
  • long2ip() - Converts an (IPv4) Internet network address into a string in Internet standard dotted format
  • inet_ntop() - Converts a packed internet address to a human readable representation

inet_ntop
ip2long
Funções da Network


Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address

inet_pton
long2ip
Funções da Network
PHP Manual

ip2long

(PHP 4, PHP 5)

ip2long — Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address

Descrição

int ip2long ( string $ip_address )

The function ip2long() generates an IPv4 Internet network address from its Internet standard format (dotted string) representation.

ip2long() will also work with non-complete IP addresses. Read » http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/libs/commtrf2/inet_addr.htm for more info.

Parâmetros

ip_address

A standard format address.

Valor Retornado

Returns the IPv4 address or FALSE if ip_address is invalid.

Histórico

Versão | Descrição
5.2.10 | Prior to this version, ip2long() would sometimes return a valid number even if passed an value which was not an (IPv4) Internet Protocol dotted address.
5.0.0 | Prior to this version, ip2long() returned -1 on failure.

Exemplos

Exemplo #1 ip2long() Example

<?php
$ip = gethostbyname('www.example.com');
$out = "The following URLs are equivalent:<br />\n";
$out .= 'http://www.example.com/, http://' . $ip . '/, and http://' . sprintf("%u", ip2long($ip)) . "/<br />\n";
echo $out;
?>

Exemplo #2 Displaying an IP address

This second example shows how to print a converted address with the printf() function in both PHP 4 and PHP 5:

<?php
$ip   = gethostbyname('www.example.com');
$long = ip2long($ip);

if ($long == -1 || $long === FALSE) {
    echo 'Invalid IP, please try again';
} else {
    echo $ip   . "\n";           // 192.0.34.166
    echo $long . "\n";           // -1073732954
    printf("%u\n", ip2long($ip)); // 3221234342
}
?>

Exemplo #3 IP validation

ip2long() should not be used as the sole form of IP validation. Combine it with long2ip():

<?php
// make sure IPs are valid. also converts a non-complete IP into
// a proper dotted quad as explained below.
$ip = long2ip(ip2long("127.0.0.1")); // "127.0.0.1"
$ip = long2ip(ip2long("10.0.0")); // "10.0.0.0"
$ip = long2ip(ip2long("10.0.256")); // "10.0.1.0"
?>

Notas

Nota:

Because PHP's integer type is signed, and many IP addresses will result in negative integers on 32-bit architectures, you need to use the "%u" formatter of sprintf() or printf() to get the string representation of the unsigned IP address.

Nota:

ip2long() will return FALSE for the IP 255.255.255.255 in PHP 5 <= 5.0.2. It was fixed in PHP 5.0.3 where it returns -1 (same as PHP 4).

Veja Também

  • long2ip() - Converts an (IPv4) Internet network address into a string in Internet standard dotted format
  • sprintf() - Retorna a string formatada

inet_pton
long2ip
Funções da Network


Converts an (IPv4) Internet network address into a string in Internet standard dotted format

ip2long
openlog
Funções da Network
PHP Manual

long2ip

(PHP 4, PHP 5)

long2ip — Converts an (IPv4) Internet network address into a string in Internet standard dotted format

Descrição

string long2ip ( string $proper_address )

The function long2ip() generates an Internet address in dotted format (i.e.: aaa.bbb.ccc.ddd) from the proper address representation.

Parâmetros

proper_address

A proper address representation.

Valor Retornado

Returns the Internet IP address as a string.

Veja Também

  • ip2long() - Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address

ip2long
openlog
Funções da Network


Open connection to system logger

long2ip
pfsockopen
Funções da Network
PHP Manual

openlog

(PHP 4, PHP 5)

openlog — Open connection to system logger

Descrição

bool openlog ( string $ident , int $option , int $facility )

openlog() opens a connection to the system logger for a program.

The use of openlog() is optional. It will automatically be called by syslog() if necessary, in which case ident will default to FALSE.

Parâmetros

ident

The string ident is added to each message.

option

The option argument is used to indicate what logging options will be used when generating a log message.

openlog() Options
Constant | Description
LOG_CONS | if there is an error while sending data to the system logger, write directly to the system console
LOG_NDELAY | open the connection to the logger immediately
LOG_ODELAY | (default) delay opening the connection until the first message is logged
LOG_PERROR | print log message also to standard error
LOG_PID | include PID with each message
You can use one or more of this options. When using multiple options you need to OR them, i.e. to open the connection immediately, write to the console and include the PID in each message, you will use: LOG_CONS | LOG_NDELAY | LOG_PID

facility

The facility argument is used to specify what type of program is logging the message. This allows you to specify (in your machine's syslog configuration) how messages coming from different facilities will be handled.

openlog() Facilities
Constant | Description
LOG_AUTH | security/authorization messages (use LOG_AUTHPRIV instead in systems where that constant is defined)
LOG_AUTHPRIV | security/authorization messages (private)
LOG_CRON | clock daemon (cron and at)
LOG_DAEMON | other system daemons
LOG_KERN | kernel messages
LOG_LOCAL0 ... LOG_LOCAL7 | reserved for local use, these are not available in Windows
LOG_LPR | line printer subsystem
LOG_MAIL | mail subsystem
LOG_NEWS | USENET news subsystem
LOG_SYSLOG | messages generated internally by syslogd
LOG_USER | generic user-level messages
LOG_UUCP | UUCP subsystem

Nota:

LOG_USER is the only valid log type under Windows operating systems

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • syslog() - Generate a system log message
  • closelog() - Close connection to system logger

long2ip
pfsockopen
Funções da Network


Open persistent Internet or Unix domain socket connection

openlog
setcookie
Funções da Network
PHP Manual

pfsockopen

(PHP 4, PHP 5)

pfsockopen — Open persistent Internet or Unix domain socket connection

Descrição

resource pfsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )

This function behaves exactly as fsockopen() with the difference that the connection is not closed after the script finishes. It is the persistent version of fsockopen().

Parâmetros

For parameter information, see the fsockopen() documentation.

Veja Também

  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix

openlog
setcookie
Funções da Network


Envia um cookie

pfsockopen
setrawcookie
Funções da Network
PHP Manual

setcookie

(PHP 4, PHP 5)

setcookie — Envia um cookie

Descrição

bool setcookie ( string $nome [, string $valor [, int $expira [, string $caminho [, string $domínio [, bool $seguro [, bool $somente http ]]]]]] )

A função setcookie() define um cookie para ser enviado juntamente com o resto dos cabeçalhos HTTP. Como outros cabeçalhos (headers), os cookies devem ser enviados antes de qualquer saída do seu script (isso é uma restrição do protocolo). O que quer dizer que você deve colocar chamadas a essa função antes de qualquer saída, incluindo as tags <html> e <head> e também espaços em branco.

Uma vez que o cookie foi setado, ele pode ser acessado através dos arrays $_COOKIE e $HTTP_COOKIE_VARS. Note que as superglobais como $_COOKIE ou $HTTP_COOKIE_VARS estão disponíveis a partir do PHP 4.1.0. Os valores dos cookies também existem na variável $_REQUEST.

Parâmetros

Todos os argumentos, excento o name, são opcionais. Você pode também colocar como argumento uma string vazia ("") para pular o argumento. Por que o argumento expire é um inteiro, ele não pode ser escapado com uma string vazia, por isso utilize um zero (0) no lugar.

Veja a » especificação de cookie do Netscape para ver como cada parâmetro de setcookie() funciona.

nome

O nome do cookie.

valor

O valor do cookie. Esse valor é guardado no computador do cliente; não guarde informação sensível. Supondo que o nome é 'nomedocookie', o valor pode ser lido través de $_COOKIE['nomedocookie']

expira

O tempo para o cookie expirar. Esse valor é uma timestamp Unix, portanto é o número de segundos desde a época (epoch). Em outras palavras, você provavelmente irá utilizar isso com a função time() mais o número de segundos que você quer que ele expire. Ou você pode utilizar a função mktime(). time()+60*60*24*30 irá configurar o cookie para expirar daqui a 30 dias. Se configurado para 0, ou omitido, o cookie irá expirar ao fim da sessao (quando o navegador fechar).

Nota:

Você pode ver que o parâmetro expira recebe uma timestamp Unix, ao contrário do formato de data Wdy, DD-Mon-YYYY HH:MM:SS GMT, isso se dá porque o PHP faz essa conversão internamente.

expira é comparado com a hora do computador do cliente, que pode ser diferente da hora do servidor.

caminho

O caminho no servidor aonde o cookie estará disponível. Se configurado para '/', o cookie estará dosponível para todo o domínio. Se configurado para o diretório '/foo/', o cookie estará disponível apenas dentro do diretório /foo/ e todos os subdiretórios como /foo/bar do domínio. O valor padrão é o diretório atual aonde o cookie está sendo configurado.

domínio

O domínio para qual o domínio estará disponível. Para fazer com que ele esteja disponível para todos os subdomínios de example.com então você deve configurar ele para '.example.com'. O . não é obrigatório mas faz com que seja compatível com mais navegadores. Configurando ele para www.example.com ele fará com que o cookie esteja disponível somente para o subdomínio www. Veja a especificação de 'tail matching' em » spec para maiores detalhes.

seguro

Indica que o cookie só podera ser transimitido sob uma conexão segura HTTPS do cliente. Quando configurado para TRUE. o cookie será enviado somente se uma conexão segura existir. O padrão é FALSE. No lado do servidor, fica por conta do programador enviar esse tipo de cookie somente sob uma conexão segura (ex respeitando $_SERVER["HTTPS"]).

somente http

Quando for TRUE o cookie será acessível somente sob o protocolo HTTP. Isso significa que o cookie não será acessível por linguagens de script, como JavaScript. Essa configuração pode efetivamente ajudar a reduzir ou identificar roubos através de ataques do tipo XSS (entretanto ela não é suportada por todos os browsers). Foi adicionada no PHP 5.2.0. TRUE ou FALSE

Valor Retornado

Se existe saída antes da chamada dessa função, setcookie() irá falhar e retornará FALSE. Se a função setcookie() executar com sucesso, ela retornará TRUE. Isso não quer dizer que o usuário aceitou o cookie.

Exemplos

Alguns exemplos para seguir de como enviar cookies:

Exemplo #1 Exemplo de setcookie() para enviar cookies

<?php
$value = 'alguma coisa de algum lugar';

setcookie("CookieTeste", $value);
setcookie("CookieTeste", $value, time()+3600);  /* expire in 1 hour */
setcookie("CookieTeste", $value, time()+3600, "/~rasmus/", ".example.com", 1);
?>

Note que a porção do valor do cookie será automaticamente codificada com urlencode quando você enviar o cookie, e quando ele for recebido, será automaticamente decodificado e atribuido a uma variável com o mesmo nome do cookie. Se você não quer que isso aconteça, você pode utilizar no lugar a função setrawcookie() se você estiver utilizando o PHP 5. Para ver o conteúdo do nosso cookie de teste em um script, simplesmente utilize um dos exemplos abaixo:

<?php
// Mostra um cookie individual
echo $_COOKIE["CookieTeste"];
echo $HTTP_COOKIE_VARS["CookieTeste"];

// Outra maneira de depurar(debug)/testar é vendo todos os cookies
print_r($_COOKIE);
?>

Exemplo #2 Exemplo de setcookie() para deletar exemplos

Quando estiver deletando um cookie, tenha certeza de que a data de expiração dele está no passado, para acionar o mecanismo de remoção do seu navegador. O exemplo a seguir mostra como deletar os cookies enviados no exemplo anterior:

<?php
// Configura a data de expiração para uma hora atrás
setcookie ("CookieTeste", "", time() - 3600);
setcookie ("CookieTeste", "", time() - 3600, "/~rasmus/", ".example.com", 1);
?>

Exemplo #3 A função setcookie() e arrays

Você pode também enviar cookies de array, utilizando a notação de array no nome dele. Isso tem o efeito de enviar tantos cookies quantos elementos houverem no array, mas quando o cookie for recebido todos os valores serão colocados em um array com o nome do cookie:

<?php
// envia os cookies
setcookie("cookie[tres]", "cookietres");
setcookie("cookie[dois]", "cookiedois);
setcookie("cookie[um]", "cookieum");

// Depois que a página recarregar, mostra eles
if (isset($_COOKIE['cookie'])) {
    foreach ($_COOKIE['cookie'] as $nome => $valor) {
        echo "$nome : $valor <br />\n";
    }
}
?>

O exemplo acima irá imprimir:

tres : cookietres
dois : cookiedois
um : cookieum

Histórico

Versão | Descrição
5.2.0 | O parâmetro httponly foi adicionado.

Notas

Nota:

A partir do PHP 4, você pode utilizar o output buffering para enviar saída antes de chamar essa função, com o custo (overhead) de toda sua saída ser guardada em buffer até que você a envie. Você pode fazer isso chamando ob_start() e ob_end_flush() em seu script, ou configurando a diretiva output_buffering no seu php.ini ou arquivos de configuração do servidor.

Nota:

Se a diretiva register_globals estiver configurada como on então os valores dos cookies serão colocadas em variáveis. Em nossos exemplos acima, a variável $CookieTeste irá existir. É recomendado o uso de $_COOKIE.

Problemas comuns:

  • Os cookies não estarão disponíveis até o próximo carregamento da página a qual o cookie deverá estar visível. Para testar se um cookie foi enviado com sucesso, verifique o cookie no próximo carregamento da página antes que ele expire. O tempo para expirar é configurado via o parâmetro expira. Uma maneira boa de depurar a existência dos cookies é chamando a função print_r($_COOKIE);.
  • Os cookies devem ser deletados com os mesmos parâmetros com os quais foram configurados. Se o argumento valor for uma string vazia, ou FALSE, e todos os outros argumentos forem iguais a chamada anterior de setcookie, então o cookie com o nome especificado será deletado do cliente remoto.
  • Quando você configurar um cookie com o valor FALSE, ele tentará deletar o cookie. Portanto evite utilizar valores booleanos. No lugar, utilize 0 para FALSE e 1 for TRUE.
  • Nomes de cookies podem ser configurados como arrays e estarão disponíves para seus scripts PHP como arrays mas cookies separados serão guardados no sistema do usuário. Considere utilizar explode() para enviar um cookie com nomes e valores múltiplos. Não é recomendado o uso da função serialize() para esse propósito, pois ele pode resultar em furos de segurança.

Várias chamadas para a função setcookie() são feitas na ordem em que são chamadas.

Veja Também

  • header() - Send a raw HTTP header
  • setrawcookie() - Send a cookie without urlencoding the cookie value
  • cookies section
  • » RFC 2109
  • » RFC 2965

pfsockopen
setrawcookie
Funções da Network


Send a cookie without urlencoding the cookie value

setcookie
socket_get_status
Funções da Network
PHP Manual

setrawcookie

(PHP 5)

setrawcookie — Send a cookie without urlencoding the cookie value

Descrição

bool setrawcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

setrawcookie() is exactly the same as setcookie() except that the cookie value will not be automatically urlencoded when sent to the browser.

Parâmetros

For parameter information, see the setcookie() documentation.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
5.2.0 | The httponly parameter was added.

Veja Também

  • setcookie() - Envia um cookie

setcookie
socket_get_status
Funções da Network


Sinônimo de stream_get_meta_data

setrawcookie
socket_set_blocking
Funções da Network
PHP Manual

socket_get_status

(PHP 4, PHP 5)

socket_get_status — Sinônimo de stream_get_meta_data()

Descrição

Esta função é um apelido para: stream_get_meta_data().

setrawcookie
socket_set_blocking
Funções da Network


Sinônimo de stream_set_blocking

socket_get_status
socket_set_timeout
Funções da Network
PHP Manual

socket_set_blocking

(PHP 4, PHP 5)

socket_set_blocking — Sinônimo de stream_set_blocking()

Descrição

Esta função é um apelido para: stream_set_blocking().

socket_get_status
socket_set_timeout
Funções da Network


Sinônimo de stream_set_timeout

socket_set_blocking
syslog
Funções da Network
PHP Manual

socket_set_timeout

(PHP 4, PHP 5)

socket_set_timeout — Sinônimo de stream_set_timeout()

Descrição

Esta função é um apelido para: stream_set_timeout().

socket_set_blocking
syslog
Funções da Network


Generate a system log message

socket_set_timeout
RRD
Funções da Network
PHP Manual

syslog

(PHP 4, PHP 5)

syslog — Generate a system log message

Descrição

bool syslog ( int $priority , string $message )

syslog() generates a log message that will be distributed by the system logger.

For information on setting up a user defined log handler, see the syslog.conf (5) Unix manual page. More information on the syslog facilities and option can be found in the man pages for syslog (3) on Unix machines.

Parâmetros

priority

priority is a combination of the facility and the level. Possible values are:

syslog() Priorities (in descending order)
Constant | Description
LOG_EMERG | system is unusable
LOG_ALERT | action must be taken immediately
LOG_CRIT | critical conditions
LOG_ERR | error conditions
LOG_WARNING | warning conditions
LOG_NOTICE | normal, but significant, condition
LOG_INFO | informational message
LOG_DEBUG | debug-level message

message

The message to send, except that the two characters %m will be replaced by the error message string (strerror) corresponding to the present value of errno.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using syslog()

<?php
// open syslog, include the process ID and also send
// the log to standard error, and use a user defined
// logging mechanism
openlog("myScriptLog", LOG_PID | LOG_PERROR, LOG_LOCAL0);

// some code

if (authorized_client()) {
    // do something
} else {
    // unauthorized client!
    // log the attempt
    $access = date("Y/m/d H:i:s");
    syslog(LOG_WARNING, "Unauthorized client: $access {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
}

closelog();
?>

Notas

On Windows NT, the syslog service is emulated using the Event Log.

Nota:

Use of LOG_LOCAL0 through LOG_LOCAL7 for the facility parameter of openlog() is not available in Windows.

Veja Também

  • openlog() - Open connection to system logger
  • closelog() - Close connection to system logger

socket_set_timeout
RRD
Funções da Network


RRDtool

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Procedural PECL/rrd example
    • OOP PECL/rrd example
  • RRD Funções
    • rrd_create — Creates rrd database file
    • rrd_error — Gets latest error message.
    • rrd_fetch — Fetch the data for graph as array.
    • rrd_first — Gets the timestamp of the first sample from rrd file.
    • rrd_graph — Creates image from a data.
    • rrd_info — Gets information about rrd file
    • rrd_last — Gets unix timestamp of the last sample.
    • rrd_lastupdate — Gets information about last updated data.
    • rrd_restore — Restores the RRD file from XML dump.
    • rrd_tune — Tunes some RRD database file header options.
    • rrd_update — Updates the RRD database.
    • rrd_xport — Exports the information about RRD database.
  • RRDCreator — The RRDCreator class
    • RRDCreator::addArchive — Adds RRA - archive of data values for each data source.
    • RRDCreator::addDataSource — Adds data source definition for RRD database.
    • RRDCreator::__construct — Creates new RRDCreator instance
    • RRDCreator::save — Saves the RRD database to a file
  • RRDGraph — The RRDGraph class
    • RRDGraph::__construct — Creates new RRDGraph instance
    • RRDGraph::save — Saves the result of query into image
    • RRDGraph::saveVerbose — Saves the RRD database query into image and returns the verbose information about generated graph.
    • RRDGraph::setOptions — Sets the options for rrd graph export
  • RRDUpdater — The RRDUpdater class
    • RRDUpdater::__construct — Creates new RRDUpdater instance
    • RRDUpdater::update — Update the RRD database file
syslog
Introdução
Outros Serviços


Introdução

The PECL/rrd extension provides bindings to the RRDtool C library. RRDtool is the open source industry standard, high performance data logging and graphing system for time series data.

The RRDtool homepage is » http://www.mrtg.org/rrdtool/.

RRD
Instalação/Configuração
RRD


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
RRD


Dependências

You need to install librrd first to be able to use PECL/rrd. Most common option is using of librrd-dev package from your favourite linux distro. PECL/rrd is tested with librrd 1.4.3, older or newer versions might or might not work for you. PECL/rrd installation is tested with PHP 5.3.2 or newer.

Aviso

Librrd and hence extension itself aren't mostly thread safe. There are many global and shared states in librrd. It can be dangerous use this extension in multi threaded environments like Apache2 mpm worker. If there are many parallel requests, one request can change some global librrd state of other runnig requests.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/rrd.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
RRD


Exemplos

Índice

  • Procedural PECL/rrd example
  • OOP PECL/rrd example
Constantes pré-definidas
Procedural PECL/rrd example
RRD


Procedural PECL/rrd example

Exemplo #1 Procedural usage of rrd

<?php
$rrdFile = dirname(__FILE__) . "/speed.rrd";

//create rrd file
rrd_create($rrdFile,
 array(
  "--start",920804400,
  "DS:speed:COUNTER:600:U:U",
  "RRA:AVERAGE:0.5:1:24",
  "RRA:AVERAGE:0.5:6:10"
  )
);

//update rrd file
rrd_update($rrdFile,
 array(
  "920804700:12345",
  "920805000:12357"
  )
);

//graph output
rrd_graph(dirname(__FILE__) . "/speed.png",
 array(
  "--start", "920804400",
  "--end", "920808000",
  "--vertical-label", "m/s",
  "DEF:myspeed=$rrdFile:speed:AVERAGE",
  "CDEF:realspeed=myspeed,1000,*",
  "LINE2:realspeed#FF0000"
 )
);
?>

Exemplos
OOP PECL/rrd example
Exemplos


OOP PECL/rrd example

Exemplo #1 OO usage of rrd

<?php
$rrdFile = dirname(__FILE__) . "/speed.rrd";
$outputPngFile = dirname(__FILE__) . "/speed.png";

$creator = new RRDCreator($rrdFile, "now -10d", 500);
$creator->addDataSource("speed:COUNTER:600:U:U");
$creator->addArchive("AVERAGE:0.5:1:24");
$creator->addArchive("AVERAGE:0.5:6:10");
$creator->save();

$updator = new RRDUpdater($rrdFile);
$updator->update(array("speed" => "12345"), "920804700");
$updator->update(array("speed" => "12357"), "920805000");

$graphObj = new RRDGraph($outputPngFile);
$graphObj->setOptions(
 array(
  "--start" => "920804400",
  "--end" => 920808000,
  "--vertical-label" => "m/s",
  "DEF:myspeed=$rrdFile:speed:AVERAGE",
  "CDEF:realspeed=myspeed,1000,*",
  "LINE2:realspeed#FF0000"
 )
);
$graphObj->save();
?>

Procedural PECL/rrd example
RRD Funções
Exemplos


RRD Funções

Índice

  • rrd_create — Creates rrd database file
  • rrd_error — Gets latest error message.
  • rrd_fetch — Fetch the data for graph as array.
  • rrd_first — Gets the timestamp of the first sample from rrd file.
  • rrd_graph — Creates image from a data.
  • rrd_info — Gets information about rrd file
  • rrd_last — Gets unix timestamp of the last sample.
  • rrd_lastupdate — Gets information about last updated data.
  • rrd_restore — Restores the RRD file from XML dump.
  • rrd_tune — Tunes some RRD database file header options.
  • rrd_update — Updates the RRD database.
  • rrd_xport — Exports the information about RRD database.
OOP PECL/rrd example
rrd_create
RRD


Creates rrd database file

RRD Funções
rrd_error
RRD Funções
PHP Manual

rrd_create

(PECL rrd >= 0.9.0)

rrd_create — Creates rrd database file

Descrição

bool rrd_create ( string $filename , array $options )

Creates the rdd database file.

Parâmetros

filename

Filename for newly created rrd file.

options

Options for rrd create - list of strings. See man page of rrd create for whole list of options.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

RRD Funções
rrd_error
RRD Funções


Gets latest error message.

rrd_create
rrd_fetch
RRD Funções
PHP Manual

rrd_error

(PECL rrd >= 0.9.0)

rrd_error — Gets latest error message.

Descrição

string rrd_error ( void )

Returns latest global rrd error message.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Latest error message.

rrd_create
rrd_fetch
RRD Funções


Fetch the data for graph as array.

rrd_error
rrd_first
RRD Funções
PHP Manual

rrd_fetch

(PECL rrd >= 0.9.0)

rrd_fetch — Fetch the data for graph as array.

Descrição

array rrd_fetch ( string $filename , array $options )

Gets data for graph output from RRD database file as array. This function has same result as rrd_graph(), but fetched data are returned as array, no image file is created.

Parâmetros

filename

RRD database file name.

options

Array of options for resolution specification.

Valor Retornado

Returns information about retrieved graph data.

rrd_error
rrd_first
RRD Funções


Gets the timestamp of the first sample from rrd file.

rrd_fetch
rrd_graph
RRD Funções
PHP Manual

rrd_first

(PECL rrd >= 0.9.0)

rrd_first — Gets the timestamp of the first sample from rrd file.

Descrição

int rrd_first ( string $file [, int $raaindex = 0 ] )

Returns the first data sample from the specified RRA of the RRD file.

Parâmetros

file

RRD database file name.

raaindex

The index number of the RRA that is to be examined. Default value is 0.

Valor Retornado

Integer number of unix timestamp, FALSE if some error occurs.

rrd_fetch
rrd_graph
RRD Funções


Creates image from a data.

rrd_first
rrd_info
RRD Funções
PHP Manual

rrd_graph

(PECL rrd >= 0.9.0)

rrd_graph — Creates image from a data.

Descrição

array rrd_graph ( string $filename , array $options )

Creates image for a particular data from RRD file.

Parâmetros

filename

RRD database file name.

options

Options for generating image. See man page of rrd graph for all possible options. All options (data definitions, variable defintions, etc.) are allowed.

Valor Retornado

Array with information about generated image is returned, FALSE when error occurs.

rrd_first
rrd_info
RRD Funções


Gets information about rrd file

rrd_graph
rrd_last
RRD Funções
PHP Manual

rrd_info

(PECL rrd >= 0.9.0)

rrd_info — Gets information about rrd file

Descrição

array rrd_info ( string $filename )

Returns information about particular RRD database file.

Parâmetros

file

RRD database file name.

Valor Retornado

Array with information about requsted RRD file, FALSE when error occurs.

rrd_graph
rrd_last
RRD Funções


Gets unix timestamp of the last sample.

rrd_info
rrd_lastupdate
RRD Funções
PHP Manual

rrd_last

(PECL rrd >= 0.9.0)

rrd_last — Gets unix timestamp of the last sample.

Descrição

int rrd_last ( string $filename )

Returns the UNIX timestamp of the most recent update of the RRD database.

Parâmetros

filename

RRD database file name.

Valor Retornado

Integer as unix timestamp of the most recent data from the RRD database.

rrd_info
rrd_lastupdate
RRD Funções


Gets information about last updated data.

rrd_last
rrd_restore
RRD Funções
PHP Manual

rrd_lastupdate

(PECL rrd >= 0.9.0)

rrd_lastupdate — Gets information about last updated data.

Descrição

array rrd_lastupdate ( string $filename )

Gets array of the UNIX timestamp and the values stored for each date in the most recent update of the RRD database file.

Parâmetros

file

RRD database file name.

Valor Retornado

Array of information about last update, FALSE when error occurs.

rrd_last
rrd_restore
RRD Funções


Restores the RRD file from XML dump.

rrd_lastupdate
rrd_tune
RRD Funções
PHP Manual

rrd_restore

(PECL rrd >= 0.9.0)

rrd_restore — Restores the RRD file from XML dump.

Descrição

bool rrd_restore ( string $xml_file , string $rrd_file [, array $options ] )

Restores the RRD file from the XML dump.

Parâmetros

xml_file

XML filename with the dump of the original RRD database file.

rrd_file

Restored RRD database file name.

options

Array of options for restoring. See man page for rrd restore.

Valor Retornado

Returns TRUE on success, FALSE otherwise.

rrd_lastupdate
rrd_tune
RRD Funções


Tunes some RRD database file header options.

rrd_restore
rrd_update
RRD Funções
PHP Manual

rrd_tune

(PECL rrd >= 0.9.0)

rrd_tune — Tunes some RRD database file header options.

Descrição

bool rrd_tune ( string $filename , array $options )

Change some options in the RRD dabase header file. E.g. renames the source for the the data etc.

Parâmetros

filename

RRD database file name.

options

Options with RRD database file properties which will be changed. See rrd tune man page for details.

Valor Retornado

Returns TRUE on success, FALSE otherwise.

rrd_restore
rrd_update
RRD Funções


Updates the RRD database.

rrd_tune
rrd_xport
RRD Funções
PHP Manual

rrd_update

(PECL rrd >= 0.9.0)

rrd_update — Updates the RRD database.

Descrição

bool rrd_update ( string $filename , array $options )

Updates the RRD database file. The input data is time interpolated according to the properties of the RRD database file.

Parâmetros

filename

RRD database file name. This database will be updated.

options

Options for updating the RRD database. This is list of strings. See man page of rrd update for whole list of options.

Valor Retornado

Returns TRUE on success, FALSE when error occurs.

rrd_tune
rrd_xport
RRD Funções


Exports the information about RRD database.

rrd_update
RRDCreator
RRD Funções
PHP Manual

rrd_xport

(PECL rrd >= 0.9.0)

rrd_xport — Exports the information about RRD database.

Descrição

array rrd_xport ( array $options )

Exports the information about RRD database file. This data can be converted to XML file via user space PHP script and then restored back as RRD database file.

Parâmetros

options

Array of options for the export, see rrd xport man page.

Valor Retornado

Array with information about RRD database file, FALSE when error occurs.

rrd_update
RRDCreator
RRD Funções


The RRDCreator class

Introdução

Class for creation of RRD database file.

Sinopse da classe

RRDCreator {
/* Methods */
public void addArchive ( string $description )
public void addDataSource ( string $description )
public void __construct ( string $path [, string $startTime [, int $step = 0 ]] )
public bool save ( void )
}

Índice

  • RRDCreator::addArchive — Adds RRA - archive of data values for each data source.
  • RRDCreator::addDataSource — Adds data source definition for RRD database.
  • RRDCreator::__construct — Creates new RRDCreator instance
  • RRDCreator::save — Saves the RRD database to a file
rrd_xport
RRDCreator::addArchive
RRD


Adds RRA - archive of data values for each data source.

RRDCreator
RRDCreator::addDataSource
RRDCreator
PHP Manual

RRDCreator::addArchive

(PECL rrd >= 0.9.0)

RRDCreator::addArchive — Adds RRA - archive of data values for each data source.

Descrição

public void RRDCreator::addArchive ( string $description )

Adds RRA definition by description of archive. Archive consists of a number of data values or statistics for each of the defined data-sources (DS). Data sources are defined by method RRDCreator::addDataSource(). You need call this method for each requested archive.

Parâmetros

description

Definition of archive - RRA. This has same format as RRA definition in rrd create command. See man page of rrd create for more details.

Valor Retornado

Não há valor retornado.

RRDCreator
RRDCreator::addDataSource
RRDCreator


Adds data source definition for RRD database.

RRDCreator::addArchive
RRDCreator::__construct
RRDCreator
PHP Manual

RRDCreator::addDataSource

(PECL rrd >= 0.9.0)

RRDCreator::addDataSource — Adds data source definition for RRD database.

Descrição

public void RRDCreator::addDataSource ( string $description )

RRD can accept input from several data sources (DS), e.g incomming and outgoing traffic. This method adds data source by description. You need call this method for each data source.

Parâmetros

description

Definition of data source - DS. This has same format as DS definition in rrd create command. See man page of rrd create for more details.

Valor Retornado

Não há valor retornado.

RRDCreator::addArchive
RRDCreator::__construct
RRDCreator


Creates new RRDCreator instance

RRDCreator::addDataSource
RRDCreator::save
RRDCreator
PHP Manual

RRDCreator::__construct

(PECL rrd >= 0.9.0)

RRDCreator::__construct — Creates new RRDCreator instance

Descrição

public void RRDCreator::__construct ( string $path [, string $startTime [, int $step = 0 ]] )

Creates new RRDCreator instance.

Parâmetros

path

Path for newly created RRD database file.

startTime

Time for the first value in RRD database. Parameter supports all formats which are supported by rrd create call.

intstep

Base interval in seconds with which data will be fed into the RRD database.

Valor Retornado

Não há valor retornado.

RRDCreator::addDataSource
RRDCreator::save
RRDCreator


Saves the RRD database to a file

RRDCreator::__construct
RRDGraph
RRDCreator
PHP Manual

RRDCreator::save

(PECL rrd >= 0.9.0)

RRDCreator::save — Saves the RRD database to a file

Descrição

public bool RRDCreator::save ( void )

Saves the RRD database into file, which name is defined by RRDCreator::__construct().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

RRDCreator::__construct
RRDGraph
RRDCreator


The RRDGraph class

Introdução

Class for exporting data from RRD database to image file.

Sinopse da classe

RRDGraph {
/* Methods */
public void __construct ( string $path )
public array save ( void )
public array saveVerbose ( void )
public void setOptions ( array $options )
}

Índice

  • RRDGraph::__construct — Creates new RRDGraph instance
  • RRDGraph::save — Saves the result of query into image
  • RRDGraph::saveVerbose — Saves the RRD database query into image and returns the verbose information about generated graph.
  • RRDGraph::setOptions — Sets the options for rrd graph export
RRDCreator::save
RRDGraph::__construct
RRD


Creates new RRDGraph instance

RRDGraph
RRDGraph::save
RRDGraph
PHP Manual

RRDGraph::__construct

(PECL rrd >= 0.9.0)

RRDGraph::__construct — Creates new RRDGraph instance

Descrição

public void RRDGraph::__construct ( string $path )

Creates new RRDGraph instance. This instance is responsible for rendering the result of RRD database query into image.

Parâmetros

path

Full path for the newly created image.

Valor Retornado

Não há valor retornado.

RRDGraph
RRDGraph::save
RRDGraph


Saves the result of query into image

RRDGraph::__construct
RRDGraph::saveVerbose
RRDGraph
PHP Manual

RRDGraph::save

(PECL rrd >= 0.9.0)

RRDGraph::save — Saves the result of query into image

Descrição

public array RRDGraph::save ( void )

Saves the result of RRD database query into image defined by RRDGraph::__construct().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Array with information about generated image is returned, FALSE if error occurs.

RRDGraph::__construct
RRDGraph::saveVerbose
RRDGraph


Saves the RRD database query into image and returns the verbose information about generated graph.

RRDGraph::save
RRDGraph::setOptions
RRDGraph
PHP Manual

RRDGraph::saveVerbose

(PECL rrd >= 0.9.0)

RRDGraph::saveVerbose — Saves the RRD database query into image and returns the verbose information about generated graph.

Descrição

public array RRDGraph::saveVerbose ( void )

Saves the RRD database query into image file defined by method RRDGraph::__construct() and returns the verbose information about generated graph, if "-" is used as image filename, image data are also returned in result array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Array with detailed information about generated image is returned, optionally with image data, FALSE if error occurs.

RRDGraph::save
RRDGraph::setOptions
RRDGraph


Sets the options for rrd graph export

RRDGraph::saveVerbose
RRDUpdater
RRDGraph
PHP Manual

RRDGraph::setOptions

(PECL rrd >= 0.9.0)

RRDGraph::setOptions — Sets the options for rrd graph export

Descrição

public void RRDGraph::setOptions ( array $options )

Parâmetros

options

List of options for the image generation from the RRD database file. It can be list of strings or list of strings with keys for better readability. Read the rrd graph man pages for list of available options.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 RRDGraph::setOptions() examples

<?php
$graphObj->setOptions(array(
        "--start" => "920804400",
      "--end" => 920808000,
    "--vertical-label" => "m/s",
    "DEF:myspeed=$rrdFile:speed:AVERAGE",
    "CDEF:realspeed=myspeed,1000,*",
    "LINE2:realspeed#FF0000"
));
?>

RRDGraph::saveVerbose
RRDUpdater
RRDGraph


The RRDUpdater class

Introdução

Class for updating RDD database file.

Sinopse da classe

RRDUpdater {
/* Methods */
public void __construct ( string $path )
public bool update ( array $values [, string $time = time() ] )
}

Índice

  • RRDUpdater::__construct — Creates new RRDUpdater instance
  • RRDUpdater::update — Update the RRD database file
RRDGraph::setOptions
RRDUpdater::__construct
RRD


Creates new RRDUpdater instance

RRDUpdater
RRDUpdater::update
RRDUpdater
PHP Manual

RRDUpdater::__construct

(PECL rrd >= 0.9.0)

RRDUpdater::__construct — Creates new RRDUpdater instance

Descrição

public void RRDUpdater::__construct ( string $path )

Creates new RRDUpdater instance. This instance is responsible for updating the RRD database file.

Parâmetros

path

Filesystem path for RRD database file, which will be updated.

Valor Retornado

Não há valor retornado.

RRDUpdater
RRDUpdater::update
RRDUpdater


Update the RRD database file

RRDUpdater::__construct
SAM
RRDUpdater
PHP Manual

RRDUpdater::update

(PECL rrd >= 0.9.0)

RRDUpdater::update — Update the RRD database file

Descrição

public bool RRDUpdater::update ( array $values [, string $time = time() ] )

Updates the RRD file defined via RRDUpdater::__construct(). The file is updated with a specific values.

Parâmetros

values

Data for update. Key is data source name.

time

Time value for updating the RRD with a particulat data. Default value is current time.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Throws a Exception on error.

Exemplos

Exemplo #1 RRDUpdater::update() examples

<?php
$updator = new RRDUpdater("speed.rrd");
//updates the data source "speed" with value "12411"
//for time defined by timestamp "920807700"
$updator->update(array("speed" => "12411"), "920807700");
?>

RRDUpdater::__construct
SAM
RRDUpdater


Simple Asynchronous Messaging

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Connections
    • Messages
    • Messaging operations
    • Publish/Subscribe and subscriptions to topics
    • Error handling
  • SAM Funções
    • SAMConnection->commit — Commits (completes) the current unit of work.
    • SAMConnection->connect — Establishes a connection to a Messaging Server
    • SAMConnection->__construct — Creates a new connection to a Messaging Server
    • SAMConnection->disconnect — Disconnects from a Messaging Server
    • SAMConnection->errno — Contains the unique numeric error code of the last executed SAM operation.
    • SAMConnection->error — Contains the text description of the last failed SAM operation.
    • SAMConnection->isConnected — Queries whether a connection is established to a Messaging Server
    • SAMConnection->peek — Read a message from a queue without removing it from the queue.
    • SAMConnection->peekAll — Read one or more messages from a queue without removing it from the queue.
    • SAMConnection->receive — Receive a message from a queue or subscription.
    • SAMConnection->remove — Remove a message from a queue.
    • SAMConnection->rollback — Cancels (rolls back) an in-flight unit of work.
    • SAMConnection->send — Send a message to a queue or publish an item to a topic.
    • SAMConnection::setDebug — Turn on or off additional debugging output.
    • SAMConnection->subscribe — Create a subscription to a specified topic.
    • SAMConnection->unsubscribe — Cancel a subscription to a specified topic.
    • SAMMessage->body — The body of the message.
    • SAMMessage->__construct — Creates a new Message object
    • SAMMessage->header — The header properties of the message.
RRDUpdater::update
Introdução
Outros Serviços


Introdução

This extension provides access to the functionality of messaging and queueing systems, such as the IBM WebSphere MQSeries family of products, from PHP scripts. The interface is designed to make it extremely simple to do the more commonly required tasks such as deliver simple text messages to queues while still allowing skilled users to do more complex messaging operations. For many users the complexities of setting up numerous options can be simply ignored.

The SAM extension is a framework that provides a very simple API that can be used to access a number of messaging middleware systems. Currently the package includes built-in support for the MQTT (MQ Telemetry Transport) messaging protocol and support for the IBM Messaging and Queuing middleware products. SAM is designed to be readily extended to support other messaging systems and extension modules may be written in C or PHP.

SAM
Instalação/Configuração
SAM


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SAM


Dependências

The SAM extension interfaces to the IBM Messaging and Queuing middleware products using a set of libraries and some client side code referred to as XMS. This package is available as a free download in the guise of IBM support pack IA94. There is a description of this package and download links in the article » Introducing XMS - The IBM Message Service API.

If you intend to use SAM to access the Messaging and Queuing infrastructure within WebSphere MQ then you will also need to have installed a local MQ queue manager or installed the WebSphere MQ clients package. The clients package is freely available as a support pack (» MQC6).

If you are only aiming to experiment with sending messages to and from WebSphere Application Server queues using the WebSphere Platform Messaging protocol (WPM) then you do not need to install the MQC6 package.

After installing these packages you will need to ensure the XMS binary and, if you are using it, the MQ client bin directory are included in the PATH environment variable so that Apache and PHP can find the dependent .DLLs/libraries.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/sam.

The SAM framework and MQTT support can be built and used without any other prerequisites. Support for protocols other than MQTT is provided via a set of libraries and some client side code referred to as XMS.

If you only intend to use the built-in MQTT support then you can build and configure SAM as an extension or simply refer to php_sam.php with a require() or require_once() clause in your PHP script. In this case you need only install the code without building the extension using the pear installer:

pecl install -B SAM

Linux installation steps

The sam extension is supplied as a PECL module, which you should be able to download and install in one step as follows:

pecl install sam
(Depending on your php environment, you will probably need to be root to do this.)

Make sure that the module is loaded by PHP, by adding following line to php.ini:

extension=sam.so
If you intend to use the XMS support to access the IBM Messaging and Queuing family you must also enable the SAM XMS extension.
extension=sam_xms.so

If you cannot use the PEAR installer, you can download the extension and build it manually:

pear download sam          #downloads sam-<version>.tgz
tar -xzf sam-<version>.tgz
cd sam-<version>
phpize
./configure
make
make install               #you may need to be root for this step

To work with the very latest source, you'll need to extract it from SVN and build manually as above.

Windows installation steps

You will probably need to build the sam extension for Windows as there are only a limited range of pre-built binaries available from the SAM website. The extension can be built using the standard Windows extension build procedures.

You will need the PHP source tree for the version of PHP you wish to build the SAM extension against which you can obtain from php.net. This should be unpacked into a working directory of your choice.

You will also need the libraries and headers used by PHP extensions available from http://www.php.net/extra/win32build.zip and this should be unzipped so that is in your working directory.

You should have something like:

c:\php-build\-
              |
              |---php-5.0.5--|---build
              |              |---ext
              |              |--- ...
              |
              |---win32build--|---bin
                              |---include
                              |---lib

You will need a compiler such as the free version of Visual Studio C++ Express from the Microsoft web site. Also you need the Microsoft SDK Microsoft Windows Platform which again can be downloaded from the Microsoft web site.

Obtain the SAM extension source using pear (pecl download sam) or by using SVN and copy the files to a new "sam" directory under the "ext" directory in your PHP source tree.

To build the extension open a build environment window by going to the start

menu->all programs->microsoft platform SDK for windows->
open build environment window->windows 200 build environment->
set windows 2000 build environment (retail)

This should open a command prompt with all the environment variables set up to access the platform SDK etc. You then need to set the environment variables for Visual Studio by issuing the command vcvars32.bat in the window.

Change directory to your working directory e.g. cd c:\php-build. Then make sure the win32build tools are accessible by adding them to the PATH environment variable:

set PATH=..\win32build\bin;%PATH%

Run the buildconf.bat command. This should rebuild the configure.js file.

Run the cscript command with the appropriate options. To build just the SAM extension framework and MQTT support use:

cscript /nologo configure.js --with-sam
To build the SAM framework and the XMS support use:
cscript /nologo configure.js --with-sam --with-sam_xms="c:\program files\ibm\xms"

The additional parameter passed for sam_xms is the installation path to the XMS libraries and runtime that were installed as described under prerequisites at the top of this page.

You can specify whatever other cscript parameters you require to include or exclude items from the php build or select options.

Assuming all has gone well so far you can now finally run a make for the SAM framework!

nmake php_sam.dll
Also if you are using the XMS support you must make the sam_xms extensions:
nmake php_sam_xms.dll

If you have used Visual Studio 2005 to build the DLLs please see below for additional steps that must be carried out before proceeding further.

The DLLs created (php_sam.dll and optionally php_sam_xms.dll) can now be copied to the subdirectory appropriate for your PHP set-up. Make sure that the module(s) are loaded by PHP, by adding following line to php.ini:

extension=php_sam.dll
If you intend to use the XMS support to access the IBM Messaging and Queuing family you must also enable the SAM XMS extension.
extension=php_sam_xms.dll

Additional steps for Visual Studio 2005

If you build the SAM extension with the Microsoft Visual Studio 2005 compiler and tools you need to perform an additional step in the build process to ensure the php_sam.dll is able to link with the C runtime libraries at runtime. This step includes the dependancy manifest into the DLL. Switch to the directory where the php_sam.dll has been generated (usually Release_TS or Debug_TS below the php source directory) and issue the following magic incantation:

mt.exe -manifest php_sam.dll.manifest -outputresource:php_sam.dll;2
If you are using the XMS capabilities you will need to do the same with the SAM XMS DLL:
mt.exe -manifest php_sam_xms.dll.manifest -outputresource:php_sam_xms.dll;2

If you build the SAM extension using the compiler and libraries from Microsoft Visual Studio 2005 you will also need to ensure that the runtime components are installed on the system on which you intend to use SAM. This can be accomplished by installing Visual Studio 2005 or by using the freely distributable » runtime package.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

Protocol support and mapping

The SAM framework can be extended to support other messaging protocols and connection mechanisms. To add support for a new protocol or connection library a support class has to be defined, either as a C extension or as a PHP script, and a "factory" script must be created. The support class must implement all the methods of the SAMConnection class though it should not inherit from SAMConnection. The factory script will be called by the SAM framework to create an instance of the implemented class. The way SAM chooses which factory to call is based on the protocol specified as the first parameter of the "connect" call.

By default the built-in MQTT support will be used if a connect call specifies a protocol of SAM_MQTT ("mqtt"), for any other protocol SAM will attempt to use the XMS support extension. To add support for additional protocols or to modify the default behavior entries may be added to php.ini in the [sam] section. The default mapping is equivalent to the following entries:

[sam]
sam.factory.mqtt=mqtt
sam.factory.wmq=xms
sam.factory.wmq:client=xms
sam.factory.wmq:bindings=xms
sam.factory.wpm=xms
sam.factory.rtt=xms
As can be seen from these examples the entries take the form of "sam.factory.pppp=xxx" where pppp is the protocol string specified on the connect call and xxx is a factory suffix. Note: SAM defines constants for these protocol strings such that SAM_WMQ=wmq, SAM_WPM=wpm, SAM_RTT=rtt, SAM_MQTT=mqtt, etc.

When identifying the support code to use on a connect call SAM looks up the protocol name in the php.ini entries and then invokes a factory script named sam_factory_xxx.php. If no entry is found the support will default to XMS.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SAM_AUTO (string)
Automatic behaviour
SAM_BOOLEAN (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_BUS (string)
Connect attribute used to set the name of the enterprise service bus to connect to.
SAM_BYTE (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_BYTES (string)
Message body type descriptor.
SAM_CORRELID (string)
Attribute used on receive, send and remove requests to identify specific messages.
SAM_DELIVERYMODE (string)
Message header property.
SAM_DOUBLE (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_ENDPOINTS (string)
Connect attribute used to define the possible endpoints to connect to.
SAM_FLOAT (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_HOST (string)
Connect attribute used to set the hostname of the required messaging server.
SAM_INT (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_LONG (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_MANUAL (string)
Manual (script controlled) behaviour
SAM_MESSAGEID (string)
Attribute used on receive and remove requests to identify specific messages.
SAM_MQTT (string)
Connect protocol definition for selecting the MQTT (MQ Telemetry Transport) protocol.
SAM_MQTT_CLEANSTART (bool)
Optional connect option to indicate to an MQTT server that all previous connection data for this client should be removed and that subscriptions should be deleted when the client disconnects explicitly or unexpectedly.
SAM_NON_PERSISTENT (string)
Connect attribute value used to request messages are not made persistent on the messaging server.
SAM_PASSWORD (string)
Connect attribute used to define the password to be used for the user account being used to connect to a messaging server that requires authorisation for connections.
SAM_PERSISTENT (string)
Connect attribute value used to request messages are made persistent on the messaging server to protect against loss of messages in the event of failure.
SAM_PORT (string)
Connect attribute used to set the port number on which to communicate with the messaging server.
SAM_PRIORITY (string)
Option name used on send requests to specify a delivery priority value.
SAM_REPLY_TO (string)
Message property used to specify the queue identity on to which the script expects response or reply messages to be posted.
SAM_RTT (string)
Connect protocol definition for selecting the IBM Realtime Transport protocol for communication with a business integration messaging server.
SAM_STRING (string)
Type specifier used when setting properties on SAM_Message objects.
SAM_TARGETCHAIN (string)
Connection attribute used to set the required target chain identifier.
SAM_TEXT (string)
Message body type descriptor.
SAM_TIMETOLIVE (string)
Message send option name used to specify the length of time a message should be retained in milliseconds.
SAM_TRANSACTIONS (string)
Connection attribute used to set required transactional behaviour. May be set to SAM_AUTO (default) or SAM_MANUAL.
SAM_USERID (string)
Connect attribute used to define the account to being used to connect to a messaging server that requires authorisation for connections.
SAM_WAIT (string)
Receive property used to specify the wait timeout to be used when receiving a message from a queue or subscription.
SAM_WMQ (string)
Connect protocol definition for selecting the IBM WebSphere MQSeries protocol for communication with the desired messaging server.
SAM_WMQ_BINDINGS (string)
Connect protocol definition for selecting the IBM WebSphere MQSeries protocol for communication with a local messaging server.
SAM_WMQ_CLIENT (string)
Connect protocol definition for selecting the IBM WebSphere MQSeries protocol for communication with a remote messaging server.
SAM_WMQ_TARGET_CLIENT (string)
Option name used on send requests to specify the target client mode. This can either be default to 'jms' or 'mq'. The default is 'jms' which means an RFH2 header is sent with the message whereas the 'mq' setting means no RFH2 is included.
SAM_WPM (string)
Connect protocol definition for selecting the IBM WebSphere Platform Messaging protocol for communication with a WebSphere Application Server messaging server.
Tipos Resource
Exemplos
SAM


Exemplos

Índice

  • Connections
  • Messages
  • Messaging operations
  • Publish/Subscribe and subscriptions to topics
  • Error handling
Constantes pré-definidas
Connections
SAM


Connections

In order to perform any messaging and queueing functions a connection must be established with a messaging server by creating a SAMConnection object and calling its "connect" method, with a set of connection properties, to connect the PHP script to the messaging server. Until such time as the SAMConnection object is destroyed the connection will be maintained and available for use. All SAMConnection objects are destroyed when the PHP script exits.

A set of default properties may be used in connecting to a messaging server but as a minimum the PHP script must specify a protocol to be used.

Exemplo #1 Creating a connection and connecting to a remote WebSphere MQSeries Messaging Server

<?php
$conn = new SAMConnection();
$conn->connect(SAM_WMQ, array(SAM_HOST => 'myhost.mycompany.com',
                              SAM_PORT => 1506,
                              SAM_BROKER => 'mybroker'));
?>

Exemplo #2 Creating a connection and connecting to a remote WebSphere Application Server

<?php
$conn = new SAMConnection();
$conn->connect(SAM_WPM, array(SAM_ENDPOINTS => 'localhost:7278:BootstrapBasicMessaging',
                              SAM_BUS => 'Bus1',
                              SAM_TARGETCHAIN => 'InboundBasicMessaging'));
?>

Exemplo #3 Creating a connection and connecting to an MQTT server

<?php
$conn = new SAMConnection();
$conn->connect(SAM_MQTT, array(SAM_HOST => 'myhost.mycompany.com',
                               SAM_PORT => 1883));
?>

Exemplos
Messages
Exemplos


Messages

Messages sent to and received from queues are represented by the SAMMessage object. The SAMMessage object encapsulates the body of the message (if one exists) and the header properties associated with the message. A SAMMessage object is either supplied as a parameter to a messaging operation or returned as a result.

Exemplo #1 Creating a message with a simple text body

<?php
$msg = new SAMMessage('This is a simple text message');
?>

Messages may have header properties associated with them that provide control over the transport of the message or further information to the receiving application. By default message properties are delivered to the underlying messaging system as strings and in this case they may be set with the following simple syntax:

Exemplo #2 Setting a text format property using the default syntax

<?php
$msg->header->myPropertyName = 'textData';
?>

If it is desired to pass type information an alternative syntax may be used where the value and the type hint are passed in an associative array:

Exemplo #3 Setting a property using a type hint

<?php
$msg->header->myPropertyName = array(3.14159, SAM_FLOAT);
?>

Properties may also be extracted from the header of a message.

Exemplo #4 Retrieving a property from a message header

<?php
$myProperty = $msg->header->myPropertyName;
?>

Connections
Messaging operations
Exemplos


Messaging operations

All messaging operations are performed through calls to methods on the connection object. To add a message to a queue the "send" method is used, to obtain a message from a queue the "receive" method is used. Other methods provide publish and subscribe functionality and control of transaction boundaries.

Exemplo #1 Adding a message to a queue and receiving a response

<?php
$msg = new SAMMessage('This is a simple text message');
$msg->header->SAM_REPLY_TO = 'queue://receive/test';
$correlid = $conn->send('queue://send/test', $msg);

if (!$correlid) {
  // The Send failed!
  echo "Send failed ($conn->errno) $conn->error";
} else {
  $resp = $conn->receive('queue://receive/test', array(SAM_CORRELID => $correlid));
}
?>

Messages
Publish/Subscribe and subscriptions to topics
Exemplos


Publish/Subscribe and subscriptions to topics

SAM allows messages to be sent either to queues or, for WebSphere MQ and WPM, to publish/subscribe topics. A topic destination is specified to SAM in the usual way, i.e. in the form 'topic://fred', rather than the form 'queue://AQUEUE' used for point to point operation. To use publish/subscribe it is simply necessary to specify the correct broker name on the SAMConnect "connect" call and the desired topic in the destination argument to the SAMConnect "send" and "receive" calls. The PHP interface is otherwise identical to the point to point model.

By default, SAM creates non-durable subscriptions when using publish/subscribe. This means that if a client application is inactive when messages are published to a topic, then it will not receive them when it subsequently restarted. SAM does also allow durable subscriptions to be made to topics when using WPM or WebSphere MQ publish/subscribe. The purpose of these subscriptions is to allow data to be received by a client application even if that client was not active at the time the data was published.

Durable subscriptions are specified by using the SAMConnect "subscribe" call. This method takes the destination topic as an input parameter and returns a subscription identifier that may be used on subsequent "receive" calls. When the subscription is no longer required the SAMConnection "unsubscribe" method should be used to delete the subscription.

Exemplo #1 Creating a durable subscription to a topic

<?php

$subName = $conn->subscribe('topic://A');

if (!$subName) {
   echo "Subscribe failed";
} else {
   # Subscribe was OK
   // ...
}
?>

Exemplo #2 Subscribing to a topic using a WebSphere Platform Messaging (WPM) server

<?php
$conn = new SAMConnection();
// Note: For pub/sub on WPM, when connecting the name of a messaging engine
//   to hold the durable subscription (SAM_WPM_DUR_SUB_HOME) must be specified.
$conn->connect(SAM_WMQ, array(SAM_ENDPOINTS => 'localhost:7278:BootstrapBasicMessaging',
                              SAM_BUS => 'Bus1',
                              SAM_TARGETCHAIN => 'InboundBasicMessaging',
                              SAM_WPM_DUR_SUB_HOME => 'MyMachineNode01.server1-Bus1'));

$subName = $conn->subscribe('topic://A');

if (!$subName) {
   echo "Subscribe failed";
} else {
   # Subscribe was OK
   // ...
}
?>

Exemplo #3 Receiving published data using a durable subscription

<?php

$msg = $conn->receive($subName);
if ($msg) {
   echo "Received a message OK";
} else {
   echo "The receive failed";
}

?>

Exemplo #4 Deleting a durable subscription to a topic

<?php

if (!$conn->unsubscribe($subName)) {
   echo "Unsubscribe failed";
}

?>

Messaging operations
Error handling
Exemplos


Error handling

All SAMConnection methods that provide access to messaging operations return FALSE if an error occurred in processing the request. In addition the SAMConnection object has two properties, "errno" and "error", that provide respectively the error number and text description of the last error to occur on the connection.

Exemplo #1 Handling an error from a method that returns no result

<?php
if (!$conn->commit()) {
    // The commit failed!
    echo "Commit failed ($conn->errno) $conn->error";
}
?>

Exemplo #2 Handling an error from a method that returns a result

<?php
$correlid = $conn->send('queue://send/test', $msg);

if (!$correlid) {
  // The Send failed!
  echo "Send failed ($conn->errno) $conn->error";
} else {
  /* ... */
}
?>

Publish/Subscribe and subscriptions to topics
SAM Funções
Exemplos


SAM Funções

Classes pré-definidas

SAMConnection

Object representing a connection to a Messaging Server

Construtor

  • new SAMConnection - construct a new connection object to allow connection to a messaging infrastructure.

Métodos

  • commit - a method that commits (successfully completes) an in-flight unit of work.

  • connect - a method that connects a PHP script to a messaging server.

  • disconnect - a method that disconnects a PHP script from a messaging server.

  • isConnected - a method that checks whether a PHP script is connected to a messaging server.

  • peek - a method that receives a message from a queue without removing it from the queue.

  • peekAll - a method that receives one or messages from a queue without removing them from the queue.

  • receive - a method that receives a message from a queue or subscription.

  • remove - a method that removes a message from a queue.

  • rollback - a method that cancels (rolls back) an in-flight unit of work.

  • send - a method that sends a message to a queue or posts to a topic

  • setDebug - a method that switches additional debugging output on or off

  • subscribe - a method that creates a subscription to one or more topics

  • unsubscribe - a method that destroys a subscription to one or more topics

Propriedades

  • errno - the numeric error code for the last encountered error on this connection. This property is set to 0 if the last operation was successful.

  • error - the text description for the last encountered error on this connection

SAMMessage

Object representing a message to be sent or received

Construtor

  • new SAMMessage - construct a new message.

Propriedades

  • body - the body of the message.

  • header - the header properties of the message.

Índice

  • SAMConnection->commit — Commits (completes) the current unit of work.
  • SAMConnection->connect — Establishes a connection to a Messaging Server
  • SAMConnection->__construct — Creates a new connection to a Messaging Server
  • SAMConnection->disconnect — Disconnects from a Messaging Server
  • SAMConnection->errno — Contains the unique numeric error code of the last executed SAM operation.
  • SAMConnection->error — Contains the text description of the last failed SAM operation.
  • SAMConnection->isConnected — Queries whether a connection is established to a Messaging Server
  • SAMConnection->peek — Read a message from a queue without removing it from the queue.
  • SAMConnection->peekAll — Read one or more messages from a queue without removing it from the queue.
  • SAMConnection->receive — Receive a message from a queue or subscription.
  • SAMConnection->remove — Remove a message from a queue.
  • SAMConnection->rollback — Cancels (rolls back) an in-flight unit of work.
  • SAMConnection->send — Send a message to a queue or publish an item to a topic.
  • SAMConnection::setDebug — Turn on or off additional debugging output.
  • SAMConnection->subscribe — Create a subscription to a specified topic.
  • SAMConnection->unsubscribe — Cancel a subscription to a specified topic.
  • SAMMessage->body — The body of the message.
  • SAMMessage->__construct — Creates a new Message object
  • SAMMessage->header — The header properties of the message.
Error handling
SAMConnection->commit
SAM


Commits (completes) the current unit of work.

SAM Funções
SAMConnection->connect
SAM Funções
PHP Manual

SAMConnection->commit

(PECL sam >= 0.1.0)

SAMConnection->commit — Commits (completes) the current unit of work.

Descrição

bool SAMConnection::commit ( void )

Calling the "commit" method on a Connection object commits (completes) all in-flight transactions that are part of the current unit of work.

Valor Retornado

This method returns FALSE if an error occurs.

Exemplos

Exemplo #1 Committing the current unit of work

<?php
  if (!$conn->commit()) {
    // The commit failed!
    echo "Commit failed ($conn->errno) $conn->error";
  }
?>

Veja Também

  • SAMConnection->rollback

SAM Funções
SAMConnection->connect
SAM Funções


Establishes a connection to a Messaging Server

SAMConnection->commit
SAMConnection->__construct
SAM Funções
PHP Manual

SAMConnection->connect

(PECL sam >= 0.1.0)

SAMConnection->connect — Establishes a connection to a Messaging Server

Descrição

bool SAMConnection::connect ( string $protocol [, array $properties ] )

Calling the "connect" method on a SAMConnection object connects the PHP script to a messaging server. No messages can be sent or received until a connection is made.

Parâmetros

Valor Retornado

This method returns FALSE if an error occurs.

Exemplos

Exemplo #1 Creating a connection to a Messaging Server using the IBM MQSeries protocol (WMQ)

<?php

$conn->connect(SAM_WMQ, array(SAM_HOST => 'Myhost.myco.com', SAM_PORT => 1506, SAM_BROKER => 'MyBroker'));

?>

Exemplo #2 Creating a connection with application transaction control and default host and port values

<?php

$conn->connect(SAM_WMQ, array(SAM_BROKER => 'MyBroker', SAM_TRANSACTIONS => SAM_MANUAL));

?>

Exemplo #3 Creating a connection to a Messaging Server using the IBM WebSphere Platform Messaging protocol (WPM)

<?php

$conn->connect(SAM_WPM, array(SAM_ENDPOINTS => 'localhost:7278:BootstrapBasicMessaging',
                              SAM_BUS => 'Bus1', SAM_TARGETCHAIN => 'InboundBasicMessaging'));

?>

Veja Também

  • SAMConnection->isConnected
  • SAMConnection->disconnect

SAMConnection->commit
SAMConnection->__construct
SAM Funções


Creates a new connection to a Messaging Server

SAMConnection->connect
SAMConnection->disconnect
SAM Funções
PHP Manual

SAMConnection->__construct

(PECL sam >= 0.1.0)

SAMConnection->__construct — Creates a new connection to a Messaging Server

Descrição

SAMConnection::__construct ( void )

Creates a new SAMConnection object.

Exemplos

Exemplo #1 Creating a connection object and connecting to a Messaging Server

<?php

$conn = new SAMConnection();
$conn->connect(SAM_WMQ, array(SAM_HOST => localhost, SAM_PORT => 1414, SAM_BROKER => 'bull'));

?>

SAMConnection->connect
SAMConnection->disconnect
SAM Funções


Disconnects from a Messaging Server

SAMConnection->__construct
SAMConnection->errno
SAM Funções
PHP Manual

SAMConnection->disconnect

(PECL sam >= 0.1.0)

SAMConnection->disconnect — Disconnects from a Messaging Server

Descrição

bool SAMConnection::disconnect ( void )

Calling the "disconnect" method on a SAMConnection object disconnects the PHP script from a messaging server. No messages can be sent or received after a connection has been disconnected.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Disconnecting from a Messaging Server

<?php

$conn->disconnect();

?>

Veja Também

  • SAMConnection->isConnected
  • SAMConnection->connect

SAMConnection->__construct
SAMConnection->errno
SAM Funções


Contains the unique numeric error code of the last executed SAM operation.

SAMConnection->disconnect
SAMConnection->error
SAM Funções
PHP Manual

SAMConnection->errno

(PECL sam >= 0.1.0)

SAMConnection->errno — Contains the unique numeric error code of the last executed SAM operation.

Description

int $errno;

Contains the numeric error code of the last executed SAM operation on this connection. If the last operation completed successfully this property contains 0.

Valor Retornado

An integer greater than zero indicates the last error type encountered on the connection. Zero indicates that the last operation on this connection completed successfully.

Exemplos

Exemplo #1 Using the error number and description properties

<?php
$conn = new SAMConnection();
$conn->connect(SAM_WMQ, array(SAM_HOST => 'localhost', SAM_PORT => 1506));
$msg = new SAMMessage('This is a simple text item');
if (!$conn->send('topic://test', $msg)) {
    // The Send failed!
    echo "Send failed ($conn->errno) $conn->error";
}
?>

Veja Também

  • SAMConnection->error

SAMConnection->disconnect
SAMConnection->error
SAM Funções


Contains the text description of the last failed SAM operation.

SAMConnection->errno
SAMConnection->isConnected
SAM Funções
PHP Manual

SAMConnection->error

(PECL sam >= 0.1.0)

SAMConnection->error — Contains the text description of the last failed SAM operation.

Descrição

string $error;

Contains the text description of the last failed SAM operation on this connection. If the last operation completed successfully this property contains an empty string.

Valor Retornado

A string containing the text description of the last error type encountered on the connection. An empty string indicates that the last operation on this connection completed successfully.

Exemplos

Exemplo #1 Using the error number and description properties

<?php
$conn = new SAMConnection();
$conn->connect(SAM_WMQ, array(SAM_HOST => 'localhost', SAM_PORT => 1506));
$msg = new SAMMessage('This is a simple text item');
if (!$conn->send('topic://test', $msg)) {
    // The Send failed!
    echo "Send failed ($conn->errno) $conn->error";
}
?>

Veja Também

  • SAMConnection->errno

SAMConnection->errno
SAMConnection->isConnected
SAM Funções


Queries whether a connection is established to a Messaging Server

SAMConnection->error
SAMConnection->peek
SAM Funções
PHP Manual

SAMConnection->isConnected

(PECL sam >= 0.1.0)

SAMConnection->isConnected — Queries whether a connection is established to a Messaging Server

Descrição

bool SAMConnection::isConnected ( void )

Calling the "isConnected" method on a Connection object will check whether the PHP script is connected to a messaging server. No messages can be sent or received unless a connection has been established with a Messaging server.

Valor Retornado

This method returns TRUE if the SAMConnection object is successfully connected to a Messaging server or FALSE otherwise.

Exemplos

Exemplo #1 Checking whether there us a connection to a Messaging Server

<?php

if ($conn->isConnected()) {
  echo 'Connection is active.';
} else {
  echo 'No active connection!';
}

?>

Veja Também

  • SAMConnection->disconnect
  • SAMConnection->connect

SAMConnection->error
SAMConnection->peek
SAM Funções


Read a message from a queue without removing it from the queue.

SAMConnection->isConnected
SAMConnection->peekAll
SAM Funções
PHP Manual

SAMConnection->peek

(PECL sam >= 0.1.0)

SAMConnection->peek — Read a message from a queue without removing it from the queue.

Descrição

SAMMessage SAMConnection::peek ( string $target [, array $properties ] )

Parâmetros

target

The identity of the queue from which to peek the message.

properties

An optional associative array of properties describing other parameters to control the peek operation.

Property name | Possible values
SAM_CORRELID | This is the target correlation id string of the message. This would typically have been returned by a "send" request.
SAM_MESSAGEID | This is the message id string of the message which is to be peeked.

Valor Retornado

This method returns a SAMMessage object or FALSE if an error occurs.

Exemplos

Exemplo #1 Retrieve the next message from a queue without removing it

<?php
$msg = $conn->peek('queue://receive/test');

if (!$msg) {
  // The peek failed!
  echo "Peek failed ($conn->errno) $conn->error";
}
?>

Exemplo #2 Retrieve a specific message from a queue without removing it from the queue

<?php

$msg = $conn->peek('queue://receive/test', array(SAM_MESSAGEID => $messageId));

?>

Veja Também

  • SAMConnection->peekAll

SAMConnection->isConnected
SAMConnection->peekAll
SAM Funções


Read one or more messages from a queue without removing it from the queue.

SAMConnection->peek
SAMConnection->receive
SAM Funções
PHP Manual

SAMConnection->peekAll

(PECL sam >= 0.2.0)

SAMConnection->peekAll — Read one or more messages from a queue without removing it from the queue.

Descrição

array SAMConnection::peekAll ( string $target [, array $properties ] )

Parâmetros

target

The identity of the queue from which messages should be peeked.

properties

An optional associative array of properties describing other parameters to control the peek operation.

Property name | Possible values
SAM_CORRELID | This is the target correlation id string of messages to be peeked. This would typically have been returned by a "send" request.
SAM_MESSAGEID | This is the message id string of a message which is to be peeked.

Valor Retornado

This method returns an array of SAMMessage objects or FALSE if an error occurs.

Exemplos

Exemplo #1 Retrieve all messages in a queue without removing them

<?php
$msgArray = $conn->peekAll('queue://receive/test');
if ($msgArray) {
   foreach ( $msgArray as $key => $msg) {
       echo "Message $key: body = $msg->body\n";
   }
} else {
   echo "PeekAll failed ($conn->errno) $conn->error";
}
?>

Exemplo #2 Retrieve all messages from a queue with a matching correlation id

<?php

   $msgArray = $conn->peekAll('queue://receive/test', array(SAM_CORRELID => $correlId ));
   if ($msgArray) {

      foreach ( $msgArray as $key => $msg) {
            echo "Message $key: body = $msg->body\n";
         }
   } else {
      echo "PeekAll failed ($conn->errno) $conn->error";
   }

?>

Veja Também

  • SAMConnection->peek

SAMConnection->peek
SAMConnection->receive
SAM Funções


Receive a message from a queue or subscription.

SAMConnection->peekAll
SAMConnection->remove
SAM Funções
PHP Manual

SAMConnection->receive

(PECL sam >= 0.1.0)

SAMConnection->receive — Receive a message from a queue or subscription.

Descrição

SAMMessage SAMConnection::receive ( string $target [, array $properties ] )

Parâmetros

target

The identity of the queue, topic or subscription from which to receive the message.

properties

An optional associative array of properties describing other parameters to control the receive operation.

Property name | Possible values
SAM_CORRELID | Used to request selection of the message to receive based upon the correlation id string of the message.
SAM_MESSAGEID | Used to request selection of the message to receive based upon the message id string of the message.
SAM_WAIT | Timeout value in milliseconds to control how long the request should block waiting to receive a message before returning with a failure if no message is available on the queue or topic. The default value is 0 meaning wait indefinitely and should be used with caution as the request may wait until the overall PHP script processing time limit has expired if no message becomes available.

Valor Retornado

This method returns a SAMMessage object or FALSE if an error occurs.

Exemplos

Exemplo #1 Receiving a message from a queue

<?php
$msg = $conn->receive('queue://receive/test');

if (!$msg) {
  // The receive failed!
  echo "Receive failed ($conn->errno) $conn->error";
}
?>

Exemplo #2 Receiving a message from a queue with options

In this example the SAM_CORRELID option is used to specify a correlation id string to be used to identify the message to receive. A wait timeout of 10 seconds is also specified.

<?php

$msg = $conn->receive('queue://receive/test', array(SAM_CORRELID => $token, SAM_WAIT => 10000));

?>

Exemplo #3 Receiving a message from a subscription

In this example we show how to receive a message from a subscription id.

<?php
$msg = $conn->receive($subscriptionName);

if (!$msg) {
  // The receive failed!
  echo "Receive failed ($conn->errno) $conn->error";
}
?>

Please note that $subscriptionName is a subscription id returned from an earlier subscribe call.

Veja Também

  • SAMConnection->send

SAMConnection->peekAll
SAMConnection->remove
SAM Funções


Remove a message from a queue.

SAMConnection->receive
SAMConnection->rollback
SAM Funções
PHP Manual

SAMConnection->remove

(PECL sam >= 0.1.0)

SAMConnection->remove — Remove a message from a queue.

Descrição

SAMMessage SAMConnection::remove ( string $target [, array $properties ] )

Removes a message from a queue.

Parâmetros

target

The identity of the queue from which to remove the message.

properties

An optional associative array of properties describing other parameters to control the remove operation.

Property name | Possible values
SAM_CORRELID | This is the target correlation id string of the message. This would typically have been returned by a "send" request.
SAM_MESSAGEID | This is the message id string of the message which is to be removed.

Valor Retornado

This method returns FALSE if an error occurs.

Exemplos

Exemplo #1 Removing a message from a queue by message id

<?php
if (!$conn->remove('queue://receive/test', array(SAM_MESSAGEID => $messageId))) {
  // The remove failed!
  echo "Remove failed ($conn->errno) $conn->error";
}
?>

SAMConnection->receive
SAMConnection->rollback
SAM Funções


Cancels (rolls back) an in-flight unit of work.

SAMConnection->remove
SAMConnection->send
SAM Funções
PHP Manual

SAMConnection->rollback

(PECL sam >= 0.1.0)

SAMConnection->rollback — Cancels (rolls back) an in-flight unit of work.

Descrição

bool SAMConnection::rollback ( void )

Rolls back an in-flight unit of work.

Valor Retornado

This method returns FALSE if an error occurs.

Exemplos

Exemplo #1 Cancelling an in-flight unit of work

<?php
if (!$conn->rollback()) {
  // The rollback failed!
  echo "Rollback failed ($conn->errno) $conn->error";
}
?>

Veja Também

  • SAMConnection->commit

SAMConnection->remove
SAMConnection->send
SAM Funções


Send a message to a queue or publish an item to a topic.

SAMConnection->rollback
SAMConnection::setDebug
SAM Funções
PHP Manual

SAMConnection->send

(PECL sam >= 0.1.0)

SAMConnection->send — Send a message to a queue or publish an item to a topic.

Descrição

string SAMConnection::send ( string $target , SAMMessage $msg [, array $properties ] )

The "send" method is used to send a message to a specific queue or to publish to a specific topic. The method returns a correlation id that can be used as a selector to identify reply or response messages when these are requested.

Parâmetros

target

If sending a message, the identity of the queue (queue://queuename) or if publishing to a topic the identity of the topic (topic://topicname) to which the message is to be delivered.

msg

The message to be sent or published.

properties

An optional associative array of properties describing other parameters to control the receive operation.

Property name | Possible values
SAM_DELIVERYMODE | Indicates whether the messaging server should ensure delivery or whether it is acceptable for messages to be lost in the case of system failures. The value of this property may be set to either SAM_PERSISTENT, to indicate that message loss is not acceptable, or SAM_NON_PERSISTENT, if message loss is acceptable. The resulting behaviour of the send will vary depending on the capabilities of the messaging server the PHP script is currently connected to. If the server does not support persistent messages and SAM_PERSISTENT is specified the send request will fail with an error indication showing the capability is not available.
SAM_PRIORITY | A numeric value between 0 and 9 indicating the desired message delivery priority. A priority value of 0 indicates the lowest priority while 9 indicates highest priority. If no priority is specified a default will be assigned which is dependent on the messaging server being used.
SAM_CORRELID | A string to be assigned as a correlation id for this message. If no value is given the messaging server may assign a value automatically.
SAM_TIMETOLIVE | A time in milliseconds indicating how long the messaging server should retain the message on a queue before discarding it. The default value is 0 indicating the message should be retained indefinitely.
SAM_WMQ_TARGET_CLIENT | This property is only valid when using WebSphere MQ and indicates whether or not an RFH2 header should be included with the message. This option may be set to either 'jms' or 'mq'. The default is 'jms' which means that an RFH2 header is included. If the value 'mq' is specified then no RFH2 is included with the message.

Valor Retornado

A correlation id string that can be used in a subsequent receive call as a selector to obtain any reply or response that has been requested or FALSE if an error occurred.

Nota:

A correlation id will only be returned for a successful send to a queue destination (queue://xxxx) in which case it will reflect the message identity of the message on the queue. In the case of a send being used to publish data to a topic the return value will be TRUE as no correlation id is available for return.

Exemplos

Exemplo #1 Send a message to a queue

<?php
$msg = new SAMMessage('This is a simple text message');
$correlId = $conn->send('queue://send/test', $msg);
if (!$correlId) {
    // The send failed!
    echo "Send failed ($conn->errno) $conn->error";
}

?>

Exemplo #2 Publish a message to a topic

<?php
$msg = new SAMMessage('This is a simple text item');
if (!$conn->send('topic://test', $msg)) {
    // The Send failed!
    echo "Send failed ($conn->errno) $conn->error";
}
?>

Exemplo #3 Send a request and receive a response

<?php
$msg = new SAMMessage('This is a simple text message');
$msg->header->SAM_REPLY_TO = 'queue://receive/test';
$correlid = $conn->send('queue://send/test', $msg);

if (!$correlid) {
    // The Send failed!
    echo "Send failed ($conn->errno) $conn->error";
} else {
    $resp = $conn->receive('queue://receive/test', array(SAM_CORRELID => $correlid));
}
?>

Veja Também

  • SAMConnection->receive

SAMConnection->rollback
SAMConnection::setDebug
SAM Funções


Turn on or off additional debugging output.

SAMConnection->send
SAMConnection->subscribe
SAM Funções
PHP Manual

SAMConnection::setDebug

(PECL sam >= 1.1.0)

SAMConnection::setDebug — Turn on or off additional debugging output.

Descrição

The "setdebug" method is used to turn on or off additional debugging output. The SAM framework will provide method/function entry and exit trace data plus additional information. Protocol specific implementations also provide extra output.

void SAMConnection::setDebug ( bool $switch )

Parâmetros

switch

If this parameter is set to TRUE additional debugging output will be provided. If the value is set to FALSE output of additional information will be stopped.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Turn on debugging output

<?php
$conn->setdebug(TRUE);
?>

Exemplo #2 Turn off debugging output

<?php
$conn->setdebug(FALSE);
?>

SAMConnection->send
SAMConnection->subscribe
SAM Funções


Create a subscription to a specified topic.

SAMConnection::setDebug
SAMConnection->unsubscribe
SAM Funções
PHP Manual

SAMConnection->subscribe

(PECL sam >= 0.1.0)

SAMConnection->subscribe — Create a subscription to a specified topic.

Descrição

string SAMConnection::subscribe ( string $targetTopic )

The "subscribe" method is used to create a new subscription to a specified topic.

Parâmetros

targetTopic

The identity of the topic (topic://topicname) to subscribe to.

Valor Retornado

A subscription identifier that can be used in a subsequent receive call as a selector to obtain any topic data or FALSE if an error occurred. The subscription identifier should be used in the receive call in place of the simple topic name.

Exemplos

Exemplo #1 Subscribe to a topic

<?php
$subid = $conn->subscribe('topic://A');
if (!$subid) {
  // The subscribe failed!
  echo "Subscribe failed ($conn->errno) $conn->error";
}
?>

Veja Também

  • SAMConnection->unsubscribe

SAMConnection::setDebug
SAMConnection->unsubscribe
SAM Funções


Cancel a subscription to a specified topic.

SAMConnection->subscribe
SAMMessage->body
SAM Funções
PHP Manual

SAMConnection->unsubscribe

(PECL sam >= 0.1.0)

SAMConnection->unsubscribe — Cancel a subscription to a specified topic.

Descrição

bool SAMConnection::unsubscribe ( string $subscriptionId [, string $targetTopic ] )

The "unsubscribe" method is used to delete an existing subscription to a specified topic.

Parâmetros

subscriptionId

The identifier of an existing subscription as returned by a call to the subscribe method.

Valor Retornado

This method returns FALSE if an error occurs.

Exemplos

Exemplo #1 Delete a subscription

<?php
if (!$conn->unsubscribe($subid)) {
    // The unsubscribe failed!
    echo "Unsubscribe failed ($conn->errno) $conn->error";
}
?>

Veja Também

  • SAMConnection->subscribe

SAMConnection->subscribe
SAMMessage->body
SAM Funções


The body of the message.

SAMConnection->unsubscribe
SAMMessage->__construct
SAM Funções
PHP Manual

SAMMessage->body

(PECL sam >= 0.1.0)

SAMMessage->body — The body of the message.

Descrição

string $body;

The "body" property contains the actual body of the message. It may not always be set.

Exemplos

Exemplo #1 Setting a text string into the body of a message

<?php
$msg = new SAMMessage();
$msg->body = 'This is a simple message';

?>

Veja Também

  • SAMMessage->header

SAMConnection->unsubscribe
SAMMessage->__construct
SAM Funções


Creates a new Message object

SAMMessage->body
SAMMessage->header
SAM Funções
PHP Manual

SAMMessage->__construct

(PECL sam >= 0.1.0)

SAMMessage->__construct — Creates a new Message object

Descrição

SAMMessage::__construct ([ mixed $body ] )

Creates a new SAMMessage object optionally specifying a message body.

Parâmetros

body

The optional body for the message.

Exemplos

Exemplo #1 Creating a message

<?php

$msg = new SAMMessage();

?>

Exemplo #2 Creating a message with a simple text payload

<?php

$msg = new SAMMessage('This is a simple text message');

?>

SAMMessage->body
SAMMessage->header
SAM Funções


The header properties of the message.

SAMMessage->__construct
SNMP
SAM Funções
PHP Manual

SAMMessage->header

(PECL sam >= 0.1.0)

SAMMessage->header — The header properties of the message.

Descrição

object $header;

The header property is a container for any system or user properties that area associated with the message.

Properties may be assigned by the sender of a message to control the way the messaging systems handles it or may be assigned by the messaging system itself to tell the recipient extra information about the message or the way in which it has been handled.

Some properties are understood by SAM in which case constants have been defined for them. The majority of properties however are ignored by the SAM implementation and simply passed through to the underlying messaging systems allowing the application to use messaging specific property names or to define its own "user" properties.

The SAM defined properties are as follows:

Property name | Possible values
SAM_MESSAGEID | When a message is received this field contains the unique identifier of the message as allocated by the underlying messaging system. When sending a message this field is ignored.
SAM_REPLY_TO | A string providing the identity of the queue on to which responses to this message should be posted.
SAM_TYPE

An indication of the type of message to be sent. The value may be SAM_TEXT indicating the contents of the message body is a text string, or SAM_BYTES indicating the contents of the message body are some application defined format.

The way in which this property is used may depend on the underlying messaging server. For instance a messaging server that supports the JMS (Java Message Service) specification may interpret this value and send messages of type "jms_text" and "jms_bytes". In addition, if the SAM_TYPE property is set to SAM_TEXT the data provided for the message body is expected to be a UTF8 encoded string.

When setting the values of properties it is often useful to give a hint as to the format in which the property should be delivered to the messaging system. By default property values are delivered as text and the following simple syntax may be used to set a value:

Exemplo #1 Setting a text format property using the default syntax

<?php
$msg = new SAMMessage();

$msg->header->myPropertyName = 'textData';
?>

If it is desired to pass type information an alternative syntax may be used where the value and the type hint are passed in an associative array:

Exemplo #2 Setting a text format property using a type hint

<?php
$msg = new SAMMessage();

$msg->header->myPropertyName = array('textData', SAM_STRING);
?>

When passing a type hint the type entry should be one of the SAM defined constant values as defined by the following table:

Constant | Type description
SAM_BOOLEAN | Any value passed will be interpreted as logical true or false. If the value cannot be interpreted as a PHP boolean value the value passed to the messaging system is undefined.
SAM_BYTE | An 8-bit signed integer value. SAM will attempt to convert the property value specified into a single byte value to pass to the messaging system. If a string value is passed an attempt will be made to interpret the string as a numeric value. If the numeric value cannot be expressed as an 8-bit signed binary value data may be lost in the conversion.
SAM_DOUBLE | A long floating point value. SAM will attempt to convert the property value specified into a floating point value with 15 digits of precision. If a string value is passed an attempt will be made to interpret the string as a numeric value. If the passed value cannot be expressed as a 15 digit floating point value data may be lost in the conversion.
SAM_FLOAT | A short floating point value. SAM will attempt to convert the property value specified into a floating point value with 7 digits of precision. If a string value is passed an attempt will be made to interpret the string as a numeric value. If the passed value cannot be expressed as a 7 digit floating point value data may be lost in the conversion.
SAM_INT | An 32-bit signed integer value. SAM will attempt to convert the property value specified into a 32-bit value to pass to the messaging system. If a string value is passed an attempt will be made to interpret the string as a numeric value. If the numeric value cannot be expressed as an 32-bit signed binary value data may be lost in the conversion.
SAM_LONG | An 64-bit signed integer value. SAM will attempt to convert the property value specified into a 64-bit value to pass to the messaging system. If a string value is passed an attempt will be made to interpret the string as a numeric value. If the numeric value cannot be expressed as an 64-bit signed binary value data may be lost in the conversion.
SAM_STRING | SAM will interpret the property value specified as a string and pass it to the messaging system accordingly.

Exemplos

Exemplo #3 Setting properties as the sender of a message

<?php
$msg = new SAMMessage('This is a test message');

// defining SAM specific properties...
$msg->header->SAM_REPLY_TO = 'queue://test/replyQueue';

// defining arbitrary properties...
//
// a default string property
$msg->header->myStringProp1 = 'a string property';
// a string property with a type hint
$msg->header->myStringProp2 = array('another string property', SAM_STRING);

// a boolean property
$msg->header->myBoolProp = array(FALSE, SAM_BOOL);

// numeric format properties
$msg->header->myIntProp = array(32768, SAM_INT);
$msg->header->myLongProp = array(9876543, SAM_LONG);
$msg->header->myByteProp1 = array(123, SAM_BYTE);
$msg->header->myByteProp2 = array('12', SAM_BYTE);
$msg->header->myFloatProp = array(3.141592, SAM_FLOAT);
$msg->header->myDoubleProp = array(3.14159265358979, SAM_DOUBLE);
?>

Exemplo #4 Retreiving property values from a message

<?php

// accessing an application specific property
$intProp = $msg->header->MyIntProp;

// accessing a messaging system specific property
$encoding = $msg->header->JMS_IBM_Msgtype;

?>

Veja Também

  • SAMMessage->body

SAMMessage->__construct
SNMP
SAM Funções


SNMP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções SNMP
    • snmp_get_quick_print — Fetches the current value of the UCD library's quick_print setting
    • snmp_get_valueretrieval — Return the method how the SNMP values will be returned
    • snmp_read_mib — Reads and parses a MIB file into the active MIB tree
    • snmp_set_enum_print — Return all values that are enums with their enum value instead of the raw integer
    • snmp_set_oid_numeric_print — Return all objects including their respective object id within the specified one
    • snmp_set_oid_output_format — Set the OID output format
    • snmp_set_quick_print — Set the value of quick_print within the UCD SNMP library
    • snmp_set_valueretrieval — Specify the method how the SNMP values will be returned
    • snmp2_get — Fetch an SNMP object
    • snmp2_getnext — Fetch the SNMP object which follows the given object id
    • snmp2_real_walk — Return all objects including their respective object ID within the specified one
    • snmp2_set — Set the value of an SNMP object
    • snmp2_walk — Fetch all the SNMP objects from an agent
    • snmp3_get — Fetch an SNMP object
    • snmp3_getnext — Fetch the SNMP object which follows the given object id
    • snmp3_real_walk — Return all objects including their respective object ID within the specified one
    • snmp3_set — Description
    • snmp3_walk — Fetch all the SNMP objects from an agent
    • snmpget — Fetch an SNMP object
    • snmpgetnext — Fetch the SNMP object which follows the given object id
    • snmprealwalk — Return all objects including their respective object ID within the specified one
    • snmpset — Set the value of an SNMP object
    • snmpwalk — Fetch all the SNMP objects from an agent
    • snmpwalkoid — Query for a tree of information about a network entity
SAMMessage->header
Introdução
Outros Serviços


Introdução

Funções SNMP.

SNMP
Instalação/Configuração
SNMP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SNMP


Dependências

Para utilizar as funções SNMP em Unix, você precisará instalar o pacote » NET-SNMP. No Windows essas funções estão disponíveis somente para o Windows NT e não nos Win95/98.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Important: In order to use the UCD SNMP package, you need to define NO_ZEROLENGTH_COMMUNITY to 1 before compiling it. After configuring UCD SNMP, edit config.h or acconfig.h and search for NO_ZEROLENGTH_COMMUNITY. Uncomment the #define line. It should look like this afterwards:

#define NO_ZEROLENGTH_COMMUNITY 1
Now compile PHP --with-snmp[=DIR] .

If you see strange segmentation faults in combination with SNMP commands, you did not follow the above instructions. If you do not want to recompile UCD SNMP, you can compile PHP with the --enable-ucd-snmp-hack switch which will work around the misfeature.

PHP 5.3.0, 5.3.1 and 5.3.2 SNMP support do not have SNMP support. SNMP support has restored in PHP 5.3.3.

The Windows distribution contains support files for SNMP in the mibs directory. This directory should be moved to DRIVE:\usr\mibs, where DRIVE must be replaced with the driveletter where PHP is installed on, e.g.c:\usr\mibs.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SNMP_OID_OUTPUT_FULL (integer)
Desde o PHP 5.2.0
SNMP_OID_OUTPUT_NUMERIC (integer)
Desde o PHP 5.2.0
SNMP_VALUE_LIBRARY (integer)
SNMP_VALUE_PLAIN (integer)
SNMP_VALUE_OBJECT (integer)
SNMP_BIT_STR (integer)
SNMP_OCTET_STR (integer)
SNMP_OPAQUE (integer)
SNMP_NULL (integer)
SNMP_OBJECT_ID (integer)
SNMP_IPADDRESS (integer)
SNMP_COUNTER (integer)
SNMP_UNSIGNED (integer)
SNMP_TIMETICKS (integer)
SNMP_UINTEGER (integer)
SNMP_INTEGER (integer)
SNMP_COUNTER64 (integer)
Tipos Resource
Funções SNMP
SNMP


Funções SNMP

Índice

  • snmp_get_quick_print — Fetches the current value of the UCD library's quick_print setting
  • snmp_get_valueretrieval — Return the method how the SNMP values will be returned
  • snmp_read_mib — Reads and parses a MIB file into the active MIB tree
  • snmp_set_enum_print — Return all values that are enums with their enum value instead of the raw integer
  • snmp_set_oid_numeric_print — Return all objects including their respective object id within the specified one
  • snmp_set_oid_output_format — Set the OID output format
  • snmp_set_quick_print — Set the value of quick_print within the UCD SNMP library
  • snmp_set_valueretrieval — Specify the method how the SNMP values will be returned
  • snmp2_get — Fetch an SNMP object
  • snmp2_getnext — Fetch the SNMP object which follows the given object id
  • snmp2_real_walk — Return all objects including their respective object ID within the specified one
  • snmp2_set — Set the value of an SNMP object
  • snmp2_walk — Fetch all the SNMP objects from an agent
  • snmp3_get — Fetch an SNMP object
  • snmp3_getnext — Fetch the SNMP object which follows the given object id
  • snmp3_real_walk — Return all objects including their respective object ID within the specified one
  • snmp3_set — Description
  • snmp3_walk — Fetch all the SNMP objects from an agent
  • snmpget — Fetch an SNMP object
  • snmpgetnext — Fetch the SNMP object which follows the given object id
  • snmprealwalk — Return all objects including their respective object ID within the specified one
  • snmpset — Set the value of an SNMP object
  • snmpwalk — Fetch all the SNMP objects from an agent
  • snmpwalkoid — Query for a tree of information about a network entity
Constantes pré-definidas
snmp_get_quick_print
SNMP


Fetches the current value of the UCD library's quick_print setting

Funções SNMP
snmp_get_valueretrieval
Funções SNMP
PHP Manual

snmp_get_quick_print

(PHP 4, PHP 5)

snmp_get_quick_print — Fetches the current value of the UCD library's quick_print setting

Descrição

bool snmp_get_quick_print ( void )

Returns the current value stored in the UCD Library for quick_print. quick_print is off by default.

Valor Retornado

Returns TRUE if quick_print is on, FALSE otherwise.

Exemplos

Exemplo #1 snmp_get_quick_print() example

<?php
$quickprint = snmp_get_quick_print();
?>

Veja Também

  • snmp_set_quick_print() - Set the value of quick_print within the UCD SNMP library for a full description of what quick_print does.

Funções SNMP
snmp_get_valueretrieval
Funções SNMP


Return the method how the SNMP values will be returned

snmp_get_quick_print
snmp_read_mib
Funções SNMP
PHP Manual

snmp_get_valueretrieval

(PHP 4 >= 4.3.3, PHP 5)

snmp_get_valueretrieval — Return the method how the SNMP values will be returned

Descrição

int snmp_get_valueretrieval ( void )

Valor Retornado

On of the SNMP_VALUE_LIBRARY, SNMP_VALUE_PLAIN, SNMP_VALUE_OBJECT constants.

Exemplos

Exemplo #1 Using snmp_get_valueretrieval

<?php
 $ret = snmpget('localhost', 'public', 'IF-MIB::ifName.1');
 if (snmp_get_valueretrieval() == SNMP_VALUE_OBJECT) {
   echo $ret->value;
 } else {
   echo $ret;
 }

Veja Também

  • snmp_set_valueretrieval() - Specify the method how the SNMP values will be returned
  • Constantes pré-definidas

snmp_get_quick_print
snmp_read_mib
Funções SNMP


Reads and parses a MIB file into the active MIB tree

snmp_get_valueretrieval
snmp_set_enum_print
Funções SNMP
PHP Manual

snmp_read_mib

(PHP 5)

snmp_read_mib — Reads and parses a MIB file into the active MIB tree

Descrição

bool snmp_read_mib ( string $filename )

This function is used to load additional, e.g. vendor specific, MIBs so that human readable OIDs like VENDOR-MIB::foo.1 instead of error prone numeric OIDs can be used.

The order in which the MIBs are loaded does matter as the underlying Net-SNMP libary will print warnings if referenced objects cannot be resolved.

Parâmetros

filename

The filename of the MIB.

Exemplos

Exemplo #1 Using snmp_read_mib()

<?php
 print_r( snmprealwalk('localhost', 'public', '.1.3.6.1.2.1.2.3.4.5') );

 snmp_read_mib('./FOO-BAR-MIB.txt');
 print_r( snmprealwalk('localhost', 'public', 'FOO-BAR-MIB::someTable' );
?>

The above example is made up but the results would look like:

Array
(
    [iso.3.6.1.2.1.2.3.4.5.0] => Gauge32: 6
)
Array
(
    [FOO-BAR-MIB::someTable.0] => Gauge32: 6
)

snmp_get_valueretrieval
snmp_set_enum_print
Funções SNMP


Return all values that are enums with their enum value instead of the raw integer

snmp_read_mib
snmp_set_oid_numeric_print
Funções SNMP
PHP Manual

snmp_set_enum_print

(PHP 4 >= 4.3.0, PHP 5)

snmp_set_enum_print — Return all values that are enums with their enum value instead of the raw integer

Descrição

bool snmp_set_enum_print ( int $enum_print )

This function toggles if snmpwalk/snmpget etc. should automatically lookup enum values in the MIB and return them together with their human readable string.

Parâmetros

enum_print

As the value is interpreted as boolean by the Net-SNMP library, it can only be "0" or "1".

Exemplos

Exemplo #1 Using snmp_set_enum_print()

<?php
 snmp_set_enum_print(0);
 echo snmpget('localhost', 'public', 'IF-MIB::ifOperStatus.3') . "\n";
 snmp_set_enum_print(1);
 echo snmpget('localhost', 'public', 'IF-MIB::ifOperStatus.3') . "\n";
?>

The above would return

 INTEGER: up(1)
 INTEGER: 1

Notas

Nota:

snmp_set_enum_print() is only available when using the UCD SNMP library. This function is not available when using the Windows SNMP library.

snmp_read_mib
snmp_set_oid_numeric_print
Funções SNMP


Return all objects including their respective object id within the specified one

snmp_set_enum_print
snmp_set_oid_output_format
Funções SNMP
PHP Manual

snmp_set_oid_numeric_print

(PHP 4 >= 4.3.0, PHP 5)

snmp_set_oid_numeric_print — Return all objects including their respective object id within the specified one

Descrição

void snmp_set_oid_numeric_print ( int $oid_format )

Esta função é um apelido para: snmp_set_oid_output_format().

Histórico

Versão | Descrição
5.2.0 | Since PHP 5.2.0.

Veja Também

  • snmp_set_oid_output_format() - Set the OID output format

snmp_set_enum_print
snmp_set_oid_output_format
Funções SNMP


Set the OID output format

snmp_set_oid_numeric_print
snmp_set_quick_print
Funções SNMP
PHP Manual

snmp_set_oid_output_format

(PHP 5 >= 5.2.0)

snmp_set_oid_output_format — Set the OID output format

Descrição

bool snmp_set_oid_output_format ( int $oid_format = SNMP_OID_OUTPUT_MODULE )

snmp_set_oid_output_format() sets the output format to be full or numeric.

Parâmetros

oid_format
constants
SNMP_OID_OUTPUT_FULL | The complete form like "iso.org.dod...."
SNMP_OID_OUTPUT_NUMERIC | The numeric form like ".1.3.6.1.4.1.8072.3.2.10"
SNMP_OID_OUTPUT_MODULE | The short form like "NET-SNMP-TC::linux"
SNMP_OID_OUTPUT_SUFFIX
SNMP_OID_OUTPUT_UCD
SNMP_OID_OUTPUT_NONE

The last four constants are expected to be added in PHP 5.3.6 as of bug #53862.

Valor Retornado

Não há valor retornado.

Notas

Nota:

snmp_set_oid_output_format() is only available when using the UCD SNMP library. This function is not available when using the Windows SNMP library.

Exemplos

Exemplo #1 Using snmprealwalk()

<?php

 snmp_read_mib("/usr/share/mibs/netsnmp/NET-SNMP-TC");

 // default or SNMP_OID_OUTPUT_MODULE in PHP >= 5.3.6
 print_r( snmprealwalk('localhost', 'public', 'RFC1213-MIB::sysObjectID') );

 snmp_set_oid_output_format(SNMP_OID_OUTPUT_NUMERIC);
 print_r( snmprealwalk('localhost', 'public', 'RFC1213-MIB::sysObjectID') );

 snmp_set_oid_output_format(SNMP_OID_OUTPUT_FULL);
 print_r( snmprealwalk('localhost', 'public', 'RFC1213-MIB::sysObjectID') );
?>

The above would output:

 Array
 (
    [RFC1213-MIB::sysObjectID.0] => OID: NET-SNMP-TC::linux
 )
 Array
 (
    [.1.3.6.1.2.1.1.2.0] => OID: .1.3.6.1.4.1.8072.3.2.10
 )
 Array
 (
    [.iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0] => OID: .iso.org.dod.internet.private.enterprises.netSnmp.netSnmpEnumerations.netSnmpAgentOIDs.linux
 )

snmp_set_oid_numeric_print
snmp_set_quick_print
Funções SNMP


Set the value of quick_print within the UCD SNMP library

snmp_set_oid_output_format
snmp_set_valueretrieval
Funções SNMP
PHP Manual

snmp_set_quick_print

(PHP 4, PHP 5)

snmp_set_quick_print — Set the value of quick_print within the UCD SNMP library

Descrição

bool snmp_set_quick_print ( bool $quick_print )

Sets the value of quick_print within the UCD SNMP library. When this is set (1), the SNMP library will return 'quick printed' values. This means that just the value will be printed. When quick_print is not enabled (default) the UCD SNMP library prints extra information including the type of the value (i.e. IpAddress or OID). Additionally, if quick_print is not enabled, the library prints additional hex values for all strings of three characters or less.

By default the UCD SNMP library returns verbose values, quick_print is used to return only the value.

Currently strings are still returned with extra quotes, this will be corrected in a later release.

Parâmetros

quick_print

Valor Retornado

Não há valor retornado.

Exemplos

Setting quick_print is often used when using the information returned rather then displaying it.

Exemplo #1 Using snmp_set_quick_print()

<?php
snmp_set_quick_print(0);
$a = snmpget("127.0.0.1", "public", ".1.3.6.1.2.1.2.2.1.9.1");
echo "$a\n";
snmp_set_quick_print(1);
$a = snmpget("127.0.0.1", "public", ".1.3.6.1.2.1.2.2.1.9.1");
echo "$a\n";
?>

O exemplo acima irá imprimir algo similar a:

'Timeticks: (0) 0:00:00.00'
'0:00:00.00'

Veja Também

  • snmp_get_quick_print() - Fetches the current value of the UCD library's quick_print setting

snmp_set_oid_output_format
snmp_set_valueretrieval
Funções SNMP


Specify the method how the SNMP values will be returned

snmp_set_quick_print
snmp2_get
Funções SNMP
PHP Manual

snmp_set_valueretrieval

(PHP 4 >= 4.3.3, PHP 5)

snmp_set_valueretrieval — Specify the method how the SNMP values will be returned

Descrição

bool snmp_set_valueretrieval ( int $method = SNMP_VALUE_LIBRARY )

Parâmetros

method
types
SNMP_VALUE_LIBRARY | The return values will be as returned by the Net-SNMP library.
SNMP_VALUE_PLAIN | The return values will be the plain value without the SNMP type hint.
SNMP_VALUE_OBJECT | The return values will be objects with the properties "value" and "type", where the latter is one of the SNMP_OCTET_STR, SNMP_COUNTER etc. constants.

Exemplos

Exemplo #1 Using snmp_set_valueretrieval()

<?php
 snmp_set_valueretrieval(SNMP_VALUE_LIBRARY);
 $ret = snmpget('localhost', 'public', 'IF-MIB::ifName.1');
 // $ret = "STRING: lo"

 snmp_set_valueretrieval(SNMP_VALUE_PLAIN);
 $ret = snmpget('localhost', 'public', 'IF-MIB::ifName.1');
 // $ret = "lo";

 snmp_set_valueretrieval(SNMP_VALUE_OBJECT);
 $ret = snmpget('localhost', 'public', 'IF-MIB::ifName.1');
 // stdClass Object
 // (
 //   [type] => 4        <-- SNMP_OCTET_STR, see constants
 //   [value] => lo
 // )

?>

Veja Também

  • snmp_get_valueretrieval() - Return the method how the SNMP values will be returned
  • Constantes pré-definidas

snmp_set_quick_print
snmp2_get
Funções SNMP


Fetch an SNMP object

snmp_set_valueretrieval
snmp2_getnext
Funções SNMP
PHP Manual

snmp2_get

(No version information available, might only be in SVN)

snmp2_get — Fetch an SNMP object

Descrição

string snmp2_get ( string $host , string $community , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp2_get() function is used to read the value of an SNMP object specified by the object_id.

Parâmetros

host

The SNMP agent.

community

The read community.

object_id

The SNMP object.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns SNMP object value on success or FALSE on error.

Exemplos

Exemplo #1 Using snmp2_get()

<?php
$syscontact = snmp2_get("127.0.0.1", "public", "system.SysContact.0");
?>

Veja Também

  • snmp2_set() - Set the value of an SNMP object

snmp_set_valueretrieval
snmp2_getnext
Funções SNMP


Fetch the SNMP object which follows the given object id

snmp2_get
snmp2_real_walk
Funções SNMP
PHP Manual

snmp2_getnext

(No version information available, might only be in SVN)

snmp2_getnext — Fetch the SNMP object which follows the given object id

Descrição

string snmp2_getnext ( string $host , string $community , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp2_get_next() function is used to read the value of the SNMP object that follows the specified object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The read community.

object_id

The SNMP object id which precedes the wanted one.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns SNMP object value on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmp2_get_next()

<?php
$nameOfSecondInterface = snmp2_get_netxt('localhost', 'public', 'IF-MIB::ifName.1';
?>

Veja Também

  • snmp2_get() - Fetch an SNMP object
  • snmp2_walk() - Fetch all the SNMP objects from an agent

snmp2_get
snmp2_real_walk
Funções SNMP


Return all objects including their respective object ID within the specified one

snmp2_getnext
snmp2_set
Funções SNMP
PHP Manual

snmp2_real_walk

(No version information available, might only be in SVN)

snmp2_real_walk — Return all objects including their respective object ID within the specified one

Descrição

array snmp2_real_walk ( string $host , string $community , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp2_real_walk() function is used to traverse over a number of SNMP objects starting from object_id and return not only their values but also their object ids.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The read community.

object_id

The SNMP object id which precedes the wanted one.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an associative array of the SNMP object ids and their values on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmp2_real_walk()

<?php
 print_r(snmp2_real_walk("localhost", "public", "IF-MIB::ifName"));
?>

The above will output something like:

    Array
      (
      [IF-MIB::ifName.1] => STRING: lo
      [IF-MIB::ifName.2] => STRING: eth0
      [IF-MIB::ifName.3] => STRING: eth2
      [IF-MIB::ifName.4] => STRING: sit0
      [IF-MIB::ifName.5] => STRING: sixxs
    )

Veja Também

  • snmp2_walk() - Fetch all the SNMP objects from an agent

snmp2_getnext
snmp2_set
Funções SNMP


Set the value of an SNMP object

snmp2_real_walk
snmp2_walk
Funções SNMP
PHP Manual

snmp2_set

(No version information available, might only be in SVN)

snmp2_set — Set the value of an SNMP object

Descrição

bool snmp2_set ( string $host , string $community , string $object_id , string $type , string $value [, string $timeout = 1000000 [, string $retries = 5 ]] )

snmp2_set() is used to set the value of an SNMP object specified by the object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The write community.

object_id

The SNMP object id.

type

The MIB defines the type of each object id. It has to be specified as a single character from the below list.

types
= The type is taken from the MIB
i | INTEGER
u | INTEGER
s | STRING
x | HEX STRING
d | DECIMAL STRING
n | NULLOBJ
o | OBJID
t | TIMETICKS
a | IPADDRESS
b | BITS

If OPAQUE_SPECIAL_TYPES was defined while compiling the SNMP library, the following are also valid:

types
U | unsigned int64
I | signed int64
F | float
D | double

Most of these will use the obvious corresponding ASN.1 type. 's', 'x', 'd' and 'b' are all different ways of specifying an OCTET STRING value, and the 'u' unsigned type is also used for handling Gauge32 values.

If the MIB-Files are loaded by into the MIB Tree with "snmp_read_mib" or by specifying it in the libsnmp config, '=' may be used as the type parameter for all object ids as the type can then be automatically read from the MIB.

Note that there are two ways to set a variable of the type BITS like e.g. "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}"

  • Using type "b" and a list of bit numbers like:

    snmpset('FOO-MIB::bar.42', 'b', '0 1 2 3 4');
    with the disadvantage that the success is not easily verifyable as an snmpget() for the same OID would return e.g. 0xF8.

  • Using type "x" and a hex number but without(!) the usual "0x" prefix:

    snmpset('FOO-MIB::bar.42', 'x', 'F0');

value

The new value.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

If the SNMP host rejects the data type, an E_WARNING message like "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." is shown. If an unknown or invalid OID is specified the warning probably reads "Could not add variable".

Exemplos

Exemplo #1 Using snmp2_set()

<?php
  snmp2_set("localhost", "public", "IF-MIB::ifAlias.3", "s", "foo");
?>

Veja Também

  • snmp2_get() - Fetch an SNMP object

snmp2_real_walk
snmp2_walk
Funções SNMP


Fetch all the SNMP objects from an agent

snmp2_set
snmp3_get
Funções SNMP
PHP Manual

snmp2_walk

(No version information available, might only be in SVN)

snmp2_walk — Fetch all the SNMP objects from an agent

Descrição

array snmp2_walk ( string $host , string $community , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

snmp2_walk() function is used to read all the values from an SNMP agent specified by the hostname.

Parâmetros

host

The SNMP agent (server).

community

The read community.

object_id

If NULL, object_id is taken as the root of the SNMP objects tree and all objects under that tree are returned as an array.

If object_id is specified, all the SNMP objects below that object_id are returned.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an array of SNMP object values starting from the object_id as root or FALSE on error.

Exemplos

Exemplo #1 snm2_pwalk() Example

<?php
$a = snmp2_walk("127.0.0.1", "public", "");

foreach ($a as $val) {
    echo "$val\n";
}

?>

Above function call would return all the SNMP objects from the SNMP agent running on localhost. One can step through the values with a loop

Veja Também

  • snmp2_real_walk() - Return all objects including their respective object ID within the specified one

snmp2_set
snmp3_get
Funções SNMP


Fetch an SNMP object

snmp2_walk
snmp3_getnext
Funções SNMP
PHP Manual

snmp3_get

(No version information available, might only be in SVN)

snmp3_get — Fetch an SNMP object

Descrição

string snmp3_get ( string $host , string $sec_name , string $sec_level , string $auth_protocol , string $auth_passphrase , string $priv_protocol , string $priv_passphrase , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp3_get() function is used to read the value of an SNMP object specified by the object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

sec_name

the security name, usually some kind of username

sec_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

priv_protocol

the privacy protocol (DES or AES)

priv_passphrase

the privacy pass phrase

object_id

The SNMP object id.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Returns SNMP object value on success or FALSE on error.

Exemplos

Exemplo #1 Using snmp3_get()

<?php
$nameOfSecondInterface = snmp3_get('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName.2');
?>

Veja Também

  • snmp3_set() - Description

snmp2_walk
snmp3_getnext
Funções SNMP


Fetch the SNMP object which follows the given object id

snmp3_get
snmp3_real_walk
Funções SNMP
PHP Manual

snmp3_getnext

(No version information available, might only be in SVN)

snmp3_getnext — Fetch the SNMP object which follows the given object id

Descrição

string snmp3_getnext ( string $host , string $sec_name , string $sec_level , string $auth_protocol , string $auth_passphrase , string $priv_protocol , string $priv_passphrase , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp3_getnext() function is used to read the value of the SNMP object that follows the specified object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

sec_name

the security name, usually some kind of username

sec_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

priv_protocol

the privacy protocol (DES or AES)

priv_passphrase

the privacy pass phrase

object_id

The SNMP object id.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Returns SNMP object value on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmp3_getnext()

<?php
$nameOfSecondInterface = snmp3_getnext('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName.1');
?>

Veja Também

  • snmp3_get() - Fetch an SNMP object
  • snmp3_walk() - Fetch all the SNMP objects from an agent

snmp3_get
snmp3_real_walk
Funções SNMP


Return all objects including their respective object ID within the specified one

snmp3_getnext
snmp3_set
Funções SNMP
PHP Manual

snmp3_real_walk

(No version information available, might only be in SVN)

snmp3_real_walk — Return all objects including their respective object ID within the specified one

Descrição

array snmp3_real_walk ( string $host , string $sec_name , string $sec_level , string $auth_protocol , string $auth_passphrase , string $priv_protocol , string $priv_passphrase , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

The snmp3_real_walk() function is used to traverse over a number of SNMP objects starting from object_id and return not only their values but also their object ids.

Parâmetros

host

The hostname of the SNMP agent (server).

sec_name

the security name, usually some kind of username

sec_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

priv_protocol

the privacy protocol (DES or AES)

priv_passphrase

the privacy pass phrase

object_id

The SNMP object id.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Returns an associative array of the SNMP object ids and their values on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmp3_real_walk()

<?php
 var_export(snmp3_real_walk('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName'));
?>

The above will output something like:

array (
  'IF-MIB::ifName.1' => 'STRING: lo',
  'IF-MIB::ifName.2' => 'STRING: eth0',
  'IF-MIB::ifName.3' => 'STRING: eth2',
  'IF-MIB::ifName.4' => 'STRING: sit0',
  'IF-MIB::ifName.5' => 'STRING: sixxs',
)

Veja Também

  • snmpwalk() - Fetch all the SNMP objects from an agent

snmp3_getnext
snmp3_set
Funções SNMP


Description

snmp3_real_walk
snmp3_walk
Funções SNMP
PHP Manual

snmp3_set

(No version information available, might only be in SVN)

snmp3_set — Description

Descrição

bool snmp3_set ( string $host , string $sec_name , string $sec_level , string $auth_protocol , string $auth_passphrase , string $priv_protocol , string $priv_passphrase , string $object_id , string $type , string $value [, string $timeout = 1000000 [, string $retries = 5 ]] )

snmp3_set() is used to set the value of an SNMP object specified by the object_id.

Even if the security level does not use an auth or priv protocol/password valid values have to be specified.

Parâmetros

host

The hostname of the SNMP agent (server).

sec_name

the security name, usually some kind of username

sec_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

priv_protocol

the privacy protocol (DES or AES)

priv_passphrase

the privacy pass phrase

object_id

The SNMP object id.

type

The MIB defines the type of each object id. It has to be specified as a single character from the below list.

types
= The type is taken from the MIB
i | INTEGER
u | INTEGER
s | STRING
x | HEX STRING
d | DECIMAL STRING
n | NULLOBJ
o | OBJID
t | TIMETICKS
a | IPADDRESS
b | BITS

If OPAQUE_SPECIAL_TYPES was defined while compiling the SNMP library, the following are also valid:

types
U | unsigned int64
I | signed int64
F | float
D | double

Most of these will use the obvious corresponding ASN.1 type. 's', 'x', 'd' and 'b' are all different ways of specifying an OCTET STRING value, and the 'u' unsigned type is also used for handling Gauge32 values.

If the MIB-Files are loaded by into the MIB Tree with "snmp_read_mib" or by specifying it in the libsnmp config, '=' may be used as the type parameter for all object ids as the type can then be automatically read from the MIB.

Note that there are two ways to set a variable of the type BITS like e.g. "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}"

  • Using type "b" and a list of bit numbers like:

    snmpset('FOO-MIB::bar.42', 'b', '0 1 2 3 4');
    with the disadvantage that the success is not easily verifyable as an snmpget() for the same OID would return e.g. 0xF8.

  • Using type "x" and a hex number but without(!) the usual "0x" prefix:

    snmpset('FOO-MIB::bar.42', 'x', 'F0');

value

The new value

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

If the SNMP host rejects the data type, an E_WARNING message like "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." is shown. If an unknown or invalid OID is specified the warning probably reads "Could not add variable".

Exemplos

Exemplo #1 Using snmp3_set()

<?php
  snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifAlias.3', 's', "foo");
?>

snmp3_real_walk
snmp3_walk
Funções SNMP


Fetch all the SNMP objects from an agent

snmp3_set
snmpget
Funções SNMP
PHP Manual

snmp3_walk

(No version information available, might only be in SVN)

snmp3_walk — Fetch all the SNMP objects from an agent

Descrição

array snmp3_walk ( string $host , string $sec_name , string $sec_level , string $auth_protocol , string $auth_passphrase , string $priv_protocol , string $priv_passphrase , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

snmp3_walk() function is used to read all the values from an SNMP agent specified by the hostname.

Even if the security level does not use an auth or priv protocol/password valid values have to be specified.

Parâmetros

host

The hostname of the SNMP agent (server).

sec_name

the security name, usually some kind of username

sec_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

priv_protocol

the privacy protocol (DES or AES)

priv_passphrase

the privacy pass phrase

object_id

If NULL, object_id is taken as the root of the SNMP objects tree and all objects under that tree are returned as an array.

If object_id is specified, all the SNMP objects below that object_id are returned.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an array of SNMP object values starting from the object_id as root or FALSE on error.

Exemplos

Exemplo #1 snmp3_walk() Example

<?php
$ret = snmp3_walk('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName');
var_export($ret);
?>

Above function call would return all the SNMP objects from the SNMP agent running on localhost:

array (
  0 => 'STRING: lo',
  1 => 'STRING: eth0',
  2 => 'STRING: eth2',
  3 => 'STRING: sit0',
  4 => 'STRING: sixxs',
)

Veja Também

  • snmp3_real_walk() - Return all objects including their respective object ID within the specified one

snmp3_set
snmpget
Funções SNMP


Fetch an SNMP object

snmp3_walk
snmpgetnext
Funções SNMP
PHP Manual

snmpget

(PHP 4, PHP 5)

snmpget — Fetch an SNMP object

Descrição

string snmpget ( string $hostname , string $community , string $object_id [, int $timeout = 1000000 [, int $retries = 5 ]] )

The snmpget() function is used to read the value of an SNMP object specified by the object_id.

Parâmetros

hostname

The SNMP agent.

community

The read community.

object_id

The SNMP object.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns SNMP object value on success or FALSE on error.

Exemplos

Exemplo #1 Using snmpget()

<?php
$syscontact = snmpget("127.0.0.1", "public", "system.SysContact.0");
?>

Veja Também

  • snmpset() - Set the value of an SNMP object

snmp3_walk
snmpgetnext
Funções SNMP


Fetch the SNMP object which follows the given object id

snmpget
snmprealwalk
Funções SNMP
PHP Manual

snmpgetnext

(PHP 5)

snmpgetnext — Fetch the SNMP object which follows the given object id

Descrição

string snmpgetnext ( string $host , string $community , string $object_id [, int $timeout = 1000000 [, int $retries = 5 ]] )

The snmpgetnext() function is used to read the value of the SNMP object that follows the specified object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The read community.

object_id

The SNMP object id which precedes the wanted one.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns SNMP object value on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmpgetnext()

<?php
$nameOfSecondInterface = snmpgetnetxt('localhost', 'public', 'IF-MIB::ifName.1';
?>

Veja Também

  • snmpget() - Fetch an SNMP object
  • snmpwalk() - Fetch all the SNMP objects from an agent

snmpget
snmprealwalk
Funções SNMP


Return all objects including their respective object ID within the specified one

snmpgetnext
snmpset
Funções SNMP
PHP Manual

snmprealwalk

(PHP 4, PHP 5)

snmprealwalk — Return all objects including their respective object ID within the specified one

Descrição

array snmprealwalk ( string $host , string $community , string $object_id [, int $timeout = 1000000 [, int $retries = 5 ]] )

The snmprealwalk() function is used to traverse over a number of SNMP objects starting from object_id and return not only their values but also their object ids.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The read community.

object_id

The SNMP object id which precedes the wanted one.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an associative array of the SNMP object ids and their values on success or FALSE on error. In case of an error, an E_WARNING message is shown.

Exemplos

Exemplo #1 Using snmprealwalk()

<?php
 print_r(snmprealwalk("localhost", "public", "IF-MIB::ifName"));
?>

The above will output something like:

    Array
      (
      [IF-MIB::ifName.1] => STRING: lo
      [IF-MIB::ifName.2] => STRING: eth0
      [IF-MIB::ifName.3] => STRING: eth2
      [IF-MIB::ifName.4] => STRING: sit0
      [IF-MIB::ifName.5] => STRING: sixxs
    )

Veja Também

  • snmpwalk() - Fetch all the SNMP objects from an agent

snmpgetnext
snmpset
Funções SNMP


Set the value of an SNMP object

snmprealwalk
snmpwalk
Funções SNMP
PHP Manual

snmpset

(PHP 4, PHP 5)

snmpset — Set the value of an SNMP object

Descrição

bool snmpset ( string $host , string $community , string $object_id , string $type , mixed $value [, int $timeout = 1000000 [, int $retries = 5 ]] )

snmpset() is used to set the value of an SNMP object specified by the object_id.

Parâmetros

host

The hostname of the SNMP agent (server).

community

The write community.

object_id

The SNMP object id.

type

The MIB defines the type of each object id. It has to be specified as a single character from the below list.

types
= The type is taken from the MIB
i | INTEGER
u | INTEGER
s | STRING
x | HEX STRING
d | DECIMAL STRING
n | NULLOBJ
o | OBJID
t | TIMETICKS
a | IPADDRESS
b | BITS

If OPAQUE_SPECIAL_TYPES was defined while compiling the SNMP library, the following are also valid:

types
U | unsigned int64
I | signed int64
F | float
D | double

Most of these will use the obvious corresponding ASN.1 type. 's', 'x', 'd' and 'b' are all different ways of specifying an OCTET STRING value, and the 'u' unsigned type is also used for handling Gauge32 values.

If the MIB-Files are loaded by into the MIB Tree with "snmp_read_mib" or by specifying it in the libsnmp config, '=' may be used as the type parameter for all object ids as the type can then be automatically read from the MIB.

Note that there are two ways to set a variable of the type BITS like e.g. "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}"

  • Using type "b" and a list of bit numbers like:

    snmpset('FOO-MIB::bar.42', 'b', '0 1 2 3 4');
    with the disadvantage that the success is not easily verifyable as an snmpget() for the same OID would return e.g. 0xF8.

  • Using type "x" and a hex number but without(!) the usual "0x" prefix:

    snmpset('FOO-MIB::bar.42', 'x', 'F0');

value

The new value.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case of timeouts.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

If the SNMP host rejects the data type, an E_WARNING message like "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." is shown. If an unknown or invalid OID is specified the warning probably reads "Could not add variable".

Exemplos

Exemplo #1 Using snmpset()

<?php
  snmpset("localhost", "public", "IF-MIB::ifAlias.3", "s", "foo");
?>

Veja Também

  • snmpget() - Fetch an SNMP object

snmprealwalk
snmpwalk
Funções SNMP


Fetch all the SNMP objects from an agent

snmpset
snmpwalkoid
Funções SNMP
PHP Manual

snmpwalk

(PHP 4, PHP 5)

snmpwalk — Fetch all the SNMP objects from an agent

Descrição

array snmpwalk ( string $hostname , string $community , string $object_id [, int $timeout = 1000000 [, int $retries = 5 ]] )

snmpwalk() function is used to read all the values from an SNMP agent specified by the hostname.

Parâmetros

hostname

The SNMP agent (server).

community

The read community.

object_id

If NULL, object_id is taken as the root of the SNMP objects tree and all objects under that tree are returned as an array.

If object_id is specified, all the SNMP objects below that object_id are returned.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an array of SNMP object values starting from the object_id as root or FALSE on error.

Exemplos

Exemplo #1 snmpwalk() Example

<?php
$a = snmpwalk("127.0.0.1", "public", "");

foreach ($a as $val) {
    echo "$val\n";
}

?>

Above function call would return all the SNMP objects from the SNMP agent running on localhost. One can step through the values with a loop

Veja Também

  • snmprealwalk() - Return all objects including their respective object ID within the specified one

snmpset
snmpwalkoid
Funções SNMP


Query for a tree of information about a network entity

snmpwalk
Sockets
Funções SNMP
PHP Manual

snmpwalkoid

(PHP 4, PHP 5)

snmpwalkoid — Query for a tree of information about a network entity

Descrição

array snmpwalkoid ( string $hostname , string $community , string $object_id [, int $timeout = 1000000 [, int $retries = 5 ]] )

snmpwalkoid() function is used to read all object ids and their respective values from an SNMP agent specified by hostname.

The existence of snmpwalkoid() and snmpwalk() has historical reasons. Both functions are provided for backward compatibility. Use snmprealwalk() instead.

Parâmetros

hostname

The SNMP agent.

community

The read community.

object_id

If NULL, object_id is taken as the root of the SNMP objects tree and all objects under that tree are returned as an array.

If object_id is specified, all the SNMP objects below that object_id are returned.

timeout

The number of microseconds until the first timeout.

retries

The number of retries in case timeouts occur.

Valor Retornado

Returns an associative array with object ids and their respective object value starting from the object_id as root or FALSE on error.

Exemplos

Exemplo #1 snmpwalkoid() Example

<?php
$a = snmpwalkoid("127.0.0.1", "public", "");
for (reset($a); $i = key($a); next($a)) {
    echo "$i: $a[$i]<br />\n";
}
?>

Above function call would return all the SNMP objects from the SNMP agent running on localhost. One can step through the values with a loop

Veja Também

  • snmpwalk() - Fetch all the SNMP objects from an agent

snmpwalk
Sockets
Funções SNMP


Sockets

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Socket Errors
  • Funções para Socket
    • socket_accept — Aceita uma conexão com um socket
    • socket_bind — Passa um nome para o socket
    • socket_clear_error — Limpa o erro no socket ou o último código de erro
    • socket_close — Fecha um socket resource
    • socket_connect — Inicializa uma conexão em um socket
    • socket_create_listen — Abre uma porta do socket para aceitar conexões
    • socket_create_pair — Cria um par de sockets irreconhecíveis e armazena-os no fds.
    • socket_create — Cria um socket (endpoint para comunicação)
    • socket_get_option — Pega opções de socket para o socket
    • socket_getpeername — Pergunta ao lado remoto do socket dado qual deve ser o resultado em host/port ou no endereço UNIX filesystem, dependendo deste tipo.
    • socket_getsockname — Pergunta o lado local dado do socket no qual deve retornar resultados no host/port ou no endereço UNIX filesystem, dependendo do tipo.
    • socket_last_error — Retorna o último erro no socket
    • socket_listen — Abre escuta para uma conexão no socket
    • socket_read — Lê um comprimento máximo de bytes de um socket
    • socket_recv — Recebe dados de um socket conectado
    • socket_recvfrom — Recebe dados de um socket, conectado ou não
    • socket_select — Executa a chamada de sistema select() nos arrays dados de sockets com um timeout especificado
    • socket_send — Envia dados para um socket conectado
    • socket_sendto — Envia uma mensagem para o socket, se estiver conectado ou não
    • socket_set_block — Configura o modo bloqueio em um socket resource
    • socket_set_nonblock — Configura o modo nonblocking para o arquivo de descrição fd
    • socket_set_option — Configura opções de socket para o socket
    • socket_shutdown — Fecha um socket para receber, enviar dados ou ambos.
    • socket_strerror — Retorna uma string descrevendo o erro do socket
    • socket_write — Escreve em um socket
snmpwalkoid
Introdução
Outros Serviços


Introdução

A extensão socket implementa uma interface de baixo nível para funções de comunicação sockets baseadas no popular BSD sockets, disponibilizando acionar como um servidor socket ou como um cliente.

Para saber mais informações sobre sockets cliente-servidor, veja
stream_socket_client(),
stream_socket_server(),
fsockopen(), e
pfsockopen().

Quando usando estas funções, é importante relembrar que enquanto muitas delas tem nomes idênticos equivalentes em C, eles tem frequentemente declarações diferentes. Por favor tenha certeza lendo as descrições para evitar confusão.

Aqueles não familiarizados com programação usando socket podem encontrar muito material útil nas "man pages" de Unix, e há uma infinidade de tutoriais com informações usando socket em C na web, muito dos quais podem ser aplicados, com pequenas modificações, para programação usando socket em PHP. O » UNIX Socket FAQ pode ser um bom começo.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0.

Sockets
Instalação/Configuração
Sockets


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Sockets


Instalação

As funções de socket descritas aqui fazem parte de uma extensão do PHP que deve ser habilitada na hora de compilar adicionando a opção --enable-sockets à linha de comando configure.

Nota: O suporte ao IPv6 foi adicionado no PHP 5.0.0.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

socket_accept(),
socket_create_listen() e
socket_create() retorna resources de socket.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

AF_UNIX (integer)
AF_INET (integer)
AF_INET6 (integer)
SOCK_STREAM (integer)
SOCK_DGRAM (integer)
SOCK_RAW (integer)
SOCK_SEQPACKET (integer)
SOCK_RDM (integer)
MSG_OOB (integer)
MSG_WAITALL (integer)
MSG_PEEK (integer)
MSG_DONTROUTE (integer)
MSG_EOR (integer)
MSG_EOF (integer)
SO_DEBUG (integer)
SO_REUSEADDR (integer)
SO_KEEPALIVE (integer)
SO_DONTROUTE (integer)
SO_LINGER (integer)
SO_BROADCAST (integer)
SO_OOBINLINE (integer)
SO_SNDBUF (integer)
SO_RCVBUF (integer)
SO_SNDLOWAT (integer)
SO_RCVLOWAT (integer)
SO_SNDTIMEO (integer)
SO_RCVTIMEO (integer)
SO_TYPE (integer)
SO_ERROR (integer)
SOL_SOCKET (integer)
PHP_NORMAL_READ (integer)
PHP_BINARY_READ (integer)
SOL_TCP (integer)
SOL_UDP (integer)
Tipos Resource
Exemplos
Sockets


Exemplos

Exemplo #1 Exemplo de socket: Simples servidor TCP/IP

Este exemplo mostra uma simples troca de informações do servidor. Alterar as variáveis address e port para o conjunto da sua configuração e execução. Você deve então conectar o servidor com uma linha de comando similiar a: telnet 192.168.1.53 10000 (onde o endereço e a porta partem da sua configuração). Algo que você digitar então irá sair no lado do servidor, e mostrar isso para você. Para desconectar, digite 'quit'.

#!/usr/local/bin/php -q
<?php
error_reporting(E_ALL);

/* Allow the script to hang around waiting for connections. */
set_time_limit(0);

/* Turn on implicit output flushing so we see what we're getting
 * as it comes in. */
ob_implicit_flush();

$address = '192.168.1.53';
$port = 10000;

if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {
    echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}

if (socket_bind($sock, $address, $port) === false) {
    echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}

if (socket_listen($sock, 5) === false) {
    echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}

do {
    if (($msgsock = socket_accept($sock)) === false) {
        echo "socket_accept() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
        break;
    }
    /* Send instructions. */
    $msg = "\nWelcome to the PHP Test Server. \n" .
        "To quit, type 'quit'. To shut down the server type 'shutdown'.\n";
    socket_write($msgsock, $msg, strlen($msg));

    do {
        if (false === ($buf = socket_read($msgsock, 2048, PHP_NORMAL_READ))) {
            echo "socket_read() failed: reason: " . socket_strerror(socket_last_error($msgsock)) . "\n";
            break 2;
        }
        if (!$buf = trim($buf)) {
            continue;
        }
        if ($buf == 'quit') {
            break;
        }
        if ($buf == 'shutdown') {
            socket_close($msgsock);
            break 2;
        }
        $talkback = "PHP: You said '$buf'.\n";
        socket_write($msgsock, $talkback, strlen($talkback));
        echo "$buf\n";
    } while (true);
    socket_close($msgsock);
} while (true);

socket_close($sock);
?>

Exemplo #2 Exemplo de Socket: Simples cliente TCP/IP

Este exemplo mostra um simples, one-shot cliente HTTP. Isso simplesmente conecta à uma página, envia um cabeçalho de requisição, mostra a resposta, e sai.

<?php
error_reporting(E_ALL);

echo "<h2>TCP/IP Connection</h2>\n";

/* Get the port for the WWW service. */
$service_port = getservbyname('www', 'tcp');

/* Get the IP address for the target host. */
$address = gethostbyname('www.example.com');

/* Create a TCP/IP socket. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
    echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
} else {
    echo "OK.\n";
}

echo "Attempting to connect to '$address' on port '$service_port'...";
$result = socket_connect($socket, $address, $service_port);
if ($result === false) {
    echo "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
    echo "OK.\n";
}

$in = "HEAD / HTTP/1.1\r\n";
$in .= "Host: www.example.com\r\n";
$in .= "Connection: Close\r\n\r\n";
$out = '';

echo "Sending HTTP HEAD request...";
socket_write($socket, $in, strlen($in));
echo "OK.\n";

echo "Reading response:\n\n";
while ($out = socket_read($socket, 2048)) {
    echo $out;
}

echo "Closing socket...";
socket_close($socket);
echo "OK.\n\n";
?>

Constantes pré-definidas
Socket Errors
Sockets


Socket Errors

A extensão socket foi escrita para disponibilizar uma interface útil e poderosa para sockets BSD. Tem-se notado que as funções funcionam igualmente bem em Win32 e Unix. Quase todas as funções de sockets devem falhar sob certas condições e portanto emite uma mensagem E_WARNING descrevendo o erro. De vez em quando isso não acontece para desespero do desenvolvedor. Por exemplo a função socket_read() deve de repente emitir uma mensagem E_WARNING porque a conexão foi quebrada inesperadamente. É comum esconder as mensagens de warning com o operador @ e pegar o código de erro dentro da aplicação com a função socket_last_error(). Você deve chamar a função socket_strerror() com esse código de erro para retornar uma string descrevendo o erro. Veja sua descrição para mais informações.

Nota:

A mensagem de E_WARNING gerada pela extensão socket estão em inglês dificilmente a mensagem de erro retornada ira aparecer correto dependendo da localidade padrão (LC_MESSAGES):

Warning - socket_bind() unable to bind address [98]: Die Adresse wird bereits verwendet

Exemplos
Funções para Socket
Sockets


Funções para Socket

Índice

  • socket_accept — Aceita uma conexão com um socket
  • socket_bind — Passa um nome para o socket
  • socket_clear_error — Limpa o erro no socket ou o último código de erro
  • socket_close — Fecha um socket resource
  • socket_connect — Inicializa uma conexão em um socket
  • socket_create_listen — Abre uma porta do socket para aceitar conexões
  • socket_create_pair — Cria um par de sockets irreconhecíveis e armazena-os no fds.
  • socket_create — Cria um socket (endpoint para comunicação)
  • socket_get_option — Pega opções de socket para o socket
  • socket_getpeername — Pergunta ao lado remoto do socket dado qual deve ser o resultado em host/port ou no endereço UNIX filesystem, dependendo deste tipo.
  • socket_getsockname — Pergunta o lado local dado do socket no qual deve retornar resultados no host/port ou no endereço UNIX filesystem, dependendo do tipo.
  • socket_last_error — Retorna o último erro no socket
  • socket_listen — Abre escuta para uma conexão no socket
  • socket_read — Lê um comprimento máximo de bytes de um socket
  • socket_recv — Recebe dados de um socket conectado
  • socket_recvfrom — Recebe dados de um socket, conectado ou não
  • socket_select — Executa a chamada de sistema select() nos arrays dados de sockets com um timeout especificado
  • socket_send — Envia dados para um socket conectado
  • socket_sendto — Envia uma mensagem para o socket, se estiver conectado ou não
  • socket_set_block — Configura o modo bloqueio em um socket resource
  • socket_set_nonblock — Configura o modo nonblocking para o arquivo de descrição fd
  • socket_set_option — Configura opções de socket para o socket
  • socket_shutdown — Fecha um socket para receber, enviar dados ou ambos.
  • socket_strerror — Retorna uma string descrevendo o erro do socket
  • socket_write — Escreve em um socket
Socket Errors
socket_accept
Sockets


Aceita uma conexão com um socket

Funções para Socket
socket_bind
Funções para Socket
PHP Manual

socket_accept

(PHP 4 >= 4.1.0, PHP 5)

socket_accept — Aceita uma conexão com um socket

Descrição

resource socket_accept ( resource $socket )

Após o socket socket ter sido criado usando socket_create(), passar um nome com socket_bind(), e dizer para listar conexões com socket_listen(), essa função irá aceitar conexões vindas neste socket. Uma vez que uma conexão com sucesso é feita, um novo "resource" do socket é retornado, que deve ser usado para comunicação. Se há múltiplas conexões na fila do socket, a primeira irá ser usada. Se não há conexões pendentes, socket_accept() irá bloquear até que uma conexão esteja presente. Se socket não for desbloqueado usando socket_set_blocking() ou socket_set_nonblock(), irá retornar FALSE.

O socket resource retornado por socket_accept() não deve ser usado para aceitar novas conexões. A escuta original, socket, de qualquer modo, permanecer aberta e deve ser reutilizada.

Parâmetros

socket

Um válido resource de socket criado com socket_create().

Valor Retornado

Returns a new socket resource on success, or FALSE on error. The actual error code can be retrieved by calling socket_last_error(). This error code may be passed to socket_strerror() para pegar uma explicação textual do erro.

Veja Também

  • socket_connect() - Inicializa uma conexão em um socket
  • socket_listen() - Abre escuta para uma conexão no socket
  • socket_create() - Cria um socket (endpoint para comunicação)
  • socket_bind() - Passa um nome para o socket
  • socket_strerror() - Retorna uma string descrevendo o erro do socket

Funções para Socket
socket_bind
Funções para Socket


Passa um nome para o socket

socket_accept
socket_clear_error
Funções para Socket
PHP Manual

socket_bind

(PHP 4 >= 4.1.0, PHP 5)

socket_bind — Passa um nome para o socket

Descrição

bool socket_bind ( resource $socket , string $address [, int $port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

socket_bind() passa o nome dado em address para o socket descrito por socket, que deve ser um resource socket válido criado com socket_create().

O parâmetro address é qualquer endereço IP na notação "dotted-quad" (ex. 127.0.0.1), se o socket é da família AF_INET; ou o pathname de um Unix-domain socket, se o socket é da família AF_UNIX.

O parâmetro port é somente usado quando estiver conectando com um socket AF_INET, e determina a porta no host remoto para o qual a conexão deve ser feita.

Retorna TRUE em caso de sucesso ou FALSE em falhas. O código de erro pode ser retornado com socket_last_error(). Esse código deve ser passado para socket_strerror() para pegar uma explicação textual do erro. Note que socket_last_error() é reportado para retornar um código de erro inválido no caso de você estar tentando passar um socket para um endereço errado que não pertence à sua máquina Windows 9x/ME.

Veja também
socket_connect(),
socket_listen(),
socket_create(),
socket_last_error() e
socket_strerror().

socket_accept
socket_clear_error
Funções para Socket


Limpa o erro no socket ou o último código de erro

socket_bind
socket_close
Funções para Socket
PHP Manual

socket_clear_error

(PHP 4 >= 4.2.0, PHP 5)

socket_clear_error — Limpa o erro no socket ou o último código de erro

Descrição

void socket_clear_error ([ resource $socket ] )

Essa função limpa o código de erro dado no socket ou o último erro de socket global se nenhum for especificado.

Essa função permite explicitamente resetar qualquer valor do código de erro do socket ou da extensão global do último código de erro. Isso deve ser útil para detectar dentro de uma parte da aplicação se um erro ocorreu ou não.

Parâmetros

socket

Um válido resource de socket criado com socket_create().

Valor Retornado

Não há valor retornado.

Veja Também

  • socket_last_error() - Retorna o último erro no socket
  • socket_strerror() - Retorna uma string descrevendo o erro do socket

socket_bind
socket_close
Funções para Socket


Fecha um socket resource

socket_clear_error
socket_connect
Funções para Socket
PHP Manual

socket_close

(PHP 4 >= 4.1.0, PHP 5)

socket_close — Fecha um socket resource

Descrição

void socket_close ( resource $socket )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

socket_close() fecha o socket resource dado por socket.

Nota:

socket_close() não pode ser usado  em arquivos PHP file resources
criados com fopen(), popen(),
fsockopen(), ou pfsockopen(); isso serve
parapara sockets criados com socket_create() ou
socket_accept().

Veja também socket_bind(), socket_listen(),
socket_create() e
socket_strerror().

socket_clear_error
socket_connect
Funções para Socket


Inicializa uma conexão em um socket

socket_close
socket_create_listen
Funções para Socket
PHP Manual

socket_connect

(PHP 4 >= 4.1.0, PHP 5)

socket_connect — Inicializa uma conexão em um socket

Descrição

bool socket_connect ( resource $socket , string $address [, int $port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Inicializa uma conexão usando o socket resource socket, que deve ser um válido socket resource criado com socket_create().

O parâmetro address é qualquer endereço IP na notação "dotted-quad" (ex. 127.0.0.1), se o socket é da família AF_INET; ou o pathname de um Unix-domain socket, se o socket é da família AF_UNIX.

O parâmetro port é somente usado quando estiver conectando com um socket AF_INET, e determina a porta no host remoto para o qual a conexão deve ser feita.

Retorna TRUE em caso de sucesso ou FALSE em falhas. O código de erro pode ser retornado com socket_last_error(). Esse código deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Veja também
socket_bind(),
socket_listen(),
socket_create(),
socket_last_error() e
socket_strerror().

socket_close
socket_create_listen
Funções para Socket


Abre uma porta do socket para aceitar conexões

socket_connect
socket_create_pair
Funções para Socket
PHP Manual

socket_create_listen

(PHP 4 >= 4.1.0, PHP 5)

socket_create_listen — Abre uma porta do socket para aceitar conexões

Descrição

resource socket_create_listen ( int $port [, int $backlog ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Essa função significa facilidade na tarefa de criação de um novo socket que esteja na escuta somente para aceitar novas conexões.

socket_create_listen() cria um novo socket resource do tipo AF_INET escutando all interfaces loacis na porta especificada esperando por novas conexões.

O parâmetro backlog define o comprimento máximo da fila de espera de conexões pendentes até onde ela deve crescer. SOMAXCONN deve ser passado como o parâmetro backlog, veja socket_listen() para maiores informações.

socket_create_listen() retorna um novo socket resource em caso de sucesso ou FALSE em caso de erro. O código de erro pode ser retornado com socket_last_error(). Esse código deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Nota:

Se você quer criar um socket com somente escutas em certas interfaces você deve precisar usar socket_create(), socket_bind() e socket_listen().

Veja também
socket_create(),
socket_bind(),
socket_listen(),
socket_last_error() e
socket_strerror().

socket_connect
socket_create_pair
Funções para Socket


Cria um par de sockets irreconhecíveis e armazena-os no fds.

socket_create_listen
socket_create
Funções para Socket
PHP Manual

socket_create_pair

(PHP 4 >= 4.1.0, PHP 5)

socket_create_pair — Cria um par de sockets irreconhecíveis e armazena-os no fds.

Descrição

bool socket_create_pair ( int $domain , int $type , int $protocol , array $&fd )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

socket_create_listen
socket_create
Funções para Socket


Cria um socket (endpoint para comunicação)

socket_create_pair
socket_get_option
Funções para Socket
PHP Manual

socket_create

(PHP 4 >= 4.1.0, PHP 5)

socket_create — Cria um socket (endpoint para comunicação)

Descrição

resource socket_create ( int $domain , int $type , int $protocol )

Cria e retorna um socket resource, também referenciado como um endpoint para comunicação. Uma conexão típica de rede é feita em cima de 2 sockets, um realizando o papel do cliente, e o outro realizando o papel de servidor.

O parâmetro domain especifica a família do protocolo para ser usado pelo socket.

Famílias disponíveis Endereços/Protocolos
Domínio | Descrição
AF_INET | IPv4 baseado nos protocolos de Internet. TCP e UDP são protocolos comuns dessa família de protocolos.
AF_INET6 | IPv6 baseado nos protocolos de Internet. TCP e UDP são protocolos comuns dessa família de protocolos. Suporta adicionado no PHP 5.0.0.
AF_UNIX | Família de protocolos de comunicação local. Alta eficiência e baixo sobrecarga fazem deste uma forte forma de IPC (Processos internos de comunicação).

O parâmetro type seleciona o tipo de comunicação para ser usado pelo socket.

Tipos de socket disponíveis
Tipo | Descrição
SOCK_STREAM | Fornece sequencial, seguro, e em ambos os sentidos, conexões baseadas em "byte streams". Dados "out-of-band" do mecanismo de transmissão devem ser suportados. O protocolo TCP é baseado neste tipo de socket.
SOCK_DGRAM | Suporta diagrama de dados (baixa conexão, mensagens inconfiáveis de um comprimento máximo fixo). O protocolo UDP protocol é baseado neste tipo de socket.
SOCK_SEQPACKET | Fornece um sequencial, seguro, e em duas direções de tipos de conexões para transmissão de dados endereçados para o diagrama de dados de comprimento máximo fixo; um consumidor é requerido para ler um pacote inteiro com cada chamada de leitura.
SOCK_RAW | Fornece um protocolo de rede de acesso rápido. Este tipo especial de socket pode ser usado manualmente para construir algum tipo de protocolo. Um uso comum para esse tipo de socket é desempenhar requisições ICMP (como ping, traceroute, etc).
SOCK_RDM | Fornece uma camada seguro que não garante ordenação. Isso é comumente não implementado no seu sistema operacional.

O parâmetro protocol configura o protocolo especificado dentro do domain especificado para ser usado quando houver comunicação de retorno com o socket. O valor da propriedade pode ser retornado pelo nome usando getprotobyname(). Se o protocolo desejado é TCP, ou UDP as constantes correspondentes são SOL_TCP, e SOL_UDP podem também ser usadas.

Protocolos comuns
Nome | Descrição
icmp | O protocolo de controle de mensagens internet "The Internet Control Message Protocol" é usado primariamente por gateways e hosts para reportar erros no diagrama de dados de comunicação. O comando "ping" (presente em muitos modernos sistemas operacionais) é um exemplo aplicado de ICMP.
udp | O protocolo de diagrama de dados de usuários "User Datagram Protocol" é de conexão baixa, inseguro, protocolo com comprimento fixo. Dois destes aspectos, UDP requer uma quantidade mínima de sobrecarga de protocolo.
tcp | O protocolo de controle de transmissão é uma conexão, seguro, fluxo orientado, e protocolo de ida e volta. TCP garante que todos os pacotes de dados irão ser recebidos na ordem que eles são enviados. Se algum pacote está perdido de alguma maneira durante a comunicação, TCP irá automaticamente retransmitir o pacote até que o host de destino reconheça aquele pacote. Por razões de segurança e performance, o TCP implementa nele próprio decisões apropriadas de limite de octetos do diagrama de dados abaixo da camada de comunicação. Portanto, aplicações TCP devem permitir para possibilidades de registro de transmissões.

socket_create() retorna um socket resource em caso de sucesso, ou FALSE em caso de erro. O código de erro atual pode ser retornado chamando socket_last_error(). Esse código de erro deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Nota:

Se um inválido domain ou type é dado, socket_create() padrão é para AF_INET e SOCK_STREAM respectivamente e adicionamente emitem uma mensagem E_WARNING.

Veja também
socket_accept(),
socket_bind(),
socket_connect(),
socket_listen(),
socket_last_error(), e
socket_strerror().

socket_create_pair
socket_get_option
Funções para Socket


Pega opções de socket para o socket

socket_create
socket_getpeername
Funções para Socket
PHP Manual

socket_get_option

(PHP 4 >= 4.3.0, PHP 5)

socket_get_option — Pega opções de socket para o socket

Descrição

mixed socket_get_option ( resource $socket , int $level , int $optname )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Nota:

Essa função é para ser usada chamando socket_getopt() primeiramente para PHP 4.3.0

socket_create
socket_getpeername
Funções para Socket


Pergunta ao lado remoto do socket dado qual deve ser o resultado em host/port ou no endereço UNIX filesystem, dependendo deste tipo.

socket_get_option
socket_getsockname
Funções para Socket
PHP Manual

socket_getpeername

(PHP 4 >= 4.1.0, PHP 5)

socket_getpeername — Pergunta ao lado remoto do socket dado qual deve ser o resultado em host/port ou no endereço UNIX filesystem, dependendo deste tipo.

Descrição

bool socket_getpeername ( resource $socket , string $&addr [, int $&port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Se o socket dado é do tipo AF_INET ou AF_INET6, socket_getpeername() irá retornar o peers (remote) IP address na notação apropriada (ex. 127.0.0.1 ou fe80::1) no parâmetro address e, se o parâmetro opcional port está presente, também o associa à porta.

Se o socket dado é do tipo AF_UNIX, socket_getpeername() irá retornar o endereço UNIX filesystem (ex. /var/run/daemon.sock) no parâmetro address.

Nota: socket_getpeername() não deve ser usado com sockets AF_UNIX criados com socket_accept(). Somente sockets criados com socket_connect() ou um socket de servidor primário seguindo uma chamada para socket_bind() irá retornar valores significativos.

Retorna TRUE em caso de sucesso ou FALSE em falhas. socket_getpeername() deve também retornar FALSE se o tipo de socket não é algum destes AF_INET, AF_INET6, ou AF_UNIX, no caso o último código de erro do socket não é atualizado.

Veja também
socket_getsockname(),
socket_last_error() e
socket_strerror().

socket_get_option
socket_getsockname
Funções para Socket


Pergunta o lado local dado do socket no qual deve retornar resultados no host/port ou no endereço UNIX filesystem, dependendo do tipo.

socket_getpeername
socket_last_error
Funções para Socket
PHP Manual

socket_getsockname

(PHP 4 >= 4.1.0, PHP 5)

socket_getsockname — Pergunta o lado local dado do socket no qual deve retornar resultados no host/port ou no endereço UNIX filesystem, dependendo do tipo.

Descrição

bool socket_getsockname ( resource $socket , string $&addr [, int $&port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Se o socket dado é do tipo AF_INET ou AF_INET6, socket_getsockname() irá retornar o endereço IP local IP address na notação apropriada (ex. 127.0.0.1 ou fe80::1) no parâmetro address e, se o parâmetro opcional port está presente, também associa-o à porta.

Se o socket dado é do tipo AF_UNIX, socket_getsockname() irá retornar o endereço UNIX filesystem (ex. /var/run/daemon.sock) no parâmetro address.

Nota: socket_getsockname() não deve ser usado com sockets AF_UNIX criados com socket_connect(). Somente sockets criados com socket_accept() ou sockets de servidores primários seguidos de uma chamada para socket_bind() irão retornar valores significativos.

Retorna TRUE em caso de sucesso ou FALSE em falhas. socket_getsockname() deve também retornar FALSE se o tipo de socket não é algum destes AF_INET, AF_INET6, ou AF_UNIX, no caso o último código de erro do socket não é atualizado.

Veja também
socket_getpeername(),
socket_last_error() e
socket_strerror().

socket_getpeername
socket_last_error
Funções para Socket


Retorna o último erro no socket

socket_getsockname
socket_listen
Funções para Socket
PHP Manual

socket_last_error

(PHP 4 >= 4.1.0, PHP 5)

socket_last_error — Retorna o último erro no socket

Descrição

int socket_last_error ([ resource $socket ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Essa função retorna um código de erro do socket.

Se o socket resource é passado para esta função, o último erro que ocorreu neste socket em particular é retornado. Se o socket resource é omitido, o código de erro da última falha na função de socket é retornado. O último é em particular útil como socket_create() que não retorna uma falha no socket e socket_select() que pode falhar por razões não diretamente vinculadas com um socket em particular. O código de erro é conveniente ser colocado para socket_strerror() que retorna uma string descrevendo o código de erro dado.

<?php
if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP))) {
    die("Couldn't create socket, error code is: " . socket_last_error() .
        ",error message is: " . socket_strerror(socket_last_error()));
}
?>

Nota:

socket_last_error() não limpa o código de erro, use socket_clear_error() para este propósito.

socket_getsockname
socket_listen
Funções para Socket


Abre escuta para uma conexão no socket

socket_last_error
socket_read
Funções para Socket
PHP Manual

socket_listen

(PHP 4 >= 4.1.0, PHP 5)

socket_listen — Abre escuta para uma conexão no socket

Descrição

bool socket_listen ( resource $socket [, int $backlog ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Após o socket socket ter sido criado usando socket_create() e associado para um nome com socket_bind(), ele deve dizer para aguardar por escuta em conexões que irão entrar socket.

Um máximo de backlog em conexões entrantes irão ser listadas para este processamento. Se uma requisição de conexão chegar com um limite de clientes devem receber um erro com uma identificação de ECONNREFUSED, ou, se o protocolo abaixo suporta retransmissão, a requisição deve ser ignorada de forma até serem bem sucedidas.

Nota:

O máximo número passado para o parâmetro backlog altamente dependente da plataforma abaixo. No linux, isso é silenciosamente truncado para SOMAXCONN. No win32, se passado SOMAXCONN, o disponibilizador de serviço abaixo responsável pelo socket irá configurar o backlog para o valor máximo reasonable. Não há uma condição para procurar o valor do backlog atual nesta plataforma.

socket_listen() é aplicável somente para sockets do tipo SOCK_STREAM ou SOCK_SEQPACKET.

Retorna TRUE em caso de sucesso ou FALSE em falhas. O código de erro pode ser retornado com socket_last_error(). Isso código deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Veja também
socket_accept(),
socket_bind(),
socket_connect(),
socket_create() e
socket_strerror().

socket_last_error
socket_read
Funções para Socket


Lê um comprimento máximo de bytes de um socket

socket_listen
socket_recv
Funções para Socket
PHP Manual

socket_read

(PHP 4 >= 4.1.0, PHP 5)

socket_read — Lê um comprimento máximo de bytes de um socket

Descrição

string socket_read ( resource $socket , int $length [, int $type ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A função socket_read() lê o socket resource socket criado pelas funções socket_create() ou socket_accept(). O número máximo de bytes lidos é especificado pelo parâmetro length. Caso contrário você pode usar \r, \n, uo \0 para finalizar a leitura (dependendo do parâmetro type, veja abaixo).

socket_read() retorna dados como uma string em caso de sucesso, ou FALSE em caso de erro. O código de erro pode ser retornado com socket_last_error(). Esse código deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Nota:

socket_read() deve retornar uma string de comprimento zero ("") indicando o fim da comunicação (ex. o ponto final remoto encerra a conexão).

O parâmetro opcional type é usado com constantes:

  • PHP_BINARY_READ - usa a função do sistema read(). Seguro para leitura de dados binários. (Padrão no PHP >= 4.1.0)
  • PHP_NORMAL_READ - lê até o final em \n ou \r. (Padrão no PHP <= 4.0.6)

Veja também
socket_accept(),
socket_bind(),
socket_connect(),
socket_listen(),
socket_last_error(),
socket_strerror() e
socket_write().

socket_listen
socket_recv
Funções para Socket


Recebe dados de um socket conectado

socket_read
socket_recvfrom
Funções para Socket
PHP Manual

socket_recv

(PHP 4 >= 4.1.0, PHP 5)

socket_recv — Recebe dados de um socket conectado

Descrição

int socket_recv ( resource $socket , string &$buf , int $len , int $flags )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

socket_read
socket_recvfrom
Funções para Socket


Recebe dados de um socket, conectado ou não

socket_recv
socket_select
Funções para Socket
PHP Manual

socket_recvfrom

(PHP 4 >= 4.1.0, PHP 5)

socket_recvfrom — Recebe dados de um socket, conectado ou não

Descrição

int socket_recvfrom ( resource $socket , string $&buf , int $len , int $flags , string $&name [, int $&port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

socket_recv
socket_select
Funções para Socket


Executa a chamada de sistema select() nos arrays dados de sockets com um timeout especificado

socket_recvfrom
socket_send
Funções para Socket
PHP Manual

socket_select

(PHP 4 >= 4.1.0, PHP 5)

socket_select — Executa a chamada de sistema select() nos arrays dados de sockets com um timeout especificado

Descrição

int socket_select ( array $&read , array $&write , array $&except , int $tv_sec [, int $tv_usec ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

socket_select() aceita arrays de sockets e aguarda até que seu status seja alterado. Estes vem com "background" de sockets BSD irá reconhecer aquele array de socket resource são de fato a chamada ao arquivo descritor de configuração (fds). Três arrays independentes de socket resources são observados.

A lista de sockets no array read irá ser mostrada para ver se o caractere disponível anterior à leitura (mais precisamente, para ver se a leitura não está obstruída - em particular, um socket resource está também no fim-de-arquivo (EOF) , neste caso o socket_read() irá retornar uma string com comprimento zero.

A lista de sockets no array write irá ser visualizada para mostrar se não é uma escrita não está obstruída.

A lista de sockets no array except irá mostrar caso haja exceções.

Aviso

Na saída, os arrays são modificados para indicar qual socket resource atualmente alterou seu status.

Você não precisa passar cada array para socket_select(). Você pode deixá-los de fora e usar um array vazio ou NULL ao invés disso. Também não se esqueça que esses arrays são passados by reference e irão ser modificados após o retorno de socket_select().

Exemplo #1 Exemplo de socket_select()

<?php
/* Prepare the read array */
$read = array($socket1, $socket2);

$num_changed_sockets = socket_select($read, $write = NULL, $except = NULL, 0);

if ($num_changed_sockets === false) {
    /* Error handling */
} else if ($num_changed_sockets > 0) {
    /* At least at one of the sockets something interesting happened */
}
?>

Nota:

Devido a uma limitação no atual Zend Engine não é possível passar um modificador de constante como NULL diretamente como parâmetro para uma função que tem exceção para este parâmetro sendo passado por referência. Ao invés disso use uma variável temporária ou uma expressão com o leftmost member sendo uma variável temporária:

Exemplo #2 Usando NULL com socket_select()

<?php
socket_select($r, $w, $e = NULL, 0);
?>

O tv_sec e tv_usec juntos formam o parâmetro timeout. O timeout é o limite máximo da quantidade de tempo passado antes do retorno de socket_select(). tv_sec deve ser zero , causando o retorno imediato de socket_select(). Isso é útil para polling. Se tv_sec é NULL (sem timeout), socket_select() pode bloquear definitivamente.

Em caso de sucesso socket_select() retorna o número de socket resorces contidos nos arrays modificados, que deve ser zero se alguma coisa interessante acontecer antes do timeout expirar. Em caso de erro, FALSE é retornado. O código do erro pode ser retornado com socket_last_error().

Nota:

Tenha certeza de usar o operador === quando checar por um erro. Desde de que socket_select() deve retornar 0 a comparação com == deve retornar TRUE:

Exemplo #3 Entendendo resultados de socket_select()

<?php
if (false === socket_select($r, $w, $e = NULL, 0)) {
    echo "socket_select() failed, reason: " .
        socket_strerror(socket_last_error()) . "\n";
}
?>

Nota:

Esteja consciente que algumas implementações de sockets precisam ser manuseadas com muito cuidado. As regras básicas:

  • Você deve sempre tentar usar socket_select() sem timeout. Seu programa não deve fazer nada se não há dados disponíveis. Códigos que dependem de timeouts não são usualmente portáveis e dificultam o debug.
  • No socket resource deve ser adicionado alguma configuração se você não pretende checar o resultado após a chamada de socket_select(), e responder de forma apropriada. Após o retorno de socket_select(), todos os sockets resources em todos os arrays devem ser checados. Algum socket resource que está disponível para escrita deve ser escrito, e algum socket resource disponível para leitura deve ser lido.
  • Se você está lendo/escrevendo um retorno de socket em array esteja consciente que eles não necessariamente estão lendo/escrevendo a quantidade completa de dados que você requisitou. Esteja preparado para somente habilitar para leitura/escrita um único byte.
  • Isso é comum na grande maioria de implementações de socket que pegam exceções através do except array está fora do limite de dados recebidos no socket.

Veja também
socket_read(),
socket_write(),
socket_last_error() e
socket_strerror().

socket_recvfrom
socket_send
Funções para Socket


Envia dados para um socket conectado

socket_select
socket_sendto
Funções para Socket
PHP Manual

socket_send

(PHP 4 >= 4.1.0, PHP 5)

socket_send — Envia dados para um socket conectado

Descrição

int socket_send ( resource $socket , string $buf , int $len , int $flags )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A função socket_send() envia len bytes para o socket socket de buf

O valor de flags pode ser alguma combinação ORed das seguintes:

Possíveis valores para flags
0x1 | Processo OOB (out-of-band) de dados
0x2 | Ver mensagens de entrada.
0x4 | Bypass routing, usa interface direta.
0x8 | Fluxo completo de dados.
0x100 | Transação completa de dados.

Veja também socket_sendmsg() e socket_sendto().

socket_select
socket_sendto
Funções para Socket


Envia uma mensagem para o socket, se estiver conectado ou não

socket_send
socket_set_block
Funções para Socket
PHP Manual

socket_sendto

(PHP 4 >= 4.1.0, PHP 5)

socket_sendto — Envia uma mensagem para o socket, se estiver conectado ou não

Descrição

int socket_sendto ( resource $socket , string $buf , int $len , int $flags , string $addr [, int $port ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A função socket_sendto() envia len bytes de buf através do socket socket para a port no endereço addr

O valor de flags pode ser um dos seguintes:

Valores possíveis para flags
0x1 | Processo OOB (out-of-band) de dados.
0x2 | Ver mensagens de entrada.
0x4 | Bypass routing, usa interface direta.
0x8 | Fluxo completo de dados.
0x100 | Transação completa de dados.

Exemplo #1 Exemplo socket_sendto()

<?php
    $sh = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
    if (socket_bind($sh, '127.0.0.1', 4242)) {
        echo "Socket bound correctly";
    }
    $buf = 'Test Message';
    $len = strlen($buf);
    if (socket_sendto($sh, $buf, $len, 0x100, '192.168.0.2', 4242) !== FALSE) {
        echo "Message sent correctly";
    }
    socket_close($sh);
?>

Veja também socket_send() e socket_sendmsg().

socket_send
socket_set_block
Funções para Socket


Configura o modo bloqueio em um socket resource

socket_sendto
socket_set_nonblock
Funções para Socket
PHP Manual

socket_set_block

(PHP 4 >= 4.2.0, PHP 5)

socket_set_block — Configura o modo bloqueio em um socket resource

Descrição

bool socket_set_block ( resource $socket )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja também socket_set_nonblock() e socket_set_option()

socket_sendto
socket_set_nonblock
Funções para Socket


Configura o modo nonblocking para o arquivo de descrição fd

socket_set_block
socket_set_option
Funções para Socket
PHP Manual

socket_set_nonblock

(PHP 4 >= 4.1.0, PHP 5)

socket_set_nonblock — Configura o modo nonblocking para o arquivo de descrição fd

Descrição

bool socket_set_nonblock ( resource $socket )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

socket_set_block
socket_set_option
Funções para Socket


Configura opções de socket para o socket

socket_set_nonblock
socket_shutdown
Funções para Socket
PHP Manual

socket_set_option

(PHP 4 >= 4.3.0, PHP 5)

socket_set_option — Configura opções de socket para o socket

Descrição

bool socket_set_option ( resource $socket , int $level , int $optname , mixed $optval )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Nota:

Essa função é usado chamando socket_setopt() primariamente para PHP 4.3.0

socket_set_nonblock
socket_shutdown
Funções para Socket


Fecha um socket para receber, enviar dados ou ambos.

socket_set_option
socket_strerror
Funções para Socket
PHP Manual

socket_shutdown

(PHP 4 >= 4.1.0, PHP 5)

socket_shutdown — Fecha um socket para receber, enviar dados ou ambos.

Descrição

bool socket_shutdown ( resource $socket [, int $how ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A função socket_shutdown() permite que você pare a entrada, saída ou todos os dados (este é o padrão) de serem enviados através do socket

O valor de how pode ser um dos seguintes:

possible values for how
0 | Fecha o socjet para leitura
1 | Fecha o socket para escrita
2 | Fecha o socket para leitura e escrita

socket_set_option
socket_strerror
Funções para Socket


Retorna uma string descrevendo o erro do socket

socket_shutdown
socket_write
Funções para Socket
PHP Manual

socket_strerror

(PHP 4 >= 4.1.0, PHP 5)

socket_strerror — Retorna uma string descrevendo o erro do socket

Descrição

string socket_strerror ( int $errno )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

socket_strerror() pega como parâmetro errno um código de erro de socket retornado por socket_last_error() e retorna a explicação em texto correspondente. Isso faz com que isso tenha uma imagem de saída mais agradável porque alguma coisa não funciona; for exemplo, ao invés de ter que fazer procura de uma inclusão de um arquivo do sistema do que '-111' significa, você somente passa isso para socket_strerror(), e ele lhe fala o que acontece.

Exemplo #1 Exemplo de socket_strerror()

<?php
if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, 0))) {
   echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}

if (false == (@socket_bind($socket, '127.0.0.1', 80))) {
   echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($socket)) . "\n";
}
?>

A saída esperada do exemplo acima (assumindo que o script não está rodando com privilégios de root):

socket_bind() failed: reason: Permission denied

Veja também
socket_accept(),
socket_bind(),
socket_connect(),
socket_listen(), e
socket_create().

socket_shutdown
socket_write
Funções para Socket


Escreve em um socket

socket_strerror
SSH2
Funções para Socket
PHP Manual

socket_write

(PHP 4 >= 4.1.0, PHP 5)

socket_write — Escreve em um socket

Descrição

int socket_write ( resource $socket , string $buffer [, int $length ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A função socket_write() escreve em um socket socket de buffer.

O parâmetro opcional length pode especificar um comprimento alternativo de bytes escritos para o socket. Se esse comprimento é maior do que o comprimento do buffer, isso será silenciosamente truncado para o comprimento do buffer.

Retorna o número de bytes escritos com sucesso para o socket ou FALSE em um erro. O código de erro pode ser retornado com socket_last_error(). Esse código deve ser passado para socket_strerror() para pegar uma explicação textual do erro.

Nota:

socket_write() não necessariamente escreve todos os bytes dados do buffer. Isso é valido, dependendo da rede, buffers etc., somente uma quantidade segura de dados, sempre um byte, é escrito embora seu buffer seja maior. Você deve prestar atenção para involuntariamente esquecer de transmitir o restante dos seus dados.

Nota:

Isso é perfeitamente válido para socket_write() retornar zero que significa que não tem bytes para escrever. Tenha certeza de usar o operador === para checar por FALSE em caso de um erro.

Veja também
socket_accept(),
socket_bind(),
socket_connect(),
socket_listen(),
socket_read() e
socket_strerror().

socket_strerror
SSH2
Funções para Socket


Secure Shell2

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • SSH2 Funções
    • ssh2_auth_hostbased_file — Authenticate using a public hostkey
    • ssh2_auth_none — Authenticate as "none"
    • ssh2_auth_password — Authenticate over SSH using a plain password
    • ssh2_auth_pubkey_file — Authenticate using a public key
    • ssh2_connect — Connect to an SSH server
    • ssh2_exec — Execute a command on a remote server
    • ssh2_fetch_stream — Fetch an extended data stream
    • ssh2_fingerprint — Retrieve fingerprint of remote server
    • ssh2_methods_negotiated — Return list of negotiated methods
    • ssh2_publickey_add — Add an authorized publickey
    • ssh2_publickey_init — Initialize Publickey subsystem
    • ssh2_publickey_list — List currently authorized publickeys
    • ssh2_publickey_remove — Remove an authorized publickey
    • ssh2_scp_recv — Request a file via SCP
    • ssh2_scp_send — Send a file via SCP
    • ssh2_sftp_lstat — Stat a symbolic link
    • ssh2_sftp_mkdir — Create a directory
    • ssh2_sftp_readlink — Return the target of a symbolic link
    • ssh2_sftp_realpath — Resolve the realpath of a provided path string
    • ssh2_sftp_rename — Rename a remote file
    • ssh2_sftp_rmdir — Remove a directory
    • ssh2_sftp_stat — Stat a file on a remote filesystem
    • ssh2_sftp_symlink — Create a symlink
    • ssh2_sftp_unlink — Delete a file
    • ssh2_sftp — Initialize SFTP subsystem
    • ssh2_shell — Request an interactive shell
    • ssh2_tunnel — Open a tunnel through a remote server
socket_write
Introdução
Outros Serviços


Introdução

Bindings to the » libssh2 library which provide access to resources (shell, remote exec, tunneling, file transfer) on a remote machine using a secure cryptographic transport.

SSH2
Instalação/Configuração
SSH2


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SSH2


Dependências

The » OpenSSL and » libssh2 libraries are required. Ensure that the development libraries are installed, where a typical package name might be openssl-dev.

Nota: Version 0.4 or newer of the libssh2 library is required, although it's possible newer releases of pecl/ssh2 may require newer versions (see the release notes).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ssh2.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SSH2_FINGERPRINT_MD5 (integer)
Flag to ssh2_fingerprint() requesting hostkey fingerprint as an MD5 hash.
SSH2_FINGERPRINT_SHA1 (integer)
Flag to ssh2_fingerprint() requesting hostkey fingerprint as an SHA1 hash.
SSH2_FINGERPRINT_HEX (integer)
Flag to ssh2_fingerprint() requesting hostkey fingerprint as a string of hexits.
SSH2_FINGERPRINT_RAW (integer)
Flag to ssh2_fingerprint() requesting hostkey fingerprint as a raw string of 8-bit characters.
SSH2_TERM_UNIT_CHARS (integer)
Flag to ssh2_shell() specifying that width and height are provided as character sizes.
SSH2_TERM_UNIT_PIXELS (integer)
Flag to ssh2_shell() specifying that width and height are provided in pixel units.
SSH2_DEFAULT_TERM_WIDTH (integer)
Default terminal width requested by ssh2_shell().
SSH2_DEFAULT_TERM_HEIGHT (integer)
Default terminal height requested by ssh2_shell().
SSH2_DEFAULT_TERM_UNIT (integer)
Default terminal units requested by ssh2_shell().
SSH2_STREAM_STDIO (integer)
Flag to ssh2_fetch_stream() requesting STDIO subchannel.
SSH2_STREAM_STDERR (integer)
Flag to ssh2_fetch_stream() requesting STDERR subchannel.
SSH2_DEFAULT_TERMINAL (string)
Default terminal type (e.g. vt102, ansi, xterm, vanilla) requested by ssh2_shell().
Tipos Resource
SSH2 Funções
SSH2


SSH2 Funções

Índice

  • ssh2_auth_hostbased_file — Authenticate using a public hostkey
  • ssh2_auth_none — Authenticate as "none"
  • ssh2_auth_password — Authenticate over SSH using a plain password
  • ssh2_auth_pubkey_file — Authenticate using a public key
  • ssh2_connect — Connect to an SSH server
  • ssh2_exec — Execute a command on a remote server
  • ssh2_fetch_stream — Fetch an extended data stream
  • ssh2_fingerprint — Retrieve fingerprint of remote server
  • ssh2_methods_negotiated — Return list of negotiated methods
  • ssh2_publickey_add — Add an authorized publickey
  • ssh2_publickey_init — Initialize Publickey subsystem
  • ssh2_publickey_list — List currently authorized publickeys
  • ssh2_publickey_remove — Remove an authorized publickey
  • ssh2_scp_recv — Request a file via SCP
  • ssh2_scp_send — Send a file via SCP
  • ssh2_sftp_lstat — Stat a symbolic link
  • ssh2_sftp_mkdir — Create a directory
  • ssh2_sftp_readlink — Return the target of a symbolic link
  • ssh2_sftp_realpath — Resolve the realpath of a provided path string
  • ssh2_sftp_rename — Rename a remote file
  • ssh2_sftp_rmdir — Remove a directory
  • ssh2_sftp_stat — Stat a file on a remote filesystem
  • ssh2_sftp_symlink — Create a symlink
  • ssh2_sftp_unlink — Delete a file
  • ssh2_sftp — Initialize SFTP subsystem
  • ssh2_shell — Request an interactive shell
  • ssh2_tunnel — Open a tunnel through a remote server
Constantes pré-definidas
ssh2_auth_hostbased_file
SSH2


Authenticate using a public hostkey

SSH2 Funções
ssh2_auth_none
SSH2 Funções
PHP Manual

ssh2_auth_hostbased_file

(PECL ssh2 >= 0.9.0)

ssh2_auth_hostbased_file — Authenticate using a public hostkey

Descrição

bool ssh2_auth_hostbased_file ( resource $session , string $username , string $hostname , string $pubkeyfile , string $privkeyfile [, string $passphrase [, string $local_username ]] )

Authenticate using a public hostkey read from a file.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

username

hostname

pubkeyfile

privkeyfile

passphrase

If privkeyfile is encrypted (which it should be), the passphrase must be provided.

local_username

If local_username is omitted, then the value for username will be used for it.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Authentication using a public hostkey

<?php
$connection = ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));

if (ssh2_auth_hostbased_file($connection, 'remoteusername', 'myhost.example.com',
                             '/usr/local/etc/hostkey_rsa.pub',
                             '/usr/local/etc/hostkey_rsa', 'secret',
                             'localusername')) {
  echo "Public Key Hostbased Authentication Successful\n";
} else {
  die('Public Key Hostbased Authentication Failed');
}
?>

Notas

Nota:

ssh2_auth_hostbased_file() requires libssh2 >= 0.7 and PHP/SSH2 >= 0.7

SSH2 Funções
ssh2_auth_none
SSH2 Funções


Authenticate as "none"

ssh2_auth_hostbased_file
ssh2_auth_password
SSH2 Funções
PHP Manual

ssh2_auth_none

(PECL ssh2 >= 0.9.0)

ssh2_auth_none — Authenticate as "none"

Descrição

mixed ssh2_auth_none ( resource $session , string $username )

Attempt "none" authentication which usually will (and should) fail. As part of the failure, this function will return an array of accepted authentication methods.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

username

Remote user name.

Valor Retornado

Returns TRUE if the server does accept "none" as an authentication method, or an array of accepted authentication methods on failure.

Exemplos

Exemplo #1 Retrieving a list of authentication methods

<?php
$connection = ssh2_connect('shell.example.com', 22);

$auth_methods = ssh2_auth_none($connection, 'user');

if (in_array('password', $auth_methods)) {
  echo "Server supports password based authentication\n";
}
?>

ssh2_auth_hostbased_file
ssh2_auth_password
SSH2 Funções


Authenticate over SSH using a plain password

ssh2_auth_none
ssh2_auth_pubkey_file
SSH2 Funções
PHP Manual

ssh2_auth_password

(PECL ssh2 >= 0.9.0)

ssh2_auth_password — Authenticate over SSH using a plain password

Descrição

bool ssh2_auth_password ( resource $session , string $username , string $password )

Authenticate over SSH using a plain password

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

username

Remote user name.

password

Password for username

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Authenticating with a password

<?php
$connection = ssh2_connect('shell.example.com', 22);

if (ssh2_auth_password($connection, 'username', 'secret')) {
  echo "Authentication Successful!\n";
} else {
  die('Authentication Failed...');
}
?>

ssh2_auth_none
ssh2_auth_pubkey_file
SSH2 Funções


Authenticate using a public key

ssh2_auth_password
ssh2_connect
SSH2 Funções
PHP Manual

ssh2_auth_pubkey_file

(PECL ssh2 >= 0.9.0)

ssh2_auth_pubkey_file — Authenticate using a public key

Descrição

bool ssh2_auth_pubkey_file ( resource $session , string $username , string $pubkeyfile , string $privkeyfile [, string $passphrase ] )

Authenticate using a public key read from a file.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

username

pubkeyfile

privkeyfile

passphrase

If privkeyfile is encrypted (which it should be), the passphrase must be provided.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Authentication using a public key

<?php
$connection = ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));

if (ssh2_auth_pubkey_file($connection, 'username',
                          '/home/username/.ssh/id_rsa.pub',
                          '/home/username/.ssh/id_rsa', 'secret')) {
  echo "Public Key Authentication Successful\n";
} else {
  die('Public Key Authentication Failed');
}
?>

ssh2_auth_password
ssh2_connect
SSH2 Funções


Connect to an SSH server

ssh2_auth_pubkey_file
ssh2_exec
SSH2 Funções
PHP Manual

ssh2_connect

(PECL ssh2 >= 0.9.0)

ssh2_connect — Connect to an SSH server

Descrição

resource ssh2_connect ( string $host [, int $port = 22 [, array $methods [, array $callbacks ]]] )

Establish a connection to a remote SSH server.

Once connected, the client should verify the server's hostkey using ssh2_fingerprint(), then authenticate using either password or public key.

Parâmetros

host

port

methods

methods may be an associative array with up to four parameters as described below.

methods may be an associative array with any or all of the following parameters.
Index | Meaning | Supported Values*
kex | List of key exchange methods to advertise, comma separated in order of preference. | diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, and diffie-hellman-group-exchange-sha1
hostkey | List of hostkey methods to advertise, come separated in order of preference. | ssh-rsa and ssh-dss
client_to_server | Associative array containing crypt, compression, and message authentication code (MAC) method preferences for messages sent from client to server.
server_to_client | Associative array containing crypt, compression, and message authentication code (MAC) method preferences for messages sent from server to client.

* - Supported Values are dependent on methods supported by underlying library. See » libssh2 documentation for additional information.

client_to_server and server_to_client may be an associative array with any or all of the following parameters.
Index | Meaning | Supported Values*
crypt | List of crypto methods to advertise, comma separated in order of preference. | rijndael-cbc@lysator.liu.se, aes256-cbc, aes192-cbc, aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, and none**
comp | List of compression methods to advertise, comma separated in order of preference. | zlib and none
mac | List of MAC methods to advertise, come separated in order of preference. | hmac-sha1, hmac-sha1-96, hmac-ripemd160, hmac-ripemd160@openssh.com, and none**

Nota: Crypt and MAC method "none"

For security reasons, none is disabled by the underlying » libssh2 library unless explicitly enabled during build time by using the appropriate ./configure options. See documentation for the underlying library for more information.

callbacks

callbacks may be an associative array with any or all of the following parameters.

Callbacks parameters
Index | Meaning | Prototype
ignore | Name of function to call when an SSH2_MSG_IGNORE packet is received | void ignore_cb($message)
debug | Name of function to call when an SSH2_MSG_DEBUG packet is received | void debug_cb($message, $language, $always_display)
macerror | Name of function to call when a packet is received but the message authentication code failed. If the callback returns TRUE, the mismatch will be ignored, otherwise the connection will be terminated. | bool macerror_cb($packet)
disconnect | Name of function to call when an SSH2_MSG_DISCONNECT packet is received | void disconnect_cb($reason, $message, $language)

Valor Retornado

Returns a resource on success, or FALSE on error.

Exemplos

Exemplo #1 ssh2_connect() example

Open a connection forcing 3des-cbc when sending packets, any strength aes cipher when receiving packets, no compression in either direction, and Group1 key exchange.

<?php
/* Notify the user if the server terminates the connection */
function my_ssh_disconnect($reason, $message, $language) {
  printf("Server disconnected with reason code [%d] and message: %s\n",
         $reason, $message);
}

$methods = array(
  'kex' => 'diffie-hellman-group1-sha1',
  'client_to_server' => array(
    'crypt' => '3des-cbc',
    'comp' => 'none'),
  'server_to_client' => array(
    'crypt' => 'aes256-cbc,aes192-cbc,aes128-cbc',
    'comp' => 'none'));

$callbacks = array('disconnect' => 'my_ssh_disconnect');

$connection = ssh2_connect('shell.example.com', 22, $methods, $callbacks);
if (!$connection) die('Connection failed');
?>

Veja Também

  • ssh2_fingerprint() - Retrieve fingerprint of remote server
  • ssh2_auth_none() - Authenticate as "none"
  • ssh2_auth_password() - Authenticate over SSH using a plain password
  • ssh2_auth_pubkey_file() - Authenticate using a public key

ssh2_auth_pubkey_file
ssh2_exec
SSH2 Funções


Execute a command on a remote server

ssh2_connect
ssh2_fetch_stream
SSH2 Funções
PHP Manual

ssh2_exec

(PECL ssh2 >= 0.9.0)

ssh2_exec — Execute a command on a remote server

Descrição

resource ssh2_exec ( resource $session , string $command [, string $pty [, array $env [, int $width = 80 [, int $height = 25 [, int $width_height_type = SSH2_TERM_UNIT_CHARS ]]]]] )

Execute a command at the remote end and allocate a channel for it.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

command

pty

env

env may be passed as an associative array of name/value pairs to set in the target environment.

width

Width of the virtual terminal.

height

Height of the virtual terminal.

width_height_type

width_height_type should be one of SSH2_TERM_UNIT_CHARS or SSH2_TERM_UNIT_PIXELS.

Valor Retornado

Returns a stream on success or FALSE on failure.

Exemplos

Exemplo #1 Executing a command

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$stream = ssh2_exec($connection, '/usr/local/bin/php -i');
?>

Veja Também

  • ssh2_connect() - Connect to an SSH server
  • ssh2_shell() - Request an interactive shell
  • ssh2_tunnel() - Open a tunnel through a remote server

ssh2_connect
ssh2_fetch_stream
SSH2 Funções


Fetch an extended data stream

ssh2_exec
ssh2_fingerprint
SSH2 Funções
PHP Manual

ssh2_fetch_stream

(PECL ssh2 >= 0.9.0)

ssh2_fetch_stream — Fetch an extended data stream

Descrição

resource ssh2_fetch_stream ( resource $channel , int $streamid )

Fetches an alternate substream associated with an SSH2 channel stream. The SSH2 protocol currently defines only one substream, STDERR, which has a substream ID of SSH2_STREAM_STDERR (defined as 1).

Parâmetros

channel

streamid

An SSH2 channel stream.

Valor Retornado

Returns the requested stream resource.

Exemplos

Exemplo #1 Opening a shell and retrieving the stderr stream associated with it

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$stdio_stream = ssh2_shell($connection);
$stderr_stream = ssh2_fetch_stream($stdio_stream, SSH2_STREAM_STDERR);
?>

Veja Também

  • ssh2_shell() - Request an interactive shell
  • ssh2_exec() - Execute a command on a remote server
  • ssh2_connect() - Connect to an SSH server

ssh2_exec
ssh2_fingerprint
SSH2 Funções


Retrieve fingerprint of remote server

ssh2_fetch_stream
ssh2_methods_negotiated
SSH2 Funções
PHP Manual

ssh2_fingerprint

(PECL ssh2 >= 0.9.0)

ssh2_fingerprint — Retrieve fingerprint of remote server

Descrição

string ssh2_fingerprint ( resource $session [, int $flags = SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX ] )

Returns a server hostkey hash from an active session.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

flags

flags may be either of SSH2_FINGERPRINT_MD5 or SSH2_FINGERPRINT_SHA1 logically ORed with SSH2_FINGERPRINT_HEX or SSH2_FINGERPRINT_RAW.

Valor Retornado

Returns the hostkey hash as a string.

Exemplos

Exemplo #1 Checking the fingerprint against a known value

<?php
$known_host = '6F89C2F0A719B30CC38ABDF90755F2E4';

$connection = ssh2_connect('shell.example.com', 22);

$fingerprint = ssh2_fingerprint($connection,
               SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX);

if ($fingerprint != $known_host) {
  die("HOSTKEY MISMATCH!\n" .
      "Possible Man-In-The-Middle Attack?");
}
?>

ssh2_fetch_stream
ssh2_methods_negotiated
SSH2 Funções


Return list of negotiated methods

ssh2_fingerprint
ssh2_publickey_add
SSH2 Funções
PHP Manual

ssh2_methods_negotiated

(PECL ssh2 >= 0.9.0)

ssh2_methods_negotiated — Return list of negotiated methods

Descrição

array ssh2_methods_negotiated ( resource $session )

Returns list of negotiated methods.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

Valor Retornado

Exemplos

Exemplo #1 Determining what methods were negotiated

<?php
$connection = ssh2_connect('shell.example.com', 22);
$methods = ssh2_methods_negotiated($connection);

echo "Encryption keys were negotiated using: {$methods['kex']}\n";
echo "Server identified using an {$methods['hostkey']} with ";
echo "fingerprint: " . ssh2_fingerprint($connection) . "\n";

echo "Client to Server packets will use methods:\n";
echo "\tCrypt: {$methods['client_to_server']['crypt']}\n";
echo "\tComp: {$methods['client_to_server']['comp']}\n";
echo "\tMAC: {$methods['client_to_server']['mac']}\n";

echo "Server to Client packets will use methods:\n";
echo "\tCrypt: {$methods['server_to_client']['crypt']}\n";
echo "\tComp: {$methods['server_to_client']['comp']}\n";
echo "\tMAC: {$methods['server_to_client']['mac']}\n";

?>

Veja Também

  • ssh2_connect() - Connect to an SSH server

ssh2_fingerprint
ssh2_publickey_add
SSH2 Funções


Add an authorized publickey

ssh2_methods_negotiated
ssh2_publickey_init
SSH2 Funções
PHP Manual

ssh2_publickey_add

(PECL ssh2 >= 0.10)

ssh2_publickey_add — Add an authorized publickey

Descrição

bool ssh2_publickey_add ( resource $pkey , string $algoname , string $blob [, bool $overwrite = false [, array $attributes ]] )

Nota: O subsistema de chave pública é usado para gerenciar chaves públicas em um sistema no qual o cliente já esteja autenticado. Para autenticar em um sistema remoto usando autenticação de chave pública, use ao invés a função ssh2_auth_pubkey_file().

Parâmetros

pkey

Publickey Subsystem resource created by ssh2_publickey_init().

algoname

Publickey algorithm (e.g.): ssh-dss, ssh-rsa

blob

Publickey blob as raw binary data

overwrite

If the specified key already exists, should it be overwritten?

attributes

Associative array of attributes to assign to this public key. Refer to ietf-secsh-publickey-subsystem for a list of supported attributes. To mark an attribute as mandatory, precede its name with an asterisk. If the server is unable to support an attribute marked mandatory, it will abort the add process.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Adding a publickey with ssh2_publickey_add()

<?php
$ssh2 = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($ssh2, 'jdoe', 'password');
$pkey = ssh2_publickey_init($ssh2);

$keyblob = base64_decode('
AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5PTrLRdjNONxXH1tVFGn0
Bd26BF0aCP9qyJRlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xj
zaLpipu\BGRrw17mWVBhuCExo476ri5tQFzbTc54VEHYckxQ16CjSTibI5X
69GmnYC9PNqEYq/1TP+HF10=');

ssh2_publickey_add($pkey, 'ssh-rsa', $keyblob, false, array('comment'=>"John's Key"));
?>

Veja Também

  • ssh2_publickey_init() - Initialize Publickey subsystem
  • ssh2_publickey_remove() - Remove an authorized publickey
  • ssh2_publickey_list() - List currently authorized publickeys

ssh2_methods_negotiated
ssh2_publickey_init
SSH2 Funções


Initialize Publickey subsystem

ssh2_publickey_add
ssh2_publickey_list
SSH2 Funções
PHP Manual

ssh2_publickey_init

(PECL ssh2 >= 0.10)

ssh2_publickey_init — Initialize Publickey subsystem

Descrição

resource ssh2_publickey_init ( resource $session )

Request the Publickey subsystem from an already connected SSH2 server.

The publickey subsystem allows an already connected and authenticated client to manage the list of authorized public keys stored on the target server in an implementation agnostic manner. If the remote server does not support the publickey subsystem, the ssh2_publickey_init() function will return FALSE.

Parâmetros

session

Valor Retornado

Returns an SSH2 Publickey Subsystem resource for use with all other ssh2_publickey_*() methods or FALSE on failure.

Notas

Nota: O subsistema de chave pública é usado para gerenciar chaves públicas em um sistema no qual o cliente já esteja autenticado. Para autenticar em um sistema remoto usando autenticação de chave pública, use ao invés a função ssh2_auth_pubkey_file().

Veja Também

  • ssh2_publickey_add() - Add an authorized publickey
  • ssh2_publickey_remove() - Remove an authorized publickey
  • ssh2_publickey_list() - List currently authorized publickeys

ssh2_publickey_add
ssh2_publickey_list
SSH2 Funções


List currently authorized publickeys

ssh2_publickey_init
ssh2_publickey_remove
SSH2 Funções
PHP Manual

ssh2_publickey_list

(PECL ssh2 >= 0.10)

ssh2_publickey_list — List currently authorized publickeys

Descrição

array ssh2_publickey_list ( resource $pkey )

List currently authorized publickeys.

Parâmetros

pkey

Publickey Subsystem resource

Valor Retornado

Returns a numerically indexed array of keys, each of which is an associative array containing: name, blob, and attrs elements.

Publickey elements
Array Key | Meaning
name | Name of algorithm used by this publickey, for example: ssh-dss or ssh-rsa.
blob | Publickey blob as raw binary data.
attrs | Attributes assigned to this publickey. The most common attribute, and the only one supported by publickey version 1 servers, is comment, which may be any freeform string.

Exemplos

Exemplo #1 Listing authorized keys with ssh2_publickey_list()

<?php
$ssh2 = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($ssh2, 'jdoe', 'secret');
$pkey = ssh2_publickey_init($ssh2);

$list = ssh2_publickey_list($pkey);

foreach($list as $key) {
  echo "Key: {$key['name']}\n";
  echo "Blob: " . chunk_split(base64_encode($key['blob']), 40, "\n") . "\n";
  echo "Comment: {$key['attrs']['comment']}\n\n";
}
?>

O exemplo acima irá imprimir:

Key: ssh-rsa
Blob: AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5P
TrLRdjNONxXH1tVFGn0Bd26BF0aCP9qyJRlvdJ3j
4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xjza
Lpipu\BGRrw17mWVBhuCExo476ri5tQFzbTc54VE
HYckxQ16CjSTibI5X69GmnYC9PNqEYq/1TP+HF10
Comment: John's Key

Key: ssh-rsa
Blob: AAAAB3NzaHVt6VqSGd5C1yc2EAAAABIwA232dnJA
AIEA5HVt6VqSGd5PTrLRdjNONxX/1TP+HF1HVt6V
qSGd50H1tVFGn0BB3NzaC1yc2EAd26BF0aCP9qyJ
RlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26HVt6Vq
SGd5sDHwfL351xjzaLpipu\BGB3NzaC1yc2EA/1T
Comment: Alice's Key

Notas

Nota: O subsistema de chave pública é usado para gerenciar chaves públicas em um sistema no qual o cliente já esteja autenticado. Para autenticar em um sistema remoto usando autenticação de chave pública, use ao invés a função ssh2_auth_pubkey_file().

Veja Também

  • ssh2_publickey_init() - Initialize Publickey subsystem
  • ssh2_publickey_add() - Add an authorized publickey
  • ssh2_publickey_remove() - Remove an authorized publickey

ssh2_publickey_init
ssh2_publickey_remove
SSH2 Funções


Remove an authorized publickey

ssh2_publickey_list
ssh2_scp_recv
SSH2 Funções
PHP Manual

ssh2_publickey_remove

(PECL ssh2 >= 0.10)

ssh2_publickey_remove — Remove an authorized publickey

Descrição

bool ssh2_publickey_remove ( resource $pkey , string $algoname , string $blob )

Removes an authorized publickey.

Parâmetros

pkey

Publickey Subsystem Resource

algoname

Publickey algorithm (e.g.): ssh-dss, ssh-rsa

blob

Publickey blob as raw binary data

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: O subsistema de chave pública é usado para gerenciar chaves públicas em um sistema no qual o cliente já esteja autenticado. Para autenticar em um sistema remoto usando autenticação de chave pública, use ao invés a função ssh2_auth_pubkey_file().

Veja Também

  • ssh2_publickey_init() - Initialize Publickey subsystem
  • ssh2_publickey_add() - Add an authorized publickey
  • ssh2_publickey_list() - List currently authorized publickeys

ssh2_publickey_list
ssh2_scp_recv
SSH2 Funções


Request a file via SCP

ssh2_publickey_remove
ssh2_scp_send
SSH2 Funções
PHP Manual

ssh2_scp_recv

(PECL ssh2 >= 0.9.0)

ssh2_scp_recv — Request a file via SCP

Descrição

bool ssh2_scp_recv ( resource $session , string $remote_file , string $local_file )

Copy a file from the remote server to the local filesystem using the SCP protocol.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

remote_file

Path to the remote file.

local_file

Path to the local file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Downloading a file via SCP

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

ssh2_scp_recv($connection, '/remote/filename', '/local/filename');
?>

Veja Também

  • ssh2_scp_send() - Send a file via SCP
  • copy() - Copia arquivo

ssh2_publickey_remove
ssh2_scp_send
SSH2 Funções


Send a file via SCP

ssh2_scp_recv
ssh2_sftp_lstat
SSH2 Funções
PHP Manual

ssh2_scp_send

(PECL ssh2 >= 0.9.0)

ssh2_scp_send — Send a file via SCP

Descrição

bool ssh2_scp_send ( resource $session , string $local_file , string $remote_file [, int $create_mode = 0644 ] )

Copy a file from the local filesystem to the remote server using the SCP protocol.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

local_file

Path to the local file.

remote_file

Path to the remote file.

create_mode

The file will be created with the mode specified by create_mode.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Uploading a file via SCP

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

ssh2_scp_send($connection, '/local/filename', '/remote/filename', 0644);
?>

Veja Também

  • ssh2_scp_recv() - Request a file via SCP
  • copy() - Copia arquivo

ssh2_scp_recv
ssh2_sftp_lstat
SSH2 Funções


Stat a symbolic link

ssh2_scp_send
ssh2_sftp_mkdir
SSH2 Funções
PHP Manual

ssh2_sftp_lstat

(PECL ssh2 >= 0.9.0)

ssh2_sftp_lstat — Stat a symbolic link

Descrição

array ssh2_sftp_lstat ( resource $sftp , string $path )

Stats a symbolic link on the remote filesystem without following the link.

This function is similar to using the lstat() function with the ssh2.sftp:// wrapper in PHP5 and returns the same values.

Parâmetros

sftp

path

Path to the remote symbolic link.

Valor Retornado

See the documentation for stat() for details on the values which may be returned.

Exemplos

Exemplo #1 Stating a symbolic link via SFTP

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$sftp = ssh2_sftp($connection);
$statinfo = ssh2_sftp_lstat($sftp, '/path/to/symlink');

$filesize = $statinfo['size'];
$group = $statinfo['gid'];
$owner = $statinfo['uid'];
$atime = $statinfo['atime'];
$mtime = $statinfo['mtime'];
$mode = $statinfo['mode'];
?>

Veja Também

  • ssh2_sftp_stat() - Stat a file on a remote filesystem
  • lstat() - Obtém informações sobre um arquivo ou link simbólico
  • stat() - Obtem informações sobre um arquivo

ssh2_scp_send
ssh2_sftp_mkdir
SSH2 Funções


Create a directory

ssh2_sftp_lstat
ssh2_sftp_readlink
SSH2 Funções
PHP Manual

ssh2_sftp_mkdir

(PECL ssh2 >= 0.9.0)

ssh2_sftp_mkdir — Create a directory

Descrição

bool ssh2_sftp_mkdir ( resource $sftp , string $dirname [, int $mode = 0777 [, bool $recursive = false ]] )

Creates a directory on the remote file server with permissions set to mode.

This function is similar to using mkdir() with the ssh2.sftp:// wrapper.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

dirname

Path of the new directory.

mode

Permissions on the new directory.

recursive

If recursive is TRUE any parent directories required for dirname will be automatically created as well.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Creating a directory on a remote server

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_mkdir($sftp, '/home/username/newdir');
/* Or:  mkdir("ssh2.sftp://$sftp/home/username/newdir"); */
?>

Veja Também

  • mkdir() - Cria um diretório
  • ssh2_sftp_rmdir() - Remove a directory

ssh2_sftp_lstat
ssh2_sftp_readlink
SSH2 Funções


Return the target of a symbolic link

ssh2_sftp_mkdir
ssh2_sftp_realpath
SSH2 Funções
PHP Manual

ssh2_sftp_readlink

(PECL ssh2 >= 0.9.0)

ssh2_sftp_readlink — Return the target of a symbolic link

Descrição

string ssh2_sftp_readlink ( resource $sftp , string $link )

Returns the target of a symbolic link.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

link

Path of the symbolic link.

Valor Retornado

Returns the target of the symbolic link.

Exemplos

Exemplo #1 Reading a symbolic link

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

$target = ssh2_sftp_readlink($sftp, '/tmp/mysql.sock');
/* $target is now (e.g.): '/var/run/mysql.sock' */
?>

Veja Também

  • readlink() - Retornar o alvo de um link simbólico
  • ssh2_sftp_symlink() - Create a symlink

ssh2_sftp_mkdir
ssh2_sftp_realpath
SSH2 Funções


Resolve the realpath of a provided path string

ssh2_sftp_readlink
ssh2_sftp_rename
SSH2 Funções
PHP Manual

ssh2_sftp_realpath

(PECL ssh2 >= 0.9.0)

ssh2_sftp_realpath — Resolve the realpath of a provided path string

Descrição

string ssh2_sftp_realpath ( resource $sftp , string $filename )

Translates filename into the effective real path on the remote filesystem.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

filename

Valor Retornado

Returns the real path as a string.

Exemplos

Exemplo #1 Resolving a pathname

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

$realpath = ssh2_sftp_realpath($sftp, '/home/username/../../../..//./usr/../etc/passwd');
/* $realpath is now: '/etc/passwd' */
?>

Veja Também

  • realpath() - Retorna o path absoluto canonicalizado
  • ssh2_sftp_symlink() - Create a symlink
  • ssh2_sftp_readlink() - Return the target of a symbolic link

ssh2_sftp_readlink
ssh2_sftp_rename
SSH2 Funções


Rename a remote file

ssh2_sftp_realpath
ssh2_sftp_rmdir
SSH2 Funções
PHP Manual

ssh2_sftp_rename

(PECL ssh2 >= 0.9.0)

ssh2_sftp_rename — Rename a remote file

Descrição

bool ssh2_sftp_rename ( resource $sftp , string $from , string $to )

Renames a file on the remote filesystem.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

from

The current file that is being renamed.

to

The new file name that replaces from.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Renaming a file via sftp

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_rename($sftp, '/home/username/oldname', '/home/username/newname');
?>

Veja Também

  • rename() - Renomeia um arquivo ou diretório

ssh2_sftp_realpath
ssh2_sftp_rmdir
SSH2 Funções


Remove a directory

ssh2_sftp_rename
ssh2_sftp_stat
SSH2 Funções
PHP Manual

ssh2_sftp_rmdir

(PECL ssh2 >= 0.9.0)

ssh2_sftp_rmdir — Remove a directory

Descrição

bool ssh2_sftp_rmdir ( resource $sftp , string $dirname )

Removes a directory from the remote file server.

This function is similar to using rmdir() with the ssh2.sftp:// wrapper.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

dirname

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Removing a directory on a remote server

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_rmdir($sftp, '/home/username/deltodel');
/* Or:  rmdir("ssh2.sftp://$sftp/home/username/dirtodel"); */
?>

Veja Também

  • rmdir() - Remove um diretório
  • ssh2_sftp_mkdir() - Create a directory

ssh2_sftp_rename
ssh2_sftp_stat
SSH2 Funções


Stat a file on a remote filesystem

ssh2_sftp_rmdir
ssh2_sftp_symlink
SSH2 Funções
PHP Manual

ssh2_sftp_stat

(PECL ssh2 >= 0.9.0)

ssh2_sftp_stat — Stat a file on a remote filesystem

Descrição

array ssh2_sftp_stat ( resource $sftp , string $path )

Stats a file on the remote filesystem following any symbolic links.

This function is similar to using the stat() function with the ssh2.sftp:// wrapper in PHP5 and returns the same values.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

path

Valor Retornado

See the documentation for stat() for details on the values which may be returned.

Exemplos

Exemplo #1 Stating a file via SFTP

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$sftp = ssh2_sftp($connection);
$statinfo = ssh2_sftp_stat($sftp, '/path/to/file');

$filesize = $statinfo['size'];
$group = $statinfo['gid'];
$owner = $statinfo['uid'];
$atime = $statinfo['atime'];
$mtime = $statinfo['mtime'];
$mode = $statinfo['mode'];
?>

Veja Também

  • ssh2_sftp_lstat() - Stat a symbolic link
  • lstat() - Obtém informações sobre um arquivo ou link simbólico
  • stat() - Obtem informações sobre um arquivo

ssh2_sftp_rmdir
ssh2_sftp_symlink
SSH2 Funções


Create a symlink

ssh2_sftp_stat
ssh2_sftp_unlink
SSH2 Funções
PHP Manual

ssh2_sftp_symlink

(PECL ssh2 >= 0.9.0)

ssh2_sftp_symlink — Create a symlink

Descrição

bool ssh2_sftp_symlink ( resource $sftp , string $target , string $link )

Creates a symbolic link named link on the remote filesystem pointing to target.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

target

Target of the symbolic link.

link

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Creating a symbolic link

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_symlink($sftp, '/var/run/mysql.sock', '/tmp/mysql.sock');
?>

Veja Também

  • ssh2_sftp_readlink() - Return the target of a symbolic link
  • symlink() - Cria um link simbólico

ssh2_sftp_stat
ssh2_sftp_unlink
SSH2 Funções


Delete a file

ssh2_sftp_symlink
ssh2_sftp
SSH2 Funções
PHP Manual

ssh2_sftp_unlink

(PECL ssh2 >= 0.9.0)

ssh2_sftp_unlink — Delete a file

Descrição

bool ssh2_sftp_unlink ( resource $sftp , string $filename )

Deletes a file on the remote filesystem.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

filename

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Deleting a file

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_unlink($sftp, '/home/username/stale_file');
?>

Veja Também

  • unlink() - Apaga um arquivo

ssh2_sftp_symlink
ssh2_sftp
SSH2 Funções


Initialize SFTP subsystem

ssh2_sftp_unlink
ssh2_shell
SSH2 Funções
PHP Manual

ssh2_sftp

(PECL ssh2 >= 0.9.0)

ssh2_sftp — Initialize SFTP subsystem

Descrição

resource ssh2_sftp ( resource $session )

Request the SFTP subsystem from an already connected SSH2 server.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

Valor Retornado

This method returns an SSH2 SFTP resource for use with all other ssh2_sftp_*() methods and the ssh2.sftp:// fopen wrapper.

Exemplos

Exemplo #1 Opening a file via SFTP

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$sftp = ssh2_sftp($connection);

$stream = fopen("ssh2.sftp://$sftp/path/to/file", 'r');
?>

Veja Também

  • ssh2_scp_recv() - Request a file via SCP
  • ssh2_scp_send() - Send a file via SCP

ssh2_sftp_unlink
ssh2_shell
SSH2 Funções


Request an interactive shell

ssh2_sftp
ssh2_tunnel
SSH2 Funções
PHP Manual

ssh2_shell

(PECL ssh2 >= 0.9.0)

ssh2_shell — Request an interactive shell

Descrição

resource ssh2_shell ( resource $session [, string $term_type = "vanilla" [, array $env [, int $width = 80 [, int $height = 25 [, int $width_height_type = SSH2_TERM_UNIT_CHARS ]]]]] )

Open a shell at the remote end and allocate a stream for it.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

term_type

term_type should correspond to one of the entries in the target system's /etc/termcap file.

env

env may be passed as an associative array of name/value pairs to set in the target environment.

width

Width of the virtual terminal.

height

Height of the virtual terminal.

width_height_type

width_height_type should be one of SSH2_TERM_UNIT_CHARS or SSH2_TERM_UNIT_PIXELS.

Valor Retornado

Exemplos

Exemplo #1 Executing a command

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$stream = ssh2_shell($connection, 'vt102', null, 80, 24, SSH2_TERM_UNIT_CHARS);
?>

Veja Também

  • ssh2_exec() - Execute a command on a remote server
  • ssh2_tunnel() - Open a tunnel through a remote server
  • ssh2_fetch_stream() - Fetch an extended data stream

ssh2_sftp
ssh2_tunnel
SSH2 Funções


Open a tunnel through a remote server

ssh2_shell
Stomp
SSH2 Funções
PHP Manual

ssh2_tunnel

(PECL ssh2 >= 0.9.0)

ssh2_tunnel — Open a tunnel through a remote server

Descrição

resource ssh2_tunnel ( resource $session , string $host , int $port )

Open a socket stream to an arbitrary host/port by way of the currently connected SSH server.

Parâmetros

session

An SSH connection link identifier, obtained from a call to ssh2_connect().

host

port

Valor Retornado

Exemplos

Exemplo #1 Opening a tunnel to an arbitrary host

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_pubkey_file($connection, 'username', 'id_dsa.pub', 'id_dsa');

$tunnel = ssh2_tunnel($connection, '10.0.0.101', 12345);
?>

Veja Também

  • ssh2_connect() - Connect to an SSH server
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix

ssh2_shell
Stomp
SSH2 Funções


Stomp Client

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Exemplos
  • Stomp Funções
    • stomp_connect_error — Returns a string description of the last connect error
    • stomp_version — Gets the current stomp extension version
  • Stomp — The Stomp class
    • Stomp::abort — Rolls back a transaction in progress
    • Stomp::ack — Acknowledges consumption of a message
    • Stomp::begin — Starts a transaction
    • Stomp::commit — Commits a transaction in progress
    • Stomp::__construct — Opens a connection
    • Stomp::__destruct — Closes stomp connection
    • Stomp::error — Gets the last stomp error
    • Stomp::getReadTimeout — Gets read timeout
    • Stomp::getSessionId — Gets the current stomp session ID
    • Stomp::hasFrame — Indicates whether or not there is a frame ready to read
    • Stomp::readFrame — Reads the next frame
    • Stomp::send — Sends a message
    • Stomp::setReadTimeout — Sets read timeout
    • Stomp::subscribe — Registers to listen to a given destination
    • Stomp::unsubscribe — Removes an existing subscription
  • StompFrame — The StompFrame class
    • StompFrame::__construct — Constructor
  • StompException — The StompException class
    • StompException::getDetails — Get exception details
ssh2_tunnel
Introdução
Outros Serviços


Introdução

This extension allows php applications to communicate with any Stomp compliant Message Brokers through easy object oriented and procedural interfaces. » Stomp official site

Stomp
Instalação/Configuração
Stomp


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Stomp


Dependências

PECL/stomp requires PHP 5.2.2 or newer.

The » OpenSSL package >= 0.9.6 and the openssl extension may also be required to use stomp over SSL.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/stomp

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Stomp Opções de Configuração
Nome | Padrão | Modificável | Histórico
stomp.default_broker | tcp://localhost:61613 | PHP_INI_ALL |
stomp.default_connection_timeout_sec | 2 | PHP_INI_ALL |
stomp.default_connection_timeout_usec | 0 | PHP_INI_ALL |
stomp.default_read_timeout_sec | 2 | PHP_INI_ALL |
stomp.default_read_timeout_usec | 0 | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

stomp.default_broker string

The default broker URI to use when connecting to the message broker if no other URI is specified.

stomp.default_connection_timeout_sec integer

The seconds part of the default connection timeout.

stomp.default_connection_timeout_usec integer

The microseconds part of the default connection timeout.

stomp.default_read_timeout_sec integer

The seconds part of the default reading timeout.

stomp.default_read_timeout_usec integer

The microseconds part of the default reading timeout.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

There is only one resource type used in the stomp extension - it's the link identifier for a stomp connection.

Configurações em Execução
Exemplos
Instalação/Configuração


Exemplos

Exemplo #1 Object oriented style

<?php

$queue  = '/queue/foo';
$msg    = 'bar';

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* send a message to the queue 'foo' */
$stomp->send($queue, $msg);

/* subscribe to messages from the queue 'foo' */
$stomp->subscribe($queue);

/* read a frame */
$frame = $stomp->readFrame();

if ($frame->body === $msg) {
    var_dump($frame);

    /* acknowledge that the frame was received */
    $stomp->ack($frame);
}

/* close connection */
unset($stomp);

?>

O exemplo acima irá imprimir algo similar a:

object(StompFrame)#2 (3) {
  ["command"]=>
  string(7) "MESSAGE"
  ["headers"]=>
  array(5) {
    ["message-id"]=>
    string(41) "ID:php.net-55293-1257226743606-4:2:-1:1:1"
    ["destination"]=>
    string(10) "/queue/foo"
    ["timestamp"]=>
    string(13) "1257226805828"
    ["expires"]=>
    string(1) "0"
    ["priority"]=>
    string(1) "0"
  }
  ["body"]=>
  string(3) "bar"
}

Exemplo #2 Procedural style

<?php

$queue  = '/queue/foo';
$msg    = 'bar';

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* begin a transaction */
stomp_begin($link, 't1');

/* send a message to the queue 'foo' */
stomp_send($link, $queue, $msg, array('transaction' => 't1'));

/* commit a transaction */
stomp_commit($link, 't1');

/* subscribe to messages from the queue 'foo' */
stomp_subscribe($link, $queue);

/* read a frame */
$frame = stomp_read_frame($link);

if ($frame['body'] === $msg) {
    var_dump($frame);

    /* acknowledge that the frame was received */
    stomp_ack($link, $frame['headers']['message-id']);
}

/* close connection */
stomp_close($link);

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["command"]=>
  string(7) "MESSAGE"
  ["body"]=>
  string(3) "bar"
  ["headers"]=>
  array(6) {
    ["transaction"]=>
    string(2) "t1"
    ["message-id"]=>
    string(41) "ID:php.net-55293-1257226743606-4:3:-1:1:1"
    ["destination"]=>
    string(10) "/queue/foo"
    ["timestamp"]=>
    string(13) "1257227037059"
    ["expires"]=>
    string(1) "0"
    ["priority"]=>
    string(1) "0"
  }
}

Tipos Resource
Stomp Funções
Stomp


Stomp Funções

Índice

  • stomp_connect_error — Returns a string description of the last connect error
  • stomp_version — Gets the current stomp extension version
Exemplos
stomp_connect_error
Stomp


Returns a string description of the last connect error

Stomp Funções
stomp_version
Stomp Funções
PHP Manual

stomp_connect_error

(PECL stomp >= 0.3.0)

stomp_connect_error — Returns a string description of the last connect error

Descrição

string stomp_connect_error ( void )

Returns a string description of the last connect error.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string that describes the error, or NULL if no error occurred.

Exemplos

Exemplo #1 stomp_connect_error() example

<?php
$link = stomp_connect('http://localhost:61613');

if(!$link) {
    die('Connection failed: ' . stomp_connect_error());
}
?>

O exemplo acima irá imprimir algo similar a:

Connection failed: Invalid Broker URI scheme

Stomp Funções
stomp_version
Stomp Funções


Gets the current stomp extension version

stomp_connect_error
Stomp
Stomp Funções
PHP Manual

stomp_version

(PECL stomp >= 0.1.0)

stomp_version — Gets the current stomp extension version

Descrição

string stomp_version ( void )

Returns a string containing the version of the current stomp extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

It returns the current stomp extension version

Exemplos

Exemplo #1 stomp_version() example

<?php

var_dump(stomp_version());

?>

O exemplo acima irá imprimir algo similar a:

string(5) "0.2.0"

stomp_connect_error
Stomp
Stomp Funções


The Stomp class

Introdução

Represents a connection between PHP and a Stomp compliant Message Broker.

Sinopse da classe

Stomp {
/* Methods */
public bool abort ( string $transaction_id [, array $headers ] )
public bool ack ( mixed $msg [, array $headers ] )
public bool begin ( string $transaction_id [, array $headers ] )
public bool commit ( string $transaction_id [, array $headers ] )
__construct ([ string $broker = ini_get("stomp.default_broker_uri") [, string $username [, string $password [, array $headers ]]]] )
public bool __destruct ( void )
public string error ( void )
public array getReadTimeout ( void )
public string getSessionId ( void )
public bool hasFrame ( void )
public stompframe readFrame ([ string $class_name = "stompFrame" ] )
public bool send ( string $destination , mixed $msg [, array $headers ] )
public void setReadTimeout ( int $seconds [, int $microseconds ] )
public bool subscribe ( string $destination [, array $headers ] )
public bool unsubscribe ( string $destination [, array $headers ] )
}

Índice

  • Stomp::abort — Rolls back a transaction in progress
  • Stomp::ack — Acknowledges consumption of a message
  • Stomp::begin — Starts a transaction
  • Stomp::commit — Commits a transaction in progress
  • Stomp::__construct — Opens a connection
  • Stomp::__destruct — Closes stomp connection
  • Stomp::error — Gets the last stomp error
  • Stomp::getReadTimeout — Gets read timeout
  • Stomp::getSessionId — Gets the current stomp session ID
  • Stomp::hasFrame — Indicates whether or not there is a frame ready to read
  • Stomp::readFrame — Reads the next frame
  • Stomp::send — Sends a message
  • Stomp::setReadTimeout — Sets read timeout
  • Stomp::subscribe — Registers to listen to a given destination
  • Stomp::unsubscribe — Removes an existing subscription
stomp_version
Stomp::abort
Stomp


Rolls back a transaction in progress

Stomp
Stomp::ack
Stomp
PHP Manual

Stomp::abort

stomp_abort

(PECL stomp >= 0.1.0)

Stomp::abort -- stomp_abort — Rolls back a transaction in progress

Descrição

Object oriented style (method):

public bool Stomp::abort ( string $transaction_id [, array $headers ] )

Procedural style:

bool stomp_abort ( resource $link , string $transaction_id [, array $headers ] )

Rolls back a transaction in progress.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

transaction_id

The transaction to abort.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* begin a transaction */
$stomp->begin('t1');

/* send a message to the queue */
$stomp->send('/queue/foo', 'bar', array('transaction' => 't1'));

/* rollback */
$stomp->abort('t1');

/* close connection */
unset($stomp);
?>

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('tcp://localhost:61613');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* begin a transaction */
stomp_begin($link, 't1');

/* send a message to the queue 'foo' */
stomp_send($link, '/queue/foo', 'bar', array('transaction' => 't1'));

/* rollback */
stomp_abort($link, 't1');

/* close connection */
stomp_close($link);

?>

Stomp
Stomp::ack
Stomp


Acknowledges consumption of a message

Stomp::abort
Stomp::begin
Stomp
PHP Manual

Stomp::ack

stomp_ack

(PECL stomp >= 0.1.0)

Stomp::ack -- stomp_ack — Acknowledges consumption of a message

Descrição

Object oriented style (method):

public bool Stomp::ack ( mixed $msg [, array $headers ] )

Procedural style:

bool stomp_ack ( resource $link , mixed $msg [, array $headers ] )

Acknowledges consumption of a message from a subscription using client acknowledgment.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

msg

The message/messageId to be acknowledged.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

A transaction header may be specified, indicating that the message acknowledgment should be part of the named transaction.

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

Exemplo #1 Object oriented style

<?php

$queue  = '/queue/foo';
$msg    = 'bar';

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* send a message to the queue 'foo' */
$stomp->send($queue, $msg);

/* subscribe to messages from the queue 'foo' */
$stomp->subscribe($queue);

/* read a frame */
$frame = $stomp->readFrame();

if ($frame->body === $msg) {
    /* acknowledge that the frame was received */
    $stomp->ack($frame);
}

/* remove the subscription */
$stomp->unsubscribe($queue);

/* close connection */
unset($stomp);

?>

Exemplo #2 Procedural style

<?php

$queue  = '/queue/foo';
$msg    = 'bar';

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* begin a transaction */
stomp_begin($link, 't1');

/* send a message to the queue 'foo' */
stomp_send($link, $queue, $msg, array('transaction' => 't1'));

/* commit a transaction */
stomp_commit($link, 't1');

/* subscribe to messages from the queue 'foo' */
stomp_subscribe($link, $queue);

/* read a frame */
$frame = stomp_read_frame($link);

if ($frame['body'] === $msg) {
    /* acknowledge that the frame was received */
    stomp_ack($link, $frame['headers']['message-id']);
}

/* remove the subscription */
stomp_unsubscribe($link, $queue);

/* close connection */
stomp_close($link);

?>

Stomp::abort
Stomp::begin
Stomp


Starts a transaction

Stomp::ack
Stomp::commit
Stomp
PHP Manual

Stomp::begin

stomp_begin

(PECL stomp >= 0.1.0)

Stomp::begin -- stomp_begin — Starts a transaction

Descrição

Object oriented style (method):

public bool Stomp::begin ( string $transaction_id [, array $headers ] )

Procedural style:

bool stomp_begin ( resource $link , string $transaction_id [, array $headers ] )

Starts a transaction.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

transaction_id

The transaction id.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

See stomp_commit() or stomp_abort().

Stomp::ack
Stomp::commit
Stomp


Commits a transaction in progress

Stomp::begin
Stomp::__construct
Stomp
PHP Manual

Stomp::commit

stomp_commit

(PECL stomp >= 0.1.0)

Stomp::commit -- stomp_commit — Commits a transaction in progress

Descrição

Object oriented style (method):

public bool Stomp::commit ( string $transaction_id [, array $headers ] )

Procedural style:

bool stomp_commit ( resource $link , string $transaction_id [, array $headers ] )

Commits a transaction in progress.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

transaction_id

The transaction id.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* begin a transaction */
$stomp->begin('t1');

/* send a message to the queue */
$stomp->send('/queue/foo', 'bar', array('transaction' => 't1'));

/* commit */
$stomp->commit('t1');

/* close connection */
unset($stomp);

?>

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('tcp://localhost:61613');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* begin a transaction */
stomp_begin($link, 't1');

/* send a message to the queue 'foo' */
stomp_send($link, '/queue/foo', 'bar', array('transaction' => 't1'));

/* commit */
stomp_commit($link, 't1');

/* close connection */
stomp_close($link);

?>

Stomp::begin
Stomp::__construct
Stomp


Opens a connection

Stomp::commit
Stomp::__destruct
Stomp
PHP Manual

Stomp::__construct

stomp_connect

(PECL stomp >= 0.1.0)

Stomp::__construct -- stomp_connect — Opens a connection

Descrição

Object oriented style (constructor):

Stomp::__construct ([ string $broker = ini_get("stomp.default_broker_uri") [, string $username [, string $password [, array $headers ]]]] )

Procedural style:

resource stomp_connect ([ string $broker = ini_get("stomp.default_broker_uri") [, string $username [, string $password [, array $headers ]]]] )

Opens a connection to a stomp compliant Message Broker.

Parâmetros

broker

The broker URI

username

The username.

password

The password.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Nota:

A transaction header may be specified, indicating that the message acknowledgment should be part of the named transaction.

Histórico

Versão | Descrição
1.0.1 | The headers parameter was added

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* close connection */
unset($stomp);

?>

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* close connection */
stomp_close($link);

?>

Stomp::commit
Stomp::__destruct
Stomp


Closes stomp connection

Stomp::__construct
Stomp::error
Stomp
PHP Manual

Stomp::__destruct

stomp_close

(PECL stomp >= 0.1.0)

Stomp::__destruct -- stomp_close — Closes stomp connection

Descrição

Object oriented style (destructor):

public bool Stomp::__destruct ( void )

Procedural style:

bool stomp_close ( resource $link )

Closes a previously opened connection.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

See stomp_connect().

Stomp::__construct
Stomp::error
Stomp


Gets the last stomp error

Stomp::__destruct
Stomp::getReadTimeout
Stomp
PHP Manual

Stomp::error

stomp_error

(PECL stomp >= 0.1.0)

Stomp::error -- stomp_error — Gets the last stomp error

Descrição

Object oriented style (method):

public string Stomp::error ( void )

Procedural style:

string stomp_error ( resource $link )

Gets the last stomp error.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

Valor Retornado

Returns an error string or FALSE if no error occurred.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

var_dump($stomp->error());

if (!$stomp->abort('unknown-transaction', array('receipt' => 'foo'))) {
    var_dump($stomp->error());
}

/* close connection */
unset($stomp);

?>

O exemplo acima irá imprimir algo similar a:

bool(false)
string(43) "Invalid transaction id: unknown-transaction"

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

var_dump(stomp_error($link));

if (!stomp_abort($link, 'unknown-transaction', array('receipt' => 'foo'))) {
    var_dump(stomp_error($link));
}

/* close connection */
stomp_close($link);

?>

O exemplo acima irá imprimir algo similar a:

bool(false)
string(43) "Invalid transaction id: unknown-transaction"

Stomp::__destruct
Stomp::getReadTimeout
Stomp


Gets read timeout

Stomp::error
Stomp::getSessionId
Stomp
PHP Manual

Stomp::getReadTimeout

stomp_get_read_timeout

(PECL stomp >= 0.3.0)

Stomp::getReadTimeout -- stomp_get_read_timeout — Gets read timeout

Descrição

Object oriented style (method):

public array Stomp::getReadTimeout ( void )

Procedural style:

array stomp_get_read_timeout ( resource $link )

Gets read timeout

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

Valor Retornado

Returns an array with 2 elements: sec and usec.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

var_dump($stomp->getReadTimeout());

/* close connection */
unset($stomp);

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["sec"]=>
  int(2)
  ["usec"]=>
  int(0)
}

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

var_dump(stomp_get_read_timeout($link));

/* close connection */
stomp_close($link);

?>

O exemplo acima irá imprimir algo similar a:

array(2) {
  ["sec"]=>
  int(2)
  ["usec"]=>
  int(0)
}

Stomp::error
Stomp::getSessionId
Stomp


Gets the current stomp session ID

Stomp::getReadTimeout
Stomp::hasFrame
Stomp
PHP Manual

Stomp::getSessionId

stomp_get_session_id

(PECL stomp >= 0.1.0)

Stomp::getSessionId -- stomp_get_session_id — Gets the current stomp session ID

Descrição

Object oriented style (method):

public string Stomp::getSessionId ( void )

Procedural style:

string stomp_get_session_id ( resource $link )

Gets the current stomp session ID.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

Valor Retornado

string session id on success or FALSE on failure.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

var_dump($stomp->getSessionId());

/* close connection */
unset($stomp);

?>

O exemplo acima irá imprimir algo similar a:

string(35) "ID:php.net-52873-1257291895530-4:14"

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

var_dump(stomp_get_session_id($link));

/* close connection */
stomp_close($link);

?>

O exemplo acima irá imprimir algo similar a:

string(35) "ID:php.net-52873-1257291895530-4:14"

Stomp::getReadTimeout
Stomp::hasFrame
Stomp


Indicates whether or not there is a frame ready to read

Stomp::getSessionId
Stomp::readFrame
Stomp
PHP Manual

Stomp::hasFrame

stomp_has_frame

(PECL stomp >= 0.1.0)

Stomp::hasFrame -- stomp_has_frame — Indicates whether or not there is a frame ready to read

Descrição

Object oriented style (method):

public bool Stomp::hasFrame ( void )

Procedural style:

bool stomp_has_frame ( resource $link )

Indicates whether or not there is a frame ready to read.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

Valor Retornado

Returns TRUE if a frame is ready to read, or FALSE otherwise.

Stomp::getSessionId
Stomp::readFrame
Stomp


Reads the next frame

Stomp::hasFrame
Stomp::send
Stomp
PHP Manual

Stomp::readFrame

stomp_read_frame

(PECL stomp >= 0.1.0)

Stomp::readFrame -- stomp_read_frame — Reads the next frame

Descrição

Object oriented style (method):

public stompframe Stomp::readFrame ([ string $class_name = "stompFrame" ] )

Procedural style:

array stomp_read_frame ( resource $link )

Reads the next frame. It is possible to instantiate an object of a specific class, and pass parameters to that class's constructor.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

class_name

The name of the class to instantiate. If not specified, a stompFrame object is returned.

Valor Retornado

Nota:

A transaction header may be specified, indicating that the message acknowledgment should be part of the named transaction.

Histórico

Versão | Descrição
Stomp 0.4.0 | class_name parameter was added.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

/* subscribe to messages from the queue 'foo' */
$stomp->subscribe('/queue/foo');

/* read a frame */
var_dump($stomp->readFrame());

/* close connection */
unset($stomp);

?>

O exemplo acima irá imprimir algo similar a:

object(StompFrame)#2 (3) {
  ["command"]=>
  string(7) "MESSAGE"
  ["headers"]=>
  array(5) {
    ["message-id"]=>
    string(41) "ID:php.net-55293-1257226743606-4:2:-1:1:1"
    ["destination"]=>
    string(10) "/queue/foo"
    ["timestamp"]=>
    string(13) "1257226805828"
    ["expires"]=>
    string(1) "0"
    ["priority"]=>
    string(1) "0"
  }
  ["body"]=>
  string(3) "bar"
}

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

/* subscribe to messages from the queue 'foo' */
stomp_subscribe($link, '/queue/foo');

/* read a frame */
$frame = stomp_read_frame($link);

/* close connection */
stomp_close($link);

?>

O exemplo acima irá imprimir algo similar a:

array(3) {
  ["command"]=>
  string(7) "MESSAGE"
  ["body"]=>
  string(3) "bar"
  ["headers"]=>
  array(6) {
    ["transaction"]=>
    string(2) "t1"
    ["message-id"]=>
    string(41) "ID:php.net-55293-1257226743606-4:3:-1:1:1"
    ["destination"]=>
    string(10) "/queue/foo"
    ["timestamp"]=>
    string(13) "1257227037059"
    ["expires"]=>
    string(1) "0"
    ["priority"]=>
    string(1) "0"
  }
}

Stomp::hasFrame
Stomp::send
Stomp


Sends a message

Stomp::readFrame
Stomp::setReadTimeout
Stomp
PHP Manual

Stomp::send

stomp_send

(PECL stomp >= 0.1.0)

Stomp::send -- stomp_send — Sends a message

Descrição

Object oriented style (method):

public bool Stomp::send ( string $destination , mixed $msg [, array $headers ] )

Procedural style:

bool stomp_send ( resource $link , string $destination , mixed $msg [, array $headers ] )

Sends a message to the Message Broker.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

destination

Where to send the message

msg

Message to send.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

A transaction header may be specified, indicating that the message acknowledgment should be part of the named transaction.

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

See stomp_ack().

Stomp::readFrame
Stomp::setReadTimeout
Stomp


Sets read timeout

Stomp::send
Stomp::subscribe
Stomp
PHP Manual

Stomp::setReadTimeout

stomp_set_read_timeout

(PECL stomp >= 0.3.0)

Stomp::setReadTimeout -- stomp_set_read_timeout — Sets read timeout

Descrição

Object oriented style (method):

public void Stomp::setReadTimeout ( int $seconds [, int $microseconds ] )

Procedural style:

void stomp_set_read_timeout ( resource $link , integer $seconds [, integer $microseconds ] )

Sets read timeout.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

seconds

The seconds part of the timeout to be set.

microseconds

The microseconds part of the timeout to be set.

Exemplos

Exemplo #1 Object oriented style

<?php

/* connection */
try {
    $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
    die('Connection failed: ' . $e->getMessage());
}

$stomp->setReadTimeout(10);

/* close connection */
unset($stomp);

?>

Exemplo #2 Procedural style

<?php

/* connection */
$link = stomp_connect('ssl://localhost:61612');

/* check connection */
if (!$link) {
    die('Connection failed: ' . stomp_connect_error());
}

stomp_set_read_timeout($link, 10);

/* close connection */
stomp_close($link);

?>

Stomp::send
Stomp::subscribe
Stomp


Registers to listen to a given destination

Stomp::setReadTimeout
Stomp::unsubscribe
Stomp
PHP Manual

Stomp::subscribe

stomp_subscribe

(PECL stomp >= 0.1.0)

Stomp::subscribe -- stomp_subscribe — Registers to listen to a given destination

Descrição

Object oriented style (method):

public bool Stomp::subscribe ( string $destination [, array $headers ] )

Procedural style:

bool stomp_subscribe ( resource $link , string $destination [, array $headers ] )

Registers to listen to a given destination.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

destination

Destination to subscribe to.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

See stomp_ack().

Stomp::setReadTimeout
Stomp::unsubscribe
Stomp


Removes an existing subscription

Stomp::subscribe
StompFrame
Stomp
PHP Manual

Stomp::unsubscribe

stomp_unsubscribe

(PECL stomp >= 0.1.0)

Stomp::unsubscribe -- stomp_unsubscribe — Removes an existing subscription

Descrição

Object oriented style (method):

public bool Stomp::unsubscribe ( string $destination [, array $headers ] )

Procedural style:

bool stomp_unsubscribe ( resource $link , string $destination [, array $headers ] )

Removes an existing subscription.

Parâmetros

link

Procedural style only: The stomp link identifier returned by stomp_connect().

destination

Subscription to remove.

headers

Associative array containing the additional headers (example: receipt).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Dica

Stomp is inherently asynchronous. Synchronous communication can be implemented adding a receipt header. This will cause methods to not return anything until the server has acknowledged receipt of the message or until read timeout was reached.

Exemplos

See stomp_ack().

Stomp::subscribe
StompFrame
Stomp


The StompFrame class

Introdução

Represents a message which was sent or received from a Stomp compliant Message Broker.

Sinopse da classe

StompFrame {
/* Properties */
public $command ;
public $headers ;
public $body ;
/* Methods */
__construct ([ string $command [, array $headers [, string $body ]]] )
}

Propriedades

command

Frame command.

headers

Frame headers (array).

body

Frame body.

Índice

  • StompFrame::__construct — Constructor
Stomp::unsubscribe
StompFrame::__construct
Stomp


Constructor

StompFrame
StompException
StompFrame
PHP Manual

StompFrame::__construct

(PECL stomp >= 0.1.0)

StompFrame::__construct — Constructor

Descrição

StompFrame::__construct ([ string $command [, array $headers [, string $body ]]] )

Constructor.

Parâmetros

command

Frame command

headers

Frame headers (array).

body

Frame body.

StompFrame
StompException
StompFrame


The StompException class

Introdução

Represents an error raised by the stomp extension. See Exceptions for more information about Exceptions in PHP.

Sinopse da classe

StompException extends Exception {
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
/* Methods */
public string getDetails ( void )
}

Índice

  • StompException::getDetails — Get exception details
StompFrame::__construct
StompException::getDetails
Stomp


Get exception details

StompException
SVN
StompException
PHP Manual

StompException::getDetails

(No version information available, might only be in SVN)

StompException::getDetails — Get exception details

Descrição

public string StompException::getDetails ( void )

Get exception details.

Valor Retornado

string containing the error details.

StompException
SVN
StompException


Subversion

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • SVN Funções
    • svn_add — Schedules the addition of an item in a working directory
    • svn_auth_get_parameter — Retrieves authentication parameter
    • svn_auth_set_parameter — Sets an authentication parameter
    • svn_blame — Get the SVN blame for a file
    • svn_cat — Returns the contents of a file in a repository
    • svn_checkout — Checks out a working copy from the repository
    • svn_cleanup — Recursively cleanup a working copy directory, finishing incomplete operations and removing locks
    • svn_client_version — Returns the version of the SVN client libraries
    • svn_commit — Sends changes from the local working copy to the repository
    • svn_delete — Delete items from a working copy or repository.
    • svn_diff — Recursively diffs two paths
    • svn_export — Export the contents of a SVN directory
    • svn_fs_abort_txn — Abort a transaction, returns true if everything is okay, false otherwise
    • svn_fs_apply_text — Creates and returns a stream that will be used to replace
    • svn_fs_begin_txn2 — Create a new transaction
    • svn_fs_change_node_prop — Return true if everything is ok, false otherwise
    • svn_fs_check_path — Determines what kind of item lives at path in a given repository fsroot
    • svn_fs_contents_changed — Return true if content is different, false otherwise
    • svn_fs_copy — Copies a file or a directory, returns true if all is ok, false otherwise
    • svn_fs_delete — Deletes a file or a directory, return true if all is ok, false otherwise
    • svn_fs_dir_entries — Enumerates the directory entries under path; returns a hash of dir names to file type
    • svn_fs_file_contents — Returns a stream to access the contents of a file from a given version of the fs
    • svn_fs_file_length — Returns the length of a file from a given version of the fs
    • svn_fs_is_dir — Return true if the path points to a directory, false otherwise
    • svn_fs_is_file — Return true if the path points to a file, false otherwise
    • svn_fs_make_dir — Creates a new empty directory, returns true if all is ok, false otherwise
    • svn_fs_make_file — Creates a new empty file, returns true if all is ok, false otherwise
    • svn_fs_node_created_rev — Returns the revision in which path under fsroot was created
    • svn_fs_node_prop — Returns the value of a property for a node
    • svn_fs_props_changed — Return true if props are different, false otherwise
    • svn_fs_revision_prop — Fetches the value of a named property
    • svn_fs_revision_root — Get a handle on a specific version of the repository root
    • svn_fs_txn_root — Creates and returns a transaction root
    • svn_fs_youngest_rev — Returns the number of the youngest revision in the filesystem
    • svn_import — Imports an unversioned path into a repository
    • svn_log — Returns the commit log messages of a repository URL
    • svn_ls — Returns list of directory contents in repository URL, optionally at revision number
    • svn_mkdir — Creates a directory in a working copy or repository
    • svn_repos_create — Create a new subversion repository at path
    • svn_repos_fs_begin_txn_for_commit — Create a new transaction
    • svn_repos_fs_commit_txn — Commits a transaction and returns the new revision
    • svn_repos_fs — Gets a handle on the filesystem for a repository
    • svn_repos_hotcopy — Make a hot-copy of the repos at repospath; copy it to destpath
    • svn_repos_open — Open a shared lock on a repository.
    • svn_repos_recover — Run recovery procedures on the repository located at path.
    • svn_revert — Revert changes to the working copy
    • svn_status — Returns the status of working copy files and directories
    • svn_update — Update working copy
StompException::getDetails
Introdução
Outros Serviços


Introdução

This extension implements PHP bindings for » Subversion (SVN), a version control system, allowing PHP scripts to communicate with SVN repositories and working copies without direct command line calls to the svn executable.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

SVN
Instalação/Configuração
SVN


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SVN


Dependências

The Subversion binaries are not necessary to use this extension. However, when compiling the extension, libsvn (the Subversion headers) must be available.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/svn

If ./configure is having trouble finding the SVN files (for example, Subversion was installed with a different prefix directory), use ./configure --with-svn=$USR_PATH to specify the directory where the include/subversion-1/ folder is located.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Aviso

If the extension is compiled against libsvn 1.3, functions that work with working copies will fail when used on working copies created by Subversion 1.4.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SVN_REVISION_HEAD (integer)
Magic number (-1) specifying the HEAD revision
Constants usable with svn_auth_set_parameter()
SVN_AUTH_PARAM_DEFAULT_USERNAME (string)
Property for default username to use when performing basic authentication
SVN_AUTH_PARAM_DEFAULT_PASSWORD (string)
Property for default password to use when performing basic authentication
SVN_AUTH_PARAM_NON_INTERACTIVE (string)
SVN_AUTH_PARAM_DONT_STORE_PASSWORDS (string)
SVN_AUTH_PARAM_NO_AUTH_CACHE (string)
SVN_AUTH_PARAM_SSL_SERVER_FAILURES (string)
SVN_AUTH_PARAM_SSL_SERVER_CERT_INFO (string)
SVN_AUTH_PARAM_CONFIG (string)
SVN_AUTH_PARAM_SERVER_GROUP (string)
SVN_AUTH_PARAM_CONFIG_DIR (string)
PHP_SVN_AUTH_PARAM_IGNORE_SSL_VERIFY_ERRORS (string)
Custom property for ignoring SSL cert verification errors
Filesystem constants
SVN_FS_CONFIG_FS_TYPE (string)
Configuration key that determines filesystem type
SVN_FS_TYPE_BDB (string)
Filesystem is Berkeley-DB implementation
SVN_FS_TYPE_FSFS (string)
Filesystem is native-filesystem implementation
Reserved property constants
SVN_PROP_REVISION_DATE (string)
svn:date
SVN_PROP_REVISION_ORIG_DATE (string)
svn:original-date
SVN_PROP_REVISION_AUTHOR (string)
svn:author
SVN_PROP_REVISION_LOG (string)
svn:log
Working copy status constants
SVN_WC_STATUS_NONE (int)
Status does not exist
SVN_WC_STATUS_UNVERSIONED (int)
Item is not versioned in working copy
SVN_WC_STATUS_NORMAL (int)
Item exists, nothing else is happening
SVN_WC_STATUS_ADDED (int)
Item is scheduled for addition
SVN_WC_STATUS_MISSING (int)
Item is versioned but missing from the working copy
SVN_WC_STATUS_DELETED (int)
Item is scheduled for deletion
SVN_WC_STATUS_REPLACED (int)
Item was deleted and then re-added
SVN_WC_STATUS_MODIFIED (int)
Item (text or properties) was modified
SVN_WC_STATUS_MERGED (int)
Item's local modifications were merged with repository modifications
SVN_WC_STATUS_CONFLICTED (int)
Item's local modifications conflicted with repository modifications
SVN_WC_STATUS_IGNORED (int)
Item is unversioned but configured to be ignored
SVN_WC_STATUS_OBSTRUCTED (int)
Unversioned item is in the way of a versioned resource
SVN_WC_STATUS_EXTERNAL (int)
Unversioned path that is populated using svn:externals
SVN_WC_STATUS_INCOMPLETE (int)
Directory does not contain complete entries list
Node type constants
SVN_NODE_NONE (int)
Absent
SVN_NODE_FILE (int)
File
SVN_NODE_DIR (int)
Directory
SVN_NODE_UNKNOWN (int)
Something Subversion cannot identify
Tipos Resource
SVN Funções
SVN


SVN Funções

Índice

  • svn_add — Schedules the addition of an item in a working directory
  • svn_auth_get_parameter — Retrieves authentication parameter
  • svn_auth_set_parameter — Sets an authentication parameter
  • svn_blame — Get the SVN blame for a file
  • svn_cat — Returns the contents of a file in a repository
  • svn_checkout — Checks out a working copy from the repository
  • svn_cleanup — Recursively cleanup a working copy directory, finishing incomplete operations and removing locks
  • svn_client_version — Returns the version of the SVN client libraries
  • svn_commit — Sends changes from the local working copy to the repository
  • svn_delete — Delete items from a working copy or repository.
  • svn_diff — Recursively diffs two paths
  • svn_export — Export the contents of a SVN directory
  • svn_fs_abort_txn — Abort a transaction, returns true if everything is okay, false otherwise
  • svn_fs_apply_text — Creates and returns a stream that will be used to replace
  • svn_fs_begin_txn2 — Create a new transaction
  • svn_fs_change_node_prop — Return true if everything is ok, false otherwise
  • svn_fs_check_path — Determines what kind of item lives at path in a given repository fsroot
  • svn_fs_contents_changed — Return true if content is different, false otherwise
  • svn_fs_copy — Copies a file or a directory, returns true if all is ok, false otherwise
  • svn_fs_delete — Deletes a file or a directory, return true if all is ok, false otherwise
  • svn_fs_dir_entries — Enumerates the directory entries under path; returns a hash of dir names to file type
  • svn_fs_file_contents — Returns a stream to access the contents of a file from a given version of the fs
  • svn_fs_file_length — Returns the length of a file from a given version of the fs
  • svn_fs_is_dir — Return true if the path points to a directory, false otherwise
  • svn_fs_is_file — Return true if the path points to a file, false otherwise
  • svn_fs_make_dir — Creates a new empty directory, returns true if all is ok, false otherwise
  • svn_fs_make_file — Creates a new empty file, returns true if all is ok, false otherwise
  • svn_fs_node_created_rev — Returns the revision in which path under fsroot was created
  • svn_fs_node_prop — Returns the value of a property for a node
  • svn_fs_props_changed — Return true if props are different, false otherwise
  • svn_fs_revision_prop — Fetches the value of a named property
  • svn_fs_revision_root — Get a handle on a specific version of the repository root
  • svn_fs_txn_root — Creates and returns a transaction root
  • svn_fs_youngest_rev — Returns the number of the youngest revision in the filesystem
  • svn_import — Imports an unversioned path into a repository
  • svn_log — Returns the commit log messages of a repository URL
  • svn_ls — Returns list of directory contents in repository URL, optionally at revision number
  • svn_mkdir — Creates a directory in a working copy or repository
  • svn_repos_create — Create a new subversion repository at path
  • svn_repos_fs_begin_txn_for_commit — Create a new transaction
  • svn_repos_fs_commit_txn — Commits a transaction and returns the new revision
  • svn_repos_fs — Gets a handle on the filesystem for a repository
  • svn_repos_hotcopy — Make a hot-copy of the repos at repospath; copy it to destpath
  • svn_repos_open — Open a shared lock on a repository.
  • svn_repos_recover — Run recovery procedures on the repository located at path.
  • svn_revert — Revert changes to the working copy
  • svn_status — Returns the status of working copy files and directories
  • svn_update — Update working copy
Constantes pré-definidas
svn_add
SVN


Schedules the addition of an item in a working directory

SVN Funções
svn_auth_get_parameter
SVN Funções
PHP Manual

svn_add

(PECL svn >= 0.1.0)

svn_add — Schedules the addition of an item in a working directory

Descrição

bool svn_add ( string $path [, bool $recursive = true [, bool $force = false ]] )

Adds the file, directory or symbolic link at path to the working directory. The item will be added to the repository the next time you call svn_commit() on the working copy.

Parâmetros

path

Path of item to add.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

recursive

If item is directory, whether or not to recursively add all of its contents. Default is TRUE

force

If true, Subversion will recurse into already versioned directories in order to add unversioned files that may be hiding in those directories. Default is FALSE

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 svn_add() example

In a working directory where svn status returns:

$ svn status
?      foobar.txt

...this code:

<?php
svn_add('foobar.txt');
?>

...will schedule foobar.txt for addition into the repository.

Veja Também

  • » SVN documentation on svn add

SVN Funções
svn_auth_get_parameter
SVN Funções


Retrieves authentication parameter

svn_add
svn_auth_set_parameter
SVN Funções
PHP Manual

svn_auth_get_parameter

(PECL svn >= 0.1.0)

svn_auth_get_parameter — Retrieves authentication parameter

Descrição

string svn_auth_get_parameter ( string $key )

Retrieves authentication parameter at key. For a list of valid keys and their meanings, consult the authentication constants list.

Parâmetros

key

String key name. Use the authentication constants defined by this extension to specify a key.

Valor Retornado

Returns the string value of the parameter at key; returns NULL if parameter does not exist.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • svn_auth_set_parameter() - Sets an authentication parameter
  • Authentication constants

svn_add
svn_auth_set_parameter
SVN Funções


Sets an authentication parameter

svn_auth_get_parameter
svn_blame
SVN Funções
PHP Manual

svn_auth_set_parameter

(PECL svn >= 0.1.0)

svn_auth_set_parameter — Sets an authentication parameter

Descrição

void svn_auth_set_parameter ( string $key , string $value )

Sets authentication parameter at key to value. For a list of valid keys and their meanings, consult the authentication constants list.

Parâmetros

key

String key name. Use the authentication constants defined by this extension to specify a key.

value

String value to set to parameter at key. Format of value varies with the parameter.

Valor Retornado

Não há valor retornado.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Default authentication example

This example configures SVN so that the default username to use is 'Bob' and the default password is 'abc123':

<?php
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'Bob');
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'abc123');
?>

Veja Também

  • svn_auth_get_parameter() - Retrieves authentication parameter
  • Authentication constants

svn_auth_get_parameter
svn_blame
SVN Funções


Get the SVN blame for a file

svn_auth_set_parameter
svn_cat
SVN Funções
PHP Manual

svn_blame

(PECL svn >= 0.3.0)

svn_blame — Get the SVN blame for a file

Descrição

array svn_blame ( string $repository_url [, int $revision_no = SVN_REVISION_HEAD ] )

Get the SVN blame of a file from a repository URL.

Parâmetros

repository_url

The repository URL.

revision_no

The revision number.

Valor Retornado

An array of SVN blame information separated by line which includes the revision number, line number, line of code, author, and date.

Exemplos

Exemplo #1 svn_blame() example

<?php
$svnurl = 'http://svn.example.org/svnroot/foo/trunk/index.php';

print_r( svn_blame($svnurl) );

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] = Array
          (
           [rev] = 1
           [line_no] = 1
           [line] = Hello World
           [author] = joesmith
           [date] = 2007-07-02T05:51:26.628396Z
          )
    [1] = Array
          ...

Veja Também

  • svn_diff() - Recursively diffs two paths
  • svn_logs()
  • svn_status() - Returns the status of working copy files and directories

svn_auth_set_parameter
svn_cat
SVN Funções


Returns the contents of a file in a repository

svn_blame
svn_checkout
SVN Funções
PHP Manual

svn_cat

(PECL svn >= 0.1.0)

svn_cat — Returns the contents of a file in a repository

Descrição

string svn_cat ( string $repos_url [, int $revision_no ] )

Returns the contents of the URL repos_url to a file in the repository, optionally at revision number revision_no.

Parâmetros

repos_url

String URL path to item in a repository.

revision_no

Integer revision number of item to retrieve, default is the HEAD revision.

Valor Retornado

Returns the string contents of the item from the repository on success, and FALSE on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example retrieves the contents of a file at revision 28:

<?php
$contents = svn_cat('http://www.example.com/svnroot/calc/gui.c', 28)
?>

Veja Também

  • svn_list()
  • » SVN documentation on svn cat

svn_blame
svn_checkout
SVN Funções


Checks out a working copy from the repository

svn_cat
svn_cleanup
SVN Funções
PHP Manual

svn_checkout

(PECL svn >= 0.1.0)

svn_checkout — Checks out a working copy from the repository

Descrição

bool svn_checkout ( string $repos , string $targetpath [, int $revision [, int $flags = 0 ]] )

Checks out a working copy from the repository at repos to targetpath at revision revision.

Parâmetros

repos

String URL path to directory in repository to check out.

targetpath

String local path to directory to check out in to

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

revision

Integer revision number of repository to check out. Default is HEAD, the most recent revision.

flags

Any combination of SVN_NON_RECURSIVE and SVN_IGNORE_EXTERNALS.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates how to check out a directory from a repository to a directory named calc:

<?php
svn_checkout('http://www.example.com/svnroot/calc/trunk', dirname(__FILE__) . '/calc');
?>

The dirname(__FILE__) call is necessary in order to convert the calc relative path into an absolute one. If calc exists, you can also use realpath() to retrieve an absolute path.

Veja Também

  • svn_add() - Schedules the addition of an item in a working directory
  • svn_commit() - Sends changes from the local working copy to the repository
  • svn_status() - Returns the status of working copy files and directories
  • svn_update() - Update working copy
  • » SVN documentation on svn checkout

svn_cat
svn_cleanup
SVN Funções


Recursively cleanup a working copy directory, finishing incomplete operations and removing locks

svn_checkout
svn_client_version
SVN Funções
PHP Manual

svn_cleanup

(PECL svn >= 0.1.0)

svn_cleanup — Recursively cleanup a working copy directory, finishing incomplete operations and removing locks

Descrição

bool svn_cleanup ( string $workingdir )

Recursively cleanup working copy directory workingdir, finishing any incomplete operations and removing working copy locks. Use when a working copy is in limbo and needs to be usable again.

Parâmetros

workingdir

String path to local working directory to cleanup

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates clean up of a working copy in a directory named help-me:

<?php
svn_cleanup(realpath('help-me'));
?>

The realpath() call is necessary due to SVN's quirky handling of relative paths.

Veja Também

  • update()
  • » SVN documentation on svn cleanup

svn_checkout
svn_client_version
SVN Funções


Returns the version of the SVN client libraries

svn_cleanup
svn_commit
SVN Funções
PHP Manual

svn_client_version

(PECL svn >= 0.1.0)

svn_client_version — Returns the version of the SVN client libraries

Descrição

string svn_client_version ( void )

Returns the version of the SVN client libraries

Valor Retornado

String version number, usually in form of x.y.z.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

<?php
echo svn_client_version();
?>

O exemplo acima irá imprimir algo similar a:

1.3.1

svn_cleanup
svn_commit
SVN Funções


Sends changes from the local working copy to the repository

svn_client_version
svn_delete
SVN Funções
PHP Manual

svn_commit

(PECL svn >= 0.1.0)

svn_commit — Sends changes from the local working copy to the repository

Descrição

array svn_commit ( string $log , array $targets [, bool $dontrecurse ] )

Commits changes made in the local working copy files enumerated in the targets array to the repository, with the log message log. Directories in the targets array will be recursively committed unless dontrecurse is set to true.

Nota: This function does not have any parameters for specifying authentication, so a username and password must be set using svn_auth_set_parameter()

Parâmetros

log

String log text to commit

targets

Array of local paths of files to be committed

Aviso

This parameter must be an array, a string for a single target is not acceptable.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

dontrecurse

Boolean flag to disable recursive committing of directories in the targets array. Default is FALSE.

Valor Retornado

Returns array in form of:

array(
    0 => integer revision number of commit
    1 => string ISO 8601 date and time of commit
    2 => name of committer
)

Returns FALSE on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example commits the calculator directory to a repository, using the username Bob and the password abc123 (hopefully, his password is stronger):

<?php
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'Bob');
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'abc123');
var_dump(svn_commit('Log message of Bob\'s commit', array(realpath('calculator'))));
?>

O exemplo acima irá imprimir:

array(
  0 => 1415,
  1 => '2007-05-26T01:44:28.453125Z',
  2 => 'Bob'
)

Veja Também

  • svn_auth_set_parameter() - Sets an authentication parameter
  • » SVN documentation on svn commit

svn_client_version
svn_delete
SVN Funções


Delete items from a working copy or repository.

svn_commit
svn_diff
SVN Funções
PHP Manual

svn_delete

(PECL svn >= 0.4.0)

svn_delete — Delete items from a working copy or repository.

Descrição

bool svn_delete ( string $path [, bool $force = false ] )

Deletes the file, directory or symbolic link at path from the working directory. The item will be deleted from the repository the next time you call svn_commit() on the working copy.

Parâmetros

path

Path of item to delete.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

force

If TRUE, the file will be deleted even if it has local modifications. Otherwise, local modifications will result in a failure. Default is FALSE

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Veja Também

  • » SVN documentation on svn delete

svn_commit
svn_diff
SVN Funções


Recursively diffs two paths

svn_delete
svn_export
SVN Funções
PHP Manual

svn_diff

(PECL svn >= 0.1.0)

svn_diff — Recursively diffs two paths

Descrição

array svn_diff ( string $path1 , int $rev1 , string $path2 , int $rev2 )

Recursively diffs two paths, path1 and path2.

Nota:

This is not a general-purpose diff utility. Only local files that are versioned may be diffed: other files will fail.

Parâmetros

path1

First path to diff. This can be a URL to a file/directory in an SVN repository or a local file/directory path.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

Aviso

If a local file path has only backslashes and no forward slashes, this extension will fail to find the path. Always replace all backslashes with forward slashes when using this function.

rev1

First path's revision number. Use SVN_REVISION_HEAD to specify the most recent revision.

path2

Second path to diff. See path1 for description.

rev2

Second path's revision number. See rev1 for description.

Valor Retornado

Returns an array-list consisting of two streams: the first is the diff output and the second contains error stream output. The streams can be read using fread(). Returns FALSE or NULL on error.

The diff output will, by default, be in the form of Subversion's custom unified diff format, but an » external diff engine may be used depending on Subversion's configuration.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates the basic usage of this function, and the retrieval of contents from the stream:

<?php
list($diff, $errors) = svn_diff(
    'http://www.example.com/svnroot/trunk/foo', SVN_REVISION_HEAD,
    'http://www.example.com/svnroot/branches/dev/foo', SVN_REVISION_HEAD
);
if (!$diff) exit;
$contents = '';
while (!feof($diff)) {
  $contents .= fread($diff, 8192);
}
fclose($diff);
fclose($errors);
var_dump($contents);
?>

O exemplo acima irá imprimir:

Index: http://www.example.com/svnroot/trunk/foo
===================================================================
--- http://www.example.com/svnroot/trunk/foo        (.../foo) (revision 23)
+++ http://www.example.com/svnroot/branches/dev/foo (.../foo) (revision 27)
 // further diff output

Exemplo #2 Diffing two revisions of a repository path

This example implements a wrapper function that allows a user to easily diff two revisions of the same item using an external repository path (the default syntax is somewhat verbose):

<?php
function svn_diff_same_item($path, $rev1, $rev2) {
    return svn_diff($path, $rev1, $path, $rev2);
}
?>

Exemplo #3 Portably diffing two local files

This example implements a wrapper function that portably diffs two local files, compensating for the realpath() fix and the backslashes bug:

<?php
function svn_diff_local($path1, $rev1, $path2, $rev2) {
    $path1 = str_replace('\\', '/', realpath($path1));
    $path2 = str_replace('\\', '/', realpath($path2));
    return svn_diff($path1, $rev1, $path2, $rev2);
}
?>

Veja Também

  • » SVN documentation on svn diff

svn_delete
svn_export
SVN Funções


Export the contents of a SVN directory

svn_diff
svn_fs_abort_txn
SVN Funções
PHP Manual

svn_export

(PECL svn >= 0.3.0)

svn_export — Export the contents of a SVN directory

Descrição

bool svn_export ( string $frompath , string $topath [, bool $working_copy = true [, int $revision_no = -1 ]] )

Export the contents of either a working copy or repository into a 'clean' directory.

Parâmetros

frompath

The path to the current repository.

topath

The path to the new repository.

working_copy

If TRUE, it will export uncommitted files from the working copy.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 svn_export() example

<?php
$working_dir     = '../';
$new_working_dir = '/home/user/devel/foo/trunk';

svn_export($working_dir, $new_working_dir);
?>

Veja Também

  • svn_import() - Imports an unversioned path into a repository

svn_diff
svn_fs_abort_txn
SVN Funções


Abort a transaction, returns true if everything is okay, false otherwise

svn_export
svn_fs_apply_text
SVN Funções
PHP Manual

svn_fs_abort_txn

(PECL svn >= 0.2.0)

svn_fs_abort_txn — Abort a transaction, returns true if everything is okay, false otherwise

Descrição

bool svn_fs_abort_txn ( resource $txn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Abort a transaction, returns true if everything is okay, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_export
svn_fs_apply_text
SVN Funções


Creates and returns a stream that will be used to replace

svn_fs_abort_txn
svn_fs_begin_txn2
SVN Funções
PHP Manual

svn_fs_apply_text

(PECL svn >= 0.2.0)

svn_fs_apply_text — Creates and returns a stream that will be used to replace

Descrição

resource svn_fs_apply_text ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates and returns a stream that will be used to replace

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_abort_txn
svn_fs_begin_txn2
SVN Funções


Create a new transaction

svn_fs_apply_text
svn_fs_change_node_prop
SVN Funções
PHP Manual

svn_fs_begin_txn2

(PECL svn >= 0.2.0)

svn_fs_begin_txn2 — Create a new transaction

Descrição

resource svn_fs_begin_txn2 ( resource $repos , int $rev )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Create a new transaction

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_apply_text
svn_fs_change_node_prop
SVN Funções


Return true if everything is ok, false otherwise

svn_fs_begin_txn2
svn_fs_check_path
SVN Funções
PHP Manual

svn_fs_change_node_prop

(PECL svn >= 0.2.0)

svn_fs_change_node_prop — Return true if everything is ok, false otherwise

Descrição

bool svn_fs_change_node_prop ( resource $root , string $path , string $name , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Return true if everything is ok, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_begin_txn2
svn_fs_check_path
SVN Funções


Determines what kind of item lives at path in a given repository fsroot

svn_fs_change_node_prop
svn_fs_contents_changed
SVN Funções
PHP Manual

svn_fs_check_path

(PECL svn >= 0.1.0)

svn_fs_check_path — Determines what kind of item lives at path in a given repository fsroot

Descrição

int svn_fs_check_path ( resource $fsroot , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Determines what kind of item lives at path in a given repository fsroot

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_change_node_prop
svn_fs_contents_changed
SVN Funções


Return true if content is different, false otherwise

svn_fs_check_path
svn_fs_copy
SVN Funções
PHP Manual

svn_fs_contents_changed

(PECL svn >= 0.2.0)

svn_fs_contents_changed — Return true if content is different, false otherwise

Descrição

bool svn_fs_contents_changed ( resource $root1 , string $path1 , resource $root2 , string $path2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Return true if content is different, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_check_path
svn_fs_copy
SVN Funções


Copies a file or a directory, returns true if all is ok, false otherwise

svn_fs_contents_changed
svn_fs_delete
SVN Funções
PHP Manual

svn_fs_copy

(PECL svn >= 0.2.0)

svn_fs_copy — Copies a file or a directory, returns true if all is ok, false otherwise

Descrição

bool svn_fs_copy ( resource $from_root , string $from_path , resource $to_root , string $to_path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Copies a file or a directory, returns true if all is ok, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_contents_changed
svn_fs_delete
SVN Funções


Deletes a file or a directory, return true if all is ok, false otherwise

svn_fs_copy
svn_fs_dir_entries
SVN Funções
PHP Manual

svn_fs_delete

(PECL svn >= 0.2.0)

svn_fs_delete — Deletes a file or a directory, return true if all is ok, false otherwise

Descrição

bool svn_fs_delete ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Deletes a file or a directory, return true if all is ok, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_copy
svn_fs_dir_entries
SVN Funções


Enumerates the directory entries under path; returns a hash of dir names to file type

svn_fs_delete
svn_fs_file_contents
SVN Funções
PHP Manual

svn_fs_dir_entries

(PECL svn >= 0.1.0)

svn_fs_dir_entries — Enumerates the directory entries under path; returns a hash of dir names to file type

Descrição

array svn_fs_dir_entries ( resource $fsroot , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Enumerates the directory entries under path; returns a hash of dir names to file type

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_delete
svn_fs_file_contents
SVN Funções


Returns a stream to access the contents of a file from a given version of the fs

svn_fs_dir_entries
svn_fs_file_length
SVN Funções
PHP Manual

svn_fs_file_contents

(PECL svn >= 0.1.0)

svn_fs_file_contents — Returns a stream to access the contents of a file from a given version of the fs

Descrição

resource svn_fs_file_contents ( resource $fsroot , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns a stream to access the contents of a file from a given version of the fs

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_dir_entries
svn_fs_file_length
SVN Funções


Returns the length of a file from a given version of the fs

svn_fs_file_contents
svn_fs_is_dir
SVN Funções
PHP Manual

svn_fs_file_length

(PECL svn >= 0.1.0)

svn_fs_file_length — Returns the length of a file from a given version of the fs

Descrição

int svn_fs_file_length ( resource $fsroot , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the length of a file from a given version of the fs

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_file_contents
svn_fs_is_dir
SVN Funções


Return true if the path points to a directory, false otherwise

svn_fs_file_length
svn_fs_is_file
SVN Funções
PHP Manual

svn_fs_is_dir

(PECL svn >= 0.2.0)

svn_fs_is_dir — Return true if the path points to a directory, false otherwise

Descrição

bool svn_fs_is_dir ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Return true if the path points to a directory, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_file_length
svn_fs_is_file
SVN Funções


Return true if the path points to a file, false otherwise

svn_fs_is_dir
svn_fs_make_dir
SVN Funções
PHP Manual

svn_fs_is_file

(PECL svn >= 0.2.0)

svn_fs_is_file — Return true if the path points to a file, false otherwise

Descrição

bool svn_fs_is_file ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Return true if the path points to a file, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_is_dir
svn_fs_make_dir
SVN Funções


Creates a new empty directory, returns true if all is ok, false otherwise

svn_fs_is_file
svn_fs_make_file
SVN Funções
PHP Manual

svn_fs_make_dir

(PECL svn >= 0.2.0)

svn_fs_make_dir — Creates a new empty directory, returns true if all is ok, false otherwise

Descrição

bool svn_fs_make_dir ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a new empty directory, returns true if all is ok, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_is_file
svn_fs_make_file
SVN Funções


Creates a new empty file, returns true if all is ok, false otherwise

svn_fs_make_dir
svn_fs_node_created_rev
SVN Funções
PHP Manual

svn_fs_make_file

(PECL svn >= 0.2.0)

svn_fs_make_file — Creates a new empty file, returns true if all is ok, false otherwise

Descrição

bool svn_fs_make_file ( resource $root , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates a new empty file, returns true if all is ok, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_make_dir
svn_fs_node_created_rev
SVN Funções


Returns the revision in which path under fsroot was created

svn_fs_make_file
svn_fs_node_prop
SVN Funções
PHP Manual

svn_fs_node_created_rev

(PECL svn >= 0.1.0)

svn_fs_node_created_rev — Returns the revision in which path under fsroot was created

Descrição

int svn_fs_node_created_rev ( resource $fsroot , string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the revision in which path under fsroot was created

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_make_file
svn_fs_node_prop
SVN Funções


Returns the value of a property for a node

svn_fs_node_created_rev
svn_fs_props_changed
SVN Funções
PHP Manual

svn_fs_node_prop

(PECL svn >= 0.1.0)

svn_fs_node_prop — Returns the value of a property for a node

Descrição

string svn_fs_node_prop ( resource $fsroot , string $path , string $propname )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the value of a property for a node

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_node_created_rev
svn_fs_props_changed
SVN Funções


Return true if props are different, false otherwise

svn_fs_node_prop
svn_fs_revision_prop
SVN Funções
PHP Manual

svn_fs_props_changed

(PECL svn >= 0.2.0)

svn_fs_props_changed — Return true if props are different, false otherwise

Descrição

bool svn_fs_props_changed ( resource $root1 , string $path1 , resource $root2 , string $path2 )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Return true if props are different, false otherwise

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_node_prop
svn_fs_revision_prop
SVN Funções


Fetches the value of a named property

svn_fs_props_changed
svn_fs_revision_root
SVN Funções
PHP Manual

svn_fs_revision_prop

(PECL svn >= 0.1.0)

svn_fs_revision_prop — Fetches the value of a named property

Descrição

string svn_fs_revision_prop ( resource $fs , int $revnum , string $propname )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Fetches the value of a named property

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_props_changed
svn_fs_revision_root
SVN Funções


Get a handle on a specific version of the repository root

svn_fs_revision_prop
svn_fs_txn_root
SVN Funções
PHP Manual

svn_fs_revision_root

(PECL svn >= 0.1.0)

svn_fs_revision_root — Get a handle on a specific version of the repository root

Descrição

resource svn_fs_revision_root ( resource $fs , int $revnum )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Get a handle on a specific version of the repository root

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_revision_prop
svn_fs_txn_root
SVN Funções


Creates and returns a transaction root

svn_fs_revision_root
svn_fs_youngest_rev
SVN Funções
PHP Manual

svn_fs_txn_root

(PECL svn >= 0.2.0)

svn_fs_txn_root — Creates and returns a transaction root

Descrição

resource svn_fs_txn_root ( resource $txn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Creates and returns a transaction root

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_revision_root
svn_fs_youngest_rev
SVN Funções


Returns the number of the youngest revision in the filesystem

svn_fs_txn_root
svn_import
SVN Funções
PHP Manual

svn_fs_youngest_rev

(PECL svn >= 0.1.0)

svn_fs_youngest_rev — Returns the number of the youngest revision in the filesystem

Descrição

int svn_fs_youngest_rev ( resource $fs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Returns the number of the youngest revision in the filesystem

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_fs_txn_root
svn_import
SVN Funções


Imports an unversioned path into a repository

svn_fs_youngest_rev
svn_log
SVN Funções
PHP Manual

svn_import

(PECL svn >= 0.2.0)

svn_import — Imports an unversioned path into a repository

Descrição

bool svn_import ( string $path , string $url , bool $nonrecursive )

Commits unversioned path into repository at url. If path is a directory and nonrecursive is FALSE, the directory will be imported recursively.

Parâmetros

path

Path of file or directory to import.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

url

Repository URL to import into.

nonrecursive

Whether or not to refrain from recursively processing directories.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates a basic use-case of this function. To import a directory named new-files into the repository at http://www.example.com/svnroot/incoming/abc, use:

<?php
svn_import(realpath('new-files'), 'http://www.example.com/svnroot/incoming/abc', false);
?>

Veja Também

  • svn_add() - Schedules the addition of an item in a working directory
  • » SVN documentation for svn import

svn_fs_youngest_rev
svn_log
SVN Funções


Returns the commit log messages of a repository URL

svn_import
svn_ls
SVN Funções
PHP Manual

svn_log

(PECL svn >= 0.1.0)

svn_log — Returns the commit log messages of a repository URL

Descrição

array svn_log ( string $repos_url [, int $start_revision [, int $end_revision [, int $limit = 0 [, int $flags = SVN_DISCOVER_CHANGED_PATHS | SVN_STOP_ON_COPY ]]]] )

svn_log() returns the complete history of the item at the repository URL repos_url, or the history of a specific revision if start_revision is set. This function is equivalent to svn log --verbose -r $start_revision $repos_url.

Aviso

For repositories with large histories, the output may be quite large (one array item for every revision of the item). This function does not support the --limit NUM flag, nor does it support revision ranges (start_revision must be an integer).

Parâmetros

repos_url

Repository URL of the item to retrieve log history from.

start_revision

Revision number of the first log to retrieve. Use SVN_REVISION_HEAD to retrieve the log from the most recent revision.

end_revision

Revision number of the last log to retrieve. Defaults to start_revision if specified or to SVN_REVISION_INITIAL otherwise.

limit

Number of logs to retrieve.

flags

Any combination of SVN_OMIT_MESSAGES, SVN_DISCOVER_CHANGED_PATHS and SVN_STOP_ON_COPY.

Valor Retornado

On success, this function returns an array file listing in the format of:

[0] => Array, ordered most recent (highest) revision first
(
    [rev] => integer revision number
    [author] => string author name
    [msg] => string log message
    [date] => string date formatted per ISO 8601, i.e. date('c')
    [paths] => Array, describing changed files
        (
            [0] => Array
                (
                    [action] => string letter signifying change
                    [path] =>  absolute repository path of changed file
                )
            [1] => ...
        )
)
[1] => ...

Nota:

The output will always be a numerically indexed array of arrays, even when there are none or only one log message(s).

The value of action is a subset of the » status output in the first column, where possible values are:

Actions
Letter | Description
M | Item/props was modified
A | Item was added
D | Item was deleted
R | Item was replaced

If no changes were made to the item, an empty array is returned.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 svn_log() example

<?php
print_r( svn_log('http://www.example.com/', 23) );
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Array
    (
        [rev] => 23
        [author] => 'joe'
        [msg] => 'Add cheese and salami to our sandwich.'
        [date] => '2007-04-06T16:00:27-04:00'
        [paths] => Array
            (
                [0] => Array
                    (
                        [action] => 'M'
                        [path] =>  '/sandwich.txt'
                    )
            )
    )
)

Veja Também

  • » SVN documentation on svn log

svn_import
svn_ls
SVN Funções


Returns list of directory contents in repository URL, optionally at revision number

svn_log
svn_mkdir
SVN Funções
PHP Manual

svn_ls

(PECL svn >= 0.1.0)

svn_ls — Returns list of directory contents in repository URL, optionally at revision number

Descrição

array svn_ls ( string $repos_url [, int $revision_no = SVN_REVISION_HEAD [, bool $recurse = false [, bool $peg = false ]]] )

This function queries the repository URL and returns a list of files and directories, optionally from a specific revision. This is equivalent to svn list $repos_url[@$revision_no]

Nota:

This function does not work with working copies. repos_url must be a repository URL.

Parâmetros

url

URL of the repository, eg. http://www.example.com/svnroot. To access a local Subversion repository via filesystem, use the file URI scheme, eg. file:///home/user/svn-repos

revision

Integer revision number to retrieve listing of. When omitted, the HEAD revision is used.

recurse

Enables recursion.

Valor Retornado

On success, this function returns an array file listing in the format of:

[0] => Array
    (
        [created_rev] => integer revision number of last edit
        [last_author] => string author name of last edit
        [size] => integer byte file size of file
        [time] => string date of last edit in form 'M d H:i'
                  or 'M d Y', depending on how old the file is
        [time_t] => integer unix timestamp of last edit
        [name] => name of file/directory
        [type] => type, can be 'file' or 'dir'
    )
[1] => ...

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 svn_ls() example

<?php
print_r( svn_ls('http://www.example.com/svnroot/') );
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Array
        (
            [created_rev] => 20
            [last_author] => Joe
            [size] => 0
            [time] => Apr 02 09:28
            [time_t] => 1175520529
            [name] => tags
            [type] => dir
        )
    [1] => Array
        (
            [created_rev] => 23
            [last_author] => Bob
            [size] => 0
            [time] => Apr 02 15:15
            [time_t] => 1175541322
            [name] => trunk
            [type] => dir
        )
)

Veja Também

  • » SVN documentation on svn list

svn_log
svn_mkdir
SVN Funções


Creates a directory in a working copy or repository

svn_ls
svn_repos_create
SVN Funções
PHP Manual

svn_mkdir

(PECL svn >= 0.4.0)

svn_mkdir — Creates a directory in a working copy or repository

Descrição

bool svn_mkdir ( string $path [, string $log_message ] )

Creates a directory in a working copy or repository.

Parâmetros

path

The path to the working copy or repository.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • svn_add() - Schedules the addition of an item in a working directory
  • svn_copy()

svn_ls
svn_repos_create
SVN Funções


Create a new subversion repository at path

svn_mkdir
svn_repos_fs_begin_txn_for_commit
SVN Funções
PHP Manual

svn_repos_create

(PECL svn >= 0.1.0)

svn_repos_create — Create a new subversion repository at path

Descrição

resource svn_repos_create ( string $path [, array $config [, array $fsconfig ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Create a new subversion repository at path

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_mkdir
svn_repos_fs_begin_txn_for_commit
SVN Funções


Create a new transaction

svn_repos_create
svn_repos_fs_commit_txn
SVN Funções
PHP Manual

svn_repos_fs_begin_txn_for_commit

(PECL svn >= 0.2.0)

svn_repos_fs_begin_txn_for_commit — Create a new transaction

Descrição

resource svn_repos_fs_begin_txn_for_commit ( resource $repos , int $rev , string $author , string $log_msg )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Create a new transaction

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_create
svn_repos_fs_commit_txn
SVN Funções


Commits a transaction and returns the new revision

svn_repos_fs_begin_txn_for_commit
svn_repos_fs
SVN Funções
PHP Manual

svn_repos_fs_commit_txn

(PECL svn >= 0.2.0)

svn_repos_fs_commit_txn — Commits a transaction and returns the new revision

Descrição

int svn_repos_fs_commit_txn ( resource $txn )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Commits a transaction and returns the new revision

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_fs_begin_txn_for_commit
svn_repos_fs
SVN Funções


Gets a handle on the filesystem for a repository

svn_repos_fs_commit_txn
svn_repos_hotcopy
SVN Funções
PHP Manual

svn_repos_fs

(PECL svn >= 0.1.0)

svn_repos_fs — Gets a handle on the filesystem for a repository

Descrição

resource svn_repos_fs ( resource $repos )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Gets a handle on the filesystem for a repository

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_fs_commit_txn
svn_repos_hotcopy
SVN Funções


Make a hot-copy of the repos at repospath; copy it to destpath

svn_repos_fs
svn_repos_open
SVN Funções
PHP Manual

svn_repos_hotcopy

(PECL svn >= 0.1.0)

svn_repos_hotcopy — Make a hot-copy of the repos at repospath; copy it to destpath

Descrição

bool svn_repos_hotcopy ( string $repospath , string $destpath , bool $cleanlogs )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Make a hot-copy of the repos at repospath; copy it to destpath

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_fs
svn_repos_open
SVN Funções


Open a shared lock on a repository.

svn_repos_hotcopy
svn_repos_recover
SVN Funções
PHP Manual

svn_repos_open

(PECL svn >= 0.1.0)

svn_repos_open — Open a shared lock on a repository.

Descrição

resource svn_repos_open ( string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Open a shared lock on a repository.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_hotcopy
svn_repos_recover
SVN Funções


Run recovery procedures on the repository located at path.

svn_repos_open
svn_revert
SVN Funções
PHP Manual

svn_repos_recover

(PECL svn >= 0.1.0)

svn_repos_recover — Run recovery procedures on the repository located at path.

Descrição

bool svn_repos_recover ( string $path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Run recovery procedures on the repository located at path.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

svn_repos_open
svn_revert
SVN Funções


Revert changes to the working copy

svn_repos_recover
svn_status
SVN Funções
PHP Manual

svn_revert

(PECL svn >= 0.3.0)

svn_revert — Revert changes to the working copy

Descrição

bool svn_revert ( string $path [, bool $recursive = false ] )

Revert any local changes to the path in a working copy.

Parâmetros

path

The path to the working repository.

recursive

Optionally make recursive changes.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • svn_delete() - Delete items from a working copy or repository.
  • svn_export() - Export the contents of a SVN directory

svn_repos_recover
svn_status
SVN Funções


Returns the status of working copy files and directories

svn_revert
svn_update
SVN Funções
PHP Manual

svn_status

(PECL svn >= 0.1.0)

svn_status — Returns the status of working copy files and directories

Descrição

array svn_status ( string $path [, int $flags = 0 ] )

Returns the status of working copy files and directories, giving modifications, additions, deletions and other changes to items in the working copy.

Parâmetros

path

Local path to file or directory to retrieve status of.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

flags

Any combination of SVN_NON_RECURSIVE, SVN_ALL (regardless of modification status), SVN_SHOW_UPDATES (entries will be added for items that are out-of-date), SVN_NO_IGNORE (disregard svn:ignore properties when scanning for new files) and SVN_IGNORE_EXTERNALS.

Valor Retornado

Returns a numerically indexed array of associative arrays detailing the status of items in the repository:

Array (
    [0] => Array (
        // information on item
    )
    [1] => ...
)

The information on the item is an associative array that can contain the following keys:

path
String path to file/directory of this entry on local filesystem.
text_status
Status of item's text. Consulte constantes de status para possíveis valores.
repos_text_status
Status of item's text in repository. Only accurate if update was set to TRUE. Consulte constantes de status para possíveis valores.
prop_status
Status of item's properties. Consulte constantes de status para possíveis valores.
repos_prop_status
Status of item's property in repository. Only accurate if update was set to TRUE. Consulte constantes de status para possíveis valores.
locked
Whether or not the item is locked. (Only set if TRUE.)
copied
Whether or not the item was copied (scheduled for addition with history). (Only set if TRUE.)
switched
Whether or not the item was switched using the switch command. (Only set if TRUE)

These keys are only set if the item is versioned:

name
Base name of item in repository.
url
URL of item in repository.
repos
Base URL of repository.
revision
Integer revision of item in working copy.
kind
Type of item, i.e. file or directory. Consulte constantes de tipos para possíveis valores.
schedule
Scheduled action for item, i.e. addition or deletion. Constants for these magic numbers are not available, they can be emulated by using:
<?php
if (!defined('svn_wc_schedule_normal')) {
    define('svn_wc_schedule_normal',  0); // nothing special
    define('svn_wc_schedule_add',     1); // item will be added
    define('svn_wc_schedule_delete',  2); // item will be deleted
    define('svn_wc_schedule_replace', 3); // item will be added and deleted
}
?>
deleted
Whether or not the item was deleted, but parent revision lags behind. (Only set if TRUE.)
absent
Whether or not the item is absent, that is, Subversion knows that there should be something there but there isn't. (Only set if TRUE.)
incomplete
Whether or not the entries file for a directory is incomplete. (Only set if TRUE.)
cmt_date
Integer Unix timestamp of last commit date. (Unaffected by update.)
cmt_rev
Integer revision of last commit. (Unaffected by update.)
cmt_author
String author of last commit. (Unaffected by update.)
prop_time
Integer Unix timestamp of last up-to-date time for properties
text_time
Integer Unix timestamp of last up-to-date time for text

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates a basic, theoretical usage of this function.

<?php
print_r(svn_status(realpath('wc')));
?>

O exemplo acima irá imprimir algo similar a:

Array (
    [0] => Array (
        [path] => /home/bob/wc/sandwich.txt
        [text_status] => 8 // item was modified
        [repos_text_status] => 1 // no information available, use update
        [prop_status] => 3 // no changes
        [repos_prop_status] => 1 // no information available, use update
        [name] => sandwich.txt
        [url] => http://www.example.com/svnroot/deli/trunk/sandwich.txt
        [repos] => http://www.example.com/svnroot/
        [revision] => 123
        [kind] => 1 // file
        [schedule] => 0 // no special actions scheduled
        [cmt_date] => 1165543135
        [cmt_rev] => 120
        [cmt_author] => Alice
        [prop_time] => 1180201728
        [text_time] => 1180201729
    )
)

Veja Também

  • svn_update() - Update working copy
  • svn_log() - Returns the commit log messages of a repository URL
  • » SVN documentation for svn status

svn_revert
svn_update
SVN Funções


Update working copy

svn_status
TCP
SVN Funções
PHP Manual

svn_update

(PECL svn >= 0.1.0)

svn_update — Update working copy

Descrição

int svn_update ( string $path [, int $revno = SVN_REVISION_HEAD [, bool $recurse = true ]] )

Update working copy at path to revision revno. If recurse is true, directories will be recursively updated.

Parâmetros

path

Path to local working copy.

Nota: Caminhos relativos irão ser resolvidos como se o diretório atual fosse o que contém o binário PHP. Para chamar script do diretório, use realpath() ou dirname(__FILE__).

revno

Revision number to update to, default is SVN_REVISION_HEAD.

recurse

Whether or not to recursively update directories.

Valor Retornado

Returns new revision number on success, returns FALSE on failure.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Exemplos

Exemplo #1 Basic example

This example demonstrates basic usage of this function:

<?php
echo svn_update(realpath('working-copy'));
?>

O exemplo acima irá imprimir algo similar a:

234

Veja Também

  • svn_checkout() - Checks out a working copy from the repository
  • svn_commit() - Sends changes from the local working copy to the repository
  • » SVN documentation for svn update

svn_status
TCP
SVN Funções


TCP Wrappers

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções de TCP
    • tcpwrap_check — Performs a tcpwrap check
svn_update
Introdução
Outros Serviços


Introdução

A TCP wrappers fornece um mecanismo clássico do Unix que foi projetado para verificar se o cliente remoto está disponível para conexão pelo dada endereço IP.

TCP
Instalação/Configuração
TCP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
TCP


Instalação

Tcpwrap estÃ¡ atualmente disponÃvel atravÃ©s do PECL » http://pecl.php.net/package/tcpwrap.

Se » PEAR estÃ¡ disponÃvel em seu sistema *nix-like vocÃª pode usar o instalador pear para instalar a extensÃ£o tcpwrap, pelo seguinte comando: pear -v install tcpwrap.

VocÃª pode sempre fazer download do pacote tar.gz e instalar a tcpwrap manualmente:

Exemplo #1 Instalando tcpwrap manualmente

gunzip tcpwrap-xxx.tgz
tar -xvf tcpwrap-xxx.tar
cd tcpwrap-xxx
phpize
./configure && make && make install

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções de TCP
TCP


Funções de TCP

Índice

  • tcpwrap_check — Performs a tcpwrap check
Constantes pré-definidas
tcpwrap_check
TCP


Performs a tcpwrap check

Funções de TCP
YAZ
Funções de TCP
PHP Manual

tcpwrap_check

(PECL tcpwrap >= 0.1.0)

tcpwrap_check — Performs a tcpwrap check

Descrição

bool tcpwrap_check ( string $daemon , string $address [, string $user [, bool $nodns = false ]] )

This function consults the /etc/hosts.allow and /etc/hosts.deny files to check if access to service daemon should be granted or denied for a client.

Parâmetros

daemon

The service name.

address

The client remote address. Can be either an IP address or a domain name.

user

An optional user name.

nodns

If address looks like domain name then DNS is used to resolve it to IP address; set nodns to TRUE to avoid this.

Valor Retornado

This function returns TRUE if access should be granted, FALSE otherwise.

Exemplos

Exemplo #1 Deny all connections from localhost

If your /etc/hosts.deny file contains:

php: 127.0.0.1

And your code looks like:

<?php
if (!tcpwrap_check('php', $_SERVER['REMOTE_ADDR'])) {
  die('You are not welcome here');
}
?>

Veja Também

For more details please consult hosts_access(3) man page.

Funções de TCP
YAZ
Funções de TCP


YAZ

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • YAZ Funções
    • yaz_addinfo — Returns additional error information
    • yaz_ccl_conf — Configure CCL parser
    • yaz_ccl_parse — Invoke CCL Parser
    • yaz_close — Close YAZ connection
    • yaz_connect — Prepares for a connection to a Z39.50 server
    • yaz_database — Specifies the databases within a session
    • yaz_element — Specifies Element-Set Name for retrieval
    • yaz_errno — Returns error number
    • yaz_error — Returns error description
    • yaz_es_result — Inspects Extended Services Result
    • yaz_es — Prepares for an Extended Service Request
    • yaz_get_option — Returns value of option for connection
    • yaz_hits — Returns number of hits for last search
    • yaz_itemorder — Prepares for Z39.50 Item Order with an ILL-Request package
    • yaz_present — Prepares for retrieval (Z39.50 present)
    • yaz_range — Specifies a range of records to retrieve
    • yaz_record — Returns a record
    • yaz_scan_result — Returns Scan Response result
    • yaz_scan — Prepares for a scan
    • yaz_schema — Specifies schema for retrieval
    • yaz_search — Prepares for a search
    • yaz_set_option — Sets one or more options for connection
    • yaz_sort — Sets sorting criteria
    • yaz_syntax — Specifies the preferred record syntax for retrieval
    • yaz_wait — Wait for Z39.50 requests to complete
tcpwrap_check
Introdução
Outros Serviços


Introdução

This extension offers a PHP interface to the YAZ toolkit that implements the » Z39.50 Protocol for Information Retrieval. With this extension you can easily implement a Z39.50 origin (client) that searches or scans Z39.50 targets (servers) in parallel.

The module hides most of the complexity of Z39.50 so it should be fairly easy to use. It supports persistent stateless connections very similar to those offered by the various RDB APIs that are available for PHP. This means that sessions are stateless but shared among users, thus saving the connect and initialize phase steps in most cases.

YAZ is available at » http://www.indexdata.dk/yaz/. You can find news information, example scripts, etc. for this extension at » http://www.indexdata.dk/phpyaz/.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

YAZ
Instalação/Configuração
YAZ


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
YAZ


Dependências

Obtain YAZ (ANSI/NISO Z39.50 support) and install it. YAZ can be fetched in source or in various prebuilt packages from the » YAZ archive. Systems such as Debian GNU/Linux, Suse Linux, FreeBSD also has YAZ as part of their distribution.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/yaz

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota: Information specific to Windows users

php_yaz.dll depends on yaz.dll. The yaz.dll is part of the Win32 ZIP from the PHP site. It is also part of the Windows YAZ install available from the » YAZ WIN32 area.

On windows, don't forget to add the PHP directory to the PATH, so that the yaz.dll file can be found by the system.

Aviso

A extensão IMAP não pode ser utilizada em conjunto com as extensões recode, YAZ ou Cyrus. Isto ocorre pelo fato de elas compartilharem os mesmos símbolos internos.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

YAZ configuration options
Name | Default | Changeable | Changelog
yaz.max_links | "100" | PHP_INI_ALL | Available since PHP 4.3.0. Removed in PHP 5.0.0.
yaz.log_file | NULL | PHP_INI_ALL | Available since PHP 4.3.0. Removed in PHP 5.0.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
YAZ


Exemplos

PHP/YAZ keeps track of connections with targets (Z-Associations). A resource represents a connection to a target.

The script below demonstrates the parallel searching feature of the API. When invoked with no arguments it prints a query form; else (arguments are supplied) it searches the targets as given in array host.

Exemplo #1 Parallel searching using Yaz

<?php
$host=$_REQUEST[host];
$query=$_REQUEST[query];
$num_hosts = count($host);
if (empty($query) || count($host) == 0) {
    echo '<form method="get">
    <input type="checkbox"
    name="host[]" value="bagel.indexdata.dk/gils" />
        GILS test
    <input type="checkbox"
    name="host[]" value="localhost:9999/Default" />
        local test
    <input type="checkbox" checked="checked"
    name="host[]" value="z3950.loc.gov:7090/voyager" />
        Library of Congress
    <br />
    RPN Query:
    <input type="text" size="30" name="query" />
    <input type="submit" name="action" value="Search" />
    </form>
    ';
} else {
    echo 'You searched for ' . htmlspecialchars($query) . '<br />';
    for ($i = 0; $i < $num_hosts; $i++) {
        $id[] = yaz_connect($host[$i]);
        yaz_syntax($id[$i], "usmarc");
        yaz_range($id[$i], 1, 10);
        yaz_search($id[$i], "rpn", $query);
    }
    yaz_wait();
    for ($i = 0; $i < $num_hosts; $i++) {
        echo '<hr />' . $host[$i] . ':';
        $error = yaz_error($id[$i]);
        if (!empty($error)) {
            echo "Error: $error";
        } else {
            $hits = yaz_hits($id[$i]);
            echo "Result Count $hits";
        }
        echo '<dl>';
        for ($p = 1; $p <= 10; $p++) {
            $rec = yaz_record($id[$i], $p, "string");
            if (empty($rec)) continue;
            echo "<dt><b>$p</b></dt><dd>";
            echo nl2br($rec);
            echo "</dd>";
        }
        echo '</dl>';
    }
}
?>

Constantes pré-definidas
YAZ Funções
YAZ


YAZ Funções

Índice

  • yaz_addinfo — Returns additional error information
  • yaz_ccl_conf — Configure CCL parser
  • yaz_ccl_parse — Invoke CCL Parser
  • yaz_close — Close YAZ connection
  • yaz_connect — Prepares for a connection to a Z39.50 server
  • yaz_database — Specifies the databases within a session
  • yaz_element — Specifies Element-Set Name for retrieval
  • yaz_errno — Returns error number
  • yaz_error — Returns error description
  • yaz_es_result — Inspects Extended Services Result
  • yaz_es — Prepares for an Extended Service Request
  • yaz_get_option — Returns value of option for connection
  • yaz_hits — Returns number of hits for last search
  • yaz_itemorder — Prepares for Z39.50 Item Order with an ILL-Request package
  • yaz_present — Prepares for retrieval (Z39.50 present)
  • yaz_range — Specifies a range of records to retrieve
  • yaz_record — Returns a record
  • yaz_scan_result — Returns Scan Response result
  • yaz_scan — Prepares for a scan
  • yaz_schema — Specifies schema for retrieval
  • yaz_search — Prepares for a search
  • yaz_set_option — Sets one or more options for connection
  • yaz_sort — Sets sorting criteria
  • yaz_syntax — Specifies the preferred record syntax for retrieval
  • yaz_wait — Wait for Z39.50 requests to complete
Exemplos
yaz_addinfo
YAZ


Returns additional error information

YAZ Funções
yaz_ccl_conf
YAZ Funções
PHP Manual

yaz_addinfo

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_addinfo — Returns additional error information

Descrição

string yaz_addinfo ( resource $id )

Returns additional error information for the last request on the server.

With some servers, this function may return the same string as yaz_error().

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

A string containing additional error information or an empty string if the last operation was successful or if no additional information was provided by the server.

Veja Também

  • yaz_error() - Returns error description
  • yaz_errno() - Returns error number

YAZ Funções
yaz_ccl_conf
YAZ Funções


Configure CCL parser

yaz_addinfo
yaz_ccl_parse
YAZ Funções
PHP Manual

yaz_ccl_conf

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_ccl_conf — Configure CCL parser

Descrição

void yaz_ccl_conf ( resource $id , array $config )

This function configures the CCL query parser for a server with definitions of access points (CCL qualifiers) and their mapping to RPN.

To map a specific CCL query to RPN afterwards call the yaz_ccl_parse() function.

Parâmetros

id

The connection resource returned by yaz_connect().

config

An array of configuration. Each key of the array is the name of a CCL field and the corresponding value holds a string that specifies a mapping to RPN.

The mapping is a sequence of attribute-type, attribute-value pairs. Attribute-type and attribute-value is separated by an equal sign (=). Each pair is separated by white space.

Additional information can be found on the » CCL page.

Valor Retornado

Não há valor retornado.

Exemplos

In the example below, the CCL parser is configured to support three CCL fields: ti, au and isbn. Each field is mapped to their BIB-1 equivalent. It is assumed that variable $id is the connection ID.

Exemplo #1 CCL configuration

<?php
$fields = array(
  "ti" => "1=4",
  "au"   => "1=1",
  "isbn" => "1=7"
);
yaz_ccl_conf($id, $fields);
?>

Veja Também

  • yaz_ccl_parse() - Invoke CCL Parser

yaz_addinfo
yaz_ccl_parse
YAZ Funções


Invoke CCL Parser

yaz_ccl_conf
yaz_close
YAZ Funções
PHP Manual

yaz_ccl_parse

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_ccl_parse — Invoke CCL Parser

Descrição

bool yaz_ccl_parse ( resource $id , string $query , array &$result )

This function invokes a CCL parser. It converts a given CCL FIND query to an RPN query which may be passed to the yaz_search() function to perform a search.

To define a set of valid CCL fields call yaz_ccl_conf() prior to this function.

Parâmetros

id

The connection resource returned by yaz_connect().

query

The CCL FIND query.

result

If the function was executed successfully, this will be an array containing the valid RPN query under the key rpn.

Upon failure, three indexes are set in this array to indicate the cause of failure:

  • errorcode - the CCL error code (integer)

  • errorstring - the CCL error string

  • errorpos - approximate position in query of failure (integer is character position)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 CCL Parsing

We will try to search using CCL. In the example below, $ccl is a CCL query.

<?php

yaz_ccl_conf($id, $fields);  // see example for yaz_ccl_conf
if (!yaz_ccl_parse($id, $ccl, &$cclresult)) {
    echo 'Error: ' . $cclresult["errorstring"];
} else {
    $rpn = $cclresult["rpn"];
    yaz_search($id, "rpn", $rpn);
}
?>
yaz_ccl_conf
yaz_close
YAZ Funções


Close YAZ connection

yaz_ccl_parse
yaz_connect
YAZ Funções
PHP Manual

yaz_close

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_close — Close YAZ connection

Descrição

bool yaz_close ( resource $id )

Closes the connection given by parameter id.

Nota:

This function will only close a non-persistent connection opened by setting the persistent option to FALSE with yaz_connect().

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • yaz_connect() - Prepares for a connection to a Z39.50 server

yaz_ccl_parse
yaz_connect
YAZ Funções


Prepares for a connection to a Z39.50 server

yaz_close
yaz_database
YAZ Funções
PHP Manual

yaz_connect

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_connect — Prepares for a connection to a Z39.50 server

Descrição

mixed yaz_connect ( string $zurl [, mixed $options ] )

This function returns a connection resource on success, zero on failure.

yaz_connect() prepares for a connection to a Z39.50 server. This function is non-blocking and does not attempt to establish a connection - it merely prepares a connect to be performed later when yaz_wait() is called.

Nota:

The » YAZ proxy is a freely available Z39.50 proxy.

Parâmetros

zurl

A string that takes the form host[:port][/database]. If port is omitted, port 210 is used. If database is omitted Default is used.

options

If given as a string, it is treated as the Z39.50 V2 authentication string (OpenAuth).

If given as an array, the contents of the array serves as options.

user

Username for authentication.

group

Group for authentication.

password

Password for authentication.

cookie

Cookie for session (YAZ proxy).

proxy

Proxy for connection (YAZ proxy).

persistent

A boolean. If TRUE the connection is persistent; If FALSE the connection is not persistent. By default connections are persistent.

Nota:

If you open a persistent connection, you won't be able to close it later with yaz_close().

piggyback

A boolean. If TRUE piggyback is enabled for searches; If FALSE piggyback is disabled. By default piggyback is enabled.

Enabling piggyback is more efficient and usually saves a network-round-trip for first time fetches of records. However, a few Z39.50 servers do not support piggyback or they ignore element set names. For those, piggyback should be disabled.

charset

A string that specifies character set to be used in Z39.50 language and character set negotiation. Use strings such as: ISO-8859-1, UTF-8, UTF-16.

Most Z39.50 servers do not support this feature (and thus, this is ignored). Many servers use the ISO-8859-1 encoding for queries and messages. MARC21/USMARC records are not affected by this setting.

preferredMessageSize

An integer that specifies the maximum byte size of all records to be returned by a target during retrieval. See the » Z39.50 standard for more information.

Nota:

This option is supported in PECL YAZ 1.0.5 or later.

maximumRecordSize

An integer that specifies the maximum byte size of a single record to be returned by a target during retrieval. This entity is referred to as Exceptional-record-size in the » Z39.50 standard.

Nota:

This option is supported in PECL YAZ 1.0.5 or later.

Valor Retornado

A connection resource on success, FALSE on error.

Histórico

Versão | Descrição
4.1.0 | The parameter options was added.

Veja Também

  • yaz_close() - Close YAZ connection

yaz_close
yaz_database
YAZ Funções


Specifies the databases within a session

yaz_connect
yaz_element
YAZ Funções
PHP Manual

yaz_database

(PHP 4 >= 4.0.6, PECL yaz >= 0.9.0)

yaz_database — Specifies the databases within a session

Descrição

bool yaz_database ( resource $id , string $databases )

This function allows you to change databases within a session by specifying one or more databases to be used in search, retrieval, etc. - overriding databases specified in call to yaz_connect().

Parâmetros

id

The connection resource returned by yaz_connect().

databases

A string containing one or more databases. Multiple databases are separated by a plus sign +.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

yaz_connect
yaz_element
YAZ Funções


Specifies Element-Set Name for retrieval

yaz_database
yaz_errno
YAZ Funções
PHP Manual

yaz_element

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_element — Specifies Element-Set Name for retrieval

Descrição

bool yaz_element ( resource $id , string $elementset )

This function sets the element set name for retrieval.

Call this function before yaz_search() or yaz_present() to specify the element set name for records to be retrieved.

Nota:

If this function appears to have no effect, see the description of the piggybacking option in yaz_connect().

Parâmetros

id

The connection resource returned by yaz_connect().

elementset

Most servers support F (for full records) and B (for brief records).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

yaz_database
yaz_errno
YAZ Funções


Returns error number

yaz_element
yaz_error
YAZ Funções
PHP Manual

yaz_errno

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_errno — Returns error number

Descrição

int yaz_errno ( resource $id )

Returns an error number for the server (last request) identified by id.

yaz_errno() should be called after network activity for each server - (after yaz_wait() returns) to determine the success or failure of the last operation (e.g. search).

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

Returns an error code. The error code is either a Z39.50 diagnostic code (usually a Bib-1 diagnostic) or a client side error code which is generated by PHP/YAZ itself, such as "Connect failed", "Init Rejected", etc.

Veja Também

  • yaz_error() - Returns error description
  • yaz_addinfo() - Returns additional error information

yaz_element
yaz_error
YAZ Funções


Returns error description

yaz_errno
yaz_es_result
YAZ Funções
PHP Manual

yaz_error

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_error — Returns error description

Descrição

string yaz_error ( resource $id )

yaz_error() returns an English text message corresponding to the last error number as returned by yaz_errno().

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

Returns an error text message for server (last request), identified by parameter id. An empty string is returned if the last operation was successful.

Veja Também

  • yaz_errno() - Returns error number
  • yaz_addinfo() - Returns additional error information

yaz_errno
yaz_es_result
YAZ Funções


Inspects Extended Services Result

yaz_error
yaz_es
YAZ Funções
PHP Manual

yaz_es_result

(PHP 4 >= 4.2.0, PECL yaz >= 0.9.0)

yaz_es_result — Inspects Extended Services Result

Descrição

array yaz_es_result ( resource $id )

This function inspects the last returned Extended Service result from a server. An Extended Service is initiated by either yaz_item_order() or yaz_es().

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

Returns array with element targetReference for the reference for the extended service operation (generated and returned from the server).

Veja Também

  • yaz_es() - Prepares for an Extended Service Request

yaz_error
yaz_es
YAZ Funções


Prepares for an Extended Service Request

yaz_es_result
yaz_get_option
YAZ Funções
PHP Manual

yaz_es

(PECL yaz >= 0.9.0)

yaz_es — Prepares for an Extended Service Request

Descrição

void yaz_es ( resource $id , string $type , array $args )

This function prepares for an Extended Service Request. Extended Services is family of various Z39.50 facilities, such as Record Update, Item Order, Database administration etc.

Nota:

Many Z39.50 Servers do not support Extended Services.

The yaz_es() creates an Extended Service Request packages and puts it into a queue of operations. Use yaz_wait() to send the request(s) to the server. After completion of yaz_wait() the result of the Extended Service operation should be expected with a call to yaz_es_result().

Parâmetros

id

The connection resource returned by yaz_connect().

type

A string which represents the type of the Extended Service: itemorder (Item Order), create (Create Database), drop (Drop Database), commit (Commit Operation), update (Update Record), xmlupdate (XML Update). Each type is specified in the following section.

args

An array with extended service options plus package specific options. The options are identical to those offered in the C API of ZOOM C. Refer to the ZOOM » Extended Services.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Record Update

<?php
$con = yaz_connect("myhost/database");
$args = array (
    "record" => "<gils><title>some title</title></gils>",
    "syntax" => "xml",
    "action" => "specialUpdate"
);
yaz_es($con, "update", $args);
yaz_wait();
$result = yaz_es_result($id);
?>

Veja Também

  • yaz_es_result() - Inspects Extended Services Result

yaz_es_result
yaz_get_option
YAZ Funções


Returns value of option for connection

yaz_es
yaz_hits
YAZ Funções
PHP Manual

yaz_get_option

(PECL yaz >= 0.9.0)

yaz_get_option — Returns value of option for connection

Descrição

string yaz_get_option ( resource $id , string $name )

Returns the value of the option specified with name.

Parâmetros

id

The connection resource returned by yaz_connect().

name

The option name.

Valor Retornado

Returns the value of the specified option or an empty string if the option wasn't set.

Veja Também

  • The description of yaz_set_option() - Sets one or more options for connection for available options

yaz_es
yaz_hits
YAZ Funções


Returns number of hits for last search

yaz_get_option
yaz_itemorder
YAZ Funções
PHP Manual

yaz_hits

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_hits — Returns number of hits for last search

Descrição

int yaz_hits ( resource $id [, array &$searchresult ] )

yaz_hits() returns the number of hits for the last search.

Parâmetros

id

The connection resource returned by yaz_connect().

searchresult

Result array for detailed search result information.

Valor Retornado

Returns the number of hits for the last search or 0 if no search was performed.

The search result array (if supplied) holds information that is returned by a Z39.50 server in the SearchResult-1 format part of a search response. The SearchResult-1 format can be used to obtain information about hit counts for various parts of the query (subquery). In particular, it is possible to obtain hit counts for the individual search terms in a query. Information for first subquery is in $array[0], second subquery in $array[1], and so forth.

searchresult members
Element | Description
id | Sub query ID2 (string)
count | Result count / hits (integer)
subquery.term | Sub query term (string)
interpretation.term | Interpretated sub query term (string)
recommendation.term | Recommended sub query term (string)

Nota:

The SearchResult facility requires PECL YAZ 1.0.5 or later and YAZ 2.1.9 or later.

Nota:

Very few Z39.50 implementations support the SearchResult facility.

yaz_get_option
yaz_itemorder
YAZ Funções


Prepares for Z39.50 Item Order with an ILL-Request package

yaz_hits
yaz_present
YAZ Funções
PHP Manual

yaz_itemorder

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_itemorder — Prepares for Z39.50 Item Order with an ILL-Request package

Descrição

void yaz_itemorder ( resource $id , array $args )

This function prepares for an Extended Services request using the Profile for the Use of Z39.50 Item Order Extended Service to Transport ILL (Profile/1). See » this and the » specification.

Parâmetros

id

The connection resource returned by yaz_connect().

args

Must be an associative array with information about the Item Order request to be sent. The key of the hash is the name of the corresponding ASN.1 tag path. For example, the ISBN below the Item-ID has the key item-id,ISBN.

The ILL-Request parameters are:

protocol-version-num
transaction-id,initial-requester-id,person-or-institution-symbol,person
transaction-id,initial-requester-id,person-or-institution-symbol,institution
transaction-id,initial-requester-id,name-of-person-or-institution,name-of-person
transaction-id,initial-requester-id,name-of-person-or-institution,name-of-institution
transaction-id,transaction-group-qualifier
transaction-id,transaction-qualifier
transaction-id,sub-transaction-qualifier
service-date-time,this,date
service-date-time,this,time
service-date-time,original,date
service-date-time,original,time
requester-id,person-or-institution-symbol,person
requester-id,person-or-institution-symbol,institution
requester-id,name-of-person-or-institution,name-of-person
requester-id,name-of-person-or-institution,name-of-institution
responder-id,person-or-institution-symbol,person
responder-id,person-or-institution-symbol,institution
responder-id,name-of-person-or-institution,name-of-person
responder-id,name-of-person-or-institution,name-of-institution
transaction-type
delivery-address,postal-address,name-of-person-or-institution,name-of-person
delivery-address,postal-address,name-of-person-or-institution,name-of-institution
delivery-address,postal-address,extended-postal-delivery-address
delivery-address,postal-address,street-and-number
delivery-address,postal-address,post-office-box
delivery-address,postal-address,city
delivery-address,postal-address,region
delivery-address,postal-address,country
delivery-address,postal-address,postal-code
delivery-address,electronic-address,telecom-service-identifier
delivery-address,electronic-address,telecom-service-addreess
billing-address,postal-address,name-of-person-or-institution,name-of-person
billing-address,postal-address,name-of-person-or-institution,name-of-institution
billing-address,postal-address,extended-postal-delivery-address
billing-address,postal-address,street-and-number
billing-address,postal-address,post-office-box
billing-address,postal-address,city
billing-address,postal-address,region
billing-address,postal-address,country
billing-address,postal-address,postal-code
billing-address,electronic-address,telecom-service-identifier
billing-address,electronic-address,telecom-service-addreess
ill-service-type
requester-optional-messages,can-send-RECEIVED
requester-optional-messages,can-send-RETURNED
requester-optional-messages,requester-SHIPPED
requester-optional-messages,requester-CHECKED-IN
search-type,level-of-service
search-type,need-before-date
search-type,expiry-date
search-type,expiry-flag
place-on-hold
client-id,client-name
client-id,client-status
client-id,client-identifier
item-id,item-type
item-id,call-number
item-id,author
item-id,title
item-id,sub-title
item-id,sponsoring-body
item-id,place-of-publication
item-id,publisher
item-id,series-title-number
item-id,volume-issue
item-id,edition
item-id,publication-date
item-id,publication-date-of-component
item-id,author-of-article
item-id,title-of-article
item-id,pagination
item-id,ISBN
item-id,ISSN
item-id,additional-no-letters
item-id,verification-reference-source
copyright-complicance
retry-flag
forward-flag
requester-note
forward-note

There are also a few parameters that are part of the Extended Services Request package and the ItemOrder package:

package-name
user-id
contact-name
contact-phone
contact-email
itemorder-item

Valor Retornado

Não há valor retornado.

yaz_hits
yaz_present
YAZ Funções


Prepares for retrieval (Z39.50 present)

yaz_itemorder
yaz_range
YAZ Funções
PHP Manual

yaz_present

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_present — Prepares for retrieval (Z39.50 present)

Descrição

bool yaz_present ( resource $id )

This function prepares for retrieval of records after a successful search.

The yaz_range() function should be called prior to this function to specify the range of records to be retrieved.

Parâmetros

id

The connection resource returned by yaz_connect().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

yaz_itemorder
yaz_range
YAZ Funções


Specifies a range of records to retrieve

yaz_present
yaz_record
YAZ Funções
PHP Manual

yaz_range

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_range — Specifies a range of records to retrieve

Descrição

void yaz_range ( resource $id , int $start , int $number )

Specifies a range of records to retrieve.

This function should be called before yaz_search() or yaz_present().

Parâmetros

id

The connection resource returned by yaz_connect().

start

Specifies the position of the first record to be retrieved. The records numbers goes from 1 to yaz_hits().

number

Specifies the number of records to be retrieved.

Valor Retornado

Não há valor retornado.

yaz_present
yaz_record
YAZ Funções


Returns a record

yaz_range
yaz_scan_result
YAZ Funções
PHP Manual

yaz_record

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_record — Returns a record

Descrição

string yaz_record ( resource $id , int $pos , string $type )

The yaz_record() function inspects a record in the current result set at the position specified by parameter pos.

Parâmetros

id

The connection resource returned by yaz_connect().

pos

The record position. Records positions in a result set are numbered 1, 2, ... $hits where $hits is the count returned by yaz_hits().

type

The type specifies the form of the returned record.

Nota:

It is the application which is responsible for actually ensuring that the records are returned from the Z39.50/SRW server in the proper format. The type given only specifies a conversion to take place on the client side (in PHP/YAZ).

Besides conversion of the transfer record to a string/array, PHP/YAZ it is also possible to perform a character set conversion of the record. Especially for USMARC/MARC21 that is recommended since these are typically returned in the character set MARC-8 that is not supported by browsers, etc. To specify a conversion, add ; charset=from, to where from is the original character set of the record and to is the resulting character set (as seen by PHP).

string

The record is returned as a string for simple display. In this mode, all MARC records are converted to a line-by-line format since ISO2709 is hardly readable. XML records and SUTRS are returned in their original format. GRS-1 are returned in a (ugly) line-by-line format.

This format is suitable if records are to be displayed in a quick way - for debugging - or because it is not feasible to perform proper display.

xml

The record is returned as an XML string if possible. In this mode, all MARC records are converted to » MARCXML. XML records and SUTRS are returned in their original format. GRS-1 is not supported.

This format is similar to string except that MARC records are converted to MARCXML

This format is suitable if records are processed by an XML parser or XSLT processor afterwards.

raw

The record is returned as a string in its original form. This type is suitable for MARC, XML and SUTRS. It does not work for GRS-1.

MARC records are returned as a ISO2709 string. XML and SUTRS are returned as strings.

syntax

The syntax of the record is returned as a string, i.e. USmarc, GRS-1, XML, etc.

database

The name of database associated with record at the position is returned as a string.

array

The record is returned as an array that reflects the GRS-1 structure. This type is suitable for MARC and GRS-1. XML, SUTRS are not supported and if the actual record is XML or SUTRS an empty string will be returned.

The array returned consists of a list corresponding to each leaf/internal node of GRS-1. Each list item consists a sub list with first element path and data (if data is available).

The path which is a string holds a list of each tree component (of the structured GRS-1 record) from root to leaf. Each component is a tag type, tag value pair of the form (type, value

String tags normally has a corresponding tag type 3. MARC can also be returned as an array (they are converted to GRS-1 internally).

Valor Retornado

Returns the record at position pos or an empty string if no record exists at the given position.

If no database record exists at the given position an empty string is returned.

Exemplos

Exemplo #1 Array for GRS-1 record

Consider this GRS-1 record:

(4,52)Robert M. Pirsig
(4,70)
      (4,90)
            (2,7)Transworld Publishers, ltd.
This record has two nodes at root level. First element at root level is (4,52) [tag type 4, tag value 52], and has data Robert M. Pirsig. Second element at root level (4,70) has a subtree with a single element (4,90). (4,90) has yet another sub tree (2,7) with data Transworld Publishers, ltd..

If this record is present at position $p, then

<?php

$ar = yaz_record($id, $p, "array");
print_r($ar);

?>
will output:
Array
(
    [0] => Array
        (
            [0] => (4,52)
            [1] => Robert M. Pirsig
        )
    [1] => Array
        (
            [0] => (4,70)
        )
    [2] => Array
        (
            [0] => (4,70)(4,90)
        )
    [3] => Array
        (
            [0] => (4,70)(4,90)(2,7)
            [1] => Transworld Publishers, ltd.
        )
)

Exemplo #2 Working with MARCXML

The following PHP snippet returns a MARC21/USMARC record as MARCXML. The original record is returned in marc-8 (unknown to most XML parsers), so we convert it to UTF-8 (which all XML parsers must support).

<?php
$rec = yaz_record($id, $p, "xml; charset=marc-8,utf-8");
?>

The record $rec can be processed with the Sablotron XSLT processor as follows:

<?php

$xslfile = 'display.xsl';
$processor = xslt_create();
$parms = array('/_xml' => $rec);
$res = xslt_process($processor, 'arg:/_xml', $xslfile, NULL, $parms);
xslt_free($processor);
$res = preg_replace("'</?html[^>]*>'", '', $res);
echo $res;

?>

For PHP 5 the XSL extension must be used instead of Sablotron XSLT.

yaz_range
yaz_scan_result
YAZ Funções


Returns Scan Response result

yaz_record
yaz_scan
YAZ Funções
PHP Manual

yaz_scan_result

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_scan_result — Returns Scan Response result

Descrição

array yaz_scan_result ( resource $id [, array &$result ] )

yaz_scan_result() returns terms and associated information as received from the server in the last performed yaz_scan().

Parâmetros

id

The connection resource returned by yaz_connect().

result

If given, this array will be modified to hold additional information taken from the Scan Response:

  • number - Number of entries returned

  • stepsize - Step size

  • position - Position of term

  • status - Scan status

Valor Retornado

Returns an array (0..n-1) where n is the number of terms returned. Each value is a pair where the first item is the term, and the second item is the result-count.

yaz_record
yaz_scan
YAZ Funções


Prepares for a scan

yaz_scan_result
yaz_schema
YAZ Funções
PHP Manual

yaz_scan

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_scan — Prepares for a scan

Descrição

void yaz_scan ( resource $id , string $type , string $startterm [, array $flags ] )

This function prepares for a Z39.50 Scan Request on the specified connection.

To actually transfer the Scan Request to the server and receive the Scan Response, yaz_wait() must be called. Upon completion of yaz_wait() call yaz_error() and yaz_scan_result() to handle the response.

Parâmetros

id

The connection resource returned by yaz_connect().

type

Currently only type rpn is supported.

startterm

Starting term point for the scan.

The form in which the starting term is specified is given by parameter type.

The syntax this parameter is similar to the RPN query as described in yaz_search(). It consists of zero or more @attr-operator specifications, then followed by exactly one token.

flags

This optional parameter specifies additional information to control the behaviour of the scan request. Three indexes are currently read from the flags array: number (number of terms requested), position (preferred position of term) and stepSize (preferred step size).

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 PHP function that scans titles

<?php
function scan_titles($id, $startterm)
{
  yaz_scan($id, "rpn", "@attr 1=4 " . $startterm);
  yaz_wait();
  $errno = yaz_errno($id);
  if ($errno == 0) {
    $ar = yaz_scan_result($id, $options);
    echo 'Scan ok; ';
    foreach ($options as $key => $val) {
      echo "$key = $val &nbsp;";
    }
    echo '<br /><table>';
    while (list($key, list($k, $term, $tcount)) = each($ar)) {
      if (empty($k)) continue;
      echo "<tr><td>$term</td><td>$tcount</td></tr>";
    }
    echo '</table>';
  } else {
    echo "Scan failed. Error: " . yaz_error($id) . "<br />";
  }
}
?>

yaz_scan_result
yaz_schema
YAZ Funções


Specifies schema for retrieval

yaz_scan
yaz_search
YAZ Funções
PHP Manual

yaz_schema

(PHP 4 >= 4.2.0, PECL yaz >= 0.9.0)

yaz_schema — Specifies schema for retrieval

Descrição

void yaz_schema ( resource $id , string $schema )

yaz_schema() specifies the schema for retrieval.

This function should be called before yaz_search() or yaz_present().

Parâmetros

id

The connection resource returned by yaz_connect().

schema

Must be specified as an OID (Object Identifier) in a raw dot-notation (like 1.2.840.10003.13.4) or as one of the known registered schemas: GILS-schema, Holdings, Zthes, ...

Valor Retornado

Não há valor retornado.

yaz_scan
yaz_search
YAZ Funções


Prepares for a search

yaz_schema
yaz_set_option
YAZ Funções
PHP Manual

yaz_search

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_search — Prepares for a search

Descrição

bool yaz_search ( resource $id , string $type , string $query )

yaz_search() prepares for a search on the given connection.

Like yaz_connect() this function is non-blocking and only prepares for a search to be executed later when yaz_wait() is called.

Parâmetros

id

The connection resource returned by yaz_connect().

type

This parameter represents the query type - only "rpn" is supported now in which case the third argument specifies a Type-1 query in prefix query notation.

query

The RPN query is a textual representation of the Type-1 query as defined by the Z39.50 standard. However, in the text representation as used by YAZ a prefix notation is used, that is the operator precedes the operands. The query string is a sequence of tokens where white space is ignored unless surrounded by double quotes. Tokens beginning with an at-character (@) are considered operators, otherwise they are treated as search terms.

RPN Operators
Construct | Description
@and query1 query2 | intersection of query1 and query2
@or query1 query2 | union of query1 and query2
@not query1 query2 | query1 and not query2
@set name | result set reference
@attrset set query | specifies attribute-set for query. This construction is only allowed once - in the beginning of the whole query
@attr [set] type=value query | applies attribute to query. The type and value are integers specifying the attribute-type and attribute-value respectively. The set, if given, specifies the attribute-set.

You can find information about attributes at the » Z39.50 Maintenance Agency site.

Nota:

If you would like to use a more friendly notation, use the CCL parser - functions yaz_ccl_conf() and yaz_ccl_parse().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Query Examples

You can search for simple terms, like this:

computer
which matches documents where "computer" occur. No attributes are specified.

The query

"knuth donald"
matches documents where "knuth donald" occur (provided that the server supports phrase search).

This query applies two attributes for the same phrase.

@attr 1=1003 @attr 4=1 "knuth donald"
First attribute is type 1 (Bib-1 use), attribute value is 1003 (Author). Second attribute has is type 4 (structure), value 1 (phrase), so this should match documents where Donald Knuth is author.

The query

@and @or a b @not @or c d e
would in infix notation look like (a or b) and ((c or d) not e).

Another, more complex, one:

@attrset gils @and @attr 1=4 art @attr 1=2000 company
The query as a whole uses the GILS attributeset. The query matches documents where art occur in the title (GILS,BIB-1) and in which company occur as Distributor (GILS).

yaz_schema
yaz_set_option
YAZ Funções


Sets one or more options for connection

yaz_search
yaz_sort
YAZ Funções
PHP Manual

yaz_set_option

(PECL yaz >= 0.9.0)

yaz_set_option — Sets one or more options for connection

Descrição

void yaz_set_option ( resource $id , string $name , string $value )
void yaz_set_option ( resource $id , array $options )

Sets one or more options on the given connection.

Parâmetros

id

The connection resource returned by yaz_connect().

name or options

May be either a string or an array.

If given as a string, this will be the name of the option to set. You'll need to give it's value.

If given as an array, this will be an associative array (option name => option value).

PHP/YAZ Connection Options
Name | Description
implementationName | implementation name of server
implementationVersion | implementation version of server
implementationId | implementation ID of server
schema | schema for retrieval. By default, no schema is used. Setting this option is equivalent to using function yaz_schema()
preferredRecordSyntax | record syntax for retrieval. By default, no syntax is used. Setting this option is equivalent to using function yaz_syntax()
start | offset for first record to be retrieved via yaz_search() or yaz_present(). First record is numbered has a start value of 0. Second record has start value 1. Setting this option in combination with option count has the same effect as calling yaz_range() except that records are numbered from 1 in yaz_range()
count | maximum number of records to be retrieved via yaz_search() or yaz_present().
elementSetName | element-set-name for retrieval. Setting this option is equivalent to calling yaz_element().
value

The new value of the option. Use this only if the previous argument is a string.

Valor Retornado

Não há valor retornado.

yaz_search
yaz_sort
YAZ Funções


Sets sorting criteria

yaz_set_option
yaz_syntax
YAZ Funções
PHP Manual

yaz_sort

(PHP 4 >= 4.0.7, PECL yaz >= 0.9.0)

yaz_sort — Sets sorting criteria

Descrição

void yaz_sort ( resource $id , string $criteria )

This function sets sorting criteria and enables Z39.50 Sort.

Call this function before yaz_search(). Using this function alone does not have any effect. When used in conjunction with yaz_search(), a Z39.50 Sort will be sent after a search response has been received and before any records are retrieved with Z39.50 Present (yaz_present().

Parâmetros

id

The connection resource returned by yaz_connect().

criteria

A string that takes the form field1 flags1 field2 flags2 where field1 specifies the primary attributes for sort, field2 seconds, etc..

The field specifies either a numerical attribute combinations consisting of type=value pairs separated by comma (e.g. 1=4,2=1) ; or the field may specify a plain string criteria (e.g. title. The flags is a sequence of the following characters which may not be separated by any white space.

Sort Flags
a

Sort ascending

d

Sort descending

i

Case insensitive sorting

s

Case sensitive sorting

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Sort Criterias

To sort on Bib1 attribute title, case insensitive, and ascending you would use the following sort criteria:

1=4 ia

If the secondary sorting criteria should be author, case sensitive and ascending you would use:

1=4 ia 1=1003 sa

yaz_set_option
yaz_syntax
YAZ Funções


Specifies the preferred record syntax for retrieval

yaz_sort
yaz_wait
YAZ Funções
PHP Manual

yaz_syntax

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_syntax — Specifies the preferred record syntax for retrieval

Descrição

void yaz_syntax ( resource $id , string $syntax )

yaz_syntax() specifies the preferred record syntax for retrieval

This function should be called before yaz_search() or yaz_present().

Parâmetros

id

The connection resource returned by yaz_connect().

syntax

The syntax must be specified as an OID (Object Identifier) in a raw dot-notation (like 1.2.840.10003.5.10) or as one of the known registered record syntaxes (sutrs, usmarc, grs1, xml, etc.).

Valor Retornado

Não há valor retornado.

yaz_sort
yaz_wait
YAZ Funções


Wait for Z39.50 requests to complete

yaz_syntax
YP/NIS
YAZ Funções
PHP Manual

yaz_wait

(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)

yaz_wait — Wait for Z39.50 requests to complete

Descrição

mixed yaz_wait ([ array &$options ] )

This function carries out networked (blocked) activity for outstanding
requests which have been prepared by the functions
yaz_connect(), yaz_search(),
yaz_present(), yaz_scan() and
yaz_itemorder().

yaz_wait() returns when all servers have either completed all requests or aborted (in case of errors).

Parâmetros

options

An associative array of options:

timeout

Sets timeout in seconds. If a server has not responded within the timeout it is considered dead and yaz_wait() returns. The default value for timeout is 15 seconds.

event

A boolean.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. In event mode, returns resource or FALSE on failure.

yaz_syntax
YP/NIS
YAZ Funções


YP/NIS

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • YP/NIS Funções
    • yp_all — Traverse the map and call a function on each entry
    • yp_cat — Return an array containing the entire map
    • yp_err_string — Returns the error string associated with the given error code
    • yp_errno — Returns the error code of the previous operation
    • yp_first — Returns the first key-value pair from the named map
    • yp_get_default_domain — Fetches the machine's default NIS domain
    • yp_master — Returns the machine name of the master NIS server for a map
    • yp_match — Returns the matched line
    • yp_next — Returns the next key-value pair in the named map
    • yp_order — Returns the order number for a map
yaz_wait
Introdução
Outros Serviços


Introdução

NIS (formerly called Yellow Pages) allows network management of important administrative files (e.g. the password file). For more information refer to the NIS manpage and » The Linux NIS(YP)/NYS/NIS+ HOWTO. There is also a book called » Managing NFS and NIS by Hal Stern.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Nota: Esta extensão não está disponível na plataforma Windows.

YP/NIS
Instalação/Configuração
YP/NIS


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
YP/NIS


Dependências

None besides functions from standard Unix libraries which are always available (either libc or libnsl, configure will detect which one to use).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/yp

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

YPERR_ACCESS (integer)
access violation (this has only been added recently and is only available from PECL SVN for now)
YPERR_BADARGS (integer)
The function arguments are bad
YPERR_BADDB (integer)
YP database is bad
YPERR_BUSY (integer)
Database busy
YPERR_DOMAIN (integer)
cannot bind to server in this domain
YPERR_KEY (integer)
no such key in map
YPERR_MAP (integer)
no such map in server's domain
YPERR_NODOM (integer)
Local domain name not set
YPERR_NOMORE (integer)
No more records in map database
YPERR_PMAP (integer)
Can't communicate with portmapper
YPERR_RESRC (integer)
resource allocation failure
YPERR_RPC (integer)
RPC failure - domain has been unbound
YPERR_YPBIND (integer)
Can't communicate with ypbind
YPERR_YPERR (integer)
internal yp server or client error
YPERR_YPSERV (integer)
Can't communicate with ypserv
YPERR_VERS (integer)
YP version mismatch
Tipos Resource
YP/NIS Funções
YP/NIS


YP/NIS Funções

Índice

  • yp_all — Traverse the map and call a function on each entry
  • yp_cat — Return an array containing the entire map
  • yp_err_string — Returns the error string associated with the given error code
  • yp_errno — Returns the error code of the previous operation
  • yp_first — Returns the first key-value pair from the named map
  • yp_get_default_domain — Fetches the machine's default NIS domain
  • yp_master — Returns the machine name of the master NIS server for a map
  • yp_match — Returns the matched line
  • yp_next — Returns the next key-value pair in the named map
  • yp_order — Returns the order number for a map
Constantes pré-definidas
yp_all
YP/NIS


Traverse the map and call a function on each entry

YP/NIS Funções
yp_cat
YP/NIS Funções
PHP Manual

yp_all

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5)

yp_all — Traverse the map and call a function on each entry

Descrição

void yp_all ( string $domain , string $map , string $callback )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

domain

The NIS domain name.

map

The NIS map.

callback

Valor Retornado

Não há valor retornado.

YP/NIS Funções
yp_cat
YP/NIS Funções


Return an array containing the entire map

yp_all
yp_err_string
YP/NIS Funções
PHP Manual

yp_cat

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5)

yp_cat — Return an array containing the entire map

Descrição

array yp_cat ( string $domain , string $map )

Returns all map entries.

Parâmetros

domain

The NIS domain name.

map

The NIS map.

Valor Retornado

Returns an array of all map entries, the maps key values as array indices and the maps entries as array data.

yp_all
yp_err_string
YP/NIS Funções


Returns the error string associated with the given error code

yp_cat
yp_errno
YP/NIS Funções
PHP Manual

yp_err_string

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5)

yp_err_string — Returns the error string associated with the given error code

Descrição

string yp_err_string ( int $errorcode )

Returns the error message associated with the given error code. Useful to indicate what exactly went wrong.

Parâmetros

errorcode

The error code.

Valor Retornado

Returns the error message, as a string.

Exemplos

Exemplo #1 Example for NIS errors

<?php
echo "Error: " . yp_err_string(yp_errno());
?>

Veja Também

  • yp_errno() - Returns the error code of the previous operation

yp_cat
yp_errno
YP/NIS Funções


Returns the error code of the previous operation

yp_err_string
yp_first
YP/NIS Funções
PHP Manual

yp_errno

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5)

yp_errno — Returns the error code of the previous operation

Descrição

int yp_errno ( void )

Returns the error code of the previous operation.

Valor Retornado

Returns one of the YPERR_XXX error constants.

Veja Também

  • yp_err_string() - Returns the error string associated with the given error code

yp_err_string
yp_first
YP/NIS Funções


Returns the first key-value pair from the named map

yp_errno
yp_get_default_domain
YP/NIS Funções
PHP Manual

yp_first

(PHP 4, PHP 5 <= 5.0.5)

yp_first — Returns the first key-value pair from the named map

Descrição

array yp_first ( string $domain , string $map )

Gets the first key-value pair from the named map in the named domain.

Parâmetros

domain

The NIS domain name.

map

The NIS map.

Valor Retornado

Returns the first key-value pair as an array on success, or FALSE on errors.

Exemplos

Exemplo #1 Example for the NIS first

<?php
$entry = yp_first($domain, "passwd.byname");

$key = key($entry);
$value = $entry[$key];

echo "First entry in this map has key " . $key . " and value " . $value;
?>

Veja Também

  • yp_next() - Returns the next key-value pair in the named map
  • yp_get_default_domain() - Fetches the machine's default NIS domain

yp_errno
yp_get_default_domain
YP/NIS Funções


Fetches the machine's default NIS domain

yp_first
yp_master
YP/NIS Funções
PHP Manual

yp_get_default_domain

(PHP 4, PHP 5 <= 5.0.5)

yp_get_default_domain — Fetches the machine's default NIS domain

Descrição

string yp_get_default_domain ( void )

Returns the default domain of the node. Can be used as the domain parameter for successive NIS calls.

A NIS domain can be described a group of NIS maps. Every host that needs to look up information binds itself to a certain domain. Refer to the documents mentioned at the beginning for more detailed information.

Valor Retornado

Returns the default domain of the node or FALSE. Can be used as the domain parameter for successive NIS calls.

Exemplos

Exemplo #1 Example for the default domain

<?php
$domain = yp_get_default_domain();
echo "Default NIS domain is: " . $domain;
?>

yp_first
yp_master
YP/NIS Funções


Returns the machine name of the master NIS server for a map

yp_get_default_domain
yp_match
YP/NIS Funções
PHP Manual

yp_master

(PHP 4, PHP 5 <= 5.0.5)

yp_master — Returns the machine name of the master NIS server for a map

Descrição

string yp_master ( string $domain , string $map )

Returns the machine name of the master NIS server for a map.

Parâmetros

domain

The NIS domain name.

map

The NIS map.

Valor Retornado

Exemplos

Exemplo #1 Example for the NIS master

<?php
$number = yp_master($domain, $mapname);
echo "Master for this map is: " . $master;
?>

Veja Também

  • yp_get_default_domain() - Fetches the machine's default NIS domain

yp_get_default_domain
yp_match
YP/NIS Funções


Returns the matched line

yp_master
yp_next
YP/NIS Funções
PHP Manual

yp_match

(PHP 4, PHP 5 <= 5.0.5)

yp_match — Returns the matched line

Descrição

string yp_match ( string $domain , string $map , string $key )

Returns the value associated with the passed key out of the specified map.

Parâmetros

domain

The NIS domain name.

map

The NIS map.

key

This key must be exact.

Valor Retornado

Returns the value, or FALSE on errors.

Exemplos

Exemplo #1 Example for NIS match

<?php
$entry = yp_match($domain, "passwd.byname", "joe");
echo "Matched entry is: " . $entry;
?>

O exemplo acima irá imprimir algo similar a:

joe:##joe:11111:100:Joe User:/home/j/joe:/usr/local/bin/bash

Veja Também

  • yp_get_default_domain() - Fetches the machine's default NIS domain

yp_master
yp_next
YP/NIS Funções


Returns the next key-value pair in the named map

yp_match
yp_order
YP/NIS Funções
PHP Manual

yp_next

(PHP 4, PHP 5 <= 5.0.5)

yp_next — Returns the next key-value pair in the named map

Descrição

array yp_next ( string $domain , string $map , string $key )

Returns the next key-value pair in the named map after the specified key.

Parâmetros

domain

map

key

Valor Retornado

Returns the next key-value pair as an array, or FALSE on errors.

Exemplos

Exemplo #1 Example for NIS next

<?php
$entry = yp_next($domain, "passwd.byname", "joe");

if (!$entry) {
    echo "No more entries found\n";
    echo "<!--" . yp_errno() . ": " . yp_err_string() . "-->";
}

$key = key($entry);

echo "The next entry after joe has key " . $key
      . " and value " . $entry[$key];
?>

Veja Também

  • yp_first() - Returns the first key-value pair from the named map
  • yp_get_default_domain() - Fetches the machine's default NIS domain

yp_match
yp_order
YP/NIS Funções


Returns the order number for a map

yp_next
Extensões de Search Engine
YP/NIS Funções
PHP Manual

yp_order

(PHP 4, PHP 5 <= 5.0.5)

yp_order — Returns the order number for a map

Descrição

int yp_order ( string $domain , string $map )

Gets the order number for a map.

Parâmetros

domain

map

Valor Retornado

Returns the order number for a map or FALSE on error.

Exemplos

Exemplo #1 Example for the NIS order

<?php
    $number = yp_order($domain, $mapname);
    echo "Order number for this map is: " . $number;
?>

Veja Também

  • yp_get_default_domain() - Fetches the machine's default NIS domain

yp_next
Extensões de Search Engine
YP/NIS Funções


Extensões de Search Engine

  • mnoGoSearch
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • mnoGoSearch Funções
  • Sphinx — Sphinx Client
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • SphinxClient — The SphinxClient class
  • Swish — Swish Indexing
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Swish Funções
  • Solr — Apache Solr
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Solr Funções
    • Exemplos
    • SolrUtils — The SolrUtils class
    • SolrInputDocument — The SolrInputDocument class
    • SolrDocument — The SolrDocument class
    • SolrDocumentField — The SolrDocumentField class
    • SolrObject — The SolrObject class
    • SolrClient — The SolrClient class
    • SolrResponse — The SolrResponse class
    • SolrQueryResponse — The SolrQueryResponse class
    • SolrUpdateResponse — The SolrUpdateResponse class
    • SolrPingResponse — The SolrPingResponse class
    • SolrGenericResponse — The SolrGenericResponse class
    • SolrParams — The SolrParams class
    • SolrModifiableParams — The SolrModifiableParams class
    • SolrQuery — The SolrQuery class
    • SolrException — The SolrException class
    • SolrClientException — The SolrClientException class
    • SolrIllegalArgumentException — The SolrIllegalArgumentException class
    • SolrIllegalOperationException — The SolrIllegalOperationException class
yp_order
mnoGoSearch
Referência das Funções


mnoGoSearch

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • mnoGoSearch Funções
    • udm_add_search_limit — Add various search limits
    • udm_alloc_agent_array — Allocate mnoGoSearch session
    • udm_alloc_agent — Allocate mnoGoSearch session
    • udm_api_version — Get mnoGoSearch API version
    • udm_cat_list — Get all the categories on the same level with the current one
    • udm_cat_path — Get the path to the current category
    • udm_check_charset — Check if the given charset is known to mnogosearch
    • udm_check_stored — Check connection to stored
    • udm_clear_search_limits — Clear all mnoGoSearch search restrictions
    • udm_close_stored — Close connection to stored
    • udm_crc32 — Return CRC32 checksum of given string
    • udm_errno — Get mnoGoSearch error number
    • udm_error — Get mnoGoSearch error message
    • udm_find — Perform search
    • udm_free_agent — Free mnoGoSearch session
    • udm_free_ispell_data — Free memory allocated for ispell data
    • udm_free_res — Free mnoGoSearch result
    • udm_get_doc_count — Get total number of documents in database
    • udm_get_res_field — Fetch a result field
    • udm_get_res_param — Get mnoGoSearch result parameters
    • udm_hash32 — Return Hash32 checksum of gived string
    • udm_load_ispell_data — Load ispell data
    • udm_open_stored — Open connection to stored
    • udm_set_agent_param — Set mnoGoSearch agent session parameters
Extensões de Search Engine
Introdução
Extensões de Search Engine


Introdução

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in an SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at » http://www.mnogosearch.org/.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Nota: Esta extensão não está disponível na plataforma Windows.

mnoGoSearch
Instalação/Configuração
mnoGoSearch


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
mnoGoSearch


Dependências

Download mnoGosearch from » http://www.mnogosearch.org/ and install it on your system. You need at least version 3.1.10 of mnoGoSearch installed to use these functions.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/mnogosearch.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota:

PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: --with-mnogosearch --with-mysql=/usr .

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

UDM_FIELD_URLID (integer)
UDM_FIELD_URL (integer)
UDM_FIELD_CONTENT (integer)
UDM_FIELD_TITLE (integer)
UDM_FIELD_KEYWORDS (integer)
UDM_FIELD_DESC (integer)
UDM_FIELD_DESCRIPTION (integer)
UDM_FIELD_TEXT (integer)
UDM_FIELD_SIZE (integer)
UDM_FIELD_RATING (integer)
UDM_FIELD_SCORE (integer)
UDM_FIELD_MODIFIED (integer)
UDM_FIELD_ORDER (integer)
UDM_FIELD_CRC (integer)
UDM_FIELD_CATEGORY (integer)
UDM_FIELD_LANG (integer)
UDM_FIELD_CHARSET (integer)
UDM_PARAM_PAGE_SIZE (integer)
UDM_PARAM_PAGE_NUM (integer)
UDM_PARAM_SEARCH_MODE (integer)
UDM_PARAM_CACHE_MODE (integer)
UDM_PARAM_TRACK_MODE (integer)
UDM_PARAM_PHRASE_MODE (integer)
UDM_PARAM_CHARSET (integer)
UDM_PARAM_LOCAL_CHARSET (integer)
UDM_PARAM_BROWSER_CHARSET (integer)
UDM_PARAM_STOPTABLE (integer)
UDM_PARAM_STOP_TABLE (integer)
UDM_PARAM_STOPFILE (integer)
UDM_PARAM_STOP_FILE (integer)
UDM_PARAM_WEIGHT_FACTOR (integer)
UDM_PARAM_WORD_MATCH (integer)
UDM_PARAM_MAX_WORD_LEN (integer)
UDM_PARAM_MAX_WORDLEN (integer)
UDM_PARAM_MIN_WORD_LEN (integer)
UDM_PARAM_MIN_WORDLEN (integer)
UDM_PARAM_ISPELL_PREFIXES (integer)
UDM_PARAM_ISPELL_PREFIX (integer)
UDM_PARAM_PREFIXES (integer)
UDM_PARAM_PREFIX (integer)
UDM_PARAM_CROSS_WORDS (integer)
UDM_PARAM_CROSSWORDS (integer)
UDM_PARAM_VARDIR (integer)
UDM_PARAM_DATADIR (integer)
UDM_PARAM_HLBEG (integer)
UDM_PARAM_HLEND (integer)
UDM_PARAM_SYNONYM (integer)
UDM_PARAM_SEARCHD (integer)
UDM_PARAM_QSTRING (integer)
UDM_PARAM_REMOTE_ADDR (integer)
UDM_LIMIT_CAT (integer)
UDM_LIMIT_URL (integer)
UDM_LIMIT_TAG (integer)
UDM_LIMIT_LANG (integer)
UDM_LIMIT_DATE (integer)
UDM_PARAM_FOUND (integer)
UDM_PARAM_NUM_ROWS (integer)
UDM_PARAM_WORDINFO (integer)
UDM_PARAM_WORD_INFO (integer)
UDM_PARAM_SEARCHTIME (integer)
UDM_PARAM_SEARCH_TIME (integer)
UDM_PARAM_FIRST_DOC (integer)
UDM_PARAM_LAST_DOC (integer)
UDM_MODE_ALL (integer)
UDM_MODE_ANY (integer)
UDM_MODE_BOOL (integer)
UDM_MODE_PHRASE (integer)
UDM_CACHE_ENABLED (integer)
UDM_CACHE_DISABLED (integer)
UDM_TRACK_ENABLED (integer)
UDM_TRACK_DISABLED (integer)
UDM_PHRASE_ENABLED (integer)
UDM_PHRASE_DISABLED (integer)
UDM_CROSS_WORDS_ENABLED (integer)
UDM_CROSSWORDS_ENABLED (integer)
UDM_CROSS_WORDS_DISABLED (integer)
UDM_CROSSWORDS_DISABLED (integer)
UDM_PREFIXES_ENABLED (integer)
UDM_PREFIX_ENABLED (integer)
UDM_ISPELL_PREFIXES_ENABLED (integer)
UDM_ISPELL_PREFIX_ENABLED (integer)
UDM_PREFIXES_DISABLED (integer)
UDM_PREFIX_DISABLED (integer)
UDM_ISPELL_PREFIXES_DISABLED (integer)
UDM_ISPELL_PREFIX_DISABLED (integer)
UDM_ISPELL_TYPE_AFFIX (integer)
UDM_ISPELL_TYPE_SPELL (integer)
UDM_ISPELL_TYPE_DB (integer)
UDM_ISPELL_TYPE_SERVER (integer)
UDM_MATCH_WORD (integer)
UDM_MATCH_BEGIN (integer)
UDM_MATCH_SUBSTR (integer)
UDM_MATCH_END (integer)
Tipos Resource
mnoGoSearch Funções
mnoGoSearch


mnoGoSearch Funções

Índice

  • udm_add_search_limit — Add various search limits
  • udm_alloc_agent_array — Allocate mnoGoSearch session
  • udm_alloc_agent — Allocate mnoGoSearch session
  • udm_api_version — Get mnoGoSearch API version
  • udm_cat_list — Get all the categories on the same level with the current one
  • udm_cat_path — Get the path to the current category
  • udm_check_charset — Check if the given charset is known to mnogosearch
  • udm_check_stored — Check connection to stored
  • udm_clear_search_limits — Clear all mnoGoSearch search restrictions
  • udm_close_stored — Close connection to stored
  • udm_crc32 — Return CRC32 checksum of given string
  • udm_errno — Get mnoGoSearch error number
  • udm_error — Get mnoGoSearch error message
  • udm_find — Perform search
  • udm_free_agent — Free mnoGoSearch session
  • udm_free_ispell_data — Free memory allocated for ispell data
  • udm_free_res — Free mnoGoSearch result
  • udm_get_doc_count — Get total number of documents in database
  • udm_get_res_field — Fetch a result field
  • udm_get_res_param — Get mnoGoSearch result parameters
  • udm_hash32 — Return Hash32 checksum of gived string
  • udm_load_ispell_data — Load ispell data
  • udm_open_stored — Open connection to stored
  • udm_set_agent_param — Set mnoGoSearch agent session parameters
Constantes pré-definidas
udm_add_search_limit
mnoGoSearch


Add various search limits

mnoGoSearch Funções
udm_alloc_agent_array
mnoGoSearch Funções
PHP Manual

udm_add_search_limit

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_add_search_limit — Add various search limits

Descrição

bool udm_add_search_limit ( resource $agent , int $var , string $val )

udm_add_search_limit() adds search restrictions.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

var

Defines the parameter, indicating limits. Possible var values:

  • UDM_LIMIT_URL - defines document URL limitations to limit the search through subsection of the database. It supports SQL % and _ LIKE wildcards, where % matches any number of characters, even zero characters, and _ matches exactly one character. E.g. http://www.example.___/catalog may stand for http://www.example.com/catalog and http://www.example.net/catalog.
  • UDM_LIMIT_TAG - defines site TAG limitations. In indexer-conf you can assign specific TAGs to various sites and parts of a site. Tags in mnoGoSearch 3.1.x are lines, that may contain metasymbols % and _. Metasymbols allow searching among groups of tags. E.g. there are links with tags ABCD and ABCE, and search restriction is by ABC_ - the search will be made among both of the tags.
  • UDM_LIMIT_LANG - defines document language limitations.
  • UDM_LIMIT_CAT - defines document category limitations. Categories are similar to tag feature, but nested. So you can have one category inside another and so on. You have to use two characters for each level. Use a hex number going from 0-F or a 36 base number going from 0-Z. Therefore a top-level category like 'Auto' would be 01. If it has a subcategory like 'Ford', then it would be 01 (the parent category) and then 'Ford' which we will give 01. Put those together and you get 0101. If 'Auto' had another subcategory named 'VW', then it's id would be 01 because it belongs to the 'Ford' category and then 02 because it's the next category. So it's id would be 0102. If VW had a sub category called 'Engine' then it's id would start at 01 again and it would get the 'VW' id 02 and 'Auto' id of 01, making it 010201. If you want to search for sites under that category then you pass it cat=010201 in the URL.

  • UDM_LIMIT_DATE - defines limitation by date the document was modified.

    Format of parameter value: a string with first character < or >, then with no space - date in unixtime format, for example:

    <?php
    udm_add_search_limit    ($udm, UDM_LIMIT_DATE, "&lt;908012006");
    ?>

    If > character is used, then the search will be restricted to those documents having a modification date greater than entered, if <, then smaller.

val

Defines the value of the current parameter.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

mnoGoSearch Funções
udm_alloc_agent_array
mnoGoSearch Funções


Allocate mnoGoSearch session

udm_add_search_limit
udm_alloc_agent
mnoGoSearch Funções
PHP Manual

udm_alloc_agent_array

(PHP 4 >= 4.3.3, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_alloc_agent_array — Allocate mnoGoSearch session

Descrição

resource udm_alloc_agent_array ( array $databases )

udm_alloc_agent_array() will create an agent with multiple database connections.

Parâmetros

databases

The array databases must contain one database URL per element, analog to the first parameter of udm_alloc_agent().

Valor Retornado

Returns a resource link identifier on success or FALSE on failure.

Veja Também

  • udm_alloc_agent() - Allocate mnoGoSearch session

udm_add_search_limit
udm_alloc_agent
mnoGoSearch Funções


Allocate mnoGoSearch session

udm_alloc_agent_array
udm_api_version
mnoGoSearch Funções
PHP Manual

udm_alloc_agent

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_alloc_agent — Allocate mnoGoSearch session

Descrição

resource udm_alloc_agent ( string $dbaddr [, string $dbmode ] )

Allocate a mnoGoSearch session.

Parâmetros

dbaddr

dbaddr - URL-style database description, with options (type, host, database name, port, user and password) to connect to SQL database. Do not matter for built-in text files support. Format for dbaddr: DBType:[//[DBUser[:DBPass]@]DBHost[:DBPort]]/DBName/. Currently supported DBType values are: mysql, pgsql, msql, solid, mssql, oracle, and ibase. Actually, it does not matter for native libraries support, but ODBC users should specify one of the supported values. If your database type is not supported, you may use unknown instead.

dbmode

dbmode - You may select the SQL database mode of words storage. Possible values of dbmode are: single, multi, crc, or crc-multi. When single is specified, all words are stored in the same table. If multi is selected, words will be located in different tables depending of their lengths. "multi" mode is usually faster, but requires more tables in the database. If "crc" mode is selected, mnoGoSearch will store 32 bit integer word IDs calculated by CRC32 algorithm instead of words. This mode requires less disk space and it is faster comparing with "single" and "multi" modes. crc-multi uses the same storage structure with the "crc" mode, but also stores words in different tables depending on words lengths like in "multi" mode.

Nota:

dbaddr and dbmode must match those used during indexing.

Valor Retornado

Returns a mnogosearch agent identifier on success, FALSE on failure. This function creates a session with database parameters.

Notas

Nota:

In fact this function does not open a connection to the database and thus does not check the entered login and password. Establishing a connection to the database and login/password verification is done by udm_find().

udm_alloc_agent_array
udm_api_version
mnoGoSearch Funções


Get mnoGoSearch API version

udm_alloc_agent
udm_cat_list
mnoGoSearch Funções
PHP Manual

udm_api_version

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_api_version — Get mnoGoSearch API version

Descrição

int udm_api_version ( void )

Gets the mnoGoSearch API version.

This function allows the user to identify which API functions are available, e.g. udm_get_doc_count() function is only available in mnoGoSearch 3.1.11 or later.

Valor Retornado

udm_api_version() returns the mnoGoSearch API version number. E.g. if mnoGoSearch 3.1.10 API is used, this function will return 30110.

Exemplos

Exemplo #1 udm_api_version() example

<?php
if (udm_api_version() >= 30111) {
    echo  "Total number of URLs in database: " . udm_get_doc_count($udm) . "<br />\n";
}
?>

udm_alloc_agent
udm_cat_list
mnoGoSearch Funções


Get all the categories on the same level with the current one

udm_api_version
udm_cat_path
mnoGoSearch Funções
PHP Manual

udm_cat_list

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_cat_list — Get all the categories on the same level with the current one

Descrição

array udm_cat_list ( resource $agent , string $category )

Gets all the categories on the same level with the current one.

The function can be useful for developing categories tree browser.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

category

Valor Retornado

Returns an array listing all categories of the same level as the current category in the categories tree.

The returned array consists of pairs. Elements with even index numbers contain the category paths, odd elements contain the corresponding category names.

$array[0] will contain '020300'
  $array[1] will contain 'Audi'
  $array[2] will contain '020301'
  $array[3] will contain 'BMW'
  $array[4] will contain '020302'
  $array[5] will contain 'Opel'
  ...
 etc.

Exemplos

Following is an example of displaying links of the current level in format:

Audi
  BMW
  Opel
  ...

Exemplo #1 udm_cat_list()example

<?php
 $cat_list_arr = udm_cat_list($udm_agent, $cat);
 $cat_list = '';
 for ($i=0; $i<count($cat_list_arr); $i+=2) {
    $path = $cat_list_arr[$i];
    $name = $cat_list_arr[$i+1];
    $cat_list .= "<a href=\"$_SERVER[PHP_SELF]?cat=$path\">$name</a><br />";
 }
?>

Veja Também

  • udm_cat_path() - Get the path to the current category

udm_api_version
udm_cat_path
mnoGoSearch Funções


Get the path to the current category

udm_cat_list
udm_check_charset
mnoGoSearch Funções
PHP Manual

udm_cat_path

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_cat_path — Get the path to the current category

Descrição

array udm_cat_path ( resource $agent , string $category )

Returns an array describing the path in the categories tree from the tree root to the current one, specified by category.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

category

Valor Retornado

The returned array consists of pairs. Elements with even index numbers contain the category paths, odd elements contain the corresponding category names.

For example, the call $array=udm_cat_path($agent, '02031D'); may return the following array:

 $array[0] will contain ''
 $array[1] will contain 'Root'
 $array[2] will contain '02'
 $array[3] will contain 'Sport'
 $array[4] will contain '0203'
 $array[5] will contain 'Auto'
 $array[4] will contain '02031D'
 $array[5] will contain 'Ferrari'

Exemplos

Exemplo #1 Specifying path to the current category in the following format: '> Root > Sport > Auto > Ferrari'

<?php
  $cat_path_arr = udm_cat_path($udm_agent, $cat);
  $cat_path = '';
  for ($i=0; $i<count($cat_path_arr); $i+=2) {
    $path = $cat_path_arr[$i];
    $name = $cat_path_arr[$i+1];
    $cat_path .= " > <a href=\"$_SERVER[PHP_SELF]?cat=$path\">$name</a> ";
  }
?>

Veja Também

  • udm_cat_list() - Get all the categories on the same level with the current one

udm_cat_list
udm_check_charset
mnoGoSearch Funções


Check if the given charset is known to mnogosearch

udm_cat_path
udm_check_stored
mnoGoSearch Funções
PHP Manual

udm_check_charset

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_check_charset — Check if the given charset is known to mnogosearch

Descrição

bool udm_check_charset ( resource $agent , string $charset )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

udm_cat_path
udm_check_stored
mnoGoSearch Funções


Check connection to stored

udm_check_charset
udm_clear_search_limits
mnoGoSearch Funções
PHP Manual

udm_check_stored

(PHP 4 >= 4.2.0)

udm_check_stored — Check connection to stored

Descrição

int udm_check_stored ( resource $agent , int $link , string $doc_id )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

udm_check_charset
udm_clear_search_limits
mnoGoSearch Funções


Clear all mnoGoSearch search restrictions

udm_check_stored
udm_close_stored
mnoGoSearch Funções
PHP Manual

udm_clear_search_limits

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_clear_search_limits — Clear all mnoGoSearch search restrictions

Descrição

bool udm_clear_search_limits ( resource $agent )

udm_clear_search_limits() resets defined search limitations.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

Returns TRUE.

Veja Também

  • udm_add_search_limit() - Add various search limits

udm_check_stored
udm_close_stored
mnoGoSearch Funções


Close connection to stored

udm_clear_search_limits
udm_crc32
mnoGoSearch Funções
PHP Manual

udm_close_stored

(PHP 4 >= 4.2.0)

udm_close_stored — Close connection to stored

Descrição

int udm_close_stored ( resource $agent , int $link )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

udm_clear_search_limits
udm_crc32
mnoGoSearch Funções


Return CRC32 checksum of given string

udm_close_stored
udm_errno
mnoGoSearch Funções
PHP Manual

udm_crc32

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_crc32 — Return CRC32 checksum of given string

Descrição

int udm_crc32 ( resource $agent , string $str )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

udm_close_stored
udm_errno
mnoGoSearch Funções


Get mnoGoSearch error number

udm_crc32
udm_error
mnoGoSearch Funções
PHP Manual

udm_errno

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_errno — Get mnoGoSearch error number

Descrição

int udm_errno ( resource $agent )

Receiving numeric agent error code.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

Returns the mnoGoSearch error number, zero if no error.

udm_crc32
udm_error
mnoGoSearch Funções


Get mnoGoSearch error message

udm_errno
udm_find
mnoGoSearch Funções
PHP Manual

udm_error

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_error — Get mnoGoSearch error message

Descrição

string udm_error ( resource $agent )

Gets the agent error message.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

udm_error() returns mnoGoSearch error message, empty string if no error.

udm_errno
udm_find
mnoGoSearch Funções


Perform search

udm_error
udm_free_agent
mnoGoSearch Funções
PHP Manual

udm_find

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_find — Perform search

Descrição

resource udm_find ( resource $agent , string $query )

Performs a search.

The search itself. The first argument - session, the next one - query itself. To find something just type words you want to find and press SUBMIT button. For example, "mysql odbc". You should not use quotes " in query, they are written here only to divide a query from other text. mnoGoSearch will find all documents that contain word "mysql" and/or word "odbc". Best documents having bigger weights will be displayed first. If you use search mode ALL, search will return documents that contain both (or more) words you entered. In case you use mode ANY, the search will return list of documents that contain any of the words you entered. If you want more advanced results you may use query language. You should select "bool" match mode in the search from.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

query

mnoGoSearch understands the following boolean operators:

& - logical AND. For example, "mysql & odbc". mnoGoSearch will find any URLs that contain both "mysql" and "odbc".

| - logical OR. For example "mysql|odbc". mnoGoSearch will find any URLs, that contain word "mysql" or word "odbc".

~ - logical NOT. For example "mysql & ~odbc". mnoGoSearch will find URLs that contain word "mysql" and do not contain word "odbc" at the same time. Note that ~ just excludes given word from results. Query "~odbc" will find nothing!

() - group command to compose more complex queries. For example "(mysql | msql) & ~postgres". Query language is simple and powerful at the same time. Just consider query as usual boolean expression.

Valor Retornado

Returns a result link identifier on success or FALSE on failure.

udm_error
udm_free_agent
mnoGoSearch Funções


Free mnoGoSearch session

udm_find
udm_free_ispell_data
mnoGoSearch Funções
PHP Manual

udm_free_agent

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_free_agent — Free mnoGoSearch session

Descrição

int udm_free_agent ( resource $agent )

Freeing up memory allocated for agent session.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

udm_find
udm_free_ispell_data
mnoGoSearch Funções


Free memory allocated for ispell data

udm_free_agent
udm_free_res
mnoGoSearch Funções
PHP Manual

udm_free_ispell_data

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_free_ispell_data — Free memory allocated for ispell data

Descrição

bool udm_free_ispell_data ( int $agent )

Frees the memory allocated for ispell data.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

udm_free_ispell_data() always returns TRUE.

Notas

Nota:

This function is supported beginning from version 3.1.12 of mnoGoSearch and it does not do anything in previous versions.

udm_free_agent
udm_free_res
mnoGoSearch Funções


Free mnoGoSearch result

udm_free_ispell_data
udm_get_doc_count
mnoGoSearch Funções
PHP Manual

udm_free_res

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_free_res — Free mnoGoSearch result

Descrição

bool udm_free_res ( resource $res )

Freeing up memory allocated for results.

Parâmetros

res

A link to a result identifier, received after call to udm_find().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

udm_free_ispell_data
udm_get_doc_count
mnoGoSearch Funções


Get total number of documents in database

udm_free_res
udm_get_res_field
mnoGoSearch Funções
PHP Manual

udm_get_doc_count

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_get_doc_count — Get total number of documents in database

Descrição

int udm_get_doc_count ( resource $agent )

udm_get_doc_count() returns the number of documents in the database.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

Valor Retornado

Returns the number of documents.

Notas

Nota:

This function is supported only in mnoGoSearch 3.1.11 or later.

udm_free_res
udm_get_res_field
mnoGoSearch Funções


Fetch a result field

udm_get_doc_count
udm_get_res_param
mnoGoSearch Funções
PHP Manual

udm_get_res_field

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_get_res_field — Fetch a result field

Descrição

string udm_get_res_field ( resource $res , int $row , int $field )

Fetch a mnoGoSearch result field.

Parâmetros

res

res - a link to result identifier, received after call to udm_find().

row

row - the number of the link on the current page. May have values from 0 to UDM_PARAM_NUM_ROWS-1.

field

field - field identifier, may have the following values:

  • UDM_FIELD_URL - document URL field
  • UDM_FIELD_CONTENT - document Content-type field (for example, text/html).
  • UDM_FIELD_CATEGORY - document category field. Use udm_cat_path() to get full path to current category from the categories tree root. (This parameter is available only in PHP 4.0.6 or later).
  • UDM_FIELD_TITLE - document title field.
  • UDM_FIELD_KEYWORDS - document keywords field (from META KEYWORDS tag).
  • UDM_FIELD_DESC - document description field (from META DESCRIPTION tag).
  • UDM_FIELD_TEXT - document body text (the first couple of lines to give an idea of what the document is about).
  • UDM_FIELD_SIZE - document size.
  • UDM_FIELD_URLID - unique URL ID of the link.
  • UDM_FIELD_RATING - page rating (as calculated by mnoGoSearch).
  • UDM_FIELD_MODIFIED - last-modified field in unixtime format.
  • UDM_FIELD_ORDER - the number of the current document in set of found documents.
  • UDM_FIELD_CRC - document CRC.

Valor Retornado

udm_get_res_field() returns result field value on success, FALSE on error.

udm_get_doc_count
udm_get_res_param
mnoGoSearch Funções


Get mnoGoSearch result parameters

udm_get_res_field
udm_hash32
mnoGoSearch Funções
PHP Manual

udm_get_res_param

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_get_res_param — Get mnoGoSearch result parameters

Descrição

string udm_get_res_param ( resource $res , int $param )

Gets the mnoGoSearch result parameters.

Parâmetros

res

res - a link to result identifier, received after call to udm_find().

param

param - parameter identifier, may have the following values:

  • UDM_PARAM_NUM_ROWS - number of received found links on the current page. It is equal to UDM_PARAM_PAGE_SIZE for all search pages, on the last page - the rest of links.
  • UDM_PARAM_FOUND - total number of results matching the query.
  • UDM_PARAM_WORDINFO - information on the words found. E.g. search for "a good book" will return "a: stopword, good:5637, book: 120"
  • UDM_PARAM_SEARCHTIME - search time in seconds.
  • UDM_PARAM_FIRST_DOC - the number of the first document displayed on current page.
  • UDM_PARAM_LAST_DOC - the number of the last document displayed on current page.

Valor Retornado

udm_get_res_param() returns result parameter value on success, FALSE on error.

udm_get_res_field
udm_hash32
mnoGoSearch Funções


Return Hash32 checksum of gived string

udm_get_res_param
udm_load_ispell_data
mnoGoSearch Funções
PHP Manual

udm_hash32

(PHP 4 >= 4.3.3, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_hash32 — Return Hash32 checksum of gived string

Descrição

int udm_hash32 ( resource $agent , string $str )

udm_hash32() will take a string str and return a quite unique 32-bit hash number from it.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

str

The input string.

Valor Retornado

Returns a 32-bit hash number.

Veja Também

  • udm_alloc_agent() - Allocate mnoGoSearch session

udm_get_res_param
udm_load_ispell_data
mnoGoSearch Funções


Load ispell data

udm_hash32
udm_open_stored
mnoGoSearch Funções
PHP Manual

udm_load_ispell_data

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_load_ispell_data — Load ispell data

Descrição

bool udm_load_ispell_data ( resource $agent , int $var , string $val1 , string $val2 , int $flag )

udm_load_ispell_data() loads ispell data.

After using this function to free memory allocated for ispell data, please use udm_free_ispell_data(), even if you use UDM_ISPELL_TYPE_SERVER mode.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

var

Indicates the source for ispell data. May have the following values:

  • UDM_ISPELL_TYPE_DB - indicates that ispell data should be loaded from SQL. In this case, parameters val1 and val2 are ignored and should be left blank. flag should be equal to 1.

    Nota:

    flag indicates that after loading ispell data from defined source it should be sorted (it is necessary for correct functioning of ispell). In case of loading ispell data from files there may be several calls to udm_load_ispell_data(), and there is no sense to sort data after every call, but only after the last one. Since in db mode all the data is loaded by one call, this parameter should have the value 1. In this mode in case of error, e.g. if ispell tables are absent, the function will return FALSE and code and error message will be accessible through udm_error() and udm_errno().

  • UDM_ISPELL_TYPE_AFFIX - indicates that ispell data should be loaded from file and initiates loading affixes file. In this case val1 defines double letter language code for which affixes are loaded, and val2 - file path. Please note, that if a relative path entered, the module looks for the file not in UDM_CONF_DIR, but in relation to current path, i.e. to the path where the script is executed. In case of error in this mode, e.g. if file is absent, the function will return FALSE, and an error message will be displayed. Error message text cannot be accessed through udm_error() and udm_errno(), since those functions can only return messages associated with SQL. Please, see flag parameter description in UDM_ISPELL_TYPE_DB.

    Exemplo #1 udm_load_ispell_data() example

    <?php
    if ((! udm_load_ispell_data($udm, UDM_ISPELL_TYPE_AFFIX, 'en', '/opt/ispell/en.aff', 0)) ||
        (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_AFFIX, 'ru', '/opt/ispell/ru.aff', 0)) ||
        (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_SPELL, 'en', '/opt/ispell/en.dict', 0)) ||
        (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_SPELL, 'ru', '/opt/ispell/ru.dict', 1))) {
        exit;
    }
    ?>

    Nota:

    flag is equal to 1 only in the last call.

  • UDM_ISPELL_TYPE_SPELL - indicates that ispell data should be loaded from file and initiates loading of ispell dictionary file. In this case val1 defines double letter language code for which affixes are loaded, and val2 - file path. Please note, that if a relative path entered, the module looks for the file not in UDM_CONF_DIR, but in relation to current path, i.e. to the path where the script is executed. In case of error in this mode, e.g. if file is absent, the function will return FALSE, and an error message will be displayed. Error message text cannot be accessed through udm_error() and udm_errno(), since those functions can only return messages associated with SQL. Please, see flag parameter description in UDM_ISPELL_TYPE_DB.

    <?php
    if ((! udm_load_ispell_data($udm, UDM_ISPELL_TYPE_AFFIX, 'en', '/opt/ispell/en.aff', 0)) ||
       (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_AFFIX, 'ru', '/opt/ispell/ru.aff', 0)) ||
       (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_SPELL, 'en', '/opt/ispell/en.dict', 0)) ||
       (!     udm_load_ispell_data($udm, UDM_ISPELL_TYPE_SPELL, 'ru', '/opt/ispell/ru.dict', 1))) {
     exit;
     }
    ?>

    Nota:

    flag is equal to 1 only in the last call.

  • UDM_ISPELL_TYPE_SERVER - enables spell server support. val1 parameter indicates address of the host running spell server. val2 ` is not used yet, but in future releases it is going to indicate number of port used by spell server. flag parameter in this case is not needed since ispell data is stored on spellserver already sorted.

    Spelld server reads spell-data from a separate configuration file (/usr/local/mnogosearch/etc/spelld.conf by default), sorts it and stores in memory. With clients server communicates in two ways: to indexer all the data is transferred (so that indexer starts faster), from search.cgi server receives word to normalize and then passes over to client (search.cgi) list of normalized word forms. This allows fastest, compared to db and text modes processing of search queries (by omitting loading and sorting all the spell data).

    udm_load_ispell_data() function in UDM_ISPELL_TYPE_SERVER mode does not actually load ispell data, but only defines server address. In fact, server is automatically used by udm_find() function when performing search. In case of errors, e.g. if spellserver is not running or invalid host indicated, there are no messages returned and ispell conversion does not work.

    Nota:

    This function is available in mnoGoSearch 3.1.12 or later.

    Example:
    <?php
    if (!udm_load_ispell_data($udm, UDM_ISPELL_TYPE_SERVER, '', '', 1)) {
        echo     "Error loading ispell data from server<br />\n";
        exit;
    }
    ?>

The fastest mode is UDM_ISPELL_TYPE_SERVER. UDM_ISPELL_TYPE_TEXT is slower and UDM_ISPELL_TYPE_DB is the slowest. The above pattern is TRUE for mnoGoSearch 3.1.10 - 3.1.11. It is planned to speed up DB mode in future versions and it is going to be faster than TEXT mode.

val1

val2

flag

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #2 udm_load_ispell_data() example

<?php
if (! udm_load_ispell_data($udm, UDM_ISPELL_TYPE_DB, '', '', 1)) {
  printf("Error #%d: '%s'\n", udm_errno($udm), udm_error($udm));
  exit;
}
?>

udm_hash32
udm_open_stored
mnoGoSearch Funções


Open connection to stored

udm_load_ispell_data
udm_set_agent_param
mnoGoSearch Funções
PHP Manual

udm_open_stored

(PHP 4 >= 4.2.0)

udm_open_stored — Open connection to stored

Descrição

int udm_open_stored ( resource $agent , string $storedaddr )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

udm_load_ispell_data
udm_set_agent_param
mnoGoSearch Funções


Set mnoGoSearch agent session parameters

udm_open_stored
Sphinx
mnoGoSearch Funções
PHP Manual

udm_set_agent_param

(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)

udm_set_agent_param — Set mnoGoSearch agent session parameters

Descrição

bool udm_set_agent_param ( resource $agent , int $var , string $val )

Defines mnoGoSearch session parameters.

Parâmetros

agent

A link to Agent, received after call to udm_alloc_agent().

var

The following parameters and their values are available:

  • UDM_PARAM_PAGE_NUM - used to choose search results page number (results are returned by pages beginning from 0, with UDM_PARAM_PAGE_SIZE results per page).
  • UDM_PARAM_PAGE_SIZE - number of search results displayed on one page.
  • UDM_PARAM_SEARCH_MODE - search mode. The following values available: UDM_MODE_ALL - search for all words; UDM_MODE_ANY - search for any word; UDM_MODE_PHRASE - phrase search; UDM_MODE_BOOL - boolean search. See udm_find() for details on boolean search.
  • UDM_PARAM_CACHE_MODE - turns on or off search result cache mode. When enabled, the search engine will store search results to disk. In case a similar search is performed later, the engine will take results from the cache for faster performance. Available values: UDM_CACHE_ENABLED, UDM_CACHE_DISABLED.
  • UDM_PARAM_TRACK_MODE - turns on or off trackquery mode. Since version 3.1.2 mnoGoSearch has a query tracking support. Note that tracking is implemented in SQL version only and not available in built-in database. To use tracking, you have to create tables for tracking support. For MySQL, use create/mysql/track.txt. When doing a search, front-end uses those tables to store query words, a number of found documents and current Unix timestamp in seconds. Available values: UDM_TRACK_ENABLED, UDM_TRACK_DISABLED.
  • UDM_PARAM_PHRASE_MODE - defines whether index database using phrases ("phrase" parameter in indexer.conf). Possible values: UDM_PHRASE_ENABLED and UDM_PHRASE_DISABLED. Please note, that if phrase search is enabled (UDM_PHRASE_ENABLED), it is still possible to do search in any mode (ANY, ALL, BOOL or PHRASE). In 3.1.10 version of mnoGoSearch phrase search is supported only in sql and built-in database modes, while beginning with 3.1.11 phrases are supported in cachemode as well. Examples of phrase search: "Arizona desert" - This query returns all indexed documents that contain "Arizona desert" as a phrase. Notice that you need to put double quotes around the phrase
  • UDM_PARAM_CHARSET - defines local charset. Available values: set of charsets supported by mnoGoSearch, e.g. koi8-r, cp1251, ...
  • UDM_PARAM_STOPFILE - Defines name and path to stopwords file. (There is a small difference with mnoGoSearch - while in mnoGoSearch if relative path or no path entered, it looks for this file in relation to UDM_CONF_DIR, the module looks for the file in relation to current path, i.e. to the path where the PHP script is executed.)
  • UDM_PARAM_STOPTABLE - Load stop words from the given SQL table. You may use several StopwordTable commands. This command has no effect when compiled without SQL database support.
  • UDM_PARAM_WEIGHT_FACTOR - represents weight factors for specific document parts. Currently body, title, keywords, description, url are supported. To activate this feature please use degrees of 2 in *Weight commands of the indexer.conf. Let's imagine that we have these weights:
          URLWeight     1
      BodyWeight    2
      TitleWeight   4
      KeywordWeight 8
      DescWeight    16
    As far as indexer uses bit OR operation for word weights when some word presents several time in the same document, it is possible at search time to detect word appearance in different document parts. Word which appears only in the body will have 00000010 aggregate weight (in binary notation). Word used in all document parts will have 00011111 aggregate weight. This parameter's value is a string of hex digits ABCDE. Each digit is a factor for corresponding bit in word weight. For the given above weights configuration:
           E is a factor for weight 1  (URL Weight bit)
       D is a factor for weight 2  (BodyWeight bit)
       C is a factor for weight 4  (TitleWeight bit)
       B is a factor for weight 8  (KeywordWeight bit)
       A is a factor for weight 16 (DescWeight bit)
    Examples: UDM_PARAM_WEIGHT_FACTOR=00001 will search through URLs only. UDM_PARAM_WEIGHT_FACTOR=00100 will search through Titles only. UDM_PARAM_WEIGHT_FACTOR=11100 will search through Title,Keywords,Description but not through URL and Body. UDM_PARAM_WEIGHT_FACTOR=F9421 will search through:
            Description with factor 15  (F hex)
        Keywords with factor 9
        Title with factor  4
        Body with factor 2
        URL with factor 1
    If UDM_PARAM_WEIGHT_FACTOR variable is omitted, original weight value is taken to sort results. For a given above weight configuration it means that document description has a most big weight 16.
  • UDM_PARAM_WORD_MATCH - word match. You may use this parameter to choose word match type. This feature works only in "single" and "multi" modes using SQL based and built-in database. It does not work in cachemode and other modes since they use word CRC and do not support substring search. Available values: UDM_MATCH_BEGIN - word beginning match; UDM_MATCH_END - word ending match; UDM_MATCH_WORD - whole word match; UDM_MATCH_SUBSTR - word substring match.
  • UDM_PARAM_MIN_WORD_LEN - defines minimal word length. Any word shorter this limit is considered to be a stopword. Please note that this parameter value is inclusive, i.e. if UDM_PARAM_MIN_WORD_LEN=3, a word 3 characters long will not be considered a stopword, while a word 2 characters long will be. Default value is 1.
  • UDM_PARAM_ISPELL_PREFIXES - Possible values: UDM_PREFIXES_ENABLED and UDM_PREFIXES_DISABLED, that respectively enable or disable using prefixes. E.g. if a word "tested" is in search query, also words like "test", "testing", etc. Only suffixes are supported by default. Prefixes usually change word meanings, for example if somebody is searching for the word "tested" one hardly wants "untested" to be found. Prefixes support may also be found useful for site's spelling checking purposes. In order to enable ispell, you have to load ispell data with udm_load_ispell_data().
  • UDM_PARAM_CROSS_WORDS - enables or disables crosswords support. Possible values: UDM_CROSS_WORDS_ENABLED and UDM_CROSS_WORDS_DISABLED. The crosswords feature allows to assign words between <a href="xxx"> and </a> also to a document this link leads to. It works in SQL database mode and is not supported in built-in database and Cachemode.
  • UDM_PARAM_VARDIR - specifies a custom path to directory where indexer stores data when using built-in database and in cache mode. By default /var directory of mnoGoSearch installation is used. Can have only string values.

val

Histórico

Versão | Descrição
4.1.0 | UDM_PARAM_VARDIR was added.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Crosswords are supported only in mnoGoSearch 3.1.11 or later.

udm_open_stored
Sphinx
mnoGoSearch Funções


Sphinx Client

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • SphinxClient — The SphinxClient class
    • SphinxClient::addQuery — Add query to multi-query batch
    • SphinxClient::buildExcerpts — Build text snippets
    • SphinxClient::buildKeywords — Extract keywords from query
    • SphinxClient::close — Closes previously opened persistent connection
    • SphinxClient::__construct — Create a new SphinxClient object
    • SphinxClient::escapeString — Escape special characters
    • SphinxClient::getLastError — Get the last error message
    • SphinxClient::getLastWarning — Get the last warning
    • SphinxClient::open — Opens persistent connection to the server
    • SphinxClient::query — Execute search query
    • SphinxClient::resetFilters — Clear all filters
    • SphinxClient::resetGroupBy — Clear all group-by settings
    • SphinxClient::runQueries — Run a batch of search queries
    • SphinxClient::setArrayResult — Change the format of result set array
    • SphinxClient::setConnectTimeout — Set connection timeout
    • SphinxClient::setFieldWeights — Set field weights
    • SphinxClient::setFilter — Add new integer values set filter
    • SphinxClient::setFilterFloatRange — Add new float range filter
    • SphinxClient::setFilterRange — Add new integer range filter
    • SphinxClient::setGeoAnchor — Set anchor point for a geosphere distance calculations
    • SphinxClient::setGroupBy — Set grouping attribute
    • SphinxClient::setGroupDistinct — Set attribute name for per-group distinct values count calculations
    • SphinxClient::setIDRange — Set a range of accepted document IDs
    • SphinxClient::setIndexWeights — Set per-index weights
    • SphinxClient::setLimits — Set offset and limit of the result set
    • SphinxClient::setMatchMode — Set full-text query matching mode
    • SphinxClient::setMaxQueryTime — Set maximum query time
    • SphinxClient::setOverride — Sets temporary per-document attribute value overrides
    • SphinxClient::setRankingMode — Set ranking mode
    • SphinxClient::setRetries — Set retry count and delay
    • SphinxClient::setSelect — Set select clause
    • SphinxClient::setServer — Set searchd host and port
    • SphinxClient::setSortMode — Set matches sorting mode
    • SphinxClient::status — Queries searchd status
    • SphinxClient::updateAttributes — Update document attributes
udm_set_agent_param
Introdução
Extensões de Search Engine


Introdução

This extension provides bindings for Sphinx search client library. Sphinx is a standalone search engine meant to provide fast, size-efficient and relevant fulltext search functions to other applications. Sphinx was specially designed to integrate well with SQL databases and scripting languages. Both Sphinx and its client library can be obtained from the » official site

Sphinx
Instalação/Configuração
Sphinx


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Sphinx


Dependências

PECL/sphinx requires PHP 5.2.2 or newer.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/sphinx.

If ./configure is having trouble finding the libsphinxclient files (for example, it was installed into a custom prefix directory), use ./configure --with-sphinx=$PREFIX, where $PREFIX is installation prefix of libsphinxclient.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SEARCHD_OK (integer)
SEARCHD_ERROR (integer)
SEARCHD_RETRY (integer)
SEARCHD_WARNING (integer)
SPH_MATCH_ALL (integer)
SPH_MATCH_ANY (integer)
SPH_MATCH_PHRASE (integer)
SPH_MATCH_BOOLEAN (integer)
SPH_MATCH_EXTENDED (integer)
SPH_MATCH_FULLSCAN (integer)
SPH_MATCH_EXTENDED2 (integer)
SPH_RANK_PROXIMITY_BM25 (integer)
SPH_RANK_BM25 (integer)
SPH_RANK_NONE (integer)
SPH_RANK_WORDCOUNT (integer)
SPH_SORT_RELEVANCE (integer)
SPH_SORT_ATTR_DESC (integer)
SPH_SORT_ATTR_ASC (integer)
SPH_SORT_TIME_SEGMENTS (integer)
SPH_SORT_EXTENDED (integer)
SPH_SORT_EXPR (integer)
SPH_FILTER_VALUES (integer)
SPH_FILTER_RANGE (integer)
SPH_FILTER_FLOATRANGE (integer)
SPH_ATTR_INTEGER (integer)
SPH_ATTR_TIMESTAMP (integer)
SPH_ATTR_ORDINAL (integer)
SPH_ATTR_BOOL (integer)
SPH_ATTR_FLOAT (integer)
SPH_ATTR_MULTI (integer)
SPH_GROUPBY_DAY (integer)
SPH_GROUPBY_WEEK (integer)
SPH_GROUPBY_MONTH (integer)
SPH_GROUPBY_YEAR (integer)
SPH_GROUPBY_ATTR (integer)
SPH_GROUPBY_ATTRPAIR (integer)

Tipos Resource
Exemplos
Sphinx


Exemplos

Exemplo #1 Basic usage example

<?php

$s = new SphinxClient;
$s->setServer("localhost", 6712);
$s->setMatchMode(SPH_MATCH_ANY);
$s->setMaxQueryTime(3);

$result = $s->query("test");

var_dump($result);

?>

O exemplo acima irá imprimir algo similar a:

array(10) {
  ["error"]=>
  string(0) ""
  ["warning"]=>
  string(0) ""
  ["status"]=>
  int(0)
  ["fields"]=>
  array(3) {
    [0]=>
    string(7) "subject"
    [1]=>
    string(4) "body"
    [2]=>
    string(6) "author"
  }
  ["attrs"]=>
  array(0) {
  }
  ["matches"]=>
  array(1) {
    [3]=>
    array(2) {
      ["weight"]=>
      int(1)
      ["attrs"]=>
      array(0) {
      }
    }
  }
  ["total"]=>
  int(1)
  ["total_found"]=>
  int(1)
  ["time"]=>
  float(0)
  ["words"]=>
  array(1) {
    ["to"]=>
    array(2) {
      ["docs"]=>
      int(1)
      ["hits"]=>
      int(1)
    }
  }
}
Constantes pré-definidas
SphinxClient
Sphinx


The SphinxClient class

Introdução

The SphinxClient class provides object-oriented interface to Sphinx.

Sinopse da classe

SphinxClient {
/* Methods */
public int addQuery ( string $query [, string $index = "*" [, string $comment = "" ]] )
public array buildExcerpts ( array $docs , string $index , string $words [, array $opts ] )
public array buildKeywords ( string $query , string $index , bool $hits )
public bool close ( void )
__construct ( void )
public string escapeString ( string $string )
public string getLastError ( void )
public string getLastWarning ( void )
public bool open ( void )
public array query ( string $query [, string $index = "*" [, string $comment = "" ]] )
public void resetFilters ( void )
public void resetGroupBy ( void )
public array runQueries ( void )
public bool setArrayResult ( bool $array_result = false )
public bool setConnectTimeout ( float $timeout )
public bool setFieldWeights ( array $weights )
public bool setFilter ( string $attribute , array $values [, bool $exclude = false ] )
public bool setFilterFloatRange ( string $attribute , float $min , float $max [, bool $exclude = false ] )
public bool setFilterRange ( string $attribute , int $min , int $max [, bool $exclude = false ] )
public bool setGeoAnchor ( string $attrlat , string $attrlong , float $latitude , float $longitude )
public bool setGroupBy ( string $attribute , int $func [, string $groupsort = "@group desc" ] )
public bool setGroupDistinct ( string $attribute )
public bool setIDRange ( int $min , int $max )
public bool setIndexWeights ( array $weights )
public bool setLimits ( int $offset , int $limit [, int $max_matches = 0 [, int $cutoff = 0 ]] )
public bool setMatchMode ( int $mode )
public bool setMaxQueryTime ( int $qtime )
public bool setOverride ( string $attribute , int $type , array $values )
public bool setRankingMode ( int $ranker )
public bool setRetries ( int $count [, int $delay = 0 ] )
public bool setSelect ( string $clause )
public bool setServer ( string $server , int $port )
public bool setSortMode ( int $mode [, string $sortby ] )
public array status ( void )
public int updateAttributes ( string $index , array $attributes , array $values [, bool $mva = false ] )
}

Índice

  • SphinxClient::addQuery — Add query to multi-query batch
  • SphinxClient::buildExcerpts — Build text snippets
  • SphinxClient::buildKeywords — Extract keywords from query
  • SphinxClient::close — Closes previously opened persistent connection
  • SphinxClient::__construct — Create a new SphinxClient object
  • SphinxClient::escapeString — Escape special characters
  • SphinxClient::getLastError — Get the last error message
  • SphinxClient::getLastWarning — Get the last warning
  • SphinxClient::open — Opens persistent connection to the server
  • SphinxClient::query — Execute search query
  • SphinxClient::resetFilters — Clear all filters
  • SphinxClient::resetGroupBy — Clear all group-by settings
  • SphinxClient::runQueries — Run a batch of search queries
  • SphinxClient::setArrayResult — Change the format of result set array
  • SphinxClient::setConnectTimeout — Set connection timeout
  • SphinxClient::setFieldWeights — Set field weights
  • SphinxClient::setFilter — Add new integer values set filter
  • SphinxClient::setFilterFloatRange — Add new float range filter
  • SphinxClient::setFilterRange — Add new integer range filter
  • SphinxClient::setGeoAnchor — Set anchor point for a geosphere distance calculations
  • SphinxClient::setGroupBy — Set grouping attribute
  • SphinxClient::setGroupDistinct — Set attribute name for per-group distinct values count calculations
  • SphinxClient::setIDRange — Set a range of accepted document IDs
  • SphinxClient::setIndexWeights — Set per-index weights
  • SphinxClient::setLimits — Set offset and limit of the result set
  • SphinxClient::setMatchMode — Set full-text query matching mode
  • SphinxClient::setMaxQueryTime — Set maximum query time
  • SphinxClient::setOverride — Sets temporary per-document attribute value overrides
  • SphinxClient::setRankingMode — Set ranking mode
  • SphinxClient::setRetries — Set retry count and delay
  • SphinxClient::setSelect — Set select clause
  • SphinxClient::setServer — Set searchd host and port
  • SphinxClient::setSortMode — Set matches sorting mode
  • SphinxClient::status — Queries searchd status
  • SphinxClient::updateAttributes — Update document attributes
Exemplos
SphinxClient::addQuery
Sphinx


Add query to multi-query batch

SphinxClient
SphinxClient::buildExcerpts
SphinxClient
PHP Manual

SphinxClient::addQuery

(PECL sphinx >= 0.1.0)

SphinxClient::addQuery — Add query to multi-query batch

Descrição

public int SphinxClient::addQuery ( string $query [, string $index = "*" [, string $comment = "" ]] )

Adds query with the current settings to multi-query batch. This method doesn't affect current settings (sorting, filtering, grouping etc.) in any way.

Parâmetros

query

Query string.

index

An index name (or names).

comment

Valor Retornado

Returns an index in an array of results that will be returned by SphinxClient::runQueries call or false on error.

Veja Também

  • SphinxClient::runQueries
  • SphinxClient::query

SphinxClient
SphinxClient::buildExcerpts
SphinxClient


Build text snippets

SphinxClient::addQuery
SphinxClient::buildKeywords
SphinxClient
PHP Manual

SphinxClient::buildExcerpts

(PECL sphinx >= 0.1.0)

SphinxClient::buildExcerpts — Build text snippets

Descrição

public array SphinxClient::buildExcerpts ( array $docs , string $index , string $words [, array $opts ] )

Connects to searchd, requests it to generate excerpts (snippets) from the given documents, and returns the results.

Parâmetros

docs

Array of strings with documents' contents.

index

Index name.

words

Keywords to highlight.

opts

Associative array of additional highlighting options (see below).

Highlighting options
Option | Description
"before_match" | A string to insert before a keyword match. Default is "<b>".
"after_match" | A string to insert after a keyword match. Default is "</b>".
"chunk_separator" | A string to insert between snippet chunks (passages). Default is " ... ".
"limit" | Maximum snippet size, in symbols (codepoints). Integer, default is 256.
"around" | How much words to pick around each matching keywords block. Integer, default is 5.
"exact_phrase" | Whether to highlight exact query phrase matches only instead of individual keywords. Boolean, default is FALSE.
"single_passage" | Whether to extract single best passage only. Boolean, default is FALSE.

Valor Retornado

Returns array of snippets on success or FALSE on failure.

SphinxClient::addQuery
SphinxClient::buildKeywords
SphinxClient


Extract keywords from query

SphinxClient::buildExcerpts
SphinxClient::close
SphinxClient
PHP Manual

SphinxClient::buildKeywords

(PECL sphinx >= 0.1.0)

SphinxClient::buildKeywords — Extract keywords from query

Descrição

public array SphinxClient::buildKeywords ( string $query , string $index , bool $hits )

Extracts keywords from query using tokenizer settings for the given index, optionally with per-keyword occurrence statistics.

Parâmetros

query

A query to extract keywords from.

index

An index to get tokenizing settings and keyword occurrence statistics from.

hits

A boolean flag to enable/disable keyword statistics generation.

Valor Retornado

Returns an array of associative arrays with per-keyword information.

SphinxClient::buildExcerpts
SphinxClient::close
SphinxClient


Closes previously opened persistent connection

SphinxClient::buildKeywords
SphinxClient::__construct
SphinxClient
PHP Manual

SphinxClient::close

(PECL sphinx >= 1.0.3)

SphinxClient::close — Closes previously opened persistent connection

Descrição

public bool SphinxClient::close ( void )

Closes previously opened persistent connection.

Parâmetros

Esta função não contém parâmetros.

Histórico

PECL/sphinx Versão | Descrição
1.0.3 | Added SphinxClient::close(), available only if compiled with libsphinxclient >= 0.9.9.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::open

SphinxClient::buildKeywords
SphinxClient::__construct
SphinxClient


Create a new SphinxClient object

SphinxClient::close
SphinxClient::escapeString
SphinxClient
PHP Manual

SphinxClient::__construct

(PECL sphinx >= 0.1.0)

SphinxClient::__construct — Create a new SphinxClient object

Descrição

SphinxClient::__construct ( void )

Creates a new SphinxClient object.

Parâmetros

Esta função não contém parâmetros.

SphinxClient::close
SphinxClient::escapeString
SphinxClient


Escape special characters

SphinxClient::__construct
SphinxClient::getLastError
SphinxClient
PHP Manual

SphinxClient::escapeString

(PECL sphinx >= 0.1.0)

SphinxClient::escapeString — Escape special characters

Descrição

public string SphinxClient::escapeString ( string $string )

Escapes characters that are treated as special operators by the query language parser.

Parâmetros

string

String to escape.

Valor Retornado

Returns escaped string.

SphinxClient::__construct
SphinxClient::getLastError
SphinxClient


Get the last error message

SphinxClient::escapeString
SphinxClient::getLastWarning
SphinxClient
PHP Manual

SphinxClient::getLastError

(PECL sphinx >= 0.1.0)

SphinxClient::getLastError — Get the last error message

Descrição

public string SphinxClient::getLastError ( void )

Returns string with the last error message. If there were no errors during the previous API call, empty string is returned. This method doesn't reset the error message, so you can safely call it several times.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the last error message or an empty string if there were no errors.

Veja Também

  • SphinxClient::getLastWarning

SphinxClient::escapeString
SphinxClient::getLastWarning
SphinxClient


Get the last warning

SphinxClient::getLastError
SphinxClient::open
SphinxClient
PHP Manual

SphinxClient::getLastWarning

(PECL sphinx >= 0.1.0)

SphinxClient::getLastWarning — Get the last warning

Descrição

public string SphinxClient::getLastWarning ( void )

Returns last warning message. If there were no warnings during the previous API call, empty string is returned. This method doesn't reset the warning, so you can safely call it several times.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the last warning message or an empty string if there were no warnings.

Veja Também

  • SphinxClient::getLastError

SphinxClient::getLastError
SphinxClient::open
SphinxClient


Opens persistent connection to the server

SphinxClient::getLastWarning
SphinxClient::query
SphinxClient
PHP Manual

SphinxClient::open

(PECL sphinx >= 1.0.3)

SphinxClient::open — Opens persistent connection to the server

Descrição

public bool SphinxClient::open ( void )

Opens persistent connection to the server.

Parâmetros

Esta função não contém parâmetros.

Histórico

PECL/sphinx Versão | Descrição
1.0.3 | Added SphinxClient::open(), available only if compiled with libsphinxclient >= 0.9.9.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::close

SphinxClient::getLastWarning
SphinxClient::query
SphinxClient


Execute search query

SphinxClient::open
SphinxClient::resetFilters
SphinxClient
PHP Manual

SphinxClient::query

(PECL sphinx >= 0.1.0)

SphinxClient::query — Execute search query

Descrição

public array SphinxClient::query ( string $query [, string $index = "*" [, string $comment = "" ]] )

Connects to searchd server, runs the given search query with the current settings, obtains and returns the result set.

Parâmetros

query

Query string.

index

An index name (or names).

comment

Valor Retornado

On success, SphinxClient::query() returns a list of found matches and additional per-query statistics. The result set is a hash utilize other structures instead of hash) with the following keys and values:

Result set structure
Key | Value description
"matches" | An array with found document IDs as keys and their weight and attributes values as values
"total" | Total number of matches found and retrieved (depends on your settings)
"total_found" | Total number of found documents matching the query
"words" | An array with words (case-folded and stemmed) as keys and per-word statistics as values
"error" | Query error message reported by searchd
"warning" | Query warning reported by searchd

Veja Também

  • SphinxClient::runQueries
  • SphinxClient::addQuery

SphinxClient::open
SphinxClient::resetFilters
SphinxClient


Clear all filters

SphinxClient::query
SphinxClient::resetGroupBy
SphinxClient
PHP Manual

SphinxClient::resetFilters

(PECL sphinx >= 0.1.0)

SphinxClient::resetFilters — Clear all filters

Descrição

public void SphinxClient::resetFilters ( void )

Clears all currently set filters. This call is normally required when using multi-queries. You might want to set different filters for different queries in the batch. To do that, you should call SphinxClient::resetFilters() and add new filters using the respective calls.

Valor Retornado

Não há valor retornado.

Veja Também

  • SphinxClient::resetGroupBy

SphinxClient::query
SphinxClient::resetGroupBy
SphinxClient


Clear all group-by settings

SphinxClient::resetFilters
SphinxClient::runQueries
SphinxClient
PHP Manual

SphinxClient::resetGroupBy

(PECL sphinx >= 0.1.0)

SphinxClient::resetGroupBy — Clear all group-by settings

Descrição

public void SphinxClient::resetGroupBy ( void )

Clears all currently group-by settings, and disables group-by. This call is normally required only when using multi-queries.

Valor Retornado

Não há valor retornado.

Veja Também

  • SphinxClient::resetGroupBy

SphinxClient::resetFilters
SphinxClient::runQueries
SphinxClient


Run a batch of search queries

SphinxClient::resetGroupBy
SphinxClient::setArrayResult
SphinxClient
PHP Manual

SphinxClient::runQueries

(PECL sphinx >= 0.1.0)

SphinxClient::runQueries — Run a batch of search queries

Descrição

public array SphinxClient::runQueries ( void )

Connects to searchd, runs a batch of all queries added using SphinxClient::addQuery, obtains and returns the result sets.

Valor Retornado

Returns FALSE on failure and array of result sets on success.

Veja Também

  • SphinxClient::addQuery
  • SphinxClient::query

SphinxClient::resetGroupBy
SphinxClient::setArrayResult
SphinxClient


Change the format of result set array

SphinxClient::runQueries
SphinxClient::setConnectTimeout
SphinxClient
PHP Manual

SphinxClient::setArrayResult

(PECL sphinx >= 0.1.0)

SphinxClient::setArrayResult — Change the format of result set array

Descrição

public bool SphinxClient::setArrayResult ( bool $array_result = false )

Controls the format of search results set arrays (whether matches should be returned as an array or a hash).

Parâmetros

array_result

If array_result is FALSE, matches are returned as a hash with document IDs as keys, and other information (weight, attributes) as values. If array_result is TRUE, matches are returned as a plain array with complete per-match information including document IDs.

Valor Retornado

Always returns TRUE.

SphinxClient::runQueries
SphinxClient::setConnectTimeout
SphinxClient


Set connection timeout

SphinxClient::setArrayResult
SphinxClient::setFieldWeights
SphinxClient
PHP Manual

SphinxClient::setConnectTimeout

(PECL sphinx >= 0.1.0)

SphinxClient::setConnectTimeout — Set connection timeout

Descrição

public bool SphinxClient::setConnectTimeout ( float $timeout )

Sets connection timeout (in seconds) for searchd connection.

Parâmetros

timeout

Timeout in seconds.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setMaxQueryTime

SphinxClient::setArrayResult
SphinxClient::setFieldWeights
SphinxClient


Set field weights

SphinxClient::setConnectTimeout
SphinxClient::setFilter
SphinxClient
PHP Manual

SphinxClient::setFieldWeights

(PECL sphinx >= 0.1.0)

SphinxClient::setFieldWeights — Set field weights

Descrição

public bool SphinxClient::setFieldWeights ( array $weights )

Binds per-field weights by name.

Match ranking can be affected by per-field weights. See » Sphinx documentation for an explanation on how phrase proximity ranking is affected. This call lets you specify non-default weights for full-text fields.

The weights must be positive 32-bit integers, so be careful not to hit 32-bit integer maximum. The final weight is a 32-bit integer too. Default weight value is 1. Unknown field names are silently ignored.

Parâmetros

weights

Associative array of field names and field weights.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setIndexWeights

SphinxClient::setConnectTimeout
SphinxClient::setFilter
SphinxClient


Add new integer values set filter

SphinxClient::setFieldWeights
SphinxClient::setFilterFloatRange
SphinxClient
PHP Manual

SphinxClient::setFilter

(PECL sphinx >= 0.1.0)

SphinxClient::setFilter — Add new integer values set filter

Descrição

public bool SphinxClient::setFilter ( string $attribute , array $values [, bool $exclude = false ] )

Adds new integer values set filter to the existing list of filters.

Parâmetros

attribute

An attribute name.

values

Plain array of integer values.

exclude

If set to TRUE, matching documents are excluded from the result set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setFilterFloatRange
  • SphinxClient::setFilterRange
  • SphinxClient::resetFilters

SphinxClient::setFieldWeights
SphinxClient::setFilterFloatRange
SphinxClient


Add new float range filter

SphinxClient::setFilter
SphinxClient::setFilterRange
SphinxClient
PHP Manual

SphinxClient::setFilterFloatRange

(PECL sphinx >= 0.1.0)

SphinxClient::setFilterFloatRange — Add new float range filter

Descrição

public bool SphinxClient::setFilterFloatRange ( string $attribute , float $min , float $max [, bool $exclude = false ] )

Adds new float range filter to the existing list of filters. Only those documents which have attribute value stored in the index between min and max (including values that are exactly equal to min or max) will be matched (or rejected, if exclude is TRUE).

Parâmetros

attribute

An attribute name.

min

Minimum value.

max

Maximum value.

exclude

If set to TRUE, matching documents are excluded from the result set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setFilterRange
  • SphinxClient::setFilter
  • SphinxClient::resetFilters

SphinxClient::setFilter
SphinxClient::setFilterRange
SphinxClient


Add new integer range filter

SphinxClient::setFilterFloatRange
SphinxClient::setGeoAnchor
SphinxClient
PHP Manual

SphinxClient::setFilterRange

(PECL sphinx >= 0.1.0)

SphinxClient::setFilterRange — Add new integer range filter

Descrição

public bool SphinxClient::setFilterRange ( string $attribute , int $min , int $max [, bool $exclude = false ] )

Adds new integer range filter to the existing list of filters. Only those documents which have attribute value stored in the index between min and max (including values that are exactly equal to min or max) will be matched (or rejected, if exclude is TRUE).

Parâmetros

attribute

An attribute name.

min

Minimum value.

max

Maximum value.

exclude

If set to TRUE, matching documents are excluded from the result set.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setFilterFloatRange
  • SphinxClient::setFilter
  • SphinxClient::resetFilters

SphinxClient::setFilterFloatRange
SphinxClient::setGeoAnchor
SphinxClient


Set anchor point for a geosphere distance calculations

SphinxClient::setFilterRange
SphinxClient::setGroupBy
SphinxClient
PHP Manual

SphinxClient::setGeoAnchor

(PECL sphinx >= 0.1.0)

SphinxClient::setGeoAnchor — Set anchor point for a geosphere distance calculations

Descrição

public bool SphinxClient::setGeoAnchor ( string $attrlat , string $attrlong , float $latitude , float $longitude )

Sets anchor point for a geosphere distance (geodistance) calculations and enables them.

Once an anchor point is set, you can use magic "@geodist" attribute name in your filters and/or sorting expressions.

Parâmetros

attrlat

Name of a latitude attribute.

attrlong

Name of a longitude attribute.

latitude

Anchor latitude in radians.

longitude

Anchor longitude in radians.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setFilterFloatRange
  • SphinxClient::setFilterRange
  • SphinxClient::setFilter
  • SphinxClient::resetFilters

SphinxClient::setFilterRange
SphinxClient::setGroupBy
SphinxClient


Set grouping attribute

SphinxClient::setGeoAnchor
SphinxClient::setGroupDistinct
SphinxClient
PHP Manual

SphinxClient::setGroupBy

(PECL sphinx >= 0.1.0)

SphinxClient::setGroupBy — Set grouping attribute

Descrição

public bool SphinxClient::setGroupBy ( string $attribute , int $func [, string $groupsort = "@group desc" ] )

Sets grouping attribute, function, and group sorting mode, and enables grouping.

Grouping feature is very similar to GROUP BY clause in SQL. Results produced by this function call are going to be the same as produced by the following pseudo code: SELECT ... GROUP BY $func($attribute) ORDER BY $groupsort.

Parâmetros

attribute

A string containing group-by attribute name.

func

Constant, which sets a function applied to the attribute value in order to compute group-by key.

groupsort

An optional clause controlling how the groups are sorted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::resetGroupBy
  • SphinxClient::setSortMode
  • SphinxClient::setGroupDistinct

SphinxClient::setGeoAnchor
SphinxClient::setGroupDistinct
SphinxClient


Set attribute name for per-group distinct values count calculations

SphinxClient::setGroupBy
SphinxClient::setIDRange
SphinxClient
PHP Manual

SphinxClient::setGroupDistinct

(PECL sphinx >= 0.1.0)

SphinxClient::setGroupDistinct — Set attribute name for per-group distinct values count calculations

Descrição

public bool SphinxClient::setGroupDistinct ( string $attribute )

Sets attribute name for per-group distinct values count calculations. Only available for grouping queries. For each group, all values of attribute will be stored, then the amount of distinct values will be calculated and returned to the client. This feature is similar to COUNT(DISTINCT) clause in SQL.

Parâmetros

attribute

A string containing group-by attribute name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setSortMode
  • SphinxClient::setGroupBy
  • SphinxClient::resetGroupBy

SphinxClient::setGroupBy
SphinxClient::setIDRange
SphinxClient


Set a range of accepted document IDs

SphinxClient::setGroupDistinct
SphinxClient::setIndexWeights
SphinxClient
PHP Manual

SphinxClient::setIDRange

(PECL sphinx >= 0.1.0)

SphinxClient::setIDRange — Set a range of accepted document IDs

Descrição

public bool SphinxClient::setIDRange ( int $min , int $max )

Sets an accepted range of document IDs. Default range is from 0 to 0, i.e. no limit. Only those records that have document ID between min and max (including IDs exactly equal to min or max) will be matched.

Parâmetros

min

Minimum ID value.

max

Maximum ID value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setGroupDistinct
SphinxClient::setIndexWeights
SphinxClient


Set per-index weights

SphinxClient::setIDRange
SphinxClient::setLimits
SphinxClient
PHP Manual

SphinxClient::setIndexWeights

(PECL sphinx >= 0.1.0)

SphinxClient::setIndexWeights — Set per-index weights

Descrição

public bool SphinxClient::setIndexWeights ( array $weights )

Sets per-index weights and enables weighted summing of match weights across different indexes.

Parâmetros

weights

An associative array mapping string index names to integer weights. Default is empty array, i.e. weighting summing is disabled.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setIDRange
SphinxClient::setLimits
SphinxClient


Set offset and limit of the result set

SphinxClient::setIndexWeights
SphinxClient::setMatchMode
SphinxClient
PHP Manual

SphinxClient::setLimits

(PECL sphinx >= 0.1.0)

SphinxClient::setLimits — Set offset and limit of the result set

Descrição

public bool SphinxClient::setLimits ( int $offset , int $limit [, int $max_matches = 0 [, int $cutoff = 0 ]] )

Sets offset into server-side result set and amount of matches to return to client starting from that offset (limit). Can additionally control maximum server-side result set size for current query (max_matches) and the threshold amount of matches to stop searching at (cutoff).

Parâmetros

offset

Result set offset.

limit

Amount of matches to return.

max_matches

Controls how much matches searchd will keep in RAM while searching.

cutoff

Used for advanced performance control. It tells searchd to forcibly stop search query once cutoff matches have been found and processed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setIndexWeights
SphinxClient::setMatchMode
SphinxClient


Set full-text query matching mode

SphinxClient::setLimits
SphinxClient::setMaxQueryTime
SphinxClient
PHP Manual

SphinxClient::setMatchMode

(PECL sphinx >= 0.1.0)

SphinxClient::setMatchMode — Set full-text query matching mode

Descrição

public bool SphinxClient::setMatchMode ( int $mode )

Sets full-text query matching mode. mode is one of the constants listed below.

Match modes
Constant | Description
SPH_MATCH_ALL | Match all query words (default mode).
SPH_MATCH_ANY | Match any of query words.
SPH_MATCH_PHRASE | Match query as a phrase, requiring perfect match.
SPH_MATCH_BOOLEAN | Match query as a boolean expression.
SPH_MATCH_EXTENDED | Match query as an expression in Sphinx internal query language.
SPH_MATCH_FULLSCAN | Enables fullscan.
SPH_MATCH_EXTENDED2 | The same as SPH_MATCH_EXTENDED plus ranking and quorum searching support.

Parâmetros

mode

Matching mode.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setRankingMode
  • SphinxClient::setSortMode

SphinxClient::setLimits
SphinxClient::setMaxQueryTime
SphinxClient


Set maximum query time

SphinxClient::setMatchMode
SphinxClient::setOverride
SphinxClient
PHP Manual

SphinxClient::setMaxQueryTime

(PECL sphinx >= 0.1.0)

SphinxClient::setMaxQueryTime — Set maximum query time

Descrição

public bool SphinxClient::setMaxQueryTime ( int $qtime )

Sets maximum search query time.

Parâmetros

qtime

Maximum query time, in milliseconds. It must be a non-negative integer. Default value is 0, i.e. no limit.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setMatchMode
SphinxClient::setOverride
SphinxClient


Sets temporary per-document attribute value overrides

SphinxClient::setMaxQueryTime
SphinxClient::setRankingMode
SphinxClient
PHP Manual

SphinxClient::setOverride

(PECL sphinx >= 1.0.3)

SphinxClient::setOverride — Sets temporary per-document attribute value overrides

Descrição

public bool SphinxClient::setOverride ( string $attribute , int $type , array $values )

Sets temporary (per-query) per-document attribute value overrides. Override feature lets you "temporary" update attribute values for some documents within a single query, leaving all other queries unaffected. This might be useful for personalized data

Parâmetros

attribute

An attribute name.

type

An attribute type. Only supports scalar attributes.

values

Array of attribute values that maps document IDs to overridden attribute values.

Histórico

PECL/sphinx Versão | Descrição
1.0.3 | Added SphinxClient::setOverride(), available only if compiled with libsphinxclient >= 0.9.9.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setMaxQueryTime
SphinxClient::setRankingMode
SphinxClient


Set ranking mode

SphinxClient::setOverride
SphinxClient::setRetries
SphinxClient
PHP Manual

SphinxClient::setRankingMode

(PECL sphinx >= 0.1.0)

SphinxClient::setRankingMode — Set ranking mode

Descrição

public bool SphinxClient::setRankingMode ( int $ranker )

Sets ranking mode. Only available in SPH_MATCH_EXTENDED2 matching mode.

Ranking modes
Constant | Description
SPH_RANK_PROXIMITY_BM25 | Default ranking mode which uses both proximity and BM25 ranking.
SPH_RANK_BM25 | Statistical ranking mode which uses BM25 ranking only (similar to most of other full-text engines). This mode is faster, but may result in worse quality on queries which contain more than 1 keyword.
SPH_RANK_NONE | Disables ranking. This mode is the fastest. It is essentially equivalent to boolean searching, a weight of 1 is assigned to all matches.

Parâmetros

ranker

Ranking mode.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setMatchMode

SphinxClient::setOverride
SphinxClient::setRetries
SphinxClient


Set retry count and delay

SphinxClient::setRankingMode
SphinxClient::setSelect
SphinxClient
PHP Manual

SphinxClient::setRetries

(PECL sphinx >= 0.1.0)

SphinxClient::setRetries — Set retry count and delay

Descrição

public bool SphinxClient::setRetries ( int $count [, int $delay = 0 ] )

Sets distributed retry count and delay.

On temporary failures searchd will attempt up to count retries per agent. delay is the delay between the retries, in milliseconds. Retries are disabled by default. Note that this call will not make the API itself retry on temporary failure; it only tells searchd to do so.

Parâmetros

count

Number of retries.

delay

Delay between retries, in milliseconds.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setRankingMode
SphinxClient::setSelect
SphinxClient


Set select clause

SphinxClient::setRetries
SphinxClient::setServer
SphinxClient
PHP Manual

SphinxClient::setSelect

(PECL sphinx >= 1.0.1)

SphinxClient::setSelect — Set select clause

Descrição

public bool SphinxClient::setSelect ( string $clause )

Sets the select clause, listing specific attributes to fetch, and expressions to compute and fetch.

Parâmetros

clause

SQL-like clause.

Histórico

PECL/sphinx Versão | Descrição
1.0.1 | Added SphinxClient::setSelect(), available only if compiled with libsphinxclient >= 0.9.9.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setRetries
SphinxClient::setServer
SphinxClient


Set searchd host and port

SphinxClient::setSelect
SphinxClient::setSortMode
SphinxClient
PHP Manual

SphinxClient::setServer

(PECL sphinx >= 0.1.0)

SphinxClient::setServer — Set searchd host and port

Descrição

public bool SphinxClient::setServer ( string $server , int $port )

Sets searchd host name and TCP port. All subsequent requests will use the new host and port settings. Default host and port are 'localhost' and 3312, respectively.

Parâmetros

server

IP or hostname.

port

Port number.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SphinxClient::setSelect
SphinxClient::setSortMode
SphinxClient


Set matches sorting mode

SphinxClient::setServer
SphinxClient::status
SphinxClient
PHP Manual

SphinxClient::setSortMode

(PECL sphinx >= 0.1.0)

SphinxClient::setSortMode — Set matches sorting mode

Descrição

public bool SphinxClient::setSortMode ( int $mode [, string $sortby ] )

Sets matches sorting mode. See available modes below.

Sorting modes
Constant | Description
SPH_SORT_RELEVANCE | Sort by relevance in descending order (best matches first).
SPH_SORT_ATTR_DESC | Sort by an attribute in descending order (bigger attribute values first).
SPH_SORT_ATTR_ASC | Sort by an attribute in ascending order (smaller attribute values first).
SPH_SORT_TIME_SEGMENTS | Sort by time segments (last hour/day/week/month) in descending order, and then by relevance in descending order.
SPH_SORT_EXTENDED | Sort by SQL-like combination of columns in ASC/DESC order.
SPH_SORT_EXPR | Sort by an arithmetic expression.

Parâmetros

mode

Sorting mode.

sortby

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • SphinxClient::setMatchMode
  • SphinxClient::setSortMode

SphinxClient::setServer
SphinxClient::status
SphinxClient


Queries searchd status

SphinxClient::setSortMode
SphinxClient::updateAttributes
SphinxClient
PHP Manual

SphinxClient::status

(PECL sphinx >= 1.0.3)

SphinxClient::status — Queries searchd status

Descrição

public array SphinxClient::status ( void )

Queries searchd status, and returns an array of status variable name and value pairs.

Parâmetros

Esta função não contém parâmetros.

Histórico

PECL/sphinx Versão | Descrição
1.0.3 | Added SphinxClient::status(), available only if compiled with libsphinxclient >= 0.9.9.

Valor Retornado

Returns an associative array of search server statistics or FALSE on failure.

SphinxClient::setSortMode
SphinxClient::updateAttributes
SphinxClient


Update document attributes

SphinxClient::status
Swish
SphinxClient
PHP Manual

SphinxClient::updateAttributes

(PECL sphinx >= 0.1.0)

SphinxClient::updateAttributes — Update document attributes

Descrição

public int SphinxClient::updateAttributes ( string $index , array $attributes , array $values [, bool $mva = false ] )

Instantly updates given attribute values in given documents.

Parâmetros

index

Name of the index (or indexes) to be updated.

attributes

Array of attribute names, listing attributes that are updated.

values

Associative array containing document IDs as keys and array of attribute values as values.

Valor Retornado

Returns number of actually updated documents (0 or more) on success, or FALSE on failure.

SphinxClient::status
Swish
SphinxClient


Swish Indexing

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic usage
  • Swish Funções
    • Swish::__construct — Construct a Swish object
    • Swish->getMetaList — Get the list of meta entries for the index
    • Swish->getPropertyList — Get the list of properties for the index
    • Swish->prepare — Prepare a search query
    • Swish->query — Execute a query and return results object
    • SwishResult->getMetaList — Get a list of meta entries
    • SwishResult->stem — Stems the given word
    • SwishResults->getParsedWords — Get an array of parsed words
    • SwishResults->getRemovedStopwords — Get an array of stopwords removed from the query
    • SwishResults->nextResult — Get the next search result
    • SwishResults->seekResult — Set current seek pointer to the given position
    • SwishSearch->execute — Execute the search and get the results
    • SwishSearch->resetLimit — Reset the search limits
    • SwishSearch->setLimit — Set the search limits
    • SwishSearch->setPhraseDelimiter — Set the phrase delimiter
    • SwishSearch->setSort — Set the sort order
    • SwishSearch->setStructure — Set the structure flag in the search object
SphinxClient::updateAttributes
Introdução
Extensões de Search Engine


Introdução

The swish extension provides the bindings for Swish-e API. Swish-e stands for "Simple Web Indexing System for Humans - Enhanced" and is an open source system for indexing and search. Swish-e itself is licensed under GPL license, but uses a clause that allows applications to link against the library if every copy of the combined work is accompanied by the URL to Swish-e source code. Here it is: » http://swish-e.org.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Swish
Instalação/Configuração
Swish


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Swish


Dependências

PECL/swish requires PHP 5.1.3 or newer.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/swish.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Swish::META_TYPE_UNDEF (integer)
Swish::META_TYPE_STRING (integer)
Swish::META_TYPE_ULONG (integer)
Swish::META_TYPE_DATE (integer)
Swish::IN_FILE_BIT (integer)
Swish::IN_TITLE_BIT (integer)
Swish::IN_HEAD_BIT (integer)
Swish::IN_BODY_BIT (integer)
Swish::IN_COMMENTS_BIT (integer)
Swish::IN_HEADER_BIT (integer)
Swish::IN_EMPHASIZED_BIT (integer)
Swish::IN_META_BIT (integer)
Swish::IN_FILE (integer)
Swish::IN_TITLE (integer)
Swish::IN_HEAD (integer)
Swish::IN_BODY (integer)
Swish::IN_COMMENTS (integer)
Swish::IN_HEADER (integer)
Swish::IN_EMPHASIZED (integer)
Swish::IN_META (integer)
Swish::IN_ALL (integer)
Tipos Resource
Exemplos
Swish


Exemplos

Índice

  • Basic usage
Constantes pré-definidas
Basic usage
Swish


Basic usage

Exemplo #1 Basic search query

<?php

try {

    $swish = new Swish("index.swish-e");
    $results = $swish->query("test OR text");

    echo "Found ", $results->hits, " results\n";
    while ($result = $results->nextResult()) {
        var_dump($result);
        break; //break after the first result
    }

} catch (SwishException $e) {
    echo "Error: ", $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Found 9 results
object(SwishResult)#3 (8) {
  ["swishreccount"]=>
  int(1)
  ["swishrank"]=>
  int(1000)
  ["swishfilenum"]=>
  int(10)
  ["swishdbfile"]=>
  string(13) "index.swish-e"
  ["swishdocpath"]=>
  string(23) "README.SUBMITTING_PATCH"
  ["swishtitle"]=>
  NULL
  ["swishdocsize"]=>
  int(4557)
  ["swishlastmodified"]=>
  int(1072136752)
}
Exemplos
Swish Funções
Exemplos


Swish Funções

Índice

  • Swish::__construct — Construct a Swish object
  • Swish->getMetaList — Get the list of meta entries for the index
  • Swish->getPropertyList — Get the list of properties for the index
  • Swish->prepare — Prepare a search query
  • Swish->query — Execute a query and return results object
  • SwishResult->getMetaList — Get a list of meta entries
  • SwishResult->stem — Stems the given word
  • SwishResults->getParsedWords — Get an array of parsed words
  • SwishResults->getRemovedStopwords — Get an array of stopwords removed from the query
  • SwishResults->nextResult — Get the next search result
  • SwishResults->seekResult — Set current seek pointer to the given position
  • SwishSearch->execute — Execute the search and get the results
  • SwishSearch->resetLimit — Reset the search limits
  • SwishSearch->setLimit — Set the search limits
  • SwishSearch->setPhraseDelimiter — Set the phrase delimiter
  • SwishSearch->setSort — Set the sort order
  • SwishSearch->setStructure — Set the structure flag in the search object
Basic usage
Swish::__construct
Swish


Construct a Swish object

Swish Funções
Swish->getMetaList
Swish Funções
PHP Manual

Swish::__construct

(PECL swish >= 0.1.0)

Swish::__construct — Construct a Swish object

Descrição

void Swish::__construct ( string $index_names )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

index_names

The list of index files separated by spaces.

Valor Retornado

Não há valor retornado.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 A Swish::__construct() example

<?php

try {
    $swish = new Swish("index1 index2");
} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

foreach ($swish->indexes as $index) {
    var_dump($index["name"]);
    var_dump($index["headers"]["Total Words"]);
}

?>

O exemplo acima irá imprimir algo similar a:

string(6) "index1"
int(1888)
string(6) "index2"
int(2429)

Swish Funções
Swish->getMetaList
Swish Funções


Get the list of meta entries for the index

Swish::__construct
Swish->getPropertyList
Swish Funções
PHP Manual

Swish->getMetaList

(PECL swish >= 0.1.0)

Swish->getMetaList — Get the list of meta entries for the index

Descrição

array Swish->getMetaList ( string $index_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

index_name

The name of the index file.

Valor Retornado

Returns an array of meta entries for the given index.

Exemplos

Exemplo #1 Basic Swish->getMetaList() example

<?php

try {

    $swish = new Swish("index.swish-e");
    var_dump($swish->getMetaList("index.swish-e"));

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  array(3) {
    ["Name"]=>
    string(12) "swishdefault"
    ["Type"]=>
    int(0)
    ["ID"]=>
    int(1)
  }
}

Swish::__construct
Swish->getPropertyList
Swish Funções


Get the list of properties for the index

Swish->getMetaList
Swish->prepare
Swish Funções
PHP Manual

Swish->getPropertyList

(PECL swish >= 0.1.0)

Swish->getPropertyList — Get the list of properties for the index

Descrição

array Swish->getPropertyList ( string $index_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

index_name

The name of the index file.

Valor Retornado

Returns an array of properties for the given index.

Exemplos

Exemplo #1 Basic Swish->getPropertyList() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $properties = $swish->getPropertyList("index.swish-e");
    foreach ($properties as $prop) {
        echo $prop["Name"],"\n";
    }

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

swishreccount
swishrank
swishfilenum
swishdbfile
swishdocpath
swishtitle
swishdocsize
swishlastmodified

Swish->getMetaList
Swish->prepare
Swish Funções


Prepare a search query

Swish->getPropertyList
Swish->query
Swish Funções
PHP Manual

Swish->prepare

(PECL swish >= 0.1.0)

Swish->prepare — Prepare a search query

Descrição

object Swish->prepare ([ string $query ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Prepare and return a search object, which you can later use for unlimited number of queries.

Parâmetros

query

Optional query string. The query can be also set using SwishSearch->execute() method.

Valor Retornado

Returns SwishSearch object.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic Swish->prepare() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare("search query");
    $results = $search->execute();
    echo "Found: ", $results->hits, " hits\n";

    $results = $search->execute("new search");

    echo "Found: ", $results->hits, " hits\n";
} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Found: 2 hits
Found: 5 hits

Swish->getPropertyList
Swish->query
Swish Funções


Execute a query and return results object

Swish->prepare
SwishResult->getMetaList
Swish Funções
PHP Manual

Swish->query

(PECL swish >= 0.1.0)

Swish->query — Execute a query and return results object

Descrição

object Swish->query ( string $query )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

A quick method to execute a search with default parameters.

Parâmetros

query

Query string.

Valor Retornado

Returns SwishResults object.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic Swish->query() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $results = $swish->query("test query");

    echo "Found: ", $results->hits, " hits\n";

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Found: 1 hits

Swish->prepare
SwishResult->getMetaList
Swish Funções


Get a list of meta entries

Swish->query
SwishResult->stem
Swish Funções
PHP Manual

SwishResult->getMetaList

(PECL swish >= 0.1.0)

SwishResult->getMetaList — Get a list of meta entries

Descrição

array SwishResult->getMetaList ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Valor Retornado

Returns the same array as swish->getmetalist(), but uses the index file from the result handle.

Swish->query
SwishResult->stem
Swish Funções


Stems the given word

SwishResult->getMetaList
SwishResults->getParsedWords
Swish Funções
PHP Manual

SwishResult->stem

(PECL swish >= 0.1.0)

SwishResult->stem — Stems the given word

Descrição

array SwishResult->stem ( string $word )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Stems the word based on the fuzzy mode used during indexing. Each result object is linked with its index, so the results are based on this index.

Parâmetros

word

The word to stem.

Valor Retornado

Returns array containing the stemmed word variants (usually just one).

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic SwishResult->stem() example

<?php

try {

    $swish = new Swish("ext/swish/tests/index.swish-e");
    $results = $swish->query("testing OR others");

    if ($result = $results->nextResult()) {
        var_dump($result->stem("testing")); //the results fully depend on the stemmer used in the index
        var_dump($result->stem("others"));
    }

} catch (SwishException $e) {
    echo "Error: ", $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  string(4) "test"
}
array(1) {
  [0]=>
  string(5) "other"
}

SwishResult->getMetaList
SwishResults->getParsedWords
Swish Funções


Get an array of parsed words

SwishResult->stem
SwishResults->getRemovedStopwords
Swish Funções
PHP Manual

SwishResults->getParsedWords

(PECL swish >= 0.1.0)

SwishResults->getParsedWords — Get an array of parsed words

Descrição

array SwishResults->getParsedWords ( string $index_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

indexi_name

The name of the index used to initialize Swish object.

Valor Retornado

An array of parsed words with stopwords removed. The list of parsed words may be useful for highlighting search terms in the results.

Exemplos

Exemplo #1 Basic SwishResults->getParsedWords() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $results = $swish->query("'some characters' and numbers");

    var_dump($results->getParsedWords("index.swish-e"));
    var_dump($results->indexes[0]['parsed_words']); //same result in a different way

} catch (SwishException $e) {
    echo "Error: ", $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  [0]=>
  string(4) "some"
  [1]=>
  string(10) "characters"
  [2]=>
  string(3) "and"
  [3]=>
  string(7) "numbers"
}
array(4) {
  [0]=>
  string(4) "some"
  [1]=>
  string(10) "characters"
  [2]=>
  string(3) "and"
  [3]=>
  string(7) "numbers"
}

SwishResult->stem
SwishResults->getRemovedStopwords
Swish Funções


Get an array of stopwords removed from the query

SwishResults->getParsedWords
SwishResults->nextResult
Swish Funções
PHP Manual

SwishResults->getRemovedStopwords

(PECL swish >= 0.1.0)

SwishResults->getRemovedStopwords — Get an array of stopwords removed from the query

Descrição

array SwishResults->getRemovedStopwords ( string $index_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

index_name

The name of the index used to initialize Swish object.

Valor Retornado

Returns array of stopwords removed from the query.

SwishResults->getParsedWords
SwishResults->nextResult
Swish Funções


Get the next search result

SwishResults->getRemovedStopwords
SwishResults->seekResult
Swish Funções
PHP Manual

SwishResults->nextResult

(PECL swish >= 0.1.0)

SwishResults->nextResult — Get the next search result

Descrição

object SwishResults->nextResult ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Valor Retornado

Returns the next SwishResult object in the result set or FALSE if there are no more results available.

Exemplos

Exemplo #1 Basic SwishResults->nextResult() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("lost");
    while($result = $results->nextResult()) {
        /* do something with the result object */
    }

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

SwishResults->getRemovedStopwords
SwishResults->seekResult
Swish Funções


Set current seek pointer to the given position

SwishResults->nextResult
SwishSearch->execute
Swish Funções
PHP Manual

SwishResults->seekResult

(PECL swish >= 0.1.0)

SwishResults->seekResult — Set current seek pointer to the given position

Descrição

int SwishResults->seekResult ( int $position )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

position

Zero-based position number. Cannot be less than zero.

Valor Retornado

Returns new position value on success.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic SwishResults->seekResult() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("lost");

    var_dump($results->seekResult(0)); //this will succeed
    var_dump($results->seekResult(100)); //this will fail

} catch (SwishException $e) {
    echo "Error: ", $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

int(0)
Error: No more results

SwishResults->nextResult
SwishSearch->execute
Swish Funções


Execute the search and get the results

SwishResults->seekResult
SwishSearch->resetLimit
Swish Funções
PHP Manual

SwishSearch->execute

(PECL swish >= 0.1.0)

SwishSearch->execute — Execute the search and get the results

Descrição

object SwishSearch->execute ([ string $query ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Searches the index file(s) based on the parameters set in the search object.

Parâmetros

query

The query string is an optional parameter, it can be also set using Swish->prepare() method. The query string is preserved between executions, so you can set it once, but execute the search multiple times.

Valor Retornado

Returns SwishResults object.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic SwishSearch->execute() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("query");
    echo "First query found: ", $results->hits, " hits\n";

    $results = $search->execute("new OR query");
    echo "Second query found: ", $results->hits, " hits\n";

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 2 hits
Second query found: 12 hits

SwishResults->seekResult
SwishSearch->resetLimit
Swish Funções


Reset the search limits

SwishSearch->execute
SwishSearch->setLimit
Swish Funções
PHP Manual

SwishSearch->resetLimit

(PECL swish >= 0.1.0)

SwishSearch->resetLimit — Reset the search limits

Descrição

void SwishSearch->resetLimit ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Reset the search limits previous set by SwishSearch->setLimit.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic SwishSearch->resetLimit() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("time");
    echo "First query found: ", $results->hits, " hits\n";

    $search->setLimit("swishdocsize", "3000", "6000"); //limit by document size, from 3000 to 6000 bytes
    $results = $search->execute("time");
    echo "Second query found: ", $results->hits, " hits\n";

    $search->resetLimit();
    $results = $search->execute("time");
    echo "Third query found: ", $results->hits, " hits\n";

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 5 hits
Second query found: 2 hits
Third query found: 5 hits

SwishSearch->execute
SwishSearch->setLimit
Swish Funções


Set the search limits

SwishSearch->resetLimit
SwishSearch->setPhraseDelimiter
Swish Funções
PHP Manual

SwishSearch->setLimit

(PECL swish >= 0.1.0)

SwishSearch->setLimit — Set the search limits

Descrição

void SwishSearch->setLimit ( string $property , string $low , string $high )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

property

Search result property name.

low

The lowest value of the property.

high

The highest value of the property.

Valor Retornado

Não há valor retornado.

Erros

Throws SwishException on error.

Exemplos

Exemplo #1 Basic SwishSearch->setLimit() example

<?php
try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("time");
    echo "First query found: ", $results->hits, " hits\n";

    $i = 0;
    while($result = $results->nextResult()) {
        echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
    }

    $search->setLimit("swishdocsize", "3000", "6000"); //limit by document size, from 3000 to 6000 bytes
    $results = $search->execute("time");
    echo "Second query found: ", $results->hits, " hits\n";

    $i = 0;
    while($result = $results->nextResult()) {
        echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
    }

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 5 hits
Hit #1 - 4261 bytes
Hit #2 - 37937 bytes
Hit #3 - 7126 bytes
Hit #4 - 15427 bytes
Hit #5 - 4768 bytes
Second query found: 2 hits
Hit #1 - 4261 bytes
Hit #2 - 4768 bytes

SwishSearch->resetLimit
SwishSearch->setPhraseDelimiter
Swish Funções


Set the phrase delimiter

SwishSearch->setLimit
SwishSearch->setSort
Swish Funções
PHP Manual

SwishSearch->setPhraseDelimiter

(PECL swish >= 0.1.0)

SwishSearch->setPhraseDelimiter — Set the phrase delimiter

Descrição

void SwishSearch->setPhraseDelimiter ( string $delimiter )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

delimiter

Phrase delimiter character. The default delimiter is double-quotes.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic SwishSearch->setPhraseDelimiter() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute('"every time"'); //looking for "every time"
    echo "First query found: ", $results->hits, " hits\n";

    $search->setPhraseDelimiter("'");
    $results = $search->execute("'every time'"); //the same query, but using different delimiter
    echo "Second query found: ", $results->hits, " hits\n";

    $search->setPhraseDelimiter('"');
    $results = $search->execute("'every time'"); //looking for "every" and "time"
    echo "Third query found: ", $results->hits, " hits\n";

    //let's look at parsed words
    var_dump($results->getParsedWords("index.swish-e"));

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 1 hits
Second query found: 1 hits
Third query found: 2 hits
array(2) {
  [0]=>
  string(5) "every"
  [1]=>
  string(4) "time"
}

SwishSearch->setLimit
SwishSearch->setSort
Swish Funções


Set the sort order

SwishSearch->setPhraseDelimiter
SwishSearch->setStructure
Swish Funções
PHP Manual

SwishSearch->setSort

(PECL swish >= 0.1.0)

SwishSearch->setSort — Set the sort order

Descrição

void SwishSearch->setSort ( string $sort )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

sort

Sort order of the results is a string containing name of a result property combined with sort direction ("asc" or "desc"). Examples: "swishrank desc", "swishdocpath asc", "swishtitle asc", "swishdocsize desc", "swishlastmodified desc" etc.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic SwishSearch->setSort() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("time");
    echo "First query found: ", $results->hits, " hits\n";

    $i = 0;
    while($result = $results->nextResult()) {
        echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
    }

    $search->setSort("swishdocsize desc"); //sort by document size
    $results = $search->execute("time");
    echo "Second query found: ", $results->hits, " hits\n";

    $i = 0;
    while($result = $results->nextResult()) {
        echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
    }

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 5 hits
Hit #1 - 4261 bytes
Hit #2 - 37937 bytes
Hit #3 - 7126 bytes
Hit #4 - 15427 bytes
Hit #5 - 4768 bytes
Second query found: 5 hits
Hit #1 - 37937 bytes
Hit #2 - 15427 bytes
Hit #3 - 7126 bytes
Hit #4 - 4768 bytes
Hit #5 - 4261 bytes

SwishSearch->setPhraseDelimiter
SwishSearch->setStructure
Swish Funções


Set the structure flag in the search object

SwishSearch->setSort
Solr
Swish Funções
PHP Manual

SwishSearch->setStructure

(PECL swish >= 0.1.0)

SwishSearch->setStructure — Set the structure flag in the search object

Descrição

void SwishSearch->setStructure ( int $structure )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

structure

The structure flag a bitmask is used to limit search to certain parts of HTML documents (like title, meta, body etc.). Its possible values are listed below. To combine several values use bitwise OR operator, see example below.

  • Swish::IN_FILE

  • Swish::IN_TITLE

  • Swish::IN_HEAD

  • Swish::IN_BODY

  • Swish::IN_COMMENTS

  • Swish::IN_HEADER

  • Swish::IN_EMPHASIZED

  • Swish::IN_META

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic SwishSearch->setStructure() example

<?php

try {

    $swish = new Swish("index.swish-e");
    $search = $swish->prepare();

    $results = $search->execute("time");
    echo "First query found: ", $results->hits, " hits\n";

    $search->setStructure(Swish::IN_TITLE|Swish::IN_HEAD); //search in title and head
    $results = $search->execute("time");
    echo "Second query found: ", $results->hits, " hits\n";

    $search->setStructure(Swish::IN_ALL); //search in whole document, the default value
    $results = $search->execute("time");
    echo "Third query found: ", $results->hits, " hits\n";

} catch (SwishException $e) {
    echo $e->getMessage(), "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

First query found: 5 hits
Second query found: 0 hits
Third query found: 5 hits

SwishSearch->setSort
Solr
Swish Funções


Apache Solr

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Solr Funções
    • solr_get_version — Returns the current version of the Apache Solr extension
  • Exemplos
  • SolrUtils — The SolrUtils class
    • SolrUtils::digestXmlResponse — Parses an response XML string into a SolrObject
    • SolrUtils::escapeQueryChars — Escapes a lucene query string
    • SolrUtils::getSolrVersion — Returns the current version of the Solr extension
    • SolrUtils::queryPhrase — Prepares a phrase from an unescaped lucene string
  • SolrInputDocument — The SolrInputDocument class
    • SolrInputDocument::addField — Adds a field to the document
    • SolrInputDocument::clear — Resets the input document
    • SolrInputDocument::__clone — Creates a copy of a SolrDocument
    • SolrInputDocument::__construct — Constructor
    • SolrInputDocument::deleteField — Removes a field from the document
    • SolrInputDocument::__destruct — Destructor
    • SolrInputDocument::fieldExists — Checks if a field exists
    • SolrInputDocument::getBoost — Retrieves the current boost value for the document
    • SolrInputDocument::getField — Retrieves a field by name
    • SolrInputDocument::getFieldBoost — Retrieves the boost value for a particular field
    • SolrInputDocument::getFieldCount — Returns the number of fields in the document
    • SolrInputDocument::getFieldNames — Returns an array containing all the fields in the document
    • SolrInputDocument::merge — Merges one input document into another
    • SolrInputDocument::reset — This is an alias of SolrInputDocument::clear
    • SolrInputDocument::setBoost — Sets the boost value for this document
    • SolrInputDocument::setFieldBoost — Sets the index-time boost value for a field
    • SolrInputDocument::sort — Sorts the fields within the document
    • SolrInputDocument::toArray — Returns an array representation of the input document
  • SolrDocument — The SolrDocument class
    • SolrDocument::addField — Adds a field to the document
    • SolrDocument::clear — Drops all the fields in the document
    • SolrDocument::__clone — Creates a copy of a SolrDocument object
    • SolrDocument::__construct — Constructor
    • SolrDocument::current — Retrieves the current field
    • SolrDocument::deleteField — Removes a field from the document
    • SolrDocument::__destruct — Destructor
    • SolrDocument::fieldExists — Checks if a field exists in the document
    • SolrDocument::__get — Acess the field as a property
    • SolrDocument::getField — Retrieves a field by name
    • SolrDocument::getFieldCount — Returns the number of fields in this document
    • SolrDocument::getFieldNames — Returns an array of fields names in the document
    • SolrDocument::getInputDocument — Returns a SolrInputDocument equivalent of the object
    • SolrDocument::__isset — Checks if a field exists
    • SolrDocument::key — Retrieves the current key
    • SolrDocument::merge — Merges source to the current SolrDocument
    • SolrDocument::next — Moves the internal pointer to the next field
    • SolrDocument::offsetExists — Checks if a particular field exists
    • SolrDocument::offsetGet — Retrieves a field
    • SolrDocument::offsetSet — Adds a field to the document
    • SolrDocument::offsetUnset — Removes a field
    • SolrDocument::reset — This is an alias to SolrDocument::clear()
    • SolrDocument::rewind — Resets the internal pointer to the beginning
    • SolrDocument::serialize — Used for custom serialization
    • SolrDocument::__set — Adds another field to the document
    • SolrDocument::sort — Sorts the fields in the document
    • SolrDocument::toArray — Returns an array representation of the document
    • SolrDocument::unserialize — Custom serialization of SolrDocument objects
    • SolrDocument::__unset — Removes a field from the document
    • SolrDocument::valid — Checks if the current position internally is still valid
  • SolrDocumentField — The SolrDocumentField class
    • SolrDocumentField::__construct — Constructor
    • SolrDocumentField::__destruct — Destructor
  • SolrObject — The SolrObject class
    • SolrObject::__construct — Creates Solr object
    • SolrObject::__destruct — Destructor
    • SolrObject::getPropertyNames — Returns an array of all the names of the properties
    • SolrObject::offsetExists — Checks if the property exists
    • SolrObject::offsetGet — Used to retrieve a property
    • SolrObject::offsetSet — Sets the value for a property
    • SolrObject::offsetUnset — Sets the value for the property
  • SolrClient — The SolrClient class
    • SolrClient::addDocument — Adds a document to the index
    • SolrClient::addDocuments — Adds a collection of SolrInputDocument instances to the index
    • SolrClient::commit — Finalizes all add/deletes made to the index
    • SolrClient::__construct — Constructor for the SolrClient object
    • SolrClient::deleteById — Delete by Id
    • SolrClient::deleteByIds — Deletes by Ids
    • SolrClient::deleteByQueries — Removes all documents matching any of the queries
    • SolrClient::deleteByQuery — Deletes all documents matching the given query
    • SolrClient::__destruct — Destructor for SolrClient
    • SolrClient::getDebug — Returns the debug data for the last connection attempt
    • SolrClient::getOptions — Returns the client options set internally
    • SolrClient::optimize — Defragments the index
    • SolrClient::ping — Checks if Solr server is still up
    • SolrClient::query — Sends a query to the server
    • SolrClient::request — Sends a raw update request
    • SolrClient::rollback — Rollbacks all add/deletes made to the index since the last commit
    • SolrClient::setResponseWriter — Sets the response writer used to prepare the response from Solr
    • SolrClient::setServlet — Changes the specified servlet type to a new value
    • SolrClient::threads — Checks the threads status
  • SolrResponse — The SolrResponse class
    • SolrResponse::getDigestedResponse — Returns the XML response as serialized PHP data
    • SolrResponse::getHttpStatus — Returns the HTTP status of the response
    • SolrResponse::getHttpStatusMessage — Returns more details on the HTTP status
    • SolrResponse::getRawRequest — Returns the raw request sent to the Solr server
    • SolrResponse::getRawRequestHeaders — Returns the raw request headers sent to the Solr server
    • SolrResponse::getRawResponse — Returns the raw response from the server
    • SolrResponse::getRawResponseHeaders — Returns the raw response headers from the server
    • SolrResponse::getRequestUrl — Returns the full URL the request was sent to
    • SolrResponse::getResponse — Returns a SolrObject representing the XML response from the server
    • SolrResponse::setParseMode — Sets the parse mode
    • SolrResponse::success — Was the request a success
  • SolrQueryResponse — The SolrQueryResponse class
    • SolrQueryResponse::__construct — Constructor
    • SolrQueryResponse::__destruct — Destructor
  • SolrUpdateResponse — The SolrUpdateResponse class
    • SolrUpdateResponse::__construct — Constructor
    • SolrUpdateResponse::__destruct — Destructor
  • SolrPingResponse — The SolrPingResponse class
    • SolrPingResponse::__construct — Constructor
    • SolrPingResponse::__destruct — Destructor
    • SolrPingResponse::getResponse — Returns the response from the server
  • SolrGenericResponse — The SolrGenericResponse class
    • SolrGenericResponse::__construct — Constructor
    • SolrGenericResponse::__destruct — Destructor
  • SolrParams — The SolrParams class
    • SolrParams::add — This is an alias for SolrParams::addParam
    • SolrParams::addParam — Adds a parameter to the object
    • SolrParams::get — This is an alias for SolrParams::getParam
    • SolrParams::getParam — Returns a parameter value
    • SolrParams::getParams — Returns an array of non URL-encoded parameters
    • SolrParams::getPreparedParams — Returns an array of URL-encoded parameters
    • SolrParams::serialize — Used for custom serialization
    • SolrParams::set — An alias of SolrParams::setParam
    • SolrParams::setParam — Sets the parameter to the specified value
    • SolrParams::toString — Returns all the name-value pair parameters in the object
    • SolrParams::unserialize — Used for custom serialization
  • SolrModifiableParams — The SolrModifiableParams class
    • SolrModifiableParams::__construct — Constructor
    • SolrModifiableParams::__destruct — Destructor
  • SolrQuery — The SolrQuery class
    • SolrQuery::addFacetDateField — Maps to facet.date
    • SolrQuery::addFacetDateOther — Adds another facet.date.other parameter
    • SolrQuery::addFacetField — Adds another field to the facet
    • SolrQuery::addFacetQuery — Adds a facet query
    • SolrQuery::addField — Specifies which fields to return in the result
    • SolrQuery::addFilterQuery — Specifies a filter query
    • SolrQuery::addHighlightField — Maps to hl.fl
    • SolrQuery::addMltField — Sets a field to use for similarity
    • SolrQuery::addMltQueryField — Maps to mlt.qf
    • SolrQuery::addSortField — Used to control how the results should be sorted
    • SolrQuery::addStatsFacet — Requests a return of sub results for values within the given facet
    • SolrQuery::addStatsField — Maps to stats.field parameter
    • SolrQuery::__construct — Constructor
    • SolrQuery::__destruct — Destructor
    • SolrQuery::getFacet — Returns the value of the facet parameter
    • SolrQuery::getFacetDateEnd — Returns the value for the facet.date.end parameter
    • SolrQuery::getFacetDateFields — Returns all the facet.date fields
    • SolrQuery::getFacetDateGap — Returns the value of the facet.date.gap parameter
    • SolrQuery::getFacetDateHardEnd — Returns the value of the facet.date.hardend parameter
    • SolrQuery::getFacetDateOther — Returns the value for the facet.date.other parameter
    • SolrQuery::getFacetDateStart — Returns the lower bound for the first date range for all date faceting on this field
    • SolrQuery::getFacetFields — Returns all the facet fields
    • SolrQuery::getFacetLimit — Returns the maximum number of constraint counts that should be returned for the facet fields
    • SolrQuery::getFacetMethod — Returns the value of the facet.method parameter
    • SolrQuery::getFacetMinCount — Returns the minimum counts for facet fields should be included in the response
    • SolrQuery::getFacetMissing — Returns the current state of the facet.missing parameter
    • SolrQuery::getFacetOffset — Returns an offset into the list of constraints to be used for pagination
    • SolrQuery::getFacetPrefix — Returns the facet prefix
    • SolrQuery::getFacetQueries — Returns all the facet queries
    • SolrQuery::getFacetSort — Returns the facet sort type
    • SolrQuery::getFields — Returns the list of fields that will be returned in the response
    • SolrQuery::getFilterQueries — Returns an array of filter queries
    • SolrQuery::getHighlight — Returns the state of the hl parameter
    • SolrQuery::getHighlightAlternateField — Returns the highlight field to use as backup or default
    • SolrQuery::getHighlightFields — Returns all the fields that Solr should generate highlighted snippets for
    • SolrQuery::getHighlightFormatter — Returns the formatter for the highlighted output
    • SolrQuery::getHighlightFragmenter — Returns the text snippet generator for highlighted text
    • SolrQuery::getHighlightFragsize — Returns the number of characters of fragments to consider for highlighting
    • SolrQuery::getHighlightHighlightMultiTerm — Returns whether or not to enable highlighting for range/wildcard/fuzzy/prefix queries
    • SolrQuery::getHighlightMaxAlternateFieldLength — Returns the maximum number of characters of the field to return
    • SolrQuery::getHighlightMaxAnalyzedChars — Returns the maximum number of characters into a document to look for suitable snippets
    • SolrQuery::getHighlightMergeContiguous — Returns whether or not the collapse contiguous fragments into a single fragment
    • SolrQuery::getHighlightRegexMaxAnalyzedChars — Returns the maximum number of characters from a field when using the regex fragmenter
    • SolrQuery::getHighlightRegexPattern — Returns the regular expression for fragmenting
    • SolrQuery::getHighlightRegexSlop — Returns the deviation factor from the ideal fragment size
    • SolrQuery::getHighlightRequireFieldMatch — Returns if a field will only be highlighted if the query matched in this particular field
    • SolrQuery::getHighlightSimplePost — Returns the text which appears after a highlighted term
    • SolrQuery::getHighlightSimplePre — Returns the text which appears before a highlighted term
    • SolrQuery::getHighlightSnippets — Returns the maximum number of highlighted snippets to generate per field
    • SolrQuery::getHighlightUsePhraseHighlighter — Returns the state of the hl.usePhraseHighlighter parameter
    • SolrQuery::getMlt — Returns whether or not MoreLikeThis results should be enabled
    • SolrQuery::getMltBoost — Returns whether or not the query will be boosted by the interesting term relevance
    • SolrQuery::getMltCount — Returns the number of similar documents to return for each result
    • SolrQuery::getMltFields — Returns all the fields to use for similarity
    • SolrQuery::getMltMaxNumQueryTerms — Returns the maximum number of query terms that will be included in any generated query
    • SolrQuery::getMltMaxNumTokens — Returns the maximum number of tokens to parse in each document field that is not stored with TermVector support
    • SolrQuery::getMltMaxWordLength — Returns the maximum word length above which words will be ignored
    • SolrQuery::getMltMinDocFrequency — Returns the treshold frequency at which words will be ignored which do not occur in at least this many docs
    • SolrQuery::getMltMinTermFrequency — Returns the frequency below which terms will be ignored in the source document
    • SolrQuery::getMltMinWordLength — Returns the minimum word length below which words will be ignored
    • SolrQuery::getMltQueryFields — Returns the query fields and their boosts
    • SolrQuery::getQuery — Returns the main query
    • SolrQuery::getRows — Returns the maximum number of documents
    • SolrQuery::getSortFields — Returns all the sort fields
    • SolrQuery::getStart — Returns the offset in the complete result set
    • SolrQuery::getStats — Returns whether or not stats is enabled
    • SolrQuery::getStatsFacets — Returns all the stats facets that were set
    • SolrQuery::getStatsFields — Returns all the statistics fields
    • SolrQuery::getTerms — Returns whether or not the TermsComponent is enabled
    • SolrQuery::getTermsField — Returns the field from which the terms are retrieved
    • SolrQuery::getTermsIncludeLowerBound — Returns whether or not to include the lower bound in the result set
    • SolrQuery::getTermsIncludeUpperBound — Returns whether or not to include the upper bound term in the result set
    • SolrQuery::getTermsLimit — Returns the maximum number of terms Solr should return
    • SolrQuery::getTermsLowerBound — Returns the term to start at
    • SolrQuery::getTermsMaxCount — Returns the maximum document frequency
    • SolrQuery::getTermsMinCount — Returns the minimum document frequency to return in order to be included
    • SolrQuery::getTermsPrefix — Returns the term prefix
    • SolrQuery::getTermsReturnRaw — Whether or not to return raw characters
    • SolrQuery::getTermsSort — Returns an integer indicating how terms are sorted
    • SolrQuery::getTermsUpperBound — Returns the term to stop at
    • SolrQuery::getTimeAllowed — Returns the time in milliseconds allowed for the query to finish
    • SolrQuery::removeFacetDateField — Removes one of the facet date fields
    • SolrQuery::removeFacetDateOther — Removes one of the facet.date.other parameters
    • SolrQuery::removeFacetField — Removes one of the facet.date parameters
    • SolrQuery::removeFacetQuery — Removes one of the facet.query parameters
    • SolrQuery::removeField — Removes a field from the list of fields
    • SolrQuery::removeFilterQuery — Removes a filter query
    • SolrQuery::removeHighlightField — Removes one of the fields used for highlighting
    • SolrQuery::removeMltField — Removes one of the moreLikeThis fields
    • SolrQuery::removeMltQueryField — Removes one of the moreLikeThis query fields
    • SolrQuery::removeSortField — Removes one of the sort fields
    • SolrQuery::removeStatsFacet — Removes one of the stats.facet parameters
    • SolrQuery::removeStatsField — Removes one of the stats.field parameters
    • SolrQuery::setEchoHandler — Toggles the echoHandler parameter
    • SolrQuery::setEchoParams — Determines what kind of parameters to include in the response
    • SolrQuery::setExplainOther — Sets the explainOther common query parameter
    • SolrQuery::setFacet — Maps to the facet parameter. Enables or disables facetting
    • SolrQuery::setFacetDateEnd — Maps to facet.date.end
    • SolrQuery::setFacetDateGap — Maps to facet.date.gap
    • SolrQuery::setFacetDateHardEnd — Maps to facet.date.hardend
    • SolrQuery::setFacetDateStart — Maps to facet.date.start
    • SolrQuery::setFacetEnumCacheMinDefaultFrequency — Sets the minimum document frequency used for determining term count
    • SolrQuery::setFacetLimit — Maps to facet.limit
    • SolrQuery::setFacetMethod — Specifies the type of algorithm to use when faceting a field
    • SolrQuery::setFacetMinCount — Maps to facet.mincount
    • SolrQuery::setFacetMissing — Maps to facet.missing
    • SolrQuery::setFacetOffset — Sets the offset into the list of constraints to allow for pagination
    • SolrQuery::setFacetPrefix — Specifies a string prefix with which to limits the terms on which to facet
    • SolrQuery::setFacetSort — Determines the ordering of the facet field constraints
    • SolrQuery::setHighlight — Enables or disables highlighting
    • SolrQuery::setHighlightAlternateField — Specifies the backup field to use
    • SolrQuery::setHighlightFormatter — Specify a formatter for the highlight output
    • SolrQuery::setHighlightFragmenter — Sets a text snippet generator for highlighted text
    • SolrQuery::setHighlightFragsize — The size of fragments to consider for highlighting
    • SolrQuery::setHighlightHighlightMultiTerm — Use SpanScorer to highlight phrase terms
    • SolrQuery::setHighlightMaxAlternateFieldLength — Sets the maximum number of characters of the field to return
    • SolrQuery::setHighlightMaxAnalyzedChars — Specifies the number of characters into a document to look for suitable snippets
    • SolrQuery::setHighlightMergeContiguous — Whether or not to collapse contiguous fragments into a single fragment
    • SolrQuery::setHighlightRegexMaxAnalyzedChars — Specify the maximum number of characters to analyze
    • SolrQuery::setHighlightRegexPattern — Specify the regular expression for fragmenting
    • SolrQuery::setHighlightRegexSlop — Sets the factor by which the regex fragmenter can stray from the ideal fragment size
    • SolrQuery::setHighlightRequireFieldMatch — Require field matching during highlighting
    • SolrQuery::setHighlightSimplePost — Sets the text which appears after a highlighted term
    • SolrQuery::setHighlightSimplePre — Sets the text which appears before a highlighted term
    • SolrQuery::setHighlightSnippets — Sets the maximum number of highlighted snippets to generate per field
    • SolrQuery::setHighlightUsePhraseHighlighter — Whether to highlight phrase terms only when they appear within the query phrase
    • SolrQuery::setMlt — Enables or disables moreLikeThis
    • SolrQuery::setMltBoost — Set if the query will be boosted by the interesting term relevance
    • SolrQuery::setMltCount — Set the number of similar documents to return for each result
    • SolrQuery::setMltMaxNumQueryTerms — Sets the maximum number of query terms included
    • SolrQuery::setMltMaxNumTokens — Specifies the maximum number of tokens to parse
    • SolrQuery::setMltMaxWordLength — Sets the maximum word length
    • SolrQuery::setMltMinDocFrequency — Sets the mltMinDoc frequency
    • SolrQuery::setMltMinTermFrequency — Sets the frequency below which terms will be ignored in the source docs
    • SolrQuery::setMltMinWordLength — Sets the minimum word length
    • SolrQuery::setOmitHeader — Exclude the header from the returned results
    • SolrQuery::setQuery — Sets the search query
    • SolrQuery::setRows — Specifies the maximum number of rows to return in the result
    • SolrQuery::setShowDebugInfo — Flag to show debug information
    • SolrQuery::setStart — Specifies the number of rows to skip
    • SolrQuery::setStats — Enables or disables the Stats component
    • SolrQuery::setTerms — Enables or disables the TermsComponent
    • SolrQuery::setTermsField — Sets the name of the field to get the Terms from
    • SolrQuery::setTermsIncludeLowerBound — Include the lower bound term in the result set
    • SolrQuery::setTermsIncludeUpperBound — Include the upper bound term in the result set
    • SolrQuery::setTermsLimit — Sets the maximum number of terms to return
    • SolrQuery::setTermsLowerBound — Specifies the Term to start from
    • SolrQuery::setTermsMaxCount — Sets the maximum document frequency
    • SolrQuery::setTermsMinCount — Sets the minimum document frequency
    • SolrQuery::setTermsPrefix — Restrict matches to terms that start with the prefix
    • SolrQuery::setTermsReturnRaw — Return the raw characters of the indexed term
    • SolrQuery::setTermsSort — Specifies how to sort the returned terms
    • SolrQuery::setTermsUpperBound — Sets the term to stop at
    • SolrQuery::setTimeAllowed — The time allowed for search to finish
  • SolrException — The SolrException class
    • SolrException::getInternalInfo — Returns internal information where the Exception was thrown
  • SolrClientException — The SolrClientException class
    • SolrClientException::getInternalInfo — Returns internal information where the Exception was thrown
  • SolrIllegalArgumentException — The SolrIllegalArgumentException class
    • SolrIllegalArgumentException::getInternalInfo — Returns internal information where the Exception was thrown
  • SolrIllegalOperationException — The SolrIllegalOperationException class
    • SolrIllegalOperationException::getInternalInfo — Returns internal information where the Exception was thrown
SwishSearch->setStructure
Introdução
Extensões de Search Engine


Introdução

The Solr extension allows you to communicate effectively with the Apache Solr server in PHP 5.

The Solr extension is an extremely fast, light-weight, feature-rich library that allows PHP developers to communicate effectively with Solr server instances.

It is compatible with both versions 1.3 and 1.4 of Apache Solr.

There are built-in tools to add documents and make updates to the solr server.

It also contains tools that allows you to build advanced queries to the server when searching for documents.

Solr
Instalação/Configuração
Solr


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Solr


Dependências

PHP version 5.2.11 or later is required.

The libxml and curl extensions must also be enabled for the Apache Solr extension to be available.

libxml2 2.6.31 or later is required.

libcurl 7.18.0 or later is also required.

The above library versions are required and attempting to hack the code to make it compile is strongly discouraged. It will fail, possibly with errors that could be hard to debug

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/solr.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Nota:

The solr module can be compiled in debug mode by passing the --enable-solr-debug flag to configure

When building manually, be sure to include curl and libxml support within the build.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SOLR_MAJOR_VERSION (integer)
SOLR_MINOR_VERSION (integer)
SOLR_PATCH_VERSION (integer)
SOLR_EXTENSION_VERSION (string)

Tipos Resource
Solr Funções
Solr


Solr Funções

Índice

  • solr_get_version — Returns the current version of the Apache Solr extension
Constantes pré-definidas
solr_get_version
Solr


Returns the current version of the Apache Solr extension

Solr Funções
Exemplos
Solr Funções
PHP Manual

solr_get_version

(PECL solr >= 0.9.1)

solr_get_version — Returns the current version of the Apache Solr extension

Descrição

string solr_get_version ( void )

This function returns the current version of the extension as a string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

It returns a string on success and FALSE on failure.

Erros

This function throws no errors or exceptions.

Exemplos

Exemplo #1 solr_get_version() example

Any text that describes the purpose of the example, or what goes on in the example should be here.

<?php

$solr_version = solr_get_version();

print $solr_version;

?>

O exemplo acima irá imprimir algo similar a:

0.9.6

Veja Também

  • SolrUtils::getSolrVersion() - Returns the current version of the Solr extension

Solr Funções
Exemplos
Solr Funções


Exemplos

Examples of how to use the Apache Solr extension in PHP

Exemplo #2 Contents of the BootStrap file

<?php

/* Domain name of the Solr server */
define('SOLR_SERVER_HOSTNAME', 'solr.example.com');

/* Whether or not to run in secure mode */
define('SOLR_SECURE', true);

/* HTTP Port to connection */
define('SOLR_SERVER_PORT', ((SOLR_SECURE) ? 8443 : 8983));

/* HTTP Basic Authentication Username */
define('SOLR_SERVER_USERNAME', 'admin');

/* HTTP Basic Authentication password */
define('SOLR_SERVER_PASSWORD', 'changeit');

/* HTTP connection timeout */
/* This is maximum time in seconds allowed for the http data transfer operation. Default value is 30 seconds */
define('SOLR_SERVER_TIMEOUT', 10);

/* File name to a PEM-formatted private key + private certificate (concatenated in that order) */
define('SOLR_SSL_CERT', 'certs/combo.pem');

/* File name to a PEM-formatted private certificate only */
define('SOLR_SSL_CERT_ONLY', 'certs/solr.crt');

/* File name to a PEM-formatted private key */
define('SOLR_SSL_KEY', 'certs/solr.key');

/* Password for PEM-formatted private key file */
define('SOLR_SSL_KEYPASSWORD', 'StrongAndSecurePassword');

/* Name of file holding one or more CA certificates to verify peer with*/
define('SOLR_SSL_CAINFO', 'certs/cacert.crt');

/* Name of directory holding multiple CA certificates to verify peer with */
define('SOLR_SSL_CAPATH', 'certs/');

?>

Exemplo #3 Adding a document to the index

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$doc = new SolrInputDocument();

$doc->addField('id', 334455);
$doc->addField('cat', 'Software');
$doc->addField('cat', 'Lucene');

$updateResponse = $client->addDocument($doc);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 446
        )

)

Exemplo #4 Merging one document into another document

<?php

include "bootstrap.php";

$doc = new SolrDocument();

$second_doc = new SolrDocument();

$doc->addField('id', 1123);

$doc->features = "PHP Client Side";
$doc->features = "Fast development cycles";

$doc['cat'] = 'Software';
$doc['cat'] = 'Custom Search';
$doc->cat   = 'Information Technology';

$second_doc->addField('cat', 'Lucene Search');

$second_doc->merge($doc, true);

print_r($second_doc->toArray());

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [document_boost] => 0
    [field_count] => 3
    [fields] => Array
        (
            [0] => SolrDocumentField Object
                (
                    [name] => cat
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => Software
                            [1] => Custom Search
                            [2] => Information Technology
                        )

                )

            [1] => SolrDocumentField Object
                (
                    [name] => id
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => 1123
                        )

                )

            [2] => SolrDocumentField Object
                (
                    [name] => features
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => PHP Client Side
                            [1] => Fast development cycles
                        )

                )

        )

)

Exemplo #5 Searching for documents - SolrObject responses

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setQuery('lucene');

$query->setStart(0);

$query->setRows(50);

$query->addField('cat')->addField('features')->addField('id')->addField('timestamp');

$query_response = $client->query($query);

$response = $query_response->getResponse();

print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
            [params] => SolrObject Object
                (
                    [wt] => xml
                    [rows] => 50
                    [start] => 0
                    [indent] => on
                    [q] => lucene
                    [fl] => cat,features,id,timestamp
                    [version] => 2.2
                )

        )

    [response] => SolrObject Object
        (
            [numFound] => 3
            [start] => 0
            [docs] => Array
                (
                    [0] => SolrObject Object
                        (
                            [cat] => Array
                                (
                                    [0] => Software
                                    [1] => Lucene
                                )

                            [id] => 334456
                        )

                    [1] => SolrObject Object
                        (
                            [cat] => Array
                                (
                                    [0] => Software
                                    [1] => Lucene
                                )

                            [id] => 334455
                        )

                    [2] => SolrObject Object
                        (
                            [cat] => Array
                                (
                                    [0] => software
                                    [1] => search
                                )

                            [features] => Array
                                (
                                    [0] => Advanced Full-Text Search Capabilities using Lucene
                                    [1] => Optimized for High Volume Web Traffic
                                    [2] => Standards Based Open Interfaces - XML and HTTP
                                    [3] => Comprehensive HTML Administration Interfaces
                                    [4] => Scalability - Efficient Replication to other Solr Search Servers
                                    [5] => Flexible and Adaptable with XML configuration and Schema
                                    [6] => Good unicode support: héllo (hello with an accent over the e)
                                )

                            [id] => SOLR1000
                            [timestamp] => 2009-09-04T20:38:55.906
                        )

                )

        )

)

Exemplo #6 Searching for documents - SolrDocument responses

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setQuery('lucene');

$query->setStart(0);

$query->setRows(50);

$query->addField('cat')->addField('features')->addField('id')->addField('timestamp');

$query_response = $client->query($query);

$query_response->setParseMode(SolrQueryResponse::PARSE_SOLR_DOC);

$response = $query_response->getResponse();

print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
            [params] => SolrObject Object
                (
                    [wt] => xml
                    [rows] => 50
                    [start] => 0
                    [indent] => on
                    [q] => lucene
                    [fl] => cat,features,id,timestamp
                    [version] => 2.2
                )

        )

    [response] => SolrObject Object
        (
            [numFound] => 3
            [start] => 0
            [docs] => Array
                (
                    [0] => SolrDocument Object
                        (
                            [_hashtable_index:SolrDocument:private] => 19740
                        )

                    [1] => SolrDocument Object
                        (
                            [_hashtable_index:SolrDocument:private] => 25485
                        )

                    [2] => SolrDocument Object
                        (
                            [_hashtable_index:SolrDocument:private] => 25052
                        )

                )

        )

)

Exemplo #7 Simple TermsComponent example - basic

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setTerms(true);

$query->setTermsField('cat');

$updateResponse = $client->query($query);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 2
        )

    [terms] => SolrObject Object
        (
            [cat] => SolrObject Object
                (
                    [electronics] => 14
                    [Lucene] => 4
                    [Software] => 4
                    [memory] => 3
                    [card] => 2
                    [connector] => 2
                    [drive] => 2
                    [graphics] => 2
                    [hard] => 2
                    [monitor] => 2
                )

        )

)

Exemplo #8 Simple TermsComponent example - using a prefix

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setTerms(true);

/* Return only terms starting with $prefix */
$prefix = 'c';

$query->setTermsField('cat')->setTermsPrefix($prefix);

$updateResponse = $client->query($query);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
        )

    [terms] => SolrObject Object
        (
            [cat] => SolrObject Object
                (
                    [card] => 2
                    [connector] => 2
                    [camera] => 1
                    [copier] => 1
                )

        )

)

Exemplo #9 Simple TermsComponent example - specifying a minimum frequency

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setTerms(true);

/* Return only terms starting with $prefix */
$prefix = 'c';

/* Return only terms with a frequency of 2 or greater */
$min_frequency = 2;

$query->setTermsField('cat')->setTermsPrefix($prefix)->setTermsMinCount($min_frequency);

$updateResponse = $client->query($query);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 0
        )

    [terms] => SolrObject Object
        (
            [cat] => SolrObject Object
                (
                    [card] => 2
                    [connector] => 2
                )

        )

)

Exemplo #10 Simple Facet Example

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery('*:*');

$query->setFacet(true);

$query->addFacetField('cat')->addFacetField('name')->setFacetMinCount(2);

$updateResponse = $client->query($query);

$response_array = $updateResponse->getResponse();

$facet_data = $response_array->facet_counts->facet_fields;

print_r($facet_data);

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [cat] => SolrObject Object
        (
            [electronics] => 14
            [memory] => 3
            [Lucene] => 2
            [Software] => 2
            [card] => 2
            [connector] => 2
            [drive] => 2
            [graphics] => 2
            [hard] => 2
            [monitor] => 2
            [search] => 2
            [software] => 2
        )

    [name] => SolrObject Object
        (
            [gb] => 6
            [1] => 3
            [184] => 3
            [2] => 3
            [3200] => 3
            [400] => 3
            [500] => 3
            [ddr] => 3
            [i] => 3
            [ipod] => 3
            [memori] => 3
            [pc] => 3
            [pin] => 3
            [pod] => 3
            [sdram] => 3
            [system] => 3
            [unbuff] => 3
            [canon] => 2
            [corsair] => 2
            [drive] => 2
            [hard] => 2
            [mb] => 2
            [n] => 2
            [power] => 2
            [retail] => 2
            [video] => 2
            [x] => 2
        )

)

Exemplo #11 Simple Facet Example - with optional field override for mincount

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery('*:*');

$query->setFacet(true);

$query->addFacetField('cat')->addFacetField('name')->setFacetMinCount(2)->setFacetMinCount(4, 'name');

$updateResponse = $client->query($query);

$response_array = $updateResponse->getResponse();

$facet_data = $response_array->facet_counts->facet_fields;

print_r($facet_data);

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [cat] => SolrObject Object
        (
            [electronics] => 14
            [memory] => 3
            [Lucene] => 2
            [Software] => 2
            [card] => 2
            [connector] => 2
            [drive] => 2
            [graphics] => 2
            [hard] => 2
            [monitor] => 2
            [search] => 2
            [software] => 2
        )

    [name] => SolrObject Object
        (
            [gb] => 6
        )

)

Exemplo #12 Connecting to SSL-Enabled Server

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
    'timeout'  => SOLR_SERVER_TIMEOUT,
    'secure'   => SOLR_SECURE,
    'ssl_cert' => SOLR_SSL_CERT_ONLY,
    'ssl_key'  => SOLR_SSL_KEY,
    'ssl_keypassword' => SOLR_SSL_KEYPASSWORD,
    'ssl_cainfo' => SOLR_SSL_CAINFO,
);

$client = new SolrClient($options);

$query = new SolrQuery('*:*');

$query->setFacet(true);

$query->addFacetField('cat')->addFacetField('name')->setFacetMinCount(2)->setFacetMinCount(4, 'name');

$updateResponse = $client->query($query);

$response_array = $updateResponse->getResponse();

$facet_data = $response_array->facet_counts->facet_fields;

print_r($facet_data);

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [cat] => SolrObject Object
        (
            [electronics] => 14
            [memory] => 3
            [Lucene] => 2
            [Software] => 2
            [card] => 2
            [connector] => 2
            [drive] => 2
            [graphics] => 2
            [hard] => 2
            [monitor] => 2
            [search] => 2
            [software] => 2
        )

    [name] => SolrObject Object
        (
            [gb] => 6
        )

)
solr_get_version
SolrUtils
Solr


The SolrUtils class

Introdução

Contains utility methods for retrieving the current extension version and preparing query phrases.

Also contains method for escaping query strings and parsing XML responses.

Sinopse da classe

abstract SolrUtils {
/* Methods */
public static SolrObject digestXmlResponse ( string $xmlresponse [, int $parse_mode = 0 ] )
public static string escapeQueryChars ( string $str )
public static string getSolrVersion ( void )
public static string queryPhrase ( string $str )
}

Índice

  • SolrUtils::digestXmlResponse — Parses an response XML string into a SolrObject
  • SolrUtils::escapeQueryChars — Escapes a lucene query string
  • SolrUtils::getSolrVersion — Returns the current version of the Solr extension
  • SolrUtils::queryPhrase — Prepares a phrase from an unescaped lucene string
Exemplos
SolrUtils::digestXmlResponse
Solr


Parses an response XML string into a SolrObject

SolrUtils
SolrUtils::escapeQueryChars
SolrUtils
PHP Manual

SolrUtils::digestXmlResponse

(PECL solr >= 0.9.2)

SolrUtils::digestXmlResponse — Parses an response XML string into a SolrObject

Descrição

public static SolrObject SolrUtils::digestXmlResponse ( string $xmlresponse [, int $parse_mode = 0 ] )

This method parses an response XML string from the Apache Solr server into a SolrObject. It throws a SolrException if there was an error.

Parâmetros

xmlresponse

The XML response string from the Solr server.

parse_mode

Use SolrResponse::PARSE_SOLR_OBJ or SolrResponse::PARSE_SOLR_DOC

Valor Retornado

Returns the SolrObject representing the XML response.

If the parse_mode parameter is set to SolrResponse::PARSE_SOLR_OBJ Solr documents will be parses as SolrObject instances.

If it is set to SolrResponse::PARSE_SOLR_DOC, they will be parsed as SolrDocument instances.

SolrUtils
SolrUtils::escapeQueryChars
SolrUtils


Escapes a lucene query string

SolrUtils::digestXmlResponse
SolrUtils::getSolrVersion
SolrUtils
PHP Manual

SolrUtils::escapeQueryChars

(PECL solr >= 0.9.2)

SolrUtils::escapeQueryChars — Escapes a lucene query string

Descrição

public static string SolrUtils::escapeQueryChars ( string $str )

Lucene supports escaping special characters that are part of the query syntax.

The current list special characters are:

+ - && || ! ( ) { } [ ] ^ " ~ * ? : \

These characters are part of the query syntax and must be escaped

Parâmetros

str

This is the query string to be escaped.

Valor Retornado

Returns the escaped string or FALSE on failure.

SolrUtils::digestXmlResponse
SolrUtils::getSolrVersion
SolrUtils


Returns the current version of the Solr extension

SolrUtils::escapeQueryChars
SolrUtils::queryPhrase
SolrUtils
PHP Manual

SolrUtils::getSolrVersion

(PECL solr >= 0.9.2)

SolrUtils::getSolrVersion — Returns the current version of the Solr extension

Descrição

public static string SolrUtils::getSolrVersion ( void )

Returns the current Solr version.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The current version of the Apache Solr extension.

SolrUtils::escapeQueryChars
SolrUtils::queryPhrase
SolrUtils


Prepares a phrase from an unescaped lucene string

SolrUtils::getSolrVersion
SolrInputDocument
SolrUtils
PHP Manual

SolrUtils::queryPhrase

(PECL solr >= 0.9.2)

SolrUtils::queryPhrase — Prepares a phrase from an unescaped lucene string

Descrição

public static string SolrUtils::queryPhrase ( string $str )

Prepares a phrase from an unescaped lucene string.

Parâmetros

str

The lucene phrase.

Valor Retornado

Returns the phrase contained in double quotes.

SolrUtils::getSolrVersion
SolrInputDocument
SolrUtils


The SolrInputDocument class

Introdução

This class represents a Solr document that is about to be submitted to the Solr index.

Sinopse da classe

final SolrInputDocument {
/* Constants */
const integer SolrInputDocument::SORT_DEFAULT = 1 ;
const integer SolrInputDocument::SORT_ASC = 1 ;
const integer SolrInputDocument::SORT_DESC = 2 ;
const integer SolrInputDocument::SORT_FIELD_NAME = 1 ;
const integer SolrInputDocument::SORT_FIELD_VALUE_COUNT = 2 ;
const integer SolrInputDocument::SORT_FIELD_BOOST_VALUE = 4 ;
/* Methods */
public bool addField ( string $fieldName , string $fieldValue [, float $fieldBoostValue = 0.0 ] )
public bool clear ( void )
public void __clone ( void )
__construct ( void )
public bool deleteField ( string $fieldName )
public void __destruct ( void )
public bool fieldExists ( string $fieldName )
public float getBoost ( void )
public SolrDocumentField getField ( string $fieldName )
public float getFieldBoost ( string $fieldName )
public int getFieldCount ( void )
public array getFieldNames ( void )
public bool merge ( SolrInputDocument $sourceDoc [, bool $overwrite = true ] )
public bool reset ( void )
public bool setBoost ( float $documentBoostValue )
public bool setFieldBoost ( string $fieldName , float $fieldBoostValue )
public bool sort ( int $sortOrderBy [, int $sortDirection = SolrInputDocument::SORT_ASC ] )
public array toArray ( void )
}

Constantes pré-definidas

SolrInputDocument Class Constants

SolrInputDocument::SORT_DEFAULT

Sorts the fields in ascending order.

SolrInputDocument::SORT_ASC

Sorts the fields in ascending order.

SolrInputDocument::SORT_DESC

Sorts the fields in descending order.

SolrInputDocument::SORT_FIELD_NAME

Sorts the fields by name

SolrInputDocument::SORT_FIELD_VALUE_COUNT

Sorts the fields by number of values.

SolrInputDocument::SORT_FIELD_BOOST_VALUE

Sorts the fields by boost value.

Índice

  • SolrInputDocument::addField — Adds a field to the document
  • SolrInputDocument::clear — Resets the input document
  • SolrInputDocument::__clone — Creates a copy of a SolrDocument
  • SolrInputDocument::__construct — Constructor
  • SolrInputDocument::deleteField — Removes a field from the document
  • SolrInputDocument::__destruct — Destructor
  • SolrInputDocument::fieldExists — Checks if a field exists
  • SolrInputDocument::getBoost — Retrieves the current boost value for the document
  • SolrInputDocument::getField — Retrieves a field by name
  • SolrInputDocument::getFieldBoost — Retrieves the boost value for a particular field
  • SolrInputDocument::getFieldCount — Returns the number of fields in the document
  • SolrInputDocument::getFieldNames — Returns an array containing all the fields in the document
  • SolrInputDocument::merge — Merges one input document into another
  • SolrInputDocument::reset — This is an alias of SolrInputDocument::clear
  • SolrInputDocument::setBoost — Sets the boost value for this document
  • SolrInputDocument::setFieldBoost — Sets the index-time boost value for a field
  • SolrInputDocument::sort — Sorts the fields within the document
  • SolrInputDocument::toArray — Returns an array representation of the input document
SolrUtils::queryPhrase
SolrInputDocument::addField
Solr


Adds a field to the document

SolrInputDocument
SolrInputDocument::clear
SolrInputDocument
PHP Manual

SolrInputDocument::addField

(PECL solr >= 0.9.2)

SolrInputDocument::addField — Adds a field to the document

Descrição

public bool SolrInputDocument::addField ( string $fieldName , string $fieldValue [, float $fieldBoostValue = 0.0 ] )

For multi-value fields, if a valid boost value is specified, the specified value will be multiplied by the current boost value for this field.

Parâmetros

fieldName

The name of the field

fieldValue

The value for the field.

fieldBoostValue

The index time boost for the field. Though this cannot be negative, you can still pass values less than 1.0 but they must be greater than zero.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument
SolrInputDocument::clear
SolrInputDocument


Resets the input document

SolrInputDocument::addField
SolrInputDocument::__clone
SolrInputDocument
PHP Manual

SolrInputDocument::clear

(PECL solr >= 0.9.2)

SolrInputDocument::clear — Resets the input document

Descrição

public bool SolrInputDocument::clear ( void )

Resets the document by dropping all the fields and resets the document boost to zero.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument::addField
SolrInputDocument::__clone
SolrInputDocument


Creates a copy of a SolrDocument

SolrInputDocument::clear
SolrInputDocument::__construct
SolrInputDocument
PHP Manual

SolrInputDocument::__clone

(PECL solr >= 0.9.2)

SolrInputDocument::__clone — Creates a copy of a SolrDocument

Descrição

public void SolrInputDocument::__clone ( void )

Should not be called directly. It is used to create a deep copy of a SolrInputDocument.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Creates a new SolrInputDocument instance.

SolrInputDocument::clear
SolrInputDocument::__construct
SolrInputDocument


Constructor

SolrInputDocument::__clone
SolrInputDocument::deleteField
SolrInputDocument
PHP Manual

SolrInputDocument::__construct

(PECL solr >= 0.9.2)

SolrInputDocument::__construct — Constructor

Descrição

SolrInputDocument::__construct ( void )

Constructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrInputDocument::__clone
SolrInputDocument::deleteField
SolrInputDocument


Removes a field from the document

SolrInputDocument::__construct
SolrInputDocument::__destruct
SolrInputDocument
PHP Manual

SolrInputDocument::deleteField

(PECL solr >= 0.9.2)

SolrInputDocument::deleteField — Removes a field from the document

Descrição

public bool SolrInputDocument::deleteField ( string $fieldName )

Removes a field from the document.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument::__construct
SolrInputDocument::__destruct
SolrInputDocument


Destructor

SolrInputDocument::deleteField
SolrInputDocument::fieldExists
SolrInputDocument
PHP Manual

SolrInputDocument::__destruct

(PECL solr >= 0.9.2)

SolrInputDocument::__destruct — Destructor

Descrição

public void SolrInputDocument::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrInputDocument::deleteField
SolrInputDocument::fieldExists
SolrInputDocument


Checks if a field exists

SolrInputDocument::__destruct
SolrInputDocument::getBoost
SolrInputDocument
PHP Manual

SolrInputDocument::fieldExists

(PECL solr >= 0.9.2)

SolrInputDocument::fieldExists — Checks if a field exists

Descrição

public bool SolrInputDocument::fieldExists ( string $fieldName )

Checks if a field exists

Parâmetros

fieldName

Name of the field.

Valor Retornado

Returns TRUE if the field was found and FALSE if it was not found.

SolrInputDocument::__destruct
SolrInputDocument::getBoost
SolrInputDocument


Retrieves the current boost value for the document

SolrInputDocument::fieldExists
SolrInputDocument::getField
SolrInputDocument
PHP Manual

SolrInputDocument::getBoost

(PECL solr >= 0.9.2)

SolrInputDocument::getBoost — Retrieves the current boost value for the document

Descrição

public float SolrInputDocument::getBoost ( void )

Retrieves the current boost value for the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the boost value on success and FALSE on failure.

SolrInputDocument::fieldExists
SolrInputDocument::getField
SolrInputDocument


Retrieves a field by name

SolrInputDocument::getBoost
SolrInputDocument::getFieldBoost
SolrInputDocument
PHP Manual

SolrInputDocument::getField

(PECL solr >= 0.9.2)

SolrInputDocument::getField — Retrieves a field by name

Descrição

public SolrDocumentField SolrInputDocument::getField ( string $fieldName )

Retrieves a field in the document.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Returns a SolrDocumentField object on success and FALSE on failure.

SolrInputDocument::getBoost
SolrInputDocument::getFieldBoost
SolrInputDocument


Retrieves the boost value for a particular field

SolrInputDocument::getField
SolrInputDocument::getFieldCount
SolrInputDocument
PHP Manual

SolrInputDocument::getFieldBoost

(PECL solr >= 0.9.2)

SolrInputDocument::getFieldBoost — Retrieves the boost value for a particular field

Descrição

public float SolrInputDocument::getFieldBoost ( string $fieldName )

Retrieves the boost value for a particular field.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Returns the boost value for the field or FALSE if there was an error.

SolrInputDocument::getField
SolrInputDocument::getFieldCount
SolrInputDocument


Returns the number of fields in the document

SolrInputDocument::getFieldBoost
SolrInputDocument::getFieldNames
SolrInputDocument
PHP Manual

SolrInputDocument::getFieldCount

(PECL solr >= 0.9.2)

SolrInputDocument::getFieldCount — Returns the number of fields in the document

Descrição

public int SolrInputDocument::getFieldCount ( void )

Returns the number of fields in the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success or FALSE on failure.

SolrInputDocument::getFieldBoost
SolrInputDocument::getFieldNames
SolrInputDocument


Returns an array containing all the fields in the document

SolrInputDocument::getFieldCount
SolrInputDocument::merge
SolrInputDocument
PHP Manual

SolrInputDocument::getFieldNames

(PECL solr >= 0.9.2)

SolrInputDocument::getFieldNames — Returns an array containing all the fields in the document

Descrição

public array SolrInputDocument::getFieldNames ( void )

Returns an array containing all the fields in the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and FALSE on failure.

SolrInputDocument::getFieldCount
SolrInputDocument::merge
SolrInputDocument


Merges one input document into another

SolrInputDocument::getFieldNames
SolrInputDocument::reset
SolrInputDocument
PHP Manual

SolrInputDocument::merge

(PECL solr >= 0.9.2)

SolrInputDocument::merge — Merges one input document into another

Descrição

public bool SolrInputDocument::merge ( SolrInputDocument $sourceDoc [, bool $overwrite = true ] )

Merges one input document into another.

Parâmetros

sourceDoc

The source document.

overwrite

If this is TRUE it will replace matching fields in the destination document.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. In the future, this will be modified to return the number of fields in the new document.

SolrInputDocument::getFieldNames
SolrInputDocument::reset
SolrInputDocument


This is an alias of SolrInputDocument::clear

SolrInputDocument::merge
SolrInputDocument::setBoost
SolrInputDocument
PHP Manual

SolrInputDocument::reset

(PECL solr >= 0.9.2)

SolrInputDocument::reset — This is an alias of SolrInputDocument::clear

Descrição

public bool SolrInputDocument::reset ( void )

This is an alias of SolrInputDocument::clear

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument::merge
SolrInputDocument::setBoost
SolrInputDocument


Sets the boost value for this document

SolrInputDocument::reset
SolrInputDocument::setFieldBoost
SolrInputDocument
PHP Manual

SolrInputDocument::setBoost

(PECL solr >= 0.9.2)

SolrInputDocument::setBoost — Sets the boost value for this document

Descrição

public bool SolrInputDocument::setBoost ( float $documentBoostValue )

Sets the boost value for this document.

Parâmetros

documentBoostValue

The index-time boost value for this document.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument::reset
SolrInputDocument::setFieldBoost
SolrInputDocument


Sets the index-time boost value for a field

SolrInputDocument::setBoost
SolrInputDocument::sort
SolrInputDocument
PHP Manual

SolrInputDocument::setFieldBoost

(PECL solr >= 0.9.2)

SolrInputDocument::setFieldBoost — Sets the index-time boost value for a field

Descrição

public bool SolrInputDocument::setFieldBoost ( string $fieldName , float $fieldBoostValue )

Sets the index-time boost value for a field. This replaces the current boost value for this field.

Parâmetros

fieldName

The name of the field.

fieldBoostValue

The index time boost value.

SolrInputDocument::setBoost
SolrInputDocument::sort
SolrInputDocument


Sorts the fields within the document

SolrInputDocument::setFieldBoost
SolrInputDocument::toArray
SolrInputDocument
PHP Manual

SolrInputDocument::sort

(PECL solr >= 0.9.2)

SolrInputDocument::sort — Sorts the fields within the document

Descrição

public bool SolrInputDocument::sort ( int $sortOrderBy [, int $sortDirection = SolrInputDocument::SORT_ASC ] )

The fields are rearranged according to the specified criteria and sort direction

   Fields can be sorted by boost values, field names and number of values.

   The $order_by parameter must be one of :

   * SolrInputDocument::SORT_FIELD_NAME
   * SolrInputDocument::SORT_FIELD_BOOST_VALUE
   * SolrInputDocument::SORT_FIELD_VALUE_COUNT

   The sort direction can be one of :

   * SolrInputDocument::SORT_DEFAULT
   * SolrInputDocument::SORT_ASC
   * SolrInputDocument::SORT_DESC

Parâmetros

sortOrderBy

The sort criteria

sortDirection

The sort direction

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrInputDocument::setFieldBoost
SolrInputDocument::toArray
SolrInputDocument


Returns an array representation of the input document

SolrInputDocument::sort
SolrDocument
SolrInputDocument
PHP Manual

SolrInputDocument::toArray

(PECL solr >= 0.9.2)

SolrInputDocument::toArray — Returns an array representation of the input document

Descrição

public array SolrInputDocument::toArray ( void )

Returns an array representation of the input document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing the fields. It returns FALSE on failure.

SolrInputDocument::sort
SolrDocument
SolrInputDocument


The SolrDocument class

Introdução

Represents a Solr document retrieved from a query response.

Sinopse da classe

final SolrDocument implements ArrayAccess , Iterator , Traversable , Serializable {
/* Constants */
const integer SolrDocument::SORT_DEFAULT = 1 ;
const integer SolrDocument::SORT_ASC = 1 ;
const integer SolrDocument::SORT_DESC = 2 ;
const integer SolrDocument::SORT_FIELD_NAME = 1 ;
const integer SolrDocument::SORT_FIELD_VALUE_COUNT = 2 ;
const integer SolrDocument::SORT_FIELD_BOOST_VALUE = 4 ;
/* Methods */
public bool addField ( string $fieldName , string $fieldValue )
public bool clear ( void )
public void __clone ( void )
__construct ( void )
public SolrDocumentField current ( void )
public bool deleteField ( string $fieldName )
public void __destruct ( void )
public bool fieldExists ( string $fieldName )
public SolrDocumentField __get ( string $fieldName )
public SolrDocumentField getField ( string $fieldName )
public int getFieldCount ( void )
public array getFieldNames ( void )
public SolrInputDocument getInputDocument ( void )
public bool __isset ( string $fieldName )
public string key ( void )
public bool merge ( SolrDocument $sourceDoc [, bool $overwrite = true ] )
public void next ( void )
public bool offsetExists ( string $fieldName )
public SolrDocumentField offsetGet ( string $fieldName )
public void offsetSet ( string $fieldName , string $fieldValue )
public void offsetUnset ( string $fieldName )
public bool reset ( void )
public void rewind ( void )
public string serialize ( void )
public bool __set ( string $fieldName , string $fieldValue )
public bool sort ( int $sortOrderBy [, int $sortDirection = SolrDocument::SORT_ASC ] )
public array toArray ( void )
public void unserialize ( string $serialized )
public bool __unset ( string $fieldName )
public bool valid ( void )
}

Constantes pré-definidas

SolrDocument Node Types

SolrDocument::SORT_DEFAULT

Default mode for sorting fields within the document.

SolrDocument::SORT_ASC

Sorts the fields in ascending order

SolrDocument::SORT_DESC

Sorts the fields in descending order

SolrDocument::SORT_FIELD_NAME

Sorts the fields by field name.

SolrDocument::SORT_FIELD_VALUE_COUNT

Sorts the fields by number of values in each field.

SolrDocument::SORT_FIELD_BOOST_VALUE

Sorts the fields by thier boost values.

Índice

  • SolrDocument::addField — Adds a field to the document
  • SolrDocument::clear — Drops all the fields in the document
  • SolrDocument::__clone — Creates a copy of a SolrDocument object
  • SolrDocument::__construct — Constructor
  • SolrDocument::current — Retrieves the current field
  • SolrDocument::deleteField — Removes a field from the document
  • SolrDocument::__destruct — Destructor
  • SolrDocument::fieldExists — Checks if a field exists in the document
  • SolrDocument::__get — Acess the field as a property
  • SolrDocument::getField — Retrieves a field by name
  • SolrDocument::getFieldCount — Returns the number of fields in this document
  • SolrDocument::getFieldNames — Returns an array of fields names in the document
  • SolrDocument::getInputDocument — Returns a SolrInputDocument equivalent of the object
  • SolrDocument::__isset — Checks if a field exists
  • SolrDocument::key — Retrieves the current key
  • SolrDocument::merge — Merges source to the current SolrDocument
  • SolrDocument::next — Moves the internal pointer to the next field
  • SolrDocument::offsetExists — Checks if a particular field exists
  • SolrDocument::offsetGet — Retrieves a field
  • SolrDocument::offsetSet — Adds a field to the document
  • SolrDocument::offsetUnset — Removes a field
  • SolrDocument::reset — This is an alias to SolrDocument::clear()
  • SolrDocument::rewind — Resets the internal pointer to the beginning
  • SolrDocument::serialize — Used for custom serialization
  • SolrDocument::__set — Adds another field to the document
  • SolrDocument::sort — Sorts the fields in the document
  • SolrDocument::toArray — Returns an array representation of the document
  • SolrDocument::unserialize — Custom serialization of SolrDocument objects
  • SolrDocument::__unset — Removes a field from the document
  • SolrDocument::valid — Checks if the current position internally is still valid
SolrInputDocument::toArray
SolrDocument::addField
Solr


Adds a field to the document

SolrDocument
SolrDocument::clear
SolrDocument
PHP Manual

SolrDocument::addField

(PECL solr >= 0.9.2)

SolrDocument::addField — Adds a field to the document

Descrição

public bool SolrDocument::addField ( string $fieldName , string $fieldValue )

This method adds a field to the SolrDocument instance.

Parâmetros

fieldName

The name of the field

fieldValue

The value of the field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument
SolrDocument::clear
SolrDocument


Drops all the fields in the document

SolrDocument::addField
SolrDocument::__clone
SolrDocument
PHP Manual

SolrDocument::clear

(PECL solr >= 0.9.2)

SolrDocument::clear — Drops all the fields in the document

Descrição

public bool SolrDocument::clear ( void )

Resets the current object. Discards all the fields and resets the document boost to zero.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::addField
SolrDocument::__clone
SolrDocument


Creates a copy of a SolrDocument object

SolrDocument::clear
SolrDocument::__construct
SolrDocument
PHP Manual

SolrDocument::__clone

(PECL solr >= 0.9.2)

SolrDocument::__clone — Creates a copy of a SolrDocument object

Descrição

public void SolrDocument::__clone ( void )

Creates a copy of a SolrDocument object. Not to be called directly.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrDocument::clear
SolrDocument::__construct
SolrDocument


Constructor

SolrDocument::__clone
SolrDocument::current
SolrDocument
PHP Manual

SolrDocument::__construct

(PECL solr >= 0.9.2)

SolrDocument::__construct — Constructor

Descrição

SolrDocument::__construct ( void )

Constructor for SolrDocument

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

SolrDocument::__clone
SolrDocument::current
SolrDocument


Retrieves the current field

SolrDocument::__construct
SolrDocument::deleteField
SolrDocument
PHP Manual

SolrDocument::current

(PECL solr >= 0.9.2)

SolrDocument::current — Retrieves the current field

Descrição

public SolrDocumentField SolrDocument::current ( void )

Retrieves the current field

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the field

SolrDocument::__construct
SolrDocument::deleteField
SolrDocument


Removes a field from the document

SolrDocument::current
SolrDocument::__destruct
SolrDocument
PHP Manual

SolrDocument::deleteField

(PECL solr >= 0.9.2)

SolrDocument::deleteField — Removes a field from the document

Descrição

public bool SolrDocument::deleteField ( string $fieldName )

Removes a field from the document.

Parâmetros

fieldName

Name of the field

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::current
SolrDocument::__destruct
SolrDocument


Destructor

SolrDocument::deleteField
SolrDocument::fieldExists
SolrDocument
PHP Manual

SolrDocument::__destruct

(PECL solr >= 0.9.2)

SolrDocument::__destruct — Destructor

Descrição

public void SolrDocument::__destruct ( void )

Destructor for SolrDocument.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

SolrDocument::deleteField
SolrDocument::fieldExists
SolrDocument


Checks if a field exists in the document

SolrDocument::__destruct
SolrDocument::__get
SolrDocument
PHP Manual

SolrDocument::fieldExists

(PECL solr >= 0.9.2)

SolrDocument::fieldExists — Checks if a field exists in the document

Descrição

public bool SolrDocument::fieldExists ( string $fieldName )

Checks if the requested field as a valid fieldname in the document.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Returns TRUE if the field is present and FALSE if it does not.

SolrDocument::__destruct
SolrDocument::__get
SolrDocument


Acess the field as a property

SolrDocument::fieldExists
SolrDocument::getField
SolrDocument
PHP Manual

SolrDocument::__get

(PECL solr >= 0.9.2)

SolrDocument::__get — Acess the field as a property

Descrição

public SolrDocumentField SolrDocument::__get ( string $fieldName )

Magic method for accessing the field as a property.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Returns a SolrDocumentField instance.

SolrDocument::fieldExists
SolrDocument::getField
SolrDocument


Retrieves a field by name

SolrDocument::__get
SolrDocument::getFieldCount
SolrDocument
PHP Manual

SolrDocument::getField

(PECL solr >= 0.9.2)

SolrDocument::getField — Retrieves a field by name

Descrição

public SolrDocumentField SolrDocument::getField ( string $fieldName )

Retrieves a field by name.

Parâmetros

fieldName

Name of the field.

Valor Retornado

Returns a SolrDocumentField on success and FALSE on failure.

SolrDocument::__get
SolrDocument::getFieldCount
SolrDocument


Returns the number of fields in this document

SolrDocument::getField
SolrDocument::getFieldNames
SolrDocument
PHP Manual

SolrDocument::getFieldCount

(PECL solr >= 0.9.2)

SolrDocument::getFieldCount — Returns the number of fields in this document

Descrição

public int SolrDocument::getFieldCount ( void )

Returns the number of fields in this document. Multi-value fields are only counted once.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and FALSE on failure.

SolrDocument::getField
SolrDocument::getFieldNames
SolrDocument


Returns an array of fields names in the document

SolrDocument::getFieldCount
SolrDocument::getInputDocument
SolrDocument
PHP Manual

SolrDocument::getFieldNames

(PECL solr >= 0.9.2)

SolrDocument::getFieldNames — Returns an array of fields names in the document

Descrição

public array SolrDocument::getFieldNames ( void )

Returns an array of fields names in the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing the names of the fields in this document.

SolrDocument::getFieldCount
SolrDocument::getInputDocument
SolrDocument


Returns a SolrInputDocument equivalent of the object

SolrDocument::getFieldNames
SolrDocument::__isset
SolrDocument
PHP Manual

SolrDocument::getInputDocument

(PECL solr >= 0.9.2)

SolrDocument::getInputDocument — Returns a SolrInputDocument equivalent of the object

Descrição

public SolrInputDocument SolrDocument::getInputDocument ( void )

Returns a SolrInputDocument equivalent of the object. This is useful if one wishes to resubmit/update a document retrieved from a query.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a SolrInputDocument on success and NULL on failure.

SolrDocument::getFieldNames
SolrDocument::__isset
SolrDocument


Checks if a field exists

SolrDocument::getInputDocument
SolrDocument::key
SolrDocument
PHP Manual

SolrDocument::__isset

(PECL solr >= 0.9.2)

SolrDocument::__isset — Checks if a field exists

Descrição

public bool SolrDocument::__isset ( string $fieldName )

Checks if a field exists

Parâmetros

fieldName

Name of the field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::getInputDocument
SolrDocument::key
SolrDocument


Retrieves the current key

SolrDocument::__isset
SolrDocument::merge
SolrDocument
PHP Manual

SolrDocument::key

(PECL solr >= 0.9.2)

SolrDocument::key — Retrieves the current key

Descrição

public string SolrDocument::key ( void )

Retrieves the current key.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the current key.

SolrDocument::__isset
SolrDocument::merge
SolrDocument


Merges source to the current SolrDocument

SolrDocument::key
SolrDocument::next
SolrDocument
PHP Manual

SolrDocument::merge

(PECL solr >= 0.9.2)

SolrDocument::merge — Merges source to the current SolrDocument

Descrição

public bool SolrDocument::merge ( SolrDocument $sourceDoc [, bool $overwrite = true ] )

Merges source to the current SolrDocument.

Parâmetros

sourceDoc

The source document.

overwrite

If this is TRUE then fields with the same name in the destination document will be overwritten.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::key
SolrDocument::next
SolrDocument


Moves the internal pointer to the next field

SolrDocument::merge
SolrDocument::offsetExists
SolrDocument
PHP Manual

SolrDocument::next

(PECL solr >= 0.9.2)

SolrDocument::next — Moves the internal pointer to the next field

Descrição

public void SolrDocument::next ( void )

Moves the internal pointer to the next field.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method has no return value.

SolrDocument::merge
SolrDocument::offsetExists
SolrDocument


Checks if a particular field exists

SolrDocument::next
SolrDocument::offsetGet
SolrDocument
PHP Manual

SolrDocument::offsetExists

(PECL solr >= 0.9.2)

SolrDocument::offsetExists — Checks if a particular field exists

Descrição

public bool SolrDocument::offsetExists ( string $fieldName )

Checks if a particular field exists. This is used when the object is treated as an array.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::next
SolrDocument::offsetGet
SolrDocument


Retrieves a field

SolrDocument::offsetExists
SolrDocument::offsetSet
SolrDocument
PHP Manual

SolrDocument::offsetGet

(PECL solr >= 0.9.2)

SolrDocument::offsetGet — Retrieves a field

Descrição

public SolrDocumentField SolrDocument::offsetGet ( string $fieldName )

This is used to retrieve the field when the object is treated as an array.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Returns a SolrDocumentField object.

SolrDocument::offsetExists
SolrDocument::offsetSet
SolrDocument


Adds a field to the document

SolrDocument::offsetGet
SolrDocument::offsetUnset
SolrDocument
PHP Manual

SolrDocument::offsetSet

(PECL solr >= 0.9.2)

SolrDocument::offsetSet — Adds a field to the document

Descrição

public void SolrDocument::offsetSet ( string $fieldName , string $fieldValue )

Used when the object is treated as an array to add a field to the document.

Parâmetros

fieldName

The name of the field.

fieldValue

The value for this field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::offsetGet
SolrDocument::offsetUnset
SolrDocument


Removes a field

SolrDocument::offsetSet
SolrDocument::reset
SolrDocument
PHP Manual

SolrDocument::offsetUnset

(PECL solr >= 0.9.2)

SolrDocument::offsetUnset — Removes a field

Descrição

public void SolrDocument::offsetUnset ( string $fieldName )

Removes a field from the document.

Parâmetros

fieldName

The name of the field.

Valor Retornado

No return value.

SolrDocument::offsetSet
SolrDocument::reset
SolrDocument


This is an alias to SolrDocument::clear()

SolrDocument::offsetUnset
SolrDocument::rewind
SolrDocument
PHP Manual

SolrDocument::reset

(PECL solr >= 0.9.2)

SolrDocument::reset — This is an alias to SolrDocument::clear()

Descrição

public bool SolrDocument::reset ( void )

This is an alias to SolrDocument::clear()

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::offsetUnset
SolrDocument::rewind
SolrDocument


Resets the internal pointer to the beginning

SolrDocument::reset
SolrDocument::serialize
SolrDocument
PHP Manual

SolrDocument::rewind

(PECL solr >= 0.9.2)

SolrDocument::rewind — Resets the internal pointer to the beginning

Descrição

public void SolrDocument::rewind ( void )

Resets the internal pointer to the beginning.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

This method has no return value.

SolrDocument::reset
SolrDocument::serialize
SolrDocument


Used for custom serialization

SolrDocument::rewind
SolrDocument::__set
SolrDocument
PHP Manual

SolrDocument::serialize

(PECL solr >= 0.9.2)

SolrDocument::serialize — Used for custom serialization

Descrição

public string SolrDocument::serialize ( void )

Used for custom serialization.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string representing the serialized Solr document.

SolrDocument::rewind
SolrDocument::__set
SolrDocument


Adds another field to the document

SolrDocument::serialize
SolrDocument::sort
SolrDocument
PHP Manual

SolrDocument::__set

(PECL solr >= 0.9.2)

SolrDocument::__set — Adds another field to the document

Descrição

public bool SolrDocument::__set ( string $fieldName , string $fieldValue )

Adds another field to the document. Used to set the fields as new properties.

Parâmetros

fieldName

Name of the field.

fieldValue

Field value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::serialize
SolrDocument::sort
SolrDocument


Sorts the fields in the document

SolrDocument::__set
SolrDocument::toArray
SolrDocument
PHP Manual

SolrDocument::sort

(PECL solr >= 0.9.2)

SolrDocument::sort — Sorts the fields in the document

Descrição

public bool SolrDocument::sort ( int $sortOrderBy [, int $sortDirection = SolrDocument::SORT_ASC ] )

The fields are rearranged according to the specified criteria and sort direction

   Fields can be sorted by boost values, field names and number of values.

   The sortOrderBy parameter must be one of :

   * SolrDocument::SORT_FIELD_NAME
   * SolrDocument::SORT_FIELD_BOOST_VALUE
   * SolrDocument::SORT_FIELD_VALUE_COUNT

   The sortDirection can be one of :

   * SolrDocument::SORT_DEFAULT
   * SolrDocument::SORT_ASC
   * SolrDocument::SORT_DESC

   The default way is to sort in ascending order.

Parâmetros

sortOrderBy

The sort criteria.

sortDirection

The sort direction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::__set
SolrDocument::toArray
SolrDocument


Returns an array representation of the document

SolrDocument::sort
SolrDocument::unserialize
SolrDocument
PHP Manual

SolrDocument::toArray

(PECL solr >= 0.9.2)

SolrDocument::toArray — Returns an array representation of the document

Descrição

public array SolrDocument::toArray ( void )

Returns an array representation of the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array representation of the document.

Exemplos

Exemplo #1 SolrDocument::toArray() example

<?php

$doc = new SolrDocument();

$doc->addField('id', 1123);

$doc->features = "PHP Client Side";
$doc->features = "Fast development cycles";

$doc['cat'] = 'Software';
$doc['cat'] = 'Custom Search';
$doc->cat   = 'Information Technology';

print_r($doc->toArray());

?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [document_boost] => 0
    [field_count] => 3
    [fields] => Array
        (
            [0] => SolrDocumentField Object
                (
                    [name] => id
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => 1123
                        )

                )

            [1] => SolrDocumentField Object
                (
                    [name] => features
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => PHP Client Side
                            [1] => Fast development cycles
                        )

                )

            [2] => SolrDocumentField Object
                (
                    [name] => cat
                    [boost] => 0
                    [values] => Array
                        (
                            [0] => Software
                            [1] => Custom Search
                            [2] => Information Technology
                        )

                )

        )

)

SolrDocument::sort
SolrDocument::unserialize
SolrDocument


Custom serialization of SolrDocument objects

SolrDocument::toArray
SolrDocument::__unset
SolrDocument
PHP Manual

SolrDocument::unserialize

(PECL solr >= 0.9.2)

SolrDocument::unserialize — Custom serialization of SolrDocument objects

Descrição

public void SolrDocument::unserialize ( string $serialized )

Custom serialization of SolrDocument objects

Parâmetros

serialized

An XML representation of the document.

Valor Retornado

None.

SolrDocument::toArray
SolrDocument::__unset
SolrDocument


Removes a field from the document

SolrDocument::unserialize
SolrDocument::valid
SolrDocument
PHP Manual

SolrDocument::__unset

(PECL solr >= 0.9.2)

SolrDocument::__unset — Removes a field from the document

Descrição

public bool SolrDocument::__unset ( string $fieldName )

Removes a field from the document when the field is access as an object property.

Parâmetros

fieldName

The name of the field.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrDocument::unserialize
SolrDocument::valid
SolrDocument


Checks if the current position internally is still valid

SolrDocument::__unset
SolrDocumentField
SolrDocument
PHP Manual

SolrDocument::valid

(PECL solr >= 0.9.2)

SolrDocument::valid — Checks if the current position internally is still valid

Descrição

public bool SolrDocument::valid ( void )

Checks if the current position internally is still valid. It is used during foreach operations.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE on success and FALSE if the current position is no longer valid.

SolrDocument::__unset
SolrDocumentField
SolrDocument


The SolrDocumentField class

Introdução

This represents a field in a Solr document. All its properties are read-only.

Sinopse da classe

final SolrDocumentField {
/* Properties */
readonly public string $name ;
readonly public float $boost ;
readonly public array $values ;
/* Methods */
__construct ( void )
public void __destruct ( void )
}

Propriedades

name

The name of the field.

boost

The boost value for the field

values

An array of values for this field

Índice

  • SolrDocumentField::__construct — Constructor
  • SolrDocumentField::__destruct — Destructor
SolrDocument::valid
SolrDocumentField::__construct
Solr


Constructor

SolrDocumentField
SolrDocumentField::__destruct
SolrDocumentField
PHP Manual

SolrDocumentField::__construct

(PECL solr >= 0.9.2)

SolrDocumentField::__construct — Constructor

Descrição

SolrDocumentField::__construct ( void )

Constructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrDocumentField
SolrDocumentField::__destruct
SolrDocumentField


Destructor

SolrDocumentField::__construct
SolrObject
SolrDocumentField
PHP Manual

SolrDocumentField::__destruct

(PECL solr >= 0.9.2)

SolrDocumentField::__destruct — Destructor

Descrição

public void SolrDocumentField::__destruct ( void )

Destructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrDocumentField::__construct
SolrObject
SolrDocumentField


The SolrObject class

Introdução

This is an object whose properties can also by accessed using the array syntax. All its properties are read-only.

Sinopse da classe

final SolrObject implements ArrayAccess {
/* Methods */
__construct ( void )
public void __destruct ( void )
public array getPropertyNames ( void )
public bool offsetExists ( string $property_name )
public mixed offsetGet ( string $property_name )
public void offsetSet ( string $property_name , string $property_value )
public void offsetUnset ( string $property_name )
}

Índice

  • SolrObject::__construct — Creates Solr object
  • SolrObject::__destruct — Destructor
  • SolrObject::getPropertyNames — Returns an array of all the names of the properties
  • SolrObject::offsetExists — Checks if the property exists
  • SolrObject::offsetGet — Used to retrieve a property
  • SolrObject::offsetSet — Sets the value for a property
  • SolrObject::offsetUnset — Sets the value for the property
SolrDocumentField::__destruct
SolrObject::__construct
Solr


Creates Solr object

SolrObject
SolrObject::__destruct
SolrObject
PHP Manual

SolrObject::__construct

(PECL solr >= 0.9.2)

SolrObject::__construct — Creates Solr object

Descrição

SolrObject::__construct ( void )

Creates Solr object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

Exemplos

Exemplo #1 SolrObject::__construct() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

SolrObject
SolrObject::__destruct
SolrObject


Destructor

SolrObject::__construct
SolrObject::getPropertyNames
SolrObject
PHP Manual

SolrObject::__destruct

(PECL solr >= 0.9.2)

SolrObject::__destruct — Destructor

Descrição

public void SolrObject::__destruct ( void )

The destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrObject::__construct
SolrObject::getPropertyNames
SolrObject


Returns an array of all the names of the properties

SolrObject::__destruct
SolrObject::offsetExists
SolrObject
PHP Manual

SolrObject::getPropertyNames

(PECL solr >= 0.9.2)

SolrObject::getPropertyNames — Returns an array of all the names of the properties

Descrição

public array SolrObject::getPropertyNames ( void )

Returns an array of all the names of the properties

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array.

SolrObject::__destruct
SolrObject::offsetExists
SolrObject


Checks if the property exists

SolrObject::getPropertyNames
SolrObject::offsetGet
SolrObject
PHP Manual

SolrObject::offsetExists

(PECL solr >= 0.9.2)

SolrObject::offsetExists — Checks if the property exists

Descrição

public bool SolrObject::offsetExists ( string $property_name )

Checks if the property exists. This is used when the object is treated as an array.

Parâmetros

property_name

The name of the property.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrObject::getPropertyNames
SolrObject::offsetGet
SolrObject


Used to retrieve a property

SolrObject::offsetExists
SolrObject::offsetSet
SolrObject
PHP Manual

SolrObject::offsetGet

(PECL solr >= 0.9.2)

SolrObject::offsetGet — Used to retrieve a property

Descrição

public mixed SolrObject::offsetGet ( string $property_name )

Used to get the value of a property. This is used when the object is treated as an array.

Parâmetros

property_name

Name of the property.

Valor Retornado

Returns the property value.

SolrObject::offsetExists
SolrObject::offsetSet
SolrObject


Sets the value for a property

SolrObject::offsetGet
SolrObject::offsetUnset
SolrObject
PHP Manual

SolrObject::offsetSet

(PECL solr >= 0.9.2)

SolrObject::offsetSet — Sets the value for a property

Descrição

public void SolrObject::offsetSet ( string $property_name , string $property_value )

Sets the value for a property. This is used when the object is treated as an array. This object is read-only. This should never be attempted.

Parâmetros

property_name

The name of the property.

property_value

The new value.

Valor Retornado

None.

SolrObject::offsetGet
SolrObject::offsetUnset
SolrObject


Sets the value for the property

SolrObject::offsetSet
SolrClient
SolrObject
PHP Manual

SolrObject::offsetUnset

(PECL solr >= 0.9.2)

SolrObject::offsetUnset — Sets the value for the property

Descrição

public void SolrObject::offsetUnset ( string $property_name )

Sets the value for the property. This is used when the object is treated as an array. This object is read-only. This should never be attempted.

Parâmetros

property_name

The name of the property.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 SolrObject::offsetUnset() example

<?php
/* ... */
?>

O exemplo acima irá imprimir algo similar a:

...

Veja Também

  • Classname::Method()

SolrObject::offsetSet
SolrClient
SolrObject


The SolrClient class

Introdução

Used to send requests to a Solr server. Currently, cloning and serialization of SolrClient instances is not supported.

Sinopse da classe

final SolrClient {
/* Constants */
const integer SolrClient::SEARCH_SERVLET_TYPE = 1 ;
const integer SolrClient::UPDATE_SERVLET_TYPE = 2 ;
const integer SolrClient::THREADS_SERVLET_TYPE = 4 ;
const integer SolrClient::PING_SERVLET_TYPE = 8 ;
const integer SolrClient::TERMS_SERVLET_TYPE = 16 ;
const string SolrClient::DEFAULT_SEARCH_SERVLET = select ;
const string SolrClient::DEFAULT_UPDATE_SERVLET = update ;
const string SolrClient::DEFAULT_THREADS_SERVLET = admin/threads ;
const string SolrClient::DEFAULT_PING_SERVLET = admin/ping ;
const string SolrClient::DEFAULT_TERMS_SERVLET = terms ;
/* Methods */
public SolrUpdateResponse addDocument ( SolrInputDocument $doc [, bool $allowDups = false [, int $commitWithin = 0 ]] )
public void addDocuments ( array $docs [, bool $allowDups = false [, int $commitWithin = 0 ]] )
public SolrUpdateResponse commit ([ int $maxSegments = "1" [, bool $waitFlush = true [, bool $waitSearcher = true ]]] )
public __construct ( array $clientOptions )
public SolrUpdateResponse deleteById ( string $id )
public SolrUpdateResponse deleteByIds ( array $ids )
public SolrUpdateResponse deleteByQueries ( array $queries )
public SolrUpdateResponse deleteByQuery ( string $query )
public void __destruct ( void )
public string getDebug ( void )
public array getOptions ( void )
public SolrUpdateResponse optimize ([ int $maxSegments = "1" [, bool $waitFlush = true [, bool $waitSearcher = true ]]] )
public SolrPingResponse ping ( void )
public SolrQueryResponse query ( SolrParams $query )
public void request ( string $raw_request )
public SolrUpdateResponse rollback ( void )
public void setResponseWriter ( string $responseWriter )
public bool setServlet ( int $type , string $value )
public void threads ( void )
}

Constantes pré-definidas

SolrClient Node Types

SolrClient::SEARCH_SERVLET_TYPE

Used when updating the search servlet.

SolrClient::UPDATE_SERVLET_TYPE

Used when updating the update servlet.

SolrClient::THREADS_SERVLET_TYPE

Used when updating the threads servlet.

SolrClient::PING_SERVLET_TYPE

Used when updating the ping servlet.

SolrClient::TERMS_SERVLET_TYPE

Used when updating the terms servlet.

SolrClient::DEFAULT_SEARCH_SERVLET

This is the intial value for the search servlet.

SolrClient::DEFAULT_UPDATE_SERVLET

This is the intial value for the update servlet.

SolrClient::DEFAULT_THREADS_SERVLET

This is the intial value for the threads servlet.

SolrClient::DEFAULT_PING_SERVLET

This is the intial value for the ping servlet.

SolrClient::DEFAULT_TERMS_SERVLET

This is the intial value for the terms servlet used for the TermsComponent

Índice

  • SolrClient::addDocument — Adds a document to the index
  • SolrClient::addDocuments — Adds a collection of SolrInputDocument instances to the index
  • SolrClient::commit — Finalizes all add/deletes made to the index
  • SolrClient::__construct — Constructor for the SolrClient object
  • SolrClient::deleteById — Delete by Id
  • SolrClient::deleteByIds — Deletes by Ids
  • SolrClient::deleteByQueries — Removes all documents matching any of the queries
  • SolrClient::deleteByQuery — Deletes all documents matching the given query
  • SolrClient::__destruct — Destructor for SolrClient
  • SolrClient::getDebug — Returns the debug data for the last connection attempt
  • SolrClient::getOptions — Returns the client options set internally
  • SolrClient::optimize — Defragments the index
  • SolrClient::ping — Checks if Solr server is still up
  • SolrClient::query — Sends a query to the server
  • SolrClient::request — Sends a raw update request
  • SolrClient::rollback — Rollbacks all add/deletes made to the index since the last commit
  • SolrClient::setResponseWriter — Sets the response writer used to prepare the response from Solr
  • SolrClient::setServlet — Changes the specified servlet type to a new value
  • SolrClient::threads — Checks the threads status
SolrObject::offsetUnset
SolrClient::addDocument
Solr


Adds a document to the index

SolrClient
SolrClient::addDocuments
SolrClient
PHP Manual

SolrClient::addDocument

(PECL solr >= 0.9.2)

SolrClient::addDocument — Adds a document to the index

Descrição

public SolrUpdateResponse SolrClient::addDocument ( SolrInputDocument $doc [, bool $allowDups = false [, int $commitWithin = 0 ]] )

This method adds a document to the index.

Parâmetros

doc

The SolrInputDocument instance.

allowDups

If FALSE duplicates will be overwritten.

commitWithin

Number of milliseconds within which to commit this document. Available since Solr 1.4

Valor Retornado

Returns a SolrUpdateResponse object or throws a SolrClientException on failure.

Exemplos

Exemplo #1 SolrClient::addDocument() example

<?php

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$doc = new SolrInputDocument();

$doc->addField('id', 334455);
$doc->addField('cat', 'Software');
$doc->addField('cat', 'Lucene');

$updateResponse = $client->addDocument($doc);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
        )

)

Veja Também

  • SolrClient::addDocuments() - Adds a collection of SolrInputDocument instances to the index

SolrClient
SolrClient::addDocuments
SolrClient


Adds a collection of SolrInputDocument instances to the index

SolrClient::addDocument
SolrClient::commit
SolrClient
PHP Manual

SolrClient::addDocuments

(PECL solr >= 0.9.2)

SolrClient::addDocuments — Adds a collection of SolrInputDocument instances to the index

Descrição

public void SolrClient::addDocuments ( array $docs [, bool $allowDups = false [, int $commitWithin = 0 ]] )

Adds a collection of documents to the index.

Parâmetros

docs

An array containing the collection of SolrInputDocument instances. This array must be an actual variable.

allowDups

If FALSE duplicates will be overwritten.

commitWithin

Number of milliseconds within which to commit the documents to the index. This was only available since Solr 1.4

Valor Retornado

Returns a SolrUpdateResponse object on success and throws a SolrClientException on failure.

Exemplos

Exemplo #1 SolrClient::addDocuments() example

<?php

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$doc = new SolrInputDocument();

$doc->addField('id', 334455);
$doc->addField('cat', 'Software');
$doc->addField('cat', 'Lucene');

$doc2 = clone $doc;

$doc2->deleteField('id');
$doc2->addField('id', 334456);

$docs = array($doc, $doc2);

$updateResponse = $client->addDocuments($docs);

print_r($updateResponse->getResponse());

?>

O exemplo acima irá imprimir algo similar a:

SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 2
        )

)

Veja Também

  • SolrClient::addDocument() - Adds a document to the index

SolrClient::addDocument
SolrClient::commit
SolrClient


Finalizes all add/deletes made to the index

SolrClient::addDocuments
SolrClient::__construct
SolrClient
PHP Manual

SolrClient::commit

(PECL solr >= 0.9.2)

SolrClient::commit — Finalizes all add/deletes made to the index

Descrição

public SolrUpdateResponse SolrClient::commit ([ int $maxSegments = "1" [, bool $waitFlush = true [, bool $waitSearcher = true ]]] )

This method finalizes all add/deletes made to the index.

Parâmetros

maxSegments

Optimizes down to at most this number of segments. Since Solr 1.3

waitFlush

Block until index changes are flushed to disk.

waitSearcher

Block until a new searcher is opened and registered as the main query searcher, making the changes visible.

Valor Retornado

Returns a SolrUpdateResponse object on success or throws a SolrClientException on failure.

Veja Também

  • SolrClient::optimize() - Defragments the index
  • SolrClient::rollback() - Rollbacks all add/deletes made to the index since the last commit

SolrClient::addDocuments
SolrClient::__construct
SolrClient


Constructor for the SolrClient object

SolrClient::commit
SolrClient::deleteById
SolrClient
PHP Manual

SolrClient::__construct

(PECL solr >= 0.9.2)

SolrClient::__construct — Constructor for the SolrClient object

Descrição

public SolrClient::__construct ( array $clientOptions )

Constructor for the SolrClient object

Parâmetros

clientOptions

This is an array containing one of the following keys :

- secure          (Boolean value indicating whether or not to connect in secure mode)
 - hostname        (The hostname for the Solr server)
 - port            (The port number)
 - path            (The path to solr)
 - wt              (The name of the response writer e.g. xml, phpnative)
 - login           (The username used for HTTP Authentication, if any)
 - password        (The HTTP Authentication password)
 - proxy_host      (The hostname for the proxy server, if any)
 - proxy_port      (The proxy port)
 - proxy_login     (The proxy username)
 - proxy_password  (The proxy password)
 - timeout         (This is maximum time in seconds allowed for the http data transfer operation. Default is 30 seconds)
 - ssl_cert        (File name to a PEM-formatted file containing the private key + private certificate (concatenated in that order) )
 - ssl_key         (File name to a PEM-formatted private key file only)
 - ssl_keypassword (Password for private key)
 - ssl_cainfo      (Name of file holding one or more CA certificates to verify peer with)
 - ssl_capath      (Name of directory holding multiple CA certificates to verify peer with )

 Please note the if the ssl_cert file only contains the private certificate, you have to specify a separate ssl_key file

 The ssl_keypassword option is required if the ssl_cert or ssl_key options are set.

Exemplos

Exemplo #1 SolrClient::__construct() example

<?php

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
    'path'     => SOLR_PATH_TO_SOLR,
    'wt'       => SOLR_PHP_NATIVE_RESPONSE_WRITER,
);

$client = new SolrClient($options);

$doc = new SolrInputDocument();

$doc->addField('id', 334455);
$doc->addField('cat', 'Software');
$doc->addField('cat', 'Lucene');

$updateResponse = $client->addDocument($doc);

?>

O exemplo acima irá imprimir algo similar a:

Veja Também

  • SolrClient::getOptions() - Returns the client options set internally

SolrClient::commit
SolrClient::deleteById
SolrClient


Delete by Id

SolrClient::__construct
SolrClient::deleteByIds
SolrClient
PHP Manual

SolrClient::deleteById

(PECL solr >= 0.9.2)

SolrClient::deleteById — Delete by Id

Descrição

public SolrUpdateResponse SolrClient::deleteById ( string $id )

Deletes the document with the specified ID. Where ID is the value of the uniqueKey field declared in the schema

Parâmetros

id

The value of the uniqueKey field declared in the schema

Valor Retornado

Returns a SolrUpdateResponse on success and throws a SolrClientException on failure.

Veja Também

  • SolrClient::deleteByIds() - Deletes by Ids
  • SolrClient::deleteByQuery() - Deletes all documents matching the given query
  • SolrClient::deleteByQueries() - Removes all documents matching any of the queries

SolrClient::__construct
SolrClient::deleteByIds
SolrClient


Deletes by Ids

SolrClient::deleteById
SolrClient::deleteByQueries
SolrClient
PHP Manual

SolrClient::deleteByIds

(PECL solr >= 0.9.2)

SolrClient::deleteByIds — Deletes by Ids

Descrição

public SolrUpdateResponse SolrClient::deleteByIds ( array $ids )

Deletes a collection of documents with the specified set of ids.

Parâmetros

ids

An array of IDs representing the uniqueKey field declared in the schema for each document to be deleted. This must be an actual php variable.

Valor Retornado

Returns a SolrUpdateResponse on success and throws a SolrClientException on failure.

Veja Também

  • SolrClient::deleteById() - Delete by Id
  • SolrClient::deleteByQuery() - Deletes all documents matching the given query
  • SolrClient::deleteByQueries() - Removes all documents matching any of the queries

SolrClient::deleteById
SolrClient::deleteByQueries
SolrClient


Removes all documents matching any of the queries

SolrClient::deleteByIds
SolrClient::deleteByQuery
SolrClient
PHP Manual

SolrClient::deleteByQueries

(PECL solr >= 0.9.2)

SolrClient::deleteByQueries — Removes all documents matching any of the queries

Descrição

public SolrUpdateResponse SolrClient::deleteByQueries ( array $queries )

Removes all documents matching any of the queries

Parâmetros

queries

The array of queries. This must be an actual php variable.

Valor Retornado

Returns a SolrUpdateResponse on success and throws a SolrClientException on failure.

Veja Também

  • SolrClient::deleteById() - Delete by Id
  • SolrClient::deleteByIds() - Deletes by Ids
  • SolrClient::deleteByQuery() - Deletes all documents matching the given query

SolrClient::deleteByIds
SolrClient::deleteByQuery
SolrClient


Deletes all documents matching the given query

SolrClient::deleteByQueries
SolrClient::__destruct
SolrClient
PHP Manual

SolrClient::deleteByQuery

(PECL solr >= 0.9.2)

SolrClient::deleteByQuery — Deletes all documents matching the given query

Descrição

public SolrUpdateResponse SolrClient::deleteByQuery ( string $query )

Deletes all documents matching the given query.

Parâmetros

query

The query

Valor Retornado

Returns a SolrUpdateResponse on success and throws a SolrClientException on failure.

Veja Também

  • SolrClient::deleteById() - Delete by Id
  • SolrClient::deleteByIds() - Deletes by Ids
  • SolrClient::deleteByQueries() - Removes all documents matching any of the queries

SolrClient::deleteByQueries
SolrClient::__destruct
SolrClient


Destructor for SolrClient

SolrClient::deleteByQuery
SolrClient::getDebug
SolrClient
PHP Manual

SolrClient::__destruct

(PECL solr >= 0.9.2)

SolrClient::__destruct — Destructor for SolrClient

Descrição

public void SolrClient::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Destructor for SolrClient

Veja Também

  • SolrClient::__construct() - Constructor for the SolrClient object

SolrClient::deleteByQuery
SolrClient::getDebug
SolrClient


Returns the debug data for the last connection attempt

SolrClient::__destruct
SolrClient::getOptions
SolrClient
PHP Manual

SolrClient::getDebug

(PECL solr >= 0.9.7)

SolrClient::getDebug — Returns the debug data for the last connection attempt

Descrição

public string SolrClient::getDebug ( void )

Returns the debug data for the last connection attempt

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and null if there is nothing to return.

SolrClient::__destruct
SolrClient::getOptions
SolrClient


Returns the client options set internally

SolrClient::getDebug
SolrClient::optimize
SolrClient
PHP Manual

SolrClient::getOptions

(PECL solr >= 0.9.6)

SolrClient::getOptions — Returns the client options set internally

Descrição

public array SolrClient::getOptions ( void )

Returns the client options set internally. Very useful for debugging. The values returned are readonly and can only be set when the object is instantiated.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing all the options for the SolrClient object set internally.

Veja Também

  • SolrClient::__construct() - Constructor for the SolrClient object

SolrClient::getDebug
SolrClient::optimize
SolrClient


Defragments the index

SolrClient::getOptions
SolrClient::ping
SolrClient
PHP Manual

SolrClient::optimize

(PECL solr >= 0.9.2)

SolrClient::optimize — Defragments the index

Descrição

public SolrUpdateResponse SolrClient::optimize ([ int $maxSegments = "1" [, bool $waitFlush = true [, bool $waitSearcher = true ]]] )

Defragments the index for faster search performance.

Parâmetros

maxSegments

Optimizes down to at most this number of segments. Since Solr 1.3

waitFlush

Block until index changes are flushed to disk.

waitSearcher

Block until a new searcher is opened and registered as the main query searcher, making the changes visible.

Valor Retornado

Returns a SolrUpdateResponse on success or throws a SolrClientException on failure.

Veja Também

  • SolrClient::commit() - Finalizes all add/deletes made to the index
  • SolrClient::rollback() - Rollbacks all add/deletes made to the index since the last commit

SolrClient::getOptions
SolrClient::ping
SolrClient


Checks if Solr server is still up

SolrClient::optimize
SolrClient::query
SolrClient
PHP Manual

SolrClient::ping

(PECL solr >= 0.9.2)

SolrClient::ping — Checks if Solr server is still up

Descrição

public SolrPingResponse SolrClient::ping ( void )

Checks if the Solr server is still alive. Sends a HEAD request to the Apache Solr server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a SolrPingResponse object on success and throws a SolrClientException on failure.

Exemplos

Exemplo #1 SolrClient::ping() example

<?php
$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$pingresponse = $client->ping();

?>

O exemplo acima irá imprimir algo similar a:

SolrClient::optimize
SolrClient::query
SolrClient


Sends a query to the server

SolrClient::ping
SolrClient::request
SolrClient
PHP Manual

SolrClient::query

(PECL solr >= 0.9.2)

SolrClient::query — Sends a query to the server

Descrição

public SolrQueryResponse SolrClient::query ( SolrParams $query )

Sends a query to the server.

Parâmetros

query

A SolrParam object. It is recommended to use SolrQuery for advanced queries.

Valor Retornado

Returns a SolrQueryResponse object on success and throws a SolrClientException object on failure.

Exemplos

Exemplo #1 SolrClient::query() example

<?php

include "bootstrap.php";

$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$query = new SolrQuery();

$query->setQuery('lucene');

$query->setStart(0);

$query->setRows(50);

$query->addField('cat')->addField('features')->addField('id')->addField('timestamp');

$query_response = $client->query($query);

$response = $query_response->getResponse();

print_r($response);

?>

O exemplo acima irá imprimir algo similar a:

SolrClient::ping
SolrClient::request
SolrClient


Sends a raw update request

SolrClient::query
SolrClient::rollback
SolrClient
PHP Manual

SolrClient::request

(PECL solr >= 0.9.2)

SolrClient::request — Sends a raw update request

Descrição

public void SolrClient::request ( string $raw_request )

Sends a raw XML update request to the server

Parâmetros

raw_request

An XML string with the raw request to the server.

Valor Retornado

Returns a SolrUpdateResponse on success. Throws a SolrClientException on failure.

Exemplos

Exemplo #1 SolrClient::request() example

<?php
$options = array
(
    'hostname' => SOLR_SERVER_HOSTNAME,
    'login'    => SOLR_SERVER_USERNAME,
    'password' => SOLR_SERVER_PASSWORD,
    'port'     => SOLR_SERVER_PORT,
);

$client = new SolrClient($options);

$update_response = $client->request("<commit/>");

$response = $update_response->getResponse();

print_r($response);
?>

O exemplo acima irá imprimir algo similar a:

...

SolrClient::query
SolrClient::rollback
SolrClient


Rollbacks all add/deletes made to the index since the last commit

SolrClient::request
SolrClient::setResponseWriter
SolrClient
PHP Manual

SolrClient::rollback

(PECL solr >= 0.9.2)

SolrClient::rollback — Rollbacks all add/deletes made to the index since the last commit

Descrição

public SolrUpdateResponse SolrClient::rollback ( void )

Rollbacks all add/deletes made to the index since the last commit. It neither calls any event listeners nor creates a new searcher.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a SolrUpdateResponse on success or throws a SolrClientException on failure.

Veja Também

  • SolrClient::commit() - Finalizes all add/deletes made to the index
  • SolrClient::optimize() - Defragments the index

SolrClient::request
SolrClient::setResponseWriter
SolrClient


Sets the response writer used to prepare the response from Solr

SolrClient::rollback
SolrClient::setServlet
SolrClient
PHP Manual

SolrClient::setResponseWriter

(PECL solr >= 0.9.11)

SolrClient::setResponseWriter — Sets the response writer used to prepare the response from Solr

Descrição

public void SolrClient::setResponseWriter ( string $responseWriter )

Sets the response writer used to prepare the response from Solr

Parâmetros

responseWriter

One of the following :

- xml
 - phpnative

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SolrClient::setResponseWriter() example

<?php

// This is my custom class for objects
class SolrClass
{
   public $_properties = array();

   public function __get($property_name) {

      if (property_exists($this, $property_name)) {

          return $this->$property_name;

      } else if (isset($_properties[$property_name])) {

          return $_properties[$property_name];
      }

      return null;
   }
}

$options = array
(
  'hostname' => 'localhost',
  'port' => 8983,
  'path' => '/solr/core1'
);

$client = new SolrClient($options);

// This uses the org.apache.solr.request.PHPNativeResponseWriter class on Solr
// Visit the following pages for more details
// https://issues.apache.org/jira/browse/SOLR-1967
// http://wiki.apache.org/solr/QueryResponseWriter
// http://wiki.apache.org/solr/SolPHP
$client->setResponseWriter("phpnative");

//$response = $client->ping();

$query = new SolrQuery();

$query->setQuery("*:*");

$query->set("objectClassName", "SolrClass");

$query->set("objectPropertiesStorageMode", 1); // 0 for independent properties, 1 for combined

try
{

$response = $client->query($query);

$resp = $response->getResponse();

print_r($response);

print_r($resp);

} catch (Exception $e) {

print_r($e);

}

?>

O exemplo acima irá imprimir algo similar a:

SolrClient::rollback
SolrClient::setServlet
SolrClient


Changes the specified servlet type to a new value

SolrClient::setResponseWriter
SolrClient::threads
SolrClient
PHP Manual

SolrClient::setServlet

(PECL solr >= 0.9.2)

SolrClient::setServlet — Changes the specified servlet type to a new value

Descrição

public bool SolrClient::setServlet ( int $type , string $value )

Changes the specified servlet type to a new value

Parâmetros

type

One of the following :

- SolrClient::SEARCH_SERVLET_TYPE
 - SolrClient::UPDATE_SERVLET_TYPE
 - SolrClient::THREADS_SERVLET_TYPE
 - SolrClient::PING_SERVLET_TYPE
 - SolrClient::TERMS_SERVLET_TYPE

value

The new value for the servlet

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrClient::setResponseWriter
SolrClient::threads
SolrClient


Checks the threads status

SolrClient::setServlet
SolrResponse
SolrClient
PHP Manual

SolrClient::threads

(PECL solr >= 0.9.2)

SolrClient::threads — Checks the threads status

Descrição

public void SolrClient::threads ( void )

Checks the threads status

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a SolrGenericResponse object.

SolrClient::setServlet
SolrResponse
SolrClient


The SolrResponse class

Introdução

Represents a response from the Solr server.

Sinopse da classe

abstract SolrResponse {
/* Constants */
const integer SolrResponse::PARSE_SOLR_OBJ = 0 ;
const integer SolrResponse::PARSE_SOLR_DOC = 1 ;
/* Properties */
protected integer $http_status ;
protected integer $parser_mode ;
protected bool $success ;
protected string $http_status_message ;
protected string $http_request_url ;
protected string $http_raw_request_headers ;
protected string $http_raw_request ;
protected string $http_raw_response_headers ;
protected string $http_raw_response ;
protected string $http_digested_response ;
/* Methods */
public string getDigestedResponse ( void )
public int getHttpStatus ( void )
public string getHttpStatusMessage ( void )
public string getRawRequest ( void )
public string getRawRequestHeaders ( void )
public string getRawResponse ( void )
public string getRawResponseHeaders ( void )
public string getRequestUrl ( void )
public SolrObject getResponse ( void )
public bool setParseMode ([ int $parser_mode = 0 ] )
public bool success ( void )
}

Propriedades

http_status

The http status of the response.

parser_mode

Whether to parse the solr documents as SolrObject or SolrDocument instances.

success

Was there an error during the request

http_status_message

Detailed message on http status

http_request_url

The request URL

http_raw_request_headers

A string of raw headers sent during the request.

http_raw_request

The raw request sent to the server

http_raw_response_headers

Response headers from the Solr server.

http_raw_response

The response message from the server.

http_digested_response

The response in PHP serialized format.

Constantes pré-definidas

SolrResponse Class Constants

SolrResponse::PARSE_SOLR_OBJ

Documents should be parsed as SolrObject instances

SolrResponse::PARSE_SOLR_DOC

Documents should be parsed as SolrDocument instances.

Índice

  • SolrResponse::getDigestedResponse — Returns the XML response as serialized PHP data
  • SolrResponse::getHttpStatus — Returns the HTTP status of the response
  • SolrResponse::getHttpStatusMessage — Returns more details on the HTTP status
  • SolrResponse::getRawRequest — Returns the raw request sent to the Solr server
  • SolrResponse::getRawRequestHeaders — Returns the raw request headers sent to the Solr server
  • SolrResponse::getRawResponse — Returns the raw response from the server
  • SolrResponse::getRawResponseHeaders — Returns the raw response headers from the server
  • SolrResponse::getRequestUrl — Returns the full URL the request was sent to
  • SolrResponse::getResponse — Returns a SolrObject representing the XML response from the server
  • SolrResponse::setParseMode — Sets the parse mode
  • SolrResponse::success — Was the request a success
SolrClient::threads
SolrResponse::getDigestedResponse
Solr


Returns the XML response as serialized PHP data

SolrResponse
SolrResponse::getHttpStatus
SolrResponse
PHP Manual

SolrResponse::getDigestedResponse

(PECL solr >= 0.9.2)

SolrResponse::getDigestedResponse — Returns the XML response as serialized PHP data

Descrição

public string SolrResponse::getDigestedResponse ( void )

Returns the XML response as serialized PHP data

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the XML response as serialized PHP data

SolrResponse
SolrResponse::getHttpStatus
SolrResponse


Returns the HTTP status of the response

SolrResponse::getDigestedResponse
SolrResponse::getHttpStatusMessage
SolrResponse
PHP Manual

SolrResponse::getHttpStatus

(PECL solr >= 0.9.2)

SolrResponse::getHttpStatus — Returns the HTTP status of the response

Descrição

public int SolrResponse::getHttpStatus ( void )

Returns the HTTP status of the response.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the HTTP status of the response.

SolrResponse::getDigestedResponse
SolrResponse::getHttpStatusMessage
SolrResponse


Returns more details on the HTTP status

SolrResponse::getHttpStatus
SolrResponse::getRawRequest
SolrResponse
PHP Manual

SolrResponse::getHttpStatusMessage

(PECL solr >= 0.9.2)

SolrResponse::getHttpStatusMessage — Returns more details on the HTTP status

Descrição

public string SolrResponse::getHttpStatusMessage ( void )

Returns more details on the HTTP status.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns more details on the HTTP status

SolrResponse::getHttpStatus
SolrResponse::getRawRequest
SolrResponse


Returns the raw request sent to the Solr server

SolrResponse::getHttpStatusMessage
SolrResponse::getRawRequestHeaders
SolrResponse
PHP Manual

SolrResponse::getRawRequest

(PECL solr >= 0.9.2)

SolrResponse::getRawRequest — Returns the raw request sent to the Solr server

Descrição

public string SolrResponse::getRawRequest ( void )

Returns the raw request sent to the Solr server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the raw request sent to the Solr server

SolrResponse::getHttpStatusMessage
SolrResponse::getRawRequestHeaders
SolrResponse


Returns the raw request headers sent to the Solr server

SolrResponse::getRawRequest
SolrResponse::getRawResponse
SolrResponse
PHP Manual

SolrResponse::getRawRequestHeaders

(PECL solr >= 0.9.2)

SolrResponse::getRawRequestHeaders — Returns the raw request headers sent to the Solr server

Descrição

public string SolrResponse::getRawRequestHeaders ( void )

Returns the raw request headers sent to the Solr server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the raw request headers sent to the Solr server

SolrResponse::getRawRequest
SolrResponse::getRawResponse
SolrResponse


Returns the raw response from the server

SolrResponse::getRawRequestHeaders
SolrResponse::getRawResponseHeaders
SolrResponse
PHP Manual

SolrResponse::getRawResponse

(PECL solr >= 0.9.2)

SolrResponse::getRawResponse — Returns the raw response from the server

Descrição

public string SolrResponse::getRawResponse ( void )

Returns the raw response from the server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the raw response from the server.

SolrResponse::getRawRequestHeaders
SolrResponse::getRawResponseHeaders
SolrResponse


Returns the raw response headers from the server

SolrResponse::getRawResponse
SolrResponse::getRequestUrl
SolrResponse
PHP Manual

SolrResponse::getRawResponseHeaders

(PECL solr >= 0.9.2)

SolrResponse::getRawResponseHeaders — Returns the raw response headers from the server

Descrição

public string SolrResponse::getRawResponseHeaders ( void )

Returns the raw response headers from the server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the raw response headers from the server.

SolrResponse::getRawResponse
SolrResponse::getRequestUrl
SolrResponse


Returns the full URL the request was sent to

SolrResponse::getRawResponseHeaders
SolrResponse::getResponse
SolrResponse
PHP Manual

SolrResponse::getRequestUrl

(PECL solr >= 0.9.2)

SolrResponse::getRequestUrl — Returns the full URL the request was sent to

Descrição

public string SolrResponse::getRequestUrl ( void )

Returns the full URL the request was sent to.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the full URL the request was sent to

SolrResponse::getRawResponseHeaders
SolrResponse::getResponse
SolrResponse


Returns a SolrObject representing the XML response from the server

SolrResponse::getRequestUrl
SolrResponse::setParseMode
SolrResponse
PHP Manual

SolrResponse::getResponse

(PECL solr >= 0.9.2)

SolrResponse::getResponse — Returns a SolrObject representing the XML response from the server

Descrição

public SolrObject SolrResponse::getResponse ( void )

Returns a SolrObject representing the XML response from the server.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a SolrObject representing the XML response from the server

SolrResponse::getRequestUrl
SolrResponse::setParseMode
SolrResponse


Sets the parse mode

SolrResponse::getResponse
SolrResponse::success
SolrResponse
PHP Manual

SolrResponse::setParseMode

(PECL solr >= 0.9.2)

SolrResponse::setParseMode — Sets the parse mode

Descrição

public bool SolrResponse::setParseMode ([ int $parser_mode = 0 ] )

Sets the parse mode.

Parâmetros

parser_mode

SolrResponse::PARSE_SOLR_DOC parses documents in SolrDocument instances. SolrResponse::PARSE_SOLR_OBJ parses document into SolrObjects.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

SolrResponse::getResponse
SolrResponse::success
SolrResponse


Was the request a success

SolrResponse::setParseMode
SolrQueryResponse
SolrResponse
PHP Manual

SolrResponse::success

(PECL solr >= 0.9.2)

SolrResponse::success — Was the request a success

Descrição

public bool SolrResponse::success ( void )

Used to check if the request to the server was successful.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns TRUE if it was successful and FALSE if it was not.

SolrResponse::setParseMode
SolrQueryResponse
SolrResponse


The SolrQueryResponse class

Introdução

Represents a response to a query request.

Sinopse da classe

final SolrQueryResponse extends SolrResponse {
/* Constants */
const integer SolrQueryResponse::PARSE_SOLR_OBJ = 0 ;
const integer SolrQueryResponse::PARSE_SOLR_DOC = 1 ;
/* Properties */
/* Methods */
__construct ( void )
public void __destruct ( void )
/* Inherited methods */
public string SolrResponse::getDigestedResponse ( void )
public int SolrResponse::getHttpStatus ( void )
public string SolrResponse::getHttpStatusMessage ( void )
public string SolrResponse::getRawRequest ( void )
public string SolrResponse::getRawRequestHeaders ( void )
public string SolrResponse::getRawResponse ( void )
public string SolrResponse::getRawResponseHeaders ( void )
public string SolrResponse::getRequestUrl ( void )
public SolrObject SolrResponse::getResponse ( void )
public bool SolrResponse::setParseMode ([ int $parser_mode = 0 ] )
public bool SolrResponse::success ( void )
}

Propriedades

http_status

The http status of the response.

parser_mode

Whether to parse the solr documents as SolrObject or SolrDocument instances.

success

Was there an error during the request

http_status_message

Detailed message on http status

http_request_url

The request URL

http_raw_request_headers

A string of raw headers sent during the request

http_raw_request

The raw request sent to the server

http_raw_response_headers

Response headers from the Solr server

http_raw_response

The response message from the server

http_digested_response

The response in PHP serialized format.

Constantes pré-definidas

SolrQueryResponse Class constants

SolrQueryResponse::PARSE_SOLR_OBJ

Documents should be parsed as SolrObject instances

SolrQueryResponse::PARSE_SOLR_DOC

Documents should be parsed as SolrDocument instances.

Índice

  • SolrQueryResponse::__construct — Constructor
  • SolrQueryResponse::__destruct — Destructor
SolrResponse::success
SolrQueryResponse::__construct
Solr


Constructor

SolrQueryResponse
SolrQueryResponse::__destruct
SolrQueryResponse
PHP Manual

SolrQueryResponse::__construct

(PECL solr >= 0.9.2)

SolrQueryResponse::__construct — Constructor

Descrição

SolrQueryResponse::__construct ( void )

Constructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrQueryResponse
SolrQueryResponse::__destruct
SolrQueryResponse


Destructor

SolrQueryResponse::__construct
SolrUpdateResponse
SolrQueryResponse
PHP Manual

SolrQueryResponse::__destruct

(PECL solr >= 0.9.2)

SolrQueryResponse::__destruct — Destructor

Descrição

public void SolrQueryResponse::__destruct ( void )

Destructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrQueryResponse::__construct
SolrUpdateResponse
SolrQueryResponse


The SolrUpdateResponse class

Introdução

Represents a response to an update request.

Sinopse da classe

final SolrUpdateResponse extends SolrResponse {
/* Constants */
const integer SolrUpdateResponse::PARSE_SOLR_OBJ = 0 ;
const integer SolrUpdateResponse::PARSE_SOLR_DOC = 1 ;
/* Properties */
/* Methods */
__construct ( void )
public void __destruct ( void )
/* Inherited methods */
public string SolrResponse::getDigestedResponse ( void )
public int SolrResponse::getHttpStatus ( void )
public string SolrResponse::getHttpStatusMessage ( void )
public string SolrResponse::getRawRequest ( void )
public string SolrResponse::getRawRequestHeaders ( void )
public string SolrResponse::getRawResponse ( void )
public string SolrResponse::getRawResponseHeaders ( void )
public string SolrResponse::getRequestUrl ( void )
public SolrObject SolrResponse::getResponse ( void )
public bool SolrResponse::setParseMode ([ int $parser_mode = 0 ] )
public bool SolrResponse::success ( void )
}

Propriedades

http_status

The http status of the response.

parser_mode

Whether to parse the solr documents as SolrObject or SolrDocument instances.

success

Was there an error during the request

http_status_message

Detailed message on http status

http_request_url

The request URL

http_raw_request_headers

A string of raw headers sent during the request

http_raw_request

The raw request sent to the server

http_raw_response_headers

Response headers from the Solr server

http_raw_response

The response message from the server

http_digested_response

The response in PHP serialized format.

Constantes pré-definidas

SolrUpdateResponse Class Constants

SolrUpdateResponse::PARSE_SOLR_OBJ

Documents should be parsed as SolrObject instances

SolrUpdateResponse::PARSE_SOLR_DOC

Documents should be parsed as SolrDocument instances.

Índice

  • SolrUpdateResponse::__construct — Constructor
  • SolrUpdateResponse::__destruct — Destructor
SolrQueryResponse::__destruct
SolrUpdateResponse::__construct
Solr


Constructor

SolrUpdateResponse
SolrUpdateResponse::__destruct
SolrUpdateResponse
PHP Manual

SolrUpdateResponse::__construct

(PECL solr >= 0.9.2)

SolrUpdateResponse::__construct — Constructor

Descrição

SolrUpdateResponse::__construct ( void )

Constructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrUpdateResponse
SolrUpdateResponse::__destruct
SolrUpdateResponse


Destructor

SolrUpdateResponse::__construct
SolrPingResponse
SolrUpdateResponse
PHP Manual

SolrUpdateResponse::__destruct

(PECL solr >= 0.9.2)

SolrUpdateResponse::__destruct — Destructor

Descrição

public void SolrUpdateResponse::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrUpdateResponse::__construct
SolrPingResponse
SolrUpdateResponse


The SolrPingResponse class

Introdução

Represents a response to a ping request to the server

Sinopse da classe

final SolrPingResponse extends SolrResponse {
/* Constants */
const integer SolrPingResponse::PARSE_SOLR_OBJ = 0 ;
const integer SolrPingResponse::PARSE_SOLR_DOC = 1 ;
/* Properties */
/* Methods */
__construct ( void )
public void __destruct ( void )
public string getResponse ( void )
/* Inherited methods */
public string SolrResponse::getDigestedResponse ( void )
public int SolrResponse::getHttpStatus ( void )
public string SolrResponse::getHttpStatusMessage ( void )
public string SolrResponse::getRawRequest ( void )
public string SolrResponse::getRawRequestHeaders ( void )
public string SolrResponse::getRawResponse ( void )
public string SolrResponse::getRawResponseHeaders ( void )
public string SolrResponse::getRequestUrl ( void )
public SolrObject SolrResponse::getResponse ( void )
public bool SolrResponse::setParseMode ([ int $parser_mode = 0 ] )
public bool SolrResponse::success ( void )
}

Propriedades

http_status

The http status of the response.

parser_mode

Whether to parse the solr documents as SolrObject or SolrDocument instances.

success

Was there an error during the request

http_status_message

Detailed message on http status

http_request_url

The request URL

http_raw_request_headers

A string of raw headers sent during the request

http_raw_request

The raw request sent to the server

http_raw_response_headers

Response headers from the Solr server

http_raw_response

The response message from the server

http_digested_response

The response in PHP serialized format.

Constantes pré-definidas

SolrPingResponse Class Constants

SolrPingResponse::PARSE_SOLR_OBJ

Documents should be parsed as SolrObject instances

SolrPingResponse::PARSE_SOLR_DOC

Documents should be parsed as SolrDocument instances.

Índice

  • SolrPingResponse::__construct — Constructor
  • SolrPingResponse::__destruct — Destructor
  • SolrPingResponse::getResponse — Returns the response from the server
SolrUpdateResponse::__destruct
SolrPingResponse::__construct
Solr


Constructor

SolrPingResponse
SolrPingResponse::__destruct
SolrPingResponse
PHP Manual

SolrPingResponse::__construct

(PECL solr >= 0.9.2)

SolrPingResponse::__construct — Constructor

Descrição

SolrPingResponse::__construct ( void )

Constructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrPingResponse
SolrPingResponse::__destruct
SolrPingResponse


Destructor

SolrPingResponse::__construct
SolrPingResponse::getResponse
SolrPingResponse
PHP Manual

SolrPingResponse::__destruct

(PECL solr >= 0.9.2)

SolrPingResponse::__destruct — Destructor

Descrição

public void SolrPingResponse::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrPingResponse::__construct
SolrPingResponse::getResponse
SolrPingResponse


Returns the response from the server

SolrPingResponse::__destruct
SolrGenericResponse
SolrPingResponse
PHP Manual

SolrPingResponse::getResponse

(PECL solr >= 0.9.2)

SolrPingResponse::getResponse — Returns the response from the server

Descrição

public string SolrPingResponse::getResponse ( void )

Returns the response from the server. This should be empty because the request as a HEAD request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an empty string.

SolrPingResponse::__destruct
SolrGenericResponse
SolrPingResponse


The SolrGenericResponse class

Introdução

Represents a response from the solr server.

Sinopse da classe

final SolrGenericResponse extends SolrResponse {
/* Constants */
const integer SolrGenericResponse::PARSE_SOLR_OBJ = 0 ;
const integer SolrGenericResponse::PARSE_SOLR_DOC = 1 ;
/* Properties */
/* Methods */
__construct ( void )
public void __destruct ( void )
/* Inherited methods */
public string SolrResponse::getDigestedResponse ( void )
public int SolrResponse::getHttpStatus ( void )
public string SolrResponse::getHttpStatusMessage ( void )
public string SolrResponse::getRawRequest ( void )
public string SolrResponse::getRawRequestHeaders ( void )
public string SolrResponse::getRawResponse ( void )
public string SolrResponse::getRawResponseHeaders ( void )
public string SolrResponse::getRequestUrl ( void )
public SolrObject SolrResponse::getResponse ( void )
public bool SolrResponse::setParseMode ([ int $parser_mode = 0 ] )
public bool SolrResponse::success ( void )
}

Propriedades

http_status

The http status of the response.

parser_mode

Whether to parse the solr documents as SolrObject or SolrDocument instances.

success

Was there an error during the request

http_status_message

Detailed message on http status

http_request_url

The request URL

http_raw_request_headers

A string of raw headers sent during the request

http_raw_request

The raw request sent to the server

http_raw_response_headers

Response headers from the Solr server

http_raw_response

The response message from the server

http_digested_response

The response in PHP serialized format.

Constantes pré-definidas

SolrGenericResponse Class constants

SolrGenericResponse::PARSE_SOLR_OBJ

Documents should be parsed as SolrObject instances

SolrGenericResponse::PARSE_SOLR_DOC

Documents should be parsed as SolrDocument instances.

Índice

  • SolrGenericResponse::__construct — Constructor
  • SolrGenericResponse::__destruct — Destructor
SolrPingResponse::getResponse
SolrGenericResponse::__construct
Solr


Constructor

SolrGenericResponse
SolrGenericResponse::__destruct
SolrGenericResponse
PHP Manual

SolrGenericResponse::__construct

(PECL solr >= 0.9.2)

SolrGenericResponse::__construct — Constructor

Descrição

SolrGenericResponse::__construct ( void )

Constructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrGenericResponse
SolrGenericResponse::__destruct
SolrGenericResponse


Destructor

SolrGenericResponse::__construct
SolrParams
SolrGenericResponse
PHP Manual

SolrGenericResponse::__destruct

(PECL solr >= 0.9.2)

SolrGenericResponse::__destruct — Destructor

Descrição

public void SolrGenericResponse::__destruct ( void )

Destructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrGenericResponse::__construct
SolrParams
SolrGenericResponse


The SolrParams class

Introdução

Represents a collection of name-value pairs sent to the Solr server during a request.

Sinopse da classe

abstract SolrParams implements Serializable {
/* Methods */
final public SolrParams add ( string $name , string $value )
public SolrParams addParam ( string $name , string $value )
final public mixed get ( string $param_name )
final public mixed getParam ([ string $param_name ] )
final public array getParams ( void )
final public array getPreparedParams ( void )
final public string serialize ( void )
final public void set ( string $name , string $value )
public SolrParams setParam ( string $name , string $value )
final public string toString ([ bool $url_encode = false ] )
final public void unserialize ( string $serialized )
}

Índice

  • SolrParams::add — This is an alias for SolrParams::addParam
  • SolrParams::addParam — Adds a parameter to the object
  • SolrParams::get — This is an alias for SolrParams::getParam
  • SolrParams::getParam — Returns a parameter value
  • SolrParams::getParams — Returns an array of non URL-encoded parameters
  • SolrParams::getPreparedParams — Returns an array of URL-encoded parameters
  • SolrParams::serialize — Used for custom serialization
  • SolrParams::set — An alias of SolrParams::setParam
  • SolrParams::setParam — Sets the parameter to the specified value
  • SolrParams::toString — Returns all the name-value pair parameters in the object
  • SolrParams::unserialize — Used for custom serialization
SolrGenericResponse::__destruct
SolrParams::add
Solr


This is an alias for SolrParams::addParam

SolrParams
SolrParams::addParam
SolrParams
PHP Manual

SolrParams::add

(PECL solr >= 0.9.2)

SolrParams::add — This is an alias for SolrParams::addParam

Descrição

final public SolrParams SolrParams::add ( string $name , string $value )

This is an alias for SolrParams::addParam

Parâmetros

name

The name of the parameter

value

The value of the parameter

Valor Retornado

Returns a SolrParams instance on success

SolrParams
SolrParams::addParam
SolrParams


Adds a parameter to the object

SolrParams::add
SolrParams::get
SolrParams
PHP Manual

SolrParams::addParam

(PECL solr >= 0.9.2)

SolrParams::addParam — Adds a parameter to the object

Descrição

public SolrParams SolrParams::addParam ( string $name , string $value )

Adds a parameter to the object. This is used for parameters that can be specified multiple times.

Parâmetros

name

Name of parameter

value

Value of parameter

Valor Retornado

Returns a SolrParam object on success and FALSE on failure.

SolrParams::add
SolrParams::get
SolrParams


This is an alias for SolrParams::getParam

SolrParams::addParam
SolrParams::getParam
SolrParams
PHP Manual

SolrParams::get

(PECL solr >= 0.9.2)

SolrParams::get — This is an alias for SolrParams::getParam

Descrição

final public mixed SolrParams::get ( string $param_name )

This is an alias for SolrParams::getParam

Parâmetros

param_name

Then name of the parameter

Valor Retornado

Returns an array or string depending on the type of parameter

SolrParams::addParam
SolrParams::getParam
SolrParams


Returns a parameter value

SolrParams::get
SolrParams::getParams
SolrParams
PHP Manual

SolrParams::getParam

(PECL solr >= 0.9.2)

SolrParams::getParam — Returns a parameter value

Descrição

final public mixed SolrParams::getParam ([ string $param_name ] )

Returns a parameter with name param_name

Parâmetros

param_name

The name of the parameter

Valor Retornado

Returns a string or an array depending on the type of the parameter

SolrParams::get
SolrParams::getParams
SolrParams


Returns an array of non URL-encoded parameters

SolrParams::getParam
SolrParams::getPreparedParams
SolrParams
PHP Manual

SolrParams::getParams

(PECL solr >= 0.9.2)

SolrParams::getParams — Returns an array of non URL-encoded parameters

Descrição

final public array SolrParams::getParams ( void )

Returns an array of non URL-encoded parameters

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of non URL-encoded parameters

SolrParams::getParam
SolrParams::getPreparedParams
SolrParams


Returns an array of URL-encoded parameters

SolrParams::getParams
SolrParams::serialize
SolrParams
PHP Manual

SolrParams::getPreparedParams

(PECL solr >= 0.9.2)

SolrParams::getPreparedParams — Returns an array of URL-encoded parameters

Descrição

final public array SolrParams::getPreparedParams ( void )

Returns an array on URL-encoded parameters

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on URL-encoded parameters

SolrParams::getParams
SolrParams::serialize
SolrParams


Used for custom serialization

SolrParams::getPreparedParams
SolrParams::set
SolrParams
PHP Manual

SolrParams::serialize

(PECL solr >= 0.9.2)

SolrParams::serialize — Used for custom serialization

Descrição

final public string SolrParams::serialize ( void )

Used for custom serialization

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Used for custom serialization

SolrParams::getPreparedParams
SolrParams::set
SolrParams


An alias of SolrParams::setParam

SolrParams::serialize
SolrParams::setParam
SolrParams
PHP Manual

SolrParams::set

(PECL solr >= 0.9.2)

SolrParams::set — An alias of SolrParams::setParam

Descrição

final public void SolrParams::set ( string $name , string $value )

An alias of SolrParams::setParam

Parâmetros

name

Then name of the parameter

value

The parameter value

Valor Retornado

Returns an instance of the SolrParams object on success

SolrParams::serialize
SolrParams::setParam
SolrParams


Sets the parameter to the specified value

SolrParams::set
SolrParams::toString
SolrParams
PHP Manual

SolrParams::setParam

(PECL solr >= 0.9.2)

SolrParams::setParam — Sets the parameter to the specified value

Descrição

public SolrParams SolrParams::setParam ( string $name , string $value )

Sets the query parameter to the specified value. This is used for parameters that can only be specified once. Subsequent calls with the same parameter name will override the existing value

Parâmetros

name

Name of the parameter

value

Value of the parameter

Valor Retornado

Returns a SolrParam object on success and FALSE on value.

Exemplos

Exemplo #1 SolrParams::setParam() example

<?php

$param = new SolrParam();

$param->setParam('q', 'solr')->setParam('rows', 2);

?>

O exemplo acima irá imprimir algo similar a:

SolrParams::set
SolrParams::toString
SolrParams


Returns all the name-value pair parameters in the object

SolrParams::setParam
SolrParams::unserialize
SolrParams
PHP Manual

SolrParams::toString

(PECL solr >= 0.9.2)

SolrParams::toString — Returns all the name-value pair parameters in the object

Descrição

final public string SolrParams::toString ([ bool $url_encode = false ] )

Returns all the name-value pair parameters in the object

Parâmetros

url_encode

Whether to return URL-encoded values

Valor Retornado

Returns a string on success and FALSE on failure.

SolrParams::setParam
SolrParams::unserialize
SolrParams


Used for custom serialization

SolrParams::toString
SolrModifiableParams
SolrParams
PHP Manual

SolrParams::unserialize

(PECL solr >= 0.9.2)

SolrParams::unserialize — Used for custom serialization

Descrição

final public void SolrParams::unserialize ( string $serialized )

Used for custom serialization

Parâmetros

serialized

The serialized representation of the object

Valor Retornado

None

SolrParams::toString
SolrModifiableParams
SolrParams


The SolrModifiableParams class

Introdução

Represents a collection of name-value pairs sent to the Solr server during a request.

Sinopse da classe

SolrModifiableParams extends SolrParams implements Serializable {
/* Methods */
__construct ( void )
public void __destruct ( void )
/* Inherited methods */
final public SolrParams SolrParams::add ( string $name , string $value )
public SolrParams SolrParams::addParam ( string $name , string $value )
final public mixed SolrParams::get ( string $param_name )
final public mixed SolrParams::getParam ([ string $param_name ] )
final public array SolrParams::getParams ( void )
final public array SolrParams::getPreparedParams ( void )
final public string SolrParams::serialize ( void )
final public void SolrParams::set ( string $name , string $value )
public SolrParams SolrParams::setParam ( string $name , string $value )
final public string SolrParams::toString ([ bool $url_encode = false ] )
final public void SolrParams::unserialize ( string $serialized )
}

Índice

  • SolrModifiableParams::__construct — Constructor
  • SolrModifiableParams::__destruct — Destructor
SolrParams::unserialize
SolrModifiableParams::__construct
Solr


Constructor

SolrModifiableParams
SolrModifiableParams::__destruct
SolrModifiableParams
PHP Manual

SolrModifiableParams::__construct

(PECL solr >= 0.9.2)

SolrModifiableParams::__construct — Constructor

Descrição

SolrModifiableParams::__construct ( void )

Constructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrModifiableParams
SolrModifiableParams::__destruct
SolrModifiableParams


Destructor

SolrModifiableParams::__construct
SolrQuery
SolrModifiableParams
PHP Manual

SolrModifiableParams::__destruct

(PECL solr >= 0.9.2)

SolrModifiableParams::__destruct — Destructor

Descrição

public void SolrModifiableParams::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None

SolrModifiableParams::__construct
SolrQuery
SolrModifiableParams


The SolrQuery class

Introdução

Represents a collection of name-value pairs sent to the Solr server during a request.

Sinopse da classe

SolrQuery extends SolrModifiableParams implements Serializable {
/* Constants */
const integer SolrQuery::ORDER_ASC = 0 ;
const integer SolrQuery::ORDER_DESC = 1 ;
const integer SolrQuery::FACET_SORT_INDEX = 0 ;
const integer SolrQuery::FACET_SORT_COUNT = 1 ;
const integer SolrQuery::TERMS_SORT_INDEX = 0 ;
const integer SolrQuery::TERMS_SORT_COUNT = 1 ;
/* Properties */
/* Methods */
public SolrQuery addFacetDateField ( string $dateField )
publicSolrQuery addFacetDateOther ( string $value [, string $field_override ] )
publicSolrQuery addFacetField ( string $field )
publicSolrQuery addFacetQuery ( string $facetQuery )
publicSolrQuery addField ( string $field )
publicSolrQuery addFilterQuery ( string $fq )
publicSolrQuery addHighlightField ( string $field )
publicSolrQuery addMltField ( string $field )
publicSolrQuery addMltQueryField ( string $field , float $boost )
publicSolrQuery addSortField ( string $field [, int $order = SolrQuery::ORDER_DESC ] )
publicSolrQuery addStatsFacet ( string $field )
public SolrQuery addStatsField ( string $field )
__construct ([ string $q ] )
publicvoid __destruct ( void )
public bool getFacet ( void )
public string getFacetDateEnd ([ string $field_override ] )
public array getFacetDateFields ( void )
public string getFacetDateGap ([ string $field_override ] )
public string getFacetDateHardEnd ([ string $field_override ] )
public array getFacetDateOther ([ string $field_override ] )
public string getFacetDateStart ([ string $field_override ] )
public array getFacetFields ( void )
public int getFacetLimit ([ string $field_override ] )
public string getFacetMethod ([ string $field_override ] )
public int getFacetMinCount ([ string $field_override ] )
public bool getFacetMissing ([ string $field_override ] )
public int getFacetOffset ([ string $field_override ] )
public string getFacetPrefix ([ string $field_override ] )
public array getFacetQueries ( void )
public int getFacetSort ([ string $field_override ] )
public array getFields ( void )
public array getFilterQueries ( void )
public bool getHighlight ( void )
public string getHighlightAlternateField ([ string $field_override ] )
public array getHighlightFields ( void )
public string getHighlightFormatter ([ string $field_override ] )
public string getHighlightFragmenter ([ string $field_override ] )
public int getHighlightFragsize ([ string $field_override ] )
public bool getHighlightHighlightMultiTerm ( void )
public int getHighlightMaxAlternateFieldLength ([ string $field_override ] )
public int getHighlightMaxAnalyzedChars ( void )
public bool getHighlightMergeContiguous ([ string $field_override ] )
public int getHighlightRegexMaxAnalyzedChars ( void )
public string getHighlightRegexPattern ( void )
public float getHighlightRegexSlop ( void )
public bool getHighlightRequireFieldMatch ( void )
public string getHighlightSimplePost ([ string $field_override ] )
public string getHighlightSimplePre ([ string $field_override ] )
public int getHighlightSnippets ([ string $field_override ] )
public bool getHighlightUsePhraseHighlighter ( void )
public bool getMlt ( void )
public bool getMltBoost ( void )
public int getMltCount ( void )
public array getMltFields ( void )
public int getMltMaxNumQueryTerms ( void )
public int getMltMaxNumTokens ( void )
public int getMltMaxWordLength ( void )
public int getMltMinDocFrequency ( void )
public int getMltMinTermFrequency ( void )
public int getMltMinWordLength ( void )
public array getMltQueryFields ( void )
public string getQuery ( void )
public int getRows ( void )
public array getSortFields ( void )
public int getStart ( void )
public bool getStats ( void )
public array getStatsFacets ( void )
public array getStatsFields ( void )
public bool getTerms ( void )
public string getTermsField ( void )
public bool getTermsIncludeLowerBound ( void )
public bool getTermsIncludeUpperBound ( void )
public int getTermsLimit ( void )
public string getTermsLowerBound ( void )
public int getTermsMaxCount ( void )
public int getTermsMinCount ( void )
public string getTermsPrefix ( void )
public bool getTermsReturnRaw ( void )
public int getTermsSort ( void )
public string getTermsUpperBound ( void )
public int getTimeAllowed ( void )
publicSolrQuery removeFacetDateField ( string $field )
publicSolrQuery removeFacetDateOther ( string $value [, string $field_override ] )
publicSolrQuery removeFacetField ( string $field )
publicSolrQuery removeFacetQuery ( string $value )
publicSolrQuery removeField ( string $field )
publicSolrQuery removeFilterQuery ( string $fq )
publicSolrQuery removeHighlightField ( string $field )
publicSolrQuery removeMltField ( string $field )
publicSolrQuery removeMltQueryField ( string $queryField )
publicSolrQuery removeSortField ( string $field )
publicSolrQuery removeStatsFacet ( string $value )
publicSolrQuery removeStatsField ( string $field )
publicSolrQuery setEchoHandler ( bool $flag )
publicSolrQuery setEchoParams ( string $type )
publicSolrQuery setExplainOther ( string $query )
publicSolrQuery setFacet ( bool $flag )
publicSolrQuery setFacetDateEnd ( string $value [, string $field_override ] )
publicSolrQuery setFacetDateGap ( string $value [, string $field_override ] )
publicSolrQuery setFacetDateHardEnd ( bool $value [, string $field_override ] )
publicSolrQuery setFacetDateStart ( string $value [, string $field_override ] )
publicSolrQuery setFacetEnumCacheMinDefaultFrequency ( int $frequency [, string $field_override ] )
publicSolrQuery setFacetLimit ( int $limit [, string $field_override ] )
publicSolrQuery setFacetMethod ( string $method [, string $field_override ] )
publicSolrQuery setFacetMinCount ( int $mincount [, string $field_override ] )
publicSolrQuery setFacetMissing ( bool $flag [, string $field_override ] )
publicSolrQuery setFacetOffset ( int $offset [, string $field_override ] )
publicSolrQuery setFacetPrefix ( string $prefix [, string $field_override ] )
publicSolrQuery setFacetSort ( int $facetSort [, string $field_override ] )
publicSolrQuery setHighlight ( bool $flag )
publicSolrQuery setHighlightAlternateField ( string $field [, string $field_override ] )
publicSolrQuery setHighlightFormatter ( string $formatter [, string $field_override ] )
publicSolrQuery setHighlightFragmenter ( string $fragmenter [, string $field_override ] )
publicSolrQuery setHighlightFragsize ( int $size [, string $field_override ] )
publicSolrQuery setHighlightHighlightMultiTerm ( bool $flag )
publicSolrQuery setHighlightMaxAlternateFieldLength ( int $fieldLength [, string $field_override ] )
publicSolrQuery setHighlightMaxAnalyzedChars ( int $value )
publicSolrQuery setHighlightMergeContiguous ( bool $flag [, string $field_override ] )
publicSolrQuery setHighlightRegexMaxAnalyzedChars ( int $maxAnalyzedChars )
publicSolrQuery setHighlightRegexPattern ( string $value )
publicSolrQuery setHighlightRegexSlop ( float $factor )
publicSolrQuery setHighlightRequireFieldMatch ( bool $flag )
publicSolrQuery setHighlightSimplePost ( string $simplePost [, string $field_override ] )
publicSolrQuery setHighlightSimplePre ( string $simplePre [, string $field_override ] )
publicSolrQuery setHighlightSnippets ( int $value [, string $field_override ] )
publicSolrQuery setHighlightUsePhraseHighlighter ( bool $flag )
publicSolrQuery setMlt ( bool $flag )
publicSolrQuery setMltBoost ( bool $flag )
publicSolrQuery setMltCount ( int $count )
publicSolrQuery setMltMaxNumQueryTerms ( int $value )
publicSolrQuery setMltMaxNumTokens ( int $value )
publicSolrQuery setMltMaxWordLength ( int $maxWordLength )
publicSolrQuery setMltMinDocFrequency ( int $minDocFrequency )
publicSolrQuery setMltMinTermFrequency ( int $minTermFrequency )
publicSolrQuery setMltMinWordLength ( int $minWordLength )
publicSolrQuery setOmitHeader ( bool $flag )
publicSolrQuery setQuery ( string $query )
publicSolrQuery setRows ( int $rows )
publicSolrQuery setShowDebugInfo ( bool $flag )
publicSolrQuery setStart ( int $start )
publicSolrQuery setStats ( bool $flag )
publicSolrQuery setTerms ( bool $flag )
publicSolrQuery setTermsField ( string $fieldname )
publicSolrQuery setTermsIncludeLowerBound ( bool $flag )
publicSolrQuery setTermsIncludeUpperBound ( bool $flag )
publicSolrQuery setTermsLimit ( int $limit )
publicSolrQuery setTermsLowerBound ( string $lowerBound )
publicSolrQuery setTermsMaxCount ( int $frequency )
publicSolrQuery setTermsMinCount ( int $frequency )
publicSolrQuery setTermsPrefix ( string $prefix )
publicSolrQuery setTermsReturnRaw ( bool $flag )
publicSolrQuery setTermsSort ( int $sortType )
publicSolrQuery setTermsUpperBound ( string $upperBound )
publicSolrQuery setTimeAllowed ( int $timeAllowed )
/* Inherited methods */
SolrModifiableParams::__construct ( void )
public void SolrModifiableParams::__destruct ( void )
}

Constantes pré-definidas

SolrQuery Node Types

SolrQuery::ORDER_ASC

Used to specify that the sorting should be in acending order

SolrQuery::ORDER_DESC

Used to specify that the sorting should be in descending order

SolrQuery::FACET_SORT_INDEX

Used to specify that the facet should sort by index

SolrQuery::FACET_SORT_COUNT

Used to specify that the facet should sort by count

SolrQuery::TERMS_SORT_INDEX

Used in the TermsComponent

SolrQuery::TERMS_SORT_COUNT

Used in the TermsComponent

Índice

  • SolrQuery::addFacetDateField — Maps to facet.date
  • SolrQuery::addFacetDateOther — Adds another facet.date.other parameter
  • SolrQuery::addFacetField — Adds another field to the facet
  • SolrQuery::addFacetQuery — Adds a facet query
  • SolrQuery::addField — Specifies which fields to return in the result
  • SolrQuery::addFilterQuery — Specifies a filter query
  • SolrQuery::addHighlightField — Maps to hl.fl
  • SolrQuery::addMltField — Sets a field to use for similarity
  • SolrQuery::addMltQueryField — Maps to mlt.qf
  • SolrQuery::addSortField — Used to control how the results should be sorted
  • SolrQuery::addStatsFacet — Requests a return of sub results for values within the given facet
  • SolrQuery::addStatsField — Maps to stats.field parameter
  • SolrQuery::__construct — Constructor
  • SolrQuery::__destruct — Destructor
  • SolrQuery::getFacet — Returns the value of the facet parameter
  • SolrQuery::getFacetDateEnd — Returns the value for the facet.date.end parameter
  • SolrQuery::getFacetDateFields — Returns all the facet.date fields
  • SolrQuery::getFacetDateGap — Returns the value of the facet.date.gap parameter
  • SolrQuery::getFacetDateHardEnd — Returns the value of the facet.date.hardend parameter
  • SolrQuery::getFacetDateOther — Returns the value for the facet.date.other parameter
  • SolrQuery::getFacetDateStart — Returns the lower bound for the first date range for all date faceting on this field
  • SolrQuery::getFacetFields — Returns all the facet fields
  • SolrQuery::getFacetLimit — Returns the maximum number of constraint counts that should be returned for the facet fields
  • SolrQuery::getFacetMethod — Returns the value of the facet.method parameter
  • SolrQuery::getFacetMinCount — Returns the minimum counts for facet fields should be included in the response
  • SolrQuery::getFacetMissing — Returns the current state of the facet.missing parameter
  • SolrQuery::getFacetOffset — Returns an offset into the list of constraints to be used for pagination
  • SolrQuery::getFacetPrefix — Returns the facet prefix
  • SolrQuery::getFacetQueries — Returns all the facet queries
  • SolrQuery::getFacetSort — Returns the facet sort type
  • SolrQuery::getFields — Returns the list of fields that will be returned in the response
  • SolrQuery::getFilterQueries — Returns an array of filter queries
  • SolrQuery::getHighlight — Returns the state of the hl parameter
  • SolrQuery::getHighlightAlternateField — Returns the highlight field to use as backup or default
  • SolrQuery::getHighlightFields — Returns all the fields that Solr should generate highlighted snippets for
  • SolrQuery::getHighlightFormatter — Returns the formatter for the highlighted output
  • SolrQuery::getHighlightFragmenter — Returns the text snippet generator for highlighted text
  • SolrQuery::getHighlightFragsize — Returns the number of characters of fragments to consider for highlighting
  • SolrQuery::getHighlightHighlightMultiTerm — Returns whether or not to enable highlighting for range/wildcard/fuzzy/prefix queries
  • SolrQuery::getHighlightMaxAlternateFieldLength — Returns the maximum number of characters of the field to return
  • SolrQuery::getHighlightMaxAnalyzedChars — Returns the maximum number of characters into a document to look for suitable snippets
  • SolrQuery::getHighlightMergeContiguous — Returns whether or not the collapse contiguous fragments into a single fragment
  • SolrQuery::getHighlightRegexMaxAnalyzedChars — Returns the maximum number of characters from a field when using the regex fragmenter
  • SolrQuery::getHighlightRegexPattern — Returns the regular expression for fragmenting
  • SolrQuery::getHighlightRegexSlop — Returns the deviation factor from the ideal fragment size
  • SolrQuery::getHighlightRequireFieldMatch — Returns if a field will only be highlighted if the query matched in this particular field
  • SolrQuery::getHighlightSimplePost — Returns the text which appears after a highlighted term
  • SolrQuery::getHighlightSimplePre — Returns the text which appears before a highlighted term
  • SolrQuery::getHighlightSnippets — Returns the maximum number of highlighted snippets to generate per field
  • SolrQuery::getHighlightUsePhraseHighlighter — Returns the state of the hl.usePhraseHighlighter parameter
  • SolrQuery::getMlt — Returns whether or not MoreLikeThis results should be enabled
  • SolrQuery::getMltBoost — Returns whether or not the query will be boosted by the interesting term relevance
  • SolrQuery::getMltCount — Returns the number of similar documents to return for each result
  • SolrQuery::getMltFields — Returns all the fields to use for similarity
  • SolrQuery::getMltMaxNumQueryTerms — Returns the maximum number of query terms that will be included in any generated query
  • SolrQuery::getMltMaxNumTokens — Returns the maximum number of tokens to parse in each document field that is not stored with TermVector support
  • SolrQuery::getMltMaxWordLength — Returns the maximum word length above which words will be ignored
  • SolrQuery::getMltMinDocFrequency — Returns the treshold frequency at which words will be ignored which do not occur in at least this many docs
  • SolrQuery::getMltMinTermFrequency — Returns the frequency below which terms will be ignored in the source document
  • SolrQuery::getMltMinWordLength — Returns the minimum word length below which words will be ignored
  • SolrQuery::getMltQueryFields — Returns the query fields and their boosts
  • SolrQuery::getQuery — Returns the main query
  • SolrQuery::getRows — Returns the maximum number of documents
  • SolrQuery::getSortFields — Returns all the sort fields
  • SolrQuery::getStart — Returns the offset in the complete result set
  • SolrQuery::getStats — Returns whether or not stats is enabled
  • SolrQuery::getStatsFacets — Returns all the stats facets that were set
  • SolrQuery::getStatsFields — Returns all the statistics fields
  • SolrQuery::getTerms — Returns whether or not the TermsComponent is enabled
  • SolrQuery::getTermsField — Returns the field from which the terms are retrieved
  • SolrQuery::getTermsIncludeLowerBound — Returns whether or not to include the lower bound in the result set
  • SolrQuery::getTermsIncludeUpperBound — Returns whether or not to include the upper bound term in the result set
  • SolrQuery::getTermsLimit — Returns the maximum number of terms Solr should return
  • SolrQuery::getTermsLowerBound — Returns the term to start at
  • SolrQuery::getTermsMaxCount — Returns the maximum document frequency
  • SolrQuery::getTermsMinCount — Returns the minimum document frequency to return in order to be included
  • SolrQuery::getTermsPrefix — Returns the term prefix
  • SolrQuery::getTermsReturnRaw — Whether or not to return raw characters
  • SolrQuery::getTermsSort — Returns an integer indicating how terms are sorted
  • SolrQuery::getTermsUpperBound — Returns the term to stop at
  • SolrQuery::getTimeAllowed — Returns the time in milliseconds allowed for the query to finish
  • SolrQuery::removeFacetDateField — Removes one of the facet date fields
  • SolrQuery::removeFacetDateOther — Removes one of the facet.date.other parameters
  • SolrQuery::removeFacetField — Removes one of the facet.date parameters
  • SolrQuery::removeFacetQuery — Removes one of the facet.query parameters
  • SolrQuery::removeField — Removes a field from the list of fields
  • SolrQuery::removeFilterQuery — Removes a filter query
  • SolrQuery::removeHighlightField — Removes one of the fields used for highlighting
  • SolrQuery::removeMltField — Removes one of the moreLikeThis fields
  • SolrQuery::removeMltQueryField — Removes one of the moreLikeThis query fields
  • SolrQuery::removeSortField — Removes one of the sort fields
  • SolrQuery::removeStatsFacet — Removes one of the stats.facet parameters
  • SolrQuery::removeStatsField — Removes one of the stats.field parameters
  • SolrQuery::setEchoHandler — Toggles the echoHandler parameter
  • SolrQuery::setEchoParams — Determines what kind of parameters to include in the response
  • SolrQuery::setExplainOther — Sets the explainOther common query parameter
  • SolrQuery::setFacet — Maps to the facet parameter. Enables or disables facetting
  • SolrQuery::setFacetDateEnd — Maps to facet.date.end
  • SolrQuery::setFacetDateGap — Maps to facet.date.gap
  • SolrQuery::setFacetDateHardEnd — Maps to facet.date.hardend
  • SolrQuery::setFacetDateStart — Maps to facet.date.start
  • SolrQuery::setFacetEnumCacheMinDefaultFrequency — Sets the minimum document frequency used for determining term count
  • SolrQuery::setFacetLimit — Maps to facet.limit
  • SolrQuery::setFacetMethod — Specifies the type of algorithm to use when faceting a field
  • SolrQuery::setFacetMinCount — Maps to facet.mincount
  • SolrQuery::setFacetMissing — Maps to facet.missing
  • SolrQuery::setFacetOffset — Sets the offset into the list of constraints to allow for pagination
  • SolrQuery::setFacetPrefix — Specifies a string prefix with which to limits the terms on which to facet
  • SolrQuery::setFacetSort — Determines the ordering of the facet field constraints
  • SolrQuery::setHighlight — Enables or disables highlighting
  • SolrQuery::setHighlightAlternateField — Specifies the backup field to use
  • SolrQuery::setHighlightFormatter — Specify a formatter for the highlight output
  • SolrQuery::setHighlightFragmenter — Sets a text snippet generator for highlighted text
  • SolrQuery::setHighlightFragsize — The size of fragments to consider for highlighting
  • SolrQuery::setHighlightHighlightMultiTerm — Use SpanScorer to highlight phrase terms
  • SolrQuery::setHighlightMaxAlternateFieldLength — Sets the maximum number of characters of the field to return
  • SolrQuery::setHighlightMaxAnalyzedChars — Specifies the number of characters into a document to look for suitable snippets
  • SolrQuery::setHighlightMergeContiguous — Whether or not to collapse contiguous fragments into a single fragment
  • SolrQuery::setHighlightRegexMaxAnalyzedChars — Specify the maximum number of characters to analyze
  • SolrQuery::setHighlightRegexPattern — Specify the regular expression for fragmenting
  • SolrQuery::setHighlightRegexSlop — Sets the factor by which the regex fragmenter can stray from the ideal fragment size
  • SolrQuery::setHighlightRequireFieldMatch — Require field matching during highlighting
  • SolrQuery::setHighlightSimplePost — Sets the text which appears after a highlighted term
  • SolrQuery::setHighlightSimplePre — Sets the text which appears before a highlighted term
  • SolrQuery::setHighlightSnippets — Sets the maximum number of highlighted snippets to generate per field
  • SolrQuery::setHighlightUsePhraseHighlighter — Whether to highlight phrase terms only when they appear within the query phrase
  • SolrQuery::setMlt — Enables or disables moreLikeThis
  • SolrQuery::setMltBoost — Set if the query will be boosted by the interesting term relevance
  • SolrQuery::setMltCount — Set the number of similar documents to return for each result
  • SolrQuery::setMltMaxNumQueryTerms — Sets the maximum number of query terms included
  • SolrQuery::setMltMaxNumTokens — Specifies the maximum number of tokens to parse
  • SolrQuery::setMltMaxWordLength — Sets the maximum word length
  • SolrQuery::setMltMinDocFrequency — Sets the mltMinDoc frequency
  • SolrQuery::setMltMinTermFrequency — Sets the frequency below which terms will be ignored in the source docs
  • SolrQuery::setMltMinWordLength — Sets the minimum word length
  • SolrQuery::setOmitHeader — Exclude the header from the returned results
  • SolrQuery::setQuery — Sets the search query
  • SolrQuery::setRows — Specifies the maximum number of rows to return in the result
  • SolrQuery::setShowDebugInfo — Flag to show debug information
  • SolrQuery::setStart — Specifies the number of rows to skip
  • SolrQuery::setStats — Enables or disables the Stats component
  • SolrQuery::setTerms — Enables or disables the TermsComponent
  • SolrQuery::setTermsField — Sets the name of the field to get the Terms from
  • SolrQuery::setTermsIncludeLowerBound — Include the lower bound term in the result set
  • SolrQuery::setTermsIncludeUpperBound — Include the upper bound term in the result set
  • SolrQuery::setTermsLimit — Sets the maximum number of terms to return
  • SolrQuery::setTermsLowerBound — Specifies the Term to start from
  • SolrQuery::setTermsMaxCount — Sets the maximum document frequency
  • SolrQuery::setTermsMinCount — Sets the minimum document frequency
  • SolrQuery::setTermsPrefix — Restrict matches to terms that start with the prefix
  • SolrQuery::setTermsReturnRaw — Return the raw characters of the indexed term
  • SolrQuery::setTermsSort — Specifies how to sort the returned terms
  • SolrQuery::setTermsUpperBound — Sets the term to stop at
  • SolrQuery::setTimeAllowed — The time allowed for search to finish
SolrModifiableParams::__destruct
SolrQuery::addFacetDateField
Solr


Maps to facet.date

SolrQuery
SolrQuery::addFacetDateOther
SolrQuery
PHP Manual

SolrQuery::addFacetDateField

(PECL solr >= 0.9.2)

SolrQuery::addFacetDateField — Maps to facet.date

Descrição

public SolrQuery SolrQuery::addFacetDateField ( string $dateField )

This method allows you to specify a field which should be treated as a facet.

It can be used multiple times with different field names to indicate multiple facet fields

Parâmetros

dateField

The name of the date field.

Valor Retornado

Returns a SolrQuery object.

SolrQuery
SolrQuery::addFacetDateOther
SolrQuery


Adds another facet.date.other parameter

SolrQuery::addFacetDateField
SolrQuery::addFacetField
SolrQuery
PHP Manual

SolrQuery::addFacetDateOther

(PECL solr >= 0.9.2)

SolrQuery::addFacetDateOther — Adds another facet.date.other parameter

Descrição

publicSolrQuery SolrQuery::addFacetDateOther ( string $value [, string $field_override ] )

Sets the facet.date.other parameter. Accepts an optional field override

Parâmetros

value

The value to use.

field_override

The field name for the override.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addFacetDateField
SolrQuery::addFacetField
SolrQuery


Adds another field to the facet

SolrQuery::addFacetDateOther
SolrQuery::addFacetQuery
SolrQuery
PHP Manual

SolrQuery::addFacetField

(PECL solr >= 0.9.2)

SolrQuery::addFacetField — Adds another field to the facet

Descrição

publicSolrQuery SolrQuery::addFacetField ( string $field )

Adds another field to the facet

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addFacetDateOther
SolrQuery::addFacetQuery
SolrQuery


Adds a facet query

SolrQuery::addFacetField
SolrQuery::addField
SolrQuery
PHP Manual

SolrQuery::addFacetQuery

(PECL solr >= 0.9.2)

SolrQuery::addFacetQuery — Adds a facet query

Descrição

publicSolrQuery SolrQuery::addFacetQuery ( string $facetQuery )

Adds a facet query

Parâmetros

facetQuery

The facet query

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addFacetField
SolrQuery::addField
SolrQuery


Specifies which fields to return in the result

SolrQuery::addFacetQuery
SolrQuery::addFilterQuery
SolrQuery
PHP Manual

SolrQuery::addField

(PECL solr >= 0.9.2)

SolrQuery::addField — Specifies which fields to return in the result

Descrição

publicSolrQuery SolrQuery::addField ( string $field )

This method is used to used to specify a set of fields to return, thereby restricting the amount of data returned in the response.

It should be called multiple time, once for each field name.

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object

SolrQuery::addFacetQuery
SolrQuery::addFilterQuery
SolrQuery


Specifies a filter query

SolrQuery::addField
SolrQuery::addHighlightField
SolrQuery
PHP Manual

SolrQuery::addFilterQuery

(PECL solr >= 0.9.2)

SolrQuery::addFilterQuery — Specifies a filter query

Descrição

publicSolrQuery SolrQuery::addFilterQuery ( string $fq )

Specifies a filter query

Parâmetros

fq

The filter query

Valor Retornado

Returns the current SolrQuery object.

SolrQuery::addField
SolrQuery::addHighlightField
SolrQuery


Maps to hl.fl

SolrQuery::addFilterQuery
SolrQuery::addMltField
SolrQuery
PHP Manual

SolrQuery::addHighlightField

(PECL solr >= 0.9.2)

SolrQuery::addHighlightField — Maps to hl.fl

Descrição

publicSolrQuery SolrQuery::addHighlightField ( string $field )

Maps to hl.fl. This is used to specify that highlighted snippets should be generated for a particular field

Parâmetros

field

Name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addFilterQuery
SolrQuery::addMltField
SolrQuery


Sets a field to use for similarity

SolrQuery::addHighlightField
SolrQuery::addMltQueryField
SolrQuery
PHP Manual

SolrQuery::addMltField

(PECL solr >= 0.9.2)

SolrQuery::addMltField — Sets a field to use for similarity

Descrição

publicSolrQuery SolrQuery::addMltField ( string $field )

Maps to mlt.fl. It specifies that a field should be used for similarity.

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addHighlightField
SolrQuery::addMltQueryField
SolrQuery


Maps to mlt.qf

SolrQuery::addMltField
SolrQuery::addSortField
SolrQuery
PHP Manual

SolrQuery::addMltQueryField

(PECL solr >= 0.9.2)

SolrQuery::addMltQueryField — Maps to mlt.qf

Descrição

publicSolrQuery SolrQuery::addMltQueryField ( string $field , float $boost )

Maps to mlt.qf. It is used to specify query fields and their boosts

Parâmetros

field

The name of the field

boost

Its boost value

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addMltField
SolrQuery::addSortField
SolrQuery


Used to control how the results should be sorted

SolrQuery::addMltQueryField
SolrQuery::addStatsFacet
SolrQuery
PHP Manual

SolrQuery::addSortField

(PECL solr >= 0.9.2)

SolrQuery::addSortField — Used to control how the results should be sorted

Descrição

publicSolrQuery SolrQuery::addSortField ( string $field [, int $order = SolrQuery::ORDER_DESC ] )

Used to control how the results should be sorted.

Parâmetros

field

The name of the field

order

The sort direction. This should be either SolrQuery::ORDER_ASC or SolrQuery::ORDER_DESC.

Valor Retornado

Returns the current SolrQuery object.

SolrQuery::addMltQueryField
SolrQuery::addStatsFacet
SolrQuery


Requests a return of sub results for values within the given facet

SolrQuery::addSortField
SolrQuery::addStatsField
SolrQuery
PHP Manual

SolrQuery::addStatsFacet

(PECL solr >= 0.9.2)

SolrQuery::addStatsFacet — Requests a return of sub results for values within the given facet

Descrição

publicSolrQuery SolrQuery::addStatsFacet ( string $field )

Requests a return of sub results for values within the given facet. Maps to the stats.facet field

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addSortField
SolrQuery::addStatsField
SolrQuery


Maps to stats.field parameter

SolrQuery::addStatsFacet
SolrQuery::__construct
SolrQuery
PHP Manual

SolrQuery::addStatsField

(PECL solr >= 0.9.2)

SolrQuery::addStatsField — Maps to stats.field parameter

Descrição

public SolrQuery SolrQuery::addStatsField ( string $field )

Maps to stats.field parameter This methods adds another stats.field parameter.

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::addStatsFacet
SolrQuery::__construct
SolrQuery


Constructor

SolrQuery::addStatsField
SolrQuery::__destruct
SolrQuery
PHP Manual

SolrQuery::__construct

(PECL solr >= 0.9.2)

SolrQuery::__construct — Constructor

Descrição

SolrQuery::__construct ([ string $q ] )

Constructor.

Parâmetros

q

Optional search query

Valor Retornado

None

SolrQuery::addStatsField
SolrQuery::__destruct
SolrQuery


Destructor

SolrQuery::__construct
SolrQuery::getFacet
SolrQuery
PHP Manual

SolrQuery::__destruct

(PECL solr >= 0.9.2)

SolrQuery::__destruct — Destructor

Descrição

publicvoid SolrQuery::__destruct ( void )

Destructor

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

None.

SolrQuery::__construct
SolrQuery::getFacet
SolrQuery


Returns the value of the facet parameter

SolrQuery::__destruct
SolrQuery::getFacetDateEnd
SolrQuery
PHP Manual

SolrQuery::getFacet

(PECL solr >= 0.9.2)

SolrQuery::getFacet — Returns the value of the facet parameter

Descrição

public bool SolrQuery::getFacet ( void )

Returns the value of the facet parameter.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set

SolrQuery::__destruct
SolrQuery::getFacetDateEnd
SolrQuery


Returns the value for the facet.date.end parameter

SolrQuery::getFacet
SolrQuery::getFacetDateFields
SolrQuery
PHP Manual

SolrQuery::getFacetDateEnd

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateEnd — Returns the value for the facet.date.end parameter

Descrição

public string SolrQuery::getFacetDateEnd ([ string $field_override ] )

Returns the value for the facet.date.end parameter. This method accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set

SolrQuery::getFacet
SolrQuery::getFacetDateFields
SolrQuery


Returns all the facet.date fields

SolrQuery::getFacetDateEnd
SolrQuery::getFacetDateGap
SolrQuery
PHP Manual

SolrQuery::getFacetDateFields

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateFields — Returns all the facet.date fields

Descrição

public array SolrQuery::getFacetDateFields ( void )

Returns all the facet.date fields

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns all the facet.date fields as an array or NULL if none was set

SolrQuery::getFacetDateEnd
SolrQuery::getFacetDateGap
SolrQuery


Returns the value of the facet.date.gap parameter

SolrQuery::getFacetDateFields
SolrQuery::getFacetDateHardEnd
SolrQuery
PHP Manual

SolrQuery::getFacetDateGap

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateGap — Returns the value of the facet.date.gap parameter

Descrição

public string SolrQuery::getFacetDateGap ([ string $field_override ] )

Returns the value of the facet.date.gap parameter. It accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set

SolrQuery::getFacetDateFields
SolrQuery::getFacetDateHardEnd
SolrQuery


Returns the value of the facet.date.hardend parameter

SolrQuery::getFacetDateGap
SolrQuery::getFacetDateOther
SolrQuery
PHP Manual

SolrQuery::getFacetDateHardEnd

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateHardEnd — Returns the value of the facet.date.hardend parameter

Descrição

public string SolrQuery::getFacetDateHardEnd ([ string $field_override ] )

Returns the value of the facet.date.hardend parameter. Accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set

SolrQuery::getFacetDateGap
SolrQuery::getFacetDateOther
SolrQuery


Returns the value for the facet.date.other parameter

SolrQuery::getFacetDateHardEnd
SolrQuery::getFacetDateStart
SolrQuery
PHP Manual

SolrQuery::getFacetDateOther

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateOther — Returns the value for the facet.date.other parameter

Descrição

public array SolrQuery::getFacetDateOther ([ string $field_override ] )

Returns the value for the facet.date.other parameter. This method accepts an optional field override.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getFacetDateHardEnd
SolrQuery::getFacetDateStart
SolrQuery


Returns the lower bound for the first date range for all date faceting on this field

SolrQuery::getFacetDateOther
SolrQuery::getFacetFields
SolrQuery
PHP Manual

SolrQuery::getFacetDateStart

(PECL solr >= 0.9.2)

SolrQuery::getFacetDateStart — Returns the lower bound for the first date range for all date faceting on this field

Descrição

public string SolrQuery::getFacetDateStart ([ string $field_override ] )

Returns the lower bound for the first date range for all date faceting on this field. Accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set

SolrQuery::getFacetDateOther
SolrQuery::getFacetFields
SolrQuery


Returns all the facet fields

SolrQuery::getFacetDateStart
SolrQuery::getFacetLimit
SolrQuery
PHP Manual

SolrQuery::getFacetFields

(PECL solr >= 0.9.2)

SolrQuery::getFacetFields — Returns all the facet fields

Descrição

public array SolrQuery::getFacetFields ( void )

Returns all the facet fields

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array of all the fields and NULL if none was set

SolrQuery::getFacetDateStart
SolrQuery::getFacetLimit
SolrQuery


Returns the maximum number of constraint counts that should be returned for the facet fields

SolrQuery::getFacetFields
SolrQuery::getFacetMethod
SolrQuery
PHP Manual

SolrQuery::getFacetLimit

(PECL solr >= 0.9.2)

SolrQuery::getFacetLimit — Returns the maximum number of constraint counts that should be returned for the facet fields

Descrição

public int SolrQuery::getFacetLimit ([ string $field_override ] )

Returns the maximum number of constraint counts that should be returned for the facet fields. This method accepts an optional field override

Parâmetros

field_override

The name of the field to override for

Valor Retornado

Returns an integer on success and NULL if not set

SolrQuery::getFacetFields
SolrQuery::getFacetMethod
SolrQuery


Returns the value of the facet.method parameter

SolrQuery::getFacetLimit
SolrQuery::getFacetMinCount
SolrQuery
PHP Manual

SolrQuery::getFacetMethod

(PECL solr >= 0.9.2)

SolrQuery::getFacetMethod — Returns the value of the facet.method parameter

Descrição

public string SolrQuery::getFacetMethod ([ string $field_override ] )

Returns the value of the facet.method parameter. This accepts an optional field override.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an string on success and NULL if not set

SolrQuery::getFacetLimit
SolrQuery::getFacetMinCount
SolrQuery


Returns the minimum counts for facet fields should be included in the response

SolrQuery::getFacetMethod
SolrQuery::getFacetMissing
SolrQuery
PHP Manual

SolrQuery::getFacetMinCount

(PECL solr >= 0.9.2)

SolrQuery::getFacetMinCount — Returns the minimum counts for facet fields should be included in the response

Descrição

public int SolrQuery::getFacetMinCount ([ string $field_override ] )

Returns the minimum counts for facet fields should be included in the response. It accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an integer on success and NULL if not set

SolrQuery::getFacetMethod
SolrQuery::getFacetMissing
SolrQuery


Returns the current state of the facet.missing parameter

SolrQuery::getFacetMinCount
SolrQuery::getFacetOffset
SolrQuery
PHP Manual

SolrQuery::getFacetMissing

(PECL solr >= 0.9.2)

SolrQuery::getFacetMissing — Returns the current state of the facet.missing parameter

Descrição

public bool SolrQuery::getFacetMissing ([ string $field_override ] )

Returns the current state of the facet.missing parameter. This accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a boolean on success and NULL if not set

SolrQuery::getFacetMinCount
SolrQuery::getFacetOffset
SolrQuery


Returns an offset into the list of constraints to be used for pagination

SolrQuery::getFacetMissing
SolrQuery::getFacetPrefix
SolrQuery
PHP Manual

SolrQuery::getFacetOffset

(PECL solr >= 0.9.2)

SolrQuery::getFacetOffset — Returns an offset into the list of constraints to be used for pagination

Descrição

public int SolrQuery::getFacetOffset ([ string $field_override ] )

Returns an offset into the list of constraints to be used for pagination. Accepts an optional field override

Parâmetros

field_override

The name of the field to override for.

Valor Retornado

Returns an integer on success and NULL if not set

SolrQuery::getFacetMissing
SolrQuery::getFacetPrefix
SolrQuery


Returns the facet prefix

SolrQuery::getFacetOffset
SolrQuery::getFacetQueries
SolrQuery
PHP Manual

SolrQuery::getFacetPrefix

(PECL solr >= 0.9.2)

SolrQuery::getFacetPrefix — Returns the facet prefix

Descrição

public string SolrQuery::getFacetPrefix ([ string $field_override ] )

Returns the facet prefix

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getFacetOffset
SolrQuery::getFacetQueries
SolrQuery


Returns all the facet queries

SolrQuery::getFacetPrefix
SolrQuery::getFacetSort
SolrQuery
PHP Manual

SolrQuery::getFacetQueries

(PECL solr >= 0.9.2)

SolrQuery::getFacetQueries — Returns all the facet queries

Descrição

public array SolrQuery::getFacetQueries ( void )

Returns all the facet queries

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getFacetPrefix
SolrQuery::getFacetSort
SolrQuery


Returns the facet sort type

SolrQuery::getFacetQueries
SolrQuery::getFields
SolrQuery
PHP Manual

SolrQuery::getFacetSort

(PECL solr >= 0.9.2)

SolrQuery::getFacetSort — Returns the facet sort type

Descrição

public int SolrQuery::getFacetSort ([ string $field_override ] )

Returns an integer (SolrQuery::FACET_SORT_INDEX or SolrQuery::FACET_SORT_COUNT)

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an integer (SolrQuery::FACET_SORT_INDEX or SolrQuery::FACET_SORT_COUNT) on success or NULL if not set.

SolrQuery::getFacetQueries
SolrQuery::getFields
SolrQuery


Returns the list of fields that will be returned in the response

SolrQuery::getFacetSort
SolrQuery::getFilterQueries
SolrQuery
PHP Manual

SolrQuery::getFields

(PECL solr >= 0.9.2)

SolrQuery::getFields — Returns the list of fields that will be returned in the response

Descrição

public array SolrQuery::getFields ( void )

Returns the list of fields that will be returned in the response

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getFacetSort
SolrQuery::getFilterQueries
SolrQuery


Returns an array of filter queries

SolrQuery::getFields
SolrQuery::getHighlight
SolrQuery
PHP Manual

SolrQuery::getFilterQueries

(PECL solr >= 0.9.2)

SolrQuery::getFilterQueries — Returns an array of filter queries

Descrição

public array SolrQuery::getFilterQueries ( void )

Returns an array of filter queries. These are queries that can be used to restrict the super set of documents that can be returned, without influencing score

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getFields
SolrQuery::getHighlight
SolrQuery


Returns the state of the hl parameter

SolrQuery::getFilterQueries
SolrQuery::getHighlightAlternateField
SolrQuery
PHP Manual

SolrQuery::getHighlight

(PECL solr >= 0.9.2)

SolrQuery::getHighlight — Returns the state of the hl parameter

Descrição

public bool SolrQuery::getHighlight ( void )

Returns a boolean indicating whether or not to enable highlighted snippets to be generated in the query response.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getFilterQueries
SolrQuery::getHighlightAlternateField
SolrQuery


Returns the highlight field to use as backup or default

SolrQuery::getHighlight
SolrQuery::getHighlightFields
SolrQuery
PHP Manual

SolrQuery::getHighlightAlternateField

(PECL solr >= 0.9.2)

SolrQuery::getHighlightAlternateField — Returns the highlight field to use as backup or default

Descrição

public string SolrQuery::getHighlightAlternateField ([ string $field_override ] )

Returns the highlight field to use as backup or default. It accepts an optional override.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlight
SolrQuery::getHighlightFields
SolrQuery


Returns all the fields that Solr should generate highlighted snippets for

SolrQuery::getHighlightAlternateField
SolrQuery::getHighlightFormatter
SolrQuery
PHP Manual

SolrQuery::getHighlightFields

(PECL solr >= 0.9.2)

SolrQuery::getHighlightFields — Returns all the fields that Solr should generate highlighted snippets for

Descrição

public array SolrQuery::getHighlightFields ( void )

Returns all the fields that Solr should generate highlighted snippets for

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getHighlightAlternateField
SolrQuery::getHighlightFormatter
SolrQuery


Returns the formatter for the highlighted output

SolrQuery::getHighlightFields
SolrQuery::getHighlightFragmenter
SolrQuery
PHP Manual

SolrQuery::getHighlightFormatter

(PECL solr >= 0.9.2)

SolrQuery::getHighlightFormatter — Returns the formatter for the highlighted output

Descrição

public string SolrQuery::getHighlightFormatter ([ string $field_override ] )

Returns the formatter for the highlighted output

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlightFields
SolrQuery::getHighlightFragmenter
SolrQuery


Returns the text snippet generator for highlighted text

SolrQuery::getHighlightFormatter
SolrQuery::getHighlightFragsize
SolrQuery
PHP Manual

SolrQuery::getHighlightFragmenter

(PECL solr >= 0.9.2)

SolrQuery::getHighlightFragmenter — Returns the text snippet generator for highlighted text

Descrição

public string SolrQuery::getHighlightFragmenter ([ string $field_override ] )

Returns the text snippet generator for highlighted text. Accepts an optional field override.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlightFormatter
SolrQuery::getHighlightFragsize
SolrQuery


Returns the number of characters of fragments to consider for highlighting

SolrQuery::getHighlightFragmenter
SolrQuery::getHighlightHighlightMultiTerm
SolrQuery
PHP Manual

SolrQuery::getHighlightFragsize

(PECL solr >= 0.9.2)

SolrQuery::getHighlightFragsize — Returns the number of characters of fragments to consider for highlighting

Descrição

public int SolrQuery::getHighlightFragsize ([ string $field_override ] )

Returns the number of characters of fragments to consider for highlighting. Zero implies no fragmenting. The entire field should be used.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an integer on success or NULL if not set.

SolrQuery::getHighlightFragmenter
SolrQuery::getHighlightHighlightMultiTerm
SolrQuery


Returns whether or not to enable highlighting for range/wildcard/fuzzy/prefix queries

SolrQuery::getHighlightFragsize
SolrQuery::getHighlightMaxAlternateFieldLength
SolrQuery
PHP Manual

SolrQuery::getHighlightHighlightMultiTerm

(PECL solr >= 0.9.2)

SolrQuery::getHighlightHighlightMultiTerm — Returns whether or not to enable highlighting for range/wildcard/fuzzy/prefix queries

Descrição

public bool SolrQuery::getHighlightHighlightMultiTerm ( void )

Returns whether or not to enable highlighting for range/wildcard/fuzzy/prefix queries

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getHighlightFragsize
SolrQuery::getHighlightMaxAlternateFieldLength
SolrQuery


Returns the maximum number of characters of the field to return

SolrQuery::getHighlightHighlightMultiTerm
SolrQuery::getHighlightMaxAnalyzedChars
SolrQuery
PHP Manual

SolrQuery::getHighlightMaxAlternateFieldLength

(PECL solr >= 0.9.2)

SolrQuery::getHighlightMaxAlternateFieldLength — Returns the maximum number of characters of the field to return

Descrição

public int SolrQuery::getHighlightMaxAlternateFieldLength ([ string $field_override ] )

Returns the maximum number of characters of the field to return

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getHighlightHighlightMultiTerm
SolrQuery::getHighlightMaxAnalyzedChars
SolrQuery


Returns the maximum number of characters into a document to look for suitable snippets

SolrQuery::getHighlightMaxAlternateFieldLength
SolrQuery::getHighlightMergeContiguous
SolrQuery
PHP Manual

SolrQuery::getHighlightMaxAnalyzedChars

(PECL solr >= 0.9.2)

SolrQuery::getHighlightMaxAnalyzedChars — Returns the maximum number of characters into a document to look for suitable snippets

Descrição

public int SolrQuery::getHighlightMaxAnalyzedChars ( void )

Returns the maximum number of characters into a document to look for suitable snippets

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getHighlightMaxAlternateFieldLength
SolrQuery::getHighlightMergeContiguous
SolrQuery


Returns whether or not the collapse contiguous fragments into a single fragment

SolrQuery::getHighlightMaxAnalyzedChars
SolrQuery::getHighlightRegexMaxAnalyzedChars
SolrQuery
PHP Manual

SolrQuery::getHighlightMergeContiguous

(PECL solr >= 0.9.2)

SolrQuery::getHighlightMergeContiguous — Returns whether or not the collapse contiguous fragments into a single fragment

Descrição

public bool SolrQuery::getHighlightMergeContiguous ([ string $field_override ] )

Returns whether or not the collapse contiguous fragments into a single fragment. Accepts an optional field override.

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getHighlightMaxAnalyzedChars
SolrQuery::getHighlightRegexMaxAnalyzedChars
SolrQuery


Returns the maximum number of characters from a field when using the regex fragmenter

SolrQuery::getHighlightMergeContiguous
SolrQuery::getHighlightRegexPattern
SolrQuery
PHP Manual

SolrQuery::getHighlightRegexMaxAnalyzedChars

(PECL solr >= 0.9.2)

SolrQuery::getHighlightRegexMaxAnalyzedChars — Returns the maximum number of characters from a field when using the regex fragmenter

Descrição

public int SolrQuery::getHighlightRegexMaxAnalyzedChars ( void )

Returns the maximum number of characters from a field when using the regex fragmenter

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getHighlightMergeContiguous
SolrQuery::getHighlightRegexPattern
SolrQuery


Returns the regular expression for fragmenting

SolrQuery::getHighlightRegexMaxAnalyzedChars
SolrQuery::getHighlightRegexSlop
SolrQuery
PHP Manual

SolrQuery::getHighlightRegexPattern

(PECL solr >= 0.9.2)

SolrQuery::getHighlightRegexPattern — Returns the regular expression for fragmenting

Descrição

public string SolrQuery::getHighlightRegexPattern ( void )

Returns the regular expression used for fragmenting

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlightRegexMaxAnalyzedChars
SolrQuery::getHighlightRegexSlop
SolrQuery


Returns the deviation factor from the ideal fragment size

SolrQuery::getHighlightRegexPattern
SolrQuery::getHighlightRequireFieldMatch
SolrQuery
PHP Manual

SolrQuery::getHighlightRegexSlop

(PECL solr >= 0.9.2)

SolrQuery::getHighlightRegexSlop — Returns the deviation factor from the ideal fragment size

Descrição

public float SolrQuery::getHighlightRegexSlop ( void )

Returns the factor by which the regex fragmenter can deviate from the ideal fragment size to accomodate the regular expression

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a double on success and NULL if not set.

SolrQuery::getHighlightRegexPattern
SolrQuery::getHighlightRequireFieldMatch
SolrQuery


Returns if a field will only be highlighted if the query matched in this particular field

SolrQuery::getHighlightRegexSlop
SolrQuery::getHighlightSimplePost
SolrQuery
PHP Manual

SolrQuery::getHighlightRequireFieldMatch

(PECL solr >= 0.9.2)

SolrQuery::getHighlightRequireFieldMatch — Returns if a field will only be highlighted if the query matched in this particular field

Descrição

public bool SolrQuery::getHighlightRequireFieldMatch ( void )

Returns if a field will only be highlighted if the query matched in this particular field.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getHighlightRegexSlop
SolrQuery::getHighlightSimplePost
SolrQuery


Returns the text which appears after a highlighted term

SolrQuery::getHighlightRequireFieldMatch
SolrQuery::getHighlightSimplePre
SolrQuery
PHP Manual

SolrQuery::getHighlightSimplePost

(PECL solr >= 0.9.2)

SolrQuery::getHighlightSimplePost — Returns the text which appears after a highlighted term

Descrição

public string SolrQuery::getHighlightSimplePost ([ string $field_override ] )

Returns the text which appears after a highlighted term. Accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlightRequireFieldMatch
SolrQuery::getHighlightSimplePre
SolrQuery


Returns the text which appears before a highlighted term

SolrQuery::getHighlightSimplePost
SolrQuery::getHighlightSnippets
SolrQuery
PHP Manual

SolrQuery::getHighlightSimplePre

(PECL solr >= 0.9.2)

SolrQuery::getHighlightSimplePre — Returns the text which appears before a highlighted term

Descrição

public string SolrQuery::getHighlightSimplePre ([ string $field_override ] )

Returns the text which appears before a highlighted term. Accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getHighlightSimplePost
SolrQuery::getHighlightSnippets
SolrQuery


Returns the maximum number of highlighted snippets to generate per field

SolrQuery::getHighlightSimplePre
SolrQuery::getHighlightUsePhraseHighlighter
SolrQuery
PHP Manual

SolrQuery::getHighlightSnippets

(PECL solr >= 0.9.2)

SolrQuery::getHighlightSnippets — Returns the maximum number of highlighted snippets to generate per field

Descrição

public int SolrQuery::getHighlightSnippets ([ string $field_override ] )

Returns the maximum number of highlighted snippets to generate per field. Accepts an optional field override

Parâmetros

field_override

The name of the field

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getHighlightSimplePre
SolrQuery::getHighlightUsePhraseHighlighter
SolrQuery


Returns the state of the hl.usePhraseHighlighter parameter

SolrQuery::getHighlightSnippets
SolrQuery::getMlt
SolrQuery
PHP Manual

SolrQuery::getHighlightUsePhraseHighlighter

(PECL solr >= 0.9.2)

SolrQuery::getHighlightUsePhraseHighlighter — Returns the state of the hl.usePhraseHighlighter parameter

Descrição

public bool SolrQuery::getHighlightUsePhraseHighlighter ( void )

Returns whether or not to use SpanScorer to highlight phrase terms only when they appear within the query phrase in the document.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getHighlightSnippets
SolrQuery::getMlt
SolrQuery


Returns whether or not MoreLikeThis results should be enabled

SolrQuery::getHighlightUsePhraseHighlighter
SolrQuery::getMltBoost
SolrQuery
PHP Manual

SolrQuery::getMlt

(PECL solr >= 0.9.2)

SolrQuery::getMlt — Returns whether or not MoreLikeThis results should be enabled

Descrição

public bool SolrQuery::getMlt ( void )

Returns whether or not MoreLikeThis results should be enabled

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getHighlightUsePhraseHighlighter
SolrQuery::getMltBoost
SolrQuery


Returns whether or not the query will be boosted by the interesting term relevance

SolrQuery::getMlt
SolrQuery::getMltCount
SolrQuery
PHP Manual

SolrQuery::getMltBoost

(PECL solr >= 0.9.2)

SolrQuery::getMltBoost — Returns whether or not the query will be boosted by the interesting term relevance

Descrição

public bool SolrQuery::getMltBoost ( void )

Returns whether or not the query will be boosted by the interesting term relevance

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getMlt
SolrQuery::getMltCount
SolrQuery


Returns the number of similar documents to return for each result

SolrQuery::getMltBoost
SolrQuery::getMltFields
SolrQuery
PHP Manual

SolrQuery::getMltCount

(PECL solr >= 0.9.2)

SolrQuery::getMltCount — Returns the number of similar documents to return for each result

Descrição

public int SolrQuery::getMltCount ( void )

Returns the number of similar documents to return for each result

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltBoost
SolrQuery::getMltFields
SolrQuery


Returns all the fields to use for similarity

SolrQuery::getMltCount
SolrQuery::getMltMaxNumQueryTerms
SolrQuery
PHP Manual

SolrQuery::getMltFields

(PECL solr >= 0.9.2)

SolrQuery::getMltFields — Returns all the fields to use for similarity

Descrição

public array SolrQuery::getMltFields ( void )

Returns all the fields to use for similarity

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getMltCount
SolrQuery::getMltMaxNumQueryTerms
SolrQuery


Returns the maximum number of query terms that will be included in any generated query

SolrQuery::getMltFields
SolrQuery::getMltMaxNumTokens
SolrQuery
PHP Manual

SolrQuery::getMltMaxNumQueryTerms

(PECL solr >= 0.9.2)

SolrQuery::getMltMaxNumQueryTerms — Returns the maximum number of query terms that will be included in any generated query

Descrição

public int SolrQuery::getMltMaxNumQueryTerms ( void )

Returns the maximum number of query terms that will be included in any generated query

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltFields
SolrQuery::getMltMaxNumTokens
SolrQuery


Returns the maximum number of tokens to parse in each document field that is not stored with TermVector support

SolrQuery::getMltMaxNumQueryTerms
SolrQuery::getMltMaxWordLength
SolrQuery
PHP Manual

SolrQuery::getMltMaxNumTokens

(PECL solr >= 0.9.2)

SolrQuery::getMltMaxNumTokens — Returns the maximum number of tokens to parse in each document field that is not stored with TermVector support

Descrição

public int SolrQuery::getMltMaxNumTokens ( void )

Returns the maximum number of tokens to parse in each document field that is not stored with TermVector support

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltMaxNumQueryTerms
SolrQuery::getMltMaxWordLength
SolrQuery


Returns the maximum word length above which words will be ignored

SolrQuery::getMltMaxNumTokens
SolrQuery::getMltMinDocFrequency
SolrQuery
PHP Manual

SolrQuery::getMltMaxWordLength

(PECL solr >= 0.9.2)

SolrQuery::getMltMaxWordLength — Returns the maximum word length above which words will be ignored

Descrição

public int SolrQuery::getMltMaxWordLength ( void )

Returns the maximum word length above which words will be ignored

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltMaxNumTokens
SolrQuery::getMltMinDocFrequency
SolrQuery


Returns the treshold frequency at which words will be ignored which do not occur in at least this many docs

SolrQuery::getMltMaxWordLength
SolrQuery::getMltMinTermFrequency
SolrQuery
PHP Manual

SolrQuery::getMltMinDocFrequency

(PECL solr >= 0.9.2)

SolrQuery::getMltMinDocFrequency — Returns the treshold frequency at which words will be ignored which do not occur in at least this many docs

Descrição

public int SolrQuery::getMltMinDocFrequency ( void )

Returns the treshold frequency at which words will be ignored which do not occur in at least this many docs

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltMaxWordLength
SolrQuery::getMltMinTermFrequency
SolrQuery


Returns the frequency below which terms will be ignored in the source document

SolrQuery::getMltMinDocFrequency
SolrQuery::getMltMinWordLength
SolrQuery
PHP Manual

SolrQuery::getMltMinTermFrequency

(PECL solr >= 0.9.2)

SolrQuery::getMltMinTermFrequency — Returns the frequency below which terms will be ignored in the source document

Descrição

public int SolrQuery::getMltMinTermFrequency ( void )

Returns the frequency below which terms will be ignored in the source document

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltMinDocFrequency
SolrQuery::getMltMinWordLength
SolrQuery


Returns the minimum word length below which words will be ignored

SolrQuery::getMltMinTermFrequency
SolrQuery::getMltQueryFields
SolrQuery
PHP Manual

SolrQuery::getMltMinWordLength

(PECL solr >= 0.9.2)

SolrQuery::getMltMinWordLength — Returns the minimum word length below which words will be ignored

Descrição

public int SolrQuery::getMltMinWordLength ( void )

Returns the minimum word length below which words will be ignored

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getMltMinTermFrequency
SolrQuery::getMltQueryFields
SolrQuery


Returns the query fields and their boosts

SolrQuery::getMltMinWordLength
SolrQuery::getQuery
SolrQuery
PHP Manual

SolrQuery::getMltQueryFields

(PECL solr >= 0.9.2)

SolrQuery::getMltQueryFields — Returns the query fields and their boosts

Descrição

public array SolrQuery::getMltQueryFields ( void )

Returns the query fields and their boosts

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getMltMinWordLength
SolrQuery::getQuery
SolrQuery


Returns the main query

SolrQuery::getMltQueryFields
SolrQuery::getRows
SolrQuery
PHP Manual

SolrQuery::getQuery

(PECL solr >= 0.9.2)

SolrQuery::getQuery — Returns the main query

Descrição

public string SolrQuery::getQuery ( void )

Returns the main search query

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getMltQueryFields
SolrQuery::getRows
SolrQuery


Returns the maximum number of documents

SolrQuery::getQuery
SolrQuery::getSortFields
SolrQuery
PHP Manual

SolrQuery::getRows

(PECL solr >= 0.9.2)

SolrQuery::getRows — Returns the maximum number of documents

Descrição

public int SolrQuery::getRows ( void )

Returns the maximum number of documents from the complete result set to return to the client for every request

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getQuery
SolrQuery::getSortFields
SolrQuery


Returns all the sort fields

SolrQuery::getRows
SolrQuery::getStart
SolrQuery
PHP Manual

SolrQuery::getSortFields

(PECL solr >= 0.9.2)

SolrQuery::getSortFields — Returns all the sort fields

Descrição

public array SolrQuery::getSortFields ( void )

Returns all the sort fields

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if none of the parameters was set.

SolrQuery::getRows
SolrQuery::getStart
SolrQuery


Returns the offset in the complete result set

SolrQuery::getSortFields
SolrQuery::getStats
SolrQuery
PHP Manual

SolrQuery::getStart

(PECL solr >= 0.9.2)

SolrQuery::getStart — Returns the offset in the complete result set

Descrição

public int SolrQuery::getStart ( void )

Returns the offset in the complete result set for the queries where the set of returned documents should begin.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getSortFields
SolrQuery::getStats
SolrQuery


Returns whether or not stats is enabled

SolrQuery::getStart
SolrQuery::getStatsFacets
SolrQuery
PHP Manual

SolrQuery::getStats

(PECL solr >= 0.9.2)

SolrQuery::getStats — Returns whether or not stats is enabled

Descrição

public bool SolrQuery::getStats ( void )

Returns whether or not stats is enabled

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getStart
SolrQuery::getStatsFacets
SolrQuery


Returns all the stats facets that were set

SolrQuery::getStats
SolrQuery::getStatsFields
SolrQuery
PHP Manual

SolrQuery::getStatsFacets

(PECL solr >= 0.9.2)

SolrQuery::getStatsFacets — Returns all the stats facets that were set

Descrição

public array SolrQuery::getStatsFacets ( void )

Returns all the stats facets that were set

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getStats
SolrQuery::getStatsFields
SolrQuery


Returns all the statistics fields

SolrQuery::getStatsFacets
SolrQuery::getTerms
SolrQuery
PHP Manual

SolrQuery::getStatsFields

(PECL solr >= 0.9.2)

SolrQuery::getStatsFields — Returns all the statistics fields

Descrição

public array SolrQuery::getStatsFields ( void )

Returns all the statistics fields

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array on success and NULL if not set.

SolrQuery::getStatsFacets
SolrQuery::getTerms
SolrQuery


Returns whether or not the TermsComponent is enabled

SolrQuery::getStatsFields
SolrQuery::getTermsField
SolrQuery
PHP Manual

SolrQuery::getTerms

(PECL solr >= 0.9.2)

SolrQuery::getTerms — Returns whether or not the TermsComponent is enabled

Descrição

public bool SolrQuery::getTerms ( void )

Returns whether or not the TermsComponent is enabled

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getStatsFields
SolrQuery::getTermsField
SolrQuery


Returns the field from which the terms are retrieved

SolrQuery::getTerms
SolrQuery::getTermsIncludeLowerBound
SolrQuery
PHP Manual

SolrQuery::getTermsField

(PECL solr >= 0.9.2)

SolrQuery::getTermsField — Returns the field from which the terms are retrieved

Descrição

public string SolrQuery::getTermsField ( void )

Returns the field from which the terms are retrieved

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getTerms
SolrQuery::getTermsIncludeLowerBound
SolrQuery


Returns whether or not to include the lower bound in the result set

SolrQuery::getTermsField
SolrQuery::getTermsIncludeUpperBound
SolrQuery
PHP Manual

SolrQuery::getTermsIncludeLowerBound

(PECL solr >= 0.9.2)

SolrQuery::getTermsIncludeLowerBound — Returns whether or not to include the lower bound in the result set

Descrição

public bool SolrQuery::getTermsIncludeLowerBound ( void )

Returns whether or not to include the lower bound in the result set

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getTermsField
SolrQuery::getTermsIncludeUpperBound
SolrQuery


Returns whether or not to include the upper bound term in the result set

SolrQuery::getTermsIncludeLowerBound
SolrQuery::getTermsLimit
SolrQuery
PHP Manual

SolrQuery::getTermsIncludeUpperBound

(PECL solr >= 0.9.2)

SolrQuery::getTermsIncludeUpperBound — Returns whether or not to include the upper bound term in the result set

Descrição

public bool SolrQuery::getTermsIncludeUpperBound ( void )

Returns whether or not to include the upper bound term in the result set

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getTermsIncludeLowerBound
SolrQuery::getTermsLimit
SolrQuery


Returns the maximum number of terms Solr should return

SolrQuery::getTermsIncludeUpperBound
SolrQuery::getTermsLowerBound
SolrQuery
PHP Manual

SolrQuery::getTermsLimit

(PECL solr >= 0.9.2)

SolrQuery::getTermsLimit — Returns the maximum number of terms Solr should return

Descrição

public int SolrQuery::getTermsLimit ( void )

Returns the maximum number of terms Solr should return

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getTermsIncludeUpperBound
SolrQuery::getTermsLowerBound
SolrQuery


Returns the term to start at

SolrQuery::getTermsLimit
SolrQuery::getTermsMaxCount
SolrQuery
PHP Manual

SolrQuery::getTermsLowerBound

(PECL solr >= 0.9.2)

SolrQuery::getTermsLowerBound — Returns the term to start at

Descrição

public string SolrQuery::getTermsLowerBound ( void )

Returns the term to start at

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getTermsLimit
SolrQuery::getTermsMaxCount
SolrQuery


Returns the maximum document frequency

SolrQuery::getTermsLowerBound
SolrQuery::getTermsMinCount
SolrQuery
PHP Manual

SolrQuery::getTermsMaxCount

(PECL solr >= 0.9.2)

SolrQuery::getTermsMaxCount — Returns the maximum document frequency

Descrição

public int SolrQuery::getTermsMaxCount ( void )

Returns the maximum document frequency

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getTermsLowerBound
SolrQuery::getTermsMinCount
SolrQuery


Returns the minimum document frequency to return in order to be included

SolrQuery::getTermsMaxCount
SolrQuery::getTermsPrefix
SolrQuery
PHP Manual

SolrQuery::getTermsMinCount

(PECL solr >= 0.9.2)

SolrQuery::getTermsMinCount — Returns the minimum document frequency to return in order to be included

Descrição

public int SolrQuery::getTermsMinCount ( void )

Returns the minimum document frequency to return in order to be included

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getTermsMaxCount
SolrQuery::getTermsPrefix
SolrQuery


Returns the term prefix

SolrQuery::getTermsMinCount
SolrQuery::getTermsReturnRaw
SolrQuery
PHP Manual

SolrQuery::getTermsPrefix

(PECL solr >= 0.9.2)

SolrQuery::getTermsPrefix — Returns the term prefix

Descrição

public string SolrQuery::getTermsPrefix ( void )

Returns the prefix to which matching terms must be restricted. This will restrict matches to only terms that start with the prefix

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getTermsMinCount
SolrQuery::getTermsReturnRaw
SolrQuery


Whether or not to return raw characters

SolrQuery::getTermsPrefix
SolrQuery::getTermsSort
SolrQuery
PHP Manual

SolrQuery::getTermsReturnRaw

(PECL solr >= 0.9.2)

SolrQuery::getTermsReturnRaw — Whether or not to return raw characters

Descrição

public bool SolrQuery::getTermsReturnRaw ( void )

Returns a boolean indicating whether or not to return the raw characters of the indexed term, regardless of if it is human readable

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a boolean on success and NULL if not set.

SolrQuery::getTermsPrefix
SolrQuery::getTermsSort
SolrQuery


Returns an integer indicating how terms are sorted

SolrQuery::getTermsReturnRaw
SolrQuery::getTermsUpperBound
SolrQuery
PHP Manual

SolrQuery::getTermsSort

(PECL solr >= 0.9.2)

SolrQuery::getTermsSort — Returns an integer indicating how terms are sorted

Descrição

public int SolrQuery::getTermsSort ( void )

SolrQuery::TERMS_SORT_INDEX indicates that the terms are returned by index order. SolrQuery::TERMS_SORT_COUNT implies that the terms are sorted by term frequency (highest count first)

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an integer on success and NULL if not set.

SolrQuery::getTermsReturnRaw
SolrQuery::getTermsUpperBound
SolrQuery


Returns the term to stop at

SolrQuery::getTermsSort
SolrQuery::getTimeAllowed
SolrQuery
PHP Manual

SolrQuery::getTermsUpperBound

(PECL solr >= 0.9.2)

SolrQuery::getTermsUpperBound — Returns the term to stop at

Descrição

public string SolrQuery::getTermsUpperBound ( void )

Returns the term to stop at

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string on success and NULL if not set.

SolrQuery::getTermsSort
SolrQuery::getTimeAllowed
SolrQuery


Returns the time in milliseconds allowed for the query to finish

SolrQuery::getTermsUpperBound
SolrQuery::removeFacetDateField
SolrQuery
PHP Manual

SolrQuery::getTimeAllowed

(PECL solr >= 0.9.2)

SolrQuery::getTimeAllowed — Returns the time in milliseconds allowed for the query to finish

Descrição

public int SolrQuery::getTimeAllowed ( void )

Returns the time in milliseconds allowed for the query to finish.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns and integer on success and NULL if it is not set.

SolrQuery::getTermsUpperBound
SolrQuery::removeFacetDateField
SolrQuery


Removes one of the facet date fields

SolrQuery::getTimeAllowed
SolrQuery::removeFacetDateOther
SolrQuery
PHP Manual

SolrQuery::removeFacetDateField

(PECL solr >= 0.9.2)

SolrQuery::removeFacetDateField — Removes one of the facet date fields

Descrição

publicSolrQuery SolrQuery::removeFacetDateField ( string $field )

The name of the field

Parâmetros

field

The name of the date field to remove

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::getTimeAllowed
SolrQuery::removeFacetDateOther
SolrQuery


Removes one of the facet.date.other parameters

SolrQuery::removeFacetDateField
SolrQuery::removeFacetField
SolrQuery
PHP Manual

SolrQuery::removeFacetDateOther

(PECL solr >= 0.9.2)

SolrQuery::removeFacetDateOther — Removes one of the facet.date.other parameters

Descrição

publicSolrQuery SolrQuery::removeFacetDateOther ( string $value [, string $field_override ] )

Removes one of the facet.date.other parameters

Parâmetros

value

The value

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeFacetDateField
SolrQuery::removeFacetField
SolrQuery


Removes one of the facet.date parameters

SolrQuery::removeFacetDateOther
SolrQuery::removeFacetQuery
SolrQuery
PHP Manual

SolrQuery::removeFacetField

(PECL solr >= 0.9.2)

SolrQuery::removeFacetField — Removes one of the facet.date parameters

Descrição

publicSolrQuery SolrQuery::removeFacetField ( string $field )

Removes one of the facet.date parameters

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeFacetDateOther
SolrQuery::removeFacetQuery
SolrQuery


Removes one of the facet.query parameters

SolrQuery::removeFacetField
SolrQuery::removeField
SolrQuery
PHP Manual

SolrQuery::removeFacetQuery

(PECL solr >= 0.9.2)

SolrQuery::removeFacetQuery — Removes one of the facet.query parameters

Descrição

publicSolrQuery SolrQuery::removeFacetQuery ( string $value )

Removes one of the facet.query parameters.

Parâmetros

value

The value

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeFacetField
SolrQuery::removeField
SolrQuery


Removes a field from the list of fields

SolrQuery::removeFacetQuery
SolrQuery::removeFilterQuery
SolrQuery
PHP Manual

SolrQuery::removeField

(PECL solr >= 0.9.2)

SolrQuery::removeField — Removes a field from the list of fields

Descrição

publicSolrQuery SolrQuery::removeField ( string $field )

Removes a field from the list of fields

Parâmetros

field

Name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeFacetQuery
SolrQuery::removeFilterQuery
SolrQuery


Removes a filter query

SolrQuery::removeField
SolrQuery::removeHighlightField
SolrQuery
PHP Manual

SolrQuery::removeFilterQuery

(PECL solr >= 0.9.2)

SolrQuery::removeFilterQuery — Removes a filter query

Descrição

publicSolrQuery SolrQuery::removeFilterQuery ( string $fq )

Removes a filter query.

Parâmetros

fq

The filter query to remove

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeField
SolrQuery::removeHighlightField
SolrQuery


Removes one of the fields used for highlighting

SolrQuery::removeFilterQuery
SolrQuery::removeMltField
SolrQuery
PHP Manual

SolrQuery::removeHighlightField

(PECL solr >= 0.9.2)

SolrQuery::removeHighlightField — Removes one of the fields used for highlighting

Descrição

publicSolrQuery SolrQuery::removeHighlightField ( string $field )

Removes one of the fields used for highlighting.

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeFilterQuery
SolrQuery::removeMltField
SolrQuery


Removes one of the moreLikeThis fields

SolrQuery::removeHighlightField
SolrQuery::removeMltQueryField
SolrQuery
PHP Manual

SolrQuery::removeMltField

(PECL solr >= 0.9.2)

SolrQuery::removeMltField — Removes one of the moreLikeThis fields

Descrição

publicSolrQuery SolrQuery::removeMltField ( string $field )

Removes one of the moreLikeThis fields.

Parâmetros

field

Name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeHighlightField
SolrQuery::removeMltQueryField
SolrQuery


Removes one of the moreLikeThis query fields

SolrQuery::removeMltField
SolrQuery::removeSortField
SolrQuery
PHP Manual

SolrQuery::removeMltQueryField

(PECL solr >= 0.9.2)

SolrQuery::removeMltQueryField — Removes one of the moreLikeThis query fields

Descrição

publicSolrQuery SolrQuery::removeMltQueryField ( string $queryField )

Removes one of the moreLikeThis query fields.

Parâmetros

queryField

The query field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeMltField
SolrQuery::removeSortField
SolrQuery


Removes one of the sort fields

SolrQuery::removeMltQueryField
SolrQuery::removeStatsFacet
SolrQuery
PHP Manual

SolrQuery::removeSortField

(PECL solr >= 0.9.2)

SolrQuery::removeSortField — Removes one of the sort fields

Descrição

publicSolrQuery SolrQuery::removeSortField ( string $field )

Removes one of the sort fields

Parâmetros

field

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeMltQueryField
SolrQuery::removeStatsFacet
SolrQuery


Removes one of the stats.facet parameters

SolrQuery::removeSortField
SolrQuery::removeStatsField
SolrQuery
PHP Manual

SolrQuery::removeStatsFacet

(PECL solr >= 0.9.2)

SolrQuery::removeStatsFacet — Removes one of the stats.facet parameters

Descrição

publicSolrQuery SolrQuery::removeStatsFacet ( string $value )

Removes one of the stats.facet parameters

Parâmetros

value

The value

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeSortField
SolrQuery::removeStatsField
SolrQuery


Removes one of the stats.field parameters

SolrQuery::removeStatsFacet
SolrQuery::setEchoHandler
SolrQuery
PHP Manual

SolrQuery::removeStatsField

(PECL solr >= 0.9.2)

SolrQuery::removeStatsField — Removes one of the stats.field parameters

Descrição

publicSolrQuery SolrQuery::removeStatsField ( string $field )

Removes one of the stats.field parameters

Parâmetros

field

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeStatsFacet
SolrQuery::setEchoHandler
SolrQuery


Toggles the echoHandler parameter

SolrQuery::removeStatsField
SolrQuery::setEchoParams
SolrQuery
PHP Manual

SolrQuery::setEchoHandler

(PECL solr >= 0.9.2)

SolrQuery::setEchoHandler — Toggles the echoHandler parameter

Descrição

publicSolrQuery SolrQuery::setEchoHandler ( bool $flag )

If set to true, Solr places the name of the handle used in the response to the client for debugging purposes.

Parâmetros

flag

TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::removeStatsField
SolrQuery::setEchoParams
SolrQuery


Determines what kind of parameters to include in the response

SolrQuery::setEchoHandler
SolrQuery::setExplainOther
SolrQuery
PHP Manual

SolrQuery::setEchoParams

(PECL solr >= 0.9.2)

SolrQuery::setEchoParams — Determines what kind of parameters to include in the response

Descrição

publicSolrQuery SolrQuery::setEchoParams ( string $type )

Instructs Solr what kinds of Request parameters should be included in the response for debugging purposes, legal values include:

- none - don't include any request parameters for debugging
- explicit - include the parameters explicitly specified by the client in the request
- all - include all parameters involved in this request, either specified explicitly by the client, or implicit because of the request handler configuration.

Parâmetros

type

The type of parameters to include

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setEchoHandler
SolrQuery::setExplainOther
SolrQuery


Sets the explainOther common query parameter

SolrQuery::setEchoParams
SolrQuery::setFacet
SolrQuery
PHP Manual

SolrQuery::setExplainOther

(PECL solr >= 0.9.2)

SolrQuery::setExplainOther — Sets the explainOther common query parameter

Descrição

publicSolrQuery SolrQuery::setExplainOther ( string $query )

Sets the explainOther common query parameter

Parâmetros

query

The Lucene query to identify a set of documents

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setEchoParams
SolrQuery::setFacet
SolrQuery


Maps to the facet parameter. Enables or disables facetting

SolrQuery::setExplainOther
SolrQuery::setFacetDateEnd
SolrQuery
PHP Manual

SolrQuery::setFacet

(PECL solr >= 0.9.2)

SolrQuery::setFacet — Maps to the facet parameter. Enables or disables facetting

Descrição

publicSolrQuery SolrQuery::setFacet ( bool $flag )

Enables or disables faceting.

Parâmetros

value

TRUE enables faceting and FALSE disables it.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setExplainOther
SolrQuery::setFacetDateEnd
SolrQuery


Maps to facet.date.end

SolrQuery::setFacet
SolrQuery::setFacetDateGap
SolrQuery
PHP Manual

SolrQuery::setFacetDateEnd

(PECL solr >= 0.9.2)

SolrQuery::setFacetDateEnd — Maps to facet.date.end

Descrição

publicSolrQuery SolrQuery::setFacetDateEnd ( string $value [, string $field_override ] )

Maps to facet.date.end

Parâmetros

value

See facet.date.end

field_override

Name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacet
SolrQuery::setFacetDateGap
SolrQuery


Maps to facet.date.gap

SolrQuery::setFacetDateEnd
SolrQuery::setFacetDateHardEnd
SolrQuery
PHP Manual

SolrQuery::setFacetDateGap

(PECL solr >= 0.9.2)

SolrQuery::setFacetDateGap — Maps to facet.date.gap

Descrição

publicSolrQuery SolrQuery::setFacetDateGap ( string $value [, string $field_override ] )

Maps to facet.date.gap

Parâmetros

value

See facet.date.gap

field_override

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetDateEnd
SolrQuery::setFacetDateHardEnd
SolrQuery


Maps to facet.date.hardend

SolrQuery::setFacetDateGap
SolrQuery::setFacetDateStart
SolrQuery
PHP Manual

SolrQuery::setFacetDateHardEnd

(PECL solr >= 0.9.2)

SolrQuery::setFacetDateHardEnd — Maps to facet.date.hardend

Descrição

publicSolrQuery SolrQuery::setFacetDateHardEnd ( bool $value [, string $field_override ] )

Maps to facet.date.hardend

Parâmetros

value

See facet.date.hardend

field_override

The name of the field

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetDateGap
SolrQuery::setFacetDateStart
SolrQuery


Maps to facet.date.start

SolrQuery::setFacetDateHardEnd
SolrQuery::setFacetEnumCacheMinDefaultFrequency
SolrQuery
PHP Manual

SolrQuery::setFacetDateStart

(PECL solr >= 0.9.2)

SolrQuery::setFacetDateStart — Maps to facet.date.start

Descrição

publicSolrQuery SolrQuery::setFacetDateStart ( string $value [, string $field_override ] )

Maps to facet.date.start

Parâmetros

value

See facet.date.start

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetDateHardEnd
SolrQuery::setFacetEnumCacheMinDefaultFrequency
SolrQuery


Sets the minimum document frequency used for determining term count

SolrQuery::setFacetDateStart
SolrQuery::setFacetLimit
SolrQuery
PHP Manual

SolrQuery::setFacetEnumCacheMinDefaultFrequency

(PECL solr >= 0.9.2)

SolrQuery::setFacetEnumCacheMinDefaultFrequency — Sets the minimum document frequency used for determining term count

Descrição

publicSolrQuery SolrQuery::setFacetEnumCacheMinDefaultFrequency ( int $frequency [, string $field_override ] )

Sets the minimum document frequency used for determining term count

Parâmetros

value

The minimum frequency

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetDateStart
SolrQuery::setFacetLimit
SolrQuery


Maps to facet.limit

SolrQuery::setFacetEnumCacheMinDefaultFrequency
SolrQuery::setFacetMethod
SolrQuery
PHP Manual

SolrQuery::setFacetLimit

(PECL solr >= 0.9.2)

SolrQuery::setFacetLimit — Maps to facet.limit

Descrição

publicSolrQuery SolrQuery::setFacetLimit ( int $limit [, string $field_override ] )

Maps to facet.limit. Sets the maximum number of constraint counts that should be returned for the facet fields.

Parâmetros

limit

The maximum number of constraint counts

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetEnumCacheMinDefaultFrequency
SolrQuery::setFacetMethod
SolrQuery


Specifies the type of algorithm to use when faceting a field

SolrQuery::setFacetLimit
SolrQuery::setFacetMinCount
SolrQuery
PHP Manual

SolrQuery::setFacetMethod

(PECL solr >= 0.9.2)

SolrQuery::setFacetMethod — Specifies the type of algorithm to use when faceting a field

Descrição

publicSolrQuery SolrQuery::setFacetMethod ( string $method [, string $field_override ] )

Specifies the type of algorithm to use when faceting a field. This method accepts optional field override.

Parâmetros

method

The method to use.

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetLimit
SolrQuery::setFacetMinCount
SolrQuery


Maps to facet.mincount

SolrQuery::setFacetMethod
SolrQuery::setFacetMissing
SolrQuery
PHP Manual

SolrQuery::setFacetMinCount

(PECL solr >= 0.9.2)

SolrQuery::setFacetMinCount — Maps to facet.mincount

Descrição

publicSolrQuery SolrQuery::setFacetMinCount ( int $mincount [, string $field_override ] )

Sets the minimum counts for facet fields that should be included in the response

Parâmetros

mincount

The minimum count

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetMethod
SolrQuery::setFacetMissing
SolrQuery


Maps to facet.missing

SolrQuery::setFacetMinCount
SolrQuery::setFacetOffset
SolrQuery
PHP Manual

SolrQuery::setFacetMissing

(PECL solr >= 0.9.2)

SolrQuery::setFacetMissing — Maps to facet.missing

Descrição

publicSolrQuery SolrQuery::setFacetMissing ( bool $flag [, string $field_override ] )

Used to indicate that in addition to the Term-based constraints of a facet field, a count of all matching results which have no value for the field should be computed

Parâmetros

flag

TRUE turns this feature on. FALSE disables it.

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetMinCount
SolrQuery::setFacetOffset
SolrQuery


Sets the offset into the list of constraints to allow for pagination

SolrQuery::setFacetMissing
SolrQuery::setFacetPrefix
SolrQuery
PHP Manual

SolrQuery::setFacetOffset

(PECL solr >= 0.9.2)

SolrQuery::setFacetOffset — Sets the offset into the list of constraints to allow for pagination

Descrição

publicSolrQuery SolrQuery::setFacetOffset ( int $offset [, string $field_override ] )

Sets the offset into the list of constraints to allow for pagination.

Parâmetros

offset

The offset

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetMissing
SolrQuery::setFacetPrefix
SolrQuery


Specifies a string prefix with which to limits the terms on which to facet

SolrQuery::setFacetOffset
SolrQuery::setFacetSort
SolrQuery
PHP Manual

SolrQuery::setFacetPrefix

(PECL solr >= 0.9.2)

SolrQuery::setFacetPrefix — Specifies a string prefix with which to limits the terms on which to facet

Descrição

publicSolrQuery SolrQuery::setFacetPrefix ( string $prefix [, string $field_override ] )

Specifies a string prefix with which to limits the terms on which to facet.

Parâmetros

prefix

The prefix string

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetOffset
SolrQuery::setFacetSort
SolrQuery


Determines the ordering of the facet field constraints

SolrQuery::setFacetPrefix
SolrQuery::setHighlight
SolrQuery
PHP Manual

SolrQuery::setFacetSort

(PECL solr >= 0.9.2)

SolrQuery::setFacetSort — Determines the ordering of the facet field constraints

Descrição

publicSolrQuery SolrQuery::setFacetSort ( int $facetSort [, string $field_override ] )

Determines the ordering of the facet field constraints

Parâmetros

facetSort

Use SolrQuery::FACET_SORT_INDEX for sorting by index order or SolrQuery::FACET_SORT_COUNT for sorting by count.

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetPrefix
SolrQuery::setHighlight
SolrQuery


Enables or disables highlighting

SolrQuery::setFacetSort
SolrQuery::setHighlightAlternateField
SolrQuery
PHP Manual

SolrQuery::setHighlight

(PECL solr >= 0.9.2)

SolrQuery::setHighlight — Enables or disables highlighting

Descrição

publicSolrQuery SolrQuery::setHighlight ( bool $flag )

Setting it to TRUE enables highlighted snippets to be generated in the query response.

Setting it to FALSE disables highlighting

Parâmetros

flag

Enable or disable highlighting

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setFacetSort
SolrQuery::setHighlightAlternateField
SolrQuery


Specifies the backup field to use

SolrQuery::setHighlight
SolrQuery::setHighlightFormatter
SolrQuery
PHP Manual

SolrQuery::setHighlightAlternateField

(PECL solr >= 0.9.2)

SolrQuery::setHighlightAlternateField — Specifies the backup field to use

Descrição

publicSolrQuery SolrQuery::setHighlightAlternateField ( string $field [, string $field_override ] )

If a snippet cannot be generated because there were no matching terms, one can specify a field to use as the backup or default summary

Parâmetros

field

The name of the backup field

field_override

The name of the field we are overriding this setting for.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlight
SolrQuery::setHighlightFormatter
SolrQuery


Specify a formatter for the highlight output

SolrQuery::setHighlightAlternateField
SolrQuery::setHighlightFragmenter
SolrQuery
PHP Manual

SolrQuery::setHighlightFormatter

(PECL solr >= 0.9.2)

SolrQuery::setHighlightFormatter — Specify a formatter for the highlight output

Descrição

publicSolrQuery SolrQuery::setHighlightFormatter ( string $formatter [, string $field_override ] )

Specify a formatter for the highlight output.

Parâmetros

formatter

Currently the only legal value is "simple"

field_override

The name of the field.

SolrQuery::setHighlightAlternateField
SolrQuery::setHighlightFragmenter
SolrQuery


Sets a text snippet generator for highlighted text

SolrQuery::setHighlightFormatter
SolrQuery::setHighlightFragsize
SolrQuery
PHP Manual

SolrQuery::setHighlightFragmenter

(PECL solr >= 0.9.2)

SolrQuery::setHighlightFragmenter — Sets a text snippet generator for highlighted text

Descrição

publicSolrQuery SolrQuery::setHighlightFragmenter ( string $fragmenter [, string $field_override ] )

Specify a text snippet generator for highlighted text.

Parâmetros

fragmenter

The standard fragmenter is gap. Another option is regex, which tries to create fragments that resembles a certain regular expression

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightFormatter
SolrQuery::setHighlightFragsize
SolrQuery


The size of fragments to consider for highlighting

SolrQuery::setHighlightFragmenter
SolrQuery::setHighlightHighlightMultiTerm
SolrQuery
PHP Manual

SolrQuery::setHighlightFragsize

(PECL solr >= 0.9.2)

SolrQuery::setHighlightFragsize — The size of fragments to consider for highlighting

Descrição

publicSolrQuery SolrQuery::setHighlightFragsize ( int $size [, string $field_override ] )

Sets the size, in characters, of fragments to consider for highlighting. "0" indicates that the whole field value should be used (no fragmenting).

Parâmetros

size

The size, in characters, of fragments to consider for highlighting

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightFragmenter
SolrQuery::setHighlightHighlightMultiTerm
SolrQuery


Use SpanScorer to highlight phrase terms

SolrQuery::setHighlightFragsize
SolrQuery::setHighlightMaxAlternateFieldLength
SolrQuery
PHP Manual

SolrQuery::setHighlightHighlightMultiTerm

(PECL solr >= 0.9.2)

SolrQuery::setHighlightHighlightMultiTerm — Use SpanScorer to highlight phrase terms

Descrição

publicSolrQuery SolrQuery::setHighlightHighlightMultiTerm ( bool $flag )

Use SpanScorer to highlight phrase terms only when they appear within the query phrase in the document.

Parâmetros

flag

Whether or not to use SpanScorer to highlight phrase terms only when they appear within the query phrase in the document.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightFragsize
SolrQuery::setHighlightMaxAlternateFieldLength
SolrQuery


Sets the maximum number of characters of the field to return

SolrQuery::setHighlightHighlightMultiTerm
SolrQuery::setHighlightMaxAnalyzedChars
SolrQuery
PHP Manual

SolrQuery::setHighlightMaxAlternateFieldLength

(PECL solr >= 0.9.2)

SolrQuery::setHighlightMaxAlternateFieldLength — Sets the maximum number of characters of the field to return

Descrição

publicSolrQuery SolrQuery::setHighlightMaxAlternateFieldLength ( int $fieldLength [, string $field_override ] )

If SolrQuery::setHighlightAlternateField() was passed the value TRUE, this parameter specifies the maximum number of characters of the field to return

Any value less than or equal to 0 means unlimited.

Parâmetros

fieldLength

The length of the field

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightHighlightMultiTerm
SolrQuery::setHighlightMaxAnalyzedChars
SolrQuery


Specifies the number of characters into a document to look for suitable snippets

SolrQuery::setHighlightMaxAlternateFieldLength
SolrQuery::setHighlightMergeContiguous
SolrQuery
PHP Manual

SolrQuery::setHighlightMaxAnalyzedChars

(PECL solr >= 0.9.2)

SolrQuery::setHighlightMaxAnalyzedChars — Specifies the number of characters into a document to look for suitable snippets

Descrição

publicSolrQuery SolrQuery::setHighlightMaxAnalyzedChars ( int $value )

Specifies the number of characters into a document to look for suitable snippets

Parâmetros

value

The number of characters into a document to look for suitable snippets

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightMaxAlternateFieldLength
SolrQuery::setHighlightMergeContiguous
SolrQuery


Whether or not to collapse contiguous fragments into a single fragment

SolrQuery::setHighlightMaxAnalyzedChars
SolrQuery::setHighlightRegexMaxAnalyzedChars
SolrQuery
PHP Manual

SolrQuery::setHighlightMergeContiguous

(PECL solr >= 0.9.2)

SolrQuery::setHighlightMergeContiguous — Whether or not to collapse contiguous fragments into a single fragment

Descrição

publicSolrQuery SolrQuery::setHighlightMergeContiguous ( bool $flag [, string $field_override ] )

Whether or not to collapse contiguous fragments into a single fragment

Parâmetros

value

Whether or not to collapse contiguous fragments into a single fragment

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightMaxAnalyzedChars
SolrQuery::setHighlightRegexMaxAnalyzedChars
SolrQuery


Specify the maximum number of characters to analyze

SolrQuery::setHighlightMergeContiguous
SolrQuery::setHighlightRegexPattern
SolrQuery
PHP Manual

SolrQuery::setHighlightRegexMaxAnalyzedChars

(PECL solr >= 0.9.2)

SolrQuery::setHighlightRegexMaxAnalyzedChars — Specify the maximum number of characters to analyze

Descrição

publicSolrQuery SolrQuery::setHighlightRegexMaxAnalyzedChars ( int $maxAnalyzedChars )

Specify the maximum number of characters to analyze from a field when using the regex fragmenter

Parâmetros

maxAnalyzedChars

The maximum number of characters to analyze from a field when using the regex fragmenter

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightMergeContiguous
SolrQuery::setHighlightRegexPattern
SolrQuery


Specify the regular expression for fragmenting

SolrQuery::setHighlightRegexMaxAnalyzedChars
SolrQuery::setHighlightRegexSlop
SolrQuery
PHP Manual

SolrQuery::setHighlightRegexPattern

(PECL solr >= 0.9.2)

SolrQuery::setHighlightRegexPattern — Specify the regular expression for fragmenting

Descrição

publicSolrQuery SolrQuery::setHighlightRegexPattern ( string $value )

Specifies the regular expression for fragmenting. This could be used to extract sentences

Parâmetros

value

The regular expression for fragmenting. This could be used to extract sentences

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightRegexMaxAnalyzedChars
SolrQuery::setHighlightRegexSlop
SolrQuery


Sets the factor by which the regex fragmenter can stray from the ideal fragment size

SolrQuery::setHighlightRegexPattern
SolrQuery::setHighlightRequireFieldMatch
SolrQuery
PHP Manual

SolrQuery::setHighlightRegexSlop

(PECL solr >= 0.9.2)

SolrQuery::setHighlightRegexSlop — Sets the factor by which the regex fragmenter can stray from the ideal fragment size

Descrição

publicSolrQuery SolrQuery::setHighlightRegexSlop ( float $factor )

The factor by which the regex fragmenter can stray from the ideal fragment size ( specfied by SolrQuery::setHighlightFragsize )to accomodate the regular expression

Parâmetros

factor

The factor by which the regex fragmenter can stray from the ideal fragment size

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightRegexPattern
SolrQuery::setHighlightRequireFieldMatch
SolrQuery


Require field matching during highlighting

SolrQuery::setHighlightRegexSlop
SolrQuery::setHighlightSimplePost
SolrQuery
PHP Manual

SolrQuery::setHighlightRequireFieldMatch

(PECL solr >= 0.9.2)

SolrQuery::setHighlightRequireFieldMatch — Require field matching during highlighting

Descrição

publicSolrQuery SolrQuery::setHighlightRequireFieldMatch ( bool $flag )

If TRUE, then a field will only be highlighted if the query matched in this particular field.

This will only work if SolrQuery::setHighlightUsePhraseHighlighter() was set to TRUE

Parâmetros

flag

TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightRegexSlop
SolrQuery::setHighlightSimplePost
SolrQuery


Sets the text which appears after a highlighted term

SolrQuery::setHighlightRequireFieldMatch
SolrQuery::setHighlightSimplePre
SolrQuery
PHP Manual

SolrQuery::setHighlightSimplePost

(PECL solr >= 0.9.2)

SolrQuery::setHighlightSimplePost — Sets the text which appears after a highlighted term

Descrição

publicSolrQuery SolrQuery::setHighlightSimplePost ( string $simplePost [, string $field_override ] )

Sets the text which appears before a highlighted term

Parâmetros

simplePost

Sets the text which appears after a highlighted term

The default is </em>

field_override

The name of the field.

SolrQuery::setHighlightRequireFieldMatch
SolrQuery::setHighlightSimplePre
SolrQuery


Sets the text which appears before a highlighted term

SolrQuery::setHighlightSimplePost
SolrQuery::setHighlightSnippets
SolrQuery
PHP Manual

SolrQuery::setHighlightSimplePre

(PECL solr >= 0.9.2)

SolrQuery::setHighlightSimplePre — Sets the text which appears before a highlighted term

Descrição

publicSolrQuery SolrQuery::setHighlightSimplePre ( string $simplePre [, string $field_override ] )

Sets the text which appears before a highlighted term

The default is <em>

Parâmetros

simplePre

The text which appears before a highlighted term

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightSimplePost
SolrQuery::setHighlightSnippets
SolrQuery


Sets the maximum number of highlighted snippets to generate per field

SolrQuery::setHighlightSimplePre
SolrQuery::setHighlightUsePhraseHighlighter
SolrQuery
PHP Manual

SolrQuery::setHighlightSnippets

(PECL solr >= 0.9.2)

SolrQuery::setHighlightSnippets — Sets the maximum number of highlighted snippets to generate per field

Descrição

publicSolrQuery SolrQuery::setHighlightSnippets ( int $value [, string $field_override ] )

Sets the maximum number of highlighted snippets to generate per field

Parâmetros

value

The maximum number of highlighted snippets to generate per field

field_override

The name of the field.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightSimplePre
SolrQuery::setHighlightUsePhraseHighlighter
SolrQuery


Whether to highlight phrase terms only when they appear within the query phrase

SolrQuery::setHighlightSnippets
SolrQuery::setMlt
SolrQuery
PHP Manual

SolrQuery::setHighlightUsePhraseHighlighter

(PECL solr >= 0.9.2)

SolrQuery::setHighlightUsePhraseHighlighter — Whether to highlight phrase terms only when they appear within the query phrase

Descrição

publicSolrQuery SolrQuery::setHighlightUsePhraseHighlighter ( bool $flag )

Sets whether or not to use SpanScorer to highlight phrase terms only when they appear within the query phrase in the document

Parâmetros

value

Whether or not to use SpanScorer to highlight phrase terms only when they appear within the query phrase in the document

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightSnippets
SolrQuery::setMlt
SolrQuery


Enables or disables moreLikeThis

SolrQuery::setHighlightUsePhraseHighlighter
SolrQuery::setMltBoost
SolrQuery
PHP Manual

SolrQuery::setMlt

(PECL solr >= 0.9.2)

SolrQuery::setMlt — Enables or disables moreLikeThis

Descrição

publicSolrQuery SolrQuery::setMlt ( bool $flag )

Enables or disables moreLikeThis

Parâmetros

flag

TRUE enables it and FALSE turns it off.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setHighlightUsePhraseHighlighter
SolrQuery::setMltBoost
SolrQuery


Set if the query will be boosted by the interesting term relevance

SolrQuery::setMlt
SolrQuery::setMltCount
SolrQuery
PHP Manual

SolrQuery::setMltBoost

(PECL solr >= 0.9.2)

SolrQuery::setMltBoost — Set if the query will be boosted by the interesting term relevance

Descrição

publicSolrQuery SolrQuery::setMltBoost ( bool $flag )

Set if the query will be boosted by the interesting term relevance

Parâmetros

value

Sets to TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMlt
SolrQuery::setMltCount
SolrQuery


Set the number of similar documents to return for each result

SolrQuery::setMltBoost
SolrQuery::setMltMaxNumQueryTerms
SolrQuery
PHP Manual

SolrQuery::setMltCount

(PECL solr >= 0.9.2)

SolrQuery::setMltCount — Set the number of similar documents to return for each result

Descrição

publicSolrQuery SolrQuery::setMltCount ( int $count )

Set the number of similar documents to return for each result

Parâmetros

count

The number of similar documents to return for each result

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltBoost
SolrQuery::setMltMaxNumQueryTerms
SolrQuery


Sets the maximum number of query terms included

SolrQuery::setMltCount
SolrQuery::setMltMaxNumTokens
SolrQuery
PHP Manual

SolrQuery::setMltMaxNumQueryTerms

(PECL solr >= 0.9.2)

SolrQuery::setMltMaxNumQueryTerms — Sets the maximum number of query terms included

Descrição

publicSolrQuery SolrQuery::setMltMaxNumQueryTerms ( int $value )

Sets the maximum number of query terms that will be included in any generated query.

Parâmetros

value

The maximum number of query terms that will be included in any generated query

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltCount
SolrQuery::setMltMaxNumTokens
SolrQuery


Specifies the maximum number of tokens to parse

SolrQuery::setMltMaxNumQueryTerms
SolrQuery::setMltMaxWordLength
SolrQuery
PHP Manual

SolrQuery::setMltMaxNumTokens

(PECL solr >= 0.9.2)

SolrQuery::setMltMaxNumTokens — Specifies the maximum number of tokens to parse

Descrição

publicSolrQuery SolrQuery::setMltMaxNumTokens ( int $value )

Specifies the maximum number of tokens to parse in each example doc field that is not stored with TermVector support.

Parâmetros

value

The maximum number of tokens to parse

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMaxNumQueryTerms
SolrQuery::setMltMaxWordLength
SolrQuery


Sets the maximum word length

SolrQuery::setMltMaxNumTokens
SolrQuery::setMltMinDocFrequency
SolrQuery
PHP Manual

SolrQuery::setMltMaxWordLength

(PECL solr >= 0.9.2)

SolrQuery::setMltMaxWordLength — Sets the maximum word length

Descrição

publicSolrQuery SolrQuery::setMltMaxWordLength ( int $maxWordLength )

Sets the maximum word length above which words will be ignored.

Parâmetros

maxWordLength

The maximum word length above which words will be ignored

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMaxNumTokens
SolrQuery::setMltMinDocFrequency
SolrQuery


Sets the mltMinDoc frequency

SolrQuery::setMltMaxWordLength
SolrQuery::setMltMinTermFrequency
SolrQuery
PHP Manual

SolrQuery::setMltMinDocFrequency

(PECL solr >= 0.9.2)

SolrQuery::setMltMinDocFrequency — Sets the mltMinDoc frequency

Descrição

publicSolrQuery SolrQuery::setMltMinDocFrequency ( int $minDocFrequency )

The frequency at which words will be ignored which do not occur in at least this many docs.

Parâmetros

minDocFrequency

Sets the frequency at which words will be ignored which do not occur in at least this many docs.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMaxWordLength
SolrQuery::setMltMinTermFrequency
SolrQuery


Sets the frequency below which terms will be ignored in the source docs

SolrQuery::setMltMinDocFrequency
SolrQuery::setMltMinWordLength
SolrQuery
PHP Manual

SolrQuery::setMltMinTermFrequency

(PECL solr >= 0.9.2)

SolrQuery::setMltMinTermFrequency — Sets the frequency below which terms will be ignored in the source docs

Descrição

publicSolrQuery SolrQuery::setMltMinTermFrequency ( int $minTermFrequency )

Sets the frequency below which terms will be ignored in the source docs

Parâmetros

minTermFrequency

The frequency below which terms will be ignored in the source docs

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMinDocFrequency
SolrQuery::setMltMinWordLength
SolrQuery


Sets the minimum word length

SolrQuery::setMltMinTermFrequency
SolrQuery::setOmitHeader
SolrQuery
PHP Manual

SolrQuery::setMltMinWordLength

(PECL solr >= 0.9.2)

SolrQuery::setMltMinWordLength — Sets the minimum word length

Descrição

publicSolrQuery SolrQuery::setMltMinWordLength ( int $minWordLength )

Sets the minimum word length below which words will be ignored.

Parâmetros

minWordLength

The minimum word length below which words will be ignored

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMinTermFrequency
SolrQuery::setOmitHeader
SolrQuery


Exclude the header from the returned results

SolrQuery::setMltMinWordLength
SolrQuery::setQuery
SolrQuery
PHP Manual

SolrQuery::setOmitHeader

(PECL solr >= 0.9.2)

SolrQuery::setOmitHeader — Exclude the header from the returned results

Descrição

publicSolrQuery SolrQuery::setOmitHeader ( bool $flag )

Exclude the header from the returned results.

Parâmetros

flag

TRUE excludes the header from the result.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setMltMinWordLength
SolrQuery::setQuery
SolrQuery


Sets the search query

SolrQuery::setOmitHeader
SolrQuery::setRows
SolrQuery
PHP Manual

SolrQuery::setQuery

(PECL solr >= 0.9.2)

SolrQuery::setQuery — Sets the search query

Descrição

publicSolrQuery SolrQuery::setQuery ( string $query )

Sets the search query.

Parâmetros

query

The search query

Valor Retornado

Returns the current SolrQuery object

SolrQuery::setOmitHeader
SolrQuery::setRows
SolrQuery


Specifies the maximum number of rows to return in the result

SolrQuery::setQuery
SolrQuery::setShowDebugInfo
SolrQuery
PHP Manual

SolrQuery::setRows

(PECL solr >= 0.9.2)

SolrQuery::setRows — Specifies the maximum number of rows to return in the result

Descrição

publicSolrQuery SolrQuery::setRows ( int $rows )

Specifies the maximum number of rows to return in the result

Parâmetros

rows

The maximum number of rows to return

Valor Retornado

Returns the current SolrQuery object.

SolrQuery::setQuery
SolrQuery::setShowDebugInfo
SolrQuery


Flag to show debug information

SolrQuery::setRows
SolrQuery::setStart
SolrQuery
PHP Manual

SolrQuery::setShowDebugInfo

(PECL solr >= 0.9.2)

SolrQuery::setShowDebugInfo — Flag to show debug information

Descrição

publicSolrQuery SolrQuery::setShowDebugInfo ( bool $flag )

Whether to show debug info

Parâmetros

flag

Whether to show debug info. TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setRows
SolrQuery::setStart
SolrQuery


Specifies the number of rows to skip

SolrQuery::setShowDebugInfo
SolrQuery::setStats
SolrQuery
PHP Manual

SolrQuery::setStart

(PECL solr >= 0.9.2)

SolrQuery::setStart — Specifies the number of rows to skip

Descrição

publicSolrQuery SolrQuery::setStart ( int $start )

Specifies the number of rows to skip. Useful in pagination of results.

Parâmetros

start

The number of rows to skip.

Valor Retornado

Returns the current SolrQuery object.

SolrQuery::setShowDebugInfo
SolrQuery::setStats
SolrQuery


Enables or disables the Stats component

SolrQuery::setStart
SolrQuery::setTerms
SolrQuery
PHP Manual

SolrQuery::setStats

(PECL solr >= 0.9.2)

SolrQuery::setStats — Enables or disables the Stats component

Descrição

publicSolrQuery SolrQuery::setStats ( bool $flag )

Enables or disables the Stats component.

Parâmetros

flag

TRUE turns on the stats component and FALSE disables it.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setStart
SolrQuery::setTerms
SolrQuery


Enables or disables the TermsComponent

SolrQuery::setStats
SolrQuery::setTermsField
SolrQuery
PHP Manual

SolrQuery::setTerms

(PECL solr >= 0.9.2)

SolrQuery::setTerms — Enables or disables the TermsComponent

Descrição

publicSolrQuery SolrQuery::setTerms ( bool $flag )

Enables or disables the TermsComponent

Parâmetros

flag

TRUE enables it. FALSE turns it off

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setStats
SolrQuery::setTermsField
SolrQuery


Sets the name of the field to get the Terms from

SolrQuery::setTerms
SolrQuery::setTermsIncludeLowerBound
SolrQuery
PHP Manual

SolrQuery::setTermsField

(PECL solr >= 0.9.2)

SolrQuery::setTermsField — Sets the name of the field to get the Terms from

Descrição

publicSolrQuery SolrQuery::setTermsField ( string $fieldname )

Sets the name of the field to get the terms from

Parâmetros

fieldname

The field name

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTerms
SolrQuery::setTermsIncludeLowerBound
SolrQuery


Include the lower bound term in the result set

SolrQuery::setTermsField
SolrQuery::setTermsIncludeUpperBound
SolrQuery
PHP Manual

SolrQuery::setTermsIncludeLowerBound

(PECL solr >= 0.9.2)

SolrQuery::setTermsIncludeLowerBound — Include the lower bound term in the result set

Descrição

publicSolrQuery SolrQuery::setTermsIncludeLowerBound ( bool $flag )

Include the lower bound term in the result set.

Parâmetros

flag

Include the lower bound term in the result set

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsField
SolrQuery::setTermsIncludeUpperBound
SolrQuery


Include the upper bound term in the result set

SolrQuery::setTermsIncludeLowerBound
SolrQuery::setTermsLimit
SolrQuery
PHP Manual

SolrQuery::setTermsIncludeUpperBound

(PECL solr >= 0.9.2)

SolrQuery::setTermsIncludeUpperBound — Include the upper bound term in the result set

Descrição

publicSolrQuery SolrQuery::setTermsIncludeUpperBound ( bool $flag )

Include the upper bound term in the result set.

Parâmetros

flag

TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsIncludeLowerBound
SolrQuery::setTermsLimit
SolrQuery


Sets the maximum number of terms to return

SolrQuery::setTermsIncludeUpperBound
SolrQuery::setTermsLowerBound
SolrQuery
PHP Manual

SolrQuery::setTermsLimit

(PECL solr >= 0.9.2)

SolrQuery::setTermsLimit — Sets the maximum number of terms to return

Descrição

publicSolrQuery SolrQuery::setTermsLimit ( int $limit )

Sets the maximum number of terms to return

Parâmetros

limit

The maximum number of terms to return. All the terms will be returned if the limit is negative.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsIncludeUpperBound
SolrQuery::setTermsLowerBound
SolrQuery


Specifies the Term to start from

SolrQuery::setTermsLimit
SolrQuery::setTermsMaxCount
SolrQuery
PHP Manual

SolrQuery::setTermsLowerBound

(PECL solr >= 0.9.2)

SolrQuery::setTermsLowerBound — Specifies the Term to start from

Descrição

publicSolrQuery SolrQuery::setTermsLowerBound ( string $lowerBound )

Specifies the Term to start from

Parâmetros

lowerBound

The lower bound Term

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsLimit
SolrQuery::setTermsMaxCount
SolrQuery


Sets the maximum document frequency

SolrQuery::setTermsLowerBound
SolrQuery::setTermsMinCount
SolrQuery
PHP Manual

SolrQuery::setTermsMaxCount

(PECL solr >= 0.9.2)

SolrQuery::setTermsMaxCount — Sets the maximum document frequency

Descrição

publicSolrQuery SolrQuery::setTermsMaxCount ( int $frequency )

Sets the maximum document frequency.

Parâmetros

frequency

The maximum document frequency.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsLowerBound
SolrQuery::setTermsMinCount
SolrQuery


Sets the minimum document frequency

SolrQuery::setTermsMaxCount
SolrQuery::setTermsPrefix
SolrQuery
PHP Manual

SolrQuery::setTermsMinCount

(PECL solr >= 0.9.2)

SolrQuery::setTermsMinCount — Sets the minimum document frequency

Descrição

publicSolrQuery SolrQuery::setTermsMinCount ( int $frequency )

Sets the minimum doc frequency to return in order to be included

Parâmetros

frequency

The minimum frequency

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsMaxCount
SolrQuery::setTermsPrefix
SolrQuery


Restrict matches to terms that start with the prefix

SolrQuery::setTermsMinCount
SolrQuery::setTermsReturnRaw
SolrQuery
PHP Manual

SolrQuery::setTermsPrefix

(PECL solr >= 0.9.2)

SolrQuery::setTermsPrefix — Restrict matches to terms that start with the prefix

Descrição

publicSolrQuery SolrQuery::setTermsPrefix ( string $prefix )

Restrict matches to terms that start with the prefix

Parâmetros

prefix

Restrict matches to terms that start with the prefix

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsMinCount
SolrQuery::setTermsReturnRaw
SolrQuery


Return the raw characters of the indexed term

SolrQuery::setTermsPrefix
SolrQuery::setTermsSort
SolrQuery
PHP Manual

SolrQuery::setTermsReturnRaw

(PECL solr >= 0.9.2)

SolrQuery::setTermsReturnRaw — Return the raw characters of the indexed term

Descrição

publicSolrQuery SolrQuery::setTermsReturnRaw ( bool $flag )

If true, return the raw characters of the indexed term, regardless of if it is human readable

Parâmetros

value

TRUE or FALSE

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsPrefix
SolrQuery::setTermsSort
SolrQuery


Specifies how to sort the returned terms

SolrQuery::setTermsReturnRaw
SolrQuery::setTermsUpperBound
SolrQuery
PHP Manual

SolrQuery::setTermsSort

(PECL solr >= 0.9.2)

SolrQuery::setTermsSort — Specifies how to sort the returned terms

Descrição

publicSolrQuery SolrQuery::setTermsSort ( int $sortType )

If SolrQuery::TERMS_SORT_COUNT, sorts the terms by the term frequency (highest count first). If SolrQuery::TERMS_SORT_INDEX, returns the terms in index order

Parâmetros

sortType

SolrQuery::TERMS_SORT_INDEX or SolrQuery::TERMS_SORT_COUNT

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsReturnRaw
SolrQuery::setTermsUpperBound
SolrQuery


Sets the term to stop at

SolrQuery::setTermsSort
SolrQuery::setTimeAllowed
SolrQuery
PHP Manual

SolrQuery::setTermsUpperBound

(PECL solr >= 0.9.2)

SolrQuery::setTermsUpperBound — Sets the term to stop at

Descrição

publicSolrQuery SolrQuery::setTermsUpperBound ( string $upperBound )

Sets the term to stop at

Parâmetros

upperBound

The term to stop at

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsSort
SolrQuery::setTimeAllowed
SolrQuery


The time allowed for search to finish

SolrQuery::setTermsUpperBound
SolrException
SolrQuery
PHP Manual

SolrQuery::setTimeAllowed

(PECL solr >= 0.9.2)

SolrQuery::setTimeAllowed — The time allowed for search to finish

Descrição

publicSolrQuery SolrQuery::setTimeAllowed ( int $timeAllowed )

The time allowed for a search to finish. This value only applies to the search and not to requests in general. Time is in milliseconds. Values less than or equal to zero implies no time restriction. Partial results may be returned, if there are any.

Parâmetros

timeAllowed

The time allowed for a search to finish.

Valor Retornado

Returns the current SolrQuery object, if the return value is used.

SolrQuery::setTermsUpperBound
SolrException
SolrQuery


The SolrException class

Introdução

This is the base class for all exception thrown by the Solr extension classes.

Sinopse da classe

SolrException extends Exception {
/* Properties */
protected integer $sourceline ;
protected string $sourcefile ;
protected string $zif_name ;
/* Methods */
public array getInternalInfo ( void )
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

message

The error message

code

The error code

file

The userspace php source file where exception was generated

line

The line in userspace php source file where exception was generated

sourceline

The line in c-space source file where exception was generated

sourcefile

The c-space source file where exception was generated

zif_name

The c-space function where exception was generated

Índice

  • SolrException::getInternalInfo — Returns internal information where the Exception was thrown
SolrQuery::setTimeAllowed
SolrException::getInternalInfo
Solr


Returns internal information where the Exception was thrown

SolrException
SolrClientException
SolrException
PHP Manual

SolrException::getInternalInfo

(PECL solr >= 0.9.2)

SolrException::getInternalInfo — Returns internal information where the Exception was thrown

Descrição

public array SolrException::getInternalInfo ( void )

Returns internal information where the Exception was thrown.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing internal information where the error was thrown. Used only for debugging by extension developers.

SolrException
SolrClientException
SolrException


The SolrClientException class

Introdução

An exception thrown when there is an error while making a request to the server from the client.

Sinopse da classe

SolrClientException extends SolrException {
/* Properties */
/* Methods */
public array getInternalInfo ( void )
/* Inherited methods */
public array SolrException::getInternalInfo ( void )
}

Propriedades

message

The error message

code

The error code

file

The userspace php source file where exception was generated

line

The line in userspace php source file where exception was generated

sourceline

The line in c-space source file where exception was generated

sourcefile

The c-space source file where exception was generated

zif_name

The c-space function where exception was generated

Índice

  • SolrClientException::getInternalInfo — Returns internal information where the Exception was thrown
SolrException::getInternalInfo
SolrClientException::getInternalInfo
Solr


Returns internal information where the Exception was thrown

SolrClientException
SolrIllegalArgumentException
SolrClientException
PHP Manual

SolrClientException::getInternalInfo

(PECL solr >= 0.9.2)

SolrClientException::getInternalInfo — Returns internal information where the Exception was thrown

Descrição

public array SolrClientException::getInternalInfo ( void )

Returns internal information where the Exception was thrown.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing internal information where the error was thrown. Used only for debugging by extension developers.

SolrClientException
SolrIllegalArgumentException
SolrClientException


The SolrIllegalArgumentException class

Introdução

This object is thrown when an illeglal or invalid argument is passed to a method.

Sinopse da classe

SolrIllegalArgumentException extends SolrException {
/* Properties */
/* Methods */
public array getInternalInfo ( void )
/* Inherited methods */
public array SolrException::getInternalInfo ( void )
}

Propriedades

message

The error message

code

The error code

file

The userspace php source file where exception was generated

line

The line in userspace php source file where exception was generated

sourceline

The line in c-space source file where exception was generated

sourcefile

The c-space source file where exception was generated

zif_name

The c-space function where exception was generated

Índice

  • SolrIllegalArgumentException::getInternalInfo — Returns internal information where the Exception was thrown
SolrClientException::getInternalInfo
SolrIllegalArgumentException::getInternalInfo
Solr


Returns internal information where the Exception was thrown

SolrIllegalArgumentException
SolrIllegalOperationException
SolrIllegalArgumentException
PHP Manual

SolrIllegalArgumentException::getInternalInfo

(PECL solr >= 0.9.2)

SolrIllegalArgumentException::getInternalInfo — Returns internal information where the Exception was thrown

Descrição

public array SolrIllegalArgumentException::getInternalInfo ( void )

Returns internal information where the Exception was thrown.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing internal information where the error was thrown. Used only for debugging by extension developers.

SolrIllegalArgumentException
SolrIllegalOperationException
SolrIllegalArgumentException


The SolrIllegalOperationException class

Introdução

This object is thrown when an illegal or unsupported operation is performed on an object.

Sinopse da classe

SolrIllegalOperationException extends SolrException {
/* Properties */
/* Methods */
public array getInternalInfo ( void )
/* Inherited methods */
public array SolrException::getInternalInfo ( void )
}

Propriedades

message

The error message

code

The error code

file

The userspace php source file where exception was generated

line

The line in userspace php source file where exception was generated

sourceline

The line in c-space source file where exception was generated

sourcefile

The c-space source file where exception was generated

zif_name

The c-space function where exception was generated

Índice

  • SolrIllegalOperationException::getInternalInfo — Returns internal information where the Exception was thrown
SolrIllegalArgumentException::getInternalInfo
SolrIllegalOperationException::getInternalInfo
Solr


Returns internal information where the Exception was thrown

SolrIllegalOperationException
Extensões Específicas para Servidor
SolrIllegalOperationException
PHP Manual

SolrIllegalOperationException::getInternalInfo

(PECL solr >= 0.9.2)

SolrIllegalOperationException::getInternalInfo — Returns internal information where the Exception was thrown

Descrição

public array SolrIllegalOperationException::getInternalInfo ( void )

Returns internal information where the Exception was thrown.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing internal information where the error was thrown. Used only for debugging by extension developers.

SolrIllegalOperationException
Extensões Específicas para Servidor
SolrIllegalOperationException


Extensões Específicas para Servidor

  • Apache
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Apache Funções
  • IIS — IIS Administration
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • IIS Funções
  • NSAPI
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • NSAPI Funções
SolrIllegalOperationException::getInternalInfo
Apache
Referência das Funções


Apache

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Apache Funções
    • apache_child_terminate — Finaliza o processo Apache depois da requisição
    • apache_get_modules — Retorna uma lista de mÃ³dulos do Apache carregados
    • apache_get_version — Retorna a versÃ£o do Apache
    • apache_getenv — Retorna uma variável subprocess_env do Apache
    • apache_lookup_uri — Realiza uma requisição parcial para a URI especificada e retorna todas as informações sobre ela
    • apache_note — Obtém e seta notas de requisição
    • apache_request_headers — Obtem todos os headers HTTP
    • apache_reset_timeout — Reinicializa o timer de escrita do Apache
    • apache_response_headers — Obtêm todos os cabeçalhos da resposta HTTP
    • apache_setenv — Configura uma variável no ambiente do sub processo Apache
    • getallheaders — Obtem todos os headers HTTP
    • virtual — Realiza uma sub-requisição no Apache
Extensões Específicas para Servidor
Introdução
Extensões Específicas para Servidor


Introdução

Estas funções estão somente disponíveis com o PHP rodando como módulo do Apache.

Nota: A variável do servidor PATH_TRANSLATED não mais é criada implicitamente sob a SAPI do Apache 2 em contraste da situação no Apache 1, onde ela tinha o mesmo valor da variável de servidor SCRITP_FILENAME quando ela não era criada pelo Apache. Esta modificação está de acordo com a especificação CGI que PATH_TRANSLATED deve somente existir se PATH_INFO é definida. Usuários de Apache 2 podem usar AcceptPathInfo = On dentro httpd.conf para definir PATH_INFO.

Apache
Instalação/Configuração
Apache


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Apache


Instalação

Para instalação do PHP no Apache, veja o capítulo de instalação.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento do módulo PHP sob o Apache é afetado pelas configurações no php.ini. As diretivas de configuração no php.ini podem ser sobrescritas por diretivas php_flag no arquivo de configuração do servidor ou por arquivos .htaccess locais.

Exemplo #1 Desligando a interpretação do PHP em um diretório com o .htaccess

php_flag engine off

Opções de configuração do Apache
Nome | Padrão | Modificável | Changelog
engine | "1" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
child_terminate | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
last_modified | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
xbithack | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

engine boolean

Torna interpretação do PHP on ou off. Esta diretiva somente é útil para a versão módulo do Apache do PHP. Ela pode ser usada para ligar ou desligar a interpretação do PHP em nível de diretório ou em nível de servidor virtual. Colocando engine off nos lugares apropriados do arquivo httpd.conf, o PHP pode ser ativado ou desativado.

child_terminate boolean

Especifica se scripts PHP podem requisitar termino de processos filhos no final da requisição, veja também apache_child_terminate().

last_modified boolean

Envia data de modificação de scripts PHP com cabeçalho Last-Modified: para esta requisição.

xbithack boolean

Parse files with executable bit set as PHP regardless of their file ending.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Apache Funções
Apache


Apache Funções

Índice

  • apache_child_terminate — Finaliza o processo Apache depois da requisição
  • apache_get_modules — Retorna uma lista de mÃ³dulos do Apache carregados
  • apache_get_version — Retorna a versÃ£o do Apache
  • apache_getenv — Retorna uma variável subprocess_env do Apache
  • apache_lookup_uri — Realiza uma requisição parcial para a URI especificada e retorna todas as informações sobre ela
  • apache_note — Obtém e seta notas de requisição
  • apache_request_headers — Obtem todos os headers HTTP
  • apache_reset_timeout — Reinicializa o timer de escrita do Apache
  • apache_response_headers — Obtêm todos os cabeçalhos da resposta HTTP
  • apache_setenv — Configura uma variável no ambiente do sub processo Apache
  • getallheaders — Obtem todos os headers HTTP
  • virtual — Realiza uma sub-requisição no Apache
Constantes pré-definidas
apache_child_terminate
Apache


Finaliza o processo Apache depois da requisição

Apache Funções
apache_get_modules
Apache Funções
PHP Manual

apache_child_terminate

(PHP 4 >= 4.0.5, PHP 5)

apache_child_terminate — Finaliza o processo Apache depois da requisição

Descrição

bool apache_child_terminate ( void )

apache_child_terminate() registrará o processo Apache executando a requisição atual do PHP para finalização quando a execução do código PHP terminar. Isto pode se utilizado para terminar um processo depois que um script que tiver um alto consumo de memória for rodado e quando essa memória normalmente só é liberada internamente, mas não é devolviva para o sistema operacional.

Nota: A disponibilidade desse recurso é controlado pela diretiva php.ini child_terminate , que está definida off por default. Este recurso não está disponível em versões multi-thread do Apache, como a versão para Windows 32 bits.

Veja também exit().

Apache Funções
apache_get_modules
Apache Funções


Retorna uma lista de mÃ³dulos do Apache carregados

apache_child_terminate
apache_get_version
Apache Funções
PHP Manual

apache_get_modules

(PHP 4 >= 4.3.2, PHP 5)

apache_get_modules — Retorna uma lista de mÃ³dulos do Apache carregados

Descrição

array apache_get_modules ( void )

Retorna uma lista de mÃ³dulos do Apache carregados.

Valor Retornado

Um array de mÃ³dulos do Apache carregados.

Histórico

Versão | Descrição
5.0.0 | Tornou-se disponÃvel usando o Apache 1 ou a API filter do Apache 2 . Antes disso, sÃ³ estava disponÃvel usando a API handler do Apache2.

Exemplos

Exemplo #1 Exemplo de uso da funÃ§Ã£o apache_get_modules()

<?php
print_r(apache_get_modules());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => core
    [1] => http_core
    [2] => mod_so
    [3] => sapi_apache2
    [4] => mod_mime
    [5] => mod_rewrite
)

apache_child_terminate
apache_get_version
Apache Funções


Retorna a versÃ£o do Apache

apache_get_modules
apache_getenv
Apache Funções
PHP Manual

apache_get_version

(PHP 4 >= 4.3.2, PHP 5)

apache_get_version — Retorna a versÃ£o do Apache

Descrição

string apache_get_version ( void )

Retorna a versÃ£o do Apache.

Valor Retornado

Retorna a versÃ£o do Apache se tiver sucesso, ou FALSE se falhar.

Histórico

Versão | Descrição
4.3.4 | DisponÃvel com o Apache 1.
5.0.0 | DisponÃvel com a API filter do Apache 2.

Exemplos

Exemplo #1 Exemplo de uso da funÃ§Ã£o apache_get_version()

<?php
$version = apache_get_version();
echo "$version\n";
?>

O exemplo acima irá imprimir algo similar a:

Apache/1.3.29 (Unix) PHP/4.3.4

Veja Também

  • phpinfo() - Mostra muitas informações sobre o PHP

apache_get_modules
apache_getenv
Apache Funções


Retorna uma variável subprocess_env do Apache

apache_get_version
apache_lookup_uri
Apache Funções
PHP Manual

apache_getenv

(PHP 4 >= 4.3.0, PHP 5)

apache_getenv — Retorna uma variável subprocess_env do Apache

Descrição

string apache_getenv ( string $variable [, bool $walk_to_top ] )

Retorna a variável de ambiente do Apache especificada por variable.

Essa função requer Apache 2, caso contrário ela é indefinida.

Parâmetros

variable

A variável de ambiente do Apache

walk_to_top

Se deve ou não retorna a variável de alto-nível disponíveis em todas as camadas do Apache.

Valor Retornado

O valor da variável de ambiente do Apache se tiver sucesso, ou FALSE se falhar

Exemplos

Exemplo #1 Exemplo de uso da função apache_getenv()

O exemplo abaixo mostra como obter o valor da variável de ambiente do Apache SERVER_ADDR.

<?php
$ret = apache_getenv("SERVER_ADDR");
echo $ret;
?>

O exemplo acima irá imprimir algo similar a:

42.24.42.240

Veja Também

  • apache_sentenv()
  • getenv() - Obtém uma variável de ambiente
  • Superglobals

apache_get_version
apache_lookup_uri
Apache Funções


Realiza uma requisição parcial para a URI especificada e retorna todas as informações sobre ela

apache_getenv
apache_note
Apache Funções
PHP Manual

apache_lookup_uri

(PHP 4, PHP 5)

apache_lookup_uri — Realiza uma requisição parcial para a URI especificada e retorna todas as informações sobre ela

Descrição

object apache_lookup_uri ( string $filename )

Isto realiza uma requisição parcial para uma URI. Trabalha o suficiente para obter todas as informações importantes sobre o dado recurso.

Esta função é suportada apenas quando o PHP é instalado como módulo do Apache.

Parâmetros

filename

O nome do arquivo (URI) que está sendo requisitado.

Valor Retornado

Um object com informação relacionada a URI. As propriedades deste object são:

  • status
  • the_request
  • status_line
  • method
  • content_type
  • handler
  • uri
  • filename
  • path_info
  • args
  • boundary
  • no_cache
  • no_local_copy
  • allowed
  • send_bodyct
  • bytes_sent
  • byterange
  • clength
  • unparsed_uri
  • mtime
  • request_time

Exemplos

Exemplo #1 Exemplo da apache_lookup_uri()

<?php
$info = apache_lookup_uri('index.php?var=value');
print_r($info);

if (file_exists($info->filename)) {
    echo 'Arquivo existe!';
}
?>

O exemplo acima irá imprimir algo similar a:

stdClass Object
(
    [status] => 200
    [the_request] => GET /dir/file.php HTTP/1.1
    [method] => GET
    [mtime] => 0
    [clength] => 0
    [chunked] => 0
    [content_type] => application/x-httpd-php
    [no_cache] => 0
    [no_local_copy] => 1
    [unparsed_uri] => /dir/index.php?var=value
    [uri] => /dir/index.php
    [filename] => /home/htdocs/dir/index.php
    [args] => var=value
    [allowed] => 0
    [sent_bodyct] => 0
    [bytes_sent] => 0
    [request_time] => 1074282764
)
Arquivo existe!

apache_getenv
apache_note
Apache Funções


Obtém e seta notas de requisição

apache_lookup_uri
apache_request_headers
Apache Funções
PHP Manual

apache_note

(PHP 4, PHP 5)

apache_note — Obtém e seta notas de requisição

Descrição

string apache_note ( string $note_name [, string $note_value ] )

apache_note() é uma função específica do Apache que obtém e seta valores em uma tabela de notas de requisição. Se for chamada com um argumento, ela retorna o valor atual da nota note_name. Se for chamada com dois argumentos, ela seta o valor da nota note_name para note_value e retorna o valor anterior da nota note_name.

apache_lookup_uri
apache_request_headers
Apache Funções


Obtem todos os headers HTTP

apache_note
apache_reset_timeout
Apache Funções
PHP Manual

apache_request_headers

(PHP 4 >= 4.3.0, PHP 5)

apache_request_headers — Obtem todos os headers HTTP

Descrição

array apache_request_headers ( void )

Obtém todos os cabeçalhos HTTP da requisição atual.

Esta função é suportada apenas quando o PHP é instalado como módulo do Apache.

Valor Retornado

An associative array of all the HTTP headers in the current request, or FALSE on failure.

Exemplos

Exemplo #1 Exemplo apache_request_headers()

<?php
$headers = apache_request_headers();

foreach ($headers as $header => $value) {
    echo "$header: $value <br />\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Accept: */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0
Host: www.example.com
Connection: Keep-Alive

Notas

Nota:

Antes do PHP 4.3.0, apache_request_headers() era
chamado getallheaders(). Depois do PHP 4.3.0,
getallheaders() é um sinônimo para
apache_request_headers().

Nota:

Você também pode obter o valor das variáveis CGI comuns lendo-as a partir do ambiente, o que funciona caso esteja ou não utilizando o PHP como módulo do Apache. Faça um phpinfo() para ver uma lista dessas variáveis chamadas variáveis ambiente.

Nota:

A partir do PHP 4.3.3, você pode usar essa função com o módulo NSAPI server nos servidores Netscape/iPlanet/SunONE também.

Veja Também

  • apache_response_headers() - Obtêm todos os cabeçalhos da resposta HTTP

apache_note
apache_reset_timeout
Apache Funções


Reinicializa o timer de escrita do Apache

apache_request_headers
apache_response_headers
Apache Funções
PHP Manual

apache_reset_timeout

(PHP 5 >= 5.1.0)

apache_reset_timeout — Reinicializa o timer de escrita do Apache

Descrição

bool apache_reset_timeout ( void )

apache_reset_timeout() reinicializa o timer de escrita do Apache, que tem o valor padrÃ£o de 300 segundo. Com set_time_limit(0); ignore_user_abort(true) e chamadas periÃ³dicas de apache_reset_timeout(), o Apache pode, teoricamente, executar para sempre.

Essa funÃ§Ã£o requer Apache 1.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota: Esta função é desabilitada quando o PHP é executado em safe-mode

Veja Também

  • set_time_limit() - Limita o tempo de execução do script
  • ignore_user_abort() - Estabelece se acontecerá o encerramento do script quando o usuário abortar a conexão

apache_request_headers
apache_response_headers
Apache Funções


Obtêm todos os cabeçalhos da resposta HTTP

apache_reset_timeout
apache_setenv
Apache Funções
PHP Manual

apache_response_headers

(PHP 4 >= 4.3.0, PHP 5)

apache_response_headers — Obtêm todos os cabeçalhos da resposta HTTP

Descrição

array apache_response_headers ( void )

Obtém todos os cabeçalhos de resposta.

Valor Retornado

Um array de todos os cabeçalhos de resposta do Apache em sucesso, ou FALSE em falha.

Exemplos

Exemplo #1 apache_response_headers() example

<?php
print_r(apache_response_headers());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [Accept-Ranges] => bytes
    [X-Powered-By] => PHP/4.3.8
)

Notas

Nota:

A partir do PHP 4.3.3, você pode usar essa função com o módulo NSAPI server nos servidores Netscape/iPlanet/SunONE também.

Veja Também

  • apache_request_headers() - Obtem todos os headers HTTP
  • headers_sent() - Checks if or where headers have been sent
  • headers_list() - Returns a list of response headers sent (or ready to send)

apache_reset_timeout
apache_setenv
Apache Funções


Configura uma variável no ambiente do sub processo Apache

apache_response_headers
getallheaders
Apache Funções
PHP Manual

apache_setenv

(PHP 4 >= 4.2.0, PHP 5)

apache_setenv — Configura uma variável no ambiente do sub processo Apache

Descrição

int apache_setenv ( string $variable , string $value [, bool $walk_to_top ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

apache_response_headers
getallheaders
Apache Funções


Obtem todos os headers HTTP

apache_setenv
virtual
Apache Funções
PHP Manual

getallheaders

(PHP 4, PHP 5)

getallheaders — Obtem todos os headers HTTP

Descrição

array getallheaders ( void )

Obtém todos cabeçalhos HTTP da atual requisição.

Esta função é um sinônimo para apache_request_headers(). Ela retorna um array associativo de todos os headers HTTP da requisição atual. Veja a documentação de apache_request_headers() para mais detalhes do funcionamento dessa função.

Esta função é suportada apenas quando o PHP é instalado como módulo do Apache.

Valor Retornado

Um array associativo de todos cabeçalhos HTTP da requisição atual, ou FALSE em falha.

Histórico

Versão | Descrição
4.3.0 | Tornou-se um apelido de apache_request_headers(). Essencialmente, ela foi renomeada. Isto porque a função somente funciona com Apache.

Exemplos

Exemplo #1 Exemplo da getallheadres()

<?php

foreach (getallheaders() as $name => $value) {
    echo "$name: $value\n";
}

?>

Notas

Nota:

A partir do PHP 4.3.3, você pode usar essa função com o módulo NSAPI server nos servidores Netscape/iPlanet/SunONE também.

Veja Também

  • apache_response_headers() - Obtêm todos os cabeçalhos da resposta HTTP

apache_setenv
virtual
Apache Funções


Realiza uma sub-requisição no Apache

getallheaders
IIS
Apache Funções
PHP Manual

virtual

(PHP 4, PHP 5)

virtual — Realiza uma sub-requisição no Apache

Descrição

int virtual ( string $filename )

virtual() é uma função específica do Apache que é equivalente a <!--#include virtual...--> no mod_include. Ela realiza uma sub-requisição do Apache. Ela é útil para incluir scripts de CGI ou arquivos .shtml, ou qualquer outra coisa que você possa analisar através do Apache. Note que para um script CGI, o script precisa gerar um cabeçalho CGI válido. Isto significa que, no mínimo, ele precisa gerar um cabeçalho Content-type.

Para executar a sub-requisição, todos os buffers são finalizados e enviados para o browser. Headers pendentes são enviados também.

A partir do PHP 4.0.6, você pode utilizar virtual() em arquivos PHP. Entretanto, é normalmente melhor usar include() ou require() se você precisa incluir outro arquivo PHP.

Nota:

A partir do PHP 4.3.3, você pode usar essa função com o módulo NSAPI server nos servidores Netscape/iPlanet/SunONE também.

getallheaders
IIS
Apache Funções


IIS Administration

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • IIS Funções
    • iis_add_server — Creates a new virtual web server
    • iis_get_dir_security — Gets Directory Security
    • iis_get_script_map — Gets script mapping on a virtual directory for a specific extension
    • iis_get_server_by_comment — Return the instance number associated with the Comment
    • iis_get_server_by_path — Return the instance number associated with the Path
    • iis_get_server_rights — Gets server rights
    • iis_get_service_state — Returns the state for the service defined by ServiceId
    • iis_remove_server — Removes the virtual web server indicated by ServerInstance
    • iis_set_app_settings — Creates application scope for a virtual directory
    • iis_set_dir_security — Sets Directory Security
    • iis_set_script_map — Sets script mapping on a virtual directory
    • iis_set_server_rights — Sets server rights
    • iis_start_server — Starts the virtual web server
    • iis_start_service — Starts the service defined by ServiceId
    • iis_stop_server — Stops the virtual web server
    • iis_stop_service — Stops the service defined by ServiceId
virtual
Introdução
Extensões Específicas para Servidor


Introdução

This extension is available for Win32 only. It provides functions to administrate Microsoft Internet Information Server (IIS). The extension includes function to create web sites and virtual directories as well as configuring security and script mapping. These functions have been added in PHP 4.

IIS
Instalação/Configuração
IIS


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
IIS


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/iisfunc.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

IIS_READ (integer)
IIS_WRITE (integer)
IIS_EXECUTE (integer)
IIS_SCRIPT (integer)
IIS_ANONYMOUS (integer)
IIS_BASIC (integer)
IIS_NTLM (integer)
IIS_STARTING (integer)
IIS_STOPPED (integer)
IIS_PAUSED (integer)
IIS_RUNNING (integer)
Tipos Resource
IIS Funções
IIS


IIS Funções

Índice

  • iis_add_server — Creates a new virtual web server
  • iis_get_dir_security — Gets Directory Security
  • iis_get_script_map — Gets script mapping on a virtual directory for a specific extension
  • iis_get_server_by_comment — Return the instance number associated with the Comment
  • iis_get_server_by_path — Return the instance number associated with the Path
  • iis_get_server_rights — Gets server rights
  • iis_get_service_state — Returns the state for the service defined by ServiceId
  • iis_remove_server — Removes the virtual web server indicated by ServerInstance
  • iis_set_app_settings — Creates application scope for a virtual directory
  • iis_set_dir_security — Sets Directory Security
  • iis_set_script_map — Sets script mapping on a virtual directory
  • iis_set_server_rights — Sets server rights
  • iis_start_server — Starts the virtual web server
  • iis_start_service — Starts the service defined by ServiceId
  • iis_stop_server — Stops the virtual web server
  • iis_stop_service — Stops the service defined by ServiceId
Constantes pré-definidas
iis_add_server
IIS


Creates a new virtual web server

IIS Funções
iis_get_dir_security
IIS Funções
PHP Manual

iis_add_server

(PECL iisfunc SVN)

iis_add_server — Creates a new virtual web server

Descrição

int iis_add_server ( string $path , string $comment , string $server_ip , int $port , string $host_name , int $rights , int $start_server )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

IIS Funções
iis_get_dir_security
IIS Funções


Gets Directory Security

iis_add_server
iis_get_script_map
IIS Funções
PHP Manual

iis_get_dir_security

(PECL iisfunc SVN)

iis_get_dir_security — Gets Directory Security

Descrição

int iis_get_dir_security ( int $server_instance , string $virtual_path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_add_server
iis_get_script_map
IIS Funções


Gets script mapping on a virtual directory for a specific extension

iis_get_dir_security
iis_get_server_by_comment
IIS Funções
PHP Manual

iis_get_script_map

(PECL iisfunc SVN)

iis_get_script_map — Gets script mapping on a virtual directory for a specific extension

Descrição

string iis_get_script_map ( int $server_instance , string $virtual_path , string $script_extension )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_get_dir_security
iis_get_server_by_comment
IIS Funções


Return the instance number associated with the Comment

iis_get_script_map
iis_get_server_by_path
IIS Funções
PHP Manual

iis_get_server_by_comment

(PECL iisfunc SVN)

iis_get_server_by_comment — Return the instance number associated with the Comment

Descrição

int iis_get_server_by_comment ( string $comment )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_get_script_map
iis_get_server_by_path
IIS Funções


Return the instance number associated with the Path

iis_get_server_by_comment
iis_get_server_rights
IIS Funções
PHP Manual

iis_get_server_by_path

(PECL iisfunc SVN)

iis_get_server_by_path — Return the instance number associated with the Path

Descrição

int iis_get_server_by_path ( string $path )

Each virtual server in IIS is associated with an instance number. iis_get_server_by_path() finds the instance number from the actual path to the root directory.

Parâmetros

path

The path to the root directory

Valor Retornado

Returns the server instance number.

iis_get_server_by_comment
iis_get_server_rights
IIS Funções


Gets server rights

iis_get_server_by_path
iis_get_service_state
IIS Funções
PHP Manual

iis_get_server_rights

(PECL iisfunc SVN)

iis_get_server_rights — Gets server rights

Descrição

int iis_get_server_rights ( int $server_instance , string $virtual_path )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_get_server_by_path
iis_get_service_state
IIS Funções


Returns the state for the service defined by ServiceId

iis_get_server_rights
iis_remove_server
IIS Funções
PHP Manual

iis_get_service_state

(PECL iisfunc SVN)

iis_get_service_state — Returns the state for the service defined by ServiceId

Descrição

int iis_get_service_state ( string $service_id )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_get_server_rights
iis_remove_server
IIS Funções


Removes the virtual web server indicated by ServerInstance

iis_get_service_state
iis_set_app_settings
IIS Funções
PHP Manual

iis_remove_server

(PECL iisfunc SVN)

iis_remove_server — Removes the virtual web server indicated by ServerInstance

Descrição

int iis_remove_server ( int $server_instance )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_get_service_state
iis_set_app_settings
IIS Funções


Creates application scope for a virtual directory

iis_remove_server
iis_set_dir_security
IIS Funções
PHP Manual

iis_set_app_settings

(PECL iisfunc SVN)

iis_set_app_settings — Creates application scope for a virtual directory

Descrição

int iis_set_app_settings ( int $server_instance , string $virtual_path , string $application_scope )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_remove_server
iis_set_dir_security
IIS Funções


Sets Directory Security

iis_set_app_settings
iis_set_script_map
IIS Funções
PHP Manual

iis_set_dir_security

(PECL iisfunc SVN)

iis_set_dir_security — Sets Directory Security

Descrição

int iis_set_dir_security ( int $server_instance , string $virtual_path , int $directory_flags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_set_app_settings
iis_set_script_map
IIS Funções


Sets script mapping on a virtual directory

iis_set_dir_security
iis_set_server_rights
IIS Funções
PHP Manual

iis_set_script_map

(PECL iisfunc SVN)

iis_set_script_map — Sets script mapping on a virtual directory

Descrição

int iis_set_script_map ( int $server_instance , string $virtual_path , string $script_extension , string $engine_path , int $allow_scripting )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_set_dir_security
iis_set_server_rights
IIS Funções


Sets server rights

iis_set_script_map
iis_start_server
IIS Funções
PHP Manual

iis_set_server_rights

(PECL iisfunc SVN)

iis_set_server_rights — Sets server rights

Descrição

int iis_set_server_rights ( int $server_instance , string $virtual_path , int $directory_flags )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_set_script_map
iis_start_server
IIS Funções


Starts the virtual web server

iis_set_server_rights
iis_start_service
IIS Funções
PHP Manual

iis_start_server

(PECL iisfunc SVN)

iis_start_server — Starts the virtual web server

Descrição

int iis_start_server ( int $server_instance )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_set_server_rights
iis_start_service
IIS Funções


Starts the service defined by ServiceId

iis_start_server
iis_stop_server
IIS Funções
PHP Manual

iis_start_service

(PECL iisfunc SVN)

iis_start_service — Starts the service defined by ServiceId

Descrição

int iis_start_service ( string $service_id )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_start_server
iis_stop_server
IIS Funções


Stops the virtual web server

iis_start_service
iis_stop_service
IIS Funções
PHP Manual

iis_stop_server

(PECL iisfunc SVN)

iis_stop_server — Stops the virtual web server

Descrição

int iis_stop_server ( int $server_instance )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_start_service
iis_stop_service
IIS Funções


Stops the service defined by ServiceId

iis_stop_server
NSAPI
IIS Funções
PHP Manual

iis_stop_service

(PECL iisfunc SVN)

iis_stop_service — Stops the service defined by ServiceId

Descrição

int iis_stop_service ( string $service_id )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

iis_stop_server
NSAPI
IIS Funções


NSAPI

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • NSAPI Funções
    • nsapi_request_headers — Fetch all HTTP request headers
    • nsapi_response_headers — Fetch all HTTP response headers
    • nsapi_virtual — Perform an NSAPI sub-request
iis_stop_service
Introdução
Extensões Específicas para Servidor


Introdução

These functions are only available when running PHP as a NSAPI module in Netscape/iPlanet/Sun webservers.

NSAPI
Instalação/Configuração
NSAPI


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
NSAPI


Instalação

For PHP installation on Netscape/iPlanet/Sun webservers see the NSAPI section (UNIX, Windows) in the installation chapter.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

The behaviour of the NSAPI PHP module is affected by settings in php.ini. Configuration settings from php.ini may be overridden by additional parameters to the php4_execute call in obj.conf

NSAPI configuration options
Name | Default | Changeable | Changelog
nsapi.read_timeout | "60" | PHP_INI_ALL | Available since PHP 4.3.3.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

nsapi.read_timeout integer

Sets the time in seconds the plugin is waiting for POST data from the client.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
NSAPI Funções
NSAPI


NSAPI Funções

Veja Também

NSAPI implements a subset of the functions from the Apache module for maximum compatibility.

Apache functions implemented by NSAPI
Apache function (only as alias) | NSAPI function | Description
apache_request_headers() | nsapi_request_headers() | Fetch all HTTP request headers
apache_response_headers() | nsapi_response_headers() | Fetch all HTTP response headers
getallheaders() | nsapi_request_headers() | Fetch all HTTP request headers
virtual() | nsapi_virtual() | Make NSAPI sub-request

Índice

  • nsapi_request_headers — Fetch all HTTP request headers
  • nsapi_response_headers — Fetch all HTTP response headers
  • nsapi_virtual — Perform an NSAPI sub-request
Constantes pré-definidas
nsapi_request_headers
NSAPI


Fetch all HTTP request headers

NSAPI Funções
nsapi_response_headers
NSAPI Funções
PHP Manual

nsapi_request_headers

(PHP 4 >= 4.3.3, PHP 5)

nsapi_request_headers — Fetch all HTTP request headers

Descrição

array nsapi_request_headers ( void )

nsapi_request_headers() gets all the HTTP headers in the current request. This is only supported when PHP runs as a NSAPI module.

Nota:

Prior to PHP 4.3.3, getallheaders() was only available for the Apache servers. After PHP 4.3.3, getallheaders() is an alias for nsapi_request_headers() if you use the NSAPI module.

Nota:

You can also get at the value of the common CGI variables by reading them from the $_SERVER superglobal, which works whether or not you are using PHP as a NSAPI module.

Valor Retornado

Returns an associative array with all the HTTP headers.

Exemplos

Exemplo #1 nsapi_request_headers() example

<?php
$headers = nsapi_request_headers();

foreach ($headers as $header => $value) {
  echo "$header: $value <br />\n";
}
?>

NSAPI Funções
nsapi_response_headers
NSAPI Funções


Fetch all HTTP response headers

nsapi_request_headers
nsapi_virtual
NSAPI Funções
PHP Manual

nsapi_response_headers

(PHP 4 >= 4.3.3, PHP 5)

nsapi_response_headers — Fetch all HTTP response headers

Descrição

array nsapi_response_headers ( void )

Gets all the NSAPI response headers.

Valor Retornado

Returns an associative array with all the NSAPI response headers.

Veja Também

  • nsapi_request_headers() - Fetch all HTTP request headers
  • headers_sent() - Checks if or where headers have been sent

nsapi_request_headers
nsapi_virtual
NSAPI Funções


Perform an NSAPI sub-request

nsapi_response_headers
Extensões de Sessão
NSAPI Funções
PHP Manual

nsapi_virtual

(PHP 4 >= 4.3.3, PHP 5)

nsapi_virtual — Perform an NSAPI sub-request

Descrição

bool nsapi_virtual ( string $uri )

nsapi_virtual() is an NSAPI-specific function which is equivalent to <!--#include virtual...--> in SSI (.shtml files). It does an NSAPI sub-request. It is useful for including CGI scripts or .shtml files, or anything else that you'd parse through webserver.

To run the sub-request, all buffers are terminated and flushed to the browser, pending headers are sent too.

You cannot make recursive requests with this function to other PHP scripts. If you want to include PHP scripts, use include() or require().

Nota:

This function depends on a undocumented feature of the Netscape/iPlanet/Sun webservers. Use phpinfo() to determine if it is available. In the Unix environment it should always work, in Windows it depends on the name of a ns-httpdXX.dll file.

Read the note about subrequests in the NSAPI section (UNIX, Windows) if you experience this problem.

Parâmetros

uri

The URI of the script.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

nsapi_response_headers
Extensões de Sessão
NSAPI Funções


Extensões de Sessão

  • Msession — Mohawk Software Session Handler Functions
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Msession Funções
  • Sessões — Manipulação de Sessão
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Sessões e segurança
    • Funções para Sessão
  • Session PgSQL — PostgreSQL Session Save Handler
    • Introdução
    • Instalação/Configuração
    • Table definitions
    • Constantes pré-definidas
    • Session PgSQL Funções
nsapi_virtual
Msession
Referência das Funções


Mohawk Software Session Handler Functions

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Msession Funções
    • msession_connect — Connect to msession server
    • msession_count — Get session count
    • msession_create — Create a session
    • msession_destroy — Destroy a session
    • msession_disconnect — Close connection to msession server
    • msession_find — Find all sessions with name and value
    • msession_get_array — Get array of msession variables
    • msession_get_data — Get data session unstructured data
    • msession_get — Get value from session
    • msession_inc — Increment value in session
    • msession_list — List all sessions
    • msession_listvar — List sessions with variable
    • msession_lock — Lock a session
    • msession_plugin — Call an escape function within the msession personality plugin
    • msession_randstr — Get random string
    • msession_set_array — Set msession variables from an array
    • msession_set_data — Set data session unstructured data
    • msession_set — Set value in session
    • msession_timeout — Set/get session timeout
    • msession_uniq — Get unique id
    • msession_unlock — Unlock a session
Extensões de Sessão
Introdução
Extensões de Sessão


Introdução

msession is an interface to a high speed session daemon which can run either locally or remotely. It is designed to provide consistent session management for a PHP web farm. More Information about msession and the session server software itself can be found at » http://www.mohawksoft.org/?q=node/8.

Nota: Esta extensão não está disponível na plataforma Windows.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.3.

Msession
Instalação/Configuração
Msession


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Msession


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/msession.

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.3

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Msession Funções
Msession


Msession Funções

Índice

  • msession_connect — Connect to msession server
  • msession_count — Get session count
  • msession_create — Create a session
  • msession_destroy — Destroy a session
  • msession_disconnect — Close connection to msession server
  • msession_find — Find all sessions with name and value
  • msession_get_array — Get array of msession variables
  • msession_get_data — Get data session unstructured data
  • msession_get — Get value from session
  • msession_inc — Increment value in session
  • msession_list — List all sessions
  • msession_listvar — List sessions with variable
  • msession_lock — Lock a session
  • msession_plugin — Call an escape function within the msession personality plugin
  • msession_randstr — Get random string
  • msession_set_array — Set msession variables from an array
  • msession_set_data — Set data session unstructured data
  • msession_set — Set value in session
  • msession_timeout — Set/get session timeout
  • msession_uniq — Get unique id
  • msession_unlock — Unlock a session
Constantes pré-definidas
msession_connect
Msession


Connect to msession server

Msession Funções
msession_count
Msession Funções
PHP Manual

msession_connect

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_connect — Connect to msession server

Descrição

bool msession_connect ( string $host , string $port )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Msession Funções
msession_count
Msession Funções


Get session count

msession_connect
msession_create
Msession Funções
PHP Manual

msession_count

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_count — Get session count

Descrição

int msession_count ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_connect
msession_create
Msession Funções


Create a session

msession_count
msession_destroy
Msession Funções
PHP Manual

msession_create

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_create — Create a session

Descrição

bool msession_create ( string $session [, string $classname [, string $data ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_count
msession_destroy
Msession Funções


Destroy a session

msession_create
msession_disconnect
Msession Funções
PHP Manual

msession_destroy

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_destroy — Destroy a session

Descrição

bool msession_destroy ( string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_create
msession_disconnect
Msession Funções


Close connection to msession server

msession_destroy
msession_find
Msession Funções
PHP Manual

msession_disconnect

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_disconnect — Close connection to msession server

Descrição

void msession_disconnect ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_destroy
msession_find
Msession Funções


Find all sessions with name and value

msession_disconnect
msession_get_array
Msession Funções
PHP Manual

msession_find

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_find — Find all sessions with name and value

Descrição

array msession_find ( string $name , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_disconnect
msession_get_array
Msession Funções


Get array of msession variables

msession_find
msession_get_data
Msession Funções
PHP Manual

msession_get_array

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_get_array — Get array of msession variables

Descrição

array msession_get_array ( string $session )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_find
msession_get_data
Msession Funções


Get data session unstructured data

msession_get_array
msession_get
Msession Funções
PHP Manual

msession_get_data

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_get_data — Get data session unstructured data

Descrição

string msession_get_data ( string $session )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_get_array
msession_get
Msession Funções


Get value from session

msession_get_data
msession_inc
Msession Funções
PHP Manual

msession_get

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_get — Get value from session

Descrição

string msession_get ( string $session , string $name , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_get_data
msession_inc
Msession Funções


Increment value in session

msession_get
msession_list
Msession Funções
PHP Manual

msession_inc

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_inc — Increment value in session

Descrição

string msession_inc ( string $session , string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_get
msession_list
Msession Funções


List all sessions

msession_inc
msession_listvar
Msession Funções
PHP Manual

msession_list

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_list — List all sessions

Descrição

array msession_list ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_inc
msession_listvar
Msession Funções


List sessions with variable

msession_list
msession_lock
Msession Funções
PHP Manual

msession_listvar

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_listvar — List sessions with variable

Descrição

array msession_listvar ( string $name )

Used for searching sessions with common attributes.

Parâmetros

name

The name being searched.

Valor Retornado

Returns an associative array of value/session for all sessions with a variable named name.

msession_list
msession_lock
Msession Funções


Lock a session

msession_listvar
msession_plugin
Msession Funções
PHP Manual

msession_lock

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_lock — Lock a session

Descrição

int msession_lock ( string $name )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_listvar
msession_plugin
Msession Funções


Call an escape function within the msession personality plugin

msession_lock
msession_randstr
Msession Funções
PHP Manual

msession_plugin

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_plugin — Call an escape function within the msession personality plugin

Descrição

string msession_plugin ( string $session , string $val [, string $param ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_lock
msession_randstr
Msession Funções


Get random string

msession_plugin
msession_set_array
Msession Funções
PHP Manual

msession_randstr

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_randstr — Get random string

Descrição

string msession_randstr ( int $param )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_plugin
msession_set_array
Msession Funções


Set msession variables from an array

msession_randstr
msession_set_data
Msession Funções
PHP Manual

msession_set_array

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_set_array — Set msession variables from an array

Descrição

void msession_set_array ( string $session , array $tuples )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_randstr
msession_set_data
Msession Funções


Set data session unstructured data

msession_set_array
msession_set
Msession Funções
PHP Manual

msession_set_data

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_set_data — Set data session unstructured data

Descrição

bool msession_set_data ( string $session , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_set_array
msession_set
Msession Funções


Set value in session

msession_set_data
msession_timeout
Msession Funções
PHP Manual

msession_set

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_set — Set value in session

Descrição

bool msession_set ( string $session , string $name , string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_set_data
msession_timeout
Msession Funções


Set/get session timeout

msession_set
msession_uniq
Msession Funções
PHP Manual

msession_timeout

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_timeout — Set/get session timeout

Descrição

int msession_timeout ( string $session [, int $param ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_set
msession_uniq
Msession Funções


Get unique id

msession_timeout
msession_unlock
Msession Funções
PHP Manual

msession_uniq

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_uniq — Get unique id

Descrição

string msession_uniq ( int $param [, string $classname [, string $data ]] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_timeout
msession_unlock
Msession Funções


Unlock a session

msession_uniq
Sessões
Msession Funções
PHP Manual

msession_unlock

(PHP 4 >= 4.2.0, PHP 5 <= 5.1.2)

msession_unlock — Unlock a session

Descrição

int msession_unlock ( string $session , int $key )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

msession_uniq
Sessões
Msession Funções


Manipulação de Sessão

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Passando o ID de Sessão
    • Manipuladores de sessões personalizados
  • Sessões e segurança
  • Funções para Sessão
    • session_cache_expire — Retorna o prazo do cache atual
    • session_cache_limiter — Obtém e/ou define o limitador do cache atual
    • session_commit — Sinônimo de session_write_close
    • session_decode — Decifra dado de sessão de uma string
    • session_destroy — Destrói todos os dados registrados em uma sessão
    • session_encode — Codifica os dados da sessão atual como uma string
    • session_get_cookie_params — Obtém os parâmetros do cookie da sessão
    • session_id — Obtém e/ou define o id de sessão atual
    • session_is_registered — Descobre se uma variável global está registrada numa sessão
    • session_module_name — Obtém e/ou define o módulo da sessão atual
    • session_name — Obtém e/ou define o nome da sessão atual
    • session_regenerate_id — Atualiza o id da sessão atual com um novo gerado
    • session_register — Registrar uma ou mais variáveis globais na sessão atual
    • session_save_path — Obtém e/ou define o save path da sessão atual
    • session_set_cookie_params — Define os parâmetros do cookie de sessão
    • session_set_save_handler — Define a sequência de funções de armazenamento
    • session_start — Inicia dados de sessão
    • session_unregister — Desregistra uma variável global da sessão atual
    • session_unset — Libera todas as variáveis de sessão
    • session_write_close — Escreve dados de sessão e termina a sessão
msession_unlock
Introdução
Extensões de Sessão


Introdução

O suporte a sessões no PHP consiste em uma maneira de preservar certos dados atráves dos acessos subsequentes. Isto permite a você fazer aplicações mais personalizadas e melhorar a aparência do seu web site.

Um visitante acessando o seu web site ganha um identificador único, o assim chamado id de sessão. Este é salvo em um cookie do lado do usuário ou propagado via URL.

O suporte a sessão permite a você registrar um número arbritrário de variáveis que serão preservadas entre as requisições. Quando um visitante acessar o seu site, o PHP irá conferir automaticamente (se session.auto_start estiver definido como 1) ou quando você pedir (explicitamente atráves de session_start() ou implicitamente através de session_register()) quando um id de sessão específico for enviado com a requisição. Se este for o caso, o ambiente anteriormente salvo é recriado.

Cuidado

Se você ativar session.auto_start então você não poderá colocar objetos em suas sessões já que a definição deve ser carregada antes de começar a sessão para poder recriar os objetos da sua sessão.

Todas as variáveis são serializadas depois das solicitações terminarem. Variáveis registradas as quais não estejam definidas são marcadas como sendo não definidas. Nos acessos subsequentes, estas não são definidas pelo módulo da sessão a menos que o usuário defina elas posteriormente.

Aviso

Alguns tipos de dados não podem ser serializados e assim guardados em sessões. Isso inclui variáveis de resource(recursos) ou objetos com referências circulares (ex. objetos que passam uma referência de si mesmo para outro objeto).

Nota:

A manipulação de sessões foi adicionada no PHP 4.0.0.

Nota:

Por favor note que ao trabalhar com sessões que um registro da sessão não é criado até que a variável seja registrada usando a função session_register() ou pela adição de uma nova chave a array superglobal $_SESSION. Isto é verdadeiro não importando se uma sessão foi iniciada usando a função session_start().

Sessões
Instalação/Configuração
Sessões


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Sessões


Dependências

Nenhuma biblioteca externa é necessária para compilar esta extensão.

Nota:

Opcionalmente você pode usar alocação de memória compartilhada (mm), desenvolvida por Ralf S. Engelschall, para salvar a sessão. Você terá que baixar » mm e instalá-lo. esta opção não esta disponível para plataformas Windows. Note que o módulo de sessões para o mm não garante que acessos concorrentes a mesma sessão sejam travados propriamente. Pode ser mais apropriado usar um sistema de arquivos baseado em memória compartilhada (como tmpfs em Solaris/Linux, ou /dev/md em BSD) para salvar sessões em arquivos, por que eles são propriamente travados. Os dados das sessões são salvos na memória então se o servidor for reiniciado os dados são excluídos.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Suporte a sessões está habilitado no PHP por definição. Se você não gostaria de construir o seu PHP sem esse suporte, você especificaria a opção --disable-session para configurar. Para utilizar uma alocação de memória dividida (mm) para armazenamento de sessão configure o PHP com --with-mm[=DIR] .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota:

Por definição, todos os dados relaciondos uma uma sessão em particular serão guardados num arquivo no diretório especificado pela opção session.save_path INI . Um arquivo para cada sessão (apesar de quaisquer dados estarem associados com essa sessão) será criada. Isto é devido ao fato de que uma sessão é aberta (um aquivo é criado) mas até então nenhum dado é escrito nesse arquivo. Note que este comportamento é um efeito colateral da limitação do traalho com o arquivo de sistema e é possível que um manipulador de sessão customizado(tal como é usado em banco de dados) não manterá registro de sessões que não guardaram nenhum dado.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da sessão
Nome | Padrão | Modificável | Mudanças
session.save_path | "/tmp" | PHP_INI_ALL |
session.name | "PHPSESSID" | PHP_INI_ALL |
session.save_handler | "files" | PHP_INI_ALL |
session.auto_start | "0" | PHP_INI_ALL |
session.gc_probability | "1" | PHP_INI_ALL |
session.gc_divisor | "100" | PHP_INI_ALL |
session.gc_maxlifetime | "1440" | PHP_INI_ALL |
session.serialize_handler | "php" | PHP_INI_ALL |
session.cookie_lifetime | "0" | PHP_INI_ALL |
session.cookie_path | "/" | PHP_INI_ALL |
session.cookie_domain | "" | PHP_INI_ALL |
session.cookie_secure | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
session.cookie_httponly | "" | PHP_INI_ALL | Disponível desde o PHP 5.2.0.
session.use_cookies | "1" | PHP_INI_ALL |
session.use_only_cookies | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0
session.referer_check | "" | PHP_INI_ALL |
session.entropy_file | "" | PHP_INI_ALL |
session.entropy_length | "0" | PHP_INI_ALL |
session.cache_limiter | "nocache" | PHP_INI_ALL |
session.cache_expire | "180" | PHP_INI_ALL |
session.use_trans_sid | "0" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.2.3. PHP_INI_PERDIR no PHP < 5. Disponível desde o PHP 4.0.3.
session.bug_compat_42 | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0
session.bug_compat_warn | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0
session.hash_function | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0
session.hash_bits_per_character | "4" | PHP_INI_ALL | Disponível desde o PHP 5.0.0
url_rewriter.tags | "a=href,area=href,frame=src,form=,fieldset=" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

O sistema de gerenciamento de sessões suporta um número de opções de configuração que você pode colocar em seu arquivo php.ini. Nós daremos um breve resumo.

session.save_handler string
session.save_handler define o nome do manipulador que é usado para guardar e devolver dados associados com a sessão. Padrão inicial files. Veja também session_set_save_handler().
session.save_path string
session.save_path define o argumento que é passado para o manipulador de salvação. Se você escolher o manipulador de ausência de arquivo, este é o local onde os arquivos serão criados. Padrão /tmp. Veja também session_save_path().

Há um argumento N opcional para esta dietiva que determina o número de níveis de diretório que seus arquivos de sessão serão extendidos. Por exemplo, definindo para '5;/tmp' pode levar a criação de um arquivo de sessão e localização como /tmp/4/b/1/e/3/sess_4b1e384ad74619bd212e236e52a5a174If . Para fazer uso do N você deve criar todos estes diretórios antes de usar. Um pequeno script shell existe em ext/session para fazer isto, ele é chamado mod_files.sh. Também note se N é usada e maior do que and greater than 0 então a "automatic garbage collection" não será executada, veja uma cópia do php.ini para mais informação. Veja, se você usa N if you use N, be certifique-se de cercar session.save_path com "aspas" porque o separador (;) é também usado para comentátios no php.ini.

Aviso

Se você deixar isto definido num diretório de leitura público, tal como /tmp (o padrão), outros usuários no servidor poderão raptar sessõoes pegando a lista de arquivos nesse diretório.

Nota: Antes do PHP 4.3.6 os usuários de Windows tem que mudar esta variável para fazer funções de sessão no PHP. Certifique-se de especifica um caminho válido, ex.: c:/temp.

session.name string
session.name especifíca o nome da sessão que é usada como um nome de cookie. Ele somente conteria caracteres alfanuméricos. Padrão inicial PHPSESSID. Veja também session_name().
session.auto_start boolean
session.auto_start especifíca se o módulo da sessão começou uma sessão automaticamente num pedido no início. Definido iniciamente em 0 (desabilitado).
session.serialize_handler string
session.serialize_handler define o nome do manipulador que é usado para publicar/despublicar dados em série (serialize/deserialize). Atualmente, como um formato interno no PHP (nome php) e WDDX é suportado (nome wddx). WDDX está apenas disponível, se o PHP está compilado com suporte a WDDX . Definição inicial php.
session.gc_probability integer
session.gc_probability em conjunto com session.gc_divisor é usado para gerenciar a probabilidade que o gc (coletor de lixo) seja iniciado. O padrão é 1. Veja session.gc_divisor para detalhes.
session.gc_divisor integer
session.gc_divisor em conjunto com session.gc_probability define a probabilidade que o processo do gc (coletor de lixo) seja iniciado na inicialização de cada sessão. A propabilidade é cauculada usando gc_probability/gc_divisor, ex. 1/100 indica que existe 1% de chance que o processo GC comece em cada requisição.. O padrão para session.gc_divisor é 100.
session.gc_maxlifetime integer
session.gc_maxlifetime especifíca o número de segundos após os dados terem sido considerados como lixo ('garbage') e limpados. Isso ocorre durante o início da sessão Desde o PHP 4.2.3 é usado mtime (data de modificação) ao invés de atime. Assim você não terá problemas em sistemas de arquivos onde atime não esteja disponível.

Nota:

Se scripts diferentes tem valores diferentes para session.gc_maxlifetime mas compartilham o mesmo lugar para guardar os dados da sessão então o script com o menor valor estara limpando os dados. Neste caso, use esta diretiva em conjunto com session.save_path.

Nota: Se você está usando o file-based session handler como padrão, seu sistema de arquivos deve manter registrado quantidade de acessos (atime). Windows FAT dessa forma não faz, então você terá que sugerir outro modo para manipular a coleção de lixo de sua sessão se você está num sistema FAT ou quaisquer outros fs onde quantidade de acessos (atime tracking) não está disponível.

session.referer_check string
session.referer_check contém a substring que você quer checar para cada referenciador (Referer) de HTTP. Se o referenciador foi enviado pelo cliente e a sustring não foi encontrada, a id de sessão embutida será marcada como inválida. O padrão é uma string vazia.
session.entropy_file string
session.entropy_file diz o caminho para um recurso externo (arquivo) que será usado como uma fonte de desordem no processo de criação da id da sessão. Exemplos são /dev/random or /dev/urandom que são disponíveis em muitos sistemas UNIX.
session.entropy_length integer
session.entropy_length especifíca o número de bytes que serão lidos do arquivo especificado acima. Definido inicialmente como 0 (desabilitado).
session.use_cookies boolean
session.use_cookies especifica se módulo utilizará cookies para guardar a id da sessão no lado do cliente. O padrão é 1 (habilitado).
session.use_only_cookies boolean
session.use_only_cookies especifica que o módulo usará apenas cookies para guardar a id no lado do cliente. Habilitando esta configuração previne ataques envolvendo passagem de ids de sessão nas URLs. Esta configuração foi adicionada no PHP 4.3.0.
session.cookie_lifetime integer
session.cookie_lifetime especifica o tempo de vida do cookie em segundos que é enviado para o browser. O valor 0 significa "até o browser ser fechado." O padrão é 0. Veja também session_get_cookie_params() e session_set_cookie_params(). Já que o cookie é retornado pelo browser, ele não é prolongado para todo o tempo necessário. Ele deve ser enviado manualmente usando setcookie().
session.cookie_path string
session.cookie_path especifica o caminho para definir em session_cookie. O padrão é /. Veja também session_get_cookie_params() e session_set_cookie_params().
session.cookie_domain string
session.cookie_domain especifica o domínio para definir no cookie de sessão. O padrão é nenhum significando o nome do servidor que gerou o cookie de arcordo com a especificação dos cookies. Veja também session_get_cookie_params() e session_set_cookie_params().
session.cookie_secure boolean
session.cookie_secure especifíca se o cookie seria apenas enviado sob conexões seguras. O padrão é off. Esta definição foi adicionada no PHP 4.0.4. Veja também session_get_cookie_params() e session_set_cookie_params().
session.cookie_httponly boolean
marca o cookie para ser acessível apenas atráves do protocolo HTTP. Isto significa que o cookie não será acessível por linguagens de script, como o JavaScript. Esta definição pode efetivamente reduzir o roubo de identidade atráves de ataques XSS (mesmo não sendo suportado por todos os browsers).
session.cache_limiter string
session.cache_limiter especifíca o método de controle do cache para usar em páginas de sessão (none/nocache/private/private_no_expire/public). O padrão é nocache. Veja também session_cache_limiter().
session.cache_expire integer
session.cache_expire especifíca o time-to-live (termo de internet - um campo do ip header que indica o tamanho do pacote que seria permitido durar antes de ser descartado) para páginas de sessão em minutos, este não tem efeito para nocache limiter. O padrão é 180. Veja também session_cache_expire().
session.use_trans_sid boolean
session.use_trans_sid se suporte a sid transparente está habilitado ou não. O padrão é 0 (desabilitado).

Nota: Para PHP 4.1.2 ou inferior, ele só é habilitado se fizer a opção na compilação com --enable-trans-sid. A partir do PHP 4.2.0, está sempre compilado. Gerenciamentode sessões baseadas na URL tem riscos de segurança adicionais comparados ao gerenciamento baseado em cookies. Usuários podem enviar uma URL que contenha uma ID de sessão ativa para seus amigos por e-mail ou usuários pode salvar uma URL que contenha uma ID de sessão para seus bookmarks e acessar seu site com a mesma ID de sessão sempre, por exemplo.

session.bug_compat_42 boolean
Versões do PHP 4.2.3 and ou inferior não tem documentado atributo/bug que te mostre como inicializar uma variável de sessão no escopo global, embora register_globals está desabilitado. PHP 4.3.0 e mais novos avisarão você,se este atributo está sendo usado, e se session.bug_compat_warn está também habilitado. Este funcionamento/bug pode ser desativado se desativando esta diretiva.
session.bug_compat_warn boolean
Versões do PHP 4.2.0 e inferiores não tem documentados atributo/bug te indique como começar uma variável de sessão no escopo global, embora register_globals esteja desabilitado. PHP 4.3.0 e posteriores avisarão a você, se este atributo está sendo usado habilitado em ambos session.bug_compat_42 and session.bug_compat_warn.
session.hash_function integer
session.hash_function permite a você especificar o algoritimo de hash usado para gerar os IDs de sessão. '0' indica MD5 (128 bits) e '1' indica SHA-1 (160 bits).

Nota:

Isto foi introduzido no PHP 5.

session.hash_bits_per_character integer
session.hash_bits_per_character permite a você definir quantos bits são guardaddos em cada caractere ao converter os dados binários de hash para algo que possa ser legível. Os valores possíveis são '4' (0-9, a-f), '5' (0-9, a-v), e '6' (0-9, a-z, A-Z, "-", ",").

Nota:

Isto foi introduzido no PHP 5.

url_rewriter.tags string
url_rewriter.tags epecifíca quais tags HTML são reescritas para incluir a id de sessão se o suporte a sid transparente está habilitado. O padrão é a=href,area=href,frame=src,input=src,form=fakeentry,fieldset=

Nota: Se você quer conformidade XHTML, remova a entrada form e utilize as tags <fieldset> em volta dos campos de formulário.

As definições de configuraçãotrack_vars e register_globals influenciam como as variáveis de sessão são guardadas e restauradas.

Nota:

No PHP 4.0.3, track_vars está sempre ligada.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SID (string)
Constante contendo nome da sessão e id da sessão na forma de "name=ID" ou string vazia se o ID da sessão não foi definido em um apropriado cookie de sessão.
Tipos Resource
Exemplos
Sessões


Exemplos

Índice

  • Passando o ID de Sessão
  • Manipuladores de sessões personalizados
Constantes pré-definidas
Sessões


Exemplos
Passando o ID de Sessão
Exemplos
PHP Manual

Nota:

A partir do PHP 4.1.0, $_SESSION está disponível como uma variável global como $_POST, $_GET, $_REQUEST e assim por diante. Diferentemente de $HTTP_SESSION_VARS, $_SESSION é sempre global. Entretanto, você não precisa usar a palavra global para $_SESSION. por favor note que esta documentação foi modifcada para usar $_SESSION em todos os lugares. Você pode substituir $HTTP_SESSION_VARS por $_SESSION, se você prefirir. Também note que você precisa começar a sua sessão usando session_start() antes que $_SESSION esteja disponível.

As chaves para a array associativa $_SESSION estão sujeitas ao mesmas limitações que as os nomes de variáveis regulares do PHP, ex elas não podem começar com um numero e devem começar com uma letra ou sublinhado;. Para maiores detalhes veja a sessão sobre variaveis neste manual.

Se register_globals estiver desativado, apenas membros da matriz associativa global $_SESSION podem ser registrados como variáveis de sessão. As variavéis de sessão restauradas apenas estarão disponíveis na array $_SESSION.

O uso de $_SESSION (ou $HTTP_SESSION_VARS com PHP 4.0.6 ou anterior) é recomendado para melhor segurança e facilidade de leitura do código. Com $_SESSION, não há necessidade de usar as funções session_register(), session_unregister(), session_is_registered(). Variáveis de sessão são acessíveis como qualquer outra variável.

Exemplo #1 Registrando uma variável com $_SESSION.

<?php
session_start();
// Use $HTTP_SESSION_VARS with PHP 4.0.6 or less
if (!isset($_SESSION['count'])) {
  $_SESSION['count'] = 0;
} else {
  $_SESSION['count']++;
}
?>

Exemplo #2 Desregistrando uma variável com $_SESSION e register_globals desabilitado.

<?php
session_start();
// Use $HTTP_SESSION_VARS with PHP 4.0.6 or less
unset($_SESSION['count']);
?>

Cuidado

NÃO desregistre toda a $_SESSION com unset($_SESSION) já que isso irá desativar o registro de variáveis de sessão atráves da superglobal $_SESSION.

Aviso

Você não pode usar referências em variáveis de sessão já que não existe uma maneira de restaurar uma referência a outra variável.

Se register_globals estiver ativada, então cada variável global pode ser registrada como uma variável de sessão. Após o reinicio da sessão, estas variáveis serão restauradas a suas variáveis globais correspondentes. Já que o PHP deve saber quais variáveis globais devem ser registradas como variáveis de sessão, o usuário precisa registrar as variáveis com a função session_register(). Você pode evitar isso simplesmente definindo entradas em $_SESSION.

Cuidado

Antes do PHP 4.3, se você estiver usando $_SESSION e você desabilitou register_globals, não use session_register(), session_is_registered() ou session_unregister(). Desabilitar register_globals é recomendado por motivo de segurança e performance.

Se register_globals estiver ativada, então as variáveis globais e as entradas em $_SESSION irão automaticamente referenciar os mesmos valores que estejam registrados na instancia da sessão anterior. Entretanto, se a variável for registrada por $_SESSION então a variável global estará disponível a partir da proxima requisição.

Existe um defeito no PHP 4.2.3 e anterior. Se você registrar uma nova variável de sessão usando session_register(), a entrada no escopo global e a entrada em $_SESSION não irão se referir ao mesmo valor até o próximo session_start(). Ex: uma modificação na variável global recém registrada não será refletida pela entrada em $_SESSION. Isto foi corrigido no PHP 4.3.0.

Exemplos
Passando o ID de Sessão
Exemplos


Passando o ID de Sessão

Existem dois métodos para a propagação do id de sessão:

  • Cookies
  • URL parameter

O módulo de sessão suporta ambos os métodos. Cookies são melhores, mas como eles nem sempre estão disponíveis, nós também provemos um caminho alternativo. O segundo metodo embute o id de sessão diretamente nas URLs.

O PHP é capaz de transformar os links transparentemente. A menos que você esteja usando o PHP 4.2 ou posterior, você precisa ativar isso manualmente ao compilar o PHP. No Unix, passe --enable-trans-sid para o configure. Se esta opção de compilação e a opção em tempo execução session.use_trans_sid estiverem ativadas, URIs relativas serão modificadas para conter o id de sessão automaticamente.

Nota:

A diretiva arg_separator.output php.ini permite a você personalizar o separador de argumentos. Para estar em completa conformidade com XHTML, especifique &amp; aqui.

Alternativamente, você pode usar a constante SID a qual é definida se uma sessão é iniciada. Se o cliente não enviou um cookie de sessão apropriado, ela tem a forma session_name=session_id. Se não, ela expande para uma string vazia. Assim, você pode colocá-la incondicionalmente em URLs.

O exemplo a seguir mostra como registrar uma variável, e como criar um link corretamente para outra pagina usando SID.

Exemplo #1 Contando o número de visitas de um único usuário

<?php

session_start();

if (empty($_SESSION['count'])) {
 $_SESSION['count'] = 1;
} else {
 $_SESSION['count']++;
}
?>

<p>
Hello visitor, you have seen this page <?php echo $_SESSION['count']; ?> times.
</p>

<p>
To continue, <a href="nextpage.php?<?php echo htmlspecialchars(SID); ?>">click
here</a>.
</p>

A função htmlspecialchars() é usada ao mostrar o SID para previnir ataques relacionados a XSS.

Mostrar o SID, como mostrado acima, não é necessário se --enable-trans-sid foi usado para compilar o PHP.

Nota:

É assumido para URLs não relativas que apontem para sites externos e assim não é adicionado o SID, já que seria um risco de segurança vazar o SID para um servidor diferente.

Manipuladores de sessões personalizados
Exemplos


Manipuladores de sessões personalizados

Para implementar as sessões em banco de dados, ou qualquer outro método de armazenamento, você precisara usar session_set_save_handler() para criar um conjunto de funções de armazenamento.

Passando o ID de Sessão
Sessões e segurança
Exemplos


Sessões e segurança

External links: » Session fixation

O módulo das sessões não pode garantir que a informação que você guarda em uma sessão será visto somente pelo usuário que criou a sessão. Você precisa tomar medidas adicionais de segurança para proteger ativamente a integridade da sessão, dependendo do valor dos dados.

Meça a importância dos dados carregados pelas suas sessões e tome medidas adicionais de proteção -- isto normalmente vem com um preço, menos conveniência para o usuário. Por exemplo, se você quiser proteger os usuários de táticas simples de engenharia social, você deve ativar session.use_only_cookies. Neste caso, os cookies devem estar ativados incondicionalmente do lado do usuário ou as sessões não irão funcionar.

Existem várias maneiras de vazar um id de uma sessão para terceiros. Um id de sessão vazado permite a terceiros acessar a todos os recursos que estão associados ao id específico. Primeiro, URLs carregando ids de sessão. Se você criar um link com um site externo, a URL inclusa no id de sessão deve ser guardada nos logs de referência do site externo. Segundo, um ataque mais ativo pode escutar ao seu tráfego de rede. Se ele não for criptografado, os ids de sessão irão passar como texto simples pela sua rede. A solução aqui é implementar SSL em seu servidor e tornar obrigatório para os seus usuários.

Manipuladores de sessões personalizados
Funções para Sessão
Sessões


Funções para Sessão

Índice

  • session_cache_expire — Retorna o prazo do cache atual
  • session_cache_limiter — Obtém e/ou define o limitador do cache atual
  • session_commit — Sinônimo de session_write_close
  • session_decode — Decifra dado de sessão de uma string
  • session_destroy — Destrói todos os dados registrados em uma sessão
  • session_encode — Codifica os dados da sessão atual como uma string
  • session_get_cookie_params — Obtém os parâmetros do cookie da sessão
  • session_id — Obtém e/ou define o id de sessão atual
  • session_is_registered — Descobre se uma variável global está registrada numa sessão
  • session_module_name — Obtém e/ou define o módulo da sessão atual
  • session_name — Obtém e/ou define o nome da sessão atual
  • session_regenerate_id — Atualiza o id da sessão atual com um novo gerado
  • session_register — Registrar uma ou mais variáveis globais na sessão atual
  • session_save_path — Obtém e/ou define o save path da sessão atual
  • session_set_cookie_params — Define os parâmetros do cookie de sessão
  • session_set_save_handler — Define a sequência de funções de armazenamento
  • session_start — Inicia dados de sessão
  • session_unregister — Desregistra uma variável global da sessão atual
  • session_unset — Libera todas as variáveis de sessão
  • session_write_close — Escreve dados de sessão e termina a sessão
Sessões e segurança
session_cache_expire
Sessões


Retorna o prazo do cache atual

Funções para Sessão
session_cache_limiter
Funções para Sessão
PHP Manual

session_cache_expire

(PHP 4 >= 4.2.0, PHP 5)

session_cache_expire — Retorna o prazo do cache atual

Descrição

int session_cache_expire ([ int $new_cache_expire ] )

session_cache_expire() retorna a atual configuração de session.cache_expire.

O prazo para o cache expirar e retornado ao padrão de 180 minutos guardado em session.cache_limiter no inicio do script. Então você precisa usar session_cache_expire() para cada requesição (e antes que session_start() seja utilizada).

Parâmetros

new_cache_expire

Se new_cache_expire é dado, o cache atual é modificado por new_cache_expire.

Nota: Defina o valor de new_cache_expire, somente se session.cache_limiter é definido como um valor diferente de nocache.

Valor Retornado

Retorna a configuração atual de session.cache_expire. O valor retornado deve ser lido em minutos, padrão para 180.

Exemplos

Exemplo #1 Exemplo da session_cache_expire()

<?php

/* Define o limitador de cache para 'private' */
session_cache_limiter('private');
$cache_limiter = session_cache_limiter();

/* Define o limite de tempo do cache em 30 minutos */
session_cache_expire(30);
$cache_expire = session_cache_expire();

/* Inicia a sessão */
session_start();
echo "O limitador de cache esta definido agora como $cache_limiter<br />";
echo "As sessões em cache irão expirar em $cache_expire minutos";
?>

Veja Também

  • session.cache_expire
  • session.cache_limiter
  • session_cache_limiter() - Obtém e/ou define o limitador do cache atual

Funções para Sessão
session_cache_limiter
Funções para Sessão


Obtém e/ou define o limitador do cache atual

session_cache_expire
session_commit
Funções para Sessão
PHP Manual

session_cache_limiter

(PHP 4 >= 4.0.3, PHP 5)

session_cache_limiter — Obtém e/ou define o limitador do cache atual

Descrição

string session_cache_limiter ([ string $cache_limiter ] )

session_cache_limiter() retorna o nome do atual limitador do cache.

O limitador do cache controla HTTP headers enviados para o cliente. Estes headers determinam pelas quais o conteúdo da página pode ser guardado no cache. Definindo o limitador do cache para nocache, por exemplo, rejeitaria qualquer armazenamento no cache do cliente. Um valor como public, entretanto, permitiria o armazenamento no cache. Ele também poderia ser definido como private, que é um pouco mais restritivo do que public.

No modo private , Header expirado enviado para o cliente, pode provocar confusão para alguns para alguns navegadores incluindo o Mozilla. Você pode evitar este problema com o modo private_no_expire. Header expirado nunca é enviado para o cliente nesse modo.

O limitador do cache é zerado para o valor padrão guardado em session.cache_limiter no pedido do startup time. Assim, você precisa chamar session_cache_limiter() para cada pedido (e antes session_start() é chamada).

Parâmetros

cache_limiter

Se cache_limiter é especificado, o nome do atual limitador de cache é modificado para o novo valor.

Valor Retornado

Retorna o nome do atual limitador de cache.

Histórico

Versão | Descrição
4.2.0 | O limitador do cache private_no_expire foi adicionado.

Exemplos

Exemplo #1 Exemplo da session_cache_limiter()

<?php
/* Defini o limitador do cache para 'private' */
session_cache_limiter('private');
$cache_limiter = session_cache_limiter();
echo "o limitador do cache está definido agora para $cache_limiter<br />";
?>

Veja Também

  • session.cache_limiter

session_cache_expire
session_commit
Funções para Sessão


Sinônimo de session_write_close

session_cache_limiter
session_decode
Funções para Sessão
PHP Manual

session_commit

(PHP 4 >= 4.4.0, PHP 5)

session_commit — Sinônimo de session_write_close()

Descrição

Esta função é um apelido para: session_write_close().

session_cache_limiter
session_decode
Funções para Sessão


Decifra dado de sessão de uma string

session_commit
session_destroy
Funções para Sessão
PHP Manual

session_decode

(PHP 4, PHP 5)

session_decode — Decifra dado de sessão de uma string

Descrição

bool session_decode ( string $data )

session_decode() decifra dado de sessão em data, definindo variáveis guardadas na sessão.

Parâmetros

data

A informação codificada para ser armazenada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • session_encode() - Codifica os dados da sessão atual como uma string

session_commit
session_destroy
Funções para Sessão


Destrói todos os dados registrados em uma sessão

session_decode
session_encode
Funções para Sessão
PHP Manual

session_destroy

(PHP 4, PHP 5)

session_destroy — Destrói todos os dados registrados em uma sessão

Descrição

bool session_destroy ( void )

session_destroy() destrói todos os dados associados com a sessão atual. Ela não desregistra nenhuma das variáveis globais associadas a sessão atual, nem desregistra o cookie de sessão.

Para poder matar a sessão junto, como para fazer o log out do usuário, o id da sessão também deve ser desregistrado. Se for usado um cookie para propagar o id de sessão (funcionamento padrão), então o cookie de sessão deve ser excluído. setcookie() pode ser usado para isso.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Destruindo uma sessão com $_SESSION

<?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();

// Unset all of the session variables.
$_SESSION = array();

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}

// Finally, destroy the session.
session_destroy();
?>

Notas

Nota:

Apenas use session_unset() para código antigo obsoleto que não use $_SESSION.

Veja Também

  • unset() - Destrói a variável especificada
  • setcookie() - Envia um cookie

session_decode
session_encode
Funções para Sessão


Codifica os dados da sessão atual como uma string

session_destroy
session_get_cookie_params
Funções para Sessão
PHP Manual

session_encode

(PHP 4, PHP 5)

session_encode — Codifica os dados da sessão atual como uma string

Descrição

string session_encode ( void )

session_encode() retorna uma string com o conteúdo da sessão corrente codificado em seu interior.

Valor Retornado

Retorna codificado o conteúdo da sessão atual.

Veja Também

  • session_decode() - Decifra dado de sessão de uma string

session_destroy
session_get_cookie_params
Funções para Sessão


Obtém os parâmetros do cookie da sessão

session_encode
session_id
Funções para Sessão
PHP Manual

session_get_cookie_params

(PHP 4, PHP 5)

session_get_cookie_params — Obtém os parâmetros do cookie da sessão

Descrição

array session_get_cookie_params ( void )

Obtém parâmetros do cookie da sessão.

Valor Retornado

Retorna um array com informação do cookie da sessão atual, o array contém os seguintes items:

  • "lifetime" - A duração do cookie em segundos.
  • "path" - O caminho onde a informação está guardada.
  • "domain" - O domínio do cookie.
  • "secure" - O cookie seria enviado apenas sobre conexões seguras.
  • "httponly" - O cookie somente pode ser acessado atráves do protocolo HTTP.

Histórico

Versão | Descrição
5.2.0 | A entrada "httponly" foi adicionada no array retornado.
4.0.4 | A entrada "secure" foi adicionada no array retornado.

Veja Também

  • session.cookie_lifetime
  • session.cookie_path
  • session.cookie_domain
  • session.cookie_secure
  • session.cookie_httponly
  • session.cookie_lifetime
  • session_set_cookie_params() - Define os parâmetros do cookie de sessão

session_encode
session_id
Funções para Sessão


Obtém e/ou define o id de sessão atual

session_get_cookie_params
session_is_registered
Funções para Sessão
PHP Manual

session_id

(PHP 4, PHP 5)

session_id — Obtém e/ou define o id de sessão atual

Descrição

string session_id ([ string $id ] )

session_id() é usado para obter ou definir o id de sessão para a sessão atual.

A constante SID também pode ser usada para obter o nome atual e o id da sessão como uma string adequado para adicionar em URLs. Veja também Manipulação de Sessão.

Parâmetros

id

Se id for especificado, ele irá substituir o id de sessão atual. session_id() precisa ser chamado antes de session_start() para este fim. Dependendo do manipulador de sessão, nem todos os caracteres são permitidos em um id de sessão. Por exemplo, o manipulador de sessão em arquivo permite apenas caracteres no intervalo a-z, A-Z and 0-9!

Nota: Quando estiver usando cookies de sessão, especificar um id para session_id() irá sempre enviar um novo cookie quando session_start() for chamada, sem importar se o id da sessão atual for identico ao que esta sendo definido.

Valor Retornado

session_id() retorna o id de sessão para a sessão atual ou uma string vazia ("") se não houver sessão atual (não existe um id de sessão atual).

Veja Também

  • session_regenerate_id() - Atualiza o id da sessão atual com um novo gerado
  • session_start() - Inicia dados de sessão
  • session_set_save_handler() - Define a sequência de funções de armazenamento
  • session.save_handler

session_get_cookie_params
session_is_registered
Funções para Sessão


Descobre se uma variável global está registrada numa sessão

session_id
session_module_name
Funções para Sessão
PHP Manual

session_is_registered

(PHP 4, PHP 5)

session_is_registered — Descobre se uma variável global está registrada numa sessão

Descrição

bool session_is_registered ( string $name )

Verifica se há uma variável global é registrada na sessão.

Parâmetros

name

O nome da variável.

Valor Retornado

session_is_registered() retorna TRUE se há uma variável global com o nome name registrado na sessão atual, FALSE caso contrário.

Notas

Nota:

Se $_SESSION (ou $HTTP_SESSION_VARS para PHP 4.0.6 ou inferior) é usada, use isset() para checar se uma variável está registrada em $_SESSION.

Cuidado

Se você está usando $_SESSION (ou $HTTP_SESSION_VARS), não utilize session_register(), session_is_registered() e session_unregister().

session_id
session_module_name
Funções para Sessão


Obtém e/ou define o módulo da sessão atual

session_is_registered
session_name
Funções para Sessão
PHP Manual

session_module_name

(PHP 4, PHP 5)

session_module_name — Obtém e/ou define o módulo da sessão atual

Descrição

string session_module_name ([ string $module ] )

session_module_name() obtém o nome do módulo da sessão atual.

Parâmetros

module

Se module é especificado, este módulo será usado.

Valor Retornado

Retorna o do módulo da sessão atual.

session_is_registered
session_name
Funções para Sessão


Obtém e/ou define o nome da sessão atual

session_module_name
session_regenerate_id
Funções para Sessão
PHP Manual

session_name

(PHP 4, PHP 5)

session_name — Obtém e/ou define o nome da sessão atual

Descrição

string session_name ([ string $name ] )

session_name() retorna o nome da sessão atual. Se name está especificado, o nome da sessão atual é mudado para esse valor.

O nome da sessão refere-se à id de sessão em cookies e URLs. Ela poderia conter apenas caracteres alfanuméricos; ela poderia ser curta e descritiva (i.e. para usuários com avisos em cookie habilitados). O nome da sessão é retomado para o valor padrão guardado em session.name no pedido na hora de inicialização. Dessa forma, você precisa chamar session_name() para cada requerimento (e antes de session_start() ou session_register() serem chamadas).

Aviso

O nome da sessão não pode consistir apenas de digitos, ao menos uma letra deve estar presente. Se não, um novo id de sessão é gerado a cada vez.

Exemplo #1 Exemplos session_name()

<?php

// defina o nome da sessão para WebsiteID

$previous_name = session_name("WebsiteID");

echo "O nome da sessão anterior era $previous_name<br />";
?>

Veja também a diretiva de configurção session.name.

session_module_name
session_regenerate_id
Funções para Sessão


Atualiza o id da sessão atual com um novo gerado

session_name
session_register
Funções para Sessão
PHP Manual

session_regenerate_id

(PHP 4 >= 4.3.2, PHP 5)

session_regenerate_id — Atualiza o id da sessão atual com um novo gerado

Descrição

bool session_regenerate_id ([ bool $delete_old_session ] )

session_regenerate_id() irá substituiro id da seção atual com um novo, e mantém a informação da sessão atual.

Parâmetros

delete_old_session

Quando excluir o arquivo associado a sessão anterior ou não. O padrão é FALSE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.3.3 | Desde então, se os cookies de sessão estão ativos, o uso de session_regenerate_id() irá também enviar um novo cookie de sessão com o novo id de sessão.
5.1.0 | Adicionado o parâmetro delete_old_session.

Exemplos

Exemplo #1 Exemplo session_regenerate_id()

<?php
session_start();

$old_sessionid = session_id();

session_regenerate_id();

$new_sessionid = session_id();

echo "Old Session: $old_sessionid<br />";
echo "New Session: $new_sessionid<br />";

print_r($_SESSION);
?>

Veja Também

  • session_id() - Obtém e/ou define o id de sessão atual
  • session_start() - Inicia dados de sessão
  • session_name() - Obtém e/ou define o nome da sessão atual

session_name
session_register
Funções para Sessão


Registrar uma ou mais variáveis globais na sessão atual

session_regenerate_id
session_save_path
Funções para Sessão
PHP Manual

session_register

(PHP 4, PHP 5)

session_register — Registrar uma ou mais variáveis globais na sessão atual

Descrição

bool session_register ( mixed $name [, mixed $... ] )

session_register() aceita um número de argumentos variáveis, algund deles podem ser ou uma string com o nome da variável ou uma matriz de nomes de variáveis ou outras matrizes. Para cada nome, session_register() registra a variável global com o nome na sessão atual.

Cuidado

Se você quer que seu script funcione independentemente do uso de register_globals, você precisa usar a matriz $_SESSION já que $_SESSION é automaticamente registrada. Se o seu script usa session_register(), ele não irá funcionar em ambientes onde a diretiva de configuração register_globals esteja desabilitada.

Nota: Nota importante sobre register_globals:

Desde o PHP 4.2.0, o valor padrão para a diretiva register_globals é off e foi completamente removida a partir do PHP 6.0.0. A comunidade do PHP desencoraja desenvolvedores a confiar nesta diretiva, e encoraja o uso de outros meios, como em superglobals.

Cuidado

Isto registra uma variável global. Se você quiser registrar uma variável dntro de uma função, você deve certificar-se de faze-la global, usando global ou usando a matriz $GLOBALS[], ou usando a matriz especial para seções($_SESSION) como mostrado abaixo.

Cuidado

Se você esta usando $_SESSION
(ou $HTTP_SESSION_VARS), não use
session_register(),
session_is_registered() e
session_unregister().

Esta função retorna TRUE quando todas de suas variáveis são registradas sem erro.

Se session_start() não foi chamada antes desta função ser chamada, uma chamada implícita para session_start() sem parâmetros será feita. $_SESSION não imita isto e necessita que session_start() seja chamada antes de usar.

Você também pode criar variáveis de sessão simplesmente definindo o membro apropriado de $_SESSION ou $HTTP_SESSION_VARS (PHP < 4.1.0) matriz.

<?php
// O uso de session_register() esta obsoleto
$barney = "Um grande dinossauro púrpura.";
session_register("barney");
// O uso de $_SESSION é recomendado, apartir do PHP 4.1.0
$_SESSION["zim"] = "Um invasor de outro planeta.";

// A maneira antiga é usar $HTTP_SESSION_VARS
$HTTP_SESSION_VARS["spongebob"] = "Ele conseguiu calças ajustadas.";
?>

Nota:

Não é possível registrar atualmente variáveis resource numa sessão. Por exemplo, você não pode criar uma conexão para um banco de dados e guardar a id de conexão como uma variável de sessão e esperar que a conexão ainda esteja válida na próxima vez que a sessão estiver restaurada. Funções do PHP que retornam uma resource são identificadas por conterem um retorno do tipo resource em suas definições de função. Uma lista de funções que retornam resources estão disponíveis no apêndice tipos resources.

Se $_SESSION (ou $HTTP_SESSION_VARS para PHP 4.0.6 ou inferior) é usada, para variável definida variable com $_SESSION. i.e. $_SESSION['var'] = 'ABC';

Veja também session_is_registered(), session_unregister() e $_SESSION.

session_regenerate_id
session_save_path
Funções para Sessão


Obtém e/ou define o save path da sessão atual

session_register
session_set_cookie_params
Funções para Sessão
PHP Manual

session_save_path

(PHP 4, PHP 5)

session_save_path — Obtém e/ou define o save path da sessão atual

Descrição

string session_save_path ([ string $path ] )

session_save_path() retorna o path do diretório atual usado para salvar os dados de sessão. Se path está especificado, o path para aqueles dados que estão salvo será mudado. session_save_path() precisa ser usada antes de session_start() para este uso.

Nota:

Em alguns sistemas operacionais, você pode querer especificar um path em um arquivo de sistema que cuida de muitos arquivos pequenos com eficiência. Por exemplo, em Linux, reiserfs pode oferecer uma performance melhor do que ext2fs.

Veja também a diretiva de configuração session.save_path.

session_register
session_set_cookie_params
Funções para Sessão


Define os parâmetros do cookie de sessão

session_save_path
session_set_save_handler
Funções para Sessão
PHP Manual

session_set_cookie_params

(PHP 4, PHP 5)

session_set_cookie_params — Define os parâmetros do cookie de sessão

Descrição

void session_set_cookie_params ( int $lifetime [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]] )

Define parâmetros dos cookies como no arquivo php.ini file. O efeito desta função é apenas pela duração do script. Então, então você precisa chamar session_set_cookie_params() para cada requisição e antes que session_start() seja chamada.

Nota:

O parâmetro secure foi adicionado no PHP 4.0.4, enquanto o parâmetro httponly foi adicionado no PHP 5.2.0.

Veja também as diretivas de configuração session.cookie_lifetime, session.cookie_path, session.cookie_domain, session.cookie_secure, session.cookie_httponly e session_get_cookie_params().

session_save_path
session_set_save_handler
Funções para Sessão


Define a sequência de funções de armazenamento

session_set_cookie_params
session_start
Funções para Sessão
PHP Manual

session_set_save_handler

(PHP 4, PHP 5)

session_set_save_handler — Define a sequência de funções de armazenamento

Descrição

bool session_set_save_handler ( callback $open , callback $close , callback $read , callback $write , callback $destroy , callback $gc )

session_set_save_handler() define a sequência de funções de armazenamento que é usada para guardar e devolver dados associados à sessão. Esta é mais usual quando um quando um método de armazenamento, a não ser que aquele oferecido por sessões do PHP seja preferível. i.e. Guardar dados de sessão em um banco de dados local. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Nota:

A função "write" handler não é executada até depois que o fluxo de saída esteja fechado. Assim, a saída de instruções debugging na função "write" handler poderá nunca ser vista pelo navegador. Se a saída debugging é necessária, ao invés disso é sugerido que a saída debug seja escrita para um arquivo.

O seguinte exemplo oferece um aramzenamento de sessão baseado em arquivos similar a sessões de PHP padrões save handler files. Este exemplo poderia facilmente ser extendido para outras bases de dados usando seu gerente de banco de dados favorito suportado pelo PHP.

A função "Read" deve retornar um valor string sempre que fizer o save handler trabalhar como o esperado. Retorna uma string vazia se não existe dados para ler. Retorna valores de outros handlers que estejam convertidos para expressões booleanas. TRUE em sucesso, FALSE em falha.

Aviso

Os manipuladores Write e Close são chamados após os objetos serem destruídos desde o PHP 5.0.5. Então destruidores podem usar sessões mas o manipulador de sessão não pode usar objetos. Em versões anteriores, eles eram chamados na ordem oposta. è possível usar session_write_close() a partir do destruidor para resolver este problema da galinha e do ovo.

Exemplo #1 session_set_save_handler() exemplo

<?php
function open($save_path, $session_name)
{
  global $sess_save_path, $sess_session_name;

  $sess_save_path = $save_path;
  $sess_session_name = $session_name;
  return(true);
}

function close()
{
  return(true);
}

function read($id)
{
  global $sess_save_path, $sess_session_name;

  $sess_file = "$sess_save_path/sess_$id";
  if ($fp = @fopen($sess_file, "r")) {
    $sess_data = fread($fp, filesize($sess_file));
    return($sess_data);
  } else {
    return(""); // Must return "" here.
  }

}

function write($id, $sess_data)
{
  global $sess_save_path, $sess_session_name;

  $sess_file = "$sess_save_path/sess_$id";
  if ($fp = @fopen($sess_file, "w")) {
    return(fwrite($fp, $sess_data));
  } else {
    return(false);
  }

}

function destroy($id)
{
  global $sess_save_path, $sess_session_name;

  $sess_file = "$sess_save_path/sess_$id";
  return(@unlink($sess_file));
}

/*********************************************
 * WARNING - You will need to implement some *
 * sort of garbage collection routine here.  *
 *********************************************/
function gc($maxlifetime)
{
  return true;
}

session_set_save_handler("open", "close", "read", "write", "destroy", "gc");

session_start();

// proceed to use sessions normally

?>

Veja também a diretiva de configuração session.save_handler.

session_set_cookie_params
session_start
Funções para Sessão


Inicia dados de sessão

session_set_save_handler
session_unregister
Funções para Sessão
PHP Manual

session_start

(PHP 4, PHP 5)

session_start — Inicia dados de sessão

Descrição

bool session_start ( void )

session_start() cria uma sessão (ou resume a sessão atual baseada numa id de sessão sendo passada via uma variável GET ou um cookie).

Esta função sempre retorna TRUE.

Nota:

Se você está usando sessões baseadas em cookie, você deve chamar session_start() antes de qualquer coisa ser exibida para o navegador.

Exemplo #1 Um exemplo de seção: page1.php

<?php
// page1.php

session_start();

echo 'Bem vindo a pagina #1';

$_SESSION['favcolor'] = 'green';
$_SESSION['animal']   = 'cat';
$_SESSION['time']     = time();

// Funciona se o cookie de seção foi aceito
echo '<br /><a href="page2.php">page 2</a>';

// Ou talves passando o ID da seção se necessário
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>

Após ver page1.php, a segunda pagina page2.php irá magicamente conter os dados da seção. Leia Uso de seções para informações sobre propagando ids de seções já que, por exemplo, explica tudo sobre a constante SID.

Exemplo #2 Um exemplo de seção: page2.php

<?php
// page2.php

session_start();

echo 'Bem vindo a pagina #2<br />';

echo $_SESSION['favcolor']; // green
echo $_SESSION['animal'];   // cat
echo date('Y m d H:i:s', $_SESSION['time']);

// Você pode querer usar o SID aqui, como fissemos em page1.php
echo '<br /><a href="page1.php">page 1</a>';
?>

Se você quiser usar uma seção com nomes, você deve usar session_name() antes de session_start().

session_start() irá registrar um handler de saída interno para URL reescrevendo quando trans-sid está habilitada. Se um usuário utiliza ob_gzhandler ou ob_start(), a ordem do handler de exibição é importante para a exibição apropriada. Por exemplo, usuário deve registrar ob_gzhandler antes da sessão começar.

Nota: Uso de zlib.output_compression é mais recomendado do que ob_gzhandler

Nota:

Apartir do PHP 4.3.3, usar session_start() quando a seção já tiver sido iniciada irá resultar em um erro de nível. E_NOTICE. Também, o segundo início de seção será simplesmente ignorado.

Veja também $_SESSION, session.auto_start, e session_id().

session_set_save_handler
session_unregister
Funções para Sessão


Desregistra uma variável global da sessão atual

session_start
session_unset
Funções para Sessão
PHP Manual

session_unregister

(PHP 4, PHP 5)

session_unregister — Desregistra uma variável global da sessão atual

Descrição

bool session_unregister ( string $name )

session_unregister() desregistra a variável global chamada name da sessão atual.

Parâmetros

name

O nome da variável.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

Se $_SESSION (ou $HTTP_SESSION_VARS para PHP 4.0.6 ou inferior) é usada, use unset() para desregistrar uma variável de sessão. Não use unset() na própria $_SESSION já que irá desabilitar a função especial de superglobal da $_SESSION.

Cuidado

Esta função não elimina a variável global correspondente por name, ela apenas evita que a variável faça parte da sessão. Você deve chamar unset() para eliminar a variável global correspondente.

Cuidado

Se você está usando $_SESSION (ou
$HTTP_SESSION_VARS), não use
session_register(),
session_is_registered() e
session_unregister().

session_start
session_unset
Funções para Sessão


Libera todas as variáveis de sessão

session_unregister
session_write_close
Funções para Sessão
PHP Manual

session_unset

(PHP 4, PHP 5)

session_unset — Libera todas as variáveis de sessão

Descrição

void session_unset ( void )

A função session_unset() libera todas as variáveis da sessão atualmente registradas.

Valor Retornado

Não há valor retornado.

Notas

Nota:

Se $_SESSION (ou $HTTP_SESSION_VARS para PHP 4.0.6 ou inferior) é usada, utilize unset() para desregistrar a variável da sessão. i.e. unset($_SESSION['varname']);.

Cuidado

NÃO elimina completamente $_SESSION com unset($_SESSION) enquanto esta desabilitará o registro de variáveis de sessão pela $_SESSION superglobal.

session_unregister
session_write_close
Funções para Sessão


Escreve dados de sessão e termina a sessão

session_unset
Session PgSQL
Funções para Sessão
PHP Manual

session_write_close

(PHP 4 >= 4.0.4, PHP 5)

session_write_close — Escreve dados de sessão e termina a sessão

Descrição

void session_write_close ( void )

Termina a sessão atual e guarda os dados.

Os dados de sessão sã geralmente guardados depois que o script termina sem a necessidade de chamar session_write_close(), mas como dados de sessão são trancados para evitar escritas concorrentes, apenas um script pode operar em uma sessão de cada vez. Quando usando framesets junto com sessões você irá experimentar os frames sendo lidos um a um devido a esta trava. Você pode reduzir o tempo necessário para ler todos os frames terminando a sessão tão logo todas as mudanças das variáveis de sessão estejam feitas.

Valor Retornado

Não há valor retornado.

session_unset
Session PgSQL
Funções para Sessão


PostgreSQL Session Save Handler

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Table definitions
  • Constantes pré-definidas
  • Session PgSQL Funções
    • session_pgsql_add_error — Increments error counts and sets last error message
    • session_pgsql_get_error — Returns number of errors and last error message
    • session_pgsql_get_field — Get custom field value
    • session_pgsql_reset — Reset connection to session database servers
    • session_pgsql_set_field — Set custom field value
    • session_pgsql_status — Get current save handler status
session_write_close
Introdução
Extensões de Sessão


Introdução

Nota: Esta extensão não está disponível na plataforma Windows.

This module provides an additional session save handler for the session module using » PostgreSQL as a storage system. A user-level session storage function may also be used - session_set_save_handler(), but this module is written in C and therefore could be twice as fast, compared to a session save handler written in PHP.

Session PgSQL is designed to scale any size of web sites and offers some advanced features:

  • session tables are created automatically
  • automatic session table vacuum
  • better garbage collection
  • multiple PostgreSQL servers support
  • automatic database server failover (switching)
  • automatic database server load balancing if there are multiple PostgreSQL servers.
  • short circuit UPDATE

Session PgSQL
Instalação/Configuração
Session PgSQL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Session PgSQL


Dependências

You need at least PHP >= 4.3.0, and PostgreSQL >=7.2.0 as database server. libpq that comes with PostgreSQL 7.2.0 or later (and header files to build) and » libmm (and header files).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

This extension is considered unmaintained and dead. However, the source code for this extension is still available within PECL SVN here: » http://svn.php.net/viewvc/pecl/session_pgsql.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

PostgreSQL session save handler is still under development. Refer to the README file in the source distribution for configuration details.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
Table definitions
Instalação/Configuração


Table definitions

Session table definition

CREATE TABLE php_session (
 sess_id            text,
 sess_name          text,
 sess_data          text,
 sess_created       integer,
 sess_modified      integer,
 sess_expire        integer,
 sess_addr_created  text,
 sess_addr_modified text,
 sess_counter       integer,
 sess_error         integer,
 sess_warning       integer,
 sess_notice        integer,
 sess_err_message   text,
 sess_custom        text
);

CREATE INDEX php_session_idx ON php_session USING BTREE (sess_id);

Aviso

If you use HASH for INDEX, you'll have a deadlock problem when the server load is very high. Even if it's unlikely to have a deadlock under normal operation, it can occur. Do not use HASH for INDEX.

You may change the session table as long as all fields are defined.

Application variables table definition

CREATE TABLE php_app_vars (
 app_modified       integer,
 app_name           text,
 app_vars           text
);

Tipos Resource
Constantes pré-definidas
Session PgSQL


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Table definitions
Session PgSQL Funções
Session PgSQL


Session PgSQL Funções

Contact Information

I have at the moment not very much time to further develop this extension. I will implement more and more features in the near future.

If you have comments, bug fixes, enhancements or want to help developing this, you can drop me a mail at » yohgaki@php.net. Any help is very welcome.

Índice

  • session_pgsql_add_error — Increments error counts and sets last error message
  • session_pgsql_get_error — Returns number of errors and last error message
  • session_pgsql_get_field — Get custom field value
  • session_pgsql_reset — Reset connection to session database servers
  • session_pgsql_set_field — Set custom field value
  • session_pgsql_status — Get current save handler status
Constantes pré-definidas
session_pgsql_add_error
Session PgSQL


Increments error counts and sets last error message

Session PgSQL Funções
session_pgsql_get_error
Session PgSQL Funções
PHP Manual

session_pgsql_add_error

(PECL session_pgsql SVN)

session_pgsql_add_error — Increments error counts and sets last error message

Descrição

bool session_pgsql_add_error ( int $error_level [, string $error_message ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

error_level

error_message

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • session_pgsql_get_error() - Returns number of errors and last error message

Session PgSQL Funções
session_pgsql_get_error
Session PgSQL Funções


Returns number of errors and last error message

session_pgsql_add_error
session_pgsql_get_field
Session PgSQL Funções
PHP Manual

session_pgsql_get_error

(PECL session_pgsql SVN)

session_pgsql_get_error — Returns number of errors and last error message

Descrição

array session_pgsql_get_error ([ bool $with_error_message = false ] )

Get the number of errors and optional the error messages.

Parâmetros

with_error_message

Set to TRUE the literal error message for each error is also returned.

Valor Retornado

The number of errors are returned as array.

Veja Também

  • session_pgsql_add_error() - Increments error counts and sets last error message

session_pgsql_add_error
session_pgsql_get_field
Session PgSQL Funções


Get custom field value

session_pgsql_get_error
session_pgsql_reset
Session PgSQL Funções
PHP Manual

session_pgsql_get_field

(PECL session_pgsql SVN)

session_pgsql_get_field — Get custom field value

Descrição

string session_pgsql_get_field ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • session_pgsql_set_field() - Set custom field value

session_pgsql_get_error
session_pgsql_reset
Session PgSQL Funções


Reset connection to session database servers

session_pgsql_get_field
session_pgsql_set_field
Session PgSQL Funções
PHP Manual

session_pgsql_reset

(PECL session_pgsql SVN)

session_pgsql_reset — Reset connection to session database servers

Descrição

bool session_pgsql_reset ( void )

Reset the connection to the session database servers.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

session_pgsql_get_field
session_pgsql_set_field
Session PgSQL Funções


Set custom field value

session_pgsql_reset
session_pgsql_status
Session PgSQL Funções
PHP Manual

session_pgsql_set_field

(PECL session_pgsql SVN)

session_pgsql_set_field — Set custom field value

Descrição

bool session_pgsql_set_field ( string $value )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

value

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • session_pgsql_get_field() - Get custom field value

session_pgsql_reset
session_pgsql_status
Session PgSQL Funções


Get current save handler status

session_pgsql_set_field
Processamento de Texto
Session PgSQL Funções
PHP Manual

session_pgsql_status

(PECL session_pgsql SVN)

session_pgsql_status — Get current save handler status

Descrição

array session_pgsql_status ( void )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

session_pgsql_set_field
Processamento de Texto
Session PgSQL Funções


Processamento de Texto

  • BBCode — Bulletin Board Code
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da BBCode
  • PCRE — Expressões Regulares (Compatíveis com Perl)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Padrões PCRE
    • Funções da PCRE
  • POSIX Regex — Expressão Regular (POSIX Extended)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Regex POSIX
  • ssdeep — ssdeep Fuzzy Hashing
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • ssdeep Funções
  • Strings
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para String
session_pgsql_status
BBCode
Referência das Funções


Bulletin Board Code

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da BBCode
    • bbcode_add_element — Adds a bbcode element
    • bbcode_add_smiley — Adiciona um smiley para o analisador
    • bbcode_create — Create a BBCode Resource
    • bbcode_destroy — Fecha o resource BBCode_container
    • bbcode_parse — Analisa uma string seguindo um dado conjunto de regras
    • bbcode_set_arg_parser — Attach another parser in order to use another rule set for argument parsing
    • bbcode_set_flags — Set or alter parser options
Processamento de Texto
Introdução
Processamento de Texto


Introdução

Esta extensão tem o objetivo de ajudar a analisar texto BBCode em para convertê-lo para HTML ou outra linguagem de marcação. Ela usa um parser e fornece melhor eficiência sobre as comuns implementações baseadas em expressões regulares. E além do mais, ela ajuda a ter um HTML válido por reordenar aberta / fechada tags e automaticamnete fechar tags não fechadas.

Desde 0.10.1 ele suporta argumento entre aspas com aspas simples, aspas dupla e aspas dupla com escape HTML.

BBCode
Instalação/Configuração
BBCode


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
BBCode


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/bbcode

Uma solução alternativa, escrita em PHP, é o pacote PEAR » HTML_BBCodeParser.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Um resource é usado na extensão BBCode: um BBCode_Container retornado pela bbcode_create().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

BBCODE_TYPE_NOARG (integer)
Esta tag BBCode não aceita argumentos.
BBCODE_TYPE_SINGLE (integer)
Esta tag BBCode não tem uma tag para fechá-la.
BBCODE_TYPE_ARG (integer)
Esta tag BBCode precisa de algum argumento.
BBCODE_TYPE_OPTARG (integer)
Esta tag BBCode aceita um argumento opcional.
BBCODE_TYPE_ROOT (integer)
Esta tag BBCode é uma tag raiz (aninhamento level 0).
BBCODE_FLAGS_ARG_PARSING (integer)
Esta tag BBCode requer argumento sub-parsing (o argumento é também passado pela extensão BBCode). Na 0.10.2 outro parser pode ser usado como argumento do parser.
BBCODE_FLAGS_CDATA_NOT_ALLOWED (integer)
Esta tag BBCode não aceita conteúdo (ela evita automaticamente).
BBCODE_FLAGS_SMILEYS_ON (integer) - desde a 0.10.2
Esta tag BBCode aceita smileys.
BBCODE_FLAGS_SMILEYS_OFF (integer) - desde a 0.10.2
Esta tag BBCode não aceita smileys.
BBCODE_FLAGS_ONE_OPEN_PER_LEVEL (integer) - desde a 0.10.2
Esta tag BBCode automaticamente fecha se uma outra tag de mesmo tipo é encontrada no mesmo nível de aninhamento.
BBCODE_FLAGS_REMOVE_IF_EMPTY (integer) - desde a 0.10.2
Esta tag BBCode é automaticamente removida se o conteúdo é vazio ela permite produzir um HTML reduzido.
BBCODE_FLAGS_DENY_REOPEN_CHILD (integer) - desde a 0.10.3
Esta tag BBCode não permite filhas não fechadas para reabrir quando automaticamente fechada.
BBCODE_ARG_DOUBLE_QUOTE (integer) - desde a 0.10.2
Esta é uma opção do parser permitindo argumento entre aspas com aspas dupla (")
BBCODE_ARG_SINGLE_QUOTE (integer) - desde a 0.10.2
Esta é uma opção do parser permitindo argumento entre aspas com aspas simples (')
BBCODE_ARG_HTML_QUOTE (integer) - desde a 0.10.2
Esta é uma opção do parser permitindo argumento entre aspas com versão HTML de aspas dupla (&quot;)
BBCODE_AUTO_CORRECT (integer) - desde a 0.10.2
Esta é uma opção do parser modificando a forma que os erros são tratados. Ela automaticamente fecha tags para as que são abertas. E trata tags com somente uma tag aberta como se houvesse uma tag de fechamento.
BBCODE_CORRECT_REOPEN_TAGS (integer) - desde a 0.10.2
Esta é uma opção do parser modificando a forma que os erros são tratados. Ela automaticamente reabre tags se as tags fechadas não estão na ordem correta.
BBCODE_DISABLE_TREE_BUILD (integer) - desde a 0.10.2
Esta é uma opção do parser desabilitando o parser do BBCode ele pode ser útil se somente a substituição do "smiley" precisa ser usada.
BBCODE_DEFAULT_SMILEYS_ON (integer) - desde a 0.10.2
Esta é uma opção do parser definindo smileys para ON se nenhuma flag é dada a nível de tag.
BBCODE_DEFAULT_SMILEYS_OFF (integer) - desde a 0.10.2
Esta é uma opção do parser definindo smileys para OFF se nenhuma flag é dada a nível de tag.
BBCODE_FORCE_SMILEYS_OFF (integer) - desde a 0.10.2
Esta é uma opção do parser desabilitando completamente o parser de smileys.
BBCODE_SMILEYS_CASE_INSENSITIVE (integer) - desde a 0.10.3
Usa uma case insensitive detecção para smileys ao invés da simples busca binária.
BBCODE_SET_FLAGS_SET (integer) - desde a 0.10.2
Esta permite definir o conjunto de flag completa em um parser.
BBCODE_SET_FLAGS_ADD (integer) - desde a 0.10.2
Esta permite misturar um conjunto de flags ON em um parser.
BBCODE_SET_FLAGS_REMOVE (integer) - desde a 0.10.2
Esta permite misturar um conjunto de flgas OFF em um parser.
Tipos Resource
Funções da BBCode
BBCode


Funções da BBCode

Índice

  • bbcode_add_element — Adds a bbcode element
  • bbcode_add_smiley — Adiciona um smiley para o analisador
  • bbcode_create — Create a BBCode Resource
  • bbcode_destroy — Fecha o resource BBCode_container
  • bbcode_parse — Analisa uma string seguindo um dado conjunto de regras
  • bbcode_set_arg_parser — Attach another parser in order to use another rule set for argument parsing
  • bbcode_set_flags — Set or alter parser options
Constantes pré-definidas
bbcode_add_element
BBCode


Adds a bbcode element

Funções da BBCode
bbcode_add_smiley
Funções da BBCode
PHP Manual

bbcode_add_element

(PECL bbcode >= 0.9.0)

bbcode_add_element — Adds a bbcode element

Descrição

bool bbcode_add_element ( resource $bbcode_container , string $tag_name , array $tag_rules )

Adds a tag to an existing BBCode_Container tag_set using tag_rules.

Parâmetros

bbcode_container

BBCode_Container resource, returned by bbcode_create().

tag_name

The new tag to add to the BBCode_Container tag_set.

tag_rules

An associative array containing the parsing rules; see bbcode_create() for the available keys.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Funções da BBCode
bbcode_add_smiley
Funções da BBCode


Adiciona um smiley para o analisador

bbcode_add_element
bbcode_create
Funções da BBCode
PHP Manual

bbcode_add_smiley

(PECL bbcode >= 0.10.2)

bbcode_add_smiley — Adiciona um smiley para o analisador

Descrição

bool bbcode_add_smiley ( resource $bbcode_container , string $smiley , string $replace_by )

Adiciona um smiley para o analisador

Parâmetros

bbcode_container

Resource BBCode_Container, retornado pela bbcode_create().

smiley

A string que será modificada quando encontrada.

replace_by

A string que substituirá o smiley quando encontrado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso da bbcode_add_smiley()

<?php
/*
 * Prepare the rule set
 */
$arrayBBCode=array(
    ''=>         array('type'=>BBCODE_TYPE_ROOT,
                       'childs'=>'!i'),
    'b'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<b>',
                       'close_tag'=>'</b>'),
    'u'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<u>',
                       'close_tag'=>'</u>',
                       'flags'=>BBCODE_FLAGS_SMILEYS_OFF),
    'i'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<i>',
                       'close_tag'=>'</i>',
                       'childs'=>'b'),
);
/*
 * Parsed Text
 */
$text=<<<EOF
[i] No parse Test [/i] :)
[b] Parsed, with smiley :( [/b]
[u] Parsed, with no smiley :D [/u]
EOF;
/*
 * Init the parser
 */
$BBHandler=bbcode_create($arrayBBCode);
/*
 * Add Smiley rules to parser
 */
bbcode_add_smiley($BBHandler, ":)", "<img src=\"smiley.gif\" alt=\":)\" />");
bbcode_add_smiley($BBHandler, ":(", "<img src=\"sad.gif\" alt=\":(\" />");
bbcode_add_smiley($BBHandler, ":D", "<img src=\"happy.gif\" alt=\":D\" />");
bbcode_add_smiley($BBHandler, ":p", "<img src=\"tong.gif\" alt=\":p\" />");
bbcode_add_smiley($BBHandler, ":|", "<img src=\"special.gif\" alt=\":|\" />");
bbcode_add_smiley($BBHandler, ":6:", "<img src=\"six.gif\" alt=\":6:\" />");
/*
 * Parse the text
 */
echo bbcode_parse($BBHandler,$text);
?>

O exemplo acima irá imprimir:

[i] No parse Test [/i] <img src="smiley.gif" alt=":)" />
<b> Parsed, with smiley <img src="sad.gif" alt=":(" /> </b>
<u> Parsed, with no smiley :D </u>

bbcode_add_element
bbcode_create
Funções da BBCode


Create a BBCode Resource

bbcode_add_smiley
bbcode_destroy
Funções da BBCode
PHP Manual

bbcode_create

(PECL bbcode >= 0.9.0)

bbcode_create — Create a BBCode Resource

Descrição

resource bbcode_create ([ array $bbcode_initial_tags ] )

This function returns a new BBCode Resource used to parse BBCode strings.

Parâmetros

bbcode_initial_tags

An associative array containing the tag names as keys and parameters required to correctly parse BBCode as their value. The following key/value pairs are supported:

  • flags optional - a flag set based on the BBCODE_FLAGS_* constants.
  • type required - an int indicating the type of tag. Use the BBCODE_TYPE_* constants.
  • open_tag required - the HTML replacement string for the open tag.
  • close_tag required - the HTML replacement string for the close tag.
  • default_arg optional - use this value as the default argument if none is provided and tag_type is of type OPTARG.
  • content_handling optional - Gives the callback used for modification of the content. Object Oriented Notation supported only since 0.10.1 callback prototype is string name(string $content, string $argument)
  • param_handling optional - Gives the callback used for modification of the argument. Object Oriented Notation supported only since 0.10.1 callback prototype is string name(string $content, string $argument)
  • childs optional - List of accepted children for the tag. The format of the list is a comma separated string. If the list starts with ! it will be the list of rejected children for the tag.
  • parent optional - List of accepted parents for the tag. The format of the list is a comma separated string.

Valor Retornado

Returns a BBCode_Container

Exemplos

Exemplo #1 bbcode_create() example

<?php
$arrayBBCode=array(
    ''=>         array('type'=>BBCODE_TYPE_ROOT,  'childs'=>'!i'),
    'i'=>        array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<i>',
                    'close_tag'=>'</i>', 'childs'=>'b'),
    'url'=>      array('type'=>BBCODE_TYPE_OPTARG,
                    'open_tag'=>'<a href="{PARAM}">', 'close_tag'=>'</a>',
                    'default_arg'=>'{CONTENT}',
                    'childs'=>'b,i'),
    'img'=>      array('type'=>BBCODE_TYPE_NOARG,
                    'open_tag'=>'<img src="', 'close_tag'=>'" />',
                    'childs'=>''),
    'b'=>        array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b>',
                    'close_tag'=>'</b>'),
);
$text=<<<EOF
[b]Bold Text[/b]
[i]Italic Text[/i]
[url]http://www.php.net/[/url]
[url=http://pecl.php.net/][b]Content Text[/b][/url]
[img]http://static.php.net/www.php.net/images/php.gif[/img]
[url=http://www.php.net/]
[img]http://static.php.net/www.php.net/images/php.gif[/img]
[/url]
EOF;
$BBHandler=bbcode_create($arrayBBCode);
echo bbcode_parse($BBHandler,$text);
?>

O exemplo acima irá imprimir:

<b>Bold Text</b>
[i]Italic Text[/i]
<a href="http://www.php.net/">http://www.php.net/</a>
<a href="http://pecl.php.net/"><b>Content Text</b></a>
<img src="http://static.php.net/www.php.net/images/php.gif" />
<a href="http://www.php.net/">
[img]http://static.php.net/www.php.net/images/php.gif[/img]
</a>

bbcode_add_smiley
bbcode_destroy
Funções da BBCode


Fecha o resource BBCode_container

bbcode_create
bbcode_parse
Funções da BBCode
PHP Manual

bbcode_destroy

(PECL bbcode >= 0.9.0)

bbcode_destroy — Fecha o resource BBCode_container

Descrição

bool bbcode_destroy ( resource $bbcode_container )

Esta função fecha um resource aberto por bbcode_create().

Parâmetros

bbcode

Resource BBCode_Container retornado por bbcode_create().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

bbcode_create
bbcode_parse
Funções da BBCode


Analisa uma string seguindo um dado conjunto de regras

bbcode_destroy
bbcode_set_arg_parser
Funções da BBCode
PHP Manual

bbcode_parse

(PECL bbcode >= 0.9.0)

bbcode_parse — Analisa uma string seguindo um dado conjunto de regras

Descrição

string bbcode_parse ( resource $bbcode_container , string $to_parse )

Esta função analisa a string to_parse seguindo as regras em no bbcode_container criado por bbcode_create()

Parâmetros

bbcode_container

Resource BBCode_Container retornado pela bbcode_create().

to_parse

A string que precisa analisar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

bbcode_destroy
bbcode_set_arg_parser
Funções da BBCode


Attach another parser in order to use another rule set for argument parsing

bbcode_parse
bbcode_set_flags
Funções da BBCode
PHP Manual

bbcode_set_arg_parser

(PECL bbcode >= 0.10.2)

bbcode_set_arg_parser — Attach another parser in order to use another rule set for argument parsing

Descrição

bool bbcode_set_arg_parser ( resource $bbcode_container , resource $bbcode_arg_parser )

Attaches another parser to the bbcode_container. This parser is used only when arguments must be parsed. If this function is not used, the default argument parser is the parser itself.

Parâmetros

bbcode_container

BBCode_Container resource, returned by bbcode_create().

bbcode_arg_parser

BBCode_Container resource, returned by bbcode_create(). It will be used only for parsed arguments

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 bbcode_set_arg_parser() usage example

<?php
/*
 * Generating bbcode ruleset for main parser
 */
$arrayBBCode=array(
    'quote'=>    array('type'=>BBCODE_TYPE_ARG,
                       'open_tag'=>'<quote><h4>Source: {PARAM}</h4>',
                       'close_tag'=>'</quote>',
                       'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY|BBCODE_FLAGS_ARG_PARSING),
    'b'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<b>', 'close_tag'=>'</b>',
                       'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),
    'u'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<u>', 'close_tag'=>'</u>',
                       'flags'=>BBCODE_FLAGS_SMILEYS_OFF | BBCODE_FLAGS_REMOVE_IF_EMPTY | BBCODE_FLAGS_SMILEYS_OFF),
    'i'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<i>', 'close_tag'=>'</i>',
                       'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),
);
/*
 * Generating bbcode ruleset for argument parser
 */
$arrayBBCode_arg=array(
    'b'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<b class="sub">', 'close_tag'=>'</b>',
                       'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),
    'u'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<u>', 'close_tag'=>'</u>',
                       'flags'=>BBCODE_FLAGS_SMILEYS_OFF | BBCODE_FLAGS_REMOVE_IF_EMPTY | BBCODE_FLAGS_SMILEYS_OFF),
    'i'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<i>', 'close_tag'=>'</i>',
                       'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),
);
/*
 * Text we are going to parse
 */
$text=<<<EOF
[quote="[b]Test[/b]"]
Foo :)
[/quote]
[b]Bar example :)[/b] :)
EOF;
/*
 * Init the two parsers
 */
$BBHandler=bbcode_create($arrayBBCode);
$BBArgHandler=bbcode_create($arrayBBCode_arg);
/*
 * Setting Flags on the parsers
 */
bbcode_set_flags($BBHandler,
                 BBCODE_CORRECT_REOPEN_TAGS|BBCODE_DEFAULT_SMILEYS_ON|BBCODE_ARG_DOUBLE_QUOTE|
                 BBCODE_ARG_SINGLE_QUOTE|BBCODE_ARG_HTML_QUOTE,BBCODE_SET_FLAGS_SET);
bbcode_set_flags($BBArgHandler,
                 BBCODE_CORRECT_REOPEN_TAGS|BBCODE_DEFAULT_SMILEYS_ON|BBCODE_ARG_DOUBLE_QUOTE|
                 BBCODE_ARG_SINGLE_QUOTE|BBCODE_ARG_HTML_QUOTE,BBCODE_SET_FLAGS_SET);
/*
 * Setting $BBArgHandler as the BBHandler argument parser
 */
bbcode_set_arg_parser($BBHandler,$BBArgHandler);
/*
 * Adding Smileys handling rules to Main parser
 */
bbcode_add_smiley($BBHandler, ":)", "<img src=\"smiley.gif\" alt=\":)\" />");
/*
 * Use the main parser to parse text
 */
echo bbcode_parse($BBHandler,$text);
?>

O exemplo acima irá imprimir:

<quote><h4>Source: <b class="sub">Test</b></h4>
Foo <img src="smiley.gif" alt=":)" />
</quote>
<b>Bar example :)</b> <img src="smiley.gif" alt=":)" />

bbcode_parse
bbcode_set_flags
Funções da BBCode


Set or alter parser options

bbcode_set_arg_parser
PCRE
Funções da BBCode
PHP Manual

bbcode_set_flags

(PECL bbcode >= 0.10.2)

bbcode_set_flags — Set or alter parser options

Descrição

bool bbcode_set_flags ( resource $bbcode_container , int $flags [, int $mode = BBCODE_SET_FLAGS_SET ] )

Set or alter parser options

Parâmetros

bbcode_container

BBCode_Container resource, returned by bbcode_create().

flags

The flag set that must be applied to the bbcode_container options

mode

One of the BBCODE_SET_FLAGS_* constant to set, unset a specific flag set or to replace the flag set by flags.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 bbcode_set_flags() usage example

<?php
/*
 * Preparing RuleSet
 */
$arrayBBCode=array(
    'b'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<b>', 'close_tag'=>'</b>'),
    'u'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<u>', 'close_tag'=>'</u>'),
    'i'=>        array('type'=>BBCODE_TYPE_NOARG,
                       'open_tag'=>'<i>', 'close_tag'=>'</i>'),
);
/*
 * Paired incorrectly nested BBCode
 */
$text="[i] Parser [b] Auto Correction [/i] at work [/b]\n";
$BBHandler=bbcode_create($arrayBBCode);
echo bbcode_parse($BBHandler,$text);
// Enabling reopening of automaticaly closed elements
bbcode_set_flags($BBHandler,BBCODE_CORRECT_REOPEN_TAGS,
                 BBCODE_SET_FLAGS_SET);
echo bbcode_parse($BBHandler,$text);

/*
 * Unpaired incorrectly nested BBCode
 */
$text="[i] Parser [b] Auto Correction [/i] at work\n";
echo bbcode_parse($BBHandler,$text);
// Enabling automatic close of pending tags
bbcode_set_flags($BBHandler,
                 BBCODE_CORRECT_REOPEN_TAGS|BBCODE_AUTO_CORRECT,
                 BBCODE_SET_FLAGS_SET);
echo bbcode_parse($BBHandler,$text);
?>

O exemplo acima irá imprimir:

<i> Parser <b> Auto Correction </b></i> at work
<i> Parser <b> Auto Correction </b></i><b> at work </b>
<i> Parser [b] Auto Correction </i> at work
<i> Parser <b> Auto Correction </b></i><b> at work
</b>

bbcode_set_arg_parser
PCRE
Funções da BBCode


Expressões Regulares (Compatíveis com Perl)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Padrões PCRE
    • Descreve possíveis modificadores no padrão regex — Modificadores do Padrão
    • PCRE regex syntax — Pattern Syntax
  • Funções da PCRE
    • preg_filter — Perform a regular expression search and replace
    • preg_grep — Retorna as entradas do array que combinaram com o padrão
    • preg_last_error — Retorna o código de erro da última regex PCRE executada
    • preg_match_all — Perform a global regular expression match
    • preg_match — Perform a regular expression match
    • preg_quote — Adiciona escape em caracteres da expressão regular
    • preg_replace_callback — Executa uma busca usando expressão regular e modifica usando um callback
    • preg_replace — Perform a regular expression search and replace
    • preg_split — Divide a string por uma expressão regular
bbcode_set_flags
Introdução
Processamento de Texto


Introdução

A sintaxe para padrões usados nestas funções assemelham-se com Perl. A expressão precisa estar incluída entre delimitadores, uma barra (/), por exemplo. Qualquer caractere pode ser usado para delimitar desde que não seja alfanumérico ou backslash (\). Se o caractere delimitador tem de ser usado na própria expressão, ele necessitará de escape. Desde o PHP 4.0.4, você pode também usar delimitadores Perl-style (), {}, [], e <>. Veja Sintaxe do Padrão para mais detalhes.

No final do delimitador pode ser seguido por vários modificadores que afetam a combinação. Veja Modificadores do Padrão.

PHP também suporta expressões regulares usando a sintaxe POSIX-extendido utilizando as funções para regex no padrão POSIX-extendido.

Nota:

Esta extensão mantém uma global por thread cache da expressão regular compilada.

Aviso

Você precisa estar ciente de algumas limitações da PCRE. Leia » http://www.pcre.org/pcre.txt para mais informações.

PCRE
Instalação/Configuração
PCRE


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
PCRE


Instalação

Desde o PHP 4.2.0 estas funções são disponíveis por padrão. Você pode torná-las indisponível com --without-pcre-regex . Use --with-pcre-regex=DIR para especificar o diretório onde está localizado os arquivos da biblioteca PCRE, caso não use a biblioteca empacotada. Em antigas versões você precisava configurar e compilar o PHP com --with-pcre-regex[=DIR] para usar estas funções.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota:

A partir do PHP 5.3.0 esta extensão não ser desabilitada, portanto, estará sempre presente.

É ainda possível compilar com uma biblioteca PCRE externa usando --with-pcre-regex=DIR

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da PCRE
Nome | Padrão | Modificável | Changelog
pcre.backtrack_limit | 100000 | PHP_INI_ALL | Disponível desde o PHP 5.2.0.
pcre.recursion_limit | 100000 | PHP_INI_ALL | Disponível desde o PHP 5.2.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

pcre.backtrack_limit integer

Limite de backtracking da PCRE.

pcre.recursion_limit integer

Limite de recursões da PCRE. Nota que se você definir este valor para um número bem alto poderá consumir toda a pilha de processo disponível e eventualmente travar o PHP (devido a alcançar o limite do tamanho da pilha imposto pelo Sistema Operacional).

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PREG constantes
constant | description
PREG_PATTERN_ORDER | Ordena os resultados de modo que $matches[0] seja um array de todas as combinações do padrão. $matches[1] é um array de strings combinadas pelo primeiro subpadrão, e assim por diante. Esta flag é somente usada com preg_match_all().
PREG_SET_ORDER | Ordena os resultados de modo que $matches[0] seja um array do primeiro conjunto de combinações, $matches[1] é um array do segundo conjunto de combinações, e assim por diante. Esta flag é somente usada com preg_match_all().
PREG_OFFSET_CAPTURE | Veja a descrição da PREG_SPLIT_OFFSET_CAPTURE. Esta flag está disponível desde o PHP 4.3.0.
PREG_SPLIT_NO_EMPTY | Esta flag diz a preg_split() não retornar pedaços em branco.
PREG_SPLIT_DELIM_CAPTURE | Esta flag diz a preg_split() capturar expressões entre parênteses no delimitador do padrão também. Está flag está disponível desde o PHP 4.0.5.
PREG_SPLIT_OFFSET_CAPTURE | Se esta flag é usada, para cada combinação será retornada também a posição da string. Note que esta modificação retorna valores em um array onde cada elemento é um array consistindo da string combinada no índice 0 e a posição na string alvo na índice 1. Esta flag está disponível desde o PHP 4.3.0 e é somente usada por preg_split().
PREG_NO_ERROR | Retornado pela preg_last_error() se não haver erros. Disponível desde o PHP 5.2.0.
PREG_INTERNAL_ERROR | Retornado pela preg_last_error() se houve um erro interno na PCRE. Disponível desde o PHP 5.2.0.
PREG_BACKTRACK_LIMIT_ERROR | Retornado pela preg_last_error() se backtrack limit foi esgotado. Disponível desde o PHP 5.2.0.
PREG_RECURSION_LIMIT_ERROR | Retornado pela preg_last_error() se recursion limit foi esgotado. Disponível desde o PHP 5.2.0.
PREG_BAD_UTF8_ERROR | Retornado pela preg_last_error() se o último erro foi causado por informação deformada em UTF-8 (somente quando usado a regex em modo UTF-8). Disponível desde o PHP 5.2.0.
PREG_BAD_UTF8_OFFSET_ERROR | Retornado pela preg_last_error() se o offset não correspondeu ao início de um válido code point UTF-8 (somente quando executando uma regex em modo UTF-8). Disponível desde o PHP 5.3.0.
PCRE_VERSION | Versão da PCRE e data de liberação (e.g. "7.0 18-Dec-2006"). Disponível desde o PHP 5.2.4.
Tipos Resource
Exemplos
PCRE


Exemplos

Exemplo #1 Exemplos de padrões válidos

  • /<\/\w+>/
  • |(\d{3})-\d+|Sm
  • /^(?i)php[34]/
  • {^\s+(\s+)?$}

Exemplo #2 Exemplos de padrões inválidos

  • /href='(.*)' - faltando o delimitador final
  • /\w+\s*\w+/J - modificador 'J' desconhecido
  • 1-\d3-\d3-\d4| - faltando delimitador inicial

Constantes pré-definidas
Padrões PCRE
PCRE


Padrões PCRE

Índice

  • Descreve possíveis modificadores no padrão regex
  • PCRE regex syntax
Exemplos
Descreve possíveis modificadores no padrão regex
PCRE


Modificadores do Padrão

Os atuais possíveis modificadores PCRE são listados abaixo. Os nomes entre parênteses referem-se ao nome interno destes modificadores. Espaço e newlines são ignorado nos modificadores, outros caracteres causam erro.

i (PCRE_CASELESS)
Se este modificador é usado, as letras no padrão combinam tanto maiúsculas quanto minúsculas.
m (PCRE_MULTILINE)
Por padrão, PCRE trata a string alvo como consistindo de uma única linha de caracteres (mesmo se ele realmente contêm vários newlines). O metacaractere "ínicio da linha" (^) combina somente no início da string, quando o metacaractere "fim da linha" combina somente no final da string, ou antes de um newline no fim (a menos que o modificador D seja usado). Este é o mesmo do Perl. Quando este modificador é usado, os construtores "início da linha" e "final de linha" combinam logo depois ou logo antes de algum newline na string alvo, respectivamente, bem como no começo e fim. Isto é equivalente ao modificador /m do Perl. Se não houver um caractere "\n" na string alvo, ou nenhum ocorrência do ^ ou $ no padrão, usar este modificador não tem efeito.
s (PCRE_DOTALL)
Se este modificador é usado, um metacaractere ponto no padrão combina todos caracteres, incluindo newlines. Sem ele, newlines são excluídos. Este modificador é equivalente ao modificador /s do Perl. Uma classe negada como [^a] sempre combina um caractere newline, independente do uso deste modificador.
x (PCRE_EXTENDED)
Se este modificador é usado, caracteres whitespace no padrão são totalmente ignorado exceto quando escapado ou dentro de um classe de caractere, e inclusive caracteres entre um # não precedido de escape fora de uma classe de caracteres e o próximo caractere newline, são também ignorados. Este é equivalente ao modificador /x do Perl, tornando possível incluir comentários dentro de padrões complicados. Note, contudo, que isto é aplicado somente a caracteres de dados. Caracteres whitespace nunca podem aparecer dentro de especial sequência de caracteres no padrão, por exemplo na sequência (?( que introduz um subpadrão condicional.
e (PREG_REPLACE_EVAL)
Se este modificador é usado, preg_replace() faz a normal substituição de backreferences na string substituta, avaliando-a como código PHP, e usando o resultado para trocar a string procurada. Aspas simples, aspas duplas, escape e caractere NULL terão escape nos backreferences.

Somente preg_replace() usa este modificador; ele é ignorado por outras funções PCRE.

A (PCRE_ANCHORED)
Se este modificador é usado, o padrão é forçado para ser "âncorado", isto é, ele restringido para combinar somente no início da string que está sendo procurada (a "string alvo"). Este efeito pode também ser alcançado pelo apropriado construtor no padrão, que é o única forma de fazer em Perl. If this modifier is set, the pattern is forced to be "anchored", that is, it is constrained to match only at the start of the string which is being searched (the "subject string"). This effect can also be achieved by appropriate constructs in the pattern itself, which is the only way to do it in Perl.
D (PCRE_DOLLAR_ENDONLY)
Se este modificador é usado, o metacaractere dólar no padrão combina somente no final da string alvo. Sem este modificador, um dólar também combina imediatamente antes do caractere final se ele for um newline (mas não antes de outros newlines). Este modificador é ignorado se o modificador m é usado. Não há um equivalente a este modificador no Perl.
S
Quando um padrão será usado diversas vezes, vale a pena gastar mais tempo analisando em favor da velocidade a fim apressar a combinação. Se este modificador for usado, esta análise extra será executada. Atualmente, estudar um teste padrão é útil somente para os testes padrões não escorados, que não têm um único caracter inicial fixo.
U (PCRE_UNGREEDY)
Este modificador inverte a "gulosidade" dos quantificadores de modo que não sejam gulosos por padrão, mas torna-se guloso se seguido por "?". Não é compatível com Perl. Pode também ser usado por um (?U) que ajusta-se dentro do teste padrão ou por uma interrogação depois de um quantificador (por exemplo .*?).
X (PCRE_EXTRA)
Este modificador aciona uma funcionalidade adicional do PCRE que é incompatível com Perl. Qualquer barra invertida (backslash) na busca que é seguida por uma letra que não tenha nenhum significado especial causa um erro, reservando assim essas combinações para futuros upgrades. Até agora não há outra funcionalidade controlada por este modificador.
J (PCRE_INFO_JCHANGED)
A opção de configuração interna (?J) modifica a opção local PCRE_DUPNAMES. Que permite a duplicação de nomes de subpadrões.
u (PCRE_UTF8)
Este modificador aciona uma funcionalidade adicional de PCRE que é incompatível com Perl. As strings do padrão são tratadas como UTF-8. Este modificador está disponível no PHP 4.1.0 ou superior em Unix e no PHP 4.2.3 em WIN32. Validez do UTF-8 no padrão é verificado desde o PHP 4.3.5.

Padrões PCRE
PCRE regex syntax
Padrões PCRE


Pattern Syntax

Índice

  • Introduction
  • Delimiters
  • Meta-characters
  • Escape sequences
  • Unicode character properties
  • Anchors
  • Dot
  • Character classes
  • Alternation
  • Internal option setting
  • Subpatterns
  • Repetition
  • Back references
  • Assertions
  • Once-only subpatterns
  • Conditional subpatterns
  • Comments
  • Recursive patterns
  • Performance
Descreve possíveis modificadores no padrão regex
Introduction
Padrões PCRE


Introduction

The syntax and semantics of the regular expressions supported by PCRE are described below. Regular expressions are also described in the Perl documentation and in a number of other books, some of which have copious examples. Jeffrey Friedl's "Mastering Regular Expressions", published by O'Reilly (ISBN 1-56592-257-3), covers them in great detail. The description here is intended as reference documentation.

A regular expression is a pattern that is matched against a subject string from left to right. Most characters stand for themselves in a pattern, and match the corresponding characters in the subject. As a trivial example, the pattern The quick brown fox matches a portion of a subject string that is identical to itself.

PCRE regex syntax
Delimiters
PCRE regex syntax


Delimiters

When using the PCRE functions, it is required that the pattern is enclosed by delimiters. A delimiter can be any non-alphanumeric, non-backslash, non-whitespace character.

Often used delimiters are forward slashes (/), hash signs (#) and tildes (~). The following are all examples of valid delimited patterns.

/foo bar/
#^[^0-9]$#
+php+
%[a-zA-Z0-9_-]%

If the delimiter needs to be matched inside the pattern it must be escaped using a backslash. If the delimiter appears often inside the pattern, it is a good idea to choose another delimiter in order to increase readability.

/http:\/\//
#http://#
The preg_quote() function may be used to escape a string for injection into a pattern and its optional second parameter may be used to specify the delimiter to be escaped.

In addition to the aforementioned delimiters, it is also possible to use bracket style delimiters where the opening and closing brackets are the starting and ending delimiter, respectively.

{this is a pattern}

You may add pattern modifiers after the ending delimiter. The following is an example of case-insensitive matching:

#[a-z]#i

Introduction
Meta-characters
PCRE regex syntax


Meta-characters

The power of regular expressions comes from the ability to include alternatives and repetitions in the pattern. These are encoded in the pattern by the use of meta-characters, which do not stand for themselves but instead are interpreted in some special way.

There are two different sets of meta-characters: those that are recognized anywhere in the pattern except within square brackets, and those that are recognized in square brackets. Outside square brackets, the meta-characters are as follows:

\
general escape character with several uses
^
assert start of subject (or line, in multiline mode)
$
assert end of subject (or line, in multiline mode)
.
match any character except newline (by default)
[
start character class definition
]
end character class definition
|
start of alternative branch
(
start subpattern
)
end subpattern
?
extends the meaning of (, also 0 or 1 quantifier, also makes greedy quantifiers lazy (see repetition)
*
0 or more quantifier
+
1 or more quantifier
{
start min/max quantifier
}
end min/max quantifier
Part of a pattern that is in square brackets is called a "character class". In a character class the only meta-characters are:
\
general escape character
^
negate the class, but only if the first character
-
indicates character range
]
terminates the character class
The following sections describe the use of each of the meta-characters.

Delimiters
Escape sequences
PCRE regex syntax


Escape sequences

The backslash character has several uses. Firstly, if it is followed by a non-alphanumeric character, it takes away any special meaning that character may have. This use of backslash as an escape character applies both inside and outside character classes.

For example, if you want to match a "*" character, you write "\*" in the pattern. This applies whether or not the following character would otherwise be interpreted as a meta-character, so it is always safe to precede a non-alphanumeric with "\" to specify that it stands for itself. In particular, if you want to match a backslash, you write "\\".

Nota:

Single and double quoted PHP strings have special meaning of backslash. Thus if \ has to be matched with a regular expression \\, then "\\\\" or '\\\\' must be used in PHP code.

If a pattern is compiled with the PCRE_EXTENDED option, whitespace in the pattern (other than in a character class) and characters between a "#" outside a character class and the next newline character are ignored. An escaping backslash can be used to include a whitespace or "#" character as part of the pattern.

A second use of backslash provides a way of encoding non-printing characters in patterns in a visible manner. There is no restriction on the appearance of non-printing characters, apart from the binary zero that terminates a pattern, but when a pattern is being prepared by text editing, it is usually easier to use one of the following escape sequences than the binary character it represents:

\a
alarm, that is, the BEL character (hex 07)
\cx
"control-x", where x is any character
\e
escape (hex 1B)
\f
formfeed (hex 0C)
\n
newline (hex 0A)
\p{xx}
a character with the xx property, see unicode properties for more info
\P{xx}
a character without the xx property, see unicode properties for more info
\r
carriage return (hex 0D)
\t
tab (hex 09)
\xhh
character with hex code hh unicode properties for more info
\ddd
character with octal code ddd, or backreference

The precise effect of "\cx" is as follows: if "x" is a lower case letter, it is converted to upper case. Then bit 6 of the character (hex 40) is inverted. Thus "\cz" becomes hex 1A, but "\c{" becomes hex 3B, while "\c;" becomes hex 7B.

After "\x", up to two hexadecimal digits are read (letters can be in upper or lower case). In UTF-8 mode, "\x{...}" is allowed, where the contents of the braces is a string of hexadecimal digits. It is interpreted as a UTF-8 character whose code number is the given hexadecimal number. The original hexadecimal escape sequence, \xhh, matches a two-byte UTF-8 character if the value is greater than 127.

After "\0" up to two further octal digits are read. In both cases, if there are fewer than two digits, just those that are present are used. Thus the sequence "\0\x\07" specifies two binary zeros followed by a BEL character. Make sure you supply two digits after the initial zero if the character that follows is itself an octal digit.

The handling of a backslash followed by a digit other than 0 is complicated. Outside a character class, PCRE reads it and any following digits as a decimal number. If the number is less than 10, or if there have been at least that many previous capturing left parentheses in the expression, the entire sequence is taken as a back reference. A description of how this works is given later, following the discussion of parenthesized subpatterns.

Inside a character class, or if the decimal number is greater than 9 and there have not been that many capturing subpatterns, PCRE re-reads up to three octal digits following the backslash, and generates a single byte from the least significant 8 bits of the value. Any subsequent digits stand for themselves. For example:

\040
is another way of writing a space
\40
is the same, provided there are fewer than 40 previous capturing subpatterns
\7
is always a back reference
\11
might be a back reference, or another way of writing a tab
\011
is always a tab
\0113
is a tab followed by the character "3"
\113
is the character with octal code 113 (since there can be no more than 99 back references)
\377
is a byte consisting entirely of 1 bits
\81
is either a back reference, or a binary zero followed by the two characters "8" and "1"

Note that octal values of 100 or greater must not be introduced by a leading zero, because no more than three octal digits are ever read.

All the sequences that define a single byte value can be used both inside and outside character classes. In addition, inside a character class, the sequence "\b" is interpreted as the backspace character (hex 08). Outside a character class it has a different meaning (see below).

The third use of backslash is for specifying generic character types:

\d
any decimal digit
\D
any character that is not a decimal digit
\h
any horizontal whitespace character (since PHP 5.2.4)
\H
any character that is not a horizontal whitespace character (since PHP 5.2.4)
\s
any whitespace character
\S
any character that is not a whitespace character
\v
any vertical whitespace character (since PHP 5.2.4)
\V
any character that is not a vertical whitespace character (since PHP 5.2.4)
\w
any "word" character
\W
any "non-word" character

Each pair of escape sequences partitions the complete set of characters into two disjoint sets. Any given character matches one, and only one, of each pair.

A "word" character is any letter or digit or the underscore character, that is, any character which can be part of a Perl "word". The definition of letters and digits is controlled by PCRE's character tables, and may vary if locale-specific matching is taking place. For example, in the "fr" (French) locale, some character codes greater than 128 are used for accented letters, and these are matched by \w.

These character type sequences can appear both inside and outside character classes. They each match one character of the appropriate type. If the current matching point is at the end of the subject string, all of them fail, since there is no character to match.

The fourth use of backslash is for certain simple assertions. An assertion specifies a condition that has to be met at a particular point in a match, without consuming any characters from the subject string. The use of subpatterns for more complicated assertions is described below. The backslashed assertions are

\b
word boundary
\B
not a word boundary
\A
start of subject (independent of multiline mode)
\Z
end of subject or newline at end (independent of multiline mode)
\z
end of subject (independent of multiline mode)
\G
first matching position in subject

These assertions may not appear in character classes (but note that "\b" has a different meaning, namely the backspace character, inside a character class).

A word boundary is a position in the subject string where the current character and the previous character do not both match \w or \W (i.e. one matches \w and the other matches \W), or the start or end of the string if the first or last character matches \w, respectively.

The \A, \Z, and \z assertions differ from the traditional circumflex and dollar (described below) in that they only ever match at the very start and end of the subject string, whatever options are set. They are not affected by the PCRE_MULTILINE or PCRE_DOLLAR_ENDONLY options. The difference between \Z and \z is that \Z matches before a newline that is the last character of the string as well as at the end of the string, whereas \z matches only at the end.

The \G assertion is true only when the current matching position is at the start point of the match, as specified by the offset argument of preg_match(). It differs from \A when the value of offset is non-zero.

\Q and \E can be used to ignore regexp metacharacters in the pattern. For example: \w+\Q.$.\E$ will match one or more word characters, followed by literals .$. and anchored at the end of the string.

\K can be used to reset the match start since PHP 5.2.4. For example, the pattern foo\Kbar matches "foobar", but reports that it has matched "bar". The use of \K does not interfere with the setting of captured substrings. For example, when the pattern (foo)\Kbar matches "foobar", the first substring is still set to "foo".

Meta-characters
Unicode character properties
PCRE regex syntax


Unicode character properties

Since 5.1.0, three additional escape sequences to match generic character types are available when UTF-8 mode is selected. They are:

\p{xx}
a character with the xx property
\P{xx}
a character without the xx property
\X
an extended Unicode sequence

The property names represented by xx above are limited to the Unicode general category properties. Each character has exactly one such property, specified by a two-letter abbreviation. For compatibility with Perl, negation can be specified by including a circumflex between the opening brace and the property name. For example, \p{^Lu} is the same as \P{Lu}.

If only one letter is specified with \p or \P, it includes all the properties that start with that letter. In this case, in the absence of negation, the curly brackets in the escape sequence are optional; these two examples have the same effect:

\p{L}
\pL

Supported property codes
Property | Matches | Notes
C | Other |
Cc | Control |
Cf | Format |
Cn | Unassigned |
Co | Private use |
Cs | Surrogate |
L | Letter | Includes the following properties: Ll, Lm, Lo, Lt and Lu.
Ll | Lower case letter |
Lm | Modifier letter |
Lo | Other letter |
Lt | Title case letter |
Lu | Upper case letter |
M | Mark |
Mc | Spacing mark |
Me | Enclosing mark |
Mn | Non-spacing mark |
N | Number |
Nd | Decimal number |
Nl | Letter number |
No | Other number |
P | Punctuation |
Pc | Connector punctuation |
Pd | Dash punctuation |
Pe | Close punctuation |
Pf | Final punctuation |
Pi | Initial punctuation |
Po | Other punctuation |
Ps | Open punctuation |
S | Symbol |
Sc | Currency symbol |
Sk | Modifier symbol |
Sm | Mathematical symbol |
So | Other symbol |
Z | Separator |
Zl | Line separator |
Zp | Paragraph separator |
Zs | Space separator |

Extended properties such as "Greek" or "InMusicalSymbols" are not supported by PCRE.

Specifying case-insensitive (caseless) matching does not affect these escape sequences. For example, \p{Lu} always matches only upper case letters.

The \X escape matches any number of Unicode characters that form an extended Unicode sequence. \X is equivalent to (?>\PM\pM*).

That is, it matches a character without the "mark" property, followed by zero or more characters with the "mark" property, and treats the sequence as an atomic group (see below). Characters with the "mark" property are typically accents that affect the preceding character.

Matching characters by Unicode property is not fast, because PCRE has to search a structure that contains data for over fifteen thousand characters. That is why the traditional escape sequences such as \d and \w do not use Unicode properties in PCRE.

Escape sequences
Anchors
PCRE regex syntax


Anchors

Outside a character class, in the default matching mode, the circumflex character (^) is an assertion which is true only if the current matching point is at the start of the subject string. Inside a character class, circumflex (^) has an entirely different meaning (see below).

Circumflex (^) need not be the first character of the pattern if a number of alternatives are involved, but it should be the first thing in each alternative in which it appears if the pattern is ever to match that branch. If all possible alternatives start with a circumflex (^), that is, if the pattern is constrained to match only at the start of the subject, it is said to be an "anchored" pattern. (There are also other constructs that can cause a pattern to be anchored.)

A dollar character ($) is an assertion which is TRUE only if the current matching point is at the end of the subject string, or immediately before a newline character that is the last character in the string (by default). Dollar ($) need not be the last character of the pattern if a number of alternatives are involved, but it should be the last item in any branch in which it appears. Dollar has no special meaning in a character class.

The meaning of dollar can be changed so that it matches only at the very end of the string, by setting the PCRE_DOLLAR_ENDONLY option at compile or matching time. This does not affect the \Z assertion.

The meanings of the circumflex and dollar characters are changed if the PCRE_MULTILINE option is set. When this is the case, they match immediately after and immediately before an internal "\n" character, respectively, in addition to matching at the start and end of the subject string. For example, the pattern /^abc$/ matches the subject string "def\nabc" in multiline mode, but not otherwise. Consequently, patterns that are anchored in single line mode because all branches start with "^" are not anchored in multiline mode. The PCRE_DOLLAR_ENDONLY option is ignored if PCRE_MULTILINE is set.

Note that the sequences \A, \Z, and \z can be used to match the start and end of the subject in both modes, and if all branches of a pattern start with \A is it always anchored, whether PCRE_MULTILINE is set or not.

Unicode character properties
Dot
PCRE regex syntax


Dot

Outside a character class, a dot in the pattern matches any one character in the subject, including a non-printing character, but not (by default) newline. If the PCRE_DOTALL option is set, then dots match newlines as well. The handling of dot is entirely independent of the handling of circumflex and dollar, the only relationship being that they both involve newline characters. Dot has no special meaning in a character class.

\C can be used to match single byte. It makes sense in UTF-8 mode where full stop matches the whole character which can consist of multiple bytes.

Anchors
Character classes
PCRE regex syntax


Character classes

An opening square bracket introduces a character class, terminated by a closing square bracket. A closing square bracket on its own is not special. If a closing square bracket is required as a member of the class, it should be the first data character in the class (after an initial circumflex, if present) or escaped with a backslash.

A character class matches a single character in the subject; the character must be in the set of characters defined by the class, unless the first character in the class is a circumflex, in which case the subject character must not be in the set defined by the class. If a circumflex is actually required as a member of the class, ensure it is not the first character, or escape it with a backslash.

For example, the character class [aeiou] matches any lower case vowel, while [^aeiou] matches any character that is not a lower case vowel. Note that a circumflex is just a convenient notation for specifying the characters which are in the class by enumerating those that are not. It is not an assertion: it still consumes a character from the subject string, and fails if the current pointer is at the end of the string.

When case-insensitive (caseless) matching is set, any letters in a class represent both their upper case and lower case versions, so for example, an insensitive [aeiou] matches "A" as well as "a", and an insensitive [^aeiou] does not match "A", whereas a sensitive (caseful) version would.

The newline character is never treated in any special way in character classes, whatever the setting of the PCRE_DOTALL or PCRE_MULTILINE options is. A class such as [^a] will always match a newline.

The minus (hyphen) character can be used to specify a range of characters in a character class. For example, [d-m] matches any letter between d and m, inclusive. If a minus character is required in a class, it must be escaped with a backslash or appear in a position where it cannot be interpreted as indicating a range, typically as the first or last character in the class.

It is not possible to have the literal character "]" as the end character of a range. A pattern such as [W-]46] is interpreted as a class of two characters ("W" and "-") followed by a literal string "46]", so it would match "W46]" or "-46]". However, if the "]" is escaped with a backslash it is interpreted as the end of range, so [W-\]46] is interpreted as a single class containing a range followed by two separate characters. The octal or hexadecimal representation of "]" can also be used to end a range.

Ranges operate in ASCII collating sequence. They can also be used for characters specified numerically, for example [\000-\037]. If a range that includes letters is used when case-insensitive (caseless) matching is set, it matches the letters in either case. For example, [W-c] is equivalent to [][\^_`wxyzabc], matched case-insensitively, and if character tables for the "fr" locale are in use, [\xc8-\xcb] matches accented E characters in both cases.

The character types \d, \D, \s, \S, \w, and \W may also appear in a character class, and add the characters that they match to the class. For example, [\dABCDEF] matches any hexadecimal digit. A circumflex can conveniently be used with the upper case character types to specify a more restricted set of characters than the matching lower case type. For example, the class [^\W_] matches any letter or digit, but not underscore.

All non-alphanumeric characters other than \, -, ^ (at the start) and the terminating ] are non-special in character classes, but it does no harm if they are escaped. The pattern terminator is always special and must be escaped when used within an expression.

Perl supports the POSIX notation for character classes. This uses names enclosed by [: and :] within the enclosing square brackets. PCRE also supports this notation. For example, [01[:alpha:]%] matches "0", "1", any alphabetic character, or "%". The supported class names are:

Character classes
alnum | letters and digits
alpha | letters
ascii | character codes 0 - 127
blank | space or tab only
cntrl | control characters
digit | decimal digits (same as \d)
graph | printing characters, excluding space
lower | lower case letters
print | printing characters, including space
punct | printing characters, excluding letters and digits
space | white space (not quite the same as \s)
upper | upper case letters
word | "word" characters (same as \w)
xdigit | hexadecimal digits
The space characters are HT (9), LF (10), VT (11), FF (12), CR (13), and space (32). Notice that this list includes the VT character (code 11). This makes "space" different to \s, which does not include VT (for Perl compatibility).

The name word is a Perl extension, and blank is a GNU extension from Perl 5.8. Another Perl extension is negation, which is indicated by a ^ character after the colon. For example, [12[:^digit:]] matches "1", "2", or any non-digit.

In UTF-8 mode, characters with values greater than 128 do not match any of the POSIX character classes.

Dot
Alternation
PCRE regex syntax


Alternation

Vertical bar characters are used to separate alternative patterns. For example, the pattern gilbert|sullivan matches either "gilbert" or "sullivan". Any number of alternatives may appear, and an empty alternative is permitted (matching the empty string). The matching process tries each alternative in turn, from left to right, and the first one that succeeds is used. If the alternatives are within a subpattern (defined below), "succeeds" means matching the rest of the main pattern as well as the alternative in the subpattern.

Character classes
Internal option setting
PCRE regex syntax


Internal option setting

The settings of PCRE_CASELESS, PCRE_MULTILINE, PCRE_DOTALL, PCRE_UNGREEDY, PCRE_EXTRA, PCRE_EXTENDED and PCRE_DUPNAMES can be changed from within the pattern by a sequence of Perl option letters enclosed between "(?" and ")". The option letters are:

Internal option letters
i | for PCRE_CASELESS
m | for PCRE_MULTILINE
s | for PCRE_DOTALL
x | for PCRE_EXTENDED
U | for PCRE_UNGREEDY
X | for PCRE_EXTRA
J | for PCRE_INFO_JCHANGED

For example, (?im) sets case-insensitive (caseless), multiline matching. It is also possible to unset these options by preceding the letter with a hyphen, and a combined setting and unsetting such as (?im-sx), which sets PCRE_CASELESS and PCRE_MULTILINE while unsetting PCRE_DOTALL and PCRE_EXTENDED, is also permitted. If a letter appears both before and after the hyphen, the option is unset.

When an option change occurs at top level (that is, not inside subpattern parentheses), the change applies to the remainder of the pattern that follows. So /ab(?i)c/ matches only "abc" and "abC".

If an option change occurs inside a subpattern, the effect is different. This is a change of behaviour in Perl 5.005. An option change inside a subpattern affects only that part of the subpattern that follows it, so (a(?i)b)c matches abc and aBc and no other strings (assuming PCRE_CASELESS is not used). By this means, options can be made to have different settings in different parts of the pattern. Any changes made in one alternative do carry on into subsequent branches within the same subpattern. For example, (a(?i)b|c) matches "ab", "aB", "c", and "C", even though when matching "C" the first branch is abandoned before the option setting. This is because the effects of option settings happen at compile time. There would be some very weird behaviour otherwise.

The PCRE-specific options PCRE_UNGREEDY and PCRE_EXTRA can be changed in the same way as the Perl-compatible options by using the characters U and X respectively. The (?X) flag setting is special in that it must always occur earlier in the pattern than any of the additional features it turns on, even when it is at top level. It is best put at the start.

Alternation
Subpatterns
PCRE regex syntax


Subpatterns

Subpatterns are delimited by parentheses (round brackets), which can be nested. Marking part of a pattern as a subpattern does two things:

  1. It localizes a set of alternatives. For example, the pattern cat(aract|erpillar|) matches one of the words "cat", "cataract", or "caterpillar". Without the parentheses, it would match "cataract", "erpillar" or the empty string.

  2. It sets up the subpattern as a capturing subpattern (as defined above). When the whole pattern matches, that portion of the subject string that matched the subpattern is passed back to the caller via the ovector argument of pcre_exec(). Opening parentheses are counted from left to right (starting from 1) to obtain the numbers of the capturing subpatterns.

For example, if the string "the red king" is matched against the pattern the ((red|white) (king|queen)) the captured substrings are "red king", "red", and "king", and are numbered 1, 2, and 3.

The fact that plain parentheses fulfill two functions is not always helpful. There are often times when a grouping subpattern is required without a capturing requirement. If an opening parenthesis is followed by "?:", the subpattern does not do any capturing, and is not counted when computing the number of any subsequent capturing subpatterns. For example, if the string "the white queen" is matched against the pattern the ((?:red|white) (king|queen)) the captured substrings are "white queen" and "queen", and are numbered 1 and 2. The maximum number of captured substrings is 99, and the maximum number of all subpatterns, both capturing and non-capturing, is 200.

As a convenient shorthand, if any option settings are required at the start of a non-capturing subpattern, the option letters may appear between the "?" and the ":". Thus the two patterns

(?i:saturday|sunday)
(?:(?i)saturday|sunday)

match exactly the same set of strings. Because alternative branches are tried from left to right, and options are not reset until the end of the subpattern is reached, an option setting in one branch does affect subsequent branches, so the above patterns match "SUNDAY" as well as "Saturday".

It is possible to name a subpattern using the syntax (?P<name>pattern). This subpattern will then be indexed in the matches array by its normal numeric position and also by name. PHP 5.2.2 introduced two alternative syntaxes (?<name>pattern) and (?'name'pattern).

Sometimes it is necessary to have multiple matching, but alternating subgroups in a regular expression. Normally, each of these would be given their own backreference number even though only one of them would ever possibly match. To overcome this, the (?| syntax allows having duplicate numbers. Consider the following regex matched against the string Sunday:

(?:(Sat)ur|(Sun))day

Here Sun is stored in backreference 2, while backreference 1 is empty. Matching yields Sat in backreference 1 while backreference 2 does not exist. Changing the pattern to use the (?| fixes this problem:

(?|(Sat)ur|(Sun))day

Using this pattern, both Sun and Sat would be stored in backreference 1.

Internal option setting
Repetition
PCRE regex syntax


Repetition

Repetition is specified by quantifiers, which can follow any of the following items:

  • a single character, possibly escaped
  • the . metacharacter
  • a character class
  • a back reference (see next section)
  • a parenthesized subpattern (unless it is an assertion - see below)

The general repetition quantifier specifies a minimum and maximum number of permitted matches, by giving the two numbers in curly brackets (braces), separated by a comma. The numbers must be less than 65536, and the first must be less than or equal to the second. For example: z{2,4} matches "zz", "zzz", or "zzzz". A closing brace on its own is not a special character. If the second number is omitted, but the comma is present, there is no upper limit; if the second number and the comma are both omitted, the quantifier specifies an exact number of required matches. Thus [aeiou]{3,} matches at least 3 successive vowels, but may match many more, while \d{8} matches exactly 8 digits. An opening curly bracket that appears in a position where a quantifier is not allowed, or one that does not match the syntax of a quantifier, is taken as a literal character. For example, {,6} is not a quantifier, but a literal string of four characters.

The quantifier {0} is permitted, causing the expression to behave as if the previous item and the quantifier were not present.

For convenience (and historical compatibility) the three most common quantifiers have single-character abbreviations:

Single-character quantifiers
* | equivalent to {0,}
+ | equivalent to {1,}
? | equivalent to {0,1}

It is possible to construct infinite loops by following a subpattern that can match no characters with a quantifier that has no upper limit, for example: (a?)*

Earlier versions of Perl and PCRE used to give an error at compile time for such patterns. However, because there are cases where this can be useful, such patterns are now accepted, but if any repetition of the subpattern does in fact match no characters, the loop is forcibly broken.

By default, the quantifiers are "greedy", that is, they match as much as possible (up to the maximum number of permitted times), without causing the rest of the pattern to fail. The classic example of where this gives problems is in trying to match comments in C programs. These appear between the sequences /* and */ and within the sequence, individual * and / characters may appear. An attempt to match C comments by applying the pattern /\*.*\*/ to the string /* first comment */ not comment /* second comment */ fails, because it matches the entire string due to the greediness of the .* item.

However, if a quantifier is followed by a question mark, then it becomes lazy, and instead matches the minimum number of times possible, so the pattern /\*.*?\*/ does the right thing with the C comments. The meaning of the various quantifiers is not otherwise changed, just the preferred number of matches. Do not confuse this use of question mark with its use as a quantifier in its own right. Because it has two uses, it can sometimes appear doubled, as in \d??\d which matches one digit by preference, but can match two if that is the only way the rest of the pattern matches.

If the PCRE_UNGREEDY option is set (an option which is not available in Perl) then the quantifiers are not greedy by default, but individual ones can be made greedy by following them with a question mark. In other words, it inverts the default behaviour.

Quantifiers followed by + are "possessive". They eat as many characters as possible and don't return to match the rest of the pattern. Thus .*abc matches "aabc" but .*+abc doesn't because .*+ eats the whole string. Possessive quantifiers can be used to speed up processing.

When a parenthesized subpattern is quantified with a minimum repeat count that is greater than 1 or with a limited maximum, more store is required for the compiled pattern, in proportion to the size of the minimum or maximum.

If a pattern starts with .* or .{0,} and the PCRE_DOTALL option (equivalent to Perl's /s) is set, thus allowing the . to match newlines, then the pattern is implicitly anchored, because whatever follows will be tried against every character position in the subject string, so there is no point in retrying the overall match at any position after the first. PCRE treats such a pattern as though it were preceded by \A. In cases where it is known that the subject string contains no newlines, it is worth setting PCRE_DOTALL when the pattern begins with .* in order to obtain this optimization, or alternatively using ^ to indicate anchoring explicitly.

When a capturing subpattern is repeated, the value captured is the substring that matched the final iteration. For example, after (tweedle[dume]{3}\s*)+ has matched "tweedledum tweedledee" the value of the captured substring is "tweedledee". However, if there are nested capturing subpatterns, the corresponding captured values may have been set in previous iterations. For example, after /(a|(b))+/ matches "aba" the value of the second captured substring is "b".

Subpatterns
Back references
PCRE regex syntax


Back references

Outside a character class, a backslash followed by a digit greater than 0 (and possibly further digits) is a back reference to a capturing subpattern earlier (i.e. to its left) in the pattern, provided there have been that many previous capturing left parentheses.

However, if the decimal number following the backslash is less than 10, it is always taken as a back reference, and causes an error only if there are not that many capturing left parentheses in the entire pattern. In other words, the parentheses that are referenced need not be to the left of the reference for numbers less than 10. A "forward back reference" can make sense when a repetition is involved and the subpattern to the right has participated in an earlier iteration. See the section entitled "Backslash" above for further details of the handling of digits following a backslash.

A back reference matches whatever actually matched the capturing subpattern in the current subject string, rather than anything matching the subpattern itself. So the pattern (sens|respons)e and \1ibility matches "sense and sensibility" and "response and responsibility", but not "sense and responsibility". If case-sensitive (caseful) matching is in force at the time of the back reference, then the case of letters is relevant. For example, ((?i)rah)\s+\1 matches "rah rah" and "RAH RAH", but not "RAH rah", even though the original capturing subpattern is matched case-insensitively (caselessly).

There may be more than one back reference to the same subpattern. If a subpattern has not actually been used in a particular match, then any back references to it always fail. For example, the pattern (a|(bc))\2 always fails if it starts to match "a" rather than "bc". Because there may be up to 99 back references, all digits following the backslash are taken as part of a potential back reference number. If the pattern continues with a digit character, then some delimiter must be used to terminate the back reference. If the PCRE_EXTENDED option is set, this can be whitespace. Otherwise an empty comment can be used.

A back reference that occurs inside the parentheses to which it refers fails when the subpattern is first used, so, for example, (a\1) never matches. However, such references can be useful inside repeated subpatterns. For example, the pattern (a|b\1)+ matches any number of "a"s and also "aba", "ababba" etc. At each iteration of the subpattern, the back reference matches the character string corresponding to the previous iteration. In order for this to work, the pattern must be such that the first iteration does not need to match the back reference. This can be done using alternation, as in the example above, or by a quantifier with a minimum of zero.

As of PHP 5.2.2, the \g escape sequence can be used for absolute and relative referencing of subpatterns. This escape sequence must be followed by an unsigned number or a negative number, optionally enclosed in braces. The sequences \1, \g1 and \g{1} are synonymous with one another. The use of this pattern with an unsigned number can help remove the ambiguity inherent when using digits following a backslash. The sequence helps to distinguish back references from octal characters and also makes it easier to have a back reference followed by a literal number, e.g. \g{2}1.

The use of the \g sequence with a negative number signifies a relative reference. For example, (foo)(bar)\g{-1} would match the sequence "foobarbar" and (foo)(bar)\g{-2} matches "foobarfoo". This can be useful in long patterns as an alternative to keeping track of the number of subpatterns in order to reference a specific previous subpattern.

Back references to the named subpatterns can be achieved by (?P=name) or, since PHP 5.2.2, also by \k<name> or \k'name'. Additionally PHP 5.2.4 added support for \k{name} and \g{name}.

Repetition
Assertions
PCRE regex syntax


Assertions

An assertion is a test on the characters following or preceding the current matching point that does not actually consume any characters. The simple assertions coded as \b, \B, \A, \Z, \z, ^ and $ are described above. More complicated assertions are coded as subpatterns. There are two kinds: those that look ahead of the current position in the subject string, and those that look behind it.

An assertion subpattern is matched in the normal way, except that it does not cause the current matching position to be changed. Lookahead assertions start with (?= for positive assertions and (?! for negative assertions. For example, \w+(?=;) matches a word followed by a semicolon, but does not include the semicolon in the match, and foo(?!bar) matches any occurrence of "foo" that is not followed by "bar". Note that the apparently similar pattern (?!foo)bar does not find an occurrence of "bar" that is preceded by something other than "foo"; it finds any occurrence of "bar" whatsoever, because the assertion (?!foo) is always TRUE when the next three characters are "bar". A lookbehind assertion is needed to achieve this effect.

Lookbehind assertions start with (?<= for positive assertions and (?<! for negative assertions. For example, (?<!foo)bar does find an occurrence of "bar" that is not preceded by "foo". The contents of a lookbehind assertion are restricted such that all the strings it matches must have a fixed length. However, if there are several alternatives, they do not all have to have the same fixed length. Thus (?<=bullock|donkey) is permitted, but (?<!dogs?|cats?) causes an error at compile time. Branches that match different length strings are permitted only at the top level of a lookbehind assertion. This is an extension compared with Perl 5.005, which requires all branches to match the same length of string. An assertion such as (?<=ab(c|de)) is not permitted, because its single top-level branch can match two different lengths, but it is acceptable if rewritten to use two top-level branches: (?<=abc|abde) The implementation of lookbehind assertions is, for each alternative, to temporarily move the current position back by the fixed width and then try to match. If there are insufficient characters before the current position, the match is deemed to fail. Lookbehinds in conjunction with once-only subpatterns can be particularly useful for matching at the ends of strings; an example is given at the end of the section on once-only subpatterns.

Several assertions (of any sort) may occur in succession. For example, (?<=\d{3})(?<!999)foo matches "foo" preceded by three digits that are not "999". Notice that each of the assertions is applied independently at the same point in the subject string. First there is a check that the previous three characters are all digits, then there is a check that the same three characters are not "999". This pattern does not match "foo" preceded by six characters, the first of which are digits and the last three of which are not "999". For example, it doesn't match "123abcfoo". A pattern to do that is (?<=\d{3}...)(?<!999)foo

This time the first assertion looks at the preceding six characters, checking that the first three are digits, and then the second assertion checks that the preceding three characters are not "999".

Assertions can be nested in any combination. For example, (?<=(?<!foo)bar)baz matches an occurrence of "baz" that is preceded by "bar" which in turn is not preceded by "foo", while (?<=\d{3}...(?<!999))foo is another pattern which matches "foo" preceded by three digits and any three characters that are not "999".

Assertion subpatterns are not capturing subpatterns, and may not be repeated, because it makes no sense to assert the same thing several times. If any kind of assertion contains capturing subpatterns within it, these are counted for the purposes of numbering the capturing subpatterns in the whole pattern. However, substring capturing is carried out only for positive assertions, because it does not make sense for negative assertions.

Assertions count towards the maximum of 200 parenthesized subpatterns.

Back references
Once-only subpatterns
PCRE regex syntax


Once-only subpatterns

With both maximizing and minimizing repetition, failure of what follows normally causes the repeated item to be re-evaluated to see if a different number of repeats allows the rest of the pattern to match. Sometimes it is useful to prevent this, either to change the nature of the match, or to cause it fail earlier than it otherwise might, when the author of the pattern knows there is no point in carrying on.

Consider, for example, the pattern \d+foo when applied to the subject line 123456bar

After matching all 6 digits and then failing to match "foo", the normal action of the matcher is to try again with only 5 digits matching the \d+ item, and then with 4, and so on, before ultimately failing. Once-only subpatterns provide the means for specifying that once a portion of the pattern has matched, it is not to be re-evaluated in this way, so the matcher would give up immediately on failing to match "foo" the first time. The notation is another kind of special parenthesis, starting with (?> as in this example: (?>\d+)bar

This kind of parenthesis "locks up" the part of the pattern it contains once it has matched, and a failure further into the pattern is prevented from backtracking into it. Backtracking past it to previous items, however, works as normal.

An alternative description is that a subpattern of this type matches the string of characters that an identical standalone pattern would match, if anchored at the current point in the subject string.

Once-only subpatterns are not capturing subpatterns. Simple cases such as the above example can be thought of as a maximizing repeat that must swallow everything it can. So, while both \d+ and \d+? are prepared to adjust the number of digits they match in order to make the rest of the pattern match, (?>\d+) can only match an entire sequence of digits.

This construction can of course contain arbitrarily complicated subpatterns, and it can be nested.

Once-only subpatterns can be used in conjunction with look-behind assertions to specify efficient matching at the end of the subject string. Consider a simple pattern such as abcd$ when applied to a long string which does not match. Because matching proceeds from left to right, PCRE will look for each "a" in the subject and then see if what follows matches the rest of the pattern. If the pattern is specified as ^.*abcd$ then the initial .* matches the entire string at first, but when this fails (because there is no following "a"), it backtracks to match all but the last character, then all but the last two characters, and so on. Once again the search for "a" covers the entire string, from right to left, so we are no better off. However, if the pattern is written as ^(?>.*)(?<=abcd) then there can be no backtracking for the .* item; it can match only the entire string. The subsequent lookbehind assertion does a single test on the last four characters. If it fails, the match fails immediately. For long strings, this approach makes a significant difference to the processing time.

When a pattern contains an unlimited repeat inside a subpattern that can itself be repeated an unlimited number of times, the use of a once-only subpattern is the only way to avoid some failing matches taking a very long time indeed. The pattern (\D+|<\d+>)*[!?] matches an unlimited number of substrings that either consist of non-digits, or digits enclosed in <>, followed by either ! or ?. When it matches, it runs quickly. However, if it is applied to aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa it takes a long time before reporting failure. This is because the string can be divided between the two repeats in a large number of ways, and all have to be tried. (The example used [!?] rather than a single character at the end, because both PCRE and Perl have an optimization that allows for fast failure when a single character is used. They remember the last single character that is required for a match, and fail early if it is not present in the string.) If the pattern is changed to ((?>\D+)|<\d+>)*[!?] sequences of non-digits cannot be broken, and failure happens quickly.

Assertions
Conditional subpatterns
PCRE regex syntax


Conditional subpatterns

It is possible to cause the matching process to obey a subpattern conditionally or to choose between two alternative subpatterns, depending on the result of an assertion, or whether a previous capturing subpattern matched or not. The two possible forms of conditional subpattern are

(?(condition)yes-pattern)
(?(condition)yes-pattern|no-pattern)

If the condition is satisfied, the yes-pattern is used; otherwise the no-pattern (if present) is used. If there are more than two alternatives in the subpattern, a compile-time error occurs.

There are two kinds of condition. If the text between the parentheses consists of a sequence of digits, then the condition is satisfied if the capturing subpattern of that number has previously matched. Consider the following pattern, which contains non-significant white space to make it more readable (assume the PCRE_EXTENDED option) and to divide it into three parts for ease of discussion: ( \( )? [^()]+ (?(1) \) )

The first part matches an optional opening parenthesis, and if that character is present, sets it as the first captured substring. The second part matches one or more characters that are not parentheses. The third part is a conditional subpattern that tests whether the first set of parentheses matched or not. If they did, that is, if subject started with an opening parenthesis, the condition is TRUE, and so the yes-pattern is executed and a closing parenthesis is required. Otherwise, since no-pattern is not present, the subpattern matches nothing. In other words, this pattern matches a sequence of non-parentheses, optionally enclosed in parentheses.

If the condition is the string (R), it is satisfied if a recursive call to the pattern or subpattern has been made. At "top level", the condition is false.

If the condition is not a sequence of digits or (R), it must be an assertion. This may be a positive or negative lookahead or lookbehind assertion. Consider this pattern, again containing non-significant white space, and with the two alternatives on the second line:

(?(?=[^a-z]*[a-z])
\d{2}-[a-z]{3}-\d{2}  |  \d{2}-\d{2}-\d{2} )

The condition is a positive lookahead assertion that matches an optional sequence of non-letters followed by a letter. In other words, it tests for the presence of at least one letter in the subject. If a letter is found, the subject is matched against the first alternative; otherwise it is matched against the second. This pattern matches strings in one of the two forms dd-aaa-dd or dd-dd-dd, where aaa are letters and dd are digits.

Once-only subpatterns
Comments
PCRE regex syntax


Comments

The sequence (?# marks the start of a comment which continues up to the next closing parenthesis. Nested parentheses are not permitted. The characters that make up a comment play no part in the pattern matching at all.

If the PCRE_EXTENDED option is set, an unescaped # character outside a character class introduces a comment that continues up to the next newline character in the pattern.

Conditional subpatterns
Recursive patterns
PCRE regex syntax


Recursive patterns

Consider the problem of matching a string in parentheses, allowing for unlimited nested parentheses. Without the use of recursion, the best that can be done is to use a pattern that matches up to some fixed depth of nesting. It is not possible to handle an arbitrary nesting depth. Perl 5.6 has provided an experimental facility that allows regular expressions to recurse (among other things). The special item (?R) is provided for the specific case of recursion. This PCRE pattern solves the parentheses problem (assume the PCRE_EXTENDED option is set so that white space is ignored): \( ( (?>[^()]+) | (?R) )* \)

First it matches an opening parenthesis. Then it matches any number of substrings which can either be a sequence of non-parentheses, or a recursive match of the pattern itself (i.e. a correctly parenthesized substring). Finally there is a closing parenthesis.

This particular example pattern contains nested unlimited repeats, and so the use of a once-only subpattern for matching strings of non-parentheses is important when applying the pattern to strings that do not match. For example, when it is applied to (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa() it yields "no match" quickly. However, if a once-only subpattern is not used, the match runs for a very long time indeed because there are so many different ways the + and * repeats can carve up the subject, and all have to be tested before failure can be reported.

The values set for any capturing subpatterns are those from the outermost level of the recursion at which the subpattern value is set. If the pattern above is matched against (ab(cd)ef) the value for the capturing parentheses is "ef", which is the last value taken on at the top level. If additional parentheses are added, giving \( ( ( (?>[^()]+) | (?R) )* ) \) then the string they capture is "ab(cd)ef", the contents of the top level parentheses. If there are more than 15 capturing parentheses in a pattern, PCRE has to obtain extra memory to store data during a recursion, which it does by using pcre_malloc, freeing it via pcre_free afterwards. If no memory can be obtained, it saves data for the first 15 capturing parentheses only, as there is no way to give an out-of-memory error from within a recursion.

(?1), (?2) and so on can be used for recursive subpatterns too. It is also possible to use named subpatterns: (?P>name) or (?P&name).

If the syntax for a recursive subpattern reference (either by number or by name) is used outside the parentheses to which it refers, it operates like a subroutine in a programming language. An earlier example pointed out that the pattern (sens|respons)e and \1ibility matches "sense and sensibility" and "response and responsibility", but not "sense and responsibility". If instead the pattern (sens|respons)e and (?1)ibility is used, it does match "sense and responsibility" as well as the other two strings. Such references must, however, follow the subpattern to which they refer.

The maximum length of a subject string is the largest positive number that an integer variable can hold. However, PCRE uses recursion to handle subpatterns and indefinite repetition. This means that the available stack space may limit the size of a subject string that can be processed by certain patterns.

Comments
Performance
PCRE regex syntax


Performance

Certain items that may appear in patterns are more efficient than others. It is more efficient to use a character class like [aeiou] than a set of alternatives such as (a|e|i|o|u). In general, the simplest construction that provides the required behaviour is usually the most efficient. Jeffrey Friedl's book contains a lot of discussion about optimizing regular expressions for efficient performance.

When a pattern begins with .* and the PCRE_DOTALL option is set, the pattern is implicitly anchored by PCRE, since it can match only at the start of a subject string. However, if PCRE_DOTALL is not set, PCRE cannot make this optimization, because the . metacharacter does not then match a newline, and if the subject string contains newlines, the pattern may match from the character immediately following one of them instead of from the very start. For example, the pattern (.*) second matches the subject "first\nand second" (where \n stands for a newline character) with the first captured substring being "and". In order to do this, PCRE has to retry the match starting after every newline in the subject.

If you are using such a pattern with subject strings that do not contain newlines, the best performance is obtained by setting PCRE_DOTALL, or starting the pattern with ^.* to indicate explicit anchoring. That saves PCRE from having to scan along the subject looking for a newline to restart at.

Beware of patterns that contain nested indefinite repeats. These can take a long time to run when applied to a string that does not match. Consider the pattern fragment (a+)*

This can match "aaaa" in 33 different ways, and this number increases very rapidly as the string gets longer. (The * repeat can match 0, 1, 2, 3, or 4 times, and for each of those cases other than 0, the + repeats can match different numbers of times.) When the remainder of the pattern is such that the entire match is going to fail, PCRE has in principle to try every possible variation, and this can take an extremely long time.

An optimization catches some of the more simple cases such as (a+)*b where a literal character follows. Before embarking on the standard matching procedure, PCRE checks that there is a "b" later in the subject string, and if there is not, it fails the match immediately. However, when there is no following literal this optimization cannot be used. You can see the difference by comparing the behaviour of (a+)*\d with the pattern above. The former gives a failure almost instantly when applied to a whole line of "a" characters, whereas the latter takes an appreciable time with strings longer than about 20 characters.

Recursive patterns
Funções da PCRE
PCRE regex syntax


Funções da PCRE

Índice

  • preg_filter — Perform a regular expression search and replace
  • preg_grep — Retorna as entradas do array que combinaram com o padrão
  • preg_last_error — Retorna o código de erro da última regex PCRE executada
  • preg_match_all — Perform a global regular expression match
  • preg_match — Perform a regular expression match
  • preg_quote — Adiciona escape em caracteres da expressão regular
  • preg_replace_callback — Executa uma busca usando expressão regular e modifica usando um callback
  • preg_replace — Perform a regular expression search and replace
  • preg_split — Divide a string por uma expressão regular
Performance
preg_filter
PCRE


Perform a regular expression search and replace

Funções da PCRE
preg_grep
Funções da PCRE
PHP Manual

preg_filter

(PHP 5 >= 5.3.0)

preg_filter — Perform a regular expression search and replace

Descrição

mixed preg_filter ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

preg_filter() is identical to preg_replace() except it only returns the (possibly transformed) subjects where there was a match. For details about how this function works, read the preg_replace() documentation.

Valor Retornado

Returns an array if the subject parameter is an array, or a string otherwise.

If no matches are found or an error occurred, an empty array is returned when subject is an array or NULL otherwise.

Exemplos

Exemplo #1 Example comparing preg_filter() with preg_replace()

<?php
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4');
$pattern = array('/\d/', '/[a-z]/', '/[1a]/');
$replace = array('A:$0', 'B:$0', 'C:$0');

echo "preg_filter returns\n";
print_r(preg_filter($pattern, $replace, $subject));

echo "preg_replace returns\n";
print_r(preg_replace($pattern, $replace, $subject));
?>

O exemplo acima irá imprimir:

preg_filter returns
Array
(
    [0] => A:C:1
    [1] => B:C:a
    [2] => A:2
    [3] => B:b
    [4] => A:3
    [7] => A:4
)
preg_replace returns
Array
(
    [0] => A:C:1
    [1] => B:C:a
    [2] => A:2
    [3] => B:b
    [4] => A:3
    [5] => A
    [6] => B
    [7] => A:4
)

Veja Também

  • PCRE Patterns
  • preg_replace() - Perform a regular expression search and replace
  • preg_replace_callback() - Executa uma busca usando expressão regular e modifica usando um callback
  • preg_grep() - Retorna as entradas do array que combinaram com o padrão
  • preg_last_error() - Retorna o código de erro da última regex PCRE executada

Funções da PCRE
preg_grep
Funções da PCRE


Retorna as entradas do array que combinaram com o padrão

preg_filter
preg_last_error
Funções da PCRE
PHP Manual

preg_grep

(PHP 4, PHP 5)

preg_grep — Retorna as entradas do array que combinaram com o padrão

Descrição

array preg_grep ( string $pattern , array $input [, int $flags ] )

Retorna o array consistindo dos elementos do array de input que combinaram com o dado pattern.

Parâmetros

pattern

A string do padrão.

input

O array de entrada.

flags

Se usado PREG_GREP_INVERT, esta função retorna os elementos do array de entrada que não casam com o dado pattern.

Valor Retornado

Retorna um array indexado usando a chave do array de input.

Histórico

Versão | Descrição
4.2.0 | O parâmetro flags foi adicionado.
4.0.4 | Antes desta versão, o array retornado era indexado diferente das chaves do array de input. Se você quer reproduzir o antigo comportamento, use array_values() no array retornado para reindexar os valores.

Exemplos

Exemplo #1 Exemplo da preg_grep()

<?php
// retorna todos os elementos do array
// contendo números de ponto flutuante
$fl_array = preg_grep("/^(\d+)?\.\d+$/", $array);
?>

preg_filter
preg_last_error
Funções da PCRE


Retorna o código de erro da última regex PCRE executada

preg_grep
preg_match_all
Funções da PCRE
PHP Manual

preg_last_error

(PHP 5 >= 5.2.0)

preg_last_error — Retorna o código de erro da última regex PCRE executada

Descrição

int preg_last_error ( void )

Retorna o código de erro da última regex PCRE executada.

Exemplo #1 Exemplo da preg_last_error()

<?php

preg_match('/(?:\D+|<\d+>)*[!?]/', 'foobar foobar foobar');

if (preg_last_error() == PREG_BACKTRACK_LIMIT_ERROR) {
    print 'Backtrack limit was exhausted!';
}

?>

O exemplo acima irá imprimir:

Backtrack limit was exhausted!

Valor Retornado

Retorna uma das seguintes constantes (explicadas nessa outra página):

  • PREG_NO_ERROR
  • PREG_INTERNAL_ERROR
  • PREG_BACKTRACK_LIMIT_ERROR (veja também pcre.backtrack_limit)
  • PREG_RECURSION_LIMIT_ERROR (veja também pcre.recursion_limit)
  • PREG_BAD_UTF8_ERROR
  • PREG_BAD_UTF8_OFFSET_ERROR (desde o PHP 5.3.0)

preg_grep
preg_match_all
Funções da PCRE


Perform a global regular expression match

preg_last_error
preg_match
Funções da PCRE
PHP Manual

preg_match_all

(PHP 4, PHP 5)

preg_match_all — Perform a global regular expression match

Descrição

int preg_match_all ( string $pattern , string $subject , array &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ]] )

Searches subject for all matches to the regular expression given in pattern and puts them in matches in the order specified by flags.

After the first match is found, the subsequent searches are continued on from end of the last match.

Parâmetros

pattern

The pattern to search for, as a string.

subject

The input string.

matches

Array of all matches in multi-dimensional array ordered according to flags.

flags

Can be a combination of the following flags (note that it doesn't make sense to use PREG_PATTERN_ORDER together with PREG_SET_ORDER):

PREG_PATTERN_ORDER

Orders results so that $matches[0] is an array of full pattern matches, $matches[1] is an array of strings matched by the first parenthesized subpattern, and so on.

<?php
preg_match_all("|<[^>]+>(.*)</[^>]+>|U",
    "<b>example: </b><div align=left>this is a test</div>",
    $out, PREG_PATTERN_ORDER);
echo $out[0][0] . ", " . $out[0][1] . "\n";
echo $out[1][0] . ", " . $out[1][1] . "\n";
?>

O exemplo acima irá imprimir:

<b>example: </b>, <div align=left>this is a test</div>
example: , this is a test

So, $out[0] contains array of strings that matched full pattern, and $out[1] contains array of strings enclosed by tags.

PREG_SET_ORDER

Orders results so that $matches[0] is an array of first set of matches, $matches[1] is an array of second set of matches, and so on.

<?php
preg_match_all("|<[^>]+>(.*)</[^>]+>|U",
    "<b>example: </b><div align=\"left\">this is a test</div>",
    $out, PREG_SET_ORDER);
echo $out[0][0] . ", " . $out[0][1] . "\n";
echo $out[1][0] . ", " . $out[1][1] . "\n";
?>

O exemplo acima irá imprimir:

<b>example: </b>, example:
<div align="left">this is a test</div>, this is a test

PREG_OFFSET_CAPTURE

If this flag is passed, for every occurring match the appendant string offset will also be returned. Note that this changes the value of matches into an array where every element is an array consisting of the matched string at offset 0 and its string offset into subject at offset 1.

If no order flag is given, PREG_PATTERN_ORDER is assumed.

offset

Normally, the search starts from the beginning of the subject string. The optional parameter offset can be used to specify the alternate place from which to start the search (in bytes).

Nota:

Using offset is not equivalent to passing substr($subject, $offset) to preg_match_all() in place of the subject string, because pattern can contain assertions such as ^, $ or (?<=x). See preg_match() for examples.

Valor Retornado

Returns the number of full pattern matches (which might be zero), or FALSE if an error occurred.

Histórico

Versão | Descrição
5.4.0 | The matches parameter became optional.
5.2.2 | Named subpatterns now accept the syntax (?<name>) and (?'name') as well as (?P<name>). Previous versions accepted only (?P<name>).
4.3.3 | The offset parameter was added
4.3.0 | The PREG_OFFSET_CAPTURE flag was added

Exemplos

Exemplo #1 Getting all phone numbers out of some text.

<?php
preg_match_all("/\(?  (\d{3})?  \)?  (?(1)  [\-\s] ) \d{3}-\d{4}/x",
                "Call 555-1212 or 1-800-555-1212", $phones);
?>

Exemplo #2 Find matching HTML tags (greedy)

<?php
// The \\2 is an example of backreferencing. This tells pcre that
// it must match the second set of parentheses in the regular expression
// itself, which would be the ([\w]+) in this case. The extra backslash is
// required because the string is in double quotes.
$html = "<b>bold text</b><a href=howdy.html>click me</a>";

preg_match_all("/(<([\w]+)[^>]*>)(.*?)(<\/\\2>)/", $html, $matches, PREG_SET_ORDER);

foreach ($matches as $val) {
    echo "matched: " . $val[0] . "\n";
    echo "part 1: " . $val[1] . "\n";
    echo "part 2: " . $val[2] . "\n";
    echo "part 3: " . $val[3] . "\n";
    echo "part 4: " . $val[4] . "\n\n";
}
?>

O exemplo acima irá imprimir:

matched: <b>bold text</b>
part 1: <b>
part 2: b
part 3: bold text
part 4: </b>

matched: <a href=howdy.html>click me</a>
part 1: <a href=howdy.html>
part 2: a
part 3: click me
part 4: </a>

Exemplo #3 Using named subpattern

<?php

$str = <<<FOO
a: 1
b: 2
c: 3
FOO;

preg_match_all('/(?P<name>\w+): (?P<digit>\d+)/', $str, $matches);

/* This also works in PHP 5.2.2 (PCRE 7.0) and later, however
 * the above form is recommended for backwards compatibility */
// preg_match_all('/(?<name>\w+): (?<digit>\d+)/', $str, $matches);

print_r($matches);

?>

O exemplo acima irá imprimir:

Array
(
    [0] => Array
        (
            [0] => a: 1
            [1] => b: 2
            [2] => c: 3
        )

    [name] => Array
        (
            [0] => a
            [1] => b
            [2] => c
        )

    [1] => Array
        (
            [0] => a
            [1] => b
            [2] => c
        )

    [digit] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [2] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

)

Veja Também

  • PCRE Patterns
  • preg_match() - Perform a regular expression match
  • preg_replace() - Perform a regular expression search and replace
  • preg_split() - Divide a string por uma expressão regular
  • preg_last_error() - Retorna o código de erro da última regex PCRE executada

preg_last_error
preg_match
Funções da PCRE


Perform a regular expression match

preg_match_all
preg_quote
Funções da PCRE
PHP Manual

preg_match

(PHP 4, PHP 5)

preg_match — Perform a regular expression match

Descrição

int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )

Searches subject for a match to the regular expression given in pattern.

Parâmetros

pattern

The pattern to search for, as a string.

subject

The input string.

matches

If matches is provided, then it is filled with the results of search. $matches[0] will contain the text that matched the full pattern, $matches[1] will have the text that matched the first captured parenthesized subpattern, and so on.

flags

flags can be the following flag:

PREG_OFFSET_CAPTURE
If this flag is passed, for every occurring match the appendant string offset will also be returned. Note that this changes the value of matches into an array where every element is an array consisting of the matched string at offset 0 and its string offset into subject at offset 1.

offset

Normally, the search starts from the beginning of the subject string. The optional parameter offset can be used to specify the alternate place from which to start the search (in bytes).

Nota:

Using offset is not equivalent to passing substr($subject, $offset) to preg_match() in place of the subject string, because pattern can contain assertions such as ^, $ or (?<=x). Compare:

<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
print_r($matches);
?>

O exemplo acima irá imprimir:

Array
(
)

while this example

<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, substr($subject,3), $matches, PREG_OFFSET_CAPTURE);
print_r($matches);
?>

will produce

Array
(
    [0] => Array
        (
            [0] => def
            [1] => 0
        )

)

Valor Retornado

preg_match() returns the number of times pattern matches. That will be either 0 times (no match) or 1 time because preg_match() will stop searching after the first match. preg_match_all() on the contrary will continue until it reaches the end of subject. preg_match() returns FALSE if an error occurred.

Histórico

Versão | Descrição
5.2.2 | Named subpatterns now accept the syntax (?<name>) and (?'name') as well as (?P<name>). Previous versions accepted only (?P<name>).
4.3.3 | The offset parameter was added
4.3.0 | The PREG_OFFSET_CAPTURE flag was added
4.3.0 | The flags parameter was added

Exemplos

Exemplo #1 Find the string of text "php"

<?php
// The "i" after the pattern delimiter indicates a case-insensitive search
if (preg_match("/php/i", "PHP is the web scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}
?>

Exemplo #2 Find the word "web"

<?php
/* The \b in the pattern indicates a word boundary, so only the distinct
 * word "web" is matched, and not a word partial like "webbing" or "cobweb" */
if (preg_match("/\bweb\b/i", "PHP is the web scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}

if (preg_match("/\bweb\b/i", "PHP is the website scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}
?>

Exemplo #3 Getting the domain name out of a URL

<?php
// get host name from URL
preg_match('@^(?:http://)?([^/]+)@i',
    "http://www.php.net/index.html", $matches);
$host = $matches[1];

// get last two segments of host name
preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "domain name is: {$matches[0]}\n";
?>

O exemplo acima irá imprimir:

domain name is: php.net

Exemplo #4 Using named subpattern

<?php

$str = 'foobar: 2008';

preg_match('/(?P<name>\w+): (?P<digit>\d+)/', $str, $matches);

/* This also works in PHP 5.2.2 (PCRE 7.0) and later, however
 * the above form is recommended for backwards compatibility */
// preg_match('/(?<name>\w+): (?<digit>\d+)/', $str, $matches);

print_r($matches);

?>

O exemplo acima irá imprimir:

Array
(
    [0] => foobar: 2008
    [name] => foobar
    [1] => foobar
    [digit] => 2008
    [2] => 2008
)

Notas

Dica

Do not use preg_match() if you only want to check if one string is contained in another string. Use strpos() or strstr() instead as they will be faster.

Veja Também

  • PCRE Patterns
  • preg_match_all() - Perform a global regular expression match
  • preg_replace() - Perform a regular expression search and replace
  • preg_split() - Divide a string por uma expressão regular
  • preg_last_error() - Retorna o código de erro da última regex PCRE executada

preg_match_all
preg_quote
Funções da PCRE


Adiciona escape em caracteres da expressão regular

preg_match
preg_replace_callback
Funções da PCRE
PHP Manual

preg_quote

(PHP 4, PHP 5)

preg_quote — Adiciona escape em caracteres da expressão regular

Descrição

string preg_quote ( string $str [, string $delimiter ] )

preg_quote() pega str e coloca uma barra invertida antes de cada caractere que é parte da sintaxe da expressão regular. Isto é útil se você tem uma string em run-time que você precisa combinar em algum texto e a string pode conter caracteres especiais de regex.

Os caracteres especiais da expressão regular são . \ + * ? [ ^ ] $ ( ) { } = ! < > | :

Parâmetros

str

A string de entrada.

delimiter

Se o opcional delimiter é especificado, ele também terá escape antecedendo. Isto é útil para adicionar escape em delimitadores que é requerido pelas funções PCRE. A / é o delimitador mais comumente usado.

Valor Retornado

Retorna a string modificada.

Exemplos

Exemplo #1 Exemplo da preg_quote()

<?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords; // returns \$40 for a g3\/400
?>

Exemplo #2 Deixando em itálico uma palavra de um texto

<?php
// In this example, preg_quote($word) is used to keep the
// asterisks from having special meaning to the regular
// expression.

$textbody = "This book is *very* difficult to find.";
$word = "*very*";
$textbody = preg_replace ("/" . preg_quote($word) . "/",
                          "<i>" . $word . "</i>",
                          $textbody);
?>

Notas

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

preg_match
preg_replace_callback
Funções da PCRE


Executa uma busca usando expressão regular e modifica usando um callback

preg_quote
preg_replace
Funções da PCRE
PHP Manual

preg_replace_callback

(PHP 4 >= 4.0.5, PHP 5)

preg_replace_callback — Executa uma busca usando expressão regular e modifica usando um callback

Descrição

mixed preg_replace_callback ( mixed $pattern , callback $callback , mixed $subject [, int $limit [, int &$count ]] )

O comportamento desta função é quase idêntico ao da preg_replace(), exceto pelo fato que ao invés do parâmetro replacement, você deve especificar um callback.

Parâmetros

pattern

A padrão usado para busca. Pode ser tanto uma string como um array de strings.

callback

Um callback que será chamado e passado um array dos elementos combinados na string subject. O callback deve retornar a string substituta.

Você normalmente precisará da função callback para uma preg_replace_callback() somente para isso. Neste caso você pode usar create_function() para declarar uma função anônima como callback dentro da chamada da preg_replace_callback(). Desta forma você tem todas as informações para a chamada no mesmo lugar e não cria desordem com o nome da função do callback não usado em outro lugar.

Exemplo #1 preg_replace_callback() e create_function()

<?php
/* a unix-style command line filter to convert uppercase
 * letters at the beginning of paragraphs to lowercase */
$fp = fopen("php://stdin", "r") or die("can't read stdin");
while (!feof($fp)) {
    $line = fgets($fp);
    $line = preg_replace_callback(
        '|<p>\s*\w|',
        create_function(
            // single quotes are essential here,
            // or alternative escape all $ as \$
            '$matches',
            'return strtolower($matches[0]);'
        ),
        $line
    );
    echo $line;
}
fclose($fp);
?>

subject

A string ou array com strings para procurar e modificar.

limit

O máximo de possíveis modificações para cada padrão em cada string subject. O padrão é -1 (sem limite).

count

Se especificado, esta variável irá ser preenchida com o número de substituições feitas.

Valor Retornado

preg_replace_callback() retorna um array se o parâmetro subject for um array, ou uma string caso contrário.

Se ocorrer combinação, a nova string será retornada, caso contrário subject será retornada inalterável.

Histórico

Versão | Descrição
5.1.0 | O parâmetro count foi adicionado

Exemplos

Exemplo #2 Exemplo da preg_replace_callback()

<?php
// this text was used in 2002
// we want to get this up to date for 2003
$text = "April fools day is 04/01/2002\n";
$text.= "Last christmas was 12/24/2001\n";
// the callback function
function next_year($matches)
{
  // as usual: $matches[0] is the complete match
  // $matches[1] the match for the first subpattern
  // enclosed in '(...)' and so on
  return $matches[1].($matches[2]+1);
}
echo preg_replace_callback(
            "|(\d{2}/\d{2}/)(\d{4})|",
            "next_year",
            $text);

?>

O exemplo acima irá imprimir:

April fools day is 04/01/2003
Last christmas was 12/24/2002

Exemplo #3 preg_replace_callback() usando estrutura recursiva para manipular BB code aninhado

<?php
$input = "plain [indent] deep [indent] deeper [/indent] deep [/indent] plain";

function parseTagsRecursive($input)
{

    $regex = '#\[indent]((?:[^[]|\[(?!/?indent])|(?R))+)\[/indent]#';

    if (is_array($input)) {
        $input = '<div style="margin-left: 10px">'.$input[1].'</div>';
    }

    return preg_replace_callback($regex, 'parseTagsRecursive', $input);
}

$output = parseTagsRecursive($input);

echo $output;
?>

Veja Também

  • preg_replace() - Perform a regular expression search and replace
  • create_function() - Cria uma função anônima (lambda-style)
  • informações sobre o tipo callback

preg_quote
preg_replace
Funções da PCRE


Perform a regular expression search and replace

preg_replace_callback
preg_split
Funções da PCRE
PHP Manual

preg_replace

(PHP 4, PHP 5)

preg_replace — Perform a regular expression search and replace

Descrição

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

Searches subject for matches to pattern and replaces them with replacement.

Parâmetros

pattern

The pattern to search for. It can be either a string or an array with strings.

Several PCRE modifiers are also available, including 'e' (PREG_REPLACE_EVAL), which is specific to this function.

replacement

The string or an array with strings to replace. If this parameter is a string and the pattern parameter is an array, all patterns will be replaced by that string. If both pattern and replacement parameters are arrays, each pattern will be replaced by the replacement counterpart. If there are fewer elements in the replacement array than in the pattern array, any extra patterns will be replaced by an empty string.

replacement may contain references of the form \\n or (since PHP 4.0.4) $n, with the latter form being the preferred one. Every such reference will be replaced by the text captured by the n'th parenthesized pattern. n can be from 0 to 99, and \\0 or $0 refers to the text matched by the whole pattern. Opening parentheses are counted from left to right (starting from 1) to obtain the number of the capturing subpattern. To use backslash in replacement, it must be doubled ("\\\\" PHP string).

When working with a replacement pattern where a backreference is immediately followed by another number (i.e.: placing a literal number immediately after a matched pattern), you cannot use the familiar \\1 notation for your backreference. \\11, for example, would confuse preg_replace() since it does not know whether you want the \\1 backreference followed by a literal 1, or the \\11 backreference followed by nothing. In this case the solution is to use \${1}1. This creates an isolated $1 backreference, leaving the 1 as a literal.

When using the e modifier, this function escapes some characters (namely ', ", \ and NULL) in the strings that replace the backreferences. This is done to ensure that no syntax errors arise from backreference usage with either single or double quotes (e.g. 'strlen(\'$1\')+strlen("$2")'). Make sure you are aware of PHP's string syntax to know exactly how the interpreted string will look.

subject

The string or an array with strings to search and replace.

If subject is an array, then the search and replace is performed on every entry of subject, and the return value is an array as well.

limit

The maximum possible replacements for each pattern in each subject string. Defaults to -1 (no limit).

count

If specified, this variable will be filled with the number of replacements done.

Valor Retornado

preg_replace() returns an array if the subject parameter is an array, or a string otherwise.

If matches are found, the new subject will be returned, otherwise subject will be returned unchanged or NULL if an error occurred.

Histórico

Versão | Descrição
5.1.0 | Added the count parameter
4.0.4 | Added the '$n' form for the replacement parameter
4.0.2 | Added the limit parameter

Exemplos

Exemplo #1 Using backreferences followed by numeric literals

<?php
$string = 'April 15, 2003';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $string);
?>

O exemplo acima irá imprimir:

April1,2003

Exemplo #2 Using indexed arrays with preg_replace()

<?php
$string = 'The quick brown fox jumped over the lazy dog.';
$patterns = array();
$patterns[0] = '/quick/';
$patterns[1] = '/brown/';
$patterns[2] = '/fox/';
$replacements = array();
$replacements[2] = 'bear';
$replacements[1] = 'black';
$replacements[0] = 'slow';
echo preg_replace($patterns, $replacements, $string);
?>

O exemplo acima irá imprimir:

The bear black slow jumped over the lazy dog.

By ksorting patterns and replacements, we should get what we wanted.

<?php
ksort($patterns);
ksort($replacements);
echo preg_replace($patterns, $replacements, $string);
?>

O exemplo acima irá imprimir:

The slow black bear jumped over the lazy dog.

Exemplo #3 Replacing several values

<?php
$patterns = array ('/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/',
                   '/^\s*{(\w+)}\s*=/');
$replace = array ('\3/\4/\1\2', '$\1 =');
echo preg_replace($patterns, $replace, '{startDate} = 1999-5-27');
?>

O exemplo acima irá imprimir:

$startDate = 5/27/1999

Exemplo #4 Using the 'e' modifier

<?php
preg_replace("/(<\/?)(\w+)([^>]*>)/e",
             "'\\1'.strtoupper('\\2').'\\3'",
             $html_body);
?>

This would capitalize all HTML tags in the input text.

Exemplo #5 Strip whitespace

This example strips excess whitespace from a string.

<?php
$str = 'foo   o';
$str = preg_replace('/\s\s+/', ' ', $str);
// This will be 'foo o' now
echo $str;
?>

Exemplo #6 Using the count parameter

<?php
$count = 0;

echo preg_replace(array('/\d/', '/\s/'), '*', 'xp 4 to', -1 , $count);
echo $count; //3
?>

O exemplo acima irá imprimir:

xp***to
3

Notas

Nota:

When using arrays with pattern and replacement, the keys are processed in the order they appear in the array. This is not necessarily the same as the numerical index order. If you use indexes to identify which pattern should be replaced by which replacement, you should perform a ksort() on each array prior to calling preg_replace().

Veja Também

  • PCRE Patterns
  • preg_filter() - Perform a regular expression search and replace
  • preg_match() - Perform a regular expression match
  • preg_replace_callback() - Executa uma busca usando expressão regular e modifica usando um callback
  • preg_split() - Divide a string por uma expressão regular
  • preg_last_error() - Retorna o código de erro da última regex PCRE executada

preg_replace_callback
preg_split
Funções da PCRE


Divide a string por uma expressão regular

preg_replace
POSIX Regex
Funções da PCRE
PHP Manual

preg_split

(PHP 4, PHP 5)

preg_split — Divide a string por uma expressão regular

Descrição

array preg_split ( string $pattern , string $subject [, int $limit [, int $flags ]] )

Divide uma dada string por uma expressão regular.

Parâmetros

pattern

O padrão a ser usado.

subject

A string de entrada.

limit

Se especificado, então somente limit pedaços da string serão retornados, e se limit for -1, significa "sem limite", que é útil quando especificando flags.

flags

flags pode ser uma combinação das seguintes flags (combinada com o operador | bit-a-bit):

PREG_SPLIT_NO_EMPTY
Se esta flag é usada, somente pedaços não vazios serão retornados pela preg_split().
PREG_SPLIT_DELIM_CAPTURE
Se esta flag é usada, expressão entre parênteses no padrão serão capturados e retornados também.
PREG_SPLIT_OFFSET_CAPTURE

Se esta flag é usada, para cada combinação o offset da string será também retornado. Note que isto modifica o valor de retorno em um array onde cada elemento é um array contendo a string combinada no índice 0 e o offset da mesma em subject no índice 1.

Valor Retornado

Retorna um array contendo pedaços de strings de subject divididos pelo que for combinado pelo pattern.

Histórico

Versão | Descrição
4.3.0 | A PREG_SPLIT_OFFSET_CAPTURE foi adicionada
4.0.5 | A PREG_SPLIT_DELIM_CAPTURE foi adicionada
4.0.0 | O parâmetro flags foi adicionado

Exemplos

Exemplo #1 Exemplo da preg_split(): Obtendo partes de uma string

<?php
// reparte a frase por algum número caracteres de vírgula ou espaço,
// incluindo " ", \r, \t, \n e \f
$keywords = preg_split("/[\s,]+/", "hypertext language, programming");
?>

Exemplo #2 Dividindo a string em cada caractere que a compõe

<?php
$str = 'string';
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($chars);
?>

Exemplo #3 Dividindo a string pela combinação e seus offsets

<?php
$str = 'hypertext language programming';
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => Array
        (
            [0] => hypertext
            [1] => 0
        )

    [1] => Array
        (
            [0] => language
            [1] => 10
        )

    [2] => Array
        (
            [0] => programming
            [1] => 19
        )

)

Notas

Dica

Se você não precisa do poder das expressões regulares, pode optar por alternativa mais rápidas como explode() ou str_split().

Veja Também

  • spliti() - Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • split() - Separa strings em array utilizando expressões regulares
  • implode() - Junta elementos de uma matriz em uma string
  • preg_match() - Perform a regular expression match
  • preg_match_all() - Perform a global regular expression match
  • preg_replace() - Perform a regular expression search and replace

preg_replace
POSIX Regex
Funções da PCRE


Expressão Regular (POSIX Extended)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para Regex POSIX
    • ereg_replace — Substituição através de expressões regulares
    • ereg — Casando expressões regulares
    • eregi_replace — Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas
    • eregi — Casando expressões regulares insensíveis a maiúsculas e minúsculas
    • split — Separa strings em array utilizando expressões regulares
    • spliti — Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas
    • sql_regcase — Cria expressões regulares insensíveis a maiúsculas e minúsculas
preg_split
Introdução
Processamento de Texto


Introdução

Dica

PHP também suporta expressões regulares compatíveis com a sintaxe do Perl usando as Funções PCRE. Essas funções suportam non-greedy matching, assertions, conditional subpatterns, e várias outras características que não são suportadas pelas Expressões Regulares compatíveis com o padrão POSIX.

Aviso

Estas expressões regulares não são seguras para dados binários. As Funções PCRE são.

Expressões regulares são usadas para manipulação de strings complexas. PHP usa expressões regulares POSIX extended como definido pela POSIX 1003.2. Para uma completa descrição das expressões regulares POSIX veja a » regex man pages incluida no diretório regex na sua distribuição do PHP. Ele está no formato de manpage, então você precisa de man /usr/local/src/regex/regex.7 para lê-lo.

POSIX Regex
Instalação/Configuração
POSIX Regex


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
POSIX Regex


Instalação

Aviso

Não modifique o TYPE a não ser que você saiba o que está fazendo.

Para habilitar suporte a regexp configure o PHP com --with-regex[=TYPE] . TYPE pode ser do sistema, apache, php. O padrão é usar o do php.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
POSIX Regex


Exemplos

Exemplo #1 Exemplos de Expressões Regulares

<?php
// Retorna true se "abc" existir em qualquer lugar de $string.
ereg ("abc", $string);

// Retorna true se "abc" existir no início de $string.
ereg ("^abc", $string);

// Retorna true se "abc" existir no final de $string.
ereg ("abc$", $string);

// Retorna true se o navegador do cliente  for Netscape 2, 3 ou MSIE 3.
eregi ("(ozilla.[23]|MSIE.3)", $_SERVER["HTTP_USER_AGENT"]);

// Adiciona três palavras separadas por espaço em $regs[1], $regs[2] e $regs[3].
ereg ("([[:alnum:]]+) ([[:alnum:]]+) ([[:alnum:]]+)", $string,$regs);

// Acrescenta a tag <br /> no início de $string.
$string = ereg_replace ("^", "<br />", $string);

// Acrescenta a tag <br />; no final de $string.
$string = ereg_replace ("$", "<br />", $string);

// Remove todos caracteres de nova linha (newline) em $string.
$string = ereg_replace ("\n", "", $string);
?>

Constantes pré-definidas
Funções para Regex POSIX
POSIX Regex


Funções para Regex POSIX

Veja Também

Para expressões regulares compatíveis com o padrão Perl veja PCRE, Funções. O estilo simples de wildcard do shell pode ser usado com a função fnmatch().

Índice

  • ereg_replace — Substituição através de expressões regulares
  • ereg — Casando expressões regulares
  • eregi_replace — Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • eregi — Casando expressões regulares insensíveis a maiúsculas e minúsculas
  • split — Separa strings em array utilizando expressões regulares
  • spliti — Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • sql_regcase — Cria expressões regulares insensíveis a maiúsculas e minúsculas
Exemplos
ereg_replace
POSIX Regex


Substituição através de expressões regulares

Funções para Regex POSIX
ereg
Funções para Regex POSIX
PHP Manual

ereg_replace

(PHP 4, PHP 5)

ereg_replace — Substituição através de expressões regulares

Descrição

string ereg_replace ( string $pattern , string $replacement , string $string )

Essa função busca em string resultados para a pattern, substituindo se casar pelo texto replacement.

Parâmetros

pattern

A extendida expressão regular POSIX.

replacement

Se o pattern contém parênteses de substrings, a replacement será realizada através do formato \\digit, que indicará qual parte do texto substituido deverá ser retornado; \\0 retornará a string toda. Até nove substrings podem ser usadas. Os parênteses podem ser aninhados, sendo que a contagem será feita através da quantidade de parênteses abertos.

string

A string de entrada.

Valor Retornado

A string modificada é retornada. Se nenhuma substituição é feita na string, então retornará a string inalterada.

Exemplos

Por exemplo, o pedaço de código seguinte imprimirá "Esse foi um teste" três vezes:

Exemplo #1 Exemplo da ereg_replace()

<?php
$string = "Esse e um teste";
echo str_replace(" e", " foi", $string);
echo ereg_replace("( )e", "\\1foi", $string);
echo ereg_replace("(( )e)", "\\2foi", $string);
?>

Preste atenção se usar uma variável integer no parâmetro substituicao, pois o resultado pode não ser exatamente o esperado. Isso acontece porque a função ereg_replace() interpreta o valor ordinal do número. Por exemplo:

Exemplo #2 Exemplo da ereg_replace()

<?php
/* Esse exemplo não funcionará. */
$num = 5;
$string = "Essa frase tem cinco palavras.";
$string = ereg_replace('cinco', $num, $string);
echo $string;   /* Resultado: 'Essa frase tem   palavras.' */

/* Esse exemplo funcionará. */
$num = '5';
$string = "Essa frase tem cinco palavras.";
$string = ereg_replace('cinco', $num, $string);
echo $string;   /* Resultado: 'Essa frase tem 5 palavras.' */
?>

Exemplo #3 Substitui URLs por links

<?php
$text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",
                     "<a href=\"\\0\">\\0</a>", $text);
?>

Notas

Dica

preg_replace(), você pode também utilizar as expressões regulares compátiveis com perl, frequentemente uma alternativar veloz a função ereg_replace().

Veja Também

  • ereg() - Casando expressões regulares
  • eregi() - Casando expressões regulares insensíveis a maiúsculas e minúsculas
  • eregi_replace() - Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • str_replace() - Substitui todas as ocorrências da string de procura com a string de substituição
  • preg_match() - Perform a regular expression match

Funções para Regex POSIX
ereg
Funções para Regex POSIX


Casando expressões regulares

ereg_replace
eregi_replace
Funções para Regex POSIX
PHP Manual

ereg

(PHP 4, PHP 5)

ereg — Casando expressões regulares

Descrição

int ereg ( string $pattern , string $string [, array &$regs ] )

Verifica se a variavel casa com a expressão regular definida em expressao em um modo sensível a distinção de caracteres (case sensitive).

Parâmetros

pattern

A expressão regular case sensitive.

string

A string de entrada.

regs

Se existirem parênteses de substrings no pattern e for passado o terceiro parâmetro regs para a função, a execução guardará os elementos resultantes na matriz regs.

$registros[1] irá conter a substring indicada pelo primeiro parenteses da esquerda; $registros[2] contém a segunda substring, e assim por diante. $registros[0] conterá uma cópia completa da variável casada.

Valor Retornado

Retorna o tamanho da string encontrada se uma combinação de pattern foi encontrado em string, ou FALSE se nenhuma combinação foi feita ou um erro que tenha ocorrido.

Se o parâmetro opcional regs não foi passado ou o tamanho da string casada é 0, esta função retorna 1.

Exemplos

Exemplo #1 Exemplo da ereg()

O exemplo seguinte pega uma data no padrão ISO (YYYY-MM-DD) e imprime na no formato DD.MM.YYYY:

<?php
if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $data, $registros)) {
    echo "$registros[3].$registros[2].$registros[1]";
} else {
    echo "Formato de data inválido: $data";
}
?>

Notas

Nota:

preg_match(), que usa a sintaxe de expressão regular compatível com Perl, é normalmente uma rápida alternativa para ereg().

Nota: Nas versões superiores ao PHP 4.1.0 (inclusive) se você colocar exatamente dez elementos em $registros, ou até mesmo mais elementos, a expressão será executada. A quantidade não causará efeitos na função ereg() que tem habilidade de suportar muitas substrings. Se a expressão não casar, $registros não será alterada por ereg().

Veja Também

  • eregi() - Casando expressões regulares insensíveis a maiúsculas e minúsculas
  • ereg_replace() - Substituição através de expressões regulares
  • eregi_replace() - Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • preg_match() - Perform a regular expression match
  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • strstr() - Encontra a primeira ocorrencia de uma string
  • quotemeta() - Adiciona uma barra invertida antes dos meta caracteres

ereg_replace
eregi_replace
Funções para Regex POSIX


Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas

ereg
eregi
Funções para Regex POSIX
PHP Manual

eregi_replace

(PHP 4, PHP 5)

eregi_replace — Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas

Descrição

string eregi_replace ( string $pattern , string $replacement , string $string )

Essa função é idêntica a ereg_replace() com exceção de não fazer distinções alfabéticas entre caracteres (case insensitive) na hora de casar resultados.

Parâmetros

pattern

A extendida expressão regular POSIX.

replacement

Se o pattern contém parênteses de substrings, a replacement será realizada através do formato \\digit, que indicará qual parte do texto substituido deverá ser retornado; \\0 retornará a string toda. Até nove substrings podem ser usadas. Os parênteses podem ser aninhados, sendo que a contagem será feita através da quantidade de parênteses abertos.

string

A string de entrada.

Valor Retornado

A string modificada é retornada. Se nenhum combinação foi feita em string, então retornará a string inalterada.

Exemplos

Exemplo #1 Destacando resultados de uma busca

<?php
$pattern = '(>[^<]*)('. quotemeta($_GET['search']) .')';
$replacement = '\\1<span class="search">\\2</span>';
$body = eregi_replace($pattern, $replacement, $body);
?>

Veja Também

  • ereg() - Casando expressões regulares
  • eregi() - Casando expressões regulares insensíveis a maiúsculas e minúsculas
  • ereg_replace() - Substituição através de expressões regulares

ereg
eregi
Funções para Regex POSIX


Casando expressões regulares insensíveis a maiúsculas e minúsculas

eregi_replace
split
Funções para Regex POSIX
PHP Manual

eregi

(PHP 4, PHP 5)

eregi — Casando expressões regulares insensíveis a maiúsculas e minúsculas

Descrição

int eregi ( string $pattern , string $string [, array &$regs ] )

Essa função é idêntica a função ereg() com exceção de não fazer distinções alfabéticas entre caracteres (case insensitive) na hora de casar resultados.

Parâmetros

pattern

A expressão regular case insensitive.

string

A string de entrada.

regs

Se existirem parênteses de substrings no pattern e for passado o terceiro parâmetro regs para a função, a execução guardará os elementos resultantes na matriz regs.

$registros[1] irá conter a substring indicada pelo primeiro parenteses da esquerda; $registros[2] contém a segunda substring, e assim por diante. $registros[0] conterá uma cópia completa da variável casada.

Valor Retornado

Retorna o tamanho da string combinada se uma combinação para pattern foi encontrado na string, ou FALSE se nenhuma combinação é feita ou um erro tenha ocorrido.

Se o parâmetro opcional regs não foi passado ou o tamanho da string casada é 0, esta função retorna 1.

Exemplos

Exemplo #1 Exemplo da eregi()

<?php
$string = 'XYZ';
if (eregi('z', $string)) {
    echo "A '$variavel' contém a letra 'z' ou 'Z'!";
}
?>

Veja Também

  • ereg() - Casando expressões regulares
  • ereg_replace() - Substituição através de expressões regulares
  • eregi_replace() - Substituição utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • stripos() - Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas
  • stristr() - strstr sem diferenciar maiúsculas e minúsculas

eregi_replace
split
Funções para Regex POSIX


Separa strings em array utilizando expressões regulares

eregi
spliti
Funções para Regex POSIX
PHP Manual

split

(PHP 4, PHP 5)

split — Separa strings em array utilizando expressões regulares

Descrição

array split ( string $pattern , string $string [, int $limit ] )

Separa uma string em array por expressão regular.

Parâmetros

pattern

A expressão regular case sensitive.

Se separar caracteres que são consideredos especiais para as expressões regulares, será necessário usar o caracter de escape primeiramente. Se você pensar que split() (ou outra função para execução de expressões regulares) é muito estranha, por favor leia o arquivo regex.7, incluido na pasta regex/ no subdiretório da distribuição do PHP. Está no formato manpage e você deverá usar o comando man /usr/local/src/regex/regex.7 para maiores informações.

string

A string de entrada.

limit

Se limit é definido, o array retornado conterá no máximo de limit elementos, sendo que o último elemento conterá o resto da string.

Valor Retornado

Retorna uma matriz de strings, contendo as substrings de string separadas pelos limites descritos na expressão regular pattern.

Se existirem n ocorrências da pattern, será retornado uma matriz (array) contendo n+1 items. Por exemplo, se não existir uma ocorrência de pattern, uma matriz com um único elemento será retornado. Certamente, isto também é válido se string estiver vazia. Se um erro ocorrer, split() retorna FALSE.

Exemplos

Exemplo #1 Exemplo da split()

Separa os quatro primeiro elementos de uma linha do arquivo /etc/passwd:

<?php
list($user,$pass,$uid,$gid,$extra) =
    split (":", $passwd_line, 5);
?>

Exemplo #2 Exemplo da split()

Separação de dados delimitados por barras, pontos, ou traços:

<?php
// Delimitado por barras, pontos ou traços
$data = "04/30/1973";
list ($mes, $dia, $ano) = split ('[/.-]', $data);
echo "Mês: $mes; Dia: $dia; Ano: $ano<br />\n";
?>

Notas

Dica

preg_split(), que usa sintaxe de expressão regular compatível com Perl, é normalmente a rápida alternativa para split(). Se você não precisa do poder das expressões regulares, é mais eficiente usar explode(), que não faz overhead como engine de expressão regular.

Dica

Para visualizar uma emulação do Perl e seus métodos @chars = split('', $str), veja os exemplos da preg_split().

Veja Também

  • preg_split() - Divide a string por uma expressão regular
  • spliti() - Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas
  • str_split() - Converte uma string para um array
  • explode() - Divide uma string em strings
  • implode() - Junta elementos de uma matriz em uma string
  • chunk_split() - Divide uma string em pequenos pedaços
  • wordwrap() - Quebra uma string em um dado número de caracteres

eregi
spliti
Funções para Regex POSIX


Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas

split
sql_regcase
Funções para Regex POSIX
PHP Manual

spliti

(PHP 4 >= 4.0.1, PHP 5)

spliti — Separa strings em array utilizando expressões regulares insensíveis a maiúsculas e minúsculas

Descrição

array spliti ( string $pattern , string $string [, int $limit ] )

Separa uma string em array por expressão regular.

Esta função é idêntica a split() exceto que esta ignora distinção de caracteres alfabéticos maiúsculos e minúsculos.

Parâmetros

pattern

Expressão regular case insensitive.

Se separar caracteres que são consideredos especiais para as expressões regulares, será necessário usar o caracter de escape primeiramente. Se você pensar que split() (ou outra função para execução de expressões regulares) é muito estranha, por favor leia o arquivo regex.7, incluido na pasta regex/ no subdiretório da distribuição do PHP. Está no formato manpage e você deverá usar o comando man /usr/local/src/regex/regex.7 para maiores informações.

string

A string de entrada.

limit

Se limit é definido, o array retornado conterá no máximo limit elementos com o último elemento contendo todo resto da string.

Valor Retornado

Retorna uma matriz de strings, contendo as substrings de string separadas pelos limites descritos na expressão regular case sensitive pattern.

Se existirem n ocorrências da pattern, será retornado uma matriz (array) contendo n+1 items. Por exemplo, se não existir uma ocorrência de pattern, uma matriz com um único elemento será retornado. Certamente, isto também é válido se string estiver vazia. Se um erro ocorrer, split() retorna FALSE.

Exemplos

Este exemplo separa uma string usando 'a' com o separador:

Exemplo #1 Exemplo da spliti()

<?php
$string = "aBBBaCCCADDDaEEEaGGGA";
$chunks = spliti ("a", $string, 5);
print_r($chunks);
?>

O exemplo acima irá imprimir:

Array
(
  [0] =>
  [1] => BBB
  [2] => CCC
  [3] => DDD
  [4] => EEEaGGGA
)

Veja Também

  • preg_split() - Divide a string por uma expressão regular
  • split() - Separa strings em array utilizando expressões regulares
  • explode() - Divide uma string em strings
  • implode() - Junta elementos de uma matriz em uma string

split
sql_regcase
Funções para Regex POSIX


Cria expressões regulares insensíveis a maiúsculas e minúsculas

spliti
ssdeep
Funções para Regex POSIX
PHP Manual

sql_regcase

(PHP 4, PHP 5)

sql_regcase — Cria expressões regulares insensíveis a maiúsculas e minúsculas

Descrição

string sql_regcase ( string $string )

Cria uma expressão regular para uma combinação case insensitive.

Parâmetros

string

A string de entrada.

Valor Retornado

Retorna uma expressão regular válida para casar com string, ignorando a diferença entre maiúsculas e minúsculas. A expressão será string com os caracteres convertidos a uma expressão de colchetes; essa expressão terá os caracteres escritos em maiúsculas e minúsculas quando puder ser aplicado, em outros casos conterá os caracteres sem modificação.

Exemplos

Exemplo #1 Exemplo da sql_regcase()

<?php
echo sql_regcase ("Foo - bar.");
?>

O exemplo acima irá imprimir:

[Ff][Oo][Oo] - [Bb][Aa][Rr].

Você pode utilizar esse recurso quando quando existir somente suporte a expressões regulares sensíveis a maiúsculas e minúsculas

spliti
ssdeep
Funções para Regex POSIX


ssdeep Fuzzy Hashing

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • ssdeep Funções
    • ssdeep_fuzzy_compare — Calculates the match score between two fuzzy hash signatures
    • ssdeep_fuzzy_hash_filename — Create a fuzzy hash from a file
    • ssdeep_fuzzy_hash — Create a fuzzy hash from a string
sql_regcase
Introdução
Processamento de Texto


Introdução

ssdeep is a utility for creating and comparing fuzzy hashes or » context-triggered piecewise hashing.

Fuzzy hashing can match signatures which have "...sequences of identical bytes in the same order, although bytes in between these sequences may be different in both content and length". (» ssdeep project page)

This extension provides functions for creating and comparing fuzzy hashes.

ssdeep
Instalação/Configuração
ssdeep


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
ssdeep


Dependências

This extension requires the » ssdeep library.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/ssdeep.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
ssdeep Funções
ssdeep


ssdeep Funções

Índice

  • ssdeep_fuzzy_compare — Calculates the match score between two fuzzy hash signatures
  • ssdeep_fuzzy_hash_filename — Create a fuzzy hash from a file
  • ssdeep_fuzzy_hash — Create a fuzzy hash from a string
Constantes pré-definidas
ssdeep_fuzzy_compare
ssdeep


Calculates the match score between two fuzzy hash signatures

ssdeep Funções
ssdeep_fuzzy_hash_filename
ssdeep Funções
PHP Manual

ssdeep_fuzzy_compare

(PECL ssdeep >= 1.0.0)

ssdeep_fuzzy_compare — Calculates the match score between two fuzzy hash signatures

Descrição

int ssdeep_fuzzy_compare ( string $signature1 , string $signature2 )

Calculates the match score between signature1 and signature2 using » context-triggered piecewise hashing, and returns the match score.

Parâmetros

signature1

The first fuzzy hash signature string.

signature2

The second fuzzy hash signature string.

Valor Retornado

Returns an integer from 0 to 100 on success, FALSE otherwise.

ssdeep Funções
ssdeep_fuzzy_hash_filename
ssdeep Funções


Create a fuzzy hash from a file

ssdeep_fuzzy_compare
ssdeep_fuzzy_hash
ssdeep Funções
PHP Manual

ssdeep_fuzzy_hash_filename

(PECL ssdeep >= 1.0.0)

ssdeep_fuzzy_hash_filename — Create a fuzzy hash from a file

Descrição

string ssdeep_fuzzy_hash_filename ( string $file_name )

ssdeep_fuzzy_hash_filename() calculates the hash of the file specified by file_name using » context-triggered piecewise hashing, and returns that hash.

Parâmetros

file_name

The filename of the file to hash.

Valor Retornado

Returns a string on success, FALSE otherwise.

ssdeep_fuzzy_compare
ssdeep_fuzzy_hash
ssdeep Funções


Create a fuzzy hash from a string

ssdeep_fuzzy_hash_filename
Strings
ssdeep Funções
PHP Manual

ssdeep_fuzzy_hash

(PECL ssdeep >= 1.0.0)

ssdeep_fuzzy_hash — Create a fuzzy hash from a string

Descrição

string ssdeep_fuzzy_hash ( string $to_hash )

ssdeep_fuzzy_hash() calculates the hash of to_hash using » context-triggered piecewise hashing, and returns that hash.

Parâmetros

to_hash

The input string.

Valor Retornado

Returns a string on success, FALSE otherwise.

ssdeep_fuzzy_hash_filename
Strings
ssdeep Funções


Strings

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para String
    • addcslashes — String entre aspas com barras no estilo C
    • addslashes — Adiciona barras invertidas a uma string
    • bin2hex — Converte um dado binário em representação hexadecimal
    • chop — Sinônimo de rtrim
    • chr — Retorna um caracter específico
    • chunk_split — Divide uma string em pequenos pedaços
    • convert_cyr_string — Converte de um conjunto caracteres cirílico para outro
    • convert_uudecode — Decodifica uma string codificada com uuencode
    • convert_uuencode — Codifica com uuencode uma string
    • count_chars — Retorna informações sobre os caracteres usados numa string
    • crc32 — Calcula polinômio crc32 de uma string
    • crypt — Encriptação unidirecional de string (hashing)
    • echo — Exibe uma ou mais strings
    • explode — Divide uma string em strings
    • fprintf — Escreve uma string formatada para um stream
    • get_html_translation_table — Retorna a tabela de tradução usada por htmlspecialchars e htmlentities
    • hebrev — Converte texto lógico Hebraico para texto visual
    • hebrevc — Converte um texto lógico Hebráico para um texto visual com conversão newline
    • html_entity_decode — Converte todas as entidades HTML para os seus caracteres
    • htmlentities — Converte todos os caracteres aplicáveis em entidades html.
    • htmlspecialchars_decode — Converte especiais entidades HTML para caracteres
    • htmlspecialchars — Converte caracteres especiais para a realidade HTML
    • implode — Junta elementos de uma matriz em uma string
    • join — Sinônimo de implode
    • lcfirst — Torna minúsculo o primeiro caractere de uma string
    • levenshtein — Calcula a distância Levenshtein entre duas strings
    • localeconv — Obtém a informação da formatação numérica
    • ltrim — Retira espaços em branco (ou outros caracteres) do início da string
    • md5_file — Calcula hash md5 de um dado arquivo
    • md5 — Calcula o "hash MD5" de uma string
    • metaphone — Calcula a metaphone key de uma string
    • money_format — Formata um número como uma string de moeda
    • nl_langinfo — Retorna informação de linguagem e local
    • nl2br — Insere quebras de linha HTML antes de todas newlines em uma string
    • number_format — Formata um número com os milhares agrupados
    • ord — Retorna o valor ASCII do caractere
    • parse_str — Converte a string em variáveis
    • print — Mostra uma string
    • printf — Mostra uma string formatada
    • quoted_printable_decode — Converte uma string quoted-printable para uma string de 8 bit
    • quoted_printable_encode — Converte uma string de 8 bits em uma string quoted-printable
    • quotemeta — Adiciona uma barra invertida antes dos meta caracteres
    • rtrim — Retira espaço em branco (ou outros caracteres) do final da string
    • setlocale — Define informações locais
    • sha1_file — Calcula a hash sha1 de um arquivo
    • sha1 — Calcula a hash sha1 de uma string
    • similar_text — Calcula a similaridade entre duas strings
    • soundex — Calcula a chave soundex de uma string
    • sprintf — Retorna a string formatada
    • sscanf — Interpreta a entrada de uma string de acordo com um formato
    • str_getcsv — Analisa uma string CSV e retorna os dados em um array
    • str_ireplace — Versão que não diferencia maiúsculas e minúsculas de str_replace.
    • str_pad — Preenche uma string para um certo tamanho com outra string
    • str_repeat — Repete uma string
    • str_replace — Substitui todas as ocorrências da string de procura com a string de substituição
    • str_rot13 — Executa a transformação rot13 em uma string
    • str_shuffle — Mistura uma string aleatoriamente
    • str_split — Converte uma string para um array
    • str_word_count — Retorna informação sobre as palavras usadas em uma string
    • strcasecmp — Comparação de strings sem diferenciar maiúsculas e minúsculas segura para binário
    • strchr — Sinônimo de strstr
    • strcmp — Comparação de string segura para binário
    • strcoll — Comparação de string baseada no local
    • strcspn — Encontra o tamanho do segmento inicial que não contenha a máscara
    • strip_tags — Retira as tags HTML e PHP de uma string
    • stripcslashes — Desfaz o efeito de addcslashes
    • stripos — Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas
    • stripslashes — Desfaz o efeito de addslashes
    • stristr — strstr sem diferenciar maiúsculas e minúsculas
    • strlen — Retorna o tamanho de uma string
    • strnatcasecmp — Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"
    • strnatcmp — Comparação de strings usando o algoritmo "natural order"
    • strncasecmp — Comparação de string caso-sensitivo de Binário seguro dos primeiros n caracteres
    • strncmp — Comparação de string segura para binário para os primeiros n caracteres
    • strpbrk — Procura na string por um dos caracteres de um conjunto
    • strpos — Encontra a posição da primeira ocorrência de uma string
    • strrchr — Encontra a ultima ocorrência de um caractere em uma string
    • strrev — Reverte uma string
    • strripos — Encontra a posição da última ocorrência de uma string case-insensitive em uma string
    • strrpos — Encontra a posição da última ocorrência de um caractere em uma string
    • strspn — Encontra o comprimento do segmento inicial combinando com a máscara
    • strstr — Encontra a primeira ocorrencia de uma string
    • strtok — Tokeniza uma string
    • strtolower — Converte uma string para minúsculas
    • strtoupper — Converte uma string para maiúsculas
    • strtr — Traduz certos caracteres
    • substr_compare — A comparação binária entre duas strings case-insensitive de um offset é guardada opcionalmente, até o limite do comprimento de caracteres
    • substr_count — Conta o número de ocorrências de uma substring
    • substr_replace — Substitui o texto dentro de uma parte de uma string
    • substr — Retorna uma parte de uma string
    • trim — Retira espaço no ínicio e final de uma string
    • ucfirst — Converte para maiúscula o primeiro caractere de uma string
    • ucwords — Converte para maiúsculas o primeiro caractere de cada palavra
    • vfprintf — Escreve uma string formatada para um stream
    • vprintf — Mostra uma string formatada
    • vsprintf — Retorna uma string formatada
    • wordwrap — Quebra uma string em um dado número de caracteres
ssdeep_fuzzy_hash
Introdução
Processamento de Texto


Introdução

Todas estas funções manipulam strings de vários meios. Algumas seções mais especializadas podem ser encontradas nas seções de expressões regulares e Funções de URL.

Para informação de como as strings funcionam, especialmente sobre o uso de apóstrofo, aspas e sequências de escape veja Strings na seção Tipos do manual.

Strings
Instalação/Configuração
Strings


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Strings


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CRYPT_SALT_LENGTH integer
CRYPT_STD_DES integer
CRYPT_EXT_DES integer
CRYPT_MD5 integer
CRYPT_BLOWFISH integer
HTML_SPECIALCHARS (integer)
HTML_ENTITIES (integer)
ENT_COMPAT (integer)
ENT_QUOTES (integer)
ENT_NOQUOTES (integer)
CHAR_MAX (integer)
LC_CTYPE (integer)
LC_NUMERIC (integer)
LC_TIME (integer)
LC_COLLATE (integer)
LC_MONETARY (integer)
LC_ALL (integer)
LC_MESSAGES (integer)
STR_PAD_LEFT (integer)
STR_PAD_RIGHT (integer)
STR_PAD_BOTH (integer)
Tipos Resource
Funções para String
Strings


Funções para String

Veja Também

Para funções de manuseio de string mais poderosas, de uma olhada em funções de expressão regular POSIX e funções de expressão regular compatíveis com Perl .

Índice

  • addcslashes — String entre aspas com barras no estilo C
  • addslashes — Adiciona barras invertidas a uma string
  • bin2hex — Converte um dado binário em representação hexadecimal
  • chop — Sinônimo de rtrim
  • chr — Retorna um caracter específico
  • chunk_split — Divide uma string em pequenos pedaços
  • convert_cyr_string — Converte de um conjunto caracteres cirílico para outro
  • convert_uudecode — Decodifica uma string codificada com uuencode
  • convert_uuencode — Codifica com uuencode uma string
  • count_chars — Retorna informações sobre os caracteres usados numa string
  • crc32 — Calcula polinômio crc32 de uma string
  • crypt — Encriptação unidirecional de string (hashing)
  • echo — Exibe uma ou mais strings
  • explode — Divide uma string em strings
  • fprintf — Escreve uma string formatada para um stream
  • get_html_translation_table — Retorna a tabela de tradução usada por htmlspecialchars e htmlentities
  • hebrev — Converte texto lógico Hebraico para texto visual
  • hebrevc — Converte um texto lógico Hebráico para um texto visual com conversão newline
  • html_entity_decode — Converte todas as entidades HTML para os seus caracteres
  • htmlentities — Converte todos os caracteres aplicáveis em entidades html.
  • htmlspecialchars_decode — Converte especiais entidades HTML para caracteres
  • htmlspecialchars — Converte caracteres especiais para a realidade HTML
  • implode — Junta elementos de uma matriz em uma string
  • join — Sinônimo de implode
  • lcfirst — Torna minúsculo o primeiro caractere de uma string
  • levenshtein — Calcula a distância Levenshtein entre duas strings
  • localeconv — Obtém a informação da formatação numérica
  • ltrim — Retira espaços em branco (ou outros caracteres) do início da string
  • md5_file — Calcula hash md5 de um dado arquivo
  • md5 — Calcula o "hash MD5" de uma string
  • metaphone — Calcula a metaphone key de uma string
  • money_format — Formata um número como uma string de moeda
  • nl_langinfo — Retorna informação de linguagem e local
  • nl2br — Insere quebras de linha HTML antes de todas newlines em uma string
  • number_format — Formata um número com os milhares agrupados
  • ord — Retorna o valor ASCII do caractere
  • parse_str — Converte a string em variáveis
  • print — Mostra uma string
  • printf — Mostra uma string formatada
  • quoted_printable_decode — Converte uma string quoted-printable para uma string de 8 bit
  • quoted_printable_encode — Converte uma string de 8 bits em uma string quoted-printable
  • quotemeta — Adiciona uma barra invertida antes dos meta caracteres
  • rtrim — Retira espaço em branco (ou outros caracteres) do final da string
  • setlocale — Define informações locais
  • sha1_file — Calcula a hash sha1 de um arquivo
  • sha1 — Calcula a hash sha1 de uma string
  • similar_text — Calcula a similaridade entre duas strings
  • soundex — Calcula a chave soundex de uma string
  • sprintf — Retorna a string formatada
  • sscanf — Interpreta a entrada de uma string de acordo com um formato
  • str_getcsv — Analisa uma string CSV e retorna os dados em um array
  • str_ireplace — Versão que não diferencia maiúsculas e minúsculas de str_replace.
  • str_pad — Preenche uma string para um certo tamanho com outra string
  • str_repeat — Repete uma string
  • str_replace — Substitui todas as ocorrências da string de procura com a string de substituição
  • str_rot13 — Executa a transformação rot13 em uma string
  • str_shuffle — Mistura uma string aleatoriamente
  • str_split — Converte uma string para um array
  • str_word_count — Retorna informação sobre as palavras usadas em uma string
  • strcasecmp — Comparação de strings sem diferenciar maiúsculas e minúsculas segura para binário
  • strchr — Sinônimo de strstr
  • strcmp — Comparação de string segura para binário
  • strcoll — Comparação de string baseada no local
  • strcspn — Encontra o tamanho do segmento inicial que não contenha a máscara
  • strip_tags — Retira as tags HTML e PHP de uma string
  • stripcslashes — Desfaz o efeito de addcslashes
  • stripos — Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas
  • stripslashes — Desfaz o efeito de addslashes
  • stristr — strstr sem diferenciar maiúsculas e minúsculas
  • strlen — Retorna o tamanho de uma string
  • strnatcasecmp — Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"
  • strnatcmp — Comparação de strings usando o algoritmo "natural order"
  • strncasecmp — Comparação de string caso-sensitivo de Binário seguro dos primeiros n caracteres
  • strncmp — Comparação de string segura para binário para os primeiros n caracteres
  • strpbrk — Procura na string por um dos caracteres de um conjunto
  • strpos — Encontra a posição da primeira ocorrência de uma string
  • strrchr — Encontra a ultima ocorrência de um caractere em uma string
  • strrev — Reverte uma string
  • strripos — Encontra a posição da última ocorrência de uma string case-insensitive em uma string
  • strrpos — Encontra a posição da última ocorrência de um caractere em uma string
  • strspn — Encontra o comprimento do segmento inicial combinando com a máscara
  • strstr — Encontra a primeira ocorrencia de uma string
  • strtok — Tokeniza uma string
  • strtolower — Converte uma string para minúsculas
  • strtoupper — Converte uma string para maiúsculas
  • strtr — Traduz certos caracteres
  • substr_compare — A comparação binária entre duas strings case-insensitive de um offset é guardada opcionalmente, até o limite do comprimento de caracteres
  • substr_count — Conta o número de ocorrências de uma substring
  • substr_replace — Substitui o texto dentro de uma parte de uma string
  • substr — Retorna uma parte de uma string
  • trim — Retira espaço no ínicio e final de uma string
  • ucfirst — Converte para maiúscula o primeiro caractere de uma string
  • ucwords — Converte para maiúsculas o primeiro caractere de cada palavra
  • vfprintf — Escreve uma string formatada para um stream
  • vprintf — Mostra uma string formatada
  • vsprintf — Retorna uma string formatada
  • wordwrap — Quebra uma string em um dado número de caracteres
Constantes pré-definidas
addcslashes
Strings


String entre aspas com barras no estilo C

Funções para String
addslashes
Funções para String
PHP Manual

addcslashes

(PHP 4, PHP 5)

addcslashes — String entre aspas com barras no estilo C

Descrição

string addcslashes ( string $str , string $charlist )

Retorna uma string com barras invertidas antes dos caracteres que estão listados no parâmetro charlist.

Parâmetros

str

A string a receber escape.

charlist

Uma lista de caractere para receber escape. Se charlist contém caracteres \n, \r etc., eles são convertidos na mesma forma que C, quando outros caracteres não-alfanumérico com códigos ASCII menor que 32 e maior que 126 são convertido para representação octal.

Quando você define uma seqüencia de caracteres no argumento charlist certifique-se que você sabe quais os caracteres que vêm dentro do intervalo que você definiu.

<?php
echo addcslashes('foo[ ]', 'A..z');
// output:  \f\o\o\[ \]
// All upper and lower-case letters will be escaped
// ... but so will the [\]^_` and any tabs, line
// feeds, carriage returns, etc.
?>
Também, se o primeiro caracter no intervalo tem um valor ASCII maior do que o segundo, nenhum intervalo será construído. Apenas os caracteres do começo e do fim serão escapados. Use a função ord() para encontrar o valor ASCII para um caracter.
<?php
echo addcslashes("zoo['.']", 'z..A');
// output:  \zoo['\.']
?>

Tenha cuidado se você escolheu adicionar escape nos caracteres 0, a, b, f, n, r, t e v. Eles serão convertidos para \0, \a, \b, \f, \n, \r, \t e \v. No PHP \0 (NULL), \r (carriage return), \n (newline), \f (form feed), \v (vertical tab) e \t (tab) são pré-definidas seqüências de escape, quando em C todos esses são pré-definidas seqüências de escape.

Valor Retornado

Retorna a string com escapes.

Histórico

Versão | Descrição
5.2.5 | As seqüências de escape \v e \f foram adicionadas.

Exemplos

charlist como "\0..\37", que adicionaria escape para todos caracteres com código ASCII entre 0 e 31.

Exemplo #1 Exemplo da addcslashes()

<?php
$escaped = addcslashes($not_escaped, "\0..\37!@\177..\377");
?>

Veja Também

  • stripcslashes() - Desfaz o efeito de addcslashes
  • stripslashes() - Desfaz o efeito de addslashes
  • addslashes() - Adiciona barras invertidas a uma string
  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • quotemeta() - Adiciona uma barra invertida antes dos meta caracteres

Funções para String
addslashes
Funções para String


Adiciona barras invertidas a uma string

addcslashes
bin2hex
Funções para String
PHP Manual

addslashes

(PHP 4, PHP 5)

addslashes — Adiciona barras invertidas a uma string

Descrição

string addslashes ( string $str )

Retorna uma string com barras invertidas antes de caracteres que precisam ser escapados para serem escapados em query a banco de dados, etc. Estes caracteres são aspas simples ('), aspas duplas ("), barra invertida (\) e NUL (o byte NULL).

Um exemplo do uso de addslashes() é quando você esta entrando com dados em um banco de dados. Por exemplo, para inserir o nome O'reilly em um banco de dados, você vai precisar escapa-lo. A maior parte dos banco de dados faz isto com \ o que nos leva a O\'reilly. Isto é apenas para colocar os dados no banco de dados, a \ não será inserida. Tendo a diretiva do PHP magic_quotes_sybase em on fará com que ' seja escapada com outra '.

A diretiva do PHP magic_quotes_gpc é on por padrão, e ela essencialmente executa addslashes() para todos dados de GET, POST e COOKIE. Não use addslashes() em strings que já foram escapadas com magic_quotes_gpc já que você acabara escapando duas vezes. A função get_magic_quotes_gpc() pode dar uma mão para conferir isto.

Parâmetros

str

A string a ser adicionada escape.

Valor Retornado

Retorna a string com escapes.

Exemplos

Exemplo #1 Exemplo da addslashes()

<?php
$str = "Seu nome é O'reilly?";

// Mostra: Seu nome é O\'reilly?
echo addslashes($str);
?>

Veja Também

  • stripcslashes() - Desfaz o efeito de addcslashes
  • stripslashes() - Desfaz o efeito de addslashes
  • addcslashes() - String entre aspas com barras no estilo C
  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • quotemeta() - Adiciona uma barra invertida antes dos meta caracteres
  • get_magic_quotes_gpc() - Obtém a configuração atual de magic quotes gpc

addcslashes
bin2hex
Funções para String


Converte um dado binário em representação hexadecimal

addslashes
chop
Funções para String
PHP Manual

bin2hex

(PHP 4, PHP 5)

bin2hex — Converte um dado binário em representação hexadecimal

Descrição

string bin2hex ( string $str )

Retorna uma string ASCII uma representação hexadecimal de str. A conversão é feita byte-wise com o high-nibble primeiro.

Parâmetros

str

Um caractere.

Valor Retornado

Retorna a representação hexadecimal de uma dada string.

Veja Também

  • pack() - Pack data into binary string
  • unpack() - Unpack data from binary string

addslashes
chop
Funções para String


Sinônimo de rtrim

bin2hex
chr
Funções para String
PHP Manual

chop

(PHP 4, PHP 5)

chop — Sinônimo de rtrim()

Descrição

Esta função é um apelido para: rtrim().

Notas

Nota:

chop() é diferente da função do Perl chop(), que remove o último caractere da string.

bin2hex
chr
Funções para String


Retorna um caracter específico

chop
chunk_split
Funções para String
PHP Manual

chr

(PHP 4, PHP 5)

chr — Retorna um caracter específico

Descrição

string chr ( int $ascii )

Retorna uma string de um único caractere contendo o caracter especificado pelo ascii.

Esta função complementa ord().

Parâmetros

ascii

O código ascii.

Valor Retornado

Retorna o caractere especificado.

Exemplos

Exemplo #1 chr() exemplo

<?php
$str = "The string ends in escape: ";
$str .= chr(27); /* add an escape character at the end of $str */

/* Often this is more useful */

$str = sprintf("The string ends in escape: %c", 27);
?>

Veja Também

  • sprintf() - Retorna a string formatada com a string de formato %c
  • ord()
  • » Tabela ASCII

chop
chunk_split
Funções para String


Divide uma string em pequenos pedaços

chr
convert_cyr_string
Funções para String
PHP Manual

chunk_split

(PHP 4, PHP 5)

chunk_split — Divide uma string em pequenos pedaços

Descrição

string chunk_split ( string $body [, int $chunklen [, string $end ]] )

Pode dividir uma string em pequenos pedaços que são úteis para ex. converter a saída de base64_encode() para semânticas RFC 2045 . Ela insere end a cada chunklen caracteres.

Parâmetros

body

A string a ser dividida.

chunklen

O tamanho do pedaço. Padrão para 76.

end

A seqüência de terminação. Padrão para "\r\n".

Valor Retornado

Retorna a string dividida.

Exemplos

Exemplo #1 Exemplo da chunk_split()

<?php
// format $data using RFC 2045 semantics
$new_string = chunk_split(base64_encode($data));
?>

Veja Também

  • str_split() - Converte uma string para um array
  • explode() - Divide uma string em strings
  • split() - Separa strings em array utilizando expressões regulares
  • wordwrap() - Quebra uma string em um dado número de caracteres
  • » RFC 2045

chr
convert_cyr_string
Funções para String


Converte de um conjunto caracteres cirílico para outro

chunk_split
convert_uudecode
Funções para String
PHP Manual

convert_cyr_string

(PHP 4, PHP 5)

convert_cyr_string — Converte de um conjunto caracteres cirílico para outro

Descrição

string convert_cyr_string ( string $str , string $from , string $to )

Converte de um conjunto de caracteres cirílico para outro.

Parâmetros

str

A string a ser convertida.

from

A fonte do conjunto de caracteres cirílico, como um único caractere.

to

O conjunto de caracteres cirílico alvo, como um único caractere.

Os caracteres suportados são:

  • k - koi8-r
  • w - windows-1251
  • i - iso8859-5
  • a - x-cp866
  • d - x-cp866
  • m - x-mac-cyrillic

Valor Retornado

Retorna a string convertida.

Notas

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

chunk_split
convert_uudecode
Funções para String


Decodifica uma string codificada com uuencode

convert_cyr_string
convert_uuencode
Funções para String
PHP Manual

convert_uudecode

(PHP 5)

convert_uudecode — Decodifica uma string codificada com uuencode

Descrição

string convert_uudecode ( string $data )

convert_uudecode() decodifica uma string codificada com uuencode.

Parâmetros

data

A informação codificada com uuencode.

Valor Retornado

Retorna a informação decodificada como uma string.

Exemplos

Exemplo #1 Exemplo da convert_uudecode()

<?php
/* Can you imagine what this will print? :) */
echo convert_uudecode("+22!L;W9E(%!(4\"$`\n`");
?>

Veja Também

  • convert_uuencode() - Codifica com uuencode uma string

convert_cyr_string
convert_uuencode
Funções para String


Codifica com uuencode uma string

convert_uudecode
count_chars
Funções para String
PHP Manual

convert_uuencode

(PHP 5)

convert_uuencode — Codifica com uuencode uma string

Descrição

string convert_uuencode ( string $data )

convert_uuencode() codifica uma string usando o algoritmo uuencode.

Uuencode traduz toda string (incluindo binários) em caracteres imprimíveis, fazendo eles seguro para transmissão em rede. Dados uuencoded fica 35% maior que o original.

Parâmetros

data

A informação a ser codificada.

Valor Retornado

Retorna os dados convertidos com uuencode.

Exemplos

Exemplo #1 Exemplo da convert_uuencode()

<?php
$some_string = "test\ntext text\r\n";

echo convert_uuencode($some_string);
?>

Veja Também

  • convert_uudecode() - Decodifica uma string codificada com uuencode
  • base64_encode() - Codifica dados com MIME base64

convert_uudecode
count_chars
Funções para String


Retorna informações sobre os caracteres usados numa string

convert_uuencode
crc32
Funções para String
PHP Manual

count_chars

(PHP 4, PHP 5)

count_chars — Retorna informações sobre os caracteres usados numa string

Descrição

mixed count_chars ( string $string [, int $mode ] )

Conta o número de ocorrências de cada byte-value (0..255) na string e retorna ela de várias maneiras.

Parâmetros

string

A string a ser examinada.

mode

O parâmetro opcional mode, o valor padrão é 0.

Valor Retornado

Dependendo do mode count_chars() pode retornar o seguinte:

  • 0 - Um array com um byte-value como chave e a freqüência de cada byte como valor.
  • 1 - mesmo que o 0 mas apenas byte-values com freqüência maior do que 0 são listadas.
  • 2 - mesmo que 0 mas apenas byte-values com freqüência igual a 0 são listadas.
  • 3 - uma string contendo todos caracteres únicos é retornada.
  • 4 - uma string contendo todos caracteres não usados é retornada.

Exemplos

Exemplo #1 Exemplo count_chars()

<?php
$data = "Two Ts and one F.";

foreach (count_chars($data, 1) as $i => $val) {
   echo "There were $val instance(s) of \"" , chr($i) , "\" in the string.\n";
}
?>

O exemplo acima irá imprimir:

There were 4 instance(s) of " " in the string.
There were 1 instance(s) of "." in the string.
There were 1 instance(s) of "F" in the string.
There were 2 instance(s) of "T" in the string.
There were 1 instance(s) of "a" in the string.
There were 1 instance(s) of "d" in the string.
There were 1 instance(s) of "e" in the string.
There were 2 instance(s) of "n" in the string.
There were 2 instance(s) of "o" in the string.
There were 1 instance(s) of "s" in the string.
There were 1 instance(s) of "w" in the string.

Veja Também

  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • substr_count() - Conta o número de ocorrências de uma substring

convert_uuencode
crc32
Funções para String


Calcula polinômio crc32 de uma string

count_chars
crypt
Funções para String
PHP Manual

crc32

(PHP 4 >= 4.0.1, PHP 5)

crc32 — Calcula polinômio crc32 de uma string

Descrição

int crc32 ( string $str )

Gera o polinômio cyclic redundancy checksum de 32-bit de comprimento do str. É usado geralmente para validar a integridade de um dado sendo transferido.

Devido ao tipo integer do PHP conter sinal e muitos dos checksums crc32 resultarem em integers negativos, você precisa usar o formatador "%u" de sprintf() ou printf() para obter uma string representando o checksum crc32 sem sinal.

Parâmetros

str

A informação.

Valor Retornado

Retorna o checksum crc32 da str como um inteiro.

Exemplos

Exemplo #1 Mostrando um checksum crc32

Este exemplo mostra como mostrar um convertido checksum com a função printf():

<?php
$checksum = crc32("The quick brown fox jumped over the lazy dog.");
printf("%u\n", $checksum);
?>

Veja Também

  • md5() - Calcula o "hash MD5" de uma string
  • sha1() - Calcula a hash sha1 de uma string

count_chars
crypt
Funções para String


Encriptação unidirecional de string (hashing)

crc32
echo
Funções para String
PHP Manual

crypt

(PHP 4, PHP 5)

crypt — Encriptação unidirecional de string (hashing)

Descrição

string crypt ( string $str [, string $salt ] )

crypt() retornará uma string criptografada usando o algoritmo de encriptação Unix Standard DES-based ou ou algoritmos alternativos disponíveis no sistema.

Alguns SO suportam mais de um tipo de codificação. De fato, algumas vezes a codificação Standard DES-based é substituído por MD5-based . O tipo de codificação é definido pelo argumento salt. Na instalação, o PHP determina as possíveis funções de codificação e aceitará salts para outros tipos. Se nenhum salt é fornecido, o PHP auto-gera um salt padrão de 2 caracateres por definição, a menos que o tipo de codificação padrão do sistema seja MD5, nesse caso um salt MD5-compatible aleatório será gerado. O PHP define uma constante com nome CRYPT_SALT_LENGTH que dirá se um salt de 2 caracteres aplica-se ao seu sistema ou se o salt mais comprido de 12 caracteres é aplicável.

O Standard DES-based crypt() retorna o salt como o primeiro two characters da saída. Ele também usa apenas os oito primeiros caracteres da str, então strings longas que começam com os mesmos oito caracteres gerarão o mesmo resultado (quando o mesmo salt é usado).

Em sistemas onde a função crypt() suporta variados tipos de codificação, as seguintes funções são definidas para 0 ou 1 a depender se um dado tipo está disponível:

  • CRYPT_STD_DES - Codificação Standard DES-based com um salt de 2 caracteres
  • CRYPT_EXT_DES - Codificação Extended DES-based com um salt de 9 caracateres
  • CRYPT_MD5 - Codificação MD5 com um salt de 12 caracteres começando com $1$
  • CRYPT_BLOWFISH - Codificação Blowfish com um salt de 16 caracteres começando com $2$

Parâmetros

str

A string a ser encriptada.

salt

Uma opcional string de salt para base da encriptação. Se não fornecido, será gerado randomicamente pelo PHP cada vez que chamar esta função.

Se você está usando um salt fornecido, você está ciente que o salt é gerado uma vez. Se você está chamando essa função repetidamente, isto pode afetar a aparência e a segurança.

Valor Retornado

Retorna a string encriptada.

Exemplos

Exemplo #1 Exemplos da crypt()

<?php
$password = crypt('mypassword'); // let the salt be automatically generated

/* You should pass the entire results of crypt() as the salt for comparing a
   password, to avoid problems when different hashing algorithms are used. (As
   it says above, standard DES-based password hashing uses a 2-character salt,
   but MD5-based hashing uses 12.) */
if (crypt($user_input, $password) == $password) {
   echo "Password verified!";
}
?>

Exemplo #2 Usando crypt() com htpasswd

<?php
// Set the password
$password = 'mypassword';

// Get the hash, letting the salt be automatically generated
$hash = crypt($password);
?>

Exemplo #3 Usando crypt() com diferente tipos de encriptação

<?php
if (CRYPT_STD_DES == 1) {
    echo 'Standard DES: ' . crypt('rasmuslerdorf', 'rl') . "\n";
}

if (CRYPT_EXT_DES == 1) {
    echo 'Extended DES: ' . crypt('rasmuslerdorf', '_J9..rasm') . "\n";
}

if (CRYPT_MD5 == 1) {
    echo 'MD5:          ' . crypt('rasmuslerdorf', '$1$rasmusle$') . "\n";
}

if (CRYPT_BLOWFISH == 1) {
    echo 'Blowfish:     ' . crypt('rasmuslerdorf', '$2a$07$rasmuslerd...........$') . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Standard DES: rl.3StKT.4T8M
Extended DES: _J9..rasmBYk8r9AiWNc
MD5:          $1$rasmusle$rISCgZzpwk3UhDidwXvin0
Blowfish:     $2a$07$rasmuslerd............nIdrcHdxcUxWomQX9j6kvERCFjTg7Ra

Notas

Nota: Não há função decrypt, visto que crypt() usa um algoritmo unidirecional.

Veja Também

  • md5() - Calcula o "hash MD5" de uma string
  • A extensão Mcrypt
  • A man page do Unix para sua função crypt para mais informação

crc32
echo
Funções para String


Exibe uma ou mais strings

crypt
explode
Funções para String
PHP Manual

echo

(PHP 4, PHP 5)

echo — Exibe uma ou mais strings

Descrição

void echo ( string $arg1 [, string $... ] )

Exibe todos os parâmetros.

echo() não é uma função atualmente (construtor da linguagem) então não é obrigatório usar parênteses. echo() (diferente de outro construtor da linguagem) não se comporta como uma função, então ele nem sempre é usado no contexto de uma função. Sendo assim, se você quer passar mais de um parâmetro para echo(), os parâmetros não precisam estar entre parênteses.

echo() também tem um sintaxe curta, onde você pode imediatamente abrir a tag com o sinal de igual. Esta sintaxe curta funciona habilitando a definição da configuração short_open_tag.

I have <?=$foo?> foo.

Parâmetros

arg1

O parâmetro a exibir.

...

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 echo() exemplos

<?php
echo "Hello World";

echo "This spans
multiple lines. The newlines will be
output as well";

echo "This spans\nmultiple lines. The newlines will be\noutput as well.";

echo "Escaping characters is done \"Like this\".";

// You can use variables inside of an echo statement
$foo = "foobar";
$bar = "barbaz";

echo "foo is $foo"; // foo is foobar

// You can also use arrays
$baz = array("value" => "foo");

echo "this is {$baz['value']} !"; // this is foo !

// Using single quotes will print the variable name, not the value
echo 'foo is $foo'; // foo is $foo

// If you are not using any other characters, you can just echo variables
echo $foo;          // foobar
echo $foo,$bar;     // foobarbarbaz

// Some people prefer passing multiple parameters to echo over concatenation.
echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters.', chr(10);
echo 'This ' . 'string ' . 'was ' . 'made ' . 'with concatenation.' . "\n";

echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;

// Because echo does not behave like a function, the following code is invalid.
($some_var) ? echo 'true' : echo 'false';

// However, the following examples will work:
($some_var) ? print 'true' : print 'false'; // print is also a construct, but
                                            // it behaves like a function, so
                                            // it may be used in this context.
echo $some_var ? 'true': 'false'; // changing the statement around
?>

Notas

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

Veja Também

  • print() - Mostra uma string
  • printf() - Mostra uma string formatada
  • flush() - Descarrega o buffer de saída

crypt
explode
Funções para String


Divide uma string em strings

echo
fprintf
Funções para String
PHP Manual

explode

(PHP 4, PHP 5)

explode — Divide uma string em strings

Valor Retornado

array explode ( string $delimiter , string $string [, int $limit ] )

Retorna uma matriz de strings, cada uma como substring de string formada pela divisão dela a partir do delimiter.

Parâmetros

delimiter

O delimitador.

string

A string de entrada.

limit

Se limit é definido, o array retornado irá conter o máximo de elementos igual a limit com o último elemento contendo o resto da string.

Se o parâmetro limit é negativo, todos componentes exceto o último -limit são retornados.

Ainda que implode() pode por razões históricas aceitar seus parâmetros em uma das duas ordens, explode() não pode. Você deve assegurar que o argumento delimiter vem antes do argumento string.

Valor Retornado

Se delimiter é uma string vazia (""), explode() irá retornar FALSE. Se delimiter contém um valor que não contém em string, então explode() irá retornar um array contendo string.

Histórico

Versão | Descrição
5.1.0 | Suporte a limit negativo foi adicionado
4.0.1 | O parâmetro limit foi adicionado

Exemplos

Exemplo #1 explode() exemplos

<?php
// Example 1
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2

// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *

?>

Exemplo #2 Exemplos de parâmetro limit

<?php
$str = 'one|two|three|four';

// positive limit
print_r(explode('|', $str, 2));

// negative limit (since PHP 5.1)
print_r(explode('|', $str, -1));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => one
    [1] => two|three|four
)
Array
(
    [0] => one
    [1] => two
    [2] => three
)

Notas

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

Veja Também

  • preg_split() - Divide a string por uma expressão regular
  • str_split() - Converte uma string para um array
  • str_word_count() - Retorna informação sobre as palavras usadas em uma string
  • strtok() - Tokeniza uma string
  • implode() - Junta elementos de uma matriz em uma string

echo
fprintf
Funções para String


Escreve uma string formatada para um stream

explode
get_html_translation_table
Funções para String
PHP Manual

fprintf

(PHP 5)

fprintf — Escreve uma string formatada para um stream

Descrição

int fprintf ( resource $handle , string $format [, mixed $args [, mixed $... ]] )

Escreve uma string produzida de acordo com a string de formato format para o recurso de stream especificado por handle..

Parâmetros

handle

Um ponteiro para o sistema de arquivos resource é tipicamente criado usando fopen().

format

veja sprintf() para uma descrição de format.

args

...

Valor Retornado

Retorna o tamanho da string escrita.

Exemplos

Exemplo #1 fprintf(): inteiros prenchidos com zero

<?php
if (!($fp = fopen('date.txt', 'w'))) {
    return;
}
fprintf($fp, "%04d-%02d-%02d", $year, $month, $day);
// will write the formatted ISO date to date.txt
?>

Exemplo #2 fprintf(): formatando valores

<?php
if (!($fp = fopen('currency.txt', 'w'))) {
    return;
}
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money irá mostrar "123.1";
$len = fprintf($fp, '%01.2f', $money);
// will write "123.10" to currency.txt

echo "wrote $len bytes to currency.txt";
// use the return value of fprintf to determine how many bytes we wrote
?>

Veja Também

  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato
  • vsprintf() - Retorna uma string formatada
  • number_format() - Formata um número com os milhares agrupados

explode
get_html_translation_table
Funções para String


Retorna a tabela de tradução usada por htmlspecialchars e htmlentities

fprintf
hebrev
Funções para String
PHP Manual

get_html_translation_table

(PHP 4, PHP 5)

get_html_translation_table — Retorna a tabela de tradução usada por htmlspecialchars() e htmlentities()

Descrição

array get_html_translation_table ([ int $table [, int $quote_style ]] )

get_html_translation_table() retornará a tabela de tradução que é usada internamente por htmlspecialchars() e htmlentities().

Nota:

Caracteres especiais podem ser codificados de várias formas. E.g. " pode ser codificado como &quot;, &#34; ou &#x22. get_html_translation_table() retorna somente a forma mais comum dela.

Parâmetros

table

Há duas novas constantes definidas (HTML_ENTITIES, HTML_SPECIALCHARS) que permitem especificar a tabela que você quer. Valor padrão para table é HTML_SPECIALCHARS.

quote_style

Como nas funções htmlspecialchars() e htmlentities() você pode opcionalmente especificar a quote_style que você está trabalhando. O padrão é modo ENT_COMPAT. Veja a descrição desses modos em htmlspecialchars().

Valor Retornado

Retorna a tabela de tradução como um array.

Exemplos

Exemplo #1 Exemplo de tabela de tradução

<?php
$trans = get_html_translation_table(HTML_ENTITIES);
$str = "Hallo & <Frau> & Krämer";
$encoded = strtr($str, $trans);
?>
A variável $encoded conterá agora: "Hallo & <Frau> & Krämer".

Veja Também

  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • htmlentities() - Converte todos os caracteres aplicáveis em entidades html.
  • html_entity_decode() - Converte todas as entidades HTML para os seus caracteres

fprintf
hebrev
Funções para String


Converte texto lógico Hebraico para texto visual

get_html_translation_table
hebrevc
Funções para String
PHP Manual

hebrev

(PHP 4, PHP 5)

hebrev — Converte texto lógico Hebraico para texto visual

Descrição

string hebrev ( string $hebrew_text [, int $max_chars_per_line ] )

Converte texto lógico Hebraico para texto visual.

A função tenta evitar quebra de palavras.

Parâmetros

hebrew_text

A string de entrada em Hebraico.

max_chars_per_line

Este parâmetro opcional indica o número máximo de caracteres por linha que será retornado.

Valor Retornado

Retorna uma string visual.

Veja Também

  • hebrevc() - Converte um texto lógico Hebráico para um texto visual com conversão newline

get_html_translation_table
hebrevc
Funções para String


Converte um texto lógico Hebráico para um texto visual com conversão newline

hebrev
html_entity_decode
Funções para String
PHP Manual

hebrevc

(PHP 4, PHP 5)

hebrevc — Converte um texto lógico Hebráico para um texto visual com conversão newline

Descrição

string hebrevc ( string $hebrew_text [, int $max_chars_per_line ] )

É similar a hebrev() com a diferença de que ela converte newlines (\n) para "<br>\n".

A função tenta evitar quebra de palavras.

Parâmetros

hebrew_text

Uma string de entrada em Hebraico.

max_chars_per_line

Este parâmetro opcional indica o número máximo de caracteres por linha que será retornada.

Valor Retornado

Retorna a string visual.

Veja Também

  • hebrev() - Converte texto lógico Hebraico para texto visual

hebrev
html_entity_decode
Funções para String


Converte todas as entidades HTML para os seus caracteres

hebrevc
htmlentities
Funções para String
PHP Manual

html_entity_decode

(PHP 4 >= 4.3.0, PHP 5)

html_entity_decode — Converte todas as entidades HTML para os seus caracteres

Descrição

string html_entity_decode ( string $string [, int $quote_style [, string $charset ]] )

html_entity_decode() é o oposto da função htmlentities() no que converte todas as entidades HTML para os seus caracteres de string.

Parâmetros

string

A string de entrada.

quote_style

O segundo parâmetro, que é opcional, quote_style permite você definir o que será feito com 'apostrofos' e "aspas". Ele recebe uma constante entre três, sendo o padrão ENT_COMPAT:

Constantes disponíveis para quote_style
Nome da Constante | Descrição
ENT_COMPAT | Irá converter aspas e deixar os apostrofos.
ENT_QUOTES | Irá converter ambos.
ENT_NOQUOTES | Irá deixar ambos sem converter.

charset

O conjunto de caracteres ISO-8859-1 é usado como padrão para o terceiro parâmetro, que é opcional, charset. Este define o conjunto de caracteres usado na conversão.

Os seguintes conjuntos de caracteres são suportados no PHP 4.3.0 e posterior.

Conjuntos de caracteres suportados
Conjunto de caracteres | Apelidos | Descrição
ISO-8859-1 | ISO8859-1 | Western European, Latin-1
ISO-8859-15 | ISO8859-15 | Western European, Latin-9. Adiciona o símbolo do Euro, letras Francesas e Filandesas faltando no Latin-1(ISO-8859-1).
UTF-8 | Código de multi-byte 8-bit Unicode compatível com ASCII.
cp866 | ibm866, 866 | Conjunto de caracteres do DOS específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1251 | Windows-1251, win-1251, 1251 | Conjunto de caracteres do Windows específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1252 | Windows-1252, 1252 | Conjunto de caracteres do Windows específico para a Europa Ocidental.
KOI8-R | koi8-ru, koi8r | Russo. Este conjunto de caracteres é suportado no 4.3.2.
BIG5 | 950 | Chinês Tradicional, usado principalmente em Taiwan.
GB2312 | 936 | Chins Simplificado, conjunto de caracteres padrão nacional.
BIG5-HKSCS | Big5 com extenções de Hong Kong, Chinês Tradicional.
Shift_JIS | SJIS, 932 | Japonês
EUC-JP | EUCJP | Japonês

Nota: Qualquer outro conjunto de caracteres não é reconhecido e será usado o ISO-8859-1.

Valor Retornado

Retorna a string decodificada.

Histórico

Versão | Descrição
5.0.0 | Suporte para conjunto de caracteres multi-byte foi adicionado.

Exemplos

Exemplo #1 Decodificando entidades HTML

<?php
$orig = "I'll \"walk\" the <b>dog</b> now";

$a = htmlentities($orig);

$b = html_entity_decode($a);

echo $a; // I'll &quot;walk&quot; the &lt;b&gt;dog&lt;/b&gt; now

echo $b; // I'll "walk" the <b>dog</b> now

// For users prior to PHP 4.3.0 you may do this:
function unhtmlentities($string)
{
    // replace numeric entities
    $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
    $string = preg_replace('~&#([0-9]+);~e', 'chr("\\1")', $string);
    // replace literal entities
    $trans_tbl = get_html_translation_table(HTML_ENTITIES);
    $trans_tbl = array_flip($trans_tbl);
    return strtr($string, $trans_tbl);
}

$c = unhtmlentities($a);

echo $c; // I'll "walk" the <b>dog</b> now

?>

Notas

Nota:

Você deve imaginar porque trim(html_entity_decode('&nbsp;')); não reduz a string para uma string vazia, isto é porque a entidade '&nbsp;' não é o código ASCII 32 (o qual é retirado por trim()) mas o caracter ASCII 160 (0xa0) no conjunto de caracteres padrão.

Veja Também

  • htmlentities() - Converte todos os caracteres aplicáveis em entidades html.
  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • get_html_translation_table() - Retorna a tabela de tradução usada por htmlspecialchars e htmlentities
  • urldecode() - Decodifica uma URL codificada

hebrevc
htmlentities
Funções para String


Converte todos os caracteres aplicáveis em entidades html.

html_entity_decode
htmlspecialchars_decode
Funções para String
PHP Manual

htmlentities

(PHP 4, PHP 5)

htmlentities — Converte todos os caracteres aplicáveis em entidades html.

Descrição

string htmlentities ( string $string [, int $quote_style [, string $charset [, bool $double_encode ]]] )

Esta função é idêntica a htmlspecialchars() em toda forma, exceto que com htmlentities(), todos caracteres que tem entidade HTML equivalente são convertidos para estas entidades.

Se você está querendo decodificar (o inverso), você pode usar html_entity_decode().

Parâmetros

string

A string de entrada.

quote_style

Como htmlspecialchars(), o segundo parâmetro opcional quote_style você define o que irá ser feito com aspas 'simples' e "duplas". Use uma das três constantes com o padrão sendo ENT_COMPAT:

Constantes quote_style disponíveis
Nome da constante | Descrição
ENT_COMPAT | Irá converter aspas duplas e deixar somente aspas simples.
ENT_QUOTES | Irá converter ambas as aspas.
ENT_NOQUOTES | Irá deixar ambas as aspas não convertidas.

charset

Como htmlspecialchars(), o terceiro parâmetro opcional charset que define o conjunto de caracteres usado na conversão. Atualmente, o conjunto de caracteres ISO-8859-1 é usado com o padrão.

Os seguintes conjuntos de caracteres são suportados no PHP 4.3.0 e posterior.

Conjuntos de caracteres suportados
Conjunto de caracteres | Apelidos | Descrição
ISO-8859-1 | ISO8859-1 | Western European, Latin-1
ISO-8859-15 | ISO8859-15 | Western European, Latin-9. Adiciona o símbolo do Euro, letras Francesas e Filandesas faltando no Latin-1(ISO-8859-1).
UTF-8 | Código de multi-byte 8-bit Unicode compatível com ASCII.
cp866 | ibm866, 866 | Conjunto de caracteres do DOS específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1251 | Windows-1251, win-1251, 1251 | Conjunto de caracteres do Windows específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1252 | Windows-1252, 1252 | Conjunto de caracteres do Windows específico para a Europa Ocidental.
KOI8-R | koi8-ru, koi8r | Russo. Este conjunto de caracteres é suportado no 4.3.2.
BIG5 | 950 | Chinês Tradicional, usado principalmente em Taiwan.
GB2312 | 936 | Chins Simplificado, conjunto de caracteres padrão nacional.
BIG5-HKSCS | Big5 com extenções de Hong Kong, Chinês Tradicional.
Shift_JIS | SJIS, 932 | Japonês
EUC-JP | EUCJP | Japonês

Nota: Qualquer outro conjunto de caracteres não é reconhecido e será usado o ISO-8859-1.

double_encode

Quando double_encode esta'off, o PHP não irá codificar entidades HTML existentes. O padrão é converter qualquer coisa.

Valor Retornado

Retorna a string codificada.

Histórico

Versão | Descrição
5.2.3 | O parâmetro double_encode foi adicionado.
4.1.0 | O parâmetro charset foi adicionado.
4.0.3 | O parâmetro quote_style foi adicionado.

Exemplos

Exemplo #1 Exemplo da htmlentities()

<?php
$str = "A 'quote' is <b>bold</b>";

// Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);

// Outputs: A &#039;quote&#039; is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str, ENT_QUOTES);
?>

Veja Também

  • html_entity_decode() - Converte todas as entidades HTML para os seus caracteres
  • get_html_translation_table() - Retorna a tabela de tradução usada por htmlspecialchars e htmlentities
  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • nl2br() - Insere quebras de linha HTML antes de todas newlines em uma string
  • urlencode() - Codifica uma URL

html_entity_decode
htmlspecialchars_decode
Funções para String


Converte especiais entidades HTML para caracteres

htmlentities
htmlspecialchars
Funções para String
PHP Manual

htmlspecialchars_decode

(PHP 5 >= 5.1.0)

htmlspecialchars_decode — Converte especiais entidades HTML para caracteres

Descrição

string htmlspecialchars_decode ( string $string [, int $quote_style ] )

Esta função é o oposto da htmlspecialchars(). Ela converte especiais entidades HTML para caracteres.

As entidades convertidas são: &amp;, &quot; (quando ENT_NOQUOTES não é usado), &#039; (quando ENT_QUOTES é usado), &lt; e &gt;.

Parâmetros

string

A string para decodificar

quote_style

O tipo de aspa. Uma das seguintes constantes:

Constantes do quote_style
Nome da constante | Descrição
ENT_COMPAT | Converterá aspas dupla e deixará aspas simples (default)
ENT_QUOTES | Converterá ambas as aspas
ENT_NOQUOTES | Deixará ambas as aspas

Valor Retornado

Retorna a string decodificada.

Exemplos

Exemplo #1 Um exemplo da htmlspecialchars_decode()

<?php
$str = '<p>this -&gt; &quot;</p>';

echo htmlspecialchars_decode($str);

// note that here the quotes aren't converted
echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>

O exemplo acima irá imprimir:

<p>this -> "</p>
<p>this -> &quot;</p>

Veja Também

  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • html_entity_decode() - Converte todas as entidades HTML para os seus caracteres
  • get_html_translation_table() - Retorna a tabela de tradução usada por htmlspecialchars e htmlentities

htmlentities
htmlspecialchars
Funções para String


Converte caracteres especiais para a realidade HTML

htmlspecialchars_decode
implode
Funções para String
PHP Manual

htmlspecialchars

(PHP 4, PHP 5)

htmlspecialchars — Converte caracteres especiais para a realidade HTML

Descrição

string htmlspecialchars ( string $string [, int $quote_style [, string $charset ]] )

Certos caracteres tem significado especial em HTML, e seriam representados pela realidade HTML se eles estão preservanado seus significados. Esta função retorna uma string com algumas destas conversões feitas; As transformações feitas são aquelas mais úteis para programação web. Se você precisa que sejam transformados todos os caracteres da realidade HTML, use htmlentities() no lugar dela.

Esta função é útil na prevenção de textos fornecidos pelo usuário contendo marcação HTML, tal como um quadro de mensgens ou guest book. O segundo argumento opcional, quote_style, conta à função o que fazer com os caracteres aspas simples e dupla. O modo padrão, ENT_COMPAT, é o modo mais compatível com a atualidade, apenas transforma a aspas-dupla e deixa a aspas-simples como está. Se ENT_QUOTES está definida, ambas transformadas e se ENT_NOQUOTES está definida nenhuma das duas são modificadas.

As traduções executadas são:

  • '&' (ampersand) torna-se '&amp;'
  • '"' (aspas dupla) torna-se '&quot;' quando ENT_NOQUOTES não está definida.
  • ''' (aspas simples) torna-se '&#039;' apenas quando ENT_QUOTES está definida.
  • '<' (menor que) torna-se '&lt;'
  • '>' (maior que) torna-se '&gt;'

Exemplo #1 htmlspecialchars() exemplo

<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

Note que esta função não converte nada além do que foi listado acima. Para completa realidade de conversões, veja htmlentities(). Suporte para o segundo argumento opcional foi adicionado no PHP 3.0.17 e PHP 4.0.3.

O terceiro argumento define o conjunto de caracteres usados na conversão. O conjunto de caracteres padrão é ISO-8859-1. Suporte para o terceiro argumento foi adicionado no PHP 4.1.0.

Os seguintes conjuntos de caracteres são suportados no PHP 4.3.0 e posterior.

Conjuntos de caracteres suportados
Conjunto de caracteres | Apelidos | Descrição
ISO-8859-1 | ISO8859-1 | Western European, Latin-1
ISO-8859-15 | ISO8859-15 | Western European, Latin-9. Adiciona o símbolo do Euro, letras Francesas e Filandesas faltando no Latin-1(ISO-8859-1).
UTF-8 |  | Código de multi-byte 8-bit Unicode compatível com ASCII.
cp866 | ibm866, 866 | Conjunto de caracteres do DOS específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1251 | Windows-1251, win-1251, 1251 | Conjunto de caracteres do Windows específico para o Russo. Este conjunto de caracteres é suportado no 4.3.2.
cp1252 | Windows-1252, 1252 | Conjunto de caracteres do Windows específico para a Europa Ocidental.
KOI8-R | koi8-ru, koi8r | Russo. Este conjunto de caracteres é suportado no 4.3.2.
BIG5 | 950 | Chinês Tradicional, usado principalmente em Taiwan.
GB2312 | 936 | Chins Simplificado, conjunto de caracteres padrão nacional.
BIG5-HKSCS |  | Big5 com extenções de Hong Kong, Chinês Tradicional.
Shift_JIS | SJIS, 932 | Japonês
EUC-JP | EUCJP | Japonês

Nota: Qualquer outro conjunto de caracteres não é reconhecido e será usado o ISO-8859-1.

Veja também get_html_translation_table(),
htmlentities(),
strip_tags() e
nl2br().

htmlspecialchars_decode
implode
Funções para String


Junta elementos de uma matriz em uma string

htmlspecialchars
join
Funções para String
PHP Manual

implode

(PHP 4, PHP 5)

implode — Junta elementos de uma matriz em uma string

Descrição

string implode ( string $glue , array $pieces )

Retorna uma string contendo os elementos da matriz na mesma ordem com uma ligação entre cada elemento.

Exemplo #1 implode() exemplo

<?php

$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);

print $comma_separated; // lastname,email,phone

?>

Nota:

implode() pode, por razões históricas, aceitar seus parâmetros nas duas ordens. Para consistência com explode(), entretando, ela pode ser menos confusa por usar a ordem documentada dos argumentos.

Nota:

Apartir do PHP 4.3.0, o parametro glue da função implode() é opcional e seu padrão é uma string em branco(''). Este não é o uso preferido de implode(). Nós recomendamos sempre usar dois parametros para compatibilidade com versões anteriores.

Veja também explode(), e split().

htmlspecialchars
join
Funções para String


Sinônimo de implode

implode
lcfirst
Funções para String
PHP Manual

join

(PHP 4, PHP 5)

join — Sinônimo de implode()

Descrição

Esta função é um apelido para: implode().

implode
lcfirst
Funções para String


Torna minúsculo o primeiro caractere de uma string

join
levenshtein
Funções para String
PHP Manual

lcfirst

(PHP 5 >= 5.3.0)

lcfirst — Torna minúsculo o primeiro caractere de uma string

Descrição

string lcfirst ( string $str )

Retorna uma string com o primeiro caractere de str em letra minúscula se o caractere for alfabético.

Note que 'alfabético' é determinado pela localidade corrente. Por exemplo, na localidade "C" padrão caracteres tais como a-umlaut (ä) não serão convertidos.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string resultante.

Exemplos

Exemplo #1 Exemplo de lcfirst()

<?php
$foo = 'OlaMundo';
$foo = lcfirst($foo);             // olaMundo

$bar = 'OLA MUNDO!';
$bar = lcfirst($bar);             // oLLA MUNDO!
$bar = lcfirst(strtoupper($bar)); // oLLA MUNDO!
?>

Veja Também

  • ucfirst() - Converte para maiúscula o primeiro caractere de uma string
  • strtolower() - Converte uma string para minúsculas
  • strtoupper() - Converte uma string para maiúsculas
  • ucwords() - Converte para maiúsculas o primeiro caractere de cada palavra

join
levenshtein
Funções para String


Calcula a distância Levenshtein entre duas strings

lcfirst
localeconv
Funções para String
PHP Manual

levenshtein

(PHP 4 >= 4.0.1, PHP 5)

levenshtein — Calcula a distância Levenshtein entre duas strings

Descrição

int levenshtein ( string $str1 , string $str2 )
int levenshtein ( string $str1 , string $str2 , int $cost_ins , int $cost_rep , int $cost_del )
int levenshtein ( string $str1 , string $str2 , function $cost )

Retorna a Levenshtein-Distance entre duas strings argumentos ou -1, se nenhuma das strings argumentos é mais longa que o o limite de 255 caracteres (255 seria mais do que o bastante para o nome ou comparação de dicionário, e ninguém sério estaria fazendo análises genéticas com PHP).

A distância Levenshtein é definida como o número mínimo de caracteres que você tem para substituir, inserir ou apagar para transformar str1 dentro de str2. A complexidade do algoritmo é O(m*n), onde n e m são o comprimento da str1 e str2 (rather good when compared to similar_text(), which is O(max(n,m)**3), but still expensive).

Na sua forma mais simples a função pegará apenas as duas strings como parâmetros e calculará apenas o número de operações de inserção, substituição e deletação necessárias para transformar str1 em str2.

Uma segunda variante pegará três parâmetros adicionais que definem o custo das operações de inserção, substituição e deletação. Esta é a mais geral e adapatável do que a variante um, mas não tão eficiente.

A terceira variante (que ainda não é implementada) será a mais geral e adaptável, mas também a alternativa mais lenta. Ela chamará uma função de usuário fornecida que determinará o custo para cada possível operação.

A função de usuário fornecida(The user-supplied function) será chamada com os seguintes argumentos:

  • operation to apply: 'I', 'R' ou 'D'
  • actual character in string 1
  • actual character in string 2
  • position in string 1
  • position in string 2
  • remaining characters in string 1
  • remaining characters in string 2
The user-supplied function has to return a positive integer describing the cost for this particular operation, but it may decide to use only some of the supplied arguments.

The user-supplied function approach offers the possibility to take into account the relevance of and/or difference between certain symbols (characters) or even the context those symbols appear in to determine the cost of insert, replace and delete operations, but at the cost of losing all optimizations done regarding cpu register utilization and cache misses that have been worked into the other two variants.

Veja também soundex(),
similar_text(), e
metaphone().

lcfirst
localeconv
Funções para String


Obtém a informação da formatação numérica

levenshtein
ltrim
Funções para String
PHP Manual

localeconv

(PHP 4 >= 4.0.5, PHP 5)

localeconv — Obtém a informação da formatação numérica

Description

array localeconv ( void )

Retorna uma matriz associativa contendo informação de formatação numérica.

localeconv() retorna dados baseados na localidade corrente definida por setlocale(). A matriz associativa que é retornada contém os seguintes campos:

Array element | Descrição
decimal_point | Caracter de ponto decimal
thousands_sep | Thousands separator
grouping | Matriz contendo agrupamentos numéricos
int_curr_symbol | International currency symbol (i.e. USD)
currency_symbol | Simbolo da moeda local symbol (i.e. $)
mon_decimal_point | Caractere monetário de ponto decimal
mon_thousands_sep | Separador monetário de mil
mon_grouping | Matriz contendo agrupamentos monetários
positive_sign | Sinal para valores positivos
negative_sign | Sinal para valores negativos
int_frac_digits | Dígitos de fração Internacionais
frac_digits | Dígitos de fração locais
p_cs_precedes | TRUE Se o simbolo da moeda precede um valor positivo, FALSE se eles sucede um.
p_sep_by_space | TRUE Se um espaço separa o simbolo da moeda de um valor positivo, FALSE caso contrário
n_cs_precedes | TRUE Se o simbolo de moeda precede um valor negativo, FALSE se ele sucede
n_sep_by_space | TRUE se um espaço separa o simbolo da moeda de um valor negativo, FALSE caso contrário
p_sign_posn
  • 0
  • Parênteses na quantidade e simbolo da moeda
  • 1
  • A string sinal precede a quantidade e o simbolo da moeda
  • 2
  • A string sinal sucede a quantidade e o simbolo da moeda
  • 3
  • A string sinal precede imediatamente o simbolo da moeda
  • 4
  • A string sinal sucede imediatamente o simbolo da moeda
n_sign_posn
  • 0
  • Parentêses na quantidade e simbolo da moeda
  • 1
  • A string sinal precede a quantidade e o simbolo da moeda
  • 2
  • A string sinal sucede a quantidade e o simbolo da moeda
  • 3
  • A string sinal precede imediatamente o simbolo da moeda
  • 4
  • A string sinal sucede imediatamente o simbolo da moeda

Os campos de agrupamento contém matrizes que definem o modo de como os números seriam agrupados. Por exemplo, o campo de agrupamento para a localidade en_US, conteria uma matriz de 2 itens com os valores 3 e 3. O mais alto índice na matriz, mais distante da esquerda do agrupamento está. Se um elemento da matriz é igual a CHAR_MAX, até aqui nenhum agrupamento é feito. Se um elemento de matriz é igual a 0, o prévio elemento seria usado.

Exemplo #1 localeconv() exemplo

<?php
setlocale(LC_ALL, "en_US");

$locale_info = localeconv();

echo "<pre>\n";
echo "--------------------------------------------\n";
echo "  Monetary information for current locale:  \n";
echo "--------------------------------------------\n\n";

echo "int_curr_symbol:   {$locale_info["int_curr_symbol"]}\n";
echo "currency_symbol:   {$locale_info["currency_symbol"]}\n";
echo "mon_decimal_point: {$locale_info["mon_decimal_point"]}\n";
echo "mon_thousands_sep: {$locale_info["mon_thousands_sep"]}\n";
echo "positive_sign:     {$locale_info["positive_sign"]}\n";
echo "negative_sign:     {$locale_info["negative_sign"]}\n";
echo "int_frac_digits:   {$locale_info["int_frac_digits"]}\n";
echo "frac_digits:       {$locale_info["frac_digits"]}\n";
echo "p_cs_precedes:     {$locale_info["p_cs_precedes"]}\n";
echo "p_sep_by_space:    {$locale_info["p_sep_by_space"]}\n";
echo "n_cs_precedes:     {$locale_info["n_cs_precedes"]}\n";
echo "n_sep_by_space:    {$locale_info["n_sep_by_space"]}\n";
echo "p_sign_posn:       {$locale_info["p_sign_posn"]}\n";
echo "n_sign_posn:       {$locale_info["n_sign_posn"]}\n";
echo "</pre>\n";
?>

A constante CHAR_MAX também está definida para o uso mencionado acima.

Veja também setlocale().

levenshtein
ltrim
Funções para String


Retira espaços em branco (ou outros caracteres) do início da string

localeconv
md5_file
Funções para String
PHP Manual

ltrim

(PHP 4, PHP 5)

ltrim — Retira espaços em branco (ou outros caracteres) do início da string

Descrição

string ltrim ( string $str [, string $charlist ] )

Retira espaços em branco (ou outros caracteres) do início de uma string.

Parâmetros

str

A string de entrada.

charlist

Você pode também especificar os caracteres que você quer retirar, para isso, use o parâmetro charlist. Simplesmente liste todos os caracteres que você quer que seja removido. Com .. você pode especificar um intervalo de caracteres.

Valor Retornado

Esta função retorna uma string com whitespace retirados do início de str. Sem o segundo parâmetro, ltrim() retirará estes caracteres:

  • " " (ASCII 32 (0x20)), um espaço normal.
  • "\t" (ASCII 9 (0x09)), uma tabulação.
  • "\n" (ASCII 10 (0x0A)), uma linha nova (line feed).
  • "\r" (ASCII 13 (0x0D)), um retono de carro.
  • "\0" (ASCII 0 (0x00)), o byte NULL.
  • "\x0B" (ASCII 11 (0x0B)), uma tabulação vertical.

Histórico

Versão | Descrição
4.1.0 | O parâmetro charlist foi adicionado.

Exemplos

Exemplo #1 Exemplo de uso da ltrim()

<?php

$text = "\t\tThese are a few words :) ...  ";
$binary = "\x09Example string\x0A";
$hello  = "Hello World";
var_dump($text, $binary, $hello);

print "\n";

$trimmed = ltrim($text);
var_dump($trimmed);

$trimmed = ltrim($text, " \t.");
var_dump($trimmed);

$trimmed = ltrim($hello, "Hdle");
var_dump($trimmed);

// trim the ASCII control characters at the beginning of $binary
// (from 0 to 31 inclusive)
$clean = ltrim($binary, "\x00..\x1F");
var_dump($clean);

?>

O exemplo acima irá imprimir:

string(32) "        These are a few words :) ...  "
string(16) "    Example string
"
string(11) "Hello World"

string(30) "These are a few words :) ...  "
string(30) "These are a few words :) ...  "
string(7) "o World"
string(15) "Example string
"

Veja Também

  • trim() - Retira espaço no ínicio e final de uma string
  • rtrim() - Retira espaço em branco (ou outros caracteres) do final da string

localeconv
md5_file
Funções para String


Calcula hash md5 de um dado arquivo

ltrim
md5
Funções para String
PHP Manual

md5_file

(PHP 4 >= 4.2.0, PHP 5)

md5_file — Calcula hash md5 de um dado arquivo

Descrição

string md5_file ( string $filename [, bool $raw_output ] )

Calcula o hash MD5 do arquivo especificado pelo parâmetro filename usando o » RSA Data Security, Inc. MD5 Message-Digest Algorithm, e retorna esse hash. A hash é um número hexadecimal de 32 caracteres.

Parâmetros

filename

O nome do arquivo

raw_output

Quando TRUE, retorna no formato binário com o tamanho de 16. O padrão é FALSE.

Valor Retornado

Retorna uma string em sucesso, FALSE caso contrário.

Histórico

Versão | Descrição
5.0.0 | Adicionado o parâmetro raw_output
5.1.0 | Modificada função para usar a API de API. Significa que você pode usá-la com wrappers, como md5_file('http://example.com/..')

Veja Também

  • md5() - Calcula o "hash MD5" de uma string
  • sha1_file() - Calcula a hash sha1 de um arquivo
  • crc32() - Calcula polinômio crc32 de uma string

ltrim
md5
Funções para String


Calcula o "hash MD5" de uma string

md5_file
metaphone
Funções para String
PHP Manual

md5

(PHP 4, PHP 5)

md5 — Calcula o "hash MD5" de uma string

Descrição

string md5 ( string $str [, bool $raw_output ] )

Calcula o "hash MD5" de str usando » RSA Data Security, Inc. MD5 Message-Digest Algorithm, e devolve esse hash.

Parâmetros

str

A string.

raw_output

Se o opcional raw_output é definido para TRUE, então o md5 é ao invés retornado no formato binário com um tamanho de 16. Padrão para FALSE.

Valor Retornado

Retorna o hash como um número hexadecimal de 32 caracteres.

Histórico

Versão | Descrição
5.0.0 | O parâmetro raw_output foi adicionado.

Exemplos

Exemplo #1 Um exemplo da md5()

<?php
$str = 'apple';

if (md5($str) === '1f3870be274f6c49b3e31a0c6728957f') {
    echo "Would you like a green or red apple?";
    exit;
}
?>

Veja Também

  • sha1_file() - Calcula a hash sha1 de um arquivo
  • crc32() - Calcula polinômio crc32 de uma string
  • sha1() - Calcula a hash sha1 de uma string

md5_file
metaphone
Funções para String


Calcula a metaphone key de uma string

md5
money_format
Funções para String
PHP Manual

metaphone

(PHP 4, PHP 5)

metaphone — Calcula a metaphone key de uma string

Descrição

string metaphone ( string $str )

Calcula a metaphone key de str.

Similar a soundex() metaphone cria a mesma key para palavras sonoras similares. Ela é mais precisa do que soundex() por ela conhecer as regras básicas da pronunciação inglesa. As metaphone keys geradas são de comprimentos variados.

Metaphone foi desenvolvido por Lawrence Philips <lphilips at verity dot com>. Ela é descrita em ["Practical Algorithms for Programmers", Binstock & Rex, Addison Wesley, 1995].

md5
money_format
Funções para String


Formata um número como uma string de moeda

metaphone
nl_langinfo
Funções para String
PHP Manual

money_format

(PHP 4 >= 4.3.0, PHP 5)

money_format — Formata um número como uma string de moeda

Descrição

string money_format ( string $formato , float $numero )

money_format() retorna uma versão formatada de um numero. Esta função engloba a biblioteca de função do C strfmon(), com a diferença que esta implementação converte apenas um número por vez.

Parâmetros

format

A especificação do formato consistem da seguinte sequência:

  • a % character

  • flags opcionais

  • largura de campo opcional

  • precisão da esquerda opcional

  • precisão da direita opcional

  • conversão de caractere requerida

Flags

Uma ou mais, das flags opcionais abaixo podem ser usadas:

=f

O caracter = seguido por um caractere (único byte) f para ser usado como o caracter númerico de preenchimento. O caractere de preenchimento padrão é o espaço.

^

Desabilite o uso de agrupamento de caractere (como definido pela localidade atual).

+ ou (

Especifique o estilo de formatação para números positivos e negativos. Se + é usado, o equivalente da localidade para + e - será usado. Se ( é usado, quantias negativas são fechadas em parêntesis. se nenhuma especificação é dada, o padrão será +.

!

Suprima o símbolo atual da string de saída.

-

Se presente, isso fará todos os campos esquerda-justificados (arrumados para a direita), em oposição ao padrão que é para campos serem direita-justificados (arrumados para a esquerda).

Largura de campo

w

Uma string de dígito decimal especificando uma largura de campo mínima. O campo será direita-justificado a menos que o flag - seja usado. Valor padrão é 0 (zero) por definição.

Precisão de esquerdan

#n

O número máximo de dígitos (n) esperado para a esquerda do caracatere decimal(ex. ponto decimal). Isso é usado normalmente para manter a saída formatada alinhada nas mesmas colunas, usando o caractere de preenchimento se o número de dígitos é menor do que n. Se o número de dígitos atual é maior do que n, então esta especificação é ignorada.

Se agrupamento foi suprimido usando a flag ^, separatores de agrupamento serão inseridos antes dos caracteres de preenchimento (se algum) são adicionados, mesmo se o caractere de preenchimento é um dígito.

Para garantir alinhamento, quaisquer caracteres aparecendo, antes ou depois do número em saída formatada, como moeda ou simbolos de sinal, são arrumado conforme necessário, com caracteres de espaço para fazer seus formatos positivos e negativos num comprimento igual.

Precisão de direita

.p

Um período seguido por um número de dígitos (p) depois do caractere decimal. Se o valor de p é 0 (zero), o caractere decimal e os digitos à sua direita serão omitidos. Se nenhuma precisão de direita é incluida, o padrão será ditado pela localidade atual em uso. A quantia sendo formatada é arredondada para o número de dígitos especificados a priori para ser formatado.

Caracteres de conversão

i

O número é formatado de acordo com o formato de moeda internacional da localidade (ex para a localidade de EUA: USD 1,234.56).

n

O número é formatado de acordo com o formato de moeda nacional da localidade (ex: para a localidade de_DE: DM1.234,56).

%

Retorna o caractere %.

number

O número para ser formatado.

Valor Retornado

Retorna a string formatada. Os caracteres antes e depois da string de formatação serão retornados sem modificação.

Notas

Nota:

A função money_format() é apenas definida se o sistema tem capacidades de strfmon. Por exemplo, o Windows não tem, então money_format() está indefinida o Windows.

A categoria LC_MONETARY de configurações de localidade, afeta o comportamento desta função. Utilize setlocale() para definir a localidade padrão apropriadamente antes de usar esta função.

Exemplos

Exemplo #1 Exemplo da money_format()

Nós usaremos localidades diferentes e especificações de formatos e localidades para ilustrar o uso desta função.

<?php

$number = 1234.56;

// let's print the international format for the en_US locale
setlocale(LC_MONETARY, 'en_US');
echo money_format('%i', $number) . "\n";
// USD 1,234.56

// Italian national format with 2 decimals`
setlocale(LC_MONETARY, 'it_IT');
echo money_format('%.2n', $number) . "\n";
// L. 1.234,56

// Using a negative number
$number = -1234.5672;

// US national format, using () for negative numbers
// and 10 digits for left precision
setlocale(LC_MONETARY, 'en_US');
echo money_format('%(#10n', $number) . "\n";
// ($        1,234.57)

// Similar format as above, adding the use of 2 digits of right
// precision and '*' as a fill character
echo money_format('%=*(#10.2n', $number) . "\n";
// ($********1,234.57)

// Let's justify to the left, with 14 positions of width, 8 digits of
// left precision, 2 of right precision, withouth grouping character
// and using the international format for the de_DE locale.
setlocale(LC_MONETARY, 'de_DE');
echo money_format('%=*^-14#8.2i', 1234.56) . "\n";
// DEM 1234,56****

// Let's add some blurb before and after the conversion specification
setlocale(LC_MONETARY, 'en_GB');
$fmt = 'The final value is %i (after a 10%% discount)';
echo money_format($fmt, 1234.56) . "\n";
// The final value is  GBP 1,234.56 (after a 10% discount)

?>

Veja Também

  • setlocale() - Define informações locais
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • sprintf() - Retorna a string formatada
  • printf() - Mostra uma string formatada
  • number_format() - Formata um número com os milhares agrupados

metaphone
nl_langinfo
Funções para String


Retorna informação de linguagem e local

money_format
nl2br
Funções para String
PHP Manual

nl_langinfo

(PHP 4 >= 4.1.0, PHP 5)

nl_langinfo — Retorna informação de linguagem e local

Descrição

string nl_langinfo ( int $item )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

money_format
nl2br
Funções para String


Insere quebras de linha HTML antes de todas newlines em uma string

nl_langinfo
number_format
Funções para String
PHP Manual

nl2br

(PHP 4, PHP 5)

nl2br — Insere quebras de linha HTML antes de todas newlines em uma string

Descrição

string nl2br ( string $string )

Retorna string com '<br />' inserido antes de todas as newlines.

Parâmetros

string

A string de entrada.

Valor Retornado

Returns the altered string.

Histórico

Versão | Descrição
4.0.5 | nl2br() é agora XHTML compliant. Todas versões anteriores retornam string com '<br>' inserido antes de newlines ao invés de '<br />'.

Exemplos

Exemplo #1 usando nl2br()

<?php
echo nl2br("foo isn't\n bar");
?>

O exemplo acima irá imprimir:

foo isn't<br />
 bar

Veja Também

  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • htmlentities() - Converte todos os caracteres aplicáveis em entidades html.
  • wordwrap() - Quebra uma string em um dado número de caracteres
  • str_replace() - Substitui todas as ocorrências da string de procura com a string de substituição

nl_langinfo
number_format
Funções para String


Formata um número com os milhares agrupados

nl2br
ord
Funções para String
PHP Manual

number_format

(PHP 4, PHP 5)

number_format — Formata um número com os milhares agrupados

Descrição

string number_format ( float $number [, int $decimals ] )
string number_format ( float $number , int $decimals , string $dec_point , string $thousands_sep )

number_format() retorna uma versão formatada de number. Esta função aceita um, dois ou quatro parâmetros (não três):

Se apenas um parâmetro é dado, number será formatado sem decimais, mas com uma virgula (",") entre cada grupo de milhar.

Se dois parâmetros são dados, number será formatado com o número de casas decimais especificadas em decimals com um ponto (".") na frente, e uma vírgula (",") entre cada grupo de milhar.

Se todos os quatro parâmetros forem dados, number será formatado com o número de casas decimais em decimals, dec_point ao invés do ponto (".") antes das casas decimais e thousands_sep ao invés de uma vírgula (",") entre os grupos de milhares.

Somente o primeiro caractere de thousands_sep é usado. Por exemplo, se você usar foo como o parâmetro thousands_sep no número 1000, number_format() irá retornar 1f000.

Exemplo #1 Exemplo number_format()

Por exemplo, a notação Francesa usa duas casas decimais, vírgula (',') como separador decimal, e espaço (' ') como separador de milhar. Isto é feito com a linha :

<?php

$number = 1234.56;

// Notação Inglesa (padrão)
$english_format_number = number_format($number);
// 1,234

// Notação Francesa
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56

$number = 1234.5678;

// Notação Inglesa com separador de milhar
$english_format_number = number_format($number, 2, '.', '');
// 1234.57

?>

Veja também: sprintf(), printf() e sscanf().

nl2br
ord
Funções para String


Retorna o valor ASCII do caractere

number_format
parse_str
Funções para String
PHP Manual

ord

(PHP 4, PHP 5)

ord — Retorna o valor ASCII do caractere

Descrição

int ord ( string $string )

Retorna o valor ASCII do primeiro caractere de string.

Esta função complementa chr().

Parâmetros

string

Um caractere.

Valor Retornado

Retorna o valor ASCII como um inteiro.

Exemplos

Exemplo #1 Exemplo da ord()

<?php
$str = "\n";
if (ord($str) == 10) {
    echo "O primeiro caractere de \$str é uma nova linha.\n";
}
?>

Veja Também

  • chr() - Retorna um caracter específico
  • Uma » tabela ASCII

number_format
parse_str
Funções para String


Converte a string em variáveis

ord
print
Funções para String
PHP Manual

parse_str

(PHP 4, PHP 5)

parse_str — Converte a string em variáveis

Descrição

void parse_str ( string $str [, array &$arr ] )

Converte str como se ela tivesse sido passada via URL e define o valor das variáveis.

Nota:

Para pegar a QUERY_STRING atual, você deve usar a variável $_SERVER['QUERY_STRING']. também você deve querer ler a seção sobre variáveis de fora do PHP.

Nota:

A configuração magic_quotes_gpc afeta a saída desta função, parse_str() usa o mesmo mecanismo que o PHP usa para popular as variáveis $_GET, $_POST, etc.

Parâmetros

str

A string de entrada.

arr

Se o segundo parâmetro arr é usado, variável são armazenadas nesta variável como elementos de um array.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
4.0.3 | O parâmetro arr foi adicionado

Exemplos

Exemplo #1 Usando parse_str()

<?php
$str = "first=value&arr[]=foo+bar&arr[]=baz";
parse_str($str);
echo $first;  // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz

parse_str($str, $output);
echo $output['first'];  // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz

?>

Veja Também

  • parse_url() - Interpreta uma URL e retorna os seus componentes
  • pathinfo() - Retorna informações sobre um caminho de arquivo
  • http_build_query() - Gera a string de consulta (query) em formato URL
  • get_magic_quotes_gpc() - Obtém a configuração atual de magic quotes gpc
  • urldecode() - Decodifica uma URL codificada

ord
print
Funções para String


Mostra uma string

parse_str
printf
Funções para String
PHP Manual

print

(PHP 4, PHP 5)

print — Mostra uma string

Descrição

int print ( string $arg )

Mostra arg.

print() não é atualmente uma função real (é uma construção da linguagem) então você não precisa usar parênteses com ela.

Parâmetros

arg

A string de entrada.

Valor Retornado

Retorna sempre 1.

Exemplos

Exemplo #1 Exemplos print()

<?php
print("Alô Mundo");

print "print() também funciona sem parênteses.";

print "Isto divide
em múltiplas linhas. As quebras de linha serão
mostradas também";

print "Isto divide\nem múltiplas linhas. As quebras de linha serão\nmostradas também";

print "escapar caracteres é feito \"como isto\".";

// Você pode usar variáveis dentro do
$foo = "foobar";
$bar = "barbaz";

print "foo is $foo"; // foo is foobar
// Você pode usar arrays
$bar = array("value" => "foo");
print "this is {$bar['value']} !"; // this is foo !

// Usando apóstrofos irá exibir o nome da variável, não o valor
print 'foo is $foo'; // foo is $foo

// Se você não estiver usando outros caracteres, somente mostre a variável
print $foo;          // foobar

print <<<END
Isto usa a sintaxe "aqui documento" para mostrar
múltiplas linhas com interpolação de $variable interpolation. Note
que o terminador de aqui documento deve aparecer
em uma linha terminada em ponto e vírgula(;) sem nenhum espaço extra!
END;
?>

Notas

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

Veja Também

  • echo() - Exibe uma ou mais strings
  • printf() - Mostra uma string formatada
  • flush() - Descarrega o buffer de saída

parse_str
printf
Funções para String


Mostra uma string formatada

print
quoted_printable_decode
Funções para String
PHP Manual

printf

(PHP 4, PHP 5)

printf — Mostra uma string formatada

Descrição

void printf ( string $format [, mixed $args ] )

Produz uma saída de acordo com format, o qual é descrito na documentação para sprintf().

Veja também print(), sprintf(),
vprintf(), sscanf(),
fscanf() e flush().

print
quoted_printable_decode
Funções para String


Converte uma string quoted-printable para uma string de 8 bit

printf
quoted_printable_encode
Funções para String
PHP Manual

quoted_printable_decode

(PHP 4, PHP 5)

quoted_printable_decode — Converte uma string quoted-printable para uma string de 8 bit

Descrição

string quoted_printable_decode ( string $str )

Esta função retorna uma string binária de 8-bit correspondendo a string quoted printable decodificada (de acordo com » RFC2045, seção 6.7, não » RFC2821, seção 4.5.2, adicionais periodos não são removidos do início da linha).

Esta função é similar a imap_qprint(), exceto que esta não requer o módulo IMAP para funcionar.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna uma string binária de 8-bit.

Veja Também

  • quoted_printable_encode() - Converte uma string de 8 bits em uma string quoted-printable

printf
quoted_printable_encode
Funções para String


Converte uma string de 8 bits em uma string quoted-printable

quoted_printable_decode
quotemeta
Funções para String
PHP Manual

quoted_printable_encode

(PHP 5 >= 5.3.0)

quoted_printable_encode — Converte uma string de 8 bits em uma string quoted-printable

Descrição

string quoted_printable_encode ( string $str )

Retorna uma string quoted-printable criada de acordo com » RFC2045, seção 6.7.

Esta função é similar a imap_8bit(), exceto que essa não requer o módulo IMAP para funcionar.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string codificada.

Veja Também

  • quoted_printable_decode() - Converte uma string quoted-printable para uma string de 8 bit
  • iconv_mime_encode() - Composes a MIME header field

quoted_printable_decode
quotemeta
Funções para String


Adiciona uma barra invertida antes dos meta caracteres

quoted_printable_encode
rtrim
Funções para String
PHP Manual

quotemeta

(PHP 4, PHP 5)

quotemeta — Adiciona uma barra invertida antes dos meta caracteres

Descrição

string quotemeta ( string $str )

Retorna uma versão de str com uma barra invertida (\) antes de cada um destes caracteres:

. \ + * ? [ ^ ] ( $ )

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string com meta caracteres com escape.

Notas

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

Veja Também

  • addslashes() - Adiciona barras invertidas a uma string
  • addcslashes() - String entre aspas com barras no estilo C
  • htmlentities() - Converte todos os caracteres aplicáveis em entidades html.
  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML
  • nl2br() - Insere quebras de linha HTML antes de todas newlines em uma string
  • stripslashes() - Desfaz o efeito de addslashes
  • stripcslashes() - Desfaz o efeito de addcslashes
  • ereg() - Casando expressões regulares

quoted_printable_encode
rtrim
Funções para String


Retira espaço em branco (ou outros caracteres) do final da string

quotemeta
setlocale
Funções para String
PHP Manual

rtrim

(PHP 4, PHP 5)

rtrim — Retira espaço em branco (ou outros caracteres) do final da string

Descrição

string rtrim ( string $str [, string $charlist ] )

Esta função retorna a string com os espaços em branco retirados do final de str.

Sem o segundo parâmetro, rtrim() irá retirar os seguintes caracteres:

  • " " (ASCII 32 (0x20)), um espaço comum.
  • "\t" (ASCII 9 (0x09)), uma tabulação.
  • "\n" (ASCII 10 (0x0A)), uma nova linha.
  • "\r" (ASCII 13 (0x0D)), um retorno de carro(ENTER).
  • "\0" (ASCII 0 (0x00)), o byte NULL.
  • "\x0B" (ASCII 11 (0x0B)), uma tabulação vertical.

Parâmetros

str

A string de entrada.

charlist

Você também pode especificar os caracteres que você deseja retirar, pelo parâmetro charlist. Simplesmente liste todos os caracteres que você quer ver retirados. Com .. você pode especificar um intervalo de caracteres.

Valor Retornado

Retorna a string modificada.

Histórico

Versão | Descrição
4.1.0 | O parâmetro charlist foi adicionado.

Exemplos

Exemplo #1 Exemplo de uso da função rtrim()

<?php

$text = "\t\tThese are a few words :) ...  ";
$binary = "\x09Example string\x0A";
$hello  = "Hello World";
var_dump($text, $binary, $hello);

print "\n";

$trimmed = rtrim($text);
var_dump($trimmed);

$trimmed = rtrim($text, " \t.");
var_dump($trimmed);

$trimmed = rtrim($hello, "Hdle");
var_dump($trimmed);

// trim the ASCII control characters at the end of $binary
// (from 0 to 31 inclusive)
$clean = rtrim($binary, "\x00..\x1F");
var_dump($clean);

?>

O exemplo acima irá imprimir:

string(32) "        These are a few words :) ...  "
string(16) "    Example string
"
string(11) "Hello World"

string(30) "        These are a few words :) ..."
string(26) "        These are a few words :)"
string(9) "Hello Wor"
string(15) "    Example string"

Veja Também

  • trim() - Retira espaço no ínicio e final de uma string
  • ltrim() - Retira espaços em branco (ou outros caracteres) do início da string

quotemeta
setlocale
Funções para String


Define informações locais

rtrim
sha1_file
Funções para String
PHP Manual

setlocale

(PHP 4, PHP 5)

setlocale — Define informações locais

Descrição

string setlocale ( mixed $category , string $locale [, string $... ] )
string setlocale ( mixed $category , array $locale )

Category é uma constante (ou string) especificando a categoria de funções afetadas pela definição local: setting:

  • LC_ALL para tudo abaixo
  • LC_COLLATE para comparação de strings, veja strcoll()
  • LC_CTYPE para classificação de caracteres e conversão, por exemplo strtoupper()
  • LC_MONETARY para localeconv()
  • LC_NUMERIC para o separador decimal (Veja também localeconv())
  • LC_TIME para formatação de data e hora com strftime()

Se locale for uma string vazia "", o nome do local será obtido apartir de variaveis de ambiente com os mesmos nomes das categorias acima ou apartir de "LANG".

Se locale for NULL ou "0", a definição de local não é modificada, apenas retorna a definição atual.

Se locale for uma matriz ou conter parâmetros adicionais, então cada elemento da matriz é tentado como um local até obter sucesso. Isto é útil se um lugar é conhecido por nomes diferentes em sistemas diferentes ou para prover um outro local se um estiver indisponível.

Nota: Passar varios lugares não esta disponível antes do PHP 4.3.0

setlocale() retorna o novo local ou FALSE se a funcionalidade de locais não estiver implementada em sua plataforma, o local não existir ou a categoria for invalida. Uma categoria invalida também gera uma mensagem de aviso. Nomes de categoria/local podem ser encontrados em » RFC 1766 e » ISO 639.

Nota:

O valor de retorno de setlocale() depende do sistema no qual o PHP esta sendo executado. Ele retorna exatamente o que a função setlocale do sistema retorna.

Dica

Usuários do windows encontraram informações úteis sobre as strings de locale no site MSDN da Microsoft. Strings das línguas suportadas podem ser encontradas » aqui as strings de pais/região suportados » aqui. Sistemas windows suportam códigos de três letras para pais/região especificados por ISO 3166-Alpha-3, que pode ser encontrada em » Unicode website .

Exemplo #1 Exemplos setlocale()

<?php
/* Define o local para Holandês(usar pt_BR para o Português(Brasil) ) */
setlocale (LC_ALL, 'nl_NL');

/* Mostra: vrijdag 22 december 1978 */
echo strftime ("%A %e %B %Y", mktime (0, 0, 0, 12, 22, 1978));

/* Tenta diferentes nomes de local para o Alemão apartir do PHP 4.3.0 */
$loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
echo "Preferred locale for german on this system is '$loc_de'";
?>

Exemplo #2 Exemplos para windows desetlocale()

<?php
/* Define o local para Holandês(usar ptb para o Português(Brasil) ) */
setlocale (LC_ALL, 'nld_nld');

/* Mostra: vrijdag 22 december 1978 */
echo strftime ("%A %d %B %Y", mktime (0, 0, 0, 12, 22, 1978));

/* Tenta diferentes nomes de local para o Alemão apartir do PHP 4.3.0 */
$loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'deu_deu');
echo "Preferred locale for german on this system is '$loc_de'";
?>

rtrim
sha1_file
Funções para String


Calcula a hash sha1 de um arquivo

setlocale
sha1
Funções para String
PHP Manual

sha1_file

(PHP 4 >= 4.3.0, PHP 5)

sha1_file — Calcula a hash sha1 de um arquivo

Descrição

string sha1_file ( string $nomedoarquivo [, bool $raw_output ] )

Calcula a hash sha1 de nomedoarquivo usando » US Secure Hash Algorithm 1, e retorna esta hash. A hash é um número hexadecimal de 40 caracteres.

Parâmetros

filename

O nome do arquivo

raw_output

Quando TRUE, retorna no formato binário com o tamanho de 20. O padrão é FALSE.

Valor Retornado

Retorna uma string em sucesso, FALSE caso contrário.

Histórico

Versão | Descrição
5.0.0 | Adicionado o parâmetro raw_output
5.1.0 | Modificada a função para usar a API de streams. Significa que você pode usá-la com wrappers, como sha1_file('http://example.com/..')

Veja Também

  • sha1() - Calcula a hash sha1 de uma string
  • md5_file() - Calcula hash md5 de um dado arquivo
  • crc32() - Calcula polinômio crc32 de uma string

setlocale
sha1
Funções para String


Calcula a hash sha1 de uma string

sha1_file
similar_text
Funções para String
PHP Manual

sha1

(PHP 4 >= 4.3.0, PHP 5)

sha1 — Calcula a hash sha1 de uma string

Descrição

string sha1 ( string $str [, bool $raw_output ] )

Calcula a hash sha1 de str usando » US Secure Hash Algorithm 1, e retorna esta hash. A hash é um número hexadecimal de 40 caracteres. Se o parâmetro opcional raw_output for TRUE, então o resultado é retornado em um formato binário com o tamanho de 20.

Nota: O parâmetro opcional raw_output foi adicionado no PHP 5.0.0 e o padrão é FALSE

Exemplo #1 Exemplo sha1()

<?php
$str = 'apple';

if (sha1($str) === 'd0be2dc421be4fcd0172e5afceea3970e2f3d940') {
    echo "Would you like a green or red apple?";
    exit;
}
?>

Veja também sha1_file(), crc32(), e md5()

sha1_file
similar_text
Funções para String


Calcula a similaridade entre duas strings

sha1
soundex
Funções para String
PHP Manual

similar_text

(PHP 4, PHP 5)

similar_text — Calcula a similaridade entre duas strings

Descrição

int similar_text ( string $first , string $second [, float &$percent ] )

Calcula a similaridade entre duas strings como descrito em Oliver [1993]. Note que esta implementação não usa um stack como no pseudo-código de Oliver, mas chamadas recursivas as quais podem ou não tornar todo o processo mais rapido. Note também que a complexidade deste algotimo é O(N**3) aonde N é o tamanho da maior string.

Parâmetros

primeira

A primeira string.

segunda

A segunda string.

percentual

Passando uma referencia como terceiro argumento, a função similar_text() irá calcular o percentual de similaridade para você.

Valor Retornado

Retorna o número de caracteres iguais em ambas as strings.

Veja Também

  • levenshtein() - Calcula a distância Levenshtein entre duas strings
  • soundex() - Calcula a chave soundex de uma string

sha1
soundex
Funções para String


Calcula a chave soundex de uma string

similar_text
sprintf
Funções para String
PHP Manual

soundex

(PHP 4, PHP 5)

soundex — Calcula a chave soundex de uma string

Descrição

string soundex ( string $str )

Calcula a chave soundex de str.

Chaves soundex tem a propriedade que palavras pronunciadas similarmente produzem a mesma chave soundex, e assim podem ser usadas em pesquisas em bancos de dados aonde você conhece a pronuncia mas não exatamente como se escreve. Esta função soundex retorna uma string de 4 caracteres, começando com uma letra.

Esta função soundex em particular é a descrita por Donald Knuth em "The Art Of Computer Programming, vol. 3: Sorting And Searching", Addison-Wesley (1973), pp. 391-392.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a chave soundex como uma string.

Exemplos

Exemplo #1 Exemplos de Soundex

<?php
soundex("Euler") == soundex("Ellery") == 'E460';
soundex("Gauss") == soundex("Ghosh") == 'G200';
soundex("Hilbert") == soundex("Heilbronn") == 'H416';
soundex("Knuth") == soundex("Kant") == 'K530';
soundex("Lloyd") == soundex("Ladd") == 'L300';
soundex("Lukasiewicz") == soundex("Lissajous") == 'L222';
?>

Veja Também

  • levenshtein() - Calcula a distância Levenshtein entre duas strings
  • metaphone() - Calcula a metaphone key de uma string
  • similar_text() - Calcula a similaridade entre duas strings

similar_text
sprintf
Funções para String


Retorna a string formatada

soundex
sscanf
Funções para String
PHP Manual

sprintf

(PHP 4, PHP 5)

sprintf — Retorna a string formatada

Descrição

string sprintf ( string $format [, mixed $args [, mixed $... ]] )

Retorna uma string produzida de acordo com a string de formatação format.

Parâmetros

format

A string e formatação é composta de zero ou mais diretivas: caracteres normais (excluindo %) que são copiados diretamente para o resultado, e especificações de conversão, cada um dos quais resulta em obter o seu próprio parâmetro. Isto se aplica para sprintf() e printf().

Cada especificação de conversão consiste em um símbolo de porcento (%), seguido por um ou mais destes elementos em ordem:

  1. Um opcional sinal especificador que indica (- ou +) pode ser usado no número. Por padrão, somente o sinal - é usado no número se ele é negativo. Este especificador força números positivos a ter o sinal +, foi adicionado no PHP 4.3.0.
  2. Um especificador de prenchimento opcional que diz qual caractere será usado para prencher o resultado para o tamanho certo. Isto pode ser um espaço ou 0 (zero character). O padrão é prencher com espaços. Um caractere alternativo de prenchimento pode ser especificado colocando uma aspa simples (') antes. Veja os exemplos abaixo.
  3. Um especificador de alinhamento opcional que diz se o resultado deve ser alinhado a esquerda ou a direita. O padrão é alinhar a direita; um caractere - fará com que seja alinhado a esquerda.
  4. Um número opcional, um especificador de tamanho que diz quantos caracteres (mínimo) deve resultar desta conversão.
  5. Um especificador de precisão opcional que diz quantos digitos decimais devem ser mostrados para números de ponto flutuante. Quando usando este especificador na string, ele age como um ponto delimitador, definindo o máximo de caracteres limit para a string.

  6. Um especificador de tipo que diz que o argumento deve ser tratado como do tipo. Os tipos possivéis são:

    • % - Um caractere porcento. Não é requerido neenhum argumento.
    • b - O argumento é tratado com um inteiro, e mostrado como um binário.
    • c - O argumento é tratado como um inteiro, e mostrado como o caractere ASCII correspondente.
    • d - O argumento é tratado como um inteiro, e mostrado como um número decimal com sinal.
    • e - o argumento é tratado como notação científica (e.g. 1.2e+2). O especificador de precisão indica o número de dígitos depois do ponto decimal desde o PHP 5.2.1. Em versões anteriores, ele pegava o número de dígitos significantes (ou menos).
    • u - O argumento é tratado com um inteiro, e mostrado como um número decimal sem sinal.
    • f - O argumento é tratado como um float, e mostrado como um número de ponto flutuante (do locale).
    • F - o argumento é tratado como um float, e mostrado como um número de ponto flutuante (não usado o locale). Disponível desde o PHP 4.3.10 e PHP 5.0.3.
    • o - O argumento é tratado com um inteiro, e mostrado como un número octal.
    • s - O argumento é tratado e mostrado como uma string.
    • x - O argumento é tratado como um inteiro, e mostrado como um número hexadecimal (com as letras minúsculas).
    • X - O argumento é tratado como um inteiro, e mostrado como um número hexadecimal (com as letras maiúsculas).

A string de formato suporta argumentos com numeração/troca. Aqui está um exemplo:

Exemplo #1 Troca de argumentos

<?php
$format = 'There are %d monkeys in the %s';
printf($format,$num,$location);
?>
Este deve mostrar, "There are 5 monkeys in the tree". Mas imagine que nós estejamos criando a string de formatação em um arquivo separado, normalmente para internacionalizar e rescrevemos como:

Exemplo #2 Troca de argumentos

<?php
$format = 'The %s contains %d monkeys';
printf($format,$num,$location);
?>
Agora nós temos um problema. A ordem dos argumentos na string de formatação não combina com os argumentos no código. Nós gostariamos de deixar o código como esta e simplesmente indicar na string de formatação quais argumentos pertencem aonde. Podemos escrever a string de formatação assim:

Exemplo #3 Troca de argumento

<?php
$format = 'The %2$s contains %1$d monkeys';
printf($format,$num,$location);
?>
Um beneficio adicional disto é ue você pode repetir os especificadores de conversão sem adicionar mais argumentos em seu código. Por exemplo:

Exemplo #4 Troca de argumento

<?php
$format = 'The %2$s contains %1$d monkeys.
           That\'s a nice %2$s full of %1$d monkeys.';
printf($format, $num, $location);
?>

args

...

Valor Retornado

Retorna a string produzida de acordo com as strings de formatação format.

Histórico

Versão | Descrição
4.0.6 | Suporte para argumento numerado/troca foi adicionado

Exemplos

Exemplo #5 printf(): vários exemplos

<?php
$n =  43951789;
$u = -43951789;
$c = 65; // ASCII 65 is 'A'

// notice the double %%, this prints a literal '%' character
printf("%%b = '%b'\n", $n); // binary representation
printf("%%c = '%c'\n", $c); // print the ascii character, same as chr() function
printf("%%d = '%d'\n", $n); // standard integer representation
printf("%%e = '%e'\n", $n); // scientific notation
printf("%%u = '%u'\n", $n); // unsigned integer representation of a positive integer
printf("%%u = '%u'\n", $u); // unsigned integer representation of a negative integer
printf("%%f = '%f'\n", $n); // floating point representation
printf("%%o = '%o'\n", $n); // octal representation
printf("%%s = '%s'\n", $n); // string representation
printf("%%x = '%x'\n", $n); // hexadecimal representation (lower-case)
printf("%%X = '%X'\n", $n); // hexadecimal representation (upper-case)

printf("%%+d = '%+d'\n", $n); // sign specifier on a positive integer
printf("%%+d = '%+d'\n", $u); // sign specifier on a negative integer
?>

O exemplo acima irá imprimir:

%b = '10100111101010011010101101'
%c = 'A'
%d = '43951789'
%e = '4.39518e+7'
%u = '43951789'
%u = '4251015507'
%f = '43951789.000000'
%o = '247523255'
%s = '43951789'
%x = '29ea6ad'
%X = '29EA6AD'
%+d = '+43951789'
%+d = '-43951789'

Exemplo #6 printf(): especificadores de string

<?php
$s = 'monkey';
$t = 'many monkeys';

printf("[%s]\n",      $s); // standard string output
printf("[%10s]\n",    $s); // right-justification with spaces
printf("[%-10s]\n",   $s); // left-justification with spaces
printf("[%010s]\n",   $s); // zero-padding works on strings too
printf("[%'#10s]\n",  $s); // use the custom padding character '#'
printf("[%10.10s]\n", $t); // left-justification but with a cutoff of 10 characters
?>

O exemplo acima irá imprimir:

[monkey]
[    monkey]
[monkey    ]
[0000monkey]
[####monkey]
[many monke]

Exemplo #7 sprintf(): inteiros prenchidos com zero

<?php
$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);
?>

Exemplo #8 sprintf(): formatando dinheiro

<?php
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money irá mostrar "123.1";
$formatted = sprintf("%01.2f", $money);
// echo $formatted irá mostrar "123.10"
?>

Exemplo #9 sprintf(): notação científica

<?php
$number = 362525200;

echo sprintf("%.3e", $number); // imprime 3.625e+8
?>

Veja Também

  • printf() - Mostra uma string formatada
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato
  • vsprintf() - Retorna uma string formatada
  • number_format() - Formata um número com os milhares agrupados

soundex
sscanf
Funções para String


Interpreta a entrada de uma string de acordo com um formato

sprintf
str_getcsv
Funções para String
PHP Manual

sscanf

(PHP 4 >= 4.0.1, PHP 5)

sscanf — Interpreta a entrada de uma string de acordo com um formato

Descrição

mixed sscanf ( string $str , string $format [, mixed &$... ] )

A função sscanf() é análoga a printf(). sscanf() lê da string str e interpreta ela de acordo com o formato especificado. Como é descrito na documentação para sprintf().

Qualquer espaço em branco na string de formato será comparada com qualquer espaço em branco na string de entrada. Isto significa que até mesmo um tab \t na string de formato pode ser comparada com um caractere de espaço simples na string de entrada.

Parâmetros

str

A string de entrada a ser analisada.

format

O formato interpretado para str, que é descrito na documentação para sprintf().

...

Opcionalmente passe variáveis por referência que conterão os valores analisados.

Valor Retornado

Se apenas dois parâmetros forem passados para esta função, os valores interpretados serão retornados como array. Caso contrário, se parâmetros opcionais são passados, a função retornará o número de valores atribuídos. Os parâmetros opcionais precisam ser passados por referência.

Exemplos

Exemplo #1 Exemplo da sscanf()

<?php
// Pegando o número serial
list($serial) = sscanf("SN/2350001","SN/%d");
// e a data de criação
$mandate = "January 01 2000";
list($month, $day, $year) = sscanf($mandate,"%s %d %d");
echo "O Item $serial foi criado em: $year-".substr($month,0,3)."-$day\n";
?>

Se parâmetros opcionais são passados, a função retornará o número de valores assumidos.

Exemplo #2 sscanf() - usando parâmetros opcionais

<?php
// pega informação do autor e gera uma entrada de DocBook
$auth = "24\tLewis Carroll";
$n = sscanf($auth,"%d\t%s %s", $id, $first, $last);
echo "<author xml:id='$id'>
    <firstname>$first</firstname>
    <surname>$last</surname>
</author>\n";
?>

Veja Também

  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato
  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada

sprintf
str_getcsv
Funções para String


Analisa uma string CSV e retorna os dados em um array

sscanf
str_ireplace
Funções para String
PHP Manual

str_getcsv

(PHP 5 >= 5.3.0)

str_getcsv — Analisa uma string CSV e retorna os dados em um array

Descrição

array str_getcsv ( string $input [, string $delimiter [, string $enclosure [, string $escape ]]] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Veja Também

  • fgetcsv() - Lê uma linha do ponteiro de arquivos e a interpreta como campos CSV

sscanf
str_ireplace
Funções para String


Versão que não diferencia maiúsculas e minúsculas de str_replace.

str_getcsv
str_pad
Funções para String
PHP Manual

str_ireplace

(PHP 5)

str_ireplace — Versão que não diferencia maiúsculas e minúsculas de str_replace().

Descrição

mixed str_ireplace ( mixed $search , mixed $replace , mixed $subject [, int $&count ] )

Esta função retorna uma string ou uma matriz com todas as ocorrencias de search em subject (não diferenciando maiúsculas e minúsculas) substituidas com o valor de replace. Se você não necessitar de regras de substituição mais complicadas, você deve geralmente usar esta função ao invés de eregi_replace() ou preg_replace() com o modificador i.

Se subject for uma matriz, então a procura e substituição é realizada para cada item de subject, e o valor retornado é uma matriz.

Se search e replace forem matrizes, então str_ireplace() pega um valor de cada matriz e os usas para localizar e substituir em subject. Se replace tiver menos valores do que search, então uma string vazia é usada para o resto dos valores de substituição. Se search é uma matriz e replace é uma string; então esta string é usada para cada valor de search.

Exemplo #1 Exemplo str_ireplace()

<?php
$bodytag = str_ireplace("%body%", "black", "<body text=%BODY%>");
?>

Esta função é segura para binários.

Nota: Apartir do PHP 5.0.0 o número de vezes que needles foi encontrado e substituido será retornado em count o qual é passado por referencia. Anteriormente a PHP 5.0.0 este parâmetro não esta disponível.

Veja também:
str_replace(),
ereg_replace(),
preg_replace() e
strtr().

str_getcsv
str_pad
Funções para String


Preenche uma string para um certo tamanho com outra string

str_ireplace
str_repeat
Funções para String
PHP Manual

str_pad

(PHP 4 >= 4.0.1, PHP 5)

str_pad — Preenche uma string para um certo tamanho com outra string

Descrição

string str_pad ( string $input , int $pad_length [, string $pad_string [, int $pad_type ]] )

Esta função retorna a string input preenchida na esquerda, direita ou ambos os lados até o tamanho especificado. Se o parâmetro opcional pad_string não for indicado, input é preenchido com espaços, se não é preenchido com os caracteres de pad_string até o limite.

O parâmetro opcional pad_type pode ser STR_PAD_RIGHT (preencher a direita), STR_PAD_LEFT (preencher a esquerda), ou STR_PAD_BOTH (preencher de ambos os lados). If pad_type não for especificado é assumido que seja STR_PAD_RIGHT.

Se o valor de pad_length é negativo ou menor do que o tamanho da string , não há nenhum preenchimento.

Exemplo #1 Exemplo str_pad()

<?php
$input = "Alien";
print str_pad($input, 10);                      // produz "Alien     "
print str_pad($input, 10, "-=", STR_PAD_LEFT);  // produz "-=-=-Alien"
print str_pad($input, 10, "_", STR_PAD_BOTH);   // produz "__Alien___"
print str_pad($input, 6 , "___");               // produces "Alien_"
?>

Nota:

O parâmetro pad_string será truncado se se o número de caracteres de prenchimento não puder ser dividido igualmente pelo tamanho do parâmetro pad_string.

str_ireplace
str_repeat
Funções para String


Repete uma string

str_pad
str_replace
Funções para String
PHP Manual

str_repeat

(PHP 4, PHP 5)

str_repeat — Repete uma string

Descrição

string str_repeat ( string $input , int $multiplier )

Retorna input repetida multiplier vezes.

Parâmetros

input

A string a ser repetida.

multiplier

Número de vezes que a string input será repetida.

multiplier deve ser maior ou igual a 0. Se o parâmetro multiplier for 0, a função irá retornar uma string vazia.

Valor Retornado

Retorna a string repetida.

Exemplos

Exemplo #1 Exemplo da str_repeat()

<?php
echo str_repeat("-=", 10);
?>

O exemplo acima irá imprimir:

-=-=-=-=-=-=-=-=-=-=

Veja Também

  • for
  • str_pad() - Preenche uma string para um certo tamanho com outra string
  • substr_count() - Conta o número de ocorrências de uma substring

str_pad
str_replace
Funções para String


Substitui todas as ocorrências da string de procura com a string de substituição

str_repeat
str_rot13
Funções para String
PHP Manual

str_replace

(PHP 4, PHP 5)

str_replace — Substitui todas as ocorrências da string de procura com a string de substituição

Descrição

mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

Esta função retorna uma string ou um array com todas as ocorrências de search em subject substituídas com o valor dado para replace.

Se você não precisa de regras de substituição especiais (como expressões regulares), você sempre poderia usar esta função ao invés de ereg_replace() ou preg_replace().

Parâmetros

Se search e replace são arrays, então str_replace() pega o valor de cada array e os usa para fazer a pesquisa e a substituição em subject. Se replace tem menos valores do que search, então uma string vazia é usada para o restante dos valores de substituição. Se search é um array e replace é uma string, então esta string de substituição é usada para cada valor de search. O contrário não faria sentido, contudo.

Se search ou replace são arrays, seus elementos são processados do primeiro ao último.

search

replace

subject

Se subject é um array, então a pesquisa e a substituição é executada com cada entrada de subject, e o valor de retorno é um array também.

count

Nota: Se passado, guardará o número de combinações e modificações feitas.

Valor Retornado

Esta função retorna uma string ou um array com os valores modificados.

Histórico

Versão | Descrição
5.0.0 | O parâmetro count foi adicionado.
4.3.3 | O comportamento desta função foi modificado. Em antigas versões um bug existia ao se usar arrays em ambos os parâmetros search e replace que causava índices de search vazios para serem pulados sem avançar o apontador interno no array replace. Isto foi corrigido no PHP 4.3.3, quaisquer scripts que contavam com este bug removeriam valores de pesquisa vazios anteriores à chamada desta função afim de imitar o comportamento original.
4.0.5 | Mais parâmetros podem agora ser um array.

Exemplos

Exemplo #1 Exemplos da str_replace()

<?php
// Fornece: <body text='black'>
$bodytag = str_replace("%body%", "black", "<body text='%body%'>");

// Fornece: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");

// Fornece: você comeria pizza, cerveja e sorvete todos os dias
$frase  = "você comeria frutas, vegetais, e fibra todos os dias.";
$saudavel = array("frutas", "vegetais", "fibra");
$saboroso   = array("pizza", "cerveja", "sorvete");

$novafrase = str_replace($saudavel, $saboroso, $frase);

// Uso do parâmetro count está disponível no PHP 5.0.0
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count; // 2

// Order of replacement
$str     = "Line 1\nLine 2\rLine 3\r\nLine 4\n";
$order   = array("\r\n", "\n", "\r");
$replace = '<br />';
// Processes \r\n's first so they aren't converted twice.
$newstr = str_replace($order, $replace, $str);

// Outputs: apearpearle pear
$letters = array('a', 'p');
$fruit   = array('apple', 'pear');
$text    = 'a p';
$output  = str_replace($letters, $fruit, $text);
echo $output;
?>

Notas

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

Nota:

Esta função é case-sensitive. Use str_ireplace() para substituição case-insensitive.

Veja Também

  • str_ireplace() - Versão que não diferencia maiúsculas e minúsculas de str_replace.
  • substr_replace() - Substitui o texto dentro de uma parte de uma string
  • preg_replace() - Perform a regular expression search and replace
  • strtr() - Traduz certos caracteres

str_repeat
str_rot13
Funções para String


Executa a transformação rot13 em uma string

str_replace
str_shuffle
Funções para String
PHP Manual

str_rot13

(PHP 4 >= 4.2.0, PHP 5)

str_rot13 — Executa a transformação rot13 em uma string

Descrição

string str_rot13 ( string $str )

Executa a codificação ROT13 no argumento str e retorna a string resultante.

A codificação ROT13 simplesmente troca cada letra por 13 lugares no alfabeto, enquanto não muda os caracteres não-alfa. Codificação e decodificação são feitos pela mesma função, passando uma string codificada como argumento retornará a string com a versão original.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a versão ROT13 de uma dada string.

Exemplos

Exemplo #1 Exemplo da str_rot13()

<?php

echo str_rot13('PHP 4.3.0'); // CUC 4.3.0

?>

Histórico

Versão | Descrição
4.3.0 | O comportamento desta função foi reparado. Antes disso, o str foi também modificado, como se fosse por referência.

str_replace
str_shuffle
Funções para String


Mistura uma string aleatoriamente

str_rot13
str_split
Funções para String
PHP Manual

str_shuffle

(PHP 4 >= 4.3.0, PHP 5)

str_shuffle — Mistura uma string aleatoriamente

Descrição

string str_shuffle ( string $str )

str_shuffle() mistura uma string. Uma permutação de todas as possibilidades é criada.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string misturada.

Exemplos

Exemplo #1 Exemplo da str_shuffle()

<?php
$str = 'abcdef';
$misturada = str_shuffle($str);

// Isto exibirá algo como: bfdaec
echo $misturada;
?>

Veja Também

  • shuffle() - Mistura os elementos de um array
  • rand() - Gera um inteiro aleatório

str_rot13
str_split
Funções para String


Converte uma string para um array

str_shuffle
str_word_count
Funções para String
PHP Manual

str_split

(PHP 5)

str_split — Converte uma string para um array

Descrição

array str_split ( string $string [, int $split_length ] )

Converte uma string em um array.

Parâmetros

string

A string de entrada.

split_length

Tamanho máximo do pedaço.

Valor Retornado

Se o parâmetro opcional split_length for especificado, o array retornado será quebrado em pedaços com cada um estando com split_length de comprimento, caso contrário cada pedaço terá um caractere de comprimento.

FALSE é retornado se split_length é menor do que 1. Se o comprimento split_length escede o comprimento da string, a string inteira é retornada como o primeiro(e único) elemento do array.

Exemplos

Exemplo #1 Exemplo utilizando str_split()

<?php

$str = "Hello Friend";

$arr1 = str_split($str);
$arr2 = str_split($str, 3);

print_r($arr1);
print_r($arr2);

?>

O exemplo acima irá imprimir:

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => F
    [7] => r
    [8] => i
    [9] => e
    [10] => n
    [11] => d
)

Array
(
    [0] => Hel
    [1] => lo
    [2] => Fri
    [3] => end
)

Veja Também

  • chunk_split() - Divide uma string em pequenos pedaços
  • preg_split() - Divide a string por uma expressão regular
  • explode() - Divide uma string em strings
  • count_chars() - Retorna informações sobre os caracteres usados numa string
  • str_word_count() - Retorna informação sobre as palavras usadas em uma string
  • for

str_shuffle
str_word_count
Funções para String


Retorna informação sobre as palavras usadas em uma string

str_split
strcasecmp
Funções para String
PHP Manual

str_word_count

(PHP 4 >= 4.3.0, PHP 5)

str_word_count — Retorna informação sobre as palavras usadas em uma string

Descrição

mixed str_word_count ( string $string [, int $format [, string $charlist ]] )

Conta o número de palavras dentro de string. Se o format opcional não é especificado, então o valor de retorno será um inteiro representando o número de palavras encontrado. No caso de o format estar especificado, o valor de retorno será um array, cujo conteúdo é dependente do format. O valor possível para o format e as saídas resultantes são listadas abaixo.

Devido ao propósito desta função, 'word' é definida como uma string dependente da localidade contendo caracteres alfanuméricos, que também podem contr, mas não iniciar com os caracteres "'" and "-".

Parâmetros

string

A string

format

Especifica o valor de retorno desta função. Os valores atualmente suportados são:

  • 0 - retorna o número de palavras encontradas
  • 1 - retorna um array contendo todas as palavras encontradas dentro de string
  • 2 - retorna um array associativo, onde a chave é a posição numérica da palavra dentro da string e o valor é a própria palavra.

charlist

Uma lista de caracteres adicionais que serão considerados como 'palavra'.

Valor Retornado

Retorna um array ou um inteiro, dependendo do format escolhido.

Histórico

Versão | Descrição
5.1.0 | Adicionado o parâmetro charlist

Exemplos

Exemplo #1 Um exemplo da str_word_count()

<?php

$str = "Hello fri3nd, you're
        looking          good today!";

print_r(str_word_count($str, 1));
print_r(str_word_count($str, 2));
print_r(str_word_count($str, 1, 'àáãç3'));

echo str_word_count($str);

?>

O exemplo acima irá imprimir:

Array
(
    [0] => Hello
    [1] => fri
    [2] => nd
    [3] => you're
    [4] => looking
    [5] => good
    [6] => today
)

Array
(
    [0] => Hello
    [6] => fri
    [10] => nd
    [14] => you're
    [29] => looking
    [46] => good
    [51] => today
)

Array
(
    [0] => Hello
    [1] => fri3nd
    [2] => you're
    [3] => looking
    [4] => good
    [5] => today
)

Veja Também

  • explode() - Divide uma string em strings
  • preg_split() - Divide a string por uma expressão regular
  • split() - Separa strings em array utilizando expressões regulares
  • count_chars() - Retorna informações sobre os caracteres usados numa string
  • substr_count() - Conta o número de ocorrências de uma substring

str_split
strcasecmp
Funções para String


Comparação de strings sem diferenciar maiúsculas e minúsculas segura para binário

str_word_count
strchr
Funções para String
PHP Manual

strcasecmp

(PHP 4, PHP 5)

strcasecmp — Comparação de strings sem diferenciar maiúsculas e minúsculas segura para binário

Descrição

int strcasecmp ( string $str1 , string $str2 )

Retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais.

Exemplo #1 Exemplo strcasecmp()

<?php
$var1 = "Hello";
$var2 = "hello";
if (strcasecmp($var1, $var2) == 0) {
    echo '$var1 é igual a $var2 numa comparação sem diferenciar maiúsculas e minúsculas';
}
?>

Veja também ereg(), strcmp(),
substr(), stristr(),
strncasecmp() e
strstr().

str_word_count
strchr
Funções para String


Sinônimo de strstr

strcasecmp
strcmp
Funções para String
PHP Manual

strchr

(PHP 4, PHP 5)

strchr — Sinônimo de strstr()

Descrição

Esta função é um apelido para: strstr().

strcasecmp
strcmp
Funções para String


Comparação de string segura para binário

strchr
strcoll
Funções para String
PHP Manual

strcmp

(PHP 4, PHP 5)

strcmp — Comparação de string segura para binário

Descrição

int strcmp ( string $str1 , string $str2 )

Retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais.

Note que esta função diferencia maiúsculas e minúsculas.

Veja também ereg(),
strcasecmp(), substr(),
stristr(), strncasecmp(),
strncmp(), e strstr().

strchr
strcoll
Funções para String


Comparação de string baseada no local

strcmp
strcspn
Funções para String
PHP Manual

strcoll

(PHP 4 >= 4.0.5, PHP 5)

strcoll — Comparação de string baseada no local

Descrição

int strcoll ( string $str1 , string $str2 )

Retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais. strcoll() usa o local atual para fazer as comparações. Se o local atual for C ou POSIX, esta função é equivalente à strcmp().

Note que esta função diferencia maiúsculas e minúsculas, e diferentemente de strcmp() esta função não é segura para binário.

Nota:

strcoll() foi adicionada no PHP 4.0.5, mas não foi ativada para o win32 até 4.2.3.

Veja também ereg(), strcmp(),
strcasecmp(), substr(),
stristr(), strncasecmp(),
strncmp(), strstr(), e
setlocale().

strcmp
strcspn
Funções para String


Encontra o tamanho do segmento inicial que não contenha a máscara

strcoll
strip_tags
Funções para String
PHP Manual

strcspn

(PHP 4, PHP 5)

strcspn — Encontra o tamanho do segmento inicial que não contenha a máscara

Descrição

int strcspn ( string $str1 , string $str2 [, int $start [, int $length ]] )

Retorna o tamanho do segmento inicial de str1 que não contém nenhum dos caracteres em str2.

Parâmetros

str1

A primeira string.

str2

A segunda string.

start

A posição inicial da string.

length

O tamanho da string.

Valor Retornado

Retorna o tamanho do segmento como um inteiro.

Histórico

Versão | Descrição
4.3.0 | O start e length foram adicionados

Notas

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

Veja Também

  • strspn() - Encontra o comprimento do segmento inicial combinando com a máscara

strcoll
strip_tags
Funções para String


Retira as tags HTML e PHP de uma string

strcspn
stripcslashes
Funções para String
PHP Manual

strip_tags

(PHP 4, PHP 5)

strip_tags — Retira as tags HTML e PHP de uma string

Descrição

string strip_tags ( string $str [, string $allowable_tags ] )

Esta função tenta retornar uma string retirando todas as tags HTML e PHP de str. Usa o mesmo sistema para retirar as tags do que fgetss().

Parâmetros

str

A string de entrada.

allowable_tags

Você pode utilizar o segundo parâmetro, que é opcional, para indicar tags que não devam ser retiradas.

Nota:

Comentários HTML e tags PHP também são retirados. E isto não pode ser modificado com allowable_tags.

Valor Retornado

Retorna a string modificada.

Histórico

Versão | Descrição
5.0.0 | strip_tags() tornou-se binary safe
4.3.0 | Comentários HTML são sempre retirados
4.0.0 | O parâmetro allowable_tags foi adicionado

Exemplos

Exemplo #1 Exemplo strip_tags()

<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "\n";

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>

O exemplo acima irá imprimir:

Test paragraph. Other text
<p>Test paragraph.</p> <a href="#fragment">Other text</a>

Notas

Aviso

Por strip_tags() atualmente não validar o HTML, parcial, ou tags quebradas podem resultar na remoção de mais texto/dados que o esperado.

Aviso

Esta função não modifica nenhum dos atributos das tags que você permitiu usando allowable_tags, incluindo os atributos style e onmouseover que um usuário travesso pode abusar quando colocar texto a ser mostrado para os outros usuários.

Veja Também

  • htmlspecialchars() - Converte caracteres especiais para a realidade HTML

strcspn
stripcslashes
Funções para String


Desfaz o efeito de addcslashes

strip_tags
stripos
Funções para String
PHP Manual

stripcslashes

(PHP 4, PHP 5)

stripcslashes — Desfaz o efeito de addcslashes()

Descrição

string stripcslashes ( string $str )

Retorna uma string com as barras invertidas retiradas. Reconhece estilo C \n, \r ..., representação octal e hexadecimal.

Parâmetros

str

A string para remover os escapes.

Valor Retornado

Retorna a string com escapes retirados.

Veja Também

  • addcslashes() - String entre aspas com barras no estilo C

strip_tags
stripos
Funções para String


Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas

stripcslashes
stripslashes
Funções para String
PHP Manual

stripos

(PHP 5)

stripos — Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas

Descrição

int stripos ( string $haystack , string $needle [, int $offset ] )

Retorna a posição numerica da primeira ocorrencia de needle na string haystack. Diferentemente de strpos(), stripos() não diferencia maiúsculas e minúsculas.

Note que o parâmetro needle deve ser uma string de um ou mais caracteres.

Se needle não for encontrada, stripos() irá retornar boolean FALSE.

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.

Exemplo #1 Exemplos stripos()

<?php
$findme    = 'a';
$mystring1 = 'xyz';
$mystring2 = 'ABC';

$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);

// 'a' certamente não esta em 'xyz'
if ($pos1 === false) {
    echo "A string '$findme' não foi encontrada na string '$mystring1'";
}

// Note o nosso uso de  ===. Simples == não funcionaria como o esperado
// porque a posição de 'a' é 0 (primeiro) caractere.
if ($pos2 !== false) {
    echo "Nós encontramos '$findme' em '$mystring2' na posição $pos2";
}
?>

Se needle não é uma string, é convertida para um inteiro e aplicado o valor do caractere.

O parâmetro opcional offset permite a você especificar apartir de qual caractere em haystack a procura começa. A posição retornada ainda é relativa ao inicio de haystack.

Veja também strpos(), strrpos(),
strrchr(), substr(),
stristr(), strripos(),
strstr() e stri_replace().

stripcslashes
stripslashes
Funções para String


Desfaz o efeito de addslashes

stripos
stristr
Funções para String
PHP Manual

stripslashes

(PHP 4, PHP 5)

stripslashes — Desfaz o efeito de addslashes()

Descrição

string stripslashes ( string $str )

Remove barras invertidas de uma string.

Nota:

Se magic_quotes_sybase estiver on, nenhuma barra invertida é removida mas dois apóstrofos são trocados para um.

Um exemplo do uso de stripslashes() é quando a diretiva do PHP magic_quotes_gpc é on (é on por padrão), e você não esta inserindo estes dados em um lugar (como um banco de dados) que precise de escapar. Por exemplo, se você esta usando estes dados para gerar um formulário HTML.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna uma string com as barras invertidas retiradas. (\' se torna ' e assim por diante.) Duas barras invertidas (\\) se tornam uma (\).

Exemplos

Exemplo #1 Exemplo stripslashes()

<?php
$str = "Seu nome é O\'reilly?";

// Mostra: Seu nome é O'reilly?
echo stripslashes($str);
?>

Nota:

stripslashes() não é recursiva. Se você quer aplicar esta função a um array multi-dimensional, você precisa usar uma função recursiva.

Exemplo #2 Usando stripslashes() em um array

<?php
function stripslashes_deep($value)
{
    $value = is_array($value) ?
                array_map('stripslashes_deep', $value) :
                stripslashes($value);

    return $value;
}

// Example
$array = array("f\\'oo", "b\\'ar", array("fo\\'o", "b\\'ar"));
$array = stripslashes_deep($array);

// Output
print_r($array);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => f'oo
    [1] => b'ar
    [2] => Array
        (
            [0] => fo'o
            [1] => b'ar
        )

)

Veja Também

  • addslashes() - Adiciona barras invertidas a uma string
  • get_magic_quotes_gpc() - Obtém a configuração atual de magic quotes gpc

stripos
stristr
Funções para String


strstr sem diferenciar maiúsculas e minúsculas

stripslashes
strlen
Funções para String
PHP Manual

stristr

(PHP 4, PHP 5)

stristr — strstr() sem diferenciar maiúsculas e minúsculas

Descrição

string stristr ( string $haystack , mixed $needle [, bool $before_needle ] )

Retorna tudo de haystack apartir da primeira ocorrência de needle até o final.

Parâmetros

haystack

A string onde será feita a busca.

needle

Se needle não é uma string, ela é convertida para inteiro e é usado como valor ordinal do caractere.

before_needle

Se TRUE (o padrão é FALSE), stristr() retorna a parte de haystack antes da primeira ocorrência de needle.

needle e haystack são examinadas de uma maneira que não diferencia maiúsculas e minúsculas.

Valor Retornado

Retorna a substring encontrada. Se needle não for encontrada, retorna FALSE.

Histórico

Versão | Descrição
5.3.0 | Adicionado o parâmetro opcional before_needle.
4.3.0 | stristr() tornou-se binary safe.

Exemplos

Exemplo #1 Exemplo da stristr()

<?php
  $email = 'USER@EXAMPLE.com';
  echo stristr($email, 'e'); // outputs ER@EXAMPLE.com
  echo stristr($email, 'e', true); // A partir do PHP 5.3.0, mostra US
?>

Exemplo #2 Testing if a string is found or not

<?php
  $string = 'Hello World!';
  if(stristr($string, 'earth') === FALSE) {
    echo '"earth" not found in string';
  }
// outputs: "earth" not found in string
?>

Exemplo #3 Using a non "string" needle

<?php
  $string = 'APPLE';
  echo stristr($string, 97); // 97 = lowercase a
// outputs: APPLE
?>

Notas

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

Veja Também

  • strstr() - Encontra a primeira ocorrencia de uma string
  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • substr() - Retorna uma parte de uma string
  • preg_match() - Perform a regular expression match

stripslashes
strlen
Funções para String


Retorna o tamanho de uma string

stristr
strnatcasecmp
Funções para String
PHP Manual

strlen

(PHP 4, PHP 5)

strlen — Retorna o tamanho de uma string

Descrição

int strlen ( string $string )

Retorna o tamanho da dada string.

Parâmetros

string

A string a ter seu tamanho contado.

Valor Retornado

O tamanho da string em sucesso, e 0 se a string é vazia.

Exemplos

Exemplo #1 Exemplo da strlen()

<?php
$str = 'abcdef';
echo strlen($str); // 6

$str = ' ab cd ';
echo strlen($str); // 7
?>

Veja Também

  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto
  • mb_strlen() - Get string length

stristr
strnatcasecmp
Funções para String


Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"

strlen
strnatcmp
Funções para String
PHP Manual

strnatcasecmp

(PHP 4, PHP 5)

strnatcasecmp — Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"

Descrição

int strnatcasecmp ( string $str1 , string $str2 )

Esta função implementa um algoritmo de comparação de strings alfanumérico do jeito que um ser humano faz. Esta função é similar a strnatcmp(), com a exeção que a comparação não diferencia maiúsculas/minúsculas. Para maiores informações veja: Martin Pool's » Natural Order String Comparison.

Similar a outras funções de comparação de string, esta aqui retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais.

Veja também ereg(),
strcasecmp(), substr(),
stristr(), strcmp(),
strncmp(), strncasecmp(),
strnatcmp(), e strstr().

strlen
strnatcmp
Funções para String


Comparação de strings usando o algoritmo "natural order"

strnatcasecmp
strncasecmp
Funções para String
PHP Manual

strnatcmp

(PHP 4, PHP 5)

strnatcmp — Comparação de strings usando o algoritmo "natural order"

Descrição

int strnatcmp ( string $str1 , string $str2 )

Esta função implementa um algoritmo de comparação de strings alfanumérico do jeito que um ser humano faz, isto é descrito como "ordem natural". Um exemplo da diferença entre este algoritmo e os algoritmos regulares de ordenação (usado em strcmp()) pode ser visto abaixo:

<?php
$arr1 = $arr2 = array("img12.png","img10.png","img2.png","img1.png");
echo "Comparação de string padrão\n";
usort($arr1,"strcmp");
print_r($arr1);
echo "\nComparação usando ordem natural\n";
usort($arr2,"strnatcmp");
print_r($arr2);
?>
O código acima irá gerar a seguinte saída:
Comparação de string padrão
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Comparação usando ordem natural
Array
(
    [0] => img1.png
    [1] => img2.png
    [2] => img10.png
    [3] => img12.png
)
Para maiores informações veja: Martin Pool's » Natural Order String Comparison

Similar a outras funções de comparação de string, esta retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais.

Note que esta coparação diferencia maiúsculas e minúsculas.

Veja também ereg(),
strcasecmp(), substr(),
stristr(), strcmp(),
strncmp(), strncasecmp(),
strnatcasecmp(), strstr(),
natsort() e natcasesort().

strnatcasecmp
strncasecmp
Funções para String


Comparação de string caso-sensitivo de Binário seguro dos primeiros n caracteres

strnatcmp
strncmp
Funções para String
PHP Manual

strncasecmp

(PHP 4 >= 4.0.2, PHP 5)

strncasecmp — Comparação de string caso-sensitivo de Binário seguro dos primeiros n caracteres

Descrição

int strncasecmp ( string $str1 , string $str2 , int $len )

Esta função é similar a strcasecmp(), com a diferença que você pode especificar o (o limite mais elevado de) número de caracteres de cada string para ser usado na comparação.

Parâmetros

str1

A primeira string.

str2

A segunda string.

len

O tamanho da string para ser usado na comparação.

Valor Retornado

Devolve < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se elas são iguais.

Veja Também

  • preg_match() - Perform a regular expression match
  • strcmp() - Comparação de string segura para binário
  • strcasecmp() - Comparação de strings sem diferenciar maiúsculas e minúsculas segura para binário
  • substr() - Retorna uma parte de uma string
  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strstr() - Encontra a primeira ocorrencia de uma string

strnatcmp
strncmp
Funções para String


Comparação de string segura para binário para os primeiros n caracteres

strncasecmp
strpbrk
Funções para String
PHP Manual

strncmp

(PHP 4, PHP 5)

strncmp — Comparação de string segura para binário para os primeiros n caracteres

Descrição

int strncmp ( string $str1 , string $str2 , int $len )

Esta função é similar a strcmp(), com a diferença que você pode especificar o limite superior de caracteres (len) de cada string para ser usado na comparação. Se qualquer uma das strings é menor do que len, então o tamanho desta string será usado para comparação.

Retorna < 0 se str1 é menor do que str2; > 0 se str1 é maior do que str2, e 0 se forem iguais.

Note que esta função diferencia maiúsculas e minúsculas.

Veja também ereg(),
strncasecmp(),
strcasecmp(), substr(),
stristr(), strcmp(), e
strstr().

strncasecmp
strpbrk
Funções para String


Procura na string por um dos caracteres de um conjunto

strncmp
strpos
Funções para String
PHP Manual

strpbrk

(PHP 5)

strpbrk — Procura na string por um dos caracteres de um conjunto

Descrição

string strpbrk ( string $haystack , string $char_list )

strpbrk() busca na string haystack por uma char_list.

Parâmetros

haystack

A string onde char_list irá verificar.

char_list

Este parâmetro é case sensitive.

Valor Retornado

Retorna uma string iniciando do caractere encontrado, ou FALSE se ele não é encontrado.

Exemplos

Exemplo #1 Exemplo da strpbrk()

<?php

$text = 'This is a Simple text.';

// this echoes "is is a Simple text." because 'i' is matched first
echo strpbrk($text, 'mi');

// this echoes "Simple text." because chars are case sensitive
echo strpbrk($text, 'S');
?>

strncmp
strpos
Funções para String


Encontra a posição da primeira ocorrência de uma string

strpbrk
strrchr
Funções para String
PHP Manual

strpos

(PHP 4, PHP 5)

strpos — Encontra a posição da primeira ocorrência de uma string

Descrição

int strpos ( string $haystack , string $needle [, int $offset ] )

Retorna a posição numérica da primeira ocorrência de needle dentro de haystack. Diferentemente de strrpos(), esta função pode ter uma string inteira como o parâmetro needle e toda a string será usada.

Se needle não for encontrado, strpos() irá retornar o boolean FALSE.

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.

Exemplo #1 Exemplos strpos()

<?php
$mystring = 'abc';
$findme   = 'a';
$pos = strpos($mystring, $findme);

// Note o uso de ===.  Simples == não funcionaria como esperado
// por causa da posição de 'a' é 0 (primeiro) caractere.
if ($pos === false) {
    echo "A string '$findme' não foi encontrada na string '$mystring'";
} else {
    echo "A string '$findme' foi encontrada na string '$mystring'";
    echo " e existe na posição $pos";
}

?>

Se o parâmetro needle não é uma string, é convertido para um inteiro e aplicado o valor do caractere.

O parâmetro opcional offset permite a você definir a partir de qual caractere em haystack iniciar a busca. A posição retorna ainda é relativa ao inicio de haystack.

Veja também strrpos(),
strrchr(), substr(),
stristr(), e strstr().

strpbrk
strrchr
Funções para String


Encontra a ultima ocorrência de um caractere em uma string

strpos
strrev
Funções para String
PHP Manual

strrchr

(PHP 4, PHP 5)

strrchr — Encontra a ultima ocorrência de um caractere em uma string

Descrição

string strrchr ( string $haystack , char $needle )

Esta função retorna a parte de haystack que inicia na última ocorrência de needle e vai até o fim de haystack.

Retorna FALSE se needle não for encontrado.

Se needle conter mais de um caractere, apenas o primeiro é usado. Isto é diferente da função strchr().

Se needle não for uma string, é convertido para uma string e é aplicado o valor do caractere.

Exemplo #1 Exemplo strrchr()

<?php
// get last directory in $PATH
$dir = substr(strrchr($PATH, ":"), 1);

// get everything after last newline
$text = "Line 1\nLine 2\nLine 3";
$last = substr(strrchr($text, 10), 1 );
?>

Veja também strchr(), substr(), stristr() e strstr().

strpos
strrev
Funções para String


Reverte uma string

strrchr
strripos
Funções para String
PHP Manual

strrev

(PHP 4, PHP 5)

strrev — Reverte uma string

Descrição

string strrev ( string $string )

Retorna a string revertida.

Parâmetros

string

A string a ser revertida.

Valor Retornado

Retorna a string revertida.

Exemplos

Exemplo #1 Revertendo uma string strrev()

<?php
echo strrev("Hello world!"); // mostra "!dlrow olleH"
?>

strrchr
strripos
Funções para String


Encontra a posição da última ocorrência de uma string case-insensitive em uma string

strrev
strrpos
Funções para String
PHP Manual

strripos

(PHP 5)

strripos — Encontra a posição da última ocorrência de uma string case-insensitive em uma string

Descrição

int strripos ( string $haystack , string $needle [, int $offset ] )

Encontra a posição numérica da última ocorrência de needle na string haystack. Diferente de strrpos(), strripos() é case-insensitive.

Parâmetros

haystack

A string para procurar

needle

Note que a needle pode ser uma string de um ou mais caracteres.

offset

O parâmetro offset pode ser especificado para iniciar a busca em um arbitrário número de caracteres na string.

Um valor negativo iniciará a busca em offset caracteres do start da string.

Valor Retornado

Retorna a posição numérica da última ocorrência de needle. Note também que posições da string inicia em 0, e não 1.

Se needle não é encontrado, FALSE é retornado.

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 simples exemplo da strripos()

<?php
$haystack = 'ababcd';
$needle   = 'aB';

$pos      = strripos($haystack, $needle);

if ($pos === false) {
    echo "Sinto muito, nós não encontramos ($needle) em ($haystack)";
} else {
    echo "Parabéns!\n";
    echo "Nós encontramos a última ($needle) em ($haystack) na posição ($pos)";
}
?>

O exemplo acima irá imprimir:

   Congratulations!
   We found the last (aB) in (ababcd) at position (2)

Veja Também

  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • stripos() - Encontra a primeira ocorrencia de uma string sem diferenciar maiúsculas e minúsculas
  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • substr() - Retorna uma parte de uma string
  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strstr() - Encontra a primeira ocorrencia de uma string

strrev
strrpos
Funções para String


Encontra a posição da última ocorrência de um caractere em uma string

strripos
strspn
Funções para String
PHP Manual

strrpos

(PHP 4, PHP 5)

strrpos — Encontra a posição da última ocorrência de um caractere em uma string

Descrição

int strrpos ( string $haystack , string $needle [, int $offset ] )

Retorna a posição numérica da última ocorrência de needle na string haystack. Note que a needle neste caso pode apenas ser um simples caractere PHP 4. Se uma string é passada como a needle, então apenas o primeiro caractere dessa string será usado.

Se needle não é encontrado, retorna FALSE.

É fácil errar a interpretação dos valores de retorno para "character found at position 0" e "character not found". Aqui segue um exemplo de como detectar a diferença:

<?php

// no PHP 4.0.0 e posterior:
$pos = strrpos($mystring, "b");
if ($pos === false) { // note: três sinais iguais
    // não encontrado...
}

// em versões mais antigas do que 4.0.0:
$pos = strrpos($mystring, "b");
if (is_bool($pos) && !$pos) {
    // não encontrado...
}
?>

Se needle não é uma string, ela é convertida para um inteiro e aplicada como o valor ordinal de um caractere.

Nota: No PHP 5.0.0 o offset pode ser especificado para iniciar a busca num número arbitrário de caracteres dentro da string. Valores negativos irão parar a busca em um ponto arbitrário antes do final da string.

Nota: A needle pode ser uma string de mais de um caractere no PHP 5.

Parâmetros

haystack

needle

offset

Valor Retornado

Veja Também

  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • strripos() - Encontra a posição da última ocorrência de uma string case-insensitive em uma string
  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • substr() - Retorna uma parte de uma string
  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strstr() - Encontra a primeira ocorrencia de uma string

strripos
strspn
Funções para String


Encontra o comprimento do segmento inicial combinando com a máscara

strrpos
strstr
Funções para String
PHP Manual

strspn

(PHP 4, PHP 5)

strspn — Encontra o comprimento do segmento inicial combinando com a máscara

Descrição

int strspn ( string $str1 , string $str2 [, int $start [, int $length ]] )

Encontra o comprimento do segmento inicial combinando com a máscara.

A linha do código:

<?php
$var = strspn("42 is the answer, what is the question ...", "1234567890");
?>
atribuirá 2 para $var, porque a string "42" será o maior segmento contendo caracteres de "1234567890".

Parâmetros

str1

A primeira string.

str2

A segunda string.

start

A posição inicial da string para examinar. Valor negativo conta posição do final da string.

length

O tamanho da string para examinar. Valor negativo define tamanho do final de uma string.

Valor Retornado

Retorna o comprimento do segmento inicial de str1 que consiste inteiramente dos caracteres em str2.

Histórico

Versão | Descrição
4.3.0 | Os parâmetros start e length foram adicionados

Exemplos

Exemplo #1 Exemplo da strspn()

<?php
echo strspn("foo", "o", 1, 2); // 2
?>

Notas

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

Veja Também

  • strcspn() - Encontra o tamanho do segmento inicial que não contenha a máscara

strrpos
strstr
Funções para String


Encontra a primeira ocorrencia de uma string

strspn
strtok
Funções para String
PHP Manual

strstr

(PHP 4, PHP 5)

strstr — Encontra a primeira ocorrencia de uma string

Descrição

string strstr ( string $haystack , mixed $needle [, bool $before_needle ] )

Retorna parte da string haystack a partir da primeira ocorrência de needle até o final de haystack.

Nota:

Esta função diferencia maiúsculas e minúsculas. Para pesquisas que não diferenciem, use stristr().

Nota:

Se você quer somente determinar se um específica needle existem em haystack, use a função mais rápida e que usa menos memória ao invés, strpos().

Parâmetros

haystack

A string de entrada.

needle

Se needle não é uma string, é convertido para um inteiro e aplicado como valor ordinal de um caractere.

before_needle

Se TRUE (o padrão é FALSE), strstr() retorna a parte de haystack antes da primeira ocorrência de needle.

Valor Retornado

Retorna a parte da string, ou FALSE se needle não é encontrado.

Histórico

Versão | Descrição
5.3.0 | Adicionado o parâmetro opcional before_needle.
4.3.0 | strstr() tornou-se binary safe.

Exemplos

Exemplo #1 Exemplo da strstr()

<?php
$email  = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // prints @example.com

$user = strstr($email, '@', true); // A partir do PHP 5.3.0
echo $user; // prints name
?>

Veja Também

  • preg_match() - Perform a regular expression match
  • stristr() - strstr sem diferenciar maiúsculas e minúsculas
  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • substr() - Retorna uma parte de uma string

strspn
strtok
Funções para String


Tokeniza uma string

strstr
strtolower
Funções para String
PHP Manual

strtok

(PHP 4, PHP 5)

strtok — Tokeniza uma string

Descrição

string strtok ( string $str , string $token )

strtok() divide uma string (str) em strings menores (tokens), com cada token sendo delimitado por qualquer caractere de token. Quer dizer que, se você tem uma string como "Esta é uma string de exemplo" você poderia "tokenizá-la" em suas palavras individuais usando o caractere de espaço como delimitador do token.

Note que só a primeira chamada a strtok usa o argumento string. Cada chamada subseqüente a strtok só precisa do delimitador a ser usado, já que ele mantém o caminho de onde ele está na string atual. Para iniciar novamente, ou tokenizar uma nova string você simplesmente chama strtok com o argumento de string novamente para inicializá-la. Veja que você pode por múltiplos delimitadores como parâmetro. A string será tokenizada quando um dos caracteres no argumento são encontrados.

Parâmetros

str

A string a ser repartida em pequenos pedaços (tokens).

token

O delimitador usado para repatir a str.

Valor Retornado

Uma string de token.

Exemplos

Exemplo #1 Exemplo da strtok()

<?php
$string = "This is\tan example\nstring";
/* Use tab e newline como caractere delimitador, que funciona bem  */
$tok = strtok($string," \n\t");

while ($tok !== false) {
    echo "Word=$tok<br/>";
    $tok = strtok(" \n\t");
}
?>

O comportamento quando uma parte vazia foi encontrada mudou com o PHP 4.1.0. O antigo comportamento retornava uma string vazia, enquanto a nova, a correta, simplesmente pula a parte da string:

Exemplo #2 Comportamento antigo da strtok()

<?php
$first_token  = strtok('/something', '/');
$second_token = strtok('/');
var_dump ($first_token, $second_token);
?>

O exemplo acima irá imprimir:

    string(0) ""
    string(9) "something"

Exemplo #3 Novo comportamento da strtok()

<?php
$first_token  = strtok('/something', '/');
$second_token = strtok('/');
var_dump ($first_token, $second_token);
?>

O exemplo acima irá imprimir:

    string(9) "something"
    bool(false)

Notas

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.

Veja Também

  • split() - Separa strings em array utilizando expressões regulares
  • explode() - Divide uma string em strings

strstr
strtolower
Funções para String


Converte uma string para minúsculas

strtok
strtoupper
Funções para String
PHP Manual

strtolower

(PHP 4, PHP 5)

strtolower — Converte uma string para minúsculas

Descrição

string strtolower ( string $str )

Retorna string com todos os caracteres do alfabeto convertidos para minúsculas.

Note que os caracteres do alfabeto é determinado pelo local atual. Isto indica que no local padrão "C", caracteres como A com trema (ä) não serão convertidos.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string minúscula.

Exemplos

Exemplo #1 Exemplo da strtolower()

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtolower($str);
print $str; // Prints mary had a little lamb and she loved it so
?>

Notas

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

Veja Também

  • strtoupper() - Converte uma string para maiúsculas
  • ucfirst() - Converte para maiúscula o primeiro caractere de uma string
  • ucwords() - Converte para maiúsculas o primeiro caractere de cada palavra
  • mb_strtolower() - Make a string lowercase

strtok
strtoupper
Funções para String


Converte uma string para maiúsculas

strtolower
strtr
Funções para String
PHP Manual

strtoupper

(PHP 4, PHP 5)

strtoupper — Converte uma string para maiúsculas

Descrição

string strtoupper ( string $string )

Retorna string com todos os caracteres do alfabeto convertidos para maiúsculas.

Note que os caracteres do alfabeto é determinado pelo local atual. Isto indica que no local padrão "C", caracteres como A com trema (ä) não serão convertidos.

Parâmetros

string

A string de entrada.

Valor Retornado

Retorna a string maiúscula.

Exemplos

Exemplo #1 Exemplo da strtoupper()

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtoupper($str);
print $str; // Prints MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
?>

Notas

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

Veja Também

  • strtolower() - Converte uma string para minúsculas
  • ucfirst() - Converte para maiúscula o primeiro caractere de uma string
  • ucwords() - Converte para maiúsculas o primeiro caractere de cada palavra
  • mb_strtoupper() - Make a string uppercase

strtolower
strtr
Funções para String


Traduz certos caracteres

strtoupper
substr_compare
Funções para String
PHP Manual

strtr

(PHP 4, PHP 5)

strtr — Traduz certos caracteres

Descrição

string strtr ( string $str , string $from , string $to )
string strtr ( string $str , array $replace_pairs )

Esta função retorna uma cópia de str, traduzindo todas as ocorrências de cada caractere em from para o caractere correspondente em to.

Se from e to são de comprimentos diferentes, os caracteres extras no mais longo dos dois são ignorados.

Parâmetros

str

A string a ser traduzida.

from

A string a ser traduzida por to.

to

A string substituta de from.

replace_pairs

O parâmetro replace_pairs pode ser usado como um substituto para to e from no caso dele ser um array na forma array('from' => 'to', ...).

Valor Retornado

Esta função retorna uma cópia de str, traduzindo todas ocorrências de cada caractere em from para correspondentes caracteres em to.

Histórico

Versão | Descrição
4.0.0 | Os parâmetros to e from foram adicionados.

Exemplos

Exemplo #1 Exemplo da strtr()

<?php
$addr = strtr($addr, "äåö", "aao");
?>

strtr() pode ser chamada com apenas dois argumentas. Se chamada com dois argumentos ele se comporta de uma maneira nova: from então tem que ser um array que contém string -> pares de string que serão substituídas na string original. strtr() sempre procurará pela primeira maior compatibilidade possível e *não* tentará substituir nada que ela já tenha trabalhado.

Exemplo #2 strtr() exemplo com dois argumentos

<?php
$trans = array("hello" => "hi", "hi" => "hello");
echo strtr("hi all, I said hello", $trans);
?>

O exemplo acima irá imprimir:

hello all, I said hi

Veja Também

  • ereg_replace() - Substituição através de expressões regulares

strtoupper
substr_compare
Funções para String


A comparação binária entre duas strings case-insensitive de um offset é guardada opcionalmente, até o limite do comprimento de caracteres

strtr
substr_count
Funções para String
PHP Manual

substr_compare

(PHP 5)

substr_compare — A comparação binária entre duas strings case-insensitive de um offset é guardada opcionalmente, até o limite do comprimento de caracteres

Descrição

int substr_compare ( string $main_str , string $str , int $offset [, int $length [, bool $case_insensitivity ]] )

substr_compare() compara main_str da posição offset com str até length caracteres.

Parâmetros

main_str

str

offset

A posição inicial para a comparação. Se negativo, inicia contando da final da string.

length

O tamanho da comparação.

case_insensitivity

Se case_insensitivity é TRUE, a comparação é case insensitive.

Valor Retornado

Retorna < 0 se main_str da posição offset em diante é menor que str, > 0 se ela é maior que str, e 0 se elas são iguais. Se length é igual ou maior que o comprimento de main_str e length é setado, substr_compare() imprime warning e retorna FALSE.

Histórico

Versão | Descrição
5.1.0 | Adicionada a possibilidade de usar offset negativo.

Exemplos

Exemplo #1 Exemplo da substr_compare()

<?php
echo substr_compare("abcde", "bc", 1, 2); // 0
echo substr_compare("abcde", "de", -2, 2); // 0
echo substr_compare("abcde", "bcg", 1, 2); // 0
echo substr_compare("abcde", "BC", 1, 2, true); // 0
echo substr_compare("abcde", "bc", 1, 3); // 1
echo substr_compare("abcde", "cd", 1, 2); // -1
echo substr_compare("abcde", "abc", 5, 1); // warning
?>

strtr
substr_count
Funções para String


Conta o número de ocorrências de uma substring

substr_compare
substr_replace
Funções para String
PHP Manual

substr_count

(PHP 4, PHP 5)

substr_count — Conta o número de ocorrências de uma substring

Descrição

int substr_count ( string $haystack , string $needle [, int $offset [, int $length ]] )

substr_count() retorna o número de vezes que a substring needle ocorre na string. Note que needle faz distinção de maiúscula e minúscula.

Nota:

Esta função não conta substrings sobrepostas. Veja o exemplo abaixo!

Parâmetros

haystack

A string onde será feita a busca

needle

A substring a ser procurada

offset

O índice onde inicia a contagem

length

O valor máximo depois do índice especificado para buscar pela substring. Mostra um aviso se o tamanho do índice for maior que o tamanho de haystack.

Valor Retornado

Esta função retorna um integer.

Histórico

Versão | Descrição
5.1.0 | Adiciona os parâmetros offset e length

Exemplos

Exemplo #1 Exemplo da substr_count()

<?php
$text = 'This is a test';
echo strlen($text); // 14

echo substr_count($text, 'is'); // 2

// the string is reduced to 's is a test', so it prints 1
echo substr_count($text, 'is', 3);

// the text is reduced to 's i', so it prints 0
echo substr_count($text, 'is', 3, 3);

// generates a warning because 5+10 > 14
echo substr_count($text, 'is', 5, 10);

// prints only 1, because it doesn't count overlapped subtrings
$text2 = 'gcdgcdgcd';
echo substr_count($text2, 'gcdgcd');
?>

Veja Também

  • count_chars() - Retorna informações sobre os caracteres usados numa string
  • strpos() - Encontra a posição da primeira ocorrência de uma string
  • substr() - Retorna uma parte de uma string
  • strstr() - Encontra a primeira ocorrencia de uma string

substr_compare
substr_replace
Funções para String


Substitui o texto dentro de uma parte de uma string

substr_count
substr
Funções para String
PHP Manual

substr_replace

(PHP 4, PHP 5)

substr_replace — Substitui o texto dentro de uma parte de uma string

Descrição

mixed substr_replace ( mixed $string , string $replacement , int $start [, int $length ] )

substr_replace() substitui uma cópia de string delimitada pelos parâmetros start e (opcionalmente) length com a string dada em replacement.

Parâmetros

string

A string de entrada.

replacement

A string substituta.

start

Se start é positivo, a substituição começará no start-ésimo caractere da string.

Se start é negativo, a substituição começará no start-ésimo caractere do final de string.

length

Se dado e é positivo, ele representa o comprimento da porção de string que é para ser substituída. Se ele é negativo, ele representa o número de caracteres do final de string para parar de substituir. Se ele não é dado, então o padrão será até strlen( string ); i.e. o fim da substituição no final de string. Obviamente, se length é zero então esta função irá ter efeito de inserir replacement em string na dada posição start.

Valor Retornado

A string de resultado é retornada. Se string é um array, então um array será retornado.

Exemplos

Exemplo #1 substr_replace() exemplo

<?php
$var = 'ABCDEFGH:/MNRPQR/';
echo "Original: $var<hr />\n";

/* Estes dois exemplos substituem tudo de $var com 'bob'. */
echo substr_replace($var, 'bob', 0) . "<br />\n";
echo substr_replace($var, 'bob', 0, strlen($var)) . "<br />\n";

/* Insere 'bob' direto no começo de $var. */
echo substr_replace($var, 'bob', 0, 0) . "<br />\n";

/* Estes dois exemplos substituem 'MNRPQR' em $var com 'bob'. */
echo substr_replace($var, 'bob', 10, -1) . "<br />\n";
echo substr_replace($var, 'bob', -7, -1) . "<br />\n";

/* Deleta 'MNRPQR' de $var. */
echo substr_replace($var, '', 10, -1) . "<br />\n";
?>

Notas

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

Veja Também

  • str_replace() - Substitui todas as ocorrências da string de procura com a string de substituição
  • substr() - Retorna uma parte de uma string

substr_count
substr
Funções para String


Retorna uma parte de uma string

substr_replace
trim
Funções para String
PHP Manual

substr

(PHP 4, PHP 5)

substr — Retorna uma parte de uma string

Descrição

string substr ( string $string , int $start [, int $length ] )

Retorna a parte de string especificada pelo parâmetro start e length.

Parâmetros

string

A string de entrada.

start

Se start não for negativo, a string retornada iniciará na posição start em string, começando em zero. Por exemplo, na string 'abcdef', o caractere na posição 0 é 'a', o caractere na posição 2 é 'c', e assim em diante.

Se start for negativo, a string retornada irá começar no caractere start a partir do fim de string.

Exemplo #1 Usando um início negativo

<?php
$rest = substr("abcdef", -1);    // retorna "f"
$rest = substr("abcdef", -2);    // retorna "ef"
$rest = substr("abcdef", -3, 1); // retorna "d"
?>

length

Se length for dado e for positivo, a string retornada irá conter length caracteres começando em start (dependendo do tamanho de string). Se a string é menor do que start, será retornado FALSE.

Se length for dado e for negativo, então esta quantidade caracteres serão omitidos do final de string (após a posicão de inicio ter sido calculada quando start for negativo). Se start denota uma posição além da truncagem, uma string vazia será retornada.

Exemplo #2 Usando um length negativo

<?php
$rest = substr("abcdef", 0, -1);  // retorna "abcde"
$rest = substr("abcdef", 2, -1);  // retorna "cde"
$rest = substr("abcdef", 4, -4);  // retorna ""
$rest = substr("abcdef", -3, -1); // retorna "de"
?>

Valor Retornado

Retorna a parte extraída da string.

Exemplos

Exemplo #3 Uso básico da substr()

<?php
echo substr('abcdef', 1);     // bcdef
echo substr('abcdef', 1, 3);  // bcd
echo substr('abcdef', 0, 4);  // abcd
echo substr('abcdef', 0, 8);  // abcdef
echo substr('abcdef', -1, 1); // f

// Accessing single characters in a string
// can also be achived using "curly braces"
$string = 'abcdef';
echo $string{0};                 // a
echo $string{3};                 // d
echo $string{strlen($string)-1}; // f

?>

Veja Também

  • strrchr() - Encontra a ultima ocorrência de um caractere em uma string
  • substr_replace() - Substitui o texto dentro de uma parte de uma string
  • preg_match() - Perform a regular expression match
  • trim() - Retira espaço no ínicio e final de uma string
  • mb_substr() - Get part of string
  • wordwrap() - Quebra uma string em um dado número de caracteres

substr_replace
trim
Funções para String


Retira espaço no ínicio e final de uma string

substr
ucfirst
Funções para String
PHP Manual

trim

(PHP 4, PHP 5)

trim — Retira espaço no ínicio e final de uma string

Descrição

string trim ( string $str [, string $charlist ] )

Esta função retorna uma string com os espaçoes retirados do ínicio e do final de str. Sem o segundo parâmetro, trim() irá retirar estes caracteres

  • " " (ASCII 32 (0x20)), um espaço normal.
  • "\t" (ASCII 9 (0x09)), uma tabulação.
  • "\n" (ASCII 10 (0x0A)), uma linha nova (line feed).
  • "\r" (ASCII 13 (0x0D)), um retono de carro.
  • "\0" (ASCII 0 (0x00)), o byte NULL.
  • "\x0B" (ASCII 11 (0x0B)), uma tabulação vertical.

Parâmetros

str

A string que será modificada.

charlist

Opcionalmente, os caracteres removidos pode também ser especificados usando o parâmetro charlist. Simplesmente liste todos os caracteres que você quer retirar. Com .. você pode especificar um intervalo de caracteres.

Valor Retornado

A string com caracteres removidos.

Histórico

Versão | Descrição
4.1.0 | O parâmetro opcional charlist foi adicionado.

Exemplos

Exemplo #1 Exemplo de uso de trim()

<?php

$text = "\t\tThese are a few words :) ...  ";
$binary = "\x09Example string\x0A";
$hello  = "Hello World";
var_dump($text, $binary, $hello);

print "\n";

$trimmed = trim($text);
var_dump($trimmed);

$trimmed = trim($text, " \t.");
var_dump($trimmed);

$trimmed = trim($hello, "Hdle");
var_dump($trimmed);

// trim the ASCII control characters at the beginning and end of $binary
// (from 0 to 31 inclusive)
$clean = trim($binary, "\x00..\x1F");
var_dump($clean);

?>

O exemplo acima irá imprimir:

string(32) "        These are a few words :) ...  "
string(16) "    Example string
"
string(11) "Hello World"

string(28) "These are a few words :) ..."
string(24) "These are a few words :)"
string(5) "o Wor"
string(14) "Example string"

Exemplo #2 Usando trim() em valores de array

<?php
function trim_value(&$value)
{
    $value = trim($value);
}

$fruit = array('apple','banana ', ' cranberry ');
var_dump($fruit);

array_walk($fruit, 'trim_value');
var_dump($fruit);

?>

O exemplo acima irá imprimir:

array(3) {
  [0]=>
  string(5) "apple"
  [1]=>
  string(7) "banana "
  [2]=>
  string(11) " cranberry "
}
array(3) {
  [0]=>
  string(5) "apple"
  [1]=>
  string(6) "banana"
  [2]=>
  string(9) "cranberry"
}

Veja Também

  • ltrim() - Retira espaços em branco (ou outros caracteres) do início da string
  • rtrim() - Retira espaço em branco (ou outros caracteres) do final da string

substr
ucfirst
Funções para String


Converte para maiúscula o primeiro caractere de uma string

trim
ucwords
Funções para String
PHP Manual

ucfirst

(PHP 4, PHP 5)

ucfirst — Converte para maiúscula o primeiro caractere de uma string

Descrição

string ucfirst ( string $str )

Retorna uma string com o primeiro caractere de str em maiúscula, se o caractere for do alfabeto.

Note que o alfabeto é determinado pelo locale atual. Por exemplo, no locale padrão "C" caracteres como ä não serão convertidos.

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string resultante.

Exemplos

Exemplo #1 Exemplo da ucfirst()

<?php
$foo = 'hello world!';
$foo = ucfirst($foo);             // Hello world!

$bar = 'HELLO WORLD!';
$bar = ucfirst($bar);             // HELLO WORLD!
$bar = ucfirst(strtolower($bar)); // Hello world!
?>

Veja Também

  • strtolower() - Converte uma string para minúsculas
  • strtoupper() - Converte uma string para maiúsculas
  • ucwords() - Converte para maiúsculas o primeiro caractere de cada palavra

trim
ucwords
Funções para String


Converte para maiúsculas o primeiro caractere de cada palavra

ucfirst
vfprintf
Funções para String
PHP Manual

ucwords

(PHP 4, PHP 5)

ucwords — Converte para maiúsculas o primeiro caractere de cada palavra

Descrição

string ucwords ( string $str )

Retorna uma string com o primeiro caractere de cada palavra em str em maiúscula, se este caractere fizer parte do alfabeto.

A definição de palavra é uma string de caracteres que é precedida de um whitespace (Estes são: space, form-feed, newline, carriage return, horizontal tab, e vertical tab).

Parâmetros

str

A string de entrada.

Valor Retornado

Retorna a string modificada.

Exemplos

Exemplo #1 Exemplo da ucwords()

<?php
$foo = 'hello world!';
$foo = ucwords($foo);             // Hello World!

$bar = 'HELLO WORLD!';
$bar = ucwords($bar);             // HELLO WORLD!
$bar = ucwords(strtolower($bar)); // Hello World!
?>

Notas

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

Veja Também

  • strtoupper() - Converte uma string para maiúsculas
  • strtolower() - Converte uma string para minúsculas
  • ucfirst() - Converte para maiúscula o primeiro caractere de uma string

ucfirst
vfprintf
Funções para String


Escreve uma string formatada para um stream

ucwords
vprintf
Funções para String
PHP Manual

vfprintf

(PHP 5)

vfprintf — Escreve uma string formatada para um stream

Descrição

int vfprintf ( resource $handle , string $format , array $args )

Escreve uma string produzida de acordo com format para o resource do stream especificado por handle.

Funciona como fprintf() mas aceita um array de argumentos, ao invés de um número váriavel de argumentos.

Parâmetros

handle

format

Veja sprintf() para uma descrição do format.

args

Valor Retornado

Retorna o tamanho da string mostrada.

Exemplos

Exemplo #1 vfprintf(): preenchendo com zero os inteiros

<?php
if (!($fp = fopen('date.txt', 'w')))
    return;

vfprintf($fp, "%04d-%02d-%02d", array($year, $month, $day));
// will write the formatted ISO date to date.txt
?>

Veja Também

  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada
  • sscanf() - Interpreta a entrada de uma string de acordo com um formato
  • fscanf() - Interpreta a leitura de um arquivo de acordo com um formato
  • vsprintf() - Retorna uma string formatada
  • number_format() - Formata um número com os milhares agrupados

ucwords
vprintf
Funções para String


Mostra uma string formatada

vfprintf
vsprintf
Funções para String
PHP Manual

vprintf

(PHP 4 >= 4.1.0, PHP 5)

vprintf — Mostra uma string formatada

Descrição

int vprintf ( string $formato , array $args )

Mostra uma string formatada de acordo com o formato (o qual é descrito na documentação para a função sprintf()).

Funciona como printf() mas aceita uma matriz de argumentos, ao invés de um número variavel de argumentos.

Parâmetros

format

Veja sprintf() para uma descrição de format.

args

Valor Retornado

Retorna o tamanho da string mostrada.

Veja Também

  • printf() - Mostra uma string formatada
  • sprintf() - Retorna a string formatada
  • vsprintf() - Retorna uma string formatada

vfprintf
vsprintf
Funções para String


Retorna uma string formatada

vprintf
wordwrap
Funções para String
PHP Manual

vsprintf

(PHP 4 >= 4.1.0, PHP 5)

vsprintf — Retorna uma string formatada

Descrição

string vsprintf ( string $formato , array $args )

Funciona como sprintf() mas aceita um array de argumentos, ao invés de um número variável de argumentos.

Parâmetros

format

Veja sprintf() para uma descrição de format.

args

Valor Retornado

Retorna uma string formatada de acordo com o formato (o qual é descrito na documentação para a função sprintf()).

Veja Também

  • sprintf() - Retorna a string formatada
  • vprintf() - Mostra uma string formatada

vprintf
wordwrap
Funções para String


Quebra uma string em um dado número de caracteres

vsprintf
Variável e Extensões Relacionadas aos Tipos
Funções para String
PHP Manual

wordwrap

(PHP 4 >= 4.0.2, PHP 5)

wordwrap — Quebra uma string em um dado número de caracteres

Descrição

string wordwrap ( string $str [, int $width = 75 [, string $break = "\n" [, bool $cut = false ]]] )

Quebra uma string em um dado número de caracteres usando um caractere de quebra de string.

Parâmetros

str

A string de entrada.

width

A coluna da largura. O padrão é 75.

break

A linha é quebrada usando o parâmetro opcional break. O padrão é '\n'.

cut

Se cut é setado para TRUE, a string é sempre quebrada na largura especificada ou antes. Então se você tem uma palavra que é mais larga que a largura dada, ela é sempre quebrada. (Veja segundo exemplo).

Valor Retornado

Retorna a string dada quebrada na largura especificada.

Histórico

Versão | Descrição
4.0.3 | O parâmetro opcional cut foi adicionado.

Exemplos

Exemplo #1 Exemplo de wordwrap()

<?php
$text = "The quick brown fox jumped over the lazy dog.";
$newtext = wordwrap($text, 20, "<br />\n");

echo $newtext;
?>

O exemplo acima irá imprimir:

The quick brown fox<br />
jumped over the lazy<br />
dog.

Exemplo #2 Exemplo de wordwrap()

<?php
$text = "A very long woooooooooooord.";
$newtext = wordwrap($text, 8, "\n", true);

echo "$newtext\n";
?>

O exemplo acima irá imprimir:

A very
long
wooooooo
ooooord.

Veja Também

  • nl2br() - Insere quebras de linha HTML antes de todas newlines em uma string
  • chunk_split() - Divide uma string em pequenos pedaços

vsprintf
Variável e Extensões Relacionadas aos Tipos
Funções para String


Variável e Extensões Relacionadas aos Tipos

  • Arrays
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Array
  • Classes/Objetos — Informação de Classe/Objeto
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções para Classes/Objetos
  • Classkit
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Classkit
  • Ctype — Funções pra verificação de tipo de caractere
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Ctype
  • Filter — Filtragem de Dados
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Filter
  • Funções para Manuseamento de Funções
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Manuseamento de Funções
  • Object Aggregation — Object Aggregation/Composition [PHP 4]
    • Introdução
    • Exemplos
    • Object Aggregation Funções
  • Reflection
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Extending
    • Reflection — The Reflection class
    • ReflectionClass — The ReflectionClass class
    • ReflectionExtension — The ReflectionExtension class
    • ReflectionFunction — The ReflectionFunction class
    • ReflectionFunctionAbstract — The ReflectionFunctionAbstract class
    • ReflectionMethod — The ReflectionMethod class
    • ReflectionObject — The ReflectionObject class
    • ReflectionParameter — The ReflectionParameter class
    • ReflectionProperty — The ReflectionProperty class
    • Reflector — The Reflector interface
  • Manipulação de variável
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para Manipulação de variáveis
wordwrap
Arrays
Referência das Funções


Arrays

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Array
    • array_change_key_case — Modifica todas as chaves em um array
    • array_chunk — Divide um array em pedaços
    • array_combine — Cria um array usando um array para chaves e outro para valores
    • array_count_values — Conta as frequências de cada valor de um array
    • array_diff_assoc — Computa a diferença entre arrays com checagem adicional de índice
    • array_diff_key — Registra a diferença entre arrays usando chaves para comparação
    • array_diff_uassoc — Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
    • array_diff_ukey — Computa a diferença de arrays usando uma função callback na comparação de chaves
    • array_diff — Analisa as diferenças entre arrays
    • array_fill_keys — Preenche um array com valores, especificando chaves
    • array_fill — Preenche um array com valores
    • array_filter — Filtra os elementos da array usando uma função de callback
    • array_flip — Inverte as relações entre chaves e valores
    • array_intersect_assoc — Computa a interseção de arrays com uma adicional verificação de índice
    • array_intersect_key — Computa a interseção de array comparando pelas chaves
    • array_intersect_uassoc — Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
    • array_intersect_ukey — Computa a interseção de arrays usando uma função de callback nas chaves para comparação
    • array_intersect — Calcula a interseção entre arrays
    • array_key_exists — Checa se uma chave ou índice existe em um array
    • array_keys — Retorna todas as chaves de um array
    • array_map — Aplica uma função em todos os elementos dos arrays dados
    • array_merge_recursive — Funde dois ou mais arrays recursivamente
    • array_merge — Funde um ou mais arrays
    • array_multisort — Ordena múltiplos arrays ou arrays multidimensionais
    • array_pad — Expande um array para um certo comprimento utilizando um determinado valor
    • array_pop — Retira um elemento do final do array
    • array_product — Calcula o produto dos valores de um array
    • array_push — Adiciona um ou mais elementos no final de um array
    • array_rand — Retorna um ou mais elementos aleatórios de um array
    • array_reduce — Reduz um array para um único valor através de um processo iterativo utilizando uma função
    • array_replace_recursive — Replaces elements from passed arrays into the first array recursively
    • array_replace — Replaces elements from passed arrays into the first array
    • array_reverse — Retorna um array com os elementos na ordem inversa
    • array_search — Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado
    • array_shift — Retira o primeiro elemento de um array
    • array_slice — Extrai uma parcela de um array
    • array_splice — Remove uma parcela do array e substitui com outros elementos
    • array_sum — Calcula a soma dos elementos de um array
    • array_udiff_assoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
    • array_udiff_uassoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
    • array_udiff — Computa a diferença de arrays usando uma função de callback para comparação dos dados
    • array_uintersect_assoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
    • array_uintersect_uassoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback
    • array_uintersect — Computa a interseção de array, comparando dados com uma função callback
    • array_unique — Remove o valores duplicados de um array
    • array_unshift — Adiciona um ou mais elementos no início de um array
    • array_values — Retorna todos os valores de um array
    • array_walk_recursive — Aplica um função do usuário recursivamente para cada membro de um array
    • array_walk — Aplica uma determinada funcão em cada elemento de um array
    • array — Cria um array
    • arsort — Ordena um array em ordem descrescente mantendo a associação entre índices e valores
    • asort — Ordena um array mantendo a associação entre índices e valores
    • compact — Cria um array contendo variáveis e seus valores
    • count — Conta o número de elementos de uma variável, ou propriedades de um objeto
    • current — Retorna o elemento corrente em um array
    • each — Retorna o par chave/valor corrente de um array e avança o seu cursor
    • end — Faz o ponteiro interno de um array apontar para o seu último elemento
    • extract — Importa variáveis para a tabela de símbolos a partir de um array
    • in_array — Checa se um valor existe em um array
    • key — Retorna uma chave de um array
    • krsort — Ordena um array pelas chaves em ordem descrescente
    • ksort — Ordena um array pelas chaves
    • list — Cria variáveis como se fossem arrays
    • natcasesort — Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas
    • natsort — Ordena um array utilizando o algoritmo da "ordem natural"
    • next — Avança o ponteiro interno de um array
    • pos — Sinônimo de current
    • prev — Retrocede o ponteiro interno de um array
    • range — Cria um array contendo uma faixa de elementos
    • reset — Faz o ponteiro interno de um array apontar para o seu primeiro elemento
    • rsort — Ordena um array em ordem descrescente
    • shuffle — Mistura os elementos de um array
    • sizeof — Sinônimo de count
    • sort — Ordena um array
    • uasort — Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores
    • uksort — Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
    • usort — Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário
Variável e Extensões Relacionadas aos Tipos
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Essas funções permitem a interação e manipulação de arrays de várias formas. Arrays são essenciais para armazenar, gerenciar, operar sobre um conjunto de variáveis.

Arrays simples e multidimensionais (matrizes) são suportados, e podem ser criados pelo usuário ou por outras funções. Existem diversas funções específicas para bancos de dados para preencher arrays com os dados retornados em consultas, e vários outros tipos de funções também retornam arrays.

Por favor, veja a seção Arrays do manual para uma explicação mais detalhada sobre como arrays são implementados e utilizados no PHP. Veja também Operadores de Array para outras maneiras de manipular matrizes.

Arrays
Instalação/Configuração
Arrays


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Arrays


Constantes pré-definidas

As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.

CASE_LOWER (integer)
CASE_LOWER é usada com a função array_change_key_case() e é usada em chaves de arrays para torná-las minúsculas. É o valor padrão utilizado em array_change_key_case().
CASE_UPPER (integer)
CASE_UPPER é usada com a função array_change_key_case() e é usada em chaves de arrays para torná-las maiúsculas.

Sinais de ordenação:

SORT_ASC (integer)
SORT_ASC é usada com array_multisort() para ordenar em ordem crescente.
SORT_DESC (integer)
SORT_DESC é usada com array_multisort() para ordenar em ordem descrescente.

Sinais de tipos de ordenação: usadas por várias funções de ordenação

SORT_REGULAR (integer)
SORT_REGULAR é usada para comparar itens normalmente.
SORT_NUMERIC (integer)
SORT_NUMERIC é usada para comparar itens numericamente.
SORT_STRING (integer)
SORT_STRING é usada para comparar itens como se fossem strings.
SORT_LOCALE_STRING (integer)
SORT_LOCALE_STRING é usada para comparar itens como se fossem strings, baseado no local atual. Adicionado no PHP 4.4.0 e 5.0.2.

COUNT_NORMAL (integer)
COUNT_RECURSIVE (integer)
EXTR_OVERWRITE (integer)
EXTR_SKIP (integer)
EXTR_PREFIX_SAME (integer)
EXTR_PREFIX_ALL (integer)
EXTR_PREFIX_INVALID (integer)
EXTR_PREFIX_IF_EXISTS (integer)
EXTR_IF_EXISTS (integer)
EXTR_REFS (integer)
Tipos Resource
Funções para Array
Arrays


Funções para Array

Veja Também

Veja também is_array(), explode(),
implode(), split(),
preg_split(), e unset().

Índice

  • array_change_key_case — Modifica todas as chaves em um array
  • array_chunk — Divide um array em pedaços
  • array_combine — Cria um array usando um array para chaves e outro para valores
  • array_count_values — Conta as frequências de cada valor de um array
  • array_diff_assoc — Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_key — Registra a diferença entre arrays usando chaves para comparação
  • array_diff_uassoc — Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_diff_ukey — Computa a diferença de arrays usando uma função callback na comparação de chaves
  • array_diff — Analisa as diferenças entre arrays
  • array_fill_keys — Preenche um array com valores, especificando chaves
  • array_fill — Preenche um array com valores
  • array_filter — Filtra os elementos da array usando uma função de callback
  • array_flip — Inverte as relações entre chaves e valores
  • array_intersect_assoc — Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_key — Computa a interseção de array comparando pelas chaves
  • array_intersect_uassoc — Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_intersect_ukey — Computa a interseção de arrays usando uma função de callback nas chaves para comparação
  • array_intersect — Calcula a interseção entre arrays
  • array_key_exists — Checa se uma chave ou índice existe em um array
  • array_keys — Retorna todas as chaves de um array
  • array_map — Aplica uma função em todos os elementos dos arrays dados
  • array_merge_recursive — Funde dois ou mais arrays recursivamente
  • array_merge — Funde um ou mais arrays
  • array_multisort — Ordena múltiplos arrays ou arrays multidimensionais
  • array_pad — Expande um array para um certo comprimento utilizando um determinado valor
  • array_pop — Retira um elemento do final do array
  • array_product — Calcula o produto dos valores de um array
  • array_push — Adiciona um ou mais elementos no final de um array
  • array_rand — Retorna um ou mais elementos aleatórios de um array
  • array_reduce — Reduz um array para um único valor através de um processo iterativo utilizando uma função
  • array_replace_recursive — Replaces elements from passed arrays into the first array recursively
  • array_replace — Replaces elements from passed arrays into the first array
  • array_reverse — Retorna um array com os elementos na ordem inversa
  • array_search — Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado
  • array_shift — Retira o primeiro elemento de um array
  • array_slice — Extrai uma parcela de um array
  • array_splice — Remove uma parcela do array e substitui com outros elementos
  • array_sum — Calcula a soma dos elementos de um array
  • array_udiff_assoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_udiff — Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_uintersect_assoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback
  • array_uintersect — Computa a interseção de array, comparando dados com uma função callback
  • array_unique — Remove o valores duplicados de um array
  • array_unshift — Adiciona um ou mais elementos no início de um array
  • array_values — Retorna todos os valores de um array
  • array_walk_recursive — Aplica um função do usuário recursivamente para cada membro de um array
  • array_walk — Aplica uma determinada funcão em cada elemento de um array
  • array — Cria um array
  • arsort — Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • asort — Ordena um array mantendo a associação entre índices e valores
  • compact — Cria um array contendo variáveis e seus valores
  • count — Conta o número de elementos de uma variável, ou propriedades de um objeto
  • current — Retorna o elemento corrente em um array
  • each — Retorna o par chave/valor corrente de um array e avança o seu cursor
  • end — Faz o ponteiro interno de um array apontar para o seu último elemento
  • extract — Importa variáveis para a tabela de símbolos a partir de um array
  • in_array — Checa se um valor existe em um array
  • key — Retorna uma chave de um array
  • krsort — Ordena um array pelas chaves em ordem descrescente
  • ksort — Ordena um array pelas chaves
  • list — Cria variáveis como se fossem arrays
  • natcasesort — Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas
  • natsort — Ordena um array utilizando o algoritmo da "ordem natural"
  • next — Avança o ponteiro interno de um array
  • pos — Sinônimo de current
  • prev — Retrocede o ponteiro interno de um array
  • range — Cria um array contendo uma faixa de elementos
  • reset — Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • rsort — Ordena um array em ordem descrescente
  • shuffle — Mistura os elementos de um array
  • sizeof — Sinônimo de count
  • sort — Ordena um array
  • uasort — Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores
  • uksort — Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
  • usort — Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário
Constantes pré-definidas
array_change_key_case
Arrays


Modifica todas as chaves em um array

Funções para Array
array_chunk
Funções para Array
PHP Manual

array_change_key_case

(PHP 4 >= 4.2.0, PHP 5)

array_change_key_case — Modifica todas as chaves em um array

Descrição

array array_change_key_case ( array $input [, int $case ] )

Retorna um array com todas as chaves de input em minúsculo ou maiúsculo. Índice numéricos são mantidos como são.

Parâmetros

input

O array para modificar

case

Pode ser CASE_UPPER ou CASE_LOWER (padrão)

Valor Retornado

Retorna um array com as chaves em minúsculo ou maiúsculo, ou false se input não for um array.

Erros

Dispara E_WARNING se input não for um array.

Exemplos

Exemplo #1 Exemplo da array_change_key_case()

<?php
$input_array = array("primeiRo" => 1, "segunDo" => 4);
print_r(array_change_key_case($input_array, CASE_UPPER);
?>

O exemplo acima irá imprimir:

Array
(
    [PRIMEIRO] => 1
    [SEGUNDO] => 2
)

Notas

Nota:

Se uma matriz tem índices que serão o mesmo após a utilização desta função (ex: "chaVE" e "CHave"), o valor que estiver mais no fim na matriz irá sobrescrever os outros índices.

Funções para Array
array_chunk
Funções para Array


Divide um array em pedaços

array_change_key_case
array_combine
Funções para Array
PHP Manual

array_chunk

(PHP 4 >= 4.2.0, PHP 5)

array_chunk — Divide um array em pedaços

Descrição

array array_chunk ( array $input , int $size [, bool $preserve_keys ] )

Divide um array em size pedaços. O último pedaço pode conter menos que size elementos.

Parâmetros

input

O array.

size

O tamanho de cada pedaço

preserve_keys

Quando definido para TRUE, chaves serão preservadas. Padrão é FALSE que reindexará os pedaços numericamente

Valor Retornado

Retorna um array multidimensional numericamente indexado, iniciando com 0, com cada dimensão contendo size elementos.

Erros

Se size é menor que 1 E_WARNING será disparado e NULL retornado.

Exemplos

Exemplo #1 Exemplo da array_chunk()

<?php
$input_array = array('a', 'b', 'c', 'd', 'e');
print_r(array_chunk($input_array, 2));
print_r(array_chunk($input_array, 2, true));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => Array
        (
            [0] => c
            [1] => d
        )

    [2] => Array
        (
            [0] => e
        )

)
Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => Array
        (
            [2] => c
            [3] => d
        )

    [2] => Array
        (
            [4] => e
        )

)

array_change_key_case
array_combine
Funções para Array


Cria um array usando um array para chaves e outro para valores

array_chunk
array_count_values
Funções para Array
PHP Manual

array_combine

(PHP 5)

array_combine — Cria um array usando um array para chaves e outro para valores

Descrição

array array_combine ( array $keys , array $values )

Cria um array usando os valores do array keys como chaves e os valores do array values como valores correspondentes.

Parâmetros

keys

Array a ser usado como chaves. Valores ilegais para chave serão convertidos para string.

values

Array a ser usado como valores

Valor Retornado

Retorna o array combinado, FALSE se o número de elementos de cada array não são iguais ou se os arrays são vazios.

Erros

Dispara E_WARNING se keys e/ou values são vazios ou o número de elementos não correspondem.

Exemplos

Exemplo #1 Um simples exemplo usando array_combine()

<?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);

print_r($c);
?>

O exemplo acima irá imprimir:

Array
(
    [green]  => avocado
    [red]    => apple
    [yellow] => banana
)

Veja Também

  • array_merge() - Funde um ou mais arrays
  • array_walk() - Aplica uma determinada funcão em cada elemento de um array
  • array_values() - Retorna todos os valores de um array

array_chunk
array_count_values
Funções para Array


Conta as frequências de cada valor de um array

array_combine
array_diff_assoc
Funções para Array
PHP Manual

array_count_values

(PHP 4, PHP 5)

array_count_values — Conta as frequências de cada valor de um array

Descrição

array array_count_values ( array $input )

array_count_values() retorna um array utilizando os valores do array input como chaves e seus respectivos números de ocorrências como valores.

Parâmetros

input

O array de valores para contagem

Valor Retornado

Retorna um array associativo de valores de input como chaves e suas quantias como valor.

Erros

Dispara E_WARNING para cada elemento que não for string ou integer.

Exemplos

Exemplo #1 Exemplo da array_count_values()

<?php
$array = array(1, "ola", 1, "mundo", "ola");
array_count_values($array);
?>

O exemplo acima irá imprimir:

Array
(
    [1] => 2
    [ola] => 2
    [mundo] => 1
)

Veja Também

  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto
  • array_unique() - Remove o valores duplicados de um array
  • array_values() - Retorna todos os valores de um array
  • count_chars() - Retorna informações sobre os caracteres usados numa string

array_combine
array_diff_assoc
Funções para Array


Computa a diferença entre arrays com checagem adicional de índice

array_count_values
array_diff_key
Funções para Array
PHP Manual

array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_diff_assoc — Computa a diferença entre arrays com checagem adicional de índice

Descrição

array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )

Compara array1 com array2 e retorna a diferença. Ao contrário de array_diff(), as chaves dos arrays são usadas na comparação.

Parâmetros

array1

O array a comparar.

array2

O array a ser comparado.

...

Mais arrays a serem comparados.

Valor Retornado

Retorna um array contendo todos os valores do array1 que não estão presentes em qualquer dos outros arrays.

Exemplos

Exemplo #1 Exemplo de array_diff_assoc()

Neste exemplo você vê que o par "a" => "verde" está presente em ambos os arrays e assim ele não está na saída da função. Ao contrário disso, o par 0 => "vermelho" está na saída porque no segundo argumento "vermelho" tem a chave 1.

<?php
$array1 = array("a" => "verde", "b" => "marrom", "c" => "azul", "vermelho");
$array2 = array("a" => "verde", "amarelo", "vermelho");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [b] => marrom
    [c] => azul
    [0] => vermelho
)

Exemplo #2 Exemplo de array_diff_assoc()

Dois valores dos pares chave => valor são considerados iguais somente se (string) $elem1 === (string) $elem2 . Em outras palavras, uma checagem estrita de string é feita para que representações de string sejam as mesmas.

<?php
$array1 = array(0, 1, 2);
$array2 = array("00", "01", "2");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 0
    [1] => 1
    )

Notas

Nota: Esta função checa somente uma dimensão de um array n-dimensional. É claro que você pode checar dimensões mais profundas usando, por exemplo, array_diff_assoc($array1[0], $array2[0]);.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice

array_count_values
array_diff_key
Funções para Array


Registra a diferença entre arrays usando chaves para comparação

array_diff_assoc
array_diff_uassoc
Funções para Array
PHP Manual

array_diff_key

(PHP 5 >= 5.1.0)

array_diff_key — Registra a diferença entre arrays usando chaves para comparação

Descrição

array array_diff_key ( array $array1 , array $array2 [, array $... ] )

Compara as chaves do array1 com as chaves do array2 e retorna a diferença. Esta função é como array_diff(), exceto que a comparação é feita com as chaves, ao invés dos valores.

Parâmetros

array1

O array a comparar

array2

Um array a ser comparado

...

Mais arrays a serem comparados

Valor Retornado

Retorna um array contendo todas as entradas de array1 que não estão presentes em qualquer dos outros arrays.

Exemplos

Exemplo #1 Exemplo de array_diff_key()

As duas chaves dos pares chave => valor são consideradas iguais somente se (string) $key1 === (string) $key2 . Em outras palavras, uma checagem de tipo estrita é feita para que representações de string sejam as mesmas.

<?php
$array1 = array('azul'  => 1, 'vermelho'  => 2, 'verde'  => 3, 'roxo' => 4);
$array2 = array('verde' => 5, 'azul' => 6, 'amarelo' => 7, 'rosa'   => 8);

var_dump(array_diff_key($array1, $array2));
?>

O exemplo acima irá imprimir:

array(2) {
  ["vermelho"]=>
  int(2)
  ["roxo"]=>
  int(4)
}

Notas

Nota:

Essa função checa somente uma dimensão de um array n-dimensional. É claro que você pode checar dimensões mais profundas usando array_diff_key($array1[0], $array2[0]);.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_diff_ukey() - Computa a diferença de arrays usando uma função callback na comparação de chaves
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_intersect_key() - Computa a interseção de array comparando pelas chaves
  • array_intersect_ukey() - Computa a interseção de arrays usando uma função de callback nas chaves para comparação

array_diff_assoc
array_diff_uassoc
Funções para Array


Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário

array_diff_key
array_diff_ukey
Funções para Array
PHP Manual

array_diff_uassoc

(PHP 5)

array_diff_uassoc — Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário

Descrição

array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callback $key_compare_func )

Compara array1 com array2 e retorna a diferença. Ao contrário de array_diff(), as chaves dos arrays são usadas na comparação.

Ao contrário de array_diff_assoc(), uma função de callback fornecida pelo usuário é usada na comparação dos índices, não uma função interna.

Parâmetros

array1

O array a comparar

array2

Um array a ser comparado

...

Mais arrays a serem comparados

key_compare_func

Função de callback a utilizar. A função de callback deve retornar um inteiro menor, igual ou maior que zero se o primeiro argumento é considerado, respectivamente, menor, igual ou maior que o segundo.

Valor Retornado

Retorna um array contendo todas as entradas de array1 que não estão presentes em qualquer dos outros arrays.

Exemplos

Exemplo #1 Exemplo de array_diff_uassoc()

O par "a" => "verde" está presente em ambos os arrays e assim não está na saída da função. Ao contrário disso, o par 0 => "vermelho" está na saída porque no segundo argumento "vermelho" tem a chave 1.

<?php
function key_compare_func($a, $b)
{
    if ($a === $b) {
        return 0;
    }
    return ($a > $b)? 1:-1;
}

$array1 = array("a" => "verde", "b" => "marrom", "c" => "azul", "vermelho");
$array2 = array("a" => "verde", "amarelo", "vermelho");
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [b] => marrom
    [c] => azul
    [0] => vermelho
)

A igualdade de 2 índices é checada pela função de callback fornecida pelo usuário.

Notas

Nota:

Esta função checa somente uma dimensão de um array n-dimensional. É claro que você pode checar dimensões mais profundas usando, por exemplo, array_diff_uassoc($array1[0], $array2[0], "key_compare_func");.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_diff_key
array_diff_ukey
Funções para Array


Computa a diferença de arrays usando uma função callback na comparação de chaves

array_diff_uassoc
array_diff
Funções para Array
PHP Manual

array_diff_ukey

(PHP 5 >= 5.1.0)

array_diff_ukey — Computa a diferença de arrays usando uma função callback na comparação de chaves

Descrição

array array_diff_ukey ( array $array1 , array $array2 [, array $ ... ], callback $key_compare_func )

Compara as chaves de array1 com as chaves de array2 e retorna a diferença. Esta função é como array_diff() exceto que a comparação é feita nas chaves ao invés dos valores.

Diferente de array_diff_key() um função callback é fornecida e usada para comparação de índices, não função interna.

Parâmetros

array1

Array a ser comparado

array2

Array para comparação

...

Mais arrays para comparação

key_compare_func

callback function to use. A função callback precisa retorna um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna um array contendo todas as entradas de array1 que não estão presentes em nenhum outro array.

Exemplos

Exemplo #1 Exemplo da array_diff_ukey()

<?php
function key_compare_func($key1, $key2)
{
    if ($key1 == $key2)
        return 0;
    else if ($key1 > $key2)
        return 1;
    else
        return -1;
}

$array1 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);

var_dump(array_diff_ukey($array1, $array2, 'key_compare_func'));
?>

O exemplo acima irá imprimir:

array(2) {
  ["red"]=>
  int(2)
  ["purple"]=>
  int(4)
}

Notas

Nota:

Esta função somente verifica uma dimensão de um array com n-dimensões. Obviamente você pode verificar as dimensões usando array_diff_ukey($array1[0], $array2[0], 'callback_func');.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_diff_key() - Registra a diferença entre arrays usando chaves para comparação
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_intersect_key() - Computa a interseção de array comparando pelas chaves
  • array_intersect_ukey() - Computa a interseção de arrays usando uma função de callback nas chaves para comparação

array_diff_uassoc
array_diff
Funções para Array


Analisa as diferenças entre arrays

array_diff_ukey
array_fill_keys
Funções para Array
PHP Manual

array_diff

(PHP 4 >= 4.0.1, PHP 5)

array_diff — Analisa as diferenças entre arrays

Descrição

array array_diff ( array $array1 , array $array2 [, array $ ... ] )

Compara array1 com array2 e retorna a diferença.

Parâmetros

array1

O array a ser comparado

array2

Um array para comparar

...

Mais arrays para comparar

Valor Retornado

Retorna um array contendo todas as entradas de array1 que não estão presentes em algum dos outros arrays.

Exemplos

Exemplo #1 Exemplo da array_diff()

<?php
$array1 = array("a" => "verde", "vermelho", "azul", "vermelho");
$array2 = array("b" => "verde", "amarelo", "vermelho");
$result = array_diff($array1, $array2);
print_r($result);
?>

Multiplas ocorrências de $array1 são todas tratadas da mesma maneira. Isto irá mostrar:

Array
(
  [1] => azul
)

Notas

Nota:

Dois elementos são considerados iguais se, e somente se, (string) $elem1 === (string) $elem2. Em palavras: quando a representação em string é a mesma.

Nota:

Esta função faz compara apenas uma dimensão de um array com n dimensões. Mas, obviamente, você pode comparar outras dimensões usando array_diff($array1[0], $array2[0]);.

Aviso

Não estava funcionando no PHP 4.0.4!

Veja Também

  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice

array_diff_ukey
array_fill_keys
Funções para Array


Preenche um array com valores, especificando chaves

array_diff
array_fill
Funções para Array
PHP Manual

array_fill_keys

(PHP 5 >= 5.2.0)

array_fill_keys — Preenche um array com valores, especificando chaves

Descrição

array array_fill_keys ( array $keys , mixed $value )

Preenche um array com o valor do parâmetro value, usando os valores do array keys como chaves.

Parâmetros

keys

Array de valores que serão usados como chaves. Valores ilegais para chaves serão convertidos para string.

value

Valor para usar no preenchimento

Valor Retornado

Retorna o array preenchido

Exemplos

Exemplo #1 Exemplo da array_fill_keys()

<?php
$keys = array('foo', 5, 10, 'bar');
$a = array_fill_keys($keys, 'banana');
print_r($a);
?>

O exemplo acima irá imprimir:

Array
(
    [foo] => banana
    [5] => banana
    [10] => banana
    [bar] => banana
)

Veja Também

  • array_fill() - Preenche um array com valores
  • array_combine() - Cria um array usando um array para chaves e outro para valores

array_diff
array_fill
Funções para Array


Preenche um array com valores

array_fill_keys
array_filter
Funções para Array
PHP Manual

array_fill

(PHP 4 >= 4.2.0, PHP 5)

array_fill — Preenche um array com valores

Descrição

array array_fill ( int $start_index , int $num , mixed $value )

Preenche um array com num elementos com o valor do parâmetro value e chaves começando a partir de start_index.

Parâmetros

start_index

O primeiro índice do array retornado

num

Número de elementos a inserir

value

Valores para preencher

Valor Retornado

Retorna o array preenchido

Erros

Dispara um E_WARNING se num é menor que um.

Exemplos

Exemplo #1 Exemplo de array_fill()

<?php
$a = array_fill(5, 6, 'banana');
$b = array_fill(-2, 2, 'pear');
print_r($a);
print_r($b);
?>

O exemplo acima irá imprimir:

Array
(
    [5]  => banana
    [6]  => banana
    [7]  => banana
    [8]  => banana
    [9]  => banana
    [10] => banana
)
Array
(
    [-2] => pear
    [0] => pear
)

Notas

Veja também a seção Arrays do manual para a explicação detalhada de chaves negativas.

Veja Também

  • str_repeat() - Repete uma string
  • range() - Cria um array contendo uma faixa de elementos

array_fill_keys
array_filter
Funções para Array


Filtra os elementos da array usando uma função de callback

array_fill
array_flip
Funções para Array
PHP Manual

array_filter

(PHP 4 >= 4.0.6, PHP 5)

array_filter — Filtra os elementos da array usando uma função de callback

Descrição

array array_filter ( array $input [, callback $callback ] )

Itera sobre cada valor de input passando-os para a função callback. Se a função callback retornar true, o valor atual de input é retornado na matriz resultado. Os índices das matrizes são preservados.

Parâmetros

input

O array a ser iterado

callback

A função callback a ser usada

Se nenhum callback é fornecido, todas entradas de input iguais a FALSE (veja convertendo para booleano) serão removidas.

Valor Retornado

Retorna o array filtrado.

Exemplos

Exemplo #1 Exemplo de array_filter()

<?php
function impar($var)
{
    return($var & 1);
}

function par($var)
{
    return(!($var & 1));
}

$array1 = array("a" => 1, "b" => 2, "c" => 3, "d" => 4, "e" => 5);
$array2 = array(6, 7, 8, 9, 10, 11, 12);

echo "Impares: \n";
print_r(array_filter($array1, "impar"));
echo "Pares: \n";
print_r(array_filter($array2, "par"));
?>

O exemplo acima irá imprimir:

Impares:
Array
(
    [a] => 1
    [c] => 3
    [e] => 5
)
Pares:
Array
(
    [0] => 6
    [2] => 8
    [4] => 10
    [6] => 12
)

Exemplo #2 array_filter() sem callback

<?php

$entry = array(
0 => 'foo',
1 => false,
2 => -1,
3 => null,
4 => ''
);

print_r(array_filter($entry));
?>

O exemplo acima irá imprimir:

Array
(
  [0] => foo
  [2] => -1
}

Notas

Cuidado

Se o array é modificado por uma função callback (e.g. elemento adicionado, deletado ou apagado) o comportamento desta função é indefinido.

Veja Também

  • array_map() - Aplica uma função em todos os elementos dos arrays dados
  • array_reduce() - Reduz um array para um único valor através de um processo iterativo utilizando uma função
  • array_walk() - Aplica uma determinada funcão em cada elemento de um array

array_fill
array_flip
Funções para Array


Inverte as relações entre chaves e valores

array_filter
array_intersect_assoc
Funções para Array
PHP Manual

array_flip

(PHP 4, PHP 5)

array_flip — Inverte as relações entre chaves e valores

Descrição

array array_flip ( array $trans )

array_flip() retorna um array com com a relação entre suas chaves e valores invertida, ou seja, as chaves de trans passam a ser os valores e os valores de trans passam a ser as chaves.

Note que os valores de trans devem ser chaves válidas, ou seja, eles precisam ser integer ou string. Um aviso será mostrado se um valor é de um tipo inválido para chaves, e o par chave/valor em questão não será invertido.

Se um valor tem várias ocorrências, a última chave será usada como valor, e todos os outros serão perdidos.

Parâmetros

trans

Um array de pares chave/valor para inverter.

Valor Retornado

Retorna o array revertido em sucesso e FALSE em falha.

Exemplos

Exemplo #1 Exemplo de array_flip()

<?php
$trans = array_flip($trans);
$original = strtr($str, $trans);
?>

Exemplo #2 Exemplo da array_flip(): colisão

<?php
$trans = array("a" => 1, "b" => 1, "c" => 2);
$trans = array_flip($trans);
print_r($trans);
?>

Agora $trans é:

Array
(
    [1] => b
    [2] => c
)

Veja Também

  • array_values() - Retorna todos os valores de um array
  • array_keys() - Retorna todas as chaves de um array
  • array_reverse() - Retorna um array com os elementos na ordem inversa

array_filter
array_intersect_assoc
Funções para Array


Computa a interseção de arrays com uma adicional verificação de índice

array_flip
array_intersect_key
Funções para Array
PHP Manual

array_intersect_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_intersect_assoc — Computa a interseção de arrays com uma adicional verificação de índice

Descrição

array array_intersect_assoc ( array $array1 , array $array2 [, array $ ... ] )

array_intersect_assoc() retorna um array contendo todos os valores de array1 que estão presentes em todos os argumentos. Note que estas chaves são usadas na comparação diferindo de array_intersect().

Parâmetros

array1

O array com os valores a serem verificados.

array2

O array para comparar os valores.

array

Uma lista de arrays para comparação.

Valor Retornado

Retorna um array associativo contendo todos os valores em array1 que estão presentes em todos os argumentos.

Exemplos

Exemplo #1 Exemplo da array_intersect_assoc()

<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result_array = array_intersect_assoc($array1, $array2);
print_r($result_array);
?>

O exemplo acima irá imprimir:

Array
(
    [a] => green
)

Em nosso exemplo você pode ver que somente o par "a" => "green" está presente em ambos array, então logo é retornado. O valor "red" não é retornado porque no $array1 a chave é 0 quando a chave de "red" no $array2 é 1.

Os dois valores dos pares key => value são considerados iguais somente se (string) $elem1 === (string) $elem2 . Em outras palavras uma verificação do tipo é executada então a representação string precisa ser a mesma.

Veja Também

  • array_intersect() - Calcula a interseção entre arrays
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback
  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
array_flip
array_intersect_key
Funções para Array


Computa a interseção de array comparando pelas chaves

array_intersect_assoc
array_intersect_uassoc
Funções para Array
PHP Manual

array_intersect_key

(PHP 5 >= 5.1.0)

array_intersect_key — Computa a interseção de array comparando pelas chaves

Descrição

array array_intersect_key ( array $array1 , array $array2 [, array $ ... ] )

array_intersect_key() retorna um array contendo todos os valores de array1 que tem as mesmas chaves presentes em todos os argumentos.

Parâmetros

array1

O array com as chaves a serem verificadas.

array2

Um array para comparar as chaves.

array

Uma variável lista de arrays para comparação.

Valor Retornado

Retorna um array associativo contendo todos os valores de array1 que estão presentes em todos os argumentos.

Exemplos

Exemplo #1 Exemplo da array_intersect_key()

<?php
$array1 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);

var_dump(array_intersect_key($array1, $array2));
?>

O exemplo acima irá imprimir:

array(2) {
  ["blue"]=>
  int(1)
  ["green"]=>
  int(3)
}

Em nosso exemplo você pode ver que somente as chaves 'blue' e 'green' estão presentes em ambos array e assim retornado. Também note que os valores das chaves 'blue' e 'green' diferem nos dois arrays. A combinação ocorre porque somente as chaves são verificadas. Os valores retornados são do array1.

As duas chaves do par key => value são considerados iguais somente se (string) $key1 === (string) $key2 . Em outras palavras um verificação do tipo é executada, então a representação string precisa ser a mesma.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_diff_key() - Registra a diferença entre arrays usando chaves para comparação
  • array_diff_ukey() - Computa a diferença de arrays usando uma função callback na comparação de chaves
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_intersect_ukey() - Computa a interseção de arrays usando uma função de callback nas chaves para comparação

array_intersect_assoc
array_intersect_uassoc
Funções para Array


Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback

array_intersect_key
array_intersect_ukey
Funções para Array
PHP Manual

array_intersect_uassoc

(PHP 5)

array_intersect_uassoc — Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback

Descrição

array array_intersect_uassoc ( array $array1 , array $array2 [, array $ ... ], callback $key_compare_func )

array_intersect_uassoc() retorna um array contendo todos os valores de array1 que estão presentes em todos os argumentos. Note que as chaves são usadas na comparação, ao contrário de array_intersect().

A comparação de índices é feita por uma função de callback fornecida pelo usuário. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente, menor que, igual a, ou maior que o segundo.

Parâmetros

array1

Array inicial para comparação dos arrays.

array2

Primeiro array a ser comparado.

array

Lista variável de argumentos de arrays para comparar valores.

key_compare_func

Função de callback fornecida pelo usuário para fazer a comparação.

Valor Retornado

Retorna os valores de array1 cujos valores existem em todos os argumentos.

Exemplos

Exemplo #1 Exemplo de array_intersect_uassoc()

<?php
$array1 = array("a" => "verde", "b" => "marrom", "c" => "azul", "vermelho");
$array2 = array("a" => "VERDE", "B" => "marrom", "amarelo", "vermelho");

print_r(array_intersect_uassoc($array1, $array2, "strcasecmp"));
?>

O exemplo acima irá imprimir:

Array
(
    [b] => marrom
)

Veja Também

  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback
  • array_intersect_key() - Computa a interseção de array comparando pelas chaves
  • array_intersect_ukey() - Computa a interseção de arrays usando uma função de callback nas chaves para comparação

array_intersect_key
array_intersect_ukey
Funções para Array


Computa a interseção de arrays usando uma função de callback nas chaves para comparação

array_intersect_uassoc
array_intersect
Funções para Array
PHP Manual

array_intersect_ukey

(PHP 5 >= 5.1.0)

array_intersect_ukey — Computa a interseção de arrays usando uma função de callback nas chaves para comparação

Descrição

array array_intersect_ukey ( array $array1 , array $array2 [, array $... ], callback $key_compare_func )

array_intersect_ukey() retorna um array contendo todos os valores de array1 que têm as mesmas chaves presentes em todos os argumentos.

Esta comparação é feita por uma função de callback fornecida pelo usuário. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado, respectivamente, menor que, igual a, ou maior que o segundo.

Parâmetros

array1

Array inicial para comparação dos arrays.

array2

Primeiro array para comparar as chaves.

array

Lista variável de argumentos para comparar as chaves.

key_compare_func

Função de callback fornecida pelo usuário para comparação.

Valor Retornado

Retorna os valores de array1 cujas chaves existem em todos os argumentos.

Exemplos

Exemplo #1 Exemplo de array_intersect_ukey()

<?php
function key_compare_func($key1, $key2)
{
    if ($key1 == $key2)
        return 0;
    else if ($key1 > $key2)
        return 1;
    else
        return -1;
}

$array1 = array('azul'  => 1, 'vermelho'  => 2, 'verde'  => 3, 'roxo' => 4);
$array2 = array('verde' => 5, 'azul' => 6, 'amarelo' => 7, 'rosa'  => 8);

var_dump(array_intersect_ukey($array1, $array2, 'key_compare_func'));
?>

O exemplo acima irá imprimir:

array(2) {
  ["azul"]=>
  int(1)
  ["verde"]=>
  int(3)
}

Em nosso exemplo você vê que somente as chaves 'azul' e 'verde' estão presentes em ambos os arrays e assim retornadas. Também note que os valores para as chaves 'azul' e 'verde' diferem entre os dois arrays. Uma combinação ainda ocorre porque somente as chaves são checadas. Os valores retornados são os do array1.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_diff_key() - Registra a diferença entre arrays usando chaves para comparação
  • array_diff_ukey() - Computa a diferença de arrays usando uma função callback na comparação de chaves
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_intersect_key() - Computa a interseção de array comparando pelas chaves

array_intersect_uassoc
array_intersect
Funções para Array


Calcula a interseção entre arrays

array_intersect_ukey
array_key_exists
Funções para Array
PHP Manual

array_intersect

(PHP 4 >= 4.0.1, PHP 5)

array_intersect — Calcula a interseção entre arrays

Descrição

array array_intersect ( array $array1 , array $array2 [, array $ ... ] )

array_intersect() retorna um array contendo todos os valores de array1 que estão presentes nos outros argumentos. Note que as chaves são preservadas.

Parâmetros

array1

O array com os valores que serão verificados.

array2

Um array para comparar os valores.

array

Uma lista variável de arrays para comparar.

Valor Retornado

Retorna um array contendo todos os valores em array1 cujo existem em todos os parâmetros.

Exemplos

Exemplo #1 Exemplo da array_intersect()

<?php
$array1 = array("a" => "verde", "vermelho", "azul");
$array2 = array("b" => "verde", "amarelo", "vermelho");
$result = array_intersect($array1, $array2);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [a] => verde
    [0] => vermelho
)

Notas

Nota: Dois elementos são considerados iguais se, e somente se, (string) $elem1 === (string) $elem2. Em palavras: quando a representação em string é a mesma.

Veja Também

  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice

array_intersect_ukey
array_key_exists
Funções para Array


Checa se uma chave ou índice existe em um array

array_intersect
array_keys
Funções para Array
PHP Manual

array_key_exists

(PHP 4 >= 4.0.7, PHP 5)

array_key_exists — Checa se uma chave ou índice existe em um array

Descrição

bool array_key_exists ( mixed $key , array $search )

array_key_exists() retorna TRUE se a chave key existe no array. key pode ser qualquer valor possível para uma chave de array. array_key_exists() também funciona com objetos.

Parâmetros

key

Valor para verificar.

search

Um array com chaves para verificar.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de array_key_exists()

<?php
$busca_array = array("primeiro" => 1, "segundo" => 4);
if (array_key_exists("primeiro", $busca_array)) {
    echo "O elemento 'primeiro' está no array!";
}
?>

Nota: O nome dessa função é key_exists() no PHP 4.0.6.

Exemplo #2 array_key_exists() versus isset()

isset() não retorna TRUE para valores de chave que correspondam a um valor NULL, enquanto que array_key_exists() faz isto.

<?php
$search_array = array('first' => null, 'second' => 4);

// returns false
isset($search_array['first']);

// returns true
array_key_exists('first', $search_array);
?>

Veja Também

  • isset() - Informa se a variável foi iniciada
  • array_keys() - Retorna todas as chaves de um array
  • in_array() - Checa se um valor existe em um array

array_intersect
array_keys
Funções para Array


Retorna todas as chaves de um array

array_key_exists
array_map
Funções para Array
PHP Manual

array_keys

(PHP 4, PHP 5)

array_keys — Retorna todas as chaves de um array

Descrição

array array_keys ( array $input [, mixed $search_value [, bool $strict ]] )

array_keys() retorna as chaves, numéricas e string, do array input.

Se o parâmetro opcional search_value for especificado, então apenas as chaves para esse valor serão retornadas. Do contrário, todas as chaves de input serão retornadas. A partir do PHP 5, você pode usar o parãmetro strict para comparação incluindo tipo (===).

Parâmetros

input

Um array contendo chaves a serem retornadas.

search_value

Se especificado, então somente chaves contendo estes valores são retornado.

strict

No PHP 5, este parâmetro determina se a comparação é rígida (===) durante a busca.

Valor Retornado

Retorna um array de todas as chaves em input.

Exemplos

Exemplo #1 Exemplo de array_keys()

<?php
$array = array(0 => 100, "cor" => "vermelho");
print_r(array_keys($array));

$array = array("azul", "vermelho", "verde", "azul", "azul");
print_r(array_keys($array, "azul"));

$array = array("cor" => array("azul", "vermelho", "verde"), "tamanho" => array("pequeno", "medio", "grande"));
print_r(array_keys($array));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 0
    [1] => cor
)
Array
(
    [0] => 0
    [1] => 3
    [2] => 4
)
Array
(
    [0] => cor
    [1] => tamanho
)

Veja Também

  • array_values() - Retorna todos os valores de um array
  • array_key_exists() - Checa se uma chave ou índice existe em um array

array_key_exists
array_map
Funções para Array


Aplica uma função em todos os elementos dos arrays dados

array_keys
array_merge_recursive
Funções para Array
PHP Manual

array_map

(PHP 4 >= 4.0.6, PHP 5)

array_map — Aplica uma função em todos os elementos dos arrays dados

Descrição

array array_map ( callback $callback , array $arr1 [, array $... ] )

array_map() retorna um array contendo todos os elementos de arr1 depois de aplicada uma determinada função em cada um. O número de parâmetros que esta função aceita deve coincidir com o número de arrays passados para a array_map()

Parâmetros

callback

Função callback para executar para cada elementos dos arrays.

arr1

Um array para percorrer chamando função callback.

array

Variável lista de argumentos array para percorrer chamando a função callback.

Valor Retornado

Retorna um array contendo todos elementos de arr1 depois de ter aplicado a função callback para cada um.

Exemplos

Exemplo #1 Exemplo de array_map()

<?php
function cubo($n)
{
    return $n*$n*$n;
}

$a = array(1, 2, 3, 4, 5);
$b = array_map("cubo", $a);
print_r($b);
?>

E programa acima faz com que $b tenha:

Array
(
    [0] => 1
    [1] => 8
    [2] => 27
    [3] => 64
    [4] => 125
)

Exemplos

Exemplo #2 array_map() - usando mais de um array

<?php
function mostrar_Espanhol($n, $m)
{
    return "O número $n é chamado de $m na Espanha";
}

function map_Espanhol($n, $m)
{
    return array($n => $m);
}

$a = array(1, 2, 3, 4, 5);
$b = array("uno", "dos", "tres", "cuatro", "cinco");

$c = array_map("mostrar_Espanhol", $a, $b);
print_r($c);

$d = array_map("map_Espanhol", $a , $b);
print_r($d);
?>

O exemplo acima irá imprimir:

// Saída de $c
Array
(
    [0] => O número 1 é chamado de uno na Espanha
    [1] => O número 2 é chamado de dos na Espanha
    [2] => O número 3 é chamado de tres na Espanha
    [3] => O número 4 é chamado de cuatro na Espanha
    [4] => O número 5 é chamado de cinco na Espanha
)

// Saída de $d
Array
(
    [0] => Array
        (
            [1] => uno
        )

    [1] => Array
        (
            [2] => dos
        )

    [2] => Array
        (
            [3] => tres
        )

    [3] => Array
        (
            [4] => cuatro
        )

    [4] => Array
        (
            [5] => cinco
        )

)

Normalmente quando se usa dois ou mais arrays, eles devem ter o mesmo tamanho porque a função callback é aplicada paralelamente nos elementos correpondentes. Se os arrays tem tamanhos diferentes, o menor array será extendido com elementos vazios.

Uma forma interessante de se usar esta função é na construção de um array de arrays, o que pode ser facilmente feito usando NULL como o nome da função callback.

Exemplo #3 Criando um array de arrays

<?php
$a = array(1, 2, 3, 4, 5);
$b = array("um", "dois", "tres", "quatro", "cinco");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => one
            [2] => uno
        )

    [1] => Array
        (
            [0] => 2
            [1] => two
            [2] => dos
        )

    [2] => Array
        (
            [0] => 3
            [1] => three
            [2] => tres
        )

    [3] => Array
        (
            [0] => 4
            [1] => four
            [2] => cuatro
        )

    [4] => Array
        (
            [0] => 5
            [1] => five
            [2] => cinco
        )

)

Se o array do argumento contém chaves string, então o array retornado conterá chaves string se e somente se exatamente um array é passado. Se mais que um argumento é passado, então o array retornado sempre terá chaves inteiras.

Exemplo #4 array_map() - com chaves string

<?php
$arr = array("stringkey" => "value");
function cb1($a) {
    return array ($a);
}
function cb2($a, $b) {
    return array ($a, $b);
}
var_dump(array_map("cb1", $arr));
var_dump(array_map("cb2", $arr, $arr));
var_dump(array_map(null,  $arr));
var_dump(array_map(null, $arr, $arr));
?>

O exemplo acima irá imprimir:

array(1) {
  ["stringkey"]=>
  array(1) {
    [0]=>
    string(5) "value"
  }
}
array(1) {
  [0]=>
  array(2) {
    [0]=>
    string(5) "value"
    [1]=>
    string(5) "value"
  }
}
array(1) {
  ["stringkey"]=>
  string(5) "value"
}
array(1) {
  [0]=>
  array(2) {
    [0]=>
    string(5) "value"
    [1]=>
    string(5) "value"
  }
}

Veja Também

  • array_filter() - Filtra os elementos da array usando uma função de callback
  • array_reduce() - Reduz um array para um único valor através de um processo iterativo utilizando uma função
  • array_walk() - Aplica uma determinada funcão em cada elemento de um array
  • create_function() - Cria uma função anônima (lambda-style)
informações sobre o tipo callback

array_keys
array_merge_recursive
Funções para Array


Funde dois ou mais arrays recursivamente

array_map
array_merge
Funções para Array
PHP Manual

array_merge_recursive

(PHP 4 >= 4.0.1, PHP 5)

array_merge_recursive — Funde dois ou mais arrays recursivamente

Descrição

array array_merge_recursive ( array $array1 [, array $... ] )

array_merge_recursive() funde os elementos de um ou mais arrays de forma que os elementos de um são colocados no final do array anterior. Retorna o array resultante da fusão.

Se os arrays dados tem as mesmas chaves string, então os valores para uma chave são fundidos em um array, e isso é feito recursivamente, sendo que, se um dos valores for um array também, este função irá fundi-lo com os valores correspondentes no array resultante também. Se, no entanto, os arrays tem as mesmas chaves numéricas, o último valor para uma chave não sobrescreverá o valor original, e sim adicionado ao array resultante.

Parâmetros

array1

Array inicial para fundir.

array

Lista variável de arrays para fundir recursivamente.

Valor Retornado

Um array de valores resultados da fusão dos argumentos.

Exemplos

Exemplo #1 Exemplo de array_merge_recursive()

<?php
$ar1 = array("cor" => array ("favorita" => "vermelho"), 5);
$ar2 = array(10, "cor" => array ("favorita" => "verde", "azul"));
$result = array_merge_recursive($ar1, $ar2);
?>

O exemplo acima irá imprimir:

Array
(
    [cor] => Array
        (
            [favorita] => Array
                (
                    [0] => vermelho
                    [1] => verde
                )

            [0] => azul
        )

    [0] => 5
    [1] => 10
)

Veja Também

  • array_merge() - Funde um ou mais arrays

array_map
array_merge
Funções para Array


Funde um ou mais arrays

array_merge_recursive
array_multisort
Funções para Array
PHP Manual

array_merge

(PHP 4, PHP 5)

array_merge — Funde um ou mais arrays

Descrição

array array_merge ( array $array1 [, array $array2 [, array $... ]] )

Funde os elementos dois ou mais arrays de forma que os elementos de um são colocados no final do array anterior. Retorna o array resultante da fusão.

Se os arrays dados têm as mesmas chaves string, então o último valor para uma chave irá sobrescrever o valor anterior. Se, no entanto, os arrays tem as mesmas chaves numéricas, o último valor para uma chave não sobrescreverá o valor original, e sim adicionado ao array resultante.

Se apenas uma array é dada e a array é indexada numericamente, as chaves são reindexadas de uma maneira continua.

Parâmetros

array1

O array inicial para fundir.

array

A lista variável de arrays para fundir recursivamente.

Valor Retornado

Retorna o array resultante.

Exemplos

Exemplo #1 Exemplo de array_merge()

<?php
$array1 = array("cor" => "vermelho", 2, 4);
$array2 = array("a", "b", "cor" => "verde", "forma" => "trapezoide", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [cor] => verde
    [0] => 2
    [1] => 4
    [2] => a
    [3] => b
    [forma] => trapezoide
    [4] => 4
)

Exemplo #2 Exemplo simples de array_merge()

<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>

Não esqueça que as chaves numéricas serão reordenadas!

Array
(
    [0] => data
)

Se você quer preservar os arrays e apenas concatená-los com outro (não sobreescrevendo as chaves anteriores), use o operador +:

<?php
$array1 = array();
$array2 = array(1 => "data");
$result = $array1 + $array2;
?>

As chaves numéricas serão preservadas e as associações originais permanecem.

Array
(
    [1] => data
)

Aviso

O funcionamento de array_merge() foi modificado no PHP 5. Diferentemente do PHP 4, array_merge() agora aceita parâmetros do tipo array. Entretanto, você pode mudar o tipo para fundir outros tipos. Veja o exemplo abaixo para detalhes.

Exemplo #3 Exemplo de array_merge() no PHP 5

<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array)$beginning, (array)$end);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => foo
    [1] => bar
)

Veja Também

  • array_merge_recursive() - Funde dois ou mais arrays recursivamente
  • array_combine() - Cria um array usando um array para chaves e outro para valores
  • array operators

array_merge_recursive
array_multisort
Funções para Array


Ordena múltiplos arrays ou arrays multidimensionais

array_merge
array_pad
Funções para Array
PHP Manual

array_multisort

(PHP 4, PHP 5)

array_multisort — Ordena múltiplos arrays ou arrays multidimensionais

Descrição

bool array_multisort ( array $arr [, mixed $arg [, mixed $... ]] )

array_multisort() pode ser usada para ordenar vários arrays de uma vez, ou um array multidimensional por uma ou mais dimensões.

Chaves associativas (string) serão mantidas, mas chaves númericas serão reindexadas.

Parâmetros

arr

Um array a ser ordenado.

arg

Opcionalmente um outro array, ou opções de ordenação para o argumento anterior array: SORT_ASC, SORT_DESC, SORT_REGULAR, SORT_NUMERIC, SORT_STRING.

...

arg's adicionais.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Ordenando múltiplos arrays

<?php
$ar1 = array(10, 100, 100, 0);
$ar2 = array(1, 3, 2, 4);
array_multisort($ar1, $ar2);

var_dump($ar1);
var_dump($ar2);
?>

Nesse exemplo, depois da ordenação, o primeiro array terá 0, 10, 100, 100. O segundo conterá 4, 1, 2, 3. Ass entradas do segundo array correspondendo às entradas idênticas como foram ordenadas no primeiro array (100 e 100).

array(4) {
  [0]=> int(0)
  [1]=> int(10)
  [2]=> int(100)
  [3]=> int(100)
}
array(4) {
  [0]=> int(4)
  [1]=> int(1)
  [2]=> int(2)
  [3]=> int(3)
}

Exemplo #2 Ordenando um array multidimensional

<?php
$ar = array(
    array("10", 11, 100, 100, "a"),
    array(   1,  2, "2",   3,   1)
);
array_multisort($ar[0], SORT_ASC, SORT_STRING,
                 $ar[1], SORT_NUMERIC, SORT_DESC);
var_dump($ar);
?>

Neste exemplo, depois da ordenação, o primeiro array se transformará em "10", 100, 100, 11, "a" (ele foi ordenado como strings em ordem ascendente). O segundo conterá 1, 3, "2", 2, 1 (ordenado como números, em ordem descendente).

array(2) {
    [0]=> array(5) {
    [0]=> string(2) "10"
    [1]=> int(100)
    [2]=> int(100)
    [3]=> int(11)
    [4]=> string(1) "a"
    }
    [1]=> array(5) {
        [0]=> int(1)
        [1]=> int(3)
        [2]=> string(1) "2"
        [3]=> int(2)
        [4]=> int(1)
    }
}

Exemplo #3 Ordenando resultados de um banco de dados

Para este exemplo, cada elemento no array data representa uma linha na tabela. Este tipo de conjunto de dados é típico de registros de banco de dados.

Dados do Exemplo:

volume | edition
-------+--------
    67 |       2
    86 |       1
    85 |       6
    98 |       2
    86 |       6
    67 |       7

Os dados como um array, chamado data. Isto seria normalmente, por exemplo, obtido por um loop em mysql_fetch_assoc().

<?php
$data[] = array('volume' => 67, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 1);
$data[] = array('volume' => 85, 'edition' => 6);
$data[] = array('volume' => 98, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 6);
$data[] = array('volume' => 67, 'edition' => 7);
?>

Neste exemplo, ordenaremos por volume descendente, edition ascendente.

Nós temos uma matriz de linhas, mas array_multisort() requer uma matriz de colunas, assim nós usamos o código abaixo para obter colunas e então realizar o ordenamento.

<?php
// Obter uma lista de colunas
foreach ($data as $key => $row) {
    $volume[$key]  = $row['volume'];
    $edition[$key] = $row['edition'];
}

// Ordena os dados com volume descendente, edition ascendente
// adiciona $data como o último parãmetro, para ordenar pela chave comum
array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
?>

O conjunto de dados agora está ordenado e será parecido com isto:

volume | edition
-------+--------
    98 |       2
    86 |       1
    86 |       6
    85 |       6
    67 |       2
    67 |       7

Exemplo #4 Ordenar sem diferenciar maiúsculas e minúsculas

Ambas SORT_STRING e SORT_REGULAR diferenciam maiúsculas e minúsculas, strings começando com uma letra maiúscula virão antes de uma string começando com uma letra minúscula.

Para ordenar sem diferenciar maiúsculas e minúsculas, force a ordem da ordenação para que seja determinada por uma cópia em letras minúsculas da matriz original.

<?php
$array = array('Alpha', 'atomic', 'Beta', 'bank');
$array_lowercase = array_map('strtolower', $array);

array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array);
print_r($array);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => Alpha
    [1] => atomic
    [2] => bank
    [3] => Beta
)

array_merge
array_pad
Funções para Array


Expande um array para um certo comprimento utilizando um determinado valor

array_multisort
array_pop
Funções para Array
PHP Manual

array_pad

(PHP 4, PHP 5)

array_pad — Expande um array para um certo comprimento utilizando um determinado valor

Descrição

array array_pad ( array $input , int $pad_size , mixed $pad_value )

array_pad() retorna uma cópia de input expandido para o comprimento especificado por pad_size com o valor pad_value. Se pad_size for positivo então o array é expandido pela direita, se for negativo, pela esquerda. Se o valor absoluto de pad_size for menor ou igual ao comprimento de input, então ele permanece inalterado. É possível adicionar até 1048576 elementos de uma vez.

Parâmetros

input

Array inicial de valores para ser preenchido.

pad_size

Nova tamanho do array.

pad_value

Valor para preencher se input é menor que pad_size.

Valor Retornado

Retorna uma cópia de input preenchido pela quantidade especificada por pad_size com o valor pad_value. Se pad_size é positivo, então o array é preenchido na direita, se ele é negativo, então da esquerda. Se o valor absoluto de pad_size é menor que ou igual ao tamanho da entrada, então nenhum preenchimento ocorre.

Exemplos

Exemplo #1 Exemplo de array_pad()

<?php
$input = array(12, 10, 9);

$result = array_pad($input, 5, 0);
// $result é array(12, 10, 9, 0, 0)

$result = array_pad($input, -7, -1);
// $result é array(-1, -1, -1, -1, 12, 10, 9)

$result = array_pad($input, 2, "noop");
// Não será expandido
?>

Veja Também

  • array_fill() - Preenche um array com valores
  • range() - Cria um array contendo uma faixa de elementos

array_multisort
array_pop
Funções para Array


Retira um elemento do final do array

array_pad
array_product
Funções para Array
PHP Manual

array_pop

(PHP 4, PHP 5)

array_pop — Retira um elemento do final do array

Descrição

mixed array_pop ( array &$array )

array_pop() retira e retorna o último elemento de array, diminuindo array em um elemento. Se array estiver vazio (ou se não for um array), o valor NULL é retornado. Adicionalmente emitirá um aviso quando chamado com um não-array.

Nota: Esta função irá resetar() o ponteiro do array depois do uso.

Parâmetros

array

O array para obter os valores.

Valor Retornado

Retorna o último valor de array. Se array é vazio (ou ele não é um array), NULL será retornado.

Exemplos

Exemplo #1 Exemplo da array_pop()

<?php
$cesta = array("laranja", "banana", "melancia", "morango");
$fruta = array_pop($cesta);
print_r($cesta);
?>

Depois disso, $cesta terá 3 elementos:

Array
(
    [0] => laranja
    [1] => banana
    [2] => melancia
)

e morango será passado para $fruta.

Veja Também

Veja também array_push() - Adiciona um ou mais elementos no final de um array, array_shift() - Retira o primeiro elemento de um array, e array_unshift() - Adiciona um ou mais elementos no início de um array.

array_pad
array_product
Funções para Array


Calcula o produto dos valores de um array

array_pop
array_push
Funções para Array
PHP Manual

array_product

(PHP 5 >= 5.1.0)

array_product — Calcula o produto dos valores de um array

Descrição

number array_product ( array $array )

array_product() retorna o produto dos valores de um array.

Parâmetros

array

O array.

Valor Retornado

Retorna o produto com um inteiro ou float.

Exemplos

Exemplo #1 Exemplo da array_product()

<?php

$a = array(2, 4, 6, 8);
echo "product(a) = " . array_product($a) . "\n";

?>

O exemplo acima irá imprimir:

product(a) = 384

array_pop
array_push
Funções para Array


Adiciona um ou mais elementos no final de um array

array_product
array_rand
Funções para Array
PHP Manual

array_push

(PHP 4, PHP 5)

array_push — Adiciona um ou mais elementos no final de um array

Descrição

int array_push ( array &$array , mixed $var [, mixed $... ] )

array_push() trata array como uma pilha, e adiciona as variáveis passadas como argumentos no final de array. O tamanho do array aumenta de acordo com o número de variáveis adicionadas. Tem o mesmo efeito de:

<?php
$array[] = $var;
?>
repetido para cada argumento var.

Nota: Se você usar array_push() para adicionar um elemento na array, é melhor usar $array[] = porque deste jeito não há uma chamada a uma função.

Nota: array_push() irá emitir um aviso se o primeiro argumento não for um array. isto é diferente do funcionamento de $var[] aonde uma nova matriz é criada.

Parâmetros

array

O array de entrada.

var

O valor a ser adicionado.

Valor Retornado

Retorna o novo número de elementos do array.

Exemplos

Exemplo #1 Exemplo de array_push()

<?php
$cesta = array("laranja", "morango");
array_push($cesta, "melancia", "batata");
print_r($cesta);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => laranja
    [1] => morango
    [2] => melancia
    [3] => batata
)

Veja Também

  • array_pop() - Retira um elemento do final do array
  • array_shift() - Retira o primeiro elemento de um array
  • array_unshift() - Adiciona um ou mais elementos no início de um array

array_product
array_rand
Funções para Array


Retorna um ou mais elementos aleatórios de um array

array_push
array_reduce
Funções para Array
PHP Manual

array_rand

(PHP 4, PHP 5)

array_rand — Retorna um ou mais elementos aleatórios de um array

Descrição

mixed array_rand ( array $input [, int $num_req ] )

array_rand() é bastante útil quando se quer conseguir aleatoriamente um ou mais elementos de um array.

Parâmetros

input

O array de entrada.

num_req

Especifica quantos elementos deseja obter - se não especificado, o padrão é 1.

Valor Retornado

Se estiver pegando apenas um elemento, array_rand() retorna a chave para este elemento aleatório. De outra forma, ele retorna um array com as chaves desses elementos aleatórios. Assim é possível conseguir chaves e valores aleatórios a partir da mesma função.

Exemplos

Exemplo #1 Exemplo de array_rand()

<?php
srand((float) microtime() * 10000000);
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>

Notas

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Veja Também

  • shuffle() - Mistura os elementos de um array

array_push
array_reduce
Funções para Array


Reduz um array para um único valor através de um processo iterativo utilizando uma função

array_rand
array_replace_recursive
Funções para Array
PHP Manual

array_reduce

(PHP 4 >= 4.0.5, PHP 5)

array_reduce — Reduz um array para um único valor através de um processo iterativo utilizando uma função

Descrição

mixed array_reduce ( array $input , callback $function [, int $initial ] )

array_reduce() aplica iterativamente a função definida em callback nos elementos de input, de forma a reduzi-lo a um único valor.

Parâmetros

input

O array de entrada.

function

A função callback.

initial

Se o argumento opcional initial for passado, ele será utilizado no início do processo, ou como um resultado final se o array estiver vazio.

Valor Retornado

Retorna o valor resultante.

Se a array estiver vazia e initial não for passado, array_reduce() retornará NULL.

Exemplos

Exemplo #1 Exemplo de array_reduce()

<?php
function soma($v, $w)
{
    $v += $w;
    return $v;
}

function multiplicacao($v, $w)
{
    $v *= $w;
    return $v;
}

$a = array(1, 2, 3, 4, 5);
$x = array();
$b = array_reduce($a, "soma");
$c = array_reduce($a, "multiplicacao", 10);
$d = array_reduce($x, "soma", 1);
?>

Isso resultará em $b contendo 15, $c contendo 1200 (= 10*1*2*3*4*5), e $d contendo 1.

Veja Também

  • array_filter() - Filtra os elementos da array usando uma função de callback
  • array_map() - Aplica uma função em todos os elementos dos arrays dados
  • array_unique() - Remove o valores duplicados de um array
  • array_count_values() - Conta as frequências de cada valor de um array

array_rand
array_replace_recursive
Funções para Array


Replaces elements from passed arrays into the first array recursively

array_reduce
array_replace
Funções para Array
PHP Manual

array_replace_recursive

(PHP 5 >= 5.3.0)

array_replace_recursive — Replaces elements from passed arrays into the first array recursively

Descrição

array array_replace_recursive ( array &$array , array &$array1 [, array &$array2 [, array &$... ]] )

array_replace_recursive() replaces the values of the first array with the same values from all the following arrays. If a key from the first array exists in the second array, its value will be replaced by the value from the second array. If the key exists in the second array, and not the first, it will be created in the first array. If a key only exists in the first array, it will be left as is. If several arrays are passed for replacement, they will be processed in order, the later array overwriting the previous values.

array_replace_recursive() is recursive : it will recurse into arrays and apply the same process to the inner value.

When the value in array is scalar, it will be replaced by the value in array1, may it be scalar or array. When the value in array and array1 are both arrays, array_replace_recursive() will replace their respective value recursively.

Parâmetros

array

The array in which elements are replaced.

array1

The array from which elements will be extracted.

Valor Retornado

Returns an array, or NULL if an error occurs.

Exemplos

Exemplo #1 array_replace_recursive() example

<?php
$base = array('citrus' => array( "orange") , 'berries' => array("blackberry", "raspberry"), );
$replacements = array('citrus' => array('pineapple'), 'berries' => array('blueberry'));

$basket = array_replace_recursive($base, $replacements);
print_r($basket);

$basket = array_replace($base, $replacements);
print_r($basket);
?>

O exemplo acima irá imprimir:

Array
(
    [citrus] => Array
        (
            [0] => pineapple
        )

    [berries] => Array
        (
            [0] => blueberry
            [1] => raspberry
        )

)
Array
(
    [citrus] => Array
        (
            [0] => pineapple
        )

    [berries] => Array
        (
            [0] => blueberry
        )

)

Exemplo #2 array_replace_recursive() and recursive behavior

<?php
$base = array('citrus' => array("orange") , 'berries' => array("blackberry", "raspberry"), 'others' => 'banana' );
$replacements = array('citrus' => 'pineapple', 'berries' => array('blueberry'), 'others' => array('litchis'));
$replacements2 = array('citrus' => array('pineapple'), 'berries' => array('blueberry'), 'others' => 'litchis');

$basket = array_replace_recursive($base, $replacements, $replacements2);
print_r($basket);

?>

O exemplo acima irá imprimir:

Array
(
    [citrus] => Array
        (
            [0] => pineapple
        )

    [berries] => Array
        (
            [0] => blueberry
            [1] => raspberry
        )

    [others] => litchis
)

Veja Também

  • array_replace() - Replaces elements from passed arrays into the first array

array_reduce
array_replace
Funções para Array


Replaces elements from passed arrays into the first array

array_replace_recursive
array_reverse
Funções para Array
PHP Manual

array_replace

(PHP 5 >= 5.3.0)

array_replace — Replaces elements from passed arrays into the first array

Descrição

array array_replace ( array &$array , array &$array1 [, array &$array2 [, array &$... ]] )

array_replace() replaces the values of the first array with the same values from all the following arrays. If a key from the first array exists in the second array, its value will be replaced by the value from the second array. If the key exists in the second array, and not the first, it will be created in the first array. If a key only exists in the first array, it will be left as is. If several arrays are passed for replacement, they will be processed in order, the later arrays overwriting the previous values.

array_replace() is not recursive : it will replace values in the first array by whatever type is in the second array.

Parâmetros

array

The array in which elements are replaced.

array1

The array from which elements will be extracted.

Valor Retornado

Returns an array, or NULL if an error occurs.

Exemplos

Exemplo #1 array_replace() example

<?php
$base = array("orange", "banana", "apple", "raspberry");
$replacements = array(0 => "pineapple", 4 => "cherry");
$replacements2 = array(0 => "grape");

$basket = array_replace($base, $replacements, $replacements2);
print_r($basket);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => grape
    [1] => banana
    [2] => apple
    [3] => raspberry
    [4] => cherry
)

Veja Também

  • array_replace_recursive() - Replaces elements from passed arrays into the first array recursively

array_replace_recursive
array_reverse
Funções para Array


Retorna um array com os elementos na ordem inversa

array_replace
array_search
Funções para Array
PHP Manual

array_reverse

(PHP 4, PHP 5)

array_reverse — Retorna um array com os elementos na ordem inversa

Descrição

array array_reverse ( array $array [, bool $preserve_keys ] )

Recebe como entrada array e retorna um novo array com a ordem dos elementos invertida.

Parâmetros

array

O array de entrada.

preserve_keys

Se definido para TRUE as chaves serão preservadas.

Valor Retornado

Retorna o array invertido.

Histórico

Versão | Descrição
4.0.3 | O parâmetro preserve_keys foi adicionado.

Exemplos

Exemplo #1 Exemplo da array_reverse()

<?php
$input = array("php", 4.0, array ("verde", "vermelho"));
$result = array_reverse($input);
$result_keyed = array_reverse($input, true);
?>

O programa acima fará com que $result e $result_keyed tenham os mesmos elementos, mas note a diferença entre as chaves. A saída de $result e $result_keyed será:

Array
(
    [0] => Array
        (
            [0] => verde
            [1] => vermelho
        )

    [1] => 4
    [2] => php
)
Array
(
    [2] => Array
        (
            [0] => verde
            [1] => vermelho
        )

    [1] => 4
    [0] => php
)

Veja Também

  • array_flip() - Inverte as relações entre chaves e valores

array_replace
array_search
Funções para Array


Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado

array_reverse
array_shift
Funções para Array
PHP Manual

array_search

(PHP 4 >= 4.0.5, PHP 5)

array_search — Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado

Descrição

mixed array_search ( mixed $needle , array $haystack [, bool $strict ] )

Procura em haystack por needle.

Parâmetros

needle

O valor procurado.

Nota:

Se needle for uma string, a comparação é feita de uma maneira que diferencia maiúsculas e minúsculas.

haystack

O array.

strict

Se o terceiro parâmetro opcional strict for passado como TRUE então array_search() também fará uma checagem de tipos de needle em haystack.

Valor Retornado

Retorna a chave para needle se foi encontrada no array, FALSE caso contrário.

Se needle for encontrado em haystack mais de uma vez, a primeira chave que combinar é retornada. Para retornar as chaves para todos os valores que combinar, use array_keys() com o parâmetro opcional search_value.

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.

Histórico

Versão | Descrição
4.2.0 | A partir do PHP 4.2.0, array_search() retorna NULL em caso de falha ao invés de FALSE.

Exemplos

Exemplo #1 Exemplo da array_search()

<?php
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array);   // $key = 1;
?>

Veja Também

  • array_keys() - Retorna todas as chaves de um array
  • array_values() - Retorna todos os valores de um array
  • array_key_exists() - Checa se uma chave ou índice existe em um array
  • in_array() - Checa se um valor existe em um array

array_reverse
array_shift
Funções para Array


Retira o primeiro elemento de um array

array_search
array_slice
Funções para Array
PHP Manual

array_shift

(PHP 4, PHP 5)

array_shift — Retira o primeiro elemento de um array

Descrição

mixed array_shift ( array &$array )

array_shift() retira o primeiro elemento de array e o retorna, diminuindo array em um elemento e movendo todos os outros elementos para trás. Todas as chaves numéricas alteradas para começar a contar a de 0 (zero), enquanto chaves string permanecerão inalteradas.

Nota: Esta função irá resetar() o ponteiro do array depois do uso.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna o valor removido, ou NULL se array for vazio ou não é um array.

Exemplos

Exemplo #1 Exemplo da array_shift()

<?php
$cesta = array("laranja", "banana", "melancia", "morango");
$fruta = array_shift($cesta);
print_r($cesta);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => banana
    [1] => melancia
    [2] => morango
)

e laranja seria passado para $fruta.

Veja Também

  • array_unshift() - Adiciona um ou mais elementos no início de um array
  • array_push() - Adiciona um ou mais elementos no final de um array
  • array_pop() - Retira um elemento do final do array

array_search
array_slice
Funções para Array


Extrai uma parcela de um array

array_shift
array_splice
Funções para Array
PHP Manual

array_slice

(PHP 4, PHP 5)

array_slice — Extrai uma parcela de um array

Descrição

array array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] )

array_slice() retorna a sequência de elementos de array especificada pelos parâmetros offset e length.

Parâmetros

array

O array de entrada.

offset

Se offset for não negativo, a sequência começará do início de array. Se offset for negativo, a sequência começará dessa distância do final de array.

length

Se length for especificado e positivo, então a sequência terá essa quantidade de elementos. Se length for especificado e negativo então a sequência pará dessa quantidade elementos a partir do final do array. Se for omitido, então a sequência terá todos os elementos a partir de offset até o final de array.

preserve_keys

Note que array_slice() irá reordenar e resetar as chaves numéricas por padrão. Você pode mudar esse comportamento definindo preserve_keys como TRUE.

Valor Retornado

Retorna a parcela.

Histórico

Versão | Descrição
5.0.2 | O parâmetro opcional preserve_keys foi adicionado.

Exemplos

Exemplo #1 Exemplos da array_slice()

<?php
$input = array("a", "b", "c", "d", "e");

$output = array_slice($input, 2);      // retorna "c", "d", e "e"
$output = array_slice($input, 2, -1);  // retorna "c", "d"
$output = array_slice($input, -2, 1);  // retorna "d"
$output = array_slice($input, 0, 3);   // retorna "a", "b", e "c"
// Npote as diferenças nas chaves das arrays
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => c
    [1] => d
)
Array
(
    [2] => c
    [3] => d
}

Veja Também

  • array_splice() - Remove uma parcela do array e substitui com outros elementos
  • unset() - Destrói a variável especificada

array_shift
array_splice
Funções para Array


Remove uma parcela do array e substitui com outros elementos

array_slice
array_sum
Funções para Array
PHP Manual

array_splice

(PHP 4, PHP 5)

array_splice — Remove uma parcela do array e substitui com outros elementos

Descrição

array array_splice ( array &$input , int $offset [, int $length [, mixed $replacement ]] )

Remove a sequência de elementos especificados por offset e length do array input, e os substitui com os elementos do array replacement, se for especificado.

Note que as chaves numéricas em input não são preservadas.

Nota: Se replacement não é um array, ele terá o tipo convertido para um array (i.e. (array) $parameter). Isto pode resultar em um comportamento inesperado quando usando um objeto em replacement.

Parâmetros

input

O array de entrada.

offset

Se offset for positivo então o começo da região a ser removida será nessa posição a partir do início do array input. Se offset for negativo então o ínicio será dessa distância do final de input.

length

Se length for omitido, todos os elementos a partir de offset até o final do array serão removidos. Se length for especificado e positivo, então essa quantidade de elementos será removida. Se length for especificado e negativo então o final da região a ser removida será dessa quantidade de elementos a partir do final do array. Dica: para remover todos elementos a partir de offset até o final do array quando replacement também é especificado, use count($input) para o argumento length.

replacement

Se o array replacement for especificado, então os elementos removidos serão substituidos pelo elementos desse array.

If offset and length are such that nothing is removed, then the elements from the replacement array are inserted in the place specified by the offset. Note that keys in replacement array are not preserved.

Se replacement for de apenas um elemento então não será necessário colocar array() para ele, a não ser que elementos seja um array.

Valor Retornado

Retorna o array consistindo de elementos extraídos.

Exemplos

Exemplo #1 Exemplos da array_splice()

<?php
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 2);
// $input será agora array("vermelho", "verde")

$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 1, -1);
// $input será agora array("vermelho", "amarelo")

$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 1, count($input), "laranja");
// $input será agora array("vermelho", "laranja")

$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, -1, 1, array("preto", "marrom"));
// $input será agora array("vermelho", "verde", "azul", "preto", "marrom")
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 3, 0, "roxo");
// A array $input agora é ("vermelho", "verde",
//          "azul", "roxo", "amarelo");

?>

Exemplo #2 Exemplos da array_splice()

Os seguintes comandos modificam os valores de $input da mesma forma:

<?php
array_push($input, $x, $y);
array_splice($input, count($input), 0, array($x, $y));
array_pop($input);
array_splice($input, -1);
array_shift($input);
array_splice($input, 0, 1);
array_unshift($input, $x, $y);
array_splice($input, 0, 0, array($x, $y));
$input[$x] = $y; // for arrays where key equals offset
array_splice($input, $x, 1, $y);
?>

Veja Também

  • array_slice() - Extrai uma parcela de um array
  • unset() - Destrói a variável especificada
  • array_merge() - Funde um ou mais arrays

array_slice
array_sum
Funções para Array


Calcula a soma dos elementos de um array

array_splice
array_udiff_assoc
Funções para Array
PHP Manual

array_sum

(PHP 4 >= 4.0.4, PHP 5)

array_sum — Calcula a soma dos elementos de um array

Descrição

number array_sum ( array $array )

array_sum() retorna a soma dos valores de um array.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna a soma de valores como um inteiro ou float.

Histórico

Versão | Descrição
4.2.1 | Versões do PHP anteriores a 4.2.1 modificam o valor do próprio array passado e converte string para números (que na maioria das vezes converte para zero, dependendo do valor).

Exemplos

Exemplo #1 Exemplos da array_sum()

<?php
$a = array(2, 4, 6, 8);
echo "soma(a) = ".array_sum($a)."\n";

$b = array("a" => 1.2, "b" => 2.3, "c" => 3.4);
echo "soma(b) = ".array_sum($b)."\n";
?>

O exemplo acima irá imprimir:

soma(a) = 20
soma(b) = 6.9

array_splice
array_udiff_assoc
Funções para Array


Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback

array_sum
array_udiff_uassoc
Funções para Array
PHP Manual

array_udiff_assoc

(PHP 5)

array_udiff_assoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback

Descrição

array array_udiff_assoc ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )

Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback.

Nota: Por favor note que esta função somente checa uma dimensão de um array n-dimensional. Obviamente você pode checar dimensões mais profundas usando, por exemplo, array_udiff_assoc($array1[0], $array2[0], "some_comparison_func"); .

Parâmetros

array1

O primeiro array.

array2

O segundo array.

data_compare_func

A função de callback de comparação.

A função de callback fornecida pelo usuário é usada na comparação. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

array_udiff_assoc() retorna um array contendo todos os valores de array1 que não estão presentes em qualquer dos outros argumentos. Note que as chaves são usadas na comparação, ao contrário de array_diff() e array_udiff(). A comparação dos dados dos arrays é executada usando uma função de callback fornecida pelo usuário. Neste aspecto o comportamente é oposto ao de array_diff_assoc() que usa função interna para comparação.

Exemplos

Exemplo #1 Exemplo de array_udiff_assoc()

<?php
class cr {
    private $priv_member;
    function cr($val)
    {
        $this->priv_member = $val;
    }

    static function comp_func_cr($a, $b)
    {
        if ($a->priv_member === $b->priv_member) return 0;
        return ($a->priv_member > $b->priv_member)? 1:-1;
    }
}

$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);

$result = array_udiff_assoc($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [0.1] => cr Object
        (
            [priv_member:private] => 9
        )

    [0.5] => cr Object
        (
            [priv_member:private] => 12
        )

    [0] => cr Object
        (
            [priv_member:private] => 23
        )
)

Em nosso exemplo acima você vê que o par "1" => new cr(4) está presente em ambos os arrays e assim ele não está presente na saída da função.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_sum
array_udiff_uassoc
Funções para Array


Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback

array_udiff_assoc
array_udiff
Funções para Array
PHP Manual

array_udiff_uassoc

(PHP 5)

array_udiff_uassoc — Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback

Descrição

array array_udiff_uassoc ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func , callback $key_compare_func )

Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback.

Note que as chaves são usadas na comparação, ao contrário de array_diff() e array_udiff().

Parâmetros

array1

O primeiro array.

array2

O segundo array.

data_compare_func

A função de comparação de callback.

A função de callback fornecida pelo usuário é usada para comparação. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente menor que, igual a, ou maior que o segundo.

A comparação dos dados dos arrays é executada usando uma função de callback fornecida pelo usuário: data_compare_func. Neste aspecto o comportamento é oposto ao comportamente de array_diff_assoc() que usa função interna para comparação.

key_compare_func

A comparação das chaves (índices) é feita também por função de callback: key_compare_func. Este comportamento é contrário ao que array_udiff_assoc() faz, já que esta compara os índices usando uma função interna.

Valor Retornado

Retorna um array contendo todos os valores de array1 que não estão presentes em qualquer dos outros argumentos.

Exemplos

Exemplo #1 Exemplo de array_udiff_uassoc()

<?php
class cr {
    private $priv_member;
    function cr($val)
    {
        $this->priv_member = $val;
    }

    static function comp_func_cr($a, $b)
    {
        if ($a->priv_member === $b->priv_member) return 0;
        return ($a->priv_member > $b->priv_member)? 1:-1;
    }

    static function comp_func_key($a, $b)
    {
        if ($a === $b) return 0;
        return ($a > $b)? 1:-1;
    }
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);

$result = array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), array("cr", "comp_func_key"));
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [0.1] => cr Object
        (
            [priv_member:private] => 9
        )

    [0.5] => cr Object
        (
            [priv_member:private] => 12
        )

    [0] => cr Object
        (
            [priv_member:private] => 23
        )
)

Em nosso exemplo acima você vê que o par "1" => new cr(4) está presente em ambos os arrays e assim não está na saída da função. Mantenha em mente que você deve fornecer duas funções de callback.

Notas

Nota: Por favor note que esta função somente checa uma dimensão de um array n-dimensional. É claro que você pode checar dimensões mais profundas usando, por exemplo, array_udiff_uassoc($array1[0], $array2[0], "data_compare_func", "key_compare_func");.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_udiff() - Computa a diferença de arrays usando uma função de callback para comparação dos dados
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_udiff_assoc
array_udiff
Funções para Array


Computa a diferença de arrays usando uma função de callback para comparação dos dados

array_udiff_uassoc
array_uintersect_assoc
Funções para Array
PHP Manual

array_udiff

(PHP 5)

array_udiff — Computa a diferença de arrays usando uma função de callback para comparação dos dados

Descrição

array array_udiff ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )

Computa a diferença de arrays usando uma função de callback para comparação dos dados. Esta é contrária a array_diff() que usa uma função interna para comparar os dados.

Parâmetros

array1

O primeiro array.

array2

O segundo array.

data_compare_func

A função de callback de comparação.

A função de callback fornecida pelo usuário é usada para comparação. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente, menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna um array contendo todos os valores de array1 que não estão presentes em qualquer dos outros argumentos.

Exemplos

Exemplo #1 Exemplo de array_udiff()

<?php
class cr {
    private $priv_member;
    function cr($val)
    {
        $this->priv_member = $val;
    }

    static function comp_func_cr($a, $b)
    {
        if ($a->priv_member === $b->priv_member) return 0;
        return ($a->priv_member > $b->priv_member)? 1:-1;
    }
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);

$result = array_udiff($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [0.5] => cr Object
        (
            [priv_member:private] => 12
        )

    [0] => cr Object
        (
            [priv_member:private] => 23
        )

)

Notas

Nota: Por favor note que esta função somente checa uma dimensão de um array n-dimensional. É claro que você pode checar dimensões mais profundas usando array_udiff($array1[0], $array2[0], "data_compare_func");.

Veja Também

  • array_diff() - Analisa as diferenças entre arrays
  • array_diff_assoc() - Computa a diferença entre arrays com checagem adicional de índice
  • array_diff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice que é feita por uma função de callback fornecida pelo usuário
  • array_udiff_assoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados por uma função de callback
  • array_udiff_uassoc() - Computa a diferença entre arrays com checagem adicional de índice, compara dados e índices por uma função de callback
  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_udiff_uassoc
array_uintersect_assoc
Funções para Array


Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback

array_udiff
array_uintersect_uassoc
Funções para Array
PHP Manual

array_uintersect_assoc

(PHP 5)

array_uintersect_assoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback

Descrição

array array_uintersect_assoc ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )

Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback.

Note que as chaves são utilizadas na comparação, diferente de array_uintersect(). Os dados são comparados utilizando funções de callback.

Parâmetros

array1

Primeiro array.

array2

Segundo array.

data_compare_func

Função de callback suprida pelo usuário para comparação de dados. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado ser respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna um array contendo todos os valores de array1 que estão presentes em todos os argumentos.

Exemplos

Exemplo #1 Exemplo de array_uintersect_assoc()

<?php
$array1 = array("a" => "verde", "b" => "marrom", "c" => "azul", "vermelho");
$array2 = array("a" => "VERDE", "B" => "marrom", "amarelo", "vermelho");

print_r(array_uintersect_assoc($array1, $array2, "strcasecmp"));
?>

O exemplo acima irá imprimir:

Array
(
    [a] => verde
)

Veja Também

  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_udiff
array_uintersect_uassoc
Funções para Array


Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_uintersect_assoc
array_uintersect
Funções para Array
PHP Manual

array_uintersect_uassoc

(PHP 5)

array_uintersect_uassoc — Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

Descrição

array array_uintersect_uassoc ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func , callback $key_compare_func )

Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback. Note que as chaves são utilizadas na comparação, diferente de array_uintersect(). Os dados e os índices são comparados utilizando funções de callback separadas.

Parâmetros

array1

Primeiro array.

array2

Segundo array.

data_compare_func

Função de callback suprida pelo usuário para comparação de dados. Ela deve retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado ser respectivamente menor que, igual a, ou maior que o segundo.

key_compare_func

Função para comparação das chaves (índices).

Valor Retornado

Retorna um array contendo todos os valores de array1 que estão presentes em todos os argumentos.

Exemplos

Exemplo #1 Exemplo de array_uintersect_uassoc()

<?php
$array1 = array("a" => "verde", "b" => "marrom", "c" => "azul", "vermelho");
$array2 = array("a" => "VERDE", "B" => "marrom", "amarelo", "vermelho");

print_r(array_uintersect_uassoc($array1, $array2, "strcasecmp", "strcasecmp"));
?>

O exemplo acima irá imprimir:

Array
(
    [a] => verde
    [b] => marrom
)

Veja Também

  • array_uintersect() - Computa a interseção de array, comparando dados com uma função callback
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_intersect_uassoc() - Computa a interseção de arrays com checagem de índice adicional, compara índices por uma função de callback
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback

array_uintersect_assoc
array_uintersect
Funções para Array


Computa a interseção de array, comparando dados com uma função callback

array_uintersect_uassoc
array_unique
Funções para Array
PHP Manual

array_uintersect

(PHP 5)

array_uintersect — Computa a interseção de array, comparando dados com uma função callback

Descrição

array array_uintersect ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )

Computa a interseção de arrays, compara as informações usando uma função callback.

Parâmetros

array1

O primeiro array.

array2

O segundo array.

data_compare_func

A função callback de comparação.

A função callback fornecida pelo usuário é usada para comparação. Ela precisa retornar um inteiro menos que, igual a, ou maior que zero se o primeiro argumento é considerado ser respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna um array contendo todos os valores de array1 que estão presentes em todos os argumentos.

Exemplos

Exemplo #1 Exemplo da array_uintersect()

<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "GREEN", "B" => "brown", "yellow", "red");

print_r(array_uintersect($array1, $array2, "strcasecmp"));
?>

O exemplo acima irá imprimir:

Array
(
    [a] => green
    [b] => brown
    [0] => red
)

Veja Também

  • array_intersect() - Calcula a interseção entre arrays
  • array_intersect_assoc() - Computa a interseção de arrays com uma adicional verificação de índice
  • array_uintersect_assoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados utilizando uma função de callback
  • array_uintersect_uassoc() - Computa a interseção de arrays com checagem adicional de índice, compara os dados e os índices utilizando funções de callback

array_uintersect_uassoc
array_unique
Funções para Array


Remove o valores duplicados de um array

array_uintersect
array_unshift
Funções para Array
PHP Manual

array_unique

(PHP 4 >= 4.0.1, PHP 5)

array_unique — Remove o valores duplicados de um array

Descrição

array array_unique ( array $array )

Recebe o argumento array e retorna um novo array sem valores duplicados.

Note que as chaves são preservadas. array_unique() ordena inicialmente os valores como strings mantendo a primeira chave encontrada para cada valor, e ignorando as chaves encontradas posteriormente. Isso não significa que a chave do primeiro valor do array ainda desordenado será mantido.

Nota: Dois elementos são considerados iguais se, e somente se, (string) $elem1 === (string) $elem2. Em palavras: quando a represetação em string é a mesma. O primeiro será usado.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna o array filtrado.

Exemplos

Exemplo #1 Exemplo de array_unique()

<?php
$input = array("a" => "verde", "vermelho", "b" => "verde", "azul", "vermelho");
$result = array_unique($input);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [a] => verde
    [0] => vermelho
    [1] => azul

)

Exemplo #2 array_unique() e tipos

<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
?>

O exemplo acima irá imprimir:

array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}

array_uintersect
array_unshift
Funções para Array


Adiciona um ou mais elementos no início de um array

array_unique
array_values
Funções para Array
PHP Manual

array_unshift

(PHP 4, PHP 5)

array_unshift — Adiciona um ou mais elementos no início de um array

Descrição

int array_unshift ( array &$array , mixed $var [, mixed $... ] )

array_unshift() adiciona os elementos passados como argumentos no início de array. Note que a lista de elementos é adicionada como um todo, de forma que eles ficam na mesma ordem. Todas as chaves numéricas serão modificadas para começar a contar de 0 (zero) enquanto chaves strings permanecerão inalteradas.

Parâmetros

array

O array de entrada.

var

A variável a ser adicionada.

Valor Retornado

Retorna o novo número de elementos em array.

Exemplos

Exemplo #1 Exemplo de array_unshift()

<?php
$cesta = array("laranja", "banana");
array_unshift($cesta, "melancia", "morango");
print_r($cesta);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => melancia
    [1] => morango
    [2] => laranja
    [3] => banana
)

Veja Também

  • array_shift() - Retira o primeiro elemento de um array
  • array_push() - Adiciona um ou mais elementos no final de um array
  • array_pop() - Retira um elemento do final do array

array_unique
array_values
Funções para Array


Retorna todos os valores de um array

array_unshift
array_walk_recursive
Funções para Array
PHP Manual

array_values

(PHP 4, PHP 5)

array_values — Retorna todos os valores de um array

Descrição

array array_values ( array $input )

array_values() retorna todos os valores do array input num array indexado numericamente.

Parâmetros

input

O array.

Valor Retornado

Retorna um array indexado de valores.

Exemplos

Exemplo #1 Exemplo de array_values()

<?php
$array = array("tamanho" => "G", "cor" => "dourado");
print_r(array_values ($array));
?>

O exemplo acima irá imprimir:

Array
(
    [0] => G
    [1] => dourado
)

Veja Também

  • array_keys() - Retorna todas as chaves de um array

array_unshift
array_walk_recursive
Funções para Array


Aplica um função do usuário recursivamente para cada membro de um array

array_values
array_walk
Funções para Array
PHP Manual

array_walk_recursive

(PHP 5)

array_walk_recursive — Aplica um função do usuário recursivamente para cada membro de um array

Descrição

bool array_walk_recursive ( array &$input , callback $funcname [, mixed $userdata ] )

Aplica a função definida pelo usuário funcname para cada elemento do array input. Esta função irá ser usada em todo array.

Parâmetros

input

O array de entrada.

funcname

Tipicamente, funcname usa dois parâmetros. O primeiro valor do parâmetro input, e a segunda chave/índice.

Nota:

Se funcname precisa trabalhar com atuais valores da array, especifique o primeiro parâmetro da funcname com uma referência. Então, as modificações feitas para estes elementos serão feitas no próprio array original.

userdata

Se o opcional parâmetro userdata é fornecido, ele é usado como o terceiro parâmetro para o callback funcname.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da array_walk_recursive()

<?php
$sweet = array('a' => 'apple', 'b' => 'banana');
$fruits = array('sweet' => $sweet, 'sour' => 'lemon');

function test_print($item, $key)
{
    echo "$key holds $item\n";
}

array_walk_recursive($fruits, 'test_print');
?>

O exemplo acima irá imprimir:

a holds apple
b holds banana
sour holds lemon

Você pode nota que a chave 'sweet' nunca é mostrada. Uma chave que indica um array não é passado para a função.

Veja Também

  • array_walk() - Aplica uma determinada funcão em cada elemento de um array
  • informações sobre o tipo callback

array_values
array_walk
Funções para Array


Aplica uma determinada funcão em cada elemento de um array

array_walk_recursive
array
Funções para Array
PHP Manual

array_walk

(PHP 4, PHP 5)

array_walk — Aplica uma determinada funcão em cada elemento de um array

Descrição

bool array_walk ( array &$arrary , string $funcname [, mixed $userdata ] )

Aplica uma função definida pelo usuário nomeada pelo argumento funcname em cada elemento de array.

array_walk() não é afetado pelo ponteiro interno de array. array_walk() percorrerá por todo array desconsiderando a posição do ponteiro.

Parâmetros

array

O array de entrada.

funcname

Normalmente, funcname recebe dois parâmetros. O valor do parâmetro array sendo o primeiro, e a chave/índice o segundo.

Nota:

Se funcname precisar alterar realmente os valores do array, especifique que o primeiro parâmetro de funcname deve ser passado por referência. Então qualquer mudança feita nesses elementos serão feitas no próprio array também.

Usuários não podem modificar o próprio array na função callback e.g. Adicionar/deletar elementos, apagar elementos, etc. Se o array que array_walk() é aplicado é modificado, o comportamento desta função é indefinido, e imprevisível.

userdata

Se o parâmetro opcional userdata é fornecido, será passado como o terceiro parâmetro para o callback funcname.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Se funcname necessita de mais argumentos do que o que está sendo passado para ela, um erro do nível E_WARNING será gerado a cada vez que array_walk() executar func. Esses avisos podem ser suprimidos adicionando o operador @ à chamada da função array_walk(), ou usando error_reporting().

Histórico

Versão | Descrição
4.0.0 | Passagem da chave e userdata para funcname foi adicionado.

Exemplo #1 Exemplo da array_walk()

<?php
$frutas = array("d" => "limao", "a" => "laranja", "b" => "banana", "c" => "melancia");

function test_alter(&$item1, $key, $prefix)
{
    $item1 = "$prefix: $item1";
}

function test_print($item2, $key)
{
    echo "$key. $item2<br>\n";
}

echo "Antes ...:\n";
array_walk($frutas, 'test_print');

array_walk($frutas, 'test_alter', 'fruta');
echo "... e depois:\n";

array_walk($frutas, 'test_print');
?>

O exemplo acima irá imprimir:

Antes ...:
d. limao
a. laranja
b. banana
c. melancia
... e depois:
d. fruit: limao
a. fruit: laranja
b. fruit: banana
c. fruit: melancia

Veja Também

  • array_walk_recursive() - Aplica um função do usuário recursivamente para cada membro de um array
  • create_function() - Cria uma função anônima (lambda-style)
  • list() - Cria variáveis como se fossem arrays
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor
  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • array_map() - Aplica uma função em todos os elementos dos arrays dados
  • informações sobre o tipo callback
  • foreach

array_walk_recursive
array
Funções para Array


Cria um array

array_walk
arsort
Funções para Array
PHP Manual

array

(PHP 4, PHP 5)

array — Cria um array

Descrição

array array ([ mixed $... ] )

Cria um array. Leia a seção sobre o tipo array para mais informação sobre o que é um array.

Parâmetros

...

A sintaxe "index => values", separados por vírgulas, definem índice e valores respectivamente. O índice por de ser do tipo string ou numérico. Quando o índice é omitido, um índice numérico inteiro é automaticamente gerado, começando do 0. Se o índice é um inteiro, o próximo índice a ser gerado será igual ao maior índice inteiro + 1. Note que quando dois índices idênticos são definidos, o último sobrescreve o primeiro.

O exemplo a seguir demonstra como criar um array com duas dimensões, como especificar chaves em arrays associativos, e como definir índices numéricos em arrays normais. Tem uma vírgula após a ultima entrada definida da matriz, mesmo sendo incomum, é uma sintaxe válida.

Valor Retornado

Retorna um array dos parâmetros. Os parâmetros podem ser dados com um índice com o operador =>. Leia a seção sobre o tipo array para mais informação sobre o que ele é.

Exemplos

Exemplo #1 Exemplo de array()

<?php
$frutas = array (
    "frutas" => array("a"=>"laranja", "b"=>"banana", "c"=>"maçã"),
    "numeros" => array(1, 2, 3, 4, 5, 6),
    "buracos" => array("primeiro", 5 => "segundo", "terceiro")
);
?>

Exemplo #2 Indexação automática com array()

<?php
$array = array(1, 1, 1, 1,  1, 8 => 1,  4 => 1, 19, 3 => 13);
print_r($array);
?>

O exemplo acima irá imprimir:

Array
(
    [0] => 1
    [1] => 1
    [2] => 1
    [3] => 13
    [4] => 1
    [8] => 1
    [9] => 19
)

Note que o índice 3 é definido duas vezes, e retêm seu último valor 13. O índice 4 é definido depois do índice 8, e o índice gerado depois dele foi 9, uma vez que o maior índice era 8.

Esse exemplo cria um array com o índices a partir do 1.

Exemplo #3 Array com índices a partir do 1 com array()

<?php
$firstquarter = array(1 => 'Janeiro', 'Fevereiro', 'Março');
print_r($firstquarter);
?>

O exemplo acima irá imprimir:

Array
(
    [1] => Janeiro
    [2] => Fevereiro
    [3] => Março
)

Como no Perl, você pode acessar o valor de um array dentro de aspas. Entretanto, você terá que colocar a sua array dentro de conchetes.

Exemplo #4 Acessando uma matriz dentro de conchetes

<?php

$foo = array('bar' => 'baz');
echo "Hello {$foo['bar']}!"; // Hello baz!

?>

Notas

Nota:

array() é um construtor da linguagem usado para representar arrays literais, e não um função normal.

Veja Também

  • array_pad() - Expande um array para um certo comprimento utilizando um determinado valor
  • list() - Cria variáveis como se fossem arrays
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto
  • range() - Cria um array contendo uma faixa de elementos
  • foreach
  • The array type

array_walk
arsort
Funções para Array


Ordena um array em ordem descrescente mantendo a associação entre índices e valores

array
asort
Funções para Array
PHP Manual

arsort

(PHP 4, PHP 5)

arsort — Ordena um array em ordem descrescente mantendo a associação entre índices e valores

Descrição

bool arsort ( array &$array [, int $sort_flags ] )

Esta função ordena um array de forma que a correlação entre índices e valores é mantida.

É usada principalmente para ordenar arrays associativos onde a ordem dos elementos é um fator importante.

Parâmetros

array

O array de entrada.

sort_flags

Você pode modificar o comportamento da ordenação usando o parâmetro opcional sort_flags, para detalhes veja sort().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da arsort()

<?php
$frutas = array("d" => "limao", "a" => "laranja", "b" => "banana", "c" => "melancia");
arsort($frutas);
foreach ($frutas as $chave => $valor) {
    echo "$chave = $valor\n";
}
?>

O exemplo acima irá imprimir:

c = melancia
d = limao
a = laranja
b = banana

As frutas foram ordenadas na ordem alfabética inversa, e os índices associados a cada valor foram mantidos.

Veja Também

  • asort() - Ordena um array mantendo a associação entre índices e valores
  • rsort() - Ordena um array em ordem descrescente
  • ksort() - Ordena um array pelas chaves
  • sort() - Ordena um array

array
asort
Funções para Array


Ordena um array mantendo a associação entre índices e valores

arsort
compact
Funções para Array
PHP Manual

asort

(PHP 4, PHP 5)

asort — Ordena um array mantendo a associação entre índices e valores

Descrição

bool asort ( array &$array [, int $sort_flags ] )

Essa função ordena um array de forma que a correlação entre índices e valores é mantida. É usada principalmente para ordenar arrays associativos onde a ordem dos elementos é um fator importante.

Parâmetros

array

O array de entrada.

sort_flags

Você pode modificar o comportamento da ordenação usando o parâmetro opcional sort_flags, para mais detalhes veja sort().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da asort()

<?php
$frutas = array("d" => "limao", "a" => "laranja", "b" => "banana", "c" => "melancia");
asort($frutas);
foreach( $frutas as $chave => $valor ){
    echo "$chave = $valor\n";
}
?>

O exemplo acima irá imprimir:

b = banana
a = laranja
d = limao
c = melancia

As frutas foram ordenadas na ordem alfabética, e os índices associados a cada valor foram mantidos.

Veja Também

  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • sort() - Ordena um array
  • ksort() - Ordena um array pelas chaves
  • rsort() - Ordena um array em ordem descrescente

arsort
compact
Funções para Array


Cria um array contendo variáveis e seus valores

asort
count
Funções para Array
PHP Manual

compact

(PHP 4, PHP 5)

compact — Cria um array contendo variáveis e seus valores

Descrição

array compact ( mixed $varname [, mixed $... ] )

Cria um array contendo variáveis e seus valores.

Para cada um dos parâmetros passados, compact() procura uma variável com o nome especificado na tabela de símbolos e a adiciona no array de saída de forma que o nome da variável será a chave e o seu conteúdo será o valor para esta chave. Em resumo, ela faz o oposto de extract().

Qualquer string com nome de uma variável que não exista será simplesmente ignorada.

Parâmetros

varname

compact() recebe um número variável de parâmetros. Cada parâmetro pode ser ou uma string contendo o nome da variável, ou um array de nomes de variáveis. O array pode conter outros arrays de nomes de variáveis; compact() o manipula recursivamente.

Valor Retornado

Retorna a saída do array com todas as variáveis adicionadas a ele.

Exemplos

Exemplo #1 Exemplo de compact()

<?php
$cidade = "Sao Paulo";
$estado = "SP";
$evento = "SIGGRAPH";

$localidade = array("cidade", "estado");

$result = compact("evento", "nada_aqui", $localidade);
print_r($result);
?>

O exemplo acima irá imprimir:

Array
(
    [evento] => SIGGRAPH
    [cidade] => Sao Paulo
    [estado] => SP
)

Notas

Nota: Gotcha

Devido a variáveis variável não poderem ser usadas com arrays superglobais do PHP dentro de funções, os arrays superglobais não podem ser passados na compact().

Veja Também

  • extract() - Importa variáveis para a tabela de símbolos a partir de um array

asort
count
Funções para Array


Conta o número de elementos de uma variável, ou propriedades de um objeto

compact
current
Funções para Array
PHP Manual

count

(PHP 4, PHP 5)

count — Conta o número de elementos de uma variável, ou propriedades de um objeto

Descrição

int count ( mixed $var [, int $mode ] )

Conta os elementos de um array, ou propriedades em um objeto.

Para objetos, se você tem SPL instalada, você pode fazer um gancho na count() implementando a interface Countable. A interface tem exatamente um método, count(), que retorna o valor retornado para função count().

Por favor, veja a sessão Array do manual para uma explicação mais detalhada sobre como os arrays são implementados e utilizados no PHP.

Parâmetros

var

The array.

mode

Se o parâmetro opcional mode for COUNT_RECURSIVE (ou 1), a função count() irá recursivamente contar a matriz. Isto é particularmente util para contar elementos em matriz multidimensional. O valor padrão para mode é 0. count() não detecta infinita recursão.

Valor Retornado

Retorna o número de elementos em var, que normalmente é um array, pois qualquer outra coisa terá somente um elemento.

Se var não for um array ou um objeto, com a interface Countable implementada, 1 será retornado. Há uma exceção, se var é NULL, 0 é retornado.

Cuidado

count() pode retornar 0 para uma variável que não existe, mas também pode retornar 0 para uma variável que tenha sido inicializada como um array vazio. Use isset() para checar se a variável existe.

Histórico

Versão | Descrição
4.2.0 | O parâmetro opcional mode foi adicionado.

Exemplos

Exemplo #1 Exemplo da função count()

<?php
$a[0] = 1;
$a[1] = 3;
$a[2] = 5;
$result = count($a);
// $result == 3

$b[0] = 7;
$b[5] = 9;
$b[10] = 11;
$result = count($b);
// $result == 3

$result = count(null);
// $result == 0

$result = count(false);
// $result == 1
?>

Exemplo #2 Uso recursivo da função count()

<?php
$comidas = array('frutas'  => array('laranja', 'banana', 'maçã'),
'veggie'  => array('cenoura', 'couve','ervilha'));
// contagem recursiva
echo count($comidas, COUNT_RECURSIVE);  // mostra 8
// contagem normal
echo count($comidas);                   // mostra 2
?>

Veja Também

  • is_array() - Verifica se a variável é um array
  • isset() - Informa se a variável foi iniciada
  • strlen() - Retorna o tamanho de uma string

compact
current
Funções para Array


Retorna o elemento corrente em um array

count
each
Funções para Array
PHP Manual

current

(PHP 4, PHP 5)

current — Retorna o elemento corrente em um array

Descrição

mixed current ( array &$array )

Todo array tem um ponteiro interno para o elemento "atual", o qual é inicializado para apontar para o primeiro elemento inserido em um array.

Parâmetros

array

O array.

Valor Retornado

A função current() simplesmente retorna o elemento do array para o qual esse ponteiro interno está apontando. Não move o ponteiro de forma alguma. Se o ponteiro interno estiver apontando para além do final da lista de elementos ou o array é vazio, current() retorna FALSE.

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 Exemplo do uso de current() e amigos

<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport);    // $mode = 'bike';
$mode = current($transport); // $mode = 'bike';
$mode = prev($transport);    // $mode = 'foot';
$mode = end($transport);     // $mode = 'plane';
$mode = current($transport); // $mode = 'plane';

$arr = array();
var_dump(current($arr)); // bool(false)

$arr = array(array());
var_dump(current($arr)); // array(0) { }
?>

Notas

Nota: Você não será capaz de distinguir o fim de um array de um elemento boolean FALSE. Para percorer um array que pode conter elementos FALSE, veja a função each().

Veja Também

  • end() - Faz o ponteiro interno de um array apontar para o seu último elemento
  • key() - Retorna uma chave de um array
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor
  • prev() - Retrocede o ponteiro interno de um array
  • reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • next() - Avança o ponteiro interno de um array

count
each
Funções para Array


Retorna o par chave/valor corrente de um array e avança o seu cursor

current
end
Funções para Array
PHP Manual

each

(PHP 4, PHP 5)

each — Retorna o par chave/valor corrente de um array e avança o seu cursor

Descrição

array each ( array &$array )

Retorna o par chave/valor corrente de um array e avança o seu cursor

Depois da execução de each(), o cursor interno do array vai apontar para o próximo elemento do array, ou após o último elemento se ele chegar ao final do array. Você deve usar reset() se quiser percorrer o array novamente.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna o par chave/valor corrente de array. Esse par é retornado num array de quatro elementos, com as chaves 0, 1, key e value. Elementos 0 e key contêm o nome da chave do elemento do array e 1 e value contêm o valor.

Se o cursor interno do array estiver apontando para além do final do array, each() retorna FALSE.

Exemplos

Exemplo #1 Exemplos da each()

<?php

$foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese");
$bar = each($foo);
print_r($bar);
?>

$bar agora contém os seguintes pares de chaves e valores:

Array
(
    [1] => bob
    [value] => bob
    [0] => 0
    [key] => 0
)

<?php
$foo = array("Robert" => "Bob", "Seppo" => "Sepi");
$bar = each($foo);
print_r($bar);
?>

$bar agora contém os seguintes pares de chaves e valores:

Array
(
    [1] => Bob
    [value] => Bob
    [0] => Robert
    [key] => Robert
)

each() é tipicamente usada em conjunto com list() para percorrer um array, por exemplo:

Exemplo #2 Percorrendo um array com each()

<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list($key, $val) = each($fruit)) {
      echo "$key => $val\n";
}
?>

O exemplo acima irá imprimir:

a => apple
b => banana
c => cranberry

Cuidado

Porque a atribuição de um array para outra variável reseta o ponteiro do array original, nosso exemplo acima deveria causar um loop infinito tendo nós atribuído $fruit para outra variável dentro do loop.

Veja Também

  • key() - Retorna uma chave de um array
  • list() - Cria variáveis como se fossem arrays
  • current() - Retorna o elemento corrente em um array
  • reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • next() - Avança o ponteiro interno de um array
  • prev() - Retrocede o ponteiro interno de um array
  • foreach

current
end
Funções para Array


Faz o ponteiro interno de um array apontar para o seu último elemento

each
extract
Funções para Array
PHP Manual

end

(PHP 4, PHP 5)

end — Faz o ponteiro interno de um array apontar para o seu último elemento

Descrição

mixed end ( array &$array )

end() avança o ponteiro interno de array até o seu último elemento, e retorna-o.

Parâmetros

array

O array.

Valor Retornado

Retorna o valor do último elemento.

Exemplos

Exemplo #1 Exemplo da end()

<?php

  $frutas = array('melancia', 'banana', 'morango');
  echo end($frutas); // morango

?>

Veja Também

  • current() - Retorna o elemento corrente em um array
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor
  • prev() - Retrocede o ponteiro interno de um array
  • reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • next() - Avança o ponteiro interno de um array

each
extract
Funções para Array


Importa variáveis para a tabela de símbolos a partir de um array

end
in_array
Funções para Array
PHP Manual

extract

(PHP 4, PHP 5)

extract — Importa variáveis para a tabela de símbolos a partir de um array

Descrição

int extract ( array $var_array [, int $extract_type [, string $prefix ]] )

Importar variáveis a partir de um array para a tabela de símbolos corrente.

extract() verifica cada chave e vê se ela tem um válido nome de variável. Também verifica por colisões com já existente variáveis na tabela de símbolo.

Parâmetros

var_array

Um array associativo. Esta função trata chaves como nome de variáveis e valores com os valores da variáveis. Para cada par chave/valor ela cria uma variável na atual tabela de símbolo, seguindo os parâmetros extract_type e prefix.

Você precisa usar um array associativo, um array numericamente indexado não irá produzir resultado até que você use EXTR_PREFIX_ALL ou EXTR_PREFIX_INVALID.

extract_type

A forma como inválida/chaves numéricas e colisões são tratadas é determinada por extract_type. Pode ser um dos seguintes valores:

EXTR_OVERWRITE
Se houver uma colisão, sobrescreve a variável existente.
EXTR_SKIP
Se houver uma colisão, não sobrescreve a variável existente.
EXTR_PREFIX_SAME
Se houver uma colisão, adiciona um prefixo ao nome da variável definido pelo argumento prefix.
EXTR_PREFIX_ALL
Adiciona um prefixo ao nome de todas as variáveis definido por prefix.
EXTR_PREFIX_INVALID
Adiciona um prefixo definido por prefix apenas para variáveis como nomes inválidos ou numéricos.
EXTR_IF_EXISTS
Só sobrescreve a variável se ela já existe na tabela de símbolos corrente, caso contrário, não faz nada. Isso é útil quando se quer definir uma lista de variáveis válidas e então extrair só as que foram definidas em $_REQUEST, por exemplo.
EXTR_PREFIX_IF_EXISTS
Só cria nomes de variáveis usando o prefixo se na tabela de símbolos já existe uma variável com o nome sem esse prefixo.
EXTR_REFS
Extrai variáveis como referências, ou seja, os valores das variáveis importadas ainda estarão referenciando os valores do parâmetro var_array. Essa opção pode ser usada sozinha ou em conjunto com as outras usando o operador 'ou' em extract_type.

Se extract_type não for especificado, é assumido o valor EXTR_OVERWRITE.

prefix

Note que prefix só é necessário se extract_type for EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, ou EXTR_PREFIX_INVALID ou EXTR_PREFIX_IF_EXISTS. Se o nome com o prefixo não for um nome de variável válido, ela não será importada para a tabela de símbolos. Prefixos são automaticamente separados da chave do array pelo caractere underscore.

Valor Retornado

Retorna o número de variáveis importadas com sucesso para a tabela de símbolo.

Histórico

Versão | Descrição
4.3.0 | EXTR_REFS foi adicionado.
4.2.0 | EXTR_IF_EXISTS e EXTR_PREFIX_IF_EXISTS foram adicionados.
4.0.5 | Esta função agora retorna um número de variáveis extraídas. EXTR_PREFIX_INVALID foi adicionado. EXTR_PREFIX_ALL inclue variáveis numéricas também.

Exemplos

Exemplo #1 Exemplo da extract()

Uma possível utilização de extract() é na importação de variáveis contidas num array associativo retornado pela função wddx_deserialize().

<?php

/* Suponha que $var_array é um array retornado pela função
   wddx_deserialize */

$tamanho = "grande";
$var_array = array ("cor" => "azul",
                    "tamanho"  => "medio",
                    "forma" => "esfera");
extract ($var_array, EXTR_PREFIX_SAME, "wddx");

echo "$cor, $tamanho, $forma, $wddx_tamanho\n";

?>

O exemplo acima irá imprimir:

azul, grande, esfera, medio

O $tamanho não foi sobrescrito, porque nós especificamos EXTR_PREFIX_SAME, o que resultou na criação da variável $wddx_tamanho. Se EXTR_SKIP fosse utilizado, então $wddx_tamanho não seria criada. EXTR_OVERWRITE teria feito com que $tamanho tivesse o valor "medio", e EXTR_PREFIX_ALL resultaria em novas variáveis com os nomes $wddx_cor, $wddx_tamanho, e $wddx_forma.

Notas

Aviso

Não use extract() em dados não confiáveis, como entrada de usuário ($_GET, ...). Se você por exemplo, quer executar um código antigo temporariamente com register_globals, certifique-se de que está usando um dos valores de extract_type que não fazem sobreescrita como EXTR_SKIP e tenha cuidado para que extraia na mesma ordem que é definida em variables_order no php.ini.

Veja Também

  • compact() - Cria um array contendo variáveis e seus valores

end
in_array
Funções para Array


Checa se um valor existe em um array

extract
key
Funções para Array
PHP Manual

in_array

(PHP 4, PHP 5)

in_array — Checa se um valor existe em um array

Descrição

bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

Procura em haystack pelo valor needle.

Parâmetros

needle

O valor procurado.

Nota:

Se needle for uma string, a comparação é feita diferenciando caracteres maiúsculos e minúsculos.

haystack

O array.

strict

Se o terceiro parâmetro strict for TRUE então in_array() também irá checar os tipos de needle em haystack.

Valor Retornado

Retorna TRUE se needle é encontrado no array, FALSE caso contrário.

Histórico

Versão | Descrição
4.2.0 | needle pode agora ser um array.

Exemplos

Exemplo #1 Exemplo da in_array()

<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Tem Irix";
}
if (in_array("mac", $os)) {
    echo "Tem mac";
}
?>

A segunda condicional falha pois in_array() diferencia letras minúsculas e maiúsculas. Então, a saída seria:

Tem Irix

Exemplo #2 in_array() com checagem de tipos

<?php
$a = array('1.10', 12.4, 1.13);

if (in_array('12.4', $a, true)) {
    echo "'12.4' encontrado com checagem de tipo\n";
}
if (in_array(1.13, $a, true)) {
    echo "1.13 encontrado com checagem de tipo\n";
}
?>

O exemplo acima irá imprimir:

1.13 encontrado com checagem de tipo

Exemplo #3 Exemplo de in_array() passando um array para needle

<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');

if (in_array(array('p', 'h'), $a)) {
    echo "'ph' foi encontrado\n";
}
if (in_array(array('f', 'i'), $a)) {
    echo "'fi' foi encontrado\n";
}
if (in_array('o', $a)) {
    echo "'o' foi encontrado\n";
}
?>

O exemplo acima irá imprimir:

    'ph' foi encontrado
    'o' foi encontrado

Veja Também

  • array_search() - Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado
  • isset() - Informa se a variável foi iniciada
  • array_key_exists() - Checa se uma chave ou índice existe em um array

extract
key
Funções para Array


Retorna uma chave de um array

in_array
krsort
Funções para Array
PHP Manual

key

(PHP 4, PHP 5)

key — Retorna uma chave de um array

Descrição

mixed key ( array &$array )

key() retorna a chave da posição atual de um array.

Parâmetros

array

O array.

Valor Retornado

Retorna o índice.

Exemplos

Exemplo #1 Exemplo da key()

<?php
$array = array(
    'fruit1' => 'apple',
    'fruit2' => 'orange',
    'fruit3' => 'grape',
    'fruit4' => 'apple',
    'fruit5' => 'apple');

// este ciclo exibirá toda a chave do array associativo
// onde o valor é igual a "apple"
while ($fruit_name = current($array)) {
    if ($fruit_name == 'apple') {
        echo key($array).'<br />';
    }
    next($array);
}
?>

O exemplo acima irá imprimir:

fruit1<br />
fruit4<br />
fruit5<br />

Veja Também

  • current() - Retorna o elemento corrente em um array
  • next() - Avança o ponteiro interno de um array

in_array
krsort
Funções para Array


Ordena um array pelas chaves em ordem descrescente

key
ksort
Funções para Array
PHP Manual

krsort

(PHP 4, PHP 5)

krsort — Ordena um array pelas chaves em ordem descrescente

Descrição

bool krsort ( array &$array [, int $sort_flags ] )

Ordena um array pelas chaves em ordem descrescente, mantendo a correlação entre entre as chaves e os valores. Essa função é bastante útil em arrays associativos.

Parâmetros

array

O array de entrada.

sort_flags

Você pode modificar o comportamento da ordenação usando o parâmetro opcional sort_flags, para detalhes veja sort().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de krsort()

<?php
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");
krsort($fruits);
foreach ($fruits as $key => $val) {
    echo "$key = $val\n";
}
?>

O exemplo acima irá imprimir:

d = limao
c = melancia
b = banana
a = laranja

Veja Também

  • asort() - Ordena um array mantendo a associação entre índices e valores
  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • sort() - Ordena um array
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • rsort() - Ordena um array em ordem descrescente

key
ksort
Funções para Array


Ordena um array pelas chaves

krsort
list
Funções para Array
PHP Manual

ksort

(PHP 4, PHP 5)

ksort — Ordena um array pelas chaves

Descrição

int ksort ( array &$array [, int $sort_flags ] )

Ordena um array pelas chaves, mantendo a correlação entre as chaves e os valores. Essa função é bastante útil principalmente para arrays associativos.

Parâmetros

array

O array de entrada.

sort_flags

Você pode modificar o comportamento da ordenação através do parâmetro opcional sort_flags, para mais detalhes veja sort().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.0.0 | O parâmetro opcional sort_flags foi adicionado.

Exemplos

Exemplo #1 Exemplo da ksort()

<?php
$frutas = array("d"=>"limao", "a"=>"laranja", "b" =>"banana", "c"=>"maçã");
ksort($frutas);
foreach ($fruits as $key => $val) {
    echo "$chave = $valor\n";
}
?>

O exemplo acima irá imprimir:

a = laranja
b = banana
c = maçã
d = limao

Veja Também

  • asort() - Ordena um array mantendo a associação entre índices e valores
  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • krsort() - Ordena um array pelas chaves em ordem descrescente
  • uksort() - Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
  • sort() - Ordena um array
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • rsort() - Ordena um array em ordem descrescente

krsort
list
Funções para Array


Cria variáveis como se fossem arrays

ksort
natcasesort
Funções para Array
PHP Manual

list

(PHP 4, PHP 5)

list — Cria variáveis como se fossem arrays

Descrição

void list ( mixed $varname [, mixed $... ] )

Assim como array(), não é exatamente uma função, e sim uma construção da própria linguagem. list() é usada para criar uma lista de variáveis em apenas uma operação.

Parâmetros

varname

A variável.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo da list()

<?php

$info = array('Café', 'marrom', 'cafeína');

// Listando todas as variáveis
list($bebida, $cor, $substancia) = $info;
echo "$bebida é $cor e $substancia o faz especial.\n";

// Listando apenas alguns deles
list($bebida, , $substancia) = $info;
echo "$bebida tem $substancia.\n";

// Ou ignoramos os primeiros valores para conseguir apenas o último
list( , , $substancia) = $info;
echo "I need $substancia!\n";

// list() não funciona com strings
list($bar) = "abcde";
var_dump($bar); // NULL
?>

Exemplo #2 Exemplo da list()

<table>
 <tr>
  <th>Lista de empregados</th>
  <th>Salário</th>
 </tr>

<?php

$result = mysql_query ("SELECT id, nome, salario FROM empregados", $conn);
while (list ($id, $nome, $salario) = mysql_fetch_row ($result)) {
     echo " <tr>\n" .
           "  <td><a href=\"info.php?id=$id\">$nome</a></td>\n" .
           "  <td>$salario</td>\n" .
            " </tr>\n";
}

?>

</table>

Exemplo #3 Usando list() de forma aninhada

<?php

list($a, list($b, $c)) = array(1, array(2, 3));

var_dump($a, $b, $c);

?>
int(1)
int(2)
int(3)

Exemplo #4 Usando list() com índices de array

<?php

$info = array('café', 'marrom', 'cafeína');

list($a[0], $a[1], $a[2]) = $info;

var_dump($a);

?>

O retorno desse script é o seguinte (note a ordem dos elementos em comparação com o array original):

array(3) {
  [2]=>
  string(8) "cafeína"
  [1]=>
  string(5) "marrom"
  [0]=>
  string(6) "café"
}

Notas

Aviso

A função list() assinala os valores começando pelos parâmetros da direita. Se você está usando variáveis normais, então não precisa se preocupar com esse detalhe. Mas se você está usando arrays com índices você normalmente iria esperar que a ordem dos índices no array fosse da esquerda para a direita, mas não é isso que acontece. O índice é criado na ordem reversa.

Nota:

list() funciona somente com arrays numéricos e espera que esses índices comecem de 0 (zero).

Veja Também

  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor
  • array() - Cria um array
  • extract() - Importa variáveis para a tabela de símbolos a partir de um array

ksort
natcasesort
Funções para Array


Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas

list
natsort
Funções para Array
PHP Manual

natcasesort

(PHP 4, PHP 5)

natcasesort — Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas

Descrição

bool natcasesort ( array &$array )

natcasesort() é uma versão case-sensitive (não diferencia letras maiúsculas de minúsculas) da natsort().

Essa função implementa o algoritmo de ordenação que ordena strings alfanuméricas da forma que os humanos fariam mantendo associação de chave/valor. Essa forma de ordenação é denominada "ordenação natural".

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da natcasesort()

<?php
$array1 = $array2 = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');

sort($array1);
echo "Standard sorting\n";
print_r($array1);

natcasesort($array2);
echo "\nNatural order sorting (case-insensitive)\n";
print_r($array2);
?>

O exemplo acima irá imprimir:

Standard sorting
Array
(
    [0] => IMG0.png
    [1] => IMG3.png
    [2] => img1.png
    [3] => img10.png
    [4] => img12.png
    [5] => img2.png
)

Natural order sorting (case-insensitive)
Array
(
    [0] => IMG0.png
    [4] => img1.png
    [3] => img2.png
    [5] => IMG3.png
    [2] => img10.png
    [1] => img12.png
)

Para mais informação veja: Martin Pool's » Natural Order String Comparison page.

Veja Também

  • sort() - Ordena um array
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • strnatcmp() - Comparação de strings usando o algoritmo "natural order"
  • strnatcasecmp() - Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"

list
natsort
Funções para Array


Ordena um array utilizando o algoritmo da "ordem natural"

natcasesort
next
Funções para Array
PHP Manual

natsort

(PHP 4, PHP 5)

natsort — Ordena um array utilizando o algoritmo da "ordem natural"

Descrição

bool natsort ( array &$array )

Essa função é um implementação do algoritmo que ordena strings alfanuméricas da forma como um ser humano faria mantendo associação de chave/valor. Isso é chamado de "ordenação natural". Um exemplo da diferença entre esse algoritmo e o algoritmo com o qual o computador classifica strings (usado em sort()) pode ser visto abaixo:

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da natsort()

$array1 = $array2 = array("img12.png", "img10.png", "img2.png", "img1.png");

sort($array1);
echo "Classificação normal\n";
print_r($array1);

natsort($array2);
echo "\nClassificação da \"ordem natural\"\n";
print_r($array2);

O exemplo acima irá imprimir:

Classificação normal
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Classificação da "ordem natural"
Array
(
    [3] => img1.png
    [2] => img2.png
    [1] => img10.png
    [0] => img12.png
)

Para mais informações veja: Martin Pool's » Natural Order String Comparison page.

Veja Também

  • natcasesort() - Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas
  • strnatcmp() - Comparação de strings usando o algoritmo "natural order"
  • strnatcasecmp() - Comparação de strings sem diferenciar maiúsculas/minúsculas usando o algoritmo "natural order"

natcasesort
next
Funções para Array


Avança o ponteiro interno de um array

natsort
pos
Funções para Array
PHP Manual

next

(PHP 4, PHP 5)

next — Avança o ponteiro interno de um array

Descrição

mixed next ( array &$array )

next() funciona de forma semelhante a current(), com uma diferença. Ele avança o ponteiro interno do array em uma posição antes de retornar o valor do elemento. Isso significa que ela retorna o próximo valor do array avançando o ponteiro interno em uma posição.

Parâmetros

array

O array a ser afetado.

Valor Retornado

Retorna o elemento do array que está na próxima posição que é apontada pelo ponteiro interno do array, ou FALSE caso não existam mais elementos.

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 Exemplo de uso da next() e funções relacionadas

<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport);    // $mode = 'bike';
$mode = next($transport);    // $mode = 'car';
$mode = prev($transport);    // $mode = 'bike';
$mode = end($transport);     // $mode = 'plane';
?>

Notas

Nota: Você não estará hábil para distiguir o final de um array de um elemento boolean FALSE. Para corretamente percorrer um array que pode conter elementos FALSE, veja a função each().

Veja Também

  • current() - Retorna o elemento corrente em um array
  • end() - Faz o ponteiro interno de um array apontar para o seu último elemento
  • prev() - Retrocede o ponteiro interno de um array
  • reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor

natsort
pos
Funções para Array


Sinônimo de current

next
prev
Funções para Array
PHP Manual

pos

(PHP 4, PHP 5)

pos — Sinônimo de current()

Descrição

Esta função é um apelido para: current()

next
prev
Funções para Array


Retrocede o ponteiro interno de um array

pos
range
Funções para Array
PHP Manual

prev

(PHP 4, PHP 5)

prev — Retrocede o ponteiro interno de um array

Descrição

mixed prev ( array &$array )

Retrocede o ponteiro interno do array.

prev() funciona como next(), exceto que ela retrocede o ponteiro interno do array ao invés de avançá-lo.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna o valor do array que está na posição anterior à posição apontada pelo ponteiro interno, ou FALSE se não houver mais elementos.

Exemplos

Exemplo #1 Exemplo de uso de prev() e funções relacionadas

<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport);    // $mode = 'bike';
$mode = next($transport);    // $mode = 'car';
$mode = prev($transport);    // $mode = 'bike';
$mode = end($transport);     // $mode = 'plane';
?>

Notas

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.

Nota: Você não conseguirá distinguir o começo de um array de um elemento boolean FALSE. Para corretamente percorrer um array que pode conter elementos FALSE, veja a função each().

Veja Também

  • current() - Retorna o elemento corrente em um array
  • end() - Faz o ponteiro interno de um array apontar para o seu último elemento
  • next() - Avança o ponteiro interno de um array
  • reset() - Faz o ponteiro interno de um array apontar para o seu primeiro elemento
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor

pos
range
Funções para Array


Cria um array contendo uma faixa de elementos

prev
reset
Funções para Array
PHP Manual

range

(PHP 4, PHP 5)

range — Cria um array contendo uma faixa de elementos

Descrição

array range ( mixed $low , mixed $high [, number $step ] )

Cria um array contendo uma faixa de elementos

Parâmetros

low

O valor mínimo.

high

O valor máximo.

step

Se o parâmetro step for especificado, será usado como o incremento entre os elementos da sequência. step deve ser um inteiro positivo. Se não for especificado, step terá valor igual a 1.

Valor Retornado

Retorna um array de elementos de low a high, incluindo eles. Se low > high, a seqüência será do maior para menor.

Histórico

Versão | Descrição
5.0.0 | O parâmetro opcional step foi adicionado.
4.1.0 a 4.3.2 | Nas versões de PHP 4.1.0 até 4.3.2, range() vê strings numéricas como strings e não como inteiros. Em lugar disso, eles serão usados por seqüência de caracteres. Por exemplo, "4242" é tratado como "4".
4.1.0 | Até a versão 4.1.0, a função range() só gerava arrays de inteiros em ordem crescente. O suporte para seqüências de caracteres e arrays descrescentes foi adicionado no PHP 4.1.0. Valores de seqüência de caracter estão limitados para o comprimento de um. Se um comprimento maior do que um é entrado, apenas o primeiro caractere é usado.

Exemplos

Exemplo #1 Exemplos da range()

<?php
  // array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ,11, 12)
foreach(range(0, 12) as $numero) {
    echo $numero;
}
// O parâmetro step foi introduzido no 5.0.0
// array(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)

foreach(range(0, 100, 10) as $numero) {
    echo $numero;
}
// Utilização da sequência de caracteres introduzidos no 4.1.0
  // array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i');
  foreach(range('a', 'i') as $letra) {

    echo $letra;
}
// array('c', 'b', 'a');
  foreach(range('c', 'a') as $letra) {

    echo $letra;
}
?>

Nota:

Cuidado

Veja também shuffle(), array_fill(), e foreach.

prev
reset
Funções para Array


Faz o ponteiro interno de um array apontar para o seu primeiro elemento

range
rsort
Funções para Array
PHP Manual

reset

(PHP 4, PHP 5)

reset — Faz o ponteiro interno de um array apontar para o seu primeiro elemento

Descrição

mixed reset ( array &$array )

reset() retrocede o ponteiro interno de array para o primeiro elemento e retorna o valor do primeiro elemento do array, ou FALSE se o array for vazio.

Parâmetros

array

O array de entrada.

Valor Retornado

Retorna o valor do primeiro elemento do array, ou FALSE se o array estiver vazio.

Exemplos

Exemplo #1 Exemplo da reset()

<?php

$array = array('primero passo', 'segundo passo', 'terceiro passo', 'quarto passo');

// por definição, o ponteiro está sobre o primeiro elemento
echo current($array)."<br />\n"; // "Primeiro passo"

// pula dois passos
next($array);
next($array);
echo current($array)."<br />\n"; // "passo três"

// reinicia o ponteiro, começa novamente o primeiro passo
reset($array);
echo current($array)."<br />\n"; // "primeiro passo"

?>

Veja Também

  • current() - Retorna o elemento corrente em um array
  • each() - Retorna o par chave/valor corrente de um array e avança o seu cursor
  • end() - Faz o ponteiro interno de um array apontar para o seu último elemento
  • next() - Avança o ponteiro interno de um array
  • prev() - Retrocede o ponteiro interno de um array

range
rsort
Funções para Array


Ordena um array em ordem descrescente

reset
shuffle
Funções para Array
PHP Manual

rsort

(PHP 4, PHP 5)

rsort — Ordena um array em ordem descrescente

Descrição

bool rsort ( array &$array [, int $sort_flags ] )

Essa função ordena um array em ordem descrescente (do maior para o menor).

Parâmetros

array

O array de entrada.

sort_flags

Você pode modificar o comportamento da ordenação usando este parâmetro opcional sort_flags, para detalhes veja a sort().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de rsort()

<?php
$frutas = array ("limao", "laranja", "banana", "maçã");
rsort ($frutas);
foreach( $frutas as $chave => $valor ){
    echo "$chave = $valor\n";
}
?>

O exemplo acima irá imprimir:

0 = maçã
1 = limao
2 = laranja
3 = banana

As frutas foram ordenadas em ordem alfabética decrescente.

Notas

Nota: Esta função define novas chaves para os elementos em array. Ela irá remover qualquer chave que você tenha definido, ao invés de simplesmente reordenar as chaves.

Veja Também

  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • krsort() - Ordena um array pelas chaves em ordem descrescente
  • sort() - Ordena um array
  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário

reset
shuffle
Funções para Array


Mistura os elementos de um array

rsort
sizeof
Funções para Array
PHP Manual

shuffle

(PHP 4, PHP 5)

shuffle — Mistura os elementos de um array

Descrição

bool shuffle ( array &$array )

Essa função mistura de forma aleatória os elementos de um array.

Parâmetros

array

O array.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da shuffle()

<?php
$numbers = range(1,20);
srand((float)microtime()*1000000);
shuffle($numbers);
foreach ($numbers as $number) {
    echo "$number ";
}
?>

Notas

Nota: Esta função define novas chaves para os elementos em array. Ela irá remover qualquer chave que você tenha definido, ao invés de simplesmente reordenar as chaves.

Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.

Veja Também

  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • rsort() - Ordena um array em ordem descrescente
  • sort() - Ordena um array
  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário

rsort
sizeof
Funções para Array


Sinônimo de count

shuffle
sort
Funções para Array
PHP Manual

sizeof

(PHP 4, PHP 5)

sizeof — Sinônimo de count()

Descrição

Esta função é um apelido para: count().

shuffle
sort
Funções para Array


Ordena um array

sizeof
uasort
Funções para Array
PHP Manual

sort

(PHP 4, PHP 5)

sort — Ordena um array

Descrição

bool sort ( array &$array [, int $sort_flags ] )

Essa função ordena um array. Os elementos serão ordenados do menor para o maior ao final da execução dessa função.

Parâmetros

array

O array de entrada.

sort_flags

O segundo parâmetro opcional sort_flags pode ser usado para modificar o comportamento da ordenação usando estes valores:

Flags para tipo de ordenação:

  • SORT_REGULAR - compara os itens normalmente (não modifica o tipo)
  • SORT_NUMERIC - compara os items numericamente
  • SORT_STRING - compara os itens como strings
  • SORT_LOCALE_STRING - compara os itens como strings, baseado no locale atual. Adicionado no PHP 4.4.0 e PHP 5.0.2. Antes do PHP 6, usava local do sistema, que pode ser alterado usando setlocale(). Já no PHP 6, você precisa usar a função i18n_loc_set_default().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.0.0 | O parâmetro sort_flags foi adicionado.

Exemplos

Exemplo #1 Exemplo da sort()

<?php

$frutas = array("limao", "laranja", "banana", "melancia");
sort($frutas);
foreach ($fruits as $key => $val) {
    echo "frutas[".$chave."] = ".$valor."\n";
}

?>

O exemplo acima irá imprimir:

fruits[0] = banana
fruits[1] = laranja
fruits[2] = limao
fruits[3] = melancia

As frutas foram classificadas em ordem alfabética.

Notas

Nota: Esta função define novas chaves para os elementos em array. Ela irá remover qualquer chave que você tenha definido, ao invés de simplesmente reordenar as chaves.

Nota: Como muitas funções de ordenação do PHP, sort() usa uma implementação da » Quicksort.

Aviso

Tenha cuidado quando ordenando arrays com vários tipos de valores, porque sort() pode produzir um resultado indesejado.

Veja Também

  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • rsort() - Ordena um array em ordem descrescente
  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário
  • uksort() - Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
  • array_multisort() - Ordena múltiplos arrays ou arrays multidimensionais
  • krsort() - Ordena um array pelas chaves em ordem descrescente
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • natcasesort() - Ordena um array utilizando o algoritmo da "ordem natural" sem diferenciar maiúsculas e minúsculas

sizeof
uasort
Funções para Array


Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores

sort
uksort
Funções para Array
PHP Manual

uasort

(PHP 4, PHP 5)

uasort — Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores

Descrição

void uasort ( array $array , function $cmp_function )

Essa função ordena um array de forma que a correlação entre chaves e valores é mantida, usando uma função de comparacão definida pelo usuário.

Esta função é usada principalmente para classificar arrays associativos onde a ordem dos elementos é um fator importante.

Parâmetros

array

O array de entrada.

cmp_function

Veja usort() e uksort() para exemplos de funções de comparação definida pelo usuário.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário
  • uksort() - Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • rsort() - Ordena um array em ordem descrescente
  • sort() - Ordena um array

sort
uksort
Funções para Array


Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.

uasort
usort
Funções para Array
PHP Manual

uksort

(PHP 4, PHP 5)

uksort — Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.

Descrição

bool uksort ( array &$array , function $cmp_function )

uksort() irá ordenar as chaves de um array usando uma função de comparação definida pelo usuário. Se o array precisa ser classificado utilizando um critério não trivial, você deve usar essa função.

Parâmetros

array

O array de entrada.

cmp_function

A função callback de comparação.

Função cmp_function deve aceitar dois parâmetros que irão ser preenchidos pelo par de chaves do array. A função de comparação precisa retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado para respectivamente menor que, igual a, ou maior que o segundo.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uksort()

function cmp($a, $b)
{
    $a = ereg_replace('^(a|an|the) ', '', $a);
    $b = ereg_replace('^(a|an|the) ', '', $b);
    return strcasecmp($a, $b);
}

$a = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);

uksort($a, "cmp");

foreach ($a as $key => $value) {
    echo "$chave: $valor\n";
}
?>

O exemplo acima irá imprimir:

an apple: 3
a banana: 4
the Earth: 2
John: 1

Veja Também

  • usort() - Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário
  • uasort() - Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores
  • sort() - Ordena um array
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • rsort() - Ordena um array em ordem descrescente

uasort
usort
Funções para Array


Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário

uksort
Classes/Objetos
Funções para Array
PHP Manual

usort

(PHP 4, PHP 5)

usort — Ordena um array pelos valores utilizando uma função de comparação definida pelo usuário

Descrição

bool usort ( array &$array , string $cmp_function )

Essa função irá ordenar um array pelos valores usando uma função de classificação definida pelo usuário. Se o array precisar ser ordenado utilizando um critério não trivial, você deve usar essa função.

Nota:

Se dois elementos são considerados iguais, a ordem deles fica indefinida no array resultante.

Nota: Esta função define novas chaves para os elementos em array. Ela irá remover qualquer chave que você tenha definido, ao invés de simplesmente reordenar as chaves.

Parâmetros

array

The input array.

cmp_function

A função de comparação deve retornar um inteiro menor, igual ou maior que zero se o primeiro argumento for considerado respectivamente menor, igual, ou maior que o segundo.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
4.1.0 | O novo algoritmo de ordenação foi introduzido. A cmp_function não mantem a ordenação original para elementos comparando como igual.

Exemplos

Exemplo #1 Exemplo da usort()

<?php
function cmp($a, $b)
{
    if ($a == $b) {
    return 0;
    }
    return ($a < $b) ? -1 : 1;
}

$a = array(3, 2, 5, 6, 1);

usort($a, "cmp");

foreach ($a as $key => $value) {
    echo "$chave: $valor\n";
}
?>

O exemplo acima irá imprimir:

0: 1
1: 2
2: 3
3: 5
4: 6

Nota:

Obviamente que nesse caso trivial a função sort() seria mais apropriada.

Exemplo #2 Exemplo de usort() usando um array multi-dimensional

<?php
function cmp($a, $b)
{
    return strcmp($a["fruta"], $b["fruta"]);
}

$frutas[0]["fruta"] = "limoes";
$frutas[1]["fruta"] = "abacaxis";
$frutas[2]["fruta"] = "goiabas";

usort($frutas, "cmp");

while (list($chave, $valor) = each($frutas)) {
    echo "\$frutas[$chave]: " . $valor["fruta"] . "\n";
}
?>

Na ordenação de um array multi-dimensional, $a e $b contém referências para o primeiro índice do array.

O exemplo acima irá imprimir:

$fruits[0]: abacaxis
$fruits[1]: goiabas
$fruits[2]: limoes

Exemplo #3 Exemplo de usort() usando uma função membro de um objeto

<?php
class TestObj {
    var $name;

    function TestObj($name)
    {
        $this->name = $name;
    }

    /* Essa é a função estática de comparação */
    static function cmp_obj($a, $b)
    {
        $al = strtolower($a->name);
        $bl = strtolower($b->name);
        if ($al == $bl) {
        return 0;
        }
        return ($al > $bl) ? +1 : -1;
    }
}

$a[] = new TestObj("c");
$a[] = new TestObj("b");
$a[] = new TestObj("d");

usort($a, array ("TestObj", "cmp_obj"));

foreach ($a as $item) {
    echo $item->name . "\n";
}
?>

O exemplo acima irá imprimir:

b
c
d

Veja Também

  • uasort() - Ordena um array utilizando uma função de comparação definida pelo usuário e mantendo as associações entre chaves e valores
  • uksort() - Ordena um array pelas chaves utilizando uma função de comparação definida pelo usuário.
  • sort() - Ordena um array
  • asort() - Ordena um array mantendo a associação entre índices e valores
  • arsort() - Ordena um array em ordem descrescente mantendo a associação entre índices e valores
  • ksort() - Ordena um array pelas chaves
  • natsort() - Ordena um array utilizando o algoritmo da "ordem natural"
  • rsort() - Ordena um array em ordem descrescente

uksort
Classes/Objetos
Funções para Array


Informação de Classe/Objeto

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções para Classes/Objetos
    • call_user_method_array — Chama métodos de usuário dado uma matriz de parâmetros [obsoleto]
    • call_user_method — Chama um método do usuário de um específico objeto [obsoleto]
    • class_alias — Creates an alias for a class
    • class_exists — Checa se uma classe foi definida
    • get_called_class — the "Late Static Binding" class name
    • get_class_methods — Obtém o nome dos métodos da classe
    • get_class_vars — Obtém as propriedades padrão da classe
    • get_class — Retorna o nome da classe de um objeto
    • get_declared_classes — Retorna uma matriz com os nomes das classes definidas
    • get_declared_interfaces — Retorna um array com todas as interfaces declaradas
    • get_object_vars — Obtém as propriedades públicas de um dado objeto
    • get_parent_class — Recupera o nome da classe pai para o objeto ou classe
    • interface_exists — Checa se a interface foi definida
    • is_a — Verifica se o objeto é de uma classe ou de sua classe pai
    • is_subclass_of — Verifica se o objeto tem esta classe como uma de suas classes pai
    • method_exists — Checa se o método da classe existe
    • property_exists — Checa se o objeto ou a classe tem uma propriedade
usort
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Estas funções te permitem obter informações sobre classes e instâncias de objetos. Você pode obter o nome da classe ao qual um objeto pertence, bem como suas propriedades e métodos. Usando estas funções, você pode descobrir não apenas a classe de um objeto, mas também seu parentesco (no caso, que classe este objeto de classe se estende).

Classes/Objetos
Instalação/Configuração
Classes/Objetos


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Classes/Objetos


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
Classes/Objetos


Exemplos

Neste exemplo, nós primeiramente definiremos uma classe base e uma extensão da classe. A classe base descreve um vegetal comum, que é comestível ou não e que tem sua cor. A sub-classe Espinafre adiciona um método para cozinhá-lo e outro para descobrir se ele está cozido.

Exemplo #1 classes.inc

<?php

// Classe base com propriedades e métodos de membros
class Vegetal {

    var $comestivel;
    var $cor;

    function Vegetal($comestivel, $cor="verde")
    {
        $this->comestivel = $comestivel;
        $this->cor = $cor;
    }

    function is_comestivel()
    {
        return $this->comestivel;
    }

    function qual_cor()
    {
        return $this->cor;
    }

} // Fim da classe Vegetal

// estende a classe base
class Espinafre extends Vegetal {

    var $cozido = false;

    function Espinafre()
    {
        $this->Vegetal( true, "verde" );
    }

    function cozinhe()
    {
        $this->cozido = true;
    }

    function esta_cozido()
    {
        return $this->cozido;
    }

} // Fim da classe Espinafre

?>

Nós instanciamos 2 objetos destas classes e exibimos informações sobre elas, incluindo o parentesco de suas classes. Nós também definimos algumas funções úteis, principalmente para ter uma boa saída de variáveis.

Exemplo #2 test_script.php

<pre>
<?php

include "classes.inc";

// utility functions

function print_vars($obj)
{
foreach (get_object_vars($obj) as $prop => $val) {
    echo "\t$prop = $val\n";
}
}

function print_methods($obj)
{
$arr = get_class_methods(get_class($obj));
foreach ($arr as $method) {
    echo "\tfunction $method()\n";
}
}

function class_parentage($obj, $class)
{
if (is_subclass_of($GLOBALS[$obj], $class)) {
    echo "Object $obj belongs to class " . get_class($$obj);
    echo " a subclass of $class\n";
} else {
    echo "Object $obj does not belong to a subclass of $class\n";
}
}

// instantiate 2 objects

$veggie = new Vegetable(true, "blue");
$leafy = new Spinach();

// print out information about objects
echo "veggie: CLASS " . get_class($veggie) . "\n";
echo "leafy: CLASS " . get_class($leafy);
echo ", PARENT " . get_parent_class($leafy) . "\n";

// show veggie properties
echo "\nveggie: Properties\n";
print_vars($veggie);

// and leafy methods
echo "\nleafy: Methods\n";
print_methods($leafy);

echo "\nParentage:\n";
class_parentage("leafy", "Spinach");
class_parentage("leafy", "Vegetable");
?>
</pre>

Uma coisa importante para se notar no exemplo acima é que o objeto $folheado é uma instância da classe Espinafre que é uma subclasse de Vegetal, então a última parte do script acima exibirá:

   [...]
Parentesco:
Objeto folheado não pertence a uma subclasse de Espinafre
Object folheado pertence à classe Espinafre uma subclasse de Vegetal

Constantes pré-definidas
Funções para Classes/Objetos
Classes/Objetos


Funções para Classes/Objetos

Índice

  • call_user_method_array — Chama métodos de usuário dado uma matriz de parâmetros [obsoleto]
  • call_user_method — Chama um método do usuário de um específico objeto [obsoleto]
  • class_alias — Creates an alias for a class
  • class_exists — Checa se uma classe foi definida
  • get_called_class — the "Late Static Binding" class name
  • get_class_methods — Obtém o nome dos métodos da classe
  • get_class_vars — Obtém as propriedades padrão da classe
  • get_class — Retorna o nome da classe de um objeto
  • get_declared_classes — Retorna uma matriz com os nomes das classes definidas
  • get_declared_interfaces — Retorna um array com todas as interfaces declaradas
  • get_object_vars — Obtém as propriedades públicas de um dado objeto
  • get_parent_class — Recupera o nome da classe pai para o objeto ou classe
  • interface_exists — Checa se a interface foi definida
  • is_a — Verifica se o objeto é de uma classe ou de sua classe pai
  • is_subclass_of — Verifica se o objeto tem esta classe como uma de suas classes pai
  • method_exists — Checa se o método da classe existe
  • property_exists — Checa se o objeto ou a classe tem uma propriedade
Exemplos
call_user_method_array
Classes/Objetos


Chama métodos de usuário dado uma matriz de parâmetros [obsoleto]

Funções para Classes/Objetos
call_user_method
Funções para Classes/Objetos
PHP Manual

call_user_method_array

(PHP 4 >= 4.0.5, PHP 5)

call_user_method_array — Chama métodos de usuário dado uma matriz de parâmetros [obsoleto]

Descrição

mixed call_user_method_array ( string $method_name , object &$obj , array $params )
Aviso

A funçãocall_user_method_array() é obsoleta a partir do PHP 4.1.0.

Exemplos

Exemplo #1 Alternativo call_user_method_array()

<?php
call_user_func_array(array($obj, $method_name), $params);
call_user_func_array(array(&$obj, $method_name), $params); // PHP 4
?>

Veja Também

  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • call_user_func() - Chama uma função de usuário dada pelo primeiro parâmetro

Funções para Classes/Objetos
call_user_method
Funções para Classes/Objetos


Chama um método do usuário de um específico objeto [obsoleto]

call_user_method_array
class_alias
Funções para Classes/Objetos
PHP Manual

call_user_method

(PHP 4, PHP 5)

call_user_method — Chama um método do usuário de um específico objeto [obsoleto]

Descrição

mixed call_user_method ( string $method_name , object &$obj [, mixed $parameter [, mixed $... ]] )
Aviso

A função call_user_method() está obsoleta desde o PHP 4.1.0.

Exemplos

Exemplo #1 call_user_method() alternativo

<?php
call_user_func(array($obj, $method_name), $parameter /* , ... */);
call_user_func(array(&$obj, $method_name), $parameter /* , ... */); // PHP 4
?>

Veja Também

  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • call_user_func() - Chama uma função de usuário dada pelo primeiro parâmetro

call_user_method_array
class_alias
Funções para Classes/Objetos


Creates an alias for a class

call_user_method
class_exists
Funções para Classes/Objetos
PHP Manual

class_alias

(PHP 5 >= 5.3.0)

class_alias — Creates an alias for a class

Descrição

bool class_alias ([ string $original [, string $alias ]] )

Creates an alias named alias based on the defined class original. The aliased class is exactly the same as the original class.

Parâmetros

original

The original class.

alias

The alias name for the class.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 class_alias() example

<?php

class foo { }

class_alias('foo', 'bar');

$a = new foo;
$b = new bar;

// the objects are the same
var_dump($a == $b, $a === $b);
var_dump($a instanceof $b);

// the classes are the same
var_dump($a instanceof foo);
var_dump($a instanceof bar);

var_dump($b instanceof foo);
var_dump($b instanceof bar);

?>

O exemplo acima irá imprimir:

bool(true)
bool(false)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)

Veja Também

  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai

call_user_method
class_exists
Funções para Classes/Objetos


Checa se uma classe foi definida

class_alias
get_called_class
Funções para Classes/Objetos
PHP Manual

class_exists

(PHP 4, PHP 5)

class_exists — Checa se uma classe foi definida

Descrição

bool class_exists ( string $class_name [, bool $autoload ] )

Esta função checa se uma dada classe foi definida.

Parâmetros

class_name

O nome da classe. O nome da classe é verificada sem fazer distinção de maiúscula e minúscula.

autoload

Se deve ou não chamar __autoload por padrão. O padrão é TRUE.

Valor Retornado

Retorna TRUE se class_name é uma classe definida, caso contrário retorna FALSE.

Histórico

Versão | Descrição
5.0.2 | Não retorna TRUE para interfaces definidas. Use interface_exists().
5.0.0 | O parâmetro autoload foi adicionado.

Exemplos

Exemplo #1 Exemplo da class_exists()

<?php
// Check that the class exists before trying to use it
if (class_exists('MyClass')) {
    $myclass = new MyClass();
}

?>

Exemplo #2 Exemplo do parâmetro autoload

<?php
function __autoload($class)
{
    include($class . '.php');

    // Check to see whether the include declared the class
    if (!class_exists($class, false)) {
        trigger_error("Unable to load class: $class", E_USER_WARNING);
    }
}

if (class_exists('MyClass')) {
    $myclass = new MyClass();
}

?>

Veja Também

  • function_exists() - Retorna TRUE se a função dada está definida
  • interface_exists() - Checa se a interface foi definida
  • get_declared_classes() - Retorna uma matriz com os nomes das classes definidas

class_alias
get_called_class
Funções para Classes/Objetos


the "Late Static Binding" class name

class_exists
get_class_methods
Funções para Classes/Objetos
PHP Manual

get_called_class

(PHP 5 >= 5.3.0)

get_called_class — the "Late Static Binding" class name

Descrição

string get_called_class ( void )

Gets the name of the class the static method is called in.

Valor Retornado

Returns the class name. Returns FALSE if called from outside a class.

Exemplos

Exemplo #1 Using get_called_class()

<?php

class foo {
    static public function test() {
        var_dump(get_called_class());
    }
}

class bar extends foo {
}

foo::test();
bar::test();

?>

O exemplo acima irá imprimir:

string(3) "foo"
string(3) "bar"

Veja Também

  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe
  • get_class() - Retorna o nome da classe de um objeto
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai

class_exists
get_class_methods
Funções para Classes/Objetos


Obtém o nome dos métodos da classe

get_called_class
get_class_vars
Funções para Classes/Objetos
PHP Manual

get_class_methods

(PHP 4, PHP 5)

get_class_methods — Obtém o nome dos métodos da classe

Descrição

array get_class_methods ( mixed $class_name )

Obtém o nome dos métodos da classe.

Parâmetros

class_name

O nome da classe ou a instância do objeto

Valor Retornado

Retorna um array de nome de métodos definidos para a classe especificada por class_name. No case de um erro, é retornado NULL.

Histórico

Versão | Descrição
5.0.0 | No PHP 5, esta função retorna o nome dos métodos como eles foram declarados (case-sensitive). No PHP 4 eles ficavam em minúsculo.
4.0.6 | A possibilidade de especificar o próprio objeto foi adicionada.

Exemplos

Exemplo #1 Exemplo da get_class_methods()

<?php

class myclass {
    // constructor
    function myclass()
    {
        return(true);
    }

    // method 1
    function myfunc1()
    {
        return(true);
    }

    // method 2
    function myfunc2()
    {
        return(true);
    }
}

$class_methods = get_class_methods('myclass');
// or
$class_methods = get_class_methods(new myclass());

foreach ($class_methods as $method_name) {
    echo "$method_name\n";
}

?>

O exemplo acima irá imprimir:

myclass
myfunc1
myfunc2

Veja Também

  • get_class() - Retorna o nome da classe de um objeto
  • get_class_vars() - Obtém as propriedades padrão da classe
  • get_object_vars() - Obtém as propriedades públicas de um dado objeto

get_called_class
get_class_vars
Funções para Classes/Objetos


Obtém as propriedades padrão da classe

get_class_methods
get_class
Funções para Classes/Objetos
PHP Manual

get_class_vars

(PHP 4, PHP 5)

get_class_vars — Obtém as propriedades padrão da classe

Descrição

array get_class_vars ( string $class_name )

Obtém as propriedades padrão de uma dada classe.

Parâmetros

class_name

O nome da classe

Valor Retornado

Retorna um array associativo das propriedades públicas padrão da classe. Os elementos do array resultante estão na forma de nome da variável => valor.

Histórico

Versão | Descrição
Anterior ao 4.2.0 | Variáveis da classe não inicializados não serão reportados pela get_class_vars()

Exemplos

Exemplo #1 Exemplo da get_class_vars()

<?php

class myclass {

    var $var1; // esta não tem valor default...
    var $var2 = "xyz";
    var $var3 = 100;
    private $var4; // PHP 5

    // construtor
    function myclass() {
        // mudar algumas propriedades
       $this->var1 = "foo";
       $this->var2 = "bar";
       return true;
    }

}

$my_class = new myclass();

$class_vars = get_class_vars(get_class($my_class));

foreach ($class_vars as $name => $value) {
    echo "$name : $value\n";
}

?>

O exemplo acima irá imprimir:

// Anteriormente ao PHP 4.2.0
var2 : xyz
var3 : 100

// Apartir do PHP 4.2.0
var1 :
var2 : xyz
var3 : 100

Veja Também

  • get_class_methods() - Obtém o nome dos métodos da classe
  • get_object_vars() - Obtém as propriedades públicas de um dado objeto

get_class_methods
get_class
Funções para Classes/Objetos


Retorna o nome da classe de um objeto

get_class_vars
get_declared_classes
Funções para Classes/Objetos
PHP Manual

get_class

(PHP 4, PHP 5)

get_class — Retorna o nome da classe de um objeto

Descrição

string get_class ([ object $object ] )

Obtém o nome da classe do dado object.

Parâmetros

object

O objeto a ser testado

Valor Retornado

Retorna o nome da classe da qual object é uma instância. Retorna FALSE se object não é um objeto.

Histórico

Versão | Descrição
Desde o 5.0.0 | O nome da classe é retornado em sua notação original.
Desde o 5.0.0 | O parâmetro object é opcional se chamado para um método do objeto.

Exemplos

Exemplo #1 Usando a get_class()

<?php

class foo {
    function name()
    {
        echo "Meu nome é " , get_class($this) , "\n";
    }
}

// create an object
$bar = new foo();

// external call
echo "Its name is " , get_class($bar) , "\n";

// internal call
$bar->name();

?>

O exemplo acima irá imprimir:

Its name is foo
My name is foo

Exemplo #2 Usando get_class() na superclasse

<?php

abstract class bar {
    public function __construct()
    {
        var_dump(get_class($this));
        var_dump(get_class());
    }
}

class foo extends bar {
}

new foo;

?>

O exemplo acima irá imprimir:

string(3) "foo"
string(3) "bar"

Veja Também

  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe
  • gettype() - Retorna o tipo da variável
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai

get_class_vars
get_declared_classes
Funções para Classes/Objetos


Retorna uma matriz com os nomes das classes definidas

get_class
get_declared_interfaces
Funções para Classes/Objetos
PHP Manual

get_declared_classes

(PHP 4, PHP 5)

get_declared_classes — Retorna uma matriz com os nomes das classes definidas

Descrição

array get_declared_classes ( void )

Obtém as classes declaradas.

Valor Retornado

Retorna um array de nomes de classes declaradas no script atual.

Nota:

A partir do PHP 4.0.1, três classes extras são retornadas no início da matriz: stdClass (definida em Zend/zend.c), OverloadedTestClass (definida em ext/standard/basic_functions.c) e Directory (definida em ext/standard/dir.c).

Note também que, dependendo de quais bibliotecas você tenha compilado ou carregado no no PHP, classes adicionais poderão estar presentes. Isto significa que você não será capaz de distinguir suas próprias classes usando estes nomes. Há uma lista de classes pré-definidas na seção Classes Pré-definidas dos apêndices.

Exemplos

Exemplo #1 Exemplo da get_declared_classes()

<?php
print_r(get_declared_classes());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => stdClass
    [1] => __PHP_Incomplete_Class
    [2] => Directory
)

Veja Também

  • class_exists() - Checa se uma classe foi definida
  • get_declared_interfaces() - Retorna um array com todas as interfaces declaradas
  • get_defined_functions() - Retorna um array de todas as funções definidas

get_class
get_declared_interfaces
Funções para Classes/Objetos


Retorna um array com todas as interfaces declaradas

get_declared_classes
get_object_vars
Funções para Classes/Objetos
PHP Manual

get_declared_interfaces

(PHP 5)

get_declared_interfaces — Retorna um array com todas as interfaces declaradas

Descrição

array get_declared_interfaces ( void )

Retorna as interfaces declaradas.

Valor Retornado

Essa função retorna um array com os nomes de interfaces declaradas no script atual.

Exemplos

Exemplo #1 Exemplo de uso de get_declared_interfaces()

<?php
print_r(get_declared_interfaces());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Traversable
    [1] => IteratorAggregate
    [2] => Iterator
    [3] => ArrayAccess
    [4] => reflector
    [5] => RecursiveIterator
    [6] => SeekableIterator
)

Veja Também

  • get_declared_classes() - Retorna uma matriz com os nomes das classes definidas
  • class_implements() - Retorna as interfaces que são implementadas pela classe

get_declared_classes
get_object_vars
Funções para Classes/Objetos


Obtém as propriedades públicas de um dado objeto

get_declared_interfaces
get_parent_class
Funções para Classes/Objetos
PHP Manual

get_object_vars

(PHP 4, PHP 5)

get_object_vars — Obtém as propriedades públicas de um dado objeto

Descrição

array get_object_vars ( object $object )

Obtém as propriedades acessíveis de um dado object de acordo com o escopo.

Parâmetros

object

Uma instância de objeto.

Valor Retornado

Retorna um array associativo das definidas acessíveis propriedades do objeto especificado por object. Se uma propriedade não possui ainda um valor, será retornado com valor NULL.

Histórico

Versão | Descrição
antes do 4.2.0 | Se as variáveis declaradas na classe da qual o object é uma instância, não foram assimilado um valor, estes não serão retornados no array

Exemplos

Exemplo #1 Uso da get_object_vars()

<?php

class foo {
    private $a;
    public $b = 1;
    public $c;
    private $d;
    static $e;

    public function test() {
        var_dump(get_object_vars($this));
    }
}

$test = new foo;
var_dump(get_object_vars($test));

$test->test();

?>

O exemplo acima irá imprimir:

array(2) {
  ["b"]=>
  int(1)
  ["c"]=>
  NULL
}
array(4) {
  ["a"]=>
  NULL
  ["b"]=>
  int(1)
  ["c"]=>
  NULL
  ["d"]=>
  NULL
}

Veja Também

  • get_class_methods() - Obtém o nome dos métodos da classe
  • get_class_vars() - Obtém as propriedades padrão da classe

get_declared_interfaces
get_parent_class
Funções para Classes/Objetos


Recupera o nome da classe pai para o objeto ou classe

get_object_vars
interface_exists
Funções para Classes/Objetos
PHP Manual

get_parent_class

(PHP 4, PHP 5)

get_parent_class — Recupera o nome da classe pai para o objeto ou classe

Descrição

string get_parent_class ([ mixed $object ] )

Recupera o nome da classe pai para o objeto ou classe.

Parâmetros

object

O objeto a ser testado ou o nome da classe

Valor Retornado

Retorna o nome da classe pai da classe da qual object é uma instância ou o nome.

Nota:

Se o objeto não tem um pai, será retornado FALSE.

Se chamado sem parâmetro fora do objeto, esta função retorna FALSE.

Histórico

Versão | Descrição
Antes do 5.1.0 | Se chamado sem parâmetro fora do objeto, esta função retornaria NULL com um aviso.
Desde o 5.0.0 | O parâmetro object é opcional se chamado de um método de objeto.
Desde o 4.0.5 | Se object é uma string, retorna o nome da classe pai da classe com este nome.

Exemplos

Exemplo #1 Usando get_parent_class()

<?php

class dad {
    function dad()
    {
    // implemente alguma lógica
    }
}

class child extends dad {
    function child()
    {
        echo "Eu sou " , get_parent_class($this) , "'s filho\n";
    }
}

class child2 extends dad {
    function child2()
    {
        echo "Eu sou " , get_parent_class('child2') , "'s filho também\n";
    }
}

$foo = new child();
$bar = new child2();

?>

O exemplo acima irá imprimir:

I'm dad's son
I'm dad's son too

Veja Também

  • get_class() - Retorna o nome da classe de um objeto
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai

get_object_vars
interface_exists
Funções para Classes/Objetos


Checa se a interface foi definida

get_parent_class
is_a
Funções para Classes/Objetos
PHP Manual

interface_exists

(PHP 5 >= 5.0.2)

interface_exists — Checa se a interface foi definida

Descrição

bool interface_exists ( string $interface_name [, bool $autoload ] )

Verifica se uma interface foi definida.

Parâmetros

interface_name

O nome da interface.

autoload

Se deve chamar __autoload ou não por padrão

Valor Retornado

Essa função retorna TRUE se a interface de nome interface_name já foi definida, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo de uso de interface_exists()

<?php
// Check the interface exists before trying to use it
if (interface_exists('MyInterface')) {
    class MyClass implements MyInterface
    {
        // Methods
    }
}

?>

Veja Também

  • class_exists() - Checa se uma classe foi definida

get_parent_class
is_a
Funções para Classes/Objetos


Verifica se o objeto é de uma classe ou de sua classe pai

interface_exists
is_subclass_of
Funções para Classes/Objetos
PHP Manual

is_a

(PHP 4 >= 4.2.0, PHP 5)

is_a — Verifica se o objeto é de uma classe ou de sua classe pai

Descrição

bool is_a ( object $object , string $class_name )

Verifica se o dado object é de uma classe ou de sua classe pai.

Nota:

A função is_a() tornou-se obsoleta no PHP 5 pelo operador instanceof.

Parâmetros

object

The tested object

class_name

The class name

Valor Retornado

Returns TRUE if the object is of this class or has this class as one of its parents, FALSE otherwise.

Exemplos

Exemplo #1 is_a() example

<?php
// define a class
class WidgetFactory
{
  var $oink = 'moo';
}

// create a new object
$WF = new WidgetFactory();

if (is_a($WF, 'WidgetFactory')) {
  echo "yes, \$WF is still a WidgetFactory\n";
}
?>

Exemplo #2 Using the instanceof operator in PHP 5

<?php
if ($WF instanceof WidgetFactory) {
    echo 'Yes, $WF is a WidgetFactory';
}
?>

Veja Também

  • get_class() - Retorna o nome da classe de um objeto
  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai

interface_exists
is_subclass_of
Funções para Classes/Objetos


Verifica se o objeto tem esta classe como uma de suas classes pai

is_a
method_exists
Funções para Classes/Objetos
PHP Manual

is_subclass_of

(PHP 4, PHP 5)

is_subclass_of — Verifica se o objeto tem esta classe como uma de suas classes pai

Descrição

bool is_subclass_of ( mixed $object , string $class_name )

Verifica se o dado object tem a classe class_name como uma de suas classes pai.

Parâmetros

object

O nome da classe ou um instância do objeto

class_name

O nome da classe

Valor Retornado

Esta função retorna TRUE se o objeto object, pertence a classe que é a subclasse de class_name, FALSE caso contrário.

Histórico

Versão | Descrição
5.0.3 | Você pode também especificar o parâmetro object como uma string (o nome da classe)

Exemplos

Exemplo #1 Exemplo da is_subclass_of()

<?php
// define a class
class WidgetFactory
{
  var $oink = 'moo';
}

// define a child class
class WidgetFactory_Child extends WidgetFactory
{
  var $oink = 'oink';
}

// create a new object
$WF = new WidgetFactory();
$WFC = new WidgetFactory_Child();

if (is_subclass_of($WFC, 'WidgetFactory')) {
  echo "yes, \$WFC is a subclass of WidgetFactory\n";
} else {
  echo "no, \$WFC is not a subclass of WidgetFactory\n";
}

if (is_subclass_of($WF, 'WidgetFactory')) {
  echo "yes, \$WF is a subclass of WidgetFactory\n";
} else {
  echo "no, \$WF is not a subclass of WidgetFactory\n";
}

// usable only since PHP 5.0.3
if (is_subclass_of('WidgetFactory_Child', 'WidgetFactory')) {
  echo "yes, WidgetFactory_Child is a subclass of WidgetFactory\n";
} else {
  echo "no, WidgetFactory_Child is not a subclass of WidgetFactory\n";
}
?>

O exemplo acima irá imprimir:

yes, $WFC is a subclass of WidgetFactory
no, $WF is not a subclass of WidgetFactory
yes, WidgetFactory_Child is a subclass of WidgetFactory

Veja Também

  • get_class() - Retorna o nome da classe de um objeto
  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe
  • is_a() - Verifica se o objeto é de uma classe ou de sua classe pai

is_a
method_exists
Funções para Classes/Objetos


Checa se o método da classe existe

is_subclass_of
property_exists
Funções para Classes/Objetos
PHP Manual

method_exists

(PHP 4, PHP 5)

method_exists — Checa se o método da classe existe

Descrição

bool method_exists ( object $object , string $method_name )

Verifica se o método da classe existe num dado object.

Parâmetros

object

Uma instância de objeto

method_name

O nome do método

Valor Retornado

Retorna TRUE se o dado método method_name é definido no dado object, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da method_exists()

<?php
$directory = new Directory('.');
var_dump(method_exists($directory,'read'));
?>

O exemplo acima irá imprimir:

bool(true)

Exemplo #2 Exemplo da method_exists() com método estático

<?php
$directory = new Directory('.');
var_dump(method_exists('Directory','read'));
?>

O exemplo acima irá imprimir:

bool(true)

Veja Também

  • function_exists() - Retorna TRUE se a função dada está definida
  • is_callable() - Verifica se o conteúdo da variável pode ser chamado como função

is_subclass_of
property_exists
Funções para Classes/Objetos


Checa se o objeto ou a classe tem uma propriedade

method_exists
Classkit
Funções para Classes/Objetos
PHP Manual

property_exists

(PHP 5 >= 5.1.0)

property_exists — Checa se o objeto ou a classe tem uma propriedade

Descrição

bool property_exists ( mixed $class , string $property )

Essa função checa se property existe na classe especificada (e se ela é acessível do escopo atual).

Nota:

Ao contrário de isset(), property_exists() retorna TRUE mesmo se a propriedade tiver valor NULL (nulo).

Parâmetros

class

O nome da classe ou um objeto da classe a ser testada

property

O nome da propriedade

Valor Retornado

Retorna TRUE se a propriedade existe, FALSE se ela não existir ou NULL em caso de erro.

Exemplos

Exemplo #1 Exemplo de uso de property_exists()

<?php

class myClass {
    public $mine;
    private $xpto;

    static function test() {
        var_dump(property_exists('myClass', 'xpto')); // true, it can be accessed from here
    }
}

var_dump(property_exists('myClass', 'mine'));   //true
var_dump(property_exists(new myClass, 'mine')); //true
var_dump(property_exists('myClass', 'xpto'));   //false, isn't public
myClass::test();

?>

Veja Também

  • method_exists() - Checa se o método da classe existe

method_exists
Classkit
Funções para Classes/Objetos


Classkit

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Classkit
    • classkit_import — Importa métodos definidos em outra classe
    • classkit_method_add — Adiciona dinamicamente um método a uma classe
    • classkit_method_copy — Copia um método de uma classe para a outra
    • classkit_method_redefine — Muda dinâmicamente o corpo do método
    • classkit_method_remove — Remove dinamicamente um método da classe
    • classkit_method_rename — Muda dinamicamente o nome de um método
property_exists
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

As funções contidas nesse pacote permitem a manipulação dinâmica de classes, em tempo de execução.

Nota:

Esta extensão foi substituida por por runkit, essa nova extensão não limita-se apenas a manipulação de classes extendendo também as funções.

Classkit
Instalação/Configuração
Classkit


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Classkit


Instalação

Esta extensão » PECL não vem compilada com o PHP.

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/classkit.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

CLASSKIT_ACC_PRIVATE (int)
Seta o método como private
CLASSKIT_ACC_PROTECTED (int)
Seta o método como protected
CLASSKIT_ACC_PUBLIC (int)
Seta o método como public

Tipos Resource
Funções da Classkit
Classkit


Funções da Classkit

Índice

  • classkit_import — Importa métodos definidos em outra classe
  • classkit_method_add — Adiciona dinamicamente um método a uma classe
  • classkit_method_copy — Copia um método de uma classe para a outra
  • classkit_method_redefine — Muda dinâmicamente o corpo do método
  • classkit_method_remove — Remove dinamicamente um método da classe
  • classkit_method_rename — Muda dinamicamente o nome de um método
Constantes pré-definidas
classkit_import
Classkit


Importa métodos definidos em outra classe

Funções da Classkit
classkit_method_add
Funções da Classkit
PHP Manual

classkit_import

(PECL classkit >= 0.3)

classkit_import — Importa métodos definidos em outra classe

Descrição

array classkit_import ( string $filename )

Nota: Esta função não pode ser utilizada para manipular o método atualmente em execução (ou encadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

filename

Nome do arquivo onde foi definido o método a ser importado

Valor Retornado

Array contendo os métodos importados

Exemplos

Exemplo #1 classkit_import() example

<?php
// file: newclass.php
class Example {
    function foo() {
        return "bar!\n";
    }
}
?>
<?php
// requires newclass.php (see above)
class Example {
    function foo() {
        return "foo!\n";
    }
}

$e = new Example();

// output original
echo $e->foo();

// import replacement method
classkit_import('newclass.php');

// output imported
echo $e->foo();

?>

O exemplo acima irá imprimir:

foo!
bar!

Veja Também

  • classkit_method_add() - Adiciona dinamicamente um método a uma classe
  • classkit_method_copy() - Copia um método de uma classe para a outra

Funções da Classkit
classkit_method_add
Funções da Classkit


Adiciona dinamicamente um método a uma classe

classkit_import
classkit_method_copy
Funções da Classkit
PHP Manual

classkit_method_add

(PECL classkit >= 0.1)

classkit_method_add — Adiciona dinamicamente um método a uma classe

Descrição

bool classkit_method_add ( string $classname , string $methodname , string $args , string $code [, int $flags ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

Classe que receberá o método

methodname

Nome do método a ser adicionado

args

Parâmetros do método, para mais de um parâmetro deve-se separa-los por ',' (virgula)

code

Código a ser executado quando methodname for chamado.

flags

Tipo do método, pode ser: CLASSKIT_ACC_PUBLIC, CLASSKIT_ACC_PROTECTED or CLASSKIT_ACC_PRIVATE

Nota:

Este parâmetro somente é usado na versão 5 ou superior, versão anteriores a 5 os métodos sempre são public.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 classkit_method_add() example

<?php
class Example {
    function foo() {
        echo "foo!\n";
    }
}

// create an Example object
$e = new Example();

// Add a new public method
classkit_method_add(
    'Example',
    'add',
    '$num1, $num2',
    'return $num1 + $num2;',
    CLASSKIT_ACC_PUBLIC
);

// add 12 + 4
echo $e->add(12, 4);
?>

O exemplo acima irá imprimir:

16

Veja Também

  • classkit_method_copy() - Copia um método de uma classe para a outra
  • classkit_method_redefine() - Muda dinâmicamente o corpo do método
  • classkit_method_remove() - Remove dinamicamente um método da classe
  • classkit_method_rename() - Muda dinamicamente o nome de um método
  • create_function() - Cria uma função anônima (lambda-style)

classkit_import
classkit_method_copy
Funções da Classkit


Copia um método de uma classe para a outra

classkit_method_add
classkit_method_redefine
Funções da Classkit
PHP Manual

classkit_method_copy

(PECL classkit >= 0.2)

classkit_method_copy — Copia um método de uma classe para a outra

Descrição

bool classkit_method_copy ( string $dClass , string $dMethod , string $sClass [, string $sMethod ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

dClass

Classe destino. para será copiado o método

dMethod

Nome do método na classe que ele irá ser copiado

sClass

Classe fonte, de onde o método será copiado

sMethod

Nome do método na classe fonte. Se este parâmetro for omitido, o dMethod é replicado aqui.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 classkit_method_copy() example

<?php
class Foo {
    function example() {
        return "foo!\n";
    }
}

class Bar {
    // initially, no methods
}

// copy the example() method from the Foo class to the Bar class, as baz()
classkit_method_copy('Bar', 'baz', 'Foo', 'example');

// output copied function
echo Bar::baz();
?>

O exemplo acima irá imprimir:

foo!

Veja Também

  • classkit_method_add() - Adiciona dinamicamente um método a uma classe
  • classkit_method_redefine() - Muda dinâmicamente o corpo do método
  • classkit_method_remove() - Remove dinamicamente um método da classe
  • classkit_method_rename() - Muda dinamicamente o nome de um método

classkit_method_add
classkit_method_redefine
Funções da Classkit


Muda dinâmicamente o corpo do método

classkit_method_copy
classkit_method_remove
Funções da Classkit
PHP Manual

classkit_method_redefine

(PECL classkit >= 0.1)

classkit_method_redefine — Muda dinâmicamente o corpo do método

Descrição

bool classkit_method_redefine ( string $classname , string $methodname , string $args , string $code [, int $flags ] )

Nota: Esta função não pode ser utilizada para manipular o método atualmente em execução (ou encadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

Classe que contém o método que será redefinido

methodname

Método a ser redefinido

args

Parâmetros do método redefinido, mais de um parâmetro deve ser separado por virgula (,)

code

O novo código será executado quando methodname for invocado.

flags

Tipo do método, pode ser: CLASSKIT_ACC_PUBLIC, CLASSKIT_ACC_PROTECTED or CLASSKIT_ACC_PRIVATE

Nota:

Este parâmetro somente é usado na versão 5 ou superior, versão anteriores a 5 os métodos sempre são public.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 classkit_method_redefine() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }
}

// create an Example object
$e = new Example();

// output Example::foo() (before redefine)
echo "Before: " . $e->foo();

// Redefine the 'foo' method
classkit_method_redefine(
    'Example',
    'foo',
    '',
    'return "bar!\n";',
    CLASSKIT_ACC_PUBLIC
);

// output Example::foo() (after redefine)
echo "After: " . $e->foo();
?>

O exemplo acima irá imprimir:

Before: foo!
After: bar!

Veja Também

  • classkit_method_add() - Adiciona dinamicamente um método a uma classe
  • classkit_method_copy() - Copia um método de uma classe para a outra
  • classkit_method_remove() - Remove dinamicamente um método da classe
  • classkit_method_rename() - Muda dinamicamente o nome de um método

classkit_method_copy
classkit_method_remove
Funções da Classkit


Remove dinamicamente um método da classe

classkit_method_redefine
classkit_method_rename
Funções da Classkit
PHP Manual

classkit_method_remove

(PECL classkit >= 0.1)

classkit_method_remove — Remove dinamicamente um método da classe

Descrição

bool classkit_method_remove ( string $classname , string $methodname )

Nota: Esta função não pode ser utilizada para manipular o método atualmente em execução (ou encadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

Classe de onde será retirado o método

methodname

Método a ser removido

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 classkit_method_remove() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }

    function bar() {
        return "bar!\n";
    }
}

// Remove the 'foo' method
classkit_method_remove(
    'Example',
    'foo'
);

echo implode(' ', get_class_methods('Example'));

?>

O exemplo acima irá imprimir:

bar

Veja Também

  • classkit_method_add() - Adiciona dinamicamente um método a uma classe
  • classkit_method_copy() - Copia um método de uma classe para a outra
  • classkit_method_redefine() - Muda dinâmicamente o corpo do método
  • classkit_method_rename() - Muda dinamicamente o nome de um método

classkit_method_redefine
classkit_method_rename
Funções da Classkit


Muda dinamicamente o nome de um método

classkit_method_remove
Ctype
Funções da Classkit
PHP Manual

classkit_method_rename

(PECL classkit >= 0.1)

classkit_method_rename — Muda dinamicamente o nome de um método

Descrição

bool classkit_method_rename ( string $classname , string $methodname , string $newname )

Nota: Esta função não pode ser utilizada para manipular o método atualmente em execução (ou encadeado).

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

classname

Classe onde o método foi definido

methodname

Método a ser renomeado

newname

Novo nome do método

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 classkit_method_rename() example

<?php
class Example {
    function foo() {
        return "foo!\n";
    }
}

// Rename the 'foo' method to 'bar'
classkit_method_rename(
    'Example',
    'foo',
    'bar'
);

// output renamed function
echo Example::bar();
?>

O exemplo acima irá imprimir:

foo!

Veja Também

  • classkit_method_add() - Adiciona dinamicamente um método a uma classe
  • classkit_method_copy() - Copia um método de uma classe para a outra
  • classkit_method_redefine() - Muda dinâmicamente o corpo do método
  • classkit_method_remove() - Remove dinamicamente um método da classe

classkit_method_remove
Ctype
Funções da Classkit


Funções pra verificação de tipo de caractere

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Ctype
    • ctype_alnum — Verifica se os caracteres são alfanuméricos
    • ctype_alpha — Verifica se os caracteres são alfabéticos
    • ctype_cntrl — Verifica se os caracteres são de controle
    • ctype_digit — Verifica se os caracteres são numéricos
    • ctype_graph — Verifica se os caracteres são imprimíveis exceto espaço
    • ctype_lower — Verifica se os caracteres estão minúsculos
    • ctype_print — Verifica se os caracteres são imprimíveis
    • ctype_punct — Verifica se é um caractere imprimível que não é whitespace ou alfanumério
    • ctype_space — Verifica se os caracteres são whitespace
    • ctype_upper — Verifica se os caracteres são maiúsculos
    • ctype_xdigit — Verifica se os caracteres representam um dígito hexadecimal
classkit_method_rename
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

As funções providas por esta extensão verificam se um caractere ou uma string está dentro de uma certa classe de caracteres de acordo com o atual locate (veja também setlocale()).

Quando chamada com um argumento inteiro, estas funções comportam-se exatamente como ocorro na linguagem C usando ctype.h. Significa que se você passar um inteiro menor que 256, será usado o valor ASCII dele para ver se está dentro do intervalo especificado (dígitos estão entre 0x30-0x39).

Quando chamadada com uma string como argumento elas irão verificar todos caracteres na string e irá somente retornar TRUE se todos caracteres da string combinam com o requisitado critério. Quando chamado com uma string vazia o resultado irá sempre ser TRUE no PHP < 5.1 e FALSE a até o 5.1.

Passando qualquer tipo além de string ou inteiro será retornado imediatamente FALSE.

Deve ser notado que funções ctype são sempre preferência sobre expressões regulares, e as equivalentes funções str_* e is_*. Isto pelo fato de que ctype usa a biblioteca nativa C e assim processar significantemente mais rápido.

Ctype
Instalação/Configuração
Ctype


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Ctype


Dependências

Nenhum adicional para estas funções da biblioteca padrão C que são sempre disponíveis.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Iniciado com o PHP 4.2.0 estas funções são habilitadas por padrão. Para antigas versões você tem que configurar e compilar o PHP com --enable-ctype . Você pode desabilitar o suporte a ctype com --disable-ctype .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Nota: Suporte nativo a ctype é disponível com PHP 4.3.0.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da Ctype
Ctype


Funções da Ctype

Índice

  • ctype_alnum — Verifica se os caracteres são alfanuméricos
  • ctype_alpha — Verifica se os caracteres são alfabéticos
  • ctype_cntrl — Verifica se os caracteres são de controle
  • ctype_digit — Verifica se os caracteres são numéricos
  • ctype_graph — Verifica se os caracteres são imprimíveis exceto espaço
  • ctype_lower — Verifica se os caracteres estão minúsculos
  • ctype_print — Verifica se os caracteres são imprimíveis
  • ctype_punct — Verifica se é um caractere imprimível que não é whitespace ou alfanumério
  • ctype_space — Verifica se os caracteres são whitespace
  • ctype_upper — Verifica se os caracteres são maiúsculos
  • ctype_xdigit — Verifica se os caracteres representam um dígito hexadecimal
Constantes pré-definidas
ctype_alnum
Ctype


Verifica se os caracteres são alfanuméricos

Funções da Ctype
ctype_alpha
Funções da Ctype
PHP Manual

ctype_alnum

(PHP 4 >= 4.0.4, PHP 5)

ctype_alnum — Verifica se os caracteres são alfanuméricos

Descrição

bool ctype_alnum ( string $text )

Verifica se todos os caracteres na string fornecida, text, é alfanumérico. No padrão C locale letras são [A-Za-z].

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text são letra ou dígito, FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_alnum() (usando o locale padrão)

<?php
$strings = array('AbCd1zyZ9', 'foo!#$bar');
foreach ($strings as $testcase) {
    if (ctype_alnum($testcase)) {
        echo "The string $testcase consists of all letters or digits.\n";
    } else {
        echo "The string $testcase does not consist of all letters or digits.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string AbCd1zyZ9 consists of all letters or digits.
The string foo!#$bar does not consist of all letters or digits.

Veja Também

  • ctype_alpha() - Verifica se os caracteres são alfabéticos
  • ctype_digit() - Verifica se os caracteres são numéricos
  • setlocale() - Define informações locais

Funções da Ctype
ctype_alpha
Funções da Ctype


Verifica se os caracteres são alfabéticos

ctype_alnum
ctype_cntrl
Funções da Ctype
PHP Manual

ctype_alpha

(PHP 4 >= 4.0.4, PHP 5)

ctype_alpha — Verifica se os caracteres são alfabéticos

Descrição

bool ctype_alpha ( string $text )

Verifica se todos os caracteres na string fornecida, text, são alfabéticos. No padrão C locale letras são [A-Za-z] e ctype_alpha() é equivalente a (ctype_upper($text) || ctype_lower($text)) se $text é um único caractere, mas outras linguagens possuem letras que não são considerada nem maiúscula nem minúscula.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text é uma letra do atual locale, FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_alpha() (usando o locale padrão)

<?php
$strings = array('KjgWZC', 'arf12');
foreach ($strings as $testcase) {
    if (ctype_alpha($testcase)) {
        echo "The string $testcase consists of all letters.\n";
    } else {
        echo "The string $testcase does not consist of all letters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string KjgWZC consists of all letters.
The string arf12 does not consist of all letters.

Veja Também

  • ctype_upper() - Verifica se os caracteres são maiúsculos
  • ctype_lower() - Verifica se os caracteres estão minúsculos
  • setlocale() - Define informações locais

ctype_alnum
ctype_cntrl
Funções da Ctype


Verifica se os caracteres são de controle

ctype_alpha
ctype_digit
Funções da Ctype
PHP Manual

ctype_cntrl

(PHP 4 >= 4.0.4, PHP 5)

ctype_cntrl — Verifica se os caracteres são de controle

Descrição

bool ctype_cntrl ( string $text )

Verifica se todos os caracteres na string fornecedia, text, são caracteres de controle. Caracteres de controle são e.g. line feed, tab, escape.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text são caracteres de controle do atual locale, FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_cntrl()

<?php
$strings = array('string1' => "\n\r\t", 'string2' => 'arf12');
foreach ($strings as $name => $testcase) {
    if (ctype_cntrl($testcase)) {
        echo "The string '$name' consists of all control characters.\n";
    } else {
        echo "The string '$name' does not consist of all control characters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string 'string1' consists of all control characters.
The string 'string2' does not consist of all control characters.

Veja Também

  • ctype_print() - Verifica se os caracteres são imprimíveis

ctype_alpha
ctype_digit
Funções da Ctype


Verifica se os caracteres são numéricos

ctype_cntrl
ctype_graph
Funções da Ctype
PHP Manual

ctype_digit

(PHP 4 >= 4.0.4, PHP 5)

ctype_digit — Verifica se os caracteres são numéricos

Descrição

bool ctype_digit ( string $text )

Verifica se todos os caracteres na string fornecida, text, são numéricos.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text são dígitos decimais, FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_digit()

<?php
$strings = array('1820.20', '10002', 'wsl!12');
foreach ($strings as $testcase) {
    if (ctype_digit($testcase)) {
        echo "The string $testcase consists of all digits.\n";
    } else {
        echo "The string $testcase does not consist of all digits.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string 1820.20 does not consist of all digits.
The string 10002 consists of all digits.
The string wsl!12 does not consist of all digits.

Veja Também

  • ctype_alnum() - Verifica se os caracteres são alfanuméricos
  • ctype_xdigit() - Verifica se os caracteres representam um dígito hexadecimal

ctype_cntrl
ctype_graph
Funções da Ctype


Verifica se os caracteres são imprimíveis exceto espaço

ctype_digit
ctype_lower
Funções da Ctype
PHP Manual

ctype_graph

(PHP 4 >= 4.0.4, PHP 5)

ctype_graph — Verifica se os caracteres são imprimíveis exceto espaço

Descrição

bool ctype_graph ( string $text )

Verifica se todos os caracteres na string fornecida, text, são visíveis.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text são imprimíveis e criam uma saída visível (sem white space), FALSE caso contrário.

Exemplos

Exemplo #1 A ctype_graph() example

<?php
$strings = array('string1' => "asdf\n\r\t", 'string2' => 'arf12', 'string3' => 'LKA#@%.54');
foreach ($strings as $name => $testcase) {
    if (ctype_graph($testcase)) {
        echo "The string '$name' consists of all (visibly) printable characters.\n";
    } else {
        echo "The string '$name' does not consist of all (visibly) printable characters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string 'string1' does not consist of all (visibly) printable characters.
The string 'string2' consists of all (visibly) printable characters.
The string 'string3' consists of all (visibly) printable characters.

Veja Também

  • ctype_alnum() - Verifica se os caracteres são alfanuméricos
  • ctype_print() - Verifica se os caracteres são imprimíveis
  • ctype_punct() - Verifica se é um caractere imprimível que não é whitespace ou alfanumério

ctype_digit
ctype_lower
Funções da Ctype


Verifica se os caracteres estão minúsculos

ctype_graph
ctype_print
Funções da Ctype
PHP Manual

ctype_lower

(PHP 4 >= 4.0.4, PHP 5)

ctype_lower — Verifica se os caracteres estão minúsculos

Descrição

bool ctype_lower ( string $text )

Verifica se todos os caracteres na string fornecida, text, são letras minúsculas.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text é uma letra minúscula no atual locale.

Exemplos

Exemplo #1 Um exemplo da ctype_lower() (usando o locale padrão)

<?php
$strings = array('aac123', 'qiutoas', 'QASsdks');
foreach ($strings as $testcase) {
    if (ctype_lower($testcase)) {
        echo "The string $testcase consists of all lowercase letters.\n";
    } else {
        echo "The string $testcase does not consist of all lowercase letters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string aac123 does not consist of all lowercase letters.
The string qiutoas consists of all lowercase letters.
The string QASsdks does not consist of all lowercase letters.

Veja Também

  • ctype_alpha() - Verifica se os caracteres são alfabéticos
  • ctype_upper() - Verifica se os caracteres são maiúsculos
  • setlocale() - Define informações locais

ctype_graph
ctype_print
Funções da Ctype


Verifica se os caracteres são imprimíveis

ctype_lower
ctype_punct
Funções da Ctype
PHP Manual

ctype_print

(PHP 4 >= 4.0.4, PHP 5)

ctype_print — Verifica se os caracteres são imprimíveis

Descrição

bool ctype_print ( string $text )

Verifica se todos os caracteres na string fornecida, text, são imprimíveis.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text irá produzir saída (incluindo em branco). Retorna FALSE se text contem caracteres de controle ou caracteres que não tem uma saída ou funções de controle inteiramente.

Exemplos

Exemplo #1 Um exemplo da ctype_print()

<?php
$strings = array('string1' => "asdf\n\r\t", 'string2' => 'arf12', 'string3' => 'LKA#@%.54');
foreach ($strings as $name => $testcase) {
    if (ctype_print($testcase)) {
        echo "The string '$name' consists of all printable characters.\n";
    } else {
        echo "The string '$name' does not consist of all printable characters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string 'string1' does not consist of all printable characters.
The string 'string2' consists of all printable characters.
The string 'string3' consists of all printable characters.

Veja Também

  • ctype_cntrl() - Verifica se os caracteres são de controle
  • ctype_graph() - Verifica se os caracteres são imprimíveis exceto espaço
  • ctype_punct() - Verifica se é um caractere imprimível que não é whitespace ou alfanumério

ctype_lower
ctype_punct
Funções da Ctype


Verifica se é um caractere imprimível que não é whitespace ou alfanumério

ctype_print
ctype_space
Funções da Ctype
PHP Manual

ctype_punct

(PHP 4 >= 4.0.4, PHP 5)

ctype_punct — Verifica se é um caractere imprimível que não é whitespace ou alfanumério

Descrição

bool ctype_punct ( string $text )

Verifica se todos os caracteres da string fornecida, text, são caracteres de pontuação.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se cada caractere em text é imprimível, não sendo letra, dígito ou espaço em branco, FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_punct()

<?php
$strings = array('ABasdk!@!$#', '!@ # $', '*&$()');
foreach ($strings as $testcase) {
    if (ctype_punct($testcase)) {
        echo "The string $testcase consists of all punctuation.\n";
    } else {
        echo "The string $testcase does not consist of all punctuation.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string ABasdk!@!$# does not consist of all punctuation.
The string !@ # $ does not consist of all punctuation.
The string *&$() consists of all punctuation.

Veja Também

  • ctype_cntrl() - Verifica se os caracteres são de controle
  • ctype_graph() - Verifica se os caracteres são imprimíveis exceto espaço

ctype_print
ctype_space
Funções da Ctype


Verifica se os caracteres são whitespace

ctype_punct
ctype_upper
Funções da Ctype
PHP Manual

ctype_space

(PHP 4 >= 4.0.4, PHP 5)

ctype_space — Verifica se os caracteres são whitespace

Descrição

bool ctype_space ( string $text )

Verifica se todos os caracteres na string fornecida, text, são whitespace.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text são white space, FALSE caso contrário. Além de caracteres em branco isto também inclui os caracteres tab, vertical tab, line feed, carriage return e form feed.

Exemplos

Exemplo #1 Um exemplo da ctype_space()

<?php
$strings = array('string1' => "\n\r\t", 'string2' => "\narf12", 'string3' => '\n\r\t');
foreach ($strings as $name => $testcase) {
    if (ctype_space($testcase)) {
        echo "The string '$name' consists of all whitespace characters.\n";
    } else {
        echo "The string '$name' does not consist of all whitespace characters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string 'string1' consists of all whitespace characters.
The string 'string2' does not consist of all whitespace characters.
The string 'string3' does not consist of all whitespace characters.

Veja Também

  • ctype_cntrl() - Verifica se os caracteres são de controle
  • ctype_graph() - Verifica se os caracteres são imprimíveis exceto espaço
  • ctype_punct() - Verifica se é um caractere imprimível que não é whitespace ou alfanumério

ctype_punct
ctype_upper
Funções da Ctype


Verifica se os caracteres são maiúsculos

ctype_space
ctype_xdigit
Funções da Ctype
PHP Manual

ctype_upper

(PHP 4 >= 4.0.4, PHP 5)

ctype_upper — Verifica se os caracteres são maiúsculos

Descrição

bool ctype_upper ( string $text )

Verifica se todos os caracteres na string fornecida, text, são maiúsculos.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text é uma letra maiúscula no locale atual.

Exemplos

Exemplo #1 Um exemplo da ctype_upper() (usando o locale padrão)

<?php
$strings = array('AKLWC139', 'LMNSDO', 'akwSKWsm');
foreach ($strings as $testcase) {
    if (ctype_upper($testcase)) {
        echo "The string $testcase consists of all uppercase letters.\n";
    } else {
        echo "The string $testcase does not consist of all uppercase letters.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string AKLWC139 does not consist of all uppercase letters.
The string LMNSDO consists of all uppercase letters.
The string akwSKWsm does not consist of all uppercase letters.

Veja Também

  • ctype_alpha() - Verifica se os caracteres são alfabéticos
  • ctype_lower() - Verifica se os caracteres estão minúsculos
  • setlocale() - Define informações locais

ctype_space
ctype_xdigit
Funções da Ctype


Verifica se os caracteres representam um dígito hexadecimal

ctype_upper
Filter
Funções da Ctype
PHP Manual

ctype_xdigit

(PHP 4 >= 4.0.4, PHP 5)

ctype_xdigit — Verifica se os caracteres representam um dígito hexadecimal

Descrição

bool ctype_xdigit ( string $text )

Verifica se todos os caracteres na string fornecida, text, são 'dígitos' hexadecimal.

Parâmetros

text

A string a ser testada.

Valor Retornado

Retorna TRUE se todos caracteres em text é um 'dígito' hexadecimal, que é um dígito ou um caractere de [A-Fa-f], FALSE caso contrário.

Exemplos

Exemplo #1 Um exemplo da ctype_xdigit()

<?php
$strings = array('AB10BC99', 'AR1012', 'ab12bc99');
foreach ($strings as $testcase) {
    if (ctype_xdigit($testcase)) {
        echo "The string $testcase consists of all hexadecimal digits.\n";
    } else {
        echo "The string $testcase does not consist of all hexadecimal digits.\n";
    }
}
?>

O exemplo acima irá imprimir:

The string AB10BC99 consists of all hexadecimal digits.
The string AR1012 does not consist of all hexadecimal digits.
The string ab12bc99 consists of all hexadecimal digits.

Veja Também

  • ctype_digit() - Verifica se os caracteres são numéricos

ctype_upper
Filter
Funções da Ctype


Filtragem de Dados

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Filter
    • filter_has_var — Verifica se a variável é de um especificado tipo existente
    • filter_id — Retorna o ID de um dado nome de filtro
    • filter_input_array — Obtem variáveis externas e opcionalmente as filtra
    • filter_input — Obtem a específica variável externa pelo nome e opcionalmente a filtra
    • filter_list — Retorna a lista de todos filtros suportados
    • filter_var_array — Obtêm múltiplas variáveis e opcionalmente as filtra
    • filter_var — Filtra a variável com um especificado filtro
ctype_xdigit
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Esta extensão serve para validar e filtrar dados vindos de alguma fonte insegura, como uma entrada do usuário.

Os seguintes filtros existentes atualmente; podem ser encontrados na seção Constantes da Filter, para informações que descrevem o comportamento de cada constante:

Filtros existentes
ID | Nome | Opções | Flags | Descrição
FILTER_VALIDATE_INT | "int" | min_range, max_range | FILTER_FLAG_ALLOW_OCTAL, FILTER_FLAG_ALLOW_HEX | Valida o valor como inteiro, opcionalmente de um dado intervalo.
FILTER_VALIDATE_BOOLEAN | "boolean" |  | FILTER_NULL_ON_FAILURE | Retorna TRUE para "1", "true", "on" e "yes". Retorna FALSE caso contrário. Se FILTER_NULL_ON_FAILURE é usado, FALSE é retornado somente para "0", "false", "off", "no", and "", e NULL é retornado para todos valores diferentes de bool.
FILTER_VALIDATE_FLOAT | "float" | decimal | FILTER_FLAG_ALLOW_THOUSAND | Valida o valor como float.
FILTER_VALIDATE_REGEXP | "validate_regexp" | regexp |  | Valida o valor com a regexp, uma expressão regular Compatível com Perl.
FILTER_VALIDATE_URL | "validate_url" |  | FILTER_FLAG_PATH_REQUIRED, FILTER_FLAG_QUERY_REQUIRED | Valida o valor como URLL, opcionalmente com componentes requeridos.
FILTER_VALIDATE_EMAIL | "validate_email" |  |  | Valida o valor como e-mail.
FILTER_VALIDATE_IP | "validate_ip" |  | FILTER_FLAG_IPV4, FILTER_FLAG_IPV6, FILTER_FLAG_NO_PRIV_RANGE, FILTER_FLAG_NO_RES_RANGE | Valida o valor como endereço IP, opcionalmente somente IPv4 ou IPv6 ou não privado ou faixa reservada.
FILTER_SANITIZE_STRING | "string" |  | FILTER_FLAG_NO_ENCODE_QUOTES, FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_ENCODE_LOW, FILTER_FLAG_ENCODE_HIGH, FILTER_FLAG_ENCODE_AMP | Remove tags, opcionalmente remove ou codifica caracteres especiais.
FILTER_SANITIZE_STRIPPED | "stripped" |  |  | Sinônimo do filtro "string".
FILTER_SANITIZE_ENCODED | "encoded" |  | FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_ENCODE_LOW, FILTER_FLAG_ENCODE_HIGH | String com URL-codificada, opcionalmente remove ou codifica caracteres especiais.
FILTER_SANITIZE_SPECIAL_CHARS | "special_chars" |  | FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_ENCODE_HIGH | Torna literal '"<>& e caracteres com valor ASCII menor que 32, opcionalmente remove ou codifica outros caracteres especiais.
FILTER_UNSAFE_RAW | "unsafe_raw" |  | FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_ENCODE_LOW, FILTER_FLAG_ENCODE_HIGH, FILTER_FLAG_ENCODE_AMP | Não faz nada, opcionalmente remove ou codifica caracteres especiais.
FILTER_SANITIZE_EMAIL | "email" |  |  | Remove todos caracteres exceto letras, dígitos e !#$%&'*+-/=?^_`{|}~@.[].
FILTER_SANITIZE_URL | "url" |  |  | Remove todos caracteres exceto letras, dígitos e $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=.
FILTER_SANITIZE_NUMBER_INT | "number_int" |  |  | Remove todos caracteres exceto dígitos, e sinais de mais e menos.
FILTER_SANITIZE_NUMBER_FLOAT | "number_float" |  | FILTER_FLAG_ALLOW_FRACTION, FILTER_FLAG_ALLOW_THOUSAND, FILTER_FLAG_ALLOW_SCIENTIFIC | Remove todos caracteres exceto dígitos, +- e opcionalmente .,eE.
FILTER_SANITIZE_MAGIC_QUOTES | "magic_quotes" |  |  | Aplica addslashes().
FILTER_CALLBACK | "callback" | callback function or method |  | Chama uma função definida pelo usuário para filtrar dados.

Filter
Instalação/Configuração
Filter


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Filter


Instalação

Uma simples instalação:

$ pecl install filter
em seu console.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da Filter
Nome | Padrão | Modificável | Changelog
filter.default | "unsafe_raw" | PHP_INI_PERDIR | PHP_INI_ALL na filter <= 0.9.4. Disponível desde PHP 5.2.0.
filter.default_flags | NULL | PHP_INI_PERDIR | PHP_INI_ALL na filter <= 0.9.4. Disponível desde PHP 5.2.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

filter.default string

Filtra todas informações $_GET, $_POST, $_COOKIE and $_REQUEST com este filtro. A informação original pode ser acessada através da filter_input().

Aceita o nome do filtro que você quer usar por padrão. Veja a lista de filtros existentes pela lista de nomes de filtros.

filter.default_flags integer

Flags padrão

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

INPUT_POST (integer)
Variáveis POST.
INPUT_GET (integer)
Variáveis GET.
INPUT_COOKIE (integer)
Variáveis COOKIE.
INPUT_ENV (integer)
Variáveis ENV.
INPUT_SERVER (integer)
Variáveis SERVER.
INPUT_SESSION (integer)
Variáveis SESSION. (ainda não implementada)
INPUT_REQUEST (integer)
Variáveis REQUEST. (ainda não implementada)
FILTER_FLAG_NONE (integer)
Sem flags.
FILTER_REQUIRE_SCALAR (integer)
Flag usada para requerir escalar como entrada
FILTER_REQUIRE_ARRAY (integer)
Requer um array como entrada.
FILTER_FORCE_ARRAY (integer)
Sempre retorna um array.
FILTER_NULL_ON_FAILURE (integer)
Usa NULL ao invés de FALSE em falha.
FILTER_VALIDATE_INT (integer)
ID do filtro "int".
FILTER_VALIDATE_BOOLEAN (integer)
ID do filtro "boolean".
FILTER_VALIDATE_FLOAT (integer)
ID do filtro "float".
FILTER_VALIDATE_REGEXP (integer)
ID do filtro "validate_regexp".
FILTER_VALIDATE_URL (integer)
ID do filtro "validate_url".
FILTER_VALIDATE_EMAIL (integer)
ID do filtro "validate_email".
FILTER_VALIDATE_IP (integer)
ID do filtro "validate_ip".
FILTER_DEFAULT (integer)
ID do filtro padrão ("string").
FILTER_UNSAFE_RAW (integer)
ID do filtro "unsafe_raw".
FILTER_SANITIZE_STRING (integer)
ID do filtro "string".
FILTER_SANITIZE_STRIPPED (integer)
ID do filtro "stripped".
FILTER_SANITIZE_ENCODED (integer)
ID do filtro "encoded".
FILTER_SANITIZE_SPECIAL_CHARS (integer)
ID do filtro "special_chars".
FILTER_SANITIZE_EMAIL (integer)
ID do filtro "email".
FILTER_SANITIZE_URL (integer)
ID do filtro "url".
FILTER_SANITIZE_NUMBER_INT (integer)
ID do filtro "number_int".
FILTER_SANITIZE_NUMBER_FLOAT (integer)
ID of "number_float" filter.
FILTER_SANITIZE_MAGIC_QUOTES (integer)
ID do filtro "magic_quotes".
FILTER_CALLBACK (integer)
ID do filtro "callback".
FILTER_FLAG_ALLOW_OCTAL (integer)
Permite notação octal (0[0-7]+) no filtro "int".
FILTER_FLAG_ALLOW_HEX (integer)
Permite notação hexadecimal (0x[0-9a-fA-F]+) no filtro "int".
FILTER_FLAG_STRIP_LOW (integer)
Remove caracteres com valor ASCII menor que 32.
FILTER_FLAG_STRIP_HIGH (integer)
Remove caracteres com valor ASCII maior que 127.
FILTER_FLAG_ENCODE_LOW (integer)
Codifica caracteres com valor ASCII menor que 32.
FILTER_FLAG_ENCODE_HIGH (integer)
Codifica caracteres com valor ASCII maior que 127.
FILTER_FLAG_ENCODE_AMP (integer)
Codifica &.
FILTER_FLAG_NO_ENCODE_QUOTES (integer)
Não codifica ' e ".
FILTER_FLAG_EMPTY_STRING_NULL (integer)
(Nenhum uso no momento.)
FILTER_FLAG_ALLOW_FRACTION (integer)
Permite parte fracional no filtro "number_float".
FILTER_FLAG_ALLOW_THOUSAND (integer)
Permite separador de milhar (,) no filtro "number_float".
FILTER_FLAG_ALLOW_SCIENTIFIC (integer)
Permite notação científica (e, E) no filtro "number_float".
FILTER_FLAG_SCHEME_REQUIRED (integer)
Requer scheme no filtro "validate_url".
FILTER_FLAG_HOST_REQUIRED (integer)
Requer host no filtro "validate_url".
FILTER_FLAG_PATH_REQUIRED (integer)
Requer path no filtro "validate_url".
FILTER_FLAG_QUERY_REQUIRED (integer)
Requer query no filtro "validate_url".
FILTER_FLAG_IPV4 (integer)
Permite somente endereço IPv4 no filtro "validate_ip".
FILTER_FLAG_IPV6 (integer)
Permite somente endereço IPv6 no filtro "validate_ip".
FILTER_FLAG_NO_RES_RANGE (integer)
Não permite endereços reservados no filtro "validate_ip".
FILTER_FLAG_NO_PRIV_RANGE (integer)
Não permite endereços privados no filtro "validate_ip".
Tipos Resource
Funções da Filter
Filter


Funções da Filter

Índice

  • filter_has_var — Verifica se a variável é de um especificado tipo existente
  • filter_id — Retorna o ID de um dado nome de filtro
  • filter_input_array — Obtem variáveis externas e opcionalmente as filtra
  • filter_input — Obtem a específica variável externa pelo nome e opcionalmente a filtra
  • filter_list — Retorna a lista de todos filtros suportados
  • filter_var_array — Obtêm múltiplas variáveis e opcionalmente as filtra
  • filter_var — Filtra a variável com um especificado filtro
Constantes pré-definidas
filter_has_var
Filter


Verifica se a variável é de um especificado tipo existente

Funções da Filter
filter_id
Funções da Filter
PHP Manual

filter_has_var

(PHP 5 >= 5.2.0)

filter_has_var — Verifica se a variável é de um especificado tipo existente

Descrição

bool filter_has_var ( int $type , string $variable_name )

Parâmetros

type

Um dos INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV.

variable_name

Nome da variável a ser verificada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Funções da Filter
filter_id
Funções da Filter


Retorna o ID de um dado nome de filtro

filter_has_var
filter_input_array
Funções da Filter
PHP Manual

filter_id

(PHP 5 >= 5.2.0)

filter_id — Retorna o ID de um dado nome de filtro

Descrição

int filter_id ( string $filtername )

Parâmetros

filtername

Nome do filtro.

Valor Retornado

ID do filtro em caso de sucesso ou NULL se o filtro não existir.

Veja Também

  • filter_list() - Retorna a lista de todos filtros suportados

filter_has_var
filter_input_array
Funções da Filter


Obtem variáveis externas e opcionalmente as filtra

filter_id
filter_input
Funções da Filter
PHP Manual

filter_input_array

(PHP 5 >= 5.2.0)

filter_input_array — Obtem variáveis externas e opcionalmente as filtra

Descrição

mixed filter_input_array ( int $type [, mixed $definition ] )

Esta função é útil para receber muitos valores sem repetidamente chamar a função filter_input().

Parâmetros

type

Um dos INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV, INPUT_SESSION, ou INPUT_REQUEST.

definition

Um definindo os argumentos. Uma chave válida é um string contendo o nome da variável e um valor válido é um tipo filtro, ou um array opcionalmente especificando o filtro, flags e opções. Se o valor é um array, chaves válidas são filter que especifica o tipo de filtro, flags que especifica uma flag aplica ao filtro, e options que especifica uma opção para aplicar ao filtro. Veja os exemplos abaixo para entender melhor.

Este parâmetro pode ser também um inteiro indicando uma constante da filter. Então todos valores na array de entrada serão filtradas por este filtro.

Valor Retornado

Um array contendo os valores das variáveis requisitads em caso de sucesso, ou FALSE em falha. Um array de valores será FALSE se o filtro falhar, ou NULL se a variável não é definida. Ou se a flag FILTER_NULL_ON_FAILURE é usada, é retornado FALSE se a variável não é definida e NULL se o filtro falhar.

Exemplos

Exemplo #1 Um exemplo da filter_input_array()

<?php
error_reporting(E_ALL | E_STRICT);
/* data actually came from POST
$_POST = array(
    'product_id'    => 'libgd<script>',
    'component'     => '10',
    'versions'      => '2.0.33',
    'testscalar'    => array('2', '23', '10', '12'),
    'testarray'     => '2',
);
*/

$args = array(
    'product_id'   => FILTER_SANITIZE_ENCODED,
    'component'    => array('filter'    => FILTER_VALIDATE_INT,
                            'flags'     => FILTER_REQUIRE_ARRAY,
                            'options'   => array('min_range' => 1, 'max_range' => 10)
                           ),
    'versions'     => FILTER_SANITIZE_ENCODED,
    'doesnotexist' => FILTER_VALIDATE_INT,
    'testscalar'   => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_REQUIRE_SCALAR,
                           ),
    'testarray'    => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_REQUIRE_ARRAY,
                           )

);

$myinputs = filter_input_array(INPUT_POST, $args);

var_dump($myinputs);
echo "\n";
?>

O exemplo acima irá imprimir:

array(6) {
  ["product_id"]=>
  array(1) {
    [0]=>
    string(17) "libgd%3Cscript%3E"
  }
  ["component"]=>
  array(1) {
    [0]=>
    int(10)
  }
  ["versions"]=>
  array(1) {
    [0]=>
    string(6) "2.0.33"
  }
  ["doesnotexist"]=>
  NULL
  ["testscalar"]=>
  bool(false)
  ["testarray"]=>
  array(1) {
    [0]=>
    int(2)
  }
}

Veja Também

  • filter_input() - Obtem a específica variável externa pelo nome e opcionalmente a filtra
  • filter_var_array() - Obtêm múltiplas variáveis e opcionalmente as filtra

filter_id
filter_input
Funções da Filter


Obtem a específica variável externa pelo nome e opcionalmente a filtra

filter_input_array
filter_list
Funções da Filter
PHP Manual

filter_input

(PHP 5 >= 5.2.0)

filter_input — Obtem a específica variável externa pelo nome e opcionalmente a filtra

Descrição

mixed filter_input ( int $type , string $variable_name [, int $filter [, mixed $options ]] )

Parâmetros

type

Um dos INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV, INPUT_SESSION (não implementado ainda) e INPUT_REQUEST (não implementado ainda).

variable_name

Nome da variável a ser obtida.

filter

Filtro a ser aplicado. O padrão é FILTER_DEFAULT.

options

Array associativo de opções ou disjunção com operação binário dos flags. Se o filtro aceita opções, flags podem ser providas no campo "flags" da array.

Valor Retornado

Valor da requisitada variável em caso de sucesso, FALSE se o filtro falhar, ou NULL se o parâmetro variable_name é um variável não definida. Se a flag FILTER_NULL_ON_FAILURE é usada, ela retorna FALSE se a variável não é definida e NULL se o filtro falhar.

Exemplos

Exemplo #1 Um exemplo da filter_input()

<?php
$search_html = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_CHARS);
$search_url = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_ENCODED);
echo "You have searched for $search_html.\n";
echo "<a href='?search=$search_url'>Search again.</a>";
?>

O exemplo acima irá imprimir algo similar a:

You have searched for Me &#38; son.
<a href='?search=Me%20%26%20son'>Search again.</a>

Veja Também

  • filter_var() - Filtra a variável com um especificado filtro
  • filter_input_array() - Obtem variáveis externas e opcionalmente as filtra
  • filter_var_array() - Obtêm múltiplas variáveis e opcionalmente as filtra

filter_input_array
filter_list
Funções da Filter


Retorna a lista de todos filtros suportados

filter_input
filter_var_array
Funções da Filter
PHP Manual

filter_list

(PHP 5 >= 5.2.0)

filter_list — Retorna a lista de todos filtros suportados

Descrição

array filter_list ( void )

Valor Retornado

Retorna um array dos nomes de todos filtros suportados, um array vazio se não há filtros. Índices deste array não são IDs de filtros, eles podem ser obtidos com filter_id() a partir do nome.

Exemplos

Exemplo #1 Um exemplo da filter_list()

<?php
print_r(filter_list());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => int
    [1] => boolean
    [2] => float
    [3] => validate_regexp
    [4] => validate_url
    [5] => validate_email
    [6] => validate_ip
    [7] => string
    [8] => stripped
    [9] => encoded
    [10] => special_chars
    [11] => unsafe_raw
    [12] => email
    [13] => url
    [14] => number_int
    [15] => number_float
    [16] => magic_quotes
    [17] => callback
)

filter_input
filter_var_array
Funções da Filter


Obtêm múltiplas variáveis e opcionalmente as filtra

filter_list
filter_var
Funções da Filter
PHP Manual

filter_var_array

(PHP 5 >= 5.2.0)

filter_var_array — Obtêm múltiplas variáveis e opcionalmente as filtra

Descrição

mixed filter_var_array ( array $data [, mixed $definition ] )

Esta função é útil para receber muitos valores sem repetidamente chamar a função filter_var().

Parâmetros

data

Um array com as string contendo a informação a ser filtrada.

definition

Um array definindo os argumentos. Uma chave válida é uma string contendo o nome da variável e um valor com um tipo de filtro, ou um array opcionalmente especificando o filtro, flags e opções. Se o valor é um array, chaves válida são filter que especifica o tipo do filtro, flags que especifica alguma flag aplicada ao filter, e options que especifica uma opção que é aplicada ao filtro. Veja o exemplo abaixo para entender melhor.

Este parâmetro pode ser também um inteiro indincando uma constante da filter. Então todos valores no array de entrada serão filtrados por este filtro.

Valor Retornado

Um array contendo valores das requisitadas variáveis em caso de sucesso, ou FALSE em falha. Um valor da array será FALSE se o filtro falhar, ou NULL se a variável não é definida.

Exemplos

Exemplo #1 Um exemplo da filter_var_array()

<?php
error_reporting(E_ALL | E_STRICT);
$data = array(
    'product_id'    => 'libgd<script>',
    'component'     => '10',
    'versions'      => '2.0.33',
    'testscalar'    => array('2', '23', '10', '12'),
    'testarray'     => '2',
);

$args = array(
    'product_id'   => FILTER_SANITIZE_ENCODED,
    'component'    => array('filter'    => FILTER_VALIDATE_INT,
                            'flags'     => FILTER_FORCE_ARRAY,
                            'options'   => array('min_range' => 1, 'max_range' => 10)
                           ),
    'versions'     => FILTER_SANITIZE_ENCODED,
    'doesnotexist' => FILTER_VALIDATE_INT,
    'testscalar'   => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_REQUIRE_SCALAR,
                           ),
    'testarray'    => array(
                            'filter' => FILTER_VALIDATE_INT,
                            'flags'  => FILTER_FORCE_ARRAY,
                           )

);

$myinputs = filter_var_array($data, $args);

var_dump($myinputs);
echo "\n";
?>

O exemplo acima irá imprimir:

array(6) {
  ["product_id"]=>
  array(1) {
    [0]=>
    string(17) "libgd%3Cscript%3E"
  }
  ["component"]=>
  array(1) {
    [0]=>
    int(10)
  }
  ["versions"]=>
  array(1) {
    [0]=>
    string(6) "2.0.33"
  }
  ["doesnotexist"]=>
  NULL
  ["testscalar"]=>
  bool(false)
  ["testarray"]=>
  array(1) {
    [0]=>
    int(2)
  }
}

Veja Também

  • filter_input_array() - Obtem variáveis externas e opcionalmente as filtra
  • filter_var() - Filtra a variável com um especificado filtro
  • filter_input() - Obtem a específica variável externa pelo nome e opcionalmente a filtra

filter_list
filter_var
Funções da Filter


Filtra a variável com um especificado filtro

filter_var_array
Funções para Manuseamento de Funções
Funções da Filter
PHP Manual

filter_var

(PHP 5 >= 5.2.0)

filter_var — Filtra a variável com um especificado filtro

Descrição

mixed filter_var ( mixed $variable [, int $filter [, mixed $options ]] )

Parâmetros

variable

Valor para filtrar.

filter

ID do filtro. O padrão é FILTER_SANITIZE_STRING.

options

Array associativo de opções ou disjunção binário de flags. Se o filtro aceita opções, flags podem ser providas no campo "flags" do array. Para o "callback" do filtro, o tipo callback pode ser passado.

Valor Retornado

Retorna o dado filtrado, ou FALSE se o filtro falhar.

Exemplos

Exemplo #1 Um exemplo da filter_var()

<?php
var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));
var_dump(filter_var('example.com', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
?>

O exemplo acima irá imprimir:

string(15) "bob@example.com"
bool(false)

Veja Também

  • filter_var_array() - Obtêm múltiplas variáveis e opcionalmente as filtra
  • filter_input() - Obtem a específica variável externa pelo nome e opcionalmente a filtra
  • filter_input_array() - Obtem variáveis externas e opcionalmente as filtra
  • informações sobre o tipo callback

filter_var_array
Funções para Manuseamento de Funções
Funções da Filter


Funções para Manuseamento de Funções

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Manuseamento de Funções
    • call_user_func_array — Chama uma dada função de usuário com um array de parâmetros
    • call_user_func — Chama uma função de usuário dada pelo primeiro parâmetro
    • create_function — Cria uma função anônima (lambda-style)
    • forward_static_call_array — Call a static method and pass the arguments as array
    • forward_static_call — Call a static method
    • func_get_arg — Retorna um item para uma lista de argumentos
    • func_get_args — Retorna um array contendo uma lista de argumentos da função
    • func_num_args — Retorna o número de argumentos passados para a função
    • function_exists — Retorna TRUE se a função dada está definida
    • get_defined_functions — Retorna um array de todas as funções definidas
    • register_shutdown_function — Registra uma função para ser executada ao final da execução
    • register_tick_function — Registra uma função para executar a cada instante
    • unregister_tick_function — Desregistra uma função executada a cada instante
filter_var
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Todas estas funções lidam com várias operações complexas envolvendo funções.

Funções para Manuseamento de Funções
Instalação/Configuração
Funções para Manuseamento de Funções


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Funções para Manuseamento de Funções


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções para Manuseamento de Funções
Funções para Manuseamento de Funções


Funções para Manuseamento de Funções
PHP Manual

Funções para Manuseamento de Funções

Índice

  • call_user_func_array — Chama uma dada função de usuário com um array de parâmetros
  • call_user_func — Chama uma função de usuário dada pelo primeiro parâmetro
  • create_function — Cria uma função anônima (lambda-style)
  • forward_static_call_array — Call a static method and pass the arguments as array
  • forward_static_call — Call a static method
  • func_get_arg — Retorna um item para uma lista de argumentos
  • func_get_args — Retorna um array contendo uma lista de argumentos da função
  • func_num_args — Retorna o número de argumentos passados para a função
  • function_exists — Retorna TRUE se a função dada está definida
  • get_defined_functions — Retorna um array de todas as funções definidas
  • register_shutdown_function — Registra uma função para ser executada ao final da execução
  • register_tick_function — Registra uma função para executar a cada instante
  • unregister_tick_function — Desregistra uma função executada a cada instante
Constantes pré-definidas
call_user_func_array
Funções para Manuseamento de Funções
PHP Manual


Chama uma dada função de usuário com um array de parâmetros

Funções para Manuseamento de Funções
call_user_func
Funções para Manuseamento de Funções
PHP Manual

call_user_func_array

(PHP 4 >= 4.0.4, PHP 5)

call_user_func_array — Chama uma dada função de usuário com um array de parâmetros

Descrição

mixed call_user_func_array ( callback $function , array $param_arr )

Chama uma function definida pelo usuário com os parâmetros param_arr.

Parâmetros

function

A função a ser chamada.

param_arr

Os parâmetros para ser passado para a função, com array indexado.

Valor Retornado

Retorna o resultado da função, ou FALSE em error.

Exemplos

Exemplo #1 Exemplo da call_user_func_array()

<?php
function debug($var, $val)
{
    echo "***DEBUGGING\nVARIABLE: $var\nVALUE:";
    if (is_array($val) || is_object($val) || is_resource($val)) {
        print_r($val);
    } else {
        echo "\n$val\n";
    }
    echo "***\n";
}

$c = mysql_connect();
$host = $_SERVER["SERVER_NAME"];

call_user_func_array ('debug', array("host", $host));
call_user_func_array ('debug', array("c", $c));
call_user_func_array ('debug', array("_POST", $_POST));
?>

Exemplo #2 Usando call_user_func_array() com nome do namespace

<?php

namespace Foobar;

class Foo {
    static public function test($name) {
        print "Hello {$name}!\n";
    }
}

// A partir do PHP 5.3.0
call_user_func_array(__NAMESPACE__ .'::Foo::test', array('Hannes'));
// Hello Hannes!

// A partir do PHP 5.3.0
call_user_func_array(array(__NAMESPACE__ .'::Foo', 'test'), array('Philip'));
// Hello Philip!

?>

Notas

Nota:

Variáveis referenciadas em param_arr são passadas para a função por referência, outras são passadas por valor. Em outras palavras, ele não depende da assinatura da função se o parâmetro é passado por valor ou por referência.

Veja Também

  • call_user_func() - Chama uma função de usuário dada pelo primeiro parâmetro
  • informações sobre o tipo callback

Funções para Manuseamento de Funções
call_user_func
Funções para Manuseamento de Funções


Chama uma função de usuário dada pelo primeiro parâmetro

call_user_func_array
create_function
Funções para Manuseamento de Funções
PHP Manual

call_user_func

(PHP 4, PHP 5)

call_user_func — Chama uma função de usuário dada pelo primeiro parâmetro

Descrição

mixed call_user_func ( callback $function [, mixed $parameter [, mixed $... ]] )

Chama uma dada função definida pelo usuário pelo parâmetro function.

Parâmetros

function

A função a ser chamada. Métodos de classe podem também ser invocados estaticamente usando esta função passando array($classname, $methodname) para este parâmetro.

parameter

Zero ou mais parâmetros a ser passado para a função.

Nota:

Note que os parâmetros para call_user_func() não são passado por referência.

<?php
function increment(&$var)
{
    $var++;
}

$a = 0;
call_user_func('increment', $a);
echo $a; // 0

call_user_func_array('increment', array(&$a)); // Você pode também usar assim
echo $a; // 1
?>

Valor Retornado

Retorna o resultado da função, ou FALSE em erro.

Exemplos

Exemplo #1 Exemplo da call_user_func()

<?php
function barber($type)
{
    echo "You wanted a $type haircut, no problem";
}
call_user_func('barber', "mushroom");
call_user_func('barber', "shave");
?>

Exemplo #2 Usando call_user_func() com nome do namespace

<?php

namespace Foobar;

class Foo {
    static public function test() {
        print "Hello world!\n";
    }
}

call_user_func(__NAMESPACE__ .'::Foo::test'); // A partir do PHP 5.3.0
// Hello world!
call_user_func(array(__NAMESPACE__ .'::Foo', 'test')); // A partir do PHP 5.3.0
// Hello world!

?>

Exemplo #3 Usando um método da classe

<?php

class myclass {
  static function say_hello()
  {
    echo "Hello!\n";
  }
}

$classname = "myclass";

call_user_func(array($classname,'say_hello'));
call_user_func($classname .'::say_hello'); // A partir do 5.2.3

?>

Veja Também

  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • is_callable() - Verifica se o conteúdo da variável pode ser chamado como função
  • informações sobre o tipo callback

call_user_func_array
create_function
Funções para Manuseamento de Funções


Cria uma função anônima (lambda-style)

call_user_func
forward_static_call_array
Funções para Manuseamento de Funções
PHP Manual

create_function

(PHP 4 >= 4.0.1, PHP 5)

create_function — Cria uma função anônima (lambda-style)

Descrição

string create_function ( string $args , string $code )

Cria uma função anônima para os parâmetros passados, e retorna um nome único para isso. Usualmente o args irá ser passado com um apóstrofo delimitando a string, e isso também é recomendado para code. O motivo para usar apóstrofo em torno da string, é para proteger que nome de variáveis sejam interpretados, caso contrário, se você usar aspas duplas elas irão precisar de uma barra invertida em nomes de variáveis, e.g. \$avar.

Você pode usar essas funções, para (por exemplo) criar uma função para que informações sejam colhidas todo o tempo:

Exemplo #1 Criando uma função anônima com create_function()

<?php
$newfunc = create_function('$a,$b','return "ln($a) + ln($b) = ".log($a * $b);');
echo "New anonymous function: $newfunc\n";
echo $newfunc(2,M_E)."\n";
// outputs
// New anonymous function: lambda_1
// ln(2) + ln(2.718281828459) = 1.6931471805599
?>

Ou, talvez ter funções de manuseamento gerais que podem aplicar uma configuração de operações para a lista de parâmetros:

Exemplo #2 Fazendo um processamento geral com a função create_function()

<?php
function process($var1, $var2, $farr) {
    for ($f=0; $f < count($farr); $f++)
    echo $farr[$f]($var1,$var2)."\n";
}

// create a bunch of math functions
$f1 = 'if ($a >=0) {return "b*a^2 = ".$b*sqrt($a);} else {return false;}';
$f2 = "return \"min(b^2+a, a^2,b) = \".min(\$a*\$a+\$b,\$b*\$b+\$a);";
$f3 = 'if ($a > 0 && $b != 0) {return "ln(a)/b = ".log($a)/$b; } else { return false; }';
$farr = array(
    create_function('$x,$y', 'return "some trig: ".(sin($x) + $x*cos($y));'),
    create_function('$x,$y', 'return "a hypotenuse: ".sqrt($x*$x + $y*$y);'),
    create_function('$a,$b', $f1),
    create_function('$a,$b', $f2),
    create_function('$a,$b', $f3)
    );

echo "\nUsing the first array of anonymous functions\n";
echo "parameters: 2.3445, M_PI\n";
process(2.3445, M_PI, $farr);

// now make a bunch of string processing functions
$garr = array(
    create_function('$b,$a','if (strncmp($a,$b,3) == 0) return "** \"$a\" '.
    'and \"$b\"\n** Look the same to me! (looking at the first 3 chars)";'),
    create_function('$a,$b','; return "CRCs: ".crc32($a)." , ".crc32(b);'),
    create_function('$a,$b','; return "similar(a,b) = ".similar_text($a,$b,&$p)."($p%)";')
    );
echo "\nUsing the second array of anonymous functions\n";
process("Twas brilling and the slithy toves", "Twas the night", $garr);
?>

e quando você executa o código acima, a saída irá ser:

Using the first array of anonymous functions
parameters: 2.3445, M_PI
some trig: -1.6291725057799
a hypotenuse: 3.9199852871011
b*a^2 = 4.8103313314525
min(b^2+a, a^2,b) = 8.6382729035898
ln(a/b) = 0.27122299212594

Using the second array of anonymous functions
** "Twas the night" and "Twas brilling and the slithy toves"
** Look the same to me! (looking at the first 3 chars)
CRCs: -725381282 , 1908338681
similar(a,b) = 11(45.833333333333%)

Porém talvez o uso mais comum das funções lambda-style (anonymous) seja criar funções de retorno, por exemplo quando usando array_walk() ou usort()

Exemplo #3 Usando funções anônimas como funções de chamada de retorno

<?php
$av = array("the ","a ","that ","this ");
array_walk($av, create_function('&$v,$k','$v = $v."mango";'));
print_r($av);  // for PHP 3 use var_dump()
/*
outputs:
Array
(
  [0] => the mango
  [1] => a mango
  [2] => that mango
  [3] => this mango
)
*/

// an array of strings ordered from shorter to longer
$sv = array("small","larger","a big string","it is a string thing");
print_r($sv);
/*
outputs:
Array
(
  [0] => small
  [1] => larger
  [2] => a big string
  [3] => it is a string thing
)
*/

// sort it from longer to shorter
usort($sv, create_function('$a,$b','return strlen($b) - strlen($a);'));
print_r($sv);
/*
outputs:
Array
(
  [0] => it is a string thing
  [1] => a big string
  [2] => larger
  [3] => small
)
*/
?>

call_user_func
forward_static_call_array
Funções para Manuseamento de Funções


Call a static method and pass the arguments as array

create_function
forward_static_call
Funções para Manuseamento de Funções
PHP Manual

forward_static_call_array

(PHP 5 >= 5.3.0)

forward_static_call_array — Call a static method and pass the arguments as array

Descrição

mixed forward_static_call_array ( callback $function , array $parameters )

Calls a user defined function or method given by the function parameter. This function must be called within a method context, it can't be used outside a class. It uses the late static binding. All arguments of the forwarded method are passed as values, and as an array, similarly to call_user_func_array().

Parâmetros

function

The function or method to be called. This parameter may be an array, with the name of the class, and the method, or a string, with a function name.

parameter

One parameter, gathering all the method parameter in one array.

Nota:

Note that the parameters for forward_static_call_array() are not passed by reference.

Valor Retornado

Returns the function result, or FALSE on error.

Exemplos

Exemplo #1 forward_static_call_array() example

<?php

class A
{
    const NAME = 'A';
    public static function test() {
        $args = func_get_args();
        echo static::NAME, " ".join(',', $args)." \n";
    }
}

class B extends A
{
    const NAME = 'B';

    public static function test() {
        echo self::NAME, "\n";
        forward_static_call_array(array('A', 'test'), array('more', 'args'));
        forward_static_call_array( 'test', array('other', 'args'));
    }
}

B::test('foo');

function test() {
        $args = func_get_args();
        echo "C ".join(',', $args)." \n";
    }

?>

O exemplo acima irá imprimir:

B
B more,args
C other,args

Veja Também

  • forward_static_call() - Call a static method
  • call_user_func() - Chama uma função de usuário dada pelo primeiro parâmetro
  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • is_callable() - Verifica se o conteúdo da variável pode ser chamado como função
  • informações sobre o tipo callback

create_function
forward_static_call
Funções para Manuseamento de Funções


Call a static method

forward_static_call_array
func_get_arg
Funções para Manuseamento de Funções
PHP Manual

forward_static_call

(PHP 5 >= 5.3.0)

forward_static_call — Call a static method

Descrição

mixed forward_static_call ( callback $function [, mixed $parameter [, mixed $... ]] )

Calls a user defined function or method given by the function parameter, with the following arguments. This function must be called within a method context, it can't be used outside a class. It uses the late static binding.

Parâmetros

function

The function or method to be called. This parameter may be an array, with the name of the class, and the method, or a string, with a function name.

parameter

Zero or more parameters to be passed to the function.

Valor Retornado

Returns the function result, or FALSE on error.

Exemplos

Exemplo #1 forward_static_call() example

<?php

class A
{
    const NAME = 'A';
    public static function test() {
        $args = func_get_args();
        echo static::NAME, " ".join(',', $args)." \n";
    }
}

class B extends A
{
    const NAME = 'B';

    public static function test() {
        echo self::NAME, "\n";
        forward_static_call(array('A', 'test'), 'more', 'args');
        forward_static_call( 'test', 'other', 'args');
    }
}

B::test('foo');

function test() {
        $args = func_get_args();
        echo "C ".join(',', $args)." \n";
    }

?>

O exemplo acima irá imprimir:

B
B more,args
C other,args

Veja Também

  • forward_static_call_array() - Call a static method and pass the arguments as array
  • call_user_func_array() - Chama uma dada função de usuário com um array de parâmetros
  • call_user_func() - Chama uma função de usuário dada pelo primeiro parâmetro
  • is_callable() - Verifica se o conteúdo da variável pode ser chamado como função
  • informações sobre o tipo callback

forward_static_call_array
func_get_arg
Funções para Manuseamento de Funções


Retorna um item para uma lista de argumentos

forward_static_call
func_get_args
Funções para Manuseamento de Funções
PHP Manual

func_get_arg

(PHP 4, PHP 5)

func_get_arg — Retorna um item para uma lista de argumentos

Descrição

mixed func_get_arg ( int $arg_num )

Obtém o argumento especificado da lista de argumento de uma função definida pelo usuário.

Esta função pode ser usada juntamente com func_get_arg() e func_num_args() para usar com variável lista de argumentos.

Parâmetros

arg_num

O índice do argumento. Argumentos de função são contados iniciando de zero.

Valor Retornado

Retorna o argumento especificado, ou FALSE em erro.

Histórico

Versão | Descrição
5.3.0 | Esta função pode agora ser usada na lista de parâmetros.

Erros

Gera um aviso se chamado fora de uma função definida pelo usuário, ou se arg_num é maior que o número de argumentos passado.

Exemplos

Exemplo #1 Exemplo da func_get_arg()

<?php
function foo()
{
     $numargs = func_num_args();
     echo "Number of arguments: $numargs<br />\n";
     if ($numargs >= 2) {
     echo "Second argument is: " . func_get_arg(1) . "<br />\n";
     }
}

foo (1, 2, 3);
?>

Notas

Nota:

Devido a esta função depender do escopo atual para definir os detalhes dos parâmetros, ela não pode ser usada como o parâmetro de uma função. Se este valor precisa ser passado, os resultados devem ser atribuídos para uma variável, e esta variável deve ser passada.

Nota: Esta função retorna somente uma cópia dos argumentos passados, e não conta por argumentos padrão (não passado).

Veja Também

  • func_get_args() - Retorna um array contendo uma lista de argumentos da função
  • func_num_args() - Retorna o número de argumentos passados para a função

forward_static_call
func_get_args
Funções para Manuseamento de Funções


Retorna um array contendo uma lista de argumentos da função

func_get_arg
func_num_args
Funções para Manuseamento de Funções
PHP Manual

func_get_args

(PHP 4, PHP 5)

func_get_args — Retorna um array contendo uma lista de argumentos da função

Descrição

array func_get_args ( void )

Obtém um array de argumentos da função.

This function may be used in conjunction with func_get_arg() and func_num_args() to allow user-defined functions to accept variable-length argument lists.

Valor Retornado

Retorna um array onde cada elemento é uma cópia do membro correspondente da lista de argumentos da atual função definida pelo usuário.

Histórico

Versão | Descrição
5.3.0 | Esta função pode agora ser usada na lista de parâmetros.

Erros

Gera um aviso se chamada uma função não definida.

Exemplos

Exemplo #1 Exemplo da func_get_args()

<?php
function foo()
{
    $numargs = func_num_args();
    echo "Number of arguments: $numargs<br />\n";
    if ($numargs >= 2) {
    echo "Second argument is: " . func_get_arg (1) . "<br />\n";
    }
    $arg_list = func_get_args();
    for ($i = 0; $i < $numargs; $i++) {
    echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
    }
}

foo (1, 2, 3);
?>

Notas

Nota:

Devido a esta função depender do escopo atual para definir os detalhes dos parâmetros, ela não pode ser usada como o parâmetro de uma função. Se este valor precisa ser passado, os resultados devem ser atribuídos para uma variável, e esta variável deve ser passada.

Nota: Esta função retorna uma cópia somente dos argumentos passados, e não para argumentos padrão (não passado).

Veja Também

  • func_get_arg() - Retorna um item para uma lista de argumentos
  • func_num_args() - Retorna o número de argumentos passados para a função

func_get_arg
func_num_args
Funções para Manuseamento de Funções


Retorna o número de argumentos passados para a função

func_get_args
function_exists
Funções para Manuseamento de Funções
PHP Manual

func_num_args

(PHP 4, PHP 5)

func_num_args — Retorna o número de argumentos passados para a função

Descrição

int func_num_args ( void )

Obtém o número de argumentos passado para a função.

Esta função pode ser usada juntamente com func_get_arg() e func_get_args() para usar com variável lista de argumentos.

Valor Retornado

Retorna o número de argumentos passados para a atual função definida pelo usuário.

Histórico

Versão | Descrição
5.3.0 | Esta função pode agora ser usada na lista de parâmetros.

Erros

Genera um aviso se chamado fora de uma função definida pelo usuário.

Exemplos

Exemplo #1 Exemplo da func_num_args()

<?php
function foo()
{
    $numargs = func_num_args();
    echo "Number of arguments: $numargs\n";
}

foo (1, 2, 3);    // Prints 'Number of arguments: 3'
?>

Notas

Nota:

Devido a esta função depender do escopo atual para definir os detalhes dos parâmetros, ela não pode ser usada como o parâmetro de uma função. Se este valor precisa ser passado, os resultados devem ser atribuídos para uma variável, e esta variável deve ser passada.

Veja Também

  • func_get_arg() - Retorna um item para uma lista de argumentos
  • func_get_args() - Retorna um array contendo uma lista de argumentos da função

func_get_args
function_exists
Funções para Manuseamento de Funções


Retorna TRUE se a função dada está definida

func_num_args
get_defined_functions
Funções para Manuseamento de Funções
PHP Manual

function_exists

(PHP 4, PHP 5)

function_exists — Retorna TRUE se a função dada está definida

Descrição

bool function_exists ( string $function_name )

Verifica a lista de funções definidas, ambas embutidas (interna) e definidas pelo usuário, para function_name.

Parâmetros

function_name

O nome da função, como uma string.

Valor Retornado

Retorna TRUE se function_name existe e é uma função, FALSE caso contrário.

Nota:

Esta função retornará FALSE para construtores, como include_once() e echo().

Exemplos

Exemplo #1 Exemplo da function_exists()

<?php
if (function_exists('imap_open')) {
    echo "IMAP functions are available.<br />\n";
} else {
    echo "IMAP functions are not available.<br />\n";
}
?>

Notas

Nota:

O nome da função deve existir se a função chama a si própria se torna inútil devido a configuração ou opções de compilação (com a função image sendo um exemplo).

Veja Também

  • method_exists() - Checa se o método da classe existe
  • is_callable() - Verifica se o conteúdo da variável pode ser chamado como função
  • get_defined_functions() - Retorna um array de todas as funções definidas

func_num_args
get_defined_functions
Funções para Manuseamento de Funções


Retorna um array de todas as funções definidas

function_exists
register_shutdown_function
Funções para Manuseamento de Funções
PHP Manual

get_defined_functions

(PHP 4 >= 4.0.4, PHP 5)

get_defined_functions — Retorna um array de todas as funções definidas

Descrição

array get_defined_functions ( void )

Obtém um array de todas as funções definidas.

Valor Retornado

Retorna um array multidimensional contendo uma lista de todas as funções definidas, ambas embutidas (interna) e definidas pelo usuário. As funções internas irão estar acessíveis via $arr["internal"], e as definidas por usuário $arr["user"] (veja exemplo abaixo).

Exemplos

Exemplo #1 Exemplo da get_defined_functions()

<?php
function myrow($id, $data)
{
    return "<tr><th>$id</th><td>$data</td></tr>\n";
}

$arr = get_defined_functions();

print_r($arr);
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [internal] => Array
        (
            [0] => zend_version
            [1] => func_num_args
            [2] => func_get_arg
            [3] => func_get_args
            [4] => strlen
            [5] => strcmp
            [6] => strncmp
            ...
            [750] => bcscale
            [751] => bccomp
        )

    [user] => Array
        (
            [0] => myrow
        )

)

Veja Também

  • function_exists() - Retorna TRUE se a função dada está definida
  • get_defined_vars() - Retorna o array com todas variáveis definidas
  • get_defined_constants() - Retorna uma matriz associativa com os nomes de todas as constantes e seus valores
  • get_declared_classes() - Retorna uma matriz com os nomes das classes definidas

function_exists
register_shutdown_function
Funções para Manuseamento de Funções


Registra uma função para ser executada ao final da execução

get_defined_functions
register_tick_function
Funções para Manuseamento de Funções
PHP Manual

register_shutdown_function

(PHP 4, PHP 5)

register_shutdown_function — Registra uma função para ser executada ao final da execução

Descrição

void register_shutdown_function ( callback $function )

Registra a função nomeada por function para ser executada quando o processamento do script estiver completo.

Múltiplas chamadas para register_shutdown_function() podem ser feitas, e cada uma irá ser chamada na mesma ordem como elas foram registradas. Se você chamar exit() dentro de uma função registrada "shutdown", o processamento irá parar completamente e nenhuma outra função shutdown irá ser chamada.

As funções "shutdown" registradas são chamadas após a requisição ter sido completamente feita (incluindo envio e saída de buffer), então isso não é possível enviar saída para o brownser usando echo() ou print(), ou recuperar o conteúdo de algum buffer de saída usando ob_get_contents().

Nota:

Tipicamente funções indefinidas causam erros fatais no PHP, mas quando a function chamada com register_shutdown_function() é indefinida, um erro de nível E_WARNING é gerado ao invés disso. Também, por razões internas do PHP, esso erro irá referenciar-se como Unknown() na linha #0.

Veja também auto_append_file, exit(), e a seção em connection handling.

get_defined_functions
register_tick_function
Funções para Manuseamento de Funções


Registra uma função para executar a cada instante

register_shutdown_function
unregister_tick_function
Funções para Manuseamento de Funções
PHP Manual

register_tick_function

(PHP 4 >= 4.0.3, PHP 5)

register_tick_function — Registra uma função para executar a cada instante

Descrição

bool register_tick_function ( callback $function [, mixed $arg [, mixed $... ]] )

Registra a dada function para ser executada quando um tick é chamado.

Parâmetros

function

O nome da função como string, ou um array consistindo de um objeto e um método.

arg

...

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo de uso da register_tick_function()

<?php
// using a function as the callback
register_tick_function('my_function', true);

// using an object->method
$object = new my_class();
register_tick_function(array(&$object, 'my_method'), true);
?>

Notas

Aviso

register_tick_function() não deve ser usado com threaded web server modules. Ticks não funcionam em modo ZTS e pode travar seu web server.

Veja Também

  • declare
  • unregister_tick_function() - Desregistra uma função executada a cada instante

register_shutdown_function
unregister_tick_function
Funções para Manuseamento de Funções


Desregistra uma função executada a cada instante

register_tick_function
Object Aggregation
Funções para Manuseamento de Funções
PHP Manual

unregister_tick_function

(PHP 4 >= 4.0.3, PHP 5)

unregister_tick_function — Desregistra uma função executada a cada instante

Descrição

void unregister_tick_function ( string $function_name )

Desregistra uma função nomeada por function_name então isso não é mais executado quando uma tick é chamada.

Parâmetros

function_name

O nome da função, como string.

Valor Retornado

Não há valor retornado.

Veja Também

  • register_tick_function() - Registra uma função para executar a cada instante

register_tick_function
Object Aggregation
Funções para Manuseamento de Funções


Object Aggregation/Composition [PHP 4]

  • Introdução
  • Exemplos
    • Object Aggregation examples
    • Exemplos
  • Object Aggregation Funções
    • aggregate_info — Gets aggregation information for a given object
    • aggregate_methods_by_list — Selective dynamic class methods aggregation to an object
    • aggregate_methods_by_regexp — Selective class methods aggregation to an object using a regular expression
    • aggregate_methods — Dynamic class and object aggregation of methods
    • aggregate_properties_by_list — Selective dynamic class properties aggregation to an object
    • aggregate_properties_by_regexp — Selective class properties aggregation to an object using a regular expression
    • aggregate_properties — Dynamic aggregation of class properties to an object
    • aggregate — Dynamic class and object aggregation of methods and properties
    • aggregation_info — Sinônimo de aggregate_info
    • deaggregate — Removes the aggregated methods and properties from an object
unregister_tick_function
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

In Object Oriented Programming, it is common to see the composition of simple classes (and/or instances) into a more complex one. This is a flexible strategy for building complicated objects and object hierarchies and can function as a dynamic alternative to multiple inheritance. There are two ways to perform class (and/or object) composition depending on the relationship between the composed elements: Association and Aggregation.

Object Aggregation
Exemplos
Object Aggregation


Exemplos

Índice

  • Object Aggregation examples
  • Exemplos
Introdução
Object Aggregation examples
Object Aggregation


Object Aggregation examples

An Association is a composition of independently constructed and externally visible parts. When we associate classes or objects, each one keeps a reference to the ones it is associated with. When we associate classes statically, one class will contain a reference to an instance of the other class. For example:

Exemplo #1 Class association

<?php
class MyDateTime {

  function MyDateTime()
  {
      // empty constructor
  }

  function now()
  {
      return date("Y-m-d H:i:s");
  }
}

class Report {
  var $_dt;
  // more properties ...

  function Report()
  {
      $this->_dt = new MyDateTime();
      // initialization code ...
  }

  function generateReport()
  {
      $dateTime = $this->_dt->now();
      // more code ...
  }

  // more methods ...
}

$rep = new Report();
?>
We can also associate instances at runtime by passing a reference in a constructor (or any other method), which allow us to dynamically change the association relationship between objects. We will modify the example above to illustrate this point:

Exemplo #2 Object association

<?php
class MyDateTime {
  // same as previous example
}

class MyDateTimePlus {
  var $_format;

  function MyDateTimePlus($format="Y-m-d H:i:s")
  {
      $this->_format = $format;
  }

  function now()
  {
      return date($this->_format);
  }
}

class Report {
  var $_dt;    // we'll keep the reference to MyDateTime here
  // more properties ...

  function Report()
  {
      // do some initialization
  }

  function setMyDateTime(&$dt)
  {
      $this->_dt =& $dt;
  }

  function generateReport()
  {
      $dateTime = $this->_dt->now();
      // more code ...
  }

  // more methods ...
}

$rep = new Report();
$dt = new MyDateTime();
$dtp = new MyDateTimePlus("l, F j, Y (h:i:s a, T)");

// generate report with simple date for web display
$rep->setMyDateTime($dt);
echo $rep->generateReport();

// later on in the code ...

// generate report with fancy date
$rep->setMyDateTime($dtp);
$output = $rep->generateReport();
// save $output in database
// ... etc ...
?>

Aggregation, on the other hand, implies encapsulation (hidding) of the parts of the composition. We can aggregate classes by using a (static) inner class (PHP does not yet support inner classes), in this case the aggregated class definition is not accessible, except through the class that contains it. The aggregation of instances (object aggregation) involves the dynamic creation of subobjects inside an object, in the process, expanding the properties and methods of that object.

Object aggregation is a natural way of representing a whole-part relationship, (for example, molecules are aggregates of atoms), or can be used to obtain an effect equivalent to multiple inheritance, without having to permanently bind a subclass to two or more parent classes and their interfaces. In fact object aggregation can be more flexible, in which we can select what methods or properties to "inherit" in the aggregated object.

Exemplos
Exemplos
Exemplos


Exemplos
PHP Manual

Exemplos

We define 3 classes, each implementing a different storage method:

Exemplo #1 storage_classes.inc

<?php
class FileStorage {
   var $data;

   function FileStorage($data)
   {
       $this->data = $data;
   }

   function write($name)
   {
       $fp = fopen(name, "w");
       fwrite($fp, $this->data);
       fclose($data);
   }
}

class WDDXStorage {
   var $data;
   var $version = "1.0";
   var $_id; // "private" variable

   function WDDXStorage($data)
   {
       $this->data = $data;
       $this->_id = $this->_genID();
   }

   function store()
   {
       if ($this->_id) {
           $pid = wddx_packet_start($this->_id);
           wddx_add_vars($pid, "this->data");
           $packet = wddx_packet_end($pid);
       } else {
           $packet = wddx_serialize_value($this->data);
       }
       $dbh = dba_open("varstore", "w", "gdbm");
       dba_insert(md5(uniqid("", true)), $packet, $dbh);
       dba_close($dbh);
   }

   // a private method
   function _genID()
   {
       return md5(uniqid(rand(), true));
   }
}

class DBStorage {
   var $data;
   var $dbtype = "mysql";

   function DBStorage($data)
   {
       $this->data = $data;
   }

   function save()
   {
       $dbh = mysql_connect();
       mysql_select_db("storage", $dbh);
       $serdata = serialize($this->data);
       mysql_query("insert into vars ('$serdata',now())", $dbh);
       mysql_close($dbh);
   }
}

?>

We then instantiate a couple of objects from the defined classes, and perform some aggregations and deaggregations, printing some object information along the way:

Exemplo #2 test_aggregation.php

<?php
include "storageclasses.inc";

// some utilty functions

function p_arr($arr)
{
   foreach ($arr as $k => $v)
       $out[] = "\t$k => $v";
   return implode("\n", $out);
}

function object_info($obj)
{
   $out[] = "Class: " . get_class($obj);
   foreach (get_object_vars($obj) as $var=>$val) {
       if (is_array($val)) {
           $out[] = "property: $var (array)\n" . p_arr($val);
       } else {
           $out[] = "property: $var = $val";
       }
   }
   foreach (get_class_methods($obj) as $method) {
       $out[] = "method: $method";
   }
   return implode("\n", $out);
}

$data = array(M_PI, "kludge != cruft");

// we create some basic objects
$fs = new FileStorage($data);
$ws = new WDDXStorage($data);

// print information on the objects
echo "\$fs object\n";
echo object_info($fs) . "\n";
echo "\n\$ws object\n";
echo object_info($ws) . "\n";

// do some aggregation

echo "\nLet's aggregate \$fs to the WDDXStorage class\n";
aggregate($fs, "WDDXStorage");
echo "\$fs object\n";
echo object_info($fs) . "\n";

echo "\nNow let us aggregate it to the DBStorage class\n";
aggregate($fs, "DBStorage");
echo "\$fs object\n";
echo object_info($fs) . "\n";

echo "\nAnd finally deaggregate WDDXStorage\n";
deaggregate($fs, "WDDXStorage");
echo "\$fs object\n";
echo object_info($fs) . "\n";

?>

We will now consider the output to understand some of the side-effects and limitation of object aggregation in PHP. First, the newly created $fs and $ws objects give the expected output (according to their respective class declaration). Note that for the purposes of object aggregation, private elements of a class/object begin with an underscore character ("_"), even though there is not real distinction between public and private class/object elements in PHP.

$fs object
Class: filestorage
property: data (array)
   0 => 3.1415926535898
   1 => kludge != cruft
method: filestorage
method: write

$ws object
Class: wddxstorage
property: data (array)
   0 => 3.1415926535898
   1 => kludge != cruft
property: version = 1.0
property: _id = ID::9bb2b640764d4370eb04808af8b076a5
method: wddxstorage
method: store
method: _genid

We then aggregate $fs with the WDDXStorage class, and print out the object information. We can see now that even though nominally the $fs object is still of FileStorage, it now has the property $version, and the method store(), both defined in WDDXStorage. One important thing to note is that it has not aggregated the private elements defined in the class, which are present in the $ws object. Also absent is the constructor from WDDXStorage, which will not be logical to aggegate.

Let's aggregate $fs to the WDDXStorage class
$fs object
Class: filestorage
property: data (array)
   0 => 3.1415926535898
   1 => kludge != cruft
property: version = 1.0
method: filestorage
method: write
method: store

The process of aggregation is cumulative, so when we aggregate $fs with the class DBStorage, generating an object that can use the storage methods of all the defined classes.

Now let us aggregate it to the DBStorage class
$fs object
Class: filestorage
property: data (array)
   0 => 3.1415926535898
   1 => kludge != cruft
property: version = 1.0
property: dbtype = mysql
method: filestorage
method: write
method: store
method: save

Finally, the same way we aggregated properties and methods dynamically, we can also deaggregate them from the object. So, if we deaggregate the class WDDXStorage from $fs, we will obtain:

And deaggregate the WDDXStorage methods and properties
$fs object
Class: filestorage
property: data (array)
   0 => 3.1415926535898
   1 => kludge != cruft
property: dbtype = mysql
method: filestorage
method: write
method: save

One point that we have not mentioned above, is that the process of aggregation will not override existing properties or methods in the objects. For example, the class FileStorage defines a $data property, and the class WDDXStorage also defines a similar property which will not override the one in the object acquired during instantiation from the class FileStorage.

Object Aggregation examples
Object Aggregation Funções
Exemplos
PHP Manual


Object Aggregation Funções

Índice

  • aggregate_info — Gets aggregation information for a given object
  • aggregate_methods_by_list — Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp — Selective class methods aggregation to an object using a regular expression
  • aggregate_methods — Dynamic class and object aggregation of methods
  • aggregate_properties_by_list — Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp — Selective class properties aggregation to an object using a regular expression
  • aggregate_properties — Dynamic aggregation of class properties to an object
  • aggregate — Dynamic class and object aggregation of methods and properties
  • aggregation_info — Sinônimo de aggregate_info
  • deaggregate — Removes the aggregated methods and properties from an object
Exemplos
aggregate_info
Object Aggregation


Gets aggregation information for a given object

Object Aggregation Funções
aggregate_methods_by_list
Object Aggregation Funções
PHP Manual

aggregate_info

(PHP 4 >= 4.3.0)

aggregate_info — Gets aggregation information for a given object

Descrição

array aggregate_info ( object $object )

Gets the aggregation information for the given object.

Parâmetros

object

Valor Retornado

Returns the aggregation information as an associative array of arrays of methods and properties. The key for the main array is the name of the aggregated class.

Exemplos

Exemplo #1 Using aggregate_info()

<?php

class Slicer {
    var $vegetable;

    function Slicer($vegetable)
    {
        $this->vegetable = $vegetable;
    }

    function slice_it($num_cuts)
    {
        echo "Doing some simple slicing\n";
        for ($i=0; $i < $num_cuts; $i++) {
            // do some slicing
        }
    }
}

class Dicer {
    var $vegetable;
    var $rotation_angle = 90;   // degrees

    function Dicer($vegetable)
    {
        $this->vegetable = $vegetable;
    }

    function dice_it($num_cuts)
    {
        echo "Cutting in one direction\n";
        for ($i=0; $i < $num_cuts; $i++) {
            // do some cutting
        }
        $this->rotate($this->rotation_angle);
        echo "Cutting in a second direction\n";
        for ($i=0; $i < $num_cuts; $i++) {
            // do some more cutting
        }
    }

    function rotate($deg)
    {
        echo "Now rotating {$this->vegetable} {$deg} degrees\n";
    }

    function _secret_super_dicing($num_cuts)
    {
        // so secret we cannot show you ;-)
    }
}

$obj = new Slicer('onion');
aggregate($obj, 'Dicer');
print_r(aggregate_info($obj));
?>

O exemplo acima irá imprimir:

Array
(
    [dicer] => Array
        (
            [methods] => Array
                (
                    [0] => dice_it
                    [1] => rotate
                )

            [properties] => Array
                (
                    [0] => rotation_angle
                )

        )

)
As you can see, all properties and methods of the Dicer class have been aggregated into our new object, with the exception of the class constructor and the method _secret_super_dicing()

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

Object Aggregation Funções
aggregate_methods_by_list
Object Aggregation Funções


Selective dynamic class methods aggregation to an object

aggregate_info
aggregate_methods_by_regexp
Object Aggregation Funções
PHP Manual

aggregate_methods_by_list

(PHP 4 >= 4.2.0)

aggregate_methods_by_list — Selective dynamic class methods aggregation to an object

Descrição

void aggregate_methods_by_list ( object $object , string $class_name , array $methods_list [, bool $exclude = false ] )

Aggregates methods from a class to an existing object using a list of method names.

The class constructor or methods whose names start with an underscore character (_), which are considered private to the aggregated class, are always excluded.

Parâmetros

object

class_name

methods_list

exclude

The optional parameter exclude is used to decide whether the list contains the names of methods to include in the aggregation (i.e. exclude is FALSE), or to exclude from the aggregation (exclude is TRUE).

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_info() - Gets aggregation information for a given object
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_info
aggregate_methods_by_regexp
Object Aggregation Funções


Selective class methods aggregation to an object using a regular expression

aggregate_methods_by_list
aggregate_methods
Object Aggregation Funções
PHP Manual

aggregate_methods_by_regexp

(PHP 4 >= 4.2.0)

aggregate_methods_by_regexp — Selective class methods aggregation to an object using a regular expression

Descrição

void aggregate_methods_by_regexp ( object $object , string $class_name , string $regexp [, bool $exclude = false ] )

Aggregates methods from a class to an existing object using a regular expression to match method names.

The class constructor or methods whose names start with an underscore character (_), which are considered private to the aggregated class, are always excluded.

Parâmetros

object

class_name

regexp

exclude

The optional parameter exclude is used to decide whether the regular expression will select the names of methods to include in the aggregation (i.e. exclude is FALSE), or to exclude from the aggregation (exclude is TRUE).

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_info() - Gets aggregation information for a given object
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_methods_by_list
aggregate_methods
Object Aggregation Funções


Dynamic class and object aggregation of methods

aggregate_methods_by_regexp
aggregate_properties_by_list
Object Aggregation Funções
PHP Manual

aggregate_methods

(PHP 4 >= 4.2.0)

aggregate_methods — Dynamic class and object aggregation of methods

Descrição

void aggregate_methods ( object $object , string $class_name )

Aggregates all methods defined in a class to an existing object, except for the class constructor, or methods whose names start with an underscore character (_) which are considered private to the aggregated class.

Parâmetros

object

class_name

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_info() - Gets aggregation information for a given object
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_methods_by_regexp
aggregate_properties_by_list
Object Aggregation Funções


Selective dynamic class properties aggregation to an object

aggregate_methods
aggregate_properties_by_regexp
Object Aggregation Funções
PHP Manual

aggregate_properties_by_list

(PHP 4 >= 4.2.0)

aggregate_properties_by_list — Selective dynamic class properties aggregation to an object

Descrição

void aggregate_properties_by_list ( object $object , string $class_name , array $properties_list [, bool $exclude = false ] )

Aggregates properties from a class to an existing object using a list of property names.

The properties whose names start with an underscore character (_), which are considered private to the aggregated class, are always excluded.

Parâmetros

object

class_name

properties_list

exclude

The optional parameter exclude is used to decide whether the list contains the names of class properties to include in the aggregation (i.e. exclude is FALSE), or to exclude from the aggregation (exclude is TRUE).

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • aggregate_info() - Gets aggregation information for a given object
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_methods
aggregate_properties_by_regexp
Object Aggregation Funções


Selective class properties aggregation to an object using a regular expression

aggregate_properties_by_list
aggregate_properties
Object Aggregation Funções
PHP Manual

aggregate_properties_by_regexp

(PHP 4 >= 4.2.0)

aggregate_properties_by_regexp — Selective class properties aggregation to an object using a regular expression

Descrição

void aggregate_properties_by_regexp ( object $object , string $class_name , string $regexp [, bool $exclude = false ] )

Aggregates properties from a class to an existing object using a regular expression to match their names.

The properties whose names start with an underscore character (_), which are considered private to the aggregated class, are always excluded.

Parâmetros

object

class_name

regexp

exclude

The optional parameter exclude is used to decide whether the regular expression will select the names of class properties to include in the aggregation (i.e. exclude is FALSE), or to exclude from the aggregation (exclude is TRUE).

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_info() - Gets aggregation information for a given object
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_properties_by_list
aggregate_properties
Object Aggregation Funções


Dynamic aggregation of class properties to an object

aggregate_properties_by_regexp
aggregate
Object Aggregation Funções
PHP Manual

aggregate_properties

(PHP 4 >= 4.2.0)

aggregate_properties — Dynamic aggregation of class properties to an object

Descrição

void aggregate_properties ( object $object , string $class_name )

Aggregates all properties defined in a class to an existing object, except for properties whose names start with an underscore character (_) which are considered private to the aggregated class.

Parâmetros

object

class_name

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties()
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_properties_by_regexp
aggregate
Object Aggregation Funções


Dynamic class and object aggregation of methods and properties

aggregate_properties
aggregation_info
Object Aggregation Funções
PHP Manual

aggregate

(PHP 4 >= 4.2.0)

aggregate — Dynamic class and object aggregation of methods and properties

Descrição

void aggregate ( object $object , string $class_name )

Aggregates methods and properties defined in a class to an existing object. Methods and properties with names starting with an underscore character (_) are considered private to the aggregated class and are not used, constructors are also excluded from the aggregation procedure.

Parâmetros

object

class_name

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate_info() - Gets aggregation information for a given object
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate() - Removes the aggregated methods and properties from an object

aggregate_properties
aggregation_info
Object Aggregation Funções


Sinônimo de aggregate_info

aggregate
deaggregate
Object Aggregation Funções
PHP Manual

aggregation_info

(PHP 4 >= 4.2.0 and < 4.3.0)

aggregation_info — Sinônimo de aggregate_info()

Descrição

Esta função é um apelido para: aggregate_info().

aggregate
deaggregate
Object Aggregation Funções


Removes the aggregated methods and properties from an object

aggregation_info
Reflection
Object Aggregation Funções
PHP Manual

deaggregate

(PHP 4 >= 4.2.0)

deaggregate — Removes the aggregated methods and properties from an object

Descrição

void deaggregate ( object $object [, string $class_name ] )

Removes the methods and properties from classes that were aggregated to an object.

Parâmetros

object

class_name

If the optional class_name parameters is passed, only those methods and properties defined in that class are removed, otherwise all aggregated methods and properties are eliminated.

Valor Retornado

Não há valor retornado.

Veja Também

  • aggregate() - Dynamic class and object aggregation of methods and properties
  • aggregate_methods() - Dynamic class and object aggregation of methods
  • aggregate_methods_by_list() - Selective dynamic class methods aggregation to an object
  • aggregate_methods_by_regexp() - Selective class methods aggregation to an object using a regular expression
  • aggregate_properties() - Dynamic aggregation of class properties to an object
  • aggregate_properties_by_list() - Selective dynamic class properties aggregation to an object
  • aggregate_properties_by_regexp() - Selective class properties aggregation to an object using a regular expression
  • deaggregate()

aggregation_info
Reflection
Object Aggregation Funções


Reflection

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Extending
  • Reflection — The Reflection class
    • Reflection::export — Exports
    • Reflection::getModifierNames — Gets modifier names
  • ReflectionClass — The ReflectionClass class
    • ReflectionClass::__clone — Clones object
    • ReflectionClass::__construct — Constructs a ReflectionClass
    • ReflectionClass::export — Exports a class
    • ReflectionClass::getConstant — Gets defined constants
    • ReflectionClass::getConstants — Gets constants
    • ReflectionClass::getConstructor — Gets constructor
    • ReflectionClass::getDefaultProperties — Gets default properties
    • ReflectionClass::getDocComment — Gets doc comments
    • ReflectionClass::getEndLine — Gets end line
    • ReflectionClass::getExtension — Gets extension info
    • ReflectionClass::getExtensionName — Gets an extensions name
    • ReflectionClass::getFileName — Gets the filename of the file in which the class has been defined
    • ReflectionClass::getInterfaceNames — Gets the interface names
    • ReflectionClass::getInterfaces — Gets the interfaces
    • ReflectionClass::getMethod — Gets a ReflectionMethod
    • ReflectionClass::getMethods — Gets a list of methods
    • ReflectionClass::getModifiers — Gets modifiers
    • ReflectionClass::getName — Gets class name
    • ReflectionClass::getNamespaceName — Gets namespace name
    • ReflectionClass::getParentClass — Gets parent class
    • ReflectionClass::getProperties — Gets properties
    • ReflectionClass::getProperty — Gets property
    • ReflectionClass::getShortName — Gets short name
    • ReflectionClass::getStartLine — Gets starting line number
    • ReflectionClass::getStaticProperties — Gets static properties
    • ReflectionClass::getStaticPropertyValue — Gets static property value
    • ReflectionClass::hasConstant — Checks if constant is defined
    • ReflectionClass::hasMethod — Checks if method is defined
    • ReflectionClass::hasProperty — Checks if property is defined
    • ReflectionClass::implementsInterface — Implements interface
    • ReflectionClass::inNamespace — Checks if in namespace
    • ReflectionClass::isAbstract — Checks if class is abstract
    • ReflectionClass::isFinal — Checks if class is final
    • ReflectionClass::isInstance — Checks class for instance
    • ReflectionClass::isInstantiable — Checks if instantiable
    • ReflectionClass::isInterface — Checks if interface
    • ReflectionClass::isInternal — Checks if internal
    • ReflectionClass::isIterateable — Checks if iterateable
    • ReflectionClass::isSubclassOf — Checks if a subclass
    • ReflectionClass::isUserDefined — Checks if user defined
    • ReflectionClass::newInstance — Creates a new class instance from given arguments.
    • ReflectionClass::newInstanceArgs — Creates a new class instance from given arguments.
    • ReflectionClass::setStaticPropertyValue — Sets static property value
    • ReflectionClass::__toString — Returns the string representation of the ReflectionClass object.
  • ReflectionExtension — The ReflectionExtension class
    • ReflectionExtension::__clone — Clones
    • ReflectionExtension::__construct — Constructs a ReflectionExtension
    • ReflectionExtension::export — Export
    • ReflectionExtension::getClasses — Gets classes
    • ReflectionExtension::getClassNames — Gets class names
    • ReflectionExtension::getConstants — Gets constants
    • ReflectionExtension::getDependencies — Gets dependencies
    • ReflectionExtension::getFunctions — Gets extension functions
    • ReflectionExtension::getINIEntries — Gets extension ini entries
    • ReflectionExtension::getName — Gets extension name
    • ReflectionExtension::getVersion — Gets extension version
    • ReflectionExtension::info — Gets extension info
    • ReflectionExtension::__toString — To string
  • ReflectionFunction — The ReflectionFunction class
    • ReflectionFunction::__construct — Constructs a ReflectionFunction object
    • ReflectionFunction::export — Exports function
    • ReflectionFunction::invoke — Invokes function
    • ReflectionFunction::invokeArgs — Invokes function args
    • ReflectionFunction::isDisabled — Checks if function is disabled
    • ReflectionFunction::__toString — To string
  • ReflectionFunctionAbstract — The ReflectionFunctionAbstract class
    • ReflectionFunctionAbstract::__clone — Clones function
    • ReflectionFunctionAbstract::getDocComment — Gets doc comment
    • ReflectionFunctionAbstract::getEndLine — Gets end line number
    • ReflectionFunctionAbstract::getExtension — Gets extension info
    • ReflectionFunctionAbstract::getExtensionName — Gets extension name
    • ReflectionFunctionAbstract::getFileName — Gets file name
    • ReflectionFunctionAbstract::getName — Gets function name
    • ReflectionFunctionAbstract::getNamespaceName — Gets namespace name
    • ReflectionFunctionAbstract::getNumberOfParameters — Gets number of parameters
    • ReflectionFunctionAbstract::getNumberOfRequiredParameters — Gets number of required parameters
    • ReflectionFunctionAbstract::getParameters — Gets parameters
    • ReflectionFunctionAbstract::getShortName — Gets function short name
    • ReflectionFunctionAbstract::getStartLine — Gets starting line number
    • ReflectionFunctionAbstract::getStaticVariables — Gets static variables
    • ReflectionFunctionAbstract::inNamespace — Checks if function in namespace
    • ReflectionFunctionAbstract::isClosure — Checks if closure
    • ReflectionFunctionAbstract::isDeprecated — Checks if deprecated
    • ReflectionFunctionAbstract::isInternal — Checks if is internal
    • ReflectionFunctionAbstract::isUserDefined — Checks if user defined
    • ReflectionFunctionAbstract::returnsReference — Checks if returns reference
    • ReflectionFunctionAbstract::__toString — To string
  • ReflectionMethod — The ReflectionMethod class
    • ReflectionMethod::__construct — Constructs a ReflectionMethod
    • ReflectionMethod::export — Export a reflection method.
    • ReflectionMethod::getDeclaringClass — Gets declaring class for the reflected method.
    • ReflectionMethod::getModifiers — Gets the method modifiers
    • ReflectionMethod::getPrototype — Gets the method prototype (if there is one).
    • ReflectionMethod::invoke — Invoke
    • ReflectionMethod::invokeArgs — Invoke args
    • ReflectionMethod::isAbstract — Checks if method is abstract
    • ReflectionMethod::isConstructor — Checks if method is a constructor
    • ReflectionMethod::isDestructor — Checks if method is a destructor
    • ReflectionMethod::isFinal — Checks if method is final
    • ReflectionMethod::isPrivate — Checks if method is private
    • ReflectionMethod::isProtected — Checks if method is protected
    • ReflectionMethod::isPublic — Checks if method is public
    • ReflectionMethod::isStatic — Checks if method is static
    • ReflectionMethod::setAccessible — Set method accessibility
    • ReflectionMethod::__toString — Returns the string representation of the Reflection method object.
  • ReflectionObject — The ReflectionObject class
    • ReflectionObject::__construct — Constructs a ReflectionObject
    • ReflectionObject::export — Export
  • ReflectionParameter — The ReflectionParameter class
    • ReflectionParameter::allowsNull — Checks if null is allowed
    • ReflectionParameter::__clone — Clone
    • ReflectionParameter::__construct — Construct
    • ReflectionParameter::export — Exports
    • ReflectionParameter::getClass — Get class
    • ReflectionParameter::getDeclaringClass — Gets declaring class
    • ReflectionParameter::getDeclaringFunction — Gets declaring function
    • ReflectionParameter::getDefaultValue — Gets default parameter value
    • ReflectionParameter::getName — Gets parameter name
    • ReflectionParameter::getPosition — Gets parameter position
    • ReflectionParameter::isArray — Checks if parameter expects an array
    • ReflectionParameter::isDefaultValueAvailable — Checks if a default value is available
    • ReflectionParameter::isOptional — Checks if optional
    • ReflectionParameter::isPassedByReference — Checks if passed by reference
    • ReflectionParameter::__toString — To string
  • ReflectionProperty — The ReflectionProperty class
    • ReflectionProperty::__clone — Clone
    • ReflectionProperty::__construct — Construct a ReflectionProperty object
    • ReflectionProperty::export — Export
    • ReflectionProperty::getDeclaringClass — Gets declaring class
    • ReflectionProperty::getDocComment — Gets doc comment
    • ReflectionProperty::getModifiers — Gets modifiers
    • ReflectionProperty::getName — Gets property name
    • ReflectionProperty::getValue — Gets value
    • ReflectionProperty::isDefault — Checks if default value
    • ReflectionProperty::isPrivate — Checks if property is private
    • ReflectionProperty::isProtected — Checks if property is protected
    • ReflectionProperty::isPublic — Checks if property is public
    • ReflectionProperty::isStatic — Checks if property is static
    • ReflectionProperty::setAccessible — Set property accessibility
    • ReflectionProperty::setValue — Set property value
    • ReflectionProperty::__toString — To string
  • Reflector — The Reflector interface
    • Reflector::export — Exports
    • Reflector::__toString — To string
deaggregate
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

PHP 5 comes with a complete reflection API that adds the ability to reverse-engineer classes, interfaces, functions, methods and extensions. Additionally, the reflection API offers ways to retrieve doc comments for functions, classes and methods.

Please note that certain parts of the internal API are missing the necessary code to work with the Reflection extension. E.g., an internal PHP class might be missing reflection data for properties. These few cases are considered bugs, however, so they should be discovered and fixed.

Reflection
Instalação/Configuração
Reflection


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Reflection


Constantes pré-definidas

Each class describes its own constants.

Tipos Resource
Exemplos
Reflection


Exemplos

Many examples exist within the Reflection documentation, typically within the __construct documentation for each class.

Exemplo #1 Reflection Example from Shell (a Terminal)

$ php --rf strlen
$ php --rc finfo
$ php --re json
$ php --ri dom

O exemplo acima irá imprimir algo similar a:

Function [ <internal:Core> function strlen ] {

  - Parameters [1] {
    Parameter #0 [ <required> $str ]
  }
}

Class [ <internal:fileinfo> class finfo ] {

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [0] {
  }

  - Methods [4] {
    Method [ <internal:fileinfo, ctor> public method finfo ] {

      - Parameters [2] {
        Parameter #0 [ <optional> $options ]
        Parameter #1 [ <optional> $arg ]
      }
    }

    Method [ <internal:fileinfo> public method set_flags ] {

      - Parameters [1] {
        Parameter #0 [ <required> $options ]
      }
    }

    Method [ <internal:fileinfo> public method file ] {

      - Parameters [3] {
        Parameter #0 [ <required> $filename ]
        Parameter #1 [ <optional> $options ]
        Parameter #2 [ <optional> $context ]
      }
    }

    Method [ <internal:fileinfo> public method buffer ] {

      - Parameters [3] {
        Parameter #0 [ <required> $string ]
        Parameter #1 [ <optional> $options ]
        Parameter #2 [ <optional> $context ]
      }
    }
  }
}

Extension [ <persistent> extension #23 json version 1.2.1 ] {

  - Constants [10] {
    Constant [ integer JSON_HEX_TAG ] { 1 }
    Constant [ integer JSON_HEX_AMP ] { 2 }
    Constant [ integer JSON_HEX_APOS ] { 4 }
    Constant [ integer JSON_HEX_QUOT ] { 8 }
    Constant [ integer JSON_FORCE_OBJECT ] { 16 }
    Constant [ integer JSON_ERROR_NONE ] { 0 }
    Constant [ integer JSON_ERROR_DEPTH ] { 1 }
    Constant [ integer JSON_ERROR_STATE_MISMATCH ] { 2 }
    Constant [ integer JSON_ERROR_CTRL_CHAR ] { 3 }
    Constant [ integer JSON_ERROR_SYNTAX ] { 4 }
  }

  - Functions {
    Function [ <internal:json> function json_encode ] {

      - Parameters [2] {
        Parameter #0 [ <required> $value ]
        Parameter #1 [ <optional> $options ]
      }
    }
    Function [ <internal:json> function json_decode ] {

      - Parameters [3] {
        Parameter #0 [ <required> $json ]
        Parameter #1 [ <optional> $assoc ]
        Parameter #2 [ <optional> $depth ]
      }
    }
    Function [ <internal:json> function json_last_error ] {

      - Parameters [0] {
      }
    }
  }
}

dom

DOM/XML => enabled
DOM/XML API Version => 20031129
libxml Version => 2.7.3
HTML Support => enabled
XPath Support => enabled
XPointer Support => enabled
Schema Support => enabled
RelaxNG Support => enabled
Constantes pré-definidas
Extending
Reflection


Extending

In case you want to create specialized versions of the built-in classes (say, for creating colorized HTML when being exported, having easy-access member variables instead of methods or having utility methods), you may go ahead and extend them.

Exemplo #2 Extending the built-in classes

<?php
/**
 * My Reflection_Method class
 */
class My_Reflection_Method extends ReflectionMethod
{
    public $visibility = array();

    public function __construct($o, $m)
    {
        parent::__construct($o, $m);
        $this->visibility = Reflection::getModifierNames($this->getModifiers());
    }
}

/**
 * Demo class #1
 *
 */
class T {
    protected function x() {}
}

/**
 * Demo class #2
 *
 */
class U extends T {
    function x() {}
}

// Print out information
var_dump(new My_Reflection_Method('U', 'x'));
?>

O exemplo acima irá imprimir algo similar a:

object(My_Reflection_Method)#1 (3) {
  ["visibility"]=>
  array(1) {
    [0]=>
    string(6) "public"
  }
  ["name"]=>
  string(1) "x"
  ["class"]=>
  string(1) "U"
}
Cuidado

If you're overwriting the constructor, remember to call the parent's constructor before any code you insert. Failing to do so will result in the following: Fatal error: Internal error: Failed to retrieve the reflection object

Exemplos
Reflection
Reflection


The Reflection class

Introdução

The reflection class.

Sinopse da classe

Reflection {
/* Methods */
public static void export ( Reflector $reflector [, bool $return = false ] )
public static array getModifierNames ( int $modifiers )
}

Índice

  • Reflection::export — Exports
  • Reflection::getModifierNames — Gets modifier names
Extending
Reflection::export
Reflection


Exports

Reflection
Reflection::getModifierNames
Reflection
PHP Manual

Reflection::export

(PHP 5)

Reflection::export — Exports

Descrição

public static void Reflection::export ( Reflector $reflector [, bool $return = false ] )

Exports a reflection.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

reflector

The reflection to export.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • Reflection::getModifierNames() - Gets modifier names

Reflection
Reflection::getModifierNames
Reflection


Gets modifier names

Reflection::export
ReflectionClass
Reflection
PHP Manual

Reflection::getModifierNames

(PHP 5)

Reflection::getModifierNames — Gets modifier names

Descrição

public static array Reflection::getModifierNames ( int $modifiers )

Gets modifier names.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

modifiers

The modifiers to get, which is from a numeric value.

Valor Retornado

An array of modifier names.

Veja Também

  • Reflection::export() - Exports

Reflection::export
ReflectionClass
Reflection


The ReflectionClass class

Introdução

The ReflectionClass class reports information about a class.

Sinopse da classe

ReflectionClass implements Reflector {
/* Constants */
const integer ReflectionClass::IS_IMPLICIT_ABSTRACT = 16 ;
const integer ReflectionClass::IS_EXPLICIT_ABSTRACT = 32 ;
const integer ReflectionClass::IS_FINAL = 64 ;
/* Properties */
public $name ;
/* Methods */
final private void __clone ( void )
__construct ( mixed $argument )
public static string export ( mixed $argument [, bool $return = false ] )
public mixed getConstant ( string $name )
public array getConstants ( void )
public object getConstructor ( void )
public array getDefaultProperties ( void )
public string getDocComment ( void )
public int getEndLine ( void )
public ReflectionExtension getExtension ( void )
public string getExtensionName ( void )
public string getFileName ( void )
public array getInterfaceNames ( void )
public array getInterfaces ( void )
public object getMethod ( string $name )
public array getMethods ([ string $filter ] )
public int getModifiers ( void )
public string getName ( void )
public string getNamespaceName ( void )
public object getParentClass ( void )
public array getProperties ([ int $filter ] )
public ReflectionProperty getProperty ( string $name )
public string getShortName ( void )
public int getStartLine ( void )
public array getStaticProperties ( void )
public mixed getStaticPropertyValue ( string $name [, string $default ] )
public bool hasConstant ( string $name )
public bool hasMethod ( string $name )
public bool hasProperty ( string $name )
public bool implementsInterface ( string $interface )
public bool inNamespace ( void )
public bool isAbstract ( void )
public bool isFinal ( void )
public bool isInstance ( object $object )
public bool isInstantiable ( void )
public bool isInterface ( void )
public bool isInternal ( void )
public bool isIterateable ( void )
public bool isSubclassOf ( string $class )
public bool isUserDefined ( void )
public object newInstance ( mixed $args [, mixed $... ] )
public object newInstanceArgs ([ array $args ] )
public void setStaticPropertyValue ( string $name , string $value )
public string __toString ( void )
}

Propriedades

name

Prop description

Constantes pré-definidas

ReflectionClass Node Types

ReflectionClass::IS_IMPLICIT_ABSTRACT

ReflectionClass::IS_EXPLICIT_ABSTRACT

ReflectionClass::IS_FINAL

Índice

  • ReflectionClass::__clone — Clones object
  • ReflectionClass::__construct — Constructs a ReflectionClass
  • ReflectionClass::export — Exports a class
  • ReflectionClass::getConstant — Gets defined constants
  • ReflectionClass::getConstants — Gets constants
  • ReflectionClass::getConstructor — Gets constructor
  • ReflectionClass::getDefaultProperties — Gets default properties
  • ReflectionClass::getDocComment — Gets doc comments
  • ReflectionClass::getEndLine — Gets end line
  • ReflectionClass::getExtension — Gets extension info
  • ReflectionClass::getExtensionName — Gets an extensions name
  • ReflectionClass::getFileName — Gets the filename of the file in which the class has been defined
  • ReflectionClass::getInterfaceNames — Gets the interface names
  • ReflectionClass::getInterfaces — Gets the interfaces
  • ReflectionClass::getMethod — Gets a ReflectionMethod
  • ReflectionClass::getMethods — Gets a list of methods
  • ReflectionClass::getModifiers — Gets modifiers
  • ReflectionClass::getName — Gets class name
  • ReflectionClass::getNamespaceName — Gets namespace name
  • ReflectionClass::getParentClass — Gets parent class
  • ReflectionClass::getProperties — Gets properties
  • ReflectionClass::getProperty — Gets property
  • ReflectionClass::getShortName — Gets short name
  • ReflectionClass::getStartLine — Gets starting line number
  • ReflectionClass::getStaticProperties — Gets static properties
  • ReflectionClass::getStaticPropertyValue — Gets static property value
  • ReflectionClass::hasConstant — Checks if constant is defined
  • ReflectionClass::hasMethod — Checks if method is defined
  • ReflectionClass::hasProperty — Checks if property is defined
  • ReflectionClass::implementsInterface — Implements interface
  • ReflectionClass::inNamespace — Checks if in namespace
  • ReflectionClass::isAbstract — Checks if class is abstract
  • ReflectionClass::isFinal — Checks if class is final
  • ReflectionClass::isInstance — Checks class for instance
  • ReflectionClass::isInstantiable — Checks if instantiable
  • ReflectionClass::isInterface — Checks if interface
  • ReflectionClass::isInternal — Checks if internal
  • ReflectionClass::isIterateable — Checks if iterateable
  • ReflectionClass::isSubclassOf — Checks if a subclass
  • ReflectionClass::isUserDefined — Checks if user defined
  • ReflectionClass::newInstance — Creates a new class instance from given arguments.
  • ReflectionClass::newInstanceArgs — Creates a new class instance from given arguments.
  • ReflectionClass::setStaticPropertyValue — Sets static property value
  • ReflectionClass::__toString — Returns the string representation of the ReflectionClass object.
Reflection::getModifierNames
ReflectionClass::__clone
Reflection


Clones object

ReflectionClass
ReflectionClass::__construct
ReflectionClass
PHP Manual

ReflectionClass::__clone

(PHP 5)

ReflectionClass::__clone — Clones object

Descrição

final private void ReflectionClass::__clone ( void )

Clones.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionClass::__tostring() - Returns the string representation of the ReflectionClass object.
  • Object cloning

ReflectionClass
ReflectionClass::__construct
ReflectionClass


Constructs a ReflectionClass

ReflectionClass::__clone
ReflectionClass::export
ReflectionClass
PHP Manual

ReflectionClass::__construct

(PHP 5)

ReflectionClass::__construct — Constructs a ReflectionClass

Descrição

ReflectionClass::__construct ( mixed $argument )

Constructs a new ReflectionClass object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

argument

Either a string containing the name of the class to reflect, or an object.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Basic usage ReflectionClass

<?php
Reflection::export(new ReflectionClass('Exception'));
?>

O exemplo acima irá imprimir algo similar a:

Class [ <internal:Core> class Exception ] {

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [7] {
    Property [ <default> protected $message ]
    Property [ <default> private $string ]
    Property [ <default> protected $code ]
    Property [ <default> protected $file ]
    Property [ <default> protected $line ]
    Property [ <default> private $trace ]
    Property [ <default> private $previous ]
  }

  - Methods [10] {
    Method [ <internal:Core> final private method __clone ] {
    }

    Method [ <internal:Core, ctor> public method __construct ] {

      - Parameters [3] {
        Parameter #0 [ <optional> $message ]
        Parameter #1 [ <optional> $code ]
        Parameter #2 [ <optional> $previous ]
      }
    }

    Method [ <internal:Core> final public method getMessage ] {
    }

    Method [ <internal:Core> final public method getCode ] {
    }

    Method [ <internal:Core> final public method getFile ] {
    }

    Method [ <internal:Core> final public method getLine ] {
    }

    Method [ <internal:Core> final public method getTrace ] {
    }

    Method [ <internal:Core> final public method getPrevious ] {
    }

    Method [ <internal:Core> final public method getTraceAsString ] {
    }

    Method [ <internal:Core> public method __toString ] {
    }
  }
}

Veja Também

  • ReflectionObject::__construct() - Constructs a ReflectionObject
  • Constructors

ReflectionClass::__clone
ReflectionClass::export
ReflectionClass


Exports a class

ReflectionClass::__construct
ReflectionClass::getConstant
ReflectionClass
PHP Manual

ReflectionClass::export

(PHP 5)

ReflectionClass::export — Exports a class

Descrição

public static string ReflectionClass::export ( mixed $argument [, bool $return = false ] )

Exports a reflected class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

argument

The reflection to export.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • ReflectionClass::getName() - Gets class name

ReflectionClass::__construct
ReflectionClass::getConstant
ReflectionClass


Gets defined constants

ReflectionClass::export
ReflectionClass::getConstants
ReflectionClass
PHP Manual

ReflectionClass::getConstant

(PHP 5)

ReflectionClass::getConstant — Gets defined constants

Descrição

public mixed ReflectionClass::getConstant ( string $name )

Gets the defined constants.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

name

Valor Retornado

Veja Também

  • ReflectionClass::getConstants() - Gets constants

ReflectionClass::export
ReflectionClass::getConstants
ReflectionClass


Gets constants

ReflectionClass::getConstant
ReflectionClass::getConstructor
ReflectionClass
PHP Manual

ReflectionClass::getConstants

(PHP 5)

ReflectionClass::getConstants — Gets constants

Descrição

public array ReflectionClass::getConstants ( void )

Gets defined constants from a class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of constants.

Veja Também

  • ReflectionClass::getConstant() - Gets defined constants

ReflectionClass::getConstant
ReflectionClass::getConstructor
ReflectionClass


Gets constructor

ReflectionClass::getConstants
ReflectionClass::getDefaultProperties
ReflectionClass
PHP Manual

ReflectionClass::getConstructor

(PHP 5)

ReflectionClass::getConstructor — Gets constructor

Descrição

public object ReflectionClass::getConstructor ( void )

Gets the constructor from a class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionMethod object.

Veja Também

  • ReflectionClass::getName() - Gets class name

ReflectionClass::getConstants
ReflectionClass::getDefaultProperties
ReflectionClass


Gets default properties

ReflectionClass::getConstructor
ReflectionClass::getDocComment
ReflectionClass
PHP Manual

ReflectionClass::getDefaultProperties

(PHP 5)

ReflectionClass::getDefaultProperties — Gets default properties

Descrição

public array ReflectionClass::getDefaultProperties ( void )

Gets default properties from a class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of default properties.

Veja Também

  • ReflectionClass::getProperties() - Gets properties

ReflectionClass::getConstructor
ReflectionClass::getDocComment
ReflectionClass


Gets doc comments

ReflectionClass::getDefaultProperties
ReflectionClass::getEndLine
ReflectionClass
PHP Manual

ReflectionClass::getDocComment

(PHP 5 >= 5.1.0)

ReflectionClass::getDocComment — Gets doc comments

Descrição

public string ReflectionClass::getDocComment ( void )

Gets doc comments from a class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The doc comment if it exists, otherwise FALSE

Exemplos

Exemplo #1 ReflectionClass::getDocComment() example

<?php
/**
* A test class
*
* @param  foo bar
* @return baz
*/
class TestClass { }

$rc = new ReflectionClass('TestClass');
var_dump($rc->getDocComment())
?>

O exemplo acima irá imprimir:

string(55) "/**
* A test class
*
* @param  foo bar
* @return baz
*/"

Veja Também

  • ReflectionClass::getName() - Gets class name

ReflectionClass::getDefaultProperties
ReflectionClass::getEndLine
ReflectionClass


Gets end line

ReflectionClass::getDocComment
ReflectionClass::getExtension
ReflectionClass
PHP Manual

ReflectionClass::getEndLine

(PHP 5)

ReflectionClass::getEndLine — Gets end line

Descrição

public int ReflectionClass::getEndLine ( void )

Gets end line number from a user-defined class definition.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The ending line number of the user defined class, or FALSE if unknown.

Exemplos

Exemplo #1 ReflectionClass::getEndLine() example

<?php
// Test Class
class TestClass { }

$rc = new ReflectionClass('TestClass');

echo $rc->getEndLine();
?>

O exemplo acima irá imprimir:

3

Veja Também

  • ReflectionClass::getStartLine() - Gets starting line number

ReflectionClass::getDocComment
ReflectionClass::getExtension
ReflectionClass


Gets extension info

ReflectionClass::getEndLine
ReflectionClass::getExtensionName
ReflectionClass
PHP Manual

ReflectionClass::getExtension

(PHP 5)

ReflectionClass::getExtension — Gets extension info

Descrição

public ReflectionExtension ReflectionClass::getExtension ( void )

Gets an extensions ReflectionExtension object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionExtension object.

Veja Também

  • ReflectionClass::getExtensionName() - Gets an extensions name

ReflectionClass::getEndLine
ReflectionClass::getExtensionName
ReflectionClass


Gets an extensions name

ReflectionClass::getExtension
ReflectionClass::getFileName
ReflectionClass
PHP Manual

ReflectionClass::getExtensionName

(PHP 5)

ReflectionClass::getExtensionName — Gets an extensions name

Descrição

public string ReflectionClass::getExtensionName ( void )

Gets an extensions name.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The extensions name.

Veja Também

  • ReflectionClass::getExtension() - Gets extension info

ReflectionClass::getExtension
ReflectionClass::getFileName
ReflectionClass


Gets the filename of the file in which the class has been defined

ReflectionClass::getExtensionName
ReflectionClass::getInterfaceNames
ReflectionClass
PHP Manual

ReflectionClass::getFileName

(PHP 5)

ReflectionClass::getFileName — Gets the filename of the file in which the class has been defined

Descrição

public string ReflectionClass::getFileName ( void )

Gets the filename of the file in which the class has been defined.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the filename of the file in which the class has been defined. If the class is defined in the PHP core or in a PHP extension, FALSE is returned.

Veja Também

  • ReflectionClass::getExtensionName() - Gets an extensions name

ReflectionClass::getExtensionName
ReflectionClass::getInterfaceNames
ReflectionClass


Gets the interface names

ReflectionClass::getFileName
ReflectionClass::getInterfaces
ReflectionClass
PHP Manual

ReflectionClass::getInterfaceNames

(PHP 5 >= 5.2.0)

ReflectionClass::getInterfaceNames — Gets the interface names

Descrição

public array ReflectionClass::getInterfaceNames ( void )

Get the interface names.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A numerical array with interface names as the values.

Exemplos

Exemplo #1 ReflectionClass::getInterfaceNames() example

<?php
interface Foo { }

interface Bar { }

class Baz implements Foo, Bar { }

$rc1 = new ReflectionClass("Baz");

print_r($rc1->getInterfaceNames());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [0] => Foo
    [1] => Bar
)

Veja Também

  • ReflectionClass::getInterfaces() - Gets the interfaces

ReflectionClass::getFileName
ReflectionClass::getInterfaces
ReflectionClass


Gets the interfaces

ReflectionClass::getInterfaceNames
ReflectionClass::getMethod
ReflectionClass
PHP Manual

ReflectionClass::getInterfaces

(PHP 5)

ReflectionClass::getInterfaces — Gets the interfaces

Descrição

public array ReflectionClass::getInterfaces ( void )

Gets the interfaces.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An associative array of interfaces, with keys as interface names and the array values as ReflectionClass objects.

Exemplos

Exemplo #1 ReflectionClass::getInterfaces() example

<?php
interface Foo { }

interface Bar { }

class Baz implements Foo, Bar { }

$rc1 = new ReflectionClass("Baz");

print_r($rc1->getInterfaces());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [Foo] => ReflectionClass Object
        (
            [name] => Foo
        )

    [Bar] => ReflectionClass Object
        (
            [name] => Bar
        )

)

Veja Também

  • ReflectionClass::getInterfaceNames() - Gets the interface names

ReflectionClass::getInterfaceNames
ReflectionClass::getMethod
ReflectionClass


Gets a ReflectionMethod

ReflectionClass::getInterfaces
ReflectionClass::getMethods
ReflectionClass
PHP Manual

ReflectionClass::getMethod

(PHP 5)

ReflectionClass::getMethod — Gets a ReflectionMethod

Descrição

public object ReflectionClass::getMethod ( string $name )

Gets a ReflectionMethod about a method.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

name

The method name to reflect.

Valor Retornado

A ReflectionMethod.

Veja Também

  • ReflectionClass::getMethod()

ReflectionClass::getInterfaces
ReflectionClass::getMethods
ReflectionClass


Gets a list of methods

ReflectionClass::getMethod
ReflectionClass::getModifiers
ReflectionClass
PHP Manual

ReflectionClass::getMethods

(PHP 5)

ReflectionClass::getMethods — Gets a list of methods

Descrição

public array ReflectionClass::getMethods ([ string $filter ] )

Gets a list of methods.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

filter

Any combination of ReflectionMethod::IS_STATIC,
ReflectionMethod::IS_PUBLIC,
ReflectionMethod::IS_PROTECTED,
ReflectionMethod::IS_PRIVATE,
ReflectionMethod::IS_ABSTRACT,
ReflectionMethod::IS_FINAL.

Valor Retornado

An array of methods.

Veja Também

  • ReflectionClass::getMethod() - Gets a ReflectionMethod

ReflectionClass::getMethod
ReflectionClass::getModifiers
ReflectionClass


Gets modifiers

ReflectionClass::getMethods
ReflectionClass::getName
ReflectionClass
PHP Manual

ReflectionClass::getModifiers

(PHP 5)

ReflectionClass::getModifiers — Gets modifiers

Descrição

public int ReflectionClass::getModifiers ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionClass::getProperties() - Gets properties

ReflectionClass::getMethods
ReflectionClass::getName
ReflectionClass


Gets class name

ReflectionClass::getModifiers
ReflectionClass::getNamespaceName
ReflectionClass
PHP Manual

ReflectionClass::getName

(PHP 5)

ReflectionClass::getName — Gets class name

Descrição

public string ReflectionClass::getName ( void )

Gets the class name.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The class name.

Exemplos

Exemplo #1 ReflectionClass::getName() example

<?php
namespace A\B;

class Foo { }

$function = new \ReflectionClass('stdClass');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());

$function = new \ReflectionClass('A\\B\\Foo');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());
?>

O exemplo acima irá imprimir:

bool(false)
string(8) "stdClass"
string(0) ""
string(8) "stdClass"

bool(true)
string(7) "A\B\Foo"
string(3) "A\B"
string(3) "Foo"

Veja Também

  • ReflectionClass::getNamespaceName() - Gets namespace name

ReflectionClass::getModifiers
ReflectionClass::getNamespaceName
ReflectionClass


Gets namespace name

ReflectionClass::getName
ReflectionClass::getParentClass
ReflectionClass
PHP Manual

ReflectionClass::getNamespaceName

(PHP 5 >= 5.3.0)

ReflectionClass::getNamespaceName — Gets namespace name

Descrição

public string ReflectionClass::getNamespaceName ( void )

Gets the namespace name.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The namespace name.

Exemplos

Exemplo #1 ReflectionClass::getNamespaceName() example

<?php
namespace A\B;

class Foo { }

$function = new \ReflectionClass('stdClass');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());

$function = new \ReflectionClass('A\\B\\Foo');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());
?>

O exemplo acima irá imprimir:

bool(false)
string(8) "stdClass"
string(0) ""
string(8) "stdClass"

bool(true)
string(7) "A\B\Foo"
string(3) "A\B"
string(3) "Foo"

Veja Também

  • ReflectionClass::getParentClass() - Gets parent class
  • namespaces

ReflectionClass::getName
ReflectionClass::getParentClass
ReflectionClass


Gets parent class

ReflectionClass::getNamespaceName
ReflectionClass::getProperties
ReflectionClass
PHP Manual

ReflectionClass::getParentClass

(PHP 5)

ReflectionClass::getParentClass — Gets parent class

Descrição

public object ReflectionClass::getParentClass ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionClass.

Veja Também

  • ReflectionClass::__construct() - Constructs a ReflectionClass

ReflectionClass::getNamespaceName
ReflectionClass::getProperties
ReflectionClass


Gets properties

ReflectionClass::getParentClass
ReflectionClass::getProperty
ReflectionClass
PHP Manual

ReflectionClass::getProperties

(PHP 5)

ReflectionClass::getProperties — Gets properties

Descrição

public array ReflectionClass::getProperties ([ int $filter ] )

Retrieves reflected properties.

Parâmetros

filter

The optional filter, for filtering desired property types. It's configured using the ReflectionProperty constants, and defaults to all property types.

Valor Retornado

An array of ReflectionProperty objects.

Exemplos

Exemplo #1 ReflectionClass::getProperties() filtering example

This example demonstrates usage of the optional filter parameter, where it essentially skips private properties.

<?php
class Foo {
    public    $foo  = 1;
    protected $bar  = 2;
    private   $baz  = 3;
}

$foo = new Foo();

$reflect = new ReflectionClass($foo);
$props   = $reflect->getProperties(ReflectionProperty::IS_PUBLIC | ReflectionProperty::IS_PROTECTED);

foreach ($props as $prop) {
    print $prop->getName() . "\n";
}

var_dump($props);

?>

O exemplo acima irá imprimir algo similar a:

foo
bar
array(2) {
  [0]=>
  object(ReflectionProperty)#3 (2) {
    ["name"]=>
    string(3) "foo"
    ["class"]=>
    string(3) "Foo"
  }
  [1]=>
  object(ReflectionProperty)#4 (2) {
    ["name"]=>
    string(3) "bar"
    ["class"]=>
    string(3) "Foo"
  }
}

Veja Também

  • ReflectionClass::getProperty() - Gets property
  • ReflectionProperty
  • ReflectionProperty constants

ReflectionClass::getParentClass
ReflectionClass::getProperty
ReflectionClass


Gets property

ReflectionClass::getProperties
ReflectionClass::getShortName
ReflectionClass
PHP Manual

ReflectionClass::getProperty

(PHP 5)

ReflectionClass::getProperty — Gets property

Descrição

public ReflectionProperty ReflectionClass::getProperty ( string $name )

Gets a property.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

name

The property name.

Valor Retornado

A ReflectionProperty.

Veja Também

  • ReflectionClass::getProperties() - Gets properties

ReflectionClass::getProperties
ReflectionClass::getShortName
ReflectionClass


Gets short name

ReflectionClass::getProperty
ReflectionClass::getStartLine
ReflectionClass
PHP Manual

ReflectionClass::getShortName

(PHP 5 >= 5.3.0)

ReflectionClass::getShortName — Gets short name

Descrição

public string ReflectionClass::getShortName ( void )

Gets the short name of the class, the part without the namespace.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The class short name.

Exemplos

Exemplo #1 ReflectionClass::getShortName() example

<?php
namespace A\B;

class Foo { }

$function = new \ReflectionClass('stdClass');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());

$function = new \ReflectionClass('A\\B\\Foo');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());
?>

O exemplo acima irá imprimir:

bool(false)
string(8) "stdClass"
string(0) ""
string(8) "stdClass"

bool(true)
string(7) "A\B\Foo"
string(3) "A\B"
string(3) "Foo"

Veja Também

  • ReflectionClass::getName() - Gets class name

ReflectionClass::getProperty
ReflectionClass::getStartLine
ReflectionClass


Gets starting line number

ReflectionClass::getShortName
ReflectionClass::getStaticProperties
ReflectionClass
PHP Manual

ReflectionClass::getStartLine

(PHP 5)

ReflectionClass::getStartLine — Gets starting line number

Descrição

public int ReflectionClass::getStartLine ( void )

Get the starting line number.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The starting line number, as an integer.

Veja Também

  • ReflectionClass::getEndLine() - Gets end line

ReflectionClass::getShortName
ReflectionClass::getStaticProperties
ReflectionClass


Gets static properties

ReflectionClass::getStartLine
ReflectionClass::getStaticPropertyValue
ReflectionClass
PHP Manual

ReflectionClass::getStaticProperties

(PHP 5)

ReflectionClass::getStaticProperties — Gets static properties

Descrição

public array ReflectionClass::getStaticProperties ( void )

Get the static properties.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The static properties, as an array.

Veja Também

  • ReflectionClass::getStaticPropertyValue() - Gets static property value
  • ReflectionClass::setStaticPropertyValue() - Sets static property value

ReflectionClass::getStartLine
ReflectionClass::getStaticPropertyValue
ReflectionClass


Gets static property value

ReflectionClass::getStaticProperties
ReflectionClass::hasConstant
ReflectionClass
PHP Manual

ReflectionClass::getStaticPropertyValue

(PHP 5 >= 5.1.0)

ReflectionClass::getStaticPropertyValue — Gets static property value

Descrição

public mixed ReflectionClass::getStaticPropertyValue ( string $name [, string $default ] )

Gets the static property values.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

name

default

Valor Retornado

Veja Também

  • ReflectionClass::getStaticProperties() - Gets static properties
  • ReflectionClass::setStaticPropertyValue() - Sets static property value

ReflectionClass::getStaticProperties
ReflectionClass::hasConstant
ReflectionClass


Checks if constant is defined

ReflectionClass::getStaticPropertyValue
ReflectionClass::hasMethod
ReflectionClass
PHP Manual

ReflectionClass::hasConstant

(PHP 5 >= 5.1.0)

ReflectionClass::hasConstant — Checks if constant is defined

Descrição

public bool ReflectionClass::hasConstant ( string $name )

Checks whether the class has a specific constant defined or not.

Parâmetros

name

The name of the constant being checked for.

Valor Retornado

TRUE if the constant is defined, otherwise FALSE.

Exemplos

Exemplo #1 ReflectionClass::hasConstant() example

<?php
class Foo {
    const c1 = 1;
}

$class = new ReflectionClass("Foo");

var_dump($class->hasConstant("c1"));
var_dump($class->hasConstant("c2"));
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(false)

Veja Também

  • ReflectionClass::hasMethod() - Checks if method is defined
  • ReflectionClass::hasProperty() - Checks if property is defined

ReflectionClass::getStaticPropertyValue
ReflectionClass::hasMethod
ReflectionClass


Checks if method is defined

ReflectionClass::hasConstant
ReflectionClass::hasProperty
ReflectionClass
PHP Manual

ReflectionClass::hasMethod

(PHP 5 >= 5.1.0)

ReflectionClass::hasMethod — Checks if method is defined

Descrição

public bool ReflectionClass::hasMethod ( string $name )

Checks whether a specific method is defined in a class.

Parâmetros

name

Name of the method being checked for.

Valor Retornado

TRUE if it has the method, otherwise FALSE

Exemplos

Exemplo #1 ReflectionClass::hasMethod() example

<?php
Class C {
    public function publicFoo() {
        return true;
    }

    protected function protectedFoo() {
        return true;
    }

    private function privateFoo() {
        return true;
    }

    static function staticFoo() {
        return true;
    }
}

$rc = new ReflectionClass("C");

var_dump($rc->hasMethod('publicFoo'));

var_dump($rc->hasMethod('protectedFoo'));

var_dump($rc->hasMethod('privateFoo'));

var_dump($rc->hasMethod('staticFoo'));

// C should not have method bar
var_dump($rc->hasMethod('bar'));

// Method names are case insensitive
var_dump($rc->hasMethod('PUBLICfOO'));
?>

O exemplo acima irá imprimir:

bool(true)
bool(true)
bool(true)
bool(true)
bool(false)
bool(true)

Veja Também

  • ReflectionClass::hasConstant() - Checks if constant is defined
  • ReflectionClass::hasProperty() - Checks if property is defined

ReflectionClass::hasConstant
ReflectionClass::hasProperty
ReflectionClass


Checks if property is defined

ReflectionClass::hasMethod
ReflectionClass::implementsInterface
ReflectionClass
PHP Manual

ReflectionClass::hasProperty

(PHP 5 >= 5.1.0)

ReflectionClass::hasProperty — Checks if property is defined

Descrição

public bool ReflectionClass::hasProperty ( string $name )

Checks whether the specified property is defined.

Parâmetros

name

Name of the property being checked for.

Valor Retornado

TRUE if it has the property, otherwise FALSE

Exemplos

Exemplo #1 ReflectionClass::hasProperty() example

<?php
class Foo {
    public    $p1;
    protected $p2;
    private   $p3;

}

$obj = new ReflectionObject(new Foo());

var_dump($obj->hasProperty("p1"));
var_dump($obj->hasProperty("p2"));
var_dump($obj->hasProperty("p3"));
var_dump($obj->hasProperty("p4"));
?>

O exemplo acima irá imprimir algo similar a:

bool(true)
bool(true)
bool(true)
bool(false)

Veja Também

  • ReflectionClass::hasConstant() - Checks if constant is defined
  • ReflectionClass::hasMethod() - Checks if method is defined

ReflectionClass::hasMethod
ReflectionClass::implementsInterface
ReflectionClass


Implements interface

ReflectionClass::hasProperty
ReflectionClass::inNamespace
ReflectionClass
PHP Manual

ReflectionClass::implementsInterface

(PHP 5)

ReflectionClass::implementsInterface — Implements interface

Descrição

public bool ReflectionClass::implementsInterface ( string $interface )

Checks whether it implements an interface.

Parâmetros

interface

The interface name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ReflectionClass::isInterface() - Checks if interface
  • interface_exists() - Checa se a interface foi definida
  • Object Interfaces

ReflectionClass::hasProperty
ReflectionClass::inNamespace
ReflectionClass


Checks if in namespace

ReflectionClass::implementsInterface
ReflectionClass::isAbstract
ReflectionClass
PHP Manual

ReflectionClass::inNamespace

(PHP 5 >= 5.3.0)

ReflectionClass::inNamespace — Checks if in namespace

Descrição

public bool ReflectionClass::inNamespace ( void )

Checks if this class is defined in a namespace.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::inNamespace() example

<?php
namespace A\B;

class Foo { }

$function = new \ReflectionClass('stdClass');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());

$function = new \ReflectionClass('A\\B\\Foo');

var_dump($function->inNamespace());
var_dump($function->getName());
var_dump($function->getNamespaceName());
var_dump($function->getShortName());
?>

O exemplo acima irá imprimir:

bool(false)
string(8) "stdClass"
string(0) ""
string(8) "stdClass"

bool(true)
string(7) "A\B\Foo"
string(3) "A\B"
string(3) "Foo"

Veja Também

  • ReflectionClass::getNamespaceName() - Gets namespace name
  • PHP Namespaces

ReflectionClass::implementsInterface
ReflectionClass::isAbstract
ReflectionClass


Checks if class is abstract

ReflectionClass::inNamespace
ReflectionClass::isFinal
ReflectionClass
PHP Manual

ReflectionClass::isAbstract

(PHP 5)

ReflectionClass::isAbstract — Checks if class is abstract

Descrição

public bool ReflectionClass::isAbstract ( void )

Checks if the class is abstract.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::isAbstract() example

<?php
class          TestClass { }
abstract class TestAbstractClass { }

$testClass     = new ReflectionClass('TestClass');
$abstractClass = new ReflectionClass('TestAbstractClass');

var_dump($testClass->isAbstract());
var_dump($abstractClass->isAbstract());
?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • ReflectionClass::isInterface() - Checks if interface
  • Class Abstraction

ReflectionClass::inNamespace
ReflectionClass::isFinal
ReflectionClass


Checks if class is final

ReflectionClass::isAbstract
ReflectionClass::isInstance
ReflectionClass
PHP Manual

ReflectionClass::isFinal

(PHP 5)

ReflectionClass::isFinal — Checks if class is final

Descrição

public bool ReflectionClass::isFinal ( void )

Checks if a class is final.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::isAbstract() example

<?php
class       TestClass { }
final class TestFinalClass { }

$normalClass = new ReflectionClass('TestClass');
$finalClass  = new ReflectionClass('TestFinalClass');

var_dump($normalClass->isFinal());
var_dump($finalClass->isFinal());

?>

O exemplo acima irá imprimir:

bool(false)
bool(true)

Veja Também

  • ReflectionClass::isAbstract() - Checks if class is abstract
  • Final Keyword

ReflectionClass::isAbstract
ReflectionClass::isInstance
ReflectionClass


Checks class for instance

ReflectionClass::isFinal
ReflectionClass::isInstantiable
ReflectionClass
PHP Manual

ReflectionClass::isInstance

(PHP 5)

ReflectionClass::isInstance — Checks class for instance

Descrição

public bool ReflectionClass::isInstance ( object $object )

Checks if an object is an instance of a class.

Parâmetros

object

The object being compared to.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::isInstance() related examples

<?php
// Example usage
$class = new ReflectionClass('Foo');

if ($class->isInstance($arg)) {
    echo "Yes";
}

// Equivalent to
if ($arg instanceof Foo) {
    echo "Yes";
}

// Equivalent to
if (is_a($arg, 'Foo')) {
    echo "Yes";
}
?>

O exemplo acima irá imprimir algo similar a:

Yes
Yes
Yes

Veja Também

  • ReflectionClass::isInterface() - Checks if interface
  • Type operators (instanceof)
  • Object Interfaces
  • is_a() - Verifica se o objeto é de uma classe ou de sua classe pai

ReflectionClass::isFinal
ReflectionClass::isInstantiable
ReflectionClass


Checks if instantiable

ReflectionClass::isInstance
ReflectionClass::isInterface
ReflectionClass
PHP Manual

ReflectionClass::isInstantiable

(PHP 5)

ReflectionClass::isInstantiable — Checks if instantiable

Descrição

public bool ReflectionClass::isInstantiable ( void )

Checks if the class is instanciable.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::isInstantiable() example

<?php
class C { }

interface iface {
    function f1();
}

class ifaceImpl implements iface {
    function f1() {}
}

abstract class abstractClass {
    function f1() { }
    abstract function f2();
}

class D extends abstractClass {
    function f2() { }
}

$classes = array("C", "iface", "ifaceImpl", "abstractClass", "D");

foreach($classes  as $class ) {
    $reflectionClass = new ReflectionClass($class);
    echo "Is $class instantiable?  ";
    var_dump($reflectionClass->IsInstantiable());
}

?>

O exemplo acima irá imprimir:

Is C instantiable?  bool(true)
Is iface instantiable?  bool(false)
Is ifaceImpl instantiable?  bool(true)
Is abstractClass instantiable?  bool(false)
Is D instantiable?  bool(true)

Veja Também

  • ReflectionClass::isInstance() - Checks class for instance

ReflectionClass::isInstance
ReflectionClass::isInterface
ReflectionClass


Checks if interface

ReflectionClass::isInstantiable
ReflectionClass::isInternal
ReflectionClass
PHP Manual

ReflectionClass::isInterface

(PHP 5)

ReflectionClass::isInterface — Checks if interface

Descrição

public bool ReflectionClass::isInterface ( void )

Checks whether the class is an interface.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ReflectionClass::isInstance() - Checks class for instance

ReflectionClass::isInstantiable
ReflectionClass::isInternal
ReflectionClass


Checks if internal

ReflectionClass::isInterface
ReflectionClass::isIterateable
ReflectionClass
PHP Manual

ReflectionClass::isInternal

(PHP 5)

ReflectionClass::isInternal — Checks if internal

Descrição

public bool ReflectionClass::isInternal ( void )

Checks whether the class is internal, as opposed to user-defined.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ReflectionClass::isUserDefined() - Checks if user defined

ReflectionClass::isInterface
ReflectionClass::isIterateable
ReflectionClass


Checks if iterateable

ReflectionClass::isInternal
ReflectionClass::isSubclassOf
ReflectionClass
PHP Manual

ReflectionClass::isIterateable

(PHP 5)

ReflectionClass::isIterateable — Checks if iterateable

Descrição

public bool ReflectionClass::isIterateable ( void )

Checks whether the class is iterateable.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 ReflectionClass::isIterateable() example

<?php

class IteratorClass implements Iterator {
    public function __construct() { }
    public function key() { }
    public function current() { }
    function next() { }
    function valid() { }
    function rewind() { }
}
class DerivedClass extends IteratorClass { }
class NonIterator { }

function dump_iterateable($class) {
    $reflection = new ReflectionClass($class);
    var_dump($reflection->isIterateable());
}

$classes = array("ArrayObject", "IteratorClass", "DerivedClass", "NonIterator");

foreach ($classes as $class) {
    echo "Is $class iterateable? ";
    dump_iterateable($class);
}
?>

O exemplo acima irá imprimir:

Is ArrayObject iterateable? bool(true)
Is IteratorClass iterateable? bool(true)
Is DerivedClass iterateable? bool(true)
Is NonIterator iterateable? bool(false)

Veja Também

  • ReflectionClass::__construct() - Constructs a ReflectionClass

ReflectionClass::isInternal
ReflectionClass::isSubclassOf
ReflectionClass


Checks if a subclass

ReflectionClass::isIterateable
ReflectionClass::isUserDefined
ReflectionClass
PHP Manual

ReflectionClass::isSubclassOf

(PHP 5)

ReflectionClass::isSubclassOf — Checks if a subclass

Descrição

public bool ReflectionClass::isSubclassOf ( string $class )

Checks if the class is a subclass of a specified class.

Parâmetros

class

The class name being checked against.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ReflectionClass::isInterface() - Checks if interface
  • is_subclass_of() - Verifica se o objeto tem esta classe como uma de suas classes pai
  • get_parent_class() - Recupera o nome da classe pai para o objeto ou classe

ReflectionClass::isIterateable
ReflectionClass::isUserDefined
ReflectionClass


Checks if user defined

ReflectionClass::isSubclassOf
ReflectionClass::newInstance
ReflectionClass
PHP Manual

ReflectionClass::isUserDefined

(PHP 5)

ReflectionClass::isUserDefined — Checks if user defined

Descrição

public bool ReflectionClass::isUserDefined ( void )

Checks whether the class is user-defined, as opposed to internal.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • ReflectionClass::isInternal() - Checks if internal

ReflectionClass::isSubclassOf
ReflectionClass::newInstance
ReflectionClass


Creates a new class instance from given arguments.

ReflectionClass::isUserDefined
ReflectionClass::newInstanceArgs
ReflectionClass
PHP Manual

ReflectionClass::newInstance

(PHP 5)

ReflectionClass::newInstance — Creates a new class instance from given arguments.

Descrição

public object ReflectionClass::newInstance ( mixed $args [, mixed $... ] )

Creates a new instance of the class. The given arguments are passed to the class constructor.

Parâmetros

args

Accepts a variable number of arguments which are passed to the class constructor, much like call_user_func().

Valor Retornado

Erros

A ReflectionException if the class constructor is not public.

A ReflectionException if the class does not have a constructor and the args parameter contains one or more parameters.

Veja Também

  • ReflectionClass::newInstanceArgs() - Creates a new class instance from given arguments.

ReflectionClass::isUserDefined
ReflectionClass::newInstanceArgs
ReflectionClass


Creates a new class instance from given arguments.

ReflectionClass::newInstance
ReflectionClass::setStaticPropertyValue
ReflectionClass
PHP Manual

ReflectionClass::newInstanceArgs

(PHP 5 >= 5.1.3)

ReflectionClass::newInstanceArgs — Creates a new class instance from given arguments.

Descrição

public object ReflectionClass::newInstanceArgs ([ array $args ] )

Creates a new class instance of the class, the given arguments are passed to the class constructor.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

args

The parameters to be passed to the class constructor as an array.

Valor Retornado

Returns a new instance of the class.

Erros

A ReflectionException if the class constructor is not public.

A ReflectionException if the class does not have a constructor and the args parameter contains one or more parameters.

Veja Também

  • ReflectionClass::newInstance() - Creates a new class instance from given arguments.

ReflectionClass::newInstance
ReflectionClass::setStaticPropertyValue
ReflectionClass


Sets static property value

ReflectionClass::newInstanceArgs
ReflectionClass::__toString
ReflectionClass
PHP Manual

ReflectionClass::setStaticPropertyValue

(PHP 5 >= 5.1.0)

ReflectionClass::setStaticPropertyValue — Sets static property value

Descrição

public void ReflectionClass::setStaticPropertyValue ( string $name , string $value )

Sets static property value.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

name

Property name.

value

New property value.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionClass::getStaticPropertyValue() - Gets static property value

ReflectionClass::newInstanceArgs
ReflectionClass::__toString
ReflectionClass


Returns the string representation of the ReflectionClass object.

ReflectionClass::setStaticPropertyValue
ReflectionExtension
ReflectionClass
PHP Manual

ReflectionClass::__toString

(PHP 5)

ReflectionClass::__toString — Returns the string representation of the ReflectionClass object.

Descrição

public string ReflectionClass::__toString ( void )

Returns the string representation of the ReflectionClass object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string representation of this ReflectionClass instance.

Exemplos

Exemplo #1 ReflectionClass::__toString() example

<?php
$reflectionClass = new ReflectionClass('Exception');
echo $reflectionClass->__toString();
?>

O exemplo acima irá imprimir:

Class [ <internal:Core> class Exception ] {

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [7] {
    Property [ <default> protected $message ]
    Property [ <default> private $string ]
    Property [ <default> protected $code ]
    Property [ <default> protected $file ]
    Property [ <default> protected $line ]
    Property [ <default> private $trace ]
    Property [ <default> private $previous ]
  }

  - Methods [10] {
    Method [ <internal:Core> final private method __clone ] {
    }

    Method [ <internal:Core, ctor> public method __construct ] {

      - Parameters [3] {
        Parameter #0 [ <optional> $message ]
        Parameter #1 [ <optional> $code ]
        Parameter #2 [ <optional> $previous ]
      }
    }

    Method [ <internal:Core> final public method getMessage ] {
    }

    Method [ <internal:Core> final public method getCode ] {
    }

    Method [ <internal:Core> final public method getFile ] {
    }

    Method [ <internal:Core> final public method getLine ] {
    }

    Method [ <internal:Core> final public method getTrace ] {
    }

    Method [ <internal:Core> final public method getPrevious ] {
    }

    Method [ <internal:Core> final public method getTraceAsString ] {
    }

    Method [ <internal:Core> public method __toString ] {
    }
  }
}

Veja Também

  • ReflectionClass::export() - Exports a class
  • __toString

ReflectionClass::setStaticPropertyValue
ReflectionExtension
ReflectionClass


The ReflectionExtension class

Introdução

The ReflectionExtension class reports information about an extension.

Sinopse da classe

ReflectionExtension implements Reflector {
/* Properties */
public $name ;
/* Methods */
final private void __clone ( void )
__construct ( string $name )
public static string export ( string $name [, string $return = false ] )
public array getClasses ( void )
public array getClassNames ( void )
public array getConstants ( void )
public array getDependencies ( void )
public array getFunctions ( void )
public array getINIEntries ( void )
public string getName ( void )
public string getVersion ( void )
public string info ( void )
public string __toString ( void )
}

Propriedades

name

Name of the extension, same as calling the ReflectionExtension::getName() method.

Índice

  • ReflectionExtension::__clone — Clones
  • ReflectionExtension::__construct — Constructs a ReflectionExtension
  • ReflectionExtension::export — Export
  • ReflectionExtension::getClasses — Gets classes
  • ReflectionExtension::getClassNames — Gets class names
  • ReflectionExtension::getConstants — Gets constants
  • ReflectionExtension::getDependencies — Gets dependencies
  • ReflectionExtension::getFunctions — Gets extension functions
  • ReflectionExtension::getINIEntries — Gets extension ini entries
  • ReflectionExtension::getName — Gets extension name
  • ReflectionExtension::getVersion — Gets extension version
  • ReflectionExtension::info — Gets extension info
  • ReflectionExtension::__toString — To string
ReflectionClass::__toString
ReflectionExtension::__clone
Reflection


Clones

ReflectionExtension
ReflectionExtension::__construct
ReflectionExtension
PHP Manual

ReflectionExtension::__clone

(PHP 5)

ReflectionExtension::__clone — Clones

Descrição

final private void ReflectionExtension::__clone ( void )

The clone method prevents an object from being cloned. Reflection objects cannot be cloned.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

No value is returned, if called a fatal error will occur.

Veja Também

  • ReflectionExtension::__construct() - Constructs a ReflectionExtension
  • Object cloning

ReflectionExtension
ReflectionExtension::__construct
ReflectionExtension


Constructs a ReflectionExtension

ReflectionExtension::__clone
ReflectionExtension::export
ReflectionExtension
PHP Manual

ReflectionExtension::__construct

(PHP 5)

ReflectionExtension::__construct — Constructs a ReflectionExtension

Descrição

ReflectionExtension::__construct ( string $name )

Construct a ReflectionExtension object.

Parâmetros

name

Name of the extension.

Valor Retornado

A ReflectionExtension object.

Exemplos

Exemplo #1 ReflectionExtension example

<?php
$ext = new ReflectionExtension('Reflection');

printf('Extension: %s (version: %s)', $ext->getName(), $ext->getVersion());
?>

O exemplo acima irá imprimir algo similar a:

Extension: Reflection (version: $Revision: 299908 $)

Veja Também

  • ReflectionExtension::info() - Gets extension info
  • Constructors

ReflectionExtension::__clone
ReflectionExtension::export
ReflectionExtension


Export

ReflectionExtension::__construct
ReflectionExtension::getClasses
ReflectionExtension
PHP Manual

ReflectionExtension::export

(PHP 5)

ReflectionExtension::export — Export

Descrição

public static string ReflectionExtension::export ( string $name [, string $return = false ] )

Exports a reflected extension. The output format of this function is the same as the CLI argument --re [extension].

Parâmetros

name

The reflection to export.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • ReflectionExtension::info() - Gets extension info

ReflectionExtension::__construct
ReflectionExtension::getClasses
ReflectionExtension


Gets classes

ReflectionExtension::export
ReflectionExtension::getClassNames
ReflectionExtension
PHP Manual

ReflectionExtension::getClasses

(PHP 5)

ReflectionExtension::getClasses — Gets classes

Descrição

public array ReflectionExtension::getClasses ( void )

Gets a list of classes from an extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of ReflectionClass objects, one for each class within the extension. If no classes are defined, an empty array is returned.

Exemplos

Exemplo #1 ReflectionExtension::getClasses() example

<?php
$ext = new ReflectionExtension('XMLWriter');
var_dump($ext->getClasses());
?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  ["XMLWriter"]=>
  &object(ReflectionClass)#2 (1) {
    ["name"]=>
    string(9) "XMLWriter"
  }
}

Veja Também

  • ReflectionExtension::getClassNames() - Gets class names

ReflectionExtension::export
ReflectionExtension::getClassNames
ReflectionExtension


Gets class names

ReflectionExtension::getClasses
ReflectionExtension::getConstants
ReflectionExtension
PHP Manual

ReflectionExtension::getClassNames

(PHP 5)

ReflectionExtension::getClassNames — Gets class names

Descrição

public array ReflectionExtension::getClassNames ( void )

Gets a listing of class names as defined in the extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of class names, as defined in the extension. If no classes are defined, an empty array is returned.

Exemplos

Exemplo #1 ReflectionExtension::getClassNames() example

<?php
$ext = new ReflectionExtension('XMLWriter');
var_dump($ext->getClassNames());
?>

O exemplo acima irá imprimir algo similar a:

array(1) {
  [0]=>
  string(9) "XMLWriter"
}

Veja Também

  • ReflectionExtension::getClasses() - Gets classes
  • ReflectionExtension::getName() - Gets extension name

ReflectionExtension::getClasses
ReflectionExtension::getConstants
ReflectionExtension


Gets constants

ReflectionExtension::getClassNames
ReflectionExtension::getDependencies
ReflectionExtension
PHP Manual

ReflectionExtension::getConstants

(PHP 5)

ReflectionExtension::getConstants — Gets constants

Descrição

public array ReflectionExtension::getConstants ( void )

Get defined constants from an extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An associative array with constant names as keys.

Exemplos

Exemplo #1 ReflectionExtension::getConstants() example

<?php
$ext = new ReflectionExtension('DOM');

print_r($ext->getConstants());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [XML_ELEMENT_NODE] => 1
    [XML_ATTRIBUTE_NODE] => 2
    [XML_TEXT_NODE] => 3
    [XML_CDATA_SECTION_NODE] => 4
    [XML_ENTITY_REF_NODE] => 5
    [XML_ENTITY_NODE] => 6
    [XML_PI_NODE] => 7
    [XML_COMMENT_NODE] => 8
    [XML_DOCUMENT_NODE] => 9
    [XML_DOCUMENT_TYPE_NODE] => 10
    [XML_DOCUMENT_FRAG_NODE] => 11
    [XML_NOTATION_NODE] => 12
    [XML_HTML_DOCUMENT_NODE] => 13
    [XML_DTD_NODE] => 14
    [XML_ELEMENT_DECL_NODE] => 15
    [XML_ATTRIBUTE_DECL_NODE] => 16
    [XML_ENTITY_DECL_NODE] => 17
    [XML_NAMESPACE_DECL_NODE] => 18
    [XML_LOCAL_NAMESPACE] => 18
    [XML_ATTRIBUTE_CDATA] => 1
    [XML_ATTRIBUTE_ID] => 2
    [XML_ATTRIBUTE_IDREF] => 3
    [XML_ATTRIBUTE_IDREFS] => 4
    [XML_ATTRIBUTE_ENTITY] => 6
    [XML_ATTRIBUTE_NMTOKEN] => 7
    [XML_ATTRIBUTE_NMTOKENS] => 8
    [XML_ATTRIBUTE_ENUMERATION] => 9
    [XML_ATTRIBUTE_NOTATION] => 10
    [DOM_PHP_ERR] => 0
    [DOM_INDEX_SIZE_ERR] => 1
    [DOMSTRING_SIZE_ERR] => 2
    [DOM_HIERARCHY_REQUEST_ERR] => 3
    [DOM_WRONG_DOCUMENT_ERR] => 4
    [DOM_INVALID_CHARACTER_ERR] => 5
    [DOM_NO_DATA_ALLOWED_ERR] => 6
    [DOM_NO_MODIFICATION_ALLOWED_ERR] => 7
    [DOM_NOT_FOUND_ERR] => 8
    [DOM_NOT_SUPPORTED_ERR] => 9
    [DOM_INUSE_ATTRIBUTE_ERR] => 10
    [DOM_INVALID_STATE_ERR] => 11
    [DOM_SYNTAX_ERR] => 12
    [DOM_INVALID_MODIFICATION_ERR] => 13
    [DOM_NAMESPACE_ERR] => 14
    [DOM_INVALID_ACCESS_ERR] => 15
    [DOM_VALIDATION_ERR] => 16
)

Veja Também

  • ReflectionExtension::getINIEntries() - Gets extension ini entries

ReflectionExtension::getClassNames
ReflectionExtension::getDependencies
ReflectionExtension


Gets dependencies

ReflectionExtension::getConstants
ReflectionExtension::getFunctions
ReflectionExtension
PHP Manual

ReflectionExtension::getDependencies

(PHP 5)

ReflectionExtension::getDependencies — Gets dependencies

Descrição

public array ReflectionExtension::getDependencies ( void )

Gets dependencies, by listing both required and conflicting dependencies.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An associative array with dependencies as keys and either Required, Optional or Conflicts as the values.

Exemplos

Exemplo #1 ReflectionExtension::getDependencies() example

<?php
$dom = new ReflectionExtension('dom');

print_r($dom->getDependencies());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [libxml] => Required
    [domxml] => Conflicts
)

Veja Também

  • ReflectionClass::getVersion()

ReflectionExtension::getConstants
ReflectionExtension::getFunctions
ReflectionExtension


Gets extension functions

ReflectionExtension::getDependencies
ReflectionExtension::getINIEntries
ReflectionExtension
PHP Manual

ReflectionExtension::getFunctions

(PHP 5)

ReflectionExtension::getFunctions — Gets extension functions

Descrição

public array ReflectionExtension::getFunctions ( void )

Get defined functions from an extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An associative array of ReflectionFunction objects, for each function defined in the extension with the keys being the function names. If no function are defined, an empty array is returned.

Exemplos

Exemplo #1 ReflectionExtension::getFunctions() example

<?php
$dom = new ReflectionExtension('SimpleXML');

print_r($dom->getFunctions());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [simplexml_load_file] => ReflectionFunction Object
        (
            [name] => simplexml_load_file
        )

    [simplexml_load_string] => ReflectionFunction Object
        (
            [name] => simplexml_load_string
        )

    [simplexml_import_dom] => ReflectionFunction Object
        (
            [name] => simplexml_import_dom
        )

)

Veja Também

  • ReflectionExtension::getClasses() - Gets classes

ReflectionExtension::getDependencies
ReflectionExtension::getINIEntries
ReflectionExtension


Gets extension ini entries

ReflectionExtension::getFunctions
ReflectionExtension::getName
ReflectionExtension
PHP Manual

ReflectionExtension::getINIEntries

(PHP 5)

ReflectionExtension::getINIEntries — Gets extension ini entries

Descrição

public array ReflectionExtension::getINIEntries ( void )

Get the ini entries for an extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An associative array with the ini entries as keys, with their defined values as values.

Exemplos

Exemplo #1 ReflectionExtension::getINIEntries() example

<?php
$ext = new ReflectionExtension('mysql');

print_r($ext->getINIEntries());
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [mysql.allow_persistent] => 1
    [mysql.max_persistent] => -1
    [mysql.max_links] => -1
    [mysql.default_host] =>
    [mysql.default_user] =>
    [mysql.default_password] =>
    [mysql.default_port] =>
    [mysql.default_socket] =>
    [mysql.connect_timeout] => 60
    [mysql.trace_mode] =>
    [mysql.allow_local_infile] => 1
    [mysql.cache_size] => 2000
)

Veja Também

  • ReflectionExtension::getConstants() - Gets constants

ReflectionExtension::getFunctions
ReflectionExtension::getName
ReflectionExtension


Gets extension name

ReflectionExtension::getINIEntries
ReflectionExtension::getVersion
ReflectionExtension
PHP Manual

ReflectionExtension::getName

(PHP 5)

ReflectionExtension::getName — Gets extension name

Descrição

public string ReflectionExtension::getName ( void )

Gets the extensions name.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The extensions name.

Exemplos

Exemplo #1 ReflectionExtension::getName() example

<?php
$ext = new ReflectionExtension('mysqli');
var_dump($ext->getName());
?>

O exemplo acima irá imprimir algo similar a:

string(6) "mysqli"

Veja Também

  • ReflectionExtension::getClassNames() - Gets class names

ReflectionExtension::getINIEntries
ReflectionExtension::getVersion
ReflectionExtension


Gets extension version

ReflectionExtension::getName
ReflectionExtension::info
ReflectionExtension
PHP Manual

ReflectionExtension::getVersion

(PHP 5)

ReflectionExtension::getVersion — Gets extension version

Descrição

public string ReflectionExtension::getVersion ( void )

Gets the version of the extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The version of the extension.

Exemplos

Exemplo #1 ReflectionExtension::getVersion() example

<?php
$ext = new ReflectionExtension('mysqli');
var_dump($ext->getVersion());
?>

O exemplo acima irá imprimir algo similar a:

string(3) "0.1"

Veja Também

  • ReflectionExtension::info() - Gets extension info

ReflectionExtension::getName
ReflectionExtension::info
ReflectionExtension


Gets extension info

ReflectionExtension::getVersion
ReflectionExtension::__toString
ReflectionExtension
PHP Manual

ReflectionExtension::info

(PHP 5)

ReflectionExtension::info — Gets extension info

Descrição

public string ReflectionExtension::info ( void )

Gets information about an extension.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Information about the extension.

Exemplos

Exemplo #1 ReflectionExtension::info() example

<?php
$ext = new ReflectionExtension('mysqli');
print_r($ext->info());
?>

O exemplo acima irá imprimir algo similar a:

mysqli

MysqlI Support => enabled
Client API library version => mysqlnd 5.0.5-dev - 081106 - $Revision: 290998 $
Active Persistent Links => 0
Inactive Persistent Links => 0
Active Links => 0
Persistent cache => enabled
put_hits => 0
put_misses => 0
get_hits => 0
get_misses => 0
size => 2000
free_items => 2000
references => 2

Directive => Local Value => Master Value
mysqli.max_links => Unlimited => Unlimited
mysqli.max_persistent => Unlimited => Unlimited
mysqli.allow_persistent => On => On
mysqli.default_host => no value => no value
mysqli.default_user => no value => no value
mysqli.default_pw => no value => no value
mysqli.default_port => 3306 => 3306
mysqli.default_socket => no value => no value
mysqli.reconnect => Off => Off
mysqli.allow_local_infile => On => On
mysqli.cache_size => 2000 => 2000
NULL

Veja Também

  • ReflectionExtension::getName() - Gets extension name
  • phpinfo() - Mostra muitas informações sobre o PHP

ReflectionExtension::getVersion
ReflectionExtension::__toString
ReflectionExtension


To string

ReflectionExtension::info
ReflectionFunction
ReflectionExtension
PHP Manual

ReflectionExtension::__toString

(PHP 5)

ReflectionExtension::__toString — To string

Descrição

public string ReflectionExtension::__toString ( void )

Exports a reflected extension and returns it as a string. This is the same as the ReflectionExtension::export() with the return set to TRUE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the exported extension as a string, in the same way as the ReflectionExtension::export().

Veja Também

  • ReflectionExtension::__construct() - Constructs a ReflectionExtension
  • ReflectionExtension::export() - Export
  • __toString

ReflectionExtension::info
ReflectionFunction
ReflectionExtension


The ReflectionFunction class

Introdução

The ReflectionFunction class reports information about a function.

Parent class ReflectionFunctionAbstract has the
same methods except invoke(),
invokeArgs(), export() and
isDisabled().

Sinopse da classe

ReflectionFunction extends ReflectionFunctionAbstract implements Reflector {
/* Constants */
const integer ReflectionFunction::IS_DEPRECATED = 262144 ;
/* Properties */
public $name ;
/* Methods */
__construct ( mixed $name )
public static string export ( string $name [, string $return ] )
public mixed invoke ([ mixed $parameter [, mixed $... ]] )
public mixed invokeArgs ( array $args )
public bool isDisabled ( void )
public string __toString ( void )
/* Inherited methods */
final private void ReflectionFunctionAbstract::__clone ( void )
public string ReflectionFunctionAbstract::getDocComment ( void )
public int ReflectionFunctionAbstract::getEndLine ( void )
public ReflectionExtension ReflectionFunctionAbstract::getExtension ( void )
public string ReflectionFunctionAbstract::getExtensionName ( void )
public string ReflectionFunctionAbstract::getFileName ( void )
public string ReflectionFunctionAbstract::getName ( void )
public string ReflectionFunctionAbstract::getNamespaceName ( void )
public int ReflectionFunctionAbstract::getNumberOfParameters ( void )
public int ReflectionFunctionAbstract::getNumberOfRequiredParameters ( void )
public array ReflectionFunctionAbstract::getParameters ( void )
public string ReflectionFunctionAbstract::getShortName ( void )
public int ReflectionFunctionAbstract::getStartLine ( void )
public array ReflectionFunctionAbstract::getStaticVariables ( void )
public bool ReflectionFunctionAbstract::inNamespace ( void )
public bool ReflectionFunctionAbstract::isClosure ( void )
public bool ReflectionFunctionAbstract::isDeprecated ( void )
public bool ReflectionFunctionAbstract::isInternal ( void )
public bool ReflectionFunctionAbstract::isUserDefined ( void )
public bool ReflectionFunctionAbstract::returnsReference ( void )
abstract public void ReflectionFunctionAbstract::__toString ( void )
}

Propriedades

name

Prop description

Constantes pré-definidas

ReflectionFunction Node Types

ReflectionFunction::IS_DEPRECATED

Description here...

Índice

  • ReflectionFunction::__construct — Constructs a ReflectionFunction object
  • ReflectionFunction::export — Exports function
  • ReflectionFunction::invoke — Invokes function
  • ReflectionFunction::invokeArgs — Invokes function args
  • ReflectionFunction::isDisabled — Checks if function is disabled
  • ReflectionFunction::__toString — To string
ReflectionExtension::__toString
ReflectionFunction::__construct
Reflection


Constructs a ReflectionFunction object

ReflectionFunction
ReflectionFunction::export
ReflectionFunction
PHP Manual

ReflectionFunction::__construct

(PHP 5)

ReflectionFunction::__construct — Constructs a ReflectionFunction object

Descrição

ReflectionFunction::__construct ( mixed $name )

Constructs a ReflectionFunction object.

Parâmetros

name

The name of the function to reflect or a closure.

Valor Retornado

Não há valor retornado.

Erros

A ReflectionException if the name parameter does not contain a valid function.

Histórico

Versão | Descrição
5.3.0 | name can now be a closure.

Exemplos

Exemplo #1 ReflectionFunction::__construct() example

<?php
/**
 * A simple counter
 *
 * @return    int
 */
function counter1()
{
    static $c = 0;
    return ++$c;
}

/**
 * Another simple counter
 *
 * @return    int
 */
$counter2 = function()
{
    static $d = 0;
    return ++$d;

};

function dumpReflectionFunction($func)
{
    // Print out basic information
    printf(
        "\n\n===> The %s function '%s'\n".
        "     declared in %s\n".
        "     lines %d to %d\n",
        $func->isInternal() ? 'internal' : 'user-defined',
        $func->getName(),
        $func->getFileName(),
        $func->getStartLine(),
        $func->getEndline()
    );

    // Print documentation comment
    printf("---> Documentation:\n %s\n", var_export($func->getDocComment(), 1));

    // Print static variables if existant
    if ($statics = $func->getStaticVariables())
    {
        printf("---> Static variables: %s\n", var_export($statics, 1));
    }
}

// Create an instance of the ReflectionFunction class
dumpReflectionFunction(new ReflectionFunction('counter1'));
dumpReflectionFunction(new ReflectionFunction($counter2));
?>

O exemplo acima irá imprimir algo similar a:

===> The user-defined function 'counter1'
     declared in Z:\reflectcounter.php
     lines 7 to 11
---> Documentation:
 '/**
 * A simple counter
 *
 * @return    int
 */'
---> Static variables: array (
  'c' => 0,
)

===> The user-defined function '{closure}'
     declared in Z:\reflectcounter.php
     lines 18 to 23
---> Documentation:
 '/**
 * Another simple counter
 *
 * @return    int
 */'
---> Static variables: array (
  'd' => 0,
)

Veja Também

  • ReflectionMethod::__construct() - Constructs a ReflectionMethod
  • Constructors

ReflectionFunction
ReflectionFunction::export
ReflectionFunction


Exports function

ReflectionFunction::__construct
ReflectionFunction::invoke
ReflectionFunction
PHP Manual

ReflectionFunction::export

(PHP 5)

ReflectionFunction::export — Exports function

Descrição

public static string ReflectionFunction::export ( string $name [, string $return ] )

Exports a Reflected function.

Parâmetros

name

The reflection to export.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • ReflectionFunction::invoke() - Invokes function

ReflectionFunction::__construct
ReflectionFunction::invoke
ReflectionFunction


Invokes function

ReflectionFunction::export
ReflectionFunction::invokeArgs
ReflectionFunction
PHP Manual

ReflectionFunction::invoke

(PHP 5)

ReflectionFunction::invoke — Invokes function

Descrição

public mixed ReflectionFunction::invoke ([ mixed $parameter [, mixed $... ]] )

Invokes a reflected function.

Parâmetros

args

The passed in argument list. It accepts a variable number of arguments which are passed to the function much like call_user_func() is.

Valor Retornado

Returns the result of the invoked function call.

Exemplos

Exemplo #1 ReflectionFunction::invoke() example

<?php
function title($title, $name)
{
    return sprintf("%s. %s\r\n", $title, $name);
}

$function = new ReflectionFunction('title');

echo $function->invoke('Dr', 'Phil');
?>

O exemplo acima irá imprimir:

Dr. Phil

Notas

Nota:

If the function has arguments that need to be references, then they must be references in the passed argument list.

Veja Também

  • ReflectionFunction::export() - Exports function
  • __invoke

ReflectionFunction::export
ReflectionFunction::invokeArgs
ReflectionFunction


Invokes function args

ReflectionFunction::invoke
ReflectionFunction::isDisabled
ReflectionFunction
PHP Manual

ReflectionFunction::invokeArgs

(PHP 5 >= 5.1.0)

ReflectionFunction::invokeArgs — Invokes function args

Descrição

public mixed ReflectionFunction::invokeArgs ( array $args )

Invokes args.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

args

The passed arguments to the function as an array, much like call_user_func_array() works.

Valor Retornado

Returns the result of the invoked function

Exemplos

Exemplo #1 ReflectionFunction::invokeArgs() example

<?php
function title($title, $name)
{
    return sprintf("%s. %s\r\n", $title, $name);
}

$function = new ReflectionFunction('title');

echo $function->invokeArgs(array('Dr', 'Phil'));
?>

O exemplo acima irá imprimir:

Dr. Phil

Exemplo #2 ReflectionFunction::invokeArgs() with references example

<?php
function get_false_conditions(array $conditions, array &$false_conditions)
{
    foreach ($conditions as $condition) {
        if (!$condition) {
            $false_conditions[] = $condition;
        }
    }
}

$function_ref     = new ReflectionFunction('get_false_conditions');

$conditions       = array(true, false, -1, 0, 1);
$false_conditions = array();

$function_ref->invokeArgs(array($conditions, &$false_conditions));

var_dump($false_conditions);
?>

O exemplo acima irá imprimir:

array(2) {
  [0]=>
  bool(false)
  [1]=>
  int(0)
}

Notas

Nota:

If the function has arguments that need to be references, then they must be references in the passed argument list.

Veja Também

  • ReflectionFunction::invoke() - Invokes function
  • ReflectionFunctionAbstract::getNumberOfParameters() - Gets number of parameters
  • __invoke

ReflectionFunction::invoke
ReflectionFunction::isDisabled
ReflectionFunction


Checks if function is disabled

ReflectionFunction::invokeArgs
ReflectionFunction::__toString
ReflectionFunction
PHP Manual

ReflectionFunction::isDisabled

(PHP 5)

ReflectionFunction::isDisabled — Checks if function is disabled

Descrição

public bool ReflectionFunction::isDisabled ( void )

Checks if the function is disabled, via the disable_functions directive.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's disable, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::isUserDefined() - Checks if user defined
  • disable_functions directive

ReflectionFunction::invokeArgs
ReflectionFunction::__toString
ReflectionFunction


To string

ReflectionFunction::isDisabled
ReflectionFunctionAbstract
ReflectionFunction
PHP Manual

ReflectionFunction::__toString

(PHP 5)

ReflectionFunction::__toString — To string

Descrição

public string ReflectionFunction::__toString ( void )

To string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns ReflectionFunction::export()-like output for the function.

Exemplos

Exemplo #1 ReflectionFunction::__toString() example

<?php
function title($title, $name)
{
    return sprintf("%s. %s\r\n", $title, $name);
}

echo new ReflectionFunction('title');
?>

O exemplo acima irá imprimir algo similar a:

Function [ <user> function person ] {
  @@ Command line code 1 - 1

  - Parameters [2] {
    Parameter #0 [ <required> $prefix ]
    Parameter #1 [ <required> $name ]
  }
}

Veja Também

  • ReflectionFunction::export() - Exports function
  • ReflectionClass::clone()
  • __toString

ReflectionFunction::isDisabled
ReflectionFunctionAbstract
ReflectionFunction


The ReflectionFunctionAbstract class

Introdução

A parent class to ReflectionFunction, read its description for details.

Sinopse da classe

ReflectionFunctionAbstract implements Reflector {
/* Properties */
public $name ;
/* Methods */
final private void __clone ( void )
public string getDocComment ( void )
public int getEndLine ( void )
public ReflectionExtension getExtension ( void )
public string getExtensionName ( void )
public string getFileName ( void )
public string getName ( void )
public string getNamespaceName ( void )
public int getNumberOfParameters ( void )
public int getNumberOfRequiredParameters ( void )
public array getParameters ( void )
public string getShortName ( void )
public int getStartLine ( void )
public array getStaticVariables ( void )
public bool inNamespace ( void )
public bool isClosure ( void )
public bool isDeprecated ( void )
public bool isInternal ( void )
public bool isUserDefined ( void )
public bool returnsReference ( void )
abstract public void __toString ( void )
}

Propriedades

name

Prop description

Índice

  • ReflectionFunctionAbstract::__clone — Clones function
  • ReflectionFunctionAbstract::getDocComment — Gets doc comment
  • ReflectionFunctionAbstract::getEndLine — Gets end line number
  • ReflectionFunctionAbstract::getExtension — Gets extension info
  • ReflectionFunctionAbstract::getExtensionName — Gets extension name
  • ReflectionFunctionAbstract::getFileName — Gets file name
  • ReflectionFunctionAbstract::getName — Gets function name
  • ReflectionFunctionAbstract::getNamespaceName — Gets namespace name
  • ReflectionFunctionAbstract::getNumberOfParameters — Gets number of parameters
  • ReflectionFunctionAbstract::getNumberOfRequiredParameters — Gets number of required parameters
  • ReflectionFunctionAbstract::getParameters — Gets parameters
  • ReflectionFunctionAbstract::getShortName — Gets function short name
  • ReflectionFunctionAbstract::getStartLine — Gets starting line number
  • ReflectionFunctionAbstract::getStaticVariables — Gets static variables
  • ReflectionFunctionAbstract::inNamespace — Checks if function in namespace
  • ReflectionFunctionAbstract::isClosure — Checks if closure
  • ReflectionFunctionAbstract::isDeprecated — Checks if deprecated
  • ReflectionFunctionAbstract::isInternal — Checks if is internal
  • ReflectionFunctionAbstract::isUserDefined — Checks if user defined
  • ReflectionFunctionAbstract::returnsReference — Checks if returns reference
  • ReflectionFunctionAbstract::__toString — To string
ReflectionFunction::__toString
ReflectionFunctionAbstract::__clone
Reflection


Clones function

ReflectionFunctionAbstract
ReflectionFunctionAbstract::getDocComment
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::__clone

(PHP 5)

ReflectionFunctionAbstract::__clone — Clones function

Descrição

final private void ReflectionFunctionAbstract::__clone ( void )

Clones a function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • Object cloning

ReflectionFunctionAbstract
ReflectionFunctionAbstract::getDocComment
ReflectionFunctionAbstract


Gets doc comment

ReflectionFunctionAbstract::__clone
ReflectionFunctionAbstract::getEndLine
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getDocComment

(PHP 5 >= 5.1.0)

ReflectionFunctionAbstract::getDocComment — Gets doc comment

Descrição

public string ReflectionFunctionAbstract::getDocComment ( void )

Get a Doc comment from a function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The doc comment if it exists, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::getStartLine() - Gets starting line number

ReflectionFunctionAbstract::__clone
ReflectionFunctionAbstract::getEndLine
ReflectionFunctionAbstract


Gets end line number

ReflectionFunctionAbstract::getDocComment
ReflectionFunctionAbstract::getExtension
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getEndLine

(PHP 5)

ReflectionFunctionAbstract::getEndLine — Gets end line number

Descrição

public int ReflectionFunctionAbstract::getEndLine ( void )

Get the ending line number.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The ending line number of the user defined class, or FALSE if unknown.

Veja Também

  • ReflectionFunctionAbstract::getStartLine() - Gets starting line number

ReflectionFunctionAbstract::getDocComment
ReflectionFunctionAbstract::getExtension
ReflectionFunctionAbstract


Gets extension info

ReflectionFunctionAbstract::getEndLine
ReflectionFunctionAbstract::getExtensionName
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getExtension

(PHP 5)

ReflectionFunctionAbstract::getExtension — Gets extension info

Descrição

public ReflectionExtension ReflectionFunctionAbstract::getExtension ( void )

Get the extension information of a function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The extension information, as a ReflectionExtension object.

Veja Também

  • ReflectionFunctionAbstract::getExtensionName() - Gets extension name

ReflectionFunctionAbstract::getEndLine
ReflectionFunctionAbstract::getExtensionName
ReflectionFunctionAbstract


Gets extension name

ReflectionFunctionAbstract::getExtension
ReflectionFunctionAbstract::getFileName
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getExtensionName

(PHP 5)

ReflectionFunctionAbstract::getExtensionName — Gets extension name

Descrição

public string ReflectionFunctionAbstract::getExtensionName ( void )

Get the extensions name.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The extensions name.

Veja Também

  • ReflectionFunctionAbstract::getExtension() - Gets extension info

ReflectionFunctionAbstract::getExtension
ReflectionFunctionAbstract::getFileName
ReflectionFunctionAbstract


Gets file name

ReflectionFunctionAbstract::getExtensionName
ReflectionFunctionAbstract::getName
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getFileName

(PHP 5)

ReflectionFunctionAbstract::getFileName — Gets file name

Descrição

public string ReflectionFunctionAbstract::getFileName ( void )

Gets the file name from a user-defined function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The file name.

Veja Também

  • ReflectionFunctionAbstract::getNamespaceName() - Gets namespace name

ReflectionFunctionAbstract::getExtensionName
ReflectionFunctionAbstract::getName
ReflectionFunctionAbstract


Gets function name

ReflectionFunctionAbstract::getFileName
ReflectionFunctionAbstract::getNamespaceName
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getName

(PHP 5)

ReflectionFunctionAbstract::getName — Gets function name

Descrição

public string ReflectionFunctionAbstract::getName ( void )

Get the name of the function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The name of the function.

Veja Também

  • ReflectionFunctionAbstract::getExtensionName() - Gets extension name
  • ReflectionFunctionAbstract::isUserDefined() - Checks if user defined

ReflectionFunctionAbstract::getFileName
ReflectionFunctionAbstract::getNamespaceName
ReflectionFunctionAbstract


Gets namespace name

ReflectionFunctionAbstract::getName
ReflectionFunctionAbstract::getNumberOfParameters
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getNamespaceName

(PHP 5 >= 5.3.0)

ReflectionFunctionAbstract::getNamespaceName — Gets namespace name

Descrição

public string ReflectionFunctionAbstract::getNamespaceName ( void )

Get the namespace name where the class is defined.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The namespace name.

Veja Também

  • ReflectionFunctionAbstract::getFileName() - Gets file name
  • namespaces

ReflectionFunctionAbstract::getName
ReflectionFunctionAbstract::getNumberOfParameters
ReflectionFunctionAbstract


Gets number of parameters

ReflectionFunctionAbstract::getNamespaceName
ReflectionFunctionAbstract::getNumberOfRequiredParameters
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getNumberOfParameters

(PHP 5 >= 5.0.3)

ReflectionFunctionAbstract::getNumberOfParameters — Gets number of parameters

Descrição

public int ReflectionFunctionAbstract::getNumberOfParameters ( void )

Get the number of parameters that a function defines, both optional and required.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of parameters.

Veja Também

  • ReflectionFunctionAbstract::getNumberOfRequiredParameters() - Gets number of required parameters

ReflectionFunctionAbstract::getNamespaceName
ReflectionFunctionAbstract::getNumberOfRequiredParameters
ReflectionFunctionAbstract


Gets number of required parameters

ReflectionFunctionAbstract::getNumberOfParameters
ReflectionFunctionAbstract::getParameters
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getNumberOfRequiredParameters

(PHP 5 >= 5.0.3)

ReflectionFunctionAbstract::getNumberOfRequiredParameters — Gets number of required parameters

Descrição

public int ReflectionFunctionAbstract::getNumberOfRequiredParameters ( void )

Get the number of required parameters that a function defines.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The number of required parameters.

Veja Também

  • ReflectionFunctionAbstract::getNumberOfParameters() - Gets number of parameters

ReflectionFunctionAbstract::getNumberOfParameters
ReflectionFunctionAbstract::getParameters
ReflectionFunctionAbstract


Gets parameters

ReflectionFunctionAbstract::getNumberOfRequiredParameters
ReflectionFunctionAbstract::getShortName
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getParameters

(PHP 5)

ReflectionFunctionAbstract::getParameters — Gets parameters

Descrição

public array ReflectionFunctionAbstract::getParameters ( void )

Get the parameters as an array of ReflectionParameter.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The parameters, as a ReflectionParameter object.

Veja Também

  • ReflectionFunctionAbstract::getNumberOfParameters() - Gets number of parameters

ReflectionFunctionAbstract::getNumberOfRequiredParameters
ReflectionFunctionAbstract::getShortName
ReflectionFunctionAbstract


Gets function short name

ReflectionFunctionAbstract::getParameters
ReflectionFunctionAbstract::getStartLine
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getShortName

(PHP 5 >= 5.3.0)

ReflectionFunctionAbstract::getShortName — Gets function short name

Descrição

public string ReflectionFunctionAbstract::getShortName ( void )

Get the short name of the function (without the namespace part).

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The short name of the function.

Veja Também

  • ReflectionFunctionAbstract::getNamespaceName() - Gets namespace name
  • namespaces

ReflectionFunctionAbstract::getParameters
ReflectionFunctionAbstract::getStartLine
ReflectionFunctionAbstract


Gets starting line number

ReflectionFunctionAbstract::getShortName
ReflectionFunctionAbstract::getStaticVariables
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getStartLine

(PHP 5)

ReflectionFunctionAbstract::getStartLine — Gets starting line number

Descrição

public int ReflectionFunctionAbstract::getStartLine ( void )

Gets the starting line number of the function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The starting line number.

Veja Também

  • ReflectionFunctionAbstract::getEndLine() - Gets end line number

ReflectionFunctionAbstract::getShortName
ReflectionFunctionAbstract::getStaticVariables
ReflectionFunctionAbstract


Gets static variables

ReflectionFunctionAbstract::getStartLine
ReflectionFunctionAbstract::inNamespace
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::getStaticVariables

(PHP 5)

ReflectionFunctionAbstract::getStaticVariables — Gets static variables

Descrição

public array ReflectionFunctionAbstract::getStaticVariables ( void )

Get the static variables.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of static variables.

Veja Também

  • ReflectionFunctionAbstract::getParameters() - Gets parameters

ReflectionFunctionAbstract::getStartLine
ReflectionFunctionAbstract::inNamespace
ReflectionFunctionAbstract


Checks if function in namespace

ReflectionFunctionAbstract::getStaticVariables
ReflectionFunctionAbstract::isClosure
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::inNamespace

(PHP 5 >= 5.3.0)

ReflectionFunctionAbstract::inNamespace — Checks if function in namespace

Descrição

public bool ReflectionFunctionAbstract::inNamespace ( void )

Checks whether a function is defined in a namespace.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's in a namespace, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::getNamespaceName() - Gets namespace name
  • namespaces

ReflectionFunctionAbstract::getStaticVariables
ReflectionFunctionAbstract::isClosure
ReflectionFunctionAbstract


Checks if closure

ReflectionFunctionAbstract::inNamespace
ReflectionFunctionAbstract::isDeprecated
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::isClosure

(PHP 5 >= 5.3.0)

ReflectionFunctionAbstract::isClosure — Checks if closure

Descrição

public bool ReflectionFunctionAbstract::isClosure ( void )

Checks whether it's a closure.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's a closure, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::()

ReflectionFunctionAbstract::inNamespace
ReflectionFunctionAbstract::isDeprecated
ReflectionFunctionAbstract


Checks if deprecated

ReflectionFunctionAbstract::isClosure
ReflectionFunctionAbstract::isInternal
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::isDeprecated

(PHP 5)

ReflectionFunctionAbstract::isDeprecated — Checks if deprecated

Descrição

public bool ReflectionFunctionAbstract::isDeprecated ( void )

Checks whether the function is deprecated.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's deprecated, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::getDocComment() - Gets doc comment

ReflectionFunctionAbstract::isClosure
ReflectionFunctionAbstract::isInternal
ReflectionFunctionAbstract


Checks if is internal

ReflectionFunctionAbstract::isDeprecated
ReflectionFunctionAbstract::isUserDefined
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::isInternal

(PHP 5)

ReflectionFunctionAbstract::isInternal — Checks if is internal

Descrição

public bool ReflectionFunctionAbstract::isInternal ( void )

Checks whether the function is internal, as opposed to user-defined.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's internal, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::isUserDefined() - Checks if user defined

ReflectionFunctionAbstract::isDeprecated
ReflectionFunctionAbstract::isUserDefined
ReflectionFunctionAbstract


Checks if user defined

ReflectionFunctionAbstract::isInternal
ReflectionFunctionAbstract::returnsReference
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::isUserDefined

(PHP 5)

ReflectionFunctionAbstract::isUserDefined — Checks if user defined

Descrição

public bool ReflectionFunctionAbstract::isUserDefined ( void )

Checks whether the function is user-defined, as opposed to internal.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it's user-defined, otherwise false;

Veja Também

  • ReflectionFunctionAbstract::isInternal() - Checks if is internal

ReflectionFunctionAbstract::isInternal
ReflectionFunctionAbstract::returnsReference
ReflectionFunctionAbstract


Checks if returns reference

ReflectionFunctionAbstract::isUserDefined
ReflectionFunctionAbstract::__toString
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::returnsReference

(PHP 5)

ReflectionFunctionAbstract::returnsReference — Checks if returns reference

Descrição

public bool ReflectionFunctionAbstract::returnsReference ( void )

Checks whether the function returns a reference.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if it returns a reference, otherwise FALSE

Veja Também

  • ReflectionFunctionAbstract::isClosure() - Checks if closure

ReflectionFunctionAbstract::isUserDefined
ReflectionFunctionAbstract::__toString
ReflectionFunctionAbstract


To string

ReflectionFunctionAbstract::returnsReference
ReflectionMethod
ReflectionFunctionAbstract
PHP Manual

ReflectionFunctionAbstract::__toString

(PHP 5)

ReflectionFunctionAbstract::__toString — To string

Descrição

abstract public void ReflectionFunctionAbstract::__toString ( void )

To string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The string.

Veja Também

  • ReflectionClass::clone()
  • __toString

ReflectionFunctionAbstract::returnsReference
ReflectionMethod
ReflectionFunctionAbstract


The ReflectionMethod class

Introdução

The ReflectionMethod class reports information about a method.

Sinopse da classe

ReflectionMethod extends ReflectionFunctionAbstract implements Reflector {
/* Constants */
const integer ReflectionMethod::IS_STATIC = 1 ;
const integer ReflectionMethod::IS_PUBLIC = 256 ;
const integer ReflectionMethod::IS_PROTECTED = 512 ;
const integer ReflectionMethod::IS_PRIVATE = 1024 ;
const integer ReflectionMethod::IS_ABSTRACT = 2 ;
const integer ReflectionMethod::IS_FINAL = 4 ;
/* Properties */
public $name ;
public $class ;
/* Methods */
__construct ( mixed $class , string $name )
public static string export ( string $class , string $name [, bool $return = false ] )
public ReflectionClass getDeclaringClass ( void )
public int getModifiers ( void )
public ReflectionMethod getPrototype ( void )
public mixed invoke ( object $object [, mixed $parameter [, mixed $... ]] )
public mixed invokeArgs ( object $object , array $args )
public bool isAbstract ( void )
public bool isConstructor ( void )
public bool isDestructor ( void )
public bool isFinal ( void )
public bool isPrivate ( void )
public bool isProtected ( void )
public bool isPublic ( void )
public bool isStatic ( void )
public void setAccessible ( bool $accessible )
public string __toString ( void )
/* Inherited methods */
final private void ReflectionFunctionAbstract::__clone ( void )
public string ReflectionFunctionAbstract::getDocComment ( void )
public int ReflectionFunctionAbstract::getEndLine ( void )
public ReflectionExtension ReflectionFunctionAbstract::getExtension ( void )
public string ReflectionFunctionAbstract::getExtensionName ( void )
public string ReflectionFunctionAbstract::getFileName ( void )
public string ReflectionFunctionAbstract::getName ( void )
public string ReflectionFunctionAbstract::getNamespaceName ( void )
public int ReflectionFunctionAbstract::getNumberOfParameters ( void )
public int ReflectionFunctionAbstract::getNumberOfRequiredParameters ( void )
public array ReflectionFunctionAbstract::getParameters ( void )
public string ReflectionFunctionAbstract::getShortName ( void )
public int ReflectionFunctionAbstract::getStartLine ( void )
public array ReflectionFunctionAbstract::getStaticVariables ( void )
public bool ReflectionFunctionAbstract::inNamespace ( void )
public bool ReflectionFunctionAbstract::isClosure ( void )
public bool ReflectionFunctionAbstract::isDeprecated ( void )
public bool ReflectionFunctionAbstract::isInternal ( void )
public bool ReflectionFunctionAbstract::isUserDefined ( void )
public bool ReflectionFunctionAbstract::returnsReference ( void )
abstract public void ReflectionFunctionAbstract::__toString ( void )
}

Propriedades

name

Method name

class

Class name

Constantes pré-definidas

ReflectionMethod Node Types

ReflectionMethod::IS_STATIC

Indicates that the method is static.

ReflectionMethod::IS_PUBLIC

Indicates that the method is public.

ReflectionMethod::IS_PROTECTED

Indicates that the method is protected.

ReflectionMethod::IS_PRIVATE

Indicates that the method is private.

ReflectionMethod::IS_ABSTRACT

Indicates that the method is abstract.

ReflectionMethod::IS_FINAL

Indicates that the method is final.

Índice

  • ReflectionMethod::__construct — Constructs a ReflectionMethod
  • ReflectionMethod::export — Export a reflection method.
  • ReflectionMethod::getDeclaringClass — Gets declaring class for the reflected method.
  • ReflectionMethod::getModifiers — Gets the method modifiers
  • ReflectionMethod::getPrototype — Gets the method prototype (if there is one).
  • ReflectionMethod::invoke — Invoke
  • ReflectionMethod::invokeArgs — Invoke args
  • ReflectionMethod::isAbstract — Checks if method is abstract
  • ReflectionMethod::isConstructor — Checks if method is a constructor
  • ReflectionMethod::isDestructor — Checks if method is a destructor
  • ReflectionMethod::isFinal — Checks if method is final
  • ReflectionMethod::isPrivate — Checks if method is private
  • ReflectionMethod::isProtected — Checks if method is protected
  • ReflectionMethod::isPublic — Checks if method is public
  • ReflectionMethod::isStatic — Checks if method is static
  • ReflectionMethod::setAccessible — Set method accessibility
  • ReflectionMethod::__toString — Returns the string representation of the Reflection method object.
ReflectionFunctionAbstract::__toString
ReflectionMethod::__construct
Reflection


Constructs a ReflectionMethod

ReflectionMethod
ReflectionMethod::export
ReflectionMethod
PHP Manual

ReflectionMethod::__construct

(PHP 5)

ReflectionMethod::__construct — Constructs a ReflectionMethod

Descrição

ReflectionMethod::__construct ( mixed $class , string $name )

Constructs a new ReflectionMethod.

Parâmetros

class

Classname or object (instance of the class) that contains the method.

name

Name of the method.

Valor Retornado

Não há valor retornado.

Erros

A ReflectionException is thrown if the given method does not exist.

Exemplos

Exemplo #1 ReflectionMethod::__construct() example

<?php
class Counter
{
    private static $c = 0;

    /**
     * Increment counter
     *
     * @final
     * @static
     * @access  public
     * @return  int
     */
    final public static function increment()
    {
        return ++self::$c;
    }
}

// Create an instance of the ReflectionMethod class
$method = new ReflectionMethod('Counter', 'increment');

// Print out basic information
printf(
    "===> The %s%s%s%s%s%s%s method '%s' (which is %s)\n" .
    "     declared in %s\n" .
    "     lines %d to %d\n" .
    "     having the modifiers %d[%s]\n",
        $method->isInternal() ? 'internal' : 'user-defined',
        $method->isAbstract() ? ' abstract' : '',
        $method->isFinal() ? ' final' : '',
        $method->isPublic() ? ' public' : '',
        $method->isPrivate() ? ' private' : '',
        $method->isProtected() ? ' protected' : '',
        $method->isStatic() ? ' static' : '',
        $method->getName(),
        $method->isConstructor() ? 'the constructor' : 'a regular method',
        $method->getFileName(),
        $method->getStartLine(),
        $method->getEndline(),
        $method->getModifiers(),
        implode(' ', Reflection::getModifierNames($method->getModifiers()))
);

// Print documentation comment
printf("---> Documentation:\n %s\n", var_export($method->getDocComment(), 1));

// Print static variables if existant
if ($statics= $method->getStaticVariables()) {
    printf("---> Static variables: %s\n", var_export($statics, 1));
}

// Invoke the method
printf("---> Invocation results in: ");
var_dump($method->invoke(NULL));
?>

O exemplo acima irá imprimir algo similar a:

===> The user-defined final public static method 'increment' (which is a regular method)
     declared in /Users/philip/cvs/phpdoc/test.php
     lines 14 to 17
     having the modifiers 261[final public static]
---> Documentation:
 '/**
     * Increment counter
     *
     * @final
     * @static
     * @access  public
     * @return  int
     */'
---> Invocation results in: int(1)

Veja Também

  • ReflectionMethod::export() - Export a reflection method.
  • Constructors

ReflectionMethod
ReflectionMethod::export
ReflectionMethod


Export a reflection method.

ReflectionMethod::__construct
ReflectionMethod::getDeclaringClass
ReflectionMethod
PHP Manual

ReflectionMethod::export

(PHP 5)

ReflectionMethod::export — Export a reflection method.

Descrição

public static string ReflectionMethod::export ( string $class , string $name [, bool $return = false ] )

Exports a ReflectionMethod.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

class

The class name.

name

The name of the method.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • ReflectionMethod::__construct() - Constructs a ReflectionMethod
  • ReflectionMethod::__toString() - Returns the string representation of the Reflection method object.

ReflectionMethod::__construct
ReflectionMethod::getDeclaringClass
ReflectionMethod


Gets declaring class for the reflected method.

ReflectionMethod::export
ReflectionMethod::getModifiers
ReflectionMethod
PHP Manual

ReflectionMethod::getDeclaringClass

(PHP 5)

ReflectionMethod::getDeclaringClass — Gets declaring class for the reflected method.

Descrição

public ReflectionClass ReflectionMethod::getDeclaringClass ( void )

Gets the declaring class for the reflected method.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionClass object of the class that the reflected method is part of.

Exemplos

Exemplo #1 ReflectionMethod::getDeclaringClass() example

<?php
class HelloWorld {

    protected function sayHelloTo($name) {
        return 'Hello ' . $name;
    }

}

$reflectionMethod = new ReflectionMethod(new HelloWorld(), 'sayHelloTo');
var_dump($reflectionMethod->getDeclaringClass());
?>

O exemplo acima irá imprimir:

object(ReflectionClass)#2 (1) {
  ["name"]=>
  string(10) "HelloWorld"
}

Veja Também

  • ReflectionMethod::isAbstract() - Checks if method is abstract

ReflectionMethod::export
ReflectionMethod::getModifiers
ReflectionMethod


Gets the method modifiers

ReflectionMethod::getDeclaringClass
ReflectionMethod::getPrototype
ReflectionMethod
PHP Manual

ReflectionMethod::getModifiers

(PHP 5)

ReflectionMethod::getModifiers — Gets the method modifiers

Descrição

public int ReflectionMethod::getModifiers ( void )

Gets the method modifiers.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A numeric representation of the modifiers. The modifiers are listed below. The actual meanings of these modifiers are described in the predefined constants.

ReflectionMethod modifiers
value | constant
1 | ReflectionMethod::IS_STATIC
2 | ReflectionMethod::IS_ABSTRACT
4 | ReflectionMethod::IS_FINAL
256 | ReflectionMethod::IS_PUBLIC
512 | ReflectionMethod::IS_PROTECTED
1024 | ReflectionMethod::IS_PRIVATE

Exemplos

Exemplo #1 ReflectionMethod::getModifiers() example

<?php
class Testing
{
    final public static function foo()
    {
        return;
    }
    public function bar()
    {
        return;
    }
}

$foo = new ReflectionMethod('Testing', 'foo');

echo "Modifiers for method foo():\n";
echo $foo->getModifiers() . "\n";
echo implode(' ', Reflection::getModifierNames($foo->getModifiers())) . "\n";

$bar = new ReflectionMethod('Testing', 'bar');

echo "Modifiers for method bar():\n";
echo $bar->getModifiers() . "\n";
echo implode(' ', Reflection::getModifierNames($bar->getModifiers()));
?>

O exemplo acima irá imprimir algo similar a:

Modifiers for method foo():
261
final public static
Modifiers for method bar():
65792

Veja Também

  • Reflection::getModifierNames() - Gets modifier names

ReflectionMethod::getDeclaringClass
ReflectionMethod::getPrototype
ReflectionMethod


Gets the method prototype (if there is one).

ReflectionMethod::getModifiers
ReflectionMethod::invoke
ReflectionMethod
PHP Manual

ReflectionMethod::getPrototype

(PHP 5)

ReflectionMethod::getPrototype — Gets the method prototype (if there is one).

Descrição

public ReflectionMethod ReflectionMethod::getPrototype ( void )

Returns the methods prototype.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionMethod instance of the method prototype.

Erros

A ReflectionException exception is thrown if the method does not have a prototype.

Exemplos

Exemplo #1 ReflectionMethod::getPrototype() example

<?php
class Hello {

    public function sayHelloTo($name) {
        return 'Hello ' . $name;
    }

}
class HelloWorld extends Hello {

    public function sayHelloTo($name) {
        return 'Hello world: ' . $name;
    }

}

$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
var_dump($reflectionMethod->getPrototype());
?>

O exemplo acima irá imprimir:

object(ReflectionMethod)#2 (2) {
  ["name"]=>
  string(10) "sayHelloTo"
  ["class"]=>
  string(5) "Hello"
}

Veja Também

  • ReflectionMethod::getModifiers() - Gets the method modifiers

ReflectionMethod::getModifiers
ReflectionMethod::invoke
ReflectionMethod


Invoke

ReflectionMethod::getPrototype
ReflectionMethod::invokeArgs
ReflectionMethod
PHP Manual

ReflectionMethod::invoke

(PHP 5)

ReflectionMethod::invoke — Invoke

Descrição

public mixed ReflectionMethod::invoke ( object $object [, mixed $parameter [, mixed $... ]] )

Invokes a reflected method.

Parâmetros

object

The object to invoke the method on. In case of static methods, you can pass null to this parameter.

parameter

Zero or more parameters to be passed to the method. It accepts a variable number of parameters which are passed to the method.

Valor Retornado

Returns the method result.

Erros

A ReflectionException if the object parameter does not contain an instance of the class that this method was declared in.

A ReflectionException if the method invocation failed.

Exemplos

Exemplo #1 ReflectionMethod::invoke() example

<?php
class HelloWorld {

    public function sayHelloTo($name) {
        return 'Hello ' . $name;
    }

}

$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo $reflectionMethod->invoke(new HelloWorld(), 'Mike');
?>

O exemplo acima irá imprimir:

Hello Mike

Veja Também

  • ReflectionMethod::invokeArgs() - Invoke args
  • __invoke

ReflectionMethod::getPrototype
ReflectionMethod::invokeArgs
ReflectionMethod


Invoke args

ReflectionMethod::invoke
ReflectionMethod::isAbstract
ReflectionMethod
PHP Manual

ReflectionMethod::invokeArgs

(PHP 5 >= 5.1.0)

ReflectionMethod::invokeArgs — Invoke args

Descrição

public mixed ReflectionMethod::invokeArgs ( object $object , array $args )

Invoke arguments.

Parâmetros

object

The object to invoke the method on. In case of static methods, you can pass null to this parameter.

args

The parameters to be passed to the function, as an array.

Valor Retornado

Returns the method result.

Erros

A ReflectionException if the object parameter does not contain an instance of the class that this method was declared in.

A ReflectionException if the method invocation failed.

Exemplos

Exemplo #1 ReflectionMethod::invokeArgs() example

<?php
class HelloWorld {

    public function sayHelloTo($name) {
        return 'Hello ' . $name;
    }

}

$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo $reflectionMethod->invokeArgs(new HelloWorld(), array('Mike'));
?>

O exemplo acima irá imprimir:

Hello Mike

Veja Também

  • ReflectionMethod::invoke() - Invoke
  • __invoke

ReflectionMethod::invoke
ReflectionMethod::isAbstract
ReflectionMethod


Checks if method is abstract

ReflectionMethod::invokeArgs
ReflectionMethod::isConstructor
ReflectionMethod
PHP Manual

ReflectionMethod::isAbstract

(PHP 5)

ReflectionMethod::isAbstract — Checks if method is abstract

Descrição

public bool ReflectionMethod::isAbstract ( void )

Checks if the method is abstract.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is abstract, otherwise FALSE

Veja Também

  • ReflectionMethod::getDeclaringClass() - Gets declaring class for the reflected method.

ReflectionMethod::invokeArgs
ReflectionMethod::isConstructor
ReflectionMethod


Checks if method is a constructor

ReflectionMethod::isAbstract
ReflectionMethod::isDestructor
ReflectionMethod
PHP Manual

ReflectionMethod::isConstructor

(PHP 5)

ReflectionMethod::isConstructor — Checks if method is a constructor

Descrição

public bool ReflectionMethod::isConstructor ( void )

Checks if the method is a constructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is a constructor, otherwise FALSE

Veja Também

  • ReflectionMethod::__construct() - Constructs a ReflectionMethod
  • ReflectionMethod::isAbstract() - Checks if method is abstract
  • ReflectionMethod::isDestructor() - Checks if method is a destructor

ReflectionMethod::isAbstract
ReflectionMethod::isDestructor
ReflectionMethod


Checks if method is a destructor

ReflectionMethod::isConstructor
ReflectionMethod::isFinal
ReflectionMethod
PHP Manual

ReflectionMethod::isDestructor

(PHP 5)

ReflectionMethod::isDestructor — Checks if method is a destructor

Descrição

public bool ReflectionMethod::isDestructor ( void )

Checks if the method is a destructor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is a destructor, otherwise FALSE

Veja Também

  • ReflectionMethod::isConstructor() - Checks if method is a constructor

ReflectionMethod::isConstructor
ReflectionMethod::isFinal
ReflectionMethod


Checks if method is final

ReflectionMethod::isDestructor
ReflectionMethod::isPrivate
ReflectionMethod
PHP Manual

ReflectionMethod::isFinal

(PHP 5)

ReflectionMethod::isFinal — Checks if method is final

Descrição

public bool ReflectionMethod::isFinal ( void )

Checks if the method is final.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is final, otherwise FALSE

Veja Também

  • ReflectionMethod::isStatic() - Checks if method is static

ReflectionMethod::isDestructor
ReflectionMethod::isPrivate
ReflectionMethod


Checks if method is private

ReflectionMethod::isFinal
ReflectionMethod::isProtected
ReflectionMethod
PHP Manual

ReflectionMethod::isPrivate

(PHP 5)

ReflectionMethod::isPrivate — Checks if method is private

Descrição

public bool ReflectionMethod::isPrivate ( void )

Checks if the method is private.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is private, otherwise FALSE

Veja Também

  • ReflectionMethod::isPublic() - Checks if method is public

ReflectionMethod::isFinal
ReflectionMethod::isProtected
ReflectionMethod


Checks if method is protected

ReflectionMethod::isPrivate
ReflectionMethod::isPublic
ReflectionMethod
PHP Manual

ReflectionMethod::isProtected

(PHP 5)

ReflectionMethod::isProtected — Checks if method is protected

Descrição

public bool ReflectionMethod::isProtected ( void )

Checks if the method is protected.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is protected, otherwise FALSE

Veja Também

  • ReflectionMethod::isPrivate() - Checks if method is private

ReflectionMethod::isPrivate
ReflectionMethod::isPublic
ReflectionMethod


Checks if method is public

ReflectionMethod::isProtected
ReflectionMethod::isStatic
ReflectionMethod
PHP Manual

ReflectionMethod::isPublic

(PHP 5)

ReflectionMethod::isPublic — Checks if method is public

Descrição

public bool ReflectionMethod::isPublic ( void )

Checks if the method is public.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is public, otherwise FALSE

Veja Também

  • ReflectionMethod::isPrivate() - Checks if method is private

ReflectionMethod::isProtected
ReflectionMethod::isStatic
ReflectionMethod


Checks if method is static

ReflectionMethod::isPublic
ReflectionMethod::setAccessible
ReflectionMethod
PHP Manual

ReflectionMethod::isStatic

(PHP 5)

ReflectionMethod::isStatic — Checks if method is static

Descrição

public bool ReflectionMethod::isStatic ( void )

Checks if the method is static.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the method is static, otherwise FALSE

Veja Também

  • ReflectionMethod::isFinal() - Checks if method is final

ReflectionMethod::isPublic
ReflectionMethod::setAccessible
ReflectionMethod


Set method accessibility

ReflectionMethod::isStatic
ReflectionMethod::__toString
ReflectionMethod
PHP Manual

ReflectionMethod::setAccessible

(PHP 5 >= 5.3.2)

ReflectionMethod::setAccessible — Set method accessibility

Descrição

public void ReflectionMethod::setAccessible ( bool $accessible )

Sets a method to be accessible. For example, it may allow protected and private methods to be invoked.

Parâmetros

accessible

TRUE to allow accessibility, or FALSE.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionMethod::isPrivate() - Checks if method is private
  • ReflectionMethod::isProtected() - Checks if method is protected

ReflectionMethod::isStatic
ReflectionMethod::__toString
ReflectionMethod


Returns the string representation of the Reflection method object.

ReflectionMethod::setAccessible
ReflectionObject
ReflectionMethod
PHP Manual

ReflectionMethod::__toString

(PHP 5)

ReflectionMethod::__toString — Returns the string representation of the Reflection method object.

Descrição

public string ReflectionMethod::__toString ( void )

Returns the string representation of the Reflection method object.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string representation of this ReflectionMethod instance.

Exemplos

Exemplo #1 ReflectionMethod::__toString() example

<?php
class HelloWorld {

    public function sayHelloTo($name) {
        return 'Hello ' . $name;
    }

}

$reflectionMethod = new ReflectionMethod(new HelloWorld(), 'sayHelloTo');
echo $reflectionMethod;
?>

O exemplo acima irá imprimir:

Method [ <user> public method sayHelloTo ] {
  @@ /var/www/examples/reflection.php 16 - 18

  - Parameters [1] {
    Parameter #0 [ <required> $name ]
  }
}

Veja Também

  • ReflectionMethod::export() - Export a reflection method.
  • __toString

ReflectionMethod::setAccessible
ReflectionObject
ReflectionMethod


The ReflectionObject class

Introdução

The ReflectionObject class reports information about an object.

Sinopse da classe

ReflectionObject extends ReflectionClass implements Reflector {
/* Constants */
const integer ReflectionObject::IS_IMPLICIT_ABSTRACT = 16 ;
const integer ReflectionObject::IS_EXPLICIT_ABSTRACT = 32 ;
const integer ReflectionObject::IS_FINAL = 64 ;
/* Properties */
/* Methods */
__construct ( object $argument )
public static string export ( string $argument [, bool $return ] )
/* Inherited methods */
final private void ReflectionClass::__clone ( void )
ReflectionClass::__construct ( mixed $argument )
public static string ReflectionClass::export ( mixed $argument [, bool $return = false ] )
public mixed ReflectionClass::getConstant ( string $name )
public array ReflectionClass::getConstants ( void )
public object ReflectionClass::getConstructor ( void )
public array ReflectionClass::getDefaultProperties ( void )
public string ReflectionClass::getDocComment ( void )
public int ReflectionClass::getEndLine ( void )
public ReflectionExtension ReflectionClass::getExtension ( void )
public string ReflectionClass::getExtensionName ( void )
public string ReflectionClass::getFileName ( void )
public array ReflectionClass::getInterfaceNames ( void )
public array ReflectionClass::getInterfaces ( void )
public object ReflectionClass::getMethod ( string $name )
public array ReflectionClass::getMethods ([ string $filter ] )
public int ReflectionClass::getModifiers ( void )
public string ReflectionClass::getName ( void )
public string ReflectionClass::getNamespaceName ( void )
public object ReflectionClass::getParentClass ( void )
public array ReflectionClass::getProperties ([ int $filter ] )
public ReflectionProperty ReflectionClass::getProperty ( string $name )
public string ReflectionClass::getShortName ( void )
public int ReflectionClass::getStartLine ( void )
public array ReflectionClass::getStaticProperties ( void )
public mixed ReflectionClass::getStaticPropertyValue ( string $name [, string $default ] )
public bool ReflectionClass::hasConstant ( string $name )
public bool ReflectionClass::hasMethod ( string $name )
public bool ReflectionClass::hasProperty ( string $name )
public bool ReflectionClass::implementsInterface ( string $interface )
public bool ReflectionClass::inNamespace ( void )
public bool ReflectionClass::isAbstract ( void )
public bool ReflectionClass::isFinal ( void )
public bool ReflectionClass::isInstance ( object $object )
public bool ReflectionClass::isInstantiable ( void )
public bool ReflectionClass::isInterface ( void )
public bool ReflectionClass::isInternal ( void )
public bool ReflectionClass::isIterateable ( void )
public bool ReflectionClass::isSubclassOf ( string $class )
public bool ReflectionClass::isUserDefined ( void )
public object ReflectionClass::newInstance ( mixed $args [, mixed $... ] )
public object ReflectionClass::newInstanceArgs ([ array $args ] )
public void ReflectionClass::setStaticPropertyValue ( string $name , string $value )
public string ReflectionClass::__toString ( void )
}

Propriedades

name

Prop description

Constantes pré-definidas

ReflectionObject Node Types

ReflectionObject::IS_IMPLICIT_ABSTRACT

Description here...

ReflectionObject::IS_EXPLICIT_ABSTRACT

Description here...

ReflectionObject::IS_FINAL

Description here...

Índice

  • ReflectionObject::__construct — Constructs a ReflectionObject
  • ReflectionObject::export — Export
ReflectionMethod::__toString
ReflectionObject::__construct
Reflection


Constructs a ReflectionObject

ReflectionObject
ReflectionObject::export
ReflectionObject
PHP Manual

ReflectionObject::__construct

(PHP 5)

ReflectionObject::__construct — Constructs a ReflectionObject

Descrição

ReflectionObject::__construct ( object $argument )

Constructs a ReflectionObject.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

argument

An object instance.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionObject::export() - Export
  • Constructors

ReflectionObject
ReflectionObject::export
ReflectionObject


Export

ReflectionObject::__construct
ReflectionParameter
ReflectionObject
PHP Manual

ReflectionObject::export

(PHP 5)

ReflectionObject::export — Export

Descrição

public static string ReflectionObject::export ( string $argument [, bool $return ] )

Exports a reflection.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

argument

The reflection to export.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

If the return parameter is set to TRUE, then the export is returned as a string, otherwise NULL is returned.

Veja Também

  • ReflectionObject::__construct() - Constructs a ReflectionObject

ReflectionObject::__construct
ReflectionParameter
ReflectionObject


The ReflectionParameter class

Introdução

The ReflectionParameter class retrieves information about a function's or method's parameters.

To introspect function parameters, first create an instance of the ReflectionFunction or ReflectionMethod classes and then use their ReflectionFunctionAbstract::getParameters() method to retrieve an array of parameters.

Sinopse da classe

ReflectionParameter implements Reflector {
/* Properties */
public $name ;
/* Methods */
public bool allowsNull ( void )
final private void __clone ( void )
__construct ( string $function , string $parameter )
public static string export ( string $function , string $parameter [, bool $return ] )
public ReflectionClass getClass ( void )
public ReflectionClass getDeclaringClass ( void )
public ReflectionFunction getDeclaringFunction ( void )
public mixed getDefaultValue ( void )
public string getName ( void )
public int getPosition ( void )
public bool isArray ( void )
public bool isDefaultValueAvailable ( void )
public bool isOptional ( void )
public bool isPassedByReference ( void )
public string __toString ( void )
}

Propriedades

name

Prop description

Índice

  • ReflectionParameter::allowsNull — Checks if null is allowed
  • ReflectionParameter::__clone — Clone
  • ReflectionParameter::__construct — Construct
  • ReflectionParameter::export — Exports
  • ReflectionParameter::getClass — Get class
  • ReflectionParameter::getDeclaringClass — Gets declaring class
  • ReflectionParameter::getDeclaringFunction — Gets declaring function
  • ReflectionParameter::getDefaultValue — Gets default parameter value
  • ReflectionParameter::getName — Gets parameter name
  • ReflectionParameter::getPosition — Gets parameter position
  • ReflectionParameter::isArray — Checks if parameter expects an array
  • ReflectionParameter::isDefaultValueAvailable — Checks if a default value is available
  • ReflectionParameter::isOptional — Checks if optional
  • ReflectionParameter::isPassedByReference — Checks if passed by reference
  • ReflectionParameter::__toString — To string
ReflectionObject::export
ReflectionParameter::allowsNull
Reflection


Checks if null is allowed

ReflectionParameter
ReflectionParameter::__clone
ReflectionParameter
PHP Manual

ReflectionParameter::allowsNull

(PHP 5)

ReflectionParameter::allowsNull — Checks if null is allowed

Descrição

public bool ReflectionParameter::allowsNull ( void )

Checks whether the parameter allows NULL.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if NULL is allowed, otherwise FALSE

Veja Também

  • ReflectionParameter::isOptional() - Checks if optional

ReflectionParameter
ReflectionParameter::__clone
ReflectionParameter


Clone

ReflectionParameter::allowsNull
ReflectionParameter::__construct
ReflectionParameter
PHP Manual

ReflectionParameter::__clone

(PHP 5)

ReflectionParameter::__clone — Clone

Descrição

final private void ReflectionParameter::__clone ( void )

Clones.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionParameter::toString()
  • Object cloning

ReflectionParameter::allowsNull
ReflectionParameter::__construct
ReflectionParameter


Construct

ReflectionParameter::__clone
ReflectionParameter::export
ReflectionParameter
PHP Manual

ReflectionParameter::__construct

(PHP 5)

ReflectionParameter::__construct — Construct

Descrição

ReflectionParameter::__construct ( string $function , string $parameter )

Constructs a ReflectionParameter class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

function

The function to reflect parameters from.

parameter

The parameter.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Using the ReflectionParameter class

<?php
function foo($a, $b, $c) { }
function bar(Exception $a, &$b, $c) { }
function baz(ReflectionFunction $a, $b = 1, $c = null) { }
function abc() { }

$reflect = new ReflectionFunction('foo');

echo $reflect;

foreach ($reflect->getParameters() as $i => $param) {
    printf(
        "-- Parameter #%d: %s {\n".
        "   Class: %s\n".
        "   Allows NULL: %s\n".
        "   Passed to by reference: %s\n".
        "   Is optional?: %s\n".
        "}\n",
        $i, // $param->getPosition() can be used from PHP 5.2.3
        $param->getName(),
        var_export($param->getClass(), 1),
        var_export($param->allowsNull(), 1),
        var_export($param->isPassedByReference(), 1),
        $param->isOptional() ? 'yes' : 'no'
    );
}
?>

O exemplo acima irá imprimir algo similar a:

Function [ <user> function foo ] {
  @@ /Users/philip/cvs/phpdoc/a 2 - 2

  - Parameters [3] {
    Parameter #0 [ <required> $a ]
    Parameter #1 [ <required> $b ]
    Parameter #2 [ <required> $c ]
  }
}
-- Parameter #0: a {
   Class: NULL
   Allows NULL: true
   Passed to by reference: false
   Is optional?: no
}
-- Parameter #1: b {
   Class: NULL
   Allows NULL: true
   Passed to by reference: false
   Is optional?: no
}
-- Parameter #2: c {
   Class: NULL
   Allows NULL: true
   Passed to by reference: false
   Is optional?: no
}

Veja Também

  • ReflectionFunction::__construct() - Constructs a ReflectionFunction object
  • ReflectionMethod::__construct() - Constructs a ReflectionMethod
  • Constructors

ReflectionParameter::__clone
ReflectionParameter::export
ReflectionParameter


Exports

ReflectionParameter::__construct
ReflectionParameter::getClass
ReflectionParameter
PHP Manual

ReflectionParameter::export

(PHP 5)

ReflectionParameter::export — Exports

Descrição

public static string ReflectionParameter::export ( string $function , string $parameter [, bool $return ] )

Exports.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

function

The function name.

parameter

The parameter name.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

The exported reflection.

Veja Também

  • ReflectionParameter::toString()

ReflectionParameter::__construct
ReflectionParameter::getClass
ReflectionParameter


Get class

ReflectionParameter::export
ReflectionParameter::getDeclaringClass
ReflectionParameter
PHP Manual

ReflectionParameter::getClass

(PHP 5)

ReflectionParameter::getClass — Get class

Descrição

public ReflectionClass ReflectionParameter::getClass ( void )

Gets a class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionClass object.

Veja Também

  • ReflectionParameter::getDeclaringClass() - Gets declaring class

ReflectionParameter::export
ReflectionParameter::getDeclaringClass
ReflectionParameter


Gets declaring class

ReflectionParameter::getClass
ReflectionParameter::getDeclaringFunction
ReflectionParameter
PHP Manual

ReflectionParameter::getDeclaringClass

(PHP 5)

ReflectionParameter::getDeclaringClass — Gets declaring class

Descrição

public ReflectionClass ReflectionParameter::getDeclaringClass ( void )

Gets the declaring class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionClass object.

Veja Também

  • ReflectionParameter::getClass() - Get class

ReflectionParameter::getClass
ReflectionParameter::getDeclaringFunction
ReflectionParameter


Gets declaring function

ReflectionParameter::getDeclaringClass
ReflectionParameter::getDefaultValue
ReflectionParameter
PHP Manual

ReflectionParameter::getDeclaringFunction

(PHP 5 >= 5.2.3)

ReflectionParameter::getDeclaringFunction — Gets declaring function

Descrição

public ReflectionFunction ReflectionParameter::getDeclaringFunction ( void )

Gets the declaring function.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionFunction object.

Veja Também

  • ReflectionParameter::getDeclaringClass() - Gets declaring class

ReflectionParameter::getDeclaringClass
ReflectionParameter::getDefaultValue
ReflectionParameter


Gets default parameter value

ReflectionParameter::getDeclaringFunction
ReflectionParameter::getName
ReflectionParameter
PHP Manual

ReflectionParameter::getDefaultValue

(PHP 5 >= 5.0.3)

ReflectionParameter::getDefaultValue — Gets default parameter value

Descrição

public mixed ReflectionParameter::getDefaultValue ( void )

Gets the default value of the parameter for a user-defined function or method. If the parameter is not optional a ReflectionException will be thrown.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The parameters default value.

Exemplos

Exemplo #1 Getting

<?php
function foo($test, $bar = 'baz')
{
    echo $test . $bar;
}

$function = new ReflectionFunction('foo');

foreach ($function->getParameters() as $param) {
    echo 'Name: ' . $param->getName() . PHP_EOL;
    if ($param->isOptional()) {
        echo 'Default value: ' . $param->getDefaultValue() . PHP_EOL;
    }
    echo PHP_EOL;
}
?>

O exemplo acima irá imprimir:

Name: test

Name: bar
Default value: baz

Notas

Nota:

Due to implementation details, it is not possible to get the default value of built-in functions or methods of built-in classes. Trying to do this will result a ReflectionException being thrown.

Veja Também

  • ReflectionParameter::isOptional() - Checks if optional
  • ReflectionParameter::isPassedByReference() - Checks if passed by reference

ReflectionParameter::getDeclaringFunction
ReflectionParameter::getName
ReflectionParameter


Gets parameter name

ReflectionParameter::getDefaultValue
ReflectionParameter::getPosition
ReflectionParameter
PHP Manual

ReflectionParameter::getName

(PHP 5)

ReflectionParameter::getName — Gets parameter name

Descrição

public string ReflectionParameter::getName ( void )

Gets the name of the parameter.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The name of the reflected parameter.

Veja Também

  • ReflectionParameter::getValue()

ReflectionParameter::getDefaultValue
ReflectionParameter::getPosition
ReflectionParameter


Gets parameter position

ReflectionParameter::getName
ReflectionParameter::isArray
ReflectionParameter
PHP Manual

ReflectionParameter::getPosition

(PHP 5 >= 5.2.3)

ReflectionParameter::getPosition — Gets parameter position

Descrição

public int ReflectionParameter::getPosition ( void )

Gets the position of the parameter.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The position of the parameter, left to right, starting at position #0.

Veja Também

  • ReflectionParameter::getName() - Gets parameter name

ReflectionParameter::getName
ReflectionParameter::isArray
ReflectionParameter


Checks if parameter expects an array

ReflectionParameter::getPosition
ReflectionParameter::isDefaultValueAvailable
ReflectionParameter
PHP Manual

ReflectionParameter::isArray

(PHP 5 >= 5.1.0)

ReflectionParameter::isArray — Checks if parameter expects an array

Descrição

public bool ReflectionParameter::isArray ( void )

Checks if the parameter expects an array.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if an array is expected, FALSE otherwise.

Veja Também

  • ReflectionParameter::isOptional() - Checks if optional

ReflectionParameter::getPosition
ReflectionParameter::isDefaultValueAvailable
ReflectionParameter


Checks if a default value is available

ReflectionParameter::isArray
ReflectionParameter::isOptional
ReflectionParameter
PHP Manual

ReflectionParameter::isDefaultValueAvailable

(PHP 5 >= 5.0.3)

ReflectionParameter::isDefaultValueAvailable — Checks if a default value is available

Descrição

public bool ReflectionParameter::isDefaultValueAvailable ( void )

Checks if a default value for the parameter is available.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if a default value is available, otherwise FALSE

Veja Também

  • ReflectionParameter::getDefaultValue() - Gets default parameter value
  • ReflectionParameter::getName() - Gets parameter name

ReflectionParameter::isArray
ReflectionParameter::isOptional
ReflectionParameter


Checks if optional

ReflectionParameter::isDefaultValueAvailable
ReflectionParameter::isPassedByReference
ReflectionParameter
PHP Manual

ReflectionParameter::isOptional

(PHP 5 >= 5.0.3)

ReflectionParameter::isOptional — Checks if optional

Descrição

public bool ReflectionParameter::isOptional ( void )

Checks if the parameter is optional.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the parameter is optional, otherwise FALSE

Veja Também

  • ReflectionParameter::getName() - Gets parameter name

ReflectionParameter::isDefaultValueAvailable
ReflectionParameter::isPassedByReference
ReflectionParameter


Checks if passed by reference

ReflectionParameter::isOptional
ReflectionParameter::__toString
ReflectionParameter
PHP Manual

ReflectionParameter::isPassedByReference

(PHP 5)

ReflectionParameter::isPassedByReference — Checks if passed by reference

Descrição

public bool ReflectionParameter::isPassedByReference ( void )

Checks if the parameter is passed in by reference.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the parameter is passed in by reference, otherwise FALSE

Veja Também

  • ReflectionParameter::getName() - Gets parameter name

ReflectionParameter::isOptional
ReflectionParameter::__toString
ReflectionParameter


To string

ReflectionParameter::isPassedByReference
ReflectionProperty
ReflectionParameter
PHP Manual

ReflectionParameter::__toString

(PHP 5)

ReflectionParameter::__toString — To string

Descrição

public string ReflectionParameter::__toString ( void )

To string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionParameter::export() - Exports
  • __toString

ReflectionParameter::isPassedByReference
ReflectionProperty
ReflectionParameter


The ReflectionProperty class

Introdução

The ReflectionProperty class reports information about a classes properties.

Sinopse da classe

ReflectionProperty implements Reflector {
/* Constants */
const integer ReflectionProperty::IS_STATIC = 1 ;
const integer ReflectionProperty::IS_PUBLIC = 256 ;
const integer ReflectionProperty::IS_PROTECTED = 512 ;
const integer ReflectionProperty::IS_PRIVATE = 1024 ;
/* Properties */
public $name ;
public $class ;
/* Methods */
final private void __clone ( void )
__construct ( mixed $class , string $name )
public static string export ( mixed $class , string $name [, bool $return ] )
public ReflectionClass getDeclaringClass ( void )
public string getDocComment ( void )
public int getModifiers ( void )
public string getName ( void )
public mixed getValue ( object $object )
public bool isDefault ( void )
public bool isPrivate ( void )
public bool isProtected ( void )
public bool isPublic ( void )
public bool isStatic ( void )
public void setAccessible ( bool $accessible )
public void setValue ( object $object , mixed $value )
public string __toString ( void )
}

Propriedades

name

Prop description

class

Prop description

Constantes pré-definidas

ReflectionProperty Node Types

ReflectionProperty::IS_STATIC

Description here...

ReflectionProperty::IS_PUBLIC

Description here...

ReflectionProperty::IS_PROTECTED

Description here...

ReflectionProperty::IS_PRIVATE

Description here...

Índice

  • ReflectionProperty::__clone — Clone
  • ReflectionProperty::__construct — Construct a ReflectionProperty object
  • ReflectionProperty::export — Export
  • ReflectionProperty::getDeclaringClass — Gets declaring class
  • ReflectionProperty::getDocComment — Gets doc comment
  • ReflectionProperty::getModifiers — Gets modifiers
  • ReflectionProperty::getName — Gets property name
  • ReflectionProperty::getValue — Gets value
  • ReflectionProperty::isDefault — Checks if default value
  • ReflectionProperty::isPrivate — Checks if property is private
  • ReflectionProperty::isProtected — Checks if property is protected
  • ReflectionProperty::isPublic — Checks if property is public
  • ReflectionProperty::isStatic — Checks if property is static
  • ReflectionProperty::setAccessible — Set property accessibility
  • ReflectionProperty::setValue — Set property value
  • ReflectionProperty::__toString — To string
ReflectionParameter::__toString
ReflectionProperty::__clone
Reflection


Clone

ReflectionProperty
ReflectionProperty::__construct
ReflectionProperty
PHP Manual

ReflectionProperty::__clone

(PHP 5)

ReflectionProperty::__clone — Clone

Descrição

final private void ReflectionProperty::__clone ( void )

Clones.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionProperty::export() - Export
  • Object cloning

ReflectionProperty
ReflectionProperty::__construct
ReflectionProperty


Construct a ReflectionProperty object

ReflectionProperty::__clone
ReflectionProperty::export
ReflectionProperty
PHP Manual

ReflectionProperty::__construct

(PHP 5)

ReflectionProperty::__construct — Construct a ReflectionProperty object

Descrição

ReflectionProperty::__construct ( mixed $class , string $name )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

class

The class name, that contains the property.

name

The name of the property being reflected.

Valor Retornado

Não há valor retornado.

Erros

Trying to get or set private or protected class property's values will result in an exception being thrown.

Exemplos

Exemplo #1 ReflectionProperty::__construct() example

<?php
class String
{
    public $length  = 5;
}

// Create an instance of the ReflectionProperty class
$prop = new ReflectionProperty('String', 'length');

// Print out basic information
printf(
    "===> The%s%s%s%s property '%s' (which was %s)\n" .
    "     having the modifiers %s\n",
        $prop->isPublic() ? ' public' : '',
        $prop->isPrivate() ? ' private' : '',
        $prop->isProtected() ? ' protected' : '',
        $prop->isStatic() ? ' static' : '',
        $prop->getName(),
        $prop->isDefault() ? 'declared at compile-time' : 'created at run-time',
        var_export(Reflection::getModifierNames($prop->getModifiers()), 1)
);

// Create an instance of String
$obj= new String();

// Get current value
printf("---> Value is: ");
var_dump($prop->getValue($obj));

// Change value
$prop->setValue($obj, 10);
printf("---> Setting value to 10, new value is: ");
var_dump($prop->getValue($obj));

// Dump object
var_dump($obj);
?>

O exemplo acima irá imprimir algo similar a:

===> The public property 'length' (which was declared at compile-time)
     having the modifiers array (
  0 => 'public',
)
---> Value is: int(5)
---> Setting value to 10, new value is: int(10)
object(String)#2 (1) {
  ["length"]=>
  int(10)
}

Exemplo #2 Getting value from private and protected properties using ReflectionProperty class

<?php

class Foo {
    public $x = 1;
    protected $y = 2;
    private $z = 3;
}

$obj = new Foo;

$prop = new ReflectionProperty('Foo', 'y');
$prop->setAccessible(true); /* As of PHP 5.3.0 */
var_dump($prop->getValue($obj)); // int(2)

$prop = new ReflectionProperty('Foo', 'z');
$prop->setAccessible(true); /* As of PHP 5.3.0 */
var_dump($prop->getValue($obj)); // int(2)

?>

O exemplo acima irá imprimir algo similar a:

int(2)
int(3)

Veja Também

  • ReflectionProperty::getName() - Gets property name
  • Constructors

ReflectionProperty::__clone
ReflectionProperty::export
ReflectionProperty


Export

ReflectionProperty::__construct
ReflectionProperty::getDeclaringClass
ReflectionProperty
PHP Manual

ReflectionProperty::export

(PHP 5)

ReflectionProperty::export — Export

Descrição

public static string ReflectionProperty::export ( mixed $class , string $name [, bool $return ] )

Exports a reflection.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

argument

The reflection to export.

name

The property name.

return

Setting to TRUE will return the export, as opposed to emitting it. Setting to FALSE (the default) will do the opposite.

Valor Retornado

Veja Também

  • ReflectionProperty::toString()

ReflectionProperty::__construct
ReflectionProperty::getDeclaringClass
ReflectionProperty


Gets declaring class

ReflectionProperty::export
ReflectionProperty::getDocComment
ReflectionProperty
PHP Manual

ReflectionProperty::getDeclaringClass

(PHP 5)

ReflectionProperty::getDeclaringClass — Gets declaring class

Descrição

public ReflectionClass ReflectionProperty::getDeclaringClass ( void )

Gets the declaring class.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A ReflectionClass object.

Veja Também

  • ReflectionProperty::getName() - Gets property name

ReflectionProperty::export
ReflectionProperty::getDocComment
ReflectionProperty


Gets doc comment

ReflectionProperty::getDeclaringClass
ReflectionProperty::getModifiers
ReflectionProperty
PHP Manual

ReflectionProperty::getDocComment

(PHP 5 >= 5.1.0)

ReflectionProperty::getDocComment — Gets doc comment

Descrição

public string ReflectionProperty::getDocComment ( void )

Gets the doc comment.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The doc comment.

Veja Também

  • ReflectionProperty::export() - Export

ReflectionProperty::getDeclaringClass
ReflectionProperty::getModifiers
ReflectionProperty


Gets modifiers

ReflectionProperty::getDocComment
ReflectionProperty::getName
ReflectionProperty
PHP Manual

ReflectionProperty::getModifiers

(PHP 5)

ReflectionProperty::getModifiers — Gets modifiers

Descrição

public int ReflectionProperty::getModifiers ( void )

Gets the modifiers.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A numeric representation of the modifiers.

Veja Também

  • ReflectionProperty::isPrivate() - Checks if property is private
  • Reflection::getModifierNames() - Gets modifier names

ReflectionProperty::getDocComment
ReflectionProperty::getName
ReflectionProperty


Gets property name

ReflectionProperty::getModifiers
ReflectionProperty::getValue
ReflectionProperty
PHP Manual

ReflectionProperty::getName

(PHP 5)

ReflectionProperty::getName — Gets property name

Descrição

public string ReflectionProperty::getName ( void )

Gets the properties name.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The name of the reflected property.

Veja Também

  • ReflectionProperty::getValue() - Gets value

ReflectionProperty::getModifiers
ReflectionProperty::getValue
ReflectionProperty


Gets value

ReflectionProperty::getName
ReflectionProperty::isDefault
ReflectionProperty
PHP Manual

ReflectionProperty::getValue

(PHP 5)

ReflectionProperty::getValue — Gets value

Descrição

public mixed ReflectionProperty::getValue ( object $object )

Gets the properties value.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

object

The object being reflected.

Valor Retornado

The current value of the property.

Veja Também

  • ReflectionProperty::getName() - Gets property name
  • ReflectionProperty::setValue() - Set property value

ReflectionProperty::getName
ReflectionProperty::isDefault
ReflectionProperty


Checks if default value

ReflectionProperty::getValue
ReflectionProperty::isPrivate
ReflectionProperty
PHP Manual

ReflectionProperty::isDefault

(PHP 5)

ReflectionProperty::isDefault — Checks if default value

Descrição

public bool ReflectionProperty::isDefault ( void )

Checks whether the property is the default.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the property was declared at compile-time, or FALSE if it was created at run-time.

Veja Também

  • ReflectionProperty::getValue() - Gets value

ReflectionProperty::getValue
ReflectionProperty::isPrivate
ReflectionProperty


Checks if property is private

ReflectionProperty::isDefault
ReflectionProperty::isProtected
ReflectionProperty
PHP Manual

ReflectionProperty::isPrivate

(PHP 5)

ReflectionProperty::isPrivate — Checks if property is private

Descrição

public bool ReflectionProperty::isPrivate ( void )

Checks whether the property is private.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the property is private, FALSE otherwise.

Veja Também

  • ReflectionProperty::isPublic() - Checks if property is public

ReflectionProperty::isDefault
ReflectionProperty::isProtected
ReflectionProperty


Checks if property is protected

ReflectionProperty::isPrivate
ReflectionProperty::isPublic
ReflectionProperty
PHP Manual

ReflectionProperty::isProtected

(PHP 5)

ReflectionProperty::isProtected — Checks if property is protected

Descrição

public bool ReflectionProperty::isProtected ( void )

Checks whether the property is protected.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the property is protected, FALSE otherwise.

Veja Também

  • ReflectionProperty::isPrivate() - Checks if property is private

ReflectionProperty::isPrivate
ReflectionProperty::isPublic
ReflectionProperty


Checks if property is public

ReflectionProperty::isProtected
ReflectionProperty::isStatic
ReflectionProperty
PHP Manual

ReflectionProperty::isPublic

(PHP 5)

ReflectionProperty::isPublic — Checks if property is public

Descrição

public bool ReflectionProperty::isPublic ( void )

Checks whether the property is public.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the property is public, FALSE otherwise.

Veja Também

  • ReflectionProperty::isPrivate() - Checks if property is private

ReflectionProperty::isProtected
ReflectionProperty::isStatic
ReflectionProperty


Checks if property is static

ReflectionProperty::isPublic
ReflectionProperty::setAccessible
ReflectionProperty
PHP Manual

ReflectionProperty::isStatic

(PHP 5)

ReflectionProperty::isStatic — Checks if property is static

Descrição

public bool ReflectionProperty::isStatic ( void )

Checks whether the property is static.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE if the property is static, FALSE otherwise.

Veja Também

  • ReflectionProperty::isPrivate() - Checks if property is private

ReflectionProperty::isPublic
ReflectionProperty::setAccessible
ReflectionProperty


Set property accessibility

ReflectionProperty::isStatic
ReflectionProperty::setValue
ReflectionProperty
PHP Manual

ReflectionProperty::setAccessible

(PHP 5 >= 5.3.0)

ReflectionProperty::setAccessible — Set property accessibility

Descrição

public void ReflectionProperty::setAccessible ( bool $accessible )

Sets a property to be accessible. For example, it may allow protected and private properties to be accessed.

Parâmetros

accessible

TRUE to allow accessibility, or FALSE.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionProperty::isPrivate() - Checks if property is private
  • ReflectionProperty::isProtected() - Checks if property is protected

ReflectionProperty::isStatic
ReflectionProperty::setValue
ReflectionProperty


Set property value

ReflectionProperty::setAccessible
ReflectionProperty::__toString
ReflectionProperty
PHP Manual

ReflectionProperty::setValue

(PHP 5)

ReflectionProperty::setValue — Set property value

Descrição

public void ReflectionProperty::setValue ( object $object , mixed $value )

Sets (changes) a properties value.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

object

The object name.

value

The new value.

Valor Retornado

Não há valor retornado.

Veja Também

  • ReflectionProperty::getValue() - Gets value

ReflectionProperty::setAccessible
ReflectionProperty::__toString
ReflectionProperty


To string

ReflectionProperty::setValue
Reflector
ReflectionProperty
PHP Manual

ReflectionProperty::__toString

(PHP 5)

ReflectionProperty::__toString — To string

Descrição

public string ReflectionProperty::__toString ( void )

To string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionProperty::()
  • __toString

ReflectionProperty::setValue
Reflector
ReflectionProperty


The Reflector interface

Introdução

Reflector is an interface implemented by all exportable Reflection classes.

Sinopse da classe

Reflector {
/* Methods */
abstract public static string export ( void )
abstract public string __toString ( void )
}

Índice

  • Reflector::export — Exports
  • Reflector::__toString — To string
ReflectionProperty::__toString
Reflector::export
Reflection


Exports

Reflector
Reflector::__toString
Reflector
PHP Manual

Reflector::export

(PHP 5)

Reflector::export — Exports

Descrição

abstract public static string Reflector::export ( void )

Exports.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • Reflection::__toString()

Reflector
Reflector::__toString
Reflector


To string

Reflector::export
Manipulação de variável
Reflector
PHP Manual

Reflector::__toString

(PHP 5)

Reflector::__toString — To string

Descrição

abstract public string Reflector::__toString ( void )

To string.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Veja Também

  • ReflectionProperty::export() - Export
  • __toString

Reflector::export
Manipulação de variável
Reflector


Manipulação de variável

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para Manipulação de variáveis
    • debug_zval_dump — Exibe a representação de um interno zend value
    • doubleval — Sinônimo de floatval
    • empty — Informa se a variável é vazia
    • floatval — Retorna o valor float da variável
    • get_defined_vars — Retorna o array com todas variáveis definidas
    • get_resource_type — Retorna o tipo de resource
    • gettype — Retorna o tipo da variável
    • import_request_variables — Importa variáveis GET/POST/Cookie para o escopo global
    • intval — Retorna o valor inteiro da variável
    • is_array — Verifica se a variável é um array
    • is_bool — Verifica se a variável é um boleano
    • is_callable — Verifica se o conteúdo da variável pode ser chamado como função
    • is_double — Sinônimo de is_float
    • is_float — Informa se a variável é do tipo float
    • is_int — Informa se a variável é do tipo inteiro
    • is_integer — Sinônimo de is_int
    • is_long — Sinônimo de is_int
    • is_null — Informa se a variável é NULL
    • is_numeric — Informa se a variável é um número ou uma string numérica
    • is_object — Informa se a variável é um objeto
    • is_real — Sinônimo de is_float
    • is_resource — Informa se a variável é um resource
    • is_scalar — Informa se é uma váriavel escalar
    • is_string — Informa se a variável é do tipo string
    • isset — Informa se a variável foi iniciada
    • print_r — Imprime informação sobre uma variável de forma legível
    • serialize — Generates a storable representation of a value
    • settype — Atribui um tipo para a variável
    • strval — Retorna o valor string de uma variável
    • unserialize — Creates a PHP value from a stored representation
    • unset — Destrói a variável especificada
    • var_dump — Mostra informações sobre a variável
    • var_export — Mostra ou retorna uma representação estruturada de uma variável
Reflector::__toString
Introdução
Variável e Extensões Relacionadas aos Tipos


Introdução

Para maiores informações do comportamento de variáveis veja Variavéis localizada na seção do manual Referências da Linguagem.

Manipulação de variável
Instalação/Configuração
Manipulação de variável


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Manipulação de variável


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de Configuração de Variáveis
Nome | Valor Padrão | Alterável | Changelog
unserialize_callback_func | NULL | PHP_INI_ALL | Disponível desde o PHP 4.2.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

unserialize_callback_func string

A função unserialize() de callback será chamada (com nome de classe indefinido como parâmetro), se o deserializador encontra uma classe indefinda que deve ser instanciada. Um aviso aparece se a função especificada não estiver definida, ou se a função não inclue/implementa a classe que falta. Então apenas configure essa entrada se você realmente quer implementa uma função de callback.

Veja também unserialize().

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções para Manipulação de variáveis
Manipulação de variável


Funções para Manipulação de variáveis

Índice

  • debug_zval_dump — Exibe a representação de um interno zend value
  • doubleval — Sinônimo de floatval
  • empty — Informa se a variável é vazia
  • floatval — Retorna o valor float da variável
  • get_defined_vars — Retorna o array com todas variáveis definidas
  • get_resource_type — Retorna o tipo de resource
  • gettype — Retorna o tipo da variável
  • import_request_variables — Importa variáveis GET/POST/Cookie para o escopo global
  • intval — Retorna o valor inteiro da variável
  • is_array — Verifica se a variável é um array
  • is_bool — Verifica se a variável é um boleano
  • is_callable — Verifica se o conteúdo da variável pode ser chamado como função
  • is_double — Sinônimo de is_float
  • is_float — Informa se a variável é do tipo float
  • is_int — Informa se a variável é do tipo inteiro
  • is_integer — Sinônimo de is_int
  • is_long — Sinônimo de is_int
  • is_null — Informa se a variável é NULL
  • is_numeric — Informa se a variável é um número ou uma string numérica
  • is_object — Informa se a variável é um objeto
  • is_real — Sinônimo de is_float
  • is_resource — Informa se a variável é um resource
  • is_scalar — Informa se é uma váriavel escalar
  • is_string — Informa se a variável é do tipo string
  • isset — Informa se a variável foi iniciada
  • print_r — Imprime informação sobre uma variável de forma legível
  • serialize — Generates a storable representation of a value
  • settype — Atribui um tipo para a variável
  • strval — Retorna o valor string de uma variável
  • unserialize — Creates a PHP value from a stored representation
  • unset — Destrói a variável especificada
  • var_dump — Mostra informações sobre a variável
  • var_export — Mostra ou retorna uma representação estruturada de uma variável
Constantes pré-definidas
debug_zval_dump
Manipulação de variável


Exibe a representação de um interno zend value

Funções para Manipulação de variáveis
doubleval
Funções para Manipulação de variáveis
PHP Manual

debug_zval_dump

(PHP 4 >= 4.2.0, PHP 5)

debug_zval_dump — Exibe a representação de um interno zend value

Descrição

void debug_zval_dump ( mixed $variable )

Exibe a representação de um interno zend value.

Parâmetros

variable

A variável a ser avaliada.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo da debug_zval_dump()

<?php
$var1 = 'Hello World';
$var2 = '';

$var2 =& $var1;

debug_zval_dump(&$var1);
?>

O exemplo acima irá imprimir:

&string(11) "Hello World" refcount(3)

Nota: Cuidado com o refcount

O valor refcount retornado por esta função não é óbvio em certas circunstâncias. Por exemplo, um desenvolvedor espera que o exemplo acima indique um refcount de 2. A terceira referência é criada quando debug_zval_dump() é chamada.

Este comportamento ocorre quando uma variável não passada para debug_zval_dump() por referência. Para ilustrar, veja a pequena modificação do exemplo acima:

<?php
$var1 = 'Hello World';
$var2 = '';

$var2 =& $var1;

debug_zval_dump($var1); // not passed by reference, this time
?>

O exemplo acima irá imprimir:

string(11) "Hello World" refcount(1)

Por quê refcount(1)? Por causa da cópia da $var1 ser feita, quando a função é chamada.

Esta função se torna muita confusa quando uma variável com um refcount de 1 é passado (por cópia/valor):

<?php
$var1 = 'Hello World';

debug_zval_dump($var1);
?>

O exemplo acima irá imprimir:

string(11) "Hello World" refcount(2)

O refcount de 2, aqui, é extremamente não óbvio. Especialmente considerando os exemplos acima. Então o quê acontece?

Quando uma variável tem uma única referência (com faz $var1 antes de ser usada como um argumento para debug_zval_dump()), a engine do PHP otimiza em que ela é passada para uma função. Internalmente, PHP trata $var1 como uma referência (em que o refcount é aumentado para o escopo desta função), com um aviso que se passado referência pode ser reescrito para, um cópia feita, mas somente no momento de escrita. Isto é conhecido como "cópia na escrita."

Então, se debug_zval_dump() precisa escrever para o único parãmetro (e ele não faz), então uma cópia pode ser feita. Desde então, a referência para o parâmetro é mantida, fazendo com que o refcount seja incrementado para 2 para o escopo da chamada da função.

Veja Também

  • var_dump() - Mostra informações sobre a variável
  • debug_backtrace() - Generates a backtrace
  • Explicação sobre Referências
  • » Explicação sobre Referências (por Derick Rethans)

Funções para Manipulação de variáveis
doubleval
Funções para Manipulação de variáveis


Sinônimo de floatval

debug_zval_dump
empty
Funções para Manipulação de variáveis
PHP Manual

doubleval

(PHP 4, PHP 5)

doubleval — Sinônimo de floatval()

Descrição

Esta função é um apelido para: floatval().

Histórico

Versão | Descrição
4.2.0 | doubleval() tornou-se um apelido para floatval(). Antes disso, somente doubleval() existia.

debug_zval_dump
empty
Funções para Manipulação de variáveis


Informa se a variável é vazia

doubleval
floatval
Funções para Manipulação de variáveis
PHP Manual

empty

(PHP 4, PHP 5)

empty — Informa se a variável é vazia

Descrição

bool empty ( mixed $var )

Determina se a variável é considerada vazia.

Parâmetros

var

Variável a ser verificada

Nota:

empty() somente verifica variáveis, qualquer outra coisa então irá resultar em um parse error. Em outras palavras, o seguinte não irá funcionar: empty(trim($name)).

empty() é o oposto de (boolean) var, com exceção de não gerar um alerta (warning) se a variável não existir.

Valor Retornado

Retorna FALSE se var não for vazia e valor diferente de zero.

O que é visto abaixo é considerado vazio:

  • "" (an empty string)
  • 0 (0 as an integer)
  • "0" (0 as a string)
  • NULL
  • FALSE
  • array() (an empty array)
  • var $var; (a variable declared, but without a value in a class)

Histórico

Versão | Descrição
PHP 5 | No PHP 5, objetos sem propriedades não são mais considerado vazio.
PHP 4 | No PHP 4, a string "0" é considerada vazia.

Exemplos

Exemplo #1 Uma simples comparação entre as funções empty() / isset().

<?php
$var = 0;

// Será interpretado como true, porque $var é um valor vazio
if (empty($var)) {
    echo '$var é um dos valores: 0, empty ou uma variável inexistente';
}

// Será interpretado como true porque $var está 'setado'
if (isset($var)) {
    echo '$var está "setado" apesar de vazio';
}
?>

Notas

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

Veja Também

  • isset() - Informa se a variável foi iniciada
  • unset() - Destrói a variável especificada
  • array_key_exists() - Checa se uma chave ou índice existe em um array
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto
  • strlen() - Retorna o tamanho de uma string
  • A tabela de comparação de tipos

doubleval
floatval
Funções para Manipulação de variáveis


Retorna o valor float da variável

empty
get_defined_vars
Funções para Manipulação de variáveis
PHP Manual

floatval

(PHP 4 >= 4.2.0, PHP 5)

floatval — Retorna o valor float da variável

Descrição

float floatval ( mixed $var )

Obtém o valor float de var.

Parâmetros

var

Pode ser qualquer tipo escalar. Você não pode usar floatval() em arrays ou objetos.

Valor Retornado

O valor float de uma dada variável.

Exemplos

Exemplo #1 Exemplo da floatval()

<?php
$variavel = '122.34343The';
$valor_float = floatval ($variavel);
echo $valor_float; // mostra 122.34343
?>

Veja Também

  • intval() - Retorna o valor inteiro da variável
  • strval() - Retorna o valor string de uma variável
  • settype() - Atribui um tipo para a variável
  • Manipulação de Tipos

empty
get_defined_vars
Funções para Manipulação de variáveis


Retorna o array com todas variáveis definidas

floatval
get_resource_type
Funções para Manipulação de variáveis
PHP Manual

get_defined_vars

(PHP 4 >= 4.0.4, PHP 5)

get_defined_vars — Retorna o array com todas variáveis definidas

Descrição

array get_defined_vars ( void )

Essa função retorna um array multimensional contendo uma lista de todas as variáveis definidas, incluindo variáveis de ambiente, servidor ou variáveis definidas pelo usuário, dentro do escopo que get_defined_vars() é chamada.

Valor Retornado

Um array multidimensional com todas as variáveis.

Exemplos

Exemplo #1 Exemplo da get_defined_vars()

<?php
$b = array(1,1,2,3,5,8);

$arr = get_defined_vars();

// mostra $b
print_r($arr["b"]);

/* mostra o caminho do interpretador do PHP (se for usado como CGI)
 * por exemplo /usr/local/bin/php */
echo $arr["_"];

// mostra os parâmetros da linha de comando se for usado
print_r($arr["argv"]);

// mostra todas variáveis de servidor
print_r($arr["_SERVER"]);

// mostra todos os indíces possíveis para a matriz de variáveis
print_r(array_keys(get_defined_vars()));
?>

Histórico

Versão | Descrição
5.0.0 | A variável $GLOBALS foi incluida no resultado do array retornado.

Veja Também

  • isset() - Informa se a variável foi iniciada
  • get_defined_functions() - Retorna um array de todas as funções definidas
  • get_defined_constants() - Retorna uma matriz associativa com os nomes de todas as constantes e seus valores

floatval
get_resource_type
Funções para Manipulação de variáveis


Retorna o tipo de resource

get_defined_vars
gettype
Funções para Manipulação de variáveis
PHP Manual

get_resource_type

(PHP 4 >= 4.0.2, PHP 5)

get_resource_type — Retorna o tipo de resource

Descrição

string get_resource_type ( resource $handle )

Essa função obtém o tipo do dado resource.

Parâmetros

handle

O manipulador resource a ser avaliado.

Valor Retornado

Se o dado handle é um resource, esta função retornará a string representando seu tipo. Se o tipo não é identificado por esta função, o valor retornado será a string Unknown.

Esta função retornará FALSE e gera um erro se handle não for um resource.

Exemplos

Exemplo #1 Exemplo da get_resource_type()

<?php
// mosta: mysql link
$c = mysql_connect();
echo get_resource_type($c)."\n";

// mostra: stream
$fp = fopen("foo", "w");
echo get_resource_type($fp)."\n";

// mostra: domxml document
$doc = new xmldoc("1.0");
echo get_resource_type($doc->doc)."\n";
?>

get_defined_vars
gettype
Funções para Manipulação de variáveis


Retorna o tipo da variável

get_resource_type
import_request_variables
Funções para Manipulação de variáveis
PHP Manual

gettype

(PHP 4, PHP 5)

gettype — Retorna o tipo da variável

Descrição

string gettype ( mixed $var )

Retorna o tipo da variável no PHP var.

Aviso

Nunca use gettype() para testar um certo tipo, a string devolvida poderá sofrer alterações em uma versão futura. Essa função é mais lenta que outras formas de comparação.

Ao invés use as funçõesis_*.

Parâmetros

var

A variável a ter o tipo verificado.

Valor Retornado

Os possíveis valores retornados pela função são:

  • "boolean"
  • "integer"
  • "double" (por razões históricas "double" é é retornado no caso de float, e não simplesmente "float")
  • "string"
  • "array"
  • "object"
  • "resource"
  • "NULL"
  • "unknown type"

Veja Também

  • settype() - Atribui um tipo para a variável
  • is_array() - Verifica se a variável é um array
  • is_bool() - Verifica se a variável é um boleano
  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_null() - Informa se a variável é NULL
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • is_object() - Informa se a variável é um objeto
  • is_resource() - Informa se a variável é um resource
  • is_scalar() - Informa se é uma váriavel escalar
  • is_string() - Informa se a variável é do tipo string
  • function_exists() - Retorna TRUE se a função dada está definida
  • method_exists() - Checa se o método da classe existe

get_resource_type
import_request_variables
Funções para Manipulação de variáveis


Importa variáveis GET/POST/Cookie para o escopo global

gettype
intval
Funções para Manipulação de variáveis
PHP Manual

import_request_variables

(PHP 4 >= 4.1.0, PHP 5)

import_request_variables — Importa variáveis GET/POST/Cookie para o escopo global

Descrição

bool import_request_variables ( string $types [, string $prefix ] )

Importa variáveis GET/POST/Cookie para o escopo global. É útil se você desabilita register_globals, mas você poderia ver algunas variáveis no escopo global.

Se você está interessado em importar outras variáveis para o escopo global, como uma a SERVER, utilize a função extract().

Parâmetros

types

Usando o parâmetro types, você pode especificar que variáveis serão importadas. Você pode usar os caracteres 'G', 'P' e 'C' respectivamente para GET, POST e Cookie. Estes caracteres não são case sensitive, então você pode também usar qualquer combinação de 'g', 'p' e 'c'. POST inclue informação sobre arquivos enviados.

Nota:

Note que a ordem das letras, como usando "gp", a variável POST irá sobreescrever variáveis GET com mesmo nome. Algumas outras letras como GPC são descartadas.

prefix

Prefixo no nome de variáveis, prepara todos os nomes de variáveis antes de ser importadas para o escopo global. Então se você tem um valor GET nomeado "userid", e fornece "pref_" como prefixo, então você terá uma variável global chamada $pref_userid.

Nota:

Embora o parâmetro prefix seja opcional, você irá receber E_NOTICE se você especificar não especificar prefixo, ou se o prefixo for uma string vazia. Isto é possível perigo. Notices não são mostrados usando o padrão error reporting level.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da import_request_variables()

<?php
// This will import GET and POST vars
// with an "rvar_" prefix
import_request_variables("gp", "rvar_");

echo $rvar_foo;
?>

Veja Também

  • $_REQUEST
  • register_globals
  • Variáveis Pré-definidas
  • extract() - Importa variáveis para a tabela de símbolos a partir de um array

gettype
intval
Funções para Manipulação de variáveis


Retorna o valor inteiro da variável

import_request_variables
is_array
Funções para Manipulação de variáveis
PHP Manual

intval

(PHP 4, PHP 5)

intval — Retorna o valor inteiro da variável

Descrição

int intval ( mixed $var [, int $base ] )

Retorna o valor integer de var, usando a base especificada para a conversão (o padrão é a base 10).

Parâmetros

var

The scalar value being converted to an integer

base

The base for the conversion (default is base 10)

Valor Retornado

The integer value of var on success, or 0 on failure. Empty arrays and objects return 0, non-empty arrays and objects return 1.

O valor máximo depende do sistema. Sistemas 32 bit tem o máximo de inteiro com sinal entre -2147483648 e 2147483647. Então por exemplo no sistema, intval('1000000000000') irá retornar 2147483647. O valor máximo do inteiro com sinal para sistemas 64 bit é 9223372036854775807.

Strings retorna 0 embora isto dependa do caractere mais a esquerda da string. A regra comum aplicada de conversão de inteiro.

Exemplos

Exemplo #1 Exemplos da intval()

Os exemplos seguintes são baseados em sistema 32 bit.

<?php
echo intval(42);                      // 42
echo intval(4.2);                     // 4
echo intval('42');                    // 42
echo intval('+42');                   // 42
echo intval('-42');                   // -42
echo intval(042);                     // 34
echo intval('042');                   // 42
echo intval(1e10);                    // 1410065408
echo intval('1e10');                  // 1
echo intval(0x1A);                    // 26
echo intval(42000000);                // 42000000
echo intval(420000000000000000000);   // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8);                   // 42
echo intval('42', 8);                 // 34
?>

Notas

Nota:

O parâmetro base não tem efeito a menos que o parâmetro var seja string.

Veja Também

  • floatval() - Retorna o valor float da variável
  • strval() - Retorna o valor string de uma variável
  • settype() - Atribui um tipo para a variável
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • Manipulação de tipos
  • Funções matemáticas de precisão arbitrária BCMath

import_request_variables
is_array
Funções para Manipulação de variáveis


Verifica se a variável é um array

intval
is_bool
Funções para Manipulação de variáveis
PHP Manual

is_array

(PHP 4, PHP 5)

is_array — Verifica se a variável é um array

Descrição

bool is_array ( mixed $var )

Verifica se uma dada variável é um array.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é um array, FALSE caso contrário.

Exemplos

Exemplo #1 Verificando se a variável é um array

<?php
$yes = array('this', 'is', 'an array');

echo is_array($yes) ? 'Array' : 'not an Array';
echo "\n";

$no = 'this is a string';

echo is_array($no) ? 'Array' : 'not an Array';
?>

O exemplo acima irá imprimir:

Array
not an Array

Veja Também

  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_string() - Informa se a variável é do tipo string
  • is_object() - Informa se a variável é um objeto

intval
is_bool
Funções para Manipulação de variáveis


Verifica se a variável é um boleano

is_array
is_callable
Funções para Manipulação de variáveis
PHP Manual

is_bool

(PHP 4, PHP 5)

is_bool — Verifica se a variável é um boleano

Descrição

bool is_bool ( mixed $var )

Verifica se uma dada variável é boolean.

Parâmetros

var

The variable being evaluated.

Valor Retornado

Retorna TRUE se var é um boolean, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo is_bool()

<?php
$a = false;
$b = 0;

// Verifica se $a é boolean, retorna true
if (is_bool($a)) {
    echo 'A variável $a é um valor booleano';
}

// Verifica se $b é boolean, retorna false
if (is_bool($b)) {
    echo 'A variável $b é um valor booleano';
}
?>

Veja Também

  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_string() - Informa se a variável é do tipo string
  • is_object() - Informa se a variável é um objeto
  • is_array() - Verifica se a variável é um array

is_array
is_callable
Funções para Manipulação de variáveis


Verifica se o conteúdo da variável pode ser chamado como função

is_bool
is_double
Funções para Manipulação de variáveis
PHP Manual

is_callable

(PHP 4 >= 4.0.6, PHP 5)

is_callable — Verifica se o conteúdo da variável pode ser chamado como função

Descrição

bool is_callable ( mixed $var [, bool $syntax_only [, string &$callable_name ]] )

Verifica se o conteúdo da variável pode ser chamado como uma função. Isto pode verificar se uma simples variável contêm o nome de uma função válida, ou que um array contêm uma propriedade de um objeto e nome de função.

Parâmetros

var

Pode ser qualquer nome de uma função armazenada na string, ou um objeto e o nome de um do método dentro do objeto, como isto:

array($SomeObject, 'MethodName')

syntax_only

Se definido como TRUE a função somente verifica se var é uma função ou método. Irá somente rejeitar simples variáveis que não são strings, ou um array que não tem uma estrutura válida para ser usada como um callback. O valor válido suposto teria somente 2 entradas, a primeira que é um objeto ou uma string. e o segundo uma string.

callable_name

Recebe o "nome chamável". No exemplo acima seria "someClass::someMethod". Note, contudo, que apesar da implicação que someClass::SomeMethod() é um chamável método estático, este não é o caso.

Valor Retornado

Retorna TRUE se var é chamável, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_callable()

<?php
//  How to check a variable to see if it can be called
//  as a function.

//
//  Simple variable containing a function
//

function someFunction()
{
}

$functionVariable = 'someFunction';

var_dump(is_callable($functionVariable, false, $callable_name));  // bool(true)

echo $callable_name, "\n";  // someFunction

//
//  Array containing a method
//

class someClass {

  function someMethod()
  {
  }

}

$anObject = new someClass();

$methodVariable = array($anObject, 'someMethod');

var_dump(is_callable($methodVariable, true, $callable_name));  //  bool(true)

echo $callable_name, "\n";  //  someClass::someMethod

?>

Veja Também

  • function_exists() - Retorna TRUE se a função dada está definida
  • method_exists() - Checa se o método da classe existe

is_bool
is_double
Funções para Manipulação de variáveis


Sinônimo de is_float

is_callable
is_float
Funções para Manipulação de variáveis
PHP Manual

is_double

(PHP 4, PHP 5)

is_double — Sinônimo de is_float()

Descrição

Esta função é um apelido para: is_float().

is_callable
is_float
Funções para Manipulação de variáveis


Informa se a variável é do tipo float

is_double
is_int
Funções para Manipulação de variáveis
PHP Manual

is_float

(PHP 4, PHP 5)

is_float — Informa se a variável é do tipo float

Descrição

bool is_float ( mixed $var )

Verifica se a dada variável é do tipo ponto flutuante.

Nota:

Para verificar se a variável é um número ou uma string numérica (campos de formulários sempre são strings númericas), use is_numeric().

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é float, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_float()

<?php
if(is_float(27.25)) {
 echo "is float\n";
}else {
 echo "is not float\n";
}
var_dump(is_float('abc'));
var_dump(is_float(23));
var_dump(is_float(23.5));
var_dump(is_float(1e7));  //Scientific Notation
var_dump(is_float(true));
?>

O exemplo acima irá imprimir:

is float
bool(false)
bool(false)
bool(true)
bool(true)
bool(false)

Veja Também

  • is_bool() - Verifica se a variável é um boleano
  • is_int() - Informa se a variável é do tipo inteiro
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • is_string() - Informa se a variável é do tipo string
  • is_array() - Verifica se a variável é um array
  • is_object() - Informa se a variável é um objeto

is_double
is_int
Funções para Manipulação de variáveis


Informa se a variável é do tipo inteiro

is_float
is_integer
Funções para Manipulação de variáveis
PHP Manual

is_int

(PHP 4, PHP 5)

is_int — Informa se a variável é do tipo inteiro

Descrição

bool is_int ( mixed $var )

Verifica se a dada variável é do tipo inteiro.

Nota:

Para verificar se a variável é um número ou uma string numérica (campos de formulários sempre são strings numéricas), use is_numeric().

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é integer, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_int()

<?php
if (is_int(23)) {
 echo "is integer\n";
} else {
 echo "is not an integer\n";
}
var_dump(is_int(23));
var_dump(is_int("23"));
var_dump(is_int(23.5));
var_dump(is_int(true));
?>

O exemplo acima irá imprimir:

is integer
bool(true)
bool(false)
bool(false)
bool(false)

Veja Também

  • is_bool() - Verifica se a variável é um boleano
  • is_float() - Informa se a variável é do tipo float
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • is_string() - Informa se a variável é do tipo string
  • is_array() - Verifica se a variável é um array
  • is_object() - Informa se a variável é um objeto

is_float
is_integer
Funções para Manipulação de variáveis


Sinônimo de is_int

is_int
is_long
Funções para Manipulação de variáveis
PHP Manual

is_integer

(PHP 4, PHP 5)

is_integer — Sinônimo de is_int()

Descrição

Esta função é um apelido para: is_int().

is_int
is_long
Funções para Manipulação de variáveis


Sinônimo de is_int

is_integer
is_null
Funções para Manipulação de variáveis
PHP Manual

is_long

(PHP 4, PHP 5)

is_long — Sinônimo de is_int()

Descrição

Esta função é um apelido para: is_int().

is_integer
is_null
Funções para Manipulação de variáveis


Informa se a variável é NULL

is_long
is_numeric
Funções para Manipulação de variáveis
PHP Manual

is_null

(PHP 4 >= 4.0.4, PHP 5)

is_null — Informa se a variável é NULL

Descrição

bool is_null ( mixed $var )

Verifica se uma dada variável é NULL.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é null, FALSE caso contrário.

Veja Também

  • O tipo NULL
  • isset() - Informa se a variável foi iniciada
  • is_bool() - Verifica se a variável é um boleano
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_string() - Informa se a variável é do tipo string
  • is_object() - Informa se a variável é um objeto
  • is_array() - Verifica se a variável é um array

is_long
is_numeric
Funções para Manipulação de variáveis


Informa se a variável é um número ou uma string numérica

is_null
is_object
Funções para Manipulação de variáveis
PHP Manual

is_numeric

(PHP 4, PHP 5)

is_numeric — Informa se a variável é um número ou uma string numérica

Descrição

bool is_numeric ( mixed $var )

Verifica se a dada variável é numérica. Strings numéricas consistem de um sinal opcional, algum número de dígitos, opcional parte decimal e opcional parte exponencial. Assim +0123.45e6 é um válido valor numérico. Notação hexadecimal (0xFF) é permitida também mas somente sem sinal, decimal e parte exponencial.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é um número ou uma string numérica, FALSE caso contrário.

Veja Também

  • ctype_digit() - Verifica se os caracteres são numéricos
  • is_bool() - Verifica se a variável é um boleano
  • is_null() - Informa se a variável é NULL
  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_string() - Informa se a variável é do tipo string
  • is_object() - Informa se a variável é um objeto
  • is_array() - Verifica se a variável é um array

is_null
is_object
Funções para Manipulação de variáveis


Informa se a variável é um objeto

is_numeric
is_real
Funções para Manipulação de variáveis
PHP Manual

is_object

(PHP 4, PHP 5)

is_object — Informa se a variável é um objeto

Descrição

bool is_object ( mixed $var )

Verifica se uma dada variável é um objeto.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é um object, FALSE senão.

Notas

Nota:

Esta função retornará FALSE se usada em um objeto não serializado onde a definição da classe não está presente (mesmo que gettype() retorne object).

Veja Também

  • is_bool() - Verifica se a variável é um boleano
  • is_int() - Informa se a variável é do tipo inteiro
  • is_float() - Informa se a variável é do tipo float
  • is_string() - Informa se a variável é do tipo string
  • is_array() - Verifica se a variável é um array

is_numeric
is_real
Funções para Manipulação de variáveis


Sinônimo de is_float

is_object
is_resource
Funções para Manipulação de variáveis
PHP Manual

is_real

(PHP 4, PHP 5)

is_real — Sinônimo de is_float()

Descrição

Esta função é um apelido para: is_float().

is_object
is_resource
Funções para Manipulação de variáveis


Informa se a variável é um resource

is_real
is_scalar
Funções para Manipulação de variáveis
PHP Manual

is_resource

(PHP 4, PHP 5)

is_resource — Informa se a variável é um resource

Descrição

bool is_resource ( mixed $var )

Verifica se uma dada variável é um resource.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é um resource, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_resource()

<?php

$db_link = @mysql_connect('localhost', 'mysql_user', 'mysql_pass');
if (!is_resource($db_link)) {
    die('Can\'t connect : ' . mysql_error());
}

?>

Veja Também

  • The resource-type documentation
  • get_resource_type() - Retorna o tipo de resource

is_real
is_scalar
Funções para Manipulação de variáveis


Informa se é uma váriavel escalar

is_resource
is_string
Funções para Manipulação de variáveis
PHP Manual

is_scalar

(PHP 4 >= 4.0.5, PHP 5)

is_scalar — Informa se é uma váriavel escalar

Descrição

bool is_scalar ( mixed $var )

Verifica se a dada variável é uma escalar.

Variáveis escalares são as que contém integer, float, string ou boolean. os tipos array, object e resource não são escalares.

Nota:

is_scalar() não considera o tipo resource como um valor escalar, apesar de tipos resouce ser uma abstração de dados, atualmente baseados em inteiros. Esse detalhe de implementação poderá ser modificado futuramente.

Parâmetros

var

A variável a ser avaliada.

Valor Retornado

Retorna TRUE se var é um escalar, FALSE caso contrário.

Exemplos

Exemplo #1 Exemplo da is_scalar()

<?php
function show_var($var)
{
    if (is_scalar($var)) {
        echo $var;
    } else {
        var_dump($var);
    }
}
$pi = 3.1416;
$proteins = array("hemoglobin", "cytochrome c oxidase", "ferredoxin");

show_var($pi);
show_var($proteins)

?>

O exemplo acima irá imprimir:

3.1416
array(3) {
  [0]=>
  string(10) "hemoglobin"
  [1]=>
  string(20) "cytochrome c oxidase"
  [2]=>
  string(10) "ferredoxin"
}

Veja Também

  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_numeric() - Informa se a variável é um número ou uma string numérica
  • is_real() - Sinônimo de is_float
  • is_string() - Informa se a variável é do tipo string
  • is_bool() - Verifica se a variável é um boleano
  • is_object() - Informa se a variável é um objeto
  • is_array() - Verifica se a variável é um array

is_resource
is_string
Funções para Manipulação de variáveis


Informa se a variável é do tipo string

is_scalar
isset
Funções para Manipulação de variáveis
PHP Manual

is_string

(PHP 4, PHP 5)

is_string — Informa se a variável é do tipo string

Descrição

bool is_string ( mixed $var )

Verifica se a dada variável é do tipo string.

Parâmetros

var

A variável a ser analisada.

Valor Retornado

Retorna TRUE se var é do tipo string, FALSE senão.

Exemplos

Exemplo #1 Exemplo da is_string()

<?php
if (is_string("23")) {
 echo "is string\n";
} else {
 echo "is not an string\n";
}
var_dump(is_string('abc'));
var_dump(is_string("23"));
var_dump(is_string(23.5));
var_dump(is_string(true));
?>

O exemplo acima irá imprimir:

is string
bool(true)
bool(true)
bool(false)
bool(false)

Veja Também

  • is_float() - Informa se a variável é do tipo float
  • is_int() - Informa se a variável é do tipo inteiro
  • is_bool() - Verifica se a variável é um boleano
  • is_object() - Informa se a variável é um objeto
  • is_array() - Verifica se a variável é um array

is_scalar
isset
Funções para Manipulação de variáveis


Informa se a variável foi iniciada

is_string
print_r
Funções para Manipulação de variáveis
PHP Manual

isset

(PHP 4, PHP 5)

isset — Informa se a variável foi iniciada

Descrição

bool isset ( mixed $var [, mixed $var [, $... ]] )

Verifica se a variável é definida.

Se a variável for destruída com unset(), ela não existirá mais. isset() retornará FALSE se for usada em uma variável com o valor NULL. Lembrando que no PHP um byte NULL ("\0") é diferente da constante NULL.

Se múltiplos parâmetros são fornecidos, então isset() retornará TRUE somente se todos os parâmetros são definidos. A avaliação vai da esquerda para direita e pára logo que encontra uma variável não definida.

Parâmetros

var

A variável a ser verificada.

var

Outra variável...

...

Valor Retornado

Retorna TRUE se var existe; FALSE caso contrário.

Exemplos

Exemplo #1 Exemplos da isset()

<?php

$var = '';

// Será interpretado como TRUE imprimindo o texto.
if (isset($var)) {
    echo "Essa variável existe.";
}

// No próximo exemplo será usado var_dump para mostrar
// o valor de retorno de isset().

$a = "teste";
$b = "outrotest";

var_dump( isset($a) );      // TRUE
var_dump( isset ($a, $b) ); // TRUE

unset ($a);

var_dump( isset ($a) );     // FALSE
var_dump( isset ($a, $b) ); // FALSE

$foo = NULL;
var_dump( isset ($foo) );   // FALSE

?>

Isto também serve para chaves associativas de matrizes:

<?php

$a = array ('test' => 1, 'hello' => NULL);

var_dump( isset ($a['test']) );            // TRUE
var_dump( isset ($a['foo']) );             // FALSE
var_dump( isset ($a['hello']) );           // FALSE

// A chave 'hello' é igual a NULL sendo considerada como inexistente
// Se quiser verificar o valor NULL da chave tente:
var_dump( array_key_exists('hello', $a) ); // TRUE

?>

Notas

Aviso

isset() somente funciona com variáveis, passando qualquer outra coisa resultará em um erro do analisador. Para verificar se constants estão definidas, use a função defined().

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

Veja Também

  • empty() - Informa se a variável é vazia
  • unset() - Destrói a variável especificada
  • defined() - Confere se uma constante existe
  • a tabela de comparação de tipos
  • array_key_exists() - Checa se uma chave ou índice existe em um array
  • is_null() - Informa se a variável é NULL
  • o operador @ de controle de erro

is_string
print_r
Funções para Manipulação de variáveis


Imprime informação sobre uma variável de forma legível

isset
serialize
Funções para Manipulação de variáveis
PHP Manual

print_r

(PHP 4, PHP 5)

print_r — Imprime informação sobre uma variável de forma legível

Descrição

mixed print_r ( mixed $expression [, bool $return = false ] )

print_r() exibe informação sobre uma variável em uma maneira que é legível para humanos.

print_r(), var_dump() e var_export() mostrarão também propriedades protegidas e privadas de objetos com PHP 5. Membros de classes estáticas não serão mostrados.

Lembre-se de que print_r() moverá o ponteiro do array para o fim. Utilize reset() para levá-lo de volta ao início.

Parâmetros

expression

A expressão a ser impressa.

return

Se você quiser capturar a saída de print_r(), utilize o parâmetro return. Quando esse parâmetro é setado para TRUE, print_r() retornará a informação, ao invés de imprimi-la.

Valor Retornado

Se forem fornecidos string, integer ou float, o próprio valor será impresso. Se for fornecido um array, valores serão representados em um formato que mostra chaves e elementos. Notação similar é utilizada para objetos.

Quando o parâmetro return for TRUE, esta função retornará uma string. Caso contrário, o valor retornado será TRUE.

Notas

Nota:

Esta função usa o interno buffer de saída com este parâmetro, então assim não pode ser usado dentro de uma função de callback para ob_start().

Histórico

Versão | Descrição
4.3.0 | O parâmetro return foi adicionado. Se você precisar capturar a saída de print_r() em uma função anterior do PHP, utilize funções de controle de saída.
4.0.4 | Antes de PHP 4.0.4, print_r() será executada para sempre se forem fornecidos array ou objeto que contêm uma referência direta ou indireta para eles mesmos. Um exemplo é print_r($GLOBALS) porque $GLOBALS é ela própria uma variável global que contém uma referência para ela mesma.

Exemplos

Exemplo #1 Exemplo de print_r()

<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
</pre>

O exemplo acima irá imprimir:

<pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>

Exemplo #2 Exemplo do parâmetro return

<?php
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
$results = print_r($b, true); // $results agora contém a saída de print_r
?>

Veja Também

  • ob_start() - Ativa o buffer de saída
  • var_dump() - Mostra informações sobre a variável
  • var_export() - Mostra ou retorna uma representação estruturada de uma variável

isset
serialize
Funções para Manipulação de variáveis


Generates a storable representation of a value

print_r
settype
Funções para Manipulação de variáveis
PHP Manual

serialize

(PHP 4, PHP 5)

serialize — Generates a storable representation of a value

Descrição

string serialize ( mixed $value )

Generates a storable representation of a value

This is useful for storing or passing PHP values around without losing their type and structure.

To make the serialized string into a PHP value again, use unserialize().

Parâmetros

value

The value to be serialized. serialize() handles all types, except the resource-type. You can even serialize() arrays that contain references to itself. Circular references inside the array/object you are serializing will also be stored. Any other reference will be lost.

When serializing objects, PHP will attempt to call the member function __sleep prior to serialization. This is to allow the object to do any last minute clean-up, etc. prior to being serialized. Likewise, when the object is restored using unserialize() the __wakeup member function is called.

Nota:

Object's private members have the class name prepended to the member name; protected members have a '*' prepended to the member name. These prepended values have null bytes on either side.

Valor Retornado

Returns a string containing a byte-stream representation of value that can be stored anywhere.

Exemplos

Exemplo #1 serialize() example

<?php
// $session_data contains a multi-dimensional array with session
// information for the current user.  We use serialize() to store
// it in a database at the end of the request.

$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn,
      "UPDATE sessions SET data = ? WHERE id = ?");
$sqldata = array (serialize($session_data), $_SERVER['PHP_AUTH_USER']);
if (!odbc_execute($stmt, $sqldata)) {
    $stmt = odbc_prepare($conn,
     "INSERT INTO sessions (id, data) VALUES(?, ?)");
    if (!odbc_execute($stmt, $sqldata)) {
        /* Something went wrong.. */
    }
}
?>

Histórico

Versão | Descrição
4.0.7 | The object serialization process was fixed.

Notas

Nota:

Note that many built-in PHP objects cannot be serialized. However, those with this ability either implement the Serializable interface or the magic __sleep and __wakeup methods. If an internal class does not fulfill any of those requirements, it cannot reliably be serialized.

There are some historical exceptions to the above rule, where some internal objects could be serialized without implementing the interface or exposing the methods. Notably, the ArrayObject prior to PHP 5.2.0.

Veja Também

  • unserialize() - Creates a PHP value from a stored representation
  • Serializing Objects

print_r
settype
Funções para Manipulação de variáveis


Atribui um tipo para a variável

serialize
strval
Funções para Manipulação de variáveis
PHP Manual

settype

(PHP 4, PHP 5)

settype — Atribui um tipo para a variável

Descrição

bool settype ( mixed &$var , string $type )

Atribui um tipo para a variável var baseado no type.

Parâmetros

var

A variável a ser convertida.

type

Os valores possíveis para type são:

  • "boolean" (ou, a partir do PHP 4.2.0, "bool")
  • "integer" (ou, a partir do PHP 4.2.0, "int")
  • "float" (somente para versões acima do PHP 4.2.0, para versões antigas use a variação depreciada "double")
  • "string"
  • "array"
  • "object"
  • "null" (a partir do PHP 4.2.0)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Exemplo da função settype()

<?php
$foo = "5bar"; // string
$bar = true;   // boolean

settype($foo, "integer"); // $foo é agora 5   (integer)
settype($bar, "string");  // $bar é agora "1" (string)
?>

Notas

Nota:

O valor máximo para "int" é PHP_INT_MAX.

Veja Também

  • gettype() - Retorna o tipo da variável
  • conversão de tipos
  • manipulação de tipos

serialize
strval
Funções para Manipulação de variáveis


Retorna o valor string de uma variável

settype
unserialize
Funções para Manipulação de variáveis
PHP Manual

strval

(PHP 4, PHP 5)

strval — Retorna o valor string de uma variável

Descrição

string strval ( mixed $var )

Obtém o valor string de uma variável. Veja a documentação sobre string para maiores informações de conversão de strings.

Esta função não faz nenhuma formatação no valor retornado. Se você está procurando por alguma maneira de formatar um valor numérico como string, por favor veja as funções sprintf() ou number_format().

Parâmetros

var

A variável que será convertida para o tipo string.

var somente para valores escalares. Nunca use strval() em arrays ou objetos.

Valor Retornado

A string com o valor de var.

Exemplos

Exemplo #1 Exemplo de strval() usando o método mágico __toString do PHP 5

<?php
class StrValTest
{
    public function __toString()
    {
        return __CLASS__;
    }
}

// Mostra 'StrValTest'
echo strval(new StrValTest);
?>

Veja Também

  • floatval() - Retorna o valor float da variável
  • intval() - Retorna o valor inteiro da variável
  • settype() - Atribui um tipo para a variável
  • sprintf() - Retorna a string formatada
  • number_format() - Formata um número com os milhares agrupados
  • Manipulação de tipos

settype
unserialize
Funções para Manipulação de variáveis


Creates a PHP value from a stored representation

strval
unset
Funções para Manipulação de variáveis
PHP Manual

unserialize

(PHP 4, PHP 5)

unserialize — Creates a PHP value from a stored representation

Descrição

mixed unserialize ( string $str )

unserialize() takes a single serialized variable and converts it back into a PHP value.

Parâmetros

str

The serialized string.

If the variable being unserialized is an object, after successfully reconstructing the object PHP will automatically attempt to call the __wakeup() member function (if it exists).

Nota: unserialize_callback_func directive

It's possible to set a callback-function which will be called, if an undefined class should be instantiated during unserializing. (to prevent getting an incomplete object "__PHP_Incomplete_Class".) Use your php.ini, ini_set() or .htaccess to define 'unserialize_callback_func'. Everytime an undefined class should be instantiated, it'll be called. To disable this feature just empty this setting.

Valor Retornado

The converted value is returned, and can be a boolean, integer, float, string, array or object.

In case the passed string is not unserializeable, FALSE is returned and E_NOTICE is issued.

Histórico

Versão | Descrição
4.2.0 | The directive unserialize_callback_func became available.

Exemplos

Exemplo #1 unserialize() example

<?php
// Here, we use unserialize() to load session data to the
// $session_data array from the string selected from a database.
// This example complements the one described with serialize().

$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn, "SELECT data FROM sessions WHERE id = ?");
$sqldata = array($_SERVER['PHP_AUTH_USER']);
if (!odbc_execute($stmt, $sqldata) || !odbc_fetch_into($stmt, $tmp)) {
    // if the execute or fetch fails, initialize to empty array
    $session_data = array();
} else {
    // we should now have the serialized data in $tmp[0].
    $session_data = unserialize($tmp[0]);
    if (!is_array($session_data)) {
        // something went wrong, initialize to empty array
        $session_data = array();
    }
}
?>

Exemplo #2 unserialize_callback_func example

<?php
$serialized_object='O:1:"a":1:{s:5:"value";s:3:"100";}';

// unserialize_callback_func directive available as of PHP 4.2.0
ini_set('unserialize_callback_func', 'mycallback'); // set your callback_function

function mycallback($classname)
{
    // just include a file containing your classdefinition
    // you get $classname to figure out which classdefinition is required
}
?>

Notas

Aviso

FALSE is returned both in the case of an error and if unserializing the serialized FALSE value. It is possible to catch this special case by comparing str with serialize(false) or by catching the issued E_NOTICE.

Veja Também

  • serialize() - Generates a storable representation of a value
  • Autoloading Objects
  • unserialize_callback_func

strval
unset
Funções para Manipulação de variáveis


Destrói a variável especificada

unserialize
var_dump
Funções para Manipulação de variáveis
PHP Manual

unset

(PHP 4, PHP 5)

unset — Destrói a variável especificada

Descrição

void unset ( mixed $var [, mixed $var [, mixed $... ]] )

unset() destrói a variável especificada.

O comportamento de unset() pode variar dentro de uma função dependendo do tipo de variável que você está tentando destruir.

Se utilizar unset() em uma variável global dentro de uma função, somente a variável local será destruída. A variável no ambiente que foi chamada terá o mesmo valor como antes da execução de unset().

<?php
function destroy_foo()
{
    global $foo;
    unset($foo);
}

$foo = 'bar';
destroy_foo();
echo $foo;
?>

O exemplo acima irá imprimir:

bar

Se você quer usar unset() na variável global dentro de uma função, você pode usar o array $GLOBALS, veja então:

<?php
function foo()
{
    unset($GLOBALS['bar']);
}

$bar = "something";
foo();
?>

Se a variável for passada por referencia e a função unset() estiver dentro de uma função, apenas a variável local será destruída. A variável no ambiente que chamou a função onde esta unset() irá manter o mesmo valor de antes da utilização de unset().

<?php
function foo(&$bar)
{
    unset($bar);
    $bar = "blah";
}

$bar = 'something';
echo "$bar\n";

foo($bar);
echo "$bar\n";
?>

O exemplo acima irá imprimir:

something
something

Se for utilizado unset() com uma variável estática dentro de uma função, unset() destrói a variável somente no contexto do resto da função. Chamada seguintes irão restaurar o valor anterior da variável. todas as suas referências.

<?php
function foo()
{
    static $bar;
    $bar++;
    echo "Before unset: $bar, ";
    unset($bar);
    $bar = 23;
    echo "after unset: $bar\n";
}

foo();
foo();
foo();
?>

O exemplo acima irá imprimir:

Before unset: 1, after unset: 23
Before unset: 2, after unset: 23
Before unset: 3, after unset: 23

Parâmetros

var

The variable to be unset.

var

Another variable ..

...

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
4.0.0 | unset() tornou-se uma expressão. (No PHP 3, unset() sempre retorna 1).

Exemplos

Exemplo #1 Exemplo da unset()

<?php
// destroy a single variable
unset($foo);

// destroy a single element of an array
unset($bar['quux']);

// destroy more than one variable
unset($foo1, $foo2, $foo3);
?>

Notas

Nota: Este é um construtor de linguagem e não uma função, por isso não é possível chamá-lo através de funções variáveis

Nota:

É possível usar unset em propriedades de objetos visíveis no contexto atual.

Nota:

Não é possível usar unset em $this dentro de um método de objeto desde o PHP 5.

Veja Também

  • isset() - Informa se a variável foi iniciada
  • empty() - Informa se a variável é vazia
  • array_splice() - Remove uma parcela do array e substitui com outros elementos

unserialize
var_dump
Funções para Manipulação de variáveis


Mostra informações sobre a variável

unset
var_export
Funções para Manipulação de variáveis
PHP Manual

var_dump

(PHP 4, PHP 5)

var_dump — Mostra informações sobre a variável

Descrição

void var_dump ( mixed $expression [, mixed $expression [, $... ]] )

Esta função mostrará uma representação estruturada sobre uma ou mais expressões, incluindo o tipo e o valor. Arrays e objetos são explorados recursivamente com valores identados na estrutura mostrada.

No PHP 5 todas propriedades public, private e protected do objeto são retornados na saída.

Dica

Como toda saída é normalmente enviada direto para o browser, as Funções de Controle de Output podem ser usadas para capturar o resultado e guardá-lo em uma string (por exemplo).

Parâmetros

expression

A variável que você quer exportar.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo da var_dump()

<?php
$a = array (1, 2, array ("a", "b", "c"));
var_dump ($a);
?>

O exemplo acima irá imprimir:

/* mostrará:
array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  array(3) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
    [2]=>
    string(1) "c"
  }
}
<?php

$b = 3.1;
$c = true;
var_dump($b,$c);

?>

O exemplo acima irá imprimir:

float(3.1)
bool(true)

Veja Também

  • var_export() - Mostra ou retorna uma representação estruturada de uma variável
  • print_r() - Imprime informação sobre uma variável de forma legível

unset
var_export
Funções para Manipulação de variáveis


Mostra ou retorna uma representação estruturada de uma variável

var_dump
Web Services
Funções para Manipulação de variáveis
PHP Manual

var_export

(PHP 4 >= 4.2.0, PHP 5)

var_export — Mostra ou retorna uma representação estruturada de uma variável

Descrição

mixed var_export ( mixed $expression [, bool $return ] )

var_export() obtém informação estruturada sobre uma dada variável. Ela é similar a var_dump() com uma exceção: a representação retornada é um código PHP válido.

Parâmetros

expression

A variável que você quer exportar.

return

Se usado e definido para TRUE, var_export() irá retornar a representação da variável ao invés de exibí-la.

Nota:

Esta função usa o interno buffer de saída com este parâmetro, então assim não pode ser usado dentro de uma função de callback para ob_start().

Valor Retornado

Retorna a representação da variável quando o parâmetro return é usado e avaliado para TRUE. Caso contrário, esta função retornará NULL.

Histórico

<pre>
<?php
$a = array (1, 2, array ("a", "b", "c"));
var_export ($a);

/* mostrará:
array (
  0 => 1,
  1 => 2,
  2 =>
  array (
    0 => 'a',
    1 => 'b',
    2 => 'c',
  ),
)
*/

$b = 3.1;
$v = var_export($b, TRUE);
echo $v;

/* mostrará:
3.1
*/
?>
</pre>

var_dump
Web Services
Funções para Manipulação de variáveis


Web Services

  • OAuth
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • OAuth Funções
    • OAuth — The OAuth class
    • OAuthProvider — The OAuthProvider class
    • OAuthException — OAuthException class
  • SCA
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • SCA Funções
  • SOAP
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • SOAP Funções
    • SoapClient — The SoapClient class
    • SoapServer — The SoapServer class
    • SoapFault — The SoapFault class
    • SoapHeader — The SoapHeader class
    • SoapParam — The SoapParam class
    • SoapVar — The SoapVar class
  • XML-RPC
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções para XML-RPC
var_export
OAuth
Referência das Funções


OAuth

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • FireEagle
  • OAuth Funções
    • oauth_get_sbs — Generate a Signature Base String
    • oauth_urlencode — Encode a URI to RFC 3986
  • OAuth — The OAuth class
    • OAuth::__construct — Create a new OAuth object
    • OAuth::__destruct — The destructor
    • OAuth::disableDebug — Turn off verbose debugging
    • OAuth::disableRedirects — Turn off redirects
    • OAuth::disableSSLChecks — Turn off SSL checks
    • OAuth::enableDebug — Turn on verbose debugging
    • OAuth::enableRedirects — Turn on redirects
    • OAuth::enableSSLChecks — Turn on SSL checks
    • OAuth::fetch — Fetch an OAuth protected resource
    • OAuth::getAccessToken — Fetch an access token
    • OAuth::getCAPath — Gets CA information
    • OAuth::getLastResponse — Get the last response
    • OAuth::getLastResponseInfo — Get HTTP information about the last response
    • OAuth::getRequestToken — Fetch a request token
    • OAuth::setAuthType — Set authorization type
    • OAuth::setCAPath — Set CA path and info
    • OAuth::setNonce — Set the nonce for subsequent requests
    • OAuth::setRequestEngine — The setRequestEngine purpose
    • OAuth::setRSACertificate — Set the RSA certificate
    • OAuth::setTimestamp — Set the timestamp
    • OAuth::setToken — Sets the token and secret
    • OAuth::setVersion — Set the OAuth version
  • OAuthProvider — The OAuthProvider class
    • OAuthProvider::addRequiredParameter — Add required parameters
    • OAuthProvider::callconsumerHandler — Calls the consumerNonceHandler callback
    • OAuthProvider::callTimestampNonceHandler — Calls the timestampNonceHandler callback
    • OAuthProvider::calltokenHandler — Calls the tokenNonceHandler callback
    • OAuthProvider::checkOAuthRequest — Check an oauth request
    • OAuthProvider::__construct — Constructs a new OAuthProvider object
    • OAuthProvider::consumerHandler — Set the consumerHandler handler callback
    • OAuthProvider::generateToken — Generate a random token
    • OAuthProvider::is2LeggedEndpoint — is2LeggedEndpoint
    • OAuthProvider::isRequestTokenEndpoint — Sets isRequestTokenEndpoint
    • OAuthProvider::removeRequiredParameter — Remove a required parameter
    • OAuthProvider::reportProblem — Report a problem
    • OAuthProvider::setParam — Set a parameter
    • OAuthProvider::setRequestTokenPath — Set request token path
    • OAuthProvider::timestampNonceHandler — Set the timestampNonceHandler handler callback
    • OAuthProvider::tokenHandler — Set the tokenHandler handler callback
  • OAuthException — OAuthException class
Web Services
Introdução
Web Services


Introdução

This extension provides OAuth consumer and provider bindings. OAuth is an authorization protocol built on top of HTTP which allows applications to securely access data without having to store usernames and passwords.

OAuth
Instalação/Configuração
OAuth


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
OAuth


Dependências

PECL/oauth requires PHP 5.1 or newer, ext/hash and ext/pcre.

PECL/oauth may optionally require libcurl if selected at build time. If configured with libcurl, it must be built with HTTPS support.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pear.php.net/package/oauth

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Most of these constants involve problems, which are also described within the official OAuth » Problem Reporting documentation. Note however, that these constant names are specific to PHP, although the naming scheme is similar.

OAUTH_SIG_METHOD_RSASHA1 (string)
OAuth RSA-SHA1 signature method.
OAUTH_SIG_METHOD_HMACSHA1 (string)

OAuth HMAC-SHA1 signature method.

OAUTH_SIG_METHOD_HMACSHA256 (string)
OAuth HMAC-SHA256 signature method.
OAUTH_AUTH_TYPE_AUTHORIZATION (string)

This constant represents putting OAuth parameters in the Authorization header.

OAUTH_AUTH_TYPE_NONE (string)

This constant indicates a NoAuth OAuth request.

OAUTH_AUTH_TYPE_URI (string)

This constant represents putting OAuth parameters in the request URI.

OAUTH_AUTH_TYPE_FORM (string)

This constant represents putting OAuth parameters as part of the HTTP POST body.

OAUTH_HTTP_METHOD_GET (string)

Use the GET method for the OAuth request.

OAUTH_HTTP_METHOD_POST (string)

Use the POST method for the OAuth request.

OAUTH_HTTP_METHOD_PUT (string)

Use the PUT method for the OAuth request.

OAUTH_HTTP_METHOD_HEAD (string)

Use the HEAD method for the OAuth request.

OAUTH_HTTP_METHOD_DELETE (string)
Use the DELETE method for the OAuth request.
OAUTH_REQENGINE_STREAMS (integer)
Used by Oauth::setReqeustEngine() to set the engine to PHP streams, as opposed to OAUTH_REQENGINE_CURL for Curl.
OAUTH_REQENGINE_CURL (integer)
Used by Oauth::setReqeustEngine() to set the engine to Curl, as opposed to OAUTH_REQENGINE_STREAMS for PHP streams.
OAUTH_OK (integer)
Life is good.
OAUTH_BAD_NONCE (integer)
The oauth_nonce value was used in a previous request, therefore it cannot be used now.
OAUTH_BAD_TIMESTAMP (integer)
The oauth_timestamp value was not accepted by the service provider. In this case, the response should also contain the oauth_acceptable_timestamps parameter.
OAUTH_CONSUMER_KEY_UNKNOWN (integer)
The oauth_consumer_key is temporarily unacceptable to the service provider. For example, the service provider may be throttling the consumer.
OAUTH_CONSUMER_KEY_REFUSED (integer)
The consumer key was refused.
OAUTH_INVALID_SIGNATURE (integer)
The oauth_signature is invalid, as it does not match the signature computed by the service provider.
OAUTH_TOKEN_USED (integer)
The oauth_token has been consumed. It can no longer be used because it has already been used in the previous request (or requests).
OAUTH_TOKEN_EXPIRED (integer)
The oauth_token has expired.
OAUTH_TOKEN_REVOKED (integer)
The oauth_token has been revoked, and will never be accepted.
OAUTH_TOKEN_REJECTED (integer)
The oauth_token was not accepted by the service provider. The reason is not known, but it might be because the token was never issued, already consumed, expired, and/or forgotten by the service provider.
OAUTH_VERIFIER_INVALID (integer)
The oauth_verifier is incorrect.
OAUTH_PARAMETER_ABSENT (integer)
A required parameter was not received. In this case, the response should also contain the oauth_parameters_absent parameter.
OAUTH_SIGNATURE_METHOD_REJECTED (integer)
The oauth_signature_method was not accepted by service provider.

Tipos Resource
Exemplos
OAuth


Exemplos

Índice

  • FireEagle
Constantes pré-definidas
FireEagle
OAuth


FireEagle

$req_url = 'https://fireeagle.yahooapis.com/oauth/request_token';
$authurl = 'https://fireeagle.yahoo.net/oauth/authorize';
$acc_url = 'https://fireeagle.yahooapis.com/oauth/access_token';
$api_url = 'https://fireeagle.yahooapis.com/api/0.1';
$conskey = 'your_consumer_key';
$conssec = 'your_consumer_secret';

session_start();

// In state=1 the next request should include an oauth_token.
// If it doesn't go back to 0
if(!isset($_GET['oauth_token']) && $_SESSION['state']==1) $_SESSION['state'] = 0;
try {
  $oauth = new OAuth($conskey,$conssec,OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_URI);
  $oauth->enableDebug();
  if(!isset($_GET['oauth_token']) && !$_SESSION['state']) {
    $request_token_info = $oauth->getRequestToken($req_url);
    $_SESSION['secret'] = $request_token_info['oauth_token_secret'];
    $_SESSION['state'] = 1;
    header('Location: '.$authurl.'?oauth_token='.$request_token_info['oauth_token']);
    exit;
  } else if($_SESSION['state']==1) {
    $oauth->setToken($_GET['oauth_token'],$_SESSION['secret']);
    $access_token_info = $oauth->getAccessToken($acc_url);
    $_SESSION['state'] = 2;
    $_SESSION['token'] = $access_token_info['oauth_token'];
    $_SESSION['secret'] = $access_token_info['oauth_token_secret'];
  }
  $oauth->setToken($_SESSION['token'],$_SESSION['secret']);
  $oauth->fetch("$api_url/user.json");
  $json = json_decode($oauth->getLastResponse());
  print_r($json);
} catch(OAuthException $E) {
  print_r($E);
}
?>

Exemplos
OAuth Funções
Exemplos


OAuth Funções

Índice

  • oauth_get_sbs — Generate a Signature Base String
  • oauth_urlencode — Encode a URI to RFC 3986
FireEagle
oauth_get_sbs
OAuth


Generate a Signature Base String

OAuth Funções
oauth_urlencode
OAuth Funções
PHP Manual

oauth_get_sbs

(PECL OAuth >=0.99.7)

oauth_get_sbs — Generate a Signature Base String

Descrição

string oauth_get_sbs ( string $http_method , string $uri [, array $request_parameters ] )

Generates a Signature Base String according to pecl/oauth.

Parâmetros

http_method

The HTTP method.

uri

URI to encode.

request_parameters

Array of request parameters.

Valor Retornado

Returns a Signature Base String.

OAuth Funções
oauth_urlencode
OAuth Funções


Encode a URI to RFC 3986

oauth_get_sbs
OAuth
OAuth Funções
PHP Manual

oauth_urlencode

(PECL OAuth >=0.99.2)

oauth_urlencode — Encode a URI to RFC 3986

Descrição

string oauth_urlencode ( string $uri )

Encodes a URI to » RFC 3986.

Parâmetros

uri

URI to encode.

Valor Retornado

Returns an » RFC 3986 encoded string.

oauth_get_sbs
OAuth
OAuth Funções


The OAuth class

Introdução

The OAuth extension provides a simple interface to interact with data providers using the OAuth HTTP specification to protect private resources.

Sinopse da classe

OAuth {
/* Properties */
public $debug ;
public $sslChecks ;
public $debugInfo ;
/* Methods */
__construct ( string $consumer_key , string $consumer_secret [, string $signature_method = OAUTH_SIG_METHOD_HMACSHA1 [, int $auth_type = 0 ]] )
public void __destruct ( void )
public bool disableDebug ( void )
public bool disableRedirects ( void )
public bool disableSSLChecks ( void )
public bool enableDebug ( void )
public bool enableRedirects ( void )
public bool enableSSLChecks ( void )
public mixed fetch ( string $protected_resource_url [, array $extra_parameters [, string $http_method [, array $http_headers ]]] )
public array getAccessToken ( string $access_token_url [, string $auth_session_handle [, string $verifier_token ]] )
public array getCAPath ( void )
public string getLastResponse ( void )
public array getLastResponseInfo ( void )
public array getRequestToken ( string $request_token_url [, string $callback_url ] )
public mixed setAuthType ( int $auth_type )
public mixed setCAPath ([ string $ca_path [, string $ca_info ]] )
public mixed setNonce ( string $nonce )
public void setRequestEngine ( int $reqengine )
public mixed setRSACertificate ( string $cert )
public mixed setTimestamp ( string $timestamp )
public bool setToken ( string $token , string $token_secret )
public bool setVersion ( string $version )
}

Propriedades

debug

sslChecks

debugInfo

Índice

  • OAuth::__construct — Create a new OAuth object
  • OAuth::__destruct — The destructor
  • OAuth::disableDebug — Turn off verbose debugging
  • OAuth::disableRedirects — Turn off redirects
  • OAuth::disableSSLChecks — Turn off SSL checks
  • OAuth::enableDebug — Turn on verbose debugging
  • OAuth::enableRedirects — Turn on redirects
  • OAuth::enableSSLChecks — Turn on SSL checks
  • OAuth::fetch — Fetch an OAuth protected resource
  • OAuth::getAccessToken — Fetch an access token
  • OAuth::getCAPath — Gets CA information
  • OAuth::getLastResponse — Get the last response
  • OAuth::getLastResponseInfo — Get HTTP information about the last response
  • OAuth::getRequestToken — Fetch a request token
  • OAuth::setAuthType — Set authorization type
  • OAuth::setCAPath — Set CA path and info
  • OAuth::setNonce — Set the nonce for subsequent requests
  • OAuth::setRequestEngine — The setRequestEngine purpose
  • OAuth::setRSACertificate — Set the RSA certificate
  • OAuth::setTimestamp — Set the timestamp
  • OAuth::setToken — Sets the token and secret
  • OAuth::setVersion — Set the OAuth version
oauth_urlencode
OAuth::__construct
OAuth


Create a new OAuth object

OAuth
OAuth::__destruct
OAuth
PHP Manual

OAuth::__construct

(PECL OAuth >= 0.99.1)

OAuth::__construct — Create a new OAuth object

Descrição

OAuth::__construct ( string $consumer_key , string $consumer_secret [, string $signature_method = OAUTH_SIG_METHOD_HMACSHA1 [, int $auth_type = 0 ]] )

Creates a new OAuth object

Parâmetros

consumer_key

The consumer key provided by the service provider.

consumer_secret

The consumer secret provided by the service provider.

signature_method

This optional parameter defines which signature method to use, by default it is OAUTH_SIG_METHOD_HMACSHA1 (HMAC-SHA1).

auth_type

This optional parameter defines how to pass the OAuth parameters to a consumer, by default it is OAUTH_AUTH_TYPE_AUTHORIZATION (in the Authorization header).

OAuth
OAuth::__destruct
OAuth


The destructor

OAuth::__construct
OAuth::disableDebug
OAuth
PHP Manual

OAuth::__destruct

(PECL OAuth >= 0.99.9)

OAuth::__destruct — The destructor

Descrição

public void OAuth::__destruct ( void )

The destructor.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Veja Também

  • OAuth::__construct() - Create a new OAuth object
OAuth::__construct
OAuth::disableDebug
OAuth


Turn off verbose debugging

OAuth::__destruct
OAuth::disableRedirects
OAuth
PHP Manual

OAuth::disableDebug

(PECL OAuth >= 0.99.3)

OAuth::disableDebug — Turn off verbose debugging

Descrição

public bool OAuth::disableDebug ( void )

Turns off verbose request information (off by default). Alternatively, the debug property can be set to a FALSE value to turn debug off.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Histórico

Versão | Descrição
0.99.8 | The related debug property was added.

Veja Também

  • OAuth::enableDebug() - Turn on verbose debugging

OAuth::__destruct
OAuth::disableRedirects
OAuth


Turn off redirects

OAuth::disableDebug
OAuth::disableSSLChecks
OAuth
PHP Manual

OAuth::disableRedirects

(PECL OAuth >= 0.99.9)

OAuth::disableRedirects — Turn off redirects

Descrição

public bool OAuth::disableRedirects ( void )

Disable redirects from being followed automatically, thus allowing the request to be manually redirected.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Veja Também

  • OAuth::enableRedirects() - Turn on redirects
OAuth::disableDebug
OAuth::disableSSLChecks
OAuth


Turn off SSL checks

OAuth::disableRedirects
OAuth::enableDebug
OAuth
PHP Manual

OAuth::disableSSLChecks

(PECL OAuth >= 0.99.5)

OAuth::disableSSLChecks — Turn off SSL checks

Descrição

public bool OAuth::disableSSLChecks ( void )

Turns off the usual SSL peer certificate and host checks, this is not for production environments. Alternatively, the sslChecks member can be set to FALSE to turn SSL checks off.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Histórico

Versão | Descrição
0.99.8 | The sslChecks member was added

Veja Também

  • OAuth::enableSSLChecks() - Turn on SSL checks

OAuth::disableRedirects
OAuth::enableDebug
OAuth


Turn on verbose debugging

OAuth::disableSSLChecks
OAuth::enableRedirects
OAuth
PHP Manual

OAuth::enableDebug

(PECL OAuth >= 0.99.3)

OAuth::enableDebug — Turn on verbose debugging

Descrição

public bool OAuth::enableDebug ( void )

Turns on verbose request information useful for debugging, the debug information is stored in the debugInfo member. Alternatively, the debug member can be set to a non-FALSE value to turn debug on.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Histórico

Versão | Descrição
0.99.8 | The debug and debugInfo members were added

Veja Também

  • OAuth::disableDebug() - Turn off verbose debugging

OAuth::disableSSLChecks
OAuth::enableRedirects
OAuth


Turn on redirects

OAuth::enableDebug
OAuth::enableSSLChecks
OAuth
PHP Manual

OAuth::enableRedirects

(PECL OAuth >= 0.99.9)

OAuth::enableRedirects — Turn on redirects

Descrição

public bool OAuth::enableRedirects ( void )

Follow and sign redirects automatically, which is enabled by default.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Veja Também

  • OAuth::disableRedirects() - Turn off redirects
OAuth::enableDebug
OAuth::enableSSLChecks
OAuth


Turn on SSL checks

OAuth::enableRedirects
OAuth::fetch
OAuth
PHP Manual

OAuth::enableSSLChecks

(PECL OAuth >= 0.99.5)

OAuth::enableSSLChecks — Turn on SSL checks

Descrição

public bool OAuth::enableSSLChecks ( void )

Turns on the usual SSL peer certificate and host checks (enabled by default). Alternatively, the sslChecks member can be set to a non-FALSE value to turn SSL checks off.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

TRUE

Histórico

Versão | Descrição
0.99.8 | The sslChecks member was added

Veja Também

  • OAuth::disableSSLChecks() - Turn off SSL checks

OAuth::enableRedirects
OAuth::fetch
OAuth


Fetch an OAuth protected resource

OAuth::enableSSLChecks
OAuth::getAccessToken
OAuth
PHP Manual

OAuth::fetch

(PECL OAuth >= 0.99.1)

OAuth::fetch — Fetch an OAuth protected resource

Descrição

public mixed OAuth::fetch ( string $protected_resource_url [, array $extra_parameters [, string $http_method [, array $http_headers ]]] )

Fetch a resource.

Parâmetros

protected_resource_url

URL to the OAuth protected resource.

extra_parameters

Extra parameters to send with the request for the resource.

http_method

One of the OAUTH_HTTP_METHOD_* OAUTH constants, which includes GET, POST, PUT, HEAD, or DELETE.

HEAD (OAUTH_HTTP_METHOD_HEAD) can be useful for discovering information prior to the request (if OAuth credentials are in the Authorization header).

http_headers

HTTP client headers (such as User-Agent, Accept, etc.)

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.
0.99.5 | The http_method parameter was added
0.99.8 | The http_headers parameter was added

Exemplos

Exemplo #1 OAuth::fetch() example

<?php
try {
    $oauth = new OAuth("consumer_key","consumer_secret",OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_AUTHORIZATION);
    $oauth->setToken("access_token","access_token_secret");

    $oauth->fetch("http://photos.example.net/photo?file=vacation.jpg");

    $response_info = $oauth->getLastResponseInfo();
    header("Content-Type: {$response_info["content_type"]}");
    echo $oauth->getLastResponse();
} catch(OAuthException $E) {
    echo "Exception caught!\n";
    echo "Response: ". $E->lastResponse . "\n";
}
?>

Veja Também

  • OAuth::getLastResponse() - Get the last response
  • OAuth::getLastResponseInfo() - Get HTTP information about the last response
  • OAuth::setToken() - Sets the token and secret

OAuth::enableSSLChecks
OAuth::getAccessToken
OAuth


Fetch an access token

OAuth::fetch
OAuth::getCAPath
OAuth
PHP Manual

OAuth::getAccessToken

(PECL OAuth >= 0.99.1)

OAuth::getAccessToken — Fetch an access token

Descrição

public array OAuth::getAccessToken ( string $access_token_url [, string $auth_session_handle [, string $verifier_token ]] )

Fetch an access token, secret and any additional response parameters from the service provider.

Parâmetros

access_token_url

URL to the access token API.

auth_session_handle

Authorization session handle, this parameter does not have any citation in the core OAuth 1.0 specification but may be implemented by large providers. » See ScalableOAuth for more information.

verifier_token

For service providers which support 1.0a, a verifier_token must be passed while exchanging the request token for the access token. If the verifier_token is present in $_GET or $_POST it is passed automatically and the caller does not need to specify a verifier_token (usually if the access token is exchanged at the oauth_callback URL). » See ScalableOAuth for more information.

Valor Retornado

Returns an array containing the parsed OAuth response on success or FALSE on failure.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.
0.99.9 | The verifier_token parameter was added

Exemplos

Exemplo #1 OAuth::getAccessToken() example

<?php
try {
    $oauth = new OAuth(OAUTH_CONSUMER_KEY,OAUTH_CONSUMER_SECRET);
    $oauth->setToken($request_token,$request_token_secret);
    $access_token_info = $oauth->getAccessToken("https://example.com/oauth/access_token");
    if(!empty($access_token_info)) {
        print_r($access_token_info);
    } else {
        print "Failed fetching access token, response was: " . $oauth->getLastResponse();
    }
} catch(OAuthException $E) {
    echo "Response: ". $E->lastResponse . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [oauth_token] => some_token
    [oauth_token_secret] => some_token_secret
)

Veja Também

  • OAuth::getLastResponse() - Get the last response
  • OAuth::getLastResponseInfo() - Get HTTP information about the last response
  • OAuth::setToken() - Sets the token and secret

OAuth::fetch
OAuth::getCAPath
OAuth


Gets CA information

OAuth::getAccessToken
OAuth::getLastResponse
OAuth
PHP Manual

OAuth::getCAPath

(PECL OAuth >= 0.99.8)

OAuth::getCAPath — Gets CA information

Descrição

public array OAuth::getCAPath ( void )

Gets the Certificate Authority information, which includes the ca_path and ca_info set by OAuth::setCaPath().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of Certificate Authority information, specifically as ca_path and ca_info keys within the returned associative array.

Veja Também

  • OAuth::setCAPath() - Set CA path and info
  • OAuth::getLastResponseInfo() - Get HTTP information about the last response
OAuth::getAccessToken
OAuth::getLastResponse
OAuth


Get the last response

OAuth::getCAPath
OAuth::getLastResponseInfo
OAuth
PHP Manual

OAuth::getLastResponse

(PECL OAuth >= 0.99.1)

OAuth::getLastResponse — Get the last response

Descrição

public string OAuth::getLastResponse ( void )

Get the raw response of the most recent request.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns a string containing the last response.

Veja Também

  • OAuth::getLastResponseInfo() - Get HTTP information about the last response
  • OAuth::fetch() - Fetch an OAuth protected resource

OAuth::getCAPath
OAuth::getLastResponseInfo
OAuth


Get HTTP information about the last response

OAuth::getLastResponse
OAuth::getRequestToken
OAuth
PHP Manual

OAuth::getLastResponseInfo

(PECL OAuth >= 0.99.1)

OAuth::getLastResponseInfo — Get HTTP information about the last response

Descrição

public array OAuth::getLastResponseInfo ( void )

Get HTTP information about the last response.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns an array containing the response information for the last request. Constants from curl_getinfo() may be used.

Veja Também

  • OAuth::fetch() - Fetch an OAuth protected resource
  • OAuth::getLastResponse() - Get the last response

OAuth::getLastResponse
OAuth::getRequestToken
OAuth


Fetch a request token

OAuth::getLastResponseInfo
OAuth::setAuthType
OAuth
PHP Manual

OAuth::getRequestToken

(PECL OAuth >= 0.99.1)

OAuth::getRequestToken — Fetch a request token

Descrição

public array OAuth::getRequestToken ( string $request_token_url [, string $callback_url ] )

Fetch a request token, secret and any additional response parameters from the service provider.

Parâmetros

request_token_url

URL to the request token API.

callback_url

OAuth callback URL. If callback_url is passed and is an empty value, it is set to "oob" to address the OAuth 2009.1 advisory.

Valor Retornado

Returns an array containing the parsed OAuth response on success or FALSE on failure.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.
0.99.9 | The callback_url parameter was added

Exemplos

Exemplo #1 OAuth::getRequestToken() example

<?php
try {
    $oauth = new OAuth(OAUTH_CONSUMER_KEY,OAUTH_CONSUMER_SECRET);
    $request_token_info = $oauth->getRequestToken("https://example.com/oauth/request_token");
    if(!empty($request_token_info)) {
        print_r($request_token_info);
    } else {
        print "Failed fetching request token, response was: " . $oauth->getLastResponse();
    }
} catch(OAuthException $E) {
    echo "Response: ". $E->lastResponse . "\n";
}
?>

O exemplo acima irá imprimir algo similar a:

Array
(
    [oauth_token] => some_token
    [oauth_token_secret] => some_token_secret
)

Veja Também

  • OAuth::getLastResponse() - Get the last response
  • OAuth::getLastResponseInfo() - Get HTTP information about the last response

OAuth::getLastResponseInfo
OAuth::setAuthType
OAuth


Set authorization type

OAuth::getRequestToken
OAuth::setCAPath
OAuth
PHP Manual

OAuth::setAuthType

(PECL OAuth >= 0.99.1)

OAuth::setAuthType — Set authorization type

Descrição

public mixed OAuth::setAuthType ( int $auth_type )

Set where the OAuth parameters should be passed.

Parâmetros

auth_type

auth_type can be one of the following flags (in order of decreasing preference as per OAuth 1.0 section 5.2):

OAUTH_AUTH_TYPE_AUTHORIZATION
Pass the OAuth parameters in the HTTP Authorization header.
OAUTH_AUTH_TYPE_FORM
Append the OAuth parameters to the HTTP POST request body.
OAUTH_AUTH_TYPE_URI
Append the OAuth parameters to the request URI.
OAUTH_AUTH_TYPE_NONE
None.

Valor Retornado

Returns TRUE if a parameter is correctly set, otherwise FALSE (e.g., if an invalid auth_type is passed in.)

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.

OAuth::getRequestToken
OAuth::setCAPath
OAuth


Set CA path and info

OAuth::setAuthType
OAuth::setNonce
OAuth
PHP Manual

OAuth::setCAPath

(PECL OAuth >= 0.99.8)

OAuth::setCAPath — Set CA path and info

Descrição

public mixed OAuth::setCAPath ([ string $ca_path [, string $ca_info ]] )

Sets the Certificate Authority (CA), both for path and info.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

ca_path

The CA Path being set.

ca_info

The CA Info being set.

Valor Retornado

Returns TRUE on success, or FALSE if either ca_path or ca_info are considered invalid.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.

Veja Também

  • OAuth::getCaPath() - Gets CA information
OAuth::setAuthType
OAuth::setNonce
OAuth


Set the nonce for subsequent requests

OAuth::setCAPath
OAuth::setRequestEngine
OAuth
PHP Manual

OAuth::setNonce

(PECL OAuth >= 0.99.1)

OAuth::setNonce — Set the nonce for subsequent requests

Descrição

public mixed OAuth::setNonce ( string $nonce )

Sets the nonce for all subsequent requests.

Parâmetros

nonce

The value for oauth_nonce.

Valor Retornado

Returns TRUE on success, or FALSE if the nonce is considered invalid.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.

Veja Também

  • OAuth::setToken() - Sets the token and secret
  • OAuth::setAuthType() - Set authorization type
  • OAuth::setVersion() - Set the OAuth version

OAuth::setCAPath
OAuth::setRequestEngine
OAuth


The setRequestEngine purpose

OAuth::setNonce
OAuth::setRSACertificate
OAuth
PHP Manual

OAuth::setRequestEngine

(PECL OAuth >= 1.0.0)

OAuth::setRequestEngine — The setRequestEngine purpose

Descrição

public void OAuth::setRequestEngine ( int $reqengine )

Sets the Request Engine, that will be sending the HTTP requests.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

reqengine

The desired request engine. Set to OAUTH_REQENGINE_STREAMS to use PHP Streams, or OAUTH_REQENGINE_CURL to use Curl.

Valor Retornado

Não há valor retornado.

Erros

Emits an OAuthException exception if an invalid request engine is chosen.

Exemplos

Exemplo #1 OAuth::setRequestEngine() example

<?php
$consumer = new OAuth();

$consumer->setRequestEngine(OAUTH_REQENGINE_STREAMS);
?>

Veja Também

  • Curl
  • PHP streams
  • OAuthException
OAuth::setNonce
OAuth::setRSACertificate
OAuth


Set the RSA certificate

OAuth::setRequestEngine
OAuth::setTimestamp
OAuth
PHP Manual

OAuth::setRSACertificate

(PECL OAuth >= 1.0.0)

OAuth::setRSACertificate — Set the RSA certificate

Descrição

public mixed OAuth::setRSACertificate ( string $cert )

Sets the RSA certificate.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

cert

The RSA certificate.

Valor Retornado

Returns TRUE on success, or FALSE on failure (e.g., the RSA certificate cannot be parsed.)

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.

Exemplos

Exemplo #1 An OAuth::setRsaCertificate() example

<?php
$consume = new OAuth('1234', '', OAUTH_SIG_METHOD_RSASHA1);

$consume->setRSACertificate(file_get_contents('test.pem'));
?>

Veja Também

  • OAuth::setCaPath() - Set CA path and info
OAuth::setRequestEngine
OAuth::setTimestamp
OAuth


Set the timestamp

OAuth::setRSACertificate
OAuth::setToken
OAuth
PHP Manual

OAuth::setTimestamp

(PECL OAuth >= 1.0.0)

OAuth::setTimestamp — Set the timestamp

Descrição

public mixed OAuth::setTimestamp ( string $timestamp )

Sets the OAuth timestamp for subsequent requests.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

timestamp

The timestamp.

Valor Retornado

Returns TRUE, unless the timestamp is invalid, in which case FALSE is returned.

Histórico

Versão | Descrição
1.0.0 | Previously returned NULL on failure, instead of FALSE.

Veja Também

  • OAuth::setNonce() - Set the nonce for subsequent requests
OAuth::setRSACertificate
OAuth::setToken
OAuth


Sets the token and secret

OAuth::setTimestamp
OAuth::setVersion
OAuth
PHP Manual

OAuth::setToken

(PECL OAuth >= 0.99.1)

OAuth::setToken — Sets the token and secret

Descrição

public bool OAuth::setToken ( string $token , string $token_secret )

Set the token and secret for subsequent requests.

Parâmetros

token

The OAuth token.

token_secret

The OAuth token secret.

Valor Retornado

TRUE

Exemplos

Exemplo #1 OAuth::setToken() example

<?php
$oauth = new OAuth(OAUTH_CONSUMER_KEY,OAUTH_CONSUMER_SECRET);
$oauth->setToken("token","token-secret");
?>

OAuth::setTimestamp
OAuth::setVersion
OAuth


Set the OAuth version

OAuth::setToken
OAuthProvider
OAuth
PHP Manual

OAuth::setVersion

(PECL OAuth >= 0.99.1)

OAuth::setVersion — Set the OAuth version

Descrição

public bool OAuth::setVersion ( string $version )

Sets the OAuth version for subsequent requests

Parâmetros

version

OAuth version, default value is always "1.0"

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

OAuth::setToken
OAuthProvider
OAuth


The OAuthProvider class

Introdução

Manages an OAuth provider class.

See also an external in-depth tutorial titled » Writing an OAuth Provider Service, which takes a hands-on approach to providing this service. There are also » OAuth provider examples within the OAuth extensions sources.

Sinopse da classe

OAuthProvider {
/* Methods */
final public bool addRequiredParameter ( string $req_params )
public void callconsumerHandler ( void )
public void callTimestampNonceHandler ( void )
public void calltokenHandler ( void )
public void checkOAuthRequest ([ string $uri [, string $method ]] )
__construct ([ array $params_array ] )
public void consumerHandler ( callback $callback_function )
final public static string generateToken ( int $size [, bool $strong = false ] )
public void is2LeggedEndpoint ( mixed $params_array )
public void isRequestTokenEndpoint ( bool $will_issue_request_token )
final public bool removeRequiredParameter ( string $req_params )
final public static string reportProblem ( string $oauthexception [, bool $send_headers = true ] )
final public bool setParam ( string $param_key [, mixed $param_val ] )
final public bool setRequestTokenPath ( string $path )
public void timestampNonceHandler ( callback $callback_function )
public void tokenHandler ( callback $callback_function )
}

Índice

  • OAuthProvider::addRequiredParameter — Add required parameters
  • OAuthProvider::callconsumerHandler — Calls the consumerNonceHandler callback
  • OAuthProvider::callTimestampNonceHandler — Calls the timestampNonceHandler callback
  • OAuthProvider::calltokenHandler — Calls the tokenNonceHandler callback
  • OAuthProvider::checkOAuthRequest — Check an oauth request
  • OAuthProvider::__construct — Constructs a new OAuthProvider object
  • OAuthProvider::consumerHandler — Set the consumerHandler handler callback
  • OAuthProvider::generateToken — Generate a random token
  • OAuthProvider::is2LeggedEndpoint — is2LeggedEndpoint
  • OAuthProvider::isRequestTokenEndpoint — Sets isRequestTokenEndpoint
  • OAuthProvider::removeRequiredParameter — Remove a required parameter
  • OAuthProvider::reportProblem — Report a problem
  • OAuthProvider::setParam — Set a parameter
  • OAuthProvider::setRequestTokenPath — Set request token path
  • OAuthProvider::timestampNonceHandler — Set the timestampNonceHandler handler callback
  • OAuthProvider::tokenHandler — Set the tokenHandler handler callback
OAuth::setVersion
OAuthProvider::addRequiredParameter
OAuth


Add required parameters

OAuthProvider
OAuthProvider::callconsumerHandler
OAuthProvider
PHP Manual

OAuthProvider::addRequiredParameter

(PECL OAuth >= 1.0.0)

OAuthProvider::addRequiredParameter — Add required parameters

Descrição

final public bool OAuthProvider::addRequiredParameter ( string $req_params )

Add required oauth provider parameters.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

req_params

The required parameters.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OAuthProvider::removeRequiredParameter() - Remove a required parameter
OAuthProvider
OAuthProvider::callconsumerHandler
OAuthProvider


Calls the consumerNonceHandler callback

OAuthProvider::addRequiredParameter
OAuthProvider::callTimestampNonceHandler
OAuthProvider
PHP Manual

OAuthProvider::callconsumerHandler

(No version information available, might only be in SVN)

OAuthProvider::callconsumerHandler — Calls the consumerNonceHandler callback

Descrição

public void OAuthProvider::callconsumerHandler ( void )

Calls the registered consumer handler callback function, which is set with OAuthProvider::consumerHandler().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Emits an E_ERROR level error if the callback function cannot be called, or was not specified.

Veja Também

  • OAuthProvider::consumerHandler() - Set the consumerHandler handler callback
OAuthProvider::addRequiredParameter
OAuthProvider::callTimestampNonceHandler
OAuthProvider


Calls the timestampNonceHandler callback

OAuthProvider::callconsumerHandler
OAuthProvider::calltokenHandler
OAuthProvider
PHP Manual

OAuthProvider::callTimestampNonceHandler

(PECL OAuth >= 1.0.0)

OAuthProvider::callTimestampNonceHandler — Calls the timestampNonceHandler callback

Descrição

public void OAuthProvider::callTimestampNonceHandler ( void )

Calls the registered timestamp handler callback function, which is set with OAuthProvider::timestampNonceHandler().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Emits an E_ERROR level error if the callback function cannot be called, or was not specified.

Veja Também

  • OAuthProvider::timestampNonceHandler() - Set the timestampNonceHandler handler callback
OAuthProvider::callconsumerHandler
OAuthProvider::calltokenHandler
OAuthProvider


Calls the tokenNonceHandler callback

OAuthProvider::callTimestampNonceHandler
OAuthProvider::checkOAuthRequest
OAuthProvider
PHP Manual

OAuthProvider::calltokenHandler

(PECL OAuth >= 1.0.0)

OAuthProvider::calltokenHandler — Calls the tokenNonceHandler callback

Descrição

public void OAuthProvider::calltokenHandler ( void )

Calls the registered token handler callback function, which is set with OAuthProvider::tokenHandler().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Erros

Emits an E_ERROR level error if the callback function cannot be called, or was not specified.

Veja Também

  • OAuthProvider::tokenHandler() - Set the tokenHandler handler callback
OAuthProvider::callTimestampNonceHandler
OAuthProvider::checkOAuthRequest
OAuthProvider


Check an oauth request

OAuthProvider::calltokenHandler
OAuthProvider::__construct
OAuthProvider
PHP Manual

OAuthProvider::checkOAuthRequest

(PECL OAuth >= 1.0.0)

OAuthProvider::checkOAuthRequest — Check an oauth request

Descrição

public void OAuthProvider::checkOAuthRequest ([ string $uri [, string $method ]] )

Checks an OAuth request.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

uri

The optional URI, or endpoint.

method

The HTTP method. Optionally pass in one of the OAUTH_HTTP_METHOD_* OAuth constants.

Valor Retornado

Não há valor retornado.

Erros

Emits an E_ERROR level error if the HTTP method cannot be detected.

Veja Também

  • OAuthProvider::reportProblem() - Report a problem
OAuthProvider::calltokenHandler
OAuthProvider::__construct
OAuthProvider


Constructs a new OAuthProvider object

OAuthProvider::checkOAuthRequest
OAuthProvider::consumerHandler
OAuthProvider
PHP Manual

OAuthProvider::__construct

(PECL OAuth >= 1.0.0)

OAuthProvider::__construct — Constructs a new OAuthProvider object

Descrição

OAuthProvider::__construct ([ array $params_array ] )

Initiates a new OAuthProvider object.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

params_array

Setting these optional parameters is limited to the CLI SAPI.

Valor Retornado

An OAuthProvider object.

Exemplos

Exemplo #1 OAuthProvider::__construct() example

<?php
try {

    $op = new OAuthProvider();

    // Uses user-defined callback functions
    $op->consumerHandler(array($this, 'lookupConsumer'));
    $op->timestampNonceHandler(array($this, 'timestampNonceChecker'));
    $op->tokenHandler(array($this, 'myTokenHandler'));

    // Ignore the foo_uri parameter
    $op->setParam('foo_uri', NULL);

    // No token needed for this end point
    $op->setRequestTokenPath('/v1/oauth/request_token');

    $op->checkOAuthRequest();

} catch (OAuthException $e) {

    echo OAuthProvider::reportProblem($e);
}
?>

Veja Também

  • OAuthProvider::setParam() - Set a parameter
OAuthProvider::checkOAuthRequest
OAuthProvider::consumerHandler
OAuthProvider


Set the consumerHandler handler callback

OAuthProvider::__construct
OAuthProvider::generateToken
OAuthProvider
PHP Manual

OAuthProvider::consumerHandler

(PECL OAuth >= 1.0.0)

OAuthProvider::consumerHandler — Set the consumerHandler handler callback

Descrição

public void OAuthProvider::consumerHandler ( callback $callback_function )

Sets the consumer handler callback, which will later be called with OAuthProvider::callConsumerHandler().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

callback_function

The callback functions name.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Example OAuthProvider::consumerHandler() callback

<?php
function lookupConsumer($provider) {

    if ($provider->consumer_key === 'unknown') {
        return OAUTH_CONSUMER_KEY_UNKNOWN;
    } else if($provider->consumer_key == 'blacklisted' || $provider->consumer_key === 'throttled') {
        return OAUTH_CONSUMER_KEY_REFUSED;
    }

    $provider->consumer_secret = "the_consumers_secret";

    return OAUTH_OK;
}
?>

Veja Também

  • OAuthProvider::callConsumerHandler() - Calls the consumerNonceHandler callback
OAuthProvider::__construct
OAuthProvider::generateToken
OAuthProvider


Generate a random token

OAuthProvider::consumerHandler
OAuthProvider::is2LeggedEndpoint
OAuthProvider
PHP Manual

OAuthProvider::generateToken

(PECL OAuth >= 1.0.0)

OAuthProvider::generateToken — Generate a random token

Descrição

final public static string OAuthProvider::generateToken ( int $size [, bool $strong = false ] )

Generates a string of pseudo-random bytes.

Parâmetros

size

The desired token length, in terms of bytes.

strong

Setting to TRUE means /dev/random will be used for entropy, as otherwise the non-blocking /dev/urandom is used. This parameter is ignored on Windows.

Valor Retornado

The generated token, as a string of bytes.

Erros

If the strong parameter is TRUE, then an E_WARNING level error will be emitted when the fallback rand() implementation is used to fill the remaining random bytes (e.g., when not enough random data was found, initially).

Exemplos

Exemplo #1 OAuthProvider::generateToken() example

<?php
$p = new OAuthProvider();

$t = $p->generateToken(4);

echo strlen($t),  PHP_EOL;
echo bin2hex($t), PHP_EOL;

?>

O exemplo acima irá imprimir algo similar a:

4
b6a82c27

Notas

Nota:

When not enough random data is available to the system, this function will fill the remaining random bytes using the internal PHP rand() implementation.

Veja Também

  • openssl_random_pseudo_bytes() - Generate a pseudo-random string of bytes
  • mcrypt_create_iv() - Creates an initialization vector (IV) from a random source
OAuthProvider::consumerHandler
OAuthProvider::is2LeggedEndpoint
OAuthProvider


is2LeggedEndpoint

OAuthProvider::generateToken
OAuthProvider::isRequestTokenEndpoint
OAuthProvider
PHP Manual

OAuthProvider::is2LeggedEndpoint

(PECL OAuth >= 1.0.0)

OAuthProvider::is2LeggedEndpoint — is2LeggedEndpoint

Descrição

public void OAuthProvider::is2LeggedEndpoint ( mixed $params_array )

The 2-legged flow, or request signing. It does not require a token.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

params_array

Valor Retornado

An OAuthProvider object.

Exemplos

Exemplo #1 OAuthProvider::is2LeggedEndpoint() example

<?php

$provider = new OAuthProvider();

$provider->is2LeggedEndpoint(true);

?>

Veja Também

  • OAuthProvider::__construct() - Constructs a new OAuthProvider object
OAuthProvider::generateToken
OAuthProvider::isRequestTokenEndpoint
OAuthProvider


Sets isRequestTokenEndpoint

OAuthProvider::is2LeggedEndpoint
OAuthProvider::removeRequiredParameter
OAuthProvider
PHP Manual

OAuthProvider::isRequestTokenEndpoint

(PECL OAuth >= 1.0.0)

OAuthProvider::isRequestTokenEndpoint — Sets isRequestTokenEndpoint

Descrição

public void OAuthProvider::isRequestTokenEndpoint ( bool $will_issue_request_token )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

will_issue_request_token

Sets whether or not it will issue a request token, thus determining if OAuthProvider::tokenHandler() needs to be called.

Valor Retornado

Não há valor retornado.

Veja Também

  • OAuthProvider::setRequestTokenPath() - Set request token path
  • OAuthProvider::reportProblem() - Report a problem
OAuthProvider::is2LeggedEndpoint
OAuthProvider::removeRequiredParameter
OAuthProvider


Remove a required parameter

OAuthProvider::isRequestTokenEndpoint
OAuthProvider::reportProblem
OAuthProvider
PHP Manual

OAuthProvider::removeRequiredParameter

(PECL OAuth >= 1.0.0)

OAuthProvider::removeRequiredParameter — Remove a required parameter

Descrição

final public bool OAuthProvider::removeRequiredParameter ( string $req_params )

Removes a required parameter.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

req_params

The required parameter to be removed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OAuthProvider::setParam() - Set a parameter
  • OAuthProvider::addRequiredParameter() - Add required parameters
OAuthProvider::isRequestTokenEndpoint
OAuthProvider::reportProblem
OAuthProvider


Report a problem

OAuthProvider::removeRequiredParameter
OAuthProvider::setParam
OAuthProvider
PHP Manual

OAuthProvider::reportProblem

(PECL OAuth >= 1.0.0)

OAuthProvider::reportProblem — Report a problem

Descrição

final public static string OAuthProvider::reportProblem ( string $oauthexception [, bool $send_headers = true ] )

Pass in a problem as an OAuthException, with possible problems listed in the OAuth constants section.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

oauthexception

The OAuthException.

Valor Retornado

Não há valor retornado.

Veja Também

  • OAuthProvider::checkOAuthRequest() - Check an oauth request
  • OAuthProvider::isRequestTokenEndpoint() - Sets isRequestTokenEndpoint
OAuthProvider::removeRequiredParameter
OAuthProvider::setParam
OAuthProvider


Set a parameter

OAuthProvider::reportProblem
OAuthProvider::setRequestTokenPath
OAuthProvider
PHP Manual

OAuthProvider::setParam

(PECL OAuth >= 1.0.0)

OAuthProvider::setParam — Set a parameter

Descrição

final public bool OAuthProvider::setParam ( string $param_key [, mixed $param_val ] )

Sets a parameter.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

param_key

The parameter key.

param_val

The optional parameter value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • OAuthProvider::addRequiredParameter() - Add required parameters
OAuthProvider::reportProblem
OAuthProvider::setRequestTokenPath
OAuthProvider


Set request token path

OAuthProvider::setParam
OAuthProvider::timestampNonceHandler
OAuthProvider
PHP Manual

OAuthProvider::setRequestTokenPath

(PECL OAuth >= 1.0.0)

OAuthProvider::setRequestTokenPath — Set request token path

Descrição

final public bool OAuthProvider::setRequestTokenPath ( string $path )

Sets the request tokens path.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

path

The path.

Valor Retornado

TRUE

Veja Também

  • OAuthProvider::tokenHandler() - Set the tokenHandler handler callback
OAuthProvider::setParam
OAuthProvider::timestampNonceHandler
OAuthProvider


Set the timestampNonceHandler handler callback

OAuthProvider::setRequestTokenPath
OAuthProvider::tokenHandler
OAuthProvider
PHP Manual

OAuthProvider::timestampNonceHandler

(PECL OAuth >= 1.0.0)

OAuthProvider::timestampNonceHandler — Set the timestampNonceHandler handler callback

Descrição

public void OAuthProvider::timestampNonceHandler ( callback $callback_function )

Sets the timestamp nonce handler callback, which will later be called with OAuthProvider::callTimestampNonceHandler(). Errors related to timestamp/nonce are thrown to this callback.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

callback_function

The callback functions name.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Example OAuthProvider::timestampNonceHandler() callback

<?php
function timestampNonceChecker($provider) {

    if ($provider->nonce === 'bad') {
        return OAUTH_BAD_NONCE;
    } elseif ($provider->timestamp == '0') {
        return OAUTH_BAD_TIMESTAMP;
    }

    return OAUTH_OK;
}
?>

Veja Também

  • OAuthProvider::callTimestampNonceHandler() - Calls the timestampNonceHandler callback
OAuthProvider::setRequestTokenPath
OAuthProvider::tokenHandler
OAuthProvider


Set the tokenHandler handler callback

OAuthProvider::timestampNonceHandler
OAuthException
OAuthProvider
PHP Manual

OAuthProvider::tokenHandler

(PECL OAuth >= 1.0.0)

OAuthProvider::tokenHandler — Set the tokenHandler handler callback

Descrição

public void OAuthProvider::tokenHandler ( callback $callback_function )

Sets the token handler callback, which will later be called with OAuthProvider::callTokenHandler().

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Parâmetros

callback_function

The callback functions name.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Example OAuthProvider::tokenHandler() callback

<?php
function tokenHandler($provider) {

    if ($provider->token === 'rejected') {
        return OAUTH_TOKEN_REJECTED;
    } elseif ($provider->token === 'revoked') {
        return OAUTH_TOKEN_REVOKED;
    }

    $provider->token_secret = "the_tokens_secret";
    return OAUTH_OK;
}
?>

Veja Também

  • OAuthProvider::callTokenHandler() - Calls the tokenNonceHandler callback
OAuthProvider::timestampNonceHandler
OAuthException
OAuthProvider


OAuthException class

Introdução

This exception is thrown when exceptional errors occur while using the OAuth extension and contains useful debugging information.

Sinopse da classe

OAuthException extends Exception {
/* Properties */
public $lastResponse ;
public $debugInfo ;
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

message

A human readable message about what went wrong

code

Exception code

file

File where exception was thrown

line

File where exception was thrown

lastResponse

The response of the exception which occurred, if any

debugInfo

OAuthProvider::tokenHandler
SCA
OAuth


SCA

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • The structure of a Service Component
    • Obtaining a proxy for another Service Component
    • Calling another Service Component
    • Locating and calling services from a script which is not an SCA Component
    • Exposing a Service Component as a Web service
    • Deploying an SCA component
    • Obtaining the WSDL for an SCA component offering a Service as a Web service
    • Understanding how the WSDL is generated
    • Working with Data Structures
    • Error handling
  • SCA Funções
    • SCA_LocalProxy::createDataObject — create an SDO
    • SCA_SoapProxy::createDataObject — create an SDO
    • SCA::createDataObject — create an SDO
    • SCA::getService — Obtain a proxy for a service
OAuthException
Introdução
Web Services


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

SCA for PHP makes it possible for a PHP programmer to write reusable components, which can be called in a variety of ways, with an identical interface and with a minimum of fuss. At present components can call each other either locally or via Web services, but in the future it is expected that other ways will be possible. It provides the programmer with a way of doing this which will look as natural as possible in PHP.

SCA components use phpDocumentor-style (see http://www.phpdoc.org/) annotations to declare dependencies on other SCA components or Web services. The SCA for PHP runtime resolves these dependencies at runtime on behalf of the components, and thus allows the PHP programmer to focus on the business logic rather than on locating and obtaining references to dependencies.

The SCA for PHP programming model can be extended to support a number of service types, such as REST and Atompub. However, Web services (more accurately, WSDL defined, SOAP/HTTP services), are the only type currently specified.

Components also use annotations to define the interface which they expose as a service. The SCA for PHP runtime will automatically generate WSDL from these annotations, so that an SCA component is easily exposed as a web service. These annotations are a natural extension to those provided by phpDocumentor. Deploying a Web service can be as simple as placing a PHP component under the document root of a web server.

Components also use annotations to specify data structures (expressed using XML schema complex types) which are then handled using Service Data Objects (SDOs).

A PHP script which is not an SCA component and which contains no annotations can use the services of an SCA component. A PHP script or component can make calls to a web service that is not an SCA component, but using the same system of calls or annotations to obtain a reference.

First we show a single SCA component, ConvertedStockQuote which illustrates many of the features of SCA for PHP. It has one method, getQuote(), which given a stock "ticker" obtains a price quote for that stock, converted to a given currency. We shall be using this example as a basis for explaining the SCA for PHP throughout the rest of this document.

Exemplo #1 A sample SCA component

<?php

include "SCA/SCA.php";

/**
 * Calculate a stock price for a given ticker symbol in a given currency.
 *
 * @service
 * @binding.soap
 */
class ConvertedStockQuote {

    /**
     * The currency exchange rate service to use.
     *
     * @reference
     * @binding.php ../ExchangeRate/ExchangeRate.php
     */
    public $exchange_rate;

    /**
     * The stock quote service to use.
     *
     * @reference
     * @binding.soap ../StockQuote/StockQuote.wsdl
     */
    public $stock_quote;

    /**
     * Get a stock quote for a given ticker symbol in a given currency.
     *
     * @param string $ticker The ticker symbol.
     * @param string $currency What currency to convert the value to.
     * @return float The stock value is the target currency.
     */
    function getQuote($ticker, $currency)
    {
        $quote  = $this->stock_quote->getQuote($ticker);
        $rate   = $this->exchange_rate->getRate($currency);
        return  $rate * $quote;
    }
}
?>

In this example, we see that an SCA component is implemented by a script containing a PHP class and includes SCA.php. The class contains a mixture of business logic and references to other components or services. In the illustrated getQuote() method there is only business logic, but it relies on the instance variables $stock_quote and $exchange_rate having been initialized. These refer to two other components and will be initialized by the SCA runtime with proxies for these two services, whenever this component executes. The annotations for these two services show one to be a local component, which will be called within the same PHP runtime, and one to be a remote component which will be called via a SOAP request. This component also exposes the getQuote() method both locally and as a web service, so it in turn can be called either locally or remotely.

SCA
Instalação/Configuração
SCA


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SCA


Dependências

If you want to use SCA to consume or produce Web services then you need PHP 5.2.0 or later, built with the soap extension enabled. If you just want to use local components, and do not wish to use the Web service bindings, then this version of SCA for PHP will also run with PHP 5.1.6.

SCA is packaged along with SDO in one combined package on PECL. See http://www.php.net/sdo#sdo.installation for installing the SCA_SDO package from PECL. The SCA code must be on the include path of your PHP installation, for example if it is installed as /usr/local/lib/php/SCA, the include_path directive must include /usr/local/lib/php

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/sca.

Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
SCA


Exemplos

Índice

  • The structure of a Service Component
  • Obtaining a proxy for another Service Component
  • Calling another Service Component
  • Locating and calling services from a script which is not an SCA Component
  • Exposing a Service Component as a Web service
  • Deploying an SCA component
  • Obtaining the WSDL for an SCA component offering a Service as a Web service
  • Understanding how the WSDL is generated
  • Working with Data Structures
  • Error handling

The examples in the subsequent sections illustrate the following aspects of PHP for SCA:

  • How PHP annotations are used to define PHP classes as SCA components, and how annotations are used to define the services.

  • How an SCA component can be exposed as a Web service

  • How an SCA component can consume a Web service, whether provided by another SCA component or by some other service which knows nothing of SCA

  • How an SCA component can call another SCA component locally (within the same process and on the same call stack)

  • How a client script which is not an SCA component can use the getService call to obtain a proxy for an SCA component.

  • How data structures such as Addresses, or Puchase Orders, are represented as Service Data Objects, and handled.

  • How SCA components are deployed, and in particular how and when WSDL is generated for a service.

  • How parameters are always passed by value (and not by reference) between components, even when the calls are local. This ensures that the semantics of a call do not change depending on the location of a component.

  • How positional parameters to a service are supported, even when the underlying WSDL is document literal wrapped, and naturally supports only named parameters.

  • How business and runtime exceptions are handled.

Constantes pré-definidas
The structure of a Service Component
SCA


The structure of a Service Component

A service component is implemented by a class. To identify it as a service component, it contains an @service annotation. The SCA runtime will use the file name of the script to determine the component name, by convention. The class and script file must therefore share the same name.

PHP SCA components always expose a service, and there is no way for a component to be invoked other than to be called as a result of a Web service request, or called directly from another component or from a script. For this reason a valid PHP SCA component will always contain an @service annotation and at least one public method.

Each SCA Component requires that the SCA.php script is included. As well as containing the definition of the SCA class, this script contains executable PHP code that will run whenever the script is called, and which will be responsible for making the component behave as needed.

Cuidado

It is very important that if your file contains other includes, they come before the include for SCA.php. If there are includes after the include for SCA.php, they will not have been processed when the SCA runtime runs your class.

The example below illustrates this overall structure

Exemplo #1 The structure of an SCA for PHP component

<?php

// any includes

include "SCA/SCA.php";

/**
 * @service
 */

class ConvertedStockQuote {

       // instance variables, business logic, including at least one public method

}
?>

Exemplos
Obtaining a proxy for another Service Component
Exemplos


Obtaining a proxy for another Service Component

One SCA component can call the service provided by another SCA component. The service a component provides is made up of all of its public methods. SCA for PHP currently provides two ways for one component to call another: either locally (i.e. within the same PHP run-time, and on the same call stack) or remotely if the called component exposes a Web service binding.

In order for one component to call another, the calling component needs a proxy for the called component. This proxy is usually provided as an instance variable in the calling component, though proxies can also be obtained with the SCA::getService() call, as we shall see later. When a component is constructed, proxies are constructed for any instance variable which refer to another component, and these proxies are "injected" into the instance variables. Proxies are always used, whether the component is local or remote, in order to provide identical calling behavior between remote and local calls (for example, local calls are made to always pass data by-value). The proxies know how to locate the required component and to pass the calls made on to them.

Instance variables which are intended to hold proxies for services are indicated by the two PHPDocumentor-style annotations, @reference and @binding. Both annotations are placed in the documentation section for a class instance variable, as shown by the code below.

The @reference annotation before an instance variable indicates that the instance variable is to be initialized with a proxy to a component.

The @binding annotation has two forms @binding.php and @binding.soap, and indicates that the proxy is either for a local component or for a Web service respectively. For both @binding.php and @binding.soap, the annotation gives a target URI.

At the moment, with the annotation-based method of specifying dependencies, the only way to alter the intended target of a reference is to alter the annotation within the component.

In our ConvertedStockQuote example, the $exchange_rate instance variable will be initialized with a proxy to the local ExchangeRate component whenever an instance of the ConvertedStockQuote is constructed.

Exemplo #1 Obtaining a proxy for a local PHP class

<?php
   /**
     * The currency exchange rate service to use.
     *
     * @reference
     * @binding.php ../ExchangeRate/ExchangeRate.php
     */
    public $exchange_rate;
?>

For @binding.php, the URI identifies the location of the script containing the implementation of the component. The component will be called locally. The service provided is the set of public methods of the component. The URI must be a simple pathname, either absolute or relative. The component will be loaded with the PHP include directive, after testing to see if it is already loaded with class_exists(). If the URI is a relative path, it is resolved relative to the component containing the annotation. Note that this is different from the normal PHP behaviour where scripts would be looked for along the PHP include_path, This is intended to provide some location-independence for cross-component references.

If this ExchangeRate service were remote and to be called as a Web service, only the @binding line changes. Instead of giving the location of a PHP class, it gives the location of the WSDL describing the web service. In our example component, this is illustrated by the second reference:

Exemplo #2 Obtaining a proxy for a web service

<?php
/**
     * The stock quote service to use.
     *
     * @reference
     * @binding.soap ../StockQuote/StockQuote.wsdl
     */
    public $stock_quote;
?>

The StockQuote component will be called via a Web service request. In this case the URI for the WSDL can be a simple pathname, or may contain a PHP wrapper and begin, for example, with file:// or http://. In the event that it is a simple pathname, it can be absolute or relative, and if relative will be resolved relative to the component containing the annotation. Note that this is like the behaviour for @binding.php, and different from the normal PHP behaviour where the file would be looked for relative to the PHP current working directory, which would usually be the location of the first script to be called. This behaviour is intended to give consistency across the different bindings and to provide some location-independence for references between components.

The structure of a Service Component
Calling another Service Component
Exemplos


Calling another Service Component

The ConvertedStockQuote example also calls the proxies for the two components to which it refers.

Exemplo #1 Calling services

<?php
$quote  = $this->stock_quote->getQuote($ticker);
$rate   = $this->exchange_rate->getRate($currency);
?>

The call to the StockQuote service is a call to a local service; the call to the ExchangeRate service is a call to a remote service. Note that the way the call is made looks the same regardless of whether the call is to a local service or a remote one.

The proxies which have been injected ensure that the way calls to components look and behave are the same way regardless of whether they are to a local or remote service, so that components are not sensitive to whether a call is to a local or a remote service. For example, the proxy for a local service takes copies of the arguments and passes only those copies, to ensure that calls are made to be pass-by-value, as they would be for a remote call. Also, the proxy for a remote service takes the arguments from a positional parameter list and ensures they are packaged properly in a SOAP request and converted back to a positional parameter list at the far end.

In the example above, the $ticker and $currency are clearly PHP scalar types. Components can pass the PHP scalar types string, integer, float and boolean, but data structures on service calls are always passed as Service Data Objects (SDOs). A later section describes how a component can create an SDO to pass on a local or Web service call, or how a component can create an SDO to return. The PHP SDO project documentation describes how to work with the SDO APIs (see the SDO pages.

Obtaining a proxy for another Service Component
Locating and calling services from a script which is not an SCA Component
Exemplos


Locating and calling services from a script which is not an SCA Component

SCA components obtain proxies for other components or services as instance variables annotated with @reference, but this is not possible for a script that is not itself also a component. A client script which is not a component must use the SCA::getService() static method to obtain a proxy for a service, whether local or remote. The getService() method takes a URI as the argument. Typically this is the location of a local PHP script containing a component, or of a wsdl file, and is used in exactly the same way as the targets of the @binding annotations described in the previous section: that is, relative URIs are resolved against the location of the client script and not against the PHP include_path or current working directory.

For example, a script that needed to obtain proxies for the ExchangeRate and StockQuote services but was not a component would use the getService() method as follows:

Exemplo #1 Obtaining a proxy using getService

<?php
$exchange_rate = SCA::getService('../ExchangeRate/ExchangeRate.php');
$stock_quote   = SCA::getService('../StockQuote/StockQuote.wsdl');
?>

Methods on services can then be called on the returned proxy, just as they can in a component.

Exemplo #2 Making calls on the proxy

<?php
$quote  = $stock_quote->getQuote($ticker);
$rate   = $exchange_rate->getRate($currency);
?>

Calling another Service Component
Exposing a Service Component as a Web service
Exemplos


Exposing a Service Component as a Web service

SCA for PHP can generate WSDL from the annotations within a service component, so that it can be easily deployed and exposed as a Web service. To provide SCA with the information it needs to generate the WSDL, it is necessary to add the annotation @binding.soap under the @service annotation and to specify the parameters and return values of the methods using the @param and @return annotations. These annotations will be read when WSDL is generated, and the order and types of the parameters determine the contents of the <schema> section of the WSDL.

SCA for PHP always generates document/literal wrapped WSDL for components that are exposing a Web service. Note that this does not stop components from consuming Web services which are not SCA components and which are documented with WSDL written in a different style.

The scalar types which can be used in the @param annotation are the four common PHP scalar types: boolean, integer, float and string. These are simply mapped to the XML schema types of the same name in the WSDL. The example below, which is a trivial implementation of the StockQuote service that the ConvertedStockQuote component calls, illustrates string and float types.

Exemplo #1 StockQuote Service

<?php

include "SCA/SCA.php";

/**
 * Scaffold implementation for a remote StockQuote Web service.
 *
 * @service
 * @binding.soap
 *
 */
class StockQuote {

    /**
     * Get a stock quote for a given ticker symbol.
     *
     * @param string $ticker The ticker symbol.
     * @return float The stock quote.
     */
    function getQuote($ticker) {
        return 80.9;
  }
}
?>

WSDL much like the following (though with a service location other than 'localhost', probably) would be generated from this service:

Exemplo #2 Generated WSDL

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xsi:type="tDefinitions"
    xmlns:tns2="http://StockQuote" xmlns:tns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns3="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://StockQuote">
  <types>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://StockQuote">
      <xs:element name="getQuote">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ticker" type="xs:string"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="getQuoteResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="getQuoteReturn" type="xs:float"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:schema>
  </types>

  <message name="getQuoteRequest">
    <part name="getQuoteRequest" element="tns2:getQuote"/>
  </message>
  <message name="getQuoteResponse">
    <part name="return" element="tns2:getQuoteResponse"/>
  </message>
  <portType name="StockQuotePortType">
    <operation name="getQuote">
      <input message="tns2:getQuoteRequest"/>
      <output message="tns2:getQuoteResponse"/>
    </operation>
  </portType>
  <binding name="StockQuoteBinding" type="tns2:StockQuotePortType">
    <operation name="getQuote">
      <input>
        <tns3:body xsi:type="tBody" use="literal"/>
      </input>
      <output>
        <tns3:body xsi:type="tBody" use="literal"/>
      </output>
      <tns3:operation xsi:type="tOperation" soapAction=""/>
    </operation>
    <tns3:binding xsi:type="tBinding" transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
  </binding>
  <service name="StockQuoteService">
    <port name="StockQuotePort" binding="tns2:StockQuoteBinding">
      <tns3:address xsi:type="tAddress" location="http://localhost/StockQuote/StockQuote.php"/>
    </port>
  </service>
</definitions>

<!-- this line identifies this file as WSDL generated by SCA for PHP. Do not remove -->

Locating and calling services from a script which is not an SCA Component
Deploying an SCA component
Exemplos


Deploying an SCA component

There are no special steps needed to deploy a PHP SCA component. It is sufficient to place the component PHP script in its proper place under the web server document root, just like any other PHP script. It is the SCA::initComponent() executable line within each component that will be executed whenever the script is called, and which will be responsible for making the component respond appropriately to Web service calls, local calls, or requests for WSDL.

Exposing a Service Component as a Web service
Obtaining the WSDL for an SCA component offering a Service as a Web service
Exemplos


Obtaining the WSDL for an SCA component offering a Service as a Web service

SCA components that expose a Web service interface (i.e. have an @binding.soap annotation) will return their WSDL definition in response to an HTTP request with a get parameter of "wsdl". The usual way to obtain this is with "?wsdl" on the end of a URL. The example below uses file_get_contents() to obtain WSDL from a service and writes it to a temporary file before then obtaining a proxy for the service in the usual way. You could of course also obtain the WSDL in a browser, or by some other means, and save the file yourself.

Exemplo #1 Generated WSDL

<?php
$wsdl = file_get_contents('http://www.example.com/Services/Example.php?wsdl');
file_put_contents("service.wsdl",$wsdl); //write the wsdl to a file
$service = SCA::getService('service.wsdl');
?>

NOTE: If the wsdl requires imported xsds, these will need to be fetched separately.

Deploying an SCA component
Understanding how the WSDL is generated
Exemplos


Understanding how the WSDL is generated

SCA for PHP generates WSDL for components which contain an @binding.soap annotation after the @service annotation. To generate WSDL, the SCA runtime reflects on the component and examines the @param and @return annotations for each public method, as well as any @types annotations within the component. The information from the @param and @return annotations is used to build the <types> section of the WSDL. Any @types annotations which specify a separate schema file will result in an <import> element for that schema within the WSDL.

Location attribute of the <service> element

At the bottom of the WSDL is the <service> element which uses the location attribute to identify the URL of the service. For example this might look as follows:

Exemplo #1 location attribute

<service name="ConvertedStockQuote"
...
location="http://localhost/ConvertedStockQuote/ConvertedStockQuote.php"/>

Note that this location is relative to the document root of the web server, and cannot be worked out in advance. It can only be worked out once the component is in its proper place under a running web server, when the hostname and port can be known and placed in the WSDL. Detail from the URL that requests the WSDL is used, so for example if the WSDL is generated in response to a request to http://www.example.com:1111/ConvertedStockQuote/ConvertedStockQuote.php?wsdl, a location of http://www.example.com:1111/ConvertedStockQuote/ConvertedStockQuote.php is what will be inserted into the location attribute in the WSDL.

Document/literal wrapped WSDL and positional parameters

SCA for PHP generates WSDL in the document/literal wrapped style. This style encloses the parameters and return types of a method in 'wrappers' which are named after the corresponding method. The <types> element at the top of the WSDL defines each of these wrappers. If we consider the getQuote() method of the ConvertedStockQuote example:

Exemplo #2 method with two arguments

<?php
   /**
     * Get a stock quote for a given ticker symbol in a given currency.
     *
     * @param string $ticker The ticker symbol.
     * @param string $currency What currency to convert the value to.
     * @return float The stock value is the target currency.
     */
    function getQuote($ticker, $currency)
    {
        $quote  = $this->stock_quote->getQuote($ticker);
        $rate   = $this->exchange_rate->getRate($currency);
        return  $rate * $quote;
    }
?>

The WSDL generated to define this method will name both the method and the parameters, and give an XML schema type for the parameters. The types section of the WSDL looks like this:

Exemplo #3 types section illustrating named parameters

<types>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://ConvertedStockQuote">
      <xs:element name="getQuote">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ticker" type="xs:string"/>
            <xs:element name="currency" type="xs:string"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="getQuoteResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="getQuoteReturn" type="xs:float"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:schema>
  </types>

The SCA run-time has special processing to handle how positional parameter lists in the interface are converted to XML containing named parameters in the soap request, and then back to positional parameter lists again. To see why this matters, consider how a PHP script which used a different interface to make a SOAP call would need to construct the parameter list. A PHP script using the PHP SoapClient, for example, would need to pass the SoapClient a single parameter giving the values for "ticker" and "currency", perhaps as an associative array. To insist that SCA components construct parameter lists to make Web service calls in this way would be to make local and remote calls look different, so a different approach is needed.

When SCA generates WSDL for an SCA component it includes a comment in the WSDL which marks that WSDL as being the interface for an SCA component. In this case, when one SCA component calls another through a Web service, the SCA runtime on the calling end takes the positional parameter list from the call and assigns the values one by one to the named elements in the soap message. For example a call to the getQuote() method defined above that passes the values 'IBM' and 'USD' and looks like this:

<?php
  $quote = $remote_service->getQuote('IBM','USD');
?>

will result in a soap message containing the following:

<getQuote>
  <ticker>IBM</ticker>
  <currency>USD</currency>
</getQuote>

On the service-providing end, the SCA run-time takes the parameters one by one from the soap message and forms a positional parameter list from them, re-forming the argument list ('IBM','USD').

Cuidado

At both ends the SCA runtime relies on the order in which the parameters appear in the soap message being the same as that in the target method's parameter list. This is ultimately determined by the order of the @param annotations: this determines the order in which the parameters appear in the WSDL and thereby the order in which they appear in the soap message. Therefore it is essential that the order of the @param annotations matches that of the parameters in the method's parameter list.

Obtaining the WSDL for an SCA component offering a Service as a Web service
Working with Data Structures
Exemplos


Working with Data Structures

SCA components can pass and return the four PHP scalar types boolean, integer, float and string, but to pass or return data structures, SCA components use Service Data Objects (SDOs). SDOs are described in much more detail in the SDO pages of this manual. Readers familiar with SDOs will know that they are suitable for representing the sort of structured and semi-structured data that is frequently modeled in XML, and that they serialize very naturally for passing between remote components, or in Web services. SDOs are presently the only supported way to pass and return data structures. It is not possible to pass or return PHP objects, or PHP arrays.

The SCA runtime always assures data is passed by-value, even for local calls. To do this, the SCA runtime copies any SDOs in the parameter list before passing them on, just as it does for scalar types.

How data structures are defined to SCA components

Currently the only mechanism for specifying the location of a data structure definition is by specifying the types in an XML schema file. However, in the future it may be possible to define types in other ways, such as based on PHP classes or interfaces, or based on definitions expressed as associative arrays.

To illustrate the use of SDOs we introduce a new component. The PortfolioMangement service below returns an SDO representing a stock portfolio for a given customer.

Exemplo #1 A Component that uses Data Structures

<?php

include "SCA/SCA.php";

/**
 * Manage the portfolio for a customer.
 *
 * @service
 * @binding.soap
 *
 * @types http://www.example.org/Portfolio PortfolioTypes.xsd
 *
 */
class PortfolioManagement {

    /**
     * Get the stock portfolio for a given customer.
     *
     * @param integer $customer_id The id for the customer
     * @return Portfolio http://www.example.org/Portfolio The stock portfolio (symbols and quantities)
     */
    function getPortfolio($customer_id) {
        // Pretend we just got this from a database
        $portfolio = SCA::createDataObject('http://www.example.org/Portfolio', 'Portfolio');
        $holding = $portfolio->createDataObject('holding');
        $holding->ticker = 'AAPL';
        $holding->number = 100.5;
        $holding = $portfolio->createDataObject('holding');
        $holding->ticker = 'INTL';
        $holding->number = 100.5;
        $holding = $portfolio->createDataObject('holding');
        $holding->ticker = 'IBM';
        $holding->number = 100.5;
        return $portfolio;
    }

}
?>

The @types annotation:

<?php
@types http://www.example.org/Portfolio PortfolioTypes.xsd
?>

indicates that types in the namespace http://www.example.org/Portfolio will be found in the schema file located by the URI PortfolioTypes.xsd. The generated WSDL would reproduce this information with an import statement as follows:

<xs:import schemaLocation="PortfolioTypes.xsd"
                      namespace="http://www.example.org/Portfolio"/>

so the URI, absolute or relative, must be one that can be resolved when included in the schemaLocation attribute.

Creating SDOs

Readers familiar with SDOs will know that they are always created according to a description of the permitted structure (sometimes referred to as the 'schema' or 'model') and that, rather than creating them directly using 'new', some form of data factory is needed. Often, an existing data object can be used as the data factory, but sometimes, and especially in order to get the first data object, something else must act as the data factory.

In SCA, either the SCA runtime class or the proxies for services, whether local or remote, can act as the data factories for SDOs. The choice of which to use, and when, is described in the next two sections.

We switch to a new example in order to illustrate the creation of SDOs, both to pass to a service, and to be returned from a service.

Creating an SDO to pass to a service

A caller of a service which requires a data structure to be passed in to it uses the proxy to the service as the data factory for the corresponding SDOs. For example, suppose a component makes use of a proxy for a service provided by a local AddressBook component.

<?php
/**
 * @reference
 * @binding.local AddressBook.php
 */
$address_book;
?>

The AddressBook component that it wishes to call is defined as follows:

<?php
/**
* @service
* @binding.soap
* @types http://addressbook ../AddressBook/AddressBook.xsd
*/
class AddressBook {

    /**
     * @param personType $person http://addressbook (a person object)
     * @return addressType http://addressbook (the address object for the person object)
     */
    function lookupAddress($person)  {
        ...
    }
}
?>

The AddressBook component provides a service method called lookupAddress() which uses types from the http://addressbook namespace. The lookupAddress method takes a personType data structure and returns an addressType. Both types are defined in the schema file addressbook.xsd.

Once the component that wishes to use the AddressBook component has been constructed, so that the $address_book instance variable contains a proxy for the service, the calling component can use the proxy in $address_book to create the person SDO, as shown below:

<?php
$william_shakespeare        = $address_book->createDataObject('http://addressbook','personType');
$william_shakespeare ->name = "William Shakespeare";
$address                    = $address_book->lookupAddress($william_shakespeare);
?>

Note, the use of the proxy as the means to create the SDO is not limited to SCA components. If a service is being called from a general PHP script, and the proxy was obtained with getService() then the same approach is used.

<?php
$address_book = SCA::getService('AddressBook.php');
$william_shakespeare = $address_book->createDataObject('http://addressbook','personType');
?>

Creating an SDO to return from a component

A component that needs to create a data object for return to a caller will not have a proxy to use as a data object, In this case it uses the createDataObject() static method on SCA.php. Hence if the AddressBook component described above needed to create an object of type addressType within the namespace http://addressbook, it might do so as follows:

<?php
$address = SCA::createDataObject('http://addressbook','addressType');
?>

Understanding how the WSDL is generated
Error handling
Exemplos


Error handling

This section describes how errors are handled. There are two types of errors:

  • SCA runtime exceptions are those that signal problems in the management of the execution of components, and in the interaction with remote services. These might occur due to network or configuration problems.

  • Business exceptions are those that are defined by the programmer. They extend the PHP Exception class, and are thrown and caught deliberately as part of the business logic.

Handling of Runtime exceptions

There are two types of SCA runtime exception:

  • SCA_RuntimeException - signals a problem found by or perhaps occurring within the SCA runtime. This can be thrown for a variety of reasons, many of which can occur regardless of whether a connection is being made to a local or a remote service: an error in one of the annotations within a component, a missing WSDL or php file, and so on. In the case of Web services, an SCA_RuntimeException can also be thrown if a SoapFault is received from a remote Web service and the fault code in the SoapFault indicates that a retry is unlikely to be successful.

  • SCA_ServiceUnavailableException - this is a subclass of SCA_RuntimeException and signals a problem in connecting to or using a remote service, but one which might succeed if retried. In the case of Web services, this exception is thrown if a SoapFault is received with a fault code that indicates that a retry might be successful.

Handling of Business exceptions

Business exceptions may be defined and thrown by a component in the normal way, regardless of whether the component has been called locally or remotely. The SCA runtime does not catch business exceptions that have been thrown by a component called locally, so they will be returned to a caller in the normal way. If a component has been called via a Web service, on the other hand, the SCA runtime on the service providing end does catch business exceptions, and will ensure these are passed back to the calling end and re-thrown. Assuming that the calling end has a definition of the exception (that is, is able to include a file containing the PHP class defining the exception) the re-thrown exception will contain the same details as the original, so that the getLine() and getFile() methods for example will contain the location where the exception was thrown within the business logic. The exception will be passed in the detail field of a soap fault with a fault code of "Client".

Working with Data Structures
SCA Funções
Exemplos


Error handling
SCA_LocalProxy::createDataObject
SCA
PHP Manual

SCA Funções

Classes pré-definidas

Most of the interface to SCA is through the annotations within SCA components so there are few public classes and methods. The only SCA classes that scripts or components can call are the SCA class itself, and the proxy classes SCA_LocalProxy and SCA_SoapProxy.

SCA

Much of the work of the SCA class is performed when the file SCA.php is included within an SCA component. However, a PHP script may include SCA.php and call the getService() method on the SCA class in order to obtain a proxy for a service. A component will not need to do this as proxies are obtained instead by defining an instance variable with the @reference annotation.

Components that need to create an SDO to return to a caller will need a data factory to call. For this purpose the SCA class supports the createDataObject() method, which will create an SDO according to the model defined by the component's @types annotations. The arguments to createDataObject() are the same as those to SDO's XML Data Access Service.

Métodos

  • getService - obtain a proxy for a service

  • createDataObject - create an SDO

SCA_LocalProxy

When getService() is called with the target of a local PHP component, a local proxy is returned. A local proxy is also injected into the instance variables of a component that are defined with an @reference and an @binding.php anotation. When the script or component makes calls on the local proxy, they are passed on to the target component itself.

Components that need to create an SDO to pass to a component will need a data factory to call. For this purpose the SCA_LocalProxy class supports the createDataObject() method, which will create an SDO according to the model defined by the components' @types annotations. The arguments to the createDataObject() are the same as those to SDO's XML Data Access Service.

Métodos

  • createDataObject - create an SDO

SCA_SoapProxy

When getService() is called with the target of a WSDL file, a SOAP proxy is returned. A SOAP proxy is also injected into the instance variables of a component that are defined with an @reference and an @binding.soap anotations. When the script or component makes calls on the SOAP proxy, they are formed into Web service SOAP requests and passed on to the target component, with the help of the PHP Soap extension.

Components that need to create an SDO to pass to a component will need a data factory to call. For this purpose the SCA_SoapProxy class supports the createDataObject() method, which will create an SDO according to the model defined within the target WSDL. The arguments to the createDataObject() are the same as those to SDO's XML Data Access Service.

Métodos

  • createDataObject - create an SDO

Índice

  • SCA_LocalProxy::createDataObject — create an SDO
  • SCA_SoapProxy::createDataObject — create an SDO
  • SCA::createDataObject — create an SDO
  • SCA::getService — Obtain a proxy for a service
Error handling
SCA_LocalProxy::createDataObject
SCA
PHP Manual


create an SDO

SCA Funções
SCA_SoapProxy::createDataObject
SCA Funções
PHP Manual

SCA_LocalProxy::createDataObject

(PECL SDO >= 0.5.0)

SCA_LocalProxy::createDataObject — create an SDO

Descrição

SDO_DataObject SCA_LocalProxy::createDataObject ( string $type_namespace_uri , string $type_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

This method is used inside either an ordinary PHP script or an SCA component that needs to create an SDO to pass to a local service. The parameters are the desired SDO's namespace URI and type name. The namespace and type must be defined in the interface of the component that is to be called, so the namespace and type must be defined in one of the schema files which are specified on the @types annotation within the component for which the SCA_LocalProxy object is a proxy.

Parâmetros

type_namespace_uri

The namespace of the type.

type_name

The name of the type.

Valor Retornado

Returns the newly created SDO_DataObject.

Erros

SDO_TypeNotFoundException

Thrown if the namespaceURI and typeName do not correspond to a type in any of the schema files specified in the @types annotations within the component for which the SCA_LocalProxy object is a proxy..

SCA Funções
SCA_SoapProxy::createDataObject
SCA Funções


create an SDO

SCA_LocalProxy::createDataObject
SCA::createDataObject
SCA Funções
PHP Manual

SCA_SoapProxy::createDataObject

(PECL SDO >= 0.5.0)

SCA_SoapProxy::createDataObject — create an SDO

Descrição

SDO_DataObject SCA_SoapProxy::createDataObject ( string $type_namespace_uri , string $type_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

This method is used inside either an ordinary PHP script or an SCA component that needs to create an SDO to pass to a web service. The parameters are the desired SDO's namespace URI and type name. The namespace and type must be defined in the interface of the component that is to be called, so the namespace and type must be defined within the WSDL for the web service. If the web service is also an SCA component then the types will have been defined within one of the schema files which are specified on the @types annotation within the component for which the SCA_SoapProxy object is a proxy.

Parâmetros

type_namespace_uri

The namespace of the type.

type_name

The name of the type.

Valor Retornado

Returns the newly created SDO_DataObject.

Erros

SDO_TypeNotFoundException

Thrown if the namespaceURI and typeName do not correspond to a type found in the WSDL that was used to initialise this SCA_SoapProxy.

SCA_LocalProxy::createDataObject
SCA::createDataObject
SCA Funções


create an SDO

SCA_SoapProxy::createDataObject
SCA::getService
SCA Funções
PHP Manual

SCA::createDataObject

(PECL SDO >= 0.5.0)

SCA::createDataObject — create an SDO

Descrição

SDO_DataObject SCA::createDataObject ( string $type_namespace_uri , string $type_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

This method is used inside an SCA component that needs to create an SDO to return. The parameters are the desired SDO's namespace URI and type name. The namespace and type must be defined in one of the schema files which are specified on the @types annotation within the component.

Parâmetros

type_namespace_uri

The namespace of the type.

type_name

The name of the type.

Valor Retornado

Returns the newly created SDO_DataObject.

Erros

SDO_TypeNotFoundException

Thrown if the namespaceURI and typeName do not correspond to a type in any of the schema files specified in the @types annotations.

SCA_SoapProxy::createDataObject
SCA::getService
SCA Funções


Obtain a proxy for a service

SCA::createDataObject
SOAP
SCA Funções
PHP Manual

SCA::getService

(PECL SDO >= 0.5.0)

SCA::getService — Obtain a proxy for a service

Descrição

mixed SCA::getService ( string $target [, string $binding [, array $config ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Examine the target and initialize and return a proxy of the appropriate sort. If the target is for a local PHP component the returned proxy will be an SCA_LocalProxy. If the target is for a WSDL file, the returned proxy will be a SCA_SoapProxy.

Parâmetros

target

An absolute or relative path to the target service or service description (e.g. a URL to a json-rpc service description, a PHP component, a WSDL file, and so on.). A relative path, if specified, is resolved relative to the location of the script issuing the getService() call, and not against the include_path or current working directory.

binding

The binding (i.e. protocol) to use to communicate with the service (e.g binding.jsonrpc for a json-rpc service). Note, some service types can be deduced from the target parameter (e.g. if the target parameter ends in .wsdl then SCA will assume binding.soap). Any binding which can be specified in an annotation can be specified here. For example 'binding.soap' is equivalent to the '@binding.soap' annotation.

config

Any additional configuration properties for the binding (e.g. array('location' => 'http://example.org')). Any binding configuration which can be specified in an annotation can be specified here. For example, 'location' is equivalent to the '@location' annotation to configure the location of a target soap service.

Valor Retornado

The SCA_LocalProxy or SCA_SoapProxy.

Exemplos

Exemplo #1 An SCA::getService() example

This example shows how to get a proxy to an email soap service described by EmailService.wsdl and located at http://example.org.

<?php
include 'SCA/SCA.php';
$service = SCA::getService('EmailService.wsdl', 'binding.soap', array('location' => 'http://example.org'));
$service->send(...);
?>

O exemplo acima irá imprimir:

SCA::createDataObject
SOAP
SCA Funções


SOAP

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • SOAP Funções
    • is_soap_fault — Checks if a SOAP call has failed
    • use_soap_error_handler — Set whether to use the SOAP error handler
  • SoapClient — The SoapClient class
    • SoapClient::__call — Calls a SOAP function (deprecated)
    • SoapClient::__construct — SoapClient constructor
    • SoapClient::__doRequest — Performs a SOAP request
    • SoapClient::__getFunctions — Returns list of available SOAP functions
    • SoapClient::__getLastRequest — Returns last SOAP request
    • SoapClient::__getLastRequestHeaders — Returns the SOAP headers from the last request
    • SoapClient::__getLastResponse — Returns last SOAP response
    • SoapClient::__getLastResponseHeaders — Returns the SOAP headers from the last response
    • SoapClient::__getTypes — Returns a list of SOAP types
    • SoapClient::__setCookie — The __setCookie purpose
    • SoapClient::__setLocation — Sets the location of the Web service to use
    • SoapClient::__setSoapHeaders — Sets SOAP headers for subsequent calls
    • SoapClient::__soapCall — Calls a SOAP function
    • SoapClient::SoapClient — SoapClient constructor
  • SoapServer — The SoapServer class
    • SoapServer::addFunction — Adds one or more functions to handle SOAP requests
    • SoapServer::addSoapHeader — Add a SOAP header to the response
    • SoapServer::__construct — SoapServer constructor
    • SoapServer::fault — Issue SoapServer fault indicating an error
    • SoapServer::getFunctions — Returns list of defined functions
    • SoapServer::handle — Handles a SOAP request
    • SoapServer::setClass — Sets the class which handles SOAP requests
    • SoapServer::setObject — Sets the object which will be used to handle SOAP requests
    • SoapServer::setPersistence — Sets SoapServer persistence mode
    • SoapServer::SoapServer — SoapServer constructor
  • SoapFault — The SoapFault class
    • SoapFault::__construct — SoapFault constructor
    • SoapFault::SoapFault — SoapFault constructor
    • SoapFault::__toString — Obtain a string representation of a SoapFault
  • SoapHeader — The SoapHeader class
    • SoapHeader::__construct — SoapHeader constructor
    • SoapHeader::SoapHeader — SoapHeader constructor
  • SoapParam — The SoapParam class
    • SoapParam::__construct — SoapParam constructor
    • SoapParam::SoapParam — SoapParam constructor
  • SoapVar — The SoapVar class
    • SoapVar::__construct — SoapVar constructor
    • SoapVar::SoapVar — SoapVar constructor
SCA::getService
Introdução
Web Services


Introdução

The SOAP extension can be used to write SOAP Servers and Clients. It supports subsets of » SOAP 1.1, » SOAP 1.2 and » WSDL 1.1 specifications.

SOAP
Instalação/Configuração
SOAP


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SOAP


Dependências

This extension requires the libxml PHP extension. This means that passing in --enable-libxml is also required, although this is implicitly accomplished because libxml is enabled by default.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

To enable SOAP support, configure PHP with --enable-soap .

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

SOAP Opções de Configuração
Nome | Padrão | Modificável | Histórico
soap.wsdl_cache_enabled | 1 | PHP_INI_ALL |
soap.wsdl_cache_dir | /tmp | PHP_INI_ALL |
soap.wsdl_cache_ttl | 86400 | PHP_INI_ALL |
soap.wsdl_cache | 1 | PHP_INI_ALL |
soap.wsdl_cache_limit | 5 | PHP_INI_ALL |

Breve descrição das diretivas de configuração.

soap.wsdl_cache_enabled integer

Enables or disables the WSDL caching feature.

soap.wsdl_cache_dir string

Sets the directory name where the SOAP extension will put cache files.

soap.wsdl_cache_ttl integer

Sets the number of seconds (time to live) that cached files will be used instead of the originals.

soap.wsdl_cache integer

If soap.wsdl_cache_enabled is on, this setting determines the type of caching. It can be any of: WSDL_CACHE_NONE (0), WSDL_CACHE_DISK (1), WSDL_CACHE_MEMORY (2) or WSDL_CACHE_BOTH (3). This can also be set via the options array in the SoapClient or SoapServer constructor.

soap.wsdl_cache_limit integer

Maximum number of in-memory cached WSDL files. Adding further files into a full memory cache will delete the oldest files from it.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SOAP constants
Constant | Value | Description
SOAP_1_1 (integer) | 1 |
SOAP_1_2 (integer) | 2 |
SOAP_PERSISTENCE_SESSION (integer) | 1 |
SOAP_PERSISTENCE_REQUEST (integer) | 2 |
SOAP_FUNCTIONS_ALL (integer) | 999 |
SOAP_ENCODED (integer) | 1 |
SOAP_LITERAL (integer) | 2 |
SOAP_RPC (integer) | 1 |
SOAP_DOCUMENT (integer) | 2 |
SOAP_ACTOR_NEXT (integer) | 1 |
SOAP_ACTOR_NONE (integer) | 2 |
SOAP_ACTOR_UNLIMATERECEIVER (integer) | 3 |
SOAP_COMPRESSION_ACCEPT (integer) | 32 |
SOAP_COMPRESSION_GZIP (integer) | 0 |
SOAP_COMPRESSION_DEFLATE (integer) | 16 |
SOAP_AUTHENTICATION_BASIC (integer) | 0 |
SOAP_AUTHENTICATION_DIGEST (integer) | 1 |
UNKNOWN_TYPE (integer) | 999998 |
XSD_STRING (integer) | 101 |
XSD_BOOLEAN (integer) | 102 |
XSD_DECIMAL (integer) | 103 |
XSD_FLOAT (integer) | 104 |
XSD_DOUBLE (integer) | 105 |
XSD_DURATION (integer) | 106 |
XSD_DATETIME (integer) | 107 |
XSD_TIME (integer) | 108 |
XSD_DATE (integer) | 109 |
XSD_GYEARMONTH (integer) | 110 |
XSD_GYEAR (integer) | 111 |
XSD_GMONTHDAY (integer) | 112 |
XSD_GDAY (integer) | 113 |
XSD_GMONTH (integer) | 114 |
XSD_HEXBINARY (integer) | 115 |
XSD_BASE64BINARY (integer) | 116 |
XSD_ANYURI (integer) | 117 |
XSD_QNAME (integer) | 118 |
XSD_NOTATION (integer) | 119 |
XSD_NORMALIZEDSTRING (integer) | 120 |
XSD_TOKEN (integer) | 121 |
XSD_LANGUAGE (integer) | 122 |
XSD_NMTOKEN (integer) | 123 |
XSD_NAME (integer) | 124 |
XSD_NCNAME (integer) | 125 |
XSD_ID (integer) | 126 |
XSD_IDREF (integer) | 127 |
XSD_IDREFS (integer) | 128 |
XSD_ENTITY (integer) | 129 |
XSD_ENTITIES (integer) | 130 |
XSD_INTEGER (integer) | 131 |
XSD_NONPOSITIVEINTEGER (integer) | 132 |
XSD_NEGATIVEINTEGER (integer) | 133 |
XSD_LONG (integer) | 134 |
XSD_INT (integer) | 135 |
XSD_SHORT (integer) | 136 |
XSD_BYTE (integer) | 137 |
XSD_NONNEGATIVEINTEGER (integer) | 138 |
XSD_UNSIGNEDLONG (integer) | 139 |
XSD_UNSIGNEDINT (integer) | 140 |
XSD_UNSIGNEDSHORT (integer) | 141 |
XSD_UNSIGNEDBYTE (integer) | 142 |
XSD_POSITIVEINTEGER (integer) | 143 |
XSD_NMTOKENS (integer) | 144 |
XSD_ANYTYPE (integer) | 145 |
XSD_ANYXML (integer) | 147 |
APACHE_MAP (integer) | 200 |
SOAP_ENC_OBJECT (integer) | 301 |
SOAP_ENC_ARRAY (integer) | 300 |
XSD_1999_TIMEINSTANT (integer) | 401 |
XSD_NAMESPACE (integer) | http://www.w3.org/2001/XMLSchema |
XSD_1999_NAMESPACE (integer) | http://www.w3.org/1999/XMLSchema |
SOAP_SINGLE_ELEMENT_ARRAYS (integer) | 1 |
SOAP_WAIT_ONE_WAY_CALLS (integer) | 2 |
SOAP_USE_XSI_ARRAY_TYPE (integer) | 4 |
WSDL_CACHE_NONE (integer) | 0 |
WSDL_CACHE_DISK (integer) | 1 |
WSDL_CACHE_MEMORY (integer) | 2 |
WSDL_CACHE_BOTH (integer) | 3 |
Tipos Resource
SOAP Funções
SOAP


SOAP Funções

Índice

  • is_soap_fault — Checks if a SOAP call has failed
  • use_soap_error_handler — Set whether to use the SOAP error handler
Constantes pré-definidas
is_soap_fault
SOAP


Checks if a SOAP call has failed

SOAP Funções
use_soap_error_handler
SOAP Funções
PHP Manual

is_soap_fault

(Unknown)

is_soap_fault — Checks if a SOAP call has failed

Descrição

bool is_soap_fault ( mixed $object )

This function is useful to check if the SOAP call failed, but without using exceptions. To use it, create a SoapClient object with the exceptions option set to zero or FALSE. In this case, the SOAP method will return a special SoapFault object which encapsulates the fault details (faultcode, faultstring, faultactor and faultdetails).

If exceptions is not set then SOAP call will throw an exception on error. is_soap_fault() checks if the given parameter is a SoapFault object.

Parâmetros

object

The object to test.

Valor Retornado

This will return TRUE on error, and FALSE otherwise.

Exemplos

Exemplo #1 is_soap_fault() example

<?php
$client = new SoapClient("some.wsdl", array('exceptions' => 0));
$result = $client->SomeFunction();
if (is_soap_fault($result)) {
    trigger_error("SOAP Fault: (faultcode: {$result->faultcode}, faultstring: {$result->faultstring})", E_USER_ERROR);
}
?>

Exemplo #2 SOAP's standard method for error reporting is exceptions

<?php
try {
    $client = new SoapClient("some.wsdl");
    $result = $client->SomeFunction(/* ... */);
} catch (SoapFault $fault) {
    trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
}
?>

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor
  • SoapFault::SoapFault() - SoapFault constructor

SOAP Funções
use_soap_error_handler
SOAP Funções


Set whether to use the SOAP error handler

is_soap_fault
SoapClient
SOAP Funções
PHP Manual

use_soap_error_handler

(Unknown)

use_soap_error_handler — Set whether to use the SOAP error handler

Descrição

bool use_soap_error_handler ([ bool $handler = true ] )

This function sets whether or not to use the SOAP error handler in the SOAP server. It will return the previous value. If set to TRUE, details of errors in a SoapServer application will be sent to the clients. If FALSE, no information will be sent.

Parâmetros

handler

Set to TRUE to send error details to clients.

Valor Retornado

Returns the original value.

Veja Também

  • set_error_handler() - Define uma função do usuário para manipular erros
  • set_exception_handler() - Define uma função definida pelo usuário para tratamento de exceções

is_soap_fault
SoapClient
SOAP Funções


The SoapClient class

Introdução

The SoapClient class provides a client for » SOAP 1.1, » SOAP 1.2 servers. It can be used in WSDL or non-WSDL mode.

Sinopse da classe

SoapClient {
/* Methods */
public mixed __call ( string $function_name , string $arguments )
SoapClient ( mixed $wsdl [, array $options ] )
public string __doRequest ( string $request , string $location , string $action , int $version [, int $one_way = 0 ] )
public array __getFunctions ( void )
public string __getLastRequest ( void )
public string __getLastRequestHeaders ( void )
public string __getLastResponse ( void )
public string __getLastResponseHeaders ( void )
public array __getTypes ( void )
public void __setCookie ( string $name [, string $value ] )
public string __setLocation ([ string $new_location ] )
public bool __setSoapHeaders ([ mixed $soapheaders ] )
public mixed __soapCall ( string $function_name , array $arguments [, array $options [, mixed $input_headers [, array &$output_headers ]]] )
SoapClient ( mixed $wsdl [, array $options ] )
}

Índice

  • SoapClient::__call — Calls a SOAP function (deprecated)
  • SoapClient::__construct — SoapClient constructor
  • SoapClient::__doRequest — Performs a SOAP request
  • SoapClient::__getFunctions — Returns list of available SOAP functions
  • SoapClient::__getLastRequest — Returns last SOAP request
  • SoapClient::__getLastRequestHeaders — Returns the SOAP headers from the last request
  • SoapClient::__getLastResponse — Returns last SOAP response
  • SoapClient::__getLastResponseHeaders — Returns the SOAP headers from the last response
  • SoapClient::__getTypes — Returns a list of SOAP types
  • SoapClient::__setCookie — The __setCookie purpose
  • SoapClient::__setLocation — Sets the location of the Web service to use
  • SoapClient::__setSoapHeaders — Sets SOAP headers for subsequent calls
  • SoapClient::__soapCall — Calls a SOAP function
  • SoapClient::SoapClient — SoapClient constructor
use_soap_error_handler
SoapClient::__call
SOAP


Calls a SOAP function (deprecated)

SoapClient
SoapClient::__construct
SoapClient
PHP Manual

SoapClient::__call

(PHP 5 >= 5.0.1)

SoapClient::__call — Calls a SOAP function (deprecated)

Descrição

public mixed SoapClient::__call ( string $function_name , string $arguments )

This method is deprecated. Use SoapClient::__soapCall instead of it.

SoapClient
SoapClient::__construct
SoapClient


SoapClient constructor

SoapClient::__call
SoapClient::__doRequest
SoapClient
PHP Manual

SoapClient::__construct

(PHP 5 >= 5.0.1)

SoapClient::__construct — SoapClient constructor

Descrição

SoapClient::SoapClient ( mixed $wsdl [, array $options ] )

Esta função é um apelido para: SoapClient::SoapClient()

SoapClient::__call
SoapClient::__doRequest
SoapClient


Performs a SOAP request

SoapClient::__construct
SoapClient::__getFunctions
SoapClient
PHP Manual

SoapClient::__doRequest

(PHP 5 >= 5.0.1)

SoapClient::__doRequest — Performs a SOAP request

Descrição

public string SoapClient::__doRequest ( string $request , string $location , string $action , int $version [, int $one_way = 0 ] )

Performs SOAP request over HTTP.

This method can be overridden in subclasses to implement different transport layers, perform additional XML processing or other purpose.

Parâmetros

request

The XML SOAP request.

location

The URL to request.

action

The SOAP action.

version

The SOAP version.

one_way

If one_way is set to 1, this method returns nothing. Use this where a response is not expected.

Valor Retornado

The XML SOAP response.

Histórico

Versão | Descrição
5.1.3 | The one_way parameter was added.

Exemplos

Exemplo #1 SoapClient::__doRequest() example

<?php
function Add($x,$y) {
  return $x+$y;
}

class LocalSoapClient extends SoapClient {

  function __construct($wsdl, $options) {
    parent::__construct($wsdl, $options);
    $this->server = new SoapServer($wsdl, $options);
    $this->server->addFunction('Add');
  }

  function __doRequest($request, $location, $action, $version) {
    ob_start();
    $this->server->handle($request);
    $response = ob_get_contents();
    ob_end_clean();
    return $response;
  }

}

$x = new LocalSoapClient(NULL,array('location'=>'test://',
                                   'uri'=>'http://testuri.org'));
var_dump($x->Add(3,4));
?>

SoapClient::__construct
SoapClient::__getFunctions
SoapClient


Returns list of available SOAP functions

SoapClient::__doRequest
SoapClient::__getLastRequest
SoapClient
PHP Manual

SoapClient::__getFunctions

(PHP 5 >= 5.0.1)

SoapClient::__getFunctions — Returns list of available SOAP functions

Descrição

public array SoapClient::__getFunctions ( void )

Returns an array of functions described in the WSDL for the Web service.

Nota:

Esta função funciona apenas no modo WSDL.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The array of SOAP function prototypes, detailing the return type, the function name and type-hinted paramaters.

Exemplos

Exemplo #1 SoapClient::__getFunctions() example

<?php
$client = new SoapClient('http://soap.amazon.com/schemas3/AmazonWebServices.wsdl');
var_dump($client->__getFunctions());
?>

O exemplo acima irá imprimir:

array(26) {
  [0]=>
  string(70) "ProductInfo KeywordSearchRequest(KeywordRequest $KeywordSearchRequest)"
  [1]=>
  string(79) "ProductInfo TextStreamSearchRequest(TextStreamRequest $TextStreamSearchRequest)"
  [2]=>
  string(64) "ProductInfo PowerSearchRequest(PowerRequest $PowerSearchRequest)"
...
  [23]=>
  string(107) "ShoppingCart RemoveShoppingCartItemsRequest(RemoveShoppingCartItemsRequest $RemoveShoppingCartItemsRequest)"
  [24]=>
  string(107) "ShoppingCart ModifyShoppingCartItemsRequest(ModifyShoppingCartItemsRequest $ModifyShoppingCartItemsRequest)"
  [25]=>
  string(118) "GetTransactionDetailsResponse GetTransactionDetailsRequest(GetTransactionDetailsRequest $GetTransactionDetailsRequest)"
}

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor

SoapClient::__doRequest
SoapClient::__getLastRequest
SoapClient


Returns last SOAP request

SoapClient::__getFunctions
SoapClient::__getLastRequestHeaders
SoapClient
PHP Manual

SoapClient::__getLastRequest

(PHP 5 >= 5.0.1)

SoapClient::__getLastRequest — Returns last SOAP request

Descrição

public string SoapClient::__getLastRequest ( void )

Returns the XML sent in the last SOAP request.

Nota:

This method works only if the SoapClient object was created with the trace option set to TRUE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The last SOAP request, as an XML string.

Exemplos

Exemplo #1 SoapClient->__getLastRequest() example

<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "REQUEST:\n" . $client->__getLastRequest() . "\n";
?>

Veja Também

  • SoapClient::__getLastRequestHeaders() - Returns the SOAP headers from the last request
  • SoapClient::__getLastResponse() - Returns last SOAP response
  • SoapClient::__getLastResponseHeaders() - Returns the SOAP headers from the last response

SoapClient::__getFunctions
SoapClient::__getLastRequestHeaders
SoapClient


Returns the SOAP headers from the last request

SoapClient::__getLastRequest
SoapClient::__getLastResponse
SoapClient
PHP Manual

SoapClient::__getLastRequestHeaders

(PHP 5 >= 5.0.1)

SoapClient::__getLastRequestHeaders — Returns the SOAP headers from the last request

Descrição

public string SoapClient::__getLastRequestHeaders ( void )

Returns the SOAP headers from the last request.

Nota:

This function only works if the SoapClient object was created with the trace option set to TRUE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The last SOAP request headers.

Exemplos

Exemplo #1 SoapClient->__getLastRequest() example

<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "REQUEST HEADERS:\n" . $client->__getLastRequestHeaders() . "\n";
?>

Veja Também

  • SoapClient::__getLastResponseHeaders() - Returns the SOAP headers from the last response
  • SoapClient::__getLastRequest() - Returns last SOAP request
  • SoapClient::__getLastResponse() - Returns last SOAP response

SoapClient::__getLastRequest
SoapClient::__getLastResponse
SoapClient


Returns last SOAP response

SoapClient::__getLastRequestHeaders
SoapClient::__getLastResponseHeaders
SoapClient
PHP Manual

SoapClient::__getLastResponse

(PHP 5 >= 5.0.1)

SoapClient::__getLastResponse — Returns last SOAP response

Descrição

public string SoapClient::__getLastResponse ( void )

Returns the XML received in the last SOAP response.

Nota:

This method works only if the SoapClient object was created with the trace option set to TRUE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The last SOAP response, as an XML string.

Exemplos

Exemplo #1 SoapClient->__getLastResponse() example

<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "Response:\n" . $client->__getLastResponse() . "\n";
?>

Veja Também

  • SoapClient::__getLastResponseHeaders() - Returns the SOAP headers from the last response
  • SoapClient::__getLastRequest() - Returns last SOAP request
  • SoapClient::__getLastRequestHeaders() - Returns the SOAP headers from the last request

SoapClient::__getLastRequestHeaders
SoapClient::__getLastResponseHeaders
SoapClient


Returns the SOAP headers from the last response

SoapClient::__getLastResponse
SoapClient::__getTypes
SoapClient
PHP Manual

SoapClient::__getLastResponseHeaders

(PHP 5 >= 5.0.1)

SoapClient::__getLastResponseHeaders — Returns the SOAP headers from the last response

Descrição

public string SoapClient::__getLastResponseHeaders ( void )

Returns the SOAP headers from the last response.

Nota:

This function only works if the SoapClient object was created with the trace option set to TRUE.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The last SOAP response headers.

Exemplos

Exemplo #1 SoapClient->__getLastResponse() example

<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "RESPONSE HEADERS:\n" . $client->__getLastResponseHeaders() . "\n";
?>

Veja Também

  • SoapClient::__getLastRequestHeaders() - Returns the SOAP headers from the last request
  • SoapClient::__getLastRequest() - Returns last SOAP request
  • SoapClient::__getLastResponse() - Returns last SOAP response

SoapClient::__getLastResponse
SoapClient::__getTypes
SoapClient


Returns a list of SOAP types

SoapClient::__getLastResponseHeaders
SoapClient::__setCookie
SoapClient
PHP Manual

SoapClient::__getTypes

(PHP 5 >= 5.0.1)

SoapClient::__getTypes — Returns a list of SOAP types

Descrição

public array SoapClient::__getTypes ( void )

Returns an array of types described in the WSDL for the Web service.

Nota:

Esta função funciona apenas no modo WSDL.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

The array of SOAP types, detailing all structures and types.

Exemplos

Exemplo #1 SoapClient::__getTypes() example

<?php
$client = new SoapClient('http://soap.amazon.com/schemas3/AmazonWebServices.wsdl');
var_dump($client->__getTypes());
?>

O exemplo acima irá imprimir:

array(88) {
  [0]=>
  string(30) "ProductLine ProductLineArray[]"
  [1]=>
  string(85) "struct ProductLine {
 string Mode;
 string RelevanceRank;
 ProductInfo ProductInfo;
}"
  [2]=>
  string(105) "struct ProductInfo {
 string TotalResults;
 string TotalPages;
 string ListName;
 DetailsArray Details;
}"
...
  [85]=>
  string(32) "ShortSummary ShortSummaryArray[]"
  [86]=>
  string(121) "struct GetTransactionDetailsRequest {
 string tag;
 string devtag;
 string key;
 OrderIdArray OrderIds;
 string locale;
}"
  [87]=>
  string(75) "struct GetTransactionDetailsResponse {
 ShortSummaryArray ShortSummaries;
}"
}

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor

SoapClient::__getLastResponseHeaders
SoapClient::__setCookie
SoapClient


The __setCookie purpose

SoapClient::__getTypes
SoapClient::__setLocation
SoapClient
PHP Manual

SoapClient::__setCookie

(PHP 5 >= 5.0.4)

SoapClient::__setCookie — The __setCookie purpose

Descrição

public void SoapClient::__setCookie ( string $name [, string $value ] )

Defines a cookie to be sent along with the SOAP requests.

Nota:

Calling this method will affect all following calls to SoapClient methods.

Parâmetros

name

The name of the cookie.

value

The value of the cookie. If not specified, the cookie will be deleted.

Valor Retornado

Não há valor retornado.

SoapClient::__getTypes
SoapClient::__setLocation
SoapClient


Sets the location of the Web service to use

SoapClient::__setCookie
SoapClient::__setSoapHeaders
SoapClient
PHP Manual

SoapClient::__setLocation

(PHP 5 >= 5.0.1)

SoapClient::__setLocation — Sets the location of the Web service to use

Descrição

public string SoapClient::__setLocation ([ string $new_location ] )

Sets the endpoint URL that will be touched by following SOAP requests. This is equivalent to specifying the location option when constructing the SoapClient.

Nota:

Calling this method is optional. The SoapClient uses the endpoint from the WSDL file by default.

Parâmetros

new_location

The new endpoint URL.

Valor Retornado

The old endpoint URL.

Exemplos

Exemplo #1 SoapClient::__setLocation() example

<?php
$client = new SoapClient('http://example.com/webservice.php?wsdl');

$client->__setLocation('http://www.somethirdparty.com');

$old_location = $client->__setLocation(); // unsets the location option

echo $old_location;

?>

O exemplo acima irá imprimir algo similar a:

http://www.somethirdparty.com

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor

SoapClient::__setCookie
SoapClient::__setSoapHeaders
SoapClient


Sets SOAP headers for subsequent calls

SoapClient::__setLocation
SoapClient::__soapCall
SoapClient
PHP Manual

SoapClient::__setSoapHeaders

(PHP 5 >= 5.0.5)

SoapClient::__setSoapHeaders — Sets SOAP headers for subsequent calls

Descrição

public bool SoapClient::__setSoapHeaders ([ mixed $soapheaders ] )

Defines headers to be sent along with the SOAP requests.

Nota:

Calling this method will replace any previous values.

Parâmetros

soapheaders

The headers to be set. It could be SoapHeader object or array of SoapHeader objects. If not specified or set to NULL, the headers will be deleted.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 SoapClient::__setSoapHeaders() example

<?php

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));
$header = new SoapHeader('http://soapinterop.org/echoheader/',
                            'echoMeStringRequest',
                            'hello world');

$client->__setSoapHeaders($header);

$client->__soapCall("echoVoid", null);
?>

Exemplo #2 Set Multiple Headers

<?php

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));
$headers = array();

$headers[] = new SoapHeader('http://soapinterop.org/echoheader/',
                            'echoMeStringRequest',
                            'hello world');

$headers[] = new SoapHeader('http://soapinterop.org/echoheader/',
                            'echoMeStringRequest',
                            'hello world again');

$client->__setSoapHeaders($headers);

$client->__soapCall("echoVoid", null);
?>

SoapClient::__setLocation
SoapClient::__soapCall
SoapClient


Calls a SOAP function

SoapClient::__setSoapHeaders
SoapClient::SoapClient
SoapClient
PHP Manual

SoapClient::__soapCall

(PHP 5 >= 5.0.1)

SoapClient::__soapCall — Calls a SOAP function

Descrição

public mixed SoapClient::__soapCall ( string $function_name , array $arguments [, array $options [, mixed $input_headers [, array &$output_headers ]]] )

This is a low level API function that is used to make a SOAP call. Usually, in WSDL mode, SOAP functions can be called as methods of the SoapClient object. This method is useful in non-WSDL mode when soapaction is unknown, uri differs from the default or when sending and/or receiving SOAP Headers.

On error, a call to a SOAP function can cause PHP to throw exceptions or return a SoapFault object if exceptions are disabled. To check if the function call failed to catch the SoapFault exceptions, check the result with is_soap_fault().

Parâmetros

function_name

The name of the SOAP function to call.

arguments

An array of the arguments to pass to the function. This can be either an ordered or an associative array.

options

An associative array of options to pass to the client.

The location option is the URL of the remote Web service.

The uri option is the target namespace of the SOAP service.

The soapaction option is the action to call.

input_headers

An array of headers to be sent along with the SOAP request.

output_headers

If supplied, this array will be filled with the headers from the SOAP response.

Valor Retornado

SOAP functions may return one, or multiple values. If only one value is returned by the SOAP function, the return value of __soapCall will be a simple value (e.g. an integer, a string, etc). If multiple values are returned, __soapCall will return an associative array of named output parameters.

On error, if the SoapClient object was constructed with the trace option set to FALSE, a SoapFault object will be returned.

Exemplos

Exemplo #1 SoapClient::__soapCall() example

<?php

$client = new SoapClient("some.wsdl");
$client->SomeFunction($a, $b, $c);

$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c), NULL,
                    new SoapHeader(), $output_headers);

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));
$client->SomeFunction($a, $b, $c);
$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c),
                    array('soapaction' => 'some_action',
                          'uri'        => 'some_uri'));
?>

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor
  • SoapParam::SoapParam() - SoapParam constructor
  • SoapVar::SoapVar() - SoapVar constructor
  • SoapHeader::SoapHeader() - SoapHeader constructor
  • SoapFault::SoapFault() - SoapFault constructor
  • is_soap_fault() - Checks if a SOAP call has failed

SoapClient::__setSoapHeaders
SoapClient::SoapClient
SoapClient


SoapClient constructor

SoapClient::__soapCall
SoapServer
SoapClient
PHP Manual

SoapClient::SoapClient

(PHP 5 >= 5.0.1)

SoapClient::SoapClient — SoapClient constructor

Descrição

SoapClient::SoapClient ( mixed $wsdl [, array $options ] )

This constructor creates SoapClient objects in WSDL or non-WSDL mode.

Parâmetros

wsdl

URI of the WSDL file or NULL if working in non-WSDL mode.

Nota:

During development, WSDL caching may be disabled by the use of the soap.wsdl_cache_ttl php.ini setting otherwise changes made to the WSDL file will have no effect until soap.wsdl_cache_ttl is expired.

options

An array of options. If working in WSDL mode, this parameter is optional. If working in non-WSDL mode, the location and uri options must be set, where location is the URL to request and uri is the target namespace of the SOAP service.

The style and use options only work in non-WSDL mode. In WSDL mode, they come from the WSDL file.

The soap_version option specifies whether to use SOAP 1.1 (default), or SOAP 1.2 client.

For HTTP authentication, the login and password options can be used to supply credentials. For making an HTTP connection through a proxy server, the options proxy_host, proxy_port, proxy_login and proxy_password are also available. For HTTPS client certificate authentication use local_cert and passphrase options. An authentication may be supplied in the authentication option. The authentication method may be either SOAP_AUTHENTICATION_BASIC (default) or SOAP_AUTHENTICATION_DIGEST.

The compression option allows to use compression of HTTP SOAP requests and responses.

The encoding option defines internal character encoding. This option does not change the encoding of SOAP requests (it is always utf-8), but converts strings into it.

The trace option enables tracing of request so faults can be backtraced. This defaults to FALSE

The classmap option can be used to map some WSDL types to PHP classes. This option must be an array with WSDL types as keys and names of PHP classes as values.

Setting the boolean trace option enables use of the
methods
SoapClient->__getLastRequest,

SoapClient->__getLastRequestHeaders,

SoapClient->__getLastResponse and

SoapClient->__getLastResponseHeaders.

The exceptions option is a boolean value defining whether soap errors throw exceptions of type SoapFault.

The connection_timeout option defines a timeout in seconds for the connection to the SOAP service. This option does not define a timeout for services with slow responses. To limit the time to wait for calls to finish the default_socket_timeout setting is available.

The typemap option is an array of type mappings. Type mapping is an array with keys type_name, type_ns (namespace URI), from_xml (callback accepting one string parameter) and to_xml (callback accepting one object parameter).

The cache_wsdl option is one of WSDL_CACHE_NONE, WSDL_CACHE_DISK, WSDL_CACHE_MEMORY or WSDL_CACHE_BOTH.

The user_agent option specifies string to use in User-Agent header.

The stream_context option is a resource for context.

The features option is a bitmask of SOAP_SINGLE_ELEMENT_ARRAYS, SOAP_USE_XSI_ARRAY_TYPE, SOAP_WAIT_ONE_WAY_CALLS.

Exemplos

Exemplo #1 SoapClient::SoapClient() example

<?php

$client = new SoapClient("some.wsdl");

$client = new SoapClient("some.wsdl", array('soap_version'   => SOAP_1_2));

$client = new SoapClient("some.wsdl", array('login'          => "some_name",
                                            'password'       => "some_password"));

$client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",
                                            'proxy_port'     => 8080));

$client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",
                                            'proxy_port'     => 8080,
                                            'proxy_login'    => "some_name",
                                            'proxy_password' => "some_password"));

$client = new SoapClient("some.wsdl", array('local_cert'     => "cert_key.pem"));

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/",
                                     'style'    => SOAP_DOCUMENT,
                                     'use'      => SOAP_LITERAL));

$client = new SoapClient("some.wsdl",
  array('compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP));

$server = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1'));

class MyBook {
    public $title;
    public $author;
}

$server = new SoapClient("books.wsdl", array('classmap' => array('book' => "MyBook")));

?>

SoapClient::__soapCall
SoapServer
SoapClient


The SoapServer class

Introdução

The SoapServer class provides a server for the » SOAP 1.1 and » SOAP 1.2 protocols. It can be used with or without a WSDL service description.

Sinopse da classe

SoapServer {
/* Methods */
public void addFunction ( mixed $functions )
public void addSoapHeader ( SoapHeader $object )
__construct ( mixed $wsdl [, array $options ] )
public void fault ( string $code , string $string [, string $actor [, string $details [, string $name ]]] )
public array getFunctions ( void )
public void handle ([ string $soap_request ] )
public void setClass ( string $class_name [, string $args ] )
public void setObject ( string $object )
public void setPersistence ( int $mode )
SoapServer ( mixed $wsdl [, array $options ] )
}

Índice

  • SoapServer::addFunction — Adds one or more functions to handle SOAP requests
  • SoapServer::addSoapHeader — Add a SOAP header to the response
  • SoapServer::__construct — SoapServer constructor
  • SoapServer::fault — Issue SoapServer fault indicating an error
  • SoapServer::getFunctions — Returns list of defined functions
  • SoapServer::handle — Handles a SOAP request
  • SoapServer::setClass — Sets the class which handles SOAP requests
  • SoapServer::setObject — Sets the object which will be used to handle SOAP requests
  • SoapServer::setPersistence — Sets SoapServer persistence mode
  • SoapServer::SoapServer — SoapServer constructor
SoapClient::SoapClient
SoapServer::addFunction
SOAP


Adds one or more functions to handle SOAP requests

SoapServer
SoapServer::addSoapHeader
SoapServer
PHP Manual

SoapServer::addFunction

(PHP 5 >= 5.0.1)

SoapServer::addFunction — Adds one or more functions to handle SOAP requests

Descrição

public void SoapServer::addFunction ( mixed $functions )

Exports one or more functions for remote clients

Parâmetros

functions

To export one function, pass the function name into this parameter as a string.

To export several functions, pass an array of function names.

To export all the functions, pass a special constant SOAP_FUNCTIONS_ALL.

Nota:

functions must receive all input arguments in the same order as defined in the WSDL file (They should not receive any output parameters as arguments) and return one or more values. To return several values they must return an array with named output parameters.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SoapServer::addFunction() example

<?php

function echoString($inputString)
{
    return $inputString;
}

$server->addFunction("echoString");

function echoTwoStrings($inputString1, $inputString2)
{
    return array("outputString1" => $inputString1,
                 "outputString2" => $inputString2);
}
$server->addFunction(array("echoString", "echoTwoStrings"));

$server->addFunction(SOAP_FUNCTIONS_ALL);

?>

Veja Também

  • SoapServer::SoapServer() - SoapServer constructor
  • SoapServer::setClass() - Sets the class which handles SOAP requests

SoapServer
SoapServer::addSoapHeader
SoapServer


Add a SOAP header to the response

SoapServer::addFunction
SoapServer::__construct
SoapServer
PHP Manual

SoapServer::addSoapHeader

(PHP 5 >= 5.0.1)

SoapServer::addSoapHeader — Add a SOAP header to the response

Descrição

public void SoapServer::addSoapHeader ( SoapHeader $object )

Adds a SOAP header to be returned with the response to the current request.

Parâmetros

object

The header to be returned.

Valor Retornado

Não há valor retornado.

SoapServer::addFunction
SoapServer::__construct
SoapServer


SoapServer constructor

SoapServer::addSoapHeader
SoapServer::fault
SoapServer
PHP Manual

SoapServer::__construct

(PHP 5 >= 5.0.1)

SoapServer::__construct — SoapServer constructor

Descrição

SoapServer::__construct ( mixed $wsdl [, array $options ] )

Esta função é um apelido para: SoapServer::SoapServer()

SoapServer::addSoapHeader
SoapServer::fault
SoapServer


Issue SoapServer fault indicating an error

SoapServer::__construct
SoapServer::getFunctions
SoapServer
PHP Manual

SoapServer::fault

(PHP 5 >= 5.0.1)

SoapServer::fault — Issue SoapServer fault indicating an error

Descrição

public void SoapServer::fault ( string $code , string $string [, string $actor [, string $details [, string $name ]]] )

Sends a response to the client of the current request indicating an error.

Nota:

This can only be called when handling a request.

Parâmetros

code

The error code to return

string

A brief description of the error

actor

A string identifying the actor that caused the fault.

details

More details of the fault

name

The name of the fault. This can be used to select a name from a WSDL file.

Valor Retornado

Não há valor retornado.

Veja Também

  • SoapFault::SoapFault() - SoapFault constructor

SoapServer::__construct
SoapServer::getFunctions
SoapServer


Returns list of defined functions

SoapServer::fault
SoapServer::handle
SoapServer
PHP Manual

SoapServer::getFunctions

(PHP 5 >= 5.0.1)

SoapServer::getFunctions — Returns list of defined functions

Descrição

public array SoapServer::getFunctions ( void )

Returns a list of the defined functions in the SoapServer object. This method returns the list of all functions added by SoapServer::addFunction() or SoapServer::setClass().

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

An array of the defined functions.

Exemplos

Exemplo #1 SoapServer::getFunctions() example

<?php
$server = new SoapServer(NULL, array("uri" => "http://test-uri"));
$server->addFunction(SOAP_FUNCTIONS_ALL);
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $server->handle();
} else {
  echo "This SOAP server can handle following functions: ";
  $functions = $server->getFunctions();
  foreach($functions as $func) {
    echo $func . "\n";
  }
}
?>

Veja Também

  • SoapServer::SoapServer() - SoapServer constructor
  • SoapServer::addFunction() - Adds one or more functions to handle SOAP requests
  • SoapServer::setClass() - Sets the class which handles SOAP requests

SoapServer::fault
SoapServer::handle
SoapServer


Handles a SOAP request

SoapServer::getFunctions
SoapServer::setClass
SoapServer
PHP Manual

SoapServer::handle

(PHP 5 >= 5.0.1)

SoapServer::handle — Handles a SOAP request

Descrição

public void SoapServer::handle ([ string $soap_request ] )

Processes a SOAP request, calls necessary functions, and sends a response back.

Parâmetros

soap_request

The SOAP request. If this argument is omitted, the request is assumed to be in the raw POST data of the HTTP request.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 SoapServer::handle() example

<?php
function test($x)
{
    return $x;
}

$server = new SoapServer(null, array('uri' => "http://test-uri/"));
$server->addFunction("test");
$server->handle();
?>

Veja Também

  • SoapServer::SoapServer() - SoapServer constructor

SoapServer::getFunctions
SoapServer::setClass
SoapServer


Sets the class which handles SOAP requests

SoapServer::handle
SoapServer::setObject
SoapServer
PHP Manual

SoapServer::setClass

(PHP 5 >= 5.0.1)

SoapServer::setClass — Sets the class which handles SOAP requests

Descrição

public void SoapServer::setClass ( string $class_name [, string $args ] )

Exports all methods from specified class.

The object can be made persistent across request for a given PHP session with the SoapServer::setPersistence() method.

Parâmetros

class_name

The name of the exported class.

args

These optional parameters will be passed to the default class constructor during object creation.

Valor Retornado

Não há valor retornado.

Veja Também

  • SoapServer::SoapServer() - SoapServer constructor
  • SoapServer::addFunction() - Adds one or more functions to handle SOAP requests
  • SoapServer::setPersistence() - Sets SoapServer persistence mode

SoapServer::handle
SoapServer::setObject
SoapServer


Sets the object which will be used to handle SOAP requests

SoapServer::setClass
SoapServer::setPersistence
SoapServer
PHP Manual

SoapServer::setObject

(PHP 5 >= 5.2.0)

SoapServer::setObject — Sets the object which will be used to handle SOAP requests

Descrição

public void SoapServer::setObject ( string $object )

This sets a specific object as the handler for SOAP requests, rather than just a class as in SoapServer::setClass().

Parâmetros

object

The object to handle the requests.

Valor Retornado

Não há valor retornado.

Veja Também

  • SoapServer::setClass() - Sets the class which handles SOAP requests

SoapServer::setClass
SoapServer::setPersistence
SoapServer


Sets SoapServer persistence mode

SoapServer::setObject
SoapServer::SoapServer
SoapServer
PHP Manual

SoapServer::setPersistence

(PHP 5 >= 5.1.2)

SoapServer::setPersistence — Sets SoapServer persistence mode

Descrição

public void SoapServer::setPersistence ( int $mode )

This function allows saving data between requests in a PHP session. It works only with a server that exports functions from a class with SoapServer::setClass() or SoapServer::setObject().

Nota:

The persistence SOAP_PERSISTENCE_SESSION makes only objects of the given class persistent, but not the class static data. In this case, use $this->bar instead of self::$bar.

Parâmetros

mode

One of the SOAP_PERSISTENCE_XXX constants.

SOAP_PERSISTENCE_REQUEST - persist the object for the duration of a request.

SOAP_PERSISTENCE_SESSION - persist the object for the duration of a session.

Valor Retornado

Não há valor retornado.

Veja Também

  • SoapServer::setClass() - Sets the class which handles SOAP requests
  • SoapServer::setObject() - Sets the object which will be used to handle SOAP requests

SoapServer::setObject
SoapServer::SoapServer
SoapServer


SoapServer constructor

SoapServer::setPersistence
SoapFault
SoapServer
PHP Manual

SoapServer::SoapServer

(PHP 5 >= 5.0.1)

SoapServer::SoapServer — SoapServer constructor

Descrição

SoapServer::SoapServer ( mixed $wsdl [, array $options ] )

This constructor allows the creation of SoapServer objects in WSDL or non-WSDL mode.

Parâmetros

wsdl

To use the SoapServer in WSDL mode, pass the URI of a WSDL file. Otherwise, pass NULL and set the uri option to the target namespace for the server.

options

Allow setting a default SOAP version (soap_version), internal character encoding (encoding), and actor URI (actor).

The classmap option can be used to map some WSDL types to PHP classes. This option must be an array with WSDL types as keys and names of PHP classes as values.

The typemap option is an array of type mappings. Type mapping is an array with keys type_name, type_ns (namespace URI), from_xml (callback accepting one string parameter) and to_xml (callback accepting one object parameter).

The cache_wsdl option is one of WSDL_CACHE_NONE, WSDL_CACHE_DISK, WSDL_CACHE_MEMORY or WSDL_CACHE_BOTH.

There is also a features option which can be set to SOAP_WAIT_ONE_WAY_CALLS, SOAP_SINGLE_ELEMENT_ARRAYS, SOAP_USE_XSI_ARRAY_TYPE.

Exemplos

Exemplo #1 SoapServer::SoapServer() example

<?php

$server = new SoapServer("some.wsdl");

$server = new SoapServer("some.wsdl", array('soap_version' => SOAP_1_2));

$server = new SoapServer("some.wsdl", array('actor' => "http://example.org/ts-tests/C"));

$server = new SoapServer("some.wsdl", array('encoding'=>'ISO-8859-1'));

$server = new SoapServer(null, array('uri' => "http://test-uri/"));

class MyBook {
    public $title;
    public $author;
}

$server = new SoapServer("books.wsdl", array('classmap' => array('book' => "MyBook")));

?>

Histórico

Versão | Descrição
5.2.0 | Added the typemap option.

Veja Também

  • SoapClient::SoapClient() - SoapClient constructor

SoapServer::setPersistence
SoapFault
SoapServer


The SoapFault class

Introdução

Represents a SOAP fault.

Sinopse da classe

SoapFault extends Exception {
/* Properties */
/* Methods */
__construct ( string $faultcode , string $faultstring [, string $faultactor [, string $detail [, string $faultname [, string $headerfault ]]]] )
SoapFault ( string $faultcode , string $faultstring [, string $faultactor [, string $detail [, string $faultname [, string $headerfault ]]]] )
public string __toString ( void )
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

message

Prop description

code

Prop description

file

Prop description

line

Prop description

Índice

  • SoapFault::__construct — SoapFault constructor
  • SoapFault::SoapFault — SoapFault constructor
  • SoapFault::__toString — Obtain a string representation of a SoapFault
SoapServer::SoapServer
SoapFault::__construct
SOAP


SoapFault constructor

SoapFault
SoapFault::SoapFault
SoapFault
PHP Manual

SoapFault::__construct

(PHP 5 >= 5.0.1)

SoapFault::__construct — SoapFault constructor

Descrição

SoapFault::__construct ( string $faultcode , string $faultstring [, string $faultactor [, string $detail [, string $faultname [, string $headerfault ]]]] )

Esta função é um apelido para: SoapFault::SoapFault()

SoapFault
SoapFault::SoapFault
SoapFault


SoapFault constructor

SoapFault::__construct
SoapFault::__toString
SoapFault
PHP Manual

SoapFault::SoapFault

(PHP 5 >= 5.0.1)

SoapFault::SoapFault — SoapFault constructor

Descrição

SoapFault::SoapFault ( string $faultcode , string $faultstring [, string $faultactor [, string $detail [, string $faultname [, string $headerfault ]]]] )

This class is used to send SOAP fault responses from the PHP handler. faultcode, faultstring, faultactor and detail are standard elements of a SOAP Fault.

Parâmetros

faultcode

The error code of the SoapFault.

faultstring

The error message of the SoapFault.

faultactor

A string identifying the actor that caused the error.

detail

More details about the cause of the error.

faultname

Can be used to select the proper fault encoding from WSDL.

headerfault

Can be used during SOAP header handling to report an error in the response header.

Exemplos

Exemplo #1 Some examples

<?php
function test($x)
{
    return new SoapFault("Server", "Some error message");
}

$server = new SoapServer(null, array('uri' => "http://test-uri/"));
$server->addFunction("test");
$server->handle();
?>

It is possible to use PHP exception mechanism to throw SOAP Fault.

Exemplo #2 Some examples

<?php
function test($x)
{
    throw new SoapFault("Server", "Some error message");
}

$server = new SoapServer(null, array('uri' => "http://test-uri/"));
$server->addFunction("test");
$server->handle();
?>

Veja Também

  • SoapServer::fault() - Issue SoapServer fault indicating an error
  • is_soap_fault() - Checks if a SOAP call has failed

SoapFault::__construct
SoapFault::__toString
SoapFault


Obtain a string representation of a SoapFault

SoapFault::SoapFault
SoapHeader
SoapFault
PHP Manual

SoapFault::__toString

(PHP 5 >= 5.0.1)

SoapFault::__toString — Obtain a string representation of a SoapFault

Descrição

public string SoapFault::__toString ( void )

Returns a string representation of the SoapFault.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

A string describing the SoapFault.

SoapFault::SoapFault
SoapHeader
SoapFault


The SoapHeader class

Introdução

Represents a SOAP header.

Sinopse da classe

SoapHeader {
/* Methods */
__construct ( string $namespace , string $name [, mixed $data [, bool $mustunderstand [, string $actor ]]] )
SoapHeader ( string $namespace , string $name [, mixed $data [, bool $mustunderstand = false [, string $actor ]]] )
}

Índice

  • SoapHeader::__construct — SoapHeader constructor
  • SoapHeader::SoapHeader — SoapHeader constructor
SoapFault::__toString
SoapHeader::__construct
SOAP


SoapHeader constructor

SoapHeader
SoapHeader::SoapHeader
SoapHeader
PHP Manual

SoapHeader::__construct

(PHP 5 >= 5.0.1)

SoapHeader::__construct — SoapHeader constructor

Descrição

SoapHeader::__construct ( string $namespace , string $name [, mixed $data [, bool $mustunderstand [, string $actor ]]] )

Esta função é um apelido para: SoapHeader::SoapHeader()

SoapHeader
SoapHeader::SoapHeader
SoapHeader


SoapHeader constructor

SoapHeader::__construct
SoapParam
SoapHeader
PHP Manual

SoapHeader::SoapHeader

(PHP 5 >= 5.0.1)

SoapHeader::SoapHeader — SoapHeader constructor

Descrição

SoapHeader::SoapHeader ( string $namespace , string $name [, mixed $data [, bool $mustunderstand = false [, string $actor ]]] )

Constructs a new SoapHeader object.

Parâmetros

namespace

The namespace of the SOAP header element.

name

The name of the SoapHeader object.

data

A SOAP header's content. It can be a PHP value or a SoapVar object.

mustUnderstand

Value of the mustUnderstand attribute of the SOAP header element.

actor

Value of the actor attribute of the SOAP header element.

Exemplos

Exemplo #1 SoapHeader::SoapHeader() example

<?php
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));
$client->__soapCall("echoVoid", null, null,
                new SoapHeader('http://soapinterop.org/echoheader/',
                               'echoMeStringRequest',
                               'hello world'));
?>

Veja Também

  • SoapClient::__soapCall() - Calls a SOAP function
  • SoapVar::SoapVar() - SoapVar constructor
  • SoapParam::SoapParam() - SoapParam constructor
  • SoapServer::addSoapHeader() - Add a SOAP header to the response

SoapHeader::__construct
SoapParam
SoapHeader


The SoapParam class

Introdução

Represents parameter to a SOAP call.

Sinopse da classe

SoapParam {
/* Methods */
__construct ( mixed $data , string $name )
SoapParam ( mixed $data , string $name )
}

Índice

  • SoapParam::__construct — SoapParam constructor
  • SoapParam::SoapParam — SoapParam constructor
SoapHeader::SoapHeader
SoapParam::__construct
SOAP


SoapParam constructor

SoapParam
SoapParam::SoapParam
SoapParam
PHP Manual

SoapParam::__construct

(PHP 5 >= 5.0.1)

SoapParam::__construct — SoapParam constructor

Descrição

SoapParam::__construct ( mixed $data , string $name )

Esta função é um apelido para: SoapParam::SoapParam()

SoapParam
SoapParam::SoapParam
SoapParam


SoapParam constructor

SoapParam::__construct
SoapVar
SoapParam
PHP Manual

SoapParam::SoapParam

(PHP 5 >= 5.0.1)

SoapParam::SoapParam — SoapParam constructor

Descrição

SoapParam::SoapParam ( mixed $data , string $name )

Constructs a new SoapParam object.

Parâmetros

data

The data to pass or return. This parameter can be passed directly as PHP value, but in this case it will be named as paramN and the SOAP service may not understand it.

name

The parameter name.

Exemplos

Exemplo #1 SoapParam::SoapParam() example

<?php
$client = new SoapClient(null,array('location' => "http://localhost/soap.php",
                                    'uri'      => "http://test-uri/"));
$client->SomeFunction(new SoapParam($a, "a"),
                      new SoapParam($b, "b"),
                      new SoapParam($c, "c"));
?>

Veja Também

  • SoapClient::__soapCall() - Calls a SOAP function
  • SoapVar::SoapVar() - SoapVar constructor

SoapParam::__construct
SoapVar
SoapParam


The SoapVar class

Introdução

A class representing a variable or object for use with SOAP services.

Sinopse da classe

SoapVar {
/* Methods */
__construct ( string $data , string $encoding [, string $type_name [, string $type_namespace [, string $node_name [, string $node_namespace ]]]] )
SoapVar ( string $data , string $encoding [, string $type_name [, string $type_namespace [, string $node_name [, string $node_namespace ]]]] )
}

Índice

  • SoapVar::__construct — SoapVar constructor
  • SoapVar::SoapVar — SoapVar constructor
SoapParam::SoapParam
SoapVar::__construct
SOAP


SoapVar constructor

SoapVar
SoapVar::SoapVar
SoapVar
PHP Manual

SoapVar::__construct

(PHP 5 >= 5.0.1)

SoapVar::__construct — SoapVar constructor

Descrição

SoapVar::__construct ( string $data , string $encoding [, string $type_name [, string $type_namespace [, string $node_name [, string $node_namespace ]]]] )

Esta função é um apelido para: SoapVar::SoapVar()

SoapVar
SoapVar::SoapVar
SoapVar


SoapVar constructor

SoapVar::__construct
XML-RPC
SoapVar
PHP Manual

SoapVar::SoapVar

(PHP 5 >= 5.0.1)

SoapVar::SoapVar — SoapVar constructor

Descrição

SoapVar::SoapVar ( string $data , string $encoding [, string $type_name [, string $type_namespace [, string $node_name [, string $node_namespace ]]]] )

Constructs a new SoapVar object.

Parâmetros

data

The data to pass or return.

encoding

The encoding ID, one of the XSD_... constants.

type_name

The type name.

type_namespace

The type namespace.

node_name

The XML node name.

node_namespace

The XML node namespace.

Exemplos

Exemplo #1 SoapVar::SoapVar() example

<?php
class SOAPStruct {
    function SOAPStruct($s, $i, $f)
    {
        $this->varString = $s;
        $this->varInt = $i;
        $this->varFloat = $f;
    }
}
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     'uri'      => "http://test-uri/"));
$struct = new SOAPStruct('arg', 34, 325.325);
$soapstruct = new SoapVar($struct, SOAP_ENC_OBJECT, "SOAPStruct", "http://soapinterop.org/xsd");
$client->echoStruct(new SoapParam($soapstruct, "inputStruct"));
?>

Veja Também

  • SoapClient::__soapCall() - Calls a SOAP function
  • SoapParam::SoapParam() - SoapParam constructor

SoapVar::__construct
XML-RPC
SoapVar


XML-RPC

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções para XML-RPC
    • xmlrpc_decode_request — Decodifica XML para tipos nativos do PHP
    • xmlrpc_decode — Decodifica XML para tipos nativos do PHP
    • xmlrpc_encode_request — Gera XML para uma requisiÃ§Ã£o
    • xmlrpc_encode — Gera XML para um valor do PHP
    • xmlrpc_get_type — Pega o tipo xmlrpc para um valor do PHP
    • xmlrpc_is_fault — Determina se um valor de array representa uma falha XMLRPC
    • xmlrpc_parse_method_descriptions — Decodifica XML e gera uma lista de descriÃ§Ã£o de mÃ©todos
    • xmlrpc_server_add_introspection_data — Adiciona documentação de introspecção
    • xmlrpc_server_call_method — Trata requisiçães de XML e chamadas de métodos
    • xmlrpc_server_create — Cria um servidor xmlrpc
    • xmlrpc_server_destroy — Destrói o servidor xmlrpc
    • xmlrpc_server_register_introspection_callback — Registra uma função do PHP para gerar documentação
    • xmlrpc_server_register_method — Registra uma função do PHP para o método com nome method_name
    • xmlrpc_set_type — Configura um tipo xmlrpc, base64 ou datetime, para uma string do PHP
SoapVar::SoapVar
Introdução
Web Services


Introdução

Essas funções podem ser usadas para escrever servidores e clientes XML-RPC. Você pode achar mais informação sobre XML-RPC em » http://www.xmlrpc.com/, e mais documentação sobre essa extensão e suas funções em » http://xmlrpc-epi.sourceforge.net/.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

XML-RPC
Instalação/Configuração
XML-RPC


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XML-RPC


Instalação

Suporte Ã XML-RPC no PHP nÃ£o Ã© habilitado por padrÃ£o. VocÃª precisarÃ¡ usar a opÃ§Ã£o --with-xmlrpc[=DIR] ao executar o script configure para habilitar o suporte. Essa extensÃ£o estÃ¡ faz parte do PHP desde a versÃ£o 4.1.0.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

OpÃ§Ãµes de ConfiguraÃ§Ã£o de XML-RPC
Nome | Valor PadrÃ£o | AlterÃ¡vel | Changelog
xmlrpc_errors | "0" | PHP_INI_SYSTEM | DisponÃvel desde o PHP 4.1.0.
xmlrpc_error_number | "0" | PHP_INI_ALL | DisponÃvel desde o PHP 4.1.0.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Essa extensão define um recurso (resource) para um servidor XML-RPC retornado por xmlrpc_server_create().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções para XML-RPC
XML-RPC


Funções para XML-RPC

Índice

  • xmlrpc_decode_request — Decodifica XML para tipos nativos do PHP
  • xmlrpc_decode — Decodifica XML para tipos nativos do PHP
  • xmlrpc_encode_request — Gera XML para uma requisiÃ§Ã£o
  • xmlrpc_encode — Gera XML para um valor do PHP
  • xmlrpc_get_type — Pega o tipo xmlrpc para um valor do PHP
  • xmlrpc_is_fault — Determina se um valor de array representa uma falha XMLRPC
  • xmlrpc_parse_method_descriptions — Decodifica XML e gera uma lista de descriÃ§Ã£o de mÃ©todos
  • xmlrpc_server_add_introspection_data — Adiciona documentação de introspecção
  • xmlrpc_server_call_method — Trata requisiçães de XML e chamadas de métodos
  • xmlrpc_server_create — Cria um servidor xmlrpc
  • xmlrpc_server_destroy — Destrói o servidor xmlrpc
  • xmlrpc_server_register_introspection_callback — Registra uma função do PHP para gerar documentação
  • xmlrpc_server_register_method — Registra uma função do PHP para o método com nome method_name
  • xmlrpc_set_type — Configura um tipo xmlrpc, base64 ou datetime, para uma string do PHP
Constantes pré-definidas
xmlrpc_decode_request
XML-RPC


Decodifica XML para tipos nativos do PHP

Funções para XML-RPC
xmlrpc_decode
Funções para XML-RPC
PHP Manual

xmlrpc_decode_request

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_decode_request — Decodifica XML para tipos nativos do PHP

Descrição

mixed xmlrpc_decode_request ( string $xml , string &$method [, string $encoding ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Funções para XML-RPC
xmlrpc_decode
Funções para XML-RPC


Decodifica XML para tipos nativos do PHP

xmlrpc_decode_request
xmlrpc_encode_request
Funções para XML-RPC
PHP Manual

xmlrpc_decode

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_decode — Decodifica XML para tipos nativos do PHP

Descrição

mixed xmlrpc_decode ( string $xml [, string $encoding ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

xml

Resposta XML retornada por método XMLRPC.

encoding

Codificação da entrada suportada por iconv (padrão é "iso-8859-1").

Valor Retornado

Retorna ou um array, ou um inteiro, ou uma string, ou um booleano de acordo com a resposta retornada via XMLRPC.

Exemplos

Veja exemplos em xmlrpc_encode_request().

Veja Também

  • xmlrpc_encode_request() - Gera XML para uma requisiÃ§Ã£o
  • xmlrpc_is_fault() - Determina se um valor de array representa uma falha XMLRPC

xmlrpc_decode_request
xmlrpc_encode_request
Funções para XML-RPC


Gera XML para uma requisiÃ§Ã£o

xmlrpc_decode
xmlrpc_encode
Funções para XML-RPC
PHP Manual

xmlrpc_encode_request

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_encode_request — Gera XML para uma requisiÃ§Ã£o

Descrição

string xmlrpc_encode_request ( string $method , mixed $params [, array $output_options ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

method

Nome do método a ser chamado.

params

Parâmetros do método compatível com assinatura do método.

output_options

Array especificando opções de saída. Pode conter (valores padrão estão em negrito):

  • output_type: php, xml

  • verbosity: no_white_space, newlines_only, pretty

  • escaping: cdata, non-ascii, non-print, markup (pode ser uma string com um valor ou um array com múltiplos valores)

  • version: simple, xmlrpc, soap 1.1, auto

  • encoding: iso-8859-1, outra codificação suportada por iconv

Valor Retornado

Retorna uma string contendo a representação XML da requisição.

Exemplos

Exemplo #1 Exemplo de uso das funções de cliente XMLRPC

<?php
$request = xmlrpc_encode_request("method", array(1, 2, 3));
$context = stream_context_create(array('http' => array(
    'method' => "POST",
    'header' => "Content-Type: text/xml",
    'content' => $request
)));
$file = file_get_contents("http://www.example.com/xmlrpc", false, $context);
$response = xmlrpc_decode($file);
if (xmlrpc_is_fault($response)) {
    trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
} else {
    print_r($response);
}
?>

Veja Também

  • stream_context_create() - Create a streams context
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string
  • xmlrpc_decode() - Decodifica XML para tipos nativos do PHP

xmlrpc_decode
xmlrpc_encode
Funções para XML-RPC


Gera XML para um valor do PHP

xmlrpc_encode_request
xmlrpc_get_type
Funções para XML-RPC
PHP Manual

xmlrpc_encode

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_encode — Gera XML para um valor do PHP

Descrição

string xmlrpc_encode ( mixed $value )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_encode_request
xmlrpc_get_type
Funções para XML-RPC


Pega o tipo xmlrpc para um valor do PHP

xmlrpc_encode
xmlrpc_is_fault
Funções para XML-RPC
PHP Manual

xmlrpc_get_type

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_get_type — Pega o tipo xmlrpc para um valor do PHP

Descrição

string xmlrpc_get_type ( mixed $value )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Essa função é especialmente útil para strings datetime e base64.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_encode
xmlrpc_is_fault
Funções para XML-RPC


Determina se um valor de array representa uma falha XMLRPC

xmlrpc_get_type
xmlrpc_parse_method_descriptions
Funções para XML-RPC
PHP Manual

xmlrpc_is_fault

(PHP 4 >= 4.3.0, PHP 5)

xmlrpc_is_fault — Determina se um valor de array representa uma falha XMLRPC

Descrição

bool xmlrpc_is_fault ( array $arg )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

arg

Array retornado por xmlrpc_decode().

Valor Retornado

Retorna TRUE se o argumento significa falha, FALSE caso contrário. Descrição da falha está disponível em $arg["faultString"], código da falha está em $arg["faultCode"].

Exemplos

Veja o exemplo em xmlrpc_encode_request().

Veja Também

  • xmlrpc_decode() - Decodifica XML para tipos nativos do PHP

xmlrpc_get_type
xmlrpc_parse_method_descriptions
Funções para XML-RPC


Decodifica XML e gera uma lista de descriÃ§Ã£o de mÃ©todos

xmlrpc_is_fault
xmlrpc_server_add_introspection_data
Funções para XML-RPC
PHP Manual

xmlrpc_parse_method_descriptions

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_parse_method_descriptions — Decodifica XML e gera uma lista de descriÃ§Ã£o de mÃ©todos

Descrição

array xmlrpc_parse_method_descriptions ( string $xml )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_is_fault
xmlrpc_server_add_introspection_data
Funções para XML-RPC


Adiciona documentação de introspecção

xmlrpc_parse_method_descriptions
xmlrpc_server_call_method
Funções para XML-RPC
PHP Manual

xmlrpc_server_add_introspection_data

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_add_introspection_data — Adiciona documentação de introspecção

Descrição

int xmlrpc_server_add_introspection_data ( resource $server , array $desc )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_parse_method_descriptions
xmlrpc_server_call_method
Funções para XML-RPC


Trata requisiçães de XML e chamadas de métodos

xmlrpc_server_add_introspection_data
xmlrpc_server_create
Funções para XML-RPC
PHP Manual

xmlrpc_server_call_method

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_call_method — Trata requisiçães de XML e chamadas de métodos

Descrição

string xmlrpc_server_call_method ( resource $server , string $xml , mixed $user_data [, array $output_options ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_server_add_introspection_data
xmlrpc_server_create
Funções para XML-RPC


Cria um servidor xmlrpc

xmlrpc_server_call_method
xmlrpc_server_destroy
Funções para XML-RPC
PHP Manual

xmlrpc_server_create

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_create — Cria um servidor xmlrpc

Descrição

resource xmlrpc_server_create ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_server_call_method
xmlrpc_server_destroy
Funções para XML-RPC


Destrói o servidor xmlrpc

xmlrpc_server_create
xmlrpc_server_register_introspection_callback
Funções para XML-RPC
PHP Manual

xmlrpc_server_destroy

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_destroy — Destrói o servidor xmlrpc

Descrição

int xmlrpc_server_destroy ( resource $server )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_server_create
xmlrpc_server_register_introspection_callback
Funções para XML-RPC


Registra uma função do PHP para gerar documentação

xmlrpc_server_destroy
xmlrpc_server_register_method
Funções para XML-RPC
PHP Manual

xmlrpc_server_register_introspection_callback

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_register_introspection_callback — Registra uma função do PHP para gerar documentação

Descrição

bool xmlrpc_server_register_introspection_callback ( resource $server , string $function )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_server_destroy
xmlrpc_server_register_method
Funções para XML-RPC


Registra uma função do PHP para o método com nome method_name

xmlrpc_server_register_introspection_callback
xmlrpc_set_type
Funções para XML-RPC
PHP Manual

xmlrpc_server_register_method

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_server_register_method — Registra uma função do PHP para o método com nome method_name

Descrição

bool xmlrpc_server_register_method ( resource $server , string $method_name , string $function )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xmlrpc_server_register_introspection_callback
xmlrpc_set_type
Funções para XML-RPC


Configura um tipo xmlrpc, base64 ou datetime, para uma string do PHP

xmlrpc_server_register_method
Extensões Somente para Windows
Funções para XML-RPC
PHP Manual

xmlrpc_set_type

(PHP 4 >= 4.1.0, PHP 5)

xmlrpc_set_type — Configura um tipo xmlrpc, base64 ou datetime, para uma string do PHP

Descrição

bool xmlrpc_set_type ( string &$value , string $type )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Parâmetros

value

Valor a ser definido do tipo

type

'base64' ou 'datetime'

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. Se tiver sucesso, value é convertido para um objeto.

Erros

É emitido E_WARNING com tipo não suportado por XMLRPC..

xmlrpc_server_register_method
Extensões Somente para Windows
Funções para XML-RPC


Extensões Somente para Windows

  • .NET
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da .NET
  • COM — COM and .Net (Windows)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Errors and error handling
    • Exemplos
    • COM Funções
  • Printer
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da Printer
  • W32api
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da W32api
  • win32ps
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da win32ps
  • win32service
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • win32service Funções
xmlrpc_set_type
.NET
Referência das Funções


.NET

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da .NET
    • dotnet_load — Carrega um módulo .NET
Extensões Somente para Windows
Introdução
Extensões Somente para Windows


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

.NET
Instalação/Configuração
.NET


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
.NET


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da .NET
.NET


Funções da .NET

Índice

  • dotnet_load — Carrega um módulo .NET
Constantes pré-definidas
dotnet_load
.NET


Carrega um módulo .NET

Funções da .NET
COM
Funções da .NET
PHP Manual

dotnet_load

(PHP 4)

dotnet_load — Carrega um módulo .NET

Descrição

int dotnet_load ( string $assembly_name [, string $datatype_name [, int $codepage ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Histórico

Versão | Descrição
4.1.0 | O parâmetro codepage foi adicionado

Funções da .NET
COM
Funções da .NET


COM and .Net (Windows)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Errors and error handling
  • Exemplos
    • For Each
    • Arrays and Array-style COM properties
  • COM Funções
    • COM — COM class
    • DOTNET — DOTNET class
    • VARIANT — VARIANT class
    • com_addref — Increases the components reference counter [deprecated]
    • com_create_guid — Generate a globally unique identifier (GUID)
    • com_event_sink — Connect events from a COM object to a PHP object
    • com_get_active_object — Returns a handle to an already running instance of a COM object
    • com_get — Gets the value of a COM Component's property [deprecated]
    • com_invoke — Calls a COM component's method [deprecated]
    • com_isenum — Indicates if a COM object has an IEnumVariant interface for iteration [deprecated]
    • com_load_typelib — Loads a Typelib
    • com_load — Creates a new reference to a COM component [deprecated]
    • com_message_pump — Process COM messages, sleeping for up to timeoutms milliseconds
    • com_print_typeinfo — Print out a PHP class definition for a dispatchable interface
    • com_propget — Sinônimo de com_get
    • com_propput — Sinônimo de com_set
    • com_propset — Sinônimo de com_set
    • com_release — Decreases the components reference counter [deprecated]
    • com_set — Assigns a value to a COM component's property
    • variant_abs — Returns the absolute value of a variant
    • variant_add — "Adds" two variant values together and returns the result
    • variant_and — Performs a bitwise AND operation between two variants
    • variant_cast — Convert a variant into a new variant object of another type
    • variant_cat — concatenates two variant values together and returns the result
    • variant_cmp — Compares two variants
    • variant_date_from_timestamp — Returns a variant date representation of a Unix timestamp
    • variant_date_to_timestamp — Converts a variant date/time value to Unix timestamp
    • variant_div — Returns the result from dividing two variants
    • variant_eqv — Performs a bitwise equivalence on two variants
    • variant_fix — Returns the integer portion of a variant
    • variant_get_type — Returns the type of a variant object
    • variant_idiv — Converts variants to integers and then returns the result from dividing them
    • variant_imp — Performs a bitwise implication on two variants
    • variant_int — Returns the integer portion of a variant
    • variant_mod — Divides two variants and returns only the remainder
    • variant_mul — Multiplies the values of the two variants
    • variant_neg — Performs logical negation on a variant
    • variant_not — Performs bitwise not negation on a variant
    • variant_or — Performs a logical disjunction on two variants
    • variant_pow — Returns the result of performing the power function with two variants
    • variant_round — Rounds a variant to the specified number of decimal places
    • variant_set_type — Convert a variant into another type "in-place"
    • variant_set — Assigns a new value for a variant object
    • variant_sub — Subtracts the value of the right variant from the left variant value
    • variant_xor — Performs a logical exclusion on two variants
dotnet_load
Introdução
Extensões Somente para Windows


Introdução

COM is an acronym for Component Object Model; it is an object orientated layer (and associated services) on top of DCE RPC (an open standard) and defines a common calling convention that enables code written in any language to call and interoperate with code written in any other language (provided those languages are COM aware). Not only can the code be written in any language, but it need not even be part of the same executable; the code can be loaded from a DLL, be found in another process running on the same machine, or, with DCOM (Distributed COM), be found in another process on a remote machine, all without your code even needing to know where a component resides.

There is a subset of COM known as OLE Automation which comprises a set of COM interfaces that allow loose binding to COM objects, so that they can be introspected and called at run-time without compile-time knowledge of how the object works. The PHP COM extension utilizes the OLE Automation interfaces to allow you to create and call compatible objects from your scripts. Technically speaking, this should really be called the "OLE Automation Extension for PHP", since not all COM objects are OLE compatible.

Now, why would or should you use COM? COM is one of the main ways to glue applications and components together on the Windows platform; using COM you can launch Microsoft Word, fill in a document template and save the result as a Word document and send it to a visitor of your web site. You can also use COM to perform administrative tasks for your network and to configure your IIS; these are just the most common uses; you can do much more with COM.

Starting with PHP 5, this extension (and this documentation) was rewritten from scratch and much of the old confusing and bogus cruft has be removed. Additionally, we support the instantiation and creation of .Net assemblies using the COM interoperability layer provided by Microsoft.

Please read » this article for an overview of the changes in this extension in PHP 5.

COM
Instalação/Configuração
COM


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
COM


Dependências

COM functions are only available for the Windows version of PHP.

.Net support requires PHP 5 and the .Net runtime.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Não há nenhuma instalação necessária para utilizar estas funções, elas fazem parte do núcleo do PHP.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

You are responsible for installing support for the various COM objects that you intend to use (such as MS Word); we don't and can't bundle all of those with PHP.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Com configuration options
Name | Default | Changeable | Changelog
com.allow_dcom | "0" | PHP_INI_SYSTEM | Available since PHP 4.0.5.
com.autoregister_typelib | "0" | PHP_INI_ALL | PHP_INI_SYSTEM in PHP 4. Available since PHP 4.1.0.
com.autoregister_verbose | "0" | PHP_INI_ALL | PHP_INI_SYSTEM in PHP 4. Available since PHP 4.1.0.
com.autoregister_casesensitive | "1" | PHP_INI_ALL | PHP_INI_SYSTEM in PHP 4. Available since PHP 4.1.0.
com.code_page | "" | PHP_INI_ALL | Available since PHP 5.0.0.
com.typelib_file | "" | PHP_INI_SYSTEM | Available since PHP 4.0.5.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Breve descrição das diretivas de configuração.

com.allow_dcom

When this is turned on, PHP will be allowed to operate as a D-COM (Distributed COM) client and will allow the PHP script to instantiate COM objects on a remote server.

com.autoregister_typelib

When this is turned on, PHP will attempt to register constants from the typelibrary of objects that it instantiates, if those objects implement the interfaces required to obtain that information. The case sensitivity of the constants it registers is controlled by the configuration directive.

com.autoregister_verbose

When this is turned on, any problems with loading a typelibrary during object instantiation will be reported using the PHP error mechanism. The default is off, which does not emit any indication if there was an error finding or loading the type library.

com.autoregister_casesensitive

When this is turned on (the default), constants found in auto-loaded type libraries will be registered case sensitively. See com_load_typelib() for more details.

com.code_page

It controls the default character set code-page to use when passing strings to and from COM objects. If set to an empty string, PHP will assume that you want CP_ACP, which is the default system ANSI code page.

If the text in your scripts is encoded using a different encoding/character set by default, setting this directive will save you from having to pass the code page as a parameter to the COM class constructor. Please note that by using this directive (as with any PHP configuration directive), your PHP script becomes less portable; you should use the COM constructor parameter whenever possible.

Nota: This configuration directive was introduced with PHP 5.

com.typelib_file

When set, this should hold the path to a file that contains a list of typelibraries that should be loaded on startup. Each line of the file will be treated as the type library name and loaded as though you had called com_load_typelib(). The constants will be registered persistently, so that the library only needs to be loaded once. If a type library name ends with the string #cis or #case_insensitive, then the constants from that library will be registered case insensitively.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

This extension defines a reference to a COM component returned by deprecated com_load() (this function does not exist in PHP 5; use the COM class instead).

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XML constants
Constant | Value | Description | Notes
CLSCTX_INPROC_SERVER (integer) | 1 | The code that creates and manages objects of this class is a DLL that runs in the same process as the caller of the function specifying the class context. |
CLSCTX_INPROC_HANDLER (integer) | 2 | The code that manages objects of this class is an in-process handler. This is a DLL that runs in the client process and implements client-side structures of this class when instances of the class are accessed remotely. |
CLSCTX_LOCAL_SERVER (integer) | 4 | The EXE code that creates and manages objects of this class runs on same machine but is loaded in a separate process space. |
CLSCTX_REMOTE_SERVER (integer) | 16 | A remote context. The code that creates and manages objects of this class is run on a different computer. |
CLSCTX_SERVER (integer) | 21 | Indicates server code, whether in-process, local, or remote. This definition ORs CLSCTX_INPROC_SERVER, CLSCTX_LOCAL_SERVER, and CLSCTX_REMOTE_SERVER. |
CLSCTX_ALL (integer) | 23 | Indicates all class contexts. This definition ORs CLSCTX_INPROC_HANDLER and CLSCTX_SERVER. |
VT_NULL (integer) | 1 | NULL pointer reference. |
VT_EMPTY (integer) | 0 | A property with a type indicator of VT_EMPTY has no data associated with it; that is, the size of the value is zero. |
VT_UI1 (integer) | 17 | 1-byte unsigned integer. |
VT_I2 (integer) | 2 | Two bytes representing a 2-byte signed integer value. |
VT_I4 (integer) | 3 | 4-byte signed integer value. |
VT_R4 (integer) | 4 | 32-bit IEEE floating point value. |
VT_R8 (integer) | 5 | 64-bit IEEE floating point value. |
VT_BOOL (integer) | 11 | Boolean value. |
VT_ERROR (integer) | 10 | Error code; containing the status code associated with the error. |
VT_CY (integer) | 6 | 8-byte two's complement integer (scaled by 10,000). |
VT_DATE (integer) | 7 | A 64-bit floating point number representing the number of days (not seconds) since December 31, 1899. For example, January 1, 1900, is 2.0, January 2, 1900, is 3.0, and so on). This is stored in the same representation as VT_R8. |
VT_BSTR (integer) | 8 | Pointer to a null-terminated Unicode string. |
VT_DECIMAL (integer) | 14 | A decimal structure. |
VT_UNKNOWN (integer) | 13 | A pointer to an object that implements the IUnknown interface. |
VT_DISPATCH (integer) | 9 | A pointer to a pointer to an object was specified. |
VT_VARIANT (integer) | 12 | A type indicator followed by the corresponding value. VT_VARIANT can be used only with VT_BYREF. |
VT_I1 (integer) | 16 | 1-byte signed integer. |
VT_UI2 (integer) | 18 | 2-byte unsigned integer. |
VT_UI4 (integer) | 19 | 4-byte unsigned integer. |
VT_INT (integer) | 22 | 4-byte signed integer value (equivalent to VT_I4). |
VT_UINT (integer) | 23 | 4-byte unsigned integer (equivalent to VT_UI4). |
VT_ARRAY (integer) | 8192 | If the type indicator is combined with VT_ARRAY by an OR operator, the value is a pointer to a SAFEARRAY. VT_ARRAY can use the OR with the following data types: VT_I1, VT_UI1, VT_I2, VT_UI2, VT_I4, VT_UI4, VT_INT, VT_UINT, VT_R4, VT_R8, VT_BOOL, VT_DECIMAL, VT_ERROR, VT_CY, VT_DATE, VT_BSTR, VT_DISPATCH, VT_UNKNOWN and VT_VARIANT. |
VT_BYREF (integer) | 16384 | If the type indicator is combined with VT_BYREF by an OR operator, the value is a reference. Reference types are interpreted as a reference to data, similar to the reference type in C++. |
CP_ACP (integer) | 0 | Default to ANSI code page. |
CP_MACCP (integer) | 2 | Macintosh code page. |
CP_OEMCP (integer) | 1 | Default to OEM code page. |
CP_UTF7 (integer) | 65000 | Unicode (UTF-7). |
CP_UTF8 (integer) | 65001 | Unicode (UTF-8). |
CP_SYMBOL (integer) | 42 | SYMBOL translations. |
CP_THREAD_ACP (integer) | 3 | Current thread's ANSI code page |
VARCMP_LT (integer) | 0 | The left bstr is less than right bstr. |
VARCMP_EQ (integer) | 1 | The two parameters are equal. |
VARCMP_GT (integer) | 2 | The left bstr is greater than right bstr. |
VARCMP_NULL (integer) | 3 | Either expression is NULL. |
NORM_IGNORECASE (integer) | 1 | Ignore case sensitivity. |
NORM_IGNORENONSPACE (integer) | 2 | Ignore nonspacing characters. |
NORM_IGNORESYMBOLS (integer) | 4 | Ignore symbols. |
NORM_IGNOREWIDTH (integer) | 131072 | Ignore string width. |
NORM_IGNOREKANATYPE (integer) | 65536 | Ignore Kana type. |
NORM_IGNOREKASHIDA (integer) | 262144 | Ignore Arabic kashida characters. | Availability is dependent upon under lying library.
DISP_E_DIVBYZERO (integer) | -2147352558 | A return error that indicates a divide by zero error. |
DISP_E_OVERFLOW (integer) | -2147352566 | An error that indicates that a value could not be coerced to its expected representation. |
MK_E_UNAVAILABLE (integer) | -2147221021 | iMoniker COM status code, return on errors where the function call failed due to unavailability. |
Tipos Resource
Errors and error handling
COM


Errors and error handling

Exceptions (PHP 5)

This extension will throw instances of the class com_exception whenever there is a potentially fatal error reported by COM. All COM exceptions have a well-defined code property that corresponds to the HRESULT return value from the various COM operations. You may use this code to make programmatic decisions on how to handle the exception.

Constantes pré-definidas
Exemplos
COM


Exemplos

Índice

  • For Each
  • Arrays and Array-style COM properties
Errors and error handling
For Each
COM


For Each

Starting with PHP 5, you may use PHP's own foreach statement to iterate over the contents of a standard COM/OLE IEnumVariant. In layman's terms, this means that you can use foreach in places where you would have used For Each in VB/ASP code.

Exemplo #1 For Each in ASP

<%
Set domainObject = GetObject("WinNT://Domain")
For Each obj in domainObject
  Response.Write obj.Name & "<br />"
Next
%>

Exemplo #2 while() ... Next() in PHP 4

<?php
$domainObject = new COM("WinNT://Domain");
while ($obj = $domainObject->Next()) {
   echo $obj->Name . "<br />";
}
?>

Exemplo #3 foreach in PHP 5

<?php
$domainObject = new COM("WinNT://Domain");
foreach ($domainObject as $obj) {
   echo $obj->Name . "<br />";
}
?>

Exemplos
Arrays and Array-style COM properties
Exemplos


Arrays and Array-style COM properties

Many COM objects expose their properties as arrays, or using array-style access. In PHP 4, you may use PHP array syntax to read/write such a property, but only a single dimension is allowed. If you want to read a multi-dimensional property, you could instead make the property access into a function call, with each parameter representing each dimension of the array access, but there is no way to write to such a property.

PHP 5 introduces the following new features to make your life easier:

  • Access multi-dimensional arrays, or COM properties that require multiple parameters using PHP array syntax. You can also write or set properties using this technique.

  • Iterate SafeArrays ("true" arrays) using the foreach control structure. This works because SafeArrays include information about their size. If an array-style property implements IEnumVariant then you can also use foreach for that property too; take a look at For Each for more information on this topic.

For Each
COM Funções
Exemplos


COM Funções

Veja Também

For further information on COM read the » COM specification or perhaps take a look at Don Box's » Yet Another COM Library (YACL). You might find some additional useful information in our FAQ for PHP e COM. If you're thinking of using MS Office applications on the server side, you should read the information here: » Considerations for Server-Side Automation of Office.

Índice

  • COM — COM class
  • DOTNET — DOTNET class
  • VARIANT — VARIANT class
  • com_addref — Increases the components reference counter [deprecated]
  • com_create_guid — Generate a globally unique identifier (GUID)
  • com_event_sink — Connect events from a COM object to a PHP object
  • com_get_active_object — Returns a handle to an already running instance of a COM object
  • com_get — Gets the value of a COM Component's property [deprecated]
  • com_invoke — Calls a COM component's method [deprecated]
  • com_isenum — Indicates if a COM object has an IEnumVariant interface for iteration [deprecated]
  • com_load_typelib — Loads a Typelib
  • com_load — Creates a new reference to a COM component [deprecated]
  • com_message_pump — Process COM messages, sleeping for up to timeoutms milliseconds
  • com_print_typeinfo — Print out a PHP class definition for a dispatchable interface
  • com_propget — Sinônimo de com_get
  • com_propput — Sinônimo de com_set
  • com_propset — Sinônimo de com_set
  • com_release — Decreases the components reference counter [deprecated]
  • com_set — Assigns a value to a COM component's property
  • variant_abs — Returns the absolute value of a variant
  • variant_add — "Adds" two variant values together and returns the result
  • variant_and — Performs a bitwise AND operation between two variants
  • variant_cast — Convert a variant into a new variant object of another type
  • variant_cat — concatenates two variant values together and returns the result
  • variant_cmp — Compares two variants
  • variant_date_from_timestamp — Returns a variant date representation of a Unix timestamp
  • variant_date_to_timestamp — Converts a variant date/time value to Unix timestamp
  • variant_div — Returns the result from dividing two variants
  • variant_eqv — Performs a bitwise equivalence on two variants
  • variant_fix — Returns the integer portion of a variant
  • variant_get_type — Returns the type of a variant object
  • variant_idiv — Converts variants to integers and then returns the result from dividing them
  • variant_imp — Performs a bitwise implication on two variants
  • variant_int — Returns the integer portion of a variant
  • variant_mod — Divides two variants and returns only the remainder
  • variant_mul — Multiplies the values of the two variants
  • variant_neg — Performs logical negation on a variant
  • variant_not — Performs bitwise not negation on a variant
  • variant_or — Performs a logical disjunction on two variants
  • variant_pow — Returns the result of performing the power function with two variants
  • variant_round — Rounds a variant to the specified number of decimal places
  • variant_set_type — Convert a variant into another type "in-place"
  • variant_set — Assigns a new value for a variant object
  • variant_sub — Subtracts the value of the right variant from the left variant value
  • variant_xor — Performs a logical exclusion on two variants
Arrays and Array-style COM properties
COM
COM


COM class

COM Funções
DOTNET
COM Funções
PHP Manual

COM

(PHP 4 >= 4.1.0, PHP 5)

COM — COM class

$obj = new COM("Application.ID")

Description

The COM class allows you to instantiate an OLE compatible COM object and call its methods and access its properties.

Methods

com COM::COM ( string $module_name [, mixed $server_name [, int $codepage [, string $typelib ]]] )

COM class constructor. The parameters have the following meanings:

module_name
Can be a ProgID, Class ID or Moniker that names the component to load. A ProgID is typically the application or DLL name, followed by a period, followed by the object name. e.g: Word.Application. A Class ID is the UUID that uniquely identifies a given class. A Moniker is a special form of naming, similar in concept to a URL scheme, that identifies a resource and specifies how it should be loaded. As an example, you could load up Word and get an object representing a word document by specifying the full path to the word document as the module name, or you can use LDAP: as a moniker to use the ADSI interface to LDAP.
server_name
The name of the DCOM server on which the component should be loaded and run. If NULL, the object is run using the default for the application. The default is typically to run it on the local machine, although the administrator might have configured the application to launch on a different machine. If you specify a non-NULL value for server, PHP will refuse to load the object unless the configuration option is set to TRUE.

If server_name is an array, it should contain the following elements (case sensitive!). Note that they are all optional (although you need to specify both Username and Password together); if you omit the Server setting, the default server will be used (as mentioned above), and the instantiation of the object will not be affected by the directive.

DCOM server name
server_name key | type | description
Server | string | The name of the server.
Username | string | The username to connect as.
Password | string | The password for Username.
Flags | integer | One or more of the following constants, logically OR'd together: CLSCTX_INPROC_SERVER, CLSCTX_INPROC_HANDLER, CLSCTX_LOCAL_SERVER, CLSCTX_REMOTE_SERVER, CLSCTX_SERVER and CLSCTX_ALL. The default value if not specified here is CLSCTX_SERVER if you also omit Server, or CLSCTX_REMOTE_SERVER if you do specify a server. You should consult the Microsoft documentation for CoCreateInstance for more information on the meaning of these constants; you will typically never have to use them.

codepage
Specifies the codepage that is used to convert strings to unicode-strings and vice versa. The conversion is applied whenever a PHP string is passed as a parameter or returned from a method of this COM object. The code page is sticky in PHP 5, which means that it will propagate to objects and variants returned from the object. Possible values are CP_ACP (use system default ANSI code page - the default if this parameter is omitted), CP_MACCP, CP_OEMCP, CP_SYMBOL, CP_THREAD_ACP (use codepage/locale set for the current executing thread), CP_UTF7 and CP_UTF8. You may also use the number for a given codepage; consult the Microsoft documentation for more details on codepages and their numeric values.

Overloaded Methods

The returned object is an overloaded object, which means that PHP does not see any fixed methods as it does with regular classes; instead, any property or method accesses are passed through to COM.

Starting with PHP 5, PHP will automatically detect methods that accept parameters by reference, and will automatically convert regular PHP variables to a form that can be passed by reference. This means that you can call the method very naturally; you needn't go to any extra effort in your code.

In PHP 4, to pass parameters by reference you need to create an instance of the VARIANT class to wrap the byref parameters.

Pseudo Methods

In PHP versions prior to 5, a number of not very pleasant hacks meant that the following method names were not passed through to COM and were handled directly by PHP. PHP 5 eliminates these things; read the details below to determine how to fix your scripts. These magic method names are case insensitive.

void COM::AddRef ( void )

Artificially adds a reference count to the COM object.

Aviso

You should never need to use this method. It exists as a logical complement to the Release() method below.

void COM::Release ( void )

Artificially removes a reference count from the COM object.

Aviso

You should never need to use this method. Its existence in PHP is a bug designed to work around a bug that keeps COM objects running longer than they should.

Pseudo Methods for Iterating

These pseudo methods are only available if com_isenum() returns TRUE, in which case, they hide any methods with the same names that might otherwise be provided by the COM object. These methods have all been eliminated in PHP 5, and you should use For Each instead.

variant COM::All ( void )

Returns a variant representing a SafeArray that has 10 elements; each element will be an empty/null variant. This function was supposed to return an array containing all the elements from the iterator, but was never completed. Do not use.

variant COM::Next ( void )

Returns a variant representing the next element available from the iterator, or FALSE when there are no more elements.

variant COM::Prev ( void )

Returns a variant representing the previous element available from the iterator, or FALSE when there are no more elements.

void COM::Reset ( void )

Rewinds the iterator back to the start.

COM examples

Exemplo #1 COM example (1)

<?php
// starting word
$word = new COM("word.application") or die("Unable to instantiate Word");
echo "Loaded Word, version {$word->Version}\n";

//bring it to front
$word->Visible = 1;

//open an empty document
$word->Documents->Add();

//do some weird stuff
$word->Selection->TypeText("This is a test...");
$word->Documents[1]->SaveAs("Useless test.doc");

//closing word
$word->Quit();

//free the object
$word = null;
?>

Exemplo #2 COM example (2)

<?php

$conn = new COM("ADODB.Connection") or die("Cannot start ADO");
$conn->Open("Provider=SQLOLEDB; Data Source=localhost;
Initial Catalog=database; User ID=user; Password=password");

$rs = $conn->Execute("SELECT * FROM sometable");    // Recordset

$num_columns = $rs->Fields->Count();
echo $num_columns . "\n";

for ($i=0; $i < $num_columns; $i++) {
    $fld[$i] = $rs->Fields($i);
}

$rowcount = 0;
while (!$rs->EOF) {
    for ($i=0; $i < $num_columns; $i++) {
        echo $fld[$i]->value . "\t";
    }
    echo "\n";
    $rowcount++;            // increments rowcount
    $rs->MoveNext();
}

$rs->Close();
$conn->Close();

$rs = null;
$conn = null;

?>

COM Funções
DOTNET
COM Funções


DOTNET class

COM
VARIANT
COM Funções
PHP Manual

DOTNET

(PHP 4 >= 4.1.0, PHP 5)

DOTNET — DOTNET class

$obj = new DOTNET("assembly", "classname")

Description

The DOTNET class allows you to instantiate a class from a .Net assembly and call its methods and access its properties.

Methods

string DOTNET::DOTNET ( string $assembly_name , string $class_name [, int $codepage ] )

DOTNET class constructor. assembly_name specifies which assembly should be loaded, and class_name specifices which class in that assembly to instantiate. You may optionally specify a codepage to use for unicode string transformations; see the COM class for more details on code pages.

The returned object is an overloaded object, which means that PHP does not see any fixed methods as it does with regular classes; instead, any property or method accesses are passed through to COM and from there to DOTNET. In other words, the .Net object is mapped through the COM interoperability layer provided by the .Net runtime.

Once you have created a DOTNET object, PHP treats it identically to any other COM object; all the same rules apply.

Exemplo #1 DOTNET example

<?php
 $stack = new DOTNET("mscorlib", "System.Collections.Stack");
 $stack->Push(".Net");
 $stack->Push("Hello ");
 echo $stack->Pop() . $stack->Pop();
?>

Nota:

You need to install the .Net runtime on your web server to take advantage of this feature.

COM
VARIANT
COM Funções


VARIANT class

DOTNET
com_addref
COM Funções
PHP Manual

VARIANT

(PHP 4 >= 4.1.0, PHP 5)

VARIANT — VARIANT class

$vVar = new VARIANT($var)

Description

The VARIANT is COM's equivalent of the PHP zval; it is a structure that can contain a value with a range of different possible types. The VARIANT class provided by the COM extension allows you to have more control over the way that PHP passes values to and from COM.

Methods

object VARIANT::VARIANT ([ mixed $value [, int $type [, int $codepage ]]] )

VARIANT class constructor. Parameters:

value
initial value. if omitted, or set to NULL an VT_EMPTY object is created.
type
specifies the content type of the VARIANT object. Possible values are one of the VT_XXX Constantes pré-definidas. In PHP versions prior to PHP 5, you could force PHP to pass a variant object by reference by OR'ing VT_BYREF with the type. In PHP 5, this hack is not supported; instead, PHP 5 can detect parameters passed by reference automatically; they do not even need to be passed as VARIANT objects. Consult the MSDN library for additional information on the VARIANT type.
codepage
specifies the codepage that is used to convert strings to unicode. See the parameter of the same name in the COM class for more information.

PHP versions prior to PHP 5 define a number of (undocumented) virtual properties for instances of the VARIANT class; these properties have all been removed in PHP 5 in favour of its more natural syntax; these differences are best highlighted by example:

Exemplo #1 Variant example, PHP 4.x style

<?php
$v = new VARIANT(42);
print "The type is " . $v->type . "<br/>";
print "The value is " . $v->value . "<br/>";
?>

Exemplo #2 Variant example, PHP 5 style

<?php
$v = new VARIANT(42);
print "The type is " . variant_get_type($v) . "<br/>";
print "The value is " . $v . "<br/>";
?>

The reason for the change is that, internally, the COM extension sees VARIANT, COM and DOTNET classes as the same thing, and the design philosophy for these classes is that all property and member accesses are passed through to COM with no interference. The new syntax is more natural and less effort, and most of the removed virtual properties didn't make any sense in a PHP context in any case.

Nota:

PHP 5 takes a much simpler approach to handling VARIANTs; when returning a value or fetching a variant property, the variant is converted to a PHP value only when there is a direct mapping between the types that would not result in a loss of information. In all other cases, the result is returned as an instance of the VARIANT class. You can force PHP to convert or evaluate the variant as a PHP native type by using a casting operator explicitly, or implicitly casting to a string by print()ing it. You may use the wide range of variant functions to perform arithmetic operations on variants without forcing a conversion or risking a loss of data.

See also variant_get_type().

DOTNET
com_addref
COM Funções


Increases the components reference counter [deprecated]

VARIANT
com_create_guid
COM Funções
PHP Manual

com_addref

(PHP 4 >= 4.1.0)

com_addref — Increases the components reference counter [deprecated]

Descrição

void com_addref ( void )

Increases the components reference counter.

Valor Retornado

Não há valor retornado.

Notas

Aviso

You should never need to use this function.

VARIANT
com_create_guid
COM Funções


Generate a globally unique identifier (GUID)

com_addref
com_event_sink
COM Funções
PHP Manual

com_create_guid

(PHP 5)

com_create_guid — Generate a globally unique identifier (GUID)

Descrição

string com_create_guid ( void )

Generates a Globally Unique Identifier (GUID).

A GUID is generated in the same way as DCE UUID's, except that the Microsoft convention is to enclose a GUID in curly braces.

Valor Retornado

Returns the GUID as a string.

Veja Também

  • uuid_create() in the PECL uuid extension

com_addref
com_event_sink
COM Funções


Connect events from a COM object to a PHP object

com_create_guid
com_get_active_object
COM Funções
PHP Manual

com_event_sink

(PHP 4 >= 4.2.0, PHP 5)

com_event_sink — Connect events from a COM object to a PHP object

Descrição

bool com_event_sink ( variant $comobject , object $sinkobject [, mixed $sinkinterface ] )

Instructs COM to sink events generated by comobject into the PHP object sinkobject.

Be careful how you use this feature; if you are doing something similar to the example below, then it doesn't really make sense to run it in a web server context.

Parâmetros

comobject

sinkobject

sinkobject should be an instance of a class with methods named after those of the desired dispinterface; you may use com_print_typeinfo() to help generate a template class for this purpose.

sinkinterface

PHP will attempt to use the default dispinterface type specified by the typelibrary associated with comobject, but you may override this choice by setting sinkinterface to the name of the dispinterface that you want to use.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 COM event sink example

<?php
class IEEventSinker {
    var $terminated = false;

   function ProgressChange($progress, $progressmax) {
      echo "Download progress: $progress / $progressmax\n";
    }

    function DocumentComplete(&$dom, $url) {
      echo "Document $url complete\n";
    }

    function OnQuit() {
      echo "Quit!\n";
      $this->terminated = true;
    }
}
$ie = new COM("InternetExplorer.Application");
// note that you don't need the & for PHP 5!
$sink = new IEEventSinker();
com_event_sink($ie, $sink, "DWebBrowserEvents2");
$ie->Visible = true;
$ie->Navigate("http://www.example.org");
while(!$sink->terminated) {
  com_message_pump(4000);
}
$ie = null;
?>

Veja Também

  • com_print_typeinfo() - Print out a PHP class definition for a dispatchable interface
  • com_message_pump() - Process COM messages, sleeping for up to timeoutms milliseconds

com_create_guid
com_get_active_object
COM Funções


Returns a handle to an already running instance of a COM object

com_event_sink
com_get
COM Funções
PHP Manual

com_get_active_object

(PHP 5)

com_get_active_object — Returns a handle to an already running instance of a COM object

Descrição

variant com_get_active_object ( string $progid [, int $code_page ] )

com_get_active_object() is similar to creating a new instance of a COM object, except that it will only return an object to your script if the object is already running. OLE applications use something known as the Running Object Table to allow well-known applications to be launched only once; this function exposes the COM library function GetActiveObject() to get a handle on a running instance.

Parâmetros

progid

progid must be either the ProgID or CLSID for the object that you want to access (for example Word.Application).

code_page

Acts in precisely the same way that it does for the COM class.

Valor Retornado

If the requested object is running, it will be returned to your script just like any other COM object.

Erros

There are a variety of reasons why this function might fail, the most common being that the object is not already running. In that situation, the exception error code will be MK_E_UNAVAILABLE; you can use the getCode method of the exception object to check the exception code.

Notas

Aviso

Using com_get_active_object() in a web server context is not always a smart idea. Most COM/OLE applications are not designed to handle more than one client concurrently, even (or especially!) Microsoft Office. You should read » Considerations for Server-Side Automation of Office for more information on the general issues involved.

com_event_sink
com_get
COM Funções


Gets the value of a COM Component's property [deprecated]

com_get_active_object
com_invoke
COM Funções
PHP Manual

com_get

(PHP 4)

com_get — Gets the value of a COM Component's property [deprecated]

Descrição

Deprecated, use the OO syntax instead.

Exemplo #1 OO syntax

<?php
// do this
$var = $obj->property;
// instead of this:
$var = com_get($obj, 'property');
?>

Notas

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_get_active_object
com_invoke
COM Funções


Calls a COM component's method [deprecated]

com_get
com_isenum
COM Funções
PHP Manual

com_invoke

(PHP 4)

com_invoke — Calls a COM component's method [deprecated]

Description

mixed com_invoke ( resource $com_object , string $function_name [, mixed $function_parameters ] )

com_invoke() invokes the method named function_name of the COM component referenced by com_object. com_invoke() returns FALSE on error, returns the function_name's return value on success. All the extra parameters function_parameters are passed to the method function_name.

Exemplo #1 Don't use com_invoke(), use OO syntax instead

<?php
// do this
$val = $obj->method($one, $two);
// instead of this:
$val = com_invoke($obj, 'method', $one, $two);
?>

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_get
com_isenum
COM Funções


Indicates if a COM object has an IEnumVariant interface for iteration [deprecated]

com_invoke
com_load_typelib
COM Funções
PHP Manual

com_isenum

(PHP 4 >= 4.1.0)

com_isenum — Indicates if a COM object has an IEnumVariant interface for iteration [deprecated]

Descrição

bool com_isenum ( variant $com_module )

Checks to see if a COM object can be enumerated using the Next() method hack. See COM class for more details on these methods.

Parâmetros

com_module

The COM object.

Valor Retornado

Returns TRUE if the object can be enumerated, FALSE otherwise.

Notas

Nota:

This function does not exist in PHP 5; use the more natural foreach statement to iterate over the contents of COM objects. See For Each for more details.

com_invoke
com_load_typelib
COM Funções


Loads a Typelib

com_isenum
com_load
COM Funções
PHP Manual

com_load_typelib

(PHP 4 >= 4.1.0, PHP 5)

com_load_typelib — Loads a Typelib

Descrição

bool com_load_typelib ( string $typelib_name [, bool $case_insensitive = true ] )

Loads a type-library and registers its constants in the engine, as though they were defined using define().

Note that it is much more efficient to use the configuration setting to pre-load and register the constants, although not so flexible.

If you have turned on , then PHP will attempt to automatically register the constants associated with a COM object when you instantiate it. This depends on the interfaces provided by the COM object itself, and may not always be possible.

Parâmetros

typelib_name

typelib_name can be one of the following:

  • The filename of a .tlb file or the executable module that contains the type library.

  • The type library GUID, followed by its version number, for example {00000200-0000-0010-8000-00AA006D2EA4},2,0.

  • The type library name, e.g. Microsoft OLE DB ActiveX Data Objects 1.0 Library.

PHP will attempt to resolve the type library in this order, as the process gets more and more expensive as you progress down the list; searching for the type library by name is handled by physically enumerating the registry until we find a match.

case_insensitive

The case_insensitive behaves in the same way as the parameter with the same name in the define() function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

com_isenum
com_load
COM Funções


Creates a new reference to a COM component [deprecated]

com_load_typelib
com_message_pump
COM Funções
PHP Manual

com_load

(PHP 4)

com_load — Creates a new reference to a COM component [deprecated]

Descrição

Deprecated, use the OO syntax instead.

Exemplo #1 OO syntax

<?php
// do this
$obj = new COM($module);
// instead of this:
$obj = com_load($module);
?>

Notas

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_load_typelib
com_message_pump
COM Funções


Process COM messages, sleeping for up to timeoutms milliseconds

com_load
com_print_typeinfo
COM Funções
PHP Manual

com_message_pump

(PHP 4 >= 4.2.0, PHP 5)

com_message_pump — Process COM messages, sleeping for up to timeoutms milliseconds

Descrição

bool com_message_pump ([ int $timeoutms = 0 ] )

This function will sleep for up to timeoutms milliseconds, or until a message arrives in the queue.

The purpose of this function is to route COM calls between apartments and handle various synchronization issues. This allows your script to wait efficiently for events to be triggered, while still handling other events or running other code in the background. You should use it in a loop, as demonstrated by the example in the com_event_sink() function, until you are finished using event bound COM objects.

Parâmetros

timeoutms

The timeout, in milliseconds.

If you do not specify a value for timeoutms, then 0 will be assumed. A 0 value means that no waiting will be performed; if there are messages pending they will be dispatched as before; if there are no messages pending, the function will return FALSE immediately without sleeping.

Valor Retornado

If a message or messages arrives before the timeout, they will be dispatched, and the function will return TRUE. If the timeout occurs and no messages were processed, the return value will be FALSE.

com_load
com_print_typeinfo
COM Funções


Print out a PHP class definition for a dispatchable interface

com_message_pump
com_propget
COM Funções
PHP Manual

com_print_typeinfo

(PHP 4 >= 4.2.0, PHP 5)

com_print_typeinfo — Print out a PHP class definition for a dispatchable interface

Descrição

bool com_print_typeinfo ( object $comobject [, string $dispinterface [, bool $wantsink = false ]] )

The purpose of this function is to help generate a skeleton class for use as an event sink. You may also use it to generate a dump of any COM object, provided that it supports enough of the introspection interfaces, and that you know the name of the interface you want to display.

Parâmetros

comobject

comobject should be either an instance of a COM object, or be the name of a typelibrary (which will be resolved according to the rules set out in com_load_typelib()).

dispinterface

The name of an IDispatch descendant interface that you want to display.

wantsink

If set to TRUE, the corresponding sink interface will be displayed instead.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • com_event_sink() - Connect events from a COM object to a PHP object
  • com_load_typelib() - Loads a Typelib

com_message_pump
com_propget
COM Funções


Sinônimo de com_get

com_print_typeinfo
com_propput
COM Funções
PHP Manual

com_propget

(PHP 4)

com_propget — Sinônimo de com_get()

Descrição

Esta função é um apelido para: com_get().

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_print_typeinfo
com_propput
COM Funções


Sinônimo de com_set

com_propget
com_propset
COM Funções
PHP Manual

com_propput

(PHP 4)

com_propput — Sinônimo de com_set()

Descrição

Esta função é um apelido para: com_set().

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_propget
com_propset
COM Funções


Sinônimo de com_set

com_propput
com_release
COM Funções
PHP Manual

com_propset

(PHP 4)

com_propset — Sinônimo de com_set()

Descrição

Esta função é um apelido para: com_set().

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_propput
com_release
COM Funções


Decreases the components reference counter [deprecated]

com_propset
com_set
COM Funções
PHP Manual

com_release

(PHP 4 >= 4.1.0)

com_release — Decreases the components reference counter [deprecated]

Descrição

void com_release ( void )

Decreases the components reference counter.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
5.0.0 | This function was removed.

Notas

Aviso

You should never need to use this function.

com_propset
com_set
COM Funções


Assigns a value to a COM component's property

com_release
variant_abs
COM Funções
PHP Manual

com_set

(PHP 4)

com_set — Assigns a value to a COM component's property

Descrição

Deprecated, use the OO syntax instead.

Exemplo #1 OO syntax

<?php
// do this
$obj->property = $value;
// instead of this:
com_set($obj, 'property', $value);
?>

Notas

Nota: Esta função não existe no PHP 5;, neste caso você deve usar a regular e mais natural sintaxe OO para acessar propriedades ou chamar métodos.

com_release
variant_abs
COM Funções


Returns the absolute value of a variant

com_set
variant_add
COM Funções
PHP Manual

variant_abs

(PHP 5)

variant_abs — Returns the absolute value of a variant

Descrição

mixed variant_abs ( mixed $val )

Returns the absolute value of a variant.

Parâmetros

val

The variant.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the absolute value of val.

Veja Também

  • abs() - Valor absoluto

com_set
variant_add
COM Funções


"Adds" two variant values together and returns the result

variant_abs
variant_and
COM Funções
PHP Manual

variant_add

(PHP 5)

variant_add — "Adds" two variant values together and returns the result

Descrição

mixed variant_add ( mixed $left , mixed $right )

Adds left to right using the following rules (taken from the MSDN library), which correspond to those of Visual Basic:

Variant Addition Rules
If | Then
Both expressions are of the string type | Concatenation
One expression is a string type and the other a character | Addition
One expression is numeric and the other is a string | Addition
Both expressions are numeric | Addition
Either expression is NULL | NULL is returned
Both expressions are empty | Integer subtype is returned

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the result.

Veja Também

  • variant_sub() - Subtracts the value of the right variant from the left variant value

variant_abs
variant_and
COM Funções


Performs a bitwise AND operation between two variants

variant_add
variant_cast
COM Funções
PHP Manual

variant_and

(PHP 5)

variant_and — Performs a bitwise AND operation between two variants

Descrição

mixed variant_and ( mixed $left , mixed $right )

Performs a bitwise AND operation. Note that this is slightly different from a regular AND operation.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant AND Rules
If left is | If right is | then the result is
TRUE | TRUE | TRUE
TRUE | FALSE | FALSE
TRUE | NULL | NULL
FALSE | TRUE | FALSE
FALSE | FALSE | FALSE
FALSE | NULL | FALSE
NULL | TRUE | NULL
NULL | FALSE | FALSE
NULL | NULL | NULL

Veja Também

  • variant_or() - Performs a logical disjunction on two variants

variant_add
variant_cast
COM Funções


Convert a variant into a new variant object of another type

variant_and
variant_cat
COM Funções
PHP Manual

variant_cast

(PHP 5)

variant_cast — Convert a variant into a new variant object of another type

Descrição

variant variant_cast ( variant $variant , int $type )

This function makes a copy of variant and then performs a variant cast operation to force the copy to have the type given by type.

This function wraps VariantChangeType() in the COM library; consult MSDN for more information.

Parâmetros

variant

The variant.

type

type should be one of the VT_XXX constants.

Valor Retornado

Returns a VT_DATE variant.

Veja Também

  • variant_set_type() - Convert a variant into another type "in-place"

variant_and
variant_cat
COM Funções


concatenates two variant values together and returns the result

variant_cast
variant_cmp
COM Funções
PHP Manual

variant_cat

(PHP 5)

variant_cat — concatenates two variant values together and returns the result

Descrição

mixed variant_cat ( mixed $left , mixed $right )

Concatenates left with right and returns the result.

This function is notionally equivalent to $left . $right.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the result of the concatenation.

Veja Também

  • Operadores de String for the string concatenation operator

variant_cast
variant_cmp
COM Funções


Compares two variants

variant_cat
variant_date_from_timestamp
COM Funções
PHP Manual

variant_cmp

(PHP 5)

variant_cmp — Compares two variants

Descrição

int variant_cmp ( mixed $left , mixed $right [, int $lcid [, int $flags ]] )

Compares left with right.

This function will only compare scalar values, not arrays or variant records.

Parâmetros

left

The left operand.

right

The right operand.

lcid

A valid Locale Identifier to use when comparing strings (this affects string collation).

flags

flags can be one or more of the following values OR'd together, and affects string comparisons:

Variant Comparision Flags
value | meaning
NORM_IGNORECASE | Compare case insensitively
NORM_IGNORENONSPACE | Ignore nonspacing characters
NORM_IGNORESYMBOLS | Ignore symbols
NORM_IGNOREWIDTH | Ignore string width
NORM_IGNOREKANATYPE | Ignore Kana type
NORM_IGNOREKASHIDA | Ignore Arabic kashida characters

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns one of the following:

Variant Comparision Results
value | meaning
VARCMP_LT | left is less than right
VARCMP_EQ | left is equal to right
VARCMP_GT | left is greater than right
VARCMP_NULL | Either left, right or both are NULL

variant_cat
variant_date_from_timestamp
COM Funções


Returns a variant date representation of a Unix timestamp

variant_cmp
variant_date_to_timestamp
COM Funções
PHP Manual

variant_date_from_timestamp

(PHP 5)

variant_date_from_timestamp — Returns a variant date representation of a Unix timestamp

Descrição

variant variant_date_from_timestamp ( int $timestamp )

Converts timestamp from a unix timestamp value into a variant of type VT_DATE. This allows easier interopability between the unix-ish parts of PHP and COM.

Parâmetros

timestamp

A unix timestamp.

Valor Retornado

Returns a VT_DATE variant.

Veja Também

  • variant_date_to_timestamp() - Converts a variant date/time value to Unix timestamp
  • mktime() - Obtém um timestamp Unix para uma data
  • time() - Retorna o timestamp Unix atual

variant_cmp
variant_date_to_timestamp
COM Funções


Converts a variant date/time value to Unix timestamp

variant_date_from_timestamp
variant_div
COM Funções
PHP Manual

variant_date_to_timestamp

(PHP 5)

variant_date_to_timestamp — Converts a variant date/time value to Unix timestamp

Descrição

int variant_date_to_timestamp ( variant $variant )

Converts variant from a VT_DATE (or similar) value into a Unix timestamp. This allows easier interopability between the Unix-ish parts of PHP and COM.

Parâmetros

variant

The variant.

Valor Retornado

Returns a unix timestamp.

Veja Também

  • variant_date_from_timestamp() - Returns a variant date representation of a Unix timestamp
  • date() - Formata a data e a hora local
  • strftime() - Formata uma hora/data de acordo com as configurações locais

variant_date_from_timestamp
variant_div
COM Funções


Returns the result from dividing two variants

variant_date_to_timestamp
variant_eqv
COM Funções
PHP Manual

variant_div

(PHP 5)

variant_div — Returns the result from dividing two variants

Descrição

mixed variant_div ( mixed $left , mixed $right )

Divides left by right and returns the result.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant Division Rules
If | Then
Both expressions are of the string, date, character, boolean type | Double is returned
One expression is a string type and the other a character | Division and a double is returned
One expression is numeric and the other is a string | Division and a double is returned.
Both expressions are numeric | Division and a double is returned
Either expression is NULL | NULL is returned
right is empty and left is anything but empty | A com_exception with code DISP_E_DIVBYZERO is thrown
left is empty and right is anything but empty. | 0 as type double is returned
Both expressions are empty | A com_exception with code DISP_E_OVERFLOW is thrown

Veja Também

  • variant_idiv() - Converts variants to integers and then returns the result from dividing them

variant_date_to_timestamp
variant_eqv
COM Funções


Performs a bitwise equivalence on two variants

variant_div
variant_fix
COM Funções
PHP Manual

variant_eqv

(PHP 5)

variant_eqv — Performs a bitwise equivalence on two variants

Descrição

mixed variant_eqv ( mixed $left , mixed $right )

Performs a bitwise equivalence on two variants.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

If each bit in left is equal to the corresponding bit in right then TRUE is returned, otherwise FALSE is returned.

variant_div
variant_fix
COM Funções


Returns the integer portion of a variant

variant_eqv
variant_get_type
COM Funções
PHP Manual

variant_fix

(PHP 5)

variant_fix — Returns the integer portion of a variant

Descrição

mixed variant_fix ( mixed $variant )

Gets the integer portion of a variant.

Parâmetros

variant

The variant.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

If variant is negative, then the first negative integer greater than or equal to the variant is returned, otherwise returns the integer portion of the value of variant.

Notas

Aviso

This documentation is based on the MSDN documentation; it appears that this function is either the same as variant_int(), or that there is an error in the MSDN documentation.

Veja Também

  • variant_int() - Returns the integer portion of a variant
  • variant_round() - Rounds a variant to the specified number of decimal places
  • floor() - Arredonda frações para baixo
  • ceil() - Arredonda frações para cima
  • round() - Arredonda um número

variant_eqv
variant_get_type
COM Funções


Returns the type of a variant object

variant_fix
variant_idiv
COM Funções
PHP Manual

variant_get_type

(PHP 5)

variant_get_type — Returns the type of a variant object

Descrição

int variant_get_type ( variant $variant )

Returns the type of a variant object.

Parâmetros

variant

The variant object.

Valor Retornado

This function returns an integer value that indicates the type of variant, which can be an instance of COM, DOTNET or VARIANT classes. The return value can be compared to one of the VT_XXX constants.

The return value for COM and DOTNET objects will usually be VT_DISPATCH; the only reason this function works for those classes is because COM and DOTNET are descendants of VARIANT.

In PHP versions prior to 5, you could obtain this information from instances of the VARIANT class ONLY, by reading a fake type property. See the VARIANT class for more information on this.

variant_fix
variant_idiv
COM Funções


Converts variants to integers and then returns the result from dividing them

variant_get_type
variant_imp
COM Funções
PHP Manual

variant_idiv

(PHP 5)

variant_idiv — Converts variants to integers and then returns the result from dividing them

Descrição

mixed variant_idiv ( mixed $left , mixed $right )

Converts left and right to integer values, and then performs integer division.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant Integer Division Rules
If | Then
Both expressions are of the string, date, character, boolean type | Division and integer is returned
One expression is a string type and the other a character | Division
One expression is numeric and the other is a string | Division
Both expressions are numeric | Division
Either expression is NULL | NULL is returned
Both expressions are empty | A com_exception with code DISP_E_DIVBYZERO is thrown

Veja Também

  • variant_div() - Returns the result from dividing two variants

variant_get_type
variant_imp
COM Funções


Performs a bitwise implication on two variants

variant_idiv
variant_int
COM Funções
PHP Manual

variant_imp

(PHP 5)

variant_imp — Performs a bitwise implication on two variants

Descrição

mixed variant_imp ( mixed $left , mixed $right )

Performs a bitwise implication operation.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant Implication Table
If left is | If right is | then the result is
TRUE | TRUE | TRUE
TRUE | FALSE | TRUE
TRUE | NULL | TRUE
FALSE | TRUE | TRUE
FALSE | FALSE | TRUE
FALSE | NULL | TRUE
NULL | TRUE | TRUE
NULL | FALSE | NULL
NULL | NULL | NULL

variant_idiv
variant_int
COM Funções


Returns the integer portion of a variant

variant_imp
variant_mod
COM Funções
PHP Manual

variant_int

(PHP 5)

variant_int — Returns the integer portion of a variant

Descrição

mixed variant_int ( mixed $variant )

Gets the integer portion of a variant.

Parâmetros

variant

The variant.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

If variant is negative, then the first negative integer greater than or equal to the variant is returned, otherwise returns the integer portion of the value of variant.

Veja Também

  • variant_fix() - Returns the integer portion of a variant
  • variant_round() - Rounds a variant to the specified number of decimal places
  • floor() - Arredonda frações para baixo
  • ceil() - Arredonda frações para cima
  • round() - Arredonda um número

variant_imp
variant_mod
COM Funções


Divides two variants and returns only the remainder

variant_int
variant_mul
COM Funções
PHP Manual

variant_mod

(PHP 5)

variant_mod — Divides two variants and returns only the remainder

Descrição

mixed variant_mod ( mixed $left , mixed $right )

Divides left by right and returns the remainder.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the remainder of the division.

Veja Também

  • variant_div() - Returns the result from dividing two variants
  • variant_idiv() - Converts variants to integers and then returns the result from dividing them

variant_int
variant_mul
COM Funções


Multiplies the values of the two variants

variant_mod
variant_neg
COM Funções
PHP Manual

variant_mul

(PHP 5)

variant_mul — Multiplies the values of the two variants

Descrição

mixed variant_mul ( mixed $left , mixed $right )

Multiplies left by right.

Parâmetros

left

The left operand.

right

The right operand.

Boolean values are converted to -1 for FALSE and 0 for TRUE.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant Multiplication Rules
If | Then
Both expressions are of the string, date, character, boolean type | Multiplication
One expression is a string type and the other a character | Multiplication
One expression is numeric and the other is a string | Multiplication
Both expressions are numeric | Multiplication
Either expression is NULL | NULL is returned
Both expressions are empty | Empty string is returned

Veja Também

  • variant_div() - Returns the result from dividing two variants
  • variant_idiv() - Converts variants to integers and then returns the result from dividing them

variant_mod
variant_neg
COM Funções


Performs logical negation on a variant

variant_mul
variant_not
COM Funções
PHP Manual

variant_neg

(PHP 5)

variant_neg — Performs logical negation on a variant

Descrição

mixed variant_neg ( mixed $variant )

Performs logical negation of variant.

Parâmetros

variant

The variant.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the result of the logical negation.

variant_mul
variant_not
COM Funções


Performs bitwise not negation on a variant

variant_neg
variant_or
COM Funções
PHP Manual

variant_not

(PHP 5)

variant_not — Performs bitwise not negation on a variant

Descrição

mixed variant_not ( mixed $variant )

Performs bitwise not negation on variant and returns the result.

Parâmetros

variant

The variant.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the bitwise not negation. If variant is NULL, the result will also be NULL.

variant_neg
variant_or
COM Funções


Performs a logical disjunction on two variants

variant_not
variant_pow
COM Funções
PHP Manual

variant_or

(PHP 5)

variant_or — Performs a logical disjunction on two variants

Descrição

mixed variant_or ( mixed $left , mixed $right )

Performs a bitwise OR operation. Note that this is slightly different from a regular OR operation.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant OR Rules
If left is | If right is | then the result is
TRUE | TRUE | TRUE
TRUE | FALSE | TRUE
TRUE | NULL | TRUE
FALSE | TRUE | TRUE
FALSE | FALSE | FALSE
FALSE | NULL | NULL
NULL | TRUE | TRUE
NULL | FALSE | NULL
NULL | NULL | NULL

Veja Também

  • variant_and() - Performs a bitwise AND operation between two variants
  • variant_xor() - Performs a logical exclusion on two variants

variant_not
variant_pow
COM Funções


Returns the result of performing the power function with two variants

variant_or
variant_round
COM Funções
PHP Manual

variant_pow

(PHP 5)

variant_pow — Returns the result of performing the power function with two variants

Descrição

mixed variant_pow ( mixed $left , mixed $right )

Returns the result of left to the power of right.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the result of left to the power of right.

Veja Também

  • pow() - Potência

variant_or
variant_round
COM Funções


Rounds a variant to the specified number of decimal places

variant_pow
variant_set_type
COM Funções
PHP Manual

variant_round

(PHP 5)

variant_round — Rounds a variant to the specified number of decimal places

Descrição

mixed variant_round ( mixed $variant , int $decimals )

Returns the value of variant rounded to decimals decimal places.

Parâmetros

variant

The variant.

decimals

Number of decimal places.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Returns the rounded value.

Veja Também

  • round() - Arredonda um número

variant_pow
variant_set_type
COM Funções


Convert a variant into another type "in-place"

variant_round
variant_set
COM Funções
PHP Manual

variant_set_type

(PHP 5)

variant_set_type — Convert a variant into another type "in-place"

Descrição

void variant_set_type ( variant $variant , int $type )

This function is similar to variant_cast() except that the variant is modified "in-place"; no new variant is created. The parameters for this function have identical meaning to those of variant_cast().

Parâmetros

variant

The variant.

type

Valor Retornado

Não há valor retornado.

Veja Também

  • variant_cast() - Convert a variant into a new variant object of another type

variant_round
variant_set
COM Funções


Assigns a new value for a variant object

variant_set_type
variant_sub
COM Funções
PHP Manual

variant_set

(PHP 5)

variant_set — Assigns a new value for a variant object

Descrição

void variant_set ( variant $variant , mixed $value )

Converts value to a variant and assigns it to the variant object; no new variant object is created, and the old value of variant is freed/released.

Parâmetros

variant

The variant.

value

Valor Retornado

Não há valor retornado.

variant_set_type
variant_sub
COM Funções


Subtracts the value of the right variant from the left variant value

variant_set
variant_xor
COM Funções
PHP Manual

variant_sub

(PHP 5)

variant_sub — Subtracts the value of the right variant from the left variant value

Descrição

mixed variant_sub ( mixed $left , mixed $right )

Subtracts right from left.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant Subtraction Rules
If | Then
Both expressions are of the string type | Subtraction
One expression is a string type and the other a character | Subtraction
One expression is numeric and the other is a string | Subtraction.
Both expressions are numeric | Subtraction
Either expression is NULL | NULL is returned
Both expressions are empty | Empty string is returned

Veja Também

  • variant_add() - "Adds" two variant values together and returns the result

variant_set
variant_xor
COM Funções


Performs a logical exclusion on two variants

variant_sub
Printer
COM Funções
PHP Manual

variant_xor

(PHP 5)

variant_xor — Performs a logical exclusion on two variants

Descrição

mixed variant_xor ( mixed $left , mixed $right )

Performs a logical exclusion.

Parâmetros

left

The left operand.

right

The right operand.

Nota:

Assim como todas as funções aritméticas variant, os parâmetros para esta função podem ser qualquer um tipo nativo do PHP (integer, string, ponto flutuante, booleano ou NULL), ou uma instancia de uma classe COM, VARIANT ou DOTNET. Tipos nativos do PHP será convertido para variants usando a mesma regra como encontrado no construtor para a classe VARIANT. Objetos COM e DOTNET terão o valor de suas propriedades padrão obtidos e usados como valor variant.

As funções aritméticas variant são wrappers para as chamadas similarmente funções na biblioteca COM; para mais informação sobre estas funções, consulte a biblioteca MSDN. As funções PHP são nomeadas ligeiramente diferentes; por exemplo variant_add() no PHP corresponde a VarAdd() na documentação MSDN.

Valor Retornado

Variant XOR Rules
If left is | If right is | then the result is
TRUE | TRUE | FALSE
TRUE | FALSE | TRUE
FALSE | TRUE | TRUE
FALSE | FALSE | FALSE
NULL | NULL | NULL

Veja Também

  • variant_or() - Performs a logical disjunction on two variants
  • variant_and() - Performs a bitwise AND operation between two variants

variant_sub
Printer
COM Funções


Printer

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da Printer
    • printer_abort — Exclui o arquivo de impressão
    • printer_close — Fecha uma conexão aberta com uma impressora
    • printer_create_brush — Cria um novo pincel
    • printer_create_dc — Cria um novo new device context
    • printer_create_font — Cria uma nova fonte
    • printer_create_pen — Cria uma nova caneta
    • printer_delete_brush — Exclui um pincel
    • printer_delete_dc — Exclui um device context
    • printer_delete_font — Exclui uma fonte
    • printer_delete_pen — Exclui a caneta
    • printer_draw_bmp — Desenha um bitmap
    • printer_draw_chord — Draw a chord
    • printer_draw_elipse — Draw an ellipse
    • printer_draw_line — Desenha uma linha
    • printer_draw_pie — Draw a pie
    • printer_draw_rectangle — Draw a rectangle
    • printer_draw_roundrect — Draw a rectangle with rounded corners
    • printer_draw_text — Desenha um texto
    • printer_end_doc — Fecha o documento
    • printer_end_page — Fecha a página ativa
    • printer_get_option — Obtém dados de configuração da impressora
    • printer_list — Retorna uma matriz das impressoras anexadas ao servidor
    • printer_logical_fontheight — Obtém a altura lógica da fonte
    • printer_open — Abre uma conexão com a impressora
    • printer_select_brush — Seleciona um pincel
    • printer_select_font — Seleciona uma fonte
    • printer_select_pen — Seleciona uma caneta
    • printer_set_option — Configura a conexão com a impressora
    • printer_start_doc — Começa um novo documento
    • printer_start_page — Começa uma nova página
    • printer_write — Escreve daos na impressora
variant_xor
Introdução
Extensões Somente para Windows


Introdução

Estas funções somente estã disponíveis no Windows 9.x, ME, NT4 e 2000. Elas foram adicionadas no PHP 4.0.4.

Printer
Instalação/Configuração
Printer


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
Printer


Instalação

Esta extensÃ£o » PECL nÃ£o estÃ¡ embutida no PHP.

UsuÃ¡rios Windows precisa habilitar a php_printer.dll no php.ini para usar estas funÃ§Ãµes. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section.

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Opções de configuração da impressora
Nome | Padrão | Modificável | Changelog
printer.default_printer | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.6. Removido no PHP 4.1.1.
Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

Instalação
Tipos Resource
Instalação/Configuração


Tipos Resource

Esta extensão define manipuladores para uma conexão printer, para um brush, para um font e para um pen.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PRINTER_COPIES (integer)
PRINTER_MODE (integer)
PRINTER_TITLE (integer)
PRINTER_DEVICENAME (integer)
PRINTER_DRIVERVERSION (integer)
PRINTER_OUTPUT_FILE (integer)
PRINTER_RESOLUTION_Y (integer)
PRINTER_RESOLUTION_X (integer)
PRINTER_SCALE (integer)
PRINTER_BACKGROUND_COLOR (integer)
PRINTER_PAPER_LENGTH (integer)
PRINTER_PAPER_WIDTH (integer)
PRINTER_PAPER_FORMAT (integer)
PRINTER_FORMAT_CUSTOM (integer)
PRINTER_FORMAT_LETTER (integer)
PRINTER_FORMAT_LEGAL (integer)
PRINTER_FORMAT_A3 (integer)
PRINTER_FORMAT_A4 (integer)
PRINTER_FORMAT_A5 (integer)
PRINTER_FORMAT_B4 (integer)
PRINTER_FORMAT_B5 (integer)
PRINTER_FORMAT_FOLIO (integer)
PRINTER_ORIENTATION (integer)
PRINTER_ORIENTATION_PORTRAIT (integer)
PRINTER_ORIENTATION_LANDSCAPE (integer)
PRINTER_TEXT_COLOR (integer)
PRINTER_TEXT_ALIGN (integer)
PRINTER_TA_BASELINE (integer)
PRINTER_TA_BOTTOM (integer)
PRINTER_TA_TOP (integer)
PRINTER_TA_CENTER (integer)
PRINTER_TA_LEFT (integer)
PRINTER_TA_RIGHT (integer)
PRINTER_PEN_SOLID (integer)
PRINTER_PEN_DASH (integer)
PRINTER_PEN_DOT (integer)
PRINTER_PEN_DASHDOT (integer)
PRINTER_PEN_DASHDOTDOT (integer)
PRINTER_PEN_INVISIBLE (integer)
PRINTER_BRUSH_SOLID (integer)
PRINTER_BRUSH_CUSTOM (integer)
PRINTER_BRUSH_DIAGONAL (integer)
PRINTER_BRUSH_CROSS (integer)
PRINTER_BRUSH_DIAGCROSS (integer)
PRINTER_BRUSH_FDIAGONAL (integer)
PRINTER_BRUSH_HORIZONTAL (integer)
PRINTER_BRUSH_VERTICAL (integer)
PRINTER_FW_THIN (integer)
PRINTER_FW_ULTRALIGHT (integer)
PRINTER_FW_LIGHT (integer)
PRINTER_FW_NORMAL (integer)
PRINTER_FW_MEDIUM (integer)
PRINTER_FW_BOLD (integer)
PRINTER_FW_ULTRABOLD (integer)
PRINTER_FW_HEAVY (integer)
PRINTER_ENUM_LOCAL (integer)
PRINTER_ENUM_NAME (integer)
PRINTER_ENUM_SHARED (integer)
PRINTER_ENUM_DEFAULT (integer)
PRINTER_ENUM_CONNECTIONS (integer)
PRINTER_ENUM_NETWORK (integer)
PRINTER_ENUM_REMOTE (integer)
Tipos Resource
Funções da Printer
Printer


Funções da Printer

Índice

  • printer_abort — Exclui o arquivo de impressão
  • printer_close — Fecha uma conexão aberta com uma impressora
  • printer_create_brush — Cria um novo pincel
  • printer_create_dc — Cria um novo new device context
  • printer_create_font — Cria uma nova fonte
  • printer_create_pen — Cria uma nova caneta
  • printer_delete_brush — Exclui um pincel
  • printer_delete_dc — Exclui um device context
  • printer_delete_font — Exclui uma fonte
  • printer_delete_pen — Exclui a caneta
  • printer_draw_bmp — Desenha um bitmap
  • printer_draw_chord — Draw a chord
  • printer_draw_elipse — Draw an ellipse
  • printer_draw_line — Desenha uma linha
  • printer_draw_pie — Draw a pie
  • printer_draw_rectangle — Draw a rectangle
  • printer_draw_roundrect — Draw a rectangle with rounded corners
  • printer_draw_text — Desenha um texto
  • printer_end_doc — Fecha o documento
  • printer_end_page — Fecha a página ativa
  • printer_get_option — Obtém dados de configuração da impressora
  • printer_list — Retorna uma matriz das impressoras anexadas ao servidor
  • printer_logical_fontheight — Obtém a altura lógica da fonte
  • printer_open — Abre uma conexão com a impressora
  • printer_select_brush — Seleciona um pincel
  • printer_select_font — Seleciona uma fonte
  • printer_select_pen — Seleciona uma caneta
  • printer_set_option — Configura a conexão com a impressora
  • printer_start_doc — Começa um novo documento
  • printer_start_page — Começa uma nova página
  • printer_write — Escreve daos na impressora
Constantes pré-definidas
printer_abort
Printer


Exclui o arquivo de impressão

Funções da Printer
printer_close
Funções da Printer
PHP Manual

printer_abort

(PECL printer SVN)

printer_abort — Exclui o arquivo de impressão

Descrição

void printer_abort ( resource $handle )

Esta função exclui o arquivo de impressão.

handle deve ser um manipulador válido para uma impressora.

Exemplo #1 Exemplo printer_abort()

<?php
$handle = printer_open();
printer_abort($handle);
printer_close($handle);
?>
Funções da Printer
printer_close
Funções da Printer


Fecha uma conexão aberta com uma impressora

printer_abort
printer_create_brush
Funções da Printer
PHP Manual

printer_close

(PECL printer SVN)

printer_close — Fecha uma conexão aberta com uma impressora

Descrição

void printer_close ( resource $handle )

Esta função fecha a conexão com a impressora. printer_close() também fecha o device context ativo.

handle deve ser um manipulador válido para uma impressora.

Exemplo #1 Exemplo printer_close()

<?php
$handle = printer_open();
printer_close($handle);
?>
printer_abort
printer_create_brush
Funções da Printer


Cria um novo pincel

printer_close
printer_create_dc
Funções da Printer
PHP Manual

printer_create_brush

(PECL printer SVN)

printer_create_brush — Cria um novo pincel

Descrição

mixed printer_create_brush ( int $style , string $color )

A função cria um novo pincel e retorna um manipulador para ele. Um pincel é usado para prencher formas. Por exemplo, veja printer_select_brush(). color deve ser uma cor em RGB hexadecimal, ex. "000000" para preto, style deve ser uma das seguintes constantes:

  • PRINTER_BRUSH_SOLID: Cria um pincel com uma cor solida.
  • PRINTER_BRUSH_DIAGONAL: creates a brush with a 45-degree upward left-to-right hatch ( / ).
  • PRINTER_BRUSH_CROSS: creates a brush with a cross hatch ( + ).
  • PRINTER_BRUSH_DIAGCROSS: creates a brush with a 45 cross hatch ( x ).
  • PRINTER_BRUSH_FDIAGONAL: creates a brush with a 45-degree downward left-to-right hatch ( \ ).
  • PRINTER_BRUSH_HORIZONTAL: creates a brush with a horizontal hatch ( - ).
  • PRINTER_BRUSH_VERTICAL: creates a brush with a vertical hatch ( | ).
  • PRINTER_BRUSH_CUSTOM: creates a custom brush from an BMP file. The second parameter is used to specify the BMP instead of the RGB color code.

printer_close
printer_create_dc
Funções da Printer


Cria um novo new device context

printer_create_brush
printer_create_font
Funções da Printer
PHP Manual

printer_create_dc

(PECL printer SVN)

printer_create_dc — Cria um novo new device context

Descrição

void printer_create_dc ( resource $handle )

A função cria um novo. Um device context é usado para customizar objetos gráficos do documento. handle deve ser um manipulador válido para uma impressora.

Exemplo #1 Exemplo printer_create_dc()

<?php
$handle = printer_open();
printer_start_doc($handle);
printer_start_page($handle);

printer_create_dc($handle);
/* do some stuff with the dc */
printer_set_option($handle, PRINTER_TEXT_COLOR, "333333");
printer_draw_text($handle, 1, 1, "text");
printer_delete_dc($handle);

/* create another dc */
printer_create_dc($handle);
printer_set_option($handle, PRINTER_TEXT_COLOR, "000000");
printer_draw_text($handle, 1, 1, "text");
/* do some stuff with the dc */

printer_delete_dc($handle);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_create_brush
printer_create_font
Funções da Printer


Cria uma nova fonte

printer_create_dc
printer_create_pen
Funções da Printer
PHP Manual

printer_create_font

(PECL printer SVN)

printer_create_font — Cria uma nova fonte

Descrição

mixed printer_create_font ( string $face , int $height , int $width , int $font_weight , bool $italic , bool $underline , bool $strikeout , int $orientaton )

Esta função cria uma nova fonte e retorna um manipulador para ela. Uma fonte é usada para desenhar texto. Para um exemplo veja printer_select_font(). face deve ser uma string especificando a face da fonte. height especifica a altura da fonte, e width a largura da fonte. O font_weight especifica a espessura da fonte (400 é o normal), e pode ser uma das seguintes constantes pré-definidas.

  • PRINTER_FW_THIN: define a espessura para fino (100).
  • PRINTER_FW_ULTRALIGHT: define a espessura para ultra leve (200).
  • PRINTER_FW_LIGHT: define a espessura para leve (300).
  • PRINTER_FW_NORMAL: define a espessura para normal (400).
  • PRINTER_FW_MEDIUM: define a espessura para medium (500).
  • PRINTER_FW_BOLD: define a espessura para negrito (700).
  • PRINTER_FW_ULTRABOLD: define a espessura para ultra negrito (800).
  • PRINTER_FW_HEAVY: define a espessura para pesada (900).

italic pode ser TRUE ou FALSE, e define se a fonte deve ser itálica.

underline pode ser TRUE ou FALSE, e define se a fonte deve ser sublinhada.

strikeout pode ser TRUE ou FALSE, e define se a fonte deve ser riscada.

orientation especifica a rotação. Para um exemplo veja printer_select_font().

printer_create_dc
printer_create_pen
Funções da Printer


Cria uma nova caneta

printer_create_font
printer_delete_brush
Funções da Printer
PHP Manual

printer_create_pen

(PECL printer SVN)

printer_create_pen — Cria uma nova caneta

Descrição

mixed printer_create_pen ( int $style , int $width , string $color )

Esta função cria uma nova caneta e retorna um manipulador para ela. Uma caneta é usada para desenhar linhas e curvas. Para um exemplo veja printer_select_pen(). color deve ser uma cor em RGB hexadecimal, ex. "000000" para preto, width especifica a largura da caneta enquanto style deve ser uma das seguintes constantes:

  • PRINTER_PEN_SOLID: cria uma caneta solida.
  • PRINTER_PEN_DASH: cria uma caneta com traços.
  • PRINTER_PEN_DOT: cria uma caneta com pontos.
  • PRINTER_PEN_DASHDOT: cria uma caneta com traços e pontos.
  • PRINTER_PEN_DASHDOTDOT: cria uma canetas com traços e dois pontos.
  • PRINTER_PEN_INVISIBLE: cria uma caneta invisivel.

printer_create_font
printer_delete_brush
Funções da Printer


Exclui um pincel

printer_create_pen
printer_delete_dc
Funções da Printer
PHP Manual

printer_delete_brush

(PECL printer SVN)

printer_delete_brush — Exclui um pincel

Descrição

bool printer_delete_brush ( resource $handle )

Esta função exclui o pincel selecionado. Para um exemplo veja printer_select_brush(). Retorna TRUE em caso de sucesso ou FALSE em falhas. handle deve ser um manipulador válido para um pincel.

printer_create_pen
printer_delete_dc
Funções da Printer


Exclui um device context

printer_delete_brush
printer_delete_font
Funções da Printer
PHP Manual

printer_delete_dc

(PECL printer SVN)

printer_delete_dc — Exclui um device context

Descrição

bool printer_delete_dc ( resource $handle )

A função exclui um device context. Retorna TRUE em caso de sucesso ou FALSE em falhas. Para um exemplo veja printer_create_dc(). handle deve ser um manipulador válido para uma impressora.

printer_delete_brush
printer_delete_font
Funções da Printer


Exclui uma fonte

printer_delete_dc
printer_delete_pen
Funções da Printer
PHP Manual

printer_delete_font

(PECL printer SVN)

printer_delete_font — Exclui uma fonte

Descrição

bool printer_delete_font ( resource $handle )

Esta função exclui a fonte selecionada. Para um exemplo veja printer_select_font(). Retorna TRUE em caso de sucesso ou FALSE em falhas. handle deve ser um manipulador válido para a fonte.

printer_delete_dc
printer_delete_pen
Funções da Printer


Exclui a caneta

printer_delete_font
printer_draw_bmp
Funções da Printer
PHP Manual

printer_delete_pen

(PECL printer SVN)

printer_delete_pen — Exclui a caneta

Descrição

bool printer_delete_pen ( resource $handle )

Esta função exclui a caneta selecionada. Para um exemplo veja printer_select_pen(). Retorna TRUE em caso de sucesso ou FALSE em falhas. handle deve ser um manipilador válido para a caneta.

printer_delete_font
printer_draw_bmp
Funções da Printer


Desenha um bitmap

printer_delete_pen
printer_draw_chord
Funções da Printer
PHP Manual

printer_draw_bmp

(PECL printer SVN)

printer_draw_bmp — Desenha um bitmap

Descrição

void printer_draw_bmp ( resource $handle , string $filename , int $x , int $y )

Esta função simplesmente desenha um bitmap filename na posição x, y. handle deve ser um manipulador válido para uma impressora.

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo #1 Exemplo printer_draw_bmp()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

printer_draw_bmp($handle, "c:\\image.bmp", 1, 1);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_delete_pen
printer_draw_chord
Funções da Printer


Draw a chord

printer_draw_bmp
printer_draw_elipse
Funções da Printer
PHP Manual

printer_draw_chord

(PECL printer SVN)

printer_draw_chord — Draw a chord

Descrição

void printer_draw_chord ( resource $printer_handle , int $rec_x , int $rec_y , int $rec_x1 , int $rec_y1 , int $rad_x , int $rad_y , int $rad_x1 , int $rad_y1 )

The function simply draws an chord.

Parâmetros

printer_handle

printer_handle must be a valid printer handle.

rec_x

rec_x is the upper left x coordinate of the bounding rectangle.

rec_y

rec_y is the upper left y coordinate of the bounding rectangle.

rec_x1

rec_x1 is the lower right x coordinate of the bounding rectangle.

rec_y1

rec_y1 is the lower right y coordinate of the bounding rectangle.

rad_x

rad_x is x coordinate of the radial defining the beginning of the chord.

rad_y

rad_y is y coordinate of the radial defining the beginning of the chord.

rad_x1

rad_x1 is x coordinate of the radial defining the end of the chord.

rad_y1

rad_y1 is y coordinate of the radial defining the end of the chord.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 printer_draw_chord() example

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);

$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "2222FF");
printer_select_brush($handle, $brush);

printer_draw_chord($handle, 1, 1, 500, 500, 1, 1, 500, 1);

printer_delete_brush($brush);
printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>

printer_draw_bmp
printer_draw_elipse
Funções da Printer


Draw an ellipse

printer_draw_chord
printer_draw_line
Funções da Printer
PHP Manual

printer_draw_elipse

(PECL printer SVN)

printer_draw_elipse — Draw an ellipse

Descrição

void printer_draw_elipse ( resource $printer_handle , int $ul_x , int $ul_y , int $lr_x , int $lr_y )

The function draws an ellipse.

Parâmetros

printer_handle

printer_handle must be a valid printer handle.

ul_x

ul_x is the upper left x coordinate of the ellipse.

ul_y

ul_y is the upper left y coordinate of the ellipse.

lr_x

lr_x is the lower right x coordinate of the ellipse.

lr_y

lr_y is the lower right y coordinate of the ellipse.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 printer_draw_elipse() example

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);

$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "2222FF");
printer_select_brush($handle, $brush);

printer_draw_elipse($handle, 1, 1, 500, 500);

printer_delete_brush($brush);
printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>

printer_draw_chord
printer_draw_line
Funções da Printer


Desenha uma linha

printer_draw_elipse
printer_draw_pie
Funções da Printer
PHP Manual

printer_draw_line

(PECL printer SVN)

printer_draw_line — Desenha uma linha

Descrição

void printer_draw_line ( resource $printer_handle , int $from_x , int $from_y , int $to_x , int $to_y )

A função simplesmente desenha uma linha da posição from_x, from_y para a posição to_x, to_y usando a caneta selecionada. printer_handle deve ser um manipulador válido para uma impressora.

Exemplo #1 Exemplo printer_draw_line()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 30, "000000");
printer_select_pen($handle, $pen);

printer_draw_line($handle, 1, 10, 1000, 10);
printer_draw_line($handle, 1, 60, 500, 60);

printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_draw_elipse
printer_draw_pie
Funções da Printer


Draw a pie

printer_draw_line
printer_draw_rectangle
Funções da Printer
PHP Manual

printer_draw_pie

(PECL printer SVN)

printer_draw_pie — Draw a pie

Descrição

void printer_draw_pie ( resource $printer_handle , int $rec_x , int $rec_y , int $rec_x1 , int $rec_y1 , int $rad1_x , int $rad1_y , int $rad2_x , int $rad2_y )

The function draws an pie.

Parâmetros

printer_handle

printer_handle must be a valid printer handle.

rec_x

rec_x is the upper left x coordinate of the bounding rectangle.

rec_y

rec_y is the upper left y coordinate of the bounding rectangle.

rec_x1

rec_x1 is the lower right x coordinate of the bounding rectangle.

rec_y1

rec_y1 is the lower right y coordinate of the bounding rectangle.

rad1_x

rad1_x is x coordinate of the first radial's ending.

rad1_y

rad1_y is y coordinate of the first radial's ending.

rad2_x

rad2_x is x coordinate of the second radial's ending.

rad2_y

rad2_y is y coordinate of the second radial's ending.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 printer_draw_pie() example

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);

$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "2222FF");
printer_select_brush($handle, $brush);

printer_draw_pie($handle, 1, 1, 500, 500, 1, 1, 500, 1);

printer_delete_brush($brush);
printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>

printer_draw_line
printer_draw_rectangle
Funções da Printer


Draw a rectangle

printer_draw_pie
printer_draw_roundrect
Funções da Printer
PHP Manual

printer_draw_rectangle

(PECL printer SVN)

printer_draw_rectangle — Draw a rectangle

Descrição

void printer_draw_rectangle ( resource $printer_handle , int $ul_x , int $ul_y , int $lr_x , int $lr_y )

The function draws a rectangle.

Parâmetros

printer_handle

printer_handle must be a valid printer handle.

ul_x

ul_x is the upper left x coordinate of the rectangle.

ul_y

ul_y is the upper left y coordinate of the rectangle.

lr_x

lr_x is the lower right x coordinate of the rectangle.

lr_y

lr_y is the lower right y coordinate of the rectangle.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 printer_draw_rectangle() example

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);

$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "2222FF");
printer_select_brush($handle, $brush);

printer_draw_rectangle($handle, 1, 1, 500, 500);

printer_delete_brush($brush);
printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>

printer_draw_pie
printer_draw_roundrect
Funções da Printer


Draw a rectangle with rounded corners

printer_draw_rectangle
printer_draw_text
Funções da Printer
PHP Manual

printer_draw_roundrect

(PECL printer SVN)

printer_draw_roundrect — Draw a rectangle with rounded corners

Descrição

void printer_draw_roundrect ( resource $printer_handle , int $ul_x , int $ul_y , int $lr_x , int $lr_y , int $width , int $height )

The function draws a rectangle with rounded corners.

Parâmetros

printer_handle

printer_handle must be a valid printer handle.

ul_x

ul_x is the upper left x coordinate of the rectangle.

ul_y

ul_y is the upper left y coordinate of the rectangle.

lr_x

lr_x is the lower right x coordinate of the rectangle.

lr_y

lr_y is the lower right y coordinate of the rectangle.

width

width is the width of the ellipse.

height

height is the height of the ellipse.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 printer_draw_roundrect() example

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);

$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "2222FF");
printer_select_brush($handle, $brush);

printer_draw_roundrect($handle, 1, 1, 500, 500, 200, 200);

printer_delete_brush($brush);
printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>

printer_draw_rectangle
printer_draw_text
Funções da Printer


Desenha um texto

printer_draw_roundrect
printer_end_doc
Funções da Printer
PHP Manual

printer_draw_text

(PECL printer SVN)

printer_draw_text — Desenha um texto

Descrição

void printer_draw_text ( resource $printer_handle , string $text , int $x , int $y )

A função simplesmente desenha text na posição x, y usando a fonte selecionada. printer_handle deve ser um manipulador válido para uma impressora.

Exemplo #1 Exemplo printer_draw_text()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$font = printer_create_font("Arial", 72, 48, 400, false, false, false, 0);
printer_select_font($handle, $font);
printer_draw_text($handle, "test", 10, 10);
printer_delete_font($font);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_draw_roundrect
printer_end_doc
Funções da Printer


Fecha o documento

printer_draw_text
printer_end_page
Funções da Printer
PHP Manual

printer_end_doc

(PECL printer SVN)

printer_end_doc — Fecha o documento

Descrição

bool printer_end_doc ( resource $handle )

Fecha um novo documento na fila de impressão. O documento agora estará pronto para ser impresso. Para um exemplo veja printer_start_doc(). handle deve ser um manipulador válido para a impressora.

printer_draw_text
printer_end_page
Funções da Printer


Fecha a página ativa

printer_end_doc
printer_get_option
Funções da Printer
PHP Manual

printer_end_page

(PECL printer SVN)

printer_end_page — Fecha a página ativa

Descrição

bool printer_end_page ( resource $handle )

A função fecha a página ativa no documento ativo. Para um exemplo veja printer_start_doc(). handle deve ser um manipulador válido para a impressora.

printer_end_doc
printer_get_option
Funções da Printer


Obtém dados de configuração da impressora

printer_end_page
printer_list
Funções da Printer
PHP Manual

printer_get_option

(PECL printer SVN)

printer_get_option — Obtém dados de configuração da impressora

Descrição

mixed printer_get_option ( resource $handle , string $option )

A função obtém as definições de configuração de option. handle deve ser um manipulador válido para a impressora. De uma olhada em printer_set_option() para as definições que podem ser obtidas, adicionalmente as seguintes definições podem ser obtidas:

  • PRINTER_DEVICENAME retorna o devicename da impressora.
  • PRINTER_DRIVERVERSION retorna a versão do driver da impressora.

Exemplo #1 Exemplo printer_get_option()

<?php
$handle = printer_open();
echo printer_get_option($handle, PRINTER_DRIVERVERSION);
printer_close($handle);
?>
printer_end_page
printer_list
Funções da Printer


Retorna uma matriz das impressoras anexadas ao servidor

printer_get_option
printer_logical_fontheight
Funções da Printer
PHP Manual

printer_list

(PECL printer SVN)

printer_list — Retorna uma matriz das impressoras anexadas ao servidor

Descrição

array printer_list ( int $enumtype [, string $name [, int $level ]] )

Esta função lista as impressoras disponíveis e suas capacidades. level define o nível de informação que você quer. Pode ser 1,2,4 ou 5. enumtype deve ser uma das seguintes constantes pré-definidas:

  • PRINTER_ENUM_LOCAL: lista as impressoras instaladas localmente.
  • PRINTER_ENUM_NAME: lista as impressoras de name, pode ser um servidor, um domínio ou um servidor de impressão.
  • PRINTER_ENUM_SHARED: Este parâmetro não pode ser usado sozinho, deve ser utilizado em conjunto com outro, ex. PRINTER_ENUM_LOCAL para detectar impressoras localmente compartilhadas.
  • PRINTER_ENUM_DEFAULT: (Win9.x somente) lista a impressora padrão.
  • PRINTER_ENUM_CONNECTIONS: (WinNT/2000 somente) listas as impressoras com as quais o usuário fez conexões.
  • PRINTER_ENUM_NETWORK: (WinNT/2000 only) lista as impressoras de rede no dominio. Válido somente se level for 1.
  • PRINTER_ENUM_REMOTE: (WinNT/2000 only) lista as impressoras de rede e os servidores de impressão no dominio. Válido somente se level for 1.

Exemplo #1 Exemplo printer_list()

<?php
/* detecta impressora compartilhada localmente */
var_dump(printer_list(PRINTER_ENUM_LOCAL | PRINTER_ENUM_SHARED));
?>
printer_get_option
printer_logical_fontheight
Funções da Printer


Obtém a altura lógica da fonte

printer_list
printer_open
Funções da Printer
PHP Manual

printer_logical_fontheight

(PECL printer SVN)

printer_logical_fontheight — Obtém a altura lógica da fonte

Descrição

int printer_logical_fontheight ( resource $handle , int $height )

A função calcula a altura logica da fonte de height. handle deve ser um manipulador válido para a impressora.

Exemplo #1 Exemplo printer_logical_fontheight()

<?php
$handle = printer_open();
echo printer_logical_fontheight($handle, 72);
printer_close($handle);
?>
printer_list
printer_open
Funções da Printer


Abre uma conexão com a impressora

printer_logical_fontheight
printer_select_brush
Funções da Printer
PHP Manual

printer_open

(PECL printer SVN)

printer_open — Abre uma conexão com a impressora

Descrição

mixed printer_open ([ string $devicename ] )

Esta função tenta abrir uma conexão com a impressora devicename, e retorna um manipulador em caso de sucesso ou FALSE em caso de falha.

Se não for dado um parâmetro, ele tenta abrir uma conexão com a impressora padrão (se não especificado no php.ini como printer.default_printer, o PHP tenta detecta-lo).

printer_open() também inicia um device context.

Exemplo #1 Exemplo printer_open()

<?php
$handle = printer_open("HP Deskjet 930c");
$handle = printer_open();
?>
printer_logical_fontheight
printer_select_brush
Funções da Printer


Seleciona um pincel

printer_open
printer_select_font
Funções da Printer
PHP Manual

printer_select_brush

(PECL printer SVN)

printer_select_brush — Seleciona um pincel

Descrição

void printer_select_brush ( resource $printer_handle , resource $brush_handle )

A função seleciona um pincel como o objeto de desenho do device context atual. Um pincel é usado para prencher formas. Se você desenhar um retângulo o pincel é usado para desenhar a forma, enquanto a caneta é usado para desenhar a borda. Se você não tiver selecionado um pincel andes de desenhar formas, a forma não será prenchida. printer_handle deve ser um manipulador válido para uma impressora. brush_handle deve ser um manipulador válido para um pincel.

Exemplo #1 Exemplo printer_select_brush()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);
$pen = printer_create_pen(PRINTER_PEN_SOLID, 2, "000000");
printer_select_pen($handle, $pen);
$brush = printer_create_brush(PRINTER_BRUSH_CUSTOM, "c:\\brush.bmp");
printer_select_brush($handle, $brush);
printer_draw_rectangle($handle, 1, 1, 500, 500);
printer_delete_brush($brush);
$brush = printer_create_brush(PRINTER_BRUSH_SOLID, "000000");
printer_select_brush($handle, $brush);
printer_draw_rectangle($handle, 1, 501, 500, 1001);
printer_delete_brush($brush);
printer_delete_pen($pen);
printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_open
printer_select_font
Funções da Printer


Seleciona uma fonte

printer_select_brush
printer_select_pen
Funções da Printer
PHP Manual

printer_select_font

(PECL printer SVN)

printer_select_font — Seleciona uma fonte

Descrição

void printer_select_font ( resource $printer_handle , resource $font_handle )

A função seleciona uma fonte para desenhar texto. printer_handle deve ser um manipulador válido para uma impressora. font_handle deve ser um manipulador válido para uma fonte.

Exemplo #1 Exemplo printer_select_font()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$font = printer_create_font("Arial", 148, 76, PRINTER_FW_MEDIUM, false, false, false, -50);
printer_select_font($handle, $font);
printer_draw_text($handle, "PHP is simply cool", 40, 40);
printer_delete_font($font);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_select_brush
printer_select_pen
Funções da Printer


Seleciona uma caneta

printer_select_font
printer_set_option
Funções da Printer
PHP Manual

printer_select_pen

(PECL printer SVN)

printer_select_pen — Seleciona uma caneta

Descrição

void printer_select_pen ( resource $printer_handle , resource $pen_handle )

A função seleciona uma caneta como objeto de desenho do device context atual. Uma caneta é usada para desenhar linhas e curvas. Ex. se você desenhar uma linha simples a caneta é usada. Se você desenhar um retângulo a caneta é usada para desenhar as bordas, enquanto o pincel é usado para prencher a forma. Se você ão tiver selecionado uma caneta antes de desenhar uma forma, a forma não terá borda. printer_handle deve ser um manipulador válido para uma impressora. pen_handle deve ser um manipulador válido para uma caneta.

Exemplo #1 Exemplo printer_select_pen()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

$pen = printer_create_pen(PRINTER_PEN_SOLID, 30, "2222FF");
printer_select_pen($handle, $pen);

printer_draw_line($handle, 1, 60, 500, 60);

printer_delete_pen($pen);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_select_font
printer_set_option
Funções da Printer


Configura a conexão com a impressora

printer_select_pen
printer_start_doc
Funções da Printer
PHP Manual

printer_set_option

(PECL printer SVN)

printer_set_option — Configura a conexão com a impressora

Descrição

bool printer_set_option ( resource $handle , int $option , mixed $value )

A função define as seguintes opções para a conexão atual. handle deve ser um manipulador válido para uma impressora. Para o parâmetro option pode ser uma das seguintes constantes:

  • PRINTER_COPIES: define quantas copias devem ser imprimidas, value deve ser um inteiro.
  • PRINTER_MODE: especifica o tipo de dados (text, raw ou emf), value deve ser uma string.
  • PRINTER_TITLE: especifica o nome do documento, value deve ser uma string.
  • PRINTER_ORIENTATION: especifica a orientação do papel, value pode ser PRINTER_ORIENTATION_PORTRAIT ou PRINTER_ORIENTATION_LANDSCAPE
  • PRINTER_RESOLUTION_Y: especifica a resolução y em DPI, value deve ser um inteiro.
  • PRINTER_RESOLUTION_X: especifica a resolução x em DPI, value deve ser um inteiro.
  • PRINTER_PAPER_FORMAT: especifica um formato predefinido de papel, defina value para PRINTER_FORMAT_CUSTOM se você quer especificar um formato próprio com PRINTER_PAPER_WIDTH e PRINTER_PAPER_LENGTH. value pode ser uma das seguintes constantes.
    • PRINTER_FORMAT_CUSTOM: permite a você especificar um formato próprio de papel.
    • PRINTER_FORMAT_LETTER: especifica o formato padrão letter (8 1/2- por 11-polegadas).
    • PRINTER_FORMAT_LETTER: especifica o formato padrão legal (8 1/2- por 14-polegadas).
    • PRINTER_FORMAT_A3: especifica o formato padrão A3 (297- por 420-milímetros).
    • PRINTER_FORMAT_A4: especifica o formato padrão A4 (210- por 297-milímetros).
    • PRINTER_FORMAT_A5: especifica o formato padrão A5 (148- por 210-milímetros).
    • PRINTER_FORMAT_B4: especifica o formato padrão B4 (250- por 354-milímetros).
    • PRINTER_FORMAT_B5: especifica o formato padrão B5 (182- por 257-milímetros).
    • PRINTER_FORMAT_FOLIO: especifica o formato padrão FOLIO (8 1/2- por 13-polegadas).
  • PRINTER_PAPER_LENGTH: se PRINTER_PAPER_FORMAT estiver definido como PRINTER_FORMAT_CUSTOM, PRINTER_PAPER_LENGTH especifica o tamanho do papel em milímetros mm, value deve ser um inteiro.
  • PRINTER_PAPER_WIDTH: se PRINTER_PAPER_FORMAT estiver definido como PRINTER_FORMAT_CUSTOM, PRINTER_PAPER_WIDTH especifica a largura do papel em milímetros, value deve ser um inteiro.
  • PRINTER_SCALE: especifica o fator pelo qual a saída impressa será escalada. O tamanho da pagina é escalado a partir do tamanho físico pelo fator de escala/100. Por exemplo, se você definir a escala para 50, a saída será a metade do tamanho original. value deve ser um inteiro.
  • PRINTER_BACKGROUND_COLOR: especifica a cor do fundo para o device context atual, value deve ser uma string contendo a informação rgb no formato hexadecimal, ex. "005533".
  • PRINTER_TEXT_COLOR: especifica a cor do texto para o device context atual, value deve ser uma string contendo a informação rgb no formato hexadecimal, ex. "005533".
  • PRINTER_TEXT_ALIGN: especifica o alinhamento do texto para o device context atual, value pode ser uma combinação das seguintes constantes:
    • PRINTER_TA_BASELINE: o texto será alinhado na base da linha.
    • PRINTER_TA_BOTTOM: o texto será alinhado em baixo.
    • PRINTER_TA_TOP: o texto será alinhado em cima.
    • PRINTER_TA_CENTER: o texto será alinhado no centro.
    • PRINTER_TA_LEFT: o texto será alinhado na esquerda.
    • PRINTER_TA_RIGHT: o texto será alinhado na direita.

Exemplo #1 Exemplo printer_set_option()

<?php
$handle = printer_open();
printer_set_option($handle, PRINTER_SCALE, 75);
printer_set_option($handle, PRINTER_TEXT_ALIGN, PRINTER_TA_LEFT);
printer_close($handle);
?>
printer_select_pen
printer_start_doc
Funções da Printer


Começa um novo documento

printer_set_option
printer_start_page
Funções da Printer
PHP Manual

printer_start_doc

(PECL printer SVN)

printer_start_doc — Começa um novo documento

Descrição

bool printer_start_doc ( resource $handle [, string $document ] )

A função cria um novo documento na fila de impressão da impressora. Um documento pode conter múltiplas páginas, é usado para agendar o trabalho na fila de impressão. handle deve ser um manipulador válido para uma impressora. O parâmetro opcional document pode ser usado para definir um nome alternativo para o documento.

Exemplo #1 Exemplo printer_start_doc()

<?php
$handle = printer_open();
printer_start_doc($handle, "My Document");
printer_start_page($handle);

printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
?>
printer_set_option
printer_start_page
Funções da Printer


Começa uma nova página

printer_start_doc
printer_write
Funções da Printer
PHP Manual

printer_start_page

(PECL printer SVN)

printer_start_page — Começa uma nova página

Descrição

bool printer_start_page ( resource $printer_handle )

A função cria uma nova página no documento ativo. Para um exemplo veja printer_start_doc().

Parâmetros

printer_handle

printer_handle precisa ser um válido manipulador da printer.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

printer_start_doc
printer_write
Funções da Printer


Escreve daos na impressora

printer_start_page
W32api
Funções da Printer
PHP Manual

printer_write

(PECL printer SVN)

printer_write — Escreve daos na impressora

Descrição

bool printer_write ( resource $handle , string $content )

Escreve content diretamente para a impressora. Retorna TRUE em caso de sucesso ou FALSE em falhas.

handle deve ser um manipulador válido para a impressora.

Exemplo #1 Exemplo printer_write()

<?php
$handle = printer_open();
printer_write($handle, "Text to print");
printer_close($handle);
?>
printer_start_page
W32api
Funções da Printer


W32api

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da W32api
    • w32api_deftype — Define um tipo para ser usado com outras funções da w32api_functions
    • w32api_init_dtype — Cria uma instância do tipo de dado typename e atribui ao mesmo os valores passados
    • w32api_invoke_function — Invoca a função funcname com os argumentos passados após o nome da função
    • w32api_register_function — Registra função function_name da biblioteca com o PHP
    • w32api_set_call_method — Edita a chamada de método usada
printer_write
Introdução
Extensões Somente para Windows


Introdução

Essa extensão é uma API genérica de extensão para DLLs. Ela era originalmente escrita para permitir acesso à API Win32 a partir do PHP, embora você pode também acessar outras funções exportadas via outras DLLs.

Os tipos atualmente suportados são tipos genéticos do PHP (strings, booleans, floats, inteiros e nulls) e tipos que você define com a função w32api_deftype().

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.1.0.

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

W32api
Instalação/Configuração
W32api


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
W32api


Dependências

Essa extensão só funciona em sistemas Windows.

Instalação/Configuração
Instalação
Instalação/Configuração


Tipos Resource

Essa extensão define um tipo de recurso, usado por tipo definidos pelo usuário. O nome desse recurso é "dynaparm".

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

DC_MICROSOFT (integer)
DC_BORLAND (integer)
DC_CALL_CDECL (integer)
DC_CALL_STD (integer)
DC_RETVAL_MATH4 (integer)
DC_RETVAL_MATH8 (integer)
DC_CALL_STD_BO (integer)
DC_CALL_STD_MS (integer)
DC_CALL_STD_M8 (integer)
DC_FLAG_ARGPTR (integer)
Tipos Resource
Exemplos
W32api


Exemplos

Índice

Constantes pré-definidas
W32api


Exemplos
Funções da W32api
Exemplos
PHP Manual

Esse exemplo pega a quantidade de tempo que o sistema está executando e mostra em uma caixa de mensagem.

Exemplo #1 Pega o uptime e mostra em uma caixa de mensagem

<?php
// Define constants needed, taken from
// Visual Studio/Tools/Winapi/WIN32API.txt
define("MB_OK", 0);

// Load the extension in
dl("php_w32api.dll");

// Register the GetTickCount function from kernel32.dll
w32api_register_function("kernel32.dll",
                         "GetTickCount",
                         "long");

// Register the MessageBoxA function from User32.dll
w32api_register_function("User32.dll",
                         "MessageBoxA",
                         "long");

// Get uptime information
$ticks = GetTickCount();

// Convert it to a nicely displayable text
$secs  = floor($ticks / 1000);
$mins  = floor($secs / 60);
$hours = floor($mins / 60);

$str = sprintf("You have been using your computer for:" .
                "\r\n %d Milliseconds, or \r\n %d Seconds" .
                "or \r\n %d mins or\r\n %d hours %d mins.",
                $ticks,
                $secs,
                $mins,
                $hours,
                $mins - ($hours*60));

// Display a message box with only an OK button and the uptime text
MessageBoxA(NULL,
            $str,
            "Uptime Information",
            MB_OK);
?>
Exemplos
Funções da W32api
Exemplos


Funções da W32api

Índice

  • w32api_deftype — Define um tipo para ser usado com outras funções da w32api_functions
  • w32api_init_dtype — Cria uma instância do tipo de dado typename e atribui ao mesmo os valores passados
  • w32api_invoke_function — Invoca a função funcname com os argumentos passados após o nome da função
  • w32api_register_function — Registra função function_name da biblioteca com o PHP
  • w32api_set_call_method — Edita a chamada de método usada
w32api_deftype
W32api


Define um tipo para ser usado com outras funções da w32api_functions

Funções da W32api
w32api_init_dtype
Funções da W32api
PHP Manual

w32api_deftype

(PHP 4 >= 4.2.0)

w32api_deftype — Define um tipo para ser usado com outras funções da w32api_functions

Descrição

bool w32api_deftype ( string $typename , string $member1_type , string $member1_name [, string $... [, string $... ]] )

Se você quiser definir um tipo para uma chamada à API Win32, você precisa chamar essa função.

Parâmetros

typename

The name of the type.

member1_type

Um tipo membro pode ser um tipo definido pelo usuário. Nomes de tipos nativos devem ser fornecidos em letras minúsculas.

member1_name

O nome do membro de member1_type.

...

...

Essa função recebe 2n+1 argumentos, onde n é o número de membros que o tipo tem. Depois disso é o tipo do membro seguido pelos nome dos membos (em pares).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Funções da W32api
w32api_init_dtype
Funções da W32api


Cria uma instância do tipo de dado typename e atribui ao mesmo os valores passados

w32api_deftype
w32api_invoke_function
Funções da W32api
PHP Manual

w32api_init_dtype

(PHP 4 >= 4.2.0)

w32api_init_dtype — Cria uma instância do tipo de dado typename e atribui ao mesmo os valores passados

Descrição

resource w32api_init_dtype ( string $typename , mixed $value [, mixed $... ] )

Essa função cria uma instância do tipo de dado com nome typename, preenchendo-a com os valores do tipo de dado.

Parâmetros

typename

O parâmetro typename é sensível ao caso (distingue minúsculas de maiúsculas).

value

Você deve dar os valores na mesma ordem que você definiu o tipo de dado com a função w32api_deftype().

...

Valor Retornado

Retorna um recurso (resource) dynaparm.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

w32api_deftype
w32api_invoke_function
Funções da W32api


Invoca a função funcname com os argumentos passados após o nome da função

w32api_init_dtype
w32api_register_function
Funções da W32api
PHP Manual

w32api_invoke_function

(PHP 4 >= 4.2.0)

w32api_invoke_function — Invoca a função funcname com os argumentos passados após o nome da função

Descrição

mixed w32api_invoke_function ( string $funcname , mixed $argument [, mixed $... ] )

w32api_invoke_function() tenta encontrar uma função registrada previamente, passando os parâmetros que você der.

Parâmetros

funcname

O nome da função.

argument

Qualquer um dos argumentos pode ser qualquer tipo do PHP ou qualquer tipo definido por w32api_deftype(), conforme a necessidade.

...

Valor Retornado

O tipo de retorno é aquele que você definiu quando registrou a função, o valor é o que for retornado pela função em si.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

w32api_init_dtype
w32api_register_function
Funções da W32api


Registra função function_name da biblioteca com o PHP

w32api_invoke_function
w32api_set_call_method
Funções da W32api
PHP Manual

w32api_register_function

(PHP 4 >= 4.2.0)

w32api_register_function — Registra função function_name da biblioteca com o PHP

Descrição

bool w32api_register_function ( string $library , string $function_name , string $return_type )

Essa função tenta acha a função function_name em libary, e tenta importá-la no PHP.

Parâmetros

library

String com o nome da biblioteca.

function_name

String com o nome da função.

return_type

A função será registrada com o return_type dado. Esse tipo pode ser um tipo genérico do PHP, ou um tipo definido com w32api_deftype(). Todos os nomes de tipos são sensíveis ao caso (distingue minúsculas de maiúsculas). Nomes de tipos nativos devem ser passados com letras mínusculas.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

w32api_invoke_function
w32api_set_call_method
Funções da W32api


Edita a chamada de método usada

w32api_register_function
win32ps
Funções da W32api
PHP Manual

w32api_set_call_method

(PHP 4 >= 4.2.0)

w32api_set_call_method — Edita a chamada de método usada

Descrição

void w32api_set_call_method ( int $method )

Essa função configura o tipo de chamada de método.

Parâmetros

method

Pode ser DC_CALL_CDECL ou DC_CALL_STD (O padrão da extensão).

Valor Retornado

Não há valor retornado.

Notas

Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

w32api_register_function
win32ps
Funções da W32api


win32ps

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da win32ps
    • win32_ps_list_procs — Lista processos sendo executados
    • win32_ps_stat_mem — Estatística de utilização de memória
    • win32_ps_stat_proc — Estatísticas de um processo
w32api_set_call_method
Introdução
Extensões Somente para Windows


Introdução

A extensão win32ps é uma extensão específica para Windows que permite que o PHP obtenha estatísticas sobre processos e utilização de memória.

win32ps
Instalação/Configuração
win32ps


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
win32ps


Dependências

Windows NT, Windows 2000, Windows XP ou Windows Server 2003. Qualquer versão do Windows derivada do Windows NT deve ser compatível.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Instalando do PECL

  1. Você pode fazer download da php_win32ps.dll no » pecl4win.php.net.

  2. Copie a php_win32ps.dll para seu extension_dir.

  3. Carrege a extensão, adicionando essa linha no arquivo php.ini

    extension=php_win32ps.dll

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
win32ps


Exemplos

Índice

Constantes pré-definidas
win32ps


Exemplos
Funções da win32ps
Exemplos
PHP Manual

Exemplo #1 Estatísticas sobre o processo atual do PHP

<?php
print_r(win32_ps_stat_proc());
/*
    Array
    (
        [pid] => 936
        [exe] => D:\Daten\Source\php-5.1\Debug_TS\php.exe
        [mem] => Array
            (
                [page_fault_count] => 2062
                [peak_working_set_size] => 8396800
                [working_set_size] => 8396800
                [quota_peak_paged_pool_usage] => 32080
                [quota_paged_pool_usage] => 31876
                [quota_peak_non_paged_pool_usage] => 4240
                [quota_non_paged_pool_usage] => 3888
                [pagefile_usage] => 5865472
                [peak_pagefile_usage] => 5865472
            )

        [tms] => Array
            (
                [created] => 0.093
                [kernel] => 0.015
                [user] => 0.062
            )

    )
*/
?>

Exemplo #2 Estatísticas globais sobre utilização de memória

<?php
print_r(win32_ps_stat_mem());
/*
    Array
    (
        [load] => 37
        [unit] => 1024
        [total_phys] => 1048096
        [avail_phys] => 649960
        [total_pagefile] => 2521368
        [avail_pagefile] => 2237940
        [total_virtual] => 2097024
        [avail_virtual] => 2057848
    )
*/
?>

Exemplos
Funções da win32ps
Exemplos


Funções da win32ps

Índice

  • win32_ps_list_procs — Lista processos sendo executados
  • win32_ps_stat_mem — Estatística de utilização de memória
  • win32_ps_stat_proc — Estatísticas de um processo
win32_ps_list_procs
win32ps


Lista processos sendo executados

Funções da win32ps
win32_ps_stat_mem
Funções da win32ps
PHP Manual

win32_ps_list_procs

(PECL win32ps >= 1.0.1)

win32_ps_list_procs — Lista processos sendo executados

Descrição

array win32_ps_list_procs ( void )

Obtem estatísticas sobre todos os processos sendo executados.

Valor Retornado

Retorna FALSE em caso de falha ou um array com estatísticas dos processos como retornadas por win32_ps_stat_proc() para todos os processos sendo executados.

Veja Também

  • win32_ps_stat_proc() - Estatísticas de um processo

Funções da win32ps
win32_ps_stat_mem
Funções da win32ps


Estatística de utilização de memória

win32_ps_list_procs
win32_ps_stat_proc
Funções da win32ps
PHP Manual

win32_ps_stat_mem

(PECL win32ps >= 1.0.1)

win32_ps_stat_mem — Estatística de utilização de memória

Descrição

array win32_ps_stat_mem ( void )

Obtem estatísticas sobre utilização de memória no sistema.

Valor Retornado

Retorna FALSE em caso de falha, ou um array com as seguintes informações:

load

A percentagem de carga da memória física.

unit

Isso sempre é 1024, e indica que os seguintes valores tem como unidade 1024 bytes.

total_phys

A quantidade total de memória física.

avail_phys

A quantidade disponível de memória física.

total_pagefile

A quantidade total de memória paginável (memória física + swap).

avail_pagefile

A quantidade disponível de memória paginável (memória física + swap).

total_virtual

A quantidade total de memória virtual para um processo.

avail_virtual

A quantidade disponível de memória virtual para um processo.

win32_ps_list_procs
win32_ps_stat_proc
Funções da win32ps


Estatísticas de um processo

win32_ps_stat_mem
win32service
Funções da win32ps
PHP Manual

win32_ps_stat_proc

(PECL win32ps >= 1.0.1)

win32_ps_stat_proc — Estatísticas de um processo

Descrição

array win32_ps_stat_proc ([ int $pid ] )

Obtem estatísticas sobre o processo com ID pid.

Parâmetros

pid

O ID do processo a ser investigado. Se omitido, o ID do processo atual é usado.

Valor Retornado

Retorna FALSE em caso de falha, ou um array com as seguintes informações:

pid

O ID do processo.

exe

O caminho para o executável.

mem

Um array contendo informação sobre indicadores de utilização de memória: page_fault_count, peak_working_set_size, working_set_size, quota_peak_paged_pool_usage, quota_paged_pool_usage, quota_peak_non_paged_pool_usage, quota_non_paged_pool_usage, pagefile_usage and peak_pagefile_usage.

tms

Um array contendo informação com inidicadores de utilização de tempo de CPU: created, kernel e user.

Veja Também

  • win32_ps_list_procs() - Lista processos sendo executados

win32_ps_stat_mem
win32service
Funções da win32ps


win32service

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
    • Win32Service Service Type Bitmasks
    • Win32Service Service Status Constants
    • Win32Service Service Control Message Constants
    • Win32Service Service Control Message Accepted Bitmasks
    • Win32Service Service Start Type Constants
    • Win32Service Service Error Control Constants
    • Win32Service Service Flag Constants
    • Win32 Error Codes
    • Win32 Base Priority Classes
  • Exemplos
  • win32service Funções
    • win32_continue_service — Resumes a paused service
    • win32_create_service — Creates a new service entry in the SCM database
    • win32_delete_service — Deletes a service entry from the SCM database
    • win32_get_last_control_message — Returns the last control message that was sent to this service
    • win32_pause_service — Pauses a service
    • win32_query_service_status — Queries the status of a service
    • win32_set_service_status — Update the service status
    • win32_start_service_ctrl_dispatcher — Registers the script with the SCM, so that it can act as the service with the given name
    • win32_start_service — Starts a service
    • win32_stop_service — Stops a service
win32_ps_stat_proc
Introdução
Extensões Somente para Windows


Introdução

The win32service extension is a Windows specific extension that allows PHP to communicate with the Service Control Manager to start, stop, register and unregister services, and even allows your PHP scripts to run as a service.

win32service
Instalação/Configuração
win32service


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
win32service


Dependências

Windows NT, Windows 2000, Windows XP or Windows Server 2003. Any version of Windows derived from Windows NT should be compatible.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/win32service

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Índice

  • Win32Service Service Type Bitmasks
  • Win32Service Service Status Constants
  • Win32Service Service Control Message Constants
  • Win32Service Service Control Message Accepted Bitmasks
  • Win32Service Service Start Type Constants
  • Win32Service Service Error Control Constants
  • Win32Service Service Flag Constants
  • Win32 Error Codes
  • Win32 Base Priority Classes

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Tipos Resource
Win32Service Service Type Bitmasks
win32service


Win32Service Service Type Bitmasks

Constantes pré-definidas
Win32Service Service Status Constants
Constantes pré-definidas
PHP Manual
Win32Service Service Type Bitmasks
Constant | Value | Description
WIN32_SERVICE_WIN32_OWN_PROCESS | 0x00000010 | The service runs in its own process.
WIN32_SERVICE_INTERACTIVE_PROCESS | 0x00000100 | The service can interact with the desktop. This option is not available on Windows Vista or later.
WIN32_SERVICE_WIN32_OWN_PROCESS_INTERACTIVE | 0x00000110 | The service runs in its own process and can interact with the desktop. This option is not available on Windows Vista or later.
Constantes pré-definidas
Win32Service Service Status Constants
Constantes pré-definidas


Win32Service Service Status Constants

Win32Service Service Type Bitmasks
Win32Service Service Control Message Constants
Constantes pré-definidas
PHP Manual
Win32Service Service Status Constants
Constant | Value | Description
WIN32_SERVICE_CONTINUE_PENDING | 0x00000005 | The service continue is pending.
WIN32_SERVICE_PAUSE_PENDING | 0x00000006 | The service pause is pending.
WIN32_SERVICE_PAUSED | 0x00000007 | The service is paused.
WIN32_SERVICE_RUNNING | 0x00000004 | The service is running.
WIN32_SERVICE_START_PENDING | 0x00000002 | The service is starting.
WIN32_SERVICE_STOP_PENDING | 0x00000003 | The service is stopping.
WIN32_SERVICE_STOPPED | 0x00000001 | The service is not running.
Win32Service Service Type Bitmasks
Win32Service Service Control Message Constants
Constantes pré-definidas


Win32Service Service Control Message Constants

Win32Service Service Status Constants
Win32Service Service Control Message Accepted Bitmasks
Constantes pré-definidas
PHP Manual
Win32Service Service Control Message Constants
Constant | Value | Description
WIN32_SERVICE_CONTROL_CONTINUE | 0x00000003 | Notifies a paused service that it should resume.
WIN32_SERVICE_CONTROL_INTERROGATE | 0x00000004 | Notifies a service that it should report its current status information to the service control manager.
WIN32_SERVICE_CONTROL_PAUSE | 0x00000002 | Notifies a service that it should pause.
WIN32_SERVICE_CONTROL_PRESHUTDOWN | 0x0000000F | Notifies a service that the system will be shutting down. A service that handles this notification blocks system shutdown until the service stops or the preshutdown time-out interval expires. This value is not supported by Windows Server 2003 and Windows XP/2000.
WIN32_SERVICE_CONTROL_SHUTDOWN | 0x00000005 | Notifies a service that the system is shutting down so the service can perform cleanup tasks. If a service accepts this control code, it must stop after it performs its cleanup tasks. After the SCM sends this control code, it will not send other control codes to the service.
WIN32_SERVICE_CONTROL_STOP | 0x00000001 | Notifies a service that it should stop.
Win32Service Service Status Constants
Win32Service Service Control Message Accepted Bitmasks
Constantes pré-definidas


Win32Service Service Control Message Accepted Bitmasks

Win32Service Service Control Message Constants
Win32Service Service Start Type Constants
Constantes pré-definidas
PHP Manual
Win32Service Service Control Message Accepted Bitmasks
Constant | Value | Description
WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE | 0x00000002 | The service can be paused and continued. This control code allows the service to receive WIN32_SERVICE_CONTROL_PAUSE and WIN32_SERVICE_CONTROL_CONTINUE notifications.
WIN32_SERVICE_ACCEPT_PRESHUTDOWN | 0x00000100 | The service can perform preshutdown tasks. This control code enables the service to receive WIN32_SERVICE_CONTROL_PRESHUTDOWN notifications. This value is not supported by Windows Server 2003 and Windows XP/2000.
WIN32_SERVICE_ACCEPT_SHUTDOWN | 0x00000004 | The service is notified when system shutdown occurs. This control code allows the service to receive WIN32_SERVICE_CONTROL_SHUTDOWN notifications.
WIN32_SERVICE_ACCEPT_STOP | 0x00000001 | The service can be stopped. This control code allows the service to receive WIN32_SERVICE_CONTROL_STOP notifications.
Win32Service Service Control Message Constants
Win32Service Service Start Type Constants
Constantes pré-definidas


Win32Service Service Start Type Constants

Win32Service Service Control Message Accepted Bitmasks
Win32Service Service Error Control Constants
Constantes pré-definidas
PHP Manual
Win32Service Service Start Type Constants
Constant | Value | Description
WIN32_SERVICE_AUTO_START | 0x00000002 | A service started automatically by the service control manager during system startup.
WIN32_SERVICE_DEMAND_START | 0x00000003 | A service started by the service control manager when a process calls the StartService function.
WIN32_SERVICE_DISABLED | 0x00000004 | A service that cannot be started. Attempts to start the service result in the error code WIN32_ERROR_SERVICE_DISABLED.
Win32Service Service Control Message Accepted Bitmasks
Win32Service Service Error Control Constants
Constantes pré-definidas


Win32Service Service Error Control Constants

Win32Service Service Start Type Constants
Win32Service Service Flag Constants
Constantes pré-definidas
PHP Manual
Win32Service Service Error Control Constants
Constant | Value | Description
WIN32_SERVICE_ERROR_IGNORE | 0x00000000 | The startup program ignores the error and continues the startup operation.
WIN32_SERVICE_ERROR_NORMAL | 0x00000001 | The startup program logs the error in the event log but continues the startup operation.
Win32Service Service Start Type Constants
Win32Service Service Flag Constants
Constantes pré-definidas


Win32Service Service Flag Constants

Win32Service Service Error Control Constants
Win32 Error Codes
Constantes pré-definidas
PHP Manual
Win32Service Service Flag Constants
Constant | Value | Description
WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS | 0x00000001 | The service runs in a system process that must always be running.
Win32Service Service Error Control Constants
Win32 Error Codes
Constantes pré-definidas


Win32 Error Codes

Win32Service Service Flag Constants
Win32 Base Priority Classes
Constantes pré-definidas
PHP Manual
Win32 Error Codes
Constant | Value | Description
WIN32_ERROR_ACCESS_DENIED | 0x00000005 | The handle to the SCM database does not have the appropriate access rights.
WIN32_ERROR_CIRCULAR_DEPENDENCY | 0x00000423 | A circular service dependency was specified.
WIN32_ERROR_DATABASE_DOES_NOT_EXIST | 0x00000429 | The specified database does not exist.
WIN32_ERROR_DEPENDENT_SERVICES_RUNNING | 0x0000041B | The service cannot be stopped because other running services are dependent on it.
WIN32_ERROR_DUPLICATE_SERVICE_NAME | 0x00000436 | The display name already exists in the service control manager database either as a service name or as another display name.
WIN32_ERROR_FAILED_SERVICE_CONTROLLER_CONNECT | 0x00000427 | This error is returned if the program is being run as a console application rather than as a service. If the program will be run as a console application for debugging purposes, structure it such that service-specific code is not called.
WIN32_ERROR_INSUFFICIENT_BUFFER | 0x0000007A | The buffer is too small for the service status structure. Nothing was written to the structure.
WIN32_ERROR_INVALID_DATA | 0x0000000D | The specified service status structure is invalid.
WIN32_ERROR_INVALID_HANDLE | 0x00000006 | The handle to the specified service control manager database is invalid.
WIN32_ERROR_INVALID_LEVEL | 0x0000007C | The InfoLevel parameter contains an unsupported value.
WIN32_ERROR_INVALID_NAME | 0x0000007B | The specified service name is invalid.
WIN32_ERROR_INVALID_PARAMETER | 0x00000057 | A parameter that was specified is invalid.
WIN32_ERROR_INVALID_SERVICE_ACCOUNT | 0x00000421 | The user account name specified in the user parameter does not exist. See win32_create_service().
WIN32_ERROR_INVALID_SERVICE_CONTROL | 0x0000041C | The requested control code is not valid, or it is unacceptable to the service.
WIN32_ERROR_PATH_NOT_FOUND | 0x00000003 | The service binary file could not be found.
WIN32_ERROR_SERVICE_ALREADY_RUNNING | 0x00000420 | An instance of the service is already running.
WIN32_ERROR_SERVICE_CANNOT_ACCEPT_CTRL | 0x00000425 | The requested control code cannot be sent to the service because the state of the service is WIN32_SERVICE_STOPPED, WIN32_SERVICE_START_PENDING, or WIN32_SERVICE_STOP_PENDING.
WIN32_ERROR_SERVICE_DATABASE_LOCKED | 0x0000041F | The database is locked.
WIN32_ERROR_SERVICE_DEPENDENCY_DELETED | 0x00000433 | The service depends on a service that does not exist or has been marked for deletion.
WIN32_ERROR_SERVICE_DEPENDENCY_FAIL | 0x0000042C | The service depends on another service that has failed to start.
WIN32_ERROR_SERVICE_DISABLED | 0x00000422 | The service has been disabled.
WIN32_ERROR_SERVICE_DOES_NOT_EXIST | 0x00000424 | The specified service does not exist as an installed service.
WIN32_ERROR_SERVICE_EXISTS | 0x00000431 | The specified service already exists in this database.
WIN32_ERROR_SERVICE_LOGON_FAILED | 0x0000042D | The service did not start due to a logon failure. This error occurs if the service is configured to run under an account that does not have the "Log on as a service" right.
WIN32_ERROR_SERVICE_MARKED_FOR_DELETE | 0x00000430 | The specified service has already been marked for deletion.
WIN32_ERROR_SERVICE_NO_THREAD | 0x0000041E | A thread could not be created for the service.
WIN32_ERROR_SERVICE_NOT_ACTIVE | 0x00000426 | The service has not been started.
WIN32_ERROR_SERVICE_REQUEST_TIMEOUT | 0x0000041D | The process for the service was started, but it did not call StartServiceCtrlDispatcher, or the thread that called StartServiceCtrlDispatcher may be blocked in a control handler function.
WIN32_ERROR_SHUTDOWN_IN_PROGRESS | 0x0000045B | The system is shutting down; this function cannot be called.
WIN32_NO_ERROR | 0x00000000 | No error.
Win32Service Service Flag Constants
Win32 Base Priority Classes
Constantes pré-definidas


Win32 Base Priority Classes

Win32 Error Codes
Exemplos
Constantes pré-definidas
PHP Manual
Win32 Base Priority Classes
Constant | Value | Description
WIN32_ABOVE_NORMAL_PRIORITY_CLASS | 0x00008000 | Process that has priority above WIN32_NORMAL_PRIORITY_CLASS but below WIN32_HIGH_PRIORITY_CLASS.
WIN32_BELOW_NORMAL_PRIORITY_CLASS | 0x00004000 | Process that has priority above WIN32_IDLE_PRIORITY_CLASS but below WIN32_NORMAL_PRIORITY_CLASS.
WIN32_HIGH_PRIORITY_CLASS | 0x00000080 | Process that performs time-critical tasks that must be executed immediately. The threads of the process preempt the threads of normal or idle priority class processes. An example is the Task List, which must respond quickly when called by the user, regardless of the load on the operating system. Use extreme care when using the high-priority class, because a high-priority class application can use nearly all available CPU time.
WIN32_IDLE_PRIORITY_CLASS | 0x00000040 | Process whose threads run only when the system is idle. The threads of the process are preempted by the threads of any process running in a higher priority class. An example is a screen saver. The idle-priority class is inherited by child processes.
WIN32_NORMAL_PRIORITY_CLASS | 0x00000020 | Process with no special scheduling needs.
WIN32_REALTIME_PRIORITY_CLASS | 0x00000100 | Process that has the highest possible priority. The threads of the process preempt the threads of all other processes, including operating system processes performing important tasks. For example, a real-time process that executes for more than a very brief interval can cause disk caches not to flush or cause the mouse to be unresponsive.
Win32 Error Codes
Exemplos
Constantes pré-definidas


Exemplos

Exemplo #1 Registering a PHP script to run as a service

<?php
win32_create_service(array(
    'service'     => 'dummyphp',                                           # the name of your service
    'display'     => 'sample dummy PHP service',                           # short description
    'description' => 'This is a dummy Windows service created using PHP.', # long description
    'params'      => '"' . __FILE__ . '"  run',                            # path to the script and parameters
));
?>

Exemplo #2 Unregistering a service

<?php
win32_delete_service('dummyphp');
?>

Exemplo #3 Running as a service

<?php
if ($argv[1] == 'run') {
  win32_start_service_ctrl_dispatcher('dummyphp');

  while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
    # do your work here.
    # try not to take up more than 30 seconds before going around the loop
    # again
  }
}
?>

Win32 Base Priority Classes
win32service Funções
win32service


win32service Funções

Índice

  • win32_continue_service — Resumes a paused service
  • win32_create_service — Creates a new service entry in the SCM database
  • win32_delete_service — Deletes a service entry from the SCM database
  • win32_get_last_control_message — Returns the last control message that was sent to this service
  • win32_pause_service — Pauses a service
  • win32_query_service_status — Queries the status of a service
  • win32_set_service_status — Update the service status
  • win32_start_service_ctrl_dispatcher — Registers the script with the SCM, so that it can act as the service with the given name
  • win32_start_service — Starts a service
  • win32_stop_service — Stops a service
Exemplos
win32_continue_service
win32service


Resumes a paused service

win32service Funções
win32_create_service
win32service Funções
PHP Manual

win32_continue_service

(PECL win32service SVN)

win32_continue_service — Resumes a paused service

Descrição

int win32_continue_service ( string $servicename [, string $machine ] )

Resumes a paused, named service. Requires administrative privileges.

Parâmetros

servicename

The short name of the service.

machine

Optional machine name. If omitted, the local machine is used.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Veja Também

  • win32_start_service() - Starts a service
  • Win32 Error Codes

win32service Funções
win32_create_service
win32service Funções


Creates a new service entry in the SCM database

win32_continue_service
win32_delete_service
win32service Funções
PHP Manual

win32_create_service

(PECL win32service SVN)

win32_create_service — Creates a new service entry in the SCM database

Descrição

mixed win32_create_service ( array $details [, string $machine ] )

Parâmetros

details

An array of service details:

service

The short name of the service. This is the name that you will use to control the service using the net command. The service must be unique (no two services can share the same name), and, ideally, should avoid having spaces in the name.

display

The display name of the service. This is the name that you will see in the Services Applet.

description

The long description of the service. This is the description that you will see in the Services Applet.

user

The name of the user account under which you want the service to run. If omitted, the service will run as the LocalSystem account. If the username is specified, you must also provide a password.

password

The password that corresponds to the user.

path

The full path to the executable module that will be launched when the service is started. If omitted, the path to the current PHP process will be used.

params

Command line parameters to pass to the service when it starts. If you want to run a PHP script as the service, then the first parameter should be the full path to the PHP script that you intend to run. If the script name or path contains spaces, then wrap the full path to the PHP script with ".

load_order

Controls the load_order. This is not yet fully supported.

svc_type

Sets the service type. If omitted, the default value is WIN32_SERVICE_WIN32_OWN_PROCESS. Don't change this unless you know what you're doing.

start_type

Specifies how the service should be started. The default is WIN32_SERVICE_AUTO_START which means the service will be launched when the machine starts up.

error_control

Informs the SCM what it should do when it detects a problem with the service. The default is WIN32_SERVER_ERROR_IGNORE. Changing this value is not yet fully supported.

delayed_start

If delayed_start is set to TRUE, then this will inform the SCM that this service should be started after other auto-start services are started plus a short delay.

Any service can be marked as a delayed auto-start service; however, this setting has no effect unless the service's start_type is WIN32_SERVICE_AUTO_START.

This setting is only applicable on Windows Vista and Windows Server 2008 or greater.

base_priority

To reduce the impact on processor utilisation, it may be necessary to set a base priority lower than normal.

The base_priority can be set to one of the constants define in Win32 Base Priority Classes.

machine

The optional machine name on which you want to create a service. If omitted, it will use the local machine.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Exemplos

Exemplo #1 A win32_create_service() example

Create a service with the short name 'dummyphp'.

<?php
$x = win32_create_service(array(
    'service'     => 'dummyphp',                                           # the name of your service
    'display'     => 'sample dummy PHP service',                           # short description
    'description' => 'This is a dummy Windows service created using PHP.', # long description
    'params'      => '"' . __FILE__ . '"  run',                            # path to the script and parameters
));
debug_zval_dump($x);
?>

Veja Também

  • win32_delete_service() - Deletes a service entry from the SCM database
  • Win32 Base Priority Classes
  • Win32 Error Codes

win32_continue_service
win32_delete_service
win32service Funções


Deletes a service entry from the SCM database

win32_create_service
win32_get_last_control_message
win32service Funções
PHP Manual

win32_delete_service

(PECL win32service SVN)

win32_delete_service — Deletes a service entry from the SCM database

Descrição

mixed win32_delete_service ( string $servicename [, string $machine ] )

Attempts to delete a service from the SCM database. Administrative privileges are required for this to succeed.

This function really just marks the service for deletion. If other processes (such as the Services Applet) are open, then the deletion will be deferred until those applications are closed. If a service is marked for deletion, further attempts to delete it will fail, and attempts to create a new service with that name will also fail.

Parâmetros

servicename

The short name of the service.

machine

The optional machine name. If omitted, the local machine will be used.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Exemplos

Exemplo #1 A win32_delete_service() example

Deletes the dummyphp service.

<?php
win32_delete_service('dummyphp');
?>

Veja Também

  • win32_create_service() - Creates a new service entry in the SCM database
  • Win32 Error Codes

win32_create_service
win32_get_last_control_message
win32service Funções


Returns the last control message that was sent to this service

win32_delete_service
win32_pause_service
win32service Funções
PHP Manual

win32_get_last_control_message

(PECL win32service SVN)

win32_get_last_control_message — Returns the last control message that was sent to this service

Descrição

int win32_get_last_control_message ( void )

Returns the control code that was last sent to this service process. When running as a service you should periodically check this to determine if your service needs to stop running.

Valor Retornado

Returns a control constant which will be one of the Win32Service Service Control Message Constants: WIN32_SERVICE_CONTROL_CONTINUE, WIN32_SERVICE_CONTROL_INTERROGATE, WIN32_SERVICE_CONTROL_PAUSE, WIN32_SERVICE_CONTROL_PRESHUTDOWN, WIN32_SERVICE_CONTROL_SHUTDOWN, WIN32_SERVICE_CONTROL_STOP.

Veja Também

  • win32_start_service_ctrl_dispatcher() - Registers the script with the SCM, so that it can act as the service with the given name
  • Win32Service Service Control Message Constants

win32_delete_service
win32_pause_service
win32service Funções


Pauses a service

win32_get_last_control_message
win32_query_service_status
win32service Funções
PHP Manual

win32_pause_service

(PECL win32service SVN)

win32_pause_service — Pauses a service

Descrição

int win32_pause_service ( string $servicename [, string $machine ] )

Pauses a named service. Requires administrative privileges.

Parâmetros

servicename

The short name of the service.

machine

Optional machine name. If omitted, the local machine is used.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Veja Também

  • win32_start_service() - Starts a service
  • Win32 Error Codes

win32_get_last_control_message
win32_query_service_status
win32service Funções


Queries the status of a service

win32_pause_service
win32_set_service_status
win32service Funções
PHP Manual

win32_query_service_status

(PECL win32service SVN)

win32_query_service_status — Queries the status of a service

Descrição

mixed win32_query_service_status ( string $servicename [, string $machine ] )

Queries the current status for a service, returning an array of information.

Parâmetros

servicename

The short name of the service.

machine

The optional machine name. If omitted, the local machine will be used.

Valor Retornado

Returns an array consisting of the following information on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

ServiceType

The dwServiceType. See Win32Service Service Type Bitmasks.

CurrentState

The dwCurrentState. See Win32Service Service Status Constants.

ControlsAccepted

Which service controls are accepted by the service. See Win32Service Service Control Message Accepted Bitmasks.

Win32ExitCode

If the service exited, the return code from the process.

ServiceSpecificExitCode

If the service exited with an error condition, the service specific code that is logged in the event log is visible here.

CheckPoint

If the service is shutting down, holds the current check point number. This is used by the SCM as a kind of heart-beat to detect a wedged service process. The value of the check point is best interpreted in conjunction with the WaitHint value.

WaitHint

If the service is shutting down it will set WaitHint to a checkpoint value that will indicate 100% completion. This can be used to implement a progress indicator.

ProcessId

The Windows process identifier. If 0, the process is not running.

ServiceFlags

The dwServiceFlags. See Win32Service Service Service Flag Constants.

Veja Também

  • Win32Service Predefined Constants

win32_pause_service
win32_set_service_status
win32service Funções


Update the service status

win32_query_service_status
win32_start_service_ctrl_dispatcher
win32service Funções
PHP Manual

win32_set_service_status

(PECL win32service SVN)

win32_set_service_status — Update the service status

Descrição

bool win32_set_service_status ( int $status [, int $checkpoint = 0 ] )

Informs the SCM of the current status of a running service. This call is only valid for a running service process.

Parâmetros

status

The service status code, one of WIN32_SERVICE_RUNNING, WIN32_SERVICE_STOPPED, WIN32_SERVICE_STOP_PENDING, WIN32_SERVICE_START_PENDING, WIN32_SERVICE_CONTINUE_PENDING, WIN32_SERVICE_PAUSE_PENDING, WIN32_SERVICE_PAUSED.

checkpoint

The checkpoint value the service increments periodically to report its progress during a lengthy start, stop, pause, or continue operation. For example, the service should increment this value as it completes each step of its initialization when it is starting up.

The checkpoint is only valid when the status is one of WIN32_SERVICE_STOP_PENDING, WIN32_SERVICE_START_PENDING, WIN32_SERVICE_CONTINUE_PENDING or WIN32_SERVICE_PAUSE_PENDING.

Valor Retornado

Returns TRUE on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Veja Também

  • win32_start_service_ctrl_dispatcher() - Registers the script with the SCM, so that it can act as the service with the given name
  • Win32Service Service Status Constants

win32_query_service_status
win32_start_service_ctrl_dispatcher
win32service Funções


Registers the script with the SCM, so that it can act as the service with the given name

win32_set_service_status
win32_start_service
win32service Funções
PHP Manual

win32_start_service_ctrl_dispatcher

(PECL win32service SVN)

win32_start_service_ctrl_dispatcher — Registers the script with the SCM, so that it can act as the service with the given name

Descrição

mixed win32_start_service_ctrl_dispatcher ( string $name )

When launched via the Service Control Manager, a service process is required to "check-in" with it to establish service monitoring and communication facilities. This function performs the check-in by spawning a thread to handle the lower-level communication with the service control manager.

Once started, the service process should do 2 things. The first is to tell the Service Control Manager that the service is running. This is achieved by calling win32_set_service_status() with the WIN32_SERVICE_RUNNING constant. If you need to perform some lengthy process before the service is actually running, then you can use the WIN32_SERVICE_START_PENDING constant. The second is to continue to check-in with the service control manager so that it can determine if it should terminate. This is achieved by periodically calling win32_get_last_control_message() and handling the return code appropriately.

Parâmetros

name

The short-name of the service, as registered by win32_create_service().

Valor Retornado

Returns TRUE on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Exemplos

Exemplo #1 A win32_start_service_ctrl_dispatcher() example

Check if the service is runnig under the SCM.

<?php
if (!win32_start_service_ctrl_dispatcher('dummyphp')) {
  die("I'm probably not running under the service control manager");
}

win32_set_service_status(WIN32_SERVICE_START_PENDING);

// Some lengthy process to get this service up and running.

win32_set_service_status(WIN32_SERVICE_RUNNING);

while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
  # do some work here, trying not to take more than around 30 seconds
  # before coming back into the loop again
}
?>

Veja Também

  • win32_set_service_status() - Update the service status
  • win32_get_last_control_message() - Returns the last control message that was sent to this service
  • Win32 Error Codes

win32_set_service_status
win32_start_service
win32service Funções


Starts a service

win32_start_service_ctrl_dispatcher
win32_stop_service
win32service Funções
PHP Manual

win32_start_service

(PECL win32service SVN)

win32_start_service — Starts a service

Descrição

int win32_start_service ( string $servicename [, string $machine ] )

Attempts to start the named service. Usually requires administrative privileges.

Parâmetros

servicename

The short name of the service.

machine

Optional machine name. If omitted, the local machine is used.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Veja Também

  • win32_stop_service() - Stops a service
  • Win32 Error Codes

win32_start_service_ctrl_dispatcher
win32_stop_service
win32service Funções


Stops a service

win32_start_service
Manipulação de XML
win32service Funções
PHP Manual

win32_stop_service

(PECL win32service SVN)

win32_stop_service — Stops a service

Descrição

int win32_stop_service ( string $servicename [, string $machine ] )

Stops a named service. Requires administrative privileges.

Parâmetros

servicename

The short name of the service.

machine

Optional machine name. If omitted, the local machine is used.

Valor Retornado

Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.

Veja Também

  • win32_start_service() - Starts a service
  • Win32 Error Codes

win32_start_service
Manipulação de XML
win32service Funções


Manipulação de XML

  • DOM — Document Object Model
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • DOMAttr — The DOMAttr class
    • DOMCharacterData — The DOMCharacterData class
    • DOMComment — The DOMComment class
    • DOMDocument — The DOMDocument class
    • DOMDocumentFragment — The DOMDocumentFragment class
    • DOMDocumentType — The DOMDocumentType class
    • DOMElement — The DOMElement class
    • DOMEntity — The DOMEntity class
    • DOMEntityReference — The DOMEntityReference class
    • DOMException — The DOMException class
    • DOMImplementation — The DOMImplementation class
    • DOMNamedNodeMap — The DOMNamedNodeMap class
    • DOMNode — The DOMNode class
    • DOMNodeList — The DOMNodeList class
    • DOMNotation — The DOMNotation class
    • DOMProcessingInstruction — The DOMProcessingInstruction class
    • DOMText — The DOMText class
    • DOMXPath — The DOMXPath class
    • DOM Funções
  • DOM XML
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • DOM XML Funções
  • libxml
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • libXMLError — The libXMLError class
    • Funções da libxml
  • qtdom
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Funções da qtdom
  • SDO — Service Data Objects
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Limitations
    • Exemplos
    • SDO Funções
  • SDO-DAS-Relational — SDO Relational Data Access Service
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Limitations
    • SDO-DAS-Relational Funções
  • SDO DAS XML — SDO XML Data Access Service
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • SDO DAS XML Funções
  • SimpleXML
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • SimpleXMLElement — The SimpleXMLElement class
    • Funções da SimpleXML
  • WDDX
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Funções da WDDX
  • XML Parser
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Manipuladores (handlers) de Evento
    • Case Folding
    • Códigos de Erro
    • Character Encoding
    • Exemplos
    • Funções para analisar XML
  • XMLReader
    • Introdução
    • Instalação/Configuração
    • XMLReader — The XMLReader class
  • XMLWriter
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • XMLWriter Funções
  • XSL
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • XSLTProcessor — A classe XSLTProcessor
  • XSLT (PHP4)
    • Introdução
    • Instalação/Configuração
    • Constantes pré-definidas
    • XSLT (PHP4) Funções
win32_stop_service
DOM
Referência das Funções


Document Object Model

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • DOMAttr — The DOMAttr class
    • DOMAttr::__construct — Creates a new DOMAttr object
    • DOMAttr::isId — Checks if attribute is a defined ID
  • DOMCharacterData — The DOMCharacterData class
    • DOMCharacterData::appendData — Append the string to the end of the character data of the node
    • DOMCharacterData::deleteData — Remove a range of characters from the node
    • DOMCharacterData::insertData — Insert a string at the specified 16-bit unit offset
    • DOMCharacterData::replaceData — Replace a substring within the DOMCharacterData node
    • DOMCharacterData::substringData — Extracts a range of data from the node
  • DOMComment — The DOMComment class
    • DOMComment::__construct — Creates a new DOMComment object
  • DOMDocument — The DOMDocument class
    • DOMDocument::__construct — Creates a new DOMDocument object
    • DOMDocument::createAttribute — Create new attribute
    • DOMDocument::createAttributeNS — Create new attribute node with an associated namespace
    • DOMDocument::createCDATASection — Create new cdata node
    • DOMDocument::createComment — Create new comment node
    • DOMDocument::createDocumentFragment — Create new document fragment
    • DOMDocument::createElement — Create new element node
    • DOMDocument::createElementNS — Create new element node with an associated namespace
    • DOMDocument::createEntityReference — Create new entity reference node
    • DOMDocument::createProcessingInstruction — Creates new PI node
    • DOMDocument::createTextNode — Create new text node
    • DOMDocument::getElementById — Searches for an element with a certain id
    • DOMDocument::getElementsByTagName — Searches for all elements with given tag name
    • DOMDocument::getElementsByTagNameNS — Searches for all elements with given tag name in specified namespace
    • DOMDocument::importNode — Import node into current document
    • DOMDocument::load — Load XML from a file
    • DOMDocument::loadHTML — Load HTML from a string
    • DOMDocument::loadHTMLFile — Load HTML from a file
    • DOMDocument::loadXML — Load XML from a string
    • DOMDocument::normalizeDocument — Normalizes the document
    • DOMDocument::registerNodeClass — Register extended class used to create base node type
    • DOMDocument::relaxNGValidate — Performs relaxNG validation on the document
    • DOMDocument::relaxNGValidateSource — Performs relaxNG validation on the document
    • DOMDocument::save — Dumps the internal XML tree back into a file
    • DOMDocument::saveHTML — Dumps the internal document into a string using HTML formatting
    • DOMDocument::saveHTMLFile — Dumps the internal document into a file using HTML formatting
    • DOMDocument::saveXML — Dumps the internal XML tree back into a string
    • DOMDocument::schemaValidate — Validates a document based on a schema
    • DOMDocument::schemaValidateSource — Validates a document based on a schema
    • DOMDocument::validate — Validates the document based on its DTD
    • DOMDocument::xinclude — Substitutes XIncludes in a DOMDocument Object
  • DOMDocumentFragment — The DOMDocumentFragment class
    • DOMDocumentFragment::appendXML — Append raw XML data
  • DOMDocumentType — The DOMDocumentType class
  • DOMElement — The DOMElement class
    • DOMElement::__construct — Creates a new DOMElement object
    • DOMElement::getAttribute — Returns value of attribute
    • DOMElement::getAttributeNode — Returns attribute node
    • DOMElement::getAttributeNodeNS — Returns attribute node
    • DOMElement::getAttributeNS — Returns value of attribute
    • DOMElement::getElementsByTagName — Gets elements by tagname
    • DOMElement::getElementsByTagNameNS — Get elements by namespaceURI and localName
    • DOMElement::hasAttribute — Checks to see if attribute exists
    • DOMElement::hasAttributeNS — Checks to see if attribute exists
    • DOMElement::removeAttribute — Removes attribute
    • DOMElement::removeAttributeNode — Removes attribute
    • DOMElement::removeAttributeNS — Removes attribute
    • DOMElement::setAttribute — Adds new attribute
    • DOMElement::setAttributeNode — Adds new attribute node to element
    • DOMElement::setAttributeNodeNS — Adds new attribute node to element
    • DOMElement::setAttributeNS — Adds new attribute
    • DOMElement::setIdAttribute — Declares the attribute specified by name to be of type ID
    • DOMElement::setIdAttributeNode — Declares the attribute specified by node to be of type ID
    • DOMElement::setIdAttributeNS — Declares the attribute specified by local name and namespace URI to be of type ID
  • DOMEntity — The DOMEntity class
  • DOMEntityReference — The DOMEntityReference class
    • DOMEntityReference::__construct — Creates a new DOMEntityReference object
  • DOMException — The DOMException class
  • DOMImplementation — The DOMImplementation class
    • DOMImplementation::__construct — Creates a new DOMImplementation object
    • DOMImplementation::createDocument — Creates a DOMDocument object of the specified type with its document element
    • DOMImplementation::createDocumentType — Creates an empty DOMDocumentType object
    • DOMImplementation::hasFeature — Test if the DOM implementation implements a specific feature
  • DOMNamedNodeMap — The DOMNamedNodeMap class
    • DOMNamedNodeMap::getNamedItem — Retrieves a node specified by name
    • DOMNamedNodeMap::getNamedItemNS — Retrieves a node specified by local name and namespace URI
    • DOMNamedNodeMap::item — Retrieves a node specified by index
  • DOMNode — The DOMNode class
    • DOMNode::appendChild — Adds new child at the end of the children
    • DOMNode::cloneNode — Clones a node
    • DOMNode::getLineNo — Get line number for a node
    • DOMNode::hasAttributes — Checks if node has attributes
    • DOMNode::hasChildNodes — Checks if node has children
    • DOMNode::insertBefore — Adds a new child before a reference node
    • DOMNode::isDefaultNamespace — Checks if the specified namespaceURI is the default namespace or not
    • DOMNode::isSameNode — Indicates if two nodes are the same node
    • DOMNode::isSupported — Checks if feature is supported for specified version
    • DOMNode::lookupNamespaceURI — Gets the namespace URI of the node based on the prefix
    • DOMNode::lookupPrefix — Gets the namespace prefix of the node based on the namespace URI
    • DOMNode::normalize — Normalizes the node
    • DOMNode::removeChild — Removes child from list of children
    • DOMNode::replaceChild — Replaces a child
  • DOMNodeList — The DOMNodeList class
    • DOMNodelist::item — Retrieves a node specified by index
  • DOMNotation — The DOMNotation class
  • DOMProcessingInstruction — The DOMProcessingInstruction class
    • DOMProcessingInstruction::__construct — Creates a new DOMProcessingInstruction object
  • DOMText — The DOMText class
    • DOMText::__construct — Creates a new DOMText object
    • DOMText::isWhitespaceInElementContent — Indicates whether this text node contains whitespace
    • DOMText::splitText — Breaks this node into two nodes at the specified offset
  • DOMXPath — The DOMXPath class
    • DOMXPath::__construct — Creates a new DOMXPath object
    • DOMXPath::evaluate — Evaluates the given XPath expression and returns a typed result if possible.
    • DOMXPath::query — Evaluates the given XPath expression
    • DOMXPath::registerNamespace — Registers the namespace with the DOMXPath object
    • DOMXPath::registerPhpFunctions — Register PHP functions as XPath functions
  • DOM Funções
    • dom_import_simplexml — Gets a DOMElement object from a SimpleXMLElement object
Manipulação de XML
Introdução
Manipulação de XML


Introdução

The DOM extension allows you to operate on XML documents through the DOM API with PHP 5.

For PHP 4, use DOM XML.

Nota:

The DOM extension uses UTF-8 encoding. Use utf8_encode() and utf8_decode() to work with texts in ISO-8859-1 encoding or Iconv for other encodings.

DOM
Instalação/Configuração
DOM


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
DOM


Instalação

This extension is enabled by default. It may be disabled by using the following option at compile time: --disable-dom

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XML constants
Constant | Value | Description
XML_ELEMENT_NODE (integer) | 1 | Node is a DOMElement
XML_ATTRIBUTE_NODE (integer) | 2 | Node is a DOMAttr
XML_TEXT_NODE (integer) | 3 | Node is a DOMText
XML_CDATA_SECTION_NODE (integer) | 4 | Node is a DOMCharacterData
XML_ENTITY_REF_NODE (integer) | 5 | Node is a DOMEntityReference
XML_ENTITY_NODE (integer) | 6 | Node is a DOMEntity
XML_PI_NODE (integer) | 7 | Node is a DOMProcessingInstruction
XML_COMMENT_NODE (integer) | 8 | Node is a DOMComment
XML_DOCUMENT_NODE (integer) | 9 | Node is a DOMDocument
XML_DOCUMENT_TYPE_NODE (integer) | 10 | Node is a DOMDocumentType
XML_DOCUMENT_FRAG_NODE (integer) | 11 | Node is a DOMDocumentFragment
XML_NOTATION_NODE (integer) | 12 | Node is a DOMNotation
XML_HTML_DOCUMENT_NODE (integer) | 13 |
XML_DTD_NODE (integer) | 14 |
XML_ELEMENT_DECL_NODE (integer) | 15 |
XML_ATTRIBUTE_DECL_NODE (integer) | 16 |
XML_ENTITY_DECL_NODE (integer) | 17 |
XML_NAMESPACE_DECL_NODE (integer) | 18 |
XML_ATTRIBUTE_CDATA (integer) | 1 |
XML_ATTRIBUTE_ID (integer) | 2 |
XML_ATTRIBUTE_IDREF (integer) | 3 |
XML_ATTRIBUTE_IDREFS (integer) | 4 |
XML_ATTRIBUTE_ENTITY (integer) | 5 |
XML_ATTRIBUTE_NMTOKEN (integer) | 7 |
XML_ATTRIBUTE_NMTOKENS (integer) | 8 |
XML_ATTRIBUTE_ENUMERATION (integer) | 9 |
XML_ATTRIBUTE_NOTATION (integer) | 10 |
DOMException constants
Constant | Value | Description
DOM_PHP_ERR (integer) | 0 | Error code not part of the DOM specification. Meant for PHP errors.
DOM_INDEX_SIZE_ERR (integer) | 1 | If index or size is negative, or greater than the allowed value.
DOMSTRING_SIZE_ERR (integer) | 2 | If the specified range of text does not fit into a DOMString.
DOM_HIERARCHY_REQUEST_ERR (integer) | 3 | If any node is inserted somewhere it doesn't belong
DOM_WRONG_DOCUMENT_ERR (integer) | 4 | If a node is used in a different document than the one that created it.
DOM_INVALID_CHARACTER_ERR (integer) | 5 | If an invalid or illegal character is specified, such as in a name.
DOM_NO_DATA_ALLOWED_ERR (integer) | 6 | If data is specified for a node which does not support data.
DOM_NO_MODIFICATION_ALLOWED_ERR (integer) | 7 | If an attempt is made to modify an object where modifications are not allowed.
DOM_NOT_FOUND_ERR (integer) | 8 | If an attempt is made to reference a node in a context where it does not exist.
DOM_NOT_SUPPORTED_ERR (integer) | 9 | If the implementation does not support the requested type of object or operation.
DOM_INUSE_ATTRIBUTE_ERR (integer) | 10 | If an attempt is made to add an attribute that is already in use elsewhere.
DOM_INVALID_STATE_ERR (integer) | 11 | If an attempt is made to use an object that is not, or is no longer, usable.
DOM_SYNTAX_ERR (integer) | 12 | If an invalid or illegal string is specified.
DOM_INVALID_MODIFICATION_ERR (integer) | 13 | If an attempt is made to modify the type of the underlying object.
DOM_NAMESPACE_ERR (integer) | 14 | If an attempt is made to create or change an object in a way which is incorrect with regard to namespaces.
DOM_INVALID_ACCESS_ERR (integer) | 15 | If a parameter or an operation is not supported by the underlying object.
DOM_VALIDATION_ERR (integer) | 16 | If a call to a method such as insertBefore or removeChild would make the Node invalid with respect to "partial validity", this exception would be raised and the operation would not be done.
Tipos Resource
DOMAttr
DOM


The DOMAttr class

Introdução

DOMAttr represents an attribute in the DOMElement object.

Sinopse da classe

DOMAttr extends DOMNode {
/* Properties */
public readonly string $name ;
public readonly DOMElement $ownerElement ;
public readonly bool $schemaTypeInfo ;
public readonly bool $specified ;
public string $value ;
/* Methods */
__construct ( string $name [, string $value ] )
bool isId ( void )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

name

The name of the attribute

ownerElement

The element which contains the attribute

schemaTypeInfo

Not implemented yet, always is NULL

specified

Not implemented yet, always is NULL

value

The value of the attribute

Veja Também

  • » W3C specification of Attr

Índice

  • DOMAttr::__construct — Creates a new DOMAttr object
  • DOMAttr::isId — Checks if attribute is a defined ID
Constantes pré-definidas
DOMAttr::__construct
DOM


Creates a new DOMAttr object

DOMAttr
DOMAttr::isId
DOMAttr
PHP Manual

DOMAttr::__construct

(PHP 5)

DOMAttr::__construct — Creates a new DOMAttr object

Descrição

DOMAttr::__construct ( string $name [, string $value ] )

Creates a new DOMAttr object. This object is read only. It may be appended to a document, but additional nodes may not be appended to this node until the node is associated with a document. To create a writable node, use DOMDocument::createAttribute.

Parâmetros

name

The tag name of the attribute.

value

The value of the attribute.

Exemplos

Exemplo #1 Creating a new DOMAttr object

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$attr = $element->setAttributeNode(new DOMAttr('attr', 'attrvalue'));
echo $dom->saveXML();

?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="utf-8"?>
<root attr="attrvalue" />

Veja Também

  • DOMDocument::createAttribute() - Create new attribute

DOMAttr
DOMAttr::isId
DOMAttr


Checks if attribute is a defined ID

DOMAttr::__construct
DOMCharacterData
DOMAttr
PHP Manual

DOMAttr::isId

(PHP 5)

DOMAttr::isId — Checks if attribute is a defined ID

Descrição

bool DOMAttr::isId ( void )

This function checks if the attribute is a defined ID.

According to the DOM standard this requires a DTD which defines the attribute ID to be of type ID. You need to validate your document with DOMDocument::validate or DOMDocument::validateOnParse before using this function.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 DOMAttr->isId() Example

<?php

$doc = new DomDocument;

// We need to validate our document before refering to the id
$doc->validateOnParse = true;
$doc->Load('book.xml');

// We retrieve the attribute named id of the chapter element
$attr = $doc->getElementsByTagName('chapter')->item(0)->getAttributeNode('id');

var_dump($attr->isId()); // bool(true)

?>

DOMAttr::__construct
DOMCharacterData
DOMAttr


The DOMCharacterData class

Introdução

Represents nodes with character data. No nodes directly correspond to this class, but other nodes do inherit from it.

Sinopse da classe

DOMCharacterData extends DOMNode {
/* Properties */
public string $data ;
readonly public int $length ;
/* Methods */
void appendData ( string $data )
void deleteData ( int $offset , int $count )
void insertData ( int $offset , string $data )
void replaceData ( int $offset , int $count , string $data )
string substringData ( int $offset , int $count )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

data

The contents of the node.

length

The length of the contents.

Veja Também

  • » W3C specification of CharacterData

Índice

  • DOMCharacterData::appendData — Append the string to the end of the character data of the node
  • DOMCharacterData::deleteData — Remove a range of characters from the node
  • DOMCharacterData::insertData — Insert a string at the specified 16-bit unit offset
  • DOMCharacterData::replaceData — Replace a substring within the DOMCharacterData node
  • DOMCharacterData::substringData — Extracts a range of data from the node
DOMAttr::isId
DOMCharacterData::appendData
DOM


Append the string to the end of the character data of the node

DOMCharacterData
DOMCharacterData::deleteData
DOMCharacterData
PHP Manual

DOMCharacterData::appendData

(PHP 5)

DOMCharacterData::appendData — Append the string to the end of the character data of the node

Descrição

void DOMCharacterData::appendData ( string $data )

Append the string data to the end of the character data of the node.

Parâmetros

data

The string to append.

Valor Retornado

Não há valor retornado.

Veja Também

  • DOMCharacterData::deleteData() - Remove a range of characters from the node
  • DOMCharacterData::insertData() - Insert a string at the specified 16-bit unit offset
  • DOMCharacterData::replaceData() - Replace a substring within the DOMCharacterData node
  • DOMCharacterData::substringData() - Extracts a range of data from the node

DOMCharacterData
DOMCharacterData::deleteData
DOMCharacterData


Remove a range of characters from the node

DOMCharacterData::appendData
DOMCharacterData::insertData
DOMCharacterData
PHP Manual

DOMCharacterData::deleteData

(PHP 5)

DOMCharacterData::deleteData — Remove a range of characters from the node

Descrição

void DOMCharacterData::deleteData ( int $offset , int $count )

Deletes count characters starting from position offset.

Parâmetros

offset

The offset from which to start removing.

count

The number of characters to delete. If the sum of offset and count exceeds the length, then all characters to the end of the data are deleted.

Valor Retornado

Não há valor retornado.

Erros

DOM_INDEX_SIZE_ERR

Raised if offset is negative or greater than the number of 16-bit units in data, or if count is negative.

Veja Também

  • DOMCharacterData::appendData() - Append the string to the end of the character data of the node
  • DOMCharacterData::insertData() - Insert a string at the specified 16-bit unit offset
  • DOMCharacterData::replaceData() - Replace a substring within the DOMCharacterData node
  • DOMCharacterData::substringData() - Extracts a range of data from the node

DOMCharacterData::appendData
DOMCharacterData::insertData
DOMCharacterData


Insert a string at the specified 16-bit unit offset

DOMCharacterData::deleteData
DOMCharacterData::replaceData
DOMCharacterData
PHP Manual

DOMCharacterData::insertData

(PHP 5)

DOMCharacterData::insertData — Insert a string at the specified 16-bit unit offset

Descrição

void DOMCharacterData::insertData ( int $offset , string $data )

Inserts string data at position offset.

Parâmetros

offset

The character offset at which to insert.

data

The string to insert.

Valor Retornado

Não há valor retornado.

Erros

DOM_INDEX_SIZE_ERR

Raised if offset is negative or greater than the number of 16-bit units in data.

Veja Também

  • DOMCharacterData::appendData() - Append the string to the end of the character data of the node
  • DOMCharacterData::deleteData() - Remove a range of characters from the node
  • DOMCharacterData::replaceData() - Replace a substring within the DOMCharacterData node
  • DOMCharacterData::substringData() - Extracts a range of data from the node

DOMCharacterData::deleteData
DOMCharacterData::replaceData
DOMCharacterData


Replace a substring within the DOMCharacterData node

DOMCharacterData::insertData
DOMCharacterData::substringData
DOMCharacterData
PHP Manual

DOMCharacterData::replaceData

(PHP 5)

DOMCharacterData::replaceData — Replace a substring within the DOMCharacterData node

Descrição

void DOMCharacterData::replaceData ( int $offset , int $count , string $data )

Replace count characters starting from position offset with data.

Parâmetros

offset

The offset from which to start replacing.

count

The number of characters to replace. If the sum of offset and count exceeds the length, then all characters to the end of the data are replaced.

data

The string with which the range must be replaced.

Valor Retornado

Não há valor retornado.

Erros

DOM_INDEX_SIZE_ERR

Raised if offset is negative or greater than the number of 16-bit units in data, or if count is negative.

Veja Também

  • DOMCharacterData::appendData() - Append the string to the end of the character data of the node
  • DOMCharacterData::deleteData() - Remove a range of characters from the node
  • DOMCharacterData::insertData() - Insert a string at the specified 16-bit unit offset
  • DOMCharacterData::substringData() - Extracts a range of data from the node

DOMCharacterData::insertData
DOMCharacterData::substringData
DOMCharacterData


Extracts a range of data from the node

DOMCharacterData::replaceData
DOMComment
DOMCharacterData
PHP Manual

DOMCharacterData::substringData

(PHP 5)

DOMCharacterData::substringData — Extracts a range of data from the node

Descrição

string DOMCharacterData::substringData ( int $offset , int $count )

Returns the specified substring.

Parâmetros

offset

Start offset of substring to extract.

count

The number of characters to extract.

Valor Retornado

The specified substring. If the sum of offset and count exceeds the length, then all 16-bit units to the end of the data are returned.

Erros

DOM_INDEX_SIZE_ERR

Raised if offset is negative or greater than the number of 16-bit units in data, or if count is negative.

Veja Também

  • DOMCharacterData::appendData() - Append the string to the end of the character data of the node
  • DOMCharacterData::deleteData() - Remove a range of characters from the node
  • DOMCharacterData::insertData() - Insert a string at the specified 16-bit unit offset
  • DOMCharacterData::replaceData() - Replace a substring within the DOMCharacterData node

DOMCharacterData::replaceData
DOMComment
DOMCharacterData


The DOMComment class

Introdução

Represents comment nodes, characters delimited by <!-- and -->.

Sinopse da classe

DOMComment extends DOMCharacterData {
/* Methods */
DOMComment::__construct ([ string $value ] )
/* Inherited methods */
void DOMCharacterData::appendData ( string $data )
void DOMCharacterData::deleteData ( int $offset , int $count )
void DOMCharacterData::insertData ( int $offset , string $data )
void DOMCharacterData::replaceData ( int $offset , int $count , string $data )
string DOMCharacterData::substringData ( int $offset , int $count )
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Veja Também

  • » W3C specification of Comment

Índice

  • DOMComment::__construct — Creates a new DOMComment object
DOMCharacterData::substringData
DOMComment::__construct
DOM


Creates a new DOMComment object

DOMComment
DOMDocument
DOMComment
PHP Manual

DOMComment::__construct

(PHP 5)

DOMComment::__construct — Creates a new DOMComment object

Descrição

DOMComment::__construct ([ string $value ] )

Creates a new DOMComment object. This object is read only. It may be appended to a document, but additional nodes may not be appended to this node until the node is associated with a document. To create a writeable node, use DOMDocument::createComment.

Parâmetros

value

The value of the comment.

Exemplos

Exemplo #1 Creating a new DOMComment

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$comment = $element->appendChild(new DOMComment('root comment'));
echo $dom->saveXML(); /* <?xml version="1.0" encoding="iso-8859-1"?><root><!--root comment--></root> */

?>

Veja Também

  • DOMDocument::createComment() - Create new comment node

DOMComment
DOMDocument
DOMComment


The DOMDocument class

Introdução

Represents an entire HTML or XML document; serves as the root of the document tree.

Sinopse da classe

DOMDocument extends DOMNode {
/* Properties */
readonly public string $actualEncoding ;
readonly public DOMConfiguration $config ;
readonly public DOMDocumentType $doctype ;
readonly public DOMElement $documentElement ;
public string $documentURI ;
public string $encoding ;
public bool $formatOutput ;
readonly public DOMImplementation $implementation ;
public bool $preserveWhiteSpace = true ;
public bool $recover ;
public bool $resolveExternals ;
public bool $standalone ;
public bool $strictErrorChecking = true ;
public bool $substituteEntities ;
public bool $validateOnParse = false ;
public string $version ;
readonly public string $xmlEncoding ;
public bool $xmlStandalone ;
public string $xmlVersion ;
/* Methods */
__construct ([ string $version [, string $encoding ]] )
DOMAttr createAttribute ( string $name )
DOMAttr createAttributeNS ( string $namespaceURI , string $qualifiedName )
DOMCDATASection createCDATASection ( string $data )
DOMComment createComment ( string $data )
DOMDocumentFragment createDocumentFragment ( void )
DOMElement createElement ( string $name [, string $value ] )
DOMElement createElementNS ( string $namespaceURI , string $qualifiedName [, string $value ] )
DOMEntityReference createEntityReference ( string $name )
DOMProcessingInstruction createProcessingInstruction ( string $target [, string $data ] )
DOMText createTextNode ( string $content )
DOMElement getElementById ( string $elementId )
DOMNodeList getElementsByTagName ( string $name )
DOMNodeList getElementsByTagNameNS ( string $namespaceURI , string $localName )
DOMNode importNode ( DOMNode $importedNode [, bool $deep ] )
mixed load ( string $filename [, int $options = 0 ] )
bool loadHTML ( string $source )
bool loadHTMLFile ( string $filename )
mixed loadXML ( string $source [, int $options = 0 ] )
void normalizeDocument ( void )
bool registerNodeClass ( string $baseclass , string $extendedclass )
bool relaxNGValidate ( string $filename )
bool relaxNGValidateSource ( string $source )
int save ( string $filename [, int $options ] )
string saveHTML ( void )
int saveHTMLFile ( string $filename )
string saveXML ([ DOMNode $node [, int $options ]] )
bool schemaValidate ( string $filename )
bool schemaValidateSource ( string $source )
bool validate ( void )
int xinclude ([ int $options ] )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

actualEncoding

Deprecated. Actual encoding of the document, is a readonly equivalent to encoding.

config

Deprecated. Configuration used when DOMDocument::normalizeDocument() is invoked.

doctype

The Document Type Declaration associated with this document.

documentElement

This is a convenience attribute that allows direct access to the child node that is the document element of the document.

documentURI

The location of the document or NULL if undefined.

encoding

Encoding of the document, as specified by the XML declaration. This attribute is not present in the final DOM Level 3 specification, but is the only way of manipulating XML document encoding in this implementation.

formatOutput

Nicely formats output with indentation and extra space.

implementation

The DOMImplementation object that handles this document.

preserveWhiteSpace

Do not remove redundant white space. Default to TRUE.

recover

Proprietary. Enables recovery mode, i.e. trying to parse non-well formed documents. This attribute is not part of the DOM specification and is specific to libxml.

resolveExternals

Set it to TRUE to load external entities from a doctype declaration. This is useful for including character entities in your XML document.

standalone

Deprecated. Whether or not the document is standalone, as specified by the XML declaration, corresponds to xmlStandalone.

strictErrorChecking

Throws DOMException on errors. Default to TRUE.

substituteEntities

Proprietary. Whether or not to substitute entities. This attribute is not part of the DOM specification and is specific to libxml.

validateOnParse

Loads and validates against the DTD. Default to FALSE.

version

Deprecated. Version of XML, corresponds to xmlVersion

xmlEncoding

An attribute specifying, as part of the XML declaration, the encoding of this document. This is NULL when unspecified or when it is not known, such as when the Document was created in memory.

xmlStandalone

An attribute specifying, as part of the XML declaration, whether this document is standalone. This is FALSE when unspecified.

xmlVersion

An attribute specifying, as part of the XML declaration, the version number of this document. If there is no declaration and if this document supports the "XML" feature, the value is "1.0".

Notas

Nota:

The DOM extension uses UTF-8 encoding. Use utf8_encode() and utf8_decode() to work with texts in ISO-8859-1 encoding or Iconv for other encodings.

Veja Também

  • » W3C specification for Document

Índice

  • DOMDocument::__construct — Creates a new DOMDocument object
  • DOMDocument::createAttribute — Create new attribute
  • DOMDocument::createAttributeNS — Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection — Create new cdata node
  • DOMDocument::createComment — Create new comment node
  • DOMDocument::createDocumentFragment — Create new document fragment
  • DOMDocument::createElement — Create new element node
  • DOMDocument::createElementNS — Create new element node with an associated namespace
  • DOMDocument::createEntityReference — Create new entity reference node
  • DOMDocument::createProcessingInstruction — Creates new PI node
  • DOMDocument::createTextNode — Create new text node
  • DOMDocument::getElementById — Searches for an element with a certain id
  • DOMDocument::getElementsByTagName — Searches for all elements with given tag name
  • DOMDocument::getElementsByTagNameNS — Searches for all elements with given tag name in specified namespace
  • DOMDocument::importNode — Import node into current document
  • DOMDocument::load — Load XML from a file
  • DOMDocument::loadHTML — Load HTML from a string
  • DOMDocument::loadHTMLFile — Load HTML from a file
  • DOMDocument::loadXML — Load XML from a string
  • DOMDocument::normalizeDocument — Normalizes the document
  • DOMDocument::registerNodeClass — Register extended class used to create base node type
  • DOMDocument::relaxNGValidate — Performs relaxNG validation on the document
  • DOMDocument::relaxNGValidateSource — Performs relaxNG validation on the document
  • DOMDocument::save — Dumps the internal XML tree back into a file
  • DOMDocument::saveHTML — Dumps the internal document into a string using HTML formatting
  • DOMDocument::saveHTMLFile — Dumps the internal document into a file using HTML formatting
  • DOMDocument::saveXML — Dumps the internal XML tree back into a string
  • DOMDocument::schemaValidate — Validates a document based on a schema
  • DOMDocument::schemaValidateSource — Validates a document based on a schema
  • DOMDocument::validate — Validates the document based on its DTD
  • DOMDocument::xinclude — Substitutes XIncludes in a DOMDocument Object
DOMComment::__construct
DOMDocument::__construct
DOM


Creates a new DOMDocument object

DOMDocument
DOMDocument::createAttribute
DOMDocument
PHP Manual

DOMDocument::__construct

(PHP 5)

DOMDocument::__construct — Creates a new DOMDocument object

Descrição

DOMDocument::__construct ([ string $version [, string $encoding ]] )

Creates a new DOMDocument object.

Parâmetros

version

The version number of the document as part of the XML declaration.

encoding

The encoding of the document as part of the XML declaration.

Exemplos

Exemplo #1 Creating a new DOMDocument

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');

echo $dom->saveXML(); /* <?xml version="1.0" encoding="iso-8859-1"?> */

?>

Veja Também

  • DOMImplementation::createDocument() - Creates a DOMDocument object of the specified type with its document element

DOMDocument
DOMDocument::createAttribute
DOMDocument


Create new attribute

DOMDocument::__construct
DOMDocument::createAttributeNS
DOMDocument
PHP Manual

DOMDocument::createAttribute

(PHP 5)

DOMDocument::createAttribute — Create new attribute

Descrição

DOMAttr DOMDocument::createAttribute ( string $name )

This function creates a new instance of class DOMAttr. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

name

The name of the attribute.

Valor Retornado

The new DOMAttr or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if name contains an invalid character.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::__construct
DOMDocument::createAttributeNS
DOMDocument


Create new attribute node with an associated namespace

DOMDocument::createAttribute
DOMDocument::createCDATASection
DOMDocument
PHP Manual

DOMDocument::createAttributeNS

(PHP 5)

DOMDocument::createAttributeNS — Create new attribute node with an associated namespace

Descrição

DOMAttr DOMDocument::createAttributeNS ( string $namespaceURI , string $qualifiedName )

This function creates a new instance of class DOMAttr. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

namespaceURI

The URI of the namespace.

qualifiedName

The tag name and prefix of the attribute, as prefix:tagname.

Valor Retornado

The new DOMAttr or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if qualifiedName contains an invalid character.

DOM_NAMESPACE_ERR

Raised if qualifiedName is a malformed qualified name, or if qualifiedName has a prefix and namespaceURI is NULL.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createAttribute
DOMDocument::createCDATASection
DOMDocument


Create new cdata node

DOMDocument::createAttributeNS
DOMDocument::createComment
DOMDocument
PHP Manual

DOMDocument::createCDATASection

(PHP 5)

DOMDocument::createCDATASection — Create new cdata node

Descrição

DOMCDATASection DOMDocument::createCDATASection ( string $data )

This function creates a new instance of class DOMCDATASection. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

data

The content of the cdata.

Valor Retornado

The new DOMCDATASection or FALSE if an error occured.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createAttributeNS
DOMDocument::createComment
DOMDocument


Create new comment node

DOMDocument::createCDATASection
DOMDocument::createDocumentFragment
DOMDocument
PHP Manual

DOMDocument::createComment

(PHP 5)

DOMDocument::createComment — Create new comment node

Descrição

DOMComment DOMDocument::createComment ( string $data )

This function creates a new instance of class DOMComment. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

data

The content of the comment.

Valor Retornado

The new DOMComment or FALSE if an error occured.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createCDATASection
DOMDocument::createDocumentFragment
DOMDocument


Create new document fragment

DOMDocument::createComment
DOMDocument::createElement
DOMDocument
PHP Manual

DOMDocument::createDocumentFragment

(PHP 5)

DOMDocument::createDocumentFragment — Create new document fragment

Descrição

DOMDocumentFragment DOMDocument::createDocumentFragment ( void )

This function creates a new instance of class DOMDocumentFragment. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Valor Retornado

The new DOMDocumentFragment or FALSE if an error occured.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createComment
DOMDocument::createElement
DOMDocument


Create new element node

DOMDocument::createDocumentFragment
DOMDocument::createElementNS
DOMDocument
PHP Manual

DOMDocument::createElement

(PHP 5)

DOMDocument::createElement — Create new element node

Descrição

DOMElement DOMDocument::createElement ( string $name [, string $value ] )

This function creates a new instance of class DOMElement. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

name

The tag name of the element.

value

The value of the element. By default, an empty element will be created. The value can also be set later with DOMElement->nodeValue.

Valor Retornado

Returns a new instance of class DOMElement or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if name contains an invalid character.

Exemplos

Exemplo #1 Creating a new element and inserting it as root

<?php

$dom = new DOMDocument('1.0', 'utf-8');

$element = $dom->createElement('test', 'This is the root element!');

// We insert the new element as root (child of the document)
$dom->appendChild($element);

echo $dom->saveXML();
?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="utf-8"?>
<test>This is the root element!</test>

Notas

Nota:

The value will not be escaped. Use DOMDocument::createTextNode() to create a text node with escaping support.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createDocumentFragment
DOMDocument::createElementNS
DOMDocument


Create new element node with an associated namespace

DOMDocument::createElement
DOMDocument::createEntityReference
DOMDocument
PHP Manual

DOMDocument::createElementNS

(PHP 5)

DOMDocument::createElementNS — Create new element node with an associated namespace

Descrição

DOMElement DOMDocument::createElementNS ( string $namespaceURI , string $qualifiedName [, string $value ] )

This function creates a new element node with an associated namespace. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

namespaceURI

The URI of the namespace.

qualifiedName

The qualified name of the element, as prefix:tagname.

value

The value of the element. By default, an empty element will be created. You can also set the value later with DOMElement->nodeValue.

Valor Retornado

The new DOMElement or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if qualifiedName contains an invalid character.

DOM_NAMESPACE_ERR

Raised if qualifiedName is a maformed qualified name.

Exemplos

Exemplo #1 Creating a new element and inserting it as root

<?php

$dom = new DOMDocument('1.0', 'utf-8');

$element = $dom->createElementNS('http://www.example.com/XFoo', 'xfoo:test', 'This is the root element!');

// We insert the new element as root (child of the document)
$dom->appendChild($element);

echo $dom->saveXML();
?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="utf-8"?>
<xfoo:test xmlns:xfoo="http://www.example.com/XFoo">This is the root element!</xfoo:test>

Exemplo #2 A namespace prefix example

<?php
$doc  = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
$root = $doc->createElementNS('http://www.w3.org/2005/Atom', 'element');
$doc->appendChild($root);
$root->setAttributeNS('http://www.w3.org/2000/xmlns/' ,'xmlns:g', 'http://base.google.com/ns/1.0');
$item = $doc->createElementNS('http://base.google.com/ns/1.0', 'g:item_type', 'house');
$root->appendChild($item);

echo $doc->saveXML(), "\n";

echo $item->namespaceURI, "\n"; // Outputs: http://base.google.com/ns/1.0
echo $item->prefix, "\n";       // Outputs: g
echo $item->localName, "\n";    // Outputs: item_type
?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="utf-8"?>
<element xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0">
  <g:item_type>house</g:item_type>
</element>

http://base.google.com/ns/1.0
g
item_type

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createElement
DOMDocument::createEntityReference
DOMDocument


Create new entity reference node

DOMDocument::createElementNS
DOMDocument::createProcessingInstruction
DOMDocument
PHP Manual

DOMDocument::createEntityReference

(PHP 5)

DOMDocument::createEntityReference — Create new entity reference node

Descrição

DOMEntityReference DOMDocument::createEntityReference ( string $name )

This function creates a new instance of class DOMEntityReference. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

name

The content of the entity reference, e.g. the entity reference minus the leading & and the trailing ; characters.

Valor Retornado

The new DOMEntityReference or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if name contains an invalid character.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createProcessingInstruction() - Creates new PI node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createElementNS
DOMDocument::createProcessingInstruction
DOMDocument


Creates new PI node

DOMDocument::createEntityReference
DOMDocument::createTextNode
DOMDocument
PHP Manual

DOMDocument::createProcessingInstruction

(PHP 5)

DOMDocument::createProcessingInstruction — Creates new PI node

Descrição

DOMProcessingInstruction DOMDocument::createProcessingInstruction ( string $target [, string $data ] )

This function creates a new instance of class DOMProcessingInstruction. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

target

The target of the processing instruction.

data

The content of the processing instruction.

Valor Retornado

The new DOMProcessingInstruction or FALSE if an error occured.

Erros

DOM_INVALID_CHARACTER_ERR

Raised if target contains an invalid character.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createTextNode() - Create new text node

DOMDocument::createEntityReference
DOMDocument::createTextNode
DOMDocument


Create new text node

DOMDocument::createProcessingInstruction
DOMDocument::getElementById
DOMDocument
PHP Manual

DOMDocument::createTextNode

(PHP 5)

DOMDocument::createTextNode — Create new text node

Descrição

DOMText DOMDocument::createTextNode ( string $content )

This function creates a new instance of class DOMText. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com DOMNode->appendChild().

Parâmetros

content

The content of the text.

Valor Retornado

The new DOMText or FALSE if an error occured.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMDocument::createAttribute() - Create new attribute
  • DOMDocument::createAttributeNS() - Create new attribute node with an associated namespace
  • DOMDocument::createCDATASection() - Create new cdata node
  • DOMDocument::createComment() - Create new comment node
  • DOMDocument::createDocumentFragment() - Create new document fragment
  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace
  • DOMDocument::createEntityReference() - Create new entity reference node
  • DOMDocument::createProcessingInstruction() - Creates new PI node

DOMDocument::createProcessingInstruction
DOMDocument::getElementById
DOMDocument


Searches for an element with a certain id

DOMDocument::createTextNode
DOMDocument::getElementsByTagName
DOMDocument
PHP Manual

DOMDocument::getElementById

(PHP 5)

DOMDocument::getElementById — Searches for an element with a certain id

Descrição

DOMElement DOMDocument::getElementById ( string $elementId )

This function is similar to DOMDocument::getElementsByTagName but searches for an element with a given id.

For this function to work, you will need either to set some ID attributes with DOMElement::setIdAttribute or a DTD which defines an attribute to be of type ID. In the later case, you will need to validate your document with DOMDocument::validate or DOMDocument->validateOnParse before using this function.

Parâmetros

elementId

The unique id value for an element.

Valor Retornado

Returns the DOMElement or NULL if the element is not found.

Exemplos

Exemplo #1 DOMDocument->getElementById() Example

<?php

$doc = new DomDocument;

// We need to validate our document before refering to the id
$doc->validateOnParse = true;
$doc->Load('book.xml');

echo "The element whose id is books is: " . $doc->getElementById('books')->tagName . "\n";

?>

O exemplo acima irá imprimir:

The element whose id is books is: chapter

Veja Também

  • DOMDocument::getElementsByTagName() - Searches for all elements with given tag name

DOMDocument::createTextNode
DOMDocument::getElementsByTagName
DOMDocument


Searches for all elements with given tag name

DOMDocument::getElementById
DOMDocument::getElementsByTagNameNS
DOMDocument
PHP Manual

DOMDocument::getElementsByTagName

(PHP 5)

DOMDocument::getElementsByTagName — Searches for all elements with given tag name

Descrição

DOMNodeList DOMDocument::getElementsByTagName ( string $name )

This function returns a new instance of class DOMNodeList containing the elements with a given tag name.

Parâmetros

name

The name of the tag to match on. The special value * matches all tags.

Valor Retornado

A new DOMNodeList object containing all the matched elements.

Veja Também

  • DOMDocument::getElementsByTagNameNS() - Searches for all elements with given tag name in specified namespace

DOMDocument::getElementById
DOMDocument::getElementsByTagNameNS
DOMDocument


Searches for all elements with given tag name in specified namespace

DOMDocument::getElementsByTagName
DOMDocument::importNode
DOMDocument
PHP Manual

DOMDocument::getElementsByTagNameNS

(PHP 5)

DOMDocument::getElementsByTagNameNS — Searches for all elements with given tag name in specified namespace

Descrição

DOMNodeList DOMDocument::getElementsByTagNameNS ( string $namespaceURI , string $localName )

Returns a DOMNodeList of all elements with a given local name and a namespace URI.

Parâmetros

namespaceURI

The namespace URI of the elements to match on. The special value * matches all namespaces.

localName

The local name of the elements to match on. The special value * matches all local names.

Valor Retornado

A new DOMNodeList object containing all the matched elements.

Exemplos

Exemplo #1 Get all the XInclude elements

<?php

$xml = <<<EOD
<?xml version="1.0" ?>
<chapter xmlns:xi="http://www.w3.org/2001/XInclude">
<title>Books of the other guy..</title>
<para>
 <xi:include href="book.xml">
  <xi:fallback>
   <error>xinclude: book.xml not found</error>
  </xi:fallback>
 </xi:include>
 <include>
  This is another namespace
 </include>
</para>
</chapter>
EOD;
$dom = new DOMDocument;

// load the XML string defined above
$dom->loadXML($xml);

foreach ($dom->getElementsByTagNameNS('http://www.w3.org/2001/XInclude', '*') as $element) {
    echo 'local name: ', $element->localName, ', prefix: ', $element->prefix, "\n";
}
?>

O exemplo acima irá imprimir:

local name: include, prefix: xi
local name: fallback, prefix: xi

Veja Também

  • DOMDocument::getElementsByTagName() - Searches for all elements with given tag name

DOMDocument::getElementsByTagName
DOMDocument::importNode
DOMDocument


Import node into current document

DOMDocument::getElementsByTagNameNS
DOMDocument::load
DOMDocument
PHP Manual

DOMDocument::importNode

(PHP 5)

DOMDocument::importNode — Import node into current document

Descrição

DOMNode DOMDocument::importNode ( DOMNode $importedNode [, bool $deep ] )

This function returns a copy of the node to import and associates it with the current document.

Parâmetros

importedNode

The node to import.

deep

If set to TRUE, this method will recursively import the subtree under the importedNode.

Nota:

To copy the nodes attributes deep needs to be set to TRUE

Valor Retornado

The copied node or FALSE, if it cannot be copied.

Erros

DOMException is thrown if node cannot be imported.

Exemplos

Exemplo #1 DOMDocument::importNode() example

Copying nodes between documents.

<?php

$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");

// The node we want to import to a new document
$node = $orgdoc->getElementsByTagName("element")->item(0);

// Create a new document
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;

// Add some markup
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");

echo "The 'new document' before copying nodes into it:\n";
echo $newdoc->saveXML();

// Import the node, and all its children, to the document
$node = $newdoc->importNode($node, true);
// And then append it to the "<root>" node
$newdoc->documentElement->appendChild($node);

echo "\nThe 'new document' after copying the nodes into it:\n";
echo $newdoc->saveXML();
?>

O exemplo acima irá imprimir:

The 'new document' before copying nodes into it:
<?xml version="1.0"?>
<root>
  <someelement>text in some element</someelement>
</root>

The 'new document' after copying the nodes into it:
<?xml version="1.0"?>
<root>
  <someelement>text in some element</someelement>
  <element>
    <child>text in child</child>
  </element>
</root>

DOMDocument::getElementsByTagNameNS
DOMDocument::load
DOMDocument


Load XML from a file

DOMDocument::importNode
DOMDocument::loadHTML
DOMDocument
PHP Manual

DOMDocument::load

(PHP 5)

DOMDocument::load — Load XML from a file

Descrição

mixed DOMDocument::load ( string $filename [, int $options = 0 ] )

Loads an XML document from a file.

Aviso

Unix style paths with forward slashes can cause significant performance degradation on Windows systems; be sure to call realpath() in such a case.

Parâmetros

filename

The path to the XML document.

options

Bitwise OR of the libxml option constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns a DOMDocument or FALSE on failure.

Erros

If an empty string is passed as the filename or an empty file is named, a warning will be generated. This warning is not generated by libxml and cannot be handled using libxml's error handling functions.

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Creating a Document

<?php
$doc = new DOMDocument();
$doc->load('book.xml');
echo $doc->saveXML();
?>

Veja Também

  • DOMDocument::loadXML() - Load XML from a string
  • DOMDocument::save() - Dumps the internal XML tree back into a file
  • DOMDocument::saveXML() - Dumps the internal XML tree back into a string

DOMDocument::importNode
DOMDocument::loadHTML
DOMDocument


Load HTML from a string

DOMDocument::load
DOMDocument::loadHTMLFile
DOMDocument
PHP Manual

DOMDocument::loadHTML

(PHP 5)

DOMDocument::loadHTML — Load HTML from a string

Descrição

bool DOMDocument::loadHTML ( string $source )

The function parses the HTML contained in the string source. Unlike loading XML, HTML does not have to be well-formed to load. This function may also be called statically to load and create a DOMDocument object. The static invocation may be used when no DOMDocument properties need to be set prior to loading.

Parâmetros

source

The HTML string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns a DOMDocument or FALSE on failure.

Erros

If an empty string is passed as the source, a warning will be generated. This warning is not generated by libxml and cannot be handled using libxml's error handling functions.

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Creating a Document

<?php
$doc = new DOMDocument();
$doc->loadHTML("<html><body>Test<br></body></html>");
echo $doc->saveHTML();
?>

Veja Também

  • DOMDocument::loadHTMLFile() - Load HTML from a file
  • DOMDocument::saveHTML() - Dumps the internal document into a string using HTML formatting
  • DOMDocument::saveHTMLFile() - Dumps the internal document into a file using HTML formatting

DOMDocument::load
DOMDocument::loadHTMLFile
DOMDocument


Load HTML from a file

DOMDocument::loadHTML
DOMDocument::loadXML
DOMDocument
PHP Manual

DOMDocument::loadHTMLFile

(PHP 5)

DOMDocument::loadHTMLFile — Load HTML from a file

Descrição

bool DOMDocument::loadHTMLFile ( string $filename )

The function parses the HTML document in the file named filename. Unlike loading XML, HTML does not have to be well-formed to load.

Parâmetros

filename

The path to the HTML file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns a DOMDocument or FALSE on failure.

Erros

If an empty string is passed as the filename or an empty file is named, a warning will be generated. This warning is not generated by libxml and cannot be handled using libxml's error handling functions.

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Creating a Document

<?php
$doc = new DOMDocument();
$doc->loadHTMLFile("filename.html");
echo $doc->saveHTML();
?>

Veja Também

  • DOMDocument::loadHTML() - Load HTML from a string
  • DOMDocument::saveHTML() - Dumps the internal document into a string using HTML formatting
  • DOMDocument::saveHTMLFile() - Dumps the internal document into a file using HTML formatting

DOMDocument::loadHTML
DOMDocument::loadXML
DOMDocument


Load XML from a string

DOMDocument::loadHTMLFile
DOMDocument::normalizeDocument
DOMDocument
PHP Manual

DOMDocument::loadXML

(PHP 5)

DOMDocument::loadXML — Load XML from a string

Descrição

mixed DOMDocument::loadXML ( string $source [, int $options = 0 ] )

Loads an XML document from a string.

Parâmetros

source

The string containing the XML.

options

Bitwise OR of the libxml option constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns a DOMDocument or FALSE on failure.

Erros

If an empty string is passed as the source, a warning will be generated. This warning is not generated by libxml and cannot be handled using libxml's error handling functions.

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Creating a Document

<?php
$doc = new DOMDocument();
$doc->loadXML('<root><node/></root>');
echo $doc->saveXML();
?>

Exemplo #2 Static invocation of loadXML

<?php
// Issues an E_STRICT error
$doc = DOMDocument::loadXML('<root><node/></root>');
echo $doc->saveXML();
?>

Veja Também

  • DOMDocument::load() - Load XML from a file
  • DOMDocument::save() - Dumps the internal XML tree back into a file
  • DOMDocument::saveXML() - Dumps the internal XML tree back into a string

DOMDocument::loadHTMLFile
DOMDocument::normalizeDocument
DOMDocument


Normalizes the document

DOMDocument::loadXML
DOMDocument::registerNodeClass
DOMDocument
PHP Manual

DOMDocument::normalizeDocument

(PHP 5)

DOMDocument::normalizeDocument — Normalizes the document

Descrição

void DOMDocument::normalizeDocument ( void )

This method acts as if you saved and then loaded the document, putting the document in a "normal" form.

Valor Retornado

Não há valor retornado.

Veja Também

  • » The DOM Specification
  • DOMNode::normalize() - Normalizes the node

DOMDocument::loadXML
DOMDocument::registerNodeClass
DOMDocument


Register extended class used to create base node type

DOMDocument::normalizeDocument
DOMDocument::relaxNGValidate
DOMDocument
PHP Manual

DOMDocument::registerNodeClass

(PHP 5 >= 5.2.0)

DOMDocument::registerNodeClass — Register extended class used to create base node type

Descrição

bool DOMDocument::registerNodeClass ( string $baseclass , string $extendedclass )

This method allows you to register your own extended DOM class to be used afterward by the PHP DOM extension.

This method is not part of the DOM standard.

Parâmetros

baseclass

The DOM class that you want to extend. You can find a list of these classes in the chapter introduction.

extendedclass

Your extended class name. If NULL is provided, any previously registered class extending baseclass will be removed.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
PHP 5.2.2 | Prior to 5.2.2, a previously registered extendedclass had to be unregistered before being able to register a new class extending the same baseclass.

Exemplos

Exemplo #1 Adding a new method to DOMElement to ease our code

<?php

class myElement extends DOMElement {
   function appendElement($name) {
      return $this->appendChild(new myElement($name));
   }
}

class myDocument extends DOMDocument {
   function setRoot($name) {
      return $this->appendChild(new myElement($name));
   }
}

$doc = new myDocument();
$doc->registerNodeClass('DOMElement', 'myElement');

// From now on, adding an element to another costs only one method call !
$root = $doc->setRoot('root');
$child = $root->appendElement('child');
$child->setAttribute('foo', 'bar');

echo $doc->saveXML();

?>

O exemplo acima irá imprimir:

<?xml version="1.0"?>
<root><child foo="bar"/></root>

Exemplo #2 Retrieving elements as custom class

<?php
class myElement extends DOMElement {
    public function __toString() {
        return $this->nodeValue;
    }
}

$doc = new DOMDocument;
$doc->loadXML("<root><element><child>text in child</child></element></root>");
$doc->registerNodeClass("DOMElement", "myElement");

$element = $doc->getElementsByTagName("child")->item(0);
var_dump(get_class($element));

// And take advantage of the __toString method..
echo $element;
?>

O exemplo acima irá imprimir:

string(9) "myElement"
text in child

Exemplo #3 Retrieving owner document

When instantiating a custom DOMDocument the ownerDocument property will refer to the instantiated class, meaning there is no need (and in fact not possible) to use DOMDocument::registerNodeClass() with DOMDocument

<?php
class myDOMDocument extends DOMDocument {
}

class myOtherDOMDocument extends DOMDocument {
}

// Create myDOMDocument with some XML
$doc = new myDOMDocument;
$doc->loadXML("<root><element><child>text in child</child></element></root>");

$child = $doc->getElementsByTagName("child")->item(0);

// The current owner of the node is myDOMDocument
var_dump(get_class($child->ownerDocument));

// Import a node from myDOMDocument
$newdoc = new myOtherDOMDocument;
$child = $newdoc->importNode($child);

// The new owner of the node has changed to myOtherDOMDocument
var_dump(get_class($child->ownerDocument));
?>

O exemplo acima irá imprimir:

string(13) "myDOMDocument"
string(18) "myOtherDOMDocument"

DOMDocument::normalizeDocument
DOMDocument::relaxNGValidate
DOMDocument


Performs relaxNG validation on the document

DOMDocument::registerNodeClass
DOMDocument::relaxNGValidateSource
DOMDocument
PHP Manual

DOMDocument::relaxNGValidate

(PHP 5)

DOMDocument::relaxNGValidate — Performs relaxNG validation on the document

Descrição

bool DOMDocument::relaxNGValidate ( string $filename )

Performs » relaxNG validation on the document based on the given RNG schema.

Parâmetros

filename

The RNG file.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMDocument::relaxNGValidateSource() - Performs relaxNG validation on the document
  • DOMDocument::schemaValidate() - Validates a document based on a schema
  • DOMDocument::schemaValidateSource() - Validates a document based on a schema
  • DOMDocument::validate() - Validates the document based on its DTD

DOMDocument::registerNodeClass
DOMDocument::relaxNGValidateSource
DOMDocument


Performs relaxNG validation on the document

DOMDocument::relaxNGValidate
DOMDocument::save
DOMDocument
PHP Manual

DOMDocument::relaxNGValidateSource

(PHP 5)

DOMDocument::relaxNGValidateSource — Performs relaxNG validation on the document

Descrição

bool DOMDocument::relaxNGValidateSource ( string $source )

Performs » relaxNG validation on the document based on the given RNG source.

Parâmetros

source

A string containing the RNG schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMDocument::relaxNGValidate() - Performs relaxNG validation on the document
  • DOMDocument::schemaValidate() - Validates a document based on a schema
  • DOMDocument::schemaValidateSource() - Validates a document based on a schema
  • DOMDocument::validate() - Validates the document based on its DTD

DOMDocument::relaxNGValidate
DOMDocument::save
DOMDocument


Dumps the internal XML tree back into a file

DOMDocument::relaxNGValidateSource
DOMDocument::saveHTML
DOMDocument
PHP Manual

DOMDocument::save

(PHP 5)

DOMDocument::save — Dumps the internal XML tree back into a file

Descrição

int DOMDocument::save ( string $filename [, int $options ] )

Creates an XML document from the DOM representation. This function is usually called after building a new dom document from scratch as in the example below.

Parâmetros

filename

The path to the saved XML document.

options

Additional Options. Currently only LIBXML_NOEMPTYTAG is supported.

Valor Retornado

Returns the number of bytes written or FALSE if an error occurred.

Histórico

Versão | Descrição
5.1.0 | Added the options parameter

Exemplos

Exemplo #1 Saving a DOM tree into a file

<?php

$doc = new DOMDocument('1.0');
// we want a nice output
$doc->formatOutput = true;

$root = $doc->createElement('book');
$root = $doc->appendChild($root);

$title = $doc->createElement('title');
$title = $root->appendChild($title);

$text = $doc->createTextNode('This is the title');
$text = $title->appendChild($text);

echo 'Wrote: ' . $doc->save("/tmp/test.xml") . ' bytes'; // Wrote: 72 bytes

?>

Veja Também

  • DOMDocument::saveXML() - Dumps the internal XML tree back into a string
  • DOMDocument::load() - Load XML from a file
  • DOMDocument::loadXML() - Load XML from a string

DOMDocument::relaxNGValidateSource
DOMDocument::saveHTML
DOMDocument


Dumps the internal document into a string using HTML formatting

DOMDocument::save
DOMDocument::saveHTMLFile
DOMDocument
PHP Manual

DOMDocument::saveHTML

(PHP 5)

DOMDocument::saveHTML — Dumps the internal document into a string using HTML formatting

Descrição

string DOMDocument::saveHTML ( void )

Creates an HTML document from the DOM representation. This function is usually called after building a new dom document from scratch as in the example below.

Valor Retornado

Returns the HTML, or FALSE if an error occurred.

Exemplos

Exemplo #1 Saving a HTML tree into a string

<?php

$doc = new DOMDocument('1.0');

$root = $doc->createElement('html');
$root = $doc->appendChild($root);

$head = $doc->createElement('head');
$head = $root->appendChild($head);

$title = $doc->createElement('title');
$title = $head->appendChild($title);

$text = $doc->createTextNode('This is the title');
$text = $title->appendChild($text);

echo $doc->saveHTML();

?>

Veja Também

  • DOMDocument::saveHTMLFile() - Dumps the internal document into a file using HTML formatting
  • DOMDocument::loadHTML() - Load HTML from a string
  • DOMDocument::loadHTMLFile() - Load HTML from a file

DOMDocument::save
DOMDocument::saveHTMLFile
DOMDocument


Dumps the internal document into a file using HTML formatting

DOMDocument::saveHTML
DOMDocument::saveXML
DOMDocument
PHP Manual

DOMDocument::saveHTMLFile

(PHP 5)

DOMDocument::saveHTMLFile — Dumps the internal document into a file using HTML formatting

Descrição

int DOMDocument::saveHTMLFile ( string $filename )

Creates an HTML document from the DOM representation. This function is usually called after building a new dom document from scratch as in the example below.

Parâmetros

filename

The path to the saved HTML document.

Valor Retornado

Returns the number of bytes written or FALSE if an error occurred.

Exemplos

Exemplo #1 Saving a HTML tree into a file

<?php

$doc = new DOMDocument('1.0');
// we want a nice output
$doc->formatOutput = true;

$root = $doc->createElement('html');
$root = $doc->appendChild($root);

$head = $doc->createElement('head');
$head = $root->appendChild($head);

$title = $doc->createElement('title');
$title = $head->appendChild($title);

$text = $doc->createTextNode('This is the title');
$text = $title->appendChild($text);

echo 'Wrote: ' . $doc->saveHTMLFile("/tmp/test.html") . ' bytes'; // Wrote: 129 bytes

?>

Veja Também

  • DOMDocument::saveHTML() - Dumps the internal document into a string using HTML formatting
  • DOMDocument::loadHTML() - Load HTML from a string
  • DOMDocument::loadHTMLFile() - Load HTML from a file

DOMDocument::saveHTML
DOMDocument::saveXML
DOMDocument


Dumps the internal XML tree back into a string

DOMDocument::saveHTMLFile
DOMDocument::schemaValidate
DOMDocument
PHP Manual

DOMDocument::saveXML

(PHP 5)

DOMDocument::saveXML — Dumps the internal XML tree back into a string

Descrição

string DOMDocument::saveXML ([ DOMNode $node [, int $options ]] )

Creates an XML document from the DOM representation. This function is usually called after building a new dom document from scratch as in the example below.

Parâmetros

node

Use this parameter to output only a specific node without XML declaration rather than the entire document.

options

Additional Options. Currently only LIBXML_NOEMPTYTAG is supported.

Valor Retornado

Returns the XML, or FALSE if an error occurred.

Erros

DOM_WRONG_DOCUMENT_ERR

Raised if node is from another document.

Histórico

Versão | Descrição
5.1.0 | Added the options parameter

Exemplos

Exemplo #1 Saving a DOM tree into a string

<?php

$doc = new DOMDocument('1.0');
// we want a nice output
$doc->formatOutput = true;

$root = $doc->createElement('book');
$root = $doc->appendChild($root);

$title = $doc->createElement('title');
$title = $root->appendChild($title);

$text = $doc->createTextNode('This is the title');
$text = $title->appendChild($text);

echo "Saving all the document:\n";
echo $doc->saveXML() . "\n";

echo "Saving only the title part:\n";
echo $doc->saveXML($title);

?>

O exemplo acima irá imprimir:

Saving all the document:
<?xml version="1.0"?>
<book>
  <title>This is the title</title>
</book>

Saving only the title part:
<title>This is the title</title>

Veja Também

  • DOMDocument::save() - Dumps the internal XML tree back into a file
  • DOMDocument::load() - Load XML from a file
  • DOMDocument::loadXML() - Load XML from a string

DOMDocument::saveHTMLFile
DOMDocument::schemaValidate
DOMDocument


Validates a document based on a schema

DOMDocument::saveXML
DOMDocument::schemaValidateSource
DOMDocument
PHP Manual

DOMDocument::schemaValidate

(PHP 5)

DOMDocument::schemaValidate — Validates a document based on a schema

Descrição

bool DOMDocument::schemaValidate ( string $filename )

Validates a document based on the given schema file.

Parâmetros

filename

The path to the schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMDocument::schemaValidateSource() - Validates a document based on a schema
  • DOMDocument::relaxNGValidate() - Performs relaxNG validation on the document
  • DOMDocument::relaxNGValidateSource() - Performs relaxNG validation on the document
  • DOMDocument::validate() - Validates the document based on its DTD

DOMDocument::saveXML
DOMDocument::schemaValidateSource
DOMDocument


Validates a document based on a schema

DOMDocument::schemaValidate
DOMDocument::validate
DOMDocument
PHP Manual

DOMDocument::schemaValidateSource

(PHP 5)

DOMDocument::schemaValidateSource — Validates a document based on a schema

Descrição

bool DOMDocument::schemaValidateSource ( string $source )

Validates a document based on a schema defined in the given string.

Parâmetros

source

A string containing the schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMDocument::schemaValidate() - Validates a document based on a schema
  • DOMDocument::relaxNGValidate() - Performs relaxNG validation on the document
  • DOMDocument::relaxNGValidateSource() - Performs relaxNG validation on the document
  • DOMDocument::validate() - Validates the document based on its DTD

DOMDocument::schemaValidate
DOMDocument::validate
DOMDocument


Validates the document based on its DTD

DOMDocument::schemaValidateSource
DOMDocument::xinclude
DOMDocument
PHP Manual

DOMDocument::validate

(PHP 5)

DOMDocument::validate — Validates the document based on its DTD

Descrição

bool DOMDocument::validate ( void )

Validates the document based on its DTD.

You can also use the validateOnParse property of DOMDocument to make a DTD validation.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If the document have no DTD attached, this method will return FALSE.

Exemplos

Exemplo #1 Example of DTD validation

<?php
$dom = new DOMDocument;
$dom->Load('book.xml');
if ($dom->validate()) {
    echo "This document is valid!\n";
}
?>

You can also validate your XML file while loading it:

<?php
$dom = new DOMDocument;
$dom->validateOnParse = true;
$dom->Load('book.xml');
?>

Veja Também

  • DOMDocument::schemaValidate() - Validates a document based on a schema
  • DOMDocument::schemaValidateSource() - Validates a document based on a schema
  • DOMDocument::relaxNGValidate() - Performs relaxNG validation on the document
  • DOMDocument::relaxNGValidateSource() - Performs relaxNG validation on the document

DOMDocument::schemaValidateSource
DOMDocument::xinclude
DOMDocument


Substitutes XIncludes in a DOMDocument Object

DOMDocument::validate
DOMDocumentFragment
DOMDocument
PHP Manual

DOMDocument::xinclude

(PHP 5)

DOMDocument::xinclude — Substitutes XIncludes in a DOMDocument Object

Descrição

int DOMDocument::xinclude ([ int $options ] )

This method substitutes » XIncludes in a DOMDocument object.

Nota:

Due to libxml2 automatically resolving entities, this method will produce unexpected results if the included XML file have an attached DTD.

Parâmetros

options

libxml parameters. Available since PHP 5.1.0 and Libxml 2.6.7.

Valor Retornado

Returns the number of XIncludes in the document, -1 if some processing failed, or FALSE if there were no substitutions.

Exemplos

Exemplo #1 DOMDocument->xinclude() example

<?php

$xml = <<<EOD
<?xml version="1.0" ?>
<chapter xmlns:xi="http://www.w3.org/2001/XInclude">
 <title>Books of the other guy..</title>
 <para>
  <xi:include href="book.xml">
   <xi:fallback>
    <error>xinclude: book.xml not found</error>
   </xi:fallback>
  </xi:include>
 </para>
</chapter>
EOD;

$dom = new DOMDocument;

// let's have a nice output
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;

// load the XML string defined above
$dom->loadXML($xml);

// substitute xincludes
$dom->xinclude();

echo $dom->saveXML();

?>

O exemplo acima irá imprimir algo similar a:

<?xml version="1.0"?>
<chapter xmlns:xi="http://www.w3.org/2001/XInclude">
  <title>Books of the other guy..</title>
  <para>
    <row xml:base="/home/didou/book.xml">
       <entry>The Grapes of Wrath</entry>
       <entry>John Steinbeck</entry>
       <entry>en</entry>
       <entry>0140186409</entry>
      </row>
    <row xml:base="/home/didou/book.xml">
       <entry>The Pearl</entry>
       <entry>John Steinbeck</entry>
       <entry>en</entry>
       <entry>014017737X</entry>
      </row>
    <row xml:base="/home/didou/book.xml">
       <entry>Samarcande</entry>
       <entry>Amine Maalouf</entry>
       <entry>fr</entry>
       <entry>2253051209</entry>
      </row>
  </para>
</chapter>

DOMDocument::validate
DOMDocumentFragment
DOMDocument


The DOMDocumentFragment class

Sinopse da classe

DOMDocumentFragment extends DOMNode {
/* Properties */
/* Methods */
bool appendXML ( string $data )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Índice

  • DOMDocumentFragment::appendXML — Append raw XML data
DOMDocument::xinclude
DOMDocumentFragment::appendXML
DOM


Append raw XML data

DOMDocumentFragment
DOMDocumentType
DOMDocumentFragment
PHP Manual

DOMDocumentFragment::appendXML

(PHP 5 >= 5.1.0)

DOMDocumentFragment::appendXML — Append raw XML data

Descrição

bool DOMDocumentFragment::appendXML ( string $data )

Appends raw XML data to a DOMDocumentFragment.

This method is not part of the DOM standard. It was created as a simpler approach for appending an XML DocumentFragment in a DOMDocument.

If you want to stick to the standards, you will have to create a temporary DOMDocument with a dummy root and then loop through the child nodes of the root of your XML data to append them.

Parâmetros

data

XML to append.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Appending XML data to your document

<?php
$doc = new DOMDocument();
$doc->loadXML("<root/>");
$f = $doc->createDocumentFragment();
$f->appendXML("<foo>text</foo><bar>text2</bar>");
$doc->documentElement->appendChild($f);
echo $doc->saveXML();
?>

O exemplo acima irá imprimir:

<?xml version="1.0"?>
<root><foo>text</foo><bar>text2</bar></root>

DOMDocumentFragment
DOMDocumentType
DOMDocumentFragment


The DOMDocumentType class

Introdução

Each DOMDocument has a doctype attribute whose value is either NULL or a DOMDocumentType object.

Sinopse da classe

DOMDocumentType extends DOMNode {
/* Properties */
readonly public string $publicId ;
readonly public string $systemId ;
readonly public string $name ;
readonly public DOMNamedNodeMap $entities ;
readonly public DOMNamedNodeMap $notations ;
readonly public string $internalSubset ;
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

publicId

The public identifier of the external subset.

systemId

The system identifier of the external subset. This may be an absolute URI or not.

name

The name of DTD; i.e., the name immediately following the DOCTYPE keyword.

entities

A DOMNamedNodeMap containing the general entities, both external and internal, declared in the DTD.

notations

A DOMNamedNodeMap containing the notations declared in the DTD.

internalSubset

The internal subset as a string, or null if there is none. This is does not contain the delimiting square brackets.

DOMDocumentFragment::appendXML
DOMElement
DOM


The DOMElement class

Sinopse da classe

DOMElement extends DOMNode {
/* Properties */
readonly public bool $schemaTypeInfo ;
readonly public string $tagName ;
/* Methods */
DOMElement::__construct ( string $name [, string $value [, string $namespaceURI ]] )
string DOMElement::getAttribute ( string $name )
DOMAttr DOMElement::getAttributeNode ( string $name )
DOMAttr DOMElement::getAttributeNodeNS ( string $namespaceURI , string $localName )
string DOMElement::getAttributeNS ( string $namespaceURI , string $localName )
DOMNodeList DOMElement::getElementsByTagName ( string $name )
DOMNodeList DOMElement::getElementsByTagNameNS ( string $namespaceURI , string $localName )
bool DOMElement::hasAttribute ( string $name )
bool DOMElement::hasAttributeNS ( string $namespaceURI , string $localName )
bool DOMElement::removeAttribute ( string $name )
bool DOMElement::removeAttributeNode ( DOMAttr $oldnode )
bool DOMElement::removeAttributeNS ( string $namespaceURI , string $localName )
DOMAttr DOMElement::setAttribute ( string $name , string $value )
DOMAttr DOMElement::setAttributeNode ( DOMAttr $attr )
DOMAttr DOMElement::setAttributeNodeNS ( DOMAttr $attr )
void DOMElement::setAttributeNS ( string $namespaceURI , string $qualifiedName , string $value )
void DOMElement::setIdAttribute ( string $name , bool $isId )
void DOMElement::setIdAttributeNode ( DOMAttr $attr , bool $isId )
void DOMElement::setIdAttributeNS ( string $namespaceURI , string $localName , bool $isId )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

schemaTypeInfo

Not implemented yet, always return NULL

tagName

The element name

Notas

Nota:

The DOM extension uses UTF-8 encoding. Use utf8_encode() and utf8_decode() to work with texts in ISO-8859-1 encoding or Iconv for other encodings.

Índice

  • DOMElement::__construct — Creates a new DOMElement object
  • DOMElement::getAttribute — Returns value of attribute
  • DOMElement::getAttributeNode — Returns attribute node
  • DOMElement::getAttributeNodeNS — Returns attribute node
  • DOMElement::getAttributeNS — Returns value of attribute
  • DOMElement::getElementsByTagName — Gets elements by tagname
  • DOMElement::getElementsByTagNameNS — Get elements by namespaceURI and localName
  • DOMElement::hasAttribute — Checks to see if attribute exists
  • DOMElement::hasAttributeNS — Checks to see if attribute exists
  • DOMElement::removeAttribute — Removes attribute
  • DOMElement::removeAttributeNode — Removes attribute
  • DOMElement::removeAttributeNS — Removes attribute
  • DOMElement::setAttribute — Adds new attribute
  • DOMElement::setAttributeNode — Adds new attribute node to element
  • DOMElement::setAttributeNodeNS — Adds new attribute node to element
  • DOMElement::setAttributeNS — Adds new attribute
  • DOMElement::setIdAttribute — Declares the attribute specified by name to be of type ID
  • DOMElement::setIdAttributeNode — Declares the attribute specified by node to be of type ID
  • DOMElement::setIdAttributeNS — Declares the attribute specified by local name and namespace URI to be of type ID
DOMDocumentType
DOMElement::__construct
DOM


Creates a new DOMElement object

DOMElement
DOMElement::getAttribute
DOMElement
PHP Manual

DOMElement::__construct

(PHP 5)

DOMElement::__construct — Creates a new DOMElement object

Descrição

DOMElement::__construct ( string $name [, string $value [, string $namespaceURI ]] )

Creates a new DOMElement object. This object is read only. It may be appended to a document, but additional nodes may not be appended to this node until the node is associated with a document. To create a writeable node, use DOMDocument::createElement or DOMDocument::createElementNS.

Parâmetros

name

The tag name of the element. When also passing in namespaceURI, the element name may take a prefix to be associated with the URI.

value

The value of the element.

namespaceURI

A namespace URI to create the element within a specific namespace.

Exemplos

Exemplo #1 Creating a new DOMElement

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$element_ns = new DOMElement('pr:node1', 'thisvalue', 'http://xyz');
$element->appendChild($element_ns);
echo $dom->saveXML(); /* <?xml version="1.0" encoding="utf-8"?>
<root><pr:node1 xmlns:pr="http://xyz">thisvalue</pr:node1></root> */

?>

Veja Também

  • DOMDocument::createElement() - Create new element node
  • DOMDocument::createElementNS() - Create new element node with an associated namespace

DOMElement
DOMElement::getAttribute
DOMElement


Returns value of attribute

DOMElement::__construct
DOMElement::getAttributeNode
DOMElement
PHP Manual

DOMElement::getAttribute

(PHP 5)

DOMElement::getAttribute — Returns value of attribute

Descrição

string DOMElement::getAttribute ( string $name )

Gets the value of the attribute with name name for the current node.

Parâmetros

name

The name of the attribute.

Valor Retornado

The value of the attribute, or an empty string if no attribute with the given name is found.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::setAttribute() - Adds new attribute
  • DOMElement::removeAttribute() - Removes attribute

DOMElement::__construct
DOMElement::getAttributeNode
DOMElement


Returns attribute node

DOMElement::getAttribute
DOMElement::getAttributeNodeNS
DOMElement
PHP Manual

DOMElement::getAttributeNode

(PHP 5)

DOMElement::getAttributeNode — Returns attribute node

Descrição

DOMAttr DOMElement::getAttributeNode ( string $name )

Returns the attribute node with name name for the current element.

Parâmetros

name

The name of the attribute.

Valor Retornado

The attribute node.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::setAttributeNode() - Adds new attribute node to element
  • DOMElement::removeAttributeNode() - Removes attribute

DOMElement::getAttribute
DOMElement::getAttributeNodeNS
DOMElement


Returns attribute node

DOMElement::getAttributeNode
DOMElement::getAttributeNS
DOMElement
PHP Manual

DOMElement::getAttributeNodeNS

(PHP 5)

DOMElement::getAttributeNodeNS — Returns attribute node

Descrição

DOMAttr DOMElement::getAttributeNodeNS ( string $namespaceURI , string $localName )

Returns the attribute node in namespace namespaceURI with local name localName for the current node.

Parâmetros

namespaceURI

The namespace URI.

localName

The local name.

Valor Retornado

The attribute node.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::setAttributeNodeNS() - Adds new attribute node to element
  • DOMElement::removeAttributeNode() - Removes attribute

DOMElement::getAttributeNode
DOMElement::getAttributeNS
DOMElement


Returns value of attribute

DOMElement::getAttributeNodeNS
DOMElement::getElementsByTagName
DOMElement
PHP Manual

DOMElement::getAttributeNS

(PHP 5)

DOMElement::getAttributeNS — Returns value of attribute

Descrição

string DOMElement::getAttributeNS ( string $namespaceURI , string $localName )

Gets the value of the attribute in namespace namespaceURI with local name localName for the current node.

Parâmetros

namespaceURI

The namespace URI.

localName

The local name.

Valor Retornado

The value of the attribute, or an empty string if no attribute with the given localName and namespaceURI is found.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::setAttributeNS() - Adds new attribute
  • DOMElement::removeAttributeNS() - Removes attribute

DOMElement::getAttributeNodeNS
DOMElement::getElementsByTagName
DOMElement


Gets elements by tagname

DOMElement::getAttributeNS
DOMElement::getElementsByTagNameNS
DOMElement
PHP Manual

DOMElement::getElementsByTagName

(PHP 5)

DOMElement::getElementsByTagName — Gets elements by tagname

Descrição

DOMNodeList DOMElement::getElementsByTagName ( string $name )

This function returns a new instance of the class DOMNodeList of all descendant elements with a given tag name, in the order in which they are encountered in a preorder traversal of this element tree.

Parâmetros

name

The tag name. Use * to return all elements within the element tree.

Valor Retornado

This function returns a new instance of the class DOMNodeList of all matched elements.

Veja Também

  • DOMElement::getElementsByTagNameNS() - Get elements by namespaceURI and localName

DOMElement::getAttributeNS
DOMElement::getElementsByTagNameNS
DOMElement


Get elements by namespaceURI and localName

DOMElement::getElementsByTagName
DOMElement::hasAttribute
DOMElement
PHP Manual

DOMElement::getElementsByTagNameNS

(PHP 5)

DOMElement::getElementsByTagNameNS — Get elements by namespaceURI and localName

Descrição

DOMNodeList DOMElement::getElementsByTagNameNS ( string $namespaceURI , string $localName )

This function fetch all the descendant elements with a given localName and namespaceURI.

Parâmetros

namespaceURI

The namespace URI.

localName

The local name. Use * to return all elements within the element tree.

Valor Retornado

This function returns a new instance of the class DOMNodeList of all matched elements in the order in which they are encountered in a preorder traversal of this element tree.

Veja Também

  • DOMElement::getElementsByTagName() - Gets elements by tagname

DOMElement::getElementsByTagName
DOMElement::hasAttribute
DOMElement


Checks to see if attribute exists

DOMElement::getElementsByTagNameNS
DOMElement::hasAttributeNS
DOMElement
PHP Manual

DOMElement::hasAttribute

(PHP 5)

DOMElement::hasAttribute — Checks to see if attribute exists

Descrição

bool DOMElement::hasAttribute ( string $name )

Indicates whether attribute named name exists as a member of the element.

Parâmetros

name

The attribute name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::getAttribute() - Returns value of attribute
  • DOMElement::setAttribute() - Adds new attribute
  • DOMElement::removeAttribute() - Removes attribute

DOMElement::getElementsByTagNameNS
DOMElement::hasAttributeNS
DOMElement


Checks to see if attribute exists

DOMElement::hasAttribute
DOMElement::removeAttribute
DOMElement
PHP Manual

DOMElement::hasAttributeNS

(PHP 5)

DOMElement::hasAttributeNS — Checks to see if attribute exists

Descrição

bool DOMElement::hasAttributeNS ( string $namespaceURI , string $localName )

Indicates whether attribute in namespace namespaceURI named localName exists as a member of the element.

Parâmetros

namespaceURI

The namespace URI.

localName

The local name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::getAttributeNS() - Returns value of attribute
  • DOMElement::setAttributeNS() - Adds new attribute
  • DOMElement::removeAttributeNS() - Removes attribute

DOMElement::hasAttribute
DOMElement::removeAttribute
DOMElement


Removes attribute

DOMElement::hasAttributeNS
DOMElement::removeAttributeNode
DOMElement
PHP Manual

DOMElement::removeAttribute

(PHP 5)

DOMElement::removeAttribute — Removes attribute

Descrição

bool DOMElement::removeAttribute ( string $name )

Removes attribute named name from the element.

Parâmetros

name

The name of the attribute.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::getAttribute() - Returns value of attribute
  • DOMElement::setAttribute() - Adds new attribute

DOMElement::hasAttributeNS
DOMElement::removeAttributeNode
DOMElement


Removes attribute

DOMElement::removeAttribute
DOMElement::removeAttributeNS
DOMElement
PHP Manual

DOMElement::removeAttributeNode

(PHP 5)

DOMElement::removeAttributeNode — Removes attribute

Descrição

bool DOMElement::removeAttributeNode ( DOMAttr $oldnode )

Removes attribute oldnode from the element.

Parâmetros

oldnode

The attribute node.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

DOM_NOT_FOUND_ERROR

Raised if oldnode is not an attribute of the element.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::getAttributeNode() - Returns attribute node
  • DOMElement::setAttributeNode() - Adds new attribute node to element

DOMElement::removeAttribute
DOMElement::removeAttributeNS
DOMElement


Removes attribute

DOMElement::removeAttributeNode
DOMElement::setAttribute
DOMElement
PHP Manual

DOMElement::removeAttributeNS

(PHP 5)

DOMElement::removeAttributeNS — Removes attribute

Descrição

bool DOMElement::removeAttributeNS ( string $namespaceURI , string $localName )

Removes attribute is namespace namespaceURI named localName from the element.

Parâmetros

namespaceURI

The namespace URI.

localName

The local name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::getAttributeNS() - Returns value of attribute
  • DOMElement::setAttributeNS() - Adds new attribute

DOMElement::removeAttributeNode
DOMElement::setAttribute
DOMElement


Adds new attribute

DOMElement::removeAttributeNS
DOMElement::setAttributeNode
DOMElement
PHP Manual

DOMElement::setAttribute

(PHP 5)

DOMElement::setAttribute — Adds new attribute

Descrição

DOMAttr DOMElement::setAttribute ( string $name , string $value )

Sets an attribute with name name to the given value. If the attribute does not exist, it will be created.

Parâmetros

name

The name of the attribute.

value

The value of the attribute.

Valor Retornado

The new DOMAttr or FALSE if an error occured.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

Exemplos

Exemplo #1 Setting an attribute

<?php
$doc = new DOMDocument("1.0");
$node = $doc->createElement("para");
$newnode = $doc->appendChild($node);
$newnode->setAttribute("align", "left");
?>

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::getAttribute() - Returns value of attribute
  • DOMElement::removeAttribute() - Removes attribute

DOMElement::removeAttributeNS
DOMElement::setAttributeNode
DOMElement


Adds new attribute node to element

DOMElement::setAttribute
DOMElement::setAttributeNodeNS
DOMElement
PHP Manual

DOMElement::setAttributeNode

(PHP 5)

DOMElement::setAttributeNode — Adds new attribute node to element

Descrição

DOMAttr DOMElement::setAttributeNode ( DOMAttr $attr )

Adds new attribute node attr to element.

Parâmetros

attr

The attribute node.

Valor Retornado

Returns old node if the attribute has been replaced or NULL.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

Veja Também

  • DOMElement::hasAttribute() - Checks to see if attribute exists
  • DOMElement::getAttributeNode() - Returns attribute node
  • DOMElement::removeAttributeNode() - Removes attribute

DOMElement::setAttribute
DOMElement::setAttributeNodeNS
DOMElement


Adds new attribute node to element

DOMElement::setAttributeNode
DOMElement::setAttributeNS
DOMElement
PHP Manual

DOMElement::setAttributeNodeNS

(PHP 5)

DOMElement::setAttributeNodeNS — Adds new attribute node to element

Descrição

DOMAttr DOMElement::setAttributeNodeNS ( DOMAttr $attr )

Adds new attribute node attr to element.

Parâmetros

attr

The attribute node.

Valor Retornado

Returns the old node if the attribute has been replaced.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::getAttributeNodeNS() - Returns attribute node
  • DOMElement::removeAttributeNode() - Removes attribute

DOMElement::setAttributeNode
DOMElement::setAttributeNS
DOMElement


Adds new attribute

DOMElement::setAttributeNodeNS
DOMElement::setIdAttribute
DOMElement
PHP Manual

DOMElement::setAttributeNS

(PHP 5)

DOMElement::setAttributeNS — Adds new attribute

Descrição

void DOMElement::setAttributeNS ( string $namespaceURI , string $qualifiedName , string $value )

Sets an attribute with namespace namespaceURI and name name to the given value. If the attribute does not exist, it will be created.

Parâmetros

namespaceURI

The namespace URI.

qualifiedName

The qualified name of the attribute, as prefix:tagname.

value

The value of the attribute.

Valor Retornado

Não há valor retornado.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

DOM_NAMESPACE_ERR

Raised if qualifiedName is a malformed qualified name, or if qualifiedName has a prefix and namespaceURI is NULL.

Veja Também

  • DOMElement::hasAttributeNS() - Checks to see if attribute exists
  • DOMElement::getAttributeNS() - Returns value of attribute
  • DOMElement::removeAttributeNS() - Removes attribute

DOMElement::setAttributeNodeNS
DOMElement::setIdAttribute
DOMElement


Declares the attribute specified by name to be of type ID

DOMElement::setAttributeNS
DOMElement::setIdAttributeNode
DOMElement
PHP Manual

DOMElement::setIdAttribute

(PHP 5)

DOMElement::setIdAttribute — Declares the attribute specified by name to be of type ID

Descrição

void DOMElement::setIdAttribute ( string $name , bool $isId )

Declares the attribute name to be of type ID.

Parâmetros

name

The name of the attribute.

isId

Set it to TRUE if you want name to be of type ID, FALSE otherwise.

Valor Retornado

Não há valor retornado.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

DOM_NOT_FOUND

Raised if name is not an attribute of this element.

Veja Também

  • DOMDocument::getElementById() - Searches for an element with a certain id
  • DOMElement::setIdAttributeNode() - Declares the attribute specified by node to be of type ID
  • DOMElement::setIdAttributeNS() - Declares the attribute specified by local name and namespace URI to be of type ID

DOMElement::setAttributeNS
DOMElement::setIdAttributeNode
DOMElement


Declares the attribute specified by node to be of type ID

DOMElement::setIdAttribute
DOMElement::setIdAttributeNS
DOMElement
PHP Manual

DOMElement::setIdAttributeNode

(PHP 5)

DOMElement::setIdAttributeNode — Declares the attribute specified by node to be of type ID

Descrição

void DOMElement::setIdAttributeNode ( DOMAttr $attr , bool $isId )

Declares the attribute specified by attr to be of type ID.

Parâmetros

attr

The attribute node.

isId

Set it to TRUE if you want name to be of type ID, FALSE otherwise.

Valor Retornado

Não há valor retornado.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

DOM_NOT_FOUND

Raised if name is not an attribute of this element.

Veja Também

  • DOMDocument::getElementById() - Searches for an element with a certain id
  • DOMElement::setIdAttribute() - Declares the attribute specified by name to be of type ID
  • DOMElement::setIdAttributeNS() - Declares the attribute specified by local name and namespace URI to be of type ID

DOMElement::setIdAttribute
DOMElement::setIdAttributeNS
DOMElement


Declares the attribute specified by local name and namespace URI to be of type ID

DOMElement::setIdAttributeNode
DOMEntity
DOMElement
PHP Manual

DOMElement::setIdAttributeNS

(PHP 5)

DOMElement::setIdAttributeNS — Declares the attribute specified by local name and namespace URI to be of type ID

Descrição

void DOMElement::setIdAttributeNS ( string $namespaceURI , string $localName , bool $isId )

Declares the attribute specified by localName and namespaceURI to be of type ID.

Parâmetros

namespaceURI

The namespace URI of the attribute.

localName

The local name of the attribute, as prefix:tagname.

isId

Set it to TRUE if you want name to be of type ID, FALSE otherwise.

Valor Retornado

Não há valor retornado.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if the node is readonly.

DOM_NOT_FOUND

Raised if name is not an attribute of this element.

Veja Também

  • DOMDocument::getElementById() - Searches for an element with a certain id
  • DOMElement::setIdAttribute() - Declares the attribute specified by name to be of type ID
  • DOMElement::setIdAttributeNode() - Declares the attribute specified by node to be of type ID

DOMElement::setIdAttributeNode
DOMEntity
DOMElement


The DOMEntity class

Introdução

This interface represents a known entity, either parsed or unparsed, in an XML document.

Sinopse da classe

DOMEntity extends DOMNode {
/* Properties */
readonly public string $publicId ;
readonly public string $systemId ;
readonly public string $notationName ;
public string $actualEncoding ;
readonly public string $encoding ;
readonly public string $version ;
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

publicId

The public identifier associated with the entity if specified, and NULL otherwise.

systemId

The system identifier associated with the entity if specified, and NULL otherwise. This may be an absolute URI or not.

notationName

For unparsed entities, the name of the notation for the entity. For parsed entities, this is NULL.

actualEncoding

An attribute specifying the encoding used for this entity at the time of parsing, when it is an external parsed entity. This is NULL if it an entity from the internal subset or if it is not known.

encoding

An attribute specifying, as part of the text declaration, the encoding of this entity, when it is an external parsed entity. This is NULL otherwise.

version

An attribute specifying, as part of the text declaration, the version number of this entity, when it is an external parsed entity. This is NULL otherwise.

DOMElement::setIdAttributeNS
DOMEntityReference
DOM


The DOMEntityReference class

Sinopse da classe

DOMEntityReference extends DOMNode {
/* Properties */
/* Methods */
DOMEntityReference::__construct ( string $name )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Índice

  • DOMEntityReference::__construct — Creates a new DOMEntityReference object
DOMEntity
DOMEntityReference::__construct
DOM


Creates a new DOMEntityReference object

DOMEntityReference
DOMException
DOMEntityReference
PHP Manual

DOMEntityReference::__construct

(PHP 5)

DOMEntityReference::__construct — Creates a new DOMEntityReference object

Descrição

DOMEntityReference::__construct ( string $name )

Creates a new DOMEntityReference object.

Parâmetros

name

The name of the entity reference.

Exemplos

Exemplo #1 Creating a new DOMEntityReference

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$entity = $element->appendChild(new DOMEntityReference('nbsp'));
echo $dom->saveXML(); /* <?xml version="1.0" encoding="iso-8859-1"?><root>&nbsp;</root> */

?>

Veja Também

  • DOMDocument::createEntityReference() - Create new entity reference node

DOMEntityReference
DOMException
DOMEntityReference


The DOMException class

Introdução

DOM operations raise exceptions under particular circumstances, i.e., when an operation is impossible to perform for logical reasons.

See also Exceções.

Sinopse da classe

DOMException extends Exception {
/* Properties */
readonly public int $code ;
/* Inherited methods */
final public string Exception::getMessage ( void )
final public int Exception::getCode ( void )
final public string Exception::getFile ( void )
final public string Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private string Exception::__clone ( void )
}

Propriedades

code

An integer indicating the type of error generated

DOMEntityReference::__construct
DOMImplementation
DOM


The DOMImplementation class

Introdução

The DOMImplementation interface provides a number of methods for performing operations that are independent of any particular instance of the document object model.

Sinopse da classe

DOMImplementation {
/* Properties */
/* Methods */
DOMImplementation::__construct ( void )
DOMDocument DOMImplementation::createDocument ([ string $namespaceURI = NULL [, string $qualifiedName = NULL [, DOMDocumentType $doctype = NULL ]]] )
DOMDocumentType DOMImplementation::createDocumentType ([ string $qualifiedName = NULL [, string $publicId = NULL [, string $systemId = NULL ]]] )
bool DOMImplementation::hasFeature ( string $feature , string $version )
}

Índice

  • DOMImplementation::__construct — Creates a new DOMImplementation object
  • DOMImplementation::createDocument — Creates a DOMDocument object of the specified type with its document element
  • DOMImplementation::createDocumentType — Creates an empty DOMDocumentType object
  • DOMImplementation::hasFeature — Test if the DOM implementation implements a specific feature
DOMException
DOMImplementation::__construct
DOM


Creates a new DOMImplementation object

DOMImplementation
DOMImplementation::createDocument
DOMImplementation
PHP Manual

DOMImplementation::__construct

(PHP 5)

DOMImplementation::__construct — Creates a new DOMImplementation object

Descrição

DOMImplementation::__construct ( void )

Creates a new DOMImplementation object.

DOMImplementation
DOMImplementation::createDocument
DOMImplementation


Creates a DOMDocument object of the specified type with its document element

DOMImplementation::__construct
DOMImplementation::createDocumentType
DOMImplementation
PHP Manual

DOMImplementation::createDocument

(PHP 5)

DOMImplementation::createDocument — Creates a DOMDocument object of the specified type with its document element

Descrição

DOMDocument DOMImplementation::createDocument ([ string $namespaceURI = NULL [, string $qualifiedName = NULL [, DOMDocumentType $doctype = NULL ]]] )

Creates a DOMDocument object of the specified type with its document element.

Parâmetros

namespaceURI

The namespace URI of the document element to create.

qualifiedName

The qualified name of the document element to create.

doctype

The type of document to create or NULL.

Valor Retornado

A new DOMDocument object. If namespaceURI, qualifiedName, and doctype are null, the returned DOMDocument is empty with no document element

Erros

DOM_WRONG_DOCUMENT_ERR

Raised if doctype has already been used with a different document or was created from a different implementation.

DOM_NAMESPACE_ERR

Raised if there is an error with the namespace, as determined by namespaceURI and qualifiedName.

This method may be called statically, but will issue an E_STRICT error.

Veja Também

  • DOMDocument::__construct() - Creates a new DOMDocument object
  • DOMImplementation::createDocumentType() - Creates an empty DOMDocumentType object

DOMImplementation::__construct
DOMImplementation::createDocumentType
DOMImplementation


Creates an empty DOMDocumentType object

DOMImplementation::createDocument
DOMImplementation::hasFeature
DOMImplementation
PHP Manual

DOMImplementation::createDocumentType

(PHP 5)

DOMImplementation::createDocumentType — Creates an empty DOMDocumentType object

Descrição

DOMDocumentType DOMImplementation::createDocumentType ([ string $qualifiedName = NULL [, string $publicId = NULL [, string $systemId = NULL ]]] )

Creates an empty DOMDocumentType object. Entity declarations and notations are not made available. Entity reference expansions and default attribute additions do not occur.

Parâmetros

qualifiedName

The qualified name of the document type to create.

publicId

The external subset public identifier.

systemId

The external subset system identifier.

Valor Retornado

A new DOMDocumentType node with its ownerDocument set to NULL.

Erros

DOM_NAMESPACE_ERR

Raised if there is an error with the namespace, as determined by qualifiedName.

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Creating a document with an attached DTD

<?php

// Creates an instance of the DOMImplementation class
$imp = new DOMImplementation;

// Creates a DOMDocumentType instance
$dtd = $imp->createDocumentType('graph', '', 'graph.dtd');

// Creates a DOMDocument instance
$dom = $imp->createDocument("", "", $dtd);

// Set other properties
$dom->encoding = 'UTF-8';
$dom->standalone = false;

// Create an empty element
$element = $dom->createElement('graph');

// Append the element
$dom->appendChild($element);

// Retrieve and print the document
echo $dom->saveXML();

?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE graph SYSTEM "graph.dtd">
<graph/>

Veja Também

  • DOMImplementation::createDocument() - Creates a DOMDocument object of the specified type with its document element

DOMImplementation::createDocument
DOMImplementation::hasFeature
DOMImplementation


Test if the DOM implementation implements a specific feature

DOMImplementation::createDocumentType
DOMNamedNodeMap
DOMImplementation
PHP Manual

DOMImplementation::hasFeature

(PHP 5)

DOMImplementation::hasFeature — Test if the DOM implementation implements a specific feature

Descrição

bool DOMImplementation::hasFeature ( string $feature , string $version )

Test if the DOM implementation implements a specific feature.

You can find a list of all features in the » Conformance section of the DOM specification.

Parâmetros

feature

The feature to test.

version

The version number of the feature to test. In level 2, this can be either 2.0 or 1.0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

This method may be called statically, but will issue an E_STRICT error.

Exemplos

Exemplo #1 Testing your DOM Implementation

<?php

$features = array(
  'Core'           => 'Core module',
  'XML'            => 'XML module',
  'HTML'           => 'HTML module',
  'Views'          => 'Views module',
  'Stylesheets'    => 'Style Sheets module',
  'CSS'            => 'CSS module',
  'CSS2'           => 'CSS2 module',
  'Events'         => 'Events module',
  'UIEvents'       => 'User interface Events module',
  'MouseEvents'    => 'Mouse Events module',
  'MutationEvents' => 'Mutation Events module',
  'HTMLEvents'     => 'HTML Events module',
  'Range'          => 'Range module',
  'Traversal'      => 'Traversal module'
);

foreach ($features as $key => $name) {
  if (DOMImplementation::hasFeature($key, '2.0')) {
    echo "Has feature $name\n";
  } else {
    echo "Missing feature $name\n";
  }
}

?>

Veja Também

  • DOMNode::isSupported() - Checks if feature is supported for specified version

DOMImplementation::createDocumentType
DOMNamedNodeMap
DOMImplementation


The DOMNamedNodeMap class

Sinopse da classe

DOMNamedNodeMap {
/* Properties */
/* Methods */
DOMNode getNamedItem ( string $name )
DOMNode getNamedItemNS ( string $namespaceURI , string $localName )
DOMNode item ( int $index )
}

Índice

  • DOMNamedNodeMap::getNamedItem — Retrieves a node specified by name
  • DOMNamedNodeMap::getNamedItemNS — Retrieves a node specified by local name and namespace URI
  • DOMNamedNodeMap::item — Retrieves a node specified by index
DOMImplementation::hasFeature
DOMNamedNodeMap::getNamedItem
DOM


Retrieves a node specified by name

DOMNamedNodeMap
DOMNamedNodeMap::getNamedItemNS
DOMNamedNodeMap
PHP Manual

DOMNamedNodeMap::getNamedItem

(PHP 5)

DOMNamedNodeMap::getNamedItem — Retrieves a node specified by name

Descrição

DOMNode DOMNamedNodeMap::getNamedItem ( string $name )

Retrieves a node specified by its nodeName.

Parâmetros

name

The nodeName of the node to retrieve.

Valor Retornado

A node (of any type) with the specified nodeName, or NULL if no node is found.

Veja Também

  • DOMNamedNodeMap::getNamedItemNS() - Retrieves a node specified by local name and namespace URI

DOMNamedNodeMap
DOMNamedNodeMap::getNamedItemNS
DOMNamedNodeMap


Retrieves a node specified by local name and namespace URI

DOMNamedNodeMap::getNamedItem
DOMNamedNodeMap::item
DOMNamedNodeMap
PHP Manual

DOMNamedNodeMap::getNamedItemNS

(PHP 5)

DOMNamedNodeMap::getNamedItemNS — Retrieves a node specified by local name and namespace URI

Descrição

DOMNode DOMNamedNodeMap::getNamedItemNS ( string $namespaceURI , string $localName )

Retrieves a node specified by localName and namespaceURI.

Parâmetros

namespaceURI

The namespace URI of the node to retrieve.

localName

The local name of the node to retrieve.

Valor Retornado

A node (of any type) with the specified local name and namespace URI, or NULL if no node is found.

Veja Também

  • DOMNamedNodeMap::getNamedItem() - Retrieves a node specified by name

DOMNamedNodeMap::getNamedItem
DOMNamedNodeMap::item
DOMNamedNodeMap


Retrieves a node specified by index

DOMNamedNodeMap::getNamedItemNS
DOMNode
DOMNamedNodeMap
PHP Manual

DOMNamedNodeMap::item

(PHP 5)

DOMNamedNodeMap::item — Retrieves a node specified by index

Descrição

DOMNode DOMNamedNodeMap::item ( int $index )

Retrieves a node specified by index within the DOMNamedNodeMap object.

Parâmetros

index

Index into this map.

Valor Retornado

The node at the indexth position in the map, or NULL if that is not a valid index (greater than or equal to the number of nodes in this map).

DOMNamedNodeMap::getNamedItemNS
DOMNode
DOMNamedNodeMap


The DOMNode class

Sinopse da classe

DOMNode {
/* Properties */
public readonly string $nodeName ;
public string $nodeValue ;
public readonly int $nodeType ;
public readonly DOMNode $parentNode ;
public readonly DOMNodeList $childNodes ;
public readonly DOMNode $firstChild ;
public readonly DOMNode $lastChild ;
public readonly DOMNode $previousSibling ;
public readonly DOMNode $nextSibling ;
public readonly DOMNamedNodeMap $attributes ;
public readonly DOMDocument $ownerDocument ;
public readonly string $namespaceURI ;
public string $prefix ;
public readonly string $localName ;
public readonly string $baseURI ;
public string $textContent ;
/* Methods */
DOMNode appendChild ( DOMNode $newnode )
DOMNode cloneNode ([ bool $deep ] )
public int getLineNo ( void )
bool hasAttributes ( void )
bool hasChildNodes ( void )
DOMNode insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool isDefaultNamespace ( string $namespaceURI )
bool isSameNode ( DOMNode $node )
bool isSupported ( string $feature , string $version )
string lookupNamespaceURI ( string $prefix )
string lookupPrefix ( string $namespaceURI )
void normalize ( void )
DOMNode removeChild ( DOMNode $oldnode )
DOMNode replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

nodeName

Returns the most accurate name for the current node type

nodeValue

The value of this node, depending on its type

nodeType

Gets the type of the node. One of the predefined XML_xxx_NODE constants

parentNode

The parent of this node

childNodes

A DOMNodeList that contains all children of this node. If there are no children, this is an empty DOMNodeList.

firstChild

The first child of this node. If there is no such node, this returns NULL.

lastChild

The last child of this node. If there is no such node, this returns NULL.

previousSibling

The node immediately preceding this node. If there is no such node, this returns NULL.

nextSibling

The node immediately following this node. If there is no such node, this returns NULL.

attributes

A DOMNamedNodeMap containing the attributes of this node (if it is a DOMElement) or NULL otherwise.

ownerDocument

The DOMDocument object associated with this node.

namespaceURI

The namespace URI of this node, or NULL if it is unspecified.

prefix

The namespace prefix of this node, or NULL if it is unspecified.

localName

Returns the local part of the qualified name of this node.

baseURI

The absolute base URI of this node or NULL if the implementation wasn't able to obtain an absolute URI.

textContent

This attribute returns the text content of this node and its descendants.

Notas

Nota:

The DOM extension uses UTF-8 encoding. Use utf8_encode() and utf8_decode() to work with texts in ISO-8859-1 encoding or Iconv for other encodings.

Veja Também

  • » W3C specification of Node

Índice

  • DOMNode::appendChild — Adds new child at the end of the children
  • DOMNode::cloneNode — Clones a node
  • DOMNode::getLineNo — Get line number for a node
  • DOMNode::hasAttributes — Checks if node has attributes
  • DOMNode::hasChildNodes — Checks if node has children
  • DOMNode::insertBefore — Adds a new child before a reference node
  • DOMNode::isDefaultNamespace — Checks if the specified namespaceURI is the default namespace or not
  • DOMNode::isSameNode — Indicates if two nodes are the same node
  • DOMNode::isSupported — Checks if feature is supported for specified version
  • DOMNode::lookupNamespaceURI — Gets the namespace URI of the node based on the prefix
  • DOMNode::lookupPrefix — Gets the namespace prefix of the node based on the namespace URI
  • DOMNode::normalize — Normalizes the node
  • DOMNode::removeChild — Removes child from list of children
  • DOMNode::replaceChild — Replaces a child
DOMNamedNodeMap::item
DOMNode::appendChild
DOM


Adds new child at the end of the children

DOMNode
DOMNode::cloneNode
DOMNode
PHP Manual

DOMNode::appendChild

(PHP 5)

DOMNode::appendChild — Adds new child at the end of the children

Descrição

DOMNode DOMNode::appendChild ( DOMNode $newnode )

This functions appends a child to an existing list of children or creates a new list of children. The child can be created with e.g. DOMDocument::createElement(), DOMDocument::createTextNode() etc. or simply by using any other node.

Parâmetros

newnode

The appended child.

Valor Retornado

The node added.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if this node is readonly or if the previous parent of the node being inserted is readonly.

DOM_HIERARCHY_REQUEST_ERR

Raised if this node is of a type that does not allow children of the type of the newnode node, or if the node to append is one of this node's ancestors or this node itself.

DOM_WRONG_DOCUMENT_ERR

Raised if newnode was created from a different document than the one that created this node.

Exemplos

The following example will add a new element node to a fresh document.

Exemplo #1 Adding a child

<?php

$doc = new DOMDocument;

$node = $doc->createElement("para");
$newnode = $doc->appendChild($node);

echo $doc->saveXML();
?>

Veja Também

  • DOMNode::removeChild() - Removes child from list of children
  • DOMNode::replaceChild() - Replaces a child

DOMNode
DOMNode::cloneNode
DOMNode


Clones a node

DOMNode::appendChild
DOMNode::getLineNo
DOMNode
PHP Manual

DOMNode::cloneNode

(PHP 5)

DOMNode::cloneNode — Clones a node

Descrição

DOMNode DOMNode::cloneNode ([ bool $deep ] )

Creates a copy of the node.

Parâmetros

deep

Indicates whether to copy all descendant nodes. This parameter is defaulted to FALSE.

Valor Retornado

The cloned node.

DOMNode::appendChild
DOMNode::getLineNo
DOMNode


Get line number for a node

DOMNode::cloneNode
DOMNode::hasAttributes
DOMNode
PHP Manual

DOMNode::getLineNo

(PHP 5 >= 5.3.0)

DOMNode::getLineNo — Get line number for a node

Descrição

public int DOMNode::getLineNo ( void )

Gets line number for where the node is defined.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Always returns the line number where the node was defined in.

Exemplos

Exemplo #1 DOMNode::getLineNo() example

<?php
// XML dump for below example
$xml = <<<XML
<?xml version="1.0" encoding="utf-8"?>
<root>
    <node />
</root>
XML;

// Create a new DOMDocument instance
$dom = new DOMDocument;

// Load the XML
$dom->loadXML($xml);

// Print where the line where the 'node' element was defined in
printf('The <node> tag is defined on line %d', $dom->getElementsByTagName('node')->item(0)->getLineNo());
?>

O exemplo acima irá imprimir:

The <node> tag is defined in line 3

DOMNode::cloneNode
DOMNode::hasAttributes
DOMNode


Checks if node has attributes

DOMNode::getLineNo
DOMNode::hasChildNodes
DOMNode
PHP Manual

DOMNode::hasAttributes

(PHP 5)

DOMNode::hasAttributes — Checks if node has attributes

Descrição

bool DOMNode::hasAttributes ( void )

This method checks if the node has attributes. The tested node have to be an XML_ELEMENT_NODE.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMNode::hasChildNodes() - Checks if node has children

DOMNode::getLineNo
DOMNode::hasChildNodes
DOMNode


Checks if node has children

DOMNode::hasAttributes
DOMNode::insertBefore
DOMNode
PHP Manual

DOMNode::hasChildNodes

(PHP 5)

DOMNode::hasChildNodes — Checks if node has children

Descrição

bool DOMNode::hasChildNodes ( void )

This function checks if the node has children.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMNode::hasAttributes() - Checks if node has attributes

DOMNode::hasAttributes
DOMNode::insertBefore
DOMNode


Adds a new child before a reference node

DOMNode::hasChildNodes
DOMNode::isDefaultNamespace
DOMNode
PHP Manual

DOMNode::insertBefore

(PHP 5)

DOMNode::insertBefore — Adds a new child before a reference node

Descrição

DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )

This function inserts a new node right before the reference node. If you plan to do further modifications on the appended child you must use the returned node.

Parâmetros

newnode

The new node.

refnode

The reference node. If not supplied, newnode is appended to the children.

Valor Retornado

The inserted node.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if this node is readonly or if the previous parent of the node being inserted is readonly.

DOM_HIERARCHY_REQUEST_ERR

Raised if this node is of a type that does not allow children of the type of the newnode node, or if the node to append is one of this node's ancestors or this node itself.

DOM_WRONG_DOCUMENT_ERR

Raised if newnode was created from a different document than the one that created this node.

DOM_NOT_FOUND

Raised if refnode is not a child of this node.

DOMNode::hasChildNodes
DOMNode::isDefaultNamespace
DOMNode


Checks if the specified namespaceURI is the default namespace or not

DOMNode::insertBefore
DOMNode::isSameNode
DOMNode
PHP Manual

DOMNode::isDefaultNamespace

(PHP 5)

DOMNode::isDefaultNamespace — Checks if the specified namespaceURI is the default namespace or not

Descrição

bool DOMNode::isDefaultNamespace ( string $namespaceURI )

Tells whether namespaceURI is the default namespace.

Parâmetros

namespaceURI

The namespace URI to look for.

Valor Retornado

Return TRUE if namespaceURI is the default namespace, FALSE otherwise.

DOMNode::insertBefore
DOMNode::isSameNode
DOMNode


Indicates if two nodes are the same node

DOMNode::isDefaultNamespace
DOMNode::isSupported
DOMNode
PHP Manual

DOMNode::isSameNode

(PHP 5)

DOMNode::isSameNode — Indicates if two nodes are the same node

Descrição

bool DOMNode::isSameNode ( DOMNode $node )

This function indicates if two nodes are the same node. The comparison is not based on content

Parâmetros

node

The compared node.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

DOMNode::isDefaultNamespace
DOMNode::isSupported
DOMNode


Checks if feature is supported for specified version

DOMNode::isSameNode
DOMNode::lookupNamespaceURI
DOMNode
PHP Manual

DOMNode::isSupported

(PHP 5)

DOMNode::isSupported — Checks if feature is supported for specified version

Descrição

bool DOMNode::isSupported ( string $feature , string $version )

Checks if the asked feature is supported for the specified version.

Parâmetros

feature

The feature to test. See the example of DOMImplementation::hasFeature() for a list of features.

version

The version number of the feature to test.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • DOMImplementation::hasFeature() - Test if the DOM implementation implements a specific feature

DOMNode::isSameNode
DOMNode::lookupNamespaceURI
DOMNode


Gets the namespace URI of the node based on the prefix

DOMNode::isSupported
DOMNode::lookupPrefix
DOMNode
PHP Manual

DOMNode::lookupNamespaceURI

(PHP 5)

DOMNode::lookupNamespaceURI — Gets the namespace URI of the node based on the prefix

Descrição

string DOMNode::lookupNamespaceURI ( string $prefix )

Gets the namespace URI of the node based on the prefix.

Parâmetros

prefix

The prefix of the namespace.

Valor Retornado

The namespace URI of the node.

Veja Também

  • DOMNode::lookupPrefix() - Gets the namespace prefix of the node based on the namespace URI

DOMNode::isSupported
DOMNode::lookupPrefix
DOMNode


Gets the namespace prefix of the node based on the namespace URI

DOMNode::lookupNamespaceURI
DOMNode::normalize
DOMNode
PHP Manual

DOMNode::lookupPrefix

(PHP 5)

DOMNode::lookupPrefix — Gets the namespace prefix of the node based on the namespace URI

Descrição

string DOMNode::lookupPrefix ( string $namespaceURI )

Gets the namespace prefix of the node based on the namespace URI.

Parâmetros

namespaceURI

The namespace URI.

Valor Retornado

The prefix of the namespace.

Veja Também

  • DOMNode::lookupNamespaceURI() - Gets the namespace URI of the node based on the prefix

DOMNode::lookupNamespaceURI
DOMNode::normalize
DOMNode


Normalizes the node

DOMNode::lookupPrefix
DOMNode::removeChild
DOMNode
PHP Manual

DOMNode::normalize

(PHP 5)

DOMNode::normalize — Normalizes the node

Descrição

void DOMNode::normalize ( void )

Normalizes the node.

Valor Retornado

Não há valor retornado.

Veja Também

  • » The DOM Specification
  • DOMDocument::normalizeDocument() - Normalizes the document

DOMNode::lookupPrefix
DOMNode::removeChild
DOMNode


Removes child from list of children

DOMNode::normalize
DOMNode::replaceChild
DOMNode
PHP Manual

DOMNode::removeChild

(PHP 5)

DOMNode::removeChild — Removes child from list of children

Descrição

DOMNode DOMNode::removeChild ( DOMNode $oldnode )

This functions removes a child from a list of children.

Parâmetros

oldnode

The removed child.

Valor Retornado

If the child could be removed the functions returns the old child.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if this node is readonly.

DOM_NOT_FOUND

Raised if oldnode is not a child of this node.

Exemplos

The following example will delete the chapter element of our XML document.

Exemplo #1 Removing a child

<?php

$doc = new DOMDocument;
$doc->load('book.xml');

$book = $doc->documentElement;

// we retrieve the chapter and remove it from the book
$chapter = $book->getElementsByTagName('chapter')->item(0);
$oldchapter = $book->removeChild($chapter);

echo $doc->saveXML();
?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
          "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<book id="listing">
 <title>My lists</title>

</book>

Exemplo #2 Preserving the parent node's namespace URI

<?php

$doc = new DOMDocument;
$doc->load('book.xml');

$book = $doc->documentElement;

// we retrieve the chapter and remove it from the book
$chapter = $book->getElementsByTagName('chapter')->item(0);

// copy the namespace URI
$nsuri = $book->namespaceURI;

// Delete the child node
$book->removeChild($chapter);

// paste the namespace URI back into the parent node
$book->namespaceURI = $nsuri;
?>

Notas

Nota:

After calling this method, the DOMNode::$namespaceURI property on the parent node will be reset to NULL. Above example shows how to work around it.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMNode::replaceChild() - Replaces a child

DOMNode::normalize
DOMNode::replaceChild
DOMNode


Replaces a child

DOMNode::removeChild
DOMNodeList
DOMNode
PHP Manual

DOMNode::replaceChild

(PHP 5)

DOMNode::replaceChild — Replaces a child

Descrição

DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )

This function replaces the child oldnode with the passed new node. If the new node is already a child it will not be added a second time. If the replacement succeeds the old node is returned.

Parâmetros

newnode

The new node. It must be a member of the target document, i.e. created by one of the DOMDocument->createXXX() methods or imported in the document by DOMDocument::importNode.

oldnode

The old node.

Valor Retornado

The old node or FALSE if an error occur.

Erros

DOM_NO_MODIFICATION_ALLOWED_ERR

Raised if this node is readonly or if the previous parent of the node being inserted is readonly.

DOM_HIERARCHY_REQUEST_ERR

Raised if this node is of a type that does not allow children of the type of the newnode node, or if the node to put in is one of this node's ancestors or this node itself.

DOM_WRONG_DOCUMENT_ERR

Raised if newnode was created from a different document than the one that created this node.

DOM_NOT_FOUND

Raised if oldnode is not a child of this node.

Veja Também

  • DOMNode::appendChild() - Adds new child at the end of the children
  • DOMNode::removeChild() - Removes child from list of children

DOMNode::removeChild
DOMNodeList
DOMNode


The DOMNodeList class

Sinopse da classe

DOMNodeList {
/* Properties */
readonly public int $length ;
/* Methods */
DOMNode DOMNodelist::item ( int $index )
}

Propriedades

length

The number of nodes in the list. The range of valid child node indices is 0 to length - 1 inclusive.

Índice

  • DOMNodelist::item — Retrieves a node specified by index
DOMNode::replaceChild
DOMNodelist::item
DOM


Retrieves a node specified by index

DOMNodeList
DOMNotation
DOMNodeList
PHP Manual

DOMNodelist::item

(PHP 5)

DOMNodelist::item — Retrieves a node specified by index

Descrição

DOMNode DOMNodelist::item ( int $index )

Retrieves a node specified by index within the DOMNodeList object.

Dica

If you need to know the number of nodes in the collection, use the length property of the DOMNodeList object.

Parâmetros

index

Index of the node into the collection.

Valor Retornado

The node at the indexth position in the DOMNodeList, or NULL if that is not a valid index.

Exemplos

Exemplo #1 Traversing all the entries of the table

<?php

$doc = new DOMDocument;
$doc->load('book.xml');

$items = $doc->getElementsByTagName('entry');

for ($i = 0; $i < $items->length; $i++) {
    echo $items->item($i)->nodeValue . "\n";
}

?>

Alternatively, you can use foreach, which is a much more convenient way:

<?php

foreach ($items as $item) {
    echo $item->nodeValue . "\n";
}

?>

O exemplo acima irá imprimir:

Title
Author
Language
ISBN
The Grapes of Wrath
John Steinbeck
en
0140186409
The Pearl
John Steinbeck
en
014017737X
Samarcande
Amine Maalouf
fr
2253051209

DOMNodeList
DOMNotation
DOMNodeList


The DOMNotation class

Sinopse da classe

DOMNotation extends DOMNode {
/* Properties */
readonly public string $publicId ;
readonly public string $systemId ;
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

publicId

Prop description

systemId

Prop description

DOMNodelist::item
DOMProcessingInstruction
DOM


The DOMProcessingInstruction class

Sinopse da classe

DOMProcessingInstruction extends DOMNode {
/* Properties */
readonly public string $target ;
public string $data ;
/* Methods */
DOMProcessingInstruction::__construct ( string $name [, string $value ] )
/* Inherited methods */
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

target

Prop description

data

Prop description

Índice

  • DOMProcessingInstruction::__construct — Creates a new DOMProcessingInstruction object
DOMNotation
DOMProcessingInstruction::__construct
DOM


Creates a new DOMProcessingInstruction object

DOMProcessingInstruction
DOMText
DOMProcessingInstruction
PHP Manual

DOMProcessingInstruction::__construct

(PHP 5)

DOMProcessingInstruction::__construct — Creates a new DOMProcessingInstruction object

Descrição

DOMProcessingInstruction::__construct ( string $name [, string $value ] )

Creates a new DOMProcessingInstruction object. This object is read only. It may be appended to a document, but additional nodes may not be appended to this node until the node is associated with a document. To create a writeable node, use DOMDocument::createProcessingInstruction.

Parâmetros

name

The tag name of the processing instruction.

value

The value of the processing instruction.

Exemplos

Exemplo #1 Creating a new DOMProcessingInstruction object

<?php

$dom = new DOMDocument('1.0', 'UTF-8');
$html = $dom->appendChild(new DOMElement('html'));
$body = $html->appendChild(new DOMElement('body'));
$pinode = new DOMProcessingInstruction('php', 'echo "Hello World"; ');
$body->appendChild($pinode);
echo $dom->saveXML();

?>

O exemplo acima irá imprimir:

<?xml version="1.0" encoding="UTF-8"?>
<html><body><?php echo "Hello World"; ?></body></html>

Veja Também

  • DOMDocument::createProcessingInstruction() - Creates new PI node

DOMProcessingInstruction
DOMText
DOMProcessingInstruction


The DOMText class

Introdução

The DOMText class inherits from DOMCharacterData and represents the textual content of a DOMElement or DOMAttr.

Sinopse da classe

DOMText extends DOMCharacterData {
/* Properties */
readonly public string $wholeText ;
/* Methods */
DOMText::__construct ([ string $value ] )
bool DOMText::isWhitespaceInElementContent ( void )
DOMText DOMText::splitText ( int $offset )
/* Inherited methods */
void DOMCharacterData::appendData ( string $data )
void DOMCharacterData::deleteData ( int $offset , int $count )
void DOMCharacterData::insertData ( int $offset , string $data )
void DOMCharacterData::replaceData ( int $offset , int $count , string $data )
string DOMCharacterData::substringData ( int $offset , int $count )
DOMNode DOMNode::appendChild ( DOMNode $newnode )
DOMNode DOMNode::cloneNode ([ bool $deep ] )
public int DOMNode::getLineNo ( void )
bool DOMNode::hasAttributes ( void )
bool DOMNode::hasChildNodes ( void )
DOMNode DOMNode::insertBefore ( DOMNode $newnode [, DOMNode $refnode ] )
bool DOMNode::isDefaultNamespace ( string $namespaceURI )
bool DOMNode::isSameNode ( DOMNode $node )
bool DOMNode::isSupported ( string $feature , string $version )
string DOMNode::lookupNamespaceURI ( string $prefix )
string DOMNode::lookupPrefix ( string $namespaceURI )
void DOMNode::normalize ( void )
DOMNode DOMNode::removeChild ( DOMNode $oldnode )
DOMNode DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode )
}

Propriedades

wholeText

Holds all the text of logically-adjacent (not separated by Element, Comment or Processing Instruction) Text nodes.

Índice

  • DOMText::__construct — Creates a new DOMText object
  • DOMText::isWhitespaceInElementContent — Indicates whether this text node contains whitespace
  • DOMText::splitText — Breaks this node into two nodes at the specified offset
DOMProcessingInstruction::__construct
DOMText::__construct
DOM


Creates a new DOMText object

DOMText
DOMText::isWhitespaceInElementContent
DOMText
PHP Manual

DOMText::__construct

(PHP 5)

DOMText::__construct — Creates a new DOMText object

Descrição

DOMText::__construct ([ string $value ] )

Creates a new DOMText object.

Parâmetros

value

The value of the text node. If not supplied an empty text node is created.

Exemplos

Exemplo #1 Creating a new DOMText

<?php

$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$text = $element->appendChild(new DOMText('root value'));
echo $dom->saveXML(); /* <?xml version="1.0" encoding="iso-8859-1"?><root>root value</root> */

?>

Veja Também

  • DOMDocument::createTextNode() - Create new text node

DOMText
DOMText::isWhitespaceInElementContent
DOMText


Indicates whether this text node contains whitespace

DOMText::__construct
DOMText::splitText
DOMText
PHP Manual

DOMText::isWhitespaceInElementContent

(PHP 5)

DOMText::isWhitespaceInElementContent — Indicates whether this text node contains whitespace

Descrição

bool DOMText::isWhitespaceInElementContent ( void )

Indicates whether this text node contains whitespace. The text node is determined to contain whitespace in element content during the load of the document.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

DOMText::__construct
DOMText::splitText
DOMText


Breaks this node into two nodes at the specified offset

DOMText::isWhitespaceInElementContent
DOMXPath
DOMText
PHP Manual

DOMText::splitText

(PHP 5)

DOMText::splitText — Breaks this node into two nodes at the specified offset

Descrição

DOMText DOMText::splitText ( int $offset )

Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings.

After being split, this node will contain all the content up to the offset. If the original node had a parent node, the new node is inserted as the next sibling of the original node. When the offset is equal to the length of this node, the new node has no data.

Parâmetros

offset

The offset at which to split, starting from 0.

Valor Retornado

The new node of the same type, which contains all the content at and after the offset.

DOMText::isWhitespaceInElementContent
DOMXPath
DOMText


The DOMXPath class

Introdução

Supports XPath 1.0

Sinopse da classe

DOMXPath {
/* Properties */
public DOMDocument $document ;
/* Methods */
DOMXPath::__construct ( DOMDocument $doc )
mixed DOMXPath::evaluate ( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] )
DOMNodeList DOMXPath::query ( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] )
bool DOMXPath::registerNamespace ( string $prefix , string $namespaceURI )
public void DOMXPath::registerPhpFunctions ([ mixed $restrict ] )
}

Propriedades

document

Prop description

Índice

  • DOMXPath::__construct — Creates a new DOMXPath object
  • DOMXPath::evaluate — Evaluates the given XPath expression and returns a typed result if possible.
  • DOMXPath::query — Evaluates the given XPath expression
  • DOMXPath::registerNamespace — Registers the namespace with the DOMXPath object
  • DOMXPath::registerPhpFunctions — Register PHP functions as XPath functions
DOMText::splitText
DOMXPath::__construct
DOM


Creates a new DOMXPath object

DOMXPath
DOMXPath::evaluate
DOMXPath
PHP Manual

DOMXPath::__construct

(PHP 5)

DOMXPath::__construct — Creates a new DOMXPath object

Descrição

DOMXPath::__construct ( DOMDocument $doc )

Creates a new DOMXPath object.

Parâmetros

doc

The DOMDocument associated with the DOMXPath.

DOMXPath
DOMXPath::evaluate
DOMXPath


Evaluates the given XPath expression and returns a typed result if possible.

DOMXPath::__construct
DOMXPath::query
DOMXPath
PHP Manual

DOMXPath::evaluate

(PHP 5 >= 5.1.0)

DOMXPath::evaluate — Evaluates the given XPath expression and returns a typed result if possible.

Descrição

mixed DOMXPath::evaluate ( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] )

Executes the given XPath expression and returns a typed result if possible.

Parâmetros

expression

The XPath expression to execute.

contextnode

The optional contextnode can be specified for doing relative XPath queries. By default, the queries are relative to the root element.

registerNodeNS

The optional registerNodeNS can be specified to disable automatic registration of the context node.

Valor Retornado

Returns a typed result if possible or a DOMNodeList containing all nodes matching the given XPath expression.

If the expression is malformed or the contextnode is invalid, DOMXPath::evaluate() returns FALSE.

Histórico

Versão | Descrição
5.3.3 | The registerNodeNS parameter was added.

Exemplos

Exemplo #1 Getting the count of all the english books

<?php

$doc = new DOMDocument;

$doc->load('book.xml');

$xpath = new DOMXPath($doc);

$tbody = $doc->getElementsByTagName('tbody')->item(0);

// our query is relative to the tbody node
$query = 'count(row/entry[. = "en"])';

$entries = $xpath->evaluate($query, $tbody);
echo "There are $entries english books\n";

?>

O exemplo acima irá imprimir:

There are 2 english books

Veja Também

  • DOMXPath::query() - Evaluates the given XPath expression

DOMXPath::__construct
DOMXPath::query
DOMXPath


Evaluates the given XPath expression

DOMXPath::evaluate
DOMXPath::registerNamespace
DOMXPath
PHP Manual

DOMXPath::query

(PHP 5)

DOMXPath::query — Evaluates the given XPath expression

Descrição

DOMNodeList DOMXPath::query ( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] )

Executes the given XPath expression.

Parâmetros

expression

The XPath expression to execute.

contextnode

The optional contextnode can be specified for doing relative XPath queries. By default, the queries are relative to the root element.

registerNodeNS

The optional registerNodeNS can be specified to disable automatic registration of the context node.

Valor Retornado

Returns a DOMNodeList containing all nodes matching the given XPath expression. Any expression which does not return nodes will return an empty DOMNodeList.

If the expression is malformed or the contextnode is invalid, DOMXPath::query() returns FALSE.

Histórico

Versão | Descrição
5.3.3 | The registerNodeNS parameter was added.

Exemplos

Exemplo #1 Getting all the english books

<?php

$doc = new DOMDocument;

// We don't want to bother with white spaces
$doc->preserveWhiteSpace = false;

$doc->Load('book.xml');

$xpath = new DOMXPath($doc);

// We starts from the root element
$query = '//book/chapter/para/informaltable/tgroup/tbody/row/entry[. = "en"]';

$entries = $xpath->query($query);

foreach ($entries as $entry) {
    echo "Found {$entry->previousSibling->previousSibling->nodeValue}," .
         " by {$entry->previousSibling->nodeValue}\n";
}
?>

O exemplo acima irá imprimir:

Found The Grapes of Wrath, by John Steinbeck
Found The Pearl, by John Steinbeck

We can also use the contextnode parameter to shorten our expression:

<?php

$doc = new DOMDocument;
$doc->preserveWhiteSpace = false;

$doc->load('book.xml');

$xpath = new DOMXPath($doc);

$tbody = $doc->getElementsByTagName('tbody')->item(0);

// our query is relative to the tbody node
$query = 'row/entry[. = "en"]';

$entries = $xpath->query($query, $tbody);

foreach ($entries as $entry) {
    echo "Found {$entry->previousSibling->previousSibling->nodeValue}," .
         " by {$entry->previousSibling->nodeValue}\n";
}
?>

Veja Também

  • DOMXPath::evaluate() - Evaluates the given XPath expression and returns a typed result if possible.

DOMXPath::evaluate
DOMXPath::registerNamespace
DOMXPath


Registers the namespace with the DOMXPath object

DOMXPath::query
DOMXPath::registerPhpFunctions
DOMXPath
PHP Manual

DOMXPath::registerNamespace

(PHP 5)

DOMXPath::registerNamespace — Registers the namespace with the DOMXPath object

Descrição

bool DOMXPath::registerNamespace ( string $prefix , string $namespaceURI )

Registers the namespaceURI and prefix with the DOMXPath object.

Parâmetros

prefix

The prefix.

namespaceURI

The URI of the namespace.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

DOMXPath::query
DOMXPath::registerPhpFunctions
DOMXPath


Register PHP functions as XPath functions

DOMXPath::registerNamespace
DOM Funções
DOMXPath
PHP Manual

DOMXPath::registerPhpFunctions

(PHP 5 >= 5.3.0)

DOMXPath::registerPhpFunctions — Register PHP functions as XPath functions

Descrição

public void DOMXPath::registerPhpFunctions ([ mixed $restrict ] )

This method enables the ability to use PHP functions within XPath expressions.

Parâmetros

restrict

Use this parameter to only allow certain functions to be called from XPath.

This parameter can be either a string (a function name) or an array of function names.

Valor Retornado

Não há valor retornado.

Exemplos

The following examples use book.xml which contains the following:

Exemplo #1 book.xml

<?xml version="1.0" encoding="UTF-8"?>
<books>
 <book>
  <title>PHP Basics</title>
  <author>Jim Smith</author>
  <author>Jane Smith</author>
 </book>
 <book>
  <title>PHP Secrets</title>
  <author>Jenny Smythe</author>
 </book>
 <book>
  <title>XML basics</title>
  <author>Joe Black</author>
 </book>
</books>

Exemplo #2 DOMXPath::registerPHPFunctions() with php:functionString

<?php
$doc = new DOMDocument;
$doc->load('book.xml');

$xpath = new DOMXPath($doc);

// Register the php: namespace (required)
$xpath->registerNamespace("php", "http://php.net/xpath");

// Register PHP functions (no restrictions)
$xpath->registerPHPFunctions();

// Call substr function on the book title
$nodes = $xpath->query('//book[php:functionString("substr", title, 0, 3) = "PHP"]');

echo "Found {$nodes->length} books starting with 'PHP':\n";
foreach ($nodes as $node) {
    $title  = $node->getElementsByTagName("title")->item(0)->nodeValue;
    $author = $node->getElementsByTagName("author")->item(0)->nodeValue;
    echo "$title by $author\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Found 2 books starting with 'PHP':
PHP Basics by Jim Smith
PHP Secrets by Jenny Smythe

Exemplo #3 DOMXPath::registerPHPFunctions() with php:function

<?php
$doc = new DOMDocument;
$doc->load('book.xml');

$xpath = new DOMXPath($doc);

// Register the php: namespace (required)
$xpath->registerNamespace("php", "http://php.net/xpath");

// Register PHP functions (has_multiple only)
$xpath->registerPHPFunctions("has_multiple");

function has_multiple($nodes) {
    // Return true if more than one author
    return count($nodes) > 1;
}
// Filter books with multiple authors
$books = $xpath->query('//book[php:function("has_multiple", author)]');

echo "Books with multiple authors:\n";
foreach ($books as $book) {
    echo $book->getElementsByTagName("title")->item(0)->nodeValue . "\n";
}

?>

O exemplo acima irá imprimir algo similar a:

Books with multiple authors:
PHP Basics

Veja Também

  • DOMXPath::registerNamespace() - Registers the namespace with the DOMXPath object
  • DOMXPath::query() - Evaluates the given XPath expression
  • DOMXPath::evaluate() - Evaluates the given XPath expression and returns a typed result if possible.

DOMXPath::registerNamespace
DOM Funções
DOMXPath


DOM Funções

Índice

  • dom_import_simplexml — Gets a DOMElement object from a SimpleXMLElement object
DOMXPath::registerPhpFunctions
dom_import_simplexml
DOM


Gets a DOMElement object from a SimpleXMLElement object

DOM Funções
DOM XML
DOM Funções
PHP Manual

dom_import_simplexml

(PHP 5)

dom_import_simplexml — Gets a DOMElement object from a SimpleXMLElement object

Descrição

DOMElement dom_import_simplexml ( SimpleXMLElement $node )

This function takes the node node of class SimpleXML and makes it into a DOMElement node. This new object can then be used as a native DOMElement node.

Parâmetros

node

The SimpleXMLElement node.

Valor Retornado

The DOMElement node added or FALSE if any errors occur.

Exemplos

Exemplo #1 Import SimpleXML into DOM with dom_import_simplexml()

<?php

$sxe = simplexml_load_string('<books><book><title>blah</title></book></books>');

if ($sxe === false) {
    echo 'Error while parsing the document';
    exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!$dom_sxe) {
    echo 'Error while converting XML';
    exit;
}

$dom = new DOMDocument('1.0');
$dom_sxe = $dom->importNode($dom_sxe, true);
$dom_sxe = $dom->appendChild($dom_sxe);

echo $dom->saveXML();

?>

Veja Também

  • simplexml_import_dom() - Recebe um objeto SimpleXMLElement de um nó DOM.

DOM Funções
DOM XML
DOM Funções


DOM XML

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • DOM XML Funções
    • DomAttribute->name — Returns the name of attribute
    • DomAttribute->set_value — Define o valor de um atributo
    • DomAttribute->specified — Verifica se o atributo é specified
    • DomAttribute->value — Retorna o valor do atributo
    • DomDocument->add_root — Adiciona um node raiz [obsoleto]
    • DomDocument->create_attribute — Cria um novo atributo
    • DomDocument->create_cdata_section — Cria um novo node cdata
    • DomDocument->create_comment — Cria um novo node de comentário
    • DomDocument->create_element_ns — Create new element node with an associated namespace
    • DomDocument->create_element — Create new element node
    • DomDocument->create_entity_reference — Create an entity reference
    • DomDocument->create_processing_instruction — Creates new PI node
    • DomDocument->create_text_node — Create new text node
    • DomDocument->doctype — Returns the document type
    • DomDocument->document_element — Returns root element node
    • DomDocument->dump_file — Dumps the internal XML tree back into a file
    • DomDocument->dump_mem — Dumps the internal XML tree back into a string
    • DomDocument->get_element_by_id — Searches for an element with a certain id
    • DomDocument->get_elements_by_tagname — Returns array with nodes with given tagname in document or empty array, if not found
    • DomDocument->html_dump_mem — Dumps the internal XML tree back into a string as HTML
    • DomDocument->xinclude — Substitutes XIncludes in a DomDocument Object
    • DomDocumentType->entities — Returns list of entities
    • DomDocumentType->internal_subset — Returns internal subset
    • DomDocumentType->name — Returns name of document type
    • DomDocumentType->notations — Returns list of notations
    • DomDocumentType->public_id — Returns public id of document type
    • DomDocumentType->system_id — Returns the system id of document type
    • DomElement->get_attribute_node — Returns the node of the given attribute
    • DomElement->get_attribute — Returns the value of the given attribute
    • DomElement->get_elements_by_tagname — Gets elements by tagname
    • DomElement->has_attribute — Checks to see if an attribute exists in the current node
    • DomElement->remove_attribute — Removes attribute
    • DomElement->set_attribute_node — Adds new attribute
    • DomElement->set_attribute — Sets the value of an attribute
    • DomElement->tagname — Returns the name of the current element
    • DomNode->add_namespace — Adds a namespace declaration to a node
    • DomNode->append_child — Adds a new child at the end of the children
    • DomNode->append_sibling — Adds new sibling to a node
    • DomNode->attributes — Returns list of attributes
    • DomNode->child_nodes — Returns children of node
    • DomNode->clone_node — Clones a node
    • DomNode->dump_node — Dumps a single node
    • DomNode->first_child — Returns first child of node
    • DomNode->get_content — Gets content of node
    • DomNode->has_attributes — Checks if node has attributes
    • DomNode->has_child_nodes — Checks if node has children
    • DomNode->insert_before — Inserts new node as child
    • DomNode->is_blank_node — Checks if node is blank
    • DomNode->last_child — Returns last child of node
    • DomNode->next_sibling — Returns the next sibling of node
    • DomNode->node_name — Returns name of node
    • DomNode->node_type — Returns type of node
    • DomNode->node_value — Returns value of a node
    • DomNode->owner_document — Returns the document this node belongs to
    • DomNode->parent_node — Returns the parent of the node
    • DomNode->prefix — Returns name space prefix of node
    • DomNode->previous_sibling — Returns the previous sibling of node
    • DomNode->remove_child — Removes child from list of children
    • DomNode->replace_child — Replaces a child
    • DomNode->replace_node — Replaces node
    • DomNode->set_content — Sets content of node
    • DomNode->set_name — Sets name of node
    • DomNode->set_namespace — Sets namespace of a node
    • DomNode->unlink_node — Deletes node
    • DomProcessingInstruction->data — Returns the data of ProcessingInstruction node
    • DomProcessingInstruction->target — Returns the target of a ProcessingInstruction node
    • DomXsltStylesheet->process — Applies the XSLT-Transformation on a DomDocument Object
    • DomXsltStylesheet->result_dump_file — Dumps the result from a XSLT-Transformation into a file
    • DomXsltStylesheet->result_dump_mem — Dumps the result from a XSLT-Transformation back into a string
    • domxml_new_doc — Creates new empty XML document
    • domxml_open_file — Creates a DOM object from an XML file
    • domxml_open_mem — Creates a DOM object of an XML document
    • domxml_version — Gets the XML library version
    • domxml_xmltree — Creates a tree of PHP objects from an XML document
    • domxml_xslt_stylesheet_doc — Creates a DomXsltStylesheet Object from a DomDocument Object
    • domxml_xslt_stylesheet_file — Creates a DomXsltStylesheet Object from an XSL document in a file
    • domxml_xslt_stylesheet — Creates a DomXsltStylesheet object from an XSL document in a string
    • domxml_xslt_version — Gets the XSLT library version
    • xpath_eval_expression — Evaluates the XPath Location Path in the given string
    • xpath_eval — Avalia o caminho XPath de uma dada string
    • xpath_new_context — Cria um novo contexto xpath
    • xpath_register_ns_auto — Registra o dado namespace no contexto XPath passado
    • xpath_register_ns — Registra o dado namespace no contexto XPath passado
    • xptr_eval — Avalia o caminho XPtr de uma dada string
    • xptr_new_context — Cria um novo contexto XPath
dom_import_simplexml
Introdução
Manipulação de XML


Introdução

A extensão DOM XML foi revisada no PHP 4.3.0 para melhor concordar com o padrão DOM. A extensão permanece contendo várias antigas funções, mas elas devem não ser mais usadas. Em particular, função que não são orientada a objetos devem ser evitadas.

A extensão permite você operar um documento XML com a API DOM. Também fornece uma função domxml_xmltree() para torna completo o documento XML em uma árvore de objetos do PHP. Atualmente, esta árvore deve ser considerada somente leitura - você pode modificá-la, mas isto não faz sentido algum desde que DomDocument_dump_mem() não pode aplicá-la. Portanto, se você quer ler um arquivo XML e escrever uma versão modificada, use DomDocument_create_element(), DomDocument_create_text_node(), set_attribute(), etc. e finalmente a função DomDocument_dump_mem().

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

Nota: Esta extensão não está mais marcada como experimental. Ele será, contudo, nunca liberada com PHP 5, e irá somente ser distribuida com PHP 4. Se você precisa de suporte a DOM XML com PHP 5, você pode usar a extensão DOM. Esta extensão domxml não é compatível com a extensão DOM.

DOM XML
Instalação/Configuração
DOM XML


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
DOM XML


Dependências

Esta extensão faz uso da » biblioteca GNOME XML. Faça download e instale esta biblioteca. Você necessitará no mínimo da libxml-2.4.14. Para usar recursos da DOM XSLT você pode usar a » biblioteca libxslt e EXSLT da » http://www.exslt.org/. Faça download e instale estas bibliotecas se você planeja usar (realçado) recursos XSLT. Você necessitará no mínimo da libxslt-1.0.18.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Esta extensão » PECL não vem compilada com o PHP. Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/domxml.

No PHP 4, os fontes desta estensão PECL podem ser encontrados no diretório ext/ ou dentro dos fontes do PHP ou no link PECL acima. Esta extensão está somente disponível se o PHP foi configurado com --with-dom[=DIR] . Adicione --with-dom-xslt[=DIR] para incluir suporte a DOM XSLT. DIR é o diretório de instalação da libxslt. Adicione --with-dom-exslt[=DIR] para incluir suporte a DOM EXSLT, onde DIR é o diretório de instalação da libexslt.

Usuários Windows terão que habilitar php_domxml.dll no php.ini para usar estas funções. No PHP esta DLL reside no diretório extensions/ junto aos binários do PHP para Windows. Uma DLL para esta extenção PECL esta atualmente indisponível. Veja também a seção compilando no Windows section. Há também uma DLL adicional que precisa ser habilitada no PATH do sistema para esta função funcionar. No PHP 4 ela está no diretório dlls/. O nome dela: Para PHP <= 4.2.0, é libxml2.dll. Para PHP >= 4.3.0, é iconv.dll. E no PHP 5.0.0, iconv é compilado nos binários do PHP para Windows por padrão, não necessitando assim da DLL.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

Constantes XML
Constante | Valor | Descrição
XML_ELEMENT_NODE (integer) | 1 | Node é um elemento
XML_ATTRIBUTE_NODE (integer) | 2 | Node é um atributo
XML_TEXT_NODE (integer) | 3 | Node é um pedaço de texto
XML_CDATA_SECTION_NODE (integer) | 4 |
XML_ENTITY_REF_NODE (integer) | 5 |
XML_ENTITY_NODE (integer) | 6 | Node é uma entidade como &nbsp;
XML_PI_NODE (integer) | 7 | Node é uma instrução de processamento
XML_COMMENT_NODE (integer) | 8 | Node é um comentário
XML_DOCUMENT_NODE (integer) | 9 | Node é um documento
XML_DOCUMENT_TYPE_NODE (integer) | 10 |
XML_DOCUMENT_FRAG_NODE (integer) | 11 |
XML_NOTATION_NODE (integer) | 12 |
XML_GLOBAL_NAMESPACE (integer) | 1 |
XML_LOCAL_NAMESPACE (integer) | 2 |
XML_HTML_DOCUMENT_NODE (integer) |  |
XML_DTD_NODE (integer) |  |
XML_ELEMENT_DECL_NODE (integer) |  |
XML_ATTRIBUTE_DECL_NODE (integer) |  |
XML_ENTITY_DECL_NODE (integer) |  |
XML_NAMESPACE_DECL_NODE (integer) |  |
XML_ATTRIBUTE_CDATA (integer) |  |
XML_ATTRIBUTE_ID (integer) |  |
XML_ATTRIBUTE_IDREF (integer) |  |
XML_ATTRIBUTE_IDREFS (integer) |  |
XML_ATTRIBUTE_ENTITY (integer) |  |
XML_ATTRIBUTE_NMTOKEN (integer) |  |
XML_ATTRIBUTE_NMTOKENS (integer) |  |
XML_ATTRIBUTE_ENUMERATION (integer) |  |
XML_ATTRIBUTE_NOTATION (integer) |  |
XPATH_UNDEFINED (integer) |  |
XPATH_NODESET (integer) |  |
XPATH_BOOLEAN (integer) |  |
XPATH_NUMBER (integer) |  |
XPATH_STRING (integer) |  |
XPATH_POINT (integer) |  |
XPATH_RANGE (integer) |  |
XPATH_LOCATIONSET (integer) |  |
XPATH_USERS (integer) |  |
XPATH_NUMBER (integer) |  |
Tipos Resource
DOM XML Funções
DOM XML


DOM XML Funções

Funções Obsoletas

Há algumas funções que não se adequam no padrão DOM e não devem ser usadas. Estas função são listadas na seguinte tabela abaixo. A função DomNode_append_child() teve modificada seu comportamento. Ela agora adiciona um filho e não a um vizinho. Se esta quebra seu programa, use a função não DOM DomNode_append_sibling().

Funções obsoletas e suas substítutas
Velha função | Nova função
xmldoc | domxml_open_mem()
xmldocfile | domxml_open_file()
domxml_new_xmldoc | domxml_new_doc()
domxml_dump_mem | DomDocument_dump_mem()
domxml_dump_mem_file | DomDocument_dump_file()
DomDocument_dump_mem_file | DomDocument_dump_file()
DomDocument_add_root | DomDocument_create_element() seguida por DomNode_append_child()
DomDocument_dtd | DomDocument_doctype()
DomDocument_root | DomDocument_document_element()
DomDocument_children | DomNode_child_nodes()
DomDocument_imported_node | No replacement.
DomNode_add_child | Cria um novo node com e.g. DomDocument_create_element() e adiciona-o com DomNode_append_child().
DomNode_children | DomNode_child_nodes()
DomNode_parent | DomNode_parent_node()
DomNode_new_child | Cria um novo node com e.g. DomDocument_create_element() e adiciona-o com DomNode_append_child().
DomNode_set_content | Cria um novo node com e.g. DomDocument_create_text_node() e adiciona-o com DomNode_append_child().
DomNode_get_content | Conteúdo é somente um texto do node e pode ser acessado com DomNode_child_nodes().
DomNode_set_content | Conteúdo é somente um texto do node e pode ser adicionado com DomNode_append_child().

Classes

A API do módulo segue o padrão DOM Level 2 bem proximamente. Conseqüentemente, a API é totalmente orientada a objeto. É uma boa idéia ter o padrão DOM disponível quando usando este módulo. Embora a API seja orientada a objeto, há muitas funções que podem ser chamadas na forma não orientada a objeto passando o objeto para operar como primeiro argumento. Estas funções são principalmente para preservar compatibilidade com antigas versões desta extensão, e não deve ser usada quando criando novos scripts.

A API difere da oficial DOM API em duas formas. Primeiro, todo atributo de classe são implementado como funções com o mesmo nome. Segundo, o nome das funções seguem a convenção de nomes do PHP. Isto significa que a função DOM lastChild() será escrita como last_child().

Este módulo define um número de classes, que são listados - incluindo o módulo delas - na seguinte tabela. Classes com um equivalente no padrão DOM são nomeadas DOMxxx.

Lista de classes
Nome da classe | Classe pai
DomAttribute | DomNode
DomCData | DomNode
DomComment | DomCData : DomNode
DomDocument | DomNode
DomDocumentType | DomNode
DomElement | DomNode
DomEntity | DomNode
DomEntityReference | DomNode
DomProcessingInstruction | DomNode
DomText | DomCData : DomNode
Parser | Atualmente permanece chamada DomParser
XPathContext |

Classe DomDocument (DomDocument : DomNode)
Nome do método | Nome da função | Observação
doctype | DomDocument_doctype() |
document_element | DomDocument_document_element() |
create_element | DomDocument_create_element() |
create_text_node | DomDocument_create_text_node() |
create_comment | DomDocument_create_comment() |
create_cdata_section | DomDocument_create_cdata_section() |
create_processing_instruction | DomDocument_create_processing_instruction() |
create_attribute | DomDocument_create_attribute() |
create_entity_reference | DomDocument_create_entity_reference() |
get_elements_by_tagname | DomDocument_get_elements_by_tagname() |
get_element_by_id | DomDocument_get_element_by_id() |
dump_mem | DomDocument_dump_mem() | não é padrão DOM
dump_file | DomDocument_dump_file() | não é padrão DOM
html_dump_mem | DomDocument_html_dump_mem() | não é padrão DOM
xpath_init | xpath_init | não é padrão DOM
xpath_new_context | xpath_new_context | não é padrão DOM
xptr_new_context | xptr_new_context | não é padrão DOM

Classe DomElement (DomElement : DomNode)
Nome do método | Nome da função | Observação
tagname | DomElement_tagname() |
get_attribute | DomElement_get_attribute() |
set_attribute | DomElement_set_attribute() |
remove_attribute | DomElement_remove_attribute() |
get_attribute_node | DomElement_get_attribute_node() |
set_attribute_node | DomElement_set_attribute_node() |
get_elements_by_tagname | DomElement_get_elements_by_tagname() |
has_attribute | DomElement_has_attribute() |

Classe DomNode
Nome do método | Observação
DomNode_node_name() |
DomNode_node_value() |
DomNode_node_type() |
DomNode_last_child() |
DomNode_first_child() |
DomNode_child_nodes() |
DomNode_previous_sibling() |
DomNode_next_sibling() |
DomNode_parent_node() |
DomNode_owner_document() |
DomNode_insert_before() |
DomNode_append_child() |
DomNode_append_sibling() | Não é padrão DOM. Esta função emula o comportamento da DomNode_append_child().
DomNode_remove_child() |
DomNode_has_child_nodes() |
DomNode_has_attributes() |
DomNode_clone_node() |
DomNode_attributes() |
DomNode_unlink_node() | Não é padrão DOM
DomNode_replace_node() | Não é padrão DOM
DomNode_set_content() | Não é padrão DOM, obsoleta
DomNode_get_content() | Não é padrão DOM, obsoleta
DomNode_dump_node() | Não é padrão DOM
DomNode_is_blank_node() | Não é padrão DOM

Classe DomAttribute (DomAttribute : DomNode)
Nome do método |  | Observação
name | DomAttribute_name() |
value | DomAttribute_value() |
specified | DomAttribute_specified() |

Classe DomProcessingInstruction (DomProcessingInstruction : DomNode)
Nome do método | Nome da função | Observação
target | DomProcessingInstruction_target() |
data | DomProcessingInstruction_data() |

Classe Parser
Nome do método | Nome da função | Observação
add_chunk | Parser_add_chunk() |
end | Parser_end() |

Classe XPathContext
Nome do método | Nome da função | Observação
eval | XPathContext_eval() |
eval_expression | XPathContext_eval_expression() |
register_ns | XPathContext_register_ns() |

Classe DomDocumentType (DomDocumentType : DomNode)
Nome do método | Nome da função | Observação
name | DomDocumentType_name() |
entities | DomDocumentType_entities() |
notations | DomDocumentType_notations() |
public_id | DomDocumentType_public_id() |
system_id | DomDocumentType_system_id() |
internal_subset | DomDocumentType_internal_subset() |

As classes DomDtd são derivadas da DomNode. DomComment é derivada da DomCData.

Exemplos

Muitos exemplos nesta referência requerem uma string XML. Ao invés de repetir esta string em cada exemplo, iremos colocá-la em um arquivo que será incluido para cada exemplo. Este arquivo incluso é mostrado na seção do exemplo seguinte. Alternativamente, você pode criar um documento XML e lê-lo com DomDocument_open_file().

Exemplo #1 Arquivo do include example.inc com a string XML

<?php
$xmlstr = "<?xml version='1.0' standalone='yes'?>
<!DOCTYPE chapter SYSTEM '/share/sgml/Norman_Walsh/db3xml10/db3xml10.dtd'
[ <!ENTITY sp \"spanish\">
]>
<!-- lsfj  -->
<chapter language='en'><title language='en'>Title</title>
 <para language='ge'>
  &sp;
  <!-- comment -->
  <informaltable ID='findme' language='&sp;'>
   <tgroup cols='3'>
    <tbody>
     <row><entry>a1</entry><entry
morerows='1'>b1</entry><entry>c1</entry></row>
<row><entry>a2</entry><entry>c2</entry></row>
     <row><entry>a3</entry><entry>b3</entry><entry>c3</entry></row>
    </tbody>
   </tgroup>
  </informaltable>
 </para>
</chapter>";
?>

Índice

  • DomAttribute->name — Returns the name of attribute
  • DomAttribute->set_value — Define o valor de um atributo
  • DomAttribute->specified — Verifica se o atributo é specified
  • DomAttribute->value — Retorna o valor do atributo
  • DomDocument->add_root — Adiciona um node raiz [obsoleto]
  • DomDocument->create_attribute — Cria um novo atributo
  • DomDocument->create_cdata_section — Cria um novo node cdata
  • DomDocument->create_comment — Cria um novo node de comentário
  • DomDocument->create_element_ns — Create new element node with an associated namespace
  • DomDocument->create_element — Create new element node
  • DomDocument->create_entity_reference — Create an entity reference
  • DomDocument->create_processing_instruction — Creates new PI node
  • DomDocument->create_text_node — Create new text node
  • DomDocument->doctype — Returns the document type
  • DomDocument->document_element — Returns root element node
  • DomDocument->dump_file — Dumps the internal XML tree back into a file
  • DomDocument->dump_mem — Dumps the internal XML tree back into a string
  • DomDocument->get_element_by_id — Searches for an element with a certain id
  • DomDocument->get_elements_by_tagname — Returns array with nodes with given tagname in document or empty array, if not found
  • DomDocument->html_dump_mem — Dumps the internal XML tree back into a string as HTML
  • DomDocument->xinclude — Substitutes XIncludes in a DomDocument Object
  • DomDocumentType->entities — Returns list of entities
  • DomDocumentType->internal_subset — Returns internal subset
  • DomDocumentType->name — Returns name of document type
  • DomDocumentType->notations — Returns list of notations
  • DomDocumentType->public_id — Returns public id of document type
  • DomDocumentType->system_id — Returns the system id of document type
  • DomElement->get_attribute_node — Returns the node of the given attribute
  • DomElement->get_attribute — Returns the value of the given attribute
  • DomElement->get_elements_by_tagname — Gets elements by tagname
  • DomElement->has_attribute — Checks to see if an attribute exists in the current node
  • DomElement->remove_attribute — Removes attribute
  • DomElement->set_attribute_node — Adds new attribute
  • DomElement->set_attribute — Sets the value of an attribute
  • DomElement->tagname — Returns the name of the current element
  • DomNode->add_namespace — Adds a namespace declaration to a node
  • DomNode->append_child — Adds a new child at the end of the children
  • DomNode->append_sibling — Adds new sibling to a node
  • DomNode->attributes — Returns list of attributes
  • DomNode->child_nodes — Returns children of node
  • DomNode->clone_node — Clones a node
  • DomNode->dump_node — Dumps a single node
  • DomNode->first_child — Returns first child of node
  • DomNode->get_content — Gets content of node
  • DomNode->has_attributes — Checks if node has attributes
  • DomNode->has_child_nodes — Checks if node has children
  • DomNode->insert_before — Inserts new node as child
  • DomNode->is_blank_node — Checks if node is blank
  • DomNode->last_child — Returns last child of node
  • DomNode->next_sibling — Returns the next sibling of node
  • DomNode->node_name — Returns name of node
  • DomNode->node_type — Returns type of node
  • DomNode->node_value — Returns value of a node
  • DomNode->owner_document — Returns the document this node belongs to
  • DomNode->parent_node — Returns the parent of the node
  • DomNode->prefix — Returns name space prefix of node
  • DomNode->previous_sibling — Returns the previous sibling of node
  • DomNode->remove_child — Removes child from list of children
  • DomNode->replace_child — Replaces a child
  • DomNode->replace_node — Replaces node
  • DomNode->set_content — Sets content of node
  • DomNode->set_name — Sets name of node
  • DomNode->set_namespace — Sets namespace of a node
  • DomNode->unlink_node — Deletes node
  • DomProcessingInstruction->data — Returns the data of ProcessingInstruction node
  • DomProcessingInstruction->target — Returns the target of a ProcessingInstruction node
  • DomXsltStylesheet->process — Applies the XSLT-Transformation on a DomDocument Object
  • DomXsltStylesheet->result_dump_file — Dumps the result from a XSLT-Transformation into a file
  • DomXsltStylesheet->result_dump_mem — Dumps the result from a XSLT-Transformation back into a string
  • domxml_new_doc — Creates new empty XML document
  • domxml_open_file — Creates a DOM object from an XML file
  • domxml_open_mem — Creates a DOM object of an XML document
  • domxml_version — Gets the XML library version
  • domxml_xmltree — Creates a tree of PHP objects from an XML document
  • domxml_xslt_stylesheet_doc — Creates a DomXsltStylesheet Object from a DomDocument Object
  • domxml_xslt_stylesheet_file — Creates a DomXsltStylesheet Object from an XSL document in a file
  • domxml_xslt_stylesheet — Creates a DomXsltStylesheet object from an XSL document in a string
  • domxml_xslt_version — Gets the XSLT library version
  • xpath_eval_expression — Evaluates the XPath Location Path in the given string
  • xpath_eval — Avalia o caminho XPath de uma dada string
  • xpath_new_context — Cria um novo contexto xpath
  • xpath_register_ns_auto — Registra o dado namespace no contexto XPath passado
  • xpath_register_ns — Registra o dado namespace no contexto XPath passado
  • xptr_eval — Avalia o caminho XPtr de uma dada string
  • xptr_new_context — Cria um novo contexto XPath
Constantes pré-definidas
DomAttribute->name
DOM XML


Returns the name of attribute

DOM XML Funções
DomAttribute->set_value
DOM XML Funções
PHP Manual

DomAttribute->name

(PHP 4 >= 4.1.0)

DomAttribute->name — Returns the name of attribute

Descrição

string DomAttribute::name ( void )

Gets the name of the attribute.

Valor Retornado

Returns the name of the attribute.

Migrating to PHP 5

Use the name property of DOMAttr.

Veja Também

  • DomAttribute->value for an example

DOM XML Funções
DomAttribute->set_value
DOM XML Funções


Define o valor de um atributo

DomAttribute->name
DomAttribute->specified
DOM XML Funções
PHP Manual

DomAttribute->set_value

(PHP 4 >= 4.1.0)

DomAttribute->set_value — Define o valor de um atributo

Descrição

bool DomAttribute::set_value ( string $content )

Esta função define o valor de um atributo.

Parâmetros

content

O novo valor.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Migrando para o PHP 5

Define o valor da propriedade value da DOMAttr.

Veja Também

  • DomAttribute->value

DomAttribute->name
DomAttribute->specified
DOM XML Funções


Verifica se o atributo é specified

DomAttribute->set_value
DomAttribute->value
DOM XML Funções
PHP Manual

DomAttribute->specified

(PHP 4 >= 4.1.0)

DomAttribute->specified — Verifica se o atributo é specified

Descrição

bool DomAttribute::specified ( void )

Verifica se foi dado explicitamente um valor no documento original.

Nota:

Este método ainda não é implementado.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • A definição de » specified nas Recomendações DOM

DomAttribute->set_value
DomAttribute->value
DOM XML Funções


Retorna o valor do atributo

DomAttribute->specified
DomDocument->add_root
DOM XML Funções
PHP Manual

DomAttribute->value

(PHP 4 >= 4.1.0)

DomAttribute->value — Retorna o valor do atributo

Descrição

string DomAttribute::value ( void )

Esta função retorna o valor do atributo.

Exemplos

Exemplo #1 Obtendo todos os atributods de um node

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
     echo "Error while parsing the document\n";
     exit;
}

$root = $dom->document_element();
$attrs = $root->attributes();

echo 'Attributes of ' . $root->node_name() . "\n";
foreach ($attrs as $attribute) {
     echo ' - ' . $attribute->name . ' : ' . $attribute->value . "\n";
}

?>

O exemplo acima irá imprimir:

Attributes of chapter
 - language : en

Valor Retornado

Retorna o valor do atributo.

Migrando para o PHP 5

Use a propriedade value da DOMAttr.

Veja Também

  • DomAttribute->set_value
  • DomAttribute->name

DomAttribute->specified
DomDocument->add_root
DOM XML Funções


Adiciona um node raiz [obsoleto]

DomAttribute->value
DomDocument->create_attribute
DOM XML Funções
PHP Manual

DomDocument->add_root

(PHP 4 >= 4.1.0)

DomDocument->add_root — Adiciona um node raiz [obsoleto]

Descrição

domelement DomDocument->add_root ( string $name )

Adiciona um elemento node raiz para um documento dom e retorna o novo node. O nome do elemento é dado no parâmetro passado.

Exemplo #1 Criando um simples cabeçalho de documento HTML

<?php
$doc = domxml_new_doc("1.0");
$root = $doc->add_root("html");
$head = $root->new_child("head", "");
$head->new_child("title", "Hier der Titel");
echo htmlentities($doc->dump_mem());
?>

DomAttribute->value
DomDocument->create_attribute
DOM XML Funções


Cria um novo atributo

DomDocument->add_root
DomDocument->create_cdata_section
DOM XML Funções
PHP Manual

DomDocument->create_attribute

(PHP 4 >= 4.1.0)

DomDocument->create_attribute — Cria um novo atributo

Descrição

domattribute DomDocument->create_attribute ( string $name , string $value )

Esta função retorna uma nova instância da classe DomAttribute. O nome do atributo é o valor do primeiro parâmetro. O valor do atributo é o valor do segundo parâmetro. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

O valor do retorno é FALSE se um erro ocorrer.

Veja também domnode_append_child(),
domdocument_create_element(),
domdocument_create_text(),
domdocument_create_cdata_section(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), e
domnode_insert_before().

DomDocument->add_root
DomDocument->create_cdata_section
DOM XML Funções


Cria um novo node cdata

DomDocument->create_attribute
DomDocument->create_comment
DOM XML Funções
PHP Manual

DomDocument->create_cdata_section

(PHP 4 >= 4.1.0)

DomDocument->create_cdata_section — Cria um novo node cdata

Descrição

domcdata DomDocument->create_cdata_section ( string $content )

Esta função retorna uma nova instância da classe DomCData. O conteúdo do cdata é o valor do parâmetro passado. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

O valor do retorno é FALSE se um erro ocorrer.

Veja também domnode_append_child(),
domdocument_create_element(),
domdocument_create_text(),
domdocument_create_attribute(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), e
domnode_insert_before().

DomDocument->create_attribute
DomDocument->create_comment
DOM XML Funções


Cria um novo node de comentário

DomDocument->create_cdata_section
DomDocument->create_element_ns
DOM XML Funções
PHP Manual

DomDocument->create_comment

(PHP 4 >= 4.1.0)

DomDocument->create_comment — Cria um novo node de comentário

Descrição

domcomment DomDocument->create_comment ( string $content )

Esta função retorna uma nova instância da classe DomComment. O conteúdo do comentário é o valor do parâmetro passado. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

O valor do retorno é FALSE se um erro ocorrer.

Veja também domnode_append_child(),
domdocument_create_element(),
domdocument_create_text(),
domdocument_create_attribute(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), e
domnode_insert_before().

DomDocument->create_cdata_section
DomDocument->create_element_ns
DOM XML Funções


Create new element node with an associated namespace

DomDocument->create_comment
DomDocument->create_element
DOM XML Funções
PHP Manual

DomDocument->create_element_ns

(PHP 4 >= 4.1.0)

DomDocument->create_element_ns — Create new element node with an associated namespace

Descrição

domelement DomDocument->create_element_ns ( string $uri , string $name [, string $prefix ] )

This function returns a new instance of class DomElement. The tag name of the element is the value of the passed parameter name. The URI of the namespace is the value of the passed parameter uri. If there is already a namespace declaration with the same uri in the root-node of the document, the prefix of this is taken, otherwise it will take the one provided in the optional parameter prefix or generate a random one. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

The return value is FALSE if an error occurred.

See also domdocument_create_element_ns(),
domnode_add_namespace(),
domnode_set_namespace(),
domnode_append_child(),
domdocument_create_text(),
domdocument_create_comment(),
domdocument_create_attribute(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), and
domnode_insert_before().

DomDocument->create_comment
DomDocument->create_element
DOM XML Funções


Create new element node

DomDocument->create_element_ns
DomDocument->create_entity_reference
DOM XML Funções
PHP Manual

DomDocument->create_element

(PHP 4 >= 4.1.0)

DomDocument->create_element — Create new element node

Descrição

domelement DomDocument->create_element ( string $name )

This function returns a new instance of class DomElement. The tag name of the element is the value of the passed parameter. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

The return value is FALSE if an error occurred.

See also domdocument_create_element_ns(),
domnode_append_child(),
domdocument_create_text(),
domdocument_create_comment(),
domdocument_create_attribute(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), and
domnode_insert_before().

DomDocument->create_element_ns
DomDocument->create_entity_reference
DOM XML Funções


Create an entity reference

DomDocument->create_element
DomDocument->create_processing_instruction
DOM XML Funções
PHP Manual

DomDocument->create_entity_reference

(PHP 4 >= 4.1.0)

DomDocument->create_entity_reference — Create an entity reference

Descrição

domentityreference DomDocument->create_entity_reference ( string $content )

This function returns a new instance of class DomEntityReference. The content of the entity reference is the value of the passed parameter. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

The return value is FALSE if an error occurred.

See also domnode_append_child(),
domdocument_create_element(),
domdocument_create_text(),
domdocument_create_cdata_section(),
domdocument_create_processing_instruction(),
domdocument_create_attribute(), and
domnode_insert_before().

DomDocument->create_element
DomDocument->create_processing_instruction
DOM XML Funções


Creates new PI node

DomDocument->create_entity_reference
DomDocument->create_text_node
DOM XML Funções
PHP Manual

DomDocument->create_processing_instruction

(PHP 4 >= 4.1.0)

DomDocument->create_processing_instruction — Creates new PI node

Descrição

domprocessinginstruction DomDocument->create_processing_instruction ( string $content )

This function returns a new instance of class DomCData. The content of the pi is the value of the passed parameter. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

The return value is FALSE if an error occurred.

See also domnode_append_child(),
domdocument_create_element(),
domdocument_create_text(),
domdocument_create_cdata_section(),
domdocument_create_attribute(),
domdocument_create_entity_reference(), and
domnode_insert_before().

DomDocument->create_entity_reference
DomDocument->create_text_node
DOM XML Funções


Create new text node

DomDocument->create_processing_instruction
DomDocument->doctype
DOM XML Funções
PHP Manual

DomDocument->create_text_node

(PHP 4 >= 4.1.0)

DomDocument->create_text_node — Create new text node

Descrição

domtext DomDocument->create_text_node ( string $content )

This function returns a new instance of class DomText. The content of the text is the value of the passed parameter. Este nó não será exibido no documento a não ser que ele seja inserido, por exemplo, com domnode_append_child().

The return value is FALSE if an error occurred.

See also domnode_append_child(),
domdocument_create_element(),
domdocument_create_comment(),
domdocument_create_text(),
domdocument_create_attribute(),
domdocument_create_processing_instruction(),
domdocument_create_entity_reference(), and
domnode_insert_before().

DomDocument->create_processing_instruction
DomDocument->doctype
DOM XML Funções


Returns the document type

DomDocument->create_text_node
DomDocument->document_element
DOM XML Funções
PHP Manual

DomDocument->doctype

(PHP 4 >= 4.1.0)

DomDocument->doctype — Returns the document type

Descrição

domdocumenttype DomDocument->doctype ( void )

This function returns an object of class DomDocumentType. In versions of PHP before 4.3 this has been the class Dtd, but the DOM Standard does not know such a class.

See also the methods of class DomDocumentType.

DomDocument->create_text_node
DomDocument->document_element
DOM XML Funções


Returns root element node

DomDocument->doctype
DomDocument->dump_file
DOM XML Funções
PHP Manual

DomDocument->document_element

(PHP 4 >= 4.1.0)

DomDocument->document_element — Returns root element node

Descrição

domelement DomDocument->document_element ( void )

This function returns the root element node of a document.

The following example returns just the element with name CHAPTER and prints it. The other node -- the comment -- is not returned.

Exemplo #1 Retrieving root element

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$root = $dom->document_element();
print_r($root);
?>

O exemplo acima irá imprimir:

domelement Object
(
    [type] => 1
    [tagname] => chapter
    [0] => 6
    [1] => 137960648
)

DomDocument->doctype
DomDocument->dump_file
DOM XML Funções


Dumps the internal XML tree back into a file

DomDocument->document_element
DomDocument->dump_mem
DOM XML Funções
PHP Manual

DomDocument->dump_file

(PHP 4 >= 4.1.0)

DomDocument->dump_file — Dumps the internal XML tree back into a file

Descrição

string DomDocument->dump_file ( string $filename [, bool $compressionmode [, bool $format ]] )

Creates an XML document from the dom representation. This function usually is called after building a new dom document from scratch as in the example below. The format specifies whether the output should be neatly formatted, or not. The first parameter specifies the name of the filename and the second parameter, whether it should be compressed or not.

Exemplo #1 Creating a simple HTML document header

<?php
$doc = domxml_new_doc("1.0");
$root = $doc->create_element("HTML");
$root = $doc->append_child($root);
$head = $doc->create_element("HEAD");
$head = $root->append_child($head);
$title = $doc->create_element("TITLE");
$title = $head->append_child($title);
$text = $doc->create_text_node("This is the title");
$text = $title->append_child($text);
$doc->dump_file("/tmp/test.xml", false, true);
?>

See also domdocument_dump_mem(), and domdocument_html_dump_mem().

DomDocument->document_element
DomDocument->dump_mem
DOM XML Funções


Dumps the internal XML tree back into a string

DomDocument->dump_file
DomDocument->get_element_by_id
DOM XML Funções
PHP Manual

DomDocument->dump_mem

(PHP 4 >= 4.1.0)

DomDocument->dump_mem — Dumps the internal XML tree back into a string

Descrição

string DomDocument->dump_mem ([ bool $format [, string $encoding ]] )

Creates an XML document from the dom representation. This function usually is called after building a new dom document from scratch as in the example below. The format specifies whether the output should be neatly formatted, or not.

Exemplo #1 Creating a simple HTML document header

<?php
$doc = domxml_new_doc("1.0");
$root = $doc->create_element("HTML");
$root = $doc->append_child($root);
$head = $doc->create_element("HEAD");
$head = $root->append_child($head);
$title = $doc->create_element("TITLE");
$title = $head->append_child($title);
$text = $doc->create_text_node("This is the title");
$text = $title->append_child($text);
echo "<PRE>";
echo htmlentities($doc->dump_mem(true));
echo "</PRE>";
?>

Nota:

The first parameter was added in PHP 4.3.0.

See also domdocument_dump_file(), and domdocument_html_dump_mem().

DomDocument->dump_file
DomDocument->get_element_by_id
DOM XML Funções


Searches for an element with a certain id

DomDocument->dump_mem
DomDocument->get_elements_by_tagname
DOM XML Funções
PHP Manual

DomDocument->get_element_by_id

(PHP 4 >= 4.1.0)

DomDocument->get_element_by_id — Searches for an element with a certain id

Descrição

domelement DomDocument->get_element_by_id ( string $id )

This function is similar to domdocument_get_elements_by_tagname() but searches for an element with a given id. According to the DOM standard this requires a DTD which defines the attribute ID to be of type ID, though the current implementation simply does an xpath search for "//*[@ID = '%s']". This does not comply to the DOM standard which requires to return null if it is not known which attribute is of type id. This behaviour is likely to be fixed, so do not rely on the current behaviour.

See also domdocument_get_elements_by_tagname()

DomDocument->dump_mem
DomDocument->get_elements_by_tagname
DOM XML Funções


Returns array with nodes with given tagname in document or empty array, if not found

DomDocument->get_element_by_id
DomDocument->html_dump_mem
DOM XML Funções
PHP Manual

DomDocument->get_elements_by_tagname

(PHP 4 >= 4.1.0)

DomDocument->get_elements_by_tagname — Returns array with nodes with given tagname in document or empty array, if not found

Descrição

array DomDocument->get_elements_by_tagname ( string $name )

See also domdocument_add_root()

DomDocument->get_element_by_id
DomDocument->html_dump_mem
DOM XML Funções


Dumps the internal XML tree back into a string as HTML

DomDocument->get_elements_by_tagname
DomDocument->xinclude
DOM XML Funções
PHP Manual

DomDocument->html_dump_mem

(PHP 4 >= 4.1.0)

DomDocument->html_dump_mem — Dumps the internal XML tree back into a string as HTML

Descrição

string DomDocument->html_dump_mem ( void )

Creates an HTML document from the dom representation. This function usually is called after building a new dom document from scratch as in the example below.

Exemplo #1 Creating a simple HTML document header

<?php

// Creates the document
$doc = domxml_new_doc("1.0");

$root = $doc->create_element("html");
$root = $doc->append_child($root);

$head = $doc->create_element("head");
$head = $root->append_child($head);

$title = $doc->create_element("title");
$title = $head->append_child($title);

$text = $doc->create_text_node("This is the title");
$text = $title->append_child($text);

echo $doc->html_dump_mem();
?>

O exemplo acima irá imprimir:

<html><head><title>This is the title</title></head></html>

See also domdocument_dump_file(), and domdocument_html_dump_mem().

DomDocument->get_elements_by_tagname
DomDocument->xinclude
DOM XML Funções


Substitutes XIncludes in a DomDocument Object

DomDocument->html_dump_mem
DomDocumentType->entities
DOM XML Funções
PHP Manual

DomDocument->xinclude

(PHP 5)

DomDocument->xinclude — Substitutes XIncludes in a DomDocument Object

Descrição

int DomDocument->xinclude ( void )

This function substitutes » XIncludes in a DomDocument object.

Exemplo #1 Substituting Xincludes

<?php

// include.xml contains :
// <child>test</child>

$xml = '<?xml version="1.0"?>
<root xmlns:xi="http://www.w3.org/2001/XInclude">
  <xi:include href="include.xml">
    <xi:fallback>
      <error>xinclude: include.xml not found</error>
    </xi:fallback>
  </xi:include>
</root>';

$domxml = domxml_open_mem($xml);
$domxml->xinclude();

echo $domxml->dump_mem();

?>

O exemplo acima irá imprimir:

<?xml version="1.0"?>
<root xmlns:xi="http://www.w3.org/2001/XInclude">
  <child>test</child>
</root>

If include.xml doesn't exist, you'll see:

<?xml version="1.0"?>
<root xmlns:xi="http://www.w3.org/2001/XInclude">
  <error>xinclude:dom.xml not found</error>
</root>

DomDocument->html_dump_mem
DomDocumentType->entities
DOM XML Funções


Returns list of entities

DomDocument->xinclude
DomDocumentType->internal_subset
DOM XML Funções
PHP Manual

DomDocumentType->entities

(PHP 4 >= 4.1.0)

DomDocumentType->entities — Returns list of entities

Descrição

array DomDocumentType::entities ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Migrating to PHP 5

Use the entities property of the DOMDocumentType object.

DomDocument->xinclude
DomDocumentType->internal_subset
DOM XML Funções


Returns internal subset

DomDocumentType->entities
DomDocumentType->name
DOM XML Funções
PHP Manual

DomDocumentType->internal_subset

(PHP 4 >= 4.1.0)

DomDocumentType->internal_subset — Returns internal subset

Descrição

bool DomDocumentType::internal_subset ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Migrating to PHP 5

Use the internalSubset property of the DOMDocumentType object.

DomDocumentType->entities
DomDocumentType->name
DOM XML Funções


Returns name of document type

DomDocumentType->internal_subset
DomDocumentType->notations
DOM XML Funções
PHP Manual

DomDocumentType->name

(PHP 4 >= 4.1.0)

DomDocumentType->name — Returns name of document type

Descrição

string DomDocumentType::name ( void )

This function returns the name of the document type.

Valor Retornado

Returns the name of the DomDocumentType, as a string.

Exemplos

Exemplo #1 Getting the document type's name

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

$doctype = $dom->doctype();
echo $doctype->name(); // chapter

?>

Migrating to PHP 5

Use the name property of the DOMDocumentType object.

DomDocumentType->internal_subset
DomDocumentType->notations
DOM XML Funções


Returns list of notations

DomDocumentType->name
DomDocumentType->public_id
DOM XML Funções
PHP Manual

DomDocumentType->notations

(PHP 4 >= 4.1.0)

DomDocumentType->notations — Returns list of notations

Descrição

array DomDocumentType::notations ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Migrating to PHP 5

Use the notations property of the DOMDocumentType object.

DomDocumentType->name
DomDocumentType->public_id
DOM XML Funções


Returns public id of document type

DomDocumentType->notations
DomDocumentType->system_id
DOM XML Funções
PHP Manual

DomDocumentType->public_id

(PHP 4 >= 4.1.0)

DomDocumentType->public_id — Returns public id of document type

Descrição

string DomDocumentType::public_id ( void )

This function returns the public id of the document type.

Valor Retornado

Returns the public id of the DomDocumentType, as a string.

Exemplos

The following example echos nothing.

Exemplo #1 Retrieving the public id

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$doctype = $dom->doctype();
echo $doctype->public_id();
?>

Migrating to PHP 5

Use the publicId property of the DOMDocumentType object.

DomDocumentType->notations
DomDocumentType->system_id
DOM XML Funções


Returns the system id of document type

DomDocumentType->public_id
DomElement->get_attribute_node
DOM XML Funções
PHP Manual

DomDocumentType->system_id

(PHP 4 >= 4.1.0)

DomDocumentType->system_id — Returns the system id of document type

Descrição

string DomDocumentType::system_id ( void )

Returns the system id of the document type.

Valor Retornado

Returns the system id of the DomDocumentType, as a string.

Exemplos

Exemplo #1 Retrieving the system id

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$doctype = $dom->doctype();
echo $doctype->system_id();
?>

O exemplo acima irá imprimir:

/share/sgml/Norman_Walsh/db3xml10/db3xml10.dtd

Migrating to PHP 5

Use the systemId property of the DOMDocumentType object.

DomDocumentType->public_id
DomElement->get_attribute_node
DOM XML Funções


Returns the node of the given attribute

DomDocumentType->system_id
DomElement->get_attribute
DOM XML Funções
PHP Manual

DomElement->get_attribute_node

(PHP 4 >= 4.1.0)

DomElement->get_attribute_node — Returns the node of the given attribute

Descrição

DomAttribute DomElement::get_attribute_node ( string $name )

Returns the node of the given attribute in the current element.

Parâmetros

name

The name of the seeked attribute. This parameter is case sensitive.

Valor Retornado

Returns the node of the attribute as a DomAttribute or FALSE if no attribute with the given name is found.

Exemplos

Exemplo #1 Getting an attribute node

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

$root = $dom->document_element();
if ($attribute = $root->get_attribute_node('language')) {
    echo 'Language is: ' . $attribute->value() . "\n";
}

?>

Migrating to PHP 5

Use DOMElement::getAttributeNode.

Veja Também

  • DomElement->get_attribute
  • DomElement->set_attribute

DomDocumentType->system_id
DomElement->get_attribute
DOM XML Funções


Returns the value of the given attribute

DomElement->get_attribute_node
DomElement->get_elements_by_tagname
DOM XML Funções
PHP Manual

DomElement->get_attribute

(PHP 4 >= 4.1.0)

DomElement->get_attribute — Returns the value of the given attribute

Descrição

string DomElement::get_attribute ( string $name )

Returns the value of the given attribute in the current element.

Since PHP 4.3, if no attribute with given name is found, an empty string is returned.

Parâmetros

name

The name of the seeked attribute. This parameter is case sensitive.

Valor Retornado

Returns the name of the attribute as a string or an empty string if no attribute with the given name is found.

Exemplos

Exemplo #1 Getting the value of an attribute

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

// get chapter
$root = $dom->document_element();
echo $root->get_attribute('language'); // en

?>

Migrating to PHP 5

Use DOMElement::getAttribute.

Veja Também

  • DomElement->get_attribute_node
  • DomElement->set_attribute

DomElement->get_attribute_node
DomElement->get_elements_by_tagname
DOM XML Funções


Gets elements by tagname

DomElement->get_attribute
DomElement->has_attribute
DOM XML Funções
PHP Manual

DomElement->get_elements_by_tagname

(PHP 4 >= 4.1.0)

DomElement->get_elements_by_tagname — Gets elements by tagname

Descrição

array DomElement::get_elements_by_tagname ( string $name )

Gets all the sub elements with the specific name within the current element.

Parâmetros

name

The name of the seeked element.

Valor Retornado

Returns an array of DomElement objects.

Exemplos

Exemplo #1 Getting a content

<?php
if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$root = $dom->document_element();

$node_array = $root->get_elements_by_tagname('element');

foreach ($node_array as $node) {
    echo ' - ' . $node->get_content() . "\n";
}

?>

Migrating to PHP 5

Use DOMElement::getElementsByTagName.

DomElement->get_attribute
DomElement->has_attribute
DOM XML Funções


Checks to see if an attribute exists in the current node

DomElement->get_elements_by_tagname
DomElement->remove_attribute
DOM XML Funções
PHP Manual

DomElement->has_attribute

(PHP 4 >= 4.1.0)

DomElement->has_attribute — Checks to see if an attribute exists in the current node

Descrição

bool DomElement::has_attribute ( string $name )

This functions checks to see if an attribute named name exists in the current node.

Parâmetros

name

The name of the tested attribute.

Valor Retornado

Returns TRUE if the asked attribute exists, FALSE otherwise.

Exemplos

Exemplo #1 Testing the existence of an attribute

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

$root = $dom->document_element();

$buffer = '<html';
if ($root->has_attribute('language')) {
    $buffer .= 'lang="' . $root->get_attribute('language') . '"';
}
$buffer .= '>';

?>

Migrating to PHP 5

Use DOMElement::hasAttribute.

DomElement->get_elements_by_tagname
DomElement->remove_attribute
DOM XML Funções


Removes attribute

DomElement->has_attribute
DomElement->set_attribute_node
DOM XML Funções
PHP Manual

DomElement->remove_attribute

(PHP 4 >= 4.1.0)

DomElement->remove_attribute — Removes attribute

Descrição

bool DomElement::remove_attribute ( string $name )

Removes an attribute from the current DomElement node.

Parâmetros

name

The name of the attribute to remove.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Migrating to PHP 5

Use DOMElement::removeAttribute.

DomElement->has_attribute
DomElement->set_attribute_node
DOM XML Funções


Adds new attribute

DomElement->remove_attribute
DomElement->set_attribute
DOM XML Funções
PHP Manual

DomElement->set_attribute_node

(PHP 4 >= 4.1.0)

DomElement->set_attribute_node — Adds new attribute

Descrição

DomNode DomElement::set_attribute_node ( DomNode $attr )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

DomElement->remove_attribute
DomElement->set_attribute
DOM XML Funções


Sets the value of an attribute

DomElement->set_attribute_node
DomElement->tagname
DOM XML Funções
PHP Manual

DomElement->set_attribute

(PHP 4 >= 4.1.0)

DomElement->set_attribute — Sets the value of an attribute

Descrição

DomAttribute DomElement::set_attribute ( string $name , string $value )

Sets an attribute with name name to the given value.

Parâmetros

name

The name of the attribute. If this attribute doesn't exist, it will be created.

value

The value of the attribute.

Valor Retornado

Returns the old DomAttribute node, or the new one if you are creating the attribute for the first time.

Exemplos

Exemplo #1 Setting an attribute

<?php
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("para");
$newnode = $doc->append_child($node);
$newnode->set_attribute("align", "left");
?>

Migrating to PHP 5

Use DOMElement::setAttribute.

Veja Também

  • DomElement->get_attribute_node
  • DomElement->get_attribute

DomElement->set_attribute_node
DomElement->tagname
DOM XML Funções


Returns the name of the current element

DomElement->set_attribute
DomNode->add_namespace
DOM XML Funções
PHP Manual

DomElement->tagname

(PHP 4 >= 4.1.0)

DomElement->tagname — Returns the name of the current element

Descrição

string DomElement::tagname ( void )

Returns the name of the current node. Calling this function is the same as accessing the tagname property, or calling DomNode->node_name on the current node.

Valor Retornado

Returns the name of the current DomElement node.

Exemplos

Exemplo #1 Getting the node name

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

$root = $dom->document_element();
echo $root->tagname();   // chapter
echo $root->tagname;     // chapter
echo $root->node_name(); // chapter

?>

Migrating to PHP 5

Use the tagName property of the DOMElement object.

DomElement->set_attribute
DomNode->add_namespace
DOM XML Funções


Adds a namespace declaration to a node

DomElement->tagname
DomNode->append_child
DOM XML Funções
PHP Manual

DomNode->add_namespace

(PHP 4 >= 4.3.0)

DomNode->add_namespace — Adds a namespace declaration to a node

Descrição

bool DOMNode::add_namespace ( string $uri , string $prefix )

This method adds a namespace declaration to a node.

Nota:

This method is not part of the DOM specification.

Parâmetros

uri

The namespace URI of the node.

prefix

The namespace prefix of the node.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Migrating to PHP 5

You can set the namespace URI and prefix of a DOMElement or a DOMAttr at creation time by using DOMDocument::createElementNS or DOMDocument::createAttributeNS.

Nota:

Remember the an attribute does not inherit its namespace from the element it is attached to.

Veja Também

  • DomDocument->create_element_ns
  • DomNode->set_namespace

DomElement->tagname
DomNode->append_child
DOM XML Funções


Adds a new child at the end of the children

DomNode->add_namespace
DomNode->append_sibling
DOM XML Funções
PHP Manual

DomNode->append_child

(PHP 4 >= 4.1.0)

DomNode->append_child — Adds a new child at the end of the children

Descrição

DOMNode DOMNode::append_child ( DOMNode $newnode )

This functions appends a child to an existing list of children or creates a new list of children.

Parâmetros

newnode

The node being appended. It can be created with e.g. DomDocument->create_element, DomDocument->create_text_node etc. or simply by using any other node.

Nota:

You can not append a DOMAttribute using this method. Use DomElement->set_attribute instead.

Valor Retornado

Returns the appended node on success or FALSE on failure.

Histórico

Versão | Descrição
4.3.0 | You are not allowed anymore to insert a node from another document.
4.3.0 | Prior to PHP 4.3.0, the new child is duplicated before being appended. Therefore the new child is a completely new copy which can be modified without changing the node which was passed to this function. If the node passed has children itself, they will be duplicated as well, which makes it quite easy to duplicate large parts of an XML document. The return value is the appended child. If you plan to do further modifications on the appended child you must use the returned node.
4.3.0 and 4.3.1 | The new child newnode is first unlinked from its existing context, if it's already a child of DomNode. Therefore the newnode is moved and not copies anymore. This is the behaviour according to the W3C specifications. If you need the old behaviour, use DomNode->clone_node before appending.
4.3.2 | The new child newnode is first unlinked from its existing context, if it's already in the tree. Same rules apply.

Exemplos

The following example adds a new element node to a fresh document and sets the attribute align to left.

Exemplo #1 Adding a child

<?php
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("para");
$newnode = $doc->append_child($node);
$newnode->set_attribute("align", "left");
?>

The above example could also be written as the following:

Exemplo #2 Adding a child

<?php
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("para");
$node->set_attribute("align", "left");
$newnode = $doc->append_child($node);
?>

A more complex example is the one below. It first searches for a certain element, duplicates it including its children and adds it as a sibling. Finally a new attribute is added to one of the children of the new sibling and the whole document is dumped.

Exemplo #3 Adding a child

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$elements = $dom->get_elements_by_tagname("informaltable");
print_r($elements);
$element = $elements[0];

$parent = $element->parent_node();
$newnode = $parent->append_child($element);
$children = $newnode->children();
$attr = $children[1]->set_attribute("align", "left");

$xmlfile = $dom->dump_mem();
echo htmlentities($xmlfile);
?>

The above example could also be done with DomNode->insert_before instead of DomNode->append_child.

Migrating to PHP 5

You should use DOMNode::appendChild.

Veja Também

  • DomNode->insert_before
  • DomNode->clone_node

DomNode->add_namespace
DomNode->append_sibling
DOM XML Funções


Adds new sibling to a node

DomNode->append_child
DomNode->attributes
DOM XML Funções
PHP Manual

DomNode->append_sibling

(PHP 4 >= 4.2.0)

DomNode->append_sibling — Adds new sibling to a node

Descrição

domelement DomNode->append_sibling ( domelement $newnode )

This functions appends a sibling to an existing node. The child can be created with e.g. domdocument_create_element(), domdocument_create_text() etc. or simply by using any other node.

Before a new sibling is added it is first duplicated. Therefore the new child is a completely new copy which can be modified without changing the node which was passed to this function. If the node passed has children itself, they will be duplicated as well, which makes it quite easy to duplicate large parts of an XML document. The return value is the added sibling. If you plan to do further modifications on the added sibling you must use the returned node.

This function has been added to provide the behaviour of domnode_append_child() as it works till PHP 4.2.

See also domnode_append_before().

DomNode->append_child
DomNode->attributes
DOM XML Funções


Returns list of attributes

DomNode->append_sibling
DomNode->child_nodes
DOM XML Funções
PHP Manual

DomNode->attributes

(PHP 4 >= 4.1.0)

DomNode->attributes — Returns list of attributes

Descrição

array DomNode->attributes ( void )

This function only returns an array of attributes if the node is of type XML_ELEMENT_NODE.

(PHP >= 4.3 only) If no attributes are found, NULL is returned.

DomNode->append_sibling
DomNode->child_nodes
DOM XML Funções


Returns children of node

DomNode->attributes
DomNode->clone_node
DOM XML Funções
PHP Manual

DomNode->child_nodes

(PHP 4 >= 4.1.0)

DomNode->child_nodes — Returns children of node

Descrição

array DomNode->child_nodes ( void )

Returns all children of the node.

See also domnode_next_sibling(), and domnode_previous_sibling().

DomNode->attributes
DomNode->clone_node
DOM XML Funções


Clones a node

DomNode->child_nodes
DomNode->dump_node
DOM XML Funções
PHP Manual

DomNode->clone_node

(PHP 4 >= 4.1.0)

DomNode->clone_node — Clones a node

Descrição

domelement DomNode->clone_node ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

DomNode->child_nodes
DomNode->dump_node
DOM XML Funções


Dumps a single node

DomNode->clone_node
DomNode->first_child
DOM XML Funções
PHP Manual

DomNode->dump_node

(PHP 4 >= 4.1.0)

DomNode->dump_node — Dumps a single node

Descrição

string DomNode->dump_node ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

See also domdocument_dump_mem().

DomNode->clone_node
DomNode->first_child
DOM XML Funções


Returns first child of node

DomNode->dump_node
DomNode->get_content
DOM XML Funções
PHP Manual

DomNode->first_child

(PHP 4 >= 4.1.0)

DomNode->first_child — Returns first child of node

Descrição

domelement DomNode->first_child ( void )

Returns the first child of the node.

(PHP >= 4.3 only) If no first child is found, NULL is returned.

See also domnode_last_child(), and
domnode_next_sibling(),
domnode_previous_sibling().

DomNode->dump_node
DomNode->get_content
DOM XML Funções


Gets content of node

DomNode->first_child
DomNode->has_attributes
DOM XML Funções
PHP Manual

DomNode->get_content

(PHP 4 >= 4.2.0)

DomNode->get_content — Gets content of node

Descrição

string DomNode->get_content ( void )

This function returns the content of the actual node.

Exemplo #1 Getting a content

<?php
if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$root = $dom->document_element();

$node_array = $root->get_elements_by_tagname("element");

for ($i = 0; $i<count($node_array); $i++) {
    $node = $node_array[$i];
    echo "The element[$i] is: " . $node->get_content();
}

?>

DomNode->first_child
DomNode->has_attributes
DOM XML Funções


Checks if node has attributes

DomNode->get_content
DomNode->has_child_nodes
DOM XML Funções
PHP Manual

DomNode->has_attributes

(PHP 4 >= 4.1.0)

DomNode->has_attributes — Checks if node has attributes

Descrição

bool DomNode->has_attributes ( void )

This function checks if the node has attributes.

See also domnode_has_child_nodes().

DomNode->get_content
DomNode->has_child_nodes
DOM XML Funções


Checks if node has children

DomNode->has_attributes
DomNode->insert_before
DOM XML Funções
PHP Manual

DomNode->has_child_nodes

(PHP 4 >= 4.1.0)

DomNode->has_child_nodes — Checks if node has children

Descrição

bool DomNode->has_child_nodes ( void )

This function checks if the node has children.

See also domnode_child_nodes().

DomNode->has_attributes
DomNode->insert_before
DOM XML Funções


Inserts new node as child

DomNode->has_child_nodes
DomNode->is_blank_node
DOM XML Funções
PHP Manual

DomNode->insert_before

(PHP 4 >= 4.1.0)

DomNode->insert_before — Inserts new node as child

Descrição

domelement DomNode->insert_before ( domelement $newnode , domelement $refnode )

This function inserts the new node newnode right before the node refnode. The return value is the inserted node. If you plan to do further modifications on the appended child you must use the returned node.

(PHP >= 4.3 only) If newnode already is part of a document, it will be first unlinked from its existing context. If refnode is NULL, then newnode will be inserted at the end of the list of children.

domnode_insert_before() is very similar to domnode_append_child() as the following example shows which does the same as the example at domnode_append_child().

Exemplo #1 Adding a child

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$elements = $dom->get_elements_by_tagname("informaltable");
print_r($elements);
$element = $elements[0];

$newnode = $element->insert_before($element, $element);
$children = $newnode->children();
$attr = $children[1]->set_attribute("align", "left");

echo "<pre>";
$xmlfile = $dom->dump_mem();
echo htmlentities($xmlfile);
echo "</pre>";
?>

See also domnode_append_child().

DomNode->has_child_nodes
DomNode->is_blank_node
DOM XML Funções


Checks if node is blank

DomNode->insert_before
DomNode->last_child
DOM XML Funções
PHP Manual

DomNode->is_blank_node

(PHP 4 >= 4.1.0)

DomNode->is_blank_node — Checks if node is blank

Descrição

bool DomNode->is_blank_node ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

DomNode->insert_before
DomNode->last_child
DOM XML Funções


Returns last child of node

DomNode->is_blank_node
DomNode->next_sibling
DOM XML Funções
PHP Manual

DomNode->last_child

(PHP 4 >= 4.1.0)

DomNode->last_child — Returns last child of node

Descrição

domelement DomNode->last_child ( void )

Returns the last child of the node.

(PHP >= 4.3 only) If no last child is found, NULL is returned.

See also domnode_first_child(), and
domnode_next_sibling(),
domnode_previous_sibling().

DomNode->is_blank_node
DomNode->next_sibling
DOM XML Funções


Returns the next sibling of node

DomNode->last_child
DomNode->node_name
DOM XML Funções
PHP Manual

DomNode->next_sibling

(PHP 4 >= 4.1.0)

DomNode->next_sibling — Returns the next sibling of node

Descrição

domelement DomNode->next_sibling ( void )

This function returns the next sibling of the current node. If there is no next sibling it returns FALSE (< 4.3) or null (>= 4.3). You can use this function to iterate over all children of a node as shown in the example.

Exemplo #1 Iterate over children

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$elements = $dom->get_elements_by_tagname("tbody");
$element = $elements[0];
$child = $element->first_child();

while ($child) {
   print_r($child);
   $child = $child->next_sibling();
}
?>

See also domnode_previous_sibling().

DomNode->last_child
DomNode->node_name
DOM XML Funções


Returns name of node

DomNode->next_sibling
DomNode->node_type
DOM XML Funções
PHP Manual

DomNode->node_name

(PHP 4 >= 4.1.0)

DomNode->node_name — Returns name of node

Descrição

string DomNode->node_name ( void )

Returns name of the node. The name has different meanings for the different types of nodes as illustrated in the following table.

Meaning of value
Type | Meaning
DomAttribute | value of attribute
DomAttribute |
DomCDataSection | #cdata-section
DomComment | #comment
DomDocument | #document
DomDocumentType | document type name
DomElement | tag name
DomEntity | name of entity
DomEntityReference | name of entity reference
DomNotation | notation name
DomProcessingInstruction | target
DomText | #text

DomNode->next_sibling
DomNode->node_type
DOM XML Funções


Returns type of node

DomNode->node_name
DomNode->node_value
DOM XML Funções
PHP Manual

DomNode->node_type

(PHP 4 >= 4.1.0)

DomNode->node_type — Returns type of node

Descrição

int DomNode->node_type ( void )

Returns the type of the node. All possible types are listed in the table in the introduction.

<?php

include 'example.inc';

$dom = domxml_open_mem($xmlstr);

$chapter = $dom->document_element();

// Let's see the elements contained in chapter
foreach($chapter->child_nodes() as $node) {
  if ($node->node_type() == XML_ELEMENT_NODE) {
    echo $node->node_name() . "\n";
  }
}

?>

O exemplo acima irá imprimir:

title
para
DomNode->node_name
DomNode->node_value
DOM XML Funções


Returns value of a node

DomNode->node_type
DomNode->owner_document
DOM XML Funções
PHP Manual

DomNode->node_value

(PHP 4 >= 4.1.0)

DomNode->node_value — Returns value of a node

Descrição

string DomNode->node_value ( void )

Returns value of the node. The value has different meanings for the different types of nodes as illustrated in the following table.

Meaning of value
Type | Meaning
DomAttribute | value of attribute
DomAttribute |
DomCDataSection | content
DomComment | content of comment
DomDocument | null
DomDocumentType | null
DomElement | null
DomEntity | null
DomEntityReference | null
DomNotation | null
DomProcessingInstruction | entire content without target
DomText | content of text

DomNode->node_type
DomNode->owner_document
DOM XML Funções


Returns the document this node belongs to

DomNode->node_value
DomNode->parent_node
DOM XML Funções
PHP Manual

DomNode->owner_document

(PHP 4 >= 4.1.0)

DomNode->owner_document — Returns the document this node belongs to

Descrição

domdocument DomNode->owner_document ( void )

This function returns the document the current node belongs to.

The following example will create two identical lists of children.

Exemplo #1 Finding the document of a node

<?php
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("para");
$node = $doc->append_child($node);
$children = $doc->children();
print_r($children);

$doc2 = $node->owner_document();
$children = $doc2->children();
print_r($children);
?>

See also domnode_insert_before().

DomNode->node_value
DomNode->parent_node
DOM XML Funções


Returns the parent of the node

DomNode->owner_document
DomNode->prefix
DOM XML Funções
PHP Manual

DomNode->parent_node

(PHP 4 >= 4.1.0)

DomNode->parent_node — Returns the parent of the node

Descrição

domnode DomNode->parent_node ( void )

This function returns the parent node.

(PHP >= 4.3 only) If no parent is found, NULL is returned.

The following example will show two identical lists of children.

Exemplo #1 Finding the document of a node

<?php
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("para");
$node = $doc->append_child($node);
$children = $doc->children();
print_r($children);

$doc2 = $node->parent_node();
$children = $doc2->children();
print_r($children);
?>

DomNode->owner_document
DomNode->prefix
DOM XML Funções


Returns name space prefix of node

DomNode->parent_node
DomNode->previous_sibling
DOM XML Funções
PHP Manual

DomNode->prefix

(PHP 4 >= 4.1.0)

DomNode->prefix — Returns name space prefix of node

Descrição

string DomNode->prefix ( void )

Returns the name space prefix of the node.

DomNode->parent_node
DomNode->previous_sibling
DOM XML Funções


Returns the previous sibling of node

DomNode->prefix
DomNode->remove_child
DOM XML Funções
PHP Manual

DomNode->previous_sibling

(PHP 4 >= 4.1.0)

DomNode->previous_sibling — Returns the previous sibling of node

Descrição

domelement DomNode->previous_sibling ( void )

This function returns the previous sibling of the current node. If there is no previous sibling it returns FALSE (< 4.3) or NULL (>= 4.3). You can use this function to iterate over all children of a node as shown in the example.

See also domnode_next_sibling().

DomNode->prefix
DomNode->remove_child
DOM XML Funções


Removes child from list of children

DomNode->previous_sibling
DomNode->replace_child
DOM XML Funções
PHP Manual

DomNode->remove_child

(PHP 4 >= 4.2.0)

DomNode->remove_child — Removes child from list of children

Descrição

domtext DomNode->remove_child ( domtext $oldchild )

This functions removes a child from a list of children. If child cannot be removed or is not a child the function will return FALSE. If the child could be removed the functions returns the old child.

Exemplo #1 Removing a child

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$elements = $dom->get_elements_by_tagname("tbody");
$element = $elements[0];
$children = $element->child_nodes();
$child = $element->remove_child($children[0]);

echo "<PRE>";
$xmlfile = $dom->dump_mem(true);
echo htmlentities($xmlfile);
echo "</PRE>";
?>

See also domnode_append_child().

DomNode->previous_sibling
DomNode->replace_child
DOM XML Funções


Replaces a child

DomNode->remove_child
DomNode->replace_node
DOM XML Funções
PHP Manual

DomNode->replace_child

(PHP 4 >= 4.2.0)

DomNode->replace_child — Replaces a child

Descrição

domelement DomNode->replace_child ( domelement $newnode , domelement $oldnode )

(PHP 4.2) This function replaces the child oldnode with the passed new node. If the new node is already a child it will not be added a second time. If the old node cannot be found the function returns FALSE. If the replacement succeeds the old node is returned.

(PHP 4.3) This function replaces the child oldnode with the passed newnode, even if the new node already is a child of the DomNode. If newnode was already inserted in the document it is first unlinked from its existing context. If the old node cannot be found the function returns FALSE. If the replacement succeeds the old node is returned. (This behaviour is according to the W3C specs).

See also domnode_append_child()

DomNode->remove_child
DomNode->replace_node
DOM XML Funções


Replaces node

DomNode->replace_child
DomNode->set_content
DOM XML Funções
PHP Manual

DomNode->replace_node

(PHP 4 >= 4.2.0)

DomNode->replace_node — Replaces node

Descrição

domelement DomNode->replace_node ( domelement $newnode )

(PHP 4.2) This function replaces an existing node with the passed new node. Before the replacement newnode is copied if it has a parent to make sure a node which is already in the document will not be inserted a second time. This behaviour enforces doing all modifications on the node before the replacement or to refetch the inserted node afterwards with functions like domnode_first_child(), domnode_child_nodes() etc..

(PHP 4.3) This function replaces an existing node with the passed new node. It is not copied anymore. If newnode was already inserted in the document it is first unlinked from its existing context. If the replacement succeeds the old node is returned.

See also domnode_append_child()

DomNode->replace_child
DomNode->set_content
DOM XML Funções


Sets content of node

DomNode->replace_node
DomNode->set_name
DOM XML Funções
PHP Manual

DomNode->set_content

(PHP 4 >= 4.1.0)

DomNode->set_content — Sets content of node

Descrição

bool DomNode->set_content ( string $content )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

DomNode->replace_node
DomNode->set_name
DOM XML Funções


Sets name of node

DomNode->set_content
DomNode->set_namespace
DOM XML Funções
PHP Manual

DomNode->set_name

(PHP 4 >= 4.1.0)

DomNode->set_name — Sets name of node

Descrição

bool DomNode->set_name ( void )

Sets name of node.

See also domnode_node_name().

DomNode->set_content
DomNode->set_namespace
DOM XML Funções


Sets namespace of a node

DomNode->set_name
DomNode->unlink_node
DOM XML Funções
PHP Manual

DomNode->set_namespace

(PHP 4 >= 4.3.0)

DomNode->set_namespace — Sets namespace of a node

Descrição

void DomNode->set_namespace ( string $uri [, string $prefix ] )

Sets the namespace of a node to uri. If there is already a namespace declaration with the same uri in one of the parent nodes of the node, the prefix of this is taken, otherwise it will take the one provided in the optional parameter prefix or generate a random one.

See also domdocument_create_element_ns(), and domnode_add_namespace()

DomNode->set_name
DomNode->unlink_node
DOM XML Funções


Deletes node

DomNode->set_namespace
DomProcessingInstruction->data
DOM XML Funções
PHP Manual

DomNode->unlink_node

(PHP 4 >= 4.1.0)

DomNode->unlink_node — Deletes node

Descrição

void DomNode->unlink_node ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

DomNode->set_namespace
DomProcessingInstruction->data
DOM XML Funções


Returns the data of ProcessingInstruction node

DomNode->unlink_node
DomProcessingInstruction->target
DOM XML Funções
PHP Manual

DomProcessingInstruction->data

(PHP 4 >= 4.1.0)

DomProcessingInstruction->data — Returns the data of ProcessingInstruction node

Descrição

string DomProcessingInstruction::data ( void )

This method gets the data of the ProcessingInstruction node.

Valor Retornado

Returns the data of the Processing Instruction.

Migrating to PHP 5

Use the data property of DOMProcessingInstruction.

DomNode->unlink_node
DomProcessingInstruction->target
DOM XML Funções


Returns the target of a ProcessingInstruction node

DomProcessingInstruction->data
DomXsltStylesheet->process
DOM XML Funções
PHP Manual

DomProcessingInstruction->target

(PHP 4 >= 4.1.0)

DomProcessingInstruction->target — Returns the target of a ProcessingInstruction node

Descrição

string DomProcessingInstruction::target ( void )

This method gets the target of the ProcessingInstruction node.

Valor Retornado

Returns the target of the Processing Instruction.

Migrating to PHP 5

Use the target property of DOMProcessingInstruction.

DomProcessingInstruction->data
DomXsltStylesheet->process
DOM XML Funções


Applies the XSLT-Transformation on a DomDocument Object

DomProcessingInstruction->target
DomXsltStylesheet->result_dump_file
DOM XML Funções
PHP Manual

DomXsltStylesheet->process

(PHP 4 >= 4.1.0)

DomXsltStylesheet->process — Applies the XSLT-Transformation on a DomDocument Object

Descrição

DomDocument DomXsltStylesheet::process ( DomDocument $xml_doc [, array $xslt_params [, bool $is_xpath_param [, string $profile_filename ]]] )

Applies an XSLT Transformation on the given DomDocument object.

Parâmetros

xml_doc

The XML document being transformed, as a DomDocument object.

xslt_params

An associative array that takes pairs of parameter names and values.

is_xpath_param

If set to FALSE the values of the xslt_params will be quoted. This is the default behavior. It allows you to pass the values as PHP strings.

Nota:

If your strings contains both single and double quotes, you must take care of quoting all the values by yourself and set this parameter to TRUE.

profile_filename

Set this to the path of a filename, if you want profiling information.

Valor Retornado

Returns the result of the processing, as a DomDocument object.

Migrating to PHP 5

Use XSLTProcessor::setParameter() and XSLTProcessor::transform-to-doc().

Histórico

Versão | Descrição
4.3.0 | The profile_filename parameter was added.

Veja Também

  • domxml_xslt_stylesheet() - Creates a DomXsltStylesheet object from an XSL document in a string
  • domxml_xslt_stylesheet_file() - Creates a DomXsltStylesheet Object from an XSL document in a file
  • domxml_xslt_stylesheet_doc() - Creates a DomXsltStylesheet Object from a DomDocument Object

DomProcessingInstruction->target
DomXsltStylesheet->result_dump_file
DOM XML Funções


Dumps the result from a XSLT-Transformation into a file

DomXsltStylesheet->process
DomXsltStylesheet->result_dump_mem
DOM XML Funções
PHP Manual

DomXsltStylesheet->result_dump_file

(PHP 4 >= 4.1.0)

DomXsltStylesheet->result_dump_file — Dumps the result from a XSLT-Transformation into a file

Descrição

string DomXsltStylesheet::result_dump_file ( DomDocument $xmldoc , string $filename )

Since DomXsltStylesheet->process always returns a well-formed XML DomDocument, no matter what output method was declared in

<xsl:output>
and similar attributes/elements, it's of not much use, if you want to output HTML 4 or text data.

This function on the contrary honors

<xsl:output method="html|text">
and other output control directives. See the example for instruction on how to use it.

Exemplos

Exemplo #1 Saving the result of a XSLT transformation in a file

<?php
$filename = "stylesheet.xsl";
$xmldoc = domxml_open_file("data.xml");
$xsldoc = domxml_xslt_stylesheet_file($filename);
$result =  $xsldoc->process($xmldoc);
echo $xsldoc->result_dump_file($result, "filename");
?>

Veja Também

  • DomXsltStylesheet->result_dump_mem
  • DomXsltStylesheet->process

DomXsltStylesheet->process
DomXsltStylesheet->result_dump_mem
DOM XML Funções


Dumps the result from a XSLT-Transformation back into a string

DomXsltStylesheet->result_dump_file
domxml_new_doc
DOM XML Funções
PHP Manual

DomXsltStylesheet->result_dump_mem

(PHP 4 >= 4.1.0)

DomXsltStylesheet->result_dump_mem — Dumps the result from a XSLT-Transformation back into a string

Descrição

string DomXsltStylesheet::result_dump_mem ( DomDocument $xmldoc )

Since DomXsltStylesheet->process always returns a well-formed XML DomDocument, no matter what output method was declared in

<xsl:output>
and similar attributes/elements, it's of not much use, if you want to output HTML 4 or text data.

This function on the contrary honors

<xsl:output method="html|text">
and other output control directives. See the example for instruction on how to use it.

Exemplos

Exemplo #1 Outputting the result of a XSLT transformation

<?php
$filename = "stylesheet.xsl";
$xmldoc = domxml_open_file("data.xml");
$xsldoc = domxml_xslt_stylesheet_file($filename);
$result =  $xsldoc->process($xmldoc);
echo $xsldoc->result_dump_mem($result);
?>

Veja Também

  • DomXsltStylesheet->result_dump_file
  • DomXsltStylesheet->process

DomXsltStylesheet->result_dump_file
domxml_new_doc
DOM XML Funções


Creates new empty XML document

DomXsltStylesheet->result_dump_mem
domxml_open_file
DOM XML Funções
PHP Manual

domxml_new_doc

(PHP 4 >= 4.2.0)

domxml_new_doc — Creates new empty XML document

Descrição

DomDocument domxml_new_doc ( string $version )

Creates a new Dom document from scratch and returns it.

Parâmetros

version

The XML version number of the document.

Valor Retornado

Returns a new DomDocument instance.

DomXsltStylesheet->result_dump_mem
domxml_open_file
DOM XML Funções


Creates a DOM object from an XML file

domxml_new_doc
domxml_open_mem
DOM XML Funções
PHP Manual

domxml_open_file

(PHP 4 >= 4.2.0)

domxml_open_file — Creates a DOM object from an XML file

Descrição

DomDocument domxml_open_file ( string $filename [, int $mode [, array &$error ]] )

The function parses the XML document in the given file.

Parâmetros

filename

The path to the XML file. The file is accessed in read-only mode.

mode

This optional parameter can be used to change the behavior of this function.

You can use one of the following constants for it: DOMXML_LOAD_PARSING (default), DOMXML_LOAD_VALIDATING or DOMXML_LOAD_RECOVERING. You can add to it also DOMXML_LOAD_DONT_KEEP_BLANKS, DOMXML_LOAD_SUBSTITUTE_ENTITIES and DOMXML_LOAD_COMPLETE_ATTRS by bitwise or.

error

If used, it will contain the error messages. error must be passed in by reference.

Valor Retornado

Returns a DomDocument instance of the given file.

Exemplos

Exemplo #1 Opening an XML document from a file

<?php

if (!$dom = domxml_open_file("example.xml")) {
  echo "Error while parsing the document\n";
  exit;
}

$root = $dom->document_element();
?>

Histórico

Versão | Descrição
4.3.0 | The parameters mode and error were added.

Veja Também

  • domxml_open_mem() - Creates a DOM object of an XML document
  • domxml_new_doc() - Creates new empty XML document

domxml_new_doc
domxml_open_mem
DOM XML Funções


Creates a DOM object of an XML document

domxml_open_file
domxml_version
DOM XML Funções
PHP Manual

domxml_open_mem

(PHP 4 >= 4.2.0)

domxml_open_mem — Creates a DOM object of an XML document

Descrição

DomDocument domxml_open_mem ( string $str [, int $mode [, array &$error ]] )

The function parses the XML document in the given string.

Parâmetros

str

The contents of the XML file.

mode

This optional parameter can be used to change the behavior of this function.

You can use one of the following constants for it: DOMXML_LOAD_PARSING (default), DOMXML_LOAD_VALIDATING or DOMXML_LOAD_RECOVERING. You can add to it also DOMXML_LOAD_DONT_KEEP_BLANKS, DOMXML_LOAD_SUBSTITUTE_ENTITIES and DOMXML_LOAD_COMPLETE_ATTRS by bitwise or.

error

If used, it will contain the error messages. error must be passed in by reference.

Valor Retornado

Returns a DomDocument instance of the given XML contents.

Histórico

Versão | Descrição
4.3.0 | The mode and error parameters were added.

Exemplos

Exemplo #1 Opening an XML document in a string

<?php
include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
  echo "Error while parsing the document\n";
  exit;
}

$root = $dom->document_element();
?>

Veja Também

  • domxml_open_file() - Creates a DOM object from an XML file
  • domxml_new_doc() - Creates new empty XML document

domxml_open_file
domxml_version
DOM XML Funções


Gets the XML library version

domxml_open_mem
domxml_xmltree
DOM XML Funções
PHP Manual

domxml_version

(PHP 4 >= 4.1.0)

domxml_version — Gets the XML library version

Descrição

string domxml_version ( void )

Gets the version of the XML library currently used.

Valor Retornado

The version of the XML library, as a string.

Exemplos

Exemplo #1 domxml_version() Example

<?php

echo domxml_version();

?>

O exemplo acima irá imprimir algo similar a:

20607

domxml_open_mem
domxml_xmltree
DOM XML Funções


Creates a tree of PHP objects from an XML document

domxml_version
domxml_xslt_stylesheet_doc
DOM XML Funções
PHP Manual

domxml_xmltree

(PHP 4 >= 4.2.0)

domxml_xmltree — Creates a tree of PHP objects from an XML document

Descrição

DomDocument domxml_xmltree ( string $str )

The function parses the XML document in str and returns a tree PHP objects as the parsed document.

This function is isolated from the other functions, which means you cannot access the tree with any of the other functions. Modifying it, for example by adding nodes, makes no sense since there is currently no way to dump it as an XML file.

However this function may be valuable if you want to read a file and investigate the content.

Parâmetros

str

The contents of the XML file.

Valor Retornado

Returns a tree of Dom objects starting by a DomDocument.

domxml_version
domxml_xslt_stylesheet_doc
DOM XML Funções


Creates a DomXsltStylesheet Object from a DomDocument Object

domxml_xmltree
domxml_xslt_stylesheet_file
DOM XML Funções
PHP Manual

domxml_xslt_stylesheet_doc

(PHP 4 >= 4.2.0)

domxml_xslt_stylesheet_doc — Creates a DomXsltStylesheet Object from a DomDocument Object

Descrição

DomXsltStylesheet domxml_xslt_stylesheet_doc ( DomDocument $xsl_doc )

Creates a DomXsltStylesheet object from the given XSL document.

Parâmetros

xsl_doc

The XSL document, as a DomDocument object.

Valor Retornado

Returns a new instance of DomXsltStylesheet.

Migrating to PHP 5

Call XSLTProcessor::importStylesheet() with the xsl_doc parameter.

Veja Também

  • DomXsltStylesheet->process
  • domxml_xslt_stylesheet() - Creates a DomXsltStylesheet object from an XSL document in a string
  • domxml_xslt_stylesheet_file() - Creates a DomXsltStylesheet Object from an XSL document in a file

domxml_xmltree
domxml_xslt_stylesheet_file
DOM XML Funções


Creates a DomXsltStylesheet Object from an XSL document in a file

domxml_xslt_stylesheet_doc
domxml_xslt_stylesheet
DOM XML Funções
PHP Manual

domxml_xslt_stylesheet_file

(PHP 4 >= 4.2.0)

domxml_xslt_stylesheet_file — Creates a DomXsltStylesheet Object from an XSL document in a file

Descrição

DomXsltStylesheet domxml_xslt_stylesheet_file ( string $xsl_file )

Creates a DomXsltStylesheet object from the given XSL file.

Parâmetros

xsl_file

The path to the XSL document, as a string.

Valor Retornado

Returns a new instance of DomXsltStylesheet.

Migrating to PHP 5

Call XSLTProcessor::importStylesheet() with DOMDocument::load($xsl_file) as parameter.

Veja Também

  • DomXsltStylesheet->process
  • domxml_xslt_stylesheet() - Creates a DomXsltStylesheet object from an XSL document in a string
  • domxml_xslt_stylesheet_doc() - Creates a DomXsltStylesheet Object from a DomDocument Object

domxml_xslt_stylesheet_doc
domxml_xslt_stylesheet
DOM XML Funções


Creates a DomXsltStylesheet object from an XSL document in a string

domxml_xslt_stylesheet_file
domxml_xslt_version
DOM XML Funções
PHP Manual

domxml_xslt_stylesheet

(PHP 4 >= 4.2.0)

domxml_xslt_stylesheet — Creates a DomXsltStylesheet object from an XSL document in a string

Descrição

DomXsltStylesheet domxml_xslt_stylesheet ( string $xsl_buf )

Creates a DomXsltStylesheet object from the given XSL buffer.

Parâmetros

xsl_buf

The XSL document, as a string.

Valor Retornado

Returns a new instance of DomXsltStylesheet.

Migrating to PHP 5

Call XSLTProcessor::importStylesheet() with DOMDocument::loadXML($xsl_buf) as parameter.

Veja Também

  • DomXsltStylesheet->process
  • domxml_xslt_stylesheet_file() - Creates a DomXsltStylesheet Object from an XSL document in a file
  • domxml_xslt_stylesheet_doc() - Creates a DomXsltStylesheet Object from a DomDocument Object

domxml_xslt_stylesheet_file
domxml_xslt_version
DOM XML Funções


Gets the XSLT library version

domxml_xslt_stylesheet
xpath_eval_expression
DOM XML Funções
PHP Manual

domxml_xslt_version

(PHP 4 >= 4.2.0)

domxml_xslt_version — Gets the XSLT library version

Descrição

int domxml_xslt_version ( void )

Gets the XSLT library version.

Valor Retornado

Returns the version number of the XSLT library, as an integer.

Exemplos

Exemplo #1 domxml_xslt_version() Example

<?php

echo domxml_xslt_version();

?>

O exemplo acima irá imprimir algo similar a:

10112

Veja Também

  • domxml_version() - Gets the XML library version

domxml_xslt_stylesheet
xpath_eval_expression
DOM XML Funções


Evaluates the XPath Location Path in the given string

domxml_xslt_version
xpath_eval
DOM XML Funções
PHP Manual

xpath_eval_expression

(PHP 4)

xpath_eval_expression — Evaluates the XPath Location Path in the given string

Descrição

XPathObject XPathContext::xpath_eval_expression ( string $expression [, domnode $contextnode ] )
XPathObject xpath_eval_expression ( XPathContext $xpath_context , string $expression [, domnode $contextnode ] )

Exemplo #1 xpath_eval_expression() Example

<?php

include("example.inc");

if (!$dom = domxml_open_mem($xmlstr)) {
    echo "Error while parsing the document\n";
    exit;
}

$xpath = xpath_new_context($dom);
var_dump(xpath_eval_expression($xpath, '/chapter/@language'));

?>

O exemplo acima irá imprimir:

object(XPathObject)(2) {
   ["type"]=>
   int(1)
   ["nodeset"]=>
   array(1) {
     [0]=>
     object(domattribute)(5) {
       ["type"]=>
       int(2)
       ["name"]=>
       string(8) "language"
       ["value"]=>
       string(2) "en"
       [0]=>
       int(7)
       [1]=>
       int(138004256)
     }
  }
}

See also xpath_eval().

domxml_xslt_version
xpath_eval
DOM XML Funções


Avalia o caminho XPath de uma dada string

xpath_eval_expression
xpath_new_context
DOM XML Funções
PHP Manual

xpath_eval

(PHP 4)

xpath_eval — Avalia o caminho XPath de uma dada string

Descrição

XPathObject XPathContext::xpath_eval ( string $xpath_expression [, domnode $contextnode ] )
XPathObject xpath_eval ( XPathContext $xpath_context , string $xpath_expression [, domnode $contextnode ] )

O opcional contextnode pode ser especificado por relativas XPath queries.

Veja também xpath_new_context().

xpath_eval_expression
xpath_new_context
DOM XML Funções


Cria um novo contexto xpath

xpath_eval
xpath_register_ns_auto
DOM XML Funções
PHP Manual

xpath_new_context

(PHP 4)

xpath_new_context — Cria um novo contexto xpath

Descrição

XPathContext xpath_new_context ( domdocument $dom_document )

Crina um novo contexto xpath.

Veja Também

  • xpath_eval() - Avalia o caminho XPath de uma dada string

xpath_eval
xpath_register_ns_auto
DOM XML Funções


Registra o dado namespace no contexto XPath passado

xpath_new_context
xpath_register_ns
DOM XML Funções
PHP Manual

xpath_register_ns_auto

(PHP 4 >= 4.3.0)

xpath_register_ns_auto — Registra o dado namespace no contexto XPath passado

Descrição

bool xpath_register_ns_auto ( XPathContext $xpath_context [, object $context_node ] )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • xpath_register_ns() - Registra o dado namespace no contexto XPath passado

xpath_new_context
xpath_register_ns
DOM XML Funções


Registra o dado namespace no contexto XPath passado

xpath_register_ns_auto
xptr_eval
DOM XML Funções
PHP Manual

xpath_register_ns

(PHP 4 >= 4.2.0)

xpath_register_ns — Registra o dado namespace no contexto XPath passado

Descrição

bool xpath_register_ns ( XPathContext $xpath_context , string $prefix , string $uri )
Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • xpath_register_ns_auto() - Registra o dado namespace no contexto XPath passado

xpath_register_ns_auto
xptr_eval
DOM XML Funções


Avalia o caminho XPtr de uma dada string

xpath_register_ns
xptr_new_context
DOM XML Funções
PHP Manual

xptr_eval

(PHP 4)

xptr_eval — Avalia o caminho XPtr de uma dada string

Descrição

int XPathContext::xptr_eval ( string $eval_str [, domnode $contextnode ] )
int xptr_eval ( XPathContext $xpath_context , string $eval_str [, domnode $contextnode ] )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xpath_register_ns
xptr_new_context
DOM XML Funções


Cria um novo contexto XPath

xptr_eval
libxml
DOM XML Funções
PHP Manual

xptr_new_context

(PHP 4)

xptr_new_context — Cria um novo contexto XPath

Descrição

XPathContext xptr_new_context ( void )

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

xptr_eval
libxml
DOM XML Funções


libxml

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • libXMLError — The libXMLError class
  • Funções da libxml
    • libxml_clear_errors — Limpa o buffer de erro da libxml
    • libxml_disable_entity_loader — Disable the ability to load external entities
    • libxml_get_errors — Retorna um array de erros
    • libxml_get_last_error — Retorna o último erro da libxml
    • libxml_set_streams_context — Define os contextos streams para o próximo documento carregado ou escrito na libxml
    • libxml_use_internal_errors — Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar
xptr_new_context
Introdução
Manipulação de XML


Introdução

Estas funções/constantes estão disponíveis apartir do 5.1.0, e as seguintes extenções do núcleo dependem desta extenção libxml: DOM, libxml, SimpleXML, SOAP, WDDX, XSL, XSLT, XML, XMLReader, XMLRPC e XMLWriter.

libxml
Instalação/Configuração
libxml


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
libxml


Dependências

Esta extensão requer » libxml >= 2.6.0.

Instalação/Configuração
Instalação
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

LIBXML_COMPACT (integer)
Ativa a otimização de alocação de pequenos nodes. Isto pode tornar rápida sua aplicação sem necessitar modificar o código.

Nota:

Somente disponível na Libxml >= 2.6.21

LIBXML_DTDATTR (integer)
Padrão de atributos DTD
LIBXML_DTDLOAD (integer)
Carrega o subset externo
LIBXML_DTDVALID (integer)
Valida com o DTD
LIBXML_NOBLANKS (integer)
Remove nodes em branco
LIBXML_NOCDATA (integer)
Fundi CDATA com text nodes
LIBXML_NOEMPTYTAG (integer)
Expande tags vazias (e.g. <br/> para <br></br>)

Nota:

Esta opção está somente disponível atualmente nas funções DOMDocument::save e DOMDocument::saveXML.

LIBXML_NOENT (integer)
Substitue entidades
LIBXML_NOERROR (integer)
Suprime mensagens de erro
LIBXML_NONET (integer)
Desabilita o acesso a rede quando carregando documentos
LIBXML_NOWARNING (integer)
Suprime avisos
LIBXML_NOXMLDECL (integer)
Retira a declaração do XML quando salva o documento

Nota:

Somente disponível na Libxml >= 2.6.21

LIBXML_NSCLEAN (integer)
Remove declarações redundantes de namespaces
LIBXML_XINCLUDE (integer)
Implementa substituições XInclude
LIBXML_ERR_ERROR (integer)
A recoverable error
LIBXML_ERR_FATAL (integer)
Um erro fatal
LIBXML_ERR_NONE (integer)
Sem erros
LIBXML_ERR_WARNING (integer)
Um simples aviso
LIBXML_VERSION (integer)
Versão da libxml como 20605 ou 20617
LIBXML_DOTTED_VERSION (string)
Versão da libxml como 2.6.5 ou 2.6.17
Tipos Resource
libXMLError
libxml


The libXMLError class

Introdução

Contains various information about errors thrown by libxml. The error codes are described within the official » xmlError API documentation.

Sinopse da classe

libXMLError {
/* Properties */
public int $level ;
public int $code ;
public int $column ;
public string $message ;
public string $file ;
public int $line ;
}

Propriedades

level

the severity of the error (one of the following constants: LIBXML_ERR_WARNING, LIBXML_ERR_ERROR or LIBXML_ERR_FATAL)

code

The error's code.

column

The column where the error occurred.

Nota:

This property isn't entirely implemented in libxml and therefore 0 is often returned.

message

The error message, if any.

file

The filename, or empty if the XML was loaded from a string.

line

The line where the error occurred.

Constantes pré-definidas
Funções da libxml
libxml


libXMLError
libxml_clear_errors
libxml
PHP Manual

Funções da libxml

Classes pré-definidas

LibXMLError

Propriedades

  • code - the error's code

  • column - a coluna onde o erro ocorreu. Note que esta propriedade não está inteiramente implementada na libxml, conseqüentemente 0 é retornado.

  • file - o nome do arquivo, ou vazio se o XML foi carregado de uma string

  • level - a variedade de erros (uma das seguintes constantes: LIBXML_ERR_WARNING, LIBXML_ERR_ERROR ou LIBXML_ERR_FATAL)

  • line - a linha onde o erro ocorreu

  • message - a mensagem de erro

Índice

  • libxml_clear_errors — Limpa o buffer de erro da libxml
  • libxml_disable_entity_loader — Disable the ability to load external entities
  • libxml_get_errors — Retorna um array de erros
  • libxml_get_last_error — Retorna o último erro da libxml
  • libxml_set_streams_context — Define os contextos streams para o próximo documento carregado ou escrito na libxml
  • libxml_use_internal_errors — Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar
libXMLError
libxml_clear_errors
libxml


Limpa o buffer de erro da libxml

Funções da libxml
libxml_disable_entity_loader
Funções da libxml
PHP Manual

libxml_clear_errors

(PHP 5 >= 5.1.0)

libxml_clear_errors — Limpa o buffer de erro da libxml

Descrição

void libxml_clear_errors ( void )

libxml_clear_errors() limpa o buffer de erro da libxml.

Valor Retornado

Não há valor retornado.

Veja Também

  • libxml_get_errors() - Retorna um array de erros
  • libxml_get_last_error() - Retorna o último erro da libxml

Funções da libxml
libxml_disable_entity_loader
Funções da libxml


Disable the ability to load external entities

libxml_clear_errors
libxml_get_errors
Funções da libxml
PHP Manual

libxml_disable_entity_loader

(PHP 5 >= 5.2.11)

libxml_disable_entity_loader — Disable the ability to load external entities

Descrição

bool libxml_disable_entity_loader ([ bool $disable = true ] )

Disable/enable the ability to load external entities.

Parâmetros

disable

Disable (TRUE) or enable (FALSE) libxml extensions (such as DOM, XMLWriter and XMLReader) to load external entities.

Valor Retornado

Returns the previous value.

Veja Também

  • libxml_use_internal_errors() - Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar
  • The LIBXML_NONET constant

libxml_clear_errors
libxml_get_errors
Funções da libxml


Retorna um array de erros

libxml_disable_entity_loader
libxml_get_last_error
Funções da libxml
PHP Manual

libxml_get_errors

(PHP 5 >= 5.1.0)

libxml_get_errors — Retorna um array de erros

Descrição

array libxml_get_errors ( void )

Retorna um array de erros

Valor Retornado

Retorna um array com objetos LibXMLError se há algum erro no buffer, ou um array vazio caso contrário.

Exemplos

Exemplo #1 Um exemplo da libxml_get_errors()

Este exemplo demonstra como fazer uma simples manipulação de erro da libxml.

<?php

libxml_use_internal_errors(true);

$xmlstr = <<< XML
<?xml version='1.0' standalone='yes'?>
<movies>
 <movie>
  <titles>PHP: Behind the Parser</title>
 </movie>
</movies>
XML;

$doc = simplexml_load_string($xmlstr);
$xml = explode("\n", $xmlstr);

if (!$doc) {
    $errors = libxml_get_errors();

    foreach ($errors as $error) {
        echo display_xml_error($error, $xml);
    }

    libxml_clear_errors();
}

function display_xml_error($error, $xml)
{
    $return  = $xml[$error->line - 1] . "\n";
    $return .= str_repeat('-', $error->column) . "^\n";

    switch ($error->level) {
        case LIBXML_ERR_WARNING:
            $return .= "Warning $error->code: ";
            break;
         case LIBXML_ERR_ERROR:
            $return .= "Error $error->code: ";
            break;
        case LIBXML_ERR_FATAL:
            $return .= "Fatal Error $error->code: ";
            break;
    }

    $return .= trim($error->message) .
               "\n  Line: $error->line" .
               "\n  Column: $error->column";

    if ($error->file) {
        $return .= "\n  File: $error->file";
    }

    return "$return\n\n--------------------------------------------\n\n";
}

?>

O exemplo acima irá imprimir:

  <titles>PHP: Behind the Parser</title>
^
Fatal Error 76: Opening and ending tag mismatch: titles line 4 and title
  Line: 4
  Column: 0

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

Veja Também

  • libxml_get_last_error() - Retorna o último erro da libxml
  • libxml_clear_errors() - Limpa o buffer de erro da libxml

libxml_disable_entity_loader
libxml_get_last_error
Funções da libxml


Retorna o último erro da libxml

libxml_get_errors
libxml_set_streams_context
Funções da libxml
PHP Manual

libxml_get_last_error

(PHP 5 >= 5.1.0)

libxml_get_last_error — Retorna o último erro da libxml

Descrição

LibXMLError libxml_get_last_error ( void )

Retorna o último erro da libxml.

Valor Retornado

Retorna um objeto LibXMLError se há algum erro no buffer, FALSE caso contrário.

Veja Também

  • libxml_get_errors() - Retorna um array de erros
  • libxml_clear_errors() - Limpa o buffer de erro da libxml

libxml_get_errors
libxml_set_streams_context
Funções da libxml


Define os contextos streams para o próximo documento carregado ou escrito na libxml

libxml_get_last_error
libxml_use_internal_errors
Funções da libxml
PHP Manual

libxml_set_streams_context

(PHP 5)

libxml_set_streams_context — Define os contextos streams para o próximo documento carregado ou escrito na libxml

Descrição

void libxml_set_streams_context ( resource $streams_context )

Define contextos streams para o próximo documento carregado ou escrito na libxml.

Parâmetros

streams_context

O resource do contexto stream (criado com stream_context_create())

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Um exemplo da libxml_set_streams_context()

<?php

$opts = array(
    'http' => array(
        'user_agent' => 'PHP libxml agent',
    )
);

$context = stream_context_create($opts);
libxml_set_streams_context($context);

// request a file through HTTP
$doc = DOMDocument::load('http://www.example.com/file.xml');

?>

Veja Também

  • stream_context_create() - Create a streams context

libxml_get_last_error
libxml_use_internal_errors
Funções da libxml


Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar

libxml_set_streams_context
qtdom
Funções da libxml
PHP Manual

libxml_use_internal_errors

(PHP 5 >= 5.1.0)

libxml_use_internal_errors — Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar

Descrição

bool libxml_use_internal_errors ([ bool $use_errors ] )

libxml_use_internal_errors() permite desabilitar erros padrão standard da libxml e habilita uso de manuseador de erro.

Parâmetros

use_errors

Habilita manuseamento de erro. O padrão é FALSE.

Valor Retornado

Esta função retorna o valor anterior da use_errors.

Exemplos

Exemplo #1 Um exemplo da libxml_use_internal_errors()

Este exemplo demonstra o uso básico dos erros da libxml e o valor retornado por esta função.

<?php

// enable user error handling
var_dump(libxml_use_internal_errors(true));

$doc = DOMDocument::load('file.xml');

if (!$doc) {
    $errors = libxml_get_errors();
    foreach ($errors as $error) {
        // handle errors here
    }

    libxml_clear_errors();
}

?>

O exemplo acima irá imprimir:

bool(false)

Veja Também

  • libxml_clear_errors() - Limpa o buffer de erro da libxml
  • libxml_get_errors() - Retorna um array de erros

libxml_set_streams_context
qtdom
Funções da libxml


qtdom

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Funções da qtdom
    • qdom_error — Retorna uma string de erro da última operação QDOM ou FALSE se não houver erros
    • qdom_tree — Cria uma nova árvore de uma string XML
libxml_use_internal_errors
Introdução
Manipulação de XML


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

Nota: Esta extensão não está disponível na plataforma Windows.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

qtdom
Instalação/Configuração
qtdom


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
qtdom


Dependências

Você precisa da Qt-library >=2.2.0

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

É necessário compilar o PHP com --with-qtdom para usar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Funções da qtdom
qtdom


Funções da qtdom

Índice

  • qdom_error — Retorna uma string de erro da última operação QDOM ou FALSE se não houver erros
  • qdom_tree — Cria uma nova árvore de uma string XML
Constantes pré-definidas
qdom_error
qtdom


Retorna uma string de erro da última operação QDOM ou FALSE se não houver erros

Funções da qtdom
qdom_tree
Funções da qtdom
PHP Manual

qdom_error

(PHP 4 >= 4.0.5)

qdom_error — Retorna uma string de erro da última operação QDOM ou FALSE se não houver erros

Descrição

string qdom_error ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

Funções da qtdom
qdom_tree
Funções da qtdom


Cria uma nova árvore de uma string XML

qdom_error
SDO
Funções da qtdom
PHP Manual

qdom_tree

(PHP 4 >= 4.0.4)

qdom_tree — Cria uma nova árvore de uma string XML

Descrição

QDomDocument qdom_tree ( string $doc )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Aviso

Esta função não está documentada; somente a lista de argumentos está disponível.

qdom_error
SDO
Funções da qtdom


Service Data Objects

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Limitations
  • Exemplos
    • Basic Usage
    • Setting and Getting Property Values
    • Working with Sequenced Data Objects
    • Reflecting on Service Data Objects
  • SDO Funções
    • SDO_DAS_ChangeSummary::beginLogging — Begin change logging
    • SDO_DAS_ChangeSummary::endLogging — End change logging
    • SDO_DAS_ChangeSummary::getChangeType — Get the type of change made to an SDO_DataObject
    • SDO_DAS_ChangeSummary::getChangedDataObjects — Get the changed data objects from a change summary
    • SDO_DAS_ChangeSummary::getOldContainer — Get the old container for a deleted SDO_DataObject
    • SDO_DAS_ChangeSummary::getOldValues — Get the old values for a given changed SDO_DataObject
    • SDO_DAS_ChangeSummary::isLogging — Test to see whether change logging is switched on
    • SDO_DAS_DataFactory::addPropertyToType — Adds a property to a type
    • SDO_DAS_DataFactory::addType — Add a new type to a model
    • SDO_DAS_DataFactory::getDataFactory — Get a data factory instance
    • SDO_DAS_DataObject::getChangeSummary — Get a data object's change summary
    • SDO_DAS_Setting::getListIndex — Get the list index for a changed many-valued property
    • SDO_DAS_Setting::getPropertyIndex — Get the property index for a changed property
    • SDO_DAS_Setting::getPropertyName — Get the property name for a changed property
    • SDO_DAS_Setting::getValue — Get the old value for the changed property
    • SDO_DAS_Setting::isSet — Test whether a property was set prior to being modified
    • SDO_DataFactory::create — Create an SDO_DataObject
    • SDO_DataObject::clear — Clear an SDO_DataObject's properties
    • SDO_DataObject::createDataObject — Create a child SDO_DataObject
    • SDO_DataObject::getContainer — Get a data object's container
    • SDO_DataObject::getSequence — Get the sequence for a data object
    • SDO_DataObject::getTypeName — Return the name of the type for a data object.
    • SDO_DataObject::getTypeNamespaceURI — Return the namespace URI of the type for a data object.
    • SDO_Exception::getCause — Get the cause of the exception.
    • SDO_List::insert — Insert into a list
    • SDO_Model_Property::getContainingType — Get the SDO_Model_Type which contains this property
    • SDO_Model_Property::getDefault — Get the default value for the property
    • SDO_Model_Property::getName — Get the name of the SDO_Model_Property
    • SDO_Model_Property::getType — Get the SDO_Model_Type of the property
    • SDO_Model_Property::isContainment — Test to see if the property defines a containment relationship
    • SDO_Model_Property::isMany — Test to see if the property is many-valued
    • SDO_Model_ReflectionDataObject::__construct — Construct an SDO_Model_ReflectionDataObject
    • SDO_Model_ReflectionDataObject::export — Get a string describing the SDO_DataObject.
    • SDO_Model_ReflectionDataObject::getContainmentProperty — Get the property which defines the containment relationship to the data object
    • SDO_Model_ReflectionDataObject::getInstanceProperties — Get the instance properties of the SDO_DataObject
    • SDO_Model_ReflectionDataObject::getType — Get the SDO_Model_Type for the SDO_DataObject
    • SDO_Model_Type::getBaseType — Get the base type for this type
    • SDO_Model_Type::getName — Get the name of the type
    • SDO_Model_Type::getNamespaceURI — Get the namespace URI of the type
    • SDO_Model_Type::getProperties — Get the SDO_Model_Property objects defined for the type
    • SDO_Model_Type::getProperty — Get an SDO_Model_Property of the type
    • SDO_Model_Type::isAbstractType — Test to see if this SDO_Model_Type is an abstract data type
    • SDO_Model_Type::isDataType — Test to see if this SDO_Model_Type is a primitive data type
    • SDO_Model_Type::isInstance — Test for an SDO_DataObject being an instance of this SDO_Model_Type
    • SDO_Model_Type::isOpenType — Test to see if this type is an open type
    • SDO_Model_Type::isSequencedType — Test to see if this is a sequenced type
    • SDO_Sequence::getProperty — Return the property for the specified sequence index.
    • SDO_Sequence::insert — Insert into a sequence
    • SDO_Sequence::move — Move an item to another sequence position
qdom_tree
Introdução
Manipulação de XML


Introdução

Service Data Objects (SDOs) enable PHP applications to work with data from different sources (like a database query, an XML file, and a spreadsheet) using a single interface.

Each different kind of data source requires a Data Access Service (DAS) to provide access to the data in the data source. In your PHP application, you use a DAS to create an SDO instance that represents some data in the data source. You can then set and get values in the SDO instance using the standard SDO interface. Finally, you use a DAS to write the modified data back to a data source, typically the same one.

See the list of Data Access Services for details on those currently available. In addition to the provided DASs, SDO also provides interfaces to enable others to be implemented (see the section on SDO Data Access Services Interface for more details).

This extension is derived from concepts taken from the » Service Data Objects specification. It includes a version of the » Apache Tuscany SDO for C++ project.

The Structure of a Service Data Object

A Service Data Object instance is made up of a tree of data objects. The tree is defined by containment relationships between the data objects. For example, a Company data object might consist of a number of Department data objects and therefore the Company would have a containment relationship to the Departments.

An SDO may also have non-containment references between data objects in the tree. For example, one Employee data object might reference another Employee to identify a career mentor.

As well as data objects referencing each other, they can also have primitive properties. For example, the Company data object might have a property called "name" of type string, for holding the name of the company (for example, "Acme").

Each of these properties of a data object - containment relationships, non-containment references, or primitive properties - may be many-valued or single-valued. In the above examples, Departments is many-valued and the Company name is single-valued.

In PHP, each SDO data object is represented as a PHP object. The properties of the data object can be accessed using either object syntax or associative array syntax. We'll see some examples of this later.

SDO
Instalação/Configuração
SDO


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SDO


Dependências

The SDO extension requires PHP 5.1.0 or higher. It also requires the libxml2 library. Normally libxml2 will already be installed, but if not, it can be downloaded from » http://www.xmlsoft.org/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Informações para a instalação desta extensão PECL podem ser encontradas no manual no capitulo intitulado Instalação de extensões PECL. Informações adicionais como novas versões, downloads, arquivos fontes, manutenções, e um Changelog, podem ser obtidos aqui: » http://pecl.php.net/package/sca_sdo.

Nota:

Earlier versions of the SDO extension required a separate shared library for the XML DAS. This is now obsolete and any references to php_sdo_das_xml.dll or sdo_das_xml.so should be removed from your php.ini.

Unix systems

  1. The three SDO components - the SDO core, the XML DAS and the Relational DAS - are packaged together with Service Component Architecture (SCA) into one PECL project, SCA_SDO, so you can download SCA and all three parts of SDO with the command:

    pecl install SCA_SDO

    This command will build the SDO shared library as well as installing the PHP files that make up SCA and the SDO Relational DAS.

    If you want to use the latest beta version, then instead run:

    pecl install SCA_SDO-beta

  2. The pecl command automatically installs the SDO module into your PHP extensions directory. To enable the SDO extension you must add the following line to php.ini:

    extension=sdo.so

    For more information about building PECL packages, consult the PECL installation section of the manual.

Building SDO on Linux

This section describes how to build the SDO core and XML DAS on Linux. You would only need to know how to do this if you wish to build a recent version that you have checked out of SVN.

  1. Change to the main extension directory: cd < wherever your sdo code is >

  2. Run phpize, which will set up the environment to compile SDO.

  3. Next, run ./configure; make; make install. Please note, you may need to login as root to install the extension.

  4. Make sure that the module is loaded by PHP, by adding extension=sdo.so to your php.ini file.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

SDO_DAS_ChangeSummary::NONE=0 (integer)
Represents a change type of 'none'.
SDO_DAS_ChangeSummary::MODIFICATION=1 (integer)
Represents a change type of 'modification'.
SDO_DAS_ChangeSummary::ADDITION=2 (integer)
Represents a change type of 'addition'.
SDO_DAS_ChangeSummary::DELETION=3 (integer)
Represents a change type of 'deletion'.
Tipos Resource
Limitations
SDO


Limitations

Implementation Limitations

The following are limitations in the current SDO implementation:

  1. There is no support for multi-byte character sets. This will be considered, depending on community requirements, in a Unicode-enabled version of PHP.

SDO Limitations

The following SDO 2.0 concepts are not supported in the current PHP implementation. It is not necessarily the case that these will all be added over time. Their inclusion will depend on community requirements.

  1. Bi-directional relationships.

  2. Type and property alias names.

  3. Read-only properties.

  4. The Helper classes defined in SDO 2.0 are not directly implemented. However equivalent function is provided in a more natural way for PHP. For example the function of CopyHelper::copy() is provided by applying the PHP clone keyword to a data object.

Constantes pré-definidas
Exemplos
SDO


Exemplos

Índice

  • Basic Usage
  • Setting and Getting Property Values
  • Working with Sequenced Data Objects
  • Reflecting on Service Data Objects
Limitations
Basic Usage
SDO


Basic Usage

The examples below assume an SDO created with the schema and instance information shown below, using the XML Data Access Service.

The instance document below describes a single company, called 'MegaCorp', which contains a single department, called 'Advanced Technologies'. The Advanced Technologies department contains three employees. The company employeeOfTheMonth is referencing the second employee, 'Jane Doe'.

<?xml version="1.0" encoding="UTF-8" ?>
<company xmlns="companyNS" name="MegaCorp"
  employeeOfTheMonth="E0003">
  <departments name="Advanced Technologies" location="NY" number="123">
    <employees name="John Jones" SN="E0001"/>
    <employees name="Jane Doe" SN="E0003"/>
    <employees name="Al Smith" SN="E0004" manager="true"/>
  </departments>
</company>

The root element of the schema is a company. The company contains departments, and each department contains employees. Each element has a number of attributes to store things like name, serial number, and so on. Finally, the company also has an IDREF attribute which identifies one of the employees as the 'employeeOfTheMonth'.

<xsd:schema
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:sdo="commonj.sdo"
  xmlns:sdoxml="commonj.sdo/xml"
  xmlns:company="companyNS"
  targetNamespace="companyNS">
  <xsd:element name="company" type="company:CompanyType"/>
  <xsd:complexType name="CompanyType">
    <xsd:sequence>
      <xsd:element name="departments" type="company:DepartmentType"
        maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="name" type="xsd:string"/>
    <xsd:attribute name="employeeOfTheMonth" type="xsd:IDREF"
      sdoxml:propertyType="company:EmployeeType"/>
  </xsd:complexType>
  <xsd:complexType name="DepartmentType">
    <xsd:sequence>
      <xsd:element name="employees" type="company:EmployeeType"
        maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="name" type="xsd:string"/>
    <xsd:attribute name="location" type="xsd:string"/>
    <xsd:attribute name="number" type="xsd:int"/>
  </xsd:complexType>
  <xsd:complexType name="EmployeeType">
    <xsd:attribute name="name" type="xsd:string"/>
    <xsd:attribute name="SN" type="xsd:ID"/>
    <xsd:attribute name="manager" type="xsd:boolean"/>
  </xsd:complexType>
</xsd:schema>

The XML Data Access Service maps the schema to an SDO. Attributes such as "name" become primitive properties, the sequence of employees becomes a many-valued containment relationship, and so on. Note that the containment relationships are expressed as one complex type within another, whereas non-containment references are expressed in terms of ID and IDREF, with a special sdoxml:propertyType attribute specifying the type of the non-containment reference.

Exemplos
Setting and Getting Property Values
Exemplos


Setting and Getting Property Values

The following examples assume $company is the root of a tree of data objects created from the schema and instance document shown above.

Exemplo #1 Access via property name

Data object properties can be accessed using the object property access syntax. The following sets the company name to 'Acme'.

<?php
$company->name = 'Acme';
?>

Exemplo #2 Access via property name as array index

We can also access properties using associative array syntax. The simplest form of this uses the property name as the array index. For example, the following sets the company name and gets the employeeOfTheMonth.

<?php
$company['name'] = 'UltraCorp';
$eotm = $company['employeeOfTheMonth'];
?>

Exemplo #3 Data Object iteration

We can iterate over the properties of a data object using foreach. The following iterates over the properties of the employee of the month.

<?php
  $eotm = $company->employeeOfTheMonth;
  foreach ($eotm as $name => $value) {
      echo "$name: $value\n";
  }
?>

which will output:

name: Jane Doe
SN: E0003

The 'manager' property is not output, because it has not been set.

Exemplo #4 Access many-valued property by name

Many-valued data object properties can also be accessed using the object property name syntax. The following gets the list of departments.

<?php
$departments = $company->departments;
?>

Exemplo #5 Many-valued element access

We can access individual elements of many-valued properties using array syntax. The following accesses the first department in the company.

<?php
$ad_tech_dept = $company->departments[0];
?>

Exemplo #6 Many-valued property iteration

Many-valued properties can also be iterated over using foreach. The following iterates over the company's departments.

<?php
  foreach ($company->departments as $department) {
    // ...
  }
?>

Each iteration will assign the next department in the list to the variable $department.

Exemplo #7 Chained property access

We can chain property references on a single line. The following sets and gets the name of the first department.

<?php
  $company->departments[0]->name = 'Emerging Technologies';
  $dept_name = $company->departments[0]->name;
?>

Using the associative array syntax, this is equivalent to

<?php
  $company['departments'][0]['name'] = 'Emerging Technologies';
  $dept_name = $company['departments'][0]['name'];
?>

In either case, the dept_name variable is set to 'Emerging Technologies'.

Exemplo #8 XPath navigation

The associative array index can be an XPath-like expression. Valid expressions are defined by an augmented sub-set of XPath.

Two forms of indexing into many-valued properties are supported. The first is the standard XPath array syntax with the indexing starting at one, the second is an SDO extension to XPath with an index starting at zero. The standard syntax is:

<?php
  $jane_doe = $company["departments[1]/employees[2]"];
?>

and the SDO XPath extension syntax is:

<?php
  $jane_doe = $company["departments.0/employees.1"];
?>

Both these examples get the second employee from the first department.

Exemplo #9 XPath querying

We can use XPath to query and identify parts of a data object based on instance data. The following retrieves the manager from the 'Advanced Technologies' department.

<?php
 $ad_tech_mgr =
  $company["departments[name='Advanced Technologies']/employees[manager=true]"];
?>

Exemplo #10 Creating child data objects

A data object can be a factory for its child data objects. A child data object is automatically part of the data graph. The following add a new employee to the 'Advanced Technologies' department.

<?php
  $ad_tech_dept = $company["departments[name='Advanced Technologies']"];
  $new_hire = $ad_tech_dept->createDataObject('employees');
  $new_hire->name = 'John Johnson';
  $new_hire->SN = 'E0005';
  $new_hire->manager = false;
?>

Exemplo #11 Unset a primitive property

We can use the isset() and unset() functions to test and remove items from the data object.

The following clears the name of the first department.

<?php
  unset($company->departments[0]->name);
?>

Exemplo #12 Unset a data object

unset can also be used to remove a data object from the tree. The following example shows John Jones leaving the company.

<?php
  unset($company->departments[0]->employees[0]);
?>

Exemplo #13 Unset a referenced data object

The following removes the 'employeeOfTheMonth' from the company. If this were a containment relationship then the employee would be removed from the company (probably not a good idea to sack your best employee each month!), but since this is a non-containment reference, the employee being referenced will remain in the department in the company, but will no longer be accessible via the employeeOfTheMonth property.

<?php
  if (isset($company->employeeOfTheMonth)) {
    unset($company->employeeOfTheMonth);
  }
?>

Exemplo #14 Access via property index

Data object properties can be accessed via their property index using array syntax. The property index is the position at which the property's definition appears in the model (in this case the xml schema). We can see from the schema listing above that the company name attribute is the second company property (the SDO interface makes no distinction between XML attributes and elements). The following sets the company name to 'Acme', with the same result as Access via property name

<?php
  $company[1] = 'Acme';
?>

Using the index directly in this way is likely to be fragile. Normally the property name syntax should be preferred, but the property index may be required in special cases.

Basic Usage
Working with Sequenced Data Objects
Exemplos


Working with Sequenced Data Objects

Sequenced data objects are SDOs which can track property ordering across the properties of a data object. They can also contain unstructured text elements (text element which do not belong to any of the SDO's properties). Sequenced data objects are useful for working with XML documents which allow unstructured text (i.e. mixed=true) or if the elements can be interleaved (

<A/><B/><A/>
). This can occur for example when the schema defines maxOccurs>1 on a element which is a complexType with a choice order indicator.

The examples below assume an SDO created with the following schema and instance information, using the XML Data Access Service.

The schema below describes the format of a letter. The letter can optionally contain three properties; date, firstName, and lastName. The schema states mixed="true" which means that unstructured text can be interspersed between the three properties.

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:letter="http://letterSchema"
  targetNamespace="http://letterSchema">
  <xsd:element name="letters" type="letter:FormLetter"/>
  <xsd:complexType name="FormLetter" mixed="true">
    <xsd:sequence>
      <xsd:element name="date" minOccurs="0" type="xsd:string"/>
      <xsd:element name="firstName" minOccurs="0" type="xsd:string"/>
      <xsd:element name="lastName" minOccurs="0" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

The following is an instance letter document. It contains the three letter properties; date, firstName and lastName, and has unstructured text elements for the address and letter body.

<letter:letters xmlns:letter="http://letterSchema">
  <date>March 1, 2005</date>
  Mutual of Omaha
  Wild Kingdom, USA
  Dear
  <firstName>Casy</firstName>
  <lastName>Crocodile</lastName>
  Please buy more shark repellent.
  Your premium is past due.
</letter:letters>

When loaded, the letter data object will have the sequence and property indices shown in the table below:

Sequence Index | Property Index:Name | Value
0 | 0:date | March 1, 2005
1 | - | Mutual of Omaha
2 | - | Wild Kingdom, USA
3 | - | Dear
4 | 1:firstName | Casy
5 | 2:lastName | Crocodile
6 | - | Please buy more shark repellent.
7 | - | Your premium is past due.

To ensure sequence indices are maintained, sequenced data objects should be manipulated through the SDO_Sequence interface. This allows the data object's instance data to be manipulated in terms of the sequence index as opposed to the property index (shown in the table above). The following examples assume the letter instance has been loaded into a data object referenced by the variable $letter.

Exemplo #1 Getting the SDO_Sequence interface

We obtain a data object's sequence using the getSequence() method. The follow gets the sequence for the letter data object.

<?php
  $letter_seq = $letter->getSequence();
?>

All subsequent examples assume that the $letter_seq variable has been assigned the sequence for the letter data object.

Exemplo #2 Get/set sequence values

We can get and set individual values (including unstructured text) using the sequence index. The following sets the firstName to 'Snappy' and gets the last sequence values (the unstructured text, 'Your premium is past due.').

<?php
  $letter_seq[4] = 'Snappy';
  $text = $letter_seq[count($letter_seq) - 1];
?>

Exemplo #3 Sequence iteration

We can iterate through the individual sequence values using foreach. The following runs through the individual values in sequence order.

<?php
foreach ($letter->getSequence() as $value) {
    // ...
}
?>

Exemplo #4 Sequence versus Data Object

Setting values through the data object interface may result in the value not being part of the sequence. A value set through the data object will only be accessible through the sequence if the property was already part of the sequence. The following example sets the lastName through the data object and gets it through the sequence. This is fine because lastName already exists in the sequence. If it had not previously been set, then lastName would be set to 'Smith', but would not be part of the sequence.

<?php
  $letter[2] = 'Smith';
  $last_name = $letter_seq[5];
?>

Exemplo #5 Adding to a sequence

We can add new values to a sequence using the SDO_Sequence::insert() method. The following examples assume that the 'firstName' and 'lastName' properties are initially unset.

<?php
  // Append a firstName value to the sequence
  // value: 'Smith'
  // sequence index: NULL (append)
  // propertyIdentifier: 1 (firtName property index)
  $letter_seq->insert('Smith', NULL, 1);

  // Append a lastName value to the sequence
  // value: 'Jones'
  // sequence index: NULL (append)
  // propertyIdentifier: 'lastName' (lastName property name)
  $letter_seq->insert('Jones', NULL, 'lastName');

  // Append unstructured text
  // value: 'Cancel Subscription.'
  // sequence index: absent (append)
  // propertyIdentifier: absent (unstructured text)
  $letter_seq->insert('Cancel Subscription.');

  // Insert new unstructured text.  Subsequent sequence values
  // are shifted up.
  // value: 'Care of:'
  // sequence index: 1 (insert as second element)
  // propertyIdentifier: absent (unstructured text)
  $letter_seq->insert('Care of:', 1);
?>

Exemplo #6 Removing from a sequence

We can use the isset() and unset() functions to test and remove items from the sequence (Note: unset() currently leaves the values in the data object, but this behaviour is likely to change to also remove the data from the data object). A sequence behaves like a contiguous list; therefore, removing items from the middle will shift entries at higher indices down. The following example tests to see if the first sequence element is set and unsets it if is.

<?php
  if (isset($letter_seq[0])) {
    unset($letter_seq[0]);
  }
?>

Setting and Getting Property Values
Reflecting on Service Data Objects
Exemplos


Reflecting on Service Data Objects

SDOs have a knowledge of the structure they have been created to represent (the model). For example, a Company SDO created using the Company XML schema above would only be permitted to contain DepartmentType data objects which in turn could only contain EmployeeType data objects.

Sometimes it is useful to be able to access this model information at runtime. For example, this could be used to automatically generate a user interface for populating a data object. The model information is accessed using reflection.

Exemplo #1 Reflecting on a Data Object

The following example shows how we can reflect on an empty Employee data object.

<?php
  // Create the employee data object (e.g. from an XML Data Access Service)
  $employee = ...;
  $reflection = new SDO_Model_ReflectionDataObject($employee);
  print($reflection);
?>

O exemplo acima irá imprimir:

object(SDO_Model_ReflectionDataObject)#4 { - ROOT OBJECT - Type {
companyNS:EmployeeType[3] { commonj.sdo:String $name;
commonj.sdo:String $SN; commonj.sdo:Boolean $manager; } }

Using print on the SDO_Model_ReflectionDataObject writes out the data object's model. We can see from the output how the type companyNS:EmployeeType has three properties and we can see the names of the properties along with their types. Note, the primitive types are listed as SDO types (e.g. commonj.sdo namespace, String type). It is worth noting that this is the SDO model and when these are surfaced to an application they can be treated as the PHP equivalent types (e.g. string and boolean).

Exemplo #2 Accessing the type information

We can query the type information of a data object using reflection. The following example checks the type corresponds to a data object rather than a primitive and then iterates through the properties of the type, writing out the name of each property ($type and $property are SDO_Model_Type and SDO_Model_Property objects, respectively).

<?php
    // Create the employee data object (e.g. from an XML Data Access Service)
    $employee = ...;
    $reflection = new SDO_Model_ReflectionDataObject($employee);
    $type = $reflection->getType();
    if (! $type->isDataType()) {
        foreach ($type->getProperties() as $property) {
            print $property->getName() . "\n";
        }
    }
?>

O exemplo acima irá imprimir:

name
SN
manager

Working with Sequenced Data Objects
SDO Funções
Exemplos


SDO Funções

Data Access Services

The table below lists the currently provided SDO Data Access Services:

DAS Name | Description
SDO_DAS_XML | An XML Data Access Service supporting reading/writing SDOs as XML documents.
SDO_DAS_Relational | A PDO-based Data Access Service supporting reading/writing SDO to relational databases. Implements an optimistic concurrency policy for updates.

Classes pré-definidas

SDO consists of three sets of interfaces. The first set covers those interfaces for use by typical SDO applications. These are identified by the package prefix 'SDO_'. The second set is those used to reflect on, and work with, the model of a data object. These are identified by the package prefix 'SDO_Model_'. Finally, the third set are those use by Data Access Service implementations and are identified by the package prefix 'SDO_DAS_'. The majority of SDO users will not need to use or understand the 'SDO_Model_' and 'SDO_DAS_' interfaces.

SDO Application Programmer Interface

SDO_DataObject

The main interface through which data objects are manipulated. In addition to the methods below, SDO_DataObject extends the ArrayAccess, SDO_PropertyAccess (defines __get() / __set() methods for property access overloading), Iterator, and Countable interfaces.

Métodos

  • getSequence - get the sequence for the data object

  • createDataObject - create a child data object

  • clear - unset the properties of a data object

  • getContainer - get the container (also known as 'parent') of this data object

  • getTypeName - get the name of the type for this data object

  • getTypeNamespaceURI - get the namespace URI of the type for this data object

SDO_Sequence

The interface through which sequenced data objects can be accessed to preserve ordering across a data object's properties and to allow unstructured text. SDO_Sequence preserves contiguous indices and therefore inserting or removing elements may shift other elements up or down. In addition to the methods below, SDO_Sequence extends the ArrayAccess, Iterator and Countable interface.

Métodos

  • getProperty - get the property for a given sequence index

  • move - move an element from one property index to another

  • insert - insert a new value into the sequence

SDO_List

The interface through which many-valued properties are manipulated. In addition to the method defined below, SDO_List extends ArrayAccess, Iterator and Countable. SDO_List preserves contiguous indices and therefore inserting or removing elements may shift other elements up or down.

Métodos

  • insert - insert a new value into the list

SDO_DataFactory

The interface through which data objects can be created. A Data Access Service is responsible for populating the model (i.e. configuring the data factory with the type and structure information for the data objects it can create.) for the factory and can then optionally return an instance of, or implement, the SDO_DataFactory interface.

Métodos

  • create - create a new data object

SDO_Exception

An SDO_Exception is thrown when the caller's request cannot be completed. The subclasses of SDO_Exception are:

  • SDO_PropertyNotSetException - the property specified exists but has not been set or does not have a default value

  • SDO_PropertyNotFoundException - the property specified is not part of the data object's type

  • SDO_TypeNotFoundException - the specified namespace URI or type name is unknown

  • SDO_InvalidConversionException - conversion between the types of the assignment is not possible

  • SDO_IndexOutOfBoundsException - the numeric index into a data object, sequence or list is not in the valid range

  • SDO_UnsupportedOperationException - the request cannot be completed because it is not allowed, for example an attempt to set a read-only property.

Métodos

One method is added to those inherited from the built in Exception class:

  • getCause - get the cause of this SDO_Exception

SDO Reflection Application Programmer Interfaces

SDO_Model_ReflectionDataObject

The main interface used to reflect on a data object instance to obtain its model type and property information. It is designed to follow the reflection pattern introduced in PHP 5.

Construtor

  • __construct - construct a new SDO_Model_ReflectionDataObject.

Métodos

  • export - get a string describing the data object.

  • getType - get the SDO_Model_Type for the data object.

  • getInstanceProperties - get the instance properties of the data object.

  • getContainmentProperty - get the property which defines the containment relationship to the data object.

SDO_Model_Type

The interface through which a data object's type information can be retrieved. This interface can be used to find out the type name and namespace URI of the type, whether the type allow open content, and so on.

Métodos

  • getName - get the name of the type.

  • getNamespaceURI - get the namespace URI of the type.

  • isInstance - test for a data object being an instance of the type.

  • getProperties - get the properties of the type.

  • getProperty - get a property of the type.

  • isDataType - test to see if this type is a primitive scalar type.

  • isSequencedType - test to see if this is a sequenced type.

  • isOpenType - test to see if this is an open type.

  • isAbstractType - test to see if this is an abstract type.

  • getBaseType - get the base type of this type (if one exists).

SDO_Model_Property

The interface through which a data object's property information can be retrieved. This interface can be used to find out the type of a property, whether a property has a default value, whether the property is contained or reference by its parent, its cardinality, and so on.

Métodos

  • getName - get the name of the property.

  • getType - get the type of the property.

  • isMany - test to see if the property is many-valued.

  • isContainment - test to see if the property describes a containment relationship.

  • getContainingType - get the type which contains this property.

  • getDefault - get the default value for a property.

SDO Data Access Service Developer Interfaces

SDO_DAS_DataObject

The interface through which a Data Access Service can access a data object's SDO_DAS_ChangeSummary. The change summary is used by the Data Access Service to check for conflicts when applying changes back to a data source.

Métodos

  • getChangeSummary - get the change summary for a data object

SDO_DAS_ChangeSummary

The interface through which the change history of a data object is accessed. The change summary holds information for any modifications on a data object which occurred since logging was activated. In the case of deletions and modifications, the old values are also held in the change summary.

If logging is no longer active then the change summary only holds changes made up to the point when logging was deactivated. Reactivating logging clears the change summary. This is useful when a set of changes have been written out by a DAS and the data object is to be reused.

Métodos

  • beginLogging - begin logging changes made to a data object

  • endLogging - end logging changes made to a data object

  • isLogging - test to see if change logging is on

  • getChangedDataObjects - get a list of the data objects which have been changed

  • getChangeType - get the type of change which has been made to a data object

  • getOldValues - get a list of old values for a data object

  • getOldContainer - get the old container data object for a deleted data object

SDO_DAS_Setting

The interface through which the old value for a property is accessed. A list of settings is returned by the change summary method getOldValues() .

Métodos

  • getPropertyIndex - get the property index for the changed property

  • getPropertyName - get the property name for the changed property

  • getValue - get the old value for the changed property

  • getListIndex - get the list index for the old value if it was part of a many-valued property

  • isSet - test to see if the property was set prior to being modified

SDO_DAS_DataFactory

The interface for constructing the model for an SDO_DataObject. The SDO_DAS_DataFactory is an abstract class providing a static method which returns a concrete data factory implementation. The implementation is used by Data Access Services to create an SDO model from their model. For example, a Relational Data Access Service might create and populate an SDO_DAS_DataFactory model based on a schema for a relational database.

Métodos

  • getDataFactory - static methods for getting a concrete data factory instance

  • addType - add a new type to the SDO model

  • addPropertyToType - add a new property to a type definition in the SDO model

Índice

  • SDO_DAS_ChangeSummary::beginLogging — Begin change logging
  • SDO_DAS_ChangeSummary::endLogging — End change logging
  • SDO_DAS_ChangeSummary::getChangeType — Get the type of change made to an SDO_DataObject
  • SDO_DAS_ChangeSummary::getChangedDataObjects — Get the changed data objects from a change summary
  • SDO_DAS_ChangeSummary::getOldContainer — Get the old container for a deleted SDO_DataObject
  • SDO_DAS_ChangeSummary::getOldValues — Get the old values for a given changed SDO_DataObject
  • SDO_DAS_ChangeSummary::isLogging — Test to see whether change logging is switched on
  • SDO_DAS_DataFactory::addPropertyToType — Adds a property to a type
  • SDO_DAS_DataFactory::addType — Add a new type to a model
  • SDO_DAS_DataFactory::getDataFactory — Get a data factory instance
  • SDO_DAS_DataObject::getChangeSummary — Get a data object's change summary
  • SDO_DAS_Setting::getListIndex — Get the list index for a changed many-valued property
  • SDO_DAS_Setting::getPropertyIndex — Get the property index for a changed property
  • SDO_DAS_Setting::getPropertyName — Get the property name for a changed property
  • SDO_DAS_Setting::getValue — Get the old value for the changed property
  • SDO_DAS_Setting::isSet — Test whether a property was set prior to being modified
  • SDO_DataFactory::create — Create an SDO_DataObject
  • SDO_DataObject::clear — Clear an SDO_DataObject's properties
  • SDO_DataObject::createDataObject — Create a child SDO_DataObject
  • SDO_DataObject::getContainer — Get a data object's container
  • SDO_DataObject::getSequence — Get the sequence for a data object
  • SDO_DataObject::getTypeName — Return the name of the type for a data object.
  • SDO_DataObject::getTypeNamespaceURI — Return the namespace URI of the type for a data object.
  • SDO_Exception::getCause — Get the cause of the exception.
  • SDO_List::insert — Insert into a list
  • SDO_Model_Property::getContainingType — Get the SDO_Model_Type which contains this property
  • SDO_Model_Property::getDefault — Get the default value for the property
  • SDO_Model_Property::getName — Get the name of the SDO_Model_Property
  • SDO_Model_Property::getType — Get the SDO_Model_Type of the property
  • SDO_Model_Property::isContainment — Test to see if the property defines a containment relationship
  • SDO_Model_Property::isMany — Test to see if the property is many-valued
  • SDO_Model_ReflectionDataObject::__construct — Construct an SDO_Model_ReflectionDataObject
  • SDO_Model_ReflectionDataObject::export — Get a string describing the SDO_DataObject.
  • SDO_Model_ReflectionDataObject::getContainmentProperty — Get the property which defines the containment relationship to the data object
  • SDO_Model_ReflectionDataObject::getInstanceProperties — Get the instance properties of the SDO_DataObject
  • SDO_Model_ReflectionDataObject::getType — Get the SDO_Model_Type for the SDO_DataObject
  • SDO_Model_Type::getBaseType — Get the base type for this type
  • SDO_Model_Type::getName — Get the name of the type
  • SDO_Model_Type::getNamespaceURI — Get the namespace URI of the type
  • SDO_Model_Type::getProperties — Get the SDO_Model_Property objects defined for the type
  • SDO_Model_Type::getProperty — Get an SDO_Model_Property of the type
  • SDO_Model_Type::isAbstractType — Test to see if this SDO_Model_Type is an abstract data type
  • SDO_Model_Type::isDataType — Test to see if this SDO_Model_Type is a primitive data type
  • SDO_Model_Type::isInstance — Test for an SDO_DataObject being an instance of this SDO_Model_Type
  • SDO_Model_Type::isOpenType — Test to see if this type is an open type
  • SDO_Model_Type::isSequencedType — Test to see if this is a sequenced type
  • SDO_Sequence::getProperty — Return the property for the specified sequence index.
  • SDO_Sequence::insert — Insert into a sequence
  • SDO_Sequence::move — Move an item to another sequence position
Reflecting on Service Data Objects
SDO_DAS_ChangeSummary::beginLogging
SDO


Begin change logging

SDO Funções
SDO_DAS_ChangeSummary::endLogging
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::beginLogging

(^)

SDO_DAS_ChangeSummary::beginLogging — Begin change logging

Descrição

void SDO_DAS_ChangeSummary::beginLogging ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Begin logging changes made to the SDO_DataObject.

Parâmetros

None.

Valor Retornado

None.

SDO Funções
SDO_DAS_ChangeSummary::endLogging
SDO Funções


End change logging

SDO_DAS_ChangeSummary::beginLogging
SDO_DAS_ChangeSummary::getChangeType
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::endLogging

(^)

SDO_DAS_ChangeSummary::endLogging — End change logging

Descrição

void SDO_DAS_ChangeSummary::endLogging ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

End logging changes made to an SDO_DataObject.

Parâmetros

None.

Valor Retornado

None.

SDO_DAS_ChangeSummary::beginLogging
SDO_DAS_ChangeSummary::getChangeType
SDO Funções


Get the type of change made to an SDO_DataObject

SDO_DAS_ChangeSummary::endLogging
SDO_DAS_ChangeSummary::getChangedDataObjects
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::getChangeType

(^)

SDO_DAS_ChangeSummary::getChangeType — Get the type of change made to an SDO_DataObject

Descrição

int SDO_DAS_ChangeSummary::getChangeType ( SDO_DataObject $dataObject )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the type of change which has been made to the supplied SDO_DataObject.

Parâmetros

dataObject

The SDO_DataObject which has been changed.

Valor Retornado

The type of change which has been made. The change type is expressed as an enumeration and will be one of the following four values:

  • SDO_DAS_ChangeSummary::NONE

  • SDO_DAS_ChangeSummary::MODIFICATION

  • SDO_DAS_ChangeSummary::ADDITION

  • SDO_DAS_ChangeSummary::DELETION

SDO_DAS_ChangeSummary::endLogging
SDO_DAS_ChangeSummary::getChangedDataObjects
SDO Funções


Get the changed data objects from a change summary

SDO_DAS_ChangeSummary::getChangeType
SDO_DAS_ChangeSummary::getOldContainer
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::getChangedDataObjects

(^)

SDO_DAS_ChangeSummary::getChangedDataObjects — Get the changed data objects from a change summary

Descrição

SDO_List SDO_DAS_ChangeSummary::getChangedDataObjects ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get an SDO_List of the SDO_DataObjects which have been changed. These data objects can then be used to identify the types of change made to each, along with the old values.

Parâmetros

None.

Valor Retornado

Returns an SDO_List of SDO_DataObjects.

SDO_DAS_ChangeSummary::getChangeType
SDO_DAS_ChangeSummary::getOldContainer
SDO Funções


Get the old container for a deleted SDO_DataObject

SDO_DAS_ChangeSummary::getChangedDataObjects
SDO_DAS_ChangeSummary::getOldValues
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::getOldContainer

(^)

SDO_DAS_ChangeSummary::getOldContainer — Get the old container for a deleted SDO_DataObject

Descrição

SDO_DataObject SDO_DAS_ChangeSummary::getOldContainer ( SDO_DataObject $data_object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the old container (SDO_DataObject) for a deleted SDO_DataObject.

Parâmetros

data_object

The SDO_DataObject which has been deleted and whose container we wish to identify.

Valor Retornado

The old containing data object of the deleted SDO_DataObject.

SDO_DAS_ChangeSummary::getChangedDataObjects
SDO_DAS_ChangeSummary::getOldValues
SDO Funções


Get the old values for a given changed SDO_DataObject

SDO_DAS_ChangeSummary::getOldContainer
SDO_DAS_ChangeSummary::isLogging
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::getOldValues

(^)

SDO_DAS_ChangeSummary::getOldValues — Get the old values for a given changed SDO_DataObject

Descrição

SDO_List SDO_DAS_ChangeSummary::getOldValues ( SDO_DataObject $data_object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get a list of the old values for a given changed SDO_DataObject. Returns a list of SDO_DAS_Settings describing the old values for the changed properties of the SDO_DataObject.

Parâmetros

data_object

The data object which has been changed.

Valor Retornado

A list of SDO_DAS_Settings describing the old values for the changed properties of the SDO_DataObject. If the change type is SDO_DAS_ChangeSummary::ADDITION, this list is empty.

SDO_DAS_ChangeSummary::getOldContainer
SDO_DAS_ChangeSummary::isLogging
SDO Funções


Test to see whether change logging is switched on

SDO_DAS_ChangeSummary::getOldValues
SDO_DAS_DataFactory::addPropertyToType
SDO Funções
PHP Manual

SDO_DAS_ChangeSummary::isLogging

(^)

SDO_DAS_ChangeSummary::isLogging — Test to see whether change logging is switched on

Descrição

bool SDO_DAS_ChangeSummary::isLogging ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see whether change logging is switched on.

Parâmetros

None.

Valor Retornado

Returns TRUE if change logging is on, otherwise returns FALSE.

SDO_DAS_ChangeSummary::getOldValues
SDO_DAS_DataFactory::addPropertyToType
SDO Funções


Adds a property to a type

SDO_DAS_ChangeSummary::isLogging
SDO_DAS_DataFactory::addType
SDO Funções
PHP Manual

SDO_DAS_DataFactory::addPropertyToType

(^)

SDO_DAS_DataFactory::addPropertyToType — Adds a property to a type

Descrição

void SDO_DAS_DataFactory::addPropertyToType ( string $parent_type_namespace_uri , string $parent_type_name , string $property_name , string $type_namespace_uri , string $type_name [, array $options ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Adds a property to a type. The type must already be known to the SDO_DAS_DataFactory (i.e. have been added using addType()). The property becomes a property of the type. This is how the graph model for the structure of an SDO_DataObject is built.

Parâmetros

parent_type_namespace_uri

The namespace URI for the parent type.

parent_type_name

The type name for the parent type.

property_name

The name by which the property will be known in the parent type.

type_namespace_uri

The namespace URI for the type of the property.

type_name

The type name for the type of the property

options

This array holds one or more key=>value pairs to set attribute values for the property. The optional keywords are:

many

A flag to say whether the property is many-valued. A value of 'true' adds the property as a many-valued property (default is 'false').

readOnly

A flag to say whether the property is read-only. A value of 'true' means the property value cannot be modified through the SDO application APIs (default is 'false').

containment

A flag to say whether the property is contained by the parent. A value of 'true' means the property is contained by the parent. A value of 'false' results in a non-containment reference (default is 'true'). This flag is only interpreted when adding properties which are data object types, otherwise it is ignored.

default

A default value for the property. Omitting this key means that the property does not have a default value. A property can only have a default value if it is a single-valued data type (primitive).

Valor Retornado

None.

Histórico

Versão | Descrição
0.5.2 | Optional parameters many, readOnly, and containment deprecated in favour of the options array.

Exemplos

Exemplo #1 A SDO_DAS_DataFactory::addPropertyToType() example

The following adds an 'addressline' property to a Person type. The person type is identified by its namespace, 'PersonNS', and type name, 'PersonType'. The type of the 'addressline' property is a many-valued SDO data type (primitive) with namespace 'commonj.sdo' and type name 'String'.

<?php
  $df->addPropertyToType('PersonNS', 'PersonType',
    'addressline', 'commonj.sdo', 'String', array('many'=>true));
?>

SDO_DAS_ChangeSummary::isLogging
SDO_DAS_DataFactory::addType
SDO Funções


Add a new type to a model

SDO_DAS_DataFactory::addPropertyToType
SDO_DAS_DataFactory::getDataFactory
SDO Funções
PHP Manual

SDO_DAS_DataFactory::addType

(^)

SDO_DAS_DataFactory::addType — Add a new type to a model

Descrição

void SDO_DAS_DataFactory::addType ( string $type_namespace_uri , string $type_name [, array $options ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Add a new type to the SDO_DAS_DataFactory, defined by its namespace and type name. The type becomes part of the model of data objects that the data factory can create.

Parâmetros

type_namespace_uri

The namespace of the type.

type_name

The name of the type.

options

This array holds one or more key=>value pairs to set attribute values for the type. The optional keywords are:

open

A flag to say whether the type is open. An SDO_DataObject whose type is open can have properties added to them which are not described by the type. This capability is used to support working with XML documents whose schema support open content such as that described by an <xsd:any> element. The default value is 'false'.

sequenced

A flag to say whether the type is sequenced. Sequenced types can have the ordering across properties preserved and can contain unstructured text. The default value is 'false'. For more information on sequenced types see the section on Working with Sequenced Data Objects.

basetype

If specified, an array of namespace URI and type name strings for the type from which this type is derived. An example of the use of base types is when a type derived in an XML schema inherits from another type by using <extension base="...">.

Valor Retornado

None.

Exemplos

Exemplo #1 A SDO_DAS_DataFactory::addType() example

The following adds a new data object type of 'CompanyType' where that type belongs to the namespace 'CompanyNS'.

<?php
  $df->addType('CompanyNS', 'CompanyType');
?>

SDO_DAS_DataFactory::addPropertyToType
SDO_DAS_DataFactory::getDataFactory
SDO Funções


Get a data factory instance

SDO_DAS_DataFactory::addType
SDO_DAS_DataObject::getChangeSummary
SDO Funções
PHP Manual

SDO_DAS_DataFactory::getDataFactory

(^)

SDO_DAS_DataFactory::getDataFactory — Get a data factory instance

Descrição

SDO_DAS_DataFactory SDO_DAS_DataFactory::getDataFactory ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Static method to get an instance of an SDO_DAS_DataFactory. This instance is initially only configured with the basic SDO types. A Data Access Service is responsible for populating the data factory model and then allowing PHP applications to create SDOs based on the model through the SDO_DataFactory interface. PHP applications should always obtain a data factory from a configured Data Access Service, not through this interface.

Parâmetros

None.

Valor Retornado

Returns an SDO_DAS_DataFactory.

SDO_DAS_DataFactory::addType
SDO_DAS_DataObject::getChangeSummary
SDO Funções


Get a data object's change summary

SDO_DAS_DataFactory::getDataFactory
SDO_DAS_Setting::getListIndex
SDO Funções
PHP Manual

SDO_DAS_DataObject::getChangeSummary

(^)

SDO_DAS_DataObject::getChangeSummary — Get a data object's change summary

Descrição

SDO_DAS_ChangeSummary SDO_DAS_DataObject::getChangeSummary ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the SDO_DAS_ChangeSummary for an SDO_DAS_DataObject, or NULL if it does not have one.

Parâmetros

None.

Valor Retornado

Returns the SDO_DAS_ChangeSummary for an SDO_DAS_DataObject, or NULL if it does not have one.

SDO_DAS_DataFactory::getDataFactory
SDO_DAS_Setting::getListIndex
SDO Funções


Get the list index for a changed many-valued property

SDO_DAS_DataObject::getChangeSummary
SDO_DAS_Setting::getPropertyIndex
SDO Funções
PHP Manual

SDO_DAS_Setting::getListIndex

(^)

SDO_DAS_Setting::getListIndex — Get the list index for a changed many-valued property

Descrição

int SDO_DAS_Setting::getListIndex ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the list index for a modification made to an element of a many-valued property. For example, if we modified the third element of a many-valued property we could obtain an SDO_DAS_Setting from the change summary corresponding to that modification. A call to getListIndex() on that setting would return the value 2 (lists are indexed from zero).

Parâmetros

None.

Valor Retornado

The list index for the element of the many-valued property which has been changed.

SDO_DAS_DataObject::getChangeSummary
SDO_DAS_Setting::getPropertyIndex
SDO Funções


Get the property index for a changed property

SDO_DAS_Setting::getListIndex
SDO_DAS_Setting::getPropertyName
SDO Funções
PHP Manual

SDO_DAS_Setting::getPropertyIndex

(^)

SDO_DAS_Setting::getPropertyIndex — Get the property index for a changed property

Descrição

int SDO_DAS_Setting::getPropertyIndex ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the property index for the changed property. This index identifies the property which was modified in data object.

Parâmetros

None.

Valor Retornado

The property index for a changed property.

SDO_DAS_Setting::getListIndex
SDO_DAS_Setting::getPropertyName
SDO Funções


Get the property name for a changed property

SDO_DAS_Setting::getPropertyIndex
SDO_DAS_Setting::getValue
SDO Funções
PHP Manual

SDO_DAS_Setting::getPropertyName

(^)

SDO_DAS_Setting::getPropertyName — Get the property name for a changed property

Descrição

string SDO_DAS_Setting::getPropertyName ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the property name for the changed property. This name identifies the property which was modified in data object.

Parâmetros

None.

Valor Retornado

The property name for a changed property.

SDO_DAS_Setting::getPropertyIndex
SDO_DAS_Setting::getValue
SDO Funções


Get the old value for the changed property

SDO_DAS_Setting::getPropertyName
SDO_DAS_Setting::isSet
SDO Funções
PHP Manual

SDO_DAS_Setting::getValue

(^)

SDO_DAS_Setting::getValue — Get the old value for the changed property

Descrição

mixed SDO_DAS_Setting::getValue ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the old value for the changed property. This can be used by a Data Access Service when writing updates to a data source. The DAS uses the old value to detect conflicts by comparing it with the current value in the data source. If they do not match, then the data source has been updated since the data object was originally populated, and therefore writing any new updates risks compromising the integrity of the data.

Parâmetros

None.

Valor Retornado

Returns the old value of the changed property.

SDO_DAS_Setting::getPropertyName
SDO_DAS_Setting::isSet
SDO Funções


Test whether a property was set prior to being modified

SDO_DAS_Setting::getValue
SDO_DataFactory::create
SDO Funções
PHP Manual

SDO_DAS_Setting::isSet

(^)

SDO_DAS_Setting::isSet — Test whether a property was set prior to being modified

Descrição

bool SDO_DAS_Setting::isSet ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test whether a property was set prior to being modified. If it was set prior to being modified then the SDO_DAS_Setting will also contain the old value.

Parâmetros

None.

Valor Retornado

Returns TRUE if the property was set prior to being modified, otherwise returns FALSE.

SDO_DAS_Setting::getValue
SDO_DataFactory::create
SDO Funções


Create an SDO_DataObject

SDO_DAS_Setting::isSet
SDO_DataObject::clear
SDO Funções
PHP Manual

SDO_DataFactory::create

(^)

SDO_DataFactory::create — Create an SDO_DataObject

Descrição

void SDO_DataFactory::create ( string $type_namespace_uri , string $type_name )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Create a new SDO_DataObject given the data object's namespace URI and type name.

Parâmetros

type_namespace_uri

The namespace of the type.

type_name

The name of the type.

Valor Retornado

Returns the newly created SDO_DataObject.

Erros

SDO_TypeNotFoundException

Thrown if the namespaceURI and typeName do not correspond to a type known to this data factory.

SDO_DAS_Setting::isSet
SDO_DataObject::clear
SDO Funções


Clear an SDO_DataObject's properties

SDO_DataFactory::create
SDO_DataObject::createDataObject
SDO Funções
PHP Manual

SDO_DataObject::clear

(^)

SDO_DataObject::clear — Clear an SDO_DataObject's properties

Descrição

void SDO_DataObject::clear ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Clear an SDO_DataObject's properties. Read-only properties are unaffected. Subsequent calls to isset() for the data object will return FALSE.

Parâmetros

None.

Valor Retornado

No return values.

SDO_DataFactory::create
SDO_DataObject::createDataObject
SDO Funções


Create a child SDO_DataObject

SDO_DataObject::clear
SDO_DataObject::getContainer
SDO Funções
PHP Manual

SDO_DataObject::createDataObject

(^)

SDO_DataObject::createDataObject — Create a child SDO_DataObject

Descrição

SDO_DataObject SDO_DataObject::createDataObject ( mixed $identifier )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Create a child SDO_DataObject of the default type for the property identified. The data object is automatically inserted into the tree and a reference to it is returned.

Parâmetros

identifier

Identifies the property for the data object type to be created. Can be either a property name (string), a property index (int), or an SDO_Model_Property.

Valor Retornado

Returns the newly created SDO_DataObject.

Erros

SDO_PropertyNotFoundException

Thrown if the identifier does not correspond to a property of the data object.

SDO_DataObject::clear
SDO_DataObject::getContainer
SDO Funções


Get a data object's container

SDO_DataObject::createDataObject
SDO_DataObject::getSequence
SDO Funções
PHP Manual

SDO_DataObject::getContainer

(^)

SDO_DataObject::getContainer — Get a data object's container

Descrição

SDO_DataObject SDO_DataObject::getContainer ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the data object which contains this data object.

Parâmetros

None.

Valor Retornado

Returns the SDO_DataObject which contains this SDO_DataObject, or returns NULL if this is a root SDO_DataObject (i.e. it has no container).

SDO_DataObject::createDataObject
SDO_DataObject::getSequence
SDO Funções


Get the sequence for a data object

SDO_DataObject::getContainer
SDO_DataObject::getTypeName
SDO Funções
PHP Manual

SDO_DataObject::getSequence

(^)

SDO_DataObject::getSequence — Get the sequence for a data object

Descrição

SDO_Sequence SDO_DataObject::getSequence ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Return the SDO_Sequence for this SDO_DataObject. Accessing the SDO_DataObject through the SDO_Sequence interface acts on the same SDO_DataObject instance data, but preserves ordering across properties.

Parâmetros

None.

Valor Retornado

The SDO_Sequence for this SDO_DataObject, or returns NULL if the SDO_DataObject is not of a type which can have a sequence.

SDO_DataObject::getContainer
SDO_DataObject::getTypeName
SDO Funções


Return the name of the type for a data object.

SDO_DataObject::getSequence
SDO_DataObject::getTypeNamespaceURI
SDO Funções
PHP Manual

SDO_DataObject::getTypeName

(^)

SDO_DataObject::getTypeName — Return the name of the type for a data object.

Descrição

string SDO_DataObject::getTypeName ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Return the name of the type for a data object. A convenience method corresponding to SDO_Model_ReflectionDataObject::getType().getName().

Parâmetros

None.

Valor Retornado

The name of the type for the data object.

SDO_DataObject::getSequence
SDO_DataObject::getTypeNamespaceURI
SDO Funções


Return the namespace URI of the type for a data object.

SDO_DataObject::getTypeName
SDO_Exception::getCause
SDO Funções
PHP Manual

SDO_DataObject::getTypeNamespaceURI

(^)

SDO_DataObject::getTypeNamespaceURI — Return the namespace URI of the type for a data object.

Descrição

string SDO_DataObject::getTypeNamespaceURI ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Return the namespace URI of the type for a data object. A convenience method corresponding to SDO_Model_ReflectionDataObject::getType().getNamespaceURI().

Parâmetros

None.

Valor Retornado

The namespace URI of the type for the data object.

SDO_DataObject::getTypeName
SDO_Exception::getCause
SDO Funções


Get the cause of the exception.

SDO_DataObject::getTypeNamespaceURI
SDO_List::insert
SDO Funções
PHP Manual

SDO_Exception::getCause

(^)

SDO_Exception::getCause — Get the cause of the exception.

Descrição

mixed SDO_Exception::getCause ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the cause of this exception or NULL if the cause is nonexistent or unknown. Typically the cause will be an SDO_CPPException object, which may be used to obtain additional diagnostic information.

Parâmetros

None.

Valor Retornado

Returns the cause of this exception or NULL if the cause is nonexistent or unknown.

SDO_DataObject::getTypeNamespaceURI
SDO_List::insert
SDO Funções


Insert into a list

SDO_Exception::getCause
SDO_Model_Property::getContainingType
SDO Funções
PHP Manual

SDO_List::insert

(^)

SDO_List::insert — Insert into a list

Descrição

void SDO_List::insert ( mixed $value [, int $index ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Insert a new element at a specified position in the list. All subsequent list items are moved up.

Parâmetros

value

The new value to be inserted. This can be either a primitive or an SDO_DataObject.

index

The position at which to insert the new element. If this argument is not specified then the new value will be appended.

Valor Retornado

None.

Erros

SDO_IndexOutOfBoundsException

Thrown if the list index is less than zero or greater than the size of the list.

SDO_InvalidConversionException

Thrown if the type of the new value does not match the type for the list (e.g. the type of the many-valued property that the list represents).

SDO_Exception::getCause
SDO_Model_Property::getContainingType
SDO Funções


Get the SDO_Model_Type which contains this property

SDO_List::insert
SDO_Model_Property::getDefault
SDO Funções
PHP Manual

SDO_Model_Property::getContainingType

(^)

SDO_Model_Property::getContainingType — Get the SDO_Model_Type which contains this property

Descrição

SDO_Model_Type SDO_Model_Property::getContainingType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the SDO_Model_Type which contains this property.

Parâmetros

None.

Valor Retornado

Returns the SDO_Model_Type which contains this property.

SDO_List::insert
SDO_Model_Property::getDefault
SDO Funções


Get the default value for the property

SDO_Model_Property::getContainingType
SDO_Model_Property::getName
SDO Funções
PHP Manual

SDO_Model_Property::getDefault

(^)

SDO_Model_Property::getDefault — Get the default value for the property

Descrição

mixed SDO_Model_Property::getDefault ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the default value for the property. Only primitive data type properties can have default values.

Parâmetros

None.

Valor Retornado

Returns the default value for the property.

SDO_Model_Property::getContainingType
SDO_Model_Property::getName
SDO Funções


Get the name of the SDO_Model_Property

SDO_Model_Property::getDefault
SDO_Model_Property::getType
SDO Funções
PHP Manual

SDO_Model_Property::getName

(^)

SDO_Model_Property::getName — Get the name of the SDO_Model_Property

Descrição

string SDO_Model_Property::getName ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the name of the SDO_Model_Property.

Parâmetros

None.

Valor Retornado

Returns the name of the SDO_Model_Property.

SDO_Model_Property::getDefault
SDO_Model_Property::getType
SDO Funções


Get the SDO_Model_Type of the property

SDO_Model_Property::getName
SDO_Model_Property::isContainment
SDO Funções
PHP Manual

SDO_Model_Property::getType

(^)

SDO_Model_Property::getType — Get the SDO_Model_Type of the property

Descrição

SDO_Model_Type SDO_Model_Property::getType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the SDO_Model_Type of the property. The SDO_Model_Type describes the type information for the property, such as its type name, namespace URI, whether it is a primitive data type, and so on.

Parâmetros

None.

Valor Retornado

Returns the SDO_Model_Type describing the property's type information.

SDO_Model_Property::getName
SDO_Model_Property::isContainment
SDO Funções


Test to see if the property defines a containment relationship

SDO_Model_Property::getType
SDO_Model_Property::isMany
SDO Funções
PHP Manual

SDO_Model_Property::isContainment

(^)

SDO_Model_Property::isContainment — Test to see if the property defines a containment relationship

Descrição

bool SDO_Model_Property::isContainment ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if the property corresponds to a containment relationship. Returns TRUE if the property defines a containment relationship, or FALSE if it is reference.

Parâmetros

None.

Valor Retornado

Returns TRUE if the property defines a containment relationship, or FALSE if it is reference.

SDO_Model_Property::getType
SDO_Model_Property::isMany
SDO Funções


Test to see if the property is many-valued

SDO_Model_Property::isContainment
SDO_Model_ReflectionDataObject::__construct
SDO Funções
PHP Manual

SDO_Model_Property::isMany

(^)

SDO_Model_Property::isMany — Test to see if the property is many-valued

Descrição

bool SDO_Model_Property::isMany ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if the property is many-valued. Returns TRUE if this is a many-valued property, otherwise returns FALSE.

Parâmetros

None.

Valor Retornado

Returns TRUE if this is a many-valued property, otherwise returns FALSE.

SDO_Model_Property::isContainment
SDO_Model_ReflectionDataObject::__construct
SDO Funções


Construct an SDO_Model_ReflectionDataObject

SDO_Model_Property::isMany
SDO_Model_ReflectionDataObject::export
SDO Funções
PHP Manual

SDO_Model_ReflectionDataObject::__construct

(^)

SDO_Model_ReflectionDataObject::__construct — Construct an SDO_Model_ReflectionDataObject

Descrição

SDO_Model_ReflectionDataObject SDO_Model_ReflectionDataObject::__construct ( SDO_DataObject $data_object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Construct an SDO_Model_ReflectionDataObject to reflect on an SDO_DataObject. Reflecting on an SDO_DataObject gives access to information about its model. The model contains information such as the data object's type, and whether that type is sequenced (preserves ordering across properties) or open (each instance can have its model extended). The model also holds information about the data object's properties, any default values they may have, and so on.

Parâmetros

data_object

The SDO_DataObject being reflected upon.

Valor Retornado

None.

SDO_Model_Property::isMany
SDO_Model_ReflectionDataObject::export
SDO Funções


Get a string describing the SDO_DataObject.

SDO_Model_ReflectionDataObject::__construct
SDO_Model_ReflectionDataObject::getContainmentProperty
SDO Funções
PHP Manual

SDO_Model_ReflectionDataObject::export

(^)

SDO_Model_ReflectionDataObject::export — Get a string describing the SDO_DataObject.

Descrição

mixed SDO_Model_ReflectionDataObject::export ( SDO_Model_ReflectionDataObject $rdo [, bool $return ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get a string describing the SDO_DataObject. The default behaviour is to print the output, but if TRUE is specified for return, it is returned as a string.

Parâmetros

rdo

An SDO_Model_ReflectionDataObject.

return

If TRUE, return the output as a string, otherwise print it.

Valor Retornado

Returns the output if TRUE is specified for return, otherwise NULL.

SDO_Model_ReflectionDataObject::__construct
SDO_Model_ReflectionDataObject::getContainmentProperty
SDO Funções


Get the property which defines the containment relationship to the data object

SDO_Model_ReflectionDataObject::export
SDO_Model_ReflectionDataObject::getInstanceProperties
SDO Funções
PHP Manual

SDO_Model_ReflectionDataObject::getContainmentProperty

(^)

SDO_Model_ReflectionDataObject::getContainmentProperty — Get the property which defines the containment relationship to the data object

Descrição

SDO_Model_Property SDO_Model_ReflectionDataObject::getContainmentProperty ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the SDO_Model_Property that contains the SDO_DataObject. This method is used to navigate up to the parent's property which contains the data object which has been reflected upon.

Parâmetros

None.

Valor Retornado

Returns the container's SDO_Model_Property which references the SDO_DataObject, or NULL if it is a root SDO_DataObject.

SDO_Model_ReflectionDataObject::export
SDO_Model_ReflectionDataObject::getInstanceProperties
SDO Funções


Get the instance properties of the SDO_DataObject

SDO_Model_ReflectionDataObject::getContainmentProperty
SDO_Model_ReflectionDataObject::getType
SDO Funções
PHP Manual

SDO_Model_ReflectionDataObject::getInstanceProperties

(^)

SDO_Model_ReflectionDataObject::getInstanceProperties — Get the instance properties of the SDO_DataObject

Descrição

array SDO_Model_ReflectionDataObject::getInstanceProperties ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the instance properties for the SDO_DataObject. The instance properties consist of all the properties defined on the data object's type, plus any instance properties from open content (if the data object is an open type).

Parâmetros

None.

Valor Retornado

An array of SDO_Model_Property objects.

SDO_Model_ReflectionDataObject::getContainmentProperty
SDO_Model_ReflectionDataObject::getType
SDO Funções


Get the SDO_Model_Type for the SDO_DataObject

SDO_Model_ReflectionDataObject::getInstanceProperties
SDO_Model_Type::getBaseType
SDO Funções
PHP Manual

SDO_Model_ReflectionDataObject::getType

(^)

SDO_Model_ReflectionDataObject::getType — Get the SDO_Model_Type for the SDO_DataObject

Descrição

SDO_Model_Type SDO_Model_ReflectionDataObject::getType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the SDO_Model_Type for the SDO_DataObject. The SDO_Model_Type holds all the information about the data object's type, such as namespace URI, type name, whether it is a primitive data type, and so on.

Parâmetros

None.

Valor Retornado

Returns the SDO_Model_Type for the SDO_DataObject.

SDO_Model_ReflectionDataObject::getInstanceProperties
SDO_Model_Type::getBaseType
SDO Funções


Get the base type for this type

SDO_Model_ReflectionDataObject::getType
SDO_Model_Type::getName
SDO Funções
PHP Manual

SDO_Model_Type::getBaseType

(^)

SDO_Model_Type::getBaseType — Get the base type for this type

Descrição

SDO_Model_Type SDO_Model_Type::getBaseType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get the base type for this type. Returns the SDO_Model_Type for the base type if this type inherits from another, otherwise returns NULL. An example of when base types occur is when a type defined in XML schema inherits from another type by using

<extension base="...">
.

Parâmetros

None.

Valor Retornado

Returns the SDO_Model_Type for the base type if this type inherits from another, otherwise returns NULL.

SDO_Model_ReflectionDataObject::getType
SDO_Model_Type::getName
SDO Funções


Get the name of the type

SDO_Model_Type::getBaseType
SDO_Model_Type::getNamespaceURI
SDO Funções
PHP Manual

SDO_Model_Type::getName

(^)

SDO_Model_Type::getName — Get the name of the type

Descrição

string SDO_Model_Type::getName ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the name of the type. The combination of type name and namespace URI is used to uniquely identify the type.

Parâmetros

None.

Valor Retornado

Returns the name of the type.

SDO_Model_Type::getBaseType
SDO_Model_Type::getNamespaceURI
SDO Funções


Get the namespace URI of the type

SDO_Model_Type::getName
SDO_Model_Type::getProperties
SDO Funções
PHP Manual

SDO_Model_Type::getNamespaceURI

(^)

SDO_Model_Type::getNamespaceURI — Get the namespace URI of the type

Descrição

string SDO_Model_Type::getNamespaceURI ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the namespace URI of the type. The combination of namespace URI and type name is used to uniquely identify the type.

Parâmetros

None.

Valor Retornado

Returns the namespace URI of the type.

SDO_Model_Type::getName
SDO_Model_Type::getProperties
SDO Funções


Get the SDO_Model_Property objects defined for the type

SDO_Model_Type::getNamespaceURI
SDO_Model_Type::getProperty
SDO Funções
PHP Manual

SDO_Model_Type::getProperties

(^)

SDO_Model_Type::getProperties — Get the SDO_Model_Property objects defined for the type

Descrição

array SDO_Model_Type::getProperties ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get an array of SDO_Model_Property objects describing the properties defined for the SDO_Model_Type. Each SDO_Model_Property holds information such as the property name, default value, and so on.

Parâmetros

None.

Valor Retornado

Returns an array of SDO_Model_Property objects.

SDO_Model_Type::getNamespaceURI
SDO_Model_Type::getProperty
SDO Funções


Get an SDO_Model_Property of the type

SDO_Model_Type::getProperties
SDO_Model_Type::isAbstractType
SDO Funções
PHP Manual

SDO_Model_Type::getProperty

(^)

SDO_Model_Type::getProperty — Get an SDO_Model_Property of the type

Descrição

SDO_Model_Property SDO_Model_Type::getProperty ( mixed $identifier )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Get an SDO_Model_Property of the type, identified by its property index or property name.

Parâmetros

identifier

The property index or property name.

Valor Retornado

Returns the SDO_Model_Property.

SDO_Model_Type::getProperties
SDO_Model_Type::isAbstractType
SDO Funções


Test to see if this SDO_Model_Type is an abstract data type

SDO_Model_Type::getProperty
SDO_Model_Type::isDataType
SDO Funções
PHP Manual

SDO_Model_Type::isAbstractType

(^)

SDO_Model_Type::isAbstractType — Test to see if this SDO_Model_Type is an abstract data type

Descrição

bool SDO_Model_Type::isAbstractType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if this SDO_Model_Type is an abstract data type. Returns TRUE if this type is abstract, that is, no SDO_DataObject of this type can be instantiated, though other types may inherit from it.

Parâmetros

None.

Valor Retornado

Returns TRUE if this type is an abstract data type, otherwise returns FALSE.

SDO_Model_Type::getProperty
SDO_Model_Type::isDataType
SDO Funções


Test to see if this SDO_Model_Type is a primitive data type

SDO_Model_Type::isAbstractType
SDO_Model_Type::isInstance
SDO Funções
PHP Manual

SDO_Model_Type::isDataType

(^)

SDO_Model_Type::isDataType — Test to see if this SDO_Model_Type is a primitive data type

Descrição

bool SDO_Model_Type::isDataType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if this SDO_Model_Type is a primitive data type. Returns TRUE if this type is a primitive data type, otherwise returns FALSE.

Parâmetros

None.

Valor Retornado

Returns TRUE if this type is a primitive data type, otherwise returns FALSE.

SDO_Model_Type::isAbstractType
SDO_Model_Type::isInstance
SDO Funções


Test for an SDO_DataObject being an instance of this SDO_Model_Type

SDO_Model_Type::isDataType
SDO_Model_Type::isOpenType
SDO Funções
PHP Manual

SDO_Model_Type::isInstance

(^)

SDO_Model_Type::isInstance — Test for an SDO_DataObject being an instance of this SDO_Model_Type

Descrição

bool SDO_Model_Type::isInstance ( SDO_DataObject $data_object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test for an SDO_DataObject being an instance of this SDO_Model_Type. Returns TRUE if the SDO_DataObject provided is an instance of this SDO_Model_Type, or a derived type, otherwise returns FALSE.

Parâmetros

data_object

The SDO_DataObject to be tested.

Valor Retornado

Returns TRUE if the SDO_DataObject provided is an instance of this SDO_Model_Type, or a derived type, otherwise returns FALSE.

SDO_Model_Type::isDataType
SDO_Model_Type::isOpenType
SDO Funções


Test to see if this type is an open type

SDO_Model_Type::isInstance
SDO_Model_Type::isSequencedType
SDO Funções
PHP Manual

SDO_Model_Type::isOpenType

(^)

SDO_Model_Type::isOpenType — Test to see if this type is an open type

Descrição

bool SDO_Model_Type::isOpenType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if this type is open. Returns TRUE if this type is open, otherwise returns FALSE. An SDO_DataObject whose type is open can have properties added to them which are not described by the type. This capability is used to support working with XML documents whose schema support open content, such as that defined by an

<xsd:any>
element.

Parâmetros

None.

Valor Retornado

Returns TRUE if this type is open, otherwise returns FALSE.

SDO_Model_Type::isInstance
SDO_Model_Type::isSequencedType
SDO Funções


Test to see if this is a sequenced type

SDO_Model_Type::isOpenType
SDO_Sequence::getProperty
SDO Funções
PHP Manual

SDO_Model_Type::isSequencedType

(^)

SDO_Model_Type::isSequencedType — Test to see if this is a sequenced type

Descrição

bool SDO_Model_Type::isSequencedType ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Test to see if this is a sequenced type. Returns TRUE if this type is sequence, otherwise returns FALSE. Sequenced types can have the ordering across properties preserved and can contain unstructured text. For more information on sequenced types see the section on Working with Sequenced Data Objects.

Parâmetros

None.

Valor Retornado

Returns TRUE if this type is sequence, otherwise return FALSE.

SDO_Model_Type::isOpenType
SDO_Sequence::getProperty
SDO Funções


Return the property for the specified sequence index.

SDO_Model_Type::isSequencedType
SDO_Sequence::insert
SDO Funções
PHP Manual

SDO_Sequence::getProperty

(^)

SDO_Sequence::getProperty — Return the property for the specified sequence index.

Descrição

SDO_Model_Property SDO_Sequence::getProperty ( int $sequence_index )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Return the property for the specified sequence index.

Parâmetros

sequence_index

The position of the element in the sequence.

Valor Retornado

An SDO_Model_Property. A return value of NULL means the sequence element does not belong to a property and must therefore be unstructured text.

Erros

SDO_IndexOutOfBoundsException

Thrown if the sequence index is less than zero or greater than the size of the sequence.

SDO_Model_Type::isSequencedType
SDO_Sequence::insert
SDO Funções


Insert into a sequence

SDO_Sequence::getProperty
SDO_Sequence::move
SDO Funções
PHP Manual

SDO_Sequence::insert

(^)

SDO_Sequence::insert — Insert into a sequence

Descrição

void SDO_Sequence::insert ( mixed $value [, int $sequenceIndex [, mixed $propertyIdentifier ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Insert a new element at a specified position in the sequence. All subsequent sequence items are moved up.

Parâmetros

value

The new value to be inserted. This can be either a primitive or an SDO_DataObject.

sequenceIndex

The position at which to insert the new element. Default is NULL, which results in the new value being appended to the sequence.

propertyIdentifier

Either a property index, a property name, or an SDO_Model_Property, used to identify a property in the sequence's corresponding SDO_DataObject. A value of NULL signifies unstructured text.

Valor Retornado

None.

Erros

SDO_IndexOutOfBoundsException

Thrown if the sequence index is less than zero or greater than the size of the sequence.

SDO_InvalidConversionException

Thrown if the type of the new value cannot be juggled to match the type for the specified data object property.

SDO_Sequence::getProperty
SDO_Sequence::move
SDO Funções


Move an item to another sequence position

SDO_Sequence::insert
SDO-DAS-Relational
SDO Funções
PHP Manual

SDO_Sequence::move

(^)

SDO_Sequence::move — Move an item to another sequence position

Descrição

void SDO_Sequence::move ( int $toIndex, int $fromIndex )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Modify the position of the item in the sequence, without altering the value of the property in the SDO_DataObject.

Parâmetros

toIndex

The destination sequence index. If this index is less than zero or greater than the size of the sequence then the value is appended.

fromIndex

The source sequence index.

Valor Retornado

None.

Erros

SDO_IndexOutOfBoundsException

Thrown if the fromIndex sequence index is less than zero or greater than the size of the sequence.

SDO_Sequence::insert
SDO-DAS-Relational
SDO Funções


SDO Relational Data Access Service

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Creating, retrieving, updating and deleting data
    • Specifying the metadata
    • One-table examples
    • Two-table examples
    • Three-table example
  • Limitations
  • SDO-DAS-Relational Funções
    • SDO_DAS_Relational::applyChanges — Applies the changes made to a data graph back to the database.
    • SDO_DAS_Relational::__construct — Creates an instance of a Relational Data Access Service
    • SDO_DAS_Relational::createRootDataObject — Returns the special root object in an otherwise empty data graph. Used when creating a data graph from scratch.
    • SDO_DAS_Relational::executePreparedQuery — Executes an SQL query passed as a prepared statement, with a list of values to substitute for placeholders, and return the results as a normalised data graph.
    • SDO_DAS_Relational::executeQuery — Executes a given SQL query against a relational database and returns the results as a normalised data graph.
SDO_Sequence::move
Introdução
Manipulação de XML


Introdução

Aviso

Este módulo é EXPERIMENTAL. O comportamento desta extensão — incluindo o nome de suas funções e qualquer outra documentação sobre esta extensão — poderá mudar sem aviso em futuras versões do PHP. Esta extensão deve ser usada por sua própria conta e risco.

In order to use the Relational Data Access Service for Service Data Objects, you will need to understand some of the concepts behind SDO: the data graph, the data object, the disconnected way of working, the change summary, XPath and property expressions, and so on. If you are not familiar with these ideas, you might want to look first at the section on SDO. In addition, the Relational DAS makes use of the PDO extension to isolate itself from specifics of different back-end relational databases. In order to use the Relational DAS you will need to be able to create and pass a PDO database connection; for this reason you might also want to take a look at the section on PDO.

The job of the Relational DAS is to move data between the application and a relational database. In order to do this it needs to be told the mapping between the database entities - tables, columns, primary keys and foreign keys - and the elements of the SDO model - types, properties, containment relationships and so on. You specify this information as metadata when you construct the Relational DAS.

Overview of Operation

  1. The first step is to call the Relational DAS's constructor, passing the metadata that defines the mapping between database and SDO model. There are examples of this below.

  2. The next step might be to call the executeQuery() or executePreparedQuery() methods on the Relational DAS, passing either a literal SQL statement for the DAS to prepare and execute, or a prepared statement with placeholders and a list of values to be inserted. You may also need to specify a small amount of metadata about the query itself, so that the Relational DAS knows exactly what columns will be returned from the database and in what order. You will also need to pass a PDO database connection.

    The return value from executeQuery() or executePreparedQuery() is a normalised data graph containing all the data from the result set. For a query that returns data obtained from a number of tables, this graph will contain a number of data objects, linked by SDO containment relationships. There may also be SDO non-containment references within the data.

    Once the query has been executed and the data graph constructed, there is no need for either that instance of the Relational DAS or the database connection. There are no locks held on the database. Both the Relational DAS and the PDO database connection can be garbage collected.

  3. Quite possibly the data in the data graph will go through a number of modifications. The data graph can be serialised into the PHP session and so may have a lifetime beyond just one client-server interaction. Data objects can be created and added to the graph, the data objects already in the graph can be deleted, and data objects in the graph can be modified.

  4. Finally, the changes made to the data graph can be applied back to the database using the applyChanges() method of the Relational DAS. For this, another instance of the Relational DAS must be constructed, using the same metadata, and another connection to the database obtained. The connection and the data graph are passed to applyChanges(). At this point the Relational DAS examines the change summary and generates the necessary INSERT, UPDATE and DELETE SQL statements to apply the changes. Any UPDATE and DELETE statements are qualified with the original values of the data so that should the data have changed in the database in the meantime this will be detected. Assuming no such collisions have occurred the changes will be committed to the database. The application can then continue to work with the data graph, make more changes and apply them, or can discard it.

There are other ways of working with the data in the database: it is possible to just create data objects and write them to the database without a preliminary call to executeQuery(), for example. This scenario and others are explored in the Examples section below.

SDO-DAS-Relational
Instalação/Configuração
SDO-DAS-Relational


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SDO-DAS-Relational


Dependências

The Relational DAS requires that the SDO extension be installed. The SDO extension requires a version of PHP 5.1, and the Relational DAS requires a recent version that contains an important fix for PDO. The most up-to-date information about required levels of PHP should be found in the changelog for the package on PECL. At the time of writing, though, the Relational DAS requires the most recent beta level of PHP 5.1, that is PHP 5.1.0.

The Relational DAS uses PDO to access the relational database, and so should run with a variety of different relational databases. At the time of writing it has been tested in the following configurations

  • MySQL 4.1.14, on Windows. The Relational DAS operates correctly with the php_pdo_mysql driver that comes with the pre-built binaries for PHP 5.1.0.

  • MySQL 4.1.13, on Linux. It is necessary to have the most up-to-date PDO driver for MySQL, which comes built in to PHP 5.1.0. It may be necessary to uninstall the usual driver that would have come from PECL using pear uninstall pdo_mysql. You will need to configure PHP with the --with-pdo-mysql option.

  • DB2 8.2 Personal Edition, on Windows. The Relational DAS operates correctly with the php_pdo_odbc driver that comes with the pre-built binaries for PHP 5.1.0.

  • DB2 8.2 Personal Developer's Edition, on Linux. The Developer's Edition is needed because it contains the include files needed when PHP is configured and built. You will need to configure PHP with the --with-pdo-odbc=ibm-db2 option.

The Relational DAS applies changes to the database within a user-delimited transaction: that is, it issues a call to PDO::beginTransaction() before beginning to apply changes, and PDO::commit() or PDO::rollback() on completion. Whichever database is chosen, the database and the PDO driver for the database must support these calls.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

The installation instructions for all the SDO components are in the SDO install section of the SDO documentation.

In any case, the essential facts are that the Relational DAS is written in PHP and it should be placed somewhere on the PHP include_path.

Your application will of course need to include the Relational DAS with a statement like this:

<?php
require_once 'SDO/DAS/Relational.php';
?>

Dependências
Configurações em Execução
Instalação/Configuração


Configurações em Execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Tracing

You may be interested in seeing the SQL statements that are generated in order to apply changes back to the database. At the top of the SDO/DAS/Relational.php you will find a number of constants which control whether the process of constructing and executing the SQL statements is to be traced. Try setting DEBUG_EXECUTE_PLAN to TRUE to see the generated SQL statements.

Instalação
Tipos Resource
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

The Relational DAS introduces no predefined constants.

Tipos Resource
Exemplos
SDO-DAS-Relational


Exemplos

Índice

  • Creating, retrieving, updating and deleting data
  • Specifying the metadata
  • One-table examples
  • Two-table examples
  • Three-table example
Constantes pré-definidas
Creating, retrieving, updating and deleting data
SDO-DAS-Relational


Creating, retrieving, updating and deleting data

This section illustrates how the Relational DAS can be used to create, retrieve, update and delete data in a relational database. Many of the examples are illustrated with a three-table database that contains companies, departments within those companies, and employees that work in those departments. This example is used in a number of places within the SDO literature. See the examples section of the » Service Data Objects specification or the Examples section of the documentation for the SDO extension.

The Relational DAS is constructed with metadata that defines the relational database and how it should be mapped to SDO. The long section that follows describes this metadata and how to construct the Relational DAS. The examples that follow it all assume that this metadata is in an included php file.

The examples below and others can all be found in the Scenarios directory in the Relational DAS package.

The Relational DAS throws exceptions in the event that it finds errors in the metadata or errors when executing SQL statements against the database. For brevity the examples below all omit the use of try/catch blocks around the calls to the Relational DAS.

These examples all differ from the expected use of SDO in two important respects.

First, they show all interactions with the database completed within one script. In this respect these scenarios are not realistic but are chosen to illustrate just the use of the Relational DAS. It is expected that interactions with the database will be separated in time and the data graph serialized and deserialized into the PHP session one or more times as the application interacts with an end user.

Second, all queries executed against the database use hard-coded queries with no variables substituted. In this case it is safe to use the simple executeQuery() call, and this is what the examples illustrate. In practice, though, it is unlikely that the SQL statement is known entirely ahead of time. In order to allow variables to be safely substituted into the SQL queries, without running the risk of injecting SQL with unknown effects, it is safer to use the executePreparedQuery() which takes a prepared SQL statement containing placeholders and a list of values to be substituted.

Exemplos
Specifying the metadata
Exemplos


Specifying the metadata

This first long section describes in detail how the metadata describing the database and the required SDO model is supplied to the Relational DAS.

When the constructor for the Relational DAS is invoked, it needs to be passed several pieces of information. The bulk of the information, passed as an associative array in the first argument to the constructor, tells the Relational DAS what it needs to know about the relational database. It describes the names of the tables, columns, primary keys and foreign keys. It should be fairly easy to understand what is required, and once written it can be placed in a php file and included when needed. The remainder of the information, passed in the second and third arguments to the constructor, tells the Relational DAS what it needs to know about the relationships between objects and the shape of the data graph; it ultimately determines how the data from the database is to be normalized into a graph.

Database metadata

The first argument to the constructor describes the target relational database.

Each table is described by an associative array with up to four keys.

Key | Value
name | The name of the table.
columns | An array listing the names of the columns, in any order.
PK | The name of the column containing the primary key.
FK | An array with two entries, 'from' and 'to', which define a column containing a foreign key, and a table to which the foreign key points. If there are no foreign keys in the table then the 'FK' entry does not need to be specified. Only one foreign key can be specified. Only a foreign key pointing to the primary key of a table can be specified.

<?php
/*****************************************************************
* METADATA DEFINING THE DATABASE
******************************************************************/
$company_table = array (
  'name' => 'company',
  'columns' => array('id', 'name',  'employee_of_the_month'),
  'PK' => 'id',
  'FK' => array (
      'from' => 'employee_of_the_month',
      'to' => 'employee',
      ),
  );
$department_table = array (
  'name' => 'department',
  'columns' => array('id', 'name', 'location', 'number', 'co_id'),
  'PK' => 'id',
  'FK' => array (
      'from' => 'co_id',
      'to' => 'company',
      )
  );
$employee_table = array (
  'name' => 'employee',
  'columns' => array('id', 'name', 'SN', 'manager', 'dept_id'),
  'PK' => 'id',
  'FK' => array (
      'from' => 'dept_id',
      'to' => 'department',
      )
  );
$database_metadata = array($company_table, $department_table, $employee_table);
?>

This metadata corresponds to a relational database that might have been defined to MySQL as:

create table company (
 id integer auto_increment,
 name char(20),
 employee_of_the_month integer,
 primary key(id)
);
create table department (
 id integer auto_increment,
 name char(20),
 location char(10),
 number integer(3),
 co_id integer,
 primary key(id)
);
create table employee (
 id integer auto_increment,
 name char(20),
 SN char(4),
 manager tinyint(1),
 dept_id integer,
 primary key(id)
);

or to DB2 as:

create table company ( \
  id integer not null generated by default as identity,  \
  name varchar(20), \
  employee_of_the_month integer, \
  primary key(id) )
create table department ( \
  id integer not null generated by default as identity, \
  name varchar(20), \
  location varchar(10), \
  number integer, \
  co_id integer, \
  primary key(id) )
create table employee ( \
  id integer not null generated by default as identity, \
  name varchar(20), \
  SN char(4), \
  manager smallint, \
  dept_id integer, \
  primary key(id) )

Note that although in this example there are no foreign keys specified to the database and so the database is not expected to enforce referential integrity, the intention behind the co_id column on the department table and the dept_id column on the employee table is they should contain the primary key of their containing company or department record, respectively. So these two columns are acting as foreign keys.

There is a third foreign key in this example, that from the employee_of_the_month column of the company record to a single row of the employee table. Note the difference in intent between this foreign key and the other two. The employee_of_the_month column represents a single-valued relationship: there can be only one employee of the month for a given company. The co_id and dept_id columns represent multi-valued relationships: a company can contain many departments and a department can contain many employees. This distinction will become evident when the remainder of the metadata picks out the company-department and department-employee relationships as containment relationships.

There are a few simple rules to be followed when constructing the database metadata:

  • All tables must have primary keys, and the primary keys must be specified in the metadata. Without primary keys it is not possible to keep track of object identities. As you can see from the SQL statements that create the tables, primary keys can be auto-generated, that is, generated and assigned by the database when a record is inserted. In this case the auto-generated primary key is obtained from the database and inserted into the data object immediately after the row is inserted into the database.

  • It is not necessary to specify in the metadata all the columns that exist in the database, only those that will be used. For example, if the company table had another column that the application did not want to access with SDO, this need not be specified in the metadata. On the other hand it would have done no harm to specify it: if specified in the metadata but never retrieved, or assigned to by the application, then the unused column will not affect anything.

  • In the database metadata note that the foreign key definitions identify not the destination column in the table which is pointed to, but the table name itself. Strictly, the relational model permits the destination of a foreign key to be a non-primary key. Only foreign keys that point to a primary key are useful for constructing the SDO model, so the metadata specifies the table name. It is understood that the foreign key points to the primary key of the given table.

Given these rules, and given the SQL statements that define the database, the database metadata should be easy to construct.

What the Relational DAS does with the metadata

The Relational DAS uses the database metadata to form most of the SDO model. For each table in the database metadata, an SDO type is defined. Each column which can represent a primitive value (columns which are not defined as foreign keys) are added as properties to the SDO type.

All primitive properties are given a type of string in the SDO model, regardless of their SQL type. When writing values back to the database the Relational DAS will create SQL statements that treat the values as strings, and the database will convert them to the appropriate type.

Foreign keys are interpreted in one of two ways, depending on the metadata in the third argument to the constructor that defines the SDO containment relationships. A discussion of this is therefore deferred until the section on SDO containment relationships below.

Specifying the application root type

The second argument to the constructor is the application root type. The true root of each data graph is an object of a special root type and all application data objects come somewhere below that. Of the various application types in the SDO model, one has to be the application type immediately below the root of the data graph. If there is only one table in the database metadata, the application root type can be inferred, and this argument can be omitted.

Specifying the SDO containment relationships

The third argument to the constructor defines how the types in the model are to be linked together to form a graph. It identifies the parent-child relationships between the types which collectively form a graph. The relationships need to be supported by foreign keys to be found in the data, in a way shortly to be described.

The metadata is an array containing one or more associative arrays, each of which identifies a parent and a child. The example below shows a parent-child relationship from company to department, and another from department to employee. Each of these will become an SDO property defining a multi-valued containment relationship in the SDO model.

<?php
$department_containment = array( 'parent' => 'company', 'child' => 'department');
$employee_containment = array( 'parent' => 'department', 'child' => 'employee');

$SDO_containment_metadata = array($department_containment, $employee_containment);
?>

Foreign keys in the database metadata are interpreted as properties with either multi-valued containment relationships or single-valued non-containment references, depending on whether they have a corresponding SDO containment relationship specified in the metadata. In the example here, the foreign keys from department to company (the co_id column in the department table) and from employee to department (the dept_id column in the employee table) are interpreted as supporting the SDO containment relationships. Each containment relationship mentioned in the SDO containment relationships metadata must have a corresponding foreign key present in the database and defined in the database metadata. The values of the foreign key columns for containment relationships do not appear in the data objects, instead each is represented by a containment relationship from the parent to the child. So the co_id column in the department row in the database, for example, does not appear as a property on the department type, but instead as a containment relationship called department on the company type. Note that the foreign key and the parent-child relationship appear to have opposite senses: the foreign key points from the department to the company, but the parent-child relationship points from company to department.

The third foreign key in this example, the employee_of_the_month , is handled differently. This is not mentioned in the SDO containment relationships metadata. As a consequence this is interpreted in the second way: it becomes a single-valued non-containment reference on the company object, to which can be assigned references to SDO data objects of the employee type. It does appear as a property on the company type. The way to assign a value to it in the SDO data graph is to have a graph that contains an employee object through the containment relationships, and to assign the object to it. This is illustrated in the later examples below.

Creating, retrieving, updating and deleting data
One-table examples
Exemplos


One-table examples

The following set of examples all use the Relational DAS to work with a data graph containing just one application data object, a single company and the data just to be found the company table. These examples do not exercise the power of SDO or the Relational DAS and of course the same result could be achieved more economically with direct SQL statements but they are intended to illustrate how to work with the Relational DAS.

For this very simple scenario it would be possible to simplify the database metadata to include just the company table - if that were done the second and third arguments to the constructor and the column specifier used in the query example would become optional.

Exemplo #1 Creating a data object

The simplest example is that of creating a single data object and writing it to the database. In this example a single company object is created, its name is set to 'Acme', and the Relational DAS is called to write the changes to the database. The company name is set here using the property name method. See the Examples section on the SDO extension for other ways of accessing the properties of an object.

Data objects can only be created when you have a data object to start with, however. It is for that reason that the first call to the Relational DAS here is to obtain a root object. This is in effect how to ask for an empty data graph - the special root object is the true root of the tree. The company data object is then created with a call to createDataObject() on the root object. This creates the company data object and inserts it in the graph by inserting into a multi-valued containment property on the root object called 'company'.

When the Relational DAS is called to apply the changes a simple insert statement 'INSERT INTO company (name) VALUES ("Acme");' will be constructed and executed. The auto-generated primary key will be set into the data object and the change summary will be reset, so that it would be possible to continue working with the same data object, modify it, and apply the newer changes a second time.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Construct the DAS with the metadata
***************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

/**************************************************************
* Obtain a root object and create a company object underneath.
* Make a simple change to the data object.
***************************************************************/
$root = $das  -> createRootDataObject();
$acme = $root -> createDataObject('company');

$acme->name = "Acme";

/**************************************************************
* Get a database connection and write the object to the database
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$das -> applyChanges($dbh, $root);
?>

Exemplo #2 Retrieving a data object

In this example a single data object is retrieved from the database - or possibly more than one if there is more than one company called 'Acme'. For each company returned, the name and id properties are echoed.

In this example the third argument to executeQuery(), the column specifier is needed as there are other tables in the metadata with column names of name and id. If there were no possible ambiguity it could be omitted.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Construct the DAS with the metadata
***************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

/**************************************************************
* Get a database connection
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

/**************************************************************
* Issue a query to obtain a company object - possibly more if they exist
***************************************************************/
$root = $das->executeQuery($dbh,
         'select name, id from company where name="Acme"',
          array('company.name', 'company.id') );

/**************************************************************
* Echo name and id
***************************************************************/
foreach ($root['company'] as $company) {
  echo "Company obtained from the database has name = " .
  $company['name'] . " and id " . $company['id'] . "\n";
}
?>

Exemplo #3 Updating a data object

This example combines the previous two, in the sense that in order to be updated the object must first be retrieved. The application code reverses the company name (so 'Acme' becomes 'emcA') and then the changes are written back to the database in the same way that they were when the object was created. Because the query searches for the name both ways round the program can be run repeatedly to find the company and reverse its name each time.

In this example the same instance of the Relational DAS is reused for the applyChanges(), as is the PDO database handle. This is quite alright; it also alright to allow the previous instances to be garbage collected and to obtain new instances. No state data regarding the graph is held the Relational DAS once it has returned a data graph to the application. All necessary data is either within the graph itself, or can be reconstructed from the metadata.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Construct the DAS with the metadata
***************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

/**************************************************************
* Get a database connection
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

/**************************************************************
* Issue a query to obtain a company object - possibly more if they exist
***************************************************************/
$root = $das->executeQuery($dbh,
  'select name, id from company where name="Acme" or name="emcA"',
  array('company.name', 'company.id') );

/**************************************************************
* Alter the name of just the first company
***************************************************************/
$company = $root['company'][0];
echo "obtained a company with name of " . $company->name . "\n";
$company->name = strrev($company->name);

/**************************************************************
* Write the change back
***************************************************************/
$das->applyChanges($dbh,$root);
?>

Exemplo #4 Deleting a data object

Any companies called 'Acme' or its reverse 'emcA' are retrieved. They are then all deleted from the graph with unset.

In this example they are all deleted in one go by unsetting the containing property (the property defining the containment relationship). It is also possible to delete them individually.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Construct the DAS with the metadata
***************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

/**************************************************************
* Get a database connection
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

/**************************************************************
* Issue a query to obtain a company object - possibly more if they exist
***************************************************************/
$root = $das->executeQuery($dbh,
  'select name, id from company where name="Acme" or name="emcA"',
  array('company.name', 'company.id') );

/**************************************************************
* Delete any companies found from the data graph
***************************************************************/
unset($root['company']);

/**************************************************************
* Write the change(s) back
***************************************************************/
$das->applyChanges($dbh,$root);
?>

Specifying the metadata
Two-table examples
Exemplos


Two-table examples

The following set of examples all use two tables from the company database: the company and department tables. These examples exercise more of the function of the Relational DAS.

In this series of examples a company and department are created, retrieved, updated, and finally deleted. This illustrates the lifecycle for a data graph containing more than one object. Note that this example clears out the company and department tables at the start so that the exact results of the queries can be known.

You can find these examples combined into one script called 1cd-CRUD in the Scenarios directory in the Relational DAS package.

Exemplo #1 One company, one department - Create

As in the earlier example of creating just one company data object, the first action after constructing the Relational DAS is to call createRootDataObject() to obtain the special root object of the otherwise empty data graph. The company object is then created as a child of the root object, and the department object as a child of the company object.

When it comes to applying the changes, the Relational DAS has to perform special processing to maintain the foreign keys that support the containment relationships, especially if auto-generated primary keys are involved. In this example, the relationship between the auto-generated primary key id in the company table and the co_id column in the department table must be maintained. When inserting a company and department for the first time the Relational DAS has to first insert the company row, then call PDO's getLastInsertId() method to obtain the auto-generated primary key, then add that as the value of the co_id column when inserting the department row.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/*************************************************************************************
* Empty out the two tables
*************************************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$pdo_stmt = $dbh->prepare('DELETE FROM COMPANY;');
$rows_affected = $pdo_stmt->execute();
$pdo_stmt = $dbh->prepare('DELETE FROM DEPARTMENT;');
$rows_affected = $pdo_stmt->execute();

/**************************************************************
* Create a company with name Acme and one department, the Shoe department
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

$root = $das -> createRootDataObject();

$acme = $root -> createDataObject('company');
$acme -> name = "Acme";

$shoe = $acme->createDataObject('department');
$shoe->name = 'Shoe';

$das -> applyChanges($dbh, $root);

?>

Exemplo #2 One company, one department - Retrieve and Update

In this case the SQL query passed to executeQuery() performs an inner join to join the data from the company and department tables. Primary keys for both the company and department tables must be included in the query. The result set is re-normalised to form a normalised data graph. Note that a column specifier is passed as the third argument to the executeQuery() call enabling the Relational DAS to know which column is which in the result set.

Note that the co_id column although used in the query is not needed in the result set. In order to understand what the Relational DAS is doing when it builds the data graph it may be helpful to visualise what the result set looks like. Although the data in the database is normalised, so that multiple department rows can point through their foreign key to one company row, the data in the result set is non-normalised: that is, if there is one company and multiple departments, the values for the company are repeated in each row. The Relational DAS has to reverse this process and turn the result set back into a normalised data graph, with just one company object.

In this example the Relational DAS will examine the result set and column specifier, find data for both the company and department tables, find primary keys for both, and interpret each row as containing data for a department and its parent company. If it has not seen data for that company before (it uses the primary key to check) it creates a company object and then a department object underneath it. If it has seen data for that company before and has already created the company object it just creates the department object underneath.

In this way the Relational DAS can retrieve and renormalise data for multiple companies and multiple departments underneath them.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Retrieve the company and Shoe department, then delete Shoe and add IT
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

$root = $das->executeQuery($dbh,
'select c.id, c.name, d.id, d.name from company c, department d where d.co_id = c.id',
array('company.id','company.name','department.id','department.name'));

$acme = $root['company'][0];            // get the first company - will be 'Acme'
$shoe = $acme['department'][0];         // get the first department underneath - will be 'Shoe'

unset($acme['department'][0]);

$it = $acme->createDataObject('department');
$it->name = 'IT';

$das -> applyChanges($dbh, $root);
?>

Exemplo #3 One company, two departments - Retrieve and Delete

In this example the company and department are retrieved and then deleted. It is not necessary to delete them individually (although that would be possible) - deleting the company object from the data graph also deletes any departments underneath it.

Note the way that the company object is actually deleted using the PHP unset call. The unset has to be performed on the containing property which in this case is the company property on the special root object. You must use:

<?php
unset($root['company'][0]);
?>
and not:
<?php
unset($acme); //WRONG
?>
Simply unsetting $acme would destroy the variable but leave the data in the data graph untouched.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
* Retrieve the company and IT department, then delete the whole company
***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);

$root = $das->executeQuery($dbh,
'select c.id, c.name, d.id, d.name from company c, department d where d.co_id = c.id',
array('company.id','company.name','department.id','department.name'));

$acme = $root['company'][0];
$it = $acme['department'][0];

unset($root['company'][0]);

$das -> applyChanges($dbh, $root);

?>

One-table examples
Three-table example
Exemplos


Three-table example

The following examples use all three tables from the company database: the company, department, and employee tables. These introduce the final piece of function not exercised by the examples above: the non-containment reference employee_of_the_month.

Like the examples above for company and department, this set of examples is intended to illustrate the full lifecycle of such a data graph.

Exemplo #1 One company, one department, one employee - Create

In this example a company is created containing one department and just one employee. Note that this example clears out all three tables at the start so that the exact results of the queries can be known.

Note how once the company, department and employee have been created, the employee_of_the_month property of the company can be made to point at the new employee. As this is a non-containment reference, this cannot be done until the employee object has been created within the graph. Non-containment references need to be managed carefully. For example if the employee were now deleted from under the department, it would not be correct to try to save the graph without first clearing or re-assigning the employee_of_the_month property. The closure rule for SDO data graphs requires that any object pointed at by a non-containment reference must also be reachable by containment relationships.

When it comes to inserting the graph into the database, the procedure is similar to the example of inserting the company and department, but employee_of_the_month introduces an extra complexity. The Relational DAS needs to insert the objects working down the tree formed by containment relationships, so company, then department, then employee. This is necessary so that it always has the auto-generated primary key of a parent on hand to include in a child row. But when the company row is inserted the employee who is employee of the month has not yet been inserted and the primary key is not known. The procedure is that after the employee record is inserted and its primary key known, a final step is performed in which the company record is updated with the employee's primary key.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/*************************************************************************************
* Empty out the three tables
*************************************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);
$pdo_stmt = $dbh->prepare('DELETE FROM COMPANY;');
$rows_affected = $pdo_stmt->execute();
$pdo_stmt = $dbh->prepare('DELETE FROM DEPARTMENT;');
$rows_affected = $pdo_stmt->execute();
$pdo_stmt = $dbh->prepare('DELETE FROM EMPLOYEE;');
$rows_affected = $pdo_stmt->execute();

/*************************************************************************************
* Create a tiny but complete company.
* The company name is Acme.
* There is one department, Shoe.
* There is one employee, Sue.
* The employee of the month is Sue.
*************************************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

$root             = $das  -> createRootDataObject();
$acme             = $root -> createDataObject('company');
$acme -> name     = "Acme";
$shoe             = $acme -> createDataObject('department');
$shoe -> name     = 'Shoe';
$shoe -> location = 'A-block';
$sue              = $shoe -> createDataObject('employee');
$sue -> name      = 'Sue';
$acme -> employee_of_the_month = $sue;

$das -> applyChanges($dbh, $root);

echo "Wrote back Acme with one department and one employee\n";
?>

Exemplo #2 One company, one department, one employee - Retrieve and update

The SQL statement passed to the Relational DAS is this time an inner join that retrieves data from all three tables. Otherwise this example introduces nothing that has not appeared in a previous example.

The graph is updated by the addition of a new department and employee and some alterations to the name properties of the existing objects in the graph. The combined changes are then written back. The Relational DAS will process and apply an arbitrary mixture of additions, modifications and deletions to and from the data graph.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/*************************************************************************************
* Find the company again and change various aspects.
* Change the name of the company, department and employee.
* Add a second department and a new employee.
* Change the employee of the month.
*************************************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

$root = $das->executeQuery($dbh,
  "select c.id, c.name, c.employee_of_the_month, d.id, d.name, e.id, e.name " .
  "from company c, department d, employee e " .
  "where e.dept_id = d.id and d.co_id = c.id and c.name='Acme'",
   array('company.id','company.name','company.employee_of_the_month',
   'department.id','department.name','employee.id','employee.name'));
$acme         = $root['company'][0];

$shoe         = $acme->department[0];
$sue          = $shoe -> employee[0];

$it           = $acme->createDataObject('department');
$it->name     = 'IT';
$it->location = 'G-block';
$billy        = $it->createDataObject('employee');
$billy->name  = 'Billy';

$acme->name   = 'MegaCorp';
$shoe->name   = 'Footwear';
$sue->name    = 'Susan';

$acme->employee_of_the_month = $billy;
$das -> applyChanges($dbh, $root);
echo "Wrote back company with extra department and employee and all the names changed (Megacorp/Footwear/Susan)\n";

?>

Exemplo #3 One company, two departments, two employees - Retrieve and delete

The company is retrieved as a complete data graph containing five data objects - the company, two departments and two employees. They are all deleted by deleting the company object. Deleting an object from the graph deletes all the object beneath it in the graph. Five SQL DELETE statements will be generated and executed. As always they will be qualified with a WHERE clause that contains all of the fields that were retrieved, so that any updates to the data in the database in the meantime by another process will be detected.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/*************************************************************************************
* Now read it one more time and delete it.
* You can delete part, apply the changes, then carry on working with the same graph but
* care is needed to keep closure - you cannot delete the employee who is eotm without
* reassigning. For safety here we delete the company all in one go.
*************************************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_containment_metadata);
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

$root = $das->executeQuery($dbh,
  "select c.id, c.name, c.employee_of_the_month, d.id, d.name, e.id, e.name " .
  "from company c, department d, employee e " .
  "where e.dept_id = d.id and d.co_id = c.id and c.name='MegaCorp';",
   array('company.id','company.name','company.employee_of_the_month',
   'department.id','department.name','employee.id','employee.name'));
$megacorp = $root['company'][0];

unset($root['company']);
$das -> applyChanges($dbh, $root);

echo "Deleted the company, departments and employees all in one go.\n";

?>

Two-table examples
Limitations
Exemplos


Limitations

There are the following limitations in the current release of the Relational DAS:

  • No support for nulls. There is no support for SQL NULL type. It is not legal to assign PHP NULL to a data object property and the Relational DAS will not write that back as a NULL to the database. If nulls are found in the database on a query, the property will remain unset.

  • Only two types of SDO relationship. The metadata described below allows the Relational DAS to model just two types of SDO relationship: multi-valued containment relationships and single-valued non-containment references. In SDO, whether a property describes a single- or multi-valued relationship, and whether it is containment or non-containment, are independent. The full range of possibilities that SDO allows cannot all be defined. There may be relationships that it would be useful to model but which the current implementation cannot manage. One example is a single-valued containment relationship.

  • No support for the full range of SDO data types. The Relational DAS defines all primitive properties in the SDO model as being of type string. SDO defines a richer set of types containing various integer, float, boolean and data and time types. String is adequate for the purposes of the Relational DAS since the combination of PHP, PDO and the database will ensure that values passed as strings will be converted to the proper type before being put in the database. This does affect some scenarios in which the Relational DAS has to work with a data graph that has come from or will go to a different DAS.

  • Only one foreign key per table. The metadata only provides the means to specify one foreign key per table. This foreign key may be mapped to one of the two types of SDO relationship supported. Obviously there are some scenarios that cannot be described under this limitation - it is not possible to have two non-containment references from one table to another for example.

Three-table example
SDO-DAS-Relational Funções
SDO-DAS-Relational


SDO-DAS-Relational Funções

Classes pré-definidas

The Relational DAS provides two classes: the Relational DAS itself and the subclass of Exception that can be thrown. The Relational DAS has four publicly useful calls: the constructor, the createRootDataObject() call to obtain the root object of an empty data graph, the executeQuery() call to obtain a data graph containing data from a relational database, and the applyChanges() call to write changes made to a data graph back to the relational database.

SDO_DAS_Relational

The only object other than an SDO_DAS_Relational_Exception with which the application is expected to interact.

Métodos

  • __construct - construct the Relational DAS with a model derived from the passed metadata

  • createRootDataObject - obtain an otherwise empty data graph containing just the special root object

  • executeQuery - execute an SQL query passed as a literal string and return the results as a normalised data graph

  • executePreparedQuery - execute an SQL query passed as a prepared statement, with a list of values to substitute for placeholders, and return the results as a normalised data graph

  • applyChanges - examine the change summary in the data graph and apply those changes back to the database, subject to an assumption of optimistic concurrency

SDO_DAS_Relational_Exception

Is a subclass of PHP's Exception. It adds no behaviour to Exception. Thrown, with useful descriptive text, to signal errors in the metadata or unexpected failures to perform SQL operations.

Índice

  • SDO_DAS_Relational::applyChanges — Applies the changes made to a data graph back to the database.
  • SDO_DAS_Relational::__construct — Creates an instance of a Relational Data Access Service
  • SDO_DAS_Relational::createRootDataObject — Returns the special root object in an otherwise empty data graph. Used when creating a data graph from scratch.
  • SDO_DAS_Relational::executePreparedQuery — Executes an SQL query passed as a prepared statement, with a list of values to substitute for placeholders, and return the results as a normalised data graph.
  • SDO_DAS_Relational::executeQuery — Executes a given SQL query against a relational database and returns the results as a normalised data graph.
Limitations
SDO_DAS_Relational::applyChanges
SDO-DAS-Relational


Applies the changes made to a data graph back to the database.

SDO-DAS-Relational Funções
SDO_DAS_Relational::__construct
SDO-DAS-Relational Funções
PHP Manual

SDO_DAS_Relational::applyChanges

(^)

SDO_DAS_Relational::applyChanges — Applies the changes made to a data graph back to the database.

Descrição

void SDO_DAS_Relational::applyChanges ( PDO $database_handle , SDODataObject $root_data_object )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Given a PDO database handle and the special root object of a data graph, examine the change summary in the datagraph and applies the changes to the database. The changes that it can apply can be creations of data objects, deletes of data objects, and modifications to properties of data objects.

Parâmetros

PDO_database_handle

Constructed using the PDO extension. A typical line to construct a PDO database handle might look like this:

$dbh = new PDO("mysql:dbname=COMPANYDB;host=localhost",DATABASE_USER,DATABASE_PASSWORD);

root_data_object

The special root object which is at the top of every SDO data graph.

Valor Retornado

None. Note however that the datagraph that was passed is still intact and usable. Furthermore, if data objects were created and written back to a table with autogenerated primary keys, then those primary keys will now be set in the data objects. If the changes were successfully written, then the change summary associated with the datagraph will have been cleared, so that it is possible to now make further changes to the data graph and apply those changes in turn. In this way it is possible to work with the same data graph and apply changes repeatedly.

Erros

SDO_DAS_Relational::applyChanges() can throw an SDO_DAS_Relational_Exception if it is unable to apply all the changes correctly.

The Relational DAS starts a database transaction before beginning to apply the changes and will commit the transaction only if they are all successful. The Relational DAS generates qualified update and delete statements which contain a where clause that specifies that the row to be updated or deleted must contain the same values that it did when the data was first retrieved. This is how the optimistic concurrency is implemented. If any of the qualified update or delete statements fails to update or delete their target row, it may be because the data has been altered in the database in the meantime. In any event, if any update fails for any reason, the transaction is rolled back and an exception thrown. The exception will contain the generated SQL statement that failed.

The Relational DAS also catches any PDO exceptions and obtains PDO diagnostic information which it includes in an SDO_DAS_Relational_Exception which it then throws.

Exemplos

Please see the Examples section in the general information about the Relational DAS for many examples of calling this method. Please see also the section on Tracing to see how you can see what SQL statements are generated by the Relational DAS.

SDO-DAS-Relational Funções
SDO_DAS_Relational::__construct
SDO-DAS-Relational Funções


Creates an instance of a Relational Data Access Service

SDO_DAS_Relational::applyChanges
SDO_DAS_Relational::createRootDataObject
SDO-DAS-Relational Funções
PHP Manual

SDO_DAS_Relational::__construct

(^)

SDO_DAS_Relational::__construct — Creates an instance of a Relational Data Access Service

Descrição

SDO_DAS_Relational SDO_DAS_Relational::__construct ( array $database_metadata [, string $application_root_type [, array $SDO_containment_references_metadata ]] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Constructs an instance of a Relational Data Access Service from the passed metadata.

Parâmetros

database_metadata

An array containing one or more table definitions, each of which is an associative array containing the keys name, columns, PK, and optionally, FK. For a full discussion of the metadata, see the metadata section in the general information about the Relational DAS.

application_root_type

The root of each data graph is an object of a special root type and the application data objects come below that. Of the various application types in the SDO model, one has to be the application type immediately below the root of the data graph. If there is only one table in the database metadata, so the application root type can be inferred, this argument can be omitted.

SDO_containment_references_metadata

An array containing one or more definitions of a containment relation, each of which is an associative array containing the keys parent and child. The containment relations describe how the types in the model are connected to form a tree. The type specified as the application root type must be present as one of the parent types in the containment references. If the application only needs to work with one table at a time, and there are no containment relations in the model, this argument can be omitted. For a full discussion of the metadata, see the metadata section in the general information about the Relational DAS.

Valor Retornado

Returns an SDO_DAS_Relational object on success.

Erros

SDO_DAS_Relational::__construct() throws a SDO_DAS_Relational_Exception if any problems are found in the metadata.

Exemplos

For a full discussion of the metadata, see the metadata section in the general information about the Relational DAS.

SDO_DAS_Relational::applyChanges
SDO_DAS_Relational::createRootDataObject
SDO-DAS-Relational Funções


Returns the special root object in an otherwise empty data graph. Used when creating a data graph from scratch.

SDO_DAS_Relational::__construct
SDO_DAS_Relational::executePreparedQuery
SDO-DAS-Relational Funções
PHP Manual

SDO_DAS_Relational::createRootDataObject

(^)

SDO_DAS_Relational::createRootDataObject — Returns the special root object in an otherwise empty data graph. Used when creating a data graph from scratch.

Descrição

SDODataObject SDO_DAS_Relational::createRootDataObject ( void )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Returns the special root object at the top of an otherwise empty data graph. This call is used when the application wants to create a data graph from scratch, without having called executeQuery() to create a data graph.

The special root object has one multi-valued containment property, with a name of the application root type that was passed when the Relational DAS was constructed. The property can take values of only that type. The only thing that the application can usefully do with the root type is to call createDataObject() on it, passing the name of the application root type, in order to create a data object of their own application type.

Parâmetros

None.

Valor Retornado

The root object.

Erros

None.

Exemplos

Please see the Examples section in the general information about the Relational DAS for many examples of calling this method.

SDO_DAS_Relational::__construct
SDO_DAS_Relational::executePreparedQuery
SDO-DAS-Relational Funções


Executes an SQL query passed as a prepared statement, with a list of values to substitute for placeholders, and return the results as a normalised data graph.

SDO_DAS_Relational::createRootDataObject
SDO_DAS_Relational::executeQuery
SDO-DAS-Relational Funções
PHP Manual

SDO_DAS_Relational::executePreparedQuery

(^)

SDO_DAS_Relational::executePreparedQuery — Executes an SQL query passed as a prepared statement, with a list of values to substitute for placeholders, and return the results as a normalised data graph.

Descrição

SDODataObject SDO_DAS_Relational::executePreparedQuery ( PDO $database_handle , PDOStatement $prepared_statement , array $value_list [, array $column_specifier ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Executes a given query against the relational database, using the supplied PDO database handle. Differs from the simpler executeQuery() in that it takes a prepared statement and a list of values. This is the appropriate call to use either when the statement is to executed a number of times with different arguments, and there is therefore a performance benefit to be had from preparing the statement only once, or when the SQL statement is to contain varying values taken from a source that cannot be completely trusted. In this latter case it may be unsafe to construct the SQL statement by simply concatenating the parts of the statement together, since the values may contain pieces of SQL. To guard against this, a so-called SQL injection attack, it is safer to prepare the SQL statement with placeholders (also known as parameter markers, denoted by '?') and supply a list of the values to be substituted as a separate argument. Otherwise this function is the same as executeQuery() in that it uses the model that it built from the metadata to interpret the result set and returns a data graph.

Parâmetros

PDO_database_handle

Constructed using the PDO extension. A typical line to construct a PDO database handle might look like this:

$dbh = new PDO("mysql:dbname=COMPANYDB;host=localhost",DATABASE_USER,DATABASE_PASSWORD);

prepared_statement

A prepared SQL statement to be executed against the database. This will have been prepared by PDO's prepare() method.

value_list

An array of the values to be substituted into the SQL statement in place of the placeholders. In the event that there are no placeholders or parameter markers in the SQL statement then this argument can be specified as NULL or as an empty array;

column_specifier

The Relational DAS needs to examine the result set and for every column, know which table and which column of that table it came from. In some circumstances it can find this information for itself, but sometimes it cannot. In these cases a column specifier is needed, which is an array that identifies the columns. Each entry in the array is simply a string in the form table-name.column_name.

The column specifier is needed when there are duplicate column names in the database metadata, For example, in the database used within the examples, all the tables have both a id and a name column. When the Relational DAS fetches the result set from PDO it can do so with the PDO_FETCH_ASSOC attribute, which will cause the columns in the results set to be labelled with the column name, but will not distinguish duplicates. So this will only work when there are no duplicates possible in the results set.

To summarise, specify a column specifier array whenever there is any uncertainty about which column could be from which table and only omit it when every column name in the database metadata is unique.

All of the examples in the Examples use a column specifier. There is one example in the Scenarios directory of the installation that does not: that which works with just the employee table, and because it works with just one table, there can not exist duplicate column names.

Valor Retornado

Returns a data graph. Specifically, it returns a root object of a special type. Under this root object will be the data from the result set. The root object will have a multi-valued containment property with the same name as the application root type specified on the constructor, and that property will contain one or more data objects of the application root type.

In the event that the query returns no data, the special root object will still be returned but the containment property for the application root type will be empty.

Erros

SDO_DAS_Relational::executePreparedQuery() can throw an SDO_DAS_Relational_Exception if it is unable to construct the data graph correctly. This can occur for a number of reasons: for example if it finds that it does not have primary keys in the result set for all the objects. It also catches any PDO exceptions and obtains PDO diagnostic information which it includes in an SDO_DAS_Relational_Exception which it then throws.

Exemplos

Exemplo #1 Retrieving a data object using executePreparedQuery()

In this example a single data object is retrieved from the database - or possibly more than one if there is more than one company called 'Acme'. For each company returned, the name and id properties are echoed.

Other examples of the use of executePreparedQuery() can be found in the example code supplied in sdo/DAS/Relational/Scenarios.

<?php
require_once 'SDO/DAS/Relational.php';
require_once 'company_metadata.inc.php';

/**************************************************************
 * Construct the DAS with the metadata
 ***************************************************************/
$das = new SDO_DAS_Relational ($database_metadata,'company',$SDO_reference_metadata);

/**************************************************************
 * Get a database connection
 ***************************************************************/
$dbh = new PDO(PDO_DSN,DATABASE_USER,DATABASE_PASSWORD);

/**************************************************************
 * Issue a query to obtain a company object - possibly more if they exist
 * Use a prepared query with a placeholder.
 ***************************************************************/
$name = 'Acme';
$pdo_stmt = $dbh->prepare('select name, id from company where name=?');
$root = $das->executePreparedQuery(
    $dbh,
    $pdo_stmt,
    array($name),
    array('company.name', 'company.id'));

/**************************************************************
 * Echo name and id
 ***************************************************************/
foreach ($root['company'] as $company) {
    echo "Company obtained from the database has name = " .
    $company['name'] . " and id " . $company['id'] . "\n";
}
?>

SDO_DAS_Relational::createRootDataObject
SDO_DAS_Relational::executeQuery
SDO-DAS-Relational Funções


Executes a given SQL query against a relational database and returns the results as a normalised data graph.

SDO_DAS_Relational::executePreparedQuery
SDO DAS XML
SDO-DAS-Relational Funções
PHP Manual

SDO_DAS_Relational::executeQuery

(^)

SDO_DAS_Relational::executeQuery — Executes a given SQL query against a relational database and returns the results as a normalised data graph.

Descrição

SDODataObject SDO_DAS_Relational::executeQuery ( PDO $database_handle , string $SQL_statement [, array $column_specifier ] )
Aviso

Esta função é EXPERIMENTAL. O comportamento desta função, seu nome, incluindo toda documentação pode ser modificado sem aviso em futuras versões do PHP. Esta função deve ser usada por sua própria conta e risco.

Executes a given query against the relational database, using the supplied PDO database handle. Uses the model that it built from the metadata to interpret the result set. Returns a data graph.

Parâmetros

PDO_database_handle

Constructed using the PDO extension. A typical line to construct a PDO database handle might look like this:

$dbh = new PDO("mysql:dbname=COMPANYDB;host=localhost",DATABASE_USER,DATABASE_PASSWORD);

SQL_statement

The SQL statement to be executed against the database.

column_specifier

The Relational DAS needs to examine the result set and for every column, know which table and which column of that table it came from. In some circumstances it can find this information for itself, but sometimes it cannot. In these cases a column specifier is needed, which is an array that identifies the columns. Each entry in the array is simply a string in the form table-name.column_name.

The column specifier is needed when there are duplicate column names in the database metadata. For example, in the database used within the examples, all the tables have both a id and a name column. When the Relational DAS fetches the result set from PDO it can do so with the PDO_FETCH_ASSOC attribute, which will cause the columns in the results set to be labelled with the column name, but will not distinguish duplicates. So this will only work when there are no duplicates possible in the results set.

To summarise, specify a column specifier array whenever there is any uncertainty about which column could be from which table and only omit it when every column name in the database metadata is unique.

All of the examples in the Examples use a column specifier. There is one example in the Scenarios directory of the installation that does not: that which works with just the employee table, and because it works with just one table, there can not exist duplicate column names.

Valor Retornado

Returns a data graph. Specifically, it returns a root object of a special type. Under this root object will be the data from the result set. The root object will have a multi-valued containment property with the same name as the application root type specified on the constructor, and that property will contain one or more data objects of the application root type.

In the event that the query returns no data, the special root object will still be returned but the containment property for the application root type will be empty.

Erros

SDO_DAS_Relational::executeQuery() can throw an SDO_DAS_Relational_Exception if it is unable to construct the data graph correctly. This can occur for a number of reasons: for example if it finds that it does not have primary keys in the result set for all the objects. It also catches any PDO exceptions and obtains PDO diagnostic information which it includes in an SDO_DAS_Relational_Exception which it then throws.

Exemplos

Please see the Examples section in the general information about the Relational DAS for many examples of calling this method.

SDO_DAS_Relational::executePreparedQuery
SDO DAS XML
SDO-DAS-Relational Funções


SDO XML Data Access Service

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • SDO DAS XML Funções
    • SDO_DAS_XML_Document::getRootDataObject — Returns the root SDO_DataObject
    • SDO_DAS_XML_Document::getRootElementName — Returns root element's name
    • SDO_DAS_XML_Document::getRootElementURI — Returns root element's URI string
    • SDO_DAS_XML_Document::setEncoding — Sets the given string as encoding
    • SDO_DAS_XML_Document::setXMLDeclaration — Sets the xml declaration
    • SDO_DAS_XML_Document::setXMLVersion — Sets the given string as xml version
    • SDO_DAS_XML::addTypes — To load a second or subsequent schema file to a SDO_DAS_XML object
    • SDO_DAS_XML::create — To create SDO_DAS_XML object for a given schema file
    • SDO_DAS_XML::createDataObject — Creates SDO_DataObject for a given namespace URI and type name
    • SDO_DAS_XML::createDocument — Creates an XML Document object from scratch, without the need to load a document from a file or string.
    • SDO_DAS_XML::loadFile — Returns SDO_DAS_XML_Document object for a given path to xml instance document
    • SDO_DAS_XML::loadString — Returns SDO_DAS_XML_Document for a given xml instance string
    • SDO_DAS_XML::saveFile — Saves the SDO_DAS_XML_Document object to a file
    • SDO_DAS_XML::saveString — Saves the SDO_DAS_XML_Document object to a string
SDO_DAS_Relational::executeQuery
Introdução
Manipulação de XML


Introdução

In order to use the XML Data Access Service for Service Data Objects, you will need to understand some of the concepts behind SDO: the data graph, the data object, XPath and property expressions, and so on. If you are not familiar with these ideas, you might want to look first at the section on SDO.

The job of the XML DAS is to move data between the application and an XML data source, which can be either a file or a URL. SDOs are always created and maintained according to a model which defines type names and what property names each type may have. For data which is from XML, this SDO model is built from a schema file written in XML schema language (an xsd file). This schema file is usually passed to the create method when the XMLDAS is initialised. The » SDO 2.0 specification defines the mapping between XML types and SDO types. There are a number of small limitations in the PHP support - not everything which is in the specification can be done - and these limitations are summarised in a later section.

SDO DAS XML
Instalação/Configuração
SDO DAS XML


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SDO DAS XML


Dependências

The SDO XML Data Access Service requires PHP 5.1.0 or higher. It is packaged with the SDO extension and requires SDO to have been installed. See the SDO installation instructions for the details of how to do this.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

The XML Data Access Service is packaged and installed as part of the SDO extension. Please Refer SDO installation instructions.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
SDO DAS XML


Exemplos

Several of the following examples are based on the letter example described in the SDO documentation. The examples assume the XML Schema for the letter is contained in a file letter.xsd and the letter instance is in the file letter.xml. These two files are reproduced here:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:letter="http://letterSchema"
  targetNamespace="http://letterSchema">
  <xsd:element name="letters" type="letter:FormLetter"/>
  <xsd:complexType name="FormLetter" mixed="true">
    <xsd:sequence>
      <xsd:element name="date" minOccurs="0" type="xsd:string"/>
      <xsd:element name="firstName" minOccurs="0" type="xsd:string"/>
      <xsd:element name="lastName" minOccurs="0" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

<letter:letters xmlns:letter="http://letterSchema">
  <date>March 1, 2005</date>
  Mutual of Omaha
  Wild Kingdom, USA
  Dear
  <firstName>Casy</firstName>
  <lastName>Crocodile</lastName>
  Please buy more shark repellent.
  Your premium is past due.
</letter:letters>

Exemplo #1 Loading, altering, and saving an XML document

The following example shows how an XML document can be loaded from a file, altered, and written back.

<?php
/**
 * Load, update, and save an XML document
 */
try {
   $xmldas = SDO_DAS_XML::create("letter.xsd");
   $document = $xmldas->loadFile("letter.xml");
   $root_data_object = $document->getRootDataObject();
   $root_data_object->date = "September 03, 2004";
   $root_data_object->firstName = "Anantoju";
   $root_data_object->lastName = "Madhu";
   $xmldas->saveFile($document, "letter-out.xml");
   echo "New file has been written:\n";
   print file_get_contents("letter-out.xml");
} catch (SDO_Exception $e) {
   print($e->getMessage());
}
?>

An instance of the XML DAS is first obtained from the SDO_DAS_XML::create() method, which is a static method of the SDO_DAS_XML class. The location of the xsd is passed as a parameter. Once we have an instance of the XML DAS initialised with a given schema, we can use it to load the instance document using the loadFile() method. There is also a loadString() method if you want to load an XML instance document from a string. If the instance document loads successfully, you will be returned an object of type SDO_DAS_XML_Document, on which you can call the getRootDataObject() method to get the SDO data object which is the root of the SDO data graph. You can then use SDO operations to change the graph. In this example we alter the date, firstName, and lastName properties. Then we use the saveFile() method to write the changed document back to the file system. The saveFile method has an optional extra integer argument which if specified will cause the XML DAS to format the XML, using the integer as the amount to indent by at each change in level on the document.

This will write the following to letter-out.xml.

<?xml version="1.0" encoding="UTF-8"?>
<FormLetter xmlns="http://letterSchema" xsi:type="FormLetter" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <date>September 03, 2004</date>
  Mutual of Omaha
  Wild Kingdom, USA
  Dear
  <firstName>Anantoju</firstName>
  <lastName>Madhu</lastName>
  Please buy more shark repellent.
  Your premium is past due.
</FormLetter>

Exemplo #2 Creating a new XML document

The previous example loaded the document from a file. This example shows how to create an SDO data graph in memory. In this example it is then saved to an XML string. Furthermore, because the letter contains both structured and unstructured content, it uses the Sequence API as well assignments to properties to construct the data graph.

<?php
/**
 * Create an XML document from scratch
 */
try {
   $xmldas = SDO_DAS_XML::create("letter.xsd");
   try {
       $doc = $xmldas->createDocument();
       $rdo = $doc->getRootDataObject();
       $seq = $rdo->getSequence();
       $seq->insert("April 09, 2005", NULL, 'date');
       $seq->insert("Acme Inc. ", NULL, NULL);
       $seq->insert("United Kingdom. ");
       $seq->insert("Dear", NULL, NULL);
       $seq->insert("Tarun", NULL, "firstName");
       $seq->insert("Nayaraaa", NULL, "lastName");
       $rdo->lastName = "Nayar";
       $seq->insert("Please note that your order number ");
       $seq->insert(12345);
       $seq->insert(" has been dispatched today. Thanks for your business with us.");
       print($xmldas->saveString($doc));
   } catch (SDO_Exception $e) {
       print($e);
   }
} catch (SDO_Exception $e) {
   print("Problem creating an XML document: " . $e->getMessage());
}
?>

The createDocument() method on the XML DAS returns a document object with a single root data object corresponding to an empty document element. The element name of the document element is known from the schema file. If there is any ambiguity about what the document element is, as there can be when more than one schema has been loaded into the same XML DAS, the element name and the namespace URI can be passed to the createDocument() method.

This will emit the following output (line breaks have been inserted for readability):

<?xml version="1.0" encoding="UTF-8"?>
<FormLetter xmlns="http://letterSchema" xsi:type="FormLetter"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<date>April 09, 2005</date>
Acme Inc. United Kingdom.
Dear
<firstName>Tarun</firstName>
<lastName>Nayar</lastName>
Please note that your order number 12345 has been
dispatched today. Thanks for your business with us.
</FormLetter>

Exemplo #3 Setting XML document properties

This third example shows you how to set the XML version and encoding on the document object. These will be used when the XML is written out. If no XML declaration is wanted at all (perhaps you want to generate the XML as a string to embed in something) then you can use the setXMLDeclaration() method to suppress it.

<?php
/**
 * Illustrate the calls that control the XML declaration
 */
   $xmldas = SDO_DAS_XML::create("letter.xsd");
   $document = $xmldas->loadFile("letter.xml");
   $document->setXMLVersion("1.1");
   $document->setEncoding("ISO-8859-1");
   print($xmldas->saveString($document));
?>

The XML version and encoding are set in the XML declaration at the top of the XML document.

<?xml version="1.1" encoding="utf-8"?>
.../...

Exemplo #4 Using an open type

This fourth example illustrates the use of an SDO open type and the use of the createDataObject() method. For this example we use the following two schema:

<schema
  xmlns="http://www.w3.org/2001/XMLSchema">

  <element name="jungle">
    <complexType>
      <sequence>
        <any minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>

</schema>

Note the presence of the any element in the definition. This first schema defines the jungle complex type as containing a sequence of any other type. The other types that the example will use are defined in a second schema file:

<schema xmlns= "http://www.w3.org/2001/XMLSchema">

   <complexType name="snakeType">
     <sequence>
       <element name= "name" type="string"/>
       <element name= "length" type="positiveInteger" />
     </sequence>
   </complexType>

   <complexType name="bearType">
     <sequence>
       <element name= "name" type="string"/>
       <element name= "weight" type="positiveInteger" />
     </sequence>
   </complexType>

   <complexType name="pantherType">
     <sequence>
       <element name= "name" type="string"/>
       <element name= "colour" type="string" />
     </sequence>
   </complexType>

</schema>

Here is the example PHP code that uses these two schema files:

<?php

/**
 * Illustrate open types and the use of the addTypes() method
 */

$xmldas = SDO_DAS_XML::create();
$xmldas->addTypes("jungle.xsd"); // this is an open type i.e. the xsd specifies it can contain "any" type
$xmldas->addTypes('animalTypes.xsd');

$baloo            = $xmldas->createDataObject('','bearType');
$baloo->name      = "Baloo";
$baloo->weight    = 800;

$bagheera         = $xmldas->createDataObject('','pantherType');
$bagheera->name   = "Bagheera";
$bagheera->colour = 'inky black';

$kaa              = $xmldas->createDataObject('','snakeType');
$kaa->name        = "Kaa";
$kaa->length      = 25;

$document         = $xmldas->createDocument();
$do               = $document->getRootDataObject();
$do->bear         = $baloo;
$do->panther      = $bagheera;
$do->snake        = $kaa;

print($xmldas->saveString($document,2));

?>

These two schema files are loaded into the XML DAS with first the create() and addTypes() methods. The createDataObject() method is used to create three separate data objects. In each case the namespaceURI and typename of the type are passed to the createDataObject() method: in this example the namespace URI is blank because no namespace is used in the schema. Once the three data objects - representing a bear, a panther and a snake - have been created, a document object is created with the createDocument() method. In this case there is no ambiguity about what the document element of the document should be - as the second schema file only defines complex types, the document element can only be the global jungle element defined in the first schema. This document will have a single root data object corresponding to an empty document element jungle. As this is an open type, properties can be added at will. When the first assignment is made to $do->bear, a property bear is added to the root data object: likewise for the next two assignments. When the document is written out by the saveString() method, the resulting document is:

<?xml version="1.0" encoding="UTF-8"?>
<jungle xsi:type="jungle" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <bear xsi:type="bearType">
    <name>Baloo</name>
    <weight>800</weight>
  </bear>
  <panther xsi:type="pantherType">
    <name>Bagheera</name>
    <colour>inky black</colour>
  </panther>
  <snake xsi:type="snakeType">
    <name>Kaa</name>
    <length>25</length>
  </snake>
</jungle>

Exemplo #5 Finding out what you can from the document

This example is intended to illustrate how you can find the element name and namespace of the document element from the XML Document object, and the SDO type and namespace from the root data object of the XML data object, and how they relate to one another. This can be difficult to understand because there are four method calls: two can be made against the Document object, and two that can be made against any data object including the root data object. Because of the rules that define how the SDO model is derived from the XML model, when the data object concerned is the root object that represents the document object for the document, only three possible values can come back from these four method calls.

The two method calls that can be made against the document are getRootElementName() and getRootEelementURI(). These return the element name and namespace of the document element, respectively.

The two method calls that can be made against any data object are getTypeName() and getTypeNamespaceURI(). These return the SDO type name and type namespace of the data object, respectively.

Always, calling getRootElementURI() on the document object will return the same value as calling getNamespaceURI() on the root data object. Essentially, the information is all derived from the first few lines of the schema file, where there are three distinct pieces of information. For illustration, here again are the first few lines of the letter.xsd that we used above.

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:letter="http://letterSchema"
            targetNamespace="http://letterSchema">

  <xsd:element name="letters" type="letter:FormLetter"/>

  <xsd:complexType name="FormLetter" mixed="true">
    .../...

The three important values are:

  • letters, the name of the document element

  • FormLetter, the name of the complex type of the document element. This is also the name of the SDO type of the root data object.

  • http://letterSchema, the namespace to which the document element belongs. This is also the namespaceURI of the SDO type of the root data object.

It is part of the XML-SDO mapping rules that when the SDO model is built from the schema file, the typename and namespaceURI of the SDO types for the root element are taken from those of the complex type of the document element, where it exists. Hence in this example the typename of the root data object is FormLetter. In the event that there is no separate complex type definition for the document element, when the type is defined inline and is anonymous, the SDO type name will be the same as the element name.

The following program loads the letter document and checks the return values from each of the four calls.

<?php
/**
 * Finding out what you can about the document and document element
 * This can be quite hard to understand because there are four calls
 * Two calls are made against the document
 * Two calls are made against the root data object and its model
 * Because of the SDO-XML mapping rules and how the SDO model is derived
 * from the XML model, only three possible values can come back from these four calls.
 * Always, $document->getRootElementURI() == (type of root data object)->namespaceURI
 * Essentially, it all comes form the first few lines of the xsd:
 * <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 *   xmlns:letter="http://letterSchema"
 *   targetNamespace="http://letterSchema">
 *   <xsd:element name="letters" type="letter:FormLetter"/>
 */

$xmldas = SDO_DAS_XML::create("letter.xsd");
$document = $xmldas->loadFile("letter.xml");
$root_do = $document->getRootDataObject();

/**
 * The "root element name" is the element name of the document element
 * in this case 'letters'
 * This matches the 'name' attribute of the document element in the xsd and matches
 * the element name from the xml
 */
echo "The document element name is " . $document->getRootElementName() . "\n";
assert($document->getRootElementName() == 'letters'); // a property of the document

/**
 * The "root element URI" is the namespace part of the element name of the document element
 * in this case 'http://letterSchema' since 'letters' is in that namespace
 * This is taken from the xsd and matches the namespace picked up from the xml
 */
echo "The document element is in the namespace " . $document->getRootElementURI() . "\n";
assert($document->getRootElementURI() == 'http://letterSchema'); // a property of the document

/**
 * The type name is taken from the SDO model
 * The XML-SDO mapping rules make this either:
 *   The name of the complexType if there is one (in this case there is)
 *   The document element name if there no complexType
 * This is taken from the xsd
 */
echo "The type name of the root data object is " . $root_do->getTypeName() . "\n";
assert($root_do->getTypeName() == 'FormLetter');

/**
 * The type's namespaceURI is taken from the SDO model
 * The XML-SDO mapping rules ensure that this will always be the same as
 * the namepace URI of the document element
 */
echo "The namespaceURI of the root data object is " . $root_do->getTypeNamespaceURI() . "\n";
assert($root_do->getTypeNamespaceURI() == 'http://letterSchema');

?>

The output from this program is as follows:

The document element name is letters
The document element is in the namespace http://letterSchema
The type name of the root data object is FormLetter
The namespaceURI of the root data object is http://letterSchema

Exemplo #6 Printing the SDO model

The XML DAS provides a simple means to see what types and properties have been loaded. The php "print" or "echo" instruction will print out the types and properties.

<?php
/**
 * Illustrate printing out the model
 */

$xmldas = SDO_DAS_XML::create("letter.xsd");
print $xmldas;

?>

The output from this program is as follows:

object(SDO_XML_DAS)#1 {
18 types have been defined. The types and their properties are::
1. commonj.sdo:BigDecimal
2. commonj.sdo:BigInteger
3. commonj.sdo:Boolean
4. commonj.sdo:Byte
5. commonj.sdo:Bytes
6. commonj.sdo:ChangeSummary
7. commonj.sdo:Character
8. commonj.sdo:DataObject
9. commonj.sdo:Date
10. commonj.sdo:Double
11. commonj.sdo:Float
12. commonj.sdo:Integer
13. commonj.sdo:Long
14. commonj.sdo:Short
15. commonj.sdo:String
16. commonj.sdo:URI
17. http://letterSchema:FormLetter
    - date (commonj.sdo:String)
    - firstName (commonj.sdo:String)
    - lastName (commonj.sdo:String)
18. http://letterSchema:RootType
    - letters (http://letterSchema:FormLetter)
Constantes pré-definidas
SDO DAS XML Funções
SDO DAS XML


SDO DAS XML Funções

Classes pré-definidas

The XML DAS provides two main classes. The first is SDO_DAS_XML which is the main class used to fetch the data from the XML source and used to write the data back. The second is the SDO_DAS_XML_Document class, which represents the data in the XML document.

There are also some exception classes which can be thrown if errors are found when looking for or parsing the xsd or xml files.

SDO_DAS_XML

This is the main class of the XML DAS, which is used fetch the data from the xml source and also used to write the data back. Other than the methods to load and save xml files,

Métodos

  • create This is a static method available in the SDO_DAS_XML class. Used to construct an SDO_DAS_XML object.

  • addTypes Works in much the same way as create() but used to add the contents of a second or subsequent schema file to an XML DAS that has already been created.

  • createDataObject Can be used to construct an SDO data object of a given type.

  • createDocument Can be used to construct an XML Document object from scratch.

  • loadFile Loads the xml instance document from a file. This file can be at local file system or it can be on a remote host.

  • loadString same as the above method. Loads the xml instance which is available as string.

  • saveFile save SDO_DAS_XML_Document object as a xml file.

  • saveString save SDO_DAS_XML_Document object as a xml string.

SDO_DAS_XML_Document

This class can be used to get to the name and namespace of the document element, and to get to the root data object of the document. Lastly, it can also be used to set the XML version and encoding of a document on output.

Métodos

  • getRootDataObject gets the root DataObject.

  • getRootElementName gets the root DataObject's name.

  • getRootElementURI gets the root DataObject's URI.

  • setEncoding sets the encoding string with the given value.

  • setXMLDeclaraion to set/unset the xml declaration.

  • setXMLVersion sets the xml version with the given value.

SDO_DAS_XML_ParserException

Is a subclass of SDO_Exception. Thrown for any parser errors while loading the xsd/xml file.

SDO_DAS_XML_FileException

Is a subclass of SDO_Exception. Thrown by any of the methods that load data from a file, when the file cannot be found.

Limitations compared with SDO 2.0 specification

The » SDO 2.0 specification defines the mapping between XML types and SDO types. With Java SDO, this mapping is implemented by the XMLHelper. With SDO for PHP, this mapping is implemented by the XML Data Access Service. The XML DAS implements the mapping described in the SDO 2.0 specification with some restrictions. A detailed list is of the limitations is:

XML Simple Types

  1. Simple Type with sdoJava:instanceClass - no PHP equivalent provided.

  2. Simple Type with sdoJava:extendedInstanceClass - no PHP equivalent provided.

  3. Simple Type with list of itemType.

  4. Simple Type with union.

XML Complex Types

  1. Complex Type with sdo:aliasName - no PHP support for SDO Type aliases.

XSD Attribute

  1. Attribute with sdo:aliasName - no PHP support for SDO property aliases.

  2. Attribute with default value - no PHP support for SDO property defaults.

  3. Attribute with fixed value - no PHP support for SDO read-only properties or default values.

  4. Attribute referencing a DataObject with sdo:propertyType - no support for sdo:propertyType="...".

  5. Attribute with bi-directional property to a DataObject with sdo:oppositeProperty and sdo:propertyType - no PHP support for SDO opposite.

XSD Elements

  1. Element with sdo:aliasName - no PHP support for SDO property aliases.

  2. Element with substitution group.

XSD Elements with Simple Type

  1. Element of SimpleType with default - no PHP support for SDO defaults

  2. Element of SimpleType with fixed value - no PHP support for SDO read-only properties or default values.

  3. Element of SimpleType with sdo:string - no support for sdo:string="true".

  4. Element referencing a DataObject with sdo:propertyType - no support for sdo:propertyType="..."

  5. Element with bi-directional reference to a DataObject with sdo:oppositeProperty and sdo:propertyType - no PHP support for SDO opposite.

Índice

  • SDO_DAS_XML_Document::getRootDataObject — Returns the root SDO_DataObject
  • SDO_DAS_XML_Document::getRootElementName — Returns root element's name
  • SDO_DAS_XML_Document::getRootElementURI — Returns root element's URI string
  • SDO_DAS_XML_Document::setEncoding — Sets the given string as encoding
  • SDO_DAS_XML_Document::setXMLDeclaration — Sets the xml declaration
  • SDO_DAS_XML_Document::setXMLVersion — Sets the given string as xml version
  • SDO_DAS_XML::addTypes — To load a second or subsequent schema file to a SDO_DAS_XML object
  • SDO_DAS_XML::create — To create SDO_DAS_XML object for a given schema file
  • SDO_DAS_XML::createDataObject — Creates SDO_DataObject for a given namespace URI and type name
  • SDO_DAS_XML::createDocument — Creates an XML Document object from scratch, without the need to load a document from a file or string.
  • SDO_DAS_XML::loadFile — Returns SDO_DAS_XML_Document object for a given path to xml instance document
  • SDO_DAS_XML::loadString — Returns SDO_DAS_XML_Document for a given xml instance string
  • SDO_DAS_XML::saveFile — Saves the SDO_DAS_XML_Document object to a file
  • SDO_DAS_XML::saveString — Saves the SDO_DAS_XML_Document object to a string
Exemplos
SDO_DAS_XML_Document::getRootDataObject
SDO DAS XML


Returns the root SDO_DataObject

SDO DAS XML Funções
SDO_DAS_XML_Document::getRootElementName
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::getRootDataObject

(^)

SDO_DAS_XML_Document::getRootDataObject — Returns the root SDO_DataObject

Descrição

SDO_DataObject SDO_DAS_XML_Document::getRootDataObject ( void )

Returns the root SDO_DataObject.

Parâmetros

Valor Retornado

Returns the root SDO_DataObject.

SDO DAS XML Funções
SDO_DAS_XML_Document::getRootElementName
SDO DAS XML Funções


Returns root element's name

SDO_DAS_XML_Document::getRootDataObject
SDO_DAS_XML_Document::getRootElementURI
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::getRootElementName

(^)

SDO_DAS_XML_Document::getRootElementName — Returns root element's name

Descrição

string SDO_DAS_XML_Document::getRootElementName ( void )

Returns root element's name.

Parâmetros

Valor Retornado

Returns root element's name.

SDO_DAS_XML_Document::getRootDataObject
SDO_DAS_XML_Document::getRootElementURI
SDO DAS XML Funções


Returns root element's URI string

SDO_DAS_XML_Document::getRootElementName
SDO_DAS_XML_Document::setEncoding
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::getRootElementURI

(^)

SDO_DAS_XML_Document::getRootElementURI — Returns root element's URI string

Descrição

string SDO_DAS_XML_Document::getRootElementURI ( void )

Returns root element's URI string.

Parâmetros

Valor Retornado

Returns root element's URI string.

SDO_DAS_XML_Document::getRootElementName
SDO_DAS_XML_Document::setEncoding
SDO DAS XML Funções


Sets the given string as encoding

SDO_DAS_XML_Document::getRootElementURI
SDO_DAS_XML_Document::setXMLDeclaration
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::setEncoding

(^)

SDO_DAS_XML_Document::setEncoding — Sets the given string as encoding

Descrição

void SDO_DAS_XML_Document::setEncoding ( string $encoding )

Sets the given string as encoding.

Parâmetros

encoding

Encoding string.

Valor Retornado

None.

SDO_DAS_XML_Document::getRootElementURI
SDO_DAS_XML_Document::setXMLDeclaration
SDO DAS XML Funções


Sets the xml declaration

SDO_DAS_XML_Document::setEncoding
SDO_DAS_XML_Document::setXMLVersion
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::setXMLDeclaration

(^)

SDO_DAS_XML_Document::setXMLDeclaration — Sets the xml declaration

Descrição

void SDO_DAS_XML_Document::setXMLDeclaration ( bool $xmlDeclatation )

Controls whether an XML declaration will be generated at the start of the XML document. Set to TRUE to generate the XML declaration, or FALSE to suppress it.

Parâmetros

xmlDeclatation

Boolean value to set the XML declaration.

Valor Retornado

None.

SDO_DAS_XML_Document::setEncoding
SDO_DAS_XML_Document::setXMLVersion
SDO DAS XML Funções


Sets the given string as xml version

SDO_DAS_XML_Document::setXMLDeclaration
SDO_DAS_XML::addTypes
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML_Document::setXMLVersion

(^)

SDO_DAS_XML_Document::setXMLVersion — Sets the given string as xml version

Descrição

void SDO_DAS_XML_Document::setXMLVersion ( string $xmlVersion )

Sets the given string as xml version.

Parâmetros

xmlVersion

xml version string.

Valor Retornado

None.

SDO_DAS_XML_Document::setXMLDeclaration
SDO_DAS_XML::addTypes
SDO DAS XML Funções


To load a second or subsequent schema file to a SDO_DAS_XML object

SDO_DAS_XML_Document::setXMLVersion
SDO_DAS_XML::create
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::addTypes

(^)

SDO_DAS_XML::addTypes — To load a second or subsequent schema file to a SDO_DAS_XML object

Descrição

void SDO_DAS_XML::addTypes ( string $xsd_file )

Load a second or subsequent schema file to an XML DAS that has already been created with the static method create(). Although the file may be any valid schema file, a likely reason for using this method is to add a schema file containing definitions of extra complex types, hence the name. See Example 4 of the parent document for an example.

Parâmetros

xsd_file

Path to XSD Schema file.

Valor Retornado

None if successful, otherwise throws an exception as described below.

Erros

SDO_TypeNotFoundException

Thrown if a type is not defined in the underlying model.

SDO_DAS_XML_ParserException

Thrown for any problems while parsing the given XSD File.

SDO_DAS_XML_FileException

Thrown if the specified file cannot be found.

SDO_DAS_XML_Document::setXMLVersion
SDO_DAS_XML::create
SDO DAS XML Funções


To create SDO_DAS_XML object for a given schema file

SDO_DAS_XML::addTypes
SDO_DAS_XML::createDataObject
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::create

(^)

SDO_DAS_XML::create — To create SDO_DAS_XML object for a given schema file

Descrição

SDO_DAS_XML SDO_DAS_XML::create ([ mixed $xsd_file [, string $key ]] )

This is the only static method of SDO_DAS_XML class. Used to instantiate SDO_DAS_XML object.

Parâmetros

xsd_file

Path to XSD Schema file. This is optional. If omitted a DAS will be created that only has the SDO base types defined. Schema files can then be loaded with the addTypes() method. Can be string or array of values.

key

Valor Retornado

Returns SDO_DAS_XML object on success otherwise throws an exception as described below.

Erros

SDO_TypeNotFoundException

Thrown if a type is not defined in the underlying model.

SDO_DAS_XML_ParserException

Thrown for any problems while parsing the given XSD File.

SDO_DAS_XML_FileException

Thrown if the specified file cannot be found.

SDO_DAS_XML::addTypes
SDO_DAS_XML::createDataObject
SDO DAS XML Funções


Creates SDO_DataObject for a given namespace URI and type name

SDO_DAS_XML::create
SDO_DAS_XML::createDocument
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::createDataObject

(^)

SDO_DAS_XML::createDataObject — Creates SDO_DataObject for a given namespace URI and type name

Descrição

SDO_DataObject SDO_DAS_XML::createDataObject ( string $namespace_uri , string $type_name )

Creates SDO_DataObject for a given namespace URI and type name. The type should be defined in the underlying model otherwise SDO_TypeNotFoundException will be thrown.

Parâmetros

namespace_uri

Namespace URI of the type name.

type_name

Type Name.

Valor Retornado

Returns SDO_DataObject on success.

Erros

SDO_TypeNotFoundException

Thrown if a type is not defined in the underlying model.

SDO_DAS_XML::create
SDO_DAS_XML::createDocument
SDO DAS XML Funções


Creates an XML Document object from scratch, without the need to load a document from a file or string.

SDO_DAS_XML::createDataObject
SDO_DAS_XML::loadFile
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::createDocument

(^)

SDO_DAS_XML::createDocument — Creates an XML Document object from scratch, without the need to load a document from a file or string.

Descrição

SDO_DAS_XML_Document SDO_DAS_XML::createDocument ([ string $document_element_name ] )
SDO_DAS_XML_Document SDO_DAS_XML::createDocument ( string $document_element_namespace_URI , string $document_element_name [, SDO_DataObject $dataobject ] )

Creates an XML Document object. This will contain just one empty root element on which none of the properties will have been set. The purpose of this call is to allow an application to create an XML document from scratch without the need to load a document from a file or string. The document that is created will be as if a document had been loaded that contained just a single empty document element with no attributes set or elements within it.

createDocument() may need to be told what the document element is. This will not be necessary in simple cases. When there is no ambiguity then no parameter need be passed to the method. However it is possible to load more than one schema file into the same XML DAS and in this case there may be more than one possible document element defined: furthermore it is even possible that there are two possible document elements that differ only in the namespace. To cope with these cases it is possible to specify either the document element name, or both the document element name and namespace to the method.

Parâmetros

document_element_name

The name of the document element. Only needed if there is more than one possibility.

document_element_namespace_URI

The namespace part of the document element name. Only needed if there is more than one possible document element with the same name.

dataobject

Valor Retornado

Returns an SDO_XML_DAS_Document object on success.

Erros

SDO_UnsupportedOperationException

Thrown if an element name or element name and namespace URI is passed, but not found in the underlying model.

SDO_DAS_XML::createDataObject
SDO_DAS_XML::loadFile
SDO DAS XML Funções


Returns SDO_DAS_XML_Document object for a given path to xml instance document

SDO_DAS_XML::createDocument
SDO_DAS_XML::loadString
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::loadFile

(^)

SDO_DAS_XML::loadFile — Returns SDO_DAS_XML_Document object for a given path to xml instance document

Descrição

SDO_XMLDocument SDO_DAS_XML::loadFile ( string $xml_file )

Constructs the tree of SDO_DataObjects from the given address to xml instance document. Returns SDO_DAS_XML_Document Object. Use SDO_DAS_XML_Document::getRootDataObject method to get root data object.

Parâmetros

xml_file

Path to Instance document. This can be a path to a local file or it can be a URL.

Valor Retornado

Returns SDO_DAS_XML_Document object on Success or throws exception as described.

Erros

SDO_TypeNotFoundException

Thrown if a type is not defined by the underlying model.

SDO_PropertyNotFoundException

Thrown if a property within a type is not defined in the underlying model.

SDO_DAS_XML_ParserException

Thrown for any problems while parsing the given XSD File.

SDO_DAS_XML_FileException

Thrown if the specified file cannot be found.

SDO_DAS_XML::createDocument
SDO_DAS_XML::loadString
SDO DAS XML Funções


Returns SDO_DAS_XML_Document for a given xml instance string

SDO_DAS_XML::loadFile
SDO_DAS_XML::saveFile
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::loadString

(^)

SDO_DAS_XML::loadString — Returns SDO_DAS_XML_Document for a given xml instance string

Descrição

SDO_DAS_XML_Document SDO_DAS_XML::loadString ( string $xml_string )

Constructs the tree of SDO_DataObjects from the given xml instance string. Returns SDO_DAS_XML_Document Object. Use SDO_DAS_XML_Document::getRootDataObject method to get root data object.

Parâmetros

xml_string

xml string.

Valor Retornado

Returns SDO_DAS_XML_Document object on Success or throws exception as described.

Erros

SDO_TypeNotFoundException

Thrown if a type is not defined by the underlying model.

SDO_PropertyNotFoundException

Thrown if the a property within a type is not defined in the underlying model.

SDO_DAS_XML_ParserException

Thrown for any problems while parsing the given XSD File.

SDO_DAS_XML::loadFile
SDO_DAS_XML::saveFile
SDO DAS XML Funções


Saves the SDO_DAS_XML_Document object to a file

SDO_DAS_XML::loadString
SDO_DAS_XML::saveString
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::saveFile

(^)

SDO_DAS_XML::saveFile — Saves the SDO_DAS_XML_Document object to a file

Descrição

void SDO_DAS_XML::saveFile ( SDO_XMLDocument $xdoc , string $xml_file [, int $indent ] )

Saves the SDO_DAS_XML_Document object to a file.

Parâmetros

xdoc

SDO_DAS_XML_Document object.

xml_file

xml file.

indent

Optional argument to specify that the xml should be formatted. A non-negative integer is the amount to indent each level of the xml. So, the integer 2, for example, will indent the xml so that each contained element is two spaces further to the right than its containing element. The integer 0 will cause the xml to be completely left-aligned. The integer -1 means no formatting - the xml will come out on one long line.

Valor Retornado

None.

Erros

SDO_DAS_XML_FileException

Thrown if the specified file cannot be found.

SDO_DAS_XML::loadString
SDO_DAS_XML::saveString
SDO DAS XML Funções


Saves the SDO_DAS_XML_Document object to a string

SDO_DAS_XML::saveFile
SimpleXML
SDO DAS XML Funções
PHP Manual

SDO_DAS_XML::saveString

(^)

SDO_DAS_XML::saveString — Saves the SDO_DAS_XML_Document object to a string

Descrição

string SDO_DAS_XML::saveString ( SDO_XMLDocument $xdoc [, int $indent ] )

Saves the SDO_DAS_XML_Document object to string.

Parâmetros

xdoc

SDO_DAS_XML_Document object.

indent

Optional argument to specify that the xml should be formatted. A non-negative integer is the amount to indent each level of the xml. So, the integer 2, for example, will indent the xml so that each contained element is two spaces further to the right than its containing element. The integer 0 will cause the xml to be completely left-aligned. The integer -1 means no formatting - the xml will come out on one long line.

Valor Retornado

xml string.

SDO_DAS_XML::saveFile
SimpleXML
SDO DAS XML Funções


SimpleXML

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
    • Basic usage
    • Dealing with XML errors
  • SimpleXMLElement — The SimpleXMLElement class
    • SimpleXMLElement::addAttribute — Adds an attribute to the SimpleXML element
    • SimpleXMLElement::addChild — Adds a child element to the XML node
    • SimpleXMLElement::asXML — Return a well-formed XML string based on SimpleXML element
    • SimpleXMLElement::attributes — Identifies an element's attributes
    • SimpleXMLElement::children — Finds children of given node
    • SimpleXMLElement::__construct — Creates a new SimpleXMLElement object
    • SimpleXMLElement::count — Counts the children of an element
    • SimpleXMLElement::getDocNamespaces — Returns namespaces declared in document
    • SimpleXMLElement::getName — Gets the name of the XML element
    • SimpleXMLElement::getNamespaces — Returns namespaces used in document
    • SimpleXMLElement::registerXPathNamespace — Creates a prefix/ns context for the next XPath query
    • SimpleXMLElement::saveXML — Sinônimo de SimpleXMLElement::asXML
    • SimpleXMLElement::xpath — Runs XPath query on XML data
  • Funções da SimpleXML
    • simplexml_import_dom — Recebe um objeto SimpleXMLElement de um nó DOM.
    • simplexml_load_file — Converte um arquivo XML em um objeto
    • simplexml_load_string — Transforma uma string XML em objeto
SDO_DAS_XML::saveString
Introdução
Manipulação de XML


Introdução

O SimpleXML provê um conjunto de ferramentas muito fácil e simples de usar para converter XML em objetos que podem ser processados normalmente com seletores de propriedades e iteradores de arrays.

SimpleXML
Instalação/Configuração
SimpleXML


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
SimpleXML


Dependências

A extensão SimpleXML requer PHP 5.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

A extensão SimpleXML é habilitada por padrão. Para desabilita-la, utilize --disable-simplexml nas opções de configuração.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
SimpleXML


Exemplos

Índice

  • Basic usage
  • Dealing with XML errors
Constantes pré-definidas
Basic usage
SimpleXML


Basic usage

Many examples in this reference require an XML string. Instead of repeating this string in every example, we put it into a file which we include in each example. This included file is shown in the following example section. Alternatively, you could create an XML document and read it with simplexml_load_file().

Exemplo #1 Include file example.php with XML string

<?php
$xmlstr = <<<XML
<?xml version='1.0' standalone='yes'?>
<movies>
 <movie>
  <title>PHP: Behind the Parser</title>
  <characters>
   <character>
    <name>Ms. Coder</name>
    <actor>Onlivia Actora</actor>
   </character>
   <character>
    <name>Mr. Coder</name>
    <actor>El Act&#211;r</actor>
   </character>
  </characters>
  <plot>
   So, this language. It's like, a programming language. Or is it a
   scripting language? All is revealed in this thrilling horror spoof
   of a documentary.
  </plot>
  <great-lines>
   <line>PHP solves all my web problems</line>
  </great-lines>
  <rating type="thumbs">7</rating>
  <rating type="stars">5</rating>
 </movie>
</movies>
XML;
?>

The simplicity of SimpleXML appears most clearly when one extracts a string or number from a basic XML document.

Exemplo #2 Getting <plot>

<?php
include 'example.php';

$xml = new SimpleXMLElement($xmlstr);

echo $xml->movie[0]->plot; // "So this language. It's like..."
?>

Accessing elements within an XML document that contain characters not permitted under PHP's naming convention (e.g. the hyphen) can be accomplished by encapsulating the element name within braces and the apostrophe.

Exemplo #3 Getting <line>

<?php
include 'example.php';

$xml = new SimpleXMLElement($xmlstr);

echo $xml->movie->{'great-lines'}->line; // "PHP solves all my web problems"
?>

Exemplo #4 Accessing non-unique elements in SimpleXML

When multiple instances of an element exist as children of a single parent element, normal iteration techniques apply.

<?php
include 'example.php';

$xml = new SimpleXMLElement($xmlstr);

/* For each <movie> node, we echo a separate <plot>. */
foreach ($xml->movie as $movie) {
   echo $movie->plot, '<br />';
}

?>

Exemplo #5 Using attributes

So far, we have only covered the work of reading element names and their values. SimpleXML can also access element attributes. Access attributes of an element just as you would elements of an array.

<?php
include 'example.php';

$xml = new SimpleXMLElement($xmlstr);

/* Access the <rating> nodes of the first movie.
 * Output the rating scale, too. */
foreach ($xml->movie[0]->rating as $rating) {
    switch((string) $rating['type']) { // Get attributes as element indices
    case 'thumbs':
        echo $rating, ' thumbs up';
        break;
    case 'stars':
        echo $rating, ' stars';
        break;
    }
}
?>

Exemplo #6 Comparing Elements and Attributes with Text

To compare an element or attribute with a string or pass it into a function that requires a string, you must cast it to a string using (string). Otherwise, PHP treats the element as an object.

<?php
include 'example.php';

$xml = new SimpleXMLElement($xmlstr);

if ((string) $xml->movie->title == 'PHP: Behind the Parser') {
    print 'My favorite movie.';
}

htmlentities((string) $xml->movie->title);
?>

Exemplo #7 Comparing Two Elements

Two SimpleXMLElements are considered different even if they point to the same element since PHP 5.2.0.

<?php
$el1 = new SimpleXMLElement($xmlstr);
$el2 = new SimpleXMLElement($xmlstr);
var_dump($el1 == $el2); // false since PHP 5.2.0
?>

Exemplo #8 Using XPath

SimpleXML includes built-in XPath support. To find all <character> elements:

<?php
include 'example.php';
$xml = new SimpleXMLElement($xmlstr);

foreach ($xml->xpath('//character') as $character) {
    echo $character->name, 'played by ', $character->actor, '<br />';
}
?>

'//' serves as a wildcard. To specify absolute paths, omit one of the slashes.

Exemplo #9 Setting values

Data in SimpleXML doesn't have to be constant. The object allows for manipulation of all of its elements.

<?php
include 'example.php';
$xml = new SimpleXMLElement($xmlstr);

$xml->movie[0]->characters->character[0]->name = 'Miss Coder';

echo $xml->asXML();
?>

The above code will output a new XML document, just like the original, except that the new XML will change Ms. Coder to Miss Coder.

Exemplo #10 Adding elements and attributes

Since PHP 5.1.3, SimpleXML has had the ability to easily add children and attributes.

<?php
include 'example.php';
$xml = new SimpleXMLElement($xmlstr);

$character = $xml->movie[0]->characters->addChild('character');
$character->addChild('name', 'Mr. Parser');
$character->addChild('actor', 'John Doe');

$rating = $xml->movie[0]->addChild('rating', 'PG');
$rating->addAttribute('type', 'mpaa');

echo $xml->asXML();
?>

The above code will output an XML document based on the original but having a new character and rating.

Exemplo #11 DOM Interoperability

PHP has a mechanism to convert XML nodes between SimpleXML and DOM formats. This example shows how one might change a DOM element to SimpleXML.

<?php
$dom = new domDocument;
$dom->loadXML('<books><book><title>blah</title></book></books>');
if (!$dom) {
     echo 'Error while parsing the document';
     exit;
}

$s = simplexml_import_dom($dom);

echo $s->book[0]->title;
?>

Exemplos
Dealing with XML errors
Exemplos


Dealing with XML errors

Dealing with XML errors when loading documents is a very simple task. Using the libxml functionality it is possible to suppress all XML errors when loading the document and then iterate over the errors.

The libXMLError object, returned by libxml_get_errors(), contains several properties including the message, line and column (position) of the error.

Exemplo #1 Loading broken XML string

<?php
libxml_use_internal_errors(true);
$sxe = simplexml_load_string("<?xml version='1.0'><broken><xml></broken>");
if (!$sxe) {
    echo "Failed loading XML\n";
    foreach(libxml_get_errors() as $error) {
        echo "\t", $error->message;
    }
}

O exemplo acima irá imprimir:

Failed loading XML
    Blank needed here
    parsing XML declaration: '?>' expected
    Opening and ending tag mismatch: xml line 1 and broken
    Premature end of data in tag broken line 1

Veja Também

  • libxml_use_internal_errors()
  • libxml_get_errors()
  • libXMLError

Basic usage
SimpleXMLElement
Exemplos


The SimpleXMLElement class

Introdução

Represents an element in an XML document.

Sinopse da classe

SimpleXMLElement implements Traversable {
/* Methods */
public __construct ( string $data [, int $options = 0 [, bool $data_is_url = false [, string $ns = "" [, bool $is_prefix = false ]]]] )
public void addAttribute ( string $name , string $value [, string $namespace ] )
public SimpleXMLElement addChild ( string $name [, string $value [, string $namespace ]] )
public mixed asXML ([ string $filename ] )
public SimpleXMLElement attributes ([ string $ns = NULL [, bool $is_prefix = false ]] )
public SimpleXMLElement children ([ string $ns [, bool $is_prefix = false ]] )
public int count ( void )
public array getDocNamespaces ([ bool $recursive = false ] )
public string getName ( void )
public array getNamespaces ([ bool $recursive = false ] )
public bool registerXPathNamespace ( string $prefix , string $ns )
public array xpath ( string $path )
}

Índice

  • SimpleXMLElement::addAttribute — Adds an attribute to the SimpleXML element
  • SimpleXMLElement::addChild — Adds a child element to the XML node
  • SimpleXMLElement::asXML — Return a well-formed XML string based on SimpleXML element
  • SimpleXMLElement::attributes — Identifies an element's attributes
  • SimpleXMLElement::children — Finds children of given node
  • SimpleXMLElement::__construct — Creates a new SimpleXMLElement object
  • SimpleXMLElement::count — Counts the children of an element
  • SimpleXMLElement::getDocNamespaces — Returns namespaces declared in document
  • SimpleXMLElement::getName — Gets the name of the XML element
  • SimpleXMLElement::getNamespaces — Returns namespaces used in document
  • SimpleXMLElement::registerXPathNamespace — Creates a prefix/ns context for the next XPath query
  • SimpleXMLElement::saveXML — Sinônimo de SimpleXMLElement::asXML
  • SimpleXMLElement::xpath — Runs XPath query on XML data
Dealing with XML errors
SimpleXMLElement::addAttribute
SimpleXML


Adds an attribute to the SimpleXML element

SimpleXMLElement
SimpleXMLElement::addChild
SimpleXMLElement
PHP Manual

SimpleXMLElement::addAttribute

(PHP 5 >= 5.1.3)

SimpleXMLElement::addAttribute — Adds an attribute to the SimpleXML element

Descrição

public void SimpleXMLElement::addAttribute ( string $name , string $value [, string $namespace ] )

Adds an attribute to the SimpleXML element.

Parâmetros

name

The name of the attribute to add.

value

The value of the attribute.

namespace

If specified, the namespace to which the attribute belongs.

Valor Retornado

Não há valor retornado.

Exemplos

Nota:

Listed examples may include example.php, which refers to the XML string found in the first example of the basic usage guide.

Exemplo #1 Add attributes and children to a SimpleXML element

<?php

include 'example.php';

$sxe = new SimpleXMLElement($xmlstr);
$sxe->addAttribute('type', 'documentary');

$movie = $sxe->addChild('movie');
$movie->addChild('title', 'PHP2: More Parser Stories');
$movie->addChild('plot', 'This is all about the people who make it work.');

$characters = $movie->addChild('characters');
$character  = $characters->addChild('character');
$character->addChild('name', 'Mr. Parser');
$character->addChild('actor', 'John Doe');

$rating = $movie->addChild('rating', '5');
$rating->addAttribute('type', 'stars');

echo $sxe->asXML();

?>

O exemplo acima irá imprimir algo similar a:

<?xml version="1.0" standalone="yes"?>
<movies type="documentary">
 <movie>
  <title>PHP: Behind the Parser</title>
  <characters>
   <character>
    <name>Ms. Coder</name>
    <actor>Onlivia Actora</actor>
   </character>
   <character>
    <name>Mr. Coder</name>
    <actor>El Act&#xD3;r</actor>
   </character>
  </characters>
  <plot>
   So, this language. It's like, a programming language. Or is it a
   scripting language? All is revealed in this thrilling horror spoof
   of a documentary.
  </plot>
  <great-lines>
   <line>PHP solves all my web problems</line>
  </great-lines>
  <rating type="thumbs">7</rating>
  <rating type="stars">5</rating>
 </movie>
 <movie>
  <title>PHP2: More Parser Stories</title>
  <plot>This is all about the people who make it work.</plot>
  <characters>
   <character>
    <name>Mr. Parser</name>
    <actor>John Doe</actor>
   </character>
  </characters>
  <rating type="stars">5</rating>
 </movie>
</movies>

Veja Também

  • SimpleXMLElement::addChild() - Adds a child element to the XML node

SimpleXMLElement
SimpleXMLElement::addChild
SimpleXMLElement


Adds a child element to the XML node

SimpleXMLElement::addAttribute
SimpleXMLElement::asXML
SimpleXMLElement
PHP Manual

SimpleXMLElement::addChild

(PHP 5 >= 5.1.3)

SimpleXMLElement::addChild — Adds a child element to the XML node

Descrição

public SimpleXMLElement SimpleXMLElement::addChild ( string $name [, string $value [, string $namespace ]] )

Adds a child element to the node and returns a SimpleXMLElement of the child.

Parâmetros

name

The name of the child element to add.

value

If specified, the value of the child element.

namespace

If specified, the namespace to which the child element belongs.

Valor Retornado

The addChild method returns a SimpleXMLElement object representing the child added to the XML node.

Exemplos

Nota:

Listed examples may include example.php, which refers to the XML string found in the first example of the basic usage guide.

Exemplo #1 Add attributes and children to a SimpleXML element

<?php

include 'example.php';

$sxe = new SimpleXMLElement($xmlstr);
$sxe->addAttribute('type', 'documentary');

$movie = $sxe->addChild('movie');
$movie->addChild('title', 'PHP2: More Parser Stories');
$movie->addChild('plot', 'This is all about the people who make it work.');

$characters = $movie->addChild('characters');
$character  = $characters->addChild('character');
$character->addChild('name', 'Mr. Parser');
$character->addChild('actor', 'John Doe');

$rating = $movie->addChild('rating', '5');
$rating->addAttribute('type', 'stars');

echo $sxe->asXML();

?>

O exemplo acima irá imprimir algo similar a:

<?xml version="1.0" standalone="yes"?>
<movies type="documentary">
 <movie>
  <title>PHP: Behind the Parser</title>
  <characters>
   <character>
    <name>Ms. Coder</name>
    <actor>Onlivia Actora</actor>
   </character>
   <character>
    <name>Mr. Coder</name>
    <actor>El Act&#xD3;r</actor>
   </character>
  </characters>
  <plot>
   So, this language. It's like, a programming language. Or is it a
   scripting language? All is revealed in this thrilling horror spoof
   of a documentary.
  </plot>
  <great-lines>
   <line>PHP solves all my web problems</line>
  </great-lines>
  <rating type="thumbs">7</rating>
  <rating type="stars">5</rating>
 </movie>
 <movie>
  <title>PHP2: More Parser Stories</title>
  <plot>This is all about the people who make it work.</plot>
  <characters>
   <character>
    <name>Mr. Parser</name>
    <actor>John Doe</actor>
   </character>
  </characters>
  <rating type="stars">5</rating>
 </movie>
</movies>

Veja Também

  • SimpleXMLElement::addAttribute() - Adds an attribute to the SimpleXML element

SimpleXMLElement::addAttribute
SimpleXMLElement::asXML
SimpleXMLElement


Return a well-formed XML string based on SimpleXML element

SimpleXMLElement::addChild
SimpleXMLElement::attributes
SimpleXMLElement
PHP Manual

SimpleXMLElement::asXML

(PHP 5 >= 5.0.1)

SimpleXMLElement::asXML — Return a well-formed XML string based on SimpleXML element

Descrição

public mixed SimpleXMLElement::asXML ([ string $filename ] )

The asXML method formats the parent object's data in XML version 1.0.

Parâmetros

filename

If specified, the function writes the data to the file rather than returning it.

Valor Retornado

If the filename isn't specified, this function returns a string on success and FALSE on error. If the parameter is specified, it returns TRUE if the file was written successfully and FALSE otherwise.

Exemplos

Exemplo #1 Get XML

<?php
$string = <<<XML
<a>
 <b>
  <c>text</c>
  <c>stuff</c>
 </b>
 <d>
  <c>code</c>
 </d>
</a>
XML;

$xml = new SimpleXMLElement($string);

echo $xml->asXML();

?>

O exemplo acima irá imprimir:

<?xml version="1.0"?>
<a>
 <b>
  <c>text</c>
  <c>stuff</c>
 </b>
 <d>
  <c>code</c>
 </d>
</a>

asXML also works on Xpath results:

Exemplo #2 Using asXML() on SimpleXMLElement::xpath() results

<?php
// Continued from example XML above.

/* Search for <a><b><c> */
$result = $xml->xpath('/a/b/c');

while(list( , $node) = each($result)) {
    echo $node->asXML();
}
?>

O exemplo acima irá imprimir:

<c>text</c><c>stuff</c>

SimpleXMLElement::addChild
SimpleXMLElement::attributes
SimpleXMLElement


Identifies an element's attributes

SimpleXMLElement::asXML
SimpleXMLElement::children
SimpleXMLElement
PHP Manual

SimpleXMLElement::attributes

(PHP 5 >= 5.0.1)

SimpleXMLElement::attributes — Identifies an element's attributes

Descrição

public SimpleXMLElement SimpleXMLElement::attributes ([ string $ns = NULL [, bool $is_prefix = false ]] )

This function provides the attributes and values defined within an xml tag.

Nota: SimpleXML tem uma regra quando do acréscimo de propriedades iterarivas na maioria dos métodos. Eles não podem ser visualizados com var_dump() nem nada que possa visualizar objetos.

Parâmetros

ns

An optional namespace for the retrieved attributes

is_prefix

Default to FALSE

Valor Retornado

Returns a SimpleXMLElement object that can be iterated over to loop through the attributes on the tag.

Returns NULL if called on a SimpleXMLElement object that already represents an attribute and not a tag.

Exemplos

Exemplo #1 Interpret an XML string

<?php
$string = <<<XML
<a>
 <foo name="one" game="lonely">1</foo>
</a>
XML;

$xml = simplexml_load_string($string);
foreach($xml->foo[0]->attributes() as $a => $b) {
    echo $a,'="',$b,"\"\n";
}
?>

O exemplo acima irá imprimir:

name="one"
game="lonely"

SimpleXMLElement::asXML
SimpleXMLElement::children
SimpleXMLElement


Finds children of given node

SimpleXMLElement::attributes
SimpleXMLElement::__construct
SimpleXMLElement
PHP Manual

SimpleXMLElement::children

(PHP 5 >= 5.0.1)

SimpleXMLElement::children — Finds children of given node

Descrição

public SimpleXMLElement SimpleXMLElement::children ([ string $ns [, bool $is_prefix = false ]] )

This method finds the children of an element. The result follows normal iteration rules.

Nota: SimpleXML tem uma regra quando do acréscimo de propriedades iterarivas na maioria dos métodos. Eles não podem ser visualizados com var_dump() nem nada que possa visualizar objetos.

Parâmetros

ns

An XML namespace.

is_prefix

If is_prefix is TRUE, ns will be regarded as a prefix. If FALSE, ns will be regarded as a namespace URL.

Valor Retornado

Returns a SimpleXMLElement element, whether the node has children or not.

Histórico

Versão | Descrição
5.2.0 | The optional parameter is_prefix was added.

Exemplos

Exemplo #1 Traversing a children() pseudo-array

<?php
$xml = new SimpleXMLElement(
'<person>
 <child role="son">
  <child role="daughter"/>
 </child>
 <child role="daughter">
  <child role="son">
   <child role="son"/>
  </child>
 </child>
</person>');

foreach ($xml->children() as $second_gen) {
    echo ' The person begot a ' . $second_gen['role'];

    foreach ($second_gen->children() as $third_gen) {
        echo ' who begot a ' . $third_gen['role'] . ';';

        foreach ($third_gen->children() as $fourth_gen) {
            echo ' and that ' . $third_gen['role'] .
                ' begot a ' . $fourth_gen['role'];
        }
    }
}
?>

O exemplo acima irá imprimir:

The person begot a son who begot a daughter; The person
begot a daughter who begot a son; and that son begot a son

Exemplo #2 Using namespaces

<?php
$xml = '<example xmlns:foo="my.foo.urn">
  <foo:a>Apple</foo:a>
  <foo:b>Banana</foo:b>
  <c>Cherry</c>
</example>';

$sxe = new SimpleXMLElement($xml);

$kids = $sxe->children('foo');
var_dump(count($kids));

$kids = $sxe->children('foo', TRUE);
var_dump(count($kids));

$kids = $sxe->children('my.foo.urn');
var_dump(count($kids));

$kids = $sxe->children('my.foo.urn', TRUE);
var_dump(count($kids));

$kids = $sxe->children();
var_dump(count($kids));
?>
int(0)
int(2)
int(2)
int(0)
int(1)

Notas

SimpleXMLElement::children() returns a node object no matter if the current node has children or not. Use count() on the return value to see if there are any children. As of PHP 5.3.0, SimpleXMLElement::count() may be used instead.

Veja Também

  • SimpleXMLElement::count() - Counts the children of an element
  • count() - Conta o número de elementos de uma variável, ou propriedades de um objeto

SimpleXMLElement::attributes
SimpleXMLElement::__construct
SimpleXMLElement


Creates a new SimpleXMLElement object

SimpleXMLElement::children
SimpleXMLElement::count
SimpleXMLElement
PHP Manual

SimpleXMLElement::__construct

(PHP 5 >= 5.0.1)

SimpleXMLElement::__construct — Creates a new SimpleXMLElement object

Descrição

public SimpleXMLElement::__construct() ( string $data [, int $options = 0 [, bool $data_is_url = false [, string $ns = "" [, bool $is_prefix = false ]]]] )

Creates a new SimpleXMLElement object.

Parâmetros

data

A well-formed XML string or the path or URL to an XML document if data_is_url is TRUE.

options

Optionally used to specify additional Libxml parameters.

data_is_url

By default, data_is_url is FALSE. Use TRUE to specify that data is a path or URL to an XML document instead of string data.

ns

is_prefix

Valor Retornado

Returns a SimpleXMLElement object representing data.

Erros

Produces an E_WARNING error message for each error found in the XML data and throws an exception if errors were detected.

Dica

Use libxml_use_internal_errors() to suppress all XML errors, and libxml_get_errors() to iterate over them afterwards.

Exemplos

Nota:

Listed examples may include example.php, which refers to the XML string found in the first example of the basic usage guide.

Exemplo #1 Create a SimpleXMLElement object

<?php

include 'example.php';

$sxe = new SimpleXMLElement($xmlstr);
echo $sxe->movie[0]->title;

?>

O exemplo acima irá imprimir:

PHP: Behind the Parser

Exemplo #2 Create a SimpleXMLElement object from a URL

<?php

$sxe = new SimpleXMLElement('http://example.org/document.xml', NULL, TRUE);
echo $sxe->asXML();

?>

Veja Também

  • simplexml_load_string() - Transforma uma string XML em objeto
  • simplexml_load_file() - Converte um arquivo XML em um objeto
  • Dealing with XML errors
  • libxml_use_internal_errors() - Desabilita erros da libxml e permite que o usuário obtenha informação do erro como necessitar

SimpleXMLElement::children
SimpleXMLElement::count
SimpleXMLElement


Counts the children of an element

SimpleXMLElement::__construct
SimpleXMLElement::getDocNamespaces
SimpleXMLElement
PHP Manual

SimpleXMLElement::count

(PHP 5 >= 5.3.0)

SimpleXMLElement::count — Counts the children of an element

Descrição

public int SimpleXMLElement::count ( void )

This method counts the number of children of an element.

Valor Retornado

Returns the number of elements of an element.

Exemplos

Exemplo #1 Counting the number of children

<?php
$xml = <<<EOF
<people>
 <person name="Person 1">
  <child/>
  <child/>
  <child/>
 </person>
 <person name="Person 2">
  <child/>
  <child/>
  <child/>
  <child/>
  <child/>
 </person>
</people>
EOF;

$elem = new SimpleXMLElement($xml);

foreach ($elem as $person) {
    printf("%s has got %d children.\n", $person['name'], $person->count());
}
?>

O exemplo acima irá imprimir:

Person 1 has got 3 children.
Person 2 has got 5 children.

Veja Também

  • SimpleXMLElement::children() - Finds children of given node

SimpleXMLElement::__construct
SimpleXMLElement::getDocNamespaces
SimpleXMLElement


Returns namespaces declared in document

SimpleXMLElement::count
SimpleXMLElement::getName
SimpleXMLElement
PHP Manual

SimpleXMLElement::getDocNamespaces

(PHP 5 >= 5.1.2)

SimpleXMLElement::getDocNamespaces — Returns namespaces declared in document

Descrição

public array SimpleXMLElement::getDocNamespaces ([ bool $recursive = false ] )

Returns namespaces declared in document

Parâmetros

recursive

If specified, returns all namespaces declared in parent and child nodes. Otherwise, returns only namespaces declared in root node.

Valor Retornado

The getDocNamespaces method returns an array of namespace names with their associated URIs.

Exemplos

Exemplo #1 Get document namespaces

<?php

$xml = <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns">
    <p:person id="1">John Doe</p:person>
    <p:person id="2">Susie Q. Public</p:person>
</people>
XML;

$sxe = new SimpleXMLElement($xml);

$namespaces = $sxe->getDocNamespaces();
var_dump($namespaces);

?>

O exemplo acima irá imprimir:

array(1) {
   ["p"]=>
   string(21) "http://example.org/ns"
}

Exemplo #2 Working with multiple namespaces

<?php

$xml = <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns" xmlns:t="http://example.org/test">
    <p:person t:id="1">John Doe</p:person>
    <p:person t:id="2" a:addr="123 Street" xmlns:a="http://example.org/addr">
        Susie Q. Public
    </p:person>
</people>
XML;

$sxe = new SimpleXMLElement($xml);

$namespaces = $sxe->getDocNamespaces(TRUE);
var_dump($namespaces);

?>

O exemplo acima irá imprimir:

array(3) {
  ["p"]=>
  string(21) "http://example.org/ns"
  ["t"]=>
  string(23) "http://example.org/test"
  ["a"]=>
  string(23) "http://example.org/addr"
}

Veja Também

  • SimpleXMLElement::getNamespaces() - Returns namespaces used in document
  • SimpleXMLElement::registerXPathNamespace() - Creates a prefix/ns context for the next XPath query

SimpleXMLElement::count
SimpleXMLElement::getName
SimpleXMLElement


Gets the name of the XML element

SimpleXMLElement::getDocNamespaces
SimpleXMLElement::getNamespaces
SimpleXMLElement
PHP Manual

SimpleXMLElement::getName

(PHP 5 >= 5.1.3)

SimpleXMLElement::getName — Gets the name of the XML element

Descrição

public string SimpleXMLElement::getName ( void )

Gets the name of the XML element.

Valor Retornado

The getName method returns as a string the name of the XML tag referenced by the SimpleXMLElement object.

Exemplos

Nota:

Listed examples may include example.php, which refers to the XML string found in the first example of the basic usage guide.

Exemplo #1 Get XML element names

<?php
include 'example.php';
$sxe = new SimpleXMLElement($xmlstr);

echo $sxe->getName() . "\n";

foreach ($sxe->children() as $child)
{
    echo $child->getName() . "\n";
}

?>

O exemplo acima irá imprimir:

movies
movie

SimpleXMLElement::getDocNamespaces
SimpleXMLElement::getNamespaces
SimpleXMLElement


Returns namespaces used in document

SimpleXMLElement::getName
SimpleXMLElement::registerXPathNamespace
SimpleXMLElement
PHP Manual

SimpleXMLElement::getNamespaces

(PHP 5 >= 5.1.2)

SimpleXMLElement::getNamespaces — Returns namespaces used in document

Descrição

public array SimpleXMLElement::getNamespaces ([ bool $recursive = false ] )

Returns namespaces used in document

Parâmetros

recursive

If specified, returns all namespaces used in parent and child nodes. Otherwise, returns only namespaces used in root node.

Valor Retornado

The getNamespaces method returns an array of namespace names with their associated URIs.

Exemplos

Exemplo #1 Get document namespaces in use

<?php

$xml = <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns" xmlns:t="http://example.org/test">
    <p:person id="1">John Doe</p:person>
    <p:person id="2">Susie Q. Public</p:person>
</people>
XML;

$sxe = new SimpleXMLElement($xml);

$namespaces = $sxe->getNamespaces(true);
var_dump($namespaces);

?>

O exemplo acima irá imprimir:

array(1) {
  ["p"]=>
  string(21) "http://example.org/ns"
}

Veja Também

  • SimpleXMLElement::getDocNamespaces() - Returns namespaces declared in document
  • SimpleXMLElement::registerXPathNamespace() - Creates a prefix/ns context for the next XPath query

SimpleXMLElement::getName
SimpleXMLElement::registerXPathNamespace
SimpleXMLElement


Creates a prefix/ns context for the next XPath query

SimpleXMLElement::getNamespaces
SimpleXMLElement::saveXML
SimpleXMLElement
PHP Manual

SimpleXMLElement::registerXPathNamespace

(PHP 5 >= 5.2.0)

SimpleXMLElement::registerXPathNamespace — Creates a prefix/ns context for the next XPath query

Descrição

public bool SimpleXMLElement::registerXPathNamespace ( string $prefix , string $ns )

Creates a prefix/ns context for the next XPath query. In particular, this is helpful if the provider of the given XML document alters the namespace prefixes. registerXPathNamespace will create a prefix for the associated namespace, allowing one to access nodes in that namespace without the need to change code to allow for the new prefixes dictated by the provider.

Parâmetros

prefix

The namespace prefix to use in the XPath query for the namespace given in ns.

ns

The namespace to use for the XPath query. This must match a namespace in use by the XML document or the XPath query using prefix will not return any results.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Setting a namespace prefix to use in an XPath query

<?php

$xml = <<<EOD
<book xmlns:chap="http://example.org/chapter-title">
    <title>My Book</title>
    <chapter id="1">
        <chap:title>Chapter 1</chap:title>
        <para>Donec velit. Nullam eget tellus vitae tortor gravida scelerisque.
            In orci lorem, cursus imperdiet, ultricies non, hendrerit et, orci.
            Nulla facilisi. Nullam velit nisl, laoreet id, condimentum ut,
            ultricies id, mauris.</para>
    </chapter>
    <chapter id="2">
        <chap:title>Chapter 2</chap:title>
        <para>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin
            gravida. Phasellus tincidunt massa vel urna. Proin adipiscing quam
            vitae odio. Sed dictum. Ut tincidunt lorem ac lorem. Duis eros
            tellus, pharetra id, faucibus eu, dapibus dictum, odio.</para>
    </chapter>
</book>
EOD;

$sxe = new SimpleXMLElement($xml);

$sxe->registerXPathNamespace('c', 'http://example.org/chapter-title');
$result = $sxe->xpath('//c:title');

foreach ($result as $title) {
  echo $title . "\n";
}

?>

O exemplo acima irá imprimir:

Chapter 1
Chapter 2

Notice how the XML document shown in the example sets a namespace with a prefix of chap. Imagine that this document (or another one like it) may have used a prefix of c in the past for the same namespace. Since it has changed, the XPath query will no longer return the proper results and the query will require modification. Using registerXPathNamespace avoids future modification of the query even if the provider changes the namespace prefix.

Veja Também

  • SimpleXMLElement::getDocNamespaces() - Returns namespaces declared in document
  • SimpleXMLElement::getNamespaces() - Returns namespaces used in document

SimpleXMLElement::getNamespaces
SimpleXMLElement::saveXML
SimpleXMLElement


Sinônimo de SimpleXMLElement::asXML

SimpleXMLElement::registerXPathNamespace
SimpleXMLElement::xpath
SimpleXMLElement
PHP Manual

SimpleXMLElement::saveXML

(PHP 5 >= 5.2.0)

SimpleXMLElement::saveXML — Sinônimo de SimpleXMLElement::asXML()

Descrição

This method is an alias of: SimpleXMLElement::asXML()

SimpleXMLElement::registerXPathNamespace
SimpleXMLElement::xpath
SimpleXMLElement


Runs XPath query on XML data

SimpleXMLElement::saveXML
Funções da SimpleXML
SimpleXMLElement
PHP Manual

SimpleXMLElement::xpath

(PHP 5 >= 5.2.0)

SimpleXMLElement::xpath — Runs XPath query on XML data

Descrição

public array SimpleXMLElement::xpath ( string $path )

The xpath method searches the SimpleXML node for children matching the XPath path.

Parâmetros

path

An XPath path

Valor Retornado

Returns an array of SimpleXMLElement objects or FALSE in case of an error.

Exemplos

Exemplo #1 Xpath

<?php
$string = <<<XML
<a>
 <b>
  <c>text</c>
  <c>stuff</c>
 </b>
 <d>
  <c>code</c>
 </d>
</a>
XML;

$xml = new SimpleXMLElement($string);

/* Search for <a><b><c> */
$result = $xml->xpath('/a/b/c');

while(list( , $node) = each($result)) {
    echo '/a/b/c: ',$node,"\n";
}

/* Relative paths also work... */
$result = $xml->xpath('b/c');

while(list( , $node) = each($result)) {
    echo 'b/c: ',$node,"\n";
}
?>

O exemplo acima irá imprimir:

/a/b/c: text
/a/b/c: stuff
b/c: text
b/c: stuff

Notice that the two results are equal.

SimpleXMLElement::saveXML
Funções da SimpleXML
SimpleXMLElement


Funções da SimpleXML

Índice

  • simplexml_import_dom — Recebe um objeto SimpleXMLElement de um nó DOM.
  • simplexml_load_file — Converte um arquivo XML em um objeto
  • simplexml_load_string — Transforma uma string XML em objeto
SimpleXMLElement::xpath
simplexml_import_dom
SimpleXML


Recebe um objeto SimpleXMLElement de um nó DOM.

Funções da SimpleXML
simplexml_load_file
Funções da SimpleXML
PHP Manual

simplexml_import_dom

(PHP 5)

simplexml_import_dom — Recebe um objeto SimpleXMLElement de um nó DOM.

Descrição

SimpleXMLElement simplexml_import_dom ( DOMNode $node [, string $class_name ] )

Esta função recebe um nó de um documento DOM e o transforma em um nó SimpleXML. O novo objeto pode ser utilizado como um elemento SimpleXML nativo.

Parâmetros

node

Um nó DOM

class_name

Você pode utilizar o parâmetro opcional simplexml_import_dom() para retornar um objeto da classe especificada. Esta classe deve extender a classe SimpleXMLElement.

Valor Retornado

Retorna um SimpleXMLElement ou FALSE em caso de falha.

Exemplos

Exemplo #1 Importing DOM

<?php
$dom = new DOMDocument;
$dom->loadXML('<books><book><title>blah</title></book></books>');
if (!$dom) {
    echo 'Error while parsing the document';
    exit;
}

$s = simplexml_import_dom($dom);

echo $s->book[0]->title; // blah
?>

Veja Também

  • dom_import_simplexml() - Gets a DOMElement object from a SimpleXMLElement object

Funções da SimpleXML
simplexml_load_file
Funções da SimpleXML


Converte um arquivo XML em um objeto

simplexml_import_dom
simplexml_load_string
Funções da SimpleXML
PHP Manual

simplexml_load_file

(PHP 5)

simplexml_load_file — Converte um arquivo XML em um objeto

Descrição

object simplexml_load_file ( string $filename [, string $class_name [, int $options [, string $ns [, bool $is_prefix ]]]] )

Converte um dado arquivo XML bem formado (well-formed) em um objeto.

Parâmetros

filename

Caminho para o arquivo XML

Nota:

Libxml 2 desescapa a URI, por exemplo: para chamar b&c como um parâmetro a da URI, você deve chamar simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). A partir do PHP 5.1.0 você não precisa mais fazer isso, porque o PHP o fará para você.

class_name

Você pode utilizar o parâmetro opcional simplexml_load_file() para retornar um objeto da classe especificada. Esta classe deve extender a classe SimpleXMLElement.

options

A partir do PHP 5.1.0 e da Libxml 2.6.0, você pode também utilizar o parâmetro options para especificar parâmetros adicionais da Libxml.

ns

is_prefix

Valor Retornado

Retorna um objeto da classe SimpleXMLElement com propriedades contendo os dados do documento XML. Quando houver erro, irá retornar FALSE.

Exemplos

Exemplo #1 Interperta um documento XML

<?php
// The file test.xml contains an XML document with a root element
// and at least an element /[root]/title.

if (file_exists('test.xml')) {
    $xml = simplexml_load_file('test.xml');

    print_r($xml);
} else {
    exit('Failed to open test.xml.');
}
?>

This script will display, on success:

SimpleXMLElement Object
(
  [title] => Example Title
  ...
)

Nesse ponto você já pode utilizar $xml->body para acessar as propriedades.

Veja Também

  • simplexml_load_string
  • SimpleXMLElement::__construct

simplexml_import_dom
simplexml_load_string
Funções da SimpleXML


Transforma uma string XML em objeto

simplexml_load_file
WDDX
Funções da SimpleXML
PHP Manual

simplexml_load_string

(PHP 5)

simplexml_load_string — Transforma uma string XML em objeto

Descrição

object simplexml_load_string ( string $data [, string $class_name [, int $options [, string $ns [, bool $is_prefix ]]]] )

Recebe uma string XML bem formada (well-formed) e retorna um objeto.

Parâmetros

data

Uma string XML bem formada

class_name

Você pode utilizar o parâmetro opcional simplexml_load_string() para retornar um objeto da classe especificada. the specified class. Esta classe deve extender a classe SimpleXMLElement.

options

A partir do PHP 5.1.0 e da Libxml 2.6.0, você pode também utilizar o parâmetro options para especificar parâmetros adicionais da Libxml.

ns

is_prefix

Valor Retornado

Retorna um objeto da classe SimpleXMLElement com propriedades contendo os dados do documento XML. Quando houver erro, irá retornar FALSE.

Exemplos

Exemplo #1 Interpreta uma string XML

<?php
$string = <<<XML
<?xml version='1.0'?>
<document>
 <title>Forty What?</title>
 <from>Joe</from>
 <to>Jane</to>
 <body>
  I know that's the answer -- but what's the question?
 </body>
</document>
XML;

$xml = simplexml_load_string($string);

var_dump($xml);
?>

O exemplo acima irá imprimir:

SimpleXMLElement Object
(
  [title] => Forty What?
  [from] => Joe
  [to] => Jane
  [body] =>
   I know that's the answer -- but what's the question?
)

Nesse ponto você já pode utilizar $xml->body para acessar as propriedades.

Veja Também

  • simplexml_load_file
  • SimpleXMLElement::__construct

simplexml_load_file
WDDX
Funções da SimpleXML


WDDX

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • Funções da WDDX
    • wddx_add_vars — Adiciona variáveis a um pacote WDDX com o IP especificado
    • wddx_deserialize — Sinônimo de wddx_unserialize
    • wddx_packet_end — Finaliza um pacote WDDX com o ID especificado
    • wddx_packet_start — Inicializa um novo pacote WDDX com uma estrutura dentro dele
    • wddx_serialize_value — Serializa um único valor em um pacote WDDX
    • wddx_serialize_vars — Serializa variáveis em um pacote WDDX
    • wddx_unserialize — Deserializa um pacote WDDX
simplexml_load_string
Introdução
Manipulação de XML


Introdução

Essas funções tem o intuito de funcionar com » WDDX.

WDDX
Instalação/Configuração
WDDX


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
WDDX


Dependências

Para usar WDDX, você precisará instalar a biblioteca expat (que vem com o Apache 1.3.7 ou superior).

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Depois de instalar o expat, compile o PHP com a opção --enable-wddx .

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Essa extensão define o identificador retornado por wddx_packet_start().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
Exemplos
WDDX


Exemplos

Índice

Constantes pré-definidas
WDDX


Exemplos
Funções da WDDX
Exemplos
PHP Manual

Todas as funções que serializam variáveis usam o primeiro elemento de um array para determinar se o array deve ser serializado em um array ou estrutura. Se o primeiro elemento tem uma chave string, então ele é serializado em uma estrutura, caso contrário, em um array.

Exemplo #1 Serializando um único valor com WDDX

<?php
echo wddx_serialize_value("PHP to WDDX packet example", "PHP packet");
?>

Este exemplo irá produzir:

<wddxPacket version='1.0'><header comment='PHP packet'/><data>
<string>PHP to WDDX packet example</string></data></wddxPacket>

Exemplo #2 Usando pacotes incrementais com WDDX

<?php
$pi = 3.1415926;
$packet_id = wddx_packet_start("PHP");
wddx_add_vars($packet_id, "pi");

/* Suppose $cities came from database */
$cities = array("Austin", "Novato", "Seattle");
wddx_add_vars($packet_id, "cities");

$packet = wddx_packet_end($packet_id);
echo $packet;
?>

Este exemplo irá produzir:

<wddxPacket version='1.0'><header comment='PHP'/><data><struct>
<var name='pi'><number>3.1415926</number></var><var name='cities'>
<array length='3'><string>Austin</string><string>Novato</string>
<string>Seattle</string></array></var></struct></data></wddxPacket>

Nota:

Se você quiser serializar caracteres não-ASCII, você tem que primeiro converter seus dados para UTF-8 (veja utf8_encode() e iconv()).

Exemplos
Funções da WDDX
Exemplos


Funções da WDDX

Índice

  • wddx_add_vars — Adiciona variáveis a um pacote WDDX com o IP especificado
  • wddx_deserialize — Sinônimo de wddx_unserialize
  • wddx_packet_end — Finaliza um pacote WDDX com o ID especificado
  • wddx_packet_start — Inicializa um novo pacote WDDX com uma estrutura dentro dele
  • wddx_serialize_value — Serializa um único valor em um pacote WDDX
  • wddx_serialize_vars — Serializa variáveis em um pacote WDDX
  • wddx_unserialize — Deserializa um pacote WDDX
wddx_add_vars
WDDX


Adiciona variáveis a um pacote WDDX com o IP especificado

Funções da WDDX
wddx_deserialize
Funções da WDDX
PHP Manual

wddx_add_vars

(PHP 4, PHP 5)

wddx_add_vars — Adiciona variáveis a um pacote WDDX com o IP especificado

Descrição

bool wddx_add_vars ( resource $packet_id , mixed $var_name [, mixed $... ] )

Serializa as variáveis passadas e adiciona o resultado para o pacote escolhido.

Parâmetros

Essa função recebe um número variável de parâmetros.

packet_id

Um pacote WDDX, retornado por wddx_packet_start().

var_name

Pode ser um string com o nome de uma variável ou um array contendo strings com nomes de variáveis ou até outro array, recursivamente.

...

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Funções da WDDX
wddx_deserialize
Funções da WDDX


Sinônimo de wddx_unserialize

wddx_add_vars
wddx_packet_end
Funções da WDDX
PHP Manual

wddx_deserialize

(PHP 4, PHP 5)

wddx_deserialize — Sinônimo de wddx_unserialize()

Descrição

Esta função é um apelido para: wddx_unserialize().

wddx_add_vars
wddx_packet_end
Funções da WDDX


Finaliza um pacote WDDX com o ID especificado

wddx_deserialize
wddx_packet_start
Funções da WDDX
PHP Manual

wddx_packet_end

(PHP 4, PHP 5)

wddx_packet_end — Finaliza um pacote WDDX com o ID especificado

Descrição

string wddx_packet_end ( resource $packet_id )

Finaliza e retorna um pacote WDDX escolhido.

Parâmetros

packet_id

Um pacote WDDX, retornado por wddx_packet_start().

Valor Retornado

Retorna a string com o pacote WDDX.

wddx_deserialize
wddx_packet_start
Funções da WDDX


Inicializa um novo pacote WDDX com uma estrutura dentro dele

wddx_packet_end
wddx_serialize_value
Funções da WDDX
PHP Manual

wddx_packet_start

(PHP 4, PHP 5)

wddx_packet_start — Inicializa um novo pacote WDDX com uma estrutura dentro dele

Descrição

resource wddx_packet_start ([ string $comment ] )

Inicializa um novo pacote WDDX para adição incremental de variáveis. A função cria automaticamente uma definição de estrutura dentro do pacote para armazenar as variáveis.

Parâmetros

comment

Uma string opcional contendo comentários.

Valor Retornado

Retorna o ID do pacote para ser usado em outras funções ou FALSE em caso de erro.

wddx_packet_end
wddx_serialize_value
Funções da WDDX


Serializa um único valor em um pacote WDDX

wddx_packet_start
wddx_serialize_vars
Funções da WDDX
PHP Manual

wddx_serialize_value

(PHP 4, PHP 5)

wddx_serialize_value — Serializa um único valor em um pacote WDDX

Descrição

string wddx_serialize_value ( mixed $var [, string $comment ] )

Cria um pacote WDDX a partir de uma única variável.

Parâmetros

var

Variável a ser serializada

comment

Um comentário (opcional) que aparece no cabeçalho do pacote.

Valor Retornado

Retorna o pacote WDDX ou FALSE em caso de erro.

wddx_packet_start
wddx_serialize_vars
Funções da WDDX


Serializa variáveis em um pacote WDDX

wddx_serialize_value
wddx_unserialize
Funções da WDDX
PHP Manual

wddx_serialize_vars

(PHP 4, PHP 5)

wddx_serialize_vars — Serializa variáveis em um pacote WDDX

Descrição

string wddx_serialize_vars ( mixed $var_name [, mixed $... ] )

Cria um pacote WDDX com um estrutura que contém a representação serializada das variáveis passadas.

Parâmetros

Essa função recebe um número variável de argumentos.

var_name

Pode ser ou uma string com o nome de uma variável ou um array contendo strings com o nome de variáveis ou outro array, recursivamente.

...

Valor Retornado

Retorna o pacote WDDX ou FALSE em caso de erro.

Exemplos

Exemplo #1 Exemplo de uso de wddx_serialize_vars()

<?php
$a = 1;
$b = 5.5;
$c = array("blue", "orange", "violet");
$d = "colors";

$clvars = array("c", "d");
echo wddx_serialize_vars("a", "b", $clvars);
?>

O exemplo acima irá imprimir:

<wddxPacket version='1.0'><header/><data><struct><var name='a'><number>1</number></var>
<var name='b'><number>5.5</number></var><var name='c'><array length='3'>
<string>blue</string><string>orange</string><string>violet</string></array></var>
<var name='d'><string>colors</string></var></struct></data></wddxPacket>

wddx_serialize_value
wddx_unserialize
Funções da WDDX


Deserializa um pacote WDDX

wddx_serialize_vars
XML Parser
Funções da WDDX
PHP Manual

wddx_unserialize

(PHP 4, PHP 5)

wddx_unserialize — Deserializa um pacote WDDX

Descrição

mixed wddx_unserialize ( string $packet )

Deserializa um pacote WDDX, definido por packet.

Parâmetros

packet

String ou stream com um pacote WDDX.

Valor Retornado

Retorna o valor deserializado que pode ser uma string, um número ou array. Perceba que as estruturas são deserializadas em arrays associativos.

wddx_serialize_vars
XML Parser
Funções da WDDX


XML Parser

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Manipuladores (handlers) de Evento
  • Case Folding
  • Códigos de Erro
  • Character Encoding
  • Exemplos
    • Exemplo estruturado de elementos XML
    • Exemplo arrumação de Tag XML
    • Exemplo de entidade externa do XML
  • Funções para analisar XML
    • utf8_decode — Converte uma string com caracteres ISO-8859-1 codificadas com UTF-8 para single-byte ISO-8859-1.
    • utf8_encode — Codifica um string ISO-8859-1 para UTF-8
    • xml_error_string — Obtém uma string de erro do analisador XML
    • xml_get_current_byte_index — Obtém o índice do byte atual para um analisador XML
    • xml_get_current_column_number — Obtém o número da coluna atual para um analisador XML
    • xml_get_current_line_number — Obtém o número da linha para um analisador XML
    • xml_get_error_code — Obtém um código de erro do analisador XML
    • xml_parse_into_struct — Analisa dados XML dentro de uma estrutura de array
    • xml_parse — Inicia a análise em um documento XML
    • xml_parser_create_ns — Cria um analisador XML com suporte a namespace
    • xml_parser_create — Cria um analisador XML
    • xml_parser_free — Free an XML parser
    • xml_parser_get_option — Obtém as opções de um analisador (parser) XML
    • xml_parser_set_option — Define opções em um analisador (parser) XML
    • xml_set_character_data_handler — Set up character data handler
    • xml_set_default_handler — Set up default handler
    • xml_set_element_handler — Set up start and end element handlers
    • xml_set_end_namespace_decl_handler — Set up end namespace declaration handler
    • xml_set_external_entity_ref_handler — Set up external entity reference handler
    • xml_set_notation_decl_handler — Set up notation declaration handler
    • xml_set_object — Use XML Parser within an object
    • xml_set_processing_instruction_handler — Set up processing instruction (PI) handler
    • xml_set_start_namespace_decl_handler — Set up start namespace declaration handler
    • xml_set_unparsed_entity_decl_handler — Set up unparsed entity declaration handler
wddx_unserialize
Introdução
Manipulação de XML


Introdução

XML (eXtensible Markup Language) é um formato de dados para intercâmbio de documentos na Web. Ele é um padrão definido pela The World Wide Web consortium (W3C). Informações sobre XML e tecnologias relacionadas pode, ser encontradas em » http://www.w3.org/XML/.

Esta extensão do PHP implementa suporte para o James Clark's expat no PHP. Esta ferramenta permite que você analise, mas não valide, documentos XML. Ele suporta três source character encodings também fornecido pelo PHP: US-ASCII, ISO-8859-1 e UTF-8. UTF-16 não é suportado.

Esta extensão te permite criar analisadores XML e então definir manipuladores (handlers) para diferentes eventos XML. Cada analisador XML também tem alguns parâmetros que você pode ajustar.

XML Parser
Instalação/Configuração
XML Parser


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XML Parser


Dependências

Esta extensão utiliza o expat compat layer por padrão. Ele pode usar também expat, que pode ser encontrado em » http://www.jclark.com/xml/expat.html. O Makefile que vem com o expat, por definição não constrói uma biblioteca, você pode usar as regras de 'make' para isso:

libexpat.a: $(OBJS)
    ar -rc $@ $(OBJS)
    ranlib $@
Um pacote dos fontes RPM do expat podem ser encontrados em » http://sourceforge.net/projects/expat/.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

Estas funções estão por definição habilitadas, usando o pacote expat library. Você pode desabilitar o suporte a XML com --disable-xml . Se você compilou o PHP como um módulo do Apache 1.3.9 ou mais novo, o PHP automaticamente utilizará o pacote expat library do Apache. Regularmente você não quer utilizar a configuração do pacote expat library do PHP --with-expat-dir=DIR , onde DIR apontaria para o diretório base de instalação do expat.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

The xml resource as returned by xml_parser_create() and xml_parser_create_ns() references an xml parser instance to be used with the functions provided by this extension.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XML_ERROR_NONE (integer)
XML_ERROR_NO_MEMORY (integer)
XML_ERROR_SYNTAX (integer)
XML_ERROR_NO_ELEMENTS (integer)
XML_ERROR_INVALID_TOKEN (integer)
XML_ERROR_UNCLOSED_TOKEN (integer)
XML_ERROR_PARTIAL_CHAR (integer)
XML_ERROR_TAG_MISMATCH (integer)
XML_ERROR_DUPLICATE_ATTRIBUTE (integer)
XML_ERROR_JUNK_AFTER_DOC_ELEMENT (integer)
XML_ERROR_PARAM_ENTITY_REF (integer)
XML_ERROR_UNDEFINED_ENTITY (integer)
XML_ERROR_RECURSIVE_ENTITY_REF (integer)
XML_ERROR_ASYNC_ENTITY (integer)
XML_ERROR_BAD_CHAR_REF (integer)
XML_ERROR_BINARY_ENTITY_REF (integer)
XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF (integer)
XML_ERROR_MISPLACED_XML_PI (integer)
XML_ERROR_UNKNOWN_ENCODING (integer)
XML_ERROR_INCORRECT_ENCODING (integer)
XML_ERROR_UNCLOSED_CDATA_SECTION (integer)
XML_ERROR_EXTERNAL_ENTITY_HANDLING (integer)
XML_OPTION_CASE_FOLDING (integer)
XML_OPTION_TARGET_ENCODING (integer)
XML_OPTION_SKIP_TAGSTART (integer)
XML_OPTION_SKIP_WHITE (integer)
Tipos Resource
Manipuladores (handlers) de Evento
XML Parser


Manipuladores (handlers) de Evento

Os manipuladores (handlers) de eventos de XML definidos são:

Manipuladores XML Suportados
Função do PHP pra definir manipulador | Descrição do evento
xml_set_element_handler() | Eventos elementares são emitidos toda vez que o analisador XML o início ou o fim das tags. Há manipuladores (handlers) separadores para tags de início e tags de fim.
xml_set_character_data_handler() | Dados de caractere são aproximadamente todo o conteúdo de documentos XML, incluindo espaços em branco entre as tags. Note que o analisador XML não adiciona ou remove qualquer espaço em branco, ele está pronto para a aplicação se você decidir que espaços em branco são significativos.
xml_set_processing_instruction_handler() | Programadores de PHP já estariam familiarizados com instruções de processo (PIs). <?php ?> é uma instrução de processo, onde php é chamada de o "PI target". O tratamento destes são application-specific, exceto que todos os PI targets iniciados com "XML" estão reservados.
xml_set_default_handler() | O que não vai para outro manipulador vai para o manipulador padrão. Você conseguirá coisas como o XML e declarações do tipo de documento no manipulador padrão.
xml_set_unparsed_entity_decl_handler() | Este manipulador será chamado por uma declaração de um entity não analisada (NDATA).
xml_set_notation_decl_handler() | Este manipulador é chamado pela declaração de uma nota.
xml_set_external_entity_ref_handler() | Este manipulador é chamado quando o analisador XML encontra uma referência para uma entity geral analizada externamente. Isto pode ser uma referência para um arquivo ou URL, por examplo. Veja Um exemplo de entidade externa para uma demonstração.

Constantes pré-definidas
Case Folding
XML Parser


Case Folding

As funções de elementos do manipulador podem conseguir os nomes dos elementos case-folded. Case-folding é definida pelo padrão XML como "um processo aplicado para uma sequência de caracateres, em que aqueles identificados como minúsculos são substituidos pelos seus maiúsculos equivalentes". Em outras palavras, quando vai pro XML, case-folding simplesmente significa mudar pra maiúsculas.

Por definição, todos os nomes de elementos que são passados para as funções de manipulador são case-folded. Este comportamento pode ser perguntado e controlado pelo analisador XML com o xml_parser_get_option() e as funções xml_parser_set_option(), respectivamente.

Manipuladores (handlers) de Evento
Códigos de Erro
XML Parser


Códigos de Erro

As seguintes constantes são definidas para erros no código XML (conforme retornado por xml_parse()):

  • XML_ERROR_NONE
  • XML_ERROR_NO_MEMORY
  • XML_ERROR_SYNTAX
  • XML_ERROR_NO_ELEMENTS
  • XML_ERROR_INVALID_TOKEN
  • XML_ERROR_UNCLOSED_TOKEN
  • XML_ERROR_PARTIAL_CHAR
  • XML_ERROR_TAG_MISMATCH
  • XML_ERROR_DUPLICATE_ATTRIBUTE
  • XML_ERROR_JUNK_AFTER_DOC_ELEMENT
  • XML_ERROR_PARAM_ENTITY_REF
  • XML_ERROR_UNDEFINED_ENTITY
  • XML_ERROR_RECURSIVE_ENTITY_REF
  • XML_ERROR_ASYNC_ENTITY
  • XML_ERROR_BAD_CHAR_REF
  • XML_ERROR_BINARY_ENTITY_REF
  • XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF
  • XML_ERROR_MISPLACED_XML_PI
  • XML_ERROR_UNKNOWN_ENCODING
  • XML_ERROR_INCORRECT_ENCODING
  • XML_ERROR_UNCLOSED_CDATA_SECTION
  • XML_ERROR_EXTERNAL_ENTITY_HANDLING

Case Folding
Character Encoding
XML Parser


Character Encoding

A Extensão XML do PHP suporta o caracter » Unicode definido por character encodings (codificação de caracteres) diferentes. Há dois tipos de codificação de caracteres, source encoding e target encoding. A apresentação interna do PHP do documento é sempre codificada com UTF-8.

Source encoding é feita quando um documento XML é analisado. Em criando um analisador XML, um source encoding pode ser especificado (Esta codificação não poderá ser mudada após o tempo de vida do analisador XML). As codificações suportadas são ISO-8859-1, US-ASCII e UTF-8. O segundo são codificações single-byte, que significa que cada caractere é representado por um byte simples. UTF-8 pode codificar caracteres compostos por um número de bits variável (acima de 21) em um de seus 4 bytes. O source encoding padrão utilizado pelo PHP é ISO-8859-1.

Target encoding é feito quando o PHP passa dados para as funções do analisador XML. Quando um analisador XML é criado, o target encoding é definido igual ao source encoding, mas este pode ser mudado em qualquer ponto. O target encoding afetará dados de caracter tão bem como nome de tags e processando alvos da instrução.

Se o analisador XML encontra caracteres de fora da linha que seu source encoding é capaz de detalhar, ele retornará um erro.

Se PHP encontra caracteres no documento XML analisado que não podem ser detalhados selecionados com target encoding, os caracteres com problema serão "demoted". Atualmente, isto significa que tais caracteres serão substituidos por um sinal de interrogação.

Códigos de Erro
Exemplos
XML Parser


Exemplos

Índice

  • Exemplo estruturado de elementos XML
  • Exemplo arrumação de Tag XML
  • Exemplo de entidade externa do XML
Character Encoding
Exemplo estruturado de elementos XML
XML Parser


Exemplo estruturado de elementos XML

Este primeiro exemplo mostra a estrutura de elementos iniciais num documento com distanciamento da margem.

Exemplo #1 Mostra estrutura do elemento XML

<?php
$file = "data.xml";
$depth = array();

function startElement($parser, $name, $attrs)
{
    global $depth;
    for ($i = 0; $i < $depth[$parser]; $i++) {
        echo "  ";
    }
    echo "$name\n";
    $depth[$parser]++;
}

function endElement($parser, $name)
{
    global $depth;
    $depth[$parser]--;
}

$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
if (!($fp = fopen($file, "r"))) {
    die("could not open XML input");
}

while ($data = fread($fp, 4096)) {
    if (!xml_parse($xml_parser, $data, feof($fp))) {
        die(sprintf("XML error: %s at line %d",
                    xml_error_string(xml_get_error_code($xml_parser)),
                    xml_get_current_line_number($xml_parser)));
    }
}
xml_parser_free($xml_parser);
?>

Exemplos
Exemplo arrumação de Tag XML
Exemplos


Exemplo arrumação de Tag XML

Exemplo #1 Arrumar XML to HTML

Este exemplo arruma tags do documento XML diretamente para tags HTML. Elementos não encontrados no "array de arrumação" são ignorados. É claro, este exemplo trabalhará apenas com um tipo de documento XML específico.

<?php
$file = "data.xml";
$map_array = array(
    "BOLD"     => "B",
    "EMPHASIS" => "I",
    "LITERAL"  => "TT"
);

function startElement($parser, $name, $attrs)
{
    global $map_array;
    if (isset($map_array[$name])) {
        echo "<$map_array[$name]>";
    }
}

function endElement($parser, $name)
{
    global $map_array;
    if (isset($map_array[$name])) {
        echo "</$map_array[$name]>";
    }
}

function characterData($parser, $data)
{
    echo $data;
}

$xml_parser = xml_parser_create();
// use case-folding so we are sure to find the tag in $map_array
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
if (!($fp = fopen($file, "r"))) {
    die("could not open XML input");
}

while ($data = fread($fp, 4096)) {
    if (!xml_parse($xml_parser, $data, feof($fp))) {
        die(sprintf("XML error: %s at line %d",
                    xml_error_string(xml_get_error_code($xml_parser)),
                    xml_get_current_line_number($xml_parser)));
    }
}
xml_parser_free($xml_parser);
?>

Exemplo estruturado de elementos XML
Exemplo de entidade externa do XML
Exemplos


Exemplo de entidade externa do XML

Este exemplo destaca o código XML. Ele ilusta como utilizar um analisador de referência a uma entity externa para incluir e analisar outros documentos, tão bem como PIs (instruções de processo) podem ser processadas, e uma forma de determinar "trust" para PIs contendo códigos.

Documentos XML que podem ser utilizados para este exemplo são encontrados abaixo do exemplo (xmltest.xml e xmltest2.xml.)

Exemplo #1 Exemplo da Entidade Externa

<?php
$file = "xmltest.xml";

function trustedFile($file)
{
    // only trust local files owned by ourselves
    if (!eregi("^([a-z]+)://", $file)
        && fileowner($file) == getmyuid()) {
            return true;
    }
    return false;
}

function startElement($parser, $name, $attribs)
{
    echo "&lt;<font color=\"#0000cc\">$name</font>";
    if (count($attribs)) {
        foreach ($attribs as $k => $v) {
            echo " <font color=\"#009900\">$k</font>=\"<font
                   color=\"#990000\">$v</font>\"";
        }
    }
    echo "&gt;";
}

function endElement($parser, $name)
{
    echo "&lt;/<font color=\"#0000cc\">$name</font>&gt;";
}

function characterData($parser, $data)
{
    echo "<b>$data</b>";
}

function PIHandler($parser, $target, $data)
{
    switch (strtolower($target)) {
        case "php":
            global $parser_file;
            // If the parsed document is "trusted", we say it is safe
            // to execute PHP code inside it.  If not, display the code
            // instead.
            if (trustedFile($parser_file[$parser])) {
                eval($data);
            } else {
                printf("Untrusted PHP code: <i>%s</i>",
                        htmlspecialchars($data));
            }
            break;
    }
}

function defaultHandler($parser, $data)
{
    if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
        printf('<font color="#aa00aa">%s</font>',
                htmlspecialchars($data));
    } else {
        printf('<font size="-1">%s</font>',
                htmlspecialchars($data));
    }
}

function externalEntityRefHandler($parser, $openEntityNames, $base, $systemId,
                                  $publicId) {
    if ($systemId) {
        if (!list($parser, $fp) = new_xml_parser($systemId)) {
            printf("Could not open entity %s at %s\n", $openEntityNames,
                   $systemId);
            return false;
        }
        while ($data = fread($fp, 4096)) {
            if (!xml_parse($parser, $data, feof($fp))) {
                printf("XML error: %s at line %d while parsing entity %s\n",
                       xml_error_string(xml_get_error_code($parser)),
                       xml_get_current_line_number($parser), $openEntityNames);
                xml_parser_free($parser);
                return false;
            }
        }
        xml_parser_free($parser);
        return true;
    }
    return false;
}

function new_xml_parser($file)
{
    global $parser_file;

    $xml_parser = xml_parser_create();
    xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
    xml_set_element_handler($xml_parser, "startElement", "endElement");
    xml_set_character_data_handler($xml_parser, "characterData");
    xml_set_processing_instruction_handler($xml_parser, "PIHandler");
    xml_set_default_handler($xml_parser, "defaultHandler");
    xml_set_external_entity_ref_handler($xml_parser, "externalEntityRefHandler");

    if (!($fp = @fopen($file, "r"))) {
        return false;
    }
    if (!is_array($parser_file)) {
        settype($parser_file, "array");
    }
    $parser_file[$xml_parser] = $file;
    return array($xml_parser, $fp);
}

if (!(list($xml_parser, $fp) = new_xml_parser($file))) {
    die("could not open XML input");
}

echo "<pre>";
while ($data = fread($fp, 4096)) {
    if (!xml_parse($xml_parser, $data, feof($fp))) {
        die(sprintf("XML error: %s at line %d\n",
                    xml_error_string(xml_get_error_code($xml_parser)),
                    xml_get_current_line_number($xml_parser)));
    }
}
echo "</pre>";
echo "parse complete\n";
xml_parser_free($xml_parser);

?>

Exemplo #2 xmltest.xml

<?xml version='1.0'?>
<!DOCTYPE chapter SYSTEM "/just/a/test.dtd" [
<!ENTITY plainEntity "FOO entity">
<!ENTITY systemEntity SYSTEM "xmltest2.xml">
]>
<chapter>
 <TITLE>Title &plainEntity;</TITLE>
 <para>
  <informaltable>
   <tgroup cols="3">
    <tbody>
     <row><entry>a1</entry><entry morerows="1">b1</entry><entry>c1</entry></row>
     <row><entry>a2</entry><entry>c2</entry></row>
     <row><entry>a3</entry><entry>b3</entry><entry>c3</entry></row>
    </tbody>
   </tgroup>
  </informaltable>
 </para>
 &systemEntity;
 <section id="about">
  <title>About this Document</title>
  <para>
   <!-- this is a comment -->
   <?php echo 'Hi!  This is PHP version ' . phpversion(); ?>
  </para>
 </section>
</chapter>

Este arquivo é incluido por xmltest.xml:

Exemplo #3 xmltest2.xml

<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY testEnt "test entity">
]>
<foo>
   <element attrib="value"/>
   &testEnt;
   <?php echo "This is some more PHP code being executed."; ?>
</foo>

Exemplo arrumação de Tag XML
Funções para analisar XML
Exemplos


Funções para analisar XML

Índice

  • utf8_decode — Converte uma string com caracteres ISO-8859-1 codificadas com UTF-8 para single-byte ISO-8859-1.
  • utf8_encode — Codifica um string ISO-8859-1 para UTF-8
  • xml_error_string — Obtém uma string de erro do analisador XML
  • xml_get_current_byte_index — Obtém o índice do byte atual para um analisador XML
  • xml_get_current_column_number — Obtém o número da coluna atual para um analisador XML
  • xml_get_current_line_number — Obtém o número da linha para um analisador XML
  • xml_get_error_code — Obtém um código de erro do analisador XML
  • xml_parse_into_struct — Analisa dados XML dentro de uma estrutura de array
  • xml_parse — Inicia a análise em um documento XML
  • xml_parser_create_ns — Cria um analisador XML com suporte a namespace
  • xml_parser_create — Cria um analisador XML
  • xml_parser_free — Free an XML parser
  • xml_parser_get_option — Obtém as opções de um analisador (parser) XML
  • xml_parser_set_option — Define opções em um analisador (parser) XML
  • xml_set_character_data_handler — Set up character data handler
  • xml_set_default_handler — Set up default handler
  • xml_set_element_handler — Set up start and end element handlers
  • xml_set_end_namespace_decl_handler — Set up end namespace declaration handler
  • xml_set_external_entity_ref_handler — Set up external entity reference handler
  • xml_set_notation_decl_handler — Set up notation declaration handler
  • xml_set_object — Use XML Parser within an object
  • xml_set_processing_instruction_handler — Set up processing instruction (PI) handler
  • xml_set_start_namespace_decl_handler — Set up start namespace declaration handler
  • xml_set_unparsed_entity_decl_handler — Set up unparsed entity declaration handler
Exemplo de entidade externa do XML
utf8_decode
XML Parser


Converte uma string com caracteres ISO-8859-1 codificadas com UTF-8 para single-byte ISO-8859-1.

Funções para analisar XML
utf8_encode
Funções para analisar XML
PHP Manual

utf8_decode

(PHP 4, PHP 5)

utf8_decode — Converte uma string com caracteres ISO-8859-1 codificadas com UTF-8 para single-byte ISO-8859-1.

Descrição

string utf8_decode ( string $data )

Esta função decodifica data, assumido ser codificada em UTF-8, para ISO-8859-1.

Parâmetros

data

A string codificada UTF-8.

Valor Retornado

Retorna a tradução ISO-8859-1 de data.

Veja Também

  • utf8_encode() - Codifica um string ISO-8859-1 para UTF-8 for an explanation of UTF-8 encoding

Funções para analisar XML
utf8_encode
Funções para analisar XML


Codifica um string ISO-8859-1 para UTF-8

utf8_decode
xml_error_string
Funções para analisar XML
PHP Manual

utf8_encode

(PHP 4, PHP 5)

utf8_encode — Codifica um string ISO-8859-1 para UTF-8

Descrição

string utf8_encode ( string $data )

Esta função codifica uma string data para UTF-8, e retorna uma versão codificada. UTF-8 é o mecanismo padrão usado pela Unicode para codificação de valores amplos de caractere dentro de um byte stream. UTF-8 é transparente para caracteres simplesASCII, é auto-sincronizado (quer dizer que isso é possível para um programa compreender onde nos caracteres bytestream começar) e pode ser usado funções de comparção de strings normais para seleção e semelhança. PHP codifica caracteres UTF-8 em até quatro bytes, desse jeito:

UTF-8 encoding
bytes | bits | representation
1 | 7 | 0bbbbbbb
2 | 11 | 110bbbbb 10bbbbbb
3 | 16 | 1110bbbb 10bbbbbb 10bbbbbb
4 | 21 | 11110bbb 10bbbbbb 10bbbbbb 10bbbbbb
Cada b representa um bit que pode ser usado para guardar dados de caracter.

Parâmetros

data

Uma string ISO-8859-1.

Valor Retornado

Retorna a tradução UTF-8 de data.

utf8_decode
xml_error_string
Funções para analisar XML


Obtém uma string de erro do analisador XML

utf8_encode
xml_get_current_byte_index
Funções para analisar XML
PHP Manual

xml_error_string

(PHP 4, PHP 5)

xml_error_string — Obtém uma string de erro do analisador XML

Descrição

string xml_error_string ( int $code )

Obtém a string do erro do analisador XML associado com um dado code.

Parâmetros

code

Um código de erro de xml_get_error_code().

Valor Retornado

Retorna uma string com uma descrição textual do código de erro code, ou FALSE se nenhuma descrição for encontrada.

Veja Também

  • xml_get_error_code() - Obtém um código de erro do analisador XML

utf8_encode
xml_get_current_byte_index
Funções para analisar XML


Obtém o índice do byte atual para um analisador XML

xml_error_string
xml_get_current_column_number
Funções para analisar XML
PHP Manual

xml_get_current_byte_index

(PHP 4, PHP 5)

xml_get_current_byte_index — Obtém o índice do byte atual para um analisador XML

Descrição

int xml_get_current_byte_index ( resource $parser )

Obtém o atual índice do byte de um dado analisador XML.

Parâmetros

parser

Uma referência ao analisador XML para conseguir o índice do byte.

Valor Retornado

Esta função retorna FALSE Se parser não se refere a um analisador válido, senão ele retorna qual o índice do byte o analisador está atualmente em seu registro de dados (buffer data) (começando do 0).

Notas

Aviso

Esta função retorna índice do byte de acordo com o texto UTF-8 codificado desconsiderando se a entrada está em outra codificação.

Veja Também

  • xml_get_current_column_index()
  • xml_get_current_line_index()

xml_error_string
xml_get_current_column_number
Funções para analisar XML


Obtém o número da coluna atual para um analisador XML

xml_get_current_byte_index
xml_get_current_line_number
Funções para analisar XML
PHP Manual

xml_get_current_column_number

(PHP 4, PHP 5)

xml_get_current_column_number — Obtém o número da coluna atual para um analisador XML

Descrição

int xml_get_current_column_number ( resource $parser )

Obtém o número da coluna atual de um dado analisador XML.

Parâmetros

parser

Uma referência ao analisador XML obter o número da coluna.

Valor Retornado

Esta função retorna FALSE se parser não se refere a um analisador válido, senão ele retorna qual coluna na linha atual (como dado por xml_get_current_line_number()) o analisador está atualmente.

Veja Também

  • xml_get_current_byte_index() - Obtém o índice do byte atual para um analisador XML
  • xml_get_current_line_index()

xml_get_current_byte_index
xml_get_current_line_number
Funções para analisar XML


Obtém o número da linha para um analisador XML

xml_get_current_column_number
xml_get_error_code
Funções para analisar XML
PHP Manual

xml_get_current_line_number

(PHP 4, PHP 5)

xml_get_current_line_number — Obtém o número da linha para um analisador XML

Descrição

int xml_get_current_line_number ( resource $parser )

Obtém o número da linha atual para um dado analisador XML.

Parâmetros

parser

Uma referência ao analisador XML obter o número da linha.

Valor Retornado

Esta função retorna FALSE se parser não se refere a um analisador válido, senão ele retorna qual linha o analisador está atualmente em seu registro de dados (data buffer).

Veja Também

  • xml_get_current_column_index()
  • xml_get_current_byte_index() - Obtém o índice do byte atual para um analisador XML

xml_get_current_column_number
xml_get_error_code
Funções para analisar XML


Obtém um código de erro do analisador XML

xml_get_current_line_number
xml_parse_into_struct
Funções para analisar XML
PHP Manual

xml_get_error_code

(PHP 4, PHP 5)

xml_get_error_code — Obtém um código de erro do analisador XML

Descrição

int xml_get_error_code ( resource $parser )

Obtém o código de erro do analisador XML.

Parâmetros

parser

Uma referência para o analisador XML obter código de erro.

Valor Retornado

Esta função retorna FALSE se parser não se refere a um analisadore válido, senão ele retorna um dos códigos de erro listados na seção código de erros.

Veja Também

  • xml_error_string() - Obtém uma string de erro do analisador XML

xml_get_current_line_number
xml_parse_into_struct
Funções para analisar XML


Analisa dados XML dentro de uma estrutura de array

xml_get_error_code
xml_parse
Funções para analisar XML
PHP Manual

xml_parse_into_struct

(PHP 4, PHP 5)

xml_parse_into_struct — Analisa dados XML dentro de uma estrutura de array

Descrição

int xml_parse_into_struct ( resource $parser , string $data , array &$values [, array &$index ] )

Esta função analisa uma arquivo XML dentro de 2 estruturas de array paralelas, um (index) contendo indicadores para a localização dos valores apropriados nos values do array. Estes dois últimos parâmetros deve ser passados por referência.

Parâmetros

parser

data

values

index

Valor Retornado

xml_parse_into_struct() retorna 0 para falha e 1 para sucesso. Isto não é o mesmo igual como FALSE e TRUE, então use com operador ===.

Exemplos

Abaixo tem um exemplo que ilustra a estrutura interna dos arrays sendo gerados pela função. Nós usamos uma simples note tag imbutida dentro da para tag, e quando nós analisamos isto exibe as estruturas geredas:

Exemplo #1 Exemplo da xml_parse_into_struct()

<?php
$simple = "<para><note>simple note</note></para>";
$p = xml_parser_create();
xml_parse_into_struct($p, $simple, $vals, $index);
xml_parser_free($p);
echo "Index array\n";
print_r($index);
echo "\nVals array\n";
print_r($vals);
?>

Quando nós executarmos o código, a saída será:

Index array
Array
(
    [PARA] => Array
        (
            [0] => 0
            [1] => 2
        )

    [NOTE] => Array
        (
            [0] => 1
        )

)

Vals array
Array
(
    [0] => Array
        (
            [tag] => PARA
            [type] => open
            [level] => 1
        )

    [1] => Array
        (
            [tag] => NOTE
            [type] => complete
            [level] => 2
            [value] => simple note
        )

    [2] => Array
        (
            [tag] => PARA
            [type] => close
            [level] => 1
        )

)

Análise dirigida por eventos (Event-driven parsing) (baseada na biblioteca do expat) pode complicado quando você tem um documento XML que é complexo. Esta função não produz um objeto no estilo DOM, mas gera estruturas cômodas de serem organizadas em uma forma de árvore. Assim, nós podemos criar objetos representando os dados nos arquivos facilmente. Vamos considerar o seguinte arquivo representando um pequeno banco de dados de informações de aminoácidos:

Exemplo #2 moldb.xml - pequeno banco de dados de informações moleculares

<?xml version="1.0"?>
<moldb>

    <molecule>
        <name>Alanine</name>
        <symbol>ala</symbol>
        <code>A</code>
        <type>hydrophobic</type>
    </molecule>

    <molecule>
        <name>Lysine</name>
        <symbol>lys</symbol>
        <code>K</code>
        <type>charged</type>
    </molecule>

</moldb>
E alguns códigos para analisar o documento e gerar os objetos apropriados:

Exemplo #3 parsemoldb.php - analisa moldb.xml e cria o array dos objetos moleculares

<?php

class AminoAcid {
    var $name;  // aa name
    var $symbol;    // three letter symbol
    var $code;  // one letter code
    var $type;  // hydrophobic, charged or neutral

    function AminoAcid ($aa)
    {
        foreach ($aa as $k=>$v)
            $this->$k = $aa[$k];
    }
}

function readDatabase($filename)
{
    // lê o banco de dados XML de aminoácidos
    $data = implode("", file($filename));
    $parser = xml_parser_create();
    xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
    xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);
    xml_parse_into_struct($parser, $data, $values, $tags);
    xml_parser_free($parser);

    // loop through the structures
    foreach ($tags as $key=>$val) {
        if ($key == "molecule") {
            $molranges = $val;
            // each contiguous pair of array entries are the
            // lower and upper range for each molecule definition
            for ($i=0; $i < count($molranges); $i+=2) {
                    $offset = $molranges[$i] + 1;
                $len = $molranges[$i + 1] - $offset;
                $tdb[] = parseMol(array_slice($values, $offset, $len));
            }
        } else {
            continue;
        }
    }
    return $tdb;
}

function parseMol($mvalues)
{
    for ($i=0; $i < count($mvalues); $i++) {
        $mol[$mvalues[$i]["tag"]] = $mvalues[$i]["value"];
    }
    return new AminoAcid($mol);
}

$db = readDatabase("moldb.xml");
echo "** Database of AminoAcid objects:\n";
print_r($db);

?>
After executing parsemoldb.php, a variável $db contém um array dos objetos de AminoAcid, e a saída do script confirma isso:
** Database of AminoAcid objects:
Array
(
    [0] => aminoacid Object
        (
            [name] => Alanine
            [symbol] => ala
            [code] => A
            [type] => hydrophobic
        )

    [1] => aminoacid Object
        (
            [name] => Lysine
            [symbol] => lys
            [code] => K
            [type] => charged
        )

)

xml_get_error_code
xml_parse
Funções para analisar XML


Inicia a análise em um documento XML

xml_parse_into_struct
xml_parser_create_ns
Funções para analisar XML
PHP Manual

xml_parse

(PHP 4, PHP 5)

xml_parse — Inicia a análise em um documento XML

Descrição

int xml_parse ( resource $parser , string $data [, bool $is_final ] )

xml_parse() analisa um documento XML. Os manipuladores para os configurados eventos são chamados várias vezes se necessário.

Parâmetros

parser

Uma referência ao analisador XML a ser usado.

data

Pedaço dos dados para análise. Um documento pode ser análisado em partes pelo chamado de xml_parse() várias vezes com novos dados, tão longos quanto o parâmetro is_final está definido e TRUE quando os últimos dados são analisados.

is_final

Se definido e TRUE, data é a última parte dos dados enviados nesta análise.

Valor Retornado

Retorna 1 em sucesso or 0 em falha.

Para análise sem sucesso, informação do erro pode ser recuperada com
xml_get_error_code(),
xml_error_string(),
xml_get_current_line_number(),
xml_get_current_column_number() e
xml_get_current_byte_index().

Nota:

Erros de entidade são reportados no final dos dados, assim somente se is_final está definido e TRUE.

xml_parse_into_struct
xml_parser_create_ns
Funções para analisar XML


Cria um analisador XML com suporte a namespace

xml_parse
xml_parser_create
Funções para analisar XML
PHP Manual

xml_parser_create_ns

(PHP 4 >= 4.0.5, PHP 5)

xml_parser_create_ns — Cria um analisador XML com suporte a namespace

Descrição

resource xml_parser_create_ns ([ string $encoding [, string $separator ]] )

xml_parser_create_ns() cria um novo analisador XML com suporte namespace do XML e retorna um resource handle fazendo referência para ele ser usado por outras funções XML.

Parâmetros

encoding

O opcional encoding especifica a codificação de caractere para entrada/saída no PHP 4. Iniciando no PHP 5, a codificação de entrada é automaticamente detectada, então que o parâmetro encoding especifica somente a codificação de saída. No PHP 4, a codificação de saída padrão é igual ao charset da entrada. No PHP 5.0.0 e 5.0.1, o charset de saída padrão é ISO-8859-1, quando no PHP 5.0.2 e superior é UTF-8. As suportadas codificações são ISO-8859-1, UTF-8 e US-ASCII.

separator

Com um namespace ciente do parser de parâmetros de tags passados para vários manipuladores de funções consistirão do namespace e nome da tag separados pela string especificada em seperator ou ':' por padrão.

Valor Retornado

Retorna um manipulador de resource para o novo parser XML.

Veja Também

  • xml_parser_create() - Cria um analisador XML
  • xml_parser_free() - Free an XML parser

xml_parse
xml_parser_create
Funções para analisar XML


Cria um analisador XML

xml_parser_create_ns
xml_parser_free
Funções para analisar XML
PHP Manual

xml_parser_create

(PHP 4, PHP 5)

xml_parser_create — Cria um analisador XML

Descrição

resource xml_parser_create ([ string $encoding ] )

xml_parser_create() cria um novo analisador XML e retorna um resource handle fazendo referência a ele para ser usado por outras funções XML.

Parâmetros

encoding

O opcional encoding especifica a codificação de caractere para entrada/saída no PHP 4. Iniciando no PHP 5, a codificação de entrada é automaticamente detectada, então que o parâmetro encoding especifica somente a codificação de saída. No PHP 4, a codificação de saída padrão é igual ao charset da entrada. No PHP 5.0.0 e 5.0.1, o charset de saída padrão é ISO-8859-1, quando no PHP 5.0.2 e superior é UTF-8. As suportadas codificações são ISO-8859-1, UTF-8 e US-ASCII.

Valor Retornado

Retorna um manipulador de resource para o novo parser XML.

Veja Também

  • xml_parser_create_ns() - Cria um analisador XML com suporte a namespace
  • xml_parser_free() - Free an XML parser

xml_parser_create_ns
xml_parser_free
Funções para analisar XML


Free an XML parser

xml_parser_create
xml_parser_get_option
Funções para analisar XML
PHP Manual

xml_parser_free

(PHP 4, PHP 5)

xml_parser_free — Free an XML parser

Descrição

bool xml_parser_free ( resource $parser )

Libera um dado parser XML.

Parâmetros

parser
Uma referência para o analisador XML (to free) esgotar .

Valor Retornado

Esta função retorna FALSE se parser (analisador) não se refere a um analisador válido, senão ele (frees) esgota o analisador e retorna TRUE.

xml_parser_create
xml_parser_get_option
Funções para analisar XML


Obtém as opções de um analisador (parser) XML

xml_parser_free
xml_parser_set_option
Funções para analisar XML
PHP Manual

xml_parser_get_option

(PHP 4, PHP 5)

xml_parser_get_option — Obtém as opções de um analisador (parser) XML

Descrição

mixed xml_parser_get_option ( resource $parser , int $option )

Obtém um valor de opção de um analisador XML.

Parâmetros

parser
Uma referência para o analisador XML para obter uma opção.
option
Qual opção buscar. XML_OPTION_CASE_FOLDING e XML_OPTION_TARGET_ENCODING estão disponíveis. Veja xml_parser_set_option() para suas descrições.

Valor Retornado

Esta função retorna FALSE se o parser não se referir a um analisador válido ou se a opção não é válida (gera também um E_WARNING). Senão o valor da opção é retornado.

xml_parser_free
xml_parser_set_option
Funções para analisar XML


Define opções em um analisador (parser) XML

xml_parser_get_option
xml_set_character_data_handler
Funções para analisar XML
PHP Manual

xml_parser_set_option

(PHP 4, PHP 5)

xml_parser_set_option — Define opções em um analisador (parser) XML

Descrição

bool xml_parser_set_option ( resource $parser , int $option , mixed $value )

Define uma opção em uma analisador (parser) XML.

Parâmetros

parser

Uma referência para o analisador XML para obter uma opção.

option

Qual a opção para definir. Veja abaixo.

As opções disponíveis são as seguintes:

XML parser options
Option constant | Data type | Description
XML_OPTION_CASE_FOLDING | integer | Controla se case-folding está habilitado para este analisador XML. Ativado por padrão.
XML_OPTION_SKIP_TAGSTART | integer | Especifica quantos caracteres devem ser ignorados no início do nome de uma tag.
XML_OPTION_SKIP_WHITE | integer | Se irá pular valores constituídos por espaços em branco.
XML_OPTION_TARGET_ENCODING | string | Define qual codificação será usada neste analisador XML. Por pradrão, é definido com a mesma codificação usada pelo xml_parser_create(). Codificações suportadas são ISO-8859-1, US-ASCII e UTF-8.

value

Novo valor da opção.

Valor Retornado

Esta função retorna FALSE se parser não se referir a um analisador válido, ou se a opção não pode ser definida. Caso contrário, a opção esta definida e é retornado TRUE.

xml_parser_get_option
xml_set_character_data_handler
Funções para analisar XML


Set up character data handler

xml_parser_set_option
xml_set_default_handler
Funções para analisar XML
PHP Manual

xml_set_character_data_handler

(PHP 4, PHP 5)

xml_set_character_data_handler — Set up character data handler

Descrição

bool xml_set_character_data_handler ( resource $parser , callback $handler )

Sets the character data handler function for the XML parser parser.

Parâmetros

parser

A reference to the XML parser to set up character data handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept two parameters:

handler ( resource $parser , string $data )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
data
The second parameter, data, contains the character data as a string.

Character data handler is called for every piece of a text in the XML document. It can be called multiple times inside each fragment (e.g. for non-ASCII strings).

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_parser_set_option
xml_set_default_handler
Funções para analisar XML


Set up default handler

xml_set_character_data_handler
xml_set_element_handler
Funções para analisar XML
PHP Manual

xml_set_default_handler

(PHP 4, PHP 5)

xml_set_default_handler — Set up default handler

Descrição

bool xml_set_default_handler ( resource $parser , callback $handler )

Sets the default handler function for the XML parser parser.

Parâmetros

parser

A reference to the XML parser to set up default handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept two parameters:

handler ( resource $parser , string $data )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
data
The second parameter, data, contains the character data.This may be the XML declaration, document type declaration, entities or other data for which no other handler exists.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_character_data_handler
xml_set_element_handler
Funções para analisar XML


Set up start and end element handlers

xml_set_default_handler
xml_set_end_namespace_decl_handler
Funções para analisar XML
PHP Manual

xml_set_element_handler

(PHP 4, PHP 5)

xml_set_element_handler — Set up start and end element handlers

Descrição

bool xml_set_element_handler ( resource $parser , callback $start_element_handler , callback $end_element_handler )

Sets the element handler functions for the XML parser. start_element_handler and end_element_handler are strings containing the names of functions that must exist when xml_parse() is called for parser.

Parâmetros

parser

A reference to the XML parser to set up start and end element handler functions.

start_element_handler

The function named by start_element_handler must accept three parameters:

start_element_handler ( resource $parser , string $name , array $attribs )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
name
The second parameter, name, contains the name of the element for which this handler is called.If case-folding is in effect for this parser, the element name will be in uppercase letters.
attribs
The third parameter, attribs, contains an associative array with the element's attributes (if any).The keys of this array are the attribute names, the values are the attribute values.Attribute names are case-folded on the same criteria as element names.Attribute values are not case-folded. The original order of the attributes can be retrieved by walking through attribs the normal way, using each().The first key in the array was the first attribute, and so on.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

end_element_handler

The function named by end_element_handler must accept two parameters:

end_element_handler ( resource $parser , string $name )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
name
The second parameter, name, contains the name of the element for which this handler is called.If case-folding is in effect for this parser, the element name will be in uppercase letters.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_default_handler
xml_set_end_namespace_decl_handler
Funções para analisar XML


Set up end namespace declaration handler

xml_set_element_handler
xml_set_external_entity_ref_handler
Funções para analisar XML
PHP Manual

xml_set_end_namespace_decl_handler

(PHP 4 >= 4.0.5, PHP 5)

xml_set_end_namespace_decl_handler — Set up end namespace declaration handler

Descrição

bool xml_set_end_namespace_decl_handler ( resource $parser , callback $handler )

Set a handler to be called when leaving the scope of a namespace declaration. This will be called, for each namespace declaration, after the handler for the end tag of the element in which the namespace was declared.

Parâmetros

parser

A reference to the XML parser.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept two parameters, and should return an integer value. If the value returned from the handler is FALSE (which it will be if no value is returned), the XML parser will stop parsing and xml_get_error_code() will return XML_ERROR_EXTERNAL_ENTITY_HANDLING.

handler ( resource $parser , string $prefix )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
prefix
The prefix is a string used to reference the namespace within an XML object.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Notas

Nota:

This event is not supported under LibXML.

Veja Também

  • xml_set_start_namespace_decl_handler() - Set up start namespace declaration handler

xml_set_element_handler
xml_set_external_entity_ref_handler
Funções para analisar XML


Set up external entity reference handler

xml_set_end_namespace_decl_handler
xml_set_notation_decl_handler
Funções para analisar XML
PHP Manual

xml_set_external_entity_ref_handler

(PHP 4, PHP 5)

xml_set_external_entity_ref_handler — Set up external entity reference handler

Descrição

bool xml_set_external_entity_ref_handler ( resource $parser , callback $handler )

Sets the external entity reference handler function for the XML parser parser.

Parâmetros

parser

A reference to the XML parser to set up external entity reference handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept five parameters, and should return an integer value.If the value returned from the handler is FALSE (which it will be if no value is returned), the XML parser will stop parsing and xml_get_error_code() will return XML_ERROR_EXTERNAL_ENTITY_HANDLING.

handler ( resource $parser , string $open_entity_names , string $base , string $system_id , string $public_id )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
open_entity_names
The second parameter, open_entity_names, is a space-separated list of the names of the entities that are open for the parse of this entity (including the name of the referenced entity).
base
This is the base for resolving the system identifier (system_id) of the external entity.Currently this parameter will always be set to an empty string.
system_id
The fourth parameter, system_id, is the system identifier as specified in the entity declaration.
public_id
The fifth parameter, public_id, is the public identifier as specified in the entity declaration, or an empty string if none was specified; the whitespace in the public identifier will have been normalized as required by the XML spec.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_end_namespace_decl_handler
xml_set_notation_decl_handler
Funções para analisar XML


Set up notation declaration handler

xml_set_external_entity_ref_handler
xml_set_object
Funções para analisar XML
PHP Manual

xml_set_notation_decl_handler

(PHP 4, PHP 5)

xml_set_notation_decl_handler — Set up notation declaration handler

Descrição

bool xml_set_notation_decl_handler ( resource $parser , callback $handler )

Sets the notation declaration handler function for the XML parser parser.

A notation declaration is part of the document's DTD and has the following format:

<!NOTATION <parameter>name</parameter>
{ <parameter>systemId</parameter> | <parameter>publicId</parameter>?>
See » section 4.7 of the XML 1.0 spec for the definition of notation declarations.

Parâmetros

parser

A reference to the XML parser to set up notation declaration handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept five parameters:

handler ( resource $parser , string $notation_name , string $base , string $system_id , string $public_id )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
notation_name
This is the notation's name, as per the notation format described above.
base
This is the base for resolving the system identifier (system_id) of the notation declaration. Currently this parameter will always be set to an empty string.
system_id
System identifier of the external notation declaration.
public_id
Public identifier of the external notation declaration.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_external_entity_ref_handler
xml_set_object
Funções para analisar XML


Use XML Parser within an object

xml_set_notation_decl_handler
xml_set_processing_instruction_handler
Funções para analisar XML
PHP Manual

xml_set_object

(PHP 4, PHP 5)

xml_set_object — Use XML Parser within an object

Descrição

bool xml_set_object ( resource $parser , object &$object )

This function allows to use parser inside object. All callback functions could be set with xml_set_element_handler() etc and assumed to be methods of object.

Parâmetros

parser

A reference to the XML parser to use inside the object.

object

The object where to use the XML parser.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 xml_set_object() example

<?php
class xml  {
    var $parser;

    function xml()
    {
        $this->parser = xml_parser_create();

        xml_set_object($this->parser, $this);
        xml_set_element_handler($this->parser, "tag_open", "tag_close");
        xml_set_character_data_handler($this->parser, "cdata");
    }

    function parse($data)
    {
        xml_parse($this->parser, $data);
    }

    function tag_open($parser, $tag, $attributes)
    {
        var_dump($parser, $tag, $attributes);
    }

    function cdata($parser, $cdata)
    {
        var_dump($parser, $cdata);
    }

    function tag_close($parser, $tag)
    {
        var_dump($parser, $tag);
    }

} // end of class xml

$xml_parser = new xml();
$xml_parser->parse("<A ID='hallo'>PHP</A>");
?>

xml_set_notation_decl_handler
xml_set_processing_instruction_handler
Funções para analisar XML


Set up processing instruction (PI) handler

xml_set_object
xml_set_start_namespace_decl_handler
Funções para analisar XML
PHP Manual

xml_set_processing_instruction_handler

(PHP 4, PHP 5)

xml_set_processing_instruction_handler — Set up processing instruction (PI) handler

Descrição

bool xml_set_processing_instruction_handler ( resource $parser , callback $handler )

Sets the processing instruction (PI) handler function for the XML parser parser.

A processing instruction has the following format:

<?
target data
?>
You can put PHP code into such a tag, but be aware of one limitation: in an XML PI, the PI end tag (?>) can not be quoted, so this character sequence should not appear in the PHP code you embed with PIs in XML documents.If it does, the rest of the PHP code, as well as the "real" PI end tag, will be treated as character data.

Parâmetros

parser

A reference to the XML parser to set up processing instruction (PI) handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept three parameters:

handler ( resource $parser , string $target , string $data )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
target
The second parameter, target, contains the PI target.
data
The third parameter, data, contains the PI data.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_object
xml_set_start_namespace_decl_handler
Funções para analisar XML


Set up start namespace declaration handler

xml_set_processing_instruction_handler
xml_set_unparsed_entity_decl_handler
Funções para analisar XML
PHP Manual

xml_set_start_namespace_decl_handler

(PHP 4 >= 4.0.5, PHP 5)

xml_set_start_namespace_decl_handler — Set up start namespace declaration handler

Descrição

bool xml_set_start_namespace_decl_handler ( resource $parser , callback $handler )

Set a handler to be called when a namespace is declared. Namespace declarations occur inside start tags. But the namespace declaration start handler is called before the start tag handler for each namespace declared in that start tag.

Parâmetros

parser

A reference to the XML parser.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept three parameters, and should return an integer value. If the value returned from the handler is FALSE (which it will be if no value is returned), the XML parser will stop parsing and xml_get_error_code() will return XML_ERROR_EXTERNAL_ENTITY_HANDLING.

handler ( resource $parser , string $prefix , string $uri )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
prefix
The prefix is a string used to reference the namespace within an XML object.
uri
Uniform Resource Identifier (URI) of namespace.

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • xml_set_end_namespace_decl_handler() - Set up end namespace declaration handler

xml_set_processing_instruction_handler
xml_set_unparsed_entity_decl_handler
Funções para analisar XML


Set up unparsed entity declaration handler

xml_set_start_namespace_decl_handler
XMLReader
Funções para analisar XML
PHP Manual

xml_set_unparsed_entity_decl_handler

(PHP 4, PHP 5)

xml_set_unparsed_entity_decl_handler — Set up unparsed entity declaration handler

Descrição

bool xml_set_unparsed_entity_decl_handler ( resource $parser , callback $handler )

Sets the unparsed entity declaration handler function for the XML parser parser.

The handler will be called if the XML parser encounters an external entity declaration with an NDATA declaration, like the following:

<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>}
        NDATA <parameter>notationName</parameter>

See » section 4.2.2 of the XML 1.0 spec for the definition of notation declared external entities.

Parâmetros

parser

A reference to the XML parser to set up unparsed entity declaration handler function.

handler

handler is a string containing the name of a function that must exist when xml_parse() is called for parser.

The function named by handler must accept six parameters:

handler ( resource $parser , string $entity_name , string $base , string $system_id , string $public_id , string $notation_name )
parser
The first parameter, parser, is a reference to the XML parser calling the handler.
entity_name
The name of the entity that is about to be defined.
base
This is the base for resolving the system identifier (systemId) of the external entity.Currently this parameter will always be set to an empty string.
system_id
System identifier for the external entity.
public_id
Public identifier for the external entity.
notation_name
Name of the notation of this entity (see xml_set_notation_decl_handler()).

If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Nota: Ao invés de um nome de função, um array contendo uma referência de objeto e ao nome de método também podem ser fornecidos.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

xml_set_start_namespace_decl_handler
XMLReader
Funções para analisar XML


XMLReader

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • XMLReader — The XMLReader class
    • XMLReader::close — Close the XMLReader input
    • XMLReader::expand — Returns a copy of the current node as a DOM object
    • XMLReader::getAttribute — Get the value of a named attribute
    • XMLReader::getAttributeNo — Get the value of an attribute by index
    • XMLReader::getAttributeNs — Get the value of an attribute by localname and URI
    • XMLReader::getParserProperty — Indicates if specified property has been set
    • XMLReader::isValid — Indicates if the parsed document is valid
    • XMLReader::lookupNamespace — Lookup namespace for a prefix
    • XMLReader::moveToAttribute — Move cursor to a named attribute
    • XMLReader::moveToAttributeNo — Move cursor to an attribute by index
    • XMLReader::moveToAttributeNs — Move cursor to a named attribute
    • XMLReader::moveToElement — Position cursor on the parent Element of current Attribute
    • XMLReader::moveToFirstAttribute — Position cursor on the first Attribute
    • XMLReader::moveToNextAttribute — Position cursor on the next Attribute
    • XMLReader::next — Move cursor to next node skipping all subtrees
    • XMLReader::open — Set the URI containing the XML to parse
    • XMLReader::read — Move to next node in document
    • XMLReader::readInnerXML — Retrieve XML from current node
    • XMLReader::readOuterXML — Retrieve XML from current node, including it self
    • XMLReader::readString — Reads the contents of the current node as an string
    • XMLReader::setParserProperty — Set or Unset parser options
    • XMLReader::setRelaxNGSchema — Set the filename or URI for a RelaxNG Schema
    • XMLReader::setRelaxNGSchemaSource — Set the data containing a RelaxNG Schema
    • XMLReader::setSchema — Validate document against XSD
    • XMLReader::XML — Set the data containing the XML to parse
xml_set_unparsed_entity_decl_handler
Introdução
Manipulação de XML


Introdução

The XMLReader extension is an XML Pull parser. The reader acts as a cursor going forward on the document stream and stopping at each node on the way.

Codificação

It is important to note that internally, libxml uses the UTF-8 encoding and as such, the encoding of the retrieved contents will always be in UTF-8 encoding.

XMLReader
Instalação/Configuração
XMLReader


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XMLReader


Instalação

The XMLReader extension is available in PECL as of PHP 5.0.0 and is included and enabled as of PHP 5.1.0 by default. It can be enabled by adding the argument --enable-xmlreader (or --with-xmlreader before 5.1.0) to the configure line.

This extension is enabled by default. It may be disabled by using the following option at compile time: --disable-xmlreader

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

Esta extensão não possui nenhum tipo resource.

Configurações em Execução
XMLReader
Instalação/Configuração


The XMLReader class

Introdução

The XMLReader extension is an XML Pull parser. The reader acts as a cursor going forward on the document stream and stopping at each node on the way.

Sinopse da classe

XMLReader {
/* Constants */
const int XMLReader::NONE = 0 ;
const int XMLReader::ELEMENT = 1 ;
const int XMLReader::ATTRIBUTE = 2 ;
const int XMLReader::TEXT = 3 ;
const int XMLReader::CDATA = 4 ;
const int XMLReader::ENTITY_REF = 5 ;
const int XMLReader::ENTITY = 6 ;
const int XMLReader::PI = 7 ;
const int XMLReader::COMMENT = 8 ;
const int XMLReader::DOC = 9 ;
const int XMLReader::DOC_TYPE = 10 ;
const int XMLReader::DOC_FRAGMENT = 11 ;
const int XMLReader::NOTATION = 12 ;
const int XMLReader::WHITESPACE = 13 ;
const int XMLReader::SIGNIFICANT_WHITESPACE = 14 ;
const int XMLReader::END_ELEMENT = 15 ;
const int XMLReader::END_ENTITY = 16 ;
const int XMLReader::XML_DECLARATION = 17 ;
const int XMLReader::LOADDTD = 1 ;
const int XMLReader::DEFAULTATTRS = 2 ;
const int XMLReader::VALIDATE = 3 ;
const int XMLReader::SUBST_ENTITIES = 4 ;
/* Properties */
public readonly int $attributeCount ;
public readonly string $baseURI ;
public readonly int $depth ;
public readonly bool $hasAttributes ;
public readonly bool $hasValue ;
public readonly bool $isDefault ;
public readonly bool $isEmptyElement ;
public readonly string $localName ;
public readonly string $name ;
public readonly string $namespaceURI ;
public readonly int $nodeType ;
public readonly string $prefix ;
public readonly string $value ;
public readonly string $xmlLang ;
/* Methods */
bool close ( void )
DOMNode expand ([ DOMNode $basenode ] )
string getAttribute ( string $name )
string getAttributeNo ( int $index )
string getAttributeNs ( string $localName , string $namespaceURI )
bool getParserProperty ( int $property )
bool isValid ( void )
bool lookupNamespace ( string $prefix )
bool moveToAttribute ( string $name )
bool moveToAttributeNo ( int $index )
bool moveToAttributeNs ( string $localName , string $namespaceURI )
bool moveToElement ( void )
bool moveToFirstAttribute ( void )
bool moveToNextAttribute ( void )
bool next ([ string $localname ] )
bool open ( string $URI [, string $encoding [, int $options = 0 ]] )
bool read ( void )
string readInnerXML ( void )
string readOuterXML ( void )
string readString ( void )
bool setParserProperty ( int $property , bool $value )
bool setRelaxNGSchema ( string $filename )
bool setRelaxNGSchemaSource ( string $source )
bool setSchema ( string $filename )
bool xml ( string $source [, string $encoding [, int $options = 0 ]] )
}

Propriedades

attributeCount

The number of attributes on the node

baseURI

The base URI of the node

depth

Depth of the node in the tree, starting at 0

hasAttributes

Indicates if node has attributes

hasValue

Indicates if node has a text value

isDefault

Indicates if attribute is defaulted from DTD

isEmptyElement

Indicates if node is an empty element tag

localName

The local name of the node

name

The qualified name of the node

namespaceURI

The URI of the namespace associated with the node

nodeType

The node type for the node

prefix

The prefix of the namespace associated with the node

value

The text value of the node

xmlLang

The xml:lang scope which the node resides

Constantes pré-definidas

XMLReader Node Types

XMLReader::NONE

No node type

XMLReader::ELEMENT

Start element

XMLReader::ATTRIBUTE

Attribute node

XMLReader::TEXT

Text node

XMLReader::CDATA

CDATA node

XMLReader::ENTITY_REF

Entity Reference node

XMLReader::ENTITY

Entity Declaration node

XMLReader::PI

Processing Instruction node

XMLReader::COMMENT

Comment node

XMLReader::DOC

Document node

XMLReader::DOC_TYPE

Document Type node

XMLReader::DOC_FRAGMENT

Document Fragment node

XMLReader::NOTATION

Notation node

XMLReader::WHITESPACE

Whitespace node

XMLReader::SIGNIFICANT_WHITESPACE

Significant Whitespace node

XMLReader::END_ELEMENT

End Element

XMLReader::END_ENTITY

End Entity

XMLReader::XML_DECLARATION

XML Declaration node

XMLReader Parser Options

XMLReader::LOADDTD

Load DTD but do not validate

XMLReader::DEFAULTATTRS

Load DTD and default attributes but do not validate

XMLReader::VALIDATE

Load DTD and validate while parsing

XMLReader::SUBST_ENTITIES

Substitute entities and expand references

Índice

  • XMLReader::close — Close the XMLReader input
  • XMLReader::expand — Returns a copy of the current node as a DOM object
  • XMLReader::getAttribute — Get the value of a named attribute
  • XMLReader::getAttributeNo — Get the value of an attribute by index
  • XMLReader::getAttributeNs — Get the value of an attribute by localname and URI
  • XMLReader::getParserProperty — Indicates if specified property has been set
  • XMLReader::isValid — Indicates if the parsed document is valid
  • XMLReader::lookupNamespace — Lookup namespace for a prefix
  • XMLReader::moveToAttribute — Move cursor to a named attribute
  • XMLReader::moveToAttributeNo — Move cursor to an attribute by index
  • XMLReader::moveToAttributeNs — Move cursor to a named attribute
  • XMLReader::moveToElement — Position cursor on the parent Element of current Attribute
  • XMLReader::moveToFirstAttribute — Position cursor on the first Attribute
  • XMLReader::moveToNextAttribute — Position cursor on the next Attribute
  • XMLReader::next — Move cursor to next node skipping all subtrees
  • XMLReader::open — Set the URI containing the XML to parse
  • XMLReader::read — Move to next node in document
  • XMLReader::readInnerXML — Retrieve XML from current node
  • XMLReader::readOuterXML — Retrieve XML from current node, including it self
  • XMLReader::readString — Reads the contents of the current node as an string
  • XMLReader::setParserProperty — Set or Unset parser options
  • XMLReader::setRelaxNGSchema — Set the filename or URI for a RelaxNG Schema
  • XMLReader::setRelaxNGSchemaSource — Set the data containing a RelaxNG Schema
  • XMLReader::setSchema — Validate document against XSD
  • XMLReader::XML — Set the data containing the XML to parse
Tipos Resource
XMLReader::close
XMLReader


Close the XMLReader input

XMLReader
XMLReader::expand
XMLReader
PHP Manual

XMLReader::close

(PHP 5 >= 5.1.2)

XMLReader::close — Close the XMLReader input

Descrição

bool XMLReader::close ( void )

Closes the input the XMLReader object is currently parsing.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::open() - Set the URI containing the XML to parse
  • XMLReader::xml() - Set the data containing the XML to parse

XMLReader
XMLReader::expand
XMLReader


Returns a copy of the current node as a DOM object

XMLReader::close
XMLReader::getAttribute
XMLReader
PHP Manual

XMLReader::expand

(PHP 5 >= 5.1.2)

XMLReader::expand — Returns a copy of the current node as a DOM object

Descrição

DOMNode XMLReader::expand ([ DOMNode $basenode ] )

This method copies the current node and returns the appropriate DOM object.

Valor Retornado

The resulting DOMNode or FALSE on error.

XMLReader::close
XMLReader::getAttribute
XMLReader


Get the value of a named attribute

XMLReader::expand
XMLReader::getAttributeNo
XMLReader
PHP Manual

XMLReader::getAttribute

(PHP 5 >= 5.1.2)

XMLReader::getAttribute — Get the value of a named attribute

Descrição

string XMLReader::getAttribute ( string $name )

Returns the value of a named attribute or an empty string if attribute does not exist or not positioned on an element node.

Parâmetros

name

The name of the attribute.

Valor Retornado

The value of the attribute, or an empty string if no attribute with the given name is found or not positioned of element.

Veja Também

  • XMLReader::getAttributeNo() - Get the value of an attribute by index
  • XMLReader::getAttributeNs() - Get the value of an attribute by localname and URI

XMLReader::expand
XMLReader::getAttributeNo
XMLReader


Get the value of an attribute by index

XMLReader::getAttribute
XMLReader::getAttributeNs
XMLReader
PHP Manual

XMLReader::getAttributeNo

(PHP 5 >= 5.1.2)

XMLReader::getAttributeNo — Get the value of an attribute by index

Descrição

string XMLReader::getAttributeNo ( int $index )

Returns the value of an attribute based on its position or an empty string if attribute does not exist or not positioned on an element node.

Parâmetros

index

The position of the attribute.

Valor Retornado

The value of the attribute, or an empty string if no attribute exists at index or not positioned of element.

Veja Também

  • XMLReader::getAttribute() - Get the value of a named attribute
  • XMLReader::getAttributeNs() - Get the value of an attribute by localname and URI

XMLReader::getAttribute
XMLReader::getAttributeNs
XMLReader


Get the value of an attribute by localname and URI

XMLReader::getAttributeNo
XMLReader::getParserProperty
XMLReader
PHP Manual

XMLReader::getAttributeNs

(PHP 5 >= 5.1.2)

XMLReader::getAttributeNs — Get the value of an attribute by localname and URI

Descrição

string XMLReader::getAttributeNs ( string $localName , string $namespaceURI )

Returns the value of an attribute by name and namespace URI or an empty string if attribute does not exist or not positioned on an element node.

Parâmetros

localName

The local name.

namespaceURI

The namespace URI.

Valor Retornado

The value of the attribute, or an empty string if no attribute with the given localName and namespaceURI is found or not positioned of element.

Veja Também

  • XMLReader::getAttribute() - Get the value of a named attribute
  • XMLReader::getAttributeNo() - Get the value of an attribute by index

XMLReader::getAttributeNo
XMLReader::getParserProperty
XMLReader


Indicates if specified property has been set

XMLReader::getAttributeNs
XMLReader::isValid
XMLReader
PHP Manual

XMLReader::getParserProperty

(PHP 5 >= 5.1.2)

XMLReader::getParserProperty — Indicates if specified property has been set

Descrição

bool XMLReader::getParserProperty ( int $property )

Indicates if specified property has been set.

Parâmetros

property

One of the parser option constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::setParserProperty() - Set or Unset parser options

XMLReader::getAttributeNs
XMLReader::isValid
XMLReader


Indicates if the parsed document is valid

XMLReader::getParserProperty
XMLReader::lookupNamespace
XMLReader
PHP Manual

XMLReader::isValid

(PHP 5 >= 5.1.2)

XMLReader::isValid — Indicates if the parsed document is valid

Descrição

bool XMLReader::isValid ( void )

Returns a boolean indicating if the document being parsed is currently valid.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Validating XML

<?php
$xml = XMLReader::open('test.xml');

// You must to use it
$xml->setParserProperty(XMLReader::VALIDATE, true);

var_dump($xml->isValid());
?>

Veja Também

  • XMLReader::setParserProperty() - Set or Unset parser options
  • XMLReader::setRelaxNGSchema() - Set the filename or URI for a RelaxNG Schema
  • XMLReader::setRelaxNGSchemaSource() - Set the data containing a RelaxNG Schema

XMLReader::getParserProperty
XMLReader::lookupNamespace
XMLReader


Lookup namespace for a prefix

XMLReader::isValid
XMLReader::moveToAttribute
XMLReader
PHP Manual

XMLReader::lookupNamespace

(PHP 5 >= 5.1.2)

XMLReader::lookupNamespace — Lookup namespace for a prefix

Descrição

bool XMLReader::lookupNamespace ( string $prefix )

Lookup in scope namespace for a given prefix.

Parâmetros

prefix

String containing the prefix.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

XMLReader::isValid
XMLReader::moveToAttribute
XMLReader


Move cursor to a named attribute

XMLReader::lookupNamespace
XMLReader::moveToAttributeNo
XMLReader
PHP Manual

XMLReader::moveToAttribute

(PHP 5 >= 5.1.2)

XMLReader::moveToAttribute — Move cursor to a named attribute

Descrição

bool XMLReader::moveToAttribute ( string $name )

Positions cursor on the named attribute.

Parâmetros

name

The name of the attribute.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttributeNo() - Move cursor to an attribute by index
  • XMLReader::moveToAttributeNs() - Move cursor to a named attribute
  • XMLReader::moveToFirstAttribute() - Position cursor on the first Attribute

XMLReader::lookupNamespace
XMLReader::moveToAttributeNo
XMLReader


Move cursor to an attribute by index

XMLReader::moveToAttribute
XMLReader::moveToAttributeNs
XMLReader
PHP Manual

XMLReader::moveToAttributeNo

(PHP 5 >= 5.1.2)

XMLReader::moveToAttributeNo — Move cursor to an attribute by index

Descrição

bool XMLReader::moveToAttributeNo ( int $index )

Positions cursor on attribute based on its position.

Parâmetros

index

The position of the attribute.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::moveToAttributeNs() - Move cursor to a named attribute
  • XMLReader::moveToFirstAttribute() - Position cursor on the first Attribute

XMLReader::moveToAttribute
XMLReader::moveToAttributeNs
XMLReader


Move cursor to a named attribute

XMLReader::moveToAttributeNo
XMLReader::moveToElement
XMLReader
PHP Manual

XMLReader::moveToAttributeNs

(PHP 5 >= 5.1.2)

XMLReader::moveToAttributeNs — Move cursor to a named attribute

Descrição

bool XMLReader::moveToAttributeNs ( string $localName , string $namespaceURI )

Positions cursor on the named attribute in specified namespace.

Parâmetros

localName

The local name.

namespaceURI

The namespace URI.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::moveToAttributeNo() - Move cursor to an attribute by index
  • XMLReader::moveToFirstAttribute() - Position cursor on the first Attribute

XMLReader::moveToAttributeNo
XMLReader::moveToElement
XMLReader


Position cursor on the parent Element of current Attribute

XMLReader::moveToAttributeNs
XMLReader::moveToFirstAttribute
XMLReader
PHP Manual

XMLReader::moveToElement

(PHP 5 >= 5.1.2)

XMLReader::moveToElement — Position cursor on the parent Element of current Attribute

Descrição

bool XMLReader::moveToElement ( void )

Moves cursor to the parent Element of current Attribute.

Valor Retornado

Returns TRUE if successful and FALSE if it fails or not positioned on Attribute when this method is called.

Veja Também

  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::moveToAttributeNo() - Move cursor to an attribute by index
  • XMLReader::moveToAttributeNs() - Move cursor to a named attribute
  • XMLReader::moveToFirstAttribute() - Position cursor on the first Attribute

XMLReader::moveToAttributeNs
XMLReader::moveToFirstAttribute
XMLReader


Position cursor on the first Attribute

XMLReader::moveToElement
XMLReader::moveToNextAttribute
XMLReader
PHP Manual

XMLReader::moveToFirstAttribute

(PHP 5 >= 5.1.2)

XMLReader::moveToFirstAttribute — Position cursor on the first Attribute

Descrição

bool XMLReader::moveToFirstAttribute ( void )

Moves cursor to the first Attribute.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::moveToAttributeNo() - Move cursor to an attribute by index
  • XMLReader::moveToAttributeNs() - Move cursor to a named attribute
  • XMLReader::moveToNextAttribute() - Position cursor on the next Attribute

XMLReader::moveToElement
XMLReader::moveToNextAttribute
XMLReader


Position cursor on the next Attribute

XMLReader::moveToFirstAttribute
XMLReader::next
XMLReader
PHP Manual

XMLReader::moveToNextAttribute

(PHP 5 >= 5.1.2)

XMLReader::moveToNextAttribute — Position cursor on the next Attribute

Descrição

bool XMLReader::moveToNextAttribute ( void )

Moves cursor to the next Attribute if positioned on an Attribute or moves to first attribute if positioned on an Element.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::moveToAttributeNo() - Move cursor to an attribute by index
  • XMLReader::moveToAttributeNs() - Move cursor to a named attribute
  • XMLReader::moveToFirstAttribute() - Position cursor on the first Attribute

XMLReader::moveToFirstAttribute
XMLReader::next
XMLReader


Move cursor to next node skipping all subtrees

XMLReader::moveToNextAttribute
XMLReader::open
XMLReader
PHP Manual

XMLReader::next

(PHP 5 >= 5.1.2)

XMLReader::next — Move cursor to next node skipping all subtrees

Descrição

bool XMLReader::next ([ string $localname ] )

Positions cursor on the next node skipping all subtrees.

Parâmetros

localname

The name of the next node to move to.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToNextAttribute() - Position cursor on the next Attribute
  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute

XMLReader::moveToNextAttribute
XMLReader::open
XMLReader


Set the URI containing the XML to parse

XMLReader::next
XMLReader::read
XMLReader
PHP Manual

XMLReader::open

(PHP 5 >= 5.1.2)

XMLReader::open — Set the URI containing the XML to parse

Descrição

bool XMLReader::open ( string $URI [, string $encoding [, int $options = 0 ]] )

Set the URI containing the XML document to be parsed.

Parâmetros

URI

URI pointing to the document.

encoding

The document encoding or NULL.

options

A bitmask of the LIBXML_* constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns an XMLReader or FALSE on failure.

Erros

This method may be called statically, but will issue an E_STRICT error.

Histórico

Versão | Descrição
5.2.0 | encoding and options were added.

Veja Também

  • XMLReader::xml() - Set the data containing the XML to parse
  • XMLReader::close() - Close the XMLReader input

XMLReader::next
XMLReader::read
XMLReader


Move to next node in document

XMLReader::open
XMLReader::readInnerXML
XMLReader
PHP Manual

XMLReader::read

(PHP 5 >= 5.1.2)

XMLReader::read — Move to next node in document

Descrição

bool XMLReader::read ( void )

Moves cursor to the next node in the document.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::moveToElement() - Position cursor on the parent Element of current Attribute
  • XMLReader::moveToAttribute() - Move cursor to a named attribute
  • XMLReader::next() - Move cursor to next node skipping all subtrees

XMLReader::open
XMLReader::readInnerXML
XMLReader


Retrieve XML from current node

XMLReader::read
XMLReader::readOuterXML
XMLReader
PHP Manual

XMLReader::readInnerXML

(PHP 5 >= 5.2.0)

XMLReader::readInnerXML — Retrieve XML from current node

Descrição

string XMLReader::readInnerXML ( void )

Reads the contents of the current node, including child nodes and markup.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the contents of the current node as a string. Empty string on failure.

Notas

Cuidado

Esta função está somente disponível quando o PHP é compilado com libxml 20620 ou superior.

Veja Também

  • XMLReader::readString() - Reads the contents of the current node as an string
  • XMLReader::readOuterXML() - Retrieve XML from current node, including it self
  • XMLReader::expand() - Returns a copy of the current node as a DOM object

XMLReader::read
XMLReader::readOuterXML
XMLReader


Retrieve XML from current node, including it self

XMLReader::readInnerXML
XMLReader::readString
XMLReader
PHP Manual

XMLReader::readOuterXML

(PHP 5 >= 5.2.0)

XMLReader::readOuterXML — Retrieve XML from current node, including it self

Descrição

string XMLReader::readOuterXML ( void )

Reads the contents of the current node, including the node itself.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the contents of current node, including itself, as a string. Empty string on failure.

Notas

Cuidado

Esta função está somente disponível quando o PHP é compilado com libxml 20620 ou superior.

Veja Também

  • XMLReader::readString() - Reads the contents of the current node as an string
  • XMLReader::readInnerXML() - Retrieve XML from current node
  • XMLReader::expand() - Returns a copy of the current node as a DOM object

XMLReader::readInnerXML
XMLReader::readString
XMLReader


Reads the contents of the current node as an string

XMLReader::readOuterXML
XMLReader::setParserProperty
XMLReader
PHP Manual

XMLReader::readString

(PHP 5 >= 5.2.0)

XMLReader::readString — Reads the contents of the current node as an string

Descrição

string XMLReader::readString ( void )

Reads the contents of the current node as an string.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Returns the content of the current node as a string. Empty string on failure.

Notas

Cuidado

Esta função está somente disponível quando o PHP é compilado com libxml 20620 ou superior.

Veja Também

  • XMLReader::readOuterXML() - Retrieve XML from current node, including it self
  • XMLReader::readInnerXML() - Retrieve XML from current node
  • XMLReader::expand() - Returns a copy of the current node as a DOM object

XMLReader::readOuterXML
XMLReader::setParserProperty
XMLReader


Set or Unset parser options

XMLReader::readString
XMLReader::setRelaxNGSchema
XMLReader
PHP Manual

XMLReader::setParserProperty

(PHP 5 >= 5.1.2)

XMLReader::setParserProperty — Set or Unset parser options

Descrição

bool XMLReader::setParserProperty ( int $property , bool $value )

Set or Unset parser option for the parser. The options must be set
after xmlreader-open() or
xmlreader-xml() are called and before
the first xmlreader-read() call.

Parâmetros

property

One of the parser option constants.

value

If set to TRUE the option will be enabled otherwise will be disabled.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

XMLReader::readString
XMLReader::setRelaxNGSchema
XMLReader


Set the filename or URI for a RelaxNG Schema

XMLReader::setParserProperty
XMLReader::setRelaxNGSchemaSource
XMLReader
PHP Manual

XMLReader::setRelaxNGSchema

(PHP 5 >= 5.2.0)

XMLReader::setRelaxNGSchema — Set the filename or URI for a RelaxNG Schema

Descrição

bool XMLReader::setRelaxNGSchema ( string $filename )

Set the filename or URI for the RelaxNG Schema to use for validation.

Parâmetros

filename

filename or URI pointing to a RelaxNG Schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::setRelaxNGSchemaSource() - Set the data containing a RelaxNG Schema

XMLReader::setParserProperty
XMLReader::setRelaxNGSchemaSource
XMLReader


Set the data containing a RelaxNG Schema

XMLReader::setRelaxNGSchema
XMLReader::setSchema
XMLReader
PHP Manual

XMLReader::setRelaxNGSchemaSource

(PHP 5 >= 5.1.2)

XMLReader::setRelaxNGSchemaSource — Set the data containing a RelaxNG Schema

Descrição

bool XMLReader::setRelaxNGSchemaSource ( string $source )

Set the data containing a RelaxNG Schema to use for validation.

Parâmetros

source

String containing the RelaxNG Schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLReader::setRelaxNGSchema() - Set the filename or URI for a RelaxNG Schema

XMLReader::setRelaxNGSchema
XMLReader::setSchema
XMLReader


Validate document against XSD

XMLReader::setRelaxNGSchemaSource
XMLReader::XML
XMLReader
PHP Manual

XMLReader::setSchema

(PHP 5 >= 5.2.0)

XMLReader::setSchema — Validate document against XSD

Descrição

bool XMLReader::setSchema ( string $filename )

Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read().

Parâmetros

filename

The filename of the XSD schema.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Erros

Issues E_WARNING if libxml was built without schema support, the schema contains errors or if XMLReader::read() has already been called.

Notas

Cuidado

Esta função está somente disponível quando o PHP é compilado com libxml 20620 ou superior.

Veja Também

  • XMLReader::setRelaxNGSchema() - Set the filename or URI for a RelaxNG Schema

XMLReader::setRelaxNGSchemaSource
XMLReader::XML
XMLReader


Set the data containing the XML to parse

XMLReader::setSchema
XMLWriter
XMLReader
PHP Manual

XMLReader::XML

(PHP 5 >= 5.1.2)

XMLReader::XML — Set the data containing the XML to parse

Descrição

bool XMLReader::xml ( string $source [, string $encoding [, int $options = 0 ]] )

Set the data containing the XML to parse.

Parâmetros

source

String containing the XML to be parsed.

encoding

The document encoding or NULL.

options

A bitmask of the LIBXML_* constants.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If called statically, returns an XMLReader or FALSE on failure.

Erros

This method may be called statically, but will issue an E_STRICT error.

Histórico

Versão | Descrição
5.2.0 | encoding and options were added.

Veja Também

  • XMLReader::open() - Set the URI containing the XML to parse
  • XMLReader::close() - Close the XMLReader input

XMLReader::setSchema
XMLWriter
XMLReader


XMLWriter

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • XMLWriter Funções
    • XMLWriter::endAttribute — End attribute
    • XMLWriter::endCData — End current CDATA
    • XMLWriter::endComment — Create end comment
    • XMLWriter::endDocument — End current document
    • XMLWriter::endDTDAttlist — End current DTD AttList
    • XMLWriter::endDTDElement — End current DTD element
    • XMLWriter::endDTDEntity — End current DTD Entity
    • XMLWriter::endDTD — End current DTD
    • XMLWriter::endElement — End current element
    • XMLWriter::endPI — End current PI
    • XMLWriter::flush — Flush current buffer
    • XMLWriter::fullEndElement — End current element
    • XMLWriter::openMemory — Create new xmlwriter using memory for string output
    • XMLWriter::openURI — Create new xmlwriter using source uri for output
    • XMLWriter::outputMemory — Returns current buffer
    • XMLWriter::setIndentString — Set string used for indenting
    • XMLWriter::setIndent — Toggle indentation on/off
    • XMLWriter::startAttributeNS — Create start namespaced attribute
    • XMLWriter::startAttribute — Create start attribute
    • XMLWriter::startCData — Create start CDATA tag
    • XMLWriter::startComment — Create start comment
    • XMLWriter::startDocument — Create document tag
    • XMLWriter::startDTDAttlist — Create start DTD AttList
    • XMLWriter::startDTDElement — Create start DTD element
    • XMLWriter::startDTDEntity — Create start DTD Entity
    • XMLWriter::startDTD — Create start DTD tag
    • XMLWriter::startElementNS — Create start namespaced element tag
    • XMLWriter::startElement — Create start element tag
    • XMLWriter::startPI — Create start PI tag
    • XMLWriter::text — Write text
    • XMLWriter::writeAttributeNS — Write full namespaced attribute
    • XMLWriter::writeAttribute — Write full attribute
    • XMLWriter::writeCData — Write full CDATA tag
    • XMLWriter::writeComment — Write full comment tag
    • XMLWriter::writeDTDAttlist — Write full DTD AttList tag
    • XMLWriter::writeDTDElement — Write full DTD element tag
    • XMLWriter::writeDTDEntity — Write full DTD Entity tag
    • XMLWriter::writeDTD — Write full DTD tag
    • XMLWriter::writeElementNS — Write full namespaced element tag
    • XMLWriter::writeElement — Write full element tag
    • XMLWriter::writePI — Writes a PI
    • XMLWriter::writeRaw — Write a raw XML text
XMLReader::XML
Introdução
Manipulação de XML


Introdução

This is the XMLWriter extension. It wraps the libxml xmlWriter API.

This extension represents a writer that provides a non-cached, forward-only means of generating streams or files containing XML data.

This extension can be used in an object oriented style or a procedural one. Every method documented describes the alternative procedural call.

XMLWriter
Instalação/Configuração
XMLWriter


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XMLWriter


Instalação

This extension is enabled by default. It may be disabled by using the following option at compile time: --disable-xmlwriter

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

There is one resource used by the procedural version of the XMLWriter extension: returned by xmlwriter_open_memory() or xmlwriter_open_uri().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

Esta extensão não possui nenhuma constante.

Tipos Resource
XMLWriter Funções
XMLWriter


XMLWriter Funções

Índice

  • XMLWriter::endAttribute — End attribute
  • XMLWriter::endCData — End current CDATA
  • XMLWriter::endComment — Create end comment
  • XMLWriter::endDocument — End current document
  • XMLWriter::endDTDAttlist — End current DTD AttList
  • XMLWriter::endDTDElement — End current DTD element
  • XMLWriter::endDTDEntity — End current DTD Entity
  • XMLWriter::endDTD — End current DTD
  • XMLWriter::endElement — End current element
  • XMLWriter::endPI — End current PI
  • XMLWriter::flush — Flush current buffer
  • XMLWriter::fullEndElement — End current element
  • XMLWriter::openMemory — Create new xmlwriter using memory for string output
  • XMLWriter::openURI — Create new xmlwriter using source uri for output
  • XMLWriter::outputMemory — Returns current buffer
  • XMLWriter::setIndentString — Set string used for indenting
  • XMLWriter::setIndent — Toggle indentation on/off
  • XMLWriter::startAttributeNS — Create start namespaced attribute
  • XMLWriter::startAttribute — Create start attribute
  • XMLWriter::startCData — Create start CDATA tag
  • XMLWriter::startComment — Create start comment
  • XMLWriter::startDocument — Create document tag
  • XMLWriter::startDTDAttlist — Create start DTD AttList
  • XMLWriter::startDTDElement — Create start DTD element
  • XMLWriter::startDTDEntity — Create start DTD Entity
  • XMLWriter::startDTD — Create start DTD tag
  • XMLWriter::startElementNS — Create start namespaced element tag
  • XMLWriter::startElement — Create start element tag
  • XMLWriter::startPI — Create start PI tag
  • XMLWriter::text — Write text
  • XMLWriter::writeAttributeNS — Write full namespaced attribute
  • XMLWriter::writeAttribute — Write full attribute
  • XMLWriter::writeCData — Write full CDATA tag
  • XMLWriter::writeComment — Write full comment tag
  • XMLWriter::writeDTDAttlist — Write full DTD AttList tag
  • XMLWriter::writeDTDElement — Write full DTD element tag
  • XMLWriter::writeDTDEntity — Write full DTD Entity tag
  • XMLWriter::writeDTD — Write full DTD tag
  • XMLWriter::writeElementNS — Write full namespaced element tag
  • XMLWriter::writeElement — Write full element tag
  • XMLWriter::writePI — Writes a PI
  • XMLWriter::writeRaw — Write a raw XML text
Constantes pré-definidas
XMLWriter::endAttribute
XMLWriter


End attribute

XMLWriter Funções
XMLWriter::endCData
XMLWriter Funções
PHP Manual

XMLWriter::endAttribute

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endAttribute — End attribute

Descrição

Estilo orientado a objetos

bool XMLWriter::endAttribute ( void )

Estilo de procedimentos

bool xmlwriter_end_attribute ( resource $xmlwriter )

Ends the current attribute.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startAttribute() - Create start attribute
  • XMLWriter::startAttributeNS() - Create start namespaced attribute
  • XMLWriter::writeAttribute() - Write full attribute
  • XMLWriter::writeAttributeNS() - Write full namespaced attribute

XMLWriter Funções
XMLWriter::endCData
XMLWriter Funções


End current CDATA

XMLWriter::endAttribute
XMLWriter::endComment
XMLWriter Funções
PHP Manual

XMLWriter::endCData

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endCData — End current CDATA

Descrição

Estilo orientado a objetos

bool XMLWriter::endCData ( void )

Estilo de procedimentos

bool xmlwriter_end_cdata ( resource $xmlwriter )

Ends the current CDATA section.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startCData() - Create start CDATA tag
  • XMLWriter::writeCData() - Write full CDATA tag

XMLWriter::endAttribute
XMLWriter::endComment
XMLWriter Funções


Create end comment

XMLWriter::endCData
XMLWriter::endDocument
XMLWriter Funções
PHP Manual

XMLWriter::endComment

(PHP 5 >= 5.1.2, PECL xmlwriter >= 1.0.0)

XMLWriter::endComment — Create end comment

Descrição

Estilo orientado a objetos

bool XMLWriter::endComment ( void )

Estilo de procedimentos

bool xmlwriter_end_comment ( resource $xmlwriter )

Ends the current comment.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startComment() - Create start comment
  • XMLWriter::writeComment() - Write full comment tag

XMLWriter::endCData
XMLWriter::endDocument
XMLWriter Funções


End current document

XMLWriter::endComment
XMLWriter::endDTDAttlist
XMLWriter Funções
PHP Manual

XMLWriter::endDocument

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endDocument — End current document

Descrição

Estilo orientado a objetos

bool XMLWriter::endDocument ( void )

Estilo de procedimentos

bool xmlwriter_end_document ( resource $xmlwriter )

Ends the current document.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDocument() - Create document tag

XMLWriter::endComment
XMLWriter::endDTDAttlist
XMLWriter Funções


End current DTD AttList

XMLWriter::endDocument
XMLWriter::endDTDElement
XMLWriter Funções
PHP Manual

XMLWriter::endDTDAttlist

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endDTDAttlist — End current DTD AttList

Descrição

Estilo orientado a objetos

bool XMLWriter::endDTDAttlist ( void )

Estilo de procedimentos

bool xmlwriter_end_dtd_attlist ( resource $xmlwriter )

Ends the current DTD attribute list.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDAttlist() - Create start DTD AttList
  • XMLWriter::writeDTDAttlist() - Write full DTD AttList tag

XMLWriter::endDocument
XMLWriter::endDTDElement
XMLWriter Funções


End current DTD element

XMLWriter::endDTDAttlist
XMLWriter::endDTDEntity
XMLWriter Funções
PHP Manual

XMLWriter::endDTDElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endDTDElement — End current DTD element

Descrição

Estilo orientado a objetos

bool XMLWriter::endDTDElement ( void )

Estilo de procedimentos

bool xmlwriter_end_dtd_element ( resource $xmlwriter )

Ends the current DTD element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDElement() - Create start DTD element
  • XMLWriter::writeDTDElement() - Write full DTD element tag

XMLWriter::endDTDAttlist
XMLWriter::endDTDEntity
XMLWriter Funções


End current DTD Entity

XMLWriter::endDTDElement
XMLWriter::endDTD
XMLWriter Funções
PHP Manual

XMLWriter::endDTDEntity

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endDTDEntity — End current DTD Entity

Descrição

Estilo orientado a objetos

bool XMLWriter::endDTDEntity ( void )

Estilo de procedimentos

bool xmlwriter_end_dtd_entity ( resource $xmlwriter )

Ends the current DTD entity.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDEntity() - Create start DTD Entity
  • XMLWriter::writeDTDEntity() - Write full DTD Entity tag

XMLWriter::endDTDElement
XMLWriter::endDTD
XMLWriter Funções


End current DTD

XMLWriter::endDTDEntity
XMLWriter::endElement
XMLWriter Funções
PHP Manual

XMLWriter::endDTD

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endDTD — End current DTD

Descrição

Estilo orientado a objetos

bool XMLWriter::endDTD ( void )

Estilo de procedimentos

bool xmlwriter_end_dtd ( resource $xmlwriter )

Ends the DTD of the document.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTD() - Create start DTD tag
  • XMLWriter::writeDTD() - Write full DTD tag

XMLWriter::endDTDEntity
XMLWriter::endElement
XMLWriter Funções


End current element

XMLWriter::endDTD
XMLWriter::endPI
XMLWriter Funções
PHP Manual

XMLWriter::endElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endElement — End current element

Descrição

Estilo orientado a objetos

bool XMLWriter::endElement ( void )

Estilo de procedimentos

bool xmlwriter_end_element ( resource $xmlwriter )

Ends the current element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startElement() - Create start element tag
  • XMLWriter::writeElement() - Write full element tag

XMLWriter::endDTD
XMLWriter::endPI
XMLWriter Funções


End current PI

XMLWriter::endElement
XMLWriter::flush
XMLWriter Funções
PHP Manual

XMLWriter::endPI

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::endPI — End current PI

Descrição

Estilo orientado a objetos

bool XMLWriter::endPI ( void )

Estilo de procedimentos

bool xmlwriter_end_pi ( resource $xmlwriter )

Ends the current processing instruction.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startPI() - Create start PI tag
  • XMLWriter::writePI() - Writes a PI

XMLWriter::endElement
XMLWriter::flush
XMLWriter Funções


Flush current buffer

XMLWriter::endPI
XMLWriter::fullEndElement
XMLWriter Funções
PHP Manual

XMLWriter::flush

(PHP 5 >= 5.1.2, PECL xmlwriter >= 1.0.0)

XMLWriter::flush — Flush current buffer

Descrição

Estilo orientado a objetos

mixed XMLWriter::flush ([ bool $empty ] )

Estilo de procedimentos

mixed xmlwriter_flush ( resource $xmlwriter [, bool $empty ] )

Flushes the current buffer.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

empty

Whether to empty the buffer or no. Default is TRUE.

Valor Retornado

If you opened the writer in memory, this function returns the generated XML buffer, Else, if using URI, this function will write the buffer and return the number of written bytes.

XMLWriter::endPI
XMLWriter::fullEndElement
XMLWriter Funções


End current element

XMLWriter::flush
XMLWriter::openMemory
XMLWriter Funções
PHP Manual

XMLWriter::fullEndElement

(PHP 5 >= 5.2.0, PECL xmlwriter >= 2.0.4)

XMLWriter::fullEndElement — End current element

Descrição

Estilo orientado a objetos

bool XMLWriter::fullEndElement ( void )

Estilo de procedimentos

bool xmlwriter_full_end_element ( resource $xmlwriter )

End the current xml element. Writes an end tag even if the element is empty.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endElement() - End current element

XMLWriter::flush
XMLWriter::openMemory
XMLWriter Funções


Create new xmlwriter using memory for string output

XMLWriter::fullEndElement
XMLWriter::openURI
XMLWriter Funções
PHP Manual

XMLWriter::openMemory

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::openMemory — Create new xmlwriter using memory for string output

Descrição

Estilo orientado a objetos

bool XMLWriter::openMemory ( void )

Estilo de procedimentos

resource xmlwriter_open_memory ( void )

Creates a new XMLWriter using memory for string output.

Parâmetros

Valor Retornado

Estilo orientado a objetos: Retorna TRUE em caso de sucesso ou FALSE em falhas.

Estilo de procedimentos: Returns a new xmlwriter recurso for later use with the xmlwriter functions on success, FALSE on error.

Veja Também

  • XMLWriter::openURI() - Create new xmlwriter using source uri for output

XMLWriter::fullEndElement
XMLWriter::openURI
XMLWriter Funções


Create new xmlwriter using source uri for output

XMLWriter::openMemory
XMLWriter::outputMemory
XMLWriter Funções
PHP Manual

XMLWriter::openURI

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::openURI — Create new xmlwriter using source uri for output

Descrição

Estilo orientado a objetos

bool XMLWriter::openURI ( string $uri )

Estilo de procedimentos

resource xmlwriter_open_uri ( string $uri )

Creates a new XMLWriter using uri for the output.

Parâmetros

uri

The URI of the resource for the output.

Valor Retornado

Estilo orientado a objetos: Retorna TRUE em caso de sucesso ou FALSE em falhas.

Estilo de procedimentos: Returns a new xmlwriter recurso for later use with the xmlwriter functions on success, FALSE on error.

Veja Também

  • XMLWriter::openMemory() - Create new xmlwriter using memory for string output

XMLWriter::openMemory
XMLWriter::outputMemory
XMLWriter Funções


Returns current buffer

XMLWriter::openURI
XMLWriter::setIndentString
XMLWriter Funções
PHP Manual

XMLWriter::outputMemory

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::outputMemory — Returns current buffer

Descrição

Estilo orientado a objetos

string XMLWriter::outputMemory ([ bool $flush ] )

Estilo de procedimentos

string xmlwriter_output_memory ( resource $xmlwriter [, bool $flush ] )

Returns the current buffer.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

flush

Whether to flush the output buffer or no. Default is TRUE.

Valor Retornado

Returns the current buffer as a string.

Veja Também

  • XMLWriter::flush() - Flush current buffer

XMLWriter::openURI
XMLWriter::setIndentString
XMLWriter Funções


Set string used for indenting

XMLWriter::outputMemory
XMLWriter::setIndent
XMLWriter Funções
PHP Manual

XMLWriter::setIndentString

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::setIndentString — Set string used for indenting

Descrição

Estilo orientado a objetos

bool XMLWriter::setIndentString ( string $indentString )

Estilo de procedimentos

bool xmlwriter_set_indent_string ( resource $xmlwriter , string $indentString )

Sets the string which will be used to indent each element/attribute of the resulting xml.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

indentString

The indentation string.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::setIndent() - Toggle indentation on/off

XMLWriter::outputMemory
XMLWriter::setIndent
XMLWriter Funções


Toggle indentation on/off

XMLWriter::setIndentString
XMLWriter::startAttributeNS
XMLWriter Funções
PHP Manual

XMLWriter::setIndent

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::setIndent — Toggle indentation on/off

Descrição

Estilo orientado a objetos

bool XMLWriter::setIndent ( bool $indent )

Estilo de procedimentos

bool xmlwriter_set_indent ( resource $xmlwriter , bool $indent )

Toggles indentation on or off.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

indent

Whether indentation is enabled.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::setIndentString() - Set string used for indenting

XMLWriter::setIndentString
XMLWriter::startAttributeNS
XMLWriter Funções


Create start namespaced attribute

XMLWriter::setIndent
XMLWriter::startAttribute
XMLWriter Funções
PHP Manual

XMLWriter::startAttributeNS

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startAttributeNS — Create start namespaced attribute

Descrição

Estilo orientado a objetos

bool XMLWriter::startAttributeNS ( string $prefix , string $name , string $uri )

Estilo de procedimentos

bool xmlwriter_start_attribute_ns ( resource $xmlwriter , string $prefix , string $name , string $uri )

Starts a namespaced attribute.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

prefix

The namespace prefix.

name

The attribute name.

uri

The namespace URI.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startAttribute() - Create start attribute
  • XMLWriter::endAttribute() - End attribute
  • XMLWriter::writeAttribute() - Write full attribute
  • XMLWriter::writeAttributeNS() - Write full namespaced attribute

XMLWriter::setIndent
XMLWriter::startAttribute
XMLWriter Funções


Create start attribute

XMLWriter::startAttributeNS
XMLWriter::startCData
XMLWriter Funções
PHP Manual

XMLWriter::startAttribute

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startAttribute — Create start attribute

Descrição

Estilo orientado a objetos

bool XMLWriter::startAttribute ( string $name )

Estilo de procedimentos

bool xmlwriter_start_attribute ( resource $xmlwriter , string $name )

Starts an attribute.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The attribute name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startAttributeNS() - Create start namespaced attribute
  • XMLWriter::endAttribute() - End attribute
  • XMLWriter::writeAttribute() - Write full attribute
  • XMLWriter::writeAttributeNS() - Write full namespaced attribute

XMLWriter::startAttributeNS
XMLWriter::startCData
XMLWriter Funções


Create start CDATA tag

XMLWriter::startAttribute
XMLWriter::startComment
XMLWriter Funções
PHP Manual

XMLWriter::startCData

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startCData — Create start CDATA tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startCData ( void )

Estilo de procedimentos

bool xmlwriter_start_cdata ( resource $xmlwriter )

Starts a CDATA.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endCData() - End current CDATA
  • XMLWriter::writeCData() - Write full CDATA tag

XMLWriter::startAttribute
XMLWriter::startComment
XMLWriter Funções


Create start comment

XMLWriter::startCData
XMLWriter::startDocument
XMLWriter Funções
PHP Manual

XMLWriter::startComment

(PHP 5 >= 5.1.2, PECL xmlwriter >= 1.0.0)

XMLWriter::startComment — Create start comment

Descrição

Estilo orientado a objetos

bool XMLWriter::startComment ( void )

Estilo de procedimentos

bool xmlwriter_start_comment ( resource $xmlwriter )

Starts a comment.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endComment() - Create end comment
  • XMLWriter::writeComment() - Write full comment tag

XMLWriter::startCData
XMLWriter::startDocument
XMLWriter Funções


Create document tag

XMLWriter::startComment
XMLWriter::startDTDAttlist
XMLWriter Funções
PHP Manual

XMLWriter::startDocument

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startDocument — Create document tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startDocument ([ string $version [, string $encoding [, string $standalone ]]] )

Estilo de procedimentos

bool xmlwriter_start_document ( resource $xmlwriter [, string $version [, string $encoding [, string $standalone = NULL ]]] )

Starts a document.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

version

The version number of the document as part of the XML declaration. Defaults to 1.0.

encoding

The encoding of the document as part of the XML declaration. NULL by default.

standalone

yes or no.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endDocument() - End current document

XMLWriter::startComment
XMLWriter::startDTDAttlist
XMLWriter Funções


Create start DTD AttList

XMLWriter::startDocument
XMLWriter::startDTDElement
XMLWriter Funções
PHP Manual

XMLWriter::startDTDAttlist

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startDTDAttlist — Create start DTD AttList

Descrição

Estilo orientado a objetos

bool XMLWriter::startDTDAttlist ( string $name )

Estilo de procedimentos

bool xmlwriter_start_dtd_attlist ( resource $xmlwriter , string $name )

Starts a DTD attribute list.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The attribute list name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endDTDAttlist() - End current DTD AttList
  • XMLWriter::writeDTDAttlist() - Write full DTD AttList tag

XMLWriter::startDocument
XMLWriter::startDTDElement
XMLWriter Funções


Create start DTD element

XMLWriter::startDTDAttlist
XMLWriter::startDTDEntity
XMLWriter Funções
PHP Manual

XMLWriter::startDTDElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startDTDElement — Create start DTD element

Descrição

Estilo orientado a objetos

bool XMLWriter::startDTDElement ( string $qualifiedName )

Estilo de procedimentos

bool xmlwriter_start_dtd_element ( resource $xmlwriter , string $qualifiedName )

Starts a DTD element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

qualifiedName

The qualified name of the document type to create.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endDTDElement() - End current DTD element
  • XMLWriter::writeDTDElement() - Write full DTD element tag

XMLWriter::startDTDAttlist
XMLWriter::startDTDEntity
XMLWriter Funções


Create start DTD Entity

XMLWriter::startDTDElement
XMLWriter::startDTD
XMLWriter Funções
PHP Manual

XMLWriter::startDTDEntity

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startDTDEntity — Create start DTD Entity

Descrição

Estilo orientado a objetos

bool XMLWriter::startDTDEntity ( string $name , bool $isparam )

Estilo de procedimentos

bool xmlwriter_start_dtd_entity ( resource $xmlwriter , string $name , bool $isparam )

Starts a DTD entity.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The name of the entity.

isparam

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endDTDEntity() - End current DTD Entity
  • XMLWriter::writeDTDEntity() - Write full DTD Entity tag

XMLWriter::startDTDElement
XMLWriter::startDTD
XMLWriter Funções


Create start DTD tag

XMLWriter::startDTDEntity
XMLWriter::startElementNS
XMLWriter Funções
PHP Manual

XMLWriter::startDTD

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startDTD — Create start DTD tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startDTD ( string $qualifiedName [, string $publicId [, string $systemId ]] )

Estilo de procedimentos

bool xmlwriter_start_dtd ( resource $xmlwriter , string $qualifiedName [, string $publicId [, string $systemId ]] )

Starts a DTD.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

qualifiedName

The qualified name of the document type to create.

publicId

The external subset public identifier.

systemId

The external subset system identifier.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endDTD() - End current DTD
  • XMLWriter::writeDTD() - Write full DTD tag

XMLWriter::startDTDEntity
XMLWriter::startElementNS
XMLWriter Funções


Create start namespaced element tag

XMLWriter::startDTD
XMLWriter::startElement
XMLWriter Funções
PHP Manual

XMLWriter::startElementNS

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startElementNS — Create start namespaced element tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startElementNS ( string $prefix , string $name , string $uri )

Estilo de procedimentos

bool xmlwriter_start_element_ns ( resource $xmlwriter , string $prefix , string $name , string $uri )

Starts a namespaced element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

prefix

The namespace prefix.

name

The element name.

uri

The namespace URI.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endElement() - End current element
  • XMLWriter::writeElementNS() - Write full namespaced element tag

XMLWriter::startDTD
XMLWriter::startElement
XMLWriter Funções


Create start element tag

XMLWriter::startElementNS
XMLWriter::startPI
XMLWriter Funções
PHP Manual

XMLWriter::startElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startElement — Create start element tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startElement ( string $name )

Estilo de procedimentos

bool xmlwriter_start_element ( resource $xmlwriter , string $name )

Starts an element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The element name.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endElement() - End current element
  • XMLWriter::writeElement() - Write full element tag

XMLWriter::startElementNS
XMLWriter::startPI
XMLWriter Funções


Create start PI tag

XMLWriter::startElement
XMLWriter::text
XMLWriter Funções
PHP Manual

XMLWriter::startPI

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::startPI — Create start PI tag

Descrição

Estilo orientado a objetos

bool XMLWriter::startPI ( string $target )

Estilo de procedimentos

bool xmlwriter_start_pi ( resource $xmlwriter , string $target )

Starts a processing instruction tag.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

target

The target of the processing instruction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::endPI() - End current PI
  • XMLWriter::writePI() - Writes a PI

XMLWriter::startElement
XMLWriter::text
XMLWriter Funções


Write text

XMLWriter::startPI
XMLWriter::writeAttributeNS
XMLWriter Funções
PHP Manual

XMLWriter::text

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::text — Write text

Descrição

Estilo orientado a objetos

bool XMLWriter::text ( string $content )

Estilo de procedimentos

bool xmlwriter_text ( resource $xmlwriter , string $content )

Writes a text.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

content

The contents of the text.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

XMLWriter::startPI
XMLWriter::writeAttributeNS
XMLWriter Funções


Write full namespaced attribute

XMLWriter::text
XMLWriter::writeAttribute
XMLWriter Funções
PHP Manual

XMLWriter::writeAttributeNS

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeAttributeNS — Write full namespaced attribute

Descrição

Estilo orientado a objetos

bool XMLWriter::writeAttributeNS ( string $prefix , string $name , string $uri , string $content )

Estilo de procedimentos

bool xmlwriter_write_attribute_ns ( resource $xmlwriter , string $prefix , string $name , string $uri , string $content )

Writes a full namespaced attribute.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

prefix

The namespace prefix.

name

The attribute name.

uri

The namespace URI.

content

The attribute value.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::writeAttribute() - Write full attribute
  • XMLWriter::startAttribute() - Create start attribute
  • XMLWriter::startAttributeNS() - Create start namespaced attribute
  • XMLWriter::endAttribute() - End attribute

XMLWriter::text
XMLWriter::writeAttribute
XMLWriter Funções


Write full attribute

XMLWriter::writeAttributeNS
XMLWriter::writeCData
XMLWriter Funções
PHP Manual

XMLWriter::writeAttribute

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeAttribute — Write full attribute

Descrição

Estilo orientado a objetos

bool XMLWriter::writeAttribute ( string $name , string $value )

Estilo de procedimentos

bool xmlwriter_write_attribute ( resource $xmlwriter , string $name , string $value )

Writes a full attribute.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The name of the attribute.

value

The value of the attribute.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::writeAttributeNS() - Write full namespaced attribute
  • XMLWriter::startAttribute() - Create start attribute
  • XMLWriter::startAttributeNS() - Create start namespaced attribute
  • XMLWriter::endAttribute() - End attribute

XMLWriter::writeAttributeNS
XMLWriter::writeCData
XMLWriter Funções


Write full CDATA tag

XMLWriter::writeAttribute
XMLWriter::writeComment
XMLWriter Funções
PHP Manual

XMLWriter::writeCData

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeCData — Write full CDATA tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeCData ( string $content )

Estilo de procedimentos

bool xmlwriter_write_cdata ( resource $xmlwriter , string $content )

Writes a full CDATA.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

content

The contents of the CDATA.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startCData() - Create start CDATA tag
  • XMLWriter::endCData() - End current CDATA

XMLWriter::writeAttribute
XMLWriter::writeComment
XMLWriter Funções


Write full comment tag

XMLWriter::writeCData
XMLWriter::writeDTDAttlist
XMLWriter Funções
PHP Manual

XMLWriter::writeComment

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeComment — Write full comment tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeComment ( string $content )

Estilo de procedimentos

bool xmlwriter_write_comment ( resource $xmlwriter , string $content )

Writes a full comment.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

content

The contents of the comment.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startComment() - Create start comment
  • XMLWriter::endComment() - Create end comment

XMLWriter::writeCData
XMLWriter::writeDTDAttlist
XMLWriter Funções


Write full DTD AttList tag

XMLWriter::writeComment
XMLWriter::writeDTDElement
XMLWriter Funções
PHP Manual

XMLWriter::writeDTDAttlist

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeDTDAttlist — Write full DTD AttList tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeDTDAttlist ( string $name , string $content )

Estilo de procedimentos

bool xmlwriter_write_dtd_attlist ( resource $xmlwriter , string $name , string $content )

Writes a DTD attribute list.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The name of the DTD attribute list.

content

The content of the DTD attribute list.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDAttlist() - Create start DTD AttList
  • XMLWriter::endDTDAttlist() - End current DTD AttList

XMLWriter::writeComment
XMLWriter::writeDTDElement
XMLWriter Funções


Write full DTD element tag

XMLWriter::writeDTDAttlist
XMLWriter::writeDTDEntity
XMLWriter Funções
PHP Manual

XMLWriter::writeDTDElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeDTDElement — Write full DTD element tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeDTDElement ( string $name , string $content )

Estilo de procedimentos

bool xmlwriter_write_dtd_element ( resource $xmlwriter , string $name , string $content )

Writes a full DTD element.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The name of the DTD element.

content

The content of the element.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDElement() - Create start DTD element
  • XMLWriter::endDTDElement() - End current DTD element

XMLWriter::writeDTDAttlist
XMLWriter::writeDTDEntity
XMLWriter Funções


Write full DTD Entity tag

XMLWriter::writeDTDElement
XMLWriter::writeDTD
XMLWriter Funções
PHP Manual

XMLWriter::writeDTDEntity

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeDTDEntity — Write full DTD Entity tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeDTDEntity ( string $name , string $content , bool $pe , string $pubid , string $sysid , string $ndataid )

Estilo de procedimentos

bool xmlwriter_write_dtd_entity ( resource $xmlwriter , string $name , string $content , bool $pe , string $pubid , string $sysid , string $ndataid )

Writes a full DTD entity.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The name of the entity.

content

The content of the entity.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTDEntity() - Create start DTD Entity
  • XMLWriter::endDTDEntity() - End current DTD Entity

XMLWriter::writeDTDElement
XMLWriter::writeDTD
XMLWriter Funções


Write full DTD tag

XMLWriter::writeDTDEntity
XMLWriter::writeElementNS
XMLWriter Funções
PHP Manual

XMLWriter::writeDTD

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeDTD — Write full DTD tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeDTD ( string $name [, string $publicId [, string $systemId [, string $subset ]]] )

Estilo de procedimentos

bool xmlwriter_write_dtd ( resource $xmlwriter , string $name [, string $publicId [, string $systemId [, string $subset ]]] )

Writes a full DTD.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The DTD name.

publicId

The external subset public identifier.

systemId

The external subset system identifier.

subset

The content of the DTD.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startDTD() - Create start DTD tag
  • XMLWriter::endDTD() - End current DTD

XMLWriter::writeDTDEntity
XMLWriter::writeElementNS
XMLWriter Funções


Write full namespaced element tag

XMLWriter::writeDTD
XMLWriter::writeElement
XMLWriter Funções
PHP Manual

XMLWriter::writeElementNS

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeElementNS — Write full namespaced element tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeElementNS ( string $prefix , string $name , string $uri [, string $content ] )

Estilo de procedimentos

bool xmlwriter_write_element_ns ( resource $xmlwriter , string $prefix , string $name , string $uri [, string $content ] )

Writes a full namespaced element tag.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

prefix

The namespace prefix.

name

The element name.

uri

The namespace URI.

content

The element contents.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
PHP 5.2.3 | The content parameter became optional.

Veja Também

  • XMLWriter::startElementNS() - Create start namespaced element tag
  • XMLWriter::endElement() - End current element
  • XMLWriter::writeElement() - Write full element tag

XMLWriter::writeDTD
XMLWriter::writeElement
XMLWriter Funções


Write full element tag

XMLWriter::writeElementNS
XMLWriter::writePI
XMLWriter Funções
PHP Manual

XMLWriter::writeElement

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writeElement — Write full element tag

Descrição

Estilo orientado a objetos

bool XMLWriter::writeElement ( string $name [, string $content ] )

Estilo de procedimentos

bool xmlwriter_write_element ( resource $xmlwriter , string $name [, string $content ] )

Writes a full element tag.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

name

The element name.

content

The element contents.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Histórico

Versão | Descrição
PHP 5.2.3 | The content parameter became optional.

Veja Também

  • XMLWriter::startElement() - Create start element tag
  • XMLWriter::endElement() - End current element
  • XMLWriter::writeElementNS() - Write full namespaced element tag

XMLWriter::writeElementNS
XMLWriter::writePI
XMLWriter Funções


Writes a PI

XMLWriter::writeElement
XMLWriter::writeRaw
XMLWriter Funções
PHP Manual

XMLWriter::writePI

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::writePI — Writes a PI

Descrição

Estilo orientado a objetos

bool XMLWriter::writePI ( string $target , string $content )

Estilo de procedimentos

bool xmlwriter_write_pi ( resource $xmlwriter , string $target , string $content )

Writes a processing instruction.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

target

The target of the processing instruction.

content

The content of the processing instruction.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::startPI() - Create start PI tag
  • XMLWriter::endPI() - End current PI

XMLWriter::writeElement
XMLWriter::writeRaw
XMLWriter Funções


Write a raw XML text

XMLWriter::writePI
XSL
XMLWriter Funções
PHP Manual

XMLWriter::writeRaw

(PHP 5 >= 5.2.0, PECL xmlwriter >= 2.0.4)

XMLWriter::writeRaw — Write a raw XML text

Descrição

Estilo orientado a objetos

bool XMLWriter::writeRaw ( string $content )

Estilo de procedimentos

bool xmlwriter_write_raw ( resource $xmlwriter , string $content )

Writes a raw xml text.

Parâmetros

xmlwriter

Apenas para chamadas de procedimentos. O recurso XMLWriter resource que esta sendo modificado. Este recurso vem de uma chamada a xmlwriter_open_uri() ou xmlwriter_open_memory().

content

The text string to write.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XMLWriter::text() - Write text

XMLWriter::writePI
XSL
XMLWriter Funções


XSL

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • Exemplos
  • XSLTProcessor — A classe XSLTProcessor
    • XSLTProcessor::__construct — Cria um novo objeto XSLTProcessor
    • XSLTProcessor::getParameter — Obtém o valor de um parâmetro
    • XSLTProcessor::hasExsltSupport — Verifica se o PHP tem suporte a EXSLT
    • XSLTProcessor::importStylesheet — Importa stylesheet
    • XSLTProcessor::registerPHPFunctions — Habilita o uso de funções do PHP como funções XSLT
    • XSLTProcessor::removeParameter — Remove parâmetro
    • XSLTProcessor::setParameter — Define um valor para um parâmetro
    • XSLTProcessor::setProfiling — Sets profiling output file
    • XSLTProcessor::transformToDoc — Transforma para um DOMDocument
    • XSLTProcessor::transformToURI — Transforma para URI
    • XSLTProcessor::transformToXML — Transforma para XML
XMLWriter::writeRaw
Introdução
Manipulação de XML


Introdução

A extensão XSL implementa o padrão XSL, executando » transformações XSLT usando a » biblioteca libxslt

XSL
Instalação/Configuração
XSL


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XSL


Dependências

Esta extensão usa libxslt que pode ser encontrada em » http://xmlsoft.org/XSLT/. Versão da libxslt 1.1.0 ou maior é requerido.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

PHP 5 inclue a extensão XSL por padrão e pode ser habilitada adicionando o argumento --with-xsl[=DIR] na linha de configuração. DIR é o diretório da instalação da libxslt.

Dependências
Configurações em Execução
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XSL_CLONE_AUTO (integer)
XSL_CLONE_NEVER (integer)
XSL_CLONE_ALWAYS (integer)
LIBXSLT_VERSION (integer)
Versão da libxslt como 10117. Disponível no PHP 5.1.2.
LIBXSLT_DOTTED_VERSION (string)
Versão da libxslt como 1.1.17. Disponível no PHP 5.1.2.
LIBEXSLT_VERSION (integer)
Versão da libexslt como 813. Disponível no PHP 5.1.2.
LIBEXSLT_DOTTED_VERSION (string)
Versão da libexslt com 1.1.17. Disponível no PHP 5.1.2.
Tipos Resource
Exemplos
XSL


Exemplos

Índice

Constantes pré-definidas
XSL


Exemplos
XSLTProcessor
Exemplos
PHP Manual

Muitos exemplos nesta referência requerem um arquivo XML e XSL. Nós iremos usar collection.xml e collection.xsl que contêm o seguinte:

Exemplo #1 collection.xml

<collection>
 <cd>
  <title>Fight for your mind</title>
  <artist>Ben Harper</artist>
  <year>1995</year>
 </cd>
 <cd>
  <title>Electric Ladyland</title>
  <artist>Jimi Hendrix</artist>
  <year>1997</year>
 </cd>
</collection>

Exemplo #2 collection.xsl

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:param name="owner" select="'Nicolas Eliaszewicz'"/>
 <xsl:output method="html" encoding="iso-8859-1" indent="no"/>
 <xsl:template match="collection">
  Hey! Welcome to <xsl:value-of select="$owner"/>'s sweet CD collection!
  <xsl:apply-templates/>
 </xsl:template>
 <xsl:template match="cd">
  <h1><xsl:value-of select="title"/></h1>
  <h2>by <xsl:value-of select="artist"/> - <xsl:value-of select="year"/></h2>
  <hr />
 </xsl:template>
</xsl:stylesheet>

Exemplos
XSLTProcessor
Exemplos


A classe XSLTProcessor

Introdução

Descrição da classe.

Sinopse da classe

XSLTProcessor {
/* Métodos */
string XSLTProcessor::getParameter ( string $namespaceURI , string $localName )
bool hasExsltSupport ( void )
void importStylesheet ( DOMDocument $stylesheet )
void registerPHPFunctions ([ mixed $restrict ] )
bool removeParameter ( string $namespaceURI , string $localName )
bool setParameter ( string $namespace , string $name , string $value )
bool setProfiling ( string $filename )
DOMDocument transformToDoc ( DOMNode $doc )
int transformToURI ( DOMDocument $doc , string $uri )
string transformToXML ( DOMDocument $doc )
}

Índice

  • XSLTProcessor::__construct — Cria um novo objeto XSLTProcessor
  • XSLTProcessor::getParameter — Obtém o valor de um parâmetro
  • XSLTProcessor::hasExsltSupport — Verifica se o PHP tem suporte a EXSLT
  • XSLTProcessor::importStylesheet — Importa stylesheet
  • XSLTProcessor::registerPHPFunctions — Habilita o uso de funções do PHP como funções XSLT
  • XSLTProcessor::removeParameter — Remove parâmetro
  • XSLTProcessor::setParameter — Define um valor para um parâmetro
  • XSLTProcessor::setProfiling — Sets profiling output file
  • XSLTProcessor::transformToDoc — Transforma para um DOMDocument
  • XSLTProcessor::transformToURI — Transforma para URI
  • XSLTProcessor::transformToXML — Transforma para XML
XSLTProcessor::__construct
XSL


Cria um novo objeto XSLTProcessor

XSLTProcessor
XSLTProcessor::getParameter
XSLTProcessor
PHP Manual

XSLTProcessor::__construct

(PHP 5)

XSLTProcessor::__construct — Cria um novo objeto XSLTProcessor

Descrição

XSLTProcessor::__construct ( void )

Cria um novo objeto XSLTProcessor.

Parâmetros

Esta função não contém parâmetros.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Criando um XSLTProcessor

<?php

$doc = new DOMDocument();
$xsl = new XSLTProcessor();

$doc->load($xsl_filename);
$xsl->importStyleSheet($doc);

$doc->load($xml_filename);
echo $xsl->transformToXML($doc);

?>

XSLTProcessor
XSLTProcessor::getParameter
XSLTProcessor


Obtém o valor de um parâmetro

XSLTProcessor::__construct
XSLTProcessor::hasExsltSupport
XSLTProcessor
PHP Manual

XSLTProcessor::getParameter

(PHP 5)

XSLTProcessor::getParameter — Obtém o valor de um parâmetro

Descrição

string XSLTProcessor::getParameter ( string $namespaceURI , string $localName )

Obtém o parâmetro se anteriormente foi definido pela XSLTProcessor::setParameter().

Parâmetros

namespaceURI

O namespace URI do parâmetro XSLT.

localName

O nome local do parâmetro XSLT.

Valor Retornado

O valor do parâmetro ou NULL se ele não é definido.

Veja Também

  • XSLTProcessor::setParameter() - Define um valor para um parâmetro
  • XSLTProcessor::removeParameter() - Remove parâmetro

XSLTProcessor::__construct
XSLTProcessor::hasExsltSupport
XSLTProcessor


Verifica se o PHP tem suporte a EXSLT

XSLTProcessor::getParameter
XSLTProcessor::importStylesheet
XSLTProcessor
PHP Manual

XSLTProcessor::hasExsltSupport

(PHP 5 >= 5.0.4)

XSLTProcessor::hasExsltSupport — Verifica se o PHP tem suporte a EXSLT

Descrição

bool XSLTProcessor::hasExsltSupport ( void )

Este método verifica se o PHP tem suporte a » EXSLT library.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Testando o suporte a EXSLT

<?php

$proc = new XSLTProcessor;
if (!$proc->hasExsltSupport()) {
    die('EXSLT support not available');
}

// do EXSLT stuff here ..

?>

XSLTProcessor::getParameter
XSLTProcessor::importStylesheet
XSLTProcessor


Importa stylesheet

XSLTProcessor::hasExsltSupport
XSLTProcessor::registerPHPFunctions
XSLTProcessor
PHP Manual

XSLTProcessor::importStylesheet

(PHP 5)

XSLTProcessor::importStylesheet — Importa stylesheet

Descrição

void XSLTProcessor::importStylesheet ( DOMDocument $stylesheet )

Este método importa o stylesheet no XSLTProcessor para transformações.

Parâmetros

stylesheet

O importado style sheet como um objeto DOMDocument.

Valor Retornado

Não há valor retornado.

XSLTProcessor::hasExsltSupport
XSLTProcessor::registerPHPFunctions
XSLTProcessor


Habilita o uso de funções do PHP como funções XSLT

XSLTProcessor::importStylesheet
XSLTProcessor::removeParameter
XSLTProcessor
PHP Manual

XSLTProcessor::registerPHPFunctions

(PHP 5 >= 5.0.4)

XSLTProcessor::registerPHPFunctions — Habilita o uso de funções do PHP como funções XSLT

Descrição

void XSLTProcessor::registerPHPFunctions ([ mixed $restrict ] )

Este método habilita o uso de funções PHP como funções XSLT no XSL stylesheets.

Parâmetros

restrict

Use este parâmetro para permite somente certas funções serem chamadas no XSLT.

Este parâmetro pode ser qualquer string (um nome de função) ou um array de funções.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Simples chamada de função do PHP em um stylesheet

<?php
$xml = <<<EOB
<allusers>
 <user>
  <uid>bob</uid>
 </user>
 <user>
  <uid>joe</uid>
 </user>
</allusers>
EOB;
$xsl = <<<EOB
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     xmlns:php="http://php.net/xsl">
<xsl:output method="html" encoding="utf-8" indent="yes"/>
 <xsl:template match="allusers">
  <html><body>
    <h2>Users</h2>
    <table>
    <xsl:for-each select="user">
      <tr><td>
        <xsl:value-of
             select="php:function('ucfirst',string(uid))"/>
      </td></tr>
    </xsl:for-each>
    </table>
  </body></html>
 </xsl:template>
</xsl:stylesheet>
EOB;
$xmldoc = DOMDocument::loadXML($xml);
$xsldoc = DOMDocument::loadXML($xsl);

$proc = new XSLTProcessor();
$proc->registerPHPFunctions();
$proc->importStyleSheet($xsldoc);
echo $proc->transformToXML($xmldoc);
?>

Histórico

Versão | Descrição
5.1.0 | O parâmetro restrict foi adicionado.

XSLTProcessor::importStylesheet
XSLTProcessor::removeParameter
XSLTProcessor


Remove parâmetro

XSLTProcessor::registerPHPFunctions
XSLTProcessor::setParameter
XSLTProcessor
PHP Manual

XSLTProcessor::removeParameter

(PHP 5)

XSLTProcessor::removeParameter — Remove parâmetro

Descrição

bool XSLTProcessor::removeParameter ( string $namespaceURI , string $localName )

Remove um parâmetro, se definido. Isto irá fazer o processador usar o valor padrão para o parâmetro como especificado no stylesheet.

Parâmetros

namespaceURI

O namespace URI do parâmetro XSLT.

localName

O nome local do parâmetro XSLT.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja Também

  • XSLTProcessor::setParameter() - Define um valor para um parâmetro
  • XSLTProcessor::getParameter() - Obtém o valor de um parâmetro

XSLTProcessor::registerPHPFunctions
XSLTProcessor::setParameter
XSLTProcessor


Define um valor para um parâmetro

XSLTProcessor::removeParameter
XSLTProcessor::setProfiling
XSLTProcessor
PHP Manual

XSLTProcessor::setParameter

(PHP 5)

XSLTProcessor::setParameter — Define um valor para um parâmetro

Descrição

bool XSLTProcessor::setParameter ( string $namespace , string $name , string $value )
bool XSLTProcessor::setParameter ( string $namespace , array $options )

Define o valor para um ou mais parâmetros para ser usados na transformação com o XSLTProcessor. Se o parâmetro não existe no stylesheet ele será ignorado.

Parâmetros

namespace

O namespace URI do parâmetro XSLT.

name

O nome local do parâmetro XSLT.

value

O novo valor do parâmetro XSLT.

options

Um array de pares name => value. A sintaxe é disponível desde o PHP 5.1.0.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Modificando antes da transformação

<?php

$collections = array(
    'Marc Rutkowski' => 'marc',
    'Olivier Parmentier' => 'olivier'
);

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

foreach ($collections as $name => $file) {
    // Load the XML source
    $xml = new DOMDocument;
    $xml->load('collection_' . $file . '.xml');

    $proc->setParameter('', 'owner', $name);
    $proc->transformToURI($xml, 'file:///tmp/' . $file . '.html');
}

?>

Veja Também

  • XSLTProcessor::getParameter() - Obtém o valor de um parâmetro
  • XSLTProcessor::removeParameter() - Remove parâmetro

XSLTProcessor::removeParameter
XSLTProcessor::setProfiling
XSLTProcessor


Sets profiling output file

XSLTProcessor::setParameter
XSLTProcessor::transformToDoc
XSLTProcessor
PHP Manual

XSLTProcessor::setProfiling

(PHP >= 5.3.0)

XSLTProcessor::setProfiling — Sets profiling output file

Descrição

bool XSLTProcessor::setProfiling ( string $filename )

Sets the file to output profiling information when processing a stylesheet.

Parâmetros

filename

Path to the file to dump profiling information.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Example profiling output

<?php
// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->setProfiling('profiling.txt');
$proc->importStyleSheet($xsl); // attach the xsl rules

echo trim($proc->transformToDoc($xml)->firstChild->wholeText);
?>

The above code will produce the following information in the profiling file:

number               match                name      mode  Calls Tot 100us Avg

    0                   cd                                    2      3      1
    1           collection                                    1      1      1

                         Total                                3      4

XSLTProcessor::setParameter
XSLTProcessor::transformToDoc
XSLTProcessor


Transforma para um DOMDocument

XSLTProcessor::setProfiling
XSLTProcessor::transformToURI
XSLTProcessor
PHP Manual

XSLTProcessor::transformToDoc

(PHP 5)

XSLTProcessor::transformToDoc — Transforma para um DOMDocument

Descrição

DOMDocument XSLTProcessor::transformToDoc ( DOMNode $doc )

Transforma o node para um DOMDocument aplicando o stylesheet dado pelo mÃ©todo XSLTProcessor::importStylesheet().

Parâmetros

doc

O node a ser transformado.

Valor Retornado

O resultante DOMDocument ou FALSE em erro.

Exemplos

Exemplo #1 Transformando para DOMDocument

<?php

// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

echo trim($proc->transformToDoc($xml)->firstChild->wholeText);

?>

O exemplo acima irá imprimir:

Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!

Veja Também

  • XSLTProcessor::transformToUri() - Transforma para URI
  • XSLTProcessor::transformToXml() - Transforma para XML

XSLTProcessor::setProfiling
XSLTProcessor::transformToURI
XSLTProcessor


Transforma para URI

XSLTProcessor::transformToDoc
XSLTProcessor::transformToXML
XSLTProcessor
PHP Manual

XSLTProcessor::transformToURI

(PHP 5)

XSLTProcessor::transformToURI — Transforma para URI

Descrição

int XSLTProcessor::transformToURI ( DOMDocument $doc , string $uri )

Transforma o node para uma URI aplicando o stylesheet dado pelo método XSLTProcessor::importStylesheet().

Parâmetros

doc

O documento transformado.

uri

Valor Retornado

Retorna o número de bytes escrito ou FALSE se um erro ocorrer.

Exemplos

Exemplo #1 Transformando para um arquivo HTML

<?php

// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

$proc->transformToURI($xml, 'file:///tmp/out.html');

?>

Veja Também

  • XSLTProcessor::transformToDoc() - Transforma para um DOMDocument
  • XSLTProcessor::transformToXml() - Transforma para XML

XSLTProcessor::transformToDoc
XSLTProcessor::transformToXML
XSLTProcessor


Transforma para XML

XSLTProcessor::transformToURI
XSLT (PHP4)
XSLTProcessor
PHP Manual

XSLTProcessor::transformToXML

(PHP 5)

XSLTProcessor::transformToXML — Transforma para XML

Descrição

string XSLTProcessor::transformToXML ( DOMDocument $doc )

Transforma o node para uma string aplicando o stylesheet dado pelo método xsltprocessor::importStylesheet().

Parâmetros

doc

O documento transformado.

Valor Retornado

O resultado da transformação como uma string ou FALSE em caso de erro.

Exemplos

Exemplo #1 Transformando para uma string

<?php

// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

echo $proc->transformToXML($xml);

?>

O exemplo acima irá imprimir:

Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!

<h1>Fight for your mind</h1><h2>by Ben Harper - 1995</h2><hr>
<h1>Electric Ladyland</h1><h2>by Jimi Hendrix - 1997</h2><hr>

Veja Também

  • XSLTProcessor::transformToDoc() - Transforma para um DOMDocument
  • XSLTProcessor::transformToUri() - Transforma para URI

XSLTProcessor::transformToURI
XSLT (PHP4)
XSLTProcessor


XSLT (PHP4)

  • Introdução
  • Instalação/Configuração
    • Dependências
    • Instalação
    • Configurações em Execução
    • Tipos Resource
  • Constantes pré-definidas
  • XSLT (PHP4) Funções
    • xslt_backend_info — Returns the information on the compilation settings of the backend
    • xslt_backend_name — Returns the name of the backend
    • xslt_backend_version — Returns the version number of Sablotron
    • xslt_create — Create a new XSLT processor
    • xslt_errno — Returns an error number
    • xslt_error — Returns an error string
    • xslt_free — Free XSLT processor
    • xslt_getopt — Get options on a given xsl processor
    • xslt_process — Perform an XSLT transformation
    • xslt_set_base — Set the base URI for all XSLT transformations
    • xslt_set_encoding — Set the encoding for the parsing of XML documents
    • xslt_set_error_handler — Set an error handler for a XSLT processor
    • xslt_set_log — Set the log file to write log messages to
    • xslt_set_object — Sets the object in which to resolve callback functions
    • xslt_set_sax_handler — Set SAX handlers for a XSLT processor
    • xslt_set_sax_handlers — Set the SAX handlers to be called when the XML document gets processed
    • xslt_set_scheme_handler — Set Scheme handlers for a XSLT processor
    • xslt_set_scheme_handlers — Set the scheme handlers for the XSLT processor
    • xslt_setopt — Set options on a given xsl processor
XSLTProcessor::transformToXML
Introdução
Manipulação de XML


Introdução

This PHP extension provides a processor independent API to XSLT transformations. Currently this extension only supports the Sablotron library from the Ginger Alliance. Support is planned for other libraries, such as the Xalan library or the libxslt library.

XSLT (Extensible Stylesheet Language (XSL) Transformations) is a language for transforming XML documents into other XML documents. It is a standard defined by The World Wide Web Consortium (W3C). Information about XSLT and related technologies can be found at » http://www.w3.org/TR/xslt.

Nota: This extension is different than the sablotron extension distributed with versions of PHP prior to PHP 4.1.0, currently only the new XSLT extension in PHP 4.1.0 is supported. If you need support for the old extension, please ask your questions on the PHP mailing lists.

Nota:

Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.0.0.

Nota: If you need xslt support with PHP 5 you can use the XSL extension.

XSLT (PHP4)
Instalação/Configuração
XSLT (PHP4)


Instalação/Configuração

Índice

  • Dependências
  • Instalação
  • Configurações em Execução
  • Tipos Resource
Introdução
Dependências
XSLT (PHP4)


Dependências

This extension requires the libxml PHP extension. This means that passing in --enable-libxml is also required, although this is implicitly accomplished because libxml is enabled by default.

This extension uses Sablotron and expat, which can both be found at » http://freshmeat.net/projects/sablotron/. Binaries are provided as well as source.

Enable by using the --with-xslt option with PHP 4.

Instalação/Configuração
Instalação
Instalação/Configuração


Instalação

On Unix, run configure with the --enable-xslt --with-xslt-sablot options. The Sablotron library should be installed somewhere your compiler can find it.

Make sure you have the same libraries linked to the Sablotron library as those, which are linked with PHP. The configuration options: --with-expat-dir=DIR --with-iconv-dir=DIR are there to help you specify them. When asking for support, always mention these directives, and whether there are other versions of those libraries installed on your system somewhere. Naturally, provide all the version numbers.

Cuidado

Be sure your Sablotron library is linked to -lstdc++ as otherwise your configure will fail, or PHP will fail to run or load.

Nota: JavaScript E-XSLT support
If you compiled Sablotron with JavaScript support, you must specify the option: --with-sablot-js=DIR .

Nota: Note to Win32 Users

Para esta extensão funcionar, existem arquivos DLL que devem estar disponíveis no PATH do sistema Windows. Para saber como fazer isso, veja o FAQ intitulado "Como eu adiciono o meu diretório PHP no PATH no Windows". Embora copiando arquivos DLL da pasta do PHP no diretório system do Windows também funcione (porque o diretório system está por padrão no PATH do sistema), isto não é recomendado. Esta extensão requer que os seguintes arquivos estejam no PATH: sablot.dll, expat.dll, and iconv.dll

For PHP <= 4.2.0, the file iconv.dll is not required.

Dependências
Configurações em Execução
Instalação/Configuração


Tipos Resource

This extension defines a XSLT processor resource returned by xslt_create().

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

XSLT_OPT_SILENT (integer)
Drop all logging and error reporting. This is a generic option for all backends that may be added in the future.
XSLT_SABOPT_PARSE_PUBLIC_ENTITIES (integer)

Tell Sablotron to parse public entities. By default this has been turned off.

XSLT_SABOPT_DISABLE_ADDING_META (integer)

Do not add the meta tag "Content-Type" for HTML output. The default is set during compilation of Sablotron.

XSLT_SABOPT_DISABLE_STRIPPING (integer)
Suppress the whitespace stripping (on data files only).
XSLT_SABOPT_IGNORE_DOC_NOT_FOUND (integer)
Consider unresolved documents (the document() function) non-lethal.
XSLT_SABOPT_FILES_TO_HANDLER (integer)
XSLT_ERR_UNSUPPORTED_SCHEME (integer)
Error return code, for scheme handlers.
Tipos Resource
XSLT (PHP4) Funções
XSLT (PHP4)


XSLT (PHP4) Funções

Índice

  • xslt_backend_info — Returns the information on the compilation settings of the backend
  • xslt_backend_name — Returns the name of the backend
  • xslt_backend_version — Returns the version number of Sablotron
  • xslt_create — Create a new XSLT processor
  • xslt_errno — Returns an error number
  • xslt_error — Returns an error string
  • xslt_free — Free XSLT processor
  • xslt_getopt — Get options on a given xsl processor
  • xslt_process — Perform an XSLT transformation
  • xslt_set_base — Set the base URI for all XSLT transformations
  • xslt_set_encoding — Set the encoding for the parsing of XML documents
  • xslt_set_error_handler — Set an error handler for a XSLT processor
  • xslt_set_log — Set the log file to write log messages to
  • xslt_set_object — Sets the object in which to resolve callback functions
  • xslt_set_sax_handler — Set SAX handlers for a XSLT processor
  • xslt_set_sax_handlers — Set the SAX handlers to be called when the XML document gets processed
  • xslt_set_scheme_handler — Set Scheme handlers for a XSLT processor
  • xslt_set_scheme_handlers — Set the scheme handlers for the XSLT processor
  • xslt_setopt — Set options on a given xsl processor
Constantes pré-definidas
xslt_backend_info
XSLT (PHP4)


Returns the information on the compilation settings of the backend

XSLT (PHP4) Funções
xslt_backend_name
XSLT (PHP4) Funções
PHP Manual

xslt_backend_info

(PHP 4 >= 4.3.0)

xslt_backend_info — Returns the information on the compilation settings of the backend

Descrição

string xslt_backend_info ( void )

xslt_backend_info() gets information about the compilation settings of the backend.

Valor Retornado

Returns a string with information about the compilation setting of the backend or an error string when no information available.

Veja Também

  • xslt_backend_name() - Returns the name of the backend
  • xslt_backend_version() - Returns the version number of Sablotron

XSLT (PHP4) Funções
xslt_backend_name
XSLT (PHP4) Funções


Returns the name of the backend

xslt_backend_info
xslt_backend_version
XSLT (PHP4) Funções
PHP Manual

xslt_backend_name

(PHP 4 >= 4.3.0)

xslt_backend_name — Returns the name of the backend

Descrição

string xslt_backend_name ( void )

xslt_backend_name() gets the name of the backend.

Valor Retornado

Returns Sablotron.

Exemplos

Exemplo #1 xslt_backend_name() example

<?php

echo xslt_backend_name(); // Sablotron

?>

Veja Também

  • xslt_backend_info() - Returns the information on the compilation settings of the backend
  • xslt_backend_version() - Returns the version number of Sablotron

xslt_backend_info
xslt_backend_version
XSLT (PHP4) Funções


Returns the version number of Sablotron

xslt_backend_name
xslt_create
XSLT (PHP4) Funções
PHP Manual

xslt_backend_version

(PHP 4 >= 4.3.0)

xslt_backend_version — Returns the version number of Sablotron

Descrição

string xslt_backend_version ( void )

xslt_backend_version() gets the version number of Sablotron.

Valor Retornado

Returns the version number, or FALSE if not available.

Exemplos

Exemplo #1 xslt_backend_version() example

<?php

echo xslt_backend_version(); // 0.98 for example

?>

Veja Também

  • xslt_backend_info() - Returns the information on the compilation settings of the backend
  • xslt_backend_name() - Returns the name of the backend

xslt_backend_name
xslt_create
XSLT (PHP4) Funções


Create a new XSLT processor

xslt_backend_version
xslt_errno
XSLT (PHP4) Funções
PHP Manual

xslt_create

(PHP 4 >= 4.0.3)

xslt_create — Create a new XSLT processor

Descrição

resource xslt_create ( void )

Create and return a new XSLT processor resource for manipulation by the other XSLT functions.

Valor Retornado

Returns an XSLT processor link identifier on success, or FALSE on error.

Exemplos

Exemplo #1 xslt_create() example

<?php
function xml2html($xmldata, $xsl)
{
    /* $xmldata -> your XML */
    /* $xsl -> XSLT file */

    $path = 'include';
    $arguments = array('/_xml' => $xmldata);
    $xsltproc = xslt_create();
    xslt_set_encoding($xsltproc, 'ISO-8859-1');
    $html =
        xslt_process($xsltproc, 'arg:/_xml', "$path/$xsl", NULL, $arguments);

    if (empty($html)) {
       die('XSLT processing error: '. xslt_error($xsltproc));
    }
    xslt_free($xsltproc);
    return $html;
}
?>

Veja Também

  • xslt_free() - Free XSLT processor

xslt_backend_version
xslt_errno
XSLT (PHP4) Funções


Returns an error number

xslt_create
xslt_error
XSLT (PHP4) Funções
PHP Manual

xslt_errno

(PHP 4 >= 4.0.3)

xslt_errno — Returns an error number

Descrição

int xslt_errno ( resource $xh )

Returns an error code describing the last error that occurred on the passed XSLT processor.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

Valor Retornado

Returns the error code, as an integer.

Veja Também

  • xslt_error() - Returns an error string

xslt_create
xslt_error
XSLT (PHP4) Funções


Returns an error string

xslt_errno
xslt_free
XSLT (PHP4) Funções
PHP Manual

xslt_error

(PHP 4 >= 4.0.3)

xslt_error — Returns an error string

Descrição

string xslt_error ( resource $xh )

Returns a string describing the last error that occurred on the passed XSLT processor.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

Valor Retornado

Returns the error message, as a string.

Exemplos

Exemplo #1 Handling errors using the xslt_error() and xslt_errno() functions.

<?php

$xh = xslt_create();
$result = xslt_process($xh, 'dog.xml', 'pets.xsl');
if (!$result) {
    die(sprintf("Cannot process XSLT document [%d]: %s",
                xslt_errno($xh), xslt_error($xh)));
}

echo $result;

xslt_free($xh);
?>

Veja Também

  • xslt_errno() - Returns an error number

xslt_errno
xslt_free
XSLT (PHP4) Funções


Free XSLT processor

xslt_error
xslt_getopt
XSLT (PHP4) Funções
PHP Manual

xslt_free

(PHP 4 >= 4.0.3)

xslt_free — Free XSLT processor

Descrição

void xslt_free ( resource $xh )

Free the XSLT processor identified by the given handle.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

Valor Retornado

Não há valor retornado.

Veja Também

  • xslt_create() - Create a new XSLT processor

xslt_error
xslt_getopt
XSLT (PHP4) Funções


Get options on a given xsl processor

xslt_free
xslt_process
XSLT (PHP4) Funções
PHP Manual

xslt_getopt

(PHP 4 >= 4.3.0)

xslt_getopt — Get options on a given xsl processor

Descrição

int xslt_getopt ( resource $processor )

xslt_getopt() returns the options on the given processor.

Parâmetros

processor

The XSLT processor link identifier, created with xslt_create().

Valor Retornado

Returns the options, a bitmask constructed with the XSLT_SABOPT_XXX constants.

Veja Também

  • xslt_setopt() - Set options on a given xsl processor

xslt_free
xslt_process
XSLT (PHP4) Funções


Perform an XSLT transformation

xslt_getopt
xslt_set_base
XSLT (PHP4) Funções
PHP Manual

xslt_process

(PHP 4 >= 4.0.3)

xslt_process — Perform an XSLT transformation

Descrição

mixed xslt_process ( resource $xh , string $xmlcontainer , string $xslcontainer [, string $resultcontainer [, array $arguments [, array $parameters ]]] )

The xslt_process() function is the crux of the XSLT extension. It allows you to perform an XSLT transformation using almost any type of input source - the containers. This is accomplished through the use of argument buffers -- a concept taken from the Sablotron XSLT processor (currently the only XSLT processor this extension supports). The input containers default to a filename 'containing' the document to be processed.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

xmlcontainer

Path to XML file or placeholder for the XML argument.

xslcontainer

Path to XSL file or placeholder for the XML argument.

resultcontainer

The result container defaults to a filename for the transformed document. If the result container is not specified - i.e. NULL - than the result is returned.

arguments

Instead of files as the XML and XSLT arguments to the xslt_process() function, you can specify "argument place holders" which are then substituted by values given in the arguments array.

parameters

An array for any top-level parameters that will be passed to the XSLT document. These parameters can then be accessed within your XSL files using the <xsl:param name="parameter_name"> instruction. The parameters must be UTF-8 encoded and their values will be interpreted as strings by the Sablotron processor. In other words - you cannot pass node-sets as parameters to the XSLT document.

Containers can also be set via the arguments array (see below).

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas. If the result container is not specified - i.e. NULL - than the result is returned.

Histórico

Versão | Descrição
4.0.6 | This function no longer takes XML strings in xmlcontainer or xslcontainer. Passing a string containing XML to either of these parameters will result in a segmentation fault in Sablotron versions up to and including version 0.95.

Exemplos

The simplest type of transformation with the xslt_process() function is the transformation of an XML file with an XSLT file, placing the result in a third file containing the new XML (or HTML) document. Doing this with Sablotron is really quite easy...

Exemplo #1 Using the xslt_process() to transform an XML file and a XSL file to a new XML file

<?php

// Allocate a new XSLT processor
$xh = xslt_create();

// Process the document
if (xslt_process($xh, 'sample.xml', 'sample.xsl', 'result.xml')) {
    echo "SUCCESS, sample.xml was transformed by sample.xsl into result.xml";
    echo ", result.xml has the following contents\n<br />\n";
    echo "<pre>\n";
    readfile('result.xml');
    echo "</pre>\n";
} else {
    echo "Sorry, sample.xml could not be transformed by sample.xsl into";
    echo "  result.xml the reason is that " . xslt_error($xh) . " and the ";
    echo "error code is " . xslt_errno($xh);
}

xslt_free($xh);

?>

While this functionality is great, many times, especially in a web environment, you want to be able to print out your results directly. Therefore, if you omit the third argument to the xslt_process() function (or provide a NULL value for the argument), it will automatically return the value of the XSLT transformation, instead of writing it to a file...

Exemplo #2 Using the xslt_process() to transform an XML file and a XSL file to a variable containing the resulting XML data

<?php

// Allocate a new XSLT processor
$xh = xslt_create();

// Process the document, returning the result into the $result variable
$result = xslt_process($xh, 'sample.xml', 'sample.xsl');
if ($result) {
    echo "SUCCESS, sample.xml was transformed by sample.xsl into the \$result";
    echo " variable, the \$result variable has the following contents\n<br />\n";
    echo "<pre>\n";
    echo $result;
    echo "</pre>\n";
} else {
    echo "Sorry, sample.xml could not be transformed by sample.xsl into";
    echo "  the \$result variable the reason is that " . xslt_error($xh);
    echo " and the error code is " . xslt_errno($xh);
}

xslt_free($xh);

?>

The above two cases are the two simplest cases there are when it comes to XSLT transformation and I'd dare say that they are the most common cases, however, sometimes you get your XML and XSLT code from external sources, such as a database or a socket. In these cases you'll have the XML and/or XSLT data in a variable -- and in production applications the overhead of dumping these to file may be too much. This is where XSLT's "argument" syntax, comes to the rescue. Instead of files as the XML and XSLT arguments to the xslt_process() function, you can specify "argument place holders" which are then substituted by values given in the arguments array (5th parameter to the xslt_process() function). The following is an example of processing XML and XSLT into a result variable without the use of files at all.

Exemplo #3 Using the xslt_process() to transform a variable containing XML data and a variable containing XSL data into a variable containing the resulting XML data

<?php
// $xml and $xsl contain the XML and XSL data

$arguments = array(
     '/_xml' => $xml,
     '/_xsl' => $xsl
);

// Allocate a new XSLT processor
$xh = xslt_create();

// Process the document
$result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments);
if ($result) {
    echo "SUCCESS, sample.xml was transformed by sample.xsl into the \$result";
    echo " variable, the \$result variable has the following contents\n<br />\n";
    echo "<pre>\n";
    echo $result;
    echo "</pre>\n";
} else {
    echo "Sorry, sample.xml could not be transformed by sample.xsl into";
    echo "  the \$result variable the reason is that " . xslt_error($xh);
    echo " and the error code is " . xslt_errno($xh);
}
xslt_free($xh);
?>

Exemplo #4 Passing PHP variables to XSL files

<?php

// XML string
$xml = '<?xml version="1.0"?>
<para>
 change me
</para>';

// XSL string
$xsl = '
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="ISO-8859-1" indent="no"
 omit-xml-declaration="yes"  media-type="text/html"/>
 <xsl:param name="myvar"/>
 <xsl:param name="mynode"/>
 <xsl:template match="/">
My PHP variable : <xsl:value-of select="$myvar"/><br />
My node set : <xsl:value-of select="$mynode"/>
 </xsl:template>
</xsl:stylesheet>';

$xh = xslt_create();

// the second parameter will be interpreted as a string
$parameters = array (
  'myvar' => 'test',
  'mynode' => '<foo>bar</foo>'
);

$arguments = array (
  '/_xml' => $xml,
  '/_xsl' => $xsl
);

echo xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments, $parameters);

?>

O exemplo acima irá imprimir:

My PHP variable : test<br>
My node set : &lt;foo&gt;bar&lt;/foo&gt;

Notas

Nota:

Note que file:// é necessário na frente do caminho quando usando Windows.

xslt_getopt
xslt_set_base
XSLT (PHP4) Funções


Set the base URI for all XSLT transformations

xslt_process
xslt_set_encoding
XSLT (PHP4) Funções
PHP Manual

xslt_set_base

(PHP 4 >= 4.0.5)

xslt_set_base — Set the base URI for all XSLT transformations

Descrição

void xslt_set_base ( resource $xh , string $uri )

Sets the base URI for all XSLT transformations, the base URI is used with Xpath instructions to resolve document() and other commands which access external resources. It is also used to resolve URIs for the <xsl:include> and <xsl:import> elements.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

uri

The base URI to be used.

Valor Retornado

Não há valor retornado.

Histórico

Versão | Descrição
4.3.0 | As of PHP 4.3.0, the default base URI is the directory of the executing script. In effect, it is the directory name value of the __FILE__ constant. The default base URI is less predictable with older versions.

Notas

Nota:

Note que file:// é necessário na frente do caminho quando usando Windows.

xslt_process
xslt_set_encoding
XSLT (PHP4) Funções


Set the encoding for the parsing of XML documents

xslt_set_base
xslt_set_error_handler
XSLT (PHP4) Funções
PHP Manual

xslt_set_encoding

(PHP 4 >= 4.0.5)

xslt_set_encoding — Set the encoding for the parsing of XML documents

Descrição

void xslt_set_encoding ( resource $xh , string $encoding )

Set the output encoding for the XSLT transformations. When using the Sablotron backend, this option is only available when you compile Sablotron with encoding support.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

encoding

An output encoding, e.g iso-8859-1.

Valor Retornado

Não há valor retornado.

xslt_set_base
xslt_set_error_handler
XSLT (PHP4) Funções


Set an error handler for a XSLT processor

xslt_set_encoding
xslt_set_log
XSLT (PHP4) Funções
PHP Manual

xslt_set_error_handler

(PHP 4 >= 4.0.4)

xslt_set_error_handler — Set an error handler for a XSLT processor

Descrição

void xslt_set_error_handler ( resource $xh , mixed $handler )

Set an error handler function for the XSLT processor given by xh, this function will be called whenever an error occurs in the XSLT transformation (this function is also called for notices).

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

handler

The user function needs to accept four parameters: the XSLT processor, the error level, the error code and an array of messages. The function can be shown as:

error_handler ( resource $xh , int $error_level , int $error_code , array $messages )

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 xslt_set_error_handler() Example

<?php

// Our XSLT error handler
function xslt_error_handler($handler, $errno, $level, $info)
{
  // for now, let's just see the arguments
  var_dump(func_get_args());
}

// XML content :
$xml='<?xml version="1.0"?>
<para>
 oops, I misspelled the closing tag
</pata>';

// XSL content :
$xsl='<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
   <strong><xsl:value-of select="para"/></strong>
</xsl:template>
</xsl:stylesheet>';

$xh = xslt_create();

xslt_set_error_handler($xh, "xslt_error_handler");

echo xslt_process($xh, 'arg:/_xml', 'arg:/_xsl',
                  NULL, array("/_xml" => $xml, "/_xsl" => $xsl));

?>

O exemplo acima irá imprimir algo similar a:

array(4) {
  [0]=>
  resource(1) of type (XSLT Processor)
  [1]=>
  int(3)
  [2]=>
  int(0)
  [3]=>
  array(6) {
    ["msgtype"]=>
    string(5) "error"
    ["code"]=>
    string(1) "2"
    ["module"]=>
    string(9) "Sablotron"
    ["URI"]=>
    string(9) "arg:/_xml"
    ["line"]=>
    string(1) "4"
    ["msg"]=>
    string(34) "XML parser error 7: mismatched tag"
  }
}

Veja Também

  • xslt_set_object() - Sets the object in which to resolve callback functions if you want to use an object method as handler

xslt_set_encoding
xslt_set_log
XSLT (PHP4) Funções


Set the log file to write log messages to

xslt_set_error_handler
xslt_set_object
XSLT (PHP4) Funções
PHP Manual

xslt_set_log

(PHP 4 >= 4.0.6)

xslt_set_log — Set the log file to write log messages to

Descrição

void xslt_set_log ( resource $xh [, mixed $log ] )

This function allows you to set the file in which you want XSLT log messages to, XSLT log messages are different than error messages, in that log messages are not actually error messages but rather messages related to the state of the XSLT processor. They are useful for debugging XSLT, when something goes wrong.

By default logging is disabled, in order to enable logging you must first call xslt_set_log() with a boolean parameter which enables logging, then if you want to set the log file to debug to, you must then pass it a string containing the filename.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

log

This parameter is either a boolean value which toggles logging on and off, or a string containing the logfile in which log errors too.

Valor Retornado

Não há valor retornado.

Notas

Nota:

Note que file:// é necessário na frente do caminho quando usando Windows.

Exemplos

Exemplo #1 Using the XSLT Logging features

<?php

$xh = xslt_create();
xslt_set_log($xh, true);
xslt_set_log($xh, getcwd() . '/myfile.log');

$result = xslt_process($xh, 'dog.xml', 'pets.xsl');
echo $result;

xslt_free($xh);
?>

xslt_set_error_handler
xslt_set_object
XSLT (PHP4) Funções


Sets the object in which to resolve callback functions

xslt_set_log
xslt_set_sax_handler
XSLT (PHP4) Funções
PHP Manual

xslt_set_object

(PHP 4 >= 4.3.0)

xslt_set_object — Sets the object in which to resolve callback functions

Descrição

bool xslt_set_object ( resource $processor , object &$obj )

This function allows to use the processor inside an object and to resolve all callback functions in it.

The callback functions can be declared with xslt_set_sax_handlers(), xslt_set_scheme_handlers() or xslt_set_error_handler() and are assumed to be methods of object.

Parâmetros

processor

The XSLT processor link identifier, created with xslt_create().

obj

An object.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplos

Exemplo #1 Using your own error handler as a method

<?php

class my_xslt_processor {

    var $_xh; // our XSLT processor

    function my_xslt_processor()
    {
        $this->_xh = xslt_create();

        // Make $this object the callback resolver
        xslt_set_object($this->_xh, $this);

        // Let's handle the errors
        xslt_set_error_handler($this->_xh, "my_xslt_error_handler");
    }

    function my_xslt_error_handler($handler, $errno, $level, $info)
    {
        // for now, let's just see the arguments
        var_dump(func_get_args());
    }
}

?>
xslt_set_log
xslt_set_sax_handler
XSLT (PHP4) Funções


Set SAX handlers for a XSLT processor

xslt_set_object
xslt_set_sax_handlers
XSLT (PHP4) Funções
PHP Manual

xslt_set_sax_handler

(PHP 4 >= 4.0.3)

xslt_set_sax_handler — Set SAX handlers for a XSLT processor

Descrição

void xslt_set_sax_handler ( resource $xh , array $handlers )

Set SAX handlers on the resource handle given by xh.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

handlers

SAX handlers should be a two dimensional array with the format (all top level elements are optional):

array(
[document] =>
    array(
        start document handler,
        end document handler
    ),
[element] =>
    array(
        start element handler,
        end element handler
    ),
[namespace] =>
    array(
        start namespace handler,
        end namespace handler
    ),
[comment] => comment handler,
[pi] => processing instruction handler,
[character] => character data handler
)

Valor Retornado

Não há valor retornado.

xslt_set_object
xslt_set_sax_handlers
XSLT (PHP4) Funções


Set the SAX handlers to be called when the XML document gets processed

xslt_set_sax_handler
xslt_set_scheme_handler
XSLT (PHP4) Funções
PHP Manual

xslt_set_sax_handlers

(PHP 4 >= 4.0.6)

xslt_set_sax_handlers — Set the SAX handlers to be called when the XML document gets processed

Descrição

void xslt_set_sax_handlers ( resource $processor , array $handlers )

xslt_set_sax_handlers() registers the SAX handlers for the document, given a XSLT processor resource.

Using xslt_set_sax_handlers() doesn't look very different than running a SAX parser like xml_parse() on the result of an xslt_process() transformation.

Parâmetros

processor

The XSLT processor link identifier, created with xslt_create().

handlers

handlers should be an array in the following format:

<?php

$handlers = array(

  "document" => array(
    "start_doc",
    "end_doc"),

  "element"  => array(
    "start_element",
    "end_element"),

  "namespace" => array(
    "start_namespace",
    "end_namespace"),

  "comment"   => "comment",

  "pi"        => "pi",

  "character" => "characters"

);
?>
Where the functions follow the syntax described for the scheme handler functions.

Nota:

The given array does not need to contain all of the different sax handler elements (although it can), but it only needs to conform to "handler" => "function" format described above.

Each of the individual SAX handler functions are in the format below:

  • start_doc ( resource $processor )

  • end_doc ( resource $processor )

  • start_element ( resource $processor , string $name , array $attributes )

  • end_element ( resource $processor , string $name )

  • start_namespace ( resource $processor , string $prefix , string $uri )

  • end_namespace ( resource $processor , string $prefix )

  • comment ( resource $processor , string $contents )

  • pi ( resource $processor , string $target , string $contents )

  • characters ( resource $processor , string $contents )

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 xslt_set_sax_handlers() Example

<?php
// From ohlesbeauxjours at yahoo dot fr
// Here's a simple example that applies strtoupper() on
// the content of every <auteur> tag and then displays the
// resulting XML tree:

$xml='<?xml version="1.0"?>
<books>
 <book>
  <title>Mme Bovary</title>
  <author>Gustave Flaubert</author>
 </book>
 <book>
  <title>Mrs Dalloway</title>
  <author>Virginia Woolf</author>
 </book>
</books>';

$xsl='<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="ISO-8859-1" indent="no" omit-xml-declaration="yes"/>
<xsl:template match="/">
 <xsl:for-each select="books/book">
  <livre>
   <auteur><xsl:value-of select="author/text()"/></auteur>
  </livre>
 </xsl:for-each>
</xsl:template>
</xsl:stylesheet>';

// Handlers :
function start_document()
{
  // start reading the document
}

function end_document()
{
  // end reading the document
}

function start_element($parser, $name, $attributes)
{
  global $result,$tag;
  $result .= "<". $name . ">";
  $tag = $name;
}

function end_element($parser, $name)
{
  global $result;
  $result .= "</" . $name . ">";
}

function characters($parser, $data)
{
  global $result,$tag;
  if ($tag == "auteur" ) {
    $data = strtoupper($data);
  }
  $result .= $data;
}

// Transformation :
$xh = xslt_create();
$handlers = array("document" => array("start_document","end_document"),
   "element" => array("start_element","end_element"),
   "character" => "characters");

xslt_set_sax_handlers($xh, $handlers);
xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, array("/_xml"=>$xml, "/_xsl"=>$xsl));
xslt_free($xh);
?>

You can also use xslt_set_object() if you want to implement your handlers in an object.

Exemplo #2 Object oriented handler

<?php
// This is the object oriented version of the previous example
class data_sax_handler {

  var $buffer, $tag, $attrs;

  var $_xh;

  function data_sax_handler($xml, $xsl)
  {
      // our xslt resource
      $this->_xh = xslt_create();

      xslt_set_object($this->_xs, $this);

      // configure sax handlers
      $handlers = array(
        "document" => array('start_document', 'end_document'),
        "element" => array('start_element', 'end_element'),
        "character" => 'characters'
      );

      xslt_set_sax_handlers($this->_xh, $handlers);

      xslt_process($this->_xh, 'arg:/_xml', 'arg:/_xsl', NULL, array("/_xml"=>$xml, "/_xsl"=>$xsl));
      xslt_free($this->_xh);

  }

  function start_document()
  {
        // start reading the document
  }

  function end_document() {
        // complete reading the document
  }

  function start_element($parser, $name, $attributes) {
        $this->tag = $name;
        $this->buffer .= "<" . $name . ">";
        $this->attrs = $attributes;
  }

  function end_element($parser, $name)
  {
        $this->tag = '';
        $this->buffer .= "</" . $name . ">";
  }

  function characters($parser, $data)
  {
    if ($this->tag == 'auteur') {
          $data = strtoupper($data);
    }
    $this->buffer .= $data;
  }

  function get_buffer() {
    return $this->buffer;
  }

}

$exec = new data_sax_handler($xml, $xsl);

?>

Both examples will output:

<livre>
   <auteur>GUSTAVE FLAUBERT</auteur>
</livre>
<livre>
   <auteur>VIRGINIA WOOLF</auteur>
</livre>
xslt_set_sax_handler
xslt_set_scheme_handler
XSLT (PHP4) Funções


Set Scheme handlers for a XSLT processor

xslt_set_sax_handlers
xslt_set_scheme_handlers
XSLT (PHP4) Funções
PHP Manual

xslt_set_scheme_handler

(PHP 4 >= 4.0.5)

xslt_set_scheme_handler — Set Scheme handlers for a XSLT processor

Descrição

void xslt_set_scheme_handler ( resource $xh , array $handlers )

Set Scheme handlers on the resource handle given by xh.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

handlers

Scheme handlers should be an array with the format (all elements are optional):

array(
[get_all] => get all handler,
[open] => open handler,
[get] => get handler,
[put] => put handler,
[close] => close handler
)

Valor Retornado

Não há valor retornado.

xslt_set_sax_handlers
xslt_set_scheme_handlers
XSLT (PHP4) Funções


Set the scheme handlers for the XSLT processor

xslt_set_scheme_handler
xslt_setopt
XSLT (PHP4) Funções
PHP Manual

xslt_set_scheme_handlers

(PHP 4 >= 4.0.6)

xslt_set_scheme_handlers — Set the scheme handlers for the XSLT processor

Descrição

void xslt_set_scheme_handlers ( resource $xh , array $handlers )

Registers the scheme handlers (XPath handlers) for the document.

Parâmetros

xh

The XSLT processor link identifier, created with xslt_create().

handlers

An array with the following keys: "get_all", "open", "get", "put", and "close".

Every entry must be a function name or an array in the following format: array($obj, "method").

Note that the given array does not need to contain all of the different scheme handler elements (although it can), but it only needs to conform to the "handler" => "fonction" format described above.

Each of the individual scheme handler functions called are in the formats below:

string   get_all(resource processor, string scheme, string rest)
resource open(resource processor, string scheme, string rest)
int      get(resource processor, resource fp, string &data)
int      put(resource processor, resource fp, string data)
void     close(resource processor, resource fp)

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 xslt_set_scheme_handlers() example

For example, here is an implementation of the "file_exists()" PHP function.

<?php

// Definition of the handler
function mySchemeHandler($processor, $scheme, $rest)
{
    $rest = substr($rest,1);    // to remove the first / automatically added by the engine
    if ($scheme == 'file_exists') {
        // result is embedded in a small xml string
        return '<?xml version="1.0" encoding="UTF-8"?><root>' . (file_exists($rest) ? 'true' : 'false') . '</root>';
    }
}

$SchemeHandlerArray = array('get_all' => 'mySchemeHandler');

// Start the engine
$params = array();
$xh = xslt_create();

xslt_set_scheme_handlers($xh, $SchemeHandlerArray);

$result = xslt_process($xh, "myFile.xml", "myFile.xsl", NULL, array(), $params);
xslt_free($xh);

echo $result;

?>

Then, inside the stylesheet, you can test whether a certain file exists with:

<xsl:if test="document('file_exists:anotherXMLfile.xml')/root='true'">
 <!-- The file exist -->
</xsl:if>

Veja Também

  • xslt_set_scheme_handler() - Set Scheme handlers for a XSLT processor

xslt_set_scheme_handler
xslt_setopt
XSLT (PHP4) Funções


Set options on a given xsl processor

xslt_set_scheme_handlers
PHP at the Core: A Hacker's Guide to the Zend Engine
XSLT (PHP4) Funções
PHP Manual

xslt_setopt

(PHP 4 >= 4.3.0)

xslt_setopt — Set options on a given xsl processor

Descrição

mixed xslt_setopt ( resource $processor , int $newmask )

xslt_setopt() sets the options specified by newmask on the given processor.

Parâmetros

processor

The XSLT processor link identifier, created with xslt_create().

newmask

newmask is a bitmask constructed with the following constants:

  • XSLT_SABOPT_PARSE_PUBLIC_ENTITIES - Tell the processor to parse public entities. By default this has been turned off.

  • XSLT_SABOPT_DISABLE_ADDING_META - Do not add the meta tag "Content-Type" for HTML output. The default is set during the compilation of the processor.

  • XSLT_SABOPT_DISABLE_STRIPPING - Suppress the whitespace stripping (on data files only).

  • XSLT_SABOPT_IGNORE_DOC_NOT_FOUND - Consider unresolved documents (the document() function) non-lethal.

Valor Retornado

Returns the number of previous mask is possible, TRUE otherwise, FALSE in case of an error.

Exemplos

Exemplo #1 xslt_setopt() Example

<?php

$xh = xslt_create();

// Tell Sablotron to process public entities
xslt_setopt($xh, XSLT_SABOPT_PARSE_PUBLIC_ENTITIES);

// Let's also ask him to suppress whitespace stripping
xslt_setopt($xh, xslt_getopt($xh) | XSLT_SABOPT_DISABLE_STRIPPING);

?>

Veja Também

  • xslt_getopt() - Get options on a given xsl processor

xslt_set_scheme_handlers
PHP at the Core: A Hacker's Guide to the Zend Engine
XSLT (PHP4) Funções


PHP at the Core: A Hacker's Guide to the Zend Engine

  • Preface
  • The "counter" Extension - A Continuing Example
    • Instalação/Configuração
    • Constantes pré-definidas
    • Exemplos
    • Counter — The Counter class
    • Basic — The basic interface
    • Extended — The extended interface
  • The PHP 5 build system
    • Building PHP for extension development
    • The ext_skel script
    • Talking to the UNIX build system: config.m4
    • Talking to the Windows build system: config.w32
  • Extension structure
    • Files which make up an extension
    • Basic constructs
    • The zend_module structure
    • Extension globals
    • Life cycle of an extension
    • Testing an extension
  • Memory management
    • Basic memory management
    • Data persistence
    • Thread-Safe Resource Manager
  • Working with variables
    • Intro
    • Creating variables and setting values
  • Writing functions
  • Working with classes and objects
  • Working with resources
  • Working with INI settings
  • Working with streams
  • PDO Driver How-To
    • Prerequisites
    • Preparation and Housekeeping
    • Fleshing out your skeleton
    • Building
    • Testing
    • Packaging and distribution
    • pdo_dbh_t definition
    • pdo_stmt_t definition
    • Constants
    • Error handling
  • Extension FAQs
  • Zend Engine 2 API reference
  • Zend Engine 2 opcode list
    • Opcodes
  • Zend Engine 1
    • Old introduction
    • Streams API for PHP Extension Authors
    • Zend API: Hackeando o Núcleo do PHP
    • TSRM API
xslt_setopt
Preface
Manual do PHP


Preface

The Zend API has evolved considerably over time, as PHP has become a more robust and widespread language. With the introduction of PHP 5 came the Zend Engine 2 (ZE2). ZE2 came with an almost entirely new Object-Oriented Programming (OOP) model and a number of improvements in the API.

Aviso

This documentation is still under heavy development. The original Zend documentation is preserved in its entirety in the Zend Engine 1 section for those who need it before this documentation is completed.

This section of the manual is devoted to ZE2. The differences in how extensions are written in ZE1 are small; a short reference to them is given in an appendix to this section.

The documentation in this section is current as of PHP 5.3.3, the most recent stable release of PHP 5.3 at the time of this writing. Notable differences in the minor PHP 5 releases (5.0 through 5.3) are given as appropriate.

PHP at the Core: A Hacker's Guide to the Zend Engine
The "counter" Extension - A Continuing Example
PHP at the Core: A Hacker's Guide to the Zend Engine


Preface
Instalação/Configuração
PHP at the Core: A Hacker's Guide to the Zend Engine
PHP Manual

The "counter" Extension - A Continuing Example

Índice

  • Instalação/Configuração
  • Constantes pré-definidas
  • Exemplos
  • Counter
  • Basic
  • Extended

Preface

Throughout this Zend documentation, references are made to an example module in order to illustrate various concepts. The "counter" extension is this example, a fictional yet functional Zend module which strives to use as much of the Zend API as is reasonably possible. This short chapter describes the userland interface to the completed extension.

Nota: "counter" serves no practical purpose whatsoever, as the functionality it provides is far more effectively implemented by appropriate userland code.

Preface
Instalação/Configuração
PHP at the Core: A Hacker's Guide to the Zend Engine


Instalação/Configuração

Índice

  • Introdução
  • Configurações em Execução
  • Tipos Resource
The "counter" Extension - A Continuing Example
Introdução
The "counter" Extension - A Continuing Example


Introdução

The "counter" extension provides any number of counters to PHP code using it which reset at times determined by the caller.

There are three interfaces to "counter": basic, extended, and objective. The basic interface provides a single counter controlled by INI settings and function calls. The extended interface provides an arbitrary number of named counter resources which may optionally persist beyond the lifetime of a single PHP request. The objective interface combines both the basic and extended interfaces into a Counter class.

Instalação/Configuração
Configurações em Execução
Instalação/Configuração


Configurações em Execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Counter configuration options
Name | Default | Changeable | Changelog
counter.reset_time | COUNTER_RESET_PER_REQUEST | PHP_INI_ALL |
counter.save_path | "" | PHP_INI_ALL |
counter.initial_value | "0" | PHP_INI_ALL |

Para mais detalhes e definições dos modos PHP_INI_*, veja Aonde uma configuração deve ser definida.

counter.reset_time integer
counter.reset_time tells "counter" to reset the counter used by the basic interface. It may be any of the COUNTER_RESET_* constants (see below).
counter.save_path string
Tells "counter" where to save data that has to persist between invocations of PHP (i.e. any counter that has COUNTER_RESET_NEVER or COUNTER_FLAG_SAVE). A file will be created at this path, which must be readable and writable to whatever user PHP is running as.
counter.initial_value integer
Sets the initial value of the counter used by the basic interface whenever it is reset.
Introdução
Tipos Resource
Instalação/Configuração


Tipos Resource

The "counter" extension defines one resource type: a counter.

Configurações em Execução
Constantes pré-definidas
Instalação/Configuração


Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

COUNTER_FLAG_PERSIST (integer)
A counter with this flag will be created as a persistent resource.
COUNTER_FLAG_SAVE (integer)
A counter with this flag will be saved between invocations of PHP.
COUNTER_FLAG_NO_OVERWRITE (integer)
This flag causes counter_create() to avoid overwriting an existing named counter with a new one.
COUNTER_META_NAME (string)
Pass this constant to get the name of a counter resource or object.
COUNTER_META_IS_PERISTENT (string)
Pass this constant to determine whether a counter resource or object is persistent (has the COUNTER_FLAG_PERSIST flag).
COUNTER_RESET_NEVER (integer)
The counter will never be reset.
COUNTER_RESET_PER_LOAD (integer)
The counter will be reset on each invocation of PHP.
COUNTER_RESET_PER_REQUEST (integer)
The counter will be reset on each request.
Tipos Resource
Exemplos
The "counter" Extension - A Continuing Example


Exemplos

Índice

  • Basic interface
  • Extended interface
  • Objective interface
Constantes pré-definidas
Basic interface
The "counter" Extension - A Continuing Example


Basic interface

The basic interface provides three simple functions, illustrated here:

Exemplo #1 "counter"'s basic interface

<?php
$starting_counter_value = counter_get();
counter_bump(1);
$second_counter_value = counter_get();
counter_reset();
$final_counter_value = counter_get();
printf("%3d %3d %3d", $starting_counter_value, $second_counter_value, $final_counter_value);
?>

O exemplo acima irá imprimir:

  0   1   0

The basic interface also provides a number of INI settings.

Exemplos
Extended interface
Exemplos


Extended interface

The extended interface provides a small suite of functions that allow the user to define an arbitrary number of named counters with unique settings. The basic interface can be used in parallel with the extended interface.

Exemplo #1 "counter"'s extended interface

<?php
function print_counter_info($counter)
{
    if (is_resource($counter)) {
        printf("Counter's name is '%s' and is%s persistent. Its current value is %d.\n",
            counter_get_meta($counter, COUNTER_META_NAME),
            counter_get_meta($counter, COUNTER_META_IS_PERSISTENT) ? '' : ' not',
            counter_get_value($counter));
    } else {
      print "Not a valid counter!\n";
    }
}

if (($counter_one = counter_get_named("one")) === NULL) {
    $counter_one = counter_create("one", 0, COUNTER_FLAG_PERSIST);
}
counter_bump_value($counter_one, 2);
$counter_two = counter_create("two", 5);
$counter_three = counter_get_named("three");
$counter_four = counter_create("four", 2, COUNTER_FLAG_PERSIST | COUNTER_FLAG_SAVE | COUNTER_FLAG_NO_OVERWRITE);
counter_bump_value($counter_four, 1);

print_counter_info($counter_one);
print_counter_info($counter_two);
print_counter_info($counter_three);
print_counter_info($counter_four);
?>

When run once, the above example outputs:

Counter's name is 'one' and is persistent. Its current value is 2.
Counter's name is 'two' and is not persistent. Its current value is 5.
Not a valid counter!
Counter's name is 'four' and is persistent. Its current value is 3.

If run a second time within the same instance of PHP, it outputs:

Counter's name is 'one' and is persistent. Its current value is 4.
Counter's name is 'two' and is not persistent. Its current value is 5.
Not a valid counter!
Counter's name is 'four' and is persistent. Its current value is 4.

If then run a third time in a different instance of PHP, it outputs:

Counter's name is 'one' and is persistent. Its current value is 2.
Counter's name is 'two' and is not persistent. Its current value is 5.
Not a valid counter!
Counter's name is 'four' and is persistent. Its current value is 5.
Basic interface
Objective interface
Exemplos


Objective interface

The objective interface provides an object-oriented way to access the extended interfaces. The following example shows how the above one would be implemented using the objective interface. The output of this example is exactly the same, except that instead of printing "Not a valid counter!", this will instead issue a PHP warning that the variable $counter_three is not an object. This example shows that it is possible to subclass the Counter class defined by the extension, as well as that the counter's value is maintained using an instance variable rather than method access.

Exemplo #1 "counter"'s objective interface

<?php
class MyCounter extends Counter
{
    public function printCounterInfo() {
        printf("Counter's name is '%s' and is%s persistent. Its current value is %d.\n",
            $this->getMeta(COUNTER_META_NAME),
            $this->getMeta(COUNTER_META_IS_PERSISTENT) ? '' : ' not',
            $this->value);
    }
}

Counter::setCounterClass("MyCounter");
if (($counter_one = Counter::getNamed("one")) === NULL) {
    $counter_one = new Counter("one", 0, COUNTER_FLAG_PERSIST);
}
$counter_one->bumpValue(2); // we aren't allowed to "set" the value directly
$counter_two = new Counter("two", 5);
$counter_three = Counter::getNamed("three");
$counter_four = new Counter("four", 2, COUNTER_FLAG_PERSIST | COUNTER_FLAG_SAVE | COUNTER_FLAG_NO_OVERWRITE);
$counter_four->bumpValue(1);

$counter_one->printCounterInfo();
$counter_two->printCounterInfo();
$counter_three->printCounterInfo();
$counter_four->printCounterInfo();
?>
Extended interface
Counter
Exemplos


The Counter class

Introdução

Represents a single counter object.

Sinopse da classe

Counter {
__construct ( string $name [, integer $initial_value [, integer $flags ]] )
integer getValue ( void )
bumpValue ( integer $offset )
void resetValue ( void )
mixed getMeta ( integer $attribute )
static Counter getNamed ( string $name )
static void setCounterClass ( string $name )
}

Índice

  • Counter::__construct — Creates an instance of a Counter which maintains a single numeric value.
  • Counter::getValue — Get the current value of a counter.
  • Counter::bumpValue — Change the current value of a counter.
  • Counter::resetValue — Reset the current value of a counter.
  • Counter::getMeta — Return a piece of metainformation about a counter.
  • Counter::getNamed — Retrieve an existing named counter.
  • Counter::setCounterClass — Set the class returned by Counter::getNamed.
Objective interface
Counter::__construct
The "counter" Extension - A Continuing Example


Creates an instance of a Counter which maintains a single numeric value.

Counter
Counter::getValue
Counter
PHP Manual

Counter::__construct

Counter::__construct — Creates an instance of a Counter which maintains a single numeric value.

Descrição

Counter::__construct() ( string $name [, integer $initial_value [, integer $flags ]] )

Creates an instance of a Counter which maintains a single numeric value.

Parâmetros

name
The new counter's name.
initial_value
The initial value of the counter. Defaults to zero (0).
flags
Flags for the new counter, chosen from the COUNTER_FLAG_* constants.

Valor Retornado

Returns a Counter object on success.

Erros

Counter::__construct() throws an Exception if something goes wrong.

Counter
Counter::getValue
Counter


Get the current value of a counter.

Counter::__construct
Counter::bumpValue
Counter
PHP Manual

Counter::getValue

Counter::getValue — Get the current value of a counter.

Descrição

integer Counter::getValue ( void )

Counter::getValue() returns the current value of a counter.

Valor Retornado

Counter::getValue() returns an integer.

Veja Também

  • Counter::bumpValue() - Change the current value of a counter.
  • Counter::resetValue() - Reset the current value of a counter.
Counter::__construct
Counter::bumpValue
Counter


Change the current value of a counter.

Counter::getValue
Counter::resetValue
Counter
PHP Manual

Counter::bumpValue

Counter::bumpValue — Change the current value of a counter.

Descrição

Counter::bumpValue ( integer $offset )

Counter::bumpValue() updates the current value of a counter.

Parâmetros

offset
The amount by which to change the counter's value. Can be negative.

Veja Também

  • Counter::getValue() - Get the current value of a counter.
  • Counter::resetValue() - Reset the current value of a counter.
Counter::getValue
Counter::resetValue
Counter


Reset the current value of a counter.

Counter::bumpValue
Counter::getMeta
Counter
PHP Manual

Counter::resetValue

Counter::resetValue — Reset the current value of a counter.

Descrição

void Counter::resetValue ( void )

Counter::resetValue() resets the current value of a counter to its original initial value.

Veja Também

  • Counter::getValue() - Get the current value of a counter.
  • Counter::bumpValue() - Change the current value of a counter.
Counter::bumpValue
Counter::getMeta
Counter


Return a piece of metainformation about a counter.

Counter::resetValue
Counter::getNamed
Counter
PHP Manual

Counter::getMeta

Counter::getMeta — Return a piece of metainformation about a counter.

Descrição

mixed Counter::getMeta ( integer $attribute )

Counter::getMeta() returns metainformation about a counter.

Parâmetros

attribute
The metainformation to retrieve.

Valor Retornado

Counter::getMeta() returns values of varying types based on which metainformation was requested.

Counter::resetValue
Counter::getNamed
Counter


Retrieve an existing named counter.

Counter::getMeta
Counter::setCounterClass
Counter
PHP Manual

Counter::getNamed

Counter::getNamed — Retrieve an existing named counter.

Descrição

static Counter Counter::getNamed ( string $name )

Counter::getNamed() returns an existing counter by name if that name exists, or NULL otherwise. This is a static function.

Parâmetros

name
The counter name to search for.

Valor Retornado

Counter::getNamed() returns an existing counter by name if that name exists, or NULL otherwise.

Counter::getMeta
Counter::setCounterClass
Counter


Set the class returned by Counter::getNamed.

Counter::getNamed
Basic
Counter
PHP Manual

Counter::setCounterClass

Counter::setCounterClass — Set the class returned by Counter::getNamed().

Descrição

static void Counter::setCounterClass ( string $name )

Counter::setCounterClass() changes the class of objects returned by Counter::getNamed(). The class being set must not have a public constructor and must be a subclass of Counter. If these conditions are not met, a fatal error is raised. This is a static function.

Parâmetros

name
The name of the class to use.
Counter::getNamed
Basic
Counter


The basic interface

Índice

  • counter_get — Get the current value of the basic counter.
  • counter_bump — Update the current value of the basic counter.
  • counter_reset — Reset the current value of the basic counter.
Counter::setCounterClass
counter_get
The "counter" Extension - A Continuing Example


Get the current value of the basic counter.

Basic
counter_bump
Basic
PHP Manual

counter_get

counter_get — Get the current value of the basic counter.

Descrição

integer counter_get ( void )

counter_get() returns the current value of the basic interface's counter.

Valor Retornado

counter_get() returns an integer.

Veja Também

  • counter_bump() - Update the current value of the basic counter.
  • counter_reset() - Reset the current value of the basic counter.
Basic
counter_bump
Basic


Update the current value of the basic counter.

counter_get
counter_reset
Basic
PHP Manual

counter_bump

counter_bump — Update the current value of the basic counter.

Descrição

void counter_bump ( integer $offset )

counter_bump() updates the current value of the basic interface's counter.

Parâmetros

offset
The amount by which to change the counter's value. Can be negative.

Veja Também

  • counter_get() - Get the current value of the basic counter.
  • counter_reset() - Reset the current value of the basic counter.
counter_get
counter_reset
Basic


Reset the current value of the basic counter.

counter_bump
Extended
Basic
PHP Manual

counter_reset

counter_reset — Reset the current value of the basic counter.

Descrição

void counter_reset ( void )

counter_reset() resets the current value of the basic interface's counter to its original initial value.

Veja Também

  • counter_get() - Get the current value of the basic counter.
  • counter_bump() - Update the current value of the basic counter.
counter_bump
Extended
Basic


The extended interface

Índice

  • counter_create — Creates a counter which maintains a single numeric value.
  • counter_get_value — Get the current value of a counter resource.
  • counter_bump_value — Change the current value of a counter resource.
  • counter_reset_value — Reset the current value of a counter resource.
  • counter_get_meta — Return a piece of metainformation about a counter resource.
  • counter_get_named — Retrieve an existing named counter as a resource.
counter_reset
counter_create
The "counter" Extension - A Continuing Example


Creates a counter which maintains a single numeric value.

Extended
counter_get_value
Extended
PHP Manual

counter_create

counter_create — Creates a counter which maintains a single numeric value.

Descrição

resource counter_create ( string $name [, integer $initial_value [, integer $flags ]] )

Creates a counter which maintains a single numeric value.

Parâmetros

name
The new counter's name.
initial_value
The initial value of the counter. Defaults to zero (0).
flags
Flags for the new counter, chosen from the COUNTER_FLAG_* constants.

Valor Retornado

Returns a counter resource.

Extended
counter_get_value
Extended


Get the current value of a counter resource.

counter_create
counter_bump_value
Extended
PHP Manual

counter_get_value

counter_get_value — Get the current value of a counter resource.

Descrição

integer counter_get_value ( resource $counter )

counter_get_value() returns the current value of a counter resource.

Parâmetros

counter
The counter resource to operate on.

Valor Retornado

counter_get_value() returns an integer.

Veja Também

  • counter_bump_value() - Change the current value of a counter resource.
  • counter_reset_value() - Reset the current value of a counter resource.
counter_create
counter_bump_value
Extended


Change the current value of a counter resource.

counter_get_value
counter_reset_value
Extended
PHP Manual

counter_bump_value

counter_bump_value — Change the current value of a counter resource.

Descrição

void counter_bump_value ( resource $counter , integer $offset )

counter_bump_value() updates the current value of a counter resource.

Parâmetros

counter
The counter resource to operate on.
offset
The amount by which to change the counter's value. Can be negative.

Veja Também

  • counter_get_value() - Get the current value of a counter resource.
  • counter_reset_value() - Reset the current value of a counter resource.
counter_get_value
counter_reset_value
Extended


Reset the current value of a counter resource.

counter_bump_value
counter_get_meta
Extended
PHP Manual

counter_reset_value

counter_reset_value — Reset the current value of a counter resource.

Descrição

void counter_reset_value ( resource $counter )

counter_reset_value() resets the current value of a counter resource to its original initial value.

Parâmetros

counter
The counter resource to operate on.

Veja Também

  • counter_get_value() - Get the current value of a counter resource.
  • counter_bump_value() - Change the current value of a counter resource.
counter_bump_value
counter_get_meta
Extended


Return a piece of metainformation about a counter resource.

counter_reset_value
counter_get_named
Extended
PHP Manual

counter_get_meta

counter_get_meta — Return a piece of metainformation about a counter resource.

Descrição

mixed counter_get_meta ( resource $counter , integer $attribute )

counter_get_meta() returns metainformation about a counter resource.

Parâmetros

counter
The counter resource to operate on.
attribute
The metainformation to retrieve.

Valor Retornado

counter_get_meta() returns values of varying types based on which metainformation was requested.

counter_reset_value
counter_get_named
Extended


Retrieve an existing named counter as a resource.

counter_get_meta
The PHP 5 build system
Extended
PHP Manual

counter_get_named

counter_get_named — Retrieve an existing named counter as a resource.

Descrição

resource Counter::getNamed ( string $name )

counter_get_named() returns an existing counter by name if that name exists, or NULL otherwise.

Parâmetros

name
The counter name to search for.

Valor Retornado

counter_get_name() returns an existing counter by name if that name exists, or NULL otherwise.

counter_get_meta
The PHP 5 build system
Extended


The PHP 5 build system

Índice

  • Building PHP for extension development
  • The ext_skel script
  • Talking to the UNIX build system: config.m4
  • Talking to the Windows build system: config.w32

With all the functionality and flexibility available in PHP 5, it is no surprise that it consists of several thousand files and over one million lines of source code. Equally unsurprising is the necessity of a build system to manage so much data. This section describes how to set PHP up for extension development, the layout of an extension within the PHP source tree, and how to interface your extension with the build system.

counter_get_named
Building PHP for extension development
PHP at the Core: A Hacker's Guide to the Zend Engine


Building PHP for extension development

In a typical PHP installation, the need for high performance almost always results in optimization at the cost of debugging facilities. This is a reasonable tradeoff for production use, but when developing an extension it falls short. What we need is a build of PHP which will give us some hints what has gone wrong when something does.

The Zend Engine provides a memory manager which is capable of tracking memory leaks in extensions and providing detailed debugging information. This tracking is disabled by default, as is thread-safety. To turn them on, pass the --enable-debug and --enable-maintainer-zts options to configure, along with whatever options you typically use. For instructions on building PHP from source, see the instructions at Considerações Gerais sobre Instalação. A typical configure line might look like this:

$ ./configure --prefix=/where/to/install/php --enable-debug --enable-maintainer-zts --enable-cgi --enable-cli --with-mysql=/path/to/mysql

The PHP 5 build system
The ext_skel script
The PHP 5 build system


The ext_skel script

A PHP extension is composed of several files common to all extensions. As the details of many of those files are similar from extension to extension, it can be laborious to duplicate the content for each one. Fortunately, there is a script which can do all of the initial setup for you. It's called ext_skel, and it's been distributed with PHP since 4.0.

Running ext_skel with no parameters produces this output in PHP 5.2.2:

php-5.2.2/ext$ ./ext_skel
./ext_skel --extname=module [--proto=file] [--stubs=file] [--xml[=file]]
           [--skel=dir] [--full-xml] [--no-help]

  --extname=module   module is the name of your extension
  --proto=file       file contains prototypes of functions to create
  --stubs=file       generate only function stubs in file
  --xml              generate xml documentation to be added to phpdoc-cvs
  --skel=dir         path to the skeleton directory
  --full-xml         generate xml documentation for a self-contained extension
                     (not yet implemented)
  --no-help          don't try to be nice and create comments in the code
                     and helper functions to test if the module compiled
Generally, when developing a new extension the only parameters you will be interested in are --extname and --no-help. Unless you are already experienced with the structure of an extension, you will not want to use --no-help; specifying it causes ext_skel to leave out many helpful comments in the files it generates.

This leaves you with --extname, which tells ext_skel what the name of your extension is. This "name" is an all-lowercase identifier containing only letters and underscores which is unique among everything in the ext/ folder of your PHP distribution.

The --proto option is intended to allow the developer to specify a header file from which a set of PHP functions will be created, ostensibly for the purpose of developing an extension based on a library, but it often functions poorly with most modern header files. A test run on the zlib.h header resulted in a very large number of empty and nonsense prototypes in the ext_skel output files. The --xml and --full-xml options are entirely nonfunctional thus far. The --skel option can be used to specify a modified set of skeleton files to work from, a topic which is beyond the scope of this section.

Building PHP for extension development
Talking to the UNIX build system: config.m4
The PHP 5 build system


Talking to the UNIX build system: config.m4

The config.m4 file for an extension tells the UNIX build system what configure options your extension supports, what external libraries and includes you require, and what source files are to be compiled as part of it. A reference to all the commonly used autoconf macros, both PHP-specific and those built into autoconf, is given in the Zend Engine 2 API reference section.

Dica

When developing a PHP extension, it is strongly recommended that autoconf version 2.13 be installed, despite the newer releases which are available. Version 2.13 is recognized as a common denominator of autoconf availability, usability, and user base. Using later versions will sometimes produce cosmetic differences from the expected output of configure.

Exemplo #1 An example config.m4 file

dnl $Id$
dnl config.m4 for extension example
PHP_ARG_WITH(example, for example support,
[  --with-example[=FILE]       Include example support. File is the optional path to example-config])
PHP_ARG_ENABLE(example-debug, whether to enable debugging support in example,
[  --enable-example-debug        example: Enable debugging support in example], no, no)
PHP_ARG_WITH(example-extra, for extra libraries for example,
[  --with-example-extra=DIR      example: Location of extra libraries for example], no, no)

dnl Check whether the extension is enabled at all
if test "$PHP_EXAMPLE" != "no"; then

  dnl Check for example-config. First try any path that was given to us, then look in $PATH
  AC_MSG_CHECKING([for example-config])
  EXAMPLE_CONFIG="example-config"
  if test "$PHP_EXAMPLE" != "yes"; then
    EXAMPLE_PATH=$PHP_EXAMPLE
  else
    EXAMPLE_PATH=`$php_shtool path $EXAMPLE_CONFIG`
  fi

  dnl If a usable example-config was found, use it
  if test -f "$EXAMPLE_PATH" && test -x "$EXAMPLE_PATH" && $EXAMPLE_PATH --version > /dev/null 2>&1; then
    AC_MSG_RESULT([$EXAMPLE_PATH])
    EXAMPLE_LIB_NAME=`$EXAMPLE_PATH --libname`
    EXAMPLE_INCDIRS=`$EXAMPLE_PATH --incdirs`
    EXAMPLE_LIBS=`$EXAMPLE_PATH --libs`

    dnl Check that the library works properly
    PHP_CHECK_LIBRARY($EXAMPLE_LIB_NAME, example_critical_function,
    [
      dnl Add the necessary include dirs
      PHP_EVAL_INCLINE($EXAMPLE_INCDIRS)
      dnl Add the necessary libraries and library dirs
      PHP_EVAL_LIBLINE($EXAMPLE_LIBS, EXAMPLE_SHARED_LIBADD)
    ],[
      dnl Bail out
      AC_MSG_ERROR([example library not found. Check config.log for more information.])
    ],[$EXAMPLE_LIBS]
    )
  else
    dnl No usable example-config, bail
    AC_MSG_RESULT([not found])
    AC_MSG_ERROR([Please check your example installation.])
  fi

  dnl Check whether to enable debugging
  if test "$PHP_EXAMPLE_DEBUG" != "no"; then
    dnl Yes, so set the C macro
    AC_DEFINE(USE_EXAMPLE_DEBUG,1,[Include debugging support in example])
  fi

  dnl Check for the extra support
  if test "$PHP_EXAMPLE_EXTRA" != "no"; then
    if test "$PHP_EXAMPLE_EXTRA" == "yes"; then
      AC_MSG_ERROR([You must specify a path when using --with-example-extra])
    fi

    PHP_CHECK_LIBRARY(example-extra, example_critical_extra_function,
    [
      dnl Add the neccessary paths
      PHP_ADD_INCLUDE($PHP_EXAMPLE_EXTRA/include)
      PHP_ADD_LIBRARY_WITH_PATH(example-extra, $PHP_EXAMPLE_EXTRA/lib, EXAMPLE_SHARED_LIBADD)
      AC_DEFINE(HAVE_EXAMPLEEXTRALIB,1,[Whether example-extra support is present and requested])
      EXAMPLE_SOURCES="$EXAMPLE_SOURCES example_extra.c"
    ],[
      AC_MSG_ERROR([example-extra lib not found. See config.log for more information.])
    ],[-L$PHP_EXAMPLE_EXTRA/lib]
    )
  fi

  dnl Finally, tell the build system about the extension and what files are needed
  PHP_NEW_EXTENSION(example, example.c $EXAMPLE_SOURCES, $ext_shared)
  PHP_SUBST(EXAMPLE_SHARED_LIBADD)
fi

A short introduction to autoconf syntax

config.m4 files are written using the GNU autoconf syntax. It can be described in a nutshell as shell scripting augmented by a powerful macro language. Comments are delimited by the string dnl, and strings are quoted using left and right brackets (e.g. [ and ]). Quoting of strings can be nested as many times as needed. A full reference to the syntax can be found in the autoconf manual at » http://www.gnu.org/software/autoconf/manual/.

PHP_ARG_*: Giving users the option

The very first thing seen in the example config.m4 above, aside from a couple of comments, are three lines using PHP_ARG_WITH() and PHP_ARG_ENABLE(). These provide configure with the options and help text seen when running ./configure --help. As the names suggest, the difference between the two is whether they create a --with-* option or an --enable-* option. Every extension should provide at least one or the other with the extension name, so that users can choose whether or not to build the extension into PHP. By convention, PHP_ARG_WITH() is used for an option which takes a parameter, such as the location of a library or program required by an extension, while PHP_ARG_ENABLE() is used for an option which represents a simple flag.

Exemplo #2 Sample configure output

$ ./configure --help
...
  --with-example[=FILE]       Include example support. FILE is the optional path to example-config
  --enable-example-debug        example: Enable debugging support in example
  --with-example-extra=DIR      example: Location of extra libraries for example
...

$ ./configure --with-example=/some/library/path/example-config --disable-example-debug --with-example-extra=/another/library/path
...
checking for example support... yes
checking whether to enable debugging support in example... no
checking for extra libraries for example... /another/library/path
...

Nota:

Regardless of the order in which options are specified on the command line when configure is called, the checks will be run in the order they are specified in config.m4.

Processing the user's choices

Now that config.m4 can provide the user with some choices of what to do, it's time to act upon those choices. In the example above, the obvious default for all three options, if any of them are unspecified, is "no". As a matter of convention, it is best to use this as the default for the option which enables the extension, as it will be overridden by phpize for extensions built separately, and should not clutter the extension space by default when being built into PHP. The code to process the three options is by far the most complicated.

Handling the --with-example[=FILE] option

The first check made of the --with-example[=FILE] option is whether it was set at all. As this option controls the inclusion of the entire extension, if it was unspecified, given in the negative form (--without-example ), or given the value "no", nothing else is done at all. In the example above, it is specified with the value /some/library/path/example-config, so the first test succeeds.

Next, the code calls AC_MSG_CHECKING(), an autoconf macro which outputs a standard "checking for something" line, and checks whether the user gave an explicit path to the fictional example-config. In this example, PHP_EXAMPLE got the value /some/library/path/example-config, which is now copied into the EXAMPLE_PATH variable. Had the user specified only --with-example , the code would have executed $php_shtool path $EXAMPLE_CONFIG, which would try to guess the location of example-config using the user's current PATH. Either way, the next step is to check whether the chosen EXAMPLE_PATH is a regular file, is executable, and can be run successfully. If so, AC_MSG_RESULT() is called, which completes the output line started by AC_MSG_CHECKING(). Otherwise, AC_MSG_ERROR() is called, which prints the given message and halts configure immediately.

The code now determines some site-specific configuration information by running example-config several times. The next call is to PHP_CHECK_LIBRARY(), a macro provided by the PHP buildsystem as a wrapper around autoconf's AC_CHECK_LIB(). PHP_CHECK_LIBRARY() attempts to compile, link, and run a program which calls the symbol specified by the second parameter in the library specified by the first, using the string given in the fifth as extra linker options. If the attempt succeeds, the script given in the third parameter is run. This script tells the PHP buildsystem to extract include paths, library paths, and library names from the raw option strings example-config provided. If the attempt fails, the script in the fourth parameter is run instead. In this case, AC_MSG_ERROR() is called to stop processing.

Handling the --enable-example-debug option

Processing the --enable-example-debug is much simpler. A simple check for its truth value is performed. If that check succeeds, AC_DEFINE() is called to make the C macro USE_EXAMPLE_DEBUG available to the source of the extension. The third parameter is a comment string for config.h; it is safe to leave this empty, and often is.

Handling the --with-example-extra=DIR option

For the sake of this example, the fictional "extra" functionality requested by the --with-example-extra=DIR option does not share the fictional example-config program, nor does it have any default paths to search. Therefore, the user is required to provide the installation prefix of the necessary library. This setup is somewhat unlikely in a real-world extension, but is considered illustrative.

The code begins in a now-familiar way by checking the truth value of PHP_EXAMPLE_EXTRA. If a negative form was provided, no further processing is done; the user did not request extra functionality. If a positive form was provided without a parameter, AC_MSG_ERROR() is called to halt processing. The next step is another invocation of PHP_CHECK_LIBRARY(). This time, since there is no set of predefined compiler options provided, PHP_ADD_INCLUDE() and PHP_ADD_LIBRARY_WITH_PATH() are used to construct the necessary include paths, library paths, and library flags for the extra functionality. AC_DEFINE() is also called to indicate to the code that the extra functionality was both requested and available, and a variable is set to tell later code that there are extra source files to build. If the check fails, the familiar AC_MSG_ERROR() is called. A different way to handle the failure would have been to call AC_MSG_WARNING() instead, e.g.:

AC_MSG_WARNING([example-extra lib not found. example will be built without extra functionality.])

In this case, configure would print a warning message rather than an error, and continue processing. Which way such failures are handled is a design decision left to the extension developer.

Telling the buildsystem what was decided

With all the necessary includes and libraries specified, with all the options processed and macros defined, one more thing remains to be done: The build system must be told to build the extension itself, and which files are to be used for that. To do this, the PHP_NEW_EXTENSION() macro is called. The first parameter is the name of the extension, which is the same as the name of the directory containing it. The second parameter is the list of all source files which are part of the extension. See PHP_ADD_BUILD_DIR() for information about adding source files in subdirectories to the build process. The third parameter should always be $ext_shared, a value which was determined by configure when PHP_ARG_WITH() was called for --with-example[=FILE] . The fourth parameter specifies a "SAPI class", and is only useful for extensions which require the CGI or CLI SAPIs specifically. It should be left empty in all other cases. The fifth parameter specifies a list of flags to be added to CFLAGS while building the extension; the sixth is a boolean value which, if "yes", will force the entire extension to be built using $CXX instead of $CC. All parameters after the third are optional. Finally, PHP_SUBST() is called to enable shared builds of the extension. See Extension FAQs for more information on disabling support for building an extension in shared mode.

The counter extension's config.m4 file

The counter extension previously documented has a much simpler config.m4 file than that described above, as it doesn't make use of many buildsystem features. This is a preferred method of operation for any extension that doesn't use an external or bundled library.

Exemplo #3 counter's config.m4 file

dnl
$
Id$
dnl config.m4 for extension counter

PHP_ARG_ENABLE(counter, for counter support,
[  --enable-counter            Include counter support])

dnl Check whether the extension is enabled at all
if test "$PHP_COUNTER" != "no"; then
  dnl Finally, tell the build system about the extension and what files are needed
  PHP_NEW_EXTENSION(counter, counter.c counter_util.c, $ext_shared)
  PHP_SUBST(COUNTER_SHARED_LIBADD)
fi
The ext_skel script
Talking to the Windows build system: config.w32
The PHP 5 build system


Talking to the Windows build system: config.w32

An extension's config.w32 file is similar in usage to the config.m4 file, with two critical differences: first, it is used for Windows builds, and second, it is written in JavaScript. This section makes no attempt to cover JavaScript syntax. For the moment, this section is incomplete in lieu of a Win32 testbed, and an experimental-only port of the example config.m4 is the only example provided.

Exemplo #1 An example config.w32 file

// $Id$
// vim:ft=javascript
ARG_WITH("example", "for example support", "no");
ARG_ENABLE("example-debug", "for debugging support in example", "no")
ARG_WITH("example-extra", "for extra functionality in example", "no")
if (PHP_EXAMPLE != "no") {
    if (CHECK_LIB("libexample.lib", "example", PHP_EXAMPLE) &&
        CHECK_HEADER_ADD_INCLUDE("example.h", "CFLAGS_EXAMPLE", PHP_EXAMPLE + "\\include")) {

        if (PHP_EXAMPLE_DEBUG != "no") {
            AC_DEFINE('USE_EXAMPLE_DEBUG', 1, 'Debug support in example');
        }

        if (PHP_EXAMPLE_EXTRA != "no" &&
            CHECK_LIB("libexample-extra.lib", "example", PHP_EXAMPLE) &&
            CHECK_HEADER_ADD_INCLUDE("example-extra.h", "CFLAGS_EXAMPLE", PHP_EXAMPLE + ";" + PHP_PHP_BUILD + "\\include") {
            AC_DEFINE('HAVE_EXAMPLEEXTRA', 1, 'Extra functionality in example');
            HAVE_EXTRA = 1;
        } else {
            WARNING( "extra example functionality not enabled, lib not found" );
        }

        EXTENSION("example", "example.c");
        if (HAVE_EXTRA == 1) {
            ADD_SOURCES("example-extra.c");
        }
    } else {
        WARNING( "example not enabled; libraries not found" );
    }
}

The counter extension's config.w32 file

The counter extension previously documented has a much simpler config.w32 file than that described above, as it doesn't make use of many buildsystem features.

Exemplo #2 counter's config.w32 file

// $Id$
// vim:ft=javascript
ARG_ENABLE("counter", "for counter support", "no");
if (PHP_COUNTER != "no") {
    EXTENSION("counter", "counter.c");
    ADD_SOURCE("counter-util.c");
}
Talking to the UNIX build system: config.m4
Extension structure
The PHP 5 build system


Extension structure

Índice

  • Files which make up an extension
  • Basic constructs
  • The zend_module structure
  • Extension globals
  • Life cycle of an extension
  • Testing an extension

Many extension-writing guides focus on simple examples first and ignore the requirements of more complex implementations until later. Often such guides must repeat themselves over and over in order to describe these new features. This section describes extension structure from the perspective of a mature, practical implementation, in order to prepare users for needs and issues they will almost always encounter in the process of extension development.

Talking to the Windows build system: config.w32
Files which make up an extension
PHP at the Core: A Hacker's Guide to the Zend Engine


Files which make up an extension

Whether created by hand, using ext_skel, or by an alternate extension generator, such as » CodeGen, all extensions will have at least four files:

config.m4

UNIX build system configuration (see Talking to the UNIX build system: config.m4)

config.w32

Windows buildsystem configuration (see Talking to the Windows build system: config.w32)

php_counter.h

When building an extension as static module into the PHP binary the build system expects a header file with php_ prepended to the extension name which includes a declaration for a pointer to the extension's module structure. This file usually contains additional macros, prototypes, and globals, just like any header.

counter.c

Main extension source file. By convention, the name of this file is the extension name, but this is not a requirement. This file contains the module structure declaration, INI entries, management functions, userspace functions, and other requirements of an extension.

The buildsystem files are discussed elsewhere; this section concentrates on the rest. These four files make up the bare minimum for an extension, which may also contain any number of headers, source files, unit tests, and other support files. The list of files in the counter extension might look like this:

Exemplo #1 Files in the counter extension, in no particular order

ext/
 counter/
  .svnignore
  config.m4
  config.w32
  counter_util.h
  counter_util.c
  php_counter.h
  counter.c
  package.xml
  CREDITS
  tests/
   critical_function_001.phpt
   critical_function_002.phpt
   optional_function_001.phpt
   optional_function_002.phpt

Non-source files

The .svnignore file is used for extensions which are checked into the PHP Subversion repository (usually » PECL); the one generated by ext_skel contains:

.deps
*.lo
*.la

These lines tell Subversion to ignore interim files generated by the PHP buildsystem. This is only a convenience, and can be omitted completely without ill effect.

The CREDITS file lists the contributors and/or maintainers of the extension in plain text format. The main purpose of this file is generating the credits information for bundled extensions as used by phpcredits(). By convention the first line of the file should hold the name of the extension, the second a comma separated list of contributors. The contributors are usually ordered by the chronological order of their contributions. In a » PECL package, this information is already maintained in package.xml, for example. This is another file which can be omitted without ill effect.

The package.xml file is specific to » PECL-based extensions; it is a metainformation file which gives details about an extension's dependencies, authors, installation requirements, and other tidbits. In an extension not being hosted in » PECL, this file is extraneous.

Extension structure
Basic constructs
Extension structure


Basic constructs

C is a very low-level language by modern definitions. This means that it has no built-in support for many features that PHP takes for granted, such as reflection, dynamic module loading, bounds checking, threadsafe data management and various useful data structures including linked lists and hash tables. At the same time, C is a common denominator of language support and functionality. Given enough work, none of these concepts are impossible; the Zend Engine uses them all.

A lot of effort has gone into making the Zend API both extensible and understandable, but C forces certain necessary declarations upon any extension that to an inexperienced eye seem redundant or plain unnecessary. All of those constructs, detailed in this section, are "write once and forget" in Zend Engine 2 and 3. Here are some excerpts from the pre-generated php_counter.h and counter.c files created by PHP 5.3's ext_skel, showing the pre-generated declarations:

Nota: The astute reader will notice that there are several declarations in the real files that aren't shown here. Those declarations are specific to various Zend subsystems and are discussed elsewhere as appropriate.

extern zend_module_entry counter_module_entry;
#define phpext_counter_ptr &counter_module_entry

#ifdef PHP_WIN32
#    define PHP_COUNTER_API __declspec(dllexport)
#elif defined(__GNUC__) && __GNUC__ >= 4
#    define PHP_COUNTER_API __attribute__ ((visibility("default")))
#else
#    define PHP_COUNTER_API
#endif

#ifdef ZTS
#include "TSRM.h"
#endif

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#include "php.h"
#include "php_ini.h"
#include "ext/standard/info.h"
#include "php_counter.h"

/* ... */

#ifdef COMPILE_DL_COUNTER
ZEND_GET_MODULE(counter)
#endif
  • The lines concerning counter_module_entry declare a global variable, and a macroed pointer to it, which contains the zend_module_entry for the extension. Despite the later discussion regarding the drawbacks of "true" globals, this usage is intentional; Zend takes precautions to avoid misusing this variable.
  • PHP_COUNTER_API is declared for use by non-PHP functions the module intends to export for the use of other modules. The counter extension doesn't declare any of these, and in the final version of the header file, this macro has been removed. The PHPAPI macro is declared identically elsewhere and is used by the standard extension to make the phpinfo() utility functions available to other extensions.
  • The include of TSRM.h is skipped if PHP, or the extension, isn't being compiled with thread-safety, since in that case TSRM isn't used.
  • A standard list of includes, especially the extension's own php_counter.h, is given. config.h gives the extension access to determinations made by configure. php.h is the gateway to the entire PHP and Zend APIs. php_ini.h adds the APIs for runtime configuration (INI) entries. Not all extensions will use this. Finally, ext/standard/info.h imports the aforementioned phpinfo() utility API.
  • COMPILE_DL_COUNTER will only be defined by configure if the counter extension is both enabled and wants to be built as a dynamically loadable module instead of being statically linked into PHP. ZEND_GET_MODULE defines a tiny function which Zend can use to get the extension's zend_module_entry at runtime.

    Nota: The astute reader who has peeked into main/php_config.h after trying to build with the counter module enabled statically may have noticed that there is also a HAVE_COUNTER constant defined that the source code doesn't check for. There's a simple reason this check isn't done: It's unnecessary. If the extension isn't enabled, the source file will never be compiled.

Files which make up an extension
The zend_module structure
Extension structure


The zend_module structure

The main source file of a PHP extension contains several new constructs for a C programmer. The most important of these, the one touched first when starting a new extension, is the zend_module structure. This structure contains a wealth of information that tells the Zend Engine about the extension's dependencies, version, callbacks, and other critical data. The structure has mutated considerably over time; this section will focus on the structure as it has appeared since PHP 5.2, and will identify the very few parts which have changed in PHP 5.3.

The zend_module declaration from counter.c looks like this before any code has been written. The example file was generated by ext_skel --extname=counter, with some obsolete constructs removed:

Exemplo #1 zend_module declaration in the counter extension

/* {{{ counter_module_entry
 */
zend_module_entry counter_module_entry = {
    STANDARD_MODULE_HEADER,
    "counter",
    counter_functions,
    PHP_MINIT(counter),
    PHP_MSHUTDOWN(counter),
    PHP_RINIT(counter),        /* Replace with NULL if there's nothing to do at request start */
    PHP_RSHUTDOWN(counter),    /* Replace with NULL if there's nothing to do at request end */
    PHP_MINFO(counter),
    "0.1", /* Replace with version number for your extension */
    STANDARD_MODULE_PROPERTIES
};
/* }}} */

This may look a bit daunting at first glance, but most of it is very simple to understand. Here's the declaration of zend_module from zend_modules.h in PHP 5.3:

Exemplo #2 zend_module definition in PHP 5.3

struct _zend_module_entry {
    unsigned short size;
    unsigned int zend_api;
    unsigned char zend_debug;
    unsigned char zts;
    const struct _zend_ini_entry *ini_entry;
    const struct _zend_module_dep *deps;
    const char *name;
    const struct _zend_function_entry *functions;
    int (*module_startup_func)(INIT_FUNC_ARGS);
    int (*module_shutdown_func)(SHUTDOWN_FUNC_ARGS);
    int (*request_startup_func)(INIT_FUNC_ARGS);
    int (*request_shutdown_func)(SHUTDOWN_FUNC_ARGS);
    void (*info_func)(ZEND_MODULE_INFO_FUNC_ARGS);
    const char *version;
    size_t globals_size;
#ifdef ZTS
    ts_rsrc_id* globals_id_ptr;
#else
    void* globals_ptr;
#endif
    void (*globals_ctor)(void *global TSRMLS_DC);
    void (*globals_dtor)(void *global TSRMLS_DC);
    int (*post_deactivate_func)(void);
    int module_started;
    unsigned char type;
    void *handle;
    int module_number;
};

Many of these fields will never be touched by an extension writer. There are a number of standard macros that set them to their proper values automatically. The macro STANDARD_MODULE_HEADER fills in everything up to the deps field. Alternatively, the STANDARD_MODULE_HEADER_EX will leave the deps field empty for the developer's use. The developer is always responsible for everything from name to version. After that, the STANDARD_MODULE_PROPERTIES macro will fill in the rest of the structure, or the STANDARD_MODULE_PROPERTIES_EX macro can be used to leave the extension globals and post-deactivation function fields unfilled. Most modern extensions will make use of module globals.

Nota:

This table gives the values that each field would have if the developer were to fill in the structure entirely by hand, without recourse to any of the shortcut macros. This is not recommended. The "correct" values for many fields may change. Use the macros whenever possible.

Module structure field values
Field | Value | Description
size [1] [2] [3] | sizeof(zend_module_entry) | The size in bytes of the structure.
zend_api [1] [2] [3] | ZEND_MODULE_API_NO | The version of the Zend API this module was compiled against.
zend_debug [1] [2] [3] | ZEND_DEBUG | A flag indicating whether the module was compiled with debugging turned on.
zts [1] [2] [3] | USING_ZTS | A flag indicating whether the module was compiled with ZTS (TSRM) enabled (see Memory management).
ini_entry [1] [3] | NULL | This pointer is used internally by Zend to keep a non-local reference to any INI entries declared for the module.
deps [3] | NULL | A pointer to a list of dependencies for the module.
name | "mymodule" | The name of the module. This is the short name, such as "spl" or "standard".
functions | mymodule_functions | A pointer to the module's function table, which Zend uses to expose functions in the module to user space.
module_startup_func | PHP_MINIT(mymodule) | A callback function that Zend will call the first time a module is loaded into a particular instance of PHP.
module_shutdown_func | PHP_MSHUTDOWN(mymodule) | A callback function that Zend will call the when a module is unloaded from a particular instance of PHP, typically during final shutdown.
request_startup_func | PHP_RINIT(mymodule) | A callback function that Zend will call at the beginning of each request. This should be as short as possible or NULL as calling this has costs on every request.
request_shutdown_func | PHP_RSHUTDOWN(mymodule) | A callback function that Zend will call at the end of each request. This should be as short as possible or NULL as calling this has costs on every request.
info_func | PHP_MINFO(mymodule) | A callback function that Zend will call when the phpinfo() function is called.
version | NO_VERSION_YET | A string giving the version of the module, as specified by the module developer. It is recommended that the version number be either in the format expected by version_compare() (e.g. "1.0.5-dev"), or a CVS or SVN revision number (e.g. "$Rev: 301952 $").
globals_size [1] [4] [5] [6] | sizeof(zend_mymodule_globals) | The size of the data structure containing the module's globals, if any.
globals_id_ptr [1] [4] [5] [6] [7] | &mymodule_globals_id | Only one of these two fields will exist, depending upon whether the USING_ZTS constant is TRUE. The former is an index into TSRM's allocation table for the module's globals, and the latter is a pointer directly to the globals.
globals_ptr [1] [4] [5] [6] [8] | &mymodule_globals
globals_ctor [4] [5] [6] | PHP_GINIT(mymodule) | This funtion is called to initialize a module's globals before any module_startup_func.
globals_dtor [4] [5] [6] | PHP_GSHUTDOWN(mymodule) | This funtion is called to deallocate a module's globals after any module_shutdown_func.
post_deactivate_func [4] | ZEND_MODULE_POST_ZEND_DEACTIVATE_N(mymodule) | This function is called by Zend after request shutdown. It is rarely used.
module_started [1] [9] [4] | 0 | These fields are used for Zend's internal tracking information.
type [1] [9] [4] | 0
handle [1] [9] [4] | NULL
module_number [1] [9] [4] | 0
[1] This field is not intended for use by module developers. [2] This field is filled in by STANDARD_MODULE_HEADER_EX. [3] This field is filled in by STANDARD_MODULE_HEADER. [4] This field is filled in by STANDARD_MODULE_PROPERTIES. [5] This field is filled in by NO_MODULE_GLOBALS. [6] This field is filled in by PHP_MODULE_GLOBALS. [7] This field only exists when USING_ZTS is TRUE. [8] This field only exists when USING_ZTS is FALSE. [9] This field is filled in by STANDARD_MODULE_PROPERTIES_EX.

Filling in the structure in a practical situation

With all these fields to play with, it can be confusing to know which to use for what purpose. Here is the zend_module definition from the "counter" example extension after updating it to its final form.

Exemplo #3 Counter extension module definition

/* {{{ counter_module_entry
 */
zend_module_entry counter_module_entry = {
    STANDARD_MODULE_HEADER,
    "counter",
    counter_functions,
    PHP_MINIT(counter),
    PHP_MSHUTDOWN(counter),
    PHP_RINIT(counter),
    PHP_RSHUTDOWN(counter),
    PHP_MINFO(counter),
    NO_VERSION_YET,
    PHP_MODULE_GLOBALS(counter),
    PHP_GINIT(counter),
    PHP_GSHUTDOWN(counter),
    NULL,
    STANDARD_MODULE_PROPERTIES_EX
};
/* }}} */
  • STANDARD_MODULE_HEADER is used since this module doesn't define any dependencies.
  • "counter" is the extension's name, and is used to define the various callback functions the module passes to Zend. "counter" uses module, globals, and request functions at startup and shutdown times, and provides information to phpinfo(), so all seven callbacks are defined.
  • It is assumed that there is a variable of type zend_function_entry * named counter_functions earlier in the file that contains the module definition, listing the functions the module exports to userspace.
  • NO_VERSION_YET is a particularly nice way of telling Zend the module doesn't have a version. It might have been more correct to place "1.0" here instead in a real module.
  • "counter" uses per-module globals, so PHP_MODULE_GLOBALS is used
  • This module has no post-deactivate function, so NULL is used.
  • Since this module does use globals, STANDARD_MODULE_PROPERTIES_EX is used to finish the structure.

What's changed between 5.2 and 5.3?

Nothing. The only differences in the zend_module structure between PHP 5.2 and PHP 5.3 are a few const keywords.

Basic constructs
Extension globals
Extension structure


Extension globals

Introduction to globals in a PHP extension

In a language such as C, a "global" variable is a variable that can be accessed from any function without any extra declaration. These traditional globals have a few drawbacks:

  • Barring any special options passed to the compiler, a global variable can be accessed and changed by any piece of code anywhere in the program, whether or not that code should be doing so.
  • A typical global variable is not thread safe.
  • The names of global variables are as global as the variables themselves.

A PHP extension's globals are more properly called the "extension state", since most modules must remember what they're doing between function calls. The "counter" extension is a perfect example of this need: The basic interface calls for a counter with a persistent value. A programmer new to Zend and PHP might do something like this in counter.c to store that value:

Exemplo #1 The wrong way to store the basic counter interface's value

/* ... */
static long basic_counter_value;

/* ... */

PHP_FUNCTION(counter_get)
{
    RETURN_LONG(basic_counter_value);
}

On the surface this appears a viable solution, and indeed in a simple test it would function correctly. However, there are a number of situations in which more than one copy of PHP is running in the same thread, which means more than one instance of the counter module. Suddenly these multiple threads are sharing the same counter value, which is clearly undesirable. Another problem shows itself when considering that another extension might someday happen to have a global with the same name, and due to the rules of C scoping, this has the potential to cause a compile failure, or worse, a runtime error. Something more elaborate is needed, and so exists Zend's support for thread-safe per-module globals.

Declaring module globals

Whether a module uses only a single global or dozens, they must be defined in a structure, and that structure must be declared. There are some macros that assist with doing so in a way that avoids name conflicts between modules: ZEND_BEGIN_MODULE_GLOBALS(), ZEND_END_MODULE_GLOBALS(), and ZEND_DECLARE_MODULE_GLOBALS(). All three take as a parameter the short name of the module, which in the case of the counter module is simply "counter". Here is the global structure declaration from php_counter.h:

Exemplo #2 The counter module's globals

ZEND_BEGIN_MODULE_GLOBALS(counter)
    long        basic_counter_value;
ZEND_END_MODULE_GLOBALS(counter)

And this is the declaration from counter.c:

Exemplo #3 The counter module's global structure declaration

ZEND_DECLARE_MODULE_GLOBALS(counter)

Accessing module globals

As discussed above, per-module globals are declared inside a C structure whose name is obscured by Zend macros. As a result, the ideal way to access members of this structure is by the use of further macros. Accordingly, most if not all extensions which have globals have a declaration like this somewhere in their header file:

Exemplo #4 Accessor macros for per-module globals

#ifdef ZTS
#define COUNTER_G(v) TSRMG(counter_globals_id, zend_counter_globals *, v)
#else
#define COUNTER_G(v) (counter_globals.v)
#endif

Nota: This could have been generalized into a macro of its own by the Zend API, but as of PHP 5.3 (and PHP 6 at the time of this writing), that hasn't happened. The global accessor construct is written into the header by ext_skel and thus is generally left alone by extension writers, unless they wish to change the name of the accessor macro.

Nota: COUNTER_G was the name given to the macro by ext_skel, but it's not necessary for it to have that name and could just as easily be called FOO instead.

Any code in the counter extension that accesses a global must thus wrap it in the macro COUNTER_G.

Aviso

Any function which accesses globals must either be declared by Zend macros, have TSRMLS_DC as its last argument, or call the macro TSRMLS_FETCH before accessing the globals. See the TSRM documentation for more information.

So with all of that in mind, here is our new version of the counter_get():

Exemplo #5 The right way to store the basic counter interface's value

/* php_counter.h */
ZEND_BEGIN_MODULE_GLOBALS(counter)
    long        basic_counter_value;
ZEND_END_MODULE_GLOBALS(counter)

#ifdef ZTS
#define COUNTER_G(v) TSRMG(counter_globals_id, zend_counter_globals *, v)
#else
#define COUNTER_G(v) (counter_globals.v)
#endif

/* counter.c */
ZEND_DECLARE_MODULE_GLOBALS(counter)

/* ... */

PHP_FUNCTION(counter_get)
{
    RETURN_LONG(COUNTER_G(basic_counter_value));
}

This is a correct implementation. It is not, however, a complete one. The section Life cycle of an extension explains why.

The zend_module structure
Life cycle of an extension
Extension structure


Life cycle of an extension

A PHP extension goes through several phases during its lifetime. All of these phases are opportunities for the developer to perform various initialization, termination, or informational functions. The Zend API allows for hooks into five separate phases of an extension's existence, apart from calls by PHP functions.

Loading, unloading, and requests

As the Zend engine runs, it processes one or more "requests" from its client. In the traditional CGI implementation, this corresponds to one execution of a process. However, many other implementations, most notably the Apache module, can map many requests onto a single PHP process. A PHP extension may thus see many requests in its lifetime.

Overview

  • In the Zend API, a module is loaded into memory only once when the associated PHP process starts up. Each module receives a call to the "module initialization" function specified in its zend_module structure as it is loaded.
  • Whenever the associated PHP process starts to handle a request from its client - i.e. whenever the PHP interpreter is told to start working - each module receives a call to the "request initialization" function specified in its zend_module structure.
  • Whenever the associated PHP process is done handling a request, each module receives a call to the "request termination" function specified in its zend_module structure.
  • A given module is unloaded from memory when its associated PHP process is shut down in an orderly manner. The module receives a call to the "module termination" function specified in its zend_module structure at this time.

What to do, and when to do it

There are many tasks that might be performed at any of these four points. This table details where many common initialization and termination tasks belong.

What to do, and when to do it
Module initialization/termination | Request initialization/termination
Allocate/deallocate and initialize module global variables | Allocate/deallocate and initialize request-specific variables
Register/unregister class entries |
Register/unregister INI entries |
Register constants |

The phpinfo() callback

Aside from globals initialization and certain rarely-used callbacks, there is one more part of a module's lifecycle to examine: A call to phpinfo(). The output a user sees from this call, whether text or HTML or anything else, is generated by each individual extension that is loaded into the PHP interpreter at the time the call is made.

To provide for format-neutral output, the header "ext/standard/info.h" provides an array of functions to produce standardized display elements. Specifically, several functions which create the familiar tables exist:

php_info_print_table_start()
Open a table in phpinfo() output. Takes no parameters.
php_info_print_table_header()
Print a table header in phpinfo() output. Takes one parameter, the number of columns, plus the same number of char * parameters which are the texts for each column heading.
php_info_print_table_row()
Print a table row in phpinfo() output. Takes one parameter, the number of columns, plus the same number of char * parameters which are the texts for each column content.
php_info_print_table_end()
Close a table formerly opened by php_info_print_table_start(). Takes no parameters.

Using these four functions, it is possible to produce status information for nearly any combination of features in an extension. Here is the information callback from the counter extension:

Exemplo #1 counter's PHP_MINFO function

/* {{{ PHP_MINFO(counter) */
PHP_MINFO_FUNCTION(counter)
{
    char        buf[10];

    php_info_print_table_start();
    php_info_print_table_row(2, "counter support", "enabled");
    snprintf(buf, sizeof(buf), "%ld", COUNTER_G(basic_counter_value));
    php_info_print_table_row(2, "Basic counter value", buf);
    php_info_print_table_end();
}
/* }}} */
Extension globals
Testing an extension
Extension structure


Testing an extension

One of the accepted requirements of good programming is testing. PHP provides a test harness for unit regression tests, in the form of a script called run-tests.php.

Tests for a particular module are stored in the tests/ subdirectory of the module's folder, and have a .phpt extension. For details of the PHPT format, see » http://qa.php.net/.

Life cycle of an extension
Memory management
Extension structure


Memory management

Índice

  • Basic memory management
  • Data persistence
  • Thread-Safe Resource Manager

Memory management in the Zend Engine is deceptively simple. There are some APIs to learn, and some concepts behind them to understand, but that's about all.

Testing an extension
Basic memory management
PHP at the Core: A Hacker's Guide to the Zend Engine


Basic memory management

When programming in the C programming language the developer has to manually care about memory management. As PHP is usually used as a web server module memory management is from special relevance in order to prevent memory leaks. Additionally you should be aware that PHP might be used in threaded environments which means that global variables might lead to race conditions. For information about dealing with thread-global data please refer to the documentation on the Thread-Safe Resource Manager, which serves as thread-isolation facility.

Additionally to these requirements the Zend Engine is faced with a quite special usage pattern where, within a relatively short time, many memory blocks of the size of a zval structure or other small memory blocks are requested and freed again. Memory management in PHP has also to respect the memory_limit.

For fulfilling the above requirements the Zend Engine provides a special memory manager for handling request-bound data. Request-bound data is data that is needed only for serving a single request and which will be freed at the request's end at latest. Extension authors will mostly only have contact with the routines listed in the table below. Although they are implemented as macros for providing some convenience features this documentation will treat them like functions.

Main memory APIs
Prototype | Description
void *emalloc(size_t size) | Allocate size bytes of memory.
void *ecalloc(size_t nmemb, size_t size) | Allocate a buffer for nmemb elements of size bytes and makes sure it is initialized with zeros.
void *erealloc(void *ptr, size_t size) | Resize the buffer ptr, which was allocated using emalloc to hold size bytes of memory.
void efree(void *ptr) | Free the buffer pointed by ptr. The buffer had to be allocated by emalloc.
void *safe_emalloc(size_t nmemb, size_t size, size_t offset) | Allocate a buffer for holding nmemb blocks of each size bytes and an additional offset bytes. This is similar to emalloc(nmemb * size + offset) but adds a special protection against overflows.
char *estrdup(const char *s) | Allocate a buffer that can hold the NULL-terminated string s and copy the s into that buffer.
char *estrndup(const char *s, unsigned int length) | Similar to estrdup while the length of the NULL-terminated string is already known.

Nota: Unlike their C standard library's counterparts the Zend Engine's memory management functions won't return NULL in case of an problem while allocating the requested memory but bail out and terminate the current request.

As said above it is an essential part of the memory management to avoid having memory leaks and therefore free all memory you've allocated as soon as possible. As a safety net the Zend Engine will free all memory, which had been allocated using above mentioned APIs at the end of a request. If PHP was built using the --enable-debug configuration option this will lead to a warning.

Exemplo #1 PHP's leak warnings

ZEND_FUNCTION(leak)
{
    long leakbytes = 3;

    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|l", &leakbytes) == FAILURE) {
        return;
    }

    emalloc(leakbytes);
}

O exemplo acima irá imprimir algo similar a:

[Thu Oct 22 02:14:57 2009]  Script:  '-'
/home/johannes/src/PHP_5_3/Zend/zend_builtin_functions.c(1377) :  Freeing 0x088888D4 (3 bytes), script=-
=== Total 1 memory leaks detected ===

Nota: When dealing with PHP variables you have to make sure the variable's memory is allocated using emalloc and take care of the reference count. Details can be found in Working with variables.

Nota: This leak detection can only find leaks caused by blocks allocated by emalloc. You're advised to use a memory checker like valgrind or libumem for deeper analysis. To simplify the analysis PHP's memory manager can be disabled by setting the environment variable USE_ZEND_ALLOC=0 before starting PHP.

Memory management
Data persistence
Memory management


Data persistence

Basic memory management
Thread-Safe Resource Manager
Memory management


Thread-Safe Resource Manager

Data persistence
Working with variables
Memory management


Working with variables

Índice

  • Intro
  • Creating variables and setting values
Thread-Safe Resource Manager
Intro
PHP at the Core: A Hacker's Guide to the Zend Engine


Intro

For working with variables in PHP's core you have to learn about different fundamental concepts used in PHP. Firstly PHP is a dynamic and weak typed language. Secondly PHP uses a copy on write mechanism with reference counting for memory handling. Please check the Reference Counting Basics chapter for details how reference counting and references work.

PHP variables, in general, consist out of two things: The label, which might, for instance, be an entry in a symbol table, and the actual variable container. For the most parts of this manual we will focus on the variable container.

The variable container, in code called zval, is holding all data needed to handle the variable. This includes not only the actual value but also the current type, a counter counting the number of labels pointing to this container and a flag whether these labels should be treated as references or copies. In PHP 5.3 the relevant structures, which you can find in Zend/zend.h, look like this:

typedef struct _zval_struct zval;

typedef union _zvalue_value {
    long lval;                 /* long value */
    double dval;               /* double value */
    struct {                   /* string type */
        char *val;
        int len;
    } str;
    HashTable *ht;             /* hash table value */
    zend_object_value obj;
} zvalue_value;

struct _zval_struct {
    /* Variable information */
    zvalue_value value;        /* value */
    zend_uint refcount__gc;
    zend_uchar type;           /* active type */
    zend_uchar is_ref__gc;
};

In the zvalue_value one can find the internal representation for the different types the fields used should be clear from the names and comments - especially if one knows that PHP's arrays are infact hash tables. Nonetheless, knowing PHP's types one might miss a few: NULL, boolean and resources. For NULL we need no value, as NULL is the value of that type. For boolean and resource values PHP re-uses the value field. In the case of a boolean it holds either 0 for false or 1 for true. For resource-typed variables it holds the resource id.

Now the good message is that you don't have to know these things in detail as there are - like always in PHP - acces macros. The bad news is that there are many of them: There are macros to access any aspect of the zval and then, as one often deals with pointers to zvals and even pointers to pointers to zvals, for most of them there are shortcuts dereferencing these pointers. These macros are spread over Zend/zend.h, Zend/zend_operators.h and Zend/zend_API.h.

Working with variables
Creating variables and setting values
Working with variables


Creating variables and setting values

Intro
Writing functions
Working with variables


Writing functions

One core element of an extension are functions which are exported to the PHP userland. Even when you're planning to write object-oriented extensions you are advised to read this chapter as most of the information is valid for methods, too.

When adding a function to an extension, for instance after using the ext_skel script to create the raw infrastructure, you can create a function by implementing it as a C function and then providing an entry for the extension's function table. The function entry can contain a pointer to an argument information structure. Providing this information ins not strictly necessary, unless you plan to accept parameters by reference or want to return a reference, but provides information that can be accessed via PHP's Reflection API. As you will see below the parameters aren't passed as direct function parameters to the implementation but passed on a stack, which is checked by the function's implementation which can't directly serve as source for this information.

Exemplo #1 Minimal PHP extension with one function

/* {{{ proto void hello_world()
       Do nothing */
PHP_FUNCTION(hello_world)
{
}
/* }}} */

/* {{{ arginfo_hello_world */
ZEND_BEGIN_ARG_INFO(arginfo_hello_world, 0)
ZEND_END_ARG_INFO()
/* }}} */

/* {{{ demo_functions */
function_entry demo_functions[] = {
    PHP_FE(hello_world, arginfo_hello_world)
    {NULL, NULL, NULL}
}
/* }}} */

/* {{{ demo_module_enry */
zend_module_entry demo_module_entry = {
#if ZEND_MODULE_API_NO >= 20010901
    STANDARD_MODULE_HEADER,
#endif
    "demo",
    demo_functions,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
#if ZEND_MODULE_API_NO >= 20010901
    "1.0.0",
#en
    STANDARD_MODULE_PROPERTIES
}
/* }}} */

In his example you can see the above discussed elements and the module structure, if you don't remember his strucure go back to The zend_module structure.

The first part of this extension is the actual implementation. As a convention each exported function is preceded by a two line comment describing the function's userland prototype and a short one line comment.

For providing source code compatibility between different versions of PHP the functions declaration is wrapped into the PHP_FUNCTION macro. The compiler's preprocessor will, when using PHP 5.3 transform this into a function like this:

void zif_hello_world(int ht, zval *return_value, zval **return_value_ptr,
                     zval *this_ptr, int return_value_used TSRMLS_DC)
{
}

For preventing a naming conflict between a function exported to userland and another C function with the same name the C symbol of the exported function is prefixed with the prefix zif_. You can also see that this prototype doesn't reference the argument stack. Accessing parameters passed from PHP is described below. The following table lists the C level parameters which are also defined in the INTERNAL_FUNCTION_PARAMETERS macro. Mind that these parameters might change between PHP versions and you should use the provide macros.

INTERNAL_FUNCTION_PARAMETERS
Name and type | Description | Access macros
int ht | Number of actual parameters passed by user | ZEND_NUM_ARGS()
zval *return_value | Pointer to a PHP variable that can be filled with the return value passed to the user. The default type is IS_NULL. | RETVAL_*, RETURN_*
zval **return_value_ptr | When returning references to PHP set this to a pointer to your variable. It is not suggested to return references. |
zval *this_ptr | In case this is a method call this points to the PHP variable holding the $this object. | getThis()
int return_value_used | Flag indicating whether the returned value will be used by the caller. |

As said the function shown above will simply return NULL to the user and do nothing else. The function can be called, from the PHP userland, with an arbitrary number of parameters. A more useful function consists of four parts in general:

  1. Declaration of local variables. In C we have to declare locale vars, so we do this at the functions top.

  2. Parameter parsing. PHP passes parameters on a special stack, we have to read them from there, verify the types, cast them if needed and bail out in case something goes wrong.

  3. Actual logic. Do whatever is needed.

  4. Set the return value, cleanup, return.

In some cases the exact order of these steps may change. Especially the last two steps are often mixed up, but it's a good idea to stay in that order.

Exemplo #2 A simple function

/* {{{ proto void hello_world(string name)
   Greets a user */
PHP_FUNCTION(hello_world)
{
    char *name;
    int name_len;

    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &name, &name_len) == FAILURE) {
        return;
    }

    php_printf("Hello %s!", name);

    RETURN_TRUE;
}
/* }}} */

The function above shows these parts. Let's start the analysis with the last lines: php_printf is - as one can guess easily - PHP's version of standard C's printf. Unlike printf it doesn't print to the process's STDOUT channel but to the current output stream, which might be buffered by the user. It should be noted that php_printf, unlike most parts of PHP's API is not binary safe, so if name contains a NULL-byte the rest would be ignored. For a binary safe output PHPWRITE should be used.

Nota: In general it is considered to directly print data to the output stream, it is suggested to return data as string to the user instead so the user can decide what to do. Exceptions to this rule might be functions dealing with binary data like images while your API should provide a way to access the data even there.

The RETURN_TRUE macro in the last line does three things: It sets the type of the variable we got as return_value pointer to IS_BOOLEAN and the value to a true value. Then it returns from the C function. So when using this macro you're housekeeping for memory and other resources has to be completed as further code of this function won't be executed.

The zend_parse_parameters() function is responsible for reading the parameters passed by the user from the argument stack and putting it with proper casting in local C variables. If the user doesn't pass the wrong number of parameters or types that can't be casted the function will emit a verbose error and return FAILURE. In that case we simply return from the function - by not changing the return_value the default return value of NULL will be returned to the user.

Nota: Please mind that FAILURE is represented by a -1 and SUCCESS by 0. To make the code clear you should always use the named constants for comparing the value.

The first parameter to zend_parse_parameters() is the number of parameters that have actually been passed to the function by the user. The number is passed as ht parameter to our function but, as discussed above, this should be considered as an implementation detail and ZEND_NUM_ARGS() should be used.

For compatibility with PHP's thread-isolation, the thread-safe resource manager, we also have to pass the thread context using TSRMLS_CC. Unlike in other functions this can't be the last parameter as zend_parse_parameters expects a variable number of parameters - depending on the number of user-parameters to read.

Following the thread context the expected parameters are declared. Each parameter is represented by a character in the string describing the type. In our case we expect one parameter as a string so our type specification is simply "s".

Lastly one has to pass one or more pointers to C variables which should be filled with the variable's value or provide more details. In the case of a string we get the actual string, which will always be NULL-terminated, as a char* and its length, excluding the NULL-byte, as int.

A documentation of all type specifiers and the corresponding additional C types can be found in the file » README.PARAMETER_PARSING_API which is part of the source distribution. The most important types can be found in the table below.

zend_parse_parameters() type specifiers
Modifier | Additional parameter types | Description
b | zend_bool | Boolean value
l | long | A integer (long) value
d | double | A float (double) value
s | char*, int | A binary safe string
h | HashTable* | An array's hash table
Creating variables and setting values
Working with classes and objects
PHP at the Core: A Hacker's Guide to the Zend Engine


Working with classes and objects

Writing functions
Working with resources
PHP at the Core: A Hacker's Guide to the Zend Engine


Working with resources

Working with classes and objects
Working with INI settings
PHP at the Core: A Hacker's Guide to the Zend Engine


Working with INI settings

Working with resources
Working with streams
PHP at the Core: A Hacker's Guide to the Zend Engine


Working with streams

Nota:

Information on using streams within the PHP source code can be found in the Streams API for PHP Extension Authors reference.

Working with INI settings
PDO Driver How-To
PHP at the Core: A Hacker's Guide to the Zend Engine


PDO Driver How-To

Índice

  • Prerequisites
  • Preparation and Housekeeping
  • Fleshing out your skeleton
  • Building
  • Testing
  • Packaging and distribution
  • pdo_dbh_t definition
  • pdo_stmt_t definition
  • Constants
  • Error handling

The purpose of this How-To is to provide a basic understanding of the steps required to write a database driver that interfaces with the PDO layer. Please note that this is still an evolving API and as such, subject to change. This document was prepared based on version 0.3 of PDO. The learning curve is steep; expect to spend a lot of time on the prerequisites.

Working with streams
Prerequisites
PHP at the Core: A Hacker's Guide to the Zend Engine


Prerequisites

The following is list of prerequisites and assumptions needed for writing a PDO database driver:

  1. A working target database, examples, demos, etc. working as per vendor specifications;

  2. A working development environment:

    1. Linux: standard development tools, gcc, ld, make, autoconf, automake, etc., versions dependent on distribution;

    2. Other Unix: standard development tools supplied by vendor plus the GNU development tool set;

    3. Win32: Visual Studio compiler suite;

  3. A working PHP environment version 5.0.3 or higher with a working PEAR extension version 1.3.5 or higher;

  4. A working PDO environment (can be installed using 'sudo pecl install PDO'), including the headers which will be needed to access the PDO type definitions and function declarations;

  5. A good working knowledge of the C programming language;

  6. A good working knowledge of the way to write a PHP extension; George Schlossnagle's Advanced PHP Programming (published by Developer's Library, chapters 21 and 22) is recommended;

  7. Finally, a familiarity with the Zend API that forms the heart of PHP, in particular paying attention to the memory management aspects.

PDO Driver How-To
Preparation and Housekeeping
PDO Driver How-To


Preparation and Housekeeping

Source directory layout

The source directory for a typical PDO driver is laid out as follows, where SKEL represents a shortened form of the name of the database that the driver is going to connect to. Even though SKEL is presented here in uppercase (for clarity), the convention is to use lowercase characters.

pdo_SKEL/
  config.m4                  # unix build script
  config.w32                 # win32 build script
  CREDITS
  package.xml                # meta information about the package
  pdo_SKEL.c                 # standard PHP extension glue
  php_pdo_SKEL.h
  php_pdo_SKEL_int.h         # driver private header
  SKEL_dbh.c                 # contains the implementation of the PDO driver interface
  SKEL_stmt.c                # contains the implementation of the PDO statement interface
  tests/

The contents of these files are defined later in this document.

Creating a skeleton

The easiest way to get started is to use the ext_skel shell script found in the PHP build tree in the ext directory. This will build a skeleton directory containing a lot of the files listed above. It can be build by executing the following command from within the ext directory:

./ext_skel --extname=pdo_SKEL

This will generate a directory called pdo_SKEL containing the skeleton files that you can then modify. This directory should then be moved out of the php extension directory. PDO is a PECL extension and should not be included in the standard extension directory. As long as you have PHP and PDO installed, you should be able to build from any directory.

Standard Includes

Build Specific Headers

The header file config.h is generated by the configure process for the platform for the which the driver is being built. If this header is present, the HAVE_CONFIG_H compiler variable is set. This variable should be tested for and if set, the file config.h should be included in the compilation unit.

PHP Headers

The following standard public php headers should be included in each source module:

  1. php.h

  2. php_ini.h

  3. ext/standard/info.h

PDO Interface Headers

The following standard public PDO header files are also included in each source module:

pdo/php_pdo.h

This header file contains definitions of the initialization and shutdown functions in the main driver as well as definitions of global PDO variables.

pdo/php_pdo_driver.h

This header contains the types and API contracts that are used to write a PDO driver. It also contains method signature for calling back into the PDO layer and registering/unregistering your driver with PDO. Most importantly, this header file contains the type definitions for PDO database handles and statements. The two main structures a driver has to deal with, pdo_dbh_t and pdo_stmt_t, are described in more detail in Appendix A and B.

Driver Specific Headers

The typical PDO driver has two header files that are specific to the database implementation. This does not preclude the use of more depending on the implementation. The following two headers are, by convention, standard:

php_pdo_SKEL.h

This header file is virtually an exact duplicate in functionality and content of the previously defined pdo/php_pdo.h that has been specifically tailored for your database. If your driver requires the use of global variables they should be defined using the ZEND_BEGIN_MODULE_GLOBALS and ZEND_END_MODULE_GLOBALS macros. Macros are then used to access these variables. This macro is usually named PDO_SKEL_G(v) where v is global variable to be accessed. Consult the Zend programmer documentation for more information.

php_pdo_SKEL_int.h

This header file typically contains type definitions and function declarations specific to the driver implementation. It also should contain the db specific definitions of a pdo_SKEL_handle and pdo_SKEL_stmt structures. These are the names of the private data structures that are then referenced by the driver_data members of the handle and statement structures.

Optional Headers

Depending on the implementation details for a particular driver it may be necessary to include the following header:

#include <zend_exceptions.h>
Prerequisites
Fleshing out your skeleton
PDO Driver How-To


Fleshing out your skeleton

Major Structures and Attributes

The major structures, pdo_dbh_t and pdo_stmt_t are defined and explained in Appendix A and B respectively. Database and Statement attributes are defined in Appendix C. Error handling is explained in Appendix D.

pdo_SKEL.c: PHP extension glue

function entries

static function_entry pdo_SKEL_functions[] = {
  { NULL, NULL, NULL }
};

This structure is used to register functions into the global php function namespace. PDO drivers should try to avoid doing this, so it is recommended that you leave this structure initialized to NULL, as shown in the synopsis above.

Module entry

/* {{{ pdo_SKEL_module_entry */
#if ZEND_EXTENSION_API_NO >= 220050617
static zend_module_dep pdo_SKEL_deps[] = {
    ZEND_MOD_REQUIRED("pdo")
    {NULL, NULL, NULL}
};
#endif
/* }}} */

zend_module_entry pdo_SKEL_module_entry = {
#if ZEND_EXTENSION_API_NO >= 220050617
    STANDARD_MODULE_HEADER_EX, NULL,
    pdo_SKEL_deps,
#else
    STANDARD_MODULE_HEADER,
#endif
    "pdo_SKEL",
    pdo_SKEL_functions,
    PHP_MINIT(pdo_SKEL),
    PHP_MSHUTDOWN(pdo_SKEL),
    NULL,
    NULL,
    PHP_MINFO(pdo_SKEL),
    PHP_PDO_<DB>_MODULE_VERSION,
    STANDARD_MODULE_PROPERTIES
};
/* }}} */

#ifdef COMPILE_DL_PDO_<DB>
ZEND_GET_MODULE(pdo_db)
#endif

A structure of type zend_module_entry called pdo_SKEL_module_entry must be declared and should include reference to the pdo_SKEL_functions table defined previously.

Standard PHP Module Extension Functions

PHP_MINIT_FUNCTION
/* {{{ PHP_MINIT_FUNCTION */
PHP_MINIT_FUNCTION(pdo_SKEL)
{
    return php_pdo_register_driver(&pdo_SKEL_driver);
}
/* }}} */

This standard PHP extension function should be used to register your driver with the PDO layer. This is done by calling the php_pdo_register_driver() function passing a pointer to a structure of type pdo_driver_t typically named pdo_SKEL_driver. A pdo_driver_t contains a header that is generated using the PDO_DRIVER_HEADER(SKEL) macro and pdo_SKEL_handle_factory() function pointer. The actual function is described during the discussion of the SKEL_dbh.c unit.

PHP_MSHUTDOWN_FUNCTION
/* {{{ PHP_MSHUTDOWN_FUNCTION */
PHP_MSHUTDOWN_FUNCTION(pdo_SKEL)
{
    php_pdo_unregister_driver(&pdo_SKEL_driver);
    return SUCCESS;
}
/* }}} */

This standard PHP extension function is used to unregister your driver from the PDO layer. This is done by calling the php_pdo_unregister_driver() function, passing the same pdo_SKEL_driver structure that was passed in the init function above.

PHP_MINFO_FUNCTION

This is again a standard PHP extension function. Its purpose is to display information regarding the module when the phpinfo() is called from a script. The convention is to display the version of the module and also what version of the db you are dependent on, along with any other configuration style information that might be relevant.

SKEL_driver.c: Driver implementation

This unit implements all of the database handling methods that support the PDO database handle object. It also contains the error fetching routines. All of these functions will typically need to access the global variable pool. Therefore, it is necessary to use the Zend macro TSRMLS_DC macro at the end of each of these statements. Consult the Zend programmer documentation for more information on this macro.

pdo_SKEL_error

static int pdo_SKEL_error(pdo_dbh_t *dbh,
  pdo_stmt_t *stmt, const char *file, int line TSRMLS_DC)

The purpose of this function is to be used as a generic error handling function within the driver. It is called by the driver when an error occurs within the driver. If an error occurs that is not related to SQLSTATE, the driver should set either dbh->error_code or stmt->error_code to an SQLSTATE that most closely matches the error or the generic SQLSTATE error "HY000". The file pdo_sqlstate.c in the PDO source contains a table of commonly used SQLSTATE codes that the PDO code explicitly recognizes. This setting of the error code should be done prior to calling this function.; This function should set the global pdo_err variable to the error found in either the dbh or the stmt (if the variable stmt is not NULL).

dbh

Pointer to the database handle initialized by the handle factory

stmt

Pointer to the current statement or NULL. If NULL, the error is derived by error code found in the dbh.

file

The source file where the error occurred or NULL if not available.

line

The line number within the source file if available.

If the dbh member methods is NULL (which implies that the error is being raised from within the PDO constructor), this function should call the zend_throw_exception_ex() function otherwise it should return the error code. This function is usually called using a helper macro that customizes the calling sequence for either database handling errors or statement handling errors.

Exemplo #1 Example macros for invoking pdo_SKEL_error

#define pdo_SKEL_drv_error(what) \
    pdo_SKEL_error(dbh, NULL, what, __FILE__, __LINE__ TSRMLS_CC)
#define pdo_SKEL_drv_error(what) \
    pdo_SKEL_error(dbh, NULL, what, __FILE__, __LINE__ TSRMLS_CC)

For more info on error handling, see Error handling.

Nota:

Despite being documented here, the PDO driver interface does not specify that this function be present; it is merely a convenient way to handle errors, and it just happens to be equally convenient for the majority of database client library APIs to structure your driver implementation in this way.

pdo_SKEL_fetch_error_func

static int pdo_SKEL_fetch_error_func(pdo_dbh_t *dbh, pdo_stmt_t *stmt,
    zval *info TSRMLS_DC)

The purpose of this function is to obtain additional information about the last error that was triggered. This includes the driver specific error code and a human readable string. It may also include additional information if appropriate. This function is called as a result of the PHP script calling the PDO::errorInfo() method.

dbh

Pointer to the database handle initialized by the handle factory

stmt

Pointer to the most current statement or NULL. If NULL, the error translated is derived by error code found in the dbh.

info

A hash table containing error codes and messages.

The error_func should return two pieces of information as successive array elements. The first item is expected to be a numeric error code, the second item is a descriptive string. The best way to set this item is by using add_next_index. Note that the type of the first argument need not be long; use whichever type most closely matches the error code returned by the underlying database API.

/* now add the error information. */
/* These need to be added in a specific order */
add_next_index_long(info, error_code);   /* driver specific error code */
add_next_index_string(info, message, 0); /* readable error message */

This function should return 1 if information is available, 0 if the driver does not have additional info.

SKEL_handle_closer

static int SKEL_handle_closer(pdo_dbh_t *dbh TSRMLS_DC)

This function will be called by PDO to close an open database.

dbh

Pointer to the database handle initialized by the handle factory

This should do whatever database specific activity that needs to be accomplished to close the open database. PDO ignores the return value from this function.

SKEL_handle_preparer

static int SKEL_handle_preparer(pdo_dbh_t *dbh, const char *sql,
long sql_len, pdo_stmt_t *stmt, zval *driver_options TSRMLS_DC)

This function will be called by PDO in response to PDO::query() and PDO::prepare() calls from the PHP script. The purpose of the function is to prepare raw SQL for execution, storing whatever state is appropriate into the stmt that is passed in.

dbh

Pointer to the database handle initialized by the handle factory

sql

Pointer to a character string containing the SQL statement to be prepared.

sql_len

The length of the SQL statement.

Stmt

Pointer to the returned statement or NULL if an error occurs.

driver_options

Any driver specific/defined options.

This function is essentially the constructor for a stmt object. This function is responsible for processing statement options, and setting driver-specific option fields in the pdo_stmt_t structure.

PDO does not process any statement options on the driver's behalf before calling the preparer function. It is your responsibility to process them before you return, raising an error for any unknown options that are passed.

One very important responsibility of this function is the processing of SQL statement parameters. At the time of this call, PDO does not know if your driver supports binding parameters into prepared statements, nor does it know if it supports named or positional parameter naming conventions.

Your driver is responsible for setting stmt->supports_placeholders as appropriate for the underlying database. This may involve some run-time determination on the part of your driver, if this setting depends on the version of the database server to which it is connected. If your driver doesn't directly support both named and positional parameter conventions, you should use the pdo_parse_params() API to have PDO rewrite the query to take advantage of the support provided by your database.

Exemplo #2 Using pdo_parse_params

int ret;
    char *nsql = NULL;
    int nsql_len = 0;

    /* before we prepare, we need to peek at the query; if it uses named parameters,
     * we want PDO to rewrite them for us */
    stmt->supports_placeholders = PDO_PLACEHOLDER_POSITIONAL;
    ret = pdo_parse_params(stmt, (char*)sql, sql_len, &nsql, &nsql_len TSRMLS_CC);

    if (ret == 1) {
        /* query was re-written */
        sql = nsql;
    } else if (ret == -1) {
        /* couldn't grok it */
        strcpy(dbh->error_code, stmt->error_code);
        return 0;
    }

    /* now proceed to prepare the query in "sql" */

Possible values for supports_placeholders are: PDO_PLACEHOLDER_NAMED, PDO_PLACEHOLDER_POSITIONAL and PDO_PLACEHOLDER_NONE. If the driver doesn't support prepare statements at all, then this function should simply allocate any state that it might need, and then return:

Exemplo #3 Implementing preparer for drivers that don't support native prepared statements

static int SKEL_handle_preparer(pdo_dbh_t *dbh, const char *sql,
    long sql_len, pdo_stmt_t *stmt, zval *driver_options TSRMLS_DC)
{
    pdo_SKEL_db_handle *H = (pdo_SKEL_db_handle *)dbh->driver_data;
    pdo_SKEL_stmt *S = ecalloc(1, sizeof(pdo_SKEL_stmt));

    S->H = H;
    stmt->driver_data = S;
    stmt->methods = &SKEL_stmt_methods;
    stmt->supports_placeholders = PDO_PLACEHOLDER_NONE;

    return 1;
}

This function returns 1 on success or 0 on failure.

SKEL_handle_doer

static long SKEL_handle_doer(pdo_dbh_t *dbh, const char *sql, long sql_len TSRMLS_DC)

This function will be called by PDO to execute a raw SQL statement. No pdo_stmt_t is created.

dbh

Pointer to the database handle initialized by the handle factory

sql

Pointer to a character string containing the SQL statement to be prepared.

sql_len

The length of the SQL statement.

This function returns 1 on success or 0 on failure.

SKEL_handle_quoter

static int SKEL_handle_quoter(pdo_dbh_t *dbh, const char *unquoted,
  int unquoted_len, char **quoted, int quoted_len, enum pdo_param_type param_type TSRMLS_DC)

This function will be called by PDO to turn an unquoted string into a quoted string for use in a query.

dbh

Pointer to the database handle initialized by the handle factory

unquoted

Pointer to a character string containing the string to be quoted.

unquoted_len

The length of the string to be quoted.

quoted

Pointer to the address where a pointer to the newly quoted string will be returned.

quoted_len

The length of the new string.

param_type

A driver specific hint for driver that have alternate quoting styles

This function is called in response to a call to PDO::quote() or when the driver has set supports_placeholder to PDO_PLACEHOLDER_NONE. The purpose is to quote a parameter when building SQL statements.

If your driver does not support native prepared statements, implementation of this function is required.

This function returns 1 if the quoting process reformatted the string, and 0 if it was not necessary to change the string. The original string will be used unchanged with a 0 return.

SKEL_handle_begin

static int SKEL_handle_begin(pdo_dbh_t *dbh TSRMLS_DC)

This function will be called by PDO to begin a database transaction.

dbh

Pointer to the database handle initialized by the handle factory

This should do whatever database specific activity that needs to be accomplished to begin a transaction. This function returns 1 for success or 0 if an error occurred.

SKEL_handle_commit

static int SKEL_handle_commit(pdo_dbh_t *dbh TSRMLS_DC)

This function will be called by PDO to end a database transaction.

dbh

Pointer to the database handle initialized by the handle factory

This should do whatever database specific activity that needs to be accomplished to commit a transaction. This function returns 1 for success or 0 if an error occurred.

SKEL_handle_rollback

static int SKEL_handle_rollback( pdo_dbh_t *dbh TSRMLS_DC)

This function will be called by PDO to rollback a database transaction.

dbh

Pointer to the database handle initialized by the handle factory

This should do whatever database specific activity that needs to be accomplished to rollback a transaction. This function returns 1 for success or 0 if an error occurred.

SKEL_handle_get_attribute

static int SKEL_handle_get_attribute(pdo_dbh_t *dbh, long attr, zval *return_value TSRMLS_DC)

This function will be called by PDO to retrieve a database attribute.

dbh

Pointer to the database handle initialized by the handle factory

attr

long value of one of the PDO_ATTR_xxxx types. See Database and Statement Attributes Table for valid attributes.

return_value

The returned value for the attribute.

It is up to the driver to decide which attributes will be supported for a particular implementation. It is not necessary for a driver to supply this function. PDO driver handles the PDO_ATTR_PERSISTENT, PDO_ATTR_CASE, PDO_ATTR_ORACLE_NULLS, and PDO_ATTR_ERRMODE attributes directly.

This function returns 1 on success or 0 on failure.

SKEL_handle_set_attribute

static int SKEL_handle_set_attribute(pdo_dbh_t *dbh, long attr, zval *val TSRMLS_DC)

This function will be called by PDO to set a database attribute, usually in response to a script calling PDO::setAttribute().

dbh

Pointer to the database handle initialized by the handle factory

attr

long value of one of the PDO_ATTR_xxxx types. See Database and Statement Attributes Table for valid attributes.

val

The new value for the attribute.

It is up to the driver to decide which attributes will be supported for a particular implementation. It is not necessary for a driver to provide this function if it does not need to support additional attributes. The PDO driver handles the PDO_ATTR_CASE, PDO_ATTR_ORACLE_NULLS, and PDO_ATTR_ERRMODE attributes directly.

This function returns 1 on success or 0 on failure.

SKEL_handle_last_id

static char * SKEL_handle_last_id(pdo_dbh_t *dbh, const char *name, unsigned int len TSRMLS_DC)

This function will be called by PDO to retrieve the ID of the last inserted row.

dbh

Pointer to the database handle initialized by the handle factory

name

string representing a table or sequence name.

len

the length of the name parameter.

This function returns a character string containing the id of the last inserted row on success or NULL on failure. This is an optional function.

SKEL_check_liveness

static int SKEL_check_liveness(pdo_dbh_t *dbh TSRMLS_DC)

This function will be called by PDO to test whether or not a persistent connection to a database is alive and ready for use.

dbh

Pointer to the database handle initialized by the handle factory

This function returns 1 if the database connection is alive and ready for use, otherwise it should return 0 to indicate failure or lack of support.

Nota:

This is an optional function.

SKEL_get_driver_methods

static function_entry *SKEL_get_driver_methods(pdo_dbh_t *dbh, int kind TSRMLS_DC)

This function will be called by PDO in response to a call to any method that is not a part of either the PDO or PDOStatement classes. It's purpose is to allow the driver to provide additional driver specific methods to those classes.

dbh

Pointer to the database handle initialized by the handle factory

kind

One of the following:

PDO_DBH_DRIVER_METHOD_KIND_DBH

Set when the method call was attempted on an instance of the PDO class. The driver should return a pointer a function_entry table for any methods it wants to add to that class, or NULL if there are none.

PDO_DBH_DRIVER_METHOD_KIND_STMT

Set when the method call was attempted on an instance of the PDOStatement class. The driver should return a pointer to a function_entry table for any methods it wants to add to that class, or NULL if there are none.

This function returns a pointer to the function_entry table requested, or NULL there are no driver specific methods.

SKEL_handle_factory

static int SKEL_handle_factory(pdo_dbh_t *dbh, zval *driver_options TSRMLS_DC)

This function will be called by PDO to create a database handle. For most databases this involves establishing a connection to the database. In some cases, a persistent connection may be requested, in other cases connection pooling may be requested. All of these are database/driver dependent.

dbh

Pointer to the database handle initialized by the handle factory

driver_options

An array of driver options, keyed by integer option number. See Database and Statement Attributes Table for a list of possible attributes.

This function should fill in the passed database handle structure with its driver specific information on success and return 1, otherwise it should return 0 to indicate failure.

PDO processes the AUTOCOMMIT and PERSISTENT driver options before calling the handle_factory. It is the handle factory's responsibility to process other options.

Driver method table

A static structure of type pdo_dbh_methods named SKEL_methods must be declared and initialized to the function pointers for each defined function. If a function is not supported or not implemented the value for that function pointer should be set to NULL.

pdo_SKEL_driver

A structure of type pdo_driver_t named pdo_SKEL_driver should be declared. The PDO_DRIVER_HEADER(SKEL) macro should be used to declare the header and the function pointer to the handle factory function should set.

SKEL_statement.c: Statement implementation

This unit implements all of the database statement handling methods that support the PDO statement object.

SKEL_stmt_dtor

static int SKEL_stmt_dtor(pdo_stmt_t *stmt TSRMLS_DC)

This function will be called by PDO to destroy a previously constructed statement object.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

This should do whatever is necessary to free up any driver specific storage allocated for the statement. The return value from this function is ignored.

SKEL_stmt_execute

static int SKEL_stmt_execute(pdo_stmt_t *stmt TSRMLS_DC)

This function will be called by PDO to execute the prepared SQL statement in the passed statement object.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

This function returns 1 for success or 0 in the event of failure.

SKEL_stmt_fetch

static int SKEL_stmt_fetch(pdo_stmt_t *stmt, enum pdo_fetch_orientation ori,
   long offset TSRMLS_DC)

This function will be called by PDO to fetch a row from a previously executed statement object.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

ori

One of PDO_FETCH_ORI_xxx which will determine which row will be fetched.

offset

If ori is set to PDO_FETCH_ORI_ABS or PDO_FETCH_ORI_REL, offset represents the row desired or the row relative to the current position, respectively. Otherwise, this value is ignored.

The results of this fetch are driver dependent and the data is usually stored in the driver_data member of the pdo_stmt_t object. The ori and offset parameters are only meaningful if the statement represents a scrollable cursor. This function returns 1 for success or 0 in the event of failure.

SKEL_stmt_param_hook

static int SKEL_stmt_param_hook(pdo_stmt_t *stmt,
  struct pdo_bound_param_data *param, enum pdo_param_event event_type TSRMLS_DC)

This function will be called by PDO for handling of both bound parameters and bound columns.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

param

The structure describing either a statement parameter or a bound column.

event_type

The type of event to occur for this parameter, one of the following:

PDO_PARAM_EVT_ALLOC

Called when PDO allocates the binding. Occurs as part of PDOStatement::bindParam(), PDOStatement::bindValue() or as part of an implicit bind when calling PDOStatement::execute(). This is your opportunity to take some action at this point; drivers that implement native prepared statements will typically want to query the parameter information, reconcile the type with that requested by the script, allocate an appropriately sized buffer and then bind the parameter to that buffer. You should not rely on the type or value of the zval at param->parameter at this point in time.

PDO_PARAM_EVT_FREE

Called once per parameter as part of cleanup. You should release any resources associated with that parameter now.

PDO_PARAM_EXEC_PRE

Called once for each parameter immediately before calling SKEL_stmt_execute; take this opportunity to make any final adjustments ready for execution. In particular, you should note that variables bound via PDOStatement::bindParam() are only legal to touch now, and not any sooner.

PDO_PARAM_EXEC_POST

Called once for each parameter immediately after calling SKEL_stmt_execute; take this opportunity to make any post-execution actions that might be required by your driver.

PDO_PARAM_FETCH_PRE

Called once for each parameter immediately prior to calling SKEL_stmt_fetch.

PDO_PARAM_FETCH_POST

Called once for each parameter immediately after calling SKEL_stmt_fetch.

This hook will be called for each bound parameter and bound column in the statement. For ALLOC and FREE events, a single call will be made for each parameter or column. The param structure contains a driver_data field that the driver can use to store implementation specific information about each of the parameters.

For all other events, PDO may call you multiple times as the script issues PDOStatement::execute() and PDOStatement::fetch() calls.

If this is a bound parameter, the is_param flag in the param structure is set, otherwise the param structure refers to a bound column.

This function returns 1 for success or 0 in the event of failure.

SKEL_stmt_describe_col

static int SKEL_stmt_describe_col(pdo_stmt_t *stmt, int colno TSRMLS_DC)

This function will be called by PDO to query information about a particular column.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

colno

The column number to be queried.

The driver should populate the pdo_stmt_t member columns(colno) with the appropriate information. This function returns 1 for success or 0 in the event of failure.

SKEL_stmt_get_col_data

static int SKEL_stmt_get_col_data(pdo_stmt_t *stmt, int colno,
  char **ptr, unsigned long *len, int *caller_frees TSRMLS_DC)

This function will be called by PDO to retrieve data from the specified column.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

colno

The column number to be queried.

ptr

Pointer to the retrieved data.

len

The length of the data pointed to by ptr.

caller_frees

If set, ptr should point to emalloc'd memory and the main PDO driver will free it as soon as it is done with it. Otherwise, it will be the responsibility of the driver to free any allocated memory as a result of this call.

The driver should return the resultant data and length of that data in the ptr and len variables respectively. It should be noted that the main PDO driver expects the driver to manage the lifetime of the data. This function returns 1 for success or 0 in the event of failure.

SKEL_stmt_set_attr

static int SKEL_stmt_set_attr(pdo_stmt_t *stmt, long attr, zval *val TSRMLS_DC)

This function will be called by PDO to allow the setting of driver specific attributes for a statement object.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

attr

long value of one of the PDO_ATTR_xxxx types. See Database and Statement Attributes Table for valid attributes.

val

The new value for the attribute.

This function is driver dependent and allows the driver the capability to set database specific attributes for a statement. This function returns 1 for success or 0 in the event of failure. This is an optional function. If the driver does not support additional settable attributes, it can be NULLed in the method table. The PDO driver does not handle any settable attributes on the database driver's behalf.

SKEL_stmt_get_attr

static int SKEL_stmt_get_attr(pdo_stmt_t *stmt, long attr, zval
   *return_value TSRMLS_DC)

This function will be called by PDO to allow the retrieval of driver specific attributes for a statement object.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

attr

long value of one of the PDO_ATTR_xxxx types. See Database and Statement Attributes Table for valid attributes.

return_value

The returned value for the attribute.

This function is driver dependent and allows the driver the capability to retrieve a previously set database specific attribute for a statement. This function returns 1 for success or 0 in the event of failure. This is an optional function. If the driver does not support additional gettable attributes, it can be NULLed in the method table. The PDO driver does not handle any settable attributes on the database driver's behalf.

SKEL_stmt_get_col_meta

static int SKEL_stmt_get_col_meta(pdo_stmt_t *stmt, int colno,
   zval *return_value TSRMLS_DC)
Aviso

This function is not well defined and is subject to change.

This function will be called by PDO to retrieve meta data from the specified column.

stmt

Pointer to the statement structure initialized by SKEL_handle_preparer.

colno

The column number for which data is to be retrieved.

return_value

Holds the returned meta data.

The driver author should consult the documentation for this function that can be found in the php_pdo_driver.h header as this will be the most current. This function returns 1 for success or 0 in the event of failure. The database driver does not need to provide this function.

Statement handling method table

A static structure of type pdo_stmt_methods named SKEL_stmt_methods should be declared and initialized to the function pointers for each defined function. If a function is not supported or not implemented the value for that function pointer should be set to NULL.

Preparation and Housekeeping
Building
PDO Driver How-To


Building

The build process is designed to work with PEAR (see » http://pear.php.net/ for more information about PEAR). There are two files that are used to assist in configuring your package for building. The first is config.m4 which is the autoconf configuration file for all platforms except Win32. The second is config.w32 which is a build configuration file for use on Win32. Skeleton files for these are built for you when you first set up your project. You then need to customize them to fit the needs of your project. Once you've customized your config files, you can build your driver using the following sequence of commands:

Before first build:

$ sudo pecl install PDO

For each build:

$ cd pdo_SKEL
$ phpize
$ ./configure
$ make
$ sudo make install

The process can then be repeated as necessary during the development process.

Fleshing out your skeleton
Testing
PDO Driver How-To


Testing

PDO has a set of "core" tests that all drivers should pass before being released. They're designed to run from the PHP source distribution, so running the tests for your driver requires moving things around a bit. The suggested procedure is to obtain the latest PHP 5.1 snapshot and perform the following step:

$ cp -r pdo_SKEL /path/to/php-5.1/ext

This will allow the test harness to run your tests. The next thing you need to do is create a test that will redirect into the PDO common core tests. The convention is to name this file common.phpt; it should be placed in the tests subdirectory that was created by ext_skel when you created your extension skeleton. The content of this file should look something like the following:

--TEST--
SKEL
--SKIPIF--
<?php # vim:ft=php
if (!extension_loaded('pdo_SKEL')) print 'skip'; ?>
--REDIRECTTEST--
if (false !== getenv('PDO_SKEL_TEST_DSN')) {
# user set them from their shell
   $config['ENV']['PDOTEST_DSN'] = getenv('PDO_SKEL_TEST_DSN');
   $config['ENV']['PDOTEST_USER'] = getenv('PDO_SKEL_TEST_USER');
   $config['ENV']['PDOTEST_PASS'] = getenv('PDO_SKEL_TEST_PASS');
   if (false !== getenv('PDO_SKEL_TEST_ATTR')) {
      $config['ENV']['PDOTEST_ATTR'] = getenv('PDO_SKEL_TEST_ATTR');
   }
   return $config;
}
return array(
   'ENV' => array(
           'PDOTEST_DSN' => 'SKEL:dsn',
           'PDOTEST_USER' => 'username',
           'PDOTEST_PASS' => 'password'
       ),
   'TESTS' => 'ext/pdo/tests'
   );

This will cause the common core tests to be run, passing the values of PDOTEST_DSN, PDOTEST_USER and PDOTEST_PASS to the PDO constructor as the dsn, username and password parameters. It will first check the environment, so that appropriate values can be passed in when the test harness is run, rather than hard-coding the database credentials into the test file.

The test harness can be invoked as follows:

$ cd /path/to/php-5.1
$ make TESTS=ext/pdo_SKEL/tests PDO_SKEL_TEST_DSN="skel:dsn" \
 PDO_SKEL_TEST_USER=user PDO_SKEL_TEST_PASS=pass test
Building
Packaging and distribution
PDO Driver How-To


Packaging and distribution

Creating a package

PDO drivers are released via PECL; all the usual rules for PECL extensions apply. Packaging is accomplished by creating a valid package.xml file and then running:

$ pecl package

This will create a tarball named PDO_SKEL-X.Y.Z.tgz.

Before releasing the package, you should test that it builds correctly; if you've made a mistake in your config.m4 or package.xml files, the package may not function correctly. You can test the build, without installing anything, using the following invocation:

$ pecl build package.xml

Once this is proven to work, you can test installation:

$ pecl package
$ sudo pecl install PDO_SKEL-X.Y.X.tgz

Full details about package.xml can be found in the PEAR Programmer's documentation (» http://pear.php.net/manual/).

Releasing the package

A PDO driver is released via the PHP Extension Community Library (PECL). Information about PECL can be found at » http://pecl.php.net/.

Testing
pdo_dbh_t definition
PDO Driver How-To


pdo_dbh_t definition

All fields should be treated as read-only by the driver, unless explicitly stated otherwise.

pdo_dbh_t

/* represents a connection to a database */
struct _pdo_dbh_t {
    /* driver specific methods */
    struct pdo_dbh_methods *methods;
*
/* driver specific data */
    void *driver_data;
**
/* credentials */
    char *username, *password;
***
/* if true, then data stored and pointed at by this handle must all be
     * persistently allocated */
    unsigned is_persistent:1;
****
/* if true, driver should act as though a COMMIT were executed between
     * each executed statement; otherwise, COMMIT must be carried out manually
     * */
    unsigned auto_commit:1;
*****
/* if true, the driver requires that memory be allocated explicitly for
     * the columns that are returned */
    unsigned alloc_own_columns:1;
******
/* if true, commit or rollBack is allowed to be called */
    unsigned in_txn:1;

    /* max length a single character can become after correct quoting */
    unsigned max_escaped_char_length:3;
*******
/* data source string used to open this handle */
    const char *data_source;
********
unsigned long data_source_len;

    /* the global error code. */
    pdo_error_type error_code;
*********
enum pdo_case_conversion native_case
**********
, desired_case;
};
*

The driver must set this during SKEL_handle_factory().

**

This item is for use by the driver; the intended usage is to store a pointer (during SKEL_handle_factory()) to whatever instance data is required to maintain a connection to the database.

***

The username and password that were passed into the PDO constructor. The driver should use these values when it initiates a connection to the database.

****

If this is set to 1, then any data that is referenced by the dbh, including whatever structure your driver allocates, MUST be allocated persistently. This is easy to achieve; rather than using the usual emalloc() simply use pemalloc() and pass the value of this flag as the last parameter. Failure to use the appropriate kind of memory can lead to serious memory faults, resulting (in the best case) a hard crash, and in the worst case, an exploitable memory problem.

If, for whatever reason, your driver is not suitable to run persistently, you MUST check this flag in your SKEL_handle_factory() and raise an appropriate error.

*****

You should check this value in your SKEL_handle_doer() and SKEL_stmt_execute() functions; if it evaluates to true, you must attempt to commit the query now. Most database implementations offer an auto-commit mode that handles this automatically.

******

If your database client library API operates by fetching data into a caller-supplied buffer, you should set this flag to 1 during your SKEL_handle_factory(). When set, PDO will call your SKEL_stmt_describer() earlier than it would otherwise. This early call allows you to determine those buffer sizes and issue appropriate calls to the database client library.

If your database client library API simply returns pointers to its own internal buffers for you to copy after each fetch call, you should leave this value set to 0.

*******

If your driver doesn't support native prepared statements (supports_placeholders is set to PDO_PLACEHOLDER_NONE), you must set this value to the maximum length that can be taken up by a single character when it is quoted by your SKEL_handle_quoter() function. This value is used to calculate the amount of buffer space required when PDO executes the statement.

********

This holds the value of the DSN that was passed into the PDO constructor. If your driver implementation needed to modify the DSN for whatever reason, it should update this member during SKEL_handle_factory(). Modifying this member should be avoided. If you do change it, you must ensure that data_source_len is also correct.

*********

Whenever an error occurs during a call to one of your driver methods, you should set this member to the SQLSTATE code that best describes the error and return an error. In this HOW-TO, the suggested practice is to call SKEL_handle_error() when an error is detected, and have it set the error code.

**********

Your driver should set this during SKEL_handle_factory(); the value should reflect how the database returns the names of the columns in result sets. If the name matches the case that was used in the query, set it to PDO_CASE_NATURAL (this is actually the default). If the column names are always returned in upper case, set it to PDO_CASE_UPPER. If the column names are always returned in lower case, set it to PDO_CASE_LOWER. The value you set is used to determine if PDO should perform case folding when the user sets the PDO_ATTR_CASE attribute.

Packaging and distribution
pdo_stmt_t definition
PDO Driver How-To


pdo_stmt_t definition

All fields should be treated as read-only unless explicitly stated otherwise.

pdo_stmt_t

/* represents a prepared statement */
struct _pdo_stmt_t {
    /* driver specifics */
    struct pdo_stmt_methods *methods;
*
void *driver_data;
**
/* if true, we've already successfully executed this statement at least
     * once */
    unsigned executed:1;
***
/* if true, the statement supports placeholders and can implement
     * bindParam() for its prepared statements, if false, PDO should
     * emulate prepare and bind on its behalf */
    unsigned supports_placeholders:2;
****
/* the number of columns in the result set; not valid until after
     * the statement has been executed at least once.  In some cases, might
     * not be valid until fetch (at the driver level) has been called at least once.
     * */
    int column_count;
*****
struct pdo_column_data *columns;
******
/* points at the dbh that this statement was prepared on */
    pdo_dbh_t *dbh;

    /* keep track of bound input parameters.  Some drivers support
     * input/output parameters, but you can't rely on that working */
    HashTable *bound_params;
    /* When rewriting from named to positional, this maps positions to names */
    HashTable *bound_param_map;
    /* keep track of PHP variables bound to named (or positional) columns
     * in the result set */
    HashTable *bound_columns;

    /* not always meaningful */
    long row_count;

    /* used to hold the statement's current query */
    char *query_string;
    int query_stringlen;

    /* the copy of the query with expanded binds ONLY for emulated-prepare drivers */
    char *active_query_string;
    int active_query_stringlen;

    /* the cursor specific error code. */
    pdo_error_type error_code;

    /* used by the query parser for driver specific
     * parameter naming (see pgsql driver for example) */
    const char *named_rewrite_template;
};
* | The driver must set this during SKEL_handle_preparer().
** | This item is for use by the driver; the intended usage is to store a pointer (during SKEL_handle_factory()) to whatever instance data is required to maintain a connection to the database.
*** | This is set by PDO after the statement has been executed for the first time. Your driver can inspect this value to determine if it can skip one-time actions as an optimization.
**** | Discussed in more detail in SKEL_handle_preparer.
***** | Your driver is responsible for setting this field to the number of columns available in a result set. This is usually set during SKEL_stmt_execute() but with some database implementations, the column count may not be available until SKEL_stmt_fetch() has been called at least once. Drivers that implement SKEL_stmt_next_rowset() should update the column count when a new rowset is available.
****** | PDO will allocate this field based on the value that you set for the column count. You are responsible for populating each column during SKEL_stmt_describe(). You must set the precision, maxlen, name, namelen and param_type members for each column. The name is expected to be allocated using emalloc(); PDO will call efree() at the appropriate time.
pdo_dbh_t definition
Constants
PDO Driver How-To


Constants

Database and Statement Attributes Table

Attribute

Valid value(s)

PDO_ATTR_AUTOCOMMIT

BOOL

TRUE if autocommit is set, FALSE otherwise.

dbh->auto_commit contains value. Processed by PDO directly.

PDO_ATTR_PREFETCH

LONG

Value of the prefetch size in drivers that support it.

PDO_ATTR_TIMEOUT

LONG

How long to wait for a db operation before timing out.

PDO_ATTR_ERRMODE

LONG

Processed and handled by PDO

PDO_ATTR_SERVER_VERSION

STRING

The "human-readable" string representing the Server/Version this driver is currently connected to.

PDO_ATTR_CLIENT_VERSION

STRING

The "human-readable" string representing the Client/Version this driver supports.

PDO_ATTR_SERVER_INFO

STRING

The "human-readable" description of the Server.

PDO_ATTR_CONNECTION_STATUS

LONG

Values not yet defined

PDO_ATTR_CASE

LONG

Processed and handled by PDO.

PDO_ATTR_CURSOR_NAME

STRING

String representing the name for a database cursor for use in "where current in <name>" SQL statements.

PDO_ATTR_CURSOR

LONG

PDO_CURSOR_FWDONLY

Forward only cursor

PDO_CURSOR_SCROLL

Scrollable cursor

The values for the attributes above are all defined in terms of the Zend API. The Zend API contains macros that can be used to convert a *zval to a value. These macros are defined in the Zend header file, zend_API.h in the Zend directory of your PHP build directory. Some of these attributes can be used with the statement attribute handlers such as the PDO_ATTR_CURSOR and PDO_ATTR_CURSOR_NAME. See the statement attribute handling functions for more information.

pdo_stmt_t definition
Error handling
PDO Driver How-To


Error handling

Error handling is implemented using a hand-shaking protocol between PDO and the database driver code. The database driver code signals PDO that an error has occurred via a failure (0) return from any of the interface functions. If a zero is returned, set the field error_code in the control block appropriate to the context (either the pdo_dbh_t or pdo_stmt_t block). In practice, it is probably a good idea to set the field in both blocks to the same value to ensure the correct one is getting used.

The error_mode field is a six-byte field containing a 5 character ASCIIZ SQLSTATE identifier code. This code drives the error message process. The SQLSTATE code is used to look up an error message in the internal PDO error message table (see pdo_sqlstate.c for a list of error codes and their messages). If the code is not known to PDO, a default "Unknown Message" value will be used.

In addition to the SQLSTATE code and error message, PDO will call the driver-specific fetch_err() routine to obtain supplemental data for the particular error condition. This routine is passed an array into which the driver may place additional information. This array has slot positions assigned to particular types of supplemental info:

  1. A native error code. This will frequently be an error code obtained from the database API.

  2. A descriptive string. This string can contain any additional information related to the failure. Database drivers typically include information such as an error message, code location of the failure, and any additional descriptive information the driver developer feels worthy of inclusion. It is generally a good idea to include all diagnostic information obtainable from the database interface at the time of the failure. For driver-detected errors (such as memory allocation problems), the driver developer can define whatever error information that seems appropriate.

Constants
Extension FAQs
PDO Driver How-To


Extension FAQs

Error handling
Zend Engine 2 API reference
PHP at the Core: A Hacker's Guide to the Zend Engine


Zend Engine 2 API reference

Extension FAQs
Zend Engine 2 opcode list
PHP at the Core: A Hacker's Guide to the Zend Engine


Zend Engine 2 API reference
Opcodes
PHP at the Core: A Hacker's Guide to the Zend Engine
PHP Manual

Zend Engine 2 opcode list

Índice

  • Opcodes

Opcodes

This page lists and partially documents all the opcodes generated by Zend Engine 2 when it parses PHP files. Opcodes may be dumped for a given PHP file using the vld extension (see » http://pecl.php.net/package/vld).

Zend Engine 2 API reference
Opcodes
PHP at the Core: A Hacker's Guide to the Zend Engine


Opcodes

Índice

  • Opcode list
  • ADD
  • ADD_ARRAY_ELEMENT
  • ADD_CHAR
  • ADD_INTERFACE
  • ADD_STRING
  • ADD_VAR
  • ASSIGN
  • ASSIGN_ADD
  • ASSIGN_BW_AND
  • ASSIGN_BW_OR
  • ASSIGN_BW_XOR
  • ASSIGN_CONCAT
  • ASSIGN_DIM
  • ASSIGN_DIV
  • ASSIGN_MOD
  • ASSIGN_MUL
  • ASSIGN_OBJ
  • ASSIGN_REF
  • ASSIGN_SL
  • ASSIGN_SR
  • ASSIGN_SUB
  • BEGIN_SILENCE
  • BOOL
  • BOOL_NOT
  • BOOL_XOR
  • BRK
  • BW_AND
  • BW_NOT
  • BW_OR
  • BW_XOR
  • CASE
  • CAST
  • CATCH
  • CLONE
  • CONCAT
  • DECLARE_CLASS
  • DECLARE_FUNCTION
  • DECLARE_INHERITED_CLASS
  • DIV
  • DO_FCALL
  • DO_FCALL_BY_NAME
  • ECHO
  • END_SILENCE
  • EXIT
  • EXT_FCALL_BEGIN
  • EXT_FCALL_END
  • EXT_NOP
  • EXT_STMT
  • FETCH_CLASS
  • FETCH_CONSTANT
  • FETCH_DIM_FUNC_ARG
  • FETCH_DIM_IS
  • FETCH_DIM_R
  • FETCH_DIM_RW
  • FETCH_DIM_TMP_VAR
  • FETCH_DIM_UNSET
  • FETCH_DIM_W
  • FETCH_FUNC_ARG
  • FETCH_IS
  • FETCH_OBJ_FUNC_ARG
  • FETCH_OBJ_IS
  • FETCH_OBJ_R
  • FETCH_OBJ_RW
  • FETCH_OBJ_UNSET
  • FETCH_OBJ_W
  • FETCH_R
  • FETCH_RW
  • FETCH_UNSET
  • FETCH_W
  • FE_FETCH
  • FE_RESET
  • FREE
  • HANDLE_EXCEPTION
  • INCLUDE_OR_EVAL
  • INIT_ARRAY
  • INIT_FCALL_BY_NAME
  • INIT_METHOD_CALL
  • INIT_STATIC_METHOD_CALL
  • INIT_STRING
  • INSTANCEOF
  • ISSET_ISEMPTY_DIM_OBJ
  • ISSET_ISEMPTY_PROP_OBJ
  • ISSET_ISEMPTY_VAR
  • IS_EQUAL
  • IS_IDENTICAL
  • IS_NOT_EQUAL
  • IS_NOT_IDENTICAL
  • IS_SMALLER
  • IS_SMALLER_OR_EQUAL
  • JMPNZ
  • JMPNZ_EX
  • JMPZ
  • JMPZNZ
  • JMPZ_EX
  • MOD
  • MUL
  • NEW
  • NOP
  • POST_DEC
  • POST_DEC_OBJ
  • POST_INC
  • POST_INC_OBJ
  • PRE_DEC
  • PRE_DEC_OBJ
  • PRE_INC
  • PRE_INC_OBJ
  • PRINT
  • QM_ASSIGN
  • RAISE_ABSTRACT_ERROR
  • RECV
  • RECV_INIT
  • RETURN
  • SEND_REF
  • SEND_VAL
  • SEND_VAR
  • SEND_VAR_NO_REF
  • SL
  • SR
  • SUB
  • SWITCH_FREE
  • THROW
  • TICKS
  • UNSET_DIM
  • UNSET_OBJ
  • UNSET_VAR
  • USER_OPCODE
  • VERIFY_ABSTRACT_CLASS
Zend Engine 2 opcode list
Opcode list
Zend Engine 2 opcode list


Opcode list

Opcode list
Number | Name | Has sample code?
0 | NOP | yes
1 | ADD | yes
2 | SUB | yes
3 | MUL | yes
4 | DIV | yes
5 | MOD | yes
6 | SL | yes
7 | SR | yes
8 | CONCAT | yes
9 | BW_OR | yes
10 | BW_AND | yes
11 | BW_XOR | yes
12 | BW_NOT | yes
13 | BOOL_NOT | yes
14 | BOOL_XOR | yes
15 | IS_IDENTICAL | yes
16 | IS_NOT_IDENTICAL | yes
17 | IS_EQUAL | yes
18 | IS_NOT_EQUAL | yes
19 | IS_SMALLER | yes
20 | IS_SMALLER_OR_EQUAL | yes
21 | CAST | yes
22 | QM_ASSIGN | yes
23 | ASSIGN_ADD | yes
24 | ASSIGN_SUB | yes
25 | ASSIGN_MUL | yes
26 | ASSIGN_DIV | yes
27 | ASSIGN_MOD | yes
28 | ASSIGN_SL | yes
29 | ASSIGN_SR | yes
30 | ASSIGN_CONCAT | yes
31 | ASSIGN_BW_OR | yes
32 | ASSIGN_BW_AND | yes
33 | ASSIGN_BW_XOR | yes
34 | PRE_INC | yes
35 | PRE_DEC | yes
36 | POST_INC | yes
37 | POST_DEC | yes
38 | ASSIGN | yes
39 | ASSIGN_REF | yes
40 | ECHO | yes
41 | PRINT | yes
42 | not documented | no
43 | JMPZ | yes
44 | JMPNZ | yes
45 | JMPZNZ | yes
46 | JMPZ_EX | yes
47 | JMPNZ_EX | yes
48 | CASE | yes
49 | SWITCH_FREE | yes
50 | BRK | yes
51 | not documented | no
52 | BOOL | yes
53 | INIT_STRING | yes
54 | ADD_CHAR | yes
55 | ADD_STRING | yes
56 | ADD_VAR | yes
57 | BEGIN_SILENCE | yes
58 | END_SILENCE | yes
59 | INIT_FCALL_BY_NAME | yes
60 | DO_FCALL | yes
61 | DO_FCALL_BY_NAME | yes
62 | RETURN | yes
63 | RECV | yes
64 | RECV_INIT | yes
65 | SEND_VAL | yes
66 | SEND_VAR | yes
67 | SEND_REF | yes
68 | NEW | yes
69 | not documented | no
70 | FREE | yes
71 | INIT_ARRAY | yes
72 | ADD_ARRAY_ELEMENT | yes
73 | INCLUDE_OR_EVAL | yes
74 | UNSET_VAR | yes
75 | UNSET_DIM | yes
76 | UNSET_OBJ | yes
77 | FE_RESET | yes
78 | FE_FETCH | yes
79 | EXIT | yes
80 | FETCH_R | yes
81 | FETCH_DIM_R | yes
82 | FETCH_OBJ_R | yes
83 | FETCH_W | yes
84 | FETCH_DIM_W | yes
85 | FETCH_OBJ_W | yes
86 | FETCH_RW | yes
87 | FETCH_DIM_RW | yes
88 | FETCH_OBJ_RW | yes
89 | FETCH_IS | yes
90 | FETCH_DIM_IS | no
91 | FETCH_OBJ_IS | no
92 | FETCH_FUNC_ARG | yes
93 | FETCH_DIM_FUNC_ARG | yes
94 | FETCH_OBJ_FUNC_ARG | yes
95 | FETCH_UNSET | no
96 | FETCH_DIM_UNSET | no
97 | FETCH_OBJ_UNSET | no
98 | FETCH_DIM_TMP_VAR | yes
99 | FETCH_CONSTANT | yes
100 | not documented | no
101 | EXT_STMT | no
102 | EXT_FCALL_BEGIN | no
103 | EXT_FCALL_END | no
104 | EXT_NOP | no
105 | TICKS | yes
106 | SEND_VAR_NO_REF | no
107 | CATCH | yes
108 | THROW | yes
109 | FETCH_CLASS | yes
110 | CLONE | yes
111 | not documented | no
112 | INIT_METHOD_CALL | yes
113 | INIT_STATIC_METHOD_CALL | yes
114 | ISSET_ISEMPTY_VAR | yes
115 | ISSET_ISEMPTY_DIM_OBJ | yes
116 | not documented | no
117 | not documented | no
118 | not documented | no
119 | not documented | no
120 | not documented | no
121 | not documented | no
122 | not documented | no
123 | not documented | no
124 | not documented | no
125 | not documented | no
126 | not documented | no
127 | not documented | no
128 | not documented | no
129 | not documented | no
130 | not documented | no
131 | not documented | no
132 | PRE_INC_OBJ | yes
133 | PRE_DEC_OBJ | yes
134 | POST_INC_OBJ | yes
135 | POST_DEC_OBJ | yes
136 | ASSIGN_OBJ | yes
137 | not documented | no
138 | INSTANCEOF | yes
139 | DECLARE_CLASS | yes
140 | DECLARE_INHERITED_CLASS | yes
141 | DECLARE_FUNCTION | yes
142 | RAISE_ABSTRACT_ERROR | yes
143 | not documented | no
144 | ADD_INTERFACE | no
145 | not documented | no
146 | VERIFY_ABSTRACT_CLASS | no
147 | ASSIGN_DIM | yes
148 | ISSET_ISEMPTY_PROP_OBJ | yes
149 | HANDLE_EXCEPTION | yes
150 | USER_OPCODE | no
152 | ZEND_JMP_SET | no
153 | ZEND_DECLARE_LAMBDA_FUNCTION | no
Opcodes
ADD
Opcodes


ADD

PHP code

<?php
/*
 * Adds "value1" to "value2" and stores the result into "result".
 * opcode number: 1
 */
echo 1 + 2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | ADD |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
Opcode list
ADD_ARRAY_ELEMENT
Opcodes


ADD_ARRAY_ELEMENT

PHP code

<?php
/*
 * Add elem-value as an element to array-value
 * opcode number: 72
 */
$a = array(1,2,3);
print_r($a);
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | SEND_VAR |  |  |  | !0
 | 5 | DO_FCALL |  | 1 |  | 'print_r'
8 | 6 | RETURN |  |  |  | 1
ADD
ADD_CHAR
Opcodes


ADD_CHAR

PHP code

<?php
/*
 * add character value2 to string value1 and store in result
 * opcode number: 54
 */
echo "hello\ world";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | ECHO |  |  |  | 'hello%5C+world'
7 | 1 | RETURN |  |  |  | 1
ADD_ARRAY_ELEMENT
ADD_INTERFACE
Opcodes


ADD_INTERFACE

PHP code

<?php
/*
 *
 * opcode number: 144
 * No sample PHP yet */
?>
ADD_CHAR
ADD_STRING
Opcodes


ADD_STRING

PHP code

<?php
/*
 * add string value2 to string value2 and store in result
 * opcode number: 55
 */
echo "hello$a world";
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ADD_STRING |  |  | ~0 | 'hello'
 | 1 | ADD_VAR |  |  | ~0 | ~0,!0
 | 2 | ADD_STRING |  |  | ~0 | ~0,'+world'
 | 3 | ECHO |  |  |  | ~0
7 | 4 | RETURN |  |  |  | 1
ADD_INTERFACE
ADD_VAR
Opcodes


ADD_VAR

PHP code

<?php
/*
 * add contents of variable in value2 to string value1 and store in result
 * opcode number: 56
 */
echo "hello$a world";
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ADD_STRING |  |  | ~0 | 'hello'
 | 1 | ADD_VAR |  |  | ~0 | ~0,!0
 | 2 | ADD_STRING |  |  | ~0 | ~0,'+world'
 | 3 | ECHO |  |  |  | ~0
7 | 4 | RETURN |  |  |  | 1
ADD_STRING
ASSIGN
Opcodes


ASSIGN

PHP code

<?php
/*
 * assigns value1 to result
 * opcode number: 38
 */
$a=1;
$a='a';
$a=new A();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | ASSIGN |  |  |  | !0,'a'
8 | 2 | ZEND_FETCH_CLASS |  |  | :2 | 'A'
 | 3 | NEW |  |  | $3 | :2
 | 4 | DO_FCALL_BY_NAME |  | 0 |  |
 | 5 | ASSIGN |  |  |  | !0,$3
9 | 6 | RETURN |  |  |  | 1
ADD_VAR
ASSIGN_ADD
Opcodes


ASSIGN_ADD

PHP code

<?php
/*
 * Add value1 to value2 and store in variable indicated by value1
 * opcode number: 23
 */
$a+=3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_ADD |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN
ASSIGN_BW_AND
Opcodes


ASSIGN_BW_AND

PHP code

<?php
/*
 * Performs binary AND on result and value1 and stores in variable indicated by result.
 * opcode number: 32
 */
$a &= 64;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_BW_AND |  |  |  | !0,64
7 | 1 | RETURN |  |  |  | 1
ASSIGN_ADD
ASSIGN_BW_OR
Opcodes


ASSIGN_BW_OR

PHP code

<?php
/*
 * Performs binary OR on result and value1 and stores in variable indicated by result.
 * opcode number: 31
 */
$a |= 64;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_BW_OR |  |  |  | !0,64
7 | 1 | RETURN |  |  |  | 1
ASSIGN_BW_AND
ASSIGN_BW_XOR
Opcodes


ASSIGN_BW_XOR

PHP code

<?php
/*
 * Performs binary XOR on result and value1and stores in variable indicated by result.
 * opcode number: 33
 */
$a ^= 64;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_BW_XOR |  |  |  | !0,64
7 | 1 | RETURN |  |  |  | 1
ASSIGN_BW_OR
ASSIGN_CONCAT
Opcodes


ASSIGN_CONCAT

PHP code

<?php
/*
 * Concats string values result and value1 and store in variable indicated by result
 * opcode number: 30
 */
$a .= 'z';
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_CONCAT |  |  |  | !0,'z'
7 | 1 | RETURN |  |  |  | 1
ASSIGN_BW_XOR
ASSIGN_DIM
Opcodes


ASSIGN_DIM

PHP code

<?php
/*
 *
 * opcode number: 147
 */
$b = 1;
$a[1][2] = $b;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$b, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | FETCH_DIM_W |  |  | $1 | !1,1
 | 2 | ZEND_ASSIGN_DIM |  |  |  | $1,2
 | 3 | ZEND_OP_DATA |  |  |  | !0,$3
8 | 4 | RETURN |  |  |  | 1
ASSIGN_CONCAT
ASSIGN_DIV
Opcodes


ASSIGN_DIV

PHP code

<?php
/*
 * Divide result by value1and store in variable indicated by result.
 * opcode number: 26
 */
$a/=3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_DIV |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_DIM
ASSIGN_MOD
Opcodes


ASSIGN_MOD

PHP code

<?php
/*
 * Perform result mod value1 and store in variable indicated by result
 * opcode number: 27
 */
$a %= 3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_MOD |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_DIV
ASSIGN_MUL
Opcodes


ASSIGN_MUL

PHP code

<?php
/*
 * Multiply result by value1 and store in variable indicated by result
 * opcode number: 25
 */
$a*=3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_MUL |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_MOD
ASSIGN_OBJ
Opcodes


ASSIGN_OBJ

PHP code

<?php
/*
 *
 * opcode number: 136
 */
$obj->a = $otherobj;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj, !1=$otherobj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_ASSIGN_OBJ |  |  |  | !0,'a'
 | 1 | ZEND_OP_DATA |  |  |  | !1
7 | 2 | RETURN |  |  |  | 1
ASSIGN_MUL
ASSIGN_REF
Opcodes


ASSIGN_REF

PHP code

<?php
/*
 * indicates that variable indicated by value1 is to be treated in the global scope for the remainder of the current scope.
 * opcode number: 39
 */
global $a;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | FETCH_W | globallock |  | $0 | 'a'
 | 1 | ASSIGN_REF |  |  |  | !0,$0
7 | 2 | RETURN |  |  |  | 1
ASSIGN_OBJ
ASSIGN_SL
Opcodes


ASSIGN_SL

PHP code

<?php
/*
 * Shift result by value1 bits to left and store in variable indicated by result
 * opcode number: 28
 */
$a <<= 3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_SL |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_REF
ASSIGN_SR
Opcodes


ASSIGN_SR

PHP code

<?php
/*
 * Shift result by value1 bits to right and store in variable indicated by result
 * opcode number: 29
 */
$a >>= 3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_SR |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_SL
ASSIGN_SUB
Opcodes


ASSIGN_SUB

PHP code

<?php
/*
 * Subtract value1 from value2 and store in variable indicated by value1
 * opcode number: 24
 */
$a-=3;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN_SUB |  |  |  | !0,3
7 | 1 | RETURN |  |  |  | 1
ASSIGN_SR
BEGIN_SILENCE
Opcodes


BEGIN_SILENCE

PHP code

<?php
/*
 * prepare to perform function call without displaying error messages
 * opcode number: 57
 */
/* Intentional file error */
$my_file = @file ('non_existent_file') or
   die ("error:'$php_errormsg'");
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$my_file, !1=$php_errormsg

line | # | op | fetch | ext | return | operands
7 | 0 | BEGIN_SILENCE |  |  | ~0 |
 | 1 | SEND_VAL |  |  |  | 'non_existent_file'
 | 2 | DO_FCALL |  | 1 |  | 'file'
 | 3 | END_SILENCE |  |  |  | ~0
 | 4 | ASSIGN |  |  | $2 | !0,$1
 | 5 | JMPNZ_EX |  |  | ~3 | $2,->11
8 | 6 | ADD_STRING |  |  | ~4 | 'error%3A%27'
 | 7 | ADD_VAR |  |  | ~4 | ~4,!1
 | 8 | ADD_CHAR |  |  | ~4 | ~4,39
 | 9 | EXIT |  |  |  | ~4
 | 10 | BOOL |  |  | ~3 | true
 | 11 | FREE |  |  |  | ~3
9 | 12 | RETURN |  |  |  | 1
ASSIGN_SUB
BOOL
Opcodes


BOOL

PHP code

<?php
/*
 * convert value1 to boolean and store in result??????????
 * opcode number: 52
 */
if (1 || 2 || 1) echo "foo";
//$a = true;
//if($a) echo "foo";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | JMPNZ_EX |  |  | ~0 | 1,->2
 | 1 | BOOL |  |  | ~0 | 2
 | 2 | JMPNZ_EX |  |  | ~0 | ~0,->4
 | 3 | BOOL |  |  | ~0 | 1
 | 4 | JMPZ |  |  |  | ~0,->7
 | 5 | ECHO |  |  |  | 'foo'
 | 6 | JMP |  |  |  | ->7
9 | 7 | RETURN |  |  |  | 1
BEGIN_SILENCE
BOOL_NOT
Opcodes


BOOL_NOT

PHP code

<?php
/*
 * Boolean (logical) not of "value"
 * opcode number: 13
 */
echo !1;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BOOL_NOT |  |  | ~0 | 1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BOOL
BOOL_XOR
Opcodes


BOOL_XOR

PHP code

<?php
/*
 * Boolean (logical) xor of value1
 * opcode number: 14
 */
echo 1 xor 2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BOOL_XOR |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BOOL_NOT
BRK
Opcodes


BRK

PHP code

<?php
/*
 * ???  End of a case block exists the current switch block.  Followed by JMP?
 * opcode number: 50
 */
$x = 0;
while(1) {
    if($x == 0) break;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,0
7 | 1 | JMPZ |  |  |  | 1,->7
8 | 2 | IS_EQUAL |  |  | ~1 | !0,0
 | 3 | JMPZ |  |  |  | ~1,->6
 | 4 | BRK |  |  |  | 1
 | 5 | JMP |  |  |  | ->6
9 | 6 | JMP |  |  |  | ->1
10 | 7 | RETURN |  |  |  | 1
BOOL_XOR
BW_AND
Opcodes


BW_AND

PHP code

<?php
/*
 * Bit-wise and of value1 and value2
 * opcode number: 10
 */
echo 1&2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BW_AND |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BRK
BW_NOT
Opcodes


BW_NOT

PHP code

<?php
/*
 * Bit-wise not of "value"
 * opcode number: 12
 */
echo ~15;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BW_NOT |  |  | ~0 | 15
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BW_AND
BW_OR
Opcodes


BW_OR

PHP code

<?php
/*
 * Bit-wise or of value1 and value2
 * opcode number: 9
 */
echo 1|2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BW_OR |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BW_NOT
BW_XOR
Opcodes


BW_XOR

PHP code

<?php
/*
 * Bit-wise xor of value1 and value2
 * opcode number: 11
 */
echo 1^2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BW_XOR |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
BW_OR
CASE
Opcodes


CASE

PHP code

<?php
/*
 * Set result to true if value1 equals value2.  The value2 must be a constant value?
 * opcode number: 48
 */
$i=0;
switch ($i) {
   case 0:
         echo "i=0";
         break;
   case 1:
         echo "i=1";
         break;
   case 2:
         echo "i=2";
         break;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$i

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,0
8 | 1 | CASE |  |  | ~1 | !0,0
 | 2 | JMPZ |  |  |  | ~1,->6
9 | 3 | ECHO |  |  |  | 'i%3D0'
10 | 4 | BRK |  |  |  | 1
11 | 5 | JMP |  |  |  | ->8
 | 6 | CASE |  |  | ~1 | !0,1
 | 7 | JMPZ |  |  |  | ~1,->11
12 | 8 | ECHO |  |  |  | 'i%3D1'
13 | 9 | BRK |  |  |  | 1
14 | 10 | JMP |  |  |  | ->13
 | 11 | CASE |  |  | ~1 | !0,2
 | 12 | JMPZ |  |  |  | ~1,->16
15 | 13 | ECHO |  |  |  | 'i%3D2'
16 | 14 | BRK |  |  |  | 1
17 | 15 | JMP |  |  |  | ->16
18 | 16 | RETURN |  |  |  | 1
BW_XOR
CAST
Opcodes


CAST

PHP code

<?php
/*
 * casts value1 as type value2 (?? Not certain about arguments ??)
 * opcode number: 21
 */
echo (int)1;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | CAST |  |  | ~0 | 1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
CASE
CATCH
Opcodes


CATCH

PHP code

<?php
/*
 *
 * opcode number: 107
 */
try {
    $error = 'Always throw this error';
    throw new Exception($error);

    // Code following an exception is not executed.
    echo 'Never executed';

} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

// Continue execution
echo 'Hello World';
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$error, !1=$e

line | # | op | fetch | ext | return | operands
7 | 0 | ASSIGN |  |  |  | !0,'Always+throw+this+error'
8 | 1 | ZEND_FETCH_CLASS |  |  | :1 | 'Exception'
 | 2 | NEW |  |  | $2 | :1
 | 3 | SEND_VAR |  |  |  | !0
 | 4 | DO_FCALL_BY_NAME |  | 1 |  |
 | 5 | ZEND_THROW |  | 0 |  | $2
11 | 6 | ECHO |  |  |  | 'Never+executed'
13 | 7 | JMP |  |  |  | ->15
 | 8 | ZEND_FETCH_CLASS |  |  | :4 | 'Exception'
 | 9 | ZEND_CATCH |  | 15 |  | $4,!1
14 | 10 | ECHO |  |  |  | 'Caught+exception%3A+'
 | 11 | ZEND_INIT_METHOD_CALL |  |  |  | !1,'getMessage'
 | 12 | DO_FCALL_BY_NAME |  | 0 |  |
 | 13 | ECHO |  |  |  | $6
 | 14 | ECHO |  |  |  | '%0A'
18 | 15 | ECHO |  |  |  | 'Hello+World'
19 | 16 | RETURN |  |  |  | 1
CAST
CLONE
Opcodes


CLONE

PHP code

<?php
/*
 *
 * opcode number: 110
 */
$obj = new A();
$copy = clone $obj;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj, !1=$copy

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_CLONE |  |  | $4 | !0
 | 5 | ASSIGN |  |  |  | !1,$4
8 | 6 | RETURN |  |  |  | 1
CATCH
CONCAT
Opcodes


CONCAT

PHP code

<?php
/*
 * Concats string values string1 and string2
 * opcode number: 8
 */
echo "hello" . "world";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | CONCAT |  |  | ~0 | 'hello','world'
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
CLONE
DECLARE_CLASS
Opcodes


DECLARE_CLASS

PHP code

<?php
/*
 * Declare a class with the name of class-name as the implementation specified by ID.
 * opcode number: 139
 */
class A {
    function methodA(){
        echo "hello world";
    }
}
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
11 | 1 | RETURN |  |  |  | 1

Function name: methodA

Compiled variables: none

line | # | op | fetch | ext | return | operands
8 | 0 | ECHO |  |  |  | 'hello+world'
9 | 1 | RETURN |  |  |  | null
CONCAT
DECLARE_FUNCTION
Opcodes


DECLARE_FUNCTION

PHP code

<?php
/*
 *
 * opcode number: 141
 */
class A{
 function funcA(){
 }
}
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
10 | 1 | RETURN |  |  |  | 1

Function name: funcA

Compiled variables: none

line | # | op | fetch | ext | return | operands
8 | 0 | RETURN |  |  |  | null
DECLARE_CLASS
DECLARE_INHERITED_CLASS
Opcodes


DECLARE_INHERITED_CLASS

PHP code

<?php
/*
 *
 * opcode number: 140
 */
 if($b){
 class Foo {
  public static $my_static = 'foo';
  public function staticValue() {
    return self::$my_static;
  }
 }

 class Bar extends Foo {
  public function fooStatic() {
     echo parent::$my_static;
  }
 }
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$b

line | # | op | fetch | ext | return | operands
6 | 0 | JMPZ |  |  |  | !0,->5
7 | 1 | ZEND_DECLARE_CLASS |  |  | $0 | '%00foo%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be503b','foo'
14 | 2 | ZEND_FETCH_CLASS |  |  | :1 | 'Foo'
 | 3 | ZEND_DECLARE_INHERITED_CLASS |  |  | $2 | '%00bar%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be50bc','bar'
19 | 4 | JMP |  |  |  | ->5
20 | 5 | RETURN |  |  |  | 1

Function name: staticValue

Compiled variables: !0=$my_static

line | # | op | fetch | ext | return | operands
10 | 0 | ZEND_FETCH_CLASS |  |  |  |
 | 1 | FETCH_R | staticmember |  | $1 | 'my_static'
 | 2 | RETURN |  |  |  | $1
11 | 3 | RETURN |  |  |  | null

Function name: fooStatic

Compiled variables: !0=$my_static

line | # | op | fetch | ext | return | operands
16 | 0 | ZEND_FETCH_CLASS |  |  | :0 |
 | 1 | FETCH_R | staticmember |  | $1 | 'my_static'
 | 2 | ECHO |  |  |  | $1
17 | 3 | RETURN |  |  |  | null
DECLARE_FUNCTION
DIV
Opcodes


DIV

PHP code

<?php
/*
 * Divides "value1" by "value2" and stores the result into "result".
 * opcode number: 4
 */
echo 6/3;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | DIV |  |  | ~0 | 6,3
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
DECLARE_INHERITED_CLASS
DO_FCALL
Opcodes


DO_FCALL

PHP code

<?php
/*
 * Call a function.  Following multiple SEND_VAL, SEND_VAR or SEND_REF.
 * opcode number: 60
 */
$a = phpinfo();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | DO_FCALL |  | 0 |  | 'phpinfo'
 | 1 | ASSIGN |  |  |  | !0,$0
7 | 2 | RETURN |  |  |  | 1
DIV
DO_FCALL_BY_NAME
Opcodes


DO_FCALL_BY_NAME

PHP code

<?php
/*
 * Call a function by name.  Following INIT_FCALL_BY_NAME and multiple SEND_VAL, SEND_VAR or SEND_REF.
 * opcode number: 61
 */
$x = 'phpinfo';
$a = $x();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,'phpinfo'
7 | 1 | INIT_FCALL_BY_NAME |  |  |  | !0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !1,$1
8 | 4 | RETURN |  |  |  | 1
DO_FCALL
ECHO
Opcodes


ECHO

PHP code

<?php
/*
 * Dump text
 * opcode number: 40
 */
echo "hello world";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | ECHO |  |  |  | 'hello+world'
7 | 1 | RETURN |  |  |  | 1
DO_FCALL_BY_NAME
END_SILENCE
Opcodes


END_SILENCE

PHP code

<?php
/*
 * no longer surpress error messages
 * opcode number: 58
 */
$my_file = @file ('non_existent_file') or
   die ("error:'$php_errormsg'");
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$my_file, !1=$php_errormsg

line | # | op | fetch | ext | return | operands
6 | 0 | BEGIN_SILENCE |  |  | ~0 |
 | 1 | SEND_VAL |  |  |  | 'non_existent_file'
 | 2 | DO_FCALL |  | 1 |  | 'file'
 | 3 | END_SILENCE |  |  |  | ~0
 | 4 | ASSIGN |  |  | $2 | !0,$1
 | 5 | JMPNZ_EX |  |  | ~3 | $2,->11
7 | 6 | ADD_STRING |  |  | ~4 | 'error%3A%27'
 | 7 | ADD_VAR |  |  | ~4 | ~4,!1
 | 8 | ADD_CHAR |  |  | ~4 | ~4,39
 | 9 | EXIT |  |  |  | ~4
 | 10 | BOOL |  |  | ~3 | true
 | 11 | FREE |  |  |  | ~3
8 | 12 | RETURN |  |  |  | 1
ECHO
EXIT
Opcodes


EXIT

PHP code

<?php
/*
 * Exit running after dumping "message".
 * opcode number: 79
 */
die("foobar");
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | EXIT |  |  |  | 'foobar'
7 | 1 | RETURN |  |  |  | 1
END_SILENCE
EXT_FCALL_BEGIN
Opcodes


EXT_FCALL_BEGIN

PHP code

<?php
/*
 *
 * opcode number: 102
 * No sample PHP yet */
?>
EXIT
EXT_FCALL_END
Opcodes


EXT_FCALL_END

PHP code

<?php
/*
 *
 * opcode number: 103
 * No sample PHP yet */
?>
EXT_FCALL_BEGIN
EXT_NOP
Opcodes


EXT_NOP

PHP code

<?php
/*
 *
 * opcode number: 104
 * No sample PHP yet */
?>
EXT_FCALL_END
EXT_STMT
Opcodes


EXT_STMT

PHP code

<?php
/*
 *
 * opcode number: 101
 * No sample PHP yet */
?>
EXT_NOP
FETCH_CLASS
Opcodes


FETCH_CLASS

PHP code

<?php
/*
 *
 * opcode number: 109
 */
$obj = new A();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | RETURN |  |  |  | 1
EXT_STMT
FETCH_CONSTANT
Opcodes


FETCH_CONSTANT

PHP code

<?php
/*
 * Fetch the constant value bound to the specified name (name) and stores it into a variable (result).
 * opcode number: 99
 */
define("FOO", "something");
echo FOO;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | SEND_VAL |  |  |  | 'FOO'
 | 1 | SEND_VAL |  |  |  | 'something'
 | 2 | DO_FCALL |  | 2 |  | 'define'
7 | 3 | FETCH_CONSTANT |  |  | ~1 | 'FOO'
 | 4 | ECHO |  |  |  | ~1
8 | 5 | RETURN |  |  |  | 1
FETCH_CLASS
FETCH_DIM_FUNC_ARG
Opcodes


FETCH_DIM_FUNC_ARG

PHP code

<?php
/*
 *
 * opcode number: 93
 */

function foo(&$x)
{
  print($x);
}

$x = array(0, 1, 2, 3, 4, 5);
$z = "foo";

$z($x[0]);

?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$z

line | # | op | fetch | ext | return | operands
7 | 0 | NOP |  |  |  |
12 | 1 | INIT_ARRAY |  |  | ~0 | 0
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 1
 | 3 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 4 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 5 | ADD_ARRAY_ELEMENT |  |  | ~0 | 4
 | 6 | ADD_ARRAY_ELEMENT |  |  | ~0 | 5
 | 7 | ASSIGN |  |  |  | !0,~0
13 | 8 | ASSIGN |  |  |  | !1,'foo'
15 | 9 | INIT_FCALL_BY_NAME |  |  |  | !1
 | 10 | FETCH_DIM_FUNC_ARG |  |  | $3 | !0,0
 | 11 | SEND_VAR |  |  |  | $3
 | 12 | DO_FCALL_BY_NAME |  | 1 |  |
17 | 13 | RETURN |  |  |  | 1

Function name: foo

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
7 | 0 | RECV |  |  |  | 1
9 | 1 | PRINT |  |  | ~0 | !0
 | 2 | FREE |  |  |  | ~0
10 | 3 | RETURN |  |  |  | null
FETCH_CONSTANT
FETCH_DIM_IS
Opcodes


FETCH_DIM_IS

PHP code

<?php
/*
 *
 * opcode number: 90
 * No sample PHP yet */
?>
FETCH_DIM_FUNC_ARG
FETCH_DIM_R
Opcodes


FETCH_DIM_R

PHP code

<?php
/*
 * Fetch the value of the element at "index" in "array-value" to store it in "result".  Read-only?
 * opcode number: 81
 */
$x = array(1,2,3);
$a = 'x';
echo $$a[0];
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | ASSIGN |  |  |  | !1,'x'
8 | 5 | FETCH_DIM_R |  |  | $3 | !1,0
 | 6 | FETCH_R | local |  | $4 | $3
 | 7 | ECHO |  |  |  | $4
9 | 8 | RETURN |  |  |  | 1
FETCH_DIM_IS
FETCH_DIM_RW
Opcodes


FETCH_DIM_RW

PHP code

<?php
/*
 * Fetch the value of the element at "index" in "array-value" to store it in "result".
 * opcode number: 87
 */
$x = array(1,2,3);
$a = 'x';
$$a[0]++;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | ASSIGN |  |  |  | !1,'x'
8 | 5 | FETCH_DIM_R |  |  | $3 | !1,0
 | 6 | FETCH_RW | local |  | $4 | $3
 | 7 | POST_INC |  |  | ~5 | $4
 | 8 | FREE |  |  |  | ~5
9 | 9 | RETURN |  |  |  | 1
FETCH_DIM_R
FETCH_DIM_TMP_VAR
Opcodes


FETCH_DIM_TMP_VAR

PHP code

<?php
/*
 * Fetch an entry of an array from a temporal variable?
 * opcode number: 98
 */
list($x) = array("X");
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 'X'
 | 1 | FETCH_DIM_TMP_VAR |  |  | $1 | ~0,0
 | 2 | ASSIGN |  |  |  | !0,$1
 | 3 | FREE |  |  |  | ~0
7 | 4 | RETURN |  |  |  | 1
FETCH_DIM_RW
FETCH_DIM_UNSET
Opcodes


FETCH_DIM_UNSET

PHP code

<?php
/*
 * Fetch an entry of an array variable for the purpose of unset() operation.
 * opcode number: 96
 * No sample PHP yet */
?>
FETCH_DIM_TMP_VAR
FETCH_DIM_W
Opcodes


FETCH_DIM_W

PHP code

<?php
/*
 * Fetch the value of the element at "index" in "array-value" to store it in "result".  Write-only?
 * opcode number: 84
 */
$a = 1;
while($a > 0){
    $a = 0;
}
/*$input =array(1,2,3);
while (list($var,) = @each($input)){
    unset($$var);
}*/
/*$a = array(1,2,3);
$x = 'a';
$$x[0] = 1;*/

/*while ($b = each($a)) {
  print $b;
}*/

?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | IS_SMALLER |  |  | ~1 | 0,!0
 | 2 | JMPZ |  |  |  | ~1,->5
8 | 3 | ASSIGN |  |  |  | !0,0
9 | 4 | JMP |  |  |  | ->1
23 | 5 | RETURN |  |  |  | 1
FETCH_DIM_UNSET
FETCH_FUNC_ARG
Opcodes


FETCH_FUNC_ARG

PHP code

<?php
/*
 *
 * opcode number: 92
 */
function foo($x)
{
}

$x = 1;
$y = "x";
$z = "foo";

$z($$y);

?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$y, !2=$z

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
10 | 1 | ASSIGN |  |  |  | !0,1
11 | 2 | ASSIGN |  |  |  | !1,'x'
12 | 3 | ASSIGN |  |  |  | !2,'foo'
14 | 4 | INIT_FCALL_BY_NAME |  |  |  | !2
 | 5 | FETCH_FUNC_ARG | local |  | $3 | !1
 | 6 | SEND_VAR |  |  |  | $3
 | 7 | DO_FCALL_BY_NAME |  | 1 |  |
16 | 8 | RETURN |  |  |  | 1

Function name: foo

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
6 | 0 | RECV |  |  |  | 1
8 | 1 | RETURN |  |  |  | null
FETCH_DIM_W
FETCH_IS
Opcodes


FETCH_IS

PHP code

<?php
/*
 * Fetch the value from variable which is to be used to test if it is set or not, through isset()/isempty().
 * opcode number: 89
 */
echo isset($_SESSION['userid']);
echo isset($_SESSION['userid'][1]);
echo isset($_SESSION->prop->prop);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | FETCH_IS |  |  | $0 | '_SESSION'
 | 1 | ZEND_ISSET_ISEMPTY_DIM_OBJ |  | 1 | ~1 | $0,'userid'
 | 2 | ECHO |  |  |  | ~1
7 | 3 | FETCH_IS |  |  | $2 | '_SESSION'
 | 4 | FETCH_DIM_IS |  |  | $3 | $2,'userid'
 | 5 | ZEND_ISSET_ISEMPTY_DIM_OBJ |  | 1 | ~4 | $3,1
 | 6 | ECHO |  |  |  | ~4
8 | 7 | FETCH_IS |  |  | $5 | '_SESSION'
 | 8 | FETCH_OBJ_IS |  |  | $6 | $5,'prop'
 | 9 | ZEND_ISSET_ISEMPTY_PROP_OBJ |  |  | ~7 | $6,'prop'
 | 10 | ECHO |  |  |  | ~7
9 | 11 | RETURN |  |  |  | 1
FETCH_FUNC_ARG
FETCH_OBJ_FUNC_ARG
Opcodes


FETCH_OBJ_FUNC_ARG

PHP code

<?php
/*
 *
 * opcode number: 94
 */
include './classA.php';

function foo(&$x)
{
  print($x);
}

$z = "foo";

$obj = new A();
print $obj->num;
$z($obj->num);

?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$z, !1=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | INCLUDE_OR_EVAL |  |  |  | '.%2FclassA.php',INCLUDE
8 | 1 | NOP |  |  |  |
13 | 2 | ASSIGN |  |  |  | !0,'foo'
15 | 3 | ZEND_FETCH_CLASS |  |  | :2 | 'A'
 | 4 | NEW |  |  | $3 | :2
 | 5 | DO_FCALL_BY_NAME |  | 0 |  |
 | 6 | ASSIGN |  |  |  | !1,$3
16 | 7 | FETCH_OBJ_R |  |  | $6 | !1,'num'
 | 8 | PRINT |  |  | ~7 | $6
 | 9 | FREE |  |  |  | ~7
17 | 10 | INIT_FCALL_BY_NAME |  |  |  | !0
 | 11 | FETCH_OBJ_FUNC_ARG |  |  | $8 | !1,'num'
 | 12 | SEND_VAR |  |  |  | $8
 | 13 | DO_FCALL_BY_NAME |  | 1 |  |
19 | 14 | RETURN |  |  |  | 1

Function name: foo

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
8 | 0 | RECV |  |  |  | 1
10 | 1 | PRINT |  |  | ~0 | !0
 | 2 | FREE |  |  |  | ~0
11 | 3 | RETURN |  |  |  | null

Function name: foo

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
8 | 0 | RECV |  |  |  | 1
10 | 1 | PRINT |  |  | ~0 | !0
 | 2 | FREE |  |  |  | ~0
11 | 3 | RETURN |  |  |  | null
FETCH_IS
FETCH_OBJ_IS
Opcodes


FETCH_OBJ_IS

PHP code

<?php
/*
 *
 * opcode number: 91
 * No sample PHP yet */
?>
FETCH_OBJ_FUNC_ARG
FETCH_OBJ_R
Opcodes


FETCH_OBJ_R

PHP code

<?php
/*
 * Fetch the "prop-name" property value of this object.  Read-only?
 * opcode number: 82
 */
$x = new A();
$a = 'x';
echo $$a->num;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ASSIGN |  |  |  | !1,'x'
8 | 5 | FETCH_R | local |  | $5 | !1
 | 6 | FETCH_OBJ_R |  |  | $6 | $5,'num'
 | 7 | ECHO |  |  |  | $6
9 | 8 | RETURN |  |  |  | 1
FETCH_OBJ_IS
FETCH_OBJ_RW
Opcodes


FETCH_OBJ_RW

PHP code

<?php
/*
 * Fetch the "prop-name" property value of this object.
 * opcode number: 88
 */
$x = new A();
$a = 'x';
$$a->num++;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ASSIGN |  |  |  | !1,'x'
8 | 5 | FETCH_RW | local |  | $5 | !1
 | 6 | ZEND_POST_INC_OBJ |  |  | ~7 | $5,'num'
 | 7 | FREE |  |  |  | ~7
9 | 8 | RETURN |  |  |  | 1
FETCH_OBJ_R
FETCH_OBJ_UNSET
Opcodes


FETCH_OBJ_UNSET

PHP code

<?php
/*
 * Fetch a property of an object variable for the purpose of unset() operation.
 * opcode number: 97
 * No sample PHP yet */
?>
FETCH_OBJ_RW
FETCH_OBJ_W
Opcodes


FETCH_OBJ_W

PHP code

<?php
/*
 * Fetch the "prop-name" property value of this object.  Write-only?
 * opcode number: 85
 */
$x = new A();
$a = 'x';
$$a->num = 1;;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ASSIGN |  |  |  | !1,'x'
8 | 5 | FETCH_W | local |  | $5 | !1
 | 6 | ZEND_ASSIGN_OBJ |  |  |  | $5,'num'
 | 7 | ZEND_OP_DATA |  |  |  | 1
9 | 8 | RETURN |  |  |  | 1
FETCH_OBJ_UNSET
FETCH_R
Opcodes


FETCH_R

PHP code

<?php
/*
 * Fetch the value of the varible of "name" to assign it to a variable?  Read-only?
 * opcode number: 80
 */
$x = 1;
$a = 'x';
echo $$a;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | ASSIGN |  |  |  | !1,'x'
8 | 2 | FETCH_R | local |  | $2 | !1
 | 3 | ECHO |  |  |  | $2
9 | 4 | RETURN |  |  |  | 1
FETCH_OBJ_W
FETCH_RW
Opcodes


FETCH_RW

PHP code

<?php
/*
 * Fetch the value of the varible of "name" to assign it to a variable?
 * opcode number: 86
 */
$x = 1;
$a = 'x';
$$a++;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | ASSIGN |  |  |  | !1,'x'
8 | 2 | FETCH_RW | local |  | $2 | !1
 | 3 | POST_INC |  |  | ~3 | $2
 | 4 | FREE |  |  |  | ~3
9 | 5 | RETURN |  |  |  | 1
FETCH_R
FETCH_UNSET
Opcodes


FETCH_UNSET

PHP code

<?php
/*
 * Fetch a variable for the purpose of unset() operation.
 * opcode number: 95
 * No sample PHP yet */
?>
FETCH_RW
FETCH_W
Opcodes


FETCH_W

PHP code

<?php
/*
 * Fetch the value of the varible of "name" to assign it to a variable?  Write-only?
 * opcode number: 83
 */
$x = 1;
$a = 'x';
$$a = 2;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | ASSIGN |  |  |  | !1,'x'
8 | 2 | FETCH_W | local |  | $2 | !1
 | 3 | ASSIGN |  |  |  | $2,2
9 | 4 | RETURN |  |  |  | 1
FETCH_UNSET
FE_FETCH
Opcodes


FE_FETCH

PHP code

<?php
/*
 * Fetch an element from iterator.  If no element is available, jump to address.  Followed by OP_DATA?
 * opcode number: 78
 */
$a = array(1,2,3);
foreach($a as $num){
    print $num;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a, !1=$num

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | FE_RESET |  |  | $2 | !0,->11
 | 5 | FE_FETCH |  |  | $3 | $2,->11
 | 6 | ZEND_OP_DATA |  |  |  |
 | 7 | ASSIGN |  |  |  | !1,$3
8 | 8 | PRINT |  |  | ~5 | !1
 | 9 | FREE |  |  |  | ~5
9 | 10 | JMP |  |  |  | ->5
 | 11 | SWITCH_FREE |  |  |  | $2
10 | 12 | RETURN |  |  |  | 1
FETCH_W
FE_RESET
Opcodes


FE_RESET

PHP code

<?php
/*
 * Initialize an iterator on array-value.  If the array is empty, jump to address.  Followed by FE_FETCH.
 * opcode number: 77
 */
$a = array(1,2,3);
foreach($a as $num){
    print $num;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a, !1=$num

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | FE_RESET |  |  | $2 | !0,->11
 | 5 | FE_FETCH |  |  | $3 | $2,->11
 | 6 | ZEND_OP_DATA |  |  |  |
 | 7 | ASSIGN |  |  |  | !1,$3
8 | 8 | PRINT |  |  | ~5 | !1
 | 9 | FREE |  |  |  | ~5
9 | 10 | JMP |  |  |  | ->5
 | 11 | SWITCH_FREE |  |  |  | $2
10 | 12 | RETURN |  |  |  | 1
FE_FETCH
FREE
Opcodes


FREE

PHP code

<?php
/*
 * Release the allocated space of the value.
 * opcode number: 70
 */
 print "Hello World";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | PRINT |  |  | ~0 | 'Hello+World'
 | 1 | FREE |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
FE_RESET
HANDLE_EXCEPTION
Opcodes


HANDLE_EXCEPTION

PHP code

<?php
/*
 *
 * opcode number: 149
 */
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | RETURN |  |  |  | 1
FREE
INCLUDE_OR_EVAL
Opcodes


INCLUDE_OR_EVAL

PHP code

<?php
/*
 * Include the file specified by filename and eval it.
 * opcode number: 73
 */
include("test.php");
eval("test.php");
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | INCLUDE_OR_EVAL |  |  |  | 'test.php',INCLUDE
7 | 1 | INCLUDE_OR_EVAL |  |  |  | 'test.php',EVAL
8 | 2 | RETURN |  |  |  | 1

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
2 | 0 | DO_FCALL |  | 0 |  | 'phpinfo'
3 | 1 | RETURN |  |  |  | 1
HANDLE_EXCEPTION
INIT_ARRAY
Opcodes


INIT_ARRAY

PHP code

<?php
/*
 * Allocate a new array with elem-value as the first element of the array.  Followed by ADD_ARRAY_ELEMENT.
 * opcode number: 71
 */
$a = array(1,2,3);
print_r($a);
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | SEND_VAR |  |  |  | !0
 | 5 | DO_FCALL |  | 1 |  | 'print_r'
8 | 6 | RETURN |  |  |  | 1
INCLUDE_OR_EVAL
INIT_FCALL_BY_NAME
Opcodes


INIT_FCALL_BY_NAME

PHP code

<?php
/*
 * prepare for a function call to function value1
 * opcode number: 59
 */
$x = 'phpinfo';
$a = $x();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,'phpinfo'
7 | 1 | INIT_FCALL_BY_NAME |  |  |  | !0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !1,$1
8 | 4 | RETURN |  |  |  | 1
INIT_ARRAY
INIT_METHOD_CALL
Opcodes


INIT_METHOD_CALL

PHP code

<?php
/*
 * Prepare for a method call.  Followed by DO_FCALL.
 * opcode number: 112
 */
class A {
  var $num;
    function incrementNum(){
    $num++;
  }
}

$obj = new A();
$obj->incrementNum();

?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
13 | 1 | ZEND_FETCH_CLASS |  |  | :1 | 'A'
 | 2 | NEW |  |  | $2 | :1
 | 3 | DO_FCALL_BY_NAME |  | 0 |  |
 | 4 | ASSIGN |  |  |  | !0,$2
14 | 5 | ZEND_INIT_METHOD_CALL |  |  |  | !0,'incrementNum'
 | 6 | DO_FCALL_BY_NAME |  | 0 |  |
16 | 7 | RETURN |  |  |  | 1

Function name: incrementNum

Compiled variables: !0=$num

line | # | op | fetch | ext | return | operands
9 | 0 | POST_INC |  |  | ~0 | !0
 | 1 | FREE |  |  |  | ~0
10 | 2 | RETURN |  |  |  | null
INIT_FCALL_BY_NAME
INIT_STATIC_METHOD_CALL
Opcodes


INIT_STATIC_METHOD_CALL

PHP code

<?php
/*
 *
 * opcode number: 113
 */
class Foo {
    public static function aStaticMethod() {
            echo "hello world\n";
    }
}

Foo::aStaticMethod();
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
12 | 1 | ZEND_INIT_STATIC_METHOD_CALL |  |  |  | 'Foo','aStaticMethod'
 | 2 | ZEND_OP_DATA |  |  |  | 'foo%3A%3Aastaticmethod'
 | 3 | DO_FCALL_BY_NAME |  | 0 |  |
13 | 4 | RETURN |  |  |  | 1

Function name: aStaticMethod

Compiled variables: none

line | # | op | fetch | ext | return | operands
8 | 0 | ECHO |  |  |  | 'hello+world%0A'
9 | 1 | RETURN |  |  |  | null
INIT_METHOD_CALL
INIT_STRING
Opcodes


INIT_STRING

PHP code

<?php
/*
 * appears to create a string variable in result
 * opcode number: 53
 */
echo "hello$a world";
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ADD_STRING |  |  | ~0 | 'hello'
 | 1 | ADD_VAR |  |  | ~0 | ~0,!0
 | 2 | ADD_STRING |  |  | ~0 | ~0,'+world'
 | 3 | ECHO |  |  |  | ~0
7 | 4 | RETURN |  |  |  | 1
INIT_STATIC_METHOD_CALL
INSTANCEOF
Opcodes


INSTANCEOF

PHP code

<?php
/*
 *
 * opcode number: 138
 */
$obj = new A();

if ($obj instanceof A) {
   echo 'A';
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
8 | 4 | ZEND_FETCH_CLASS |  |  | :4 | 'A'
 | 5 | ZEND_INSTANCEOF |  |  | ~5 | !0,$4
 | 6 | JMPZ |  |  |  | ~5,->9
9 | 7 | ECHO |  |  |  | 'A'
10 | 8 | JMP |  |  |  | ->9
11 | 9 | RETURN |  |  |  | 1
INIT_STRING
ISSET_ISEMPTY_DIM_OBJ
Opcodes


ISSET_ISEMPTY_DIM_OBJ

PHP code

<?php
/*
 * Tests if the entry of an array is set or not.
 * opcode number: 115
 */
if(isset($a[0])) return 0;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_ISSET_ISEMPTY_DIM_OBJ |  | 1 | ~0 | !0,0
 | 1 | JMPZ |  |  |  | ~0,->4
 | 2 | RETURN |  |  |  | 0
 | 3 | JMP |  |  |  | ->4
7 | 4 | RETURN |  |  |  | 1
INSTANCEOF
ISSET_ISEMPTY_PROP_OBJ
Opcodes


ISSET_ISEMPTY_PROP_OBJ

PHP code

<?php
/*
 *
 * opcode number: 148
 */
$obj = new A();
if(empty($obj->num)) return 0;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_ISSET_ISEMPTY_PROP_OBJ |  |  | ~4 | !0,'num'
 | 5 | JMPZ |  |  |  | ~4,->8
 | 6 | RETURN |  |  |  | 0
 | 7 | JMP |  |  |  | ->8
8 | 8 | RETURN |  |  |  | 1
ISSET_ISEMPTY_DIM_OBJ
ISSET_ISEMPTY_VAR
Opcodes


ISSET_ISEMPTY_VAR

PHP code

<?php
/*
 * Tests if the value of a variable is set or not.
 * opcode number: 114
 */
if(isset($a)){ return 0;}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_ISSET_ISEMPTY_VAR |  | 5 | ~0 | !0
 | 1 | JMPZ |  |  |  | ~0,->4
 | 2 | RETURN |  |  |  | 0
 | 3 | JMP |  |  |  | ->4
7 | 4 | RETURN |  |  |  | 1
ISSET_ISEMPTY_PROP_OBJ
IS_EQUAL
Opcodes


IS_EQUAL

PHP code

<?php
/*
 * compares if value1 and value2 are equal
 * opcode number: 17
 */
echo (1 == 1);
echo (1 == 'c');
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_EQUAL |  |  | ~0 | 1,1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | IS_EQUAL |  |  | ~1 | 1,'c'
 | 3 | ECHO |  |  |  | ~1
8 | 4 | RETURN |  |  |  | 1
ISSET_ISEMPTY_VAR
IS_IDENTICAL
Opcodes


IS_IDENTICAL

PHP code

<?php
/*
 * Compares value1 and value2 to see if they are equal AND have the same type
 * opcode number: 15
 */
echo (1===1);
echo (1==='a');
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_IDENTICAL |  |  | ~0 | 1,1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | IS_IDENTICAL |  |  | ~1 | 1,'a'
 | 3 | ECHO |  |  |  | ~1
8 | 4 | RETURN |  |  |  | 1
IS_EQUAL
IS_NOT_EQUAL
Opcodes


IS_NOT_EQUAL

PHP code

<?php
/*
 * compares if value1 and value2 are not equal
 * opcode number: 18
 */
echo (1 != 1);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_NOT_EQUAL |  |  | ~0 | 1,1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
IS_IDENTICAL
IS_NOT_IDENTICAL
Opcodes


IS_NOT_IDENTICAL

PHP code

<?php
/*
 * compares value1 and value2 to see if they are unequal or of different types
 * opcode number: 16
 */
echo (1 !== 1);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_NOT_IDENTICAL |  |  | ~0 | 1,1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
IS_NOT_EQUAL
IS_SMALLER
Opcodes


IS_SMALLER

PHP code

<?php
/*
 * compares if value1 is less than value2
 * opcode number: 19
 */
echo (1 < 2);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_SMALLER |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
IS_NOT_IDENTICAL
IS_SMALLER_OR_EQUAL
Opcodes


IS_SMALLER_OR_EQUAL

PHP code

<?php
/*
 * compares if value1 is less than or equal to value2
 * opcode number: 20
 */
echo (1 >= 2);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | IS_SMALLER_OR_EQUAL |  |  | ~0 | 2,1
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
IS_SMALLER
JMPNZ
Opcodes


JMPNZ

PHP code

<?php
/*
 * Jump to the address if the value is not zero
 * opcode number: 44
 */
for($i=0; $i<3; $i++){
    echo "hi";
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$i

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,0
 | 1 | IS_SMALLER |  |  | ~1 | !0,3
 | 2 | JMPZNZ |  | 6 |  | ~1,->8
 | 3 | POST_INC |  |  | ~2 | !0
 | 4 | FREE |  |  |  | ~2
 | 5 | JMP |  |  |  | ->1
7 | 6 | ECHO |  |  |  | 'hi'
8 | 7 | JMP |  |  |  | ->3
9 | 8 | RETURN |  |  |  | 1
IS_SMALLER_OR_EQUAL
JMPNZ_EX
Opcodes


JMPNZ_EX

PHP code

<?php
/*
 * Jump to the address if the xor of value1 and value2 is zero .. ???
 * opcode number: 47
 */
if(1^2) return;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BW_XOR |  |  | ~0 | 1,2
 | 1 | JMPZ |  |  |  | ~0,->4
 | 2 | RETURN |  |  |  | null
 | 3 | JMP |  |  |  | ->4
7 | 4 | RETURN |  |  |  | 1
JMPNZ
JMPZ
Opcodes


JMPZ

PHP code

<?php
/*
 * Jump to the address if the value is zero
 * opcode number: 43
 */
if($a != 0) echo "foo";
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | IS_NOT_EQUAL |  |  | ~0 | !0,0
 | 1 | JMPZ |  |  |  | ~0,->4
 | 2 | ECHO |  |  |  | 'foo'
 | 3 | JMP |  |  |  | ->4
7 | 4 | RETURN |  |  |  | 1
JMPNZ_EX
JMPZNZ
Opcodes


JMPZNZ

PHP code

<?php
/*
 * Jump to the address if the value is .. ???
 * opcode number: 45
 */
for($i=0; $i<3; $i++){
    echo "hi";
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$i

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,0
 | 1 | IS_SMALLER |  |  | ~1 | !0,3
 | 2 | JMPZNZ |  | 6 |  | ~1,->8
 | 3 | POST_INC |  |  | ~2 | !0
 | 4 | FREE |  |  |  | ~2
 | 5 | JMP |  |  |  | ->1
7 | 6 | ECHO |  |  |  | 'hi'
8 | 7 | JMP |  |  |  | ->3
9 | 8 | RETURN |  |  |  | 1
JMPZ
JMPZ_EX
Opcodes


JMPZ_EX

PHP code

<?php
/*
 * Jump to the address if the xor of value1 and value2 is zero .. ???
 * opcode number: 46
 */

?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
7 | 0 | RETURN |  |  |  | 1
JMPZNZ
MOD
Opcodes


MOD

PHP code

<?php
/*
 * Makes the value of "result" congruent to "value1" modulo "value2".
 * opcode number: 5
 */
echo 6 % 3;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | MOD |  |  | ~0 | 6,3
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
JMPZ_EX
MUL
Opcodes


MUL

PHP code

<?php
/*
 * Multiplys "value1" by "value2" and stores the result into "result".
 * opcode number: 3
 */
echo 2*3;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | MUL |  |  | ~0 | 2,3
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
MOD
NEW
Opcodes


NEW

PHP code

<?php
/*
 * Construct an instance of "type" and store the reference to the object into "result".
 * opcode number: 68
 */
$obj = new A();
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | RETURN |  |  |  | 1
MUL
NOP
Opcodes


NOP

PHP code

<?php
/*
 * no operation
 * opcode number: 0
 */
function A(){};
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
7 | 1 | RETURN |  |  |  | 1

Function name: A

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | RETURN |  |  |  | null
NEW
POST_DEC
Opcodes


POST_DEC

PHP code

<?php
/*
 * decrements variable indicated by value1 by 1 (after performing other operations) and stores in result
 * opcode number: 37
 */
$a--;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | POST_DEC |  |  | ~0 | !0
 | 1 | FREE |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
NOP
POST_DEC_OBJ
Opcodes


POST_DEC_OBJ

PHP code

<?php
/*
 *
 * opcode number: 135
 */
$obj = new A();
$obj->num--;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_POST_DEC_OBJ |  |  | ~5 | !0,'num'
 | 5 | FREE |  |  |  | ~5
8 | 6 | RETURN |  |  |  | 1
POST_DEC
POST_INC
Opcodes


POST_INC

PHP code

<?php
/*
 * increments variable indicated by value1 by 1 (after performing other operations) and stores in result
 * opcode number: 36
 */
$a++;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | POST_INC |  |  | ~0 | !0
 | 1 | FREE |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
POST_DEC_OBJ
POST_INC_OBJ
Opcodes


POST_INC_OBJ

PHP code

<?php
/*
 * Increment the property value specified by prop-name and store the original value into result.
 * opcode number: 134
 */
$obj = new A();
$obj->num++;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_POST_INC_OBJ |  |  | ~5 | !0,'num'
 | 5 | FREE |  |  |  | ~5
8 | 6 | RETURN |  |  |  | 1
POST_INC
PRE_DEC
Opcodes


PRE_DEC

PHP code

<?php
/*
 * decrements variable indicated by value1 by 1 (before performing other operations) and stores in results
 * opcode number: 35
 */
--$a;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | PRE_DEC |  |  |  | !0
7 | 1 | RETURN |  |  |  | 1
POST_INC_OBJ
PRE_DEC_OBJ
Opcodes


PRE_DEC_OBJ

PHP code

<?php
/*
 *
 * opcode number: 133
 */
$obj = new A();
--$obj->num;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_PRE_DEC_OBJ |  |  |  | !0,'num'
8 | 5 | RETURN |  |  |  | 1
PRE_DEC
PRE_INC
Opcodes


PRE_INC

PHP code

<?php
/*
 * increments variable indicated by value1 by 1 (before performing other operations) and stores in result
 * opcode number: 34
 */
++$a;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | PRE_INC |  |  |  | !0
7 | 1 | RETURN |  |  |  | 1
PRE_DEC_OBJ
PRE_INC_OBJ
Opcodes


PRE_INC_OBJ

PHP code

<?php
/*
 *
 * opcode number: 132
 */
$obj = new A();
++$obj->num;
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | ZEND_PRE_INC_OBJ |  |  |  | !0,'num'
8 | 5 | RETURN |  |  |  | 1
PRE_INC
PRINT
Opcodes


PRINT

PHP code

<?php
/*
 *
 * opcode number: 41
 */
print "Hello World";
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | PRINT |  |  | ~0 | 'Hello+World'
 | 1 | FREE |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
PRE_INC_OBJ
QM_ASSIGN
Opcodes


QM_ASSIGN

PHP code

<?php
/*
 * Question Mark Assign, used twice inside a question mark assign to temporarily assign result as value1  (this is followed up with an ASSIGN bytecode)
 * opcode number: 22
 */
function A(){
 echo 1?2:3;
}

function B(){
 $b = 0;
 $a = $b > 1 ? 10: 11;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
10 | 1 | NOP |  |  |  |
14 | 2 | RETURN |  |  |  | 1

Function name: A

Compiled variables: none

line | # | op | fetch | ext | return | operands
7 | 0 | JMPZ |  |  |  | 1,->3
 | 1 | QM_ASSIGN |  |  | ~0 | 2
 | 2 | JMP |  |  |  | ->4
 | 3 | QM_ASSIGN |  |  | ~0 | 3
 | 4 | ECHO |  |  |  | ~0
8 | 5 | RETURN |  |  |  | null

Function name: B

Compiled variables: !0=$b, !1=$a

line | # | op | fetch | ext | return | operands
11 | 0 | ASSIGN |  |  |  | !0,0
12 | 1 | IS_SMALLER |  |  | ~1 | 1,!0
 | 2 | JMPZ |  |  |  | ~1,->5
 | 3 | QM_ASSIGN |  |  | ~2 | 10
 | 4 | JMP |  |  |  | ->6
 | 5 | QM_ASSIGN |  |  | ~2 | 11
 | 6 | ASSIGN |  |  |  | !1,~2
13 | 7 | RETURN |  |  |  | null
PRINT
RAISE_ABSTRACT_ERROR
Opcodes


RAISE_ABSTRACT_ERROR

PHP code

<?php
/*
 *
 * opcode number: 142
 */

abstract class fail {
    abstract function show();
}

class pass extends fail {
    function show() {
        echo "Call to function show()\n";
    }
}

$t2 = new pass();
$t2->show();

$t = new fail();
$t->show();

echo "Done\n"; // shouldn't be displayed
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$t2, !1=$t

line | # | op | fetch | ext | return | operands
7 | 0 | NOP |  |  |  |
11 | 1 | NOP |  |  |  |
 | 2 | NOP |  |  |  |
17 | 3 | ZEND_FETCH_CLASS |  |  | :3 | 'pass'
 | 4 | NEW |  |  | $4 | :3
 | 5 | DO_FCALL_BY_NAME |  | 0 |  |
 | 6 | ASSIGN |  |  |  | !0,$4
18 | 7 | ZEND_INIT_METHOD_CALL |  |  |  | !0,'show'
 | 8 | DO_FCALL_BY_NAME |  | 0 |  |
20 | 9 | ZEND_FETCH_CLASS |  |  | :9 | 'fail'
 | 10 | NEW |  |  | $10 | :9
 | 11 | DO_FCALL_BY_NAME |  | 0 |  |
 | 12 | ASSIGN |  |  |  | !1,$10
21 | 13 | ZEND_INIT_METHOD_CALL |  |  |  | !1,'show'
 | 14 | DO_FCALL_BY_NAME |  | 0 |  |
23 | 15 | ECHO |  |  |  | 'Done%0A'
24 | 16 | RETURN |  |  |  | 1

Function name: show

Compiled variables: none

line | # | op | fetch | ext | return | operands
8 | 0 | ZEND_RAISE_ABSTRACT_ERROR |  |  |  |
 | 1 | RETURN |  |  |  | null

Function name: show

Compiled variables: none

line | # | op | fetch | ext | return | operands
13 | 0 | ECHO |  |  |  | 'Call+to+function+show%28%29%0A'
14 | 1 | RETURN |  |  |  | null
QM_ASSIGN
RECV
Opcodes


RECV

PHP code

<?php
/*
 * Receive a functoin argument of "argument-number" and store the argument value into a variable of "argument-number".  (e.g. $1 for 1)
 * opcode number: 63
 */
function hello($a){}
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
7 | 1 | RETURN |  |  |  | 1

Function name: hello

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | RECV |  |  |  | 1
 | 1 | RETURN |  |  |  | null
RAISE_ABSTRACT_ERROR
RECV_INIT
Opcodes


RECV_INIT

PHP code

<?php
/*
 * Initialize a function argument with "value" if not received from caller.  Otherwise same as RECV.
 * opcode number: 64
 */
function hello($a=5){}
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
7 | 1 | RETURN |  |  |  | 1

Function name: hello

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | RECV_INIT |  |  |  | 1,5
 | 1 | RETURN |  |  |  | null
RECV
RETURN
Opcodes


RETURN

PHP code

<?php
/*
 * Return value from a funciton.
 * opcode number: 62
 */
return 1;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | RETURN |  |  |  | 1
7 | 1 | RETURN |  |  |  | 1
RECV_INIT
SEND_REF
Opcodes


SEND_REF

PHP code

<?php
/*
 * Pass the reference value as an actual parameter to a function.  DO_FCALL follows.
 * opcode number: 67
 */
@each($input);
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | BEGIN_SILENCE |  |  | ~0 |
 | 1 | FETCH_W | local |  | $1 | 'input'
 | 2 | SEND_REF |  |  |  | $1
 | 3 | DO_FCALL |  | 1 |  | 'each'
 | 4 | END_SILENCE |  |  |  | ~0
7 | 5 | RETURN |  |  |  | 1
RETURN
SEND_VAL
Opcodes


SEND_VAL

PHP code

<?php
/*
 * Pass the constant value as an actual parameter to a function.  DO_FCALL follows.
 * opcode number: 65
 */
function funcA($msg){
    print $msg;
}

funcA('HELLO');

defined('IN_PHPBB');
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | NOP |  |  |  |
10 | 1 | SEND_VAL |  |  |  | 'HELLO'
 | 2 | DO_FCALL |  | 1 |  | 'funca'
12 | 3 | SEND_VAL |  |  |  | 'IN_PHPBB'
 | 4 | DO_FCALL |  | 1 |  | 'defined'
13 | 5 | RETURN |  |  |  | 1

Function name: funcA

Compiled variables: !0=$msg

line | # | op | fetch | ext | return | operands
6 | 0 | RECV |  |  |  | 1
7 | 1 | PRINT |  |  | ~0 | !0
 | 2 | FREE |  |  |  | ~0
8 | 3 | RETURN |  |  |  | null
SEND_REF
SEND_VAR
Opcodes


SEND_VAR

PHP code

<?php
/*
 * Pass the variable value as an actual parameter to a function.  DO_FCALL follows.
 * opcode number: 66
 */
$a = array(1,2,3);
if(is_array($a)){ return 0; }
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | SEND_VAR |  |  |  | !0
 | 5 | DO_FCALL |  | 1 |  | 'is_array'
 | 6 | JMPZ |  |  |  | $2,->9
 | 7 | RETURN |  |  |  | 0
 | 8 | JMP |  |  |  | ->9
8 | 9 | RETURN |  |  |  | 1
SEND_VAL
SEND_VAR_NO_REF
Opcodes


SEND_VAR_NO_REF

PHP code

<?php
/*
 *
 * opcode number: 106
 * No sample PHP yet */
?>
SEND_VAR
SL
Opcodes


SL

PHP code

<?php
/*
 * Shift value1 by balue2 bits to left
 * opcode number: 6
 */
echo 8 << 2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | SL |  |  | ~0 | 8,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
SEND_VAR_NO_REF
SR
Opcodes


SR

PHP code

<?php
/*
 * Shift bits to right
 * opcode number: 7
 */
echo 8 >> 2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | SR |  |  | ~0 | 8,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
SL
SUB
Opcodes


SUB

PHP code

<?php
/*
 * Subtracts "value2" from "value1" and stores the result into "result".
 * opcode number: 2
 */
echo 1-2;
?>

PHP opcodes

Function name: (null)

Compiled variables: none

line | # | op | fetch | ext | return | operands
6 | 0 | SUB |  |  | ~0 | 1,2
 | 1 | ECHO |  |  |  | ~0
7 | 2 | RETURN |  |  |  | 1
SR
SWITCH_FREE
Opcodes


SWITCH_FREE

PHP code

<?php
/*
 * Release the allocated space of "value"?
 * opcode number: 49
 */
$a = array(1,2,3);
foreach($a as $num){
    print $num;
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a, !1=$num

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | FE_RESET |  |  | $2 | !0,->11
 | 5 | FE_FETCH |  |  | $3 | $2,->11
 | 6 | ZEND_OP_DATA |  |  |  |
 | 7 | ASSIGN |  |  |  | !1,$3
8 | 8 | PRINT |  |  | ~5 | !1
 | 9 | FREE |  |  |  | ~5
9 | 10 | JMP |  |  |  | ->5
 | 11 | SWITCH_FREE |  |  |  | $2
10 | 12 | RETURN |  |  |  | 1
SUB
THROW
Opcodes


THROW

PHP code

<?php
/*
 *
 * opcode number: 108
 */
try {
    $error = 'Always throw this error';
    throw new Exception($error);

    // Code following an exception is not executed.
    echo 'Never executed';

} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

// Continue execution
echo 'Hello World';
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$error, !1=$e

line | # | op | fetch | ext | return | operands
7 | 0 | ASSIGN |  |  |  | !0,'Always+throw+this+error'
8 | 1 | ZEND_FETCH_CLASS |  |  | :1 | 'Exception'
 | 2 | NEW |  |  | $2 | :1
 | 3 | SEND_VAR |  |  |  | !0
 | 4 | DO_FCALL_BY_NAME |  | 1 |  |
 | 5 | ZEND_THROW |  | 0 |  | $2
11 | 6 | ECHO |  |  |  | 'Never+executed'
13 | 7 | JMP |  |  |  | ->15
 | 8 | ZEND_FETCH_CLASS |  |  | :4 | 'Exception'
 | 9 | ZEND_CATCH |  | 15 |  | $4,!1
14 | 10 | ECHO |  |  |  | 'Caught+exception%3A+'
 | 11 | ZEND_INIT_METHOD_CALL |  |  |  | !1,'getMessage'
 | 12 | DO_FCALL_BY_NAME |  | 0 |  |
 | 13 | ECHO |  |  |  | $6
 | 14 | ECHO |  |  |  | '%0A'
18 | 15 | ECHO |  |  |  | 'Hello+World'
19 | 16 | RETURN |  |  |  | 1
SWITCH_FREE
TICKS
Opcodes


TICKS

PHP code

<?php
/*
 *
 * opcode number: 105
 */
// A function that records the time when it is called
function profile()
{
   echo "profile function is called\n";
}

// Set up a tick handler
register_tick_function("profile");

// Initialize the function before the declare block
profile();

// Run a block of code, throw a tick every 2nd statement
declare(ticks=2) {
   for ($x = 0; $x < 10; ++$x) {
         echo "hello world\n";
   }
}
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x

line | # | op | fetch | ext | return | operands
7 | 0 | NOP |  |  |  |
13 | 1 | SEND_VAL |  |  |  | 'profile'
 | 2 | DO_FCALL |  | 1 |  | 'register_tick_function'
16 | 3 | DO_FCALL |  | 0 |  | 'profile'
20 | 4 | ASSIGN |  |  |  | !0,0
 | 5 | IS_SMALLER |  |  | ~3 | !0,10
 | 6 | JMPZNZ |  | 9 |  | ~3,->13
 | 7 | PRE_INC |  |  |  | !0
 | 8 | JMP |  |  |  | ->5
21 | 9 | ECHO |  |  |  | 'hello+world%0A'
 | 10 | TICKS |  |  |  | 2
22 | 11 | TICKS |  |  |  | 2
 | 12 | JMP |  |  |  | ->7
 | 13 | TICKS |  |  |  | 2
23 | 14 | TICKS |  |  |  | 2
24 | 15 | RETURN |  |  |  | 1

Function name: profile

Compiled variables: none

line | # | op | fetch | ext | return | operands
9 | 0 | ECHO |  |  |  | 'profile+function+is+called%0A'
10 | 1 | RETURN |  |  |  | null
THROW
UNSET_DIM
Opcodes


UNSET_DIM

PHP code

<?php
/*
 * Unset the entry of array-value, which is specified by index, and store the original element value into "result".
 * opcode number: 75
 */
$a = array(1,2,3);
unset($a[0]);
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$a

line | # | op | fetch | ext | return | operands
6 | 0 | INIT_ARRAY |  |  | ~0 | 1
 | 1 | ADD_ARRAY_ELEMENT |  |  | ~0 | 2
 | 2 | ADD_ARRAY_ELEMENT |  |  | ~0 | 3
 | 3 | ASSIGN |  |  |  | !0,~0
7 | 4 | UNSET_DIM |  |  | $2 | !0,0
8 | 5 | RETURN |  |  |  | 1
TICKS
UNSET_OBJ
Opcodes


UNSET_OBJ

PHP code

<?php
/*
 * Unset the property of the current object (this) and store the original value into "result".
 * opcode number: 76
 */
$obj = new A();
unset($obj->num);
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$obj

line | # | op | fetch | ext | return | operands
6 | 0 | ZEND_FETCH_CLASS |  |  | :0 | 'A'
 | 1 | NEW |  |  | $1 | :0
 | 2 | DO_FCALL_BY_NAME |  | 0 |  |
 | 3 | ASSIGN |  |  |  | !0,$1
7 | 4 | UNSET_OBJ |  |  | $4 | !0,'num'
8 | 5 | RETURN |  |  |  | 1
UNSET_DIM
UNSET_VAR
Opcodes


UNSET_VAR

PHP code

<?php
/*
 * Unset the variable and store the original value into "result".
 * opcode number: 74
 */
$x = 1;
$a='x';
unset($$a);
?>

PHP opcodes

Function name: (null)

Compiled variables: !0=$x, !1=$a

line | # | op | fetch | ext | return | operands
6 | 0 | ASSIGN |  |  |  | !0,1
7 | 1 | ASSIGN |  |  |  | !1,'x'
8 | 2 | UNSET_VAR |  |  | $2 | !1
9 | 3 | RETURN |  |  |  | 1
UNSET_OBJ
USER_OPCODE
Opcodes


USER_OPCODE

PHP code

<?php
/*
 *
 * opcode number: 150
 * No sample PHP yet */
?>
UNSET_VAR
VERIFY_ABSTRACT_CLASS
Opcodes


VERIFY_ABSTRACT_CLASS

PHP code

<?php
/*
 *
 * opcode number: 146
 * No sample PHP yet */
?>
USER_OPCODE
Zend Engine 1
Opcodes


Zend Engine 1

Índice

  • Old introduction
  • Streams API for PHP Extension Authors
  • Zend API: Hackeando o Núcleo do PHP
  • TSRM API

Zend Engine 1 is the internal engine used by PHP for the entire version 4 release line. It is no longer considered active, but PHP 4 is still in widespread use, so the old ZE1 documentation is preserved here exactly as it was.

VERIFY_ABSTRACT_CLASS
Old introduction
PHP at the Core: A Hacker's Guide to the Zend Engine


Old introduction

If you are about to begin developing PHP or Zend extensions, you need to prepare yourself for the programming environment provided by the various APIs. This part of the documentation tries to introduce the APIs provided by the different PHP and Zend Engine versions available. Since most of the information available here is somewhat outdated, you'll want to read various files found in the PHP source, files such as README.SELF-CONTAINED-EXTENSIONS and README.EXT_SKEL in addition to the manual.

Zend Engine 1
Streams API for PHP Extension Authors
Zend Engine 1


Streams API for PHP Extension Authors

Nota:

The functions in this chapter are for use in the PHP source code and are not PHP functions. Information on userland stream functions can be found in the Stream Reference.

Overview

The PHP Streams API introduces a unified approach to the handling of files and sockets in PHP extension. Using a single API with standard functions for common operations, the streams API allows your extension to access files, sockets, URLs, memory and script-defined objects. Streams is a run-time extensible API that allows dynamically loaded modules (and scripts!) to register new streams.

The aim of the Streams API is to make it comfortable for developers to open files, URLs and other streamable data sources with a unified API that is easy to understand. The API is more or less based on the ANSI C stdio family of functions (with identical semantics for most of the main functions), so C programmers will have a feeling of familiarity with streams.

The streams API operates on a couple of different levels: at the base level, the API defines php_stream objects to represent streamable data sources. On a slightly higher level, the API defines php_stream_wrapper objects which "wrap" around the lower level API to provide support for retrieving data and meta-data from URLs. An additional context parameter, accepted by most stream creation functions, is passed to the wrapper's stream_opener method to fine-tune the behavior of the wrapper.

Any stream, once opened, can also have any number of filters applied to it, which process data as it is read from/written to the stream.

Streams can be cast (converted) into other types of file-handles, so that they can be used with third-party libraries without a great deal of trouble. This allows those libraries to access data directly from URL sources. If your system has the fopencookie() or funopen() function, you can even pass any PHP stream to any library that uses ANSI stdio!

Streams Basics

Using streams is very much like using ANSI stdio functions. The main difference is in how you obtain the stream handle to begin with. In most cases, you will use php_stream_open_wrapper() to obtain the stream handle. This function works very much like fopen, as can be seen from the example below:

Exemplo #1 simple stream example that displays the PHP home page

php_stream * stream = php_stream_open_wrapper("http://www.php.net", "rb", REPORT_ERRORS, NULL);
if (stream) {
    while(!php_stream_eof(stream)) {
        char buf[1024];

        if (php_stream_gets(stream, buf, sizeof(buf))) {
            printf(buf);
        } else {
            break;
        }
    }
    php_stream_close(stream);
}

The table below shows the Streams equivalents of the more common ANSI stdio functions. Unless noted otherwise, the semantics of the functions are identical.

ANSI stdio equivalent functions in the Streams API
ANSI Stdio Function | PHP Streams Function | Notes
fopen | php_stream_open_wrapper | Streams includes additional parameters
fclose | php_stream_close |
fgets | php_stream_gets |
fread | php_stream_read | The nmemb parameter is assumed to have a value of 1, so the prototype looks more like read(2)
fwrite | php_stream_write | The nmemb parameter is assumed to have a value of 1, so the prototype looks more like write(2)
fseek | php_stream_seek |
ftell | php_stream_tell |
rewind | php_stream_rewind |
feof | php_stream_eof |
fgetc | php_stream_getc |
fputc | php_stream_putc |
fflush | php_stream_flush |
puts | php_stream_puts | Same semantics as puts, NOT fputs
fstat | php_stream_stat | Streams has a richer stat structure

Streams as Resources

All streams are registered as resources when they are created. This ensures that they will be properly cleaned up even if there is some fatal error. All of the filesystem functions in PHP operate on streams resources - that means that your extensions can accept regular PHP file pointers as parameters to, and return streams from their functions. The streams API makes this process as painless as possible:

Exemplo #2 How to accept a stream as a parameter

PHP_FUNCTION(example_write_hello)
{
    zval *zstream;
    php_stream *stream;

    if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &zstream))
        return;

    php_stream_from_zval(stream, &zstream);

    /* you can now use the stream.  However, you do not "own" the
        stream, the script does.  That means you MUST NOT close the
        stream, because it will cause PHP to crash! */

    php_stream_write(stream, "hello\n");

    RETURN_TRUE();
}

Exemplo #3 How to return a stream from a function

PHP_FUNCTION(example_open_php_home_page)
{
    php_stream *stream;

    stream = php_stream_open_wrapper("http://www.php.net", "rb", REPORT_ERRORS, NULL);

    php_stream_to_zval(stream, return_value);

    /* after this point, the stream is "owned" by the script.
        If you close it now, you will crash PHP! */
}

Since streams are automatically cleaned up, it's tempting to think that we can get away with being sloppy programmers and not bother to close the streams when we are done with them. Although such an approach might work, it is not a good idea for a number of reasons: streams hold locks on system resources while they are open, so leaving a file open after you have finished with it could prevent other processes from accessing it. If a script deals with a large number of files, the accumulation of the resources used, both in terms of memory and the sheer number of open files, can cause web server requests to fail. Sounds bad, doesn't it? The streams API includes some magic that helps you to keep your code clean - if a stream is not closed by your code when it should be, you will find some helpful debugging information in you web server error log.

Nota: Always use a debug build of PHP when developing an extension (--enable-debug when running configure), as a lot of effort has been made to warn you about memory and stream leaks.

In some cases, it is useful to keep a stream open for the duration of a request, to act as a log or trace file for example. Writing the code to safely clean up such a stream is not difficult, but it's several lines of code that are not strictly needed. To save yourself the trouble of writing the code, you can mark a stream as being OK for auto cleanup. What this means is that the streams API will not emit a warning when it is time to auto-cleanup a stream. To do this, you can use php_stream_auto_cleanup().

Streams open options

These constants affect the operation of stream factory functions.

IGNORE_PATH
This is the default option for streams; it requests that the include_path is not to be searched for the requested file.
USE_PATH
Requests that the include_path is to be searched for the requested file.
IGNORE_URL
Requests that registered URL wrappers are to be ignored when opening the stream. Other non-URL wrappers will be taken into consideration when decoding the path. There is no opposite form for this flag; the streams API will use all registered wrappers by default.
IGNORE_URL_WIN
On Windows systems, this is equivalent to IGNORE_URL. On all other systems, this flag has no effect.
ENFORCE_SAFE_MODE
Requests that the underlying stream implementation perform safe_mode checks on the file before opening the file. Omitting this flag will skip safe_mode checks and allow opening of any file that the PHP process has rights to access.
REPORT_ERRORS
If this flag is set, and there was an error during the opening of the file or URL, the streams API will call the php_error function for you. This is useful because the path may contain username/password information that should not be displayed in the browser output (it would be a security risk to do so). When the streams API raises the error, it first strips username/password information from the path, making the error message safe to display in the browser.
STREAM_MUST_SEEK
This flag is useful when your extension really must be able to randomly seek around in a stream. Some streams may not be seekable in their native form, so this flag asks the streams API to check to see if the stream does support seeking. If it does not, it will copy the stream into temporary storage (which may be a temporary file or a memory stream) which does support seeking. Please note that this flag is not useful when you want to seek the stream and write to it, because the stream you are accessing might not be bound to the actual resource you requested.

Nota: If the requested resource is network based, this flag will cause the opener to block until the whole contents have been downloaded.

STREAM_WILL_CAST
If your extension is using a third-party library that expects a FILE* or file descriptor, you can use this flag to request the streams API to open the resource but avoid buffering. You can then use php_stream_cast() to retrieve the FILE* or file descriptor that the library requires. The is particularly useful when accessing HTTP URLs where the start of the actual stream data is found after an indeterminate offset into the stream. Since this option disables buffering at the streams API level, you may experience lower performance when using streams functions on the stream; this is deemed acceptable because you have told streams that you will be using the functions to match the underlying stream implementation. Only use this option when you are sure you need it.

Old introduction
Zend API: Hackeando o Núcleo do PHP
Zend Engine 1


Zend API: Hackeando o Núcleo do PHP

Introduction

Those who know don't talk.

Those who talk don't know.

Sometimes, PHP "as is" simply isn't enough. Although these cases are rare for the average user, professional applications will soon lead PHP to the edge of its capabilities, in terms of either speed or functionality. New functionality cannot always be implemented natively due to language restrictions and inconveniences that arise when having to carry around a huge library of default code appended to every single script, so another method needs to be found for overcoming these eventual lacks in PHP.

As soon as this point is reached, it's time to touch the heart of PHP and take a look at its core, the C code that makes PHP go.

Aviso

This information is currently rather outdated, parts of it only cover early stages of the ZendEngine 1.0 API as it was used in early versions of PHP 4.

More recent information may be found in the various README files that come with the PHP source and the » Internals section on the Zend website.

Overview

"Extending PHP" is easier said than done. PHP has evolved to a full-fledged tool consisting of a few megabytes of source code, and to hack a system like this quite a few things have to be learned and considered. When structuring this chapter, we finally decided on the "learn by doing" approach. This is not the most scientific and professional approach, but the method that's the most fun and gives the best end results. In the following sections, you'll learn quickly how to get the most basic extensions to work almost instantly. After that, you'll learn about Zend's advanced API functionality. The alternative would have been to try to impart the functionality, design, tips, tricks, etc. as a whole, all at once, thus giving a complete look at the big picture before doing anything practical. Although this is the "better" method, as no dirty hacks have to be made, it can be very frustrating as well as energy- and time-consuming, which is why we've decided on the direct approach.

Note that even though this chapter tries to impart as much knowledge as possible about the inner workings of PHP, it's impossible to really give a complete guide to extending PHP that works 100% of the time in all cases. PHP is such a huge and complex package that its inner workings can only be understood if you make yourself familiar with it by practicing, so we encourage you to work with the source.

What Is Zend? and What Is PHP?

The name Zend refers to the language engine, PHP's core. The term PHP refers to the complete system as it appears from the outside. This might sound a bit confusing at first, but it's not that complicated ( see below). To implement a Web script interpreter, you need three parts:

  1. The interpreter part analyzes the input code, translates it, and executes it.

  2. The functionality part implements the functionality of the language (its functions, etc.).

  3. The interface part talks to the Web server, etc.

Zend takes part 1 completely and a bit of part 2; PHP takes parts 2 and 3. Together they form the complete PHP package. Zend itself really forms only the language core, implementing PHP at its very basics with some predefined functions. PHP contains all the modules that actually create the language's outstanding capabilities.
The internal structure of PHP.

The following sections discuss where PHP can be extended and how it's done.

Extension Possibilities

As shown above, PHP can be extended primarily at three points: external modules, built-in modules, and the Zend engine. The following sections discuss these options.

External Modules

External modules can be loaded at script runtime using the function dl(). This function loads a shared object from disk and makes its functionality available to the script to which it's being bound. After the script is terminated, the external module is discarded from memory. This method has both advantages and disadvantages, as described in the following table:

Advantages | Disadvantages
External modules don't require recompiling of PHP. | The shared objects need to be loaded every time a script is being executed (every hit), which is very slow.
The size of PHP remains small by "outsourcing" certain functionality. | External additional files clutter up the disk.
 |  | Every script that wants to use an external module's functionality has to specifically include a call to dl(), or the extension tag in php.ini needs to be modified (which is not always a suitable solution).
To sum up, external modules are great for third-party products, small additions to PHP that are rarely used, or just for testing purposes. To develop additional functionality quickly, external modules provide the best results. For frequent usage, larger implementations, and complex code, the disadvantages outweigh the advantages.

Third parties might consider using the extension tag in php.ini to create additional external modules to PHP. These external modules are completely detached from the main package, which is a very handy feature in commercial environments. Commercial distributors can simply ship disks or archives containing only their additional modules, without the need to create fixed and solid PHP binaries that don't allow other modules to be bound to them.

Built-in Modules

Built-in modules are compiled directly into PHP and carried around with every PHP process; their functionality is instantly available to every script that's being run. Like external modules, built-in modules have advantages and disadvantages, as described in the following table:

Advantages | Disadvantages
No need to load the module specifically; the functionality is instantly available. | Changes to built-in modules require recompiling of PHP.
No external files clutter up the disk; everything resides in the PHP binary. | The PHP binary grows and consumes more memory.
Built-in modules are best when you have a solid library of functions that remains relatively unchanged, requires better than poor-to-average performance, or is used frequently by many scripts on your site. The need to recompile PHP is quickly compensated by the benefit in speed and ease of use. However, built-in modules are not ideal when rapid development of small additions is required.

The Zend Engine

Of course, extensions can also be implemented directly in the Zend engine. This strategy is good if you need a change in the language behavior or require special functions to be built directly into the language core. In general, however, modifications to the Zend engine should be avoided. Changes here result in incompatibilities with the rest of the world, and hardly anyone will ever adapt to specially patched Zend engines. Modifications can't be detached from the main PHP sources and are overridden with the next update using the "official" source repositories. Therefore, this method is generally considered bad practice and, due to its rarity, is not covered in this book.

Source Layout

Nota:

Prior to working through the rest of this chapter, you should retrieve clean, unmodified source trees of your favorite Web server. We're working with Apache (available at » http://httpd.apache.org/) and, of course, with PHP (available at » http://www.php.net/ - does it need to be said?).

Make sure that you can compile a working PHP environment by yourself! We won't go into this issue here, however, as you should already have this most basic ability when studying this chapter.

Before we start discussing code issues, you should familiarize yourself with the source tree to be able to quickly navigate through PHP's files. This is a must-have ability to implement and debug extensions.

The following table describes the contents of the major directories.

Directory | Contents
php-src | Main PHP source files and main header files; here you'll find all of PHP's API definitions, macros, etc. (important). Everything else is below this directory.
php-src/ext | Repository for dynamic and built-in modules; by default, these are the "official" PHP modules that have been integrated into the main source tree. From PHP 4.0, it's possible to compile these standard extensions as dynamic loadable modules (at least, those that support it).
php-src/main | This directory contains the main php macros and definitions. (important)
php-src/pear | Directory for the PHP Extension and Application Repository. This directory contains core PEAR files.
php-src/sapi | Contains the code for the different server abstraction layers.
TSRM | Location of the "Thread Safe Resource Manager" (TSRM) for Zend and PHP.
ZendEngine2 | Location of the Zend Engine files; here you'll find all of Zend's API definitions, macros, etc. (important).

Discussing all the files included in the PHP package is beyond the scope of this chapter. However, you should take a close look at the following files:

  • php-src/main/php.h, located in the main PHP directory. This file contains most of PHP's macro and API definitions.

  • php-src/Zend/zend.h, located in the main Zend directory. This file contains most of Zend's macros and definitions.

  • php-src/Zend/zend_API.h, also located in the Zend directory, which defines Zend's API.

You should also follow some sub-inclusions from these files; for example, the ones relating to the Zend executor, the PHP initialization file support, and such. After reading these files, take the time to navigate around the package a little to see the interdependencies of all files and modules - how they relate to each other and especially how they make use of each other. This also helps you to adapt to the coding style in which PHP is authored. To extend PHP, you should quickly adapt to this style.

Extension Conventions

Zend is built using certain conventions; to avoid breaking its standards, you should follow the rules described in the following sections.

Macros

For almost every important task, Zend ships predefined macros that are extremely handy. The tables and figures in the following sections describe most of the basic functions, structures, and macros. The macro definitions can be found mainly in zend.h and zend_API.h. We suggest that you take a close look at these files after having studied this chapter. (Although you can go ahead and read them now, not everything will make sense to you yet.)

Memory Management

Resource management is a crucial issue, especially in server software. One of the most valuable resources is memory, and memory management should be handled with extreme care. Memory management has been partially abstracted in Zend, and you should stick to this abstraction for obvious reasons: Due to the abstraction, Zend gets full control over all memory allocations. Zend is able to determine whether a block is in use, automatically freeing unused blocks and blocks with lost references, and thus prevent memory leaks. The functions to be used are described in the following table:

Function | Description
emalloc() | Serves as replacement for malloc().
efree() | Serves as replacement for free().
estrdup() | Serves as replacement for strdup().
estrndup() | Serves as replacement for strndup(). Faster than estrdup() and binary-safe. This is the recommended function to use if you know the string length prior to duplicating it.
ecalloc() | Serves as replacement for calloc().
erealloc() | Serves as replacement for realloc().
emalloc(), estrdup(), estrndup(), ecalloc(), and erealloc() allocate internal memory; efree() frees these previously allocated blocks. Memory handled by the e*() functions is considered local to the current process and is discarded as soon as the script executed by this process is terminated.
Aviso

To allocate resident memory that survives termination of the current script, you can use malloc() and free(). This should only be done with extreme care, however, and only in conjunction with demands of the Zend API; otherwise, you risk memory leaks.

Zend also features a thread-safe resource manager to provide better native support for multithreaded Web servers. This requires you to allocate local structures for all of your global variables to allow concurrent threads to be run. Because the thread-safe mode of Zend was not finished back when this was written, it is not yet extensively covered here.

Directory and File Functions

The following directory and file functions should be used in Zend modules. They behave exactly like their C counterparts, but provide virtual working directory support on the thread level.

Zend Function | Regular C Function
V_GETCWD() | getcwd()
V_FOPEN() | fopen()
V_OPEN() | open()
V_CHDIR() | chdir()
V_GETWD() | getwd()
V_CHDIR_FILE() | Takes a file path as an argument and changes the current working directory to that file's directory.
V_STAT() | stat()
V_LSTAT() | lstat()

String Handling

Strings are handled a bit differently by the Zend engine than other values such as integers, Booleans, etc., which don't require additional memory allocation for storing their values. If you want to return a string from a function, introduce a new string variable to the symbol table, or do something similar, you have to make sure that the memory the string will be occupying has previously been allocated, using the aforementioned e*() functions for allocation. (This might not make much sense to you yet; just keep it somewhere in your head for now - we'll get back to it shortly.)

Complex Types

Complex types such as arrays and objects require different treatment. Zend features a single API for these types - they're stored using hash tables.

Nota:

To reduce complexity in the following source examples, we're only working with simple types such as integers at first. A discussion about creating more advanced types follows later in this chapter.

PHP's Automatic Build System

PHP 4 features an automatic build system that's very flexible. All modules reside in a subdirectory of the ext directory. In addition to its own sources, each module consists of a config.m4 file, for extension configuration. (for example, see » http://www.gnu.org/software/m4/)

All these stub files are generated automatically, along with .cvsignore, by a little shell script named ext_skel that resides in the ext directory. As argument it takes the name of the module that you want to create. The shell script then creates a directory of the same name, along with the appropriate stub files.

Step by step, the process looks like this:

:~/cvs/php4/ext:> ./ext_skel --extname=my_module
Creating directory my_module
Creating basic files: config.m4 .cvsignore my_module.c php_my_module.h CREDITS EXPERIMENTAL tests/001.phpt my_module.php [done].

To use your new extension, you will have to execute the following steps:

1.  $ cd ..
2.  $ vi ext/my_module/config.m4
3.  $ ./buildconf
4.  $ ./configure --[with|enable]-my_module
5.  $ make
6.  $ ./php -f ext/my_module/my_module.php
7.  $ vi ext/my_module/my_module.c
8.  $ make

Repeat steps 3-6 until you are satisfied with ext/my_module/config.m4 and
step 6 confirms that your module is compiled into PHP. Then, start writing
code and repeat the last two steps as often as necessary.
This instruction creates the aforementioned files. To include the new module in the automatic configuration and build process, you have to run buildconf, which regenerates the configure script by searching through the ext directory and including all found config.m4 files.

The default config.m4 shown in The default config.m4. is a bit more complex:

Exemplo #1 The default config.m4.

dnl $Id: build.xml 297078 2010-03-29 16:25:51Z degeberg $
dnl config.m4 for extension my_module

dnl Comments in this file start with the string 'dnl'.
dnl Remove where necessary. This file will not work
dnl without editing.

dnl If your extension references something external, use with:

dnl PHP_ARG_WITH(my_module, for my_module support,
dnl Make sure that the comment is aligned:
dnl [  --with-my_module             Include my_module support])

dnl Otherwise use enable:

dnl PHP_ARG_ENABLE(my_module, whether to enable my_module support,
dnl Make sure that the comment is aligned:
dnl [  --enable-my_module           Enable my_module support])

if test "$PHP_MY_MODULE" != "no"; then
  dnl Write more examples of tests here...

  dnl # --with-my_module -> check with-path
  dnl SEARCH_PATH="/usr/local /usr"     # you might want to change this
  dnl SEARCH_FOR="/include/my_module.h"  # you most likely want to change this
  dnl if test -r $PHP_MY_MODULE/; then # path given as parameter
  dnl   MY_MODULE_DIR=$PHP_MY_MODULE
  dnl else # search default path list
  dnl   AC_MSG_CHECKING([for my_module files in default path])
  dnl   for i in $SEARCH_PATH ; do
  dnl     if test -r $i/$SEARCH_FOR; then
  dnl       MY_MODULE_DIR=$i
  dnl       AC_MSG_RESULT(found in $i)
  dnl     fi
  dnl   done
  dnl fi
  dnl
  dnl if test -z "$MY_MODULE_DIR"; then
  dnl   AC_MSG_RESULT([not found])
  dnl   AC_MSG_ERROR([Please reinstall the my_module distribution])
  dnl fi

  dnl # --with-my_module -> add include path
  dnl PHP_ADD_INCLUDE($MY_MODULE_DIR/include)

  dnl # --with-my_module -> chech for lib and symbol presence
  dnl LIBNAME=my_module # you may want to change this
  dnl LIBSYMBOL=my_module # you most likely want to change this

  dnl PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
  dnl [
  dnl   PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $MY_MODULE_DIR/lib, MY_MODULE_SHARED_LIBADD)
  dnl   AC_DEFINE(HAVE_MY_MODULELIB,1,[ ])
  dnl ],[
  dnl   AC_MSG_ERROR([wrong my_module lib version or lib not found])
  dnl ],[
  dnl   -L$MY_MODULE_DIR/lib -lm -ldl
  dnl ])
  dnl
  dnl PHP_SUBST(MY_MODULE_SHARED_LIBADD)

  PHP_NEW_EXTENSION(my_module, my_module.c, $ext_shared)
fi

If you're unfamiliar with M4 files (now is certainly a good time to get familiar), this might be a bit confusing at first; but it's actually quite easy.

Note: Everything prefixed with dnl is treated as a comment and is not parsed.

The config.m4 file is responsible for parsing the command-line options passed to configure at configuration time. This means that it has to check for required external files and do similar configuration and setup tasks.

The default file creates two configuration directives in the configure script: --with-my_module and --enable-my_module. Use the first option when referring external files (such as the --with-apache directive that refers to the Apache directory). Use the second option when the user simply has to decide whether to enable your extension. Regardless of which option you use, you should uncomment the other, unnecessary one; that is, if you're using --enable-my_module, you should remove support for --with-my_module, and vice versa.

By default, the config.m4 file created by ext_skel accepts both directives and automatically enables your extension. Enabling the extension is done by using the PHP_EXTENSION macro. To change the default behavior to include your module into the PHP binary when desired by the user (by explicitly specifying --enable-my_module or --with-my_module), change the test for $PHP_MY_MODULE to == "yes":

if test "$PHP_MY_MODULE" == "yes"; then dnl
    Action.. PHP_EXTENSION(my_module, $ext_shared)
    fi
This would require you to use --enable-my_module each time when reconfiguring and recompiling PHP.

Note: Be sure to run buildconf every time you change config.m4!

We'll go into more details on the M4 macros available to your configuration scripts later in this chapter. For now, we'll simply use the default files.

Creating Extensions

We'll start with the creation of a very simple extension at first, which basically does nothing more than implement a function that returns the integer it receives as parameter. A simple extension. shows the source.

Exemplo #2 A simple extension.

/* include standard header */
#include "php.h"

/* declaration of functions to be exported */
ZEND_FUNCTION(first_module);

/* compiled function list so Zend knows what's in this module */
zend_function_entry firstmod_functions[] =
{
    ZEND_FE(first_module, NULL)
    {NULL, NULL, NULL}
};

/* compiled module information */
zend_module_entry firstmod_module_entry =
{
    STANDARD_MODULE_HEADER,
    "First Module",
    firstmod_functions,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NO_VERSION_YET,
    STANDARD_MODULE_PROPERTIES
};

/* implement standard "stub" routine to introduce ourselves to Zend */
#if COMPILE_DL_FIRST_MODULE
ZEND_GET_MODULE(firstmod)
#endif

/* implement function that is meant to be made available to PHP */
ZEND_FUNCTION(first_module)
{
    long parameter;

    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &parameter) == FAILURE) {
        return;
    }

    RETURN_LONG(parameter);
}

This code contains a complete PHP module. We'll explain the source code in detail shortly, but first we'd like to discuss the build process. (This will allow the impatient to experiment before we dive into API discussions.)

Nota:

The example source makes use of some features introduced with the Zend version used in PHP 4.1.0 and above, it won't compile with older PHP 4.0.x versions.

Compiling Modules

There are basically two ways to compile modules:

  • Use the provided "make" mechanism in the ext directory, which also allows building of dynamic loadable modules.

  • Compile the sources manually.

The first method should definitely be favored, since, as of PHP 4.0, this has been standardized into a sophisticated build process. The fact that it is so sophisticated is also its drawback, unfortunately - it's hard to understand at first. We'll provide a more detailed introduction to this later in the chapter, but first let's work with the default files.

The second method is good for those who (for some reason) don't have the full PHP source tree available, don't have access to all files, or just like to juggle with their keyboard. These cases should be extremely rare, but for the sake of completeness we'll also describe this method.

Compiling Using Make

To compile the sample sources using the standard mechanism, copy all their subdirectories to the ext directory of your PHP source tree. Then run buildconf, which will create an updated configure script containing appropriate options for the new extension. By default, all the sample sources are disabled, so you don't have to fear breaking your build process.

After you run buildconf, configure --help shows the following additional modules:

  --enable-array_experiments   BOOK: Enables array experiments
  --enable-call_userland       BOOK: Enables userland module
  --enable-cross_conversion    BOOK: Enables cross-conversion module
  --enable-first_module        BOOK: Enables first module
  --enable-infoprint           BOOK: Enables infoprint module
  --enable-reference_test      BOOK: Enables reference test module
  --enable-resource_test       BOOK: Enables resource test module
  --enable-variable_creation   BOOK: Enables variable-creation module

The module shown earlier in A simple extension. can be enabled with --enable-first_module or --enable-first_module=yes.

Compiling Manually

To compile your modules manually, you need the following commands:

Action | Command
Compiling | cc -fpic -DCOMPILE_DL_FIRST_MODULE=1 -I/usr/local/include -I. -I.. -I../Zend -c -o <your_object_file> <your_c_file>
Linking | cc -shared -L/usr/local/lib -rdynamic -o <your_module_file> <your_object_file(s)>
The command to compile the module simply instructs the compiler to generate position-independent code (-fpic shouldn't be omitted) and additionally defines the constant COMPILE_DL_FIRST_MODULE to tell the module code that it's compiled as a dynamically loadable module (the test module above checks for this; we'll discuss it shortly). After these options, it specifies a number of standard include paths that should be used as the minimal set to compile the source files.

Note: All include paths in the example are relative to the directory ext. If you're compiling from another directory, change the pathnames accordingly. Required items are the PHP directory, the Zend directory, and (if necessary), the directory in which your module resides.

The link command is also a plain vanilla command instructing linkage as a dynamic module.

You can include optimization options in the compilation command, although these have been omitted in this example (but some are included in the makefile template described in an earlier section).

Note: Compiling and linking manually as a static module into the PHP binary involves very long instructions and thus is not discussed here. (It's not very efficient to type all those commands.)

Using Extensions

Depending on the build process you selected, you should either end up with a new PHP binary to be linked into your Web server (or run as CGI), or with an .so (shared object) file. If you compiled the example file first_module.c as a shared object, your result file should be first_module.so. To use it, you first have to copy it to a place from which it's accessible to PHP. For a simple test procedure, you can copy it to your htdocs directory and try it with the source in A test file for first_module.so.. If you compiled it into the PHP binary, omit the call to dl(), as the module's functionality is instantly available to your scripts.

Aviso

For security reasons, you should not put your dynamic modules into publicly accessible directories. Even though it can be done and it simplifies testing, you should put them into a separate directory in production environments.

Exemplo #3 A test file for first_module.so.

<?php

// remove next comment if necessary
// dl("first_module.so");

$param = 2;
$return = first_module($param);

print("We sent '$param' and got '$return'");

?>

Calling this PHP file should output the following:

We sent '2' and got '2'

If required, the dynamic loadable module is loaded by calling the dl() function. This function looks for the specified shared object, loads it, and makes its functions available to PHP. The module exports the function first_module(), which accepts a single parameter, converts it to an integer, and returns the result of the conversion.

If you've gotten this far, congratulations! You just built your first extension to PHP.

Troubleshooting

Actually, not much troubleshooting can be done when compiling static or dynamic modules. The only problem that could arise is that the compiler will complain about missing definitions or something similar. In this case, make sure that all header files are available and that you specified their path correctly in the compilation command. To be sure that everything is located correctly, extract a clean PHP source tree and use the automatic build in the ext directory with the fresh files; this will guarantee a safe compilation environment. If this fails, try manual compilation.

PHP might also complain about missing functions in your module. (This shouldn't happen with the sample sources if you didn't modify them.) If the names of external functions you're trying to access from your module are misspelled, they'll remain as "unlinked symbols" in the symbol table. During dynamic loading and linkage by PHP, they won't resolve because of the typing errors - there are no corresponding symbols in the main binary. Look for incorrect declarations in your module file or incorrectly written external references. Note that this problem is specific to dynamic loadable modules; it doesn't occur with static modules. Errors in static modules show up at compile time.

Source Discussion

Now that you've got a safe build environment and you're able to include the modules into PHP files, it's time to discuss how everything works.

Module Structure

All PHP modules follow a common structure:

  • Header file inclusions (to include all required macros, API definitions, etc.)

  • C declaration of exported functions (required to declare the Zend function block)

  • Declaration of the Zend function block

  • Declaration of the Zend module block

  • Implementation of get_module()

  • Implementation of all exported functions

Header File Inclusions

The only header file you really have to include for your modules is php.h, located in the PHP directory. This file makes all macros and API definitions required to build new modules available to your code.

Tip: It's good practice to create a separate header file for your module that contains module-specific definitions. This header file should contain all the forward definitions for exported functions and include php.h. If you created your module using ext_skel you already have such a header file prepared.

Declaring Exported Functions

To declare functions that are to be exported (i.e., made available to PHP as new native functions), Zend provides a set of macros. A sample declaration looks like this:

ZEND_FUNCTION ( my_function );

ZEND_FUNCTION declares a new C function that complies with Zend's internal API. This means that the function is of type void and accepts INTERNAL_FUNCTION_PARAMETERS (another macro) as parameters. Additionally, it prefixes the function name with zif. The immediately expanded version of the above definitions would look like this:

void zif_my_function ( INTERNAL_FUNCTION_PARAMETERS );
Expanding INTERNAL_FUNCTION_PARAMETERS results in the following:
void zif_my_function( int ht
                    , zval * return_value
                    , zval * this_ptr
                    , int return_value_used
                    , zend_executor_globals * executor_globals
                    );

Since the interpreter and executor core have been separated from the main PHP package, a second API defining macros and function sets has evolved: the Zend API. As the Zend API now handles quite a few of the responsibilities that previously belonged to PHP, a lot of PHP functions have been reduced to macros aliasing to calls into the Zend API. The recommended practice is to use the Zend API wherever possible, as the old API is only preserved for compatibility reasons. For example, the types zval and pval are identical. zval is Zend's definition; pval is PHP's definition (actually, pval is an alias for zval now). As the macro INTERNAL_FUNCTION_PARAMETERS is a Zend macro, the above declaration contains zval. When writing code, you should always use zval to conform to the new Zend API.

The parameter list of this declaration is very important; you should keep these parameters in mind (see Zend's Parameters to Functions Called from PHP for descriptions).

Zend's Parameters to Functions Called from PHP
Parameter | Description
ht | The number of arguments passed to the Zend function. You should not touch this directly, but instead use ZEND_NUM_ARGS() to obtain the value.
return_value | This variable is used to pass any return values of your function back to PHP. Access to this variable is best done using the predefined macros. For a description of these see below.
this_ptr | Using this variable, you can gain access to the object in which your function is contained, if it's used within an object. Use the function getThis() to obtain this pointer.
return_value_used | This flag indicates whether an eventual return value from this function will actually be used by the calling script. 0 indicates that the return value is not used; 1 indicates that the caller expects a return value. Evaluation of this flag can be done to verify correct usage of the function as well as speed optimizations in case returning a value requires expensive operations (for an example, see how array.c makes use of this).
executor_globals | This variable points to global settings of the Zend engine. You'll find this useful when creating new variables, for example (more about this later). The executor globals can also be introduced to your function by using the macro TSRMLS_FETCH().

Declaration of the Zend Function Block

Now that you have declared the functions to be exported, you also have to introduce them to Zend. Introducing the list of functions is done by using an array of zend_function_entry. This array consecutively contains all functions that are to be made available externally, with the function's name as it should appear in PHP and its name as defined in the C source. Internally, zend_function_entry is defined as shown in Internal declaration of zend_function_entry..

Exemplo #4 Internal declaration of zend_function_entry.

typedef struct _zend_function_entry {
    char *fname;
    void (*handler)(INTERNAL_FUNCTION_PARAMETERS);
    unsigned char *func_arg_types;
} zend_function_entry;
Entry | Description
fname | Denotes the function name as seen in PHP (for example, fopen, mysql_connect, or, in our example, first_module).
handler | Pointer to the C function responsible for handling calls to this function. For example, see the standard macro INTERNAL_FUNCTION_PARAMETERS discussed earlier.
func_arg_types | Allows you to mark certain parameters so that they're forced to be passed by reference. You usually should set this to NULL.
In the example above, the declaration looks like this:
zend_function_entry firstmod_functions[] =
{
    ZEND_FE(first_module, NULL)
    {NULL, NULL, NULL}
};
You can see that the last entry in the list always has to be {NULL, NULL, NULL}. This marker has to be set for Zend to know when the end of the list of exported functions is reached.

Nota:

You cannot use the predefined macros for the end marker, as these would try to refer to a function named "NULL"!

The macro ZEND_FE (short for 'Zend Function Entry') simply expands to a structure entry in zend_function_entry. Note that these macros introduce a special naming scheme to your functions - your C functions will be prefixed with zif_, meaning that ZEND_FE(first_module) will refer to a C function zif_first_module(). If you want to mix macro usage with hand-coded entries (not a good practice), keep this in mind.

Tip: Compilation errors that refer to functions named zif_*() relate to functions defined with ZEND_FE.

Macros for Defining Functions shows a list of all the macros that you can use to define functions.

Macros for Defining Functions
Macro Name | Description
ZEND_FE(name, arg_types) | Defines a function entry of the name name in zend_function_entry. Requires a corresponding C function. arg_types needs to be set to NULL. This function uses automatic C function name generation by prefixing the PHP function name with zif_. For example, ZEND_FE("first_module", NULL) introduces a function first_module() to PHP and links it to the C function zif_first_module(). Use in conjunction with ZEND_FUNCTION.
ZEND_NAMED_FE(php_name, name, arg_types) | Defines a function that will be available to PHP by the name php_name and links it to the corresponding C function name. arg_types needs to be set to NULL. Use this function if you don't want the automatic name prefixing introduced by ZEND_FE. Use in conjunction with ZEND_NAMED_FUNCTION.
ZEND_FALIAS(name, alias, arg_types) | Defines an alias named alias for name. arg_types needs to be set to NULL. Doesn't require a corresponding C function; refers to the alias target instead.
PHP_FE(name, arg_types) | Old PHP API equivalent of ZEND_FE.
PHP_NAMED_FE(runtime_name, name, arg_types) | Old PHP API equivalent of ZEND_NAMED_FE.

Note: You can't use ZEND_FE in conjunction with PHP_FUNCTION, or PHP_FE in conjunction with ZEND_FUNCTION. However, it's perfectly legal to mix ZEND_FE and ZEND_FUNCTION with PHP_FE and PHP_FUNCTION when staying with the same macro set for each function to be declared. But mixing is not recommended; instead, you're advised to use the ZEND_* macros only.

Declaration of the Zend Module Block

This block is stored in the structure zend_module_entry and contains all necessary information to describe the contents of this module to Zend. You can see the internal definition of this module in Internal declaration of zend_module_entry..

Exemplo #5 Internal declaration of zend_module_entry.

typedef struct _zend_module_entry zend_module_entry;

    struct _zend_module_entry {
    unsigned short size;
    unsigned int zend_api;
    unsigned char zend_debug;
    unsigned char zts;
    char *name;
    zend_function_entry *functions;
    int (*module_startup_func)(INIT_FUNC_ARGS);
    int (*module_shutdown_func)(SHUTDOWN_FUNC_ARGS);
    int (*request_startup_func)(INIT_FUNC_ARGS);
    int (*request_shutdown_func)(SHUTDOWN_FUNC_ARGS);
    void (*info_func)(ZEND_MODULE_INFO_FUNC_ARGS);
    char *version;

[ Rest of the structure is not interesting here ]

};
Entry | Description
size, zend_api, zend_debug and zts | Usually filled with the "STANDARD_MODULE_HEADER", which fills these four members with the size of the whole zend_module_entry, the ZEND_MODULE_API_NO, whether it is a debug build or normal build (ZEND_DEBUG) and if ZTS is enabled (USING_ZTS).
name | Contains the module name (for example, "File functions", "Socket functions", "Crypt", etc.). This name will show up in phpinfo(), in the section "Additional Modules."
functions | Points to the Zend function block, discussed in the preceding section.
module_startup_func | This function is called once upon module initialization and can be used to do one-time initialization steps (such as initial memory allocation, etc.). To indicate a failure during initialization, return FAILURE; otherwise, SUCCESS. To mark this field as unused, use NULL. To declare a function, use the macro ZEND_MINIT.
module_shutdown_func | This function is called once upon module shutdown and can be used to do one-time deinitialization steps (such as memory deallocation). This is the counterpart to module_startup_func(). To indicate a failure during deinitialization, return FAILURE; otherwise, SUCCESS. To mark this field as unused, use NULL. To declare a function, use the macro ZEND_MSHUTDOWN.
request_startup_func | This function is called once upon every page request and can be used to do one-time initialization steps that are required to process a request. To indicate a failure here, return FAILURE; otherwise, SUCCESS. Note: As dynamic loadable modules are loaded only on page requests, the request startup function is called right after the module startup function (both initialization events happen at the same time). To mark this field as unused, use NULL. To declare a function, use the macro ZEND_RINIT.
request_shutdown_func | This function is called once after every page request and works as counterpart to request_startup_func(). To indicate a failure here, return FAILURE; otherwise, SUCCESS. Note: As dynamic loadable modules are loaded only on page requests, the request shutdown function is immediately followed by a call to the module shutdown handler (both deinitialization events happen at the same time). To mark this field as unused, use NULL. To declare a function, use the macro ZEND_RSHUTDOWN.
info_func | When phpinfo() is called in a script, Zend cycles through all loaded modules and calls this function. Every module then has the chance to print its own "footprint" into the output page. Generally this is used to dump environmental or statistical information. To mark this field as unused, use NULL. To declare a function, use the macro ZEND_MINFO.
version | The version of the module. You can use NO_VERSION_YET if you don't want to give the module a version number yet, but we really recommend that you add a version string here. Such a version string can look like this (in chronological order): "2.5-dev", "2.5RC1", "2.5" or "2.5pl3".
Remaining structure elements | These are used internally and can be prefilled by using the macro STANDARD_MODULE_PROPERTIES_EX. You should not assign any values to them. Use STANDARD_MODULE_PROPERTIES_EX only if you use global startup and shutdown functions; otherwise, use STANDARD_MODULE_PROPERTIES directly.

In our example, this structure is implemented as follows:

zend_module_entry firstmod_module_entry =
{
    STANDARD_MODULE_HEADER,
    "First Module",
    firstmod_functions,
    NULL, NULL, NULL, NULL, NULL,
    NO_VERSION_YET,
    STANDARD_MODULE_PROPERTIES,
};
This is basically the easiest and most minimal set of values you could ever use. The module name is set to First Module, then the function list is referenced, after which all startup and shutdown functions are marked as being unused.

For reference purposes, you can find a list of the macros involved in declared startup and shutdown functions in Macros to Declare Startup and Shutdown Functions. These are not used in our basic example yet, but will be demonstrated later on. You should make use of these macros to declare your startup and shutdown functions, as these require special arguments to be passed (INIT_FUNC_ARGS and SHUTDOWN_FUNC_ARGS), which are automatically included into the function declaration when using the predefined macros. If you declare your functions manually and the PHP developers decide that a change in the argument list is necessary, you'll have to change your module sources to remain compatible.

Macros to Declare Startup and Shutdown Functions
Macro | Description
ZEND_MINIT(module) | Declares a function for module startup. The generated name will be zend_minit_<module> (for example, zend_minit_first_module). Use in conjunction with ZEND_MINIT_FUNCTION.
ZEND_MSHUTDOWN(module) | Declares a function for module shutdown. The generated name will be zend_mshutdown_<module> (for example, zend_mshutdown_first_module). Use in conjunction with ZEND_MSHUTDOWN_FUNCTION.
ZEND_RINIT(module) | Declares a function for request startup. The generated name will be zend_rinit_<module> (for example, zend_rinit_first_module). Use in conjunction with ZEND_RINIT_FUNCTION.
ZEND_RSHUTDOWN(module) | Declares a function for request shutdown. The generated name will be zend_rshutdown_<module> (for example, zend_rshutdown_first_module). Use in conjunction with ZEND_RSHUTDOWN_FUNCTION.
ZEND_MINFO(module) | Declares a function for printing module information, used when phpinfo() is called. The generated name will be zend_info_<module> (for example, zend_info_first_module). Use in conjunction with ZEND_MINFO_FUNCTION.

Creation of get_module()

This function is special to all dynamic loadable modules. Take a look at the creation via the ZEND_GET_MODULE macro first:

#if COMPILE_DL_FIRSTMOD
     ZEND_GET_MODULE(firstmod)
#endif

The function implementation is surrounded by a conditional compilation statement. This is needed since the function get_module() is only required if your module is built as a dynamic extension. By specifying a definition of COMPILE_DL_FIRSTMOD in the compiler command (see above for a discussion of the compilation instructions required to build a dynamic extension), you can instruct your module whether you intend to build it as a dynamic extension or as a built-in module. If you want a built-in module, the implementation of get_module() is simply left out.

get_module() is called by Zend at load time of the module. You can think of it as being invoked by the dl() call in your script. Its purpose is to pass the module information block back to Zend in order to inform the engine about the module contents.

If you don't implement a get_module() function in your dynamic loadable module, Zend will compliment you with an error message when trying to access it.

Implementation of All Exported Functions

Implementing the exported functions is the final step. The example function in first_module looks like this:

ZEND_FUNCTION(first_module)
{
    long parameter;

    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &parameter) == FAILURE) {
        return;
    }

    RETURN_LONG(parameter);
}
The function declaration is done using ZEND_FUNCTION, which corresponds to ZEND_FE in the function entry table (discussed earlier).

After the declaration, code for checking and retrieving the function's arguments, argument conversion, and return value generation follows (more on this later).

Summary

That's it, basically - there's nothing more to implementing PHP modules. Built-in modules are structured similarly to dynamic modules, so, equipped with the information presented in the previous sections, you'll be able to fight the odds when encountering PHP module source files.

Now, in the following sections, read on about how to make use of PHP's internals to build powerful extensions.

Accepting Arguments

One of the most important issues for language extensions is accepting and dealing with data passed via arguments. Most extensions are built to deal with specific input data (or require parameters to perform their specific actions), and function arguments are the only real way to exchange data between the PHP level and the C level. Of course, there's also the possibility of exchanging data using predefined global values (which is also discussed later), but this should be avoided by all means, as it's extremely bad practice.

PHP doesn't make use of any formal function declarations; this is why call syntax is always completely dynamic and never checked for errors. Checking for correct call syntax is left to the user code. For example, it's possible to call a function using only one argument at one time and four arguments the next time - both invocations are syntactically absolutely correct.

Determining the Number of Arguments

Since PHP doesn't have formal function definitions with support for call syntax checking, and since PHP features variable arguments, sometimes you need to find out with how many arguments your function has been called. You can use the ZEND_NUM_ARGS macro in this case. In previous versions of PHP, this macro retrieved the number of arguments with which the function has been called based on the function's hash table entry, ht, which is passed in the INTERNAL_FUNCTION_PARAMETERS list. As ht itself now contains the number of arguments that have been passed to the function, ZEND_NUM_ARGS has been stripped down to a dummy macro (see its definition in zend_API.h). But it's still good practice to use it, to remain compatible with future changes in the call interface. Note: The old PHP equivalent of this macro is ARG_COUNT.

The following code checks for the correct number of arguments:

if(ZEND_NUM_ARGS() != 2) WRONG_PARAM_COUNT;
If the function is not called with two arguments, it exits with an error message. The code snippet above makes use of the tool macro WRONG_PARAM_COUNT, which can be used to generate a standard error message like:
"Warning: Wrong parameter count for firstmodule() in /home/www/htdocs/firstmod.php on line 5"

This macro prints a default error message and then returns to the caller. Its definition can also be found in zend_API.h and looks like this:

ZEND_API void wrong_param_count(void);

#define WRONG_PARAM_COUNT { wrong_param_count(); return; }
As you can see, it calls an internal function named wrong_param_count() that's responsible for printing the warning. For details on generating customized error messages, see the later section "Printing Information."

Retrieving Arguments

Nota: New parameter parsing API

This chapter documents the new Zend parameter parsing API introduced by Andrei Zmievski. It was introduced in the development stage between PHP 4.0.6 and 4.1.0.

Parsing parameters is a very common operation and it may get a bit tedious. It would also be nice to have standardized error checking and error messages. Since PHP 4.1.0, there is a way to do just that by using the new parameter parsing API. It greatly simplifies the process of receiving parameters, but it has a drawback in that it can't be used for functions that expect variable number of parameters. But since the vast majority of functions do not fall into those categories, this parsing API is recommended as the new standard way.

The prototype for parameter parsing function looks like this:

int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...);
The first argument to this function is supposed to be the number of actual parameters passed to your function, so ZEND_NUM_ARGS() can be used for that. The second parameter should always be TSRMLS_CC macro. The third argument is a string that specifies the number and types of arguments your function is expecting, similar to how printf format string specifies the number and format of the output values it should operate on. And finally the rest of the arguments are pointers to variables which should receive the values from the parameters.

zend_parse_parameters() also performs type conversions whenever possible, so that you always receive the data in the format you asked for. Any type of scalar can be converted to another one, but conversions between complex types (arrays, objects, and resources) and scalar types are not allowed.

If the parameters could be obtained successfully and there were no errors during type conversion, the function will return SUCCESS, otherwise it will return FAILURE. The function will output informative error messages, if the number of received parameters does not match the requested number, or if type conversion could not be performed.

Here are some sample error messages:

Warning - ini_get_all() requires at most 1 parameter, 2 given
Warning - wddx_deserialize() expects parameter 1 to be string, array given
Of course each error message is accompanied by the filename and line number on which it occurs.

Here is the full list of type specifiers:

  • l - long

  • d - double

  • s - string (with possible null bytes) and its length

  • b - boolean

  • r - resource, stored in zval*

  • a - array, stored in zval*

  • o - object (of any class), stored in zval*

  • O - object (of class specified by class entry), stored in zval*

  • z - the actual zval*

The following characters also have a meaning in the specifier string:

  • | - indicates that the remaining parameters are optional. The storage variables corresponding to these parameters should be initialized to default values by the extension, since they will not be touched by the parsing function if the parameters are not passed.

  • / - the parsing function will call SEPARATE_ZVAL_IF_NOT_REF() on the parameter it follows, to provide a copy of the parameter, unless it's a reference.

  • ! - the parameter it follows can be of specified type or NULL (only applies to a, o, O, r, and z). If NULL value is passed by the user, the storage pointer will be set to NULL.

The best way to illustrate the usage of this function is through examples:

/* Gets a long, a string and its length, and a zval. */
long l;
char *s;
int s_len;
zval *param;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,
                          "lsz", &l, &s, &s_len, &param) == FAILURE) {
    return;
}

/* Gets an object of class specified by my_ce, and an optional double. */
zval *obj;
double d = 0.5;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,
                          "O|d", &obj, my_ce, &d) == FAILURE) {
    return;
}

/* Gets an object or null, and an array.
   If null is passed for object, obj will be set to NULL. */
zval *obj;
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O!a", &obj, &arr) == FAILURE) {
    return;
}

/* Gets a separated array. */
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a/", &arr) == FAILURE) {
    return;
}

/* Get only the first three parameters (useful for varargs functions). */
zval *z;
zend_bool b;
zval *r;
if (zend_parse_parameters(3, "zbr!", &z, &b, &r) == FAILURE) {
    return;
}

Note that in the last example we pass 3 for the number of received parameters, instead of ZEND_NUM_ARGS(). What this lets us do is receive the least number of parameters if our function expects a variable number of them. Of course, if you want to operate on the rest of the parameters, you will have to use zend_get_parameters_array_ex() to obtain them.

The parsing function has an extended version that allows for an additional flags argument that controls its actions.

int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *type_spec, ...);

The only flag you can pass currently is ZEND_PARSE_PARAMS_QUIET, which instructs the function to not output any error messages during its operation. This is useful for functions that expect several sets of completely different arguments, but you will have to output your own error messages.

For example, here is how you would get either a set of three longs or a string:

long l1, l2, l3;
char *s;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET,
                             ZEND_NUM_ARGS() TSRMLS_CC,
                             "lll", &l1, &l2, &l3) == SUCCESS) {
    /* manipulate longs */
} else if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET,
                                    ZEND_NUM_ARGS(), "s", &s, &s_len) == SUCCESS) {
    /* manipulate string */
} else {
    php_error(E_WARNING, "%s() takes either three long values or a string as argument",
              get_active_function_name(TSRMLS_C));
    return;
}

With all the abovementioned ways of receiving function parameters you should have a good handle on this process. For even more example, look through the source code for extensions that are shipped with PHP - they illustrate every conceivable situation.

Old way of retrieving arguments (deprecated)

Nota: Deprecated parameter parsing API

This API is deprecated and superseded by the new ZEND parameter parsing API.

After having checked the number of arguments, you need to get access to the arguments themselves. This is done with the help of zend_get_parameters_ex():

zval **parameter;

if(zend_get_parameters_ex(1, &parameter) != SUCCESS)
  WRONG_PARAM_COUNT;
All arguments are stored in a zval container, which needs to be pointed to twice. The snippet above tries to retrieve one argument and make it available to us via the parameter pointer.

zend_get_parameters_ex() accepts at least two arguments. The first argument is the number of arguments to retrieve (which should match the number of arguments with which the function has been called; this is why it's important to check for correct call syntax). The second argument (and all following arguments) are pointers to pointers to pointers to zvals. (Confusing, isn't it?) All these pointers are required because Zend works internally with **zval; to adjust a local **zval in our function,zend_get_parameters_ex() requires a pointer to it.

The return value of zend_get_parameters_ex() can either be SUCCESS or FAILURE, indicating (unsurprisingly) success or failure of the argument processing. A failure is most likely related to an incorrect number of arguments being specified, in which case you should exit with WRONG_PARAM_COUNT.

To retrieve more than one argument, you can use a similar snippet:

zval **param1, **param2, **param3, **param4;

if(zend_get_parameters_ex(4, &param1, &param2, &param3, &param4) != SUCCESS)
    WRONG_PARAM_COUNT;

zend_get_parameters_ex() only checks whether you're trying to retrieve too many parameters. If the function is called with five arguments, but you're only retrieving three of them with zend_get_parameters_ex(), you won't get an error but will get the first three parameters instead. Subsequent calls of zend_get_parameters_ex() won't retrieve the remaining arguments, but will get the same arguments again.

Dealing with a Variable Number of Arguments/Optional Parameters

If your function is meant to accept a variable number of arguments, the snippets just described are sometimes suboptimal solutions. You have to create a line calling zend_get_parameters_ex() for every possible number of arguments, which is often unsatisfying.

For this case, you can use the function zend_get_parameters_array_ex(), which accepts the number of parameters to retrieve and an array in which to store them:

zval **parameter_array[4];

/* get the number of arguments */
argument_count = ZEND_NUM_ARGS();

/* see if it satisfies our minimal request (2 arguments) */
/* and our maximal acceptance (4 arguments) */
if(argument_count < 2 || argument_count > 4)
    WRONG_PARAM_COUNT;

/* argument count is correct, now retrieve arguments */
if(zend_get_parameters_array_ex(argument_count, parameter_array) != SUCCESS)
    WRONG_PARAM_COUNT;
First, the number of arguments is checked to make sure that it's in the accepted range. After that, zend_get_parameters_array_ex() is used to fill parameter_array with valid pointers to the argument values.

A very clever implementation of this can be found in the code handling PHP's fsockopen() located in ext/standard/fsock.c, as shown in PHP's implementation of variable arguments in fsockopen().. Don't worry if you don't know all the functions used in this source yet; we'll get to them shortly.

Exemplo #6 PHP's implementation of variable arguments in fsockopen().

pval **args[5];
int *sock=emalloc(sizeof(int));
int *sockp;
int arg_count=ARG_COUNT(ht);
int socketd = -1;
unsigned char udp = 0;
struct timeval timeout = { 60, 0 };
unsigned short portno;
unsigned long conv;
char *key = NULL;
FLS_FETCH();

if (arg_count > 5 || arg_count < 2 || zend_get_parameters_array_ex(arg_count,args)==FAILURE) {
    CLOSE_SOCK(1);
    WRONG_PARAM_COUNT;
}

switch(arg_count) {
    case 5:
        convert_to_double_ex(args[4]);
        conv = (unsigned long) (Z_DVAL_PP(args[4]) * 1000000.0);
        timeout.tv_sec = conv / 1000000;
        timeout.tv_usec = conv % 1000000;
        /* fall-through */
    case 4:
        if (!PZVAL_IS_REF(*args[3])) {
            php_error(E_WARNING,"error string argument to fsockopen not passed by reference");
        }
        pval_copy_constructor(*args[3]);
        ZVAL_EMPTY_STRING(*args[3]);
        /* fall-through */
    case 3:
        if (!PZVAL_IS_REF(*args[2])) {
            php_error(E_WARNING,"error argument to fsockopen not passed by reference");
            return;
        }
        ZVAL_LONG(*args[2], 0);
        break;
}

convert_to_string_ex(args[0]);
convert_to_long_ex(args[1]);
portno = (unsigned short) Z_LVAL_P(args[1]);

key = emalloc(Z_STRLEN_P(args[0]) + 10);

fsockopen() accepts two, three, four, or five parameters. After the obligatory variable declarations, the function checks for the correct range of arguments. Then it uses a fall-through mechanism in a switch() statement to deal with all arguments. The switch() statement starts with the maximum number of arguments being passed (five). After that, it automatically processes the case of four arguments being passed, then three, by omitting the otherwise obligatory break keyword in all stages. After having processed the last case, it exits the switch() statement and does the minimal argument processing needed if the function is invoked with only two arguments.

This multiple-stage type of processing, similar to a stairway, allows convenient processing of a variable number of arguments.

Accessing Arguments

To access arguments, it's necessary for each argument to have a clearly defined type. Again, PHP's extremely dynamic nature introduces some quirks. Because PHP never does any kind of type checking, it's possible for a caller to pass any kind of data to your functions, whether you want it or not. If you expect an integer, for example, the caller might pass an array, and vice versa - PHP simply won't notice.

To work around this, you have to use a set of API functions to force a type conversion on every argument that's being passed (see Argument Conversion Functions).

Note: All conversion functions expect a **zval as parameter.

Argument Conversion Functions
Function | Description
convert_to_boolean_ex() | Forces conversion to a Boolean type. Boolean values remain untouched. Longs, doubles, and strings containing 0 as well as NULL values will result in Boolean 0 (FALSE). Arrays and objects are converted based on the number of entries or properties, respectively, that they have. Empty arrays and objects are converted to FALSE; otherwise, to TRUE. All other values result in a Boolean 1 (TRUE).
convert_to_long_ex() | Forces conversion to a long, the default integer type. NULL values, Booleans, resources, and of course longs remain untouched. Doubles are truncated. Strings containing an integer are converted to their corresponding numeric representation, otherwise resulting in 0. Arrays and objects are converted to 0 if empty, 1 otherwise.
convert_to_double_ex() | Forces conversion to a double, the default floating-point type. NULL values, Booleans, resources, longs, and of course doubles remain untouched. Strings containing a number are converted to their corresponding numeric representation, otherwise resulting in 0.0. Arrays and objects are converted to 0.0 if empty, 1.0 otherwise.
convert_to_string_ex() | Forces conversion to a string. Strings remain untouched. NULL values are converted to an empty string. Booleans containing TRUE are converted to "1", otherwise resulting in an empty string. Longs and doubles are converted to their corresponding string representation. Arrays are converted to the string "Array" and objects to the string "Object".
convert_to_array_ex(value) | Forces conversion to an array. Arrays remain untouched. Objects are converted to an array by assigning all their properties to the array table. All property names are used as keys, property contents as values. NULL values are converted to an empty array. All other values are converted to an array that contains the specific source value in the element with the key 0.
convert_to_object_ex(value) | Forces conversion to an object. Objects remain untouched. NULL values are converted to an empty object. Arrays are converted to objects by introducing their keys as properties into the objects and their values as corresponding property contents in the object. All other types result in an object with the property scalar , having the corresponding source value as content.
convert_to_null_ex(value) | Forces the type to become a NULL value, meaning empty.

Nota:

You can find a demonstration of the behavior in cross_conversion.php on the accompanying CD-ROM.

Cross-conversion behavior of PHP.

Using these functions on your arguments will ensure type safety for all data that's passed to you. If the supplied type doesn't match the required type, PHP forces dummy contents on the resulting value (empty strings, arrays, or objects, 0 for numeric values, FALSE for Booleans) to ensure a defined state.

Following is a quote from the sample module discussed previously, which makes use of the conversion functions:

zval **parameter;

if((ZEND_NUM_ARGS() != 1) || (zend_get_parameters_ex(1, &parameter) != SUCCESS))
{
    WRONG_PARAM_COUNT;
}

convert_to_long_ex(parameter);

RETURN_LONG(Z_LVAL_P(parameter));
After retrieving the parameter pointer, the parameter value is converted to a long (an integer), which also forms the return value of this function. Understanding access to the contents of the value requires a short discussion of the zval type, whose definition is shown in PHP/Zend zval type definition..

Exemplo #7 PHP/Zend zval type definition.

typedef pval zval;

typedef struct _zval_struct zval;

typedef union _zvalue_value {
    long lval;                 /* long value */
    double dval;               /* double value */
    struct {
        char *val;
        int len;
    } str;
    HashTable *ht;             /* hash table value */
    struct {
        zend_class_entry *ce;
        HashTable *properties;
    } obj;
} zvalue_value;

struct _zval_struct {
    /* Variable information */
    zvalue_value value;        /* value */
    unsigned char type;        /* active type */
    unsigned char is_ref;
    short refcount;
};

Actually, pval (defined in php.h) is only an alias of zval (defined in zend.h), which in turn refers to _zval_struct. This is a most interesting structure. _zval_struct is the "master" structure, containing the value structure, type, and reference information. The substructure zvalue_value is a union that contains the variable's contents. Depending on the variable's type, you'll have to access different members of this union. For a description of both structures, see Zend zval Structure, Zend zvalue_value Structure and Zend Variable Type Constants.

Zend zval Structure
Entry | Description
value | Union containing this variable's contents. See Zend zvalue_value Structure for a description.
type | Contains this variable's type. For a list of available types, see Zend Variable Type Constants.
is_ref | 0 means that this variable is not a reference; 1 means that this variable is a reference to another variable.
refcount | The number of references that exist for this variable. For every new reference to the value stored in this variable, this counter is increased by 1. For every lost reference, this counter is decreased by 1. When the reference counter reaches 0, no references exist to this value anymore, which causes automatic freeing of the value.
Zend zvalue_value Structure
Entry | Description
lval | Use this property if the variable is of the type IS_LONG, IS_BOOLEAN, or IS_RESOURCE.
dval | Use this property if the variable is of the type IS_DOUBLE.
str | This structure can be used to access variables of the type IS_STRING. The member len contains the string length; the member val points to the string itself. Zend uses C strings; thus, the string length contains a trailing 0x00.
ht | This entry points to the variable's hash table entry if the variable is an array.
obj | Use this property if the variable is of the type IS_OBJECT.
Zend Variable Type Constants
Constant | Description
IS_NULL | Denotes a NULL (empty) value.
IS_LONG | A long (integer) value.
IS_DOUBLE | A double (floating point) value.
IS_STRING | A string.
IS_ARRAY | Denotes an array.
IS_OBJECT | An object.
IS_BOOL | A Boolean value.
IS_RESOURCE | A resource (for a discussion of resources, see the appropriate section below).
IS_CONSTANT | A constant (defined) value.

To access a long you access zval.value.lval, to access a double you use zval.value.dval, and so on. Because all values are stored in a union, trying to access data with incorrect union members results in meaningless output.

Accessing arrays and objects is a bit more complicated and is discussed later.

Dealing with Arguments Passed by Reference

If your function accepts arguments passed by reference that you intend to modify, you need to take some precautions.

What we didn't say yet is that under the circumstances presented so far, you don't have write access to any zval containers designating function parameters that have been passed to you. Of course, you can change any zval containers that you created within your function, but you mustn't change any zvals that refer to Zend-internal data!

We've only discussed the so-called *_ex() API so far. You may have noticed that the API functions we've used are called zend_get_parameters_ex() instead of zend_get_parameters(), convert_to_long_ex() instead of convert_to_long(), etc. The *_ex() functions form the so-called new "extended" Zend API. They give a minor speed increase over the old API, but as a tradeoff are only meant for providing read-only access.

Because Zend works internally with references, different variables may reference the same value. Write access to a zval container requires this container to contain an isolated value, meaning a value that's not referenced by any other containers. If a zval container were referenced by other containers and you changed the referenced zval, you would automatically change the contents of the other containers referencing this zval (because they'd simply point to the changed value and thus change their own value as well).

zend_get_parameters_ex() doesn't care about this situation, but simply returns a pointer to the desired zval containers, whether they consist of references or not. Its corresponding function in the traditional API, zend_get_parameters(), immediately checks for referenced values. If it finds a reference, it creates a new, isolated zval container; copies the referenced data into this newly allocated space; and then returns a pointer to the new, isolated value.

This action is called zval separation (or pval separation). Because the *_ex() API doesn't perform zval separation, it's considerably faster, while at the same time disabling write access.

To change parameters, however, write access is required. Zend deals with this situation in a special way: Whenever a parameter to a function is passed by reference, it performs automatic zval separation. This means that whenever you're calling a function like this in PHP, Zend will automatically ensure that $parameter is being passed as an isolated value, rendering it to a write-safe state:

my_function(&$parameter);

But this is not the case with regular parameters! All other parameters that are not passed by reference are in a read-only state.

This requires you to make sure that you're really working with a reference - otherwise you might produce unwanted results. To check for a parameter being passed by reference, you can use the macro PZVAL_IS_REF. This macro accepts a zval* to check if it is a reference or not. Examples are given in in Testing for referenced parameter passing..

Exemplo #8 Testing for referenced parameter passing.

zval *parameter;

if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &parameter) == FAILURE)
    return;

/* check for parameter being passed by reference */
if (!PZVAL_IS_REF(parameter)) {
{
    zend_error(E_WARNING, "Parameter wasn't passed by reference");
    RETURN_NULL();
}

/* make changes to the parameter */
ZVAL_LONG(parameter, 10);
Testing for referenced parameter passing

Assuring Write Safety for Other Parameters

You might run into a situation in which you need write access to a parameter that's retrieved with zend_get_parameters_ex() but not passed by reference. For this case, you can use the macro SEPARATE_ZVAL, which does a zval separation on the provided container. The newly generated zval is detached from internal data and has only a local scope, meaning that it can be changed or destroyed without implying global changes in the script context:

zval **parameter;

/* retrieve parameter */
zend_get_parameters_ex(1, &parameter);

/* at this stage, <parameter> still is connected */
/* to Zend's internal data buffers */

/* make <parameter> write-safe */
SEPARATE_ZVAL(parameter);

/* now we can safely modify <parameter> */
/* without implying global changes */
SEPARATE_ZVAL uses emalloc() to allocate the new zval container, which means that even if you don't deallocate this memory yourself, it will be destroyed automatically upon script termination. However, doing a lot of calls to this macro without freeing the resulting containers will clutter up your RAM.

Note: As you can easily work around the lack of write access in the "traditional" API (with zend_get_parameters() and so on), this API seems to be obsolete, and is not discussed further in this chapter.

Creating Variables

When exchanging data from your own extensions with PHP scripts, one of the most important issues is the creation of variables. This section shows you how to deal with the variable types that PHP supports.

Overview

To create new variables that can be seen "from the outside" by the executing script, you need to allocate a new zval container, fill this container with meaningful values, and then introduce it to Zend's internal symbol table. This basic process is common to all variable creations:

zval *new_variable;

/* allocate and initialize new container */
MAKE_STD_ZVAL(new_variable);

/* set type and variable contents here, see the following sections */

/* introduce this variable by the name "new_variable_name" into the symbol table */
ZEND_SET_SYMBOL(EG(active_symbol_table), "new_variable_name", new_variable);

/* the variable is now accessible to the script by using $new_variable_name */

The macro MAKE_STD_ZVAL allocates a new zval container using ALLOC_ZVAL and initializes it using INIT_ZVAL. As implemented in Zend at the time of this writing, initializing means setting the reference count to 1 and clearing the is_ref flag, but this process could be extended later - this is why it's a good idea to keep using MAKE_STD_ZVAL instead of only using ALLOC_ZVAL. If you want to optimize for speed (and you don't have to explicitly initialize the zval container here), you can use ALLOC_ZVAL, but this isn't recommended because it doesn't ensure data integrity.

ZEND_SET_SYMBOL takes care of introducing the new variable to Zend's symbol table. This macro checks whether the value already exists in the symbol table and converts the new symbol to a reference if so (with automatic deallocation of the old zval container). This is the preferred method if speed is not a crucial issue and you'd like to keep memory usage low.

Note that ZEND_SET_SYMBOL makes use of the Zend executor globals via the macro EG. By specifying EG(active_symbol_table), you get access to the currently active symbol table, dealing with the active, local scope. The local scope may differ depending on whether the function was invoked from within a function.

If you need to optimize for speed and don't care about optimal memory usage, you can omit the check for an existing variable with the same value and instead force insertion into the symbol table by using zend_hash_update():

zval *new_variable;

/* allocate and initialize new container */
MAKE_STD_ZVAL(new_variable);

/* set type and variable contents here, see the following sections */

/* introduce this variable by the name "new_variable_name" into the symbol table */
zend_hash_update(
    EG(active_symbol_table),
    "new_variable_name",
    strlen("new_variable_name") + 1,
    &new_variable,
    sizeof(zval *),
    NULL
);
This is actually the standard method used in most modules.

The variables generated with the snippet above will always be of local scope, so they reside in the context in which the function has been called. To create new variables in the global scope, use the same method but refer to another symbol table:

zval *new_variable;

// allocate and initialize new container
MAKE_STD_ZVAL(new_variable);

//
// set type and variable contents here
//

// introduce this variable by the name "new_variable_name" into the global symbol table
ZEND_SET_SYMBOL(&EG(symbol_table), "new_variable_name", new_variable);
The macro ZEND_SET_SYMBOL is now being called with a reference to the main, global symbol table by referring EG(symbol_table).

Note: The active_symbol_table variable is a pointer, but symbol_table is not. This is why you have to use EG(active_symbol_table) and &EG(symbol_table) as parameters to ZEND_SET_SYMBOL - it requires a pointer.

Similarly, to get a more efficient version, you can hardcode the symbol table update:

zval *new_variable;

// allocate and initialize new container
MAKE_STD_ZVAL(new_variable);

//
// set type and variable contents here
//

// introduce this variable by the name "new_variable_name" into the global symbol table
zend_hash_update(
    &EG(symbol_table),
    "new_variable_name",
    strlen("new_variable_name") + 1,
    &new_variable,
    sizeof(zval *),
    NULL
);
Creating variables with different scopes. shows a sample source that creates two variables - local_variable with a local scope and global_variable with a global scope (see Figure 9.7). The full example can be found on the CD-ROM.

Note: You can see that the global variable is actually not accessible from within the function. This is because it's not imported into the local scope using global $global_variable; in the PHP source.

Exemplo #9 Creating variables with different scopes.

ZEND_FUNCTION(variable_creation)
{
    zval *new_var1, *new_var2;

    MAKE_STD_ZVAL(new_var1);
    MAKE_STD_ZVAL(new_var2);

    ZVAL_LONG(new_var1, 10);
    ZVAL_LONG(new_var2, 5);

    ZEND_SET_SYMBOL(EG(active_symbol_table), "local_variable", new_var1);
    ZEND_SET_SYMBOL(&EG(symbol_table), "global_variable", new_var2);

    RETURN_NULL();

}
Creating variables with different scopes

Longs (Integers)

Now let's get to the assignment of data to variables, starting with longs. Longs are PHP's integers and are very simple to store. Looking at the zval.value container structure discussed earlier in this chapter, you can see that the long data type is directly contained in the union, namely in the lval field. The corresponding type value for longs is IS_LONG (see Creation of a long.).

Exemplo #10 Creation of a long.

zval *new_long;

MAKE_STD_ZVAL(new_long);

new_long-&gt;type = IS_LONG;
new_long-&gt;value.lval = 10;
Alternatively, you can use the macro ZVAL_LONG:
zval *new_long;

MAKE_STD_ZVAL(new_long);
ZVAL_LONG(new_long, 10);

Doubles (Floats)

Doubles are PHP's floats and are as easy to assign as longs, because their value is also contained directly in the union. The member in the zval.value container is dval; the corresponding type is IS_DOUBLE.

zval *new_double;

MAKE_STD_ZVAL(new_double);

new_double-&gt;type = IS_DOUBLE;
new_double-&gt;value.dval = 3.45;
Alternatively, you can use the macro ZVAL_DOUBLE:
zval *new_double;

MAKE_STD_ZVAL(new_double);
ZVAL_DOUBLE(new_double, 3.45);

Strings

Strings need slightly more effort. As mentioned earlier, all strings that will be associated with Zend's internal data structures need to be allocated using Zend's own memory-management functions. Referencing of static strings or strings allocated with standard routines is not allowed. To assign strings, you have to access the structure str in the zval.value container. The corresponding type is IS_STRING:

zval *new_string;
char *string_contents = "This is a new string variable";

MAKE_STD_ZVAL(new_string);

new_string-&gt;type = IS_STRING;
new_string-&gt;value.str.len = strlen(string_contents);
new_string-&gt;value.str.val = estrdup(string_contents);
Note the usage of Zend's estrdup() here. Of course, you can also use the predefined macro ZVAL_STRING:
zval *new_string;
char *string_contents = "This is a new string variable";

MAKE_STD_ZVAL(new_string);
ZVAL_STRING(new_string, string_contents, 1);
ZVAL_STRING accepts a third parameter that indicates whether the supplied string contents should be duplicated (using estrdup()). Setting this parameter to 1 causes the string to be duplicated; 0 simply uses the supplied pointer for the variable contents. This is most useful if you want to create a new variable referring to a string that's already allocated in Zend internal memory.

If you want to truncate the string at a certain position or you already know its length, you can use ZVAL_STRINGL(zval, string, length, duplicate), which accepts an explicit string length to be set for the new string. This macro is faster than ZVAL_STRING and also binary-safe.

To create empty strings, set the string length to 0 and use empty_string as contents:

new_string-&gt;type = IS_STRING;
new_string-&gt;value.str.len = 0;
new_string-&gt;value.str.val = empty_string;
Of course, there's a macro for this as well (ZVAL_EMPTY_STRING):
MAKE_STD_ZVAL(new_string);
ZVAL_EMPTY_STRING(new_string);

Booleans

Booleans are created just like longs, but have the type IS_BOOL. Allowed values in lval are 0 and 1:

zval *new_bool;

MAKE_STD_ZVAL(new_bool);

new_bool-&gt;type = IS_BOOL;
new_bool-&gt;value.lval = 1;
The corresponding macros for this type are ZVAL_BOOL (allowing specification of the value) as well as ZVAL_TRUE and ZVAL_FALSE (which explicitly set the value to TRUE and FALSE, respectively).

Arrays

Arrays are stored using Zend's internal hash tables, which can be accessed using the zend_hash_*() API. For every array that you want to create, you need a new hash table handle, which will be stored in the ht member of the zval.value container.

There's a whole API solely for the creation of arrays, which is extremely handy. To start a new array, you call array_init().

zval *new_array;

MAKE_STD_ZVAL(new_array);

array_init(new_array);
array_init() always returns SUCCESS.

To add new elements to the array, you can use numerous functions, depending on what you want to do. Zend's API for Associative Arrays, Zend's API for Indexed Arrays, Part 1 and Zend's API for Indexed Arrays, Part 2 describe these functions. All functions return FAILURE on failure and SUCCESS on success.

Zend's API for Associative Arrays
Function | Description
add_assoc_long(zval *array, char *key, long n);() | Adds an element of type long.
add_assoc_unset(zval *array, char *key);() | Adds an unset element.
add_assoc_bool(zval *array, char *key, int b);() | Adds a Boolean element.
add_assoc_resource(zval *array, char *key, int r);() | Adds a resource to the array.
add_assoc_double(zval *array, char *key, double d);() | Adds a floating-point value.
add_assoc_string(zval *array, char *key, char *str, int duplicate);() | Adds a string to the array. The flag duplicate specifies whether the string contents have to be copied to Zend internal memory.
add_assoc_stringl(zval *array, char *key, char *str, uint length, int duplicate); () | Adds a string with the desired length length to the array. Otherwise, behaves like add_assoc_string().
add_assoc_zval(zval *array, char *key, zval *value);() | Adds a zval to the array. Useful for adding other arrays, objects, streams, etc...
Zend's API for Indexed Arrays, Part 1
Function | Description
add_index_long(zval *array, uint idx, long n);() | Adds an element of type long.
add_index_unset(zval *array, uint idx);() | Adds an unset element.
add_index_bool(zval *array, uint idx, int b);() | Adds a Boolean element.
add_index_resource(zval *array, uint idx, int r);() | Adds a resource to the array.
add_index_double(zval *array, uint idx, double d);() | Adds a floating-point value.
add_index_string(zval *array, uint idx, char *str, int duplicate);() | Adds a string to the array. The flag duplicate specifies whether the string contents have to be copied to Zend internal memory.
add_index_stringl(zval *array, uint idx, char *str, uint length, int duplicate);() | Adds a string with the desired length length to the array. This function is faster and binary-safe. Otherwise, behaves like add_index_string().
add_index_zval(zval *array, uint idx, zval *value);() | Adds a zval to the array. Useful for adding other arrays, objects, streams, etc...
Zend's API for Indexed Arrays, Part 2
Function | Description
add_next_index_long(zval *array, long n);() | Adds an element of type long.
add_next_index_unset(zval *array);() | Adds an unset element.
add_next_index_bool(zval *array, int b);() | Adds a Boolean element.
add_next_index_resource(zval *array, int r);() | Adds a resource to the array.
add_next_index_double(zval *array, double d);() | Adds a floating-point value.
add_next_index_string(zval *array, char *str, int duplicate);() | Adds a string to the array. The flag duplicate specifies whether the string contents have to be copied to Zend internal memory.
add_next_index_stringl(zval *array, char *str, uint length, int duplicate);() | Adds a string with the desired length length to the array. This function is faster and binary-safe. Otherwise, behaves like add_index_string().
add_next_index_zval(zval *array, zval *value);() | Adds a zval to the array. Useful for adding other arrays, objects, streams, etc...

All these functions provide a handy abstraction to Zend's internal hash API. Of course, you can also use the hash functions directly - for example, if you already have a zval container allocated that you want to insert into an array. This is done using zend_hash_update() for associative arrays (see Adding an element to an associative array.) and zend_hash_index_update() for indexed arrays (see Adding an element to an indexed array.):

Exemplo #11 Adding an element to an associative array.

zval *new_array, *new_element;
char *key = "element_key";

MAKE_STD_ZVAL(new_array);
MAKE_STD_ZVAL(new_element);

array_init(new_array);

ZVAL_LONG(new_element, 10);

if(zend_hash_update(new_array-&gt;value.ht, key, strlen(key) + 1, (void *)&new_element, sizeof(zval *), NULL) == FAILURE)
{
    // do error handling here
}

Exemplo #12 Adding an element to an indexed array.

zval *new_array, *new_element;
int key = 2;

MAKE_STD_ZVAL(new_array);
MAKE_STD_ZVAL(new_element);

array_init(new_array);

ZVAL_LONG(new_element, 10);

if(zend_hash_index_update(new_array-&gt;value.ht, key, (void *)&new_element, sizeof(zval *), NULL) == FAILURE)
{
    // do error handling here
}

To emulate the functionality of add_next_index_*(), you can use this:

zend_hash_next_index_insert(ht, zval **new_element, sizeof(zval *), NULL)

Note: To return arrays from a function, use array_init() and all following actions on the predefined variable return_value (given as argument to your exported function; see the earlier discussion of the call interface). You do not have to use MAKE_STD_ZVAL on this.

Tip: To avoid having to write new_array->value.ht every time, you can use HASH_OF(new_array), which is also recommended for compatibility and style reasons.

Objects

Since objects can be converted to arrays (and vice versa), you might have already guessed that they have a lot of similarities to arrays in PHP. Objects are maintained with the same hash functions, but there's a different API for creating them.

To initialize an object, you use the function object_init():

zval *new_object;

MAKE_STD_ZVAL(new_object);

if(object_init(new_object) != SUCCESS)
{
    // do error handling here
}
You can use the functions described in Zend's API for Object Creation to add members to your object.

Zend's API for Object Creation
Function | Description
add_property_long(zval *object, char *key, long l);() | Adds a long to the object.
add_property_unset(zval *object, char *key);() | Adds an unset property to the object.
add_property_bool(zval *object, char *key, int b);() | Adds a Boolean to the object.
add_property_resource(zval *object, char *key, long r);() | Adds a resource to the object.
add_property_double(zval *object, char *key, double d);() | Adds a double to the object.
add_property_string(zval *object, char *key, char *str, int duplicate);() | Adds a string to the object.
add_property_stringl(zval *object, char *key, char *str, uint length, int duplicate);() | Adds a string of the specified length to the object. This function is faster than add_property_string() and also binary-safe.
add_property_zval(zval *obect, char *key, zval *container):() | Adds a zval container to the object. This is useful if you have to add properties which aren't simple types like integers or strings but arrays or other objects.

Resources

Resources are a special kind of data type in PHP. The term resources doesn't really refer to any special kind of data, but to an abstraction method for maintaining any kind of information. Resources are kept in a special resource list within Zend. Each entry in the list has a correspondending type definition that denotes the kind of resource to which it refers. Zend then internally manages all references to this resource. Access to a resource is never possible directly - only via a provided API. As soon as all references to a specific resource are lost, a corresponding shutdown function is called.

For example, resources are used to store database links and file descriptors. The de facto standard implementation can be found in the MySQL module, but other modules such as the Oracle module also make use of resources.

Nota:

In fact, a resource can be a pointer to anything you need to handle in your functions (e.g. pointer to a structure) and the user only has to pass a single resource variable to your function.

To create a new resource you need to register a resource destruction handler for it. Since you can store any kind of data as a resource, Zend needs to know how to free this resource if its not longer needed. This works by registering your own resource destruction handler to Zend which in turn gets called by Zend whenever your resource can be freed (whether manually or automatically). Registering your resource handler within Zend returns you the resource type handle for that resource. This handle is needed whenever you want to access a resource of this type later and is most of time stored in a global static variable within your extension. There is no need to worry about thread safety here because you only register your resource handler once during module initialization.

The Zend function to register your resource handler is defined as:

ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, char *type_name, int module_number);

There are two different kinds of resource destruction handlers you can pass to this function: a handler for normal resources and a handler for persistent resources. Persistent resources are for example used for database connection. When registering a resource, either of these handlers must be given. For the other handler just pass NULL.

zend_register_list_destructors_ex() accepts the following parameters:

ld | Normal resource destruction handler callback
pld | Pesistent resource destruction handler callback
type_name | A string specifying the name of your resource. It's always a good thing to specify a unique name within PHP for the resource type so when the user for example calls var_dump($resource); he also gets the name of the resource.
module_number | The module_number is automatically available in your PHP_MINIT_FUNCTION function and therefore you just pass it over.
The return value is a unique integer ID for your resource type.

The resource destruction handler (either normal or persistent resources) has the following prototype:

void resource_destruction_handler(zend_rsrc_list_entry *rsrc TSRMLS_DC);
The passed rsrc is a pointer to the following structure:
typedef struct _zend_rsrc_list_entry {

    void *ptr;
    int type;
    int refcount;

} zend_rsrc_list_entry;
The member void *ptr is the actual pointer to your resource.

Now we know how to start things, we define our own resource we want register within Zend. It is only a simple structure with two integer members:

typedef struct {

    int resource_link;
    int resource_type;

} my_resource;
Our resource destruction handler is probably going to look something like this:
void my_destruction_handler(zend_rsrc_list_entry *rsrc TSRMLS_DC) {

    // You most likely cast the void pointer to your structure type

    my_resource *my_rsrc = (my_resource *) rsrc->ptr;

    // Now do whatever needs to be done with you resource. Closing
    // Files, Sockets, freeing additional memory, etc.
    // Also, don't forget to actually free the memory for your resource too!

    do_whatever_needs_to_be_done_with_the_resource(my_rsrc);
}

Nota:

One important thing to mention: If your resource is a rather complex structure which also contains pointers to memory you allocated during runtime you have to free them before freeing the resource itself!

Now that we have defined

  1. what our resource is and

  2. our resource destruction handler

we can go on and do the rest of the steps:

  1. create a global variable within the extension holding the resource ID so it can be accessed from every function which needs it

  2. define the resource name

  3. write the resource destruction handler

  4. and finally register the handler

// Somewhere in your extension, define the variable for your registered resources.
    // If you wondered what 'le' stands for: it simply means 'list entry'.
    static int le_myresource;

    // It's nice to define your resource name somewhere
    #define le_myresource_name  "My type of resource"

    [...]

    // Now actually define our resource destruction handler
    void my_destruction_handler(zend_rsrc_list_entry *rsrc TSRMLS_DC) {

        my_resource *my_rsrc = (my_resource *) rsrc->ptr;
        do_whatever_needs_to_be_done_with_the_resource(my_rsrc);
    }

    [...]

    PHP_MINIT_FUNCTION(my_extension) {

        // Note that 'module_number' is already provided through the
        // PHP_MINIT_FUNCTION() function definition.

        le_myresource = zend_register_list_destructors_ex(my_destruction_handler, NULL, le_myresource_name, module_number);

        // You can register additional resources, initialize
        // your global vars, constants, whatever.
    }

To actually register a new resource you use can either use the zend_register_resource() function or the ZEND_REGISTER_RESOURE() macro, both defined in zend_list.h. Although the arguments for both map 1:1 it's a good idea to always use macros to be upwards compatible:

int ZEND_REGISTER_RESOURCE(zval *rsrc_result, void *rsrc_pointer, int rsrc_type);
rsrc_result | This is an already initialized zval * container.
rsrc_pointer | Your resource pointer you want to store.
rsrc_type | The type which you received when you registered the resource destruction handler. If you followed the naming scheme this would be le_myresource.
The return value is a unique integer identifier for that resource.

What is really going on when you register a new resource is it gets inserted in an internal list in Zend and the result is just stored in the given zval * container:

rsrc_id = zend_list_insert(rsrc_pointer, rsrc_type);

    if (rsrc_result) {
        rsrc_result->value.lval = rsrc_id;
        rsrc_result->type = IS_RESOURCE;
    }

    return rsrc_id;
The returned rsrc_id uniquely identifies the newly registered resource. You can use the macro RETURN_RESOURE to return it to the user:
    RETURN_RESOURCE(rsrc_id)

Nota:

It is common practice that if you want to return the resource immediately to the user you specify the return_value as the zval * container.

Zend now keeps track of all references to this resource. As soon as all references to the resource are lost, the destructor that you previously registered for this resource is called. The nice thing about this setup is that you don't have to worry about memory leakages introduced by allocations in your module - just register all memory allocations that your calling script will refer to as resources. As soon as the script decides it doesn't need them anymore, Zend will find out and tell you.

Now that the user got his resource, at some point he is passing it back to one of your functions. The value.lval inside the zval * container contains the key to your resource and thus can be used to fetch the resource with the following macro: ZEND_FETCH_RESOURCE:

ZEND_FETCH_RESOURCE(rsrc, rsrc_type, rsrc_id, default_rsrc_id, resource_type_name, resource_type)
rsrc | This is your pointer which will point to your previously registered resource.
rsrc_type | This is the typecast argument for your pointer, e.g. myresource *.
rsrc_id | This is the address of the zval *container the user passed to your function, e.g. &z_resource if zval *z_resource is given.
default_rsrc_id | This integer specifies the default resource ID if no resource could be fetched or -1.
resource_type_name | This is the name of the requested resource. It's a string and is used when the resource can't be found or is invalid to form a meaningful error message.
resource_type | The resource_type you got back when registering the resource destruction handler. In our example this was le_myresource.
This macro has no return value. It is for the developers convenience and takes care of TSRMLS arguments passing and also does check if the resource could be fetched. It throws a warning message and returns the current PHP function with NULL if there was a problem retrieving the resource.

To force removal of a resource from the list, use the function zend_list_delete(). You can also force the reference count to increase if you know that you're creating another reference for a previously allocated value (for example, if you're automatically reusing a default database link). For this case, use the function zend_list_addref(). To search for previously allocated resource entries, use zend_list_find(). The complete API can be found in zend_list.h.

Macros for Automatic Global Variable Creation

In addition to the macros discussed earlier, a few macros allow easy creation of simple global variables. These are nice to know in case you want to introduce global flags, for example. This is somewhat bad practice, but Table Macros for Global Variable Creation describes macros that do exactly this task. They don't need any zval allocation; you simply have to supply a variable name and value.

Macros for Global Variable Creation
Macro | Description
SET_VAR_STRING(name, value) | Creates a new string.
SET_VAR_STRINGL(name, value, length) | Creates a new string of the specified length. This macro is faster than SET_VAR_STRING and also binary-safe.
SET_VAR_LONG(name, value) | Creates a new long.
SET_VAR_DOUBLE(name, value) | Creates a new double.

Creating Constants

Zend supports the creation of true constants (as opposed to regular variables). Constants are accessed without the typical dollar sign ($) prefix and are available in all scopes. Examples include TRUE and FALSE, to name just two.

To create your own constants, you can use the macros in Macros for Creating Constants. All the macros create a constant with the specified name and value.

You can also specify flags for each constant:

  • CONST_CS - This constant's name is to be treated as case sensitive.

  • CONST_PERSISTENT - This constant is persistent and won't be "forgotten" when the current process carrying this constant shuts down.

To use the flags, combine them using a inary OR:
 // register a new constant of type "long"
     REGISTER_LONG_CONSTANT("NEW_MEANINGFUL_CONSTANT", 324, CONST_CS |
     CONST_PERSISTENT);
There are two types of macros - REGISTER_*_CONSTANT andREGISTER_MAIN_*_CONSTANT. The first type creates constants bound to the current module. These constants are dumped from the symbol table as soon as the module that registered the constant is unloaded from memory. The second type creates constants that remain in the symbol table independently of the module.

Macros for Creating Constants
Macro | Description
REGISTER_LONG_CONSTANT(name, value, flags) REGISTER_MAIN_LONG_CONSTANT(name, value, flags) | Registers a new constant of type long.
REGISTER_DOUBLE_CONSTANT(name, value, flags) REGISTER_MAIN_DOUBLE_CONSTANT(name, value, flags) | Registers a new constant of type double.
REGISTER_STRING_CONSTANT(name, value, flags) REGISTER_MAIN_STRING_CONSTANT(name, value, flags) | Registers a new constant of type string. The specified string must reside in Zend's internal memory.
REGISTER_STRINGL_CONSTANT(name, value, length, flags) REGISTER_MAIN_STRINGL_CONSTANT(name, value, length, flags) | Registers a new constant of type string. The string length is explicitly set to length. The specified string must reside in Zend's internal memory.

Duplicating Variable Contents: The Copy Constructor

Sooner or later, you may need to assign the contents of one zval container to another. This is easier said than done, since the zval container doesn't contain only type information, but also references to places in Zend's internal data. For example, depending on their size, arrays and objects may be nested with lots of hash table entries. By assigning one zval to another, you avoid duplicating the hash table entries, using only a reference to them (at most).

To copy this complex kind of data, use the copy constructor. Copy constructors are typically defined in languages that support operator overloading, with the express purpose of copying complex types. If you define an object in such a language, you have the possibility of overloading the "=" operator, which is usually responsible for assigning the contents of the rvalue (result of the evaluation of the right side of the operator) to the lvalue (same for the left side).

Overloading means assigning a different meaning to this operator, and is usually used to assign a function call to an operator. Whenever this operator would be used on such an object in a program, this function would be called with the lvalue and rvalue as parameters. Equipped with that information, it can perform the operation it intends the "=" operator to have (usually an extended form of copying).

This same form of "extended copying" is also necessary for PHP's zval containers. Again, in the case of an array, this extended copying would imply re-creation of all hash table entries relating to this array. For strings, proper memory allocation would have to be assured, and so on.

Zend ships with such a function, called zend_copy_ctor() (the previous PHP equivalent was pval_copy_constructor()).

A most useful demonstration is a function that accepts a complex type as argument, modifies it, and then returns the argument:

zval *parameter;

if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &parameter) == FAILURE)
   return;
}

// do modifications to the parameter here

// now we want to return the modified container:
*return_value = *parameter;
zval_copy_ctor(return_value);

The first part of the function is plain-vanilla argument retrieval. After the (left out) modifications, however, it gets interesting: The container of parameter is assigned to the (predefined) return_value container. Now, in order to effectively duplicate its contents, the copy constructor is called. The copy constructor works directly with the supplied argument, and the standard return values are FAILURE on failure and SUCCESS on success.

If you omit the call to the copy constructor in this example, both parameter and return_value would point to the same internal data, meaning that return_value would be an illegal additional reference to the same data structures. Whenever changes occurred in the data that parameter points to, return_value might be affected. Thus, in order to create separate copies, the copy constructor must be used.

The copy constructor's counterpart in the Zend API, the destructor zval_dtor(), does the opposite of the constructor.

Returning Values

Returning values from your functions to PHP was described briefly in an earlier section; this section gives the details. Return values are passed via the return_value variable, which is passed to your functions as argument. The return_value argument consists of a zval container (see the earlier discussion of the call interface) that you can freely modify. The container itself is already allocated, so you don't have to run MAKE_STD_ZVAL on it. Instead, you can access its members directly.

To make returning values from functions easier and to prevent hassles with accessing the internal structures of the zval container, a set of predefined macros is available (as usual). These macros automatically set the correspondent type and value, as described in Predefined Macros for Returning Values from a Function and Predefined Macros for Setting the Return Value of a Function.

Nota:

The macros in Predefined Macros for Returning Values from a Function automatically return from your function, those in Predefined Macros for Setting the Return Value of a Function only set the return value; they don't return from your function.

Predefined Macros for Returning Values from a Function
Macro | Description
RETURN_RESOURCE(resource) | Returns a resource.
RETURN_BOOL(bool) | Returns a Boolean.
RETURN_NULL() | Returns nothing (a NULL value).
RETURN_LONG(long) | Returns a long.
RETURN_DOUBLE(double) | Returns a double.
RETURN_STRING(string, duplicate) | Returns a string. The duplicate flag indicates whether the string should be duplicated using estrdup().
RETURN_STRINGL(string, length, duplicate) | Returns a string of the specified length; otherwise, behaves like RETURN_STRING. This macro is faster and binary-safe, however.
RETURN_EMPTY_STRING() | Returns an empty string.
RETURN_FALSE | Returns Boolean false.
RETURN_TRUE | Returns Boolean true.
Predefined Macros for Setting the Return Value of a Function
Macro | Description
RETVAL_RESOURCE(resource) | Sets the return value to the specified resource.
RETVAL_BOOL(bool) | Sets the return value to the specified Boolean value.
RETVAL_NULL | Sets the return value to NULL.
RETVAL_LONG(long) | Sets the return value to the specified long.
RETVAL_DOUBLE(double) | Sets the return value to the specified double.
RETVAL_STRING(string, duplicate) | Sets the return value to the specified string and duplicates it to Zend internal memory if desired (see also RETURN_STRING).
RETVAL_STRINGL(string, length, duplicate) | Sets the return value to the specified string and forces the length to become length (see also RETVAL_STRING). This macro is faster and binary-safe, and should be used whenever the string length is known.
RETVAL_EMPTY_STRING | Sets the return value to an empty string.
RETVAL_FALSE | Sets the return value to Boolean false.
RETVAL_TRUE | Sets the return value to Boolean true.

Complex types such as arrays and objects can be returned by using array_init() and object_init(), as well as the corresponding hash functions on return_value. Since these types cannot be constructed of trivial information, there are no predefined macros for them.

Printing Information

Often it's necessary to print messages to the output stream from your module, just as print() would be used within a script. PHP offers functions for most generic tasks, such as printing warning messages, generating output for phpinfo(), and so on. The following sections provide more details. Examples of these functions can be found on the CD-ROM.

zend_printf()

zend_printf() works like the standard printf(), except that it prints to Zend's output stream.

zend_error()

zend_error() can be used to generate error messages. This function accepts two arguments; the first is the error type (see zend_errors.h), and the second is the error message.

zend_error(E_WARNING, "This function has been called with empty arguments");
Zend's Predefined Error Messages. shows a list of possible values (see below). These values are also referred to in php.ini. Depending on which error type you choose, your messages will be logged.
Zend's Predefined Error Messages.
Error | Description
E_ERROR | Signals an error and terminates execution of the script immediately.
E_WARNING | Signals a generic warning. Execution continues.
E_PARSE | Signals a parser error. Execution continues.
E_NOTICE | Signals a notice. Execution continues. Note that by default the display of this type of error messages is turned off in php.ini.
E_CORE_ERROR | Internal error by the core; shouldn't be used by user-written modules.
E_COMPILE_ERROR | Internal error by the compiler; shouldn't be used by user-written modules.
E_COMPILE_WARNING | Internal warning by the compiler; shouldn't be used by user-written modules.
Display of warning messages in the browser.

Including Output in phpinfo()

After creating a real module, you'll want to show information about the module in phpinfo() (in addition to the module name, which appears in the module list by default). PHP allows you to create your own section in the phpinfo() output with the ZEND_MINFO() function. This function should be placed in the module descriptor block (discussed earlier) and is always called whenever a script calls phpinfo().

PHP automatically prints a section in phpinfo() for you if you specify the ZEND_MINFO function, including the module name in the heading. Everything else must be formatted and printed by you.

Typically, you can print an HTML table header using php_info_print_table_start() and then use the standard functions php_info_print_table_header() and php_info_print_table_row(). As arguments, both take the number of columns (as integers) and the column contents (as strings). Source code and screenshot for output in phpinfo. shows a source example and its output. To print the table footer, use php_info_print_table_end().

Exemplo #13 Source code and screenshot for output in phpinfo().

php_info_print_table_start();
php_info_print_table_header(2, "First column", "Second column");
php_info_print_table_row(2, "Entry in first row", "Another entry");
php_info_print_table_row(2, "Just to fill", "another row here");
php_info_print_table_end();
Output of phpinfo()

Execution Information

You can also print execution information, such as the current file being executed. The name of the function currently being executed can be retrieved using the function get_active_function_name(). This function returns a pointer to the function name and doesn't accept any arguments. To retrieve the name of the file currently being executed, use zend_get_executed_filename(). This function accesses the executor globals, which are passed to it using the TSRMLS_C macro. The executor globals are automatically available to every function that's called directly by Zend (they're part of the INTERNAL_FUNCTION_PARAMETERS described earlier in this chapter). If you want to access the executor globals in another function that doesn't have them available automatically, call the macro TSRMLS_FETCH() once in that function; this will introduce them to your local scope.

Finally, the line number currently being executed can be retrieved using the function zend_get_executed_lineno(). This function also requires the executor globals as arguments. For examples of these functions, see Printing execution information..

Exemplo #14 Printing execution information.

zend_printf("The name of the current function is %s&lt;br&gt;", get_active_function_name(TSRMLS_C));
zend_printf("The file currently executed is %s&lt;br&gt;", zend_get_executed_filename(TSRMLS_C));
zend_printf("The current line being executed is %i&lt;br&gt;", zend_get_executed_lineno(TSRMLS_C));
Printing execution information

Startup and Shutdown Functions

Startup and shutdown functions can be used for one-time initialization and deinitialization of your modules. As discussed earlier in this chapter (see the description of the Zend module descriptor block), there are module, and request startup and shutdown events.

The module startup and shutdown functions are called whenever a module is loaded and needs initialization; the request startup and shutdown functions are called every time a request is processed (meaning that a file is being executed).

For dynamic extensions, module and request startup/shutdown events happen at the same time.

Declaration and implementation of these functions can be done with macros; see the earlier section "Declaration of the Zend Module Block" for details.

Calling User Functions

You can call user functions from your own modules, which is very handy when implementing callbacks; for example, for array walking, searching, or simply for event-based programs.

User functions can be called with the function call_user_function_ex(). It requires a hash value for the function table you want to access, a pointer to an object (if you want to call a method), the function name, return value, number of arguments, argument array, and a flag indicating whether you want to perform zval separation.

ZEND_API int call_user_function_ex(HashTable *function_table, zval *object,
zval *function_name, zval **retval_ptr_ptr,
int param_count, zval **params[],
int no_separation);

Note that you don't have to specify both function_table and object; either will do. If you want to call a method, you have to supply the object that contains this method, in which case call_user_function()automatically sets the function table to this object's function table. Otherwise, you only need to specify function_table and can set object to NULL.

Usually, the default function table is the "root" function table containing all function entries. This function table is part of the compiler globals and can be accessed using the macro CG. To introduce the compiler globals to your function, call the macro TSRMLS_FETCH once.

The function name is specified in a zval container. This might be a bit surprising at first, but is quite a logical step, since most of the time you'll accept function names as parameters from calling functions within your script, which in turn are contained in zval containers again. Thus, you only have to pass your arguments through to this function. This zval must be of type IS_STRING.

The next argument consists of a pointer to the return value. You don't have to allocate memory for this container; the function will do so by itself. However, you have to destroy this container (using zval_dtor()) afterward!

Next is the parameter count as integer and an array containing all necessary parameters. The last argument specifies whether the function should perform zval separation - this should always be set to 0. If set to 1, the function consumes less memory but fails if any of the parameters need separation.

Calling user functions. shows a small demonstration of calling a user function. The code calls a function that's supplied to it as argument and directly passes this function's return value through as its own return value. Note the use of the constructor and destructor calls at the end - it might not be necessary to do it this way here (since they should be separate values, the assignment might be safe), but this is bulletproof.

Exemplo #15 Calling user functions.

zval **function_name;
zval *retval;

if((ZEND_NUM_ARGS() != 1) || (zend_get_parameters_ex(1, &function_name) != SUCCESS))
{
    WRONG_PARAM_COUNT;
}

if((*function_name)->type != IS_STRING)
{
    zend_error(E_ERROR, "Function requires string argument");
}

TSRMSLS_FETCH();

if(call_user_function_ex(CG(function_table), NULL, *function_name, &retval, 0, NULL, 0) != SUCCESS)
{
    zend_error(E_ERROR, "Function call failed");
}

zend_printf("We have %i as type\n", retval->type);

*return_value = *retval;
zval_copy_ctor(return_value);
zval_ptr_dtor(&retval);

<?php

dl("call_userland.so");

function test_function()
{
    echo "We are in the test function!\n";
    return 'hello';
}

$return_value = call_userland("test_function");

echo "Return value: '$return_value'";
?>

O exemplo acima irá imprimir:

We are in the test function!
We have 3 as type
Return value: 'hello'

Initialization File Support

PHP 4 features a redesigned initialization file support. It's now possible to specify default initialization entries directly in your code, read and change these values at runtime, and create message handlers for change notifications.

To create an .ini section in your own module, use the macros PHP_INI_BEGIN() to mark the beginning of such a section and PHP_INI_END() to mark its end. In between you can use PHP_INI_ENTRY() to create entries.

PHP_INI_BEGIN()
PHP_INI_ENTRY("first_ini_entry",  "has_string_value", PHP_INI_ALL, NULL)
PHP_INI_ENTRY("second_ini_entry", "2",                PHP_INI_SYSTEM, OnChangeSecond)
PHP_INI_ENTRY("third_ini_entry",  "xyz",              PHP_INI_USER, NULL)
PHP_INI_END()
The PHP_INI_ENTRY() macro accepts four parameters: the entry name, the entry value, its change permissions, and a pointer to a change-notification handler. Both entry name and value must be specified as strings, regardless of whether they really are strings or integers.

The permissions are grouped into three sections:PHP_INI_SYSTEM allows a change only directly in the php.ini file; PHP_INI_USER allows a change to be overridden by a user at runtime using additional configuration files, such as .htaccess; and PHP_INI_ALL allows changes to be made without restrictions. There's also a fourth level, PHP_INI_PERDIR, for which we couldn't verify its behavior yet.

The fourth parameter consists of a pointer to a change-notification handler. Whenever one of these initialization entries is changed, this handler is called. Such a handler can be declared using the PHP_INI_MH macro:

PHP_INI_MH(OnChangeSecond);             // handler for ini-entry "second_ini_entry"

// specify ini-entries here

PHP_INI_MH(OnChangeSecond)
{

    zend_printf("Message caught, our ini entry has been changed to %s&lt;br&gt;", new_value);

    return(SUCCESS);

}
The new value is given to the change handler as string in the variable new_value. When looking at the definition of PHP_INI_MH, you actually have a few parameters to use:
#define PHP_INI_MH(name) int name(php_ini_entry *entry, char *new_value,
                                  uint new_value_length, void *mh_arg1,
                                  void *mh_arg2, void *mh_arg3)
All these definitions can be found in php_ini.h. Your message handler will have access to a structure that contains the full entry, the new value, its length, and three optional arguments. These optional arguments can be specified with the additional macros PHP_INI_ENTRY1 (allowing one additional argument), PHP_INI_ENTRY2 (allowing two additional arguments), and PHP_INI_ENTRY3 (allowing three additional arguments).

The change-notification handlers should be used to cache initialization entries locally for faster access or to perform certain tasks that are required if a value changes. For example, if a constant connection to a certain host is required by a module and someone changes the hostname, automatically terminate the old connection and attempt a new one.

Access to initialization entries can also be handled with the macros shown in Macros to Access Initialization Entries in PHP.

Macros to Access Initialization Entries in PHP
Macro | Description
INI_INT(name) | Returns the current value of entry name as integer (long).
INI_FLT(name) | Returns the current value of entry name as float (double).
INI_STR(name) | Returns the current value of entry name as string. Note: This string is not duplicated, but instead points to internal data. Further access requires duplication to local memory.
INI_BOOL(name) | Returns the current value of entry name as Boolean (defined as zend_bool, which currently means unsigned char).
INI_ORIG_INT(name) | Returns the original value of entry name as integer (long).
INI_ORIG_FLT(name) | Returns the original value of entry name as float (double).
INI_ORIG_STR(name) | Returns the original value of entry name as string. Note: This string is not duplicated, but instead points to internal data. Further access requires duplication to local memory.
INI_ORIG_BOOL(name) | Returns the original value of entry name as Boolean (defined as zend_bool, which currently means unsigned char).

Finally, you have to introduce your initialization entries to PHP. This can be done in the module startup and shutdown functions, using the macros REGISTER_INI_ENTRIES() and UNREGISTER_INI_ENTRIES():

ZEND_MINIT_FUNCTION(mymodule)
{

    REGISTER_INI_ENTRIES();

}

ZEND_MSHUTDOWN_FUNCTION(mymodule)
{

    UNREGISTER_INI_ENTRIES();

}

Where to Go from Here

You've learned a lot about PHP. You now know how to create dynamic loadable modules and statically linked extensions. You've learned how PHP and Zend deal with internal storage of variables and how you can create and access these variables. You know quite a set of tool functions that do a lot of routine tasks such as printing informational texts, automatically introducing variables to the symbol table, and so on.

Even though this chapter often had a mostly "referential" character, we hope that it gave you insight on how to start writing your own extensions. For the sake of space, we had to leave out a lot; we suggest that you take the time to study the header files and some modules (especially the ones in the ext/standard directory and the MySQL module, as these implement commonly known functionality). This will give you an idea of how other people have used the API functions - particularly those that didn't make it into this chapter.

Reference: Some Configuration Macros

config.m4

The file config.m4 is processed by buildconf and must contain all the instructions to be executed during configuration. For example, these can include tests for required external files, such as header files, libraries, and so on. PHP defines a set of macros that can be used in this process, the most useful of which are described in M4 Macros for config.m4.

M4 Macros for config.m4
Macro | Description
AC_MSG_CHECKING(message) | Prints a "checking <message>" text during configure.
AC_MSG_RESULT(value) | Gives the result to AC_MSG_CHECKING; should specify either yes or no as value.
AC_MSG_ERROR(message) | Prints message as error message during configure and aborts the script.
AC_DEFINE(name,value,description) | Adds #define to php_config.h with the value of value and a comment that says description (this is useful for conditional compilation of your module).
AC_ADD_INCLUDE(path) | Adds a compiler include path; for example, used if the module needs to add search paths for header files.
AC_ADD_LIBRARY_WITH_PATH(libraryname,librarypath) | Specifies an additional library to link.
AC_ARG_WITH(modulename,description,unconditionaltest,conditionaltest) | Quite a powerful macro, adding the module with description to the configure --help output. PHP checks whether the option --with-<modulename> is given to the configure script. If so, it runs the script unconditionaltest (for example, --with-myext=yes), in which case the value of the option is contained in the variable $withval. Otherwise, it executes conditionaltest.
PHP_EXTENSION(modulename, [shared]) | This macro is a must to call for PHP to configure your extension. You can supply a second argument in addition to your module name, indicating whether you intend compilation as a shared module. This will result in a definition at compile time for your source as COMPILE_DL_<modulename>.

API Macros

A set of macros was introduced into Zend's API that simplify access to zval containers (see API Macros for Accessing zval Containers).

API Macros for Accessing zval Containers
Macro | Refers to
Z_LVAL(zval) | (zval).value.lval
Z_DVAL(zval) | (zval).value.dval
Z_STRVAL(zval) | (zval).value.str.val
Z_STRLEN(zval) | (zval).value.str.len
Z_ARRVAL(zval) | (zval).value.ht
Z_LVAL_P(zval) | (*zval).value.lval
Z_DVAL_P(zval) | (*zval).value.dval
Z_STRVAL_P(zval_p) | (*zval).value.str.val
Z_STRLEN_P(zval_p) | (*zval).value.str.len
Z_ARRVAL_P(zval_p) | (*zval).value.ht
Z_LVAL_PP(zval_pp) | (**zval).value.lval
Z_DVAL_PP(zval_pp) | (**zval).value.dval
Z_STRVAL_PP(zval_pp) | (**zval).value.str.val
Z_STRLEN_PP(zval_pp) | (**zval).value.str.len
Z_ARRVAL_PP(zval_pp) | (**zval).value.ht
Streams API for PHP Extension Authors
TSRM API
Zend Engine 1


TSRM API

Zend API: Hackeando o Núcleo do PHP
FAQ
Zend Engine 1


FAQ: Perguntas Mais Freqüentes

  • Informações Gerais
  • Listas de Discussão
  • Obtendo o PHP
  • Database issues
  • Instalação
  • Desenvolvendo Problemas
  • Using PHP
  • PHP e HTML — PHP and HTML
  • PHP e COM
  • PHP e outras linguagens
  • Migrando do PHP 4 para o PHP 5
  • Questões Diversas
TSRM API
Informações Gerais
Manual do PHP


Informações Gerais

Essa seção trata das questões mais gerais sobre o PHP: O que é e o que faz.

  1. O que é o PHP?
  2. O que a sigla PHP significa?
  3. Qual é a relação entre as versões?
  4. Posso executar várias versões do PHP ao mesmo tempo?
  5. Quais são as diferenças entre o PHP 3 e o PHP 4?
  6. Quais são as diferenças entre o PHP 4 e PHP 5?
  7. Acho que encontrei um bug! A quem eu devo dizer?
O que é o PHP?

Do prefácio do manual:

PHP é uma linguagem de script embutida no HTML. Muito da sua sintaxe é emprestada de C, Java e Perl com algumas características específicas do PHP juntas. O objetivo da linguagem é permitir que desenvolvedores web escrevam páginas geradas dinamicamente rápido.

O que a sigla PHP significa?

PHP significa PHP: Hypertext Preprocessor. Isso confunde muitas pessoas porque a primeira palavra da acrônimo é o acrônimo. Esse tipo de acrônimo é chamado de acrônimo recursivo. Os curiosos podem visitar » o item na Wikipedia sobre acrônomos recursivos.

Qual é a relação entre as versões?

PHP/FI 2.0 é uma versão mais antiga e não mais suportada do PHP. PHP 3 é o sucessor do PHP/FI 2.0 e é bem melhor. PHP 4 é a geração atual do PHP, que usa o » Zend engine a qual, entre outras coisas, oferece muitas funcionalidades adicionais de POO.

Posso executar várias versões do PHP ao mesmo tempo?

Sim. Veja o arquivo INSTALL que vem incluso na distribuição dos fontes do PHP.

Quais são as diferenças entre o PHP 3 e o PHP 4?

Aqui está a lista de algumas funcionalidades importantes:

  • API de módulos extendida
  • Processo de compilação generalizado no Unix
  • Interface genérica com servidores web que também suporta servidores com multithread
  • Sistema de marcação de sintaxe melhorado
  • Suporte nativo à sessões HTTP
  • Suporte a saída bufferizada
  • Sistema de configuração mais poderoso
  • Contagem de referência
Favor ver o texto » Visão geral do que é novo no PHP 4 para uma explicação detalhaa dessas funcionalidades e mais.

Quais são as diferenças entre o PHP 4 e PHP 5?

Enquanto o PHP 5 foi desenvolvido para ser tão compatível quanto possível com as versões anteriores, existem algumas mudanças significativas. Algumas dessas mudanças incluem:

  • Um novo modelo de OOP baseado em Zend Engine 2.0
  • Uma nova extenção para suporte melhorado do MySQL
  • Suporte interno para o SQLite
  • Uma nova constante de erro, E_STRICT, para sugestões de código em tempo de execução
  • Um conjunto de novas funções para simplificar a escrita de código (e reduzir a necessidade de escrever as suas proprias funções para vários procedimentos comuns)
Para informações mais detalhadas, por favor veja a sessão Migrando do PHP 4 para PHP 5 e a sessão sobre Modificações incompatíveis com versões anteriores.

Acho que encontrei um bug! A quem eu devo dizer?

Você deve ir ao Banco de Dados de Bugs do PHP e assegure-se que o bug não é conhecido. Se você não encontrar no banco, use o formulário para relatar o bug. É importante usar o banco de bugs ao invés de apenas mandar um e-mail para uma das listas de discussão porque o bug terá um número de rastreamento atribuído a ele e será possível voltar depois e checar o status do bug. O banco de bugs pode ser encontrado em » http://bugs.php.net/.

FAQ
Listas de Discussão
FAQ


Listas de Discussão

Essa seção responde algumas perguntas relacionadas a como entrar em contato com a comunidade PHP. A melhor maneira é através das listas de discussão via e-mail.

  1. Existe alguma lista de discussão do PHP?
  2. Existem outras comunidades?
  3. Ajuda! Não consigo me increver em/sair de nenhuma das listas de discussão!
  4. Existe um histório das listas de discussão em algum lutar?
  5. O que posso perguntar na lista de discussão?
  6. Que informação devo incluir quando faço perguntas na lista?
Existe alguma lista de discussão do PHP?

É claro! Existem várias listas de discussão sobre vários assuntos. Uma listagem completa das listas de discussão pode ser encontrada na nossa página de » Suporte.

A lista de discussão mais geral é php-general. Para entrar nela, mande um e-mail para » php-general-subscribe@lists.php.net. Você não precisa incluir nada em especial no assunto ou corpo da mensagem. Para sair da lista, mande um e-mail para » php-general-unsubscribe@lists.php.net.

Você também pode se inscrever ou sair usando a interface web na nossa página de » Suporte.

Existem outras comunidades?

Existem incontáveis delas em volta do mundo. Nós temos links, por exemplo, para alguns servidores IRC e listas de discussão em línguas estrangeiras na nossa página de » Suporte

Ajuda! Não consigo me increver em/sair de nenhuma das listas de discussão!

Se você tiver problemas se inscrevendo em ou saindo da lista de discussão php-general, pode ser porque o software da lista não consegue definir o endereço de e-mail correto para usar. Se seu endereço de e-mail for joeblow@example.com, você pode mandar sua requisição de inscrição para php-general-subscribe-joeblow=example.com@lists.php.net, ou sua requisição de saída para php-general-unsubscribe-joeblow=example.com@lists.php.net. Use endereços similares para as outras listas de discussão.

Existe um histório das listas de discussão em algum lutar?

Sim, você encontrará uma lista de sites com oo histórico na página de » Suporte. Os artigos da lista de discussão também são arquivados como mensagens de nóticia. Você pode acessar o servidor de notícias em » news://news.php.net/ com um cliente de notícias. Também existe uma interface web experimental para o servidor de notícias em » http://news.php.net/

O que posso perguntar na lista de discussão?

Uma vez que o PHP está crescendo em popularidade todo dia, o tráfego na lista de discussão php-general cresceu e até agora a lista recebe entre 150 a 200 mensagens por dia. Por isso é do interesse de todos que você use a lista como último recurso quando você procurou em todos os outros lugares.

Antes de enviar para lista, por favor, olhe esse FAQ e o manual para ver se você pode achar ajuda lá. Se não houver nada a ser encontrado lá, tente no histório da lista de discussão (veja acima). Se você estiver tendo problemas com a instalação e configuração do PHP, favor leia todos os documentos inclusos no pacote e todos os arquivos LEIAME. Se ainda assim você não achar a informação que você precisa, você é mais que bemvindo a usar a lista de discussão.

Antes de perguntar, você deve ler o arquivo » Como Fazer Perguntas de Maneira Inteligente que é uma boa idéia para todo mundo.

Que informação devo incluir quando faço perguntas na lista?

Mensagems como "Não consigo colocar o PHP para funcionar! Me ajude! O que está errado?" são inúteis. Se você tiver problemas fazendo o PHp funcionar, você deve incluir que sistema operacional você está usando, qual a versão do PHP você está tentando instalar, como você obteve (pré-compilado, CVS, RPM e por aí vai), o que você fez até agora, onde ficou preso e a mensagem de erro exata.

Isso vale para qualquer outro problema também. Você deve incluir informações sobre o que você fez, onde ficou preso, o que você tentou fazer e, se aplicar ao caso, a mensagem de erro exata. Se você tiver problemas com seu código-fonte, você precisa incluir a parte do código que não está funcionando. Não inclua mais código que o necessário! Isso torna a mensagem difícil de ler e muitas pessoas podem simplesmente ignorar ela por isso. Se você não tiver certeza sobre quanta informação incluir na mensagem, é melhor incluir muito do que pouco.

Outra coisa importante a lembrar é resumir o problema no assunto da mensagem. Um assungo como "SOCCOOORRROO!!!" ou "Qual é o problema aqui" será ignorada pela maioria dos leitores.

E finalmente, você é encorajado a ler o artigo sobre » Como Fazer Perguntas de Maneira Inteligente já quer irá ser de grande ajuda para todo mundo, especialmente você.

Informações Gerais
Obtendo o PHP
FAQ


Obtendo o PHP

Essa seção tem detalhes sobre localizações de download do PHP e problemas com Sistemas Operacionais.

  1. Onde posso obter o PHP?
  2. Existem versões binárias pré-compiladas?
  3. Onde posso pegar bibliotecas que eu preciso para compilar alguma das extensões opcionais do PHP?
  4. Como faço essas bibliotecas funcionarem?
  5. Eu peguei a última versão do código-fonte do PHP do repositório CVS na minha máquina Windows, o que eu preciso para compilá-lo?
  6. Onde eu acho o Arquivo de Capacidades do Navegador (Browser Capabilities File)?
Onde posso obter o PHP?

Você pode baixar o PHP de qualquer um dos membros da rede de sites do PHP. Esses podem ser encontrados em » http://www.php.net/. Você também pode se conecta anonimamente ao CVS para pegar a versão mais nova dos fontes. Para mais informação, vá à » http://www.php.net/anoncvs.php.

Existem versões binárias pré-compiladas?

Nós só distribuímos binários pré-compilados para sista,as Windows, uma vez que não somos capazes de compilar o PHP para cada uma das plataformas Linux/Unix com cada combinação de extensão. Perceba também que muitas distribuições Linux vem com o PHP instalado atualmente. Binários do Windows podem ser baixados da nossa página de » Downloads page, para binários no Linux, favor visite o website da sua distribuição.

Onde posso pegar bibliotecas que eu preciso para compilar alguma das extensões opcionais do PHP?

Nota: Aquelas marcadas com * são bibliotecas que não suportam thread, e não devem ser usadas com o PHP como um módulo de servidor em servidores web multi-threaded (IIS, Netscape). Isso não importa nos ambientes Unix, ainda.

  • » LDAP (Unix).
  • » LDAP (Unix/Win) : Netscape Directory (LDAP) SDK 1.1.
  • » servidor LDAP livre.
  • » Berkeley DB2 (Unix/Win) : http://www.sleepycat.com/.
  • » SNMP* (Unix): .
  • » GD* (Unix/Win).
  • » mSQL* (Unix).
  • » PostgreSQL (Unix).
  • » IMAP* (Win/Unix).
  • » Sybase-CT* (Linux, libc5) : Disponível localmente.
  • » FreeType (libttf):.
  • » ZLib (Unix/Win32).
  • » expat XML parser (Unix/Win32).
  • » PDFLib.
  • » mcrypt.
  • » mhash.
  • » t1lib.
  • » dmalloc.
  • » aspell.
  • » readline.

Como faço essas bibliotecas funcionarem?

Você precisará seguir as instruções providas com a biblioteca. Algumas dessas bibliotecas são detectadas automaticamente quando você executar o script 'configure' do PHP (como a biblioteca GD), e outras você terá que habilitar usando opções '--with-EXTENSION' do 'configure'. Execute 'configure --help' para listar essas opções.

Eu peguei a última versão do código-fonte do PHP do repositório CVS na minha máquina Windows, o que eu preciso para compilá-lo?

Primeiro, você precisará do Microsoft Visual C++ v6 (v5 pode funcionar também, mas nós fazemos com v6), e você precisará de alguns arquivos de suporte. Veja a seção do manual sobre compilando o PHP dos fontes no Windows.

Onde eu acho o Arquivo de Capacidades do Navegador (Browser Capabilities File)?

Você pode achar um arquivo browscap.ini em » http://browsers.garykeith.com/downloads.asp.

Listas de Discussão
Database issues
FAQ


Database issues

This section holds common questions about relation between PHP and databases. Yes, PHP can access virtually any database available today.

  1. I heard it's possible to access Microsoft SQL Server from PHP. How?
  2. Can I access Microsoft Access databases?
  3. PHP 5 no longer bundles MySQL client libraries, what does this mean to me? Can I still use MySQL with PHP? I try to use MySQL and get "function undefined" errors, what gives?
  4. After installing shared MySQL support, Apache dumps core as soon as libphp4.so is loaded. Can this be fixed?
  5. Why do I get an error that looks something like this: "Warning: 0 is not a MySQL result index in <file> on line <x>" or "Warning: Supplied argument is not a valid MySQL result resource in <file> on line <x>"?
I heard it's possible to access Microsoft SQL Server from PHP. How?

On Windows machines, you can simply use the included ODBC support and the correct ODBC driver.

On Unix machines, you can use the Sybase-CT driver to access Microsoft SQL Servers because they are (at least mostly) protocol-compatible. Sybase has made a » free version of the necessary libraries for Linux systems. For other Unix operating systems, you need to contact Sybase for the correct libraries. Also see the answer to the next question.

Can I access Microsoft Access databases?

Yes. You already have all the tools you need if you are running entirely under Windows 9x/Me, or NT/2000, where you can use ODBC and Microsoft's ODBC drivers for Microsoft Access databases.

If you are running PHP on a Unix box and want to talk to MS Access on a Windows box you will need Unix ODBC drivers. » OpenLink Software has Unix-based ODBC drivers that can do this.

Another alternative is to use an SQL server that has Windows ODBC drivers and use that to store the data, which you can then access from Microsoft Access (using ODBC) and PHP (using the built in drivers), or to use an intermediary file format that Access and PHP both understand, such as flat files or dBase databases. On this point Tim Hayes from OpenLink software writes:

Using another database as an intermediary is not a good idea, when you can use ODBC from PHP straight to your database - i.e. with OpenLink's drivers. If you do need to use an intermediary file format, OpenLink have now released Virtuoso (a virtual database engine) for NT, Linux and other Unix platforms. Please visit our » website for a free download.

One option that has proved successful is to use MySQL and its MyODBC drivers on Windows and synchronizing the databases. Steve Lawrence writes:

  • Install MySQL on your platform according to instructions with MySQL. Latest available from » http://www.mysql.com/ No special configuration required except when you set up a database, and configure the user account, you should put % in the host field, or the host name of the Windows computer you wish to access MySQL with. Make a note of your server name, username, and password.
  • Download the MyODBC for Windows driver from the MySQL site. Install it on your Windows machine. You can test the operation with the utilities included with this program.
  • Create a user or system dsn in your ODBC administrator, located in the control panel. Make up a dsn name, enter your hostname, user name, password, port, etc for you MySQL database configured in step 1.
  • Install Access with a full install, this makes sure you get the proper add-ins... at the least you will need ODBC support and the linked table manager.
  • Now the fun part! Create a new access database. In the table window right click and select Link Tables, or under the file menu option, select Get External Data and then Link Tables. When the file browser box comes up, select files of type: ODBC. Select System dsn and the name of your dsn created in step 3. Select the table to link, press OK, and presto! You can now open the table and add/delete/edit data on your MySQL server! You can also build queries, import/export tables to MySQL, build forms and reports, etc.

Tips and Tricks:

  • You can construct your tables in Access and export them to MySQL, then link them back in. That makes table creation quick.
  • When creating tables in Access, you must have a primary key defined in order to have write access to the table in access. Make sure you create a primary key in MySQL before linking in access
  • If you change a table in MySQL, you have to re-link it in Access. Go to tools>add-ins>linked table manager, cruise to your ODBC DSN, and select the table to re-link from there. you can also move your dsn source around there, just hit the always prompt for new location checkbox before pressing OK.

PHP 5 no longer bundles MySQL client libraries, what does this mean to me? Can I still use MySQL with PHP? I try to use MySQL and get "function undefined" errors, what gives?

Yes. There will always be MySQL support in PHP of one kind or another. The only change in PHP 5 is that we are no longer bundling the client library itself. Some reasons in no particular order:

  • Most systems these days already have the client library installed.

  • Given the above, having multiple versions of the library can get messy. For example, if you link mod_auth_mysql against one version and PHP against another, and then enable both in Apache, you get a nice fat crash. Also, the bundled library didn't always play well with the installed server version. The most obvious symptom of this being disagreement over where to find the mysql.socket Unix domain socket file.

  • Maintenance was somewhat lax and it was falling further and further behind the released version.

  • Future versions of the library are under the GPL and thus we don't have an upgrade path since we cannot bundle a GPL'ed library in a BSD/Apache-style licensed project. A clean break in PHP 5 seemed like the best option.

This won't actually affect that many people. Unix users, at least the ones who know what they are doing, tend to always build PHP against their system's libmysqlclient library simply by adding the --with-mysql=/usr option when building PHP. Windows users may enable the extension php_mysql.dll inside php.ini. For more details, see the MySQL Reference for installation instructions. Also, be sure libmysql.dll is available to the systems PATH. For more details on how, read the FAQ on setting up the Windows systems PATH. Because libmysql.dll (and many other PHP related files) exist in the PHP folder, you'll want to add the PHP folder to your systems PATH.

After installing shared MySQL support, Apache dumps core as soon as libphp4.so is loaded. Can this be fixed?

If your MySQL libs are linked against pthreads this will happen. Check using ldd. If they are, grab the MySQL tarball and compile from source, or recompile from the source rpm and remove the switch in the spec file that turns on the threaded client code. Either of these suggestions will fix this. Then recompile PHP with the new MySQL libs.

Why do I get an error that looks something like this: "Warning: 0 is not a MySQL result index in <file> on line <x>" or "Warning: Supplied argument is not a valid MySQL result resource in <file> on line <x>"?

You are trying to use a result identifier that is 0. The 0 indicates that your query failed for some reason. You need to check for errors after submitting a query and before you attempt to use the returned result identifier. The proper way to do this is with code similar to the following:

<?php

$result = mysql_query("SELECT * FROM tables_priv");
if (!$result) {
    echo mysql_error();
    exit;
}
?>
or
<?php

$result = mysql_query("SELECT * FROM tables_priv")
    or die("Bad query: " . mysql_error());
?>

Obtendo o PHP
Instalação
FAQ


Instalação

Esta seção contem perguntas comuns na maneira de como instalar o PHP. PHP é aceito em vários Sistemas Operacionais (Talvez exceto para MacOS antes OSX), e varios servidores Web.

Para instalar o PHP, Siga as instruções no Instalação e Configuração.

  1. Por que não deve usar o Apache2 com uma tarefa MPM em um ambiente de produção?
  2. Unix/Windows: Onde deveria estar localizado meu arquivo php.ini?
  3. Unix: Eu instalei o PHP, mas toda vez que carrego um documento, recebo a menssagem 'Document Contains No Data'! Oque está acontecendo aqui?
  4. Unix: Eu instalei o PHP usando RPMS, mas o Apache não esta processando as páginas PHP! Oque esta acontecendo aqui?
  5. Unix: Eu arrumei o Apche com os patch de extensões FrontPage, e repentinamente parar o trabalho no PHP. PHP é imcompátivel com as extensões Apache FrontPage?
  6. Unix/Windows: Eu tenho instalado o PHP, mas quando eu tento acessar um arquivo de script PHP através de meu browser, Eu recebo uma tela em branco.
  7. Unix/Windows: Eu tenho instalado o PHP, mas quando tento acessar um arquivo script do PHP através do meu browser, Eu recebo um erro do servidor 500.
  8. Alguns sistemas operacionais: Eu isntalei o PHP sem erro, mas qunado eu tento iniciar o Apache recebo um erro de simbolo indefinido: [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/httpd simbolo indefinido: _compress _uncompress
  9. Windows: Eu instalei o PHP, mas quando tento acessar um arquivo script do PHP através do meu browser, Eu recebo um erro: erro cgi: O aplicativo CGI especifica não esta retornando um conjunto completo de cabeçallhos HTTP. O cabeçalho está devolvendo:
  10. Windows: Eu segui todas as instruções, mas ainda não consegui fazer o PHP e o IIS trabalharem juntos!
  11. Quando executo PHP em CGI com IIS, PWS, OmniHTTPD ou Xitami, recebo em seguida um erro : Security Alert! PHP CGI não pode ser acessado diretamente..
  12. Como eu sei se meu php.ini esta sendo encontrado e lido? Parece que ele não é como as minhas alterações que não estão sendo implementadas.
  13. Como eu adiciono meu diretório PHP no PATH do Windows?
  14. Como eu faço para o arquivo php.ini ficar disponível para o PHP no windows?
  15. É possivel usar o Apache contendo negociaçao (opação MultiViews) com PHP?
  16. PHP é limitado os processos GET e POST pedido único de metódos?
Por que não deve usar o Apache2 com uma tarefa MPM em um ambiente de produção?

PHP é cola. É a cola usada para construir legais aplicações web pegando dezenas de partes de 3 bibliotecas juntas e fazendo tudo aparecer como uma entidade coerente através de um intuitivo e fácil de aprender a língua de interface. A flexibilidade e poder do PHP traz estabilidade e robustez da plataforma subjacente. Ele precisa estar trabalhdno em um SO, trabalhando em um servidor web and trabalhando com as 3 partes da biblioteca juntas. Quando algum deles para de trabalhar o PHP precisa indentificar os problemas e arruma-los rapidamente. Quando você faz uma estrutura subjacente mais complexa não havendo completamente separado a execução das tarefas, separe completamente os seguimentos de memória e uma caixa de areia forte para cada solicitação para jogar, pés de argila são introduzidos no sistema PHP.

Se você sentir que deve usar a threaded MPM, Olhe na configuração FastCGI onde o PHP está sendo executado em um espaço de memória.

E finalmente, esta advertência contra a utilização de uma tarefa MPM não é tão forte para Sistemas Windows, porque a maioria das bibliotecas naquela plataforma tendem a ser uma tarefa.

Unix/Windows: Onde deveria estar localizado meu arquivo php.ini?

Por padrão no Unix deve estar no /usr/local/lib Que é o <install-path>/lib. Maioria das pessoas vão quere mudar isso no tempo de compilação com o --with-config-file-path flag. Você poderia, por exemplo, adicionar algo como:

--with-config-file-path=/etc
E então voce poderia copiar php.ini-development para a distribuição do /etc/php.ini e editá-lo para fazer quaisquer alterações locais que você deseja.

--with-config-file-scan-dir=PATH

No Windows o caminho padrão para o arquivo php.ini é o diretório do Windows. Se você estiver usando o servidor web Apache, php.ini encontre primeiro onde esta instalado o diretório do Apache, e.g. c:\arquivos de programa\apache group\apache. Este caminho você pode te-lo diferente php.ini arquivos de diferentes versões do Apache na mesma máquina.

Olhe também o capítulo sobre a configuração do arquivo.

Unix: Eu instalei o PHP, mas toda vez que carrego um documento, recebo a menssagem 'Document Contains No Data'! Oque está acontecendo aqui?

Isso provavelmente significa que o PHP está tendo algum tipo de problema e é core-dumping. olhe no seu erro de log do servidor para ver se este é o caso, e tente reproduzir o problema com um pequeno caso teste. Se você souber como usar 'gdb', é muito útil quando você pode fornecer um backtrace com seu relatório de erro para ajudar os desenvolvedores a indentificar o problema. Se você esta usando o PHP como um módulo do Apache tentar algo como:

  • Pare seus processos httpd

  • gdb httpd

  • Pare seus processos httpd

  • > execute -X -f /path/to/httpd.conf

  • Então busque a URL que esta causando problemas com seu browser.

  • > execute -X -f /path/to/httpd.conf

  • Se você está recebendo um despejo de núcleo, o gdb deverá informá-lo sobre isso agora

  • type: bt

  • Você deve incluir o seu backtrace no seu relatório. Você deveria enviar para » http://bugs.php.net/

Se o seu script usa as funções de expressões regulares (preg_match() e amigos), você deve ter certeza que compilou PHP e Apache com o pacote de mesma expressão regular. Isso deve acontecer automaticamente com o PHP e Apache 1.3.x

Unix: Eu instalei o PHP usando RPMS, mas o Apache não esta processando as páginas PHP! Oque esta acontecendo aqui?

Supondo que você instalou o Apache e PHP, tanto a partir dos pacotes RPM, você precisa descomentar ou adicionar algumas ou todas as seguintes linhas em seu arquivo httpd.conf:

# Módulos extra
AddModule mod_php.c
AddModule mod_php.c
AddModule mod_perl.c

# Módulos extra
LoadModule php_module         modules/mod_php.so
LoadModule php5_module        modules/libphp5.so     # for PHP 5
LoadModule perl_module        modules/libperl.so
E adicione:
AddType application/x-httpd-php .php
... para as propriedades globais, ou para as propriedades do VirtualDomain você deseja ter suporte PHP adicionado.

Unix: Eu arrumei o Apche com os patch de extensões FrontPage, e repentinamente parar o trabalho no PHP. PHP é imcompátivel com as extensões Apache FrontPage?

Não, PHP trabalha bem com as extensões FrontPage. O problema é que o patch do FrontPage modifica diversas estruturas Apache, que se baseia em PHP. Recopile o PHP (usando 'make clean ; make') depois do patch PF aplicado resolveria o problema.

Unix/Windows: Eu tenho instalado o PHP, mas quando eu tento acessar um arquivo de script PHP através de meu browser, Eu recebo uma tela em branco.

Faça um "view source" no navegador da web e provavelmente você vai achar que você pode ver o código fonte do seu script PHP. Isto significa que o servidor web não enviou o script PHP para interpretação. Algo está errado com a configuração do servidor - verifique a configuração do servidor contra as instruções de instalação do PHP.

Unix/Windows: Eu tenho instalado o PHP, mas quando tento acessar um arquivo script do PHP através do meu browser, Eu recebo um erro do servidor 500.

Alguma coisa correu mal quando o servidor tentou executar PHP. Para começar a ver uma mensagem de erro razoável, na linha de comando, mude para o diretório que contém o executável do PHP (php.exe no Windows) e executar php -i. Se o PHP tem algum problema na execução, então uma mensagem adequada será exibida oque lhe dará uma idéia do que precisa ser feitoem seguida. Se você receber uma tela cheia de códigos HTML (a saída da função phpinfo()) então o PHP esta funcionando, e seu problema pode ser relatado para a configuração do seu servidor que você deve verificar novamente.

Alguns sistemas operacionais: Eu isntalei o PHP sem erro, mas qunado eu tento iniciar o Apache recebo um erro de simbolo indefinido:
[mybox:user /src/php4] root# apachectl configtest
 apachectl: /usr/local/apache/bin/httpd simbolo indefinido:
  _compress
  _uncompress

Isto não tem nada a vê com o PHP, mas com as bibliotecas do cliente MySQL. Algumas necessidade --with-zlib , outras não. Esta é tambem abrangida pelo FAQ MySQL.

Windows: Eu instalei o PHP, mas quando tento acessar um arquivo script do PHP através do meu browser, Eu recebo um erro:

erro cgi:
O aplicativo CGI especifica não esta
retornando um conjunto completo de cabeçallhos HTTP.
O cabeçalho está devolvendo:

Está mensagem de erro significa que o PHP falhou na saida de algo. Para começar a ver uma mensagem de erro sensata, para a linha de comando, mude para o diretório que tem o executável PHP (php.exe no Windows) e executar php -i. Se o PHP tem algum problema na execução, em seguida, uma mensagem de erro adequada será exibida o que lhe dará uma idéia do que precisa ser feito em seguida. SE você reeber uma tela cheia de códigos HTML (a saída da função phpinfo() ) então o PHP esta funcionando.

Uma vez que o PHP está trabalhando na linha do comando, tente acessar o script via navegador novamente. Se ele falhar ainda então pode ser um dos seguintes:

  • Premissões de arquivo no seu script PHP, php.exe, php4ts.dll, php.ini ou todas as extensões do PHP que você esta tentando carregar são tais que um usuário anônimo nao pode acessar ISUR_<machinename>.
  • O arquivo script não existe (ou, eventualmente, não é onde você pensa que é relativo ao diretório raiz da web). Observe que para o IIS você pode interceptar este erro, assinalando 'Check File exists' caixa ao configurar os mapeamentos de script no Internet Services Manager. Se um arquivo file não existir então o servidor retornará um erro 404 instantâneo. Existe também um benefício adicinal que o IIS irá fazer qualquer autenticação requerida para você com base nas permissões NTLanMan no seu arquivo script.
Windows: Eu segui todas as instruções, mas ainda não consegui fazer o PHP e o IIS trabalharem juntos!

Certifique-se de qualquer usuário que precisa para executar um script PHP tem o direito de executar php.exe! O IIS usa um usuário anônimo que é adicionado no momento do IIS está instalado. Este usuário precisa de direitos do php.exe. Também, qualquer usuário autenticado também terá direito a executar php.exe. e para IIS4 você precisa dizer ao PHP que é um mecanismo script. também, você vai querer ler: este faq.

Quando executo PHP em CGI com IIS, PWS, OmniHTTPD ou Xitami, recebo em seguida um erro : Security Alert! PHP CGI não pode ser acessado diretamente..

Você deve definir cgi.force_redirect directiva para 0. É padrão para 1 isso certifique-se a directiva não é comentada ;). Como todas as directivas, isso é definido no php.ini

Porque o padrão é 1, é fundamental que você está 100% certo que o correto arquivo php.ini esta sendo lido. Leia este faq para detalhes.

Como eu sei se meu php.ini esta sendo encontrado e lido? Parece que ele não é como as minhas alterações que não estão sendo implementadas.

Para ser certo que seu php.ini esta sendo lido pelo PHP, fazer uma chamada para phpinfo(). Perto do topo, Haverá um anucio lá Configuration File (php.ini). Isto irá dizer-lhe onde o PHP está procurando php.ini e existe ou não esta sendo lido. Se apenas um diretório do PATH existe, então não está sendo lido, e você deveria colocar seu php.ini no diretório. se php.ini está incluso dentro do PATH, ele está sendo lido.

Se php.ini está sendo lide e seu PHP esta executando um modulo, em seguida, certifique-se de reiniciar seu servidor web depois de fazer alterações. php.ini

Olhe também php_ini_loaded_file().

Como eu adiciono meu diretório PHP no PATH do Windows?

No Windows NT, 2000, XP e 2003:

  • Vá até o Panel de Controle e abra o ícone Sisteman (Iniciar -> Configurações -> Painel de Controle -> Sistema, ou apenas Iniciar -> Painel de Controle -> Sistema para Windows XP/2003)

  • Vá até a aba avaçado

  • Clique no botão "Variáveis de Ambiente"

  • Olhe dentro do painel as 'Variavies do Sistema'

  • Encontre a entrada do Path (Talvez você precise do scroll para encontrar)

  • Dê um duplo clique para entrar no Path

  • Digite o diretório do seu PHP e no fim , incluindo ';' antes (e.g. ;C:\php)

  • Aperte OK e reinicie seu computador

No Windows 98/Me você precisa editar o arquivo autoexec.bat:

  • Abra o bloco de notas (Iniciar -> Executar e digite notepad)

  • Abra o arquivo C:\autoexec.bat

  • Localize a linha com PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;..... e adicione: ;C:\php no final desta linha

  • Salve o arquivo e reinicie seu computador

Nota: Certifique-se de reiniciar depois de seguir os passos acima para garantir que as alterações serão aplicadas PATH.

O manual do PHP usado para promover a cópia de arquivos para o diretório do sistema do Windows, é porque o diretório (C:\Windows, C:\WINNT, etc.) está por padrão dentro do PATH do sistema. Copiando os arquivos apra dentro do diretório do sistema do Windowns tem uma substituição e pode causar problemas.

Como eu faço para o arquivo php.ini ficar disponível para o PHP no windows?

Existem várias maneiras de fazer isso. Se você usa o Apache, ler suas instruções específicas de instalação (Apache 1, Apache 2), caso contrário você deve definir a variavel ambente PHPRC:

No Windows NT, 2000, XP e 2003:

  • Vá em Painel de Controle e abra o icone Sistema (Iniciar -> Configurações -> Painel de Controle -> Sistema, ou apenas Iniciar -> Painel de Controle -> Sistema para Windows XP/2003)

  • Vá na aba Avançado

  • Clique no botão "Variáveis de Ambiente"

  • Olhe dentro do painel 'Variaveis do Sistema'

  • Clique em 'Novo' e digite 'PHPRC' como nome da variavel e o diretório onde php.ini está localizado como o valor da variavel (e.g. C:\php)

  • Dê um OK e reinicie o computador

No Windows 98/Me você precisa editar o arquivo autoexec.bat:

  • Abra no bloco de notas (Iniciar -> Executar e digite notepad)

  • Abra o arquivo C:\autoexec.bat

  • Adicione uma nova linha no final no arquivo: set PHPRC=C:\php (substituir C:\php com o diretório onde php.ini esta localizado).Preste atenção o path não pode conter espaço. Por exemplo, Se você tem instalado o PHP no C:\Program Files\PHP, você entraria C:\PROGRA~1\PHP em vez disso.

  • Salve o arquivo e reinicie o computador

É possivel usar o Apache contendo negociaçao (opação MultiViews) com PHP?

Se os links para arquivos incluem a extensão PHP, tudo trabalhará perfeito. Este FAQ é apenas para o caso em links para arquivos PHP não incluem a extensão e você quiser usar negociação de conteúdo para escolher os arquivos PHP de URL com nenhuma extensão. Neste caso, substitua a linha AddType application/x-httpd-php .php com:

# PHP 4
AddHandler php-script php
AddType text/html php

# PHP 5
AddHandler php5-script php
AddType text/html php
Esta solução não funciona para o Apache 1, módulo PHP não pega php-script.

PHP é limitado os processos GET e POST pedido único de metódos?

Não, é possível lidar com qualquer método de requisição, e.g. CONNECT. Status de resposta adequada pode ser enviado com header(). If only GET and POST methods should be handled, Se apenas métodos GET e POST deve ser tratado, ele pode ser alcançado com esta configuração do Apache:

<LimitExcept GET POST>
Deny from all
</LimitExcept>

Database issues
Desenvolvendo Problemas
FAQ


Desenvolvendo Problemas

Esta seção reúne os erros mais comuns que ocorrem na tempo de compilação.

  1. Eu peguei a última versão do PHP usando o serviço do SVN anónimo, mas não há nenhum script de configuração!
  2. Estou tendo problemas para configurar o PHP para trabalhar com Apache. Diz que não consegue encontrar httpd.h,mas é certo onde eu disse que é!
  3. Ao configurar o PHP (./configure), você se deparar com um erro semelhante ao seguinte: checar a próxima saída de arquivo root... ./configure: lex: command not found configure: error: não consegue encontrar a saída de Lex; desistir
  4. Quando tento iniciar o Apache, recebo a seguinte mensagem: deslocalização de erro fatal: file / path/to/libphp4.so: ap_block_alarms símbolo: O símbolo de referência não encontrada
  5. Quando eu executar o configure, ele diz que não pode encontrar o incluir arquivos ou a biblioteca de GD, gdbm, ou algum outro pacote!
  6. Quando se está compilando os arquivos language-parser.tab.c, me devolve um erro que diz yytname undeclared.
  7. Quando eu executo make, parace rodar bem mas então falha quando tenta linkar a applicação final, queixando-se que não consegue encontrar alguns arquivos.
  8. Quando linkando o PHP, ele reclama de um número de referências indefinidas.
  9. Eu não posso entender como construir PHP com Apache 1.3.
  10. Eu segui todos os passos da istalação do modulo da versão do Apache no Unix, e meus scripts PHP são mostrados no meu navegador ou sou interrogado para salvar os arquivos.
  11. la diz para usar: - activate-module = src/modules/php4/libphp4.a , mas esse arquivo não existe, então mudei para - activate-module = src/modules/php4/libmodphp4.a e não funciona!? O que está acontecendo?
  12. Quando tento compilar o Apache com o PHP como um módulo estático usando - activate-module = src/modules/php4/libphp4.a ele diz-me que o meu compilador não é compatível com ANSI.
  13. Quando tento compilar o PHP usando --with-apxs Recebo mensagens de erro estranha.
  14. Durante make , eu recebo erros no microtime, e um monte de RUSAGE_ material.
  15. Ao compilar o PHP com MySQL, configurar corre bem, mas durante fazer I get um erro semelhante ao seguinte: ext / mysql / libmysql / my_tempnam.o (texto. +0 x46):Em função my_tempnam ': / php4/ext/mysql/libmysql/my_tempnam.c: 103: o mkstemp utilizando de tempnam 'é perigoso, melhor' , O que está errado ?
  16. Eu quero atualizar o meu PHP. Onde posso encontrar o . / Configure linha que foi usada para construir a minha instalação atual do PHP?
  17. Quando compilar o PHP com a biblioteca GD é estranho ou dá erros de compilação segfaults ou em execução.
  18. Ao compilar o PHP eu recebo erros aparentemente aleatória, como ele reage. Estou usando o Solaris se o que importa.
Eu peguei a última versão do PHP usando o serviço do SVN anónimo, mas não há nenhum script de configuração!

Você tem que ter o pacote GNU autoconf instalado para que você possa gerar o script de configuração de configure.in.Basta executar ./buildconfno diretório de nível mais alto após a obtenção as fontes do servidor SVN. (Além disso, a menos que você executar configure com o --enable-maintainer-mode opção, o script de configuração não irá começar automaticamente reconstruída quando o configure.inarquivo é atualizado, então você deve certificar-se de fazer isso manualmente quando você percebe configure.inmudou. Um sintoma do presente é encontrar coisas como variável @ @ em seu Makefile após configurar ou config.status quando é executado.)

Estou tendo problemas para configurar o PHP para trabalhar com Apache. Diz que não consegue encontrar httpd.h,mas é certo onde eu disse que é!

Você precisa dizer ao configure / script de configuração da localização do alto nível de sua árvore fonte do Apache. Isto significa que pretende especificar --with-apache=/path/to/apache and not --with-apache=/path/to/apache/src .

Ao configurar o PHP (./configure), você se deparar com um erro semelhante ao seguinte:

checar a próxima saída de arquivo root... ./configure: lex: command not found
configure: error: não consegue encontrar a saída de Lex; desistir

Não deixe de ler a instalação instruções cuidadosamente e note que você precisa de ambos flex e bison instalado para compilar o PHP. Dependendo da configuração que irá instalar bison e flex a partir de qualquer fonte ou um pacote, como um RPM.

Quando tento iniciar o Apache, recebo a seguinte mensagem:

deslocalização de erro fatal: file / path/to/libphp4.so:
ap_block_alarms símbolo: O símbolo de referência não encontrada

Esse erro geralmente aparece quando um compila o Apache programa nuclear como uma biblioteca DSO para uso compartilhado. Tente apache reconfigurar, tornando-se usar pelo menos seguintes bandeiras:

--enable-shared=max --enable-rule=SHARED_CORE

Para obter mais informações, leia o nível superior Apache INSTALL ou o Apache » página DSO manual.

Quando eu executar o configure, ele diz que não pode encontrar o incluir arquivos ou a biblioteca de GD, gdbm, ou algum outro pacote!

Você pode fazer o script de configuração procura por arquivos de cabeçalho e bibliotecas em locais não-padrão, especificando parâmetros adicionais para passar para o pré-processador C e linker, tais como:

    CPPFLAGS=-I/path/to/include LDFLAGS=-L/path/to/library ./configure
If you're using a csh-variant for your login shell (why?), it would be:
    env CPPFLAGS=-I/path/to/include LDFLAGS=-L/path/to/library ./configure

Quando se está compilando os arquivos language-parser.tab.c, me devolve um erro que diz yytname undeclared.

Você precisa atualizar sua versão do Bison. Você pode encontrar a última versão em » http://www.gnu.org/software/bison/bison.html.

Quando eu executo make, parace rodar bem mas então falha quando tenta linkar a applicação final, queixando-se que não consegue encontrar alguns arquivos.

Algumas versões antigas de make que não colocam corretmente a versão compilada dos arquivos nos diretórios das funções dentro do mesmo diretório. Tente rodar cp *.o functions e então execute novamente make para ver se isso ajuda. Se não ajudar, você realmente deve atualizar para uma versão mais recente de GNU make.

Quando linkando o PHP, ele reclama de um número de referências indefinidas.

De uma olhada na linha do link e tenha certeza que todas as bibliotecas apropriadas estão sendo incluidas no final. É comum que talvez você tenha esquecidos os '-ldl' e qualquer biblioteca requerida para qualquer suporte de banco de dados que você incluiu.

Se você estiver ligado ao Apache 1.2.x, você se lembrou de adicionar a informação apropriada para a linha EXTRA_LIBS do arquivo de configuração e reiniciou o script de configuração do Apache? Veja o Capítulo de instalação para mais informações.

Algumas pessoas também tem reportado que elas tem que adicionar '-ldl' imediatamente seguido de libphp4.a quando ligado com o Apache.

Eu não posso entender como construir PHP com Apache 1.3.

Isso é na verdade muito fácil. Siga esses passos cuidadosamente:

  • Obtenha a distribuição da última versão do Apache 1.3 no link » http://httpd.apache.org/download.cgi.
  • Ungzip e descompacte em algum lugar, por exemplo /usr/local/src/apache-1.3.
  • Compile o PHP rodando primeiramente ./configure --with-apache=/<path>/apache-1.3 (substitua <path> pelo caminho atual do seu diretório apache-1.3.
  • Digite make seguido por make install para desenvolver o PHP e copiar os arquivos necessários para a árvore de distribuição do Apache.
  • Troque os diretórios dentro do seu diretório /<path>/apache-1.3/src e edite o arquivo Configuration. Adicione ao arquivo: AddModule modules/php4/libphp4.a.
  • Digite: ./configure seguido de make.
  • Você deve ter agora um binário com PHP ativado!

Nota: Você pode também usar o novo script Apache ./configure. Veja as instruções no arquivo README.configure o qual faz parte da sua distribuição Apache. Veja também no arquivo INSTALL na distrubuição PHP.

Eu segui todos os passos da istalação do modulo da versão do Apache no Unix, e meus scripts PHP são mostrados no meu navegador ou sou interrogado para salvar os arquivos.

Isso significa que o modulo do PHP não esta sendo chamaado por alguma razão. Três coisas para se checar antes de pedir por mais ajuda:

  • Tenha certeza que o binário httpd que você esta executndo é o que você acabou de construir. Para fazer isso, tente executar: /caminho/para/binário/httpd -l Se você não vê mod_php4.c constantes, então você não estiver executando o binário do direito. Encontrar e instalar o binário correto.
  • Certifique-se de ter adicionado o correto Mime Type em um dos seus arquivos .conf do Apache. Deve-se: AddType application / x-httpd-php. php Também certifique-se que esta linha AddType não está escondido dentro de uma bloco <Virtualhost> ou <Directory> que impedi-lo de aplicação para a localização de seu script de teste.
  • Finalmente, a localização padrão dos arquivos de configuração do Apache mudou entre o Apache 1.2 e Apache 1.3. Você deve verificar a certifique-se que o arquivo de configuração que você está adicionando o AddType linha para que realmente está sendo lido. Você pode colocar um óbvio erro de sintaxe em seu arquivo httpd.conf ou alguma outra mudança evidente que dizer se o arquivo estiver sendo lido corretamente.

la diz para usar: - activate-module = src/modules/php4/libphp4.a , mas esse arquivo não existe, então mudei para - activate-module = src/modules/php4/libmodphp4.a e não funciona!? O que está acontecendo?

Note que o libphp4.a não é suposto existir. O processo apache irá criá-lo!

Quando tento compilar o Apache com o PHP como um módulo estático usando - activate-module = src/modules/php4/libphp4.a ele diz-me que o meu compilador não é compatível com ANSI.

Esta é uma mensagem de erro enganosas da Apache que foi corrigido nas versões mais recentes.

Quando tento compilar o PHP usando --with-apxs Recebo mensagens de erro estranha.

Há três coisas para buscar aqui. Em primeiro lugar, por alguma razão Apache quando constrói o script Perl apxs, às vezes acaba ficando de fora o compilador adequado e variáveis bandeiras. Encontre o seu script apxs (tente o comando que apxs ), às vezes é encontrado em / usr / local / apache / bin / apxs ou / usr / sbin / apxs . Abri-lo e verificar se há linhas semelhantes a estas:

my $CFG_CFLAGS_SHLIB  = ' ';          # substituted via Makefile.tmpl
my $CFG_LD_SHLIB      = ' ';          # substituted via Makefile.tmpl
my $CFG_LDFLAGS_SHLIB = ' ';          # substituted via Makefile.tmpl
Se é isso que você vê, você encontrou o seu problema. Podem contenham apenas espaços ou outros valores incorretos, como 'q ()'. Alterar estas linhas para dizer:
my $CFG_CFLAGS_SHLIB  = '-fpic -DSHARED_MODULE'; # substituted via Makefile.tmpl
my $CFG_LD_SHLIB      = 'gcc';                   # substituted via Makefile.tmpl
my $CFG_LDFLAGS_SHLIB = q(-shared);              # substituted via Makefile.tmpl
O segundo problema possível só deve ser um problema no Red Hat 6.1 e 6.2. O script apxs navios Red Hat está quebrado. Procure por esta linha:
my $CFG_LIBEXECDIR    = 'modules';         # substituted via APACI install
Se você vê a linha acima, mude para isto:
my $CFG_LIBEXECDIR    = '/usr/lib/apache'; # substituted via APACI install
Finalmente, se você reconfigurar / Apache reinstalar, adicionar um make clean para o processo depois . / configure e antes make .

Durante make , eu recebo erros no microtime, e um monte de RUSAGE_ material.

Durante o make parcela da instalação, Se você encontrar problemas que parecem semelhantes a este:

microtime.c: In function `php_if_getrusage':
microtime.c:94: storage size of `usg' isn't known
microtime.c:97: `RUSAGE_SELF' undeclared (first use in this function)
microtime.c:97: (Each undeclared identifier is reported only once
microtime.c:97: for each function it appears in.)
microtime.c:103: `RUSAGE_CHILDREN' undeclared (first use in this function)
make[3]: *** [microtime.lo] Error 1
make[3]: Leaving directory `/home/master/php-4.0.1/ext/standard'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/master/php-4.0.1/ext/standard'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/master/php-4.0.1/ext'
make: *** [all-recursive] Error 1

Seu sistema está falido. É preciso corrigir o seu /usr/include por instalação de um pacote glibc-devel glibc que corresponde ao seu. Isto tem absolutamente nada a ver com o PHP. Para provar isso a si mesmo, tente este teste simples:

$ cat >test.c <<X
#include <sys/resource.h>
X
$ gcc -E test.c >/dev/null
Se isso mostrar os erros, você conhece o seu arquivos de inclusão são desarrumados.

Ao compilar o PHP com MySQL, configurar corre bem, mas durante fazer I get um erro semelhante ao seguinte: ext / mysql / libmysql / my_tempnam.o (texto. +0 x46):Em função my_tempnam ': / php4/ext/mysql/libmysql/my_tempnam.c: 103: o mkstemp utilizando de tempnam 'é perigoso, melhor' , O que está errado ?

Primeiramente, é importante perceber que este é um Warning e não um erro fatal. Porque este é muitas vezes a saída vista pela última vez durante fazer , Ela pode parecer um erro fatal, mas não é. Claro que, se você define o seu compilador para morrer na avisos, ele vai. Além disso ter em mente que suportam o MySQL é ativado por padrão.

Nota:

A partir do PHP 4.3.2, você também verá o seguinte texto depois a compilação (make) conclui:

Construção completa.
(É seguro ignorar avisos sobre tempnam e tmpnam).

Eu quero atualizar o meu PHP. Onde posso encontrar o . / Configure linha que foi usada para construir a minha instalação atual do PHP?

Ou você olhar para arquivo config.nice, na árvore fonte do seu atual do PHP instalação ou, se este não estiver disponível, basta executar um

<?php phpinfo(); ?>
script. Em cima da saída do ./configure line, que foi usado para construir esta instalação do PHP é mostrado.

Quando compilar o PHP com a biblioteca GD é estranho ou dá erros de compilação segfaults ou em execução.

Certifique-se de sua biblioteca GD e PHP estão ligadas contra a mesma função bibliotecas (libpng por exemplo).

Ao compilar o PHP eu recebo erros aparentemente aleatória, como ele reage. Estou usando o Solaris se o que importa.

Usando o não-utilitários GNU ao compilar o PHP pode causar problemas. Ser Certifique-se de usar as ferramentas GNU, a fim de ter certeza de que irá compilar PHP trabalho. Por exemplo, no Solaris, usando o SunOS BSD-compatible ou versões do Solaris sed não vai funcionar, mas usando GNU ou Sun POSIX (XPG4) versões do sed will trabalho. Links: » GNU sed , » GNU flex e » bison .

Instalação
Using PHP
FAQ


Using PHP

This section gathers many common errors that you may face while writing PHP scripts.

  1. I cannot remember the parameter order of PHP functions, are they random?
  2. I would like to write a generic PHP script that can handle data coming from any form. How do I know which POST method variables are available?
  3. I need to convert all single-quotes (') to a backslash followed by a single-quote (\'). How can I do this with a regular expression? I'd also like to convert " to \" and \ to \\.
  4. All my " turn into \" and my ' turn into \', how do I get rid of all these unwanted backslashes? How and why did they get there?
  5. How does the PHP directive register_globals affect me?
  6. When I do the following, the output is printed in the wrong order: <?php function myfunc($argument) { echo $argument + 10; } $variable = 10; echo "myfunc($variable) = " . myfunc($variable); ?> what's going on?
  7. Hey, what happened to my newlines? <pre> <?php echo "This should be the first line."; ?> <?php echo "This should show up after the new line above."; ?> </pre>
  8. I get the message 'Warning: Cannot send session cookie - headers already sent...' or 'Cannot add header information - headers already sent...'.
  9. I need to access information in the request header directly. How can I do this?
  10. When I try to use authentication with IIS I get 'No Input file specified'.
  11. Windows: I can't access files shared on another computer using IIS
  12. How am I supposed to mix XML and PHP? It complains about my <?xml tags!
  13. Where can I find a complete list of variables are available to me in PHP?
  14. How can I generate PDF files without using the non-free and commercial libraries like PDFLib? I'd like something that's free and doesn't require external PDF libraries.
  15. I'm trying to access one of the standard CGI variables (such as $DOCUMENT_ROOT or $HTTP_REFERER) in a user-defined function, and it can't seem to find it. What's wrong?
  16. A few PHP directives may also take on shorthand byte values, as opposed to only integer byte values. What are all the available shorthand byte options? And can I use these outside of php.ini?
  17. Windows: I keep getting connection timeouts when using localhost, whereas "127.0.0.1" works?
I cannot remember the parameter order of PHP functions, are they random?

PHP is a glue that brings together hundreds of external libraries, so sometimes this gets messy. However, a simple rule of thumb is as follows:

Array function parameters are ordered as "needle, haystack" whereas String functions are the opposite, so "haystack, needle".

I would like to write a generic PHP script that can handle data coming from any form. How do I know which POST method variables are available?

PHP offers many predefined variables, like the superglobal $_POST. You may loop through $_POST as it's an associate array of all POSTed values. For example, let's simply loop through it with foreach, check for empty() values, and print them out.

<?php
$empty = $post = array();
foreach ($_POST as $varname => $varvalue) {
    if (empty($varvalue)) {
        $empty[$varname] = $varvalue;
    } else {
        $post[$varname] = $varvalue;
    }
}

print "<pre>";
if (empty($empty)) {
    print "None of the POSTed values are empty, posted:\n";
    var_dump($post);
} else {
    print "We have " . count($empty) . " empty values\n";
    print "Posted:\n"; var_dump($post);
    print "Empty:\n";  var_dump($empty);
    exit;
}
?>

Nota: Disponibilidade das superglobais:

Arrays superglobais como $_GET, $_POST, e $_SERVER, etc. estão disponíveis desde o PHP 4.1.0. Para mais informação, leia a seção do manual em superglobals

I need to convert all single-quotes (') to a backslash followed by a single-quote (\'). How can I do this with a regular expression? I'd also like to convert " to \" and \ to \\.

Assuming this is for a database, use the escaping mechanism that comes with the database. For example, use mysql_real_escape_string() with MySQL and pg_escape_string() with PostgreSQL. There is also the generic addslashes() and stripslashes() functions, that are more common with older PHP code.

Nota: Nota sobre a diretiva magic_quotes_gpc:

A diretiva magic_quotes_gpc tem por padrão on. Ela essencialmente utiliza addslashes() em todos os dados postados por GET, POST e COOKIEs. stripslashes() pode ser usado para reverter isso.

All my " turn into \" and my ' turn into \', how do I get rid of all these unwanted backslashes? How and why did they get there?

Most likely the backslashes magically exist because the PHP directive magic_quotes_gpc is on. This is an old feature of PHP, and should be disabled and not relied upon. Also, the PHP function stripslashes() may be used to strip the backslashes from the string.

Nota: Nota sobre a diretiva magic_quotes_gpc:

A diretiva magic_quotes_gpc tem por padrão on. Ela essencialmente utiliza addslashes() em todos os dados postados por GET, POST e COOKIEs. stripslashes() pode ser usado para reverter isso.

How does the PHP directive register_globals affect me?

First, an explanation about what this ini setting does. Let's say the following URL is used: http://example.com/foo.php?animal=cat and in foo.php we might have the following PHP code:

<?php
// Using $_GET here is preferred
echo $_GET['animal'];

// For $animal to exist, register_globals must be on
// DO NOT DO THIS
echo $animal;

// This applies to all variables, so $_SERVER too
echo $_SERVER['PHP_SELF'];

// Again, for $PHP_SELF to exist, register_globals must be on
// DO NOT DO THIS
echo $PHP_SELF;
?>

The code above demonstrates how register_globals creates a lot of variables. For years this type of coding has been frowned upon, and for years it's been disabled by default. Note that PHP will eventually remove this deprecated feature. So although most web hosts disable register_globals, there are still outdated articles, tutorials, and books that require it to be on. Plan accordingly.

See also the following resources for additional information:

  • The register_globals directive
  • The security chapter about register globals
  • Handling external variables
  • Use superglobals instead

Nota:

In the example above, we used an URL that contained a QUERY_STRING. Passing information like this is done through a GET HTTP Request, so this is why the superglobal $_GET was used.

When I do the following, the output is printed in the wrong order:
<?php
function myfunc($argument)
{
    echo $argument + 10;
}
$variable = 10;
echo "myfunc($variable) = " . myfunc($variable);
?>
what's going on?

To be able to use the results of your function in an expression (such as concatenating it with other strings in the example above), you need to return() the value, not echo() it.

Hey, what happened to my newlines?
<pre>
<?php echo "This should be the first line."; ?>
<?php echo "This should show up after the new line above."; ?>
</pre>

In PHP, the ending for a block of code is either "?>" or "?>\n" (where \n means a newline). So in the example above, the echoed sentences will be on one line, because PHP omits the newlines after the block ending. This means that you need to insert an extra newline after each block of PHP code to make it print out one newline.

Why does PHP do this? Because when formatting normal HTML, this usually makes your life easier because you don't want that newline, but you'd have to create extremely long lines or otherwise make the raw page source unreadable to achieve that effect.

I get the message 'Warning: Cannot send session cookie - headers already sent...' or 'Cannot add header information - headers already sent...'.

The functions header(), setcookie(), and the session functions need to add headers to the output stream but headers can only be sent before all other content. There can be no output before using these functions, output such as HTML. The function headers_sent() will check if your script has already sent headers and see also the Output Control functions.

I need to access information in the request header directly. How can I do this?

The getallheaders() function will do this if you are running PHP as an Apache module. So, the following bit of code will show you all the request headers:

<?php
$headers = getallheaders();
foreach ($headers as $name => $content) {
    echo "headers[$name] = $content<br />\n";
}
?>

See also
apache_lookup_uri(),
apache_response_headers(), and
fsockopen()

When I try to use authentication with IIS I get 'No Input file specified'.

The security model of IIS is at fault here. This is a problem common to all CGI programs running under IIS. A workaround is to create a plain HTML file (not parsed by PHP) as the entry page into an authenticated directory. Then use a META tag to redirect to the PHP page, or have a link to the PHP page. PHP will then recognize the authentication correctly. With the ISAPI module, this is not a problem. This should not effect other NT web servers. For more information, see: » http://support.microsoft.com/kb/q160422/ and the manual section on HTTP Authentication .

Windows: I can't access files shared on another computer using IIS

You have to change the Go to Internet Information Services. Locate your PHP file and go to its properties. Go to the File Security tab, Edit -< Anonymous access and authentication control.

You can fix the problem either by unticking Anonymous Access and leaving Integrated Window Authentication ticked, or, by ticking Anonymous Access and editing the user as he may not have the access right.

How am I supposed to mix XML and PHP? It complains about my <?xml tags!

In order to embed <?xml straight into your PHP code, you'll have to turn off short tags by having the PHP directive short_open_tags set to 0. You cannot set this directive with ini_set(). Regardless of short_open_tags being on or off, you can do something like: <?php echo '<?xml'; ?>. The default for this directive is On.

Where can I find a complete list of variables are available to me in PHP?

Read the manual page on predefined variables as it includes a partial list of predefined variables available to your script. A complete list of available variables (and much more information) can be seen by calling the phpinfo() function. Be sure to read the manual section on variables from outside of PHP as it describes common scenarios for external variables, like from a HTML form, a Cookie, and the URL.

Nota: Nota importante sobre register_globals:

Desde o PHP 4.2.0, o valor padrão para a diretiva register_globals é off e foi completamente removida a partir do PHP 6.0.0. A comunidade do PHP desencoraja desenvolvedores a confiar nesta diretiva, e encoraja o uso de outros meios, como em superglobals.

How can I generate PDF files without using the non-free and commercial libraries like PDFLib? I'd like something that's free and doesn't require external PDF libraries.

There are a few alternatives written in PHP such as » FPDF and » TCPDF.

There is also the Haru extension that uses the free libHaru external library.

I'm trying to access one of the standard CGI variables (such as $DOCUMENT_ROOT or $HTTP_REFERER) in a user-defined function, and it can't seem to find it. What's wrong?

It's important to realize that the PHP directive register_globals also affects server and environment variables. When register_globals = off (the default is off since PHP 4.2.0), $DOCUMENT_ROOT will not exist. Instead, use $_SERVER['DOCUMENT_ROOT'] . If register_globals = on then the variables $DOCUMENT_ROOT and $GLOBALS['DOCUMENT_ROOT'] will also exist.

If you're sure register_globals = on and wonder why $DOCUMENT_ROOT isn't available inside functions, it's because these are like any other variables and would require global $DOCUMENT_ROOT inside the function. See also the manual page on variable scope. It's preferred to code with register_globals = off.

Nota: Disponibilidade das superglobais:

Arrays superglobais como $_GET, $_POST, e $_SERVER, etc. estão disponíveis desde o PHP 4.1.0. Para mais informação, leia a seção do manual em superglobals

A few PHP directives may also take on shorthand byte values, as opposed to only integer byte values. What are all the available shorthand byte options? And can I use these outside of php.ini?

The available options are K (for Kilobytes), M (for Megabytes) and G (for Gigabytes; available since PHP 5.1.0), these are case insensitive. Anything else assumes bytes. 1M equals one Megabyte or 1048576 bytes. 1K equals one Kilobyte or 1024 bytes. You may not use these shorthand notations outside of php.ini, instead use an integer value of bytes. See the ini_get() documentation for an example on how to convert these values.

Nota: kilobyte versus kibibyte

The PHP notation describes one kilobyte as equalling 1024 bytes, whereas the IEC standard considers this to be a kibibyte instead. Summary: k and K = 1024 bytes.

Windows: I keep getting connection timeouts when using localhost, whereas "127.0.0.1" works?

Prior to PHP 5.3.4, there was a bug in the network resolving code inside PHP that caused localhost in all stream related situations to fail if IPv6 was enabled. To work around this issue you can either use "127.0.0.1" or disable IPv6 resolving in the hosts file.

Desenvolvendo Problemas
PHP e HTML
FAQ


PHP and HTML

PHP e HTML possuem muita interação: PHP pode gerar HTML, e o HTML pode passar informações para o PHP. Antes de ler esses faqs, é importante que você aprenda como recuperar variáveis de fontes externas. A página do manual neste tópico inclui muitos exemplos. Também preste atenção no que significa register_globals para você.

  1. Que codificação/decodificação é preciso quando eu passo um valor através de um formulário/URL?
  2. Estou tentando usar uma tag <input type="image">, mas as variáveis $foo.x e $foo.y não estão disponíveis. $_GET['foo.x'] não existem também. Onde elas estão?
  3. Como eu crio arrays em um HTML <form>?
  4. Como eu faço para obeter os resultados de uma múltipla seleção de uma tag HTML?
  5. Como eu posso passar uma variável do Javascript para o PHP?
Que codificação/decodificação é preciso quando eu passo um valor através de um formulário/URL?

Existem muitos estágios para o qual a codificação é importante. Assumindo que você tenha uma string $data, o qual contém a string que você quer passar de um jeito não codificado, esses são os estágios relevantes:

  • Interpretção HTML. A fim de especificar uma string aleatória, você precisa incluá-la entre aspas, e converter todo o valor dos caracteres especiais para a realidade HTML usando htmlspecialchars().

  • URL: Uma URL consite de diversas partes. Se você quer que seus dados sejam interpretados como um item, você precisa codificá-los com urlencode().

Exemplo #1 Um elemento oculto formulário HTML

<?php
    echo "<input type='hidden' value='" . htmlspecialchars($data) . "' />\n";
?>

Nota: É errado urlencode() $data, porque é a responsabilidade do navegador em urlencode() os dados. Todos os navegadores populares o fazem corretamente. Note que isso irá acontecer independentemente do método (i.e., GET ou POST).Você só vai perceber isso em caso de solicitação GET, porque as requisições POST são normalmente escondidos.

Exemplo #2 Dados a serem editados pelo usuário

<?php
    echo "<textarea name='mydata'>\n";
    echo htmlspecialchars($data)."\n";
    echo "</textarea>";
?>

Nota: Os dados são mostrados no navegador como pretendido, porque o navegador irá interpretar os simbolos de escape do HTML. Em consequência do envio, tando via GET como POST, os dados vão ser urlencoded pelo navegador para transferência, e urldecoded diretamente pelo PHP. Resumindo, você não precisa fazer qualquer urlencoded/urldecoded pelo php, tudo é feito automaticamente.

Exemplo #3 Em uma URL

<?php
    echo "<a href='" . htmlspecialchars("/nextpage.php?stage=23&data=" .
        urlencode($data)) . "'>\n";
?>

Nota: De fato você está fingindo uma requisição HTML GET, portanto é necessário urlencode() os dados manualmete.

Nota: Você precisa htmlspecialchars() toda a URL, porque a URL ocorre como um valor de um atributo-HTML. Neste caso, o navegador irá primeiramente un-htmlspecialchars() o valor, e então passar a URL. O PHP vai entender a URL corretamente, porque você urlencoded() os dados. Você vai notar que & na URL é substituido por &amp;. Embora a maioria dos navegadores vão se recuperar se vecê esquecer disto, isso nem sempre é possivel. Então, memso se a URL não é dinâmica, você precisa htmlspecialchars() a URL.

Estou tentando usar uma tag <input type="image">, mas as variáveis $foo.x e $foo.y não estão disponíveis. $_GET['foo.x'] não existem também. Onde elas estão?

Ao enviar um formulário, é possivel usar uma imagem em vez de um botão submit padrão, como na tag:

<input type="image" src="image.gif" name="foo" />
Quando o usuário clica em qualquer lugar na imagem, o formulário que o acompanha será transmitido para o servidor com duas variáveis adicionais: foo.x e foo.y.

Porque foo.x e foo.y faria nome de variáveis inválidas no PHP, elas são automaticamente convertidas para foo_x e foo_y. Ou seja, os periodos são substituidos por sublinhados. Então, você teria acesso a essas variáveis como qualquer outro descrito na seção sobre como recuperar variáveis de fontes externas. Por exemplo, $_GET['foo_x'].

Nota:

Os espaços nos nomes das variáveis requisitadas são convertidas para sublinhado.

Como eu crio arrays em um HTML <form>?

Para obter o resultado do seu <form> enviado como um array para seu script PHP você nomeia os elementos <input>, <select> ou <textarea> como estes:

<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyArray[]" />
Observe os colchetes após o nome da variável, é isso que torna uma variável um array. Você pode agrupar os elementos dentro de diferentes arrays, atribuindo o mesmo nome a diferentes elementos:
<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyOtherArray[]" />
<input name="MyOtherArray[]" />
Isso poduz duas arrays, MyArray e MyOtherArray, que será enviado para o script PHP. Também é possível atribuir chaves específicas para seus arrays:
<input name="AnotherArray[]" />
<input name="AnotherArray[]" />
<input name="AnotherArray[email]" />
<input name="AnotherArray[phone]" />
O array AnotherArray ira conter agora as chaves 0, 1, email e phone.

Nota:

Especificar uma chave de array é opcional no HTML. Se você não especificar as chves, o array preenche na ordem em que os elementos aparecem no formulário. Nosso primeiro exemplo ira conter as chaves 0, 1, 2 e 3.

Veja também: Funções de Array e Variáveis de fontes Externas.

Como eu faço para obeter os resultados de uma múltipla seleção de uma tag HTML?

A seleção de multiplas tags em uma construção HTML premite os usuários selecionar multiplos itens de uma lista. Esses itens são então passados ao manipilador de ações para o formulário. O problema é que eles são todos passados com o mesmo nome widget. I.e.

<select name="var" multiple="yes">
Cada opção selecionada chegará ao manipulador de ações como:
var=option1
var=option2
var=option3
Cada opção irá substituir o conteúdo da variável anterior $var. A solução é usar a caracteristica "array de elementos do formulário" do PHP. A seguir devem ser usados:
<select name="var[]" multiple="yes">
Isso diz ao PHP para tratar $var como um array e cada atribuição de um valor para [var] acrescenta um item ao array. O primeiro item se torna $var[0], o próximo $var[1], etc. A função count() pode ser chamado para determinar quantas opções foram selecionadas, e a função sort() pode ser usada para classificar o array de opções se necessário.

Note que se você esta usando JavaScript o [] no nome do elemento pode lhe causar problemas quando você tenta se referir ao elemento pelo nome. Ao invés use o ID numérico do elemento do formulário, ou coloque o nome da variável entre aspas simples e use isso como um índice para os elementos do array, por exemplo:

variable = documents.forms[0].elements['var[]'];

Como eu posso passar uma variável do Javascript para o PHP?

Uma vez que o Javascript é (normalmente) uma tecnologia da parte do cliente, e o PHP é (normalmente) uma tecnologia da parte do servidor, e uma vez que o HTTP é um protocolo "sem lado", as duas linguagens não podem compartilhar variáveis diretamente.

É , no entanto, possível passar variáveis entre as duas. Uma maneira de realizar isso é gerar um código Javascript com PHP, e ter um navegador que se atualize, passando variáveis especificas de volta para o script PHP. O exemplo abaixo mostra precisamente como fazer isso -- isso permite ao código PHP capturar a altura e largura da tela, algo que normalmente só é possível no lado do cliente.

Exemplo #4 Gerando Javascript com PHP

<?php
if (isset($_GET['width']) AND isset($_GET['height'])) {
  // output the geometry variables
  echo "Screen width is: ". $_GET['width'] ."<br />\n";
  echo "Screen height is: ". $_GET['height'] ."<br />\n";
} else {
  // pass the geometry variables
  // (preserve the original query string
  //   -- post variables will need to handled differently)

  echo "<script language='javascript'>\n";
  echo "  location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
            . "&width=\" + screen.width + \"&height=\" + screen.height;\n";
  echo "</script>\n";
  exit();
}
?>

Using PHP
PHP e COM
FAQ


PHP e COM

PHP pode ser usado para acessar objetos COM e DCOM em plataformas Win32.

  1. Eu construi uma DLL para calcular algo. Existe uma maneira de executar essa DLL no PHP ?
  2. O que 'Unsupported variant type: xxxx (0xxxxx)' significa ?
  3. É possível manipular objetos visuais no PHP ?
  4. Posso guardar um objeto COM em uma sessão ?
  5. Como eu trato erros de COM ?
  6. Posso gerar arquivos DLL de scripts PHP como eu posso no Perl ?
  7. O que significa 'Unable to obtain IDispatch interface for CLSID {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}' ?
  8. Como posso executar um objeto COM de um servidor remoto ?
  9. Eu vejo o erro 'DCOM is disabled in C:\path...\scriptname.php on line 6', o que posso fazer ?
  10. É possível carregar/manipular um objeto ActiveX em uma página com o PHP ?
  11. É possível pegar uma instância sendo executada de um componente ?
  12. Existe alguma maneria de lidar com um evento enviado pode um objeto COM ?
  13. Estou tendo problemas quando tento invocar um método de um objeto COM que expõe mais de uma interface. O que posso fazer ?
  14. Então PHP funciona com COM, e com COM+ ?
  15. Se o PHP pode manipular objetos COM, podemos imaginar usar MTS para administrar recursos de componentes, em conjunção com PHP ?
Eu construi uma DLL para calcular algo. Existe uma maneira de executar essa DLL no PHP ?

Se for uma DLL simples, ainda não tem como executá-la no PHP. Se a DLL contem um serviço COM você pode acessá-lo se ele implementar a interface IDispatch.

O que 'Unsupported variant type: xxxx (0xxxxx)' significa ?

Existem dezenas de tipos VARIANT e combinações dos mesmos. A maioria deles já são suportados mas alguns ainda tem que ser implementados. Arrays não são completamente suportados. Apenas arrays indexados com uma única dimensão podem ser passados entre o PHP e COM. Se você achar outros tipos que não são suportados, por favor relate-os como um bug (se não tiverem sido relatados ainda) e passe o máximo de informação disponível.

É possível manipular objetos visuais no PHP ?

Geralmente é, mas como o PHP é principalmente usado como linguagem de script pra web, ele é executado no contexto dos servidores web, então objetos visuais nunca aparecerão no desktop do servidor. Se você usa o PHP para script de aplicações, ex.: em conjunto com PHP-GTK não há limitação no acesso e manipulação de objetos visuais através de COM.

Posso guardar um objeto COM em uma sessão ?

Não, não pode. Instâncias COM são tratadas como recursos (resources) e, portanto, só estão disponíveis no contexto de um script único.

Como eu trato erros de COM ?

No PHP 5, a extensão COM dispara exceções do tipo com_exception, que você pode pegar e então inspecionar o membro code para determinar o que fazer depois.

No PHP 4 não é possível pegar erros de COM a não ser pelas maneiras providas pelo próprio PHP (@, track_errors, ..).

Posso gerar arquivos DLL de scripts PHP como eu posso no Perl ?

Não, infelizmente não existe tal ferramenta disponível para o PHP.

O que significa 'Unable to obtain IDispatch interface for CLSID {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}' ?

Esse erro pode ter várias razões:

  • o CLSID está errado
  • a DLL requisitada não existe ou não pode ser lida
  • o componente requisitado não implementa a interface IDispatch

Como posso executar um objeto COM de um servidor remoto ?

Exatamente como você executa objetos locais. Você só tem que passar o IP da máquina remota como segundo parâmetro para o construtor COM.

com.allow_dcom =TRUE php.ini no seu php.ini.

Eu vejo o erro 'DCOM is disabled in C:\path...\scriptname.php on line 6', o que posso fazer ?

Edite seu arquivo php.ini e edite com.allow_dcom =TRUE no seu php.ini.

É possível carregar/manipular um objeto ActiveX em uma página com o PHP ?

Isso não tem nada a ver com o PHP. Objetos ActiveX são carregados no lado do cliente se eles forem requisitados pelo documento HTML. Não há relação com o script PHP e, portanto, nenhuma interação direta possível com o lado do servidor.

É possível pegar uma instância sendo executada de um componente ?

É possível com a ajuda de monikers. Se você quiser referências múltiplas para a mesma instância você pode criar uma instância como mostrado abaixo:

<?php
$word = new COM("C:\docs\word.doc");
?>

Isso criará uma nova instância se nenhuma instância sendo executada estiver disponível e retornará um handle para a ela, se disponível.

Existe alguma maneria de lidar com um evento enviado pode um objeto COM ?

Você pode definir um interceptador de eventos usando com_event_sink(). Você pode usar com_print_typeinfo() para que o PHP gere um esqueleto para a classe interceptadora de eventos.

Estou tendo problemas quando tento invocar um método de um objeto COM que expõe mais de uma interface. O que posso fazer ?

A resposta é tão simples quanto insatisfatória. Eu não sei exatamente, mas acho que não há nada a fazer. Se alguém tem informação específica sobre isso, por favor » me avise (mande e-mails em inglês) :)

Então PHP funciona com COM, e com COM+ ?

COM+ é COM mais uma framework para manusear componentes através de MTS e MSMQ mas não há nada especial que o PHP tenha suporte ao uso de tais componentes.

Se o PHP pode manipular objetos COM, podemos imaginar usar MTS para administrar recursos de componentes, em conjunção com PHP ?

O PHP em si não lida com transações ainda. Por isso, se um erro ocorre, nenhum rollback é iniciado. Se você usar componentes que suportem transações você pode implementar a administração de transações por conta própria.

PHP e HTML
PHP e outras linguagens
FAQ


PHP e outras linguagens

PHP é a melhor linguagem para programar para web, mas e as outras linguagens?

  1. PHP versus. ASP?
  2. Existe um conversor de ASP para PHP?
  3. PHP versus ColdFusion?
  4. PHP vs. Perl?
PHP versus. ASP?

ASP não é realmente uma linguagem em sí, mas um acrônico para Active Server Pages; as linguages atuais usadas para programar ASP incluem Visual Basic Script, JScript, e C#, entre outras. A grande desvantagem do ASP é que é um sistema proprietário que é nativamente usado apenas no Microsoft Internet Information Server (IIS). Isto limita a disponibilidade para servidores Win32. Existem vários projetos em progresso que permitem ao ASP funcionar com outros ambiêntes e servidores web: » InstantASP de » Halcyon (comercial), Chili!Soft ASP de » Chili!Soft (comercial), e » Mono (open-source). Fala-se que o ASP é uma linguagem mais lenta e problematica que o PHP, com menor estabilidade geral. Um dos pontos a favor do ASP é que, como ele usa principalmente VBScript, é relativamente fácil escolher a linguagem se você já tem conhecimentos de Visual Basic. O suporte a ASP já esta ativo por padrão no IIS, fazendo com que seja fácil executa-lo. Entretanto, os componentes embutidos no ASP são relativamente limitados, assim se você necessita fazer algo mais "avançado" (como interagir com um servidor FTP), você necessitára comprar componentes adicionais.

Existe um conversor de ASP para PHP?

Sim, o » asp2php é um dos mais referenciados, e também existe » esta opçãodo lado do cliente.

PHP versus ColdFusion?

PHP é normalmente dito ser mais rápido e eficiente para tarefas de programação complexa e para tentar novas idéias, e é considerado por muito mais estável e utiliza menos recursos. Enquanto ColdFusion uma vez teve gerenciamento de erros melhor, abstração de banco de dados, e interpretação de datas, as questões da abstração de banco de dados foram corrijidas no PHP 4. Uma qualidade particular que é listada como uma das forças do ColdFusion é sua excelente ferramenta de pesquisa, mas vários argumentos fortes sugerem que uma ferramenta de pesquisa não é algo que deva ser incluído em uma linguagem de script para a web. Além disso, PHP roda em praticamente todas as plataformas modernas existentes, emquanto Cold Fusion esta disponível apenas em Windows, Solaris, Linux, MacOS, e AIX. Cold Fusion tem um bom IDE e é geralmente mais rápido para novos programadores obterem resultados para aplicações muito simples, enquanto PHP requer mais conhecimento de programação. Cold Fusion é projetado para não programadores, enquanto o PHP é focado em programadores.

PHP vs. Perl?

A grande vantagem do PHP sobre o Perl, é que o PHP foi projetado para fazer scripts para a web, enquanto o Perl foi criado para fazer muito mais. Por causa disso, Perl pode ficar muito complicado. A flexibilidade / complexidade do Perl pode faze-lo difícil para desenvolvedores de diferentes níveis de abilidade colaborarem. PHP tem um formato menos confuso e estrito sem perder a flexibilidade. PHP também é mais fácil de integrar no HTML do que o Perl. Em grande parte, PHP tem toda a "boa" funcionalidade do Perl - construtores, sintaxe, etc - sem faze-lo tão complicado quanto o Perl pode ser. Assim o interpretador de linha de comando (CLI) do PHP é poderoso o suficiente para realizar tarefas de alto nível da mesma maneira que o Perl é tradicionalmente empregado. Perl é um linguagem muito testada e verdadeira, e tem o seu chão desde 1980, mas o PHP amadureceu e evoluiu rapidamente, e continua a fazer progressos fantastico.

PHP e COM
Migrando do PHP 4 para o PHP 5
FAQ


Migrando do PHP 4 para o PHP 5

Essa sessão de faq ajudará a você migrar do PHP 4 para o PHP 5.

  1. Migrando do PHP 4 para o PHP 5
  2. O MySQL funciona no PHP 5? Ele parece ter desaperecido.
  3. Eu ouvi que o PHP 5 tem um modelo de POO inteiramente novo, o meu código em POO já existente funcionará? Onde eu acho informação sobre essas novas caracterísicas de POO?
  4. Então, além do novo modelo de POO, o que mais foi alterado no PHP 5? Além disso, existe numa versão específica do manual do PHP para a versão 5?
Migrando do PHP 4 para o PHP 5

Apesar do PHP 5 oferecer muitas vantagens novas, ele foi feito para ser o mais compatível possível com as versões anteriores com poucas funcionalidades sendo perdidas no processo.

Leia o apêndice de migração para o PHP 5 deste manual pois ele contêm ainda mais informações no tópico de migração para o PHP 5.

O MySQL funciona no PHP 5? Ele parece ter desaperecido.

MySQL é suportado com apenas a modificação de não ser mais habilitado por default in PHP 5. Isso essencialmente significa que o PHP não inclui a opção --with-mysql na linha configure então você deve fazer isso manualmente quando compilando o PHP. Usuários do Windows editarão php.ini e habilitarão a DLL php_mysql.dll já que no PHP 4 essa DLL não existia, era simplesmente montada no seus binários do PHP para o Windows.

Além disso, as bibliotecas de cliente do MySQL não são mais bundled com o PHP. Mais detalhes nesse tópico são abrangidas no seguinte FAQ e leia também a seção MySQL para detalhes sobre instalação do MySQL. Um exemplo de linha de configure seria --with-mysql=/usr enquanto usuários do Windows precisarão do arquivo libmySQL.dll disponível no sistema.

Eu ouvi que o PHP 5 tem um modelo de POO inteiramente novo, o meu código em POO já existente funcionará? Onde eu acho informação sobre essas novas caracterísicas de POO?

A principal mudança no PHP 5 é o modelo de POO já que o PHP 5 agora usa o Zend Engine 2.0. A diretiva zend.ze1_compatibility_mode permite compatibilidade com o Zend Engine 1.0 (PHP 4).

O novo modelo de POO está documentado nas seções OOP language reference e OOP migration appendix.

Então, além do novo modelo de POO, o que mais foi alterado no PHP 5? Além disso, existe numa versão específica do manual do PHP para a versão 5?

Algumas poucos modificações exitem, veja o apêndice 5 de migração para detalhes. Não haverá uma versão específica do manual do PHP para a versão 5 já que o cerne do PHP ainda é o mesmo.

PHP e outras linguagens
Questões Diversas
FAQ


Questões Diversas

Aqui estão algumas questôes que nós não pudemos colocar em outra categoria. Aqui você encontra elas.

  1. Como eu posso utilizar os manuais compactados com o bz2 no Windows?
  2. O que faz & antes de um argumento na declaração de uma função, ex. asort?
  3. Como eu lido com register_globals?
Como eu posso utilizar os manuais compactados com o bz2 no Windows?

Se você não tiver uma ferramenta de arquivos para trabalhar com arquivos bz2 » download a ferramenta de linha de comando da Redhat (por favor veja maiores informações abaixo).

Se você não gostar de usar uma ferramenta de linha de comando, você pode tentar ferramentas gratuitas como » Stuffit Expander, » UltimateZip, » 7-Zip, ou » Quick Zip. Se você tiver ferramentas como » WinRAR ou » Power Archiver, você pode facilmente descomprimir arquivos bz2 com elas. Se você usa o Total Commander, (anteriormente Windows Commander), um plugin para o bz2 esta disponível gratuitamente em » Total Commander.

A ferramenta de linha de comando bzip2 da Redhat:

Usuários Win2k Sp2 obtenha a versão 1.0.2, todos os outros usuários de windows a versão 1.00. Após o download renomeie o executável para bzip2.exe. Para sua conveniencia, coloque em um diretório que esteja no seu path, ex. C:\Windows aonde C representra o drive que você instalou o Windows.

Nota: lang significa a sua língua( Português do Brasil: pt_BR) e x para o formato desejado, ex.: pdf. Para descompactar php_manual_lang.x.bz2 siga estas instruções simples:

  • abra uma janela com o prompt de comando
  • Use o comando cd para a pasta onde você guardou o php_manual_lang.x.bz2
  • digite bzip2 -d php_manual_lang.x.bz2, descompactando php_manual_lang.x na mesma pasta

Caso você tenha feito o download de php_manual_lang.tar.bz2 com vários arquivos html nele, o procedimento é o mesmo. A unica diferença é que você obtém um arquivo php_manual_lang.tar. O formato tar format é conhecido e tratado com as ferramentas de arquivos mais comuns para o Windows, por exemplo » WinZip.

O que faz & antes de um argumento na declaração de uma função, ex. asort()?

Indica que o argumento é passado por referência e a função provavelmente irá modifica-lo de acordo com a documentação. Você pode passar apenas variáveis desta forma e você não precisa passa-los com & na chamada da função (e o mesmo esta obsoleto).

Como eu lido com register_globals?

Para informações sobre as implicações de segurança de register_globals, leia o capitulo de segurança em Using register_globals.

É preferível usar superglobals, do que depender de register_globals estar ativo.

Se você esta em um servidor compartilhado com register_globals desativado e você precisa usar alguma aplicação de legado, a qual requira que esta opção esteja ativada, ou você esta em algum servidor de hospedagem, aonde isto esteja ativo, mas você quer eliminar os riscos de segurança, você pode precisar emular a definição contrária com o PHP. É sempre uma boa idéia primeiro perguntar se seria possível mudar a opção de configuração do PHP de alguma maneira, mas se não for possível, então você pode usar estes trechos de código para compatibilidade.

Exemplo #5 Emulando Register Globals

Isto irá emular register_globals On. Se você alterou a sua diretiva variables_order, considere mudar $superglobals de acordo.

<?php
// Emular register_globals on
if (!ini_get('register_globals')) {
    $superglobals = array($_SERVER, $_ENV,
        $_FILES, $_COOKIE, $_POST, $_GET);
    if (isset($_SESSION)) {
        array_unshift($superglobals, $_SESSION);
    }
    foreach ($superglobals as $superglobal) {
        extract($superglobal, EXTR_SKIP);
    }
}
?>

Isto irá emular register_globals Off. Tenha em mente que este código deve ser chamado bem no início do seu script, ou após session_start() se você o usa para iniciar a sua sessão.

<?php
// Emula register_globals off
function unregister_GLOBALS()
{
    if (!ini_get('register_globals')) {
        return;
    }

    // Might want to change this perhaps to a nicer error
    if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS'])) {
        die('GLOBALS overwrite attempt detected');
    }

    // Variables that shouldn't be unset
    $noUnset = array('GLOBALS',  '_GET',
                     '_POST',    '_COOKIE',
                     '_REQUEST', '_SERVER',
                     '_ENV',     '_FILES');

    $input = array_merge($_GET,    $_POST,
                         $_COOKIE, $_SERVER,
                         $_ENV,    $_FILES,
                         isset($_SESSION) && is_array($_SESSION) ? $_SESSION : array());

    foreach ($input as $k => $v) {
        if (!in_array($k, $noUnset) && isset($GLOBALS[$k])) {
            unset($GLOBALS[$k]);
        }
    }
}

unregister_GLOBALS();

?>

Migrando do PHP 4 para o PHP 5
Apêndices
FAQ


Apêndices

  • A História do PHP e projetos relacionados
    • A História do PHP
    • A História dos projetos relacionados ao PHP
    • Livros sobre PHP
    • Publicações sobre PHP
  • Migrating from PHP 5.2.x to PHP 5.3.x
    • What has changed in PHP 5.3.x
    • Backward Incompatible Changes
    • New features
    • Changes made to Windows support
    • Changes in SAPI modules
    • Deprecated features in PHP 5.3.x
    • Undeprecated features in PHP 5.3.x
    • New Parameters
    • New Functions
    • New stream wrappers
    • New stream filters
    • New Class Constants
    • New Methods
    • New Extensions
    • Removed Extensions
    • Other changes to extensions
    • New Classes
    • New Global Constants
    • Changes to INI file handling
    • Other changes
  • Migrating from PHP 5.1.x to PHP 5.2.x
    • What has changed in PHP 5.2.x
    • Backward Incompatible Changes
    • New Error Messages
    • Changes in PHP datetime support
    • New Parameters
    • New Functions
    • New Methods
    • Removed Extensions
    • New Extensions
    • New Classes
    • New Global Constants
    • New Class Constants
    • New INI Configuration Directives
    • Error Reporting
    • Other Enhancements
  • Migrating from PHP 5.0.x to PHP 5.1.x
    • Key PHP 5.1.x features
    • Changes in reference handling
    • Reading []
    • Integer values in function parameters
    • Class and object changes
    • Extensions
    • Date/time support
    • Changes in database support
    • Checking for E_STRICT
  • Migrating from PHP 4 to PHP 5.0.x
    • What has changed in PHP 5.0.x
    • Backward Incompatible Changes
    • CLI and CGI
    • Migrating Configuration Files
    • New Functions
    • New Directives
    • Databases
    • New Object Model
    • Error Reporting
  • Classes and Objects (PHP 4)
    • class
    • extends
    • Constructors
    • Scope Resolution Operator (::)
    • parent
    • Serializing objects - objects in sessions
    • The magic functions __sleep and __wakeup
    • References inside the constructor
    • Comparing objects
  • Debugando em PHP
    • Sobre o debugador
  • Opções do script Configure
    • Lista de opções principais do script configure
  • Diretivas do arquivo php.ini
    • Lista de diretivas do arquivo php.ini
    • Lista das seções do php.ini
    • Descrição das diretivas do principais do arquivo php.ini
  • Categorização/Lista das Extensões
    • Em ordem alfabética
    • Sociedade
    • Estado
  • Lista de funções sinônimas (aliases)
  • Palavras reservadas do PHP
    • Lista de palavras-chave (keywords)
    • Classes pré-definidas
    • Constantes Pré-definidas
  • List of Resource Types
  • Lista de Filtros Disponíveis
    • Filtros de String
    • Fitros de Conversão
    • Filtros de Compressão
    • Encryption Filters
  • Lista de Transportes via Socket Suportados
    • Internet Domain: TCP, UDP, SSL, e TLS
    • Domínio Unix: Unix e UDG
  • Tabelas de comparação de tipo do PHP
  • List of Parser Tokens
  • Guia de nomenclatura em espaço de usuário
    • Escopo Global
    • Regras
    • Dicas
  • Sobre o manual
    • Formatos
    • Sobre as notas de usuários
    • Como ler a definição de função (protótipo)
    • Versões do PHP documentadas neste manual
    • Como encontrar mais informações sobre o PHP
    • Como ajudar a melhorar a documentação
    • Como nós geramos os formatos
    • Traduções
  • Creative Commons Attribution 3.0
  • Índice de funções
Questões Diversas
A História do PHP e projetos relacionados
Manual do PHP


A História do PHP e projetos relacionados

Índice

  • A História do PHP
  • A História dos projetos relacionados ao PHP
  • Livros sobre PHP
  • Publicações sobre PHP

O PHP percorreu um longo caminho ao nesses poucos anos. Criada para ser uma das mais poderosas e proeminentes linguagens da Web não foi uma tarefa fácil. Aqueles que se interessaram momentaneamente em ver como o PHP cresceu e se tornou o que é hoje, continue lendo. Versões do antigo PHP pode ser encontrado em » PHP Museum.

Apêndices
A História do PHP
Apêndices


A História do PHP

PHP/FI

O PHP sucede de um produto mais antigo, chamado PHP/FI. PHP/FI foi criado por Rasmus Lerdorf em 1995, inicialmente como simples scripts Perl como estatísticas de acesso para seu currículo online. Ele nomeou esta série de script de 'Personal Home Page Tools'. Como mais funcionalidades foram requeridas, Rasmus escreveu uma implementação C muito maior, que era capaz de comunicar-se com base de dados, e possibilitava à usuários desenvolver simples aplicativos dinâmicos para Web. Rasmus resolveu » disponibilzar o código fonte do PHP/FI para que todos pudessem ver, e também usá-lo, bem como fixar bugs e melhorar o código.

PHP/FI, que significa Personal Home Page / Forms Interpreter, incluía algumas funcionalidades básicas do PHP que nós conhecemos hoje. Ele usava variáveis no estilo Perl, interpretação automática de variáveis vindas de formulário e sintaxe embutida no HTML. A sua própria sintaxe era similar a do Perl, porém muito mais limitada, simples, e um pouco inconsistente.

Em 1997, PHP/FI 2.0, a segunda versão da implementação C, obteve milhares de usuários ao redor do mundo (estimado), com aproximadamente 50,000 domínios reportando que tinha PHP/FI 2.0 instalado, agarinhando 1% dos domínios da Internet. Enquanto isto havia milhares de pessoas contribuindo com pequenos códigos para o projeto, e ainda assim

O PHP/FI 2.0 foi oficialmente lançado somente em Novembro de 1997, após perder a maior parte de sua vida em versões betas. Ele foi rapidamente substituído pelos alphas do PHP 3.0.

Exemplo #1 Example PHP/FI Code

<!--include /text/header.html-->

<!--getenv HTTP_USER_AGENT-->
<!--ifsubstr $exec_result Mozilla-->
Hey, you are using Netscape!<p>
<!--endif-->

<!--sql database select * from table where user='$username'-->
<!--ifless $numentries 1-->
Sorry, that record does not exist<p>
<!--endif exit-->
Welcome <!--$user-->!<p>
You have <!--$index:0--> credits left in your account.<p>

<!--include /text/footer.html-->

PHP 3

O PHP 3.0 foi a primeira versão que se assemelha ao PHP que nós conhecemos hoje. Ela foi criada por Andi Gutmans e Zeev Suraski em 1997 e foi totalmente reescrito, após eles descobrirem que o PHP/FI 2.0 poderia ajudá-los a desenvolver suas próprias aplicações de eCommerce de um projeto da Uiversidade. No esforço cooperativo e iniciativa de começar o PHP/FI à partir da base-usuário existente, Andi, Rasmus e Zeev decidiram cooperar e anunciar o PHP 3.0 como uma versão oficial de seu sucessor o PHP/FI 2.0, e o desenvolvimento do PHP/FI 2.0 foram descontinuados.

Uma das maiores características do PHP 3.0 era sua forte capacidade de extensibilidade. Além de oferecer aos usuários finais uma infraestrutura sólida para diversos bancos de dados, protocolos e APIs, o extensibilidade do PHP 3.0 atraí dezenas de desenvolvedores para se juntar e submeter novos módulos. Esta é a chave do tremendo sucesso do PHP 3.0. Outras características chaves introduzidas no PHP 3.0 foram o suporte à sintaxe para orientação à objetos e uma sintaxe muito mais poderosa e consistente.

Toda a nova versão da linguagem foi realizada sob um novo nome, que removeu a impressão do limitado uso pessoal que o PHP/FI 2.0 prendeu. Ela foi nomeada simplesmente 'PHP', com o significado que é um acrônimo - PHP: Hypertext Preprocessor.

No final de 1998, o PHP obteve uma base the dezenas de milhares de usuários (estimativa) e centenas de milhares de Web sites relatando que o tinham instalado. Em seu pico, o PHP 3.0 foi instalado em aproximadamente 10% dos servidores Web da Internet.

O PHP 3.0 foi oficialmente lançado em Junho de 1998, depois de ter passado aproximadamente 9 meses em testes públicos.

PHP 4

O PHP 3.0 foi oficialmente lançado em Junho de 1998, depois de ter passado aproximadamente 9 meses em testes públicos. Os objetivos do projeto eram melhorar a performance de aplicações complexas, e melhorar a modularidade do código base do PHP.Tais aplicações foram possíveis por causa das novas características do PHP 3.0 e o suporte a uma variadade de banco de dados de terceiros e APIs, mas o PHP 3.0 não foi projetado para trabalhar com aplicações muito complexas eficientemente.

A nova engine, dublado 'Zend Engine' (conhecidos pelos seus primeiros nomes, Zeev e Andi), fazendo desse objetivo um sucesso, e foi introduzida em meados de 1999. PHP 4.0, baseado nesta engine, e acompanhado com uma série de novas características, foi oficialmente lançada em Maio de 2000, quase dois anos após o seu predecessor, o PHP 3.0.Além da altíssimo melhoramento da performance desta versão, o PHP 4.0 incluiu outras características chave como o suporte para muitos servidores WEb, sessões HTTP, buffer de saída, maneiras mais seguras de manipular input de usuários e muitas construções novas na linguagem.

Hoje, o PHP está começando a ser usado por centenas de milhares de desenvolvedores (estimativa), e muitos milhões de sites reportam que tem o PHP instalado, que explica os 20% de domínios da Internet.

A equipe de desenvolvimento do PHP contém dezenas de desenvolvedores, bem como dezenas de outros que trabalham com projetos relacionados ao PHP como o PEAR e a documentação do projeto.

PHP 5

PHP 5 foi lançado em julho de 2004 depois de um longo desenvolvimento e vários pre-releases. Ele principalmente introduziu o core, a Zend Engine 2.0 com um novo modelo de orientação a objetos e várias outras características.

A História do PHP e projetos relacionados
A História dos projetos relacionados ao PHP
A História do PHP e projetos relacionados


A História dos projetos relacionados ao PHP

PEAR

» PEAR, o repositório do PHP de aplicação e extensão (originalmente, Extensão do PHP e Repositório de Add-on) são as versões das classes da fundação do PHP, e talvez cresçam no futuro para ser um dos caminhos principais para distribuir o PHP em ambas extensões, C e PHP entre os desenvolvedores.

O PEAR nasceu em discussões realizadas nas PHP Developers' Meeting-PMD (Reuniões dos Desenvolvedores do PHP-RDP) realizada em Janeiro de 2000 em Tel Aviv. Foi criada por Sitg S. Bakken, e é dedicada à sua primeira filha, Malin Bakken.

Desde o começo de 2000, o PEAR cresceu para ser um grande, e significativo projeto com um largo número de desenvolvedores trabalhando em executar tarefas comuns, funcionalidades reusáveis para o benefício de toda a comunidade PHP. Hoje em dia o PEAR incluí acesso à base de dados, cache de conteúdo, calculações matemáticas, eCommerce e muito mais.

Mais informação sobre o PEAR pode ser encontrada em » O manual.

A Iniciativa da Garantia de Qualidade do PHP

A » Iniciativa da Garantia de Qualidade do PHP foi criada no verão de 2000 em resposta às críticas sobre as versões do PHP não terem sido testadas o bastante para ambientes de produção. O time agora consiste em um grupo de desenvolvedores com um bom entendimento sobre o código base do PHP. Estes desenvolvedores gastam muito boa parte do tempo deles localizando e consertando bugs dentro do PHP. Além disso há muitos outros membros do time que são os que testam e fornecem o feedback destes consertos usando um larga variedade de plataformas.

PHP-GTK

O » PHP-GTK é a solução PHP para aplicações GUI client side (lado-cliente). Andrei Zmievski recorda o processo de planejamento e criação do PHP-GTK:

A programação GUI sempre foi de meu interesse, e eu achei que o Gtk+ é uma ferramenta muito boa, exceto que a programação dela usa o C que algumas vezes é um tédio. Após testemunhar as implementações do PyGtk e GTK-Perl, eu decidi ver se o PHP poderia ter uma interface Gtk+. Começando em Agosto de 2000, eu comecei a ter um pouco mais de tempo livre que foi quando eu comecei a experimentar. Minha linha guia principal foi a implementação da interface PyGtk pois ela tinha seus atributos bastante completos e tinha uma boa interface orientada a objetos, o autor do PyGtk, me ajudou muito durante os estágios iniciais.

Escrever as interfaces na mão para todas as funções do Gtk+ estava fora de questão, então eu tive uma idéia de criar um gerador de código, similar à como o PyGtk foi feito. O gerador de código é um programa PHP que lê uma série de arquivos .def contendo as classes Gtk+, constantes, e as informações dos métodos e geradores de código C que irão trabalhar com o PHP. O que não pode ser gerado automaticamente pode ser escrito em arquivos .overrides.

Trabalhando no gerador de código e na infraestrutura levou algum tempo, porque eu tinha pouco tempo para trabalhar no PHP-GTK durante o fim de 2000. Depois de eu mostrar o PHP-GTK ao Frank Kromann, ele se interessou e começou a me ajudar com o gerador de código e a implementação para Win32. Quando nós escrevemos o primeiro programa 'Hello World' e o rodamos, foi extremamente excitante. Levou mais alguns meses para deixar o projeto em uma condição apresentável e lançar a versão inicial realizada em 1 de Março de 2001. O relatório logo foi apresentada no SlashDot

Detectando que o PHP-GTK pode ser extensivo, eu decidi separar as listas de discussão e os repositórios CVS para isto, bem como o website gtk.php.net com ajuda de Colin Viebrock. A documentação também era necessária ser feita e James Moore veio me ajudar com isso.

Desde sua realização o PHP-GTK vem ganhando popularidade. Agora, nós temos nosso próprio time de documentação, o manual continua melhorando, as pessoas começam a escrever extensões para o PHP-GTK, e mais e mais aplicativos excitantes com ele.

A História do PHP
Livros sobre PHP
A História do PHP e projetos relacionados


Livros sobre PHP

O PHP cresceu, ele começou a ser reconhecido mundialmente como a plataforma mais popular. Uma das maneiras mais interessantes de ver esta tendência é observar os livros sobre PHP que surgirão ao longo dos anos.

Até onde nós sabemos, o primeiro livro dedicado ao PHP foi 'PHP- tvorba interaktivních internetových aplikací' - um livro Czech publicado em Abril de 1999, pela autora Jirka Kosek. No mês seguinte veio o livro Alemão escrito por Egon Schmid, Christian Cartus e Richard Blume. O primeiro livro em Inglês sobre PHP foi publicado logo depois, e foi chamado 'Core PHP Programming' por Leon Atkinson. Todos estes livros falavam sobre o PHP 3.0.

Enquanto estes livros eram os primeiros deste tipo - serviram para inspirar um grande número de livros de outros autores e editoras. Há aproximadamente 40 livros em Inglês, 50 livros em Alemão, e uns 20 livros em Francês! Além disso, você pdoe encontrar livros sobre PHP em muitas outras línguas, incluindo Espanhol, Koreâno, Japonês e Hebráico.

Obviamente, este grande número de livros, escritos por diferentes autores, publicados por muitas editoras, e disponíveis em muitas línguas - é uma prova do sucesso mundial do PHP.

A História dos projetos relacionados ao PHP
Publicações sobre PHP
A História do PHP e projetos relacionados


Publicações sobre PHP

Até onde nós sabemos, o primeiro artigo sobre PHP foi publicado em uma revista parecida com a Computerworld na Tchecoslováquia em meados de 1998, e cobria o PHP 3.0. Como os livros, este foi um de uma sério de muitos artigos publicados sobre PHP em várias revistas proeminentes.

Artigos sobre PHP apareceram no Dr. Dobbs, Empresas de Linux, Revistas de Linux e em muitos outros lugares. Artigos sobre migração de aplicações baseadas em ASP para PHP rodando Windows foram publicadas mesmo na Microsoft e até mesmo na MSDN!

Livros sobre PHP
Migrating from PHP 5.2.x to PHP 5.3.x
A História do PHP e projetos relacionados


Migrating from PHP 5.2.x to PHP 5.3.x

Índice

  • What has changed in PHP 5.3.x
  • Backward Incompatible Changes
  • New features
  • Changes made to Windows support
  • Changes in SAPI modules
  • Deprecated features in PHP 5.3.x
  • Undeprecated features in PHP 5.3.x
  • New Parameters
  • New Functions
  • New stream wrappers
  • New stream filters
  • New Class Constants
  • New Methods
  • New Extensions
  • Removed Extensions
  • Other changes to extensions
  • New Classes
  • New Global Constants
  • Changes to INI file handling
  • Other changes

Veja também o guia de migração para versões do PHP 5.0.x, 5.1.x and 5.2.x.

Publicações sobre PHP
What has changed in PHP 5.3.x
Apêndices


What has changed in PHP 5.3.x

Most improvements in PHP 5.3.x have no impact on existing code. There are a few incompatibilities and new features that should be considered, and code should be tested before switching PHP versions in production environments.

For systems being upgraded from an older version of PHP, the relevant documentation is available at:

  • Upgrade Notes for PHP 5.2.x.
  • Upgrade Notes for PHP 5.1.x.
  • Migrating from PHP 4 to PHP 5.
Migrating from PHP 5.2.x to PHP 5.3.x
Backward Incompatible Changes
Migrating from PHP 5.2.x to PHP 5.3.x


Backward Incompatible Changes

Although most existing PHP 5 code should work without changes, please take note of some backward incompatible changes:

  • The newer internal parameter parsing API has been applied across all the extensions bundled with PHP 5.3.x. This parameter parsing API causes functions to return NULL when passed incompatible parameters. There are some exceptions to this rule, such as the get_class() function, which will continue to return FALSE on error.
  • clearstatcache() no longer clears the realpath cache by default.
  • realpath() is now fully platform-independent. Consequence of this is that invalid relative paths such as __FILE__ . "/../x" do not work anymore.
  • The call_user_func() family of functions now propagate $this even if the callee is a parent class.
  • The array functions natsort(),
natcasesort(), usort(),
uasort(), uksort(),
array_flip(), and array_unique() no
longer accept objects passed as arguments. To apply these functions to an
object, cast the object to an array first.
  • The behaviour of functions with by-reference parameters called by value has changed. Where previously the function would accept the by-value argument, a fatal error is now emitted. Any previous code passing constants or literals to functions expecting references, will need altering to assign the value to a variable before calling the function.
  • The new mysqlnd library necessitates the use of MySQL 4.1's newer 41-byte password format. Continued use of the old 16-byte passwords will cause mysql_connect() and similar functions to emit the error, "mysqlnd cannot connect to MySQL 4.1+ using old authentication."
  • The new mysqlnd library does not read mysql configuration files (my.cnf/my.ini), as the older libmysql library does. If your code relies on settings in the configuration file, you can load it explicitly with the mysqli_options() function. Note that this means the PDO specific constants PDO::MYSQL_ATTR_READ_DEFAULT_FILE and PDO::MYSQL_ATTR_READ_DEFAULT_GROUP are not defined if MySQL support in PDO is compiled with mysqlnd.
  • The trailing / has been removed from the SplFileInfo class and other related directory classes.
  • The __toString magic method can no longer accept arguments.
  • The magic methods __get, __set, __isset, __unset, and __call must always be public and can no longer be static. Method signatures are now enforced.
  • The __call magic method is now invoked on access to private and protected methods.
  • func_get_arg(), func_get_args() and func_num_args() can no longer be called from the outermost scope of a file that has been included by calling include() or require() from within a function in the calling file.
  • An emulation layer for the MHASH extension to wrap around the Hash extension have been added. However not all the algorithms are covered, notable the s2k hashing algorithm. This means that s2k hashing is no longer available as of PHP 5.3.0.

The following keywords are now reserved and may not be used in function, class, etc. names.

  • goto
  • namespace
What has changed in PHP 5.3.x
New features
Migrating from PHP 5.2.x to PHP 5.3.x


New features

PHP 5.3.0 offers a wide range of new features:

  • Support for namespaces has been added.
  • Support for Late Static Bindings has been added.
  • Support for jump labels (limited goto) has been added.
  • Support for native Closures (Lambda/Anonymous functions) has been added.
  • There are two new magic methods, __callStatic and __invoke.
  • Nowdoc syntax is now supported, similar to Heredoc syntax, but with single quotes.
  • It is now possible to use Heredocs to initialize static variables and class properties/constants.
  • Heredocs may now be declared using double quotes, complementing the Nowdoc syntax.
  • Constants can now be declared outside a class using the const keyword.
  • The ternary operator now has a shorthand form: ?:.
  • The HTTP stream wrapper now considers all status codes from 200 to 399 to be successful.
  • Dynamic access to static methods is now possible.
  • Exceptions can now be nested.
  • A garbage collector for circular references has been added, and is enabled by default.
  • The mail() function now supports logging of sent email. (Note: This only applies to email sent through this function.)
Backward Incompatible Changes
Changes made to Windows support
Migrating from PHP 5.2.x to PHP 5.3.x


Changes made to Windows support

Changes to the Windows releases:

  • The minimum Windows version is now Windows XP SP3; Windows 98, ME, 2000 and NT4 are no longer supported.
  • Windows binaries now target i586 and later. i386 and i486 are not supported.
  • There is now experimental support for x64 versions of PHP on Windows.
  • There is now compiler support for Visual C++ 9 (VC9), using Visual Studio 2008. Snapshots and releases will now also be available for VC9. Old binaries using VC6 are still supported and released in the line with VC9.
  • The PDO_OCI php_pdo_oci8.dll library (for use with Oracle version 8 client libraries) is no longer being built. Instead, use php_pdo_oci.dll (note no '8') with Oracle 10 or 11 client libraries. Connection to other database versions is still supported.
  • For the OCI8 extension, a new library php_oci8_11g.dll is available in addition to php_oci8.dll. Only one can be enabled at any time. Use php_oci8.dll with Oracle 10.2 client libraries. Use php_oci8_11g.dll with Oracle 11 client libraries. Connection to other database versions is still supported.

Windows support has been added for the following functions:

  • checkdnsrr()
  • dns_get_record()
  • fnmatch()
  • getmxrr()
  • getopt()
  • imagecolorclosesthwb()
  • inet_ntop()
  • inet_pton()
  • link()
  • linkinfo()
  • mcrypt_create_iv()
  • readlink()
  • socket_create_pair() - This function was previously available on Windows, but was disabled as of PHP 4.3.0 due to a bug.
  • stream_socket_pair()
  • symlink()
  • time_nanosleep()
  • time_sleep_until()

Other changes:

  • Improved portability of the stat(), touch(), filemtime(), filesize() functions, and other related functions (100% portable for the available data).
  • It is now possible to create hard links on Windows using the link() function, and symbolic links using the symlink() function. Hard links are available as of Windows 2000, and symbolic links as of Windows Vista.
  • The Windows version of PHP now exposes a set of constants prefixed PHP_WINDOWS_*. A list of these constants and their usage can be found at Constantes pré-definidas.
Aviso

Support for the ISAPI module has been dropped. Use the improved FastCGI SAPI module instead.

Nota: A new dedicated site for PHP on Windows is now available, including downloads, release candidates, and snapshots in various flavors (thread-safe/not-thread-safe, VC6/VC9, x86/x64). The URL of this site is » http://windows.php.net/.

New features
Changes in SAPI modules
Migrating from PHP 5.2.x to PHP 5.3.x


Changes in SAPI modules

  • A new SAPI module named litespeed is now available.
  • FastCGI support in the CGI SAPI is now always enabled and can not be disabled. See sapi/cgi/CHANGES for more details.
  • A new CGI SAPI option, -T, can be used to measure repeated execution time of a script.
  • CGI/FastCGI now has support for .htaccess-style user-defined php.ini files.
  • The dl() function is now disabled by default, and is now available only under the CLI, CGI, and embed SAPIs.
Changes made to Windows support
Deprecated features in PHP 5.3.x
Migrating from PHP 5.2.x to PHP 5.3.x


Deprecated features in PHP 5.3.x

PHP 5.3.0 introduces two new error levels: E_DEPRECATED and E_USER_DEPRECATED. The E_DEPRECATED error level is used to indicate that a function or feature has been deprecated. The E_USER_DEPRECATED level is intended for indicating deprecated features in user code, similarly to the E_USER_ERROR and E_USER_WARNING levels.

The following is a list of deprecated INI directives. Use of any of these INI directives will cause an E_DEPRECATED error to be thrown at startup.

  • define_syslog_variables
  • register_globals
  • register_long_arrays
  • safe_mode
  • magic_quotes_gpc
  • magic_quotes_runtime
  • magic_quotes_sybase
  • Comments starting with '#' are now deprecated in .INI files.

Deprecated functions:

  • call_user_method() (use call_user_func() instead)
  • call_user_method_array() (use call_user_func_array() instead)
  • define_syslog_variables()
  • dl()
  • ereg() (use preg_match() instead)
  • ereg_replace() (use preg_replace() instead)
  • eregi() (use preg_match() with the 'i' modifier instead)
  • eregi_replace() (use preg_replace() with the 'i' modifier instead)
  • set_magic_quotes_runtime() and its alias, magic_quotes_runtime()
  • session_register() (use the $_SESSION superglobal instead)
  • session_unregister() (use the $_SESSION superglobal instead)
  • session_is_registered() (use the $_SESSION superglobal instead)
  • set_socket_blocking() (use stream_set_blocking() instead)
  • split() (use preg_split() instead)
  • spliti() (use preg_split() with the 'i' modifier instead)
  • sql_regcase()
  • mysql_db_query() (use mysql_select_db() and mysql_query() instead)
  • mysql_escape_string() (use mysql_real_escape_string() instead)
  • Passing locale category names as strings is now deprecated. Use the LC_* family of constants instead.
  • The is_dst parameter to mktime(). Use the new timezone handling functions instead.

Deprecated features:

  • Assigning the return value of new by reference is now deprecated.
  • Call-time pass-by-reference is now deprecated.
Changes in SAPI modules
Undeprecated features in PHP 5.3.x
Migrating from PHP 5.2.x to PHP 5.3.x


Undeprecated features in PHP 5.3.x

The is_a() function has been undeprecated by popular request; it will no longer issue an E_STRICT error.

Deprecated features in PHP 5.3.x
New Parameters
Migrating from PHP 5.2.x to PHP 5.3.x


New Parameters

Several functions were given new, optional parameters in PHP 5.3:

PHP Core:

  • clearstatcache() - Added clear_realpath_cache and filename.
  • copy() - Added a stream context parameter, context.
  • fgetcsv() - Added escape.
  • ini_get_all() - Added details.
  • nl2br() - Added is_xhtml.
  • parse_ini_file() - Added scanner_mode.
  • round() - Added mode.
  • stream_context_create() - Added params.
  • strstr() and stristr() - Added before_needle.

json:

  • json_encode() - Added options.
  • json_decode() - Added depth.

Streams:

  • stream_select(),
stream_set_blocking(),
stream_set_timeout(), and
stream_set_write_buffer() now work with user-space
stream wrappers.

sybase_ct:

  • sybase_connect() - Added new.

New method parameters in PHP 5.3.0:

PHP Core:

  • Exception::__construct() - Added previous.
Undeprecated features in PHP 5.3.x
New Functions
Migrating from PHP 5.2.x to PHP 5.3.x


New Functions

PHP 5.3 introduced some new functions:

PHP Core:

  • array_replace() - Replaces elements from passed arrays into one array.
  • array_replace_recursive() - Recursively replaces elements from passed arrays into one array.
  • class_alias() - Creates an alias for a user defined class.
  • forward_static_call() - Call a user function from a method context.
  • forward_static_call_array() - Call a user function from a method context, with the arguments contained in an array.
  • gc_collect_cycles() - Forces collection of any existing garbage cycles.
  • gc_disable() - Deactivates the circular reference collector.
  • gc_enable() - Activates the circular reference collector.
  • gc_enabled() - Returns the status of the circular reference collector.
  • get_called_class() - Return the name of the class a static method is called in.
  • gethostname() - Return the current host name for the local machine.
  • header_remove() - Removes an HTTP header previously set using the header() function.
  • lcfirst() - Make a string's first character lowercase.
  • parse_ini_string() - Parse a configuration string.
  • quoted_printable_encode() - Convert an 8 bit string to a quoted-printable string.
  • str_getcsv() - Parse a CSV string into an array.
  • stream_context_set_default() - Set the default stream context.
  • stream_supports_lock() - Return TRUE if the stream supports locking.
  • stream_context_get_params() - Retrieve parameters from a stream context.
  • streamWrapper::stream_cast() - Retrieve the underlying stream resource.
  • streamWrapper::stream_set_option() - Change stream options

Date/Time:

  • date_add() - Adds an amount of days, months, years, hours, minutes and seconds to a DateTime object.
  • date_create_from_format() - Returns a new DateTime object formatted according to the given format.
  • date_diff() - Returns the difference between two DateTime objects.
  • date_get_last_errors() - Returns the warnings and errors from the last date/time operation.
  • date_parse_from_format() - Get infoformation about a given date.
  • date_sub() - Subtracts an amount of days, months, years, hours, minutes and seconds from a DateTime object.
  • timezone_version_get() - Returns the version of the timezonedb.

GMP:

  • gmp_testbit() - Tests whether a bit is set.

Hash:

  • hash_copy() - Copy hashing context.

IMAP:

  • imap_gc() - Clears IMAP cache.
  • imap_utf8_to_mutf7() - Encode a UTF-8 string to modified UTF-7.
  • imap_mutf7_to_utf8() - Decode a modified UTF-7 string to UTF-8.

JSON:

  • json_last_error() - Returns the last JSON error that occurred.

MySQL Improved:

  • mysqli_fetch_all() - Fetches all result rows as an associative array, a numeric array, or both.
  • mysqli_get_connection_stats() - Returns statistics about the client connection.
  • mysqli_poll() - Poll connections.
  • mysqli_reap_async_query() - Get result from async query.

OpenSSL:

  • openssl_random_pseudo_bytes() - Returns a string of the given length specified, filled with pseudo-random bytes.

PCNTL:

  • pcntl_signal_dispatch() - Calls signal handlers for pending signals.
  • pcntl_sigprocmask() - Sets and retrieves blocked signals.
  • pcntl_sigtimedwait() - Wait for signals with a timeout.
  • pcntl_sigwaitinfo() - Wait for signals.

PCRE:

  • preg_filter() - Perform a regular expression search and replace, returning only results which matched the pattern.

Semaphore:

  • msg_queue_exists() - Check whether a message queue exists.
  • shm_has_var() - Checks whether a specific key exists inside a shared memory segment.

The following functions are now natively implemented, making them available on all operating systems which can run PHP:

  • acosh()
  • asinh()
  • atanh()
  • expm1()
  • log1p()
New Parameters
New stream wrappers
Migrating from PHP 5.2.x to PHP 5.3.x


New stream wrappers

The following stream wrappers were introduced in 5.3.0:

  • glob://
  • phar://
New Functions
New stream filters
Migrating from PHP 5.2.x to PHP 5.3.x


New stream filters

The following stream filters were introduced in 5.3.0:

  • dechunk (reverses HTTP chunked encoding)
  • The bz2.decompress filter now supports concatenation.
New stream wrappers
New Class Constants
Migrating from PHP 5.2.x to PHP 5.3.x


New Class Constants

Several new class constants were introduced in 5.3.0:

PDO_FIREBIRD:

  • PDO::FB_ATTR_DATE_FORMAT - Sets the format for dates.
  • PDO::FB_ATTR_TIME_FORMAT - Sets the format for time.
  • PDO::FB_ATTR_TIMESTAMP_FORMAT - Sets the format for timestamps.
New stream filters
New Methods
Migrating from PHP 5.2.x to PHP 5.3.x


New Methods

Several new methods were introduced in 5.3.0:

Date/Time:

  • DateTime::add() - Adds an amount of days, months, years, hours, minutes and seconds to a DateTime object.
  • DateTime::createFromFormat() - Returns a new DateTime object formatted according to the given format.
  • DateTime::diff() - Returns the difference between two DateTime objects.
  • DateTime::getLastErrors() - Returns the warnings and errors from the last date/time operation.
  • DateTime::sub() - Subtracts an amount of days, months, years, hours, minutes and seconds from a DateTime object.

Exception:

  • Exception::getPrevious() - Retrieves the previous exception.

DOM:

  • DOMNode::getLineNo() - Get the line number of a parsed node.

PDO_FIREBIRD:

  • PDO::setAttribute() - Sets an attribute.

Reflection:

  • ReflectionClass::getNamespaceName() - Returns the name of namespace where this class is defined.
  • ReflectionClass::getShortName() - Returns the short name of this class (without namespace part).
  • ReflectionClass::inNamespace() - Returns whether this class is defined in a namespace.
  • ReflectionFunction::getNamespaceName() - Returns the name of namespace where this function is defined.
  • ReflectionFunction::getShortName() - Returns the short name of the function (without namespace part).
  • ReflectionFunction::inNamespace() - Returns whether this function is defined in a namespace.
  • ReflectionProperty::setAccessible() - Sets whether non-public properties can be requested.

SPL:

  • SplObjectStorage::addAll() - Add all elements from another SplObjectStorage object.
  • SplObjectStorage::removeAll() - Remove all elements from another SplObjectStorage object.

XSL:

  • XSLTProcessor::setProfiling() - Sets the profiling output file.
New Class Constants
New Extensions
Migrating from PHP 5.2.x to PHP 5.3.x


New Extensions

The following new extensions are added (by default) as of PHP 5.3.0:

  • Enchant - An abstraction layer above various spelling libraries
  • Fileinfo - An improved and more solid replacement, featuring full BC, for the Mimetype extension, which has been removed.
  • INTL - Internationalization extension. INTL is a wrapper around the » ICU library.
  • Phar - Implementation of PHP-Archive files.
  • SQLite3 - Support for SQLite version 3 databases.

mysqlnd is a new core library shipped with PHP. It is a PHP-specific replacement for libmysql. mysqlnd will be used to build the mysql, mysqli and PDO_MySQL extensions if libmysql isnt found on the system. It may also be used instead of libmysql even when libmysql is present. mysqlnd is recommended for all PHP installations for performance reasons.

New Methods
Removed Extensions
Migrating from PHP 5.2.x to PHP 5.3.x


Removed Extensions

These extensions have been moved to PECL and are no longer part of the PHP distribution. The PECL package versions of these extensions will be created according to user demand.

  • dbase - No longer maintained
  • fbsql - No longer maintained
  • fdf - Maintained
  • ming - Maintained
  • msql - No longer maintained
  • ncurses - Maintained
  • sybase - Discontinued; use the sybase_ct extension instead
  • mhash - Discontinued; use the hash extension instead. hash has full mhash compatibility; all existing applications using the old functions will continue to work.
New Extensions
Other changes to extensions
Migrating from PHP 5.2.x to PHP 5.3.x


Other changes to extensions

The following extensions can no longer be disabled during build configuration:

  • PCRE
  • Reflection
  • SPL

Changes in extension behaviour, and new features:

  • Date and Time - The TZ environment variable is no longer used to guess the timezone
  • cURL - cURL now supports SSH
  • Network - dns_check_record() now returns an extra "entries" index, containing the TXT elements.
  • Hash - The SHA-224 and salsa hash algorithms are now supported.
  • mbstring - Now supports CP850 encoding.
  • OCI8 - A call to oci_close() on a persistent connection, or a variable referencing a persistent connection going out of scope, will now roll back any uncommitted transaction. To avoid unexpected behavior, explicitly issue a commit or roll back as needed. The old behavior can be enabled with the INI directive oci8.old_oci_close_semantics. Database Resident Connection Pooling (DRCP) and Fast Application Notification (FAN) are now supported. Oracle External Authentication is now supported (except on Windows). The oci_bind_by_name() function now supports SQLT_AFC (aka the CHAR datatype).
  • OpenSSL - OpenSSL digest and cipher functions are now supported. It is also now possible to access the internal values of DSA, RSA and DH keys.
  • Session - Sessions will no longer store session-files in "/tmp" when open_basedir restrictions apply, unless "/tmp" is explicitly added to the list of allowed paths.
  • SOAP Now supports sending user supplied HTTP headers.
  • MySQLi Now supports persistent connections, by prepending the hostname with "p:".
  • Image Processing and GD The "JPG Support" index returned from gd_info() has been renamed to "JPEG Support".
Removed Extensions
New Classes
Migrating from PHP 5.2.x to PHP 5.3.x


New Classes

The following classes were introduced in PHP 5.3.0:

Date/Time:

  • DateInterval
  • DatePeriod

Phar:

  • Phar
  • PharData
  • PharException
  • PharFileInfo

SPL:

  • FilesystemIterator
  • GlobIterator
  • MultipleIterator
  • RecursiveTreeIterator
  • SplDoublyLinkedList
  • SplFixedArray
  • SplHeap
  • SplMaxHeap
  • SplMinHeap
  • SplPriorityQueue
  • SplQueue
  • SplStack
Other changes to extensions
New Global Constants
Migrating from PHP 5.2.x to PHP 5.3.x


New Global Constants

PHP Core:

  • __DIR__
  • __NAMESPACE__
  • E_DEPRECATED
  • E_USER_DEPRECATED
  • INI_SCANNER_NORMAL
  • INI_SCANNER_RAW
  • PHP_MAXPATHLEN
  • PHP_WINDOWS_NT_DOMAIN_CONTROLLER
  • PHP_WINDOWS_NT_SERVER
  • PHP_WINDOWS_NT_WORKSTATION
  • PHP_WINDOWS_VERSION_BUILD
  • PHP_WINDOWS_VERSION_MAJOR
  • PHP_WINDOWS_VERSION_MINOR
  • PHP_WINDOWS_VERSION_PLATFORM
  • PHP_WINDOWS_VERSION_PRODUCTTYPE
  • PHP_WINDOWS_VERSION_SP_MAJOR
  • PHP_WINDOWS_VERSION_SP_MINOR
  • PHP_WINDOWS_VERSION_SUITEMASK

cURL:

  • CURLOPT_PROGRESSFUNCTION

GD:

  • IMG_FILTER_PIXELATE

JSON:

  • JSON_ERROR_CTRL_CHAR
  • JSON_ERROR_DEPTH
  • JSON_ERROR_NONE
  • JSON_ERROR_STATE_MISMATCH
  • JSON_ERROR_SYNTAX
  • JSON_FORCE_OBJECT
  • JSON_HEX_TAG
  • JSON_HEX_AMP
  • JSON_HEX_APOS
  • JSON_HEX_QUOT

LDAP:

  • LDAP_OPT_NETWORK_TIMEOUT

libxml:

  • LIBXML_LOADED_VERSION

PCRE:

  • PREG_BAD_UTF8_OFFSET_ERROR

PCNTL:

  • BUS_ADRALN
  • BUS_ADRERR
  • BUS_OBJERR
  • CLD_CONTIUNED
  • CLD_DUMPED
  • CLD_EXITED
  • CLD_KILLED
  • CLD_STOPPED
  • CLD_TRAPPED
  • FPE_FLTDIV
  • FPE_FLTINV
  • FPE_FLTOVF
  • FPE_FLTRES
  • FPE_FLTSUB
  • FPE_FLTUND
  • FPE_INTDIV
  • FPE_INTOVF
  • ILL_BADSTK
  • ILL_COPROC
  • ILL_ILLADR
  • ILL_ILLOPC
  • ILL_ILLOPN
  • ILL_ILLTRP
  • ILL_PRVOPC
  • ILL_PRVREG
  • POLL_ERR
  • POLL_HUP
  • POLL_IN
  • POLL_MSG
  • POLL_OUT
  • POLL_PRI
  • SEGV_ACCERR
  • SEGV_MAPERR
  • SI_ASYNCIO
  • SI_KERNEL
  • SI_MESGQ
  • SI_NOINFO
  • SI_QUEUE
  • SI_SIGIO
  • SI_TIMER
  • SI_TKILL
  • SI_USER
  • SIG_BLOCK
  • SIG_SETMASK
  • SIG_UNBLOCK
  • TRAP_BRKPT
  • TRAP_TRACE
New Classes
Changes to INI file handling
Migrating from PHP 5.2.x to PHP 5.3.x


Changes to INI file handling

PHP 5.3.0 has significantly improved performance and parsing of INI files, and adds several new syntax features.

  • The standard php.ini files have been re-organized and renamed. php.ini-development contains settings recommded for use in development environments. php.ini-production contains settings recommended for use in production environments.
  • There is now support for two special sections: [PATH=/opt/httpd/www.example.com/] and [HOST=www.example.com]. Directives set in these sections cannot be overridden by user-defined INI files or at runtime. More information about these sections can be found here.
  • zend_extension_debug and zend_extension_ts have been removed. Use the zend_extension directive to load all Zend Extensions.
  • zend.ze1_compatibility_mode has been removed. If this INI directive is set to On, an E_ERROR error is emitted at startup.
  • It is now possible to use the full path to load modules using the "extension" directive.
  • "ini-variables" can now be used almost anywhere in a php.ini file.
  • Runtime tightening of open_basedir restrictions is now possible.
  • It is now possible to use alphanumeric or variable indices in INI option arrays.
  • get_cfg_var() is now able to return "array" INI options.
  • A new directive, mail.add_x_header, has been added.
  • user_ini.filename is new
  • user_ini.cache_ttl is also new
  • exit_on_timeout is new too
  • open_basedir is now PHP_INI_ALL

The following new ini directives have been added:

  • user_ini.filename and user_ini.cache_ttl for the new .htaccess-style user INI file mechanism.
  • Added mbstring.http_output_conv_mimetype. This directive specifies the regex pattern of content types for which mb_output_handler() is activated.
  • Added request_order. Allows controlling which external variables will be available in $_REQUEST.

The following ini directives have new default values:

  • session.use_only_cookies is now set to "1" (enabled) by default.
  • oci8.default_prefetch has changed from "10" to "100".
New Global Constants
Other changes
Migrating from PHP 5.2.x to PHP 5.3.x


Other changes

  • SplFileInfo::getpathinfo() now returns information about the path name.
  • SplObjectStorage now has ArrayAccess support. It is now also possible to store associative information with objects in SplObjectStorage.
  • In the GD extension, there is now pixelation support available through the imagefilter() function.
  • var_dump() output now includes private object properties.
  • session_start() now returns FALSE when session startup fails.
  • property_exists() now checks the existence of a property independent of accessibility (like method_exists()).
  • Stream wrappers can now be used by include_path.
  • The initial parameter for array_reduce() can now be of any type.
  • The directory functions opendir(), scandir(), and dir() now use the default stream context if no explicit context is passed.
  • crypt() now has Blowfish and extended DES support, and crypt() features are now 100% portable. PHP has its own internal crypt implementation which drops into place when support for crypt or crypt_r is not found.
  • getopt() now accepts "long options" on all platforms. Optional values and = as a separator for short options are now supported.
  • fopen() has a new mode option (n), which passes O_NONBLOCK to the underlying open() system call. Note that this mode is not currently supported on Windows.
  • getimagesize() now supports icon files (.ico).
  • The mhash extension have moved to PECL, but the Hash extension have been modified to support mhash if PHP is compiled with --with-mhash. Note that the Hash extension does not require the mhash library to be available whether or not the mhash emulation is enabled.
Changes to INI file handling
Migrating from PHP 5.1.x to PHP 5.2.x
Migrating from PHP 5.2.x to PHP 5.3.x


Migrating from PHP 5.1.x to PHP 5.2.x

Índice

  • What has changed in PHP 5.2.x
  • Backward Incompatible Changes
  • New Error Messages
  • Changes in PHP datetime support
  • New Parameters
  • New Functions
  • New Methods
  • Removed Extensions
  • New Extensions
  • New Classes
  • New Global Constants
  • New Class Constants
  • New INI Configuration Directives
  • Error Reporting
  • Other Enhancements

Veja também o guia de migração para versões do PHP 5.0.x, 5.1.x and 5.3.x.

Other changes
What has changed in PHP 5.2.x
Apêndices


What has changed in PHP 5.2.x

Most improvements in PHP 5.2.x have no impact on existing code. There are a few incompatibilities and new error messages that should be considered, and code should be tested before switching PHP versions in production environments.

If the system is being upgraded from PHP 5.0.x, the manual section titled Upgrade Notes for PHP 5.1.x should also be read.

Similarly, if the system is being upgraded from PHP 4, the manual section titled Migrating from PHP 4 to PHP 5 should be read as well.

Migrating from PHP 5.1.x to PHP 5.2.x
Backward Incompatible Changes
Migrating from PHP 5.1.x to PHP 5.2.x


Backward Incompatible Changes

Although most existing PHP 5 code should work without changes, you should pay attention to the following backward incompatible changes:

  • getrusage() returns NULL when passed incompatible arguments as of PHP 5.2.1.
  • ZipArchive::setCommentName() returns TRUE on success as of PHP 5.2.1.
  • ZipArchive::setCommentIndex() returns TRUE on success as of PHP 5.2.1.
  • SplFileObject::getFilename() returns the filename, not relative/path/to/file, as of PHP 5.2.1.
  • Changed priority of PHPRC environment variable on Win32 The PHPRC environment variable now takes priority over the path stored in the Windows registry.
  • CLI SAPI no longer checks cwd for php.ini or the php-cli.ini file In PHP 5.1.x an undocumented feature was added that made the CLI binary check the current working directory for a PHP configuration file, potentially leading to unpredictable behavior if an unexpected configuration file were read. This functionality was removed in 5.2.0, and PHP will no longer search CWD for the presence of php.ini or php-cli.ini files. See also the command line section of the manual.
  • Added a warning when performing modulus 0 operations In earlier versions of PHP, performing integer % 0 did not emit any warning messages, instead returning an unexpected return value of FALSE. As of PHP 5.2.0, this operation will emit an E_WARNING, as is the case in all other instances where division by zero is performed.
    <?php
    print 10 % 0;
    /* Warning:  Division by zero in filename on line n */
    ?>
  • Changed __toString() to be called wherever applicable. The magic method __toString() will now be called in a string context, that is, anywhere an object is used as a string. The fallback of returning a string that contains the object identifier was dropped in PHP 5.2.0. It became problematic because an object identifier cannot be considered unique. This change will mean that your application is flawed if you have relied on the object identifier as a return value. An attempt to use that value as a string will now result in a catchable fatal error.
    <?php
    class foo {}
    $foo = new foo;
    print     $foo;
    /* Catchable fatal error:  Object of class foo could
       not be converted to string in filename on line n */
    ?>
    Even with __toString(), objects cannot be used as array indices or keys. We may add built-in hash support for this at a later date, but as of PHP 5.2.x you will need to either provide your own hashing or use the new SPL function spl_object_hash(). Exceptions can not be thrown from __toString() methods.
    <?php
    class foo {
        public function     __toString() {
            throw new     Exception;
        }
    }

    try {
        print new     foo;
            /* Fatal error:  Method foo::__toString() must
           not throw an exception in filename on line n */
    } catch(Exception $e) {}
    ?>
  • Dropped abstract static class functions. Due to an oversight, PHP 5.0.x and 5.1.x allowed abstract static functions in classes. As of PHP 5.2.x, only interfaces can have them.
    <?php
    abstract class foo {
        abstract static function     bar();
            /* Strict Standards:  Static function foo::bar()
           should not be abstract in filename on line n */
    }
    ?>
  • Oracle extension requires at least Oracle 10 on Windows.
  • Added RFC2397 (data: stream) support. The introduction of the 'data' URL scheme has the potential to lead to a change of behavior under Windows. If you are working with a NTFS file system and making use of meta streams in your application, and if you just happen to be using a file with the name 'data:' that is accessed without any path information - it won't work any more. The fix is to use the 'file:' protocol when accessing it. See also » RFC 2397
    <?php
    /* when allow_url_include is OFF (default) */
    include "data:;base64,PD9waHAgcGhwaW5mbygpOz8+";
    /* Warning:  include(): URL file-access is disabled
       in the server configuration in filename on line n */
    ?>
  • Regression in glob() patterns In version 5.2.4 a security fix caused a regression for patterns of the form "/foo/*/bar/*". Since version 5.2.5 instead of raising a warning the glob() function will return FALSE when openbase_dir restrictions are violated.
What has changed in PHP 5.2.x
New Error Messages
Migrating from PHP 5.1.x to PHP 5.2.x


New Error Messages

Below are the new error messages that have not been discussed elsewhere in this document.

Exemplo #1 In PHP Core

<?php
echo " ";
session_regenerate_id();
/*  Warning:  session_regenerate_id(): Cannot regenerate
    session id - headers already sent in filename on line n */

str_word_count("string", 4);
/* Warning:  str_word_count(): Invalid format value 4
   in filename on line n */

strripos("foo", "f", 4);
/* Notice:  strripos(): Offset is greater than the
   length of haystack string in filename on line n */

strrpos("foo", "f", 4);
/* Notice:  strrpos(): Offset is greater than the
   length of haystack string in filename on line n */

/* As of PHP 5.2.1, when allow_url_include is OFF (default) */
include "php://input";
/* Warning:  include(): URL file-access is disabled
   in the server configuration in filename on line n */
?>

Exemplo #2 Object Oriented Code in PHP Core

<?php
interface foo {
}
class bar implements foo, foo {
}
/* Fatal error: Class bar cannot implement previously
   implemented interface foo in filename on line n */

class foo {
    public $bar;
    function __get($var)
    {
        return $this->bar;
    }
}

$foo = new foo;
$bar =& $foo->prop;
/* Notice: Indirect modification of overloaded property
   foo::$prop has no effect in filename on line n */

class foo implements iterator {
    public function current() {
    }
    public function next() {
    }
    public function key() {
    }
    public function valid() {
    }
    public function rewind() {
    }
}

$foo = new foo();
foreach($foo as &$ref) {}
/* Fatal error: An iterator cannot be used with foreach
   by reference in filename on line n */

class foo {
    private function __construct() {
    }
}
class bar extends foo {
    public function __construct() {
        parent::__construct();
        /* Fatal error:  Cannot call private
           foo::__construct() in filename on line n */
    }
}
new bar;

stream_filter_register("", "class");
/* Warning:  stream_filter_register(): Filter name
   cannot be empty in filename on line n */

stream_filter_register("filter", "");
/* Warning:  stream_filter_register(): Class name
   cannot be empty in filename on line n */
?>

Exemplo #3 In the bzip2 Extension

<?php
bzopen("", "w");
/* Warning:  bzopen(): filename cannot be empty
   in filename on line n */

bzopen("foo", "a");
/* Warning:  bzopen(): 'a' is not a valid mode for
   bzopen(). Only 'w' and 'r' are supported in
   filename on line n */

$fp = fopen("foo", "w");
bzopen($fp, "r");
/* Warning:  bzopen(): cannot read from a stream
   opened in write only mode in filename on line n */
?>

Exemplo #4 In the datetime Extension

<?php
strtotime("today", "now");
/* Warning:  strtotime() expects parameter 2 to be
   long, string given in filename on line n */

/* As of PHP 5.2.1 */
new DateTime(new stdclass);
/* Fatal error: Uncaught exception 'Exception' with
   message 'DateTime::__construct() expects parameter
   1 to be string, object given' in filename:n */
?>

Exemplo #5 In the dBase Extension

<?php
dbase_open("foo", -1);
/* Warning: Invalid access mode -1 in filename on line n */

/* As of PHP 5.2.1 */
dbase_open("foo", null);
/* Warning: The filename cannot be empty in filename on line n */
?>

Exemplo #6 In the mcrypt Extension

<?php
$key = "this is a secret key";
$td = mcrypt_module_open('tripledes', '', 'ecb', '');
$iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td),
                        MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, "");
/* Warning: mcrypt_generic(): An empty string was
   passed in filename on line n */
?>

Exemplo #7 In the oci8 Extension

<?php
oci_connect("user", "pass", "db", "bogus_charset");
/* Warning: Invalid character set name:
   bogus_charset in filename on line n */

$oci = oci_connect("user", "pass", "db");
oci_password_change($oci, "", "old", "new");
/* Warning: username cannot be empty in filename
   on line n */

oci_password_change($oci, "user", "", "new");
/* Warning: old password cannot be empty in filename
   on line n */

oci_password_change($oci, "user", "old", "");
/* Warning: new password cannot be empty in filename
   on line n */
?>

Exemplo #8 In the SPL Extension

<?php
$obj = new SplFileObject(__FILE__);
$obj->fgetcsv("foo");
/* Warning:  SplFileObject::fgetcsv(): delimiter must
   be a character in filename on line n */

$obj->fgetcsv(",", "foo");
/* Warning:  SplFileObject::fgetcsv(): enclosure must
   be a character in filename on line n */
?>

Exemplo #9 In the Semaphore (sysvmsg) extension

<?php
/* Warning:  maximum size of the message has to be
   greater then zero in filename on line n */
?>

Exemplo #10 A 5.2.1+ Zip Example

<?php
$obj = new ZipArchive();
$obj->open('archive.zip');
$obj->setCommentName('', 'comment');
/* Notice:  ZipArchive::setCommentName(): Empty string
   as entry name in filename on line n */

/* As of PHP 5.2.1 */
$obj->getCommentName('');
/* Notice:  ZipArchive::getCommentName(): Empty string
   as entry name in filename on line n */
?>

Backward Incompatible Changes
Changes in PHP datetime support
Migrating from PHP 5.1.x to PHP 5.2.x


Changes in PHP datetime support

Since PHP 5.1.0, there has been an extension named date in the PHP core. This is the new implementation of PHP's datetime support. Although it will attempt to guess your system's timezone setting, you should set the timezone manually. You can do this in any of three ways:

  • in your php.ini using the date.timezone INI directive
  • on your system using the TZ environmental variable
  • from your script using the convenience function date_default_timezone_set()

All supported timezones are listed in the PHP Manual.

With the advent of PHP 5.2.x, there are object representations of the date and timezone, named DateTime and DateTimeZone respectively. The methods map to existing procedural date functions.

New Error Messages
New Parameters
Migrating from PHP 5.1.x to PHP 5.2.x


New Parameters

Some functions were given new, optional, parameters in PHP 5.2.x:

PHP Core:

  • htmlentities() - added double_encode in PHP 5.2.3.
  • htmlspecialchars() - added double_encode in PHP 5.2.3.
  • base64_decode() - added strict
  • setcookie() - added httponly
  • setrawcookie() - added httponly
  • session_set_cookie_params() - added httponly
  • memory_get_usage() - added real_usage
  • get_loaded_extensions() - added zend_extensions in PHP 5.2.4

curl:

  • curl_multi_info_read() - added msgs_in_queue

datetime

  • date() - added "u" (milliseconds) format character in PHP 5.2.2

imap:

  • imap_open() - added n_retries
  • imap_reopen() - added n_retries

mbstring:

  • mb_strrpos() - added offset
    Aviso

    The offset parameter was put in the position the encoding parameter used to be. Backward compatibility has been provided by allowing encoding to be specified as the third parameter. Using this backward compatibility mode is not recommended because it will be removed in a future release of PHP.

ming:

  • swfmovie::streamMP3() - added skip in PHP 5.2.1

openssl:

  • openssl_verify() - added signature_algo

pgsql:

  • pg_escape_bytea() - added connection
  • pg_escape_string() - added connection

simplexml:

  • SimpleXMLElement::__construct() - added is_prefix
  • SimpleXMLElement::attributes() - added is_prefix
  • SimpleXMLElement::children() - added is_prefix
  • simplexml_load_file() - added is_prefix
  • simplexml_load_string() - added is_prefix

spl:

  • array iterator_to_array(Traversable it [, bool use_keys = true]) - added use_keys in PHP 5.2.1

xmlreader:

  • XMLReader::open() - added encoding and options
  • XMLReader::XML() - added encoding and options

XMLWriter:

  • XMLWriter::WriteElement() - the content became optional in PHP 5.2.3
  • XMLWriter::WriteElementNs() - the content became optional in PHP 5.2.3
Changes in PHP datetime support
New Functions
Migrating from PHP 5.1.x to PHP 5.2.x


New Functions

PHP 5.2.x introduced some new functions:

PHP Core:

  • array_fill_keys() - Create an array using the elements of the first parameter as keys, each initialized to val
  • error_get_last() - Get the last occurred error as associative array. Returns NULL if there hasn't been an error yet
  • image_type_to_extension() - Get file extension for image-type returned by getimagesize(), exif_read_data(), exif_thumbnail(), exif_imagetype()
  • memory_get_peak_usage() - Returns the peak allocated by PHP memory
  • sys_get_temp_dir() - Returns directory path used for temporary files. (Added in 5.2.1)
  • timezone_abbreviations_list() - Returns associative array containing DST, offset and the timezone name
  • timezone_identifiers_list() - Returns numerically indexed array with all timezone identifiers
  • timezone_name_from_abbr() - Returns the timezone name from abbreviation
  • stream_socket_shutdown() - Causes all or part of a full-duplex connection on the socket associated with stream to be shut down. As of PHP 5.2.1.

Image:

  • imagegrabscreen() - Grabs a screenshot of the whole screen. As of PHP 5.2.2.
  • imagegrabwindow() - Captures a window. As of PHP 5.2.2.

libXML:

  • libxml_disable_entity_loader() - Disable the ability to load external entities. As of PHP 5.2.11.

mbstring:

  • mb_stripos() - Finds position of first occurrence of a string within another, case insensitive
  • mb_stristr() - Finds first occurrence of a string within another, case insensitive
  • mb_strrchr() - Finds the last occurrence of a character in a string within another
  • mb_strrichr() - Finds the last occurrence of a character in a string within another, case insensitive
  • mb_strripos() - Finds position of last occurrence of a string within another, case insensitive
  • mb_strstr() - Finds first occurrence of a string within another

ming (As of PHP 5.2.1):

  • void ming_setSWFCompression(int num) - Sets output compression
  • void swfmovie::namedanchor(string name) - Creates anchor
  • void swfmovie::protect([string password]) - Protects

openssl:

  • openssl_csr_get_public_key() - Extracts public key from a CERT and prepares it for use
  • openssl_csr_get_subject() - Returns the subject of a CERT
  • openssl_pkey_get_details() - Returns an array with the key details (bits, pkey, type)

spl:

  • spl_object_hash() - Return hash id for given object
  • int iterator_apply(Traversable it, mixed function [, mixed params]) - Calls a function for every element in an iterator

pcre:

  • preg_last_error() - Returns the error code of the last regex execution

pgsql:

  • pg_field_table() - Returns the name of the table field belongs to, or table's oid if oid_only is TRUE

posix:

  • posix_initgroups() - Calculate the group access list for the user specified in name

gmp:

  • gmp_nextprime() - Finds next prime number

xmlwriter:

  • xmlwriter_full_end_element() - End current element - returns FALSE on error
  • xmlwriter_write_raw() - Write text - returns FALSE on error
  • xmlwriter_start_dtd_entity() - Create start DTD Entity - returns FALSE on error
  • xmlwriter_end_dtd_entity() - End current DTD Entity - returns FALSE on error
  • xmlwriter_write_dtd_entity() - Write full DTD Entity tag - returns FALSE on error
New Parameters
New Methods
Migrating from PHP 5.1.x to PHP 5.2.x


New Methods

New methods were introduced in 5.2.0:

dom:

  • DOMDocument::registerNodeClass() - Register extended class used to create base node type
  • DOMElement::setIDAttribute() - Declares the attribute specified by name to be of type ID
  • DOMElement::setIDAttributeNode() - Declares the attribute specified by node to be of type ID
  • DOMElement::setIDAttributeNS() - Declares the attribute specified by local name and namespace URI to be of type ID
  • DOMNode::C14N()([bool exclusive [, bool with_comments [, array xpath [, array ns_prefixes]]]]) - Canonicalize nodes to a string
  • DOMNode::C14NFile()(string uri [, bool exclusive [, bool with_comments [, array xpath [, array ns_prefixes]]]]) - Canonicalize nodes to a file
  • DOMNode::getNodePath()() - Gets an xpath for a node

soap:

  • SoapServer::setObject()(object obj) - Sets object which will handle SOAP requests

spl:

  • int ArrayObject::asort()(void) - Sort the entries by values
  • int ArrayObject::ksort()(void) - Sort the entries by key
  • int ArrayObject::natcasesort()(void) - Sort the entries by key using case insensitive "natural order" algorithm.
  • int ArrayObject::natsort()(void) - Sort the entries by values using "natural order" algorithm.
  • int ArrayObject::uasort()(callback cmp_function) - Sort the entries by values using a user defined function
  • int ArrayObject::uksort()(callback cmp_function) - Sort the entries by key using a user defined function.
  • ArrayIterator AppendIterator::getArrayIterator()() - Get access to inner ArrayIterator
  • int AppendIterator::getIteratorIndex()() - Get index of iterator
  • bool CachingIterator::getCache()() - Return the cache
  • int CachingIterator::getFlags()() - Return the internal flags
  • bool CachingIterator::offsetExists()(mixed index) - Returns TRUE if the requested index exists
  • string CachingIterator::offsetGet()(mixed index) - Return the internal cache if used
  • void CachingIterator::offsetSet()(mixed index, mixed newval) - Set given index in cache
  • void CachingIterator::offsetUnset()(mixed index) - Unset given index in cache
  • void CachingIterator::setFlags()() - Set the internal flags
  • array("delimiter" =>, "enclosure" =>) SplFileObject::getCsvControl()(void) - Get the delimiter and enclosure character used in fgetcsv()
  • void SplFileObject::setCsvControl()([string delimiter = ',' [, string enclosure = '"']]) - Set the delimiter and enclosure character used in fgetcsv()

Tidy

  • tidyNode tidyNode::getParent()() - Returns the parent node of the current node (Added in PHP 5.2.2)

XMLReader

  • boolean XMLReader::setSchema() - Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first XMLReader::read()

zip:

  • ZipArchive::addEmptyDir()() - Creates an empty directory in the archive
New Functions
Removed Extensions
Migrating from PHP 5.1.x to PHP 5.2.x


Removed Extensions

These extensions have been moved to PECL and are no longer part of the PHP distribution. The PECL package version of these extensions will be created according to user demand.

  • filePro
  • Hyperwave API
New Methods
New Extensions
Migrating from PHP 5.1.x to PHP 5.2.x


New Extensions

The following are new extensions added (by default) as of PHP 5.2.0:

  • Filter - validates and filters data, and is designed for use with insecure data such as user input. This extension is enabled by default; the default mode RAW does not impact input data in any way.
  • JSON - implements the JavaScript Object Notation (JSON) data interchange format. This extension is enabled by default.
  • Zip - enables you to transparently read or write ZIP compressed archives and the files inside them.
Removed Extensions
New Classes
Migrating from PHP 5.1.x to PHP 5.2.x


New Classes

The following classes were introduced in PHP 5.2.0:

  • DateTime
  • DateTimeZone
  • RegexIterator - extends FilterIterator; implements Iterator, Traversable, OuterIterator Constants:
    • RegexIterator::ALL_MATCHES
    • RegexIterator::GET_MATCH
    • RegexIterator::MATCH
    • RegexIterator::REPLACE
    • RegexIterator::SPLIT
    • RegexIterator::USE_KEY
    Properties:
    • public replacement
    Methods:
    • RegexIterator::__construct(Iterator it, string regex [, int mode [, int flags [, int preg_flags]]]) - Create an RegexIterator from another iterator and a regular expression
    • bool RegexIterator::accept() - Match (string)current() against regular expression
    • bool RegexIterator::getFlags() - Returns current operation flags
    • bool RegexIterator::getMode() - Returns current operation mode
    • bool RegexIterator::getPregFlags() - Returns current PREG flags (if in use or NULL)
    • bool RegexIterator::setFlags(int new_flags) - Set operation flags
    • bool RegexIterator::setMode(int new_mode) - Set new operation mode
    • bool RegexIterator::setPregFlags(int new_flags) - Set PREG flags
  • RecursiveRegexIterator Constants:
    • RecursiveRegexIterator::ALL_MATCHES
    • RecursiveRegexIterator::GET_MATCH
    • RecursiveRegexIterator::MATCH
    • RecursiveRegexIterator::REPLACE
    • RecursiveRegexIterator::SPLIT
    • RecursiveRegexIterator::USE_KEY
    Methods:
    • RecursiveRegexIterator::__construct(RecursiveIterator it, string regex [, int mode [, int flags [, int preg_flags]]]) - Create an RecursiveRegexIterator from another recursive iterator and a regular expression
    • RecursiveRegexIterator RecursiveRegexIterator::getChildren() - Return the inner iterator's children contained in a RecursiveRegexIterator
    • bool RecursiveRegexIterator::hasChildren() - Check whether the inner iterator's current element has children
New Extensions
New Global Constants
Migrating from PHP 5.1.x to PHP 5.2.x


New Global Constants

PHP Core:

  • M_EULER
  • M_LNPI
  • M_SQRT3
  • M_SQRTPI
  • PATHINFO_FILENAME
  • PREG_BACKTRACK_LIMIT_ERROR
  • PREG_BAD_UTF8_ERROR
  • PREG_INTERNAL_ERROR
  • PREG_NO_ERROR
  • PREG_RECURSION_LIMIT_ERROR
  • UPLOAD_ERR_EXTENSION
  • STREAM_SHUT_RD
  • STREAM_SHUT_WR
  • STREAM_SHUT_RDWR

curl:

  • CURLE_FILESIZE_EXCEEDED
  • CURLE_FTP_SSL_FAILED
  • CURLE_LDAP_INVALID_URL
  • CURLFTPAUTH_DEFAULT
  • CURLFTPAUTH_SSL
  • CURLFTPAUTH_TLS
  • CURLFTPSSL_ALL
  • CURLFTPSSL_CONTROL
  • CURLFTPSSL_NONE
  • CURLFTPSSL_TRY
  • CURLOPT_FTP_SSL
  • CURLOPT_FTPSSLAUTH
  • CURLOPT_TCP_NODELAY Added in PHP 5.2.1.
  • CURLOPT_TIMEOUT_MS Added in PHP 5.2.3
  • CURLOPT_CONNECTTIMEOUT_MS Added in PHP 5.2.3

GMP:

  • GMP_VERSION Added in PHP 5.2.2.

ming:

  • SWFTEXTFIELD_USEFONT
  • SWFTEXTFIELD_AUTOSIZE
  • SWF_SOUND_NOT_COMPRESSED
  • SWF_SOUND_ADPCM_COMPRESSED
  • SWF_SOUND_MP3_COMPRESSED
  • SWF_SOUND_NOT_COMPRESSED_LE
  • SWF_SOUND_NELLY_COMPRESSED
  • SWF_SOUND_5KHZ
  • SWF_SOUND_11KHZ
  • SWF_SOUND_22KHZ
  • SWF_SOUND_44KHZ
  • SWF_SOUND_8BITS
  • SWF_SOUND_16BITS
  • SWF_SOUND_MONO
  • SWF_SOUND_STEREO

openssl:

  • OPENSSL_VERSION_NUMBER
  • OPENSSL_VERSION_TEXT

snmp:

  • SNMP_OID_OUTPUT_FULL
  • SNMP_OID_OUTPUT_NUMERIC

Semaphore:

  • MSG_EAGAIN
  • MSG_ENOMSG
New Classes
New Class Constants
Migrating from PHP 5.1.x to PHP 5.2.x


New Class Constants

pdo:

  • PDO::ATTR_DEFAULT_FETCH_MODE
  • PDO::FETCH_PROPS_LATE
  • PDO::FETCH_KEY_PAIR Fetches a 2 column result set into an associated array. (Added in PHP 5.2.3)

spl:

  • CachingIterator::FULL_CACHE
  • CachingIterator::TOSTRING_USE_INNER
  • SplFileObject::READ_AHEAD
  • SplFileObject::READ_CSV
  • SplFileObject::SKIP_EMPTY
New Global Constants
New INI Configuration Directives
Migrating from PHP 5.1.x to PHP 5.2.x


New INI Configuration Directives

New php.ini directives introduced in PHP 5.2.0:

  • allow_url_include This useful option makes it possible to differentiate between standard file operations on remote files, and the inclusion of remote files. While the former is usually desirable, the latter can be a security risk if used naively. Starting with PHP 5.2.0, you can allow remote file operations while disallowing the inclusion of remote files in local scripts. In fact, this is the default configuration.
  • pcre.backtrack_limit PCRE's backtracking limit.
  • pcre.recursion_limit PCRE's recursion limit. Please note that if you set this value to a high number you may consume all the available process stack and eventually crash PHP (due to reaching the stack size limit imposed by the Operating System).
  • session.cookie_httponly Marks the cookie as accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectively help to reduce identity theft through XSS attacks (although it is not supported by all browsers).

New directives in PHP 5.2.2:

  • max_input_nesting_level Limits how deep input variables can be nested, default is 64.
New Class Constants
Error Reporting
Migrating from PHP 5.1.x to PHP 5.2.x


Error Reporting

Some of the existing E_ERROR conditions have been converted to something that can be caught with a user-defined error handler. If an E_RECOVERABLE_ERROR is not handled, it will behave in the same way as E_ERROR behaves in all versions of PHP. Errors of this type are logged as Catchable fatal error.

This change means that the value of the E_ALL error_reporting constant is now 6143, where the previous value was 2047. Because PHP constants have no meaning outside of PHP, in some cases the integer value is used instead so these will need to be adjusted. So for example by setting the error_reporting mode from either the httpd.conf or the .htaccess files, the value has to be changed accordingly. The same applies when the numeric values are used rather than the constants in PHP scripts.

As a side-effect of a change made to prevent duplicate error messages when track_errors is On, it is now necessary to return FALSE from user defined error handlers in order to populate $php_errormsg. This provides a fine-grain control over the levels of messages stored.

New INI Configuration Directives
Other Enhancements
Migrating from PHP 5.1.x to PHP 5.2.x


Other Enhancements

  • Improved memory manager and increased default memory limit. The new memory manager allocates less memory and works faster than the previous incarnation. It allocates memory from the system in large blocks, and then manages the heap by itself. The memory_limit value in php.ini is checked, not for each emalloc() call (as before), but for actual blocks requested from the system. This means that memory_limit is far more accurate than it used to be, since the old memory manager didn't calculate all the memory overhead used by the malloc library. Thanks to this new-found accuracy memory usage may appear to have increased, although actually it has not. To accommodate this apparent increase, the default memory_limit setting was also increased - from 8 to 16 megabytes.
  • Added support for constructors in interfaces to force constructor signature checks in implementations. Starting with PHP 5.2.0, interfaces can have constructors. However, if you choose to declare a constructor in an interface, each class implementing that interface MUST include a constructor with a signature matching that of the base interface constructor. By 'signature' we mean the parameter and return type definitions, including any type hints and including whether the data is passed by reference or by value.
Error Reporting
Migrating from PHP 5.0.x to PHP 5.1.x
Migrating from PHP 5.1.x to PHP 5.2.x


Migrating from PHP 5.0.x to PHP 5.1.x

Índice

  • Key PHP 5.1.x features
  • Changes in reference handling
  • Reading []
  • Integer values in function parameters
  • Class and object changes
  • Extensions
  • Date/time support
  • Changes in database support
  • Checking for E_STRICT

Veja também o guia de migração para versões do PHP 5.0.x, 5.2.x and 5.3.x.

Other Enhancements
Key PHP 5.1.x features
Apêndices


Key PHP 5.1.x features

Some of the key features of PHP 5.1.x include:

  • A complete rewrite of date handling code, with improved timezone support.

  • Significant performance improvements compared to PHP 5.0.X.

  • PDO extension is now enabled by default.

  • Over 30 new functions in various extensions and built-in functionality.

  • Over 400 various bug fixes.

Migrating from PHP 5.0.x to PHP 5.1.x
Changes in reference handling
Migrating from PHP 5.0.x to PHP 5.1.x


Changes in reference handling

  • Overview

  • Code that worked under PHP 4.3.x, but now fails

  • Code that worked under PHP 4.3.x, but now throws an error

  • Code that failed under PHP 4.3.x, but now works

  • Code that should have worked under PHP 5.0.x

  • Warnings that came and went

Overview

From the PHP script writer's point of view, the change most likely to impact legacy code is in the way that references are handled in all PHP versions post-dating the PHP 4.4.0 release.

Until and including PHP 4.3, it was possible to send, assign or return variables by reference that should really be returned by value, such as a constant, a temporary value (e.g. the result of an expression), or the result of a function that had itself been returned by value, as here:

<?php
$foo = "123";

function return_value() {
    global $foo;
    return $foo;
}

$bar = &return_value();
?>

Although this code would usually work as expected under PHP 4.3, in the general case the result is undefined. The Zend Engine could not act correctly on these values as references. This bug could and did lead to various hard-to-reproduce memory corruption problems, particularly where the code base was large.

In PHP 4.4.0, PHP 5.0.4 and all subsequent PHP releases, the Engine was fixed to 'know' when the reference operation is being used on a value that should not be referenced. The actual value is now used in such cases, and a warning is emitted. The warning takes the form of an E_NOTICE in PHP 4.4.0 and up, and E_STRICT in PHP 5.0.4 and up.

Code that could potentially produce memory corruption can no longer do so. However, some legacy code might work differently as a result.

Code that worked under PHP 4.3, but now fails

<?php
function func(&$arraykey) {
    return $arraykey; // function returns by value!
}

$array = array('a', 'b', 'c');
foreach (array_keys($array) as $key) {
    $y = &func($array[$key]);
    $z[] =& $y;
}

var_dump($z);
?>
<

Running the above script under any version of PHP that pre-dates the reference fix would produce this output:

array(3) {
  [0]=>
  &string(1) "a"
  [1]=>
  &string(1) "b"
  [2]=>
  &string(1) "c"
}

Following the reference fix, the same code would result in:

array(3) {
  [0]=>
  &string(1) "c"
  [1]=>
  &string(1) "c"
  [2]=>
  &string(1) "c"
}

This is because, following the changes, func() assigns by value. The value of $y is re-assigned, and reference-binding is preserved from $z. Prior to the fix, the value was assigned by reference, leading $y to be re-bound on each assignment. The attempt to bind to a temporary value by reference was the cause of the memory corruption.

Such code can be made to work identically in both the pre-fix and the post-fix PHP versions. The signature of func() can be altered to return by reference, or the reference assignment can be removed from the result of func().

<?php
function func() {
    return 'function return';
}

$x = 'original value';
$y =& $x;
$y = &func();
echo $x;
?>

In PHP 4.3 $x would be 'original value', whereas after the changes it would be 'function return' - remember that where the function does not return by reference, the reference assignment is converted to a regular assignment. Again, this can be brought to a common base, either by forcing func() to return by reference or by eliminating the by-reference assignment.

Code that worked under PHP 4.3.x, but now throws an error

<?php
class Foo {

    function getThis() {
        return $this;
    }

    function destroyThis() {
        $baz =& $this->getThis();
    }
}

$bar = new Foo();
$bar->destroyThis();
var_dump($bar);
?>

In PHP 5.0.3, $bar evaluated to NULL instead of returning an object. That happened because getThis() returns by value, but the value here is assigned by reference. Although it now works in the expected way, this is actually invalid code which will throw an E_NOTICE under PHP 4.4 or an E_STRICT under PHP 5.0.4 and up.

Code that failed under PHP 4.3.x, but now works

<?php
function &f() {
    $x = "foo";
    var_dump($x);
    print "$x\n";
    return($a);
}

for ($i = 0; $i < 3; $i++) {
    $h = &f();
}
?>

In PHP 4.3 the third call to var_dump() produces NULL, due to the memory corruption caused by returning an uninitialized value by reference. This is valid code in PHP 5.0.4 and up, but threw errors in earlier releases of PHP.

<?php
$arr = array('a1' => array('alfa' => 'ok'));
$arr =& $arr['a1'];
echo '-'.$arr['alfa']."-\n";
?>

Until PHP 5.0.5, it wasn't possible to assign an array element by reference in this way. It now is.

Code that should have worked under PHP 5.0.x

There are a couple of instances of bugs reported under PHP 5.0 prior to the reference fixes which now 'work'. However, in both cases errors are thrown by PHP 5.1.x, because the code was invalid in the first place. Returning values by reference using self:: now works in the general case but throws an E_STRICT warning, and although your mileage may vary when assigning by reference to an overloaded object, you will still see an E_ERROR when you try it, even where the assignment itself appears to work.

Warnings that came and went

Nested calls to functions returning by reference are valid code under both PHP 4.3.x and PHP 5.1.x, but threw an unwarranted E_NOTICE or E_STRICT under the intervening PHP releases.

<?php
function & foo() {
    $var = 'ok';
    return $var;
}

function & bar() {
    return foo();
}

$a =& bar();
echo "$a\n";
?>
Key PHP 5.1.x features
Reading []
Migrating from PHP 5.0.x to PHP 5.1.x


Reading []

<?php
class XmlTest {

    function test_ref(&$test) {
        $test = "ok";
    }

    function test($test) { }

    function run() {
        $ar = array();
        $this->test_ref($ar[]);
        var_dump($ar);
        $this->test($ar[]);
    }
}

$o = new XmlTest();
$o->run();
?>

This should always have thrown a fatal E_ERROR, because [] cannot be used for reading in PHP. It is invalid code in PHP 4.4.2 and PHP 5.0.5 upward.

Changes in reference handling
Integer values in function parameters
Migrating from PHP 5.0.x to PHP 5.1.x


Integer values in function parameters

With the advent of PHP 5.0.x, a new parameter parsing API was introduced which is used by a large number of PHP functions. In all versions of PHP between 5.0.x and 5.1.x, the handling of integer values was very strict and would reject non-well formed numeric values when a PHP function expected an integer. These checks have now been relaxed to support non-well formed numeric strings such as " 123" and "123 ", and will no longer fail as they did under PHP 5.0.x. However, to promote code safety and input validation, PHP functions will now emit an E_NOTICE when such strings are passed as integers.

Reading []
Class and object changes
Migrating from PHP 5.0.x to PHP 5.1.x


Class and object changes

  • instanceof, is_a(), is_subclass_of() and catch

  • Abstract private methods

  • Access modifiers in interfaces

  • Changes in inheritance rules

  • Class constants

instanceof, is_a(), is_subclass_of() and catch

In PHP 5.0, is_a() was deprecated and replaced by the instanceof operator. There were some issues with the initial implementation of instanceof, which relied on __autoload() to search for missing classes. If the class was not present, instanceof would throw a fatal E_ERROR due to the failure of __autoload() to discover that class. The same behaviour occurred in the catch operator and the is_subclass_of() function, for the same reason.

None of these functions or operators call __autoload() in PHP 5.1.x, and the class_exists() workarounds used in code written for PHP 5.0.x, while not problematic in any way, are no longer necessary.

Abstract private methods

Abstract private methods were supported between PHP 5.0.0 and PHP 5.0.4, but were then disallowed on the grounds that the behaviours of private and abstract are mutually exclusive.

Access modifiers in interfaces

Under PHP 5.0, function declarations in interfaces were treated in exactly the same way as function declarations in classes. This has not been the case since October 2004, at which point only the public access modifier was allowed in interface function declarations. Since April 2005 - which pre-dates the PHP 5.0b1 release - the static modifier has also been allowed. However, the protected and private modifiers will now throw an E_ERROR, as will abstract. Note that this change should not affect your existing code, as none of these modifiers makes sense in the context of interfaces anyway.

Changes in inheritance rules

Under PHP 5.0, it was possible to have a function declaration in a derived class that did not match the declaration of the same function in the base class, e.g.

This code will cause an E_STRICT error to be emitted under PHP 5.1.x.

<?php
class Base {
    function &return_by_ref() {
        $r = 1;
        return $r;
    }
}

class Derived extends Base {
    function return_by_ref() {
        return 1;
    }
}
?>

Class constants

Under PHP 5.0.x, the following code was valid:

Under PHP 5.1.x, redefinition of a class constant will throw a fatal E_ERROR.

<?php
class test {
    const foobar = 'foo';
    const foobar = 'bar';
}

?>
Integer values in function parameters
Extensions
Migrating from PHP 5.0.x to PHP 5.1.x


Extensions

  • Extensions that are gone from the PHP core

  • Class constants in new PHP 5.1.x extensions

Extensions that are gone from the PHP core

One of the first things you're likely to notice when you download PHP 5.1.x is that several of the older extensions have disappeared. Those extensions that are still actively maintained are available in the PHP Extension Community Library (PECL), at » http://pecl.php.net/.

Removed extensions
Extension | Alternative/Status
ext/cpdf | pecl/pdflib
ext/dbx | pecl/dbx
ext/dio | pecl/dio
ext/fam | Not actively maintained
ext/ingres_ii | pecl/ingres
ext/ircg | Not actively maintained
ext/mcve | pecl/mcve
ext/mnogosearch | Not actively maintained
ext/oracle | ext/oci8 or ext/pdo_oci
ext/ovrimos | Not actively maintained
ext/pfpro | Not actively maintained
ext/w32api | » pecl/ffi
ext/yp | Not actively maintained
ext/activescript | » pecl/activescript

Modules in PECL that are not actively maintained (i.e. have not been supported for some time, have no active maintainer working on them currently, and do not have any PECL package releases), are still available in SVN at » http://svn.php.net/viewvc/pecl. However, unreleased PHP modules are by their nature unsupported, and your mileage may vary when attempting to install or use them.

Class constants in new PHP 5.1.x extensions

The Zend Engine 2.1 API allows extension developers to declare class constants in object oriented extensions. New extensions written for PHP 5.1.x, including SPL, PDO, XMLReader and date, have their constants in the format PDO::CLASS_CONSTANT rather than in the C format PDO_CLASS_CONSTANT in order to minimise pollution of the global namespace in PHP.

Class and object changes
Date/time support
Migrating from PHP 5.0.x to PHP 5.1.x


Date/time support

Date/time support has been fully rewritten in PHP 5.1.x, and no longer uses the system settings to 'know' the timezone in operation. It will instead utilize, in the following order:

  • The timezone set using the date_default_timezone_set() function (if any)

  • The TZ environment variable (if non empty)

  • "magical" guess (if the operating system supports it)

  • If none of the above options succeeds, UTC

To ensure accuracy (and avoid an E_STRICT warning), you will need to define your timezone in your php.ini using the following format:

date.timezone = Europe/London

The supported timezones are listed, in this format, in the timezones appendix.

Also note that strtotime() now returns FALSE on failure, instead of -1.

Extensions
Changes in database support
Migrating from PHP 5.0.x to PHP 5.1.x


Changes in database support

  • PDO overview

  • Changes in MySQL support

  • Changes in SQLite support

PDO overview

PHP Data Objects (PDO) were introduced as a PECL extension under PHP 5.0, and became part of the core PHP distribution in PHP 5.1.x. The PDO extension provides a consistent interface for database access, and is used alongside database-specific PDO drivers. Each driver may also have database-specific functions of its own, but basic data access functionality such as issuing queries and fetching data is covered by PDO functions, using the driver named in PDO::__construct().

Note that the PDO extension, and its drivers, are intended to be built as shared extensions. This will enable straightforward driver upgrades from PECL, without forcing you to rebuild all of PHP.

At the point of the PHP 5.1.x release, PDO is more than ready for widespread testing and could be adopted in most situations. However, it is important to understand that PDO and its drivers are comparatively young and may be missing certain database-specific features; evaluate PDO carefully before you use it in new projects.

Legacy code will generally rely on the pre-existing database extensions, which are still maintained.

Changes in MySQL support

In PHP 4, MySQL 3 support was built-in. With the release of PHP 5.0 there were two MySQL extensions, named 'mysql' and 'mysqli', which were designed to support MySQL < 4.1 and MySQL 4.1 and up, respectively. With the introduction of PDO, which provides a very fast interface to all the database APIs supported by PHP, the PDO_MYSQL driver can support any of the current versions (MySQL 3, 4 or 5) in PHP code written for PDO, depending on the MySQL library version used during compilation. The older MySQL extensions remain in place for reasons of back compatibility, but are not enabled by default.

Changes in SQLite support

In PHP 5.0.x, SQLite 2 support was provided by the built-in sqlite extension, which was also available as a PECL extension in PHP 4.3 and PHP 4.4. With the introduction of PDO, the sqlite extension doubles up to act as a 'sqlite2' driver for PDO; it is due to this that the sqlite extension in PHP 5.1.x has a dependency upon the PDO extension.

PHP 5.1.x ships with a number of alternative interfaces to sqlite:

The sqlite extension provides the "classic" sqlite procedural/OO API that you may have used in prior versions of PHP. It also provides the PDO 'sqlite2' driver, which allows you to access legacy SQLite 2 databases using the PDO API.

PDO_SQLITE provides the 'sqlite' version 3 driver. SQLite version 3 is vastly superior to SQLite version 2, but the file formats of the two versions are not compatible.

If your SQLite-based project is already written and working against earlier PHP versions, then you can continue to use ext/sqlite without problems, but will need to explicitly enable both PDO and sqlite. New projects should use PDO and the 'sqlite' (version 3) driver, as this is faster than SQLite 2, has improved locking concurrency, and supports both prepared statements and binary columns natively.

You must enable PDO to use the SQLite extension. If you want to build the PDO extension as a shared extension, then the SQLite extension must also be built shared. The same holds true for any extension that provides a PDO driver

Date/time support
Checking for E_STRICT
Migrating from PHP 5.0.x to PHP 5.1.x


Checking for E_STRICT

If you only have a single script to check, you can pick up E_STRICT errors using PHP's commandline lint facility:

php -d error_reporting=4095 -l script_to_check.php

For larger projects, the shell script below will achieve the same task:

#!/bin/sh

directory=$1

shift

# These extensions are checked
extensions="php inc"

check_file ()
{
  echo -ne "Doing PHP syntax check on $1 ..."

  # Options:
  ERRORS=`/www/php/bin/php -d display_errors=1 -d html_errors=0 -d error_prepend_string=" " -d error_append_string=" " -d error_reporting=4095 -l $1 | grep -v "No syntax errors detected"`

  if test -z "$ERRORS"; then
    echo -ne "OK."
  else
    echo -e "Errors found!\n$ERRORS"
  fi

  echo
}

# loop over remaining file args
for FILE in "$@" ; do
  for ext in $extensions; do
     if echo $FILE | grep "\.$ext$" > /dev/null; then
       if test -f $FILE; then
         check_file "$FILE"
       fi
     fi
  done
done
Changes in database support
Migrating from PHP 4 to PHP 5.0.x
Migrating from PHP 5.0.x to PHP 5.1.x


Migrating from PHP 4 to PHP 5.0.x

Índice

  • What has changed in PHP 5.0.x
  • Backward Incompatible Changes
  • CLI and CGI
  • Migrating Configuration Files
  • New Functions
  • New Directives
  • Databases
  • New Object Model
  • Error Reporting

Veja também o guia de migração para versões do PHP 5.1.x, 5.2.x and 5.3.x.

Checking for E_STRICT
What has changed in PHP 5.0.x
Apêndices


What has changed in PHP 5.0.x

PHP 5 and the integrated Zend Engine 2 have greatly improved PHP's performance and capabilities, but great care has been taken to break as little existing code as possible. So migrating your code from PHP 4 to 5 should be very easy. Most existing PHP 4 code should be ready to run without changes, but you should still know about the few differences and take care to test your code before switching versions in production environments.

Migrating from PHP 4 to PHP 5.0.x
Backward Incompatible Changes
Migrating from PHP 4 to PHP 5.0.x


Backward Incompatible Changes

Although most existing PHP 4 code should work without changes, you should pay attention to the following backward incompatible changes:

  • There are some new reserved keywords.
  • strrpos() and strripos() now use the entire string as a needle.
  • Illegal use of string offsets causes E_ERROR instead of E_WARNING. An example illegal use is: $str = 'abc'; unset($str[0]);.
  • array_merge() was changed to accept only arrays. If a non-array variable is passed, a E_WARNING will be thrown for every such parameter. Be careful because your code may start emitting E_WARNING out of the blue.
  • PATH_TRANSLATED server variable is no longer set implicitly under Apache2 SAPI in contrast to the situation in PHP 4, where it is set to the same value as the SCRIPT_FILENAME server variable when it is not populated by Apache. This change was made to comply with the » CGI/1.1 specification. Please refer to » bug #23610 for further information, and see also the $_SERVER['PATH_TRANSLATED'] description in the manual. This issue also affects PHP versions >= 4.3.2.
  • The T_ML_COMMENT constant is no longer defined by the Tokenizer extension. If error_reporting is set to E_ALL, PHP will generate a notice. Although the T_ML_COMMENT was never used at all, it was defined in PHP 4. In both PHP 4 and PHP 5 // and /* */ are resolved as the T_COMMENT constant. However the PHPDoc style comments /** */, which starting PHP 5 are parsed by PHP, are recognized as T_DOC_COMMENT.
  • $_SERVER should be populated with argc and argv if variables_order includes "S". If you have specifically configured your system to not create $_SERVER, then of course it shouldn't be there. The change was to always make argc and argv available in the CLI version regardless of the variables_order setting. As in, the CLI version will now always populate the global $argc and $argv variables.
  • An object with no properties is no longer considered "empty".
  • In some cases classes must be declared before use. It only happens if some of the new features of PHP 5 (such as interfaces) are used. Otherwise the behaviour is the old.
  • get_class(), get_parent_class() and get_class_methods() now return the name of the classes/methods as they were declared (case-sensitive) which may lead to problems in older scripts that rely on the previous behaviour (the class/method name was always returned lowercased). A possible solution is to search for those functions in all your scripts and use strtolower(). This case sensitivity change also applies to the magical predefined constants __CLASS__, __METHOD__, and __FUNCTION__. The values are returned exactly as they're declared (case-sensitive).
  • ip2long() now returns FALSE when an invalid IP address is passed as argument to the function, and no longer -1.
  • If there are functions defined in the included file, they can be used in the main file independent if they are before return() or after. If the file is included twice, PHP 5 issues fatal error because functions were already declared, while PHP 4 doesn't complain about it. It is recommended to use include_once() instead of checking if the file was already included and conditionally return inside the included file.
  • include_once() and require_once() first normalize the path of included file on Windows so that including A.php and a.php include the file just once.
  • Passing an array to a function by value no longer resets the array's internal pointer for array accesses made within the function. In other words, in PHP 4 when you passed an array to a function, its internal pointer inside the function would be reset, while in PHP 5, when you pass an array to a function, its array pointer within the function will be wherever it was when the array was passed to the function.

Exemplo #1 strrpos() and strripos() now use the entire string as a needle

<?php
var_dump(strrpos('ABCDEF','DEF')); //int(3)

var_dump(strrpos('ABCDEF','DAF')); //bool(false)
?>

Exemplo #2 An object with no properties is no longer considered "empty"

<?php
class test { }
$t = new test();

var_dump(empty($t)); // echo bool(false)

if ($t) {
    // Will be executed
}
?>

Exemplo #3 In some cases classes must be declared before used

<?php

//works with no errors:
$a = new a();
class a {
}

//throws an error:
$a = new b();

interface c{
}
class b implements c {
}

?>

What has changed in PHP 5.0.x
CLI and CGI
Migrating from PHP 4 to PHP 5.0.x


CLI and CGI

In PHP 5 there were some changes in CLI and CGI filenames. In PHP 5, the CGI version was renamed to php-cgi.exe (previously php.exe) and the CLI version now sits in the main directory (previously cli/php.exe).

In PHP 5 it was also introduced a new mode: php-win.exe. This is equal to the CLI version, except that php-win doesn't output anything and thus provides no console (no "dos box" appears on the screen). This behavior is similar to php-gtk.

In PHP 5, the CLI version will always populate the global $argv and $argc variables regardless of any php.ini directive setting. Even having register_argc_argv set to off will have no affect in CLI.

See also the command line reference.

Backward Incompatible Changes
Migrating Configuration Files
Migrating from PHP 4 to PHP 5.0.x


Migrating Configuration Files

Since the ISAPI modules changed their names, from php4xxx to php5xxx, you need to make some changes in the configuration files. There were also changes in the CLI and CGI filenames. Please refer to the corresponding section for more information.

Migrating the Apache configuration is extremely easy. See the example below to check the change you need to do:

Exemplo #1 Migrating Apache configuration files for PHP 5

# change this line:
LoadModule php4_module /php/sapi/php4apache2.dll

# with this one:
LoadModule php5_module /php/php5apache2.dll

If your web server is running PHP in CGI mode, you should note that the CGI version has changed its name from php.exe to php-cgi.exe. In Apache, you should do something like this:

Exemplo #2 Migrating Apache configuration files for PHP 5, CGI mode

# change this line:
Action application/x-httpd-php "/php/php.exe"

# with this one:
Action application/x-httpd-php "/php/php-cgi.exe"

In other web servers you need to change either the CGI or the ISAPI module filenames.

CLI and CGI
New Functions
Migrating from PHP 4 to PHP 5.0.x


New Functions

In PHP 5 there are some new functions. Here is the list of them:

Arrays:

  • array_combine() - Creates an array by using one array for keys and another for its values
  • array_diff_uassoc() - Computes the difference of arrays with additional index check which is performed by a user supplied callback function
  • array_udiff() - Computes the difference of arrays by using a callback function for data comparison
  • array_udiff_assoc() - Computes the difference of arrays with additional index check. The data is compared by using a callback function
  • array_udiff_uassoc() - Computes the difference of arrays with additional index check. The data is compared by using a callback function. The index check is done by a callback function also
  • array_walk_recursive() - Apply a user function recursively to every member of an array
  • array_uintersect_assoc() - Computes the intersection of arrays with additional index check. The data is compared by using a callback function
  • array_uintersect_uassoc() - Computes the intersection of arrays with additional index check. Both the data and the indexes are compared by using separate callback functions
  • array_uintersect() - Computes the intersection of arrays. The data is compared by using a callback function

InterBase:

  • ibase_affected_rows() - Return the number of rows that were affected by the previous query
  • ibase_backup() - Initiates a backup task in the service manager and returns immediately
  • ibase_commit_ret() - Commit a transaction without closing it
  • ibase_db_info() - Request statistics about a database
  • ibase_drop_db() - Drops a database
  • ibase_errcode() - Return an error code
  • ibase_free_event_handler() - Cancels a registered event handler
  • ibase_gen_id() - Increments the named generator and returns its new value
  • ibase_maintain_db() - Execute a maintenance command on the database server
  • ibase_name_result() - Assigns a name to a result set
  • ibase_num_params() - Return the number of parameters in a prepared query
  • ibase_param_info() - Return information about a parameter in a prepared query
  • ibase_restore() - Initiates a restore task in the service manager and returns immediately
  • ibase_rollback_ret() - Rollback transaction and retain the transaction context
  • ibase_server_info() - Request statistics about a database server
  • ibase_service_attach() - Connect to the service manager
  • ibase_service_detach() - Disconnect from the service manager
  • ibase_set_event_handler() - Register a callback function to be called when events are posted
  • ibase_wait_event() - Wait for an event to be posted by the database

iconv:

  • iconv_mime_decode() - Decodes a MIME header field
  • iconv_mime_decode_headers() - Decodes multiple MIME header fields at once
  • iconv_mime_encode() - Composes a MIME header field
  • iconv_strlen() - Returns the character count of string
  • iconv_strpos() - Finds position of first occurrence of a needle within a haystack
  • iconv_strrpos() - Finds the last occurrence of a needle within a haystack
  • iconv_substr() - Cut out part of a string

Streams:

  • stream_copy_to_stream() - Copies data from one stream to another
  • stream_get_line() - Gets line from stream resource up to a given delimiter
  • stream_socket_accept() - Accept a connection on a socket created by stream_socket_server()
  • stream_socket_client() - Open Internet or Unix domain socket connection
  • stream_socket_get_name() - Retrieve the name of the local or remote sockets
  • stream_socket_recvfrom() - Receives data from a socket, connected or not
  • stream_socket_sendto() - Sends a message to a socket, whether it is connected or not
  • stream_socket_server() - Create an Internet or Unix domain server socket

Date and time related:

  • idate() - Format a local time/date as integer
  • date_sunset() - Time of sunset for a given day and location
  • date_sunrise() - Time of sunrise for a given day and location
  • time_nanosleep() - Delay for a number of seconds and nanoseconds

Strings:

  • str_split() - Convert a string to an array
  • strpbrk() - Search a string for any of a set of characters
  • substr_compare() - Binary safe optionally case insensitive comparison of two strings from an offset, up to length characters

Other:

  • convert_uudecode() - decode a uuencoded string
  • convert_uuencode() - uuencode a string
  • curl_copy_handle() - Copy a cURL handle along with all of its preferences
  • dba_key_split() - Splits a key in string representation into array representation
  • dbase_get_header_info() - Get the header info of a dBase database
  • dbx_fetch_row() - Fetches rows from a query-result that had the DBX_RESULT_UNBUFFERED flag set
  • fbsql_set_password() - Change the password for a given user
  • file_put_contents() - Write a string to a file
  • ftp_alloc() - Allocates space for a file to be uploaded
  • get_declared_interfaces() - Returns an array of all declared interfaces
  • get_headers() - Fetches all the headers sent by the server in response to a HTTP request
  • headers_list() - Returns a list of response headers sent (or ready to send)
  • http_build_query() - Generate URL-encoded query string
  • image_type_to_extension() - Get file extension for
image-type returned by getimagesize(),
exif_read_data(),
exif_thumbnail(),
exif_imagetype()
  • imagefilter() - Applies a filter to an image using custom arguments
  • imap_getacl() - Gets the ACL for a given mailbox
  • ldap_sasl_bind() - Bind to LDAP directory using SASL
  • mb_list_encodings() - Returns an array of all supported encodings
  • pcntl_getpriority() - Get the priority of any process
  • pcntl_wait() - Waits on or returns the status of a forked child as defined by the waitpid() system call
  • pg_version() - Returns an array with client, protocol and server version (when available)
  • php_check_syntax() - Check the syntax of the specified file
  • php_strip_whitespace() - Return source with stripped comments and whitespace
  • proc_nice() - Change the priority of the current process
  • pspell_config_data_dir() - Change location of language data files
  • pspell_config_dict_dir() - Change location of the main word list
  • setrawcookie() - Send a cookie without URL-encoding the value
  • scandir() - List files and directories inside the specified path
  • snmp_read_mib() - Reads and parses a MIB file into the active MIB tree
  • sqlite_fetch_column_types() - Return an array of column types from a particular table

Nota:

The Tidy extension has also changed its API completely.

Migrating Configuration Files
New Directives
Migrating from PHP 4 to PHP 5.0.x


New Directives

There were some new php.ini directives introduced in PHP 5. Here is a list of them:

  • mail.force_extra_parameters - Force the addition of the specified parameters to be passed as extra parameters to the sendmail binary. These parameters will always replace the value of the 5th parameter to mail(), even in safe mode
  • register_long_arrays - allow/disallow PHP to register the deprecated long $HTTP_*_VARS
  • session.hash_function - select a hash function (MD5 or SHA-1)
  • session.hash_bits_per_character - define how many bits are stored in each character when converting the binary hash data to something readable (from 4 to 6)
  • zend.ze1_compatibility_mode - Enable compatibility mode with Zend Engine 1 (PHP 4)
New Functions
Databases
Migrating from PHP 4 to PHP 5.0.x


Databases

There were some changes in PHP 5 regarding databases (MySQL and SQLite).

In PHP 5 the MySQL client libraries are not bundled, because of license problems and some others. For more information, read the FAQ entry.

There is also a new extension, MySQLi (Improved MySQL), which is designed to work with MySQL 4.1 and above.

Since PHP 5, the SQLite extension is built-in PHP. SQLite is an embeddable SQL database engine and is not a client library used to connect to a big database server (like MySQL or PostgreSQL). The SQLite library reads and writes directly to and from the database files on disk.

New Directives
New Object Model
Migrating from PHP 4 to PHP 5.0.x


New Object Model

In PHP 5 there is a new Object Model. PHP's handling of objects has been completely rewritten, allowing for better performance and more features. In previous versions of PHP, objects were handled like primitive types (for instance integers and strings). The drawback of this method was that semantically the whole object was copied when a variable was assigned, or passed as a parameter to a method. In the new approach, objects are referenced by handle, and not by value (one can think of a handle as an object's identifier).

Many PHP programmers aren't even aware of the copying quirks of the old object model and, therefore, the majority of PHP applications will work out of the box, or with very few modifications.

The new Object Model is documented at the Language Reference.

In PHP 5, function with the name of a class is called as a constructor only if defined in the same class. In PHP 4, it is called also if defined in the parent class.

See also the zend.ze1_compatibility_mode directive for compatability with PHP 4.

Databases
Error Reporting
Migrating from PHP 4 to PHP 5.0.x


Error Reporting

As of PHP 5 the error reporting constant E_STRICT is available, with the value 2048. When enabled, messages will be issued to warn you about code usage which is deprecated or which may not be future-proof.

Nota: E_ALL does not include E_STRICT, so it's not enabled by default. You must explicitly set the error reporting level to include E_STRICT in order to see these messages.

See Predefined Constants for more information.

New Object Model
Classes and Objects (PHP 4)
Migrating from PHP 4 to PHP 5.0.x


Classes and Objects (PHP 4)

Índice

  • class
  • extends
  • Constructors
  • Scope Resolution Operator (::)
  • parent
  • Serializing objects - objects in sessions
  • The magic functions __sleep and __wakeup
  • References inside the constructor
  • Comparing objects
Error Reporting
class
Apêndices


class

A class is a collection of variables and functions working with these variables. Variables are defined by var and functions by function. A class is defined using the following syntax:

<?php
class Cart {
    var $items;  // Items in our shopping cart

    // Add $num articles of $artnr to the cart

    function add_item($artnr, $num) {
        $this->items[$artnr] += $num;
    }

    // Take $num articles of $artnr out of the cart

    function remove_item($artnr, $num) {
        if ($this->items[$artnr] > $num) {
            $this->items[$artnr] -= $num;
            return true;
        } elseif ($this->items[$artnr] == $num) {
            unset($this->items[$artnr]);
            return true;
        } else {
            return false;
        }
    }
}
?>

This defines a class named Cart that consists of an associative array of articles in the cart and two functions to add and remove items from this cart.

Aviso

You can NOT break up a class definition into multiple files. You also can NOT break a class definition into multiple PHP blocks, unless the break is within a method declaration. The following will not work:

<?php
class test {
?>
<?php
    function test() {
        print 'OK';
    }
}
?>

However, the following is allowed:

<?php
class test {
    function test() {
        ?>
        <?php
        print 'OK';
    }
}
?>

The following cautionary notes are valid for PHP 4.

Cuidado

The name stdClass is used internally by Zend and is reserved. You cannot have a class named stdClass in PHP.

Cuidado

The function names __sleep and __wakeup are magical in PHP classes. You cannot have functions with these names in any of your classes unless you want the magic functionality associated with them. See below for more information.

Cuidado

PHP reserves all function names starting with __ as magical. It is recommended that you do not use function names with __ in PHP unless you want some documented magic functionality.

In PHP 4, only constant initializers for var variables are allowed. To initialize variables with non-constant values, you need an initialization function which is called automatically when an object is being constructed from the class. Such a function is called a constructor (see below).

<?php
class Cart {
    /* None of these will work in PHP 4. */
    var $todays_date = date("Y-m-d");
    var $name = $firstname;
    var $owner = 'Fred ' . 'Jones';
    /* Arrays containing constant values will, though. */
    var $items = array("VCR", "TV");
}

/* This is how it should be done. */
class Cart {
    var $todays_date;
    var $name;
    var $owner;
    var $items = array("VCR", "TV");

    function Cart() {
        $this->todays_date = date("Y-m-d");
        $this->name = $GLOBALS['firstname'];
        /* etc. . . */
    }
}
?>

Classes are types, that is, they are blueprints for actual variables. You have to create a variable of the desired type with the new operator.

<?php
$cart = new Cart;
$cart->add_item("10", 1);

$another_cart = new Cart;
$another_cart->add_item("0815", 3);
?>

This creates the objects $cart and $another_cart, both of the class Cart. The function add_idem() of the $cart object is being called to add 1 item of article number 10 to the $cart. 3 items of article number 0815 are being added to $another_cart.

Both, $cart and $another_cart, have functions add_item(), remove_item() and a variable items. These are distinct functions and variables. You can think of the objects as something similar to directories in a filesystem. In a filesystem you can have two different files README.TXT, as long as they are in different directories. Just like with directories where you'll have to type the full pathname in order to reach each file from the toplevel directory, you have to specify the complete name of the function you want to call: in PHP terms, the toplevel directory would be the global namespace, and the pathname separator would be ->. Thus, the names $cart->items and $another_cart->items name two different variables. Note that the variable is named $cart->items, not $cart->$items, that is, a variable name in PHP has only a single dollar sign ($).

<?php
// correct, single $
$cart->items = array("10" => 1);

// invalid, because $cart->$items becomes $cart->""
$cart->$items = array("10" => 1);

// correct, but may or may not be what was intended:
// $cart->$myvar becomes $cart->items
$myvar = 'items';
$cart->$myvar = array("10" => 1);
?>

Within a class definition, you do not know under which name the object will be accessible in your program: at the time the Cart class was written, it was unknown whether the object would be named $cart, $another_cart, or something else later. Thus, you cannot write $cart->items within the Cart class itself. Instead, in order to be able to access its own functions and variables from within a class, one can use the pseudo-variable $this which can be read as 'my own' or 'current object'. Thus, '$this->items[$artnr] += $num' can be read as 'add $num to the $artnr counter of my own items array' or 'add $num to the $artnr counter of the items array within the current object'.

Nota:

The $this pseudo-variable is not usually defined if the method in which it is hosted is called statically. This is not, however, a strict rule: $this is defined if a method is called statically from within another object. In this case, the value of $this is that of the calling object. This is illustrated in the following example:

<?php
class A
{
    function foo()
    {
        if (isset($this)) {
            echo '$this is defined (';
            echo get_class($this);
            echo ")\n";
        } else {
            echo "\$this is not defined.\n";
        }
    }
}

class B
{
    function bar()
    {
        A::foo();
    }
}

$a = new A();
$a->foo();
A::foo();
$b = new B();
$b->bar();
B::bar();
?>

O exemplo acima irá imprimir:

$this is defined (a)
$this is not defined.
$this is defined (b)
$this is not defined.

Nota:

There are some nice functions to handle classes and objects. You might want to take a look at the Class/Object Functions.

Classes and Objects (PHP 4)
extends
Classes and Objects (PHP 4)


extends

Often you need classes with similar variables and functions to another existing class. In fact, it is good practice to define a generic class which can be used in all your projects and adapt this class for the needs of each of your specific projects. To facilitate this, classes can be extensions of other classes. The extended or derived class has all variables and functions of the base class (this is called 'inheritance' despite the fact that nobody died) and what you add in the extended definition. It is not possible to subtract from a class, that is, to undefine any existing functions or variables. An extended class is always dependent on a single base class, that is, multiple inheritance is not supported. Classes are extended using the keyword 'extends'.

<?php
class Named_Cart extends Cart {
    var $owner;

    function set_owner ($name) {
        $this->owner = $name;
    }
}
?>

This defines a class Named_Cart that has all variables and functions of Cart plus an additional variable $owner and an additional function set_owner(). You create a named cart the usual way and can now set and get the carts owner. You can still use normal cart functions on named carts:

<?php
$ncart = new Named_Cart;    // Create a named cart
$ncart->set_owner("kris");  // Name that cart
print $ncart->owner;        // print the cart owners name
$ncart->add_item("10", 1);  // (inherited functionality from cart)
?>

This is also called a "parent-child" relationship. You create a class, parent, and use extends to create a new class based on the parent class: the child class. You can even use this new child class and create another class based on this child class.

Nota:

Classes must be defined before they are used! If you want the class Named_Cart to extend the class Cart, you will have to define the class Cart first. If you want to create another class called Yellow_named_cart based on the class Named_Cart you have to define Named_Cart first. To make it short: the order in which the classes are defined is important.

class
Constructors
Classes and Objects (PHP 4)


Constructors

Constructors are functions in a class that are automatically called when you create a new instance of a class with new. A function becomes a constructor, when it has the same name as the class. If a class has no constructor, the constructor of the base class will be called, if it exists.

<?php
class Auto_Cart extends Cart {
    function Auto_Cart() {
        $this->add_item("10", 1);
    }
}
?>

This defines a class Auto_Cart that is a Cart plus a constructor which initializes the cart with one item of article number "10" each time a new Auto_Cart is being made with "new". Constructors can take arguments and these arguments can be optional, which makes them much more useful. To be able to still use the class without parameters, all parameters to constructors should be made optional by providing default values.

<?php
class Constructor_Cart extends Cart {
    function Constructor_Cart($item = "10", $num = 1) {
        $this->add_item ($item, $num);
    }
}

// Shop the same old boring stuff.
$default_cart = new Constructor_Cart;

// Shop for real...
$different_cart = new Constructor_Cart("20", 17);
?>

You also can use the @ operator to mute errors occurring in the constructor, e.g. @new.

<?php
class A
{
    function A()
    {
        echo "I am the constructor of A.<br />\n";
    }

    function B()
    {
        echo "I am a regular function named B in class A.<br />\n";
        echo "I am not a constructor in A.<br />\n";
    }
}

class B extends A
{
}

// This will call B() as a constructor
$b = new B;
?>

The function B() in class A will suddenly become a constructor in class B, although it was never intended to be. PHP 4 does not care if the function is being defined in class B, or if it has been inherited.

Cuidado

PHP doesn't call constructors of the base class automatically from a constructor of a derived class. It is your responsibility to propagate the call to constructors upstream where appropriate.

Destructors are functions that are called automatically when an object is destroyed, either with unset() or by simply going out of scope. There are no destructors in PHP. You may use register_shutdown_function() instead to simulate most effects of destructors.

extends
Scope Resolution Operator (::)
Classes and Objects (PHP 4)


Scope Resolution Operator (::)

Cuidado

The following is valid for PHP 4 and later only.

Sometimes it is useful to refer to functions and variables in base classes or to refer to functions in classes that have not yet any instances. The :: operator is being used for this.

<?php
class A {
    function example() {
        echo "I am the original function A::example().<br />\n";
    }
}

class B extends A {
    function example() {
        echo "I am the redefined function B::example().<br />\n";
        A::example();
    }
}

// there is no object of class A.
// this will print
//   I am the original function A::example().<br />
A::example();

// create an object of class B.
$b = new B;

// this will print
//   I am the redefined function B::example().<br />
//   I am the original function A::example().<br />
$b->example();
?>

The above example calls the function example() in class A, but there is no object of class A, so that we cannot write $a->example() or similar. Instead we call example() as a 'class function', that is, as a function of the class itself, not any object of that class.

There are class functions, but there are no class variables. In fact, there is no object at all at the time of the call. Thus, a class function may not use any object variables (but it can use local and global variables), and it may not use $this at all.

In the above example, class B redefines the function example(). The original definition in class A is shadowed and no longer available, unless you are referring specifically to the implementation of example() in class A using the ::-operator. Write A::example() to do this (in fact, you should be writing parent::example(), as shown in the next section).

In this context, there is a current object and it may have object variables. Thus, when used from WITHIN an object function, you may use $this and object variables.

Constructors
parent
Classes and Objects (PHP 4)


parent

You may find yourself writing code that refers to variables and functions in base classes. This is particularly true if your derived class is a refinement or specialisation of code in your base class.

Instead of using the literal name of the base class in your code, you should be using the special name parent, which refers to the name of your base class as given in the extends declaration of your class. By doing this, you avoid using the name of your base class in more than one place. Should your inheritance tree change during implementation, the change is easily made by simply changing the extends declaration of your class.

<?php
class A {
    function example() {
        echo "I am A::example() and provide basic functionality.<br />\n";
    }
}

class B extends A {
    function example() {
        echo "I am B::example() and provide additional functionality.<br />\n";
        parent::example();
    }
}

$b = new B;

// This will call B::example(), which will in turn call A::example().
$b->example();
?>
Scope Resolution Operator (::)
Serializing objects - objects in sessions
Classes and Objects (PHP 4)


Serializing objects - objects in sessions

serialize() returns a string containing a byte-stream representation of any value that can be stored in PHP. unserialize() can use this string to recreate the original variable values. Using serialize to save an object will save all variables in an object. The functions in an object will not be saved, only the name of the class.

In order to be able to unserialize() an object, the class of that object needs to be defined. That is, if you have an object $a of class A on page1.php and serialize this, you'll get a string that refers to class A and contains all values of variabled contained in $a. If you want to be able to unserialize this on page2.php, recreating $a of class A, the definition of class A must be present in page2.php. This can be done for example by storing the class definition of class A in an include file and including this file in both page1.php and page2.php.

<?php
// classa.inc:

  class A {
      var $one = 1;

      function show_one() {
          echo $this->one;
      }
  }

// page1.php:

  include("classa.inc");

  $a = new A;
  $s = serialize($a);
  // store $s somewhere where page2.php can find it.
  $fp = fopen("store", "w");
  fwrite($fp, $s);
  fclose($fp);

// page2.php:

  // this is needed for the unserialize to work properly.
  include("classa.inc");

  $s = implode("", @file("store"));
  $a = unserialize($s);

  // now use the function show_one() of the $a object.
  $a->show_one();
?>

If you are using sessions and use session_register() to register objects, these objects are serialized automatically at the end of each PHP page, and are unserialized automatically on each of the following pages. This basically means that these objects can show up on any of your pages once they become part of your session.

It is strongly recommended that you include the class definitions of all such registered objects on all of your pages, even if you do not actually use these classes on all of your pages. If you don't and an object is being unserialized without its class definition being present, it will lose its class association and become an object of class __PHP_Incomplete_Class_Name without any functions available at all, that is, it will become quite useless.

So if in the example above $a became part of a session by running session_register("a"), you should include the file classa.inc on all of your pages, not only page1.php and page2.php.

parent
The magic functions __sleep and __wakeup
Classes and Objects (PHP 4)


The magic functions __sleep and __wakeup

serialize() checks if your class has a function with the magic name __sleep. If so, that function is being run prior to any serialization. It can clean up the object and is supposed to return an array with the names of all variables of that object that should be serialized. If the method doesn't return anything then NULL is serialized and E_NOTICE is issued.

The intended use of __sleep is to commit pending data or perform similar cleanup tasks. Also, the function is useful if you have very large objects which need not be saved completely.

Conversely, unserialize() checks for the presence of a function with the magic name __wakeup. If present, this function can reconstruct any resources that object may have.

The intended use of __wakeup is to reestablish any database connections that may have been lost during serialization and perform other reinitialization tasks.

Serializing objects - objects in sessions
References inside the constructor
Classes and Objects (PHP 4)


References inside the constructor

Creating references within the constructor can lead to confusing results. This tutorial-like section helps you to avoid problems.

<?php
class Foo {
    function Foo($name) {
        // create a reference inside the global array $globalref
        global $globalref;
        $globalref[] = &$this;
        // set name to passed value
        $this->setName($name);
        // and put it out
        $this->echoName();
    }

    function echoName() {
        echo "<br />", $this->name;
    }

    function setName($name) {
        $this->name = $name;
    }
}
?>

Let us check out if there is a difference between $bar1 which has been created using the copy = operator and $bar2 which has been created using the reference =& operator...

<?php
$bar1 = new Foo('set in constructor');
$bar1->echoName();
$globalref[0]->echoName();

/* output:
set in constructor
set in constructor
set in constructor */

$bar2 =& new Foo('set in constructor');
$bar2->echoName();
$globalref[1]->echoName();

/* output:
set in constructor
set in constructor
set in constructor */
?>

Apparently there is no difference, but in fact there is a very significant one: $bar1 and $globalref[0] are _NOT_ referenced, they are NOT the same variable. This is because "new" does not return a reference by default, instead it returns a copy.

Nota: There is no performance loss (since PHP 4 and up use reference counting) returning copies instead of references. On the contrary it is most often better to simply work with copies instead of references, because creating references takes some time where creating copies virtually takes no time (unless none of them is a large array or object and one of them gets changed and the other(s) one(s) subsequently, then it would be wise to use references to change them all concurrently).

To prove what is written above let us watch the code below.
<?php
// now we will change the name. what do you expect?
// you could expect that both $bar1 and $globalref[0] change their names...
$bar1->setName('set from outside');

// as mentioned before this is not the case.
$bar1->echoName();
$globalref[0]->echoName();

/* output:
set from outside
set in constructor */

// let us see what is different with $bar2 and $globalref[1]
$bar2->setName('set from outside');

// luckily they are not only equal, they are the same variable
// thus $bar2->name and $globalref[1]->name are the same too
$bar2->echoName();
$globalref[1]->echoName();

/* output:
set from outside
set from outside */
?>

Another final example, try to understand it.

<?php
class A {
    function A($i) {
        $this->value = $i;
        // try to figure out why we do not need a reference here
        $this->b = new B($this);
    }

    function createRef() {
        $this->c = new B($this);
    }

    function echoValue() {
        echo "<br />","class ",get_class($this),': ',$this->value;
    }
}

class B {
    function B(&$a) {
        $this->a = &$a;
    }

    function echoValue() {
        echo "<br />","class ",get_class($this),': ',$this->a->value;
    }
}

// try to understand why using a simple copy here would yield
// in an undesired result in the *-marked line
$a =& new A(10);
$a->createRef();

$a->echoValue();
$a->b->echoValue();
$a->c->echoValue();

$a->value = 11;

$a->echoValue();
$a->b->echoValue(); // *
$a->c->echoValue();

?>

O exemplo acima irá imprimir:

class A: 10
class B: 10
class B: 10
class A: 11
class B: 11
class B: 11

The magic functions __sleep and __wakeup
Comparing objects
Classes and Objects (PHP 4)


Comparing objects

In PHP 4, objects are compared in a very simple manner, namely: Two object instances are equal if they have the same attributes and values, and are instances of the same class. Similar rules are applied when comparing two objects using the identity operator (===).

If we were to execute the code in the example below:

Exemplo #1 Example of object comparison in PHP 4

<?php
function bool2str($bool) {
    if ($bool === false) {
            return 'FALSE';
    } else {
            return 'TRUE';
    }
}

function compareObjects(&$o1, &$o2) {
    echo 'o1 == o2 : '.bool2str($o1 == $o2)."\n";
    echo 'o1 != o2 : '.bool2str($o1 != $o2)."\n";
    echo 'o1 === o2 : '.bool2str($o1 === $o2)."\n";
    echo 'o1 !== o2 : '.bool2str($o1 !== $o2)."\n";
}

class Flag {
    var $flag;

    function Flag($flag=true) {
            $this->flag = $flag;
    }
}

class SwitchableFlag extends Flag {

    function turnOn() {
        $this->flag = true;
    }

    function turnOff() {
        $this->flag = false;
    }
}

$o = new Flag();
$p = new Flag(false);
$q = new Flag();

$r = new SwitchableFlag();

echo "Compare instances created with the same parameters\n";
compareObjects($o, $q);

echo "\nCompare instances created with different parameters\n";
compareObjects($o, $p);

echo "\nCompare an instance of a parent class with one from a subclass\n";
compareObjects($o, $r);
?>

O exemplo acima irá imprimir:

Compare instances created with the same parameters
o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : TRUE
o1 !== o2 : FALSE

Compare instances created with different parameters
o1 == o2 : FALSE
o1 != o2 : TRUE
o1 === o2 : FALSE
o1 !== o2 : TRUE

Compare an instance of a parent class with one from a subclass
o1 == o2 : FALSE
o1 != o2 : TRUE
o1 === o2 : FALSE
o1 !== o2 : TRUE
Which is the output we will expect to obtain given the comparison rules above. Only instances with the same values for their attributes and from the same class are considered equal and identical.

Even in the cases where we have object composition, the same comparison rules apply. In the example below we create a container class that stores an associative array of Flag objects.

Exemplo #2 Compound object comparisons in PHP 4

<?php
class FlagSet {
    var $set;

    function FlagSet($flagArr = array()) {
        $this->set = $flagArr;
    }

    function addFlag($name, $flag) {
        $this->set[$name] = $flag;
    }

    function removeFlag($name) {
        if (array_key_exists($name, $this->set)) {
            unset($this->set[$name]);
        }
    }
}

$u = new FlagSet();
$u->addFlag('flag1', $o);
$u->addFlag('flag2', $p);
$v = new FlagSet(array('flag1'=>$q, 'flag2'=>$p));
$w = new FlagSet(array('flag1'=>$q));

echo "\nComposite objects u(o,p) and v(q,p)\n";
compareObjects($u, $v);

echo "\nu(o,p) and w(q)\n";
compareObjects($u, $w);
?>

O exemplo acima irá imprimir:

Composite objects u(o,p) and v(q,p)
o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : TRUE
o1 !== o2 : FALSE

u(o,p) and w(q)
o1 == o2 : FALSE
o1 != o2 : TRUE
o1 === o2 : FALSE
o1 !== o2 : TRUE

References inside the constructor
Debugando em PHP
Classes and Objects (PHP 4)


Debugando em PHP

Índice

  • Sobre o debugador
Comparing objects
Sobre o debugador
Apêndices


Sobre o debugador

O PHP não possui um utilitário de debug interno. Você pode utilizar debugadores externos alternativamente. O » Zend IDE inclui um debugador e há também outras extensões grátis como o DBG em » http://www.php-debugger.com/dbg/, o » Advanced PHP Debugger (APD) ou o » Xdebug.

Debugando em PHP
Opções do script Configure
Debugando em PHP


Opções do script Configure

Índice

  • Lista de opções principais do script configure
Sobre o debugador
Lista de opções principais do script configure
Apêndices


Lista de opções principais do script configure

Abaixo está a lista parcial das opções do script configure usado pelo PHP quando compilando o mesmo em ambientes Unix-like. A maioria das opções de configuração está listada na página de referência da extensão e não aqui. Para uma lista atualizada e completa das opções do script configure, execute ./configure --help no diretórios dos fontes do PHP após executar autoconf (veja também o capítulo de Instalação). Você pode também se interessar em ler a documentação do » GNU configure para obter informações em opções adicionais do configure tais como --prefix=PREFIX.

Nota:

Essa são usadas apenas em tempo de compilação. Se você quiser alterar a configuração do PHP em tempo de execução, por favor, veja o capítulo deConfiguração em tempo de execução.

  • Miscelânea

  • Comportamento do PHP

  • Servidor

Opções do Configuração do PHP

Nota:

Essas opções são são usadas no PHP a partir do PHP 4.1.0, embora algumas estão disponíveis em versões anteriores também. Se você quer compilar uma versão antiga, algumas opções provavelmente não estarão disponíveis.

Opções Mistas

--enable-debug

Compila com símbolos para depuração.

--with-layout=TYPE

Configura a disposição dos arquivos instalados. TYPE pode ser PHP (padrão) ou GNU.

--with-pear=DIR

Instala o PEAR em DIR (padrão é PREFIX/lib/php).

--without-pear

Não instala o PEAR.

--enable-sigchild

Permite que o PHP tenha um tratador de SIGCHLD próprio.

--disable-rpath

Desabilita passagem de caminhos adicionais aonde buscar por bibliotecas em tempo de execução.

--enable-libgcc

Habilita montar explicitamente com a libgcc.

--enable-php-streams

Inclue fluxos de dados (streams) experimentais do PHP. Não use a não ser que esteja testando o código!

--with-zlib-dir[=DIR]

Define a localização do diretório onde a zlib está instalada.

--enable-trans-sid

Habilitada propagação transparente do id da sessão. Apenas válido para PHP 4.1.2 ou anterior. Do PHP 4.2.0 em diante, a funcionalidade trans-sid sempre é compilada.

--with-tsrm-pthreads

Use threads POSIX (padrão).

--enable-shared[=PKGS]

Monta bibliotecas compartilhadas [padrão=yes].

--enable-static[=PKGS]

Monta bibliotecas estáticas [padrão=yes].

--enable-fast-install[=PKGS]

Optimiza para instalação rápida [padrão=yes].

--with-gnu-ld

Presume que o compilador C usa o GNU ld [padrão=no].

--disable-libtool-lock

Evita travamento (pode quebrar compilações rodando em paralelo).

--with-pic

Tenta usar apenas objetos PIC/não-PIC [padrão=use both].

--enable-memory-limit

Compila com suporte a limite de memória. (não disponível desde o PHP 5.2.1 - sempre habilitado)

--disable-url-fopen-wrapper

Desabilita o wrapper da função fopen que permite acessar arquivos via HTTP ou FTP. (não disponível desde o PHP 5.2.5)

--enable-versioning

Exporta apenas os símbolos necessários. Veja o arquivo INSTALL para mais informações.

Opções do PHP

--enable-maintainer-mode

Habilita criar regras e dependências que não são úteis (e algumas vezes confusas) para o instalador casual.

--with-config-file-path=PATH

Edita o caminho no qual deve procurar pelo arquivo php.ini, padrão é PREFIX/lib.

--enable-safe-mode

Habilita o modo seguro por padrão.

--with-exec-dir[=DIR]

Apenas permite executáveis no DIR quando em modo seguro. Padrão é /usr/local/php/bin.

--enable-magic-quotes

Habilita aspas mágicas por padrão.

--disable-short-tags

Desabilita a forma comprimida de tag inicial <? por padrão.

Opções SAPI

A lista a seguir contêm as SAPI&s (Server Application Programming Interface) para o PHP.

--with-aolserver=DIR

Especifica o caminho para o AOLserver instalado.

--with-apxs[=FILE]

Monta como módulo compartilhado do Apache. FILE é o caminho opcional para a ferramenta apxs do Apache; padrão é apxs. Assegure-se que você especificou a versão do apxs que está atualmente instalado no seu sistema e não a que está no diretório dos fontes do Apache.

--with-apache[=DIR]

Monta como módulo estático do Apache. DIR é o diretório dos fontes do Apache, padrão é /usr/local/apache.

--with-mod-charset

Habilita transferência de tabelas para mod_charset (Apache Russo).

--with-apxs2[=FILE]

Monta como módulo compartilhado do Apache 2.0. FILE é o caminho opcional para a ferramenta apxs do Apache; padrão é apxs.

--with-caudium=DIR

Build PHP as a Pike module for use with Caudium. DIR is the Caudium server dir, with the default value /usr/local/caudium/server.

--disable-cli

Available with PHP 4.3.0. Disable building the CLI version of PHP (this forces --without-pear). More information is available in the section about Using PHP from the command line.

--enable-embed[=TYPE]

Habilita montagem da biblioteca SAPI embutida. TYPE é ou shared ou static, que tem como padrão shared. Disponível com PHP 4.3.0.

--with-fhttpd[=DIR]

Constrói o módulo fhttpd. DIR é o diretório dos fontes do fhttpd, padrão é /usr/local/src/fhttpd. Não mais disponível a partir do PHP 4.3.0.

--with-isapi=DIR

Monta o PHP como um módulo ISAPI para uso com o Zeus.

--with-nsapi=DIR

Especifica o caminho para o servidor web instalado Netscape/iPlanet/SunONE.

--with-phttpd=DIR

Nenhuma informação ainda.

--with-pi3web=DIR

Monta o PHP como módulo para usar com Pi3Web.

--with-roxen=DIR

Monta PHP como um módulo Pike. DIR é o diretório básico do Roxen, normalmente /usr/local/roxen/server.

--enable-roxen-zts

Monta o módulo Roxen usando Zend Thread Safety.

--with-servlet[=DIR]

Inclue o suporte à servlet. DIR é o diretório base de instalação para a JSDK. Esse SAPI requer que a extensão java seja monta como uma dl compartilhada.

--with-thttpd=SRCDIR

Monta o PHP como um módulo thttpd.

--with-tux=MODULEDIR

Monta o PHP como um módulo TUX (apenas Linux).

--with-webjames=SRCDIR

Monta o PHP como um módulo do WebJames (apenas para RISC OS)

--disable-cgi

Desabilita montar a versão CGI do PHP. Disponível com PHP 4.3.0.

--enable-force-cgi-redirect

Habilita a checagem de segurança nos redirecionamentos internos do servidor. Você deve usar isso se você estiver executando a versão CGI com o Apache.

--enable-discard-path

Se essa opção estiver habilitada, o binário CGI do PHP pode ser colocado com segurança fora da árvore web e as pessoas não serão capaz de evitar a segurança do .htaccess.

--with-fastcgi

Monta PHP como uma aplicação FastCGI. Não mais disponível a partir do PHP 4.3.0, ao invés, você deve usar --enable-fastcgi .

--enable-fastcgi

Se essa opção estiver habilitada, o módulo CGI será montado com suporta para FastCGI também. Disponível desde o PHP 4.3.0.

--disable-path-info-check

Se essa opção estiver desabilitada, caminhos como /info.php/test?a=b não funcionarão. Disponível desde o PHP 4.3.0. Para mais informações, leia o » Manual do Apache.

Opções do script Configure
Diretivas do arquivo php.ini
Opções do script Configure


Diretivas do arquivo php.ini

Índice

  • Lista de diretivas do arquivo php.ini
  • Lista das seções do php.ini
  • Descrição das diretivas do principais do arquivo php.ini
Lista de opções principais do script configure
Lista de diretivas do arquivo php.ini
Apêndices


Lista de diretivas do arquivo php.ini

Essa lista inclui as diretivas do arquivo php.ini que você pode alterar para configurar o comportamento do PHP.

Opções de Configuração
Nome | Valor Padrão | Alterável | Changelog
allow_call_time_pass_reference | "1" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.0.0. Removido no PHP 6.0.0.
allow_url_fopen | "1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.3.4. PHP_INI_SYSTEM no PHP < 6. Disponível desde o PHP 4.0.4.
allow_url_include | "0" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP 5. Disponível desde o PHP 5.2.0.
always_populate_raw_post_data | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3. Disponível desde o PHP 4.1.0.
apc.cache_by_default | "1" | PHP_INI_ALL | PHP_INI_SYSTEM no APC <= 3.0.12. Disponível desde o APC 3.0.0.
apc.enabled | "1" | PHP_INI_SYSTEM | PHP_INI_SYSTEM no APC 2. PHP_INI_ALL no APC <= 3.0.12.
apc.enable_cli | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.7.
apc.file_update_protection | "2" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.6.
apc.filters | NULL | PHP_INI_SYSTEM |
apc.gc_ttl | "3600" | PHP_INI_SYSTEM |
apc.include_once_override | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.12.
apc.localcache | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.14.
apc.localcache.size | "512" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.14.
apc.max_file_size | "1M" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.7.
apc.mmap_file_mask | NULL | PHP_INI_SYSTEM |
apc.num_files_hint | "1000" | PHP_INI_SYSTEM |
apc.optimization | "0" | PHP_INI_ALL | PHP_INI_SYSTEM in APC 2. Removido no APC 3.0.13.
apc.report_autofilter | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.11.
apc.rfc1867 | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.13.
apc.rfc1867_freq | "0" | PHP_INI_SYSTEM |
apc.rfc1867_name | "APC_UPLOAD_PROGRESS" | PHP_INI_SYSTEM |
apc.rfc1867_prefix | "upload_" | PHP_INI_SYSTEM |
apc.shm_segments | "1" | PHP_INI_SYSTEM |
apc.shm_size | "30" | PHP_INI_SYSTEM |
apc.slam_defense | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.stat | "1" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.10.
apc.stat_ctime | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.13.
apc.ttl | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.user_entries_hint | "4096" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.user_ttl | "0" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.0.
apc.write_lock | "1" | PHP_INI_SYSTEM | Disponível desde o APC 3.0.11.
apd.bitmask | "0" | PHP_INI_ALL | Removido no apd 0.9.
apd.dumpdir | NULL | PHP_INI_ALL |
apd.statement_tracing | "0" | PHP_INI_ALL | Disponível desde o apd 0.9.
arg_separator | "&" | PHP_INI_ALL | Removido no PHP 4.0.6.
arg_separator.input | "&" | PHP_INI_PERDIR | Disponível desde o PHP 4.0.5.
arg_separator.output | "&" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
asp_tags | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.0.0.
assert.active | "1" | PHP_INI_ALL |
assert.bail | "0" | PHP_INI_ALL |
assert.callback | NULL | PHP_INI_ALL |
assert.quiet_eval | "0" | PHP_INI_ALL |
assert.warning | "1" | PHP_INI_ALL |
async_send | "0" | PHP_INI_ALL | Disponível desde o PHP 4.2.0. Removido no PHP 4.3.0.
auto_append_file | NULL | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
auto_detect_line_endings | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
auto_globals_jit | "1" | PHP_INI_PERDIR | Disponível desde o PHP 5.0.0.
auto_prepend_file | NULL | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
axis2.client_home | "~/work/axisc/c/deply" | PHP_INI_ALL |
axis2.enable_exception | "1" | PHP_INI_ALL |
axis2.enable_trace | "1" | PHP_INI_ALL |
axis2.log_path | "/tmp" | PHP_INI_ALL |
bcmath.scale | "0" | PHP_INI_ALL |
bcompiler.enabled | "1" | PHP_INI_ALL | Disponível desde o bcompiler 0.8.
birdstep.max_links | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.2.0.
blenc.key_file | "/usr/local/etc/blenckeys" | PHP_INI_ALL |
browscap | NULL | PHP_INI_SYSTEM |
cgi.check-shebang-line | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.2.1.
cgi.discard_path | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.3.0.
cgi.fix_pathinfo | "1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 5.2.0. Disponível desde o PHP 4.3.0.
cgi.force_redirect | "1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 5.2.0. Disponível desde o PHP 4.2.0.
cgi.nph | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.5.
cgi.redirect_status_env | NULL | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 5.2.0. Disponível desde o PHP 4.2.0.
cgi.rfc2616_headers | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
child_terminate | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
coin_acceptor.autoreset | "On" | PHP_INI_ALL | Removido no coin_acceptor 0.2.
coin_acceptor.auto_initialize | "Off" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
coin_acceptor.auto_reset | "On" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
coin_acceptor.command_function | "Off" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.3.
coin_acceptor.delay | "53132" | PHP_INI_ALL | Removido no coin_acceptor 0.2.
coin_acceptor.delay_coins | "53132" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
coin_acceptor.delay_prom | "55748" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
coin_acceptor.device | "/dev/ttyS1" | PHP_INI_ALL | Removido no coin_acceptor 0.2.
coin_acceptor.lock_on_close | "Off" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
coin_acceptor.start_unlocked | "On" | PHP_INI_ALL | Disponível desde o coin_acceptor 0.2.
com.allow_dcom | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.5.
com.autoregister_casesensitive | "1" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP 4. Disponível desde o PHP 4.1.0.
com.autoregister_typelib | "0" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP 4. Disponível desde o PHP 4.1.0.
com.autoregister_verbose | "0" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP 4. Disponível desde o PHP 4.1.0.
com.code_page | "" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
com.typelib_file | "" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.5.
crack.default_dictionary | NULL | PHP_INI_PERDIR | PHP_INI_SYSTEM no crack <= 0.2. Disponível desde o PHP 4.0.5. Removido no PHP 5.0.0.
daffodildb.default_host | "localhost" | PHP_INI_ALL |
daffodildb.default_password | "daffodil" | PHP_INI_ALL |
daffodildb.default_socket | NULL | PHP_INI_ALL |
daffodildb.default_user | "DAFFODIL" | PHP_INI_ALL |
daffodildb.port | "3456" | PHP_INI_ALL |
date.default_latitude | "31.7667" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.default_longitude | "35.2333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.sunrise_zenith | "90.83333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.sunset_zenith | "90.83333" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
date.timezone | "" | PHP_INI_ALL | Disponível desde o PHP 5.1.0.
dba.default_handler | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.3.
dbx.colnames_case | "unchanged" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0. Removido no PHP 5.1.0.
default_charset | "" | PHP_INI_ALL |
default_mimetype | "text/html" | PHP_INI_ALL |
default_socket_timeout | "60" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
define_syslog_variables | "0" | PHP_INI_ALL | Removido no PHP 6.0.0.
detect_unicode | "1" | PHP_INI_ALL | Disponível desde o PHP 5.1.0. Removido no PHP 6.0.0.
disable_classes | "" | php.ini only | Disponível desde o PHP 4.3.2.
disable_functions | "" | php.ini only | Disponível desde o PHP 4.0.1.
display_errors | "1" | PHP_INI_ALL |
display_startup_errors | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.3.
docref_ext | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.2.
docref_root | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
doc_root | NULL | PHP_INI_SYSTEM |
enable_dl | "1" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
engine | "1" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
error_append_string | NULL | PHP_INI_ALL |
error_log | NULL | PHP_INI_ALL |
error_prepend_string | NULL | PHP_INI_ALL |
error_reporting | NULL | PHP_INI_ALL |
etpan.default.charset | "utf-8" | PHP_INI_ALL |
etpan.default.protocol | "imap" | PHP_INI_ALL |
exif.decode_jis_intel | "JIS" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
exif.decode_jis_motorola | "JIS" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
exif.decode_unicode_intel | "UCS-2LE" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
exif.decode_unicode_motorola | "UCS-2BE" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
exif.encode_jis | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
exif.encode_unicode | "ISO-8859-15" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
expect.logfile | "" | PHP_INI_ALL |
expect.loguser | "1" | PHP_INI_ALL |
expect.timeout | "10" | PHP_INI_ALL |
expose_php | "1" | php.ini only |
extension | NULL | Apenas php.ini |
extension_dir | "/path/to/php" | PHP_INI_SYSTEM |
fastcgi.impersonate | "0" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 5.2.0. Disponível desde o PHP 4.3.0. Removido no PHP 5.0.0.
fbsql.allow_persistant | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6. Removido no PHP 4.2.0.
fastcgi.logging | "1" | PHP_INI_ALL | Disponível desde o PHP 4.4.0.
fbsql.allow_persistent | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0.
fbsql.autocommit | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.batchSize | "1000" | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0. Removido no PHP 5.1.0.
fbsql.batchsize | "1000" | PHP_INI_ALL | Disponível desde o PHP 5.1.0.
fbsql.default_database | "" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.default_database_password | "" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.default_host | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.default_password | "" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.default_user | "_SYSTEM" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.generate_warnings | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.max_connections | "128" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.max_links | "128" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.max_persistent | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.max_results | "128" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6.
fbsql.mbatchSize | "1000" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.6. Removido no PHP 4.2.0.
fbsql.show_timestamp_decimals | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.5.
file_uploads | "1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 4.2.3. Disponível desde o PHP 4.0.3.
filter.default | "unsafe_raw" | PHP_INI_PERDIR | PHP_INI_ALL no filter <= 0.9.4. Disponível desde o PHP 5.2.0.
filter.default_flags | NULL | PHP_INI_PERDIR | PHP_INI_ALL no filter <= 0.9.4. Disponível desde o PHP 5.2.0.
from | "" | PHP_INI_ALL |
gd.jpeg_ignore_warning | "0" | PHP_INI_ALL | Disponível desde o PHP 5.1.3.
geoip.custom_directory | NULL | PHP_INI_ALL | Disponível desde o geoip 1.0.1.
geoip.database_standard | "GeoIP.dat" | PHP_INI_ALL | Removido no geoip 1.0.1.
gpc_order | "GPC" | PHP_INI_ALL | Removido PHP 5.0.0.
hidef.ini_path | (char*)default_ini_path | PHP_INI_SYSTEM |
highlight.bg | "#FFFFFF" | PHP_INI_ALL | Removido no PHP 6.0.0.
highlight.comment | "#FF8000" | PHP_INI_ALL |
highlight.default | "#0000BB" | PHP_INI_ALL |
highlight.html | "#000000" | PHP_INI_ALL |
highlight.keyword | "#007700" | PHP_INI_ALL |
highlight.string | "#DD0000" | PHP_INI_ALL |
html_errors | "1" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP <= 4.2.3. Disponível desde o PHP 4.0.2.
htscanner.config_file | ".htaccess" | PHP_INI_SYSTEM |
htscanner.default_docroot | "/" | PHP_INI_SYSTEM |
htscanner.default_ttl | "300" | PHP_INI_SYSTEM | Disponível desde o htscanner 0.6.0.
htscanner.stop_on_error | "0" | PHP_INI_SYSTEM | Disponível desde o htscanner 0.7.0.
http.allowed_methods | "" | PHP_INI_ALL | Disponível desde o pecl_http 0.4.0. Removido no pecl_http 1.0.0.
http.allowed_methods_log | "" | PHP_INI_ALL | Disponível desde o pecl_http 0.12.0. Removido no pecl_http 1.0.0.
http.cache_log | "" | PHP_INI_ALL | Disponível desde o pecl_http 0.8.0. Removido no pecl_http 1.0.0.
http.composite_log | "" | PHP_INI_ALL | Disponível desde o pecl_http 0.12.0. Removido no pecl_http 1.0.0.
http.etag.mode | "MD5" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.etag_mode | "MD5" | PHP_INI_ALL | Disponível desde o pecl_http 0.12.0. Removido no pecl_http 1.0.0.
http.force_exit | "1" | PHP_INI_ALL | Disponível desde o pecl_http 0.18.0.
http.log.allowed_methods | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.log.cache | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.log.composite | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.log.not_found | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.log.redirect | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.ob_deflate_auto | "0" | PHP_INI_PERDIR | Disponível desde o pecl_http 0.21.0. Removido no pecl_http 1.0.0.
http.ob_deflate_flags | "0" | PHP_INI_ALL | Disponível desde o pecl_http 0.21.0. Removido no pecl_http 1.0.0.
http.ob_inflate_auto | "0" | PHP_INI_PERDIR | Disponível desde o pecl_http 0.21.0. Removido no pecl_http 1.0.0.
http.ob_inflate_flags | "0" | PHP_INI_ALL | Disponível desde o pecl_http 0.21.0. Removido no pecl_http 1.0.0.
http.only_exceptions | "0" | PHP_INI_ALL | Disponível desde o pecl_http 0.11.0.
http.persistent.handles.ident | "GLOBAL" | PHP_INI_ALL | Disponível desde o pecl_http 1.5.0.
http.persistent.handles.limit | "-1" | PHP_INI_SYSTEM | Disponível desde o pecl_http 1.5.0.
http.redirect_log | "" | PHP_INI_ALL | Disponível desde o pecl_http 0.12.0. Removido no pecl_http 1.0.0.
http.request.datashare.connect | "0" | PHP_INI_SYSTEM | Disponível desde o pecl_http 1.3.0.
http.request.datashare.cookie | "0" | PHP_INI_SYSTEM | Disponível desde o pecl_http 1.3.0.
http.request.datashare.dns | "1" | PHP_INI_SYSTEM | Disponível desde o pecl_http 1.3.0.
http.request.datashare.ssl | "0" | PHP_INI_SYSTEM | Disponível desde o pecl_http 1.3.0.
http.request.methods.allowed | "" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.request.methods.custom | "" | PHP_INI_PERDIR | Disponível desde o pecl_http 1.0.0.
http.send.deflate.start_auto | "0" | PHP_INI_PERDIR | Disponível desde o pecl_http 1.0.0.
http.send.deflate.start_flags | "0" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.send.inflate.start_auto | "0" | PHP_INI_PERDIR | Disponível desde o pecl_http 1.0.0.
http.send.inflate.start_flags | "0" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
http.send.not_found_404 | "1" | PHP_INI_ALL | Disponível desde o pecl_http 1.0.0.
hyerwave.allow_persistent | "0" | PHP_INI_SYSTEM | Removido no PHP 4.3.2.
hyperwave.allow_persistent | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.2. Removed in PHP 5.0.0.
hyperwave.default_port | "418" | PHP_INI_ALL | Removido no PHP 5.0.0.
ibase.allow_persistent | "1" | PHP_INI_SYSTEM |
ibase.dateformat | "%Y-%m-%d" | PHP_INI_ALL |
ibase.default_charset | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
ibase.default_db | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
ibase.default_password | NULL | PHP_INI_ALL |
ibase.default_user | NULL | PHP_INI_ALL |
ibase.max_links | "-1" | PHP_INI_SYSTEM |
ibase.max_persistent | "-1" | PHP_INI_SYSTEM |
ibase.timeformat | "%H:%M:%S" | PHP_INI_ALL |
ibase.timestampformat | "%Y-%m-%d %H:%M:%S" | PHP_INI_ALL |
ibm_db2.binmode | "1" | PHP_INI_ALL |
ibm_db2.i5_allow_commit | "0" | PHP_INI_SYSTEM | Disponível desde o ibm_db2 1.4.9.
ibm_db2.i5_dbcs_alloc | "0" | PHP_INI_SYSTEM | Disponível desde o ibm_db2 1.5.0.
ibm_db2.instance_name | NULL | PHP_INI_SYSTEM | Disponível desde o ibm_db2 1.0.2.
iconv.input_encoding | "ISO-8859-1" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
iconv.internal_encoding | "ISO-8859-1" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
iconv.output_encoding | "ISO-8859-1" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
ifx.allow_persistent | "1" | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.blobinfile | "1" | PHP_INI_ALL | Removido no PHP 5.2.1.
ifx.byteasvarchar | "0" | PHP_INI_ALL | Removido no PHP 5.2.1.
ifx.charasvarchar | "0" | PHP_INI_ALL | Removido no PHP 5.2.1.
ifx.default_host | NULL | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.default_password | NULL | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.default_user | NULL | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.max_links | "-1" | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.max_persistent | "-1" | PHP_INI_SYSTEM | Removido no PHP 5.2.1.
ifx.nullformat | "0" | PHP_INI_ALL | Removido no PHP 5.2.1.
ifx.textasvarchar | "0" | PHP_INI_ALL | Removido no PHP 5.2.1.
ignore_repeated_errors | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
ignore_repeated_source | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
ignore_user_abort | "0" | PHP_INI_ALL |
imlib2.font_cache_max_size | "524288" | PHP_INI_ALL |
imlib2.font_path | "/usr/share/php/fonts/" | PHP_INI_ALL |
implicit_flush | "0" | PHP_INI_ALL | PHP_INI_PERDIR no PHP <= 4.2.3.
include_path | ".;/path/to/php/pear" | PHP_INI_ALL |
ingres.allow_persistent | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.array_index_start | "1" | PHP_INI_ALL | Disponível desde o ingres 1.4.0.
ingres.blob_segment_length | "4096" | PHP_INI_ALL | Disponível desde o ingres 1.2.0.
ingres.cursor_mode | "0" | PHP_INI_ALL | Disponível desde o ingres 1.1.
ingres.default_database | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.default_password | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.default_user | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.max_links | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.max_persistent | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
ingres.report_db_warnings | "1" | PHP_INI_ALL | Disponível desde o ingres 1.1.
ingres.timeout | "-1" | PHP_INI_ALL | Disponível desde o ingres 1.4.0.
ingres.trace_connect | "0" | PHP_INI_ALL | Disponível desde o ingres 1.2.1.
ircg.control_user | "nobody" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.1.0.
ircg.keep_alive_interval | "60" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.1.0.
ircg.max_format_message_sets | "12" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.1.0.
ircg.shared_mem_size | "6000000" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.1.0.
ircg.work_dir | "/tmp/ircg" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.1.0.
last_modified | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
ldap.base_dn | NULL | PHP_INI_ALL | Removido no PHP 4.2.0.
ldap.max_links | "-1" | PHP_INI_SYSTEM |
log.dbm_dir | "" | PHP_INI_ALL | Removido no PHP 4.0.1.
log_errors | "0" | PHP_INI_ALL |
log_errors_max_len | "1024" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
magic_quotes_gpc | "1" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3. Removido no PHP 6.0.0.
magic_quotes_runtime | "0" | PHP_INI_ALL | Removido no PHP 6.0.0.
magic_quotes_sybase | "0" | PHP_INI_ALL | Removido no PHP 6.0.0.
mail.force_extra_parameters | NULL | php.ini somente | Disponível desde o PHP 5.0.0.
mailparse.def_charset | "us-ascii" | PHP_INI_ALL | Disponível desde o PHP 4.1.0. Removido no PHP 4.2.0.
maxdb.default_db | NULL | PHP_INI_ALL |
maxdb.default_host | NULL | PHP_INI_ALL |
maxdb.default_pw | NULL | PHP_INI_ALL |
maxdb.default_user | NULL | PHP_INI_ALL |
maxdb.long_readlen | "200" | PHP_INI_ALL |
max_execution_time | "30" | PHP_INI_ALL |
max_input_nesting_level | "64" | PHP_INI_PERDIR | Disponível desde o PHP 4.4.8. Removido no PHP 5.0.0.
max_input_time | "-1" | PHP_INI_PERDIR | Disponível desde o PHP 4.3.0.
mbstring.detect_order | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.6.
mbstring.encoding_translation | "0" | PHP_INI_PERDIR | Disponível desde o PHP 4.3.0.
mbstring.func_overload | "0" | PHP_INI_PERDIR | PHP_INI_SYSTEM no PHP <= 4.2.3. Disponível desde o PHP 4.2.0.
mbstring.http_input | "pass" | PHP_INI_ALL | Disponível desde o PHP 4.0.6.
mbstring.http_output | "pass" | PHP_INI_ALL | Disponível desde o PHP 4.0.6.
mbstring.internal_encoding | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.6.
mbstring.language | "neutral" | PHP_INI_PERDIR | Disponível desde o PHP 4.3.0.
mbstring.script_encoding | NULL | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
mbstring.strict_detection | "0" | PHP_INI_ALL | Disponível desde o PHP 5.1.2.
mbstring.substitute_character | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.6.
mcrypt.algorithms_dir | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2.
mcrypt.modes_dir | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2.
memcache.allow_failover | "1" | PHP_INI_ALL | Disponível desde o memcache 2.0.2.
memcache.chunk_size | "8192" | PHP_INI_ALL | Disponível desde o memcache 2.0.2.
memcache.default_port | "11211" | PHP_INI_ALL | Disponível desde o memcache 2.0.2.
memcache.hash_function | "crc32" | PHP_INI_ALL | Disponível desde o memcache 2.2.0.
memcache.hash_strategy | "standard" | PHP_INI_ALL | Disponível desde o memcache 2.2.0.
memcache.max_failover_attempts | "20" | PHP_INI_ALL | Disponível desde o memcache 2.1.0.
memory_limit | "128M" | PHP_INI_ALL |
mime_magic.debug | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
mime_magic.magicfile | "/path/to/php/magic.mime" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0.
msql.allow_persistent | "1" | PHP_INI_ALL |
msql.max_links | "-1" | PHP_INI_ALL |
msql.max_persistent | "-1" | PHP_INI_ALL |
mssql.allow_persistent | "1" | PHP_INI_SYSTEM |
mssql.batchsize | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
mssql.charset | "" | PHP_INI_ALL | Disponível desde o PHP 5.1.2.
mssql.compatability_mode | "0" | PHP_INI_ALL |
mssql.connect_timeout | "5" | PHP_INI_ALL |
mssql.datetimeconvert | "1" | PHP_INI_ALL | Disponível desde o PHP 4.2.0.
mssql.max_links | "-1" | PHP_INI_SYSTEM |
mssql.max_persistent | "-1" | PHP_INI_SYSTEM |
mssql.max_procs | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
mssql.min_error_severity | "10" | PHP_INI_ALL |
mssql.min_message_severity | "10" | PHP_INI_ALL |
mssql.secure_connection | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0.
mssql.textlimit | "-1" | PHP_INI_ALL |
mssql.textsize | "-1" | PHP_INI_ALL |
mssql.timeout | "60" | PHP_INI_ALL | Disponível desde o PHP 4.1.0.
mysql.allow_local_infile | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 6.0.0.
mysql.allow_persistent | "1" | PHP_INI_SYSTEM |
mysql.cache_size | "2000" | PHP_INI_SYSTEM | Disponível desde o PHP 6.0.0.
mysql.connect_timeout | "60" | PHP_INI_ALL | PHP_INI_SYSTEM no PHP <= 4.3.2. Disponível desde o PHP 4.3.0.
mysql.default_host | NULL | PHP_INI_ALL |
mysql.default_password | NULL | PHP_INI_ALL |
mysql.default_port | NULL | PHP_INI_ALL |
mysql.default_socket | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.1.
mysql.default_user | NULL | PHP_INI_ALL |
mysql.max_links | "-1" | PHP_INI_SYSTEM |
mysql.max_persistent | "-1" | PHP_INI_SYSTEM |
mysql.trace_mode | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
mysqli.allow_local_infile | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 6.0.0.
mysqli.cache_size | "2000" | PHP_INI_SYSTEM | Disponível desde o PHP 6.0.0.
mysqli.default_host | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_port | "3306" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_pw | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_socket | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.default_user | NULL | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
mysqli.max_links | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
mysqli.reconnect | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
mysqlnd.collect_statistics | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 6.0.0.
namazu.debugmode | "0" | PHP_INI_ALL |
namazu.lang | NULL | PHP_INI_ALL |
namazu.loggingmode | "0" | PHP_INI_ALL |
namazu.sortmethod | NULL | PHP_INI_ALL |
namazu.sortorder | NULL | PHP_INI_ALL |
nsapi.read_timeout | "60" | PHP_INI_ALL | Disponível desde o PHP 4.3.3.
oci8.default_prefetch | "10" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.max_persistent | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.old_oci_close_semantics | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.persistent_timeout | "-1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.ping_interval | "60" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.privileged_connect | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
oci8.statement_cache_size | "20" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.2.
odbc.allow_persistent | "1" | PHP_INI_SYSTEM |
odbc.check_persistent | "1" | PHP_INI_SYSTEM |
odbc.defaultbinmode | "1" | PHP_INI_ALL |
odbc.defaultlrl | "4096" | PHP_INI_ALL |
odbc.default_db | NULL | PHP_INI_ALL |
odbc.default_pw | NULL | PHP_INI_ALL |
odbc.default_user | NULL | PHP_INI_ALL |
odbc.max_links | "-1" | PHP_INI_SYSTEM |
odbc.max_persistent | "-1" | PHP_INI_SYSTEM |
odbtp.datetime_format | "object" | PHP_INI_ALL |
odbtp.detach_default_queries | "0" | PHP_INI_ALL |
odbtp.guid_format | "string" | PHP_INI_ALL | Disponível desde o odbtp 1.1.3.
odbtp.interface_file | "/usr/local/share/odbtp.conf" | PHP_INI_ALL |
odbtp.truncation_errors | "1" | PHP_INI_ALL |
opendirectory.default_separator | "/" | PHP_INI_ALL | Removido no opendirectory 0.2.2.
opendirectory.max_refs | "-1" | PHP_INI_ALL |
opendirectory.separator | "/" | PHP_INI_ALL | Disponível desde o opendirectory 0.2.2.
open_basedir | NULL | PHP_INI_ALL | PHP_INI_SYSTEM no PHP < 6.
oracle.allow_persistent | "-1" | PHP_INI_ALL | Removido no PHP 5.1.0.
oracle.max_links | "-1" | PHP_INI_ALL | Removido no PHP 5.1.0.
oracle.max_persistent | "-1" | PHP_INI_ALL | Removido no PHP 5.1.0.
output_buffering | "0" | PHP_INI_PERDIR |
output_handler | NULL | PHP_INI_PERDIR | Disponível desde o PHP 4.0.4.
pam.servicename | "php" | PHP_INI_ALL |
pcre.backtrack_limit | "100000" | PHP_INI_ALL | Disponível desde o PHP 5.2.0.
pcre.recursion_limit | "100000" | PHP_INI_ALL | Disponível desde o PHP 5.2.0.
pdo_odbc.connection_pooling | "strict" | PHP_INI_ALL | Disponível desde o PHP 5.1.0.
pdo_odbc.db2_instance_name | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.1. Removido no PHP 6.0.0.
pfpro.defaulthost | "test-payflow.verisign.com" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.defaultport | "443" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.defaulttimeout | "30" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.proxyaddress | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.proxylogon | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.proxypassword | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pfpro.proxyport | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 5.1.0.
pgsql.allow_persistent | "1" | PHP_INI_SYSTEM |
pgsql.auto_reset_persistent | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0.
pgsql.ignore_notice | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
pgsql.log_notice | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
pgsql.max_links | "-1" | PHP_INI_SYSTEM |
pgsql.max_persistent | "-1" | PHP_INI_SYSTEM |
phar.extract_list | "" | PHP_INI_ALL | Disponível desde o phar 1.1.0.
phar.readonly | "1" | PHP_INI_ALL |
phar.require_hash | "1" | PHP_INI_ALL |
post_max_size | "8M" | PHP_INI_PERDIR | PHP_INI_SYSTEM no PHP <= 4.2.3. Disponível desde o PHP 4.0.3.
precision | "14" | PHP_INI_ALL |
printer.default_printer | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.6. Removido no PHP 4.1.1.
python.append_path | "" | PHP_INI_ALL |
python.prepend_path | "." | PHP_INI_ALL |
realpath_cache_size | "16K" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.0.
realpath_cache_ttl | "120" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.0.
register_argc_argv | "1" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
register_globals | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 5.3.0. Removido no PHP 6.0.0.
register_long_arrays | "1" | PHP_INI_PERDIR | Disponível desde o PHP 5.0.0. Removido no PHP 6.0.0.
report_memleaks | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
report_zend_debug | "1" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
runkit.internal_override | "0" | PHP_INI_SYSTEM |
runkit.superglobal | "" | PHP_INI_PERDIR |
safe_mode | "0" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_allowed_env_vars | "PHP_" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_exec_dir | "" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
safe_mode_gid | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.1.0. Removido no PHP 6.0.0.
safe_mode_include_dir | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 4.1.0. Removido no PHP 6.0.0.
safe_mode_protected_env_vars | "LD_LIBRARY_PATH" | PHP_INI_SYSTEM | Removido no PHP 6.0.0.
sendmail_from | NULL | PHP_INI_ALL |
sendmail_path | "/usr/sbin/sendmail -t -i" | PHP_INI_SYSTEM |
serialize_precision | "100" | PHP_INI_ALL | Disponível desde o PHP 4.3.2.
session.auto_start | "0" | PHP_INI_ALL |
session.bug_compat_42 | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0. Removido no PHP 6.0.0.
session.bug_compat_warn | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0. Removido no PHP 6.0.0.
session.cache_expire | "180" | PHP_INI_ALL |
session.cache_limiter | "nocache" | PHP_INI_ALL |
session.cookie_domain | "" | PHP_INI_ALL |
session.cookie_httponly | "" | PHP_INI_ALL |
session.cookie_lifetime | NULL | PHP_INI_ALL | Disponível desde o PHP 5.2.0
session.cookie_path | "/" | PHP_INI_ALL |
session.cookie_secure | "" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
session.entropy_file | "" | PHP_INI_ALL |
session.entropy_length | "0" | PHP_INI_ALL |
session.gc_dividend | "100" | PHP_INI_ALL | Disponível desde o PHP 4.3.2. Removido no PHP 4.3.2.
session.gc_divisor | "100" | PHP_INI_ALL | Disponível desde o PHP 4.3.2.
session.gc_maxlifetime | "1440" | PHP_INI_ALL |
session.gc_probability | "1" | PHP_INI_ALL |
session.hash_bits_per_character | "4" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
session.hash_function | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
session.name | "PHPSESSID" | PHP_INI_ALL |
session.referer_check | "" | PHP_INI_ALL |
session.save_handler | "files" | PHP_INI_ALL |
session.save_path | "" | PHP_INI_ALL |
session.serialize_handler | "php" | PHP_INI_ALL |
session.use_cookies | "1" | PHP_INI_ALL |
session.use_only_cookies | "1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
session.use_trans_sid | "0" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.2.3. PHP_INI_PERDIR no PHP < 5. Disponível desde o PHP 4.0.3.
session_pgsql.create_table | "1" | PHP_INI_SYSTEM |
session_pgsql.db | "host=localhost dbname=php_session user=nobody" | PHP_INI_SYSTEM |
session_pgsql.disable | "0" | PHP_INI_SYSTEM |
session_pgsql.failover_mode | "0" | PHP_INI_SYSTEM |
session_pgsql.gc_interval | "3600" | PHP_INI_SYSTEM |
session_pgsql.keep_expired | "0" | PHP_INI_SYSTEM |
session_pgsql.sem_file_name | "/tmp/php_session_pgsql" | PHP_INI_SYSTEM |
session_pgsql.serializable | "0" | PHP_INI_SYSTEM |
session_pgsql.short_circuit | "0" | PHP_INI_SYSTEM |
session_pgsql.use_app_vars | "0" | PHP_INI_SYSTEM |
session_pgsql.vacuum_interval | "21600" | PHP_INI_SYSTEM |
short_open_tag | "1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.0.0. PHP_INI_PERDIR no PHP < 5.3.0
simple_cvs.authMethod | "0" | PHP_INI_ALL |
simple_cvs.compressionLevel | "0" | PHP_INI_ALL |
simple_cvs.cvsRoot | "0" | PHP_INI_ALL |
simple_cvs.host | "0" | PHP_INI_ALL |
simple_cvs.moduleName | "0" | PHP_INI_ALL |
simple_cvs.userName | "0" | PHP_INI_ALL |
simple_cvs.workingDir | "0" | PHP_INI_ALL |
SMTP | "localhost" | PHP_INI_ALL |
smtp_port | "25" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
soap.wsdl_cache | "1" | PHP_INI_ALL | Disponível desde o PHP 5.1.5.
soap.wsdl_cache_dir | "/tmp" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
soap.wsdl_cache_enabled | "1" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
soap.wsdl_cache_limit | "5" | PHP_INI_ALL | Disponível desde o PHP 5.1.5.
soap.wsdl_cache_ttl | "86400" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
sql.safe_mode | "0" | PHP_INI_SYSTEM |
sqlite.assoc_case | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0.
sqlite.iso8859.locale | "1" | PHP_INI_ALL | Disponível desde o PHP 6.0.0.
sybase.allow_persistent | "1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.0.2. PHP_INI_SYSTEM no PHP <= 4.0.3.
sybase.hostname | NULL | PHP_INI_ALL | Removido no PHP 4.0.2.
sybase.interface_file | "" | PHP_INI_ALL |
sybase.login_timeout | "0" | PHP_INI_ALL | Removido no PHP 4.0.2.
sybase.max_links | "-1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.0.2. PHP_INI_SYSTEM no PHP <= 4.0.3.
sybase.max_persistent | "-1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.0.2. PHP_INI_SYSTEM no PHP <= 4.0.3.
sybase.min_client_severity | "10" | PHP_INI_ALL | Removed in PHP 4.0.2.
sybase.min_error_severity | "10" | PHP_INI_ALL |
sybase.min_message_severity | "10" | PHP_INI_ALL |
sybase.min_server_severity | "10" | PHP_INI_ALL | Removido no PHP 4.0.2.
sybase.timeout | "0" | PHP_INI_ALL | Removido no PHP 4.0.2.
sybct.allow_persistent | "1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.deadlock_retry_count | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
sybct.hostname | NULL | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.login_timeout | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.0.2.
sybct.max_links | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.max_persistent | "-1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 4.0.2. Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.min_client_severity | "10" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.min_server_severity | "10" | PHP_INI_ALL | Disponível desde o PHP 4.0.2. Removido no PHP 4.0.3.
sybct.packet_size | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.5.
sybct.timeout | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.2.
sysvshm.init_mem | "10000" | PHP_INI_ALL |
tidy.clean_output | "0" | PHP_INI_USER | PHP_INI_PERDIR no PHP 5. Disponível desde o PHP 5.0.0.
tidy.default_config | "" | PHP_INI_SYSTEM | Disponível desde o PHP 5.0.0.
track_errors | "0" | PHP_INI_ALL |
track_vars | "1" | PHP_INI_ALL | Removido no PHP 4.0.3.
unserialize_callback_func | NULL | PHP_INI_ALL | Disponível desde o PHP 4.2.0.
uploadprogress.file.filename_template | "/tmp/upt_%s.txt" | PHP_INI_ALL |
upload_max_filesize | "2M" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
upload_tmp_dir | NULL | PHP_INI_SYSTEM |
url_rewriter.tags | "a=href,area=href,frame=src,form=,fieldset=" | PHP_INI_ALL | Disponível desde o PHP 4.0.4.
user_agent | NULL | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
user_dir | NULL | PHP_INI_SYSTEM |
user_ini.cache_ttl | "300" | PHP_INI_SYSTEM | Disponível desde o PHP 5.3.0.
user_ini.filename | ".user.ini" | PHP_INI_SYSTEM | Disponível desde o PHP 5.3.0.
valkyrie.auto_validate | "0" | PHP_INI_ALL |
valkyrie.config_path | NULL | PHP_INI_ALL |
variables_order | "EGPCS" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 5.0.5.
request_order | "" | PHP_INI_SYSTEM|PHP_INI_PERDIR | Adicionado no PHP 5.3.0
velocis.max_links | "-1" | PHP_INI_ALL | Removido no PHP 4.2.0.
vld.active | "0" | PHP_INI_SYSTEM |
vld.execute | "1" | PHP_INI_SYSTEM | Disponível desde o vld 0.8.0.
vld.skip_append | "0" | PHP_INI_SYSTEM | Disponível desde o vld 0.8.0.
vld.skip_prepend | "0" | PHP_INI_SYSTEM | Disponível desde o vld 0.8.0.
xbithack | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
xdebug.auto_profile | "0" | PHP_INI_ALL | Removido no Xdebug 2.0.0.
xdebug.auto_profile_mode | "0" | PHP_INI_ALL | Removido no Xdebug 2.0.0.
xdebug.auto_trace | "0" | PHP_INI_ALL |
xdebug.collect_includes | "1" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.collect_params | "0" | PHP_INI_ALL |
xdebug.collect_return | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.collect_vars | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.default_enable | "1" | PHP_INI_ALL | PHP_INI_SYSTEM no Xdebug 1.
xdebug.dump.COOKIE | NULL | PHP_INI_ALL |
xdebug.dump.ENV | NULL | PHP_INI_ALL |
xdebug.dump.FILES | NULL | PHP_INI_ALL |
xdebug.dump.GET | NULL | PHP_INI_ALL |
xdebug.dump.POST | NULL | PHP_INI_ALL |
xdebug.dump.REQUEST | NULL | PHP_INI_ALL |
xdebug.dump.SERVER | NULL | PHP_INI_ALL |
xdebug.dump.SESSION | NULL | PHP_INI_ALL |
xdebug.dump_globals | "1" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.dump_once | "1" | PHP_INI_ALL |
xdebug.dump_undefined | "0" | PHP_INI_ALL |
xdebug.extended_info | "1" | PHP_INI_SYSTEM | Disponível desde o Xdebug 2.0.0.
xdebug.idekey | "" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.manual_url | "http://www.php.net" | PHP_INI_ALL |
xdebug.max_nesting_level | "100" | PHP_INI_ALL |
xdebug.output_dir | "/tmp" | PHP_INI_PERDIR | PHP_INI_SYSTEM no Xdebug <= 1.2.0. Removido no Xdebug 2.0.0.
xdebug.profiler_aggregate | "0" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.profiler_append | "0" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.profiler_enable | "0" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.profiler_enable_trigger | "0" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.profiler_output_dir | "/tmp" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.profiler_output_name | "cachegrind.out.%p" | PHP_INI_PERDIR | Disponível desde o Xdebug 2.0.0.
xdebug.remote_autostart | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.remote_enable | "0" | PHP_INI_PERDIR |
xdebug.remote_handler | "dbgp" | PHP_INI_ALL |
xdebug.remote_host | "localhost" | PHP_INI_ALL |
xdebug.remote_log | "" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.remote_mode | "req" | PHP_INI_ALL |
xdebug.remote_port | "9000" | PHP_INI_ALL |
xdebug.show_exception_trace | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.show_local_vars | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.show_mem_delta | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.trace_format | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.trace_options | "0" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.trace_output_dir | "/tmp" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.trace_output_name | "trace.%c" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.var_display_max_children | "128" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.var_display_max_data | "502" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xdebug.var_display_max_depth | "3" | PHP_INI_ALL | Disponível desde o Xdebug 2.0.0.
xmlrpc_errors | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.1.0.
xmlrpc_error_number | "0" | PHP_INI_ALL | Disponível desde o PHP 4.1.0.
xmms.path | "/usr/bin/xmms" | PHP_INI_ALL |
xmms.session | "0" | PHP_INI_ALL |
y2k_compliance | "1" | PHP_INI_ALL |
yami.response.timeout | "5" | PHP_INI_ALL | Disponível desde o yami 1.0.1.
yaz.keepalive | "120" | PHP_INI_ALL |
yaz.log_file | NULL | PHP_INI_ALL | Disponível desde o PHP 4.3.0. Removido no PHP 5.0.0.
yaz.log_mask | NULL | PHP_INI_ALL | Disponível desde o yaz 1.0.3.
yaz.max_links | "100" | PHP_INI_ALL | Disponível desde o PHP 4.3.0. Removido no PHP 5.0.0.
zend.ze1_compatibility_mode | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.3.0.
zend_extension | NULL | Apenas php.ini |
zend_extension_debug | NULL | Apenas php.ini |
zend_extension_debug_ts | NULL | Apenas php.ini |
zend_extension_ts | NULL | Apenas php.ini |
zlib.output_compression | "0" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
zlib.output_compression_level | "-1" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.
zlib.output_handler | "" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.

Diretivas do arquivo php.ini
Lista das seções do php.ini
Diretivas do arquivo php.ini


Lista das seções do php.ini

Esta lista inclui as seções do php.ini que você pode definir para configurar o PHP numa base por servidor ou por caminho. Estas seções são opcionais.

Estas seções não afetam diretamente o PHP. Elas são usadas para agrupar outras diretivas do php.ini e para faze-las ajir sobre um servidor em particular ou um caminho em particular.

Sections
Name | Changeable | Changelog
[HOST=] | PHP_INI_SYSTEM | Added in PHP 5.3.0.
[PATH=] | PHP_INI_SYSTEM | Added in PHP 5.3.0.

Breve descrição das diretivas de configuração.

[HOST=<host>]

This section allows you to define a set of php.ini directives that will take effect on the named host.

Exemplo #1 Activate full on-screen error reporting for dev. domain

[HOST=dev.site.com]
error_reporting = E_ALL
display_errors = On

[PATH=<path>]

This section allows you to define a set of php.ini directives that will take effect when a script runs from the named path.

Exemplo #2 Add security script for protected areas

[PATH=/home/site/public/secure]
auto_prepend_file=security.php

Lista de diretivas do arquivo php.ini
Descrição das diretivas do principais do arquivo php.ini
Diretivas do arquivo php.ini


Descrição das diretivas do principais do arquivo php.ini

Essa lista inclue as diretivas principais do arquivo php.ini que você pode modificar para configurar o PHP. Diretivas manipuladas por extensões são listadas e detalhadas nas páginas de documentação de suas respectivas extensões; Informação sobre diretivas de sessão, por exemplo, podem ser encontradas nas páginas de sessão.

Opções do servidor HTTP

Opções do servidor HTTP
Nome | Valor padrão | Alterável | Changelog
async_send | "0" | PHP_INI_ALL |

Opções da Linguagem

Opções e Configurações Mistas da Linguagem
Name | Valor padrão | Alterável | Changelog
short_open_tag | "1" | PHP_INI_ALL | PHP_INI_ALL no PHP <= 4.0.0. PHP_INI_PERDIR no PHP < 5.3.0
asp_tags | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.0.0.
precision | "14" | PHP_INI_ALL |
y2k_compliance | "1" | PHP_INI_ALL |
allow_call_time_pass_reference | "1" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.0.0.
expose_php | "1" | php.ini only |
zend.ze1_compatibility_mode | "0" | PHP_INI_ALL | Disponível desde o PHP 5.0.0. Removido no PHP 5.3.0

Breve descrição das diretivas de configuração.

short_open_tag boolean

Indica quando a forma curta (<? ?>) da tag de abertura do PHP deve ser permitida. Se você quer usar o PHP em combinação com o XML, você pode desabilitar esta opção para poder usar em <?xml ?>. Entretanto, você pode exbila com o PHP, por exemplo: <?php echo '<?xml version="1.0"?>'; ?>. Também, se desabilitado, você deve usar a forma longa da tag de abertura do PHP (<?php ?>).

Nota:

Esta diretiva também afeta o atalho <?=, o qual é identico a <? echo. O uso deste atalho requer que short_open_tag esteja on.

asp_tags boolean
Habilita o uso de tag no estilo ASP <% %> além das tags comuns <?php ?>. Isso inclui o atalho para impressão do valor de variável <%= $value %>. Para mais informação, veja Imprimindo HTML.
precision integer
O número de digitos de significância mostrado em números decimais (ponto flutuante).
y2k_compliance boolean
Reforça compatibilidade com ano 2000 (causará problemas com navegadores não compatíveis)
allow_call_time_pass_reference boolean

Se deve lançar um aviso quando argumentos são passados por referência durante a chamada de uma função. Esse método é depreciado e provavelmente deixará de ser suportado em versões futuras do PHP/Zend. O método encorajado para especificar quais argumentos devem ser passados por referência é na declaração da função. Você é encorajado a tentar deligar essa opção e assegurar-se que seus script funcionam corretamente para garantir que eles funcionarão em versões futuras da linguagem (você receberá um aviso cada vez que você usar essa funcionalidade).

Passar argumentos por referência durante a chamade de uma função foi depreciado por razões de clareza de código. A função pode modificar seus argumentos de maneira não documentada se não for declarado que o argumento foi passado por referência. Para previnir efeitos-colaterais é melhor especificar quais argumentos são passados por referência apenas na declaração da função.

Veja também Entendendo Referências.

expose_php boolean

Decide se o PHP deve ou não expor o fato de que está instalado no servidor (ex.: adicionando sua assinatura ao cabeçalho do servidor Web). Não é nenhuma falha de segurança, mas torna possível determinar se você usar o PHP no seu servidor ou não.

zend.ze1_compatibility_mode boolean

Habilita modo de compatibilidade com o Engine do Zend 1 (PHP 4). Isso afeta a clonagem, conversão (objetos sem propriedades são convertidos para 0), e comparação de objetos. Desse modo, objetos são passados, por padrão, por valor ao invés de referência.

Veja também a seção entitulada Migrando do PHP 4 para o PHP 5.

Limites de Recursos

Limites de Recursos
Name | Valor padrão | Alterável | Changelog
memory_limit | "128M" | PHP_INI_ALL | "8M" antes do PHP 5.2.0, "16M" no PHP 5.2.0

Breve descrição das diretivas de configuração.

memory_limit integer

Essa diretiva configura a quantidade máxima de memória (bytes) que o script pode alocar. Isso ajuda a previnir que scripts mal feitos consumam toda a memória disponível em um servidor. Perceba que você deve configurá-la para -1 se você não quiser impor um limite de memória.

Antes do PHP 5.1.2, para poder usar essa diretiva era preciso habilitá-la durante a compilação, usando -enable-memory-limit como parâmetro para o script de configuração. Isso também era necessário para que as funções memory_get_usage() e memory_get_peak_usage() fossem definidas.

Quando um integer é utilizado, o valor é medido em bytes. A resumida notação, como descrito neste FAQ, pode também ser usada.

Veja também: max_execution_time.

Ajustes de Performance

Ajustes de Performance
Nome | Valor padrão | Alterável | Changelog
realpath_cache_size | "16K" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.0.
realpath_cache_ttl | "120" | PHP_INI_SYSTEM | Disponível desde o PHP 5.1.0.

Breve descrição das diretivas de configuração.

realpath_cache_size integer

Determina o tamanho do cache de caminho real que será usado pelo PHP. Esse valor deve ser aumentado nos sistema onde o PHP abre muitos arquivos, para refletir a quantidade de operações de arquivos realizadas.

realpath_cache_ttl integer

Duração de tempo (em segundos) para cada informação do cache de caminho para um arquivo ou diretório qualquer. Para sistemas com arquivos que raramente mudam, considere aumentar o valor.

Manuseio de Dados

Opções de Configuração do Manuseio de Dados
Name | Valor padrão | Changeable | Changelog
track_vars | "On" | PHP_INI_?? |
arg_separator.output | "&" | PHP_INI_ALL | Disponível desde o PHP 4.0.5.
arg_separator.input | "&" | PHP_INI_PERDIR | Disponível desde o PHP 4.0.5.
variables_order | "EGPCS" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 5.0.5.
request_order | "" | PHP_INI_SYSTEM|PHP_INI_PERDIR | Disponível desde o PHP 5.3.0
auto_globals_jit | "1" | PHP_INI_PERDIR | Disponível desde o PHP 5.0.0.
register_globals | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
register_argc_argv | "1" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
register_long_arrays | "1" | PHP_INI_PERDIR | Disponível desde o PHP 5.0.0.
post_max_size | "8M" | PHP_INI_PERDIR | PHP_INI_SYSTEM no PHP <= 4.2.3. Disponível desde o PHP 4.0.3.
gpc_order | "GPC" | PHP_INI_ALL |
auto_prepend_file | NULL | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
auto_append_file | NULL | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.
default_mimetype | "text/html" | PHP_INI_ALL |
default_charset | "" | PHP_INI_ALL |
always_populate_raw_post_data | "0" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3. Disponível desde o PHP 4.1.0.
allow_webdav_methods | "0" | PHP_INI_PERDIR |

Breve descrição das diretivas de configuração.

track_vars boolean

Se ativado, então as variáveis de ambiente, GET, POST, Cookie, e Server podem ser encontradas nas arrays associativas globais $_ENV, $_GET, $_POST, $_COOKIE, e $_SERVER.

Note que a partir do PHP 4.0.3, track_vars esta sempre on.

arg_separator.output string

O separador usado nas URLs geradas pelo PHP para separar os argumentos.

arg_separator.input string

List of separator(s) used by PHP to parse input URLs into variables.

Nota:

Every character in this directive is considered as separator!

variables_order string

Sets the order of the EGPCS (Environment, Get, Post, Cookie, and Server) variable parsing. For example, if variables_order is set to "SP" then PHP will create the superglobals $_SERVER and $_POST, but not create $_ENV, $_GET, and $_COOKIE. Setting to "" means no superglobals will be set.

If the deprecated register_globals directive is on (removed as of PHP 6.0.0), then variables_order also configures the order the ENV, GET, POST, COOKIE and SERVER variables are populated in global scope. So for example if variables_order is set to "EGPCS", register_globals is enabled, and both $_GET['action'] and $_POST['action'] are set, then $action will contain the value of $_POST['action'] as P comes after G in our example directive value.

Aviso

In both the CGI and FastCGI SAPIs, $_SERVER is also populated by values from the environment; S is always equivelant to ES regardless of the placement of E elsewhere in this directive.

Nota:

The content and order of $_REQUEST is also affected by this directive.

request_order string

This directive describes the order in which PHP registers GET, POST and Cookie variables into the _REQUEST array. Registration is done from left to right, newer values override older values.

If this directive is not set, variables_order is used for $_REQUEST contents.

auto_globals_jit boolean

When enabled, the SERVER and ENV variables are created when they're first used (Just In Time) instead of when the script starts. If these variables are not used within a script, having this directive on will result in a performance gain.

The PHP directives register_globals, register_long_arrays, and register_argc_argv must be disabled for this directive to have any affect. Since PHP 5.1.3 it is not necessary to have register_argc_argv disabled.

Aviso

Usage of SERVER and ENV variables is checked during the compile time so using them through e.g. variable variables will not cause their initialization.

register_globals boolean

Whether or not to register the EGPCS (Environment, GET, POST, Cookie, Server) variables as global variables.

As of » PHP 4.2.0, this directive defaults to off.

Please read the security chapter on Using register_globals for related information.

Please note that register_globals cannot be set at runtime (ini_set()). Although, you can use .htaccess if your host allows it as described above. An example .htaccess entry: php_flag register_globals off.

Nota:

register_globals is affected by the variables_order directive.

Aviso

Este recurso tornou-se OBSOLETO a partir do PHP 5.3.0 REMOVIDO do PHP 6.0.0. Confiar neste recurso é extremamente não recomendado.

register_argc_argv boolean
Tells PHP whether to declare the argv & argc variables (that would contain the GET information). See also command line. Also, this directive became available in PHP 4.0.0 and was always "on" before that.
register_long_arrays boolean
Tells PHP whether or not to register the deprecated long $HTTP_*_VARS type predefined variables. When On (default), long predefined PHP variables like $HTTP_GET_VARS will be defined. If you're not using them, it's recommended to turn them off, for performance reasons. Instead, use the superglobal arrays, like $_GET. This directive became available in PHP 5.0.0 and was dropped in PHP 6.0.0.
post_max_size integer
Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize. If memory limit is enabled by your configure script, memory_limit also affects file uploading. Generally speaking, memory_limit should be larger than post_max_size. Quando um integer é utilizado, o valor é medido em bytes. A resumida notação, como descrito neste FAQ, pode também ser usada. If the size of post data is greater than post_max_size, the $_POST and $_FILES superglobals are empty. This can be tracked in various ways, e.g. by passing the $_GET variable to the script processing the data, i.e. <form action="edit.php?processed=1">, and then checking if $_GET['processed'] is set.

Nota:

PHP allows shortcuts for bit values, including K (kilo), M (mega) and G (giga). PHP will do the conversions automatically if you use any of these. Be careful not to exceed the 32 bit signed integer limit (if you're using 32bit versions) as it will cause your script to fail.

gpc_order string

Set the order of GET/POST/COOKIE variable parsing. The default setting of this directive is "GPC". Setting this to "GP", for example, will cause PHP to completely ignore cookies and to overwrite any GET method variables with POST-method variables of the same name.

Nota:

This option is not available in PHP 4. Use variables_order instead.

auto_prepend_file string

Specifies the name of a file that is automatically parsed before the main file. The file is included as if it was called with the require() function, so include_path is used.

The special value none disables auto-prepending.

auto_append_file string

Specifies the name of a file that is automatically parsed after the main file. The file is included as if it was called with the require() function, so include_path is used.

The special value none disables auto-appending.

Nota: If the script is terminated with exit(), auto-append will not occur.

default_mimetype string

default_charset string

A partir da versão 4.0.0, PHP sempre envia um tipo de codificação de caracteres no cabeçalho Content-type:. Para desabilitar o envio de um conjunto de caracteres, simplesmente deixe essa diretiva vazia.

always_populate_raw_post_data boolean

Sempre popular o array $HTTP_RAW_POST_DATA contendo os dados raw enviados via POST. Caso contrário, a variável é populada somente com o tipo MIME não reconhecido dos dados. No entanto, o método preferido para acessar dados raw enviados via POSTé php://input. $HTTP_RAW_POST_DATA não está disponível com enctype="multipart/form-data".

allow_webdav_methods boolean

Permite lidar com requisiçõs http WebDAV dentro de scripts (ex.: PROPFIND, PROPPATCH, MOVE, COPY, etc.). Essa diretiva não existe nas versões inferiores à 4.3.2. Se você quiser receber os dados dessas requisições, você tem que ligar always_populate_raw_post_data também.

Veja também: magic_quotes_gpc, magic_quotes_runtime, e magic_quotes_sybase.

Caminhos e Diretórios

Opções de Configurações de Caminhos e Diretórios
Name | Valor padrão | Alterável | Changelog
include_path | ".;/path/to/php/pear" | PHP_INI_ALL |
doc_root | NULL | PHP_INI_SYSTEM |
user_dir | NULL | PHP_INI_SYSTEM |
extension_dir | "/path/to/php" | PHP_INI_SYSTEM |
extension | NULL | php.ini only |
cgi.check_shebang_line | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 5.2.0.
cgi.fix_pathinfo | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0. PHP_INI_ALL antes do PHP 5.2.1.
cgi.force_redirect | "1" | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0. PHP_INI_ALL antes do PHP 5.2.1.
cgi.redirect_status_env | NULL | PHP_INI_SYSTEM | Disponível desde o PHP 4.2.0. PHP_INI_ALL antes do PHP 5.2.1.
fastcgi.impersonate | "0" | PHP_INI_SYSTEM | Disponível desde o PHP 4.3.0. PHP_INI_ALL antes do PHP 5.2.1.
cgi.rfc2616_headers | "0" | PHP_INI_ALL | Disponível desde o PHP 4.3.0.

Breve descrição das diretivas de configuração.

include_path string

Especifica a lista de diretórios onde as funções require(), include(), fopen(), file(), readfile() and file_get_contents() procurem por arquivos. O formato é como a variável de ambiente PATH do sistema: uma lista de diretórios separadas com dois-pontos no Unix e ponto-e-vírgula no Windows.

Exemplo #1 Unix include_path

include_path=".:/php/includes"

Exemplo #2 Windows include_path

include_path=".;c:\php\includes"

Using a . in the include path allows for relative includes as it means the current directory. However, it is more efficient to explicitly use include './file' than having PHP always check the current directory for every include.

doc_root string

PHP's "root directory" on the server. Only used if non-empty. If PHP is configured with safe mode, no files outside this directory are served. If PHP was not compiled with FORCE_REDIRECT, you should set doc_root if you are running PHP as a CGI under any web server (other than IIS). The alternative is to use the cgi.force_redirect configuration below.

user_dir string

The base name of the directory used on a user's home directory for PHP files, for example public_html .

extension_dir string

In what directory PHP should look for dynamically loadable extensions. See also: enable_dl, and dl().

extension string

Which dynamically loadable extensions to load when PHP starts up.

zend_extension string

Absolute path to dynamically loadable Zend extension (for example APD) to load when PHP starts up.

zend_extension_debug string

Variant of zend_extension for extensions compilled with debug info.

zend_extension_debug_ts string

Variant of zend_extension for extensions compilled with debug info and thread safety.

zend_extension_ts string

Variant of zend_extension for extensions compilled with thread safety.

cgi.check_shebang_line boolean

Controls whether CGI PHP checks for line starting with #! (shebang) at the top of the running script. This line might be needed if the script support running both as stand-alone script and via PHP CGI. PHP in CGI mode skips this line and ignores its content if this directive is turned on.

cgi.fix_pathinfo boolean

Provides real PATH_INFO/PATH_TRANSLATED support for CGI. PHP's previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting of zero causes PHP to behave as before. Default is zero. You should fix your scripts to use SCRIPT_FILENAME rather than PATH_TRANSLATED.

cgi.force_redirect boolean

cgi.force_redirect is necessary to provide security running PHP as a CGI under most web servers. Left undefined, PHP turns this on by default. You can turn it off at your own risk.

Nota:

Windows Users: You can safely turn this off for IIS, in fact, you must. To get OmniHTTPD or Xitami to work you must turn it off.

cgi.redirect_status_env string

If cgi.force_redirect is turned on, and you are not running under Apache or Netscape (iPlanet) web servers, you may need to set an environment variable name that PHP will look for to know it is OK to continue execution.

Nota:

Setting this variable may cause security issues, know what you are doing first.

fastcgi.impersonate string

FastCGI no IIS (em SOs baseados no WINNT) suporta a habilidade de fingir tokens de segurança do cliente. Isso permite que o IIS defina o contexto de segurança que a requisição deve rodar. mod_fastcgi no Apache não atualmente não suporta essa característica. (03/17/2002) Configure para 1 se estiver rodando no IIS. O valor padrão é zero.

cgi.rfc2616_headers int

Diz ao PHP qual tipo de cabeçalho de usar quando enviar o código de resposta HTTP. Se o valor for 0, o PHP envia um Status: cabeçalho suportado pelo Apache e outros servidores web. Quando essa opção tiver o valor 1, o PHP enviará um cabeçalho compatível com o » RFC 2616. Deixe essa opção como 0 a não ser que você saiba o que está fazendo.

Envio de Arquivos

Opções de Configuração de Envio de Arquivos
Name | Valor padrão | Changeable | Changelog
file_uploads | "1" | PHP_INI_SYSTEM | PHP_INI_ALL no PHP <= 4.2.3. Disponível desde o PHP 4.0.3.
upload_tmp_dir | NULL | PHP_INI_SYSTEM |
upload_max_filesize | "2M" | PHP_INI_PERDIR | PHP_INI_ALL no PHP <= 4.2.3.

Breve descrição das diretivas de configuração.

file_uploads boolean

Se deve ou não permitir envio de arquivos via HTTP. Veja também as diretivas upload_max_filesize, upload_tmp_dir, e post_max_size.

Quando um integer é utilizado, o valor é medido em bytes. A resumida notação, como descrito neste FAQ, pode também ser usada.
upload_tmp_dir string

O diretório temporário usado para guardar arquivos quando arquivos forem enviados. O usuário do PHP deve ter permissão de escrita nesse diretório. Se não for especificado, o PHP usuará o padrão do sistema.

upload_max_filesize integer

O tamanho máximo de um arquivo enviado.

Quando um integer é utilizado, o valor é medido em bytes. A resumida notação, como descrito neste FAQ, pode também ser usada.

Opções Gerais de SQL

Opções de Configuração Geral de SQL
Name | Valor padrão | Alterável | Changelog
sql.safe_mode | "0" | PHP_INI_SYSTEM |

Breve descrição das diretivas de configuração.

sql.safe_mode boolean

Se ativada, funções de conexão com banco de dados que especificam valores padrão usarão esses valores ao invés dos argumentos fornecidos. Para os valores padrão, veja a documentação das funções de conexão do seu banco de dados.

Lista das seções do php.ini
Categorização/Lista das Extensões
Diretivas do arquivo php.ini


Categorização/Lista das Extensões

Índice

  • Em ordem alfabética
  • Sociedade
  • Estado

Esse apêndice categoriza mais de 150 extensões documentadas no manual do PHP por vários critérios.

Descrição das diretivas do principais do arquivo php.ini
Em ordem alfabética
Apêndices


Em ordem alfabética

  • Apache
  • APC
  • APD
  • Arrays
  • BBCode
  • BC Math
  • bcompiler
  • Bzip2
  • Calendário
  • chdb
  • Classkit
  • Classes/Objetos
  • COM
  • Crack
  • Ctype
  • cURL
  • Cyrus
  • Data/Hora
  • DBA
  • dBase
  • DB++
  • dbx
  • Direct IO
  • Diretórios
  • DOM
  • DOM XML
  • .NET
  • Enchant
  • Manuseamento de Erro
  • Execução de programa
  • Exif
  • Expect
  • FAM
  • FrontBase
  • FDF
  • Fileinfo
  • filePro
  • Filesystem
  • Filter
  • FriBiDi
  • FTP
  • Funções para Manuseamento de Funções
  • GeoIP
  • Gettext
  • GMP
  • GnuPG
  • haru
  • Hash
  • HTTP
  • Hyperwave API
  • Hyperwave
  • Firebird/InterBase
  • IBM DB2
  • iconv
  • ID3
  • Informix
  • IIS
  • GD
  • ImageMagick
  • IMAP
  • inclued
  • Opções/Info do PHP
  • Ingres
  • Inotify
  • intl
  • Java
  • JSON
  • KADM5
  • LDAP
  • libxml
  • LZF
  • Mail
  • Mailparse
  • Math
  • MaxDB
  • Multibyte String
  • Mcrypt
  • MCVE
  • Memcache
  • Mhash
  • Mimetype
  • Ming
  • Misc.
  • mnoGoSearch
  • Mongo
  • mqseries
  • Msession
  • mSQL
  • Mssql
  • MySQL
  • Mysqli
  • Ncurses
  • Gopher
  • Network
  • Newt
  • YP/NIS
  • Lotus Notes
  • NSAPI
  • Object Aggregation
  • OCI8
  • oggvorbis
  • OpenAL
  • OpenSSL
  • Controle de Saída
  • Object overloading
  • Ovrimos SQL
  • Paradox
  • Parsekit
  • PCNTL
  • PCRE
  • PDF
  • PDO
  • PostgreSQL
  • Phar
  • POSIX
  • Printer
  • PS
  • Pspell
  • qtdom
  • Radius
  • Rar
  • Readline
  • Recode
  • POSIX Regex
  • RPM Reader
  • runkit
  • SAM
  • SCA
  • scream
  • SDO
  • SDO-DAS-Relational
  • SDO DAS XML
  • Semaphore
  • Sessões
  • Session PgSQL
  • Memória Compartilhada
  • SimpleXML
  • SNMP
  • SOAP
  • Sockets
  • Sphinx
  • SPL
  • SPL Types
  • SPPLUS
  • SQLite3
  • SQLite
  • SSH2
  • Statistics
  • Streams
  • Strings
  • SVN
  • SWF
  • Swish
  • Sybase
  • TCP
  • Tidy
  • Tokenizer
  • ODBC
  • URLs
  • Manipulação de variável
  • vpopmail
  • W32api
  • WDDX
  • win32ps
  • win32service
  • xattr
  • xdiff
  • XML Parser
  • XMLReader
  • XML-RPC
  • XMLWriter
  • XSL
  • XSLT (PHP4)
  • YAZ
  • Zip
  • Zlib
Categorização/Lista das Extensões
Sociedade
Categorização/Lista das Extensões


Sociedade

Extensões Principais

Essas não são de fato extensões. Eles são parte do núcleo do PHP e não podem ser deixadas de fora do binário do PHP através de opções de compilação.

  • Arrays

  • Classes/Objetos

  • Data/Hora

  • Diretórios

  • Manuseamento de Erro

  • Execução de programa

  • Filesystem

  • Funções para Manuseamento de Funções

  • Opções/Info do PHP

  • Mail

  • Math

  • Misc.

  • Network

  • Controle de Saída

  • POSIX Regex

  • Sessões

  • Streams

  • Strings

  • Tokenizer

  • URLs

  • Manipulação de variável

Extensões Agregadas

Essas extensões são distribuídas com o PHP.

  • Apache

  • BC Math

  • Bzip2

  • Calendário

  • COM

  • Ctype

  • cURL

  • DBA

  • dBase

  • DOM

  • .NET

  • Exif

  • FrontBase

  • FDF

  • FTP

  • Gettext

  • GMP

  • Hash

  • Firebird/InterBase

  • iconv

  • Informix

  • GD

  • IMAP

  • JSON

  • LDAP

  • libxml

  • Multibyte String

  • Mcrypt

  • Mhash

  • Mimetype

  • Ming

  • mSQL

  • Mssql

  • MySQL

  • Mysqli

  • Ncurses

  • NSAPI

  • Object Aggregation

  • OCI8

  • OpenSSL

  • PCNTL

  • PCRE

  • PDO

  • MS SQL Server (PDO)

  • Firebird/Interbase (PDO)

  • MySQL (PDO)

  • Oracle (PDO)

  • ODBC and DB2 (PDO)

  • PostgreSQL (PDO)

  • SQLite (PDO)

  • PostgreSQL

  • POSIX

  • Pspell

  • Readline

  • Recode

  • Semaphore

  • Memória Compartilhada

  • SimpleXML

  • SNMP

  • SOAP

  • Sockets

  • SPL

  • SQLite

  • SVN

  • Sybase

  • Tidy

  • ODBC

  • WDDX

  • XML Parser

  • XMLReader

  • XML-RPC

  • XSL

  • XSLT (PHP4)

  • Zip

  • Zlib

Extensões Externas

Para compilar essas extensões é preciso ter bibliotecas externas.

  • BBCode

  • Bzip2

  • chdb

  • Crack

  • cURL

  • dBase

  • DB++

  • dbx

  • DOM

  • DOM XML

  • Enchant

  • FAM

  • FrontBase

  • FDF

  • Fileinfo

  • FriBiDi

  • GeoIP

  • Gettext

  • GMP

  • haru

  • Hyperwave

  • Hyperwave API

  • Firebird/InterBase

  • IBM DB2

  • Informix

  • ImageMagick

  • IMAP

  • Ingres

  • Java

  • LDAP

  • libxml

  • MaxDB

  • Mcrypt

  • Memcache

  • Mhash

  • Ming

  • mnoGoSearch

  • Msession

  • mSQL

  • Mssql

  • MySQL

  • Mysqli

  • Ncurses

  • Newt

  • OCI8

  • oggvorbis

  • OpenAL

  • OpenSSL

  • Ovrimos SQL

  • Paradox

  • PDF

  • MS SQL Server (PDO)

  • Firebird/Interbase (PDO)

  • IBM (PDO)

  • Informix (PDO)

  • MySQL (PDO)

  • Oracle (PDO)

  • ODBC and DB2 (PDO)

  • PostgreSQL (PDO)

  • PostgreSQL

  • PS

  • Pspell

  • qtdom

  • Radius

  • Rar

  • Readline

  • Recode

  • Session PgSQL

  • SimpleXML

  • SNMP

  • SOAP

  • Sphinx

  • SSH2

  • SWF

  • Swish

  • Sybase

  • Tidy

  • ODBC

  • vpopmail

  • WDDX

  • xattr

  • xdiff

  • XML Parser

  • XMLReader

  • XSL

  • XSLT (PHP4)

  • YAZ

Extensões PECL

Essas extensões são disponível na » PECL. Existem outras extensões PECL, mas elas ainda não são documentadas no manual do PHP.

  • APC

  • APD

  • BBCode

  • bcompiler

  • chdb

  • Classkit

  • Crack

  • Cyrus

  • DB++

  • dbx

  • Direct IO

  • DOM XML

  • Enchant

  • Expect

  • FAM

  • Fileinfo

  • filePro

  • Filter

  • FriBiDi

  • GeoIP

  • GnuPG

  • haru

  • Hash

  • HTTP

  • Hyperwave

  • Hyperwave API

  • IBM DB2

  • ID3

  • IIS

  • ImageMagick

  • Ingres

  • Java

  • JSON

  • KADM5

  • LZF

  • Mailparse

  • MaxDB

  • MCVE

  • Memcache

  • mnoGoSearch

  • Mongo

  • Msession

  • Ncurses

  • Gopher

  • Newt

  • YP/NIS

  • Lotus Notes

  • oggvorbis

  • OpenAL

  • Ovrimos SQL

  • Paradox

  • Parsekit

  • PDF

  • PDO

  • MS SQL Server (PDO)

  • Firebird/Interbase (PDO)

  • IBM (PDO)

  • Informix (PDO)

  • MySQL (PDO)

  • Oracle (PDO)

  • ODBC and DB2 (PDO)

  • PostgreSQL (PDO)

  • SQLite (PDO)

  • Phar

  • Printer

  • PS

  • qtdom

  • Radius

  • Rar

  • RPM Reader

  • runkit

  • SAM

  • SCA

  • SDO

  • SDO DAS XML

  • SDO-DAS-Relational

  • Session PgSQL

  • Sphinx

  • SSH2

  • Statistics

  • SVN

  • SWF

  • Swish

  • TCP

  • Tidy

  • vpopmail

  • W32api

  • win32ps

  • win32service

  • xattr

  • xdiff

  • XMLReader

  • XMLWriter

  • YAZ

  • Zip

Em ordem alfabética
Estado
Categorização/Lista das Extensões


Estado

Essa parte lista as extensões não destinadas para uso de produção - elas são ou muito velhas (obsoletas) ou muito novas (experimentais).

Extensões Obsoletas

Essas extensões tornaram-se normalmente obsoletas em favor de outras extensões.

  • Mimetype

  • Object overloading

Extensões Experimentais

O comportamento dessas extensões - incluindo os nomes das suas funções e qualquer outra coisa documentada sobre essas extensões - podem mudar sem aviso em versões futuras do PHP. O uso dessas extensões é arriscado.

  • bcompiler

  • DB++

  • .NET

  • haru

  • Hash

  • ImageMagick

  • Java

  • Ming

  • Mongo

  • Ncurses

  • Newt

  • Lotus Notes

  • Object Aggregation

  • Paradox

  • MS SQL Server (PDO)

  • Firebird/Interbase (PDO)

  • Oracle (PDO)

  • PS

  • qtdom

  • SCA

  • SDO-DAS-Relational

  • Sphinx

  • Swish

  • vpopmail

  • W32api

  • XML-RPC

Sociedade
Lista de funções sinônimas (aliases)
Categorização/Lista das Extensões


Lista de funções sinônimas (aliases)

Existem umas poucas funções no PHP que você pode chamar com mais de um nome. Em alguns casos não existe preferência entre eles, is_int() e is_integer(), por exemplo, são exatamente iguais. Entretanto existem funções que mudaram de nome por causa de limpeza de APIs, ou outro motivo, e os nomes antigos são mantidos como apelidos para compatibilidade retroativa. É uma péssima idéia usar esse tipo de apelido, uma vez que eles estão obsoletas ou a ponto de serem renomeados definitivamente, o que levará a um script não portável. Esta lista é mantida para ajuda-los a atualizar scripts antigos para as novas sintaxes.

Esta lista é consistente com o PHP 4.0.6.

Sinônimos
Função sinônimo (alias) | Função mestre | Extensão usada
_ | gettext() | Gettext
add | swfmovie_add() | Ming (flash)
add | swfsprite_add() | Ming (flash)
add_root | domxml_add_root() | DOM XML
addaction | swfbutton_addAction() | Ming (flash)
addcolor | swfdisplayitem_addColor() | Ming (flash)
addentry | swfgradient_addEntry() | Ming (flash)
addfill | swfshape_addfill() | Ming (flash)
addshape | swfbutton_addShape() | Ming (flash)
addstring | swftext_addString() | Ming (flash)
addstring | swftextfield_addString() | Ming (flash)
align | swftextfield_align() | Ming (flash)
attributes | domxml_attributes() | DOM XML
children | domxml_children() | DOM XML
chop | rtrim() | Base syntax
close | closedir() | Base syntax
com_get | com_propget() | COM
com_propset | com_propput() | COM
com_set | com_propput() | COM
die | exit() | Miscellaneous functions
dir | getdir() | Base syntax
diskfreespace | disk_free_space() | Filesystem
domxml_getattr | domxml_get_attribute() | DOM XML
domxml_setattr | domxml_set_attribute() | DOM XML
doubleval | floatval() | Base syntax
drawarc | swfshape_drawarc() | Ming (flash)
drawcircle | swfshape_drawcircle() | Ming (flash)
drawcubic | swfshape_drawcubic() | Ming (flash)
drawcubicto | swfshape_drawcubicto() | Ming (flash)
drawcurve | swfshape_drawcurve() | Ming (flash)
drawcurveto | swfshape_drawcurveto() | Ming (flash)
drawglyph | swfshape_drawglyph() | Ming (flash)
drawline | swfshape_drawline() | Ming (flash)
drawlineto | swfshape_drawlineto() | Ming (flash)
dtd | domxml_intdtd() | DOM XML
dumpmem | domxml_dumpmem() | DOM XML
fbsql | fbsql_db_query() | FrontBase
fputs | fwrite() | Base syntax
get_attribute | domxml_get_attribute() | DOM XML
getascent | swffont_getAscent() | Ming (flash)
getascent | swftext_getAscent() | Ming (flash)
getattr | domxml_get_attribute() | DOM XML
getdescent | swffont_getDescent() | Ming (flash)
getdescent | swftext_getDescent() | Ming (flash)
getheight | swfbitmap_getHeight() | Ming (flash)
getleading | swffont_getLeading() | Ming (flash)
getleading | swftext_getLeading() | Ming (flash)
getshape1 | swfmorph_getShape1() | Ming (flash)
getshape2 | swfmorph_getShape2() | Ming (flash)
getwidth | swfbitmap_getWidth() | Ming (flash)
getwidth | swffont_getWidth() | Ming (flash)
getwidth | swftext_getWidth() | Ming (flash)
gzputs | gzwrite() | Zlib
i18n_convert | mb_convert_encoding() | Multi-bytes Strings
i18n_discover_encoding | mb_detect_encoding() | Multi-bytes Strings
i18n_http_input | mb_http_input() | Multi-bytes Strings
i18n_http_output | mb_http_output() | Multi-bytes Strings
i18n_internal_encoding | mb_internal_encoding() | Multi-bytes Strings
i18n_ja_jp_hantozen | mb_convert_kana() | Multi-bytes Strings
i18n_mime_header_decode | mb_decode_mimeheader() | Multi-bytes Strings
i18n_mime_header_encode | mb_encode_mimeheader() | Multi-bytes Strings
imap_create | imap_createmailbox() | IMAP
imap_fetchtext | imap_body() | IMAP
imap_getmailboxes | imap_list_full() | IMAP
imap_getsubscribed | imap_lsub_full() | IMAP
imap_header | imap_headerinfo() | IMAP
imap_listmailbox | imap_list() | IMAP
imap_listsubscribed | imap_lsub() | IMAP
imap_rename | imap_renamemailbox() | IMAP
imap_scan | imap_listscan() | IMAP
imap_scanmailbox | imap_listscan() | IMAP
ini_alter | ini_set() | Base syntax
is_double | is_float() | Base syntax
is_integer | is_int() | Base syntax
is_long | is_int() | Base syntax
is_real | is_float() | Base syntax
is_writeable | is_writable() | Base syntax
join | implode() | Base syntax
labelframe | swfmovie_labelFrame() | Ming (flash)
labelframe | swfsprite_labelFrame() | Ming (flash)
last_child | domxml_last_child() | DOM XML
lastchild | domxml_last_child() | DOM XML
ldap_close | ldap_unbind() | LDAP
magic_quotes_runtime | set_magic_quotes_runtime() | Base syntax
mbstrcut | mb_strcut() | Multi-bytes Strings
mbstrlen | mb_strlen() | Multi-bytes Strings
mbstrpos | mb_strpos() | Multi-bytes Strings
mbstrrpos | mb_strrpos() | Multi-bytes Strings
mbsubstr | mb_substr() | Multi-bytes Strings
ming_setcubicthreshold | ming_setCubicThreshold() | Ming (flash)
ming_setscale | ming_setScale() | Ming (flash)
move | swfdisplayitem_move() | Ming (flash)
movepen | swfshape_movepen() | Ming (flash)
movepento | swfshape_movepento() | Ming (flash)
moveto | swfdisplayitem_moveTo() | Ming (flash)
moveto | swffill_moveTo() | Ming (flash)
moveto | swftext_moveTo() | Ming (flash)
msql | msql_db_query() | mSQL
msql_createdb | msql_create_db() | mSQL
msql_dbname | msql_result() | mSQL
msql_dropdb | msql_drop_db() | mSQL
msql_fieldflags | msql_field_flags() | mSQL
msql_fieldlen | msql_field_len() | mSQL
msql_fieldname | msql_field_name() | mSQL
msql_fieldtable | msql_field_table() | mSQL
msql_fieldtype | msql_field_type() | mSQL
msql_freeresult | msql_free_result() | mSQL
msql_listdbs | msql_list_dbs() | mSQL
msql_listfields | msql_list_fields() | mSQL
msql_listtables | msql_list_tables() | mSQL
msql_numfields | msql_num_fields() | mSQL
msql_numrows | msql_num_rows() | mSQL
msql_regcase | sql_regcase() | mSQL
msql_selectdb | msql_select_db() | mSQL
msql_tablename | msql_result() | mSQL
mssql_affected_rows | sybase_affected_rows() | Sybase
mssql_affected_rows | sybase_affected_rows() | Sybase
mssql_close | sybase_close() | Sybase
mssql_close | sybase_close() | Sybase
mssql_connect | sybase_connect() | Sybase
mssql_connect | sybase_connect() | Sybase
mssql_data_seek | sybase_data_seek() | Sybase
mssql_data_seek | sybase_data_seek() | Sybase
mssql_fetch_array | sybase_fetch_array() | Sybase
mssql_fetch_array | sybase_fetch_array() | Sybase
mssql_fetch_field | sybase_fetch_field() | Sybase
mssql_fetch_field | sybase_fetch_field() | Sybase
mssql_fetch_object | sybase_fetch_object() | Sybase
mssql_fetch_object | sybase_fetch_object() | Sybase
mssql_fetch_row | sybase_fetch_row() | Sybase
mssql_fetch_row | sybase_fetch_row() | Sybase
mssql_field_seek | sybase_field_seek() | Sybase
mssql_field_seek | sybase_field_seek() | Sybase
mssql_free_result | sybase_free_result() | Sybase
mssql_free_result | sybase_free_result() | Sybase
mssql_get_last_message | sybase_get_last_message() | Sybase
mssql_get_last_message | sybase_get_last_message() | Sybase
mssql_min_client_severity | sybase_min_client_severity() | Sybase
mssql_min_error_severity | sybase_min_error_severity() | Sybase
mssql_min_message_severity | sybase_min_message_severity() | Sybase
mssql_min_server_severity | sybase_min_server_severity() | Sybase
mssql_num_fields | sybase_num_fields() | Sybase
mssql_num_fields | sybase_num_fields() | Sybase
mssql_num_rows | sybase_num_rows() | Sybase
mssql_num_rows | sybase_num_rows() | Sybase
mssql_pconnect | sybase_pconnect() | Sybase
mssql_pconnect | sybase_pconnect() | Sybase
mssql_query | sybase_query() | Sybase
mssql_query | sybase_query() | Sybase
mssql_result | sybase_result() | Sybase
mssql_result | sybase_result() | Sybase
mssql_select_db | sybase_select_db() | Sybase
mssql_select_db | sybase_select_db() | Sybase
multcolor | swfdisplayitem_multColor() | Ming (flash)
mysql | mysql_db_query() | MySQL
mysql_createdb | mysql_create_db() | MySQL
mysql_db_name | mysql_result() | MySQL
mysql_dbname | mysql_result() | MySQL
mysql_dropdb | mysql_drop_db() | MySQL
mysql_fieldflags | mysql_field_flags() | MySQL
mysql_fieldlen | mysql_field_len() | MySQL
mysql_fieldname | mysql_field_name() | MySQL
mysql_fieldtable | mysql_field_table() | MySQL
mysql_fieldtype | mysql_field_type() | MySQL
mysql_freeresult | mysql_free_result() | MySQL
mysql_listdbs | mysql_list_dbs() | MySQL
mysql_listfields | mysql_list_fields() | MySQL
mysql_listtables | mysql_list_tables() | MySQL
mysql_numfields | mysql_num_fields() | MySQL
mysql_numrows | mysql_num_rows() | MySQL
mysql_selectdb | mysql_select_db() | MySQL
mysql_tablename | mysql_result() | MySQL
name | domxml_attrname() | DOM XML
new_child | domxml_new_child() | DOM XML
new_xmldoc | domxml_new_xmldoc() | DOM XML
nextframe | swfmovie_nextFrame() | Ming (flash)
nextframe | swfsprite_nextFrame() | Ming (flash)
node | domxml_node() | DOM XML
oci8append | ocicollappend() | OCI8
oci8assign | ocicollassign() | OCI8
oci8assignelem | ocicollassignelem() | OCI8
oci8close | ocicloselob() | OCI8
oci8free | ocifreecoll() | OCI8
oci8free | ocifreedesc() | OCI8
oci8getelem | ocicollgetelem() | OCI8
oci8load | ociloadlob() | OCI8
oci8max | ocicollmax() | OCI8
oci8ocifreecursor | ocifreestatement() | OCI8
oci8save | ocisavelob() | OCI8
oci8savefile | ocisavelobfile() | OCI8
oci8size | ocicollsize() | OCI8
oci8trim | ocicolltrim() | OCI8
oci8writetemporary | ociwritetemporarylob() | OCI8
oci8writetofile | ociwritelobtofile() | OCI8
odbc_do | odbc_exec() | ODBC
odbc_field_precision | odbc_field_len() | ODBC
output | swfmovie_output() | Ming (flash)
parent | domxml_parent() | DOM XML
pdf_add_outline | pdf_add_bookmark() | PDF
pg_clientencoding | pg_client_encoding() | PostgreSQL
pg_setclientencoding | pg_set_client_encoding() | PostgreSQL
pos | current() | Base syntax
recode | recode_string() | Recode
remove | swfmovie_remove() | Ming (flash)
remove | swfsprite_remove() | Ming (flash)
rewind | rewinddir() | Base syntax
root | domxml_root() | DOM XML
rotate | swfdisplayitem_rotate() | Ming (flash)
rotateto | swfdisplayitem_rotateTo() | Ming (flash)
rotateto | swffill_rotateTo() | Ming (flash)
save | swfmovie_save() | Ming (flash)
savetofile | swfmovie_saveToFile() | Ming (flash)
scale | swfdisplayitem_scale() | Ming (flash)
scaleto | swfdisplayitem_scaleTo() | Ming (flash)
scaleto | swffill_scaleTo() | Ming (flash)
set_attribute | domxml_set_attribute() | DOM XML
set_content | domxml_set_content() | DOM XML
setaction | swfbutton_setAction() | Ming (flash)
setattr | domxml_set_attribute() | DOM XML
setbackground | swfmovie_setBackground() | Ming (flash)
setbounds | swftextfield_setBounds() | Ming (flash)
setcolor | swftext_setColor() | Ming (flash)
setcolor | swftextfield_setColor() | Ming (flash)
setdepth | swfdisplayitem_setDepth() | Ming (flash)
setdimension | swfmovie_setDimension() | Ming (flash)
setdown | swfbutton_setDown() | Ming (flash)
setfont | swftext_setFont() | Ming (flash)
setfont | swftextfield_setFont() | Ming (flash)
setframes | swfmovie_setFrames() | Ming (flash)
setframes | swfsprite_setFrames() | Ming (flash)
setheight | swftext_setHeight() | Ming (flash)
setheight | swftextfield_setHeight() | Ming (flash)
sethit | swfbutton_setHit() | Ming (flash)
setindentation | swftextfield_setIndentation() | Ming (flash)
setleftfill | swfshape_setleftfill() | Ming (flash)
setleftmargin | swftextfield_setLeftMargin() | Ming (flash)
setline | swfshape_setline() | Ming (flash)
setlinespacing | swftextfield_setLineSpacing() | Ming (flash)
setmargins | swftextfield_setMargins() | Ming (flash)
setmatrix | swfdisplayitem_setMatrix() | Ming (flash)
setname | swfdisplayitem_setName() | Ming (flash)
setname | swftextfield_setName() | Ming (flash)
setover | swfbutton_setOver() | Ming (flash)
setrate | swfmovie_setRate() | Ming (flash)
setratio | swfdisplayitem_setRatio() | Ming (flash)
setrightfill | swfshape_setrightfill() | Ming (flash)
setrightmargin | swftextfield_setRightMargin() | Ming (flash)
setspacing | swftext_setSpacing() | Ming (flash)
setup | swfbutton_setUp() | Ming (flash)
show_source | highlight_file() | Base syntax
sizeof | count() | Base syntax
skewx | swfdisplayitem_skewX() | Ming (flash)
skewxto | swfdisplayitem_skewXTo() | Ming (flash)
skewxto | swffill_skewXTo() | Ming (flash)
skewy | swfdisplayitem_skewY() | Ming (flash)
skewyto | swfdisplayitem_skewYTo() | Ming (flash)
skewyto | swffill_skewYTo() | Ming (flash)
snmpwalkoid | snmprealwalk() | SNMP
strchr | strstr() | Base syntax
streammp3 | swfmovie_streamMp3() | Ming (flash)
swfaction | swfaction_init() | Ming (flash)
swfbitmap | swfbitmap_init() | Ming (flash)
swfbutton | swfbutton_init() | Ming (flash)
swffill | swffill_init() | Ming (flash)
swffont | swffont_init() | Ming (flash)
swfgradient | swfgradient_init() | Ming (flash)
swfmorph | swfmorph_init() | Ming (flash)
swfmovie | swfmovie_init() | Ming (flash)
swfshape | swfshape_init() | Ming (flash)
swfsprite | swfsprite_init() | Ming (flash)
swftext | swftext_init() | Ming (flash)
swftextfield | swftextfield_init() | Ming (flash)
unlink | domxml_unlink_node() | DOM XML
xptr_new_context | xpath_new_context() | DOM XML

Estado
Palavras reservadas do PHP
Apêndices


Palavras reservadas do PHP

Índice

  • Lista de palavras-chave (keywords)
  • Classes pré-definidas
  • Constantes Pré-definidas

Esta é uma lista de identificadores predefinidos do PHP. Nenhum dos nomes listados aqui pode ser utilizado como seus identificadores em nenhum script. Esta lista inclui palavras-chave e variáveis pré-definidas, constantes e nomes de classes. Esta lista ainda não está completa.

Lista de funções sinônimas (aliases)
Lista de palavras-chave (keywords)
Apêndices


Lista de palavras-chave (keywords)

Estas palavras tem um significado especial no PHP. Algumas delas representam coisas que parecem funções, algumas parecem constantes mas na verdade não o são realmente: elas são construtores de linguagem. Você não pode usar nenhuma das seguintes palavras como constantes, nomes de classes, de funções ou de métodos. Utilizar como nome de variáveis geralmente não causa erros, mas pode levar a confusão.

Palavras-chave do PHP
abstract (a partir do PHP 5) | and | array() | as | break
case | catch (as of PHP 5) | cfunction (PHP 4 only) | class | clone (as of PHP 5)
const | continue | declare | default | do
else | elseif | enddeclare | endfor | endforeach
endif | endswitch | endwhile | extends | final (as of PHP 5)
for | foreach | function | global | goto (apartir do PHP 5.3)
if | implements (a partir do PHP 5) | interface (a partir do PHP 5) | instanceof (a partir do PHP 5)
namespace (a partir do PHP 5.3) | new | old_function (PHP 4 somente) | or | private (a partir do PHP 5)
protected (a partir do PHP 5) | public (a partir do PHP 5) | static | switch | throw (a partir do PHP 5)
try (a partir do PHP 5) | use | var | while | xor
Constantes Compile-time
__CLASS__ | __DIR__ (no PHP 5.3) | __FILE__ | __FUNCTION__ | __METHOD__
__NAMESPACE__ (a partir do PHP 5.3) |  |  |  |
Construtores da linguagem
die() | echo() | empty() | exit() | eval()
include() | include_once() | isset() | list() | require()
require_once() | return() | print() | unset() |
Palavras reservadas do PHP
Classes pré-definidas
Palavras reservadas do PHP


Classes pré-definidas

Esta seção lista classes pré-definidas padrão. Diversas extensões definem outras classes como são descritas em suas referências.

Classes padrão

Estas classes são definidas dentro do conjunto padrão de funções incluídas na compilação do PHP.

Directory
A classe de onde a função dir é instanciada.
stdClass
__PHP_Incomplete_Class

Classes Pré-definidas no PHP 5

Essas classes pré-definidas adicionais foram introduzidas no PHP 5.0.0

exception
php_user_filter

Closure

A classe pré-definida final Closure foi indroduzida no PHP 5.3.0. É usada para a implementação interna de anonymous functions.

A classe tem um construtor proibindo a criação manual do objeto (causa E_RECOVERABLE_ERROR) e o metodo __invoke com calling magic.

Classes especiais

Os seguintes identificadores não podem ser usados como nome de classe, como eles possuem um propósito especial.

self
parent
Lista de palavras-chave (keywords)
Constantes Pré-definidas
Palavras reservadas do PHP


Constantes Pré-definidas

Principais Constantes Pré-definidas

Essas constantes são definidas pelo núcleo do PHP. Isso inclui PHP, o engine do Zend e módulos SAPI.

PHP_VERSION (string)
PHP_MAJOR_VERSION (integer)
Disponível desde PHP 5.2.7.
PHP_MINOR_VERSION (integer)
Disponível desde PHP 5.2.7.
PHP_RELEASE_VERSION (integer)
Disponível desde PHP 5.2.7.
PHP_VERSION_ID (integer)
Disponível desde PHP 5.2.7.
PHP_EXTRA_VERSION (string)
Disponível desde PHP 5.2.7.
PHP_ZTS (integer)
Disponível desde PHP 5.2.7.
PHP_DEBUG (integer)
Disponível desde PHP 5.2.7.
PHP_MAXPATHLEN (integer)
Disponível desde PHP 5.3.0.
PHP_OS (string)
PHP_SAPI (string)
Disponível dese o PHP 4.2.0. Veja também php_sapi_name().
PHP_EOL (string)
Disponível desde o PHP 4.3.10 e PHP 5.0.2
PHP_INT_MAX (integer)
Disponível desde o PHP 4.4.0 e PHP 5.0.5
PHP_INT_SIZE (integer)
Disponível desde o PHP 4.4.0 e PHP 5.0.5
DEFAULT_INCLUDE_PATH (string)
PEAR_INSTALL_DIR (string)
PEAR_EXTENSION_DIR (string)
PHP_EXTENSION_DIR (string)
PHP_PREFIX (string)
Disponível desde o PHP 4.3.0
PHP_BINDIR (string)
PHP_LIBDIR (string)
PHP_DATADIR (string)
PHP_SYSCONFDIR (string)
PHP_LOCALSTATEDIR (string)
PHP_CONFIG_FILE_PATH (string)
PHP_CONFIG_FILE_SCAN_DIR (string)
PHP_SHLIB_SUFFIX (string)
Disponível desde o PHP 4.3.0
PHP_OUTPUT_HANDLER_START (integer)
PHP_OUTPUT_HANDLER_CONT (integer)
PHP_OUTPUT_HANDLER_END (integer)
PHP_WINDOWS_VERSION_MAJOR (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_MINOR (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_BUILD (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_PLATFORM (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_SP_MAJOR (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_SP_MINOR (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_SUITEMASK (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_VERSION_PRODUCTTYPE (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_NT_DOMAIN_CONTROLLER (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_NT_SERVER (integer)
Disponível desde o PHP 5.3.0
PHP_WINDOWS_NT_WORKSTATION (integer)
Disponível desde o PHP 5.3.0
E_ERROR (integer)
E_WARNING (integer)
E_PARSE (integer)
E_NOTICE (integer)
E_CORE_ERROR (integer)
E_CORE_WARNING (integer)
E_COMPILE_ERROR (integer)
E_COMPILE_WARNING (integer)
E_USER_ERROR (integer)
E_USER_WARNING (integer)
E_USER_NOTICE (integer)
E_DEPRECATED (integer)
Disponível desde o PHP 5.3.0
E_USER_DEPRECATED (integer)
Disponível desde o PHP 5.3.0
E_ALL (integer)
E_STRICT (integer)
Disponível desde o PHP 5.0.0
__COMPILER_HALT_OFFSET__ (integer)
Disponível desde o PHP 5.1.0
TRUE (boolean)
Veja Booleans.
FALSE (boolean)
Veja Booleans.
NULL (boolean)
Veja Null.

Veja Também: Constantes Mágicas.

Constantes Padrão Pré-definidas

Constantes definidas no PHP por padrão.

EXTR_OVERWRITE (integer)
EXTR_SKIP (integer)
EXTR_PREFIX_SAME (integer)
EXTR_PREFIX_ALL (integer)
EXTR_PREFIX_INVALID (integer)
EXTR_PREFIX_IF_EXISTS (integer)
EXTR_IF_EXISTS (integer)
SORT_ASC (integer)
SORT_DESC (integer)
SORT_REGULAR (integer)
SORT_NUMERIC (integer)
SORT_STRING (integer)
CASE_LOWER (integer)
CASE_UPPER (integer)
COUNT_NORMAL (integer)
COUNT_RECURSIVE (integer)
ASSERT_ACTIVE (integer)
ASSERT_CALLBACK (integer)
ASSERT_BAIL (integer)
ASSERT_WARNING (integer)
ASSERT_QUIET_EVAL (integer)
CONNECTION_ABORTED (integer)
CONNECTION_NORMAL (integer)
CONNECTION_TIMEOUT (integer)
INI_USER (integer)
INI_PERDIR (integer)
INI_SYSTEM (integer)
INI_ALL (integer)
M_E (float)
M_LOG2E (float)
M_LOG10E (float)
M_LN2 (float)
M_LN10 (float)
M_PI (float)
M_PI_2 (float)
M_PI_4 (float)
M_1_PI (float)
M_2_PI (float)
M_2_SQRTPI (float)
M_SQRT2 (float)
M_SQRT1_2 (float)
CRYPT_SALT_LENGTH (integer)
CRYPT_STD_DES (integer)
CRYPT_EXT_DES (integer)
CRYPT_MD5 (integer)
CRYPT_BLOWFISH (integer)
DIRECTORY_SEPARATOR (string)
SEEK_SET (integer)
SEEK_CUR (integer)
SEEK_END (integer)
LOCK_SH (integer)
LOCK_EX (integer)
LOCK_UN (integer)
LOCK_NB (integer)
HTML_SPECIALCHARS (integer)
HTML_ENTITIES (integer)
ENT_COMPAT (integer)
ENT_QUOTES (integer)
ENT_NOQUOTES (integer)
INFO_GENERAL (integer)
INFO_CREDITS (integer)
INFO_CONFIGURATION (integer)
INFO_MODULES (integer)
INFO_ENVIRONMENT (integer)
INFO_VARIABLES (integer)
INFO_LICENSE (integer)
INFO_ALL (integer)
CREDITS_GROUP (integer)
CREDITS_GENERAL (integer)
CREDITS_SAPI (integer)
CREDITS_MODULES (integer)
CREDITS_DOCS (integer)
CREDITS_FULLPAGE (integer)
CREDITS_QA (integer)
CREDITS_ALL (integer)
STR_PAD_LEFT (integer)
STR_PAD_RIGHT (integer)
STR_PAD_BOTH (integer)
PATHINFO_DIRNAME (integer)
PATHINFO_BASENAME (integer)
PATHINFO_EXTENSION (integer)
PATH_SEPARATOR (string)
CHAR_MAX (integer)
LC_CTYPE (integer)
LC_NUMERIC (integer)
LC_TIME (integer)
LC_COLLATE (integer)
LC_MONETARY (integer)
LC_ALL (integer)
LC_MESSAGES (integer)
ABDAY_1 (integer)
ABDAY_2 (integer)
ABDAY_3 (integer)
ABDAY_4 (integer)
ABDAY_5 (integer)
ABDAY_6 (integer)
ABDAY_7 (integer)
DAY_1 (integer)
DAY_2 (integer)
DAY_3 (integer)
DAY_4 (integer)
DAY_5 (integer)
DAY_6 (integer)
DAY_7 (integer)
ABMON_1 (integer)
ABMON_2 (integer)
ABMON_3 (integer)
ABMON_4 (integer)
ABMON_5 (integer)
ABMON_6 (integer)
ABMON_7 (integer)
ABMON_8 (integer)
ABMON_9 (integer)
ABMON_10 (integer)
ABMON_11 (integer)
ABMON_12 (integer)
MON_1 (integer)
MON_2 (integer)
MON_3 (integer)
MON_4 (integer)
MON_5 (integer)
MON_6 (integer)
MON_7 (integer)
MON_8 (integer)
MON_9 (integer)
MON_10 (integer)
MON_11 (integer)
MON_12 (integer)
AM_STR (integer)
PM_STR (integer)
D_T_FMT (integer)
D_FMT (integer)
T_FMT (integer)
T_FMT_AMPM (integer)
ERA (integer)
ERA_YEAR (integer)
ERA_D_T_FMT (integer)
ERA_D_FMT (integer)
ERA_T_FMT (integer)
ALT_DIGITS (integer)
INT_CURR_SYMBOL (integer)
CURRENCY_SYMBOL (integer)
CRNCYSTR (integer)
MON_DECIMAL_POINT (integer)
MON_THOUSANDS_SEP (integer)
MON_GROUPING (integer)
POSITIVE_SIGN (integer)
NEGATIVE_SIGN (integer)
INT_FRAC_DIGITS (integer)
FRAC_DIGITS (integer)
P_CS_PRECEDES (integer)
P_SEP_BY_SPACE (integer)
N_CS_PRECEDES (integer)
N_SEP_BY_SPACE (integer)
P_SIGN_POSN (integer)
N_SIGN_POSN (integer)
DECIMAL_POINT (integer)
RADIXCHAR (integer)
THOUSANDS_SEP (integer)
THOUSEP (integer)
GROUPING (integer)
YESEXPR (integer)
NOEXPR (integer)
YESSTR (integer)
NOSTR (integer)
CODESET (integer)
LOG_EMERG (integer)
LOG_ALERT (integer)
LOG_CRIT (integer)
LOG_ERR (integer)
LOG_WARNING (integer)
LOG_NOTICE (integer)
LOG_INFO (integer)
LOG_DEBUG (integer)
LOG_KERN (integer)
LOG_USER (integer)
LOG_MAIL (integer)
LOG_DAEMON (integer)
LOG_AUTH (integer)
LOG_SYSLOG (integer)
LOG_LPR (integer)
LOG_NEWS (integer)
LOG_UUCP (integer)
LOG_CRON (integer)
LOG_AUTHPRIV (integer)
LOG_LOCAL0 (integer)
LOG_LOCAL1 (integer)
LOG_LOCAL2 (integer)
LOG_LOCAL3 (integer)
LOG_LOCAL4 (integer)
LOG_LOCAL5 (integer)
LOG_LOCAL6 (integer)
LOG_LOCAL7 (integer)
LOG_PID (integer)
LOG_CONS (integer)
LOG_ODELAY (integer)
LOG_NDELAY (integer)
LOG_NOWAIT (integer)
LOG_PERROR (integer)
Classes pré-definidas
List of Resource Types
Palavras reservadas do PHP


List of Resource Types

The following is a list of functions which create, use or destroy PHP resources. The function is_resource() can be used to determine if a variable is a resource and get_resource_type() will return the type of resource it is.

Resource Types
Resource Type Name | Created By | Used By | Destroyed By | Definition
aspell | aspell_new() | aspell_check(), aspell_check_raw(), aspell_suggest() | None | Aspell dictionary
bzip2 | bzopen() | bzerrno(), bzerror(), bzerrstr(), bzflush(), bzread(), bzwrite() | bzclose() | Bzip2 file
COM | com_load() | com_invoke(), com_propget(), com_get(), com_propput(), com_set(), com_propput() | None | COM object reference
VARIANT
cpdf | cpdf_open() | cpdf_page_init(), cpdf_finalize_page(), cpdf_finalize(), cpdf_output_buffer(), cpdf_save_to_file(), cpdf_set_current_page(), cpdf_begin_text(), cpdf_end_text(), cpdf_show(), cpdf_show_xy(), cpdf_text(), cpdf_set_font(), cpdf_set_leading(), cpdf_set_text_rendering(), cpdf_set_horiz_scaling(), cpdf_set_text_rise(), cpdf_set_text_matrix(), cpdf_set_text_pos(), cpdf_set_text_pos(), cpdf_set_word_spacing(), cpdf_continue_text(), cpdf_stringwidth(), cpdf_save(), cpdf_translate(), cpdf_restore(), cpdf_scale(), cpdf_rotate(), cpdf_setflat(), cpdf_setlinejoin(), cpdf_setlinecap(), cpdf_setmiterlimit(), cpdf_setlinewidth(), cpdf_setdash(), cpdf_moveto(), cpdf_rmoveto(), cpdf_curveto(), cpdf_lineto(), cpdf_rlineto(), cpdf_circle(), cpdf_arc(), cpdf_rect(), cpdf_closepath(), cpdf_stroke(), cpdf_closepath_fill_stroke(), cpdf_fill_stroke(), cpdf_clip(), cpdf_fill(), cpdf_setgray_fill(), cpdf_setgray_stroke(), cpdf_setgray(), cpdf_setrgbcolor_fill(), cpdf_setrgbcolor_stroke(), cpdf_setrgbcolor(), cpdf_add_outline(), cpdf_set_page_animation(), cpdf_import_jpeg(), cpdf_place_inline_image(), cpdf_add_annotation() | cpdf_close() | PDF document with CPDF lib
cpdf outline
curl | curl_copy_handle(), curl_init() | curl_copy_handle(), curl_errno(), curl_error(), curl_exec(), curl_getinfo(), curl_setopt() | curl_close() | Curl session
dbm | dbmopen() | dbmexists(), dbmfetch(), dbminsert(), dbmreplace(), dbmdelete(), dbmfirstkey(), dbmnextkey() | dbmclose() | Link to DBM database
dba | dba_open() | dba_delete(), dba_exists(), dba_fetch(), dba_firstkey(), dba_insert(), dba_nextkey(), dba_optimize(), dba_replace(), dba_sync() | dba_close() | Link to DBA database
dba persistent | dba_popen() | dba_delete(), dba_exists(), dba_fetch(), dba_firstkey(), dba_insert(), dba_nextkey(), dba_optimize(), dba_replace(), dba_sync() | None | Persistent link to DBA database
dbase | dbase_open() | dbase_pack(), dbase_add_record(), dbase_replace_record(), dbase_delete_record(), dbase_get_record(), dbase_get_record_with_names(), dbase_numfields(), dbase_numrecords() | dbase_close() | Link to Dbase database
dbx_link_object | dbx_connect() | dbx_query() | dbx_close() | dbx connection
dbx_result_object | dbx_query() | None | dbx result
domxml attribute
domxml document
domxml node
xpath context
xpath object
fbsql link | fbsql_change_user(), fbsql_connect() | fbsql_autocommit(), fbsql_blob_size(), fbsql_clob_size(), fbsql_commit(), fbsql_change_user(), fbsql_create_blob(), fbsql_create_db(), fbsql_create_clob(), fbsql_data_seek(), fbsql_database_password(), fbsql_database(), fbsql_db_query(), fbsql_db_status(), fbsql_drop_db(), fbsql_errno(), fbsql_error(), fbsql_get_autostart_info(), fbsql_hostname(), fbsql_insert_id(), fbsql_list_dbs(), fbsql_password(), fbsql_read_blob(), fbsql_read_clob(), fbsql_rollback(), fbsql_select_db(), fbsql_set_password(), fbsql_set_transaction(), fbsql_start_db(), fbsql_stop_db(), fbsql_username() | fbsql_close() | Link to fbsql database
fbsql plink | fbsql_change_user(), fbsql_pconnect() | fbsql_autocommit(), fbsql_change_user(), fbsql_create_db(), fbsql_data_seek(), fbsql_db_query(), fbsql_drop_db(), fbsql_select_db(), fbsql_errno(), fbsql_error(), fbsql_insert_id(), fbsql_list_dbs() | None | Persistent link to fbsql database
fbsql result | fbsql_db_query(), fbsql_list_dbs(), fbsql_query(), fbsql_list_fields(), fbsql_list_tables(), fbsql_tablename() | fbsql_affected_rows(), fbsql_fetch_array(), fbsql_fetch_assoc(), fbsql_fetch_field(), fbsql_fetch_lengths(), fbsql_fetch_object(), fbsql_fetch_row(), fbsql_field_flags(), fbsql_field_name(), fbsql_field_len(), fbsql_field_seek(), fbsql_field_table(), fbsql_field_type(), fbsql_next_result(), fbsql_num_fields(), fbsql_num_rows(), fbsql_result(), fbsql_num_rows() | fbsql_free_result() | fbsql result
fdf | fdf_open() | fdf_create(), fdf_save(), fdf_get_value(), fdf_set_value(), fdf_next_field_name(), fdf_set_ap(), fdf_set_status(), fdf_get_status(), fdf_set_file(), fdf_get_file(), fdf_set_flags(), fdf_set_opt(), fdf_set_submit_form_action(), fdf_set_javascript_action() | fdf_close() | FDF File
ftp | ftp_connect(), ftp_ssl_connect() | ftp_login(), ftp_pwd(), ftp_cdup(), ftp_chdir(), ftp_mkdir(), ftp_rmdir(), ftp_nlist(), ftp_rawlist(), ftp_systype(), ftp_pasv(), ftp_get(), ftp_fget(), ftp_put(), ftp_fput(), ftp_size(), ftp_mdtm(), ftp_rename(), ftp_delete(), ftp_site(), ftp_alloc(), ftp_chmod(), ftp_exec(), ftp_get_option(), ftp_nb_continue(), ftp_nb_fget(), ftp_nb_fput(), ftp_nb_get(), ftp_nb_put(), ftp_raw(), ftp_set_option() | ftp_close() | FTP stream
gd | imagecreate(), imagecreatefromgd(), imagecreatefromgd2(), imagecreatefromgd2part(), imagecreatefromgif(), imagecreatefromjpeg(), imagecreatefrompng(), imagecreatefromwbmp(), imagecreatefromstring(), imagecreatefromxbm(), imagecreatefromxpm(), imagecreatetruecolor(), imagerotate() | imagearc(), imagechar(), imagecharup(), imagecolorallocate(), imagecolorat(), imagecolorclosest(), imagecolorexact(), imagecolorresolve(), imagegammacorrect(), imagegammacorrect(), imagecolorset(), imagecolorsforindex(), imagecolorstotal(), imagecolortransparent(), imagecopy(), imagecopyresized(), imagedashedline(), imagefill(), imagefilledpolygon(), imagefilledrectangle(), imagefilltoborder(), imagegif(), imagepng(), imagejpeg(), imagewbmp(), imageinterlace(), imageline(), imagepolygon(), imagepstext(), imagerectangle(), imagerotate(), imagesetpixel(), imagestring(), imagestringup(), imagesx(), imagesy(), imagettftext(), imagefilledarc(), imageellipse(), imagefilledellipse(), imagecolorclosestalpha(), imagecolorexactalpha(), imagecolorresolvealpha(), imagecopymerge(), imagecopymergegray(), imagecopyresampled(), imagetruecolortopalette(), imagesetbrush(), imagesettile(), imagesetthickness(), image2wbmp(), imagealphablending(), imageantialias(), imagecolorallocatealpha(), imagecolorclosesthwb(), imagecolordeallocate(), imagecolormatch(), imagefilter(), imagefttext(), imagegd(), imagegd2(), imageistruecolor(), imagelayereffect(), imagepalettecopy(), imagesavealpha(), imagesetstyle(), imagexbm() | imagedestroy() | GD Image
gd font | imageloadfont() | imagechar(), imagecharup(), imagefontheight() | None | Font for GD
gd PS encoding
gd PS font | imagepsloadfont() | imagepstext(), imagepsslantfont(), imagepsextendfont(), imagepsencodefont(), imagepsbbox() | imagepsfreefont() | PS font for GD
GMP integer | gmp_init() | gmp_intval(), gmp_strval(), gmp_add(), gmp_sub(), gmp_mul(), gmp_div_q(), gmp_div_r(), gmp_div_qr(), gmp_div(), gmp_mod(), gmp_divexact(), gmp_cmp(), gmp_neg(), gmp_abs(), gmp_sign(), gmp_fact(), gmp_sqrt(), gmp_sqrtrm(), gmp_perfect_square(), gmp_pow(), gmp_powm(), gmp_prob_prime(), gmp_gcd(), gmp_gcdext(), gmp_invert(), gmp_legendre(), gmp_jacobi(), gmp_random(), gmp_and(), gmp_or(), gmp_xor(), gmp_setbit(), gmp_clrbit(), gmp_scan0(), gmp_scan1(), gmp_popcount(), gmp_hamdist() | None | GMP Number
hyperwave document | hw_cp(), hw_docbyanchor(), hw_getremote(), hw_getremotechildren() | hw_children(), hw_childrenobj(), hw_getparents(), hw_getparentsobj(), hw_getchildcoll(), hw_getchildcollobj(), hw_getremote(), hw_getsrcbydestobj(), hw_getandlock(), hw_gettext(), hw_getobjectbyquerycoll(), hw_getobjectbyquerycollobj(), hw_getchilddoccoll(), hw_getchilddoccollobj(), hw_getanchors(), hw_getanchorsobj(), hw_inscoll(), hw_pipedocument(), hw_unlock() | hw_deleteobject() | Hyperwave object
hyperwave link | hw_connect() | hw_children(), hw_childrenobj(), hw_cp(), hw_deleteobject(), hw_docbyanchor(), hw_docbyanchorobj(), hw_errormsg(), hw_edittext(), hw_error(), hw_getparents(), hw_getparentsobj(), hw_getchildcoll(), hw_getchildcollobj(), hw_getremote(), hw_getremotechildren(), hw_getsrcbydestobj(), hw_getobject(), hw_getandlock(), hw_gettext(), hw_getobjectbyquery(), hw_getobjectbyqueryobj(), hw_getobjectbyquerycoll(), hw_getobjectbyquerycollobj(), hw_getchilddoccoll(), hw_getchilddoccollobj(), hw_getanchors(), hw_getanchorsobj(), hw_mv(), hw_incollections(), hw_info(), hw_inscoll(), hw_insdoc(), hw_insertdocument(), hw_insertobject(), hw_mapid(), hw_modifyobject(), hw_pipedocument(), hw_unlock(), hw_who(), hw_getusername() | hw_close(), hw_free_document() | Link to Hyperwave server
hyperwave link persistent | hw_pconnect() | hw_children(), hw_childrenobj(), hw_cp(), hw_deleteobject(), hw_docbyanchor(), hw_docbyanchorobj(), hw_errormsg(), hw_edittext(), hw_error(), hw_getparents(), hw_getparentsobj(), hw_getchildcoll(), hw_getchildcollobj(), hw_getremote(), hw_getremotechildren(), hw_getsrcbydestobj(), hw_getobject(), hw_getandlock(), hw_gettext(), hw_getobjectbyquery(), hw_getobjectbyqueryobj(), hw_getobjectbyquerycoll(), hw_getobjectbyquerycollobj(), hw_getchilddoccoll(), hw_getchilddoccollobj(), hw_getanchors(), hw_getanchorsobj(), hw_mv(), hw_incollections(), hw_info(), hw_inscoll(), hw_insdoc(), hw_insertdocument(), hw_insertobject(), hw_mapid(), hw_modifyobject(), hw_pipedocument(), hw_unlock(), hw_who(), hw_getusername() | None | Persistent link to Hyperwave server
icap | icap_open() | icap_fetch_event(), icap_list_events(), icap_store_event(), icap_snooze(), icap_list_alarms(), icap_delete_event() | icap_close() | Link to icap server
imap | imap_open() | imap_append(), imap_body(), imap_check(), imap_createmailbox(), imap_delete(), imap_deletemailbox(), imap_expunge(), imap_fetchbody(), imap_fetchstructure(), imap_headerinfo(), imap_header(), imap_headers(), imap_listmailbox(), imap_getmailboxes(), imap_get_quota(), imap_status(), imap_listsubscribed(), imap_set_quota(), imap_set_quota(), imap_getsubscribed(), imap_mail_copy(), imap_mail_move(), imap_num_msg(), imap_num_recent(), imap_ping(), imap_renamemailbox(), imap_reopen(), imap_subscribe(), imap_undelete(), imap_unsubscribe(), imap_scanmailbox(), imap_mailboxmsginfo(), imap_fetchheader(), imap_uid(), imap_msgno(), imap_search(), imap_fetch_overview() | imap_close() | Link to IMAP, POP3 server
imap chain persistent
imap persistent
ingres | ingres_connect() | ingres_query(), ingres_num_rows(), ingres_num_fields(), ingres_field_name(), ingres_field_type(), ingres_field_nullable(), ingres_field_length(), ingres_field_precision(), ingres_field_scale(), ingres_fetch_array(), ingres_fetch_row(), ingres_fetch_object(), ingres_rollback(), ingres_commit(), ingres_autocommit() | ingres_close() | Link to ingresII base
ingres persistent | ingres_pconnect() | ingres_query(), ingres_num_rows(), ingres_num_fields(), ingres_field_name(), ingres_field_type(), ingres_field_nullable(), ingres_field_length(), ingres_field_precision(), ingres_field_scale(), ingres_fetch_array(), ingres_fetch_row(), ingres_fetch_object(), ingres_rollback(), ingres_commit(), ingres_autocommit() | None | Persistent link to ingresII base
interbase blob
interbase link | ibase_connect() | ibase_query(), ibase_prepare(), ibase_trans() | ibase_close() | Link to Interbase database
interbase link persistent | ibase_pconnect() | ibase_query(), ibase_prepare(), ibase_trans() | None | Persistent link to Interbase database
interbase query | ibase_prepare() | ibase_execute() | ibase_free_query() | Interbase query
interbase result | ibase_query() | ibase_fetch_row(), ibase_fetch_object(), ibase_field_info(), ibase_num_fields() | ibase_free_result() | Interbase Result
interbase transaction | ibase_trans() | ibase_commit() | ibase_rollback() | Interbase transaction
java
ldap link | ldap_connect(), ldap_search() | ldap_count_entries(), ldap_first_attribute(), ldap_first_entry(), ldap_get_attributes(), ldap_get_dn(), ldap_get_entries(), ldap_get_values(), ldap_get_values_len(), ldap_next_attribute(), ldap_next_entry() | ldap_close() | ldap connection
ldap result | ldap_read() | ldap_add(), ldap_compare(), ldap_bind(), ldap_count_entries(), ldap_delete(), ldap_errno(), ldap_error(), ldap_first_attribute(), ldap_first_entry(), ldap_get_attributes(), ldap_get_dn(), ldap_get_entries(), ldap_get_values(), ldap_get_values_len(), ldap_get_option(), ldap_list(), ldap_modify(), ldap_mod_add(), ldap_mod_replace(), ldap_next_attribute(), ldap_next_entry(), ldap_mod_del(), ldap_set_option(), ldap_unbind() | ldap_free_result() | ldap search result
ldap result entry
mcal | mcal_open(), mcal_popen() | mcal_create_calendar(), mcal_rename_calendar(), mcal_rename_calendar(), mcal_delete_calendar(), mcal_fetch_event(), mcal_list_events(), mcal_append_event(), mcal_store_event(), mcal_delete_event(), mcal_list_alarms(), mcal_event_init(), mcal_event_set_category(), mcal_event_set_title(), mcal_event_set_description(), mcal_event_set_start(), mcal_event_set_end(), mcal_event_set_alarm(), mcal_event_set_class(), mcal_next_recurrence(), mcal_event_set_recur_none(), mcal_event_set_recur_daily(), mcal_event_set_recur_weekly(), mcal_event_set_recur_monthly_mday(), mcal_event_set_recur_monthly_wday(), mcal_event_set_recur_yearly(), mcal_fetch_current_stream_event(), mcal_event_add_attribute(), mcal_expunge() | mcal_close() | Link to calendar server
SWFAction
SWFBitmap
SWFButton
SWFDisplayItem
SWFFill
SWFFont
SWFGradient
SWFMorph
SWFMovie
SWFShape
SWFSprite
SWFText
SWFTextField
mnogosearch agent
mnogosearch result
msql link | msql_connect() | msql(), msql_create_db(), msql_createdb(), msql_drop_db(), msql_drop_db(), msql_select_db(), msql_select_db() | msql_close() | Link to mSQL database
msql link persistent | msql_pconnect() | msql(), msql_create_db(), msql_createdb(), msql_drop_db(), msql_drop_db(), msql_select_db(), msql_select_db() | None | Persistent link to mSQL
msql query | msql_db_query(), msql_list_dbs(), msql_list_fields(), msql_list_tables(), msql_query() | msql(), msql_affected_rows(), msql_data_seek(), msql_dbname(), msql_fetch_array(), msql_fetch_field(), msql_fetch_object(), msql_fetch_row(), msql_field_seek(), msql_field_table(), msql_field_flags(), msql_field_len(), msql_field_name(), msql_field_type(), msql_num_fields(), msql_num_rows(), msql_numfields(), msql_numrows(), msql_result() | msql_free_result(), msql_free_result() | mSQL result
mssql link | mssql_connect() | mssql_query(), mssql_select_db() | mssql_close() | Link to Microsoft SQL Server database
mssql link persistent | mssql_pconnect() | mssql_query(), mssql_select_db() | None | Persistent link to Microsoft SQL Server
mssql result | mssql_query() | mssql_data_seek(), mssql_fetch_array(), mssql_fetch_field(), mssql_fetch_object(), mssql_fetch_row(), mssql_field_length(), mssql_field_name(), mssql_field_seek(), mssql_field_type(), mssql_num_fields(), mssql_num_rows(), mssql_result() | mssql_free_result() | Microsoft SQL Server result
mysql link | mysql_connect() | mysql_affected_rows(), mysql_change_user(), mysql_create_db(), mysql_data_seek(), mysql_db_name(), mysql_db_query(), mysql_drop_db(), mysql_errno(), mysql_error(), mysql_insert_id(), mysql_list_dbs(), mysql_list_fields(), mysql_list_tables(), mysql_query(), mysql_result(), mysql_select_db(), mysql_tablename(), mysql_get_host_info(), mysql_get_proto_info(), mysql_get_server_info() | mysql_close() | Link to MySQL database
mysql link persistent | mysql_pconnect() | mysql_affected_rows(), mysql_change_user(), mysql_create_db(), mysql_data_seek(), mysql_db_name(), mysql_db_query(), mysql_drop_db(), mysql_errno(), mysql_error(), mysql_insert_id(), mysql_list_dbs(), mysql_list_fields(), mysql_list_tables(), mysql_query(), mysql_result(), mysql_select_db(), mysql_tablename(), mysql_get_host_info(), mysql_get_proto_info(), mysql_get_server_info() | None | Persistent link to MySQL database
mysql result | mysql_db_query(), mysql_list_dbs(), mysql_list_fields(), mysql_list_processes(), mysql_list_tables(), mysql_query(), mysql_unbuffered_query() | mysql_data_seek(), mysql_db_name(), mysql_fetch_array(), mysql_fetch_assoc(), mysql_fetch_field(), mysql_fetch_lengths(), mysql_fetch_object(), mysql_fetch_row(), mysql_fetch_row(), mysql_field_flags(), mysql_field_name(), mysql_field_len(), mysql_field_seek(), mysql_field_table(), mysql_field_type(), mysql_num_fields(), mysql_num_rows(), mysql_result(), mysql_tablename() | mysql_free_result() | MySQL result
oci8 collection
oci8 connection | ocilogon(), ociplogon(), ocinlogon() | ocicommit(), ociserverversion(), ocinewcursor(), ociparse(), ocierror() | ocilogoff() | Link to Oracle database
oci8 descriptor
oci8 server
oci8 session
oci8 statement | ocinewdescriptor() | ocirollback(), ocinewdescriptor(), ocirowcount(), ocidefinebyname(), ocibindbyname(), ociexecute(), ocinumcols(), ociresult(), ocifetch(), ocifetchinto(), ocifetchstatement(), ocicolumnisnull(), ocicolumnname(), ocicolumnsize(), ocicolumntype(), ocistatementtype(), ocierror() | ocifreestatement() | Oracle Cursor
odbc link | odbc_connect() | odbc_autocommit(), odbc_commit(), odbc_error(), odbc_errormsg(), odbc_exec(), odbc_tables(), odbc_tableprivileges(), odbc_do(), odbc_prepare(), odbc_columns(), odbc_columnprivileges(), odbc_procedurecolumns(), odbc_specialcolumns(), odbc_rollback(), odbc_setoption(), odbc_gettypeinfo(), odbc_primarykeys(), odbc_foreignkeys(), odbc_procedures(), odbc_statistics() | odbc_close() | Link to ODBC database
odbc link persistent | odbc_pconnect() | odbc_autocommit(), odbc_commit(), odbc_error(), odbc_errormsg(), odbc_exec(), odbc_tables(), odbc_tableprivileges(), odbc_do(), odbc_prepare(), odbc_columns(), odbc_columnprivileges(), odbc_procedurecolumns(), odbc_specialcolumns(), odbc_rollback(), odbc_setoption(), odbc_gettypeinfo(), odbc_primarykeys(), odbc_foreignkeys(), odbc_procedures(), odbc_statistics() | None | Persistent link to ODBC database
odbc result | odbc_prepare() | odbc_binmode(), odbc_cursor(), odbc_execute(), odbc_fetch_into(), odbc_fetch_row(), odbc_field_name(), odbc_field_num(), odbc_field_type(), odbc_field_len(), odbc_field_precision(), odbc_field_scale(), odbc_longreadlen(), odbc_num_fields(), odbc_num_rows(), odbc_result(), odbc_result_all(), odbc_setoption() | odbc_free_result() | ODBC result
birdstep link
birdstep result
OpenSSL key | openssl_get_privatekey(), openssl_get_publickey() | openssl_sign(), openssl_seal(), openssl_open(), openssl_verify() | openssl_free_key() | OpenSSL key
OpenSSL X.509 | openssl_x509_read() | openssl_x509_parse(), openssl_x509_checkpurpose() | openssl_x509_free() | Public Key
oracle Cursor | ora_open() | ora_bind(), ora_columnname(), ora_columnsize(), ora_columntype(), ora_error(), ora_errorcode(), ora_exec(), ora_fetch(), ora_fetch_into(), ora_getcolumn(), ora_numcols(), ora_numrows(), ora_parse() | ora_close() | Oracle cursor
oracle link | ora_logon() | ora_do(), ora_error(), ora_errorcode(), ora_rollback(), ora_commitoff(), ora_commiton(), ora_open(), ora_commit() | ora_logoff() | Link to oracle database
oracle link persistent | ora_plogon() | ora_do(), ora_error(), ora_errorcode(), ora_rollback(), ora_commitoff(), ora_commiton(), ora_open(), ora_commit() | None | Persistent link to oracle database
pdf document | pdf_new() | pdf_add_bookmark(), pdf_add_launchlink(), pdf_add_locallink(), pdf_add_note(), pdf_add_pdflink(), pdf_add_weblink(), pdf_arc(), pdf_attach_file(), pdf_begin_page(), pdf_circle(), pdf_clip(), pdf_closepath(), pdf_closepath_fill_stroke(), pdf_closepath_stroke(), pdf_concat(), pdf_continue_text(), pdf_curveto(), pdf_end_page(), pdf_endpath(), pdf_fill(), pdf_fill_stroke(), pdf_findfont(), pdf_get_buffer(), pdf_get_image_height(), pdf_get_image_width(), pdf_get_parameter(), pdf_get_value(), pdf_lineto(), pdf_moveto(), pdf_open_ccitt(), pdf_open_file(), pdf_open_image_file(), pdf_place_image(), pdf_rect(), pdf_restore(), pdf_rotate(), pdf_save(), pdf_scale(), pdf_setdash(), pdf_setflat(), pdf_setfont(), pdf_setgray(), pdf_setgray_fill(), pdf_setgray_stroke(), pdf_setlinecap(), pdf_setlinejoin(), pdf_setlinewidth(), pdf_setmiterlimit(), pdf_setpolydash(), pdf_setrgbcolor(), pdf_setrgbcolor_fill(), pdf_setrgbcolor_stroke(), pdf_set_border_color(), pdf_set_border_dash(), pdf_set_border_style(), pdf_set_char_spacing(), pdf_set_duration(), pdf_set_font(), pdf_set_horiz_scaling(), pdf_set_parameter(), pdf_set_text_pos(), pdf_set_text_rendering(), pdf_set_value(), pdf_set_word_spacing(), pdf_show(), pdf_show_boxed(), pdf_show_xy(), pdf_skew(), pdf_stringwidth(), pdf_stroke(), pdf_translate(), pdf_add_thumbnail(), pdf_arcn(), pdf_begin_pattern(), pdf_begin_template(), pdf_end_pattern(), pdf_end_template(), pdf_initgraphics(), pdf_makespotcolor(), pdf_set_info(), pdf_setcolor(), pdf_setmatrix(), pdf_open_memory_image() | pdf_close(), pdf_delete() | PDF document
pdf image | pdf_open_image(), pdf_open_image_file(), pdf_open_memory_image() | pdf_get_image_height(), pdf_get_image_width(), pdf_open_CCITT(), pdf_place_image() | pdf_close_image() | Image in PDF file
pdf object
pdf outline
pgsql large object | pg_lo_open() | pg_lo_open(), pg_lo_create(), pg_lo_read(), pg_lo_read_all(), pg_lo_seek(), pg_lo_tell(), pg_lo_unlink(), pg_lo_write() | pg_lo_close() | PostgreSQL Large Object
pgsql link | pg_connect() | pg_affected_rows(), pg_query(), pg_send_query(), pg_get_result(), pg_connection_busy(), pg_connection_reset(), pg_connection_status(), pg_last_error(), pg_last_notice(), pg_lo_create(), pg_lo_export(), pg_lo_import(), pg_lo_open(), pg_lo_unlink(), pg_host(), pg_port(), pg_dbname(), pg_options(), pg_copy_from(), pg_copy_to(), pg_end_copy(), pg_put_line(), pg_tty(), pg_trace(), pg_untrace(), pg_set_client_encoding(), pg_client_encoding(), pg_metadata(), pg_convert(), pg_insert(), pg_select(), pg_delete(), pg_update() | pg_close() | Link to PostgreSQL database
pgsql link persistent | pg_pconnect() | pg_affected_rows(), pg_query(), pg_send_query(), pg_get_result(), pg_connection_busy(), pg_connection_reset(), pg_connection_status(), pg_last_error(), pg_last_notice(), pg_lo_create(), pg_lo_export(), pg_lo_import(), pg_lo_open(), pg_lo_unlink(), pg_host(), pg_port(), pg_dbname(), pg_options(), pg_copy_from(), pg_copy_to(), pg_end_copy(), pg_put_line(), pg_tty(), pg_trace(), pg_untrace(), pg_set_client_encoding(), pg_client_encoding(), pg_metadata(), pg_convert(), pg_insert(), pg_select(), pg_delete(), pg_update() | None | Persistent link to PostgreSQL database
pgsql result | pg_execute(), pg_query(), pg_query_params(), pg_get_result() | pg_fetch_array(), pg_fetch_object(), pg_fetch_result(), pg_fetch_row(), pg_field_is_null(), pg_field_name(), pg_field_num(), pg_field_prtlen(), pg_field_size(), pg_field_type(), pg_last_oid(), pg_num_fields(), pg_num_rows(), pg_result_error(), pg_result_status() | pg_free_result() | PostgreSQL result
pgsql string
printer
printer brush
printer font
printer pen
pspell | pspell_new(), pspell_new_config(), pspell_new_personal() | pspell_add_to_personal(), pspell_add_to_session(), pspell_check(), pspell_clear_session(), pspell_config_ignore(), pspell_config_mode(), pspell_config_personal(), pspell_config_repl(), pspell_config_runtogether(), pspell_config_save_repl(), pspell_save_wordlist(), pspell_store_replacement(), pspell_suggest() | None | pspell dictionary
pspell config | pspell_config_create() | pspell_new_config() | None | pspell configuration
Sablotron XSLT | xslt_create() | xslt_closelog(), xslt_openlog(), xslt_run(), xslt_set_sax_handler(), xslt_errno(), xslt_error(), xslt_fetch_result(), xslt_free() | xslt_free() | XSLT parser
shmop | shmop_open() | shmop_read(), shmop_write(), shmop_size(), shmop_delete() | shmop_close()
sockets file descriptor set | socket() | accept_connect(), bind(), connect(), listen(), read(), write() | close() | Socket
sockets i/o vector
stream | opendir() | readdir(), rewinddir() | closedir() | Dir handle
stream | fopen(), tmpfile() | feof(), fflush(), fgetc(), fgetcsv(), fgets(), fgetss(), flock(), fpassthru(), fputs(), fwrite(), fread(), fseek(), ftell(), fstat(), ftruncate(), set_file_buffer(), rewind() | fclose() | File handle
stream | popen(), fsockopen(), pfsockopen() | feof(), fflush(), fgetc(), fgetcsv(), fgets(), fgetss(), fpassthru(), fputs(), fwrite(), fread() | pclose() | Process handle
socket | fflush(), fgetc(), fgetcsv(), fgets(), fgetss(), fpassthru(), fputs(), fwrite(), fread() | fclose() | Socket handle
sybase-db link | sybase_connect() | sybase_query(), sybase_select_db() | sybase_close() | Link to Sybase database using DB library
sybase-db link persistent | sybase_pconnect() | sybase_query(), sybase_select_db() | None | Persistent link to Sybase database using DB library
sybase-db result | sybase_query(), sybase_unbuffered_query() | sybase_data_seek(), sybase_fetch_array(), sybase_fetch_field(), sybase_fetch_object(), sybase_fetch_row(), sybase_field_seek(), sybase_num_fields(), sybase_num_rows(), sybase_result() | sybase_free_result() | Sybase result using DB library
sybase-ct link | sybase_connect() | sybase_affected_rows(), sybase_query(), sybase_select_db() | sybase_close() | Link to Sybase database using CT library
sybase-ct link persistent | sybase_pconnect() | sybase_affected_rows(), sybase_query(), sybase_select_db() | None | Persistent link to Sybase database using CT library
sybase-ct result | sybase_query() | sybase_data_seek(), sybase_fetch_array(), sybase_fetch_field(), sybase_fetch_object(), sybase_fetch_row(), sybase_field_seek(), sybase_num_fields(), sybase_num_rows(), sybase_result() | sybase_free_result() | Sybase result using CT library
sysvsem | sem_get() | sem_acquire() | sem_release() | System V Semaphore
sysvshm | shm_attach() | shm_remove(), shm_put_var(), shm_get_var(), shm_remove_var() | shm_detach() | System V Shared Memory
wddx | wddx_packet_start() | wddx_add_vars() | wddx_packet_end() | WDDX packet
xml | xml_parser_create(), xml_parser_create_ns() | xml_set_object(), xml_set_element_handler(), xml_set_character_data_handler(), xml_set_processing_instruction_handler(), xml_set_default_handler(), xml_set_unparsed_entity_decl_handler(), xml_set_notation_decl_handler(), xml_set_external_entity_ref_handler(), xml_parse(), xml_get_error_code(), xml_error_string(), xml_get_current_line_number(), xml_get_current_column_number(), xml_get_current_byte_index(), xml_parse_into_struct(), xml_parser_set_option(), xml_parser_get_option() | xml_parser_free() | XML parser
zlib | gzopen() | gzeof(), gzgetc(), gzgets(), gzgetss(), gzpassthru(), gzputs(), gzread(), gzrewind(), gzseek(), gztell(), gzwrite() | gzclose() | gz-compressed file

Constantes Pré-definidas
Lista de Filtros Disponíveis
Apêndices


Lista de Filtros Disponíveis

Índice

  • Filtros de String
  • Fitros de Conversão
  • Filtros de Compressão
  • Encryption Filters

A seguir está uma lista de alguns filtros built-in de stream para o uso com stream_filter_append(). Sua versão de PHP pode ter mais filtros (ou menos) que os listados aqui.

Vale reparar que existe uma leve assimetria entre stream_filter_append() e stream_filter_prepend() Toda stream no PHP contem um pequeno buffer de leitura onde ele guarda blocos de dados recuperados do sistema de arquivo ou outro recurso (resource) com o propósito de processar dados da maneira mais eficiente. Assim que os dados são puxados do recurso para o buffer interno da stream, eles são processados imediatamente por qualquer filtro anexo caso a aplicação PHP esteja preparada ou não para receber os dados. Se os dados estão esperando no buffer de leitura quando o filtro for appended, esses dados serão imediatamente processados através daquele buffer, fazendo o fato de que eles estavam esperando num buffer transparente. No entanto, se os dados estão esperando no buffer de leitura quando um filtro é prepended, esses dados NÃO serão processados pelo filtro. Ao invés disso, eles esperarão até o próximo bloco de dados ser recuperado do recurso.

Para uma lista dos filtros instalados na sua versão do PHP use stream_get_filters().

List of Resource Types
Filtros de String
Apêndices


Filtros de String

Cada um dos filtros faz precisamente o que o seu nome implica e corresponde ao comportamente da função de manuseio de string homônima. Para mais informação em um dado filtro, veja a página do manual para a função correspondente.

string.rot13 (since PHP 4.3.0) Uso desse filtro é equivalente a processar todos os dados da stream com a função str_rot13().

Exemplo #1 string.rot13

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'string.rot13');
fwrite($fp, "This is a test.\n");
/* Outputs:  Guvf vf n grfg.   */
?>

string.toupper (since PHP 5.0.0) Uso desse filtro é equivalente a processar todos os dados da stream com a função strtoupper().

Exemplo #2 string.toupper

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'string.toupper');
fwrite($fp, "This is a test.\n");
/* Outputs:  THIS IS A TEST.   */
?>

string.tolower (since PHP 5.0.0) Uso desse filtro é equivalente a processar todos os dados da stream com a função strtolower().

Exemplo #3 string.tolower

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'string.tolower');
fwrite($fp, "This is a test.\n");
/* Outputs:  this is a test.   */
?>

string.strip_tags (since PHP 5.0.0) Uso desse filtro é equivalente a processar todos os dados da stream com a função strip_tags(). Ela aceita parâmetros em uma das duas formas: Ou como uma string contendo uma lista de tags similares ao segundo parâmetro da função strip_tags(), ou como um array dos nomes das tags.

Exemplo #4 string.strip_tags

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'string.strip_tags', STREAM_FILTER_WRITE, "<b><i><u>");
fwrite($fp, "<b>bolded text</b> enlarged to a <h1>level 1 heading</h1>\n");
fclose($fp);
/* Outputs:  <b>bolded text</b> enlarged to a level 1 heading   */

$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'string.strip_tags', STREAM_FILTER_WRITE, array('b','i','u'));
fwrite($fp, "<b>bolded text</b> enlarged to a <h1>level 1 heading</h1>\n");
fclose($fp);
/* Outputs:  <b>bolded text</b> enlarged to a level 1 heading   */
?>
Lista de Filtros Disponíveis
Fitros de Conversão
Lista de Filtros Disponíveis


Fitros de Conversão

Como os filtros de string, os filtros convert fazem ações similar aos seus nomes. Os filtros de conversão foram adicionados com PHP 5.0.0. Para mais informações em um dado filtro, veja a página do manual para a função correspondente.

convert.base64-encode e convert.base64-decode Uso desses filtros são equivalentes ao processamento de todos os dados de stream pelas funções base64_encode() e base64_decode() respectivamente. convert.base64-encode suporta parâmetros no formato de um array associativo. Se line-length for passado, a saída do base64 será quebrada em pedaços de line-length caracteres cada. Se line-break-chars for passado, cada pedaço será delimitado pelos caracteres passados. Esses parâmetros dão o mesmo efeito que usar base64_encode() com chunk_split().

Exemplo #1 convert.base64-encode & convert.base64-decode

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-encode');
fwrite($fp, "This is a test.\n");
fclose($fp);
/* Outputs:  VGhpcyBpcyBhIHRlc3QuCg==  */

$param = array('line-length' => 8, 'line-break-chars' => "\r\n");
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-encode', STREAM_FILTER_WRITE, $param);
fwrite($fp, "This is a test.\n");
fclose($fp);
/* Outputs:  VGhpcyBp
          :  cyBhIHRl
          :  c3QuCg==  */

$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-decode');
fwrite($fp, "VGhpcyBpcyBhIHRlc3QuCg==");
fclose($fp);
/* Outputs:  This is a test.  */
?>

convert.quoted-printable-encode and convert.quoted-printable-decode Uso da versão de decodificação desse filtro é equivalente ao processamente de todos os dados da stream pelas funções quoted_printable_decode(). Não há nenhuma função equivalente a convert.quoted-printable-encode. convert.quoted-printable-encode suporta parâmetros passados como um array associativo. Além dos parâmetros suportados por convert.base64-encode, convert.quoted-printable-encode também suporta argumentos boolean binários e force-encode-first. convert.base64-decode só suporta o parâmetro line-break-chars como uma indução de tipo para cortar o contedo codificado.

Exemplo #2 convert.quoted-printable-encode & convert.quoted-printable-decode

<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.quoted-printable-encode');
fwrite($fp, "This is a test.\n");
/* Outputs:  =This is a test.=0A  */
?>
Filtros de String
Filtros de Compressão
Lista de Filtros Disponíveis


Filtros de Compressão

Enquanto os zlib, bzip2 and zip permitem uma maneira de criar arquivos compatíveis com gzip and bz2 no seu sistema de arquivos local, eles não permitem meios para compressão generalizada sobre streams de rede, nem permitem uma maneira de começar com uma stream não-comprimida e mudar para uma comprimida. Para isso, um filtro comprimido pode ser aplicado a qualquer recuso de stream em qualquer momento.

Nota: Filtros de compressão não geram cabeçalhos e rodapés usados por utilitários de linha de comando como o gzip. Eles apenas comprimem e descomprimem as porções de conteúdo das streams de dados comprimidos.

zlib.deflate (compressão) e zlib.inflate (descompressão) são implementações dos métodos de compressão descritos no » RFC 1951. O filtro deflate recebe até três parâmetros passados como um array associativo. level descreve o nível de compressão a ser usada (1-9). Números mais altos geralmente resultam em cargas menores com o custo de tempo de processamento adicional. Dois níveis especiais de compressão também existem: 0 (para nenhuma compressão), e -1 (padrão interno da zlib -- atualmente 6). window é o logaritmo na base 2 do tamanho da janela de loopback de compressão. Valores mais altos (acima de 15 -- 32768 bytes) resultam em melhor compressão com o custo de memória, enquanto valores menores (abaixo de 9 -- 512 bytes) resultam em pior compressão usando menos memória. O tamanho padrão de window atualmente é 15. memory é uma escala indicando quanta memória deve ser alocada para trabalhar. Valores válidos vão de 1 (alocação máxima) até 9 (alocação mínima). Essa alocação de memória afeta apenas a velocidade e não tem impacto sobre o tamanho da carga gerada.

Nota: O nível de compressão, por ser o parâmetro mais usado normalmente, pode ser passado de maneira alternativa com um simples valor inteiro (ao invés de um elemento de um array).

Filtros de compressão zlib estão disponíveis com o PHP a partir da versão 5.1.0 se o suporte à zlib estiver ativado. Eles também estão disponíveis como uma backport na versão 5.0.x instalando o pacote » zlib_filter da » PECL. Esses filtros não estão disponíveis para o PHP 4.

Exemplo #1 zlib.deflate e zlib.inflate

<?php
$params = array('level' => 6, 'window' => 15, 'memory' => 9);

$original_text = "This is a test.\nThis is only a test.\nThis is not an important string.\n";
echo "The original text is " . strlen($original_text) . " characters long.\n";

$fp = fopen('test.deflated', 'w');
stream_filter_append($fp, 'zlib.deflate', STREAM_FILTER_WRITE, $params);
fwrite($fp, $original_text);
fclose($fp);

echo "The compressed file is " . filesize('test.deflated') . " bytes long.\n";
echo "The original text was:\n";
/* Use readfile and zlib.inflate to decompress on the fly */
readfile('php://filter/zlib.inflate/resource=test.deflated');

/* Generates output:

The original text is 70 characters long.
The compressed file is 56 bytes long.
The original text was:
This is a test.
This is only a test.
This is not an important string.

 */
?>

Exemplo #2 zlib.deflate simples

<?php
$original_text = "This is a test.\nThis is only a test.\nThis is not an important string.\n";
echo "The original text is " . strlen($original_text) . " characters long.\n";

$fp = fopen('test.deflated', 'w');
/* Here "6" indicates compression level 6 */
stream_filter_append($fp, 'zlib.deflate', STREAM_FILTER_WRITE, 6);
fwrite($fp, $original_text);
fclose($fp);

echo "The compressed file is " . filesize('test.deflated') . " bytes long.\n";

/* Generates output:

The original text is 70 characters long.
The compressed file is 56 bytes long.

 */
?>

bzip2.compress e bzip2.decompress funcionam da mesma maneira como os filtros da zlib descritos acima. O filtro bzip2.compress aceitam até dois parâmetros passados como elementos de um array associativo: blocks é um valor inteiro de 1 até 9 especificando o número de blocos de 100kbyte de memória para alocar para o espaço de trabalho. work também é um valor inteiro variando entre 0 e 250 indicando quanto esforço a será gasto usando o método normal de compressão antes de desistir e usar um mais lento, mas mais confiável. Alterar esse parâmetro afeta apenas a velocidade de compressão. Nem o tamanho da saída comprimida nem o uso de memória são alterados por essa configuração. Um fator de trabalho de 0 diz à biblioteca bzip para usar o padrão interno. O filtro bzip2.decompress só aceita um parâmetro, que pode ser passado ou como um valor boolean comum ou como o elemento small de um array associativo. small, quando configurado para o valor TRUE, diz a biblioteca bzip para fazer a descompressão usando o mínimo de memória com o custo de velocidade.

Filtros de compressão bzip2 estão disponíveis no PHP a partir da versão 5.1.0 se o suporte à bz2 estiver ativado. Eles também estão disponíveis como um backport na versão 5.0.x instalando o pacote » bz2_filter da » PECL. Esses filtros não estão disponíveis para o PHP 4.

Exemplo #3 bzip2.compress e bzip2.decompress

<?php
$param = array('blocks' => 9, 'work' => 0);

echo "The original file is " . filesize('LICENSE') . " bytes long.\n";

$fp = fopen('LICENSE.compressed', 'w');
stream_filter_append($fp, 'bzip2.compress', STREAM_FILTER_WRITE, $param);
fwrite($fp, file_get_contents('LICENSE'));
fclose($fp);

echo "The compressed file is " . filesize('LICENSE.compressed') . " bytes long.\n";

/* Generates output:

The original text is 3288 characters long.
The compressed file is 1488 bytes long.

 */
?>
Fitros de Conversão
Encryption Filters
Lista de Filtros Disponíveis


Encryption Filters

Os filtros mcrypt.* e mdecrypt.* permitem criptografar e descriptografar usando libmcrypt. Ambos os conjuntos de filtros suportam os mesmos algoritmos disponíveis na extensão mcrypt na forma de mcrypt.ciphername onde ciphername é o nome da cifra como seria passada para mcrypt_module_open(). Os cinco filtros a seguir estão disponíveis:

parâmetros para os filtros mcrypt
Parâmetro | É Necessário? | Valor Padrão | Exemplos de Valores
Modo | Opcional | cbc | cbc, cfb, ecb, nofb, ofb, stream
algorithms_dir | Opcional | ini_get('mcrypt.algorithms_dir') | Localização do módulos de algoritmos
modes_dir | Opcional | ini_get('mcrypt.modes_dir') | Localização do módulos de modos
iv | Necessário | N/A | Tipicamente 8, 16, or 32 bytes de dados binários. Dependa da cifra.
key | Necessário | N/A | Tipicamente 8, 16, or 32 bytes de dados binários. Dependa da cifra.

Exemplo #1 Criptografando saída de arquivo usando 3DES

<?php
                    $passphrase = 'My secret';

                    /* Turn a human readable passphrase
                    * into a reproducable iv/key pair
                    */
                    $iv = substr(md5('iv'.$passphrase, true), 0, 8);
                    $key = substr(md5('pass1'.$passphrase, true) .
                    md5('pass2'.$passphrase, true), 0, 24);
                    $opts = array('iv'=>$iv, 'key'=>$key);

                $fp = fopen('secert-file.enc', 'wb');
                stream_filter_append($fp, 'mcrypt.tripledes', STREAM_FILTER_WRITE, $opts);
                fwrite($fp, 'Secret secret secret data');
                fclose($fp);
                ?>

Exemplo #2 Lendo um arquivo criptografado

<?php
                    $passphrase = 'My secret';

                    /* Turn a human readable passphrase
                    * into a reproducable iv/key pair
                    */
                    $iv = substr(md5('iv'.$passphrase, true), 0, 8);
                    $key = substr(md5('pass1'.$passphrase, true) .
                    md5('pass2'.$passphrase, true), 0, 24);
                    $opts = array('iv'=>$iv, 'key'=>$key);

                $fp = fopen('secert-file.enc', 'rb');
                stream_filter_append($fp, 'mdecrypt.tripledes', STREAM_FILTER_WRITE, $opts);
                $data = rtrim(stream_get_contents($fp));
                fclose($fp);

                echo $data;
                ?>
Filtros de Compressão
Lista de Transportes via Socket Suportados
Lista de Filtros Disponíveis


Lista de Transportes via Socket Suportados

Índice

  • Internet Domain: TCP, UDP, SSL, e TLS
  • Domínio Unix: Unix e UDG

Segue a lista dos vários estilos de URL para transporte via socket que o PHP tem integrado para uso com funções de fluxos de dados baseados em socket como fsockopen(), e stream_socket_client(). Esses transportes não se aplicam à Extensão de Sockets.

Para uma lista de transportes instalados na sua versão do PHP use stream_get_transports().

Encryption Filters
Internet Domain: TCP, UDP, SSL, e TLS
Apêndices


Internet Domain: TCP, UDP, SSL, e TLS

PHP 4, PHP 5, PHP 6. ssl:// & tls:// desde o PHP 4.3.0 sslv2:// & sslv3:// desde o PHP 5.0.2

Nota: Se nenhum transporte for especificado, tcp:// será usado.

  • 127.0.0.1
  • fe80::1
  • www.example.com
  • tcp://127.0.0.1
  • tcp://fe80::1
  • tcp://www.example.com
  • udp://www.example.com
  • ssl://www.example.com
  • sslv2://www.example.com
  • sslv3://www.example.com
  • tls://www.example.com

Sockets no Domínio Internet esperam um número de porta além do endereço desejado. No caso de fsockopen(), esta é especificada no segundo parâmetro e, portanto, não afeta a formatação da URL. Com stream_socket_client() e funções relacionadas como com as URLs tradicionais, no entanto, o número da porta é especificado como um sufixo à URL delimitada por dois-pontos.

  • tcp://127.0.0.1:80
  • tcp://[fe80::1]:80
  • tcp://www.example.com:80

Nota: Endereços númericos com número de porta em IPv6
No segundo exemplo acima, enquanto os exemplos em IPv4 e nome de host permaneceram iguais, exceto pela adição do dois-pontos e número da porta, o endereço em IPv6 é envolto em colchetes: [fe80::1]. Isso é para destinguir entre os dois pontos de um endereço IPv6 e como separador de porta no IPv4.

Os transportes ssl:// e tls:// (disponíveis apenas quando o suporte a openssl é compilado no PHP) são extensões do transporte tcp:// que incluem encriptação SSL. Desde o PHP 4.3.0, suporte a OpenSSL deve ser compilado estaticamente no PHP, no PHP 5.0.0 ele pode ser compilado como um módulo ou estaticamente.

ssl:// tentará negociar uma conexão SSL V2 ou SSL V3, dependendo das capacidades e preferências do host remoto. sslv2:// e sslv3:// selecionará o protocolo de maneira explícita.

Lista de Transportes via Socket Suportados
Domínio Unix: Unix e UDG
Lista de Transportes via Socket Suportados


Domínio Unix: Unix e UDG

unix:// e udg:// (udg:// desde o PHP 5)

  • unix:///tmp/mysock
  • udg:///tmp/mysock

unix:// provê acessos a conexão via Unix sockets. udg:// provê um transporte alternativo para um socket Unix usando o protocolo de user datagram.

Sockets Unix, diferentes de sockets de Internet, não experam um número de porta. No caso de fsockopen() o parâmetro deve ser o valor 0.

Internet Domain: TCP, UDP, SSL, e TLS
Tabelas de comparação de tipo do PHP
Lista de Transportes via Socket Suportados


Tabelas de comparação de tipo do PHP

As seguintes tabelas demonstram comportamentos no PHP de tipos e operadores de comparação, tanto para comparação solta e restrita. Esse suplemento também se relacionam a seção do manual de type juggling. Inspiração provem de comentários de vários usuários e pelo trabalho na » BlueShoes.

Antes de utilizar essas tabelas, é importante entender tipos e seus significados. Por exemplo, "42" é uma string enquanto 42 é um inteiro. FALSE é um boolean enquanto "false" é uma string.

Nota:

Formulários HTML não passam inteiros, floats ou booleans, eles passam strings. Para descobrir se uma string é numérica, você pode usar is_numeric().

Comparações de $x com funções do PHP
 | gettype() | empty() | is_null() | isset() | boolean
$x = ""; | string | TRUE | FALSE | TRUE | FALSE
$x = NULL | NULL | TRUE | TRUE | FALSE | FALSE
var $x; | NULL | TRUE | TRUE | FALSE | FALSE
$x = array(); | array | TRUE | FALSE | TRUE | FALSE
$x = false; | boolean | TRUE | FALSE | TRUE | FALSE
$x = 1; | integer | FALSE | FALSE | TRUE | TRUE
$x = 42; | integer | FALSE | FALSE | TRUE | TRUE
$x = 0; | integer | TRUE | FALSE | TRUE | FALSE
$x = -1; | integer | FALSE | FALSE | TRUE | TRUE
$x = "1"; | string | FALSE | FALSE | TRUE | TRUE
$x = "0"; * | string | TRUE | FALSE | TRUE | FALSE
$x = "-1"; | string | FALSE | FALSE | TRUE | TRUE
$x = "php"; | string | FALSE | FALSE | TRUE | TRUE
$x = "true"; | string | FALSE | FALSE | TRUE | TRUE
$x = "false"; | string | FALSE | FALSE | TRUE | TRUE

Comparações soltas com ==
 | TRUE | FALSE | 1 | 0 | -1 | "1" | "0" | "-1" | NULL | array() | "php"
TRUE | TRUE | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE
FALSE | FALSE | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE
1 | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE
0 | FALSE | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | TRUE | FALSE | TRUE
-1 | TRUE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE
"1" | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE
"0" | FALSE | TRUE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE
"-1" | TRUE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE
NULL | FALSE | TRUE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE | FALSE
array() | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE
"php" | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE

Comparações restritas com ===
 | TRUE | FALSE | 1 | 0 | -1 | "1" | "0" | "-1" | NULL | array() | "php"
TRUE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE
FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE
1 | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE
0 | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE
-1 | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE
"1" | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE
"0" | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE
"-1" | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE
NULL | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE
array() | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE
"php" | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE

Domínio Unix: Unix e UDG
List of Parser Tokens
Apêndices


List of Parser Tokens

Various parts of the PHP language are represented internally by types like T_SR. PHP outputs identifiers like this one in parse errors, like "Parse error: unexpected T_SR, expecting ',' or ';' in script.php on line 10."

You're supposed to know what T_SR means. For everybody who doesn't know that, here is a table with those identifiers, PHP-syntax and references to the appropriate places in the manual.

Tokens
Token | Syntax | Reference
T_ABSTRACT | abstract | Abstração de Objetos (available since PHP 5.0.0)
T_AND_EQUAL | &= | assignment operators
T_ARRAY | array() | array(), array syntax
T_ARRAY_CAST | (array) | type-casting
T_AS | as | foreach
T_BAD_CHARACTER |  | anything below ASCII 32 except \t (0x09), \n (0x0a) and \r (0x0d)
T_BOOLEAN_AND | && | logical operators
T_BOOLEAN_OR | || | logical operators
T_BOOL_CAST | (bool) or (boolean) | type-casting
T_BREAK | break | break
T_CASE | case | switch
T_CATCH | catch | Exceções (available since PHP 5.0.0)
T_CHARACTER |  | not used anymore
T_CLASS | class | classes and objects
T_CLASS_C | __CLASS__ | magic constants (available since PHP 4.3.0)
T_CLONE | clone | classes and objects (available since PHP 5.0.0)
T_CLOSE_TAG | ?> or %> | escaping from HTML
T_COMMENT | // or #, and /* */ in PHP 5 | comments
T_CONCAT_EQUAL | .= | assignment operators
T_CONST | const | class constants
T_CONSTANT_ENCAPSED_STRING | "foo" or 'bar' | string syntax
T_CONTINUE | continue | continue
T_CURLY_OPEN | {$ | complex variable parsed syntax
T_DEC | -- | incrementing/decrementing operators
T_DECLARE | declare | declare
T_DEFAULT | default | switch
T_DIR | __DIR__ | magic constants (available since PHP 5.3.0)
T_DIV_EQUAL | /= | assignment operators
T_DNUMBER | 0.12, etc | floating point numbers
T_DOC_COMMENT | /** */ | PHPDoc style comments (available since PHP 5.0.0)
T_DO | do | do..while
T_DOLLAR_OPEN_CURLY_BRACES | ${ | complex variable parsed syntax
T_DOUBLE_ARROW | => | array syntax
T_DOUBLE_CAST | (real), (double) or (float) | type-casting
T_DOUBLE_COLON | :: | see T_PAAMAYIM_NEKUDOTAYIM below
T_ECHO | echo | echo()
T_ELSE | else | else
T_ELSEIF | elseif | elseif
T_EMPTY | empty | empty()
T_ENCAPSED_AND_WHITESPACE | " $a" | constant part of string with variables
T_ENDDECLARE | enddeclare | declare, alternative syntax
T_ENDFOR | endfor | for, alternative syntax
T_ENDFOREACH | endforeach | foreach, alternative syntax
T_ENDIF | endif | if, alternative syntax
T_ENDSWITCH | endswitch | switch, alternative syntax
T_ENDWHILE | endwhile | while, alternative syntax
T_END_HEREDOC |  | heredoc syntax
T_EVAL | eval() | eval()
T_EXIT | exit or die | exit(), die()
T_EXTENDS | extends | extends, classes and objects
T_FILE | __FILE__ | magic constants
T_FINAL | final | Palavra-Chave 'final' (available since PHP 5.0.0)
T_FOR | for | for
T_FOREACH | foreach | foreach
T_FUNCTION | function or cfunction | functions
T_FUNC_C | __FUNCTION__ | magic constants (available since PHP 4.3.0)
T_GLOBAL | global | variable scope
T_GOTO | goto | (available since PHP 5.3.0)
T_HALT_COMPILER | __halt_compiler() | __halt_compiler (available since PHP 5.1.0)
T_IF | if | if
T_IMPLEMENTS | implements | Interfaces de Objetos (available since PHP 5.0.0)
T_INC | ++ | incrementing/decrementing operators
T_INCLUDE | include() | include()
T_INCLUDE_ONCE | include_once() | include_once()
T_INLINE_HTML |  | text outside PHP
T_INSTANCEOF | instanceof | type operators (available since PHP 5.0.0)
T_INT_CAST | (int) or (integer) | type-casting
T_INTERFACE | interface | Interfaces de Objetos (available since PHP 5.0.0)
T_ISSET | isset() | isset()
T_IS_EQUAL | == | comparison operators
T_IS_GREATER_OR_EQUAL | >= | comparison operators
T_IS_IDENTICAL | === | comparison operators
T_IS_NOT_EQUAL | != or <> | comparison operators
T_IS_NOT_IDENTICAL | !== | comparison operators
T_IS_SMALLER_OR_EQUAL | <= | comparison operators
T_LINE | __LINE__ | magic constants
T_LIST | list() | list()
T_LNUMBER | 123, 012, 0x1ac, etc | integers
T_LOGICAL_AND | and | logical operators
T_LOGICAL_OR | or | logical operators
T_LOGICAL_XOR | xor | logical operators
T_METHOD_C | __METHOD__ | magic constants (available since PHP 5.0.0)
T_MINUS_EQUAL | -= | assignment operators
T_ML_COMMENT | /* and */ | comments (PHP 4 only)
T_MOD_EQUAL | %= | assignment operators
T_MUL_EQUAL | *= | assignment operators
T_NAMESPACE | namespace | namespaces (available since PHP 5.3.0)
T_NS_C | __NAMESPACE__ | namespaces (available since PHP 5.3.0)
T_NS_SEPARATOR | \ | namespaces (available since PHP 5.3.0)
T_NEW | new | classes and objects
T_NUM_STRING | "$a[0]" | numeric array index inside string
T_OBJECT_CAST | (object) | type-casting
T_OBJECT_OPERATOR | -> | classes and objects
T_OLD_FUNCTION | old_function | (PHP 4 Only)
T_OPEN_TAG | <?php, <? or <% | escaping from HTML
T_OPEN_TAG_WITH_ECHO | <?= or <%= | escaping from HTML
T_OR_EQUAL | |= | assignment operators
T_PAAMAYIM_NEKUDOTAYIM | :: | ::. Also defined as T_DOUBLE_COLON.
T_PLUS_EQUAL | += | assignment operators
T_PRINT | print() | print()
T_PRIVATE | private | classes and objects (available since PHP 5.0.0)
T_PUBLIC | public | classes and objects (available since PHP 5.0.0)
T_PROTECTED | protected | classes and objects (available since PHP 5.0.0)
T_REQUIRE | require() | require()
T_REQUIRE_ONCE | require_once() | require_once()
T_RETURN | return | returning values
T_SL | << | bitwise operators
T_SL_EQUAL | <<= | assignment operators
T_SR | >> | bitwise operators
T_SR_EQUAL | >>= | assignment operators
T_START_HEREDOC | <<< | heredoc syntax
T_STATIC | static | variable scope
T_STRING | "parent" | identifiers, e.g. strings, object oriented keywords like parent and self, functions, classes and more are matched.
T_STRING_CAST | (string) | type-casting
T_STRING_VARNAME | "${a | complex variable parsed syntax
T_SWITCH | switch | switch
T_THROW | throw | Exceções (available since PHP 5.0.0)
T_TRY | try | Exceções (available since PHP 5.0.0)
T_UNSET | unset() | unset()
T_UNSET_CAST | (unset) | type-casting (available since PHP 5.0.0)
T_USE | use | namespaces (available since PHP 5.3.0; reserved since PHP 4.0.0)
T_VAR | var | classes and objects
T_VARIABLE | $foo | variables
T_WHILE | while | while, do..while
T_WHITESPACE | \t \r\n |
T_XOR_EQUAL | ^= | assignment operators

See also token_name().

Tabelas de comparação de tipo do PHP
Guia de nomenclatura em espaço de usuário
Apêndices


Guia de nomenclatura em espaço de usuário

Índice

  • Escopo Global
  • Regras
  • Dicas

O seguinte guia tem como objetivo orientar em como escolher nome para identificadores em código PHP em espaço de usuário. Quando escolher nome para qualquer código que crie símbolos no escopo global, é importante levar em conta as seguintes orientações para previnir que futuras versões do PHP entrem em conflito com o seus símbolos.

List of Parser Tokens
Escopo Global
Apêndices


Escopo Global

Aqui está uma visão geral de artefatos de código que acabam no escopo global:

  • funções

  • classes

  • interfaces

  • constantes (menos constantes de classes)

  • variáveis definidas fora de funções e métodos

Guia de nomenclatura em espaço de usuário
Regras
Guia de nomenclatura em espaço de usuário


Regras

A lista a seguir dá uma visão geral de quais direitos o projeto do PHP reserva para si, quando escolhendo nomes para novos identificadores internos. O guia definitivo é » padrão de código oficial:

  • PHP detém o escopo de alto nível, mas tenta achar nomes descritivos decentes e evita qualquer conflito óbvio.

  • Nomes de funções usam sublinhado (_) entre palavas, enquanto nomes de classe usam a notação camel case (por exemplo NomeDeClasse). Existem algumas exceções para classes e funções mais antigas.

  • O PHP prefixará quaisquer símbolos globais de uma extensão com o nome da extensão (No passado, existiam várias exceções à essa regra). Exemplos:

    • curl_close()

    • mysql_query()

    • PREG_SPLIT_DELIM_CAPTURE

    • new DOMDocument()

    • strpos() (exemplo de um erro do passado)

    • new SplFileObject()

  • Iterators e Exceptions são, no entanto, simplesmente sufixados com "Iterator" e "Exception." Exemplos:

    • ArrayIterator

    • LogicException

  • O PHP reserva todos os símbolos começando com __ como mágicos. É recomendado que você não crie símbolos começando com __ a não ser que você queira usar a funcionalidade mágica documentada. Exemplos:

    • __get()

    • __autoload()

Escopo Global
Dicas
Guia de nomenclatura em espaço de usuário


Dicas

Para escrever código que não sofrerá problemas no futuro, é recomendado prefixar (ou sufixar) qualquer coisa que vá para o escopo global que um prefixo incomum de 3 a 4 letras, separados por um sublinhado (_), É recomendado que, para evitar conflitos com outros códigos existentes, o projeto pesquise prefixos existentes (ou sufixos) usados em outros projetos e anuciem o prefixo (ou sufixo) escolhido adequadamente. Exemplos:

  • MyPx_someFunc()

  • Foo_Date

  • $asdf_dbh

Regras
Sobre o manual
Guia de nomenclatura em espaço de usuário


Sobre o manual

Índice

  • Formatos
  • Sobre as notas de usuários
  • Como ler a definição de função (protótipo)
  • Versões do PHP documentadas neste manual
  • Como encontrar mais informações sobre o PHP
  • Como ajudar a melhorar a documentação
  • Como nós geramos os formatos
  • Traduções
Dicas
Formatos
Apêndices


Formatos

O manual do PHP é fornecido em vários formatos. Esses formatos podem ser divididos em dois grupos: de leitura online e em pacotes para download.

Nota:

Algumas editoras tornaram disponíveis versões impressas desse manual. Nós não podemos recomendar nenhum deles, pois eles se tornam desatualizados rapidamente.

O manual pode ser lido online no » site do PHP e em numerosos mirrors. Para melhor performance, escolha o mirror mais próximo de você. A versão online do manual tem atualmente duas folhas de estilo CSS, para web e para impressão.

Duas vantagens notáveis do manual on-line sobre seus formatos offline são a integração das notas dos usuários e os » atalhos de URL, que você pode usar para alcançar partes do manual rapidamente. Uma desvantagem óbvia é que você precisa estar on-line para ver esta edição do manual.

Existem vários formatos offline do manual, e o formato mais apropriado para você depende do seu sistema operacional de seu estilo pessoal de leitura. Para informações de como esse manual é gerado e quais são esses formatos, veja a seção 'Como nós criamos os formatos' deste apêndice.

A versão mais compatível do manual entre as plataformas é a HTML. Este é fornecido em um único arquivo HTML e como um pacote de arquivos individuais, um para cada seção (o que resulta numa coleção de milhares de arquivos). Esses pacotes são compactados, então um programa para descompressão será necessário para ter os arquivos contidos no pacote.

Para a plataforma Windows, a versão Windows HTML Help do manual condensa os originais no formato HTML para o uso com o Windows HTML Help. Esse formato tem busca de textos, índice completo e marcadores. Vários ambientes de desenvolvimento populares do PHP no Windows se integram com esse formato da documentação para facilitar o acesso a documentação. Visualizadores de CHM para Linux também estão disponíveis. Veja » xCHM or » GnoCHM.

Existe também uma » versão CHM extendida, atualizada menos freqüentemente, mas que provê muitos adicionais recursos. Ela somente está disponível no Microsoft Windows, por causa das tecnologias utilizadas para compilar essas páginas.

Sobre o manual
Sobre as notas de usuários
Sobre o manual


Sobre as notas de usuários

Os comentários de usuários são uma importante presença no desenvolvimento deste manual. Permitindo aos usuários do manual a contribuir com exemplos e outros esclarecimentos através de seus browsers, nós podemos incorporar esse feedback no corpo do manual. E até que as notas sejam incorporadas, os comentários podem ser visualizados na versão online, e em alguns formatos offline.

Nota:

As contribuições dos usuários não são moderadas antes da sua publicação online, então a qualidade desses textos e exemplos ou a veracidade e origem dessas contribuições não pode ser garantida. (Note que não há uma garantia total de qualidade ou exatidão do próprio manual.)

Nota:

Para fins distribuição, as notas fornecidas por usuários são consideradas parte do manual do PHP, e por isso são cobertas pela mesma licença desta documentação (atualmente a licença, Creative Commons Attribution). Para mais detalhes, veja a página de copyright do manual.

Formatos
Como ler a definição de função (protótipo)
Sobre o manual


Como ler a definição de função (protótipo)

Cada função do manual é documentada para referência rápida, e conhecendo como ler e entender o manual fará com que a utilização do PHP seja muito mais fácil. Mais do que simplesmente estudar exemplos ou copiar e colar, todos poderiam saber como ler as definições de função (protótipos). Vamos começar:

Nota: Pré-requisito: Conhecimento básico dos tipos

Mesmo sendo o PHP uma linguagem fracamente tipada, é importante ter um conhecimento básico dos tipo pois eles tem um significado importante.

Definições de função nos dizem que tipo de valor é retornado. Vamos utilizar a definição de strlen() como nosso primeiro exemplo:

strlen

(PHP 4, PHP 5)
strlen -- Obtêm o tamanho da string

Description
int strlen ( string $string )

Retorna o comprimento de uma dada string.

Detalhamento da definição da função
Parte | Descrição
strlen | Nome da função.
(PHP 4, PHP 5) | strlen() está disponível em todos os PHP 4, PHP 5 e PHP 6
int | Tipo do valor que esta função retorna, que no caso é um integer (no caso, o comprimento de uma string é medida em números).
( string $string ) | O primeiro (e neste caso, o único) parâmetro/argumento da função strlen() é chamado string, e é uma string.

Nos podemos reescrever a definição de função acima de maneira genérica:

      tipo retornado    nome da função    ( parametro tipo   parametro tipo )

Muitas funções tem parâmetros múltiplos, como in_array(). Seu protótipo é como:

      bool in_array ( mixed needle, array haystack [, bool strict])

O que isso significa? in_array() retorna um valor booleano, TRUE em caso de sucesso (se needle foi encontrado em haystack) ou FALSE em caso de falha (needle não foi encontrado em haystack). O primeiro parâmetro é chamado needle e pode de ser de vários tipos, por isso nós dizemos que ele é "mixed". Esse needle mixed (que nós estamos procurando) pode ser tanto um valor escalar (string, inteiro, ou float), ou um array. haystack (o array onde nós estamos procurando) é o segundo parâmetro. O terceiro parâmetro opcional é chamado strict. Todos os parâmetros opcionais aparecem dentro de [ colchetes ]. O manual diz que o default do parâmetro strict é o booleano FALSE. Veja a página de do manual de cada função para detalhes de como elas funcionam.

Existem funções com informações de versões do PHP mais complexas. Veja html_entity_decode() como um exemplo:

      (PHP 4 >= 4.3.0, PHP 5)

Isto significa que esta função está somente disponível a partir da versão PHP 4.3.0.

Sobre as notas de usuários
Versões do PHP documentadas neste manual
Sobre o manual


Versões do PHP documentadas neste manual

O manual contém informações sobre o passada, presente, e futuras versões do PHP. Modificações no comportamento são documentados como notas, changelogs, e em trechos nas páginas do manual. A mais antiga versão documentada é PHP 4.1.0, e a última sendo a PHP 6.x.x.

Parte da documentação existe para versão do PHP no CVS, que sempre tem as novidades. Ele já liberado online através do sistema manuseador de versão do CVS, ou via o » snapshot. Estão fique ciente que recursos marcados como "available in CVS" estão normalmente indisponíveis. Embora, vá está disponível na próxima versão estável do PHP. Para download da versão do CVS, veja a página » acesso ao CVS como anônimo.

Então, pode existir documentação para versão do PHP que não foi liberada. (Algo como PHP 6.x.x quando a mais recente versão estável é 5.x.x). Muitas vezes, isto não é erro da documentação. São explicações antecipadas para recursos ainda não disponíveis na edição atual do PHP, mas que estão previstas para essas versões do PHP. Normalmente, PHP adiciona somente novos recursos na principal versão, fora isso são somente reparo de bugs. Usando o formato de versão A.B.C, a principal versão incrementa A ou B e a menor incrementa C. Então por exemplo não é comum uma característica ser documentada como disponível no PHP x.1.x quando a última é PHP x.0.x. Também note que o manual é escrito no tempo presente, não no futuro.

Muitas vezes o manual do PHP lista "Valores Padrões" para diretivas do PHP. Estes valores são baseados no php.ini-dist e não no php.ini-recommended. Eles também referem-se a última versão do PHP. Veja o apêndice da diretiva do PHP para detalhes destes valores e mudanças.

Como ler a definição de função (protótipo)
Como encontrar mais informações sobre o PHP
Sobre o manual


Como encontrar mais informações sobre o PHP

Esse manual não fornece instruções sobre práticas gerais de programação. No primeiro contato - ou iniciando - programadores podem encontrar dificuldade em aprender a programar em PHP apenas usando exclusivamente o manual. Ao invés, procuram textos destinados a orientar os iniciantes.

Há também um grande número de listas de discussão ativas para todos os aspectos da programação com o PHP. Se você se deparar com um problema, considere usar estas listas. Para opções de suporte, incluindo as listas, veja a » página de suporte do PHP.net. Além disso, há uma lista de sites com artigos sobre PHP, fóruns, e galeria de códigos na » página de links do PHP.net.

Versões do PHP documentadas neste manual
Como ajudar a melhorar a documentação
Sobre o manual


Como ajudar a melhorar a documentação

Há várias maneiras de ajudar a melhorar essa documentação.

Se você encontrar erros no manual, em qualquer língua, notifique-nos utilizando o sistema de bugs em » http://bugs.php.net/. Classifique o problema como "Documentation Problem". Todo problema relacionado a documentação, inclusive sobre os formatos do manual, podem ser reportados como bug.

Nota:

Por favor, não abuse do rastreamento de bugs para solicitar ajuda. Ao invés disso, use uma das muitas » opções de suporte.

Você pode também contribuir com comentários, fornecendo exemplos adicionais e esclarecimentos para outros leitores. Mas não envie notificações de bugs usando o sistema de comentários. Para detalhes, você pode ler mais sobre os comentários na seção 'Sobre os comentários de usuários'.

O manual do PHP é traduzido para muitas linguagens. Se você sabe Inglês e alguma outra língua, você pode ajudar com as traduções. Se você deseja iniciar uma nova tradução, ou ajudar num projeto de tradução, leia o » http://doc.php.net/php/dochowto/.

O Projeto de Documentação do PHP tem um canal de IRC onde vários autores aparecem. No #php.doc na irc.efnet.org e discutir sobre melhorias para a documentação.

Como encontrar mais informações sobre o PHP
Como nós geramos os formatos
Sobre o manual


Como nós geramos os formatos

Este manual é escrito em XML, utilizando o » DocBook XML DTD e usando » PhD (The [PH]P based [D]ocBook renderer) para manutenção e formatação.

Utilizando XML como meta dado nos permite gerar vários outros formatos a partir dos arquivos fonte, ao mesmo tempo que a manutenção é feita em um único lugar para todas as versões. As ferramentas utilizadas para formatar o manual online são » PhD. Usamos » Microsoft HTML Help Workshop para criar o formato HTML Help e, é claro, o próprio PHP para fazer algumas conversões adicionais.

O PHP é gerado em várias linguagens e formatos, veja » http://www.php.net/docs.php para mais detalhes. O código-fonte do XML pode ser obtidos do CVS e visualiados em » http://cvs.php.net/. A documentação está armazenada no módulo phpdoc.

Para maiores informações sobre como obter os fontes XML desta documentação, veja em » http://cvs.php.net/. A documentação é guardada no módulo phpdoc.

Como ajudar a melhorar a documentação
Traduções
Sobre o manual


Traduções

O manual do PHP não está disponível apenas em vários formatos, mas também em várias línguas. O texto do manual é primeiramente escrito em Inglês, então um time de pessoas ao redor do mundo fazem a tradução em suas línguas natais. Se a tradução de uma função específica ou de um capítulo ainda não foi realizada, o sistema de compilação do manual utiliza a versão original em Inglês.

As pessoas envolvidas na tradução iniciam a partir dos fontes XML disponíveis em » http://cvs.php.net/ e partir daí traduzem para sua lingua mãe. Eles não utilizam as versões geradas (como HTML ou plain text) como o sistema de compilação do manual que converte os fontes XML para formatos mais legíveis.

Nota:

Para colaborar com a tradução da documentação, entre e contato com o time de documentação e tradução, inscrevendo-se na lista de discussão phpdoc: para isso, encaminhe um e-mail em branco para » phpdoc-subscribe@lists.php.net. O endereço da lista é em phpdoc@lists.php.net. Depois, encaminhe uma mensagem mencionando seu interesse em traduzir o manual para uma língua que você receberá retorno, fornecendo ajuda para você começar a tradução para uma nova língua ou participar do time de documentação da língua desejada.

Atualmente o manual está disponível, parcialmente ou não, em 10 linguagens.

Todos eles podem ser baixados aqui: » http://www.php.net/docs.php.

Como nós geramos os formatos
Creative Commons Attribution 3.0
Sobre o manual


Creative Commons Attribution 3.0

THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.

BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.

1. Definitions

  1. "Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License.
  2. "Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(f) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License.
  3. "Distribute" means to make available to the public the original and copies of the Work or Adaptation, as appropriate, through sale or other transfer of ownership.
  4. "Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License.
  5. "Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work.
  6. "You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation.
  7. "Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images.
  8. "Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium.

2. Fair Dealing Rights. Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws.

3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:

  1. to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections;
  2. to create and Reproduce Adaptations provided that any such Adaptation, including any translation in any medium, takes reasonable steps to clearly label, demarcate or otherwise identify that changes were made to the original Work. For example, a translation could be marked "The original work was translated from English to Spanish," or a modification could indicate "The original work has been modified.";
  3. to Distribute and Publicly Perform the Work including as incorporated in Collections; and,
  4. to Distribute and Publicly Perform Adaptations.

  5. For the avoidance of doubt:

    1. Non-waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License;
    2. Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor waives the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; and,
    3. Voluntary License Schemes. The Licensor waives the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License.

The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. Subject to Section 8(f), all rights not expressly granted by Licensor are hereby reserved.

4. Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:

  1. You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(b), as requested. If You create an Adaptation, upon notice from any Licensor You must, to the extent practicable, remove from the Adaptation any credit as required by Section 4(b), as requested.
  2. If You Distribute, or Publicly Perform the Work or any Adaptations or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and (iv) , consistent with Section 3(b), in the case of an Adaptation, a credit identifying the use of the Work in the Adaptation (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). The credit required by this Section 4 (b) may be implemented in any reasonable manner; provided, however, that in the case of a Adaptation or Collection, at a minimum such credit will appear, if a credit for all contributing authors of the Adaptation or Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties.
  3. Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Adaptations or Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation. Licensor agrees that in those jurisdictions (e.g. Japan), in which any exercise of the right granted in Section 3(b) of this License (the right to make Adaptations) would be deemed to be a distortion, mutilation, modification or other derogatory action prejudicial to the Original Author's honor and reputation, the Licensor will waive or not assert, as appropriate, this Section, to the fullest extent permitted by the applicable national law, to enable You to reasonably exercise Your right under Section 3(b) of this License (right to make Adaptations) but not otherwise.

5. Representations, Warranties and Disclaimer

UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.

6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

7. Termination.

  1. This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Adaptations or Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License.
  2. Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.

8. Miscellaneous

  1. Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License.
  2. Each time You Distribute or Publicly Perform an Adaptation, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License.
  3. If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
  4. No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent
  5. This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You.
  6. The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law.
Traduções
Índice de funções
Apêndices


Índice de funções

Índice de funções

_
__halt_compiler()
A
abs()
acos()
acosh()
addcslashes()
addslashes()
aggregate()
aggregate_info()
aggregate_methods()
aggregate_methods_by_list()
aggregate_methods_by_regexp()
aggregate_properties()
aggregate_properties_by_list()
aggregate_properties_by_regexp()
aggregation_info()
apache_child_terminate()
apache_get_modules()
apache_get_version()
apache_getenv()
apache_lookup_uri()
apache_note()
apache_request_headers()
apache_reset_timeout()
apache_response_headers()
apache_setenv()
apc_add()
apc_cache_info()
apc_clear_cache()
apc_compile_file()
apc_define_constants()
apc_delete()
apc_fetch()
apc_load_constants()
apc_sma_info()
apc_store()
apd_breakpoint()
apd_callstack()
apd_clunk()
apd_continue()
apd_croak()
apd_dump_function_table()
apd_dump_persistent_resources()
apd_dump_regular_resources()
apd_echo()
apd_get_active_symbols()
apd_set_pprof_trace()
apd_set_session()
apd_set_session_trace()
apd_set_socket_session_trace()
array()
array_change_key_case()
array_chunk()
array_combine()
array_count_values()
array_diff()
array_diff_assoc()
array_diff_key()
array_diff_uassoc()
array_diff_ukey()
array_fill()
array_fill_keys()
array_filter()
array_flip()
array_intersect()
array_intersect_assoc()
array_intersect_key()
array_intersect_uassoc()
array_intersect_ukey()
array_key_exists()
array_keys()
array_map()
array_merge()
array_merge_recursive()
array_multisort()
array_pad()
array_pop()
array_product()
array_push()
array_rand()
array_reduce()
array_reverse()
array_search()
array_shift()
array_slice()
array_splice()
array_sum()
array_udiff()
array_udiff_assoc()
array_udiff_uassoc()
array_uintersect()
array_uintersect_assoc()
array_uintersect_uassoc()
array_unique()
array_unshift()
array_values()
array_walk()
array_walk_recursive()
ArrayIterator::current()
ArrayIterator::key()
ArrayIterator::next()
ArrayIterator::rewind()
ArrayIterator::seek()
ArrayIterator::valid()
ArrayObject::__construct()
ArrayObject::append()
ArrayObject::count()
ArrayObject::getIterator()
ArrayObject::offsetExists()
ArrayObject::offsetGet()
ArrayObject::offsetSet()
ArrayObject::offsetUnset()
arsort()
ascii2ebcdic()
asin()
asinh()
asort()
aspell_check()
aspell_check_raw()
aspell_new()
aspell_suggest()
assert()
assert_options()
atan()
atan2()
atanh()
B
base64_decode()
base64_encode()
base_convert()
basename()
bbcode_add_element()
bbcode_create()
bbcode_destroy()
bbcode_parse()
bcadd()
bccomp()
bcdiv()
bcmod()
bcmul()
bcompiler_load()
bcompiler_load_exe()
bcompiler_parse_class()
bcompiler_read()
bcompiler_write_class()
bcompiler_write_constant()
bcompiler_write_exe_footer()
bcompiler_write_file()
bcompiler_write_footer()
bcompiler_write_function()
bcompiler_write_functions_from_file()
bcompiler_write_header()
bcompiler_write_included_filename()
bcpow()
bcpowmod()
bcscale()
bcsqrt()
bcsub()
bin2hex()
bind_textdomain_codeset()
bindec()
bindtextdomain()
bzclose()
bzcompress()
bzdecompress()
bzerrno()
bzerror()
bzerrstr()
bzflush()
bzopen()
bzread()
bzwrite()
C
CachingIterator::__toString()
CachingIterator::hasNext()
CachingIterator::next()
CachingIterator::rewind()
CachingIterator::valid()
CachingRecursiveIterator::getChildren()
CachingRecursiveIterator::hasChildren()
cal_days_in_month()
cal_from_jd()
cal_info()
cal_to_jd()
call_user_func()
call_user_func_array()
call_user_method()
call_user_method_array()
ccvs_add()
ccvs_auth()
ccvs_command()
ccvs_count()
ccvs_delete()
ccvs_done()
ccvs_init()
ccvs_lookup()
ccvs_new()
ccvs_report()
ccvs_return()
ccvs_reverse()
ccvs_sale()
ccvs_status()
ccvs_textvalue()
ccvs_void()
ceil()
chdir()
checkdate()
checkdnsrr()
chgrp()
chmod()
chop()
chown()
chr()
chroot()
chunk_split()
class_exists()
class_implements()
class_parents()
classkit_import()
classkit_method_add()
classkit_method_copy()
classkit_method_redefine()
classkit_method_remove()
classkit_method_rename()
clearstatcache()
closedir()
closelog()
com()
com_addref()
com_create_guid()
com_event_sink()
com_get()
com_get_active_object()
com_invoke()
com_isenum()
com_load()
com_load_typelib()
com_message_pump()
com_print_typeinfo()
com_propget()
com_propput()
com_propset()
com_release()
com_set()
compact()
configuration()
connection_aborted()
connection_status()
connection_timeout()
constant()
constants()
constants()
constants()
convert_cyr_string()
convert_uudecode()
convert_uuencode()
copy()
cos()
cosh()
count()
count_chars()
cpdf_add_annotation()
cpdf_add_outline()
cpdf_arc()
cpdf_begin_text()
cpdf_circle()
cpdf_clip()
cpdf_close()
cpdf_closepath()
cpdf_closepath_fill_stroke()
cpdf_closepath_stroke()
cpdf_continue_text()
cpdf_curveto()
cpdf_end_text()
cpdf_fill()
cpdf_fill_stroke()
cpdf_finalize()
cpdf_finalize_page()
cpdf_global_set_document_limits()
cpdf_import_jpeg()
cpdf_lineto()
cpdf_moveto()
cpdf_newpath()
cpdf_open()
cpdf_output_buffer()
cpdf_page_init()
cpdf_place_inline_image()
cpdf_rect()
cpdf_restore()
cpdf_rlineto()
cpdf_rmoveto()
cpdf_rotate()
cpdf_rotate_text()
cpdf_save()
cpdf_save_to_file()
cpdf_scale()
cpdf_set_action_url()
cpdf_set_char_spacing()
cpdf_set_creator()
cpdf_set_current_page()
cpdf_set_font()
cpdf_set_font_directories()
cpdf_set_font_map_file()
cpdf_set_horiz_scaling()
cpdf_set_keywords()
cpdf_set_leading()
cpdf_set_page_animation()
cpdf_set_subject()
cpdf_set_text_matrix()
cpdf_set_text_pos()
cpdf_set_text_rendering()
cpdf_set_text_rise()
cpdf_set_title()
cpdf_set_viewer_preferences()
cpdf_set_word_spacing()
cpdf_setdash()
cpdf_setflat()
cpdf_setgray()
cpdf_setgray_fill()
cpdf_setgray_stroke()
cpdf_setlinecap()
cpdf_setlinejoin()
cpdf_setlinewidth()
cpdf_setmiterlimit()
cpdf_setrgbcolor()
cpdf_setrgbcolor_fill()
cpdf_setrgbcolor_stroke()
cpdf_show()
cpdf_show_xy()
cpdf_stringwidth()
cpdf_stroke()
cpdf_text()
cpdf_translate()
crack_check()
crack_closedict()
crack_getlastmessage()
crack_opendict()
crc32()
create_function()
crypt()
ctype_alnum()
ctype_alpha()
ctype_cntrl()
ctype_digit()
ctype_graph()
ctype_lower()
ctype_print()
ctype_punct()
ctype_space()
ctype_upper()
ctype_xdigit()
curl_close()
curl_copy_handle()
curl_errno()
curl_error()
curl_exec()
curl_getinfo()
curl_init()
curl_multi_add_handle()
curl_multi_close()
curl_multi_exec()
curl_multi_getcontent()
curl_multi_info_read()
curl_multi_init()
curl_multi_remove_handle()
curl_multi_select()
curl_setopt()
curl_setopt_array()
curl_version()
current()
cybercash_base64_decode()
cybercash_base64_encode()
cybercash_decr()
cybercash_encr()
cybermut_creerformulairecm()
cybermut_creerreponsecm()
cybermut_testmac()
cyrus_authenticate()
cyrus_bind()
cyrus_close()
cyrus_connect()
cyrus_query()
cyrus_unbind()
D
date()
date_create()
date_date_set()
date_default_timezone_get()
date_default_timezone_set()
date_format()
date_isodate_set()
date_modify()
date_offset_get()
date_parse()
date_sun_info()
date_sunrise()
date_sunset()
date_time_set()
date_timezone_get()
date_timezone_set()
db2_autocommit()
db2_bind_param()
db2_client_info()
db2_close()
db2_column_privileges()
db2_columns()
db2_commit()
db2_conn_error()
db2_conn_errormsg()
db2_connect()
db2_cursor_type()
db2_escape_string()
db2_exec()
db2_execute()
db2_fetch_array()
db2_fetch_assoc()
db2_fetch_both()
db2_fetch_object()
db2_fetch_row()
db2_field_display_size()
db2_field_name()
db2_field_num()
db2_field_precision()
db2_field_scale()
db2_field_type()
db2_field_width()
db2_foreign_keys()
db2_free_result()
db2_free_stmt()
db2_get_option()
db2_lob_read()
db2_next_result()
db2_num_fields()
db2_num_rows()
db2_pconnect()
db2_prepare()
db2_primary_keys()
db2_procedure_columns()
db2_procedures()
db2_result()
db2_rollback()
db2_server_info()
db2_set_option()
db2_special_columns()
db2_statistics()
db2_stmt_error()
db2_stmt_errormsg()
db2_table_privileges()
db2_tables()
dba_close()
dba_delete()
dba_exists()
dba_fetch()
dba_firstkey()
dba_handlers()
dba_insert()
dba_key_split()
dba_list()
dba_nextkey()
dba_open()
dba_optimize()
dba_popen()
dba_replace()
dba_sync()
dbase_add_record()
dbase_close()
dbase_create()
dbase_delete_record()
dbase_get_header_info()
dbase_get_record()
dbase_get_record_with_names()
dbase_numfields()
dbase_numrecords()
dbase_open()
dbase_pack()
dbase_replace_record()
dblist()
dbmclose()
dbmdelete()
dbmexists()
dbmfetch()
dbmfirstkey()
dbminsert()
dbmnextkey()
dbmopen()
dbmreplace()
dbplus_add()
dbplus_aql()
dbplus_chdir()
dbplus_close()
dbplus_curr()
dbplus_errcode()
dbplus_errno()
dbplus_find()
dbplus_first()
dbplus_flush()
dbplus_freealllocks()
dbplus_freelock()
dbplus_freerlocks()
dbplus_getlock()
dbplus_getunique()
dbplus_info()
dbplus_last()
dbplus_lockrel()
dbplus_next()
dbplus_open()
dbplus_prev()
dbplus_rchperm()
dbplus_rcreate()
dbplus_rcrtexact()
dbplus_rcrtlike()
dbplus_resolve()
dbplus_restorepos()
dbplus_rkeys()
dbplus_ropen()
dbplus_rquery()
dbplus_rrename()
dbplus_rsecindex()
dbplus_runlink()
dbplus_rzap()
dbplus_savepos()
dbplus_setindex()
dbplus_setindexbynumber()
dbplus_sql()
dbplus_tcl()
dbplus_tremove()
dbplus_undo()
dbplus_undoprepare()
dbplus_unlockrel()
dbplus_unselect()
dbplus_update()
dbplus_xlockrel()
dbplus_xunlockrel()
dbx_close()
dbx_compare()
dbx_connect()
dbx_error()
dbx_escape_string()
dbx_fetch_row()
dbx_query()
dbx_sort()
dcgettext()
dcngettext()
deaggregate()
debug_backtrace()
debug_print_backtrace()
debug_zval_dump()
debugger_off()
debugger_on()
decbin()
dechex()
decoct()
define()
define_syslog_variables()
defined()
deg2rad()
delete()
dgettext()
die()
dio_close()
dio_fcntl()
dio_open()
dio_read()
dio_seek()
dio_stat()
dio_tcsetattr()
dio_truncate()
dio_write()
dir()
DirectoryIterator::__construct()
DirectoryIterator::current()
DirectoryIterator::getATime()
DirectoryIterator::getCTime()
DirectoryIterator::getFilename()
DirectoryIterator::getGroup()
DirectoryIterator::getInode()
DirectoryIterator::getMTime()
DirectoryIterator::getOwner()
DirectoryIterator::getPath()
DirectoryIterator::getPathname()
DirectoryIterator::getPerms()
DirectoryIterator::getSize()
DirectoryIterator::getType()
DirectoryIterator::isDir()
DirectoryIterator::isDot()
DirectoryIterator::isExecutable()
DirectoryIterator::isFile()
DirectoryIterator::isLink()
DirectoryIterator::isReadable()
DirectoryIterator::isWritable()
DirectoryIterator::key()
DirectoryIterator::next()
DirectoryIterator::rewind()
DirectoryIterator::valid()
dirname()
disk_free_space()
disk_total_space()
diskfreespace()
dl()
dngettext()
dns_check_record()
dns_get_mx()
dns_get_record()
dom_import_simplexml()
DOMAttr->__construct()
DOMAttr->isId()
DomAttribute->name()
DomAttribute->set_value()
DomAttribute->specified()
DomAttribute->value()
DOMCharacterData->appendData()
DOMCharacterData->deleteData()
DOMCharacterData->insertData()
DOMCharacterData->replaceData()
DOMCharacterData->substringData()
DOMComment->__construct()
DOMDocument->__construct()
DomDocument->add_root()
DomDocument->create_attribute()
DomDocument->create_cdata_section()
DomDocument->create_comment()
DomDocument->create_element()
DomDocument->create_element_ns()
DomDocument->create_entity_reference()
DomDocument->create_processing_instruction()
DomDocument->create_text_node()
DOMDocument->createAttribute()
DOMDocument->createAttributeNS()
DOMDocument->createCDATASection()
DOMDocument->createComment()
DOMDocument->createDocumentFragment()
DOMDocument->createElement()
DOMDocument->createElementNS()
DOMDocument->createEntityReference()
DOMDocument->createProcessingInstruction()
DOMDocument->createTextNode()
DomDocument->doctype()
DomDocument->document_element()
DomDocument->dump_file()
DomDocument->dump_mem()
DomDocument->get_element_by_id()
DomDocument->get_elements_by_tagname()
DOMDocument->getElementById()
DOMDocument->getElementsByTagName()
DOMDocument->getElementsByTagNameNS()
DomDocument->html_dump_mem()
DOMDocument->importNode()
DOMDocument->load()
DOMDocument->loadHTML()
DOMDocument->loadHTMLFile()
DOMDocument->loadXML()
DOMDocument->normalizeDocument()
DOMDocument->registerNodeClass()
DOMDocument->relaxNGValidate()
DOMDocument->relaxNGValidateSource()
DOMDocument->save()
DOMDocument->saveHTML()
DOMDocument->saveHTMLFile()
DOMDocument->saveXML()
DOMDocument->schemaValidate()
DOMDocument->schemaValidateSource()
DOMDocument->validate()
DomDocument->xinclude()
DOMDocument->xinclude()
DOMDocumentFragment->appendXML()
DomDocumentType->entities()
DomDocumentType->internal_subset()
DomDocumentType->name()
DomDocumentType->notations()
DomDocumentType->public_id()
DomDocumentType->system_id()
DOMElement->__construct()
DomElement->get_attribute()
DomElement->get_attribute_node()
DomElement->get_elements_by_tagname()
DOMElement->getAttribute()
DOMElement->getAttributeNode()
DOMElement->getAttributeNodeNS()
DOMElement->getAttributeNS()
DOMElement->getElementsByTagName()
DOMElement->getElementsByTagNameNS()
DomElement->has_attribute()
DOMElement->hasAttribute()
DOMElement->hasAttributeNS()
DomElement->remove_attribute()
DOMElement->removeAttribute()
DOMElement->removeAttributeNode()
DOMElement->removeAttributeNS()
DomElement->set_attribute()
DomElement->set_attribute_node()
DOMElement->setAttribute()
DOMElement->setAttributeNode()
DOMElement->setAttributeNodeNS()
DOMElement->setAttributeNS()
DOMElement->setIdAttribute()
DOMElement->setIdAttributeNode()
DOMElement->setIdAttributeNS()
DomElement->tagname()
DOMEntityReference->__construct()
DOMImplementation->__construct()
DOMImplementation->createDocument()
DOMImplementation->createDocumentType()
DOMImplementation->hasFeature()
DOMNamedNodeMap->getNamedItem()
DOMNamedNodeMap->getNamedItemNS()
DOMNamedNodeMap->item()
DomNode->add_namespace()
DomNode->append_child()
DomNode->append_sibling()
DOMNode->appendChild()
DomNode->attributes()
DomNode->child_nodes()
DomNode->clone_node()
DOMNode->cloneNode()
DomNode->dump_node()
DomNode->first_child()
DomNode->get_content()
DomNode->has_attributes()
DomNode->has_child_nodes()
DOMNode->hasAttributes()
DOMNode->hasChildNodes()
DomNode->insert_before()
DOMNode->insertBefore()
DomNode->is_blank_node()
DOMNode->isDefaultNamespace()
DOMNode->isSameNode()
DOMNode->isSupported()
DomNode->last_child()
DOMNode->lookupNamespaceURI()
DOMNode->lookupPrefix()
DomNode->next_sibling()
DomNode->node_name()
DomNode->node_type()
DomNode->node_value()
DOMNode->normalize()
DomNode->owner_document()
DomNode->parent_node()
DomNode->prefix()
DomNode->previous_sibling()
DomNode->remove_child()
DOMNode->removeChild()
DomNode->replace_child()
DomNode->replace_node()
DOMNode->replaceChild()
DomNode->set_content()
DomNode->set_name()
DomNode->set_namespace()
DomNode->unlink_node()
DOMNodelist->item()
DOMProcessingInstruction->__construct()
DomProcessingInstruction->data()
DomProcessingInstruction->target()
DOMText->__construct()
DOMText->isWhitespaceInElementContent()
DOMText->splitText()
domxml_new_doc()
domxml_open_file()
domxml_open_mem()
domxml_version()
domxml_xmltree()
domxml_xslt_stylesheet()
domxml_xslt_stylesheet_doc()
domxml_xslt_stylesheet_file()
domxml_xslt_version()
DOMXPath->__construct()
DOMXPath->evaluate()
DOMXPath->query()
DOMXPath->registerNamespace()
DomXsltStylesheet->process()
DomXsltStylesheet->result_dump_file()
DomXsltStylesheet->result_dump_mem()
dotnet()
dotnet_load()
doubleval()
E
each()
easter_date()
easter_days()
ebcdic2ascii()
echo()
empty()
enchant_broker_describe()
enchant_broker_dict_exists()
enchant_broker_free()
enchant_broker_free_dict()
enchant_broker_get_error()
enchant_broker_init()
enchant_broker_list_dicts()
enchant_broker_request_dict()
enchant_broker_request_pwl_dict()
enchant_broker_set_ordering()
enchant_dict_add_to_personal()
enchant_dict_add_to_session()
enchant_dict_check()
enchant_dict_describe()
enchant_dict_get_error()
enchant_dict_is_in_session()
enchant_dict_quick_check()
enchant_dict_store_replacement()
enchant_dict_suggest()
end()
ereg()
ereg_replace()
eregi()
eregi_replace()
error_get_last()
error_log()
error_reporting()
escapeshellarg()
escapeshellcmd()
eval()
exec()
exif_imagetype()
exif_read_data()
exif_tagname()
exif_thumbnail()
exit()
exp()
expect_expectl()
expect_popen()
explode()
expm1()
extension_loaded()
extract()
ezmlm_hash()
F
fam_cancel_monitor()
fam_close()
fam_monitor_collection()
fam_monitor_directory()
fam_monitor_file()
fam_next_event()
fam_open()
fam_pending()
fam_resume_monitor()
fam_suspend_monitor()
fbsql_affected_rows()
fbsql_autocommit()
fbsql_blob_size()
fbsql_change_user()
fbsql_clob_size()
fbsql_close()
fbsql_commit()
fbsql_connect()
fbsql_create_blob()
fbsql_create_clob()
fbsql_create_db()
fbsql_data_seek()
fbsql_database()
fbsql_database_password()
fbsql_db_query()
fbsql_db_status()
fbsql_drop_db()
fbsql_errno()
fbsql_error()
fbsql_fetch_array()
fbsql_fetch_assoc()
fbsql_fetch_field()
fbsql_fetch_lengths()
fbsql_fetch_object()
fbsql_fetch_row()
fbsql_field_flags()
fbsql_field_len()
fbsql_field_name()
fbsql_field_seek()
fbsql_field_table()
fbsql_field_type()
fbsql_free_result()
fbsql_get_autostart_info()
fbsql_hostname()
fbsql_insert_id()
fbsql_list_dbs()
fbsql_list_fields()
fbsql_list_tables()
fbsql_next_result()
fbsql_num_fields()
fbsql_num_rows()
fbsql_password()
fbsql_pconnect()
fbsql_query()
fbsql_read_blob()
fbsql_read_clob()
fbsql_result()
fbsql_rollback()
fbsql_rows_fetched()
fbsql_select_db()
fbsql_set_characterset()
fbsql_set_lob_mode()
fbsql_set_password()
fbsql_set_transaction()
fbsql_start_db()
fbsql_stop_db()
fbsql_table_name()
fbsql_tablename()
fbsql_username()
fbsql_warnings()
fclose()
fdf_add_doc_javascript()
fdf_add_template()
fdf_close()
fdf_create()
fdf_enum_values()
fdf_errno()
fdf_error()
fdf_get_ap()
fdf_get_attachment()
fdf_get_encoding()
fdf_get_file()
fdf_get_flags()
fdf_get_opt()
fdf_get_status()
fdf_get_value()
fdf_get_version()
fdf_header()
fdf_next_field_name()
fdf_open()
fdf_open_string()
fdf_remove_item()
fdf_save()
fdf_save_string()
fdf_set_ap()
fdf_set_encoding()
fdf_set_file()
fdf_set_flags()
fdf_set_javascript_action()
fdf_set_on_import_javascript()
fdf_set_opt()
fdf_set_status()
fdf_set_submit_form_action()
fdf_set_target_frame()
fdf_set_value()
fdf_set_version()
feof()
fflush()
fgetc()
fgetcsv()
fgets()
fgetss()
file()
file_exists()
file_get_contents()
file_put_contents()
fileatime()
filectime()
filegroup()
fileinode()
filemtime()
fileowner()
fileperms()
filepro()
filepro_fieldcount()
filepro_fieldname()
filepro_fieldtype()
filepro_fieldwidth()
filepro_retrieve()
filepro_rowcount()
filesize()
filetype()
filter_has_var()
filter_id()
filter_input()
filter_input_array()
filter_list()
filter_var()
filter_var_array()
FilterIterator::current()
FilterIterator::getInnerIterator()
FilterIterator::key()
FilterIterator::next()
FilterIterator::rewind()
FilterIterator::valid()
finfo->__construct()
finfo_buffer()
finfo_close()
finfo_file()
finfo_open()
finfo_set_flags()
floatval()
flock()
floor()
flush()
fmod()
fnmatch()
fopen()
fpassthru()
fprintf()
fputcsv()
fputs()
fread()
frenchtojd()
fribidi_log2vis()
fscanf()
fseek()
fsockopen()
fstat()
ftell()
ftok()
ftp_alloc()
ftp_cdup()
ftp_chdir()
ftp_chmod()
ftp_close()
ftp_connect()
ftp_delete()
ftp_exec()
ftp_fget()
ftp_fput()
ftp_get()
ftp_get_option()
ftp_login()
ftp_mdtm()
ftp_mkdir()
ftp_nb_continue()
ftp_nb_fget()
ftp_nb_fput()
ftp_nb_get()
ftp_nb_put()
ftp_nlist()
ftp_pasv()
ftp_put()
ftp_pwd()
ftp_quit()
ftp_raw()
ftp_rawlist()
ftp_rename()
ftp_rmdir()
ftp_set_option()
ftp_site()
ftp_size()
ftp_ssl_connect()
ftp_systype()
ftruncate()
func_get_arg()
func_get_args()
func_num_args()
function_exists()
fwrite()
G
gd_info()
geoip_country_code3_by_name()
geoip_country_code_by_name()
geoip_country_name_by_name()
geoip_database_info()
geoip_db_avail()
geoip_db_filename()
geoip_db_get_all_info()
geoip_id_by_name()
geoip_org_by_name()
geoip_record_by_name()
geoip_region_by_name()
get_browser()
get_cfg_var()
get_class()
get_class_methods()
get_class_vars()
get_current_user()
get_declared_classes()
get_declared_interfaces()
get_defined_constants()
get_defined_functions()
get_defined_vars()
get_extension_funcs()
get_headers()
get_html_translation_table()
get_include_path()
get_included_files()
get_loaded_extensions()
get_magic_quotes_gpc()
get_magic_quotes_runtime()
get_meta_tags()
get_object_vars()
get_parent_class()
get_required_files()
get_resource_type()
getallheaders()
getcwd()
getdate()
getenv()
gethostbyaddr()
gethostbyname()
gethostbynamel()
getimagesize()
getlastmod()
getmxrr()
getmygid()
getmyinode()
getmypid()
getmyuid()
getopt()
getprotobyname()
getprotobynumber()
getrandmax()
getrusage()
getservbyname()
getservbyport()
gettext()
gettimeofday()
gettype()
glob()
gmdate()
gmmktime()
gmp_abs()
gmp_add()
gmp_and()
gmp_clrbit()
gmp_cmp()
gmp_com()
gmp_div()
gmp_div_q()
gmp_div_qr()
gmp_div_r()
gmp_divexact()
gmp_fact()
gmp_gcd()
gmp_gcdext()
gmp_hamdist()
gmp_init()
gmp_intval()
gmp_invert()
gmp_jacobi()
gmp_legendre()
gmp_mod()
gmp_mul()
gmp_neg()
gmp_nextprime()
gmp_or()
gmp_perfect_square()
gmp_popcount()
gmp_pow()
gmp_powm()
gmp_prob_prime()
gmp_random()
gmp_scan0()
gmp_scan1()
gmp_setbit()
gmp_sign()
gmp_sqrt()
gmp_sqrtrem()
gmp_strval()
gmp_sub()
gmp_testbit()
gmp_xor()
gmstrftime()
gnupg_adddecryptkey()
gnupg_addencryptkey()
gnupg_addsignkey()
gnupg_cleardecryptkeys()
gnupg_clearencryptkeys()
gnupg_clearsignkeys()
gnupg_decrypt()
gnupg_decryptverify()
gnupg_encrypt()
gnupg_encryptsign()
gnupg_export()
gnupg_geterror()
gnupg_getprotocol()
gnupg_import()
gnupg_keyinfo()
gnupg_setarmor()
gnupg_seterrormode()
gnupg_setsignmode()
gnupg_sign()
gnupg_verify()
gopher_parsedir()
gregoriantojd()
gzclose()
gzcompress()
gzdecode()
gzdeflate()
gzencode()
gzeof()
gzfile()
gzgetc()
gzgets()
gzgetss()
gzinflate()
gzopen()
gzpassthru()
gzputs()
gzread()
gzrewind()
gzseek()
gztell()
gzuncompress()
gzwrite()
H
haruannotation()
HaruAnnotation::setBorderStyle()
HaruAnnotation::setHighlightMode()
HaruAnnotation::setIcon()
HaruAnnotation::setOpened()
harudestination()
HaruDestination::setFit()
HaruDestination::setFitB()
HaruDestination::setFitBH()
HaruDestination::setFitBV()
HaruDestination::setFitH()
HaruDestination::setFitR()
HaruDestination::setFitV()
HaruDestination::setXYZ()
harudoc()
HaruDoc::__construct()
HaruDoc::addPage()
HaruDoc::addPageLabel()
HaruDoc::createOutline()
HaruDoc::getCurrentEncoder()
HaruDoc::getCurrentPage()
HaruDoc::getEncoder()
HaruDoc::getFont()
HaruDoc::getInfoAttr()
HaruDoc::getPageLayout()
HaruDoc::getPageMode()
HaruDoc::getStreamSize()
HaruDoc::insertPage()
HaruDoc::loadJPEG()
HaruDoc::loadPNG()
HaruDoc::loadRaw()
HaruDoc::loadTTC()
HaruDoc::loadTTF()
HaruDoc::loadType1()
HaruDoc::output()
HaruDoc::readFromStream()
HaruDoc::resetError()
HaruDoc::resetStream()
HaruDoc::save()
HaruDoc::saveToStream()
HaruDoc::setCompressionMode()
HaruDoc::setCurrentEncoder()
HaruDoc::setEncryptionMode()
HaruDoc::setInfoAttr()
HaruDoc::setInfoDateAttr()
HaruDoc::setOpenAction()
HaruDoc::setPageLayout()
HaruDoc::setPageMode()
HaruDoc::setPagesConfiguration()
HaruDoc::setPassword()
HaruDoc::setPermission()
HaruDoc::useCNSEncodings()
HaruDoc::useCNSFonts()
HaruDoc::useCNTEncodings()
HaruDoc::useCNTFonts()
HaruDoc::useJPEncodings()
HaruDoc::useJPFonts()
HaruDoc::useKREncodings()
HaruDoc::useKRFonts()
haruencoder()
HaruEncoder::getByteType()
HaruEncoder::getType()
HaruEncoder::getUnicode()
HaruEncoder::getWritingMode()
haruexception()
harufont()
HaruFont::getAscent()
HaruFont::getCapHeight()
HaruFont::getDescent()
HaruFont::getEncodingName()
HaruFont::getFontName()
HaruFont::getTextWidth()
HaruFont::getUnicodeWidth()
HaruFont::getXHeight()
HaruFont::measureText()
haruimage()
HaruImage::getBitsPerComponent()
HaruImage::getColorSpace()
HaruImage::getHeight()
HaruImage::getSize()
HaruImage::getWidth()
HaruImage::setColorMask()
HaruImage::setMaskImage()
haruoutline()
HaruOutline::setDestination()
HaruOutline::setOpened()
harupage()
HaruPage::arc()
HaruPage::beginText()
HaruPage::circle()
HaruPage::closePath()
HaruPage::concat()
HaruPage::createDestination()
HaruPage::createLinkAnnotation()
HaruPage::createTextAnnotation()
HaruPage::createURLAnnotation()
HaruPage::curveTo()
HaruPage::curveTo2()
HaruPage::curveTo3()
HaruPage::drawImage()
HaruPage::ellipse()
HaruPage::endPath()
HaruPage::endText()
HaruPage::eofill()
HaruPage::eoFillStroke()
HaruPage::fill()
HaruPage::fillStroke()
HaruPage::getCharSpace()
HaruPage::getCMYKFill()
HaruPage::getCMYKStroke()
HaruPage::getCurrentFont()
HaruPage::getCurrentFontSize()
HaruPage::getCurrentPos()
HaruPage::getCurrentTextPos()
HaruPage::getDash()
HaruPage::getFillingColorSpace()
HaruPage::getFlatness()
HaruPage::getGMode()
HaruPage::getGrayFill()
HaruPage::getGrayStroke()
HaruPage::getHeight()
HaruPage::getHorizontalScaling()
HaruPage::getLineCap()
HaruPage::getLineJoin()
HaruPage::getLineWidth()
HaruPage::getMiterLimit()
HaruPage::getRGBFill()
HaruPage::getRGBStroke()
HaruPage::getStrokingColorSpace()
HaruPage::getTextLeading()
HaruPage::getTextMatrix()
HaruPage::getTextRenderingMode()
HaruPage::getTextRise()
HaruPage::getTextWidth()
HaruPage::getTransMatrix()
HaruPage::getWidth()
HaruPage::getWordSpace()
HaruPage::lineTo()
HaruPage::measureText()
HaruPage::moveTextPos()
HaruPage::moveTo()
HaruPage::moveToNextLine()
HaruPage::rectangle()
HaruPage::setCharSpace()
HaruPage::setCMYKFill()
HaruPage::setCMYKStroke()
HaruPage::setDash()
HaruPage::setFlatness()
HaruPage::setFontAndSize()
HaruPage::setGrayFill()
HaruPage::setGrayStroke()
HaruPage::setHeight()
HaruPage::setHorizontalScaling()
HaruPage::setLineCap()
HaruPage::setLineJoin()
HaruPage::setLineWidth()
HaruPage::setMiterLimit()
HaruPage::setRGBFill()
HaruPage::setRGBStroke()
HaruPage::setRotate()
HaruPage::setSize()
HaruPage::setSlideShow()
HaruPage::setTextLeading()
HaruPage::setTextMatrix()
HaruPage::setTextRenderingMode()
HaruPage::setTextRise()
HaruPage::setWidth()
HaruPage::setWordSpace()
HaruPage::showText()
HaruPage::showTextNextLine()
HaruPage::stroke()
HaruPage::textOut()
HaruPage::textRect()
hash()
hash_algos()
hash_file()
hash_final()
hash_hmac()
hash_hmac_file()
hash_init()
hash_update()
hash_update_file()
hash_update_stream()
header()
headers_list()
headers_sent()
hebrev()
hebrevc()
hexdec()
highlight_file()
highlight_string()
html_entity_decode()
htmlentities()
htmlspecialchars()
htmlspecialchars_decode()
http_build_cookie()
http_build_query()
http_build_str()
http_build_url()
http_cache_etag()
http_cache_last_modified()
http_chunked_decode()
http_date()
http_deflate()
http_get()
http_get_request_body()
http_get_request_body_stream()
http_get_request_headers()
http_head()
http_inflate()
http_match_etag()
http_match_modified()
http_match_request_header()
http_negotiate_charset()
http_negotiate_content_type()
http_negotiate_language()
http_parse_cookie()
http_parse_headers()
http_parse_message()
http_parse_params()
http_persistent_handles_clean()
http_persistent_handles_count()
http_persistent_handles_ident()
http_post_data()
http_post_fields()
http_put_data()
http_put_file()
http_put_stream()
http_redirect()
http_request()
http_request_body_encode()
http_request_method_exists()
http_request_method_name()
http_request_method_register()
http_request_method_unregister()
http_send_content_disposition()
http_send_content_type()
http_send_data()
http_send_file()
http_send_last_modified()
http_send_status()
http_send_stream()
http_support()
http_throttle()
httpdeflatestream()
HttpDeflateStream::__construct()
HttpDeflateStream::factory()
HttpDeflateStream::finish()
HttpDeflateStream::flush()
HttpDeflateStream::update()
httpinflatestream()
HttpInflateStream::__construct()
HttpInflateStream::factory()
HttpInflateStream::finish()
HttpInflateStream::flush()
HttpInflateStream::update()
httpmessage()
HttpMessage::__construct()
HttpMessage::addHeaders()
HttpMessage::detach()
HttpMessage::factory()
HttpMessage::fromEnv()
HttpMessage::fromString()
HttpMessage::getBody()
HttpMessage::getHeader()
HttpMessage::getHeaders()
HttpMessage::getHttpVersion()
HttpMessage::getParentMessage()
HttpMessage::getRequestMethod()
HttpMessage::getRequestUrl()
HttpMessage::getResponseCode()
HttpMessage::getResponseStatus()
HttpMessage::getType()
HttpMessage::guessContentType()
HttpMessage::prepend()
HttpMessage::reverse()
HttpMessage::send()
HttpMessage::setBody()
HttpMessage::setHeaders()
HttpMessage::setHttpVersion()
HttpMessage::setRequestMethod()
HttpMessage::setRequestUrl()
HttpMessage::setResponseCode()
HttpMessage::setResponseStatus()
HttpMessage::setType()
HttpMessage::toMessageTypeObject()
HttpMessage::toString()
httpquerystring()
HttpQueryString::__construct()
HttpQueryString::get()
HttpQueryString::mod()
HttpQueryString::set()
HttpQueryString::singleton()
HttpQueryString::toArray()
HttpQueryString::toString()
HttpQueryString::xlate()
httprequest()
HttpRequest::__construct()
HttpRequest::addCookies()
HttpRequest::addHeaders()
HttpRequest::addPostFields()
HttpRequest::addPostFile()
HttpRequest::addPutData()
HttpRequest::addQueryData()
HttpRequest::addRawPostData()
HttpRequest::addSslOptions()
HttpRequest::clearHistory()
HttpRequest::enableCookies()
HttpRequest::getContentType()
HttpRequest::getCookies()
HttpRequest::getHeaders()
HttpRequest::getHistory()
HttpRequest::getMethod()
HttpRequest::getOptions()
HttpRequest::getPostFields()
HttpRequest::getPostFiles()
HttpRequest::getPutData()
HttpRequest::getPutFile()
HttpRequest::getQueryData()
HttpRequest::getRawPostData()
HttpRequest::getRawRequestMessage()
HttpRequest::getRawResponseMessage()
HttpRequest::getRequestMessage()
HttpRequest::getResponseBody()
HttpRequest::getResponseCode()
HttpRequest::getResponseCookies()
HttpRequest::getResponseData()
HttpRequest::getResponseHeader()
HttpRequest::getResponseInfo()
HttpRequest::getResponseMessage()
HttpRequest::getResponseStatus()
HttpRequest::getSslOptions()
HttpRequest::getUrl()
HttpRequest::resetCookies()
HttpRequest::send()
HttpRequest::setContentType()
HttpRequest::setCookies()
HttpRequest::setHeaders()
HttpRequest::setMethod()
HttpRequest::setOptions()
HttpRequest::setPostFields()
HttpRequest::setPostFiles()
HttpRequest::setPutData()
HttpRequest::setPutFile()
HttpRequest::setQueryData()
HttpRequest::setRawPostData()
HttpRequest::setSslOptions()
HttpRequest::setUrl()
httprequestpool()
HttpRequestPool::__construct()
HttpRequestPool::__destruct()
HttpRequestPool::attach()
HttpRequestPool::detach()
HttpRequestPool::getAttachedRequests()
HttpRequestPool::getFinishedRequests()
HttpRequestPool::reset()
HttpRequestPool::send()
HttpRequestPool::socketPerform()
HttpRequestPool::socketSelect()
httpresponse()
HttpResponse::capture()
HttpResponse::getBufferSize()
HttpResponse::getCache()
HttpResponse::getCacheControl()
HttpResponse::getContentDisposition()
HttpResponse::getContentType()
HttpResponse::getData()
HttpResponse::getETag()
HttpResponse::getFile()
HttpResponse::getGzip()
HttpResponse::getHeader()
HttpResponse::getLastModified()
HttpResponse::getRequestBody()
HttpResponse::getRequestBodyStream()
HttpResponse::getRequestHeaders()
HttpResponse::getStream()
HttpResponse::getThrottleDelay()
HttpResponse::guessContentType()
HttpResponse::redirect()
HttpResponse::send()
HttpResponse::setBufferSize()
HttpResponse::setCache()
HttpResponse::setCacheControl()
HttpResponse::setContentDisposition()
HttpResponse::setContentType()
HttpResponse::setData()
HttpResponse::setETag()
HttpResponse::setFile()
HttpResponse::setGzip()
HttpResponse::setHeader()
HttpResponse::setLastModified()
HttpResponse::setStream()
HttpResponse::setThrottleDelay()
HttpResponse::status()
hw_api->checkin()
hw_api->checkout()
hw_api->children()
hw_api->content()
hw_api->copy()
hw_api->dbstat()
hw_api->dcstat()
hw_api->dstanchors()
hw_api->dstofsrcanchor()
hw_api->find()
hw_api->ftstat()
hw_api->hwstat()
hw_api->identify()
hw_api->info()
hw_api->insert()
hw_api->insertanchor()
hw_api->insertcollection()
hw_api->insertdocument()
hw_api->link()
hw_api->lock()
hw_api->move()
hw_api->object()
hw_api->objectbyanchor()
hw_api->parents()
hw_api->remove()
hw_api->replace()
hw_api->setcommittedversion()
hw_api->srcanchors()
hw_api->srcsofdst()
hw_api->unlock()
hw_api->user()
hw_api->userlist()
hw_api_attribute()
hw_api_attribute->key()
hw_api_attribute->langdepvalue()
hw_api_attribute->value()
hw_api_attribute->values()
hw_api_content()
hw_api_content->mimetype()
hw_api_content->read()
hw_api_error->count()
hw_api_error->reason()
hw_api_object()
hw_api_object->assign()
hw_api_object->attreditable()
hw_api_object->count()
hw_api_object->insert()
hw_api_object->remove()
hw_api_object->title()
hw_api_object->value()
hw_api_reason->description()
hw_api_reason->type()
hw_array2objrec()
hw_changeobject()
hw_children()
hw_childrenobj()
hw_close()
hw_connect()
hw_connection_info()
hw_cp()
hw_deleteobject()
hw_docbyanchor()
hw_docbyanchorobj()
hw_document_attributes()
hw_document_bodytag()
hw_document_content()
hw_document_setcontent()
hw_document_size()
hw_dummy()
hw_edittext()
hw_error()
hw_errormsg()
hw_free_document()
hw_getanchors()
hw_getanchorsobj()
hw_getandlock()
hw_getchildcoll()
hw_getchildcollobj()
hw_getchilddoccoll()
hw_getchilddoccollobj()
hw_getobject()
hw_getobjectbyquery()
hw_getobjectbyquerycoll()
hw_getobjectbyquerycollobj()
hw_getobjectbyqueryobj()
hw_getparents()
hw_getparentsobj()
hw_getrellink()
hw_getremote()
hw_getremotechildren()
hw_getsrcbydestobj()
hw_gettext()
hw_getusername()
hw_identify()
hw_incollections()
hw_info()
hw_inscoll()
hw_insdoc()
hw_insertanchors()
hw_insertdocument()
hw_insertobject()
hw_mapid()
hw_modifyobject()
hw_mv()
hw_new_document()
hw_objrec2array()
hw_output_document()
hw_pconnect()
hw_pipedocument()
hw_root()
hw_setlinkroot()
hw_stat()
hw_unlock()
hw_who()
hwapi_hgcsp()
hypot()
I
ibase_add_user()
ibase_affected_rows()
ibase_backup()
ibase_blob_add()
ibase_blob_cancel()
ibase_blob_close()
ibase_blob_create()
ibase_blob_echo()
ibase_blob_get()
ibase_blob_import()
ibase_blob_info()
ibase_blob_open()
ibase_close()
ibase_commit()
ibase_commit_ret()
ibase_connect()
ibase_db_info()
ibase_delete_user()
ibase_drop_db()
ibase_errcode()
ibase_errmsg()
ibase_execute()
ibase_fetch_assoc()
ibase_fetch_object()
ibase_fetch_row()
ibase_field_info()
ibase_free_event_handler()
ibase_free_query()
ibase_free_result()
ibase_gen_id()
ibase_maintain_db()
ibase_modify_user()
ibase_name_result()
ibase_num_fields()
ibase_num_params()
ibase_param_info()
ibase_pconnect()
ibase_prepare()
ibase_query()
ibase_restore()
ibase_rollback()
ibase_rollback_ret()
ibase_server_info()
ibase_service_attach()
ibase_service_detach()
ibase_set_event_handler()
ibase_timefmt()
ibase_trans()
ibase_wait_event()
iconv()
iconv_get_encoding()
iconv_mime_decode()
iconv_mime_decode_headers()
iconv_mime_encode()
iconv_set_encoding()
iconv_strlen()
iconv_strpos()
iconv_strrpos()
iconv_substr()
id3_get_frame_long_name()
id3_get_frame_short_name()
id3_get_genre_id()
id3_get_genre_list()
id3_get_genre_name()
id3_get_tag()
id3_get_version()
id3_remove_tag()
id3_set_tag()
idate()
ifx_affected_rows()
ifx_blobinfile_mode()
ifx_byteasvarchar()
ifx_close()
ifx_connect()
ifx_copy_blob()
ifx_create_blob()
ifx_create_char()
ifx_do()
ifx_error()
ifx_errormsg()
ifx_fetch_row()
ifx_fieldproperties()
ifx_fieldtypes()
ifx_free_blob()
ifx_free_char()
ifx_free_result()
ifx_get_blob()
ifx_get_char()
ifx_getsqlca()
ifx_htmltbl_result()
ifx_nullformat()
ifx_num_fields()
ifx_num_rows()
ifx_pconnect()
ifx_prepare()
ifx_query()
ifx_textasvarchar()
ifx_update_blob()
ifx_update_char()
ifxus_close_slob()
ifxus_create_slob()
ifxus_free_slob()
ifxus_open_slob()
ifxus_read_slob()
ifxus_seek_slob()
ifxus_tell_slob()
ifxus_write_slob()
ignore_user_abort()
iis_add_server()
iis_get_dir_security()
iis_get_script_map()
iis_get_server_by_comment()
iis_get_server_by_path()
iis_get_server_rights()
iis_get_service_state()
iis_remove_server()
iis_set_app_settings()
iis_set_dir_security()
iis_set_script_map()
iis_set_server_rights()
iis_start_server()
iis_start_service()
iis_stop_server()
iis_stop_service()
image2wbmp()
image_type_to_extension()
image_type_to_mime_type()
imagealphablending()
imageantialias()
imagearc()
imagechar()
imagecharup()
imagecolorallocate()
imagecolorallocatealpha()
imagecolorat()
imagecolorclosest()
imagecolorclosestalpha()
imagecolorclosesthwb()
imagecolordeallocate()
imagecolorexact()
imagecolorexactalpha()
imagecolormatch()
imagecolorresolve()
imagecolorresolvealpha()
imagecolorset()
imagecolorsforindex()
imagecolorstotal()
imagecolortransparent()
imageconvolution()
imagecopy()
imagecopymerge()
imagecopymergegray()
imagecopyresampled()
imagecopyresized()
imagecreate()
imagecreatefromgd()
imagecreatefromgd2()
imagecreatefromgd2part()
imagecreatefromgif()
imagecreatefromjpeg()
imagecreatefrompng()
imagecreatefromstring()
imagecreatefromwbmp()
imagecreatefromxbm()
imagecreatefromxpm()
imagecreatetruecolor()
imagedashedline()
imagedestroy()
imageellipse()
imagefill()
imagefilledarc()
imagefilledellipse()
imagefilledpolygon()
imagefilledrectangle()
imagefilltoborder()
imagefilter()
imagefontheight()
imagefontwidth()
imageftbbox()
imagefttext()
imagegammacorrect()
imagegd()
imagegd2()
imagegif()
imagegrabscreen()
imagegrabwindow()
imageinterlace()
imageistruecolor()
imagejpeg()
imagelayereffect()
imageline()
imageloadfont()
imagepalettecopy()
imagepng()
imagepolygon()
imagepsbbox()
imagepsencodefont()
imagepsextendfont()
imagepsfreefont()
imagepsloadfont()
imagepsslantfont()
imagepstext()
imagerectangle()
imagerotate()
imagesavealpha()
imagesetbrush()
imagesetpixel()
imagesetstyle()
imagesetthickness()
imagesettile()
imagestring()
imagestringup()
imagesx()
imagesy()
imagetruecolortopalette()
imagettfbbox()
imagettftext()
imagetypes()
imagewbmp()
imagexbm()
imagick()
Imagick::__construct()
Imagick::adaptiveBlurImage()
Imagick::adaptiveResizeImage()
Imagick::adaptiveSharpenImage()
Imagick::adaptiveThresholdImage()
Imagick::addImage()
Imagick::addNoiseImage()
Imagick::affineTransformImage()
Imagick::annotateImage()
Imagick::appendImages()
Imagick::averageImages()
Imagick::blackThresholdImage()
Imagick::blurImage()
Imagick::borderImage()
Imagick::charcoalImage()
Imagick::chopImage()
Imagick::clear()
Imagick::clipImage()
Imagick::clipPathImage()
Imagick::clone()
Imagick::coalesceImages()
Imagick::colorFloodfillImage()
Imagick::colorizeImage()
Imagick::combineImages()
Imagick::commentImage()
Imagick::compareImageChannels()
Imagick::compareImageLayers()
Imagick::compositeImage()
Imagick::contrastImage()
Imagick::contrastStretchImage()
Imagick::convolveImage()
Imagick::cropImage()
Imagick::cropThumbnailImage()
Imagick::current()
Imagick::cycleColormapImage()
Imagick::deconstructImages()
Imagick::despeckleImage()
Imagick::destroy()
Imagick::displayImage()
Imagick::displayImages()
Imagick::drawImage()
Imagick::edgeImage()
Imagick::embossImage()
Imagick::enhanceImage()
Imagick::equalizeImage()
Imagick::evaluateImage()
Imagick::flattenImages()
Imagick::flipImage()
Imagick::flopImage()
Imagick::frameImage()
Imagick::fxImage()
Imagick::gammaImage()
Imagick::gaussianBlurImage()
Imagick::getCompression()
Imagick::getCompressionQuality()
Imagick::getCopyright()
Imagick::getFilename()
Imagick::getFormat()
Imagick::getHomeURL()
Imagick::getImage()
Imagick::getImageBackgroundColor()
Imagick::getImageBlob()
Imagick::getImageBluePrimary()
Imagick::getImageBorderColor()
Imagick::getImageChannelDepth()
Imagick::getImageChannelDistortion()
Imagick::getImageChannelExtrema()
Imagick::getImageChannelMean()
Imagick::getImageChannelStatistics()
Imagick::getImageColormapColor()
Imagick::getImageColors()
Imagick::getImageColorspace()
Imagick::getImageCompose()
Imagick::getImageDelay()
Imagick::getImageDepth()
Imagick::getImageDispose()
Imagick::getImageDistortion()
Imagick::getImageExtrema()
Imagick::getImageFilename()
Imagick::getImageFormat()
Imagick::getImageGamma()
Imagick::getImageGeometry()
Imagick::getImageGreenPrimary()
Imagick::getImageHeight()
Imagick::getImageHistogram()
Imagick::getImageIndex()
Imagick::getImageInterlaceScheme()
Imagick::getImageInterpolateMethod()
Imagick::getImageIterations()
Imagick::getImageMatte()
Imagick::getImageMatteColor()
Imagick::getImagePage()
Imagick::getImagePixelColor()
Imagick::getImageProfile()
Imagick::getImageProperty()
Imagick::getImageRedPrimary()
Imagick::getImageRegion()
Imagick::getImageRenderingIntent()
Imagick::getImageResolution()
Imagick::getImageScene()
Imagick::getImageSignature()
Imagick::getImageSize()
Imagick::getImageTicksPerSecond()
Imagick::getImageTotalInkDensity()
Imagick::getImageType()
Imagick::getImageUnits()
Imagick::getImageVirtualPixelMethod()
Imagick::getImageWhitePoint()
Imagick::getImageWidth()
Imagick::getInterlaceScheme()
Imagick::getNumberImages()
Imagick::getOption()
Imagick::getPackageName()
Imagick::getPage()
Imagick::getPixelIterator()
Imagick::getPixelRegionIterator()
Imagick::getQuantumDepth()
Imagick::getQuantumRange()
Imagick::getReleaseDate()
Imagick::getResource()
Imagick::getResourceLimit()
Imagick::getSamplingFactors()
Imagick::getSize()
Imagick::getSizeOffset()
Imagick::getVersion()
Imagick::hasNextImage()
Imagick::hasPreviousImage()
Imagick::identifyImage()
Imagick::implodeImage()
Imagick::labelImage()
Imagick::levelImage()
Imagick::linearStretchImage()
Imagick::magnifyImage()
Imagick::matteFloodfillImage()
Imagick::medianFilterImage()
Imagick::minifyImage()
Imagick::modulateImage()
Imagick::montageImage()
Imagick::morphImages()
Imagick::mosaicImages()
Imagick::motionBlurImage()
Imagick::negateImage()
Imagick::newImage()
Imagick::newPseudoImage()
Imagick::nextImage()
Imagick::normalizeImage()
Imagick::oilPaintImage()
Imagick::optimizeImageLayers()
Imagick::paintOpaqueImage()
Imagick::paintTransparentImage()
Imagick::pingImage()
Imagick::pingImageBlob()
Imagick::pingImageFile()
Imagick::polaroidImage()
Imagick::posterizeImage()
Imagick::previousImage()
Imagick::profileImage()
Imagick::queryFontMetrics()
Imagick::queryFonts()
Imagick::queryFormats()
Imagick::radialBlurImage()
Imagick::raiseImage()
Imagick::randomThresholdImage()
Imagick::readImage()
Imagick::readImageBlob()
Imagick::readImageFile()
Imagick::reduceNoiseImage()
Imagick::removeImage()
Imagick::removeImageProfile()
Imagick::render()
Imagick::resampleImage()
Imagick::resizeImage()
Imagick::rollImage()
Imagick::rotateImage()
Imagick::roundCorners()
Imagick::sampleImage()
Imagick::scaleImage()
Imagick::separateImageChannel()
Imagick::sepiaToneImage()
Imagick::setBackgroundColor()
Imagick::setCompression()
Imagick::setCompressionQuality()
Imagick::setFilename()
Imagick::setFirstIterator()
Imagick::setFormat()
Imagick::setImageBackgroundColor()
Imagick::setImageBias()
Imagick::setImageBluePrimary()
Imagick::setImageBorderColor()
Imagick::setImageChannelDepth()
Imagick::setImageColormapColor()
Imagick::setImageColorspace()
Imagick::setImageCompose()
Imagick::setImageCompression()
Imagick::setImageDelay()
Imagick::setImageDepth()
Imagick::setImageDispose()
Imagick::setImageExtent()
Imagick::setImageFilename()
Imagick::setImageFormat()
Imagick::setImageGamma()
Imagick::setImageGreenPrimary()
Imagick::setImageIndex()
Imagick::setImageInterlaceScheme()
Imagick::setImageInterpolateMethod()
Imagick::setImageIterations()
Imagick::setImageMatte()
Imagick::setImageMatteColor()
Imagick::setImagePage()
Imagick::setImageProfile()
Imagick::setImageProperty()
Imagick::setImageRedPrimary()
Imagick::setImageRenderingIntent()
Imagick::setImageResolution()
Imagick::setImageScene()
Imagick::setImageTicksPerSecond()
Imagick::setImageType()
Imagick::setImageUnits()
Imagick::setImageVirtualPixelMethod()
Imagick::setImageWhitePoint()
Imagick::setInterlaceScheme()
Imagick::setOption()
Imagick::setPage()
Imagick::setResolution()
Imagick::setResourceLimit()
Imagick::setSamplingFactors()
Imagick::setSize()
Imagick::setSizeOffset()
Imagick::setType()
Imagick::shadeImage()
Imagick::shadowImage()
Imagick::sharpenImage()
Imagick::shaveImage()
Imagick::shearImage()
Imagick::sigmoidalContrastImage()
Imagick::sketchImage()
Imagick::solarizeImage()
Imagick::spliceImage()
Imagick::spreadImage()
Imagick::steganoImage()
Imagick::stereoImage()
Imagick::stripImage()
Imagick::swirlImage()
Imagick::textureImage()
Imagick::thresholdImage()
Imagick::thumbnailImage()
Imagick::tintImage()
Imagick::transverseImage()
Imagick::trimImage()
Imagick::uniqueImageColors()
Imagick::unsharpMaskImage()
Imagick::valid()
Imagick::vignetteImage()
Imagick::waveImage()
Imagick::whiteThresholdImage()
Imagick::writeImage()
Imagick::writeImages()
ImagickDraw::__construct()
ImagickDraw::affine()
ImagickDraw::annotation()
ImagickDraw::arc()
ImagickDraw::bezier()
ImagickDraw::circle()
ImagickDraw::clear()
ImagickDraw::clone()
ImagickDraw::color()
ImagickDraw::comment()
ImagickDraw::composite()
ImagickDraw::destroy()
ImagickDraw::ellipse()
ImagickDraw::getClipPath()
ImagickDraw::getClipRule()
ImagickDraw::getClipUnits()
ImagickDraw::getFillColor()
ImagickDraw::getFillOpacity()
ImagickDraw::getFillRule()
ImagickDraw::getFont()
ImagickDraw::getFontFamily()
ImagickDraw::getFontSize()
ImagickDraw::getFontStyle()
ImagickDraw::getFontWeight()
ImagickDraw::getGravity()
ImagickDraw::getStrokeAntialias()
ImagickDraw::getStrokeColor()
ImagickDraw::getStrokeDashArray()
ImagickDraw::getStrokeDashOffset()
ImagickDraw::getStrokeLineCap()
ImagickDraw::getStrokeLineJoin()
ImagickDraw::getStrokeMiterLimit()
ImagickDraw::getStrokeOpacity()
ImagickDraw::getStrokeWidth()
ImagickDraw::getTextAlignment()
ImagickDraw::getTextAntialias()
ImagickDraw::getTextDecoration()
ImagickDraw::getTextEncoding()
ImagickDraw::getTextUnderColor()
ImagickDraw::getVectorGraphics()
ImagickDraw::line()
ImagickDraw::matte()
ImagickDraw::pathClose()
ImagickDraw::pathCurveToAbsolute()
ImagickDraw::pathCurveToQuadraticBezierAbsolute()
ImagickDraw::pathCurveToQuadraticBezierRelative()
ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute()
ImagickDraw::pathCurveToQuadraticBezierSmoothRelative()
ImagickDraw::pathCurveToRelative()
ImagickDraw::pathCurveToSmoothAbsolute()
ImagickDraw::pathCurveToSmoothRelative()
ImagickDraw::pathEllipticArcAbsolute()
ImagickDraw::pathEllipticArcRelative()
ImagickDraw::pathFinish()
ImagickDraw::pathLineToAbsolute()
ImagickDraw::pathLineToHorizontalAbsolute()
ImagickDraw::pathLineToHorizontalRelative()
ImagickDraw::pathLineToRelative()
ImagickDraw::pathLineToVerticalAbsolute()
ImagickDraw::pathLineToVerticalRelative()
ImagickDraw::pathMoveToAbsolute()
ImagickDraw::pathMoveToRelative()
ImagickDraw::pathStart()
ImagickDraw::point()
ImagickDraw::polygon()
ImagickDraw::polyline()
ImagickDraw::pop()
ImagickDraw::popClipPath()
ImagickDraw::popDefs()
ImagickDraw::popPattern()
ImagickDraw::push()
ImagickDraw::pushClipPath()
ImagickDraw::pushDefs()
ImagickDraw::pushPattern()
ImagickDraw::rectangle()
ImagickDraw::render()
ImagickDraw::rotate()
ImagickDraw::roundRectangle()
ImagickDraw::scale()
ImagickDraw::setClipPath()
ImagickDraw::setClipRule()
ImagickDraw::setClipUnits()
ImagickDraw::setFillAlpha()
ImagickDraw::setFillColor()
ImagickDraw::setFillOpacity()
ImagickDraw::setFillPatternURL()
ImagickDraw::setFillRule()
ImagickDraw::setFont()
ImagickDraw::setFontFamily()
ImagickDraw::setFontSize()
ImagickDraw::setFontStretch()
ImagickDraw::setFontStyle()
ImagickDraw::setFontWeight()
ImagickDraw::setGravity()
ImagickDraw::setStrokeAlpha()
ImagickDraw::setStrokeAntialias()
ImagickDraw::setStrokeColor()
ImagickDraw::setStrokeDashArray()
ImagickDraw::setStrokeDashOffset()
ImagickDraw::setStrokeLineCap()
ImagickDraw::setStrokeLineJoin()
ImagickDraw::setStrokeMiterLimit()
ImagickDraw::setStrokeOpacity()
ImagickDraw::setStrokePatternURL()
ImagickDraw::setStrokeWidth()
ImagickDraw::setTextAlignment()
ImagickDraw::setTextAntialias()
ImagickDraw::setTextDecoration()
ImagickDraw::setTextEncoding()
ImagickDraw::setTextUnderColor()
ImagickDraw::setVectorGraphics()
ImagickDraw::setViewbox()
ImagickDraw::skewX()
ImagickDraw::skewY()
ImagickDraw::translate()
ImagickPixel::__construct()
ImagickPixel::clear()
ImagickPixel::destroy()
ImagickPixel::getColor()
ImagickPixel::getColorCount()
ImagickPixel::getColorValue()
ImagickPixel::getHSL()
ImagickPixel::isSimilar()
ImagickPixel::setColor()
ImagickPixel::setColorValue()
ImagickPixel::setHSL()
ImagickPixelIterator::__construct()
ImagickPixelIterator::clear()
ImagickPixelIterator::destroy()
ImagickPixelIterator::getCurrentIteratorRow()
ImagickPixelIterator::getIteratorRow()
ImagickPixelIterator::getNextIteratorRow()
ImagickPixelIterator::getPreviousIteratorRow()
ImagickPixelIterator::newPixelIterator()
ImagickPixelIterator::newPixelRegionIterator()
ImagickPixelIterator::resetIterator()
ImagickPixelIterator::setIteratorFirstRow()
ImagickPixelIterator::setIteratorLastRow()
ImagickPixelIterator::setIteratorRow()
ImagickPixelIterator::syncIterator()
imap_8bit()
imap_alerts()
imap_append()
imap_base64()
imap_binary()
imap_body()
imap_bodystruct()
imap_check()
imap_clearflag_full()
imap_close()
imap_createmailbox()
imap_delete()
imap_deletemailbox()
imap_errors()
imap_expunge()
imap_fetch_overview()
imap_fetchbody()
imap_fetchheader()
imap_fetchstructure()
imap_get_quota()
imap_get_quotaroot()
imap_getacl()
imap_getmailboxes()
imap_getsubscribed()
imap_header()
imap_headerinfo()
imap_headers()
imap_last_error()
imap_list()
imap_listmailbox()
imap_listscan()
imap_listsubscribed()
imap_lsub()
imap_mail()
imap_mail_compose()
imap_mail_copy()
imap_mail_move()
imap_mailboxmsginfo()
imap_mime_header_decode()
imap_msgno()
imap_num_msg()
imap_num_recent()
imap_open()
imap_ping()
imap_qprint()
imap_renamemailbox()
imap_reopen()
imap_rfc822_parse_adrlist()
imap_rfc822_parse_headers()
imap_rfc822_write_address()
imap_savebody()
imap_scanmailbox()
imap_search()
imap_set_quota()
imap_setacl()
imap_setflag_full()
imap_sort()
imap_status()
imap_subscribe()
imap_thread()
imap_timeout()
imap_uid()
imap_undelete()
imap_unsubscribe()
imap_utf7_decode()
imap_utf7_encode()
imap_utf8()
implode()
import_request_variables()
in_array()
inet_ntop()
inet_pton()
ingres_autocommit()
ingres_close()
ingres_commit()
ingres_connect()
ingres_cursor()
ingres_errno()
ingres_error()
ingres_errsqlstate()
ingres_fetch_array()
ingres_fetch_object()
ingres_fetch_row()
ingres_field_length()
ingres_field_name()
ingres_field_nullable()
ingres_field_precision()
ingres_field_scale()
ingres_field_type()
ingres_num_fields()
ingres_num_rows()
ingres_pconnect()
ingres_query()
ingres_rollback()
ini_alter()
ini_get()
ini_get_all()
ini_restore()
ini_set()
installation()
installation()
interface_exists()
intval()
ip2long()
iptcembed()
iptcparse()
ircg_channel_mode()
ircg_disconnect()
ircg_eval_ecmascript_params()
ircg_fetch_error_msg()
ircg_get_username()
ircg_html_encode()
ircg_ignore_add()
ircg_ignore_del()
ircg_invite()
ircg_is_conn_alive()
ircg_join()
ircg_kick()
ircg_list()
ircg_lookup_format_messages()
ircg_lusers()
ircg_msg()
ircg_names()
ircg_nick()
ircg_nickname_escape()
ircg_nickname_unescape()
ircg_notice()
ircg_oper()
ircg_part()
ircg_pconnect()
ircg_register_format_messages()
ircg_set_current()
ircg_set_file()
ircg_set_on_die()
ircg_topic()
ircg_who()
ircg_whois()
is_a()
is_array()
is_binary()
is_bool()
is_buffer()
is_callable()
is_dir()
is_double()
is_executable()
is_file()
is_finite()
is_float()
is_infinite()
is_int()
is_integer()
is_link()
is_long()
is_nan()
is_null()
is_numeric()
is_object()
is_readable()
is_real()
is_resource()
is_scalar()
is_soap_fault()
is_string()
is_subclass_of()
is_unicode()
is_uploaded_file()
is_writable()
is_writeable()
isset()
iterator_count()
iterator_to_array()
J
java_last_exception_clear()
java_last_exception_get()
jddayofweek()
jdmonthname()
jdtofrench()
jdtogregorian()
jdtojewish()
jdtojulian()
jdtounix()
jewishtojd()
join()
jpeg2wbmp()
json_decode()
json_encode()
juliantojd()
K
kadm5_chpass_principal()
kadm5_create_principal()
kadm5_delete_principal()
kadm5_destroy()
kadm5_flush()
kadm5_get_policies()
kadm5_get_principal()
kadm5_get_principals()
kadm5_init_with_password()
kadm5_modify_principal()
key()
krsort()
ksort()
L
lcfirst()
lcg_value()
lchgrp()
lchown()
ldap_8859_to_t61()
ldap_add()
ldap_bind()
ldap_close()
ldap_compare()
ldap_connect()
ldap_count_entries()
ldap_delete()
ldap_dn2ufn()
ldap_err2str()
ldap_errno()
ldap_error()
ldap_explode_dn()
ldap_first_attribute()
ldap_first_entry()
ldap_first_reference()
ldap_free_result()
ldap_get_attributes()
ldap_get_dn()
ldap_get_entries()
ldap_get_option()
ldap_get_values()
ldap_get_values_len()
ldap_list()
ldap_mod_add()
ldap_mod_del()
ldap_mod_replace()
ldap_modify()
ldap_next_attribute()
ldap_next_entry()
ldap_next_reference()
ldap_parse_reference()
ldap_parse_result()
ldap_read()
ldap_rename()
ldap_sasl_bind()
ldap_search()
ldap_set_option()
ldap_set_rebind_proc()
ldap_sort()
ldap_start_tls()
ldap_t61_to_8859()
ldap_unbind()
levenshtein()
libxml_clear_errors()
libxml_get_errors()
libxml_get_last_error()
libxml_set_streams_context()
libxml_use_internal_errors()
LimitIterator::getPosition()
LimitIterator::next()
LimitIterator::rewind()
LimitIterator::seek()
LimitIterator::valid()
link()
linkinfo()
list()
locale_get_default()
locale_set_default()
localeconv()
localtime()
log()
log10()
log1p()
long2ip()
lstat()
ltrim()
lzf_compress()
lzf_decompress()
lzf_optimized_for()
M
m_checkstatus()
m_completeauthorizations()
m_connect()
m_connectionerror()
m_deletetrans()
m_destroyconn()
m_destroyengine()
m_getcell()
m_getcellbynum()
m_getcommadelimited()
m_getheader()
m_initconn()
m_initengine()
m_iscommadelimited()
m_maxconntimeout()
m_monitor()
m_numcolumns()
m_numrows()
m_parsecommadelimited()
m_responsekeys()
m_responseparam()
m_returnstatus()
m_setblocking()
m_setdropfile()
m_setip()
m_setssl()
m_setssl_cafile()
m_setssl_files()
m_settimeout()
m_sslcert_gen_hash()
m_transactionssent()
m_transinqueue()
m_transkeyval()
m_transnew()
m_transsend()
m_uwait()
m_validateidentifier()
m_verifyconnection()
m_verifysslcert()
mail()
mailparse_determine_best_xfer_encoding()
mailparse_msg_create()
mailparse_msg_extract_part()
mailparse_msg_extract_part_file()
mailparse_msg_extract_whole_part_file()
mailparse_msg_free()
mailparse_msg_get_part()
mailparse_msg_get_part_data()
mailparse_msg_get_structure()
mailparse_msg_parse()
mailparse_msg_parse_file()
mailparse_rfc822_parse_addresses()
mailparse_stream_encode()
mailparse_uudecode_all()
main()
max()
maxdb()
maxdb->affected_rows()
maxdb->auto_commit()
maxdb->change_user()
maxdb->character_set_name()
maxdb->close()
maxdb->close_long_data()
maxdb->commit()
maxdb->disable_reads_from_master()
maxdb->errno()
maxdb->fetch_assoc()
maxdb->field_count()
maxdb->get_host_info()
maxdb->info()
maxdb->insert_id()
maxdb->kill()
maxdb->more_results()
maxdb->multi_query()
maxdb->next_result()
maxdb->options()
maxdb->ping()
maxdb->prepare()
maxdb->protocol_version()
maxdb->query()
maxdb->real_connect()
maxdb->real_escape_string()
maxdb->real_query()
maxdb->rollback()
maxdb->rpl_query_type()
maxdb->select_db()
maxdb->send_query()
maxdb->server_info()
maxdb->sqlstate()
maxdb->ssl_set()
maxdb->stat()
maxdb->stmt_init()
maxdb->store_result()
maxdb->store_result()
maxdb->thread_id()
maxdb->use_result()
maxdb->warning_count()
maxdb_affected_rows()
maxdb_autocommit()
maxdb_bind_param()
maxdb_bind_result()
maxdb_change_user()
maxdb_character_set_name()
maxdb_client_encoding()
maxdb_close()
maxdb_close_long_data()
maxdb_commit()
maxdb_connect()
maxdb_connect_errno()
maxdb_connect_error()
maxdb_data_seek()
maxdb_debug()
maxdb_disable_reads_from_master()
maxdb_disable_rpl_parse()
maxdb_dump_debug_info()
maxdb_embedded_connect()
maxdb_enable_reads_from_master()
maxdb_enable_rpl_parse()
maxdb_errno()
maxdb_error()
maxdb_escape_string()
maxdb_execute()
maxdb_fetch()
maxdb_fetch_array()
maxdb_fetch_assoc()
maxdb_fetch_field()
maxdb_fetch_field_direct()
maxdb_fetch_fields()
maxdb_fetch_lengths()
maxdb_fetch_object()
maxdb_fetch_row()
maxdb_field_count()
maxdb_field_seek()
maxdb_field_tell()
maxdb_free_result()
maxdb_get_client_info()
maxdb_get_client_version()
maxdb_get_host_info()
maxdb_get_metadata()
maxdb_get_proto_info()
maxdb_get_server_info()
maxdb_get_server_version()
maxdb_info()
maxdb_init()
maxdb_insert_id()
maxdb_kill()
maxdb_master_query()
maxdb_more_results()
maxdb_multi_query()
maxdb_next_result()
maxdb_num_fields()
maxdb_num_rows()
maxdb_options()
maxdb_param_count()
maxdb_ping()
maxdb_prepare()
maxdb_query()
maxdb_real_connect()
maxdb_real_escape_string()
maxdb_real_query()
maxdb_report()
maxdb_rollback()
maxdb_rpl_parse_enabled()
maxdb_rpl_probe()
maxdb_rpl_query_type()
maxdb_select_db()
maxdb_send_long_data()
maxdb_send_query()
maxdb_server_end()
maxdb_server_init()
maxdb_set_opt()
maxdb_sqlstate()
maxdb_ssl_set()
maxdb_stat()
maxdb_stmt->affected_rows()
maxdb_stmt->close()
maxdb_stmt->errno()
maxdb_stmt->error()
maxdb_stmt_affected_rows()
maxdb_stmt_bind_param()
maxdb_stmt_bind_result()
maxdb_stmt_close()
maxdb_stmt_close_long_data()
maxdb_stmt_data_seek()
maxdb_stmt_errno()
maxdb_stmt_error()
maxdb_stmt_execute()
maxdb_stmt_fetch()
maxdb_stmt_free_result()
maxdb_stmt_init()
maxdb_stmt_num_rows()
maxdb_stmt_param_count()
maxdb_stmt_prepare()
maxdb_stmt_reset()
maxdb_stmt_result_metadata()
maxdb_stmt_send_long_data()
maxdb_stmt_sqlstate()
maxdb_stmt_store_result()
maxdb_store_result()
maxdb_thread_id()
maxdb_thread_safe()
maxdb_use_result()
maxdb_warning_count()
mb_check_encoding()
mb_convert_case()
mb_convert_encoding()
mb_convert_kana()
mb_convert_variables()
mb_decode_mimeheader()
mb_decode_numericentity()
mb_detect_encoding()
mb_detect_order()
mb_encode_mimeheader()
mb_encode_numericentity()
mb_ereg()
mb_ereg_match()
mb_ereg_replace()
mb_ereg_search()
mb_ereg_search_getpos()
mb_ereg_search_getregs()
mb_ereg_search_init()
mb_ereg_search_pos()
mb_ereg_search_regs()
mb_ereg_search_setpos()
mb_eregi()
mb_eregi_replace()
mb_get_info()
mb_http_input()
mb_http_output()
mb_internal_encoding()
mb_language()
mb_output_handler()
mb_parse_str()
mb_preferred_mime_name()
mb_regex_encoding()
mb_regex_set_options()
mb_send_mail()
mb_split()
mb_strcut()
mb_strimwidth()
mb_stripos()
mb_stristr()
mb_strlen()
mb_strpos()
mb_strrchr()
mb_strrichr()
mb_strripos()
mb_strrpos()
mb_strstr()
mb_strtolower()
mb_strtoupper()
mb_strwidth()
mb_substitute_character()
mb_substr()
mb_substr_count()
mcal_append_event()
mcal_close()
mcal_create_calendar()
mcal_date_compare()
mcal_date_valid()
mcal_day_of_week()
mcal_day_of_year()
mcal_days_in_month()
mcal_delete_calendar()
mcal_delete_event()
mcal_event_add_attribute()
mcal_event_init()
mcal_event_set_alarm()
mcal_event_set_category()
mcal_event_set_class()
mcal_event_set_description()
mcal_event_set_end()
mcal_event_set_recur_daily()
mcal_event_set_recur_monthly_mday()
mcal_event_set_recur_monthly_wday()
mcal_event_set_recur_none()
mcal_event_set_recur_weekly()
mcal_event_set_recur_yearly()
mcal_event_set_start()
mcal_event_set_title()
mcal_expunge()
mcal_fetch_current_stream_event()
mcal_fetch_event()
mcal_is_leap_year()
mcal_list_alarms()
mcal_list_events()
mcal_next_recurrence()
mcal_open()
mcal_popen()
mcal_rename_calendar()
mcal_reopen()
mcal_snooze()
mcal_store_event()
mcal_time_valid()
mcal_week_of_year()
mcrypt_cbc()
mcrypt_cfb()
mcrypt_create_iv()
mcrypt_decrypt()
mcrypt_ecb()
mcrypt_enc_get_algorithms_name()
mcrypt_enc_get_block_size()
mcrypt_enc_get_iv_size()
mcrypt_enc_get_key_size()
mcrypt_enc_get_modes_name()
mcrypt_enc_get_supported_key_sizes()
mcrypt_enc_is_block_algorithm()
mcrypt_enc_is_block_algorithm_mode()
mcrypt_enc_is_block_mode()
mcrypt_enc_self_test()
mcrypt_encrypt()
mcrypt_generic()
mcrypt_generic_deinit()
mcrypt_generic_end()
mcrypt_generic_init()
mcrypt_get_block_size()
mcrypt_get_cipher_name()
mcrypt_get_iv_size()
mcrypt_get_key_size()
mcrypt_list_algorithms()
mcrypt_list_modes()
mcrypt_module_close()
mcrypt_module_get_algo_block_size()
mcrypt_module_get_algo_key_size()
mcrypt_module_get_supported_key_sizes()
mcrypt_module_is_block_algorithm()
mcrypt_module_is_block_algorithm_mode()
mcrypt_module_is_block_mode()
mcrypt_module_open()
mcrypt_module_self_test()
mcrypt_ofb()
md5()
md5_file()
mdecrypt_generic()
Memcache::add()
Memcache::addServer()
Memcache::close()
Memcache::connect()
Memcache::decrement()
Memcache::delete()
Memcache::flush()
Memcache::get()
Memcache::getExtendedStats()
Memcache::getServerStatus()
Memcache::getStats()
Memcache::getVersion()
Memcache::increment()
Memcache::pconnect()
Memcache::replace()
Memcache::set()
Memcache::setCompressThreshold()
Memcache::setServerParams()
memcache_debug()
memory_get_peak_usage()
memory_get_usage()
metaphone()
method_exists()
mhash()
mhash_count()
mhash_get_block_size()
mhash_get_hash_name()
mhash_keygen_s2k()
microtime()
mime_content_type()
min()
ming_keypress()
ming_setcubicthreshold()
ming_setscale()
ming_setswfcompression()
ming_useconstants()
ming_useswfversion()
mkdir()
mktime()
money_format()
move_uploaded_file()
msession_connect()
msession_count()
msession_create()
msession_destroy()
msession_disconnect()
msession_find()
msession_get()
msession_get_array()
msession_get_data()
msession_inc()
msession_list()
msession_listvar()
msession_lock()
msession_plugin()
msession_randstr()
msession_set()
msession_set_array()
msession_set_data()
msession_timeout()
msession_uniq()
msession_unlock()
msg_get_queue()
msg_receive()
msg_remove_queue()
msg_send()
msg_set_queue()
msg_stat_queue()
msql()
msql_affected_rows()
msql_close()
msql_connect()
msql_create_db()
msql_createdb()
msql_data_seek()
msql_db_query()
msql_dbname()
msql_drop_db()
msql_error()
msql_fetch_array()
msql_fetch_field()
msql_fetch_object()
msql_fetch_row()
msql_field_flags()
msql_field_len()
msql_field_name()
msql_field_seek()
msql_field_table()
msql_field_type()
msql_fieldflags()
msql_fieldlen()
msql_fieldname()
msql_fieldtable()
msql_fieldtype()
msql_free_result()
msql_list_dbs()
msql_list_fields()
msql_list_tables()
msql_num_fields()
msql_num_rows()
msql_numfields()
msql_numrows()
msql_pconnect()
msql_query()
msql_regcase()
msql_result()
msql_select_db()
msql_tablename()
mssql_bind()
mssql_close()
mssql_connect()
mssql_data_seek()
mssql_execute()
mssql_fetch_array()
mssql_fetch_assoc()
mssql_fetch_batch()
mssql_fetch_field()
mssql_fetch_object()
mssql_fetch_row()
mssql_field_length()
mssql_field_name()
mssql_field_seek()
mssql_field_type()
mssql_free_result()
mssql_free_statement()
mssql_get_last_message()
mssql_guid_string()
mssql_init()
mssql_min_error_severity()
mssql_min_message_severity()
mssql_next_result()
mssql_num_fields()
mssql_num_rows()
mssql_pconnect()
mssql_query()
mssql_result()
mssql_rows_affected()
mssql_select_db()
mt_getrandmax()
mt_rand()
mt_srand()
muscat_close()
muscat_get()
muscat_give()
muscat_setup()
muscat_setup_net()
mysql_affected_rows()
mysql_change_user()
mysql_client_encoding()
mysql_close()
mysql_connect()
mysql_create_db()
mysql_data_seek()
mysql_db_name()
mysql_db_query()
mysql_drop_db()
mysql_errno()
mysql_error()
mysql_escape_string()
mysql_fetch_array()
mysql_fetch_assoc()
mysql_fetch_field()
mysql_fetch_lengths()
mysql_fetch_object()
mysql_fetch_row()
mysql_field_flags()
mysql_field_len()
mysql_field_name()
mysql_field_seek()
mysql_field_table()
mysql_field_type()
mysql_free_result()
mysql_get_client_info()
mysql_get_host_info()
mysql_get_proto_info()
mysql_get_server_info()
mysql_info()
mysql_insert_id()
mysql_list_dbs()
mysql_list_fields()
mysql_list_processes()
mysql_list_tables()
mysql_num_fields()
mysql_num_rows()
mysql_pconnect()
mysql_ping()
mysql_query()
mysql_real_escape_string()
mysql_result()
mysql_select_db()
mysql_set_charset()
mysql_stat()
mysql_tablename()
mysql_thread_id()
mysql_unbuffered_query()
mysqli->__construct()
mysqli->affected_rows()
mysqli->autocommit()
mysqli->change_user()
mysqli->character_set_name()
mysqli->close()
mysqli->commit()
mysqli->debug()
mysqli->disable_reads_from_master()
mysqli->dump_debug_info()
mysqli->errno()
mysqli->fetch_assoc()
mysqli->field_count()
mysqli->host_info()
mysqli->info()
mysqli->insert_id()
mysqli->kill()
mysqli->more_results()
mysqli->multi_query()
mysqli->next_result()
mysqli->options()
mysqli->ping()
mysqli->prepare()
mysqli->protocol_version()
mysqli->query()
mysqli->real_connect()
mysqli->real_escape_string()
mysqli->real_query()
mysqli->rollback()
mysqli->rpl_query_type()
mysqli->select_db()
mysqli->send_query()
mysqli->server_info()
mysqli->server_version()
mysqli->set_charset()
mysqli->sqlstate()
mysqli->ssl_set()
mysqli->stat()
mysqli->stmt_init()
mysqli->store_result()
mysqli->thread_id()
mysqli->use_result()
mysqli->warning_count()
mysqli_affected_rows()
mysqli_autocommit()
mysqli_bind_param()
mysqli_bind_result()
mysqli_change_user()
mysqli_character_set_name()
mysqli_client_encoding()
mysqli_close()
mysqli_commit()
mysqli_connect()
mysqli_connect_errno()
mysqli_connect_error()
mysqli_data_seek()
mysqli_debug()
mysqli_disable_reads_from_master()
mysqli_disable_rpl_parse()
mysqli_dump_debug_info()
mysqli_embedded_server_end()
mysqli_embedded_server_start()
mysqli_enable_reads_from_master()
mysqli_enable_rpl_parse()
mysqli_errno()
mysqli_error()
mysqli_escape_string()
mysqli_execute()
mysqli_fetch()
mysqli_fetch_array()
mysqli_fetch_assoc()
mysqli_fetch_field()
mysqli_fetch_field_direct()
mysqli_fetch_fields()
mysqli_fetch_lengths()
mysqli_fetch_object()
mysqli_fetch_row()
mysqli_field_count()
mysqli_field_seek()
mysqli_field_tell()
mysqli_free_result()
mysqli_get_charset()
mysqli_get_client_info()
mysqli_get_client_version()
mysqli_get_host_info()
mysqli_get_metadata()
mysqli_get_proto_info()
mysqli_get_server_info()
mysqli_get_server_version()
mysqli_get_warnings()
mysqli_info()
mysqli_init()
mysqli_insert_id()
mysqli_kill()
mysqli_master_query()
mysqli_more_results()
mysqli_multi_query()
mysqli_next_result()
mysqli_num_fields()
mysqli_num_rows()
mysqli_options()
mysqli_param_count()
mysqli_ping()
mysqli_prepare()
mysqli_query()
mysqli_real_connect()
mysqli_real_escape_string()
mysqli_real_query()
mysqli_report()
mysqli_rollback()
mysqli_rpl_parse_enabled()
mysqli_rpl_probe()
mysqli_rpl_query_type()
mysqli_select_db()
mysqli_send_long_data()
mysqli_send_query()
mysqli_server_end()
mysqli_server_init()
mysqli_set_charset()
mysqli_set_local_infile_default()
mysqli_set_local_infile_handler()
mysqli_set_opt()
mysqli_slave_query()
mysqli_sqlstate()
mysqli_ssl_set()
mysqli_stat()
mysqli_stmt->affected_rows()
mysqli_stmt->close()
mysqli_stmt->errno()
mysqli_stmt->error()
mysqli_stmt->sqlstate()
mysqli_stmt->store_result()
mysqli_stmt_affected_rows()
mysqli_stmt_attr_get()
mysqli_stmt_attr_set()
mysqli_stmt_bind_param()
mysqli_stmt_bind_result()
mysqli_stmt_close()
mysqli_stmt_data_seek()
mysqli_stmt_errno()
mysqli_stmt_error()
mysqli_stmt_execute()
mysqli_stmt_fetch()
mysqli_stmt_field_count()
mysqli_stmt_free_result()
mysqli_stmt_get_warnings()
mysqli_stmt_init()
mysqli_stmt_insert_id()
mysqli_stmt_num_rows()
mysqli_stmt_param_count()
mysqli_stmt_prepare()
mysqli_stmt_reset()
mysqli_stmt_result_metadata()
mysqli_stmt_send_long_data()
mysqli_stmt_sqlstate()
mysqli_stmt_store_result()
mysqli_store_result()
mysqli_thread_id()
mysqli_thread_safe()
mysqli_use_result()
mysqli_warning_count()
N
natcasesort()
natsort()
ncurses_addch()
ncurses_addchnstr()
ncurses_addchstr()
ncurses_addnstr()
ncurses_addstr()
ncurses_assume_default_colors()
ncurses_attroff()
ncurses_attron()
ncurses_attrset()
ncurses_baudrate()
ncurses_beep()
ncurses_bkgd()
ncurses_bkgdset()
ncurses_border()
ncurses_bottom_panel()
ncurses_can_change_color()
ncurses_cbreak()
ncurses_clear()
ncurses_clrtobot()
ncurses_clrtoeol()
ncurses_color_content()
ncurses_color_set()
ncurses_curs_set()
ncurses_def_prog_mode()
ncurses_def_shell_mode()
ncurses_define_key()
ncurses_del_panel()
ncurses_delay_output()
ncurses_delch()
ncurses_deleteln()
ncurses_delwin()
ncurses_doupdate()
ncurses_echo()
ncurses_echochar()
ncurses_end()
ncurses_erase()
ncurses_erasechar()
ncurses_filter()
ncurses_flash()
ncurses_flushinp()
ncurses_getch()
ncurses_getmaxyx()
ncurses_getmouse()
ncurses_getyx()
ncurses_halfdelay()
ncurses_has_colors()
ncurses_has_ic()
ncurses_has_il()
ncurses_has_key()
ncurses_hide_panel()
ncurses_hline()
ncurses_inch()
ncurses_init()
ncurses_init_color()
ncurses_init_pair()
ncurses_insch()
ncurses_insdelln()
ncurses_insertln()
ncurses_insstr()
ncurses_instr()
ncurses_isendwin()
ncurses_keyok()
ncurses_keypad()
ncurses_killchar()
ncurses_longname()
ncurses_meta()
ncurses_mouse_trafo()
ncurses_mouseinterval()
ncurses_mousemask()
ncurses_move()
ncurses_move_panel()
ncurses_mvaddch()
ncurses_mvaddchnstr()
ncurses_mvaddchstr()
ncurses_mvaddnstr()
ncurses_mvaddstr()
ncurses_mvcur()
ncurses_mvdelch()
ncurses_mvgetch()
ncurses_mvhline()
ncurses_mvinch()
ncurses_mvvline()
ncurses_mvwaddstr()
ncurses_napms()
ncurses_new_panel()
ncurses_newpad()
ncurses_newwin()
ncurses_nl()
ncurses_nocbreak()
ncurses_noecho()
ncurses_nonl()
ncurses_noqiflush()
ncurses_noraw()
ncurses_pair_content()
ncurses_panel_above()
ncurses_panel_below()
ncurses_panel_window()
ncurses_pnoutrefresh()
ncurses_prefresh()
ncurses_putp()
ncurses_qiflush()
ncurses_raw()
ncurses_refresh()
ncurses_replace_panel()
ncurses_reset_prog_mode()
ncurses_reset_shell_mode()
ncurses_resetty()
ncurses_savetty()
ncurses_scr_dump()
ncurses_scr_init()
ncurses_scr_restore()
ncurses_scr_set()
ncurses_scrl()
ncurses_show_panel()
ncurses_slk_attr()
ncurses_slk_attroff()
ncurses_slk_attron()
ncurses_slk_attrset()
ncurses_slk_clear()
ncurses_slk_color()
ncurses_slk_init()
ncurses_slk_noutrefresh()
ncurses_slk_refresh()
ncurses_slk_restore()
ncurses_slk_set()
ncurses_slk_touch()
ncurses_standend()
ncurses_standout()
ncurses_start_color()
ncurses_termattrs()
ncurses_termname()
ncurses_timeout()
ncurses_top_panel()
ncurses_typeahead()
ncurses_ungetch()
ncurses_ungetmouse()
ncurses_update_panels()
ncurses_use_default_colors()
ncurses_use_env()
ncurses_use_extended_names()
ncurses_vidattr()
ncurses_vline()
ncurses_waddch()
ncurses_waddstr()
ncurses_wattroff()
ncurses_wattron()
ncurses_wattrset()
ncurses_wborder()
ncurses_wclear()
ncurses_wcolor_set()
ncurses_werase()
ncurses_wgetch()
ncurses_whline()
ncurses_wmouse_trafo()
ncurses_wmove()
ncurses_wnoutrefresh()
ncurses_wrefresh()
ncurses_wstandend()
ncurses_wstandout()
ncurses_wvline()
newt_bell()
newt_button()
newt_button_bar()
newt_centered_window()
newt_checkbox()
newt_checkbox_get_value()
newt_checkbox_set_flags()
newt_checkbox_set_value()
newt_checkbox_tree()
newt_checkbox_tree_add_item()
newt_checkbox_tree_find_item()
newt_checkbox_tree_get_current()
newt_checkbox_tree_get_entry_value()
newt_checkbox_tree_get_multi_selection()
newt_checkbox_tree_get_selection()
newt_checkbox_tree_multi()
newt_checkbox_tree_set_current()
newt_checkbox_tree_set_entry()
newt_checkbox_tree_set_entry_value()
newt_checkbox_tree_set_width()
newt_clear_key_buffer()
newt_cls()
newt_compact_button()
newt_component_add_callback()
newt_component_takes_focus()
newt_create_grid()
newt_cursor_off()
newt_cursor_on()
newt_delay()
newt_draw_form()
newt_draw_root_text()
newt_entry()
newt_entry_get_value()
newt_entry_set()
newt_entry_set_filter()
newt_entry_set_flags()
newt_finished()
newt_form()
newt_form_add_component()
newt_form_add_components()
newt_form_add_hot_key()
newt_form_destroy()
newt_form_get_current()
newt_form_run()
newt_form_set_background()
newt_form_set_height()
newt_form_set_size()
newt_form_set_timer()
newt_form_set_width()
newt_form_watch_fd()
newt_get_screen_size()
newt_grid_add_components_to_form()
newt_grid_basic_window()
newt_grid_free()
newt_grid_get_size()
newt_grid_h_close_stacked()
newt_grid_h_stacked()
newt_grid_place()
newt_grid_set_field()
newt_grid_simple_window()
newt_grid_v_close_stacked()
newt_grid_v_stacked()
newt_grid_wrapped_window()
newt_grid_wrapped_window_at()
newt_init()
newt_label()
newt_label_set_text()
newt_listbox()
newt_listbox_append_entry()
newt_listbox_clear()
newt_listbox_clear_selection()
newt_listbox_delete_entry()
newt_listbox_get_current()
newt_listbox_get_selection()
newt_listbox_insert_entry()
newt_listbox_item_count()
newt_listbox_select_item()
newt_listbox_set_current()
newt_listbox_set_current_by_key()
newt_listbox_set_data()
newt_listbox_set_entry()
newt_listbox_set_width()
newt_listitem()
newt_listitem_get_data()
newt_listitem_set()
newt_open_window()
newt_pop_help_line()
newt_pop_window()
newt_push_help_line()
newt_radio_get_current()
newt_radiobutton()
newt_redraw_help_line()
newt_reflow_text()
newt_refresh()
newt_resize_screen()
newt_resume()
newt_run_form()
newt_scale()
newt_scale_set()
newt_scrollbar_set()
newt_set_help_callback()
newt_set_suspend_callback()
newt_suspend()
newt_textbox()
newt_textbox_get_num_lines()
newt_textbox_reflowed()
newt_textbox_set_height()
newt_textbox_set_text()
newt_vertical_scrollbar()
newt_wait_for_key()
newt_win_choice()
newt_win_entries()
newt_win_menu()
newt_win_message()
newt_win_messagev()
newt_win_ternary()
next()
ngettext()
nl2br()
nl_langinfo()
notes_body()
notes_copy_db()
notes_create_db()
notes_create_note()
notes_drop_db()
notes_find_note()
notes_header_info()
notes_list_msgs()
notes_mark_read()
notes_mark_unread()
notes_nav_create()
notes_search()
notes_unread()
notes_version()
nsapi_request_headers()
nsapi_response_headers()
nsapi_virtual()
number_format()
O
ob_clean()
ob_deflatehandler()
ob_end_clean()
ob_end_flush()
ob_etaghandler()
ob_flush()
ob_get_clean()
ob_get_contents()
ob_get_flush()
ob_get_length()
ob_get_level()
ob_get_status()
ob_gzhandler()
ob_iconv_handler()
ob_implicit_flush()
ob_inflatehandler()
ob_list_handlers()
ob_start()
ob_tidyhandler()
OCI-Collection->append()
OCI-Collection->assign()
OCI-Collection->assignElem()
OCI-Collection->free()
OCI-Collection->getElem()
OCI-Collection->max()
OCI-Collection->size()
OCI-Collection->trim()
OCI-Lob->append()
OCI-Lob->close()
OCI-Lob->eof()
OCI-Lob->erase()
OCI-Lob->export()
OCI-Lob->flush()
OCI-Lob->free()
OCI-Lob->getBuffering()
OCI-Lob->import()
OCI-Lob->load()
OCI-Lob->read()
OCI-Lob->rewind()
OCI-Lob->save()
OCI-Lob->saveFile()
OCI-Lob->seek()
OCI-Lob->setBuffering()
OCI-Lob->size()
OCI-Lob->tell()
OCI-Lob->truncate()
OCI-Lob->write()
OCI-Lob->writeTemporary()
OCI-Lob->writeToFile()
oci_bind_array_by_name()
oci_bind_by_name()
oci_cancel()
oci_close()
oci_commit()
oci_connect()
oci_define_by_name()
oci_error()
oci_execute()
oci_fetch()
oci_fetch_all()
oci_fetch_array()
oci_fetch_assoc()
oci_fetch_object()
oci_fetch_row()
oci_field_is_null()
oci_field_name()
oci_field_precision()
oci_field_scale()
oci_field_size()
oci_field_type()
oci_field_type_raw()
oci_free_statement()
oci_internal_debug()
oci_lob_copy()
oci_lob_is_equal()
oci_new_collection()
oci_new_connect()
oci_new_cursor()
oci_new_descriptor()
oci_num_fields()
oci_num_rows()
oci_parse()
oci_password_change()
oci_pconnect()
oci_result()
oci_rollback()
oci_server_version()
oci_set_prefetch()
oci_statement_type()
ocibindbyname()
ocicancel()
ocicloselob()
ocicollappend()
ocicollassign()
ocicollassignelem()
ocicollgetelem()
ocicollmax()
ocicollsize()
ocicolltrim()
ocicolumnisnull()
ocicolumnname()
ocicolumnprecision()
ocicolumnscale()
ocicolumnsize()
ocicolumntype()
ocicolumntyperaw()
ocicommit()
ocidefinebyname()
ocierror()
ociexecute()
ocifetch()
ocifetchinto()
ocifetchstatement()
ocifreecollection()
ocifreecursor()
ocifreedesc()
ocifreestatement()
ociinternaldebug()
ociloadlob()
ocilogoff()
ocilogon()
ocinewcollection()
ocinewcursor()
ocinewdescriptor()
ocinlogon()
ocinumcols()
ociparse()
ociplogon()
ociresult()
ocirollback()
ocirowcount()
ocisavelob()
ocisavelobfile()
ociserverversion()
ocisetprefetch()
ocistatementtype()
ociwritelobtofile()
ociwritetemporarylob()
octdec()
odbc_autocommit()
odbc_binmode()
odbc_close()
odbc_close_all()
odbc_columnprivileges()
odbc_columns()
odbc_commit()
odbc_connect()
odbc_cursor()
odbc_data_source()
odbc_do()
odbc_error()
odbc_errormsg()
odbc_exec()
odbc_execute()
odbc_fetch_array()
odbc_fetch_into()
odbc_fetch_object()
odbc_fetch_row()
odbc_field_len()
odbc_field_name()
odbc_field_num()
odbc_field_precision()
odbc_field_scale()
odbc_field_type()
odbc_foreignkeys()
odbc_free_result()
odbc_gettypeinfo()
odbc_longreadlen()
odbc_next_result()
odbc_num_fields()
odbc_num_rows()
odbc_pconnect()
odbc_prepare()
odbc_primarykeys()
odbc_procedurecolumns()
odbc_procedures()
odbc_result()
odbc_result_all()
odbc_rollback()
odbc_setoption()
odbc_specialcolumns()
odbc_statistics()
odbc_tableprivileges()
odbc_tables()
openal_buffer_create()
openal_buffer_data()
openal_buffer_destroy()
openal_buffer_get()
openal_buffer_loadwav()
openal_context_create()
openal_context_current()
openal_context_destroy()
openal_context_process()
openal_context_suspend()
openal_device_close()
openal_device_open()
openal_listener_get()
openal_listener_set()
openal_source_create()
openal_source_destroy()
openal_source_get()
openal_source_pause()
openal_source_play()
openal_source_rewind()
openal_source_set()
openal_source_stop()
openal_stream()
opendir()
openlog()
openssl_csr_export()
openssl_csr_export_to_file()
openssl_csr_get_public_key()
openssl_csr_get_subject()
openssl_csr_new()
openssl_csr_sign()
openssl_error_string()
openssl_free_key()
openssl_get_privatekey()
openssl_get_publickey()
openssl_open()
openssl_pkcs7_decrypt()
openssl_pkcs7_encrypt()
openssl_pkcs7_sign()
openssl_pkcs7_verify()
openssl_pkey_export()
openssl_pkey_export_to_file()
openssl_pkey_free()
openssl_pkey_get_details()
openssl_pkey_get_private()
openssl_pkey_get_public()
openssl_pkey_new()
openssl_private_decrypt()
openssl_private_encrypt()
openssl_public_decrypt()
openssl_public_encrypt()
openssl_seal()
openssl_sign()
openssl_verify()
openssl_x509_check_private_key()
openssl_x509_checkpurpose()
openssl_x509_export()
openssl_x509_export_to_file()
openssl_x509_free()
openssl_x509_parse()
openssl_x509_read()
ora_bind()
ora_close()
ora_columnname()
ora_columnsize()
ora_columntype()
ora_commit()
ora_commitoff()
ora_commiton()
ora_do()
ora_error()
ora_errorcode()
ora_exec()
ora_fetch()
ora_fetch_into()
ora_getcolumn()
ora_logoff()
ora_logon()
ora_numcols()
ora_numrows()
ora_open()
ora_parse()
ora_plogon()
ora_rollback()
orbitenum()
orbitobject()
orbitstruct()
ord()
output_add_rewrite_var()
output_reset_rewrite_vars()
overload()
override_function()
ovrimos_close()
ovrimos_commit()
ovrimos_connect()
ovrimos_cursor()
ovrimos_exec()
ovrimos_execute()
ovrimos_fetch_into()
ovrimos_fetch_row()
ovrimos_field_len()
ovrimos_field_name()
ovrimos_field_num()
ovrimos_field_type()
ovrimos_free_result()
ovrimos_longreadlen()
ovrimos_num_fields()
ovrimos_num_rows()
ovrimos_prepare()
ovrimos_result()
ovrimos_result_all()
ovrimos_rollback()
P
pack()
ParentIterator::getChildren()
ParentIterator::hasChildren()
ParentIterator::next()
ParentIterator::rewind()
parse_ini_file()
parse_str()
parse_url()
parsekit_compile_file()
parsekit_compile_string()
parsekit_func_arginfo()
passthru()
pathinfo()
pclose()
pcntl_alarm()
pcntl_exec()
pcntl_fork()
pcntl_getpriority()
pcntl_setpriority()
pcntl_signal()
pcntl_wait()
pcntl_waitpid()
pcntl_wexitstatus()
pcntl_wifexited()
pcntl_wifsignaled()
pcntl_wifstopped()
pcntl_wstopsig()
pcntl_wtermsig()
pdf_activate_item()
pdf_add_annotation()
pdf_add_bookmark()
pdf_add_launchlink()
pdf_add_locallink()
pdf_add_nameddest()
pdf_add_note()
pdf_add_outline()
pdf_add_pdflink()
pdf_add_table_cell()
pdf_add_textflow()
pdf_add_thumbnail()
pdf_add_weblink()
pdf_arc()
pdf_arcn()
pdf_attach_file()
pdf_begin_document()
pdf_begin_font()
pdf_begin_glyph()
pdf_begin_item()
pdf_begin_layer()
pdf_begin_page()
pdf_begin_page_ext()
pdf_begin_pattern()
pdf_begin_template()
pdf_begin_template_ext()
pdf_circle()
pdf_clip()
pdf_close()
pdf_close_image()
pdf_close_pdi()
pdf_close_pdi_page()
pdf_closepath()
pdf_closepath_fill_stroke()
pdf_closepath_stroke()
pdf_concat()
pdf_continue_text()
pdf_create_3dview()
pdf_create_action()
pdf_create_annotation()
pdf_create_bookmark()
pdf_create_field()
pdf_create_fieldgroup()
pdf_create_gstate()
pdf_create_pvf()
pdf_create_textflow()
pdf_curveto()
pdf_define_layer()
pdf_delete()
pdf_delete_pvf()
pdf_delete_table()
pdf_delete_textflow()
pdf_encoding_set_char()
pdf_end_document()
pdf_end_font()
pdf_end_glyph()
pdf_end_item()
pdf_end_layer()
pdf_end_page()
pdf_end_page_ext()
pdf_end_pattern()
pdf_end_template()
pdf_endpath()
pdf_fill()
pdf_fill_imageblock()
pdf_fill_pdfblock()
pdf_fill_stroke()
pdf_fill_textblock()
pdf_findfont()
pdf_fit_image()
pdf_fit_pdi_page()
pdf_fit_table()
pdf_fit_textflow()
pdf_fit_textline()
pdf_get_apiname()
pdf_get_buffer()
pdf_get_errmsg()
pdf_get_errnum()
pdf_get_font()
pdf_get_fontname()
pdf_get_fontsize()
pdf_get_image_height()
pdf_get_image_width()
pdf_get_majorversion()
pdf_get_minorversion()
pdf_get_parameter()
pdf_get_pdi_parameter()
pdf_get_pdi_value()
pdf_get_value()
pdf_info_font()
pdf_info_matchbox()
pdf_info_table()
pdf_info_textflow()
pdf_info_textline()
pdf_initgraphics()
pdf_lineto()
pdf_load_3ddata()
pdf_load_font()
pdf_load_iccprofile()
pdf_load_image()
pdf_makespotcolor()
pdf_moveto()
pdf_new()
pdf_open_ccitt()
pdf_open_file()
pdf_open_gif()
pdf_open_image()
pdf_open_image_file()
pdf_open_jpeg()
pdf_open_memory_image()
pdf_open_pdi()
pdf_open_pdi_page()
pdf_open_tiff()
pdf_pcos_get_number()
pdf_pcos_get_stream()
pdf_pcos_get_string()
pdf_place_image()
pdf_place_pdi_page()
pdf_process_pdi()
pdf_rect()
pdf_restore()
pdf_resume_page()
pdf_rotate()
pdf_save()
pdf_scale()
pdf_set_border_color()
pdf_set_border_dash()
pdf_set_border_style()
pdf_set_char_spacing()
pdf_set_duration()
pdf_set_gstate()
pdf_set_horiz_scaling()
pdf_set_info()
pdf_set_info_author()
pdf_set_info_creator()
pdf_set_info_keywords()
pdf_set_info_subject()
pdf_set_info_title()
pdf_set_layer_dependency()
pdf_set_leading()
pdf_set_parameter()
pdf_set_text_matrix()
pdf_set_text_pos()
pdf_set_text_rendering()
pdf_set_text_rise()
pdf_set_value()
pdf_set_word_spacing()
pdf_setcolor()
pdf_setdash()
pdf_setdashpattern()
pdf_setflat()
pdf_setfont()
pdf_setgray()
pdf_setgray_fill()
pdf_setgray_stroke()
pdf_setlinecap()
pdf_setlinejoin()
pdf_setlinewidth()
pdf_setmatrix()
pdf_setmiterlimit()
pdf_setpolydash()
pdf_setrgbcolor()
pdf_setrgbcolor_fill()
pdf_setrgbcolor_stroke()
pdf_shading()
pdf_shading_pattern()
pdf_shfill()
pdf_show()
pdf_show_boxed()
pdf_show_xy()
pdf_skew()
pdf_stringwidth()
pdf_stroke()
pdf_suspend_page()
pdf_translate()
pdf_utf16_to_utf8()
pdf_utf32_to_utf16()
pdf_utf8_to_utf16()
PDO->__construct()
PDO->beginTransaction()
PDO->commit()
PDO->errorCode()
PDO->errorInfo()
PDO->exec()
PDO->getAttribute()
PDO->getAvailableDrivers()
PDO->lastInsertId()
PDO->prepare()
PDO->query()
PDO->quote()
PDO->rollBack()
PDO->setAttribute()
PDO->sqliteCreateAggregate()
PDO->sqliteCreateFunction()
PDO::pgsqlLOBCreate()
PDO::pgsqlLOBOpen()
PDO::pgsqlLOBUnlink()
PDOStatement->bindColumn()
PDOStatement->bindParam()
PDOStatement->bindValue()
PDOStatement->closeCursor()
PDOStatement->columnCount()
PDOStatement->errorCode()
PDOStatement->errorInfo()
PDOStatement->execute()
PDOStatement->fetch()
PDOStatement->fetchAll()
PDOStatement->fetchColumn()
PDOStatement->fetchObject()
PDOStatement->getAttribute()
PDOStatement->getColumnMeta()
PDOStatement->nextRowset()
PDOStatement->rowCount()
PDOStatement->setAttribute()
PDOStatement->setFetchMode()
pfpro_cleanup()
pfpro_init()
pfpro_process()
pfpro_process_raw()
pfpro_version()
pfsockopen()
pg_affected_rows()
pg_cancel_query()
pg_client_encoding()
pg_close()
pg_connect()
pg_connection_busy()
pg_connection_reset()
pg_connection_status()
pg_convert()
pg_copy_from()
pg_copy_to()
pg_dbname()
pg_delete()
pg_end_copy()
pg_escape_bytea()
pg_escape_string()
pg_execute()
pg_fetch_all()
pg_fetch_all_columns()
pg_fetch_array()
pg_fetch_assoc()
pg_fetch_object()
pg_fetch_result()
pg_fetch_row()
pg_field_is_null()
pg_field_name()
pg_field_num()
pg_field_prtlen()
pg_field_size()
pg_field_table()
pg_field_type()
pg_field_type_oid()
pg_free_result()
pg_get_notify()
pg_get_pid()
pg_get_result()
pg_host()
pg_insert()
pg_last_error()
pg_last_notice()
pg_last_oid()
pg_lo_close()
pg_lo_create()
pg_lo_export()
pg_lo_import()
pg_lo_open()
pg_lo_read()
pg_lo_read_all()
pg_lo_seek()
pg_lo_tell()
pg_lo_unlink()
pg_lo_write()
pg_meta_data()
pg_num_fields()
pg_num_rows()
pg_options()
pg_parameter_status()
pg_pconnect()
pg_ping()
pg_port()
pg_prepare()
pg_put_line()
pg_query()
pg_query_params()
pg_result_error()
pg_result_error_field()
pg_result_seek()
pg_result_status()
pg_select()
pg_send_execute()
pg_send_prepare()
pg_send_query()
pg_send_query_params()
pg_set_client_encoding()
pg_set_error_verbosity()
pg_trace()
pg_transaction_status()
pg_tty()
pg_unescape_bytea()
pg_untrace()
pg_update()
pg_version()
Phar->compressAllFilesBZIP2()
Phar->compressAllFilesGZ()
Phar->count()
Phar->getMetaData()
Phar->getModified()
Phar->getSignature()
Phar->getStub()
Phar->getVersion()
Phar->isBuffering()
Phar->setMetaData()
Phar->setStub()
Phar->startBuffering()
Phar->stopBuffering()
Phar->uncompressAllFiles()
Phar::__construct()
Phar::apiVersion()
Phar::canCompress()
Phar::canWrite()
Phar::loadPhar()
Phar::mapPhar()
Phar::offsetExists()
Phar::offsetGet()
Phar::offsetSet()
Phar::offsetUnset()
PharFileInfo->chmod()
PharFileInfo->getCompressedSize()
PharFileInfo->getCRC32()
PharFileInfo->getMetaData()
PharFileInfo->getPharFlags()
PharFileInfo->isCompressed()
PharFileInfo->isCompressedBZIP2()
PharFileInfo->isCompressedGZ()
PharFileInfo->isCRCChecked()
PharFileInfo->setCompressedBZIP2()
PharFileInfo->setCompressedGZ()
PharFileInfo->setMetaData()
PharFileInfo->setUncompressed()
PharFileInfo::__construct()
php_check_syntax()
php_ini_scanned_files()
php_logo_guid()
php_sapi_name()
php_strip_whitespace()
php_uname()
phpcredits()
phpinfo()
phpversion()
pi()
png2wbmp()
popen()
pos()
posix_access()
posix_ctermid()
posix_get_last_error()
posix_getcwd()
posix_getegid()
posix_geteuid()
posix_getgid()
posix_getgrgid()
posix_getgrnam()
posix_getgroups()
posix_getlogin()
posix_getpgid()
posix_getpgrp()
posix_getpid()
posix_getppid()
posix_getpwnam()
posix_getpwuid()
posix_getrlimit()
posix_getsid()
posix_getuid()
posix_initgroups()
posix_isatty()
posix_kill()
posix_mkfifo()
posix_mknod()
posix_setegid()
posix_seteuid()
posix_setgid()
posix_setpgid()
posix_setsid()
posix_setuid()
posix_strerror()
posix_times()
posix_ttyname()
posix_uname()
pow()
preg_grep()
preg_last_error()
preg_match()
preg_match_all()
preg_quote()
preg_replace()
preg_replace_callback()
preg_split()
prev()
print()
print_r()
printer_abort()
printer_close()
printer_create_brush()
printer_create_dc()
printer_create_font()
printer_create_pen()
printer_delete_brush()
printer_delete_dc()
printer_delete_font()
printer_delete_pen()
printer_draw_bmp()
printer_draw_chord()
printer_draw_elipse()
printer_draw_line()
printer_draw_pie()
printer_draw_rectangle()
printer_draw_roundrect()
printer_draw_text()
printer_end_doc()
printer_end_page()
printer_get_option()
printer_list()
printer_logical_fontheight()
printer_open()
printer_select_brush()
printer_select_font()
printer_select_pen()
printer_set_option()
printer_start_doc()
printer_start_page()
printer_write()
printf()
proc_close()
proc_get_status()
proc_nice()
proc_open()
proc_terminate()
property_exists()
ps_add_bookmark()
ps_add_launchlink()
ps_add_locallink()
ps_add_note()
ps_add_pdflink()
ps_add_weblink()
ps_arc()
ps_arcn()
ps_begin_page()
ps_begin_pattern()
ps_begin_template()
ps_circle()
ps_clip()
ps_close()
ps_close_image()
ps_closepath()
ps_closepath_stroke()
ps_continue_text()
ps_curveto()
ps_delete()
ps_end_page()
ps_end_pattern()
ps_end_template()
ps_fill()
ps_fill_stroke()
ps_findfont()
ps_get_buffer()
ps_get_parameter()
ps_get_value()
ps_hyphenate()
ps_include_file()
ps_lineto()
ps_makespotcolor()
ps_moveto()
ps_new()
ps_open_file()
ps_open_image()
ps_open_image_file()
ps_open_memory_image()
ps_place_image()
ps_rect()
ps_restore()
ps_rotate()
ps_save()
ps_scale()
ps_set_border_color()
ps_set_border_dash()
ps_set_border_style()
ps_set_info()
ps_set_parameter()
ps_set_text_pos()
ps_set_value()
ps_setcolor()
ps_setdash()
ps_setflat()
ps_setfont()
ps_setgray()
ps_setlinecap()
ps_setlinejoin()
ps_setlinewidth()
ps_setmiterlimit()
ps_setoverprintmode()
ps_setpolydash()
ps_shading()
ps_shading_pattern()
ps_shfill()
ps_show()
ps_show2()
ps_show_boxed()
ps_show_xy()
ps_show_xy2()
ps_string_geometry()
ps_stringwidth()
ps_stroke()
ps_symbol()
ps_symbol_name()
ps_symbol_width()
ps_translate()
pspell_add_to_personal()
pspell_add_to_session()
pspell_check()
pspell_clear_session()
pspell_config_create()
pspell_config_data_dir()
pspell_config_dict_dir()
pspell_config_ignore()
pspell_config_mode()
pspell_config_personal()
pspell_config_repl()
pspell_config_runtogether()
pspell_config_save_repl()
pspell_new()
pspell_new_config()
pspell_new_personal()
pspell_save_wordlist()
pspell_store_replacement()
pspell_suggest()
putenv()
px_close()
px_create_fp()
px_date2string()
px_delete()
px_delete_record()
px_get_field()
px_get_info()
px_get_parameter()
px_get_record()
px_get_schema()
px_get_value()
px_insert_record()
px_new()
px_numfields()
px_numrecords()
px_open_fp()
px_put_record()
px_retrieve_record()
px_set_blob_file()
px_set_parameter()
px_set_tablename()
px_set_targetencoding()
px_set_value()
px_timestamp2string()
px_update_record()
Q
qdom_error()
qdom_tree()
quoted_printable_decode()
quotemeta()
R
rad2deg()
radius_acct_open()
radius_add_server()
radius_auth_open()
radius_close()
radius_config()
radius_create_request()
radius_cvt_addr()
radius_cvt_int()
radius_cvt_string()
radius_demangle()
radius_demangle_mppe_key()
radius_get_attr()
radius_get_vendor_attr()
radius_put_addr()
radius_put_attr()
radius_put_int()
radius_put_string()
radius_put_vendor_addr()
radius_put_vendor_attr()
radius_put_vendor_int()
radius_put_vendor_string()
radius_request_authenticator()
radius_send_request()
radius_server_secret()
radius_strerror()
rand()
range()
Rar::extract()
Rar::getAttr()
Rar::getCrc()
Rar::getFileTime()
Rar::getHostOs()
Rar::getMethod()
Rar::getName()
Rar::getPackedSize()
Rar::getUnpackedSize()
Rar::getVersion()
rar_close()
rar_entry_get()
rar_list()
rar_open()
rawurldecode()
rawurlencode()
read_exif_data()
readdir()
readfile()
readgzfile()
readline()
readline_add_history()
readline_callback_handler_install()
readline_callback_handler_remove()
readline_callback_read_char()
readline_clear_history()
readline_completion_function()
readline_info()
readline_list_history()
readline_on_new_line()
readline_read_history()
readline_redisplay()
readline_write_history()
readlink()
realpath()
recode()
recode_file()
recode_string()
RecursiveDirectoryIterator::getChildren()
RecursiveDirectoryIterator::hasChildren()
RecursiveDirectoryIterator::key()
RecursiveDirectoryIterator::next()
RecursiveDirectoryIterator::rewind()
RecursiveIteratorIterator::current()
RecursiveIteratorIterator::getDepth()
RecursiveIteratorIterator::getSubIterator()
RecursiveIteratorIterator::key()
RecursiveIteratorIterator::next()
RecursiveIteratorIterator::rewind()
RecursiveIteratorIterator::valid()
register_shutdown_function()
register_tick_function()
rename()
rename_function()
reset()
resources()
restore_error_handler()
restore_exception_handler()
restore_include_path()
result->current_field()
result->current_field()
result->data_seek()
result->data_seek()
result->fetch_array()
result->fetch_array()
result->fetch_field()
result->fetch_field()
result->fetch_field_direct()
result->fetch_field_direct()
result->fetch_fields()
result->fetch_fields()
result->fetch_object()
result->fetch_object()
result->fetch_row()
result->fetch_row()
result->field_count()
result->field_count()
result->field_seek()
result->field_seek()
result->free()
result->free()
result->lengths()
result->lengths()
result->num_rows()
rewind()
rewinddir()
rmdir()
round()
rpm_close()
rpm_get_tag()
rpm_is_valid()
rpm_open()
rpm_version()
rsort()
rtrim()
runkit_class_adopt()
runkit_class_emancipate()
runkit_constant_add()
runkit_constant_redefine()
runkit_constant_remove()
runkit_function_add()
runkit_function_copy()
runkit_function_redefine()
runkit_function_remove()
runkit_function_rename()
runkit_import()
runkit_lint()
runkit_lint_file()
runkit_method_add()
runkit_method_copy()
runkit_method_redefine()
runkit_method_remove()
runkit_method_rename()
runkit_return_value_used()
runkit_sandbox()
runkit_sandbox_output_handler()
runkit_sandbox_parent()
runkit_superglobals()
S
SAMConnection->__construct()
SAMConnection->commit()
SAMConnection->connect()
SAMConnection->disconnect()
SAMConnection->errno()
SAMConnection->error()
SAMConnection->isConnected()
SAMConnection->peek()
SAMConnection->peekAll()
SAMConnection->receive()
SAMConnection->remove()
SAMConnection->rollback()
SAMConnection->send()
SAMConnection->subscribe()
SAMConnection->unsubscribe()
SAMConnection::setDebug()
SAMMessage->__construct()
SAMMessage->body()
SAMMessage->header()
satellite_caught_exception()
satellite_exception_id()
satellite_exception_value()
satellite_get_repository_id()
satellite_load_idl()
satellite_object_to_string()
SCA::createDataObject()
SCA::getService()
SCA_LocalProxy::createDataObject()
SCA_SoapProxy::createDataObject()
scandir()
SDO_DAS_ChangeSummary::beginLogging()
SDO_DAS_ChangeSummary::endLogging()
SDO_DAS_ChangeSummary::getChangedDataObjects()
SDO_DAS_ChangeSummary::getChangeType()
SDO_DAS_ChangeSummary::getOldContainer()
SDO_DAS_ChangeSummary::getOldValues()
SDO_DAS_ChangeSummary::isLogging()
SDO_DAS_DataFactory::addPropertyToType()
SDO_DAS_DataFactory::addType()
SDO_DAS_DataFactory::getDataFactory()
SDO_DAS_DataObject::getChangeSummary()
SDO_DAS_Relational::__construct()
SDO_DAS_Relational::applyChanges()
SDO_DAS_Relational::createRootDataObject()
SDO_DAS_Relational::executePreparedQuery()
SDO_DAS_Relational::executeQuery()
SDO_DAS_Setting::getListIndex()
SDO_DAS_Setting::getPropertyIndex()
SDO_DAS_Setting::getPropertyName()
SDO_DAS_Setting::getValue()
SDO_DAS_Setting::isSet()
SDO_DAS_XML::addTypes()
SDO_DAS_XML::create()
SDO_DAS_XML::createDataObject()
SDO_DAS_XML::createDocument()
SDO_DAS_XML::loadFile()
SDO_DAS_XML::loadString()
SDO_DAS_XML::saveFile()
SDO_DAS_XML::saveString()
SDO_DAS_XML_Document::getRootDataObject()
SDO_DAS_XML_Document::getRootElementName()
SDO_DAS_XML_Document::getRootElementURI()
SDO_DAS_XML_Document::setEncoding()
SDO_DAS_XML_Document::setXMLDeclaration()
SDO_DAS_XML_Document::setXMLVersion()
SDO_DataFactory::create()
SDO_DataObject::clear()
SDO_DataObject::createDataObject()
SDO_DataObject::getContainer()
SDO_DataObject::getSequence()
SDO_DataObject::getTypeName()
SDO_DataObject::getTypeNamespaceURI()
SDO_Exception::getCause()
SDO_List::insert()
SDO_Model_Property::getContainingType()
SDO_Model_Property::getDefault()
SDO_Model_Property::getName()
SDO_Model_Property::getType()
SDO_Model_Property::isContainment()
SDO_Model_Property::isMany()
SDO_Model_ReflectionDataObject::__construct()
SDO_Model_ReflectionDataObject::export()
SDO_Model_ReflectionDataObject::getContainmentProperty()
SDO_Model_ReflectionDataObject::getInstanceProperties()
SDO_Model_ReflectionDataObject::getType()
SDO_Model_Type::getBaseType()
SDO_Model_Type::getName()
SDO_Model_Type::getNamespaceURI()
SDO_Model_Type::getProperties()
SDO_Model_Type::getProperty()
SDO_Model_Type::isAbstractType()
SDO_Model_Type::isDataType()
SDO_Model_Type::isInstance()
SDO_Model_Type::isOpenType()
SDO_Model_Type::isSequencedType()
SDO_Sequence::getProperty()
SDO_Sequence::insert()
SDO_Sequence::move()
sem_acquire()
sem_get()
sem_release()
sem_remove()
serialize()
sesam_affected_rows()
sesam_commit()
sesam_connect()
sesam_diagnostic()
sesam_disconnect()
sesam_errormsg()
sesam_execimm()
sesam_fetch_array()
sesam_fetch_result()
sesam_fetch_row()
sesam_field_array()
sesam_field_name()
sesam_free_result()
sesam_num_fields()
sesam_query()
sesam_rollback()
sesam_seek_row()
sesam_settransaction()
session_cache_expire()
session_cache_limiter()
session_commit()
session_decode()
session_destroy()
session_encode()
session_get_cookie_params()
session_id()
session_is_registered()
session_module_name()
session_name()
session_pgsql_add_error()
session_pgsql_get_error()
session_pgsql_get_field()
session_pgsql_reset()
session_pgsql_set_field()
session_pgsql_status()
session_regenerate_id()
session_register()
session_save_path()
session_set_cookie_params()
session_set_save_handler()
session_start()
session_unregister()
session_unset()
session_write_close()
set_error_handler()
set_exception_handler()
set_file_buffer()
set_include_path()
set_magic_quotes_runtime()
set_time_limit()
setcookie()
setlocale()
setrawcookie()
settype()
sha1()
sha1_file()
shell_exec()
shm_attach()
shm_detach()
shm_get_var()
shm_put_var()
shm_remove()
shm_remove_var()
shmop_close()
shmop_delete()
shmop_open()
shmop_read()
shmop_size()
shmop_write()
show_source()
shuffle()
similar_text()
simplexml_import_dom()
simplexml_load_file()
simplexml_load_string()
SimpleXMLElement->__construct()
SimpleXMLElement->addAttribute()
SimpleXMLElement->addChild()
SimpleXMLElement->asXML()
SimpleXMLElement->attributes()
SimpleXMLElement->children()
SimpleXMLElement->getDocNamespaces()
SimpleXMLElement->getName()
SimpleXMLElement->getNamespaces()
SimpleXMLElement->registerXPathNamespace()
SimpleXMLElement->xpath()
SimpleXMLIterator::current()
SimpleXMLIterator::getChildren()
SimpleXMLIterator::hasChildren()
SimpleXMLIterator::key()
SimpleXMLIterator::next()
SimpleXMLIterator::rewind()
SimpleXMLIterator::valid()
sin()
sinh()
sizeof()
sleep()
snmp_get_quick_print()
snmp_get_valueretrieval()
snmp_read_mib()
snmp_set_enum_print()
snmp_set_oid_numeric_print()
snmp_set_oid_output_format()
snmp_set_quick_print()
snmp_set_valueretrieval()
snmpget()
snmpgetnext()
snmprealwalk()
snmpset()
snmpwalk()
snmpwalkoid()
SoapClient->__call()
SoapClient->__construct()
SoapClient->__doRequest()
SoapClient->__getFunctions()
SoapClient->__getLastRequest()
SoapClient->__getLastRequestHeaders()
SoapClient->__getLastResponse()
SoapClient->__getLastResponseHeaders()
SoapClient->__getTypes()
SoapClient->__setCookie()
SoapClient->__soapCall()
SoapFault->__construct()
SoapHeader->__construct()
SoapParam->__construct()
SoapServer->__construct()
SoapServer->addFunction()
SoapServer->fault()
SoapServer->getFunctions()
SoapServer->handle()
SoapServer->setClass()
SoapServer->setPersistence()
SoapVar->__construct()
socket_accept()
socket_bind()
socket_clear_error()
socket_close()
socket_connect()
socket_create()
socket_create_listen()
socket_create_pair()
socket_get_option()
socket_get_status()
socket_getpeername()
socket_getsockname()
socket_last_error()
socket_listen()
socket_read()
socket_recv()
socket_recvfrom()
socket_select()
socket_send()
socket_sendto()
socket_set_block()
socket_set_blocking()
socket_set_nonblock()
socket_set_option()
socket_set_timeout()
socket_shutdown()
socket_strerror()
socket_write()
sort()
soundex()
spl_autoload()
spl_autoload_call()
spl_autoload_extensions()
spl_autoload_functions()
spl_autoload_register()
spl_autoload_unregister()
spl_classes()
spl_object_hash()
split()
spliti()
sprintf()
sql_regcase()
sqlite_array_query()
sqlite_busy_timeout()
sqlite_changes()
sqlite_close()
sqlite_column()
sqlite_create_aggregate()
sqlite_create_function()
sqlite_current()
sqlite_error_string()
sqlite_escape_string()
sqlite_exec()
sqlite_factory()
sqlite_fetch_all()
sqlite_fetch_array()
sqlite_fetch_column_types()
sqlite_fetch_object()
sqlite_fetch_single()
sqlite_fetch_string()
sqlite_field_name()
sqlite_has_more()
sqlite_has_prev()
sqlite_key()
sqlite_last_error()
sqlite_last_insert_rowid()
sqlite_libencoding()
sqlite_libversion()
sqlite_next()
sqlite_num_fields()
sqlite_num_rows()
sqlite_open()
sqlite_popen()
sqlite_prev()
sqlite_query()
sqlite_rewind()
sqlite_seek()
sqlite_single_query()
sqlite_udf_decode_binary()
sqlite_udf_encode_binary()
sqlite_unbuffered_query()
sqlite_valid()
SQLiteDatabase->arrayQuery()
SQLiteDatabase->busyTimeout()
SQLiteDatabase->changes()
SQLiteDatabase->createAggregate()
SQLiteDatabase->createFunction()
SQLiteDatabase->exec()
SQLiteDatabase->fetchColumnTypes()
SQLiteDatabase->lastError()
SQLiteDatabase->lastInsertRowid()
SQLiteDatabase->query()
SQLiteDatabase->singleQuery()
SQLiteDatabase->unbufferedQuery()
SQLiteResult->column()
SQLiteResult->current()
SQLiteResult->fetch()
SQLiteResult->fetchAll()
SQLiteResult->fetchObject()
SQLiteResult->fetchSingle()
SQLiteResult->fieldName()
SQLiteResult->hasPrev()
SQLiteResult->key()
SQLiteResult->next()
SQLiteResult->numFields()
SQLiteResult->numRows()
SQLiteResult->prev()
SQLiteResult->rewind()
SQLiteResult->seek()
SQLiteResult->valid()
SQLiteUnbuffered->column()
SQLiteUnbuffered->current()
SQLiteUnbuffered->fetch()
SQLiteUnbuffered->fetchAll()
SQLiteUnbuffered->fetchObject()
SQLiteUnbuffered->fetchSingle()
SQLiteUnbuffered->fieldName()
SQLiteUnbuffered->next()
SQLiteUnbuffered->numFields()
SQLiteUnbuffered->valid()
sqrt()
srand()
sscanf()
ssh2_auth_hostbased_file()
ssh2_auth_none()
ssh2_auth_password()
ssh2_auth_pubkey_file()
ssh2_connect()
ssh2_exec()
ssh2_fetch_stream()
ssh2_fingerprint()
ssh2_methods_negotiated()
ssh2_publickey_add()
ssh2_publickey_init()
ssh2_publickey_list()
ssh2_publickey_remove()
ssh2_scp_recv()
ssh2_scp_send()
ssh2_sftp()
ssh2_sftp_lstat()
ssh2_sftp_mkdir()
ssh2_sftp_readlink()
ssh2_sftp_realpath()
ssh2_sftp_rename()
ssh2_sftp_rmdir()
ssh2_sftp_stat()
ssh2_sftp_symlink()
ssh2_sftp_unlink()
ssh2_shell()
ssh2_tunnel()
stat()
stats_absolute_deviation()
stats_cdf_beta()
stats_cdf_binomial()
stats_cdf_cauchy()
stats_cdf_chisquare()
stats_cdf_exponential()
stats_cdf_f()
stats_cdf_gamma()
stats_cdf_laplace()
stats_cdf_logistic()
stats_cdf_negative_binomial()
stats_cdf_noncentral_chisquare()
stats_cdf_noncentral_f()
stats_cdf_poisson()
stats_cdf_t()
stats_cdf_uniform()
stats_cdf_weibull()
stats_covariance()
stats_den_uniform()
stats_dens_beta()
stats_dens_cauchy()
stats_dens_chisquare()
stats_dens_exponential()
stats_dens_f()
stats_dens_gamma()
stats_dens_laplace()
stats_dens_logistic()
stats_dens_negative_binomial()
stats_dens_normal()
stats_dens_pmf_binomial()
stats_dens_pmf_hypergeometric()
stats_dens_pmf_poisson()
stats_dens_t()
stats_dens_weibull()
stats_harmonic_mean()
stats_kurtosis()
stats_rand_gen_beta()
stats_rand_gen_chisquare()
stats_rand_gen_exponential()
stats_rand_gen_f()
stats_rand_gen_funiform()
stats_rand_gen_gamma()
stats_rand_gen_ibinomial()
stats_rand_gen_ibinomial_negative()
stats_rand_gen_int()
stats_rand_gen_ipoisson()
stats_rand_gen_iuniform()
stats_rand_gen_noncenral_chisquare()
stats_rand_gen_noncentral_f()
stats_rand_gen_noncentral_t()
stats_rand_gen_normal()
stats_rand_gen_t()
stats_rand_get_seeds()
stats_rand_phrase_to_seeds()
stats_rand_ranf()
stats_rand_setall()
stats_skew()
stats_standard_deviation()
stats_stat_binomial_coef()
stats_stat_correlation()
stats_stat_gennch()
stats_stat_independent_t()
stats_stat_innerproduct()
stats_stat_noncentral_t()
stats_stat_paired_t()
stats_stat_percentile()
stats_stat_powersum()
stats_variance()
stmt->bind_param()
stmt->bind_param()
stmt->bind_result()
stmt->bind_result()
stmt->close_long_data()
stmt->data_seek()
stmt->data_seek()
stmt->execute()
stmt->execute()
stmt->fetch()
stmt->fetch()
stmt->free_result()
stmt->free_result()
stmt->num_rows()
stmt->num_rows()
stmt->param_count()
stmt->param_count()
stmt->prepare()
stmt->prepare()
stmt->reset()
stmt->reset()
stmt->result_metadata()
stmt->send_long_data()
stmt->send_long_data()
str_getcsv()
str_ireplace()
str_pad()
str_repeat()
str_replace()
str_rot13()
str_shuffle()
str_split()
str_word_count()
strcasecmp()
strchr()
strcmp()
strcoll()
strcspn()
stream_bucket_append()
stream_bucket_make_writeable()
stream_bucket_new()
stream_bucket_prepend()
stream_context_create()
stream_context_get_default()
stream_context_get_options()
stream_context_set_option()
stream_context_set_params()
stream_copy_to_stream()
stream_encoding()
stream_filter_append()
stream_filter_prepend()
stream_filter_register()
stream_filter_remove()
stream_get_contents()
stream_get_filters()
stream_get_line()
stream_get_meta_data()
stream_get_transports()
stream_get_wrappers()
stream_register_wrapper()
stream_resolve_include_path()
stream_select()
stream_set_blocking()
stream_set_timeout()
stream_set_write_buffer()
stream_socket_accept()
stream_socket_client()
stream_socket_enable_crypto()
stream_socket_get_name()
stream_socket_pair()
stream_socket_recvfrom()
stream_socket_sendto()
stream_socket_server()
stream_socket_shutdown()
stream_wrapper_register()
stream_wrapper_restore()
stream_wrapper_unregister()
strftime()
strip_tags()
stripcslashes()
stripos()
stripslashes()
stristr()
strlen()
strnatcasecmp()
strnatcmp()
strncasecmp()
strncmp()
strpbrk()
strpos()
strptime()
strrchr()
strrev()
strripos()
strrpos()
strspn()
strstr()
strtok()
strtolower()
strtotime()
strtoupper()
strtr()
strval()
substr()
substr_compare()
substr_count()
substr_replace()
svn_add()
svn_auth_get_parameter()
svn_auth_set_parameter()
svn_cat()
svn_checkout()
svn_cleanup()
svn_client_version()
svn_commit()
svn_diff()
svn_fs_abort_txn()
svn_fs_apply_text()
svn_fs_begin_txn2()
svn_fs_change_node_prop()
svn_fs_check_path()
svn_fs_contents_changed()
svn_fs_copy()
svn_fs_delete()
svn_fs_dir_entries()
svn_fs_file_contents()
svn_fs_file_length()
svn_fs_is_dir()
svn_fs_is_file()
svn_fs_make_dir()
svn_fs_make_file()
svn_fs_node_created_rev()
svn_fs_node_prop()
svn_fs_props_changed()
svn_fs_revision_prop()
svn_fs_revision_root()
svn_fs_txn_root()
svn_fs_youngest_rev()
svn_import()
svn_log()
svn_ls()
svn_repos_create()
svn_repos_fs()
svn_repos_fs_begin_txn_for_commit()
svn_repos_fs_commit_txn()
svn_repos_hotcopy()
svn_repos_open()
svn_repos_recover()
svn_status()
svn_update()
swf_actiongeturl()
swf_actiongotoframe()
swf_actiongotolabel()
swf_actionnextframe()
swf_actionplay()
swf_actionprevframe()
swf_actionsettarget()
swf_actionstop()
swf_actiontogglequality()
swf_actionwaitforframe()
swf_addbuttonrecord()
swf_addcolor()
swf_closefile()
swf_definebitmap()
swf_definefont()
swf_defineline()
swf_definepoly()
swf_definerect()
swf_definetext()
swf_endbutton()
swf_enddoaction()
swf_endshape()
swf_endsymbol()
swf_fontsize()
swf_fontslant()
swf_fonttracking()
swf_getbitmapinfo()
swf_getfontinfo()
swf_getframe()
swf_labelframe()
swf_lookat()
swf_modifyobject()
swf_mulcolor()
swf_nextid()
swf_oncondition()
swf_openfile()
swf_ortho()
swf_ortho2()
swf_perspective()
swf_placeobject()
swf_polarview()
swf_popmatrix()
swf_posround()
swf_pushmatrix()
swf_removeobject()
swf_rotate()
swf_scale()
swf_setfont()
swf_setframe()
swf_shapearc()
swf_shapecurveto()
swf_shapecurveto3()
swf_shapefillbitmapclip()
swf_shapefillbitmaptile()
swf_shapefilloff()
swf_shapefillsolid()
swf_shapelinesolid()
swf_shapelineto()
swf_shapemoveto()
swf_showframe()
swf_startbutton()
swf_startdoaction()
swf_startshape()
swf_startsymbol()
swf_textwidth()
swf_translate()
swf_viewport()
swfaction()
SWFAction->__construct()
swfbitmap()
SWFBitmap->__construct()
SWFBitmap->getHeight()
SWFBitmap->getWidth()
swfbutton()
SWFButton->__construct()
SWFButton->addAction()
SWFButton->addASound()
SWFButton->addShape()
SWFButton->setAction()
SWFButton->setDown()
SWFButton->setHit()
SWFButton->setMenu()
SWFButton->setOver()
SWFButton->setUp()
swfdisplayitem()
SWFDisplayItem->addAction()
SWFDisplayItem->addColor()
SWFDisplayItem->endMask()
SWFDisplayItem->getRot()
SWFDisplayItem->getX()
SWFDisplayItem->getXScale()
SWFDisplayItem->getXSkew()
SWFDisplayItem->getY()
SWFDisplayItem->getYScale()
SWFDisplayItem->getYSkew()
SWFDisplayItem->move()
SWFDisplayItem->moveTo()
SWFDisplayItem->multColor()
SWFDisplayItem->remove()
SWFDisplayItem->rotate()
SWFDisplayItem->rotateTo()
SWFDisplayItem->scale()
SWFDisplayItem->scaleTo()
SWFDisplayItem->setDepth()
SWFDisplayItem->setMaskLevel()
SWFDisplayItem->setMatrix()
SWFDisplayItem->setName()
SWFDisplayItem->setRatio()
SWFDisplayItem->skewX()
SWFDisplayItem->skewXTo()
SWFDisplayItem->skewY()
SWFDisplayItem->skewYTo()
swffill()
SWFFill->moveTo()
SWFFill->rotateTo()
SWFFill->scaleTo()
SWFFill->skewXTo()
SWFFill->skewYTo()
swffont()
SWFFont->__construct()
SWFFont->getAscent()
SWFFont->getDescent()
SWFFont->getLeading()
SWFFont->getShape()
SWFFont->getUTF8Width()
SWFFont->getWidth()
swffontchar()
SWFFontChar->addChars()
SWFFontChar->addUTF8Chars()
swfgradient()
SWFGradient->__construct()
SWFGradient->addEntry()
swfmorph()
SWFMorph->__construct()
SWFMorph->getShape1()
SWFMorph->getShape2()
swfmovie()
SWFMovie->__construct()
SWFMovie->add()
SWFMovie->addExport()
SWFMovie->addFont()
SWFMovie->importChar()
SWFMovie->importFont()
SWFMovie->labelFrame()
SWFMovie->nextFrame()
SWFMovie->output()
SWFMovie->remove()
SWFMovie->save()
SWFMovie->saveToFile()
SWFMovie->setbackground()
SWFMovie->setDimension()
SWFMovie->setFrames()
SWFMovie->setRate()
SWFMovie->startSound()
SWFMovie->stopSound()
SWFMovie->streamMP3()
SWFMovie->writeExports()
swfprebuiltclip()
SWFPrebuiltClip->__construct()
swfshape()
SWFShape->__construct()
SWFShape->addFill()
SWFShape->drawArc()
SWFShape->drawCircle()
SWFShape->drawCubic()
SWFShape->drawCubicTo()
SWFShape->drawCurve()
SWFShape->drawCurveTo()
SWFShape->drawGlyph()
SWFShape->drawLine()
SWFShape->drawLineTo()
SWFShape->movePen()
SWFShape->movePenTo()
SWFShape->setLeftFill()
SWFShape->setLine()
SWFShape->setRightFill()
swfsound()
swfsound()
swfsoundinstance()
SWFSoundInstance->loopCount()
SWFSoundInstance->loopInPoint()
SWFSoundInstance->loopOutPoint()
SWFSoundInstance->noMultiple()
swfsprite()
SWFSprite->__construct()
SWFSprite->add()
SWFSprite->labelFrame()
SWFSprite->nextFrame()
SWFSprite->remove()
SWFSprite->setFrames()
SWFSprite->startSound()
SWFSprite->stopSound()
swftext()
SWFText->__construct()
SWFText->addString()
SWFText->addUTF8String()
SWFText->getAscent()
SWFText->getDescent()
SWFText->getLeading()
SWFText->getUTF8Width()
SWFText->getWidth()
SWFText->moveTo()
SWFText->setColor()
SWFText->setFont()
SWFText->setHeight()
SWFText->setSpacing()
swftextfield()
SWFTextField->__construct()
SWFTextField->addChars()
SWFTextField->addString()
SWFTextField->align()
SWFTextField->setBounds()
SWFTextField->setColor()
SWFTextField->setFont()
SWFTextField->setHeight()
SWFTextField->setIndentation()
SWFTextField->setLeftMargin()
SWFTextField->setLineSpacing()
SWFTextField->setMargins()
SWFTextField->setName()
SWFTextField->setPadding()
SWFTextField->setRightMargin()
swfvideostream()
SWFVideoStream->__construct()
SWFVideoStream->getNumFrames()
SWFVideoStream->setDimension()
Swish->getMetaList()
Swish->getPropertyList()
Swish->prepare()
Swish->query()
Swish::__construct()
SwishResult->getMetaList()
SwishResult->stem()
SwishResults->getParsedWords()
SwishResults->getRemovedStopwords()
SwishResults->nextResult()
SwishResults->seekResult()
SwishSearch->execute()
SwishSearch->resetLimit()
SwishSearch->setLimit()
SwishSearch->setPhraseDelimiter()
SwishSearch->setSort()
SwishSearch->setStructure()
sybase_affected_rows()
sybase_close()
sybase_connect()
sybase_data_seek()
sybase_deadlock_retry_count()
sybase_fetch_array()
sybase_fetch_assoc()
sybase_fetch_field()
sybase_fetch_object()
sybase_fetch_row()
sybase_field_seek()
sybase_free_result()
sybase_get_last_message()
sybase_min_client_severity()
sybase_min_error_severity()
sybase_min_message_severity()
sybase_min_server_severity()
sybase_num_fields()
sybase_num_rows()
sybase_pconnect()
sybase_query()
sybase_result()
sybase_select_db()
sybase_set_message_handler()
sybase_unbuffered_query()
symlink()
sys_get_temp_dir()
sys_getloadavg()
syslog()
system()
T
tan()
tanh()
tcpwrap_check()
tempnam()
textdomain()
tidy::__construct()
tidy_access_count()
tidy_clean_repair()
tidy_config_count()
tidy_diagnose()
tidy_error_count()
tidy_get_body()
tidy_get_config()
tidy_get_error_buffer()
tidy_get_head()
tidy_get_html()
tidy_get_html_ver()
tidy_get_opt_doc()
tidy_get_output()
tidy_get_release()
tidy_get_root()
tidy_get_status()
tidy_getopt()
tidy_is_xhtml()
tidy_is_xml()
tidy_load_config()
tidy_node->get_attr()
tidy_node->get_nodes()
tidy_node->next()
tidy_node->prev()
tidy_parse_file()
tidy_parse_string()
tidy_repair_file()
tidy_repair_string()
tidy_reset_config()
tidy_save_config()
tidy_set_encoding()
tidy_setopt()
tidy_warning_count()
tidyNode->hasChildren()
tidyNode->hasSiblings()
tidyNode->isAsp()
tidyNode->isComment()
tidyNode->isHtml()
tidyNode->isJste()
tidyNode->isPhp()
tidyNode->isText()
tidyNode::getParent()
time()
time_nanosleep()
time_sleep_until()
timezone_abbreviations_list()
timezone_identifiers_list()
timezone_name_from_abbr()
timezone_name_get()
timezone_offset_get()
timezone_open()
timezone_transitions_get()
tmpfile()
token_get_all()
token_name()
touch()
trigger_error()
trim()
U
uasort()
ucfirst()
ucwords()
udm_add_search_limit()
udm_alloc_agent()
udm_alloc_agent_array()
udm_api_version()
udm_cat_list()
udm_cat_path()
udm_check_charset()
udm_check_stored()
udm_clear_search_limits()
udm_close_stored()
udm_crc32()
udm_errno()
udm_error()
udm_find()
udm_free_agent()
udm_free_ispell_data()
udm_free_res()
udm_get_doc_count()
udm_get_res_field()
udm_get_res_param()
udm_hash32()
udm_load_ispell_data()
udm_open_stored()
udm_set_agent_param()
uksort()
umask()
unicode_decode()
unicode_encode()
unicode_get_error_mode()
unicode_get_subst_char()
unicode_semantics()
unicode_set_error_mode()
unicode_set_subst_char()
uniqid()
unixtojd()
unlink()
unpack()
unregister_tick_function()
unserialize()
unset()
urldecode()
urlencode()
usage()
use_soap_error_handler()
user_error()
usleep()
usort()
utf8_decode()
utf8_encode()
V
var_dump()
var_export()
variant()
variant_abs()
variant_add()
variant_and()
variant_cast()
variant_cat()
variant_cmp()
variant_date_from_timestamp()
variant_date_to_timestamp()
variant_div()
variant_eqv()
variant_fix()
variant_get_type()
variant_idiv()
variant_imp()
variant_int()
variant_mod()
variant_mul()
variant_neg()
variant_not()
variant_or()
variant_pow()
variant_round()
variant_set()
variant_set_type()
variant_sub()
variant_xor()
version_compare()
vfprintf()
virtual()
vpopmail_add_alias_domain()
vpopmail_add_alias_domain_ex()
vpopmail_add_domain()
vpopmail_add_domain_ex()
vpopmail_add_user()
vpopmail_alias_add()
vpopmail_alias_del()
vpopmail_alias_del_domain()
vpopmail_alias_get()
vpopmail_alias_get_all()
vpopmail_auth_user()
vpopmail_del_domain()
vpopmail_del_domain_ex()
vpopmail_del_user()
vpopmail_error()
vpopmail_passwd()
vpopmail_set_user_quota()
vprintf()
vsprintf()
W
w32api_deftype()
w32api_init_dtype()
w32api_invoke_function()
w32api_register_function()
w32api_set_call_method()
wddx_add_vars()
wddx_deserialize()
wddx_packet_end()
wddx_packet_start()
wddx_serialize_value()
wddx_serialize_vars()
wddx_unserialize()
win32_create_service()
win32_delete_service()
win32_get_last_control_message()
win32_ps_list_procs()
win32_ps_stat_mem()
win32_ps_stat_proc()
win32_query_service_status()
win32_set_service_status()
win32_start_service()
win32_start_service_ctrl_dispatcher()
win32_stop_service()
wordwrap()
X
xattr_get()
xattr_list()
xattr_remove()
xattr_set()
xattr_supported()
xdiff_file_diff()
xdiff_file_diff_binary()
xdiff_file_merge3()
xdiff_file_patch()
xdiff_file_patch_binary()
xdiff_string_diff()
xdiff_string_diff_binary()
xdiff_string_merge3()
xdiff_string_patch()
xdiff_string_patch_binary()
xml_error_string()
xml_get_current_byte_index()
xml_get_current_column_number()
xml_get_current_line_number()
xml_get_error_code()
xml_parse()
xml_parse_into_struct()
xml_parser_create()
xml_parser_create_ns()
xml_parser_free()
xml_parser_get_option()
xml_parser_set_option()
xml_set_character_data_handler()
xml_set_default_handler()
xml_set_element_handler()
xml_set_end_namespace_decl_handler()
xml_set_external_entity_ref_handler()
xml_set_notation_decl_handler()
xml_set_object()
xml_set_processing_instruction_handler()
xml_set_start_namespace_decl_handler()
xml_set_unparsed_entity_decl_handler()
XMLReader::close()
XMLReader::expand()
XMLReader::getAttribute()
XMLReader::getAttributeNo()
XMLReader::getAttributeNs()
XMLReader::getParserProperty()
XMLReader::isValid()
XMLReader::lookupNamespace()
XMLReader::moveToAttribute()
XMLReader::moveToAttributeNo()
XMLReader::moveToAttributeNs()
XMLReader::moveToElement()
XMLReader::moveToFirstAttribute()
XMLReader::moveToNextAttribute()
XMLReader::next()
XMLReader::open()
XMLReader::read()
XMLReader::setParserProperty()
XMLReader::setRelaxNGSchema()
XMLReader::setRelaxNGSchemaSource()
XMLReader::XML()
xmlrpc_decode()
xmlrpc_decode_request()
xmlrpc_encode()
xmlrpc_encode_request()
xmlrpc_get_type()
xmlrpc_is_fault()
xmlrpc_parse_method_descriptions()
xmlrpc_server_add_introspection_data()
xmlrpc_server_call_method()
xmlrpc_server_create()
xmlrpc_server_destroy()
xmlrpc_server_register_introspection_callback()
xmlrpc_server_register_method()
xmlrpc_set_type()
XMLWriter::endAttribute()
XMLWriter::endCData()
XMLWriter::endComment()
XMLWriter::endDocument()
XMLWriter::endDTD()
XMLWriter::endDTDAttlist()
XMLWriter::endDTDElement()
XMLWriter::endDTDEntity()
XMLWriter::endElement()
XMLWriter::endPI()
XMLWriter::flush()
XMLWriter::fullEndElement()
XMLWriter::openMemory()
XMLWriter::openURI()
XMLWriter::outputMemory()
XMLWriter::setIndent()
XMLWriter::setIndentString()
XMLWriter::startAttribute()
XMLWriter::startAttributeNS()
XMLWriter::startCData()
XMLWriter::startComment()
XMLWriter::startDocument()
XMLWriter::startDTD()
XMLWriter::startDTDAttlist()
XMLWriter::startDTDElement()
XMLWriter::startDTDEntity()
XMLWriter::startElement()
XMLWriter::startElementNS()
XMLWriter::startPI()
XMLWriter::text()
XMLWriter::writeAttribute()
XMLWriter::writeAttributeNS()
XMLWriter::writeCData()
XMLWriter::writeComment()
XMLWriter::writeDTD()
XMLWriter::writeDTDAttlist()
XMLWriter::writeDTDElement()
XMLWriter::writeDTDEntity()
XMLWriter::writeElement()
XMLWriter::writeElementNS()
XMLWriter::writePI()
XMLWriter::writeRaw()
xpath_eval()
xpath_eval_expression()
xpath_new_context()
xpath_register_ns()
xpath_register_ns_auto()
xptr_eval()
xptr_new_context()
xslt_backend_info()
xslt_backend_name()
xslt_backend_version()
xslt_create()
xslt_errno()
xslt_error()
xslt_free()
xslt_getopt()
xslt_process()
xslt_set_base()
xslt_set_encoding()
xslt_set_error_handler()
xslt_set_log()
xslt_set_object()
xslt_set_sax_handler()
xslt_set_sax_handlers()
xslt_set_scheme_handler()
xslt_set_scheme_handlers()
xslt_setopt()
XSLTProcessor::__construct()
XSLTProcessor::getParameter()
XSLTProcessor::hasExsltSupport()
XSLTProcessor::importStylesheet()
XSLTProcessor::registerPHPFunctions()
XSLTProcessor::removeParameter()
XSLTProcessor::setParameter()
XSLTProcessor::transformToDoc()
XSLTProcessor::transformToURI()
XSLTProcessor::transformToXML()
Y
yaz_addinfo()
yaz_ccl_conf()
yaz_ccl_parse()
yaz_close()
yaz_connect()
yaz_database()
yaz_element()
yaz_errno()
yaz_error()
yaz_es()
yaz_es_result()
yaz_get_option()
yaz_hits()
yaz_itemorder()
yaz_present()
yaz_range()
yaz_record()
yaz_scan()
yaz_scan_result()
yaz_schema()
yaz_search()
yaz_set_option()
yaz_sort()
yaz_syntax()
yaz_wait()
yp_all()
yp_cat()
yp_err_string()
yp_errno()
yp_first()
yp_get_default_domain()
yp_master()
yp_match()
yp_next()
yp_order()
Z
zend_logo_guid()
zend_thread_id()
zend_version()
zip_close()
zip_entry_close()
zip_entry_compressedsize()
zip_entry_compressionmethod()
zip_entry_filesize()
zip_entry_name()
zip_entry_open()
zip_entry_read()
zip_open()
zip_read()
ZipArchive::addEmptyDir()
ZipArchive::addFile()
ZipArchive::addFromString()
ZipArchive::close()
ZipArchive::deleteIndex()
ZipArchive::deleteName()
ZipArchive::extractTo()
ZipArchive::getArchiveComment()
ZipArchive::getCommentIndex()
ZipArchive::getCommentName()
ZipArchive::getFromIndex()
ZipArchive::getFromName()
ZipArchive::getNameIndex()
ZipArchive::getStream()
ZipArchive::locateName()
ZipArchive::open()
ZipArchive::renameIndex()
ZipArchive::renameName()
ZipArchive::setArchiveComment()
ZipArchive::setCommentIndex()
ZipArchive::setCommentName()
ZipArchive::statIndex()
ZipArchive::statName()
ZipArchive::unchangeAll()
ZipArchive::unchangeArchive()
ZipArchive::unchangeIndex()
ZipArchive::unchangeName()
zlib_get_coding_type()

Creative Commons Attribution 3.0
HTML Help Edition
Apêndices


HTML Help Edition

  • About This Edition
  • Using PHP Manual CHM Edition
    • The HTML Help Toolbar
    • The Navigation Pane
    • Keyboard Shortcuts
  • The Full Text Search
    • General searching rules
    • Searching for words or phrases
    • Defining search terms
    • Using nested expressions when searching
  • Specialities of this Edition
    • User Preferences
    • Presentational Specialities
  • Integrating the PHP Manual
  • Skin development
    • Page Display Process
    • Page Elements
    • CSS classes
  • CHM Edition Credits
Índice de funções
About This Edition
Manual do PHP


About This Edition

The Windows HTML Help Edition of the PHP Manual is aimed at developers, who want the manual at hand every time, and would like to read manual pages and user notes without waiting for a remote web page to download. This edition gives you the full content of the manual plus the user notes, with some great features provided by the viewer application by the scripts we use to generate this format and by other contributors in the form of skins.

This distribution of the PHP Manual contains many files, including the main manual file php_manual_en.chm. You can view the manual by double clicking on this file (as you already guessed). You may also see a php_manual_en.chw file in the directory, it's generated the first time you use the index tab, and it contains an index with the manual's pages.

For those interested in technical details about Microsoft HTML Help, » http://www.helpware.net/ is a great resource. For more information and positioning of Windows HTML Help in the Microsoft help formats and services history, see this » WinWriters article.

HTML Help Edition
Using PHP Manual CHM Edition
HTML Help Edition


Using PHP Manual CHM Edition

Índice

  • The HTML Help Toolbar
  • The Navigation Pane
  • Keyboard Shortcuts

When you double click on a CHM, a HTML Help Viewer window opens with three panes. On the left side of the window is the Navigation pane. It contains four navigational tabs: the Contents, Index, Search and Favorites tabs. On the right side of the window is the Topic pane. It displays the selected help topic, or the default help topic on startup. The help pages are all separate HTML files, your Internet Explorer displays the pages in the Topic pane. The third pane is the toolbar, which is located below the help window title bar. You can adjust the horizontal layout with dragging the vertical border between the Navigation pane and the Topic pane.

Note, that when you open the CHM the first time, it may appear in a strange position and size. From then, Windows remembers the window position, size and the last opened tab. All these including your favorites are stored in a file named hh.dat. If you move your file to another directory, all these remembered settings will be lost (including your favorites listing!). If you replace your CHM file with a new one, with the same name, this is not a problem though. The file names and path values are stored in hh.dat.

About This Edition
The HTML Help Toolbar
HTML Help Edition


The HTML Help Toolbar

The HTML Help Toolbar contains the following icons, when you view the PHP Manual:

  • Hide/Show - Hides/shows the navigation pane.
  • Locate - Locates a topic in the contents tab (in case you reached a topic with search, index or favorites, and would like to see where it is in the table of contents tree view).
  • Back - Goes back in the history.
  • Forward - Goes forward in the history.
  • Refresh - Reloads the current page.
  • Home - Opens the startup page of the CHM.
  • Print - Opens the print dialog box.
  • Options - Provides a dropdown with more options.
Using this toolbar is really easy, many of the toolbar icons are strongly related to their Internet Explorer equivalents.

Using PHP Manual CHM Edition
The Navigation Pane
Using PHP Manual CHM Edition


The Navigation Pane

The Navigation Pane contains four navigational tabs: the Contents, Index, Search and Favorites tabs. These all provide different methods to access a topic in the help file.

  • The contents tab reveals a tree like table of contents, where you can navigate to the desired topic by opening and closing parts of the tree. You can even access the deepest sections using this TOC. If you right click on an item here and choose "Print...", you'll have the option to print the selected topic or the selected topic and all subtopics. However printing is not the initial goal of this representation of the manual (the PDF version is suitable for printing).
  • The index tab lists a huge number of "keywords" (actually manual page titles). You can pick one, or start to type a keyword, see the list adjusting to your input, and then click on a topic, or press enter if the selected topic is the one you would like to see.
  • The search tab shows one of the most powerful features of the HTML Help Viewer, the full text search (also known as FTS). Here you can type in your search expression, optionally connecting words with AND/OR/NEAR/NOT. Before you click 'List topics', you can also set some options at the bottom. After the search results are displayed, you'll realize that manual text and user note results are separated. To sort out the two types, click on the 'Location' column header. Now from the search results list, you can pick a topic, and see it's page. The keywords you searched for are highlighted on the page.
  • The favorites tab enables you to store your most used topics in a list, easily accessible. Here you can see the list, add the current topic to it, remove one, or display a selected item. You can also specify your own title for the favorite, by typing it into the 'Current topic:' box. The user note page titles are prepended with a 'N:' string so you can distinguish them from normal manual pages in the favorites listing.

The HTML Help Toolbar
Keyboard Shortcuts
Using PHP Manual CHM Edition


Keyboard Shortcuts

There are many keyboard shortcuts you can use to increase your productivity. Many users find it more appropriate to use these keyboard shortcuts to access topics, instead of clicking.

General Help Viewer Shortcuts
To | Press
Close the Help Viewer | ALT+F4
Display the Options menu | ALT+O
Hide or show the Navigation pane | ALT+O, and then T
Print a topic | ALT+O, and then P
Move back to the previous topic | ALT+LEFT ARROW
Move forward to the next topic (provided you have viewed it just previously) | ALT+RIGHT ARROW
Turn on or off search highlighting. | ALT+O, and then O
Return to the help file home page | ALT+O, and then H
Switch between the Navigation pane and the Topic pane | F6
Scroll through all the links in a topic or through all the options on a Navigation pane tab | TAB
Display context (right click) menu [see the User Preferences section] | SHIFT+F10
Contents Tab Shortcuts
To | Press
Display the Contents tab | ALT+C
Open and close a book or folder | PLUS SIGN and MINUS SIGN, or LEFT ARROW and RIGHT ARROW
Select a topic | DOWN ARROW and UP ARROW
Display the selected topic | ENTER
Index Tab Shortcuts
To | Press
Display the Index tab | ALT+N
Type a keyword to search for | ALT+W, and then type the word
Select a keyword in the list | UP ARROW and DOWN ARROW
Display the associated topic | ENTER or ALT+D
Search Tab shortcuts
To | Press
Display the Search tab | ALT+S
Type a keyword to search for | ALT+W, and then type the word
Start a search | ALT+L
Select a topic in the results list | ALT+T, and then UP ARROW and DOWN ARROW
Display the selected topic | ENTER or ALT+D
Search for a keyword in the result list of a prior search | ALT+U
Search for words similar to the keyword. For example, to find words like "running" and "runs" for the keyword "run" | ALT+M
Only search through topic titles | ALT+R
Favorites Tab Shortcuts
To | Press
Display the Favorites tab | ALT+I
Add the currently displayed topic to the Favorites list | ALT+A
Select a topic in the Favorites list | ALT+P, and then UP ARROW and DOWN ARROW
Display the selected topic | ENTER or ALT+D
Remove the selected topic from the list | ALT+R
Topic Pane Shortcuts
To | Press
Index Lookup | Select the words you would like to look up and press F1
Find on page | CTRL+F, and then adjust options
Refresh page | F5

The Navigation Pane
The Full Text Search
Using PHP Manual CHM Edition


The Full Text Search

Índice

  • General searching rules
  • Searching for words or phrases
  • Defining search terms
  • Using nested expressions when searching

This edition of the PHP Manual includes an advanced full text search possibility provided by the viewer application. This enables users to search through every word in the help file to find a match. For example, if a user does a full-text search on the word "Apache", every topic that contains the word "Apache" will be listed. Advanced full-text search allows a user to search using boolean, wildcard, and nested expressions. A user can also limit the search to previous results, match similar words, or search topic titles only.

The usage of the search feature is fairly straightforward. Click on the search tab, type in the desired words and press ENTER (or click on "List Topics"). Then you'll receive a list of matches from the PHP Manual (and the notes). You can use the button with a right arrow on it to add boolean operators to your search (or you can type them in). As you see the results, you can use the column headings (Title, Location and Rank) to sort the topic list. The default order is by Rank. You can also adjust some parameters at the bottom of this tab.

The words found are highlighted on the current page in the Topic pane by default. You can turn off this feature by choosing the "Search Highlight Off" menu item in the Options menu. To can get this feature back similarly. If you are viewing a long topic, only the first 500 instances of a search word or phrase will be highlighted, due to a limitation of the viewer.

Keyboard Shortcuts
General searching rules
HTML Help Edition


General searching rules

A basic search consists of the word or phrase you want to find. You can use wildcard expressions, nested expressions, boolean operators, similar word matches, a previous results list, or topic titles to further define your search.

The basic rules for formulating queries are as follows:

  • Searches are not case-sensitive, so you can type your search in uppercase or lowercase characters.
  • You may search for any combination of letters (a-z) and numbers (0-9). You cannot search for single letters (a, b, c, etc.) and common words, like: an, and, as, at, be, but, by, do, for, from, have, he, in, it, not, of, on, or, she, that, the, there, they, this, to, we, which, with, you.
  • Punctuation marks such as the period (.), colon (:), semicolon (;), comma (,), and hyphen (-) are ignored during a search.
  • Group the elements of your search using double quotes or parentheses to set apart each element. You cannot search for quotation marks.

Nota:

If you are searching for a file name with an extension, you should group the entire string in double quotes, ("filename.ext"). Otherwise, the period will break the file name into two separate terms. The default operation between terms is AND, so you will create the logical equivalent to "filename AND ext."

The Full Text Search
Searching for words or phrases
The Full Text Search


Searching for words or phrases

You can search for words or phrases and use wildcard expressions. Wildcard expressions allow you to search for one or more characters using a question mark or asterisk. The table below describes the results of these different kinds of searches.

Word and phrase searches
Search for | Example | Results
A single word | select | Topics that contain the word "select". (You will also find its grammatical variations, such as "selector" and "selection".)
A phrase | "new operator" or new operator | Topics that contain the literal phrase "new operator" and all its grammatical variations. Without the quotation marks, the query is equivalent to specifying "new AND operator," which will find topics containing both of the individual words, instead of the phrase.
Wildcard expressions | esc* or HT?? | Results for the first example include topics that contain the terms "ESC", "escape", "escalation", and so on. The asterisk cannot be the only character in the term. Results for the second example include topics that contain the terms "HTTP", "HTML" and so on. The question mark cannot be the only character in the term.

Nota:

Select the Match similar words check box to include minor grammatical variations for the phrase you search. This feature only locates variations of the word with common suffixes. For example, a search on the word "add" will find "added," but it will not find "additive". This option is independent of other options or syntax. If you do a titles-only search, variations in titles will be matched. If you use quotes (or any other query operator) any variation of the word can appear; for example, "stemmed search" will also match "stemming search".

General searching rules
Defining search terms
The Full Text Search


Defining search terms

The AND, OR, NOT, and NEAR operators enable you to precisely define your search by creating a relationship between search terms. The following table shows how you can use each of these operators. If no operator is specified, AND is used. For example, the query "server cgi security" is equivalent to "server AND cgi AND security".

Search operators
Search for | Example | Results
Both terms in the same topic | http AND apache | Topics containing both the words "http" and "apache".
Either term in a topic | ming OR swflib | Topics containing either the word "ming" or the word "swflib" or both.
The first term without the second term | xml NOT expat | Topics containing the word "xml" but not the word "expat".
Both terms in the same topic, close together | database NEAR security | Topics containing the word "database" within eight words of the word "security".

Nota:

The |, &, and ! characters can also be used in place of OR AND and NOT respectively. This may not work if you use a very old version of the viewer.

Searching for words or phrases
Using nested expressions when searching
The Full Text Search


Using nested expressions when searching

Nested expressions allow you to create complex searches for information. For example, "html AND ((smtp OR pop3) NEAR mail)" finds topics containing the word "html" along with the words "smtp" and "mail" close together, or containing "html" along with the words "pop3" and "mail" close together.

The basic rules for searching help topics using nested expressions are as follows:

  • You can use parentheses to nest expressions within a query. The expressions in parentheses are evaluated before the rest of the query.
  • If a query does not contain a nested expression, it is evaluated from left to right. For example: "mail NOT pop3 OR smtp" finds topics containing the word "mail" without the word "pop3" or topics containing the word "smtp". On the other hand, "mail NOT (pop3 OR smtp)" finds topics containing the word "mail" without either of the words "pop3" or "smtp".
  • You cannot nest expressions more than five levels deep.

Defining search terms
Specialities of this Edition
The Full Text Search


Specialities of this Edition

Índice

  • User Preferences
  • Presentational Specialities

The HTML Help Edition of the PHP Manual over-performs the presentational and interactive capabilities offered by other editions (including the online manual).

Using nested expressions when searching
User Preferences
HTML Help Edition


User Preferences

Most of the interactive features of this manual are provided by the viewer application (including full text search, index, favorites list), but we extended this list with PHP Manual specific tools. All these can be adjusted to your needs using a simple desktop application named php_manual_prefs.exe. If you run this program you can see three groups of settings: Online Functions, Context Menu, and Skin. All your settings are stored in php_manual_prefs.js.

Online functions enable you to have elements connected to websites. The two ones you can see on all manual pages are "This page online" and "Report a bug". As you can figure out the first one shows you the same page in the online manual, the second one opens a page from » http://bugs.php.net/ and prefills some bug data for you. You need to select a mirror site to use for "php.net sensitive" online functions. We recommend choosing a close mirror site to get the best speed. Other components that may be limited by this online functions setting include context menu items opening new websites ("Google search selection" for example). Custom designs may also include elements restricted by this setting.

The context menu settings enables you to choose which context menu you prefer. This application provides you with an option to define your own context menu adding elements to it from a predefined set. You can have this custom context menu for the right click of your mouse, and have the original menu for CTRL+right click, or the opposite way. Three special types of custom context menu items exist:

Context menu items
Type | Examples | Comments
Page Jump | Function Reference, Function Index | These items jump to a specific page in the CHM. Page Jump options are not restricted to point inside the CHM though. They can point to websites or other resources. Page jump options with a protocol part in the URL open in new window.
Function Call | Print page, Select all, Copy selection to clipboard, Google Search Selection | These are "function calls" for internally defined context menu functions. The last two examples have the speciality that they only show up in the menu if you rightclicked on a selection. Currently there is no way to extend the context menu with skin defined functions.
Special display | Google SearchBox, AlltheWeb SearchBox | These are displayed as HTML forms, where you can enter search keywords, press ENTER, and receive a new window with the search issued in the appropriate search engine. Currently there is no way to extend the set of specially displayed context menu items.
Possible context menu elements and their "abstract implementations" are stored in context.ini. You have the ability to add possible page jump options there, but there is no way currently to extend the context menu system with user (skin) defined functions. The possible mirror sites are listed in mirrors.ini. Feel free to suggest more bundled context menu items to us at » php-doc-chm@lists.php.net.

The skins setting enables you to choose from the two bundled default skins, or from any user defined skins. The Low skin is optimized to display correctly at any small size, the High skin is optimized for your viewing pleasure. Other skins may be developed according to our skins development guide. The recommended place for skins on the file system is the skins/SKINNAME subfolder of the PHP Manual directory. Though this is not required, some skins may define other rules (not recommended). We included sample skins for you to see examples of how to develop skins for the PHP Manual.

You have three buttons to choose from at the bottom. The Apply button applies your changes without exiting, the OK button applies and closes the application, the Cancel button does not modify your settings and closes the program.

Specialities of this Edition
Presentational Specialities
Specialities of this Edition


Presentational Specialities

This edition of the PHP Manual is highly optimized for screen presentation. Skins may be developed to better support printing, as this was not the goal of the included skins. This approach allowed us to make many modifications to the presentation of different parts of the manual.

The first thing you'll notice is that all examples are color coded, using the PHP function show_source(). The actual colors used are defined by CSS classes. Examples also have links to PHP functions used in them to provide quick access to reference material. All code examples have a "copy to clipboard" link by the side of them with which you can copy the text contents of the example to the clipboard.

External links are marked with a special » sign, and open in a new browser window. We also included the "path to this page" information on all pages for you to easily identify where you are and navigate as needed.

Other parts of the manual are quite similar to the online ones by default, though custom skins can modify many elements on the pages.

User Preferences
Integrating the PHP Manual
Specialities of this Edition


Integrating the PHP Manual

Nota:

The information provided here is mainly aimed at IDE authors, or advanced users who would like to integrate this CHM file to their favorite IDEs or other production environment components.

There are several editors out there with support for CHM integration, but you may need to know a few things about what the CHM contains to successfully integrate the manual into your environment.

The CHM is built using XSL style sheets from XML sources. This is unique currently in the PHP Manual family, as all other versions are generated using DSSSL style sheets. This also means, that non-intentional rendering differences may come up. A special conversion script is run on the XSLT output, adding several cute features, and packing up the manual with the preferences files and skin examples.

If you never worked with CHMs, you can think of them as compressed files with OS supported access for files inside and some added search and index support. However CHMs can only be viewed using the HTML Help Viewer, you can directly access files inside them using a special URL prefix, the CHM file name and the file you request from inside. As all the help content is stored in HTML files, you can show pages of the CHM in Internet Explorer.

Assume that you placed your php_manual_en.chm to c:\phpmanual the index file in the manual (which you see the first time) can be accessed with the following URL: mk:@MSITStore:C:\phpmanual\php_manual_en.chm::/_index.html. Here mk:@MSITStore: is the special "protocol", C:\phpmanual\php_manual_en.chm is the CHM with it's full path. The /_index.html part is the path to the index file inside the CHM and :: is just what you need to put between the CHM path and this file path.

Nota:

All files are in the root directory of the CHM, unlike the previous CHM versions which included a language directory. Images, style sheets and other supplemental files have names starting with an underscore (like the main index shown above), to avoid name collisions.

The names of generated files follow the same rules as the online manual, except that the extension is .html and not .php. The most important is that function documentation files are named function.FUNCNAME.html where FUNCNAME is the function name, with all underscores converted to hyphens. Some examples are function.echo.html, function.mysql-close.html, function.imagecopy.html.

Using all this information, you can show a manual page for a function requested by a user. A simple example is included in the distribution, named php_quickref.hta. This is a » HTML Application to demonstrate the simple process of showing a manual page for a function. The quickRef() function defined therein does the job.

If you would like to integrate the manual into an IDE without direct support for the PHP manual (actually the underscore to hyphen conversion), you can use the included _function.html file to access a function page. This file is simply a redirector, and can be parameterized via the URL, as _function.html#mysql_close. This page will redirect you to the mysql_close function page (function.mysql-close.html) automatically. You can provide the full path of this file if your IDE supports context sensitive help, and provide the IDE specified string as the parameter. An example for this is the UltraEdit 9 intergation (see the edition's website).

The index of the manual (accessible via the index tab on the navigation pane) can also be used for integrational purposes. All the HTML pages are included in the index with their titles as index terms (including function description pages).

If you are a desktop application developer and would like to tightly integrate the CHM into your program (such as displaying the TOC tree in your IDE's help box), you can find more information at » http://www.helpware.net/, as well as links to other useful resources. The official site for HTML Help is at » http://www.microsoft.com/downloads/details.aspx?FamilyID=00535334-c8a6-452f-9aa0-d597d16580cc&DisplayLang=en.

Presentational Specialities
Skin development
HTML Help Edition


Skin development

Índice

  • Page Display Process
  • Page Elements
  • CSS classes

This edition of the PHP Manual allows users to choose from skins to display the contents, as well as develop custom skins to meet some special needs. We decided to support skins because we realized that one skin cannot satisfy everybody's needs in a such heavily used edition.

We included two skins by default inside the CHM. These cannot be modified or removed, so if you have the CHM, you have these two skins inside. The Low skin is optimized for small window display, the High skin is a variation of the Low one with some graphics added to spice it up.

A skin must have at least two files, a skin loader JavaScript file and a CSS file. The two inline skins have these files inside the CHM. The skin loader JS should at least load in the CSS file and display the page contents to the viewer. Theoretically there are two kinds of skins: CSS skins and Full skins. CSS skins only modify the CSS and does not amend the page layout. Full skins also modify the page layout. We have included sample skins for both the CSS skin type and the Full skin type ("greenlinks" and "headernostalgia" respectively).

Aviso

Note that though the current skin development methods are quite final, there may be heavy changes in used CSS classes or page elements while we refine the skin development ideas. As this edition is currently in development stage, the information described herein is not to be considered completely stable.

Integrating the PHP Manual
Page Display Process
HTML Help Edition


Page Display Process

If you are going to develop your own skin, you should know how one page is loaded and displayed to the user, and how a skin fits in this process. For these paragraphs, we assume that you have put your CHM into c:\phpmanual, so it's accessible as c:\phpmanual\php_manual_LANG.chm (where LANG is the language code), and you would like to see the function page of "echo", which is function.echo.html inside the CHM. See the sections about integration for more information on CHM contents.

  • First of all the HTML content is loaded in from function.echo.html from inside the CHM.
  • At the top of this file, there is a HTML <script> tag, which loads in the _script.js file from the CHM. This file contains all the JS code needed to move on with the process. Most importantly this JS defines many variables (like where the CHM is, or what is the actual page viewed) and many functions to print out the context menu or handle online functions.
  • At last _script.js loads in the preferences file from outside the CHM (c:\phpmanual\php_manual_prefs.js in our example). This JS file defines the preference variables, and calls back prefHandler() which is also defined in _script.js.
  • That function loads in the skin JS file as the preferences dictate. The skin JS file should load in the needed CSS file, and define a displayPage() function, which displays the page if called.
  • The HTML file (function.echo.html in this example) also contains a function call to load in the user notes, which simply puts the notes into this HTML file using DHTML to be displayed as if they were here before...
  • The HTML file also contains a body onload attribute which calls the skin-defined displayPage() function to show the page to the user. This is the last function called, it should present the page in it's complete form to the user.
Every action is synchronized with calling back a function in the previously loaded file when the JS is in memory. The notes loading and skin JS loading is only synchronized with the page's onload event (which as the Microsoft documentation says only fires if the page is completely loaded).

This load and callback chain may seem to be too complicated, but so far this seemed to be the best way to do as many things as possible parallel, while also synchronize some calls.

As you can see your skin JavaScript file is loaded in by _script.js and it's displayPage() function is called by the body onload event.

Skin development
Page Elements
Skin development


Page Elements

The PHP Manual pages are all HTML files with several HTML tags in them for both presentational and divisional purposes. The HTML pages contain divisions to be used for skinning purposes and misc divisions added by the DocBook XSL sheets.

A HTML page can be either a function reference page or another kind of page (like a feature description). Skins should get ready to skin these two kinds of pages separately most of the time (depending on the actual design).

The pages are structured using <div> tags with appropriate IDs to ease the skin writers work. A page consists of these parts:

  • <div id="pageContent"></div> contains all the page contents. This begins right after <body> and ends just before </body>. This division is hidden by default, you need to show it after you are ready with the page rewriting process.
  • <div id="pageHeaders"></div> contains the page header parts. This includes the text only main title (in a <span id="pageTitle"></span>) and function properties, in case this is a function page (contained in <span id="funcPurpose"></span>, <span id="funcAvail"></span> and <span id="funcUsage"></span>). In case one of these three is not available, the current page is not a function page.
  • <div id="pageText"></div> contains the majority of the page contents, including examples, manual notes, warnings, etc. This also includes see also parts for now, as we still cannot differentiate between see also and normal text parts (may be a thing to change in the future).
  • <div id="pageNotes"></div> contains the user notes (itself loaded in from another HTML file by JS). It contains a heading, and then a <div> without ID for every user note and spans in that divs for every element of a user note (with "email", "date" and "text" IDs respectively).
  • <div id="pageNav"></div> contains the
navigation table, which is further divided into spans (<span
id="navPrev"></span>, <span
id="navPath"></span>, <span
id="navNext"></span>, <span
id="navOnline"></span>, <span
id="navThisOnline"></span> and <span
id="navReportBug"></span>), where navThisOnline
and navReportBug is inside navOnline.
If you would like to rewrite the page, you should first read in the parts you need from the page to JS variables, then clear the contents of pageContent (or just the part you would like to rewrite), write in the new content and show the pageContent div for the user. If you would not like to make any structural changes, you can simply display the pageContent div and only specify a special style sheet in your skin JS file (see the "greenlinks" skin for an example).

You can find a "Full skin" developed to show you how to make skins built on top of this structure. The skin name is "headernostalgia". It rewrites the header part and removes the footer navigational table.

Page Display Process
CSS classes
Skin development


CSS classes

We cannot provide accurate documentation currently on usable CSS classes, as some of the DocBook XSL sheets classes are not used and some classes are added. Please see the sample CSS files included for first time reference.

Page Elements
CHM Edition Credits
Skin development


CHM Edition Credits

This enhanced version of the PHP Manual would never come to existence, if the following people would not help with their contribution to the project (in no particular order):

  • Holger Eggert, who created the two default designs, and provided many usability tips
  • Gonzalo De la Pena Andreu, who added many comments on how it would be ideal to provide the skinnable interface
  • Olexandr Vynnychenko added countless comments and testing all the time
  • Brendan Ferguson, who provided many optimizations, improvements to the HTML and JS codes behind the manual pages
  • Sandor Hojtsy, who coded the manual preferences desktop application
  • And at last but not least, everybody, who provided feedback through our mailing list, and in the user survey

CSS classes
HTML Help Edition